Repository: chenghuige/wenzheng Branch: master Commit: d57fd68610de Files: 2780 Total size: 23.8 MB Directory structure: gitextract_426mla3a/ ├── .gitignore ├── README.md ├── __init__.py ├── examples/ │ ├── fastai/ │ │ └── lm/ │ │ ├── lm.ipynb │ │ └── lm.py │ ├── pytorch/ │ │ ├── data_parallel_tutorial.py │ │ └── sentiment/ │ │ ├── model.py │ │ └── train.py │ ├── shap/ │ │ └── explainer_1.py │ └── tf/ │ └── eager/ │ ├── dynamic_dense.py │ ├── rnn_ptb.py │ └── rnn_ptb.sh ├── jupyter/ │ └── Untitled.ipynb ├── official/ │ ├── .gitignore │ ├── Dockerfile.cpu │ ├── Dockerfile.gpu │ ├── README.md │ ├── __init__.py │ ├── benchmark/ │ │ ├── __init__.py │ │ ├── benchmark_uploader.py │ │ ├── benchmark_uploader_main.py │ │ ├── benchmark_uploader_test.py │ │ └── datastore/ │ │ └── schema/ │ │ ├── benchmark_metric.json │ │ └── benchmark_run.json │ ├── boosted_trees/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── data_download.py │ │ ├── train_higgs.py │ │ ├── train_higgs_test.csv │ │ └── train_higgs_test.py │ ├── mnist/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── dataset.py │ │ ├── mnist.py │ │ ├── mnist_eager.py │ │ ├── mnist_eager_test.py │ │ ├── mnist_test.py │ │ └── mnist_tpu.py │ ├── recommendation/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── constants.py │ │ ├── data_download.py │ │ ├── dataset.py │ │ ├── dataset_test.py │ │ ├── ncf_main.py │ │ ├── neumf_model.py │ │ └── unittest_data/ │ │ ├── test_eval_negative.csv │ │ ├── test_eval_ratings.csv │ │ └── test_train_ratings.csv │ ├── resnet/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── cifar10_download_and_extract.py │ │ ├── cifar10_main.py │ │ ├── cifar10_test.py │ │ ├── imagenet_main.py │ │ ├── imagenet_preprocessing.py │ │ ├── imagenet_test.py │ │ ├── layer_test.py │ │ ├── resnet_model.py │ │ └── resnet_run_loop.py │ ├── transformer/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── compute_bleu.py │ │ ├── compute_bleu_test.py │ │ ├── data_download.py │ │ ├── model/ │ │ │ ├── __init__.py │ │ │ ├── attention_layer.py │ │ │ ├── beam_search.py │ │ │ ├── beam_search_test.py │ │ │ ├── embedding_layer.py │ │ │ ├── ffn_layer.py │ │ │ ├── model_params.py │ │ │ ├── model_utils.py │ │ │ ├── model_utils_test.py │ │ │ └── transformer.py │ │ ├── test_data/ │ │ │ ├── newstest2014.de │ │ │ └── newstest2014.en │ │ ├── transformer_main.py │ │ ├── translate.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── dataset.py │ │ ├── metrics.py │ │ ├── tokenizer.py │ │ └── tokenizer_test.py │ ├── utils/ │ │ ├── __init__.py │ │ ├── export/ │ │ │ ├── __init__.py │ │ │ ├── export.py │ │ │ └── export_test.py │ │ ├── flags/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── _base.py │ │ │ ├── _benchmark.py │ │ │ ├── _conventions.py │ │ │ ├── _misc.py │ │ │ ├── _performance.py │ │ │ ├── core.py │ │ │ └── flags_test.py │ │ ├── logs/ │ │ │ ├── __init__.py │ │ │ ├── hooks.py │ │ │ ├── hooks_helper.py │ │ │ ├── hooks_helper_test.py │ │ │ ├── hooks_test.py │ │ │ ├── logger.py │ │ │ ├── logger_test.py │ │ │ ├── metric_hook.py │ │ │ └── metric_hook_test.py │ │ ├── misc/ │ │ │ ├── __init__.py │ │ │ ├── model_helpers.py │ │ │ └── model_helpers_test.py │ │ └── testing/ │ │ ├── __init__.py │ │ ├── integration.py │ │ ├── mock_lib.py │ │ ├── pylint.rcfile │ │ ├── reference_data/ │ │ │ ├── reference_data_test/ │ │ │ │ ├── dense/ │ │ │ │ │ ├── expected_graph │ │ │ │ │ ├── results.json │ │ │ │ │ └── tf_version.json │ │ │ │ └── uniform_random/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ └── resnet/ │ │ │ ├── batch-size-32_bottleneck_projection_version-1_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_bottleneck_projection_version-2_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_bottleneck_version-1_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_bottleneck_version-2_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_building_projection_version-1_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_building_projection_version-2_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_building_version-1_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ ├── batch-size-32_building_version-2_width-8_channels-4/ │ │ │ │ ├── expected_graph │ │ │ │ ├── results.json │ │ │ │ └── tf_version.json │ │ │ └── batch_norm/ │ │ │ ├── expected_graph │ │ │ ├── results.json │ │ │ └── tf_version.json │ │ ├── reference_data.py │ │ ├── reference_data_test.py │ │ └── scripts/ │ │ └── presubmit.sh │ └── wide_deep/ │ ├── README.md │ ├── __init__.py │ ├── data_download.py │ ├── wide_deep.py │ ├── wide_deep_test.csv │ └── wide_deep_test.py ├── projects/ │ ├── __init__.py │ ├── ai2018/ │ │ ├── __init__.py │ │ ├── binary/ │ │ │ ├── __init__.py │ │ │ ├── algos/ │ │ │ │ ├── __init__.py │ │ │ │ ├── config.py │ │ │ │ ├── loss.py │ │ │ │ ├── model.py │ │ │ │ └── weights.py │ │ │ ├── dataset.py │ │ │ ├── evaluate.py │ │ │ ├── prepare/ │ │ │ │ ├── config.py │ │ │ │ ├── gen-records.py │ │ │ │ ├── run.sh │ │ │ │ └── text2ids.py │ │ │ ├── read-records.py │ │ │ ├── torch-train.py │ │ │ ├── torch_algos/ │ │ │ │ ├── __init__.py │ │ │ │ ├── loss.py │ │ │ │ └── model.py │ │ │ └── train/ │ │ │ └── train.sh │ │ ├── reader/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── algos/ │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── baseline.py │ │ │ │ ├── config.py │ │ │ │ ├── loss.py │ │ │ │ ├── m_reader.py │ │ │ │ ├── model.py │ │ │ │ ├── qcatt.py │ │ │ │ └── rnet.py │ │ │ ├── dataset.py │ │ │ ├── ensemble/ │ │ │ │ ├── ensemble-infer.py │ │ │ │ ├── ensemble-valid.py │ │ │ │ ├── ensemble.py │ │ │ │ └── evaluate.py │ │ │ ├── evaluate.py │ │ │ ├── infer.py │ │ │ ├── prepare/ │ │ │ │ ├── README.md │ │ │ │ ├── gen-records.py │ │ │ │ ├── gen-seg.py │ │ │ │ ├── merge-emb.py │ │ │ │ ├── pre-seg.py │ │ │ │ ├── run-char-ft.sh │ │ │ │ ├── run-char-glove.sh │ │ │ │ ├── run-noemb.sh │ │ │ │ ├── run-word-jieba-ft.sh │ │ │ │ ├── run-word-jieba-glove.sh │ │ │ │ ├── to-simplify-dureader.py │ │ │ │ └── to-simplify.py │ │ │ ├── prepare-unkvocab.sh │ │ │ ├── prepare.sh │ │ │ ├── prepare.v1/ │ │ │ │ ├── fix-vocab.py │ │ │ │ ├── gen-char-vocab.py │ │ │ │ ├── gen-content.py │ │ │ │ ├── gen-records.py │ │ │ │ ├── gen-seg.py │ │ │ │ ├── gen-test-unkvocab.sh │ │ │ │ ├── gen-test.sh │ │ │ │ ├── gen-train-unkvocab.sh │ │ │ │ ├── gen-train.sh │ │ │ │ ├── gen-valid-unkvocab.sh │ │ │ │ ├── gen-valid.sh │ │ │ │ ├── gen-vocab.py │ │ │ │ ├── gen-vocab.sh │ │ │ │ ├── merge-emb.py │ │ │ │ ├── run-char.sh │ │ │ │ ├── run-unkvocab.sh │ │ │ │ ├── run.sh │ │ │ │ ├── text2ids.py │ │ │ │ └── to-simplify.py │ │ │ ├── read-records.py │ │ │ ├── tools/ │ │ │ │ ├── check.py │ │ │ │ ├── check.sh │ │ │ │ ├── cp-best-epochs.py │ │ │ │ ├── ensemble-infer.py │ │ │ │ ├── ensemble-valid.py │ │ │ │ ├── ensemble.sh │ │ │ │ ├── evaluate.py │ │ │ │ ├── fix-vocab.py │ │ │ │ ├── gen-char-vocab.py │ │ │ │ ├── show-best-epochs.py │ │ │ │ ├── vocab-add-all-char.py │ │ │ │ └── vocab-add-char.py │ │ │ ├── torch-train.py │ │ │ ├── torch_algos/ │ │ │ │ ├── __init__.py │ │ │ │ ├── baseline/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── baseline.py │ │ │ │ ├── loss.py │ │ │ │ ├── m_reader.py │ │ │ │ ├── model.py │ │ │ │ └── rnet.py │ │ │ ├── train/ │ │ │ │ └── v1/ │ │ │ │ ├── torch.word.mreader.answeremb-split.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.att.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.last.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.maxatt.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.maxmean.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.mean.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.topk.sh │ │ │ │ ├── torch.word.mreader.nopad.answeremb-split.topkatt.sh │ │ │ │ └── torch.word.mreader.nopad.answeremb-split.topkattlast.sh │ │ │ ├── train.py │ │ │ └── train.v1/ │ │ │ ├── torch-decay.sh │ │ │ ├── torch.sh │ │ │ ├── v1/ │ │ │ │ ├── model2.1layer.keep07.sh │ │ │ │ ├── qcatt.1layer.keep07.sh │ │ │ │ ├── qcatt.sfu.1layer.keep07.sh │ │ │ │ ├── rcontent.1layer.keep05.sh │ │ │ │ ├── rcontent.1layer.keep07.sh │ │ │ │ ├── rcontent.1layer.keep10.sh │ │ │ │ ├── rcontent.emb.finetune.sh │ │ │ │ ├── rcontent.emb.sh │ │ │ │ ├── rcontent.keep07.sh │ │ │ │ ├── rcontent.sh │ │ │ │ ├── rcontent.split.sh │ │ │ │ ├── rnet.1layer.keep07.emb.finetune.att.2.sh │ │ │ │ ├── rnet.1layer.keep07.emb.finetune.att.finetune.type1only.sh │ │ │ │ ├── rnet.1layer.keep07.emb.finetune.att.sh │ │ │ │ ├── rnet.1layer.keep07.emb.finetune.att.type1only.sh │ │ │ │ ├── rnet.1layer.keep07.emb.finetune.att.type1w2.sh │ │ │ │ ├── rnet.1layer.keep07.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.att.2.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.att.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.att.type1w2.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab.finetune.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.f07.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.f09.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.later.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.maxatt.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.nodecay.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.se.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.topk.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.unkvocab.finetune.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.finetune.unkvocab.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.nodecay.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.emb.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.sh │ │ │ │ ├── rnet.sfu.1layer.keep07.split.sh │ │ │ │ └── rnet.sfu.2layer.keep07.emb.finetune.sh │ │ │ ├── v2/ │ │ │ │ ├── rnet.2.sh │ │ │ │ ├── rnet.decay.sh │ │ │ │ ├── rnet.decay2.sh │ │ │ │ ├── rnet.decay3.sh │ │ │ │ ├── rnet.decay4.sh │ │ │ │ ├── rnet.decay5.sh │ │ │ │ ├── rnet.decay6.sh │ │ │ │ ├── rnet.decay7.sh │ │ │ │ ├── rnet.keep08.sh │ │ │ │ ├── rnet.keep09.sh │ │ │ │ ├── rnet.labelemb.sh │ │ │ │ ├── rnet.max.sh │ │ │ │ ├── rnet.sh │ │ │ │ ├── rnet.split.finetune.type1only.sh │ │ │ │ ├── rnet.split.sh │ │ │ │ └── rnet.type0only.sh │ │ │ ├── v3/ │ │ │ │ ├── bidaf.split.lr0002.sh │ │ │ │ ├── bidaf.split.lrsmall.sh │ │ │ │ ├── bidaf.split.sh │ │ │ │ ├── bow.sh │ │ │ │ ├── mreader.2.sh │ │ │ │ ├── mreader.ae.sh │ │ │ │ ├── mreader.epoch3.sh │ │ │ │ ├── mreader.lr0002.sh │ │ │ │ ├── mreader.max.nomask.sh │ │ │ │ ├── mreader.max.sh │ │ │ │ ├── mreader.noshare.max.sh │ │ │ │ ├── mreader.sh │ │ │ │ ├── mreader.split.sh │ │ │ │ ├── mreader.v1.sh │ │ │ │ ├── mreader.v2.sh │ │ │ │ ├── mreader.v2.split.sh │ │ │ │ ├── rcontent.3.sh │ │ │ │ ├── rcontent.4.sh │ │ │ │ ├── rcontent.5.sh │ │ │ │ ├── rcontent.sh │ │ │ │ ├── rnet.2.2.sh │ │ │ │ ├── rnet.2.dec.sh │ │ │ │ ├── rnet.2.sh │ │ │ │ ├── rnet.2layer.sh │ │ │ │ ├── rnet.3.sh │ │ │ │ ├── rnet.4.sh │ │ │ │ ├── rnet.answer.sh │ │ │ │ ├── rnet.answer.split.batch64.sh │ │ │ │ ├── rnet.answer.split.sh │ │ │ │ ├── rnet.answer.split2.sh │ │ │ │ ├── rnet.answer2.sh │ │ │ │ ├── rnet.answer3.sh │ │ │ │ ├── rnet.att2.sh │ │ │ │ ├── rnet.batch64.sh │ │ │ │ ├── rnet.gate.sh │ │ │ │ ├── rnet.hidden200.sh │ │ │ │ ├── rnet.keep075.sh │ │ │ │ ├── rnet.labelatt.sh │ │ │ │ ├── rnet.labelatt10.sh │ │ │ │ ├── rnet.lr00005.sh │ │ │ │ ├── rnet.max.sh │ │ │ │ ├── rnet.nobucket.sh │ │ │ │ ├── rnet.p2.batch64.sh │ │ │ │ ├── rnet.p2.sh │ │ │ │ ├── rnet.relu.sh │ │ │ │ ├── rnet.sh │ │ │ │ ├── rnet.split.batch64.sh │ │ │ │ ├── rnet.split.cq.batch64.sh │ │ │ │ ├── rnet.split.cq.sh │ │ │ │ ├── rnet.split.p2.batch64.sh │ │ │ │ ├── rnet.split.p2.sh │ │ │ │ ├── rnet.split.reverse.sh │ │ │ │ ├── rnet.split.sh │ │ │ │ ├── rnet.split.test.sh │ │ │ │ ├── rnet.split.type1c10.batch64.sh │ │ │ │ ├── rnet.split.type1c2.batch64.sh │ │ │ │ ├── rnet.split.type1c2.sh │ │ │ │ ├── rnet.split.type1c5.batch64.sh │ │ │ │ ├── rnet.split.type1w2.batch64.sh │ │ │ │ ├── rnet.split.type1w2.sh │ │ │ │ ├── rnet.tanh.sh │ │ │ │ ├── torch-keep07.sh │ │ │ │ ├── torch-mreader.emb.lr00005.sh │ │ │ │ ├── torch-mreader.emb.lr0001.sh │ │ │ │ ├── torch-mreader.emb.lr0001.split.sh │ │ │ │ ├── torch-mreader.emb.lr0003.sh │ │ │ │ ├── torch-mreader.emb.lr0004.sh │ │ │ │ ├── torch-mreader.emb.sh │ │ │ │ ├── torch-mreader.emb.split.sh │ │ │ │ ├── torch-mreader.lr0001.sh │ │ │ │ ├── torch-mreader.sh │ │ │ │ ├── torch-mreader.v1.emb.sh │ │ │ │ ├── torch-mwan.emb.2.sh │ │ │ │ ├── torch-mwan.emb.batch64.sh │ │ │ │ ├── torch-mwan.emb.sh │ │ │ │ ├── torch-mwan.lr0001.sh │ │ │ │ ├── torch-mwan.sh │ │ │ │ ├── torch-rnet.2.sh │ │ │ │ ├── torch-rnet.lr0001.emb.sh │ │ │ │ ├── torch-rnet.lr0001.sh │ │ │ │ ├── torch-rnet.sh │ │ │ │ └── torch.sh │ │ │ ├── v4/ │ │ │ │ ├── bow-emb.sh │ │ │ │ ├── bow-nomask-emb.sh │ │ │ │ ├── bow-nomask.sh │ │ │ │ ├── bow.sh │ │ │ │ ├── gru-emb-att.sh │ │ │ │ ├── gru-emb-latt.sh │ │ │ │ ├── gru-emb-nomask.2.sh │ │ │ │ ├── gru-emb-nomask.sh │ │ │ │ ├── gru-emb-simpledrop-bw.sh │ │ │ │ ├── gru-emb-simpledrop.sh │ │ │ │ ├── gru-emb-top2.sh │ │ │ │ ├── gru-emb-top2mean.sh │ │ │ │ ├── gru-emb-top2wmean.sh │ │ │ │ ├── gru-emb-topkatt2.sh │ │ │ │ ├── gru-emb-topkatt3.sh │ │ │ │ ├── gru-emb.sh │ │ │ │ ├── gru.sh │ │ │ │ ├── mreader-v4-nopad.sh │ │ │ │ ├── mreader-v4-split-nopad.sh │ │ │ │ ├── mreader-v4-split.sh │ │ │ │ ├── mreader-v4.sh │ │ │ │ ├── mreader.max.nopad.sh │ │ │ │ ├── mreader.max.sh │ │ │ │ ├── mreader.max.split.nopad.sh │ │ │ │ ├── mreader.max.split.sh │ │ │ │ ├── mreader.nopad.sh │ │ │ │ ├── mreader.sh │ │ │ │ ├── mreader.split.nopad.sh │ │ │ │ ├── mreader.split.sh │ │ │ │ ├── torch-bow-emb.sh │ │ │ │ ├── torch-bow.sh │ │ │ │ ├── torch-gru-emb-att-nomask.sh │ │ │ │ ├── torch-gru-emb-att-pad-typeemb.sh │ │ │ │ ├── torch-gru-emb-att-pad.sh │ │ │ │ ├── torch-gru-emb-att-type.sh │ │ │ │ ├── torch-gru-emb-att-typeemb.sh │ │ │ │ ├── torch-gru-emb-att-typernn.sh │ │ │ │ ├── torch-gru-emb-att.sh │ │ │ │ ├── torch-gru-emb-keep08.sh │ │ │ │ ├── torch-gru-emb-latt.sh │ │ │ │ ├── torch-gru-emb-mask.2.sh │ │ │ │ ├── torch-gru-emb-mask.sh │ │ │ │ ├── torch-gru-emb-nodrop.sh │ │ │ │ ├── torch-gru-emb-nomask.2.sh │ │ │ │ ├── torch-gru-emb-nomask.sh │ │ │ │ ├── torch-gru-emb-topk2-nomask.sh │ │ │ │ ├── torch-gru-emb-topk2.sh │ │ │ │ ├── torch-gru-emb-topk3-nomask.sh │ │ │ │ ├── torch-gru-emb-topk3.sh │ │ │ │ ├── torch-gru-emb.sh │ │ │ │ ├── torch-gru.2.sh │ │ │ │ ├── torch-gru.sh │ │ │ │ ├── torch-mreader-1hop-nopad.sh │ │ │ │ ├── torch-mreader-1hop-split-nopad.sh │ │ │ │ ├── torch-mreader-emb-att-nopad-split.sh │ │ │ │ ├── torch-mreader-emb-att-nopad.sh │ │ │ │ ├── torch-mreader-emb-att-pad.sh │ │ │ │ ├── torch-mreader-emb-att-typeemb-nopad-split.sh │ │ │ │ ├── torch-mreader-emb-att-typeemb-nopad.sh │ │ │ │ ├── torch-mreader-emb-att-typeemb-pad.sh │ │ │ │ ├── torch-mreader-emb-att-typeemb.sh │ │ │ │ ├── torch-mreader-emb-att.sh │ │ │ │ ├── torch-mreader-emb-nopad-split.sh │ │ │ │ ├── torch-mreader-emb-nopad-typeemb-split.sh │ │ │ │ ├── torch-mreader-emb-nopad-typeemb.sh │ │ │ │ ├── torch-mreader-emb-nopad.sh │ │ │ │ ├── torch-mreader-emb-pad-typeemb.sh │ │ │ │ ├── torch-mreader-emb-pad.sh │ │ │ │ ├── torch-mreader-emb-typeemb.sh │ │ │ │ ├── torch-mreader-emb.sh │ │ │ │ ├── torch-mreader-hop3-nopad.sh │ │ │ │ ├── torch-mreader-nopad.sh │ │ │ │ ├── torch-mreader-poolnopad.sh │ │ │ │ ├── torch-mreader-split-hop3-nopad.sh │ │ │ │ ├── torch-mreader-split-nopad.sh │ │ │ │ ├── torch-mreader-split-poolnopad.sh │ │ │ │ ├── torch-mreader-typeemb-hop3-nopad.sh │ │ │ │ ├── torch-mreader-typeemb-nopad.sh │ │ │ │ ├── torch-mreader-v3-decay09.sh │ │ │ │ ├── torch-mreader-v3-nopad.sh │ │ │ │ ├── torch-mreader-v3-poolnopad.sh │ │ │ │ ├── torch-mreader-v3-split-decay09.sh │ │ │ │ ├── torch-mreader-v3-split-nopad.sh │ │ │ │ ├── torch-mreader-v3-split.sh │ │ │ │ └── torch-mreader-v3.sh │ │ │ └── v5/ │ │ │ ├── torch-mreader-split-answeremb-nopad.sh │ │ │ ├── torch-mreader-split-nopad-ftwiki.sh │ │ │ └── torch-mreader-split-nopad.sh │ │ └── sentiment/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── algos/ │ │ │ ├── __init__.py │ │ │ ├── config.py │ │ │ ├── loss.py │ │ │ ├── model.py │ │ │ └── weights.py │ │ ├── analysis/ │ │ │ ├── analysis.ipynb │ │ │ ├── analyze.py │ │ │ ├── beam-search.py │ │ │ ├── beam_f.py │ │ │ ├── beam_f_utils.py │ │ │ ├── class-info.py │ │ │ ├── class-info.train.csv │ │ │ ├── class-info.valid.csv │ │ │ ├── correlations-filter.py │ │ │ ├── correlations.py │ │ │ ├── diff.py │ │ │ └── gen-class-weights.py │ │ ├── dataset.py │ │ ├── ensemble/ │ │ │ ├── README.md │ │ │ ├── calibrate-cv.py │ │ │ ├── ensemble-cv-parallel.py │ │ │ ├── ensemble-cv-v1.py │ │ │ ├── ensemble-cv.py │ │ │ ├── ensemble-hillclimb.py │ │ │ ├── ensemble-infer.py │ │ │ ├── ensemble-v1.py │ │ │ ├── ensemble.py │ │ │ ├── evaluate.py │ │ │ ├── gen-train.py │ │ │ ├── hillclimb-ensembling.py │ │ │ ├── lgb-adjust.py │ │ │ ├── lgb-cv.py │ │ │ └── lr-cv.py │ │ ├── evaluate.py │ │ ├── infer/ │ │ │ └── v11/ │ │ │ ├── README.md │ │ │ ├── tf.char.rnet.nolatt.sh │ │ │ ├── tf.char.rnet.sh │ │ │ ├── tf.char.transformer.bert.cutfront.sh │ │ │ ├── tf.char.transformer.bert.finetune.2.sh │ │ │ ├── tf.char.transformer.bert.finetune.3.sh │ │ │ ├── tf.char.transformer.bert.finetune.sh │ │ │ ├── tf.char.transformer.bert.finetune4.sh │ │ │ ├── tf.char.transformer.bert.rnn.finetune.sh │ │ │ ├── tf.char.transformer.bert.sh │ │ │ ├── tf.char.transformer.bert.topkatt.cutfront.sh │ │ │ ├── tf.char.transformer.bert.topkatt.finetune.sh │ │ │ ├── tf.char.transformer.bert.topkatt.sh │ │ │ ├── tf.char.transformer.nbert.finetune.sh │ │ │ ├── tf.mix.rnet.nolatt.sh │ │ │ ├── tf.mix.rnet.sh │ │ │ ├── tf.word.mreader.lm.2layer.sh │ │ │ ├── tf.word.mreader.lm.2layer.unkaug.sh │ │ │ ├── tf.word.mreader.lm.sh │ │ │ ├── tf.word.mreader.lm.unkaug.sh │ │ │ ├── tf.word.rnet.hidden600.sh │ │ │ ├── tf.word.rnet.lm.sh │ │ │ ├── tf.word.rnet.lm.unkaug.sh │ │ │ ├── tf.word.rnet.nolatt.hidden600.sh │ │ │ ├── tf.word.rnet.nolatt.sh │ │ │ ├── tf.word.rnet.sh │ │ │ ├── tf.word.rnet.unkaug.sh │ │ │ ├── tf.word.rnetv2.lm.sh │ │ │ ├── tf.word.rnetv2.lm.unkaug.sh │ │ │ ├── torch.char.mreader.lm.nolatt.sh │ │ │ ├── torch.char.mreader.lm.sh │ │ │ ├── torch.char.mreader.nolatt.sh │ │ │ ├── torch.char.mreader.sh │ │ │ ├── torch.mix.mreader.lm.nolatt.sh │ │ │ ├── torch.mix.mreader.lm.sh │ │ │ ├── torch.mix.mreader.sh │ │ │ ├── torch.word.mreader.lm.sh │ │ │ ├── torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.short.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.unkaug.sh │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden300.sh │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden400.sh │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden768.sh │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.sh │ │ │ ├── torch.word.mreader.nopad.lm.sh │ │ │ └── torch.word.mreader.nopad.lm.unkaug.sh │ │ ├── infer.py │ │ ├── lm-train.py │ │ ├── lm_dataset.py │ │ ├── prepare/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── config │ │ │ ├── config.py │ │ │ ├── embeddings/ │ │ │ │ ├── fasttext/ │ │ │ │ │ └── run.sh │ │ │ │ └── glove/ │ │ │ │ └── run.sh │ │ │ ├── filter.py │ │ │ ├── find-chars.py │ │ │ ├── fix-vocab.py │ │ │ ├── gen-canyin.py │ │ │ ├── gen-canyin.sh │ │ │ ├── gen-char-vocab.py │ │ │ ├── gen-content.py │ │ │ ├── gen-dianping.py │ │ │ ├── gen-dianping.sh │ │ │ ├── gen-lm-records.py │ │ │ ├── gen-mix-vocab.py │ │ │ ├── gen-records.py │ │ │ ├── gen-test.sh │ │ │ ├── gen-train.sh │ │ │ ├── gen-trans.py │ │ │ ├── gen-trans.sh │ │ │ ├── gen-valid.sh │ │ │ ├── gen-vocab-v2.sh │ │ │ ├── gen-vocab.py │ │ │ ├── gen-vocab.sh │ │ │ ├── merge-emb.py │ │ │ ├── merge-vocabs.py │ │ │ ├── pre-mix-seg-v1.py │ │ │ ├── pre-mix-seg.py │ │ │ ├── pre-seg-bert.py │ │ │ ├── pre-seg.py │ │ │ ├── run-char-bert.sh │ │ │ ├── run-char-ft.sh │ │ │ ├── run-char-glove.sh │ │ │ ├── run-char-nbert.sh │ │ │ ├── run-char.sh │ │ │ ├── run-lm-char-len256.sh │ │ │ ├── run-lm-char.sh │ │ │ ├── run-lm-jieba-mix-len256.sh │ │ │ ├── run-lm-mix.sh │ │ │ ├── run-lm-word-baike-len20.sh │ │ │ ├── run-lm-word-baike.sh │ │ │ ├── run-lm-word-bseg-len40.sh │ │ │ ├── run-lm-word-bseg-ner-len40.sh │ │ │ ├── run-lm-word-bseg-ner2-len40.sh │ │ │ ├── run-lm-word-jieba-tx-len40.sh │ │ │ ├── run-lm-word-len40.sh │ │ │ ├── run-lm-word-sp10w-len40.sh │ │ │ ├── run-lm-word-sp10w.sh │ │ │ ├── run-lm-word-sp1w-baike.sh │ │ │ ├── run-lm-word-sp1w-len256.sh │ │ │ ├── run-lm-word-sp1w.sh │ │ │ ├── run-lm-word-sp20w-len40.sh │ │ │ ├── run-lm-word-sp20w.sh │ │ │ ├── run-lm-word.sh │ │ │ ├── run-mix-bseg-ft.sh │ │ │ ├── run-mix-bseg-glove-10epoch.sh │ │ │ ├── run-mix-bseg-glove-40epoch.sh │ │ │ ├── run-mix-bseg-glove.sh │ │ │ ├── run-mix-bseg-tx.sh │ │ │ ├── run-mix-glove.sh │ │ │ ├── run-mix-jieba-ft.sh │ │ │ ├── run-mix-tx.sh │ │ │ ├── run-nchar-ft.sh │ │ │ ├── run-noemb-aug.sh │ │ │ ├── run-noemb-char-bert.sh │ │ │ ├── run-noemb-char-nbert.sh │ │ │ ├── run-noemb-char.sh │ │ │ ├── run-noemb-mix-charaug.sh │ │ │ ├── run-noemb-mix.sh │ │ │ ├── run-noemb-pl.sh │ │ │ ├── run-noemb.sh │ │ │ ├── run-word-bseg-ft.sh │ │ │ ├── run-word-bseg-glove.sh │ │ │ ├── run-word-bseg-ner-ft-knowldege.sh │ │ │ ├── run-word-bseg-ner-ft.sh │ │ │ ├── run-word-bseg-ner-ft2.sh │ │ │ ├── run-word-bseg-ner-ft3.sh │ │ │ ├── run-word-bseg-ner-glove-10epoch.sh │ │ │ ├── run-word-bseg-ner-glove-40epoch.sh │ │ │ ├── run-word-bseg-ner-glove.sh │ │ │ ├── run-word-bseg-ner-jiebapre-ft.sh │ │ │ ├── run-word-bseg-subner-ft.sh │ │ │ ├── run-word-bseg-subner-jiebapre-ft.sh │ │ │ ├── run-word-jieba-ft.sh │ │ │ ├── run-word-jieba-glove.sh │ │ │ ├── run-word-jieba-pos-ft.sh │ │ │ ├── run-word-jieba-pos-glove.sh │ │ │ ├── run-word-jieba-tx.sh │ │ │ ├── run-word-sp10w-ft.sh │ │ │ ├── run-word-sp10w-glove.sh │ │ │ ├── run-word-sp10w-tx.sh │ │ │ ├── run-word-sp1w-ft.sh │ │ │ ├── run-word-sp1w-glove.sh │ │ │ ├── run-word-sp1w-tx.sh │ │ │ ├── run-word-sp20w-ft-pl.sh │ │ │ ├── run-word-sp20w-ft.sh │ │ │ ├── run-word-sp20w-glove.sh │ │ │ ├── run-word-stanford-ft.sh │ │ │ ├── run-word-stanford-ft2.sh │ │ │ ├── run-word-stanford-ft3.sh │ │ │ ├── run-word-stanford-glove.sh │ │ │ ├── run-word-stanford-tx-ftchar.sh │ │ │ ├── run-word-stanford-tx-glovechar.sh │ │ │ ├── run-word-tx-ftchar.sh │ │ │ ├── run-word-tx-glovechar.sh │ │ │ ├── text2ids.py │ │ │ ├── tmp │ │ │ ├── to-chars.py │ │ │ ├── to-norm.py │ │ │ └── to-simplify.py │ │ ├── prepare.test/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── config │ │ │ ├── config.py │ │ │ ├── embeddings/ │ │ │ │ ├── fasttext/ │ │ │ │ │ └── run.sh │ │ │ │ └── glove/ │ │ │ │ └── run.sh │ │ │ ├── filter.py │ │ │ ├── find-chars.py │ │ │ ├── fix-vocab.py │ │ │ ├── gen-canyin.py │ │ │ ├── gen-canyin.sh │ │ │ ├── gen-char-vocab.py │ │ │ ├── gen-content.py │ │ │ ├── gen-dianping.py │ │ │ ├── gen-dianping.sh │ │ │ ├── gen-lm-records.py │ │ │ ├── gen-mix-vocab.py │ │ │ ├── gen-records.py │ │ │ ├── gen-test.sh │ │ │ ├── gen-train.sh │ │ │ ├── gen-trans.py │ │ │ ├── gen-trans.sh │ │ │ ├── gen-valid.sh │ │ │ ├── gen-vocab-v2.sh │ │ │ ├── gen-vocab.py │ │ │ ├── gen-vocab.sh │ │ │ ├── merge-emb.py │ │ │ ├── merge-vocabs.py │ │ │ ├── pre-mix-seg-v1.py │ │ │ ├── pre-mix-seg.py │ │ │ ├── pre-seg-bert.py │ │ │ ├── pre-seg.py │ │ │ ├── run-char-bert.sh │ │ │ ├── run-char-ft.sh │ │ │ ├── run-char-glove.sh │ │ │ ├── run-char.sh │ │ │ ├── run-lm-char-len256.sh │ │ │ ├── run-lm-char.sh │ │ │ ├── run-lm-jieba-mix-len256.sh │ │ │ ├── run-lm-mix.sh │ │ │ ├── run-lm-word-baike-len20.sh │ │ │ ├── run-lm-word-baike.sh │ │ │ ├── run-lm-word-bseg-len40.sh │ │ │ ├── run-lm-word-bseg-ner-len40.sh │ │ │ ├── run-lm-word-bseg-ner2-len40.sh │ │ │ ├── run-lm-word-jieba-tx-len40.sh │ │ │ ├── run-lm-word-len40.sh │ │ │ ├── run-lm-word-sp10w-len40.sh │ │ │ ├── run-lm-word-sp10w.sh │ │ │ ├── run-lm-word-sp1w-baike.sh │ │ │ ├── run-lm-word-sp1w-len256.sh │ │ │ ├── run-lm-word-sp1w.sh │ │ │ ├── run-lm-word.sh │ │ │ ├── run-mix-bseg-ft.sh │ │ │ ├── run-mix-bseg-glove-10epoch.sh │ │ │ ├── run-mix-bseg-glove-40epoch.sh │ │ │ ├── run-mix-bseg-glove.sh │ │ │ ├── run-mix-bseg-tx.sh │ │ │ ├── run-mix-glove.sh │ │ │ ├── run-mix-jieba-ft.sh │ │ │ ├── run-mix-tx.sh │ │ │ ├── run-noemb-aug.sh │ │ │ ├── run-noemb-char-bert.sh │ │ │ ├── run-noemb-char.sh │ │ │ ├── run-noemb-mix-charaug.sh │ │ │ ├── run-noemb-mix.sh │ │ │ ├── run-noemb-wordonly.sh │ │ │ ├── run-noemb.sh │ │ │ ├── run-word-bseg-ft.sh │ │ │ ├── run-word-bseg-glove.sh │ │ │ ├── run-word-bseg-ner-ft-knowldege.sh │ │ │ ├── run-word-bseg-ner-ft.sh │ │ │ ├── run-word-bseg-ner-ft2.sh │ │ │ ├── run-word-bseg-ner-ft3.sh │ │ │ ├── run-word-bseg-ner-glove-10epoch.sh │ │ │ ├── run-word-bseg-ner-glove-40epoch.sh │ │ │ ├── run-word-bseg-ner-glove.sh │ │ │ ├── run-word-bseg-ner-jiebapre-ft.sh │ │ │ ├── run-word-bseg-subner-ft.sh │ │ │ ├── run-word-bseg-subner-jiebapre-ft.sh │ │ │ ├── run-word-jieba-ft-short.sh │ │ │ ├── run-word-jieba-ft.sh │ │ │ ├── run-word-jieba-glove.sh │ │ │ ├── run-word-jieba-pos-ft.sh │ │ │ ├── run-word-jieba-pos-glove.sh │ │ │ ├── run-word-jieba-tx.sh │ │ │ ├── run-word-sp10w-ft.sh │ │ │ ├── run-word-sp10w-glove.sh │ │ │ ├── run-word-sp10w-tx.sh │ │ │ ├── run-word-sp1w-ft.sh │ │ │ ├── run-word-sp1w-glove.sh │ │ │ ├── run-word-sp1w-tx.sh │ │ │ ├── run-word-sp20w-ft.sh │ │ │ ├── run-word-sp20w-glove.sh │ │ │ ├── run-word-stanford-ft.sh │ │ │ ├── run-word-stanford-ft2.sh │ │ │ ├── run-word-stanford-ft3.sh │ │ │ ├── run-word-stanford-glove.sh │ │ │ ├── run-word-stanford-tx-ftchar.sh │ │ │ ├── run-word-stanford-tx-glovechar.sh │ │ │ ├── run-word-tx-ftchar.sh │ │ │ ├── run-word-tx-glovechar.sh │ │ │ ├── run.sh │ │ │ ├── text2ids.py │ │ │ ├── tmp │ │ │ ├── to-chars.py │ │ │ ├── to-norm.py │ │ │ └── to-simplify.py │ │ ├── prepare.testb/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── config │ │ │ ├── config.py │ │ │ ├── embeddings/ │ │ │ │ ├── fasttext/ │ │ │ │ │ └── run.sh │ │ │ │ └── glove/ │ │ │ │ └── run.sh │ │ │ ├── filter.py │ │ │ ├── find-chars.py │ │ │ ├── fix-vocab.py │ │ │ ├── gen-canyin.py │ │ │ ├── gen-canyin.sh │ │ │ ├── gen-char-vocab.py │ │ │ ├── gen-content.py │ │ │ ├── gen-dianping.py │ │ │ ├── gen-dianping.sh │ │ │ ├── gen-lm-records.py │ │ │ ├── gen-mix-vocab.py │ │ │ ├── gen-records.py │ │ │ ├── gen-test.sh │ │ │ ├── gen-train.sh │ │ │ ├── gen-trans.py │ │ │ ├── gen-trans.sh │ │ │ ├── gen-valid.sh │ │ │ ├── gen-vocab-v2.sh │ │ │ ├── gen-vocab.py │ │ │ ├── gen-vocab.sh │ │ │ ├── merge-emb.py │ │ │ ├── merge-vocabs.py │ │ │ ├── pre-mix-seg-v1.py │ │ │ ├── pre-mix-seg.py │ │ │ ├── pre-seg-bert.py │ │ │ ├── pre-seg.py │ │ │ ├── run-char-bert.sh │ │ │ ├── run-char-ft.sh │ │ │ ├── run-char-glove.sh │ │ │ ├── run-char.sh │ │ │ ├── run-lm-char-len256.sh │ │ │ ├── run-lm-char.sh │ │ │ ├── run-lm-jieba-mix-len256.sh │ │ │ ├── run-lm-mix.sh │ │ │ ├── run-lm-word-baike-len20.sh │ │ │ ├── run-lm-word-baike.sh │ │ │ ├── run-lm-word-bseg-len40.sh │ │ │ ├── run-lm-word-bseg-ner-len40.sh │ │ │ ├── run-lm-word-bseg-ner2-len40.sh │ │ │ ├── run-lm-word-jieba-tx-len40.sh │ │ │ ├── run-lm-word-len40.sh │ │ │ ├── run-lm-word-sp10w-len40.sh │ │ │ ├── run-lm-word-sp10w.sh │ │ │ ├── run-lm-word-sp1w-baike.sh │ │ │ ├── run-lm-word-sp1w-len256.sh │ │ │ ├── run-lm-word-sp1w.sh │ │ │ ├── run-lm-word.sh │ │ │ ├── run-mix-bseg-ft.sh │ │ │ ├── run-mix-bseg-glove-10epoch.sh │ │ │ ├── run-mix-bseg-glove-40epoch.sh │ │ │ ├── run-mix-bseg-glove.sh │ │ │ ├── run-mix-bseg-tx.sh │ │ │ ├── run-mix-glove.sh │ │ │ ├── run-mix-jieba-ft.sh │ │ │ ├── run-mix-tx.sh │ │ │ ├── run-noemb-aug.sh │ │ │ ├── run-noemb-char-bert.sh │ │ │ ├── run-noemb-char.sh │ │ │ ├── run-noemb-mix-charaug.sh │ │ │ ├── run-noemb-mix.sh │ │ │ ├── run-noemb-wordonly.sh │ │ │ ├── run-noemb.sh │ │ │ ├── run-word-bseg-ft.sh │ │ │ ├── run-word-bseg-glove.sh │ │ │ ├── run-word-bseg-ner-ft-knowldege.sh │ │ │ ├── run-word-bseg-ner-ft.sh │ │ │ ├── run-word-bseg-ner-ft2.sh │ │ │ ├── run-word-bseg-ner-ft3.sh │ │ │ ├── run-word-bseg-ner-glove-10epoch.sh │ │ │ ├── run-word-bseg-ner-glove-40epoch.sh │ │ │ ├── run-word-bseg-ner-glove.sh │ │ │ ├── run-word-bseg-ner-jiebapre-ft.sh │ │ │ ├── run-word-bseg-subner-ft.sh │ │ │ ├── run-word-bseg-subner-jiebapre-ft.sh │ │ │ ├── run-word-jieba-ft-short.sh │ │ │ ├── run-word-jieba-ft.sh │ │ │ ├── run-word-jieba-glove.sh │ │ │ ├── run-word-jieba-pos-ft.sh │ │ │ ├── run-word-jieba-pos-glove.sh │ │ │ ├── run-word-jieba-tx.sh │ │ │ ├── run-word-sp10w-ft.sh │ │ │ ├── run-word-sp10w-glove.sh │ │ │ ├── run-word-sp10w-tx.sh │ │ │ ├── run-word-sp1w-ft.sh │ │ │ ├── run-word-sp1w-glove.sh │ │ │ ├── run-word-sp1w-tx.sh │ │ │ ├── run-word-sp20w-ft.sh │ │ │ ├── run-word-sp20w-glove.sh │ │ │ ├── run-word-stanford-ft.sh │ │ │ ├── run-word-stanford-ft2.sh │ │ │ ├── run-word-stanford-ft3.sh │ │ │ ├── run-word-stanford-glove.sh │ │ │ ├── run-word-stanford-tx-ftchar.sh │ │ │ ├── run-word-stanford-tx-glovechar.sh │ │ │ ├── run-word-tx-ftchar.sh │ │ │ ├── run-word-tx-glovechar.sh │ │ │ ├── run.sh │ │ │ ├── text2ids.py │ │ │ ├── tmp │ │ │ ├── to-chars.py │ │ │ ├── to-norm.py │ │ │ └── to-simplify.py │ │ ├── prepare.v1/ │ │ │ ├── filter.py │ │ │ ├── find-chars.py │ │ │ ├── fix-vocab.py │ │ │ ├── gen-canyin.py │ │ │ ├── gen-canyin.sh │ │ │ ├── gen-char-seg-canyin.py │ │ │ ├── gen-char-seg-dianping.py │ │ │ ├── gen-char-seg-train.py │ │ │ ├── gen-char-seg.py │ │ │ ├── gen-char-vocab.py │ │ │ ├── gen-content.py │ │ │ ├── gen-dianping.py │ │ │ ├── gen-dianping.sh │ │ │ ├── gen-mix-seg-canyin.py │ │ │ ├── gen-mix-seg-dianping.py │ │ │ ├── gen-records.py │ │ │ ├── gen-seg-canyin.py │ │ │ ├── gen-seg-dianping.py │ │ │ ├── gen-seg-train.py │ │ │ ├── gen-test.sh │ │ │ ├── gen-train.sh │ │ │ ├── gen-trans.py │ │ │ ├── gen-trans.sh │ │ │ ├── gen-valid.sh │ │ │ ├── gen-vocab.py │ │ │ ├── gen-vocab.sh │ │ │ ├── merge-emb.py │ │ │ ├── run-char.sh │ │ │ ├── run-noemb.sh │ │ │ ├── run.sh │ │ │ └── text2ids.py │ │ ├── prepare.v2/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── config.py │ │ │ ├── embeddings/ │ │ │ │ ├── fasttext/ │ │ │ │ │ └── run.sh │ │ │ │ └── glove/ │ │ │ │ └── run.sh │ │ │ ├── filter.py │ │ │ ├── find-chars.py │ │ │ ├── fix-vocab.py │ │ │ ├── gen-canyin.py │ │ │ ├── gen-canyin.sh │ │ │ ├── gen-char-seg-canyin.py │ │ │ ├── gen-char-seg-dianping.py │ │ │ ├── gen-char-seg-train.py │ │ │ ├── gen-char-seg.py │ │ │ ├── gen-char-vocab.py │ │ │ ├── gen-content.py │ │ │ ├── gen-dianping.py │ │ │ ├── gen-dianping.sh │ │ │ ├── gen-mix-seg-canyin.py │ │ │ ├── gen-mix-seg-dianping.py │ │ │ ├── gen-mix-seg-train.py │ │ │ ├── gen-records.py │ │ │ ├── gen-seg-canyin.py │ │ │ ├── gen-seg-dianping.py │ │ │ ├── gen-seg-train.py │ │ │ ├── gen-test.sh │ │ │ ├── gen-train.sh │ │ │ ├── gen-trans.py │ │ │ ├── gen-trans.sh │ │ │ ├── gen-valid.sh │ │ │ ├── gen-vocab-bseg-basic-v2.sh │ │ │ ├── gen-vocab-bseg-basic.sh │ │ │ ├── gen-vocab-bseg-phrase-v2.sh │ │ │ ├── gen-vocab-bseg-phrase.sh │ │ │ ├── gen-vocab-v2.sh │ │ │ ├── gen-vocab.py │ │ │ ├── gen-vocab.sh │ │ │ ├── merge-emb.py │ │ │ ├── run-char.sh │ │ │ ├── run-noemb-bseg-basic-v2.sh │ │ │ ├── run-noemb-bseg-basic.sh │ │ │ ├── run-noemb-v2.sh │ │ │ ├── run-noemb-v3.sh │ │ │ ├── run-noemb.sh │ │ │ ├── run.sh │ │ │ └── text2ids.py │ │ ├── read-records.py │ │ ├── scripts/ │ │ │ ├── cp.py │ │ │ ├── example.sh │ │ │ ├── gen-infer.py │ │ │ ├── infer-example.sh │ │ │ ├── infer.py │ │ │ ├── infer.sh_0 │ │ │ ├── infer.sh_1 │ │ │ ├── infer.sh_2 │ │ │ ├── infer.sh_3 │ │ │ ├── prepare-char.sh │ │ │ ├── prepare-noemb.sh │ │ │ └── prepare.sh │ │ ├── tools/ │ │ │ ├── check-emb.py │ │ │ ├── cp-best-epochs.py │ │ │ ├── cp-best-epochs2.py │ │ │ ├── evaluate.py │ │ │ ├── find-best-epoch.py │ │ │ ├── fix-emb.py │ │ │ ├── lcp-loop.py │ │ │ ├── lcp.py │ │ │ ├── rename-finetune.sh │ │ │ ├── rename-variables-finetune.py │ │ │ ├── seg2corpus.py │ │ │ ├── show-best-epochs.py │ │ │ ├── show-metrics.py │ │ │ └── slim.py │ │ ├── torch-infer.py │ │ ├── torch-lm-train.py │ │ ├── torch-sim.py │ │ ├── torch-train.py │ │ ├── torch_algos/ │ │ │ ├── __init__.py │ │ │ ├── loss.py │ │ │ └── model.py │ │ ├── train/ │ │ │ ├── README.md │ │ │ ├── v1/ │ │ │ │ ├── bow.sh │ │ │ │ ├── gru.char.bucket.sh │ │ │ │ ├── gru.char.pos.ner.stanford.sh │ │ │ │ ├── gru.char.pos.sh │ │ │ │ ├── gru.char.pos.stanford.2.sh │ │ │ │ ├── gru.char.pos.stanford.sh │ │ │ │ ├── gru.char.sh │ │ │ │ ├── gru.char.stanford.sh │ │ │ │ ├── gru.emb.sh │ │ │ │ └── gru.sh │ │ │ ├── v10/ │ │ │ │ ├── README.md │ │ │ │ ├── tf.char.bow.sh │ │ │ │ ├── tf.char.bow.unkaug.sh │ │ │ │ ├── tf.char.rnet.hidden300.sh │ │ │ │ ├── tf.char.rnet.hidden400.sh │ │ │ │ ├── tf.char.rnet.sh │ │ │ │ ├── tf.char.transformer.2.sh │ │ │ │ ├── tf.char.transformer.bert.cutfront.sh │ │ │ │ ├── tf.char.transformer.bert.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.rnn.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.rnn.sh │ │ │ │ ├── tf.char.transformer.bert.sh │ │ │ │ ├── tf.char.transformer.sh │ │ │ │ ├── tf.mix.rnet.hidden400.sh │ │ │ │ ├── tf.word.bow.sh │ │ │ │ ├── tf.word.lm.rnet.rand.sh │ │ │ │ ├── tf.word.lm.rnet.sh │ │ │ │ ├── tf.word.mreader.hidden300.sh │ │ │ │ ├── tf.word.mreader.hidden400.sh │ │ │ │ ├── tf.word.mreader.sh │ │ │ │ ├── tf.word.rnet.3layer.sh │ │ │ │ ├── tf.word.rnet.hidden300.3layer.sh │ │ │ │ ├── tf.word.rnet.hidden300.sh │ │ │ │ ├── tf.word.rnet.hidden400.decay6.sh │ │ │ │ ├── tf.word.rnet.hidden400.lm.2.sh │ │ │ │ ├── tf.word.rnet.hidden400.lm.sh │ │ │ │ ├── tf.word.rnet.hidden400.lm.unkaug.sh │ │ │ │ ├── tf.word.rnet.hidden400.sh │ │ │ │ ├── tf.word.rnet.hidden600.sh │ │ │ │ ├── tf.word.rnet.ner.sh │ │ │ │ ├── tf.word.rnet.nolatt.hidden400.sh │ │ │ │ ├── tf.word.rnet.nolatt.hidden600.sh │ │ │ │ ├── tf.word.rnet.nolatt.sh │ │ │ │ ├── tf.word.rnet.sh │ │ │ │ ├── tf.word.rnet.unkaug.sh │ │ │ │ ├── tf.word.rnetv2.hidden400.sh │ │ │ │ ├── torch.char.mreader.nopad.bertopt.sh │ │ │ │ ├── torch.char.mreader.nopad.hidden300.sh │ │ │ │ ├── torch.char.mreader.nopad.hidden600.sh │ │ │ │ ├── torch.char.mreader.nopad.lm.sh │ │ │ │ ├── torch.char.mreader.nopad.sh │ │ │ │ ├── torch.word.lm.hidden300.sh │ │ │ │ ├── torch.word.lm.hidden400.b24.sh │ │ │ │ ├── torch.word.lm.hidden400.sh │ │ │ │ ├── torch.word.lm.hidden600.sh │ │ │ │ ├── torch.word.lm.hidden768.sh │ │ │ │ ├── torch.word.mreader.lm.bertopt.sh │ │ │ │ ├── torch.word.mreader.lm.sh │ │ │ │ ├── torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden600.sh │ │ │ │ ├── torch.word.mreader.nopad.bertopt.nolatt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.hidden300.sh │ │ │ │ ├── torch.word.mreader.nopad.hidden600.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.baike.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.ner.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.ner.sh │ │ │ │ └── torch.word.mreader.nopad.sh │ │ │ ├── v11/ │ │ │ │ ├── README.md │ │ │ │ ├── tf.char.rnet.nolatt.sh │ │ │ │ ├── tf.char.rnet.sh │ │ │ │ ├── tf.char.transformer.bert.cutfront.finetune.2.sh │ │ │ │ ├── tf.char.transformer.bert.cutfront.finetune.3.sh │ │ │ │ ├── tf.char.transformer.bert.cutfront.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.cutfront.sh │ │ │ │ ├── tf.char.transformer.bert.finetune.2.sh │ │ │ │ ├── tf.char.transformer.bert.finetune.3.sh │ │ │ │ ├── tf.char.transformer.bert.finetune.4.sh │ │ │ │ ├── tf.char.transformer.bert.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.finetune4.sh │ │ │ │ ├── tf.char.transformer.bert.rnn.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.sh │ │ │ │ ├── tf.char.transformer.bert.topkatt.cutfront.sh │ │ │ │ ├── tf.char.transformer.bert.topkatt.finetune.sh │ │ │ │ ├── tf.char.transformer.bert.topkatt.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.topkatt.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune2.sh │ │ │ │ ├── tf.char.transformer.nbert.sh │ │ │ │ ├── tf.char.transformer.nbert.topkatt.sh │ │ │ │ ├── tf.mix.rnet.nolatt.sh │ │ │ │ ├── tf.mix.rnet.sh │ │ │ │ ├── tf.word.mreader.lm.2layer.sh │ │ │ │ ├── tf.word.mreader.lm.2layer.unkaug.sh │ │ │ │ ├── tf.word.mreader.lm.sh │ │ │ │ ├── tf.word.mreader.lm.unkaug.sh │ │ │ │ ├── tf.word.rnet.hidden600.sh │ │ │ │ ├── tf.word.rnet.lenemb.sh │ │ │ │ ├── tf.word.rnet.lm.sh │ │ │ │ ├── tf.word.rnet.lm.unkaug.sh │ │ │ │ ├── tf.word.rnet.nolatt.hidden600.sh │ │ │ │ ├── tf.word.rnet.nolatt.sh │ │ │ │ ├── tf.word.rnet.sh │ │ │ │ ├── tf.word.rnet.unkaug.lenemb.sh │ │ │ │ ├── tf.word.rnet.unkaug.sh │ │ │ │ ├── tf.word.rnetv2.lm.sh │ │ │ │ ├── tf.word.rnetv2.lm.unkaug.sh │ │ │ │ ├── tf.word.rnetv2.nolatt.unkaug.sh │ │ │ │ ├── tf.word.rnetv2.unkaug.sh │ │ │ │ ├── torch.char.mreader.lm.nolatt.sh │ │ │ │ ├── torch.char.mreader.lm.sh │ │ │ │ ├── torch.char.mreader.nolatt.sh │ │ │ │ ├── torch.char.mreader.sh │ │ │ │ ├── torch.mix.mreader.lm.nolatt.sh │ │ │ │ ├── torch.mix.mreader.lm.sh │ │ │ │ ├── torch.mix.mreader.sh │ │ │ │ ├── torch.word.mreader.lm.sh │ │ │ │ ├── torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.es.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.ls.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.b24.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.es.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.ls.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.pl.b24.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.pl.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.unkaug.hidden300.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.unkaug.lenemb.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.bertopt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden300.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden400.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.hidden768.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.nolatt.unkaug.sh │ │ │ │ ├── torch.word.mreader.nopad.lm.sh │ │ │ │ └── torch.word.mreader.nopad.lm.unkaug.sh │ │ │ ├── v12/ │ │ │ │ ├── tf.rnet.max_pooling.sh │ │ │ │ ├── tf.rnet.max_pooling.unkaug.sh │ │ │ │ ├── tf.rnet.sh │ │ │ │ ├── tf.rnet.unkaug.sh │ │ │ │ ├── tf.self_attention.max_pooling.sh │ │ │ │ ├── tf.self_attention.max_pooling.unkaug.sh │ │ │ │ ├── tf.self_attention.sh │ │ │ │ ├── tf.self_attention.unkaug.sh │ │ │ │ ├── tf.word.baseline.hidden100.sh │ │ │ │ ├── tf.word.baseline.hidden200.sh │ │ │ │ ├── tf.word.baseline.hidden400.attention_pooling.sh │ │ │ │ ├── tf.word.baseline.hidden400.elmo.sh │ │ │ │ ├── tf.word.baseline.hidden400.max_pooling.elmo.sh │ │ │ │ ├── tf.word.baseline.hidden400.max_pooling.sh │ │ │ │ ├── tf.word.baseline.hidden400.max_pooling.unkaug.sh │ │ │ │ ├── tf.word.baseline.hidden400.sh │ │ │ │ ├── tf.word.baseline.hidden400.unkaug.sh │ │ │ │ ├── tf.word.baseline.sh │ │ │ │ ├── tf.word.rnet.sh │ │ │ │ ├── tf.word.rnet.unkaug.sh │ │ │ │ ├── torch.mreader.elmo.sh │ │ │ │ ├── torch.mreader.sh │ │ │ │ ├── torch.mreader.unkaug.elmo.sh │ │ │ │ ├── torch.mreader.unkaug.sh │ │ │ │ ├── torch.self_attention.elmo.sh │ │ │ │ ├── torch.self_attention.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.sh │ │ │ │ ├── torch.self_attention.unkaug.sh │ │ │ │ ├── torch.word.baseline.hidden100.nochar.sh │ │ │ │ ├── torch.word.baseline.hidden100.sh │ │ │ │ ├── torch.word.baseline.hidden200.sh │ │ │ │ ├── torch.word.baseline.hidden400.attention_pooling.sh │ │ │ │ ├── torch.word.baseline.hidden400.max_pooling.sh │ │ │ │ ├── torch.word.baseline.hidden400.sh │ │ │ │ ├── torch.word.baseline.hidden400.unkaug.elmo.sh │ │ │ │ └── torch.word.baseline.hidden400.unkaug.sh │ │ │ ├── v13/ │ │ │ │ ├── torch.self_attention.elmo.sh │ │ │ │ ├── torch.self_attention.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.valid_decay.sh │ │ │ │ ├── torch.self_attention.unkaug.sh │ │ │ │ ├── torch.word.baseline.hidden400.unkaug.elmo.hack.sh │ │ │ │ ├── torch.word.baseline.hidden400.unkaug.elmo.sh │ │ │ │ └── torch.word.baseline.hidden400.unkaug.sh │ │ │ ├── v14/ │ │ │ │ ├── test.sh │ │ │ │ ├── test2.sh │ │ │ │ ├── test3.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.1gpu.2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.1gpu.3.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.1gpu.3epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.1gpu.4.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.1gpu.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.2gpu.3epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.2gpu.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.3epoch.lr2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.3epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune.lr2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03.all_finetune.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr10.all.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr5.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.ratio1.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.topkatt.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.all.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.no_finetune.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr.2.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.3epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.4epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.5epoch.3layer.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.5epoch.all_finetune.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.5epoch.lr5.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.5epoch.lr8.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.4gpu.5epoch.sh │ │ │ │ ├── tf.char.transformer.nbert.finetune.sh │ │ │ │ ├── torch.self_attention.elmo.sh │ │ │ │ ├── torch.self_attention.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.all_finetune.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_100k.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_10k.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_20k.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_50k.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.batch32.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.batch8.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.pad.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.finetune_6k.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.no_finetune.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.no_finetune_word.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.no_finetune_word2.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.nochar.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.sh │ │ │ │ ├── torch.self_attention.unkaug.elmo.valid_decay.sh │ │ │ │ ├── torch.self_attention.unkaug.sh │ │ │ │ ├── torch.word.baseline.hidden100.nobuckets.sh │ │ │ │ ├── torch.word.baseline.hidden100.sh │ │ │ │ ├── torch.word.baseline.hidden400.unkaug.elmo.hack.sh │ │ │ │ ├── torch.word.baseline.hidden400.unkaug.elmo.sh │ │ │ │ └── torch.word.baseline.hidden400.unkaug.sh │ │ │ ├── v15/ │ │ │ │ ├── bert.sh │ │ │ │ └── bert2.sh │ │ │ ├── v2/ │ │ │ │ ├── rnet.3layer.sh │ │ │ │ ├── rnet.sh │ │ │ │ ├── rnet.wchar.3layer.sh │ │ │ │ ├── rnet.wchar.pos.3layer.sh │ │ │ │ ├── rnet.wchar.pos.ner.sh │ │ │ │ ├── rnet.wchar.pos.sh │ │ │ │ ├── rnet.wchar.sh │ │ │ │ ├── torch.mreader.1hop.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.ner.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.sh │ │ │ │ ├── torch.mreader.1hop.wchar.sh │ │ │ │ └── torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh │ │ │ ├── v3/ │ │ │ │ ├── rnet.3layer.sh │ │ │ │ ├── rnet.sh │ │ │ │ ├── rnet.wchar.3layer.sh │ │ │ │ ├── rnet.wchar.pos.3layer.sh │ │ │ │ ├── rnet.wchar.pos.ner.sh │ │ │ │ ├── rnet.wchar.pos.sh │ │ │ │ ├── rnet.wchar.sh │ │ │ │ ├── torch.mreader.1hop.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.ner.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.sh │ │ │ │ ├── torch.mreader.1hop.wchar.sh │ │ │ │ └── torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh │ │ │ ├── v4/ │ │ │ │ ├── rnet.3layer.sh │ │ │ │ ├── rnet.sh │ │ │ │ ├── rnet.wchar.3layer.sh │ │ │ │ ├── rnet.wchar.pos.3layer.sh │ │ │ │ ├── rnet.wchar.pos.ner.sh │ │ │ │ ├── rnet.wchar.pos.sh │ │ │ │ ├── rnet.wchar.sh │ │ │ │ ├── torch.mreader.1hop.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.ner.sh │ │ │ │ ├── torch.mreader.1hop.wchar.pos.sh │ │ │ │ ├── torch.mreader.1hop.wchar.sh │ │ │ │ └── torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh │ │ │ ├── v5/ │ │ │ │ ├── README.md │ │ │ │ ├── rnet.char.3layer.sh │ │ │ │ ├── rnet.char.noconcat.residual.sh │ │ │ │ ├── rnet.char.noconcat.sh │ │ │ │ ├── rnet.char.residual.sh │ │ │ │ ├── rnet.char.sh │ │ │ │ ├── rnet.mix.3layer.sh │ │ │ │ ├── rnet.mix.sh │ │ │ │ ├── rnet.word.3layer.sh │ │ │ │ ├── rnet.word.pos.3layer.sh │ │ │ │ ├── rnet.word.pos.ner.sh │ │ │ │ ├── rnet.word.pos.sh │ │ │ │ ├── rnet.word.sh │ │ │ │ ├── torch.mreader.1hop.char.sh │ │ │ │ ├── torch.mreader.1hop.mix.sh │ │ │ │ ├── torch.mreader.1hop.word.ner.fast.sh │ │ │ │ ├── torch.mreader.1hop.word.ner.sh │ │ │ │ ├── torch.mreader.1hop.word.pos.ner.sh │ │ │ │ ├── torch.mreader.1hop.word.pos.sh │ │ │ │ ├── torch.mreader.1hop.word.sh │ │ │ │ ├── torch.mreader.1hop.word.subner.sh │ │ │ │ └── torch.mreader.2hop.word.pos.labelrnn.topkattlast.sh │ │ │ ├── v6/ │ │ │ │ ├── README.md │ │ │ │ ├── rnet.char.3layer.sh │ │ │ │ ├── rnet.char.residual.sh │ │ │ │ ├── rnet.char.sh │ │ │ │ ├── rnet.mix.3layer.sh │ │ │ │ ├── rnet.mix.adafactor.sh │ │ │ │ ├── rnet.mix.multistep.sh │ │ │ │ ├── rnet.mix.natt.sh │ │ │ │ ├── rnet.mix.sh │ │ │ │ ├── rnet.mix.v1.sh │ │ │ │ ├── rnet.mix.yellowfin.sh │ │ │ │ ├── rnet.word.3layer.sh │ │ │ │ ├── rnet.word.adamax.sh │ │ │ │ ├── rnet.word.pos.3layer.sh │ │ │ │ ├── rnet.word.pos.ner.sh │ │ │ │ ├── rnet.word.pos.sh │ │ │ │ ├── rnet.word.sh │ │ │ │ ├── rnetv2.mix.natt.sh │ │ │ │ ├── torch.mreader.1hop.char.sh │ │ │ │ ├── torch.mreader.1hop.mix.sh │ │ │ │ ├── torch.mreader.1hop.mix.v1.sh │ │ │ │ ├── torch.mreader.1hop.mix.v2.sh │ │ │ │ ├── torch.mreader.1hop.mix.v3.sh │ │ │ │ ├── torch.mreader.1hop.word.latt.sh │ │ │ │ ├── torch.mreader.1hop.word.ner.latt.sh │ │ │ │ ├── torch.mreader.1hop.word.ner.sh │ │ │ │ ├── torch.mreader.1hop.word.pos.ner.sh │ │ │ │ ├── torch.mreader.1hop.word.pos.sh │ │ │ │ ├── torch.mreader.1hop.word.sh │ │ │ │ ├── torch.mreader.1hop.word.subner.sh │ │ │ │ ├── torch.mreader.1hop.word.v2.sh │ │ │ │ ├── torch.mreader.2hop.word.pos.labelrnn.topkattlast.sh │ │ │ │ ├── torch.rnet.word.gate.sh │ │ │ │ ├── torch.rnet.word.ner.sh │ │ │ │ ├── torch.rnet.word.ner.v2.sh │ │ │ │ ├── torch.rnet.word.ner.v3.sh │ │ │ │ ├── torch.rnet.word.ner.v4.sh │ │ │ │ ├── torch.rnet.word.ner.v5.sh │ │ │ │ ├── torch.rnet.word.sh │ │ │ │ ├── torch.rnet.word.v2.sh │ │ │ │ └── torch.rnet.word.v4.sh │ │ │ ├── v7/ │ │ │ │ ├── torch.mreader.1hop.word.latt.pad.sh │ │ │ │ ├── torch.mreader.1hop.word.latt.sh │ │ │ │ ├── torch.mreader.1hop.word.sh │ │ │ │ ├── torch.mreader.1hop.word.v2.sh │ │ │ │ ├── torch.mreader.1hop.word.v3.sh │ │ │ │ └── torch.rnet.word.v2.sh │ │ │ ├── v8/ │ │ │ │ ├── torch.lm.mreader.word.nopad.rand.sh │ │ │ │ ├── torch.lm.mreader.word.nopad.rand2.sh │ │ │ │ ├── torch.lm.mreader.word.nopad.sh │ │ │ │ ├── torch.lm.mreader.word.nopad2.sh │ │ │ │ ├── torch.lm.mreader.word.sh │ │ │ │ ├── torch.mreader.word.aug.sh │ │ │ │ ├── torch.mreader.word.chconv.sh │ │ │ │ ├── torch.mreader.word.chpad.sh │ │ │ │ ├── torch.mreader.word.dynamic.curnn.sh │ │ │ │ ├── torch.mreader.word.dynamic.latt.nopad.sh │ │ │ │ ├── torch.mreader.word.dynamic.latt.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.2layer.lm.rand.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.2layer.lm.rand2.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.2layer.lm.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.2layer.lm2.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.2layer.lm3.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.lm.rand.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.lm.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.lm2.sh │ │ │ │ ├── torch.mreader.word.dynamic.nopad.sh │ │ │ │ ├── torch.mreader.word.dynamic.sh │ │ │ │ ├── torch.mreader.word.dynamic.transformer.sh │ │ │ │ ├── torch.mreader.word.elmo.sh │ │ │ │ ├── torch.mreader.word.finetune.sh │ │ │ │ ├── torch.mreader.word.finetune2.sh │ │ │ │ ├── torch.mreader.word.noam.sh │ │ │ │ ├── torch.mreader.word.noam2.sh │ │ │ │ ├── torch.mreader.word.rand.sh │ │ │ │ └── torch.mreader.word.sh │ │ │ └── v9/ │ │ │ ├── README.md │ │ │ ├── tf.char.transformer.5epoch.sh │ │ │ ├── tf.char.transformer.bert.sh │ │ │ ├── tf.char.transformer.lm.10epoch.sh │ │ │ ├── tf.char.transformer.lm.2.sh │ │ │ ├── tf.char.transformer.lm.5epoch.finetune.sh │ │ │ ├── tf.char.transformer.lm.5epoch.sh │ │ │ ├── tf.char.transformer.lm.sh │ │ │ ├── tf.char.transformer.rand.sh │ │ │ ├── tf.char.transformer.sh │ │ │ ├── tf.word.lm.2layer.sh │ │ │ ├── tf.word.lm.rand.sh │ │ │ ├── tf.word.lm.rnet.sh │ │ │ ├── tf.word.lm.sh │ │ │ ├── tf.word.mreader.sfu.sh │ │ │ ├── tf.word.mreader.sh │ │ │ ├── tf.word.rnet.attnodrop.sh │ │ │ ├── tf.word.rnet.bertopt.10epoch.2.sh │ │ │ ├── tf.word.rnet.bertopt.10epoch.sh │ │ │ ├── tf.word.rnet.bertopt.15epoch.d5.sh │ │ │ ├── tf.word.rnet.bertopt.5epoch.finetune.sh │ │ │ ├── tf.word.rnet.bertopt.5epoch.sh │ │ │ ├── tf.word.rnet.bertopt.sh │ │ │ ├── tf.word.rnet.lm.sh │ │ │ ├── tf.word.rnet.rand.sh │ │ │ ├── tf.word.rnet.sh │ │ │ ├── tf.word.transformer.5epoch.sh │ │ │ ├── tf.word.transformer.sh │ │ │ ├── torch.char.lm.lstm.nopad.rand.sh │ │ │ ├── torch.char.lm.lstm.nopad.sh │ │ │ ├── torch.char.lm.lstm.sh │ │ │ ├── torch.char.lm.nopad.addbaike.sh │ │ │ ├── torch.char.lm.nopad.rand.sh │ │ │ ├── torch.char.lm.nopad.sh │ │ │ ├── torch.char.lm.sh │ │ │ ├── torch.char.mreader.2layer.nopad.sh │ │ │ ├── torch.char.mreader.nopad.lm.sh │ │ │ ├── torch.char.mreader.nopad.pos.sh │ │ │ ├── torch.char.mreader.nopad.sh │ │ │ ├── torch.word.lm.2layer.nopad.sh │ │ │ ├── torch.word.lm.2layer.sh │ │ │ ├── torch.word.lm.lstm.nopad.rand.sh │ │ │ ├── torch.word.lm.lstm.nopad.sh │ │ │ ├── torch.word.lm.lstm.sh │ │ │ ├── torch.word.lm.nopad.addbaike.sh │ │ │ ├── torch.word.lm.nopad.rand.sh │ │ │ ├── torch.word.lm.nopad.sh │ │ │ ├── torch.word.lm.sh │ │ │ ├── torch.word.lstm.mreader.2layer.nopad.latt6.lm.sh │ │ │ ├── torch.word.lstm.mreader.2layer.nopad.latt80.lm.sh │ │ │ ├── torch.word.lstm.mreader.2layer.nopad.lm.sh │ │ │ ├── torch.word.lstm.mreader.2layer.nopad.sh │ │ │ ├── torch.word.mreader.2layer.lm.bertopt.sh │ │ │ ├── torch.word.mreader.2layer.lm.sh │ │ │ ├── torch.word.mreader.2layer.nolatt.lm.bertopt.sh │ │ │ ├── torch.word.mreader.2layer.nolatt.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.cw.sh │ │ │ ├── torch.word.mreader.2layer.nopad.labelrnn.2hop.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.labelrnn.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.latt6.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.latt80.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.2.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.3.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.4.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.5.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.beropt.d5.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.beropt.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.rand.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.lm.v2.sh │ │ │ ├── torch.word.mreader.2layer.nopad.nolatt.lm.bertopt.sh │ │ │ ├── torch.word.mreader.2layer.nopad.nolatt.lm.sh │ │ │ ├── torch.word.mreader.2layer.nopad.sh │ │ │ ├── torch.word.mreader.3layer.nopad.lm.sh │ │ │ ├── torch.word.mreader.3layer.nopad.nolatt.lm.sh │ │ │ ├── torch.word.mreader.nopad.cw.sh │ │ │ ├── torch.word.mreader.nopad.lm.sh │ │ │ ├── torch.word.mreader.nopad.sh │ │ │ ├── torch.word.mreader.sh │ │ │ ├── torch.word.rnet.2layer.nopad.lm.sh │ │ │ ├── torch.word.rnet.nopad.lm.sh │ │ │ ├── torch.word.rnet.nopad.sh │ │ │ ├── torch.word.rnet.sh │ │ │ ├── torch.word.rnn.lm.sh │ │ │ ├── torch.word.rnn.nopad.lm.sh │ │ │ ├── torch.word.rnn.nopad.rand.sh │ │ │ ├── torch.word.rnn.nopad.sh │ │ │ └── torch.word.rnn.sh │ │ ├── train.py │ │ ├── train.v1/ │ │ │ ├── README.md │ │ │ ├── v1/ │ │ │ │ ├── bow.emb.fix.sh │ │ │ │ ├── bow.emb.sh │ │ │ │ ├── bow.emb.warm.sh │ │ │ │ ├── bow.labelatt.emb.sh │ │ │ │ ├── bow.labelatt.sh │ │ │ │ ├── bow.labelatt.simple.sh │ │ │ │ ├── bow.mdecay.sh │ │ │ │ ├── bow.sh │ │ │ │ ├── bow.topk-3att.labelatt.emb.sh │ │ │ │ ├── convnet.topk-3att.labelatt.emb.sh │ │ │ │ ├── crnn.topk-3att.labelatt.emb.sh │ │ │ │ ├── gru.2layer.emb.sh │ │ │ │ ├── gru.2layer.sh │ │ │ │ ├── gru.att.sh │ │ │ │ ├── gru.att2.sh │ │ │ │ ├── gru.emb.finetune.later.sh │ │ │ │ ├── gru.emb.finetune.sh │ │ │ │ ├── gru.emb.fix.sh │ │ │ │ ├── gru.emb.sh │ │ │ │ ├── gru.emb.warm.sh │ │ │ │ ├── gru.f05.sh │ │ │ │ ├── gru.f07.sh │ │ │ │ ├── gru.f09.sh │ │ │ │ ├── gru.focal.sh │ │ │ │ ├── gru.focal2.sh │ │ │ │ ├── gru.hidden200.sh │ │ │ │ ├── gru.label.sh │ │ │ │ ├── gru.maxatt.2.sh │ │ │ │ ├── gru.maxatt.sh │ │ │ │ ├── gru.maxmean.sh │ │ │ │ ├── gru.mdecay.f09.sh │ │ │ │ ├── gru.mdecay.p2.sh │ │ │ │ ├── gru.mdecay.sh │ │ │ │ ├── gru.mdecay2.f07.sh │ │ │ │ ├── gru.mdecay2.f09.sh │ │ │ │ ├── gru.mdecay2.sh │ │ │ │ ├── gru.mean.sh │ │ │ │ ├── gru.naonly.sh │ │ │ │ ├── gru.naratio01.sh │ │ │ │ ├── gru.naratio1.sh │ │ │ │ ├── gru.nodecay.sh │ │ │ │ ├── gru.p2.sh │ │ │ │ ├── gru.sh │ │ │ │ ├── gru.topk-3.2layer.sh │ │ │ │ ├── gru.topk-3.cosine.10epoch.decay05.sh │ │ │ │ ├── gru.topk-3.cosine.10epoch.sh │ │ │ │ ├── gru.topk-3.cosine.5epoch.decay01.sh │ │ │ │ ├── gru.topk-3.cosine.5epoch.decay04.sh │ │ │ │ ├── gru.topk-3.cosine.5epoch.decay08.sh │ │ │ │ ├── gru.topk-3.cosine.5epoch.sh │ │ │ │ ├── gru.topk-3.cosine.decay05.sh │ │ │ │ ├── gru.topk-3.cosine.decay08.sh │ │ │ │ ├── gru.topk-3.cosine.sh │ │ │ │ ├── gru.topk-3.earth.na.sh │ │ │ │ ├── gru.topk-3.earth.sh │ │ │ │ ├── gru.topk-3.hier.sh │ │ │ │ ├── gru.topk-3.label.sh │ │ │ │ ├── gru.topk-3.labelatt.emb.sh │ │ │ │ ├── gru.topk-3.labelatt.sh │ │ │ │ ├── gru.topk-3.mlp.2.sh │ │ │ │ ├── gru.topk-3.mlp.sh │ │ │ │ ├── gru.topk-3.mlp05.sh │ │ │ │ ├── gru.topk-3.mlp1.sh │ │ │ │ ├── gru.topk-3.na.sh │ │ │ │ ├── gru.topk-3.sh │ │ │ │ ├── gru.topk-3att.2layer.emb.sh │ │ │ │ ├── gru.topk-3att.2layer.hier.sh │ │ │ │ ├── gru.topk-3att.2layer.label.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.10w.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.1w.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.2.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.mdecay.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.naonly.finetune.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.naonly.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.2.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune2.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio05.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio1.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.height20.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.mdecay.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.sfu.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.emb.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.finetune.d05.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.finetune.sh │ │ │ │ ├── gru.topk-3att.2layer.labelatt.sh │ │ │ │ ├── gru.topk-3att.2layer.sh │ │ │ │ ├── gru.topk-3att.sh │ │ │ │ ├── gru.topk-4.sh │ │ │ │ ├── gru.topk-5.sh │ │ │ │ ├── gru.topk-6.sh │ │ │ │ ├── gru.topk.sh │ │ │ │ ├── gru.weights.0.naratio01.sh │ │ │ │ ├── gru.weights.0.sh │ │ │ │ ├── gru.weights.location.naratio01.sh │ │ │ │ ├── gru.weights.location.sh │ │ │ │ ├── gru.weights.service.sh │ │ │ │ ├── gru.weights.service.topk.sh │ │ │ │ ├── gru.weights.service0.sh │ │ │ │ ├── gru.weights.service0.topk.sh │ │ │ │ ├── qanet.topk-3att.labelatt.emb.sh │ │ │ │ └── rcnn.topk-3att.labelatt.emb.sh │ │ │ ├── v2/ │ │ │ │ ├── bow.sh │ │ │ │ ├── gru.1w.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.1w.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.1w.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.5k.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.5k.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.5k.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.5k.aspect.dish.sh │ │ │ │ ├── gru.5k.aspect.environment.sh │ │ │ │ ├── gru.5k.aspect.location.sh │ │ │ │ ├── gru.5k.aspect.others.sh │ │ │ │ ├── gru.5k.aspect.price.sh │ │ │ │ ├── gru.5k.aspect.service.sh │ │ │ │ ├── gru.5k.keep06.sh │ │ │ │ ├── gru.5k.keep08.sh │ │ │ │ ├── gru.5k.keep09.sh │ │ │ │ ├── gru.5k.labelemb.sh │ │ │ │ ├── gru.5k.labelrnn.sh │ │ │ │ ├── gru.5k.sfu.sh │ │ │ │ ├── gru.5k.sh │ │ │ │ ├── gru.5k.tanh.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt10.selfmatch.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sfu.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt40.selfmatch.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.sh │ │ │ │ ├── gru.5k.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.char.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.char.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.char.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.char.aspect.dish.sh │ │ │ │ ├── gru.char.aspect.environment.sh │ │ │ │ ├── gru.char.aspect.location.sh │ │ │ │ ├── gru.char.aspect.others.sh │ │ │ │ ├── gru.char.aspect.price.sh │ │ │ │ ├── gru.char.aspect.service.sh │ │ │ │ ├── gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ ├── gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300.sh │ │ │ │ ├── gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh │ │ │ │ ├── gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh │ │ │ │ ├── gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.hidden200.sh │ │ │ │ └── gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.sh │ │ │ ├── v3/ │ │ │ │ ├── gru-5k-ftwiki.sh │ │ │ │ ├── gru-5k-labelrnn.sh │ │ │ │ ├── gru-5k-nopad.sh │ │ │ │ ├── gru-baseline-att.sh │ │ │ │ ├── gru-baseline-ftwiki.sh │ │ │ │ ├── gru-baseline.sh │ │ │ │ ├── gru.5k.mreader.2hop.sh │ │ │ │ ├── gru.5k.mreader.sfu.2hop.sh │ │ │ │ ├── gru.5k.mreader.sfu.sh │ │ │ │ ├── gru.5k.mreader.sh │ │ │ │ ├── gru.5k.sfu.sh │ │ │ │ ├── gru.5k.sh │ │ │ │ ├── torch-gru-baseline-att-nopad.sh │ │ │ │ ├── torch-gru-baseline-att-pad.sh │ │ │ │ ├── torch-gru-baseline-att-v2.sh │ │ │ │ ├── torch-gru-baseline-nopad.sh │ │ │ │ ├── torch-gru-baseline-pad.sh │ │ │ │ ├── torch-gru-baseline-v2-ftwiki.sh │ │ │ │ ├── torch-gru-baseline-v2.sh │ │ │ │ ├── torch-gru-baseline.sh │ │ │ │ ├── torch-gru-labelatt-nopad.sh │ │ │ │ ├── torch-gru-labelatt-sfu-nopad.sh │ │ │ │ ├── torch-gru-rnet-curnn-nopad.sh │ │ │ │ ├── torch-gru-rnet-curnn-sfu-nopad.sh │ │ │ │ ├── torch-gru-rnet-curnn-sfu.sh │ │ │ │ ├── torch-gru-rnet-curnn.sh │ │ │ │ ├── torch-gru-rnet-nopad.sh │ │ │ │ ├── torch-gru-rnet-sfu-nopad.sh │ │ │ │ ├── torch-mreader-1hop.sh │ │ │ │ ├── torch-mreader-2hop.sh │ │ │ │ ├── torch-mreader-labelrnn-1hop.sh │ │ │ │ └── torch-mreader-labelrnn-2hop.sh │ │ │ └── v4/ │ │ │ ├── gru-5k-canyin-char-addneubinary-finetune.sh │ │ │ ├── gru-5k-canyin-char-addneubinary-trans.sh │ │ │ ├── gru-5k-canyin-char-addneubinary.sh │ │ │ ├── gru-5k-canyin-char.sh │ │ │ ├── gru-5k-canyin-mix-addbinaries-trans.sh │ │ │ ├── gru-5k-canyin-mix-addbinaries.sh │ │ │ ├── gru-5k-canyin-mix-addnabinary-finetune-epoch5.sh │ │ │ ├── gru-5k-canyin-mix-addnabinary-finetune.sh │ │ │ ├── gru-5k-canyin-mix-addnabinary.sh │ │ │ ├── gru-5k-canyin-mix-addnaneubinary-finetune.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary-finetune-epoch5.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary-finetune-factor2.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary-finetune.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary-trans.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary.2.sh │ │ │ ├── gru-5k-canyin-mix-addneubinary.sh │ │ │ ├── gru-5k-canyin-mix-binariesonly.sh │ │ │ ├── gru-5k-canyin-mix-cotrain.sh │ │ │ ├── gru-5k-canyin-mix-deformcanyin.sh │ │ │ ├── gru-5k-canyin-mix-deformdianping-finetune.sh │ │ │ ├── gru-5k-canyin-mix-deformdianping.sh │ │ │ ├── gru-5k-canyin-mix-finetune-dianpingemb.sh │ │ │ ├── gru-5k-canyin-mix-hier-finetune.sh │ │ │ ├── gru-5k-canyin-mix-hier-trans.sh │ │ │ ├── gru-5k-canyin-mix-hier.sh │ │ │ ├── gru-5k-canyin-mix-hierneu-finetune.sh │ │ │ ├── gru-5k-canyin-mix-neubinary-finetune.sh │ │ │ ├── gru-5k-canyin-mix-neubinary-trans.sh │ │ │ ├── gru-5k-canyin-mix-neubinary.sh │ │ │ ├── gru-5k-canyin-mix-othersAgainOnly.sh │ │ │ ├── gru-5k-canyin-mix-othersOnly.sh │ │ │ ├── gru-5k-canyin-mix-othersOverallOnly.sh │ │ │ ├── gru-5k-canyin-mix-othersOverallW2.sh │ │ │ ├── gru-5k-canyin-mix-othersOverallW5.sh │ │ │ ├── gru-5k-canyin-mix-othersW10.sh │ │ │ ├── gru-5k-canyin-mix-othersW2.sh │ │ │ ├── gru-5k-canyin-mix-othersW5.sh │ │ │ ├── gru-5k-canyin-mix-regression-finetune.sh │ │ │ ├── gru-5k-canyin-mix-regression.sh │ │ │ ├── gru-5k-canyin-mix-small.sh │ │ │ ├── gru-5k-canyin-mix-trans.2.sh │ │ │ ├── gru-5k-canyin-mix-trans.3.sh │ │ │ ├── gru-5k-canyin-mix-trans.sh │ │ │ ├── gru-5k-canyin-mix.sh │ │ │ ├── gru-5k-canyin.sh │ │ │ ├── gru-5k-hier-canyin-finetune.sh │ │ │ ├── gru-5k-hier-canyin.sh │ │ │ ├── gru-5k-lattonly-canyin-char.sh │ │ │ ├── gru-5k-maxmean-canyin.sh │ │ │ ├── gru-5k-rnetv2-canyin-char.sh │ │ │ ├── gru-5k-rnetv2-canyin.sh │ │ │ ├── gru-5k-rnetv2-sfu-canyin.sh │ │ │ ├── gru-5k-rnetv3-canyin-char.sh │ │ │ ├── gru-5k-rnetv3-canyin.sh │ │ │ ├── gru-5k-rnetv3-selfmatchonly-canyin-char.sh │ │ │ ├── gru-5k-rnetv4-canyin.sh │ │ │ ├── gru-5k-selfmatchonly-canyin-char.sh │ │ │ ├── gru-5k-topk3attmean-canyin-char.sh │ │ │ ├── gru-5k-topk3attmean-canyin.sh │ │ │ ├── gru-5k-topk3mean-canyin.sh │ │ │ ├── gru.5k.sh │ │ │ ├── rcnn-k5-canyin-mix.sh │ │ │ ├── torch-mreader-trans.sh │ │ │ └── torch-mreader.sh │ │ └── train.v2/ │ │ ├── README.md │ │ ├── v1/ │ │ │ ├── bow.emb.binary.sh │ │ │ ├── bow.emb.sh │ │ │ ├── bow.ori.emb.sh │ │ │ ├── bow.ori.sh │ │ │ ├── bow.sh │ │ │ ├── bow.simplify.sh │ │ │ ├── bow.testori.sh │ │ │ ├── bow.testsimplify.sh │ │ │ ├── gru.400.sh │ │ │ ├── gru.char.sfu.sh │ │ │ ├── gru.char.sh │ │ │ ├── gru.emb.2.sh │ │ │ ├── gru.emb.adjust.sh │ │ │ ├── gru.emb.char.sh │ │ │ ├── gru.emb.cw.sh │ │ │ ├── gru.emb.decay.sh │ │ │ ├── gru.emb.decay2.sh │ │ │ ├── gru.emb.last.sh │ │ │ ├── gru.emb.lastmax.sh │ │ │ ├── gru.emb.lastmaxmean.sh │ │ │ ├── gru.emb.loss.sh │ │ │ ├── gru.emb.norec.sh │ │ │ ├── gru.emb.rec.sh │ │ │ ├── gru.emb.rec.topkattlast.sh │ │ │ ├── gru.emb.sh │ │ │ ├── gru.emb.smooth.sh │ │ │ ├── gru.emb.trans.sh │ │ │ ├── gru.lm.2.sh │ │ │ ├── gru.lm.3.sh │ │ │ ├── gru.lm.emb.2.sh │ │ │ ├── gru.lm.emb.sh │ │ │ ├── gru.lm.lr0002.sh │ │ │ ├── gru.lm.pretrain.sh │ │ │ ├── gru.lm.sh │ │ │ ├── gru.ori.emb.sh │ │ │ ├── gru.ori.sh │ │ │ ├── gru.sh │ │ │ ├── gru.simplify.emb.2.sh │ │ │ ├── gru.simplify.emb.addneubinary.sh │ │ │ ├── gru.simplify.emb.finetune.sh │ │ │ ├── gru.simplify.emb.sh │ │ │ ├── gru.simplify.sh │ │ │ ├── gru.testsimplify.emb.finetune.sh │ │ │ ├── gru.testsimplify.emb.sh │ │ │ ├── gru.testsimplify.sh │ │ │ ├── lstm.emb.norec.sh │ │ │ ├── lstm.emb.rec.2layer.noconcat.sh │ │ │ ├── lstm.emb.rec.2layer.noconcat.topkattlast.sh │ │ │ ├── lstm.emb.rec.sh │ │ │ ├── lstm.emb.rec.topkattlast.sh │ │ │ ├── lstm.emb.sh │ │ │ ├── rnet.char.ft.sh │ │ │ ├── rnet.char.glove.sh │ │ │ ├── torch.fastai.1layer.sh │ │ │ ├── torch.fastai.2.sh │ │ │ ├── torch.fastai.3.sh │ │ │ ├── torch.fastai.4.sh │ │ │ ├── torch.fastai.5.sh │ │ │ ├── torch.fastai.sh │ │ │ ├── torch.gru.2layer.sh │ │ │ ├── torch.gru.sh │ │ │ ├── torch.lstm.1layer.labelatt.2hop.topkattlast.sh │ │ │ ├── torch.lstm.1layer.labelatt.topkattlast.sh │ │ │ ├── torch.lstm.2.sh │ │ │ ├── torch.lstm.2layer.noconcat.labelatt.gate.topkattlast.sh │ │ │ ├── torch.lstm.2layer.noconcat.labelatt.topkattlast.sh │ │ │ ├── torch.lstm.2layer.noconcat.sh │ │ │ ├── torch.lstm.2layer.noconcat.topkattlast.sh │ │ │ ├── torch.lstm.2layer.sh │ │ │ ├── torch.lstm.evpadd.sh │ │ │ ├── torch.lstm.max.2.sh │ │ │ ├── torch.lstm.max.sh │ │ │ ├── torch.lstm.padd.sh │ │ │ ├── torch.lstm.recdrop.sh │ │ │ ├── torch.lstm.sh │ │ │ ├── torch.lstmV2.2.sh │ │ │ ├── torch.lstmV2.bwdrop.sh │ │ │ ├── torch.lstmV2.norec.2.sh │ │ │ ├── torch.lstmV2.norec.nopad.sh │ │ │ ├── torch.lstmV2.norec.sh │ │ │ ├── torch.lstmV2.sh │ │ │ ├── torch.rnet.2layer.noconcat.topkattlast.sh │ │ │ └── torch.rnetV2.2layer.noconcat.topkattlast.sh │ │ ├── v1.1/ │ │ │ ├── bow.emb.binary.sh │ │ │ ├── bow.emb.sh │ │ │ ├── bow.ori.emb.sh │ │ │ ├── bow.ori.sh │ │ │ ├── bow.sh │ │ │ ├── bow.simplify.sh │ │ │ ├── bow.testori.sh │ │ │ ├── bow.testsimplify.sh │ │ │ ├── gru.400.sh │ │ │ ├── gru.char.sfu.sh │ │ │ ├── gru.char.sh │ │ │ ├── gru.emb.2.sh │ │ │ ├── gru.emb.adjust.sh │ │ │ ├── gru.emb.char.2.sh │ │ │ ├── gru.emb.char.3.sh │ │ │ ├── gru.emb.char.4.sh │ │ │ ├── gru.emb.char.5.sh │ │ │ ├── gru.emb.char.sh │ │ │ ├── gru.emb.cw.sh │ │ │ ├── gru.emb.decay.sh │ │ │ ├── gru.emb.decay2.sh │ │ │ ├── gru.emb.last.sh │ │ │ ├── gru.emb.lastmax.sh │ │ │ ├── gru.emb.lastmaxmean.sh │ │ │ ├── gru.emb.loss.sh │ │ │ ├── gru.emb.norec.sh │ │ │ ├── gru.emb.rec.sh │ │ │ ├── gru.emb.rec.topkattlast.sh │ │ │ ├── gru.emb.sh │ │ │ ├── gru.emb.smooth.sh │ │ │ ├── gru.emb.trans.sh │ │ │ ├── gru.lm.2.sh │ │ │ ├── gru.lm.3.sh │ │ │ ├── gru.lm.emb.2.sh │ │ │ ├── gru.lm.emb.sh │ │ │ ├── gru.lm.lr0002.sh │ │ │ ├── gru.lm.pretrain.sh │ │ │ ├── gru.lm.sh │ │ │ ├── gru.ori.emb.sh │ │ │ ├── gru.ori.sh │ │ │ ├── gru.sh │ │ │ ├── gru.simplify.emb.2.sh │ │ │ ├── gru.simplify.emb.addneubinary.sh │ │ │ ├── gru.simplify.emb.finetune.sh │ │ │ ├── gru.simplify.emb.sh │ │ │ ├── gru.simplify.sh │ │ │ ├── gru.testsimplify.emb.finetune.sh │ │ │ ├── gru.testsimplify.emb.sh │ │ │ ├── gru.testsimplify.sh │ │ │ ├── lstm.emb.norec.sh │ │ │ ├── lstm.emb.rec.2layer.noconcat.sh │ │ │ ├── lstm.emb.rec.2layer.noconcat.topkattlast.sh │ │ │ ├── lstm.emb.rec.sh │ │ │ ├── lstm.emb.rec.topkattlast.sh │ │ │ ├── lstm.emb.sh │ │ │ ├── rnet.char.ft.sh │ │ │ ├── rnet.char.glove.sh │ │ │ ├── torch.fastai.1layer.sh │ │ │ ├── torch.fastai.2.sh │ │ │ ├── torch.fastai.3.sh │ │ │ ├── torch.fastai.4.sh │ │ │ ├── torch.fastai.5.sh │ │ │ ├── torch.fastai.sh │ │ │ ├── torch.gru.2layer.sh │ │ │ ├── torch.gru.sh │ │ │ ├── torch.lstm.1layer.labelatt.2hop.topkattlast.sh │ │ │ ├── torch.lstm.1layer.labelatt.topkattlast.sh │ │ │ ├── torch.lstm.2.sh │ │ │ ├── torch.lstm.2layer.noconcat.labelatt.gate.topkattlast.sh │ │ │ ├── torch.lstm.2layer.noconcat.labelatt.topkattlast.sh │ │ │ ├── torch.lstm.2layer.noconcat.sh │ │ │ ├── torch.lstm.2layer.noconcat.topkattlast.sh │ │ │ ├── torch.lstm.2layer.sh │ │ │ ├── torch.lstm.evpadd.sh │ │ │ ├── torch.lstm.max.2.sh │ │ │ ├── torch.lstm.max.sh │ │ │ ├── torch.lstm.padd.sh │ │ │ ├── torch.lstm.recdrop.sh │ │ │ ├── torch.lstm.sh │ │ │ ├── torch.lstmV2.2.sh │ │ │ ├── torch.lstmV2.bwdrop.sh │ │ │ ├── torch.lstmV2.norec.2.sh │ │ │ ├── torch.lstmV2.norec.nopad.sh │ │ │ ├── torch.lstmV2.norec.sh │ │ │ ├── torch.lstmV2.sh │ │ │ ├── torch.rnet.2layer.noconcat.topkattlast.sh │ │ │ └── torch.rnetV2.2layer.noconcat.topkattlast.sh │ │ ├── v10/ │ │ │ ├── rnet.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v11/ │ │ │ ├── rnet.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v12/ │ │ │ ├── rnet.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v2/ │ │ │ ├── README.md │ │ │ ├── rnet.3layer.noconcat.sh │ │ │ ├── rnet.3layer.noconcat.topkattlast.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.3layer.topkattlast.sh │ │ │ ├── rnet.noconcat.sh │ │ │ ├── rnet.noconcat.topkattlast.sh │ │ │ ├── rnet.sh │ │ │ ├── rnet.topkattlast.sh │ │ │ ├── torch.mreader.1hop.2layer.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.sh │ │ │ ├── torch.mreader.1hop.decay09.sh │ │ │ ├── torch.mreader.1hop.sh │ │ │ ├── torch.mreader.1hop.topkattlast.sh │ │ │ ├── torch.mreader.labelrnn.2hop.2layer.sh │ │ │ ├── torch.mreader.labelrnn.2hop.2layer.topkattlast.sh │ │ │ └── torch.mreaderV2.1hop.2layer.sh │ │ ├── v2.old/ │ │ │ ├── README.md │ │ │ ├── convnet.sh │ │ │ ├── qanet.sh │ │ │ ├── rnet.3layer.fine.lr10.sh │ │ │ ├── rnet.3layer.fine.lr2.sh │ │ │ ├── rnet.3layer.fine.lr4.sh │ │ │ ├── rnet.3layer.fine.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.addneu.sh │ │ │ ├── rnet.fine.addneu.sh │ │ │ ├── rnet.fine.trans.sh │ │ │ ├── rnet.fine.trans01.sh │ │ │ ├── rnet.fine.trans05.sh │ │ │ ├── rnet.fine2.addneu.sh │ │ │ ├── rnet.hidden300.sh │ │ │ ├── rnet.labelrnn.sh │ │ │ ├── rnet.latt10.sh │ │ │ ├── rnet.latt80.sh │ │ │ ├── rnet.maxmeanatt.sh │ │ │ ├── rnet.sh │ │ │ ├── rnetv2.sh │ │ │ ├── torch.mreader.1hop.labelrnn.addneu.sh │ │ │ ├── torch.mreader.1hop.labelrnn.sh │ │ │ ├── torch.mreader.1hop.sh │ │ │ ├── torch.mreader.2hop.labelrnn.sh │ │ │ └── torch.mreader.2hop.sh │ │ ├── v3/ │ │ │ ├── README.md │ │ │ ├── rnet.3layer.noconcat.sh │ │ │ ├── rnet.3layer.noconcat.topkattlast.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.3layer.topkattlast.sh │ │ │ ├── rnet.noconcat.lossesdecay.sh │ │ │ ├── rnet.noconcat.sh │ │ │ ├── rnet.noconcat.topkattlast.sh │ │ │ ├── rnet.sh │ │ │ ├── rnet.topkattlast.sh │ │ │ ├── torch.mreader.1hop.2layer.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.sh │ │ │ ├── torch.mreader.1hop.decay09.sh │ │ │ ├── torch.mreader.1hop.sh │ │ │ ├── torch.mreader.1hop.topkattlast.sh │ │ │ ├── torch.mreader.labelrnn.2hop.2layer.sh │ │ │ ├── torch.mreader.labelrnn.2hop.2layer.topkattlast.sh │ │ │ └── torch.mreaderV2.1hop.2layer.sh │ │ ├── v4/ │ │ │ ├── README.md │ │ │ ├── rnet.3layer.noconcat.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.noconcat.lossesdecay.sh │ │ │ ├── rnet.noconcat.sh │ │ │ ├── rnet.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh │ │ │ ├── torch.mreader.1hop.decay09.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v5/ │ │ │ ├── README.md │ │ │ ├── rnet.3layer.noconcat.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.noconcat.lossesdecay.sh │ │ │ ├── rnet.noconcat.sh │ │ │ ├── rnet.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh │ │ │ ├── torch.mreader.1hop.2layer.topkattlast.sh │ │ │ ├── torch.mreader.1hop.decay09.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v6/ │ │ │ ├── README.md │ │ │ ├── rnet.3layer.noconcat.sh │ │ │ ├── rnet.3layer.sh │ │ │ ├── rnet.noconcat.sh │ │ │ ├── rnet.sh │ │ │ ├── torch.mreader.1hop.decay09.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v7/ │ │ │ ├── rnet.finetune6k.sh │ │ │ ├── rnet.fixword.sh │ │ │ ├── rnet.sh │ │ │ ├── torch.mreader.1hop.finetune6k.sh │ │ │ ├── torch.mreader.1hop.fixword.sh │ │ │ └── torch.mreader.1hop.sh │ │ ├── v8/ │ │ │ ├── rnet.sh │ │ │ └── torch.mreader.1hop.sh │ │ └── v9/ │ │ ├── rnet.sh │ │ └── torch.mreader.1hop.sh │ ├── common/ │ │ └── lm/ │ │ ├── README.md │ │ ├── algos/ │ │ │ ├── loss.py │ │ │ └── model.py │ │ ├── dataset.py │ │ ├── prepare/ │ │ │ ├── to-ids.glove.word.sh │ │ │ ├── to-ids.py │ │ │ └── to-ids.sh │ │ ├── read-records.py │ │ ├── train/ │ │ │ ├── char.concat.sh │ │ │ ├── char.emb.sh │ │ │ ├── char.sh │ │ │ ├── char.small.sh │ │ │ ├── v1/ │ │ │ │ ├── train.concat.sh │ │ │ │ ├── train.emb.sh │ │ │ │ └── train.sh │ │ │ ├── v2/ │ │ │ │ ├── train.concat.sh │ │ │ │ ├── train.emb.sh │ │ │ │ └── train.sh │ │ │ ├── word.concat.sh │ │ │ ├── word.emb.sh │ │ │ └── word.sh │ │ └── train.py │ ├── feed/ │ │ └── rank/ │ │ ├── tf/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── config.py │ │ │ ├── data/ │ │ │ │ └── train_0 │ │ │ ├── dataset.py │ │ │ ├── eager-train/ │ │ │ │ └── best-v0.sh │ │ │ ├── err/ │ │ │ │ └── torch-only-train.py │ │ │ ├── evaluate.py │ │ │ ├── gen-records.py │ │ │ ├── loss.py │ │ │ ├── model.py │ │ │ ├── mpi.py │ │ │ ├── prepare/ │ │ │ │ ├── gen-records.sh │ │ │ │ ├── gen-train.sh │ │ │ │ └── gen-valid.sh │ │ │ ├── pyt/ │ │ │ │ ├── __init__.py │ │ │ │ ├── dataset.py │ │ │ │ └── model.py │ │ │ ├── read/ │ │ │ │ ├── README.md │ │ │ │ ├── horovod.sh │ │ │ │ ├── read-record.sh │ │ │ │ └── read-text.sh │ │ │ ├── read-record.py │ │ │ ├── read-simple.py │ │ │ ├── read-test.py │ │ │ ├── read-test2.py │ │ │ ├── read-test3.py │ │ │ ├── read-text.py │ │ │ ├── test/ │ │ │ │ ├── read-torch-dataset.py │ │ │ │ └── test-torch-hvd.py │ │ │ ├── text_dataset.py │ │ │ ├── tfrecord_dataset.py │ │ │ ├── torch-hvd-train/ │ │ │ │ ├── best-v0-small.sh │ │ │ │ └── best-v0.sh │ │ │ ├── torch-hvd-train.py │ │ │ ├── torch-only-train/ │ │ │ │ ├── baseline.sh │ │ │ │ ├── best-v0-small.sh │ │ │ │ └── best-v0.sh │ │ │ ├── torch-only-train-hvd/ │ │ │ │ ├── best-v0-small.sh │ │ │ │ └── best-v0.sh │ │ │ ├── torch-only-train-hvd.py │ │ │ ├── torch-only-train.py │ │ │ ├── torch-train/ │ │ │ │ ├── baseline.sh │ │ │ │ ├── best-v0-small.sh │ │ │ │ └── best-v0.sh │ │ │ ├── torch-train.py │ │ │ ├── train/ │ │ │ │ ├── README.md │ │ │ │ ├── allsum.sh │ │ │ │ ├── attention.sh │ │ │ │ ├── baseline.sh │ │ │ │ ├── baseline2.sh │ │ │ │ ├── baseline3.sh │ │ │ │ ├── baseline4.sh │ │ │ │ ├── best-v0-horovod-lp.sh │ │ │ │ ├── best-v0-horovod-lrnoscal-prerand.sh │ │ │ │ ├── best-v0-horovod-lrnoscale-largebuffer.sh │ │ │ │ ├── best-v0-horovod-lrnoscale-nbp.sh │ │ │ │ ├── best-v0-horovod-lrnoscale.sh │ │ │ │ ├── best-v0-horovod-noshard.sh │ │ │ │ ├── best-v0-horovod-record-lrnoscale-largebuffer.sh │ │ │ │ ├── best-v0-horovod-record-lrnoscale.sh │ │ │ │ ├── best-v0-horovod-record.sh │ │ │ │ ├── best-v0-horovod-sp.sh │ │ │ │ ├── best-v0-horovod.sh │ │ │ │ ├── best-v0-horovod2.sh │ │ │ │ ├── best-v0-record.sh │ │ │ │ ├── best-v0-sp.sh │ │ │ │ ├── best-v0.sh │ │ │ │ ├── deep-addval.sh │ │ │ │ ├── deep.embact.sh │ │ │ │ ├── deep.sh │ │ │ │ ├── dw-add.sh │ │ │ │ ├── dw-att-fieldemb.sh │ │ │ │ ├── dw-bigbatch.sh │ │ │ │ ├── dw-concat.sh │ │ │ │ ├── dw-concat2.sh │ │ │ │ ├── dw-concat3.sh │ │ │ │ ├── dw-concat4.sh │ │ │ │ ├── dw-field.sh │ │ │ │ ├── dw-fieldemb.sh │ │ │ │ ├── dw-hidden100.sh │ │ │ │ ├── dw-hidden64.sh │ │ │ │ ├── dw-max-fieldemb.sh │ │ │ │ ├── dw-max.sh │ │ │ │ ├── dw-max2.sh │ │ │ │ ├── dw-mean.sh │ │ │ │ ├── dw-mean2-2.sh │ │ │ │ ├── dw-mean2-fieldemb-mlp1layer.sh │ │ │ │ ├── dw-mean2-fieldemb-mlp1layer2.sh │ │ │ │ ├── dw-mean2-fieldemb-mlp2layer.sh │ │ │ │ ├── dw-mean2-fieldemb-rankloss.sh │ │ │ │ ├── dw-mean2-fieldemb.sh │ │ │ │ ├── dw-mean2-fieldemb2.sh │ │ │ │ ├── dw-mean2-rankloss.sh │ │ │ │ ├── dw-mean2.sh │ │ │ │ ├── dw-mean3.sh │ │ │ │ ├── dw-new-allsum.sh │ │ │ │ ├── dw-new.sh │ │ │ │ ├── dw-old-allsum.sh │ │ │ │ ├── dw-old.sh │ │ │ │ ├── dw-record.sh │ │ │ │ ├── dw-sum-fconcat-fieldemb-mlp.sh │ │ │ │ ├── dw-sum-fconcat-fieldemb-mlp2.sh │ │ │ │ ├── dw-sum-fconcat-fieldemb-mlp3.sh │ │ │ │ ├── dw-sum-fconcat-mlp.sh │ │ │ │ ├── dw-sum-fconcat-mlp2.sh │ │ │ │ ├── dw-sum-fconcat.sh │ │ │ │ ├── dw-sum-fieldemb-rankloss.sh │ │ │ │ ├── dw-sum-fieldemb.sh │ │ │ │ ├── dw-sum-fieldemb2.sh │ │ │ │ ├── dw-sum-horovod-noshard.sh │ │ │ │ ├── dw-sum-horovod.sh │ │ │ │ ├── dw-sum-record.sh │ │ │ │ ├── dw-sum2-fieldemb-mlp1layer.sh │ │ │ │ ├── dw-sum2.sh │ │ │ │ ├── dw-text.sh │ │ │ │ ├── dw-topk.sh │ │ │ │ ├── fconcat-record.sh │ │ │ │ ├── fconcat.sh │ │ │ │ ├── fconcat2.sh │ │ │ │ ├── fconcat3.sh │ │ │ │ ├── horovod-batch128-test.sh │ │ │ │ ├── horovod-batch256.sh │ │ │ │ ├── horovod-batch64-2.sh │ │ │ │ ├── horovod-batch64-test.sh │ │ │ │ ├── horovod-batch64.sh │ │ │ │ ├── horovod-scale.sh │ │ │ │ ├── horovod-small.sh │ │ │ │ ├── horovod-test-record.sh │ │ │ │ ├── horovod-test.sh │ │ │ │ ├── horovod.sh │ │ │ │ ├── horovod2.sh │ │ │ │ ├── rankloss.sh │ │ │ │ ├── record.sh │ │ │ │ ├── small.sh │ │ │ │ ├── sum.sh │ │ │ │ ├── test1.sh │ │ │ │ ├── test10.sh │ │ │ │ ├── test11.sh │ │ │ │ ├── test12.sh │ │ │ │ ├── test2.sh │ │ │ │ ├── test3.sh │ │ │ │ ├── test4.sh │ │ │ │ ├── test5.sh │ │ │ │ ├── test6-2.sh │ │ │ │ ├── test6-3.sh │ │ │ │ ├── test6.sh │ │ │ │ ├── test7.sh │ │ │ │ ├── test8.sh │ │ │ │ ├── test9.sh │ │ │ │ ├── wide-deep.sh │ │ │ │ ├── wide-deep2-bert-2epoch.sh │ │ │ │ ├── wide-deep2-bert.sh │ │ │ │ ├── wide-deep2-bert2-2epoch.sh │ │ │ │ ├── wide-deep2-bert2.sh │ │ │ │ ├── wide-deep2-lazy.sh │ │ │ │ ├── wide-deep2.sh │ │ │ │ ├── wide-ftrl.sh │ │ │ │ ├── wide-noval.sh │ │ │ │ └── wide.sh │ │ │ └── train.py │ │ └── v1/ │ │ └── README.md │ ├── kaggle/ │ │ ├── blindness/ │ │ │ ├── jupter/ │ │ │ │ └── tf-image.ipynb │ │ │ ├── keras/ │ │ │ │ ├── READEME.md │ │ │ │ ├── aug.py │ │ │ │ ├── check.py │ │ │ │ ├── config.py │ │ │ │ ├── dataset.py │ │ │ │ ├── evaluate.py │ │ │ │ ├── evaluate2.py │ │ │ │ ├── fake-infer.py │ │ │ │ ├── folds.py │ │ │ │ ├── gen-folds.py │ │ │ │ ├── infer.py │ │ │ │ ├── infer.sh │ │ │ │ ├── jupter.ipynb │ │ │ │ ├── loss.py │ │ │ │ ├── lr.py │ │ │ │ ├── model.py │ │ │ │ ├── train.py │ │ │ │ ├── train2.py │ │ │ │ └── util.py │ │ │ ├── keras2/ │ │ │ │ ├── READEME.md │ │ │ │ ├── aug.py │ │ │ │ ├── config.py │ │ │ │ ├── dataset.py │ │ │ │ ├── evaluate.py │ │ │ │ ├── loss.py │ │ │ │ ├── model.py │ │ │ │ └── train.py │ │ │ ├── keras2tf/ │ │ │ │ ├── READEME.md │ │ │ │ ├── aug.py │ │ │ │ ├── config.py │ │ │ │ ├── dataset.py │ │ │ │ ├── evaluate.py │ │ │ │ ├── loss.py │ │ │ │ ├── model.py │ │ │ │ └── train.py │ │ │ ├── keras3/ │ │ │ │ ├── READEME.md │ │ │ │ ├── aug.py │ │ │ │ ├── bak/ │ │ │ │ │ └── evaluate.py │ │ │ │ ├── config.py │ │ │ │ ├── dataset.py │ │ │ │ ├── evaluate.py │ │ │ │ ├── loss.py │ │ │ │ ├── model.py │ │ │ │ └── train.py │ │ │ ├── other/ │ │ │ │ ├── APTOS 2019_ Keras Baseline.ipynb │ │ │ │ ├── Intro APTOS Diabetic Retinopathy (EDA & Sta e77c27.ipynb │ │ │ │ ├── keras_baseline.py │ │ │ │ └── training-mobilenet-v2-in-4-min.py │ │ │ ├── prepare/ │ │ │ │ ├── gen-records.py │ │ │ │ └── gen-records.sh │ │ │ ├── tf/ │ │ │ │ ├── dataset.py │ │ │ │ ├── evaluate.py │ │ │ │ ├── loss.py │ │ │ │ ├── model.py │ │ │ │ ├── model_base.py │ │ │ │ ├── train/ │ │ │ │ │ └── train.sh │ │ │ │ └── train.py │ │ │ └── tf2/ │ │ │ ├── dataset.py │ │ │ ├── evaluate.py │ │ │ ├── loss.py │ │ │ ├── model.py │ │ │ ├── train/ │ │ │ │ └── train.sh │ │ │ └── train.py │ │ ├── cifar10/ │ │ │ ├── README.md │ │ │ ├── baseline/ │ │ │ │ ├── keras/ │ │ │ │ │ ├── KerasT-master/ │ │ │ │ │ │ ├── .idea/ │ │ │ │ │ │ │ ├── KerasT.iml │ │ │ │ │ │ │ ├── inspectionProfiles/ │ │ │ │ │ │ │ │ └── Project_Default.xml │ │ │ │ │ │ │ ├── misc.xml │ │ │ │ │ │ │ ├── modules.xml │ │ │ │ │ │ │ ├── preferred-vcs.xml │ │ │ │ │ │ │ └── vcs.xml │ │ │ │ │ │ ├── 4layerCNN.py │ │ │ │ │ │ ├── 6layerCNN.py │ │ │ │ │ │ ├── ConfusionMatrixVisualization.py │ │ │ │ │ │ └── README.md │ │ │ │ │ ├── hands-on-deep-learning-master/ │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ └── cifar_image_classification/ │ │ │ │ │ │ ├── aux/ │ │ │ │ │ │ │ ├── cifar100_meta │ │ │ │ │ │ │ ├── cifar100_to_h5py.ipynb │ │ │ │ │ │ │ └── cifar10_to_h5py.ipynb │ │ │ │ │ │ ├── cnn_adv.py │ │ │ │ │ │ ├── cnn_fchollet.py │ │ │ │ │ │ ├── cnn_pkaur.py │ │ │ │ │ │ ├── cnn_simple.py │ │ │ │ │ │ ├── drawings.ipynb │ │ │ │ │ │ ├── helpers.py │ │ │ │ │ │ ├── lr.py │ │ │ │ │ │ ├── mlp.py │ │ │ │ │ │ └── neptune.yaml │ │ │ │ │ └── simple/ │ │ │ │ │ ├── cifar10.py │ │ │ │ │ └── result.csv │ │ │ │ └── tf/ │ │ │ │ ├── cifar10.py │ │ │ │ ├── cifar10_estimator/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── cifar10.py │ │ │ │ │ ├── cifar10_main.py │ │ │ │ │ ├── cifar10_model.py │ │ │ │ │ ├── cifar10_multi_gpu_train.py │ │ │ │ │ ├── cifar10_utils.py │ │ │ │ │ ├── cmle_config.yaml │ │ │ │ │ ├── evaluator.py │ │ │ │ │ ├── gen-records.sh │ │ │ │ │ ├── generate_cifar10_tfrecords.py │ │ │ │ │ ├── inference.py │ │ │ │ │ ├── model_base.py │ │ │ │ │ ├── prepare.sh │ │ │ │ │ ├── train/ │ │ │ │ │ │ ├── readme │ │ │ │ │ │ ├── train-2gpu-2.sh │ │ │ │ │ │ ├── train-2gpu.sh │ │ │ │ │ │ ├── train-4gpu.sh │ │ │ │ │ │ ├── train-melt-2gpu.sh │ │ │ │ │ │ ├── train-melt-decay-2gpu.sh │ │ │ │ │ │ ├── train-melt-decay.sh │ │ │ │ │ │ ├── train-melt-decay98.sh │ │ │ │ │ │ ├── train-melt-momentum-batch128.sh │ │ │ │ │ │ ├── train-melt-momentum-decay-2gpu.sh │ │ │ │ │ │ ├── train-melt-momentum-decay-batch64.sh │ │ │ │ │ │ ├── train-melt-momentum-decay.sh │ │ │ │ │ │ ├── train-melt-momentum.sh │ │ │ │ │ │ ├── train-melt-momentum2-batch128-2gpu.sh │ │ │ │ │ │ ├── train-melt-momentum2-batch128.sh │ │ │ │ │ │ ├── train-melt-momentum2.sh │ │ │ │ │ │ ├── train-melt.sh │ │ │ │ │ │ └── train.sh │ │ │ │ │ ├── train.py │ │ │ │ │ └── train.tfrecords │ │ │ │ └── cifar10_estimator.v1/ │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── cifar10.py │ │ │ │ ├── cifar10_main.py │ │ │ │ ├── cifar10_model.py │ │ │ │ ├── cifar10_multi_gpu_train.py │ │ │ │ ├── cifar10_utils.py │ │ │ │ ├── cmle_config.yaml │ │ │ │ ├── evaluator.py │ │ │ │ ├── gen-records.sh │ │ │ │ ├── generate_cifar10_tfrecords.py │ │ │ │ ├── inference.py │ │ │ │ ├── model_base.py │ │ │ │ ├── prepare.sh │ │ │ │ ├── train/ │ │ │ │ │ ├── readme │ │ │ │ │ ├── train-2gpu-2.sh │ │ │ │ │ ├── train-2gpu.sh │ │ │ │ │ ├── train-4gpu.sh │ │ │ │ │ ├── train-melt-2gpu.sh │ │ │ │ │ ├── train-melt-decay-2gpu.sh │ │ │ │ │ ├── train-melt-decay.sh │ │ │ │ │ ├── train-melt-decay98.sh │ │ │ │ │ ├── train-melt-momentum-batch128.sh │ │ │ │ │ ├── train-melt-momentum-decay-2gpu.sh │ │ │ │ │ ├── train-melt-momentum-decay-batch64.sh │ │ │ │ │ ├── train-melt-momentum-decay.sh │ │ │ │ │ ├── train-melt-momentum.sh │ │ │ │ │ ├── train-melt-momentum2-batch128-2gpu.sh │ │ │ │ │ ├── train-melt-momentum2-batch128.sh │ │ │ │ │ ├── train-melt-momentum2.sh │ │ │ │ │ ├── train-melt.sh │ │ │ │ │ └── train.sh │ │ │ │ ├── train.py │ │ │ │ └── train.tfrecords │ │ │ ├── fastai/ │ │ │ │ ├── cifar10-simplenet.ipynb │ │ │ │ └── cifar10.ipynb │ │ │ └── tf/ │ │ │ ├── cifar10.py │ │ │ ├── cifar10_model.py │ │ │ ├── evaluate.py │ │ │ ├── evaluator.py │ │ │ ├── loss.py │ │ │ ├── model_base.py │ │ │ ├── train/ │ │ │ │ ├── readme │ │ │ │ ├── train-2gpu-2.sh │ │ │ │ ├── train-2gpu.sh │ │ │ │ ├── train-4gpu.sh │ │ │ │ ├── train-melt-2gpu.sh │ │ │ │ ├── train-melt-decay-2gpu.sh │ │ │ │ ├── train-melt-decay.sh │ │ │ │ ├── train-melt-decay98.sh │ │ │ │ ├── train-melt-momentum-batch128.sh │ │ │ │ ├── train-melt-momentum-decay-2gpu.sh │ │ │ │ ├── train-melt-momentum-decay-batch64.sh │ │ │ │ ├── train-melt-momentum-decay.sh │ │ │ │ ├── train-melt-momentum-decay2-2gpu.sh │ │ │ │ ├── train-melt-momentum-decay2.sh │ │ │ │ ├── train-melt-momentum.sh │ │ │ │ ├── train-melt-momentum2-batch128-2gpu.sh │ │ │ │ ├── train-melt-momentum2-batch128.sh │ │ │ │ ├── train-melt-momentum2.sh │ │ │ │ ├── train-melt.sh │ │ │ │ └── train.sh │ │ │ ├── train.py │ │ │ └── train2.py │ │ └── toxic/ │ │ ├── algos/ │ │ │ ├── config.py │ │ │ └── model.py │ │ ├── checkpoint │ │ ├── dataset.py │ │ ├── evaluate.py │ │ ├── prepare/ │ │ │ ├── __init__.py │ │ │ ├── black.csv │ │ │ ├── config.py │ │ │ ├── count-unks.py │ │ │ ├── extend-table.py │ │ │ ├── filter-special.py │ │ │ ├── gen-correction.py │ │ │ ├── gen-en-lang-prob.py │ │ │ ├── gen-full-vocab.sh │ │ │ ├── gen-lang.py │ │ │ ├── gen-ori-vocab.sh │ │ │ ├── gen-records-parse.py │ │ │ ├── gen-records.py │ │ │ ├── gen-sentences-csv.py │ │ │ ├── gen-sentences.py │ │ │ ├── gen-tokens.py │ │ │ ├── gen-twitter-ori-vocab.sh │ │ │ ├── gen-vocab-parse.py │ │ │ ├── gen-vocab.py │ │ │ ├── gray.csv │ │ │ ├── merge-2emb.py │ │ │ ├── merge-charemb.py │ │ │ ├── merge-emb.py │ │ │ ├── merge-glove.py │ │ │ ├── merge-ngram-emb.py │ │ │ ├── merge-word-ngram-emb.py │ │ │ ├── merge-wordemb.py │ │ │ ├── post-deal.py │ │ │ ├── prepare-test.sh │ │ │ ├── prepare-train.sh │ │ │ ├── preprocess.py │ │ │ ├── readme │ │ │ ├── run-gloveonly.sh │ │ │ ├── run-scratch.sh │ │ │ ├── run-v1.sh │ │ │ ├── run-v10-fasttext.sh │ │ │ ├── run-v10-fttalk.sh │ │ │ ├── run-v10.sh │ │ │ ├── run-v11-fasttext-lower.sh │ │ │ ├── run-v11-fasttext.sh │ │ │ ├── run-v11-ftngram.sh │ │ │ ├── run-v11-fttalk.sh │ │ │ ├── run-v11-fttalk2.sh │ │ │ ├── run-v11-fttalk5.sh │ │ │ ├── run-v11-glove-lower.sh │ │ │ ├── run-v11-glove.sh │ │ │ ├── run-v11-glovetalk.sh │ │ │ ├── run-v11-glovetwitter.sh │ │ │ ├── run-v11-lexvec.sh │ │ │ ├── run-v11-lexvecc.sh │ │ │ ├── run-v11-ngram-lower.sh │ │ │ ├── run-v11.sh │ │ │ ├── run-v13.sh │ │ │ ├── run-v14.sh │ │ │ ├── run-v15-clean-lower.sh │ │ │ ├── run-v15-clean.sh │ │ │ ├── run-v15-fasttext-lower-allngram.sh │ │ │ ├── run-v15-fasttext-lower-lemma.sh │ │ │ ├── run-v15-fasttext-lower.sh │ │ │ ├── run-v15-fasttext.sh │ │ │ ├── run-v15-fttalk3gram-lower.sh │ │ │ ├── run-v15-fttalk3gramall-lower.sh │ │ │ ├── run-v15-fttalk5-lower.sh │ │ │ ├── run-v15-fttalk5.sh │ │ │ ├── run-v15-glove-lower-allngram.sh │ │ │ ├── run-v15-glove-lower-lem.sh │ │ │ ├── run-v15-glove-lower.sh │ │ │ ├── run-v15-gloveft-lower.sh │ │ │ ├── run-v15-glovetalk-lower.sh │ │ │ ├── run-v15-glovetalk.sh │ │ │ ├── run-v15-lexvecc-clean.sh │ │ │ ├── run-v15-lexvecc.sh │ │ │ ├── run-v15.sh │ │ │ ├── run-v16-fasttext-lower-lemma.sh │ │ │ ├── run-v16-fasttext-lower.sh │ │ │ ├── run-v16-fasttext.sh │ │ │ ├── run-v16-ftfttalk-lower.sh │ │ │ ├── run-v16-fttalk5-lower.sh │ │ │ ├── run-v16-glove-lower-lemma.sh │ │ │ ├── run-v16-glove-lower.sh │ │ │ ├── run-v16-gloveft-lower-lemma.sh │ │ │ ├── run-v16-gloveft-lower.sh │ │ │ ├── run-v16-gloveglovetalk-lower.sh │ │ │ ├── run-v16-lexveccfttalk-lower.sh │ │ │ ├── run-v16-lm.sh │ │ │ ├── run-v3-limit1000.sh │ │ │ ├── run-v3-limit400.sh │ │ │ ├── run-v3.sh │ │ │ ├── run-v4-fasttext.sh │ │ │ ├── run-v4-limmit400.sh │ │ │ ├── run-v4.sh │ │ │ ├── run-v7.sh │ │ │ ├── run-v8.sh │ │ │ ├── run-v9-full.sh │ │ │ ├── run-v9-glovetwitter-full.sh │ │ │ ├── run-v9-glovetwitter.sh │ │ │ ├── run-v9-noparse.sh │ │ │ ├── run-v9.sh │ │ │ ├── run.sh │ │ │ ├── test-tokenize.py │ │ │ ├── test-tokenize2.py │ │ │ ├── test-tokenize3.py │ │ │ ├── test-tokenize4.py │ │ │ ├── test-tokenize5.py │ │ │ ├── tokenize-corpus.py │ │ │ ├── tokenizer-v2.py │ │ │ ├── tokenizer-v3.py │ │ │ ├── tokenizer.py │ │ │ ├── toxic_words.py │ │ │ └── white.csv │ │ ├── read-records.py │ │ └── train.py │ └── pyt/ │ └── README.md ├── tests/ │ ├── horovod/ │ │ ├── allgather.py │ │ ├── allgather2.py │ │ ├── allgather3.py │ │ ├── allgather4.py │ │ ├── allreduce.py │ │ ├── allreduce2.py │ │ ├── bcast.py │ │ ├── shards.py │ │ └── simple.py │ └── sample-balance/ │ ├── README.md │ ├── dataset.py │ └── read-records.py ├── third/ │ ├── __init__.py │ └── bert/ │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── __init__.py │ ├── create_pretraining_data.py │ ├── extract_features.py │ ├── modeling.py │ ├── modeling_test.py │ ├── multilingual.md │ ├── optimization.py │ ├── optimization_test.py │ ├── run-char.sh │ ├── run_classifier.py │ ├── run_pretraining.py │ ├── run_squad.py │ ├── tokenization.py │ └── tokenization_test.py ├── tools/ │ ├── dump-word-embedding.py │ └── show-var-of-model.py ├── utils/ │ ├── README.md │ ├── gezi/ │ │ ├── __init__.py │ │ ├── avg_score.py │ │ ├── bigdata_util.py │ │ ├── bleu.py │ │ ├── gezi_util.py │ │ ├── hash.py │ │ ├── libgezi_util.py │ │ ├── melt/ │ │ │ ├── __init__.py │ │ │ ├── logging.py │ │ │ ├── tfrecords.py │ │ │ └── util.py │ │ ├── metrics/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── bleu/ │ │ │ │ ├── LICENSE │ │ │ │ ├── __init__.py │ │ │ │ ├── bleu.py │ │ │ │ └── bleu_scorer.py │ │ │ ├── cider/ │ │ │ │ ├── __init__.py │ │ │ │ ├── cider.py │ │ │ │ └── cider_scorer.py │ │ │ ├── ciderD/ │ │ │ │ ├── __init__.py │ │ │ │ ├── ciderD.py │ │ │ │ └── ciderD_scorer.py │ │ │ ├── correlation/ │ │ │ │ ├── __init__.py │ │ │ │ └── correlation.py │ │ │ ├── eval.py │ │ │ ├── meteor/ │ │ │ │ ├── __init__.py │ │ │ │ ├── meteor-1.5.jar │ │ │ │ └── meteor.py │ │ │ ├── new_cider/ │ │ │ │ ├── __init__.py │ │ │ │ ├── cider.py │ │ │ │ └── cider_scorer.py │ │ │ ├── rouge/ │ │ │ │ ├── __init__.py │ │ │ │ └── rouge.py │ │ │ └── tokenizer/ │ │ │ ├── __init__.py │ │ │ ├── ptbtokenizer.py │ │ │ └── stanford-corenlp-3.4.1.jar │ │ ├── ngram.py │ │ ├── nowarning.py │ │ ├── pydict.py │ │ ├── rank_metrics.py │ │ ├── segment.py │ │ ├── setup.py │ │ ├── summary.py │ │ ├── test/ │ │ │ ├── test_get_single_cn.py │ │ │ └── test_ngrams.py │ │ ├── timer.py │ │ ├── topn.py │ │ ├── util.py │ │ ├── vocabulary.py │ │ ├── word_counter.py │ │ └── zhtools/ │ │ ├── __init__.py │ │ ├── chconv.py │ │ ├── langconv.py │ │ ├── test_langconv.py │ │ ├── xpinyin.py │ │ └── zh_wiki.py │ ├── lele/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── apps/ │ │ │ ├── __init__.py │ │ │ └── train.py │ │ ├── fastai/ │ │ │ ├── __init__.py │ │ │ ├── core.py │ │ │ ├── imports/ │ │ │ │ ├── __init__.py │ │ │ │ ├── core.py │ │ │ │ └── torch.py │ │ │ ├── layers.py │ │ │ ├── text/ │ │ │ │ ├── __init__.py │ │ │ │ ├── models.py │ │ │ │ └── qrnn/ │ │ │ │ ├── __init__.py │ │ │ │ ├── forget_mult.py │ │ │ │ └── qrnn.py │ │ │ └── torch_core.py │ │ ├── layers/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── classify_layer.py │ │ │ ├── elmo/ │ │ │ │ ├── __init__.py │ │ │ │ ├── classify_layer.py │ │ │ │ ├── elmo.py │ │ │ │ ├── embedding_layer.py │ │ │ │ ├── encoder_base.py │ │ │ │ ├── highway.py │ │ │ │ ├── lstm.py │ │ │ │ ├── lstm_cell_with_projection.py │ │ │ │ ├── token_embedder.py │ │ │ │ └── util.py │ │ │ ├── elmo.py │ │ │ ├── embedding_layer.py │ │ │ ├── encoder_base.py │ │ │ ├── highway.py │ │ │ ├── layers.py │ │ │ ├── lstm.py │ │ │ ├── lstm_cell_with_projection.py │ │ │ ├── token_embedder.py │ │ │ ├── transformer/ │ │ │ │ ├── __init__.py │ │ │ │ └── transformer.py │ │ │ └── util.py │ │ ├── losses/ │ │ │ ├── __init__.py │ │ │ └── losses.py │ │ ├── ops/ │ │ │ ├── __init__.py │ │ │ └── ops.py │ │ ├── training/ │ │ │ ├── __init__.py │ │ │ └── optimizers.py │ │ └── util.py │ └── melt/ │ ├── __init__.py │ ├── apps/ │ │ ├── __init__.py │ │ ├── image_processing.py │ │ ├── read.py │ │ └── train.py │ ├── cnn/ │ │ ├── __init__.py │ │ ├── cnn.py │ │ ├── conv2d.py │ │ └── qanet.py │ ├── eager/ │ │ ├── __init__.py │ │ ├── train.py │ │ └── util.py │ ├── encoder/ │ │ ├── __init__.py │ │ ├── embedding_layer.py │ │ └── transformer.py │ ├── flow/ │ │ ├── __init__.py │ │ ├── dataset_flow.py │ │ ├── flow.py │ │ ├── test.py │ │ ├── test_once.py │ │ ├── train.py │ │ └── train_once.py │ ├── image/ │ │ ├── __init__.py │ │ ├── image_decoder.py │ │ ├── image_embedding.py │ │ ├── image_model.py │ │ └── image_processing.py │ ├── inference/ │ │ ├── __init__.py │ │ ├── predictor.py │ │ └── predictor_base.py │ ├── layers/ │ │ ├── __init__.py │ │ ├── cnn/ │ │ │ ├── __init__.py │ │ │ ├── cnn.py │ │ │ ├── convnet.py │ │ │ └── qanet.py │ │ ├── layers.py │ │ ├── optimizers.py │ │ ├── rnn/ │ │ │ ├── __init__.py │ │ │ └── rnn.py │ │ └── transformer/ │ │ └── __init__.py │ ├── losses/ │ │ ├── __init__.py │ │ └── losses.py │ ├── metrics/ │ │ ├── __init__.py │ │ └── rank_metrics.py │ ├── models/ │ │ ├── __init__.py │ │ └── mlp.py │ ├── ops/ │ │ ├── __init__.py │ │ ├── nn_impl.py │ │ ├── ops.py │ │ └── sparse_ops.py │ ├── rnn/ │ │ ├── __init__.py │ │ └── rnn.py │ ├── seq2seq/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── attention_decoder_fn.py │ │ ├── attention_wrapper.py │ │ ├── basic_decoder.py │ │ ├── beam_decoder.py │ │ ├── beam_decoder_fn.py │ │ ├── beam_search.py │ │ ├── beam_search_decoder.py │ │ ├── decoder.py │ │ ├── decoder_fn.py │ │ ├── exp/ │ │ │ └── beam_decoder.py │ │ ├── helper.py │ │ ├── legacy/ │ │ │ ├── beam_decoder.py │ │ │ └── beam_search_decoder.py │ │ ├── logprobs_decoder.py │ │ ├── loss.py │ │ ├── official/ │ │ │ └── beam_search_decoder.py │ │ └── seq2seq.py │ ├── setup.py │ ├── slim2/ │ │ ├── __init__.py │ │ ├── base_nets_factory.py │ │ ├── layers.py │ │ └── preprocessing_factory.py │ ├── tfrecords/ │ │ ├── __init__.py │ │ ├── dataset.py │ │ ├── dataset_decode.py │ │ ├── decode_then_shuffle.py │ │ ├── libsvm_decode.py │ │ ├── read.py │ │ ├── shuffle_then_decode.py │ │ └── write.py │ ├── tools/ │ │ ├── count-records.py │ │ ├── delete-old-models.py │ │ ├── prepare-finetune-withhistory.py │ │ ├── prepare-finetune.py │ │ ├── rename-variables.py │ │ ├── reset-model-top-scope.py │ │ ├── show-records.py │ │ └── show-var-of-model.py │ ├── torch/ │ │ ├── __init__.py │ │ └── train.py │ ├── training/ │ │ ├── __init__.py │ │ ├── adamax.py │ │ ├── bert/ │ │ │ ├── __init__.py │ │ │ └── optimization.py │ │ ├── learning_rate_decay.py │ │ └── training.py │ ├── util.py │ ├── utils/ │ │ ├── __init__.py │ │ ├── embsim.py │ │ ├── logging.py │ │ ├── summary.py │ │ └── weight_decay.py │ └── variable/ │ ├── __init__.py │ └── variable.py └── wenzheng/ ├── __init__.py ├── embedding.py ├── encoder.py ├── pyt/ │ ├── __init__.py │ ├── embedding.py │ └── encoder.py └── utils/ ├── __init__.py ├── conf.py ├── ids2text.py ├── input_flags.py ├── rnn_flags.py ├── text2ids.py └── vocabulary.py ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitignore ================================================ *.pyc *.so *.npy *.txt *.bin *.html *checkpoint.ipynb *.swp *.crc *.jpg *.jpeg *.pdf *.vshistory .localhistory .vs .vscode ./vscode/* .vs/* model.ckpt* /data /build /dist /deepiu.egg-info /util/build /util/dist /util/hasky_utils.egg-info /examples/sparse-tensor-classification/model /examples/classification/model /examples/text-classification/model /deepiu/image_caption/inference/flickr/tf-bow-predict /scripts/log *tmphws4so /util/gezi/metrics/tokenizer/tmp* util/gezi/metrics/tokenizer/tmp* ================================================ FILE: README.md ================================================ # wenzheng Deep learning related projects using tf(eager), pytorch(fastai,allenlp) for contests like aichallenger, kaggle # ai challenger 2018 细粒度用户评论情感分类第一名(后厂村静静团队)解决方案 wenzheng/project/ai2018/sentiment[https://github.com/chenghuige/wenzheng/tree/master/projects/ai2018/sentiment] # ai challenger 2018 阅读理解解决方案(a榜 21 基于港科大rnet,mreader) wenzheng/project/ai2018/reader[https://github.com/chenghuige/wenzheng/tree/master/projects/ai2018/reader] ================================================ FILE: __init__.py ================================================ import wenzheng import third import official import projects ================================================ FILE: examples/fastai/lm/lm.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# http://docs.fast.ai/text.html\n", "from fastai.text import *\n", "import html\n", "from pathlib import Path\n", "import numpy as np\n", "import pandas as pd\n", "import sklearn\n", "from sklearn import model_selection\n", "import re\n", "from functools import partial\n", "from torch import optim" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "PosixPath('data/imdb_sample')" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IMDB_PATH = Path('./data/imdb_sample/')\n", "IMDB_PATH" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
00Explanation\\nWhy the edits made under my usern...
10D'aww! He matches this background colour I'm s...
20Hey man, I'm really not trying to edit war. It...
30\"\\nMore\\nI can't make any real suggestions on ...
40You, sir, are my hero. Any chance you remember...
\n", "
" ], "text/plain": [ " 0 1\n", "0 0 Explanation\\nWhy the edits made under my usern...\n", "1 0 D'aww! He matches this background colour I'm s...\n", "2 0 Hey man, I'm really not trying to edit war. It...\n", "3 0 \"\\nMore\\nI can't make any real suggestions on ...\n", "4 0 You, sir, are my hero. Any chance you remember..." ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv(IMDB_PATH/'train.csv', header=None)\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('negative', 'positive ')" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "classes = read_classes(IMDB_PATH/'classes.txt')\n", "classes[0], classes[1]" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "#train_ds = TextDataset.from_csv(IMDB_PATH, name='train', classes=classes)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "data_lm = text_data_from_csv(Path(IMDB_PATH), data_func=lm_data)\n", "data_clas = text_data_from_csv(Path(IMDB_PATH), data_func=classifier_data, vocab=data_lm.train_ds.vocab)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "#download_wt103_model()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "learn = RNNLearner.language_model(data_lm, pretrained_fnames=['lstm_wt103', 'itos_wt103'], drop_mult=0.5)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7dc9f9f007984489ba332496538bcdba", "version_major": 2, "version_minor": 0 }, "text/plain": [ "VBox(children=(HBox(children=(IntProgress(value=0, max=1), HTML(value='0.00% [0/1 00:00<00:00]'))), HTML(value…" ] }, "metadata": {}, "output_type": "display_data" }, { "ename": "RuntimeError", "evalue": "CUDA error: out of memory", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mlearn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit_one_cycle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m1e-2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai/train.py\u001b[0m in \u001b[0;36mfit_one_cycle\u001b[0;34m(learn, cyc_len, max_lr, moms, div_factor, pct_start, wd, **kwargs)\u001b[0m\n\u001b[1;32m 16\u001b[0m cbs = [OneCycleScheduler(learn, max_lr, moms=moms, div_factor=div_factor,\n\u001b[1;32m 17\u001b[0m pct_start=pct_start, **kwargs)]\n\u001b[0;32m---> 18\u001b[0;31m \u001b[0mlearn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcyc_len\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmax_lr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwd\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mwd\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcallbacks\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcbs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 19\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mlr_find\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlearn\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mLearner\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstart_lr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1e-5\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend_lr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m10\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnum_it\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mint\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mAny\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai/basic_train.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(self, epochs, lr, wd, callbacks)\u001b[0m\n\u001b[1;32m 131\u001b[0m \u001b[0mcallbacks\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mcb\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mcb\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcallback_fns\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mlistify\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcallbacks\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 132\u001b[0m fit(epochs, self.model, self.loss_fn, opt=self.opt, data=self.data, metrics=self.metrics,\n\u001b[0;32m--> 133\u001b[0;31m callbacks=self.callbacks+callbacks)\n\u001b[0m\u001b[1;32m 134\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 135\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mcreate_opt\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mFloats\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwd\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mFloats\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0.\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m->\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai/basic_train.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(epochs, model, loss_fn, opt, data, callbacks, metrics)\u001b[0m\n\u001b[1;32m 84\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mException\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 85\u001b[0m \u001b[0mexception\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 86\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 87\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_train_end\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mexception\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 88\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai/basic_train.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(epochs, model, loss_fn, opt, data, callbacks, metrics)\u001b[0m\n\u001b[1;32m 70\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mxb\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0myb\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mprogress_bar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtrain_dl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparent\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mpbar\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 71\u001b[0m \u001b[0mxb\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myb\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_batch_begin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxb\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myb\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 72\u001b[0;31m \u001b[0mloss\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0m_\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mloss_batch\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxb\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myb\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mloss_fn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mopt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 73\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_batch_end\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mloss\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;32mbreak\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 74\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai/basic_train.py\u001b[0m in \u001b[0;36mloss_batch\u001b[0;34m(model, xb, yb, loss_fn, opt, cb_handler, metrics)\u001b[0m\n\u001b[1;32m 28\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mopt\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0mloss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_backward_begin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mloss\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 30\u001b[0;31m \u001b[0mloss\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbackward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 31\u001b[0m \u001b[0mcb_handler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_backward_end\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 32\u001b[0m \u001b[0mopt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/tensor.py\u001b[0m in \u001b[0;36mbackward\u001b[0;34m(self, gradient, retain_graph, create_graph)\u001b[0m\n\u001b[1;32m 94\u001b[0m \u001b[0mproducts\u001b[0m\u001b[0;34m.\u001b[0m \u001b[0mDefaults\u001b[0m \u001b[0mto\u001b[0m\u001b[0;31m \u001b[0m\u001b[0;31m`\u001b[0m\u001b[0;31m`\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;31m`\u001b[0m\u001b[0;31m`\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 95\u001b[0m \"\"\"\n\u001b[0;32m---> 96\u001b[0;31m \u001b[0mtorch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mautograd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbackward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mgradient\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mretain_graph\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcreate_graph\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 97\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 98\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mregister_hook\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mhook\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/autograd/__init__.py\u001b[0m in \u001b[0;36mbackward\u001b[0;34m(tensors, grad_tensors, retain_graph, create_graph, grad_variables)\u001b[0m\n\u001b[1;32m 88\u001b[0m Variable._execution_engine.run_backward(\n\u001b[1;32m 89\u001b[0m \u001b[0mtensors\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mgrad_tensors\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mretain_graph\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcreate_graph\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 90\u001b[0;31m allow_unreachable=True) # allow_unreachable flag\n\u001b[0m\u001b[1;32m 91\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 92\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mRuntimeError\u001b[0m: CUDA error: out of memory" ] } ], "source": [ "learn.fit_one_cycle(1, 1e-2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: examples/fastai/lm/lm.py ================================================ # coding: utf-8 import melt # http://docs.fast.ai/text.html from fastai.text import * import html from pathlib import Path import numpy as np import pandas as pd import sklearn from sklearn import model_selection import re from functools import partial from torch import optim IMDB_PATH = Path('/home/gezi/data/imdb_sample/') df = pd.read_csv(IMDB_PATH/'train.csv', header=None) df.head() classes = read_classes(IMDB_PATH/'classes.txt') classes[0], classes[1] data_lm = text_data_from_csv(Path(IMDB_PATH), data_func=lm_data) data_clas = text_data_from_csv(Path(IMDB_PATH), data_func=classifier_data, vocab=data_lm.train_ds.vocab) #download_wt103_model() #learn = RNNLearner.language_model(data_lm, pretrained_fnames=['lstm_wt103', 'itos_wt103'], drop_mult=0.5) #learn.fit_one_cycle(1, 1e-2) # default bptt 70 will learn = RNNLearner.language_model(data_lm, bptt=30, pretrained_fnames=['lstm_wt103', 'itos_wt103']) learn.unfreeze() learn.fit(2, slice(1e-4,1e-2)) learn.save_encoder('enc') learn = RNNLearner.classifier(data_clas) learn.load_encoder('enc') learn.fit(3, 1e-3) ================================================ FILE: examples/pytorch/data_parallel_tutorial.py ================================================ """ Optional: Data Parallelism ========================== **Authors**: `Sung Kim `_ and `Jenny Kang `_ In this tutorial, we will learn how to use multiple GPUs using ``DataParallel``. It's very easy to use GPUs with PyTorch. You can put the model on a GPU: .. code:: python device = torch.device("cuda:0") model.to(device) Then, you can copy all your tensors to the GPU: .. code:: python mytensor = my_tensor.to(device) Please note that just calling ``my_tensor.to(device)`` returns a new copy of ``my_tensor`` on GPU instead of rewriting ``my_tensor``. You need to assign it to a new tensor and use that tensor on the GPU. It's natural to execute your forward, backward propagations on multiple GPUs. However, Pytorch will only use one GPU by default. You can easily run your operations on multiple GPUs by making your model run parallelly using ``DataParallel``: .. code:: python model = nn.DataParallel(model) That's the core behind this tutorial. We will explore it in more detail below. """ ###################################################################### # Imports and parameters # ---------------------- # # Import PyTorch modules and define parameters. # import torch import torch.nn as nn from torch.utils.data import Dataset, DataLoader # Parameters and DataLoaders input_size = 5 output_size = 2 batch_size = 30 data_size = 100 ###################################################################### # Device # device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") ###################################################################### # Dummy DataSet # ------------- # # Make a dummy (random) dataset. You just need to implement the # getitem # class RandomDataset(Dataset): def __init__(self, size, length): self.len = length self.data = torch.randn(length, size) def __getitem__(self, index): return self.data[index] def __len__(self): return self.len rand_loader = DataLoader(dataset=RandomDataset(input_size, data_size), batch_size=batch_size, shuffle=True) ###################################################################### # Simple Model # ------------ # # For the demo, our model just gets an input, performs a linear operation, and # gives an output. However, you can use ``DataParallel`` on any model (CNN, RNN, # Capsule Net etc.) # # We've placed a print statement inside the model to monitor the size of input # and output tensors. # Please pay attention to what is printed at batch rank 0. # class Model(nn.Module): # Our model def __init__(self, input_size, output_size): super(Model, self).__init__() self.fc = nn.Linear(input_size, output_size) def forward(self, input): print('input\n', input) output = self.fc(input) print("\tIn Model: input size", input.size(), "output size", output.size()) return output ###################################################################### # Create Model and DataParallel # ----------------------------- # # This is the core part of the tutorial. First, we need to make a model instance # and check if we have multiple GPUs. If we have multiple GPUs, we can wrap # our model using ``nn.DataParallel``. Then we can put our model on GPUs by # ``model.to(device)`` # model = Model(input_size, output_size) if torch.cuda.device_count() > 1: print("Let's use", torch.cuda.device_count(), "GPUs!") # dim = 0 [30, xxx] -> [10, ...], [10, ...], [10, ...] on 3 GPUs model = nn.DataParallel(model) model.to(device) ###################################################################### # Run the Model # ------------- # # Now we can see the sizes of input and output tensors. # for data in rand_loader: input = data.to(device) output = model(input) print("Outside: input size", input.size(), "output_size", output.size()) ###################################################################### # Results # ------- # # If you have no GPU or one GPU, when we batch 30 inputs and 30 outputs, the model gets 30 and outputs 30 as # expected. But if you have multiple GPUs, then you can get results like this. # # 2 GPUs # ~~~~~~ # # If you have 2, you will see: # # .. code:: bash # # # on 2 GPUs # Let's use 2 GPUs! # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) # In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) # Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) # # 3 GPUs # ~~~~~~ # # If you have 3 GPUs, you will see: # # .. code:: bash # # Let's use 3 GPUs! # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) # # 8 GPUs # ~~~~~~~~~~~~~~ # # If you have 8, you will see: # # .. code:: bash # # Let's use 8 GPUs! # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) # Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) # ###################################################################### # Summary # ------- # # DataParallel splits your data automatically and sends job orders to multiple # models on several GPUs. After each model finishes their job, DataParallel # collects and merges the results before returning it to you. # # For more information, please check out # https://pytorch.org/tutorials/beginner/former\_torchies/parallelism\_tutorial.html. # ================================================ FILE: examples/pytorch/sentiment/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-09-27 19:37:57.468263 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import torch import torch.nn as nn import torch.optim as optim import torch.nn.functional as F from torch.utils.data import Dataset, DataLoader from torch.nn.utils.rnn import pack_padded_sequence, pad_packed_sequence from torch.autograd import Variable class SimpleGRU(nn.Module): def __init__(self, vocab_size, embedding_dim, n_hidden, n_out): super().__init__() self.vocab_size,self.embedding_dim,self.n_hidden,self.n_out = vocab_size, embedding_dim, n_hidden, n_out self.emb = nn.Embedding(self.vocab_size, self.embedding_dim) self.gru = nn.GRU(self.embedding_dim, self.n_hidden) self.out = nn.Linear(self.n_hidden, self.n_out) def forward(self, seq, lengths, gpu=True): print('Sequence shape',seq.shape) print('Lengths',lengths) bs = seq.size(1) # batch size print('batch size', bs) self.h = self.init_hidden(bs, gpu) # initialize hidden state of GRU print('Inititial hidden state shape', self.h.shape) embs = self.emb(seq) embs = pack_padded_sequence(embs, lengths) # unpad gru_out, self.h = self.gru(embs, self.h) # gru returns hidden state of all timesteps as well as hidden state at last timestep gru_out, lengths = pad_packed_sequence(gru_out) # pad the sequence to the max length in the batch print('GRU output(all timesteps)', gru_out.shape) print(gru_out) print('GRU last timestep output') print(gru_out[-1]) print('Last hidden state', self.h) # since it is as classification problem, we will grab the last hidden state outp = self.out(self.h[-1]) # self.h[-1] contains hidden state of last timestep return F.log_softmax(outp, dim=-1) def init_hidden(self, batch_size, gpu): if gpu: return Variable(torch.zeros((1,batch_size,self.n_hidden)).cuda()) else: return Variable(torch.zeros((1,batch_size,self.n_hidden))) ================================================ FILE: examples/pytorch/sentiment/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-09-27 19:37:53.455830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pathlib import random from collections import Counter, OrderedDict import numpy as np import pandas as pd import spacy from tqdm import tqdm, tnrange from model import * nlp = spacy.blank('en') data_root = pathlib.Path('./data') df = pd.read_csv(data_root/'Sentiment Analysis Dataset.csv', error_bad_lines=False) df['SentimentText'] = df.SentimentText.apply(lambda x: x.strip()) words = Counter() for sent in tqdm(df.SentimentText.values, ascii=True): words.update(w.text.lower() for w in nlp(sent)) words = sorted(words, key=words.get, reverse=True) words = ['_PAD','_UNK'] + words word2idx = {o:i for i,o in enumerate(words)} idx2word = {i:o for i,o in enumerate(words)} def indexer(s): return [word2idx[w.text.lower()] for w in nlp(s)] df['sentimentidx'] = df.SentimentText.apply(indexer) df['lengths'] = df.sentimentidx.apply(len) class VectorizeData(Dataset): def __init__(self, df_path, maxlen=10): self.maxlen = maxlen self.df = pd.read_csv(df_path, error_bad_lines=False) self.df['SentimentText'] = self.df.SentimentText.apply(lambda x: x.strip()) print('Indexing...') self.df['sentimentidx'] = self.df.SentimentText.apply(indexer) print('Calculating lengths') self.df['lengths'] = self.df.sentimentidx.apply(lambda x: self.maxlen if len(x) > self.maxlen else len(x)) print('Padding') self.df['sentimentpadded'] = self.df.sentimentidx.apply(self.pad_data) def __len__(self): return self.df.shape[0] def __getitem__(self, idx): X = self.df.sentimentpadded[idx] lens = self.df.lengths[idx] y = self.df.Sentiment[idx] return X,y,lens def pad_data(self, s): padded = np.zeros((self.maxlen,), dtype=np.int64) if len(s) > self.maxlen: padded[:] = s[:self.maxlen] else: padded[:len(s)] = s return padded ds = VectorizeData(data_root/'Sentiment Analysis Dataset.csv') vocab_size = len(words) embedding_dim = 4 n_hidden = 5 n_out = 2 m = SimpleGRU(vocab_size, embedding_dim, n_hidden, n_out) def sort_batch(X, y, lengths): lengths, indx = lengths.sort(dim=0, descending=True) X = X[indx] y = y[indx] return X.transpose(0,1), y, lengths # transpose (batch x seq) to (seq x batch) def fit(model, train_dl, val_dl, loss_fn, opt, epochs=3): num_batch = len(train_dl) for epoch in tnrange(epochs): y_true_train = list() y_pred_train = list() total_loss_train = 0 if val_dl: y_true_val = list() y_pred_val = list() total_loss_val = 0 t = tqdm(iter(train_dl), leave=False, total=num_batch, ascii=True) for X,y, lengths in t: t.set_description(f'Epoch {epoch}') X,y,lengths = sort_batch(X,y,lengths) X = Variable(X.cuda()) y = Variable(y.cuda()) lengths = lengths.numpy() opt.zero_grad() pred = model(X, lengths, gpu=True) loss = loss_fn(pred, y) loss.backward() opt.step() t.set_postfix(loss=loss.data[0]) pred_idx = torch.max(pred, dim=1)[1] y_true_train += list(y.cpu().data.numpy()) y_pred_train += list(pred_idx.cpu().data.numpy()) total_loss_train += loss.data[0] train_acc = accuracy_score(y_true_train, y_pred_train) train_loss = total_loss_train/len(train_dl) print(f' Epoch {epoch}: Train loss: {train_loss} acc: {train_acc}') if val_dl: for X,y,lengths in tqdm(valdl, leave=False, ascii=True): X, y,lengths = sort_batch(X,y,lengths) X = Variable(X.cuda()) y = Variable(y.cuda()) pred = model(X, lengths.numpy()) loss = loss_fn(pred, y) pred_idx = torch.max(pred, 1)[1] y_true_val += list(y.cpu().data.numpy()) y_pred_val += list(pred_idx.cpu().data.numpy()) total_loss_val += loss.data[0] valacc = accuracy_score(y_true_val, y_pred_val) valloss = total_loss_val/len(valdl) print(f'Val loss: {valloss} acc: {valacc}') train_dl = DataLoader(ds, batch_size=512) m = SimpleGRU(vocab_size, embedding_dim, n_hidden, n_out).cuda() opt = optim.Adam(m.parameters(), 1e-2) fit(model=m, train_dl=train_dl, val_dl=None, loss_fn=F.nll_loss, opt=opt, epochs=4) def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: examples/shap/explainer_1.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file explainer_1.py # \author chenghuige # \date 2019-08-02 22:12:47.710013 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import seaborn as sns import keras import shap #let's load the diamonds dataset df=sns.load_dataset(name='diamonds') print(df.head()) print(df.describe()) ================================================ FILE: examples/tf/eager/dynamic_dense.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dynamic_dense.py # \author chenghuige # \date 2018-09-12 10:53:31.858019 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf tfe = tf.contrib.eager tf.enable_eager_execution() keras = tf.keras class Layer(keras.layers.Layer): def __init__(self): super(Layer, self).__init__() self.abc = self.add_variable("abc", [1, 3], initializer=tf.ones_initializer(dtype=tf.float32)) def call(self, x): result = x + self.abc self.abc = self.abc * 5 return result class Model(keras.Model): def __init__(self): super(Model, self).__init__() #self.abc = self.add_variable("abc", [1, 3], initializer=tf.ones_initializer(dtype=tf.float32)) #self.encode = keras.layers.Dense(5, activation=None) self.abc = tfe.Variable(tf.ones([1, 3], dtype=tf.float32), name='abc') #self.abc = self.abc * 5 #self.abc = Layer() self.inited = False def call(self, x): if not self.inited: self.inited = True print(tf.shape(x)[-1]) self.fc = keras.layers.Dense(tf.shape(x)[-1], activation=None) print(x) return self.fc(x) #return self.encode(x + self.abc) #result = x + self.abc #self.abc = self.abc * 5 #return result #return self.abc(x) model = Model() print(model(tf.constant([[1., 2., 3.]]))) #print(model.abc) #m.save_weights('/home/gezi/tmp/model') checkpoint = tf.train.Checkpoint(model=model) ckpt_dir = '/home/gezi/tmp/model' # latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) # checkpoint.restore(latest_checkpoint) # print(model([[1., 2., 3.]])) checkpoint_prefix = os.path.join(ckpt_dir, 'ckpt') checkpoint.save(checkpoint_prefix) #model.abc = model.abc + 1. #checkpoint.save(checkpoint_prefix) #model.abc -= 1. # latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) # checkpoint.restore(latest_checkpoint) # print(model([[1., 2., 3.]])) ================================================ FILE: examples/tf/eager/rnn_ptb.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Penn Treebank RNN model definition compatible with eager execution. Model similar to https://github.com/tensorflow/models/tree/master/tutorials/rnn/ptb Usage: python ./rnn_ptb.py --data-path= Penn Treebank (PTB) dataset from: http://www.fit.vutbr.cz/~imikolov/rnnlm/simple-examples.tgz """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import sys import time import numpy as np import tensorflow as tf from tensorflow.contrib.cudnn_rnn.python.layers import cudnn_rnn from tensorflow.contrib.eager.python import tfe layers = tf.keras.layers class RNN(tf.keras.Model): """A static RNN. Similar to tf.nn.static_rnn, implemented as a class. """ def __init__(self, hidden_dim, num_layers, keep_ratio): super(RNN, self).__init__() self.keep_ratio = keep_ratio self.cells = tf.contrib.checkpoint.List([ tf.nn.rnn_cell.BasicLSTMCell(num_units=hidden_dim) for _ in range(num_layers) ]) def call(self, input_seq, training): batch_size = int(input_seq.shape[1]) for c in self.cells: state = c.zero_state(batch_size, tf.float32) outputs = [] input_seq = tf.unstack(input_seq, num=int(input_seq.shape[0]), axis=0) for inp in input_seq: output, state = c(inp, state) outputs.append(output) input_seq = tf.stack(outputs, axis=0) if training: input_seq = tf.nn.dropout(input_seq, self.keep_ratio) # Returning a list instead of a single tensor so that the line: # y = self.rnn(y, ...)[0] # in PTBModel.call works for both this RNN and CudnnLSTM (which returns a # tuple (output, output_states). return [input_seq] class Embedding(layers.Layer): """An Embedding layer.""" def __init__(self, vocab_size, embedding_dim, **kwargs): super(Embedding, self).__init__(**kwargs) self.vocab_size = vocab_size self.embedding_dim = embedding_dim def build(self, _): self.embedding = self.add_variable( "embedding_kernel", shape=[self.vocab_size, self.embedding_dim], dtype=tf.float32, initializer=tf.random_uniform_initializer(-0.1, 0.1), trainable=True) def call(self, x): return tf.nn.embedding_lookup(self.embedding, x) # pylint: disable=not-callable class PTBModel(tf.keras.Model): """LSTM for word language modeling. Model described in: (Zaremba, et. al.) Recurrent Neural Network Regularization http://arxiv.org/abs/1409.2329 See also: https://github.com/tensorflow/models/tree/master/tutorials/rnn/ptb """ def __init__(self, vocab_size, embedding_dim, hidden_dim, num_layers, dropout_ratio, use_cudnn_rnn=True): super(PTBModel, self).__init__() self.keep_ratio = 1 - dropout_ratio self.use_cudnn_rnn = use_cudnn_rnn self.embedding = Embedding(vocab_size, embedding_dim) if self.use_cudnn_rnn: self.rnn = cudnn_rnn.CudnnLSTM( num_layers, hidden_dim, dropout=dropout_ratio) else: self.rnn = RNN(hidden_dim, num_layers, self.keep_ratio) print('rnn:', self.rnn) self.linear = layers.Dense( vocab_size, kernel_initializer=tf.random_uniform_initializer(-0.1, 0.1)) self._output_shape = [-1, embedding_dim] def call(self, input_seq, training): """Run the forward pass of PTBModel. Args: input_seq: [length, batch] shape int64 tensor. training: Is this a training call. Returns: outputs tensors of inference. """ y = self.embedding(input_seq) if training: y = tf.nn.dropout(y, self.keep_ratio) y = self.rnn(y, training=training)[0] return self.linear(tf.reshape(y, self._output_shape)) def clip_gradients(grads_and_vars, clip_ratio): gradients, variables = zip(*grads_and_vars) clipped, _ = tf.clip_by_global_norm(gradients, clip_ratio) return zip(clipped, variables) def loss_fn(model, inputs, targets, training): labels = tf.reshape(targets, [-1]) outputs = model(inputs, training=training) return tf.reduce_mean( tf.nn.sparse_softmax_cross_entropy_with_logits( labels=labels, logits=outputs)) def _divide_into_batches(data, batch_size): """Convert a sequence to a batch of sequences.""" nbatch = data.shape[0] // batch_size data = data[:nbatch * batch_size] data = data.reshape(batch_size, -1).transpose() return data def _get_batch(data, i, seq_len): slen = min(seq_len, data.shape[0] - 1 - i) inputs = data[i:i + slen, :] target = data[i + 1:i + 1 + slen, :] return tf.constant(inputs), tf.constant(target) def evaluate(model, data): """evaluate an epoch.""" total_loss = 0.0 total_batches = 0 start = time.time() for _, i in enumerate(range(0, data.shape[0] - 1, FLAGS.seq_len)): inp, target = _get_batch(data, i, FLAGS.seq_len) loss = loss_fn(model, inp, target, training=False) total_loss += loss.numpy() total_batches += 1 time_in_ms = (time.time() - start) * 1000 sys.stderr.write("eval loss %.2f (eval took %d ms)\n" % (total_loss / total_batches, time_in_ms)) return total_loss def train(model, optimizer, train_data, sequence_length, clip_ratio): """training an epoch.""" def model_loss(inputs, targets): return loss_fn(model, inputs, targets, training=True) grads = tfe.implicit_gradients(model_loss) total_time = 0 for batch, i in enumerate(range(0, train_data.shape[0] - 1, sequence_length)): train_seq, train_target = _get_batch(train_data, i, sequence_length) start = time.time() optimizer.apply_gradients( clip_gradients(grads(train_seq, train_target), clip_ratio)) total_time += (time.time() - start) if batch % 10 == 0: time_in_ms = (total_time * 1000) / (batch + 1) sys.stderr.write("batch %d: training loss %.2f, avg step time %d ms\n" % (batch, model_loss(train_seq, train_target).numpy(), time_in_ms)) class Datasets(object): """Processed form of the Penn Treebank dataset.""" def __init__(self, path): """Load the Penn Treebank dataset. Args: path: Path to the data/ directory of the dataset from Tomas Mikolov's webpage - http://www.fit.vutbr.cz/~imikolov/rnnlm/simple-examples.tgz """ self.word2idx = {} # string -> integer id self.idx2word = [] # integer id -> word string # Files represented as a list of integer ids (as opposed to list of string # words). self.train = self.tokenize(os.path.join(path, "ptb.train.txt")) self.valid = self.tokenize(os.path.join(path, "ptb.valid.txt")) def vocab_size(self): return len(self.idx2word) def add(self, word): if word not in self.word2idx: self.idx2word.append(word) self.word2idx[word] = len(self.idx2word) - 1 def tokenize(self, path): """Read text file in path and return a list of integer token ids.""" tokens = 0 with tf.gfile.Open(path, "r") as f: for line in f: words = line.split() + [""] tokens += len(words) for word in words: self.add(word) # Tokenize file content with tf.gfile.Open(path, "r") as f: ids = np.zeros(tokens).astype(np.int64) token = 0 for line in f: words = line.split() + [""] for word in words: ids[token] = self.word2idx[word] token += 1 return ids def small_model(use_cudnn_rnn): """Returns a PTBModel with a 'small' configuration.""" return PTBModel( vocab_size=10000, embedding_dim=200, hidden_dim=200, num_layers=2, dropout_ratio=0., use_cudnn_rnn=use_cudnn_rnn) def large_model(use_cudnn_rnn): """Returns a PTBModel with a 'large' configuration.""" return PTBModel( vocab_size=10000, embedding_dim=650, hidden_dim=650, num_layers=2, dropout_ratio=0.5, use_cudnn_rnn=use_cudnn_rnn) def test_model(use_cudnn_rnn): """Returns a tiny PTBModel for unit tests.""" return PTBModel( vocab_size=100, embedding_dim=20, hidden_dim=20, num_layers=2, dropout_ratio=0., use_cudnn_rnn=use_cudnn_rnn) def main(_): tf.enable_eager_execution() if not FLAGS.data_path: raise ValueError("Must specify --data-path") corpus = Datasets(FLAGS.data_path) train_data = _divide_into_batches(corpus.train, FLAGS.batch_size) eval_data = _divide_into_batches(corpus.valid, 10) have_gpu = tfe.num_gpus() > 0 use_cudnn_rnn = not FLAGS.no_use_cudnn_rnn and have_gpu with tf.device("/device:GPU:0" if have_gpu else None): # Make learning_rate a Variable so it can be included in the checkpoint # and we can resume training with the last saved learning_rate. learning_rate = tfe.Variable(20.0, name="learning_rate") model = PTBModel(corpus.vocab_size(), FLAGS.embedding_dim, FLAGS.hidden_dim, FLAGS.num_layers, FLAGS.dropout, use_cudnn_rnn) optimizer = tf.train.GradientDescentOptimizer(learning_rate) checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, model=model, # GradientDescentOptimizer has no state to checkpoint, but noting it # here lets us swap in an optimizer that does. optimizer=optimizer) # Restore existing variables now (learning_rate), and restore new variables # on creation if a checkpoint exists. checkpoint.restore(tf.train.latest_checkpoint(FLAGS.logdir)) sys.stderr.write("learning_rate=%f\n" % learning_rate.numpy()) best_loss = None for _ in range(FLAGS.epoch): train(model, optimizer, train_data, FLAGS.seq_len, FLAGS.clip) eval_loss = evaluate(model, eval_data) if not best_loss or eval_loss < best_loss: if FLAGS.logdir: checkpoint.save(os.path.join(FLAGS.logdir, "ckpt")) best_loss = eval_loss else: learning_rate.assign(learning_rate / 4.0) sys.stderr.write("eval_loss did not reduce in this epoch, " "changing learning rate to %f for the next epoch\n" % learning_rate.numpy()) if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument( "--data-path", type=str, default="", help="Data directory of the Penn Treebank dataset from " "http://www.fit.vutbr.cz/~imikolov/rnnlm/simple-examples.tgz") parser.add_argument( "--logdir", type=str, default="", help="Directory for checkpoint.") parser.add_argument("--epoch", type=int, default=20, help="Number of epochs.") parser.add_argument("--batch-size", type=int, default=20, help="Batch size.") parser.add_argument( "--seq-len", type=int, default=35, help="Sequence length.") parser.add_argument( "--embedding-dim", type=int, default=200, help="Embedding dimension.") parser.add_argument( "--hidden-dim", type=int, default=200, help="Hidden layer dimension.") parser.add_argument( "--num-layers", type=int, default=2, help="Number of RNN layers.") parser.add_argument( "--dropout", type=float, default=0.2, help="Drop out ratio.") parser.add_argument( "--clip", type=float, default=0.25, help="Gradient clipping ratio.") parser.add_argument( "--no-use-cudnn-rnn", action="store_true", default=False, help="Disable the fast CuDNN RNN (when no gpu)") FLAGS, unparsed = parser.parse_known_args() tf.app.run(main=main, argv=[sys.argv[0]] + unparsed) ================================================ FILE: examples/tf/eager/rnn_ptb.sh ================================================ python rnn_ptb.py --data-path /home/gezi/data/ptb/simple-examples/data ================================================ FILE: jupyter/Untitled.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import torch " ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "tensorflow_version: 1.14.0\n", "torch_version: 1.1.0\n", "WARNING: Logging before flag parsing goes to stderr.\n", "W0804 13:14:34.019139 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/utils/melt/training/bert/optimization.py:72: The name tf.train.Optimizer is deprecated. Please use tf.compat.v1.train.Optimizer instead.\n", "\n", "W0804 13:14:35.313520 139721067423552 lazy_loader.py:50] \n", "The TensorFlow contrib module will not be included in TensorFlow 2.0.\n", "For more information, please see:\n", " * https://github.com/tensorflow/community/blob/master/rfcs/20180907-contrib-sunset.md\n", " * https://github.com/tensorflow/addons\n", " * https://github.com/tensorflow/io (for I/O related ops)\n", "If you depend on functionality not listed there, please file an issue.\n", "\n", "W0804 13:14:35.325613 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/utils/melt/util.py:297: The name tf.train.GradientDescentOptimizer is deprecated. Please use tf.compat.v1.train.GradientDescentOptimizer instead.\n", "\n", "W0804 13:14:35.326145 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/utils/melt/util.py:299: The name tf.train.AdagradOptimizer is deprecated. Please use tf.compat.v1.train.AdagradOptimizer instead.\n", "\n", "W0804 13:14:35.326648 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/utils/melt/util.py:314: The name tf.train.FtrlOptimizer is deprecated. Please use tf.compat.v1.train.FtrlOptimizer instead.\n", "\n", "Traceback (most recent call last):\n", " File \"/search/odin/chenghuige/mine/wenzheng/utils/melt/apps/train.py\", line 61, in \n", " import horovod.tensorflow as hvd\n", "ModuleNotFoundError: No module named 'horovod'\n", "\n", "W0804 13:14:35.357142 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/official/transformer/model/attention_layer.py:24: The name tf.layers.Layer is deprecated. Please use tf.compat.v1.layers.Layer instead.\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "---------no horovod support for mutliple gpu, notice we use mpi4py for some allgather op for eval\n" ] } ], "source": [ "import melt" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import tensorflow as tf" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "W0804 13:14:36.755970 139721067423552 deprecation_wrapper.py:119] From /search/odin/chenghuige/mine/wenzheng/utils/melt/util.py:335: The name tf.ConfigProto is deprecated. Please use tf.compat.v1.ConfigProto instead.\n", "\n" ] }, { "ename": "UnrecognizedFlagError", "evalue": "Unknown command line flag 'f'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mUnrecognizedFlagError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0msess\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmelt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_session\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m/search/odin/chenghuige/mine/wenzheng/utils/melt/util.py\u001b[0m in \u001b[0;36mget_session\u001b[0;34m(log_device_placement, allow_soft_placement, debug, device_count)\u001b[0m\n\u001b[1;32m 350\u001b[0m \u001b[0;31m#config.operation_timeout_in_ms=50000 # terminate on long hangs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 351\u001b[0m \u001b[0;31m#https://github.com/tensorflow/tensorflow/issues/2292 allow_soft_placement=True\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 352\u001b[0;31m \u001b[0;32mif\u001b[0m \u001b[0mFLAGS\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0muse_tpu\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 353\u001b[0m \u001b[0mtpu_cluster_resolver\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 354\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mFLAGS\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0muse_tpu\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mFLAGS\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtpu_name\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/home/gezi/env/anaconda3/lib/python3.7/site-packages/tensorflow/python/platform/flags.py\u001b[0m in \u001b[0;36m__getattr__\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 82\u001b[0m \u001b[0;31m# a flag.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 83\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mwrapped\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_parsed\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 84\u001b[0;31m \u001b[0mwrapped\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0m_sys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margv\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 85\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mwrapped\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattr__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 86\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/home/gezi/env/anaconda3/lib/python3.7/site-packages/absl/flags/_flagvalues.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, argv, known_only)\u001b[0m\n\u001b[1;32m 631\u001b[0m \u001b[0msuggestions\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_helpers\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_flag_suggestions\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlist\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 632\u001b[0m raise _exceptions.UnrecognizedFlagError(\n\u001b[0;32m--> 633\u001b[0;31m name, value, suggestions=suggestions)\n\u001b[0m\u001b[1;32m 634\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 635\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmark_as_parsed\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mUnrecognizedFlagError\u001b[0m: Unknown command line flag 'f'" ] } ], "source": [ "sess = melt.get_session()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "sess = tf.Session()" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import gezi" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\u001b[0;31mInit signature:\u001b[0m \u001b[0mgezi\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mAvgScore\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mDocstring:\u001b[0m \n", "Calcuatlate avg scores, input can be single value or list\n", "Not using numpy, so may be much slower then numpy version, now mainly used for tensorflow testers\n", "\u001b[0;31mFile:\u001b[0m /search/odin/chenghuige/mine/wenzheng/utils/gezi/avg_score.py\n", "\u001b[0;31mType:\u001b[0m type\n", "\u001b[0;31mSubclasses:\u001b[0m \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "gezi.AvgScore?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.3" } }, "nbformat": 4, "nbformat_minor": 4 } ================================================ FILE: official/.gitignore ================================================ MNIST-data labels.txt ================================================ FILE: official/Dockerfile.cpu ================================================ # Docker image for running examples in Tensorflow models. # base_image depends on whether we are running on GPUs or non-GPUs FROM ubuntu:latest RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ build-essential \ git \ python \ python-pip \ python-setuptools RUN pip install tf-nightly # Checkout tensorflow/models at HEAD RUN git clone https://github.com/tensorflow/models.git /tensorflow_models ================================================ FILE: official/Dockerfile.gpu ================================================ # Docker image for running examples in Tensorflow models. # base_image depends on whether we are running on GPUs or non-GPUs FROM nvidia/cuda:9.0-cudnn7-runtime-ubuntu16.04 RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ build-essential \ git \ python \ python-pip \ python-setuptools RUN pip install tf-nightly-gpu # Checkout tensorflow/models at HEAD RUN git clone https://github.com/tensorflow/models.git /tensorflow_models ================================================ FILE: official/README.md ================================================ # TensorFlow Official Models The TensorFlow official models are a collection of example models that use TensorFlow's high-level APIs. They are intended to be well-maintained, tested, and kept up to date with the latest TensorFlow API. They should also be reasonably optimized for fast performance while still being easy to read. The master branch of the models are **in development**, and they target the [nightly binaries](https://github.com/tensorflow/tensorflow#installation) built from the [master branch of TensorFlow](https://github.com/tensorflow/tensorflow/tree/master). We aim to keep them backwards compatible with the latest release when possible (currently TensorFlow 1.5), but we cannot always guarantee compatibility. **Stable versions** of the official models targeting releases of TensorFlow are available as tagged branches or [downloadable releases](https://github.com/tensorflow/models/releases). Model repository version numbers match the target TensorFlow release, such that [branch r1.4.0](https://github.com/tensorflow/models/tree/r1.4.0) and [release v1.4.0](https://github.com/tensorflow/models/releases/tag/v1.4.0) are compatible with [TensorFlow v1.4.0](https://github.com/tensorflow/tensorflow/releases/tag/v1.4.0). If you are on a version of TensorFlow earlier than 1.4, please [update your installation](https://www.tensorflow.org/install/). --- Below is a list of the models available. [boosted_trees](boosted_trees): A Gradient Boosted Trees model to classify higgs boson process from HIGGS Data Set. [mnist](mnist): A basic model to classify digits from the MNIST dataset. [resnet](resnet): A deep residual network that can be used to classify both CIFAR-10 and ImageNet's dataset of 1000 classes. [wide_deep](wide_deep): A model that combines a wide model and deep network to classify census income data. More models to come! If you would like to make any fixes or improvements to the models, please [submit a pull request](https://github.com/tensorflow/models/compare). --- ## Running the models The *Official Models* are made available as a Python module. To run the models and associated scripts, add the top-level ***/models*** folder to the Python path with the command: `export PYTHONPATH="$PYTHONPATH:/path/to/models"` To install dependencies pass `-r official/requirements.txt` to pip. (i.e. `pip3 install --user -r official/requirements.txt`) To make Official Models easier to use, we are planning to create a pip installable Official Models package. This is being tracked in [#917](https://github.com/tensorflow/models/issues/917). ================================================ FILE: official/__init__.py ================================================ ================================================ FILE: official/benchmark/__init__.py ================================================ ================================================ FILE: official/benchmark/benchmark_uploader.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Library to upload benchmark generated by BenchmarkLogger to remote repo. This library require google cloud bigquery lib as dependency, which can be installed with: > pip install --upgrade google-cloud-bigquery """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import json from google.cloud import bigquery import tensorflow as tf class BigQueryUploader(object): """Upload the benchmark and metric info from JSON input to BigQuery. """ def __init__(self, gcp_project=None, credentials=None): """Initialized BigQueryUploader with proper setting. Args: gcp_project: string, the name of the GCP project that the log will be uploaded to. The default project name will be detected from local environment if no value is provided. credentials: google.auth.credentials. The credential to access the BigQuery service. The default service account credential will be detected from local environment if no value is provided. Please use google.oauth2.service_account.Credentials to load credential from local file for the case that the test is run out side of GCP. """ self._bq_client = bigquery.Client( project=gcp_project, credentials=credentials) def upload_benchmark_run_json( self, dataset_name, table_name, run_id, run_json): """Upload benchmark run information to Bigquery. Args: dataset_name: string, the name of bigquery dataset where the data will be uploaded. table_name: string, the name of bigquery table under the dataset where the data will be uploaded. run_id: string, a unique ID that will be attached to the data, usually this is a UUID4 format. run_json: dict, the JSON data that contains the benchmark run info. """ run_json["model_id"] = run_id self._upload_json(dataset_name, table_name, [run_json]) def upload_benchmark_metric_json( self, dataset_name, table_name, run_id, metric_json_list): """Upload metric information to Bigquery. Args: dataset_name: string, the name of bigquery dataset where the data will be uploaded. table_name: string, the name of bigquery table under the dataset where the metric data will be uploaded. This is different from the benchmark_run table. run_id: string, a unique ID that will be attached to the data, usually this is a UUID4 format. This should be the same as the benchmark run_id. metric_json_list: list, a list of JSON object that record the metric info. """ for m in metric_json_list: m["run_id"] = run_id self._upload_json(dataset_name, table_name, metric_json_list) def upload_benchmark_run_file( self, dataset_name, table_name, run_id, run_json_file): """Upload benchmark run information to Bigquery from input json file. Args: dataset_name: string, the name of bigquery dataset where the data will be uploaded. table_name: string, the name of bigquery table under the dataset where the data will be uploaded. run_id: string, a unique ID that will be attached to the data, usually this is a UUID4 format. run_json_file: string, the file path that contains the run JSON data. """ with tf.gfile.GFile(run_json_file) as f: benchmark_json = json.load(f) self.upload_benchmark_run_json( dataset_name, table_name, run_id, benchmark_json) def upload_metric_file( self, dataset_name, table_name, run_id, metric_json_file): """Upload metric information to Bigquery from input json file. Args: dataset_name: string, the name of bigquery dataset where the data will be uploaded. table_name: string, the name of bigquery table under the dataset where the metric data will be uploaded. This is different from the benchmark_run table. run_id: string, a unique ID that will be attached to the data, usually this is a UUID4 format. This should be the same as the benchmark run_id. metric_json_file: string, the file path that contains the metric JSON data. """ with tf.gfile.GFile(metric_json_file) as f: metrics = [] for line in f: metrics.append(json.loads(line.strip())) self.upload_benchmark_metric_json( dataset_name, table_name, run_id, metrics) def _upload_json(self, dataset_name, table_name, json_list): # Find the unique table reference based on dataset and table name, so that # the data can be inserted to it. table_ref = self._bq_client.dataset(dataset_name).table(table_name) errors = self._bq_client.insert_rows_json(table_ref, json_list) if errors: tf.logging.error( "Failed to upload benchmark info to bigquery: {}".format(errors)) ================================================ FILE: official/benchmark/benchmark_uploader_main.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Binary to upload benchmark generated by BenchmarkLogger to remote repo. This library require google cloud bigquery lib as dependency, which can be installed with: > pip install --upgrade google-cloud-bigquery """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import sys import uuid from absl import app as absl_app from absl import flags from official.benchmark import benchmark_uploader from official.utils.flags import core as flags_core from official.utils.logs import logger def main(_): if not flags.FLAGS.benchmark_log_dir: print("Usage: benchmark_uploader.py --benchmark_log_dir=/some/dir") sys.exit(1) uploader = benchmark_uploader.BigQueryUploader( gcp_project=flags.FLAGS.gcp_project) run_id = str(uuid.uuid4()) run_json_file = os.path.join( flags.FLAGS.benchmark_log_dir, logger.BENCHMARK_RUN_LOG_FILE_NAME) metric_json_file = os.path.join( flags.FLAGS.benchmark_log_dir, logger.METRIC_LOG_FILE_NAME) uploader.upload_benchmark_run_file( flags.FLAGS.bigquery_data_set, flags.FLAGS.bigquery_run_table, run_id, run_json_file) uploader.upload_metric_file( flags.FLAGS.bigquery_data_set, flags.FLAGS.bigquery_metric_table, run_id, metric_json_file) if __name__ == "__main__": flags_core.define_benchmark() flags.adopt_module_key_flags(flags_core) absl_app.run(main=main) ================================================ FILE: official/benchmark/benchmark_uploader_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for benchmark_uploader.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import json import os import tempfile import unittest from mock import MagicMock from mock import patch import tensorflow as tf # pylint: disable=g-bad-import-order try: from google.cloud import bigquery from official.benchmark import benchmark_uploader except ImportError: bigquery = None benchmark_uploader = None @unittest.skipIf(bigquery is None, 'Bigquery dependency is not installed.') class BigQueryUploaderTest(tf.test.TestCase): @patch.object(bigquery, 'Client') def setUp(self, mock_bigquery): self.mock_client = mock_bigquery.return_value self.mock_dataset = MagicMock(name="dataset") self.mock_table = MagicMock(name="table") self.mock_client.dataset.return_value = self.mock_dataset self.mock_dataset.table.return_value = self.mock_table self.mock_client.insert_rows_json.return_value = [] self.benchmark_uploader = benchmark_uploader.BigQueryUploader() self.benchmark_uploader._bq_client = self.mock_client self.log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) with open(os.path.join(self.log_dir, 'metric.log'), 'a') as f: json.dump({'name': 'accuracy', 'value': 1.0}, f) f.write("\n") json.dump({'name': 'loss', 'value': 0.5}, f) f.write("\n") with open(os.path.join(self.log_dir, 'run.log'), 'w') as f: json.dump({'model_name': 'value'}, f) def tearDown(self): tf.gfile.DeleteRecursively(self.get_temp_dir()) def test_upload_benchmark_run_json(self): self.benchmark_uploader.upload_benchmark_run_json( 'dataset', 'table', 'run_id', {'model_name': 'value'}) self.mock_client.insert_rows_json.assert_called_once_with( self.mock_table, [{'model_name': 'value', 'model_id': 'run_id'}]) def test_upload_benchmark_metric_json(self): metric_json_list = [ {'name': 'accuracy', 'value': 1.0}, {'name': 'loss', 'value': 0.5} ] expected_params = [ {'run_id': 'run_id', 'name': 'accuracy', 'value': 1.0}, {'run_id': 'run_id', 'name': 'loss', 'value': 0.5} ] self.benchmark_uploader.upload_benchmark_metric_json( 'dataset', 'table', 'run_id', metric_json_list) self.mock_client.insert_rows_json.assert_called_once_with( self.mock_table, expected_params) def test_upload_benchmark_run_file(self): self.benchmark_uploader.upload_benchmark_run_file( 'dataset', 'table', 'run_id', os.path.join(self.log_dir, 'run.log')) self.mock_client.insert_rows_json.assert_called_once_with( self.mock_table, [{'model_name': 'value', 'model_id': 'run_id'}]) def test_upload_metric_file(self): self.benchmark_uploader.upload_metric_file( 'dataset', 'table', 'run_id', os.path.join(self.log_dir, 'metric.log')) expected_params = [ {'run_id': 'run_id', 'name': 'accuracy', 'value': 1.0}, {'run_id': 'run_id', 'name': 'loss', 'value': 0.5} ] self.mock_client.insert_rows_json.assert_called_once_with( self.mock_table, expected_params) if __name__ == '__main__': tf.test.main() ================================================ FILE: official/benchmark/datastore/schema/benchmark_metric.json ================================================ [ { "description": "The ID of the benchmark run, where this metric should tie to.", "mode": "REQUIRED", "name": "run_id", "type": "STRING" }, { "description": "The name of the metric, which should be descriptive. E.g. training_loss, accuracy.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The unit of the metric. E.g. MB per sec.", "mode": "NULLABLE", "name": "unit", "type": "STRING" }, { "description": "The value of the metric.", "mode": "NULLABLE", "name": "value", "type": "FLOAT" }, { "description": "The timestamp when the metric is recorded.", "mode": "REQUIRED", "name": "timestamp", "type": "TIMESTAMP" }, { "description": "The global step when this metric is recorded.", "mode": "NULLABLE", "name": "global_step", "type": "INTEGER" }, { "description": "Free format metadata for the extra information about the metric.", "mode": "REPEATED", "name": "extras", "type": "RECORD", "fields": [ { "mode": "NULLABLE", "name": "name", "type": "STRING" }, { "mode": "NULLABLE", "name": "value", "type": "STRING" } ] } ] ================================================ FILE: official/benchmark/datastore/schema/benchmark_run.json ================================================ [ { "description": "The UUID of the run for the benchmark.", "mode": "REQUIRED", "name": "model_id", "type": "STRING" }, { "description": "The status of the run for the benchmark. Eg, running, failed, success", "mode": "NULLABLE", "name": "status", "type": "STRING" }, { "description": "The name of the model, E.g ResNet50, LeNet-5 etc.", "mode": "REQUIRED", "name": "model_name", "type": "STRING" }, { "description": "The date when the test of the model is started", "mode": "REQUIRED", "name": "run_date", "type": "TIMESTAMP" }, { "description": "The unique name for a test by the combination of key parameters, eg batch size, num of GPU, etc. It is hardware independent.", "mode": "NULLABLE", "name": "test_id", "type": "STRING" }, { "description": "The tensorflow version information.", "fields": [ { "description": "Version of the tensorflow. E.g. 1.7.0-rc0", "mode": "REQUIRED", "name": "version", "type": "STRING" }, { "description": "Git Hash of the tensorflow", "mode": "NULLABLE", "name": "git_hash", "type": "STRING" }, { "description": "The channel of the tensorflow binary, eg, nightly, RC, final, custom.", "mode": "NULLABLE", "name": "channel", "type": "STRING" }, { "description": "Identify anything special about the build, eg CUDA 10, NCCL, MKL, etc.", "mode": "NULLABLE", "name": "build_type", "type": "STRING" } ], "mode": "REQUIRED", "name": "tensorflow_version", "type": "RECORD" }, { "description": "The arbitrary attribute of the model.", "fields": [ { "description": "The name of the attribute.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The value of the attribute.", "mode": "NULLABLE", "name": "value", "type": "STRING" } ], "mode": "REPEATED", "name": "attribute", "type": "RECORD" }, { "description": "Environment variables when the benchmark run is executed.", "fields": [ { "description": "The name of the variable.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The value of the variable.", "mode": "NULLABLE", "name": "value", "type": "STRING" } ], "mode": "REPEATED", "name": "environment_variable", "type": "RECORD" }, { "description": "TF Environment variables when the benchmark run is executed.", "fields": [ { "description": "The name of the variable.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The value of the variable.", "mode": "NULLABLE", "name": "value", "type": "STRING" } ], "mode": "REPEATED", "name": "tensorflow_environment_variables", "type": "RECORD" }, { "description": "The list of parameters run with the model. It could contain hyperparameters or others.", "fields": [ { "description": "The name of the parameter.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The string value of the parameter.", "mode": "NULLABLE", "name": "string_value", "type": "STRING" }, { "description": "The bool value of the parameter.", "mode": "NULLABLE", "name": "bool_value", "type": "STRING" }, { "description": "The int/long value of the parameter.", "mode": "NULLABLE", "name": "long_value", "type": "INTEGER" }, { "description": "The double/float value of parameter.", "mode": "NULLABLE", "name": "float_value", "type": "FLOAT" } ], "mode": "REPEATED", "name": "run_parameters", "type": "RECORD" }, { "description": "The dataset that run with the benchmark.", "mode": "NULLABLE", "name": "dataset", "type": "RECORD", "fields": [ { "description": "The name of the dataset that the model is trained/validated with. E.g ImageNet, mnist.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The arbitrary attribute of the dataset.", "fields": [ { "description": "The name of the attribute.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The value of the attribute.", "mode": "NULLABLE", "name": "value", "type": "STRING" } ], "mode": "REPEATED", "name": "attribute", "type": "RECORD" } ] }, { "description": "Used to differentiate from AWS, GCE or DGX-1 at a high level", "mode": "NULLABLE", "name": "test_environment", "type": "STRING" }, { "description": "The machine configuration of the benchmark run.", "mode": "NULLABLE", "name": "machine_config", "type": "RECORD", "fields": [ { "description": "The platform information of the benchmark run.", "mode": "NULLABLE", "name": "platform_info", "type": "RECORD", "fields": [ { "description": "Eg: 64bit.", "mode": "NULLABLE", "name": "bits", "type": "STRING" }, { "description": "Eg: ELF.", "mode": "NULLABLE", "name": "linkage", "type": "STRING" }, { "description": "Eg: i386.", "mode": "NULLABLE", "name": "machine", "type": "STRING" }, { "description": "Eg: 3.13.0-76-generic.", "mode": "NULLABLE", "name": "release", "type": "STRING" }, { "description": "Eg: Linux.", "mode": "NULLABLE", "name": "system", "type": "STRING" }, { "description": "Eg: #120-Ubuntu SMP Mon Jan 18 15:59:10 UTC 2016.", "mode": "NULLABLE", "name": "version", "type": "STRING" } ] }, { "description": "The CPU information of the benchmark run.", "mode": "NULLABLE", "name": "cpu_info", "type": "RECORD", "fields": [ { "mode": "NULLABLE", "name": "num_cores", "type": "INTEGER" }, { "mode": "NULLABLE", "name": "num_cores_allowed", "type": "INTEGER" }, { "description" : "How fast are those CPUs.", "mode": "NULLABLE", "name": "mhz_per_cpu", "type": "FLOAT" }, { "description" : "Additional CPU info, Eg: Intel Ivybridge with HyperThreading (24 cores).", "mode": "NULLABLE", "name": "cpu_info", "type": "STRING" }, { "description" : "What kind of cpu scaling is enabled on the host. Eg performance, ondemand, conservative, mixed.", "mode": "NULLABLE", "name": "cpu_governor", "type": "STRING" }, { "description": "Cache size of the CPUs.", "mode": "NULLABLE", "name": "cache_size", "type": "RECORD", "fields": [ { "mode": "NULLABLE", "name": "level", "type": "STRING" }, { "mode": "NULLABLE", "name": "size", "type": "INTEGER" } ] } ] }, { "mode": "NULLABLE", "name": "gpu_info", "type": "RECORD", "fields": [ { "mode": "NULLABLE", "name": "count", "type": "INTEGER" }, { "mode": "NULLABLE", "name": "model", "type": "STRING" }, { "mode": "NULLABLE", "name": "cuda_version", "type": "STRING" } ] }, { "description": "The cloud instance inforation if the benchmark run is executed on cloud", "mode": "NULLABLE", "name": "cloud_info", "type": "RECORD", "fields": [ { "description": "The instance type, E.g. n1-standard-4.", "mode": "NULLABLE", "name": "instance_type", "type": "STRING" }, { "description": "The arbitrary attribute of the cloud info.", "fields": [ { "description": "The name of the attribute.", "mode": "REQUIRED", "name": "name", "type": "STRING" }, { "description": "The value of the attribute.", "mode": "NULLABLE", "name": "value", "type": "STRING" } ], "mode": "REPEATED", "name": "attribute", "type": "RECORD" } ] }, { "mode": "NULLABLE", "name": "memory_total", "type": "INTEGER" }, { "mode": "NULLABLE", "name": "memory_available", "type": "STRING" } ] } ] ================================================ FILE: official/boosted_trees/README.md ================================================ # Classifying Higgs boson processes in the HIGGS Data Set ## Overview The [HIGGS Data Set](https://archive.ics.uci.edu/ml/datasets/HIGGS) contains 11 million samples with 28 features, and is for the classification problem to distinguish between a signal process which produces Higgs bosons and a background process which does not. We use Gradient Boosted Trees algorithm to distinguish the two classes. --- The code sample uses the high level `tf.estimator.Estimator` and `tf.data.Dataset`. These APIs are great for fast iteration and quickly adapting models to your own datasets without major code overhauls. It allows you to move from single-worker training to distributed training, and makes it easy to export model binaries for prediction. Here, for further simplicity and faster execution, we use a utility function `tf.contrib.estimator.boosted_trees_classifier_train_in_memory`. This utility function is especially effective when the input is provided as in-memory data sets like numpy arrays. An input function for the `Estimator` typically uses `tf.data.Dataset` API, which can handle various data control like streaming, batching, transform and shuffling. However `boosted_trees_classifier_train_in_memory()` utility function requires that the entire data is provided as a single batch (i.e. without using `batch()` API). Thus in this practice, simply `Dataset.from_tensors()` is used to convert numpy arrays into structured tensors, and `Dataset.zip()` is used to put features and label together. For further references of `Dataset`, [Read more here](https://www.tensorflow.org/programmers_guide/datasets). ## Running the code First make sure you've [added the models folder to your Python path](/official/#running-the-models); otherwise you may encounter an error like `ImportError: No module named official.boosted_trees`. ### Setup The [HIGGS Data Set](https://archive.ics.uci.edu/ml/datasets/HIGGS) that this sample uses for training is hosted by the [UC Irvine Machine Learning Repository](https://archive.ics.uci.edu/ml/datasets/). We have provided a script that downloads and cleans the necessary files. ``` python data_download.py ``` This will download a file and store the processed file under the directory designated by `--data_dir` (defaults to `/tmp/higgs_data/`). To change the target directory, set the `--data_dir` flag. The directory could be network storages that Tensorflow supports (like Google Cloud Storage, `gs:////`). The file downloaded to the local temporary folder is about 2.8 GB, and the processed file is about 0.8 GB, so there should be enough storage to handle them. ### Training This example uses about 3 GB of RAM during training. You can run the code locally as follows: ``` python train_higgs.py ``` The model is by default saved to `/tmp/higgs_model`, which can be changed using the `--model_dir` flag. Note that the model_dir is cleaned up before every time training starts. Model parameters can be adjusted by flags, like `--n_trees`, `--max_depth`, `--learning_rate` and so on. Check out the code for details. The final accuracy will be around 74% and loss will be around 0.516 over the eval set, when trained with the default parameters. By default, the first 1 million examples among 11 millions are used for training, and the last 1 million examples are used for evaluation. The training/evaluation data can be selected as index ranges by flags `--train_start`, `--train_count`, `--eval_start`, `--eval_count`, etc. ### TensorBoard Run TensorBoard to inspect the details about the graph and training progression. ``` tensorboard --logdir=/tmp/higgs_model # set logdir as --model_dir set during training. ``` ## Inference with SavedModel You can export the model into Tensorflow [SavedModel](https://www.tensorflow.org/programmers_guide/saved_model) format by using the argument `--export_dir`: ``` python train_higgs.py --export_dir /tmp/higgs_boosted_trees_saved_model ``` After the model finishes training, use [`saved_model_cli`](https://www.tensorflow.org/programmers_guide/saved_model#cli_to_inspect_and_execute_savedmodel) to inspect and execute the SavedModel. Try the following commands to inspect the SavedModel: **Replace `${TIMESTAMP}` with the folder produced (e.g. 1524249124)** ``` # List possible tag_sets. Only one metagraph is saved, so there will be one option. saved_model_cli show --dir /tmp/higgs_boosted_trees_saved_model/${TIMESTAMP}/ # Show SignatureDefs for tag_set=serve. SignatureDefs define the outputs to show. saved_model_cli show --dir /tmp/higgs_boosted_trees_saved_model/${TIMESTAMP}/ \ --tag_set serve --all ``` ### Inference Let's use the model to predict the income group of two examples. Note that this model exports SavedModel with the custom parsing module that accepts csv lines as features. (Each line is an example with 28 columns; be careful to not add a label column, unlike in the training data.) ``` saved_model_cli run --dir /tmp/boosted_trees_higgs_saved_model/${TIMESTAMP}/ \ --tag_set serve --signature_def="predict" \ --input_exprs='inputs=["0.869293,-0.635082,0.225690,0.327470,-0.689993,0.754202,-0.248573,-1.092064,0.0,1.374992,-0.653674,0.930349,1.107436,1.138904,-1.578198,-1.046985,0.0,0.657930,-0.010455,-0.045767,3.101961,1.353760,0.979563,0.978076,0.920005,0.721657,0.988751,0.876678", "1.595839,-0.607811,0.007075,1.818450,-0.111906,0.847550,-0.566437,1.581239,2.173076,0.755421,0.643110,1.426367,0.0,0.921661,-1.190432,-1.615589,0.0,0.651114,-0.654227,-1.274345,3.101961,0.823761,0.938191,0.971758,0.789176,0.430553,0.961357,0.957818"]' ``` This will print out the predicted classes and class probabilities. Something like: ``` Result for output key class_ids: [[1] [0]] Result for output key classes: [['1'] ['0']] Result for output key logistic: [[0.6440273 ] [0.10902369]] Result for output key logits: [[ 0.59288704] [-2.1007526 ]] Result for output key probabilities: [[0.3559727 0.6440273] [0.8909763 0.1090237]] ``` Please note that "predict" signature_def gives out different (more detailed) results than "classification" or "serving_default". ## Additional Links If you are interested in distributed training, take a look at [Distributed TensorFlow](https://www.tensorflow.org/deploy/distributed). You can also [train models on Cloud ML Engine](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction), which provides [hyperparameter tuning](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction#hyperparameter_tuning) to maximize your model's results and enables [deploying your model for prediction](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction#deploy_a_model_to_support_prediction). ================================================ FILE: official/boosted_trees/__init__.py ================================================ ================================================ FILE: official/boosted_trees/data_download.py ================================================ """Downloads the UCI HIGGS Dataset and prepares train data. The details on the dataset are in https://archive.ics.uci.edu/ml/datasets/HIGGS It takes a while as it needs to download 2.8 GB over the network, process, then store it into the specified location as a compressed numpy file. Usage: $ python data_download.py --data_dir=/tmp/higgs_data """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import gzip import os import tempfile # pylint: disable=g-bad-import-order import numpy as np import pandas as pd from six.moves import urllib from absl import app as absl_app from absl import flags import tensorflow as tf from official.utils.flags import core as flags_core URL_ROOT = "https://archive.ics.uci.edu/ml/machine-learning-databases/00280" INPUT_FILE = "HIGGS.csv.gz" NPZ_FILE = "HIGGS.csv.gz.npz" # numpy compressed file to contain "data" array. def _download_higgs_data_and_save_npz(data_dir): """Download higgs data and store as a numpy compressed file.""" input_url = os.path.join(URL_ROOT, INPUT_FILE) np_filename = os.path.join(data_dir, NPZ_FILE) if tf.gfile.Exists(np_filename): raise ValueError("data_dir already has the processed data file: {}".format( np_filename)) if not tf.gfile.Exists(data_dir): tf.gfile.MkDir(data_dir) # 2.8 GB to download. try: tf.logging.info("Data downloading...") temp_filename, _ = urllib.request.urlretrieve(input_url) # Reading and parsing 11 million csv lines takes 2~3 minutes. tf.logging.info("Data processing... taking multiple minutes...") with gzip.open(temp_filename, "rb") as csv_file: data = pd.read_csv( csv_file, dtype=np.float32, names=["c%02d" % i for i in range(29)] # label + 28 features. ).as_matrix() finally: tf.gfile.Remove(temp_filename) # Writing to temporary location then copy to the data_dir (0.8 GB). f = tempfile.NamedTemporaryFile() np.savez_compressed(f, data=data) tf.gfile.Copy(f.name, np_filename) tf.logging.info("Data saved to: {}".format(np_filename)) def main(unused_argv): if not tf.gfile.Exists(FLAGS.data_dir): tf.gfile.MkDir(FLAGS.data_dir) _download_higgs_data_and_save_npz(FLAGS.data_dir) def define_data_download_flags(): """Add flags specifying data download arguments.""" flags.DEFINE_string( name="data_dir", default="/tmp/higgs_data", help=flags_core.help_wrap( "Directory to download higgs dataset and store training/eval data.")) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_data_download_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/boosted_trees/train_higgs.py ================================================ r"""A script that builds boosted trees over higgs data. If you haven't, please run data_download.py beforehand to prepare the data. For some more details on this example, please refer to README.md as well. Note that the model_dir is cleaned up before starting the training. Usage: $ python train_higgs.py --n_trees=100 --max_depth=6 --learning_rate=0.1 \ --model_dir=/tmp/higgs_model Note that BoostedTreesClassifier is available since Tensorflow 1.8.0. So you need to install recent enough version of Tensorflow to use this example. The training data is by default the first million examples out of 11M examples, and eval data is by default the last million examples. They are controlled by --train_start, --train_count, --eval_start, --eval_count. e.g. to train over the first 10 million examples instead of 1 million: $ python train_higgs.py --n_trees=100 --max_depth=6 --learning_rate=0.1 \ --model_dir=/tmp/higgs_model --train_count=10000000 Training history and metrics can be inspected using tensorboard. Set --logdir as the --model_dir set by flag when training (or the default /tmp/higgs_model). $ tensorboard --logdir=/tmp/higgs_model """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os # pylint: disable=g-bad-import-order import numpy as np from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.utils.flags import core as flags_core from official.utils.flags._conventions import help_wrap from official.utils.logs import logger NPZ_FILE = "HIGGS.csv.gz.npz" # numpy compressed file containing "data" array def read_higgs_data(data_dir, train_start, train_count, eval_start, eval_count): """Reads higgs data from csv and returns train and eval data. Args: data_dir: A string, the directory of higgs dataset. train_start: An integer, the start index of train examples within the data. train_count: An integer, the number of train examples within the data. eval_start: An integer, the start index of eval examples within the data. eval_count: An integer, the number of eval examples within the data. Returns: Numpy array of train data and eval data. """ npz_filename = os.path.join(data_dir, NPZ_FILE) try: # gfile allows numpy to read data from network data sources as well. with tf.gfile.Open(npz_filename, "rb") as npz_file: with np.load(npz_file) as npz: data = npz["data"] except tf.errors.NotFoundError as e: raise RuntimeError( "Error loading data; use data_download.py to prepare the data.\n{}: {}" .format(type(e).__name__, e)) return (data[train_start:train_start+train_count], data[eval_start:eval_start+eval_count]) # This showcases how to make input_fn when the input data is available in the # form of numpy arrays. def make_inputs_from_np_arrays(features_np, label_np): """Makes and returns input_fn and feature_columns from numpy arrays. The generated input_fn will return tf.data.Dataset of feature dictionary and a label, and feature_columns will consist of the list of tf.feature_column.BucketizedColumn. Note, for in-memory training, tf.data.Dataset should contain the whole data as a single tensor. Don't use batch. Args: features_np: A numpy ndarray (shape=[batch_size, num_features]) for float32 features. label_np: A numpy ndarray (shape=[batch_size, 1]) for labels. Returns: input_fn: A function returning a Dataset of feature dict and label. feature_names: A list of feature names. feature_column: A list of tf.feature_column.BucketizedColumn. """ num_features = features_np.shape[1] features_np_list = np.split(features_np, num_features, axis=1) # 1-based feature names. feature_names = ["feature_%02d" % (i + 1) for i in range(num_features)] # Create source feature_columns and bucketized_columns. def get_bucket_boundaries(feature): """Returns bucket boundaries for feature by percentiles.""" return np.unique(np.percentile(feature, range(0, 100))).tolist() source_columns = [ tf.feature_column.numeric_column( feature_name, dtype=tf.float32, # Although higgs data have no missing values, in general, default # could be set as 0 or some reasonable value for missing values. default_value=0.0) for feature_name in feature_names ] bucketized_columns = [ tf.feature_column.bucketized_column( source_columns[i], boundaries=get_bucket_boundaries(features_np_list[i])) for i in range(num_features) ] # Make an input_fn that extracts source features. def input_fn(): """Returns features as a dictionary of numpy arrays, and a label.""" features = { feature_name: tf.constant(features_np_list[i]) for i, feature_name in enumerate(feature_names) } return tf.data.Dataset.zip((tf.data.Dataset.from_tensors(features), tf.data.Dataset.from_tensors(label_np),)) return input_fn, feature_names, bucketized_columns def make_eval_inputs_from_np_arrays(features_np, label_np): """Makes eval input as streaming batches.""" num_features = features_np.shape[1] features_np_list = np.split(features_np, num_features, axis=1) # 1-based feature names. feature_names = ["feature_%02d" % (i + 1) for i in range(num_features)] def input_fn(): features = { feature_name: tf.constant(features_np_list[i]) for i, feature_name in enumerate(feature_names) } return tf.data.Dataset.zip(( tf.data.Dataset.from_tensor_slices(features), tf.data.Dataset.from_tensor_slices(label_np),)).batch(1000) return input_fn def _make_csv_serving_input_receiver_fn(column_names, column_defaults): """Returns serving_input_receiver_fn for csv. The input arguments are relevant to `tf.decode_csv()`. Args: column_names: a list of column names in the order within input csv. column_defaults: a list of default values with the same size of column_names. Each entity must be either a list of one scalar, or an empty list to denote the corresponding column is required. e.g. [[""], [2.5], []] indicates the third column is required while the first column must be string and the second must be float/double. Returns: a serving_input_receiver_fn that handles csv for serving. """ def serving_input_receiver_fn(): csv = tf.placeholder(dtype=tf.string, shape=[None], name="csv") features = dict(zip(column_names, tf.decode_csv(csv, column_defaults))) receiver_tensors = {"inputs": csv} return tf.estimator.export.ServingInputReceiver(features, receiver_tensors) return serving_input_receiver_fn def train_boosted_trees(flags_obj): """Train boosted_trees estimator on HIGGS data. Args: flags_obj: An object containing parsed flag values. """ # Clean up the model directory if present. if tf.gfile.Exists(flags_obj.model_dir): tf.gfile.DeleteRecursively(flags_obj.model_dir) tf.logging.info("## Data loading...") train_data, eval_data = read_higgs_data( flags_obj.data_dir, flags_obj.train_start, flags_obj.train_count, flags_obj.eval_start, flags_obj.eval_count) tf.logging.info("## Data loaded; train: {}{}, eval: {}{}".format( train_data.dtype, train_data.shape, eval_data.dtype, eval_data.shape)) # Data consists of one label column followed by 28 feature columns. train_input_fn, feature_names, feature_columns = make_inputs_from_np_arrays( features_np=train_data[:, 1:], label_np=train_data[:, 0:1]) eval_input_fn = make_eval_inputs_from_np_arrays( features_np=eval_data[:, 1:], label_np=eval_data[:, 0:1]) tf.logging.info("## Features prepared. Training starts...") # Create benchmark logger to log info about the training and metric values run_params = { "train_start": flags_obj.train_start, "train_count": flags_obj.train_count, "eval_start": flags_obj.eval_start, "eval_count": flags_obj.eval_count, "n_trees": flags_obj.n_trees, "max_depth": flags_obj.max_depth, } benchmark_logger = logger.config_benchmark_logger(flags_obj) benchmark_logger.log_run_info( model_name="boosted_trees", dataset_name="higgs", run_params=run_params) # Though BoostedTreesClassifier is under tf.estimator, faster in-memory # training is yet provided as a contrib library. classifier = tf.contrib.estimator.boosted_trees_classifier_train_in_memory( train_input_fn, feature_columns, model_dir=flags_obj.model_dir or None, n_trees=flags_obj.n_trees, max_depth=flags_obj.max_depth, learning_rate=flags_obj.learning_rate) # Evaluation. eval_results = classifier.evaluate(eval_input_fn) # Benchmark the evaluation results benchmark_logger.log_evaluation_result(eval_results) # Exporting the savedmodel with csv parsing. if flags_obj.export_dir is not None: classifier.export_savedmodel( flags_obj.export_dir, _make_csv_serving_input_receiver_fn( column_names=feature_names, # columns are all floats. column_defaults=[[0.0]] * len(feature_names))) def main(_): train_boosted_trees(flags.FLAGS) def define_train_higgs_flags(): """Add tree related flags as well as training/eval configuration.""" flags_core.define_base(stop_threshold=False, batch_size=False, num_gpu=False) flags.adopt_module_key_flags(flags_core) flags.DEFINE_integer( name="train_start", default=0, help=help_wrap("Start index of train examples within the data.")) flags.DEFINE_integer( name="train_count", default=1000000, help=help_wrap("Number of train examples within the data.")) flags.DEFINE_integer( name="eval_start", default=10000000, help=help_wrap("Start index of eval examples within the data.")) flags.DEFINE_integer( name="eval_count", default=1000000, help=help_wrap("Number of eval examples within the data.")) flags.DEFINE_integer( "n_trees", default=100, help=help_wrap("Number of trees to build.")) flags.DEFINE_integer( "max_depth", default=6, help=help_wrap("Maximum depths of each tree.")) flags.DEFINE_float( "learning_rate", default=0.1, help=help_wrap("The learning rate.")) flags_core.set_defaults(data_dir="/tmp/higgs_data", model_dir="/tmp/higgs_model") if __name__ == "__main__": # Training progress and eval results are shown as logging.INFO; so enables it. tf.logging.set_verbosity(tf.logging.INFO) define_train_higgs_flags() absl_app.run(main) ================================================ FILE: official/boosted_trees/train_higgs_test.csv ================================================ 1.000000000000000000e+00,8.692932128906250000e-01,-6.350818276405334473e-01,2.256902605295181274e-01,3.274700641632080078e-01,-6.899932026863098145e-01,7.542022466659545898e-01,-2.485731393098831177e-01,-1.092063903808593750e+00,0.000000000000000000e+00,1.374992132186889648e+00,-6.536741852760314941e-01,9.303491115570068359e-01,1.107436060905456543e+00,1.138904333114624023e+00,-1.578198313713073730e+00,-1.046985387802124023e+00,0.000000000000000000e+00,6.579295396804809570e-01,-1.045456994324922562e-02,-4.576716944575309753e-02,3.101961374282836914e+00,1.353760004043579102e+00,9.795631170272827148e-01,9.780761599540710449e-01,9.200048446655273438e-01,7.216574549674987793e-01,9.887509346008300781e-01,8.766783475875854492e-01 1.000000000000000000e+00,9.075421094894409180e-01,3.291472792625427246e-01,3.594118654727935791e-01,1.497969865798950195e+00,-3.130095303058624268e-01,1.095530629158020020e+00,-5.575249195098876953e-01,-1.588229775428771973e+00,2.173076152801513672e+00,8.125811815261840820e-01,-2.136419266462326050e-01,1.271014571189880371e+00,2.214872121810913086e+00,4.999939501285552979e-01,-1.261431813240051270e+00,7.321561574935913086e-01,0.000000000000000000e+00,3.987008929252624512e-01,-1.138930082321166992e+00,-8.191101951524615288e-04,0.000000000000000000e+00,3.022198975086212158e-01,8.330481648445129395e-01,9.856996536254882812e-01,9.780983924865722656e-01,7.797321677207946777e-01,9.923557639122009277e-01,7.983425855636596680e-01 1.000000000000000000e+00,7.988347411155700684e-01,1.470638751983642578e+00,-1.635974764823913574e+00,4.537731707096099854e-01,4.256291687488555908e-01,1.104874610900878906e+00,1.282322287559509277e+00,1.381664276123046875e+00,0.000000000000000000e+00,8.517372012138366699e-01,1.540658950805664062e+00,-8.196895122528076172e-01,2.214872121810913086e+00,9.934899210929870605e-01,3.560801148414611816e-01,-2.087775468826293945e-01,2.548224449157714844e+00,1.256954550743103027e+00,1.128847599029541016e+00,9.004608392715454102e-01,0.000000000000000000e+00,9.097532629966735840e-01,1.108330488204956055e+00,9.856922030448913574e-01,9.513312578201293945e-01,8.032515048980712891e-01,8.659244179725646973e-01,7.801175713539123535e-01 0.000000000000000000e+00,1.344384789466857910e+00,-8.766260147094726562e-01,9.359127283096313477e-01,1.992050051689147949e+00,8.824543952941894531e-01,1.786065936088562012e+00,-1.646777749061584473e+00,-9.423825144767761230e-01,0.000000000000000000e+00,2.423264741897583008e+00,-6.760157942771911621e-01,7.361586689949035645e-01,2.214872121810913086e+00,1.298719763755798340e+00,-1.430738091468811035e+00,-3.646581768989562988e-01,0.000000000000000000e+00,7.453126907348632812e-01,-6.783788204193115234e-01,-1.360356330871582031e+00,0.000000000000000000e+00,9.466524720191955566e-01,1.028703689575195312e+00,9.986560940742492676e-01,7.282806038856506348e-01,8.692002296447753906e-01,1.026736497879028320e+00,9.579039812088012695e-01 1.000000000000000000e+00,1.105008959770202637e+00,3.213555514812469482e-01,1.522401213645935059e+00,8.828076124191284180e-01,-1.205349326133728027e+00,6.814661026000976562e-01,-1.070463895797729492e+00,-9.218706488609313965e-01,0.000000000000000000e+00,8.008721470832824707e-01,1.020974040031433105e+00,9.714065194129943848e-01,2.214872121810913086e+00,5.967612862586975098e-01,-3.502728641033172607e-01,6.311942934989929199e-01,0.000000000000000000e+00,4.799988865852355957e-01,-3.735655248165130615e-01,1.130406111478805542e-01,0.000000000000000000e+00,7.558564543724060059e-01,1.361057043075561523e+00,9.866096973419189453e-01,8.380846381187438965e-01,1.133295178413391113e+00,8.722448945045471191e-01,8.084865212440490723e-01 0.000000000000000000e+00,1.595839262008666992e+00,-6.078106760978698730e-01,7.074915803968906403e-03,1.818449616432189941e+00,-1.119059920310974121e-01,8.475499153137207031e-01,-5.664370059967041016e-01,1.581239342689514160e+00,2.173076152801513672e+00,7.554209828376770020e-01,6.431096196174621582e-01,1.426366806030273438e+00,0.000000000000000000e+00,9.216607809066772461e-01,-1.190432429313659668e+00,-1.615589022636413574e+00,0.000000000000000000e+00,6.511141061782836914e-01,-6.542269587516784668e-01,-1.274344921112060547e+00,3.101961374282836914e+00,8.237605690956115723e-01,9.381914138793945312e-01,9.717581868171691895e-01,7.891763448715209961e-01,4.305532872676849365e-01,9.613569378852844238e-01,9.578179121017456055e-01 1.000000000000000000e+00,4.093913435935974121e-01,-1.884683609008789062e+00,-1.027292013168334961e+00,1.672451734542846680e+00,-1.604598283767700195e+00,1.338014960289001465e+00,5.542744323611259460e-02,1.346588134765625000e-02,2.173076152801513672e+00,5.097832679748535156e-01,-1.038338065147399902e+00,7.078623175621032715e-01,0.000000000000000000e+00,7.469175457954406738e-01,-3.584651052951812744e-01,-1.646654248237609863e+00,0.000000000000000000e+00,3.670579791069030762e-01,6.949646025896072388e-02,1.377130270004272461e+00,3.101961374282836914e+00,8.694183826446533203e-01,1.222082972526550293e+00,1.000627398490905762e+00,5.450449585914611816e-01,6.986525058746337891e-01,9.773144721984863281e-01,8.287860751152038574e-01 1.000000000000000000e+00,9.338953495025634766e-01,6.291297078132629395e-01,5.275348424911499023e-01,2.380327433347702026e-01,-9.665691256523132324e-01,5.478111505508422852e-01,-5.943922698497772217e-02,-1.706866145133972168e+00,2.173076152801513672e+00,9.410027265548706055e-01,-2.653732776641845703e+00,-1.572199910879135132e-01,0.000000000000000000e+00,1.030370354652404785e+00,-1.755051016807556152e-01,5.230209231376647949e-01,2.548224449157714844e+00,1.373546600341796875e+00,1.291248083114624023e+00,-1.467454433441162109e+00,0.000000000000000000e+00,9.018372893333435059e-01,1.083671212196350098e+00,9.796960949897766113e-01,7.833003997802734375e-01,8.491951823234558105e-01,8.943563103675842285e-01,7.748793959617614746e-01 1.000000000000000000e+00,1.405143737792968750e+00,5.366026163101196289e-01,6.895543336868286133e-01,1.179567337036132812e+00,-1.100611537694931030e-01,3.202404975891113281e+00,-1.526960015296936035e+00,-1.576033473014831543e+00,0.000000000000000000e+00,2.931536912918090820e+00,5.673424601554870605e-01,-1.300333440303802490e-01,2.214872121810913086e+00,1.787122726440429688e+00,8.994985818862915039e-01,5.851513147354125977e-01,2.548224449157714844e+00,4.018652141094207764e-01,-1.512016952037811279e-01,1.163489103317260742e+00,0.000000000000000000e+00,1.667070508003234863e+00,4.039272785186767578e+00,1.175828456878662109e+00,1.045351743698120117e+00,1.542971968650817871e+00,3.534826755523681641e+00,2.740753889083862305e+00 1.000000000000000000e+00,1.176565527915954590e+00,1.041605025529861450e-01,1.397002458572387695e+00,4.797213077545166016e-01,2.655133903026580811e-01,1.135563015937805176e+00,1.534830927848815918e+00,-2.532912194728851318e-01,0.000000000000000000e+00,1.027246594429016113e+00,5.343157649040222168e-01,1.180022358894348145e+00,0.000000000000000000e+00,2.405661106109619141e+00,8.755676448345184326e-02,-9.765340685844421387e-01,2.548224449157714844e+00,1.250382542610168457e+00,2.685412168502807617e-01,5.303344726562500000e-01,0.000000000000000000e+00,8.331748843193054199e-01,7.739681005477905273e-01,9.857499599456787109e-01,1.103696346282958984e+00,8.491398692131042480e-01,9.371039867401123047e-01,8.123638033866882324e-01 1.000000000000000000e+00,9.459739923477172852e-01,1.111244320869445801e+00,1.218337059020996094e+00,9.076390862464904785e-01,8.215369582176208496e-01,1.153243303298950195e+00,-3.654202818870544434e-01,-1.566054821014404297e+00,0.000000000000000000e+00,7.447192072868347168e-01,7.208195328712463379e-01,-3.758229315280914307e-01,2.214872121810913086e+00,6.088791489601135254e-01,3.078369498252868652e-01,-1.281638383865356445e+00,0.000000000000000000e+00,1.597967982292175293e+00,-4.510180354118347168e-01,6.365344673395156860e-02,3.101961374282836914e+00,8.290241360664367676e-01,9.806482791900634766e-01,9.943597912788391113e-01,9.082478284835815430e-01,7.758789062500000000e-01,7.833113670349121094e-01,7.251217961311340332e-01 0.000000000000000000e+00,7.393567562103271484e-01,-1.782904267311096191e-01,8.299342393875122070e-01,5.045390725135803223e-01,-1.302167475223541260e-01,9.610513448715209961e-01,-3.555179834365844727e-01,-1.717399358749389648e+00,2.173076152801513672e+00,6.209560632705688477e-01,-4.817410409450531006e-01,-1.199193239212036133e+00,0.000000000000000000e+00,9.826014041900634766e-01,8.118502795696258545e-02,-2.903236448764801025e-01,0.000000000000000000e+00,1.064662933349609375e+00,7.740649580955505371e-01,3.988203406333923340e-01,3.101961374282836914e+00,9.445360302925109863e-01,1.026260614395141602e+00,9.821967482566833496e-01,5.421146750450134277e-01,1.250978946685791016e+00,8.300446271896362305e-01,7.613079547882080078e-01 1.000000000000000000e+00,1.384097695350646973e+00,1.168220937252044678e-01,-1.179878950119018555e+00,7.629125714302062988e-01,-7.978226989507675171e-02,1.019863128662109375e+00,8.773182630538940430e-01,1.276887178421020508e+00,2.173076152801513672e+00,3.312520980834960938e-01,1.409523487091064453e+00,-1.474388837814331055e+00,0.000000000000000000e+00,1.282738208770751953e+00,7.374743819236755371e-01,-2.254196107387542725e-01,0.000000000000000000e+00,1.559753060340881348e+00,8.465205430984497070e-01,5.048085451126098633e-01,3.101961374282836914e+00,9.593246579170227051e-01,8.073760271072387695e-01,1.191813588142395020e+00,1.221210360527038574e+00,8.611412644386291504e-01,9.293408989906311035e-01,8.383023738861083984e-01 1.000000000000000000e+00,1.383548736572265625e+00,8.891792893409729004e-01,6.185320615768432617e-01,1.081547021865844727e+00,3.446055650711059570e-01,9.563793540000915527e-01,8.545429706573486328e-01,-1.129207015037536621e+00,2.173076152801513672e+00,5.456657409667968750e-01,-3.078651726245880127e-01,-6.232798099517822266e-01,2.214872121810913086e+00,3.482571244239807129e-01,1.024202585220336914e+00,1.840776652097702026e-01,0.000000000000000000e+00,7.813369035720825195e-01,-1.636125564575195312e+00,1.144067287445068359e+00,0.000000000000000000e+00,5.222384929656982422e-01,7.376385331153869629e-01,9.861995577812194824e-01,1.349615693092346191e+00,8.127878904342651367e-01,9.534064531326293945e-01,7.797226309776306152e-01 1.000000000000000000e+00,1.343652725219726562e+00,8.385329246520996094e-01,-1.061138510704040527e+00,2.472015142440795898e+00,-5.726317167282104492e-01,1.512709975242614746e+00,1.143690109252929688e+00,8.555619716644287109e-01,0.000000000000000000e+00,8.842203021049499512e-01,1.474605560302734375e+00,-1.360648751258850098e+00,1.107436060905456543e+00,1.587265610694885254e+00,2.234833478927612305e+00,7.756848633289337158e-02,0.000000000000000000e+00,1.609408140182495117e+00,2.396404743194580078e+00,7.572935223579406738e-01,0.000000000000000000e+00,9.340201020240783691e-01,8.447072505950927734e-01,1.077844023704528809e+00,1.400183677673339844e+00,9.477745294570922852e-01,1.007614254951477051e+00,9.010174870491027832e-01 0.000000000000000000e+00,5.470141768455505371e-01,-3.497089445590972900e-01,-6.466571688652038574e-01,2.040462255477905273e+00,2.764569818973541260e-01,5.446965098381042480e-01,8.386992812156677246e-01,1.728703141212463379e+00,0.000000000000000000e+00,6.528096199035644531e-01,1.471691370010375977e+00,1.243273019790649414e+00,0.000000000000000000e+00,7.857298851013183594e-01,-4.442929103970527649e-02,-1.019803404808044434e+00,2.548224449157714844e+00,4.191471040248870850e-01,-6.292421817779541016e-01,1.570794582366943359e+00,3.101961374282836914e+00,6.894335746765136719e-01,8.672295808792114258e-01,1.082487821578979492e+00,6.641419529914855957e-01,3.541145622730255127e-01,5.799450278282165527e-01,8.172734379768371582e-01 1.000000000000000000e+00,1.484203696250915527e+00,1.699521422386169434e+00,-1.059473991394042969e+00,2.700195550918579102e+00,-1.055963873863220215e+00,2.409452915191650391e+00,4.574607908725738525e-01,3.449823260307312012e-01,0.000000000000000000e+00,1.414903521537780762e+00,1.114225864410400391e+00,-1.448866605758666992e+00,0.000000000000000000e+00,1.012983918190002441e+00,-2.056988954544067383e+00,1.131010890007019043e+00,0.000000000000000000e+00,9.054746031761169434e-01,2.182368993759155273e+00,1.043073177337646484e+00,0.000000000000000000e+00,1.653626322746276855e+00,9.935762286186218262e-01,9.833217859268188477e-01,7.413797974586486816e-01,1.633816361427307129e-01,5.923243165016174316e-01,7.451378703117370605e-01 0.000000000000000000e+00,1.057975649833679199e+00,-1.607590019702911377e-01,-1.949972510337829590e-01,2.705023050308227539e+00,-7.514767050743103027e-01,1.909918904304504395e+00,-1.031844973564147949e+00,8.649863600730895996e-01,0.000000000000000000e+00,1.300834894180297852e+00,1.467376798391342163e-01,-1.118742942810058594e+00,1.107436060905456543e+00,9.669710993766784668e-01,-3.666573464870452881e-01,1.108266711235046387e+00,0.000000000000000000e+00,5.547249317169189453e-01,-7.141901850700378418e-01,1.505314946174621582e+00,3.101961374282836914e+00,9.544943571090698242e-01,6.510385870933532715e-01,1.124949693679809570e+00,8.940010070800781250e-01,6.721734404563903809e-01,1.182358264923095703e+00,1.316304087638854980e+00 0.000000000000000000e+00,6.753035783767700195e-01,1.120983958244323730e+00,-2.804459035396575928e-01,1.539554953575134277e+00,7.345175743103027344e-01,6.146844029426574707e-01,-5.070231556892395020e-01,7.945806980133056641e-01,2.173076152801513672e+00,2.188202738761901855e-01,-1.894118309020996094e+00,-5.805578827857971191e-01,0.000000000000000000e+00,1.245682120323181152e+00,-3.475421071052551270e-01,-8.561564683914184570e-01,2.548224449157714844e+00,7.531017661094665527e-01,-1.145592689514160156e+00,-1.374783992767333984e+00,0.000000000000000000e+00,9.069401025772094727e-01,8.983390927314758301e-01,1.119651079177856445e+00,1.269073486328125000e+00,1.088765859603881836e+00,1.015413045883178711e+00,9.146358966827392578e-01 1.000000000000000000e+00,6.427279114723205566e-01,-1.429840326309204102e+00,1.519071936607360840e+00,9.409985542297363281e-01,8.872274160385131836e-01,1.615126848220825195e+00,-1.336835741996765137e+00,-2.665962278842926025e-01,1.086538076400756836e+00,1.667088270187377930e+00,6.557375192642211914e-01,-1.588128924369812012e+00,0.000000000000000000e+00,8.282302021980285645e-01,1.836144566535949707e+00,4.081907570362091064e-01,0.000000000000000000e+00,1.708718180656433105e+00,-3.469151556491851807e-01,-1.182784557342529297e+00,3.101961374282836914e+00,9.210902452468872070e-01,1.373361706733703613e+00,9.849172830581665039e-01,1.422878146171569824e+00,1.546551108360290527e+00,1.782585501670837402e+00,1.438173770904541016e+00 ================================================ FILE: official/boosted_trees/train_higgs_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for boosted_tree.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tempfile import numpy as np import pandas as pd import tensorflow as tf # pylint: disable=g-bad-import-order from official.boosted_trees import train_higgs from official.utils.testing import integration TEST_CSV = os.path.join(os.path.dirname(__file__), "train_higgs_test.csv") tf.logging.set_verbosity(tf.logging.ERROR) class BaseTest(tf.test.TestCase): """Tests for Wide Deep model.""" @classmethod def setUpClass(cls): # pylint: disable=invalid-name super(BaseTest, cls).setUpClass() train_higgs.define_train_higgs_flags() def setUp(self): # Create temporary CSV file self.data_dir = self.get_temp_dir() data = pd.read_csv( TEST_CSV, dtype=np.float32, names=["c%02d" % i for i in range(29)] ).as_matrix() self.input_npz = os.path.join(self.data_dir, train_higgs.NPZ_FILE) # numpy.savez doesn't take gfile.Gfile, so need to write down and copy. tmpfile = tempfile.NamedTemporaryFile() np.savez_compressed(tmpfile, data=data) tf.gfile.Copy(tmpfile.name, self.input_npz) def test_read_higgs_data(self): """Tests read_higgs_data() function.""" # Error when a wrong data_dir is given. with self.assertRaisesRegexp(RuntimeError, "Error loading data.*"): train_data, eval_data = train_higgs.read_higgs_data( self.data_dir + "non-existing-path", train_start=0, train_count=15, eval_start=15, eval_count=5) # Loading fine with the correct data_dir. train_data, eval_data = train_higgs.read_higgs_data( self.data_dir, train_start=0, train_count=15, eval_start=15, eval_count=5) self.assertEqual((15, 29), train_data.shape) self.assertEqual((5, 29), eval_data.shape) def test_make_inputs_from_np_arrays(self): """Tests make_inputs_from_np_arrays() function.""" train_data, _ = train_higgs.read_higgs_data( self.data_dir, train_start=0, train_count=15, eval_start=15, eval_count=5) (input_fn, feature_names, feature_columns) = train_higgs.make_inputs_from_np_arrays( features_np=train_data[:, 1:], label_np=train_data[:, 0:1]) # Check feature_names. self.assertAllEqual(feature_names, ["feature_%02d" % (i+1) for i in range(28)]) # Check feature columns. self.assertEqual(28, len(feature_columns)) bucketized_column_type = type( tf.feature_column.bucketized_column( tf.feature_column.numeric_column("feature_01"), boundaries=[0, 1, 2])) # dummy boundaries. for feature_column in feature_columns: self.assertIsInstance(feature_column, bucketized_column_type) # At least 2 boundaries. self.assertGreaterEqual(len(feature_column.boundaries), 2) # Tests that the source column names of the bucketized columns match. self.assertAllEqual(feature_names, [col.source_column.name for col in feature_columns]) # Check features. features, labels = input_fn().make_one_shot_iterator().get_next() with tf.Session() as sess: features, labels = sess.run((features, labels)) self.assertIsInstance(features, dict) self.assertAllEqual(feature_names, sorted(features.keys())) self.assertAllEqual([[15, 1]] * 28, [features[name].shape for name in feature_names]) # Validate actual values of some features. self.assertAllClose( [0.869293, 0.907542, 0.798834, 1.344384, 1.105009, 1.595839, 0.409391, 0.933895, 1.405143, 1.176565, 0.945974, 0.739356, 1.384097, 1.383548, 1.343652], np.squeeze(features[feature_names[0]], 1)) self.assertAllClose( [-0.653674, -0.213641, 1.540659, -0.676015, 1.020974, 0.643109, -1.038338, -2.653732, 0.567342, 0.534315, 0.720819, -0.481741, 1.409523, -0.307865, 1.474605], np.squeeze(features[feature_names[10]], 1)) def test_end_to_end(self): """Tests end-to-end running.""" model_dir = os.path.join(self.get_temp_dir(), "model") integration.run_synthetic( main=train_higgs.main, tmp_root=self.get_temp_dir(), extra_flags=[ "--data_dir", self.data_dir, "--model_dir", model_dir, "--n_trees", "5", "--train_start", "0", "--train_count", "12", "--eval_start", "12", "--eval_count", "8", ], synth=False, max_train=None) self.assertTrue(tf.gfile.Exists(os.path.join(model_dir, "checkpoint"))) def test_end_to_end_with_export(self): """Tests end-to-end running.""" model_dir = os.path.join(self.get_temp_dir(), "model") export_dir = os.path.join(self.get_temp_dir(), "export") integration.run_synthetic( main=train_higgs.main, tmp_root=self.get_temp_dir(), extra_flags=[ "--data_dir", self.data_dir, "--model_dir", model_dir, "--export_dir", export_dir, "--n_trees", "5", "--train_start", "0", "--train_count", "12", "--eval_start", "12", "--eval_count", "8", ], synth=False, max_train=None) self.assertTrue(tf.gfile.Exists(os.path.join(model_dir, "checkpoint"))) self.assertTrue(tf.gfile.Exists(os.path.join(export_dir))) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/mnist/README.md ================================================ # MNIST in TensorFlow This directory builds a convolutional neural net to classify the [MNIST dataset](http://yann.lecun.com/exdb/mnist/) using the [tf.data](https://www.tensorflow.org/api_docs/python/tf/data), [tf.estimator.Estimator](https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator), and [tf.layers](https://www.tensorflow.org/api_docs/python/tf/layers) APIs. ## Setup To begin, you'll simply need the latest version of TensorFlow installed. First make sure you've [added the models folder to your Python path](/official/#running-the-models); otherwise you may encounter an error like `ImportError: No module named official.mnist`. Then to train the model, run the following: ``` python mnist.py ``` The model will begin training and will automatically evaluate itself on the validation data. Illustrative unit tests and benchmarks can be run with: ``` python mnist_test.py python mnist_test.py --benchmarks=. ``` ## Exporting the model You can export the model into Tensorflow [SavedModel](https://www.tensorflow.org/programmers_guide/saved_model) format by using the argument `--export_dir`: ``` python mnist.py --export_dir /tmp/mnist_saved_model ``` The SavedModel will be saved in a timestamped directory under `/tmp/mnist_saved_model/` (e.g. `/tmp/mnist_saved_model/1513630966/`). **Getting predictions with SavedModel** Use [`saved_model_cli`](https://www.tensorflow.org/programmers_guide/saved_model#cli_to_inspect_and_execute_savedmodel) to inspect and execute the SavedModel. ``` saved_model_cli run --dir /tmp/mnist_saved_model/TIMESTAMP --tag_set serve --signature_def classify --inputs image=examples.npy ``` `examples.npy` contains the data from `example5.png` and `example3.png` in a numpy array, in that order. The array values are normalized to values between 0 and 1. The output should look similar to below: ``` Result for output key classes: [5 3] Result for output key probabilities: [[ 1.53558474e-07 1.95694142e-13 1.31193523e-09 5.47467265e-03 5.85711526e-22 9.94520664e-01 3.48423509e-06 2.65365645e-17 9.78631419e-07 3.15522470e-08] [ 1.22413359e-04 5.87615965e-08 1.72251271e-06 9.39960718e-01 3.30306928e-11 2.87386645e-02 2.82353517e-02 8.21146413e-18 2.52568233e-03 4.15460236e-04]] ``` ## Experimental: Eager Execution [Eager execution](https://research.googleblog.com/2017/10/eager-execution-imperative-define-by.html) (an preview feature in TensorFlow 1.5) is an imperative interface to TensorFlow. The exact same model defined in `mnist.py` can be trained without creating a TensorFlow graph using: ``` python mnist_eager.py ``` ## Experimental: TPU Acceleration `mnist.py` (and `mnist_eager.py`) demonstrate training a neural network to classify digits on CPUs and GPUs. `mnist_tpu.py` can be used to train the same model using TPUs for hardware acceleration. More information in the [tensorflow/tpu](https://github.com/tensorflow/tpu) repository. ================================================ FILE: official/mnist/__init__.py ================================================ ================================================ FILE: official/mnist/dataset.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """tf.data.Dataset interface to the MNIST dataset.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import gzip import os import shutil import tempfile import numpy as np from six.moves import urllib import tensorflow as tf def read32(bytestream): """Read 4 bytes from bytestream as an unsigned 32-bit integer.""" dt = np.dtype(np.uint32).newbyteorder('>') return np.frombuffer(bytestream.read(4), dtype=dt)[0] def check_image_file_header(filename): """Validate that filename corresponds to images for the MNIST dataset.""" with tf.gfile.Open(filename, 'rb') as f: magic = read32(f) read32(f) # num_images, unused rows = read32(f) cols = read32(f) if magic != 2051: raise ValueError('Invalid magic number %d in MNIST file %s' % (magic, f.name)) if rows != 28 or cols != 28: raise ValueError( 'Invalid MNIST file %s: Expected 28x28 images, found %dx%d' % (f.name, rows, cols)) def check_labels_file_header(filename): """Validate that filename corresponds to labels for the MNIST dataset.""" with tf.gfile.Open(filename, 'rb') as f: magic = read32(f) read32(f) # num_items, unused if magic != 2049: raise ValueError('Invalid magic number %d in MNIST file %s' % (magic, f.name)) def download(directory, filename): """Download (and unzip) a file from the MNIST dataset if not already done.""" filepath = os.path.join(directory, filename) if tf.gfile.Exists(filepath): return filepath if not tf.gfile.Exists(directory): tf.gfile.MakeDirs(directory) # CVDF mirror of http://yann.lecun.com/exdb/mnist/ url = 'https://storage.googleapis.com/cvdf-datasets/mnist/' + filename + '.gz' _, zipped_filepath = tempfile.mkstemp(suffix='.gz') print('Downloading %s to %s' % (url, zipped_filepath)) urllib.request.urlretrieve(url, zipped_filepath) with gzip.open(zipped_filepath, 'rb') as f_in, \ tf.gfile.Open(filepath, 'wb') as f_out: shutil.copyfileobj(f_in, f_out) os.remove(zipped_filepath) return filepath def dataset(directory, images_file, labels_file): """Download and parse MNIST dataset.""" images_file = download(directory, images_file) labels_file = download(directory, labels_file) check_image_file_header(images_file) check_labels_file_header(labels_file) def decode_image(image): # Normalize from [0, 255] to [0.0, 1.0] image = tf.decode_raw(image, tf.uint8) image = tf.cast(image, tf.float32) image = tf.reshape(image, [784]) return image / 255.0 def decode_label(label): label = tf.decode_raw(label, tf.uint8) # tf.string -> [tf.uint8] label = tf.reshape(label, []) # label is a scalar return tf.to_int32(label) images = tf.data.FixedLengthRecordDataset( images_file, 28 * 28, header_bytes=16).map(decode_image) labels = tf.data.FixedLengthRecordDataset( labels_file, 1, header_bytes=8).map(decode_label) return tf.data.Dataset.zip((images, labels)) def train(directory): """tf.data.Dataset object for MNIST training data.""" return dataset(directory, 'train-images-idx3-ubyte', 'train-labels-idx1-ubyte') def test(directory): """tf.data.Dataset object for MNIST test data.""" return dataset(directory, 't10k-images-idx3-ubyte', 't10k-labels-idx1-ubyte') ================================================ FILE: official/mnist/mnist.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Convolutional Neural Network Estimator for MNIST, built with tf.layers.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: disable=g-bad-import-order from official.mnist import dataset from official.utils.flags import core as flags_core from official.utils.logs import hooks_helper from official.utils.misc import model_helpers LEARNING_RATE = 1e-4 def create_model(data_format): """Model to recognize digits in the MNIST dataset. Network structure is equivalent to: https://github.com/tensorflow/tensorflow/blob/r1.5/tensorflow/examples/tutorials/mnist/mnist_deep.py and https://github.com/tensorflow/models/blob/master/tutorials/image/mnist/convolutional.py But uses the tf.keras API. Args: data_format: Either 'channels_first' or 'channels_last'. 'channels_first' is typically faster on GPUs while 'channels_last' is typically faster on CPUs. See https://www.tensorflow.org/performance/performance_guide#data_formats Returns: A tf.keras.Model. """ if data_format == 'channels_first': input_shape = [1, 28, 28] else: assert data_format == 'channels_last' input_shape = [28, 28, 1] l = tf.keras.layers max_pool = l.MaxPooling2D( (2, 2), (2, 2), padding='same', data_format=data_format) # The model consists of a sequential chain of layers, so tf.keras.Sequential # (a subclass of tf.keras.Model) makes for a compact description. return tf.keras.Sequential( [ l.Reshape( target_shape=input_shape, input_shape=(28 * 28,)), l.Conv2D( 32, 5, padding='same', data_format=data_format, activation=tf.nn.relu), max_pool, l.Conv2D( 64, 5, padding='same', data_format=data_format, activation=tf.nn.relu), max_pool, l.Flatten(), l.Dense(1024, activation=tf.nn.relu), l.Dropout(0.4), l.Dense(10) ]) def define_mnist_flags(): flags_core.define_base(multi_gpu=True, num_gpu=False) flags_core.define_image() flags.adopt_module_key_flags(flags_core) flags_core.set_defaults(data_dir='/tmp/mnist_data', model_dir='/tmp/mnist_model', batch_size=100, train_epochs=40) def model_fn(features, labels, mode, params): """The model_fn argument for creating an Estimator.""" model = create_model(params['data_format']) image = features if isinstance(image, dict): image = features['image'] if mode == tf.estimator.ModeKeys.PREDICT: logits = model(image, training=False) predictions = { 'classes': tf.argmax(logits, axis=1), 'probabilities': tf.nn.softmax(logits), } return tf.estimator.EstimatorSpec( mode=tf.estimator.ModeKeys.PREDICT, predictions=predictions, export_outputs={ 'classify': tf.estimator.export.PredictOutput(predictions) }) if mode == tf.estimator.ModeKeys.TRAIN: optimizer = tf.train.AdamOptimizer(learning_rate=LEARNING_RATE) # If we are running multi-GPU, we need to wrap the optimizer. if params.get('multi_gpu'): optimizer = tf.contrib.estimator.TowerOptimizer(optimizer) logits = model(image, training=True) loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits) accuracy = tf.metrics.accuracy( labels=labels, predictions=tf.argmax(logits, axis=1)) # Name tensors to be logged with LoggingTensorHook. tf.identity(LEARNING_RATE, 'learning_rate') tf.identity(loss, 'cross_entropy') tf.identity(accuracy[1], name='train_accuracy') # Save accuracy scalar to Tensorboard output. tf.summary.scalar('train_accuracy', accuracy[1]) return tf.estimator.EstimatorSpec( mode=tf.estimator.ModeKeys.TRAIN, loss=loss, train_op=optimizer.minimize(loss, tf.train.get_or_create_global_step())) if mode == tf.estimator.ModeKeys.EVAL: logits = model(image, training=False) loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits) return tf.estimator.EstimatorSpec( mode=tf.estimator.ModeKeys.EVAL, loss=loss, eval_metric_ops={ 'accuracy': tf.metrics.accuracy( labels=labels, predictions=tf.argmax(logits, axis=1)), }) def validate_batch_size_for_multi_gpu(batch_size): """For multi-gpu, batch-size must be a multiple of the number of GPUs. Note that this should eventually be handled by replicate_model_fn directly. Multi-GPU support is currently experimental, however, so doing the work here until that feature is in place. Args: batch_size: the number of examples processed in each training batch. Raises: ValueError: if no GPUs are found, or selected batch_size is invalid. """ from tensorflow.python.client import device_lib # pylint: disable=g-import-not-at-top local_device_protos = device_lib.list_local_devices() num_gpus = sum([1 for d in local_device_protos if d.device_type == 'GPU']) if not num_gpus: raise ValueError('Multi-GPU mode was specified, but no GPUs ' 'were found. To use CPU, run without --multi_gpu.') remainder = batch_size % num_gpus if remainder: err = ('When running with multiple GPUs, batch size ' 'must be a multiple of the number of available GPUs. ' 'Found {} GPUs with a batch size of {}; try --batch_size={} instead.' ).format(num_gpus, batch_size, batch_size - remainder) raise ValueError(err) def run_mnist(flags_obj): """Run MNIST training and eval loop. Args: flags_obj: An object containing parsed flag values. """ model_function = model_fn if flags_obj.multi_gpu: validate_batch_size_for_multi_gpu(flags_obj.batch_size) # There are two steps required if using multi-GPU: (1) wrap the model_fn, # and (2) wrap the optimizer. The first happens here, and (2) happens # in the model_fn itself when the optimizer is defined. model_function = tf.contrib.estimator.replicate_model_fn( model_fn, loss_reduction=tf.losses.Reduction.MEAN) data_format = flags_obj.data_format if data_format is None: data_format = ('channels_first' if tf.test.is_built_with_cuda() else 'channels_last') mnist_classifier = tf.estimator.Estimator( model_fn=model_function, model_dir=flags_obj.model_dir, params={ 'data_format': data_format, 'multi_gpu': flags_obj.multi_gpu }) # Set up training and evaluation input functions. def train_input_fn(): """Prepare data for training.""" # When choosing shuffle buffer sizes, larger sizes result in better # randomness, while smaller sizes use less memory. MNIST is a small # enough dataset that we can easily shuffle the full epoch. ds = dataset.train(flags_obj.data_dir) ds = ds.cache().shuffle(buffer_size=50000).batch(flags_obj.batch_size) # Iterate through the dataset a set number (`epochs_between_evals`) of times # during each training session. ds = ds.repeat(flags_obj.epochs_between_evals) return ds def eval_input_fn(): return dataset.test(flags_obj.data_dir).batch( flags_obj.batch_size).make_one_shot_iterator().get_next() # Set up hook that outputs training logs every 100 steps. train_hooks = hooks_helper.get_train_hooks( flags_obj.hooks, batch_size=flags_obj.batch_size) # Train and evaluate model. for _ in range(flags_obj.train_epochs // flags_obj.epochs_between_evals): mnist_classifier.train(input_fn=train_input_fn, hooks=train_hooks) eval_results = mnist_classifier.evaluate(input_fn=eval_input_fn) print('\nEvaluation results:\n\t%s\n' % eval_results) if model_helpers.past_stop_threshold(flags_obj.stop_threshold, eval_results['accuracy']): break # Export the model if flags_obj.export_dir is not None: image = tf.placeholder(tf.float32, [None, 28, 28]) input_fn = tf.estimator.export.build_raw_serving_input_receiver_fn({ 'image': image, }) mnist_classifier.export_savedmodel(flags_obj.export_dir, input_fn) def main(_): run_mnist(flags.FLAGS) if __name__ == '__main__': tf.logging.set_verbosity(tf.logging.INFO) define_mnist_flags() absl_app.run(main) ================================================ FILE: official/mnist/mnist_eager.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """MNIST model training with TensorFlow eager execution. See: https://research.googleblog.com/2017/10/eager-execution-imperative-define-by.html This program demonstrates training of the convolutional neural network model defined in mnist.py with eager execution enabled. If you are not interested in eager execution, you should ignore this file. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import time # pylint: disable=g-bad-import-order from absl import app as absl_app from absl import flags import tensorflow as tf import tensorflow.contrib.eager as tfe # pylint: enable=g-bad-import-order from official.mnist import dataset as mnist_dataset from official.mnist import mnist from official.utils.flags import core as flags_core def loss(logits, labels): return tf.reduce_mean( tf.nn.sparse_softmax_cross_entropy_with_logits( logits=logits, labels=labels)) def compute_accuracy(logits, labels): predictions = tf.argmax(logits, axis=1, output_type=tf.int64) labels = tf.cast(labels, tf.int64) batch_size = int(logits.shape[0]) return tf.reduce_sum( tf.cast(tf.equal(predictions, labels), dtype=tf.float32)) / batch_size def train(model, optimizer, dataset, step_counter, log_interval=None): """Trains model on `dataset` using `optimizer`.""" start = time.time() for (batch, (images, labels)) in enumerate(tfe.Iterator(dataset)): with tf.contrib.summary.record_summaries_every_n_global_steps( 10, global_step=step_counter): # Record the operations used to compute the loss given the input, # so that the gradient of the loss with respect to the variables # can be computed. with tf.GradientTape() as tape: logits = model(images, training=True) loss_value = loss(logits, labels) tf.contrib.summary.scalar('loss', loss_value) tf.contrib.summary.scalar('accuracy', compute_accuracy(logits, labels)) grads = tape.gradient(loss_value, model.variables) optimizer.apply_gradients( zip(grads, model.variables), global_step=step_counter) if log_interval and batch % log_interval == 0: rate = log_interval / (time.time() - start) print('Step #%d\tLoss: %.6f (%d steps/sec)' % (batch, loss_value, rate)) start = time.time() def test(model, dataset): """Perform an evaluation of `model` on the examples from `dataset`.""" avg_loss = tfe.metrics.Mean('loss') accuracy = tfe.metrics.Accuracy('accuracy') for (images, labels) in tfe.Iterator(dataset): logits = model(images, training=False) avg_loss(loss(logits, labels)) accuracy( tf.argmax(logits, axis=1, output_type=tf.int64), tf.cast(labels, tf.int64)) print('Test set: Average loss: %.4f, Accuracy: %4f%%\n' % (avg_loss.result(), 100 * accuracy.result())) with tf.contrib.summary.always_record_summaries(): tf.contrib.summary.scalar('loss', avg_loss.result()) tf.contrib.summary.scalar('accuracy', accuracy.result()) def run_mnist_eager(flags_obj): """Run MNIST training and eval loop in eager mode. Args: flags_obj: An object containing parsed flag values. """ tf.enable_eager_execution() # Automatically determine device and data_format (device, data_format) = ('/gpu:0', 'channels_first') if flags_obj.no_gpu or not tf.test.is_gpu_available(): (device, data_format) = ('/cpu:0', 'channels_last') # If data_format is defined in FLAGS, overwrite automatically set value. if flags_obj.data_format is not None: data_format = flags_obj.data_format print('Using device %s, and data format %s.' % (device, data_format)) # Load the datasets train_ds = mnist_dataset.train(flags_obj.data_dir).shuffle(60000).batch( flags_obj.batch_size) test_ds = mnist_dataset.test(flags_obj.data_dir).batch( flags_obj.batch_size) # Create the model and optimizer model = mnist.create_model(data_format) optimizer = tf.train.MomentumOptimizer(flags_obj.lr, flags_obj.momentum) # Create file writers for writing TensorBoard summaries. if flags_obj.output_dir: # Create directories to which summaries will be written # tensorboard --logdir= # can then be used to see the recorded summaries. train_dir = os.path.join(flags_obj.output_dir, 'train') test_dir = os.path.join(flags_obj.output_dir, 'eval') tf.gfile.MakeDirs(flags_obj.output_dir) else: train_dir = None test_dir = None summary_writer = tf.contrib.summary.create_file_writer( train_dir, flush_millis=10000) test_summary_writer = tf.contrib.summary.create_file_writer( test_dir, flush_millis=10000, name='test') # Create and restore checkpoint (if one exists on the path) checkpoint_prefix = os.path.join(flags_obj.model_dir, 'ckpt') step_counter = tf.train.get_or_create_global_step() checkpoint = tfe.Checkpoint( model=model, optimizer=optimizer, step_counter=step_counter) # Restore variables on creation if a checkpoint exists. checkpoint.restore(tf.train.latest_checkpoint(flags_obj.model_dir)) # Train and evaluate for a set number of epochs. with tf.device(device): for _ in range(flags_obj.train_epochs): start = time.time() with summary_writer.as_default(): train(model, optimizer, train_ds, step_counter, flags_obj.log_interval) end = time.time() print('\nTrain time for epoch #%d (%d total steps): %f' % (checkpoint.save_counter.numpy() + 1, step_counter.numpy(), end - start)) with test_summary_writer.as_default(): test(model, test_ds) checkpoint.save(checkpoint_prefix) def define_mnist_eager_flags(): """Defined flags and defaults for MNIST in eager mode.""" flags_core.define_base_eager() flags_core.define_image() flags.adopt_module_key_flags(flags_core) flags.DEFINE_integer( name='log_interval', short_name='li', default=10, help=flags_core.help_wrap('batches between logging training status')) flags.DEFINE_string( name='output_dir', short_name='od', default=None, help=flags_core.help_wrap('Directory to write TensorBoard summaries')) flags.DEFINE_float(name='learning_rate', short_name='lr', default=0.01, help=flags_core.help_wrap('Learning rate.')) flags.DEFINE_float(name='momentum', short_name='m', default=0.5, help=flags_core.help_wrap('SGD momentum.')) flags.DEFINE_bool(name='no_gpu', short_name='nogpu', default=False, help=flags_core.help_wrap( 'disables GPU usage even if a GPU is available')) flags_core.set_defaults( data_dir='/tmp/tensorflow/mnist/input_data', model_dir='/tmp/tensorflow/mnist/checkpoints/', batch_size=100, train_epochs=10, ) def main(_): run_mnist_eager(flags.FLAGS) if __name__ == '__main__': define_mnist_eager_flags() absl_app.run(main=main) ================================================ FILE: official/mnist/mnist_eager_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order import tensorflow.contrib.eager as tfe # pylint: disable=g-bad-import-order from official.mnist import mnist from official.mnist import mnist_eager def device(): return "/device:GPU:0" if tfe.num_gpus() else "/device:CPU:0" def data_format(): return "channels_first" if tfe.num_gpus() else "channels_last" def random_dataset(): batch_size = 64 images = tf.random_normal([batch_size, 784]) labels = tf.random_uniform([batch_size], minval=0, maxval=10, dtype=tf.int32) return tf.data.Dataset.from_tensors((images, labels)) def train(defun=False): model = mnist.create_model(data_format()) if defun: model.call = tfe.defun(model.call) optimizer = tf.train.GradientDescentOptimizer(learning_rate=0.01) dataset = random_dataset() with tf.device(device()): mnist_eager.train(model, optimizer, dataset, step_counter=tf.train.get_or_create_global_step()) def evaluate(defun=False): model = mnist.create_model(data_format()) dataset = random_dataset() if defun: model.call = tfe.defun(model.call) with tf.device(device()): mnist_eager.test(model, dataset) class MNISTTest(tf.test.TestCase): """Run tests for MNIST eager loop.""" def test_train(self): train(defun=False) def test_evaluate(self): evaluate(defun=False) def test_train_with_defun(self): train(defun=True) def test_evaluate_with_defun(self): evaluate(defun=True) if __name__ == "__main__": tfe.enable_eager_execution() tf.test.main() ================================================ FILE: official/mnist/mnist_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import time import tensorflow as tf # pylint: disable=g-bad-import-order from official.mnist import mnist BATCH_SIZE = 100 def dummy_input_fn(): image = tf.random_uniform([BATCH_SIZE, 784]) labels = tf.random_uniform([BATCH_SIZE, 1], maxval=9, dtype=tf.int32) return image, labels def make_estimator(): data_format = 'channels_last' if tf.test.is_built_with_cuda(): data_format = 'channels_first' return tf.estimator.Estimator( model_fn=mnist.model_fn, params={ 'data_format': data_format }) class Tests(tf.test.TestCase): """Run tests for MNIST model.""" def test_mnist(self): classifier = make_estimator() classifier.train(input_fn=dummy_input_fn, steps=2) eval_results = classifier.evaluate(input_fn=dummy_input_fn, steps=1) loss = eval_results['loss'] global_step = eval_results['global_step'] accuracy = eval_results['accuracy'] self.assertEqual(loss.shape, ()) self.assertEqual(2, global_step) self.assertEqual(accuracy.shape, ()) input_fn = lambda: tf.random_uniform([3, 784]) predictions_generator = classifier.predict(input_fn) for _ in range(3): predictions = next(predictions_generator) self.assertEqual(predictions['probabilities'].shape, (10,)) self.assertEqual(predictions['classes'].shape, ()) def mnist_model_fn_helper(self, mode, multi_gpu=False): features, labels = dummy_input_fn() image_count = features.shape[0] spec = mnist.model_fn(features, labels, mode, { 'data_format': 'channels_last', 'multi_gpu': multi_gpu }) if mode == tf.estimator.ModeKeys.PREDICT: predictions = spec.predictions self.assertAllEqual(predictions['probabilities'].shape, (image_count, 10)) self.assertEqual(predictions['probabilities'].dtype, tf.float32) self.assertAllEqual(predictions['classes'].shape, (image_count,)) self.assertEqual(predictions['classes'].dtype, tf.int64) if mode != tf.estimator.ModeKeys.PREDICT: loss = spec.loss self.assertAllEqual(loss.shape, ()) self.assertEqual(loss.dtype, tf.float32) if mode == tf.estimator.ModeKeys.EVAL: eval_metric_ops = spec.eval_metric_ops self.assertAllEqual(eval_metric_ops['accuracy'][0].shape, ()) self.assertAllEqual(eval_metric_ops['accuracy'][1].shape, ()) self.assertEqual(eval_metric_ops['accuracy'][0].dtype, tf.float32) self.assertEqual(eval_metric_ops['accuracy'][1].dtype, tf.float32) def test_mnist_model_fn_train_mode(self): self.mnist_model_fn_helper(tf.estimator.ModeKeys.TRAIN) def test_mnist_model_fn_train_mode_multi_gpu(self): self.mnist_model_fn_helper(tf.estimator.ModeKeys.TRAIN, multi_gpu=True) def test_mnist_model_fn_eval_mode(self): self.mnist_model_fn_helper(tf.estimator.ModeKeys.EVAL) def test_mnist_model_fn_predict_mode(self): self.mnist_model_fn_helper(tf.estimator.ModeKeys.PREDICT) class Benchmarks(tf.test.Benchmark): """Simple speed benchmarking for MNIST.""" def benchmark_train_step_time(self): classifier = make_estimator() # Run one step to warmup any use of the GPU. classifier.train(input_fn=dummy_input_fn, steps=1) have_gpu = tf.test.is_gpu_available() num_steps = 1000 if have_gpu else 100 name = 'train_step_time_%s' % ('gpu' if have_gpu else 'cpu') start = time.time() classifier.train(input_fn=dummy_input_fn, steps=num_steps) end = time.time() wall_time = (end - start) / num_steps self.report_benchmark( iters=num_steps, wall_time=wall_time, name=name, extras={ 'examples_per_sec': BATCH_SIZE / wall_time }) if __name__ == '__main__': tf.logging.set_verbosity(tf.logging.ERROR) tf.test.main() ================================================ FILE: official/mnist/mnist_tpu.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """MNIST model training using TPUs. This program demonstrates training of the convolutional neural network model defined in mnist.py on Google Cloud TPUs (https://cloud.google.com/tpu/). If you are not interested in TPUs, you should ignore this file. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import sys import tensorflow as tf # pylint: disable=g-bad-import-order # For open source environment, add grandparent directory for import sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(sys.path[0])))) from official.mnist import dataset # pylint: disable=wrong-import-position from official.mnist import mnist # pylint: disable=wrong-import-position # Cloud TPU Cluster Resolver flags tf.flags.DEFINE_string( "tpu", default=None, help="The Cloud TPU to use for training. This should be either the name " "used when creating the Cloud TPU, or a grpc://ip.address.of.tpu:8470 " "url.") tf.flags.DEFINE_string( "tpu_zone", default=None, help="[Optional] GCE zone where the Cloud TPU is located in. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string( "gcp_project", default=None, help="[Optional] Project name for the Cloud TPU-enabled project. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") # Model specific parameters tf.flags.DEFINE_string("data_dir", "", "Path to directory containing the MNIST dataset") tf.flags.DEFINE_string("model_dir", None, "Estimator model_dir") tf.flags.DEFINE_integer("batch_size", 1024, "Mini-batch size for the training. Note that this " "is the global batch size and not the per-shard batch.") tf.flags.DEFINE_integer("train_steps", 1000, "Total number of training steps.") tf.flags.DEFINE_integer("eval_steps", 0, "Total number of evaluation steps. If `0`, evaluation " "after training is skipped.") tf.flags.DEFINE_float("learning_rate", 0.05, "Learning rate.") tf.flags.DEFINE_bool("use_tpu", True, "Use TPUs rather than plain CPUs") tf.flags.DEFINE_integer("iterations", 50, "Number of iterations per TPU training loop.") tf.flags.DEFINE_integer("num_shards", 8, "Number of shards (TPU chips).") FLAGS = tf.flags.FLAGS def metric_fn(labels, logits): accuracy = tf.metrics.accuracy( labels=labels, predictions=tf.argmax(logits, axis=1)) return {"accuracy": accuracy} def model_fn(features, labels, mode, params): """model_fn constructs the ML model used to predict handwritten digits.""" del params if mode == tf.estimator.ModeKeys.PREDICT: raise RuntimeError("mode {} is not supported yet".format(mode)) image = features if isinstance(image, dict): image = features["image"] model = mnist.create_model("channels_last") logits = model(image, training=(mode == tf.estimator.ModeKeys.TRAIN)) loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits) if mode == tf.estimator.ModeKeys.TRAIN: learning_rate = tf.train.exponential_decay( FLAGS.learning_rate, tf.train.get_global_step(), decay_steps=100000, decay_rate=0.96) optimizer = tf.train.GradientDescentOptimizer(learning_rate=learning_rate) if FLAGS.use_tpu: optimizer = tf.contrib.tpu.CrossShardOptimizer(optimizer) return tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=loss, train_op=optimizer.minimize(loss, tf.train.get_global_step())) if mode == tf.estimator.ModeKeys.EVAL: return tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=loss, eval_metrics=(metric_fn, [labels, logits])) def train_input_fn(params): """train_input_fn defines the input pipeline used for training.""" batch_size = params["batch_size"] data_dir = params["data_dir"] # Retrieves the batch size for the current shard. The # of shards is # computed according to the input pipeline deployment. See # `tf.contrib.tpu.RunConfig` for details. ds = dataset.train(data_dir).cache().repeat().shuffle( buffer_size=50000).apply( tf.contrib.data.batch_and_drop_remainder(batch_size)) images, labels = ds.make_one_shot_iterator().get_next() return images, labels def eval_input_fn(params): batch_size = params["batch_size"] data_dir = params["data_dir"] ds = dataset.test(data_dir).apply( tf.contrib.data.batch_and_drop_remainder(batch_size)) images, labels = ds.make_one_shot_iterator().get_next() return images, labels def main(argv): del argv # Unused. tf.logging.set_verbosity(tf.logging.INFO) tpu_cluster_resolver = tf.contrib.cluster_resolver.TPUClusterResolver( FLAGS.tpu, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project ) run_config = tf.contrib.tpu.RunConfig( cluster=tpu_cluster_resolver, model_dir=FLAGS.model_dir, session_config=tf.ConfigProto( allow_soft_placement=True, log_device_placement=True), tpu_config=tf.contrib.tpu.TPUConfig(FLAGS.iterations, FLAGS.num_shards), ) estimator = tf.contrib.tpu.TPUEstimator( model_fn=model_fn, use_tpu=FLAGS.use_tpu, train_batch_size=FLAGS.batch_size, eval_batch_size=FLAGS.batch_size, params={"data_dir": FLAGS.data_dir}, config=run_config) # TPUEstimator.train *requires* a max_steps argument. estimator.train(input_fn=train_input_fn, max_steps=FLAGS.train_steps) # TPUEstimator.evaluate *requires* a steps argument. # Note that the number of examples used during evaluation is # --eval_steps * --batch_size. # So if you change --batch_size then change --eval_steps too. if FLAGS.eval_steps: estimator.evaluate(input_fn=eval_input_fn, steps=FLAGS.eval_steps) if __name__ == "__main__": tf.app.run() ================================================ FILE: official/recommendation/README.md ================================================ # Recommendation Model ## Overview This is an implementation of the Neural Collaborative Filtering (NCF) framework with Neural Matrix Factorization (NeuMF) model as described in the [Neural Collaborative Filtering](https://arxiv.org/abs/1708.05031) paper. Current implementation is based on the code from the authors' [NCF code](https://github.com/hexiangnan/neural_collaborative_filtering) and the Stanford implementation in the [MLPerf Repo](https://github.com/mlperf/reference/tree/master/recommendation/pytorch). NCF is a general framework for collaborative filtering of recommendations in which a neural network architecture is used to model user-item interactions. Unlike traditional models, NCF does not resort to Matrix Factorization (MF) with an inner product on latent features of users and items. It replaces the inner product with a multi-layer perceptron that can learn an arbitrary function from data. Two instantiations of NCF are Generalized Matrix Factorization (GMF) and Multi-Layer Perceptron (MLP). GMF applies a linear kernel to model the latent feature interactions, and and MLP uses a nonlinear kernel to learn the interaction function from data. NeuMF is a fused model of GMF and MLP to better model the complex user-item interactions, and unifies the strengths of linearity of MF and non-linearity of MLP for modeling the user-item latent structures. NeuMF allows GMF and MLP to learn separate embeddings, and combines the two models by concatenating their last hidden layer. [neumf_model.py](neumf_model.py) defines the architecture details. Some abbreviations used the code base include: - NCF: Neural Collaborative Filtering - NeuMF: Neural Matrix Factorization - GMF: Generalized Matrix Factorization - MLP: Multi-Layer Perceptron - HR: Hit Ratio (HR) - NDCG: Normalized Discounted Cumulative Gain - ml-1m: MovieLens 1 million dataset - ml-20m: MovieLens 20 million dataset ## Dataset The [MovieLens datasets](http://files.grouplens.org/datasets/movielens/) are used for model training and evaluation. Specifically, we use two datasets: **ml-1m** (short for MovieLens 1 million) and **ml-20m** (short for MovieLens 20 million). ### ml-1m ml-1m dataset contains 1,000,209 anonymous ratings of approximately 3,706 movies made by 6,040 users who joined MovieLens in 2000. All ratings are contained in the file "ratings.dat" without header row, and are in the following format: ``` UserID::MovieID::Rating::Timestamp ``` - UserIDs range between 1 and 6040. - MovieIDs range between 1 and 3952. - Ratings are made on a 5-star scale (whole-star ratings only). ### ml-20m ml-20m dataset contains 20,000,263 ratings of 26,744 movies by 138493 users. All ratings are contained in the file "ratings.csv". Each line of this file after the header row represents one rating of one movie by one user, and has the following format: ``` userId,movieId,rating,timestamp ``` - The lines within this file are ordered first by userId, then, within user, by movieId. - Ratings are made on a 5-star scale, with half-star increments (0.5 stars - 5.0 stars). In both datasets, the timestamp is represented in seconds since midnight Coordinated Universal Time (UTC) of January 1, 1970. Each user has at least 20 ratings. ## Running Code ### Download and preprocess dataset To download the dataset, please install Pandas package first. Then issue the following command: ``` python data_download.py ``` Arguments: * `--data_dir`: Directory where to download and save the preprocessed data. By default, it is `/tmp/movielens-data/`. * `--dataset`: The dataset name to be downloaded and preprocessed. By default, it is `ml-1m`. Use the `--help` or `-h` flag to get a full list of possible arguments. Note the ml-20m dataset is large (the rating file is ~500 MB), and it may take several minutes (~10 mins) for data preprocessing. ### Train and evaluate model To train and evaluate the model, issue the following command: ``` python ncf_main.py ``` Arguments: * `--model_dir`: Directory to save model training checkpoints. By default, it is `/tmp/ncf/`. * `--data_dir`: This should be set to the same directory given to the `data_download`'s `data_dir` argument. * `--dataset`: The dataset name to be downloaded and preprocessed. By default, it is `ml-1m`. There are other arguments about models and training process. Use the `--help` or `-h` flag to get a full list of possible arguments with detailed descriptions. ## Benchmarks (TODO) ### Training times ### Evaluation results ================================================ FILE: official/recommendation/__init__.py ================================================ ================================================ FILE: official/recommendation/constants.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """NCF Constants.""" TRAIN_RATINGS_FILENAME = 'train-ratings.csv' TEST_RATINGS_FILENAME = 'test-ratings.csv' TEST_NEG_FILENAME = 'test-negative.csv' USER = "user_id" ITEM = "item_id" RATING = "rating" ================================================ FILE: official/recommendation/data_download.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Download and extract the MovieLens dataset from GroupLens website. Download the dataset, and perform data-preprocessing to convert the raw dataset into csv file to be used in model training and evaluation. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import os import sys import time import zipfile # pylint: disable=g-bad-import-order import numpy as np import pandas as pd from six.moves import urllib # pylint: disable=redefined-builtin from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.recommendation import constants from official.utils.flags import core as flags_core # URL to download dataset _DATA_URL = "http://files.grouplens.org/datasets/movielens/" _USER_COLUMN = "user_id" _ITEM_COLUMN = "item_id" _RATING_COLUMN = "rating" _TIMESTAMP_COLUMN = "timestamp" # The number of negative examples attached with a positive example # in training dataset. It is set as 100 in the paper. _NUMBER_NEGATIVES = 100 # In both datasets, each user has at least 20 ratings. _MIN_NUM_RATINGS = 20 RatingData = collections.namedtuple( "RatingData", ["items", "users", "ratings", "min_date", "max_date"]) def _print_ratings_description(ratings): """Describe the rating dataset information. Args: ratings: A pandas DataFrame of the rating dataset. """ info = RatingData(items=len(ratings[_ITEM_COLUMN].unique()), users=len(ratings[_USER_COLUMN].unique()), ratings=len(ratings), min_date=ratings[_TIMESTAMP_COLUMN].min(), max_date=ratings[_TIMESTAMP_COLUMN].max()) tf.logging.info("{ratings} ratings on {items} items from {users} users" " from {min_date} to {max_date}".format(**(info._asdict()))) def process_movielens(ratings, sort=True): """Sort and convert timestamp of the MovieLens dataset. Args: ratings: A pandas DataFrame of the rating dataset. sort: A boolean to indicate whether to sort the data based on timestamp. Returns: ratings: The processed pandas DataFrame. """ ratings[_TIMESTAMP_COLUMN] = pd.to_datetime( ratings[_TIMESTAMP_COLUMN], unit="s") if sort: ratings.sort_values(by=_TIMESTAMP_COLUMN, inplace=True) _print_ratings_description(ratings) return ratings def load_movielens_1_million(file_name, sort=True): """Load the MovieLens 1 million dataset. The file has no header row, and each line is in the following format: UserID::MovieID::Rating::Timestamp - UserIDs range between 1 and 6040 - MovieIDs range between 1 and 3952 - Ratings are made on a 5-star scale (whole-star ratings only) - Timestamp is represented in seconds since midnight Coordinated Universal Time (UTC) of January 1, 1970. - Each user has at least 20 ratings Args: file_name: A string of the file name to be loaded. sort: A boolean to indicate whether to sort the data based on timestamp. Returns: A processed pandas DataFrame of the rating dataset. """ names = [_USER_COLUMN, _ITEM_COLUMN, _RATING_COLUMN, _TIMESTAMP_COLUMN] ratings = pd.read_csv(file_name, sep="::", names=names, engine="python") return process_movielens(ratings, sort=sort) def load_movielens_20_million(file_name, sort=True): """Load the MovieLens 20 million dataset. Each line of this file after the header row represents one rating of one movie by one user, and has the following format: userId,movieId,rating,timestamp - The lines within this file are ordered first by userId, then, within user, by movieId. - Ratings are made on a 5-star scale, with half-star increments (0.5 stars - 5.0 stars). - Timestamps represent seconds since midnight Coordinated Universal Time (UTC) of January 1, 1970. - All the users had rated at least 20 movies. Args: file_name: A string of the file name to be loaded. sort: A boolean to indicate whether to sort the data based on timestamp. Returns: A processed pandas DataFrame of the rating dataset. """ ratings = pd.read_csv(file_name) names = {"userId": _USER_COLUMN, "movieId": _ITEM_COLUMN} ratings.rename(columns=names, inplace=True) return process_movielens(ratings, sort=sort) def load_file_to_df(file_name, sort=True): """Load rating dataset into DataFrame. Two data loading functions are defined to handle dataset ml-1m and ml-20m, as they are provided with different formats. Args: file_name: A string of the file name to be loaded. sort: A boolean to indicate whether to sort the data based on timestamp. Returns: A pandas DataFrame of the rating dataset. """ dataset_name = os.path.basename(file_name).split(".")[0] # ml-1m with extension .dat file_extension = ".dat" func = load_movielens_1_million if dataset_name == "ml-20m": file_extension = ".csv" func = load_movielens_20_million ratings_file = os.path.join(file_name, "ratings" + file_extension) return func(ratings_file, sort=sort) def generate_train_eval_data(df, original_users, original_items): """Generate the dataset for model training and evaluation. Given all user and item interaction information, for each user, first sort the interactions based on timestamp. Then the latest one is taken out as Test ratings (leave-one-out evaluation) and the remaining data for training. The Test negatives are randomly sampled from all non-interacted items, and the number of Test negatives is 100 by default (defined as _NUMBER_NEGATIVES). Args: df: The DataFrame of ratings data. original_users: A list of the original unique user ids in the dataset. original_items: A list of the original unique item ids in the dataset. Returns: all_ratings: A list of the [user_id, item_id] with interactions. test_ratings: A list of [user_id, item_id], and each line is the latest user_item interaction for the user. test_negs: A list of item ids with shape [num_users, 100]. Each line consists of 100 item ids for the user with no interactions. """ # Need to sort before popping to get last item tf.logging.info("Sorting user_item_map by timestamp...") df.sort_values(by=_TIMESTAMP_COLUMN, inplace=True) all_ratings = set(zip(df[_USER_COLUMN], df[_ITEM_COLUMN])) user_to_items = collections.defaultdict(list) # Generate user_item rating matrix for training t1 = time.time() row_count = 0 for row in df.itertuples(): user_to_items[getattr(row, _USER_COLUMN)].append(getattr(row, _ITEM_COLUMN)) row_count += 1 if row_count % 50000 == 0: tf.logging.info("Processing user_to_items row: {}".format(row_count)) tf.logging.info( "Process {} rows in [{:.1f}]s".format(row_count, time.time() - t1)) # Generate test ratings and test negatives t2 = time.time() test_ratings = [] test_negs = [] # Generate the 0-based index for each item, and put it into a set all_items = set(range(len(original_items))) for user in range(len(original_users)): test_item = user_to_items[user].pop() # Get the latest item id all_ratings.remove((user, test_item)) # Remove the test item all_negs = all_items.difference(user_to_items[user]) all_negs = sorted(list(all_negs)) # determinism test_ratings.append((user, test_item)) test_negs.append(list(np.random.choice(all_negs, _NUMBER_NEGATIVES))) if user % 1000 == 0: tf.logging.info("Processing user: {}".format(user)) tf.logging.info("Process {} users in {:.1f}s".format( len(original_users), time.time() - t2)) all_ratings = list(all_ratings) # convert set to list return all_ratings, test_ratings, test_negs def parse_file_to_csv(data_dir, dataset_name): """Parse the raw data to csv file to be used in model training and evaluation. ml-1m dataset is small in size (~25M), while ml-20m is large (~500M). It may take several minutes to process ml-20m dataset. Args: data_dir: A string, the directory with the unzipped dataset. dataset_name: A string, the dataset name to be processed. """ # Use random seed as parameter np.random.seed(0) # Load the file as DataFrame file_path = os.path.join(data_dir, dataset_name) df = load_file_to_df(file_path, sort=False) # Get the info of users who have more than 20 ratings on items grouped = df.groupby(_USER_COLUMN) df = grouped.filter(lambda x: len(x) >= _MIN_NUM_RATINGS) original_users = df[_USER_COLUMN].unique() original_items = df[_ITEM_COLUMN].unique() # Map the ids of user and item to 0 based index for following processing tf.logging.info("Generating user_map and item_map...") user_map = {user: index for index, user in enumerate(original_users)} item_map = {item: index for index, item in enumerate(original_items)} df[_USER_COLUMN] = df[_USER_COLUMN].apply(lambda user: user_map[user]) df[_ITEM_COLUMN] = df[_ITEM_COLUMN].apply(lambda item: item_map[item]) assert df[_USER_COLUMN].max() == len(original_users) - 1 assert df[_ITEM_COLUMN].max() == len(original_items) - 1 # Generate data for train and test all_ratings, test_ratings, test_negs = generate_train_eval_data( df, original_users, original_items) # Serialize to csv file. Each csv file contains three columns # (user_id, item_id, interaction) # As there are only two fields (user_id, item_id) in all_ratings and # test_ratings, we need to add a fake rating to make three columns df_train_ratings = pd.DataFrame(all_ratings) df_train_ratings["fake_rating"] = 1 train_ratings_file = os.path.join( FLAGS.data_dir, dataset_name + "-" + constants.TRAIN_RATINGS_FILENAME) df_train_ratings.to_csv( train_ratings_file, index=False, header=False, sep="\t") tf.logging.info("Train ratings is {}".format(train_ratings_file)) df_test_ratings = pd.DataFrame(test_ratings) df_test_ratings["fake_rating"] = 1 test_ratings_file = os.path.join( FLAGS.data_dir, dataset_name + "-" + constants.TEST_RATINGS_FILENAME) df_test_ratings.to_csv( test_ratings_file, index=False, header=False, sep="\t") tf.logging.info("Test ratings is {}".format(test_ratings_file)) df_test_negs = pd.DataFrame(test_negs) test_negs_file = os.path.join( FLAGS.data_dir, dataset_name + "-" + constants.TEST_NEG_FILENAME) df_test_negs.to_csv( test_negs_file, index=False, header=False, sep="\t") tf.logging.info("Test negatives is {}".format(test_negs_file)) def make_dir(file_dir): if not tf.gfile.Exists(file_dir): tf.logging.info("Creating directory {}".format(file_dir)) tf.gfile.MakeDirs(file_dir) def main(_): """Download and extract the data from GroupLens website.""" tf.logging.set_verbosity(tf.logging.INFO) make_dir(FLAGS.data_dir) assert FLAGS.dataset, ( "Please specify which dataset to download. " "Two datasets are available: ml-1m and ml-20m.") # Download the zip dataset dataset_zip = FLAGS.dataset + ".zip" file_path = os.path.join(FLAGS.data_dir, dataset_zip) if not tf.gfile.Exists(file_path): def _progress(count, block_size, total_size): sys.stdout.write("\r>> Downloading {} {:.1f}%".format( file_path, 100.0 * count * block_size / total_size)) sys.stdout.flush() file_path, _ = urllib.request.urlretrieve( _DATA_URL + dataset_zip, file_path, _progress) statinfo = os.stat(file_path) # A new line to clear the carriage return from download progress # tf.logging.info is not applicable here print() tf.logging.info( "Successfully downloaded {} {} bytes".format( file_path, statinfo.st_size)) # Unzip the dataset if not tf.gfile.Exists(os.path.join(FLAGS.data_dir, FLAGS.dataset)): zipfile.ZipFile(file_path, "r").extractall(FLAGS.data_dir) # Preprocess and parse the dataset to csv train_ratings = FLAGS.dataset + "-" + constants.TRAIN_RATINGS_FILENAME if not tf.gfile.Exists(os.path.join(FLAGS.data_dir, train_ratings)): parse_file_to_csv(FLAGS.data_dir, FLAGS.dataset) def define_data_download_flags(): """Add flags specifying data download arguments.""" flags.DEFINE_string( name="data_dir", default="/tmp/movielens-data/", help=flags_core.help_wrap( "Directory to download and extract data.")) flags.DEFINE_enum( name="dataset", default=None, enum_values=["ml-1m", "ml-20m"], case_sensitive=False, help=flags_core.help_wrap( "Dataset to be trained and evaluated. Two datasets are available " ": ml-1m and ml-20m.")) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_data_download_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/recommendation/dataset.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Prepare dataset for NCF. Load the training dataset and evaluation dataset from csv file into memory. Prepare input for model training and evaluation. """ import numpy as np from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf from official.recommendation import constants # pylint: disable=g-bad-import-order # The buffer size for shuffling train dataset. _SHUFFLE_BUFFER_SIZE = 1024 class NCFDataSet(object): """A class containing data information for model training and evaluation.""" def __init__(self, train_data, num_users, num_items, num_negatives, true_items, all_items, all_eval_data): """Initialize NCFDataset class. Args: train_data: A list containing the positive training instances. num_users: An integer, the number of users in training dataset. num_items: An integer, the number of items in training dataset. num_negatives: An integer, the number of negative instances for each user in train dataset. true_items: A list, the ground truth (positive) items of users for evaluation. Each entry is a latest positive instance for one user. all_items: A nested list, all items for evaluation, and each entry is the evaluation items for one user. all_eval_data: A numpy array of eval/test dataset. """ self.train_data = train_data self.num_users = num_users self.num_items = num_items self.num_negatives = num_negatives self.eval_true_items = true_items self.eval_all_items = all_items self.all_eval_data = all_eval_data def load_data(file_name): """Load data from a csv file which splits on tab key.""" lines = tf.gfile.Open(file_name, "r").readlines() # Process the file line by line def _process_line(line): return [int(col) for col in line.split("\t")] data = [_process_line(line) for line in lines] return data def data_preprocessing(train_fname, test_fname, test_neg_fname, num_negatives): """Preprocess the train and test dataset. In data preprocessing, the training positive instances are loaded into memory for random negative instance generation in each training epoch. The test dataset are generated from test positive and negative instances. Args: train_fname: A string, the file name of training positive dataset. test_fname: A string, the file name of test positive dataset. Each user has one positive instance. test_neg_fname: A string, the file name of test negative dataset. Each user has 100 negative instances by default. num_negatives: An integer, the number of negative instances for each user in train dataset. Returns: ncf_dataset: A NCFDataset object containing information about training and evaluation/test dataset. """ # Load training positive instances into memory for later train data generation train_data = load_data(train_fname) # Get total number of users in the dataset num_users = len(np.unique(np.array(train_data)[:, 0])) # Process test dataset to csv file test_ratings = load_data(test_fname) test_negatives = load_data(test_neg_fname) # Get the total number of items in both train dataset and test dataset (the # whole dataset) num_items = len( set(np.array(train_data)[:, 1]) | set(np.array(test_ratings)[:, 1])) # Generate test instances for each user true_items, all_items = [], [] all_test_data = [] for idx in range(num_users): items = test_negatives[idx] rating = test_ratings[idx] user = rating[0] # User true_item = rating[1] # Positive item as ground truth # All items with first 100 as negative and last one positive items.append(true_item) users = np.full(len(items), user, dtype=np.int32) users_items = list(zip(users, items)) # User-item list true_items.append(true_item) # all ground truth items all_items.append(items) # All items (including positive and negative items) all_test_data.extend(users_items) # Generate test dataset # Create NCFDataset object ncf_dataset = NCFDataSet( train_data, num_users, num_items, num_negatives, true_items, all_items, np.asarray(all_test_data) ) return ncf_dataset def generate_train_dataset(train_data, num_items, num_negatives): """Generate train dataset for each epoch. Given positive training instances, randomly generate negative instances to form the training dataset. Args: train_data: A list of positive training instances. num_items: An integer, the number of items in positive training instances. num_negatives: An integer, the number of negative training instances following positive training instances. It is 4 by default. Returns: A numpy array of training dataset. """ all_train_data = [] # A set with user-item tuples train_data_set = set((u, i) for u, i, _ in train_data) for u, i, _ in train_data: # Positive instance all_train_data.append([u, i, 1]) # Negative instances, randomly generated for _ in xrange(num_negatives): j = np.random.randint(num_items) while (u, j) in train_data_set: j = np.random.randint(num_items) all_train_data.append([u, j, 0]) return np.asarray(all_train_data) def input_fn(training, batch_size, ncf_dataset, repeat=1): """Input function for model training and evaluation. The train input consists of 1 positive instance (user and item have interactions) followed by some number of negative instances in which the items are randomly chosen. The number of negative instances is "num_negatives" which is 4 by default. Note that for each epoch, we need to re-generate the negative instances. Together with positive instances, they form a new train dataset. Args: training: A boolean flag for training mode. batch_size: An integer, batch size for training and evaluation. ncf_dataset: An NCFDataSet object, which contains the information about training and test data. repeat: An integer, how many times to repeat the dataset. Returns: dataset: A tf.data.Dataset object containing examples loaded from the files. """ # Generate random negative instances for training in each epoch if training: train_data = generate_train_dataset( ncf_dataset.train_data, ncf_dataset.num_items, ncf_dataset.num_negatives) # Get train features and labels train_features = [ (constants.USER, np.expand_dims(train_data[:, 0], axis=1)), (constants.ITEM, np.expand_dims(train_data[:, 1], axis=1)) ] train_labels = [ (constants.RATING, np.expand_dims(train_data[:, 2], axis=1))] dataset = tf.data.Dataset.from_tensor_slices( (dict(train_features), dict(train_labels)) ) dataset = dataset.shuffle(buffer_size=_SHUFFLE_BUFFER_SIZE) else: # Create eval/test dataset test_user = ncf_dataset.all_eval_data[:, 0] test_item = ncf_dataset.all_eval_data[:, 1] test_features = [ (constants.USER, np.expand_dims(test_user, axis=1)), (constants.ITEM, np.expand_dims(test_item, axis=1))] dataset = tf.data.Dataset.from_tensor_slices(dict(test_features)) # Repeat and batch the dataset dataset = dataset.repeat(repeat) dataset = dataset.batch(batch_size) # Prefetch to improve speed of input pipeline. dataset = dataset.prefetch(1) return dataset ================================================ FILE: official/recommendation/dataset_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Unit tests for dataset.py.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import numpy as np import tensorflow as tf # pylint: disable=g-bad-import-order from official.recommendation import dataset _TRAIN_FNAME = os.path.join( os.path.dirname(__file__), "unittest_data/test_train_ratings.csv") _TEST_FNAME = os.path.join( os.path.dirname(__file__), "unittest_data/test_eval_ratings.csv") _TEST_NEG_FNAME = os.path.join( os.path.dirname(__file__), "unittest_data/test_eval_negative.csv") _NUM_NEG = 4 class DatasetTest(tf.test.TestCase): def test_load_data(self): data = dataset.load_data(_TEST_FNAME) self.assertEqual(len(data), 2) self.assertEqual(data[0][0], 0) self.assertEqual(data[0][2], 1) self.assertEqual(data[-1][0], 1) self.assertEqual(data[-1][2], 1) def test_data_preprocessing(self): ncf_dataset = dataset.data_preprocessing( _TRAIN_FNAME, _TEST_FNAME, _TEST_NEG_FNAME, _NUM_NEG) # Check train data preprocessing self.assertAllEqual(np.array(ncf_dataset.train_data)[:, 2], np.full(len(ncf_dataset.train_data), 1)) self.assertEqual(ncf_dataset.num_users, 2) self.assertEqual(ncf_dataset.num_items, 175) # Check test dataset test_dataset = ncf_dataset.all_eval_data first_true_item = test_dataset[100] self.assertEqual(first_true_item[1], ncf_dataset.eval_true_items[0]) self.assertEqual(first_true_item[1], ncf_dataset.eval_all_items[0][-1]) last_gt_item = test_dataset[-1] self.assertEqual(last_gt_item[1], ncf_dataset.eval_true_items[-1]) self.assertEqual(last_gt_item[1], ncf_dataset.eval_all_items[-1][-1]) test_list = test_dataset.tolist() first_test_items = [x[1] for x in test_list if x[0] == 0] self.assertAllEqual(first_test_items, ncf_dataset.eval_all_items[0]) last_test_items = [x[1] for x in test_list if x[0] == 1] self.assertAllEqual(last_test_items, ncf_dataset.eval_all_items[-1]) def test_generate_train_dataset(self): # Check train dataset ncf_dataset = dataset.data_preprocessing( _TRAIN_FNAME, _TEST_FNAME, _TEST_NEG_FNAME, _NUM_NEG) train_dataset = dataset.generate_train_dataset( ncf_dataset.train_data, ncf_dataset.num_items, _NUM_NEG) # Each user has 1 positive instance followed by _NUM_NEG negative instances train_data_0 = train_dataset[0] self.assertEqual(train_data_0[2], 1) for i in range(1, _NUM_NEG + 1): train_data = train_dataset[i] self.assertEqual(train_data_0[0], train_data[0]) self.assertNotEqual(train_data_0[1], train_data[1]) self.assertEqual(0, train_data[2]) train_data_last = train_dataset[-1 - _NUM_NEG] self.assertEqual(train_data_last[2], 1) for i in range(-1, -_NUM_NEG): train_data = train_dataset[i] self.assertEqual(train_data_last[0], train_data[0]) self.assertNotEqual(train_data_last[1], train_data[1]) self.assertEqual(0, train_data[2]) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/recommendation/ncf_main.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """NCF framework to train and evaluate the NeuMF model. The NeuMF model assembles both MF and MLP models under the NCF framework. Check `neumf_model.py` for more details about the models. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import heapq import math import os # pylint: disable=g-bad-import-order import numpy as np from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.recommendation import constants from official.recommendation import dataset from official.recommendation import neumf_model from official.utils.flags import core as flags_core from official.utils.logs import hooks_helper from official.utils.logs import logger from official.utils.misc import model_helpers _TOP_K = 10 # Top-k list for evaluation # keys for evaluation metrics _HR_KEY = "HR" _NDCG_KEY = "NDCG" def evaluate_model(estimator, batch_size, num_gpus, ncf_dataset): """Model evaluation with HR and NDCG metrics. The evaluation protocol is to rank the test interacted item (truth items) among the randomly chosen 100 items that are not interacted by the user. The performance of the ranked list is judged by Hit Ratio (HR) and Normalized Discounted Cumulative Gain (NDCG). For evaluation, the ranked list is truncated at 10 for both metrics. As such, the HR intuitively measures whether the test item is present on the top-10 list, and the NDCG accounts for the position of the hit by assigning higher scores to hits at top ranks. Both metrics are calculated for each test user, and the average scores are reported. Args: estimator: The Estimator. batch_size: An integer, the batch size specified by user. num_gpus: An integer, the number of gpus specified by user. ncf_dataset: An NCFDataSet object, which contains the information about test/eval dataset, such as: eval_true_items, which is a list of test items (true items) for HR and NDCG calculation. Each item is for one user. eval_all_items, which is a nested list. Each entry is the 101 items (1 ground truth item and 100 negative items) for one user. Returns: eval_results: A dict of evaluation results for benchmark logging. eval_results = { _HR_KEY: hr, _NDCG_KEY: ndcg, tf.GraphKeys.GLOBAL_STEP: global_step } where hr is an integer indicating the average HR scores across all users, ndcg is an integer representing the average NDCG scores across all users, and global_step is the global step """ # Define prediction input function def pred_input_fn(): return dataset.input_fn( False, per_device_batch_size(batch_size, num_gpus), ncf_dataset) # Get predictions predictions = estimator.predict(input_fn=pred_input_fn) all_predicted_scores = [p[constants.RATING] for p in predictions] # Calculate HR score def _get_hr(ranklist, true_item): return 1 if true_item in ranklist else 0 # Calculate NDCG score def _get_ndcg(ranklist, true_item): if true_item in ranklist: return math.log(2) / math.log(ranklist.index(true_item) + 2) return 0 hits, ndcgs = [], [] num_users = len(ncf_dataset.eval_true_items) # Reshape the predicted scores and each user takes one row predicted_scores_list = np.asarray( all_predicted_scores).reshape(num_users, -1) for i in range(num_users): items = ncf_dataset.eval_all_items[i] predicted_scores = predicted_scores_list[i] # Map item and score for each user map_item_score = {} for j, item in enumerate(items): score = predicted_scores[j] map_item_score[item] = score # Evaluate top rank list with HR and NDCG ranklist = heapq.nlargest(_TOP_K, map_item_score, key=map_item_score.get) true_item = ncf_dataset.eval_true_items[i] hr = _get_hr(ranklist, true_item) ndcg = _get_ndcg(ranklist, true_item) hits.append(hr) ndcgs.append(ndcg) # Get average HR and NDCG scores hr, ndcg = np.array(hits).mean(), np.array(ndcgs).mean() global_step = estimator.get_variable_value(tf.GraphKeys.GLOBAL_STEP) eval_results = { _HR_KEY: hr, _NDCG_KEY: ndcg, tf.GraphKeys.GLOBAL_STEP: global_step } return eval_results def convert_keras_to_estimator(keras_model, num_gpus, model_dir): """Configure and convert keras model to Estimator. Args: keras_model: A Keras model object. num_gpus: An integer, the number of gpus. model_dir: A string, the directory to save and restore checkpoints. Returns: est_model: The converted Estimator. """ # TODO(b/79866338): update GradientDescentOptimizer with AdamOptimizer optimizer = tf.train.GradientDescentOptimizer( learning_rate=FLAGS.learning_rate) keras_model.compile(optimizer=optimizer, loss="binary_crossentropy") if num_gpus == 0: distribution = tf.contrib.distribute.OneDeviceStrategy("device:CPU:0") elif num_gpus == 1: distribution = tf.contrib.distribute.OneDeviceStrategy("device:GPU:0") else: distribution = tf.contrib.distribute.MirroredStrategy(num_gpus=num_gpus) run_config = tf.estimator.RunConfig(train_distribute=distribution) estimator = tf.keras.estimator.model_to_estimator( keras_model=keras_model, model_dir=model_dir, config=run_config) return estimator def per_device_batch_size(batch_size, num_gpus): """For multi-gpu, batch-size must be a multiple of the number of GPUs. Note that this should eventually be handled by DistributionStrategies directly. Multi-GPU support is currently experimental, however, so doing the work here until that feature is in place. Args: batch_size: Global batch size to be divided among devices. This should be equal to num_gpus times the single-GPU batch_size for multi-gpu training. num_gpus: How many GPUs are used with DistributionStrategies. Returns: Batch size per device. Raises: ValueError: if batch_size is not divisible by number of devices """ if num_gpus <= 1: return batch_size remainder = batch_size % num_gpus if remainder: err = ("When running with multiple GPUs, batch size " "must be a multiple of the number of available GPUs. Found {} " "GPUs with a batch size of {}; try --batch_size={} instead." ).format(num_gpus, batch_size, batch_size - remainder) raise ValueError(err) return int(batch_size / num_gpus) def main(_): # Data preprocessing # The file name of training and test dataset train_fname = os.path.join( FLAGS.data_dir, FLAGS.dataset + "-" + constants.TRAIN_RATINGS_FILENAME) test_fname = os.path.join( FLAGS.data_dir, FLAGS.dataset + "-" + constants.TEST_RATINGS_FILENAME) neg_fname = os.path.join( FLAGS.data_dir, FLAGS.dataset + "-" + constants.TEST_NEG_FILENAME) assert os.path.exists(train_fname), ( "Run data_download.py first to download and extract {} dataset".format( FLAGS.dataset)) tf.logging.info("Data preprocessing...") ncf_dataset = dataset.data_preprocessing( train_fname, test_fname, neg_fname, FLAGS.num_neg) # Create NeuMF model and convert it to Estimator tf.logging.info("Creating Estimator from Keras model...") layers = [int(layer) for layer in FLAGS.layers] mlp_regularization = [float(reg) for reg in FLAGS.mlp_regularization] keras_model = neumf_model.NeuMF( ncf_dataset.num_users, ncf_dataset.num_items, FLAGS.num_factors, layers, FLAGS.batch_size, FLAGS.mf_regularization, mlp_regularization) num_gpus = flags_core.get_num_gpus(FLAGS) estimator = convert_keras_to_estimator(keras_model, num_gpus, FLAGS.model_dir) # Create hooks that log information about the training and metric values train_hooks = hooks_helper.get_train_hooks( FLAGS.hooks, batch_size=FLAGS.batch_size # for ExamplesPerSecondHook ) run_params = { "batch_size": FLAGS.batch_size, "number_factors": FLAGS.num_factors, "hr_threshold": FLAGS.hr_threshold, "train_epochs": FLAGS.train_epochs, } benchmark_logger = logger.config_benchmark_logger(FLAGS) benchmark_logger.log_run_info( model_name="recommendation", dataset_name=FLAGS.dataset, run_params=run_params) # Training and evaluation cycle def train_input_fn(): return dataset.input_fn( True, per_device_batch_size(FLAGS.batch_size, num_gpus), ncf_dataset, FLAGS.epochs_between_evals) total_training_cycle = FLAGS.train_epochs // FLAGS.epochs_between_evals for cycle_index in range(total_training_cycle): tf.logging.info("Starting a training cycle: {}/{}".format( cycle_index + 1, total_training_cycle)) # Train the model estimator.train(input_fn=train_input_fn, hooks=train_hooks) # Evaluate the model eval_results = evaluate_model( estimator, FLAGS.batch_size, num_gpus, ncf_dataset) # Benchmark the evaluation results benchmark_logger.log_evaluation_result(eval_results) # Log the HR and NDCG results. hr = eval_results[_HR_KEY] ndcg = eval_results[_NDCG_KEY] tf.logging.info( "Iteration {}: HR = {:.4f}, NDCG = {:.4f}".format( cycle_index + 1, hr, ndcg)) # If some evaluation threshold is met if model_helpers.past_stop_threshold(FLAGS.hr_threshold, hr): break # Clear the session explicitly to avoid session delete error tf.keras.backend.clear_session() def define_ncf_flags(): """Add flags for running ncf_main.""" # Add common flags flags_core.define_base(export_dir=False) flags_core.define_performance( num_parallel_calls=False, inter_op=False, intra_op=False, synthetic_data=False, max_train_steps=False, dtype=False ) flags_core.define_benchmark() flags.adopt_module_key_flags(flags_core) flags_core.set_defaults( model_dir="/tmp/ncf/", data_dir="/tmp/movielens-data/", train_epochs=2, batch_size=256, hooks="ProfilerHook") # Add ncf-specific flags flags.DEFINE_enum( name="dataset", default="ml-1m", enum_values=["ml-1m", "ml-20m"], case_sensitive=False, help=flags_core.help_wrap( "Dataset to be trained and evaluated.")) flags.DEFINE_integer( name="num_factors", default=8, help=flags_core.help_wrap("The Embedding size of MF model.")) # Set the default as a list of strings to be consistent with input arguments flags.DEFINE_list( name="layers", default=["64", "32", "16", "8"], help=flags_core.help_wrap( "The sizes of hidden layers for MLP. Example " "to specify different sizes of MLP layers: --layers=32,16,8,4")) flags.DEFINE_float( name="mf_regularization", default=0., help=flags_core.help_wrap( "The regularization factor for MF embeddings. The factor is used by " "regularizer which allows to apply penalties on layer parameters or " "layer activity during optimization.")) flags.DEFINE_list( name="mlp_regularization", default=["0.", "0.", "0.", "0."], help=flags_core.help_wrap( "The regularization factor for each MLP layer. See mf_regularization " "help for more info about regularization factor.")) flags.DEFINE_integer( name="num_neg", default=4, help=flags_core.help_wrap( "The Number of negative instances to pair with a positive instance.")) flags.DEFINE_float( name="learning_rate", default=0.001, help=flags_core.help_wrap("The learning rate.")) flags.DEFINE_float( name="hr_threshold", default=None, help=flags_core.help_wrap( "If passed, training will stop when the evaluation metric HR is " "greater than or equal to hr_threshold. For dataset ml-1m, the " "desired hr_threshold is 0.68 which is the result from the paper; " "For dataset ml-20m, the threshold can be set as 0.95 which is " "achieved by MLPerf implementation.")) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_ncf_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/recommendation/neumf_model.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Defines NeuMF model for NCF framework. Some abbreviations used in the code base: NeuMF: Neural Matrix Factorization NCF: Neural Collaborative Filtering GMF: Generalized Matrix Factorization MLP: Multi-Layer Perceptron GMF applies a linear kernel to model the latent feature interactions, and MLP uses a nonlinear kernel to learn the interaction function from data. NeuMF model is a fused model of GMF and MLP to better model the complex user-item interactions, and unifies the strengths of linearity of MF and non-linearity of MLP for modeling the user-item latent structures. In NeuMF model, it allows GMF and MLP to learn separate embeddings, and combine the two models by concatenating their last hidden layer. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf from official.recommendation import constants # pylint: disable=g-bad-import-order class NeuMF(tf.keras.models.Model): """Neural matrix factorization (NeuMF) model for recommendations.""" def __init__(self, num_users, num_items, mf_dim, model_layers, batch_size, mf_regularization, mlp_reg_layers): """Initialize NeuMF model. Args: num_users: An integer, the number of users. num_items: An integer, the number of items. mf_dim: An integer, the embedding size of Matrix Factorization (MF) model. model_layers: A list of integers for Multi-Layer Perceptron (MLP) layers. Note that the first layer is the concatenation of user and item embeddings. So model_layers[0]//2 is the embedding size for MLP. batch_size: An integer for the batch size. mf_regularization: A floating number, the regularization factor for MF embeddings. mlp_reg_layers: A list of floating numbers, the regularization factors for each layer in MLP. Raises: ValueError: if the first model layer is not even. """ if model_layers[0] % 2 != 0: raise ValueError("The first layer size should be multiple of 2!") # Input variables user_input = tf.keras.layers.Input( shape=(1,), dtype=tf.int32, name=constants.USER) item_input = tf.keras.layers.Input( shape=(1,), dtype=tf.int32, name=constants.ITEM) # Initializer for embedding layer embedding_initializer = tf.keras.initializers.RandomNormal(stddev=0.01) # Embedding layers of GMF and MLP mf_embedding_user = tf.keras.layers.Embedding( num_users, mf_dim, embeddings_initializer=embedding_initializer, embeddings_regularizer=tf.keras.regularizers.l2(mf_regularization), input_length=1) mf_embedding_item = tf.keras.layers.Embedding( num_items, mf_dim, embeddings_initializer=embedding_initializer, embeddings_regularizer=tf.keras.regularizers.l2(mf_regularization), input_length=1) mlp_embedding_user = tf.keras.layers.Embedding( num_users, model_layers[0]//2, embeddings_initializer=embedding_initializer, embeddings_regularizer=tf.keras.regularizers.l2(mlp_reg_layers[0]), input_length=1) mlp_embedding_item = tf.keras.layers.Embedding( num_items, model_layers[0]//2, embeddings_initializer=embedding_initializer, embeddings_regularizer=tf.keras.regularizers.l2(mlp_reg_layers[0]), input_length=1) # GMF part # Flatten the embedding vector as latent features in GMF mf_user_latent = tf.keras.layers.Flatten()(mf_embedding_user(user_input)) mf_item_latent = tf.keras.layers.Flatten()(mf_embedding_item(item_input)) # Element-wise multiply mf_vector = tf.keras.layers.multiply([mf_user_latent, mf_item_latent]) # MLP part # Flatten the embedding vector as latent features in MLP mlp_user_latent = tf.keras.layers.Flatten()(mlp_embedding_user(user_input)) mlp_item_latent = tf.keras.layers.Flatten()(mlp_embedding_item(item_input)) # Concatenation of two latent features mlp_vector = tf.keras.layers.concatenate([mlp_user_latent, mlp_item_latent]) num_layer = len(model_layers) # Number of layers in the MLP for layer in xrange(1, num_layer): model_layer = tf.keras.layers.Dense( model_layers[layer], kernel_regularizer=tf.keras.regularizers.l2(mlp_reg_layers[layer]), activation="relu") mlp_vector = model_layer(mlp_vector) # Concatenate GMF and MLP parts predict_vector = tf.keras.layers.concatenate([mf_vector, mlp_vector]) # Final prediction layer prediction = tf.keras.layers.Dense( 1, activation="sigmoid", kernel_initializer="lecun_uniform", name=constants.RATING)(predict_vector) super(NeuMF, self).__init__( inputs=[user_input, item_input], outputs=prediction) ================================================ FILE: official/recommendation/unittest_data/test_eval_negative.csv ================================================ 2784 2659 1705 3316 887 815 1783 3483 1085 329 1830 1880 2699 3194 3596 2700 3520 2414 757 3610 2651 2187 2274 2949 1753 589 2945 2172 2877 1992 2215 1028 807 2098 1923 3555 2548 2950 151 2060 3301 807 849 711 3271 3010 475 3412 3389 2797 691 596 2643 766 2344 203 2775 2610 3583 2982 1259 2128 854 2228 2228 2008 3177 1977 3674 3612 808 325 2435 440 1693 3166 1518 2643 940 309 1397 2157 2391 3243 2879 482 3206 143 1972 2498 2711 1641 3008 2733 136 2303 376 826 3064 1123 767 2164 1283 1100 3044 1332 2152 1295 1812 3427 3130 2967 2895 3085 501 2005 688 1457 1733 2345 1827 1600 3295 3397 384 2033 1444 2082 944 2563 1762 1101 496 2151 3093 329 2559 1664 2058 2546 683 1082 3583 2199 1851 258 2553 2274 1059 2910 2299 2115 2770 2094 2915 3348 337 2738 1563 2958 3241 3258 2881 3236 2954 214 3243 1000 2187 2946 435 1232 2208 1334 1280 2982 403 1326 1706 1523 1336 2620 2664 2462 1432 765 898 222 3426 2027 3469 2032 2472 1480 3219 735 1562 2626 1400 308 ================================================ FILE: official/recommendation/unittest_data/test_eval_ratings.csv ================================================ 0 25 1 1 66 1 ================================================ FILE: official/recommendation/unittest_data/test_train_ratings.csv ================================================ 0 21 1 0 41 1 0 8 1 0 23 1 0 43 1 0 10 1 0 45 1 0 12 1 0 47 1 0 14 1 0 33 1 0 0 1 0 35 1 0 2 1 0 37 1 0 4 1 0 39 1 0 6 1 0 24 1 0 26 1 0 28 1 0 30 1 0 49 1 0 16 1 0 51 1 0 18 1 0 20 1 0 40 1 0 22 1 0 42 1 0 9 1 0 44 1 0 11 1 0 46 1 0 13 1 0 32 1 0 15 1 0 34 1 0 1 1 0 36 1 0 3 1 0 38 1 0 5 1 0 7 1 0 27 1 0 29 1 0 48 1 0 31 1 0 50 1 0 17 1 0 52 1 0 19 1 1 146 1 1 61 1 1 127 1 1 88 1 1 144 1 1 125 1 1 94 1 1 150 1 1 18 1 1 115 1 1 92 1 1 170 1 1 139 1 1 148 1 1 55 1 1 113 1 1 82 1 1 168 1 1 137 1 1 53 1 1 119 1 1 80 1 1 174 1 1 143 1 1 42 1 1 20 1 1 117 1 1 86 1 1 172 1 1 141 1 1 106 1 1 75 1 1 84 1 1 162 1 1 131 1 1 104 1 1 73 1 1 160 1 1 129 1 1 110 1 1 79 1 1 166 1 1 135 1 1 108 1 1 77 1 1 164 1 1 133 1 1 98 1 1 67 1 1 155 1 1 96 1 1 65 1 1 153 1 1 102 1 1 71 1 1 159 1 1 58 1 1 100 1 1 69 1 1 157 1 1 56 1 1 122 1 1 91 1 1 147 1 1 62 1 1 120 1 1 89 1 1 145 1 1 60 1 1 126 1 1 95 1 1 151 1 1 124 1 1 93 1 1 171 1 1 149 1 1 48 1 1 114 1 1 83 1 1 169 1 1 138 1 1 54 1 1 112 1 1 81 1 1 136 1 1 52 1 1 118 1 1 87 1 1 173 1 1 142 1 1 107 1 1 116 1 1 85 1 1 163 1 1 140 1 1 47 1 1 105 1 1 74 1 1 161 1 1 130 1 1 111 1 1 72 1 1 167 1 1 128 1 1 109 1 1 78 1 1 165 1 1 134 1 1 99 1 1 76 1 1 132 1 1 0 1 1 97 1 1 154 1 1 103 1 1 64 1 1 152 1 1 59 1 1 101 1 1 70 1 1 158 1 1 57 1 1 123 1 1 68 1 1 156 1 1 63 1 1 121 1 1 90 1 ================================================ FILE: official/resnet/README.md ================================================ # ResNet in TensorFlow Deep residual networks, or ResNets for short, provided the breakthrough idea of identity mappings in order to enable training of very deep convolutional neural networks. This folder contains an implementation of ResNet for the ImageNet dataset written in TensorFlow. See the following papers for more background: [1] [Deep Residual Learning for Image Recognition](https://arxiv.org/pdf/1512.03385.pdf) by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Dec 2015. [2] [Identity Mappings in Deep Residual Networks](https://arxiv.org/pdf/1603.05027.pdf) by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Jul 2016. In code v1 refers to the resnet defined in [1], while v2 correspondingly refers to [2]. The principle difference between the two versions is that v1 applies batch normalization and activation after convolution, while v2 applies batch normalization, then activation, and finally convolution. A schematic comparison is presented in Figure 1 (left) of [2]. Please proceed according to which dataset you would like to train/evaluate on: ## CIFAR-10 ### Setup You simply need to have the latest version of TensorFlow installed. First make sure you've [added the models folder to your Python path](/official/#running-the-models); otherwise you may encounter an error like `ImportError: No module named official.resnet`. Then download and extract the CIFAR-10 data from Alex's website, specifying the location with the `--data_dir` flag. Run the following: ``` python cifar10_download_and_extract.py ``` Then to train the model, run the following: ``` python cifar10_main.py ``` Use `--data_dir` to specify the location of the CIFAR-10 data used in the previous step. There are more flag options as described in `cifar10_main.py`. ## ImageNet ### Setup To begin, you will need to download the ImageNet dataset and convert it to TFRecord format. Follow along with the [Inception guide](https://github.com/tensorflow/models/tree/master/research/inception#getting-started) in order to prepare the dataset. Once your dataset is ready, you can begin training the model as follows: ``` python imagenet_main.py --data_dir=/path/to/imagenet ``` The model will begin training and will automatically evaluate itself on the validation data roughly once per epoch. Note that there are a number of other options you can specify, including `--model_dir` to choose where to store the model and `--resnet_size` to choose the model size (options include ResNet-18 through ResNet-200). See [`resnet.py`](resnet.py) for the full list of options. ## Compute Devices Training is accomplished using the DistributionStrategies API. (https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/distribute/README.md) The appropriate distribution strategy is chosen based on the `--num_gpus` flag. By default this flag is one if TensorFlow is compiled with CUDA, and zero otherwise. num_gpus: + 0: Use OneDeviceStrategy and train on CPU. + 1: Use OneDeviceStrategy and train on GPU. + 2+: Use MirroredStrategy (data parallelism) to distribute a batch between devices. ================================================ FILE: official/resnet/__init__.py ================================================ ================================================ FILE: official/resnet/cifar10_download_and_extract.py ================================================ # Copyright 2015 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Downloads and extracts the binary version of the CIFAR-10 dataset.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import sys import tarfile from six.moves import urllib import tensorflow as tf DATA_URL = 'https://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz' parser = argparse.ArgumentParser() parser.add_argument( '--data_dir', type=str, default='/tmp/cifar10_data', help='Directory to download data and extract the tarball') def main(_): """Download and extract the tarball from Alex's website.""" if not os.path.exists(FLAGS.data_dir): os.makedirs(FLAGS.data_dir) filename = DATA_URL.split('/')[-1] filepath = os.path.join(FLAGS.data_dir, filename) if not os.path.exists(filepath): def _progress(count, block_size, total_size): sys.stdout.write('\r>> Downloading %s %.1f%%' % ( filename, 100.0 * count * block_size / total_size)) sys.stdout.flush() filepath, _ = urllib.request.urlretrieve(DATA_URL, filepath, _progress) print() statinfo = os.stat(filepath) print('Successfully downloaded', filename, statinfo.st_size, 'bytes.') tarfile.open(filepath, 'r:gz').extractall(FLAGS.data_dir) if __name__ == '__main__': FLAGS, unparsed = parser.parse_known_args() tf.app.run(argv=[sys.argv[0]] + unparsed) ================================================ FILE: official/resnet/cifar10_main.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Runs a ResNet model on the CIFAR-10 dataset.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.flags import core as flags_core from official.resnet import resnet_model from official.resnet import resnet_run_loop _HEIGHT = 32 _WIDTH = 32 _NUM_CHANNELS = 3 _DEFAULT_IMAGE_BYTES = _HEIGHT * _WIDTH * _NUM_CHANNELS # The record is the image plus a one-byte label _RECORD_BYTES = _DEFAULT_IMAGE_BYTES + 1 _NUM_CLASSES = 10 _NUM_DATA_FILES = 5 _NUM_IMAGES = { 'train': 50000, 'validation': 10000, } DATASET_NAME = 'CIFAR-10' ############################################################################### # Data processing ############################################################################### def get_filenames(is_training, data_dir): """Returns a list of filenames.""" data_dir = os.path.join(data_dir, 'cifar-10-batches-bin') assert os.path.exists(data_dir), ( 'Run cifar10_download_and_extract.py first to download and extract the ' 'CIFAR-10 data.') if is_training: return [ os.path.join(data_dir, 'data_batch_%d.bin' % i) for i in range(1, _NUM_DATA_FILES + 1) ] else: return [os.path.join(data_dir, 'test_batch.bin')] def parse_record(raw_record, is_training): """Parse CIFAR-10 image and label from a raw record.""" # Convert bytes to a vector of uint8 that is record_bytes long. record_vector = tf.decode_raw(raw_record, tf.uint8) # The first byte represents the label, which we convert from uint8 to int32 # and then to one-hot. label = tf.cast(record_vector[0], tf.int32) # The remaining bytes after the label represent the image, which we reshape # from [depth * height * width] to [depth, height, width]. depth_major = tf.reshape(record_vector[1:_RECORD_BYTES], [_NUM_CHANNELS, _HEIGHT, _WIDTH]) # Convert from [depth, height, width] to [height, width, depth], and cast as # float32. image = tf.cast(tf.transpose(depth_major, [1, 2, 0]), tf.float32) image = preprocess_image(image, is_training) return image, label def preprocess_image(image, is_training): """Preprocess a single image of layout [height, width, depth].""" if is_training: # Resize the image to add four extra pixels on each side. image = tf.image.resize_image_with_crop_or_pad( image, _HEIGHT + 8, _WIDTH + 8) # Randomly crop a [_HEIGHT, _WIDTH] section of the image. image = tf.random_crop(image, [_HEIGHT, _WIDTH, _NUM_CHANNELS]) # Randomly flip the image horizontally. image = tf.image.random_flip_left_right(image) # Subtract off the mean and divide by the variance of the pixels. image = tf.image.per_image_standardization(image) return image def input_fn(is_training, data_dir, batch_size, num_epochs=1): """Input_fn using the tf.data input pipeline for CIFAR-10 dataset. Args: is_training: A boolean denoting whether the input is for training. data_dir: The directory containing the input data. batch_size: The number of samples per batch. num_epochs: The number of epochs to repeat the dataset. Returns: A dataset that can be used for iteration. """ filenames = get_filenames(is_training, data_dir) dataset = tf.data.FixedLengthRecordDataset(filenames, _RECORD_BYTES) return resnet_run_loop.process_record_dataset( dataset, is_training, batch_size, _NUM_IMAGES['train'], parse_record, num_epochs, ) def get_synth_input_fn(): return resnet_run_loop.get_synth_input_fn( _HEIGHT, _WIDTH, _NUM_CHANNELS, _NUM_CLASSES) ############################################################################### # Running the model ############################################################################### class Cifar10Model(resnet_model.Model): """Model class with appropriate defaults for CIFAR-10 data.""" def __init__(self, resnet_size, data_format=None, num_classes=_NUM_CLASSES, resnet_version=resnet_model.DEFAULT_VERSION, dtype=resnet_model.DEFAULT_DTYPE): """These are the parameters that work for CIFAR-10 data. Args: resnet_size: The number of convolutional layers needed in the model. data_format: Either 'channels_first' or 'channels_last', specifying which data format to use when setting up the model. num_classes: The number of output classes needed from the model. This enables users to extend the same model to their own datasets. resnet_version: Integer representing which version of the ResNet network to use. See README for details. Valid values: [1, 2] dtype: The TensorFlow dtype to use for calculations. Raises: ValueError: if invalid resnet_size is chosen """ if resnet_size % 6 != 2: raise ValueError('resnet_size must be 6n + 2:', resnet_size) num_blocks = (resnet_size - 2) // 6 super(Cifar10Model, self).__init__( resnet_size=resnet_size, bottleneck=False, num_classes=num_classes, num_filters=16, kernel_size=3, conv_stride=1, first_pool_size=None, first_pool_stride=None, block_sizes=[num_blocks] * 3, block_strides=[1, 2, 2], final_size=64, resnet_version=resnet_version, data_format=data_format, dtype=dtype ) def cifar10_model_fn(features, labels, mode, params): """Model function for CIFAR-10.""" features = tf.reshape(features, [-1, _HEIGHT, _WIDTH, _NUM_CHANNELS]) learning_rate_fn = resnet_run_loop.learning_rate_with_decay( batch_size=params['batch_size'], batch_denom=128, num_images=_NUM_IMAGES['train'], boundary_epochs=[100, 150, 200], decay_rates=[1, 0.1, 0.01, 0.001]) # We use a weight decay of 0.0002, which performs better # than the 0.0001 that was originally suggested. weight_decay = 2e-4 # Empirical testing showed that including batch_normalization variables # in the calculation of regularized loss helped validation accuracy # for the CIFAR-10 dataset, perhaps because the regularization prevents # overfitting on the small data set. We therefore include all vars when # regularizing and computing loss during training. def loss_filter_fn(_): return True return resnet_run_loop.resnet_model_fn( features=features, labels=labels, mode=mode, model_class=Cifar10Model, resnet_size=params['resnet_size'], weight_decay=weight_decay, learning_rate_fn=learning_rate_fn, momentum=0.9, data_format=params['data_format'], resnet_version=params['resnet_version'], loss_scale=params['loss_scale'], loss_filter_fn=loss_filter_fn, dtype=params['dtype'] ) def define_cifar_flags(): resnet_run_loop.define_resnet_flags() flags.adopt_module_key_flags(resnet_run_loop) flags_core.set_defaults(data_dir='/tmp/cifar10_data', model_dir='/tmp/cifar10_model', resnet_size='32', train_epochs=250, epochs_between_evals=10, batch_size=128) def run_cifar(flags_obj): """Run ResNet CIFAR-10 training and eval loop. Args: flags_obj: An object containing parsed flag values. """ input_function = (flags_obj.use_synthetic_data and get_synth_input_fn() or input_fn) resnet_run_loop.resnet_main( flags_obj, cifar10_model_fn, input_function, DATASET_NAME, shape=[_HEIGHT, _WIDTH, _NUM_CHANNELS]) def main(_): run_cifar(flags.FLAGS) if __name__ == '__main__': tf.logging.set_verbosity(tf.logging.INFO) define_cifar_flags() absl_app.run(main) ================================================ FILE: official/resnet/cifar10_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from tempfile import mkstemp import numpy as np import tensorflow as tf # pylint: disable=g-bad-import-order from official.resnet import cifar10_main from official.utils.testing import integration tf.logging.set_verbosity(tf.logging.ERROR) _BATCH_SIZE = 128 _HEIGHT = 32 _WIDTH = 32 _NUM_CHANNELS = 3 class BaseTest(tf.test.TestCase): """Tests for the Cifar10 version of Resnet. """ @classmethod def setUpClass(cls): # pylint: disable=invalid-name super(BaseTest, cls).setUpClass() cifar10_main.define_cifar_flags() def tearDown(self): super(BaseTest, self).tearDown() tf.gfile.DeleteRecursively(self.get_temp_dir()) def test_dataset_input_fn(self): fake_data = bytearray() fake_data.append(7) for i in range(_NUM_CHANNELS): for _ in range(_HEIGHT * _WIDTH): fake_data.append(i) _, filename = mkstemp(dir=self.get_temp_dir()) data_file = open(filename, 'wb') data_file.write(fake_data) data_file.close() fake_dataset = tf.data.FixedLengthRecordDataset( filename, cifar10_main._RECORD_BYTES) # pylint: disable=protected-access fake_dataset = fake_dataset.map( lambda val: cifar10_main.parse_record(val, False)) image, label = fake_dataset.make_one_shot_iterator().get_next() self.assertAllEqual(label.shape, ()) self.assertAllEqual(image.shape, (_HEIGHT, _WIDTH, _NUM_CHANNELS)) with self.test_session() as sess: image, label = sess.run([image, label]) self.assertEqual(label, 7) for row in image: for pixel in row: self.assertAllClose(pixel, np.array([-1.225, 0., 1.225]), rtol=1e-3) def cifar10_model_fn_helper(self, mode, resnet_version, dtype): input_fn = cifar10_main.get_synth_input_fn() dataset = input_fn(True, '', _BATCH_SIZE) iterator = dataset.make_one_shot_iterator() features, labels = iterator.get_next() spec = cifar10_main.cifar10_model_fn( features, labels, mode, { 'dtype': dtype, 'resnet_size': 32, 'data_format': 'channels_last', 'batch_size': _BATCH_SIZE, 'resnet_version': resnet_version, 'loss_scale': 128 if dtype == tf.float16 else 1, }) predictions = spec.predictions self.assertAllEqual(predictions['probabilities'].shape, (_BATCH_SIZE, 10)) self.assertEqual(predictions['probabilities'].dtype, tf.float32) self.assertAllEqual(predictions['classes'].shape, (_BATCH_SIZE,)) self.assertEqual(predictions['classes'].dtype, tf.int64) if mode != tf.estimator.ModeKeys.PREDICT: loss = spec.loss self.assertAllEqual(loss.shape, ()) self.assertEqual(loss.dtype, tf.float32) if mode == tf.estimator.ModeKeys.EVAL: eval_metric_ops = spec.eval_metric_ops self.assertAllEqual(eval_metric_ops['accuracy'][0].shape, ()) self.assertAllEqual(eval_metric_ops['accuracy'][1].shape, ()) self.assertEqual(eval_metric_ops['accuracy'][0].dtype, tf.float32) self.assertEqual(eval_metric_ops['accuracy'][1].dtype, tf.float32) def test_cifar10_model_fn_train_mode_v1(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.TRAIN, resnet_version=1, dtype=tf.float32) def test_cifar10_model_fn_trainmode__v2(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.TRAIN, resnet_version=2, dtype=tf.float32) def test_cifar10_model_fn_eval_mode_v1(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.EVAL, resnet_version=1, dtype=tf.float32) def test_cifar10_model_fn_eval_mode_v2(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.EVAL, resnet_version=2, dtype=tf.float32) def test_cifar10_model_fn_predict_mode_v1(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.PREDICT, resnet_version=1, dtype=tf.float32) def test_cifar10_model_fn_predict_mode_v2(self): self.cifar10_model_fn_helper(tf.estimator.ModeKeys.PREDICT, resnet_version=2, dtype=tf.float32) def _test_cifar10model_shape(self, resnet_version): batch_size = 135 num_classes = 246 model = cifar10_main.Cifar10Model(32, data_format='channels_last', num_classes=num_classes, resnet_version=resnet_version) fake_input = tf.random_uniform([batch_size, _HEIGHT, _WIDTH, _NUM_CHANNELS]) output = model(fake_input, training=True) self.assertAllEqual(output.shape, (batch_size, num_classes)) def test_cifar10model_shape_v1(self): self._test_cifar10model_shape(resnet_version=1) def test_cifar10model_shape_v2(self): self._test_cifar10model_shape(resnet_version=2) def test_cifar10_end_to_end_synthetic_v1(self): integration.run_synthetic( main=cifar10_main.run_cifar, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '1'] ) def test_cifar10_end_to_end_synthetic_v2(self): integration.run_synthetic( main=cifar10_main.run_cifar, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '2'] ) def test_flag_restriction(self): with self.assertRaises(SystemExit): integration.run_synthetic( main=cifar10_main.run_cifar, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '1', "-dtype", "fp16"] ) if __name__ == '__main__': tf.test.main() ================================================ FILE: official/resnet/imagenet_main.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Runs a ResNet model on the ImageNet dataset.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.flags import core as flags_core from official.resnet import imagenet_preprocessing from official.resnet import resnet_model from official.resnet import resnet_run_loop _DEFAULT_IMAGE_SIZE = 224 _NUM_CHANNELS = 3 _NUM_CLASSES = 1001 _NUM_IMAGES = { 'train': 1281167, 'validation': 50000, } _NUM_TRAIN_FILES = 1024 _SHUFFLE_BUFFER = 10000 DATASET_NAME = 'ImageNet' ############################################################################### # Data processing ############################################################################### def get_filenames(is_training, data_dir): """Return filenames for dataset.""" if is_training: return [ os.path.join(data_dir, 'train-%05d-of-01024' % i) for i in range(_NUM_TRAIN_FILES)] else: return [ os.path.join(data_dir, 'validation-%05d-of-00128' % i) for i in range(128)] def _parse_example_proto(example_serialized): """Parses an Example proto containing a training example of an image. The output of the build_image_data.py image preprocessing script is a dataset containing serialized Example protocol buffers. Each Example proto contains the following fields (values are included as examples): image/height: 462 image/width: 581 image/colorspace: 'RGB' image/channels: 3 image/class/label: 615 image/class/synset: 'n03623198' image/class/text: 'knee pad' image/object/bbox/xmin: 0.1 image/object/bbox/xmax: 0.9 image/object/bbox/ymin: 0.2 image/object/bbox/ymax: 0.6 image/object/bbox/label: 615 image/format: 'JPEG' image/filename: 'ILSVRC2012_val_00041207.JPEG' image/encoded: Args: example_serialized: scalar Tensor tf.string containing a serialized Example protocol buffer. Returns: image_buffer: Tensor tf.string containing the contents of a JPEG file. label: Tensor tf.int32 containing the label. bbox: 3-D float Tensor of bounding boxes arranged [1, num_boxes, coords] where each coordinate is [0, 1) and the coordinates are arranged as [ymin, xmin, ymax, xmax]. """ # Dense features in Example proto. feature_map = { 'image/encoded': tf.FixedLenFeature([], dtype=tf.string, default_value=''), 'image/class/label': tf.FixedLenFeature([1], dtype=tf.int64, default_value=-1), 'image/class/text': tf.FixedLenFeature([], dtype=tf.string, default_value=''), } sparse_float32 = tf.VarLenFeature(dtype=tf.float32) # Sparse features in Example proto. feature_map.update( {k: sparse_float32 for k in ['image/object/bbox/xmin', 'image/object/bbox/ymin', 'image/object/bbox/xmax', 'image/object/bbox/ymax']}) features = tf.parse_single_example(example_serialized, feature_map) label = tf.cast(features['image/class/label'], dtype=tf.int32) xmin = tf.expand_dims(features['image/object/bbox/xmin'].values, 0) ymin = tf.expand_dims(features['image/object/bbox/ymin'].values, 0) xmax = tf.expand_dims(features['image/object/bbox/xmax'].values, 0) ymax = tf.expand_dims(features['image/object/bbox/ymax'].values, 0) # Note that we impose an ordering of (y, x) just to make life difficult. bbox = tf.concat([ymin, xmin, ymax, xmax], 0) # Force the variable number of bounding boxes into the shape # [1, num_boxes, coords]. bbox = tf.expand_dims(bbox, 0) bbox = tf.transpose(bbox, [0, 2, 1]) return features['image/encoded'], label, bbox def parse_record(raw_record, is_training): """Parses a record containing a training example of an image. The input record is parsed into a label and image, and the image is passed through preprocessing steps (cropping, flipping, and so on). Args: raw_record: scalar Tensor tf.string containing a serialized Example protocol buffer. is_training: A boolean denoting whether the input is for training. Returns: Tuple with processed image tensor and one-hot-encoded label tensor. """ image_buffer, label, bbox = _parse_example_proto(raw_record) image = imagenet_preprocessing.preprocess_image( image_buffer=image_buffer, bbox=bbox, output_height=_DEFAULT_IMAGE_SIZE, output_width=_DEFAULT_IMAGE_SIZE, num_channels=_NUM_CHANNELS, is_training=is_training) return image, label def input_fn(is_training, data_dir, batch_size, num_epochs=1): """Input function which provides batches for train or eval. Args: is_training: A boolean denoting whether the input is for training. data_dir: The directory containing the input data. batch_size: The number of samples per batch. num_epochs: The number of epochs to repeat the dataset. Returns: A dataset that can be used for iteration. """ filenames = get_filenames(is_training, data_dir) dataset = tf.data.Dataset.from_tensor_slices(filenames) if is_training: # Shuffle the input files dataset = dataset.shuffle(buffer_size=_NUM_TRAIN_FILES) # Convert to individual records. # cycle_length = 10 means 10 files will be read and deserialized in parallel. # This number is low enough to not cause too much contention on small systems # but high enough to provide the benefits of parallelization. You may want # to increase this number if you have a large number of CPU cores. dataset = dataset.apply(tf.contrib.data.parallel_interleave( tf.data.TFRecordDataset, cycle_length=10)) return resnet_run_loop.process_record_dataset( dataset, is_training, batch_size, _SHUFFLE_BUFFER, parse_record, num_epochs ) def get_synth_input_fn(): return resnet_run_loop.get_synth_input_fn( _DEFAULT_IMAGE_SIZE, _DEFAULT_IMAGE_SIZE, _NUM_CHANNELS, _NUM_CLASSES) ############################################################################### # Running the model ############################################################################### class ImagenetModel(resnet_model.Model): """Model class with appropriate defaults for Imagenet data.""" def __init__(self, resnet_size, data_format=None, num_classes=_NUM_CLASSES, resnet_version=resnet_model.DEFAULT_VERSION, dtype=resnet_model.DEFAULT_DTYPE): """These are the parameters that work for Imagenet data. Args: resnet_size: The number of convolutional layers needed in the model. data_format: Either 'channels_first' or 'channels_last', specifying which data format to use when setting up the model. num_classes: The number of output classes needed from the model. This enables users to extend the same model to their own datasets. resnet_version: Integer representing which version of the ResNet network to use. See README for details. Valid values: [1, 2] dtype: The TensorFlow dtype to use for calculations. """ # For bigger models, we want to use "bottleneck" layers if resnet_size < 50: bottleneck = False final_size = 512 else: bottleneck = True final_size = 2048 super(ImagenetModel, self).__init__( resnet_size=resnet_size, bottleneck=bottleneck, num_classes=num_classes, num_filters=64, kernel_size=7, conv_stride=2, first_pool_size=3, first_pool_stride=2, block_sizes=_get_block_sizes(resnet_size), block_strides=[1, 2, 2, 2], final_size=final_size, resnet_version=resnet_version, data_format=data_format, dtype=dtype ) def _get_block_sizes(resnet_size): """Retrieve the size of each block_layer in the ResNet model. The number of block layers used for the Resnet model varies according to the size of the model. This helper grabs the layer set we want, throwing an error if a non-standard size has been selected. Args: resnet_size: The number of convolutional layers needed in the model. Returns: A list of block sizes to use in building the model. Raises: KeyError: if invalid resnet_size is received. """ choices = { 18: [2, 2, 2, 2], 34: [3, 4, 6, 3], 50: [3, 4, 6, 3], 101: [3, 4, 23, 3], 152: [3, 8, 36, 3], 200: [3, 24, 36, 3] } try: return choices[resnet_size] except KeyError: err = ('Could not find layers for selected Resnet size.\n' 'Size received: {}; sizes allowed: {}.'.format( resnet_size, choices.keys())) raise ValueError(err) def imagenet_model_fn(features, labels, mode, params): """Our model_fn for ResNet to be used with our Estimator.""" learning_rate_fn = resnet_run_loop.learning_rate_with_decay( batch_size=params['batch_size'], batch_denom=256, num_images=_NUM_IMAGES['train'], boundary_epochs=[30, 60, 80, 90], decay_rates=[1, 0.1, 0.01, 0.001, 1e-4]) return resnet_run_loop.resnet_model_fn( features=features, labels=labels, mode=mode, model_class=ImagenetModel, resnet_size=params['resnet_size'], weight_decay=1e-4, learning_rate_fn=learning_rate_fn, momentum=0.9, data_format=params['data_format'], resnet_version=params['resnet_version'], loss_scale=params['loss_scale'], loss_filter_fn=None, dtype=params['dtype'] ) def define_imagenet_flags(): resnet_run_loop.define_resnet_flags( resnet_size_choices=['18', '34', '50', '101', '152', '200']) flags.adopt_module_key_flags(resnet_run_loop) flags_core.set_defaults(train_epochs=100) def run_imagenet(flags_obj): """Run ResNet ImageNet training and eval loop. Args: flags_obj: An object containing parsed flag values. """ input_function = (flags_obj.use_synthetic_data and get_synth_input_fn() or input_fn) resnet_run_loop.resnet_main( flags_obj, imagenet_model_fn, input_function, DATASET_NAME, shape=[_DEFAULT_IMAGE_SIZE, _DEFAULT_IMAGE_SIZE, _NUM_CHANNELS]) def main(_): run_imagenet(flags.FLAGS) if __name__ == '__main__': tf.logging.set_verbosity(tf.logging.INFO) define_imagenet_flags() absl_app.run(main) ================================================ FILE: official/resnet/imagenet_preprocessing.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Provides utilities to preprocess images. Training images are sampled using the provided bounding boxes, and subsequently cropped to the sampled bounding box. Images are additionally flipped randomly, then resized to the target output size (without aspect-ratio preservation). Images used during evaluation are resized (with aspect-ratio preservation) and centrally cropped. All images undergo mean color subtraction. Note that these steps are colloquially referred to as "ResNet preprocessing," and they differ from "VGG preprocessing," which does not use bounding boxes and instead does an aspect-preserving resize followed by random crop during training. (These both differ from "Inception preprocessing," which introduces color distortion steps.) """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf _R_MEAN = 123.68 _G_MEAN = 116.78 _B_MEAN = 103.94 _CHANNEL_MEANS = [_R_MEAN, _G_MEAN, _B_MEAN] # The lower bound for the smallest side of the image for aspect-preserving # resizing. For example, if an image is 500 x 1000, it will be resized to # _RESIZE_MIN x (_RESIZE_MIN * 2). _RESIZE_MIN = 256 def _decode_crop_and_flip(image_buffer, bbox, num_channels): """Crops the given image to a random part of the image, and randomly flips. We use the fused decode_and_crop op, which performs better than the two ops used separately in series, but note that this requires that the image be passed in as an un-decoded string Tensor. Args: image_buffer: scalar string Tensor representing the raw JPEG image buffer. bbox: 3-D float Tensor of bounding boxes arranged [1, num_boxes, coords] where each coordinate is [0, 1) and the coordinates are arranged as [ymin, xmin, ymax, xmax]. num_channels: Integer depth of the image buffer for decoding. Returns: 3-D tensor with cropped image. """ # A large fraction of image datasets contain a human-annotated bounding box # delineating the region of the image containing the object of interest. We # choose to create a new bounding box for the object which is a randomly # distorted version of the human-annotated bounding box that obeys an # allowed range of aspect ratios, sizes and overlap with the human-annotated # bounding box. If no box is supplied, then we assume the bounding box is # the entire image. sample_distorted_bounding_box = tf.image.sample_distorted_bounding_box( tf.image.extract_jpeg_shape(image_buffer), bounding_boxes=bbox, min_object_covered=0.1, aspect_ratio_range=[0.75, 1.33], area_range=[0.05, 1.0], max_attempts=100, use_image_if_no_bounding_boxes=True) bbox_begin, bbox_size, _ = sample_distorted_bounding_box # Reassemble the bounding box in the format the crop op requires. offset_y, offset_x, _ = tf.unstack(bbox_begin) target_height, target_width, _ = tf.unstack(bbox_size) crop_window = tf.stack([offset_y, offset_x, target_height, target_width]) # Use the fused decode and crop op here, which is faster than each in series. cropped = tf.image.decode_and_crop_jpeg( image_buffer, crop_window, channels=num_channels) # Flip to add a little more random distortion in. cropped = tf.image.random_flip_left_right(cropped) return cropped def _central_crop(image, crop_height, crop_width): """Performs central crops of the given image list. Args: image: a 3-D image tensor crop_height: the height of the image following the crop. crop_width: the width of the image following the crop. Returns: 3-D tensor with cropped image. """ shape = tf.shape(image) height, width = shape[0], shape[1] amount_to_be_cropped_h = (height - crop_height) crop_top = amount_to_be_cropped_h // 2 amount_to_be_cropped_w = (width - crop_width) crop_left = amount_to_be_cropped_w // 2 return tf.slice( image, [crop_top, crop_left, 0], [crop_height, crop_width, -1]) def _mean_image_subtraction(image, means, num_channels): """Subtracts the given means from each image channel. For example: means = [123.68, 116.779, 103.939] image = _mean_image_subtraction(image, means) Note that the rank of `image` must be known. Args: image: a tensor of size [height, width, C]. means: a C-vector of values to subtract from each channel. num_channels: number of color channels in the image that will be distorted. Returns: the centered image. Raises: ValueError: If the rank of `image` is unknown, if `image` has a rank other than three or if the number of channels in `image` doesn't match the number of values in `means`. """ if image.get_shape().ndims != 3: raise ValueError('Input must be of size [height, width, C>0]') if len(means) != num_channels: raise ValueError('len(means) must match the number of channels') # We have a 1-D tensor of means; convert to 3-D. means = tf.expand_dims(tf.expand_dims(means, 0), 0) return image - means def _smallest_size_at_least(height, width, resize_min): """Computes new shape with the smallest side equal to `smallest_side`. Computes new shape with the smallest side equal to `smallest_side` while preserving the original aspect ratio. Args: height: an int32 scalar tensor indicating the current height. width: an int32 scalar tensor indicating the current width. resize_min: A python integer or scalar `Tensor` indicating the size of the smallest side after resize. Returns: new_height: an int32 scalar tensor indicating the new height. new_width: an int32 scalar tensor indicating the new width. """ resize_min = tf.cast(resize_min, tf.float32) # Convert to floats to make subsequent calculations go smoothly. height, width = tf.cast(height, tf.float32), tf.cast(width, tf.float32) smaller_dim = tf.minimum(height, width) scale_ratio = resize_min / smaller_dim # Convert back to ints to make heights and widths that TF ops will accept. new_height = tf.cast(height * scale_ratio, tf.int32) new_width = tf.cast(width * scale_ratio, tf.int32) return new_height, new_width def _aspect_preserving_resize(image, resize_min): """Resize images preserving the original aspect ratio. Args: image: A 3-D image `Tensor`. resize_min: A python integer or scalar `Tensor` indicating the size of the smallest side after resize. Returns: resized_image: A 3-D tensor containing the resized image. """ shape = tf.shape(image) height, width = shape[0], shape[1] new_height, new_width = _smallest_size_at_least(height, width, resize_min) return _resize_image(image, new_height, new_width) def _resize_image(image, height, width): """Simple wrapper around tf.resize_images. This is primarily to make sure we use the same `ResizeMethod` and other details each time. Args: image: A 3-D image `Tensor`. height: The target height for the resized image. width: The target width for the resized image. Returns: resized_image: A 3-D tensor containing the resized image. The first two dimensions have the shape [height, width]. """ return tf.image.resize_images( image, [height, width], method=tf.image.ResizeMethod.BILINEAR, align_corners=False) def preprocess_image(image_buffer, bbox, output_height, output_width, num_channels, is_training=False): """Preprocesses the given image. Preprocessing includes decoding, cropping, and resizing for both training and eval images. Training preprocessing, however, introduces some random distortion of the image to improve accuracy. Args: image_buffer: scalar string Tensor representing the raw JPEG image buffer. bbox: 3-D float Tensor of bounding boxes arranged [1, num_boxes, coords] where each coordinate is [0, 1) and the coordinates are arranged as [ymin, xmin, ymax, xmax]. output_height: The height of the image after preprocessing. output_width: The width of the image after preprocessing. num_channels: Integer depth of the image buffer for decoding. is_training: `True` if we're preprocessing the image for training and `False` otherwise. Returns: A preprocessed image. """ if is_training: # For training, we want to randomize some of the distortions. image = _decode_crop_and_flip(image_buffer, bbox, num_channels) image = _resize_image(image, output_height, output_width) else: # For validation, we want to decode, resize, then just crop the middle. image = tf.image.decode_jpeg(image_buffer, channels=num_channels) image = _aspect_preserving_resize(image, _RESIZE_MIN) image = _central_crop(image, output_height, output_width) image.set_shape([output_height, output_width, num_channels]) return _mean_image_subtraction(image, _CHANNEL_MEANS, num_channels) ================================================ FILE: official/resnet/imagenet_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import unittest import tensorflow as tf # pylint: disable=g-bad-import-order from official.resnet import imagenet_main from official.utils.testing import integration tf.logging.set_verbosity(tf.logging.ERROR) _BATCH_SIZE = 32 _LABEL_CLASSES = 1001 class BaseTest(tf.test.TestCase): @classmethod def setUpClass(cls): # pylint: disable=invalid-name super(BaseTest, cls).setUpClass() imagenet_main.define_imagenet_flags() def tearDown(self): super(BaseTest, self).tearDown() tf.gfile.DeleteRecursively(self.get_temp_dir()) def _tensor_shapes_helper(self, resnet_size, resnet_version, dtype, with_gpu): """Checks the tensor shapes after each phase of the ResNet model.""" def reshape(shape): """Returns the expected dimensions depending on if a GPU is being used.""" # If a GPU is used for the test, the shape is returned (already in NCHW # form). When GPU is not used, the shape is converted to NHWC. if with_gpu: return shape return shape[0], shape[2], shape[3], shape[1] graph = tf.Graph() with graph.as_default(), self.test_session( graph=graph, use_gpu=with_gpu, force_gpu=with_gpu): model = imagenet_main.ImagenetModel( resnet_size=resnet_size, data_format='channels_first' if with_gpu else 'channels_last', resnet_version=resnet_version, dtype=dtype ) inputs = tf.random_uniform([1, 224, 224, 3]) output = model(inputs, training=True) initial_conv = graph.get_tensor_by_name('resnet_model/initial_conv:0') max_pool = graph.get_tensor_by_name('resnet_model/initial_max_pool:0') block_layer1 = graph.get_tensor_by_name('resnet_model/block_layer1:0') block_layer2 = graph.get_tensor_by_name('resnet_model/block_layer2:0') block_layer3 = graph.get_tensor_by_name('resnet_model/block_layer3:0') block_layer4 = graph.get_tensor_by_name('resnet_model/block_layer4:0') reduce_mean = graph.get_tensor_by_name('resnet_model/final_reduce_mean:0') dense = graph.get_tensor_by_name('resnet_model/final_dense:0') self.assertAllEqual(initial_conv.shape, reshape((1, 64, 112, 112))) self.assertAllEqual(max_pool.shape, reshape((1, 64, 56, 56))) # The number of channels after each block depends on whether we're # using the building_block or the bottleneck_block. if resnet_size < 50: self.assertAllEqual(block_layer1.shape, reshape((1, 64, 56, 56))) self.assertAllEqual(block_layer2.shape, reshape((1, 128, 28, 28))) self.assertAllEqual(block_layer3.shape, reshape((1, 256, 14, 14))) self.assertAllEqual(block_layer4.shape, reshape((1, 512, 7, 7))) self.assertAllEqual(reduce_mean.shape, reshape((1, 512, 1, 1))) else: self.assertAllEqual(block_layer1.shape, reshape((1, 256, 56, 56))) self.assertAllEqual(block_layer2.shape, reshape((1, 512, 28, 28))) self.assertAllEqual(block_layer3.shape, reshape((1, 1024, 14, 14))) self.assertAllEqual(block_layer4.shape, reshape((1, 2048, 7, 7))) self.assertAllEqual(reduce_mean.shape, reshape((1, 2048, 1, 1))) self.assertAllEqual(dense.shape, (1, _LABEL_CLASSES)) self.assertAllEqual(output.shape, (1, _LABEL_CLASSES)) def tensor_shapes_helper(self, resnet_size, resnet_version, with_gpu=False): self._tensor_shapes_helper(resnet_size=resnet_size, resnet_version=resnet_version, dtype=tf.float32, with_gpu=with_gpu) self._tensor_shapes_helper(resnet_size=resnet_size, resnet_version=resnet_version, dtype=tf.float16, with_gpu=with_gpu) def test_tensor_shapes_resnet_18_v1(self): self.tensor_shapes_helper(18, resnet_version=1) def test_tensor_shapes_resnet_18_v2(self): self.tensor_shapes_helper(18, resnet_version=2) def test_tensor_shapes_resnet_34_v1(self): self.tensor_shapes_helper(34, resnet_version=1) def test_tensor_shapes_resnet_34_v2(self): self.tensor_shapes_helper(34, resnet_version=2) def test_tensor_shapes_resnet_50_v1(self): self.tensor_shapes_helper(50, resnet_version=1) def test_tensor_shapes_resnet_50_v2(self): self.tensor_shapes_helper(50, resnet_version=2) def test_tensor_shapes_resnet_101_v1(self): self.tensor_shapes_helper(101, resnet_version=1) def test_tensor_shapes_resnet_101_v2(self): self.tensor_shapes_helper(101, resnet_version=2) def test_tensor_shapes_resnet_152_v1(self): self.tensor_shapes_helper(152, resnet_version=1) def test_tensor_shapes_resnet_152_v2(self): self.tensor_shapes_helper(152, resnet_version=2) def test_tensor_shapes_resnet_200_v1(self): self.tensor_shapes_helper(200, resnet_version=1) def test_tensor_shapes_resnet_200_v2(self): self.tensor_shapes_helper(200, resnet_version=2) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_18_with_gpu_v1(self): self.tensor_shapes_helper(18, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_18_with_gpu_v2(self): self.tensor_shapes_helper(18, resnet_version=2, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_34_with_gpu_v1(self): self.tensor_shapes_helper(34, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_34_with_gpu_v2(self): self.tensor_shapes_helper(34, resnet_version=2, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_50_with_gpu_v1(self): self.tensor_shapes_helper(50, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_50_with_gpu_v2(self): self.tensor_shapes_helper(50, resnet_version=2, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_101_with_gpu_v1(self): self.tensor_shapes_helper(101, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_101_with_gpu_v2(self): self.tensor_shapes_helper(101, resnet_version=2, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_152_with_gpu_v1(self): self.tensor_shapes_helper(152, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_152_with_gpu_v2(self): self.tensor_shapes_helper(152, resnet_version=2, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_200_with_gpu_v1(self): self.tensor_shapes_helper(200, resnet_version=1, with_gpu=True) @unittest.skipUnless(tf.test.is_built_with_cuda(), 'requires GPU') def test_tensor_shapes_resnet_200_with_gpu_v2(self): self.tensor_shapes_helper(200, resnet_version=2, with_gpu=True) def resnet_model_fn_helper(self, mode, resnet_version, dtype): """Tests that the EstimatorSpec is given the appropriate arguments.""" tf.train.create_global_step() input_fn = imagenet_main.get_synth_input_fn() dataset = input_fn(True, '', _BATCH_SIZE) iterator = dataset.make_one_shot_iterator() features, labels = iterator.get_next() spec = imagenet_main.imagenet_model_fn( features, labels, mode, { 'dtype': dtype, 'resnet_size': 50, 'data_format': 'channels_last', 'batch_size': _BATCH_SIZE, 'resnet_version': resnet_version, 'loss_scale': 128 if dtype == tf.float16 else 1, }) predictions = spec.predictions self.assertAllEqual(predictions['probabilities'].shape, (_BATCH_SIZE, _LABEL_CLASSES)) self.assertEqual(predictions['probabilities'].dtype, tf.float32) self.assertAllEqual(predictions['classes'].shape, (_BATCH_SIZE,)) self.assertEqual(predictions['classes'].dtype, tf.int64) if mode != tf.estimator.ModeKeys.PREDICT: loss = spec.loss self.assertAllEqual(loss.shape, ()) self.assertEqual(loss.dtype, tf.float32) if mode == tf.estimator.ModeKeys.EVAL: eval_metric_ops = spec.eval_metric_ops self.assertAllEqual(eval_metric_ops['accuracy'][0].shape, ()) self.assertAllEqual(eval_metric_ops['accuracy'][1].shape, ()) self.assertEqual(eval_metric_ops['accuracy'][0].dtype, tf.float32) self.assertEqual(eval_metric_ops['accuracy'][1].dtype, tf.float32) def test_resnet_model_fn_train_mode_v1(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.TRAIN, resnet_version=1, dtype=tf.float32) def test_resnet_model_fn_train_mode_v2(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.TRAIN, resnet_version=2, dtype=tf.float32) def test_resnet_model_fn_eval_mode_v1(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.EVAL, resnet_version=1, dtype=tf.float32) def test_resnet_model_fn_eval_mode_v2(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.EVAL, resnet_version=2, dtype=tf.float32) def test_resnet_model_fn_predict_mode_v1(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.PREDICT, resnet_version=1, dtype=tf.float32) def test_resnet_model_fn_predict_mode_v2(self): self.resnet_model_fn_helper(tf.estimator.ModeKeys.PREDICT, resnet_version=2, dtype=tf.float32) def _test_imagenetmodel_shape(self, resnet_version): batch_size = 135 num_classes = 246 model = imagenet_main.ImagenetModel( 50, data_format='channels_last', num_classes=num_classes, resnet_version=resnet_version) fake_input = tf.random_uniform([batch_size, 224, 224, 3]) output = model(fake_input, training=True) self.assertAllEqual(output.shape, (batch_size, num_classes)) def test_imagenetmodel_shape_v1(self): self._test_imagenetmodel_shape(resnet_version=1) def test_imagenetmodel_shape_v2(self): self._test_imagenetmodel_shape(resnet_version=2) def test_imagenet_end_to_end_synthetic_v1(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-v', '1'] ) def test_imagenet_end_to_end_synthetic_v2(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-v', '2'] ) def test_imagenet_end_to_end_synthetic_v1_tiny(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '1', '-resnet_size', '18'] ) def test_imagenet_end_to_end_synthetic_v2_tiny(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '2', '-resnet_size', '18'] ) def test_imagenet_end_to_end_synthetic_v1_huge(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '1', '-resnet_size', '200'] ) def test_imagenet_end_to_end_synthetic_v2_huge(self): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '2', '-resnet_size', '200'] ) def test_flag_restriction(self): with self.assertRaises(SystemExit): integration.run_synthetic( main=imagenet_main.run_imagenet, tmp_root=self.get_temp_dir(), extra_flags=['-resnet_version', '1', '-dtype', 'fp16'] ) if __name__ == '__main__': tf.test.main() ================================================ FILE: official/resnet/layer_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Test that the definitions of ResNet layers haven't changed. These tests will fail if either: a) The graph of a resnet layer changes and the change is significant enough that it can no longer load existing checkpoints. b) The numerical results produced by the layer change. A warning will be issued if the graph changes, but the checkpoint still loads. In the event that a layer change is intended, or the TensorFlow implementation of a layer changes (and thus changes the graph), regenerate using the command: $ python3 layer_test.py -regen """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import tensorflow as tf # pylint: disable=g-bad-import-order from official.resnet import resnet_model from official.utils.testing import reference_data DATA_FORMAT = "channels_last" # CPU instructions often preclude channels_first BATCH_SIZE = 32 BLOCK_TESTS = [ dict(bottleneck=True, projection=True, resnet_version=1, width=8, channels=4), dict(bottleneck=True, projection=True, resnet_version=2, width=8, channels=4), dict(bottleneck=True, projection=False, resnet_version=1, width=8, channels=4), dict(bottleneck=True, projection=False, resnet_version=2, width=8, channels=4), dict(bottleneck=False, projection=True, resnet_version=1, width=8, channels=4), dict(bottleneck=False, projection=True, resnet_version=2, width=8, channels=4), dict(bottleneck=False, projection=False, resnet_version=1, width=8, channels=4), dict(bottleneck=False, projection=False, resnet_version=2, width=8, channels=4), ] class BaseTest(reference_data.BaseTest): """Tests for core ResNet layers.""" @property def test_name(self): return "resnet" def _batch_norm_ops(self, test=False): name = "batch_norm" g = tf.Graph() with g.as_default(): tf.set_random_seed(self.name_to_seed(name)) input_tensor = tf.get_variable( "input_tensor", dtype=tf.float32, initializer=tf.random_uniform((32, 16, 16, 3), maxval=1) ) layer = resnet_model.batch_norm( inputs=input_tensor, data_format=DATA_FORMAT, training=True) self._save_or_test_ops( name=name, graph=g, ops_to_eval=[input_tensor, layer], test=test, correctness_function=self.default_correctness_function ) def make_projection(self, filters_out, strides, data_format): """1D convolution with stride projector. Args: filters_out: Number of filters in the projection. strides: Stride length for convolution. data_format: channels_first or channels_last Returns: A CNN projector function with kernel_size 1. """ def projection_shortcut(inputs): return resnet_model.conv2d_fixed_padding( inputs=inputs, filters=filters_out, kernel_size=1, strides=strides, data_format=data_format) return projection_shortcut def _resnet_block_ops(self, test, batch_size, bottleneck, projection, resnet_version, width, channels): """Test whether resnet block construction has changed. Args: test: Whether or not to run as a test case. batch_size: Number of points in the fake image. This is needed due to batch normalization. bottleneck: Whether or not to use bottleneck layers. projection: Whether or not to project the input. resnet_version: Which version of ResNet to test. width: The width of the fake image. channels: The number of channels in the fake image. """ name = "batch-size-{}_{}{}_version-{}_width-{}_channels-{}".format( batch_size, "bottleneck" if bottleneck else "building", "_projection" if projection else "", resnet_version, width, channels ) if resnet_version == 1: block_fn = resnet_model._building_block_v1 if bottleneck: block_fn = resnet_model._bottleneck_block_v1 else: block_fn = resnet_model._building_block_v2 if bottleneck: block_fn = resnet_model._bottleneck_block_v2 g = tf.Graph() with g.as_default(): tf.set_random_seed(self.name_to_seed(name)) strides = 1 channels_out = channels projection_shortcut = None if projection: strides = 2 channels_out *= strides projection_shortcut = self.make_projection( filters_out=channels_out, strides=strides, data_format=DATA_FORMAT) filters = channels_out if bottleneck: filters = channels_out // 4 input_tensor = tf.get_variable( "input_tensor", dtype=tf.float32, initializer=tf.random_uniform((batch_size, width, width, channels), maxval=1) ) layer = block_fn(inputs=input_tensor, filters=filters, training=True, projection_shortcut=projection_shortcut, strides=strides, data_format=DATA_FORMAT) self._save_or_test_ops( name=name, graph=g, ops_to_eval=[input_tensor, layer], test=test, correctness_function=self.default_correctness_function ) def test_batch_norm(self): self._batch_norm_ops(test=True) def test_block_0(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[0]) def test_block_1(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[1]) def test_block_2(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[2]) def test_block_3(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[3]) def test_block_4(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[4]) def test_block_5(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[5]) def test_block_6(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[6]) def test_block_7(self): self._resnet_block_ops(test=True, batch_size=BATCH_SIZE, **BLOCK_TESTS[7]) def regenerate(self): """Create reference data files for ResNet layer tests.""" self._batch_norm_ops(test=False) for block_params in BLOCK_TESTS: self._resnet_block_ops(test=False, batch_size=BATCH_SIZE, **block_params) if __name__ == "__main__": reference_data.main(argv=sys.argv, test_class=BaseTest) ================================================ FILE: official/resnet/resnet_model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Contains definitions for Residual Networks. Residual networks ('v1' ResNets) were originally proposed in: [1] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Deep Residual Learning for Image Recognition. arXiv:1512.03385 The full preactivation 'v2' ResNet variant was introduced by: [2] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Identity Mappings in Deep Residual Networks. arXiv: 1603.05027 The key difference of the full preactivation 'v2' variant compared to the 'v1' variant in [1] is the use of batch normalization before every weight layer rather than after. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf _BATCH_NORM_DECAY = 0.997 _BATCH_NORM_EPSILON = 1e-5 DEFAULT_VERSION = 2 DEFAULT_DTYPE = tf.float32 CASTABLE_TYPES = (tf.float16,) ALLOWED_TYPES = (DEFAULT_DTYPE,) + CASTABLE_TYPES ################################################################################ # Convenience functions for building the ResNet model. ################################################################################ def batch_norm(inputs, training, data_format): """Performs a batch normalization using a standard set of parameters.""" # We set fused=True for a significant performance boost. See # https://www.tensorflow.org/performance/performance_guide#common_fused_ops return tf.layers.batch_normalization( inputs=inputs, axis=1 if data_format == 'channels_first' else 3, momentum=_BATCH_NORM_DECAY, epsilon=_BATCH_NORM_EPSILON, center=True, scale=True, training=training, fused=True) def fixed_padding(inputs, kernel_size, data_format): """Pads the input along the spatial dimensions independently of input size. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. kernel_size: The kernel to be used in the conv2d or max_pool2d operation. Should be a positive integer. data_format: The input format ('channels_last' or 'channels_first'). Returns: A tensor with the same format as the input with the data either intact (if kernel_size == 1) or padded (if kernel_size > 1). """ pad_total = kernel_size - 1 pad_beg = pad_total // 2 pad_end = pad_total - pad_beg if data_format == 'channels_first': padded_inputs = tf.pad(inputs, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) else: padded_inputs = tf.pad(inputs, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) return padded_inputs def conv2d_fixed_padding(inputs, filters, kernel_size, strides, data_format): """Strided 2-D convolution with explicit padding.""" # The padding is consistent and is based only on `kernel_size`, not on the # dimensions of `inputs` (as opposed to using `tf.layers.conv2d` alone). if strides > 1: inputs = fixed_padding(inputs, kernel_size, data_format) return tf.layers.conv2d( inputs=inputs, filters=filters, kernel_size=kernel_size, strides=strides, padding=('SAME' if strides == 1 else 'VALID'), use_bias=False, kernel_initializer=tf.variance_scaling_initializer(), data_format=data_format) ################################################################################ # ResNet block definitions. ################################################################################ def _building_block_v1(inputs, filters, training, projection_shortcut, strides, data_format): """A single block for ResNet v1, without a bottleneck. Convolution then batch normalization then ReLU as described by: Deep Residual Learning for Image Recognition https://arxiv.org/pdf/1512.03385.pdf by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Dec 2015. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. filters: The number of filters for the convolutions. training: A Boolean for whether the model is in training or inference mode. Needed for batch normalization. projection_shortcut: The function to use for projection shortcuts (typically a 1x1 convolution when downsampling the input). strides: The block's stride. If greater than 1, this block will ultimately downsample the input. data_format: The input format ('channels_last' or 'channels_first'). Returns: The output tensor of the block; shape should match inputs. """ shortcut = inputs if projection_shortcut is not None: shortcut = projection_shortcut(inputs) shortcut = batch_norm(inputs=shortcut, training=training, data_format=data_format) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=strides, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=1, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs += shortcut inputs = tf.nn.relu(inputs) return inputs def _building_block_v2(inputs, filters, training, projection_shortcut, strides, data_format): """A single block for ResNet v2, without a bottleneck. Batch normalization then ReLu then convolution as described by: Identity Mappings in Deep Residual Networks https://arxiv.org/pdf/1603.05027.pdf by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Jul 2016. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. filters: The number of filters for the convolutions. training: A Boolean for whether the model is in training or inference mode. Needed for batch normalization. projection_shortcut: The function to use for projection shortcuts (typically a 1x1 convolution when downsampling the input). strides: The block's stride. If greater than 1, this block will ultimately downsample the input. data_format: The input format ('channels_last' or 'channels_first'). Returns: The output tensor of the block; shape should match inputs. """ shortcut = inputs inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) # The projection shortcut should come after the first batch norm and ReLU # since it performs a 1x1 convolution. if projection_shortcut is not None: shortcut = projection_shortcut(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=strides, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=1, data_format=data_format) return inputs + shortcut def _bottleneck_block_v1(inputs, filters, training, projection_shortcut, strides, data_format): """A single block for ResNet v1, with a bottleneck. Similar to _building_block_v1(), except using the "bottleneck" blocks described in: Convolution then batch normalization then ReLU as described by: Deep Residual Learning for Image Recognition https://arxiv.org/pdf/1512.03385.pdf by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Dec 2015. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. filters: The number of filters for the convolutions. training: A Boolean for whether the model is in training or inference mode. Needed for batch normalization. projection_shortcut: The function to use for projection shortcuts (typically a 1x1 convolution when downsampling the input). strides: The block's stride. If greater than 1, this block will ultimately downsample the input. data_format: The input format ('channels_last' or 'channels_first'). Returns: The output tensor of the block; shape should match inputs. """ shortcut = inputs if projection_shortcut is not None: shortcut = projection_shortcut(inputs) shortcut = batch_norm(inputs=shortcut, training=training, data_format=data_format) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=1, strides=1, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=strides, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=4 * filters, kernel_size=1, strides=1, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs += shortcut inputs = tf.nn.relu(inputs) return inputs def _bottleneck_block_v2(inputs, filters, training, projection_shortcut, strides, data_format): """A single block for ResNet v2, without a bottleneck. Similar to _building_block_v2(), except using the "bottleneck" blocks described in: Convolution then batch normalization then ReLU as described by: Deep Residual Learning for Image Recognition https://arxiv.org/pdf/1512.03385.pdf by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Dec 2015. Adapted to the ordering conventions of: Batch normalization then ReLu then convolution as described by: Identity Mappings in Deep Residual Networks https://arxiv.org/pdf/1603.05027.pdf by Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun, Jul 2016. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. filters: The number of filters for the convolutions. training: A Boolean for whether the model is in training or inference mode. Needed for batch normalization. projection_shortcut: The function to use for projection shortcuts (typically a 1x1 convolution when downsampling the input). strides: The block's stride. If greater than 1, this block will ultimately downsample the input. data_format: The input format ('channels_last' or 'channels_first'). Returns: The output tensor of the block; shape should match inputs. """ shortcut = inputs inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) # The projection shortcut should come after the first batch norm and ReLU # since it performs a 1x1 convolution. if projection_shortcut is not None: shortcut = projection_shortcut(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=1, strides=1, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=filters, kernel_size=3, strides=strides, data_format=data_format) inputs = batch_norm(inputs, training, data_format) inputs = tf.nn.relu(inputs) inputs = conv2d_fixed_padding( inputs=inputs, filters=4 * filters, kernel_size=1, strides=1, data_format=data_format) return inputs + shortcut def block_layer(inputs, filters, bottleneck, block_fn, blocks, strides, training, name, data_format): """Creates one layer of blocks for the ResNet model. Args: inputs: A tensor of size [batch, channels, height_in, width_in] or [batch, height_in, width_in, channels] depending on data_format. filters: The number of filters for the first convolution of the layer. bottleneck: Is the block created a bottleneck block. block_fn: The block to use within the model, either `building_block` or `bottleneck_block`. blocks: The number of blocks contained in the layer. strides: The stride to use for the first convolution of the layer. If greater than 1, this layer will ultimately downsample the input. training: Either True or False, whether we are currently training the model. Needed for batch norm. name: A string name for the tensor output of the block layer. data_format: The input format ('channels_last' or 'channels_first'). Returns: The output tensor of the block layer. """ # Bottleneck blocks end with 4x the number of filters as they start with filters_out = filters * 4 if bottleneck else filters def projection_shortcut(inputs): return conv2d_fixed_padding( inputs=inputs, filters=filters_out, kernel_size=1, strides=strides, data_format=data_format) # Only the first block per block_layer uses projection_shortcut and strides inputs = block_fn(inputs, filters, training, projection_shortcut, strides, data_format) for _ in range(1, blocks): inputs = block_fn(inputs, filters, training, None, 1, data_format) return tf.identity(inputs, name) class Model(object): """Base class for building the Resnet Model.""" def __init__(self, resnet_size, bottleneck, num_classes, num_filters, kernel_size, conv_stride, first_pool_size, first_pool_stride, block_sizes, block_strides, final_size, resnet_version=DEFAULT_VERSION, data_format=None, dtype=DEFAULT_DTYPE): """Creates a model for classifying an image. Args: resnet_size: A single integer for the size of the ResNet model. bottleneck: Use regular blocks or bottleneck blocks. num_classes: The number of classes used as labels. num_filters: The number of filters to use for the first block layer of the model. This number is then doubled for each subsequent block layer. kernel_size: The kernel size to use for convolution. conv_stride: stride size for the initial convolutional layer first_pool_size: Pool size to be used for the first pooling layer. If none, the first pooling layer is skipped. first_pool_stride: stride size for the first pooling layer. Not used if first_pool_size is None. block_sizes: A list containing n values, where n is the number of sets of block layers desired. Each value should be the number of blocks in the i-th set. block_strides: List of integers representing the desired stride size for each of the sets of block layers. Should be same length as block_sizes. final_size: The expected size of the model after the second pooling. resnet_version: Integer representing which version of the ResNet network to use. See README for details. Valid values: [1, 2] data_format: Input format ('channels_last', 'channels_first', or None). If set to None, the format is dependent on whether a GPU is available. dtype: The TensorFlow dtype to use for calculations. If not specified tf.float32 is used. Raises: ValueError: if invalid version is selected. """ self.resnet_size = resnet_size if not data_format: data_format = ( 'channels_first' if tf.test.is_built_with_cuda() else 'channels_last') self.resnet_version = resnet_version if resnet_version not in (1, 2): raise ValueError( 'Resnet version should be 1 or 2. See README for citations.') self.bottleneck = bottleneck if bottleneck: if resnet_version == 1: self.block_fn = _bottleneck_block_v1 else: self.block_fn = _bottleneck_block_v2 else: if resnet_version == 1: self.block_fn = _building_block_v1 else: self.block_fn = _building_block_v2 if dtype not in ALLOWED_TYPES: raise ValueError('dtype must be one of: {}'.format(ALLOWED_TYPES)) self.data_format = data_format self.num_classes = num_classes self.num_filters = num_filters self.kernel_size = kernel_size self.conv_stride = conv_stride self.first_pool_size = first_pool_size self.first_pool_stride = first_pool_stride self.block_sizes = block_sizes self.block_strides = block_strides self.final_size = final_size self.dtype = dtype self.pre_activation = resnet_version == 2 def _custom_dtype_getter(self, getter, name, shape=None, dtype=DEFAULT_DTYPE, *args, **kwargs): """Creates variables in fp32, then casts to fp16 if necessary. This function is a custom getter. A custom getter is a function with the same signature as tf.get_variable, except it has an additional getter parameter. Custom getters can be passed as the `custom_getter` parameter of tf.variable_scope. Then, tf.get_variable will call the custom getter, instead of directly getting a variable itself. This can be used to change the types of variables that are retrieved with tf.get_variable. The `getter` parameter is the underlying variable getter, that would have been called if no custom getter was used. Custom getters typically get a variable with `getter`, then modify it in some way. This custom getter will create an fp32 variable. If a low precision (e.g. float16) variable was requested it will then cast the variable to the requested dtype. The reason we do not directly create variables in low precision dtypes is that applying small gradients to such variables may cause the variable not to change. Args: getter: The underlying variable getter, that has the same signature as tf.get_variable and returns a variable. name: The name of the variable to get. shape: The shape of the variable to get. dtype: The dtype of the variable to get. Note that if this is a low precision dtype, the variable will be created as a tf.float32 variable, then cast to the appropriate dtype *args: Additional arguments to pass unmodified to getter. **kwargs: Additional keyword arguments to pass unmodified to getter. Returns: A variable which is cast to fp16 if necessary. """ if dtype in CASTABLE_TYPES: var = getter(name, shape, tf.float32, *args, **kwargs) return tf.cast(var, dtype=dtype, name=name + '_cast') else: return getter(name, shape, dtype, *args, **kwargs) def _model_variable_scope(self): """Returns a variable scope that the model should be created under. If self.dtype is a castable type, model variable will be created in fp32 then cast to self.dtype before being used. Returns: A variable scope for the model. """ return tf.variable_scope('resnet_model', custom_getter=self._custom_dtype_getter) def __call__(self, inputs, training): """Add operations to classify a batch of input images. Args: inputs: A Tensor representing a batch of input images. training: A boolean. Set to True to add operations required only when training the classifier. Returns: A logits Tensor with shape [, self.num_classes]. """ with self._model_variable_scope(): if self.data_format == 'channels_first': # Convert the inputs from channels_last (NHWC) to channels_first (NCHW). # This provides a large performance boost on GPU. See # https://www.tensorflow.org/performance/performance_guide#data_formats inputs = tf.transpose(inputs, [0, 3, 1, 2]) inputs = conv2d_fixed_padding( inputs=inputs, filters=self.num_filters, kernel_size=self.kernel_size, strides=self.conv_stride, data_format=self.data_format) inputs = tf.identity(inputs, 'initial_conv') # We do not include batch normalization or activation functions in V2 # for the initial conv1 because the first ResNet unit will perform these # for both the shortcut and non-shortcut paths as part of the first # block's projection. Cf. Appendix of [2]. if self.resnet_version == 1: inputs = batch_norm(inputs, training, self.data_format) inputs = tf.nn.relu(inputs) if self.first_pool_size: inputs = tf.layers.max_pooling2d( inputs=inputs, pool_size=self.first_pool_size, strides=self.first_pool_stride, padding='SAME', data_format=self.data_format) inputs = tf.identity(inputs, 'initial_max_pool') for i, num_blocks in enumerate(self.block_sizes): num_filters = self.num_filters * (2**i) inputs = block_layer( inputs=inputs, filters=num_filters, bottleneck=self.bottleneck, block_fn=self.block_fn, blocks=num_blocks, strides=self.block_strides[i], training=training, name='block_layer{}'.format(i + 1), data_format=self.data_format) # Only apply the BN and ReLU for model that does pre_activation in each # building/bottleneck block, eg resnet V2. if self.pre_activation: inputs = batch_norm(inputs, training, self.data_format) inputs = tf.nn.relu(inputs) # The current top layer has shape # `batch_size x pool_size x pool_size x final_size`. # ResNet does an Average Pooling layer over pool_size, # but that is the same as doing a reduce_mean. We do a reduce_mean # here because it performs better than AveragePooling2D. axes = [2, 3] if self.data_format == 'channels_first' else [1, 2] inputs = tf.reduce_mean(inputs, axes, keepdims=True) inputs = tf.identity(inputs, 'final_reduce_mean') inputs = tf.reshape(inputs, [-1, self.final_size]) inputs = tf.layers.dense(inputs=inputs, units=self.num_classes) inputs = tf.identity(inputs, 'final_dense') return inputs ================================================ FILE: official/resnet/resnet_run_loop.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Contains utility and supporting functions for ResNet. This module contains ResNet code which does not directly build layers. This includes dataset management, hyperparameter and optimizer code, and argument parsing. Code for defining the ResNet layers can be found in resnet_model.py. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os # pylint: disable=g-bad-import-order from absl import flags import tensorflow as tf from official.resnet import resnet_model from official.utils.flags import core as flags_core from official.utils.export import export from official.utils.logs import hooks_helper from official.utils.logs import logger from official.utils.misc import model_helpers # pylint: enable=g-bad-import-order ################################################################################ # Functions for input processing. ################################################################################ def process_record_dataset(dataset, is_training, batch_size, shuffle_buffer, parse_record_fn, num_epochs=1): """Given a Dataset with raw records, return an iterator over the records. Args: dataset: A Dataset representing raw records is_training: A boolean denoting whether the input is for training. batch_size: The number of samples per batch. shuffle_buffer: The buffer size to use when shuffling records. A larger value results in better randomness, but smaller values reduce startup time and use less memory. parse_record_fn: A function that takes a raw record and returns the corresponding (image, label) pair. num_epochs: The number of epochs to repeat the dataset. Returns: Dataset of (image, label) pairs ready for iteration. """ # We prefetch a batch at a time, This can help smooth out the time taken to # load input files as we go through shuffling and processing. dataset = dataset.prefetch(buffer_size=batch_size) if is_training: # Shuffle the records. Note that we shuffle before repeating to ensure # that the shuffling respects epoch boundaries. dataset = dataset.shuffle(buffer_size=shuffle_buffer) # If we are training over multiple epochs before evaluating, repeat the # dataset for the appropriate number of epochs. dataset = dataset.repeat(num_epochs) # Parse the raw records into images and labels. Testing has shown that setting # num_parallel_batches > 1 produces no improvement in throughput, since # batch_size is almost always much greater than the number of CPU cores. dataset = dataset.apply( tf.contrib.data.map_and_batch( lambda value: parse_record_fn(value, is_training), batch_size=batch_size, num_parallel_batches=1, drop_remainder=True)) # Operations between the final prefetch and the get_next call to the iterator # will happen synchronously during run time. We prefetch here again to # background all of the above processing work and keep it out of the # critical training path. Setting buffer_size to tf.contrib.data.AUTOTUNE # allows DistributionStrategies to adjust how many batches to fetch based # on how many devices are present. dataset = dataset.prefetch(buffer_size=tf.contrib.data.AUTOTUNE) return dataset def get_synth_input_fn(height, width, num_channels, num_classes): """Returns an input function that returns a dataset with zeroes. This is useful in debugging input pipeline performance, as it removes all elements of file reading and image preprocessing. Args: height: Integer height that will be used to create a fake image tensor. width: Integer width that will be used to create a fake image tensor. num_channels: Integer depth that will be used to create a fake image tensor. num_classes: Number of classes that should be represented in the fake labels tensor Returns: An input_fn that can be used in place of a real one to return a dataset that can be used for iteration. """ def input_fn(is_training, data_dir, batch_size, *args, **kwargs): # pylint: disable=unused-argument images = tf.zeros((batch_size, height, width, num_channels), tf.float32) labels = tf.zeros((batch_size), tf.int32) return tf.data.Dataset.from_tensors((images, labels)).repeat() return input_fn ################################################################################ # Functions for running training/eval/validation loops for the model. ################################################################################ def learning_rate_with_decay( batch_size, batch_denom, num_images, boundary_epochs, decay_rates): """Get a learning rate that decays step-wise as training progresses. Args: batch_size: the number of examples processed in each training batch. batch_denom: this value will be used to scale the base learning rate. `0.1 * batch size` is divided by this number, such that when batch_denom == batch_size, the initial learning rate will be 0.1. num_images: total number of images that will be used for training. boundary_epochs: list of ints representing the epochs at which we decay the learning rate. decay_rates: list of floats representing the decay rates to be used for scaling the learning rate. It should have one more element than `boundary_epochs`, and all elements should have the same type. Returns: Returns a function that takes a single argument - the number of batches trained so far (global_step)- and returns the learning rate to be used for training the next batch. """ initial_learning_rate = 0.1 * batch_size / batch_denom batches_per_epoch = num_images / batch_size # Multiply the learning rate by 0.1 at 100, 150, and 200 epochs. boundaries = [int(batches_per_epoch * epoch) for epoch in boundary_epochs] vals = [initial_learning_rate * decay for decay in decay_rates] def learning_rate_fn(global_step): global_step = tf.cast(global_step, tf.int32) return tf.train.piecewise_constant(global_step, boundaries, vals) return learning_rate_fn def resnet_model_fn(features, labels, mode, model_class, resnet_size, weight_decay, learning_rate_fn, momentum, data_format, resnet_version, loss_scale, loss_filter_fn=None, dtype=resnet_model.DEFAULT_DTYPE): """Shared functionality for different resnet model_fns. Initializes the ResnetModel representing the model layers and uses that model to build the necessary EstimatorSpecs for the `mode` in question. For training, this means building losses, the optimizer, and the train op that get passed into the EstimatorSpec. For evaluation and prediction, the EstimatorSpec is returned without a train op, but with the necessary parameters for the given mode. Args: features: tensor representing input images labels: tensor representing class labels for all input images mode: current estimator mode; should be one of `tf.estimator.ModeKeys.TRAIN`, `EVALUATE`, `PREDICT` model_class: a class representing a TensorFlow model that has a __call__ function. We assume here that this is a subclass of ResnetModel. resnet_size: A single integer for the size of the ResNet model. weight_decay: weight decay loss rate used to regularize learned variables. learning_rate_fn: function that returns the current learning rate given the current global_step momentum: momentum term used for optimization data_format: Input format ('channels_last', 'channels_first', or None). If set to None, the format is dependent on whether a GPU is available. resnet_version: Integer representing which version of the ResNet network to use. See README for details. Valid values: [1, 2] loss_scale: The factor to scale the loss for numerical stability. A detailed summary is present in the arg parser help text. loss_filter_fn: function that takes a string variable name and returns True if the var should be included in loss calculation, and False otherwise. If None, batch_normalization variables will be excluded from the loss. dtype: the TensorFlow dtype to use for calculations. Returns: EstimatorSpec parameterized according to the input params and the current mode. """ # Generate a summary node for the images tf.summary.image('images', features, max_outputs=6) features = tf.cast(features, dtype) model = model_class(resnet_size, data_format, resnet_version=resnet_version, dtype=dtype) logits = model(features, mode == tf.estimator.ModeKeys.TRAIN) # This acts as a no-op if the logits are already in fp32 (provided logits are # not a SparseTensor). If dtype is is low precision, logits must be cast to # fp32 for numerical stability. logits = tf.cast(logits, tf.float32) predictions = { 'classes': tf.argmax(logits, axis=1), 'probabilities': tf.nn.softmax(logits, name='softmax_tensor') } if mode == tf.estimator.ModeKeys.PREDICT: # Return the predictions and the specification for serving a SavedModel return tf.estimator.EstimatorSpec( mode=mode, predictions=predictions, export_outputs={ 'predict': tf.estimator.export.PredictOutput(predictions) }) # Calculate loss, which includes softmax cross entropy and L2 regularization. cross_entropy = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=labels) # Create a tensor named cross_entropy for logging purposes. tf.identity(cross_entropy, name='cross_entropy') tf.summary.scalar('cross_entropy', cross_entropy) # If no loss_filter_fn is passed, assume we want the default behavior, # which is that batch_normalization variables are excluded from loss. def exclude_batch_norm(name): return 'batch_normalization' not in name loss_filter_fn = loss_filter_fn or exclude_batch_norm # Add weight decay to the loss. l2_loss = weight_decay * tf.add_n( # loss is computed using fp32 for numerical stability. [tf.nn.l2_loss(tf.cast(v, tf.float32)) for v in tf.trainable_variables() if loss_filter_fn(v.name)]) tf.summary.scalar('l2_loss', l2_loss) loss = cross_entropy + l2_loss if mode == tf.estimator.ModeKeys.TRAIN: global_step = tf.train.get_or_create_global_step() learning_rate = learning_rate_fn(global_step) # Create a tensor named learning_rate for logging purposes tf.identity(learning_rate, name='learning_rate') tf.summary.scalar('learning_rate', learning_rate) optimizer = tf.train.MomentumOptimizer( learning_rate=learning_rate, momentum=momentum ) if loss_scale != 1: # When computing fp16 gradients, often intermediate tensor values are # so small, they underflow to 0. To avoid this, we multiply the loss by # loss_scale to make these tensor values loss_scale times bigger. scaled_grad_vars = optimizer.compute_gradients(loss * loss_scale) # Once the gradient computation is complete we can scale the gradients # back to the correct scale before passing them to the optimizer. unscaled_grad_vars = [(grad / loss_scale, var) for grad, var in scaled_grad_vars] minimize_op = optimizer.apply_gradients(unscaled_grad_vars, global_step) else: minimize_op = optimizer.minimize(loss, global_step) update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS) train_op = tf.group(minimize_op, update_ops) else: train_op = None if not tf.contrib.distribute.has_distribution_strategy(): accuracy = tf.metrics.accuracy(labels, predictions['classes']) else: # Metrics are currently not compatible with distribution strategies during # training. This does not affect the overall performance of the model. accuracy = (tf.no_op(), tf.constant(0)) metrics = {'accuracy': accuracy} # Create a tensor named train_accuracy for logging purposes tf.identity(accuracy[1], name='train_accuracy') tf.summary.scalar('train_accuracy', accuracy[1]) return tf.estimator.EstimatorSpec( mode=mode, predictions=predictions, loss=loss, train_op=train_op, eval_metric_ops=metrics) def per_device_batch_size(batch_size, num_gpus): """For multi-gpu, batch-size must be a multiple of the number of GPUs. Note that this should eventually be handled by DistributionStrategies directly. Multi-GPU support is currently experimental, however, so doing the work here until that feature is in place. Args: batch_size: Global batch size to be divided among devices. This should be equal to num_gpus times the single-GPU batch_size for multi-gpu training. num_gpus: How many GPUs are used with DistributionStrategies. Returns: Batch size per device. Raises: ValueError: if batch_size is not divisible by number of devices """ if num_gpus <= 1: return batch_size remainder = batch_size % num_gpus if remainder: err = ('When running with multiple GPUs, batch size ' 'must be a multiple of the number of available GPUs. Found {} ' 'GPUs with a batch size of {}; try --batch_size={} instead.' ).format(num_gpus, batch_size, batch_size - remainder) raise ValueError(err) return int(batch_size / num_gpus) def resnet_main( flags_obj, model_function, input_function, dataset_name, shape=None): """Shared main loop for ResNet Models. Args: flags_obj: An object containing parsed flags. See define_resnet_flags() for details. model_function: the function that instantiates the Model and builds the ops for train/eval. This will be passed directly into the estimator. input_function: the function that processes the dataset and returns a dataset that the estimator can train on. This will be wrapped with all the relevant flags for running and passed to estimator. dataset_name: the name of the dataset for training and evaluation. This is used for logging purpose. shape: list of ints representing the shape of the images used for training. This is only used if flags_obj.export_dir is passed. """ # Using the Winograd non-fused algorithms provides a small performance boost. os.environ['TF_ENABLE_WINOGRAD_NONFUSED'] = '1' # Create session config based on values of inter_op_parallelism_threads and # intra_op_parallelism_threads. Note that we default to having # allow_soft_placement = True, which is required for multi-GPU and not # harmful for other modes. session_config = tf.ConfigProto( inter_op_parallelism_threads=flags_obj.inter_op_parallelism_threads, intra_op_parallelism_threads=flags_obj.intra_op_parallelism_threads, allow_soft_placement=True) if flags_core.get_num_gpus(flags_obj) == 0: distribution = tf.contrib.distribute.OneDeviceStrategy('device:CPU:0') elif flags_core.get_num_gpus(flags_obj) == 1: distribution = tf.contrib.distribute.OneDeviceStrategy('device:GPU:0') else: distribution = tf.contrib.distribute.MirroredStrategy( num_gpus=flags_core.get_num_gpus(flags_obj) ) run_config = tf.estimator.RunConfig(train_distribute=distribution, session_config=session_config) classifier = tf.estimator.Estimator( model_fn=model_function, model_dir=flags_obj.model_dir, config=run_config, params={ 'resnet_size': int(flags_obj.resnet_size), 'data_format': flags_obj.data_format, 'batch_size': flags_obj.batch_size, 'resnet_version': int(flags_obj.resnet_version), 'loss_scale': flags_core.get_loss_scale(flags_obj), 'dtype': flags_core.get_tf_dtype(flags_obj) }) run_params = { 'batch_size': flags_obj.batch_size, 'dtype': flags_core.get_tf_dtype(flags_obj), 'resnet_size': flags_obj.resnet_size, 'resnet_version': flags_obj.resnet_version, 'synthetic_data': flags_obj.use_synthetic_data, 'train_epochs': flags_obj.train_epochs, } benchmark_logger = logger.config_benchmark_logger(flags_obj) benchmark_logger.log_run_info('resnet', dataset_name, run_params) train_hooks = hooks_helper.get_train_hooks( flags_obj.hooks, batch_size=flags_obj.batch_size) def input_fn_train(): return input_function( is_training=True, data_dir=flags_obj.data_dir, batch_size=per_device_batch_size( flags_obj.batch_size, flags_core.get_num_gpus(flags_obj)), num_epochs=flags_obj.epochs_between_evals) def input_fn_eval(): return input_function( is_training=False, data_dir=flags_obj.data_dir, batch_size=per_device_batch_size( flags_obj.batch_size, flags_core.get_num_gpus(flags_obj)), num_epochs=1) total_training_cycle = (flags_obj.train_epochs // flags_obj.epochs_between_evals) for cycle_index in range(total_training_cycle): tf.logging.info('Starting a training cycle: %d/%d', cycle_index, total_training_cycle) classifier.train(input_fn=input_fn_train, hooks=train_hooks, max_steps=flags_obj.max_train_steps) tf.logging.info('Starting to evaluate.') # flags_obj.max_train_steps is generally associated with testing and # profiling. As a result it is frequently called with synthetic data, which # will iterate forever. Passing steps=flags_obj.max_train_steps allows the # eval (which is generally unimportant in those circumstances) to terminate. # Note that eval will run for max_train_steps each loop, regardless of the # global_step count. eval_results = classifier.evaluate(input_fn=input_fn_eval, steps=flags_obj.max_train_steps) benchmark_logger.log_evaluation_result(eval_results) if model_helpers.past_stop_threshold( flags_obj.stop_threshold, eval_results['accuracy']): break if flags_obj.export_dir is not None: # Exports a saved model for the given classifier. input_receiver_fn = export.build_tensor_serving_input_receiver_fn( shape, batch_size=flags_obj.batch_size) classifier.export_savedmodel(flags_obj.export_dir, input_receiver_fn) def define_resnet_flags(resnet_size_choices=None): """Add flags and validators for ResNet.""" flags_core.define_base() flags_core.define_performance(num_parallel_calls=False) flags_core.define_image() flags_core.define_benchmark() flags.adopt_module_key_flags(flags_core) flags.DEFINE_enum( name='resnet_version', short_name='rv', default='2', enum_values=['1', '2'], help=flags_core.help_wrap( 'Version of ResNet. (1 or 2) See README.md for details.')) choice_kwargs = dict( name='resnet_size', short_name='rs', default='50', help=flags_core.help_wrap('The size of the ResNet model to use.')) if resnet_size_choices is None: flags.DEFINE_string(**choice_kwargs) else: flags.DEFINE_enum(enum_values=resnet_size_choices, **choice_kwargs) # The current implementation of ResNet v1 is numerically unstable when run # with fp16 and will produce NaN errors soon after training begins. msg = ('ResNet version 1 is not currently supported with fp16. ' 'Please use version 2 instead.') @flags.multi_flags_validator(['dtype', 'resnet_version'], message=msg) def _forbid_v1_fp16(flag_values): # pylint: disable=unused-variable return (flags_core.DTYPE_MAP[flag_values['dtype']][0] != tf.float16 or flag_values['resnet_version'] != '1') ================================================ FILE: official/transformer/README.md ================================================ # Transformer Translation Model This is an implementation of the Transformer translation model as described in the [Attention is All You Need](https://arxiv.org/abs/1706.03762) paper. Based on the code provided by the authors: [Transformer code](https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/models/transformer.py) from [Tensor2Tensor](https://github.com/tensorflow/tensor2tensor). Transformer is a neural network architecture that solves sequence to sequence problems using attention mechanisms. Unlike traditional neural seq2seq models, Transformer does not involve recurrent connections. The attention mechanism learns dependencies between tokens in two sequences. Since attention weights apply to all tokens in the sequences, the Tranformer model is able to easily capture long-distance depedencies. Transformer's overall structure follows the standard encoder-decoder pattern. The encoder uses self-attention to compute a representation of the input sequence. The decoder generates the output sequence one token at a time, taking the encoder output and previous decoder-outputted tokens as inputs. The model also applies embeddings on the input and output tokens, and adds a constant positional encoding. The positional encoding adds information about the position of each token. ## Contents * [Contents](#contents) * [Walkthrough](#walkthrough) * [Benchmarks](#benchmarks) * [Training times](#training-times) * [Evaluation results](#evaluation-results) * [Detailed instructions](#detailed-instructions) * [Environment preparation](#environment-preparation) * [Download and preprocess datasets](#download-and-preprocess-datasets) * [Model training and evaluation](#model-training-and-evaluation) * [Translate using the model](#translate-using-the-model) * [Compute official BLEU score](#compute-official-bleu-score) * [Implementation overview](#implementation-overview) * [Model Definition](#model-definition) * [Model Estimator](#model-estimator) * [Other scripts](#other-scripts) * [Test dataset](#test-dataset) * [Term definitions](#term-definitions) ## Walkthrough Below are the commands for running the Transformer model. See the [Detailed instrutions](#detailed-instructions) for more details on running the model. ``` cd /path/to/models/official/transformer # Ensure that PYTHONPATH is correctly defined as described in # https://github.com/tensorflow/models/tree/master/official#running-the-models # export PYTHONPATH="$PYTHONPATH:/path/to/models" # Export variables PARAM_SET=big DATA_DIR=$HOME/transformer/data MODEL_DIR=$HOME/transformer/model_$PARAM_SET # Download training/evaluation datasets python data_download.py --data_dir=$DATA_DIR # Train the model for 10 epochs, and evaluate after every epoch. python transformer_main.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR \ --param_set=$PARAM_SET --bleu_source=test_data/newstest2014.en --bleu_ref=test_data/newstest2014.de # Run during training in a separate process to get continuous updates, # or after training is complete. tensorboard --logdir=$MODEL_DIR # Translate some text using the trained model python translate.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR \ --param_set=$PARAM_SET --text="hello world" # Compute model's BLEU score using the newstest2014 dataset. python translate.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR \ --param_set=$PARAM_SET --file=test_data/newstest2014.en --file_out=translation.en python compute_bleu.py --translation=translation.en --reference=test_data/newstest2014.de ``` ## Benchmarks ### Training times Currently, both big and base parameter sets run on a single GPU. The measurements below are reported from running the model on a P100 GPU. Param Set | batches/sec | batches per epoch | time per epoch --- | --- | --- | --- base | 4.8 | 83244 | 4 hr big | 1.1 | 41365 | 10 hr ### Evaluation results Below are the case-insensitive BLEU scores after 10 epochs. Param Set | Score --- | --- | base | 27.7 big | 28.9 ## Detailed instructions 0. ### Environment preparation #### Add models repo to PYTHONPATH Follow the instructions described in the [Running the models](https://github.com/tensorflow/models/tree/master/official#running-the-models) section to add the models folder to the python path. #### Export variables (optional) Export the following variables, or modify the values in each of the snippets below: ``` PARAM_SET=big DATA_DIR=$HOME/transformer/data MODEL_DIR=$HOME/transformer/model_$PARAM_SET ``` 1. ### Download and preprocess datasets [data_download.py](data_download.py) downloads and preprocesses the training and evaluation WMT datasets. After the data is downloaded and extracted, the training data is used to generate a vocabulary of subtokens. The evaluation and training strings are tokenized, and the resulting data is sharded, shuffled, and saved as TFRecords. 1.75GB of compressed data will be downloaded. In total, the raw files (compressed, extracted, and combined files) take up 8.4GB of disk space. The resulting TFRecord and vocabulary files are 722MB. The script takes around 40 minutes to run, with the bulk of the time spent downloading and ~15 minutes spent on preprocessing. Command to run: ``` python data_download.py --data_dir=$DATA_DIR ``` Arguments: * `--data_dir`: Path where the preprocessed TFRecord data, and vocab file will be saved. * Use the `--help` or `-h` flag to get a full list of possible arguments. 2. ### Model training and evaluation [transformer_main.py](transformer_main.py) creates a Transformer model, and trains it using Tensorflow Estimator. Command to run: ``` python transformer_main.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR --param_set=$PARAM_SET ``` Arguments: * `--data_dir`: This should be set to the same directory given to the `data_download`'s `data_dir` argument. * `--model_dir`: Directory to save Transformer model training checkpoints. * `--param_set`: Parameter set to use when creating and training the model. Options are `base` and `big` (default). * Use the `--help` or `-h` flag to get a full list of possible arguments. #### Customizing training schedule By default, the model will train for 10 epochs, and evaluate after every epoch. The training schedule may be defined through the flags: * Training with epochs (default): * `--train_epochs`: The total number of complete passes to make through the dataset * `--epochs_between_evals`: The number of epochs to train between evaluations. * Training with steps: * `--train_steps`: sets the total number of training steps to run. * `--steps_between_evals`: Number of training steps to run between evaluations. Only one of `train_epochs` or `train_steps` may be set. Since the default option is to evaluate the model after training for an epoch, it may take 4 or more hours between model evaluations. To get more frequent evaluations, use the flags `--train_steps=250000 --steps_between_evals=1000`. Note: At the beginning of each training session, the training dataset is reloaded and shuffled. Stopping the training before completing an epoch may result in worse model quality, due to the chance that some examples may be seen more than others. Therefore, it is recommended to use epochs when the model quality is important. #### Compute BLEU score during model evaluation Use these flags to compute the BLEU when the model evaluates: * `--bleu_source`: Path to file containing text to translate. * `--bleu_ref`: Path to file containing the reference translation. * `--stop_threshold`: Train until the BLEU score reaches this lower bound. This setting overrides the `--train_steps` and `--train_epochs` flags. The test source and reference files located in the `test_data` directory are extracted from the preprocessed dataset from the [NMT Seq2Seq tutorial](https://google.github.io/seq2seq/nmt/#download-data). When running `transformer_main.py`, use the flags: `--bleu_source=test_data/newstest2014.en --bleu_ref=test_data/newstest2014.de` #### Tensorboard Training and evaluation metrics (loss, accuracy, approximate BLEU score, etc.) are logged, and can be displayed in the browser using Tensorboard. ``` tensorboard --logdir=$MODEL_DIR ``` The values are displayed at [localhost:6006](localhost:6006). 3. ### Translate using the model [translate.py](translate.py) contains the script to use the trained model to translate input text or file. Each line in the file is translated separately. Command to run: ``` python translate.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR --param_set=PARAM_SET --text="hello world" ``` Arguments for initializing the Subtokenizer and trained model: * `--data_dir`: Used to locate the vocabulary file to create a Subtokenizer, which encodes the input and decodes the model output. * `--model_dir` and `--param_set`: These parameters are used to rebuild the trained model Arguments for specifying what to translate: * `--text`: Text to translate * `--file`: Path to file containing text to translate * `--file_out`: If `--file` is set, then this file will store the input file's translations. To translate the newstest2014 data, run: ``` python translate.py --data_dir=$DATA_DIR --model_dir=$MODEL_DIR \ --param_set=PARAM_SET --file=test_data/newstest2014.en --file_out=translation.en ``` Translating the file takes around 15 minutes on a GTX1080, or 5 minutes on a P100. 4. ### Compute official BLEU score Use [compute_bleu.py](compute_bleu.py) to compute the BLEU by comparing generated translations to the reference translation. Command to run: ``` python compute_bleu.py --translation=translation.en --reference=test_data/newstest2014.de ``` Arguments: * `--translation`: Path to file containing generated translations. * `--reference`: Path to file containing reference translations. * Use the `--help` or `-h` flag to get a full list of possible arguments. ## Implementation overview A brief look at each component in the code: ### Model Definition The [model](model) subdirectory contains the implementation of the Transformer model. The following files define the Transformer model and its layers: * [transformer.py](model/transformer.py): Defines the transformer model and its encoder/decoder layer stacks. * [embedding_layer.py](model/embedding_layer.py): Contains the layer that calculates the embeddings. The embedding weights are also used to calculate the pre-softmax probabilities from the decoder output. * [attention_layer.py](model/attention_layer.py): Defines the multi-headed and self attention layers that are used in the encoder/decoder stacks. * [ffn_layer.py](model/ffn_layer.py): Defines the feedforward network that is used in the encoder/decoder stacks. The network is composed of 2 fully connected layers. Other files: * [beam_search.py](model/beam_search.py) contains the beam search implementation, which is used during model inference to find high scoring translations. * [model_params.py](model/model_params.py) contains the parameters used for the big and base models. * [model_utils.py](model/model_utils.py) defines some helper functions used in the model (calculating padding, bias, etc.). ### Model Estimator [transformer_main.py](model/transformer.py) creates an `Estimator` to train and evaluate the model. Helper functions: * [utils/dataset.py](utils/dataset.py): contains functions for creating a `dataset` that is passed to the `Estimator`. * [utils/metrics.py](utils/metrics.py): defines metrics functions used by the `Estimator` to evaluate the ### Other scripts Aside from the main file to train the Transformer model, we provide other scripts for using the model or downloading the data: #### Data download and preprocessing [data_download.py](data_download.py) downloads and extracts data, then uses `Subtokenizer` to tokenize strings into arrays of int IDs. The int arrays are converted to `tf.Examples` and saved in the `tf.RecordDataset` format. The data is downloaded from the Workshop of Machine Transtion (WMT) [news translation task](http://www.statmt.org/wmt17/translation-task.html). The following datasets are used: * Europarl v7 * Common Crawl corpus * News Commentary v12 See the [download section](http://www.statmt.org/wmt17/translation-task.html#download) to explore the raw datasets. The parameters in this model are tuned to fit the English-German translation data, so the EN-DE texts are extracted from the downloaded compressed files. The text is transformed into arrays of integer IDs using the `Subtokenizer` defined in [`utils/tokenizer.py`](util/tokenizer.py). During initialization of the `Subtokenizer`, the raw training data is used to generate a vocabulary list containing common subtokens. The target vocabulary size of the WMT dataset is 32,768. The set of subtokens is found through binary search on the minimum number of times a subtoken appears in the data. The actual vocabulary size is 33,708, and is stored in a 324kB file. #### Translation Translation is defined in [translate.py](translate.py). First, `Subtokenizer` tokenizes the input. The vocabulary file is the same used to tokenize the training/eval files. Next, beam search is used to find the combination of tokens that maximizes the probability outputted by the model decoder. The tokens are then converted back to strings with `Subtokenizer`. #### BLEU computation [compute_bleu.py](compute_bleu.py): Implementation from [https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/bleu_hook.py](https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/bleu_hook.py). ### Test dataset The [newstest2014 files](test_data) are extracted from the [NMT Seq2Seq tutorial](https://google.github.io/seq2seq/nmt/#download-data). The raw text files are converted from the SGM format of the [WMT 2016](http://www.statmt.org/wmt16/translation-task.html) test sets. ## Term definitions **Steps / Epochs**: * Step: unit for processing a single batch of data * Epoch: a complete run through the dataset Example: Consider a training a dataset with 100 examples that is divided into 20 batches with 5 examples per batch. A single training step trains the model on one batch. After 20 training steps, the model will have trained on every batch in the dataset, or one epoch. **Subtoken**: Words are referred to as tokens, and parts of words are referred to as 'subtokens'. For example, the word 'inclined' may be split into `['incline', 'd_']`. The '\_' indicates the end of the token. The subtoken vocabulary list is guaranteed to contain the alphabet (including numbers and special characters), so all words can be tokenized. ================================================ FILE: official/transformer/__init__.py ================================================ ================================================ FILE: official/transformer/compute_bleu.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Script to compute official BLEU score. Source: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/bleu_hook.py """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import re import sys import unicodedata # pylint: disable=g-bad-import-order import six from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.transformer.utils import metrics from official.utils.flags import core as flags_core class UnicodeRegex(object): """Ad-hoc hack to recognize all punctuation and symbols.""" def __init__(self): punctuation = self.property_chars("P") self.nondigit_punct_re = re.compile(r"([^\d])([" + punctuation + r"])") self.punct_nondigit_re = re.compile(r"([" + punctuation + r"])([^\d])") self.symbol_re = re.compile("([" + self.property_chars("S") + "])") def property_chars(self, prefix): return "".join(six.unichr(x) for x in range(sys.maxunicode) if unicodedata.category(six.unichr(x)).startswith(prefix)) uregex = UnicodeRegex() def bleu_tokenize(string): r"""Tokenize a string following the official BLEU implementation. See https://github.com/moses-smt/mosesdecoder/' 'blob/master/scripts/generic/mteval-v14.pl#L954-L983 In our case, the input string is expected to be just one line and no HTML entities de-escaping is needed. So we just tokenize on punctuation and symbols, except when a punctuation is preceded and followed by a digit (e.g. a comma/dot as a thousand/decimal separator). Note that a numer (e.g. a year) followed by a dot at the end of sentence is NOT tokenized, i.e. the dot stays with the number because `s/(\p{P})(\P{N})/ $1 $2/g` does not match this case (unless we add a space after each sentence). However, this error is already in the original mteval-v14.pl and we want to be consistent with it. Args: string: the input string Returns: a list of tokens """ string = uregex.nondigit_punct_re.sub(r"\1 \2 ", string) string = uregex.punct_nondigit_re.sub(r" \1 \2", string) string = uregex.symbol_re.sub(r" \1 ", string) return string.split() def bleu_wrapper(ref_filename, hyp_filename, case_sensitive=False): """Compute BLEU for two files (reference and hypothesis translation).""" ref_lines = tf.gfile.Open(ref_filename).read().strip().splitlines() hyp_lines = tf.gfile.Open(hyp_filename).read().strip().splitlines() if len(ref_lines) != len(hyp_lines): raise ValueError("Reference and translation files have different number of " "lines.") if not case_sensitive: ref_lines = [x.lower() for x in ref_lines] hyp_lines = [x.lower() for x in hyp_lines] ref_tokens = [bleu_tokenize(x) for x in ref_lines] hyp_tokens = [bleu_tokenize(x) for x in hyp_lines] return metrics.compute_bleu(ref_tokens, hyp_tokens) * 100 def main(unused_argv): if FLAGS.bleu_variant in ("both", "uncased"): score = bleu_wrapper(FLAGS.reference, FLAGS.translation, False) tf.logging.info("Case-insensitive results: %f" % score) if FLAGS.bleu_variant in ("both", "cased"): score = bleu_wrapper(FLAGS.reference, FLAGS.translation, True) tf.logging.info("Case-sensitive results: %f" % score) def define_compute_bleu_flags(): """Add flags for computing BLEU score.""" flags.DEFINE_string( name="translation", default=None, help=flags_core.help_wrap("File containing translated text.")) flags.mark_flag_as_required("translation") flags.DEFINE_string( name="reference", default=None, help=flags_core.help_wrap("File containing reference translation.")) flags.mark_flag_as_required("reference") flags.DEFINE_enum( name="bleu_variant", short_name="bv", default="both", enum_values=["both", "uncased", "cased"], case_sensitive=False, help=flags_core.help_wrap( "Specify one or more BLEU variants to calculate. Variants: \"cased\"" ", \"uncased\", or \"both\".")) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_compute_bleu_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/transformer/compute_bleu_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Test functions in compute_blue.py.""" import tempfile import unittest import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer import compute_bleu class ComputeBleuTest(unittest.TestCase): def _create_temp_file(self, text): temp_file = tempfile.NamedTemporaryFile(delete=False) with tf.gfile.Open(temp_file.name, 'w') as w: w.write(text) return temp_file.name def test_bleu_same(self): ref = self._create_temp_file("test 1 two 3\nmore tests!") hyp = self._create_temp_file("test 1 two 3\nmore tests!") uncased_score = compute_bleu.bleu_wrapper(ref, hyp, False) cased_score = compute_bleu.bleu_wrapper(ref, hyp, True) self.assertEqual(100, uncased_score) self.assertEqual(100, cased_score) def test_bleu_same_different_case(self): ref = self._create_temp_file("Test 1 two 3\nmore tests!") hyp = self._create_temp_file("test 1 two 3\nMore tests!") uncased_score = compute_bleu.bleu_wrapper(ref, hyp, False) cased_score = compute_bleu.bleu_wrapper(ref, hyp, True) self.assertEqual(100, uncased_score) self.assertLess(cased_score, 100) def test_bleu_different(self): ref = self._create_temp_file("Testing\nmore tests!") hyp = self._create_temp_file("Dog\nCat") uncased_score = compute_bleu.bleu_wrapper(ref, hyp, False) cased_score = compute_bleu.bleu_wrapper(ref, hyp, True) self.assertLess(uncased_score, 100) self.assertLess(cased_score, 100) def test_bleu_tokenize(self): s = "Test0, 1 two, 3" tokenized = compute_bleu.bleu_tokenize(s) self.assertEqual(["Test0", ",", "1", "two", ",", "3"], tokenized) if __name__ == "__main__": unittest.main() ================================================ FILE: official/transformer/data_download.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Download and preprocess WMT17 ende training and evaluation datasets.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import random import tarfile # pylint: disable=g-bad-import-order import six from six.moves import urllib from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.transformer.utils import tokenizer from official.utils.flags import core as flags_core # Data sources for training/evaluating the transformer translation model. # If any of the training sources are changed, then either: # 1) use the flag `--search` to find the best min count or # 2) update the _TRAIN_DATA_MIN_COUNT constant. # min_count is the minimum number of times a token must appear in the data # before it is added to the vocabulary. "Best min count" refers to the value # that generates a vocabulary set that is closest in size to _TARGET_VOCAB_SIZE. _TRAIN_DATA_SOURCES = [ { "url": "http://data.statmt.org/wmt17/translation-task/" "training-parallel-nc-v12.tgz", "input": "news-commentary-v12.de-en.en", "target": "news-commentary-v12.de-en.de", }, { "url": "http://www.statmt.org/wmt13/training-parallel-commoncrawl.tgz", "input": "commoncrawl.de-en.en", "target": "commoncrawl.de-en.de", }, { "url": "http://www.statmt.org/wmt13/training-parallel-europarl-v7.tgz", "input": "europarl-v7.de-en.en", "target": "europarl-v7.de-en.de", }, ] # Use pre-defined minimum count to generate subtoken vocabulary. _TRAIN_DATA_MIN_COUNT = 6 _EVAL_DATA_SOURCES = [ { "url": "http://data.statmt.org/wmt17/translation-task/dev.tgz", "input": "newstest2013.en", "target": "newstest2013.de", } ] # Vocabulary constants _TARGET_VOCAB_SIZE = 32768 # Number of subtokens in the vocabulary list. _TARGET_THRESHOLD = 327 # Accept vocabulary if size is within this threshold VOCAB_FILE = "vocab.ende.%d" % _TARGET_VOCAB_SIZE # Strings to inclue in the generated files. _PREFIX = "wmt32k" _TRAIN_TAG = "train" _EVAL_TAG = "dev" # Following WMT and Tensor2Tensor conventions, in which the # evaluation datasets are tagged as "dev" for development. # Number of files to split train and evaluation data _TRAIN_SHARDS = 100 _EVAL_SHARDS = 1 def find_file(path, filename, max_depth=5): """Returns full filepath if the file is in path or a subdirectory.""" for root, dirs, files in os.walk(path): if filename in files: return os.path.join(root, filename) # Don't search past max_depth depth = root[len(path) + 1:].count(os.sep) if depth > max_depth: del dirs[:] # Clear dirs return None ############################################################################### # Download and extraction functions ############################################################################### def get_raw_files(raw_dir, data_source): """Return raw files from source. Downloads/extracts if needed. Args: raw_dir: string directory to store raw files data_source: dictionary with {"url": url of compressed dataset containing input and target files "input": file with data in input language "target": file with data in target language} Returns: dictionary with {"inputs": list of files containing data in input language "targets": list of files containing corresponding data in target language } """ raw_files = { "inputs": [], "targets": [], } # keys for d in data_source: input_file, target_file = download_and_extract( raw_dir, d["url"], d["input"], d["target"]) raw_files["inputs"].append(input_file) raw_files["targets"].append(target_file) return raw_files def download_report_hook(count, block_size, total_size): """Report hook for download progress. Args: count: current block number block_size: block size total_size: total size """ percent = int(count * block_size * 100 / total_size) print("\r%d%%" % percent + " completed", end="\r") def download_from_url(path, url): """Download content from a url. Args: path: string directory where file will be downloaded url: string url Returns: Full path to downloaded file """ filename = url.split("/")[-1] found_file = find_file(path, filename, max_depth=0) if found_file is None: filename = os.path.join(path, filename) tf.logging.info("Downloading from %s to %s." % (url, filename)) inprogress_filepath = filename + ".incomplete" inprogress_filepath, _ = urllib.request.urlretrieve( url, inprogress_filepath, reporthook=download_report_hook) # Print newline to clear the carriage return from the download progress. print() tf.gfile.Rename(inprogress_filepath, filename) return filename else: tf.logging.info("Already downloaded: %s (at %s)." % (url, found_file)) return found_file def download_and_extract(path, url, input_filename, target_filename): """Extract files from downloaded compressed archive file. Args: path: string directory where the files will be downloaded url: url containing the compressed input and target files input_filename: name of file containing data in source language target_filename: name of file containing data in target language Returns: Full paths to extracted input and target files. Raises: OSError: if the the download/extraction fails. """ # Check if extracted files already exist in path input_file = find_file(path, input_filename) target_file = find_file(path, target_filename) if input_file and target_file: tf.logging.info("Already downloaded and extracted %s." % url) return input_file, target_file # Download archive file if it doesn't already exist. compressed_file = download_from_url(path, url) # Extract compressed files tf.logging.info("Extracting %s." % compressed_file) with tarfile.open(compressed_file, "r:gz") as corpus_tar: corpus_tar.extractall(path) # Return filepaths of the requested files. input_file = find_file(path, input_filename) target_file = find_file(path, target_filename) if input_file and target_file: return input_file, target_file raise OSError("Download/extraction failed for url %s to path %s" % (url, path)) def txt_line_iterator(path): """Iterate through lines of file.""" with tf.gfile.Open(path) as f: for line in f: yield line.strip() def compile_files(raw_dir, raw_files, tag): """Compile raw files into a single file for each language. Args: raw_dir: Directory containing downloaded raw files. raw_files: Dict containing filenames of input and target data. {"inputs": list of files containing data in input language "targets": list of files containing corresponding data in target language } tag: String to append to the compiled filename. Returns: Full path of compiled input and target files. """ tf.logging.info("Compiling files with tag %s." % tag) filename = "%s-%s" % (_PREFIX, tag) input_compiled_file = os.path.join(raw_dir, filename + ".lang1") target_compiled_file = os.path.join(raw_dir, filename + ".lang2") with tf.gfile.Open(input_compiled_file, mode="w") as input_writer: with tf.gfile.Open(target_compiled_file, mode="w") as target_writer: for i in range(len(raw_files["inputs"])): input_file = raw_files["inputs"][i] target_file = raw_files["targets"][i] tf.logging.info("Reading files %s and %s." % (input_file, target_file)) write_file(input_writer, input_file) write_file(target_writer, target_file) return input_compiled_file, target_compiled_file def write_file(writer, filename): """Write all of lines from file using the writer.""" for line in txt_line_iterator(filename): writer.write(line) writer.write("\n") ############################################################################### # Data preprocessing ############################################################################### def encode_and_save_files( subtokenizer, data_dir, raw_files, tag, total_shards): """Save data from files as encoded Examples in TFrecord format. Args: subtokenizer: Subtokenizer object that will be used to encode the strings. data_dir: The directory in which to write the examples raw_files: A tuple of (input, target) data files. Each line in the input and the corresponding line in target file will be saved in a tf.Example. tag: String that will be added onto the file names. total_shards: Number of files to divide the data into. Returns: List of all files produced. """ # Create a file for each shard. filepaths = [shard_filename(data_dir, tag, n + 1, total_shards) for n in range(total_shards)] if all_exist(filepaths): tf.logging.info("Files with tag %s already exist." % tag) return filepaths tf.logging.info("Saving files with tag %s." % tag) input_file = raw_files[0] target_file = raw_files[1] # Write examples to each shard in round robin order. tmp_filepaths = [fname + ".incomplete" for fname in filepaths] writers = [tf.python_io.TFRecordWriter(fname) for fname in tmp_filepaths] counter, shard = 0, 0 for counter, (input_line, target_line) in enumerate(zip( txt_line_iterator(input_file), txt_line_iterator(target_file))): if counter > 0 and counter % 100000 == 0: tf.logging.info("\tSaving case %d." % counter) example = dict_to_example( {"inputs": subtokenizer.encode(input_line, add_eos=True), "targets": subtokenizer.encode(target_line, add_eos=True)}) writers[shard].write(example.SerializeToString()) shard = (shard + 1) % total_shards for writer in writers: writer.close() for tmp_name, final_name in zip(tmp_filepaths, filepaths): tf.gfile.Rename(tmp_name, final_name) tf.logging.info("Saved %d Examples", counter + 1) return filepaths def shard_filename(path, tag, shard_num, total_shards): """Create filename for data shard.""" return os.path.join( path, "%s-%s-%.5d-of-%.5d" % (_PREFIX, tag, shard_num, total_shards)) def shuffle_records(fname): """Shuffle records in a single file.""" tf.logging.info("Shuffling records in file %s" % fname) # Rename file prior to shuffling tmp_fname = fname + ".unshuffled" tf.gfile.Rename(fname, tmp_fname) reader = tf.python_io.tf_record_iterator(tmp_fname) records = [] for record in reader: records.append(record) if len(records) % 100000 == 0: tf.logging.info("\tRead: %d", len(records)) random.shuffle(records) # Write shuffled records to original file name with tf.python_io.TFRecordWriter(fname) as w: for count, record in enumerate(records): w.write(record) if count > 0 and count % 100000 == 0: tf.logging.info("\tWriting record: %d" % count) tf.gfile.Remove(tmp_fname) def dict_to_example(dictionary): """Converts a dictionary of string->int to a tf.Example.""" features = {} for k, v in six.iteritems(dictionary): features[k] = tf.train.Feature(int64_list=tf.train.Int64List(value=v)) return tf.train.Example(features=tf.train.Features(feature=features)) def all_exist(filepaths): """Returns true if all files in the list exist.""" for fname in filepaths: if not tf.gfile.Exists(fname): return False return True def make_dir(path): if not tf.gfile.Exists(path): tf.logging.info("Creating directory %s" % path) tf.gfile.MakeDirs(path) def main(unused_argv): """Obtain training and evaluation data for the Transformer model.""" make_dir(FLAGS.raw_dir) make_dir(FLAGS.data_dir) # Get paths of download/extracted training and evaluation files. tf.logging.info("Step 1/4: Downloading data from source") train_files = get_raw_files(FLAGS.raw_dir, _TRAIN_DATA_SOURCES) eval_files = get_raw_files(FLAGS.raw_dir, _EVAL_DATA_SOURCES) # Create subtokenizer based on the training files. tf.logging.info("Step 2/4: Creating subtokenizer and building vocabulary") train_files_flat = train_files["inputs"] + train_files["targets"] vocab_file = os.path.join(FLAGS.data_dir, VOCAB_FILE) subtokenizer = tokenizer.Subtokenizer.init_from_files( vocab_file, train_files_flat, _TARGET_VOCAB_SIZE, _TARGET_THRESHOLD, min_count=None if FLAGS.search else _TRAIN_DATA_MIN_COUNT) tf.logging.info("Step 3/4: Compiling training and evaluation data") compiled_train_files = compile_files(FLAGS.raw_dir, train_files, _TRAIN_TAG) compiled_eval_files = compile_files(FLAGS.raw_dir, eval_files, _EVAL_TAG) # Tokenize and save data as Examples in the TFRecord format. tf.logging.info("Step 4/4: Preprocessing and saving data") train_tfrecord_files = encode_and_save_files( subtokenizer, FLAGS.data_dir, compiled_train_files, _TRAIN_TAG, _TRAIN_SHARDS) encode_and_save_files( subtokenizer, FLAGS.data_dir, compiled_eval_files, _EVAL_TAG, _EVAL_SHARDS) for fname in train_tfrecord_files: shuffle_records(fname) def define_data_download_flags(): """Add flags specifying data download arguments.""" flags.DEFINE_string( name="data_dir", short_name="dd", default="/tmp/translate_ende", help=flags_core.help_wrap( "Directory for where the translate_ende_wmt32k dataset is saved.")) flags.DEFINE_string( name="raw_dir", short_name="rd", default="/tmp/translate_ende_raw", help=flags_core.help_wrap( "Path where the raw data will be downloaded and extracted.")) flags.DEFINE_bool( name="search", default=False, help=flags_core.help_wrap( "If set, use binary search to find the vocabulary set with size" "closest to the target size (%d)." % _TARGET_VOCAB_SIZE)) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_data_download_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/transformer/model/__init__.py ================================================ ================================================ FILE: official/transformer/model/attention_layer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Implementation of multiheaded attention and self-attention layers.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class Attention(tf.layers.Layer): """Multi-headed attention layer.""" def __init__(self, hidden_size, num_heads, attention_dropout, train): if hidden_size % num_heads != 0: raise ValueError("Hidden size must be evenly divisible by the number of " "heads.") super(Attention, self).__init__() self.hidden_size = hidden_size self.num_heads = num_heads self.attention_dropout = attention_dropout self.train = train # Layers for linearly projecting the queries, keys, and values. self.q_dense_layer = tf.layers.Dense(hidden_size, use_bias=False, name="q") self.k_dense_layer = tf.layers.Dense(hidden_size, use_bias=False, name="k") self.v_dense_layer = tf.layers.Dense(hidden_size, use_bias=False, name="v") self.output_dense_layer = tf.layers.Dense(hidden_size, use_bias=False, name="output_transform") def split_heads(self, x): """Split x into different heads, and transpose the resulting value. The tensor is transposed to insure the inner dimensions hold the correct values during the matrix multiplication. Args: x: A tensor with shape [batch_size, length, hidden_size] Returns: A tensor with shape [batch_size, num_heads, length, hidden_size/num_heads] """ with tf.name_scope("split_heads"): batch_size = tf.shape(x)[0] length = tf.shape(x)[1] # Calculate depth of last dimension after it has been split. depth = (self.hidden_size // self.num_heads) # Split the last dimension x = tf.reshape(x, [batch_size, length, self.num_heads, depth]) # Transpose the result return tf.transpose(x, [0, 2, 1, 3]) def combine_heads(self, x): """Combine tensor that has been split. Args: x: A tensor [batch_size, num_heads, length, hidden_size/num_heads] Returns: A tensor with shape [batch_size, length, hidden_size] """ with tf.name_scope("combine_heads"): batch_size = tf.shape(x)[0] length = tf.shape(x)[2] x = tf.transpose(x, [0, 2, 1, 3]) # --> [batch, length, num_heads, depth] return tf.reshape(x, [batch_size, length, self.hidden_size]) def call(self, x, y, bias, cache=None): """Apply attention mechanism to x and y. Args: x: a tensor with shape [batch_size, length_x, hidden_size] y: a tensor with shape [batch_size, length_y, hidden_size] bias: attention bias that will be added to the result of the dot product. cache: (Used during prediction) dictionary with tensors containing results of previous attentions. The dictionary must have the items: {"k": tensor with shape [batch_size, i, key_channels], "v": tensor with shape [batch_size, i, value_channels]} where i is the current decoded length. Returns: Attention layer output with shape [batch_size, length_x, hidden_size] """ # Linearly project the query (q), key (k) and value (v) using different # learned projections. This is in preparation of splitting them into # multiple heads. Multi-head attention uses multiple queries, keys, and # values rather than regular attention (which uses a single q, k, v). q = self.q_dense_layer(x) k = self.k_dense_layer(y) v = self.v_dense_layer(y) if cache is not None: # Combine cached keys and values with new keys and values. k = tf.concat([cache["k"], k], axis=1) v = tf.concat([cache["v"], v], axis=1) # Update cache cache["k"] = k cache["v"] = v # Split q, k, v into heads. q = self.split_heads(q) k = self.split_heads(k) v = self.split_heads(v) # Scale q to prevent the dot product between q and k from growing too large. depth = (self.hidden_size // self.num_heads) q *= depth ** -0.5 # Calculate dot product attention logits = tf.matmul(q, k, transpose_b=True) logits += bias weights = tf.nn.softmax(logits, name="attention_weights") if self.train: weights = tf.nn.dropout(weights, 1.0 - self.attention_dropout) attention_output = tf.matmul(weights, v) # Recombine heads --> [batch_size, length, hidden_size] attention_output = self.combine_heads(attention_output) # Run the combined outputs through another linear projection layer. attention_output = self.output_dense_layer(attention_output) return attention_output class SelfAttention(Attention): """Multiheaded self-attention layer.""" def call(self, x, bias, cache=None): return super(SelfAttention, self).call(x, x, bias, cache) ================================================ FILE: official/transformer/model/beam_search.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Beam search to find the translated sequence with the highest probability. Source implementation from Tensor2Tensor: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/beam_search.py """ import tensorflow as tf from tensorflow.python.util import nest # Default value for INF INF = 1. * 1e7 class _StateKeys(object): """Keys to dictionary storing the state of the beam search loop.""" # Variable storing the loop index. CUR_INDEX = "CUR_INDEX" # Top sequences that are alive for each batch item. Alive sequences are ones # that have not generated an EOS token. Sequences that reach EOS are marked as # finished and moved to the FINISHED_SEQ tensor. # Has shape [batch_size, beam_size, CUR_INDEX + 1] ALIVE_SEQ = "ALIVE_SEQ" # Log probabilities of each alive sequence. Shape [batch_size, beam_size] ALIVE_LOG_PROBS = "ALIVE_LOG_PROBS" # Dictionary of cached values for each alive sequence. The cache stores # the encoder output, attention bias, and the decoder attention output from # the previous iteration. ALIVE_CACHE = "ALIVE_CACHE" # Top finished sequences for each batch item. # Has shape [batch_size, beam_size, CUR_INDEX + 1]. Sequences that are # shorter than CUR_INDEX + 1 are padded with 0s. FINISHED_SEQ = "FINISHED_SEQ" # Scores for each finished sequence. Score = log probability / length norm # Shape [batch_size, beam_size] FINISHED_SCORES = "FINISHED_SCORES" # Flags indicating which sequences in the finished sequences are finished. # At the beginning, all of the sequences in FINISHED_SEQ are filler values. # True -> finished sequence, False -> filler. Shape [batch_size, beam_size] FINISHED_FLAGS = "FINISHED_FLAGS" class SequenceBeamSearch(object): """Implementation of beam search loop.""" def __init__(self, symbols_to_logits_fn, vocab_size, batch_size, beam_size, alpha, max_decode_length, eos_id): self.symbols_to_logits_fn = symbols_to_logits_fn self.vocab_size = vocab_size self.batch_size = batch_size self.beam_size = beam_size self.alpha = alpha self.max_decode_length = max_decode_length self.eos_id = eos_id def search(self, initial_ids, initial_cache): """Beam search for sequences with highest scores.""" state, state_shapes = self._create_initial_state(initial_ids, initial_cache) finished_state = tf.while_loop( self._continue_search, self._search_step, loop_vars=[state], shape_invariants=[state_shapes], parallel_iterations=1, back_prop=False) finished_state = finished_state[0] alive_seq = finished_state[_StateKeys.ALIVE_SEQ] alive_log_probs = finished_state[_StateKeys.ALIVE_LOG_PROBS] finished_seq = finished_state[_StateKeys.FINISHED_SEQ] finished_scores = finished_state[_StateKeys.FINISHED_SCORES] finished_flags = finished_state[_StateKeys.FINISHED_FLAGS] # Account for corner case where there are no finished sequences for a # particular batch item. In that case, return alive sequences for that batch # item. finished_seq = tf.where( tf.reduce_any(finished_flags, 1), finished_seq, alive_seq) finished_scores = tf.where( tf.reduce_any(finished_flags, 1), finished_scores, alive_log_probs) return finished_seq, finished_scores def _create_initial_state(self, initial_ids, initial_cache): """Return initial state dictionary and its shape invariants. Args: initial_ids: initial ids to pass into the symbols_to_logits_fn. int tensor with shape [batch_size, 1] initial_cache: dictionary storing values to be passed into the symbols_to_logits_fn. Returns: state and shape invariant dictionaries with keys from _StateKeys """ # Current loop index (starts at 0) cur_index = tf.constant(0) # Create alive sequence with shape [batch_size, beam_size, 1] alive_seq = _expand_to_beam_size(initial_ids, self.beam_size) alive_seq = tf.expand_dims(alive_seq, axis=2) # Create tensor for storing initial log probabilities. # Assume initial_ids are prob 1.0 initial_log_probs = tf.constant( [[0.] + [-float("inf")] * (self.beam_size - 1)]) alive_log_probs = tf.tile(initial_log_probs, [self.batch_size, 1]) # Expand all values stored in the dictionary to the beam size, so that each # beam has a separate cache. alive_cache = nest.map_structure( lambda t: _expand_to_beam_size(t, self.beam_size), initial_cache) # Initialize tensor storing finished sequences with filler values. finished_seq = tf.zeros(tf.shape(alive_seq), tf.int32) # Set scores of the initial finished seqs to negative infinity. finished_scores = tf.ones([self.batch_size, self.beam_size]) * -INF # Initialize finished flags with all False values. finished_flags = tf.zeros([self.batch_size, self.beam_size], tf.bool) # Create state dictionary state = { _StateKeys.CUR_INDEX: cur_index, _StateKeys.ALIVE_SEQ: alive_seq, _StateKeys.ALIVE_LOG_PROBS: alive_log_probs, _StateKeys.ALIVE_CACHE: alive_cache, _StateKeys.FINISHED_SEQ: finished_seq, _StateKeys.FINISHED_SCORES: finished_scores, _StateKeys.FINISHED_FLAGS: finished_flags } # Create state invariants for each value in the state dictionary. Each # dimension must be a constant or None. A None dimension means either: # 1) the dimension's value is a tensor that remains the same but may # depend on the input sequence to the model (e.g. batch size). # 2) the dimension may have different values on different iterations. state_shape_invariants = { _StateKeys.CUR_INDEX: tf.TensorShape([]), _StateKeys.ALIVE_SEQ: tf.TensorShape([None, self.beam_size, None]), _StateKeys.ALIVE_LOG_PROBS: tf.TensorShape([None, self.beam_size]), _StateKeys.ALIVE_CACHE: nest.map_structure( _get_shape_keep_last_dim, alive_cache), _StateKeys.FINISHED_SEQ: tf.TensorShape([None, self.beam_size, None]), _StateKeys.FINISHED_SCORES: tf.TensorShape([None, self.beam_size]), _StateKeys.FINISHED_FLAGS: tf.TensorShape([None, self.beam_size]) } return state, state_shape_invariants def _continue_search(self, state): """Return whether to continue the search loop. The loops should terminate when 1) when decode length has been reached, or 2) when the worst score in the finished sequences is better than the best score in the alive sequences (i.e. the finished sequences are provably unchanging) Args: state: A dictionary with the current loop state. Returns: Bool tensor with value True if loop should continue, False if loop should terminate. """ i = state[_StateKeys.CUR_INDEX] alive_log_probs = state[_StateKeys.ALIVE_LOG_PROBS] finished_scores = state[_StateKeys.FINISHED_SCORES] finished_flags = state[_StateKeys.FINISHED_FLAGS] not_at_max_decode_length = tf.less(i, self.max_decode_length) # Calculate largest length penalty (the larger penalty, the better score). max_length_norm = _length_normalization(self.alpha, self.max_decode_length) # Get the best possible scores from alive sequences. best_alive_scores = alive_log_probs[:, 0] / max_length_norm # Compute worst score in finished sequences for each batch element finished_scores *= tf.to_float(finished_flags) # set filler scores to zero lowest_finished_scores = tf.reduce_min(finished_scores, axis=1) # If there are no finished sequences in a batch element, then set the lowest # finished score to -INF for that element. finished_batches = tf.reduce_any(finished_flags, 1) lowest_finished_scores += (1. - tf.to_float(finished_batches)) * -INF worst_finished_score_better_than_best_alive_score = tf.reduce_all( tf.greater(lowest_finished_scores, best_alive_scores) ) return tf.logical_and( not_at_max_decode_length, tf.logical_not(worst_finished_score_better_than_best_alive_score) ) def _search_step(self, state): """Beam search loop body. Grow alive sequences by a single ID. Sequences that have reached the EOS token are marked as finished. The alive and finished sequences with the highest log probabilities and scores are returned. A sequence's finished score is calculating by dividing the log probability by the length normalization factor. Without length normalization, the search is more likely to return shorter sequences. Args: state: A dictionary with the current loop state. Returns: new state dictionary. """ # Grow alive sequences by one token. new_seq, new_log_probs, new_cache = self._grow_alive_seq(state) # Collect top beam_size alive sequences alive_state = self._get_new_alive_state(new_seq, new_log_probs, new_cache) # Combine newly finished sequences with existing finished sequences, and # collect the top k scoring sequences. finished_state = self._get_new_finished_state(state, new_seq, new_log_probs) # Increment loop index and create new state dictionary new_state = {_StateKeys.CUR_INDEX: state[_StateKeys.CUR_INDEX] + 1} new_state.update(alive_state) new_state.update(finished_state) return [new_state] def _grow_alive_seq(self, state): """Grow alive sequences by one token, and collect top 2*beam_size sequences. 2*beam_size sequences are collected because some sequences may have reached the EOS token. 2*beam_size ensures that at least beam_size sequences are still alive. Args: state: A dictionary with the current loop state. Returns: Tuple of (Top 2*beam_size sequences [batch_size, 2 * beam_size, cur_index + 1], Scores of returned sequences [batch_size, 2 * beam_size], New alive cache, for each of the 2 * beam_size sequences) """ i = state[_StateKeys.CUR_INDEX] alive_seq = state[_StateKeys.ALIVE_SEQ] alive_log_probs = state[_StateKeys.ALIVE_LOG_PROBS] alive_cache = state[_StateKeys.ALIVE_CACHE] beams_to_keep = 2 * self.beam_size # Get logits for the next candidate IDs for the alive sequences. Get the new # cache values at the same time. flat_ids = _flatten_beam_dim(alive_seq) # [batch_size * beam_size] flat_cache = nest.map_structure(_flatten_beam_dim, alive_cache) flat_logits, flat_cache = self.symbols_to_logits_fn(flat_ids, i, flat_cache) # Unflatten logits to shape [batch_size, beam_size, vocab_size] logits = _unflatten_beam_dim(flat_logits, self.batch_size, self.beam_size) new_cache = nest.map_structure( lambda t: _unflatten_beam_dim(t, self.batch_size, self.beam_size), flat_cache) # Convert logits to normalized log probs candidate_log_probs = _log_prob_from_logits(logits) # Calculate new log probabilities if each of the alive sequences were # extended # by the the candidate IDs. # Shape [batch_size, beam_size, vocab_size] log_probs = candidate_log_probs + tf.expand_dims(alive_log_probs, axis=2) # Each batch item has beam_size * vocab_size candidate sequences. For each # batch item, get the k candidates with the highest log probabilities. flat_log_probs = tf.reshape(log_probs, [-1, self.beam_size * self.vocab_size]) topk_log_probs, topk_indices = tf.nn.top_k(flat_log_probs, k=beams_to_keep) # Extract the alive sequences that generate the highest log probabilities # after being extended. topk_beam_indices = topk_indices // self.vocab_size topk_seq, new_cache = _gather_beams( [alive_seq, new_cache], topk_beam_indices, self.batch_size, beams_to_keep) # Append the most probable IDs to the topk sequences topk_ids = topk_indices % self.vocab_size topk_ids = tf.expand_dims(topk_ids, axis=2) topk_seq = tf.concat([topk_seq, topk_ids], axis=2) return topk_seq, topk_log_probs, new_cache def _get_new_alive_state(self, new_seq, new_log_probs, new_cache): """Gather the top k sequences that are still alive. Args: new_seq: New sequences generated by growing the current alive sequences int32 tensor with shape [batch_size, 2 * beam_size, cur_index + 1] new_log_probs: Log probabilities of new sequences float32 tensor with shape [batch_size, beam_size] new_cache: Dict of cached values for each sequence. Returns: Dictionary with alive keys from _StateKeys: {Top beam_size sequences that are still alive (don't end with eos_id) Log probabilities of top alive sequences Dict cache storing decoder states for top alive sequences} """ # To prevent finished sequences from being considered, set log probs to -INF new_finished_flags = tf.equal(new_seq[:, :, -1], self.eos_id) new_log_probs += tf.to_float(new_finished_flags) * -INF top_alive_seq, top_alive_log_probs, top_alive_cache = _gather_topk_beams( [new_seq, new_log_probs, new_cache], new_log_probs, self.batch_size, self.beam_size) return { _StateKeys.ALIVE_SEQ: top_alive_seq, _StateKeys.ALIVE_LOG_PROBS: top_alive_log_probs, _StateKeys.ALIVE_CACHE: top_alive_cache } def _get_new_finished_state(self, state, new_seq, new_log_probs): """Combine new and old finished sequences, and gather the top k sequences. Args: state: A dictionary with the current loop state. new_seq: New sequences generated by growing the current alive sequences int32 tensor with shape [batch_size, beam_size, i + 1] new_log_probs: Log probabilities of new sequences float32 tensor with shape [batch_size, beam_size] Returns: Dictionary with finished keys from _StateKeys: {Top beam_size finished sequences based on score, Scores of finished sequences, Finished flags of finished sequences} """ i = state[_StateKeys.CUR_INDEX] finished_seq = state[_StateKeys.FINISHED_SEQ] finished_scores = state[_StateKeys.FINISHED_SCORES] finished_flags = state[_StateKeys.FINISHED_FLAGS] # First append a column of 0-ids to finished_seq to increment the length. # New shape of finished_seq: [batch_size, beam_size, i + 1] finished_seq = tf.concat( [finished_seq, tf.zeros([self.batch_size, self.beam_size, 1], tf.int32)], axis=2) # Calculate new seq scores from log probabilities. length_norm = _length_normalization(self.alpha, i + 1) new_scores = new_log_probs / length_norm # Set the scores of the still-alive seq in new_seq to large negative values. new_finished_flags = tf.equal(new_seq[:, :, -1], self.eos_id) new_scores += (1. - tf.to_float(new_finished_flags)) * -INF # Combine sequences, scores, and flags. finished_seq = tf.concat([finished_seq, new_seq], axis=1) finished_scores = tf.concat([finished_scores, new_scores], axis=1) finished_flags = tf.concat([finished_flags, new_finished_flags], axis=1) # Return the finished sequences with the best scores. top_finished_seq, top_finished_scores, top_finished_flags = ( _gather_topk_beams([finished_seq, finished_scores, finished_flags], finished_scores, self.batch_size, self.beam_size)) return { _StateKeys.FINISHED_SEQ: top_finished_seq, _StateKeys.FINISHED_SCORES: top_finished_scores, _StateKeys.FINISHED_FLAGS: top_finished_flags } def sequence_beam_search( symbols_to_logits_fn, initial_ids, initial_cache, vocab_size, beam_size, alpha, max_decode_length, eos_id): """Search for sequence of subtoken ids with the largest probability. Args: symbols_to_logits_fn: A function that takes in ids, index, and cache as arguments. The passed in arguments will have shape: ids -> [batch_size * beam_size, index] index -> [] (scalar) cache -> nested dictionary of tensors [batch_size * beam_size, ...] The function must return logits and new cache. logits -> [batch * beam_size, vocab_size] new cache -> same shape/structure as inputted cache initial_ids: Starting ids for each batch item. int32 tensor with shape [batch_size] initial_cache: dict containing starting decoder variables information vocab_size: int size of tokens beam_size: int number of beams alpha: float defining the strength of length normalization max_decode_length: maximum length to decoded sequence eos_id: int id of eos token, used to determine when a sequence has finished Returns: Top decoded sequences [batch_size, beam_size, max_decode_length] sequence scores [batch_size, beam_size] """ batch_size = tf.shape(initial_ids)[0] sbs = SequenceBeamSearch(symbols_to_logits_fn, vocab_size, batch_size, beam_size, alpha, max_decode_length, eos_id) return sbs.search(initial_ids, initial_cache) def _log_prob_from_logits(logits): return logits - tf.reduce_logsumexp(logits, axis=2, keep_dims=True) def _length_normalization(alpha, length): """Return length normalization factor.""" return tf.pow(((5. + tf.to_float(length)) / 6.), alpha) def _expand_to_beam_size(tensor, beam_size): """Tiles a given tensor by beam_size. Args: tensor: tensor to tile [batch_size, ...] beam_size: How much to tile the tensor by. Returns: Tiled tensor [batch_size, beam_size, ...] """ tensor = tf.expand_dims(tensor, axis=1) tile_dims = [1] * tensor.shape.ndims tile_dims[1] = beam_size return tf.tile(tensor, tile_dims) def _shape_list(tensor): """Return a list of the tensor's shape, and ensure no None values in list.""" # Get statically known shape (may contain None's for unknown dimensions) shape = tensor.get_shape().as_list() # Ensure that the shape values are not None dynamic_shape = tf.shape(tensor) for i in range(len(shape)): # pylint: disable=consider-using-enumerate if shape[i] is None: shape[i] = dynamic_shape[i] return shape def _get_shape_keep_last_dim(tensor): shape_list = _shape_list(tensor) # Only the last for i in range(len(shape_list) - 1): shape_list[i] = None if isinstance(shape_list[-1], tf.Tensor): shape_list[-1] = None return tf.TensorShape(shape_list) def _flatten_beam_dim(tensor): """Reshapes first two dimensions in to single dimension. Args: tensor: Tensor to reshape of shape [A, B, ...] Returns: Reshaped tensor of shape [A*B, ...] """ shape = _shape_list(tensor) shape[0] *= shape[1] shape.pop(1) # Remove beam dim return tf.reshape(tensor, shape) def _unflatten_beam_dim(tensor, batch_size, beam_size): """Reshapes first dimension back to [batch_size, beam_size]. Args: tensor: Tensor to reshape of shape [batch_size*beam_size, ...] batch_size: Tensor, original batch size. beam_size: int, original beam size. Returns: Reshaped tensor of shape [batch_size, beam_size, ...] """ shape = _shape_list(tensor) new_shape = [batch_size, beam_size] + shape[1:] return tf.reshape(tensor, new_shape) def _gather_beams(nested, beam_indices, batch_size, new_beam_size): """Gather beams from nested structure of tensors. Each tensor in nested represents a batch of beams, where beam refers to a single search state (beam search involves searching through multiple states in parallel). This function is used to gather the top beams, specified by beam_indices, from the nested tensors. Args: nested: Nested structure (tensor, list, tuple or dict) containing tensors with shape [batch_size, beam_size, ...]. beam_indices: int32 tensor with shape [batch_size, new_beam_size]. Each value in beam_indices must be between [0, beam_size), and are not necessarily unique. batch_size: int size of batch new_beam_size: int number of beams to be pulled from the nested tensors. Returns: Nested structure containing tensors with shape [batch_size, new_beam_size, ...] """ # Computes the i'th coodinate that contains the batch index for gather_nd. # Batch pos is a tensor like [[0,0,0,0,],[1,1,1,1],..]. batch_pos = tf.range(batch_size * new_beam_size) // new_beam_size batch_pos = tf.reshape(batch_pos, [batch_size, new_beam_size]) # Create coordinates to be passed to tf.gather_nd. Stacking creates a tensor # with shape [batch_size, beam_size, 2], where the last dimension contains # the (i, j) gathering coordinates. coordinates = tf.stack([batch_pos, beam_indices], axis=2) return nest.map_structure( lambda state: tf.gather_nd(state, coordinates), nested) def _gather_topk_beams(nested, score_or_log_prob, batch_size, beam_size): """Gather top beams from nested structure.""" _, topk_indexes = tf.nn.top_k(score_or_log_prob, k=beam_size) return _gather_beams(nested, topk_indexes, batch_size, beam_size) ================================================ FILE: official/transformer/model/beam_search_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Test beam search helper methods.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import beam_search class BeamSearchHelperTests(tf.test.TestCase): def test_expand_to_beam_size(self): x = tf.ones([7, 4, 2, 5]) x = beam_search._expand_to_beam_size(x, 3) with self.test_session() as sess: shape = sess.run(tf.shape(x)) self.assertAllEqual([7, 3, 4, 2, 5], shape) def test_shape_list(self): y = tf.constant(4.0) x = tf.ones([7, tf.to_int32(tf.sqrt(y)), 2, 5]) shape = beam_search._shape_list(x) self.assertIsInstance(shape[0], int) self.assertIsInstance(shape[1], tf.Tensor) self.assertIsInstance(shape[2], int) self.assertIsInstance(shape[3], int) def test_get_shape_keep_last_dim(self): y = tf.constant(4.0) x = tf.ones([7, tf.to_int32(tf.sqrt(y)), 2, 5]) shape = beam_search._get_shape_keep_last_dim(x) self.assertAllEqual([None, None, None, 5], shape.as_list()) def test_flatten_beam_dim(self): x = tf.ones([7, 4, 2, 5]) x = beam_search._flatten_beam_dim(x) with self.test_session() as sess: shape = sess.run(tf.shape(x)) self.assertAllEqual([28, 2, 5], shape) def test_unflatten_beam_dim(self): x = tf.ones([28, 2, 5]) x = beam_search._unflatten_beam_dim(x, 7, 4) with self.test_session() as sess: shape = sess.run(tf.shape(x)) self.assertAllEqual([7, 4, 2, 5], shape) def test_gather_beams(self): x = tf.reshape(tf.range(24), [2, 3, 4]) # x looks like: [[[ 0 1 2 3] # [ 4 5 6 7] # [ 8 9 10 11]] # # [[12 13 14 15] # [16 17 18 19] # [20 21 22 23]]] y = beam_search._gather_beams(x, [[1, 2], [0, 2]], 2, 2) with self.test_session() as sess: y = sess.run(y) self.assertAllEqual([[[4, 5, 6, 7], [8, 9, 10, 11]], [[12, 13, 14, 15], [20, 21, 22, 23]]], y) def test_gather_topk_beams(self): x = tf.reshape(tf.range(24), [2, 3, 4]) x_scores = [[0, 1, 1], [1, 0, 1]] y = beam_search._gather_topk_beams(x, x_scores, 2, 2) with self.test_session() as sess: y = sess.run(y) self.assertAllEqual([[[4, 5, 6, 7], [8, 9, 10, 11]], [[12, 13, 14, 15], [20, 21, 22, 23]]], y) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/transformer/model/embedding_layer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Implementation of embedding layer with shared weights.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import model_utils class EmbeddingSharedWeights(tf.layers.Layer): """Calculates input embeddings and pre-softmax linear with shared weights.""" def __init__(self, vocab_size, hidden_size): super(EmbeddingSharedWeights, self).__init__() self.vocab_size = vocab_size self.hidden_size = hidden_size def build(self, _): with tf.variable_scope("embedding_and_softmax", reuse=tf.AUTO_REUSE): # Create and initialize weights. The random normal initializer was chosen # randomly, and works well. self.shared_weights = tf.get_variable( "weights", [self.vocab_size, self.hidden_size], initializer=tf.random_normal_initializer( 0., self.hidden_size ** -0.5)) self.built = True def call(self, x): """Get token embeddings of x. Args: x: An int64 tensor with shape [batch_size, length] Returns: embeddings: float32 tensor with shape [batch_size, length, embedding_size] padding: float32 tensor with shape [batch_size, length] indicating the locations of the padding tokens in x. """ with tf.name_scope("embedding"): embeddings = tf.gather(self.shared_weights, x) # Scale embedding by the sqrt of the hidden size embeddings *= self.hidden_size ** 0.5 # Create binary array of size [batch_size, length] # where 1 = padding, 0 = not padding padding = model_utils.get_padding(x) # Set all padding embedding values to 0 embeddings *= tf.expand_dims(1 - padding, -1) return embeddings def linear(self, x): """Computes logits by running x through a linear layer. Args: x: A float32 tensor with shape [batch_size, length, hidden_size] Returns: float32 tensor with shape [batch_size, length, vocab_size]. """ with tf.name_scope("presoftmax_linear"): batch_size = tf.shape(x)[0] length = tf.shape(x)[1] x = tf.reshape(x, [-1, self.hidden_size]) logits = tf.matmul(x, self.shared_weights, transpose_b=True) return tf.reshape(logits, [batch_size, length, self.vocab_size]) ================================================ FILE: official/transformer/model/ffn_layer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Implementation of fully connected network.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class FeedFowardNetwork(tf.layers.Layer): """Fully connected feedforward network.""" def __init__(self, hidden_size, filter_size, relu_dropout, train): super(FeedFowardNetwork, self).__init__() self.hidden_size = hidden_size self.filter_size = filter_size self.relu_dropout = relu_dropout self.train = train self.filter_dense_layer = tf.layers.Dense( filter_size, use_bias=True, activation=tf.nn.relu, name="filter_layer") self.output_dense_layer = tf.layers.Dense( hidden_size, use_bias=True, name="output_layer") def call(self, x, padding=None): """Return outputs of the feedforward network. Args: x: tensor with shape [batch_size, length, hidden_size] padding: (optional) If set, the padding values are temporarily removed from x. The padding values are placed back in the output tensor in the same locations. shape [batch_size, length] Returns: Output of the feedforward network. tensor with shape [batch_size, length, hidden_size] """ # Retrieve dynamically known shapes batch_size = tf.shape(x)[0] length = tf.shape(x)[1] if padding is not None: with tf.name_scope("remove_padding"): # Flatten padding to [batch_size*length] pad_mask = tf.reshape(padding, [-1]) nonpad_ids = tf.to_int32(tf.where(pad_mask < 1e-9)) # Reshape x to [batch_size*length, hidden_size] to remove padding x = tf.reshape(x, [-1, self.hidden_size]) x = tf.gather_nd(x, indices=nonpad_ids) # Reshape x from 2 dimensions to 3 dimensions. x.set_shape([None, self.hidden_size]) x = tf.expand_dims(x, axis=0) output = self.filter_dense_layer(x) if self.train: output = tf.nn.dropout(output, 1.0 - self.relu_dropout) output = self.output_dense_layer(output) if padding is not None: with tf.name_scope("re_add_padding"): output = tf.squeeze(output, axis=0) output = tf.scatter_nd( indices=nonpad_ids, updates=output, shape=[batch_size * length, self.hidden_size] ) output = tf.reshape(output, [batch_size, length, self.hidden_size]) return output ================================================ FILE: official/transformer/model/model_params.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Defines Transformer model parameters.""" class TransformerBaseParams(object): """Parameters for the base Transformer model.""" # Input params batch_size = 2048 # Maximum number of tokens per batch of examples. max_length = 256 # Maximum number of tokens per example. # Model params initializer_gain = 1.0 # Used in trainable variable initialization. vocab_size = 33708 # Number of tokens defined in the vocabulary file. hidden_size = 512 # Model dimension in the hidden layers. num_hidden_layers = 6 # Number of layers in the encoder and decoder stacks. num_heads = 8 # Number of heads to use in multi-headed attention. filter_size = 2048 # Inner layer dimensionality in the feedforward network. # Dropout values (only used when training) layer_postprocess_dropout = 0.1 attention_dropout = 0.1 relu_dropout = 0.1 # Training params label_smoothing = 0.1 learning_rate = 2.0 learning_rate_decay_rate = 1.0 learning_rate_warmup_steps = 16000 # Optimizer params optimizer_adam_beta1 = 0.9 optimizer_adam_beta2 = 0.997 optimizer_adam_epsilon = 1e-09 # Default prediction params extra_decode_length = 50 beam_size = 4 alpha = 0.6 # used to calculate length normalization in beam search class TransformerBigParams(TransformerBaseParams): """Parameters for the big Transformer model.""" batch_size = 4096 hidden_size = 1024 filter_size = 4096 num_heads = 16 ================================================ FILE: official/transformer/model/model_utils.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Transformer model helper methods.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import math import tensorflow as tf _NEG_INF = -1e9 def get_position_encoding( length, hidden_size, min_timescale=1.0, max_timescale=1.0e4): """Return positional encoding. Calculates the position encoding as a mix of sine and cosine functions with geometrically increasing wavelengths. Defined and formulized in Attention is All You Need, section 3.5. Args: length: Sequence length. hidden_size: Size of the min_timescale: Minimum scale that will be applied at each position max_timescale: Maximum scale that will be applied at each position Returns: Tensor with shape [length, hidden_size] """ position = tf.to_float(tf.range(length)) num_timescales = hidden_size // 2 log_timescale_increment = ( math.log(float(max_timescale) / float(min_timescale)) / (tf.to_float(num_timescales) - 1)) inv_timescales = min_timescale * tf.exp( tf.to_float(tf.range(num_timescales)) * -log_timescale_increment) scaled_time = tf.expand_dims(position, 1) * tf.expand_dims(inv_timescales, 0) signal = tf.concat([tf.sin(scaled_time), tf.cos(scaled_time)], axis=1) return signal def get_decoder_self_attention_bias(length): """Calculate bias for decoder that maintains model's autoregressive property. Creates a tensor that masks out locations that correspond to illegal connections, so prediction at position i cannot draw information from future positions. Args: length: int length of sequences in batch. Returns: float tensor of shape [1, 1, length, length] """ with tf.name_scope("decoder_self_attention_bias"): valid_locs = tf.matrix_band_part(tf.ones([length, length]), -1, 0) valid_locs = tf.reshape(valid_locs, [1, 1, length, length]) decoder_bias = _NEG_INF * (1.0 - valid_locs) return decoder_bias def get_padding(x, padding_value=0): """Return float tensor representing the padding values in x. Args: x: int tensor with any shape padding_value: int value that Returns: flaot tensor with same shape as x containing values 0 or 1. 0 -> non-padding, 1 -> padding """ with tf.name_scope("padding"): return tf.to_float(tf.equal(x, padding_value)) def get_padding_bias(x): """Calculate bias tensor from padding values in tensor. Bias tensor that is added to the pre-softmax multi-headed attention logits, which has shape [batch_size, num_heads, length, length]. The tensor is zero at non-padding locations, and -1e9 (negative infinity) at padding locations. Args: x: int tensor with shape [batch_size, length] Returns: Attention bias tensor of shape [batch_size, 1, 1, length]. """ with tf.name_scope("attention_bias"): padding = get_padding(x) attention_bias = padding * _NEG_INF attention_bias = tf.expand_dims( tf.expand_dims(attention_bias, axis=1), axis=1) return attention_bias ================================================ FILE: official/transformer/model/model_utils_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Test Transformer model helper methods.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import model_utils NEG_INF = -1e9 class ModelUtilsTest(tf.test.TestCase): def test_get_padding(self): x = tf.constant([[1, 0, 0, 0, 2], [3, 4, 0, 0, 0], [0, 5, 6, 0, 7]]) padding = model_utils.get_padding(x, padding_value=0) with self.test_session() as sess: padding = sess.run(padding) self.assertAllEqual([[0, 1, 1, 1, 0], [0, 0, 1, 1, 1], [1, 0, 0, 1, 0]], padding) def test_get_padding_bias(self): x = tf.constant([[1, 0, 0, 0, 2], [3, 4, 0, 0, 0], [0, 5, 6, 0, 7]]) bias = model_utils.get_padding_bias(x) bias_shape = tf.shape(bias) flattened_bias = tf.reshape(bias, [3, 5]) with self.test_session() as sess: flattened_bias, bias_shape = sess.run((flattened_bias, bias_shape)) self.assertAllEqual([[0, NEG_INF, NEG_INF, NEG_INF, 0], [0, 0, NEG_INF, NEG_INF, NEG_INF], [NEG_INF, 0, 0, NEG_INF, 0]], flattened_bias) self.assertAllEqual([3, 1, 1, 5], bias_shape) def test_get_decoder_self_attention_bias(self): length = 5 bias = model_utils.get_decoder_self_attention_bias(length) with self.test_session() as sess: bias = sess.run(bias) self.assertAllEqual([[[[0, NEG_INF, NEG_INF, NEG_INF, NEG_INF], [0, 0, NEG_INF, NEG_INF, NEG_INF], [0, 0, 0, NEG_INF, NEG_INF], [0, 0, 0, 0, NEG_INF], [0, 0, 0, 0, 0]]]], bias) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/transformer/model/transformer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Defines the Transformer model, and its encoder and decoder stacks. Model paper: https://arxiv.org/pdf/1706.03762.pdf Transformer model code source: https://github.com/tensorflow/tensor2tensor """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import attention_layer from official.transformer.model import beam_search from official.transformer.model import embedding_layer from official.transformer.model import ffn_layer from official.transformer.model import model_utils from official.transformer.utils.tokenizer import EOS_ID _NEG_INF = -1e9 class Transformer(object): """Transformer model for sequence to sequence data. Implemented as described in: https://arxiv.org/pdf/1706.03762.pdf The Transformer model consists of an encoder and decoder. The input is an int sequence (or a batch of sequences). The encoder produces a continous representation, and the decoder uses the encoder output to generate probabilities for the output sequence. """ def __init__(self, params, train): """Initialize layers to build Transformer model. Args: params: hyperparameter object defining layer sizes, dropout values, etc. train: boolean indicating whether the model is in training mode. Used to determine if dropout layers should be added. """ self.train = train self.params = params self.embedding_softmax_layer = embedding_layer.EmbeddingSharedWeights( params.vocab_size, params.hidden_size) self.encoder_stack = EncoderStack(params, train) self.decoder_stack = DecoderStack(params, train) def __call__(self, inputs, targets=None): """Calculate target logits or inferred target sequences. Args: inputs: int tensor with shape [batch_size, input_length]. targets: None or int tensor with shape [batch_size, target_length]. Returns: If targets is defined, then return logits for each word in the target sequence. float tensor with shape [batch_size, target_length, vocab_size] If target is none, then generate output sequence one token at a time. returns a dictionary { output: [batch_size, decoded length] score: [batch_size, float]} """ # Variance scaling is used here because it seems to work in many problems. # Other reasonable initializers may also work just as well. initializer = tf.variance_scaling_initializer( self.params.initializer_gain, mode="fan_avg", distribution="uniform") with tf.variable_scope("Transformer", initializer=initializer): # Calculate attention bias for encoder self-attention and decoder # multi-headed attention layers. attention_bias = model_utils.get_padding_bias(inputs) # Run the inputs through the encoder layer to map the symbol # representations to continuous representations. encoder_outputs = self.encode(inputs, attention_bias) # Generate output sequence if targets is None, or return logits if target # sequence is known. if targets is None: return self.predict(encoder_outputs, attention_bias) else: logits = self.decode(targets, encoder_outputs, attention_bias) return logits def encode(self, inputs, attention_bias): """Generate continuous representation for inputs. Args: inputs: int tensor with shape [batch_size, input_length]. attention_bias: float tensor with shape [batch_size, 1, 1, input_length] Returns: float tensor with shape [batch_size, input_length, hidden_size] """ with tf.name_scope("encode"): # Prepare inputs to the layer stack by adding positional encodings and # applying dropout. embedded_inputs = self.embedding_softmax_layer(inputs) inputs_padding = model_utils.get_padding(inputs) with tf.name_scope("add_pos_encoding"): length = tf.shape(embedded_inputs)[1] pos_encoding = model_utils.get_position_encoding( length, self.params.hidden_size) encoder_inputs = embedded_inputs + pos_encoding if self.train: encoder_inputs = tf.nn.dropout( encoder_inputs, 1 - self.params.layer_postprocess_dropout) return self.encoder_stack(encoder_inputs, attention_bias, inputs_padding) def decode(self, targets, encoder_outputs, attention_bias): """Generate logits for each value in the target sequence. Args: targets: target values for the output sequence. int tensor with shape [batch_size, target_length] encoder_outputs: continuous representation of input sequence. float tensor with shape [batch_size, input_length, hidden_size] attention_bias: float tensor with shape [batch_size, 1, 1, input_length] Returns: float32 tensor with shape [batch_size, target_length, vocab_size] """ with tf.name_scope("decode"): # Prepare inputs to decoder layers by shifting targets, adding positional # encoding and applying dropout. decoder_inputs = self.embedding_softmax_layer(targets) with tf.name_scope("shift_targets"): # Shift targets to the right, and remove the last element decoder_inputs = tf.pad( decoder_inputs, [[0, 0], [1, 0], [0, 0]])[:, :-1, :] with tf.name_scope("add_pos_encoding"): length = tf.shape(decoder_inputs)[1] decoder_inputs += model_utils.get_position_encoding( length, self.params.hidden_size) if self.train: decoder_inputs = tf.nn.dropout( decoder_inputs, 1 - self.params.layer_postprocess_dropout) # Run values decoder_self_attention_bias = model_utils.get_decoder_self_attention_bias( length) outputs = self.decoder_stack( decoder_inputs, encoder_outputs, decoder_self_attention_bias, attention_bias) logits = self.embedding_softmax_layer.linear(outputs) return logits def _get_symbols_to_logits_fn(self, max_decode_length): """Returns a decoding function that calculates logits of the next tokens.""" timing_signal = model_utils.get_position_encoding( max_decode_length + 1, self.params.hidden_size) decoder_self_attention_bias = model_utils.get_decoder_self_attention_bias( max_decode_length) def symbols_to_logits_fn(ids, i, cache): """Generate logits for next potential IDs. Args: ids: Current decoded sequences. int tensor with shape [batch_size * beam_size, i + 1] i: Loop index cache: dictionary of values storing the encoder output, encoder-decoder attention bias, and previous decoder attention values. Returns: Tuple of (logits with shape [batch_size * beam_size, vocab_size], updated cache values) """ # Set decoder input to the last generated IDs decoder_input = ids[:, -1:] # Preprocess decoder input by getting embeddings and adding timing signal. decoder_input = self.embedding_softmax_layer(decoder_input) decoder_input += timing_signal[i:i + 1] self_attention_bias = decoder_self_attention_bias[:, :, i:i + 1, :i + 1] decoder_outputs = self.decoder_stack( decoder_input, cache.get("encoder_outputs"), self_attention_bias, cache.get("encoder_decoder_attention_bias"), cache) logits = self.embedding_softmax_layer.linear(decoder_outputs) logits = tf.squeeze(logits, axis=[1]) return logits, cache return symbols_to_logits_fn def predict(self, encoder_outputs, encoder_decoder_attention_bias): """Return predicted sequence.""" batch_size = tf.shape(encoder_outputs)[0] input_length = tf.shape(encoder_outputs)[1] max_decode_length = input_length + self.params.extra_decode_length symbols_to_logits_fn = self._get_symbols_to_logits_fn(max_decode_length) # Create initial set of IDs that will be passed into symbols_to_logits_fn. initial_ids = tf.zeros([batch_size], dtype=tf.int32) # Create cache storing decoder attention values for each layer. cache = { "layer_%d" % layer: { "k": tf.zeros([batch_size, 0, self.params.hidden_size]), "v": tf.zeros([batch_size, 0, self.params.hidden_size]), } for layer in range(self.params.num_hidden_layers)} # Add encoder output and attention bias to the cache. cache["encoder_outputs"] = encoder_outputs cache["encoder_decoder_attention_bias"] = encoder_decoder_attention_bias # Use beam search to find the top beam_size sequences and scores. decoded_ids, scores = beam_search.sequence_beam_search( symbols_to_logits_fn=symbols_to_logits_fn, initial_ids=initial_ids, initial_cache=cache, vocab_size=self.params.vocab_size, beam_size=self.params.beam_size, alpha=self.params.alpha, max_decode_length=max_decode_length, eos_id=EOS_ID) # Get the top sequence for each batch element top_decoded_ids = decoded_ids[:, 0, 1:] top_scores = scores[:, 0] return {"outputs": top_decoded_ids, "scores": top_scores} class LayerNormalization(tf.layers.Layer): """Applies layer normalization.""" def __init__(self, hidden_size): super(LayerNormalization, self).__init__() self.hidden_size = hidden_size def build(self, _): self.scale = tf.get_variable("layer_norm_scale", [self.hidden_size], initializer=tf.ones_initializer()) self.bias = tf.get_variable("layer_norm_bias", [self.hidden_size], initializer=tf.zeros_initializer()) self.built = True def call(self, x, epsilon=1e-6): mean = tf.reduce_mean(x, axis=[-1], keepdims=True) variance = tf.reduce_mean(tf.square(x - mean), axis=[-1], keepdims=True) norm_x = (x - mean) * tf.rsqrt(variance + epsilon) return norm_x * self.scale + self.bias class PrePostProcessingWrapper(object): """Wrapper class that applies layer pre-processing and post-processing.""" def __init__(self, layer, params, train): self.layer = layer self.postprocess_dropout = params.layer_postprocess_dropout self.train = train # Create normalization layer self.layer_norm = LayerNormalization(params.hidden_size) def __call__(self, x, *args, **kwargs): # Preprocessing: apply layer normalization y = self.layer_norm(x) # Get layer output y = self.layer(y, *args, **kwargs) # Postprocessing: apply dropout and residual connection if self.train: y = tf.nn.dropout(y, 1 - self.postprocess_dropout) return x + y class EncoderStack(tf.layers.Layer): """Transformer encoder stack. The encoder stack is made up of N identical layers. Each layer is composed of the sublayers: 1. Self-attention layer 2. Feedforward network (which is 2 fully-connected layers) """ def __init__(self, params, train): super(EncoderStack, self).__init__() self.layers = [] for _ in range(params.num_hidden_layers): # Create sublayers for each layer. self_attention_layer = attention_layer.SelfAttention( params.hidden_size, params.num_heads, params.attention_dropout, train) feed_forward_network = ffn_layer.FeedFowardNetwork( params.hidden_size, params.filter_size, params.relu_dropout, train) self.layers.append([ PrePostProcessingWrapper(self_attention_layer, params, train), PrePostProcessingWrapper(feed_forward_network, params, train)]) # Create final layer normalization layer. self.output_normalization = LayerNormalization(params.hidden_size) def call(self, encoder_inputs, attention_bias, inputs_padding): """Return the output of the encoder layer stacks. Args: encoder_inputs: tensor with shape [batch_size, input_length, hidden_size] attention_bias: bias for the encoder self-attention layer. [batch_size, 1, 1, input_length] inputs_padding: P Returns: Output of encoder layer stack. float32 tensor with shape [batch_size, input_length, hidden_size] """ for n, layer in enumerate(self.layers): # Run inputs through the sublayers. self_attention_layer = layer[0] feed_forward_network = layer[1] with tf.variable_scope("layer_%d" % n): with tf.variable_scope("self_attention"): encoder_inputs = self_attention_layer(encoder_inputs, attention_bias) with tf.variable_scope("ffn"): encoder_inputs = feed_forward_network(encoder_inputs, inputs_padding) return self.output_normalization(encoder_inputs) class DecoderStack(tf.layers.Layer): """Transformer decoder stack. Like the encoder stack, the decoder stack is made up of N identical layers. Each layer is composed of the sublayers: 1. Self-attention layer 2. Multi-headed attention layer combining encoder outputs with results from the previous self-attention layer. 3. Feedforward network (2 fully-connected layers) """ def __init__(self, params, train): super(DecoderStack, self).__init__() self.layers = [] for _ in range(params.num_hidden_layers): self_attention_layer = attention_layer.SelfAttention( params.hidden_size, params.num_heads, params.attention_dropout, train) enc_dec_attention_layer = attention_layer.Attention( params.hidden_size, params.num_heads, params.attention_dropout, train) feed_forward_network = ffn_layer.FeedFowardNetwork( params.hidden_size, params.filter_size, params.relu_dropout, train) self.layers.append([ PrePostProcessingWrapper(self_attention_layer, params, train), PrePostProcessingWrapper(enc_dec_attention_layer, params, train), PrePostProcessingWrapper(feed_forward_network, params, train)]) self.output_normalization = LayerNormalization(params.hidden_size) def call(self, decoder_inputs, encoder_outputs, decoder_self_attention_bias, attention_bias, cache=None): """Return the output of the decoder layer stacks. Args: decoder_inputs: tensor with shape [batch_size, target_length, hidden_size] encoder_outputs: tensor with shape [batch_size, input_length, hidden_size] decoder_self_attention_bias: bias for decoder self-attention layer. [1, 1, target_len, target_length] attention_bias: bias for encoder-decoder attention layer. [batch_size, 1, 1, input_length] cache: (Used for fast decoding) A nested dictionary storing previous decoder self-attention values. The items are: {layer_n: {"k": tensor with shape [batch_size, i, key_channels], "v": tensor with shape [batch_size, i, value_channels]}, ...} Returns: Output of decoder layer stack. float32 tensor with shape [batch_size, target_length, hidden_size] """ for n, layer in enumerate(self.layers): self_attention_layer = layer[0] enc_dec_attention_layer = layer[1] feed_forward_network = layer[2] # Run inputs through the sublayers. layer_name = "layer_%d" % n layer_cache = cache[layer_name] if cache is not None else None with tf.variable_scope(layer_name): with tf.variable_scope("self_attention"): decoder_inputs = self_attention_layer( decoder_inputs, decoder_self_attention_bias, cache=layer_cache) with tf.variable_scope("encdec_attention"): decoder_inputs = enc_dec_attention_layer( decoder_inputs, encoder_outputs, attention_bias) with tf.variable_scope("ffn"): decoder_inputs = feed_forward_network(decoder_inputs) return self.output_normalization(decoder_inputs) ================================================ FILE: official/transformer/test_data/newstest2014.de ================================================ Gutach: Noch mehr Sicherheit für Fußgänger Sie stehen keine 100 Meter voneinander entfernt: Am Dienstag ist in Gutach die neue B 33-Fußgängerampel am Dorfparkplatz in Betrieb genommen worden - in Sichtweite der älteren Rathausampel. Zwei Anlagen so nah beieinander: Absicht oder Schildbürgerstreich? Diese Frage hat Gutachs Bürgermeister gestern klar beantwortet. "Die Rathausampel ist damals installiert worden, weil diese den Schulweg sichert", erläuterte Eckert gestern. Die Kluser-Ampel sichere sowohl Radfahrer als auch Busfahrgäste und die Bergle-Bewohner. Die gestern offiziell in Betrieb genommene Anlage sei wichtig für den Kreuzungsbereich Sulzbachweg/Kirchstraße. Wir haben das Museum, zwei Kirchen, Kurpark, die Bushaltestelle, einen Arzt und eine Bank sowie den Verkehrsfluss aus dem Wohngebiet ›Grub‹. "Bei dem hohen Verkehrs- und Fußgängeraufkommen musste zu deren Sicherheit eine weitere Ampel her", so Eckert. Dies bestätigt auch Peter Arnold vom Landratsamt Offenburg. "Laut aktuellen Messungen durchfahren auf der B 33 täglich etwa 12 000 Fahrzeuge die Gemeinde Gutach, davon sind etwa zehn Prozent Schwerlastverkehr", betont Arnold. Daher sei der Bau einer weiteren Ampel mehr als notwendig: "Sicherheit geht hier einfach vor", so Arnold. Insgesamt seien vier Verkehrsschauen durchgeführt worden, auch ein Kreisverkehr wurde angedacht, allerdings wegen der Enge in dem Kreuzungsbereich Sulzbachweg/Kirchstraße wieder verworfen. Es wurde laut Arnold bei der Standortwahl der Ampelmasten zuvor alles ausgetestet: "Mittels eines extra für uns mit besonders langen Holzstämmen beladener Transporter haben wir ausgestestet, ob diese Fahrzeuge aus dem Sulzbachweg auf die B 33 ausfahren können, ohne den Ampelmasten umzuknicken". Die rund 15 000 Euro teure Ampelanlage selbst ist das "modernste, was es derzeit auf dem Markt gibt", erläuterte Arnold. Die Anlage ist mit farbigen LEDs ausgestattet, die so kräftig leuchten, dass die Lichter von den Autofahrern beispielsweise auch bei tiefstehender Sonne gut zu erkennen sind. Und sparsam ist sie auch: Die älteren Lichtanlagen verbrauchen etwa 100 Watt, die neuen gerade mal acht Watt. Pro Fahrtrichtung gibt es drei Lichtanlagen. Arnold erklärte die Technik der neuen Anlage: Diese ist mit zwei Radarsensoren ausgestattet. Drückt der Fußgänger den Ampelknopf, testet der obere Radarsensor die Verkehrslage. Ist die Straße frei, kommt unmittelbar Grün für den Fußgänger, wenn nicht, dauert es etwa 15 Sekunden. Ein weiteres Radarsensor prüft, ob die Grünphase für den Fußgänger beendet werden kann. "Sollte eine Gruppe oder gehbehinderte Menschen über die Straße gehen, wird die Grünphase verlängert, es kommt also jeder sicher über die Fahrbahn", erklärte Arnold. Natürlich müsse der Autofahrer hier als Partner mitdenken und die Fahrbahn beobachten. Dies war gestern nicht der Fall: Kaum zeigte die Ampel für Fußgänger grün, rauschte ein Oberklasse-Fahrzeug durch - bei leuchtendem Rot. Josef Winkler schreibt sich seit mehr als 30 Jahren die Nöte seiner Kindheit und Jugend von der Seele. Die Katastrophen seiner katholischen Dorfkindheit - die Sprachlosigkeit, der Hang zu roher Gewalt und stumpfer Sexualität, die Enge und Freudlosigkeit - hat der Kärntner Dichter vielfach beschrieben. Bekannt ist der Büchner-Preisträger vor allem als Prosaautor, Theatertexte sind in seinem Werk rar. Collage aus Prosatexten Gerhard Fresacher stellt für seine Aufführung "Wetterleuchten auf der Zungenspitze", die nun in der Garage X am Petersplatz zu sehen ist, daher eine Collage aus Prosatexten zusammen. Der Theatermacher verbindet etwa Elemente aus dem autobiografisch geprägten Roman "Der Leibeigene" (1987) mit Prosaminiaturen aus "Leichnam, seine Familie belauernd" (2003). Auf der weitgehend leergeräumten Bühne - wichtiges Requisit: ein zerknautschtes Sofa, auf dem andeutungsweise kopuliert und masturbiert wird - hangelt sich das achtköpfige Ensemble durch das Textmaterial. Dabei scheint Regisseur Fresacher dem Text wenig zu vertrauen. Die 70-minütige Performance übertüncht die Vorlage mit einer Fülle an Regieeinfällen, bekannt aus dem Repertoire postdramatischer Spielformen. Vor allem die Schauspielerinnen kommen bei den mitunter etwas fragwürdigen szenischen Umsetzungen dran. Sie werden hart angefasst, mit dem Kopf unter Wasser getaucht, mit ihren Abendroben an die Wand getackert. Eingezwängt in Zellophan oder Mieder, staksen sie auf gefährlich hohen Stöckeln durch die Inszenierung, entweder monologisieren sie lautstark oder liegen völlig verstummt auf dem Bühnenboden. Der Text vermittelt sich auf diese angestrengte Weise jedoch kaum. Die besten Momente hat der Abend, wenn gesungen wird - die Bandbreite reicht von Deep Purple bis zu volkstümlichem Liedgut. Erst gegen Ende kommt die überdrehte Aufführung etwas zur Ruhe, und Winklers nachgerade absurder Humor blitzt auf. Eine Blackbox im Auto? US-amerikanische Straßenplaner sind auf der Suche nach einer Geldquelle, um das verfallende Highway-System zu reparieren, und glauben die Lösung in einem kleinen schwarzen Kasten gefunden zu haben, der im Armaturenbrett jedes Autos Platz findet. Die Geräte, die jeden gefahrenen Kilometer aufzeichnen und die Informationen an die Behörden melden, sind Kernpunkt eines kontroversen Versuchs von Washington und den Planungsbüros der Bundesstaaten, das veraltete System zur Finanzierung US-amerikanischer Straßen zu überarbeiten. Das normalerweise eher langweilige Gebiet der Straßenplanung hat plötzlich eine intensive Debatte mit bunten Allianzen entfacht. Libertäre haben sich mit Umweltgruppen verbündet und sprechen sich dafür aus, dass die Regierung die kleinen Boxen zum Aufzeichnen der gefahrenen Kilometer – und möglicherweise auch, wo sie gefahren wurden – verwenden und die Informationen dann für die Berechnung von Steuerbescheiden einsetzen kann. Die Tea Party ist entsetzt. Die amerikanische Bürgerrechtsvereinigung (ACLU) ist ebenfalls zutiefst besorgt und äußert eine Reihe von Datenschutzbedenken. Doch während man sich im Kongress nicht auf ein Vorgehen einigen kann, warten mehrere Bundesstaaten nicht länger. Sie prüfen derzeit, wie sie im Laufe der nächsten zehn Jahre zu einem System wechseln können, bei dem Fahrer pro gefahrener Meile bezahlen. Tausende von Autofahrern haben die Fahrtenschreiber, von denen einige mit GPS-Überwachung ausgestattet sind, bereits getestet. Das ist wirklich ein Muss für unser Land. „Es ist nichts, das wir nur möglicherweise verwenden werden“, sagte Hasan Ikhrata, Geschäftsführer der Southern California Assn. of Governments, die eine Aufzeichnung der gefahrenen Meilen bei allen kalifornischen Autofahrern im Bundesstaat ab 2025 plant. Die Art und Weise, wie wir diese Steuern zahlen, wird sich verändern. Die Technologie dafür ist da. Die Initiative kommt zu einem Zeitpunkt, da der Highway Trust Fund, der aus den Steuern finanziert wird, die US-Amerikaner an der Zapfsäule entrichten, pleite ist. Doch in Amerika wird nicht mehr so viel getankt wie früher. Autos verbrauchen weniger Benzin. Die staatliche Mineralölsteuer von 18,4 Cent pro Gallone (weniger als 4 Eurocent pro Liter) ist seit 20 Jahren nicht gestiegen. Politiker wagen bei hohen Spritpreisen nicht, die Steuer auch nur um einen Cent anzuheben. „Die Benzinsteuer ist einfach nicht zukunftsfähig“, so Lee Munnich, ein Experte für Verkehrsgesetzgebung an der Universität von Minnesota. Sein Bundesstaat hat kürzlich 500 Autos mit Fahrtenschreibern ausgerüstet, mit denen ein meilenbasiertes Bezahlsystem getestet werden soll. „Das stellt die langfristig sinnvollste Alternative dar“, sagte er. Bürokraten bezeichnen es als meilenbasierte Benutzergebühr. Es überrascht nicht, dass die Idee bei städtischen Liberalen Anklang findet, denn die Steuer ließe sich beispielsweise dazu einsetzen, das Fahrverhalten so zu beeinflussen, dass Staus und klimaschädliche Abgase reduziert werden. Die kalifornischen Planer setzen auf das System bei der Ausarbeitung von Strategien, mit denen die ambitionierten, gesetzlich verankerten Ziele des Bundesstaats zum Klimawandel erreicht werden sollen. Doch der Republikaner Bill Shuster aus Pennsylvania, Vorsitzender des House Transportation Committee, hat ebenfalls erklärt, dass er darin die gangbarste langfristige Alternative sehe. Auch die freien Vermarkter der Reason Foundation sind von der Idee angetan, Fahrer nach zurückgelegter Strecke zahlen zu lassen. „Das ist keine Steuer, die in einem schwarzen Loch verschwindet“, erklärt Adrian Moore, Vizepräsident für Richtlinien bei Reason. Die Leute bezahlen direkt für das, was sie bekommen. Die Bewegung wird auch von zwei früheren amerikanischen Verkehrsministern unterstützt, die in einem Bericht im Jahr 2011 den Kongress aufgefordert hatten, sich in Richtung meilenbasierter Abrechnung zu bewegen. Der US-Senat genehmigte letztes Jahr ein 90 Millionen Dollar teures Pilotprojekt, das 10.000 Autos umfasst hätte. Doch die Mehrheit im Repräsentantenhaus verhinderte den Vorstoß und reagierte damit auf die Bedenken von Abgeordneten aus ländlichen Gebieten, die Menschen vertreten, die im Alltag oft viele Meilen auf dem Weg zur Arbeit oder in die Stadt zurücklegen müssen. Mehrere Bundesstaaten und Großstädte bewegen sich nichtsdestotrotz auf eigene Faust in diese Richtung. Am engagiertesten ist Oregon, das derzeit 5.000 Fahrer für das größte Experiment des Landes anwirbt. Diese Fahrer werden bald die Meilengebühren statt der Mineralölsteuer an den Bundesstaat zahlen. Nevada hat bereits ein Pilotprojekt abgeschlossen. New York City erwägt ebenfalls ein solches. Illinois testet es in eingeschränktem Maße mit Lkws. Und die I-95-Koalition, zu der die Verkehrsministerien von 17 Bundesstaaten an der Ostküste gehören (einschließlich Maryland, Pennsylvania, Virginia und Florida), untersucht derzeit, wie man die Änderung einführen könnte. Das Konzept ist kein universeller Hit. In Nevada, wo vor kurzem 50 Freiwillige mit den Geräten ausgestattet wurden, waren Autofahrer skeptisch beim Gedanken, die Regierung könnte jede ihrer Bewegungen verfolgen. „Bedenken gegen Big Brother und derartige Dinge waren ein großes Problem“, erklärt Alauddin Khan, Leiter des Strategie- und Ergebnismanagements im Verkehrsministerium von Nevada. Die Leute wollten es nicht. Als der Test anlief, warnte die ACLU von Nevada auf ihrer Website: „Es wäre relativ einfach, die Fahrtenschreiber in ausgewachsene Überwachungsgeräte zu verwandeln.“ Es bestehe keine Notwendigkeit, eine gigantische, sperrige technologische Infrastruktur aufzubauen, die unweigerlich dazu verwendet werden würde, Daten über die täglichen Bewegungen von Einzelpersonen zu erfassen. Nevada gehört zu einer Reihe von Bundesstaaten, die nun nach erschwinglicher Technologie Ausschau halten, mit der der Staat die gefahrenen Kilometer erfassen kann, aber nicht genau wann und wo. Damit, so Khan, wäre auch die Öffentlichkeit beruhigter. Die Jagd nach dieser Technologie hat einige Behörden zu einem kleinen Startup-Unternehmen namens True Mileage in Kalifornien geführt. Die Firma ist ursprünglich nicht angetreten, um Bundesstaaten bei der Besteuerung von Autofahrern zu helfen. Vielmehr war es ihr Ziel, in einem aufstrebenden Markt für Kfz-Versicherungen Fuß zu fassen, bei denen Fahrer auf Grundlage der gefahrenen Meilen zahlen sollen. Doch die von ihr getesteten Geräte sind auch für die Straßenplaner interessant, denn sie arbeiten nicht mit GPS und liefern nur begrenzte Informationen, die regelmäßig per Modem hochgeladen werden. „Die Leute sind eher bereit, sich daran zu beteiligen, wenn ihre Geschwindigkeit und Standorte nicht aufgezeichnet werden“, erklärte Ryan Morrison, Geschäftsführer von True Mileage. In einigen dieser öffentlichen Pilotprogramme wurden große Fehler gemacht. Es gibt wesentlich billigere und weniger intrusive Möglichkeiten, dies umzusetzen. In Oregon experimentieren die Planer damit, Autofahrern eine Reihe von Auswahlmöglichkeiten zu geben. Sie können sich für ein Gerät mit oder ohne GPS entscheiden. Oder sie wählen überhaupt kein Gerät und zahlen stattdessen eine Pauschalgebühr auf Grundlage der durchschnittlich von allen Einwohnern des Bundesstaates gefahrenen Meilen. Andere Stellen hoffen, das Konzept einer misstrauischen Öffentlichkeit verkaufen zu können, indem sie die Geräte mit mehr Funktionen ausstatten als mit wenigeren. In New York City wollen Verkehrsbeamte ein Gerät zur Besteuerung entwickeln, mit dem sich auch Parkgebühren bezahlen lassen, eine Versicherung nur für gefahrene Kilometer bezahlt werden muss und Geschwindigkeitsdaten von anderen Fahrzeugen in Echtzeit erhoben werden, dank derer Autofahrer Staus ausweichen können. „Autofahrer würden durch den Mehrwert der Vorteile, die das System bietet, zur Teilnahme motiviert“, heißt es in einem Planungsdokument der Stadt. Einige Verkehrsplaner fragen sich allerdings, ob das ganze Gerede über das Bezahlen pro Meile nicht nur ein riesiges Ablenkungsmanöver sei. Bei der Metropolitan Transportation Commission für das Gebiet der San Francisco Bay erklärten Beamte, der Kongress könne das Problem des bankrotten Highway Trust Fund einfach durch Erhöhung der Kraftstoffsteuer lösen. Eine zusätzliche einmalige Gebühr oder eine jährliche Abgabe könnte Autofahrern mit Hybridfahrzeugen oder anderen Fahrzeugen, die wenig Benzin verbrauchen, auferlegt werden, sodass auch diese einen fairen Anteil zahlen. „Es gibt keinen Grund für eine Operation, wenn ein Aspirin auch ausreicht“, erläutert Randy Rentschler, der Leiter für Gesetzgebung und öffentliche Angelegenheiten der Kommission. Wenn wir das tun, machen sich Hunderte Millionen von Autofahrern sorgen über ihre Privatsphäre und zahlreiche andere Dinge. Königsfeld: Kleine Mannschaft schlägt sich wacker Die Freiwillige Feuerwehr bewältigte ihre Herbsthauptprobe trotz Personalmangels mit Bravour. Nur elf Mann nahmen an der Übung teil. Abteilungskommandant Hans Kammerer hatte sich in seiner Übungsannahme das Anwesen Feder in der Burgberger Straße ausgesucht. Dort soll beim Sägen ein Kurzschluss entstanden sein. Durch den entstehenden Brand und die Rauchentwicklung wurden zwei Menschen verletzt, einer davon konnte aber noch einen Notruf absenden. Zwei Atemschutzträger der Wehr machten sich nach der ersten Überprüfung der Sachlage durch Hans Kammerer bereit, das Gebäude zu betreten. Nach kurzer Zeit gelang es, die erste Person zu finden und ins Freie zu geleiten. Die zweite Person musste getragen werden. Dies war nicht so einfach, da auch eine enge Treppe zu überwinden war. Das Gebäude, eine Werkstatt mit integrierter Stallung für zwei Pferde, war nicht einfach zu sichern. Es lagerte viel Holz und auch Strohballen darin. Weiter gab es noch elektrische Maschinen zur Holzbearbeitung. Der erste Löschangriff erfolgte über den Tank im Fahrzeug. Eine weitere Leitung erfolgte über einen Überflur- Hydranten in rund 100 Meter Entfernung. Nun konnten drei Löschangriffe gestaltet werden. Zum Einsatz kam auch im Gebäude ein Hohlstrahlrohr. Hans Kammerer ging es bei der Übung auch darum aufzuzeigen, was mit wenig zur Verfügung stehendem Personal zu bewerkstelligen ist. Im Ernstfall erfolgt eine Unterstützung über die Tageseinsatzgruppe Königsfeld. Der Kommandant zeigte sich mit dem Ablauf der Übung zufrieden. Vernetzung von Hochschulen und Firmen wichtig Auf seinem Besuch im Landkreis Breisgau-Hochschwarzwald ließ sich Landtagspräsident Guido Wolf auch in Titisee-Neustadt darüber aufklären, woher die Arbeitskräfte von morgen kommen. Im Förderzentrum Hochschwarzwald ging er zusammen mit den Geschäftsführenden Schulleitern der Beruflichen Schulen sowie des Kreisgymnasiums und den Elternbeiratsvorsitzenden dieser wichtigen Frage nach. "Bildung ist ein wichtiger Standortfaktor", unterstrich Claudia Stehle, Direktorin der Hans-Thoma-Schule, die das vernetzte Schulprojekt Bildungszentrum Hochschwarzwald vorstellte. Dabei zeigte sich Wolf beeindruckt über die Modellprojekte zur Ausbildung. Seit 2011 existiert in der Wälderstadt eine erfolgreiche Zusammenarbeit zwischen Förderzentrum, Kreisgymnasium und Berufsschulzentrum. Außerdem lobte er die Familienfreundlichkeit im Landkreis. "Es ist wichtig, nicht nur die Familienphase im Blick zu haben, sondern aufgrund des demografischen Wandels auch die Phase um die Pflege der Betreuung von Angehörigen", erklärte Wolf. Außerdem führte er an, dass sich immer mehr Beschäftigte um die Pflege und Betreuung ihrer Angehörigen kümmerten. "Ohne die Unterstützung der Arbeitgeber kann die daraus resultierende Belastung der Beschäftigten zu einer Beendigung des Arbeitsverhältnisses führen", sagte Wolf. Aber niemand könne es sich leisten, qualifizierte Arbeitskräfte zu verlieren, sagte er weiter. Ein weiterer, besonders wichtiger Faktor sei die Vernetzung von Hochschulen und Unternehmen. "Denn wer schon während seines Studiums die Vorzüge der Region kennengelernt hat, bleibt mit seinem erworbenen Wissen und seinen Fähigkeiten oft der regionalen Wirtschaft erhalten, was zur Stärkung der Region beiträgt", zeigte sich der Landtagspräsident überzeugt. Denn nur wenn ausreichend Ausbildungsplätze angeboten würden, könne auch der Fachkräftebedarf gedeckt werden. Seiner Meinung nach ist der Standortvorteil des Landkreises seine vorteilhafte Lage im Südwesten Deutschlands, in unmittelbarer Nähe zu Frankreich und zur Schweiz. Außerdem erlebte er auf seiner Bahnfahrt von Titisee-Neustadt nach Freiburg die bereits unternommenen Anstrengungen für den Ausbau des öffentlichen Personennahverkehrs. "Bleiben Sie weiterhin hartnäckig und sorgen Sie dafür, dass der öffentliche Nahverkehr besser wird", erklärte er an die Adresse der anwesenden Kommunalpolitiker. Mit Musik einen unterhaltsamen Nachmittag erlebt Bereits seit 15 Jahren lädt die Familie Kaul die Dietinger Senioren zu Kaffee, Kuchen und danach zu einem Vesper ein. Früher wurden die älteren Mitbürger in der Raststätte bewirtet. Mittlerweile findet dieser Nachmittag im Pflegeheim St. Josef statt. Die Heimbewohner freuten sich auf die leckeren Kuchen und Torten. Später gab es Wurstsalat. Mit gängigen Melodien unterhielten Silvia Kimmich-Bantle und ihr Vater Karl Kimmich. Die über 100 Jahre alte Natursteinmauer als vordere Abgrenzung des vor der Sanierung stehenden alten Schulhofes zur Kirchstraße soll erneut mit auf den Sanierungskostenplan der Stadt Bräunlingen gesetzt werden. In den Tagen vor der Kilbig wurde bei den ersten Arbeiten der Sanierung des vorderen Schulhofes eine kleine Winkelmauer, zur Stabilisierung und statischen Entlastung der über einhundert Jahre alten Natursteinwand mit Balustrade eingebaut. Das weitere Vorgehen sieht vor, so Alexander Misok vom Bräunlinger Stadtbauamt, das Landesdenkmalamt in die Planungen mit einzubeziehen und ein Sanierungskonzept für die alte Mauer zu erstellen. Danach soll eine Kostenberechnung durch Fachleute vorgenommen werden, die dann dem Gemeinderat zur Entscheidung und Festlegung des weiteren Vorgehens auf den Tisch gelegt werden soll. Eine Entscheidung darüber wird voraussichtlich bereits im kommenden Jahr fallen. Nach der Sanierung, Pflasterung und Baumbepflanzung des alten Schulinnenhofes innerhalb der beiden Seitenflügel der 1912 erbauten Schule muss in absehbarer Zeit als Folgemaßnahme, die sanierungsbedürftige Begrenzungsmauer von Grund auf saniert und auf neuen Unterbau gestellt werden. Die historische, einhundert Jahre alte Abgrenzungsmauer des alten Schulhofes zur Kirchstraße, ist vor allem durch Wasser- und Frostschäden, da keine Drainage vorhanden ist, sanierungsbedürftig und hat eine Bogenneigung nach vorne. Tiefe Risse in einzelnen Steinen zeugen von Witterungsschäden, jedoch ist die Mauer derzeit nicht einsturzgefährdet. Eine standsichere Mauer ist Voraussetzung für einen von Schülern benutzen Schulhof, was durch die aktuellen Befestigungsarbeiten erfolgt ist. Ursprünglich war die Schulhofsanierung sogar schon in den Jahren 2008/2009 geplant, doch hohe unplanmäßige Ausgaben brachten eine Verschiebung. Ein wichtiges Wort bei der historischen Schulmauersanierung, die sogar schon für Filmaufnahmen benutzt wurde, wird das Landesdenkmalamt mitsprechen. Sollten Vorgaben von dieser Seite kommen, dann hofft die Stadt Bräunlingen auf Zuschüsse von den Denkmalschützern. Die Schüler der Bräunlinger Grundschule, die inzwischen wieder in einem gut sanierten alten Schulgebäude mit neuer Aula unterrichtet werden, können bald den alten Schulhof benutzen. Özdemir will Jazzausbildung in Stuttgart erhalten In die anhaltenden Diskussionen um die Zukunft der Musikhochschulen in Baden-Württemberg hat sich nun auch Cem Özdemir, Bundesvorsitzender der Grünen, eingeschaltet. "Ich halte es für falsch, die ganzheitliche Ausbildung in der Musikhochschule Stuttgart aufzugeben", sagte Özdemir den "Stuttgarter Nachrichten". Jazz und Klassik gehören gerade am Jazzstandort Stuttgart zusammen. Damit widerspricht Özdemir, der in Stuttgart als Favorit für ein Direktmandat bei der Bundestagswahl am 22. September gilt, der Grün-Roten Landesregierung. Diese forciert auf der Basis einer Expertenstudie eine Neuordnung der fünf Musikhochschulen in Baden-Württemberg. Danach soll unter anderem der Studiengang Jazz und Pop von der Musikhochschule Stuttgart an die Musikhochschule Mannheim verlagert werden. US-Grenze: "Super-Tunnel" zum Drogenschmuggel entdeckt An der Grenze zwischen Mexiko und den USA haben Ermittler einen "Super-Tunnel" zum Drogenschmuggel entdeckt und stillgelegt. Wie die US-Zollbehörden mitteilten, war die mehr als 500 Meter lange Röhre zwischen Tijuana und San Diego mit Elektrizität, Bahngleisen und einer Belüftungsanlage ausgestattet. Drei Verdächtige wurden demnach festgenommen, acht Tonnen Marihuana sowie fast 150 Kilogramm Kokain beschlagnahmt. Der Tunnel war den Angaben zufolge noch nicht in Gebrauch genommen worden. "Diese Kartelle sind dumm, wenn sie meinen, sie könnten sich unter dem Radar hinweg durchgraben", sagte die Generalstaatsanwältin des US-Distrikts Southern California, Laura Duffy, bei einer Pressekonferenz vor einem Lagerhaus in San Diego, wo das eine Ende des Tunnels entdeckt worden war. An die Drogenbanden gewandt versicherte Duffy: "Wenn Ihr weiter solche Tunnel baut und versucht, sie zu nutzen, sind wir entschlossen, das zu einer riesigen Verschwendung Eures schmutzigen Geldes zu machen". Sowohl die US-Behörden als auch die mexikanischen Sicherheitskräfte befinden sich in einem Dauer-Kampf gegen die Drogenkartelle. Seit 2006 wurden in Mexiko mehr als 77. 000 Menschen im Zusammenhang mit der Drogenkriminalität getötet. Von Experten konstruiert Wegen der aufwendigen Ausstattung des Tunnels gehen die Ermittler davon aus, dass er von Architekten und Ingenieuren konstruiert wurde und dass der Bau rund ein Jahr in Anspruch nahm. Die Gleisanlage war so ausgestattet, dass dort elektrisch betriebene Wagen eingesetzt werden konnten. Auf mexikanischer Seite liegt der Zugang in einem Gebäude, das 80 Meter von der Grenze entfernt ist. Laut Behörden führt eine Leiter 20 Meter in die Tiefe zum eigentlichen Tunneleingang. Der Tunnel hat einen Querschnitt von 1,20 Meter Höhe und 90 Zentimeter Breite. Er wäre damit auch geeignet gewesen, um die illegale Einwanderung Richtung USA zu fördern. Zwei der Verdächtigen wurden in Zusammenhang mit dem Kokain-Fund festgenommen. Der Dritte, ein Mexikaner, wurde wegen des beschlagnahmten Marihuanas gefasst. Allen dreien droht als Höchststrafe lebenslanger Freiheitsentzug, wie Beamte sagten. Seit 2006 seien acht derartige Tunnel entdeckt worden, hieß es auf der Pressekonferenz in San Diego weiter. Es sei aber das erste Mal, dass in einem solchen Tunnelbau Kokain gefunden wurde. Normalerweise wird Kokain in kleineren Mengen und nicht durch Tunnel geschmuggelt. Dies zeige die "Verzweiflung" der Drogenbanden, deren traditionelle Routen inzwischen abgeschnitten seien, sagte Bill Sherman von der Drogenfahndung DEA in San Diego. Sie würden alles tun, um in die USA zu gelangen. Zu den Festgenommenen wurden keine Einzelheiten bekannt gegeben, zumindest einer sei Mexikaner, hieß es. Sie müssen mit Haftstrafen bis zu zehn Jahren rechnen. 2014 wird Geisinger Festjahr Das Jubiläum der Stadt Geisingen anlässlich der 1250. Wiederkehr der ersten urkundlichen Erwähnung rückt immer näher. Wenn in gut acht Wochen das Jahr zu Ende geht, steht das Jubiläumsjahr an. Geisingen und Kirchen-Hausen wurden 794 erstmals urkundlich zusammen erwähnt. In Kirchen wurde eine Urkunde gefertigt, in der beide Orte erwähnt sind. Am 15. März soll es einen offiziellen Auftakt zum Jubiläumsjahr geben, und da Geisingen derzeit keine Halle hat, findet diese Auftaktveranstaltung in dem Ort statt, wo vor 1250 Jahren beide erstmals erwähnt wurde, in Kirchen-Hausen. Im Rahmen des Jubiläums sind etliche Veranstaltungen sowohl in Geisingen, als auch in Kirchen-Hausen geplant. Kirchen-Hausen wird im Juli an einem Festwochenende vom 18. bis 20. Juli die 1250. Wiederkehr feiern. Am Freitag mit einem Festakt, am Samstag und Sonntag mit einem Fest rund um die Kirchtalhalle. An diesem Festwochenende ist außerdem noch das Kirchen-Hausener Kirchenfest. Stadtmusikdirektor Rudolf Barth hat für die Stadt anlässlich des Jubiläums eine Auftragskomposition geschrieben, die an drei Terminen aufgeführt wird. Am 21. Juni zusammen mit der Sonnwendfeier des Schwarzwaldvereins, am 12. Juli in der Arena mit Feuerwerk und am 13. Dezember als erstes Konzert der Stadtmusik in der neuen Festhalle. Diese wird im Jubiläumsjahr fertig und eingeweiht, der offizielle Termin ist am letzten Septemberwochenende, am 27. und 28. September. Anlässlich des Geisinger Stadtjubiläums wird auch noch eine neue Chronik herausgebracht. "Es soll aber eine Chronik nicht nur von Geisingen selbst werden, sondern ein gedrucktes Werk über das Geisingen von heute, das eben aus Geisingen, Kirchen-Hausen, Leipferdingen, Aulfingen und Gutmadingen besteht", so Bürgermeister Walter Hengstler. Und auch das Geisingen von heute feiert 2014 Geburtstag, 1974 wurde die heutige Raumschaft mit den Eingemeindungen vollzogen. Die neue Chronik soll dann am 21. oder 22. November in der neuen Festhalle in Geisingen vorgestellt werden. 2014 ist aber auch sonst ein Jahr mit vielen Jubiläen. Die Narrenzunft Strohglonki beginnt am 8. Februar mit einem Brauchtumsabend anlässlich ihres 60-jährigen Bestehens, die Harmonie Gutmadingen wird 90 Jahre und hat am 29. März das Festbankett und feiert dann vom 1. bis 4. Mai das Bezirksmusikfest. Das Altenwerk Leipferdingen wird 40 Jahre alt, die Geisinger Schule ist seit 50 Jahren am neuen Standort und feiert dies am 10. Mai, der Musikverein Polyhymnia Leipferdingen wird 150 Jahre alt und feiert dies im Rahmen des Brunnenfestes vom 4. bis 7. Juli. Die Stadt Geisingen wurde in einer Schenkungsurkunde, die im Besitz des Klosters St. Gallen ist, im Jahre 764 erstmals urkundlich erwähnt. Die Urkunde wurde in Kirchen (Hausen) gefertigt, das damals Gerichtsplatz war. Beide Gemeinden sind demnach in der gleichen Urkunde erwähnt. Grund 2014 dieses 1250-jährige entsprechend zu feiern, zusätzlich liegt auch noch die Gemeindereform 40 Jahre zurück. Rat nimmt Gleisanlagen ins Visier Soll der Bahnübergang "Am Hirschen" aufwändig umgebaut werden, um die Verkehrssicherheit zu erhöhen? Ja, haben die Gemeinderäte beschlossen. Schiltach muss dafür 220 000 Euro in die Hand nehmen. Die Deutsche Bahn will im kommenden Jahr die Kinzigtal-Bahnstrecke verbessern. Besonders soll dabei die Sicherheit an Bahnübergängen erhöht werden - regelmäßig kommt es bundesweit zu Kollisionen von Zügen mit anderen Fahrzeuge. Stimmen die Gemeinden den Umbaumaßnahmen zu, müssen sie sich mit einem Drittel an den Kosten beteiligen, den Rest teilen sich Bahn und Bund. Schiltachs Stadtbaumeister Roland Grießhaber erläuterte dem Gemeinderat die Besonderheiten des Bahübergangs "Am Hirschen". Dort plant die Stadt, in Höhe des dortigen Tunnelmundes westlich der Bahngleise eine Ausbuchtung zu bauen. Dort könnten auch größere Fahrzeuge, zum Beispiel solche, die Langholz transportieren, bei Gegenverkehr stehen, ohne die Gleise blockieren zu müssen. Grießhaber schlug daher vor, eine erforderliche Stützmauer so zu konstruieren, dass die Stadt die anschließende Straße zu gegebener Zeit verbreitern könne, um einen reibungslosen Verkehrsfluss zu gewährleisten. Dies wurde im Gemeinderat kontrovers diskutiert, da einige Räte die Notwendigkeit einer Straßenverbreitung in Zweifel zogen: Thomas Kipp brachte mit seiner Äußerung die Stimmung der Kritiker auf den Punkt: "Müssen wir wegen so wenigen Fahrzeugen so viel Geld in die Hand nehmen?" Bürgermeister Thomas Haas widersprach: Der Bahnübergang "Hirschen" werde regelmäßig für Langholztransporte genutzt. Selbst Holz aus dem Bereich "Kuhbach" werde teilweise über diese Strecke transportiert, weil die bis zu 20 Meter langen Fahrzeuge die Strecke an der Häberlesbrücke nicht nutzen könnten, weil sie dort nicht in die Hauptstraße abbiegen könnten. Darüber hinaus diene die Strecke als Umleitungfür diejenigen Fahrzeuge, die den Tunnel nicht benutzen dürfen, wenn die Hauptstraße gesperrt ist, argumentierte Haas. Da abzusehen sei, dass Kirchberg- und Schlossbergtunnel umgebaut und saniert werden müssten, wie dies derzeit in Wolfach der Fall ist, könne dem Bahnübergang "Am "Hirschen" auch für einen längeren Zeitraum eine wichtige Verkehrsbedeutung zukommen. Die Räte kamen überein, untersuchen zu lassen, welche Kosten die angedachte Verbreiterung der Straße verursachen würde. Ungeachtet dessen wurde dem Umbau des Bahnübergangs mehrheitlich zugestimmt mit der Maßgabe, dass die erforderliche Stützmauer so gebaut wird, dass die Stadt die anschließende Straße Richtung "Bahnhofstraße" gegebenenfalls für Begegnungsverkehr auf rund 5,5 Meter ausbauen könne. Der Umbau des Bahnübergangs bei der Gerberei Trautwein könnte dagegen ein ganz anderes Problem nach sich ziehen, das die Zufahrt in den stark ansteigenden "Geroltzhäuser Weg" betrifft. Die Verwaltung hatte die Umbaupläne der Bahn vom Ingenieurbüro Breinlinger untersuchen lassen, da sie Zweifel daran hatte, ob der geplante Anschluss des Geroltzhäuser Wegs dann noch ohne weiteres möglich sei. Die Untersuchung kam zu dem Ergebnis, dass nicht auszuschließen sei, dass die Neigungsverhältnisse der Straße dazu führen könnten, dass längere Fahrzeuge aufsitzen. Die Verantwortung hierfür trage wiederum die Stadt als Straßenbaulastträgerin. Der Umbau könne demnach Haftungsstreitigkeiten nach sich ziehen. Da sowohl die Holzabfuhr als auch das Abbiegen im aktuellen Ausbauzustand funktionierten, solle man dem Umbau des Bahnübergangs nicht zustimmen, argumentierte Haas. Auch sei an dieser Stelle das Risiko einer Kollision des Zuges mit einem auf dem Übergang stehenden Fahrzeug deutlich geringer als an den anderen Bahnübergängen, weil sich direkt daneben der Haltepunkt Mitte befinde, zu dem eine gute Sichtverbindung bestehe. Selbst Züge vom Hauptbahnhof her müssten an dieser Stelle schon soweit abgebremst sein, dass keine Kollision drohe. Mehrheitlich wurde dem Umbau dieses Bahnübergangs die Zustimmung verweigert, da die Stadt Schiltach das Problem mit aufsitzenden Fahrzeugen "ausbaden müsste", so die Räte, da sich die Bahn nach Abschluss der Bauarbeiten aus der Verantwortung zurückziehen könne. Als unproblematisch betrachtet das Gremium die Umbauten an den Bahnübergängen "Vor Heubach" und "Vor Kuhbach", für die bereits Kreuzungsvereinbarungen mit der Bahn getroffen wurden. Esa entscheidet über große Weltraummissionen: Missionen für Milliarden Ferne Planeten, Gravitationswellen oder schwarze Löcher - Experten der europäischen Raumfahrtagentur müssen sich jetzt auf zwei Großprojekte einigen, die sie in den nächsten Jahren starten wollen. 30 Vorschläge standen zur Auswahl, fünf sind noch im Rennen. Ferne Welten. Mehr als 1000 Planeten bei anderen Sternen haben Astronomen bereits gefunden. Ob es zumindest auf einigen davon Leben gibt, weiß keiner. Die Auswahl fällt schwer: Soll man nach Gravitationswellen suchen? Oder lieber den Ursprung des Kosmos erforschen? Oder nach erdähnlichen Planeten fahnden und damit vielleicht außerirdisches Leben entdecken? Diese Fragen stellen sich gerade die Verantwortlichen der europäischen Raumfahrtagentur Esa. Für ihr Programm "Cosmic Vision" suchen sie Ideen für zwei große Raumfahrtprojekte, die die Forschung entscheidend voranbringen sollen. Der Etat für solche "L-Missionen" liegt jeweils etwa bei einer Milliarde Euro. Der Start wird voraussichtlich 2028 und 2034 sein. Anfang September traf sich in Paris die Elite der europäischen Weltraumforschung, um Vorschläge für solche Missionen zu diskutieren. 30 Ideen standen zur Debatte, fünf davon sind nun in die engere Wahl gekommen. Zahlreiche Gremien begutachten die Vorschläge, haken bei den Forschern nach. In den nächsten Tagen soll eine endgültige Entscheidung durch das wissenschaftliche Programmkomitee fallen. Insgesamt vier große Fragen hat die Esa ausgewählt, auf welche die Missionen des 2007 initiierten Programms "Cosmic Vision" Antworten finden sollen. Was sind die Bedingungen für die Entstehung von Planeten und Leben? Die genauen Vorgänge bei der Entstehung von Sternen aus großen Gaswolken - und damit auch der Entstehung von Planeten, die diese Sterne umkreisen - liegen immer noch im sprichwörtlichen Dunkeln. Ein großes Infrarotteleskop im All könnte dieses Dunkel durchdringen. Und wenn ein Stern Planeten besitzt, unter welchen Umständen kann dort Leben entstehen? Um dieser Frage nachzugehen, soll 2017 das Weltraumteleskop "Cheops" starten, mit dem 500 bereits bekannte Planetensysteme in unserer näheren Umgebung genauer untersucht werden. Die Möglichkeiten sind aber begrenzt, Cheops ist eine kleine Mission mit einem Budget von 150 Millionen Euro. Mit größeren Instrumenten könnten die Astronomen erdähnliche Planeten abbilden und sogar die Zusammensetzung ihrer Atmosphären analysieren und so nach "Biomarkern" suchen: Gasen, die als Indiz für biologische Aktivität gelten. Wie funktioniert das Sonnensystem? Auch diese Frage soll letztlich Aufschluss darüber geben, welche Voraussetzungen es für die Entstehung von Leben gibt. Eine wichtige Rolle spielt die magnetische Aktivität eines Sterns und die Wechselwirkung seines Magnetfelds sowie der von ihm ausgehenden Teilchenstrahlung mit dem Planetensystem. In unserem Sonnensystem lassen sich diese Vorgänge exemplarisch untersuchen. Mit dem "Solar Orbiter" hat die Esa bereits eine Mission der M-Klasse (dort liegt das Budget bei etwa einer halben Milliarde Euro) für diese Frage bewilligt. Die Sonde soll 2017 starten und Oberfläche und Aktivität der Sonne genau beobachten. Von großem Interesse für die Forscher sind auch Jupiter und seine Monde. Sie wollen herausfinden, welche Rolle der Riesenplanet bei der Entwicklung des Sonnensystems gespielt hat. Dafür sieht die Esa die erste der insgesamt drei L-Missionen des "Cosmic Vision"-Programms vor. Die Sonde "Juice" (Jupiter Icy Moons Explorer) beginnt ihre Reise voraussichtlich 2022. Acht Jahre später erreicht sie Jupiter und soll die Atmosphäre des Planeten sowie die eisigen Monde Europa, Kallisto und Ganymed untersuchen. Was sind die grundlegenden physikalischen Gesetze des Universums? Das Weltall bietet viele Möglichkeiten, Materie unter extremen Bedingungen zu studieren und so zu untersuchen, ob die uns bekannten Naturgesetze dort immer noch gültig sind. Vielleicht finden sich auch Abweichungen, die den Physikern den Weg zu einer neuen Theorie weisen könnten, unter deren Dach sich alle bekannten Naturgesetze vereinen lassen. Wie ist das Universum entstanden und woraus besteht es? Vor 13,7 Milliarden Jahren entstand unser Kosmos durch den Urknall. Neben der uns geläufigen Materie, aus der Sterne, Planeten und Lebewesen wie wir bestehen, gibt es Dunkle Materie, deren Schwerkraft Galaxien und Galaxienhaufen zusammenhält, und Dunkle Energie, durch deren Wirken sich die Expansion des Weltalls beschleunigt. Bislang wissen die Forscher weder, welche physikalischen Gesetze in den ersten Sekundenbruchteilen des Urknalls gültig waren, noch woraus Dunkle Materie und Dunkle Energie bestehen. Mit "Euclid" hat die Esa auch hier bereits eine M-Mission bewilligt, deren Start für 2020 vorgesehen ist. Mit einem speziellen Teleskop soll die Sonde die Verteilung der Materie im Universum erstmalig am gesamten Himmel untersuchen und so Rückschlüsse auf die Beschaffenheit von Dunkler Materie und Dunkler Energie ermöglichen. Wer das Rennen machen könnte Von den 30 Vorschlägen werden am Ende des Auswahlverfahrens nur zwei übrig bleiben. Die besten Chancen auf eine Bewilligung als L-Mission hat nach Meinung vieler Experten "E-Lisa", ein anspruchsvolles Konzept zum Nachweis von Gravitationswellen. Darunter verstehen Physiker Änderungen in der Struktur der Raumzeit, die Albert Einstein vor fast 100 Jahren vorausgesagt hatte. Nachgewiesen wurden sie bis heute nicht. Elisa könnte das schaffen, hoffen die Wissenschaftler hinter dem Projekt. Die Mission sieht einen aus zwei oder drei Sonden bestehenden Detektor vor, der im All stationiert wird. Er könnte im Gegensatz zu Anlagen auf der Erde auch Gravitationswellen nachweisen, die beim Urknall entstanden sind, und so neue Erkenntnisse über die Entstehung des Kosmos liefern. Vier weitere Vorschläge konkurrieren noch um die zweite L-Mission: ein großes Röntgenteleskop namens "Athena", das unter anderem schwarze Löcher erforschen soll, "Icy Planets", eine weitere Mission zu den äußeren Planeten des Sonnensystems, "Prism", eine Mission zur Vermessung der kosmischen Hintergrundstrahlung, und der "Exoplanet Finder", der erdähnliche Planeten aufspüren und untersuchen soll. Bereits ausgeschieden sind unter anderem Vorschläge zum Proben-Rücktransport vom Mars, zur Erforschung von Mond, Venus und Asteroiden sowie zur Sonnenphysik. Snowden bereit, mit Deutschland in Bezug auf US-Überwachung zu „kooperieren“ Edward Snowden, der Whistleblower des US-amerikanischen Geheimdienstes, hat erklärt, er sei bereit, nach Berlin zu reisen und vor dem deutschen Bundestag auszusagen, wenn die amerikanische National Security Agency und ihr Direktor Keith Alexander keine Antworten über ihre Aktivitäten geben. Der deutsche Abgeordnete Hans-Christian Ströbele traf Snowden am Donnerstag in Russland, wo dieser Asyl erhalten hat, um mit ihm die Aussage in Deutschland zu besprechen. In einem Brief von Snowden, der am Freitag von Ströbele den Medien in Berlin präsentiert wurde, schreibt dieser: „Auch wenn das Ergebnis meiner Bemühungen nachweislich positiv war, behandelt meine Regierung eine abweichende Meinung weiterhin als Treuebruch und versucht, politische Meinungsäußerung mit Strafandrohung zu kriminalisieren, bei der keine Verteidigung möglich ist.“ Die Wahrheit zu sagen ist aber kein Verbrechen. In dem Brief schreibt Snowden, er sei davon überzeugt, dass die Unterstützung der internationalen Gemeinschaft die amerikanische Regierung davon überzeugen könne, die Anklage gegen ihn fallen zu lassen. Die vom US-Justizministerium erhobene Anklage umfasst Spionage und Diebstahl von Staatseigentum. Der deutsche Innenminister Hans-Peter Friedrich sagte gegenüber Zeit Online: „Wenn Herr Snowden bereit ist, mit deutschen Vertretern zu sprechen, dann finden wir Wege, das zu ermöglichen.“ Die Beziehungen zwischen den USA und Deutschland sind durch die Behauptungen belastet, die NSA habe das Handy von Kanzlerin Angela Merkel abgehört. Thomas Oppermann, der Abgeordnete, der den für den Geheimdienst zuständigen parlamentarischen Ausschuss leitet, erklärte, man solle die Gelegenheit ergreifen, Snowden als Zeuge anzuhören, wenn dies möglich sei, „ohne ihn zu gefährden und die Beziehungen zu den USA völlig zu ruinieren“. Ströbele, ein Abgeordneter der Grünen, veröffentlichte ein Bild von sich und Snowden in seinem Twitter-Feed. Er wurde bei seinem Besuch in Russland von zwei deutschen Journalisten begleitet. Ströbele erklärte, dass laut dem Anwalt des früheren NSA-Mitarbeiters Snowden nicht nach Russland zurückkehren könne, wenn er das Land verlasse. Wenn Snowden in Deutschland aussage, dann benötige er eine Zusicherung, dass er dort „sicher“ sei, so der Abgeordnete. Snowden erklärt in seinem Brief, dass er sich einer „ernsthaften und fortlaufenden“ Verfolgungskampagne ausgesetzt sähe, die ihn aus seiner Heimat vertrieben habe. Er sei jedoch berührt von der weltweiten Reaktion auf „meinen Akt der politischen Meinungsäußerung“. Bürger auf der ganzen Welt sowie hochrangige Politiker – auch in den Vereinigten Staaten – haben die Enthüllungen über ein unkontrolliertes System umfassender Überwachung als ein Verdienst an der Allgemeinheit bezeichnet. In seinem Brief macht Snowden den deutschen Behörden ein Angebot der Zusammenarbeit, „wenn die Schwierigkeiten rund um die humanitäre Situation gelöst wurden“. Frontier Airlines erhebt Gebühren für Handgepäck Frontier Airlines plant, bis zu 100 US-Dollar von Passagieren zu verlangen, die auf ihrem Flug Handgepäck verstauen möchten. Frontier Airlines beabsichtigt, bis zu 100 US-Dollar für ein Stück Handgepäck und 2 Dollar für Kaffee oder Limonade zu berechnen, auch wenn in der Ankündigung am Mittwoch zu lesen war, dass Passagiere die ganze Dose behalten dürften. Die neue Gebühr gilt für Handgepäck im Gepäckfach über dem Sitz, kleine Taschen unter dem Sitz sind weiterhin kostenlos. Frontier erklärte, man berechne 25 US-Dollar, wenn die Gebühr im Voraus bezahlt werde, und 100 US-Dollar bei Reisenden, die erst am Flugsteig zahlten. Frontier-Sprecherin Kate O'Malley sagte, die Gebühr von 100 US-Dollar ziele darauf ab, Reisende zu bewegen, sich im Vorfeld um die Zahlung zu kümmern. „Wir möchten diese Summe nicht berechnen“, erklärte sie. Fluggesellschaften begannen 2008 damit, für das erste und zweite aufgegebene Gepäckstück Gebühren zu verlangen. Passagiere, die versuchten, diese zu umgehen, haben deshalb soviel wie möglich ins Handgepäck gestopft, was zur Folge hat, dass die Gepäckfächer über dem Sitz häufig überfüllt sind. Gebühren sind eine Möglichkeit, Passagiere dazu zu bewegen, weniger mit an Bord zu nehmen. O'Malley sagte, bei der neuen Gebühr gehe es nicht wirklich darum, Geld zu verdienen. Es gehe um die treuesten Kunden von Frontier, die deutlich zum Ausdruck gebracht hätten, dass es immer schwerer werde, Platz im Fach über dem Sitz zu finden. Passagiere, die Ihre Tickets auf der Website der Fluggesellschaft kaufen, müssen nicht bezahlen. Das bedeutet, dass ein Passagier am Flugsteig von Frontier unter Umständen ein Gepäckstück kostenlos mitnehmen darf, die nächste Person aber 100 Dollar für ein vergleichbares Gepäckstück bezahlen muss. O'Malley erklärte, die Website von Frontier und die Check-in-Verfahren würden geändert, sodass die Passagiere über die Gebühr informiert seien, ehe sie zum Flugsteig kämen. Die neue Handgepäckgebühr von Frontier tritt erst im Sommer in Kraft, ein genaues Datum gibt es noch nicht. Passagiere schimpfen häufig über Gepäckzuschläge und andere Gebühren, doch Fluggesellschaften greifen gern darauf zurück. Sie argumentieren, dass der Transport des Gepäcks Geld koste und Passagiere diesen Service bezahlen sollten, wenn sie ihn wünschten. Viele an der Wall Street betrachten die neuen Gepäckgebühren als Zeichen dafür, dass die Fluggesellschaften genug Geld einnehmen, um nach Jahren der Verluste die Kosten von Flugreisen zu decken. Die meisten lassen bislang jedoch die Finger von Gebühren für Handgepäck. Spirit Airlines Inc. verlangte vor drei Jahren als Erste Gebühren für Handgepäck und später folgte Allegiant Air, ebenfalls ein Billigflieger. Die einzige andere Fluggesellschaft mit einer derartigen Gebühr sei die ungarische Wizz Air, erklärte der Airline-Berater Jay Sorensen, der die Zusatzgebühren aufmerksam verfolgt. Er schätzte in einem Bericht vom Dezember 2011, dass die Handgepäckgebühr Spirit jährlich 50 Millionen US-Dollar einbringe. Sorensen, der früher eine Führungsposition bei Midwest Airlines innehatte, ist kürzlich mit Spirit geflogen und war neugierig, was ihm am Flugsteig erwarten würde, wenn Passagiere mit der ungewöhnlichen Handgepäckgebühr des Unternehmens konfrontiert würden. „Der Boarding-Prozess gehörte zu den reibungslosesten, die ich in meiner Laufbahn in der Luftfahrt erlebt habe“, sagte er. Ich erwartete, Zähneknirschen und handgreifliche Diskussionen am Flugsteig zu sehen. „Das Flugzeug war voll“, erklärte er, „und das Boarding lief wie geschmiert.“ Frontier folgt Spirit auch bei den 2 Dollar, die für Kaffee, Tee, Limonade oder Saft verlangt werden. Das Unternehmen erklärte, dass Passagiere, die Limonade oder Saft kauften, die ganze Dose behalten dürften und Kaffee gratis nachgefüllt werde. Wasser ist weiterhin kostenlos. US Airways hatte 2008 kurzzeitig versucht, für Erfrischungsgetränke Geld zu verlangen, machte dies aber sieben Monate später wieder rückgängig, nachdem sich Passagiere beschwert hatten und keine andere große Gesellschaft nachgezogen war. Frontiers Schritt, Gebühren für das Handgepäck zu erheben, wenn Passagiere nicht direkt bei der Fluggesellschaft kaufen, ist die jüngste Initiative, mit der Kunden auf die eigene Website gelenkt werden sollen. Fluggesellschaften bezahlen Online-Reisebüros wie Orbitz 10 bis 25 US-Dollar pro verkauftem Ticket. Das liefert allen Gesellschaften einen Anreiz, Passagiere zum Direktkauf bei ihnen zu bewegen statt über ein Online-Reisebüro. Frontier ist in diesem Bereich allerdings am weitesten gegangen. Im September begann das Unternehmen damit, bei Buchung über ein Online-Reisebüro nur noch halb so viele Vielfliegermeilen zu vergeben. Am Mittwoch wurden die Meilen noch einmal auf 25 Prozent der Flugstrecke gekürzt. Eine bei einem Drittanbieter gebuchte Flugreise mit Frontier über 1000 Meilen bringt Kunden deshalb nur noch 250 Meilen ein. Passagiere können auch ausschließlich beim Direktkauf auf der Website von Frontier Plätze reservieren. Frontier verfügt über einen treuen Kundenstamm an seinem Sitz in Denver, doch das Geschäft schrumpft und das Unternehmen verliert Geld. Der Erlös ging um 9 Prozent zurück und die Flugkapazität schrumpfte knapp 13 Prozent im ersten Quartal, wie im Finanzbericht zu lesen ist, der am Mittwoch von dem Mutterkonzern, Republic Airways Holdings Inc., veröffentlicht wurde. Republic hat versucht, im Rahmen des Verkaufs der Gesellschaft die Finanzen von Frontier in den Griff zu bekommen. Sprichwörter kommen aus der Bibel Gut 40 Frauen besuchten das letzte Frauenfrühstück dieses Jahres in der evangelischen Kirchengemeinde Bisingen. Thema des Tages im Gemeindehaus waren "Sprichwörter aus der Bibel" und "Redewendungen aus dem Mittelalter". Zita Köhler, die Vorsitzende des Kirchengemeinde- rats, ging nach dem Frühstück in einem Vortrag auf die biblischen Sprichwörter ein. "Sprichwörter enthalten Lebensweisheiten, Vorschriften oder Warnungen", erklärte sie. Sie verglich mehrere Sprichwörter mit den entsprechenden Bibelstellen und erklärte die Bedeutung. Sie nannte Sprichwörter wie: Holzauge sei wachsam, wie Schuppen von den Augen fallen, ein Auge auf jemand werfen, den Seinen gibt's der Herr im Schlaf, seine Hände in Unschuld waschen. Mehrmals ließ die Referentin ihre Zuhörer auch raten, um welches Sprichwort es sich handelte. Der Redewendungen aus dem Mittelalter nahm sich die Kirchengemeinderätin Christel Dehner an: Aller guten Dinge sind drei, blau machen, etwas verhauen. Sie erklärte Bedeutung und Herkunft der Redewendungen, die sie "Brücken in die Vergangenheit" nannte. Zum Abschluss wurde eine Tombola verlost. Die Preise lagen zugedeckt auf einem Tisch und wurden humorvoll umschrieben, bevor sie an die Gewinner übergeben wurden. Unter die Besucherinnen der Frühstücksrunde mischte sich auch Bürgermeisterkandidat Roman Waizenegger. Lernen statt arbeitslos: Pilotprojekt für Ungelernte im Tourismus An der Mecklenburgischen Seenplatte startetheute ein Pilotprojekt für die Tourismusbranche. Unter Führung der Bundesarbeitsagentur sollen 49 Frauen und Männer, die bereits als Ungelernte in der Branche arbeiten, über drei Winter hinweg zu Fachkräften für Hotels und Gaststätten qualifiziert werden. "Neu daran ist, dass die sechsmonatigen Kurse mit Abschlüssen enden", sagte Carmen Wiechert von der Arbeitsagentur Neubrandenburg. Der Nutzen sei vielfältig: Die Teilnehmer würden dadurch nicht arbeitslos, die Firmen bekämen geschulte Fachkräfte, die immer stärker in Hotels und Gaststätten fehlten, und die Agentur müsse nicht Arbeitslosigkeit finanzieren. An dem Projekt sind auch die Industrie- und Handelskammer in Neubrandenburg sowie der Deutsche Hotel- und Gaststättenverband (Dehoga) Mecklenburg-Vorpommern beteiligt. NSA erklärt, ein „interner Fehler“ und nicht Hacker seien Schuld am Crash der Website Die schattenhafte National Security Agency erklärte am späten Freitag, ein Fehler habe ihre öffentliche Website einige Stunden lahmgelegt und nicht Hacker, wie online behauptet wurde. „NSA.gov war heute Nacht einige Stunden lang nicht erreichbar, da während eines geplanten Updates ein interner Fehler aufgetreten ist“, erläuterte die Spionageagentur in einer per E-Mail versandten Meldung. Das Problem werde an diesem Abend behoben. Die Behauptung, der Ausfall sei durch einen verteilt ausgeführten Denial of Service-Angriff (DDoS) verursacht worden, sei nicht wahr. In den frühen Abendstunden war Online-Server-Trackern aufgefallen, dass die NSA-Website mindestens sechs Stunden lang nicht erreichbar war und dies für manche Nutzer auch weiterhin nicht ist. Zuvor hatte ein Sprecher der NSA gegenüber ABC News erklärt, das sensible interne Netzwerk der Behörde sei „in keiner Weise“ kompromittiert. Geheime Informationen seien nicht in Gefahr, so der Sprecher. Mindestens eine Gruppe von Hacktivisten nahm für sich in Anspruch, die NSA-Website mit einem DDoS-Angriff lahmgelegt zu haben. Bei derartigen Angriffen wird die Zielwebsite mit Seitenaufrufen überflutet, bis die Server überlastet sind und die Website zusammenbricht. Die Cybertaktik ist relativ simpel und die Angriffe dienen nicht dazu, in das interne Netzwerk des Zielsystems einzudringen. Die früher supergeheime NSA, deren Spitzname einst No Such Agency (Keine solche Behörde) lautete, findet sich inzwischen im hellen Licht der Öffentlichkeit und sieht sich nach den in den letzten Monaten bekannt gewordenen Enthüllungen über ihr ausgedehntes Überwachungsprogramm im In- und Ausland scharfer Kritik ausgesetzt – ein Resultat der geheimen NSA-Daten, die vom desillusionierten ehemaligen NSA-Mitarbeiter Edward Snowden gestohlen und veröffentlicht wurden. Die wachsende Kontroverse um den Geheimdienst befeuerte anfängliche Spekulationen darüber, der Zwischenfall heute sei das Ergebnis einer gezielten Cyperoperation. Leicht gesunken ist die Zahl der Menschen ohne Job im Oktober um 22 auf 1.307. Zwar sei die Quote mit 3,1 Prozent besser als vergangenes Jahr und auch besser als im September, "wir hätten uns aber mehr erhofft", sagt Monika Felder-Bauer, stellvertretende Geschäftsstellenleiterin der Agentur für Arbeit in Sonthofen. Denn zahlreiche Betriebe reagierten bislang verhalten bei Einstellungen. Ein Grund hierfür ist laut Felder-Bauer: "Wir haben kaum Fachkräfte im Handwerk, im Gesundheitswesen und in der Altenpflege". Jahreszeitenbedingt laufen seit September auch wieder Stellenangebote für Personal im Hotel- und Gaststättengewerbe ein. Mitte Dezember beginnt dort die Wintersaison. Den ganzen Hintergrundbericht dazu finden Sie im Allgäuer Anzeigeblatt vom 31.10.2013 (Seite 33). Gewinneinbußen bei Bombardier nach Rückgang bei Lieferzahlen und Aufträgen Der kanadische Flugzeug- und Eisenbahnhersteller Bombardier Inc meldete am Donnerstag einen 15-prozentigen Rückgang des Nettogewinns, nachdem er durch rückläufige Bestellungen und Auslieferungen bei Flugzeugen im dritten Quartal sowie Vertragsprobleme in der Eisenbahnsparte unter Druck geraten war. Bombardier mit Sitz in Montreal veröffentlichte auch keine Flugtestdaten für sein brandneues Flugzeug der CSeries und erteilte keine neuen Auskünfte darüber, ob das Flugzeug gemäß des ehrgeizigen Zeitplans im nächsten September in die kommerzielle Nutzung gehen könne. Auf den Jungfernflug des Testflugzeugs vor eineinhalb Monaten folgten bislang nur drei weitere Starts, was es fraglich erscheinen lässt, ob die Testphase wie geplant verläuft. Die Ergebnisse blieben hinter den Prognosen zurück und führten zu einem Kurssturz von über acht Prozent an der Börse von Toronto. Cameron Doerksen, Analyst bei National Bank Financial, senkte am Donnerstag seine Bewertung von „outperform“ auf „sector perform“ im Hinblick darauf, dass die Aktie in den nächsten ein bis zwei Quartalen ein begrenztes Kurspotenzial besitzt. „Zwar wurden schwächere Lieferzahlen bei Flugzeugen weitestgehend erwartet, doch von der Margenentwicklung im Transportbereich sind wir ganz klar enttäuscht“, sagte Doerksen in einen Kundenschreiben. Wir sind der Ansicht, dass Bombardier neue Bestellungen für die CSeries erhalten wird, wenn das Testprogramm für das Flugzeug voranschreitet. Falls allerdings in den kommenden Monaten keine neuen Bestellungen bekannt gegeben werden, dann erwarten wir, dass der Markt dem Programm gegenüber skeptischer wird. Bombardier hofft, dass die Flugzeugreihe der CSeries das Unternehmen in das untere Marktsegment katapultieren kann, das derzeit von Boeing und Airbus dominiert wird. Das erste Testflugzeug wurde im März der Öffentlichkeit vorgestellt und flog nach monatelangen Verzögerungen erstmals im September. Doch bisher sind verbindliche Bestellungen für die CSeries mit 177 moderat, da potenzielle Käufer auf die Ergebnisse der Flugtests warten und sehen möchten, ob die Behauptungen des Unternehmens hinsichtlich Treibstoffeffizienz und Kosteneinsparpotenzial des neuen Düsenverkehrsflugzeugs zutreffend sind. Derzeit gibt es insgesamt 403 Bestellungen und Zusagen von 15 Kunden und Gesellschaften. Vorstandsvorsitzender Pierre Beaudoin gibt sich zuversichtlich, dass Bombardier sein Ziel von 300 verbindlichen Bestellungen zu Beginn der kommerziellen Nutzung des Jets erreichen werde. Die Unternehmensführung versicherte am Donnerstag gegenüber Analysten und Medien außerdem, das Programm liege im Terminplan. „Das Testflugzeug ist nicht länger am Boden geblieben als erwartet“, sagte Beaudoin bei einer Telefonkonferenz und fügte hinzu, während der Standzeit des Flugzeugs seien Bodentests und Software-Updates angesetzt gewesen. Jeder Hersteller plant anders. Wir haben beschlossen, einen ersten Flug zu unternehmen und dann einen Überarbeitungszeitraum anzuhängen, was wir auch getan haben. Das geschieht während des gesamten Flugprogramms. Das zweite von fünf Testflugzeugen werde voraussichtlich in den nächsten Wochen starten, die restlichen kurz danach, hieß es von Unternehmensseite. Dennoch bleiben Analysten skeptisch, ob zwölf Monate nach dem Jungfernflug der erste Kunde ein Flugzeug der CSeries in Betrieb nehmen kann. Bombardier erklärte, es überprüfe die Planung für die Inbetriebnahme (EIS) und werde diese in den nächsten Monaten aktualisieren. „Das langsame Voranschreiten der Flugtest – auch wenn sie offensichtlich Bombardiers interner Planung entsprechen – bestärkt unsere Ansicht, dass sich die Inbetriebnahme auf das erste Quartal 2015 verschiebt“, sagte Doerksen. Im dritten Quartal mit Ende am 30. September fiel Bombardiers Nettogewinn auf 147 Millionen Dollar bzw. 8 Cent pro Aktie von 172 Millionen Dollar bzw. 9 Cent pro Aktie im Jahr zuvor. Der angepasste Gewinn pro Aktie beträgt unverändert 9 Cent. Der Umsatz gab geringfügig nach und sank von 4,2 auf 4,1 Milliarden Dollar. Analysten hatten einen Gewinn von 10 Cent pro Aktie und einen Umsatz von 4,56 Milliarden Dollar erwartet, so Thomson Reuters I/B/E/S. Der weltweit viertgrößte Flugzeughersteller gibt an, er habe in diesem Quartal 45 Flugzeuge ausgeliefert, ein Rückgang von 57 im letzten Jahr. Die Nettobestellungen fielen von 83 Flugzeugen auf 26. Der Auftragsbestand in der Luft- und Raumfahrtsparte betrug am 30. September 32,9 Milliarden Dollar und war damit gegenüber dem 31. Dezember unverändert. „Im Bereich Luft- und Raumfahrt lagen die Ergebnisse im Rahmen unserer Vorgaben, aber der niedrige Auftragseingang und die Marktverhältnisse insgesamt waren enttäuschend“, sagte Beaudoin. Der Umsatz in der Luft- und Raumfahrtsparte fiel um 13 Prozent auf zwei Milliarden Dollar. Bombardier, der weltweit größte Eisenbahnhersteller, gab bekannt, dass der Umsatz in dieser Sparte um knapp elf Prozent auf 2,1 Milliarden Dollar gestiegen ist. Der Auftragsbestand in der Transportsparte betrug am 30. September 32,6 Milliarden Dollar und war damit gegenüber dem 31. Dezember leicht erhöht. Die Gewinnspanne im Bereich Transport wurde durch Abwicklungsprobleme bei einigen Großverträgen beeinträchtigt. Laut Unternehmensführung wird es für das vierte Quartal neue Vorgaben geben. Im nachmittäglichen Handel am Donnerstag gab die Bombardier-Aktie um 8,5 Prozent nach und lag bei 4,83 kanadischen Dollar, nachdem auch angekündigt wurde, dass der Google-Finanzvorstand Patrick Pichette in den Vorstand wechseln wird. Die brasilianische Embraer SA, der weltweit drittgrößte kommerzielle Flugzeughersteller und Bombardiers engster Rivale, meldete am Donnerstag einen zehnprozentigen Rückgang des Quartalsgewinns. USA: Schüsse am Flughafen von Los Angeles Ein Unbekannter hat am Freitagvormittag (Ortszeit) am LAX-Flughafen Schüsse abgefeuert. Während die Flughafenleitung über den Kurznachrichtendienst Twitter mitteilte, der Schütze sei in Gewahrsam, berichtete die "Los Angeles Times", der Mann sei tot. Auch ein Sicherheitsmann sei getötet worden. Medien berichteten außerdem von mehreren Verletzten. US-Präsident Barack Obama werde laufend über die Lage informiert, sagte der Sprecher des Weißen Hauses, Jay Carney. Der Vorfall ereignete sich in Terminal 3. Augenzeugen gaben an, einen Schützen mit einem Gewehr in einer der Abflughallen gesehen zu haben, wie mehrere Medien berichteten. Ein Reisender erzählte dem Sender CNN, viele Menschen hätten in Panik Schutz gesucht. Reisende hätten geschrien und Kinder geweint. Unter den Wartenden sei Panik ausgebrochen, viele hätten sich aus Angst hinter Stühlen versteckt. Er habe zwei Schüsse gehört, sagt ein Reisender der "Los Angeles Times". Ein Mitarbeiter der Sicherheitsbehörde TSA habe eine Schussverletzung am Fuß erlitten. Die Szene sei "wie in einem Film" gewesen. Danach sei er selbst in einen Sicherheitsbereich gebracht worden, berichtete der Mann. Die Schüsse sollen nahe eines Sicherheitskontrollbereichs gefallen sein. Flughafen-Gebäude evakuiert Auf Fernsehbildern war zu sehen, wie zahlreiche Kranken- und Polizeiwagen vor einem Terminal vorfuhren. Hunderte Menschen wurden aus dem Gebäude in Sicherheit gebracht. Nutzer auf Twitter veröffentlichten Fotos von einem Spezialeinsatzkommando und einem auf dem Boden liegenden Gewehr. Wie die Flughafenleitung über Twitter mitteilte, begann der Vorfall um 9.30 Uhr morgens (Ortszeit). Die Zufahrtsstraßen wurden gesperrt, wodurch sich laut CNN lange Rückstaus bildeten. Bis auf Landungen sei der Flugverkehr vorübergehend eingestellt worden, hieß es. Allerdings waren auf CNN auch mehrere Flieger beim Start zu beobachten. Terminal 3 wird vor allem von kleineren US-Fluggesellschaften bedient. Der LAX-Flughafen von Los Angeles ist einer größten Flughafen der USA. Kokainabhängiger Anwalt, der Drogenboss vor polizeilicher Ermittlung warnte, muss ins Gefängnis Basharat Ditta, 42, gab Informationen an Unterweltgröße Neil Scarborough weiter Der Anwalt hatte Angst, seine heimliche Drogenabhängigkeit könnte ans Licht kommen Er wurde vom Liverpooler Crown Court zu drei Jahren Gefängnis verurteilt Ein bekannter Strafverteidiger, der einen Drogenbaron vor einer großen polizeilichen Ermittlung warnte, weil er Angst hatte, seine geheime Drogensucht könnte aufgedeckt werden, wurde zu drei Jahren Haft verurteilt. Basharat Ditta, 42, versorgte Unterweltgröße Neil Scarborough mit sensiblen Informationen über Ermittlungen zu dessen Aktivitäten im Drogenhandel, nachdem er durch seine eigene Kokainsucht kompromittiert worden war. Der von Kriminalisten als „erstklassig“ gepriesene Anwalt mit dem Spitznamen „Bash“ wurde 2011 in seinem Haus verhaftet, nachdem die Polizei Scarborough überwacht hatte, den er in einem früheren Drogenverfahren vertreten hatte. Beamte beobachteten, wie Scarborough (32) drei Beutel Kokain am Haus des Anwalts in Blackburn, Lancashire, ablieferte, während dieser mit Kollegen bei einem Essen der Anwaltskammer war. Die Ermittlungen brachten zutage, dass Ditta regelmäßig Drogen der Klasse A konsumierte, nachdem bei Tests Spuren von Kokain in seinen Haaren, auf seiner Brieftasche und an Kreditkarten gefunden worden waren. Über einen Zeitraum von acht Monaten zwischen Januar und August 2011 versuchte er, unerlaubt Informationen über die Verhaftung zweier Männer im Auftrag von Scarborough und einem seiner Partner zu beschaffen. Alle vier Verdächtigen wurden damals von der Polizei im Rahmen eines großen Ermittlungsverfahrens zum Heroin- und Kokainhandel in Lancashire, Cumbria, Merseyside, Berkshire und West Yorkshire überwacht. Gemeinsam mit 32 anderen Personen wurden sie später verhaftet, nachdem die Polizei bei einer Reihe von Hausdurchsuchungen Heroin und Kokain im Wert von 1,5 Millionen Pfund sowie 200.000 Pfund an Bargeld sicherstellte. Ditta, 42, gab Informationen an die Kriminellen weiter, weil er fürchtete, seine Drogenabhängigkeit könne publik werden. Heute wurde Ditta, der für die Kanzlei Forbes Solicitors in Blackburn arbeitet, am Liverpooler Crown Court nach einem dreiwöchigen Verfahren in zwei Anklagepunkten wegen Behinderung der Justiz für schuldig befunden und verurteilt. Er gab bei einer früheren Befragung den Kokainbesitz zu. Der Anwalt wurde überführt, nachdem die Polizei bei ihren Ermittlungen gegen Scarborough herausfand, dass dieser im Februar 2011 in regelmäßigem telefonischen Kontakt mit Ditta gestanden hatte. Zwei Ermittlungsbeamte folgten dem Verdächtigen und sahen, wie er zu Dittas Haus ging und dort die Drogen mit einer Reinheit von 60 Prozent in einem schwarzen Golfhandschuh unter die Mülltonne des Anwalts legte. Kurz nachdem er die Drogen abgeliefert hatte, telefonierte Scarborough regelmäßig mit Ditta, der sich beim Abendessen im Fußballstadion der Blackburn Rovers in Ewood Park befand. Der Anwalt kehrte nach Hause zurück, holte sich die Drogen und dann wurden neun Mitteilungen zwischen den beiden ausgetauscht. Vor Gericht wurde bekannt, dass Ditta ein „regelmäßiger Konsument“ von Kokain war, nachdem bei Tests Drogen der Klasse A in seinen Haaren, seiner Brieftasche und auf seinen Kreditkarten entdeckt worden waren. Ditta wurde später verhaftet, stritt aber ab, Kokain zu nehmen und sagte, er habe mit dem mutmaßlichen Dealer gesprochen, weil dieser sein Mandant sei, und behauptete, ihre Diskussion unterliege dem „Anwaltsgeheimnis“. Während seiner Verhaftung nahm Ditta seine Brieftasche und versuchte, eine Reihe von Kreditkarten zu entfernen, doch sie wurden sichergestellt und ihm wurde eine Haarprobe entnommen. Beim polizeilichen Verhör gab er an, er betreibe sowohl unter seiner Privatadresse als auch am Arbeitsplatz ein Büro und Mandanten würden ihn zu Hause wegen juristischer Angelegenheiten anrufen. Vor Gericht wurde bekannt, dass er wichtige Akteure des Drogenhandels, von denen er einige zuvor vertreten hatte, nach bedeutsamen Verhaftungen angerufen und darüber informiert hatte, was die Ermittler über sie wussten. Staatsanwältin Anne Whyte sagte: „Ein Strafrechtsanwalt sollte besser als alle anderen wissen, dass man das Gesetz nicht bricht.“ Ditta wird des Missbrauchs seiner Position als Strafverteidiger angeklagt, da er sich zu sehr mit bestimmten Mandanten eingelassen hat. Die fragliche Beziehung ist nicht einfach die eines Drogenhändlers, sondern eines Drogenhändlers, der seinen Anwalt mit Drogen versorgt. Ein Teil seiner Mitteilungen war zweifellos legitim, denn er war der Anwalt dieser Personen. Doch das ging weit über die Grenzen einer normalen Beziehung zwischen Anwalt und Mandant hinaus. Er wirkte den polizeilichen Ermittlungen soweit wie möglich entgegen, sodass sie weiterhin ihren kriminellen Aktivitäten nachgehen konnten. Herr Ditta brachte damit seinen Berufsstand in Verruf. Er stand bestimmten Mandanten zu nahe, insbesondere Scarborough, und er ließ es zu, dass seine Unabhängigkeit kompromittiert wurde. Ditta wies jedes Fehlverhalten von sich und behauptete: „Wenn ich ein korrupter Anwalt wäre, was ich nicht bin, und Informationen an Scarborough weitergeben wollte, dann würde ich keine 15 Stunden warten, sondern das sofort tun.“ Doch nach der Anhörung sagte Superintendent Lee Halstead von der Polizei in Lancashire: „Herr Ditta hat den Schritt von einem Strafverteidiger zu einem Kriminellen in dem Moment getan, als er anfing, Drogen von organisierten Kriminellen zu erwerben.“ Seine Kokainabhängigkeit führte zu einer hoffnungslosen Kompromittierung und machte ihn empfänglich für die Motive führender Mitglieder der organisierten Kriminalität, die ihn beauftragten, wertvolle Informationen über polizeiliche Ermittlungen einzuholen. Anwälte müssen die höchsten Standards an Integrität aufrechterhalten und in der Öffentlichkeit für Vertrauen und Zuversicht sorgen. Ditta hat dieses Vertrauen hintergangen und versucht, sich hinter der Fassade seines Berufs zu verschanzen. Die Serious and Organised Crime Unit von Lancashire leitete die Ermittlungen gegen Ditta, die auch zu einer Verurteilung in drei Fällen wegen des Besitzes von Kokain und Justizbehinderung führten, was unsere Entschlossenheit unterstreicht, Kriminelle vor Gericht zu bringen. Dieser Fall sollte Kriminellen eine Warnung sein und zeigt, dass sich keiner dem Arm des Gesetzes entziehen kann. Wir finden Sie und bringen Sie vor Gericht. Scarborough selbst wurde zu 14 Jahren Gefängnis verurteilt, nachdem er sich der Verschwörung zum Heroin-, Kokain- und Cannabishandel für schuldig erklärt hatte. Fünfunddreißig weitere am Drogenhandel beteiligte´Personen wurden zu Gesamtstrafen von 153 Jahren wegen Drogendelikten verurteilt. Auf seiner Website veröffentlichte Ditta einen Bereich mit Fragen und Antworten über sich, in dem er angab, sein Traumjob sei es, als Anwalt Mandanten in der Todeszelle in Amerika zu vertreten, sein ultimativer Gast beim Abendessen sei Mohammed Ali und Chancenungleichheit sei die Motivation für seine Arbeit. Revolutionäres Werk der Kirchenmusik Zum Abschluss der Feierlichkeiten aus Anlass seines 160-jährigen Bestehens wird der Liederkranz Dunningen zwei Gottesdienste mit der "Deutschen Messe" von Franz Schubert umrahmen. Nach dem großen Erfolg des Musicals "Rock my Life", das die Zuschauer im Frühjahr diesen Jahres begeisterte, wird der Liederkranz zum Abschluss des Jubiläumsjahres zwei Gottesdienste mit der Aufführung der Deutschen Messe von Franz Schubert bereichern. Am Samstag, 26. Oktober, wird diese außergewöhnliche Messe ab 19 während der Abendmesse in der St. Martinuskirche Dunningen und am Sonntag, 27. Oktober, ab 10.15 Uhr beim Gottesdienst in der St. Johannes Baptistkirche in Lackendorf zu hören sein. Die so genannte Deutsche Messe mit dem Originaltitel "Gesänge zur Feier des heiliges Opfers der Messe", D 872, ist ein geistliches Musikwerk des Komponisten Franz Schubert aus dem Jahre 1826 und galt zur Zeit der Entstehung fast als revolutionär. Die Messe wird im Rahmen der Gottesdienste aufgeführt, wie der Auftraggeber Johann Philipp Neumann es im Sinn hatte. Unter der Leitung von Hermann Schneider wird der Chor von der Bläsergruppe des Musikvereins Frohsinn Tennenbronn und Noemi Lokodi an der Orgel begleitet. Haslach: Skepsis weicht zusehends Zuversicht Mit den Wahlen zum Pfarrgemeinderat 2015 wird sich beispielsweise in der Seelsorgeeinheit Haslach (SE) Grundlegendes ändern. Es gibt dann nur noch einen gemeinsamen Pfarrgemeinderat für alle sechs Pfarreien. In einer gemeinsamen Sitzung bereiteten sich am Samstag die Gremien aus Haslach, Hofstetten, Mühlenbach, Fischerbach, Steinach und Welschensteinach auf die Veränderungen vor. Denn an den grundsätzlichen Beschlüssen der Diözese ist nichts mehr zu ändern und es ist an den Pfarrgemeinderäten, diese möglichst zufriedenstellend umzusetzen. Im Laufe des Tages wurde besonders deutlich: die Skepsis gegenüber dem Neuen weicht zögernd aber zusehends einer Zuversicht. Von den Vorstellungen und Erwartungen an die Neuerungen 2015 bis hin zu konkreten Vorschlägen über die künftige Zusammensetzung und die Größe des Pfarrgemeinderats reichten die äußerst konstruktiven Gespräche der sechs Gremien mit den Hauptamtlichen des Seelsorgeteams. Regionaldekan Georg Schmitt erläuterte anhand einer Präsentation die neu gefassten Richtlinien für Seelsorgeeinheiten in der Erzdiözese Freiburg. Danach bildet die SE Haslach als Kirchengemeinde künftig eine Körperschaft des öffentlichen Rechts, die in die Rechte und Pflichten der bisher sechs einzelnen Kirchengemeinden eintritt. Es wird nur noch einen gemeinsamen Pfarrgemeinderat und einen Stiftungsrat geben, in dem der Pfarrer Kraft Amtes vertreten ist. Aus jeder Pfarrei sollen mindestens zwei gewählte Mitglieder vertreten sein, in den sechs Pfarreien werden vor Ort so genannte Gemeindeteams gebildet. Ihre Aufgabe wird es künftig sein, das kirchliche Leben im Ort zu fördern. Bei der Frage nach den Finanzen der einzelnen Pfarrgemeinde zeigte sich dann erheblicher Gesprächsbedarf. Die Neuerungen sehen vor, dass angesammelte Guthaben in den Pfarreien zweckgebunden erhalten bleiben. Die Verbindlichkeiten gehen dagegen auf die Gesamtgemeinde über. Gerade im Hinblick auf die großen geplanten Investitionen, deren Verpflichtung dann alle Pfarreien treffen, gab es große Bedenken. "Auch in der Vergangenheit wurde nur in Projekte investiert, die von den einzelnen Pfarreien alleine bewältigt werden konnten", relativierte Haslachs Pfarrgemeinderatsvorsitzender Bruno Prinzbach. Praktische Erfahrung mit einem gemeinsamen Gremium für fünf Pfarreien schilderte Barbar Ritter, die Vorsitzende des Gremiums in der Seelsorgeeinheit Schutterwald-Neuried. Sie hatten sich 2006 zur Aufgabe gemacht, "Eins werden, fünf bleiben" und mussten feststellen, dass das gar nicht so einfach ist. Die Gremien der Haslacher Seelsorgeeinheit machten sich dann daran, die Fragen zur künftigen Zusammensetzung und Größe des gemeinsamen Pfarrgemeinderats sowie der praktischen Arbeit der Gemeindeteams zu beantworten. Die Ausarbeitungen werden in weiteren Sitzungen konkretisiert und in einer weiteren gemeinsamen Sitzung aller sechs Gremien im kommenden Frühjahr beschlossen. Am Ende präsentierte Pfarrgemeinderat Michael Schöner aus Steinach das neue Logo der Seelsorgeeinheit, dem mit deutlicher Mehrheit zugestimmt wurde. In Pfullendorf wird der Strom teurer Die Bürger Pfullendorfs müssen sich auf höhere Stromkosten einstellen. Wie der Geschäftsführer der Stadtwerke, Jörg-Arne Bias, gegenüber dem SÜDKURIER bestätigte, kommen auf eine vierköpfige Pfullendorfer Familie 70 bis 90 Euro Mehrkosten pro Jahr zu. Wesentlicher Grund der anstehenden Preiserhöhung ist der Anstieg der sogenannten EEG-Umlage von 5,277 auf 6,3 Cent pro Kilowattstunde. Diese Umlage wird jedes Jahr im Oktober von den vier Betreibern der der großen Stromtrassen neu festgesetzt. Diese beziffern die ihnen aus der Energiewende entstehenden Mehrkosten, die sie durch eine Umlage über den Strompreis erheben können. Die Stadtwerke Pfullendorf bilden das letzte Glied in dieser Kette. Der Aufsichtsrat des Energieunternehmens war in seinen Prognosen sogar von einer höheren Umlage ausgegangen, wie Jörg-Arne Bias berichtet. Nun müssten die konkreten zahlen errechnet werden, bevor die Stadtwerke nächste Woche ihre Kunden über die exakte Preiserhöhung informieren könnten. "Wir gehen von einer Anhebung von 1 Cent plus x aus", so Bias, wobei die Zahl eher in der Nähe der 2 Cent liegen werde. Ampel auf Dauerrot: Auf Wartezeit achten Manchmal wird eine Ampel einfach nicht grün. Die Kontaktschleife in der Straße reagiert nicht, oder das Lichtzeichen ist defekt. Was soll man dann tun - bei Rot fahren? Hat ein Betroffener lange genug an einer roten Ampel gewartet und die Kreuzung ist frei, kann er weiterfahren, erklärt der Stuttgarter Rechtsanwalt Ralf Becker in der Zeitschrift "Motorrad". Die Wartezeit müsse aber "angemessen" sein, was von Fall zu Fall unterschiedlich ausgelegt werden könne. Becker rät, mindestens fünf Minuten auszuharren, bevor von einer Funktionsstörung der Ampel auszugehen ist. Wer die Fahrt trotz Rotlichts fortsetzt, müsse sich jedoch im Klaren darüber sein, dass er für einen dadurch verursachten Unfall die volle Schuld trägt. Wer sich weniger als fünf Minuten geduldet, wartet unter Umständen nicht lange genug, warnt Becker und verweist auf einen Beschluss des Oberlandesgerichts Hamm. In dem verhandelten Fall hatte ein Fahrer nach etwa drei Minuten Dauerrot die Ampel ignoriert und musste sich für einen fahrlässigen Rotlichtverstoß verantworten. Die Ampel war nämlich nicht defekt, sondern sprang wenig später auf Grün um. Ein Fahrverbot blieb ihm wegen der besonderen Situation erspart - die Geldstrafe aber nicht. Gemeinderat freut sich über soliden Haushalt Immer wenn es in Gemeinderatssitzungen um den Haushalt geht, hat Bürgermeister Ralph Gerster gut lachen. Das Gemeindesäckl in Herdwangen-Schönach ist gut gefüllt und Schulden kennt die Verwaltung bereits seit 2005 nicht mehr. Auch das Haushaltsjahr 2012 kann in diesem Sinne als voller Erfolg verbucht werden. Dies wurde bei der Vorstellung der Jahresrechnung für 2012 deutlich. Wie Andrea Rothmund erläuterte, sei der Verwaltungshaushalt mit rund 7,6 Millionen Euro über eine Millionen Euro höher ausgefallen als geplant. Auch der Überschuss des Verwaltungshaushaltes liege mit etwa 1,8 Millionen Euro rund eine Millionen Euro über dem Ansatz. Zu verdanken sei der Überschuss vor allem höheren Gewerbesteuereinnahmen und dem Gemeindeanteil an der Einkommenssteuer. Auch der Vermögenshaushalt lag wieder deutlich über den geplanten Werten. Statt der vorgesehenen 1,5 Millionen Euro betrug er im vergangenen Jahr 2,5 Millionen Euro. "Dies liegt im Wesentlichen an der höheren Zuführung aus dem Verwaltungshaushalt", so Rothmund. Da im Haushaltsjahr 2012 weniger Investitionen als geplant getätigt worden sind, ist auch die Rücklagenzuführung höher ausgefallen. Insgesamt konnte die allgemeine Rücklage um rund 2,1 Millionen Euro auf jetzt insgesamt 4,9 Millionen Euro gesteigert werden. Bürgermeister Ralph Gerster bedankte sich bei Rothmund und ihrem Team für die gute Arbeit. "So ein Werk schüttelt man nicht einfach aus dem Ärmel", lobte Gerster mit Blick auf die Jahresrechnung. Er und die Gemeinderäte freuten sich sichtlich über die guten Zahlen. Es mag paradox klingen, doch genau diese guten Zahlen könnten die Bürger bald teuer zu stehen kommen. Durch die gute Finanzlage konnte die Gemeinde in der Vergangenheit auf hohe Hebesätze verzichten. Dadurch wiederum seien aber laut Gerster schon öfters Zuschüsse vom Land gekürzt worden. Für diese Zuschüsse aus diversen Ausgleichsstöcken gibt es Voraussetzungen. Unter anderem müssen die Städte und Gemeinden, die Zuschüsse beantragen, bestimmte Hebesätze vorweisen. "Das Thema Hebesätze müssen wir uns anschauen, da in den kommenden Jahren Investitionen anstehen, für die wir gerne Zuschüsse hätten", kündigte Gerster in diesem Zusammenhang an. Nagold: Hugo Wermter seit 60 Jahren im Chor Mit 60 Jahren als Sänger ist Hubert Wermters Geschichte beim Männergesangverein Cäcilia fast doppelt so lange wie die des Herbsfestes, in dessen Rahmen er feierlich geehrt wurde. Hubert Wermter stand wie gewohnt in den Farben seines Männergesangvereines auf der Bühne. Auch nach 60 Jahren macht ihm das Singen mit dem inzwischen wohl mehr als lieb gewonnenen Chor immer noch großen Spaß. Im Verein war Wermter ebenfalls aktiv, unter anderem 28 Jahre lang als Mitglied des Ausschusses. Für sein Engagement und seine Vereinstreue erhielt er gleich mehrere Auszeichnungen: Jörg Kohr, Pastoralreferent im Auftrag des Cäcilienverbandes Rottenburg-Stuttgart, überreichte ihm - da der Chor auch ein Kirchenchor ist - eine Urkunde des Verbandes und einen von Bischof Gebhard Fürst unterzeichneten Ehrenbrief. Seine Sängerkollegen überreichten ihm die Urkunde des deutschen Chorverbandes sowie einen gravierten Zinnteller. Neben der Ehrung verlief das 31. Herbstfest in gewohnten Bahnen: Mit dem MGV Betra, dem Liederkranz Salzstetten, der Sängerabteilung Baisingen und dem örtlichen Musikverein hatten die Vollmaringer eine bunte Mischung verschiedener Chöre und Gesangsstile geladen, welche die rund 400 Besucher unterhielten. Der MGV Vollmaringen eröffnete mit stimmungsvollen Liedern wie "Im Weinparadies" und "Lustig, ihr Brüder". Ihrem Ehrensänger Hubert Wermter bereiteten sie zur Ehrung noch ein kleines Ständchen - Wolfgang Amadeus Mozarts "Bundeslied". Der Männergesangverein Betra sang ebenfalls klassische Chorlieder wie "Jägerwerben" von Julius Wengert, "Weit, weit weg" von Hubert Goisern sowie das Volkslied "Wann du durchgehst durchs Tal". Der Liederkranz Salzstetten sorgte mit seinem gemischten Chor und seiner Frauengruppe - dem "Impulschor" - für die Frauenquote des Festes. Der gemischte Chor entführte mit der neapolitanischen Volksweise "Santa Lucia" und "Eviva Espana" von Antos Gus in fremde Länder, während der "Impulschor" ebenfalls auf fremde Sprachen zurück griff: "Liberatio" und "Hey Jude" gehörten zu ihrem Programm. Die Sängerabteilung des Baisinger Sportvereins kam mit "Was isch der Schwob?" von Hans Süssmuth und Robert Papperts "Bierlied" wieder zurück in heimische Gefilde, wo der Vollmaringer Musikverein den krönenden musikalischen Abschluss bot. Für die Kinder gab es ein kleines Nebenprogramm - "Oma Hanne" alias Hannelore Stollsteimer führte ein Kasperltheater auf und las ein paar Geschichten vor, welche die Kinder den Mittag über gut beschäftigten. Kinderträume werden wahr Die Kindergärten und Kindertagesstätten im Zollernalbkreis bekommen in diesen Tagen Post. Der Schwarzwälder Bote möchte in Zusammenarbeit mit Bauhaus und der Sparkasse Zollernalb die Einrichtungen bei der Realisierung ihrer Bau- und Verschönerungswünsche unterstützen. Braucht der Kindergarten einen neuen Sandkasten? Mitmachen bei der Aktion können alle Kindergärten, Kindertagesstätten und Kinderkrippen aus dem gesamten Zollernalbkreis. Wenn Sie einen Bau- oder Verschönerungswunsch für Ihre Einrichtung haben, können Sie sich mit diesem beim Schwarzwälder Boten bewerben. Seien Sie mit Ihren Kindern kreativ und überraschen Sie die Jury der Aktion Kindergarten-Baustelle. Eine Jury, bestehend aus Vertretern von Schwarzwälder Bote, Bauhaus und Sparkasse Zollernalb, wählt aus allen Einsendungen drei Wünsche aus. Welche Voraussetzungen zur Teilnahme gibt es? Der Wunsch sollte mit Baumaterial im Wert von maximal 2000 Euro und an einem (Aktions-) Tag zu realisieren sein. Darüber hinaus muss der Gewinner selbst für viele fleißige Bauhelfer sorgen. Was hat es mit dem Aktionstag und den Helfern auf sich? Bauhaus stellt mit Unterstützung der Sparkasse Zollernalb das Material zur Verfügung. Es wird am vereinbarten Tag in den Kindergarten geliefert und soll dann direkt von den Helfern verarbeitet werden. Helfer können Eltern, Großeltern, Freunde, Vereine und natürlich die Erzieher und Kinder selbst sein. Kenianische Presse empört über kontroverses Mediengesetz „Wir befinden uns in einer beängstigenden Lage und man darf sich fragen: Was hält das Parlament davon ab, morgen einfach die richterliche Unabhängigkeit abzuschaffen?“, war in der Zeitung zu lesen, die den Gesetzesentwurf für nicht verfassungsgemäß hält. „Das Gesetz ist drakonisch und sehr strafend und wir lehnen es ab“, sagte Cyrus Kamau, Geschäftsführer der Capital Group, zu der auch CapitalFM gehört, eine der angesehensten unabhängigen Radiostationen und Nachrichten-Websites Kenias. Er sagte, das neue Medientribunal „wird immer voreingenommen sein, denn es ist ein verlängerter Arm der Regierung“, und Einschränkungen bei Inhalten und Werbung würden Kenias Stellung in der globalen Wirtschaft beschädigen. „Ich hoffe, der Präsident hört auf uns und wir appellieren an ihn, diesen Gesetzesentwurf abzulehnen und an das Parlament zurückzuschicken“, sagte er. Laut der Zeitung The Star nehme die Regierung durch das neue Gesetz „die Medien effektiv in einen Würgegriff“. Dagegen schreibt The Standard, Demokratie und Redefreiheit in Kenia hätten „einen schweren Schlag“ erlitten, und betitelte den Entwurf als „drakonisch“. Die Verabschiedung des Gesetzes gehört zu einer Reihe von Maßnahmen, mit denen die nationale Sicherheit im Nachgang zu den Angriffen durch bewaffnete Islamisten auf das Westgate-Einkaufszentrum im September gestärkt werden soll. Die kenianischen Medien zogen den Zorn der Behörden auf sich, weil sie Aufnahmen von Sicherheitskameras veröffentlichten, auf denen zu sehen war, wie die an den Tatort entsandten Einheiten angeblich das luxuriöse Einkaufszentrum ausraubten. Polizeichef David Kimaiyo reagierte darauf mit der Einbestellung zweier Journalisten und eines führenden Medienvertreters zu Verhören, auch wenn die Vorladung nach einem Aufschrei der Medien zurückgezogen wurde. Nach dem neuen Gesetz können Medienhäuser mit einer Strafe von bis zu 20 Millionen kenianischen Schillingen belegt werden und einzelne Journalisten mit bis zu einer Million sowie dem weiteren Risiko, ihre berufliche Anerkennung zu verlieren oder von einer offiziellen Presseakkreditierung ausgeschlossen zu werden. Das Tribunal hat außerdem das Recht, den Besitz der Betroffenen zu beschlagnahmen, wenn eine Strafe nicht bezahlt wird. Laut Daily Nation kann „schon eine einzige Strafe die meisten Radiosender in den Bankrott drängen“. Darüber hinaus ist die Zeitung der Ansicht, diese Maßnahmen könnten eine vernichtende Auswirkung auf die ihrer Beschreibung nach „lebhafte Blogosphäre“ Kenias haben. Wenn sie die Medien zum Schweigen brächten, könnten Politiker ungestraft tun, was immer sie wollen. „Keiner wird es jemals erfahren“, schrieb Mutuma Mathiu, Journalist bei der Nation, der die kenianischen Medien als einen entscheidenden Kontrollfaktor im öffentlichen Leben bezeichnet. „Überlässt man Politiker sich selbst, führen sie das Land in den Bankrott und uns zurück in die Zeit der Jäger und Sammler“, kommentierte er. Die kenianischen Gesetzgeber zogen schon in der Vergangenheit den öffentlichen Ärger auf sich. Im Mai stimmten sie ab, die von der nationalen Vergütungskommission angeordneten Kürzungen rückgängig zu machen und setzten ihre deftigen Gehälter von etwa 532.000 Schilling steuerfrei pro Monat wieder in Kraft – sie zählen zu den weltweit höchsten. Bad-Dürrheim: Ein Traum wird wahr für den FC An der Bedeutung für die Stadt und den Fußballclub büßte die offizielle Einweihungsfeier für den Kunstrasensportplatz trotz der kalten Witterung und dem Regen nichts ein. Eine angenehmere Feierstunde hatten sich am vergangenen Samstag wohl alle gewünscht, doch Petrus wollte dabei nicht mitspielen. So hatten all jene das Nachsehen, die ohne Regenschirm kamen oder solch einen aus irgend einem Grund nicht halten konnten. Das ging den Musikern, die den Festakt umrahmten, genauso wie so manchem Redner. Nass wurde deshalb auch der FC-Vorsitzende Albrecht Schlenker, der von der Erfüllung eines Traums sprach. Sein Dank galt allen voran Bürgermeister Walter Klumpp, der sich für die Umsetzung des Projektes stark engagiert habe, dem Gemeinderat, den beteiligten Unternehmen und Vereinsmitgliedern, die sich einbrachten. Hier ganz besonders Lothar Held, Paul Weizenegger, Heiner Gail und Peter Graf. Die rüstigen Rentner verlegten 400 Quadratmeter Pflastersteine für die neuen Wege. Dieses bemerkenswerte ehrenamtliche Engagement würdigte auch der Landtagsabgeordnete Karl Rombach. Weitere Grußworte sprachen für den städtischen Sportausschuss Hubert Baier, der Bezirksvorsitzende des südbadischen Fußballverbandes, Kuno Kayan, und Friedrich Knorr vom Planungsbüro, der eine Spende für die Jugendabteilung des Clubs ankündigte. Bürgermeister Klumpp brachte in Erinnerung, dass immer wiederkehrende witterungsbedingte Einflüsse im Frühjahr und Herbst dem ursprünglichen Rasenplatz so zusetzten, dass er nicht bespielt werden konnte. Bereits vor 15 Jahren gab es die ersten Überlegungen zur Lösung des Problems, als an den Bau eines dritten Platzes beim Gelände des Fußballclubs oder bei der Realschule am Salinensee gedacht wurde. Beides wurde wieder verworfen. Vor sechs Jahren kamen Gedanken zur Anlegung eines Kunstrasensportplatzes auf, was allgemein als die ultimative Lösung angesehen wurde. Konkrete Planungen wurden vor zwei Jahren aufgenommen, als der FC die Schabelstube in Erbpacht übernahm, eine Kostenbeteiligung von 100 000 Euro für den Bau des Platzes zusagte und das Land Fördermittel von 104 000 Euro billigte. Der Gemeinderat beschloss im Oktober 2012 die Übernahme der restlichen 356 000 Euro an den Gesamtkosten von 560 000 Euro, fasste Klumpp zusammen. Der Baubeginn des 68 mal 108 Meter großen Kunstrasenplatzes erfolgte am 4. Juni. Während der über drei Monate andauernden Bauphase wurden 3000 Kubikmeter Erde abgetragen, wovon die Hälfte für die Anlegung einer Dirt-Bike-Strecke verwendet wurde. Union und SPD haben ihre Koalitionsverhandlungen mit den Themen Inneres und Justiz fortgesetzt. Dazu kam die zuständige Arbeitsgruppe am Morgen in Berlin zusammen. Unter anderem geht es um direkte Demokratie, Abgeordnetenbestechung und die Bundespolizei. Am Vormittag wollte auch die Arbeitsgruppe Migration und Integration ihre Beratungen fortsetzen. Dabei dürfte es unter anderem um das Thema doppelte Staatsbürgerschaft gehen, bei dem beide Seiten gegensätzliche Vorstellungen haben. Die SPD möchte den Zwang für in Deutschland geborene Zuwandererkinder, sich für eine zu entscheiden, beenden - die Union lehnt einen Doppelpass ab. Beim Thema Verkehr, das an diesem Freitag nicht auf der Tagungsordnung steht, untermauerte die SPD ihr Nein zu einer von der CSU geforderten Pkw-Maut. Eine Vignette sei eine "Flatrate fürs Vielfahren und damit ökologisch kontraproduktiv", erklärte der SPD-Verhandlungsführer für das Thema Verkehr, Florian Pronold, in einem Schreiben an seine Fraktion. Es drohten Ausweichverkehre auf Landstraßen, die schon jetzt Unfallschwerpunkte seien. Die Einführung einer Maut für alle Pkw wäre aus Sicht Pronolds zudem nur ein erster Schritt. "Es besteht die Gefahr, dass zu einem späteren Zeitpunkt die Kompensation für Deutsche gestrichen wird", sagte er. Dieter Thomas Kuhn in Stuttgart: Die singende Föhnwelle auf der Freilichtbühne Stuttgart - "Wann wird's mal wieder richtig Sommer?" war eigentlich nicht die Frage am Freitagabend auf der Freilichtbühne Killesberg. Es war wahrlich eine tropische Nacht in Stuttgart. Die besten Voraussetzungen also für Schlagerstar Dieter Thomas Kuhn und seine Band. Klicken Sie sich durch die Bildergalerie zum Aufrtitt der "singenden Föhnwelle". Autofahrer bei Unfall schwer verletzt Bei einem Unfall am Donnerstagabend ist ein 37-jähriger Pkw-Fahrer aus Aachen schwer verletzt worden. Nach Angaben der Polizei war eine 41-Jährige aus Müsch gegen 21.15 Uhr mit ihrem Wagen auf dem Kempener Außenring in Richtung Grefrath unterwegs. Als die nach links auf die St. Töniser Straße abbiegen wollte, übersah sie den entgegenkommenden Wagen des 37-Jährigen. Die Fahrzauge kollidierten. Der Aachener erlitt schwere Verletzungen und musste zur Behandlung ins Krankenhaus gebracht werden. Konstanz: Sperrung nach Unfall am Schänzlekreisel Zu dem Unfall war es laut Polizei gekommen, als ein 51 Jahre alter Fahrer eines Schweizer Seat Ibizas am Donnerstagabend, gegen 20 Uhr, auf der linken Fahrspur der zweispurigen Reichenaustraße stadtauswärts fuhr. Kurz vor dem Kreisverkehr am Schänzle bemerkte er, dass er sich auf der Linksabbiegespur in Richtung Stromeyersdorfstraße befand und wechselte auf die rechte Fahrspur. Hierbei kam es zum Zusammenstoß mit dem dort fahrenden BMW eines 23-jährigen Konstanzers. Ebenfalls beschädigt wurde der hinter dem BMW fahrende VW Passat eines 19-Jährigen. Insgesamt entstand rund 15000 Sachschaden, teilte die Polizei mit. Die Fahrbahn musste während der Unfallaufnahme gesperrt werden, hieß es weiter. Flughafen Wien schafft Passagier-Aufrufe ab Herr Max Maier, bitte kommen Sie zu Gate 24. Durchsagen wie diese wird es künftig am Flughafen Wien-Schwechat nicht mehr geben. Ein Großteil der Lautsprecherdurchsagen fällt damit weg - der Lärmpegel soll so deutlich gesenkt werden. Eine entspanntere Atmosphäre zu schaffen, ist das Ziel dieser Neuerung. Wie Airport-Sprecher Peter Kleemann gegenüber Radio Wien bekannt gab, folgt der Flughafen Wien mit der Einstellung von Durchsagen, die einzelne Personen betreffen, einem internationalen Trend. So verzichten bereits unter anderem die Flughäfen in Kopenhagen, Frankfurt oder Dubai auf die lärmenden Aufrufe. Durch den Wegfall dieser Durchsagen - im Durchschnitt ertönen an einem Tag rund 200 persönliche Aufrufe durch die Lautsprecher - soll es künftig ruhiger am Flughafen zugehen. "Es hat sich auch in der Erfahrung gezeigt, dass diese individuellen Durchsagen relativ wenig wahrgenommen wurden, gleichzeitig aber auch alle anderen Informationen zu geänderten Flugsteigen oder Abflugzeiten hier ein bisschen untergehen", so Kleemann im Gespräch mit dem Radiosender. Highlander-Games auf dem Kaltenhof Neben dem Bremswagenziehen mit Traktoren gibt es beim landwirtschaftlichen Herbstfest auf dem Kaltenhof vom 6. bis 8. September noch einen zweiten Wettkampf. Am Samstag, 7. September, starten um 13.30 Uhr die Highlander-Games. Die haben zwar eine schottische Tradition, sind aber auf dem Kaltenhof schwäbisch angehaucht. Teams und Einzelkämpfer messen sich dabei in den Disziplinen Baumstammwerfen, Hufeisenwerfen und Wassereimertragen. Viereinhalb Meter ist der Baumstamm lang und 25 bis 30 Kilogramm schwer. "Es kommt nicht auf die Weite an", erklärt Organisator Peter Saile. Der Stamm muss senkrecht abgeworfen werden, soll sich einmal überschlagen und dann gerade zum Liegen kommen. Das wird mit den meisten Punkten bewertet. Beim Hufeisenwerfen kommt es auf die Zielgenauigkeit an. Aus acht Metern Entfernung wird auf einen Pflock geworfen. Geschicklichkeit und Kraft müssen die Teilnehmer beim Wassereimertragen über 50 Meter unter Beweis stellen. Zeit und Wassermenge in einem Bottich werden am Ende gemessen. Aus jedem "Clan" beziehungsweise Team dürfen dann zwei am Einzelwettbewerb teilnehmen. Die Gewinner des Team- und Einzelwettkampfs erhalten Preise. Trainiert werden kann schon ab 10 Uhr. Erwünscht ist eine passende Kleidung, beispielsweise können die Wettkämpfer im Schottenrock antreten. Doch auch schwäbische Tracht ist erlaubt. Fürs "Outfit" vergibt die Jury noch ein paar Bonuspunkte. Anmelden kann man sich bis eine Stunde vor Wettkampfbeginn. Mit den schottisch-schwäbischen Highlander-Games und dem Traktor-Pulling, das eine halbe Stunde früher beginnt, ist auf dem Festgelände am Samstag schon mal viel Action angesagt. Abends kommen die Blasmusikfreunde auf ihre Kosten. Um 19 Uhr gestaltet die biraböhmische Blasmusik aus Schömberg den großen Unterhaltungsabend. Die Kapelle spielt flotte Polkas und Märsche. Zu ihrem Repertoire gehören aber auch gefühlvolle Walzer und ein satter Big-Band-Sound. Mit dabei sein wird der als singender Wirt und Schwarzwurstbaron bekannte Heinz Koch aus Weilen unter den Rinnen. In Dornhan ist er beim Weihnachtsmarkt und bei der Narrenzunft bereits aufgetreten. Am Sonntag unterhält der Musikverein Leinstetten zum Frühschoppen, ab 14 Uhr ist die Bauernkapelle Böffingen zu Gast, und die "Oldies" lassen dann das Fest ausklingen. Auftakt ist bereits am Freitag die Stoppelackerparty mit DJ Ralf. Weitere Programmpunkte sind am Samstag und Sonntag unter anderem das Oldtimer- und Schleppertreffen, Ausstellungen von Firmen zum Thema Land- und Forstwirtschaft. Weitere Attraktionen am Sonntag sind das Maislabyrinth, der Handwerkermarkt und das Schafscheren. Speziell für Kinder gibt es einen Streichelzoo, Strohhüpfburg, Traktorfahren (unter Anleitung) und Traktor-Surfing. Veranstalter sind der Förderverein Mehrzweckhalle, der Skiclub und die Traktorfreunde "Zündkäpsele". Milch- und Ei-Alternativen im Überblick Vegane Ernährung erfordert pflanzliche Alternativen zu Eiern, Milch und Milchprodukten. Pürierter Tofu mit Pflanzensahne ist beispielsweise ein Quarkersatz. Weitere nennt der Vegetarierbund zum Weltvegantag am 1. November. Der Vegetarierbund Deutschland schlägt anlässlich des Weltvegantags am 1. November eine Reihe von veganen Alternativen vor: Reine Pflanzenmargarine sei eine gute Alternative zu Butter, Joghurt lasse durch Sojajoghurt ersetzen. Statt Milch könne Soja-, Hafer-, Mandel- oder Reismilch zum Einsatz kommen. Aufschlagbare Pflanzensahne ersetze herkömmliche Schlagsahne. Auch zu Eiern gibt es pflanzliche Alternativen. Eine halbe zerdrückte, reife Banane zum Beispiel kann ein Ei als Bindemittel in einem Kuchen ersetzen. Auch 50 Gramm Apfelmus oder ein Esslöffel gemahlene Leinsamen plus drei Esslöffel Wasser eignen sich dafür. Locker werden Teige statt mit Ei zum Beispiel mit einer Mischung aus einem Teelöffel Backpulver, einem Esslöffel Speisestärke und drei Esslöffeln Mineralwasser. Aber auch 50 Gramm Sojajoghurt oder Seidentofu können diesen Zweck erfüllen. Nach Angaben des Vebu ernähren sich derzeit in Deutschland rund 800 000 Menschen vegan, also rein pflanzlich. Schlaflos in New York Auf dem Weg zu ihren Gastfamilien in Weymouth, Massachusetts, lernten die Schüler des Schwarzwald-Gymnasiums die amerikanische Großstadt New York kennen. Nach acht Stunden Flug ging es gleich los zur Brooklyn Bridge, über die zu Fuß das Herz der Stadt, Manhattan, erreicht wurde. Hier bot sich bereits ein faszinierender Blick auf die weltbekannte Skyline, welche im Abendlicht einen besonderen Reiz ausmacht. Durch die Zeitverschiebung waren die Schüler fast 24 Stunden auf den Beinen, aber getreu dem Motto "Die Stadt schläft nicht" wurde der Tag am Times Square beschlossen. Trotz Shutdown konnte am zweiten Tag die Freiheitsstatue mit einer Fähre erreicht und zu Fuß erklommen werden. Anschließend ging es über das Finanzzentrum um die Wall Street zur Gedenkstätte des 11. Septembers. Am dritten Tag konnten die Schüler von der 373 Meter hoch gelegenen Aussichtsplattform des Empire-State-Buildings einen Überblick über die faszinierend große Stadt gewinnen und dabei die Aussicht genießen. Danach ging es durch das hektische Treiben der New Yorker Straßen über das Rockefeller Center zum Central Park, der eine ideale Gelegenheit zum kurzen Verweilen in der Herbstsonne bot. Nach einem kurzen Flug von New York nach Boston sind die Schüler inzwischen in ihren Gastfamilien angekommen und erleben an der Weymouth High School den Schulalltag. Auch in diesem Jahr wird am Namenstag des Heiligen Hubertus in der Pfarrkirche St. Marien an der Hülsbergstraße eine Hubertusmesse zelebriert. St. Hubertus war der Sage nach ein recht rücksichtsloser Jäger, der durch eine Vision bekehrt und später zum Bischof von Lüttich ernannt wurde. Die Jagdhornbläsergruppe der Jagdreiter Westfalen unter der Leitung von Brigitte Kluth musiziert auf Parforcehörnern (Naturhörner in der Stimmung Es) nach alten, ursprünglich französischen Melodien. Die Bläser tragen Reitkleidung, weil sie vornehmlich Reiter, Pferde und Hundemeute auf Schleppjagden musikalisch begleiten. Die feierliche Messe findet statt am Sonntag, 3. November, um 11.30 Uhr. Der neu gestaltete Opschlag glänzt mit einem neuen Cafe. Eins, das zum Verweilen und Wiederkommen einlädt. Eins, das den Namen zum Programm machen möchte. Als Déjà Vu bezeichnet man laut Lexikon ein psychologisches Phänomen, das sich in dem Gefühl äußert, eine neue Situation schon einmal erlebt oder gesehen zu haben. Im Falle des Besuchs des gleichnamigen Cafés am Opschlag in der Kreisstadt Kleve in Sichtweite zur Hochschule Rhein-Waal muss es nicht beim reinen Déjà Vu-Gefühl bleiben. Schließlich hat das Café mit dem schönen Namen genau das zum Ziel: einen tatsächlichen Aufenthalt nicht nur gedanklich, sondern handfest immer wiederkehrend erlebbar zu machen. Weil's eben Spaß macht und einfach schön ist. Ein Blick ins Innenleben am Opschlag 8 gibt dem Betrachter auf Anhieb ein gutes Gefühl. Das hochmoderne, aber nicht kühle Café-Ambiente sieht wie ein Ort zum Wohlfühlen aus. Hier verwöhnt das Team mit den Gründern Mirjam van der Stelt und Daniel Büttner an der Spitze den Gast mit verschiedensten Kaffee- oder Cocktail-Varianten. Dazu gibt's köstlichen Kuchen oder individuell belegte frische Baguettes. Die Inhaber, beide 33 Jahre alt, haben sich bereits vor der Eröffnung des schmucken Cafés am Opschlag als Gastronomen einen Namen gemacht: In Kranenburg führten sie das "Art Lounge". Vom Umzug nach Kleve an den Opschlag erhoffen sich die sympathischen Café-Liebhaber mehr Publikum. Nicht zuletzt auch durch die Hochschule. "Wobei wir keine bestimmte Zielgruppe haben", betont Daniel Büttner. Vielmehr möchte die beiden hier junge Studenten genauso ansprechen wie Senioren und alle Altersklassen dazwischen. Apropos Café-Liebhaber. Das sympathische Inhaberpaar steht hinter dem Kaffee-Genuss. Genießt das duftende heiße Gebräu in den verschiedensten Variationen selbst. Expressofan Daniel Büttner ist eher der Expresso-Fan und Mirjam van der Stelt die Cappuccino-Trinkerin. "Dazu ein Baguette - das ist mein Ding", verrät sie der NRZ. Zwei Events gab's auch schon im hellen Café. Besser gesagt eins. Denn das Hafenfest fand ja eher draußen statt - das Café Déjà Vu profitierte nicht davon. Aber es gab auch den Ringelnatzabend. "Schön, erfolgreich und witzig", fanden die beiden 33-Jährigen. Aber eben nicht Jedermanns Sache. Vielleicht ist Daniel Büttner auch deswegen kein ausgesprochener Fan von Event-Abenden: "Man kann's ja nun mal nicht allen Recht machen". Und mit einem Event spreche ich immer nur die an, die sich auch für das spezielle Event interessieren. Deswegen werden Events eher die Ausnahme bei uns sein. "Wir möchten den ganz normalen Betrieb so wenig wie möglich stören". Soll heißen: Déjà Vu steht auch für Verlässlichkeit. In Bezug auf die Qualität der Produkte, die hier geboten werden, ebenso, wie auf das Team und die schöne Umgebung am Opschlag in Kleve. Der Straße, die sich mehr und mehr zu einer Gastronomiemeile entwickelt. Zur Freude vieler Klever, der Gäste aus nah und fern und der Studenten, die die Gastromeile und damit auch das Café Déjà Vu für sich entdecken. Anke Gellert-Helpenstein Ein Tag des Dankeschöns beim MGV in Dinker Es war das 165. Stiftungsfest zu dem der MGV "Friedrich Wilhelm Dinker" in diesem Jahr eingeladen hatte und 52 Gäste, aktive Sänger und ihre Ehefrauen, waren gerne gekommen. Im Vereinslokal der Gaststätte "Witteborg" in Dinker genossen alle das harmonische Miteinander ganz im Zeichen der Musik. Traditionell ist das Stiftungsfest auch immer die passende Festivität, um Ehrungen vorzunehmen. Über die besondere Auszeichnung "Sänger des Jahres" freute sich diesmal Schriftführer Rolf Wagener. "Du hast nicht nur viel für uns aufgeschrieben, sondern hast auch so manche Runde für uns gedreht, dafür unser herzliches Dankeschön", so der Vorsitzende des Chores Erich Schlotmann. Die Auszeichnungen für die Teilnahme an den Auftritten und Chorproben mittels Aktivitätssträußchen gingen in diesem Jahr an den Chorleiter Dieter Schulze mit 44 Teilnahmen, gefolgt vom Ehrenvorsitzenden Horst Pier-Ribbert, dem Vorsitzenden selbst, und dem letztjährigen "Sänger des Jahres" Friedrich Winkler mit jeweils 42 Teilnahmen. Platz fünf belegte Notenwart Artur Brückner. Ein besonders Dankeschön richtete der Vorstand an das Team von Vereinswirtin Ange Pier-Ribbert, das einmal mehr ein Menü der Extraklasse gezaubert hatte und an Gerda Pier-Ribbert für die Tischdekoration. Der MGV "Friedrich-Wilhelm" trifft sich zu seinen regelmäßigen Chorproben immer dienstags um 19.45 Uhr im Vereinslokal. "Neue sangesfreudige Stimmen sind uns jederzeit herzlich willkommen", so Schlotmann. UN verkündet neue Ziele bei der Armutsbekämpfung Die Vereinten Nationen beginnen ab sofort mit der Ausarbeitung einer Reihe neuer Ziele, mit denen die vor zwölf Jahren verkündeten Millenniumsentwicklungsziele zur Armutsbekämpfung ersetzt werden sollen. Im Vorfeld des UN-Gipfels für nachhaltige Entwicklung, der am Abend in Rio de Janeiro begann, spielten australische Diplomaten eine Schlüsselrolle beim Vorstoß für „nachhaltige Entwicklungsziele“, die die 2015 auslaufenden Millenniumsziele ersetzen sollen. Sie wurden in den abschließenden Entwurf des Dokuments aufgenommen, der von weltpolitischen Führern, einschließlich Frau Gillard, beim Gipfel verabschiedet werden wird. UN-Generalsekretär Ban Ki-moon erklärte am Abend auf dem Gipfel, der Zeitpunkt sei gekommen, „über die nationalen Interessen hinauszudenken“. „Ich freue mich, dass sich die Mitgliedsstaaten darauf verständigt haben, einen Prozess in Angriff zu nehmen, mit dem universelle, nachhaltige Entwicklungsziele vereinbart werden sollen“, sagte er. „Diese Ziele werden auf unseren Fortschritten aus den Millenniumsentwicklungszielen aufbauen und einen integralen Bestandteil des Rahmenwerks für die Entwicklung nach 2015 bilden. Ich werde keine Mühen scheuen, dieses mir von den Mitgliedsstaaten erteilte Mandat umzusetzen, um unsere Vision der nachhaltigen Entwicklungsziele zu verwirklichen, die auf dem Erfolg der Millenniumsziele aufbauen.“ Auch wenn die SG Achim/Baden seit vier Spieltagen ohne Sieg ist, herrscht beim Handball-Oberligisten weiterhin gute Stimmung. Daran lässt Trainer Tomasz Malmon überhaupt keine Zweifel. Alle sind weiterhin voll motiviert bei der Sache. Dennoch hoffe ich, dass wir endlich auch mal wieder gewinnen. "Denn ich weiß ja schon gar nicht mehr, wie so ein Sieg schmeckt", erwartet Malmon ein Erfolgserlebnis von seiner Mannschaft beim VfL Fredenbeck II. Auch wenn die Drittliga-Reserve aus Fredenbeck aktuell noch keine Bäume ausgerissen hat, hebt Malmon im Vorfeld warnend den Zeigefinger. Viele Spieler habe ich selber noch in der A-Jugend trainiert. Von daher werden sie gegen ihren Ex-Coach sicher ganz besonders motiviert sein. "Zudem gilt es abzuwarten, ob dann noch Verstärkung aus der Ersten dabei ist", verdeutlicht der SG-Coach. Um endlich wieder in die Erfolgsspur zurückzukehren, muss sich das Malmon-Team im Vergleich zu den vergangenen Auftritten auf jeden Fall steigern. Vor allen Dingen in der Deckungsarbeit und beim Umschaltspiel haperte es zuletzt doch gewaltig. Auch die Chancenverwertung muss definitiv besser werden. Daher hoffe ich, dass meine Spieler während der kurzen Pause endlich den Kopf frei bekommen haben. Sicherheitsbedenken in Mosambik wachsen angesichts von Zusammenstößen zwischen einflussreichen Persönlichkeiten Tausende Menschen versammelten sich im Zentrum Maputos unter den wachsamen Augen der Statue von Samora Machel, dem Staatsgründer und ersten Präsidenten Mosambiks, um bei einer seltenen öffentlichen Demonstration Friedensrufe anzustimmen. „Wir wollen wieder Frieden, wir wollen Stabilität“, sagte Vanessa de Sousa, Geschäftsführerin eines Investment-Unternehmens. Aus Angst um die Zukunft des Landes hat sie ihre Geschäftskleidung gegen ein T-Shirt mit der Aufschrift „Wir fordern Sicherheit“ auf Portugiesisch eingetauscht und sich am Donnerstag der Menge auf dem Unabhängigkeitsplatz der Hauptstadt angeschlossen. Seit zwei Wochen gibt es beinahe täglich Berichte über Zusammenstöße zwischen Regierungskräften und Renamo, die zu den schlimmsten Gefechten seit dem Friedensabkommen vor über 20 Jahren zählen. Renamo war einstmals eine berüchtigte Rebellenbewegung, die anfänglich vom von Weißen regierten Rhodesien und später der Apartheitsregierung Südafrikas unterstützt wurde im Bemühen, die unabhängige Regierung des Landes zu destabilisieren. Nach dem Friedensvertrag von 1992 wurde sie zu einer Oppositionspartei. Analysten halten es für unwahrscheinlich, dass das Land wieder in einen ausgewachsenen Konflikt zurückfalle, doch haben die jüngsten Ereignisse ausländische Investoren und Einheimische beunruhigt. Für die schnell wachsende Wirtschaft steht viel auf dem Spiel, denn die Entdeckung riesiger Gasvorkommen vor der Küste und Kohlelager im Nordwesten könnte in den nächsten Jahren Investitionen von über 50 Milliarden US-Dollar von Firmen wie Rio Tinto, Vale aus Brasilien, Eni aus Italien und Anadarko aus den USA ins Land bringen. Die regierende Frelimo-Partei, seit 1975 die dominierende Kraft, und Renamo geben sich gegenseitig die Schuld für die Spannungen. Renamo behauptet, die Regierung habe die jüngsten Zusammenstöße provoziert, indem sie am 17. Oktober ihre Mitglieder in der Provinz Sofala, einer traditionellen Hochburg Renamos, angegriffen hätte. Die Übergriffe auf die früheren Rebellen eskalierten, als Regierungstruppen Renamo-Stützpunkte attackierten und versuchten, Afonso Dhlakama zu töten, den Anführer der Gruppe, erklärte Renamos Sprecher gegenüber der Financial Times. Die Regierung gibt Renamo die Schuld für die Zusammenstöße und beschuldigt die Organisation, Soldaten angegriffen zu haben. Präsident Armando Guebuza hat versucht, Bedenken über eine Instabilität herunterzuspielen. Gegenüber AFP, der französischen Nachrichtenagentur, sagte er am Mittwoch, dass Dhlakama sich als „Verlierer“ betrachte, der „all seine noch verbleibenden Kräfte einsetzen will, um zu beweisen, dass er der Regierung seine Entscheidungen aufzwingen kann“. Sowohl Frelimo als auch Renamo betonen, dass sie einen Krieg vermeiden möchten. Doch die Bedenken haben zugenommen, seit Mazanga mit den Worten zitiert wurde, Renamo gebe das Friedensabkommen von 1992 auf. Gegenüber der FT erklärte er, damit habe er gemeint, dass Frelimo die Vereinbarung nicht mehr respektiere. „Unsere Vision ist es, wieder Verhandlungen aufzunehmen und zwar ernsthaft“, sagte Mazanga. Frühere Gespräche zwischen den Parteien haben nur wenig zur Beilegung der Spannungen beigetragen, die durch eine Reihe von Zusammenstößen in diesem Jahr befeuert wurden. „Wir haben hier zwei erwachsene Männer (Guebuza und Dhlakama), die die Köpfe zusammenstoßen“, meint Joseph Hanlon, Dozent an der Open University und Mosambik-Experte. Keiner von ihnen ist gut im Verhandeln und keiner ist bereit, die nötigen Zugeständnisse zu machen. Renamo, die auf Wahlreformen drängt, hat bereits erklärt, sie werde die Kommunalwahlen im November boykottieren. Präsidentschafts- und Parlamentswahlen sind für nächstes Jahr geplant. Einige Kommentatoren haben den Einsatz von Gewalt als den Versuch einer kränkelnden Bewegung interpretiert, Zugeständnisse und finanzielle Vergünstigungen von der Regierung zu erwirken. Renamos Wahlerfolge schrumpfen seit 1992, während eine neuere Partei, die von einem früheren Renamo-Mitglied gegründete Movimento Democrático de Moçambique (MDM), sich vermutlich bei den Wahlen verbessern wird. Mazanga behauptet, dass Guebuza – dessen Rücktritt ansteht, wenn seine zweite Amtszeit im nächsten Jahr endet – die Demokratie des Landes zerstören wolle. „Er will keine Mehrparteien-Demokratie, er will keine transparenten Wahlen, er will keinen Frieden, weil er das Präsidentenamt nicht aufgeben will“, so Mazanga. Es ist unklar, über welche Kapazitäten Renamo verfügt, doch sie hat Unruhe stiftende Angriffe auf Polizeistationen und Fahrzeuge auf einer wichtigen Nord-Süd-Verbindungen unternommen. Die meisten Gefechte fanden in der Provinz Sofala statt, die einige Hundert Kilometer nördlich von Maputo liegt, in der sich aber Beira befindet, der Hafen, den Bergbaufirmen wie Rio Tinto und Vale zum Export von Kohle nutzen. Im Juni unterbrach Rio einen Monat lang die Nutzung der Eisenbahn, nachdem Renamo einen Angriff auf die Strecke angekündigt hatte. Mazanga antwortete zurückhaltend auf die Frage, ob Renamo diese Drohung wiederholen werde. Renamo wollte „die internationale Gemeinschaft warnen, dass die Dinge in Mosambik nicht gut stehen“, sagte Mazanga. Die Instabilität habe die Frustration über die Regierung noch gesteigert, sagt Fernando Lima, Leiter von Mediacoop, einem unabhängigen Medienunternehmen, denn viele Menschen sorgten sich bereits wegen der Korruption, den schleppenden Fortschritten bei der Entwicklung und einer kürzlichen Entführungswelle. „Die Menschen denken, dass die Regierung und der Präsident für die Zukunft des Landes verantwortlich sind und er derjenige sein sollte, der Lösungen für die Probleme findet“, erklärt er. Omar Sultane, ein Demonstrant, sagte, die Menschen wollten einfach nur Stabilität. „Keinen interessieren Renamo und Frelimo, sie wollen einfach nur wieder Frieden und benutzbare Straßen“, erklärte er. Kinder sollten Mythen und Legenden als „Vorbilder für das Leben“ beigebracht bekommen, meint ein Autor. Die Geschichten von Thor zeigten, dass „brutale Kraft keine Chance hat gegen clevere Tricks“, und die Artus-Legende demonstriere, wie wichtig es sei, einen Traum zu haben. Viele der Mythen seien allerdings „bei weitem zu wild, zu anstößig und in manchen Fällen zu schmutzig, um an Schulen gelehrt zu werden“, weshalb Crossley-Holland für eine „sorgfältige Auswahl“ altersgerechter Werke plädierte. „Ich finde es wundervoll, dass in Amerika Mythen und Folklore bereits Teil der Bildung sind“, sagte er. Ich habe das schon seit zwanzig Jahren als Plan vorgeschlagen. Er fügte hinzu, bei Autoren und Lehrern, die „übermäßig didaktisch“ seien, würden Kinder „komplett abschalten“, denn in unterhaltsamen Geschichten würden die Botschaften „unterschwellig“ vermittelt. Crossley-Holland, der Beowulf aus dem Angelsächsischen übersetzt hat und Autor des Penguin Book of Norse Myths und der British Folk Tales ist, erklärte: „Man kann bestimmte Absichten verfolgen, aber man sollte sie möglichst im Hintergrund halten.“ Der vielleicht größte Unterschied zwischen einem erwachsenen Autor, der für Erwachsene schreibt, und einem Autor, der für Kinder schreibt, liegt in der Notwendigkeit, Hoffnung zu vermitteln. Nicht alles muss vereinfacht werden oder zum Happy End führen, aber es gibt einen immanenten Sinn für Gut und Böse. Dieser muss unterschwellig dargestellt sein, durch die Geschichte offenbart werden und nicht erklärt. Das ist die alte Geschichte vom Zeigen statt Erzählen. Hansjakob zieht noch einmal in Freihof Vor 100 Jahren hat Heinrich Hansjakob seinen Altersruhesitz in Haslach bezogen, am Sonntag wurden seine letzten Jahre im "Freihof" lebendig. Die vielen Zuschauer waren vom äußerst kurzweiligen Szenenspiel begeistert. Von der Ankunft über die Verleihung der Ehrenbürgerschaft bis hin zu seinem Tod hatte Drehbuchautor und Hansjakobdarsteller Alois Kraftzcyk ein unterhaltsames Stück entworfen, das unter der Regie von Cornelia Volk viel Beifall bekam. Marcus Zagermann nahm das Publikum als Sprecher mit durch die zehn verschiedenen Szenen, erklärte Zusammenhänge und überbrückte Zeitsprünge von der Jugend bis zur nahenden Pensionierung. Am 22. Oktober 1913 kommt Hansjakob heim in seinen Kinderhimmel, in seinen Freihof. Und dann begann das Szenenspiel, in dem Alois Krafczyk einmal mehr in seiner Paraderolle als großer Sohn der Stadt glänzte. Stilecht fuhr er mit dem Zweispänner und "Schwarzwälder Füchsen" von Erich Becherer aus Mühlenbach vor. Er wurde nicht nur vom Publikum mit viel Applaus empfangen, auch seine Schwester Philippine hieß ihn willkommen. Billy Sum-Hermann verstand es unglaublich gut, sich in die Rolle der Schwester hineinzuversetzen und verlieh ihr in Mimik und Gestik ungeheures Leben. Zwischen den einzelnen Spielszenen spielte die Mühlenbacher Bauernkapelle passend ausgewählte Musikstücke und rundete damit die Aufführung ab. Zur Verleihung der Ehrenbürgerwürde gab sich dann Haslachs Bürgermeister Heinz Winkler die Ehre, der in Vertretung des damaligen Amtsinhabers Hättich zusammen mit einem Teil des Stadtrates seine Aufwartung machte. Ihre Aufwartung machten anschließend die Dreikönig- singer, die Hansjakob zu dem Ausruf veranlassten: "Ach wie schön, da werden wieder Jugenderinnerungen an meine eigene Dreikönigzeit lebendig". Mit ihrem Lied "O Jesulein" erfreuten sie das Publikum im Freihof ebenso wie die Storchentagskinder mit ihrem lauten "Heraus, Heraus". Seine Kritik an der Amtskirche hatte Hansjakob damals genauso geäußert, wie seine Bedenken über die Auswüchse in der Landwirtschaft, die Folgen der Industrialisierung oder die Auswirkungen des Krieges. In der Heimaterde, hinter seiner Grabkapelle auf der Brand bei Hofstetten, fand er seine Ruhestätte. "Ein unruhiger Geist hatte endlich seine Ruhe gefunden und war für immer heimgegangen", hieß es am Ende des Szenenspiels. Viel Applaus und viele lobenden Worten gab es vom Publikum für die Aufführung. Basketball: Die Hoffnung der Neckar Riesen wächst Die Chancen auf den Ligaverbleib der sportlich abgestiegenen Ludwigsburger Bundesliga-Basketballer sind gestiegen. Denn sollte es ein Wildcard-Verfahren geben, dann gibt es für die Neckar Riesen nun einen Mitbewerber weniger. Das Basketball-Projekt Hamburg Towers verzichtet auf eine Bewerbung für einen möglichen Nachrückerplatz. "Wir werden nicht am Wildcard-Verfahren teilnehmen", sagte Ex-Nationalspieler Pascal Roller, der seit 2012 das Konzept für einen Proficlub in der Hansestadt aufstellt. Ein erstes Aufatmen war aus Ludwigsburg dennoch nicht zu vernehmen. "Wir beschäftigten uns nicht mit dem Wildcard-Verfahren, so lange nicht feststeht, dass Düsseldorf keine Lizenz erhält", sagte Neckar-Riesen-Boss Alexander Reil unserer Zeitung. Bis zum 23. Mai kann Aufsteiger Düsseldorf Baskets noch Unterlagen beim Schiedsgericht einreichen und seine wirtschaftliche Bundesliga-Tauglichkeit nachweisen. Bisher wurde den Rheinländern die Lizenz aber zweimal verweigert. Das Schiedsgericht ist die letzte Instanz. Haigerloch: Abendmahlskirche rückt in den Blickpunkt Als Beitrag der Stadt zum 150-jährigen Bestehend der Evangelischen Kirche in Haigerloch widmet das Kultur- und Tourismusbüro der Stadt die letzte ihrer diesjährigen öffentlichen Themenführungen am Sonntag, 27. Oktober, der Abendmahlskirche. Nach dem Besuch des Atomkeller-Museums soll die Haigerlocher Zeit nach 1850 betrachtet werden, als Haigerloch unter preussische Herrschaft kam. Krönender Schlusspunkt ist dabei ein Besuch in der Abendmahlskirche. Dort bekommen die Führungsteilnehmer die Geschichte vom Bau der Kirche erzählt und gewinnen Einblicke in die Entwicklung der evangelischen Gemeinde in einer durch und durch katholischen Gegend. Nicht zuletzt fällt in der Kirche auch der Blick auf das von Friedrich Schüz mit Unterstützung von Walter Kröll und Georg Halbritter geschaffene Abendmahlgemälde. Es ist eine orginalgetreue Reproduktion des berühmten Mailänder Vorbildes von Leonardo da Vinci. Treffpunkt zu der andert­halbstündigen Führung ist um 15 Uhr am Atomkeller-Museum. Karten gibt es an der Kasse des Atomkellermuseums. Für Fragen und Informationen steht das Tourismusbüro der Stadt Haigerloch zur Verfügung. Snowden könnte auch in Russland aussagen Der frühere US-Geheimdienstexperte Edward Snowden könnte in der US-Spähaffäre auch in seinem russischen Asyl Aussagen machen. Vertreter der Bundesgeneralstaatsanwaltschaft könnten entweder schriftlich Fragen stellen oder den 30-Jährigen auch persönlich in Russland treffen. Das meldete die Agentur Interfax unter Berufung auf nicht näher benannte Kreise, die mit der Lage vertraut seien. Eine solche Frage könne zwischenstaatlich geklärt werden, hieß es. Eine Ausreise Snowdens aus Russland ist praktisch ausgeschlossen. "In diesem Fall verliert er seinen Flüchtlingsstatus", zitierte die Agentur ihre Quelle. Weil Deutschland Verbündeter der USA sei, drohe Snowden dort die Auslieferung, hieß es weiter Langer Atem macht sich bezahlt Sechs Männermannschaften kämpften beim Tennisturnier der Vereine um den Siegertitel. Am Ende entschied die Ausdauer vom Team Maier/Bronner das letzte Match. Ein Traumwetter hatte die Tennisabteilung der Sportfreunde Rohrdorf zum Turnier der örtlichen Vereine und Freunde erhalten. Der Spaß am Tennisspielen stand im Vordergrund des Turniers. Es standen fünf Spiele pro Team auf dem Plan, wobei jeder gegen jeden spielte. Gespielt wurde im Doppelmodus mit einem langen Satz bis zu neun Punkten oder maximal 45 Minuten Dauer. Anja Schlichter leitet das Turnier Die Turnierleitung lag in den bewährten Händen von Anja Schlichter, unterstützt wurde sie von Carmen Müller und Inga Kronemeyer. Nach den ersten drei Spielen und einer Mittagspause mit Pasta ging das Turnier in die entscheidende Phase. Die Favoriten Andre Maier/Matthias Bronner lagen punktgleich mit Michael Klippel und Sadmin Osmicic (beide Teams der SG Rohrweiler), so dass die letzten beiden Matches die Entscheidung bringen mussten. Bei der Siegerehrung konnte Carmen Müller den Wanderpokal schließlich an Andre Maier/Matthias Bronner überreichen, die auf der Zielgerade den längsten Atem hatten. Den zweiten Platz belegte das Doppel Michael Klippel/Sadmin Osmicic. Das Bronzetreppchen erreichten Rainer und Bernd Maier des Teams Asphaltriecher. Bei Spätnachmittagsonne und Kaffee und Kuchen fand der gelungene Ausklang des Turniers statt. Am letzten Augustwochenende ist das Schwarzwälder Freilichtmuseum Vogtsbauernhof in Gutach bei Hornberg wieder fest in Kinderhand. Traditionell heißt das Museum die Besucher am Samstag und am Sonntag, den 24. und 25. August, im Rahmen des Sommerferienprogramms zu einem bunten Kinder- und Familienfest mit zahlreichen Mitmachaktionen und Veranstaltungen willkommen. "Groß und Klein können an beiden Tagen verschiedene alte Handwerke erlernen", heißt es in der Pressemitteilung. Ob Seife herstellen, Kerzen drehen, filzen oder Seile fertigen, für jedes Alter ist das Passende dabei. Den Kindern stehen regionale Handwerker von 11 bis 17 Uhr helfend zur Seite. In der Museumswerkstatt wird ebenfalls gewerkelt. Beim Bau von Kuckuckspfeifen, Wasserrädern oder Kreiseln können die jungen Gäste ihr handwerkliches Geschick unter Beweis stellen. Viel Spaß versprechen auch die vielen alten Spiele, wie Schubkarren-Rennen oder Stelzenlaufen. Schnelligkeit und Koordination sind hier gefragt. Für alle kleinen Detektive bietet das Freilichtmuseum am Samstag und am Sonntag, jeweils um 12 und 14 Uhr, eine Rätselführung durch das Museum an. Auf einem Geländerundgang müssen die Kinder erraten, welche Geschichten der Wahrheit entsprechen oder doch gelogen sind. Darüber hinaus haben die Besucher die besondere Gelegenheit, das Freilichtmuseum während einer Kutschfahrt mit Schwarzwälder Füchsen kennenzulernen. Nicht nur Pferde, sondern auch viele weitere Tiere wie Schafe, Ziegen, Kühe und Hühner sind auf dem Gelände anzutreffen und zu bestaunen. Zusätzlich dürfen sich alle Kinder am Sonntag auf den Clown Otsch freuen, der seinen Schabernack ab 11 Uhr mit den Museumsgästen treibt. Gemütlich und märchenhaft geht es unterdessen bei Hermann Büttner zu. Der Geschichtenerzähler nimmt die kleinen Gäste um 11, 13 und 15 Uhr mit in die wunderbare Welt der Märchen. Zudem führt die Kindertrachtentanzgruppe aus Gutach um 11.30 Uhr traditionelle Tänze vor. Des Weiteren lassen sich an beiden Veranstaltungstagen von 11 bis 17 Uhr zahlreiche Handwerker wie der Besenbinder, die Näherin, die Spinnerin, die Weberin und die Bäckerin bei ihrer traditionellen Arbeit über die Schulter schauen. Noch bis zum Ende der Sommerferien in Baden-Württemberg erwartet die Besucher des Freilichtmuseums ein abwechslungsreiches Ferienprogramm. In einer neuseeländischen Kleinstadt gilt Burt Muro als liebenswerter Kauz, weil er sich vorgenommen hat, mit seinem Motorrad, Baujahr 1920, an einem Rennen in Amerika teilzunehmen. Burt ist trotz eines Herzfehlers nicht von seinem Traum abzubringen. Mit seinem Ersparten, einpaar Spenden und einer Hypothek auf seinen alten Werkstattschuppen setzt er per Schiff nach Los Angeles über. Nach dem Film gibt es Kaffee, Tee und Kuchen. Schrilles Piepsen stört Anwohner Rhenus Midgard hat auch an Land kräftig investiert. Sie verteilen die von den Schiffen kommende Kohle auf die Halde. Das Unternehmen hat am Standort gleich mehrere Eisen im Feuer. Neben dem Kohleimport setzt Rhenus Midgard unter anderem auf Windanlagen-Logistik. Schwarz schimmert die Steinkohle auf dem Lagerplatz vor dem Deich. Zwei gewaltige blaue Haldenschütt- und Rückladegeräte verteilen oder verladen die Kohle hier nach Bedarf. Bei jeder Bewegung der Umschlaggeräte tönt ein schrilles Warngeräusch übers Gelände. "Die Signale dienen der Sicherheit und sind gesetzlich vorgeschrieben", sagt Matthias Schrell, Geschäftsführer der Rhenus Midgard in Wilhelmshaven. Bei ungünstig stehendem Wind ist das leider weithin zu hören - und so gab es bereits einige Beschwerden von Leuten aus dem Stadtnorden. Er nehme die Klagen sehr ernst und habe deshalb Kontakt aufgenommen mit den Betroffenen, sagt der 40-Jährige. In enger Absprache mit den Behörden sei man nun dabei, die Warnsignale mit technischen Maßnahmen leiser zu halten. Auch künftig setze er auf den offenen Dialog mit den Nachbarn. Denn Matthias Schrell hat noch einiges vor am Standort. Mit dem Ausbau der Niedersachsenbrücke setzt Rhenus Midgard weiterhin auf den Kohleimport für Kraftwerke und ist auf diesem Sektor einer der Großen in Europa. Dank der auf 18,5 Meter vertieften Liegewanne vorm Terminal können längst auch Capesize-Bulkcarrier hier abgefertigt werden. "In diesem Jahr wollen wir beim Umschlag die 3-Millionen-Tonnen-Marke knacken", so Schrell. Neben dem Eon-Kraftwerk vor Ort geht die Importkohle zu Kraftwerken im Binnenland. Wenn dann noch das GDF-Suez-Kraftwerk ans Netz gehe, seien gut 5 Millionen Tonnen Kohleimport pro Jahr realistisch. Die drei Schiffsentlader auf der Brücke sowie das zweite Transportband könnten bis zu 10 Millionen schaffen. Bayerns Basketballer trotz erster Niederlage optimistisch Selbst die erste Niederlage in der Euroleague konnte bei den Basketballern des FC Bayern München den riesigen Optimismus nicht schmälern. "Niemand kann uns verbieten daran zu glauben, auch gegen das beste Team Europas der vergangenen beiden Jahre zu gewinnen", bilanzierte Bayern-Coach Svetislav Pesic nach dem unglücklichen 83:88 (39:47) am Donnerstagabend bei Titelverteidiger Olympiakos Piräus. Wir haben die Message gesendet: Auch in München existiert Basketball! Bei ihrem erst dritten Auftritt in der europäischen Königsklasse verkauften sich die Münchner lange sehr gut, waren in den entscheidenden Phasen aber einfach nicht abgeklärt genug. Die Gäste schafften zunächst das Kunststück, einen 15-Punkte-Rückstand 13 Minuten vor Schluss noch in eine Führung umzuwandeln, ehe Piräus dem Spiel erneut eine Wende gab. "Wir haben uns unglaublich zurückgekämpft gegen den zweimaligen Euroleague-Champion, aber dann wieder leichtsinnige Fehler gemacht", sagte Bayern-Profi Yassin Idbihi. Wir sind stolz auf unsere Leistung, aber wir wollen jedes Spiel gewinnen. Malcolm Delaney und Nihad Djedovic waren die erfolgreichsten Werfer der Münchner, die in den ersten beiden Partien gegen den italienischen Serienmeister Montepaschi Siena und den polnischen Titelträger Zielona Góra deutliche Siege gefeiert hatten. Ben Greenman: Zehn Jahre New York Comedy Festival: The New Yorker Man könnte sagen, dass New York City die Geburtsstätte von Stand-up Comedy in Amerika ist: Vor knapp hundert Jahren fing der Varietekünstler Frank Fay, der als Conférencier im Palace Theatre am Broadway arbeitete, damit an, der Menge direkt Witze in Form eines Gesprächs zu erzählen. Im Laufe der Jahre wurde Fays Innovation ausgebaut, so wie zuletzt auf dem New York Comedy Festival. Ins Leben gerufen und geleitet von Caroline Hirsch, der Gründerin der Stand-up-Institution Carolines, feiert das Festival in diesem Jahr sein zehnjähriges Jubiläum mit über sechzig Shows in kleinen Clubs und großen Theatern. „Die meisten dieser Headliner fingen bei Carolines an und wurden dann immer erfolgreicher, bis sie irgendwann zu bekannt waren, um in einem Club aufzutreten“, sagte Hirsch. Wir haben dieses Festival konzipiert, damit wir weiter mit ihnen arbeiten können. Bei der diesjährigen Veranstaltung gibt es Auftritte von Wanda Sykes, Kathy Griffin und Bill Maher sowie auch von „Stand Up for Heroes“, einer jährlichen Musik- und Comedy-Benefizveranstaltung für Armeeveteranen im Madison Square Garden, bei der unter anderem Bruce Springsteen, Jon Stewart, Roger Waters und Bill Cosby auftreten. Mit dem Festival ist auch die Welt der Comedy gewachsen. Eine Reihe der Comedians, die dieses Jahr am Festival teilnehmen, sind über eher unkonventionelle Wege bekannt geworden, wie beispielsweise Sendungen auf kleineren Fernsehkanälen wie Comedy Central, FX und Spike. Nick Kroll wurde mit einer Sitcom im Kabelfernsehen bekannt (die ironisch-schlüpfrige Fantasy-Football-Serie „The League“ auf FXX) und hat jetzt seine eigene Sketch-Show auf Comedy Central. Jenny Slate war sowohl bei „Saturday Night Live“ als auch bei „Parks and Recreation“ Teil der Besetzung, obwohl sie am bekanntesten für ihre virale Videoserie „Marcel the Shell with Shoes On“ ist. Sowohl Kroll als auch Slate und andere junge Comedians mit charakteristischen Stimmen (der surreal pessimistische Anthony Jeselnik, der ironische, auf Rassenthemen konzentrierte W. Kaumau Bell) sind Produkte der dezentralisierten Welt der amerikanischen Comedy. Zu den größten Besuchermagneten des Festivals gehört ein Interview: David Steinberg spricht mit Larry David. Steinberg begann als Stand-up Comedian, hat sich aber zu einem angesehenen Fernseh- und Filmregisseur sowie zu einem inoffiziellen Comedy-Historiker entwickelt. Von 2005 bis 2007 moderierte er eine Fernsehsendung mit dem Titel „Sit Down Comedy with David Steinberg“ bei TV Land. Das Treffen findet in der Town Hall mitten in Manhattan statt. „Die Stadt ist definitiv in der Comedy-DNA von Larrys gesamter Arbeit“, sagte Steinberg. Er hat mir erzählt, wenn er hier ist, dann gehe er manchmal durch die Gasse zwischen zwei Gebäuden und denkt sich: Hey, wenn ich mein ganzes Geld verliere, dann lebe ich vielleicht hier. Iran zufrieden mit Prozess der Atomverhandlungen Der Iran zeigt sich eine Woche vor dem nächsten Atomtreffen mit den fünf UN-Vetomächten und Deutschland zufrieden mit dem Verhandlungsprozess. "Nach Jahren habe man nun eine Einigung mit der Internationalen Atomenergiebehörde, um die Differenzen der letzen Jahre auszuräumen", schrieb Außenminister Mohammed Dschawad Sarif auf seiner Facebookseite. Es wäre zwar noch ein langer Weg, aber der Atomchefunterhändler sei mit dem Verhandlungsprozess zufrieden und auch optimistisch, dass am Ende beide Seiten zu einer Lösung kommen. Drama in Uruguay: Jungen töten Spielkamderaden mit Machete Zwei Kinder haben in Uruguay den Mord eines 11-Jährigen eingestanden. Die beiden 14 und 12 Jahre alten Jungen hatten ihr Opfer eingeladen, mit ihnen auf Vogeljagd zu gehen. Mit Macheten und Messern bewaffnet erstachen sie am Dienstag den 11-Jährigen und warfen den Leichnam in einen Brunnen, berichtete die Zeitung "El País" am Donnerstag. Anschließend hätten sie vor ihren Wohnungen in einem Arbeiterviertel Fußball gespielt. Der Leichnam wurde in der folgenden Nacht in der Ortschaft Cerro Pelado, 15 Kilometer nördlich vom exklusiven Strandort Punta del Este aufgefunden. Als Alibi sollte eine fünfjährige Halbschwester des Jüngeren, die sie mitgenommen hatten, aussagen, sie sei von dem Jungen sexuell angegriffen worden. Als das Mädchen aber vor der Polizei den Tathergang ohne Erwähnung eines Angriffs gegen sie beschrieb, gaben die zwei Jungen die vorsätzliche Tötung des 11-Jährigen zu. Als Grund nannte der Ältere unter anderem eine Rivalität im Fußballspiel. Er wurde vorläufig in eine psychiatrische Jugendanstalt eingeliefert. Zuhälter muss ins Gefängnis Wegen ausbeuterischen Menschenhandels, Zuhälterei, Bedrohung, Beleidigung und gefährlicher Körperverletzung hat das Landgericht Konstanz einen 33-jährigen Mann aus St. Georgen zu dreieinhalb Jahren Haft verurteilt. Der ehemalige Bundeswehrsoldat, der nach zwei Einsätzen in Afghanistan als Türsteher arbeitete, legte im Rahmen einer Prozessabsprache ein Geständnis ab. Demnach hat er in fünf Fällen Frauen über Internet- oder Telefonkontakte kennengelernt, die er nach einigen Wochen gegen ihren Willen auf den Strich schickte. Widerstand pflegte er mit Gewalt und Drohungen zu brechen. Die Einnahmen der Frauen, die zum Teil jahrelang für ihn anschafften, behielt er ein. Durch Konfiszierung von Handys und SIM-Karten unterband er Kontakte der Frauen zur Außenwelt. Zusammen mit einem Kollegen, der die Frauen vermittelte, brachte er sie in verschiedene Bordelle im Südwesten. Dort ließ er sie zum Teil überwachen, um ihre Einnahmen zu kontrollieren. Vor Gericht behauptete der Angeklagte zunächst, er leide unter einem schweren Trauma, nachdem Kollegen in Afghanistan neben ihm bei einer Explosion ums Leben gekommen seien. Nachdem ein psychiatrischer Sachverständiger große Zweifel an der psychischen Einschränkung und damit an einer eingeschränkten Schuldfähigkeit andeutete, legte der 33-Jährige ein umfassendes Geständnis ab. Das Gericht musste keine der geschädigten Frauen mehr vernehmen. Wie ein Kripo-Beamter berichtete, konnten nach einer ersten Anzeige durch Telefonüberwachungsmaßnahmen mindestens vier weitere Fälle von ausbeuterischem Menschenhandel ermittelt werden. Die abgehörten Gespräche seien von hoher Aggression geprägt gewesen. In späteren Vernehmungen hätten die Geschädigten ihr Martyrium bestätigt. Eine weitere Zeugin, bei der eine der Frauen am ganzen Körper blaue Flecken entdeckt hatte, habe bis heute keine Aussage gemacht. Es handle sich um "eine völlig gebrochene Persönlichkeit", die Gewalt und Ausbeutung in diesem Metier als normal ansehe. Der Angeklagte bedauerte sein Verhalten gestern. "Er habe sich aus diesen Kreisen gelöst und wolle nach der Haft ein ganz normales Leben führen", meinte er. Ölpreis gibt weiter nach bis auf 96 USD pro Barrel Der Ölpreis ist auch am Freitag weiter gefallen, nachdem Sorgen über ein hohes Angebot einen Bericht überschatteten, wonach der energiehungrige Fertigungssektor Chinas wächst. Die Referenzrohölsorte für Lieferungen im Dezember war am späten Morgen in Europa im elektronischen Handel an der New York Mercantile Exchange um 14 Cent auf 96,24 USD pro Barrel gefallen. Der Vertrag fiel um 39 Cent am Donnerstag, was einen Preisverfall von 5,8 Prozent im Oktober bedeutete. Das große Rohölangebot hat die Preise in den vergangenen Wochen belastet. Das Energieministerium der USA erklärte am Mittwoch, das US-Angebot habe letzte Woche um 4,1 Millionen Barrel zugenommen. Im Laufe von fünf Wochen war das Angebot um 25 Millionen Barrel gestiegen. Doch am Freitag gab es Hinweise auf stärkere Nachfrage durch zwei Berichte über einen Aktivitätszuwachs in der chinesischen Fertigung. Dies deutet auf eine fortgesetzte Erholung der Wirtschaft Chinas hin, deren Wachstum auf 7,8 Prozent im dritten Quartal angestiegen war, nachdem es im vorherigen Quartal auf dem niedrigsten Stand seit zwei Jahrzehnten angelangt war. Rohöl von der Sorte Brent, ein Referenzwert für internationales Rohöl, das auch von US-amerikanischen Raffinerien verwendet wird, fiel an der ICE Exchange in London um 26 Cent auf 108,58 USD pro Barrel. Gericht blockiert Entscheidung zur Stop-and-Frisk-Richtlinie des NYPD Ein Bundesberufungsgericht in den USA blockierte am Donnerstag die Anordnung einer Richterin, die Änderungen am Stop-and-Frisk-Programm („Anhalten und durchsuchen“) des New Yorker Polizeidepartments gefordert hatte, und entband die Richterin von dem Fall. Das 2. US-Berufungsgericht erklärte, die Entscheidungen von Richterin Shira Scheindlin würden ausgesetzt, bis über eine Berufung der Stadt entschieden sei. Die Richterin hatte im August geurteilt, die Stadt verstoße gegen die Verfassung mit der Art und Weise, wie das Programm für das Anhalten und Befragen von Personen umgesetzt werde. Die Stadt legte Berufung gegen ihre Einschätzung und die angeordneten Abhilfemaßnahmen ein, einschließlich der Entscheidung, eine Überwachungsstelle einzurichten, die die Polizei bei der Änderung ihrer Richtlinie und des entsprechenden Schulungsprogramms unterstützen solle. Das Berufungsgericht hörte am Dienstag die Argumente zur geforderten Aussetzung. Das Berufungsbericht erklärte, die Richterin müsse von dem Fall entbunden werden, da sie den Verhaltenskodex für US-amerikanische Richter verletzt habe, indem bestimmt ist, dass ein Richter den Anschein der Parteilichkeit vermeiden soll; dies wurde teilweise mit einer Reihe von Medieninterviews und öffentlichen Aussagen begründet, in denen sie öffentlich auf die Kritik des Gerichts reagiert hatte. Die Richterin hatte geurteilt, Polizeibeamte verletzten die Bürgerrechte von Zehntausenden von Menschen, weil sie in unangemessener Weise gezielt schwarze und lateinamerikanische Männer mit dem Stop-and-Frisk-Programm ins Visier nähmen. Sie ernannte eine externe Stelle zur Überwachung der Umsetzung wesentlicher Änderungen, einschließlich Reformen bei Richtlinien, Schulung und Dienstaufsicht, und ordnete ein Pilotprogramm mit am Körper getragenen Kameras in Vierteln an, in denen die meisten Kontrollen durchgeführt wurden. Im August erklärte sich die Stadt New York bereit, die Praxis der Speicherung von Namen und Adressen von Personen zu beenden, die nach einer Kontrolle durch die Polizei wieder entlassen wurden. Eine mündliche Verhandlung zur Berufung der Stadt ist nach dem 14. März 2014 geplant. Die Stop-and-Frisk-Taktik wurde von einer Reihe von Bürgerrechtsverfechtern kritisiert. Kontrollen dieser Art gibt es seit Jahrzehnten in verschiedenen Formen, doch stieg die Anzahl der aufgezeichneten Kontrollen während der Amtszeit des parteilosen Bürgermeisters Michael Bloomberg auf ein Allzeithoch von 684.330 im Jahr 2011, die meisten davon schwarze und lateinamerikanische Männer. 2004 wurde von vier Männern, die alle Minderheiten angehörten, Klage eingereicht, die sich zu einer Sammelklage entwickelte. Befürworter von Änderungen am Stop-and-Frisk-Programm des NYPD sagen, die Veränderungen werden unfaire Praktiken beenden und eine vertrauenswürdigere und effektivere Polizei schaffen sowie die Art und Weise beeinflussen, wie andere Polizeipräsidien die Regelung einsetzen. Gegner sind der Ansicht, die Veränderungen würden die Moral der Polizei dämpfen, aber nicht die Kriminalität; auch würde Geld verschwendet und das breitere Problem einer Polizei nicht gelöst, die nach dem Wegfall Tausender von Stellen im letzten Jahrzehnt unter Druck stehe. Die Richterin wies darauf hin, dass sie die Stop-and-Frisk-Praxis nicht beende, die verfassungsmäßig sei, sondern nur die Art der Umsetzung der Kontrollen durch das NYPD reformiere. Vom Glück der träumenden Kamele Glück ist eine Oase, die zu erreichen nur träumenden Kamelen gelingt Mit dieser Beduinenweisheit beschrieb der erste Vorsitzende Wolfgang Henne die Geschichte und Faszination des Vereins "Helfende Hände". Am Samstagnachmittag wurde der zehnte Geburtstag des Vereins gefeiert, der schon beachtliche Erfolge aufweisen kann. Der erste Vorsitzende Henne berichtete ausführlich von der Arbeit des Vereins. Er selbst war im Jahr 2004 das erste Mal in Mauretanien im Cheijk-Zajed-Krankenhaus in Nouakchott. In der Folge entwickelte sich eine weitere Kooperation, und der Gynäkologe Henne führte vor Ort auf mehreren Reisen zahlreiche Operationen durch. Während der Reden wurden Bilder von den Einsätzen auf einer großen Leinwand gezeigt, so dass sich die Gäste der Jubiläumsveranstaltung von den erwähnten Aktionen ein Bild machen konnten. Das Wüstenfahrzeug des Vereins wurde auch gezeigt. Es handelt sich um ein ehemaliges Bundesgrenzschutzfahrzeug. Rainer Prewo, der ehemalige OB von Nagold, hatte den Vorschlag gemacht, dieses Fahrzeug mit einer Fotovoltaikanlage auszustatten und plant nun, laut Henne, beim Verein in beratender Funktion tätig zu werden. Im Jahr 2008 hat die Zimmerei Schleeh aus Baiersbronn in der Rekordzeit von knapp einer Woche die Krankenstation in Socogim, ein Elendsviertel am Rande der Hauptstadt erstellt - ehrenamtlich. Henne erwähnte auch ein neues Mutter-Kind-Krankenhaus in Nouakchott Besonders interessant in Zeiten in denen in Nagold die Geburtsklinik wegrationalisiert werden soll. Man lerne viel in Afrika als Mediziner, so Henne, zum Beispiel Entschleunigung gegen Burn-out. Aufgrund der politischen Unruhen im Land konnte man nicht so viele Reisen wie geplant unternehmen, aber dafür kamen viele Mediziner nach Deutschland, um hier in verschiedenen Bereichen zu hospitieren. Außerdem werden regelmäßig Container mit Material nach Afrika geschickt, so im März diesen Jahres medizinische Geräte, Medikamente, Verbandsmaterial, Krankenhausbetten und Brillen. Mitinitiator Hans-Joachim Fuchtel selbst lieferte reichlich Lokalkolorit, indem er aus Mauretanien von zum mobilen Ziegenstall umgebauten Mercedes-Fahrzeugen erzählte und die Erlebnisse der Stammheimer Musiker, welche den Verein traditionell unterstützen, bei ihrer Mauretanienreise schilderte. Als seine persönlichen Beweggründe nannte er seine Arbeit im Bereich Rechnungsprüfung als junger Abgeordneter. Als ihm klar geworden sei, wie viel Geld unterwegs verloren ging, habe er beschlossen, den Afrikanern bei der Kontrolle eines Budgets durch das Volk zu helfen. Außerdem betonte Fuchtel, dass globale Wirtschaft auch globale Menschenliebe verlange. Es solle auch keineswegs vergessen werden, dass Afrika näher liegt als mancher denke. Von Gran Canaria sei es nicht weit nach Afrika. Coulson setzte Telefon-Hacking für das Überprüfen eines Tipps ein Der frühere News of the Word-Herausgeber Andy Coulson setzte angeblich „Telefon-Hacking, Überwachung und Konfrontation“ beim Versuch ein, einen falschen Tipp über eine Affäre des damaligen Innenministers Charles Clarke zu bestätigen. Staatsanwalt Andrew Edis QC erklärte dem Gericht im Old Bailey, News of the World habe im Mai 2005 ein falsches Gerücht dahingehend gehört, dass Clarke ein Verhältnis mit seiner „attraktiven Sonderberaterin“ Hannah Pawlby hätte. Die Zeitung beauftragte den Privatdetektiv Glenn Mulcaire damit, Pawlbys Voicemails zu hacken, und verfolgte sie, aber Coulson rief sie auch an und hinterließ Nachrichten, wie das Gericht erfuhr. „Nach Auffassung der Staatsanwaltschaft ist Coulson, der jetzt Herausgeber der NotW ist, niemand, der vor der Wohnung von Leuten steht und hofft, sie auf frischer Tat zu ertappen, sondern einer, der Leute gern mit einer Geschichte konfrontiert, um ihre Reaktion zu sehen“, erklärte Edis. Er sagte, NotW verwende drei Verfahren, um Geschichten investigativ zu recherchieren: Telefon-Hacking, Überwachung und Konfrontation. Der Herausgeber ist persönlich an der dritten Methode beteiligt. Offensichtlich weiß er von der zweiten, der Überwachung, anders kann es nicht sein. Wie sieht es mit der ersten aus? Weiß er über das Telefon-Hacking Bescheid? Er streitet das ab, aber wir sagen: „Und ob er davon wusste.“ Gerüchte über eine Affäre Clarkes wurden zuerst von der Feature-Redaktion von NotW aufgegriffen, als einer Quelle, die sexuell an Pawlby interessiert war, gesagt wurde: „Verschwenden Sie nicht Ihre Zeit, sie ist mit Charles zusammen.“ Ein Band mit Voicemails von ihrem Telefon von mindestens drei Anlässen wurde im August 2006 in Mulcaires Wohnung sichergestellt. Die Ermittler fanden außerdem Einträge auf dem Computer des Detektivs, auf dem Pawlby und ihre Schwester als „Projekte“ gespeichert waren. In der Zeit, als die Recherchen liefen, erhielten die Großeltern von Pawlby anonyme Anrufe, in denen sie nach Informationen über sie gefragt wurden, erklärte Edis. Unterdessen beaufsichtigten der ehemalige Chefreporter Neville Thurlbeck und der frühere Reporter James Weatherup die Überwachung der Bewegungen von Pawlby. Am 18. Juni 2005 hinterließ Coulson ihr eine Voicemail mit folgendem Inhalt: „Ich habe eine Story, die wir morgen herausbringen wollen, über die ich gern mit Charles sprechen möchte.“ Edis erklärte, Coulsons Aktivitäten bei dieser Story folgten demselben Muster wie bei anderen wichtigen Persönlichkeiten, etwa dem früheren Innenminister David Blunkett. Die Geschworenen hörten am Donnerstag, dass Coulson Blunkett wegen einer Affäre mit einer verheirateten Frau konfrontiert habe, als er selbst mit der Mitangeklagten Rebekah Brooks liiert war, die damals verheiratet gewesen war. Coulson und Brooks streiten ab, sich mit anderen verschworen zu haben, zwischen dem 3. Oktober 2000 und dem 9. August 2006 Telefone zu hacken. Mulcaire, Thurlbeck und Weatherup haben das Telefon-Hacking zugegeben. Aus Protest gegen die geplante Reichensteuer wird der französische Fussball tatsächlich den ersten Streik seit 1972 durchziehen. Ein Schlichtungstreffen geht ergebnislos zu Ende. Im Konflikt um die Reichensteuer haben sich die Regierung und der Profi-Fussball in Frankreich nach einem gescheiterten Schlichtungstreffen in eine Sackgasse manövriert. Präsident François Hollande empfing zwar am Donnerstag im Pariser Élysée-Palast Vereins- und Verbandsvertreter und hörte sich auch deren Klagen an. Er weigerte sich aber, den Fussball von der geplanten 75-prozentigen Abgabe auf Einkommen von mehr als einer Million Euro pro Jahr, die alle Firmen des Landes ab 2014 zwei Jahre lang zahlen sollen, zu verschonen. Auch die Gegenseite blieb hart. Den für Ende November angekündigten Streik werde man nun auch durchziehen, teilte der Chef Vereinigung der Profiklubs (UCPF), Jean-Pierre Louvel, mit. Die zwischen dem 29. November und dem 2. Dezember angesetzten Spieltage in der Ligue 1 und Ligue 2 fallen somit aus. Gechingen: Kein absoluter Schutz möglich "Wir wollen die Einwohner frühzeitig in die Planung einbinden", eröffnete Bürgermeister Jens Häußler die Bürgerinformationsveranstaltung zum Hochwasserschutzkonzept in Gechingen. Rund 80 Teilnehmer waren in die Gemeindehalle gekommen, um sich die geplanten Maßnahmen erklären zu lassen, Fragen zu stellen, Bedenken zu äußern und Ideen einzubringen. Häußler stellte klar: "Die letztendlichen Entscheidungen fällen die Mitglieder des Gemeinderats". Das Hochwasser, das Gechingen am 15. Mai 2009, unvorbereitet traf, sei ein einschneidendes Ereignis gewesen, das die Frage nach Schutzmaßnahmen für die Zukunft aufwarf, so Häußler. Eine Flussgebietsuntersuchung war mit der Nachbargemeinde Aidlingen in Auftrag gegeben worden, die nun Grundlage für das Hochwasserschutzkonzept in Gechingen ist. "Der Schutz möglichst vieler bebauter Grundstücke ist das Ziel", so Häußler. Zugrunde gelegt ist der Planung der Schutz vor einem laut Deutschen Wetterdienst statistisch alle 100 Jahre zu erwartenden Hochwasser. Der Klimaveränderung wird durch einen 15-prozentigen Zuschlag Rechnung getragen. In Fachkreisen wird dies mit "HQ 100aKlima" bezeichnet. Die Wassermassen, die 2009 in Gechingen zu beträchtlichen Schäden geführt hatten, entsprachen einem 1000-jährigen Hochwasser. "Einen absoluten Schutz gibt es nicht, aber eine relative Verbesserung können wir erzielen", so Häußler. Um den Schutz HQ 100aKlima zu erzielen, müssen in Gechingen rund vier Millionen Euro investiert werden, wobei die Gemeinde mit Landeszuschüssen in Höhe von rund 70 Prozent rechnen kann. Häußler wies aber darauf hin, dass es die Förderung nur gebe, wenn ein Gesamtkonzept umgesetzt werde. Dazu sei die Gemeinde auf die Mitwirkung der Bürger angewiesen. Ein aufwändiges Planungs- und Genehmigungsverfahren müsse absolviert werden. Im besten Fall könne 2016 mit der Umsetzung begonnen werden. Unter anderem sieht das Schutzkonzept, das bereits in der vergangenen Woche im Gemeinderat präsentiert wurde (wir berichteten) lokale Maßnahmen im Zufluss des Flüsschens Irm aus dem Stammheimer Tal vor. Im Anschluss an die Präsentation des Hochwasserschutzkonzepts nutzten die Teilnehmer die Gelegenheit, ihre Anliegen einzubringen. Unter anderem wurde in Frage gestellt, warum nicht mehr Dämme und Rückhaltebecken zum Schutz des Ortes geplant seien. Gregor Kühn, Fachplaner des beauftragten Ingenieurbüros Wald und Corbe aus Hügelsheim, der das Konzept vorstellte, betonte, dass es das Zusammenspiel aller vorgestellten Maßnahmen benötige, um in der Summe das gewünschte Ziel zu erreichen. Darüber hinaus sei man gehalten die wirtschaftlichste Lösung zu finden, so Joachim Wald von Wald und Corbe. Unmut herrschte bei Anliegern des Altorts, die selbst bei normalen Gewitterregen immer wieder unter einer Überlastung des Kanalnetzes zu leiden haben. Das Problem ist bei der Verwaltung bekannt und erste Maßnahmen wurden bereits ergriffen. Häußler wies jedoch darauf hin, dass die Richtlinien für Kanalsysteme andere seien, als für den Hochwasserschutz und dies nicht vermischt werden dürfe. Die Gemeinde sei verpflichtet, das Kanalnetz so auszulegen, dass zwei- bis dreijährige Regenereignisse verkraftet werden könnten. Die Abwasserkanäle größer zu dimensionieren, würde Millionen verschlingen. Schwerverletzte nach Zusammenstoß Am frühen Freitagnachmittag sind auf der Landesstraße 44 nahe Revensdorf zwei Autofahrer bei einem Frontalzusammenstoß schwer verletzt worden. Die Polizei sperrte die Straße sofort komplett, konnte aber zum Unfallhergang zunächst wenig sagen. Allerdings gebe es verschiedene Zeugenaussagen, die erst ausgewertet werden sollten. Fest steht, dass die 19 Jahre alte Lenkerin eines VW Golf in Richtung Revensdorf fuhr und der 38-jährige Mann aus Gettorf ihr mit seinem Hyundai entgegen kam. Beide Fahrzeuge prallten zusammen, wobei die Frau so schwer eingeklemmt war, dass die Feuerwehr knapp eine halbe Stunde benötigte, um sie aus dem Fahrzeugwrack zu befreien. Die eigentliche Unfallursache blieb zunächst ungeklärt. Beide Verunglückten kamen in nahe gelegene Krankenhäuser. Die Strecke blieb etwa zwei Stunden voll gesperrt. Man könnte ihn den Dostojewski der USA nennen. Philip K. Dick war ein Gottsucher, ein Metaphysiker, seine Romane und Erzählungen haben auch etwas Serielles. Verblüffend die Verwandtschaft im Äußeren: die stechenden Augen, der Bart, die hohe Stirn. Und so, wie Fjodor M. Dostojewski mit seinem massiven Oeuvre als Ergründer und Apologet der russischen Seele zu verstehen ist, liest man Philip K. Dick als amerikanischen Propheten, der im eigenen Land durchaus etwas gilt. Einige Titel sind im Heyne Verlag erschienen, die Haffmans-Kassette mit den 118 Erzählungen vertreibt Zweitausendeins. Dick erklärt Amerika - das Reich des atemberaubenden technischen Fortschritts, gepaart mit Paranoia, Sicherheitswahn und dem Glauben, auserwählt zu sein. Dick hatte Gotteserlebnisse, seine späten Bücher lesen sich wie eine Mischung aus der Offenbarung des Johannes und einem Computer-Manual. Vielleicht war er verrückt, hatten Drogen seinem Hirn zugesetzt. Er hat kapiert, früh schon, dass die Rechner Divinitäten sind. Er schrieb eine Theologie des Computers und fragte, was einen Menschen von einer Maschine unterscheidet, den Schöpfer von seinem Geschöpf. Das ist das "Blade Runner"-Problem. Das Töten. Ein Meister der Science Fiction. Ein fantastischer Schriftsteller. Seine Storys haben Filmregisseure wie Ridley Scott, Paul Verhoeven und Steven Spielberg inspiriert. Diese Geschichte ist jetzt besonders signifikant. Der "Minderheiten-Report" stammt aus dem Jahr 1956, er verströmt den Geruch des Kalten Kriegs und der McCarthy-Tribunale. Es wird hier das Prinzip des "Prä-Verbrechens" entwickelt, "Pre-Crime", also das, was inzwischen mehr oder weniger offizielle Doktrin des Weißen Hauses ist. In Dicks Welt, die der unseren erschreckend gleicht, schauen Mutanten in die Zukunft - und die Polizei greift zu. "Wir erfassen Individuen, die gegen keinerlei Gesetz verstoßen haben", sagt der Chef der Behörde. "Wir schnappen sie uns, noch bevor sie ein Gewaltverbrechen begehen können". Und: "In unserer Gesellschaft gibt es keine Schwerverbrecher, dafür haben wir ein Straflager voller Pesudoverbrecher". Sie lesen Zeitströme. Sie nehmen an, dass Schlimmes geschieht, und verhindern, dass der kriminelle Gedanke in die Tat umgesetzt wird. Dicks Erzählung wirkt wie die Blaupause für die Anti-Terror-Gesetze und den Abhörrausch der NSA. Antizipation des Anschlags: So funktioniert auch Obamas Drohnen-Philosophie und -Praxis. Aber Dicks Story ist noch nicht zu Ende. Der Polizeichef beklagt, dass es keine Gewaltenteilung mehr gebe, das Militär kontrolliert den Alltag - und was vom Staat übrig ist. Dann wird der Überwacher selbst überwacht und eines zukünftigen Verbrechens überführt. Das System dreht durch. Es ist perfekt, aber es lügt. Es erfindet seine eigenen Voraussetzungen. Nimmt Irrtümer und Opfer nicht nur in Kauf, sondern baut sich darauf auf. Das System schafft die Gefahr, die es bekämpft. Philip K. Dick lesen heißt, immer wieder, der Wahrheit näher zu kommen. Spähaffäre um Merkel in Russland aussagen Der frühere US-Geheimdienstexperte Edward Snowden könnte in der US-Spähaffäre um Bundeskanzlerin Angela Merkel auch in seinem russischen Asyl Aussagen machen. Vertreter der deutschen Bundesanwaltschaft könnten entweder schriftlich Fragen stellen oder den 30-Jährigen auch persönlich in Russland treffen, meldete die Agentur Interfax. Zuvor hatte der Grünen-Bundestagsabgeordnete Hans-Christian Ströbele gestern als erster deutscher Politiker Snowden in Moskau getroffen, um mit ihm über die Affäre zu sprechen. NSA-Enthüllungen verstärken Firmenparanoia wegen staatlicher Überwachung An einem milden Tag Ende August flog ein deutscher Polizeihubschrauber tief über das US-Konsulat in Frankfurt am Main, der Finanzhauptstadt Deutschlands. Auf Anweisung des Bundesamtes für Verfassungsschutz und Terrorismusbekämpfung (BVT), des deutschen Innengeheimdienstes, sollte er das Dach des US-Außenpostens fotografieren, der sich weniger als 5 km von der Europäischen Zentralbank und der Bundesbank befindet. Laut deutschen Medien wollte das BVT das Vorhandensein von Überwachungsantennen nachweisen und die Aktion führte zu einem Wortwechsel zwischen den USA und dem deutschen Außenministerium in Berlin. James Clapper, US-amerikanischer Director of National Intelligence, bestand im September erneut darauf, dass die USA keine Möglichkeiten der Auslandsspionage einsetzten, „um die Betriebsgeheimnisse ausländischer Unternehmen im Auftrag US-amerikanischer Firmen zu stehlen, damit diese ihre internationale Wettbewerbsfähigkeit oder ihren Gewinn ausbauen könnten.“ Doch seit Edward Snowden, der zum Whistleblower gewordene einstige Mitarbeiter, mit der Veröffentlichung seines Füllhorns an US-amerikanischen Überwachungsgeheimnissen begonnen hat, sind sich europäische Regierungen und Unternehmenschefs nicht mehr sicher, ob sie den Direktor beim Wort nehmen können. Berichte, wonach die amerikanische National Security Agency die brasilianische Ölfirma Petrobas ausspioniert und sich Daten amerikanischer Cloud-Anbieter einschließlich Google und Yahoo beschafft hat, haben die Firmenparanoia wegen staatlicher Überwachung auf einen neuen Höchststand gebracht. Das Fass zum Überlaufen brachte die Enthüllung, dass Kanzlerin Angela Merkels Telefon verwanzt war, möglicherweise schon seit zehn Jahren. Wenn die mächtigste Person in Europa ins Visier geraten kann, dann sind mit Sicherheit auch Unternehmensleitungen potenzielle Ziele. Snowden hat die intensive Zusammenarbeit zwischen US-Geheimdiensten und Unternehmen transparent gemacht. Ich glaube, es ist denkbar, dass diese Daten zum gegenseitigen Nutzen verwendet werden. „Deutschland muss aufwachen“, erklärt Oliver Grün, Präsident des BITMi, der kleine und mittlere IT-Firmen in Deutschland vertritt. Deutsche Unternehmen glauben, die USA stellten nun ein beinahe ebenso großes Risiko dar wie China, wenn es um Industriespionage und Datendiebstahl gehe, so eine Umfrage, die im Juli von der Beraterfirma EY veröffentlicht wurde. In den von Snowden durchgesickerten Dokumenten gab es allerdings bisher keinen Beleg, dass die USA die Betriebsgeheimnisse ausländischer Unternehmen an eigene Firmen weitergegeben haben. Politiker haben ihre Sorge darüber zum Ausdruck gebracht, dass der EU bestimmte IT- und Internet-Möglichkeiten fehlten und sie ihre Abhängigkeit von den USA reduzieren sollte. Die Unternehmen sind diesbezüglich skeptisch. Im Bundestag wurde vorgeschlagen, wir sollten ein deutsches Google aufbauen. Ich kann nur meine Augen schließen und sie langsam wieder öffnen ... „So funktioniert das nicht“, sagt Hasso Plattner, Vorsitzender des deutschen Softwareherstellers SAP. Wenn man eine starke europäische IT-Industrie gewollt hätte, dann hätte man sie nicht vor 20 Jahren aussterben lassen sollen. Alles in Deutschland wird subventioniert, von der Kohle über Autos bis zur Landwirtschaft. Alles, bis auf die IT-Branche. Dennoch haben Reichweite und technische Raffinesse der von den Snowden-Enthüllungen aufgedeckten US-Spionagebehörden Firmen schockiert, die vorher das größte Spionagerisiko in China gesehen hatten. Beim Cloud Computing findet eine große Veränderung statt, weil europäische Unternehmensleiter sich nun bewusster sind, dass in den USA gespeicherte Daten der dortigen Rechtsprechung unterliegen und deshalb potenziell gefährdet sind. Laut einer von der Cloud Security Alliance, einer Handelsinstitution, durchgeführten Umfrage verwarfen nach den Enthüllungen über die US-amerikanischen Data-Mining-Aktivitäten mit Prism etwa zehn Prozent der nicht in den USA ansässigen Mitglieder Pläne, einen amerikanischen Anbieter zu nutzen. Jim Snabe, stellvertretender Geschäftsführer von SAP, sagt: „Wir sehen eine neue Frage von Kunden, die es vor einem Jahr noch nicht gab – sie lautet: Wo werden meine Daten gespeichert und können Sie garantieren, dass diese physisch in diesem Rechtsraum bleiben?“ Viele deutsche Unternehmensleiter vertreten die Ansicht, die jüngsten Berichte bestätigen einfach nur, was sie sowieso schon wussten, nämlich dass mächtige Staaten ihre wertvollsten Geheimnisse stehlen wollen und diese deshalb um jeden Preis bewacht werden müssen. Dass Wirtschaftsspionage stattfindet, ist keine Überraschung. Das war schon immer so. „Es war viele Jahre lang ein Thema und hat sich durch die aktuelle Diskussion nicht fundamental geändert“, sagt Kurt Bock, Vorsitzender des Chemieunternehmens BASF. Die Amerikaner spionieren uns auf kommerzieller und industrieller Ebene aus, so wie wir das auch machen, denn es ist im nationalen Interesse, unsere Unternehmen zu verteidigen. Die Unternehmensführung prahlt normalerweise nicht über die Gegenmaßnahmen, die man ergriffen hat, denn das verschafft Angreifern Vorteile. In großen Unternehmen wird Mitarbeitern schon lange eingebläut, dass das Mitnehmen eines kostenlosen USB-Sticks auf einer Messe oder das unbewachte Liegenlassen eines Laptops im Hotelzimmer nicht ratsam sei, gelinde gesagt. Ulrich Hackenberk, Vorstandsmitglied bei Autohersteller Audi, sagt, dass es seit Jahren zur Standardpraxis gehöre, vor einem Vorstandstreffen die Handys einzusammeln, damit sie nicht als Abhörgeräte verwendet werden können. Das deutsche BVT rät Führungskräften, einfache Prepaid-Handys zu verwenden, wenn sie auf Auslandsreisen gehen, weil Smartphones möglicherweise kompromittiert sein können. Die Prepaid-Handys werden hinterher weggeworfen. Es besteht allerdings die Sorge, dass kleine und mittlere Unternehmen angreifbar gegenüber Hacking und Überwachung bleiben. In Deutschland sind viele dieser Unternehmen weltweite Marktführer in der jeweiligen Nische. „Kleinen und mittleren Unternehmen fehlen oft die Erfahrung, das Personal und die finanziellen Ressourcen, um Betriebsgeheimnisse effektiv gegen nicht autorisierten Zugriff zu schützen“, warnt das BVT in einem Bericht. Die USA warnen eigene Firmen vor Wirtschaftsspionage durch andere Länder. Laut Washington Post wurden im US National Intelligence Estimate im Februar Frankreich, Russland und Israel hinter China auf Rang zwei der Länder eingeordnet, die sich zur Beschaffung von Wirtschaftsdaten des Hackings bedienten. Ein Vorstandsmitglied eines deutschen Blue-Chip-Unternehmens stimmte zu, wenn es um Wirtschaftsspionage gehe, dann „sind die Franzosen die Schlimmsten“. Bernard Squarcini, ehemaliger Leiter des französischen Innengeheimdienstes DCRL, wurde diesen Monat in einem Interview mit folgenden Worten zitiert: „Die Geheimdienste wissen sehr genau, dass alle Länder, selbst wenn sie im Kampf gegen den Terror zusammenarbeiten, ihre Verbündeten ausspionieren.“ Hechingen: Messe gibt Antwort auf Hochzeits-Fragen "Die Ehe ist die wichtigste Entdeckungsreise, die der Mensch unternehmen kann", sagte der Philosoph Sören Kierkegaard. Tipps, wie zumindest die Hochzeitsfeier gelingt, gab nun eine Spezialmesse in der Domäne in Hechingen. Vertreten waren wichtige Anbieter rund um eine Hochzeit. Ein Trend: Der Retro-Look hat wieder Einzug gehalten. Das beginnt etwa bei den Hochzeitskleidern. Weiß ist Muss, am besten gedeckt oder in Creme. Vorne sind die vielfach gerüschten und mit Stickereien versehenen Kleider geschlossen, oft mit einem Schleier, hinten hingegen gehen sie den Rücken hinab und enden oft in einer Schleppe. Da allerdings scheiden sich die Geister, wie Stefanie Koch vom Modehaus Kleidermüller betont. Bei Herren dominiert der Anzug mit Weste und Plastron, aber es können auch cremefarbige oder braune Kombinationen gewählt werden. Wichtig sei die Auswahl des Lokals, wurde erklärt. Schmucklose Nebenzimmer sind nicht optimal, das Ambiente sollte besonders sein. Hier machte die Domäne auf ihr eigenes Angebot in der Remise aufmerksam. Wer dann mit der Kutsche vorfahren will, für den hat Uwe Link ein Angebot. "Kutschen sind aber auch für Jungesellinnenabschiede beliebt", meint er. Romantik ist auch für Einladungskarten, Blumenarrangements und auch für Hochzeitsbilder gefragt. Immer mehr in Mode komme das "After-Wedding-Foto" - also Aufnahmeserien an besonderen Orten, vorzugsweise etwa Wasserfälle, einige Tage nach dem Fest, aber in Hochzeitskleidung, erklärte Elisabeth Keidel. Viele weitere Details einer gelungenen Hochzeit wurden am Sonntag in der Domäne präsentiert. Blumenarrangement, Ringe, Hochzeitstafel, Kuchen und auch ein Zauberer, wie etwa Marko Ripperger, der Gäste stilvoll unterhalten kann. Nicht zu vergessen die richtige Kosmetik und Nagelpflege. Alles für ein unvergessliches Fest. Hundefreunde erfolgreich Zum wiederholten Mal waren die Sportler der Hundefreunde Bitz erfolgreich auf einem Rally-Obedience-Turnier. Achim Scherrenbacher startete in Kandel mit zwei Hunden; mit seiner Hündin Sandy erzielte er in der Klasse Beginner 94 Punkte und sicherte sich den fünften Platz, und mit dem 15 Monate alten Marley brachte er es mit 87 Punkten auf Platz zwölf. Susi Höpp stellte sich mit ihrem Woody in der Klasse 1 den kritischen Blicken des Leistungsrichters. Eltern eines Teenagers aus Georgia, der bei tragischem Unfall starb, glauben an Mord Die Eltern des Teenagers, dessen Leiche in einer zusammengerollten Ringermatte in der Turnhalle seiner High School gefunden wurde, sind überzeugt, dass ihr Sohn ermordet wurde, erklärte der Anwalt der Familie am Donnerstag. Kendrick Johnson aus Valdosta im US-amerikanischen Bundesstaat Georgia wurde am 11. Januar in einer aufrecht aufgestellten Matte gefunden, die hinter der Tribüne in der Schulturnhalle stand. Die Untersuchungsbeamten des Sheriffs von Lowndes County kamen zu dem Schluss, dass Johnson bei einem tragischen Unfall starb, was die Familie des 17-Jährigen jedoch anzweifelt. „Sie sind davon überzeugt, dass ihr Sohn ermordet wurde“, erklärte Benjamin Crump, der Anwalt von Kenneth und Jacquelyn Johnson, gegenüber FoxNews.com. Sie hätten nie geglaubt, er sei so gestorben, wie es der Sheriff geschlussfolgert habe. „Sie sind der Ansicht, dass es jeder Logik entbehre, gegen die Gesetze der Physik wie auch gegen den gesunden Menschenverstand verstoße“, so Crump. Vielmehr seien sie überzeugt, die Wahrheit werde vertuscht, um die Person oder Personen zu schützen, die für den Tod ihres Sohnes verantwortlich seien. „Ihr Sohn ging zum Lernen in die Schule und kam im Leichensack zurück“, kommentiert er. US-Staatsanwalt Michael Moore sagte am Donnerstag, es werde eine formelle Ermittlung zum Tod Johnsons geben, da eine Reihe wichtiger Fragen noch ungeklärt seien. Was war die Todesursache? Ist sein Tod auf ein Verbrechen zurückzuführen? Das erklärte Moore bei einer Pressekonferenz am Donnerstagnachmittag. Ich folge den Fakten, in welche Richtung sie auch führen. Mein Ziel ist es, die Wahrheit herauszufinden. „Ich vertrete die Auffassung, dass eine hinreichende Grundlage für eine formelle Ermittlung besteht“, sagte er. Moore erklärte gegenüber Reportern, die anfängliche Autopsie deute darauf hin, dass Johnson an den Folgen einer „positionsbedingten Erstickung“ verstorben sei. Eine zweite Autopsie habe allerdings eine andere Todesursache ergeben, so Moore. „Es gibt eine Reihe von Fragen, die beantwortet oder bestätigt werden müssen“, sagte er. Moore fügte hinzu, falls es ausreichende Beweise für eine strafrechtliche oder zivilrechtliche Untersuchung zum Tode Johnsons gebe, werde er das FBI mit der Durchführung der Ermittlungen beauftragen. Ein Vertreter der Behörde des County Sheriffs war auf unsere Anfrage am Donnerstag hin nicht sofort zu einem Kommentar bereit. Ein Gericht im Süden Georgias ordnete am Mittwoch an, dass die Behörden alle Überwachungsvideos freigeben müssen, die die Ermittler überprüft haben. Die Eltern des Teenagers sagten, sie hofften, dass die Videoaufzeichnungen Hinweise darauf enthielten, wie er gestorben sei. CDC veröffentlichen Allergierichtlinien für Schulen Am Mittwoch veröffentlichten die Centers for Disease Control and Prevention (CDC) eine Reihe von Richtlinien für den Umgang mit Lebensmittelallergien von Kindern an Schulen. Dies sind die ersten derartigen Richtlinien, die die US-amerikanische Regierung herausgegeben hat, da die Anzahl der schulpflichtigen Kinder mit Lebensmittelallergien steigt. Eines von 20 Kindern in den Vereinigten Staaten hat inzwischen eine Lebensmittelallergie. Die Verbreitung von Lebensmittelallergien unter Kindern hat laut CDC zwischen 1997 und 2007 um 18 Prozent zugenommen. Die Leitlinien enthalten Informationen für Schulen, die beim Lehrkörper und den Mitarbeitern ein Bewusstsein für Lebensmittelallergien wecken sollen und wie mit Kindern umgegangen werden soll, die allergische Reaktionen zeigen. Es wird auch empfohlen, dass Schulen Epinephrin vorrätig haben – die Auto-Injektion der Marke EpiPen wird am häufigsten verwendet –, um einer potentiell tödlichen Überempfindlichkeitsreaktion begegnen zu können. Die Gesetzgeber in den Bundesstaaten haben kürzlich die Vorschriften geändert, damit Schulen Epinephrin einfacher vorrätig halten können. Im Bericht ist auch eine Liste typischer Symptome enthalten, die von Kindern genannt werden, die eine allergische Reaktion aufweisen. Kinder sagen vielleicht: „Es fühlt sich an, als ob etwas auf meine Zunge drückt“, „Meine Zunge fühlt sich an, als ob ein Haar darauf liegt“ oder „Meine Zunge kribbelt“. Eltern von intersexuellen Kindern können „Geschlecht unbestimmt“ wählen Deutschland ist die erste europäische Nation, in der ein drittes Geschlecht für Kinder anerkannt ist, die mit nicht eindeutigen Genitalien geboren wurden. Neugeborenen wird nicht mehr starr männlich oder weiblich zugewiesen. Nach dem neuen Gesetz müssen Eltern kein Geschlecht mehr für solche Kinder erklären, sondern können „unbestimmt“ oder „nicht festgelegt“ auf der Geburtsurkunde angeben. Ziel des Gesetzes ist es, den Druck von Eltern zu nehmen, damit sie keine übereilten Entscheidungen in Bezug auf Operationen für eine Geschlechtszuweisung bei Neugeborenen treffen müssen, und die Diskriminierung von intersexuellen Menschen zu bekämpfen. Eine intersexuelle Person sagte laut BBC Jahre später: „Ich bin weder Mann noch Frau.“ Ich bleibe das Flickwerk, das von Ärzten erschaffen wurde, verstümmelt und voller Narben. Schätzungsweise kommt eines von 2.000 Kindern jedes Jahr weder als Junge noch als Mädchen zur Welt. Sie gehören zu den Intersexuellen, einer Gruppe, die unter die Diagnose „Sexualdifferenzierungsstörung“ (DSD) fallen, ein Sammelbegriff für Menschen mit atypischen Chromosomen, Keimdrüsen (Eierstöcken oder Hoden) oder ungewöhnlich entwickelten Genitalien. Wallis Simpson war möglicherweise intersexuell. Das Verständnis der Geschlechteridentifikation ist noch immer nicht sehr gut entwickelt, doch raten die meisten Experten in den USA dazu, man solle die besten verfügbaren Informationen zur Geschlechtszuweisung verwenden, falls eine Bestimmung nicht möglich sei, und nicht auf die psychologische und körperliche Entwicklung des Kindes warten, ehe man sich – wenn überhaupt – für eine Operation entscheide. Der New Yorker Psychiater Dr. Jack Drescher, der sich auf die Problematik der Geschlechteridentifikation spezialisiert hat, sagte, das neue deutsche Gesetz „klinge nach einer guten Sache“. Intersexuelle Kinder stellen ein ethisches Dilemma dar. „Manche Menschen haben lebensbedrohliche Erkrankungen, die einen chirurgischen Eingriff erforderlich machen, doch für die meisten Kinder gilt das nicht“, sagte er. Man könne eine Geschlechtszuweisung ohne Operation vornehmen und dann abwarten, wie sich die Identität entwickle. Die wissenschaftlichen Daten darüber, wie ein Kind überhaupt seine geschlechtliche Identität entwickelt, sind nicht sehr genau. Niemand weiß, warum es geschieht. Es ist wie das Geheimnis, weshalb Menschen homosexuell sind. In einem Bericht an die Europäische Kommission aus dem Jahr 2011 heißt es, intersexuelle Menschen seien von transsexuellen oder Transgender-Personen zu unterscheiden, denn ihr Status sei nicht geschlechtsbezogen, sondern durch ihre biologische Konstitution bedingt, die weder ausschließlich männlich noch weiblich ist, sondern typischerweise beides gleichzeitig oder nicht klar als eines davon definiert. Diese Eigenschaften zeigten sich in nachrangigen sexuellen Charakteristiken wie Muskelmasse, Behaarung, Brüste und Statur, vorrangigen sexuellen Charakteristiken wie Fortpflanzungsorgane und Genitalien oder in Chromosomstrukturen und Hormonen. Der Bericht gibt auch einen Überblick über die Diskriminierung, der sich intersexuelle und Transgender-Personen im Berufsleben ausgesetzt sehen sowie über das Ausmaß von Belästigung, Gewalt und Vorurteilskriminalität. Nicht mit dem Geschlechterbild übereinstimmende Jungen haben jetzt ein spezielles Camp. Inzwischen ist es in Australien und Nepal für Erwachsene möglich, auf offiziellen Dokumenten männlich, weiblich oder „drittes Geschlecht“ anzugeben. Im Juni wurde Australier Norrie May-Welby (52) als weltweit erste „geschlechtslose“ Person anerkannt, nachdem ein Gericht die lebenslange Beibehaltung eines „nicht festgelegten“ Geschlechtsstatus zugestanden hatte. Deutsche Ausweise haben neben M und W künftig eine dritte Zuweisung, X für intersexuell, so das Innenministerium. Im benachbarten Frankreich sind Geschlechtsthemen immer noch kontrovers, so eine Nachrichtenmeldung auf France 24. 2011 unterzeichneten Dutzende französische Abgeordnete des streng katholischen Landes eine Petition, dass die „Geschlechtertheorie“ aus Schulbüchern entfernt werden solle. Die US-amerikanische Website Catholic Online hat sich ebenfalls gegen das deutsche Gesetz ausgesprochen, mit der Begründung: „Wenn die Welt in einen neuen Zustand gezerrt wird, wo das Geschlecht eine Entscheidung darstellt, sexuelle Aktivität aber nicht, dann verdrehen wir zwei weitere Säulen der Zivilisation.“ Die Mutter eines Neugeborenen aus Maryland erklärte gegenüber Baby Zone, sie fände es besser, wenn Babys bei der Geburt ein Geschlecht zugewiesen werde. „Das Elterndasein ist auch ohne weitere Einschränkungen schon stressig genug, besonders wenn man das Geschlecht des eigenen Kindes nicht kennt“, sagte sie der Elternwebsite. Kinder brauchen Stabilität und Sicherheit. Historisch gesehen wurden Kindern, die sowohl mit männlichen als auch weiblichen Geschlechtsteilen geboren wurden, als Hermaphroditen bezeichnet, nach dem attraktiven griechischen Gott, der beide Geschlechter hatte. Noch vor zehn Jahren betrachtete die Medizin das Geschlecht als etwas, das man auslöschen und dann neu aufbauen könne. Doch inzwischen werden die ethischen Grundlagen einer Operation angezweifelt, nachdem nun bekannt ist, wie komplex die geschlechtliche Identität ist, und dass Ärzte auch falsch liegen können, weil sie nicht wissen, wie sich das Kind beim Aufwachsen mit dem von ihnen zugewiesenen Geschlecht fühlt. „Mitte des 20. Jahrhunderts nannte man das einen ,psychiatrischen Notfall‘“, sagte Drescher. Wenn ein solches Kind geboren wurde, dann rief man nicht den Psychiater, sondern den Chirurgen. Die herrschende Theorie über die Behandlung von Kindern mit nicht eindeutigen Genitalien geht auf Dr. John Money von der Johns Hopkins University zurück, der die Ansicht vertrat, das Geschlecht sei formbar. Er prägte den Begriff „geschlechtliche Identität“ und argumentierte, soziale und umweltbedingte Anstöße – wie die Eltern ein Kind erziehen – interagierten mit den Genen und Hormonen eines Kindes und prägten so, ob sich eine Person als männlich oder weiblich betrachte. Doch in einem unter dem Titel „John/Joan“ bekannt gewordenen Fall aus dem Jahr 1966 wurden seine Theorien kontrovers. Er riet den Eltern eines Jungen, dessen Penis bei einer verpfuschten Beschneidung abgetrennt worden war, das Kind ganz zu kastrieren und auch seine Hoden zu entfernen und ihn dann als Mädchen großzuziehen. „Money präsentierte diesen Fall als erfolgreiches Beispiel für eine Umwandlung, was er aber nicht war“, so Drescher. Als der Junge etwa 15 war, wechselte er zurück zum männlichen Geschlecht und heiratete eine Frau. Mit 38 aber beging er Selbstmord. Laut Drescher gibt es noch immer Ärzte, die dieses Modell praktizieren würden. Doch in den 1990er Jahren, mit dem Einzug des Internet, sind Überlebende dieser Geschlechtsoperationen an die Öffentlichkeit getreten, die „nicht glücklich mit dem Ergebnis“ sind. So etwa bei Jim Bruce, einem 36 Jahre alten Autor aus Montana, der mit XY-männlichen Chromosomen geboren wurde, aber zweideutigen Genitalien. Die Ärzte waren sich nicht klar darüber, ob er eine große Klitoris oder einen kleinen Penis hatte und waren überzeugt, er könne niemals ein „befriedigendes Leben“ als Mann führen. Also wurden sein externes Organ und die Hoden kurz nach der Geburt 1976 chirurgisch entfernt und er wurde als Mädchen großgezogen. Im Alter von 12 erhielt er weibliche Hormone. „Ich wusste, dass ich kein Mädchen bin“, erklärte er gegenüber ABCNews.com Ich war unglücklich, aber es war wirklich schwer, Fragen zu stellen. Im Alter von 18 sollte er eine Vaginalplastik erhalten. Doch da er depressiv war und wusste, dass etwas nicht stimmte, verlangte er seine medizinischen Akten. Was er herausfand, war schockierend. Ich wurde bei meiner Geburt sterilisiert – und keiner hat mir das jemals gesagt. Bruce wurde mit einer DSD geboren, durch die sein Körper nicht genug Testosteron zur Entwicklung der Genitalien produzieren konnte. Nachdem er die Wahrheit erfahren hatte, wechselte er wieder zur männlichen Identität, erhielt Testosteron-Injektionen und ließ sich seine Brüste entfernen. Durch die Operation ist er unfruchtbar geworden. Heute kämpft er für andere in einer Organisation namens Interface Project dafür, dass intersexuelle Menschen als normal wahrgenommen werden. Doch Anne Tamar-Mattis, Geschäftsführerin der in Kalifornien ansässigen Rechtsgruppe Advocates for Informed Choice, sorgt sich, dass das deutsche Gesetz „zum Abstempeln und Stigmatisieren ermutigen“ könne. „Viele Aktivisten sind besorgt, dass die deutsche Entscheidung Eltern ermutigen könnte, schnelle Entscheidungen zu treffen und dem Kind ein ,nicht festgelegt‘ zuzuweisen“, erklärte sie. Wir fürchten, das begünstigt Interventionen. Wir denken, es wäre besser, das männliche oder weibliche Geschlecht zuzuweisen und dann abzuwarten. Doch noch wissen wir nicht, wie sich das Gesetz auswirken wird, also können wir nur spekulieren. Tamar-Mattis sagte, ihre Organisation unterstütze das australische Gesetz, denn „es ermöglicht Erwachsenen die Anerkennung als drittes Geschlecht“. „Erwachsene sollten in der Lage sein, eigene Entscheidungen über ihr rechtliches Geschlecht zu treffen“, erklärte sie. Bei dem deutschen Gesetz geht es um die Zuweisung bei der Geburt. Das ist kein Kampf, zu dem man kleine Kinder zu diesem Zeitpunkt zwingen sollte. Wenn sie erwachsen sind, können sie selbst über ihren Körper entscheiden. Doch Dr. Arlene Baratz, eine Brustradiologin aus Pittsburg, die eine Tochter mit einer sexuellen Differenzierungsstörung hat und Hunderte andere in einer Selbsthilfegruppe unterstützt, sagt, das deutsche Gesetz „bevollmächtige“ sowohl Eltern als auch Kinder. Katie, die Tochter von Baratz, wurde mit männlichen Chromosomen geboren, hat aber eine DSD namens komplette Androgenresistenz. Wegen des Rezeptordefektes der Zielzellen für Testosteron entwickelte Katie weibliche Charakteristiken. Sie hat eine Vagina, aber keinen Uterus und keine Eierstöcke. Heute ist Katie 29 und verheiratet; sie arbeitet an der University of Pennsylvania als Mitarbeiterin in der Kinderpsychiatrie. Zwar ist sie unfruchtbar, hofft allerdings, durch Adoption oder eine Leihmutter ein Kind bekommen zu können. „Das Gesetz gibt Eltern Raum, wodurch sie nicht überstürzt Entscheidungen treffen müssen“, sagte Baratz. Es verschafft ihnen die Zeit, verschiedene Tests zu machen und Dinge zu klären und gibt ihnen so Zeit, ehe sie „männlich“ oder „weiblich“ schreiben. Auf diese Weise ist alles in Ordnung – man zieht das Kind groß und liebt es. Man hat ein wunderbares Baby und genießt das Elternglück. Und man muss nicht übereilt eine Operation vornehmen, die sich nicht mehr rückgängig machen lässt. „Das schließt die Kinder in die Entscheidung mit ein und beseitigt die Angst, die Eltern umtreibt, weil sie der Meinung sind, sie würden nicht das Richtige tun“, erläuterte sie. Letztendlich entscheidet das Kind über das Geschlecht, das besser zu ihm passt – und das ist wunderbar. Dadurch werden Kinder in die Lage versetzt, die Entscheidung selbst zu treffen. Unbekannte verletzen Mädchen durch Schuss aus Auto Unbekannte haben bei Schüssen aus einem Auto eine Zwölfjährige in Sachsen-Anhalt verletzt. Die Täter hatten am Donnerstagabend in Genthin vermutlich mit einer Luftdruckwaffe auf eine Gruppe von Kindern gefeuert. Das teilte die Polizei in Burg mit. Das Mädchen sei leicht an der linken Wade verletzt worden. Rettungskräfte brachten das Mädchen ins Krankenhaus. Der Schuss kam aus einem Kleinwagen, der an einer Gruppe von sechs Kindern vorbeigefahren war und plötzlich angehalten hatte. Zeugen sahen zwei Menschen in dem Auto sitzen. Die Täter schossen außerdem auf eine Bushaltestelle. Eine Scheibe zerbrach. Anschließend fuhren sie davon. Die Kriminalpolizei ermittelt, hieß es am Freitag. Bis zum jetzigen Zeitpunkt kann die Polizeiinspektion Kempten auf eine ruhige Halloween-Nacht zurückblicken. Die Beamten wurden lediglich zweimal zu eierwerfenden Kindern gerufen, welche diese gegen Hausfassaden warfen. Da die Hauseigentümer dies rechtzeitig erkannten und die Eierreste gleich entfernten, dürfte auch kein Sachschaden entstanden sein. Desweiteren wurden im Stadtgebiet wohl auch einige Sylvesterböller gezündet, aber auch hier ist kein Sachschaden entstanden. Ein Anwohner im Bischof-Freundorfer-Weg meldete, dass sein Pkw mit Klopapier eingewickelt und seine Radzierblenden entwendet wurden. Bis zum Eintreffen der Polizei hat der Mann seine Radzierblenden jedoch in unmittelbarer Nähe alle wieder aufgefunden, weswegen die Polizei nicht weiter tätig werden musste. Wohnen mit Zukunftsperspektive Eigentlich wohnt Waltraud Ries traumhaft. Ihr Haus liegt in einer ruhigen Wohngegend von Stuttgart mit viel Grün, einem alten Baumbestand, netten Nachbarn und auch nicht allzu viel Verkehr. In die Stadt sind es nur wenige Minuten mit öffentlichen Verkehrsmitteln. "Sie haben hoffentlich keine Angst vor Spinnen?", fragt Waltraud Ries und zeigt auf eine fette Spinne am Türrahmen. Ich suche schon seit einiger Zeit eine neue Wohnung für meinen Mann und mich. Aber Sie wissen ja, wie schwierig das in Stuttgart ist. Der Grund ist allerdings keine Spinnenphobie, sondern die Sorge, im Alter die vielen Treppenstufen zum Haus und in der Wohnung nicht mehr bewältigen zu können, erklärt sie. Zudem: Seit einer Meniskus-Operation hat die Mittfünfzigerin am eigenen Leib erfahren müssen, was es bedeutet, sich mit Handicap von Stockwerk zu Stockwerk zu bewegen. Vor kurzem erst ist ein Buch von ihr erschienen zum Thema 'Glücklich wohnen im Alter - Welche Wohnform ist die beste für mich?'. 'Unsere Wohnung ist das beste Beispiel dafür, was im Alter gar nicht geht', beginnt sie zu erzählen. Als sie vor mehr als 20 Jahren mit ihrem Mann in die Maisonette-Wohnung zog, war es einfach nur eine schöne Wohnung mitten im Grünen. Heute mit Mitte fünfzig denkt Waltraud Ries anders darüber. Sie weiß aber auch, dass sie zu den wenigen Menschen gehört, die sich überhaupt mit dem Thema 'Wohnen im Alter' auseinandersetzen. Die meisten verdrängen es, solange es geht. Alt werden immer nur die anderen', sagt sie schmunzelnd. Erst wenn der Leidensdruck wirklich groß ist, mache man sich Gedanken. 'Dann kann es aber auch schon zu spät sein', so Ries. In ihrem Buch stellt die Innenarchitektin 17 Wohnmodelle für ein selbstbestimmtes Wohnen im Alter vor. 'Welche Wohnform man aber wählt, ist immer eine Individualentscheidung', erklärt sie. D i e Lösung gebe es nicht für das Alter. Selbst wer sich den Altersruhesitz in der Toskana oder der Bretagne leisten könne, sollte sich immer überlegen, dass er auch krank werden könne. Und: 'Ohne gute Kenntnisse der Landessprache vereinsame man auch im Dolce Vita,' gibt die Fachbuchautorin Aussiedlungswilligen zu bedenken. Unter ihren Modellen finden sich klassische Betreuungsmodelle, alternative Wohnformen oder die oft zitierte Rentner-WG. Im Alter hat jeder so seine Ticks und Macken 'Für mich wäre so eine Wohngemeinschaft aber nichts', meint sie mit einem Augenzwinkern. Schon gar nicht wie in einer Studenten-WG mit einem gemeinsamen Bad und einer Küche. 'Im Alter braucht man einfach auch seine Rückzugsräume', so Ries. Dass eine Senioren-Wohngemeinschaft dennoch funktionieren kann, will die Buchautorin dennoch nicht ausschließen. Das müsse dann aber anders verlaufen als in der klassischen Studenten-WG. Und manchmal will man einfach auch nur seine Ruhe', glaubt sie. Mit dieser Meinung steht sie zumindest in der Landeshauptstadt nicht allein da. 'Die meisten alten Menschen in Stuttgart wollen so lange es geht in ihrer eigenen Wohnung bleiben', ist auch die Erfahrung von Theresa Rütten, der Leiterin des Bürgerservices Leben im Alter der Landeshauptstadt. Ihre Dienststelle berät Menschen rund um das Thema 'Älter werden'. Deshalb würden gerade ältere Menschen häufig auch Unbequemlichkeiten und Einschränkungen in Kauf nehmen, nur um in ihrer gewohnten Umgebung bleiben zu können, das ist auch die Erfahrung der Stiftung Warentest. Dabei gibt es heute viele Möglichkeiten, das Haus oder die Wohnung barrierefrei zu gestalten. Ries empfiehlt allen, die sich mit dem altersgerechten Umbau ihres Hauses oder ihrer Wohnung beschäftigen, sich erst einmal gründlich zu informieren und nicht den erstbesten Handwerker zu beauftragen. Heute gibt es auch für den altersgerechten Umbau Spezialisten. Selbst in der Mietwohnung lasse sich das eine oder andere realisieren, und wenn es nur die Toilettensitzerhöhung ist, klärt die Innenarchitektin auf. Aber nicht immer lässt sich die bestehende Wohnung altersgerecht und damit barrierefrei umgestalten, auch wenn sie noch so schön liegt. Diese Erfahrung musste Waltraud Ries machen. Zwar könnte man innerhalb der Wohnung einen Treppenlift installieren, der ebenfalls mit Treppen gepflasterte Weg bis an die Wohnungstür wäre aber das weitaus größere Hindernis. Sie wird weitersuchen, bis sie das ideale Objekt für sich und ihren Mann gefunden hat. Vor dem Umzug graut es ihr mehr als vor der Spinne an ihrer Wohnungstür. USA wollen Snowden weiter strafrechtlich verfolgen Die USA haben ihre Haltung zum früheren US-Geheimdienstmitarbeiter Edward Snowden nicht geändert. Ihm werde weiterhin vorgeworfen, unerlaubt geheime Informationen weitergegeben zu haben. Daher müsse er sich in den USA einem Strafverfahren stellen, sagte die Sprecherin des US-Außenministeriums, Jennifer Psaki, in Washington. Auch die jüngsten Äußerungen von Snowden würden daran nichts ändern. Zuvor hatte der deutsche Grünen-Politiker Hans-Christian Ströbele nach einem Treffen mit Snowden in Moskau an die USA appelliert, ihn nicht weiter mit Strafe zu bedrohen. Psaki betonte, dass es sich bei Ströbeles Äußerungen um die eines Parlamentariers handele und nicht um die eines deutschen Regierungsmitglieds. Geheimdienstenthüller Edward Snowden ist grundsätzlich zu einem Gespräch mit deutschen Behörden bereit. Zuerst will er jedoch seine Situation geklärt wissen. Das hat der von den USA gesuchte ehemalige NSA-Mitarbeiter in einem nicht adressierten Schreiben klargemacht, das der Grünen-Politiker Hans-Christian Ströbele am Freitag nach einem Treffen mit Snowden veröffentlichte und an Bundesregierung, Bundestag und Generalbundesanwalt weiterleitete. Das Schreiben hat nach einer von Ströbele verbreiteten Übersetzung folgenden Wortlaut: An die Zuständigen Ich wurde gebeten, Ihnen bezüglich Ihrer Untersuchung zur Massenüberwachung zu schreiben. Ich heiße Edward Joseph Snowden und war früher vertraglich bzw. über eine Direktanstellung als technischer Experte bei der National Security Agency (NSA), der Central Intelligence Agency (CIA) und der Defense Intelligence Agency (DIA) der Vereinigten Staaten beschäftigt. Im Zuge meiner Beschäftigung in diesen Einrichtungen wurde ich Zeuge systematischer Gesetzesverstöße meiner Regierung, die mich aus moralischer Pflicht zum Handeln veranlassten. Als Ergebnis der Veröffentlichung dieser Bedenken sah ich mich ich einer schwerwiegenden und anhaltenden Hetze ausgesetzt, die mich zwang, meine Familie und meine Heimat zu verlassen. Ich lebe derzeit im Exil und genieße befristetes Asyl, das mir die Russische Föderation gemäß internationalem Recht gewährt. Ich bin ermutigt von der Resonanz auf mein politisches Handeln, sowohl in den USA als auch anderswo. Bürger auf der ganzen Welt und auch hohe Amtsträger - einschließlich der Vereinigten Staaten - haben die Enthüllungen zu einem System der allumfassenden Überwachung, das niemandem Rechenschaft schuldig ist, als einen Dienst an der Öffentlichkeit beurteilt. Diese Spionage-Enthüllungen zogen viele Vorschläge zu neuen Gesetzen und Richtlinien nach sich, die auf den vormals verdeckten Missbrauch des öffentlichen Vertrauens abzielten. Der Nutzen für die Gesellschaft aus diesen gewonnenen Erkenntnissen wird zunehmend klarer; gleichzeitig wurden die in Kauf genommenen Risiken sichtlich vermindert. Obwohl das Ergebnis meiner Bemühungen nachweislich positiv war, behandelt meine Regierung Dissens nach wie vor als Treuebruch und strebt danach, politische Meinungsäußerung zu kriminalisieren und unter Anklage zu stellen. Dennoch: Die Wahrheit auszusprechen ist kein Verbrechen. Ich bin zuversichtlich, dass die Regierung der Vereinigten Staaten mit Unterstützung der internationalen Gemeinschaft diese abträgliche Haltung ablegen wird. Ich hoffe, dass ich, wenn die Schwierigkeiten dieser humanitären Lage beigelegt sind, in der Lage sein werde, mich an der verantwortungsvollen Aufklärung der Sachverhalte bezüglich der in den Medien getätigten Aussagen, insbesondere im Hinblick auf Wahrheit und Authentizität der Berichte, angemessen und gesetzesgemäß zu beteiligen. Ich freue mich auf ein Gespräch mit Ihnen in Ihrem Land, sobald die Situation geklärt ist und danke Ihnen für ihre Bemühungen, das internationale Recht zu wahren, das uns alle beschützt. Edward Snowden bezeugt durch Hans-Christian Ströbele Kindergarten hat einen privaten Käufer gefunden "Das Gebäude ist in guten Händen", sagt Winterlingens Bürgermeister Michael Maier. Den ehemaligen Kindergarten in der Gartenstraße hat die Kommune an eine Privatperson verkauft. Dem Verkauf stimmte der Gemeinderat in seiner jüngsten Sitzung im nicht öffentlichen Teil zu. Das Gebäude wechselte seinen Besitzer zu einem "angemessenen" Preis. "Die Gemeinde ist zufrieden", betont Maier. Im Haushalt waren 100 000 Euro angesetzt. Noch nicht klar ist, wie der neue Eigentümer den früheren Kindergarten nutzen will. Dem Bürgermeister ist es Recht, dass Winterlingen die Verantwortung für das Gebäude vor dem Winter an jemand anderen übergeben hat und somit nicht mehr für die Unterhaltung des Hauses aufkommen muss, wie zu heizen, nach dem Garten zu schauen und den Gehweg zu räumen. "Dieser Aufwand ist nun weg", freut sich Maier. Platzkonzert bei hochsommerlichen Temperaturen Der Musikverein Hammereisenbach gibt ein Platzkonzert auf der Terrasse des Gasthauses Hammer. Als Dirigentin Bianca Willmann um 19.30 Uhr den Taktstock hebt, zeigt das Thermometer immer noch 25 Grad. Etwa 50 Zuhörer erfreuen sich an den Klängen der Hammricher Musiker. Die Vorsitzende Manuela Honeck erläutert die Musikstücke. Honeck dankte in diesem Rahmen allen, die geholfen hatten, den ersten Musikerhock erfolgreich zu bewältigen. Bericht: Obama-Kampagne überlegte, Biden durch Hillary Clinton zu ersetzen Die engsten Berater von Präsident Barack Obama haben im Geheimen überlegt, Vizepräsident Joe Biden im Wahlkampf 2012 durch Hillary Clinton zu ersetzen, so die New York Times. Die Enthüllung ist die beachtenswerteste Überraschung des lang erwarteten Werkes von Mark Halperin und John Heilemann über den Wahlkampf 2012, „Double Down: Game Change 2012“. Der Times liegt ein Exemplar des demnächst erscheinenden Buchs vor und sie berichtete am Donnerstagabend, dass die Topberater des Präsidenten „umfangreiche Gruppensitzungen und Umfragen Ende 2011“ durchgeführt hätten, um herauszufinden, ob es für Obamas schwindende Hoffnung auf Wiederwahl besser aussehe, wenn er Biden fallen lasse. Laut Jonathan Martin, nationalpolitischer Korrespondent der Times, zeichnet das Buch gründlich die Geschichte der Bemühungen führender Mitarbeiter der Kampagne und des Weißen Hauses nach, namentlich des früheren White House Chief of Staff Bill Daley, zu messen, welchen Effekt es auf die Umfragewerte habe, die ehemalige Außenministerin Clinton gegen den Vizepräsidenten zu tauschen. Der potenzielle Wechsel war ein streng gehütetes Geheimnis innerhalb der Kampagneninfrastruktur in Chicago und im Oval Office. Nur ein halbes Dutzend der engsten Berater des Präsidenten – einschließlich Daley, dem früheren Kampagnenleiter Obamas, Jim Messina, und der früheren leitenden Berater des Weißen Hauses, David Axelrod und David Plouffe – wussten über den angedachten Wechsel Bescheid. In „Double Down“ wird behauptet, Daley habe an der Spitze der Bemühungen gestanden, Biden trotz ihres „engen, persönlichen Verhältnisses“ auszutauschen, ehe man sich schließlich gegen einen solchen Schachzug entschied, nachdem die Daten zeigten, dass die Kandidatur Clintons „die Chancen Obamas nicht maßgeblich verbessern“ würde. In einem Interview mit Martin bestätigte Daley, dass die Regierung tatsächlich überlegt habe, Biden durch Clinton zu ersetzen. „Ich äußerte eine ganze Reihe von Dingen, die man in Erwägung ziehen sollte, und das war eines davon“, erklärte Daley dem Magazin. Man muss sich in Erinnerung rufen, dass der Präsident damals furchtbare Umfragewerte hatte, also dachten wir: „Um Gottes Willen, was machen wir?“ Während Daley die Untersuchungen als „gebotene Sorgfalt“ bezeichnete, sagte Martin gegenüber Anderson Cooper von CNN, dass während der Kampagne für die Wiederwahl erheblicher Aufwand betrieben worden sei, um herauszufinden, ob ein solcher Zug sich im Hinblick auf die Wahlurnen auszahle. „In Kampagnen wird nicht so viel Geld für Umfragen und Fokusgruppen ausgegeben, wenn man nicht ernsthaft über etwas nachdenkt“, erklärte Martin auf AC360. Es ist allerdings nicht klar, ob Obama wusste, dass sein Team über einen Austausch nachdachte. Martin sagte gegenüber CNN, er habe Daley gefragt, ob sein damaliger Boss über den potenziellen Wechsel Bescheid gewusst hätte. Wenngleich Daley erklärte, er glaube nicht, dass sich der Präsident der möglichen Veränderung „bewusst war“, gab der frühere Stabschef zu, es sei „möglich“ gewesen, dass Obama davon gewusst habe. Martin fügte hinzu, dass „Double Down“ keine definitive Antwort auf die Frage liefere, ob die politischen Sondierungen Obamas Schreibtisch erreicht hätten. Cooper fragte Martin, ob er ernsthaft denke, Obama habe nichts von den Untersuchungen darüber gewusst, ob man Biden bei den Wahlen fallen lassen solle. „Möglich“, erwiderte Martin. Was passiert unterwegs mit meiner E-Mail? E-Mail heißt ja eigentlich elektronischer Brief. Wurde beim Entwurf des Internet-Dienstes E-Mail ähnlich wie bei der herkömmlichen Post technisch das Briefgeheimnis umgesetzt? Bei der Konzeption der frühen Internetdienste stand im Vordergrund, Kommunikation möglich zu machen. Daher hat man bei den grundlegenden technischen Protokollen nicht darauf geachtet, ein stabiles Fundament für einen anhörsicheren Briefwechsel zu schaffen. Daher entspricht eine herkömmliche E-Mail eher einer offenen Postkarte als einem versiegelten Brief. Wenn Nutzerin "Anna" an "Benni" eine Mail schickt, sind die Rechner der beiden dann direkt verbunden? Das E-Mail-Programm oder der Browser von Anna schickt im ersten Schritt die Mail an den Mail-Server ihres Service-Providers. Wenn sie zum Beispiel ein GMail-Konto hat, wäre das Google. Dieser Mail-Server schickt den Inhalt an den Provider, den Benni nutzt. Auf der Strecke kann die Mail über etliche andere Server im Internet laufen. Bennie kann den Inhalt dann bei seinem Provider anrufen. Werden herkömmliche E-Mails auf ihrem Weg durchs Netz mitgelesen? Die meisten Mails werden unterwegs mehrfach von Software-Robotern gelesen. Beim Provider des Absenders wird in der Regel überprüft, ob die Mail ein Schadprogramm als Anhang mit sich führt. Auf den Empfänger-Systemen wird ebenfalls ein Virus-Check vorgenommen. Außerdem überprüfen die Provider, ob es sich um eine lästige und unerwünschte Spam-Mail handelt, die gleich gelöscht oder zumindest in einen Spam-Ordner wegsortiert wird. Haben die Roboter noch eine weitere Aufgabe? Bei Systemen wie GMail ermittelt der Roboter auch die Informationen, die Google zum Platzieren von Kontext-Werbung benötigt. Wenn Anna und Benni per GMail über ihre kommenden Ferienreise kommunizieren, kann Google entsprechende Links zu Urlaubsangeboten einblenden. Lesen auch unbekannte Menschen die E-Mails mit? Die Wahrscheinlichkeit, dass unbefugte Personen eine Mail mitlesen, ist äußerst gering. Theoretisch ist das aber möglich. In Firmen haben häufig Administratoren die Möglichkeit, elektronische Post mitzulesen. Auch die Strafverfolgungsbehörden und Geheimdienste haben legale Möglichkeiten, E-Mails abzufangen oder zur Kenntnis zu nehmen. Dazu kommen mögliche illegale Ausspäh-Aktionen. Ist es möglich, E-Mails gegen das Mitlesen zu schützen? Mit einer Verschlüsselung nach dem OpenPGP-Standard kann eine E-Mail wirksam gegen Mitlesen verschlüsselt werden. Mit hohem technischen Aufwand ist es auch möglich, die Metadaten einer E-Mail-Kommunikation zu verschleiern, so dass nicht einmal ohne weiteres erkannt werden kann, wer mit wem kommuniziert hat. Wie wichtig sind Yahoo und Google auf dem E-Mail-Markt in Deutschland? Bei den hauptsächlich privat verwendeten Postfächern spielen Yahoo und Google laut einer Untersuchung von Convios Consulting aus dem August 2013 nur eine untergeordnete Rolle. Während die Anteile von Yahoo-Mail zuletzt gefallen waren, konnte GMail von Google deutlich zulegen. Mutter im Wald verscharrt und Rente kassiert Als seine betagte Mutter starb, schmiedete ein Mann aus Wolfsburg einen Plan. Er begrub die Tote in einem Wald - und kassierte weiterhin ihre Rente und Pflegegeld. Um weiter Rente und Pflegegeld kassieren zu können, hat ein 67-jähriger Wolfsburger seine tote Mutter nach Ermittlungen der Polizei im Wald begraben. Zunächst habe er den Tod der 89-Jährigen vertuscht, dann habe er das Geld mehr als anderthalb Jahre lang eingestrichen. Nun muss sich der 67-Jährige wegen Betrugs verantworten, wie ein Sprecher am Freitag sagte. Demnach versteckte der Mann die Frau in einem Wald in der Nähe von Helmstedt. Verdächtigt wurde der Mann bereits im Mai: Damals fiel auf, dass für die pflegebedürftige Mutter keine Medikamente mehr benötigt wurden. Den Ermittlern erzählte der Rentner, seine Mutter sei nach Spanien gereist. Weil den Beamten dies merkwürdig vorkam, ermittelten sie weiter. Dabei kam heraus, dass die beiden seit mehr als 15 Jahren in einer gemeinsamen Wohnung gelebt hatten und er sie zuletzt gepflegt hatte. Der 67-Jährige habe schließlich den Tod seiner Mutter eingeräumt. Eine Obduktion ergab laut Polizei keine Anhaltspunkte für ein Kapitalverbrechen. Lust auf Eiscreme, die im Dunkeln leuchtet? Ein britischer Unternehmer hat das erste im Dunkeln leuchtende Eis entwickelt – mithilfe von Quallen. Charlie Francis machte sich die fluoreszierenden Eigenschaften der Meerestiere zunutze und schuf daraus eine leuchtende Leckerei. Die Idee dazu kam ihm, nachdem er eine Forschungsarbeit über Quallen gelesen hatte und chinesische Wissenschaftler überzeugen konnte, das leuchtende Protein künstlich herzustellen. Die Eiscreme reagiert beim Verzehr mit der Zunge, wodurch der pH-Wert im Protein angehoben und das Leuchten ausgelöst wird. Chris erklärt, das Speiseeis reagiere auf die Wärme im Mund und leuchte – je mehr man also leckt, desto heller wird es. Charlie, Gründer der Eiscremefirma „Lick Me I'm Delicious“, sagt: „Das Produkt ist unglaublich, aber noch in einer sehr frühen Produktionsphase, und so bekommt man zwei Gramm davon für 200 Pfund.“ Das in der Eiscreme verwendete Protein reagiert mit der Zunge bei einem neutralen pH-Wert. Wenn der Mund das Protein erwärmt, steigt der pH-Wert und das Eis leuchtet. Wir haben es in den letzten Monaten getestet und es erschien uns ideal, es an Halloween auf den Markt zu bringen, weil es diesen wunderbaren Leuchteffekt hat. Es ist wahrscheinlich die teuerste Eiscreme, die ich je hergestellt habe, denn der Quallenleuchtstoff ist viermal teurer als Gold. Jede Kugel kostet mich etwa 140 Pfund. Aber dafür schmeckt es lecker. Charlies experimentelle Firma mit Sitz in Bristol ist berühmt für ihre ungewöhnlichen Geschmacksrichtungen, zu denen Bier, Käse, Rindfleisch und Blattgold gehören. Doch seine neueste Schöpfung soll noch ambitionierter werden. Er sagt: „Ich möchte gern eine unsichtbare Eiscreme entwickeln.“ Das ist an und für sich unmöglich aufgrund der Lichtbrechung, die durch die Eiskristalle hervorgerufen wird, aus denen Eiscreme besteht; aber ich vermute, wir finden eine Möglichkeit, es zu schaffen. Die Eiscreme nutzt die fluoreszierenden Eigenschaften einer Qualle, die von chinesischen Wissenschaftler künstlich hergestellt werden Der TSV Morsum ist nach sechs Spieltagen noch immer ohne jeden Punkt in der Handball-Verbandsliga. Ausgerechnet jetzt kommt es für das Team von Ingo Ehlers morgen zum Derby gegen den TSV Daverden, der am vergangenen Wochenende seiner ersten Sieg gefeiert hat. Mit diesem Spiel beginnt die Saison neu für uns. "Ich hoffe, dass wir endlich mal den Kopf frei haben", gibt sich Ehlers verhalten optimistisch. Dabei hat er endlich mal, mit Ausnahme des dauerverletzten Hendrik Blohme, seinen kompletten Kader zur Verfügung. Auch Daverden setzt wie wir auf Tempospiel. Daher müssen wir unsere Fehlerquote gering halten. In erster Linie gilt es sich jedoch in der Deckung zu steigern, die zuletzt alles andere als einen sicheren Eindruck hinterlassen hat. Deutlich entspannter gibt sich Daverdens Coach Thomas Panitz nach dem ersten Saisonsieg gegen Nordhorn. Das Spiel war natürlich eine Hausnummer. Aber deswegen sind wir noch lange nicht der Favorit, denn im Derby kann immer alles passieren. Gleichwohl will Panitz nun nachlegen in Morsum, um eine Serie zu starten. Fehlen wird Jan-Malte Jodat. Dafür feiert der A-Jugendliche Joost Windßuß, der mit Doppelspielrecht beim A-Jugend-Bundesligisten HC Bremen aktiv ist, sein Saisondebüt. Wer in so einem Spiel nicht heiß ist, soll zuhause bleiben. Halloween 2013: In Zahlen Als ich klein war, hatte Halloween etwas Magisches. Meine Schwester und ich durften Süßigkeiten essen, spät aufbleiben und uns für die Nachbarschaft verkleiden. Heute bin ich eher zum Halloween-Muffel geworden. In den letzten zwei Jahren habe ich mich nicht bereit erklärt, von meiner Wohnung aus Süßigkeiten zu verteilen, und werde es wohl auch dieses Jahr nicht tun. Aber laut Statistik bin ich ein schwarzes Schaf, was Halloween angeht. Die Mehrheit der Amerikaner – 158 Millionen, um genau zu sein – feiern dieses Jahr Halloween und geben dabei insgesamt 6,9 Milliarden US-Dollar für Süßigkeiten, Kostüme und Dekorationen aus, so der US-amerikanische Verband der Einzelhändler (NRF). Eine Sache, auf die ich mich jedes Halloween dann doch wieder freue, sind die Trendwerte. Die Kostüme werden etwa 1,2 Milliarden der 6,9 Milliarden ausgegebenen US-Dollar ausmachen, so der NRF. In diesem Jahr sind aufreizende unbelebte Gegenstände der letzte Schrei. Frauen müssen sich nicht mehr in sexy Kleidung hüllen, sie können jetzt auch verführerisches Essen wie etwa Pizza, Hamburger oder Karotten verkörpern. Was Männer angeht, erwarte ich jede Menge Zombies dank The Walking Dead, und ich wette, die Daft-Punk-Weltraummänner werden es dieses Jahr in die Instagram-Feeds schaffen. Laut Google sind die meistgesuchten Kostüme Zombies, Batman, Piraten und Hexen. Ich vermute, es ist nichts verkehrt an Tradition. Wir haben letztes Jahr unsere Hunde verkleidet und waren damit zu meinem Erstaunen nicht allein. Tatsächlich geben Amerikaner 330 Millionen Dollar dieses Jahr für Kostüme ihrer Haustiere aus, so der NRF. Das sind eine Menge „Hot Dogs“. Was Süßigkeiten angeht, sind wir nicht zimperlich. Amerikaner werden dieses Jahr 1,9 Milliarden Dollar dafür ausgeben, so The Nielsen Company. Das sind etwa 270 Millionen Kilogramm an Schokoriegeln, Lutschern, Bonbons und Gummibärchen. Also gute Nachrichten für die laut US-Handelsministerium 41 Millionen Menschen, die mit dem Spruch „Süßes oder Saures“ durch die Viertel ziehen. Tatsächlich werden wir über 40 Millionen Kilogramm Schokolade für Halloween kaufen und – machen wir uns nichts vor – essen. Das Einzige, was wir nicht konsumieren möchten, ist das zuckersüße Candy Corn; dennoch werden 15 Millionen Kilogramm davon um Halloween verkauft, so der Nationale Verband der Süßwarenhersteller. Das sind etwa neun Milliarden Maiskörner. Es ist ein Rätsel, das ich noch nicht lösen konnte. Nichts gehört mehr zu Halloween als Häuser, in denen es spukt. Sie haben großartige Namen wie „Terror Behind the Walls“ (was übrigens in einem echten Gefängnis steht), „Howl-O-Scream“ und „The House of Shock“. Es gibt tatsächlich 1.200 offiziell anerkannte Spukhäuser in den Vereinigten Staaten, die 500 Millionen Dollar Erlös erzielen, so America Haunts, und das schließt die wunderbaren Fotos ein, auf denen man sich gerade in die Hose pinkelt und die Freunde dann auf Facebook stellen, wo man sie nicht wieder loswird, und einem dann der Typ, auf den man steht, einen Kommentar hinterlässt wie „netter Gesichtsausdruck“. Aber kommen wir endlich zu den Kürbissen. Charlie Brown machte uns mit dem Großen Kürbis vertraut, als wir Kinder waren, und das Schnitzen einer Kürbislaterne ist wie das Schmücken des Weihnachtsbaums – etwas, das wir von klein auf gemacht haben. Glücklicherweise begann der „Baby im Kürbis“-Trend erst letztes Jahr dank Pinterest, sodass die meisten von uns damit aufgewachsen sind, den Kürbis zurechtzuschnitzen und nicht, darin zu sitzen. Dieses Jahr werden Amerikaner etwa 106 Millionen Dollar für Kürbisse ausgeben, so das US Census Bureau. Die Kürbislaterne, die langsam im Vorgarten verrottet, stammt vermutlich aus Illinois, wo dieses Jahr 245 Millionen Kilogramm Kürbisse geerntet wurden. Wenn Sie richtig punkten möchten, dann rufen Sie Tim und Susan Mathisdon in Napa, Kalifornien an und schnitzen Sie etwas Hübsches aus ihrem 921 Kilo schweren Kürbis. Wohnungsbrand in Helmbrechts: Rettungskräfte bergen verkohlte Leiche Die Feuerwehr musste am späten Donnerstagabend in Helmbrechts ausrücken. Ein Dreifamilienhaus im Landkreis Hof fängt in der Nacht zum Freitag Feuer. Die Rettungskräfte bergen eine verkohlte Leiche aus dem Haus. Rettungskräfte haben bei einem Brand in Helmbrechts eine verkohlte Leiche in einem Dreifamilienhaus gefunden. Ob es sich um einen Bewohner handle sei noch unklar, wie ein Sprecher der Polizei in Bayreuth sagte. Am späten Donnerstagabend hatte es im Erdgeschoss des Hauses gebrannt. Als die Feuerwehr eintraf, schlugen die Flammen bereits aus einem Fenster. Die Einsatzkräfte gingen in die Wohnung und fanden die Leiche in einem Zimmer. Dieses und ein weiteres Zimmer brannten vollständig aus. Das gesamte Erdgeschoss wurde beschädigt. Alle anderen Bewohner seien während des Brands nicht zu Hause gewesen, erklärte der Polizeisprecher weiter. Das Gebäude sei vorerst nicht mehr bewohnbar. Die genaue Ursache für das Feuer war zunächst nicht klar. Deutschlands größte Landeskirche hat eine Offensivegestartet, um für den Beruf des Pastors zu werben. Hintergrund ist ein möglicher Pfarrermangel: Die Evangelisch-lutherische Landeskirche Hannover rechnet damit, dass sich die Zahl ihrer derzeit rund 1.800 Pastorinnen und Pastoren nach jetziger Lage bis 2030 halbieren wird. Für junge Leute von heute sei der Beruf sehr attraktiv und biete gute Zukunftsaussichten, sagte Pastor Mathis Burfien (43) im Gespräch mit dem Evangelischen Pressedienst. Es ist attraktiv, den Arbeits- und Tagesablauf selbst bestimmen zu können. Mit Burfien hat die Landeskirche erstmals einen Pastor auf einer vollen Stelle beauftragt, junge Leute für das Theologiestudium zu begeistern. Zurzeit entscheiden sich immer weniger junge Menschen nach dem Abitur, Theologie zu studieren. Burfien führt dies auf den Prozess der Entkirchlichung zurück: "Gottes Stimme ist leise, die Welt ist laut". Dabei sei der Beruf von großer Freiheit und Vielfalt geprägt. Ich bin Herr meines Terminkalenders und kann dort meine Schwerpunkte setzen, wo es mir wichtig ist. Pastoren könnten als Seelsorger ganz nah bei den Menschen sein. Sie verdienten so viel wie Lehrer und könnten gut davon leben. Sicherlich werde in der freien Wirtschaft mehr bezahlt, aber dafür hätten Theologen einen sicheren Arbeitgeber. Das komme den jungen Leuten von heute entgegen, denen es nicht nur um Karriere, sondern um eine sinnerfüllte Arbeit gehe. Nach Angaben der Landeskirche, die drei Viertel Niedersachsens umfasst, gehen derzeit pro Jahr rund 60 Pastoren in den Ruhestand. Gleichzeitig beginnen etwa 40 Absolventen eines Theologiestudiums ihr Vikariat. In dünn besiedelten Randgebieten wie dem Harz, dem Emsland oder dem Wendland könne künftig es schwer werden, Stellen zu besetzen. Burfien will unter anderem Studientage für junge Leute veranstalten und dazu auch Prominente einladen, die Theologie studiert haben. Das Theologiestudium biete eine breite Ausbildung. Man kann damit sogar Bundespräsident werden. Land Rover Rally Series angekündigt Im Interieur finden sich Rennsitze und Sechs-Punkt-Gurte sowie eine Freisprechanlage. Die Optionen reichen von verstärkten Bremsen, einem Servicepaket mit Betreuung von Bowler-Works-Mechanikern und logistischer Unterstützung bis hin zu Fahrzeugeinlagerung zwischen Veranstaltungen. Drew Bowler, Geschäftsführer von Bowler Motorsport, erklärt: „Die Rally-Kunden, die zu Bowler kommen, haben sich verändert.“ Sie sind nicht alle erfahrene Rennfahrer, sondern Leute, die auf der Suche nach Spannung und Abenteuer sind sowie nach einem erreichbaren Weg zu Weltklasse-Veranstaltungen. Wir freuen uns, diesen Weg in Partnerschaft mit Land Rover und der MSA eröffnen zu können und glauben, dass das Format neue Möglichkeiten erschließt, die verschiedenen Rally-Disziplinen in Großbritannien und dem Ausland zu erleben und Neulinge auf die Strapazen und die Wirklichkeit von Rally Raid vorzubereiten. Wir hatten wirklich Spaß daran, den Defender Challenge-Wagen zu entwickeln – das wird eine unterhaltsame Meisterschaft. Darüber hinaus gibt es bei der Defender Challenge einen Trainings- und Testtag im Februar sowie die Option, an Wüstenrennen in Nordafrika und dem Nahen Osten teilzunehmen. Feuerwehr zur Rettung eines Hündchens gerufen, das 15 Meter über dem Boden auf einem gefährlichen Felsvorsprung in einem Steinbruch festsaß Cockerspaniel-Hündin Ruby war nach einem kleineren Verkehrsunfall davongelaufen Drei Tage später wurde sie von einem Spaziergänger im Steinbruch in ihrer misslichen Lage entdeckt Feuerwehrleute seilten sich an Felswand ab und retteten den Hund vor dem sicherem Tod Der Feuerwehr gelang es, ein Hündchen in Sicherheit zu bringen, das auf einem 15 Meter hohen Vorsprung in einer Felswand festsaß. Die neun Monate alte Cockerspaniel-Hündin Ruby war nach einem Verkehrsunfall am Sonntagnachmittag davongelaufen und überlebte drei Tage allein, ehe sie am Mittwoch aus einem Steinbruch gerettet wurde. Scott Alderson, 25, und seine Freundin Becky Hall, 20, denen der Hund gehört, kamen zum Steinbruch Flappit in Denholme, West Yorkshire, um Ruby wieder in Empfang zu nehmen und sich bei den Feuerwehrleuten des West Yorkshire Fire and Rescue Service zu bedanken. Sie hatten verzweifelt nach ihrer vermissten Hündin gesucht und Hilferufe in sozialen Netzwerken veröffentlicht, als sie nach dem kleinen Verkehrsunfall in den Steinbruch entlaufen war. Etwa gegen 14:15 Uhr am Mittwoch sah ein Spaziergänger, der seinen Hund ausführte, die gestrandete Ruby auf dem 15 Meter hohen Absatz im Steinbruch. Das technische Rettungsteam der Cleckheaton Fire Station eilte zur Stelle und seilte sich zur Rettung Rubys ab, die dann in einer Hundebox nach oben transportiert wurde. Andy Clayton, Spezialist des technischen Rettungsteams, sagte: „Sie war in einer gefährlichen Lage. Sie befand sich in der Mitte der Felswand – 15 Meter von oben und dem Boden entfernt. Sie bewegte keinen Muskel während ihrer Rettung – sie war wie steifgefroren. Aber jetzt geht es ihr gut. Sie hat anschließend ein paar Hundekuchen gefressen. Das war ein ziemlich ungewöhnlicher Einsatz. Die Tatsache, dass der Hund entdeckt wurde, ist unglaublich. Peter Lau, Spezialist des technischen Rettungsteams, sagte: „Ruby hatte ein Riesenglück.“ Es bestand die Möglichkeit, dass sie sehr schwer verletzt war oder Schlimmeres. Ruby wurde zum Tierarzt zur Untersuchung gebracht, der aber außer Erschöpfung und Dehydrierung nichts feststellte. Becky Hall aus Halifax, West Yorkshire, sagte: „Bei der Rettung zuzusehen war beängstigend.“ Ich konnte gar nicht glauben, dass sie wirklich da oben war. Es war wundervoll, sie wieder in den Armen zu halten. Der Tierarzt erklärte, wenn die Erschöpfung zu groß geworden und sie zusammengebrochen wäre, wäre sie vermutlich abgestürzt. Die Feuerwehrleute haben Großartiges geleistet. Es war wirklich mutig, was sie getan haben. Wir sind einfach so dankbar und jeder von ihnen war absolut unglaublich. Scott Alderson aus Keighley fügte hinzu: „Wir hatten Angst, dass sie herunterfallen würde, aber sie blieb oben.“ Die Feuerwehrleute waren großartig. Ich kann kaum glauben, wo sie war. Mick Jagger erklärt, er habe Katy Perry nie angemacht, als sie 18 war. Bei einem Interview mit einem australischen Radiosender diese Woche sagte der Pop-Star, sie habe als Background-Sängerin an Jaggers Song „Old Habits Die Hard“ aus dem Jahr 2004 mitgearbeitet. Perry erklärte, sie habe mit dem Altrocker zu Abend gegessen, und dass „er mich angebaggert hat, als ich 18 war“. Sie fügte hinzu: „Das ist schon lange her und er war sehr nett zu mir.“ In einer Erklärung sagte ein Vertreter Jaggers, 70, am Donnerstag, dass er „kategorisch verneint, dass er jemals Annäherungsversuche bei Katy Perry unternommen habe“. Der Vertreter ergänzte: „Vielleicht hat sie ihn mit jemand anderem verwechselt.“ Perry war eine der Sängerinnen, die bei der Rolling-Stones-Tour dieses Jahr einen Gastauftritt hatten. Ihr neues Album „Prism“ landete auf Anhieb auf Platz 1 diese Woche. George Kerevan: Europäische Entflechtung gibt den Schotten die Wahl Ein neuer Tag, eine neue Schreckensgeschichte zur Unabhängigkeit. Diesmal werden wir gewarnt, dass ein unabhängiges Schottland erforderlich sei, um dem Schengen-Raum als Bedingung für die EU-Mitgliedschaft beizutreten. Das liefert das Stichwort für Geschichten über Passkontrollen in Berwick und eine mit Stacheldraht gesicherte Grenze entlang des Hadrianswalls. In der Tat wurde in der Strathclyde-Vorlage auf die möglichen wirtschaftlichen Vorteile hingewiesen, die mehr Reisefreiheit im restlichen Europa mit sich bringen würde, doch spielte dies – erwartungsgemäß – in den Schlagzeilen keine Rolle. Auch hat niemand erwähnt, dass sich die EU-Mitgliedsstaaten häufig ihre strikten Regeln zurechtbiegen, wenn es für sie günstiger ist. Da Schottland derzeit nicht zum Schengen-Raum gehört, wäre die fortgesetzte Nichtbeachtung für Brüssel nur ein kleines Zugeständnis im Gegenzug für das, was man wirklich von den Schotten will. Also eigentlich keine Story. Und eine, die schon so in der Jahre gekommen ist, dass sie bereits einem Fossil gleicht: Das erste Mal habe ich die „Unabhängigkeit bedeutet Passkontrollen“-Ente vor mindestens 40 Jahren gehört. Dabei geht ein interessanter Punkt beim ständigen Wiederholen dieser uralten Geschichte verloren. Weshalb sollte man von einem unabhängigen Schottland erwarten, dass es nach der europäischen Pfeife tanzt? Warum das Londoner Joch gegen das von Brüssel eintauschen, besonders jetzt? Das sind die wirklichen europäischen Neuigkeiten: Der große, nach dem Krieg gefasste Plan zur Vereinigung Europas ist ins Stocken geraten. Mit der Eurokrise ist das Projekt Europa offiziell gestorben. Überall in der EU gewinnen Parteien an Boden, die EU-feindlich sind oder den Euro als Gemeinschaftswährung über Bord werfen möchten. Selbst in Deutschland konnte die euroskeptische Partei Alternative für Deutschland – erst dieses Jahr gegründet – knapp fünf Millionen Stimmen bei der Bundestagswahl im September für sich ergattern und damit effektiv die Freien Demokraten (das Äquivalent zu den britischen Liberal Democrats) aus dem Bundestag vertreiben. Es gab schon immer heimischen Widerstand gegen den Plan, ein föderalistisches Europa zu schaffen. Die aktuelle Wirtschaftskrise stellt sich allerdings als Wendepunkt heraus. Wegen der von Berlin und der Europäischen Zentralbank verhängten strengen Sparpolitik in Verbindung mit der Zwangsjacke, in die die jeweilige nationale Wirtschaft durch das Festhalten an der gemeinsamen Währung genötigt wird, sind viele Menschen der Ansicht, das Projekt Europa sei zu weit gegangen. Die Krise des Euro hat wenig damit zu tun, dass nationale Regierungen exzessive Haushaltsdefizite verursachen – das war nur in Griechenland der Fall. Stattdessen hat das Eurosystem seine Mitglieder auf Wechselkurse festgenagelt, die für deutsche Exporteure vorteilhaft sind – und das möchten deutsche Politiker gern so lassen. Ohne die Möglichkeit einer Abwertung der lokalen Währung findet sich Südeuropa mit einem eingebauten Produktivitätsnachteil gegenüber Deutschland wieder. Die einzige Möglichkeit besteht darin, Löhne und öffentliche Ausgaben zu kürzen – angespornt von Berlin. Hinter den aktuellen Etat- und Währungsproblemen liegt ein tiefer gehendes europäisches Produktivitätsproblem. Als Folge der von Brüssel verordneten „grünen“ Energierichtlinien – ein Code für die Subventionierung französischer und deutscher Energieunternehmen auf Kosten der Verbraucher – zahlt die europäische Industrie verglichen mit den Vereinigten Staaten das Doppelte für Elektrizität und das Vierfache für Gas. Das ist ein lähmender Kostennachteil, wie wir bereits in Grangemouth sehen konnten. Alle Lohnfestschreibungen der Welt schützen die europäische petrochemische Industrie nicht davor, von billigem amerikanischem Schiefergas in die Ecke gedrängt zu werden. Als Folge zieht eine Revolte herauf, besonders in Frankreich, dem einstigen Cheerleader der EU. Nach dem Krieg sah die politische Elite Frankreichs die EU als ein Vehikel, mit dem man Deutschland in Schach halten und Paris auf Augenhöhe mit Washington heben konnte. Doch Berlin braucht Paris nicht mehr als Tor zur politischen Legitimation und hat Europa seine eigene Wirtschaftspolitik aufgedrückt, womit die angeschlagene französische Wirtschaft zu kämpfen hat. Das Ergebnis: Marine Le Pens rechtsgerichteter, EU-feindlicher Front National hat gerade eine entscheidende Nachwahl gewonnen und damit die regierenden Sozialisten auf Platz drei verwiesen. Der Front National ist nun die beliebteste Partei in Frankreich mit 24 Prozent der Wählerstimmen – eine zeitgerechte Warnung für die britische Labour-Partei, dass sie nicht davon ausgehen kann, eine Spaltung im rechten Spektrum würde automatisch Vorteile für die Linke bedeuten. Was macht Le Pen mit ihrer neu gewonnen Popularität unter den weißen Franzosen der Arbeiterklasse? Sie möchte die EU-Wahlen nächstes Jahr dazu nutzen, einen Anti-EU-, Anti-Gemeinschaftswährungsblock im Europäischen Parlament zu schmieden. Falls die Anti-EU-Parteien bei diesen Wahlen gut abschneiden – und das ist sehr gut möglich –, dann könnte erstmals ein solcher Block das Europäische Parlament dominieren. Dies ist der Punkt, auf den ich hinaus will: In nicht allzu ferner Zukunft wird das wachsende Ressentiment gegen die EU und die gemeinsame Währung sich zur Abschaffung des Euro zusammenfinden. Die EU wird nicht verschwinden, aber sie wird eher so etwas wie das „Europa der (souveränen) Nationen“ werden, das General de Gaulle favorisierte. Deutschland und ein paar seiner Satelliten-Wirtschaften halten vielleicht am Euro fest, aber Frankreich und Südeuropa werden zu ihren eigenen Währungen zurückkehren. Ich erwarte, dass sich Großbritannien von diesem Projekt distanziert in der Hoffnung, sich bei den USA einzuschmeicheln. Allerdings legt Washingtons wachsendes Interesse am Pazifikraum nahe, dass Großbritannien allein im atlantischen Regen stehen wird. Wo bleibt Schottland bei all dem? Wir können entscheiden, eine Region von (in letzter Konsequenz) Klein-England zu sein. Oder wir können unsere eigenen wirtschaftlichen Interessen verteidigen – wozu auch gehört, Berlin und Brüssel zu sagen, was sie sich wo hinstecken können. Ich vermute, Schottland könnte in einem lockereren europäischen Verbund ganz gut fahren, sofern wir unsere eigene Währung behalten. Die Kooperation mit anderen, ähnlich denkenden Ländern ist in einem nicht föderierten Europa der Nationen einfacher. Ansonsten sollten wir erwägen, es Norwegen gleichzutun und unsere wirtschaftliche Unabhängigkeit behalten. Die SNP-Regierung in Schottland ist – bemerkenswerterweise – die erfolgreichste politische Bewegung gegen die Sparpolitik in Europa und hat 2011 eine spektakuläre Mehrheit aufgrund der Ablehnung der vorgeschlagenen (und vorgenommenen) Kürzungen gewonnen, die der Labour-Finanzminister Alistair Darling und die nachfolgende Tory-Lib Dem-Koalition zu verantworten hatten. Es wäre für Schottland lächerlich, sich jetzt für eine Unabhängigkeit zu entscheiden, nur um dann von Berlin und Brüssel eine Sparpolitik aufgezwungen zu bekommen. Frühe Pubertät: Schneller erwachsen werden Afroamerikanische und hispanische Mädchen erreichen tendenziell eher die Pubertät als ihre weißen Altersgenossinnen, wie Untersuchungen zeigen. Körperliche Veränderungen bedeuten noch nicht unmittelbar die Pubertät Es gibt keinen Beleg dafür, dass Hormone oder andere Chemikalien verantwortlich sind Experten glauben, die epidemische Fettleibigkeit sei ein Auslöser der frühen Pubertät Der Trend zur frühen Pubertät ist weniger ausgeprägt bei Jungen Die frühere CNN-Korrespondentin Pat Etheridge ist eine Journalist, die sich auf Kindergesundheit und Familienthemen spezialisiert hat. Sollte eine Mutter besorgt sein, wenn ihrer Tochter schon im Alter von sieben oder acht Jahren Brüste und Schamhaare wachsen? Bei der jährlichen Konferenz des Kinderärzteverbandes American Academy of Pediatrics diese Woche in Orlando, Florida, erklärte der pädiatrische Endokrinologe Dr. Paul Kaplowitz, dass diese frühen körperlichen Veränderungen relativ normal unter amerikanischen Mädchen seien und eine neue Norm darstellten. „Ich verbringe viel Zeit damit, Eltern zu beruhigen – normalerweise ist das kein Anzeichen dafür, dass nun schnell die Pubertät eintritt“, erläuterte Kaplowitz. Offensichtliche Anzeigen der Entwicklung, wie zum Beispiel wachsende Brüste, Scham- und Achselhaare sowie Körpergeruch, zeigen sich bei Mädchen früher. Dennoch es gab nur eine leichte Verschiebung beim Alter der Menarche (Auftreten der ersten Regelblutung) in den letzten 40 Jahren. In den Vereinigten Staaten liegt das Durchschnittsalter bei 12,5 Jahren, etwas weniger als 12,75 im Jahr 1970. „Wenn die Entwicklung der Brüste beginnt, dauert es noch mindestens zwei bis drei Jahre bis zur Menarche“, sagte Kaplowitz, auch Autor des Buchs „Frühe Pubertät bei Mädchen: Der essentielle Ratgeber zum Umgang mit diesem häufig auftretenden Problem“. Zeit ist der genaueste Test, wie die Pubertät voranschreitet. Es ist umstritten, was tatsächlich den Beginn der Pubertät darstellt, doch gilt es „frühreif“, wenn die Brustvergrößerung von einem Wachstumsschub vor einem Alter von acht Jahren begleitet wird. In den meisten Fällen verlangsamt sich der Prozess oder stagniert – etwas, das ein Kinderarzt genau überwachen kann. Bei schnellerem Voranschreiten könnten Tests durch einen Endikronologen angezeigt sein, damit ernste Probleme wie Tumore oder Zysten ausgeschlossen werden können. Es gibt Behandlungsmethoden zum Verzögern einer frühen Menstruation und der Abwehr einer anderen Folge: der vorzeitigen Alterung der Knochen, die ultimativ zu Wachstumshemmung und damit kleinem Körperwuchs bei Erwachsenen führen kann. Die Empfehlungen für eine medikamentöse oder hormonelle Therapie orientieren sich am Alter des Kindes, der Entwicklungsgeschwindigkeit, der Wachstumsrate und der emotionalen Reife. Psychosoziale Aspekte sind ebenfalls wichtig. Kaplowitz ist zurückhaltend, was Medikamente angeht, aber er räumt ein: „Das Unterdrücken der Pubertät kann Verhaltensprobleme und die Gefühle von Mädchen mildern, anders als ihre Altersgenossinnen zu sein.“ Das andere große Problem ist verständlich: Eltern möchten einfach nicht, dass ihre sehr jungen Töchter die Periode haben. „Sie sorgen sich wegen des Schwangerschaftsrisikos oder darüber, wie sie die hygienische Seite handhaben“, sagte Kaplowitz. „Es war ein Schock“, erinnert sich eine Frau, deren Tochter mit zehn ihre Tage bekommen hat. Auch wenn es erste Anzeichen gab und wir über Menstruation gesprochen hatten, war sie emotional nicht vorbereitet. Sie kam verängstigt und aufgeregt von der Schule nach Hause, weil sie die erste in ihrem Freundeskreis war. Es gibt viele umfassend publizierte Theorien über die Ursachen frühzeitiger Pubertät. Doch es liegen keine schlüssigen Beweise dafür vor, dass Hormone in Milch oder anderen Nahrungsmitteln, Chemikalien in der Umwelt oder sexuelle Botschaften in den Medien ursächlich wären. Jungen kommen ähnlich wie Mädchen früher in die Pubertät. Kaplowitz ist der Ansicht, die überzeugendste Prämisse sei die Epidemie der Fettleibigkeit. Er unterstützte die Durchführung einer Studie im Jahr 2001 über Mädchen im Alter von sechs bis neun Jahren, die einen Zusammenhang zwischen Körperfett und dem Eintritt in die Pubertät herstellt. Andere Untersuchungen unterstützen diese Schlussfolgerung, aber es gebe viele andere Faktoren, die eine Rolle spielten. In diesem Land erreichen afroamerikanische und hispanische Mädchen tendenziell eher die Pubertät als ihre weißen Altersgenossinnen. Es gibt dafür unterschiedliche Erklärungen. Global scheint eine frühe Pubertät von allen möglichen Dingen beeinflusst zu sein, von Wirtschaftsbedingungen über das Klima bis zu den Genen. Ein weiteres Rätsel: Obwohl Jungen die Gesichts- und Schambehaarung schon früher wächst, ist der Trend zu einer vollumfänglichen früheren Pubertät nicht so ausgeprägt wie bei Mädchen. Andere Ärzte auf der AAP-Konferenz unterstrichen die Komplexität des Themas. Das Auftauchen von Akne und Schamhaar ist selbst bei Babys und Kleinkindern verbreitet. „Wir müssen vorsichtig sein, wie wir den wahren Beginn der Pubertät identifizieren“, sagte Dr. Lawrence Silverman, ein pädiatrischer Endokrinologe am Goryeb Children's Hospital in Morristown, New Jersey. Eltern sollten nicht zögern, sich von ihrem Kinderarzt beraten zu lassen, wie sie mit ihrem Kind sprechen sollten. „Das kann bedeuten, dass man früher als erwartet ein Gespräch führen muss“, riet Kaplowitz. Wenn man ruhig bleibt, reagiert das Kind normalerweise gut. Mädchen, die früh erblühen, brauchen die Versicherung, das der Prozess ein normaler Teil des Lebens ist, selbst wenn er früher als gedacht eintritt. Jumbo-Hersteller streiten im Angesicht großer Bestellungen über Sitzbreite Zwischen führenden Flugzeugherstellern ist es zu einer Auseinandersetzung über die Breite von Sitzen in der Touristenklasse bei Langstreckenflügen gekommen, was den Ton für einen bitteren Zusammenstoß auf der Dubai Airshow diesen Monat angibt. Der Streit dreht sich um die Sitzbreite, die Passagieren bei langen Flügen in der Touristenklasse angeboten wird – nicht immer diejenigen, um die sich Fluggesellschaften am meisten bemühen, doch dieser ausgewiesene Raum stellt den Schlüssel für die Effizienzbehauptungen bei den neuesten Flugzeugen von Airbus SAS und Boeing Co. dar. Airbus forderte diese Woche einen Branchenstandard, der eine Sitzbreite von mindestens 46 cm (18 Zoll) in der Touristenklasse vorschreibt, doch der US-amerikanische Erzrivale Boeing sagt, das sollten die Fluggesellschaften entscheiden. Die Auseinandersetzung kommt zu einem Zeitpunkt, da die Flugzeugbauer darum wetteifern, noch größere Versionen ihrer zweimotorigen Langstreckenflieger zu verkaufen, und bei der Veranstaltung vom 17. bis 21. November Rekordaufträge erwarten. Wie der hintere Teil des Flugzeugs ausgestaltet ist – insbesondere ob es Reihen mit neun oder zehn Sitzen gibt –, ist entscheidend für die angegebenen wirtschaftlichen Ergebnisse, die das neue „Mini-Jumbo“-Design liefern soll. Boeing behauptet, seine modernisierte „777X“ fasse 406 Personen bei Sitzen in der Touristenklasse, die über 17 Zoll breit sind und so zehn pro Reihe erlauben. Airbus erklärt, die konkurrierende Version des A350 befördere 350 Personen in 18 Zoll breiten Sitzen in der Touristenklasse, wobei es neun pro Reihe gibt. Flugzeuggiganten teilen häufig Hiebe über technische Details mittels Werbung in der Fachpresse aus. Jetzt appelliert Airbus vor der Dubai Airshow, wo die 777X mit über 100 Bestellungen voraussichtlich das Rennen machen wird, direkt an die Öffentlichkeit. Kürzlich stellte das Unternehmen eine Anzeige vor, die der Beginn eines neuen Anzeigenkriegs sind könnte und Geldgebern ein Bild zeigte, in dem drei Personen zusammengequetscht in einem Restaurant sitzen, und dazu der Titel: „Würden Sie das akzeptieren?“ „Boeing schlägt Langstreckenflüge in Sitzen vor, die enger sind als regionale Turbo-Props“, sagt Airbus-Vertriebschef John Leahy. Angesichts geänderter Ernährungsgewohnheiten werden die Leute dicker, doch Flugzeugsitze haben sich nicht radikal verändert. Zwischen den frühen 1970ern, als die Boeing 747 die moderne Langstreckenreise definierte, und dem Ende des Jahrhunderts hat das Gewicht des männlichen Durchschnittsamerikaners zwischen 40 und 49 Jahren um zehn Prozent zugenommen, so die Daten des US-Gesundheitsministeriums. Der Taillenumfang des männlichen Durchschnittsamerikaners im 21. Jahrhundert beträgt laut US-amerikanischen Gesundheitsstatistiken 100,8 cm. Airbus sagt, sein Rivale halte sich an ein Sitzkonzept aus den 1950ern, als der durchschnittliche Körperumfang des frisch getauften „Jet Set“ schmaler war. Man habe, so Airbus, Untersuchungen durchgeführt, die belegten, dass ein zusätzliches Zoll (2,54 cm) pro Sitz die Schlafqualität um 53 Prozent steigere. Boeing bestreitet die Zahlen von Airbus zu den Sitzmaßen und sagt, es stehe nicht im Ermessen der Hersteller zu entscheiden, wie Fluggesellschaften die Balance zwischen Flugtarifen und Einrichtung gestalten. Das Unternehmen erklärt auch, laut Untersuchungen hänge das Erlebnis im Flugzeug von mehr als der Sitzbreite ab. „Es läuft wirklich darauf hinaus, Fluggesellschaften Flexibilität zu geben, damit sie das tun können, was sie ihrer Ansicht nach müssen, um erfolgreich zu sein“, erläutert der Flugkabinenexperte Kent Craver von Boeing. Sie möchten nicht, dass wir ihnen diktieren, was sie profitabel macht. Sie kennen ihr Geschäft besser als jeder andere. Für Fluggäste geht es um mehr Ellenbogenfreiheit, aber für Hersteller wird es in zunehmendem Maße ein Thema, das sich auf die Umsätze auswirken kann. Hinter der Auseinandersetzung steht ein Rennen um Flugzeugbestellungen mit einem geschätzten Volumen von mindestens 700 Milliarden US-Dollar nach Listenpreisen in den kommenden Jahrzehnten, was sich nachhaltig auf die Exportbilanz der USA oder Europas auswirken könnte. Wie Reuters im Juli erstmals berichtete, ist das Sitzlayout die treibende Kraft hinter der Auseinandersetzung um die neuen Jets. Sowohl Airbus als auch Boeing behaupten 20 Prozent mehr Effizienz pro Sitz bei ihren neuesten zweimotorigen Langstreckendesigns als der Marktführer in diesem Segment, die 365-sitzige Boeing 77-300ER. Die Aussagen Boeings zu den Ergebnissen hängen teilweise davon ab, dass die 777X mit ihren zehn Sitzen pro Reihe mit dem Originaldesign von neun Sitzen in der 777 verglichen wird. Die gestiegenen Kosten pro Einheit sind immer noch geringer als bei derzeit verwendeten Maschinen mit zehn Sitzen pro Reihe. „Boeing quetscht deshalb mehr Sitze in sein Flugzeug, um es wettbewerbsfähiger zu unseren Produkten zu machen“, sagt Kevin Keniston, Leiter für Passagierkomfort bei der europäischen Airbus. Andererseits sagen Analysten, volle Kabinen mit zehn Sitzen pro Reihe bei vorhandenen 777s deuteten darauf hin, dass sich viele Passagiere für die engere Anordnung entschieden, was mit billigeren Flugtarifen einhergehen könnte. „Achtzehn Zoll Sitzbreite wären toll für Passagiere, aber die Wirklichkeit ist: von einem wirtschaftlichen Gesichtspunkt aus ist das Airbus-Angebot von der Bedrohung durch die 777 gesteuert“, sagt Mary Kirby, Expertin für Kabineneinrichtung, Gründerin und Herausgeberin von Runway Girl Network. Airbus und Boeing bieten keine Sitze an, sondern einen Katalog von Zulieferern, aus denen die Fluggesellschaften auswählen können. Die weltreisenden Jet-Verkäufer tragen sogar Bandmaß bei sich, um die Einrichtung bei der Konkurrenz nachzumessen. Selbst wenn sie den Komfort anpreisen, so bieten doch alle Hersteller auch Jets mit hochverdichteter Ausgestaltung für Billigfluglinien und regionale Flüge. Airbus bietet einen A350 mit zehnsitzigen Reihen, hat aber laut eigener Aussage noch keinen verkauft. Bis vor kurzem hat Airbus betont, wie wichtig mehr Anpassbarkeit der Kabinen sei und für einige Jets breite Sitze an den Gängen angeboten. Ohne die Unterstützung des einzigen anderen Herstellers großer moderner Jets sagen Experten, dass der Ruf nach einem neuen Branchenstandard vermutlich verpuffen werde, aber von der Welle von 777X-Verkäufen ablenken könnte. Neuer Anti-Nikotin-Impfstoff könnte dem Vergnügen beim Rauchen den Garaus machen Wissenschaftler haben einen Anti-Nikotin-Impfstoff entwickelt, der den Spaß am Rauchen verderben könnte. Eine einzige Dosis des Impfstoffs konnte Mäuse ein Leben lang vor Nikotinsucht schützen. Vor Tests am Menschen werden noch weitere Versuche benötigt, was noch einige Jahre dauern kann, doch Professor Ronald Crystal vom Weill Cornell Medical College in New York sagte, die ersten Ergebnisse seien gut. „Wir sind sehr hoffnungsvoll, dass diese Art von Impfstrategie einmal Millionen von Rauchern helfen kann, die versucht haben aufzuhören und dabei alle auf dem Markt erhältlichen Methoden ausprobiert haben, aber erleben mussten, dass ihre Nikotinsucht stärker ist als diese Ansätze“, so Cornell. Der neue Impfstoff enthält einen harmlosen Virus, der so verändert wurde, dass er die genetischen Informationen zur Herstellung von Nikotin-Antikörpern enthält. Der Virus infiziert selektiv die Leberzellen, die dann einen ständigen Strom von Antikörpern produzieren. Die Antikörper jagen die Nikotinmoleküle im Blut und neutralisieren sie, ehe sie das Gehirn erreichen, wodurch ein Raucher kein Nikotin-High erfährt. In Versuchen behielten geimpfte Mäuse, denen Nikotin verabreicht wurde, ihr normales Aktivitätsniveau bei. Mäuse ohne Impfung dagegen hätten eine „Auszeit“ genommen, erklärten die Forscher, ein Zeichen dafür, dass das Nikotin ihr Gehirn erreicht habe. Die Experimente sind im Fachblatt Science Translational Medicine beschrieben. Frühere Tabakimpfstoffe schlugen fehl, weil sie Antikörper enthielten. Die Impfungen mussten zur Aufrechterhaltung des Antikörperpegels so häufig gegeben werden, dass sie teuer und unpraktisch waren. Doch die Kosten des neuen Impfstoffs sind wahrscheinlich deutlich niedriger, denn er verwandelt Leberzellen in Antikörperfabriken. Wie Professor Crystal sagte, könnte ein zukünftiger Impfstoff für Menschen, wenn er ganz sicher sei, Kindern verabreicht werden, ehe sie in Versuchung gerieten, eine Zigarette zu probieren, und so Nikotinsucht verhindern. Wahrscheinlicher aber ist, dass Raucher ihn einsetzen würden, um aufzuhören. „Sie wissen dann: Wenn sie wieder anfangen zu rauchen, empfinden sie wegen des Nikotinimpfstoffs kein Vergnügen mehr dabei, und das hilft ihnen, die Gewohnheit abzulegen“, erläutert er. Britische Wissenschaftler sagten, die Ergebnisse seien interessant, warnten aber gleichzeitig, es sei noch weitere Forschung notwendig. Tripodi bestreitet, von Obeid beeinflusst worden zu sein Gegen den früheren Minister der Labor-Partei Joe Tripodi aus New South Wales wird eine Ermittlung durch die staatliche Korruptionsaufsicht eingeleitet. Der ehemalige NSW-Minister bestreitet, die Regelungen zur Maritimverpachtung auf Bitte seines politischen Mentors Eddie Obeid geändert zu haben, der verdeckte Beteiligungen an drei Grundstücken auf staatlich kontrolliertem Land besaß. Die Independent Commission Against Corruption (ICAC ­ Unabhängige Kommission gegen Korruption) hat am Freitag ihre Untersuchungen zur Frage ausgeweitet, ob Obeid verschiedene Staatsminister dahingehend beeinflusst hat, Pachtverträge am Circular Quay, wo die Obeids zwei Restaurants und ein Café betrieben, ohne Ausschreibung nach deren Auslaufen im August 2005 zu verlängern. Jetzt wird wegen der Anschuldigung ermittelt, Tripodi habe von Obeids verdecktem Interesse an den Grundstücken gewusst, nachdem Tripodis frühere stellvertretende Stabschefin Lynne Ashpole am Donnerstag entsprechend ausgesagt hatte. In jahrelangen Gesprächen, die 2005 begannen, hatte die Regierung auf öffentliche Ausschreibungen für die Pachtverträge gedrängt. Die Pächter waren dagegen und wollten zudem längere Laufzeiten. 2009 wurden die Pachtverträge für die Unternehmen am Circular Quay, die den Obeids jährlich 2,5 Millionen Dollar einbrachten, ohne öffentliche Ausschreibung verlängert. Tripodi, der von Februar 2006 bis November 2009 Hafenminister war, hatte sich ursprünglich für öffentliche Ausschreibungen ausgesprochen. Doch er stritt ab, die Änderungen auf Bitten von Obeid vorgenommen zu haben, der, wie Tripodi bestätigte, auf eine Umgestaltung der Pachtregelungen der Regierung gedrängt hatte. Eine der ICAC vorgelegte Telefonniederschrift zeigte Gespräche aus dem August und September 2007 zwischen Obeid, Tripodi und Steve Dunn, einem leitenden Beamten, der ins Hafenministerium gewechselt war, nachdem er unter Obeid in der Fischereibehörde gearbeitet hatte. „War das in diesen Telefongesprächen besprochene Thema die Ausarbeitung der kommerziellen Verpachtungsregelungen?“, fragte das stellvertretende Kommissionsmitglied Anthony Whealy Tripodi. „Nein“, antwortete Tripodi. Ich kann mich nicht erinnern, was besprochen wurde, aber das war es definitiv nicht. Definitiv nicht zwischen mir und Herrn Obeid. Israelische Kampfflugzeuge greifen Ziel in Syrien an, so offizielle Quellen Israelische Jagdflugzeuge hätten Donnerstagnacht ein Ziel im syrischen Hafen Latakia angegriffen, bestätigte ein leitender Regierungsmitarbeiter gegenüber Fox News. Der Beamte erläuterte nicht, was das Ziel gewesen sei, sagte aber, es sei mindestens eines gewesen. Laut Associated Press handelte es sich bei dem Ziel um russische SA-125-Raketen. Mindestens zweimal hat Israel dieses Jahr schon Luftschläge auf Raketenlieferungen in Syrien durchgeführt. Ausländische Arbeitnehmer mit 457-Visa könnten „Echtheitstest“ unterzogen werden Die Regierung denkt im Rahmen erweiterter Maßnahmen über einen „Echtheitstest“ für ausländische Arbeitnehmer mit 457-Visum nach. Sollte der Test eingeführt werden, käme er über ein Kriterium zum Einsatz, das verhindern soll, dass das 457 zur Besetzung unqualifizierter Arbeitsplätze oder als Hintertür für den Zuzug von Familie und Freunden nach Australien benutzt wird. Heute wurde ein Diskussionsvorschlag der Regierung veröffentlicht, nachdem die frühere Abgeordnete der Labor-Partei, Maxine McKew, die Kommentare der Regierung im Hinblick auf ausländische Arbeitnehmer verurteilt hatte, weil diese von den Nachbarn Australiens als Beleidigung aufgefasst werden könnten. „Lautstarke Erklärungen wie ,Ausländer sollen sich hinten anstellen‘ und ,Australier zuerst einstellen‘ sind ein sehr unangenehmer Rückfall in Zeiten, in denen Gewerkschaften einen geschützten Arbeitsmarkt forderten“, sagte sie dem Australia India Institute heute. Historisch betrachtet hieß das, dass weiße Arbeitskräfte geschützt werden sollten – und wenn manche in der Region ein Echo dieses historischen Artefakts vernähmen, würde mich das nicht wundern. Der Diskussionsvorschlag umreißt zwölf Maßnahmen, die einst vom ehemaligen Einwanderungsminister Chris Bowen angedacht wurden. Einwanderungsminister Brendan O'Connor, der gestern zu Gesprächen über Menschenschmuggel in Sri Lanka weilte, hat fünf der empfohlenen Änderungen umgesetzt, die anderen werden noch erwogen. Wenn das „Echtheitskriterium“ übernommen wird, dann könnte jemand, der ein Visum beantragt, dahingehend überprüft werden, ob „der Antrag in den Fällen echt ist, in denen der Antragsteller mit dem Inhaber oder einer relevanten Person des unterstützenden Unternehmens verwandt oder persönlich verbunden ist.“ Firmen könnten außerdem verpflichtet werden, Rechenschaft über die Anzahl der 457-Visumsinhaber abzulegen, nachdem in der Vergangenheit Unternehmen, die zunächst nur eine kleine Anzahl von Arbeitern unterstützen wollten, schließlich Hunderte eingestellt haben. Unterdessen starb ein 35-jähriger sri-lankischer Asylant vermutlich an einem Herzinfarkt, nachdem er diese Woche mit einem Flüchtlingsboot auf der Weihnachtsinsel angekommen war. Der verstörte neunjährige Sohn des Mannes, der mit ihm nach Australien gekommen war, wird seit dem Tod seines Vaters am Mittwoch von einem erwachsenen Cousin betreut, der ebenfalls auf dem Boot war. Australische Behörden brachten den Mann in das Christmas Island Hospital, wo er starb. Von der britischen Regierung wurde eine Studie angekündigt, die die Vorteile des HS2-Eisenbahnprojekts für Schottland erhöhen soll. In der Arbeit von HS2 Ltd wird vorgeschlagen, schon mit Beginn von Phase 1 im Jahr 2026 Hochgeschwindigkeitsverbindungen zwischen Schottland und dem Norden Englands zu verwirklichen. Verkehrsministerin Baroness Kramer sagte, das Projekt „wird Großbritannien näher zusammenbringen“. Der schottische Verkehrsminister Keith Brown erklärte, er sei sehr erfreut, mit der britischen Regierung an diesem Plan zu arbeiten. Phase 1 besteht aus einer neuen Hochgeschwindigkeits-Bahnverbindung zwischen London und den West Midlands. Nach Abschluss von Phase 2 wird es Verbindungen nach Manchester und Leeds geben. Im Juni korrigierte die Regierung die geschätzten Kosten für den Bau der Hochgeschwindigkeitstrasse zwischen London und Nordengland von 32,7 Mrd. Pfund auf 42,6 Mrd. Pfund. Die britische Regierung, die in Gesprächen mit Transport Scotland steht, hat HS2 Ltd beauftragt, nach weiteren Streckenkapazitäten und Reisezeitverbesserungen für Nordengland und Schottland zu suchen. Dazu gehört die Möglichkeit einer Reisezeit von letztendlich drei Stunden oder weniger von Glasgow und Edinburgh nach London. Baroness Kramer sagte: „Unser Ziel für HS2 ist ein wirklich nationales Streckennetz, das Großbritannien und seine Städte näher zusammenbringt.“ Wir gehen mit HS2 voran, weil es enorme Vorteile mit sich bringt. Ohne es stehen wir vor einer Kapazitätskrise in unserem Bahnnetz. Doch es geht auch um die Verbindung zwischen 18 britischen Städten, einschließlich Glasgow und Edinburgh, die dank HS2 verbessert wird. Der schottische Staatssekretär Alistair Carmichael kommentierte: „Die heutige Ankündigung ist eine gute Nachricht für Schottland.“ Im Namen der schottischen Regierung forderte Keith Brown Carmichael auf, sich „unmissverständlich“ für die schottische Einbindung in das HS2-Netzwerk einzusetzen. Brown sagte: „Die Hochgeschwindigkeits-Bahnverbindung birgt das Potenzial enormer wirtschaftlicher Vorteile für Schottland, gleichzeitig liefert aber auch die Wirtschaftskraft Schottlands ein Argument für schnelle Bahnverbindungen in ganz Großbritannien.“ Deshalb sind wir erfreut, als Partner der britischen Regierung zu arbeiten und die Optionen für eine Hochgeschwindigkeits-Bahnverbindung in Schottland zu untersuchen, die Vorteile für alle schafft und die Verbindung Glasgow-Edinburgh ergänzt, die die schottische Regierung bereits plant. Ich freue mich darauf, den Untersuchungsbericht mit den britischen Ministern im nächsten Jahr zu prüfen und gemeinsam die nächsten Schritte zu beschließen. Vorschriften zu elektronischen Geräten in Flugzeugen bleiben in Australien vorläufig in Kraft Australische Flugpassagiere müssen auch weiterhin Tablets und Smartphones bei Start und Landung abschalten, trotz Bemühungen in den USA, die Regelungen für derartige Geräte zu lockern. Die US-amerikanische Federal Aviation Administration (FAA) ermöglicht US-Fluggesellschaften, ihre Vorgaben zu ändern, sodass Passagiere auf ihren Geräten während kritischer Flugphasen E-Books lesen, Videos sehen oder spielen können, sofern diese sich im „Flugmodus“ befinden. Während des Großteils des Flugs ist Passagieren dies bereits erlaubt, doch finden es viele Leute ärgerlich, dass sie beim Start und der Landung ihre E-Books nicht lesen dürfen. Australische Gesellschaften beobachten die Entscheidung, zu deren Umsetzung die US-amerikanischen Fluggesellschaften Unmengen an Arbeit erledigen müssen, verfolgen jedoch keine unmittelbare Pläne zur Änderung ihrer Vorschriften. Die Flugsicherungsbehörde CASA erklärte ebenfalls, man werde sich die Ankündigung ansehen, betonte aber, dass die Einschränkungen bei der Nutzung elektronischer Geräte in kritischen Flugphasen in Australien nach wie vor gelten. „Die CASA hat derzeit keine spezifischen Regelungen hinsichtlich des Gebrauchs elektronischer Geräte im Flugzeug“, wurde verlautbart. Das Thema unterliegt Bestimmungen, denen zufolge Fluggesellschaften die Sicherheit jederzeit aufrechterhalten und Passagiere die vom Kabinenpersonal gegebenen Sicherheitsanweisungen befolgen müssen. Virgin hat bereits mit der CASA Gespräche über eine Nutzungsausweitung seines Wi-Fi-Unterhaltungssystems auf Flügen geführt und erklärt, man sei offen für Veränderungen, diese müssten aber vom Gesetzgeber initiiert werden. „Wir würden eine Überprüfung der Zulassung elektronischer Geräte durch die CASA begrüßen, denn wir sind überzeugt, dass dies das Kundenerlebnis verbessern würde, nachdem wir nun (drahtlose Unterhaltung) während des Flugs anbieten“, sagte ein Sprecher. Qantas erklärte, man werde bis auf Weiteres bei den aktuellen Vorschriften bleiben. „Unsere derzeitigen Richtlinien sehen vor, dass elektronische Geräte beim Start und der Landung nicht verwendet werden dürfen, und wir haben zurzeit keine Pläne, das zu ändern“, erklärte das Unternehmen. Die FAA-Regelungen gelten für US-amerikanische Fluggesellschaften. Wir sind allerdings immer an Entwicklungen bei Regelungen interessiert, von denen Passagiere profitieren können, und werden uns die FAA-Entscheidung sowie die Gründe dahinter sicherlich genau ansehen. Die Entscheidung wirkt sich bei US-amerikanischen Gesellschaften je nach Alter der Flotte unterschiedlich aus. Sie müssen nachweisen, dass ihre Flugzeuge die Funkstörungen durch Mobilgeräte tolerieren können, und Handbücher, Schulungsmaterialien, Handgepäck-Programme sowie Kundenunterweisung ändern. „Nachdem eine Fluggesellschaft die Toleranz ihrer Flotte bestätigt hat, kann sie Passagieren das Verwenden tragbarer, leichter elektronischer Geräte wie Tablets, E-Book-Lesegeräte und Smartphones in jeder Höhe erlauben“, gab die FAA bekannt. In seltenen Fällen bei schlechter Sicht wird die Crew die Passagiere anweisen, während der Landung die Geräte abzuschalten. Die Gruppe empfahl außerdem, schwerere Geräte bei Start und Landung sicher unter dem Sitz oder in den Fächern über den Sitzen zu verstauen. Vor dem Revierderby gegen Schalke hatten mitgereiste BVB-Anhänger mit Leuchtraketen für hässliche Szenen in der Veltins-Arena gesorgt. Borussia Dortmund kündigte daraufhin harte Konsequenzen an. Vor dem Freitagsspiel der Fußball-Bundesliga gegen den VfB Stuttgart reagierten die Ultras mit einem Schweigen - zunächst. Es war eine ungewohnte, fast schon gespenstische Akustik, die sich dem Betrachter bis kurz vor dem Anpfiff des Bundesligaspiels zwischen dem deutschen Vizemeister Borussia Dortmund und dem VfB Stuttgart im Signal Iduna Park bot. Zu hören waren überwiegend die Gästefans mit ihren Gesängen. Die Südtribüne dagegen, wo die treuesten der treuen - und lautesten - BVB-Fans stehen, präsentierte sich zunächst außergewöhnlich leise: Keine Gesänge, keine Schlachtrufe. Das Podest des Capo, der sonst die gemeinsame Anfeuerung koordiniert, blieb unbesetzt. Und ganz vorne auf der Tribüne wehte einsam eine große Fahne mit Aufschrift "Sektion Stadionverbot". Nur als Torhüter Roman Weidenfeller wie immer als erster BVB-Spieler den Platz betrat, brandete kurzzeitiger Jubel auf. Als seine Mannschaftskollegen folgten, gab es lautstarken Gesang und wehende Schals - aber längst nicht überall. In den zentralen Blöcken 12 und 13 der Südtribüne regte sich nichts. Auch dass Stadionsprecher Norbert Dickel noch einmal die positiven Erlebnisse der letzten Tage - Derbysieg, Sieg über Arsenal, Vertragsverlängerung von Trainer Jürgen Klopp - aufzählte, sorgte nicht für Feierlaune. Erst fünf Minuten vor dem Anpfiff erklomm der Capo sein Podest - und die bis dahin geradezu mit Händen greifbare Anspannung entlud sich in einem lauten Schrei, als Dickel wie gewohnt die Stimmung auf den Rängen im Stadion abfragte. Als letztes war wie immer die Südtribüne an der Reihe - und endlich war hier wieder wie gewohnt der lauteste Ort im Stadion. Und spätestens als mit Anpfiff von der Südtribüne die lautstarke Aufforderung "Derbysieger steht auf" kam, war wieder alles wie immer. Das Schweigen zuvor war wohl eine Reaktion auf die Geschehnisse der vergangenen Tage. Unmittelbar vor Revierderby beim FC Schalke 04 hatten einige der mitgereisten BVB-Anhänger Leuchtraketen in die Zuschauerränge und auf den Platz gefeuert - und dabei fast Torhüter Roman Weidenfeller getroffen. Das Spiel wurde wegen der chaotischen Szenen verspätet angepfiffen. BVB-Boss Hans-Joachim Watzke hatte die Spitzen der Dortmunder Ultras daraufhin in seinem Büro empfangen - und glaubt man Watzkes Worten, war dies für die Fanvertreter ein eher ungemütlicher Termin. "Es wird für die gesamte Ultrabewegung massive Einschnitte geben", verkündete der BVB-Boss am Donnerstagabend auf einer Podiumsdiskussion in Frankfurt. Als Sofortmaßnahme untersagte Watzke den Ultras eine Choreographie für das Heimspiel gegen den VfB Stuttgart. "Das habe ich verboten", erklärte er. Die Null-Toleranz-Politik in Sachen Pyrotechnik können wir nicht aufgeben. Zudem wurden den Ultras verschiedene Möglichkeiten einer Bestrafung aufgezeigt - bis zum Dienstag haben diese nun Zeit, sich für eine zu entscheiden. Andernfalls, so Watzke, werde der BVB bis Ende der kommenden Woche eine Sanktion festlegen. "Das wird einschneidend", versicherte Watzke . Man darf gespannt sein, wie die Reaktionen auf der Südtribüne dann ausfallen. Pfandhäuser boomen in Singapur, da die Krise in der Mittelschicht angekommen ist In einem Pfandhaus im Einkaufszentrum Bendemeer in Singapur tauscht Janani Amirthalinga einen goldenen Armreif, einen Ring und ein Paar Ohrringe ein, um die Schulgebühren ihrer Töchter bezahlen zu können. „Mein Ehemann und ich haben gerade ein Haus gekauft, da steckt mein ganzes Geld drin“, sagt Amirthalinga. Obwohl sie jeden Monat 3.000 Singapur-Dollar (ca 1.730 Euro) als Verwaltungsmitarbeiterin verdiene und ihr Mann auch arbeite, reiche das monatliche Familieneinkommen nicht aus, erläutert sie. Tatsächlich ist die Nachfrage in Teilen Südostasiens – wo die Verschuldung der Haushalte zunimmt – so groß, dass ValueMax, wo sie ihren Tausch vorgenommen hat, diese Woche das dritte Pfandhaus wurde, das an der singapurischen Börse gelistet ist. Das Verpfänden von Schmuck ist nicht nur ein schneller Weg, um Geld zu bekommen – 1.300 Singapur-Dollar im Fall von Janani Amirthalinga –, sondern auch fast so günstig wie ein ungesichertes Bankdarlehen. Typischerweise verlangen Pfandhäuser in Singapur einen effektiven Jahreszins von 17 Prozent, der nur knapp über den 15,4 Prozent liegt, die die United Overseas Bank verlangt, ein lokaler Kreditgeber mit einer Filiale im selben Einkaufszentrum. Pfandhäuser bieten aber den Vorteil, dass hier keine Überprüfung der Kreditwürdigkeit oder Einkommensnachweise erforderlich sind, weshalb Darlehen schneller als bei Banken möglich sind. Aus diesem Grund wenden sich Millionen von Menschen in der Region an Pfandhäuser, nachdem Familien den Druck durch steigende Lebenshaltungskosten sowie eine zunehmende Haushalts- und Verbraucherverschuldung spüren. Nach fünf Jahren robusten Wachstums seit der globalen Finanzkrise und billigen Krediten aufgrund einer lockeren Finanzpolitik in den entwickelten Wirtschaftsräumen suchen Familien mit geringeren und mittleren Einkommen Pfandhäuser auf, um so bei stotternder Wirtschaft den Unterschied auszugleichen. Diese Woche bezeichnete die Rating-Agentur Standard & Poor's wachsende Haushaltsverschuldung, hauptsächlich durch steigende Hypotheken, als einen Risikofaktor für die Kreditwürdigkeit asiatischer Banken. Malaysia, Thailand und Singapur haben nach Einschätzung der Agentur die höchste Haushaltsverschuldung in Asien im Verhältnis zum Bruttoinlandsprodukt. Malaysia steht mit 80 Prozent des BIP an der Spitze der Liste, ein Anstieg von 60 Prozent noch im Jahr 2008. Volkswirtschaftler sorgen sich auch wegen der hohen Verbraucherverschuldung in Thailand, das diese Woche knapp aus einer technischen Rezession herausgekommen ist. Am Donnerstag zeigten die Daten eine weiterhin bestehende Exportschwäche und ein Nachlassen der Verbrauchernachfrage. „Im Endeffekt bedeutet das, dass angesichts steigender Kosten die Menschen im mittleren bis unteren Segment (der Einkommensskala) versuchen werden, ihr Einkommen zu ergänzen, wo immer das möglich ist“, sagt Song Seng Wun, Ökonom bei CIMB, einer malaysischen Bank. Historische Höchststände bei den Goldpreisen in den letzten zwei Jahren haben den Trend zur Verpfändung persönlicher Gegenstände noch verstärkt, da die Menschen die Gelegenheit nutzen, den Schmuck der Familie in Bargeld zu verwandeln. In Singapur sind etwa 70 Prozent der verpfändeten Gegenstände in den 200 Pfandhäusern des Stadtstaats Gold. Die Leute sagen sich: „Der Goldpreis sieht gut aus, lasst uns Großmutters Goldkette verpfänden und nächsten Monat zurückholen.“ Der größte thailändische Pfandhausbetreiber, EasyMoney, hat in seinen Filialen einen 20-prozentigen Kundenzuwachs in den letzten Monaten erlebt. Das Wachstum im Pfandgeschäft ist so stark, dass ValueMax, Betreiber der Filiale in Bendemeer und 15 weiterer in Singapur, nicht nur in das benachbarte Malaysia expandieren möchte – wo das Unternehmen vier Häuser betreibt –, sondern auch außerhalb Asiens, so Yeah Lee Ching, Geschäftsführerin von ValueMax. Das Unternehmen finanziert das mit 60 Prozent der 66 Millionen Singapur-Dollar, die es diese Woche mit dem Börsengang in Singapur einnahm. Während einige Kreditgeber wegen hoher Zinssätze ins Kreuzfeuer geraten seien, erklärt Yeah, dass Pfandhäuser nicht nur günstigere Zinsen als andere Verleiher böten, sondern auch nicht direkt die Schulden erhöhten. „Kunden beleihen Gegenstände, die sie bereits besitzen, und das Verflüssigen persönlicher Wertgegenstände vergrößert nicht die Haushaltsverschulung“, erläutert sie. Das Pfandleihgeschäft wird gesellschaftlich zunehmend als kurzfristige, abgesicherte Finanzierung akzeptiert. Auch sind nicht alle Menschen, die Pfandleihe nutzen, in finanziellen Schwierigkeiten. Reiche Leute aus Singapur kommen auch in die Filialen von ValueMax, um Goldbarren und Rolex-Uhren zu verpfänden, wofür sie bis zu 60 Prozent des Kaufpreises in bar erhalten. Zu uns kommen Kunden aus jeder sozialen Schicht. „Dazu gehören Wohlhabende, die kurzfristig etwas für ein Geschäft oder eine Investition leihen, oder kleine Unternehmen, die Engpässe im Cash-Flow überbrücken müssen“, sagt Yeah. Manchmal brauchen sie auch einfach nur sehr schnell Geld. NSA saugt Daten von Google und Yahoo ab - Snowden will helfen Der Geheimdienst-Enthüller Edward Snowden hat prinzipielles Interesse, Deutschland bei der Aufklärung der immer brisanter werdenden NSA-Spähaffäre zu helfen. Nach Darstellung des Grünen-Bundestagsabgeordneten Hans-Christian Ströbele ging es bei seinem überraschenden Treffen mit Snowden in Russland darum, unter welchen Bedingungen der Ex-Geheimdienstmitarbeiter bei einer deutschen Staatsanwaltschaft oder vor einem Untersuchungsausschuss aussagen würde. Snowden habe auf seine komplizierte juristische Situation verwiesen, sagte Ströbele dem ARD-Magazin "Panorama". Rettungspaket über 325 Millionen australische Dollar für tasmanisches Gesundheitswesen Die australische Regierung besteht auf den harten Bedingungen, die mit dem Rettungspaket über 325 Millionen australische Dollar für das tasmanische Gesundheitswesen verknüpft sind, um sicherzustellen, dass die Regierung des Bundesstaates das Geld nicht verschwenden kann. Bundesgesundheitsministerin Tanya Plibersek hat angekündigt, der Commonwealth werde „unverzügliche Maßnahmen“ ergreifen, um eine Krise abzuwenden, die durch eine alternde Bevölkerung des Inselstaats, eine höhere Quote an chronischen Erkrankungen und Systemeinschränkungen verursacht worden sei. Die Finanzierung für einen Zeitraum von vier Jahren wurde nach Regierungsberatungen mit dem unabhängigen tasmanischen Abgeordneten Andrew Wilkie beschlossen. „Die Regierung hat ein Notfallrettungspaket geschnürt, das unserer Ansicht nach die einzigartigen Herausforderungen angeht, denen sich der Bundesstaat gegenüber sieht“, erklärte Plibersek heute. Das 325-Millionen-Dollar-Paket umfasst 31 Millionen Dollar Soforthilfe für Wahlleistungen. Durch weitere 2600 Operationen, einschließlich orthopädischer Eingriffe und Behandlungen wegen grauem Star, sollen Rückstände beseitigt werden. Darüber hinaus gibt es Geld für Tageskliniken in Hobart und Launceston, bessere Nachsorge nach stationären Aufenthalten, die Facharztausbildung, Dienstleistungen im Bereich psychische Gesundheit und die Einführung eines Systems zur elektronischen Aufzeichnung von Gesundheitsdaten in lokalen Krankenhäusern. „Diese Investitionen entsprechen den Ideen, von denen mir betroffene Klinikmitarbeiter gesagt haben, sie seien die beste Möglichkeit, das tasmanische Gesundheitssystem zu verbessern“, sagte Tanya Plibersek. Die Ministerin bestand auf einer strengen Berichts- und Rechenschaftspflicht der tasmanischen Regierung. Der Bundesstaat müsse das aktuelle Finanzierungsniveau beibehalten, um Geld aus dem Commonwealth erhalten zu können, und monatlich darüber berichten, wo die zusätzlichen Gelder ausgegeben wurden. Eine dreiköpfige Kommission wird eingerichtet und soll sicherstellen, dass der Bundesstaat Gesundheitsdienste so effektiv und effizient wie möglich bereitstellt. Wie Wilkie heute erklärte, würden die 325 Millionen Dollar nur wenig nützen, wenn „sie nicht von echten Reformen begleitet werden, die das öffentliche tasmanische Gesundheitssystem auf einen nachhaltigeren Kurs bringen.“ Dessen ungeachtet lobte er die Regierung dafür, dass sie auf seine Bitte um dringende Hilfe reagiert habe, die er zuerst gegenüber dem Premierminister Anfang Mai zum Ausdruck gebracht habe. „Ich bin zuversichtlich, dass die Bundeshilfen einen großen Beitrag dazu leisten werden, das öffentliche Gesundheitssystem des Bundesstaates von der Sorgenliste zu nehmen“, sagte Wilkie. Laut der Regierung des Bundesstaates werden diese Wahlleistungen weitgehend die kürzlichen Einschnitte wettmachen. Doch der gesundheitspolitische Sprecher der Opposition auf Bundesebene, Peter Dutton, ist der Ansicht, die heutige Ankündigung sei nur eine „Pflasterlösung“. „Wir sind deshalb in der heutigen Lage, weil die Labor-Staatsregierung 430 Millionen Dollar aus dem Gesundheitssystem abgezogen hat“, sagte er gegenüber ABC TV. Es kann nicht sein, dass eine Staatsregierung beinahe eine halbe Milliarde Dollar aus dem System reißt und der Commonwealth 300 Million hineinsteckt und dann so tun, als seien das gute Nachrichten. Dutton forderte Plibersek auf zu garantieren, dass nicht ein einziger Dollar des Rettungspakets für zusätzliche Bürokratie ausgegeben werde. Guillaume Nicloux' Adaption des Romans von Denis Diderot überzeugt mit außergewöhnlicher Produktionsausstattung und zeitgenössischen Details, ist allerdings auch schwerere Kost als nötig. Die im Frankreich der 1760er Jahre spielende Handlung erzählt die ergreifende Geschichte von Suzanne, einer jungen Adligen, die von ihrer Familie ins Kloster geschickt wird. Als sie rebelliert, ist sie mit der extremen Grausamkeit einer äußerst sadistischen Oberin konfrontiert und wird zum Objekt erotischer Faszination einer anderen. Der Film gleitet niemals ab in Lüsternheit oder Sensationslust – und darin liegt sein Problem. Der feierliche Ernst, mit dem der Film erzählt wird, macht ihn auch für das Publikum zum quälerischen Büßerhemd. Syrien hat seine Möglichkeit zur Herstellung von Chemiewaffen zerstört, so eine Überwachungsgruppe Syrien habe wichtige Einrichtungen zur Herstellung von Chemiewaffen und Gitftgasmunition zerstört, erklärte die globale Überwachungsgruppe für Chemiewaffen am Donnerstag, während es im Norden des Landes zu schweren Zusammenstößen in der Nähe eines der Standorte kam, an denen mutmaßlich giftige Substanzen gelagert werden. Ebenfalls am Donnerstag verkündete eine syrische Aktivistengruppe, dass mehr als 120.000 Menschen seit Beginn des Bürgerkrieges vor nun schon bald drei Jahren getötet worden seien. Die Ankündigung der Organisation für das Verbot chemischer Waffen (OPCW) kam einen Tag vor dem Termin am 1. November, den die in Den Haag ansässige Organisation Damaskus gesetzt hatte, um alle Einrichtungen zur Herstellung von Chemiewaffen zu zerstören oder „inoperabel“ zu machen, einschließlich aller Maschinen für das Mischen von Chemikalien zu Giftgas und das Befüllen von Munition. Der Abschluss dieses Vorgangs, der im Grunde genommen die erste Stufe der Zerstörung darstellt, ist ein wichtiger Meilenstein eines ambitionierten Zeitplans, der auf die Vernichtung aller Chemiewaffen Syriens bis Mitte 2014 abzielt. Die Zerstörung der Einrichtungen bedeutet, dass Syrien keine neuen Chemiewaffen mehr produzieren kann. Damaskus muss allerdings noch damit beginnen, die vorhandenen Waffen und Vorräte zu vernichten. Annahmen zufolge gibt es im Land etwa 1.000 Tonnen an Chemikalien und Waffen, wozu auch Senfgas und das Nervengas Sarin zählen. Die Ankündigung kam zu einer Zeit, als am Donnerstag Kämpfe in der Stadt Safira stattfanden, von der Experten sagen, dass es hier eine Produktionseinrichtung für Chemiewaffen sowie Lagerstätten gebe, wie die in Großbritannien ansässige Syrische Beobachtungsstelle für Menschenrechte mitteilte. Die Aktivistengruppe, die über ein Netzwerk von Aktivisten in Syrien die Zahl der Toten verfolgt, erklärte am Donnerstag, 120.296 Menschen seien gestorben. Davon seien 61.067 Zivilisten, einschließlich 6.365 Kinder. Auf Seiten der Regierung gehörten 29.954 von ihnen der Armee von Präsident Bashar Assad an, 18.678 seien regierungsfreundliche Kämpfer und 187 libanesische Hisbollah-Milizen. Ebenfalls unter den Toten seien 2.202 desertierte Armeesoldaten und 5.375 Kämpfer der Opposition, viele von ihnen Ausländer. Am 25. Juli schätzten die UN die Zahl der Toten in diesem Konflikt seit März 2011 auf 100.000. Diese Zahl wurde bisher nicht aktualisiert. Der Konflikt hat etwa zwei Millionen Menschen zur Flucht aus dem Land gezwungen. Assads Truppen kämpfen seit Wochen in Safira gegen die Rebellen, von denen viele Verbindungen zu al-Qaida-Gruppen haben. Die Beobachtungsstelle sagte, es habe am Donnerstag Verluste auf beiden Seiten gegeben, nannte aber keine Details. Die Kämpfe unterstreichen die Gefahr, der die Chemiewaffeninspektoren ausgesetzt sind, denn ihre Mission zur Befreiung Syriens von seinem giftigen Waffenarsenal ist ein Rennen gegen die Zeit inmitten eines tobenden Bürgerkriegs. Nach Aussage der OPCW, die eng mit den Vereinten Nationen zusammenarbeitet, sei das Team „nun überzeugt, dass es alle von Syrien genannten wichtigen Produktions- und Misch-/Befüllungseinrichtungen gesehen und ihre Zerstörung miterlebt hat.“ Deshalb „sind derzeit keine weiteren Inspektionsaktivitäten geplant.“ Anfang der Woche hatten die Inspektoren erklärt, sie hätten die erste Runde der Überprüfungen abgeschlossen und 21 von 23 der von Damaskus angegebenen Stätten besucht. Wegen Sicherheitsbedenken sei der Besuch zweier Einrichtungen nicht möglich gewesen, sagten die Inspektoren. Am Donnerstag erklärte die OPWC, die beiden Standorte seien laut syrischer Aussage „aufgegeben worden ... und die dort vorhandenen Objekte des Chemiewaffenprogramms seien an andere genannte Einrichtungen verlagert worden, die inspiziert wurden.“ Es war nicht sofort klar, ob die Stätte in Safira eine der beiden Einrichtungen war, die die OPCW-Inspektoren nicht besuchen konnten. Syrien hat einen Plan für die komplette Zerstörung seiner Chemiewaffen vorgelegt, der nächsten Monat vom Exekutivkomitee des OPWC genehmigt werden muss. „Ich ziehe den Hut vor der Tapferkeit und dem Mut, den Sie alle beim Erfüllen der herausforderndsten Mission, die je von dieser Organisation ausgeführt wurde, gezeigt haben“, erklärte Ahmed Uzumcu, der Generaldirektor der Überwachungsorganisation in einem von OPCW veröffentlichten Kommentar. Seit inzwischen drei Jahren kämpfen die hauptsächlich sunnitischen Muslimrebellen in diesem Bürgerkrieg gegen Assads Regierung und ihre Sicherheitskräfte, der viele Mitglieder der Alawiten angehören, einer Abspaltung des schiitischen Islam. Im Hinblick auf weitere Entwicklungen sagte der Leiter der Beobachtungsgruppe, Rami Abdurrahman, es habe am Mittwoch eine starke Explosion in einer Luftverteidigungseinrichtung in der syrischen Küstenprovinz Latakia gegeben. Die Ursache der Explosion sei nicht bekannt, erklärte er. Zorn über Urteil für Bombenleger von Bali Überlebende und Verwandte der 202 Menschen, die 2002 bei dem Bombenanschlag in Bali ums Leben gekommen waren, reagierten verärgert über das Urteil für den letzten der Anstifter, der vor Gericht gestellt wurde, da Umar Patek ihrer Ansicht nach standrechtlich erschossen werden sollte. Patek, der knapp zehn Jahre als eine der meistgesuchten Personen Südostasiens auf der Flucht war, wurde gestern für seine Rolle beim Bau von Sprengkörpern für den Bombenanschlag zu einer Haftstrafe von 20 Jahren verurteilt. Mit Strafaussetzung könnte er nach 15 Jahren entlassen werden. Der 45-jährige wurde des Massenmords für schuldig befunden wegen des Angriffs auf zwei Nachtclubs im beliebten Touristenviertel von Kuta, bei dem 202 Menschen starben, darunter 88 Australier, und viele weitere verletzt wurden. Ein Schuldspruch erfolgte außerdem in einer Reihe terrorismusbezogener Anklagepunkte, wozu eine Welle von Sprengstoffanschlägen auf Kirchen in Indonesien an Heiligabend im Jahr 2000 zählten. Die Staatsanwaltschaft hatte eine lebenslange Haftstrafe gefordert, auch wenn sie für den Mann, der wegen seines Rufs als meisterlicher Bombenbauer auch als „Demolition Man“ bezeichnet wird, die Todesstrafe hätte beantragen können. Die Entscheidung hat schmerzhafte Erinnerungen bei June Corteen geweckt, einer Mutter aus Perth, die ihre 39 Jahre alten Zwillingstöchter Jane und Jenny in der von Patek und seinen Mitverschwörern vor fast zehn Jahren angerichteten Verwüstung verloren hat. Mit Tränen kämpfend sagte sie, Patek hätte zum Tode verurteilt werden sollen. Ich meine wirklich, er sollte in den Fußstapfen der anderen Kerle folgen. „Man sollte ihn vor ein Erschießungskommando stellen“, sagte Corteen gegenüber AAP. Ich muss jeden Tag damit leben, dass ich keine weiteren Enkel bekommen werde und ich meine Töchter nie mehr sehen werde. Der Sari Club wurde dem Erdboden gleichgemacht, als am 12. Oktober 2002 kurz nach 23 Uhr eine gewaltige Bombe in einem Kleinlaster explodierte, der vor dem Nachtclub geparkt war. Peter Hughes war in Paddy's Bar, wo nur 20 Sekunden früher ein Selbstmordattentäter einen mit Sprengstoff gefüllten Rucksack explodieren ließ. Er fiel nach dem Anschlag einen Monat lang ins Koma und „starb“ dreimal, während er an einem Lebenserhaltungssystem hing. Hughes sagte, Patek habe dasselbe Schicksal verdient wie die drei anderen Mitglieder der Terrorzelle Jemaah Islamiah – Amrozi, Mukhlas und Imam Samudra –, die für das Blutbad verantwortlich waren und vor vier Jahren hingerichtet wurden. Wirklich, dieser Typ sollte vor allen anderen die Todesstrafe bekommen. Ihn am Leben zu lassen – nein, es gibt keinen Grund, ihn am Leben zu lassen. 20 Jahre zu bekommen, nachdem er 202 Menschen getötet und viele Hunderte verletzt hat, ist nicht viel. Patek ist der letzte der Bali-Bomber, der vor Gericht stand. Er entzog sich beinahe ein Jahrzehnt der Festnahme, wurde aber schließlich im Januar 2011 in der pakistanischen Stadt Abbottabad aufgegriffen, wo US-Streitkräfte knapp vier Monate später den früheren al-Qaida-Chef Osama bin Laden töteten. Während der Verhandlung sagte ein FBI-Agent aus, dass Geheimdienstberichte den Hinweis erbracht hätten, dass sich Patek in Pakistan befand, um bin Laden zu treffen mit dem Ziel, die Verbindung zwischen südostasiatischen Terrorgruppen und al-Qaida wieder aufzubauen. „Er hat sich nicht gestellt“, sagte Corteen. Bis vor kurzem hat er keine Reue dafür gezeigt, wie viel Leid er anderen Menschen zugefügt hat. Das Urteil erging vor dem zehnjährigen Jahrestag des Anschlags in diesem Jahr, der mit Gedenkfeiern in Bali und Australien begangen wird. „Es wird dieses Jahr viele Tränen geben“, sagte Corteen. Patek kann gegen sein Urteil noch Berufung einlegen. FAA: Fluggäste können jetzt elektronische Geräte in Flugzeugen verwenden (aber keine Handygespräche führen) Flugreisende können jetzt vom Abflug bis zur Landung ihre elektronischen Geräte zum Lesen, Arbeiten, Spielen, Musik hören und dem Ansehen von Filmen verwenden, nicht aber mit dem Handy telefonieren, so die neuen Richtlinien, die am Donnerstag von der Federal Aviation Administration (FAA) in den USA herausgegeben wurden. Doch sollten die Passagiere nicht erwarten, dass diese Änderungen sofort umgesetzt werden. Wie schnell sie implementiert würden, hinge von der jeweiligen Fluggesellschaft ab, erklärte FAA-Mitarbeiter Michael Huerta auf einer Pressekonferenz. Die Fluggesellschaften müssen der FAA nachweisen, dass Flugzeuge den neuen Richtlinien entsprechen und dass sie die Schulungshandbücher des Flugpersonals sowie die Regelungen für das Verstauen der Geräte entsprechend der neuen Vorschriften aktualisiert haben. Die FAA erklärte, sie habe bereits von einigen Fluggesellschaften Pläne erhalten, die den Einsatz tragbarer elektronischer Geräte in Flugzeugen ausbauen möchten. Unter diesen Fluggesellschaften waren auch Delta und JetBlue. „Je nach Zustand des Plans könnten wir die erweiterte Nutzung elektronischer Geräte sehr bald genehmigen“, gab die FAA in einer Verlautbarung bekannt. Derzeit müssen Passagiere Smartphones, Tablets und andere Geräte abschalten, wenn die Flugzeugtüren geschlossen werden. Sie dürfen sie erst dann wieder starten, wenn das Flugzeug eine Höhe von drei Kilometern erreicht hat und der Kapitän grünes Licht gibt. Beim Eintritt in den Landeanflug müssen die Fluggäste sie wieder abschalten und dürfen sie nicht wieder starten, ehe das Flugzeug gelandet ist. Nach den neuen Richtlinien könnten Fluggesellschaften, deren Flugzeuge gegen elektronische Störungen gesichert seien, ihren Passagieren erlauben, die Geräte auch bei Start, Landung und auf dem Rollfeld zu verwenden, erklärte die FAA. Die meisten neuen Verkehrsflugzeuge und andere Flieger, die für die Verwendung von Wi-Fi in größeren Höhen umgerüstet wurden, sollten den Kriterien entsprechen. Laura Glading, Präsidentin des Berufsverbands professioneller Flugbegleiter, begrüßte die Änderungen. „Wenn die neue Regelung sicher umgesetzt ist – und wir arbeiten diesbezüglich eng mit der Fluggesellschaft zusammen –, werden beide Seite davon profitieren“, kommentierte Glading. Wir sind es ehrlich gesagt leid, uns bei diesem Thema wie Aufpasser fühlen zu müssen. Dennoch blieben Internetverbindungen zum Surfen, Austauschen von E-Mails, Textnachrichten oder Herunterladen von Daten unter drei Kilometern weiterhin verboten, erläuterte die Behörde. Passagiere werden aufgefordert, Smartphones, Tablets und andere Geräte in den Flugmodus zu versetzen. Also immer noch kein „Words With Friends“, das Scrabble ähnelnde Online-Spiel, das der Schauspieler Alec Baldwin 2011 auf seinem Smartphone spielte, als er öffentlichkeitswirksam einen Jet von American Airlines verlassen musste, weil er sich weigerte, das Gerät abzuschalten, während das Flugzeug am Flugsteig geparkt war. Und schwerere Geräte wie Laptops müssen auch weiterhin verstaut werden, da hier eine Verletzungsgefahr besteht, falls sie durch die Kabine fliegen. Handygespräche während des Flugs bleiben ebenfalls weiterhin verboten. Die Regulierungskompetenz für Telefongespräche liegt bei der Federal Communications Commission (FCC), nicht bei der FAA. FAA hebt möglicherweise Verbot für bestimmte elektronische Geräte bei Start und Landung auf Letzten Monat sagte Mark Rosenker von der Verkehrssicherheitsbehörde National Transportation Safety Board, Sicherheitsexperte für nationale Verkehrsfragen auf CBS News, Handys würden noch immer als Risiko betrachtet. „Handy sind wirklich ein Problem, nicht nur weil sie potenziell Störungen bei Navigationsgeräten verursachen könnten, sondern weil wir von der FCC wissen, dass die Übertragung aus der Luft auch Sendemasten stören kann“, so Rosenker. Ein Beratungskomitee der Branche, das von der FAA zur Untersuchung dieses Themas ins Leben gerufen wurde, empfahl letzten Monat, dass die Regierung einen breiteren Einsatz persönlicher elektronischer Geräte erlaube. In den letzten Jahren hat sich der Druck auf die FAA erhöht, Einschränkungen für den Gebrauch zu lockern. Kritiker wie die demokratische Senatorin Claire McCaskill aus Missouri vertreten die Ansicht, es gebe keine gültigen Sicherheitsgründe für das Verbot. Die Einschränkungen sind auch zunehmend schwerer durchzusetzen, weil die Nutzung der Geräte allgegenwärtig geworden ist. In einigen Studien ist davon die Rede, das bis zu ein Drittel der Passagiere das Abschalten des Gerätes vergisst oder ignoriert. Die FAA begann 1966, die Nutzung elektronischer Geräte durch Flugreisende einzuschränken, nachdem Berichte über Störungen von Navigations- und Kommunikationsgeräten durch von Passagieren mitgeführte UKW-Radios bekannt geworden waren, die damals den neuesten Techniktrend darstellten. Neue Flugzeuge sind weitaus abhängiger von elektrischen Systemen als frühere Generationen von Luftfahrzeugen, aber sie sind auch so konstruiert und von der FAA genehmigt, dass ihnen elektronische Interferenzen nichts ausmachen. Fluglinien bieten Passagieren schon seit einigen Jahren Wi-Fi, wenn die Flughöhe erreicht ist. Die an Wi-Fi-Systeme angepassten Flieger sind auch unempfindlicher gegenüber Interferenzen. Die überwiegende Mehrheit der Passagierflugzeuge sollte für den stärkeren Gebrauch elektronischer Geräte nach den neuen Richtlinien geeignet sein, sagte Huerta. Die heutigen elektronischen Geräte geben im Allgemeinen wesentlich weniger Funkstrahlung ab als frühere Generationen. E-Reader beispielsweise geben nur minimale Strahlung ab, wenn man umblättert. Doch beim Herunterladen oder Senden von Daten sind die Übertragungswerte stärker. Zu den Verfechtern einer Lockerung der Einschränkungen für die Gerätenutzung durch Passagiere zählt Amazon.com. 2011 luden Firmenmitarbeiter ein Passagierflugzeug voller Kindle E-Reader und machten einen Testflug, um Probleme zu ermitteln, konnten aber keine feststellen. Mitglieder des FAA-Beratungskomitees äußerten gemischte Gefühle, was das Risiko bei der Nutzung von Geräten angeht. Douglas Kidd vom Passagierverband National Association of Airline Passengers sagte, er sei der Ansicht, die Störung durch die Geräte sei echt, auch wenn das Risiko minimal sei. Andere Komiteemitglieder sagten, es gebe nur vereinzelte Berichte von Piloten, die für eine Störung von Flugzeugsystemen durch die Geräte sprächen, und die meisten davon seien sehr alt. Das Komitee empfahl der FAA allerdings, es Piloten zu erlauben, bei Instrumentenlandung unter schlechten Sichtverhältnissen das Abschalten der Geräte durch die Passagiere anzuordnen. Eine Gruppierung aus der Reisebranche begrüßte die Änderungen und bezeichnete sie als vernünftige Anpassung für Reisende, die heute umfangreich mit Technik ausgestattet wären. „Wir freuen uns, dass die FAA erkennt, dass ein angenehmes Passagiererlebnis nicht im Widerspruch zur Sicherheit steht“, sagte Roger Dow, CEO der U.S. Travel Association. Per Luftrettungsdienst von Nordsee-Bohrinsel geretteter Vogel wieder freigesetzt Ein per Luftrettungsdienst an die Küste geflogener Vogel, der erschöpft auf einer Nordsee-Bohrinsel gefunden worden war, wurde wieder in die Natur entlassen. Die Wasserralle wurde letzten Monat mit einem Hubschrauber nach Aberdeen geflogen, wo sie von der schottischen Tierschutzorganisation SPCA in deren Rettungscenter in Alloa aufgepäppelt wurde. Colin Seddon, Leiter des Zentrums, sagte: „Diese Wasserralle war wahrscheinlich ein winterlicher Zugvogel aus Nordeuropa, der durch die starken Winde über der Nordsee aufgehalten wurde.“ Anscheinend suchte der erschöpfte Vogel Zuflucht auf der Bohrinsel. Er fügte hinzu: „Er konnte nicht mehr weiterfliegen, weshalb wir mit der Bitte um Hilfe kontaktiert wurden.“ Bei ihrer Freilassung war die Wasserralle wieder fit und gesund. Ist Europas Elite bereit, mit Großbritannien Geschäfte zu machen? Business for Britain wurde im April mit der Absicht gestartet, die Wirtschaft an einen Tisch zu bringen und zu definieren, was diejenigen, die in Großbritannien für Wohlstand und Arbeit sorgen, an unseren Beziehungen zur EU ändern möchten. Zu diesem Zweck haben wir die größte und umfassendste Umfrage unter britischen Wirtschaftsführern in Auftrag gegeben und sie gefragt, was sie über Großbritannien, die Wirtschaft und die EU denken. YouGov befragte über 1.000 Führungskräfte aus der Wirtschaft, die in etwa die britischen Unternehmensgrößen, -sektoren und Regionen abbilden. Die Ergebnisse der Umfrage werden viele überraschen. Wir haben herausgefunden, dass die überwiegende Mehrheit der Unternehmen inzwischen außerhalb Europas exportiert und sich auf Länder konzentriert, die modernisieren und wachsen, während die Staaten in der EU stagnieren. Sie wünschen sich, dass von Regierungsseite neue Handelsverbindungen mit Ländern wie China, Indien und Brasilien favorisiert werden, statt sich mit dem langen und anstrengenden Prozess aufzuhalten, die obskuren EU-Institutionen zu reformieren. Gefragt nach ihrer Ansicht zu bestimmten gesetzlich geregelten Themen – vom Kartellrecht bis zur Produktgesetzgebung – ist die Mehrheit der Wirtschaftsführer der Ansicht, die Kontrolle über diese Schlüsselkompetenzen sollte nach Westminster zurückgeholt werden. Es herrschte allgemeine Unzufriedenheit über den Binnenmarkt, da laut Aussage der Unternehmen die Kosten der Brüsseler Vorschriften inzwischen die Vorteile überwiegen würden, Teil von Europas Handelszone zu sein – selbst 40 Prozent der Großunternehmen stimmten dem zu, die traditionell am europafreundlichsten sind. Schließlich, und das sagt vermutlich am meisten, ergab unsere Befragung von Wirtschaftsführern, dass eine deutliche Mehrheit sich von Großbritannien einen Kurs in Richtung Veränderung des Abkommens wünscht und eine Beziehung zur EU, die auf Handel basiert, nicht auf Politik. Diese Erkenntnis, die sich bei Unternehmen aller Größen und führenden Konzernen findet, zeigt, dass die Wirtschaft auf eine „sinnvolle Veränderung“ drängt, die das Heft des Handelns wieder nach Großbritannien bringt. Es geht um viel – eine Änderung des Abkommens und bessere Bedingungen für Großbritannien würden bei 16 Prozent zu einer Meinungsänderung zugunsten des Verbleibs in der EU in einer Volksabstimmung führen. Der Premierminister sollte keine Zweifel haben: Diese Umfrage zeigt, dass die britische Wirtschaft hinter seinem Plan für die Neuverhandlungen der britischen Bedingungen für die EU-Mitgliedschaft steht. Sie zeigt auch, dass die Unternehmen von einer Neuverhandlung eine deutliche Verschiebung der Machtverhältnisse zurück nach Großbritannien erwarten. Ein besserer Deal für die britische Wirtschaft ist möglich und in zunehmendem Maße notwendig, nachdem die Eurozone sich nun in Richtung einer engeren Wirtschafts- und Fiskalunion bewegt. Die Priorität müssen Arbeitsplätze und Wachstum in Großbritannien sein, wie das Ergebnis unserer Umfrage zeigt, was für Unternehmen ein verstärktes Augenmerk auf Handel und eine fundamentale Veränderung im Brüsseler Ansatz für Vorschriften bedeutet. Alexei Miller von Gazprom bezeichnet Pipeline in Bulgarien als Beginn einer neuen Gasära Der Baubeginn der South-Stream-Pipeline in Bulgarien stelle den Start eines der größten europäischen Energieprojekte dar, erklärte der Gazprom-Vorstand. „Das heutige Ereignis ist ein Meilenstein: Die Bauarbeiten am bulgarischen Abschnitt der South-Stream-Gaspipeline, dem größten und wichtigsten Projekt in Europa, haben begonnen“, sagte der Vorstandsvorsitzende von Gazprom, Alexei Miller, am Donnerstag in einer Erklärung. Das Projekt ist ein Schlüsselelement für die Energiesicherheit des gesamten europäischen Kontinents. South Stream soll für mehr Vielfalt bei Russlands Exportrouten durch Europa sorgen. Ein Vertragsstreit zwischen Gazprom und seinen Pendants in der Ukraine, in dem der Großteil des russischen Gases für Europa gelagert ist, sorge für ein erhöhtes Risiko bei konventionellen Routen, wie von offizieller Seite zu hören ist. Miller sagte, die direkte Verbindung nach Bulgarien, einem Mitglied der Europäischen Union, bedeute, dass die mit Transitländern verknüpften geopolitischen Risiken „für immer“ ausgeschaltet seien. Bulgarische Verbraucher erhalten Gas von South Stream zu vergünstigten Tarifen, wenn das gesamte Projekt 2015 in Betrieb geht. Laut Gazprom sollen die Bauarbeiten in anderen nachgeordneten Ländern auf der geplanten Route zum Jahresende beginnen. Die Pipeline ist auf eine jährliche Kapazität von 62,3 Milliarden Kubikmetern Erdgas ausgelegt. Für nationale und internationale Investoren führt kein Weg vorbei am Immobilienstandort Deutschland. Die wirtschaftlichen Rahmendaten stimmen, und die Finanzierungsmöglichkeiten sind hervorragend. Dies ist der Tenor des 9. Immobilientages der Börsen-Zeitung gewesen. Die deutschen Immobilienmärkte profitieren von der wirtschaftlichen Stärke und den im europäischen Vergleich guten konjunkturellen Rahmenbedingungen im Land. Darauf hat Christian Ulbrich, CEO Europa, Naher Osten und Afrika von Jones Lang LaSalle, auf dem 9. Immobilientag der Börsen-Zeitung hingewiesen. Wie gesucht deutsche Gewerbeimmobilien seien, zeige der Blick auf das Transaktionsvolumen, so Ulbrich. In den ersten drei Quartalen dieses Jahres legte es im Vergleich zum Vorjahresabschnitt um 31% zu. In Großbritannien lag das Plus nur bei 6%, in Frankreich bei 19%. "Immobilieninvestments bieten eine attraktive Verzinsung", sagte Ulbrich. Der Renditeabstand zwischen Immobilien und Bundesanleihen sei auf einem historisch hohen Niveau. Die FAA lockert Einschränkungen für die Nutzung elektronischer Geräte in Flugzeugen – auch wenn das Telefonieren mit dem Handy weiterhin verboten bleibt. Kampfflugzeuge greifen ein Depot russischer Raketen in der Hafenstadt Latakia an, wie offiziell verlautbart wurde. Dies ist offenbar eine Fortsetzung der israelischen Kampagne, mit der die Verbreitung von Waffen im Nahen Osten verhindert werden soll. Bundesberufungsgericht blockiert Entscheidung einer Richterin, wonach die umstrittene Taktik des NYPD Minderheiten diskriminiere. Knapp 100 afrikanische Einwanderer, die nach Algerien einreisen wollten, verdursten, nachdem zwei LKWs mitten in der Sahara liegen bleiben. Experten sagen, dass das Gewaltverbrechen, bei dem 14 Erwachsene und sieben Kinder starben, nichts als reiner Zufall sei und kein Zeichen für wachsende Gewalt in Amerika. Statt sich von der Zahlungsunfähigkeit der US-Regierung verunsichern zu lassen, konzentrierten sich Investoren auf das, was vermutlich mehr zählt: die Federal Reserve. Die Kalifornierin plant, die möglicherweise erste Vorladung dieser Art anzufechten, mit der Begründung, die mit dem Internet verbundene Brille erleichtere die Navigation. Die Polizei gibt an, sie sei im Besitz eines Videos, auf dem angeblich zu sehen sei, wie Bürgermeister Rob Ford eine Crack-Pfeife rauche. Selbst enge Verbündete haben Geheimnisse voreinander – und versuchen alles, um herauszufinden, was zurückgehalten wird. Der Vatikan möchte wissen, wie katholische Pfarreien auf der ganzen Welt mit sensiblen Themen wie Verhütung, Scheidung und schwule Paare umgehen. Anhörung vor der Königlichen Kommission: Zwei YMCA-Mitarbeiter vor Anschuldigungen gegen Jonathan Lord wegen Sexualdelikten angeklagt Zwei YMCA-Mitarbeiter aus New South Wales (NSW) seien wegen Sexualdelikten im Zusammenhang mit Kindern angeklagt worden, ehe 2011 Vorwürfe gegen den Kinderpfleger Jonathan Lord aus Caringbah erhoben wurden, wie die Königliche Kommission für sexuellen Missbrauch von Kindern erfuhr. Doch bei der Eröffnungserklärung vor der Kommission hatte der YMCA erklärt, man habe „in der Organisation niemals mit einem Vorfall von sexuellem Kindesmissbrauch zu tun gehabt“. Geschäftsführer Phillip Hare wurde über einen Fall befragt, bei dem ein YMCA-Mitarbeiter wegen Vergehen mit Kinderpornografie angeklagt worden war, und einen anderen, bei dem ein Sportlehrer der YMCA Caringbah Hall 1991 wegen des Missbrauchs ihm anvertrauter Kinder verurteilt worden war. Hare sagte Gail Furness, einer der Kommission assistierenden Anwältin, dass er von dem ersten Fall gewusst habe, den zweiten aber nicht gekannt habe. Er räumte ein, die Eröffnungserklärung des YMCA gegenüber der Kommission sei ebenfalls ungenau in der Behauptung gewesen, „es habe externe Überprüfungen des YMCA gegeben, in denen der YMCA als an vorderster Front bei der Kindersicherheit anerkannt wurde“. Beweise vor der Kommission zeigen vielmehr, dass der YMCA darüber unterrichtet wurde, dass er die zweitniedrigste Bewertung von vier möglichen in einem Qualitätsaudit des Department of Education and Communities (Erziehungsministerium) im August des Jahres erhalten hat. Hare, der mit 21 beim YMCA angefangen hat, räumte ein, die Geschäftsleitung habe „von mir an abwärts“ bei der Einstellung von Lord versagt und nicht sichergestellt, dass Mitarbeiter sich über ihre Verpflichtungen im Klaren gewesen seien, Verstöße gegen die Richtlinien zur Kindersicherheit zu melden. Lord war Anfang des Jahres wegen Sexualvergehen an zwölf Jungen während seiner zweijährigen Tätigkeit für den YMCA verurteilt worden. Er wurde zu mindestens sechs Jahren Gefängnis verurteilt. Hare stritt aber ab, dass der YMCA ein kulturelles Problem hätte, das Mitarbeiter davon abgehalten habe, Lords Verstöße in Bezug auf die Sicherheit von Kindern zu melden. Die Mitarbeiter sagten aus, sie hätten Verstöße beobachtet, unter anderem, dass Lord allein mit Kindern war, sie privat als Babysitter betreute, sie auf seinem Schoß sitzen ließ, zu einem sagte, dass er es lieb habe, und Kinder mit seinem Handy spielen ließ. Danielle Ockwell, deren Vorgesetzter Lord war und die um eine Schulung zum Kinderschutz gebeten hatte, weil sie wegen seines Verhaltens besorgt war, sagte aus, dass die Kinderdienstleiterin Jacqui Barnat, die im YMCA Caringbah die Vorgesetzte Lords war, „sehr einschüchternd und die meiste Zeit sehr unnahbar war“. Der Geschäftsführer erklärte, er würde Aussagen von Mitarbeitern nicht akzeptieren, wonach diese sich nicht getraut hätten, ihren Vorgesetzten Meldung zu erstatten. Stattdessen, so sagte er, habe vielmehr ihre Freundschaft mit Lord ihr Urteilsvermögen beeinträchtigt, weshalb sie ihn nicht gemeldet hätten. Hare erklärte, er habe dem Vorstand des YMCA NSW seine Ansicht mitgeteilt, dass die Lektion, die die Organisation aus dem „Jonathan-Lord-Zwischenfall“ zu ziehen habe, „nicht das Melden“ durch Mitarbeiter betreffe, und der Vorstand habe ihm zugestimmt. Hare sagte, die Entscheidung, die Mitarbeiter zur Unterzeichnung von Geheimhaltungsverpflichtungen kurz nach Auftreten der Anschuldigungen zu drängen, sei vom Geschäftsführer der Kinderdienste des YMCA, Liam Whitley, getroffen worden. Er sagte, damit sollte eine Kontaminierung der Beweise verhindert werden, was aber „übereifrig“ und schlecht umgesetzt worden sei. Der YMCA NSW sei in der Zeit, als Jonathan Lord zwischen 2009 und 2011 dort beschäftigt war, keine für Kinder sichere Organisation gewesen, erklärte Professor Stephen Smallbone von der Griffith University, Experte für sexuellen Kindesmissbrauch, der Kommission. Er erläuterte, dass es „ernsthafte Probleme“ bei der Einstellung, Überprüfung, Einarbeitung, Schulung und Beaufsichtigung der Mitarbeiter gegeben habe. Die Anhörung wurde bis 20. Dezember vertagt. Tony Blair erklärte, er würde die Chance zu einer Rückkehr als britischer Premierminister nutzen – räumt aber ein, dass ein Comeback unwahrscheinlich sei. In einem Interview heute Abend anlässlich des fünften Jahrestages seines Ausscheidens aus dem Amt verkündete der 59-Jährige seine Ansichten zu verschiedenen innenpolitischen Themen. Seit seinem Rücktritt im Juni 2007 nach einem Jahrzehnt als Staatschef hat Blair es weitgehend vermieden, sich zu britischer Politik zu äußern, und seine Kommentare meistens auf die Außenpolitik und seine Rolle als Gesandter des Quartetts der Friedensstifter im Nahen Osten beschränkt. Auf die Frage, ob er gerne in das Amt des Premierministers zurückkehren würde, wurde Blair vom Evening Standard aus London mit den Worten zitiert: „Ja, sicher, aber es ist unwahrscheinlich, dass das passiert, also ...“ Als sich die Pferdeschau-Experten in Scharen in Cardiff einfanden, um das Pferd des Jahres zu küren, war ihnen bewusst, dass ein harter Konkurrenzkampf bevorstand. Doch keiner war auf den drei Jahre alten Fenton Kirkland vorbereitet. Der Knirps, der noch nicht einmal im Kindergarten ist und erst vor ein paar Monaten seine ersten Schritte gemacht hat, und sein Shetland-Pony Toffee trabten locker durch die drei Runden und holten den ersten Preis – wobei sie 30 erwachsene Gegner hinter sich ließen. Das unzertrennliche Paar, beide gleich groß, wurden wegen ihres Auftretens, Verhaltens und Stils beim alljährlichen Wettbewerb gelobt, der vom Sunnybank Equestrian Centre in Rudry nahe Cardiff veranstaltet wird. Bei seinem Auftritt in Konkurrenz gegen Männer und Frauen mit eleganten Melonen hatte er seine Tellermütze in einem frechen Winkel aufgesetzt und führte den zwei Jahre alten Toffee durch den Ring. Fenton wurde von den Juroren für seine natürlichen Fähigkeiten beim Umgang mit dem Pony gepriesen, die weit über seinem Alter lägen. Und Toffee erhielt Bestnoten für sein Auftreten und seine Persönlichkeit. Fenton hatte Toffee letzten März als Geschenk zu seinem dritten Geburtstag bekommen und seitdem jeden Tag mit dem Shetland-Pony geübt. Seine Mutter, Donna, 30, sagte: „Fenton und Toffee sind ein großartiges Gespann.“ Sie mussten gegen das gesamte Teilnehmerfeld antreten und sind mit Goldpokal und Rosette vom Platz gegangen. Es war erst das zweite Mal, dass er mit Toffee an einem Wettbewerb teilgenommen hatte, und wir waren alle begeistert, als er gewonnen hat. Vollkommen Fremde in der Arena hielten ihn für so phänomenal, dass sie mit ihm fotografiert werden wollten. Der kleine Junge aus dem Dorf Nantyglo in der Nähe von Ebbw Vale, South Wales, folgt in den Fußstapfen seiner Tante Sharon Howells, die seit über zehn Jahren Pferde vorführt. Howells erzählte: „Das ganze Publikum war wie elektrisiert und alle haben ihn angefeuert und geklatscht.“ Er lief auf Sand die gesamte Länge der Arena und obwohl er so winzig aussah, hat er phantastische Arbeit geleistet. Fenton ist verrückt nach Tieren – er liebt Pferde, Traktoren und Bauernhöfe und hat zwei Hühner, um die er sich kümmert. So wie er gestartet ist, wird es nicht lange dauern, bis er auf der „Pferd des Jahres“-Schau ist – und ich bin mir sicher, dass er gut abschneiden wird. Ein Sprecher der jährlichen Pferdeschau sagte: „Fenton ist erst drei, aber er weiß, wie er mit seinem Pony umgehen muss.“ Zusammen sind sie ein tolles Team. Die Juroren bewerteten Fenton und Toffee danach, wie gut sie sich geschlagen und im Vorführring präsentiert hätten. Sie achten auf gute Zusammenarbeit zwischen Pony und Führer – und da waren Fenton und Toffee die Besten im Ring. Ich bin mir sicher, dass Fentons süße Kleidung ihren Teil dazu beigetragen hat, das passte wirklich perfekt zum Anlass. Chinesische Zeitung soll nach Aufruf „reformiert“ werden Eine chinesische Zeitung, die auf der Titelseite die Freilassung eines Reporters gefordert hatte, der wegen Diffamierung angeklagt worden war, solle reformiert werden, erklärte ein Presseregulator. Der in Guangzhou ansässige Neue Express hatte einen seltenen öffentlichen Aufruf zur Freilassung des Journalisten Chen Yongzhou abgedruckt. Doch Chen gab später im Fernsehen zu, dass er Bestechungsgelder angenommen habe, um Berichte über eine teilstaatliche Firma zu fälschen. Jetzt werde der Neue Express einer „umfassenden Rektifizierung“ unterzogen, erklärte die Regulierungsbehörde. Die „Rektifizierunganordnung“ erging von der Behörde für Presse und Publikationen, Radio, Film und Fernsehen in Guangdong. Vorläufige Ermittlungen ergaben, dass der Neue Express, der zur Yangcheng Evening News Group gehört, zwischen September 2012 und August 2013 mehrere unzutreffende Berichte über das börsennotierte Unternehmen Zoomlion veröffentlicht hatte. „Das Redaktionsmanagement des Neuen Express war ungeordnet“, gab die Regulierungsbehörde in einer Erklärung bekannt. Sie sagte, man habe entschieden, „eine administrative Strafe für Chen Yongzhou zu verhängen und ihm seine Reporterlizenz zu entziehen“. Außerdem habe man „die Yangcheng Evening News Group angewiesen, eine vollständige Rektifizierung des Neuen Express vorzunehmen und empfohlen, die relevanten Verantwortlichen beim Neuen Express zu ermitteln und unverzüglich das Führungsteam des Neuen Express zu überprüfen.“ Chen hatte mehrere Artikel für den Neuen Express geschrieben, in denen er über angebliche finanzielle Unregelmäßigkeiten bei einem Hersteller von Baumaschinen namens Zoomlion berichtete. Nachdem er verhaftet worden war, veröffentlichte die Zeitung zwei Aufrufe für seine Freilassung auf der Titelseite und stellte sich hinter seine journalistische Arbeit. Doch dann trat Chen im Staatsfernsehen auf und gab zu, dass er gegen Bezahlung falsche Berichte veröffentlicht habe. „In diesem Fall habe ich Zoomlion geschädigt ebenso wie die gesamte Nachrichtenbranche und ihre Fähigkeit, das Vertrauen der Öffentlichkeit zu gewinnen“, erklärte er gegenüber dem staatlichen Nachrichtensender CCTV. Ich habe es in erster Linie getan, weil ich auf Geld und Ruhm aus war. Mir ist klar geworden, dass ich falsch gehandelt habe. Im Anschluss an Chens Entschuldigung veröffentlichte der Neue Express eine Entschuldigung auf der Titelseite und erklärte, man habe es versäumt, die Berichte korrekt zu überprüfen. Verschiedene bekannte Verdächtige haben in jüngster Zeit im Fernsehen Geständnisse abgelegt. Experten sagen, dass Geständnisse immer noch routinemäßig erzwungen werden, trotz einer Gesetzesänderung Anfang des Jahres, in der den Behörden verboten wurde, jemanden zu zwingen, sich selbst zu beschuldigen. Drogentunnel mit eigener Eisenbahn zwischen den USA und Mexiko entdeckt Einer der raffiniertesten Tunnel für den Drogenschmuggel zwischen den USA und Mexiko, der komplett mit Beleuchtung, Belüftung und elektrischem Bahnbetrieb ausgestattet war, wurde jetzt entdeckt. Die US-amerikanischen Behörden beschrieben den 120 mal 90 Zentimeter messenden Tunnel als eine der ausgefeiltesten Passagen, die sie jemals gefunden hätten. Der Tunnel, der im Zickzackmuster über eine Länge von knapp sechs Fußballfeldern verläuft, verbindet Lagerhallen in der Nähe von Tijuana, Mexiko, und San Diego, USA. In der Gegend gibt es zahllose unscheinbare Lagerhallen, was es leichter macht, mit Drogen beladene LKWs zu verbergen. Der Tunnel sei geschlossen worden, bevor Drogen unerkannt darin transportiert werden konnten, erklärten die Behörden. Bei der Entdeckung des Tunnels seien achteinhalb Tonnen Marihuana und 148 Kilogramm Kokain sichergestellt worden, so die Aufzeichnungen des Gerichts. Drei Männer, die laut Aussage der Behörden als Fahrer arbeiteten, wurden wegen des Besitzes und des beabsichtigten Verkaufs von Marihuana und Kokain angeklagt. Ihnen drohen bei einem Schuldspruch Gefängnisstrafen zwischen zehn Jahren und lebenslang. In Nogales, Arizona, setzen Schmuggler auf ein ausgedehntes unterirdisches Netzwerk von Entwässungskanälen. Der Tunnel ist die achte große Passage, die seit 2006 in San Diego entdeckt wurde. Einige der größten Tunnel wurden nach der Marihuana-Ernte in Zentralmexiko im Oktober entdeckt, was die Drogenkartelle vor die Herausforderung stellt, wie sie ihr Produkt schnell zu den Konsumenten bringen können. Im Jahr 2010 fanden Behörden eine knapp 640 Meter lange Passage mit Schienen, die von einer Küche in einem Wohnhaus in Tijuana zu zwei Lagerhäusern in San Diego verlief. Orlando Bloom und Miranda Kerr lieben sich noch immer Schauspieler Orlando Bloom und Model Miranda Kerr wollen künftig getrennte Wege gehen. In einem Interview sagte Bloom jedoch, dass er und Kerr sich noch immer lieben. Miranda Kerr und Orlando Bloom sind Eltern des zweijährigen Flynn. Schauspieler Orlando Bloom hat sich zur Trennung von seiner Frau, Topmodel Miranda Kerr, geäußert. In einem Interview mit US-Journalistin Katie Couric, das am Freitag (Ortszeit) ausgestrahlt werden sollte, sagte Bloom, "das Leben verläuft manchmal nicht genau so, wie wir es planen oder erhoffen". Kerr und er selbst liebten sich noch immer, betonte der 36-Jährige. "Wir werden uns gegenseitig unterstützen und lieben als Eltern von Flynn". Kerr und Bloom sind seit 2010 verheiratet, im Jahr 2011 wurde ihr Söhnchen Flynn geboren. Der Veganismus ist laut Lexika dem Vegetarismus unterstellt, unterscheidet sich von diesem aber doch auf ganz erhebliche Weise. Denn während Vegetarier sich den Verzehr von Sahnetorte, Eis oder einem kräftigen Edamer erlauben, stehen diese Schlemmereien nicht auf der Speisekarte eines Veganers. Milch, Käse, Ei, neben den Verzicht auf Fleisch und Fisch lässt der Veganer vom sämtlichen Verzehr tierischer Produkte ab - auch Honig wird verneint. Was bleibt, mag man sich fragen, doch bei näherer Betrachtung zeichnet sich die vegane Ernährungswelt durch einen beachtlichen Einfallsreichtum aus. "Brotaufstriche sind sehr beliebt", erklärt Ute Henkelmann, die Inhaberin des hiesigen Reformhauses, die eine Vielzahl spezieller Produkte für Veganer bereithält. Auch Reuben Proctor besucht den Laden in der Domgasse gerne. Seit 13 Jahren lebt der gebürtige Neuseeländer vegan, in Lampertheim findet er (fast) alles vor, was er zum Leben braucht. "1997 stellte ich meine Ernährung um und wurde Vegetarier". Um die Jahrhundertwende erfolgte dann der nächste Schritt und ich wurde Veganer. "Die Überzeugung kam aber nicht nur wegen der Ernährung, sondern aufgrund der Schuhwahl", sagt Proctor, der Kunstleder normalem Leder vorzieht. Er erkannte, dass es auch in anderen alltäglichen Belangen ohne tierische Produkte geht. In erster Linie ist vegan sein eine Ethik. "Ich will nicht, dass Tiere für mich sterben müssen", spricht Proctor die Maxime der Veganer aus, die sich auf das gesamte Konsumverhalten erstreckt. Statt Burgern, Rühreiern oder Gummibären hinterherzutrauern, habe der Veganer schnell ganz neue Produkte entdeckt, die Begeisterung stieg an. "Es ist ein doppelter Bonus", sagt Proctor heute, "tatsächlich stellt vegan sein keinen Verzicht, keine Askese dar, sondern es ist eine Bereicherung". Die Annahme, dass man mit der Ernährungsumstellung die Auswahl an Speiseoptionen reduziere, führt Proctor eher auf die Macht der Gewohnheit zurück. Und genau diese Konditionierungen ließen auch manchen noch so gut gemeinten Versuch scheitern. "Der Suchtfaktor ist ein ganz entscheidender Faktor, der viele schnell aufgeben lässt, ähnlich wie beim Rauchen", stellt Proctor einen Vergleich auf. Und wendet ein: "Bestimmte Geschmäcker sind nicht am Tier festzumachen". Oft sind es die Gewürze oder die Art der Zubereitung, die den Geschmack ausmachen. "Man kann aber auch auf andere Weise den gleichen Effekt erzeugen", verdeutlicht der Veganer. Zu einem Grillfest bringt Proctor beispielsweise Auberginen, Champignons und auch ein paar Veganwürste mit. Er achtet auf eine ausgewogene, abwechslungsreiche Ernährung, bei der es durchaus auch einmal deftig schmecken soll. Natürlich möchte man etwas zwischen den Zähnen haben, das ist legitim. "Es soll schmecken, aber das ist nicht nur auf tierische Nahrung zu reduzieren", so Proctor. Gesundheitliche Schäden bis hin zu Essstörungen, eine weitere weitverbreitete Annahme, habe er nicht erlitten. Für mich hatte die Umstellung einen positiven Aspekt. Ich nehme kein fremdes Cholesterin auf und habe einen erhöhten Vitaminanteil. Es gibt Hochleistungsathleten, die sich ausschließlich vegan ernähren. "Meine Blutwerte sind bestens, ich lasse mich oft checken", verrät Proctor. Insbesondere vor dem Mangel an Vitamin B12 warnen viele Vegansimus-Kritiker. "Da Tiere mit Futtermitteln genährt werden, statt auf der Weide zu grasen, ist es fraglich, ob in dem Fleisch, das man in der Kühltruhe kauft, der Vitamin-B12-Anteil hoch ist", findet Proctor. Für Veganer gebe es zudem die Möglichkeit, das Coenzym in Form von Tabletten zu sich zu nehmen. "Meine B12-Werte sind in Ordnung", erklärt er. Weite Wege müsse Proctor für die Nahrungsmittelbeschaffung nicht gehen. Grundnahrungsmittel gibt es schließlich überall und jeder Supermarkt hat mittlerweile Sojamilch und andere Produkte. Alles, was ich brauche, finde ich vor Ort. Nur ab und an kaufe ich etwas Spezielles. "Viele Leute übersehen, dass eben nur die Fertigprodukte teuer sind, aber so verhält es sich bei "gewöhnlichen" Fertigprodukten bekanntermaßen auch". Ohnehin sei die Zubereitung veganer Gerichte weitaus günstiger und weniger zeitaufwendig, als gemeinhin angenommen. "In der Hausküche gibt es viel zu entdecken, mit ein paar kleinen Kniffen kann man gute, wenn nicht teilweise bessere Ergebnisse erzielen", sagt Proctor. Margarine statt Butter, etwas mehr Backpulver und Kohlensäure statt Ei, mit seinen veganen Käsekuchen konnte Proctor auch seine Schwiegereltern zum Staunen bringen. Familienfesten verleiht der Veganer eine neue Würze. Das hat Dynamik, wenn man zusammen kocht, hat das einen neuen Stellenwert. "Die Situationen, die dabei entstehen können, sind so unterschiedlich wie die Menschen selbst", sagt Proctor. Natürlich wurde ihm aber auch schon Skepsis entgegengebracht. Schmeckt dir mein Essen nicht mehr? "Soll ich mich jetzt schlecht fühlen, weil ich Milch trinke?" - bei solcherlei Fragen müsse man als Veganer mit Fingerspitzengefühl agieren. "Ich lehne die Menschen ja nicht ab, ich bin Teil dieser Gesellschaft", möchte Proctor kein Enklavendasein fristen. Und genauer betrachtet erscheint die Alltagswelt dann gar nicht so veganfremd wie vermutet - und der Veganer nicht so im Alltag eingeschränkt wie gemeinhin angenommen. Auch Fast Food ist erlaubt. Pommes gibt es überall! "Viele Dönerläden bieten Falafel an, oder eben einen vegetarischen Yufka", sagt Proctor. In einer Pizzeria weicht er auf Pastagerichte aus, oder bestellt eben eine Pizza ohne Käse, alles eine Frage der Gewohnheit. Die Restaurants stellen sich so langsam darauf ein. "Als ich vor 13 Jahren angefangen habe, mich vegan zu ernähren, war alles noch viel schwieriger", kann der Neuseeländer eine Entwicklung ausfindig machen: "Man muss mit den Leuten reden, sie darauf aufmerksam machen". "Wenn genügend Nachfragen kommen, sind sie vielleicht dazu geneigt, die Speisekarte zu ergänzen", hofft er. Vegane Restaurants entwickeln sich, wie zum Beispiel die Kombüse in Mannheim oder das Café Vogelfrei. Proctor hegt den Wunsch, dass auch andere Restaurants zumindest ein veganes Gericht auf der Speisekarte stehen haben. Im Grunde genommen sind vegane Gerichte für alle da. Jeder kann sie essen, sie sind also genau das Gegenteil von exklusiv. "Fleischgerichte sind dagegen exklusiv, und zwar im wahrsten Sinne des Wortes, denn sie schließen andere aus", stellt Proctor fest. "Wenn man Lebensmittelskandale vermeiden will, dann ist Veganismus ein sicherer Weg, den allergrößten Teil von vornherein unmöglich zu machen", sagt Proctor. Der Einkauf veganer Produkte könne aber zu Beginn etwas schwierig sein. Insbesondere wenn man zu verstehen lernt, das auch in Erdnüsse tierische Zusatzstoffe als Farbgeber enthalten seinen können, scheint man mit der Befolgung der Ethik bei so vielen Hürden und Fallen schnell der Mut zu verlassen. Nicht nur deshalb haben Reuben Proctor und Lars Thomsen ein Buch geschrieben: "Veganissimo - Tierische Inhaltsstoffe und ihre Alternativen" erklärt die vielen Inhaltsstoffe, die Nahrungs- aber auch Reinigungsmitteln beigesetzt werden. "Nach und nach entwickelt man einen Scannerblick und weiß, auf welche Zeichen und Logos man zu achten hat "Es ist manchmal besser kleine Schritte zu tun als stehenzubleiben oder zu stolpern", weiß Proctor. Der Veganismus, er ist ein wichtiger moralischer Fingerzeig, der auf das Bewusstsein schlägt. Vielleicht schafft er es nicht ganz, dass man seine Gewohnheiten ablegt, doch zumindest kann er den Konsumenten lehren, seine Gewohnheiten kritisch zu hinterfragen. Der Börsenbetreiber Nasdaq OMX hält seine Kunden weiter in Atem. Der Handel am Nasdaq Options Market wurde am Freitagnachmittag deutscher Zeit unterbrochen. In einer Mitteilung machte der Betreiber technische Probleme verantwortlich. Die anderen elf US-Optionsmärkte, darunter auch zwei der Nasdaq OMX, setzten ihr Geschäft ungehindert fort. Der jüngste Zwischenfall setzt eine ganze Serie von kleineren und größeren Pannen bei dem Börsenbetreiber fort. Erst am Dienstag waren die Indizes der Nasdaq wegen Fehlern im Datentransport eine Stunde lang nicht berechnet worden. Im August dieses Jahres hatte es allein in einer Woche zwei Pannen gegeben. Zuerst hatte die US-Investmentbank Goldman Sachs wegen technischer Probleme massenhaft fehlerhafte Kaufaufträge an die Optionsmärkte geschickt. Daraufhin brauchten die Börsenbetreiber fast einen ganzen Tag, um die Orders durchzuschauen und zu streichen. Zwei Tage darauf kam die Hälfte des gesamten Aktienhandels in den USA wegen einer Computerpanne an der Nasdaq-Börse für mehrere Stunden zum Erliegen. Für Aufsehen hatte zudem im vergangenen Jahr der Börsengang von Facebook gesorgt. Die Nasdaq-Systeme waren der Flut von Kauf- und Verkaufsaufträgen nicht gewachsen gewesen, stellte später die Börsenaufsicht SEC fest und verdonnerte das Unternehmen zu einer Rekordstrafe von 10 Millionen Dollar. Konstanz: Radler fährt 63-Jährigen um Zu dem Unfall war es nach Angaben der Polizei gekommen, als ein 26 Jahre alter Mann am Donnerstagabend, gegen 22 Uhr, mit einem Damenfahrrad ordnungswidrig auf dem linken Gehweg vom Bahnhofplatz in Richtung Marktstätte unterwegs war. Als plötzlich ein 63 Jahre alter Mann von einem Lokal auf den Gehweg trat, konnte der Fahrradfahrer laut Polizei nicht mehr rechtzeitig bremsen. Bei dem folgenden Zusammenstoß wurde der Fußgänger gegen die Hauswand gedrückt, ging im weiteren Verlauf zu Boden und zog sich eine rund 15 Zentimeter lange Platzwunde am Kopf zu. Ein Rettungswagenteam brachte den Verletzten zur ärztlichen Behandlung ins Klinikum. Britische Polizei stellt Assange einen Auslieferungsbescheid zu Die britische Polizei hat heute einen Auslieferungsbescheid an WikiLeaks-Gründer Julian Assange übergeben, der in der ecuadorianischen Botschaft in London Zuflucht gesucht und Asyl beantragt hat. Scotland Yard erklärte, man habe dem 40-jährigen Australier eine „Aufforderung, sich zu stellen“ zugestellt, die ihn zum Erscheinen in einer Polizeiwache auffordere, und fügte hinzu, sollte er dem nicht nachkommen, drohe ihm die Verhaftung. Assange droht die Auslieferung nach Schweden wegen der Anklage in einem Sexualdelikt, nachdem seine Möglichkeiten nach britischem Recht ausgeschöpft sind, seit der Oberste Gerichtshof seinen Einspruch gegen die Auslieferung Anfang des Monats abgelehnt hat. Da er befürchtet, Stockholm werde ihn an die USA ausliefern, hatte er am 19. Juni in der ecuadorianischen Botschaft in London Zuflucht gesucht und das südamerikanische Land um politisches Asyl gebeten. Scotland Yard habe „einem 40-jährigen Mann eine Aufforderung zugestellt, sich zu einem von uns gewählten Zeitpunkt bei einer Polizeiwache zu stellen“, erklärte ein Sprecher. Er verletzt weiterhin die Bedingungen seiner Freilassung auf Kaution. Die Botschaft gab keinen Kommentar zur Zustellung der polizeilichen Aufforderung ab. Assange fürchtet, er werde von Schweden an die Vereinigten Staaten ausgeliefert und dort wegen möglicher Spionagevorwürfe angeklagt, nachdem er über 250.000 diplomatische Nachrichten auf der Enthüllungswebsite WikiLeaks veröffentlicht hatte. Fahrer, der mit 210 km/h und heißem Getränk zwischen den Beinen gerast war, erhält 1.000 £ Strafe Einem Autofahrer wurde eine Strafe in Höhe von 1.000 £ auferlegt, weil er mit bis zu 210 km/h und einem Heißgetränk zwischen seinen Beinen gefahren war. Andrew Howie, 35, aus Tiptree, Essex, wurde am 27. Mai mit seinem Mercedes Benz auf der A120 bei Braintree gestoppt. Nachdem ihn die Polizei angehalten hatte, entdeckten sie den Getränkebecher zwischen seinen Beinen. Vor dem Amtsgericht Colchester bekannte sich Howie schuldig, ohne die nötige Sorgfalt und Aufmerksamkeit gefahren zu sein. Er erhielt sieben Punkte und ein sechsmonatiges Fahrverbot. Howie wurde außerdem zur Zahlung von Kosten in Höhe von 90 £ sowie eines Opferzuschlags von 100 £ verurteilt. Steuer für ausländische Immobilienbesitzer gegen Londons Spekulationsblase Das Finanzministerium hat provisorisch die CGT-Maßnahme durchkalkuliert, wartet aber noch auf die abschließende Entscheidung von Schatzkanzler George Osborne, der im Haushalt 2012 eine Stempelsteuer in Höhe von 7 % auf Wohnungen verhängt hatte, die über zwei Millionen Pfund kosten sowie jährliche Gebühren für Käufer, die Wohnungen als Firma und nicht als Einzelpersonen halten. Bereits jetzt übersteigen die Einnahmen aus der Stempelsteuer für Wohneigentum in den Bezirken Westminster und Kensington & Chelsea, die im Steuerjahr 2012/13 bei 708 Millionen Pfund lagen, die Erlöse für Nordirland, Wales, Schottland, den Nordosten, Nordwesten, Yorkshire und die Region Humber zusammengenommen. Cook sagte: „Nach den Erhöhungen bei der Stempelsteuer auf hochpreisige Wohnungen und der Einführung der damit verbundenen Gesetzgebung gegen ein Umgehen kann man schwerlich behaupten, hochwertige Immobilien seien zu niedrig besteuert, ungeachtet der Auswirkungen des veralteten Gemeindesteuersystems.“ „Doch dieser Schritt könnte einige ausländische Investoren zurückhaltender machen, was den Kauf von Immobilien in London angeht, oder Eigentümer davon abhalten zu verkaufen“, fügte er hinzu. Erstklassige Immobilien – die obersten fünf bis zehn Prozent des Wohnungsmarkts nach Preis – im wohlhabenden Londoner Südwestgürtel, der sich von Fulham bis Wimbledon erstreckt, haben sich um den Rekordwert von 11,8 % im letzten Jahr verteuert. Die Preise in Central London wiesen ein gleichmäßiges jährliches Wachstum von 5,6 % auf, wurden aber von einem aufstrebenden „Inlandsmarkt“ überschattet, auf dem der südwestliche Teil der Stadt, der Norden (7,4 %) und der Osten (6,5 %) einen Aufwärtstrend erlebten, so eine Untersuchung von Savills. Wissenschaftler konnten mehr Licht darauf werfen, in welchem Zusammenhang das Schwanzwedeln eines Hundes mit seiner Stimmung steht. Frühere Forschungen hatten gezeigt, dass glückliche Hunde mit dem Schwanz mehr nach rechts wedelten (aus Sicht des Hundes), während es bei nervösen Hunden die linke Seite war. Doch jetzt sagen Wissenschaftler, dass andere Hunde diese subtilen Unterschiede wahrnehmen und darauf reagieren können. Professor Georgio Vallortigara, ein Neurowissenschaftler der Universität Trient, sagte: „Beim Menschen ist gut bekannt, dass die linke und rechte Gehirnhälfte unterschiedlich auf Stimuli reagieren, die positive oder negative Emotionen hervorrufen.“ Hier haben wir versucht, uns dies bei anderen Spezies anzusehen. Er bemerkte außerdem, dass bei Hunden genau wie beim Menschen die rechte Gehirnhälfte für die Bewegung der linken Seite zuständig sei und umgekehrt, und dass die beiden Hemisphären unterschiedliche Rollen bei den Gefühlen spielten. Um mehr darüber zu erfahren, wie Hunde auf das seitliche Schwanzwedeln ihrer Artgenossen reagieren, überwachten die Forscher die Tiere, während sich diese Filme anderer Hunde ansahen. Sie maßen die Herzfrequenz der Vierbeiner und analysierten das Verhalten. Wahrscheinlich werden wir bald verstehen, warum sich der Schwanz mal in die eine, mal in die andere Richtung bewegt Professor Vallortigara sagte: „Wir haben den Hunden Filme mit Hunden gezeigt – entweder eine naturgetreue Version oder eine Silhouette, um ablenkende andere Aspekte zu eliminieren, und wir konnten damit die Bewegung des Schwanzes mehr nach links oder rechts steuern.“ Wenn die Tiere sahen, wie ein ansonsten ausdrucksloser Hund den Schwanz nach rechts bewegt hat (von der Perspektive des wedelnden Hundes aus gesehen), blieben sie völlig entspannt. War aber die Schwanzneigung vornehmlich nach links (wieder aus Perspektive des Hundes, der wedelt), so stieg ihre Herzfrequenz und sie sahen unruhig aus. Nach Ansicht von Professor Vallortigara kommunizieren die Hunde nicht absichtlich miteinander durch diese Bewegungen. Er ist vielmehr überzeugt, dass die Hunde aus Erfahrung gelernt hätten, bei welchen Bewegungen sie sich Sorgen machen sollten und wann nicht. Er sagte: „Wenn man verschiedene Begegnungen mit anderen Hunden hat und das Wedeln mit dem Schwanz in eine Richtung eher mit freundlichem Verhalten verknüpft ist und die rechte Seite eher ein weniger freundliches Verhalten produziert, dann reagiert man auf Basis dieser Erfahrungen.“ Die Forscher sagen, dass die Erkenntnisse Hundebesitzern, Tierärzten und Trainern zu einem besseren Verständnis der Emotionen ihres Tieres verhelfen könnten. John Bradshaw, Experte für Hundeverhalten und Gaststipendiat an der Fakultät für Tierheilkunde der Universität von Bristol erklärte, dies sei nicht die erste Studie gewesen, bei der untersucht wurde, ob links und rechts für Hunde wichtig sei. Letztes Jahr fand ein Team der Universität von Lincoln heraus, dass Hunde den Kopf nach links drehen, wenn sie einen aggressiven Hund ansehen, und nach rechts, wenn es sich um einen zufriedenen Hund handelt. In einer anderen Forschungsarbeit an der Universität von Victoria in Kanada stand Folgendes: „Hunde gehen eher auf einen Roboterhund zu, wenn sein ,Schwanz‘ links wedelt und nicht rechts, statt unruhig zu werden – genau andersherum als in der italienischen Studie.“ Laut seiner Aussage könnten die Unterschiede daher rühren, dass die Hunde in den verschiedenen Studien die Tiere in den Filmen bzw. die Roboterhunde nicht als Hunde interpretierten. Eine Studie, wie Hunde auf echte Hunde reagieren, könnte helfen, erklärte er. „Zwar gibt es beträchtliche Belege für viele verschiedene Säugetiere, dass die beiden Gehirnhälften für verschiedene Zwecke verwendet werden, doch müssen viele der Details noch bestimmt werden – und Hunde bilden da keine Ausnahme“, so Bradshaw. Da sich ihr Verhalten aber einfach aufzeichnen lasse, werde es vermutlich nicht lange dauern, bis wir verstehen, weshalb sich der Schwanz manchmal in die eine, manchmal in die andere Richtung bewegt. Arctic Monkeys verschieben Auftritt in Glasgow wegen der Erkrankung Alex Turners Die Rockband Arctic Monkeys hat einen Auftritt in Glasgow verschoben, nachdem ihr Leadsänger an Kehlkopfentzündung erkrankt ist. Die Band aus Sheffield sollte am Freitag im Hydro spielen. Wegen der Krankheit des Leadsängers Alex Turner muss das Konzert nun allerdings verlegt werden. Die Ankündigung der Band kam, nachdem sie zuvor schon einen Auftritt in der LG Arena in Birmingham am Donnerstag verschieben musste. In einer Erklärung auf ihrer offiziellen Website teilten die Arctic Monkeys mit: „Nach der Entscheidung, die Show in der LG Arena in Birmingham heute Abend abzusagen sowie auf ärztlichen Rat müssen die Arctic Monkeys auch die Show im Hydro in Glasgow am Freitag, dem 1. November absagen.“ „Bei Alex Turner wurde eine Kehlkopfentzündung diagnostiziert, weshalb er leider nicht auftreten kann.“ Die Show in der LG Arena in Birmingham findet nun am 20. November statt, die im Hydro in Glasgow wurde auf den 21. November verlegt. Alle Tickets behalten für diese Shows Gültigkeit. Wir entschuldigen uns bei allen Ticketinhabern für die hierdurch entstandenen Unannehmlichkeiten. Bitte wenden Sie sich an den Kundenservice an den Verkaufsstellen, an denen Sie Ihr Ticket gekauft haben, falls Sie weitere Unterstützung benötigen. Papst Franziskus ernennt im Februar erste Kardinäle Papst Franziskus werde am 22. Februar erstmals neue Kardinäle der katholischen Kirche berufen, wie der Vatikan am Donnerstag bekannt gab. Kardinäle sind die ranghöchsten Kleriker in der katholischen Kirche nach dem Papst und sie sind es auch, die einen Papst wählen, sodass Franziskus damit die erste Gruppe von Männern ernennen wird, die letztendlich bei der Wahl seines Nachfolgers mitwirken werden. Derzeit gibt es 201 Kardinäle. Jedoch kann ein Kardinal, der ein Alter von 80 Jahren erreicht hat, nicht mehr an der Papstwahl teilnehmen – das fällt einer Gruppe von 120 „wahlberechtigten Kardinälen“ zu. In einer Erklärung, in der die Nachricht bekannt gegeben wurde, sagte Pater Federico Lombardi, ein Sprecher des Vatikans, es werde ein Treffen aller Kardinäle stattfinden, ehe die Zeremonie zur Ernennung der neuen Kardinäle abgehalten werde, die auch als Konsistorium bekannt sei. „Papst Franziskus hat beschlossen, seine Entscheidung zur Einberufung des Konsistoriums im Februar im Voraus bekannt zu geben, damit andere Treffen, die die Teilnahme von Kardinälen aus aller Welt erfordern, geplant werden können“, sagte Lombardi. Jack Valero von Catholic Voices sagte, dass die Zahl der wahlberechtigten Kardinäle bis Februar wahrscheinlich gesunken sein werde. Er erklärte, ein Papst ernenne normalerweise so viele Kardinäle wie nötig, damit die Zahl der wahlberechtigten Kardinäle wieder 120 betrage, und so viele Kardinäle über 80, wie er möchte. Das Konsistorium im nächsten Jahr sei deshalb bedeutsam, weil es das Erste seit der Wahl von Franziskus im März diesen Jahres sei, so Valero. Derzeit gebe es einen gewissen Überhang aufseiten Europas und insbesondere Italiens. „Es wird interessant sein zu sehen, ob der neue Papst Kardinäle aus dem Rest der Welt ernennen wird, um das Gleichgewicht wiederherzustellen“, sagte er. Vierzig Prozent der Katholiken leben in Südamerika, doch sie haben nur eine winzige Anzahl von Kardinälen. Die Kardinäle werden auch die Ersten sein, die seit der Bildung des von Franziskus gegründeten Rates der Kardinäle berufen werden, eine Gruppe von acht Kardinälen aus der ganzen Welt, die den Auftrag haben, Möglichkeiten zur Reformierung der Kirche zu finden. In der Vergangenheit entschied der Papst alles allein. „Nun hat Franziskus diese acht Kardinäle ausgewählt, die ihm helfen sollen“, sagte Valero. Er erklärte, es sei „gut möglich“, dass Franziskus die Kardinäle um Rat bitte. Doch bisher waren wir nicht in dieser Lage – das ist alles ganz neu. Valero sagte, dass typischerweise die Bischöfe aus großen Orten zu Kardinälen berufen würden, doch stecke Franziskus „voller Überraschungen – wir wissen also nicht, wen er ernennt“. GM ruft neue Pickup-Trucks in den USA zur Reparatur der Sitzlehne zurück General Motors rufe knapp 19.000 seiner brandneuen Chevrolet Silverado- und GMC Sierra-Pickup-Trucks mit Baujahr 2014 zurück, um ein Problem mit der manuell verstellbaren Sitzlehne zu beheben, so eine Mitteilung der US-amerikanischen Regulierungsbehörde für Fahrzeugsicherheit am Freitag. Bei einigen der Wagen kann es einen Defekt im Mechanismus für das Zurückstellen der Vordersitzlehne geben. Aus diesem Grund erfüllen sie nicht die Bundesrichtlinien für die Fahrzeugsicherheit bei Kopfstützen. „Wenn von hinten auf das Fahrzeug aufgefahren wird, ist es möglich, dass die Kopfstütze die Insassen nicht richtig schützt, sodass ein erhöhtes Verletzungsrisiko besteht“, war in der Nachricht auf der Website der National Highway Traffic Safety Administration (NHTSA) zu lesen. Die zurückgerufenen Modelle wurden zwischen dem 1. August und 10. September hergestellt. Die Lieferung der GM-Trucks begann im Juni und stellt den wichtigsten Modellstart des führenden US-amerikanischen Autoherstellers seit der insolvenzbedingten Umstrukturierung 2009 dar. GM informierte die Fahrzeugbesitzer in der ersten Oktoberhälfte über den Defekt. Die NHTSA konnte wegen des 16-tägigen Government Shutdowns das Benachrichtigungsschreiben nicht prüfen, was sich negativ auf die Autoverkäufe im Oktober auswirkte. Der Verkauf der Silverado- und Sierra-Trucks, die für das Modelljahr 2014 neu entwickelt wurden, sei in den ersten zehn Monaten des Jahres um 20 Prozent gestiegen, erklärte GM am Freitag. Im Oktober verkaufte GM 42.660 Silverado- und 16.503 Sierra-Pickup-Trucks. Die GM-Aktie stieg an der New Yorker Börse um 1,4 Prozent auf 37,47 US-Dollar am Freitagnachmittag. Verzweiflungsschrei eines Obama-Wählers Ich habe Präsident Obama zweimal gewählt in der Hoffnung darauf, dass Veränderung möglich sei Er sagt, Obama habe lobenswerte Bemühungen unternommen, die von der Blockadetaktik der Republikaner vereitelt worden seien Die Blockadepolitik entschuldige nicht die Website-Probleme von Obamacare, die Drohnenangriffe Obamas Memoiren über den Wahlkampf 2008 seien eine traurige Erinnerung an das, was möglich gewesen wäre Nathaniel P. Morris ist Student im zweiten Jahr an der Harvard Medical School. Ich lese derzeit ein furchtbar trauriges Buch. Es ist ein Buch, von dem ich geglaubt habe, es würde mich während des trübsinnigen zweiten Jahres meines Medizinstudiums aufheitern und mir wieder Hoffnung geben. Es heißt „The Audacity to Win“ (Mut zu gewinnen) und schildert die Memoiren Barack Obamas zur Präsidentschaftswahl 2008. Wenn ich abends mit meinen Patientenniederschriften fertig bin und zu Bett gehe, dann führt mich das Buch zurück in eine Zeit, als die Politik Millionen inspirierte und einem Reden den Atem rauben konnten. Die Wahl wurde zu einem Erdrutschsieg und Nachrichtensprecher hielten inne, um die historische Bedeutung dieser Stunde vor Augen zu führen. Meine Klassenkameraden weinten vor Freude und meine Eltern sammelten alle Zeitungen, die sie finden konnten. Ein junges Team von Visionären war auf dem Weg ins Weiße Haus und die Nation war bereit für Veränderung. Als damals 2008 Obama ins Amt wechselte, hatte er Zustimmungswerte von 82 %. Und dann schließe ich das Buch. Wieder umzuschalten auf die Gegenwart ist ein böses Erwachen, als ob man aus einem Traum gerissen wird. Es fällt schwer, sich an diese optimistischen Zeiten zu erinnern – sie scheinen eine vage Erinnerung zu sein, eine traurige Mahnung an verpasste Möglichkeiten. In den Jahren, seit ich erstmals meine Stimme abgegeben habe, hat sich tatsächlich etwas verändert. Aber es ist einfach nichts, was ich mir hätte vorstellen können. Ich erkenne die großartigen und vielseitigen Dinge an, die Obama erreicht hat, von der Verabschiedung des Affordable Care Act für Krankenversicherung bis zum militärischen Abzug aus dem Irak, dem Ende des erzwungenen Verschweigens von Homosexualität in der Armee und der Tötung Osama bin Ladens. Auch ich bin der Ansicht, dass die parteipolitische Blockadetaktik zu viele Bestrebungen gekippt habe, mit denen unsere Nation vorwärts gebracht werden sollte: Einwanderungsreform, eine öffentliche Option für Krankenversicherung und das Schließen von Guantanamo Bay, um nur einige zu nennen. Doch nachdem ich zahllose Male die Obama-Regierung gegenüber Kollegen und Bekannten verteidigt habe, bin ich mit meinen Erklärungsversuchen am Ende angelangt. Ich habe einen Punkt politischer Verzweiflung erreicht. Die republikanische Blockadepolitik kann nicht erklären, weshalb man das Abhören ausländischer Staatsoberhäupter zulässt oder die Tötung unschuldiger Kinder durch Drohnen in Übersee. Es kann nicht erklären, weshalb die National Security Agency Daten über das Privatleben von Amerikanern sammelt und warum Whistleblower bestraft werden, die staatliches Fehlverhalten offenlegen. Es kann nicht erklären, weshalb Anwar al-Awlaki, ein US-amerikanischer Staatsbürger, ohne Verfahren ermordet wurde, noch weshalb die öffentlichen Finanzierungs- und Ausgabegrenzen während der Präsidentschaftswahlen umgangen werden. Es rechtfertigt nicht die Ergebnisse eines Berichts, in dem es heißt, die Anstrengungen des Weißen Hauses zur Ruhigstellung der Medien seien die „aggressivsten ... seit der Nixon-Regierung“. Und jüngstens kann es nicht die Unfähigkeit entschuldigen, in den mehr als drei Jahren seit der Verabschiedung des Affordable Care Act eine einfache Website zu entwerfen. Ich weiß nicht, ob es das ist, was ich hätte erwarten sollen. Ob ich mit 18 hätte verstehen sollen, dass die Regierungsarbeit den ihr vorangehenden politischen Kampagnen widersprechen könnte. Offensichtlich ist das Abgeordnetenamt kein vorhersehbarer Kurs, da eine Oppositionspartei und zufällige Ereignisse wie das Newtown-Massaker die öffentliche Diskussion prägen. Doch wenn ich mir die oben genannten Beispiele ansehe, dann scheinen sie weitgehend von der Regierung selbst gewählt zu sein. Und das stört mich am meisten. Ich habe 2012 wieder Obama gewählt, nicht weil ich über seine Kandidatur begeistert war. Mitt Romney stellte eine verwirrende und unausgegorene Alternative dar, er schien seine Richtung und Positionen nicht festlegen zu können. Ich hatte den Eindruck, eine zweite Amtszeit für Obama, frei vom Druck künftiger Wahlen, würde die Hoffnung erfüllen, von der wir schon so lange gehört hatten. Doch mit dem Sinken der Zustimmungswerte für Obama auf unter 45 % diese Woche ist die Rückkehr ins Jahr 2008 durch dieses Buch um so härter geworden. Es weckt in mir die Sehnsucht nach den vielen Versprechen, die sich in Luft aufgelöst haben. Diese Woche las ich einen Abschnitt in dem Buch, der beschreibt, wie Obama einen schweren Verlust gegen Clinton bei den Vorwahlen in Pennsylvania einstecken musste. In einem Treffen mit den Wahlhelfern nach der Entscheidung sagte er seinen Mitarbeitern, sie müssten zurück auf Kurs kommen und dem Zweck ihrer Sache folgen. „Ich möchte, dass wir unseren Zauber wiederfinden“, sagte er. Wir müssen uns daran erinnern, wer wir sind. Es sind fünf Jahre später, Mr. President, und ich könnte Ihnen nicht stärker zustimmen. Die in diesem Kommentar ausgedrückten Ansichten sind ausschließlich die von Nathaniel Morris. Clive Palmer behauptet, Premierminister Tony Abbott habe Interessenkonflikt beim Elternurlaub Der Milliardär und Abgeordnete Clive Palmer sagt, Premierminister Tony Abbott stünde in einem Interessenkonflikt bei seinen Plänen zum Elternurlaub, weil seine Töchter schwanger werden und deshalb davon profitieren könnten. Der Bergbaumagnat, der sich in einer gerichtlichen Auseinandersetzung über die Zahlung von 6 Millionen Dollar an CO2-Steuer befindet, stellte die Behauptung auf, als er Fragen vom Tisch wischen wollte, ob er sich in einem Konflikt befände. Die Palmer United Party könnte bis zu vier Stimmen im Senat kontrollieren, die wichtig für die Entscheidung sind, ob die CO2- und Bergbausteuern gestrichen oder gekürzt werden. Doch Palmer behauptete, dass nur Minister Interessenkonflikte haben könnten und die Töchter von Abbott persönlich von den Gesetzen profitieren würden. „Er befindet sich in einem großen Interessenkonflikt, wenn es um bezahlten Elternurlaub geht, denn wenn eine seiner Töchter schwanger wird, hat er ein direktes Interesse daran, ob sie Urlaub erhält oder nicht“, sagte Palmer. Zwei Monate nach der Wahl erklärte die Wahlkommission Palmer mit 53 Stimmen Vorsprung nach der Neuauszählung offiziell zum Gewinner des Sunshine-Coast-Sitzes von Fairfax. Palmer forderte eine Überarbeitung des Prozesses zur Stimmauszählung, damit dieser schneller vonstatten gehe. Tony Abbotts Töchter Frances und Bridget. Sollten diese Wahlen zwei Monate nach dem Ende der Stimmabgabe entschieden werden? „Wir brauchen ein besseres System“, sagte er. Weshalb sollten wir kein System haben, bei dem man hereinmarschiert, die Daten in einen Computer eingibt, sofort wählt und dann um 6:30 Uhr abends das Ergebnis hat? Palmer kritisierte auch die Verwendung von Bleistiften beim Markieren der Stimmzettel. Verwendet man sie, weil man dann die Ergebnisse ausradieren kann, wenn sie einem nicht gefallen? Heutzutage mit Bleistiften abzustimmen ist unglaublich. Die Wahlkommission hat die Optionen für eine elektronische Wahl geprüft und kürzlich einen gemeinsamen Gesetzesvorschlag mit Neuseeland veröffentlicht. Palmer, 59, erklärte, dass zu seiner Politik ein internationaler Flughafen für die Sunshine Coast gehöre und dass er sein neues Amt „sehr ernst“ nehmen werde. Bei einem öffentlichen Amt gehe es um den Dienst an der Öffentlichkeit. „Wir streben nach keiner Belohnung außer der der Geschichte, nämlich, dass wir in einer kritischen Zeit dieser Gemeinschaft dienen können“, sagte er. RBS suspendiert zwei Devisenhändler Die Royal Bank of Scotland hat zwei Händler aus ihrer Devisenabteilung suspendiert, so zwei Personen, die mit der Situation vertraut sind; dies ist ein weiteres Indiz dafür, dass die weltweite behördliche Ermittlung zu den mutmaßlichen Manipulationen am Währungsmarkt rasant an Fahrt aufnimmt. Einige der größten Banken der Welt, einschließlich UBS, Barclays, Deutsche Bank und RBS, bestätigten, dass sie mit den Behörden bei den Ermittlungen im weltweit größten Finanzmarkt zusammenarbeiten, auf dem täglich 5,3 Billiarden US-Dollar den Besitzer wechseln. Die beiden Händler wären die ersten RBS-Mitarbeiter, die in der sich ausweitenden Untersuchung suspendiert wurden, die der Skandal um das Libor-Interbankengeschäft nach sich zieht. Die Bank, die keinen Kommentar zu den Suspendierungen abgab, bestätigte diesen Monat, dass sie Informationsanfragen von Behörden erhalten habe. „Unsere Ermittlungen zu diesem Thema gehen weiter und wir kooperieren voll mit der FCA und anderen Regulierungsbehörden“, sagte die Bank vor zwei Wochen. Letzten Monat gaben der Situation nahestehende Personen an, dass die RBS die Aufzeichnungen von E-Mails und Instant Messages, die von und an einen früheren Händler gesandt wurden, an die britische Aufsichtsbehörde, die Financial Conduct Authority, weitergeleitet habe. Dieser Händler, Richard Usher, hatte die RBS 2010 verlassen und soll inzwischen von seiner derzeitigen Position als europäischer Leiter des Forex-Spot-Handels bei JPMorgan beurlaubt worden sein. Rohan Ramchandani, Leiter des europäischen Spot Trading bei Citi, wurde diese Woche beurlaubt und Matt Gardiner, früher leitender Währungshändler bei Barclays und UBS, wurde diese Woche bei Standard Chartered suspendiert. Keinem dieser Händler wurde irgendein Fehlverhalten vorgeworfen. Zur Instant Message-Gruppe von Usher gehörten Banker bei Barclays und der Citigroup, sagten der Situation nahestehende Personen. UBS gab diese Woche bekannt, dass sie Schritte gegen einige ihrer Mitarbeiter unternommen habe, nachdem die Schweizer Regulierungsbehörde Finma erklärt hatte, dass sie eine mutmaßliche Manipulation des Devisenmarkts bei einer Reihe schweizerischer Banken untersuche. Mindestens sechs Behörden weltweit – die Europäische Kommission, Finma, die Schweizer Wettbewerbsbehörde Weko, die FCA, das US-amerikanische Justizministerium und die Hong Kong Monetary Authority – beschäftigen sich derzeit mit Vorwürfen, wonach Banker sich bei Transaktionen am Währungsmarkt abgesprochen haben sollen. HSBC, Citigroup, JPMorgan und Credit Suisse haben außerdem interne Untersuchungen eingeleitet oder Informationsanfragen von Behörden erhalten, sagten mit der Situation vertraute Personen. Banken durchkämmen Instant Messages und E-Mails aus mehreren Jahren auf der Suche nach Fällen von Fehlverhalten. Die Nachrichten über diese Untersuchungen hat die Händler in einem Bereich in Aufruhr versetzt, der in den letzten Jahren zu einem der profitabelsten der Trading-Einheiten von Investmentbanken gehört hat, aber dieses Jahr unter Druck stand, weil niedrige Volatilität bei Währungen die Chancen für Spekulanten einschränkt. Einige Banker haben versucht, die Affäre herunterzuspielen und sagten, dass es nahezu unmöglich sei, den ausgedehnten und hochgradig liquiden Devisenmarkt zu manipulieren, doch führende Händler sind der Ansicht, dass dies nicht unbedingt wahr sei. Ein führender Händler bemerkte, dass trotz des enormen täglichen Volumens im Devisenhandel die Fragmentierung der Liquidität zwischen den verschiedenen Handelsplattformen und der zunehmende Einsatz eigener interner Plattformen durch Banken dazu führe, dass „man schon mit sehr geringen Ticket-Preisen den Markt beeinflussen kann“. Die Nachricht kam am selben Tag heraus, als Credit Suisse bekannt gab, sie habe diese Woche einem Händler ihres London Exchange Traded Funds-Büros gekündigt, nachdem er Ende letzten Jahres einen Verlust von knapp sechs Millionen Dollar verursacht hatte. Die Bank informierte prompt die zuständigen Behörden und arbeitet mit ihnen zusammen. „Wir sind sicher, dass der Händler allein gehandelt hat und dass die Angelegenheit eingedämmt ist“, erklärte Credit Suisse. Den Bauzaun auf dem Bechtle-Grundstück bemalt Eine Gruppe der Bürgerinitiative "Schweizer Wiese" hat den Bauzaun auf dem Bechtle-Grundstück an der Kurpromenade in Bad Herrenalb verschönert. Außerdem säuberte und verbreiterte sie den Fußweg, heißt es in einer Pressemitteilung. Das geplante Abdecken des zerfallenden Hauses im hinteren Teil des Grundstücks war aus Sicherheitsgründen nicht erlaubt worden, denn das Gelände droht abzurutschen. Alfred Abel, der das Grundstück derzeit verwaltet, hatte die Verschönerungsaktion mit seinem Kollegen Reinhard Domke von der BI abgesprochen. Vor der Aktion der BI war ein Transparent mit der Botschaft "Wir sind dafür" angebracht worden. Das störte die etwa 20 Mitglieder der Bürgerinitiative jedoch wenig bei ihrer Aktion. Ihr Motto auf dem großen Plakat hieß "Wir sind gegen Bauruinen". Damit wollte sie auf die Gefahr von noch größeren Ruinen auf der Schweizer Wiese hinweisen - sollte das Riesenprojekt eines Tages scheitern. Im Gespräch mit vielen Passanten vor der "Baustelle" wurde deutlich, dass manche Bürger glauben, dass es mit der Verwirklichung des Projektes der Stadt vielen besser gehen werde, obwohl nicht wenige die gleichen Fragen an die Dimension des vorgestellten Projekts haben wie die BI. Aber sie fangen an zu resignieren, weil die Stadt diese Antworten weiter hinauszögert, heißt es vonseiten der BI. Wie zu hören war, wirken sich auch die öffentlichen Äußerungen des Bürgermeisters aus. Mai hatte in der Gemeinderatssitzung gesagt, dass er das Aus für das Thermalbad befürchtet, sollte die Bevölkerung beim Bürgerentscheid gegen die Pläne für einen Bade- und Wellnesskomplex auf der Schweizer Wiese stimmen. Manche erscheinen deswegen geradezu verängstigt, andere empfinden sie als "plumpen Erpressungsversuch" an der Bevölkerung, heißt es in der Pressemitteilung der BI weiter. Die BI dankte den Spendern für die Farbe und allen Helfern. Rangnick-Schelte für Schiris: Mane kein Schwalbenkönig So zufrieden Ralf Rangnick mit der aktuellen Hochform von Bundesliga-Tabellenführer Red Bull Salzburg auch ist, so enttäuscht zeigte sich der Sportdirektor der "Bullen" von den Schiedsrichtern. "Es gibt derzeit eine gefährliche Tendenz, dass Mane und Alan in die Kategorie Schwalbenkönige gedrängt werden", nahm er die beiden Offensivwirbler am Donnerstag auf einer Pressekonferenz in Salzburg in Schutz. Jüngster Anlass für Rangnicks Kritik war Gelb für Mane beim 3:0 gegen Grödig am vergangenen Sonntag, bei dem dem Senegalesen eine angebliche Schauspielerei zum Verhängnis wurde - die freilich keine war, wie die TV-Bilder zeigten. "Eine krasse Fehlentscheidung", meinte Rangnick, der Schiedsrichter Harkam als "völlig überfordert" bezeichnete. Harkam hätte zudem "seinen Teil" zur Eskalation zwischen Salzburg-Coach Roger Schmidt und Grödig-Trainer Adi Hütter nach der Partie beigetragen. Seinen deutschen Landsmann verteidigte er dezidiert: "Da hätte ich mich in jeder einzelnen Situation gleich verhalten wie Roger Schmidt". Schmidt selbst will nach dem Scharmützel mit Hütter keinen Kontakt mit seinem Kollegen gehabt haben. Ich wüsste nicht, wieso. "Denn ich bin derjenige, der beleidigt wurde", betonte der 46-Jährige. Angesichts des Erfolgslaufs stimmte Rangnick aber eine Lobeshymne an. "Dafür gibt es nur zwei Worte: Richtig gut", konstatierte er. Es gibt nicht viel auszusetzen. Vor allem die Art und Weise, wie die Mannschaft spielt, ist beeindruckend. Das soll ruhig so weitergehen. Kaderänderungen in der Winter-Transferzeit werde es kaum geben. Es gibt keine großartigen Gründe, etwas zu verändern. "Außer ein Spieler tritt mit dem Wunsch heran, dass er den Verein verlassen will", stellte Rangnick klar. Supreme Court bestätigt Obamas Gesundheitsgesetz Es ist ein großer Sieg für die Regierung Obama: Der US-amerikanische Supreme Court entschied heute, dass das eng mit Barack Obama verknüpfte Gesundheitsgesetz verfassungsmäßig ist. Mit fünf zu vier Stimmen urteilten die Richter, dass das Einzelmandat des Patient Protection and Affordable Care Act – es zwingt US-amerikanische Bürger, bis 2014 eine Krankenversicherung abzuschließen oder eine Strafe zu zahlen – im Rahmen der Steuerautorität des Staates verfassungsmäßig ist. Der oberste Richter John Roberts schlug sich auf die Seite der vier liberaleren Mitglieder der Kammer, während die Richter Scalia, Thomas, Alito und Kennedy dagegen entschieden. Das Gericht bestätigte auch die restlichen Abschnitte des 2700 Seiten umfassenden Gesetzes und vertrat außerdem die Ansicht, die Vorgabe des Gesundheitsgesetzes, wonach Bundesstaaten entweder die Zugangsvoraussetzungen für Medicaid erweitern müssten oder ansonsten sämtliche staatlichen Medicaid-Förderungen gestrichen würden, sei nicht verfassungswidrig einschränkend. Das Klageverfahren gegen das Gesetz war von 26 Bundesstaaten und der National Federation of Independent Business angestrengt worden. Das Gesetz war von allen führenden republikanischen Präsidentschaftskandidaten, einschließlich des letztendlichen Herausforderers Mitt Romney, im Vorwahlkampf 2012 entschieden abgelehnt worden. Norwegen: Norwegischer Ort macht sich mit Riesenspiegeln Licht Mit riesigen Spiegeln haben die Einwohner eines norwegischen Örtchens Licht in ihr düsteres Tal gebracht. Wegen des niedrigen Sonneneinfallgrades versinkt das im Vestfjord-Tal gelegene Rjukan von Herbst bis Frühling normalerweise im Schatten der umliegenden Berge. Mit drei gigantischen Reflektoren in 45 Metern Höhe wurde am Mittwoch ein Jahrhunderttraum wahr. "Endlich!", schwärmte Bürgermeister Steinar Bergsland bei der Startzeremonie im Sender TV2. Einige Talbewohner rückten sich Sonnenstühle zurecht, andere setzten sicherheitshalber Sonnenbrillen auf. Bisher mussten Sonnenhungrige im Winter mit einer Seilbahn auf einen nahen Gipfel fahren. Vor zehn Jahren hatte der lokale Künstler Martin Andersen den Vorschlag präsentiert, die Strahlen mit Spiegeln ins Tal zu lenken. Diese Grundidee gab es aber schon seit 1913 im Ort. Nach mehrjähriger Debatte hatte der Stadtrat schließlich das 5 Millionen Kronen (rund 615 000 Euro) teure Projekt verabschiedet. Eine ähnliche Konstruktion verschafft seit einigen Jahren dem italienischen Alpenort Viganella winterlichen Sonnenschein. Post leert kaum noch sonntags "Viele Bürger werden es noch nicht gemerkt haben, die roten Punkte für die Sonntagsleerung befinden sich noch an verschiedenen Briefkästen der Kernstadt und den Stadtteilen, aber liest man das Kleingedruckte an den gelben Behältern der Post AG, findet man schnell heraus, dass die Leerung an Sonn- und Feiertagen nicht mehr stattfindet", teilt die FDP mit. Eine Anfrage der FDP habe das bestätigt. An Sonn- und Feiertagen werde nur noch vor dem Postgebäude in der Ernst-Ludwig-Straße 36 und in der Jakob-Müller-Straße 1 in Hüttenfeld geleert. Ob in Hofheim und Rosengarten auch noch Sonntag geleert wird, werde in der Antwort auf die Anfrage der FDP nicht beantwortet. Der sozial- und jugendpolitische Sprecher der FDP, Fritz Röhrenbeck, will hier nachhaken. Die Sonntagsleerung ist gerade bei Terminpost ein wichtiger Postservice. "Diesen dünnt diese Unternehmung trotz der Preiserhöhung für Briefe am Januar 2013 radikal und unzumutbar aus". Thomas Bittner, Fraktions- und Stadtverbandsvorsitzender der Liberalen, unterstützt seinen Fraktionskollegen: "Was mich ärgert, ist die Tatsache, dass hier klammheimlich die Leerungszeiten geändert oder auch gestrichen werden". Von Bürgernähe ist die Post dabei meilenweit entfernt. "Mindestens müssen die Briefkästen in den Stadtteilen Neuschloß und Rosengarten wieder sonntags geleert werden", so Bittner und Röhrenbeck unisono. Auch für die Kernstadt gelte, besonders nicht mobile Mitbürger müssten einen Briefkasten mit Sonntagsleerung auch fußläufig erreichen können. Röhrenbeck fragte im Stadtparlament, ob die Stadtverwaltung Gespräche mit der Post über diese Sache plant. Bürgermeister Erich Maier antwortete, die Post habe nicht mit Lampertheim kommuniziert. Seines Wissens gebe es aber in Hofheim auch eine Sonntagsleerung. Ihre Partei hat sich ja für Privatisierungen ausgesprochen. "Dann werden Entscheidungen an anderer Stelle getroffen", sagte Maier. Frankfurter Parkgebühren sollen kräftig steigen Parken in Frankfurt könnte bald empfindlich teurer werden. Der Magistrat der Stadt berät heute Vormittag über eine Vorlage von Verkehrsdezernent Stefan Majer (Grüne). Demnach sollen die Parkgebühren um 50 Prozent erhöht werden. Dafür sollen aber nicht die Preise angehoben, sondern das Zeitintervall von Parkuhren und Parkscheinautomaten von 30 auf 20 Minuten verkürzt werden. Im Dezember muss dann noch die Stadtverordnetenversammlung entscheiden. Der Einzelhandelsausschuss der IHK Frankfurt hält das "für keine gute Idee". Die Parkmöglichkeit unmittelbar vor dem Geschäft sei "ein nicht zu unterschätzender Vorteil für kleinere Fachhändler". Der Verkehrsclub Deutschland ist der Meinung, dass eine Erhöhung nach zwei Jahrzehnten "durchaus angemessen und eigentlich längst überfällig" ist. Der öffentliche Nahverkehr werde auch teurer. Freudenstadt: Schnelle Aktionen überrumpeln Gastgeber Mit einem schmalen Kader mussten die Herren I des TSV Freudenstadt in der Schiller-Schulturnhalle in Reutlingen gegen die TG Gönningen von der Schwäbischen Alb antreten. Die Älbler standen zwar mit einer erfahrenen Mannschaft auf der anderen Netzseite. Bald zeigte sich aber, dass sie, auch altersbedingt, mit den schnellen Aktionen der Freudenstädter nicht ganz mithalten konnten . Mit den harten und platzierten Aufschlägen taten sich die Gönninger äußerst schwer. Wiederholt verpassten sie die von Simon Schenk und Eduard Schulz sauber über die Netzmitte zugespielten Pässe und Angriffe und waren bei der Blockabwehr nicht zur Stelle. Zwei hohe erste Satzgewinne drückten deutlich die Überlegenheit der Freudenstädter in allen Belangen aus. Angesichts dieser erdrückenden und spielbestimmenden Leistung wurde dann der dritte Satz etwas lasch und lustlos zum 3:0-Endstand (25:13, 25:14, 25:22) gewonnen. Da wird am 2. November mit dem TV Baiersbronn, der sich in Nagold klar durchsetzen konnte, ein wesentlich leistungsstärkerer Gegner auf dem Feld stehen. TSV Freudenstadt I: Dominik Bäuerle, Yannik Büchle, Sebastian Dölker, Felix Pälchen, Stefan Räller, Simon Schenk und Eduard Schulz. In der B-Klasse standen sich in der Murgtalhalle in Baiersbronn die zweiten Mannschaften aus Baiersbronn und Freudenstadt gegenüber. Sie lieferten ein hart umkämpftes Zwei-Stunden-Match ab. Nervosität auf beiden Seiten verursachte vor allem bei der Ballannahme Fehler und Punktegeschenke; auch bei den Pässen war die Präzision zuweilen Mangelware und in einigen kritischen Spielszenen verhinderte der Übereifer den Blick für mögliche Punktgewinne. In dieser leistungsmäßig sehr ausgeglichenen Begegnung stimmte im TSV-Team von Marcus Blasutto aber durchweg der große körperliche Einsatz und ein erfreuliches Engagement beider Teams. Pflegetag an der kleinen Engländerhütte Zum mittlerweile fünften Pflegetag in der Nachfolge des Natura 2000-Projektes oberer Hotzenwald traf sich eine Gruppe engagierter Teilnehmer bei der kleinen Engländerhütte in Ibach. Aufgrund von Anregungen aus der Bevölkerung sollte an diesem Tag im Bereich der Hütte der Blick ins Tal freigeschnitten werden, sagte Bürgermeister Helmut Kaiser. Viele Wanderer bezeichneten, so Kaiser, diesen Bereich als das Glanzstück des Schluchtensteigs, auf dem die Landschaft den idealen Rahmen für herrliche Ausblicke biete. Er dankte den Anwesenden für ihre Bereitschaft zur Mitarbeit und betonte, der Pflegetag sei ein geeignetes Instrument, um die Verbindung von Mensch und Natur zu stärken. Er biete jedem Bürger die Möglichkeit, in der Natur selbst Akzente zu setzen. Zugleich mit dem touristischen Aspekt könne auch der ökologische Berücksichtigung finden. Diesen ökologischen Aspekt erläuterte Friederike Tribukait von der Abteilung Naturschutz des Regierungspräsidiums Freiburg im Anschluss an die Begrüßung durch Landrat Tilman Bollacher, der die Schirmherrschaft übernommen hatte und der Aktion ein gutes Gelingen wünschte. Das touristische Ziel des Weitblicks deckt sich laut Tribukait mit dem Ziel, das inzwischen stark zugewachsene alte Allmendweidfeld mit seinen spezifischen geschützten Lebensraumtypen zu erhalten durch Öffnung und Verbindung zu den noch bestehenden Weiden hin. Bestimmte Arten wie etwa seltene Schmetterlinge und Grashüpfer können Barrieren in Form von Waldflächen nicht überwinden. Sie benötigen diese freien Verbindungen zur Arterhaltung. Tribukait sagte, sie wolle es an dieser Stelle nicht versäumen, eine Lanze zu brechen für das geplante Biosphärengebiet. In diese Planung füge sich die aktuelle Maßnahme nicht nur nahtlos ein. Ein Biosphärengebiet biete auch die Chance zu nachhaltiger ökonomischer wie ökologischer Entwicklung auf der Basis des international anerkannten Unesco-Status und somit eine kontinuierliche Ergänzung des mit dem Life-Projekt sowie den bisherigen Pflegetagen Erreichten für die Zukunft. Nach diesen verschiedenen Ausführungen teilten Revierleiter Christoph Wehle und Life-Projektmanagerin Cornelia Bischoff die Helfer in Gruppen ein. Die größeren Bäume waren im Vorfeld bereits geschlagen worden, der Forstschlepper stehe gegebenenfalls abrufbereit. Eine Gruppe von Helfern sollte sich um die Freistellung von Wacholderbüschen und um die Pflege eines Trockensteinriegels kümmern. Ziel war die freie Sicht am Aussichtspunkt. Löffingen: Köpfler immer noch einziger Kandidat Informationen im Internet: Obwohl das Baarstädtchen Löffingen mit seinen 7514 Einwohnern, einer intakten Infrastruktur, einer zukunftsweisenden Schul-, Kinder-, Jugend- und Seniorenpolitik, sowie eigenen Stadtwerken als attraktive Stadt bezeichnet werden kann, hat sich bisher noch kein zweiter Bürgermeisterkandidat gemeldet. Als einziger Kandidat um die Nachfolge des aus Altersgründen nicht mehr kandidierenden Bürgermeisters Norbert Brugger steht bisher der 46-jährige Bankkaufmann und Betriebswirt Dieter Köpfler aus Löffingen fest. Die Bewerbungsfrist läuft am Montag, 11. November, um 18 Uhr ab. Google, Samsung, Huawei wegen Nortel-Patenten verklagt Die Gruppe, die Tausende früherer Nortel-Patente besitzt, strengte am Donnerstag eine Lawine von Klagen wegen Patentverletzung gegen Handyhersteller an, darunter auch Google, das Unternehmen, das bei der Insolvenzversteigerung von Nortel von ihm überboten wurde. Rockstar, das Konsortium, das die Nortel-Patente für 4,5 Milliarden US-Dollar gekauft hatte, verklagte Samsung Electronics Co Ltd, HTC Corp, Huawei und vier andere Unternehmen wegen Patentverletzungen vor dem US-Bezirksgericht in Texas. Rockstar befindet sich im Gemeinschaftsbesitz von Apple, Microsoft, BlackBerry, Ericsson und Sony. Google wird in sieben Fällen der Patentverletzung bezichtigt. Die Patente beträfen Technologie, die Suchbegriffe im Internet mit relevanter Werbung in Übereinstimmung bringe, so die Klage, die damit den Kern von Googles Suchmaschinengeschäft trifft. Vertreter von Samsung, Huawei, HTC und Rockstar waren nicht unmittelbar erreichbar. Samsung, Huawei und HTC stellen Handys her, die mit Googles Betriebssystem Android arbeiten, das in scharfem Wettbewerb zu den Mobilprodukten von Apple und Microsoft steht. Im Jahr 2011 gab Google ein anfängliches Gebot über 900 Millionen Dollar für die Nortel-Patente ab. Google steigerte sein Angebot mehrmals und bot zuletzt 4,4 Milliarden US-Dollar. Nachdem es bei den Nortel-Patenten von Rockstar überboten wurde, erwarb Google Motorola Mobility für 12,5 Milliarden US-Dollar, ein Geschäft, das auch zum Teil von Motorolas Bibliothek an Patenten motiviert war. „Obwohl Google mit seinem Versuch gescheitert ist, die Klagepatente bei der Auktion zu erwerben, hat Google die Patente verletzt und tut dies auch weiterhin“, so das Klageschreiben. Rockstar fordert einen hohen Schadensersatz von Google, da es behauptet, Googles Patentverletzung sei absichtlich, so die Anschuldigung. Ägypten vereidigt ersten frei gewählten Präsidenten Mohammed Mursi legt den Amtseid ab, doch sein Tag des Triumphs dürfte nicht das Ende der politischen Streitigkeiten in Ägypten bedeuten. Der Islamist Mohammed Mursi versprach ein „neues Ägypten“, als er als erster frei gewählter Präsident des Landes vereidigt wurde und damit die Nachfolge von Husni Mubarak antrat, der 16 Monate zuvor aus dem Amt vertrieben worden war. Mit seiner Amtseinführung vor dem obersten Verfassungsgericht wurde Mursi auch zum ersten frei gewählten islamistischen Präsidenten der arabischen Welt und Ägyptens fünftes Staatsoberhaupt seit dem Sturz der Monarchie vor ungefähr 60 Jahren. Er legte den Eid vor den 18 in schwarze Roben gekleideten Richtern des Gerichts ab, das seinen Sitz am Nil hat und einem antiken ägyptischen Tempel nachempfunden ist. „Wir streben nach einer besseren Zukunft, einem neuen Ägypten und einer zweiten Republik“, sagte Mursi bei der feierlichen Zeremonie, die live im staatlichen Fernsehen übertragen wurde. „Heute hat das ägyptische Volk das Fundament für ein neues Leben gelegt – absolute Freiheit, eine echte Demokratie und Stabilität“, sagte der 60-jährige Mursi, ein in den USA ausgebildeter Ingenieur und Mitglied der Muslimbruderschaft, einer fundamentalistischen Gruppe, die seit ihrer Gründung vor 84 Jahren meist als verbotene Organisation von der jeweiligen Regierung scharf ins Visier genommen worden war. Hunderte Soldaten und Polizisten bewachten das Gebäude, als Mursi kurz nach elf Uhr Ortszeit in einem kleinen Autokonvoi eintraf. Nur ein paar Hundert Anhänger hatten sich vor dem Gericht versammelt, um dem neuen Präsidenten zuzujubeln, und im Gegensatz zum präsidialen Prunk aus der Mubarak-Zeit wurde der Verkehr nur kurzzeitig angehalten, damit der Autokonvoi die üblicherweise belebte Straße überqueren konnte, die das Stadtzentrum mit den südlichen Vorstädten verbindet. Als uncharismatisches „Ersatzrad“ der Bruderschaft verspottet hat sein persönliches Prestige seit seinem Sieg und einer Freitagsrede zugenommen, bei der er sich nicht nur als Kandidat der Islamisten, sondern all derer präsentierte, die die Bestrebungen des Aufstands aus dem Jahr 2011 gegen den autoritären Mubarak ans Ziel bringen wollten. „Ägypten ist heute ein ziviler, nationaler, verfassungsmäßiger und moderner Staat“, erklärte der in einen blauen Anzug mit roter Krawatte gekleidete Mursi den Richtern in der holzgetäfelten Kammer, in der er den Amtseid ablegte. Später fuhr Mursi zur Universität von Kairo, wo er seine Antrittsrede halten sollte. Er wurde offiziell von einer Armeekapelle begrüßt, die die Nationalhymne spielte, der er in Habachtstellung zuhörte. Der Militärführer Feldmarschall Hussein Tantawi war anwesend. Bei seiner Ankunft wurde er von Hunderten Anwesenden im größten Hörsaal der Universität mit Sprechchören von „Die Armee und das Volk sind eine Hand“ begrüßt. Die im Jahr 1908 als Bastion säkularer Bildung errichtete Universität von Kairo hat sich in den 1970er Jahren zu einer Hochburg islamistischer Studentengruppen entwickelt. Mursi legte am Freitag einen symbolischen Eid auf dem Tahir-Platz ab, der Geburtsstätte des Aufstands, der letztes Jahr zum Ende der autoritären Herrschaft Mubaraks führte, und er gelobte, präsidiale Machtbefugnisse zurückzufordern, die der Militärrat vom aus dem Amt gejagten Staatschef übernommen hatte. Doch mit dem Ablegen des offiziellen Eides vor dem Gericht und nicht wie üblich vor dem Parlament beugt er sich dem Willen des Militärs, was darauf hinweist, dass der Machtkampf weitergehen wird. Mursis Rede auf dem Tahir-Platz war voller dramatischer populistischer Gesten. Falkenberger Discothek sorgt für zwei tollen Abende Die neue Saison in der Falkenberger Discothek "Blue Velvet" hat begonnen. Am heutigen Freitagabend heißt es "Pump this party", am morgigen Samstagabend geht es mit einer Ü 25-Party weiter. Fette Beats und coole Sounds werden von den Veranstaltern natürlich an beiden Tagen versprochen. Arbeiter stürzte von Leiter: schwer verletzt Beim Auswechseln eines defekten Außenfühlers stürzte am Donnerstag ein 51-jähriger Arbeiter in Eggelsberg von einer Leiter und verletzte sich schwer. Der Mann aus Lamprechtshausen wollte an der Außenfassade eines Gasthauses einen defekten Heizungsfühler auswechseln. Als er auf die an die Dachrinne angelehnte Leiter stieg, rutschte diese weg und der Mann stürzte auf den Betonboden. Er erlitt schwere Verletzungen und wurde mit dem Rettungshubschrauber "Christophorus 6" in das Landeskrankenhaus Salzburg gebracht. Vergewaltiger in Südafrika: zweimal lebenslange Haft Neun Monate nach der brutalen Vergewaltigung und Verstümmelung eines 17-jährigen Mädchens in Südafrika ist der Täter am Freitag zu zweimal lebenslänglich verurteilt worden. Dies berichtete der Sender SABC. Das Opfer war später an den Folgen der schweren Verletzungen gestorben. Johannes Kana war bereits Anfang der Woche des Verbrechens für schuldig befunden worden. Die Tat hatte landesweit Entsetzen ausgelöst. Der damals 21-Jährige hatte Anene Booysen im Februar in einem Industriegelände in Bredasdorp nahe Kapstadt vergewaltigt. 14 Stunden kämpften die Ärzte um das Überleben des Opfers, jedoch vergeblich. Der Anblick der Jugendlichen war so entsetzlich, dass die Pfleger und Schwestern psychologischen Beistand brauchten. Kana hatte während des Prozesses zugegeben, in der Tatnacht mit Booysen in einer Bar gewesen zu sein. Er gestand auch, sie geschlagen und vergewaltigt zu haben, jedoch bestritt er, für den Tod des Mädchens verantwortlich zu sein. Die Polizei war zunächst von mehreren Tätern ausgegangen, entließ jedoch zwei Verdächtige aus der Haft, weil die Beweise gegen sie nicht ausreichten. Auch die Staatsanwaltschaft betonte während des Verfahrens, sie sei überzeugt, dass Kana zum Zeitpunkt der Attacke allein war. Vergewaltigungen gehören in Südafrika schon fast zum Alltag: Jährlich gibt es etwa 64 000 Anzeigen wegen sexueller Gewalt. Das sind fast zehnmal so viel wie in Deutschland, das aber mit 82 Millionen Menschen deutlich mehr Einwohner hat als Südafrika (50 Millionen). Polizei und Frauenverbände in Südafrika schätzen die Dunkelziffer bei sexueller Gewalt aber auf das 10- bis 25-fache. Jumbo besucht den Schwarzwälder Schinken Jumbo auf der Suche nach dem "besten Schinken der Welt": Für die TV-Sendung "Galileo" besuchte der Pro7-Star Bonndorf. Der Sprecher stellt gleich zu Beginn klar: Das wichtigste für den Schinken sind die Schweinekeulen, Turbomast ist dabei keine gute Voraussetzung. Kann Schinken, den man in jedem Supermarkt bekommt, also ein Qualitätsprodukt sein? Uli als Chef der großen Schinkenfabrik im Schwarzwald erklärt Jumbo die Arbeitsweise der Firma "Adler" in Bonndorf. "Deutschlands liebster Schinken", wie Jumbo den Schwarzwälder Schinken ankündigt. Nur mit Haar-Schutz und Kittel kommt er ins Innere der Fabrik. Auch Jumbo muss sich erstmal die Hände desinfizieren, bevor er zum Mikro greifen darf. Jumbo zur Stärkung bei Schnellimbiss in Waldshut gesichtet "Hier wird mir rießigen Mengen gearbeitet", staunen die Fernseh-Macher, Schwarzwälder Schinken als Massenprodukt. 16.000 Keulen pro Woche sprechen für sich. Gewicht, Fettanteil, Farbe: Uli erklärt worauf es bei der Qualität ankommt. Die meisten Schweine werden mit sechs Monaten geschlachtet. Fernsehen mit Niveau? Auch Einzelheiten wie der Ph-Wert des Fleisches spielen eine Rolle. Je dunkler das Fleisch, desto höher der ph-Wert. "Da bin ich gespannt, wenn ihr Roberto Blanco messt, was dann passiert", so Jumbo zynisch. Hier wird das Niveau des Privatfernsehens in Reinkultur präsentiert. Aber das Zuschauen lohnt sich trotzdem. Der Zuschauer sieht, dass das Zerlegen der Keulen weiterhin Handarbeit ist. Denn: Schwarzwälder Schinken ist traditionell ohne Knochen im Regal zu finden. Das Geheimnis des Schinkens ist die Gewürzmischung mit dem Salz. Rauchturm und Rauchfeuerung erinnern Jumbo optisch an ein "U-Boot". Der Trick: Tannenzweige sorgen hier im Rauch für den besonderen Geschmack des Schwarzwälder Schinkens. 20 Tage im Rauch machen den Schinken schließlich fast schwarz. "Jetzt verschwindet die Scheibe im Jumbo", kündigt er die Test-Verspeisung an. "Der ist richtig lecker", so das Fazit des TV-Stars. Damit werden alle Beteiligten leben können. Sie dachten, Reisebüros gehören dank Internet der Vergangenheit an? Flight Centre scheint sich dem Trend zu widersetzen. Das Unternehmen hat seine Gewinnaussichten für das Gesamtjahr erhöht und erwartet Rekordeinnahmen von Urlaubern in Australien und Großbritannien. Das Reiseunternehmen geht jetzt von einem bereinigten Jahresgewinn vor Steuern zwischen 325 und 340 Millionen Dollar aus, verglichen mit 305 bis 315 Millionen Dollar in seiner früheren Prognose. Wenn die aktuellen Zielwerte erreicht werden, dann bedeutet das ein Wachstum von 12 bis 17 Prozent im Vergleich zum Rekordgewinn von 290,4 Millionen Dollar im Zeitraum 2011/12. Wie Geschäftsführer Graham Turner bekannt gab, erzielte Flight Centre im ersten Halbjahr acht Prozent Gewinn und verbuchte einen starken Start ins zweite Halbjahr, besonders im australischen und britischen Privatgeschäft. „Seit Jahresbeginn sind unsere zehn Länder profitabel und einige davon befinden sich auf gutem Wege in Richtung Rekordjahreseinnahmen vor Zinsen und Steuern“, erklärte er. Dazu gehören Australien und Großbritannien, die typischerweise zu unseren stärksten Ergebnisträgern gehören. In Australien hat sich die Freizeitbranche in der zweiten Jahreshälfte erholt, was einen leicht schwächeren Markt für Geschäftsreisen ausglich. Ähnlich gut lief es für das Freizeitgeschäft von Flight Centre in Großbritannien, während auch hier die Geschäftskunden weniger ausgaben. Das US-Geschäft erholte sich gegenüber dem saisonbedingt schwächeren ersten Halbjahr, sodass für das dritte Jahr in Folge ein Gewinn für das Gesamtjahr erwartet wird. Die Aktien von Flight Centre stiegen gestern um 3 Cent auf 38,20 Dollar. Schulen werden zu größerem Fokus auf Mathematik, Rechtschreibung und Grammatik angehalten In Kursen zu englischer Literatur müssen Schüler künftig mindestens ein Stück von Shakespeare, einen Roman des 19. Jahrhunderts, romantische Lyrik und zeitgenössische britische Romane ab 1914 behandeln. In die Prüfung finden auch „ungesehene Texte“ Eingang, um zu breiterem Lesen anzuregen. Der kombinierte Kurs aus englischer Literatur und Sprache wird abgeschafft. Ab 2015 müssen Schüler eine eigenständige GCSE-Prüfung für Sprache ablegen, wobei es starke Anreize dafür gibt, englische Literatur als separate Qualifikation zu wählen. Das Bildungsministerium wird morgen die neuen Lehrpläne für Englisch und Mathematik veröffentlichen – die ersten Fächer, die radikal umgestaltet wurden. Andere Kernfächer werden nächstes Jahr geändert. In einer separaten Initiative wird Ofqual, die Aufsichtsbehörde für Prüfungen, eine Neuorganisation der GCSE-Strukturen bekannt geben, einschließlich eines neuen Benotungssystems und weniger Kursarbeit. In einer Rede im Sommer sagte Bildungsminister Michael Gove, dass es einen „breiten Konsens gibt, dass wir unser Prüfungssystem reformieren müssen, um das öffentliche Vertrauen wiederherzustellen“, wobei er betonte, die GCSEs würden „herausfordernder, ambitionierter und strenger“ werden. Studien zeigen, dass in englischen Schulen weniger Zeit für Mathematik aufgewendet wird – 116 Stunden pro Jahr oder drei Stunden wöchentlich pro Schuljahr – als in den meisten anderen Ländern. Demgegenüber unterrichten australische Schulen durchschnittlich 143 Stunden jährlich und Schüler in Singapur erhalten 138 Stunden. Zwar wird es keine formelle Anforderung geben, im Stundenplan mehr Zeit für Mathematik vorzusehen, doch aus Koalitionskreisen heißt es, die umfassende Matheprüfung – kombiniert mit einer stärkeren Gewichtung des Fachs in Ranglisten – werde Schulen vermutlich dazu ermutigen, mehr Stunden anzusetzen. Im Lehrplan wird mehr Augenmerk auf „Probleme aus dem richtigen Leben“ gelegt, einschließlich Finanzmathematik. Schöne Tiere und leckere Torten locken Die schönsten Kaninchen verschiedener Rassen und Farbenschläge präsentiert die Kreisverbandsleistungsschau an diesem Wochenende im Bürgerhaus. Die Bewertungen wurden bereits am Donnerstag vorgenommen Erneut richtet der Ortsverein W514 diese große Ausstellung aus. Züchter der im Kreis Soest bestehenden Vereine zeigen hier ihre besten Tiere wie auch junge Wickeder Hobbyhalter ihre Kaninchen. Am Donnerstag nahmen sechs Preisrichter die Bewertung der zahlreichen Kaninchen vor und konnten dabei herausragende Tiere auszeichnen. Die Besucher der Schau werden bestens informiert, da die Beurteilung aller Tiere an den Käfigen angebracht ist. Die offizielle Eröffnung der Ausstellung nimmt Bürgermeister Hermann Arndt Samstag um 14.30 Uhr vor. Für alle Besucher geöffnet ist die Kaninchenschau am Samstag bereits ab 10 Uhr sowie am Sonntag von 10 bis 15.30 Uhr, woran sich die Siegerehrung anschließt. Die Gäste sind auch zu einer mit stattlichen Sachpreisen bestückte Tombola und zu einer lecker bestückten Cafeteria eingeladen. Pamela Anderson trennt sich von ihren legendären blonden Locken und tritt erstmals mit neuem Bubikopf auf. Pamelas blonde Locken sind seit ihrer Rolle in der Fernsehserie Baywatch berühmt. Pamela Anderson ist der neueste Star, der seine Fans mit einem drastischen neuen Haarschnitt schockiert. Die ehemalige Baywatch-Schönheit hat sich zugunsten eines platinblonden Kurzhaarschnitts von ihren langen blonden Locken getrennt. Ihren neuesten Look präsentierte die 46-jährige Schauspielerin am Mittwoch in Los Angeles und stellte auch gleich einen Schnappschuss auf ihre Twitter-Seite. Es ist das erste Mal seit 20 Jahren, dass das blonde Sexsymbol kurze Haare hat, und wir lieben die sittsame Veränderung. Was halten Sie von Pammys Haar? Verraten Sie uns Ihre Meinung unten in den Kommentaren. Salem: Johanna Rahner beim Ökumenischen Gesprächsforum Beim nächsten Ökumenischen Gesprächsforum am Montag, 21. Oktober, im Neuen Museum des Schlosses geht es um das Thema "Zur Hölle mit der Hölle - Theologische Überlegungen zum heutigen Umgang mit den letzten Dingen". Referentin ist Professorin Johanna Rahner. Das Ökumenische Gesprächsforum ist eine Initiative der katholischen und evangelischen Kirchengemeinden Salem, des Schlosses Salem und des Kulturamtes Bodenseekreis. Johanna Rahner will im Forum der Frage nachgehen, wie denn heute die Menschen die "letzten Dinge" nach dem Tod einstufen. Hätten die Menschen in den vergangenen Jahrhunderten davon zu viel gewusst und dabei auf jene Bilder von Himmel und Hölle gesetzt, "die bis heute unsere Vorstellungen prägen", so zeichne sich die zeitgenössische prophetische Lehre von den Hoffnungen auf Vollendung eher durch eine gewisse Verlegenheit oder gar Sprachlosigkeit aus. "Die größere Hoffnung ist Christinnen und Christen durch die Religionskritik gehörig ausgetrieben worden", sagt die Referentin. Sie habe "uns mit so vielen Fragezeichen versorgt, dass uns die Ausrufezeichen abhanden gekommen zu sein scheinen". Johanna Rahner sagt weiter: "Doch die entscheidende Herausforderung bleibt das Ärgernis des Todes". Damit verbunden sei die Frage nach jener Sehnsucht, "die davon träumt, dass am Ende alles gut sein möge". Johanna Rahner, 1962 geboren in Baden-Baden, studierte von 1982 bis 1989 Katholische Theologie und Biologie an der Albert-Ludwigs-Universität Freiburg. Sie promovierte 1997 zum Dr. theol., ebenfalls in Freiburg. Die Habilitation für Fundamentaltheologie und Ökumenische Theologie folgte 2003 an der Westfälischen Wilhelms-Universität. Seit 2010 hat Johanna Rahner einen Lehrstuhl für Systematische Theologie am Institut für Katholische Theologie der Universität Kassel inne. Geislingen: Mehr als 100 junge Katholiken vom Kleinen Heuberg bekräftigen bei der Firmung ihr Glaubensbekenntnis In zwei Gottesdiensten sind 101 15- und 16-jährige Jugendliche der Seelsorgeeinheit Am Kleinen Heuberg gefirmt worden. Den Gottesdienst begleitete am Vormittag die Gruppe Laudato-Si, am Nachmittag der Jugendchor The Spirit. Mit dem Empfang des Firmsakraments sagten die Jugendlichen Ja zu ihrer Taufe und erbaten die Kraft des Heiligen Geistes. Die Firmlinge hatten sich in den vergangenen Monaten, unter der Leitung von Diakon Reiner Dehner und der Mithilfe zahlreicher Gemeindemitglieder auf den großen Festtag vorbereitet. In unterschiedlichen Projekten lernten sie dabei verschiedene Aufgaben des christlichen Gemeindelebens kennen und erlebten gemeinsam den Jugendtag in Untermachtal. Illmensee: Zweites Mountainbike-Rennen begeistert Teilnehmer Bei herrlichem Wetter kamen 214 Fahrradfahrer nach Illmensee, um den Rundkurs über die Hügelketten rund um den See zu bewältigen. Das teilt Ulrich Knobel vom veranstaltenden Sportverein Illmensee mit. Unter den Teilnehmern waren, insbesondere auf der Kurzdistanz über 15 Kilometer und 300 Höhenmeter, auch zahlreiche Jedermannsradler, die ihr Hobby einmal in Wettkampfatmosphäre ausüben wollten. Zwei Juniorenfahrer der deutschen Spitzenklasse waren in diesem Wettkampf ebenfalls am Start: Felix Bader aus Bad Waldsee und Pascal Treubel aus Aach-Linz kamen mit der Empfehlung gute Platzierungen bei den Deutschen Meisterschaften. Diese Beiden konnten setzten sich erwartungsgemäß vom Feld ab. Wie im Vorjahr konnte Felix Bader einen kleinen Zeitvorsprung bis ins Ziel retten und verteidigte seinen Titel als Gesamtsieger der Kurzdistanz. Auf Platz zwei konnte sich erneut Pascal Treubel platzieren. Bei den Damen war es Theresa Duelli vom Team Albtraum, die es ganz oben aufs Siegertreppchen schaffte. Auf Platz zwei und drei kamen Anne Adel aus Illmensee und Leonie Treiber aus Owingen. Eine erfreuliche Entwicklung ist die zunehmende Anzahl von Fahrern, die in der Gemeinde wohnen oder arbeiten. Nicht nur was das Leistungsvermögen betrifft, war die ganze Bandbreite an Sportlern vertreten. Auch die Altersstruktur reichte von zehn Jahren bei den Jüngsten bis zu über 70 Jahren bei den ältesten Startern. Im Hauptrennen waren in diesem Jahr noch mehr absolute Topathleten am Start. Vier Fahrer konnten sich von den regionalen Spitzenfahrern absetzen. Darunter Philipp Pangerl, ein Mountainbike-Halbprofi vom Black-Tusk-Racing-Team. Pangerl war zusammen mit einem Teamkollegen bereits zwei Mal Weltmeister im Zwölf-Stunden-Fahren. In diesem Jahr wurde er Europameister in dieser Spezialdisziplin. Mit dabei auch Roland Ballerstedt, der bereits zwei deutschen Meistertitel im Duathlon sein Eigen nennt. Nach 45 Kilometern und 900 Höhenmetern kam es zu einem Wimpernschlagfinale im Zieleinlauf vor der Drei-Seen-Halle. Pangerl raste als Erster über die Ziellinie. Nur eine Sekunde dahinter konnte sich der Routinier Ballerstedt den zweiten Platz in der Gesamtwertung sichern. Zeitgleich kamen dann Hermann und Warthmann als Dritte der Gesamtwertung ins Ziel. In der Damenwertung war Christiane Cohsmann die Zeitschnellste im Hauptrennen. Den zweiten Platz sicherte sich Areane Blersch aus Binzwangen vor Natascha Werner aus Stuttgart. Sportler und Helfer zeigten sich sehr zufrieden mit dem reibungslosen und gut organisierten Ablauf der Veranstaltung. Unterwegs durch Schlamm, Flüsse und Dschungel für kostenlose medizinische Versorgung Dr. Georges Bwelle bringt kostenlose medizinische Hilfe in entlegene Dörfer in Kamerun Bwelle und sein Team verbringen beinahe jedes Wochenende damit, Hunderte von Patienten zu behandeln In dem westafrikanischen Land gibt es nicht viele Ärzte, nur einen für 5.000 Menschen Stimmen Sie hier oder mit Ihrem Mobilgerät ab Dr. Georges Bwelle gehört zu den Top 10 der „CNN Heroes of 2013“. Sie können für ihn oder einen der anderen Helden in den Top 10 abstimmen, um ihn zum „CNN Hero of the Year“ zu wählen. Der Sieger erhält 250.000 Dollar zur Fortsetzung seiner außergewöhnlichen Arbeit. 21 Jahre lang sah Georges Bwelle mit an, wie sein kranker Vater immer wieder das Bewusstsein verlor und zu Krankenhäusern reiste, die nicht über die Mittel verfügten, um ihm zu helfen. Jamef Bwelle wurde 1981 bei einem Autounfall in der Nähe von Yaoundé, der Hauptstadt Kameruns, verletzt. Zuerst hatte er nur einen gebrochenen Arm, doch dann bildete sich eine Entzündung, die sich auf sein Gehirn ausweitete und dort ein Hämatom verursachte, das ihn für den Rest seines Lebens beeinträchtigen sollte. „Es gab keine Neurochirurgen in Kamerun“, so Georges Bwelle. Wir hätten ihn aus Kamerun herausgebracht, wenn wir das Geld gehabt hätten. Stattdessen verbrachte Bwelle Jahre damit, seinen Vater in überfüllte Kliniken und Hospitäler zu begleiten, um dort die Behandlung zu bekommen, die sie zu bieten hatten. „Es ist nicht einfach“, kommentiert Bwelle. Man kann um fünf Uhr morgens das Haus verlassen und zum Krankenhaus rennen, um der Erste zu sein, und ist doch nicht Erster. Es gibt sehr viele Patienten. Einige Menschen sterben sogar, weil sie warten müssen. Die Situation hat sich kaum verändert, seit Bwelles Vater 2002 starb. In Kamerun gibt es nur einen Arzt für je 5.000 Menschen, so die Weltgesundheitsorganisation. Demgegenüber liegt das Verhältnis in den Vereinigten Staaten bei einem Arzt für 413 Personen. Doch selbst wenn es einen Arzt für sie gäbe, könnten sich die meisten Kameruner den Besuch nicht leisten. Zwei von fünf Menschen im Land leben unterhalb der Armutsgrenze und nahezu Dreiviertel der Gesundheitsausgaben im Land sind privat. „Das einzige Problem, das sie haben, ist die Armut“, sagt Bwelle. Und die Armut macht es unmöglich, das Leben zu genießen. Seinen Vater und so viele seiner Landsleute leiden zu sehen ließ in Bwelle den Entschluss reifen, etwas dagegen zu unternehmen. Dr. Georges Bwelle und sein Freiwilligenteam haben im letzten Jahr 700 kostenlose Operationen durchgeführt. Er wurde selbst Arzt und arbeitet als Gefäßchirurg im Central Hospital in Yaoundé. Außerdem gründete er eine gemeinnützige Organisation namens ASCOVIME, die an Wochenenden in ländliche Gegenden reist und dort kostenlose medizinische Versorgung anbietet. Seit 2008 haben er und seine Freiwilligengruppe knapp 32.000 Menschen geholfen. Beinahe jeden Freitag zwängen er und bis zu 30 Leute sich in Kleinbusse und fahren mit der verschnürten medizinischen Ausrüstung auf dem Dach über unbefestigtes Terrain in die Dörfer, die Hilfe benötigen. Nicht immer verläuft alles reibungslos. Schon mehr als einmal mussten sie die Fahrzeuge durch Flüsse und Schlamm schieben. Doch wenn sie ankommen, werden sie wie Helden empfangen: ein Festessen, Gesang und Tanz und die beste Unterbringung, die der Ort zu bieten hat. In diesen Dörfern ist kostenlose medizinische Versorgung wirklich ein Grund zum Feiern und Bwelle – mit seinem breiten Lächeln und seiner grenzenlosen Energie – ist gerne bei der fröhlichen Feier dabei. Am nächsten Morgen beginnt das Team dann mit der Untersuchung von Hunderten von Patienten. „Pro Fahrt behandeln wir 500 Personen“, so Bwelle. Sie kommen aus einem Umkreis von 60 Kilometern um das Dorf – und das zu Fuß. Jede dieser Wochenendkliniken bietet medizinische Versorgung in einer Reihe von Bereichen an. Viele Leute werden wegen Malaria, Tuberkulose, Unterernährung, Diabetes, Parasiten und sexuell übertragbaren Krankheiten behandelt. Andere erhalten Krücken, gespendete Brillen oder kostenlose Geburtsurkunden – ein Dokument, das für die Schule erforderlich ist, sich aber viele arme Familien einfach nicht leisten können. Abends führt das Team einfache Operationen mit örtlicher Betäubung aus. Die Operationen finden normalerweise in einer Schule, dem Rathaus oder einer Wohnung statt; nach dem Eingriff stehen die Patienten auf und gehen in den Erholungsbereich, um Platz zu machen für den Nächsten. Die Beleuchtung für den OP und die Desinfektionsausstattung wird vom Generator der Gruppe gespeist und so arbeiten Bwelle und seine Freiwilligen bis in die frühen Morgenstunden am Sonntag. Es ist ein anstrengendes Pensum, aber die Dorfmusiker helfen normalerweise, das Team motiviert zu halten. „Sie trommeln die ganze Nacht, damit wir wach bleiben und unsere Arbeit fortsetzen können“, sagt Bwelle. Am Sonntag fährt das Team dann zurück in die Stadt, müde, aber stolz auf die geleistete Arbeit. Die Gruppe – eine Mischung aus kamerunischen Ärzten und ausländischen Medizinstudenten – hat im letzten Jahr 700 kostenlose Operationen durchgeführt und weiß, dass sie mit ihrer Arbeit einen enormen Unterschied für die Menschen bewirkt, denen sie hilft. Ein Mann erklärte, dass die kostenlose Operation eines Leistenbruchs, die er erhalten habe, ihm nun ermögliche, wieder zu arbeiten. „Das verändert die Zukunft meiner Familie“, meinte der Mann. Neben den Wochenendkliniken und seiner Arbeit als Chirurg im Krankenhaus arbeitet Bwelle auch nachts in privaten Kliniken in Yaoundé. Mit diesem zweiten Job finanziere er 60 % seiner gemeinnützigen Tätigkeit, so Bwelle; der Rest stamme aus privaten Spenden. „Ich weiß wirklich nicht, wann er schläft“, sagt Katie O'Malley, die im zweiten Jahr an der Drexel University in Philadelphia Medizin studiert und freiwillig in Bwelles Gruppe mitarbeitet. Er ist immer entweder im Krankenhaus oder versucht, Geld für die Organisation aufzubringen, damit er auf diese Kampagnen gehen kann. Für Medizin- und Krankenpflegestudenten wie O'Malley, die aus den USA und Europa kommen und Bwelle unterstützen, ist dies eine Chance, praktische Erfahrungen zu sammeln, die sie zu Hause nie bekommen würden. „Wir können bei Operationen dabei sein, wo wir helfen, Blut abzutupfen oder die Instrumente für Dr. Bwelle halten“, erklärt O'Malley. Das wäre in Amerika als Medizinstudent im zweiten Jahr niemals möglich. Die Studenten bezahlen ihre Reise nach Kamerun normalerweise selbst und bringen häufig gespendetes Sanitätsmaterial mit. Sind sie aber erst einmal in Yaoundé, übernimmt Bwelle die Unterbringung, den Transport und die Anleitung. „Er ist ganz ohne Zweifel ein Held“, sagt O'Malley. Er widmet sein Leben dieser Organisation und sein Wunsch, dem kamerunischen Volk zu helfen, kennt keine Grenzen. Für Bwelle ist die beinahe ständige Arbeit keine Belastung. Anderen zu einem glücklicheren Leben zu verhelfen und damit ein Versprechen zu erfüllen, das er seinem Vater gegeben hat, bereitet ihm große Freude. „Ich bin so glücklich, wenn ich diese Arbeit mache“, meint Bwelle. Und ich denke an meinen Vater. Ich hoffe, er sieht, was ich tue. Ich mache es, um Menschen wieder zum Lachen zu bringen und um die Schmerzen zu lindern. Besuchen Sie die Website von ASCOVIME und erfahren Sie, wie Sie helfen können. Exzellent den Kampf gemeistert Die Rolle des Santiago, dem alten Mann in Hemingways Novelle "Der alte Mann und das Meer", ist Horst Janson auf den Leib geschnitten. Janson ist selbst ein alter Hase in seinem Metier, der Schauspielkunst. Dem alten Mann Santiago kann keiner beim Fischfang etwas vormachen. So ergänzen sich die beiden einfach großartig. Man meint fast, die Falten im Nacken des alten Mannes, von denen der Fischerjunge Manolo spricht, sehen zu können. Wenn Santiago müde vom Leben gebeugt auf dem Stuhl sitzt, ist das bei Janson echt. Daneben ist die Rolle des alten Fischers durch und durch eine Charakterrolle, die Janson exzellent meistert. Hemingway erzählte die Geschichte eines Kämpfers, eines mutigen Mannes, der nicht aufgibt und letztendlich durch sein Wissen und auch seine Willensstärke den Kampf gegen den Fisch gewinnt. Janson ist in weiten Strecken als Alleindarsteller auf der Bühne. Er schafft es, die Aufmerksamkeit des Publikums auf sich zu fokussieren, so dass seine Monologe keinen Moment langweilig sind. Seine Anstrengungen, den Fisch endlich an die Oberfläche des Wassers zu ziehen, sind so echt, dass die Zuschauer vergessen, dass das Meer doch nur aus blau beleuchteten Wasserflaschen besteht. Regisseur Jens Hasselmann lässt den alten Mann im Boot vor dem Fischerdorf agieren. Im Verlauf der Aufführung setzt er die jeweils aktive Szene ins Licht: Die Hütte von Santiago, die Bar der Sängerin Marie-Luise Gunst, die mit ihren Lieder und ihrer herrlichen Stimme das Lebensgefühl Kubas besingt. Die vier Musiker spielen Kubas Rhythmus dazu und sind zugleich Gäste der Bar. Tourismus: Abstieg zu den Römern Auf rund 120 Metern Länge ist unterhalb von Köln ein Abwasserkanal aus der Römerzeit erhalten. Wer Köln besucht, kommt am Dom nicht vorbei. Rund 157 Meter ragen die beiden Türme in den Himmel und machen ihn zum zweithöchsten Kirchengebäude Europas. Doch nur wenige Besucher, die die beiden filigranen Kirchtürme bestaunen, ahnen, dass es auch unter dem Dom eine Menge zu entdecken gibt. Rainer Schulze ist Experte in Sachen Kölner Unterwelt. Treffpunkt für seine Führungen ist das Service-Center von Köln-Tourismus direkt am Dom. Der Rundgang beginnt ganz unspektakulär: "Wir fangen in der Tiefgarage an", sagt Schulze. In den siebziger Jahren wollten die Stadtväter eine autogerechte Stadt, und deshalb blieb von den Resten der alten Stadtmauer nur das stehen, was nicht zu groß war. Die meisten Benutzer des Parkhauses eilen deshalb heute auch an den römischen Überresten vorbei und stellen nur ihr Auto ab. Doch wer genauer hinschaut, entdeckt im Parkdeck D2 eine durch Metallgitterstäbe abgetrennte archäologische Fundstelle. Zu sehen sind etwa fünf Meter hohe Ruinen aus handtellergroßen Steinen. "Es sind Reste der römischen Stadtmauer, die in der zweiten Hälfte des ersten Jahrhunderts nach Christus erbaut wurde", erzählt Schulze. Bevor es wieder zurück ans Tageslicht geht, lässt Schulze die Teilnehmer auf der oberen Parkebene noch einen Blick in einen finsteren, 15 Meter tiefen Schacht werfen. Das ist der Brunnen des alten Domes, der leider auch kaum wahrgenommen wird. Nächste Station des Rundgangs ist das Prätorium, und hier steigen die Teilnehmer wieder hinunter in die Tiefe. Wir erleben hier den Amtssitz des einst mächtigsten Mannes nördlich der Alpen, des Prätors der CCAA. Was CCAA bedeutet, möchte eine Besucherin wissen. "Die Abkürzung steht für "Colonia Claudia Ara Agrippinensium", was auf gut Deutsch so viel wie "Stadt römischen Rechts und Stadt der Agrippinenser, gegründet unter Kaiser Claudius am Ort des Altars für den Kaiserkult" bedeutet". Und beim Prätorium handelt es sich um den ehemaligen Statthalterpalast, das Machtzentrum des römischen Imperiums am Rhein. Vom Vorraum der Ausstellung führt ein Tunnelzugang zum römischen Abwasserkanal, der hier auf rund 120 Metern Länge erhalten ist. "Sie können ruhig ein Stück entlang der sogenannten Cloaca Maxima entlanggehen, wenn Sie wollen", muntert Schulze die Gäste auf. Eine Überraschung hat Schulze noch. Nachdem er an der Kasse den Schlüssel geholt hat, führt er die Gruppe zu einem 16 Meter tiefen, begehbaren Schacht. "Wir sind jetzt in der Mikwe, einem rituellen jüdischen Bad", erklärt er. Die jüdische Gemeinde baute ihr Bad tief in den Boden, um an das Grundwasser zu kommen, das für die rituellen Waschungen unabdingbar war. Bis heute sind im unteren Ende der Mikwe, deren Ursprünge bis ins achte Jahrhundert zurückgehen, unterschiedliche Wasserstände durch wechselnde Pegel des Rheins ablesbar. Die Mikwe wird Teil einer archäologischen Zone auf dem Rathausplatz, für das die Bauarbeiten in Kürze beginnen sollen. Bis zur Fertigstellung werden aber noch einige Jahre vergehen. Bein fast abgehackt: Neuauflage von Rocker-Prozess Eine blutige Attacke im Rockermilieu wird nach über vier Jahre neu aufgerollt. Ein Prozess wegen versuchten Totschlags, gefährlicher Körperverletzung und Sachbeschädigung gegen zwei 30-Jährige hat vor dem Landgericht Frankfurt (Oder) begonnen. Er wird von strengen Sicherheitsvorkehrungen begleitet. Die Angeklagten schwiegen zum Auftakt. Sie sollen in der Rockerszene aktiv gewesen sein und damals zu den Bandidos gehört haben. Die Staatsanwaltschaft wirft ihnen vor, im Juni 2009 gemeinsam mit unbekannten Komplizen in Finowfurt auf drei Männer in einem Auto eingestochen und eingeschlagen zu haben. Alle Opfer wurden schwer verletzt, ein Mann hätte fast sein Bein verloren. Die Opfer sollen zur konkurrierenden Gruppierung Hells Angels gehört haben. Einer soll ein hochrangiges Mitglied aus Berlin gewesen sein. Vorausgegangen war anscheinend eine Verfolgungsjagd mit mehreren Autos. Laut Anklage ging es um Revierkämpfe und eine Machtdemonstration. Die beiden Angeklagten waren Anfang 2012 in einem ersten Verfahren freigesprochen worden. Ein Gerichtssprecher sagte damals, es habe nicht bewiesen werden können, dass die Männer an der blutigen Fehde tatsächlich beteiligt gewesen seien. Die Täter hatten Masken getragen und waren nicht erkannt worden. Der Bundesgerichtshof hob das Urteil nach Revision der Staatsanwaltschaft auf und verwies es zur erneuten Verhandlung an das Landgericht zurück. Einer der Angeklagten ist derzeit wegen eines anderen Deliktes im offenen Vollzug. Zum Auftakt ging es vor allem um die Rekonstruktion der Abläufe in der Tatnacht. Als Zeuge war der damals ermittelnde Kommissar geladen. Im Zentrum standen Handygespräche der Angeklagten und weiterer Personen, die die Polizei abgehört hatte. Schwierig ist, dass sich Rocker vor Gericht fast immer an ein für sie ehernes Gesetz halten - und nicht aussagen. Das gilt auch für die Opfer. Im ersten Prozess hatte nur eines der Opfer ausgepackt. Staatsanwalt Stefan Golfier von der Staatsanwaltschaft Frankfurt (Oder) sagte auf Nachfrage, es seien seit dem letzten Verfahren neue Spuren aufgetaucht. Für den Prozess sind elf weitere Verhandlungstage angesetzt. Die Wegwerfgesellschaft denkt nicht Die Nacht war lang, die Musik laut und die Stimmung gut, aber irgendwann geht es nach Hause. Nur: In den Bäuchen der Leute auf dem Beifahrer- und Rücksitz macht sich der Hunger bemerkbar. Klar, dafür mag der eine oder andere Cocktail oder Sekt verantwortlich sein! Was liegt da näher, als gechillt zum nächsten Drive-In zu fahren, um sich eine Kleinigkeit zu gönnen? Ich gebe zu, ich bin gerne mit dabei, wenn es spätnachts beziehungsweise frühmorgens ans Fastfood-Holen geht. Ein paar Pommes, eine Cola, ein Burger - und dann nix wie ab nach Hause und ins Bett! Doch auf dem Heimweg machen sich die offensichtlichen Unterschiede zwischen mir und anderen hungrigen Disco-Gängern bemerkbar. Denn was muss einem fehlen, dass man mit steter Regelmäßigkeit seine Fastfood-Tüten aus dem Autofenster wirft?! Vor allem an den Wochenenden liegen weggeworfene Papiertüten an Straßenrändern und auf Parkplätzen. "Wieso?", frage ich mich. Sind die Leute zu doof, um die Tüten mit nach Hause respektive bis zum nächsten Mülleimer zu nehmen? Es ist ja nicht nur so, dass das Papierzeugs die Landschaft verschandelt. Tüten haben auch schon Verkehrseinrichtungen wie Leitplanken verdeckt und dadurch Unfälle ausgelöst. Über so was denkt besagte "Wegwerfgesellschaft" aber nicht nach, vermutlich weiß sie nicht einmal, was dieses Wort eigentlich bedeutet. Wenn man abends öfter unterwegs ist, erst recht mit mehreren Leuten im Auto, weiß man, wie eine Rückbank nach durchfeierten Nächten aussehen kann: Klamotten, Flaschen und sonstiger Müll türmen sich da. Da würden ein paar Tüten mehr oder weniger doch auch nix ausmachen - im Gegensatz zur Straße, wo keiner auf den Essensresten anderer rumtrampeln will. Ich sehe ja schon den Tag kommen, an dem den Städten und Gemeinden das Wegräumen zu blöd wird - und die Fastfood-Ketten für ihre Tüten Pfand verlangen müssen. Obamas Rückzieher in der Gesundheitspolitik Nach heftiger Kritik machte Präsident Obama gestern einen Rückzieher bei seinem häufig wiederholten, eindeutigen Versprechen: „Wenn Ihnen Ihre Krankenversicherung gefällt, dann können Sie sie behalten.“ Nachdem Hunderttausende von ihrem Versicherer ein Kündigungsschreiben erhalten haben, warfen die Republikaner dem Präsidenten in den letzten Tagen vor, er habe die amerikanische Öffentlichkeit getäuscht. Gestern relativierte Obama sein ursprüngliches Versprechen. „Die überwiegende Mehrheit der Bürger, die eine funktionierende Krankenversicherung haben, können sie behalten“, sagte er bei einer Rede in Boston. Als Reaktion auf die zahlreichen Medienberichte zu den Kündigungen forderte Obama jene Amerikaner, die derartige Mitteilungen erhalten haben, auf, sich auf dem freien Markt nach einer neuen Versicherung umzusehen. Die meisten Bürger könnten so eine bessere, umfassendere Krankenversicherung für denselben Preis oder günstiger als prognostiziert erhalten. „Sie kommen ein besseres Angebot“, sagte er. Die Regierung bezeichnete es als wenig überraschend, dass sich die fünf Prozent der Bevölkerung, die selbst eine Versicherung abgeschlossen haben, nach einem anderen Tarif umsehen müssten, da ihr Vertrag nicht den neuen Standards nach dem Affordable Care Act entspreche. „Ich möchte diesen Amerikanern ganz direkt sagen: Sie haben Besseres verdient“, sagte Sebelius bei einer Anhörung vor dem Energie- und Handelsausschuss des Repräsentantenhauses in Washington. Sebelius, die für die Umsetzung des Affordable Care Acts verantwortlich ist, erklärte, dass der Start der Online-Plattform seit Oktober „miserabel“ verlaufen sei. „Ich bin ebenso frustriert und wütend wie alle anderen auch“, sagte sie. Ich bin entschlossen, Ihr Vertrauen zurückzugewinnen. Dieser Ausspruch einer aufgebrachten Sebelius zu einem hinter ihr sitzenden Berater bei der gestrigen Anhörung im Repräsentantenhaus wurde nach einem Streitgespräch mit dem republikanischen Abgeordneten Billy Long aus Missouri aufgenommen. Dabei ging es darum, ob sie zur Teilnahme an Obamacare verpflichtet sein sollte. Nach mehr als drei Stunden Anhörung bedrängte Long Sebelius wiederholt mit der Frage, warum die „Architektin“ des Affordable Care Acts nicht freiwillig auf eine staatlich geförderte Versicherung verzichtet habe, um selber einen Tarif bei HealthCare.gov abzuschließen, den sie nun Millionen von Amerikanern verkaufen wolle. Regierung in Jerusalem bestätigt Angriff auf syrischen Luftwaffenstützpunkt nicht Ein amerikanischer Regierungsbeamter, der anonym bleiben wollte, hat am Donnerstag gegenüber dem amerikanischen Nachrichtensender CNN behauptet, israelische Kampfflugzeuge hätten einen Tag zuvor einen Luftwaffenstützpunkt im syrischen Latakia angegriffen. Das Ziel seien "Raketen und zugehörige Ausrüstung" gewesen, von denen die israelische Regierung befürchtet habe, sie seien für die libanesische Hisbollah bestimmt gewesen, hieß es laut CNN. Syrische und libanesische Medien sowie der arabische Sender Al-Arabiya hatten zuvor berichtet, dass der Stützpunkt in der Hafenstadt Latakia in der Nacht von Mittwoch auf Donnerstag beschossen worden sei, und die Israelis dafür verantwortlich gemacht. Der israelische Fernsehsender Channel 2 zeigte Satellitenbilder des Stützpunktes in Latakia, auf denen russische Abwehrraketen vom Typ S-125 Newa sowie eine Batterie von SA-3 Raketen zu sehen waren, die Channel 2 zufolge eine Reichweite von 35 Kilometern haben und Sprengköpfe bis zu 70 Kilogramm transportieren können. Unsicher Die Regierung in Jerusalem hat den Angriff offiziell nicht bestätigt. Allerdings zitiert die Nachrichtenagentur Reuters einen ebenfalls anonymen israelischen Regierungsbeamten mit den Worten, er glaube, dass Israel den Angriff ausgeführt habe, sei aber nicht sicher. Ein Sprecher des israelischen Verteidigungsministeriums sagte jedenfalls: "Wir kommentieren diese Berichte nicht". Der Journalist Ron Ben-Yishai betonte in der Tageszeitung Yedioth Ahronoth, dass das syrische Regime bereits früher, teils erfolgreich, versucht habe, Boden-Luft-Raketen an die Hisbollah zu liefern. Die israelische Regierung hatte wiederholt davor gewarnt, dass jeder Versuch Syriens, die Hisbollah mit chemischen oder anderen gefährlichen Waffen zu versorgen, das Überschreiten einer "roten Linie" bedeute, dem eine militärische Antwort folgen würde. John Kerry erklärt in einem beispiellosen Eingeständnis, die US-Spionage sei „unangemessen zu weit gegangen“ John Kerry deutete mit einem unerwarteten Eingeständnis ein Aufweichen der abwehrenden Haltung der USA in Bezug auf ihre Überwachungsprogramme an, indem er sagte, die Spionage sei in bestimmten Fällen „unangemessen zu weit gegangen“. Der Außenminister gab außerdem zu, er trüge gemeinsam mit Barack Obama die Verantwortung dafür, dass man auf „Autopilot“ geschaltet habe, als die explosiven Enthüllungen des Whistleblowers Edward Snowden über die Spionageaktivitäten der NSA öffentlich wurden. Durch die durchgesickerten Informationen ist die US-Regierung in einen diplomatischen Sturm der Entrüstung vonseiten ihrer Verbündeten geraten. Bei einer per Videoverbindung übertragenen Rede auf der Open Government-Konferenz in London sagte Kerry: „Ganz ohne Frage haben der Präsident und ich sowie andere in der Regierung von einigen Dingen erfahren, die quasi per Autopilot abgelaufen sind, einfach weil die Fähigkeit dazu bestand, was noch auf den Zweiten Weltkrieg und die schwierigen Jahre des Kalten Krieges sowie natürlich auf den 11. September zurückgeht.“ Anschließend gestand er als erstes hochrangiges Mitglied der US-amerikanischen Regierung ein, dass die US-Spionage eine Grenze überschritten habe, betonte aber auch, dass keine Rechte missbraucht worden seien. Er sagte: „In einigen Fällen ist das unangemessen zu weit gegangen.“ Der Präsident ist entschlossen, Klarheit zu schaffen, und führt deshalb eine gründliche Untersuchung durch, damit niemand das Gefühl haben muss, hier finde Missbrauch statt. Ich versichere Ihnen, dass die Rechte unschuldiger Personen in diesem Prozess nicht beeinträchtigt werden. Kerry bestand allerdings darauf, dass die NSA eine Kraft des Guten sei und durch ihre Überwachungsvorgänge viele Leben gerettet worden seien. Er fügte hinzu: „Wir haben es mit einer neuen Welt zu tun, in der Menschen bereit sind, sich selbst in die Luft zu sprengen.“ Es gibt einen radikalen Extremismus in der Welt, der versessen darauf ist, Menschen zu töten, in die Luft zu sprengen und Regierungen anzugreifen. Was wäre also, wenn man in der Lage wäre, das abzufangen und zu stoppen, ehe es passiert? Wir haben tatsächlich Flugzeugabstürze, Anschläge auf Gebäude und die Ermordung von Menschen verhindert, weil wir im Vorfeld von solchen Plänen erfahren haben. Unterdessen werden US-amerikanische Gesetzgeber nach Europa reisen, um die Bedenken gegen die angebliche amerikanische Spionage zu zerstreuen und die Europäer von der Notwendigkeit zu überzeugen, bei den Anti-Terror-Bemühungen weiterhin mit den USA zusammenzuarbeiten, wie der Vorsitzende des Senatsunterausschusses für europäische Angelegenheiten am Donnerstag erklärte. Senator Chris Murphy aus Connecticut sagte, er habe diese Woche mit Vertretern des Europäischen Parlaments und anderen Personen gesprochen und sei besorgt wegen ihrer Drohungen, sich aufgrund der Frustration über die Überwachung durch die National Security Agency nicht mehr an Anti-Terror-Organisationen zu beteiligen. „Es ist sehr wichtig für die nationalen Sicherheitsinteressen der USA, dass die Europäer im Hinblick auf unsere gemeinsamen Anstrengungen gegen den Terrorismus mit an Bord bleiben“, erklärte Murphy, der als Demokrat erstmals im Senat sitzt und als Vorsitzender des Senatsunterausschusses für auswärtige Beziehungen und europäische Angelegenheiten tätig ist, in einem Interview in Washington. Außerdem gehe ich nach Europa, um dort klarzumachen, dass wir in der Terrorbekämpfung weiterhin zusammenarbeiten müssen, ungeachtet ihres Ärgers über die NSA-Programme. Medienberichte, wonach die NSA Millionen von Telefondaten in Europa erfasst hat, haben die Beziehungen zu einigen US-Verbündeten belastet, wenngleich der Leiter des Geheimdienstes diese Woche erklärte, die Berichte seien unzutreffend und basierten auf einem Missverständnis der Metadaten, die von Nato-Verbündeten gesammelt und mit den Vereinigten Staaten ausgetauscht worden seien. Andere Enthüllungen zitierten aus von Snowden weitergegebenen Dokumenten, wonach die NSA das Handy von Bundeskanzlerin Angela Merkel und bis zu 34 weiteren Staatsoberhäuptern weltweit überwacht habe. Der Leiter der nationalen Geheimdienste, James Clapper, verteidigte die Spionage bei Verbündeten als notwendig und erklärte, dies sei auf beiden Seiten üblich. In all dem Tumult sagte Murphy, seine Behörde bereite die Reise des Kongresses vor, die dieses Jahr stattfinden soll, und hoffte, die Delegation werde Mitglieder aus beiden Parteien und Kammern umfassen. Die Namen der anderen teilnehmenden Abgeordneten sollen in den kommenden Tagen veröffentlicht werden. Er sagte, das genaue Reiseroute werde noch ausgearbeitet. Während Murphy betonte, der Zweck der Reise sei die Verbesserung der Beziehungen, sprach er auch davon, dass es einige „ernste Worte“ geben würde. Er sagte, die europäischen Regierungen müssten ihrer Bevölkerung gegenüber ehrlich über die Art von Spionageprogrammen sein, die sie selbst seit Jahren einsetzten. „Zwar können wir unsere Überwachungsprogramme ändern und so die Rechte der Europäer besser schützen, diese müssen sich aber auch mit der Tatsache abfinden, dass wir nicht die einzigen sind, die spionieren“, so Murphy. Währenddessen steht für John Kerry am Wochenende eine Reise in den Nahen Osten und nach Polen an, um sich dort mit dem Groll über die US-amerikanische Strategie in Syrien, Ägypten und Iran sowie die US-amerikanischen Überwachungsaktivitäten auseinanderzusetzen. Eine hartnäckige Verletzung am Sprunggelenk droht den Einsatz von Nicolai Müller im Bundesliga-Auswärtsspiel des FSV Mainz 05 beim FC Augsburg zu verhindern. Mainz bnagt um einen Einsatz von Nicolai Müller. Morgen wird er versuchen, mit der Mannschaft zu trainieren. Bisher konnte er das nur individuell. "Wir werden kurzfristig über seinen Einsatz entscheiden", sagte Trainer Thomas Tuchel. Der 40-Jährige hofft, seinen mit sechs Treffern besten Torschützen dabei zu haben. Denn die Mainzer müssen bereits auf die verletzten Leistungsträger Niki Zimling, Julian Baumgartlinger und Niko Bungert verzichten. Australierin legt Berufung gegen Gefängnisstrafe in Thailand ein Eine 21-jährige Frau aus Sydney, die in Phuket zu 15 Tagen Gefängnis verurteilt wurde, weil sie fälschlicherweise behauptet hatte, von einem Taxifahrer vergewaltigt worden zu sein, hat gegen das Urteil Berufung eingelegt und wurde auf Kaution freigelassen. Stevie Rochelle Bamford wurde zunächst von einem Provinzgericht in Phuket am 15. Juni für schuldig befunden, eine Falschaussage gemacht zu haben, nachdem sie der thailändischen Polizei gegenüber angegeben hatte, ein lokaler Taxifahrer habe sie in den Morgenstunden am Sonntag, dem 10. Juni, vergewaltigt, während zwei andere Männer sie festhielten. Später allerdings zeigten die Aufnahmen einer Videokamera, dass sie sicher in ihr Hotel gelangt war, nachdem sie von ihrem australischen Freund getrennt worden war. Die Polizei in Phuket verhörte Bamford zwei Tage lang, bis sie gestand, sich die Geschichte ausgedacht zu haben. Bis zur Gerichtsverhandlung befand sie sich vor Ort in Polizeigewahrsam. Bamford wurde zu einer 15-tägigen Gefängnisstrafe in einer Haftanstalt mit niedriger Sicherheitsstufe am Rande Phukets verurteilt, statt in einem Gefängnis für erwachsene Frauen. Sie ist die Tochter von Peter Tunks, einem ehemaligen Spieler der australischen Rubgy-Liga, der sich an das Außenministerium in Canberra mit der Bitte um Hilfe für seine Tochter gewandt hat. Tunks erklärte gegenüber dem Sunday Telegraph in Sydney, die ganze Familie sei „extrem besorgt“ über das Wohlergehen seiner Tochter und wollte sie zurück in Australien haben. „Wir machen uns natürlich große Sorgen, aber wir hoffen, dass sie so bald wie möglich wieder zu Hause ist“, sagte Tunks. Bamford hat gegen das Urteil Berufung eingelegt und ist gegen eine Kaution von 50.000 Baht auf freiem Fuß. In australischen Berichten war zu lesen, dass sie in der Zwischenzeit im Ferienort Krabi in Südthailand Urlaub macht. Vonseiten des Gerichts war zu hören, Bamford werde durch einen lokalen Anwalt in Phuket vertreten und sei gewarnt worden, dass die Berufung auch zur Verhängung einer höheren Strafe von bis zu zwei Jahren in einem Gefängnis für Erwachsene führen könne. Allerdings ist es auch möglich, dass Thailand nach der kürzlichen Ermordung der Reisekauffrau Michelle Smith in Phuket bemüht sein könnte, sein angeschlagenes touristisches Image zu verbessern, und es deshalb zu einem Freispruch kommt. ================================================ FILE: official/transformer/test_data/newstest2014.en ================================================ Gutach: Increased safety for pedestrians They are not even 100 metres apart: On Tuesday, the new B 33 pedestrian lights in Dorfparkplatz in Gutach became operational - within view of the existing Town Hall traffic lights. Two sets of lights so close to one another: intentional or just a silly error? Yesterday, Gutacht's Mayor gave a clear answer to this question. "At the time, the Town Hall traffic lights were installed because this was a school route," explained Eckert yesterday. The Kluser lights protect cyclists, as well as those travelling by bus and the residents of Bergle. The system, which officially became operational yesterday, is of importance to the Sulzbachweg/Kirchstrasse junction. We have the museum, two churches, the spa gardens, the bus stop, a doctor's practice and a bank, not to mention the traffic from the 'Grub' residential area. "At times of high road and pedestrian traffic, an additional set of lights were required to ensure safety," said Eckert. This was also confirmed by Peter Arnold from the Offenburg District Office. "According to current measurements, around 12,000 vehicles travel through the town of Gutach on the B33 on a daily basis, of which heavy goods traffic accounts for around ten per cent," emphasised Arnold. Therefore the construction of an additional set of lights was more than necessary: "Here safety comes first, it's that simple," said Arnold. A total of four road safety inspections were carried out and a roundabout was also considered, however, this idea was rejected on account of the narrowness of the Sulzbachweg/Kirchstrasse junctions. According to Arnold, every possible test was carried out prior to the selection of the location for the traffic light posts: "Using a goods vehicle loaded with particularly long tree trunks, we also tested whether such vehicles could access the B 33 from the Sulzbachweg without knocking over the traffic light posts". The traffic light system itself, which cost around EUR 15,000, is the "most modern system that is currently available on the market," explained Arnold. The system is fitted with coloured LEDs, which are bright enough that drivers can easily see the lights, even when the sun is low in the sky. And they are also energy-efficient: The older light systems consume around 100 Watts, with the new ones consuming just eight. There are three sets of lights per direction of travel. Arnold explained the technology used by the new system: It is fitted with two radar sensors. If the pedestrian presses the button at the traffic lights, the top radar sensor checks the traffic status. If the street is clear, the pedestrian obtains a green light immediately, if not, there is a delay of around 15 seconds. An additional radar sensor checks whether the green phase for the pedestrian can be ended. "If a group of people or if disabled persons are crossing the street, the green phase is extended, thus ensuring that everyone gets safely across the street," explained Arnold. Of course, drivers must also play their part and keep their eyes on the road. Yesterday this was not the case: The light had barely turned green for pedestrians when a luxury vehicle sped through on a red light. For more than 30 years, Josef Winkler has been writing from the heart, telling of the hardships of his childhood and youth. The catastrophes of his Catholic village upbringing - the speechlessness, his tendency towards brute force and dulled sexuality, the confinement and lack of joy - all of this has been described many times by the Kaernten-born poet. The Büchner prizewinner is known primarily as a writer of prose, with theatre texts something of a rarity for him. In a collage of prose texts For his performance piece, "Wetterleuchten auf der Zungenspitze" (Summer lightning on the tip of your tongue), which can now be seen in Garage X on Petersplatz, Gerhard Fresacher ,creates a collage of prose texts. The theatre producer has thus combined elements from the autobiographically inspired novel "Der Leibeigene" (1987) [The Bondsman] featuring prose miniatures from "Leichnam, seine Familie belauernd" (2003) [Corpse, stalking his family]. On the predominantly empty stage - with one important requirement: a crumpled sofa, on which cast members allude to copulating and masturbating - the eight-person ensemble work their way through the text material. However, Director Fresacher seems to have little trust in the text. The 70-minute performance glosses over the script with a host of director's additions, well-known from the repertoire of post-dramatic theatrical styles. In particular, the actresses play a major role in the sometimes rather dubious staging. They are manhandled, their heads held under water, tacked to the wall by their evening gowns. Wrapped in cellophane or in girdles, they stumble on dangerously high heels across the set, either delivering monologues at the top of their voices or lying completely silent on the stage. However, the source text makes barely any reference to this intense delivery. The best moments of the evening is when the singing starts - tracks range from Deep Purple to traditional folk songs. Only towards the end does the highly charged performance start to wind down, and we see flashes of Winkler's somewhat absurd sense of humour. A black box in your car? As America's road planners struggle to find the cash to mend a crumbling highway system, many are beginning to see a solution in a little black box that fits neatly by the dashboard of your car. The devices, which track every mile a motorist drives and transmit that information to bureaucrats, are at the center of a controversial attempt in Washington and state planning offices to overhaul the outdated system for funding America's major roads. The usually dull arena of highway planning has suddenly spawned intense debate and colorful alliances. Libertarians have joined environmental groups in lobbying to allow government to use the little boxes to keep track of the miles you drive, and possibly where you drive them - then use the information to draw up a tax bill. The tea party is aghast. The American Civil Liberties Union is deeply concerned, too, raising a variety of privacy issues. And while Congress can't agree on whether to proceed, several states are not waiting. They are exploring how, over the next decade, they can move to a system in which drivers pay per mile of road they roll over. Thousands of motorists have already taken the black boxes, some of which have GPS monitoring, for a test drive. This really is a must for our nation. "It is not a matter of something we might choose to do," said Hasan Ikhrata, executive director of the Southern California Assn. of Governments, which is planning for the state to start tracking miles driven by every California motorist by 2025. There is going to be a change in how we pay these taxes. The technology is there to do it. The push comes as the country's Highway Trust Fund, financed with taxes Americans pay at the gas pump, is broke. Americans don't buy as much gas as they used to. Cars get many more miles to the gallon. The federal tax itself, 18.4 cents per gallon, hasn't gone up in 20 years. Politicians are loath to raise the tax even one penny when gas prices are high. "The gas tax is just not sustainable," said Lee Munnich, a transportation policy expert at the University of Minnesota. His state recently put tracking devices on 500 cars to test out a pay-by-mile system. "This works out as the most logical alternative over the long term," he said. Wonks call it a mileage-based user fee. It is no surprise that the idea appeals to urban liberals, as the taxes could be rigged to change driving patterns in ways that could help reduce congestion and greenhouse gases, for example. California planners are looking to the system as they devise strategies to meet the goals laid out in the state's ambitious global warming laws. But Rep. Bill Shuster (R-Pa.), chairman of the House Transportation Committee, has said he, too, sees it as the most viable long-term alternative. The free marketeers at the Reason Foundation are also fond of having drivers pay per mile. "This is not just a tax going into a black hole," said Adrian Moore, vice president of policy at Reason. People are paying more directly into what they are getting. The movement is also bolstered by two former U.S. Transportation secretaries, who in a 2011 report urged Congress to move in the pay-per-mile direction. The U.S. Senate approved a $90-million pilot project last year that would have involved about 10,000 cars. But the House leadership killed the proposal, acting on concerns of rural lawmakers representing constituents whose daily lives often involve logging lots of miles to get to work or into town. Several states and cities are nonetheless moving ahead on their own. The most eager is Oregon, which is enlisting 5,000 drivers in the country's biggest experiment. Those drivers will soon pay the mileage fees instead of gas taxes to the state. Nevada has already completed a pilot. New York City is looking into one. Illinois is trying it on a limited basis with trucks. And the I-95 Coalition, which includes 17 state transportation departments along the Eastern Seaboard (including Maryland, Pennsylvania, Virginia and Florida), is studying how they could go about implementing the change. The concept is not a universal hit. In Nevada, where about 50 volunteers' cars were equipped with the devices not long ago, drivers were uneasy about the government being able to monitor their every move. "Concerns about Big Brother and those sorts of things were a major problem," said Alauddin Khan, who directs strategic and performance management at the Nevada Department of Transportation. It was not something people wanted. As the trial got underway, the ACLU of Nevada warned on its website: "It would be fairly easy to turn these devices into full-fledged tracking devices." There is no need to build an enormous, unwieldy technological infrastructure that will inevitably be expanded to keep records of individuals' everyday comings and goings. Nevada is among several states now scrambling to find affordable technology that would allow the state to keep track of how many miles a car is being driven, but not exactly where and at what time. If you can do that, Khan said, the public gets more comfortable. The hunt for that technology has led some state agencies to a small California startup called True Mileage. The firm was not originally in the business of helping states tax drivers. It was seeking to break into an emerging market in auto insurance, in which drivers would pay based on their mileage. But the devices it is testing appeal to highway planners because they don't use GPS and deliver a limited amount of information, uploaded periodically by modem. "People will be more willing to do this if you do not track their speed and you do not track their location," said Ryan Morrison, chief executive of True Mileage. There have been some big mistakes in some of these state pilot programs. There are a lot less expensive and less intrusive ways to do this. In Oregon, planners are experimenting with giving drivers different choices. They can choose a device with or without GPS. Or they can choose not to have a device at all, opting instead to pay a flat fee based on the average number of miles driven by all state residents. Other places are hoping to sell the concept to a wary public by having the devices do more, not less. In New York City, transportation officials are seeking to develop a taxing device that would also be equipped to pay parking meter fees, provide "pay-as-you-drive" insurance, and create a pool of real-time speed data from other drivers that motorists could use to avoid traffic. "Motorists would be attracted to participate because of the value of the benefits it offers to them," says a city planning document. Some transportation planners, though, wonder if all the talk about paying by the mile is just a giant distraction. At the Metropolitan Transportation Commission in the San Francisco Bay Area, officials say Congress could very simply deal with the bankrupt Highway Trust Fund by raising gas taxes. An extra one-time or annual levy could be imposed on drivers of hybrids and others whose vehicles don't use much gas, so they pay their fair share. "There is no need for radical surgery when all you need to do is take an aspirin," said Randy Rentschler, the commission's director of legislation and public affairs. If we do this, hundreds of millions of drivers will be concerned about their privacy and a host of other things. Königsfeld: Small team gives a spirited performance The voluntary fire service bravely came through the main autumn test run in spite of a lack of personnel. Only eleven men took part in the exercise. For the training exercise, department commander, Hans Kammerer, chose the Feder premises on Burgberger Strasse. A short-circuit was reported to have occurred there during sawing. Two people were injured by the resulting fire and the spread of smoke, however, one was able to make an emergency call. Two fire fighters equipped with respiratory gear prepared to enter the building following the initial inspection of the situation by Hans Kammerer. After a short time they managed to find the first person and direct them out of the building. The second person had to be carried. This was not so simple as they also had to negotiate a narrow stairwell. The building, a workshop with integrated stabling for two horses, was not easy to secure. There were large quantities of wood and bales of straw stored inside. In addition to this, there were also electrical machines for wood processing. The first attempt to extinguish the fire was made using the tank on the fire engine. Another line was taken from the surface hydrant around 100 metres away. Only three attempts could be made to extinguish the blaze. A hollow-stream nozzle in the building was also used. For Hans Kammerer, the exercise was also a chance to show what can be achieved with just a few available staff. In case of emergency, support is provided by the Königsfeld daytime task force. The Commander expressed his satisfaction following the exercise. Networking between universities and companies is important On a visit to the district of Breisgau-Hochschwarzwald, it was explained to Parliamentary President Guido Wolf in Titisee-Neustadt where the workforce of tomorrow will come from. In the Hochschwarzwald Support Centre, he addressed this important question alongside the executive principals of the vocational colleges and the district grammar school and the chairs of the parents' council. "Education is an important factor for the location," highlighted Claudia Stehle, Director of the Hans Thoma School, which introduced the networked Hochschwarzwald Education Centre Schools Project. During the presentation, Wolf seemed impressed by the educational pilot project. Since 2011, there has been successful collaboration in Wälderstadt between the Support Centre, the District Grammar School and the Vocational School Complex. He also praised the family-friendly approach within the district. "It is important, not only to keep the family life stage in mind, but, on account of demographic change, the period spent providing long-term care and support for relatives as well," explained Wolf. He also stated that an increasing number of employed persons are looking after the long-term care and support of relatives. "Without support from their employer, the resulting burden placed on employees could result in the termination of the employment contract," said Wolf. However, nobody can afford to lose qualified workers," he added. Another, particularly important factor is that of networking between universities and companies. "After all, people who have learned of the merits of the region during their studies often remain within the region, along with their acquired knowledge and skills, which contributes to the strengthening of the region," said the State Parliamentary President, expressing his thorough conviction. For it is only if a sufficient number of educational places can be provided that the need for skilled workers can be covered. In his opinion, the district's advantage as a location is its advantageous location in south-west Germany, in immediate proximity to France and Switzerland. In addition to this, on his train journey from Titisee-Neustadt to Freiburg, he experienced first-hand the efforts already undertaken to develop public transport. "You must continue to be tenacious and make sure that local public transport becomes even better," he explained in the address given to the local politicians in attendance. Music makes for an entertaining afternoon It was 15 years ago that the Kaul family first invited the Dietingen senior citizens for coffee and cake, followed by a snack. Previously, the elderly citizens were hosted in the service station canteen. The coffee afternoon is now held in the St. Josef nursing home. The residents of the home were delighted with the delicious cakes and tarts. Later on, a sausage salad was provided. Silvia Kimmich-Bantle and her father Karl Kimmich entertained those in attendance with popular tunes. The more than 100-year-old natural stone wall, serving as the foremost boundary between the old school yard - which is due to be renovated - and Kirchstrasse, will once again feature on the renovation cost plan for the town of Bräunlingen. In the days before the Kilbig Autumn Folk Festival, when the first renovation work was being carried out at the front of the school yard, a small corner wall with balustrades was installed to stabilise and relieve the static load on the old natural stone wall, which is more than one hundred years old. According to Alexander Misok of the Bräunlingen Municipal Planning and Building Control Authority, the ongoing procedure plans to involve the Regional Memorial Authority in the planning stage and to draw up a renovation concept for the old wall. A cost calculation is to be performed by a team of professionals, which will then be submitted to the Town Council, which will make a decision and determine the ongoing procedure. A decision is expected to be made in the coming year. Following the renovation, plastering and planting of trees in the old internal school yard, within the two wings of the 1912 school, as a subsequent measure the boundary wall, which is in need of refurbishment, must be renovated from the ground up within the foreseeable future. The historic, one hundred-year-old boundary wall between the old school-yard and Kirchstrasse is in need of renovation, primarily as a result of water and frost damage, on account of the lack of drainage, and is leaning forwards. Deep cracks in a number of individual stones testify to the weather damage, however, at present the wall is not in danger of collapse. A secure wall is essential for a school yard that is used by pupils, and this is the purpose of the current fortification work. The school yard renovation was originally planned back in 2008/2009, however, high unplanned expenses meant that the work had to be pushed back. The Regional Memorial Authority will have a major say in the historic school wall renovation, which has even been used for filming. If this authority were to impose requirements, then the town of Bräunlingen would hope to receive subsidies from the monument preservationists. The pupils of the Bräunlingen Primary School, who are now being taught in a well renovated old school building, with a new hall, will soon be able to use the old school yard as well. Özdemir wants jazz training in Stuttgart Cem Özdemir, Federal Chairman of the Green Party, has now engaged in the ongoing discussions regarding the future of the Baden-Wuerttemberg Music Academy. "I do not think it is right to abandon comprehensive training in the Stuttgart Music College," said Özdemir, speaking to the "Stuttgarter Nachrichten". Jazz and classical music belong together at the jazz location of Stuttgart. As such, Özdemir, who is the favourite in Stuttgart for a direct mandate in the parliamentary elections on 22 September, is in disagreement with the Green-Red State Government. On the basis of an expert study, this government is urging the reorganisation of the five music colleges in Baden-Wuerttemberg. In accordance with these plans, the jazz and pop courses, among others, are to be relocated from the Stuttgart Music College to the Mannheim Music College. US borders: "Super tunnel" for drug smuggling discovered On the border between Mexico and the USA, investigators have discovered and shut down a "super tunnel" intended for drug smuggling. As announced by the US Customs Authorities, the pipe between Tijuana and San Diego, measuring more than 500 metres in length, was equipped with electricity, a railway track and a ventilation system. Three suspects were detained in relation to the discovery, with eight tonnes of marijuana and almost 150 kilograms of cocaine seized. According to the details provided, the tunnel had not yet been put into use. "These cartels are stupid if they think that they can dig through under the radar," said the US Attorney for the District of Southern California, Laura Diffy, at a press conference held in front of a warehouse in San Diego, where the end of the tunnel was discovered. Referring to the drug gangs, Duffy assured: "If you continue to build and attempt to use these tunnels, we are determined to make this a big waste of your dirty money". Both the US authorities and the Mexican security forces are engaged in an ongoing battle against the drug cartels. Since 2006, more than 77,000 people have been killed in conjunction with drug crime in Mexico. Built by experts Due to the elaborate configuration of the tunnel, investigators are working on the assumption that it was build by architects and engineers and that the construction took around one year. The railway system was equipped in such a way that electrically powered carts could be used on it. On the Mexican side, the entrance is located in a building located 80 metres from the border. According to the authorities, a ladder runs 20 metres underground to the actual entrance of the tunnel. The tunnel has a cross-section measuring 1.20 metres high and 90 centimetres across. It would thus be suitable to assist illegal immigration into the USA. Two of the suspects were detained in conjunction with the cocaine find. The third, a Mexican, was detained due to the seizure of the marijuana. All three face a maximum penalty of life imprisonment, according to the authorities. Since 2006, eight tunnels of this type have been discovered, the press conference in San Diego continued. However, this was the first time that cocaine was found in such a tunnel construction. Normally cocaine is smuggled in smaller quantities and not through tunnels. This shows the "desperation" of the drug gangs, whose traditional routes have now been cut off, said Bill Sherman of the DEA Drug Squad in San Diego. They will do anything to make it to the USA. No specific details were given regarding those detained, but it is reported that at least one is Mexican They can expect prison terms of up to ten years. 2014 is to be a year of celebration in Geisingen The anniversary celebrations in the town of Geisingen, to mark the 1,250th anniversary of the first documented mention of the town, are drawing closer. When the year comes to an end in just eight weeks, the anniversary year will be upon us. Geisingen and Kirchen-Hausen were first documented together in the year 794. A deed was drafted in Kirchen, in which both towns are mentioned. On 15 March, the anniversary year will be officially launched, and because Geisingen currently has no suitable venues, this launch event will take place in the location where the two towns were first documented 1,250 years ago, in Kirchen-Hausen. As part of the anniversary celebrations, a number of events are planned both in Geisingen and Kirchen-Hausen. Kirchen-Hausen will celebrate the 1,250th anniversary with a celebratory weekend from 18 to 20 July. On the Friday there will be a ceremony, and on the Saturday and Sunday a party will be held at the Kirchtalhalle. The Kirchen-Hausen Kirchenfest festival will also be held on this celebratory weekend. Town Musical Director, Rudolf Barth, has composed a commissioned piece for the town on the occasion of the anniversary, which will be performed on three dates. On 21 June, in conjunction with the Schwarzwaldverein [Black Forest Association] Mid-Summer Festival, on 12 July in the Arena, accompanied by fireworks, and on 13 December as the first concert put on by the Stadtmusik (Town Musical Society) in the new Festival Hall. This venue will be completed and inaugurated in the anniversary year, with the official date set for the last weekend in September, on 27 and 28 September. On the occasion of the Geisingen town anniversary, a new chronicle will also be published. "However, it will not merely be a chronicle of Geisingen itself, but rather a printed work on the Geisingen of today, which now consists of Geisingen, Kirchen-Hausen, Leipferdingen, Aulfingen and Gutmadingen," said Mayor Walter Hengstler. And the Geisingen of today is also celebrating a birthday in 2014, as it was in 1974 that the incorporations to form the current region were completed. The new chronicle is to be presented on 21 or 22 November in the new Festival Hall in Geisingen. However, 2014 is also a year of many anniversaries in other respects. The Narrenzunft Strohglonki (Strohglonki Fool's Guild celebration) begins on 8 February with an evening of traditional customs on the occasion of its 60-year anniversary/ The Harmonie Gutmadingen music association will turn 90 years old and on 29 March will hold a celebratory banquet and then from 1 to 4 May will be celebrating the Bezirksfest [District Music Festival]. The Leipferdingen Nursing Home will turn 40 years old, the Geisingen School has now been at its new location for 50 years and will be celebrating this on 10 May, and the Polyhymnia Leipferdingen music association will turn 150 years old and will be celebrating this as part of the Brunnenfest [Fountain Festival] from 4 to 7 July. The town of Geisingen was first officially documented in the year 764, in a deed of donation, which is now in the possession of the St. Gallen Monastery. The deed was drawn up in Kirchen (Hausen), which at the time was the location of the courthouse. Both communities are thus mentioned in the same deed. One reason for choosing 2014 to celebrate the 1,250-year anniversary in this way, is that it also coincides with the 40th anniversary of the Community Reform (Gemeindereform). Council sets its sights on rail system Should the "Am Hirschen" railway crossing be reconstructed at great cost, in order to increase traffic safety? The Town Councils have decided that the answer is yes. Schiltach will have to contribute up to EUR 220,000 to the project. The Deutsche Bahn hopes to improve the Kinzigtal railway line in the coming year. In particular, safety at railway crossings is to be increased - collisions between trains and other vehicles frequently occur at these across the country. If the municipalities agree to the reconstruction measures, they will be required to contribute one third of the costs, with the remainder divided between Deutsche Bahn and the Federal Government. Schiltach's town master mason, Roland Grießhaber, explained the peculiarities of the "Am Hirschen" railway crossing to the Town Council. At the crossing, the town is planning to increase the height of the mouth of the tunnel to the west of the railway line. Larger vehicles, for example those that transport long logs, would be able to wait there in the event of oncoming traffic, without having to block the railway line. Grießhaber therefore suggested that a required supporting wall be constructed in such a way that the town could in due course widen the adjoining street in order to guarantee the smooth flow of traffic. This was the subject of controversial discussion in the Town Council, as some council members cast doubt over the need to widen the road: Thomas Kipp summarised the perspective of the critics with this statement: "Do we have to hand over so much money on account of so few vehicles?" Mayor Thomas Haas retorted: The "Hirschen" railway crossing is used regularly for the transportation of long logs. Even wood from the "Kuhbach" area is occasionally transported via this route, as the vehicles, which measure 20 metres in length, would not be able to use the route via the Häberles Bridge, as they would not be able to make the turn on the Hauptstrasse. Furthermore, when the Hauptstrasse is blocked, the route would also serve as a bypass for those vehicles that are not permitted to use the tunnel, argued Haas. Given that it is likely that the Kirchberg and Schlossberg tunnel will have to be reconstructed and renovated, as is currently the case in Wolfach, the "Am Hirschen" railway crossing may become of major traffic significance for a longer period of time. The councillors agreed to have an investigation conducted as to what costs the planned widening of the road would incur. Nevertheless, the reconstruction of the railway crossing was consented to by a majority, on the provision that the required supporting wall be built in such a way that the town could, if required, extend the connecting road in the "Bahnhofstraße" direction to around 5.5 metres to accommodate oncoming traffic. The reconstruction of the railway crossing at the Trautwein tannery could, on the other hand, bring with it an entirely different problem with regard to access to the steep "Geroltzhäuser Weg". The Administrative Department had Deutsche Bahn's reconstruction plans investigated by the Breinlinger Engineering Office, as they had doubts as to whether the planned connection of the Geroltzhäuser Weg will be straightforward. The investigation came to the conclusion that it could not be ruled out that the inclination of the road could result in longer vehicles becoming stuck. The town, as the authority responsible for road construction, would then bear responsibility for this. The reconstruction could therefore result in liability disputes. Because both the transportation of wood and turning are both possible as things are, the reconstruction of the railway crossing should not be consented to, argued Haas. At this point, the risk of a train collision with a vehicle positioned on the crossing is considerably lower than at other railway crossings, on account of the fact that there is a midpoint from which there is a good line of sight, directly alongside the stopping point. The trains themselves, coming from the central station, must also be sufficiently slowed down so that there is no threat of collision. According to the councillors, the reconstruction of this railway line was rejected by a majority, as the town of Schiltach would "bear the brunt of the cost" for the problem of vehicles becoming stuck, since the Deutsche Bahn would be able to deny any responsibility following the completion of the construction work. The committee considers the reconstruction of the "Vor Heubach" and 'Vor Kuhbach" railway crossings, for which the crossing agreements have already been reached with Deutsche Bahn, to be unproblematic. ESA makes decision on major space missions: Missions costing billions Distant planets, gravitational waves or black holes - experts from the European Space Agency must now agree on two major projects that are to be launched in the coming years. There were 30 proposals to choose from, five of which are still in the running. Distant worlds. Astronomers have already found more than 1,000 planets near other stars. Whether or not life exists on at least some of these, no-one knows. The choice is a difficult one: Should we search for gravitational waves? Or instead conduct research into the origin of the cosmos? Or search for planets similar to the Earth and thus perhaps discover extraterrestrial life? These are the questions currently being asked by those responsible at the European Space Agency, ESA. For their "Cosmic Vision" programme, they are looking for ideas for two major space projects, which should greatly advance research. The budget for "L-Missions" such as this lies at around one billion Euro. The projects are planned to start in 2028 and 2034. At the beginning of September, the elite in the field of European space research met in Paris to discuss proposals for such missions. 30 ideas were up for debate, of which five have now made it onto the short list. Numerous panels are assessing the proposals, posing questions to the researchers. Over the coming days, a final decision is to be made by the Scientific Programme Committee. In total, four main questions were chosen by the ESA, to which the missions of the "Cosmic Vision" programme, initiated in 2007, are to find the answers. What are the conditions required for the formation of planets and life? The precise processes for the formation of stars from large gas clouds - and thus the formation of the planets that orbit these stars - lie in proverbial darkness. A large infra-red telescope in space could penetrate this darkness. And if a star has planets, under what circumstances can life exist there? In order to pursue this question, the "Cheops" space telescope is to be launched in 2017, with which 500 known planetary systems in proximity to us will be investigated in greater detail. The possibilities are, however, limited - Cheops is a small mission with a budget of 150 million Euro. With larger instruments, astronomers could map planets similar to Earth and even analyse the composition of their atmospheres, and thus search for "biomarkers": gases that serve as an indicator for biological activity. How does the solar system function? This question should also provide information regarding the preconditions for the origins of life. The magnetic activity of a star, the interaction of its magnetic field and the emitted particle radiation play an important role. It is possible to investigate these processes in our solar system, to serve as an example to be applied elsewhere. With the "Solar Orbiter", the ESA has already approved an M-class mission (for which the budget stands at around half a million Euro) to address this matter. The probe is to be launched in 2017 and will closely observe the surface and activity of the sun. Jupiter and its moons are also of great interest to the researchers. They want to find our what role the giant planet has played in the development of the solar system. The ESA is planning that the first of the total of three L-Missions of the "Cosmic Vision" programme will address this subject. The "Juice" (Jupiter Icy Moons Explorer) probe is planned to begin its journey in 2022. Eight years later it will reach Jupiter and will investigate the atmosphere of the planet as well as the icy moons Europa, Callisto and Ganymede. What are the basic physical laws of the Universe? Outer space offers many possibilities for studying substances under extreme conditions and thus examining whether the laws of nature, as known to us, are still valid there. There may also be deviations that could show physicians the path to a new theory, under the umbrella of which all known natural laws could be united. How did the universe come about and what does it consist of? 13.7 billion years ago, our cosmos was created by the Big Bang. Alongside the materials familiar to us, from which stars, planets and life forms such as ourselves are composed, there exists dark matter, the gravitational force of which holds galaxies and galaxy clusters together, and dark energy, the effects of which accelerate the expansion of the universe. Thus far, researchers know neither which physical laws applied in the initial moments after the Big Bang, nor what dark matter and dark energy consist of. With "Euclid", the ESA has already approved an M-mission, planned to commence in 2020. With a special telescope, the probe is to examine the distribution of material in the universe across the entire sky, thus enabling conclusions to be drawn regarding the properties of dark matter and dark energy. Proposals that are in the running... Of the 30 proposals, only two will remain at the end of the selection procedure. The proposal with the best chance of approval as an L-mission, in the opinion of many experts, is "E-Lisa", a demanding concept that aims to prove the existence of gravitational waves. Many physicians perceive this to entail changes in the structure of space-time, which Albert Einstein predicted almost 100 years ago. To date they have never been proved to exist. The scientists behind the project hope that Elisa could achieve this. The mission involves placing a detector, consisting of two or three probes, in outer space. Unlike systems on Earth, it could also prove gravitational waves created during the Big Bang, and thus provide fresh knowledge regarding the origin of the cosmos. Four other proposals are still competing for the second L-mission place: a large X-ray telescope called "Athena", which among other things would research black holes, "Icy Planets", another mission to the outer planets of the solar system, "prism", a mission for the measurement of cosmic background radiation, and the "Exoplanet Finder", which would find and investigate planets similar to Earth. Among others, proposals that have already been ruled out include proposals for bringing samples back from Mars, conducting research on the moon, Venus and asteroids, as well as proposals in the area of solar physics. Snowden ready to "cooperate" with Germany over US surveillance Edward Snowden, the US intelligence whistleblower, has declared that he is willing to travel to Berlin to give evidence to the German parliament if the US National Security Agency and its director Keith Alexander fail to provide answers about its activities. German MP Hans-Christian Ströbele on Thursday met Mr Snowden in Russia, where he has been granted asylum, to discuss him testifying in Germany. A letter from Mr Snowden, presented to the media in Berlin on Friday by the MP, said: "Though the outcome of my efforts has been demonstrably positive, my government continues to treat dissent as defection, and seeks to criminalise political speech with felony charges that provide no defence." However, speaking the truth is not a crime. In the letter, Mr Snowden said he believed the support of the international community could persuade the US government to abandon criminal charges against him. The charges filed by the US justice department include espionage and theft of government property. Hans-Peter Friedrich, German interior minister, told Zeit Online: "If Mr Snowden is ready to speak to German officials, we will find ways to make this possible." Relations between the US and Germany have come under strain following claims that the NSA bugged Chancellor Angela's Merkel's phone. Thomas Oppermann, the MP who heads the parliamentary panel that oversees intelligence, said that if there were an opportunity to hear Mr Snowden as a witness "without bringing him into danger and completely ruining relations with the US," it should be taken. Mr Ströbele, an MP for Germany's Green party, published a picture of himself with Mr Snowden on his Twitter feed. He was accompanied on his visit to Russia by two German journalists. Mr Ströbele said that, according to the former NSA contractor's lawyer, Mr Snowden would not be able to return to Russia if he left. If Mr Snowden testified in Germany he would need assurances that he would be "safe" there, the MP said. Mr Snowden said in his letter that he had faced a "severe and sustained" campaign of persecution that forced him from his home. However he said that he was heartened by the worldwide response to "my act of political expression." Citizens around the world as well as high officials - including in the United States - have judged the revelation of an unaccountable system of pervasive surveillance to be a public service. The letter extends an offer to cooperate with German authorities "when the difficulties of this humanitarian situation have been resolved." Frontier Airlines to charge for carry-on baggage Frontier Airlines plans to charge up to $100 for passengers to store carry-on luggage on board their flight. Frontier Airlines plans to start charging up to $100 for a carry-on bag and $2 for coffee or soda, although its announcement on Wednesday did say that passengers will get to keep the whole can. The new carry-on fee is for bags in the overhead bin, so small bags under the seat will still be free. Frontier said it will charge $25 if the fee is paid in advance, $100 if travelers wait to pay until they're at the gate. Frontier spokeswoman Kate O'Malley said the $100 fee is to get travelers to take care of the charge in advance. "We don't want to charge that," she said. Airlines began charging for the first and second checked bags in 2008. Passengers trying to avoid those fees have been stuffing as much as they can into carry-on baggage stashed in overhead bins, meaning those bins often run out of space. Fees are one way to get passengers to bring less on board. O'Malley said the new charge is not really about raising money. It's about Frontier's most loyal customers making it very clear that finding overhead bin space has become increasingly difficult. Passengers who buy their tickets on the airline's website won't have to pay. That means one passenger in line at a Frontier gate might get to bring a bag on for free, while the next person in line might owe $100 for a similar bag. O'Malley said Frontier's website and check-in procedures are being changed to make sure passengers know about the fee before they get to the gate. Frontier's new carry-on fee won't start until summer, though a date hasn't been set. Passengers often grumble about baggage charges and other fees, but airlines love them. They argue that luggage costs money to handle, and passengers who want the service should pay for it. Many on Wall Street view the addition of baggage fees as a sign that airlines are charging enough money to cover the cost of air travel after years of losses. Most haven't touched carry-on bag fees, though. Spirit Airlines Inc. started the first carry-on fee three years ago, and fellow discounter Allegiant Air later followed. The only other airline with such a fee is Hungary's Wizz Air, said airline consultant Jay Sorensen, who closely tracks add-on fees. He estimated in a December 2011 report that Spirit's carry-on fee brings in $50 million a year. Sorensen, a former executive with Midwest Airlines, flew Spirit recently and wondered what he'd find at the gate as passengers encountered Spirit's unusual carry-on bag fee. "The boarding process was the smoothest I had seen in my airline career," he said. I was expecting to see gnashing of teeth and a fight breaking out at the gate. The plane was full, he said, "and it boarded lickety-split." Frontier is also following Spirit's $2 charge for coffee, tea, soda, or juice. Frontier said passengers who get soda or juice can keep the whole can, and it will give coffee refills for free. It will still give away water. US Airways briefly tried charging for beverages in 2008 but backed down seven months later after passengers complained and no other major airline followed. Frontier's move to charge the carry-on fee if passengers don't buy direct from the airline is its latest effort to steer customers toward its own website. Airlines pay online travel sellers such as Orbitz $10 to $25 for each ticket sold. That has given all airlines an incentive to steer passengers to buy directly from them instead of going through an online travel agency. Frontier has gone the furthest in this area, though. In September it began giving half as many frequent flier miles to customers who bought through an online travel agency. On Wednesday it slashed the mileage award to 25 percent of the miles of the trip. So, a 1,000 mile Frontier trip purchased from an online travel agency would earn 250 miles. It also allows passengers to choose their seat in advance only if they buy directly from the Frontier website. Frontier has a loyal base of customers in its home city of Denver, but its business is shrinking and losing money. Revenue dropped 9 percent and its flying capacity shrank almost 13 percent in the first quarter, according to financial results released Wednesday by corporate parent Republic Airways Holdings Inc. Republic has been trying to fix Frontier's finances as part of selling the airline. Sayings come from the Bible At least 40 women attended the last women's breakfast of the year, in the Evangelical Parish of Bisingen. The theme of the day in the parish hall was "Sayings from the Bible" and "Expressions from the Middle Ages". Zita Köhler, the Chairperson of the Parish Council, agreed to give a talk on Biblical proverbs after breakfast. "Proverbs contain pearls of wisdom, commandments or warnings," she explained. She compared several German sayings with the corresponding Bible verses and explained the meaning. She referred to sayings such as: "Holzauge sei wachsam" (keep your eyes peeled), "wie Schuppen von den Augen fallen" (like scales falling from one's eyes), "ein Auge auf jemand werfen" (to cast an eye on someone), "den Seinen gibt's der Herr im Schlaf" (good things come to some when they sleep) and "seine Hände in Unschuld waschen" (to wash one's hands of something). On several occasions, the speaker asked those listening to guess what proverb they were based on. Expressions from the Middle Ages were addressed by Parish Councillor Christel Dehner: "Aller guten Dinge sind drei" (All good things come in threes), "blau machen" (to skip school/work), "etwas verhauen" (to wallop something). She explained the meaning and origin of the expressions, which she referred to as "bridges to the past". To round off the morning there was a tombola. The prizes were placed, covered, on a table and were humorously paraphrased prior to being presented to the winners. Mayoral candidate Roman Waizenegger was also to be found among the visitors to the joint breakfast. Learning rather than unemployment: Tourism pilot project for the untrained A pilot project for the tourist industry is being launched today in the Mecklenburg lake district. Under the management of the Federal Employment Agency, 49 men and women who are already working within the industry as untrained workers, will be trained as qualified hotel and restaurant staff over the course of three winters. "What's innovative about it is that the six-month courses end with diplomas," said Carmen Wiechert of the Neubrandenburg Employment Agency. There are many benefits: The participants will not be unemployed, the companies receive trained skilled workers, which are in continually increasing demand in hotels and restaurants, and the agency will not have to fund unemployment. Also involved in the project are the Chamber of Industry and Commerce in Neubrandenburg and the German Hotel and Restaurant Association (Deutsche Hotel- und Gaststätte, Dehoga) of Mecklenburg-Western Pomerania. NSA Blames "Internal Error," Not Hackers, For Website Crash The shadowy National Security Agency said late Friday that it was a glitch that brought down its public website for a few hours, not hackers as some claimed online. "NSA.gov was not accessible for several hours tonight because of an internal error that occurred during a scheduled update," the spy agency said in an emailed statement. The issue will be resolved this evening. Claims that the outage was caused by a distributed denial of service [DDoS] attack are not true. Earlier this evening online server trackers noted the NSA's website had been down for at least six hours, and the site continues to be inaccessible for some users. Earlier an NSA spokesperson told ABC News the agency's internal, sensitive network was "not at all" compromised. No classified information is in danger, the spokesperson said. At least one hacktivist group online claimed that they were responsible for bringing down the NSA site with a DDoS attack. DDoS attacks are designed to flood a target website with traffic until the servers are overloaded and the site collapses. The cyber tactic is a relatively unsophisticated one and the attacks are not meant to penetrate the internal network of the target system. The formerly super secretive NSA, once nicknamed No Such Agency, has found itself in very public light, and amid vicious criticism, in past months following a stream of revelations about is vast foreign and domestic surveillance programs - collectively the product of secret NSA files stolen from the agency and leaked by disenchanted former NSA contractor Edward Snowden. Such growing controversy surrounding the agency prompted early speculation that tonight's incident was the result of a targeted cyber operation. In October, the number of jobless fell slightly by 22, to a total of 1,307. The rate of 3.1 per cent is indeed better than the previous year and is also better than in September, "however, we had hoped for more," said Monika Felder-Bauer, acting branch manager of the Employment Agency in Sonthofen. Several companies have thus far reacted cautiously when it comes to hiring. Stating a reason for this, Felder-Bauer said: "We have barely any skilled workers in the fields of skilled crafts and trades, healthcare and geriatric care." Seasonal job offers for staff in hotel and restaurant businesses have been coming in since September. The Winter season within the industry begins in mid-December. The complete background report on this can be found in the "Allgäuer Anzeigeblatt" newspaper dated 31/10/2013 (page 33). Bombardier profit dips as plane deliveries, orders fall Canadian plane and train maker Bombardier Inc reported a 15 percent fall in net profit on Thursday, pressured by fewer aircraft orders and deliveries in the third quarter and contract issues in its train unit. Montreal-based Bombardier also did not release any flight test data for its brand-new CSeries aircraft or offer an update on whether the plane will meet its ambitious schedule of going into commercial service by next September. After the test plane's inaugural flight about a month and a half ago, it has only flown three more times, raising questions over whether the testing phase is on track. Results fell short of forecasts and sent shares sliding more than 8 percent on the Toronto Stock Exchange. Cameron Doerksen, an analyst with National Bank Financial, lowered his rating to "sector perform" from "outperform" on Thursday with the view that the stock has limited upside over the next one or two quarters. "While the weaker aircraft deliveries were mostly anticipated, we are clearly disappointed by the margin performance in transportation," Doerksen said in a client note. We believe that Bombardier will receive new orders for the CSeries as the flight test program progresses. However, if no new orders are announced in the coming months, we suspect that the market will become more skeptical of the program. Bombardier hopes the CSeries aircraft family can catapult it into the low end of a market now dominated by Boeing and Airbus. The first test plane was unveiled in March and took flight for the first time in September after months of delays. But firm orders for the CSeries are moderate so far at 177 as potential buyers wait for flight test results to validate the company's claims about the new jetliner's fuel efficiency and cost savings potential. There are currently 403 total orders and commitments with 15 customers and operators. Chief Executive Officer Pierre Beaudoin was confident Bombardier would meet its 300 firm order target by the time the first jet is put into commercial use. Executives also reassured analysts and media on Thursday the program was progressing according to schedule. "The test plane didn't stay on the ground longer than anticipated," Beaudoin said in a conference call, adding that ground tests and software updates were scheduled during the plane's downtime. Every manufacturer schedules it in a different way. We had decided to do a first flight and to do an update period and that's what we have done. That will happen all through the flight program. The second of five test planes is expected to take flight in the coming weeks, with the remainder following shortly after, the company said. Still, analysts are skeptical the first customer can begin operating a CSeries plane 12 months after its maiden flight. Bombardier said it was evaluating the entry-into-service (EIS) schedule and will provide an update in the next few months. "This slow pace of flight testing - although in line with Bombardier's internal schedule apparently - reinforces our view that entry-into-service will be pushed to Q1/15," said Doerksen. For the third quarter ended September 30, Bombardier's net profit fell to $147 million, or 8 cents per share, from $172 million, or 9 cents per share a year earlier. Adjusted earnings per share were unchanged at 9 cents. Revenue dipped marginally to $4.1 billion from $4.2 billion. Analysts had expected earnings of 10 cents per share and revenue of $4.56 billion, according to Thomson Reuters I/B/E/S. The world's fourth-largest planemaker said it delivered 45 aircraft during the quarter, down from 57 a year earlier. Net orders fell to 26 aircraft, from 83. The backlog in the aerospace division was $32.9 billion as of September 30, unchanged from December 31. "In aerospace, results were in line with our guidance, but the low order intake and overall market conditions were a disappointment," Beaudoin said. Aerospace revenue fell 13 percent to $2 billion. Bombardier, the world's largest trainmaker, said revenue in that division rose nearly 11 percent to $2.1 billion. The order backlog in the transportation unit was $32.6 billion as of September 30, up marginally from December 31. The transportation division's margins were affected by execution issues in a few large contracts. Executives said new guidance would be provided in the fourth quarter. Shares of Bombardier, which also announced that Google Inc Chief Financial Officer Patrick Pichette would join the board, were down 8.5 percent at C$4.83 in mid afternoon trading on Thursday. Brazil's Embraer SA, the world's third-largest commercial planemaker and Bombardier's closest rival, reported a 10 percent fall in quarterly profit on Thursday. USA: Shots fired at Los Angeles Airport On Friday morning (local time) an unknown suspect fired shots at the LAX Airport. While the airport management announced via short messaging service Twitter that the shooter is in custody, the "Los Angeles Times" reported that the man is dead. A member of security staff was also killed. The media also reported that several people injured. US President Barack Obama is being kept informed of the situation, said White House spokesperson Jay Carney. The incident took place in Terminal 3. Eye witnesses reported seeing a shooter with a gun in one of the departure lounges, as was reported by several media. One traveller told the broadcaster CNN about how many people had sought protection in panic. Travellers screamed and children cried. Panic broke out among those waiting, with many hiding behind seats in fear. An employee of the "Los Angeles Times" who was travelling at the time told of how he had heard two shots fired. An employee of security company TSA suffered a gunshot wound to the foot. The scene was "like something out of a movie". The man reported that he was then himself taken to a safety area. The shots were said to have been fired near a security inspection area. Airport building evacuated Television footage revealed how numerous ambulances and police cars arrived at a terminal. One hundred people were brought out of the building to safety. Users on Twitter published photos of a SWAT officer and a weapon lying on the ground. According to a message shared by the airport management via twitter, the incident began at 9.30 am (local time). The access roads were blocked off, which, according to CNN, caused long tailbacks. Except for the landing of arrival aircraft, flight traffic was temporarily suspended, it was reported. However, several planes could be seen taking off on CNN. Terminal 3 serves mainly small US airlines. The Los Angeles LAX airport is one of the largest airports in the USA. Cocaine-addict lawyer who tipped off Mr Big about police investigation is jailed Basharat Ditta, 42, would feed information to crime lord Neil Scarbrough The solicitor feared his secret drug addiction would be exposed Was given a three-year prison sentence at Liverpool Crown Court A top defence lawyer who told a drugs Mr Big about a major police investigation, because he feared his secret drug addiction would be exposed, has been jailed for three years. Basharat Ditta, 42, would feed sensitive intelligence to crime lord Neil Scarbrough about inquiries into his drug trafficking activities after he became compromised by his cocaine habit. The solicitor, who was nicknamed "Bash" and hailed by criminals as a "top brief," was arrested at his home in 2011 following a police surveillance operation into Scarborough, who he had represented in a previous narcotics trial. Officers spotted Sarborough, 32, dropping off three bags of cocaine at the lawyer's home in Blackburn, Lancashire, while he was out at a Law Society dinner with colleagues. Inquiries revealed Ditta was a "regular user" of the Class A drug after tests found traces of cocaine in his hair, on his wallet and on his credit cards. Over an eight month period between January and August 2011 he sought to illicitly obtain information on the arrests of two men on behalf of Scarborough as well as one of his associates. All four suspects were being watched by police at the time as part of a major investigation into a heroin and cocaine racket operating across Lancashire, Cumbria, Merseyside, Berkshire and West Yorkshire. They and 32 other men were later jailed after police seized heroin and cocaine worth £1.5million along with more than £200,000 in cash during a series of raids. Ditta, 42, fed information to criminals because of fears his cocaine addiction would be exposed Today at Liverpool Crown Court Ditta, who works at law firm Forbes Solicitors, based in Blackburn, was facing disgrace after being found guilty of two counts of perverting the course of justice following a three week trial at Liverpool Crown Court. He admitted cocaine possession at an earlier hearing. The lawyer's downfall came after police investigating Scarborough discovered he had been in regular phone contact with Ditta in February 2011. Two detectives trailed the suspect and spotted him arriving at Ditta's house in and was seen to place the drugs which had a purity of 60 per cent under the lawyer's bins in a black golf glove. Soon after the drop off, Scarborough was in regular phone contact with Ditta who had been out at the dinner at the Blackburn Rovers football stadium, Ewood Park. The lawyer returned home to discover the drugs and there were nine communications between them. The court heard Ditta was a "regular user" of cocaine after tests found traces of the Class A drug in his hair, wallet and on his credit cards Ditta was arrested later but denied using cocaine and and said he had been speaking to the suspected dealer because he was his client and argued their discussions were subject to "legal privilege." During his arrest Ditta picked up his wallet and tried to remove several credit cards but they were all seized and a hair sample was taken fom him. In a police interview he said he ran an office at his home address as well as work place and clients would call at his house on legal business. But the court heard he would call major players in the drugs supply chain, some of whom he had previously represented, after key arrests to tell them what detectives knew about them. Prosecuting, Anne Whyte said: "If anyone should know not to the break the law, it is a criminal solicitor." Mr Ditta is accused of abusing his position as a criminal solicitor, having become too involved with specific clients. The relationship we are talking about is not simply a drug dealer, but a drug dealer providing his own lawyer with drugs. Some of his communications will undoubtedly have been legitimate ones because he was their lawyer. But this went way beyond the ordinary confines of a lawyer-client relationship. He thwarted the police's investigation as much as possible to enable them to continue in their criminal activities. Mr Ditta was not honouring his profession, but dishonouring it. He got too close to certain clients, in particular Scarborough, and he allowed his independence to be compromised. Ditta denied wrongdoing and claimed: "If I was a corrupt lawyer, which I am not, and I wanted to feed information to Mr Scarborough, I would not wait 15 hours, I would do it immediately." But after the hearing Supt Lee Halstead from Lancashire Police said: "Mr Ditta turned from criminal solicitor to a criminal himself the moment he started obtaining drugs from organised criminals." His addiction to cocaine left him hopelessly compromised and vulnerable to the motives of leading members of organised crime groups who tasked him to obtain valuable information regarding police investigations. Solicitors should uphold the highest standards of integrity and should instil trust and confidence in the public. Mr Ditta has betrayed this trust and attempted to hide behind the veneer of his profession. Lancashire's Serious and Organised Crime Unit led the investigation into Mr Ditta which has also seen him convicted of three counts of possession of cocaine and now perverting the course of justice, demonstrating our commitment to bringing criminals to justice. Let this case serve as a warning to criminals that no one is beyond the reach of the law. We will find you and put you before the courts. Scarborough himself was jailed for 14 years after pleading guilty to conspiracy to supply heroin, cocaine and cannabis. Thirty five other men involved in the racket were jailed for a total of 153 years for drugs offences. On his website Ditta gave a question and answer session about himself in which he says his fantasy job would be a lawyer representing clients on Death Row in America, his ultimate dinner guest as being Mohammed Ali and inequality as his motivation for work. Revolutionary Sacred Music Factory To close the celebrations on the occasion of its 160th anniversary, the Liederkranz Dunningen (Dunningen Amateur Choir, or Glee Club, if you like) will perform Franz Schubert's "Deutsche Messe" (German Mass) to accompany two church services. Following the great success of the musical, "Rock my Life", which enthused audiences this past Spring, the Liederkranz will bless two church services with the performance of Franz Schubert's Deutsche Messe, to close its anniversary year celebrations. On Saturday 26 October, this exceptional mass will be heard from 7.00 p.m. during the evening mass in the St. Marinuskirche Dunningen and on Sunday 27 October, from 10.15, at the service in the St. Johannes Baptistkirche in Lackendorf. The so-called 'German Mass', with the original title "Gesänge zur Feier des heiliges Opfers der Messe" (Songs to celebrate the holy sacrifice of the mass), D 872, is a spiritual work by composer Franz Schubert, dating from 1826, at at the time it was written was considered almost revolutionary. Patron Johan Philipp Neumann has in mind for the mass to be performed as part of the church services. Under the directorship of Hermann Schneider, the choir will be accompanied by the wind ensemble of the Frohsinn Tennenbronn Music Society, and by Noemi Lokodi on the organ. Haslach: Scepticism visibly gives way to confidence The 2015 Parish Council elections will bring about fundamental change, for example in the Haslach Pastoral Care Unit (Seelsorgeeinheit Haslach, SE). There will then only be one joint Parish Council for all six parishes. In a joint meeting on Saturday, the committees from Haslach, Hofstetten, Mühlenbach, Fischerbach, Steinach and Welschensteinach prepared for the changes. This is because there are no further changes to be made to the fundamental decisions of the diocese and it is up to the Parish Councils to implement these in as satisfactory a manner possible. During the course of the day one thing became particularly clear: the scepticism towards the new system is reluctantly yet visibly giving way to confidence. The extremely constructive discussions between the six committees and the full-time members of the pastoral care team addressed topics ranging from perceptions and expectations regarding the 2015 reforms, to concrete proposals regarding the future composition and size of the Parish Council. Regional Dean Georg Schmitt explained the newly drawn-up guidelines for pastoral care units in the arch-diocese of Freiburg with the help of a presentation. According to the guidelines, the SE Haslach, as a church community, will be a corporation under public law, which shall assume the rights and obligations of the six individual church communities. There will then only be one joint Parish Council and a Foundation Council, in which the rector will be represented by virtue of his office. From each parish, at least two elected members are to be represented, with so-called church community teams set up on-site in the six parishes. In future their task will be to promote church life on a local basis. Regarding the issue of the finances of the individual parishes, the need for extensive discussion became evident. The reforms plan for the accumulated assets in the parishes to be retained for a specified purpose. Accounts payable, on the other hand, will be passed over to the "church community" as a whole. In particular, planned major investments, the debts from which thus affect all parishes, were cause for great concern. "In the past, investments were only made in projects that could be managed by the individual parishes by themselves," said Haslach's Parish Council Chairman Bruno Prinzbach. Barbar Ritter, Chair of the Committee in the Schutterwald-Neuried pastoral care unit, has practical experience of a joint committee for five parishes. In 2006 she set herself the task, "Become one, remain five" and came to realise that the task is really not that simple. The Committees of the Haslach pastoral care unit set out to answer questions regarding the future composition and size of the joint Parish Council, and the practical work of the church community teams. The specific details will be confirmed in subsequent meetings and decided in an additional joint meeting of all six committees in the coming spring. At the end, Parish Counsellor Michael Schöner from Steinach presented the new logo of the pastoral care unit, which was agreed on by a clear majority. Electricity to become more expensive in Pfullendorf The citizens of Pfullendorf will have to adjust to high electricity costs. As Managing Director of the municipal energy company, Jörg-Arne Bias, confirmed to the SÜDKURIER, families of four in Pfullendorf will be on the receiving end of a price increase of EUR 70 to 90 per year. One major reason for the upcoming price increase is the rise of the so-called EEC Levy from 5.277 to 6.3 Cents per kilowatt hour. This levy will be reset by the four operators of the large power grids, in October of each year. They estimate the additional costs they will incur as a result of the "energy turnaround", which they will be able to recover by means of a levy on the price of electricity. The Pfullendorf municipal energy company forms the last link in this chain. In its projections, the supervisory council of the energy company even assumed a levy higher than that reported by Jörg-Arne Bias. The specific figures must now be calculated before the municipal energy cmpany can inform its customers of the precise price increase next week. "We are working on the assumption of an increase of 1 cent plus x," said Bias, with the figure likely to be closer to 2 cents. Traffic lights permanently red: observe waiting time Sometimes a traffic light simply never turns green. The contact loop on the road does not react, or the light itself is defective. What should you do - drive through on red? If an affected person has waited for a sufficiently long period of time at a red light, and provided the crossing is clear, they can drive on, explained Stuttgart-based lawyer Ralf Becker in "Motorrad" (Motorcycle) magazine. The waiting time must, however, be "appropriate", which can be interpreted differently on a case-to-case basis. Becker advises that you wait at least five minutes before a fault with the traffic lights can be assumed. Anyone who drives on in spite of a red light must, however, be aware that he/she will be fully liable for any resulting accident. Anyone who waits for less than five minutes has, under certain circumstances, not waited long enough, warned Becker, referring to a ruling of the Hamm Higher Regional Court. In the case in question, a driver ignored a light that was permanently red after around three minutes and and was held responsible for negligently jumping a red light. The traffic lights were actually not defective, but rather turned green just a few minutes later. He was spared a driving ban on account of the special circumstances - but was not spared a fine. Town Council delighted with solid budget Every time discussion in Town Council meetings turns to the budget, Mayor Ralph Gerster has good reason to smile. The municipality coffers in Herdwangen-Schönach are well stocked and the administration has been debt-free since 2005. In this sense, this the 2012 budgetary year, can also be recorded as a complete success. This became clear upon presentation of the annual accounts for 2012. As Andrea Rothmund explained, the administrative budget came in at more than EUR one million higher than originally planned, at around 7.6 million Euro. The administrative budget surplus, at around EUR 1.8 million, also stood at around EUR one million above projections. The surplus is primarily due to higher trade tax income and the local authorities' contribution towards income tax. The capital budget also stood well above the projected values. Instead of the projected EUR 1.5 million Euro, the value for last year was EUR 2.5 million. "This is mainly due to the higher contribution from the administrative budget," said Rothmund. Because fewer investments were made in the 2012 budgetary year than planned, the reserves also came in higher. In total, they managed to increase the general contingency reserves by around EUR 2.1 million, to a total of EUR 4.9 million. Mayor Ralph Gerster thanked Rothmund and its team for the good work. "A job like this is not something you achieve overnight," said Gerster in praise of the annual financial statement. He and the Town Councillors are clearly delighted with the good figures. It may sound like a paradox, but it is precisely these good figures that could soon work out expensive for the citizens. In the past, a good financial situation meant that the local authorities could do away with high municipal rates. However, according to Gerster, from time to time this has resulted in subsidies being reduced by the state. There are prerequisites that must be fulfilled in order to receive these subsidies from various compensation elements. Among other requirements, the towns and municipalities applying for the subsidies must levy certain municipal rates. "We have to address the subject of municipal rates, as there are investments to be made in the coming years for which we could do with subsidies," commented Gerster regarding this matter. Nagold: Hugo Wermter - a choir member for 60 years Having been a singer for 60 years, Hubert Wermter's story with the Cäcilia Male Choral Society is almost twice as long as that of the Autumn Festival, during which he was ceremonially honoured. As per usual, Hubert Wermter stood on the stage in the colours of his male voice choir. Even after 60 years he still finds great pleasure from singing with the choir, which has achieved much more than popularity during this period. Wermter has also been active within the association, serving as a member of the committee for 28 years, among other roles. For his commitment and loyalty to the organisation, he has also received several awards: Jörg Kohr, Lay Pastor acting on behalf of the Cäcilian Association of Rottenburg-Stuttgart, presented him with an Association Certificate and a letter of commendation signed by Bishop Gebhard Fürst - the choir also serves as a church choir. His choir colleagues presented him with a German Choral Association certificate and an engraved pewter plate. Aside from honouring Hugo, the 31st Autumn Festival progressed as usual: Alongside the Betra Male Voice Choir, the Salzstetten Choral Club, the Baisingen Choral Division and the Local Music Society, the Vollmaringen singers delivered a colourful blend of different choral and song styles, which entertained the 400 or so visitors. The Vollmaringen Male Voice Choir got things running with atmospheric songs such as "Im Weinparadies" and "Lustig, ihr Brüder". They had also prepared a short serenade as a tribute to their honorary singer Hubert Wermter - Wolfgang Amadeus Mozart's "Bundeslied". The Betra Male Voice Choir also sang classic choral pieces such as "Jägerwerben" by Julius Wengert, "Weit, weit weg" by Hubert Goisern and the folk song "Wann du durchgehst durchs Tal". With its mixed choir and its ladies' ensemble - the "Impulschor" (Impulse Choir), the Salzstetten Choral Club ensured that the female quota was fulfilled at the festival. The mixed choir carried listeners away to foreign lands with the Neapolitan folksongs "Santa Lucia" and "Eviva Espana" by Antos Gus, while the "Impulschor" also drew on foreign languages: "Liberatio" and "Hey Jude" were included on their programme. The Choral Division of the Baisingen Sports Club returned to its home ground with "Was isch der Schwob?" by Hans Süssmuth and Robert Pappert's "Bierlied", while the Vollmaringen Music Society provided the crowning musical conclusion. For children, there was a small auxiliary programme - "Oma Hanne" (Grandma Hanne), a.k.a Hannelore Stollsteimer, performed a 'Kasperl' theater (similar to Punch and Judy) and read some stories, which kept the children entertained throughout the afternoon. Children's dreams come true Over the next few days, the nursery schools and day care centres in Zollernalb district will be receiving mail. The Schwarzwälder Bote (Black Forest Herald), in collaboration with Bauhaus and the Sparkasse Zollernalb Savings Bank, would like to support the institutions in granting their construction and renovation wishes. Does the nursery school need a new sand box? All nurseries, day care centres and créches from across the entire Zollernalb district can become involved in the campaign. If they have a construction or renovation request for their institution, they can register this with the Schwarzwälder Bote. Get creative with your children and surprise the judging panel of the Kindergarten-Baustelle (Nursery School-Construction Site) campaign. A panel consisting of representatives from the Schwarzwälder Bote, Bauhaus and Sparkasse Zollernalb will select three wishes from those submitted. What are the requirements for participation? It must be possible to fulfil the wish using construction materials to a maximum value of EUR 2,000 and on one (campaign) day. Furthermore, the winner must provide a number of hard-working building helpers. What is the deal with the campaign day and the helpers? With the support of the Sparkasse Zollernalb, Bauhaus will be providing the materials. They will be delivered to the nursery schools on an agreed day and should there be assembled/made use of directly by the helpers. Helpers can include parents, grandparents, friends, organisations and, of course, the teachers and children themselves. Kenyan press outraged at controversial media law "It is a frightening place, and it is valid to ask: what is there to prevent Parliament from simply sweeping away the independence of the judiciary tomorrow?" the paper said, challenging the bill as unconstitutional. "This law is draconian and very punitive and we reject it," said Cyrus Kamau, managing director for Capital Group - home to CapitalFM, one of Kenya's most respected independent radio stations and news websites. He said the new media tribunal "will always be biased because it's an extension of the government," and that restrictions on content and advertising would damage Kenya's place in the global economy. "I hope the president will listen to us, and we appeal to him to reject this bill and return it to the MPs," he said. According to The Star newspaper, the new bill will effectively hand the government "a stranglehold over the media," while The Standard said democracy and free speech in Kenya had been "dealt a major blow" and lambasted the bill as "draconian." The passing of the bill comes amid a string of measures to reinforce national security in the wake of the September's attack by Islamist gunmen on the Westgate shopping mall. Kenya media drew the ire of authorities by broadcasting security camera footage of troops who were dispatched to the scene of the attack purportedly robbing the upmarket mall. Police chief David Kimaiyo reacted by summoning two journalists and a media executive for questioning, although the summons was retracted following a media outcry. Under the new bill, media houses can be fined up to 20 million Kenyan shillings and individual journalists up to one million with the additional risk of being "de-listed," or barred from receiving official press accreditation. The tribunal also has the power to seize the property of an offender if a fine is not paid. According to the Daily Nation, "even one fine is enough to cripple most FM stations." It also said the measures could have a devastating effect on what it described as Kenya's "lively blogosphere." By silencing the media, politicians know they can do whatever they like with impunity. "No one will ever know," wrote Nation journalist Mutuma Mathiu, describing the Kenyan media as a key source of checks and balances in public life. "Left to themselves, politicians would bankrupt the country and take us back to hunting and gathering," he wrote. Kenyan lawmakers have been the target of public anger in the past. In May they voted to overturn cuts ordered by the national salaries commission and reinstate their hefty salaries of around 532,000 shillings a month tax-free - ranked among the highest in the world. Bad-Dürrheim: A dream comes true for the FC The official inaugural ceremony for the astro-turf sports field did not wane in significance for the town and the football club, in spite of the cold weather and rain. Everyone had hoped for more pleasant conditions for the ceremony last Saturday, however the weather gods chose not to cooperate. So anyone who came without an umbrella, or for whatever reason could not hold onto one, drew the short straw. This was the case for the musicians who accompanied the ceremony, as well as for a number of speakers. Thus, FC Chairman Albrecht Schlenker, who spoke of the fulfilment of a dream, also got fairly wet. His thanks went first and foremost to Mayor Walter Klumpp, who was heavily involved in the realisation of the project, the Town Council, the companies involved and club members who played a part. Particular mention went out to Lothar Held, Paul Weizenegger, Heiner Gail and Peter Graf. The spry pensioners laid 400 square metres of flagging for the new paths. This remarkable voluntary commitment was also honoured by Member of the State Parliament, Karl Rombach. Further words of greeting were issued to the town Sports Commissioner, Hubert Baier, the District Chairperson of the Southern Baden Football Association, Kuno Kayan, and Friedrich Knorr from the planning office, who announced a donation to the club's youth division. Mayor Klumpp recalled that weather-related influences in the Spring and Autumn had repeatedly afflicted the original sports field, to such an extent that it could not be played on. It was way back 15 years ago that solutions to the problem were first considered, when the construction of a third pitch on the football club site or at the secondary school on Salinensee Lake were considered. Both ideas were rejected. Six years ago, thoughts turned to laying an astro-turf pitch, which was generally viewed as the perfect solution. Specific plans were drawn up two years ago, when the FC inherited the Schabelstube in leasehold, promised a contribution of EUR 100,000 for the construction of the pitch and the state approved a subsidy of EUR 104,000. In October 2012, the Town Council decided to cover the remaining EUR 356,000 of the total cost of EUR 560,000, summarised Klumpp. Work began on the 68 x 108 metre astro-turf pitch on 4 June. During the construction phase, which lasted over three months, 3,000 cubic metres of earth were removed, of which half was used for the laying of a dirt bike track. Union and SPD have continued their coalition negotiations, addressing the topics of internal affairs and justice. To this end, the competent working group met this morning. Among other issues, topics discussed included direct democracy, the bribery of MPs and the Federal Police. During the morning, the Migration and Integration working group also sought to continue its discussions. Among the issues to be addressed was that of dual nationality, in which regard both sides have opposing ideas. The SPD would like to put an end to the pressure placed on immigrant children to decide on one nationality - the Union rejects the notion of a dual passport. Regarding the subject of traffic, which was not on the agenda for this Friday, the SPD substantiated its opposition to a car toll charge promoted by the CSU. A toll road sticker would amount to a "flat rate fee for frequent drivers and would thus be environmentally counterproductive," explained the SPD negotiator for issues relating to traffic, Florian Pronold, in a letter to his parliamentary group. There would be a threat of diverted traffic on country roads, which are already accident hotspots. The introduction of a toll for cars would also only be a first step, in Pronold's eyes. "There is the risk that the compensation for Germans would be abolished at a later point in time," he said. Dieter Thomas Kuhn in Stuttgart: The "singing mountain wave" on the open-air stage Stuttgart - "When will it be summer again?" was actually not the question on people's lips at the Killesberg Open-Air Theatre on Friday evening. It genuinely was a tropical evening in Stuttgart. This therefore provided the ideal conditions for pop star, Dieter Thomas Kuhn, and his band. Click through the image gallery of the performance by the "singing mountain wave". Car driver seriously injured in accident A 37-year-old car driver from Aachen was seriously injured in an accident on Thursday evening. According to information from the police, a 41-year-old from Müsch was travelling in his car on the Kempener bypass in the direction of Grefrath, at around 9.15 p.m.. As he went to turn right onto St. Töniser Straße he failed to see the 37-year-old's oncoming vehicle. The vehicles collided. The Aachen resident suffered serious injuries and had to be taken to the hospital for treatment. Konstanz: Road block following accident on the Schänzle roundabout According to police, the accident occurred when a 51-year-old driver of a Swiss Seat Ibiza was travelling out of town in the left lane of the two-lane Reichenaustrasse. Shortly before the Schänzle roundabout he noticed that was in the left-turn lane going in the direction of Stromeyersdorfstraße and moved across to the right lane. In so doing, he collided with the BMW of a 23-year-old Konstanz resident, travelling in that lane. The VW Passat of a 19-year-old driver travelling behind the BMW was also damaged. In total, EUR 15,000 of material damage was caused, announced the police. The road had to be blocked off while the accident was being investigated, the statement continued. Vienna Airport abolishes passenger call-outs Mr. Max Maier, please make your way to Gate 24. In future, announcements such as this will no longer happen at Vienna International Airport. The majority of loudspeaker announcements will cease - thus considerably reducing the noise level. The goal of this adjustment is to create a more relaxing atmosphere. As airport spokesperson Peter Kleeman announced to Radio Vienna that in adjusting the approach towards announcements, Vienna Airport is following an international trend. Among others, the airports in Kopenhagen, Frankfurt and Dubai have already done away with the noisy call-outs. By doing away with these announcements - on average around 200 personal call-outs come through the loudspeakers per day - the atmosphere in the airport should be calmer in future. "Experience has also shown that these individual announcements are relatively seldom taken notice of, and at the same time, all other information regarding changes to departure gates or flight times are somewhat lost among them," said Kleeman while chatting to the radio broadcaster. Highland Games in Kaltenhof Alongside brake van pulling with tractors, there will also be a second contest at the agricultural autumn festival at Kaltenhof from 6 to 8 September. On Saturday 7 September, the Highland Games will start at 1:30 p.m. While they are of course a Scottish tradition, they have been given a touch of Swabian colour at the Kaltenhof event grounds. Teams and individual competitors will be pitted against one another in the disciplines of tossing the caber, horseshoe tossing and bucket carrying. The caber is four and a half metres long and weighs 25 to 30 kilometres. "It isn't about the distance," explains organiser Peter Saile. The log must be thrown vertically, somersault once and then finish lying straight. This scores maximum points. In tossing the horseshoe, it all comes down to accuracy. Horseshoes are thrown onto a peg from a distance of eight metres. Participants must then prove their skill and strength by carrying a bucket of water 50 metres. Time is recorded and water quantity measured in a vat at the end. Two members of each "clan" or team can then take part in the individual competition. The winners of the team and individual contests receive prizes. Teams can practice from 10:00 a.m. Suitable clothing is desirable - for example competitors can wear kilts. However, Swabian traditional clothing is also permitted. The judging panel will also award a few bonus points for "outfits". Registration is open until a few hours prior to the beginning of the competition. With the Scottish-Swabian Highland Games and the tractor pulling contest, which will begin half an hour beforehand, there promises to be a great deal of action at the event grounds on Saturday. In the evening, fans of brass band music will be in for a treat of their own. At 19:00, the "biraböhmische" (a play on words alluding to the regions pear trees, Bohemia, and perhaps their love of beer as well!) wind music group from Schömberg, provide a great evening of entertainment. The band plays lively polkas and marches. However, their repertoire also includes emotive waltzes and a full big band sound. Heinz Koch from Weilen unter den Rinnen will also be there, better known as the 'singing inn keeper and black sausage baron". In the past, he has appeared at the Christmas market in Dornhan and the Narrenzunft (Fool's Guild event). On Sunday, the Leinstetten Music Society will entertain audiences with a morning session, with the Böffingen Farmer's Band as guests from 2:00 p.m., and then the "Oldies" will bring the celebrations to a close. The celebrations will get under way on Friday, with the "Stoppelacker" (Stubble Field) party featuring DJ Ralf. Other items in the itinerary on Saturday and Sunday include the vintage car and tractor meet and exhibitions by companies on the topic of agriculture and forestry. Further attractions on Sunday are the corn maze, the craft market and sheep shearing. Specially for children, there is a petting zoo, "straw bouncy castle", tractor driving (under supervision) and tractor surfing. The event is organised by the community hall association, the ski club and the "Zündkapsele" (blasting caps) tractor enthusiasts. An overview of milk and egg alternatives Vegan nutrition promotes vegetable alternatives to eggs, milk and dairy products. Mashed tofu with plant cream, for example, serves as a substitute for quark cheese. The Vegetarian Association will provide further examples on World Vegan Day on 1 November. On the occasion of World vegan Day on 1 November, the Vegetarian Association of Germany will propose a host of vegan alternatives: Pure plant margarine is a good alternative to butter, while yoghurt can be replaced by soya yoghurt. Soya, oat, almond or rice milk can be used in place of milk. Plant whipping cream can replace traditional whipping cream. There are also plant alternatives to eggs. Half a mashed, ripe banana, for example, can replace an egg as a binding agent in a cake. 50 grams of apple sauce or a tablespoon of ground linseed plus three tablespoons of water are also suitable. A dough becomes fluffy by replacing egg with a mixture of one tablespoon of baking powder, one tablespoon of cornflour and three tablespoons of mineral water, for example. 50 grams of soya yoghurt or silken tofu can also fulfil this purpose. According to information from the Vegetarian Association, around 800,000 Germans currently have a vegan diet, i.e. a 100% vegetable diet. Sleepless in New York On the way to their host families in Weymouth, Massachusetts, the pupils of the Schwarzwald Grammar School got to know the American city of New York. After an eight-hour flight, they headed straight for Brooklyn Bridge, via which the heart of the city, Manhattan, can be reached on foot. From here there is a fascinating view of the world-famous skyline, which is particularly impressive in the evening light. Due to the time difference, the pupils had been on the go for almost 24 hours, however, true to the slogan, "the city never sleeps", the day was rounded off with a trip to Times Square. In spite of a shutdown, they were able to visit the Statue of Liberty on the second day, and climb the statue on foot. They then moved on to the Financial District, via Wall Street, to visit the 9/11 memorial. On the third day, the pupils were able to take in an overview of the fascinating city from the viewing platform of the Empire State Building, enjoying the views from a height of 373 metres. They then made their way through the hustle and bustle of the New York streets, via the Rockerfeller Center, to Central Park, which provided the perfect opportunity to rest a while in the Autumn sun. Following a short flight from New York to Boston, the pupils have now arrived with their host families and are experiencing the school day at Weymouth High School. Once again this year, on Saint Hubert's day, a Hubert mass will be celebrated in the Parish of St. Marien on Hülsbergstrasse. St. Hubert was, according to legend, a truly ruthless hunter, who converted following a vision and was later appointed Bishop of Lüttich. Hunting horn group "Jagdreiter Westfalen", under the directorship of Brigitte Kluth, played old, traditional French melodies on parforce horns (natural horns in the key of E flat). The wind players wear riding clothes, as they provide musical accompaniment mainly for riders, horses and packs of hounds on drag hunts. The solemn mass is to take place on Sunday 3 November at 11.30 a.m. The newly designed Opschlag stands out with a new café. One that invites you to linger a while and to come again. One that wants to get its name out there. According to dictionaries, déjà vu is defined as a psychological phenomenon, which expresses itself in the feeling of having already experienced or seen a new situation. In the case of a visit to the café of the same name at the Opschlag in Kleve County, with a view of the Rhein-Waal University, it doesn't always have to remain a pure déjà vu feeling. Ultimately, this is precisely the aim of the café with the wonderful name: to make an actual visit and something that can be repeated on a recurring basis, not just theoretically, but tangibly. Because it is fun and simply beautiful. A glance into the internal workings at Opschlag 8 gives the onlooker a positive feeling right from the outset. With its ultra-modern yet cosy café ambience, it looks like a place designed to make you feel good. The team here, with business founders, Mirjam van der Stelt and Daniel Büttner at the helm, spoils guests with a wide range of coffees and cocktails. In addition to this, there are delicious cakes or freshly baked baguettes, filled to order. The owners, both 33 years old, have already made a name for themselves as restaurateurs prior to opening the chic café on the Opschlag: They previously managed the "Art Lounge" in Kranenburg. By moving to Kleve on the Opschlag, the friendly café lovers hope to reach a wider audience. Not least through university customers. "We don't have a specific target group," emphasises Daniel Büttner. In actual fact, here the pair hope to appeal as much to young students as they do to senior citizens and all age brackets. Speaking of café lovers... The two friendly owners are motivated by their love of coffee. They themselves enjoy the fragrant, hot brew in a variet of formats. Espresso fan Daniel Büttner is more of an espresso fan, while Mirjam van der Stelt is the cappuccino drinker. "And a baguette with it - that's my thing," she revealed to the NRZ. There have already been two events held in the brightly lit café. Or perhaps more accurately, one. This is because the Hafenfest took place more outside than in - Café Déjà Vu did not benefit from it. However, there was also the Ringelnatz evening. The two 33-year-olds found it "beautiful, successful and funny". But it was not for everyone. Perhaps this is why Daniel Büttner is not a vocal fan of evening events: "You just cannot please everyone". And with an event, I am always only appealing to those who have expressed an interest in the special event. For this reason, events will always be an exception to the rule for us. "We want to cause as little disruption as possible to normal business". That is to say: Déjà Vu also stands for reliability. This is with regard to the quality of the products that are offered here, as well as the team and the fantastic setting on the Opschlag in Kleve. The street that is fast becoming a 'restaurant mile'. This is to the delight of many Kleve residents, guests from near and far and the students who are discovering the 'restaurant mile', and with it the Café Déjà Vu, for themselves. Anke Gellert-Helpenstein A day of thanks with the MGV (Male Choral Society) in Dinker This year the "Friedrich Wilhelm Dinker" MGV issued an invitation to its 165th anniversary celebration, which 52 guests, active singers and their wives were happy to accept. In the clubhouse at the "Witteborg" Inn in Dinker, all those present enjoyed the friendly get-together in the name of music. Traditionally, the anniversary celebration is also always the fitting occasion to bestow honours. This time around, secretary Rolf Wagener was delighted to receive the special "Singer of the Year" award. "Not only have you kept countless records for us, but you have also done so much running around for us, and for this we offer our sincere thanks," said Choir Chairman Erich Schlotmann. The awards for participation in the performances and choir rehearsals by means of the presentation of "activity posies", this year went to Choir Director Dieter Schulze, with 44 attendance marks, followed by Honorary Chairman Horst Pier-Ribbert, the Chairman himself, and last year's "Singer of the Year" Friedrich Winkler, each having attended 42 times. Fifth place went to Artur Brückner, responsible for organising music copies. The Board of Directors gave special thanks to the team managed by innkeeper, Ange Pier-Ribbert, which once again delighted those present with a top class menu, and to Gerda Pier-Ribbert for the table decorations. The "Friedrich-Wilhelm" MGV meets for its regular choir rehearsals in the clubhouse every Tuesday at 19:45. "New voices that love to sing are more than welcome any time," said Schlotmann. UN hails new goals to tackle poverty The United Nations is to start work immediately on a new set of goals to replace the millennium development goals, which were put place 12 years ago to tackle global poverty. Australian diplomats played a key role in pushing for "sustainable development goals" to replace the MDGs, which expire in 2015, ahead of the UN sustainable development summit that began in Rio de Janeiro overnight. They were included in the final draft of the document, which will be endorsed by world leaders including Ms Gillard during the summit. UN Secretary-General Ban Ki-moon told the summit overnight that now is the time to "rise above national interests." "I am pleased that member states have agreed to launch and take ownership of a process to establish universal sustainable development goals - SDGs," he said. These SDGs will build on our advances under the millennium development goals, and they will be an integral part of the post-2015 development framework. I will spare no effort to implement the mandate given to me by member states to realise our vision of sustainable development goals that build on the success of the MDGs. Even though the SG Achim/Baden has gone four match days without victory, a positive mood is still prevailing within the top flight handball team. Trainer Tomasz Malmon will not let there be any doubt of this fact. Everyone is still fully motivated for the task at hand. That said, I do hope that we finally start winning again. "I no longer remember how a victory like that tastes," said Malmon, anticipating success for his team at VfL Fredenbeck II. Even though the third-tier reserves from Fredenbeck are no't exactly in the best form at the moment, Malmon has issued a warning in advance I trained many of the players myself in the A-Youth. Consequently, they will be particularly motivated playing against their former coach. "In addition, we will have to wait and see whether reinforcements from the first team will be there," explained the SG coach. In any case, if they are to finally get back on the winning track, Malmon's team will have to improve on recent performances. There have been major problems, primarily in terms of covering and counter attacking. The team's eye for the goal must be considerably improved. Therefore, I hope that my players have finally managed to clear their heads during the short break. Mozambique security concerns mount as powerful personalities clash With a statue of Samora Machel, Mozambique's founding president, staring down on them, thousands of people gathered in central Maputo to chant peace slogans in a rare public demonstration. "We want peace back; we want stability," said Vanessa de Sousa, chief executive of an investment company. Fearful about the future of her country, she swapped her corporate attire for a T-shirt emblazoned with "we demand security" in Portuguese as she joined the crowds in the capital's Independence Square on Thursday. For two weeks, there have been almost daily reports of clashes between government forces and Renamo, some of the worst skirmishes since a peace deal more than 20 years ago. Renamo was once a notorious rebel movement, initially backed by white-ruled Rhodesia and then South Africa's apartheid government as part of efforts to destabilise the country's independent government. After a 1992 peace deal, it became an opposition party. Analysts believe the country is unlikely to slide back into full-blown conflict, but recent events have unnerved foreign investors and locals. The stakes are high for the fast-growing economy as the discovery of huge offshore gas reserves and coal deposits in the northwest could bring in more than $50bn of investment over the next few next years from companies including Rio Tinto, Vale of Brazil, Eni of Italy and Anadarko of the US. The ruling Frelimo party, the dominant political force since 1975, and Renamo blame each other for the tension. Renamo says the government initiated the latest clashes by launching an attack on its members in Sofala province, traditionally a Renamo stronghold, on October 17. Assaults on the former rebels then escalated as government forces attacked Renamo bases and attempted to kill Afonso Dhlakama, the group's leader, Fernando Mazanga, Renamo's spokesman, told the Financial Times. The government blames Renamo for triggering the clashes, accusing it of attacking soldiers. President Armando Guebuza has sought to play down concerns about instability. Mr Guebuza told AFP, the French news agency, on Wednesday that Mr Dhlakama saw himself as a "loser" who wanted to use "whatever remains of his forces to try to prove that he can impose on the government his own decisions." Both Frelimo and Renamo insist they want to avoid war. But concerns have grown after Mr Mazanga was quoted as saying Renamo was abandoning the 1992 peace accord. He told the FT that he meant the agreement was no longer being respected by Frelimo. "Our vision is to come back to negotiations, but with seriousness," Mr Mazanga said. Previous talks between the parties have done little to ease tensions fuelled by a series of clashes this year. "It's two big men (Guebuza and Dhlakama) butting heads together," said Joseph Hanlon, a lecturer at the Open University and Mozambique expert. Neither of them are good negotiators and neither of them are prepared to make the kind of concessions that are necessary. Renamo, which has been pushing for electoral reforms, had already said that it would boycott municipal elections due in November. Presidential and parliamentary polls are scheduled for next year. Some commentators have interpreted its use of force as the attempt of an ailing movement to win concessions and financial spoils from the government. Renamo's share of the vote has been declining since 1992, while a newer party, the Democratic Movement of Mozambique (MDM) which was formed by a former Renamo member, is expected to improve its showing at the elections. Mr Mazanga says Mr Guebuza - who is due to step down when his second term ends next year - wants to destroy the country's democracy. "He does not want multi-party democracy, he does not want transparent elections he does not want peace because he does not want to leave the presidency," Mr Mazanga said. It is unclear how much capacity Renamo has, but it has carried out disruptive hit-and-run attacks on police stations and vehicles on a key north-south highway. Most of the skirmishes have taken place in Sofala province, which is several hundred kilometres north of Maputo, but hosts Beira, the port that miners, including Rio Tinto and Vale, rely on to export coal. In June, Rio suspended its use of the railway for about a week after Renamo threatened to attack the line. Mr Mazanga was coy when asked about whether Renamo would repeat this threat. Renamo wanted to "warn the international community that things were not going well in Mozambique," Mr Mazanga said. The instability has added to frustrations with the government, says Fernando Lima, head of Mediacoop, an independent media company, with many people also concerned about corruption, the slow pace of development and a recent spate of kidnappings. "People think the ones responsible for the future of the country are the government and the president, and he should be the one to find solutions for the problems," he says. Omar Sultuane, a demonstrator, said people just wanted stability. "No one cares about Renamo and Frelimo, they just want peace again, they want free access to the roads," he said. Children should be taught myths and legends as "models for a way of life", author says. Tales of Thor could show "brute strength is no match for subtle trickery," while the Arthurian legends reveal the importance of having a dream. Saying many of the myths would be "far too wild, far too scandalous and in some cases far too filthy to be taught in schools," Crossley-Holland advocated a "careful selection" of age-appropriate works. "I find it wonderful that in America, myth and folklore already has a part in education," he said. I have been advocating it as a plan for twenty years. He added authors and teachers being "overtly didactic" is a "total switch-off" for children, with messages being "subliminated" in enjoyable stories. Crossley-Holland, who has translated Beowulf from Anglo-Saxon as well as writing the Penguin Book of Norse Myths and British Folk Tales, said: "You may well have intentions but you do better to keep them well out of sight." Perhaps the big difference between an adult author writing for an adult and an adult author writing for a child is the necessity for some sense of hope. Not that everything has to be simplified or come to a happy ending, but that there is an innate sense of good and evil. And that must be subliminated; revealed through a story rather than stated. The old basis of showing not telling. Hansjakob back in Freihof once again 100 years ago, Heinrich Hansjakob moved into his retirement home in Haslach, on Sunday his final years in the "Freihof" were brought to life. The large audience was inspired by the extremely amusing role play. From his arrival, to his being conferred with honorary citizenship and his death, Alois Kraftzcyk, the scriptwriter and actor portraying Hansjakob, has written an entertaining play, which received great acclaim under the directorship of Cornelia Volk. Marcus Zagermann, serving as narrator, guided the audience through the ten different scenes, explained circumstances and provided links explaining leaps from his youth to the time when he was approaching retirement. On 22 October 1913, Hansjakob returned home to his childhood paradise, to his Freihof. It was there that the role-play began, with Alois Krafczyk shining once again in his famous role as the town's great son. True to style, he travelled with a two-horse carriage drawn by "Schwarzwälder Füchsen" (Black Forest Chestnut Horses) owned by Erich Becherer from Mühlenbach. Not only was he received with great applause from the audience, but was also welcomed by his sister Philippine. Billy Sum-Hermann managed unbelievably well to place herself in the role of the sister and brought the character to life amazingly well, in terms of both her expressions and gestures. Between the individual scenes, the Mühlenbacher Bauernkapelle played appropriately selected musical pieces, thus rounding off the performance. The honour of presenting the title of honorary citizen went to Haslach's Mayor, Heinz Winkler, who, together with a section of the Town Council, made an appearance representing the Mayor of Hüttich from back in Hansjakob's day. The "Dreikönig" singers then made their own appearance, leading Hansjakob to exclaim: "Oh how beautiful, this brings childhood memories of my own time in a Dreikönig group back to life". With their song, "O Jesulein", they delighted the audience in the Freihof, as did the "Storchentagskinder" with their loud cries of "Heraus, Heraus" . In his day, Hansjakob expressed his criticism of the institutional church, as well as his concerns regarding the excesses in the rural economy, the consequences of industrialisation and the effects of the war. He found his place of rest on his native soil, behind his mausoleum on the Brand near Hofstetten. The role-play ended with the words "A restless spirit finally found rest and returned home forever". The performance received great applause and many words of praise from the audience. Basketball: Hopes are growing for the Neckar Riesen (Neckar Giants). The chances of the relegated Ludwigsburg Budesliga basketball players remaining in the league have improved. This is because there is to be a wild card procedure, and the Neckar Riesen are now up against one applicant fewer. The Hamburg Towers basketball project is declining to make an application for a possible stand-in place. "We will not participate in the wild card process," said former national team player Pascal Roller, who has been putting together the concept for a professional club in the Hansa town since 2012. However, there was no sigh of relief to be heard from Ludwigsburg. "We are not concerning ourselves with the wild card process until it is certain that Düsseldorf is not receiving a licence," said boss of the Neckar Riesen Alexander Reil, speaking to our paper. Newly promoted Düsseldorf Baskets have until 23 May to submit documents to the arbitration panel and prove their financial fitness for the Bundesliga. However, the Rhineland team have already been refused the licence twice. The Court of Arbitration is the authority of last resort. Haigerloch: Focus on the Abendmahlskirche As the town's contribution to the 150th anniversary of the Protestant Church in Haigerloch, the town's Office of Culture and Tourism is to dedicate the last of this year's public thematic tours on Sunday 27 October to the Abendsmahlskirche (Church of the Holy Communion). Following a visit to the Nuclear Bunker Museum, the focus will turn to Haigerloch in the period after 1850, when Haigerloch came under Prussian rule. The crowning glory will be a visit to the Abendmahlskirche. There the participants of the tour will be told the story of the construction of the church and will gain insight into the development of the Protestant congregation, in what is a Catholic area through and through. Last but not least, while in the church eyes will also turn to the last supper painting, painted by Friedrich Schüz with the support of Walter Kröll and Georg Halbritter. It is a faithful reproduction of the famous work Leonardo da Vinci in Milan. The meeting point for the one and a half hour tour is the Nuclear Bunder Museum, at 3:00 p.m. Tickets are available from the ticket office at the Nuclear Bunker Museum. The Haigerloch Town Tourist Office is available for questions and to provide you with information. Snowden may make further statements in Russia The former US intelligence expert, Edward Snowden, may make further statements regarding the US espionage scandal from his Russian asylum. Representatives of the Federal Prosecutor could either submit questions in writing or meet the 30-year-old in person in Russia. This was reported by the Interfax Agency with reference to groups aware of the situation, which were not named in greater detail. Such matters are to be clarified at an intergovernmental level, it was stated. A departure of Snowden from Russia is virtually impossible. "If this were to happen, he would lose his status as a refugee," said the Agency, quoting their source. Because Germany is an ally of the USA, Snowden would be at risk of deportation if he were to travel there, the source continued. Endurance pays dividends Six teams battled to become champion at the club tennis tournament. In the end, it was the endurance of the Maier/Bronner team that decided the final match. The tennis division of the Sportfreunde Rohrdorf (Rohrdorf Sports Fans) enjoyed perfect weather for the tournament for local clubs and enthusiasts. The focus of the tournament was on the fun of playing tennis. Five matches were scheduled for each team, with every team playing one match against all the others. The matches were doubles matches with a long set up to nine points, or a maximum duration of 45 minutes. Anja Schlichter managed the tournament The organisation of the tournament was placed in the trusty hands of Anja Schlichter, who was supported by Carmen Müller and Inga Kronemeyer. After the first three matches and a lunch break with pasta, the tournament moved into the crucial phase. The favourites, Andre Maier/Matthias Bronner, were tied with Michael Klippel and Sadmin Osmicic (both teams from the SG Rohrweiler), meaning that the last two games had to produce a victor. At the awards ceremony, Carmen Müller finally had the pleasure of presenting the Challenge Cup to Andre Maier and Matthias Bronner, who had shown the greatest staying power on the final leg. Second place was taken by the Michael Klippel / Sadmin Osmicic partnership. Bronze went to Rainer and Bernd Maier of the Asphaltriecher team. In the late afternoon sun, accompanied by coffee and cake, the tournament drew to a successful close. On the last weekend in August, the Vogtsbauernhof Black Forest Open Air Museum in Gutach near Hornberg will once again be firmly in the hands of children. Traditionally, the museum welcomes visitors on a Saturday and Sunday, this year on on 24 and 25 August, to a colourful party for children and families as part of the summer holiday programme, with numerous participation activities and events. "On both days, adults and children alike can learn various traditional handicrafts," said the press release. Whether producing soap, turning candles, felting or making silk, there is a suitable activity whatever your age. The children will receive help from regional artisans, present from 11.00 a.m. until 5:00 p.m. Activities will also be taking place in the museum workshop. The young guests will be able to demonstrate their manual skills building cuckoo pipes, water wheels or spinning tops. The host of old games, such as wheelbarrow racing or walking on stilts, promises plenty of fun. Here speed and coordination are the order of the day. For any miniature detectives, the open air museum will be offering a mystery tour through the museum on Saturday and Sunday, at midday and 2.00 p.m. respectively. On a tour of the premises, the children will have to work out which stories are true and which have been made up. In addition, visitors will have the special opportunity to get to know the open air museum on a carriage journey drawn by Black Forest Chestnut horses. It is not just horses that can be found and admired on the grounds, but many other animals such as sheep, goats, cows and chickens as well. On the Sunday the children will also be able to enjoy the clown, Otsch, who will be doing pranks with the museum guests from 11.00 a.m. Meanwhile, a cosy and magical alternative will be provided by Hermann Büttner. The story-teller will be taking the younger guests to the wonderful world of fairytale at 11.00 a.m., 1:00 p.m. and 3:00 p.m. The traditional children's dance group from Gutach will also be performing at 11:30 a.m. Furthermore, on both event days, from 11.00 a.m. until 5.00 p.m., numerous artisans such as the broom maker, the sewer, the spinner, the weaver and the baker will be letting visitors look over their shoulders. So, visitors to the open air museum can expect a varied holiday programme right through to the end of the summer holidays in Baden-Wuerttemberg. In a small town in New Zealand, Burt Munro is considered a lovable oddball, all because he resolved to compete in a race in America with his 1920 motorbike. In spite of his heart defect, Burt could not be deterred from pursuing his dream. With his savings, a few donations and a mortgage on his old workshop, he set off to Los Angeles by ship. The film will be followed by coffee, tea and cake. Piercing beep disturbs residents Rhenus Midgard has also invested highly in land They stockpile the coal that arrives on ships. At the same time, the company also has other irons in the fire at the location. Besides coal imports, Rhenus Midgard is also active in the field of wind park logistics, among other ventures. The coals shimmer black in the storage yard in front of the embankment. Here two huge blue stacker and reclaimer machines distribute or load the coals as required. With each movement of the handling machines, a shrill warning noise rings out over the site. "The signals are for the purpose of security and are legally prescribed," said Matthias Schrell, Managing Director of Rhenus Midgard in Wilhelmshaven. Unfortunately, in the event of unfavourable wind, they can be heard from far away - and as a result there have already been a number of complaints from people from the north of the town. The 40-year-old said that he is taking the complaints very seriously and has therefore been in touch with those affected. In close consultation with the authorities, we are now in a position to make the warning signals quieter by means of the implementation of technical measures. In future he will also seek open dialogue with neighbours. For Matthias Schrell has some further plans at the location. With the construction of the Lower Saxony Bridge, Rhenus Midgard is continuing to focus on coal exports for power stations and is one of the major powers in this sector in Europe. Thanks to the mooring basin to the front of the terminal, sunken to a depth of 18.5 metres, it has for some time now been possible to unload Capesize bulk carriers here. "In terms of handling, this year we hope to break the 3 million tonne mark," said Schrell. Alongside the local Eon power plant, the imported coals also go to power plants inland. When the GDF-Suez plant is added to the network, around 5 million tonnes of coal imports per year will be realistic. The three ship unloaders on the bridge and the second transport belt could see this rise to 10 million. Bavaria's basketball players optimistic in spite of first defeat. Even their first defeat in the Euroleague could not curtail the huge optimism of the FC Bayern München Basketballers. "No-one can stop us believing that we can win, even against the best team in Europe over the last two years," assessed Bayern coach Svetislav Pesic following the unfortunate 83:88 (39:47) defeat to title defenders Olympiakos Piräus on Thursday evening. We have delivered a message: Basketball also exists in Munich! In their first three appearances in the European top flight, the Munich team put in a good performance for long periods, but in the crucial phases were not sufficiently focussed. Initially the guests managed to turn a 15-point deficit into a lead, with 13 minutes to go, before Piräus was able to turn the game around once again. "We fought back incredibly well against the two-time Euroleague champions, but then once again made careless mistakes. We are proud of our performance, but we want to win every game. Malcolm Delaney and Nihad Djedovic were the most successful strikers for the Munich team, who had celebrated clear wins against the Italian Series champions Montepaschi Siena, and the Polish title-holders, Zielona Góra, in their first two games. Ben Greenman: The Tenth Anniversary of the New York Comedy Festival: The New Yorker One could argue that New York City is the birthplace of standup comedy in America: nearly a hundred years ago, the vaudevillian Frank Fay, who served as the master of ceremonies at the Palace Theatre, on Broadway, started telling jokes directly to the crowd, in a conversational manner. Fay's innovation has been extended through the years, most recently by the New York Comedy Festival. Created and overseen by Caroline Hirsch, the founder of the standup institution Carolines, the festival celebrates its tenth anniversary this year, with more than sixty shows at small clubs and large theatres. "Most of these headliners appeared at Carolines, and went on to greater success, to the point where they're too big to play a club," Hirsch said. We built this festival as a way of continuing to work with them. This year's event includes appearances by Wanda Sykes, Kathy Griffin, and Bill Maher, as well as "Stand Up for Heroes," an annual music-and-comedy benefit for military veterans, at Madison Square Garden, featuring, among others, Bruce Springsteen, Jon Stewart, Roger Waters, and Bill Cosby. As the festival has expanded, so has the world of comedy. Several of the comedians participating in this year's festival came up through nontraditional channels, such as shows on smaller networks, like Comedy Central, FX, and Spike. Nick Kroll rose to prominence on a deep-cable sitcom (FXX's gleefully raunchy fantasy-football-themed "The League") and now has his own Comedy Central sketch show. Jenny Slate has been a cast member on both "Saturday Night Live" and "Parks and Recreation," though she is best known for her viral video series "Marcel the Shell with Shoes On." Both Kroll and Slate, as well as other young comedians with distinctive voices (the surreally pessimistic Anthony Jeselnik, the wry, racially focussed W. Kamau Bell), are products of the decentralized world of American comedy. One of the festival's biggest draws will be an interview: David Steinberg talking to Larry David. Steinberg started as a standup comedian but has become an accomplished television and film director, as well as an unofficial comedy historian. From 2005 to 2007, he hosted a show on TV Land called "Sit Down Comedy with David Steinberg." The meeting takes place at Town Hall, in the center of Manhattan. "The city is definitely in the comedy DNA of all of Larry's work," Steinberg said. He was telling me that, when he's here, sometimes he'll walk down an alley between two buildings and think to himself, Hey, if I lose all my money, maybe I'll live here. Iran satisfied with the nuclear negotiations process Iran has expressed satisfaction with the negotiation process, one week before the next nuclear meeting with the five UN veto powers and Germany. "After many years, we have now reached an agreement with the International Nuclear Energy Authorities to clear up the differences from past years," wrote Foreign Minister Mohammed Dschawad Sarif on his Facebook page. It will without doubt be a long path, but the chief nuclear negotiator is satisfied with the negotiation process and is also optimistic that both sides will come to a solution in the end. Drama in Uruguay: Boys kill playmate with machetes Two children have confessed to the murder of an 11-year-old in Uruguay. The two boys, aged 14 and 12, had invited their victim to go bird hunting with them. On Tuesday, armed with machetes and knives, they stabbed the 11-year-old to death and threw the body into a well, reported the "El País" newspaper on Thursday. They then went and played football in front of their homes in a working class district. The body was found the following night in the village of Cerro Pelado, 15 kilometres to the north of the exclusive beach resort of Punta del Este. A five year-old half-sister of the younger offender, who they took with them, was to make a statement as an alibi, stating that she was sexually assaulted by the boy. However, when the girl described the progression of events to the police without mentioning an attack against herself, the two boys confessed to the pre-meditated murder of the 11-year-old. The older of the pair cited a rivalry on the football field as the motive. He was provisionally taken to a psychiatric young offenders institute. Pimp must go to prison The District Court of Constance has condemned a 33-year-old man from St. Georgen to three and a half years in prison for exploitative human trafficking, pimping, issuing threats and grievous bodily harm. The former German soldier who, following two tours in Afghanistan, had worked as a doorman, made a confession within the context of a plea-bargaining procedure. According to the confession, on five occasions he got to know women via Internet or telephone contacts, who he then sent out onto the streets against their will after a few weeks. He broke any resistance by means of violence and the issuing of threats. He kept the income from women, some of whom worked for him for years. He prevented the women from making contact with the outside world by confiscating their mobile phones and SIM cards. Together with an accomplice, who procured the women, he brought them to various brothels in the south-west. There he had them monitored to some extent, in order to control their income. Appearing before the court, the accused initially claimed that he was suffering from severe trauma after colleagues serving alongside him in Afghanistan had lost their lives in an explosion. Once a psychiatric expert had cast considerable doubt on him suffering from any psychiatric condition, and thus on his limited culpability, the 33-year-old made a full confession. The court did not have to question any more of the female victims. As an official from the Criminal Investigation Department reported, following the first conviction achieved using telephone surveillance measures, at least four further cases of exploitative human trafficking could be identified. The intercepted conversations were characterised by a high level of aggression. In subsequent hearings, the victims confirmed their ordeal. A further witness, whereby one of the woman had suffered blue bruises all over her body, is yet to make a statement. This is a case of a "completely broken personality", that views the violence and exploitation in this field as normal. Yesterday the accused expressed regret for his behaviour. "I have removed myself from these circles and hope to lead a completely normal life following my imprisonment," he stated. Oil extends drop toward $96 a barrel The price of oil continued to fall on Friday as concerns over high supplies offset a report showing China's power-hungry manufacturing sector is strengthening. Benchmark U.S. crude for December delivery was down 14 cents at $96.24 a barrel by late morning in Europe in electronic trading on the New York Mercantile Exchange. The contract fell 39 cents on Thursday, leaving it down 5.8 percent for the month of October. Ample supplies of crude have weighed on the price in recent weeks. The Energy Department said Wednesday that U.S. supplies increased 4.1 million barrels last week. Over five weeks, supplies have risen by more than 25 million barrels. But a suggestion of stronger demand came Friday from two reports on Chinese manufacturing that showed an uptick in activity. That suggests China's economic recovery could continue to strengthen after growth rebounded to 7.8 percent in the third quarter from a two-decade low in the previous quarter. Brent crude, a benchmark for international crude also used by U.S. refineries, fell 26 cents to $108.58 a barrel on the ICE exchange in London. Court blocks ruling on NYPD stop-and-frisk policy A federal appeals court on Thursday blocked a judge's order requiring changes to the New York Police Department's stop-and-frisk program and removed the judge from the case. The 2nd U.S. Circuit Court of Appeals said the decisions of Judge Shira Scheindlin will be stayed pending the outcome of an appeal by the city. The judge had ruled in August the city violated the Constitution in the way it carried out its program of stopping and questioning people. The city appealed her findings and her remedial orders, including a decision to assign a monitor to help the police department changes its policy and training program associated with it. The appeals court heard arguments Tuesday on the requested stay. The appeals court said the judge needed to be removed from the case because she ran afoul of the code of conduct for U.S. judges by compromising the necessity for a judge to avoid the appearance of partiality in part because of a series of media interviews and public statements responding publicly to criticism of the court. The judge had ruled that police officers violated the civil rights of tens of thousands of people by wrongly targeting black and Hispanic men with its stop-and-frisk program. She appointed an outside monitor to oversee major changes, including reforms in policies, training and supervision, and she ordered a pilot program to test body-worn cameras in some precincts where most stops occur. In August, New York City agreed to end the practice of storing the names and addresses of people whose cases are dismissed after a police stop. An oral argument on the city's appeal is scheduled for sometime after March 14, 2014. The stop-and-frisk tactic has been criticized by a number of civil rights advocates. Stop-and-frisk has been around for decades in some form, but recorded stops increased dramatically under the administration of independent Mayor Michael Bloomberg to an all-time high in 2011 of 684,330, mostly of black and Hispanic men. A lawsuit was filed in 2004 by four men, all minorities, and became a class action case. Supporters of changes to the NYPD's stop-and-frisk program say the changes will end unfair practices, will mold a more trusted and effective police force and can affect how other police departments use the policy. Opponents say the changes would lower police morale but not crime, waste money and not solve a broader problem of a police force under pressure after shrinking by thousands of officers during the last decade. The judge noted she wasn't putting an end to the stop-and-frisk practice, which is constitutional, but was reforming the way the NYPD implemented its stops. On the happiness of dreaming camels Happiness is an oasis that only dreaming camels manage to reach It was with this piece of Bedouin wisdom that the first ever chairman Wolfgang Henne described the history and fascination behind the "Helping Hands" society. Saturday evening saw the celebration of the tenth birthday of the organisation, which can already look back on impressive results. Founding Chairman Henne reported in depth on the work of the organisation. In 2004, he visited the Cheijk-Zajed Hospital in Nouakchott in Mauritania for the first time. As a result, an important collaboration was developed and the gynaecologist, Hanne, has performed countless operations on several journeys to the location. During the speech, images from the trips were shown on a large screen, in order to give the guests at the anniversary event an insight into the initiatives mentioned. The organisation's desert vehicle was also shown. It is a former federal border protection vehicle. Rainer Prewo, the former Lord Mayor of Nagold, made the suggestion of equipping this vehicle with a photovoltaic system and, according to Henne, he is now planning to assume an advisory role within the organisation. In 2008, the Schleeh carpentry company from Baiersbronn built the hospital station in Socogim, a poor district on the edge of the Capital, in the record time of less than one week - free of charge. Henne also mentioned a new mother and child hospital in Nouakchott This is particularly interesting at a time when Nagold is set to do away with its maternity clinic. You learn a great deal working as a doctor in Africa, said Henne, for example that you should slow down to avoid burn-out. Due to the political unrest in the country, it has not been possible to make as many journeys as planned, but for this reason, many local doctors have come to Germany, to sit in on lectures on a variety of topics. In addition, containers with materials are regularly sent to Africa, for example in March of this year when medical devices, medicines, bandaging material, hospital beds and spectacles were sent. Co-initiator Hans-Joachim Fuchtel himself provided plenty of local colour, telling of Mercedes vehicles in Mauritania converted into mobile goat stalls and sharing the experiences of the Stammheim musicians, who traditionally support the organisation on their trips to Mauritania. He identified his personal motivation as being his work in the area of auditing as a young member of parliament. When it became clear to him how much money is wasted, he decided to help the Africans with controlling of their budget by the people. Fuchtel also emphasised that a global economy requires global human kindness. The fact that Africa lies closer than many think should by no means be forgotten. Africa is not at all that far from Gran Canaria. Coulson used phone hacking to verify tip Former News of the World editor Andy Coulson allegedly used "phone hacking, surveillance and confrontation" in an attempt to confirm a bogus tip about an affair involving then-home secretary Charles Clarke. Prosecutor Andrew Edis QC told the Old Bailey that the News of the World heard a false rumour in May 2005 that Clarke was seeing his "attractive special adviser," Hannah Pawlby. The newspaper tasked private investigator Glenn Mulcaire with hacking Pawlby's voicemails and "door-stepped" her, but Coulson also called and left her voicemails, the court heard. "The prosecution suggests that Mr Coulson, who is now the editor of the NotW, he is not the man who stands outside people's houses hoping to catch them out, he is the man who likes to put the story to people to see what they will say," Mr Edis said. He said the NotW used three ways to investigate stories: phone hacking, surveillance, and confrontation. The editor is personally involved in the third. Obviously he knows about the second, surveillance, he must do. What about the first? Does he know about phone hacking? He says he doesn't, we say "Oh yes, he did". Rumours about an affair involving Clarke were first picked up by the NotW's features desk when a source who was sexually interested in Ms Pawlby was told: "Don't bother wasting your time, she's with Charles." A tape of voicemails taken from her phone on at least three occasions was seized from Mulcaire's home in August 2006. Investigators also found entries on the private investigator's computer which had Ms Pawlby and her sister as "Projects." During the period she was being investigated, Ms Pawlby's grandparents received anonymous calls asking for information about her, Mr Edis said. Meanwhile, former chief reporter Neville Thurlbeck and former reporter James Weatherup oversaw surveillance of Ms Pawlby's movements. Leaving her a voicemail on June 18 2005, Coulson told her: "I've got a story that we're planning to run tomorrow that I really would like to speak to Charles about." Mr Edis said Coulson's involvement in the story followed the same pattern as with other important men, such as former home secretary David Blunkett. The jury heard on Thursday that Coulson confronted Mr Blunkett over an affair with a married woman while he was himself seeing co-defendant Rebekah Brooks, who was married at the time. Coulson and Brooks deny conspiring with others to hack phones between October 3 2000 and August 9 2006. Mulcaire, Thurlbeck and Weatherup have admitted phone hacking. In protest against the planned tax on the rich, the French Football Association is set to actually go through with the first strike since 1972. A mediation meeting comes to an end without resolution. In the conflict regarding the tax on the wealthy, the government and the professional football association in France have manoeuvred into a cul-de-sac following a failed mediation meeting. President François Hollande welcomed club and association representatives to Paris' Élysée Palace on Thursday, where he listened to their complaints. However, he refused to spare the football association from the planned 75% income tax to be imposed on those earning in excess of one million €per year, which every company in the country will have to pay for two years, from 2014. The opposition also remained adamant. The strike announced for the end of November will now go ahead, informed the head of the Union of Professional Football Clubs (UCPF), Jean-Pierre Louvel. The Ligue 1 and Ligue 2 match days scheduled between 29 November and 2 December will thus be cancelled. Gechingen: Absolute protection not possible "We want to involve the residents in the planning at as early a stage as possible," said Mayor Jens Häußler, opening the citizen's information event regarding the flood protection concept in Gechingen. Around 80 participants came to the Gemeindehalle (community hall) to have the planned measures explained to them, to express their concerns and submit ideas. Häußler made clear: "The final decisions will be made by the members of the Town Council". Häußler commented that the flood that found Gechingen unprepared on 15 May 2009, was a decisive event in raising the question of protective measures for the future. A river basin study was commissioned in collaboration with the neighbouring community of Aidlingen, which now forms the basis for the flood protection concept in Gechingen. "The goal is the protection of as many developed plots of land as possible," said Häußler. The basis for the plans is the need for protection against expected floods, which statistically occurs every 100 years, according to the German Weather Service. Climate change is taken into account in the form of an allowance of 15 per cent. In expert circles this is referred to as "HQ 100aKlima". The masses of water that caused considerable damage in Gechingen in 2009 was equivalent to a 1,000-year flood. "There is no such thing as absolute protection, but we can attempt to make a relative improvement," said Häußler. In order to achieve HQ 100aKlima protection, around four million €must be invested in Gechingen, whereby the town can count on a State subsidy of around 70 per cent. However, Häußler indicated that the funding would only be provided if an overall concept is developed. In order to develop such a concept, the town is reliant on the cooperation of its citizens. A complex planning and approval procedure must be completed. In a best case scenario, implementation could begin in 2016. Among other measures, the protection concept, which (we reported) has already been presented to the Town Council during the past week, plans local measures in the tributary to the River Irm, running from the Stammheim Valley. In conjunction with the presentation of the flood protection concept, the participants made use of the opportunity to submit their concerns. Among others, the question was raised as to why embankments and detention reservoirs are no longer planned to protect the location. Gregor Kühn, technical planner at the commissioned engineering company, Hügelsheim-based 'Wald und Corbe', who presented the concept, emphasised that it required the interplay of all proposed measures, in order that their sum might achieve the desired goal. Furthermore, the most economic solution must be found, said Joachim Wald of Wald und Corbe. There was resentment among local residents of the old town, who have repeatedly to suffer as a result of the overflowing of the canal network, even during normal thunderstorms. The problem is known to the administrative department and initial measures have already been taken. However, Häußler indicated that the guidelines for canal systems are different to those for flood protection, and these must not be confused. The town is obliged to design the canal network in such a way that it can withstand rainfall events every two to three years. To make the sewerage channels wider would gobble up millions. Persons seriously injured following collision Early on Friday afternoon, two car drivers were seriously injured in a head-on collision on Landesstraße 44 (a rural road). The police completely blocked off the road immediately, but initially could not make much comment on the cause of the accident. However, they did mention that there were various witness statements that first had to be assessed. What is certain is that the 19-year-old female driver of a VW Golf was driving in the direction of Revensdorf and the 38-year-old man from Gettorf came towards her in his Hyundai. The two vehicles collided, whereby the woman was so severely stuck that it took the fire service almost half an hour to free her from the vehicle wreckage. Initially the actual cause of the accident remained unclear. Both unfortunate parties were taken to nearby hospitals. The road remained fully blocked off for around two hours. You could call him the Dostoevsky of the USA. Philip K. Dick was a God seeker, a metaphysician, and to a certain extent his novels and stories also feature recurring themes. The external likeness is astounding: the piercing eyes, the beard, the high forehead. And so, as Fyodor M. Dostoevsky - with his massive oeuvre - is considered the revealer and apologist of the Russian soul, Philip K. Dick is considered an American prophet, who is certainly highly esteemed within his own native country. Some titles have been released by the Heyne Verlag publishing house,the 'Haffman's cassette' featuring 118 stories was distributed by Zweitaudenseins. Dick illustrates America - the kingdom of breathtaking technical progress, paired with paranoia, a fixation on security and the belief of having been chosen. Dick had 'God experiences', and his later books read like a mixture of the Book of Revelation and a computer manual. Perhaps he was crazy, or perhaps drugs had affected his brain. He realised, early on, that computers are divinities. He wrote a 'Theology of the Computer' and questioned what separates humans from the machine, the creator from the creation. That is the "Blade Runner" problem. Killing. A master of science fiction. A fantastic writer. His stories have inspired film producers such as Ridley Scott, Paul Verhoeven and Steven Spielberg. The latter story is now particularly significant. "Minority Report" originates from the year 1956, and exudes the scent of the Cold War and the McCarthy Tribunal. Here the principle of the "Pre-Crime" is developed, i.e. something that is now more or less official doctrine within the White House. In Dick's world, which is alarmingly similar to our own, mutants look into the future - and the police have access to this insight. "We arrest individuals who've broken no law," says the government official. "We get to them first, before they can commit an act of violence". And: "In our society we have no major crimes, but we do have a detention camp full of would-be criminals". They read time streams. They assume that bad things are going to happen and prevent the criminal thought turning into action. Dick's tale acts as a blueprint for the anti-terror laws and the phone tapping madness of the NSA. Anticipation of attack: This is also how Obama's drone philosophy and practices work. However, Dick's story is not yet finished. The Police Chief argues that there is no more division of power, the military controls daily life - and what is left of the State. Then the watcher is himself being watched and is convicted of a future crime. The system slips up. It is perfect, but it lies. It devises its own conditions. It not only accepts errors and victims, but builds itself on them. The system creates the threat that it is fighting against. To read Philip K. Dick means to get closer to the truth, time and time again. Issuing statements regarding the Merkel spying scandal from Russia The former US intelligence expert, Edward Snowden, may make further statements regarding the US espionage scandal involving Federal Chancellor, Angela Merkel, from his Russian asylum. Representatives of the German Federal Prosecutor's Office could either submit questions in writing or meet the 30-year-old in person in Russia, reported the Interfax Agency. Green Party parliament representative, Hans-Christian Ströbele, was yesterday the first German politician to meet with Snowden in Moscow, to discuss the scandal with him. NSA revelations boost corporate paranoia about state surveillance On a mild day in late August a German police helicopter buzzed low over the US consulate in Frankfurt, the financial capital of Germany. On the instruction of the Office for the Protection of the Constitution (BfV), Germany's domestic intelligence agency, its mission was to photograph the rooftop of the US outpost, which is located less than 5km from the European Central Bank and Bundesbank. German media say the BfV hoped to identify the presence of listening antennas and the action prompted an exchange between the US and the German foreign ministry in Berlin. James Clapper, US Director of National Intelligence, insisted again in September that the US does not use foreign intelligence capabilities "to steal the trade secrets of foreign companies on behalf of US companies to enhance their international competitiveness or increase their bottom line." But ever since Edward Snowden, the contractor turned whistleblower, began releasing his treasure trove of US surveillance secrets, European governments and business leaders are no longer sure whether to take the director at his word. Reports that the US National Security Agency spied on Brazilian oil company Petrobras and gained access to data held by US cloud providers including Google and Yahoo have ratcheted corporate paranoia about state surveillance to new highs. The final straw came when it was revealed that Chancellor Angela Merkel's phone had been bugged, possibly for about a decade. If Europe's most powerful person can be targeted, then surely business leaders are also potential targets. Snowden has made transparent the intensive collaboration between US intelligence services and companies. I think it's conceivable that these data are used for mutual benefit. "Germany must wake up," says Oliver Grün, president of BITMi, which represents small and medium sized German IT companies. German companies believe the US now poses almost as big a risk as China when it comes to industrial espionage and data theft, according to a survey published in July by EY, the consultancy. In all the documentation leaked by Mr Snowden, there has, however, been no evidence to date that the US has passed on foreign companies' trade secrets to its own companies. Politicians have expressed concern that the EU lacks certain IT and internet capabilities and should strive to reduce its dependence on the US. Business leaders are sceptical about this. Someone in the German parliament says we should build a German Google. I can only shut my eyes and slowly open them again... "That's not the way," Hasso Plattner, chairman of German business software company SAP, says. If one wanted a strong European IT industry, then one shouldn't have let it die out 20 years ago. Everything is subsidised in Germany, from coal, to cars and farmers. Everything but the IT industry. Still, the reach and technical sophistication of US spy agencies exposed by the Snowden revelations have come as a shock to some companies who previously thought the biggest surveillance risk was posed by China. A big shift is occurring in cloud computing where European executives have become more aware that data stored in the US is subject to that jurisdiction and therefore potentially vulnerable. According to a survey carried out by the Cloud Security Alliance, a trade body, some 10 per cent of non-US members cancelled plans to use a US-based cloud provider after revelations about the US Prism data mining programme. Jim Snabe, co-chief executive at SAP, says: "We see a new question from customers that didn't come up a year ago - which is where is my data stored and can you guarantee that it stays physically in that jurisdiction." Many German executives argue that the latest reports are simply confirmation of what they already knew: that powerful states want to steal their most prized secrets and these data must therefore be guarded at all costs. That economic spying takes place is not a surprise. It has always taken place. "This has been a topic for many years and hasn't fundamentally changed through the current discussion," says Kurt Bock, chief executive of chemical maker BASF. The Americans spy on us on the commercial and industrial level as we spy on them too, because it is in the national interest to defend our businesses. Corporate leaders are not generally keen to boast about the countermeasures they have taken, in case this hands an advantage to an attacker. For large companies, the message has long since been drummed home that picking up a free USB stick at a trade fair, or leaving a laptop unguarded in a hotel room are unwise, to say the least. Ulrich Hackenberg, board member at carmaker Audi, says it has been standard practice for years for mobile phones to be collected before board meetings so they cannot be used as remote listening devices. Germany's BfV advises executives to consider using simple prepaid mobiles when on foreign trips because of the risk that smart phones are compromised. The prepaid mobiles are then thrown away afterwards. However, there is concern that small and medium-sized companies remain vulnerable to hacking and surveillance. In Germany, many of these companies are global market leaders in their particular niche. "Small and medium sized companies often lack the experience, personnel and financial resources to protect corporate secrets effectively against unauthorised access," the BfV warns in a report. The US warns its own companies about economic espionage by other countries. The US National Intelligence Estimate in February named France alongside Russia and Israel in a second tier of offenders who engage in hacking for economic intelligence, behind China, according to The Washington Post. A board member at a German blue-chip company concurred that when it comes to economic espionage, "the French are the worst." Bernard Squarcini, former head of the French internal intelligence agency DCRI, was quoted in an interview this month as saying: "The services know perfectly well that all countries, even as they co-operate in the antiterrorist fight, spy on their allies." Hechingen: Trade fair provides the answers to wedding questions "Marriage is and remains the most important journey of discovery a person can undertake," said the philosopher Sören Kierkegaard. Tips, at least as to how the wedding celebration can be a success, have now been given at a special trade fair in the Domäne in Hechingen. Important suppliers of all wedding-related products and services were represented. A trend: The retro look is back once again. This begins with the wedding clothing. White is a must, best muted or in cream. At the front, dresses with numerous ruffles and embroidery are in, often with a veil, while to the rear they run down the back and often end in a train. However, opinions differ, as Stefanie Koch from the Modehaus Kleidermüller emphasised. For men, suits with a waistcoat and neckerchief are most popular, although some people do choose cream or brown combinations. Selecting the venue is important, it was explained. Plain adjoining rooms are not ideal, the ambience should be special. In this regard, the Domäne drew attention to their own facilities in the carriage house. Uwe Link has an offer for anyone who wants to set off in a carriage. "However, carriages are also popular for hen parties," he commented. People were also on the lookout for romantic ideas for invitations, flower arrangements and wedding photographs. The "After-Wedding Photo" is becoming increasingly fashionable - that is, series of pictures taken a few days after the celebration, at special locations, preferably in front of waterfalls or the like, but in full wedding clothing, explained Elisabeth Keidel. Many other details for a successful wedding were presented in the Domäne on Sunday. Flower arrangements, rings, wedding tables, cakes and also a magician, such as Marko Ripperger, who can entertain guests with style. The correct cosmetics and nail care mustn't be forgotten. Everything you need for an unforgettable celebration. Dog-lovers victorious Once again the athletes from the Bitz dog-lovers association were victorious at a Rally Obedience Tournament. Achim Scherrenbacher started things off in Kandel with two dogs; with his bitch Sandy he achieved 94 points in the Beginners class and thus took fifth place, while with 15-month-old Marley he took twelfth place with 87 points. With her dog Woody competing in the Class 1 competition, Susi Höpp was subject to the critical scrutiny of the judge. Parents of Georgia teen who died in 'freak accident' believe son was murdered The parents of a Georgia teenager, whose body was found inside a rolled-up wrestling mat in his high school gym, believe their son was murdered, the family's attorney said Thursday. Kendrick Johnson, of Valdosta, Ga., was found Jan. 11 stuck in an upright mat propped behind the bleachers inside his high school gym. Lowndes County sheriff's investigators concluded Johnson died in a freak accident, but the 17-year-old's family disputes that. "They absolutely think their son was murdered," Benjamin Crump, an attorney representing Kenneth and Jacquelyn Johnson, told FoxNews.com. They never believed he died the way the sheriff concluded. "They believe that it defies logic, the laws of physics as well as common sense," Crump said. They think this is a cover-up to protect the person or people responsible for their son's death. "They sent their son to school with a book-bag and he was returned to them in a body bag," he said. U.S. Attorney Michael Moore said Thursday he is conducting a formal investigation into Johnson's death, noting that several key questions remain unanswered. What was the cause of death? Was his death the result of a crime? Moore said at a press conference Thursday afternoon. I will follow the facts wherever they lead. My objective is to discovery the truth. "I am of the opinion that a sufficient basis exists" for a formal investigation, he said. Moore told reporters that the initial autopsy indicated Johnson died as a result of "positional asphyxia." A second autopsy, however, listed a different cause of death, according to Moore. "There are several questions that must be answered or confirmed," he said. Moore added that if he uncovers sufficient evidence to warrant a criminal or civil rights investigation into the death of Johnson he will ask the FBI to conduct it. A representative from the Lowndes County Sheriff's Office was not immediately available for comment when contacted Thursday. A southern Georgia judge on Wednesday ordered authorities to release all surveillance video that investigators reviewed. The teenager's parents said they hope the video footage will contain clues to how he died. CDC issues children's allergy guidelines for schools On Wednesday, the Centers for Disease Control and Prevention released a set of guidelines to manage children's food allergies at school. This is the first set of such guidelines the U.S. government has put out, as the number of school-age children suffering from food allergies climbs. One in 20 children in the United States now have food allergies. The CDC found the prevalence of food allergies among children increased 18 percent between 1997 and 2007. The guide contains information for schools on how to make faculty and staff aware of children's food allergies, and how to handle them should an allergic reaction occur. It also recommends schools have epinephrine stocked -- the EpiPen brand auto-injector being most commonly used -- to respond to potentially fatal anaphylaxis. State legislatures have recently been updating rules to allow schools to stock epinephrine more easily. The report also includes a list of typical symptoms communicated by children who are having an allergic reaction. Kids may say, "It feels like something is poking my tongue," "My tongue feels like there is hair on it," or "My tongue is tingling." Parents of Intersex Kids Can Pick 'Gender Undetermined' Germany became the first European nation to recognize a third gender for babies born with ambiguous genitalia. No longer will newborns be rigidly assigned to male or female. The new law doesn't require parents to declare any gender for such children, allowing parents to declare gender "undetermined" or "unspecified" on their birth certificates. The aim of the law was to take the pressure off parents who might make hasty decisions on sex-assignment surgery for newborns, and to fight discrimination against those who are intersex. One intersex person, according to the BBC, said years later, "I am neither a man nor a woman." I will remain the patchwork created by doctors, bruised and scarred. An estimated one in 2,000 children born each year is neither boy nor girl. They are intersex, part of a group of about 60 conditions that fall under the diagnosis of disorders of sexual development, an umbrella term for those with atypical chromosomes, gonads (ovaries or testes), or unusually developed genitalia. Wallis Simpson may have been intersex. Gender identification is still not well understood, but most experts in the United States say that when sex cannot be determined, it's better to use the best available information to assign it then to wait and monitor the child's psychological and physical development before undertaking surgery, if at all. New York City psychiatrist Dr. Jack Drescher, who specializes in issues of gender identification, said the new German law "sounds like a good thing." Intersex children pose ethical dilemma. "Some people have life-endangering conditions that require surgery, but most kids do not," he said. You can make a gender assignment without surgery, and then see how identity develops. The science of knowing how a child will develop any gender identity is not very accurate. Nobody can answer the questions about why this happens. It's like the mystery of why people are gay. A report filed to the European Commission in 2011 described intersex people as different from transsexual or transgender people, as their status is not gender related but instead relates to their biological makeup, which is neither exclusively male nor exclusively female, but is typical of both at once or not clearly defined as either. These features can manifest themselves in secondary sexual characteristics, such as muscle mass, hair distribution, breasts and stature; primary sexual characteristics such as reproductive organs and genitalia; or in chromosomal structures and hormones. The report also gives an overview of the discrimination faced by intersex and transgender people in the realm of employment, as well as levels of harassment, violence and bias crimes. Gender nonconforming boys now have special camp. Already, Australia and Nepal allow adults to mark male, female or a "third gender" on their official documents. In June, a 52-year-old Australian, Norrie May-Welby, became the world's first recognized "genderless" person after winning a legal appeal to keep an "unspecified" gender status for life. German passports will have a third designation other than M or F -- X, for intersex, according to the Interior Ministry. In neighboring France, gender issues are still controversial, according to a news report on France 24. In 2011, dozens of French lawmakers from that strongly Catholic country signed a petition for "gender theory" to be withdrawn from school textbooks. The U.S. website Catholic Online has also opposed the German law, writing that "as the world is being dragged into a new state, where gender is a choice, but sexual activity is not, we reverse two more pillars of civilization." One Maryland mother of a newborn also told the Baby Zone that she would rather see babies assigned gender at birth. "Parenting is stressful enough without extra limitations, especially if you don't know the gender of your child," she told the parenting website. Children need stability and certainty. Historically, children born with both male and female genitalia were called hermaphrodites, named for the handsome Greek god who had dual sexuality. And as little as a decade ago, the medical community thought of gender as a slate that could be erased and then redrawn. But now, many are challenging the ethical basis of surgery, knowing that gender identity is complex, and doctors can sometimes get it wrong, not knowing how a child will feel about their gender assignment when they grow up. "Back in the middle of the 20th century, it was called a 'psychiatric emergency,'" said Drescher. When these kids were born, you didn't call the psychiatrist, you called a surgeon. The prevailing theory on how to treat children with ambiguous genitalia was put forward by Dr. John Money at Johns Hopkins University, who held that gender was malleable. He coined the term "gender identity" and argued that social and environmental cues -- how parents raised a child -- interacted with a child's genes and hormones to shape whether the person identified as male or female. But in one 1966 case, known as "John/Joan," his theories became controversial. He advised the parents of a boy whose penis had been severed in a botched circumcision to have the child fully castrated, removing his testicles, as well, and to raise him as a girl. "Money presented the case as a successful case of transition, but it was not," said Drescher. When the boy was around 15, he transitioned back to a boy and married a woman. But at 38, he committed suicide. Drescher said that now some doctors are still "practicing that model." But in the 1990s, with the advent of the Internet, survivors of these gender surgeries have come forward "not happy with the outcome." Such was the case with Jim Bruce, a 36-year-old writer from Montana, who was born with XY male chromosomes but ambiguous genitals. Doctors couldn't be sure if he had a large clitoris or a small penis and were convinced he could never live a "satisfactory life" as a man. So shortly after his birth in 1976, Bruce's external organ and testes were surgically removed and he was raised as a girl. He was given female hormones at age 12. "I knew that I wasn't a girl," he told ABCNews.com. I was unhappy, but it was really difficult to ask questions. At 18, he was set for a vaginoplasty. But depressed and knowing something was wrong, he demanded medical records. What he found out was horrifying. I was sterilized at birth -- and no one ever told me. Bruce was born with a DSD that prevented his body from producing enough testosterone to properly develop his genitals. After learning the truth, he changed back to a man, taking testosterone shots and having his breasts removed. Surgery rendered him infertile. Today, he advocates for others in an organization called the Interface Project, trying to normalize perceptions of those who are intersex. But Anne Tamar-Mattis, executive director for California-based legal group Advocates for Informed Choice, worries that the German law "invites labeling and stigma." "A lot of activists are concerned that what the German rule will do is encourage parents to make quick decisions and give the child an 'undetermined,'" she said. We are afraid it will encourage intervention. We think a better process is assigning male or female sex, then waiting. But we haven't seen how the law will play out, so all we can do is speculate. Tamar-Mattis said that her organization supports the Australian law because "it allows adults to choose to be recognized in a third gender." "Adults should be able to make their own decisions about legal gender," she said. German law is about assigning it at birth. That is not a battle young children should have to take up at this point. When they are grown, they can make decisions about their own bodies. But Dr. Arlene Baratz, a Pittsburgh breast radiologist who has a daughter with a disorder of sexual development and helps hundreds of others in a support group, said the German law will "empower" both parents and children. Baratz's daughter Katie was born with male chromosomes, but has a DSD called complete androgen insensitivity syndrome. Because her androgen receptors are faulty, Katie developed female characteristics. She has a vagina, but no uterus or ovaries. Now at 29, Katie is married and at the University of Pennsylvania, a resident in child psychiatry. Though she is infertile, she hopes to become a parent through adoption or gestational surrogacy. "The law gives parents some space not to have to rush into making decisions themselves," said Baratz. It gives them the time to do some tests and figure it out and a period of time before they write 'male' or 'female.' This way, you are OK -- raise the child, love the child. You have a wonderful baby and enjoy the fun. We don't have to rush into surgery that is irreversible. "It brings the children into the decision and takes away the anxiety that motivates parents because they don't feel they are doing the right thing," she said. Ultimately, the child will decide which sex he or she feels more comfortable with -- and that's a wonderful thing. It empowers children to make the decision for themselves. Unknown attackers injure girl with shots fired from car Unknown attackers have injured a twelve-year-old girl in Saxony-Anhalt when firing shots from a car. The assailants fired on a group of children on Thursday evening in Genthin, presumably with an air gun. This was announced by the police in Burg. The girl suffered minor injury to her left calf. Rescue workers took the girl to the hospital. The shots came from a small car, which drove past a group of six children and suddenly stopped. Witnesses saw two people sitting in the car. The assailants also fired shots at a bus stop. A pane of glass was shattered. They then drove away. The Criminal Investigation Department is investigating the matter, it was stated on Friday. Thus far, the Kempten Police Department can look back on a calm Halloween night. The authorities were only called out twice to deal with children throwing eggs against houses. Because the home owners realised this immediately, the egg remnants could be cleaned off at once, meaning that no material damage occurred. Furthermore, in the town centre area, while a few fireworks were set off, no material damage was caused here either. The residents of the Bischof-Freundorfer-Weg reported that a car was wrapped in toilet paper and its wheel trims stolen. However, the man found all his wheel trims nearby prior to the police arriving, on account of which no further police involvement was required. Living with a future-oriented perspective If truth be told, Waltraud Ries, lives a dreamy life. Her house is located in a peaceful neighbourhood in Stuttgart, with plenty of greenery, an old tree population, nice neighbours and not too much traffic. She is only a few minutes from the city centre using public transport. "Hopefully you aren't afraid of spiders?" asks Waltraud Ries, pointing out a large spider on the door frame. I have been looking for a new home for my husband and myself for some time now. But you know how difficult that is in Stuttgart. However, the reason for the desire to move is not arachnophobia, but rather the fear of not being able to manage the large number of steps up to their house, and inside their home in their old age, she explained. Furthermore: Since undergoing a meniscus operation, the lady, in her mid-fifties, has had to experience for herself what it means to move from floor to floor with a disability. Only recently, she released a book on the subject of "Living happily in old age - Which type of property is the best for me?". "Our home is the best example of a property that simply doesn't work in old age," she begins to recount. When she moved to the maisonette with her husband 20 years ago, it was simply just a pretty apartment in green surroundings. Now, in her mid-fifties, Waltraud Ries has different thoughts about it. However, she is aware that she is one of the few people to actually deal with the topic of 'living in old age'. The majority of people put it to the back of their minds for as long as possible. Only other people get old, she says, smirking. Only when the psychological strain becomes severe do people give it consideration. "But at this stage it can be too late," said Ries. In her book, the interior decorator presents 17 housing models for independent living in old age. "However, which type of residence you choose is always a personal decision," she explains. There is no solution to overcoming old age. Even if you can afford to spend your retirement in Tuscany or Brittany, you should always take the fact that you may become ill into consideration. And: 'Without a sound knowledge of the local language, you can even become lonely when living the dolce vita,' added the author, providing food for thought for those seeking to move abroad. Her models include classic care models, alternative living arrangements and the often-mentioned pensioners' living community. In old age everyone has their quirks and ticks. 'However, this type of residential community would not be for me,' she commented with a wink. Definitely nothing like student accommodation with a shared bathroom and kitchen. 'In old age you simply need your own space to withdraw to,' said Ries. However, the author does not wish to rule out the possibility that a pensioners' residential community can work. However, it must operate differently to the classic student digs. And sometimes you also just want your peace and quiet,' she believes. With this opinion she is at least not alone in the State Capital. The experience of Theresa Rütten, head of the citizen's Life in Old Age service in the State Capital, is also that 'the majority of old people in Stuttgart want to remain in their own homes for as long as possible'. Her agency agency advises people on the topic of 'growing old'. Therefore the experience of the Stiftung Warentest consumer study is also that elderly people in particular would accept inconveniences and limitations just to be able to remain in their usual environment. Nowadays there are many possibilities for designing the house or apartment in such a way as to be barrier-free. Ries recommends that all those working on the age-appropriate renovation of their house or apartment first seek out in-depth information and don't simply use the first tradesman that comes along. Nowadays there are specialists in renovation to suit the needs of the elderly. Even in the case of rental apartments some landlords can have this work carried out, even if it is just a matter of raising the level of the toilet seat, clarified the interior designer. However, it is not always the case that your existing apartment can be made age-appropriate and therefore barrier-free, even if it is as beautiful as ever. Waltraud Ries had to go through this experience herself. You could of course install a stair lift inside the apartment, but the cobbled path up to the door of the apartment, featuring a number of steps would be a much greater hindrance. She will keep looking until she has found the ideal property for herself and her husband. She is more afraid of the move than of the spider on her front door. The USA still want to prosecute Snowden The USA have not changed their position regarding the former US Secret Service employee Edward Snowden. He is still accused of passing on secret information without authorisation. He must therefore face criminal proceedings in the USA, said the spokesperson for the US Foreign Office, Jennifer Psaki, in Washington. Even the most recent statements from Snowden will not change this fact. Following a recent meeting with Snowden in Moscow, German Green Party politician Hans-Christian Ströbele appealed to the USA not to continue to threaten him with prosecution. Psaki emphasised that Ströbele's comments were the views of a parliamentarian, and not those of a German government member. Secret Service whistleblower, Edward Snowden is, in principle, willing to hold a discussion with the German authorities. However, he first wishes for his situation to be clarified. This was made clear by the former NSA employee, currently sought by the USA, in an open letter that Green Party politician Hans-Christian Ströbele made public on Friday following a meeting with Snowden, and passed on to the Federal Government, the Federal Parliament and the Federal Public Prosecutor General. The letter was purported to have been worded as follows: To whom it may concern, I have been invited to write to you regarding your investigation of mass surveillance. I am Edward Joseph Snowden, formerly employed through contracts or direct hire as a technical expert for the United States National Security Agency, and Defense Intelligence Agency. In the course of my service to these organizations, I believe I witnessed systemic violations of law by my government that created a moral duty to act. As a result of reporting these concerns, I have faced a severe and sustained campaign of persecution that forced me from my family and home. I am currently living in exile under a grant of temporary asylum in the Russian Federation in accordance with international law. I am heartened by the response to my act of political expression, in both the United States and beyond. Citizens around the world as well as high officials - including in the United States - have judged the revelation of an unaccountable system of pervasive surveillance to be a public service. These spying revelations have resulted in the proposal of many new laws and policies to address formerly concealed abuses of the public trust. The benefits to society of this growing knowledge are becoming increasingly clear at the same time that claimed risks are being shown to have been mitigated. Though the outcome of my efforts has been demonstrably positive, my government continues to treat dissent as defection, and seeks to criminalize political speech with felony charges that provide no defence. However, speaking the truth is not a crime. I am confident that with the support of the international community, the government of the United States will abandon this harmful behaviour. I hope that when the difficulties of this humanitarian situation have been resolved, I will be able to cooperate in the responsible finding of facts regarding reports in the media, particularly with regard to the truth and authenticity of documents, as appropriate and in accordance with the law. I look forward to speaking with you in your country when the situation is resolved, and thank you for your efforts in upholding the international laws that protect us all. Edward Snowden, as witnessed by Hans-Christian Ströbele A kindergarten has found a private buyer "The building is in good hands," said Winterlingen's Mayor Michael Maier. The local authorities have sold the former Kindergarten on Gartenstraße to a private buyer. The Town Council consented to the sale in its most recent meeting, during the part of the meeting that was not open to the public. The building changed hands for an "appropriate" price. "The local authorities are satisfied," emphasised Maier. EUR 100,000 have been added to the local budget. It is not yet clear how the new owner will use the former Kindergarten. The Mayor considers it the right decision that Winterlingen has handed over responsibility for the building to someone else before the winter, and thus will no longer have to pay for the upkeep of the building, such as heating it, tending to the garden and clearing the pavement. "This expense has now been offloaded," Maier was glad to say. Open-air concert accompanied by high summer temperatures. The Hammereisenbach Music Society gave an open-air concert on the terrace of the Hammer Guest House. When conductor, Bianca Willmann, raised the baton at 7:30 p.m., the thermometer was still reading 25 degrees. Around 50 listeners enjoyed the sounds of the Hammrich musicians. Chairperson, Manuela Honeck, provided explanation to accompany the pieces. In so doing, Honeck thanked all those who had helped successfully manage the first Musikerhock. Report: Obama campaign considered dumping Biden for Hillary Clinton President Barack Obama's closest advisers secretly considered replacing Vice President Joe Biden with Hillary Clinton on the 2012 ticket, according to the New York Times. The revelation is the most notable bombshell from Mark Halperin and John Heilemann's heavily anticipated 2012 campaign tome, "Double Down: Game Change 2012." The Times obtained a copy of the forthcoming book and reported Thursday evening that the President's top aides conducted "extensive group-sessions and polling in late 2011" to gauge whether the dumping Biden could help bolster Obama's waning re-election hopes. According to the Times' national political correspondent Jonathan Martin, the book provides a thorough account of the effort by senior officials inside the campaign and the White House, namely former White House Chief of Staff Bill Daley, to measure what effect swapping former Secretary of State Clinton for the Vice President would have in the polls. The potential switch was a closely guarded secret within the Chicago campaign infrastructure and inside the Oval Office. Only half a dozen of the President's closest advisers -- including Daley, former Obama campaign chief Jim Messina, and former White House senior advisers David Axelrod and David Plouffe -- knew the change was under consideration. "Double Down" claims Daley spearheaded the effort to replace Biden, despite their "close personal rapport," before ultimately deciding against the move when their data showed adding Clinton to the ticket wouldn't "materially improve Obama's odds." In an interview with Martin, Daley confirmed that the administration did in fact consider replacing Biden with Clinton. "I was vocal about looking into a whole bunch of things, and this was one of them," Daley told the paper. You have to remember, at that point the President was in awful shape, so we were like, "Holy Christ, what do we do?" While Daley characterized the research as "due diligence," Martin told CNN's Anderson Cooper that the re-election campaign made a significant investment in finding out whether the move would pay dividends at the polls. "Campaigns don't spend the kind of money on polling and focus groups unless they're seriously considering something," Martin said on AC360. It's unclear, however, whether Obama knew his team was exploring the swap. Martin told CNN that he asked Daley whether his then-boss knew about the potential shuffle. While Daley said he doesn't think the President "was aware" of the potential change, the former chief of staff admitted that it's "possible" Obama knew. Martin added that "Double Down" does not definitively answer whether the political probing reached Obama's desk. Cooper asked Martin whether he seriously thought Obama did not know about the research into dumping Biden from the ticket. "Possibly," Martin replied. What happens with my e-mail when in transit? E-mail is short for electronic mail. Are there technical measures to maintain privacy of correspondence, similar to that of the traditional postal service, implemented into the design of this Internet-based service? When designing the early Internet services, the focus lay on making communication possible. Thus, when developing the underlying technical protocols, no attention was given to creating a stable foundation for the interception-proof exchange of mail. For this reason, a traditional email is more like an open postcard than a sealed letter. When user "Anna" sends an email to "Benni", are the pair's computers then directly connected? Anna's email program or browser first sends the mail to her service provider's mail server. If she has a Gmail account, for example, this would be Google. This mail server sends the content to the provider that Benni uses. En route, the mail can pass through any number of other servers on the Internet. Benni can then call up the content from his provider. Are traditional e-mails read by third parties on their journey through the net? The majority of e-mails are read several times by software robots en route to the recipient. Checks are generally carried out by the sender's provider as to whether the mail contains malware as an attachment. A virus check is also carried out on the recipient systems. In addition, the providers check whether it is nuisance or unwanted spam mail, which are deleted immediately or at least sorted into a spam folder. Do the robots have other tasks? In the case of systems such as Gmail, the robots also identify the information that Google requires for displaying context-based advertising. If Anna and Benni communicate about their upcoming holiday travels via Gmail, Google can display corresponding links to holiday offers. Do unknown individuals also read the e-mails? The probability of unauthorised persons reading a mail is extremely low. However, theoretically, it is possible. Within companies, administrators are often able to read electronic mail that is sent. Law enforcement authorities and Secret Services also have legal authorisation to intercept or take note of e-mails. This may include potential illegal spying activities. Is it possible to protect e-mails against being read? With an encryption using the OpenPGP standard, an e-mail can be effectively protected against being read. With great technical effort, it is also possible to conceal the metadata of email communication so that it is not even possible to tell who is communicating with whom. How important are Yahoo and Google within the e-mail market in Germany? According to a study conducted by Convios Consulting in August 2013, among the main mail services in private use, Yahoo and Google play only a minor role. While the number of Yahoo Mail accounts has fallen recently, Google's Gmail managed to grow considerably. Mother buried in shallow forest grave and pension stolen When his elderly mother died, a man from Wolfsburg devised a plan. He buried the deceased in a forest - and continued to collect her pension and care allowance. According to police investigations, a 67-year-old Wolfsburg resident buried his dead mother in the woods in order that he might continue to collect her pension and care allowance. He first covered up the death of the 89-year-old and then pocketed the money for more than a year and a half. The 67-year-old must now face charges of fraud, said a spokesperson on Friday. According to the statement, the man hid the woman in a forest near Helmstedt. The man was already under suspicion back in May: At that time the fact that medications for his care-reliant mother were no longer required drew suspicion. The pensioner told investigators that his mother had travelled to Spain. The officials found this strange and so continued to investigate. It was discovered that the mother and son had lived in the same residence for more than 15 years and that he had cared for her in her final days. The 67-year-old finally acknowledged the death of his mother. According to police, an autopsy showed no evidence of any capital offence. Fancy a glow-in-the-dark ice cream? A British entrepreneur has created the world's first glow-in-the-dark ice cream - using jellyfish. Charlie Francis has harnessed the fluorescent properties of the marine animal to develop the luminescent snack. He came up with the idea after reading a research paper on jellyfish and convinced scientists in China to chemically recreate the glowing protein. The ice cream reacts with the eater's tongue - raising the pH level in the protein and making it glow. Chris says because the ice cream lights up when it reacts with the heat of the mouth it means the more you lick, the brighter it becomes. Charlie, founder of the "Lick Me I'm Delicious" ice cream company, said: "It is incredible stuff but still at very early days in terms of production, so £200 gets you about 2g of the stuff." The protein we are using in the ice cream reacts with your tongue at neutral pH. So as your mouth warms up the protein it will raise the pH level and the ice cream will glow. We have been testing it out over the past few months and it seemed perfect to share it over Halloween because it gives that wonderful glow effect. It is probably the most expensive ice cream I have made because the jellyfish luminescence is four times more expensive than gold. So each scoop costs me around £140. It tastes pretty good though. Charlie's experimental company, based in Bristol, is famed for its unusual flavours including beer, cheese, beef and gold leaf. But his next creation is set to be even more ambitious. He said: "I really want to develop an invisible ice cream." It is inherently impossible because of the refraction caused by the ice crystals which make up the ice cream, but I reckon we will find a way of doing it. The ice cream harnesses the fluorescent properties of a jellyfish, synthesized by Chinese scientists After six match days, TSV Morsum are yet to score a single point in the Handball Association League. And of all possible times, Ingo Ehler's team has a derby match against TSV Daverden tomorrow, which celebrated their first victory last week. The season begins afresh for us with this match. "I hope that we finally have our heads clear," commented Ehlers, remaining cautiously optimistic. For this match he finally has his complete squad available, with the exception of Hendrick Blohme who is out with long-term injury. Like us, Daverden place emphasis on high tempo play. For this reason, we must keep our errors to a minimum. However, the top priority is to improve our cover play, which has recently left much to be desired. Daverden's coach Thomas Panitz comes across as much more relaxed following his team's first victory of the season against Nordhorn. The match was of course a indication of what we are capable of. However, it by no means makes us favourites, as anything can happen in the derby. Nonetheless, Panitz is now looking to come up with the goods in Morsum and thus start a winning streak. Jan-Malte Jodat will not be playing. Thus, A-Youth player Joost Windßuß, who plays an active part for A-Youth League team HC Bremen, will be celebrating his season début. Anyone who is not fired up for a game like this should stay at home. Halloween 2013: By the Numbers When I was little, Halloween was magical. My sister and I were allowed to eat candy, stay up late and play dress-up for the neighborhood. Nowadays, I've become more of a scrooge. I haven't signed up for the past two years to give out candy in my apartment and probably won't this year. But stats show that I'm a black sheep when it comes to Halloween. The majority of Americans - 158 million of them in fact - will be celebrating Halloween this year, spending a total of $6.9 billion on candy, costumes and decorations, according to the National Retail Federation. One thing I do look forward to every Halloween are the trends. Costumes are expected to account for $1.2 billion dollars out of the $6.9 billion spent, according to the NRF. This year, sexy inanimate objects are all the rage. Women don't have to be sexy professionals anymore; they can also be sexy foods like pizza, hamburgers and carrots. As for men, I expect we will be seeing a lot of zombies, thanks to The Walking Dead and I'll bet the Daft Punk space men will make it into our Instagram feeds this year. According to Google, the highest searched costumes are zombies, Batman, pirates and witches. I guess there's nothing wrong with going traditional. We dressed our dogs up last year and to my amazement we were not alone. In fact, Americans will spend $330 million on pet costumes this year, according to the NRF. That's a lot of ironic hotdog dogs. When it comes to candy, we don't screw around. Americans will spend $1.9 billion on it this year, according to The Nielsen Company. That's around 600 million pounds worth of Hershey bars, lollipops, Milk Duds, Twizzlers and Clark Bars. That's great news for the 41 million trick-or-treaters set to take over our neighborhoods, according to the U.S. Commerce Department. In fact, we will buy and, who are we kidding, consume 90 million pounds of chocolate during Halloween. The one thing we don't want to consume, candy corn; and yet nearly 35 million pounds of it are sold around Halloween, according to the National Confectioners Association. That's about 9 billion individual kernels of corn. It's a mystery I have yet to solve. Nothing is more quintessentially Halloween than haunted houses. They have the best names, like "Terror Behind the Walls" (which, by the way is in an actual prison), "Howl-O-Scream" and "The House of Shock." In fact, there are 1,200 officially sanctioned haunted houses in the United States generating about $500 million in revenue, according to America Haunts, and that includes those awesome photos of you mid-peeing your pants that your friend puts on Facebook and you can't take down and then that guy you like sees the photo and leaves a comment like "nice face." Finally, let's talk pumpkins. Charlie Brown introduced us to The Great Pumpkin when we were kids, and carving a jack-o-lantern is like decorating a Christmas tree - it's something we've done since we were little. Lucky for us, the "baby in a pumpkin trend" started only last year thanks to Pinterest, so most of us grew up carving these gourds not sitting in them. This year, Americans will spend around $106 million on pumpkins, according to the U.S. Census Bureau. The jack-o-lantern slowly withering on your front porch probably came from Illinois, which grew 542 million pounds of pumpkin this year. If you're looking for extra credit, call Tim and Susan Mathisdon in Napa, Calif., and try to carve up their 2,032 pound pumpkin. House fire in Helmbrechts: Rescue services retrieve charred body The fire service were called out to Helmbrechts late on Thursday evening. A three-bedroom house in the district of Hof catches fire during the night. Rescue workers retrieve a charred body from the house. During a fire in Helmbrechts, rescue services found a charred body in a three-bedroom house. Whether this person was living in the house is as yet unclear, said a police spokesperson in Bayreuth. Late on Thursday evening, fire broke out on the ground floor of the house. When the fire service arrived, the flames were already bursting out of a window. Rescue workers entered the premises and found the body in a bedroom. This and another bedroom were completely burnt out. The entire ground floor suffered damage. There were no other residents at home during the fire, continued the police spokesperson. For the time being, the house is no longer habitable. The precise cause of the fire was initially unclear. Germany's largest national church has launched a campaign advertising the minister's position. This comes at the same time as a possible shortage of ministers: The Protestant Lutheran Regional Church of Hanover calculates that, as things stand, the current number of around 1,800 pastors will be halved by 2030. For the young people of today, the career is very attractive and offers good future prospects, said Pastor Mathis Burfien (43) in a conversation with the Protestant Press Service. It is attractive to be able to determine your own daily working routine. With Burfien, the regional church has for first time commissioned a minister to work full time, endeavouring to inspire young people to study theology. At present, fewer and fewer young people are deciding to study theology after their Abitur examinations (equivalent to A levels). Burfien puts this down to the process of secularisation: "God's voice is quiet, the world is loud". The job is characterised by great freedom and variety. I am the master of my own schedule and can therefore turn my focus to what is important to me. As pastoral workers, ministers can be close to people. They earn as much as teachers and can make a good living. Of course wages are higher within the private sector, but on the other hand, theologians have a secure employer. This would suit the young people of today, as it is not just about your career, but about having a meaningful job as well. According to information from the Regional Church, which covers three quarters of Lower Saxony, around 60 pastors retire every year. At the same time, around 40 theology graduates begin as vicars. In future it may be difficult to fill positions in sparsely populated outlying areas such as Harz, Emsland or Wendland. Among other initiatives, Burfien wants to organise study days for young people, inviting famous faces who have studied theology. Theology courses offer broad training. You can even become Federal President with a theology degree. Land Rover rally series announced The interior has racing seats and six-point harness belts, as well as an intercom system. Options include upgraded brakes, a service package providing access to Bowler Works mechanics, logistic support, and vehicle storage between events. Drew Bowler, the managing director of Bowler Motorsport, said: "Rally customers coming to Bowler have changed." They're not all experienced racers, but people looking for excitement and adventure, and an achievable path towards world-class events. We're delighted to be offering this path in partnership with Land Rover and the MSA, and believe the format offers a new way to experience different rally disciplines in the UK and overseas, and prepare entrants for the rigours and realities of Rally Raid. We've really enjoyed developing the Defender Challenge car - it'll be a really fun championship. Additionally, the Defender Challenge will provide a training and test day in February, as well as the option to compete in desert events in North Africa and the Middle East. Fire crews called to rescue lost puppy after she got stuck 50ft above the ground on precarious ledge in a quarry Cocker spaniel Ruby had run off after she was in a minor road crash She was spotted three days later by a dog walker trapped in the quarry Firefighters abseil down cliff face to pluck the dog from certain death A puppy had a lucky escape after fire crews were called to lift her to safety when she somehow got herself stuck 50ft up on a precarious cliff ledge. Nine month-old cocker spaniel Ruby had run off after being involved in a road crash on Sunday afternoon and survived three days alone before being rescued from a quarry on Wednesday. Her owners Scott Alderson, 25, and his girlfriend Becky Hall, 20, were at Flappit Quarry in Denholme, West Yorkshire, to be reunited with Ruby and have thanked West Yorkshire Fire and Rescue Service. They had searched frantically for their missing dog and posted appeals on social networking sites after she had ran into the quarry following the minor accident. At around 2.15pm on Wednesday, an eagle-eyed dog walker spotted Ruby on the ledge in the quarry, stranded 50ft up. A Technical Rescue Team from Cleckheaton Fire Station rushed to the scene and abseiled down to rescue Ruby and used a pet tube to transport her up the cliff. Specialist Technical Rescue Officer Andy Clayton said: 'She was in a precarious situation. She was right in the middle of the cliff face - 50ft from the top and bottom. She did not move a muscle during the rescue - she was frozen solid. But she is fine now. She was eating biscuits afterwards. This was a very unusual call-out. The fact that the dog was spotted is unbelievable. Specialist Technical Rescue Officer Peter Lau said: "Ruby had a very lucky escape." The potential was there that she could have been very seriously injured or worse. Ruby was taken to the vets for a check-up and was found to be fine other than exhaustion and dehydration. Miss Hall, from Halifax, West Yorkshire, said: "Watching the rescue was terrifying." I could not believe that she was up there in the first place. It was amazing to get her back in our arms. The vet said that if she became too exhausted and collapsed she would probably have fallen. The firefighters were amazing. It was really daring what they did. We are just so grateful and every single one of them was absolutely tremendous. Mr Alderson, from Keighley, added: "We were scared that she might fall but she stayed there." The firefighters were brilliant. I just can't believe where she was. Mick Jagger says he never hit on Katy Perry when she was 18. During an interview with an Australian radio show this week, the pop star said she sang backing vocals for Jagger's 2004 song "Old Habits Die Hard." Perry said she had dinner with the veteran rocker and that "he hit on me when I was 18." She added, "That was a long time ago, and he's been very kind." In a statement Thursday, a representative for Jagger, 70, says he "categorically denies that he has ever made a pass at Katy Perry." The rep adds: "Perhaps she is confusing him with someone else." Perry was one of the singers to make a guest appearance on the Rolling Stones' tour this year. Her new album, "Prism," debuted at No. 1 this week. George Kerevan: Europe break-up gives Scots choice Another day, another independence scare story. This time we are warned that an independent Scotland would be required to join the Europe-wide free-travel zone as a condition of EU membership. Cue stories about passport controls at Berwick and a barbed wire border along Hadrian's Wall. True, the Strathclyde paper pointed out the possible economic benefits of freer movement with the rest of Europe, though - predictably - that did not figure in the headlines. Nor did anyone point out that the EU member states spend much of their time bending their formal rules if it suits them. Since Scotland isn't in the Schengen area now, continued non-compliance would be a cheap concession for Brussels to offer up in return for whatever it really wanted out of the Scots. So, a non-story, then. And one that is so long in the tooth it has become fossilised: I first heard the "independence means passport controls" canard at least 40 years ago. Yet there is an interesting point lost in this retelling of a whiskery old tale. Why should an independent Scotland be expected to do Europe's bidding, anyway? Why trade London's yoke for that of Brussels, especially now? Here is the real European news: the great, post-war plan to unite Europe has finally stalled. With the euro crisis, Project Europe is officially dead. Across the EU, parties which are dedicated to opposing the EU, or to scrapping the euro as a common currency, are gaining ground. Even in Germany, the Eurosceptic Alternative for Germany Party - founded only this year - came from nowhere to grab nearly five million votes in September's federal elections, thus effectively knocking the Free Democrats (equivalent to our own Lib Dems) out of the Bundestag. There has always been domestic opposition to the plan to create a federal Europe. However, the current economic crisis has proved a watershed. The austerity imposed by Berlin and the European Central Bank, coupled with the straitjacket imposed on national economies through adherence to the common currency, has led many people to think Project Europe has gone too far. The crisis of the euro has little to do with national governments running excessive budget deficits - that was true only of Greece. Rather, the euro system locked in its members at exchange rates favourable to German exporters - something German politicians want to keep. Without the possibility of domestic currency devaluation, southern Europe finds itself with a built-in productivity disadvantage vis-à-vis Germany. The only recourse is to slash wages and public spending - spurred on by Berlin. Beyond the current budget and currency problems lies a deeper European productivity malaise. As a result of "green" energy policies imposed by Brussels - code for subsidising French and German energy firms at the consumer's expense - European industry pays twice as much for electricity, and four times as much for gas, as in the United States. That is a crippling cost disadvantage, as we've already seen at Grangemouth. All the wage freezes in the world won't stop the European petrochemicals industry being hammered by cheap US shale gas. As a result, revolt is brewing, especially in France, once the EU's main cheerleader. After the war, the French political elite saw the EU as a vehicle to keep Germany in check, and to give Paris equal billing in the world with Washington. But Berlin no longer needs Paris as a passport to political legitimacy and has imposed its own economic policy on Europe, leaving the battered French economy struggling. Result: Marine Le Pen's right-wing, anti-EU National Front has just won a crucial by-election, knocking the ruling Socialists into third place. The Front is now the most popular party in France with 24 per cent of the vote - a timely warning to British Labour that they can't assume a split on the right will automatically favour the left. What is Le Pen doing with her newfound popularity among the French white, working class? She wants to use next year's EU elections to create an anti-EU, anti-common currency bloc across the European Parliament. If, as is very possible, anti-EU parties do well in these elections, such a bloc could dominate the European Parliament for the first time. Here's my point: sometime soon growing anti-EU and anti-common currency feeling in Europe will coalesce to kill the euro. The EU won't disappear, but it will revert to something more like the loose "Europe of the (Sovereign) Nations" favoured by General de Gaulle. Germany and a few of its satellite economies might keep the euro but France and southern Europe will revive their own currencies. I expect the UK will distance itself from this project, hoping to cosy up to the US. However, Washington's growing interest in the Pacific suggests Britain will be left out in the Atlantic cold. Where does this leave Scotland? We can choose to be a region of (essentially) Little England. Or we can defend our own economic interests - which includes telling Berlin and Brussels where to get off. I suspect that Scotland could do well inside a looser European arrangement provided we kept our own currency. Co-operation with other like-minded countries will be easier in a non-federal Europe of the Nations. Otherwise we should consider emulating Norway and retaining our economic independence. The SNP government in Scotland is - remarkably-- the most successful anti-austerity political movement in Europe, having won a spectacular majority in 2011 on the basis of opposing the cuts proposed (and implemented) by Labour's chancellor Alistair Darling and the subsequent Tory-Lib Dem coalition. It would be ridiculous now for Scotland to vote for independence only to accept austerity imposed by Berlin and Brussels. Early puberty: Growing older sooner African-American and Hispanic girls tend to reach puberty earlier than their white counterparts, research shows. Physical changes don't mean puberty is imminent There's no evidence that hormones or other chemicals are to blame Experts think the obesity epidemic might be one trigger of early puberty The trend toward early puberty is not as pronounced with boys Former CNN correspondent Pat Etheridge is a journalist specializing in children's health and family issues. Should a mother be alarmed if her daughter begins to sprout breast buds and pubic hair at 7 or 8? At the annual conference of the American Academy of Pediatrics this week in Orlando, Florida, pediatric endocrinologist Dr. Paul Kaplowitz explained that these early physical changes are quite common among American girls and represent a new norm. "I spend a lot of time reassuring parents -- usually, this does not signal a rapid progression into full puberty," said Kaplowitz. Obvious signs of development, such as budding breasts, pubic and underarm hair and body odor are appearing sooner in girls. But there has been only a slight shift in the age of menarche (the first period) over the past four decades. In the United States, the average age is 12.5 years, down from 12.75 in 1970. "Once breasts begin to develop, it takes at least two to three years before menarche," said Kaplowitz, also author of "Early Puberty in Girls: The Essential Guide to Coping with This Common Problem." Time is the most accurate test of how puberty is going to progress. There is debate about what constitutes the actual onset of puberty, but it is considered "precocious" when breast enlargement is accompanied by a growth spurt before age 8. In most cases, the process will slow down or stall -- something a pediatrician can monitor closely. A more rapid progression may warrant tests by an endocrinologist to rule out serious problems such as tumors or cysts. There are treatments to delay early menses and ward off another consequence: premature aging of the bones that ultimately can lead to stunted growth and being short as an adult. Recommendations for drug or hormone therapy are based on the child's age, rate of development, growth rate and emotional maturity. Psychosocial aspects are important, too. Kaplowitz is cautious with medication but acknowledges, "suppressing puberty may alleviate behavioral issues and girls' feelings of being different from peers." The other big issue is understandable: Parents simply don't want their very young daughters having periods. "They worry about the risk of pregnancy or even how they will handle hygiene," said Kaplowitz. "It was a shock," recalls one woman whose daughter started her period at 10. Even though there were signs and we had talked about menstruation, she was not emotionally prepared. She came home from school scared and upset to be the first among her friends. There are lots of well-publicized theories about the causes of precocious puberty. Yet, there's no consistent body of evidence that hormones in milk or other foods, chemicals in the environment or sexual messages in the media are to blame. Boys - like girls - are hitting puberty earlier. Kaplowitz contends the premise that holds the most weight is the epidemic of obesity. He helped conduct a 2001 study of 6- to 9-year-old girls that links body fat to the timing of puberty. Other findings support this conclusion, but there are many other contributing factors. In this country, African-American and Hispanic girls tend to reach puberty earlier than their white counterparts. There are varying explanations. Globally, patterns of early puberty appear to be influenced by everything from economic conditions to climate to genes. Another conundrum: Although boys are getting facial and pubic hair at younger ages, the trend toward full-blown early puberty is not as pronounced as it is with girls. Other doctors attending the AAP conference reinforced the complexities of the topic. The appearance of acne and pubic hair is common even in infants and toddlers. "We need to be careful about how we identify the true onset of puberty," said Dr. Lawrence Silverman, a pediatric endocrinologist at Goryeb Children's Hospital in Morristown, New Jersey. Parents should not hesitate to get guidance from their pediatrician about how to talk with their child. "It may mean having a sooner-than-expected conversation," Kaplowitz advised. If you remain calm, your child usually will respond well. Girls who blossom early need reassurance that, even when it happens ahead of schedule, the process is a normal part of life. Jet makers feud over seat width with big orders at stake A row has flared up between leading plane makers over the width of tourist-class seats on long-distance flights, setting the tone for a bitter confrontation at this month's Dubai Airshow. The dispute focuses on the width of seats provided on long-haul flights for economy passengers - not always the ones most courted by airlines, but whose allocated space holds the key to efficiency claims for the latest jets offered by Airbus SAS and Boeing Co. Airbus this week called for an industry standard that would provide for a seat at least 18 inches (46 cm) wide in economy cabins, but its U.S. arch-rival Boeing says it should be for airlines to decide. The dispute comes as plane makers vie to sell ever-larger versions of their twin-engined long-distance aircraft, with potentially record orders expected at the November 17-21 event. How the back of the plane is laid out - particularly whether seating is 9 or 10 abreast - is central to the economic performance claims being made for new "mini-jumbo" jet designs. Boeing says its revamped "777X" will hold 406 people based on economy seats more than 17 inches wide and set out 10 in each row. Airbus says the competing version of its A350 will carry 350 people in 18-inch-wide economy seat laid out 9 abreast. Plane giants often trade blows on technical matters through advertising in the trade press. Now, Airbus is appealing directly to the public ahead of the Dubai Airshow, where the 777X is expected to dominate with more than 100 orders. It recently previewed what may be the start of a new ad war by showing financiers a slide illustrating three people squashed together at a restaurant, titled "Would You Accept This?" "Boeing is proposing long-distance flying in seats narrower than regional turbo-props," said Airbus sales chief John Leahy. As diets change, people get bigger but plane seating has not radically changed. Between the early 1970s, when the Boeing 747 jumbo defined modern long-haul travel, and the turn of the century, the weight of the average American 40- to 49-year-old male increased by 10 per cent, according to U.S. Health Department Data. The waist of the average 21st-century American male is 39.7 inches, according to U.S. health statistics. Airbus says its rival is sticking to a seat concept from the 1950s, when the average girth of the newly christened "jet set" was narrower. Airbus says it has commissioned research suggesting an extra inch in seat width improves sleep quality by 53 per cent. Boeing disputes Airbus's figures on seat measurements and says it is not up to manufacturers to step into decisions on how airlines balance fares and facilities. It also says research shows cabin experience depends on more than the width of a seat. "It really comes down to providing flexibility to airlines and allowing them to do the things that they believe they need to do to be successful," said Boeing cabins expert Kent Craver. They don't want us to dictate to them what makes them profitable. They know their business better than anyone else. For flyers it is about more elbow room, but for suppliers it is increasingly an issue that could affect earnings. Behind the dispute is a race for plane orders with at least $700-billion of estimated business at list prices in coming decades, enough to tip the scales of U.S. and European exports. As Reuters first reported in July, seat layout is exactly what drives the battle between the latest jets. Both Airbus and Boeing claim 20 per cent better efficiency per seat in their latest twin-engined long-haul designs than the market leader in that segment, the 365-seat Boeing 777-300ER. Boeing's performance claims depend in part on comparing the 10-abreast 777X with an original 9-abreast 777 design. The gain in unit costs is blunted compared with 10-abreast now in use. "The reason Boeing are doing this is to cram more seats in to make their plane more competitive with our products," said Kevin Keniston, head of passenger comfort at Europe's Airbus. On the other hand, analysts say full 10-seat-per-row cabins for existing 777s suggest many passengers are voting for the denser layout, which may go hand in hand with cheaper fares. "Eighteen inches in seat width would be great for passengers, but the reality is that from a business point of the Airbus proposal is driven by the threat of the 777," said cabin interiors expert Mary Kirby, founder and editor of the Runway Girl Network. Airbus and Boeing do not supply seats but offer a catalogue of suppliers for airlines to choose from. Globe-trotting jet sellers even carry tape measures to check on competing layouts. While boasting comfort, all builders also offer jets with high-density layouts for low-cost airlines and regional travel. Airbus offers a 10-abreast A350 but says it has not yet sold it. Until recently, Airbus was stressing the need for more cabin customization by offering wider aisle seats on some of its jets. Without the support of the only other maker of large modern jets, experts say its call for a new industry standard is unlikely to fly, but could distract from a wave of 777X sales. New anti-nicotine vaccine could take the pleasure out of smoking Scientists have developed an anti-nicotine vaccine that could take the pleasure out of smoking a cigarette. A single dose of the vaccine was able to protect mice against nicotine addiction for life. Further tests are needed before starting human trials, which would take several years, but Professor Ronald Crystal of Weill Cornell Medical College in New York said the early signs are good. "We are very hopeful that this kind of vaccine strategy can finally help the millions of smokers who have tried to stop, exhausting all the methods on the market today, but find their nicotine addiction to be strong enough to overcome these current approaches," Prof Cornell said. The new vaccine contains a harmless virus that has been engineered to carry the genetic information to make anti-nicotine antibodies. The virus selectively infects liver cells, which then start to make a steady stream of the antibodies. The antibodies hunt down any nicotine molecules in the bloodstream, neutralising them before they reached the brain, preventing a smoker from getting a nicotine hit. In tests, vaccinated mice who were subsequently given nicotine continued with their normal activity. But mice who had not been given the vaccine "chilled out," say the researchers, a sign that the nicotine had reached their brains. The experiments are described in the journal Science Translational Medicine. Previous tobacco vaccines failed because they contained antibodies. The jabs had to be given so frequently to keep antibody levels topped up that they proved expensive and impractical. But the cost of the new vaccine is likely to be far lower, because it turns liver cells into antibody factories. Prof Crystal said that if a future human vaccine was completely safe it could be given to children before they were tempted to try a cigarette, preventing nicotine addiction. But more likely it would be used by smokers to quit. "They will know if they start smoking again, they will receive no pleasure from it due to the nicotine vaccine, and that can help them kick the habit," he said. British scientists said the results were interesting but warned far more research was needed. Tripodi denies being influenced by Obeid Former NSW Labor minister Joe Tripodi will be investigated by the state's corruption watchdog. Former NSW minister Joe Tripodi has denied changing maritime leases policy at the request of his political mentor Eddie Obeid, who had hidden interests in three properties on government-controlled land. The Independent Commission Against Corruption (ICAC) on Friday widened its inquiry into whether Mr Obeid lobbied several state ministers to have leases at Circular Quay, where the Obeids owned two restaurants and a cafe, renewed without going to tender after their expiration in August 2005. It's now investigating allegations Mr Tripodi knew of Mr Obeid's secret interest in the properties, after evidence given by Mr Tripodi's former deputy chief of staff, Lynne Ashpole, on Thursday. During years of discussions starting in 2005 the government had been pushing for the leases to go to public tender. The lessees were against this and also wanted longer terms. In 2009 leases for the Circular Quay enterprises, which earned the Obeids about $2.5 million annually, were renewed without going to public tender. Mr Tripodi, who was ports minister from February 2006 until November 2009, was initially in favour of public tenders. But he denied the changes were made at the request of Mr Obeid, who Mr Tripodi acknowledged was urging a shift in government lease policy. A phone transcript tabled in ICAC showed calls in August and September 2007 between Mr Obeid, Mr Tripodi and Steve Dunn, a senior bureaucrat who had come into the ports ministry after working under Mr Obeid in the fisheries department. "Was the matter being discussed in the course of these telephone conversations the development of the commercial lease policy," Assistant Commissioner Anthony Whealy asked Mr Tripodi. "No," Mr Tripodi replied. I can't remember what was discussed but it definitely wasn't that. Definitely not between myself and Mr Obeid. Israeli warplanes attack target inside Syria, official says Israeli warplanes struck a target inside the Syrian port city of Latakia Thursday night, a senior administration official confirms to Fox News. The official did not specify what the target was, but said there was at least one. The Associated Press reports the target was Russian-made SA-125 missiles. At least twice earlier this year Israel launched airstrikes on shipments of missiles inside Syria. Foreign workers on 457 visas could undergo "genuineness" test A "genuineness" test for foreign workers on 457 visas is being considered by the government as it contemplates expanding a crackdown. The test, if adopted, would be applied through a criteria aimed at preventing 457s being used to fill unskilled positions or as a back door way to move family and friends to Australia. A government discussion paper was released today as former Labor MP Maxine McKew slammed the government's rhetoric about foreign workers, saying it could offend Australia's neighbours. "Loud declarations about 'foreigners getting to the back of the queue' and 'Aussie jobs first' are a very unpleasant throwback to a time when unions demanded a protected labor market," she told the Australia India Institute today. Historically, that meant it was white labour that had to be protected - and if some in the region saw echoes of that historic artifact, I wouldn't be surprised. The discussion paper outlines 12 measures that were previously considered by former Immigration Minister Chris Bowen. Immigration Minister Brendan O'Connor, who was yesterday in Sri Lanka where he is meeting officials about people smuggling, has implemented five of the recommended changes with the remainder under consideration. If the "genuineness" criteria was adopted a visa applicant could be scrutinised about "whether the nomination is genuine in circumstances where the nominee is a relation or personal associate of an owner or relevant person of the sponsoring business." Businesses could also be required to account for the number of 457 visa holders after previously businesses who had intended to sponsor a small number of workers then employed hundreds. Meanwhile, a 35-year-old Sri Lankan asylum seeker died of a suspected heart attack after arriving on an asylum boat at Christmas Island this week. The man's distraught nine-year-old son travelled to Australia with him and has been comforted since the death of his father on Wednesday by an adult cousin who was also on the vessel. Australian authorities rushed the man to Christmas Island Hospital, where he died. A study aiming to increase the benefits to Scotland of the HS2 rail project has been announced by the UK government. The work by HS2 Ltd suggests high-speed services to Scotland and the north of England will start as soon as Phase One opens in 2026. Transport minister Baroness Kramer said the project would "bring the UK together." Scottish transport minister Keith Brown said he was "excited" to work with the UK government on the plan. Phase One will consist of a new high speed rail line between London and the West Midlands. When Phase Two is completed, lines will run to Manchester and Leeds. In June the government revised the estimated cost of building the high-speed link between London and the North of England from £32.7bn to £42.6bn. The UK government, which has been holding talks with Transport Scotland, has instructed HS2 Ltd to look at further rail capacity and journey time improvements for northern England and Scotland. This is to include the possibility of eventual journey times from Glasgow and Edinburgh to London of three hours or less. Baroness Kramer said: "Our goal for HS2 is for a truly national network that will bring the UK and its cities closer together." We are driving forward HS2 because the benefits it will bring are huge. Without it we face a crisis in capacity on our rail network. But it is also about connectivity, across the UK 18 cities including Glasgow and Edinburgh will be better connected because of HS2. Scottish Secretary Alistair Carmichael added: "Today's announcement is good news for Scotland." For the Scottish government, Keith Brown called on Mr Carmichael to "unequivocally" back Scotland's inclusion in the HS2 network. Mr Brown said: "High speed rail has the potential to bring huge economic benefits to Scotland, but also adds Scotland's economic weight to the overall case for high speed rail across Britain." So we are excited to work in partnership with the UK Government to examine options for bringing high speed rail to Scotland, creating benefit for all and complementing the Glasgow-Edinburgh line which the Scottish Government is already planning. I look forward to reviewing the report of the investigation with UK ministers next year and together decide on the next steps. Aircraft electronic device rules to stay in force in Australia for now Australian airline passengers will need to continue turning off their tablets and smart phones during take-off and landing despite moves in the US to loosen regulations covering the devices. The US Federal Aviation Administration has left the way open for American carriers to change their procedures so that passengers will be able to read e-books, watch videos or play games on their devices during critical phases of flight provided they remain in "airplane" mode. Passengers can already do this during the bulk of a flight but many people find it annoying to be unable to access their e-books during take-offs and landings. Australian carriers are looking at the decision, which requires US carriers to undertake a massive amount of work to meet the requirements, but have indicated they have no immediate plans to change their procedures. The Civil Aviation Safety Authority also said it was looking at the announcement but emphasised that restrictions on the use of electronic devices in critical phases of flight were still in place in Australia. "CASA currently has no specific regulations governing the use of electronic devices in aircraft," it said. The issue is covered by regulations which require aircraft operators to ensure safety is maintained at all times and passengers to comply with the safety instructions given by crew members. Virgin, which has already been talking to CASA about extending the use its in-flight wi-fi entertainment system, was amenable to a change but said it would take its lead from the regulator. "We would welcome a review by CASA into allowing the use of electronic devices because we really do think it will improve the customer experience now that we have (wireless in-flight entertainment) on our planes," a spokesman said. Qantas said it would stick with the current rules for now. "Our current policy is that electronic devices cannot be used during take-off and landing and we have no immediate plans to change that," it said. The FAA ruling applies to American airlines. However, we are always interested in regulatory developments that could benefit passengers and we will certainly be taking a close look at the FAA's decision and the reasons behind it. For US carriers, the impact of the ruling will vary from airline to airline and will depend on the age of their fleet. Carriers will need to prove their planes can tolerate radio interference from mobile devices as well as revise manuals, training materials, carry-on baggage programs and passenger briefings. "Once an airline verifies the tolerance of its fleet, it can allow passengers to use handheld, lightweight electronic devices such as tablets, e-readers, and smartphones-at all altitudes," the FAA said. In rare instances of low visibility, the crew will instruct passengers to turn off their devices during landing. The group also recommended that heavier devices should be safely stowed under seats or in overhead bins during take-off and landing. Travelling BVB fans created terrible scenes with flares in the Veltins Arena before the district derby against Schalke Borussia Dortmund announced that there would be serious consequences. Before Friday's Bundesliga match against VfB Stuttgart, the 'Ultras' responded with silence - initially. It was an unusual, almost ghostly atmosphere that the fans created until shortly before the kick-off of the Bundesliga match between the German runners-up Borussia Dortmend and VfB Stuttgart, in the Signal Iduna Park. It was mainly the chants of away fans that could be heard. The south stand, on the other hand, where the most loyal - and the loudest - of BVB fans stand, was initially unusually quiet: No singing and no battle cries. The 'Capo's' podium, the individual who usually coordinates the unison chants, remained empty. And right at the front, on the stand, a single large flag with the text "Stadium Ban Section" blew in the wind. Only when goalkeeper, Roman Weidenfeller, was the first BVB player to step onto the field, did cheers briefly erupt, as is usually the case. When his team mates followed, there was loud singing and scarves were waving - but by no means everywhere. In the central blocks of the south stand, blocks 12 and 13, nothing moved. Even stadium announcer, Norbert Dickel, speaking once again of the successful results in recent days - the derby victory, the win against Arsenal, the contract extension of coach Jörgen klopp - did not raise spirits. Just five minutes before kick-off, the Capo climbed onto his podium - and the tension that had been almost tangible up until that point, lifted with a large shout, as Dickel asked for a shout from each section of fans as usual. As always, the south stand was left until the end, and finally the stand resumed its usual role as the loudest section of the stadium. And as soon as the vociferous request for "derby winners stand up" came from the south stand upon kick-off, everything was back to normal. The previous silence was indeed a reaction to the events of previous days. Immediately before the local district derby against FC Schalke 04, some of the travelling BVB fans fired flares into the crowds of spectators and onto the pitch - and in so doing almost hit goalkeeper Roman Weidenfeller. The kick-off was delayed on account of the chaotic scenes, As a result, BVB Chairman Hans Joachim Watzke had invited the heads of the Dortmund Ultras fan group to his office - and if Watzke's words are to be believed, this was a rather uncomfortable meeting for the fan representatives. "There will be massive impact for the entire Ultra movement," announced the BVB Chairman on Thursday evening at a panel discussion in Frankfurt. As an immediate measure, Watzke prohibited the Ultras from organising choreography for the home match against VfB Stuttgart. "I have banned it," he explained. We cannot ignore the zero tolerance policy regarding pyrotechnics in Saxony. In addition, the Ultras were given the option of several different punishments - they now have until Tuesday to decide which one to accept. Otherwise BVB will impose a sanction by the end of next week, said Watzke. "It will be severe," assured Watzke. It will be interesting to see the reactions in the south stand then. Pawnbrokers shine in Singapore as middle class feel the pinch At a pawnshop in Bendemeer shopping centre in Singapore, Janani Amirthalinga is swapping a gold bangle, ring and pair of earrings to pay her daughters" school fees. "My husband and I have just bought a house so all my money's stuck there," Mrs Amirthalinga says. Even though she earns S$3,000 ($2,400) a month as an administrator and her husband works as well, the monthly family income is insufficient, she says. Indeed, such is demand across parts of southeast Asia - where household debt is rising - that ValueMax, where she is carrying out her transaction, this week became the third pawnshop to list on the Singapore stock exchange. Pawning jewellery is not merely a fast way to land cash - S$1,300 in Ms Amirthalinga's case - but almost as cheap as unsecured bank loans. Typically pawnbrokers in Singapore charge an effective annual percentage rate of 17 per cent, just above the 15.4 per cent offered at United Overseas Bank, a local lender with a branch in the same shopping centre. However, pawnbrokers have the advantage of not requiring credit checks or proof of salary, and can arrange loans faster than banks. Hence millions of people across the region are turning to pawnshops as families feel the squeeze from rising living costs and ballooning household and consumer debt. After five years of robust growth since the global financial crisis, and cheap credit fuelled by loose monetary policy in advanced economies, lower- and middle-income families are turning to pawn shops to make up the difference as their economies slow. This week Standard & Poor's, the rating agency, cited increasing household leverage, mainly from rising mortgages, as a risk factor for Asian banks" creditworthiness. It said that Malaysia, Thailand and Singapore had the highest household debt to gross domestic product ratios in Asia. Malaysia topped the list at 80 per cent of GDP, up from 60 per cent in 2008. Economists are also worried about high levels of consumer debt in Thailand, which this week narrowly emerged from technical recession. On Thursday, data showed continued export weakness, and a softening in consumer demand. "Bottom line is that with costs rising, people in the middle to lower end [of the income scale] will be looking to supplement their income wherever they can," says Song Seng Wun, economist at CIMB, a Malaysian bank. Historically high prices for gold in the past two years have added to the rush to pawn personal belongings, as people take the opportunity to cash in the value of their family jewellery. In Singapore, about 70 per cent of items pawned at the city-state's 200 pawn outlets are gold. People are saying "the gold price looks good, let's pawn grandma's gold chain and get it back next month. In Thailand the largest pawnshop operator, EasyMoney, has seen an up to 20 per cent rise in the number of customers using its outlets in recent months. Such is the growth in the pawn business that ValueMax, operator of the outlet at Bendemeer and of 15 others like it in Singapore, plans to expand not only in neighbouring Malaysia - where it has four shops - but outside Asia too, says Yeah Lee Ching, ValueMax's executive director. The company will fund that by using 60 per cent of S$66m it raised this week in a listing on the Singapore stock exchange. While some discount lenders have come under fire for high interest rates, Ms Yeah says that not only does pawning offer cheaper rates than other lenders, it also does not add directly to debt. "Customers are mortgaging items that they already own, and monetising personal assets does not increase household debt," she says. There's an increased social acceptance of pawnbroking as a means to secure short term, secured financing. Nor are the types of people who use pawnbrokers only the financially stretched. Wealthy people in Singapore also use ValueMax outlets, pawning gold bars or Rolex watches, which can command up to 60 per cent of their purchase price in cash. We see customers from all walks of life. "They include wealthy individuals who need to borrow short term for business ventures or investments, or small businesses with a need to tide over their cash flow needs," says Ms Yeah. Sometimes they just need the money very quickly. NSA siphons data from Google and Yahoo - Snowden wants to help Secret Service whistleblower, Edward Snowden, has a fundamental interest in helping Germany clarify the increasingly explosive NSA espionage scandal. According to Green Party MP. Hans-Christian Ströbele, his surprising meeting with Snowden in Russia addressed the conditions under which the former Secret Service employee would make a statement to a German District Attorney or before an investigation committee. Snowden referred to his complex legal situation, Ströbele said on ARD's "Panorama" programme. $325m rescue package for Tassie health The Federal Government insists a $325 million rescue package for Tasmania's ailing health system has tough conditions attached that will ensure the State Government can't waste the funds. Federal Health Minister Tanya Plibersek has announced the Commonwealth is taking "urgent action" to head off a crisis caused by the island state's aging population, higher rates of chronic disease and system constraints. The funding, over four years, was decided after government consultations with Tasmanian independent MP Andrew Wilkie. "The Government has come up with an emergency rescue package we believe will address the unique challenges faced by the state," Ms Plibersek said today. The $325 million package includes a $31 million elective surgery blitz. An additional 2600 operations including orthopedic and cataract surgery will help clear a backlog. There's also money for walk-in clinics in Hobart and Launceston, better after-hospital care, medical specialist training, mental health services and the rollout of personal electronic health record systems in local hospitals. "These investments respond to the ideas that front-line clinicians have told me will be the best ways to tend to Tasmania's health system," Ms Plibersek said. The minister insisted the Tasmanian Government would face a strict reporting and accountability regime. The state would have to maintain current funding levels in order to receive Commonwealth cash and report monthly on where it was spending the extra funds. A three-person commission will be set up to ensure the state is delivering services as effectively and efficiently as possible. Mr Wilkie today said the $325 million would count for little "unless it's followed by genuine reform to put Tasmania's public health system on a more sustainable footing." He nevertheless praised the Government for responding to his request for urgent assistance which he first raised with the Prime Minister at the beginning of May. "I'm hopeful the federal assistance package will go a long way towards taking the state's public health system off the critical list," Mr Wilkie said. According to the State Government these additional elective procedures will largely reverse the recent cuts. But federal Opposition health spokesman Peter Dutton believes today's announcement is a "band-aid solution." "The reason we are here is that the Labor State Government ripped $430 million out of its health system," he told ABC TV. You can't have a state government ripping out almost half-a-billion dollars and the Commonwealth put in $300 million and pretend it's a good news day. Mr Dutton called on Ms Plibersek to guarantee that not one dollar out of the rescue package would be spent on additional bureaucracy. Guillaume Nicloux's adaptation of Denis Diderot's novel boasts exceptional production design and period detail but is also heavier going than it should be. Unfolding in 1760s France, it tells the grim story of Suzanne, a young aristocrat sent to a convent by her family. When she rebels, she experiences extreme cruelty at the hands of a wantonly sadistic Mother Superior and becomes an object of erotic fascination for another. The film never slips into prurience or sensationalism - and that's the problem. The earnest solemnity of the storytelling risks making it a hair shirt-like ordeal for audiences, too. Syria has destroyed its chemical weapons making ability, watchdog group says Syria has destroyed critical equipment for producing chemical weapons and poison gas munitions, the global chemical weapons watchdog said Thursday as fierce clashes raged in the country's north, close to one of the sites where toxic agents are believed to be stored. Also Thursday, a Syrian activist group said more than 120,000 people have been killed since the start of the country's civil war nearly three years ago. The announcement by the Organization for the Prohibition of Chemical Weapons came one day ahead of the Nov. 1 deadline set by The Hague-based organization for Damascus to destroy or "render inoperable" all chemical weapon production facilities and machinery for mixing chemicals into poison gas and filling munitions. The completion of what is essentially the initial stage of destruction is a significant milestone in an ambitious timeline that aims to destroy all of Damascus' chemical weapons by mid-2014. Destruction of the equipment means that Syria can no longer produce new chemical weapons. However, Damascus still has to start destroying existing weapons and stockpiles. The country is believed to have around 1,000 metric tons of chemicals and weapons including mustard gas and the nerve agent sarin. The announcement came as fighting raged Thursday in the town of Safira, which experts say is home to a chemical weapons production facility as well as storage sites, reported the Britain-based Syrian Observatory for Human Rights. The activist group, which has been tracking the death toll through a network of activists in Syria, said Thursday that 120,296 people have died. Of those, it said 61,067 are civilians, including 6,365 children. On the government side, it said 29,954 are members of President Bashar Assad's armed forces, 18,678 are pro-government fighters and 187 are Lebanese Hezbollah militants. Also among the dead it said were 2,202 army defectors and some 5,375 opposition fighters, many of them foreigners. On July 25, the U.N. estimated 100,000 have died in the conflict since March 2011. It has not updated that figure since. The conflict has forced some 2 million people to flee the country. Assad's troops have been battling rebels, many of them linked to al-Qaida groups, in Safira for weeks. The Observatory said there were casualties on both sides Thursday but had no specifics. The fighting underscored the dangers the chemical weapons' inspectors face as they race against tight deadlines in their mission to rid Syria of the toxic arsenal in the midst of an ongoing civil war. A statement from the OPCW, which works closely with the United Nations, said its team was "now satisfied that it has verified - and seen destroyed - all of Syria's declared critical production and mixing/filling equipment." It added that, "no further inspection activities are currently planned." Earlier this week, the inspectors said they had completed their first round of verification work, visiting 21 of 23 sites declared by Damascus. They were unable to visit two sites because of security concerns, the inspectors said. On Thursday, OPCW said the two locations were, according to Syria, "abandoned and ... the chemical weapons program items they contained were moved to other declared sites, which were inspected." It was not immediately clear if the facility in Safira was one of the two sites that OPCW inspectors were not able to visit. Syria has submitted a plan for the total destruction of its chemical weapons that has to be approved next month by the OPCW's executive committee. "I salute the fortitude and courage you've all demonstrated in fulfilling the most challenging mission ever undertaken by this organization," the watchdog's director-general, Ahmet Uzumcu, said in comments released by the OPCW. Now in its third year, the civil war pits the primarily Sunni Muslim rebels against Assad's government and its security forces, which are stacked with members of his Alawite sect, an offshoot of Shiite Islam. In other developments, the Observatory's chief Rami Abdurrahman said there had been a strong explosion Wednesday inside an air defense facility in Syria's coastal province of Latakia. The cause of the blast was not known, he said. Anger over Bali bomb plotter's sentence Survivors and relatives of the 202 people killed in the 2002 Bali bombing have reacted with anger over the sentence given to the last of the plotters to face justice, saying Umar Patek should face a firing squad. Patek, who spent almost 10 years on the run as one of South-East Asia's most wanted, was yesterday sentenced to 20 years in jail for his role in building the explosive devices used in the bombing. He could be released within 15 years if granted parole. The 45-year-old was found guilty of mass murder for the attack on two nightclubs in the popular tourist area of Kuta which left 202 people dead, including 88 Australians, and injured scores more. He was also found guilty of a number of other terrorism-related charges, including a wave of bombings of churches across Indonesia on Christmas Eve in 2000. Prosecutors had demanded a life sentence, although they could have pushed that the man dubbed the "Demolition Man" for his reputation as a master bomb-maker be sentenced to death. The decision has reignited painful memories for Perth mother June Corteen, who lost her 39-year-old twin daughters Jane and Jenny in the destruction unleashed by Patek and his co-conspirators almost a decade ago. Fighting back tears, she said Patek should have been sentenced to death. I really feel that he should follow in the footsteps of the other guys. "He should be put in front of the firing squad," Ms Corteen told AAP. I have to live every day without seeing more grandchildren, and my daughters. The Sari Club was levelled when a massive bomb loaded into a van parked outside was detonated just after 11pm on October 12, 2002. Peter Hughes was in Paddy's Bar where a suicide bomber detonated a backpack loaded with explosives just 20 seconds earlier. He lapsed into a month-long coma in the wake of the bombing, and "died" three times while on life support. Mr Hughes said Patek should have shared the same fate as three other members of the Jemaah Islamiah terror cell responsible for the carnage - Amrozi, Mukhlas and Imam Samudra - who were executed four years ago. Really, this guy should get the death penalty before anybody. To keep him alive, well, there's no reason to keep him alive. To get 20 years, after killing 202 people and injuring many hundreds, it's not much. Patek is the last of the Bali bombers to face justice. He had avoided capture for almost a decade but was eventually apprehended in January 2011 in the Pakistani town of Abbottabad, where US forces killed former al-Qaeda chief Osama bin Laden less than four months later. During the trial, an FBI agent testified that intelligence reports had revealed Patek was in Pakistan to meet with bin Laden in an effort to re-establish links between South-East Asian terrorist groups and al-Qaeda. "He didn't give himself up," Ms Corteen said. Until just recently, he really didn't feel sorry for how much grief he caused other people. The verdict comes ahead of the 10th anniversary of the attack later this year, which will be marked by ceremonies in Bali and Australia. "There will be a lot of tears this year," Ms Corteen said. Patek may yet appeal his sentence. FAA: Air passengers can now use gadgets on planes (but not make cell phone calls) Airline passengers will be able to use their electronic devices gate-to-gate to read, work, play games, watch movies and listen to music - but not talk on their cellphones - under much-anticipated new guidelines issued Thursday by the Federal Aviation Administration. But passengers shouldn't expect changes to happen immediately. How fast the change is implemented will vary by the airline, FAA Administrator Michael Huerta said at a news conference. Airlines will have to show the FAA how their airplanes meet the new guidelines and that they've updating their flight crew training manuals and rules for stowing devices to reflect the new guidelines. The FAA said it has already received plans from some airlines to expand the use of portable electronic devices on planes. Delta and JetBlue were among the airliners who have already submitted plans. "Depending on the condition of the plan, we could approve expanded use of electronic devices very soon," the FAA said in a statement. Currently, passengers are required to turn off their smartphones, tablets and other devices once a plane's door closes. They're not supposed to restart them until the planes reach 10,000 feet and the captain gives the go-ahead. Passengers are supposed to turn their devices off again as the plane descends to land and not restart them until the plane is on the ground. Under the new guidelines, airlines whose planes are properly protected from electronic interference may allow passengers to use the devices during takeoffs, landings and taxiing, the FAA said. Most new airliners and other planes that have been modified so that passengers can use Wifi at higher altitudes are expected to meet the criteria. Laura Glading, president of the Association of Professional Flight Attendants, welcomed the changes. "Once the new policy is safely implemented - and we're going to work closely with the carrier to do that - it will be a win-win," Glading said in a statement. We're frankly tired of feeling like 'hall monitors' when it comes to this issue. But connecting to the Internet to surf, exchange emails, text or download data will still be prohibited below 10,000 feet, the agency said. Passengers will be told to switch their smartphones, tablets and other devices to airplane mode. So, still no Words With Friends, the online Scrabble-type game that actor Alec Baldwin was playing on his smartphone in 2011 when he was famously booted off an American Airlines jet for refusing to turn off the device while the plane was parked at the gate. And heavier devices such as laptops will continue to have to be stowed because of concern they might injure someone if they go flying around the cabin. In-flight cellphone calls also will continue to be prohibited. Regulatory authority over phone calls belongs to the Federal Communications Commission, not the FAA. FAA may lift ban on some electronic devices during takeoff and landing Last month, National Transportation Safety Board Mark Rosenker, a CBS News national transportation safety expert, said that cell phones are still considered a risk. "Cell phones, that really is an issue, not just because potentially it could create interference with navigational devices, but we do know, according to the FCC, that it could interfere with cell phone towers when they're in the air," Rosenker said. An industry advisory committee created by the FAA to examine the issue recommended last month that the government permit greater use of personal electronic devices. Pressure has been building on the FAA in recent years to ease restrictions on their use. Critics such as Sen. Claire McCaskill, D-Mo., contend there is no valid safety reason for the prohibitions. The restrictions have also become increasingly difficult to enforce as use of the devices has become ubiquitous. Some studies indicate as many as a third of passengers forget or ignore directions to turn off their devices. The FAA began restricting passengers' use of electronic devices in 1966 in response to reports of interference with navigation and communications equipment when passengers began carrying FM radios, the high-tech gadgets of their day. New airliners are far more reliant on electrical systems than previous generations of aircraft, but they are also designed and approved by the FAA to be resistant to electronic interference. Airlines have been offering Wi-Fi use at cruising altitudes to passengers for several years. Planes modified for Wi-Fi systems are also more resistant to interference. The vast majority of airliners should qualify for greater electronic device use under the new guidelines, Huerta said. Today's electronic devices generally emit much lower power radio transmissions than previous generations of devices. E-readers, for example, emit only minimal transmissions when turning a page. But transmissions are stronger when devices are downloading or sending data. Among those pressing for a relaxation of restrictions on passengers' use of the devices has been Amazon.com. In 2011, company officials loaded an airliner full of their Kindle e-readers and flew it around to test for problems but found none. FAA advisory committee members expressed mixed feelings about whether use of the devices presents any risk. Douglas Kidd of the National Association of Airline Passengers said he believes interference from the devices is genuine even if the risk is minimal. Other committee members said there are only anecdotal reports from pilots to support that the devices can interfere with aircraft systems, and most of those reports are very old. However, the committee recommended the FAA allow pilots to order passengers to shut off devices during instrument landings in low visibility. A travel industry group welcomed the changes, calling them common-sense accommodations for a traveling public now bristling with technology. "We're pleased the FAA recognizes that an enjoyable passenger experience is not incompatible with safety and security," said Roger Dow, CEO of the U.S. Travel Association. Bird airlifted to safety from North Sea rig released back into wild A bird airlifted ashore after being found exhausted on a North Sea oil rig has been released back into the wild. The water rail was put on a helicopter to Aberdeen last month before being nursed back to health by the Scottish SPCA at its rescue centre in Alloa. Centre manager Colin Seddon said: "This water rail was likely a winter migrant from Northern Europe who got caught up in strong winds over the North Sea." It seems the bird became exhausted and managed to find refuge on the oil rig. He added: "It was unable to fly off again so we were contacted for help." The water rail was fit and well by the time it was released. Is Europe's elite ready to do business with Britain? Business for Britain launched in April with a pledge to bring business together and define what the UK's wealth and job creators want to see changed in our relationship with the EU. To that end, we commissioned the largest and most comprehensive poll of British business leaders asking them for their thoughts on Britain, business and the EU. YouGov polled over 1,000 business leaders, broadly representative of Britain's business sizes, sectors and regions. The conclusions of the poll will come as a surprise to many. We found that the vast majority of businesses are now looking to export outside of Europe, focusing on countries that are modernising and growing while the EU states stagnate. They want to see the Government prioritise new trading links with the likes of China, India and Brazil, rather than getting bogged down in the long and arduous process of reforming the EU's arcane institutions. When asked their views on specific policy areas - ranging from monopoly regulation to product laws - the majority of business leaders thought that control of these key competences should be returned to Westminster. There was general discontent with the Single Market, with businesses saying that the costs of Brussels regulation now outweighed the benefits of being part of Europe's trading area - even 40 per cent of large businesses, traditionally the most pro-European of companies, agreed. Finally, and most tellingly of all, our poll of business leaders found a clear majority wanted to see Britain pursue a course of treaty change and a relationship with the EU that is based on trade, not politics. This finding, which was reflected across the sizes and major business groups, shows that business is pushing for a "meaningful change" that brings powers back to the UK. The stakes are high - achieving treaty change and a better deal for Britain sees a 16 per cent swing towards voting to stay in the EU in a referendum. The Prime Minister should be in no doubt: this poll shows that British business backs his plan for renegotiating the terms of Britain's membership of the EU. It also shows that business expects that renegotiation to make a significant shift in the current balance of power back towards the UK. A better deal for British business is possible, and increasingly necessary as the eurozone embarks on the road to closer economic and fiscal union. The priority must be jobs and growth in Britain and, as the findings of our poll show, for business this means a renewed focus on trade and a fundamental change in Brussels" regulatory approach. Gazprom's Alexei Miller says pipeline in Bulgaria starts new gas era The start of construction of the South Stream gas pipeline in Bulgaria marks the launch of one of Europe's largest energy projects, Gazprom's chief said. "A landmark event has taken place today: Construction started on the Bulgarian section of the South Stream gas pipeline, the most large-scale and important project in Europe," Gazprom Chairman Alexei Miller said in a statement Thursday. This project is a key element of energy security of the whole European continent. South Stream is meant to add diversity to Russia's export routes through Europe. A contractual dispute between Gazprom and its counterparts in Ukraine, which hosts most of Russia's gas for Europe, adds a layer of risk to conventional routes, officials say. Miller said the direct connection to Bulgaria, a member of the European Union, means geopolitical risks associated with transit countries are eliminated "forever." Bulgarian consumers will receive gas from South Stream at a discounted rate once the entire project starts operating in 2015. Gazprom said construction should begin in other downstream countries by year's end. The pipeline is designed for an annual capacity of 2.2 trillion cubic feet of natural gas. Nothing beats Germany as a property location for national and international investors. The economic situation is right, and the financing options are fantastic. This was the message of the 9th 'Immobilientag' (Property Day) organised by the Börsen Zeitung (stock exchange newspaper). The German property markets are benefiting from the country's economic strength and general conditions which, compared with the rest of Europe, are very competitive. This was pointed out by Christian Ulbrich, Jones Lang LaSalle CEO for Europe, the Near East and Africa, at the 9th 'Immobilientag' (Property Day) organised by the Börsen Zeitung (stock exchange newspaper). The extent to which German commercial properties are sought after is evident in the transaction volumes, said Ulbrich. In the first three quarters of this year, there was an increase of 31% compared to the same period the year before. In Great Britain, growth stands at just 6%, and in France at 19%. "Property investments offer an attractive rate of return," said Ulbrich. The yield gap between properties and federal government bonds is at a historically high level. The FAA is easing restrictions on the use of electronic gadgets on airplanes - though chatting on cellphones will still be prohibited. Warplanes attack a store of Russian missiles in the port city of Latakia, an official says. It's an apparent continuation of Israel's campaign to keep arms from proliferating in the Mideast. A federal appeals court blocks a judge's ruling that the NYPD's controversial tactic discriminates against minorities. Nearly 100 African migrants hoping to travel to Algeria die of thirst after their two trucks break down in the middle of the Sahara. Experts say violence that left 14 adults and seven children dead is nothing more than random chance, not a sign of growing violence in America. Rather than being rattled by the U.S. government shutdown, investors kept their focus on what probably matters more: the Federal Reserve. The California woman plans to challenge what may be a first-of-its-kind citation, saying the Internet-connected eyewear makes navigation easier. Police say they have a video that appears to show Mayor Rob Ford smoking a crack pipe. Even close allies keep things from one another - and work every angle to find out what's being held back. The Vatican wants to know how Catholic parishes around the globe handle sensitive issues like contraception, divorce and gay couples. Two YMCA employees charged with sex offences before allegations against Jonathan Lord, Royal Commission hears Two YMCA NSW employees had been charged with child sex offences before allegations were raised against Caringbah child care worker Jonathan Lord in 2011, the child sexual abuse Royal Commission has heard. But in its opening statement to the Commission it said it had "never dealt with an incident of child sexual assault within its organisation," the Commission was told. Chief executive officer Phillip Hare was asked about one case where a YMCA employee was charged child pornography offences, and another when a gym instructor at the YMCA Caringbah Hall was convicted of child sexual offences against children in his care in 1991. Mr Hare told Gail Furness, counsel assisting the Commission, he knew about the first case but did not know about the second one. He conceded the YMCA's opening statement to the commission was also inaccurate in claiming "there have been external audits of the YMCA that have recognised the YMCA as being at the forefront of child safety." Evidence before the commission is that YMCA was notified that it received the second lowest of four possible ratings in a Department of Education and Communities quality audit in August this year. Mr Hare, who started with the YMCA when he was 21, conceded management "from myself down" failed by recruiting Lord and failed to make sure staff were clear about their obligations to report child safe policy breaches. Earlier this year Lord was convicted for sexual offences against 12 boys during the two years he worked at the YMCA. He was jailed for a minimum of six years. But Mr Hare rejected the suggestion the YMCA had a cultural problem which prevented staff from reporting Lord's breaches of child safety. Staff gave evidence they observed breaches including Lord being alone with children, babysitting them privately, having them sit on his lap, saying he loved one and letting them play with his mobile phone. Danielle Ockwell, who was supervised by Lord and asked for child protection training because she was concerned about his behaviour, testified she found the YMCA Caringbah children's services manager Jacqui Barnat who supervised Lord "very intimidating and hard to approach a lot of the time." The CEO said he did not accept staff's evidence that they were uncomfortable with reporting upwards to their managers. Rather, he said, their friendships with Lord clouded their judgements about reporting him. Mr Hare said he had provided his view to the YMCA NSW board that the lesson for the organisation from the "Jonathan Lord incident" was "not about reporting" by staff, and the board agreed with him. Mr Hare said the decision to get staff to sign confidentiality agreements soon after the allegations emerged was made by YMCA general manager of children's services Liam Whitley. He said it was intended to avoid contamination of evidence but was "overzealous" and poorly executed. YMCA NSW was not a child safe organisation at the time Jonathan Lord was employed between 2009 and 2011, child sex abuse expert Professor Stephen Smallbone of Griffith University told the commission. He said there were "serious problems" in recruitment, screening, induction, training and supervision of staff. The hearing adjourned until December 20. Tony Blair said he'd seize the chance to return as Britain's prime minister - but acknowledges a comeback is unlikely. In an interview overnight to mark the fifth anniversary of his departure from office, the 59-year-old aired his views on various domestic policies. Since he stood down in June 2007 after a decade as leader, Mr Blair has largely avoided discussing British politics, confining most of his comments to foreign affairs and his role as envoy to the Quartet of Middle East peacemakers. Asked if he would return to the post of prime minister, Mr Blair was quoted by London's Evening Standard as saying: "Yes, sure, but it's not likely to happen is it, so..." As crowds of horse-showing experts gathered in Cardiff to battle it out for Horse of the Year, they knew the competition would be tough. But nobody was quite ready for three-year-old Fenton Kirkland. Not yet in school and just months on from taking his first steps, the toddler and his pet Shetland pony Toffee trotted through the three rounds with ease to take the top prize - leaving their 30 adult opponents trailing behind. The inseparable pair - who are the same height - were commended for appearance, behaviour and style at the annual contest run by Sunnybank Equestrian Centre, in Rudry near Cardiff. Taking to the stage against men and women in smart bowler hats, he tipped his flat cap at a jaunty angle and paraded two-year-old Toffee around the ring. Fenton was lauded by judges for natural handling skills well beyond his years. And Toffee received top marks for his appearance and personality. Fenton was given Toffee as a third birthday present last March and has practised with the Shetland pony every day since. His mother Donna, 30, said: "Fenton and Toffee are a great double act." They were up against all comers but the two of them walked off with the gold cup and rosette. It was only the second time he had competed with Toffee and we were all ecstatic when he won. Complete strangers in the arena all thought he was so phenomenal they wanted photos taken with him. The youngster, from the village of Nantyglo, near Ebbw Vale, South Wales, is following in the footsteps of his aunt Sharon Howells, who has been showing horses for more than 10 years. Mrs Howells said: "The whole place was electric and everybody was cheering and clapping." He was running on sand down the full length of the arena and even though he looked so tiny he did a marvellous job. Fenton is animal mad - he loves horses, tractors and farms and has got two chickens which he looks after. The way he has started he'll be at the Horse of the Year show before long - and I'm sure he'll do well. A spokesman for the annual horse show said: "Fenton is only three but he knows how to handle his pony." They are a great team together. The judges marked Fenton and Toffee on how well they were turned out and the way they presented in the show ring. They look for good teamwork between the pony and the handler - Fenton and Toffee were the best in the ring. I'm sure Fenton was helped by his cute clothes, he really looked the part. China plea paper 'to be overhauled' A Chinese newspaper that made a front-page appeal for the release of a reporter accused of defamation is to be overhauled, a press regulator says. The Guangzhou-based New Express made a rare public plea for the release of journalist Chen Yongzhou. But Mr Chen subsequently admitted on television that he had taken bribes to fabricate stories about a part state-owned company. Now the New Express is to undergo "full rectification," the regulator said. The "rectification" order came from the Guangdong Administration of Press and Publication, Radio, Film and Television. A preliminary investigation showed that Yangcheng Evening News Group's New Express had published several untrue reports about listed company Zoomlion in the period of September 2012 to August 2013. "New Express's editorial management was disordered," the regulator said in a statement. It said it had decided to "impose an administrative penalty on Chen Yongzhou by revoking his reporter's license." It had also "instructed Yangcheng Evening News Group to undertake a complete rectification of New Express, and recommended they investigate the relevant responsible persons at New Express and immediately revise New Express's leadership team." Mr Chen wrote several articles for the New Express alleging financial irregularities at a construction-equipment company called Zoomlion. After he was detained, his newspaper published two front-page appeals for his release, saying it backed his journalism. But Mr Chen then appeared on state television admitting he had published false stories for money. "In this case I've caused damages to Zoomlion and also the whole news media industry and its ability to earn the public's trust," he told state broadcaster CCTV. I did this mainly because I hankered after money and fame. I've realised my wrongdoing. Following Mr Chen's apology, New Express issued a front-page apology, saying it had failed to properly check his reports. Several high-profile suspects have made televised confessions recently. Experts say confessions are still routinely coerced, despite a change in the law earlier this year banning the authorities from forcing anyone to incriminate themselves. US-Mexico drug tunnel with its own railway found One of the most sophisticated drug smuggling tunnels between the USA and Mexico has been found, complete with its own lighting, ventilation and electric rail systems. US authorities described the four foot by three foot tunnel as one of the most sophisticated secret passages they have ever discovered. The tunnel, which zigzags the length of nearly six football pitches, links warehouses near Tijuana, Mexico and San Diego, USA. The area is filled with nondescript warehouses, making it easier to conceal trucks being loaded with drugs. The tunnel was shut down before any drugs made it through undetected, authorities said. Authorities seized eight-and-a-half tons of marijuana and 327 pounds of cocaine in connection with the tunnel's discovery, according to court records. Three men who authorities say worked as drivers were charged with possession of marijuana and cocaine with intent to distribute. They face prison sentences between 10 years and life imprisonment if convicted. In Nogales, Arizona, smugglers tap into vast underground drainage canals. The tunnel is the eighth major passage discovered in San Diego since 2006. Some of the largest tunnels have been discovered after central Mexico's marijuana harvest in October, which presents drug cartels with a challenge of how to quickly get their product to consumers. In 2010, authorities found a roughly 700-yard passage equipped with rail tracks that extended from the kitchen of a Tijuana home to two San Diego warehouses. Orlando Bloom and Miranda Kerr still love each other Actors Orlando Bloom and Model Miranda Kerr want to go their separate ways. However, in an interview, Bloom has said that he and Kerr still love each other. Miranda Kerr and Orlando Bloom are parents to two-year-old Flynn. Actor Orlando Bloom announced his separation from his wife, supermodel Miranda Kerr. In an interview with US journalist Katie Couric, which is to be broadcast on Friday (local time), Bloom said, "sometimes life doesn't go exactly as we plan or hope for". He and Kerr still love each other, emphasised the 36-year-old. "We're going to support one another and love each other as parents to Flynn". Kerr and Bloom have been married since 2010. Their son Flynn was born in 2011. According to dictionaries, veganism is a sub-category of vegetarianism, yet the two do differ considerably. For while vegetarians allow themselves to consume cream tarts, ice cream or a strong Edam, these indulgences are off the menu for vegans. Milk, cheese, egg - alongside avoiding meat and fish, vegans refrain from eating all products of animal origin - even honey is not permitted. You might ask what is left, however, upon closer inspection the world of vegan nutrition is characterised by great resourcefulness. "Spreads are very popular," explained Ute Henkelmann the owner of the local health food store, which provides a host of special products for vegans. Reuben Proctor also likes to visit the store on "Domgasse". The New Zealander has been vegan for 13 years, and in Lampertheim he can find (almost) everything that he needs to get by. "In 1997 I adjusted my diet and became a vegetarian". At the turn of the millennium I took the next step and became vegan. "However, it wasn't just the diet that convinced me, but also my choice of shoes," said Proctor, who prefers artificial leather over normal leather. He realised that you can also overcome all other daily concerns without animal products. First and foremost, being vegan is a matter of ethics. "I don't want animals to have to die for me," said Proctor, expressing the maxim of vegans, which applies to all their consumer behaviour. Rather than missing burgers, scrambled eggs or gummi bears, the vegan has quickly discovered entirely new products that really inspire him. "It is a double bonus," says Proctor now, "in actual fact being vegan is not about doing without, it's not about asceticism, but rather it is an enhancement". Regarding the assumption that when you convert your diet you are reducing your choice of meal options, Proctor puts this down to force of habit. And it is precisely this conditioning that results in many a well-intentioned attempt failing. "The temptation factor is a decisive factor in causing many to quickly give up, similar to with smoking," says Proctor, providing a comparison. And he argues: "Certain flavours are not linked to animal produce". Often it is the herbs or the type of preparation that provide the flavour. "You can, however, create the same effect in other ways," explains the vegan. For example, when attending a barbecue party, Proctor brings aubergines, mushrooms and also a few vegan sausages. He ensures a balanced, varied diet, whereby everything should also have a good hearty flavour. Of course you want to have something with a bit of bite, that is fair enough. "It should be tasty, but this doesn't necessarily mean animal-based food," said Proctor. He has not suffered any damage to his health or eating disorders - another wide-spread assumption. Converting has had a positive effect for me. I do not consume any foreign cholesterol and have increased my vitamin intake. There are top athletes who also have an exclusively vegan diet. "My blood values are excellent - I have myself checked on a regular basis," revealed Proctor. Many critics of veganism warn in particular of the lack of vitamin B12. "Because animals are fed on fodder instead of grazing, it is dubious whether the vitamin B12 content in meat sold in freezers is actually high," commented Proctor. For vegans there is also the option of taking the co-enzyme in the form of tablets. "My B12 values are fine," he explained. Proctor does not have to travel far to buy food. There are basic foodstuffs available everywhere, and every supermarket now has soya milk and other products. I can find everything I need locally. I only purchase special items now and again. "Many people overlook the fact that even though ready-made vegan products are expensive, it is well-known that this is also the case for "normal" ready-made products. In any case, the preparation of vegan dishes is much cheaper and less time consuming than commonly assumed. "In home cooking, there is much to be discovered - with a few minor tweaks you can achieve good, if not sometimes better results," said Proctor. Margarine in place of butter, a little more baking powder and bicarbonate of soda in place of egg - Proctor has even managed to astonish his in-laws with his vegan cheese cakes. The vegan adds new spice to family parties. When you cook together there is a certain dynamic - cooking takes on new value. "The situations that may arise are as varied as the people themselves," said Proctor. Of course he has already met with scepticism. Do you not like my food any more? "Should I feel bad now because I drink milk?" - as a vegan you have to be tactful in such matters. "I do not disapprove of people, I am part of this society," said Proctor, explaining that he was not choosing a life of isolation. And on closer observation, the everyday world does not appear quite so 'un-vegan' - and vegans are not quite as limited in their everyday lives as is commonly assumed. Fast food is also permitted. Chips are available everywhere! "Many doner kebab houses offer falafel, or even vegetarian Yufka," says Proctor. In a pizzeria he avoids pasta dishes or just orders a pizza without cheese, all just a question of habit. Restaurants are slowly adapting to things. "When I began eating a vegan diet 13 years ago, things were even more difficult," says the New Zealander, and he points out: "You have to talk with people, make them aware". "If enough requests are made, they will perhaps be inclined to expand their menus," he hopes. There are vegan restaurants opening up, such as the Kombüse in Mannheim or Café Vogelfrei. Proctor hopes that other restaurants will also have at least one vegan dish on the menu. Essentially, vegan dishes are for everyone. Anyone can eat them, they are the exact opposite of exclusive. "Meat dishes, on the other hand, are exclusive, in the truest sense of the word, as they rule others out," assessed Proctor. "If you want to avoid food scandals, veganism is a safe way to rule out the majority of scandals from the outset," says Proctor. However, purchasing vegan products can be difficult to start with. OInce you come to understand that peanuts, in particular, may also contain animal additives as a colourant, people seem to quickly lose courage when following a code of ethics with so many hurdles and pitfalls. Therefore, for this reason and others, Reuben Proctor and Lars Thomsen have written a book. "Veganissimo - Tierische Inhaltsstoffe und ihre Alternativen" (Veganissimo - Animal Ingredients and their Alternatives) explains the many ingredients hidden in both foodstuffs and cleaning agents. "You gradually develop an internal scanner and you know which symbols and logos you have to look out for". Proctor has learned that "it is sometimes better too take small steps rather than to stand still or stumble". Veganism is an important moral compass, which has an effect on your consciousness. Perhaps he won't manage to help you break old habits altogether, but at least he manages to teach consumers to critically question their habits. Stock exchange operator Nasdaq OMX keeps its customers on tenterhooks. Trading at the Nasdaq Options Market was interrupted on Friday afternoon, German time. In an announcement, the operator cited technical problems as the reason. On the other eleven options markets, including two also operated by Nasdaq OMX, business continued as normal. The most recent incident is the latest in a series of both small and large breakdowns suffered by the stock exchange operator. As recently as last Tuesday, the Nasdaq indices were not calculated for one hour due to data transfer errors. In August of this year there were two breakdowns in a single week. First of all, US investment bank Goldman Sachs sent large quantities of incorrect purchase orders to the options markets due to technical problems. As a result, the stock exchange operators required almost an entire day to look through and delete the orders. Two days later, half of all stock dealing in the USA came to a standstill for several hours, due to a computer failure in the Nasdaq exchange. Furthermore, last year the listing of Facebook on the stock exchange caused quite a furore. The Nasdaq systems could not cope with the flood of purchase and sales orders, the Exchange Supervisory Authority established at a later date, imposing a record penalty of 10 million dollars on the company. Konstanz: Cyclist knocks over 63-year-old man According to the police, the accident occurred on Thursday evening at around 10:00 p.m., when a 26-year-old man was cycling illegally, on the left footpath of the Bahnhofplatz in the direction of Marktstätte, on a ladies bicycle. According to police, when a 63-year-old man suddenly stepped out of a pub onto the footpath, the cyclist was unable to brake in time. During the subsequent collision, the pedestrian was thrown against the wall of the building, and then fell onto the ground, suffering a laceration to the head that measured around 15 centimetres in length. An ambulance team brought the injured man to the clinic for medical treatment. British police serve Assange with extradition notice Btitish police served an extradition notice today on WikiLeaks founder Julian Assange, who has taken refuge in Ecuador's embassy in London and requested asylum. Scotland Yard said they had served a "surrender notice" on the 40-year-old Australian requiring him to appear at a police station, adding that failure to do so would make him further liable to arrest. Assange faces extradition to Sweden over sex crime allegations, having exhausted his options under British law when the Supreme Court overturned his appeal against extradition earlier this month. Fearing Stockholm would pass him on to the US, he sought refuge at Ecuador's embassy in London on June 19, asking the South American country for political asylum. Scotland Yard has "served a surrender notice upon a 40-year-old man that requires him to attend a police station at date and time of our choosing," a spokesman said. He remains in breach of his bail conditions. The embassy declined to comment on the serving of the police notice. Assange fears he will be extradited from Sweden to the United States to face possible espionage charges, after releasing more than 250,000 US diplomatic cables on the WikiLeaks anti-secrecy website. Driver speeding at 130mph with hot drink between legs fined £1,000 A motorist has been fined £1,000 for driving at up to 130mph (210km/h) with a hot drink balanced between his legs. Andrew Howie, 35, of Tiptree, Essex, was spotted driving his Mercedes Benz on the A120 at Braintree on 27 May. When police stopped him they discovered the takeaway drink between his legs. At Colchester Magistrates' Court Howie admitted a charge of driving without due care and attention. Seven points added to his licence resulted in him receiving a six-month driving ban. Howie was also ordered to pay costs of £90 and a victim surcharge of £100. Tax on foreign property owners to burst London's bubble The Treasury have provisionally costed out the CGT measure but are awaiting a final decision from Mr Osborne, who, in the 2012 Budget, introduced a 7% rate of stamp duty for homes costing more than £2m and annual charges for buyers who choose to hold homes in a company rather than as individuals. Already the stamp duty take for residential property in the boroughs of Westminster and Kensington & Chelsea, which stood at £708 million in the 2012/13 tax year, exceeds the combined total for Northern Ireland, Wales, Scotland, the North East, North West and Yorkshire and the Humber put together. Mr Cook said: "Following increases in stamp duty of high value homes and the introduction of associated anti-avoidance legislation, it is very difficult to argue that high value property is under-taxed irrespective of the effect of the out-dated council tax system." "But this move could make some foreign investors reticent to buy property in London or current owners reluctant to sell," he added. Prime property - the top 5% to 10% of the housing market by price - in the affluent south-west London belt, which stretches from Fulham to Wimbledon, has increased by a record 11.8% over the past year. Prices in central London continued to show steady year-on-year growth of 5.6% but were overshadowed by a burgeoning "domestic market" with the city's south west, north (7.4%) and east (6.5%) all experiencing an uptick, according to research from Savills. Scientists have shed more light on how the movements of a dog's tail are linked to its mood. Earlier research had revealed that happy dogs wag their tails more to the right (from the dog's point of view), while nervous dogs have a left-dominated swish. But now scientists say that fellow canines can spot and respond to these subtle tail differences. Prof Georgio Vallortigara, a neuroscientist from the University of Trento, said: "It is very well known in humans that the left and right side of the brain are differently involved in stimuli that invokes positive or negative emotions." Here we attempted to look at it in other species. He added that just as in humans, for dogs the right side of the brain was responsible for left-handed movement and vice versa, and the two hemispheres played different roles in emotions. To find out more about how dogs react to the lop-sided tail wags of other dogs, the researchers monitored the animals as they watched films of other dogs. They measured the pets' heart rates and analysed their behaviour. It will probably not be long before we understand why their tails sometimes go one way, sometimes the other Prof Vallortigara said: "We presented dogs with movies of dogs - either a naturalistic version or a silhouette to get rid of any other confounding issues, and we could doctor the movement of the tail and present the tail more to the left or right." When the animals saw an otherwise expressionless dog move its tail to the right (from the tail-wagging dog's point of view), they stayed perfectly relaxed. But when they spotted a tail veer predominantly to the left (again from the tail-swishing dog's point of view), their heart rates picked up and they looked anxious. Prof Vallortigara said he didn't think that the dogs were intentionally communicating with each other through these movements. Instead, he believes that they dogs have learned from experience what moves they should and shouldn't feel worried about. He said: "If you have several meetings with other dogs, and frequently their tail wagging one way is associated with a more friendly behaviour, and the right side is producing a less friendly behaviour, you respond on the basis of that experience." The researchers say the findings could give owners, vets and trainers a better insight into their animal's emotions. Dog behaviour expert John Bradshaw, a visiting fellow at the University of Bristol's school of veterinary science, said this was not the first study to examine whether left and right were important to canines. Last year a team from the University of Lincoln found that dogs turn their heads to the left when looking at an aggressive dog and to the right when looking at a happy dog. And in another research paper from the University of Victoria in Canada, he said: "Dogs were more likely to approach a robot dog when its 'tail' was made to wag left rather than right, rather than becoming anxious - the opposite way around to the Italian study." He said the differences could be because the dogs in the different studies were not fully interpreting the animals in the films or robo-dogs as canines. A study of how dogs responded to real dogs could help, he explained. "While there is considerable evidence from many different mammals that the two sides of the brain are used for different purposes, much of the detail still has to be hammered out - and dogs are no exception," he said. However, given the ease with which their behaviour can be recorded, it will probably not be long before we understand why their tails sometimes go one way, sometimes the other. Arctic Monkeys postpone Glasgow gig due to Alex Turner's illness Rock band the Arctic Monkeys have postponed a gig in Glasgow after their lead singer was diagnosed with laryngitis. The Sheffield group were scheduled to perform at the Hydro venue in the city on Friday. However, lead singer Alex Turner's illness has forced them to reschedule the show. The band's announcement came after they were forced to similarly postpone a gig at the LG Arena in Birmingham on Thursday. In a statement on their official website, the Arctic Monkeys said: "Following the decision to postpone the show at the Birmingham LG Arena tonight and after seeking medical advice, Arctic Monkeys must also postpone the show at the Glasgow Hydro on Friday, November 1." "Alex Turner has been diagnosed with laryngitis and is regrettably not able to perform." The show at the LG Arena in Birmingham will now take place on November 20 and the show at the Glasgow Hydro will now take place on November 21. All tickets remain valid for these shows. We wish to apologise to all ticket holders for any inconvenience this has caused. Please contact the customer services at the box office you purchased your tickets from for any further assistance. Pope Francis to name first cardinals in February Pope Francis will create new cardinals of the Catholic Church for his first time on February 22, the Vatican announced Thursday. Cardinals are the highest-ranking clergy in the Catholic Church below the pope, and they're the ones who elect popes, so Francis will be appointing his first group of men who will ultimately help choose his successor. There are now 201 cardinals. However, once a cardinal reaches 80 he is no longer permitted to participate in the election of a pope -- this falls to a group of 120 "cardinal electors." In a statement announcing the news, Father Federico Lombardi, a Vatican spokesman, said a meeting of all the existing cardinals would be held before the ceremony to elevate the new cardinals, known as a consistory. "Pope Francis has decided to communicate his decision to convoke February's consistory in advance in order to facilitate the planning of other meetings involving the participation of cardinals from different parts of the world," Lombardi said. Jack Valero of Catholic Voices said that by February, the number of cardinal electors was likely to have dropped. He said usually a pope would name as many cardinals as was needed to raise the number of cardinal electors back to 120 and as many cardinals aged over 80 as he wanted. Next year's consistory would be significant because it would be the first since Francis was elected in March this year, Valero said. At the moment there is a sort of bias towards Europe and especially towards Italy. "It will be interesting to see whether the new Pope will nominate cardinals from the rest of the world to restore the balance," he said. Forty percent of Roman Catholics are in South America, but they have a tiny number of cardinals. The cardinals will also be the first to be chosen since Francis formed the Council of Cardinals, a group of eight cardinals from around the world tasked with looking into ways to reform the church. In the past the Pope decided everything on his own. "Now Francis has selected these eight cardinals to help him," Valero said. He said it was "quite possible" that Francis would ask the cardinals for advice. But we've not been in that situation before -- it's all completely new. Valero said popes typically elevated bishops from large places to the position of cardinal but that Francis was "full of surprises -- so we don't know who he'll name." GM recalls some new pickup trucks in U.S. to fix seatbacks General Motors Co is recalling nearly 19,000 of its all-new 2014 Chevrolet Silverado and GMC Sierra pickup trucks to repair a problem with the manual reclining seatback, according to a notice from U.S. auto safety regulators on Friday. On some of the trucks, the front seats may have a defect in the reclining mechanism. As a result, the seatbacks fail to comply with federal auto safety standards on head restraints. "If the vehicle is struck from behind, the head restraint may not properly protect occupants, increasing the risk of injury," according to the notice posted on the National Highway Traffic Safety Administration website. The recalled models were built between August 1 and September 10. GM's truck roll-out began in June and represents the most important vehicle launch for the No. 1 U.S. automaker since its 2009 bankruptcy restructuring. GM told truck owners about the defect in the first half of October. NHTSA could not review the owner notification letter due to the 16-day government shutdown, which tempered auto sales growth in October. Sales of the Silverado and Sierra trucks, which were redesigned for the 2014 model year, were up about 20 percent during the first 10 months of the year, GM said on Friday. In October, GM sold 42,660 Silverado and 16,503 Sierra pickup trucks. GM shares were up 1.4 percent at $37.47 on the New York Stock Exchange on Friday afternoon. An Obama voter's cry of despair I voted for President Obama twice, sharing hope in possibility of change He says Obama has had worthy efforts thwarted by GOP obstructionism Obstructionism can't excuse Obamacare website woes, drone attacks Obama's 2008 campaign memoir is a sad reminder of what might have been Nathaniel P. Morris is a second-year student at Harvard Medical School. I'm reading a terribly sad book these days. It's a book that I thought would uplift me during the doldrums of second-year medical school, and renew in me a sense of hope. It's called "The Audacity to Win," and it's a memoir of Barack Obama's 2008 presidential campaign. When I'm finished with my patient write-ups at night and get into bed, the book returns me to a time when politics inspired millions and speeches could take your breath away. The election turned out to be a landslide, and news anchors paused to reflect on the historic nature of the hour. My classmates cried with joy, and my parents saved every newspaper they could find. A young team of visionaries was headed for the White House, and the nation was ready for change. During Obama's transition to office in 2008, he had an 82% approval rating. And then I close the book. Cutting to the present is a rude awakening, like snapping out of a dream. It's hard to remember those days of optimism -- they seem a distant memory, a sad reminder of opportunities gone by. Change indeed happened, in the years since I cast my first ballot. It was simply nothing I could have imagined. I credit Obama with great and varied accomplishments, from the passage of the Affordable Care Act to our military exit from Iraq, the end of "don't ask don't tell," to the killing of Osama bin Laden. Moreover, I believe that partisan obstructionism has upended too many efforts to push our nation forward: immigration reform, a public option for health care, and closing the base at Guantanamo Bay, among others. But, after the countless times in which I have found myself defending the Obama administration to colleagues and peers, I've reached a limit to the explanations that I can provide. I've reached a point of political despair. Republican obstructionism cannot explain allowing the bugging of foreign leaders, nor having drones strike innocent children overseas. It cannot explain having the National Security Agency collect data on the private lives of Americans, nor prosecuting whistle-blowers who reveal government wrongdoing. It cannot account for assassinating Anwar al-Awlaki, an American citizen, without a trial, nor shirking public funding and spending limits during presidential campaigns. It cannot justify the findings of a report that says the White House's efforts to silence the media are the "most aggressive ... since the Nixon Administration." And, most recently, it cannot excuse the failure to design a simple website more than three years since the Affordable Care Act was signed into law. I don't know if this is what I should have expected. If, at 18 years old, I was supposed to figure out that governance may contradict the political campaigns that precede it. Obviously, elective office isn't a predictable course, as the opposing political party and random events, such as the Newtown massacre, will shape our public conversation. Yet, of all of the examples that I have listed above, they largely seem to be of the administration's own choosing. That is what troubles me most of all. I voted for Obama again in 2012, but not because I was excited by his candidacy. Mitt Romney presented a confusing and unrefined alternative who could not seem to lock down his policies or his positions. I felt that a second term for Obama, free from the pressures of future elections, would fulfill the hope that we had heard of for so long. Still, as Obama's approval rating sank below 45% this week, returning to 2008 through that book has become that much harder. It makes me yearn for the many promises that disappeared. This week I was reading the portion of the book describing how Obama suffered a huge loss to Clinton in the Pennsylvania primary. At a post-mortem campaign meeting, he told his staff that they needed to get back on track and stay true to the purpose of their cause. "I want us to get our mojo back," he said. We've got to remember who we are.' It's five years later, Mr. President, and I couldn't agree with you more. The opinions expressed in this commentary are solely those of Nathaniel Morris. Clive Palmer claims PM Tony Abbott has conflict of interest over parental leave scheme Billionaire MP Clive Palmer says Prime Minister Tony Abbott has a conflict of interest over his parental leave scheme because his daughters might get pregnant and benefit from it. The mining magnate, who is in a dispute about paying a $6 million carbon tax bill, made the claim as he tried to brush off questions about whether he had a conflict. The Palmer United Party could control up to four votes in the Senate that may be crucial in deciding if the carbon and mining taxes are axed. But Mr Palmer claimed it was only ministers who could have a conflict of interest and said Mr Abbott's daughters stood to personally benefit from policies. "He's got a major conflict of interest when it comes to paid parental leave because if any of those daughters get pregnant, he'll have a direct interest whether they get leave or not," Mr Palmer said. Two months after the election, the electoral commission officially declared Mr Palmer the winner of the Sunshine Coast seat of Fairfax by 53 votes, after a recount. Mr Palmer called for overhaul of election counting to speed up the process. Tony Abbott's daughters Frances and Bridget. Should this election be decided two months after we stopped voting? "We need to have a better system," he said. Why is it that we shouldn't have a system where you can walk in, punch your details into a computer, vote immediately and have a result at 6.30 that night? Mr Palmer also criticised the use of pencils to mark ballots. Is it because they can rub out the result if someone doesn't like it? In this day and age having a pencil seems extraordinary. The Electoral Commission has been studying options for electronic voting and recently released a joint discussion paper with New Zealand. Mr Palmer, 59, said his policies included an international airport for the Sunshine Coast and he would take "very seriously" his new job. Public office is about public service. "We seek no reward, except the reward of history that we can at a critical time serve this community," he said. RBS suspends two forex traders Royal Bank of Scotland has suspended two traders in its foreign exchange division according to two people familiar with the situation, in another sign that the global probe by regulators into the suspected manipulation of the currency market is rapidly gaining traction. Some of the world's largest banks, including UBS, Barclays, Deutsche Bank and RBS, have confirmed they are co-operating with regulators in investigations into the world's largest financial market, where $5.3tn changes hands each day. The two traders would be the first RBS employees to be suspended in the widening probe that echoes the Libor interbank lending manipulation scandal. The bank, which declined to comment on the suspensions, confirmed this month that it has received requests for information from regulators. "Our ongoing inquiry into this matter continues and we are co-operating fully with the FCA and our other regulators," the bank said two weeks ago. Last month, people close to the situation said that RBS had turned over records of emails and instant messages to the UK regulator, the Financial Conduct Authority, sent to and from a former trader. This trader, Richard Usher, left RBS in 2010 and is understand to have be given leave from his current position as European head of forex spot trading at JPMorgan. Rohan Ramchandani, head of European spot trading at Citi, went on leave this week, while Matt Gardiner, a former senior currencies trader at Barclays and UBS, was suspended by Standard Chartered this week. None of these traders have been accused of any wrongdoing. Mr Usher's instant message group included bankers at Barclays and Citigroup, people close to the situation said. UBS said this week it had taken action against some of its employees after the Swiss regulator, Finma, said it was investigating suspected manipulation of the foreign exchange market at a number of Swiss banks. At least six authorities globally - the European Commission, Finma, Switzerland's competition authority Weko, the FCA, the Department of Justice in the US and the Hong Kong Monetary Authority - are looking at allegations that bankers colluded to move the currencies market. HSBC, Citigroup, JPMorgan and Credit Suisse have also launched internal probes or received requests for information from regulators, said people familiar with the situation. Banks are scouring through years" worth of instant messages and emails to search for instances of wrongdoing. News about the probes has rattled traders in an area that has been one of the bigger profit drivers of investment banks' trading units in past years but which has been challenged this year as low volatility in currencies cuts opportunities for speculators. Some bankers have tried to play down the affair by saying the vast and highly liquid foreign exchange market is almost impossible to manipulate, but senior traders are saying this is not necessarily true. A senior trader said that despite the huge volume of daily foreign exchange trading, the fragmentation of liquidity between different trading platforms and banks" increasing use of their own internal platforms meant that "you can start to get an impact on the market at quite small ticket prices." The news came on the same day as Credit Suisse announced it had dismissed a trader at its London exchange traded funds desk this week after he had caused a nearly $6m loss late last year. The bank promptly notified the relevant authorities and has been co-operating with its regulators. "We are confident the trader acted alone and that the matter has been contained," Credit Suisse said. Hoarding on the Bechtle plot painted A group belonging to the "Schweizer Wiese" citizen's initiative has given the hoarding on the Bechtle plot on the spa promenade in Bad Herrenalb a face-lift. In addition, they have cleaned and widened the footpath, a press release announced. The planned covering of the dilapidated house to the rear of the plot was not permitted for safety reasons, as the premises were at risk of collapsing. Alfred Abel, who currently manages the site, arranged the 'face-lift' in cooperation with his colleague, Reinhard Domke, from the citizen's initiative. Before the citizen's initiative project, a banner with the message "We are in favour" was put up. However, this did little to distract the 20 or so members of the citizen's initiative from their project. Their motto, on the large billboard stated "We are against unfinished buildings". In so doing they wanted to point out the danger of even bigger ruins on the Schweizer Wiese - should the huge project one day fail. Chatting with many people passing by the "construction site", it became clear that many citizens believe the execution of the project would make things much better for the town, although many have the same questions as the citizen's initiative regarding the scale of the planned project. However, they are beginning to resign themselves as the town continues to stall in providing answers, said a statement from the citizen's initiative. We have now been told that the public statements made by the Mayor are also having an impact. In May, in the meeting of the Town Council, he said that he feared for the outcome of the spa should the population vote against the plans for a spa and wellness complex on the Schweizer Wiese in the local referendum. Some appear utterly frightened by it, others perceive it as a "blatant attempt to blackmail" the population, continued the press release from the citizen's initiative. The citizen's initiative thanked those who donated paint and all those who lent a hand. Rangnick scolding for refs: Mane is no diver As satisfied as Ralf Rangnick is with the present winning form of the Austrian Bundesliga table-toppers, Red Bull Salzburg, the Sporting Director of the "Bulls" expressed equal disappointment with the referees. "There is currently a dangerous trend, with Mane and Alan being dubbed as 'divers'," he said at a press conference in Salburg on Thursday, in defence of the two tricky offensive players. The most recent cause for Rangnick's criticism was the yellow card for Mane at 3:0 against Grödig last Sunday, whereby the Senegalese striker was penalised for supposed play acting - admittedly this was not justified, as shown by TV footage. "A blatant wrong decision," commented Rangnick, who referred to Harkam as being "completely out of his depth". Harkam also played "his part" in the escalation between Salzburg Coach Roger Schmidt and Grödig Trainer Adi Hütter after the game. He firmly defended his German compatriot: "In each individual situation I would have behaved in the same way as Roger Schmidt". Schmidt himself did not wish to have any contact with his colleagues after the skirmish with Hütter. I do not know why. "After all, I was the one who was insulted," emphasised the 46-year-old. However, with regard to the winning run, Rangnick sang his team's praises. "There are only two words for it: Really good," he stated. There is not a lot you can criticise. Most of all, the manner in which the team is playing is impressive. We must stay composed and keep it up. There will hardly be any squad changes in the winter transfer window. There is no major reason to change anything. "Unless a player comes forward and expresses the desire to leave the club," explained Rangnick. Supreme Court upholds Obama health care law In a major victory for the Obama administration, the US Supreme Court today ruled Barack Obama's signature health care law is constitutional. By a 5-4 vote, the justices ruled the Patient Protection and Affordable Care Act's individual mandate - which requires citizens to buy health insurance by 2014 or else pay a penalty - was constitutional under the taxing power of the government. Chief Justice John Roberts sided with the four more liberal members of the court while Justices Scalia, Thomas, Alito and Kennedy dissented. The court also upheld the remaining sections of the 2700 page law, and further held that the health care law's requirement that states increase Medicaid eligibility or else lose all federal Medicaid funding is not unconstitutionally coercive. The suit to block the law was brought by 26 states and the National Federation of Independent Business. The law was vigorously opposed by each of the major Republican presidential candidates during the 2012 primary season, including presumptive nominee Mitt Romney. Norway: Norwegian village lights itself up with huge mirrors Using huge mirrors, the residents of a Norwegian village have brought light to their dreary valley. Due to the low level of sunshine, from autumn until spring the village of Rjukan in the Vestfjord valley normally languishes in the shadows of the surrounding mountains. With three gigantic mirrors, each 45 metres tall, a centuries-old dream came true on Wednesday. "Finally!', raved Mayor Steinar Bergsland at the inaugural ceremony, televised by broadcaster TV2. Some valley residents lay back on sun loungers, while others safely put on their sunglasses. Up until now, those hungry for sunshine in the winter had to travel to a nearby peak by cable car. Ten years ago, local artist Martin Andersen presented the proposal of directing the sun into the valley using mirrors. However, this basic idea had been talked of in the location since 1913. After several years of debate, the Town Council finally approved the project, which cost 5 million krone (around EUR 615,000). A similar construction has provided sunshine to the Italian alpine resort of Viganella for a number of years. The post is hardly ever emptied on Sundays "Many citizens will not yet have noticed that red dots indicating a Sunday post collection are still to be found on many post boxes in the town centre and its districts. However, if you read the small print on the yellow boxes operated by Post AG, you will quickly find out that the boxes are no longer emptied on Sundays and holidays," announced the FDP. An inquiry by the FDP confirmed this. Only the post boxes in front of the post office building at Ernst-Ludwig-Straße 36 and at Jakob-Müller-Straße 1 in Hüttenfeld are still emptied. Whether there are still Sunday collections in Hofheim and Rosengarten is not addressed in the inquiry by the FDP. The FDP spokesperson for social and youth-related affairs, Fritz Röhrenbeck wants to dig deeper into this. The Sunday collection is an important postal service, especially in the case of scheduled post. "The company is radically and unacceptably cutting back on this, despite the price increase for letters in January 2013. Thomas Bittner, Liberal Party Parliamentary Group and Municipal Association Chairman, is supporting his fellow group members: "What annoys me, is the fact that the collection times have been changed or cancelled on the quiet here". In so doing, the postal service is miles off the mark when it comes to public accessibility. "At least the post boxes in the districts of Neuschloß and Rosengarten must still be emptied on Sundays," said Bittner and Röhrenbeck in unison. It is also the case for the town centre that those citizens in particular who are not mobile must also be able to access a post box with a Sunday collection on foot. In the Town Parliament, Röhrenbeck asked whether the Town Council was planning discussions with the postal service regarding this matter. Mayor Erich Maier responded that the postal service had not communicated with Lampertheim. To the best of his knowledge, however, there is a Sunday collection in Hofheim. Their party has spoken out in favour of privatisation. "Decisions will then be made elsewhere," said Maier. Frankfurt parking fees to increase dramatically Parking in Frankfurt could soon be noticeably more expensive. The City Magistrate today discussed a submission by the head of the department for transport, Stefan Majer (Green Party). According to the proposal, parking fees are to be increased by 50 per cent. This increase will not, however, be the result of raised prices, but rather the fact that time interval permitted by parking meters and ticketing machines will be reduced from 30 to 20 minutes. The City Council must reach a decision on this in December. The Retail Committee of the Frankfurt Chamber of Industry and Commerce believes that this is "not a good idea". The option of parking right outside their businesses is "an advantage to smaller retailers that must not be underestimated.". The Verkehrsclub Deutschland (German Traffic Club) is of the opinion that an increase after two decades is "completely appropriate and actually long overdue". Local public transport will also become more expensive. Freudenstadt: Quick moves take hosts by surprise With a slender squad, the TSV Freudenstadt Herren I team (Men's First Team) stepped into the Schiller School Gymnasium in Reutlingen to face TG Gönningen of the Swabian Alb region. The Alb men stood on the other side of the net with what was undoubtedly a more experienced team. However, it soon became evident that, due in part to their age, they could not really keep up with the fast pace of the Freudenstadt team. Gönningen found it extremely difficult to cope with the hard and well-positioned offensive moves. They repeatedly missed the passes and attacks coming cleanly over the net from Simon Schenk and Eduard Schulz and their blocking game was not up to scratch. Clear victories in the first two sets clearly demonstrated the superiority of the Freudenstadt team in all areas. Faced with this overwhelming and match-determining performance, the third set was won following a somewhat tame and spiritless performance, for a final score of 3:0 (25:13, 25:14, 25:22). On 2 November, when they play TV Baiersbronn, who managed a clear victory in Nagold, they will step onto the court to face a much stronger opponent. TSV Freudenstadt I: Dominik Bäuerle, Yannik Büchle, Sebastian Dölker, Felix Pälchen, Stefan Räller, Simon Schenk and Eduard Schulz. In the B Class, two teams from Baiersbronn and Freudenstadt faced off in the Murgtalhalle in Baiersbronn. They produced a hard-fought two-hour match. Nerves on both sides, particularly when receiving the ball, resulted in errors and lost points; there was even a lack of passing at times and at some critical moments overeagerness saw potential points wasted. However, in this evenly matched game, the great physical effort of Marcus Blasutto's TSV team proved decisive in spite of tremendous commitment by both teams. Maintenance day at the small 'Engländerhütte' For what was then the fifth maintenance day in the follow-up to the Natura 2000 project in Upper Hotzenwald, a group of dedicated participants met at the small Engländerhütte (Englishman's Cottage) in Ibach Following suggestions from the population, the of the valley in the area of the cottage was to be cleared, said Mayor Helmut Kaiser. According to Kaiser, many hikers refer to this area as the showpiece of the Schluchtensteig, where the landscape provides the ideal framework for fantastic views. He thanked those present for their willingness to cooperate and emphasised that the maintenance day is a suitable instrument through which to strengthen the connection between people and nature, He is offering every citizen the opportunity to focus on nature itself. At the same time as the tourist aspect, environmental aspects should also be taken into consideration. This environmental aspect was explained by Friederike Tribukait of the Department of Nature Conservation of the Freiburg Regional Council, following the greeting by Regional Councillor Tilman Bollacher, who had taken on the role of patron and wished the campaign every success. According to Tribukait, the tourist objective of the vision coincided with the goal of preserving the now extremely overgrown old Allmend grazing pasture, with its specific protected habitats, through its opening and connection to the still existing grazing land. Certain species, such as rare butterflies or grasshoppers, cannot get past barriers in the form of forest areas. They require these clear pathways in order to preserve their species. Tribukait said that she did not want to fail to use this opportunity to say a word in defence of the planned biosphere area. The current measures do not integrate seamlessly into these plans. A biosphere area offers the chance for sustainable economic and ecological development on the basis of the internationally recognised Unesco status, and thus offers an extension to what has been achieved thus far with the Life Project and the previous care days. After the various statements, forest ranger Christoph Wehle and Life Project manager Cornelia Bischoff divided the helpers into groups. The larger trees had been cut down in advance, although forest tractors were on-call if required. One group of helpers were to take care of the clearance of juniper bushes and the maintenance of a dry stone wall. The objective was to create a clear view at the viewpoint. Löffingen: Köpfler still the only candidate Information online: Although Löffingen, the small town of Baar, with its 7,514 residents, can be described as having an intact infrastructure, forward-looking school, youth and senior citizens policies and its own municipal energy companies, thus far no-one has registered as a second mayoral candidate. So far, the only candidate to succeed Mayor Norbert Brugger, who is no longer running on account of his age, is 46-year-old banker and business economist Dieter Köpfler from Löffingen. The deadline for applications is Monday 11 November, at 6:00 p.m. Google, Samsung, Huawei sued over Nortel patents The group that owns thousands of former Nortel patents filed a barrage of patent lawsuits on Thursday against cell phone manufacturers including Google, the company it outbid in the Nortel bankruptcy auction. Rockstar, the consortium that bought the Nortel patents for $4.5 billion, sued Samsung Electronics Co Ltd, HTC Corp, Huawei and four other companies for patent infringement in U.S. District Court in Texas. Rockstar is jointly owned by Apple, Microsoft, Blackberry, Ericsson and Sony. Google is accused of infringing seven patents. The patents cover technology that helps match Internet search terms with relevant advertising, the lawsuit said, which is the core of Google's search business. Representatives for Samsung, Huawei, HTC and Rockstar could not immediately be reached. Samsung, Huawei and HTC all manufacture phones that operate on Google's Android operating system, which competes fiercely with Apple and Microsoft mobile products. In 2011 Google placed an initial $900 million bid for Nortel's patents. Google increased its bid several times, ultimately offering as much as $4.4 billion. After losing out to Rockstar on the Nortel patents, Google went on to acquire Motorola Mobility for $12.5 billion, a deal driven partly by Motorola's library of patents. "Despite losing in its attempt to acquire the patents-in-suit at auction, Google has infringed and continues to infringe," the lawsuit said. Rockstar is seeking increased damages against Google, as it claims Google's patent infringement is willful, according to the complaint. Egypt swears in first freely elected president Mohamed Morsi takes the oath of office but his day of triumph is unlikely to mark end of political strife in Egypt. ISLAMIST Mohamed Morsi promised a "new Egypt" as he took the oath of office to become the country's first freely elected president, succeeding Hosni Mubarak who was ousted 16 months ago. At his inauguration before the Supreme Constitutional Court, Morsi also became the Arab world's first freely elected Islamist president and Egypt's fifth head of state since the overthrow of the monarchy some 60 years ago. He took the oath before the court's 18 black-robed judges in its Nile-side seat built to resemble an ancient Egyptian temple. "We aspire to a better tomorrow, a new Egypt and a second republic," Morsi said during a solemn ceremony shown live on state television. "Today, the Egyptian people laid the foundation of a new life - absolute freedom, a genuine democracy and stability," said Morsi, a 60-year-old US-trained engineer from the Muslim Brotherhood, a fundamentalist group that has spent most of the 84 years since its inception as an outlawed organisation harshly targeted by successive governments. Hundreds of soldiers and policemen guarded the building as Morsi arrived shortly after 11am local time in a small motorcade. Only several hundred supporters gathered outside the court to cheer the new president and, in a departure from the presidential pomp of the Mubarak years, traffic was only briefly halted to allow his motorcade through on the usually busy road linking the city centre with its southern suburbs. Derided as the Brotherhood's uncharismatic "spare tyre," his personal prestige has surged since his victory and his delivery of a Friday speech that tried to present him as a candidate not just of Islamists but of all those who want to complete the work of the 2011 uprising against the authoritarian Mubarak. "Egypt today is a civil, national, constitutional and modern state," Morsi, wearing a blue business suit and a red tie, told the judges in the wood-panelled chamber where he took the oath of office. Morsi later travelled to Cairo University where he was to make his inauguration address. He was given an official welcome by an army band that played the national anthem as he stood to attention. Military ruler Field Marshal Hussein Tantawi was in attendance. His arrival was greeted with chants of, "The army and the people are one hand," from the hundreds gathered in the university's main lecture room. Established in 1908 as a bastion of secular education, Cairo University later became a stronghold of Islamist student groups in the 1970s. Morsi took a symbolic oath on Friday in Tahrir Square, birthplace of the uprising that ended Mubarak's authoritarian rule last year, and vowed to reclaim presidential powers stripped from his office by the military council that took over from the ousted leader. But by agreeing to take the official oath before the court, rather than before parliament as is customary, he is bowing to the military's will in an indication that the contest for power will continue. Morsi's speech in Tahrir Square was filled with dramatic populist gestures. Falkenberg club makes for two wonderful evenings. The new season in the Falkenberg "Blue Velvet" club has begun. This Friday evening, the "Pump this party" event will be taking place, while one day later, on Saturday evening, festivities will continue with an over-25s party. Fat beats and cool sounds are of course promised by the organisers on both nights. Worker falls from ladder: seriously injured On Thursday, a 51-year-old worker in Eggelsberg fell from a ladder while replacing a broken external sensor and was seriously injured. The man from Lamprechtshausen wanted to replace a broken heating sensor on the external facade of a guest house. As he was climbing the ladder, which was resting on the roof guttering, it slipped away and the man fell onto the concrete below. He suffered serious injuries and was taken by the "Christophorus 6" rescue helicopter to the Salzburg Regional Hospital. Rapist in South Africa: two life sentences Nine months after the brutal rape and mutilation of a 17-year-old girl in South Africa, the perpetrator was condemned to two life sentences on Friday. This was reported by broadcaster SABC. The victim later died as a result of the serious injuries. Johannes Kana had already been found guilty of the crime at the start of the week. The crime had caused nationwide horror. The then 21-year-old had raped Anene Booysen in February in an industrial estate in Bredasdorp, near Capetown. For 14 hours, doctors battled to save the life of the victim, ultimately in vain. The sight of the young girl was so horrific that the carers and nursing staff required psychological support. During the trial, Kana admitted to having been in a bar with Booysen on the night of the attack. He also admitted to beating and raping her, however he denied being responsible for the death of the girl. The police had initially assumed that there were multiple attackers, however, they released two suspects from custody as the evidence against them was insufficient. During the proceedings the public prosecution also emphasised that they were convinced that Kana was alone at the time of the attack. Rapes are almost part of everyday life in South Africa: There are around 64,000 reports of sexual assault every year. This is almost ten times as many as in Germany, although with a population of 82 million people, Germany has a much higher number of residents than South Africa (50 million). Police and women's associations in South Africa, however, estimate the number of unreported cases of sexual assault to be 10-25 times as high. Jumbo visits the home of Black Forest ham Jumbo on the search for the "world's best ham": For the TV programme "Galileo", the Pro7 star visited Bonndorf. The presenter established one thing right from the outset: The most important thing when it comes to ham are the legs of pork - turbo fattening does not provide a good basis for this. Can ham bought in a supermarket be as good as a quality product? Uli, boss of the large ham factory in Schwarzwald, explained to Jumbo how the Bonndorf company, "Adler", operates. "Germany's most-loved ham," said Jumbo, presenting the Black Forest ham. He could only enter the factory when wearing hair protection and a white coat. Jumbo also had to first disinfect his hands before he could reach for the microphone. Jumbo seen getting something to keep him going at a fast food restaurant in Waldshut "Here they work with huge quantities," commented the television producers, astonished by the mass production of Black Forest ham. 16,000 joints of meat per week speak for themselves. Weight, fat content and colour: Uli explained what was required for the best quality. The majority of the pigs are slaughtered at six months old. Television with standards? Even specific details such as the pH value of the meat play a role. The darker the meat, the higher the pH value. "I would be curious what would happen if you were to measure Roberto Blanco," said Jumbo cynically. Here the standard of private television production is presented in its purest form. Nonetheless, it is worth watching. The viewer sees that joints are still carved by hand. After all: Black Forest ham traditionally arrives on the shelf boneless. The secret of the ham is the mix of herbs combined with salt. The appearance of the smoking tower and furnace remind Jumbo of a submarine. The trick: Here fir branches in the smoker provide the special flavour of Black Forest ham. After 20 days in the smoke, the ham is finally almost black. "And now the slice will disappear inside Jumbo," he said, announcing his sampling of the product. "That is really delicious," said the TV star in conclusion. All those involved will be happy with that evaluation. Thought travel agents were a thing of the past thanks to the internet? Flight Centre seem to be bucking the trend. The company has upgraded its full year profit forecast and is looking to record earnings from holidaymakers in Australia and the United Kingdom. The travel company now expects its full year underlying profit before tax to be between $325 million and $340 million, compared with the $305 million to $315 million it previously forecast. If the current guidance is achieved it will represent a 12 to 17 per cent growth on the record $290.4 million profit it achieved in 2011/12. Managing director Graham Turner said Flight Centre had made 8 per cent profit in the first half and had started the second half strongly especially in Australian and UK non-business travel. "Year-to-date, our 10 countries are profitable and several are on track for record full-year earnings before interest and tax contributions," he said. This includes Australia and the United Kingdom, which are typically our largest profit generators. In Australia the leisure business rebounded during the second half which offset a slightly weaker domestic corporate travel market. Similarly in the UK, Flight Centre's leisure business performed well while corporate clients were spending less. Its US business had recovered its losses during its seasonally weaker first half and was expected to deliver its third consecutive full year profit. Flight Centre shares were up 3c at $38.20 yesterday. Schools urged to focus more on maths, spelling and grammar English literature courses will require pupils to study at least one Shakespeare play, a 19th century novel, Romantic poetry and contemporary British fiction from 1914 onwards. The exam will also feature "unseen texts" to encourage wider reading; A combined English literature and language course will be scrapped. From 2015, pupils will be required to take a standalone GCSE in language, with strong incentives to choose English literature as a separate qualification. The Department for Education is due to release the new syllabuses in English and maths tomorrow - the first subjects to undergo a radical overhaul. It will make changes in other core subjects next year. In a separate move, Ofqual, the exams regulator, will unveil a shake-up of the structure of GCSEs, with a new grading system and less coursework. Speaking in the summer, Michael Gove, the Education Secretary, said there was a "widespread consensus that we need to reform our examination system to restore public confidence," insisting GCSEs would be "more challenging, more ambitious and more rigorous." Studies show that English schools devote less time to maths - 116 hours a year or three hours a week during term time - than in most countries. By comparison, Australian schools provide an average of 143 hours a year and pupils do around 138 hours in Singapore. While there will be no formal requirement to devote more of the timetable to maths, Coalition sources said the extensive maths GCSE - combined with more weighting for the subject in league tables - was likely to encourage schools to provide extra teaching. The syllabus will place a greater focus on "real world problems," including financial mathematics. Beautiful animals and delicious tarts entice The most beautiful rabbits of various breeds and colourings will be presented at the District Exhibition this weekend in the community centre. The evaluations were already made on Thursday. Once again, the W514 local association are organising this large exhibition. Here breeders from the clubs in the District of Soest will be exhibiting their best animals, while young private individuals from Wickeder are also showing their rabbits. On Thursday, six adjudicators assessed the numerous rabbits and were able to assign awards to the exceptional animals. The visitors to the show will be kept well informed, with the evaluations of all animals posted on their cages. Mayor Hermann Arndt will be officially opening the exhibition at 14:30. The rabbit show will, however, be open to all visitors from 10:00 a.m. on Saturday and from 10:00 a.m. until 3:30 p.m. on Sunday, which will be followed by the prize ceremony. Guests are also invited to take part in a tombola with impressive prizes and to sample some delicious food from the cafeteria. Pamela Anderson chops off those iconic blonde locks, debuts dramatic new pixie cut. Pam's blonde locks were made famous by her role in sexy TV show Baywatch. Pamela Anderson is the latest celebrity to shock fans with a dramatic new hairdo. The ex-Baywatch babe has ditched her long blonde locks in favour of a platinum pixie crop. The 46-year-old actress revealed her latest look while out and about in LA on Wednesday and shared a snap on her Twitter page. It's the first time in 20 years that the blonde beauty has had short hair, and we're loving the demure change. What do you think about Pammy's hair? Share with us your thoughts in the comments below. Salem: Johanna Rahner at the Ecumenical Discussion Forum At the next Ecumenical Discussion Forum on Monday 21 October, in the Neues Museum des Schlosses (New Castle Museum), the focus will be on the topic of "To hell with Hell - Theological reflections on how we now approach the notion of end times". The speaker will be Johanna Rahner. The Ecumenical Discussion Forum is an initiative of the Catholic and Protestant churches in Salem, the Salem Castle and the Lake Constance District Cultural Office. At the forum, Johanna Rahner wants to address the question of how people today view the "end times" after death. While people in past centuries were overly conscious of it, focusing on the pictures of heaven and hell "that up until now have defined our ideas", contemporary prophetic teaching on the hope of consummation is characterised more by a certain bashfulness, or even speechlessness. "The greater hope has been well and truly cast out of Christians by religious critics," said the speaker. They have "provided us with so many question marks, that we seem to have lost our exclamation marks". Johanna Rahner continued: "However, the crucial challenge to this remains fear of death". Associated with this is the matter of that longing, "that dreams that everything will be good at the end". Johanna Rahner, born in 1962 in Baden-Baden, studied Catholic theology and biology from 1982 to 1989 at the Albert Ludwig's University in Freiburg. In 1997 she graduated as a doctor of theology, also in Freiburg. A post-doctoral lecturing qualification in fundamental theology and ecumenical theology followed in 2003 at the Westfalian Wilhelm's University. Since 2010, Johanna Rahner has occupied a Chair for Systematic Theology in the Institute for Catholic Theology at the University of Kassel. Geislingen: More than 100 young Catholics from Kleiner Heuberg stand together in the confirmation of their profession of faith In two services, 101 15 and 16-year-olds from the Am Kleinen Heuberg pastoral care unit were confirmed. In the morning, the service was accompanied by the Laudato-Si Group, while the afternoon service featured 'The Spirit' youth choir. Upon receiving the confirmation sacrament, the young people accepted their baptism and asked for the power of the Holy Spirit. Over recent months those being confirmed, under the direction of Deacon Reiner Dehner and the assistance of several church members, have been preparing for the special day. In various projects, they learned of the different tasks involved in Christian church life and attended the Youth Day in Untermachtal together. Illmensee: Second mountain bike race enthuses participants In fantastic weather, 214 cyclists came to Illmensee to take on the circuit, over the hills and around the lake. This was announced by Ulrich Knobel of the organising Illmensee Sports Club. Among the participants there were also numerous amateur cyclists who wanted the chance to practice their hobby in a competitive environment, in particular over the short distance of 15 kilometres with a 300 metre climb. Two top-class junior cyclists were also in the starting line-up for the competition: Felix Bader from Bad Waldsee and Pascal Treubel from Aach-Linz came with the recommendation of having achieved good positions at the German Championships. The pair managed to break away from the field in keeping with expectations. As was the case the previous year, Felix Bader managed to hold on to a small lead right to the end and defended his title as the overall winner of the short distance race Once again, Pascal Treubel took second place. In the ladies' race it was Theresa Duelli of Team Albtraum who managed to take top place on the podium. In second and third places were Anne Adel from Illmensee and Leonie Treiber from Owingen. The increasing number of riders that live or work in the area is a fantastic development. And it was not only about top performance - the entire range of athletic ability was represented. Participants' ages were also wide-ranging, with the youngest starters at ten years old up to the oldest at over 70. This year, there were even more absolute top athletes at the starting line for the main race. Four cyclists managed to break away from the top regional racers. These included Philipp Pangerl, a semi-professional mountain biker from the Black Tusk Racing Team. Together with a team mate, Pangerl has already twice been crowned World Champion in the 12-hour race. This year he became European Champion in this special discipline. Also competing was Roland Ballerstedt, who has already claimed two German duathlon championships. After 45 kilometres and a climb of 900 metres, the leading riders were neck and neck on the final straight in front of the Drei-Seen-Hall. Pangerl sped over the finish line in first place. Only one second later, the experienced Ballerstedt managed to take second place in the overall standings. Hermann and Warthmann then reached the finish line simultaneously to take joint third in the overall standings. In the ladies' race, Christiane Cohsmann achieved the fastest time in the main race. Areane Blersch from Binzwangen took second place, ahead of Natascha Werner from Stuttgart. Athletes and assistants seemed very satisfied with the smooth and well-organised running of the event. Trekking through mud, rivers and jungle to provide free medical care Dr. Georges Bwelle is bringing free health care to rural villages in Cameroon Bwelle and his team spend almost every weekend seeing hundreds of patients There aren't many doctors in the west African country; just one for every 5,000 people Cast your vote here or through your mobile device Dr. Georges Bwelle is one of the top 10 CNN Heroes of 2013. You can vote for him, or any of the other top 10 Heroes, to be CNN Hero of the Year. That person will receive $250,000 to continue their extraordinary work. For 21 years, Georges Bwelle watched his ill father slip in and out of consciousness, traveling to hospitals that weren't equipped to help him. Jamef Bwelle was injured in a 1981 car accident near Yaounde, Cameroon's capital. He suffered only a broken arm at first, but an infection developed and spread to his brain, creating a hematoma that would affect him for the rest of his life. "There were no neurosurgeons in Cameroon," Georges Bwelle said. We would have taken him out of Cameroon if we had the money. Instead, Bwelle spent years escorting his father to overcrowded clinics and hospitals, getting whatever treatment they could get. "It's not easy," Bwelle said. You can leave home at 5 a.m., running to the hospital to be the first, and you are not the first. There are a lot of patients. Some people can die because they are waiting. The situation hasn't changed much since Bwelle's father passed away in 2002. In Cameroon, there is only one doctor for every 5,000 people, according to the World Health Organization. For comparison's sake, the ratio in the United States is one doctor for every 413 people. And even if they could see a physician, many Cameroonians couldn't afford it. Two out of five people in the country live below the poverty line, and nearly three-quarters of the country's health-care spending is private. "The only problem they have is poverty," Bwelle said. And with poverty, they cannot enjoy their life. Seeing his father and so many of his countrymen suffer, Bwelle was determined to do something about it. Dr. Georges Bwelle and his team of volunteers have performed 700 free surgeries in the past year. He became a doctor himself, working as a vascular surgeon in Yaounde's Central Hospital. And he started a nonprofit, ASCOVIME, that travels into rural areas on weekends to provide free medical care. Since 2008, he and his group of volunteers have helped nearly 32,000 people. Almost every Friday, he and up to 30 people jam into vans, tie medical supplies to the roofs and travel across rough terrain to visit villages in need. Their luck doesn't always hold out. They've had to push vehicles through rivers and mud more than once. But when they arrive, they receive a true heroes' welcome: a feast, singing and dancing, and the best accommodations the community can offer. In these villages, free medical care is truly a cause for celebration, and Bwelle -- with his big smile and boundless energy -- is more than happy to join in the fun. The next morning, the team begins meeting with hundreds of patients. "We are receiving 500 people in each trip," Bwelle said. They are coming from 60 kilometers around the village, and they're coming on foot. Each of these weekend clinics provides a variety of medical care. Many people are treated for malaria, tuberculosis, malnutrition, diabetes, parasites and sexually transmitted diseases. Others might receive crutches, a pair of donated eyeglasses or free birth certificates -- documentation that's required for school but that many impoverished families simply can't afford. In the evenings, the team will do simple surgeries with local anesthesia. Operations are usually done in a schoolhouse, town hall or home; after the procedure, patients get up and walk to the recovery area to make way for the next person. With the group's generator lighting the operating room and sanitizing equipment, Bwelle and his volunteers work into the early hours of Sunday morning. It's a backbreaking pace, but village musicians usually help keep the team motivated. "They are beating drums all night to keep us awake and continue our work," Bwelle said. On Sunday, the team heads back to the city, tired but proud of their work. The group -- a mix of Cameroonian doctors and foreign medical students -- has performed 700 free surgeries in the past year, and they know that their help can make a world of difference to those they help. One man explained that the free hernia surgery he'd received will allow him to work again. "This will change my future with my family," the man said. In addition to holding these weekend clinics and working as a hospital surgeon, Bwelle also works nights at private medical clinics around Yaounde. It's this second job, he said, that funds about 60% of his nonprofit; the rest is covered by private donations. "I'm not sure when he sleeps," said Katie O'Malley, a second-year medical student from Drexel University in Philadelphia and volunteer with Bwelle's group. He is always either at the hospital or trying to make money for the organization so he can go on these campaigns. For medical and nursing students such as O'Malley, who come from the United States and Europe to join Bwelle on his missions, it's a hands-on opportunity they'd never get at home. "We've been able to scrub in on surgeries where we help blot blood away or hold tools for Dr. Bwelle," O'Malley said. That's not something you'd ever get to do in America as a second-year medical student. The student volunteers usually pay their own way to Cameroon, often arriving with donated medical supplies. But once they arrive in Yaounde, their board, transportation and instruction are covered by Bwelle. "He's a hero, without a doubt," O'Malley said. He gives his life to this organization, and his desire to help the Cameroon people is everlasting. For Bwelle, the near-constant workload isn't a hardship. Helping others live happier lives, fulfilling a promise he made to his father, is something that brings him great joy. "I am so happy when I am doing this work," Bwelle said. And I think about my father. I hope he sees what I am doing. To make people laugh, to reduce the pain, that's why I'm doing this. Check out the ASCOVIME website and see how to help. Mastering the struggle to perfection. The role of Santiago, the old man in Hemingway's novel "The Old Man and the Sea", is perfectly suited to Horst Janson. Janson is an old hand himself when it comes to his profession, the art of acting. The old man, Santiago, is the best there is when it comes to fishing. As such, the pair complement one another superbly. You almost think that you can see the folds in the old man's neck, of which young fisherman Manolo speaks. When Santiago sits arched over on the chair, tired of life, this is a genuine emotion for Janson. Furthermore, the role of the old fisherman is a character role, through and through, which Janson masters excellently. Hemingway told the story of a fighter, a courageous man who doesn't give up and who ultimately wins the battle against the fish as a result of his knowledge and his strong will. For long periods, Janson is the only performer on the stage. He manages to focus the audience's attention on himself, with the result that his monologues never become boring, not even for just a moment. His efforts to finally pull the fish to the surface of the water are so genuine that members of the audience forget that the sea in question consists merely of water bottles, illuminated in blue. Director Jens Hasselmann has the old man in the boat perform in front of Fischerdorf. During the course of the performance he has the respective active scene illuminated. Santiago's cabin and the bar of singer Marie-Luise Gunst, who sings of the Cuban lifestyle, with your songs and beautiful voice. The four musicians accompany with Cuban rhythms and guests at the bar at the same time. Tourism: Descent to the Romans Beneath Cologne, a sewage channel from Roman times, measuring around 120 metres in length, has been preserved. Anyone visiting Cologne cannot miss the cathedral. The two towers, measuring around 157 metres, extend into the heavens, making it Europe's second tallest church building. However, only a few visitors who marvel at the two ornate church towers realise that there is much to discover beneath the cathedral. Rainer Schulze is an expert when it comes to the Cologne underworld. The meeting point for his tours is the Cologne Tourism Service Centre, right at the cathedral. The tour begins in a somewhat unspectacular fashion: "We begin in the underground car park," says Schulze. In the 1970s, the city fathers wanted a car-friendly city, and therefore the only sections of the old city wall that remain are those that were not too tall. The majority of the users of the parking garage therefore now hurry past the Roman relics and simply drop off their car. However, anyone who takes a closer look on parking level D2 will discover an archaeological site, cordoned off by metal railings. Ruins measuring five metres tall, made from stones around the size of the palm of your hand, are waiting to be discovered. "These are remnants of the Roman city wall, which was built in the second half of the first century A.D," explains Schulze. Before returning to daylight, Schulze has participants take a glance into a dark, 15-metre shaft on the upper parking level. This is the well of the old cathedral, which is barely noticed at all these days. The next stop on the tour is the praetorium, where participants once again descend to the depths. Here we find the residence of what was once the most powerful man to the north of the Alps, the Praetor of the CCAA. One visitor wants to know what CCAA means. "The abbreviation stands for "Colonia Claudia Ara Agrippinensium", which is basically amounts to "City under Roman Law and City of the Agrippinians, founded under Emperor Claudius at the Site of the Altars for the Imperial Cult". And the Praetorium refers to the former Governor's Palace and the centre of power of the Roman Empire on the Rhine. From the exhibition vestibule, a tunnel leads to the preserved Roman sewer, measuring around 120 metres in length. "If you want you can take a peaceful stroll along a section of the so-called Cloaca Maxima," says Schulze, encouraging the guests. Schulze has one more surprise. Once he has collected the key from the information desk, he leads the group to a 16-metre, accessible shaft. "We are now in the Mikwe, a ritual Jewish bath," he explains. The Jewish congregation built their bath deep into the ground in order to reach the groundwater essential for ritual washing. To this day the differing water levels caused by the varying levels of the Rhine can be read at the lower end of the Mikwe, the origins of which trace back to the eighth century. The Mikwe is to form part of an archaeological area at the Town Hall Square, on which construction work is set to begin shortly. However, it will be a few years before it is complete. Leg almost hacked off: Rocker retrial A bloody attack within the 'Rocker' scene is to be re-investigated after more than four years. Proceedings for attempted murder, grievous bodily harm and material damage, brought against two 30-year-olds have begun before the Frankfurt District Court. They are being accompanied by strict security precautions. The accused initially remained silent. They are said to have been active within the Rocker scene and to have at the time belonged to the Bandidos. The Public Prosecutor accused them of having stabbed and beaten three men in a car in Finowfurt, together with unknown accomplices. All the victims were seriously injured, with one man almost losing a leg. The victims were said to have belonged to the competing gang, the Hell's Angels. One is said to have been a high-ranking member from Berlin. It seems that the attack was preceded by a car chase involving several cars. According to accusations, this was part of a turf war and represented a demonstration of power. The two accused were acquitted in an initial trial at the beginning of 2012. At the time, a speaker for the court said that it could not be proven that the men had actually been involved in the bloody feud. The assailants had worn masks and had not been recognised. The Federal Supreme Court repealed the verdict following an appeal by the Public Prosecutor's Office and referred the case back to the District Court for a re-trial. One of the accused is currently serving time in an open prison on account of another offence. Proceedings initially mainly involved the reconstruction of the series of events on the night of the crime. The police inspector responsible at the time was invited as a witness. The central point of focus was on mobile phone conversations between the accused and third parties, which the police had intercepted. What makes things difficult is that Rockers almost always observe what they consider to be complete silence appearing before the court - they say absolutely nothing. This also applies in the case of the victims. In the first trial, only one of the victims spoke out. When asked, Public Prosecutor Stefan Golfier of the Frankfurt (Oder) Public Prosecutor's Office said that new evidence had come to light since the previous trial. A further eleven days of proceedings have been scheduled for the trial. The throwaway society does not think The night was long, the music loud and the atmosphere good, but at some point everyone has to go home. Except: In the stomachs of those in the passenger and back seats, hunger strikes. Of course, this may be down to the odd cocktail or glass of bubbly! So what could be more natural than to casually pull into the next drive-through to pick yourself up a little treat? I admit, I am right with you with it comes to picking up some fast food late at night, or early in the morning as the case may be. A few chips, a coke, a burger - and then straight home and into bed! However, on the way home the clear differences between me and other hungry clubbers become evident. What is wrong with people who continually throw their fast food bags out of the car window?! At the weekend in particular, discarded paper bags can be found at the side of the road and in car parks. "Why is this?" I ask myself. Are the people too stupid to take their bags home or throw them into the nearest rubbish bin? After all, waste paper does more than spoil the landscape. Bags have also been seen covering transport facilities such as crash barriers, thus causing accidents. However, the so-called "throwaway society" does not think about such things. They probably do not even know what the term even means. If you are often out and about in the evening, more often than not with several people in the car, you will know what a back seat can look like after having partied through the night: clothes, bottles and other rubbish begin to pile up. A few bags won't make much of a difference there - in contrast to on the street where no-one wants to trample through other peoples' leftover food. I can see the day coming when towns and municipalities will get fed up clearing up - and the fast food chains will have to operate a deposit scheme for their bags. Obama's Health Care Walk Back Amid a firestorm of criticism, President Obama yesterday walked back his oft-repeated, unambiguous promise that "if you like your health plan, you can keep it." With hundreds of thousands receiving cancellation notices from their providers, Republicans have slammed the president in recent days for misleading the American public. Yesterday, Obama tweaked his original pledge. "For the vast majority of people who have health insurance that works, you can keep it," he said in a speech in Boston. Addressing what he called the "flurry in the news" about the cancellations, Obama urged Americans receiving these notices to shop for new coverage in the marketplace. Most people are going to be able to get better, comprehensive health care plans for the same price or even cheaper than projected. "You're going to get a better deal," he said. The administration has said it should come as no surprise that the 5 percent of the population who purchase insurance on their own may be forced to switch plans because their coverage doesn't meet the new standards required under the Affordable Care Act. "Let me say directly to these Americans: you deserve better," Sebelius said in testimony before the House Energy and Commerce Committee in Washington. Sebelius, who is overseeing implementation of the Affordable Care Act, said the launch of the online marketplace has gone "miserably" since October. "I am as frustrated and angry as anyone," she said. I am eager to earn your confidence back. An exasperated Sebelius uttered that phrase, caught by a hot mic, to an aide seated behind her at yesterday's House hearing following a contentious exchange with Rep. Billy Long, R-Mo., over whether she should be required to enroll in Obamacare. More than three hours into the hearing, Long repeatedly pressed Sebelius on why the "architect" of the Affordable Care Act has not voluntarily forgone government-sponsored insurance to purchase a plan through HealthCare.gov, which she is now pitching to millions of Americans. The government in Jerusalem fails to confirm an attack on the Syrian airforce base On Thursday, an American government official, who wished to remain anonymous, made a statement to American news broadcaster CNN, stating that Israeli fighter planes had attacked an airforce base in the Syrian town of Latakia the day before. The target was "missiles and related equipment", which the Israeli government feared were intended for the Lebanese Hezbollah, according to CNN. The Syrian and Lebanese media, as well as Arabic broadcaster Al-Arabiya, had previously reported that the base in the port town of Latakia was fired upon during the night from Wednesday to Thursday, and the Israelis were identified as the responsible party. Israeli television broadcaster Channel 2 showed satellite images of the base in Latakia, in which Russian S-125 Newa-type defence missiles and a battery of SA-3 missiles could be seen, which according to Channel 2 have a range of 35 kilometres and can transport warheads weighing up to 70 kilograms. Unsure, the government in Jerusalem has not officially confirmed the attack. However, press agency Reuters has also quoted an anonymous Israeli government official as saying that he believed that Israel had carried out the attack, but was not sure. In any case, a spokesperson for the Israeli Ministry of Defence said: "We are not commenting on these reports". Journalist Ron Ben-Yishai, writing for daily newspaper Yedioth Ahronoth, emphasised that the Syrian regime had already previously attempted, in some cases successfully, to deliver ground to air missiles to Hezbollah. The Israeli government had previously repeatedly warned that any attempt by Syria to supply Hezbollah with chemical or other dangerous weapons would be crossing a "red line", which would result in a military response. John Kerry says US spying has "reached too far inappropriately" in unprecedented admission John Kerry has indicated a softening of the U.S's defensive stance on its surveillance programmes with an unprecedented admission that on occasions its spying has "reached too far inappropriately." The Secretary of State also admitted that he'd been guilty, along with Barack Obama, of being on "automatic pilot" as incendiary revelations from whistleblower Edward Snowden about the NSA's spying activities emerged. The leaks have put the US government at the centre of a diplomatic storm with its allies. Speaking to an open government conference in London via video link, Mr Kerry said: "There is no question that the President and I and others in government have actually learned of some things that had been happening on an automatic pilot because the ability has been there, going back to World War Two and to the very difficult years of the Cold War, and then, of course, 9/11." He then became the first high-ranking member of the U.S government to admit that US spying had crossed the line, but emphasised that no one's rights had been abused. He said: "In some cases, it has reached too far inappropriately." And the President is determined to try to clarify and make clear for people and is now doing a thorough review in order that nobody will have the sense of abuse. I assure you innocent people are not being abused in this process. Mr Kerry insisted, however, that the NSA was a force for good and that its surveillance operations had saved many lives. He added: "We're dealing in a new world where people are willing to blow themselves up." There is radical extremism in the world that is hell-bent and determined to try to kill people and blow people up and attack governments. So what if you were able to intercept that and stop it before it happens? We have actually prevented airplanes from going down, buildings from being blown up, and people from being assassinated because we've been able to learn ahead of time of the plans. Meanwhile, U.S. lawmakers will head to Europe to help address concerns abroad about alleged U.S. spying and convince the Europeans of the need to continue joint anti-terrorism efforts with the U.S., the chairman of a Senate subcommittee on European affairs said on Thursday. Senator Chris Murphy of Connecticut said he spoke with European Parliament members and others this week and is concerned about their threats to stop participating in anti-terrorist organizations because of frustration over surveillance by the National Security Agency. "It's really important for U.S. national security interests for Europeans to stay on board with us with respect to our mutual anti-terrorism endeavors," Murphy, a first-term Democrat and chairman of the Senate Foreign Relations Subcommittee on European Affairs, said in an interview from Washington. And I'm going to Europe to make it clear to them that we need to continue to work together in combatting terrorism, notwithstanding their anger over these NSA programs. News reports that the NSA swept up millions of phone records in Europe have frayed relations with some U.S. allies, though the agency's chief said this week that they were inaccurate and reflected a misunderstanding of metadata that Nato allies collected and shared with the United States. Other revelations cited documents leaked by Snowden that the NSA monitored German Chancellor Angela Merkel's cellphone and those of up to 34 other world leaders. The national intelligence director, James Clapper, defended spying on allies as necessary and said it's commonplace on both sides. Amid the uproar, Murphy said his office is arranging the congressional trip, expected to take place this year, and hopes the delegation will include members of both parties and both chambers. Names of other participating lawmakers were to be released in coming days. He said the itinerary is still being worked out. While Murphy said the purpose of the trip is to help improve relationships, he said some "tough love" will also be dispensed. He said European leaders need to be honest with their own people about the kind of espionage programs they've used for years themselves. "While we can amend our surveillance programs to better protect the rights of Europeans, they also need to come to terms with the fact that we're not the only ones that are out there spying," Murphy said. Meanwhile, Mr Kerry is scheduled to head this weekend to the Middle East and Poland to address rancor over U.S. strategies in the Syria, Egypt and Iran as well as U.S. surveillance activities. A stubborn ankle injury threatens to prevent the deployment of Nicolai Müller in the FSV Mainz's Bundesliga away match at FC Augsburg. Mainz are concerned regarding the availability of Nicolai Müller. Tomorrow he will attempt to train with the team. Up until now he has only managed individual training. "We will shortly make a decision regarding whether he will play," said manager Thomas Tuchel. The 40 year-old hopes to have his best striker (with six goals) in the team. Mainz are already without the injured key players Niki Zimling, Julian Baumgartlinger and Niko Bungert. Australian woman appeals Thai jail time A 21-year-old Sydney woman sentenced to 15 days jail in Phuket for falsely claiming she was assaulted by a taxi driver is appealing the verdict and has been granted bail. Stevie Rochelle Bamford was initially found guilty by a Phuket provincial court on June 15 of making false claims after telling Thai police a local taxi driver, with two other men restraining her, carried out the assault in the early hours of Sunday June 10. However, CCTV footage later revealed she had returned to her hotel safely after becoming separated from her Australian boyfriend. Phuket police interviewed Bamford for two days before she confessed to fabricating the story. She was held in local police cells before the court hearing. Bamford was sentenced to serve the 15-day prison term at a low security detention centre on the outskirts of Phuket rather than in an adult women's jail. She is the daughter of former Australian league player Peter Tunks, who has appealed to the Department of Foreign Affairs in Canberra to assist his daughter. Tunks told Sydney's Sunday Telegraph the whole family was "extremely concerned" about his daughter's welfare and wanted her back in Australia. "It's obviously been a worrying time but we're hopeful to have her back home safely as soon as possible," Tunks said. Bamford is appealing the sentence and has been granted bail of 50,000 baht. Reports in Australia said that in the meantime, she was holidaying at the resort area of Krabi in Southern Thailand. Thai-based legal sources said Bamford was being represented by a local lawyer in Phuket but warned that the appeal may lead to the court increasing her sentence by up to two years and forcing her to serve it in an adult prison. However, following the recent murder of Australian travel agent Michelle Smith in Phuket, Thailand may also be looking to repair its battered tourist image, leading to an acquittal. ================================================ FILE: official/transformer/transformer_main.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Train and evaluate the Transformer model. See README for description of setting the training schedule and evaluating the BLEU score. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tempfile # pylint: disable=g-bad-import-order from six.moves import xrange # pylint: disable=redefined-builtin from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.transformer import compute_bleu from official.transformer import translate from official.transformer.data_download import VOCAB_FILE from official.transformer.model import model_params from official.transformer.model import transformer from official.transformer.utils import dataset from official.transformer.utils import metrics from official.transformer.utils import tokenizer from official.utils.flags import core as flags_core from official.utils.logs import hooks_helper from official.utils.logs import logger from official.utils.misc import model_helpers PARAMS_MAP = { "base": model_params.TransformerBaseParams, "big": model_params.TransformerBigParams, } DEFAULT_TRAIN_EPOCHS = 10 BLEU_DIR = "bleu" INF = int(1e9) # Dictionary containing tensors that are logged by the logging hooks. Each item # maps a string to the tensor name. TENSORS_TO_LOG = { "learning_rate": "model/get_train_op/learning_rate/learning_rate", "cross_entropy_loss": "model/cross_entropy"} def model_fn(features, labels, mode, params): """Defines how to train, evaluate and predict from the transformer model.""" with tf.variable_scope("model"): inputs, targets = features, labels # Create model and get output logits. model = transformer.Transformer(params, mode == tf.estimator.ModeKeys.TRAIN) output = model(inputs, targets) # When in prediction mode, the labels/targets is None. The model output # is the prediction if mode == tf.estimator.ModeKeys.PREDICT: return tf.estimator.EstimatorSpec( tf.estimator.ModeKeys.PREDICT, predictions=output) logits = output # Calculate model loss. # xentropy contains the cross entropy loss of every nonpadding token in the # targets. xentropy, weights = metrics.padded_cross_entropy_loss( logits, targets, params.label_smoothing, params.vocab_size) # Compute the weighted mean of the cross entropy losses loss = tf.reduce_sum(xentropy) / tf.reduce_sum(weights) # Save loss as named tensor that will be logged with the logging hook. tf.identity(loss, "cross_entropy") if mode == tf.estimator.ModeKeys.EVAL: return tf.estimator.EstimatorSpec( mode=mode, loss=loss, predictions={"predictions": logits}, eval_metric_ops=metrics.get_eval_metrics(logits, labels, params)) else: train_op = get_train_op(loss, params) return tf.estimator.EstimatorSpec(mode=mode, loss=loss, train_op=train_op) def get_learning_rate(learning_rate, hidden_size, learning_rate_warmup_steps): """Calculate learning rate with linear warmup and rsqrt decay.""" with tf.name_scope("learning_rate"): warmup_steps = tf.to_float(learning_rate_warmup_steps) step = tf.to_float(tf.train.get_or_create_global_step()) learning_rate *= (hidden_size ** -0.5) # Apply linear warmup learning_rate *= tf.minimum(1.0, step / warmup_steps) # Apply rsqrt decay learning_rate *= tf.rsqrt(tf.maximum(step, warmup_steps)) # Create a named tensor that will be logged using the logging hook. # The full name includes variable and names scope. In this case, the name # is model/get_train_op/learning_rate/learning_rate tf.identity(learning_rate, "learning_rate") # Save learning rate value to TensorBoard summary. tf.summary.scalar("learning_rate", learning_rate) return learning_rate def get_train_op(loss, params): """Generate training operation that updates variables based on loss.""" with tf.variable_scope("get_train_op"): learning_rate = get_learning_rate( params.learning_rate, params.hidden_size, params.learning_rate_warmup_steps) # Create optimizer. Use LazyAdamOptimizer from TF contrib, which is faster # than the TF core Adam optimizer. optimizer = tf.contrib.opt.LazyAdamOptimizer( learning_rate, beta1=params.optimizer_adam_beta1, beta2=params.optimizer_adam_beta2, epsilon=params.optimizer_adam_epsilon) # Calculate and apply gradients using LazyAdamOptimizer. global_step = tf.train.get_global_step() tvars = tf.trainable_variables() gradients = optimizer.compute_gradients( loss, tvars, colocate_gradients_with_ops=True) train_op = optimizer.apply_gradients( gradients, global_step=global_step, name="train") # Save gradient norm to Tensorboard tf.summary.scalar("global_norm/gradient_norm", tf.global_norm(list(zip(*gradients))[0])) return train_op def translate_and_compute_bleu(estimator, subtokenizer, bleu_source, bleu_ref): """Translate file and report the cased and uncased bleu scores.""" # Create temporary file to store translation. tmp = tempfile.NamedTemporaryFile(delete=False) tmp_filename = tmp.name translate.translate_file( estimator, subtokenizer, bleu_source, output_file=tmp_filename, print_all_translations=False) # Compute uncased and cased bleu scores. uncased_score = compute_bleu.bleu_wrapper(bleu_ref, tmp_filename, False) cased_score = compute_bleu.bleu_wrapper(bleu_ref, tmp_filename, True) os.remove(tmp_filename) return uncased_score, cased_score def get_global_step(estimator): """Return estimator's last checkpoint.""" return int(estimator.latest_checkpoint().split("-")[-1]) def evaluate_and_log_bleu(estimator, bleu_source, bleu_ref, vocab_file_path): """Calculate and record the BLEU score.""" subtokenizer = tokenizer.Subtokenizer(vocab_file_path) uncased_score, cased_score = translate_and_compute_bleu( estimator, subtokenizer, bleu_source, bleu_ref) tf.logging.info("Bleu score (uncased):", uncased_score) tf.logging.info("Bleu score (cased):", cased_score) return uncased_score, cased_score def train_schedule( estimator, train_eval_iterations, single_iteration_train_steps=None, single_iteration_train_epochs=None, train_hooks=None, benchmark_logger=None, bleu_source=None, bleu_ref=None, bleu_threshold=None, vocab_file_path=None): """Train and evaluate model, and optionally compute model's BLEU score. **Step vs. Epoch vs. Iteration** Steps and epochs are canonical terms used in TensorFlow and general machine learning. They are used to describe running a single process (train/eval): - Step refers to running the process through a single or batch of examples. - Epoch refers to running the process through an entire dataset. E.g. training a dataset with 100 examples. The dataset is divided into 20 batches with 5 examples per batch. A single training step trains the model on one batch. After 20 training steps, the model will have trained on every batch in the dataset, or, in other words, one epoch. Meanwhile, iteration is used in this implementation to describe running multiple processes (training and eval). - A single iteration: 1. trains the model for a specific number of steps or epochs. 2. evaluates the model. 3. (if source and ref files are provided) compute BLEU score. This function runs through multiple train+eval+bleu iterations. Args: estimator: tf.Estimator containing model to train. train_eval_iterations: Number of times to repeat the train+eval iteration. single_iteration_train_steps: Number of steps to train in one iteration. single_iteration_train_epochs: Number of epochs to train in one iteration. train_hooks: List of hooks to pass to the estimator during training. benchmark_logger: a BenchmarkLogger object that logs evaluation data bleu_source: File containing text to be translated for BLEU calculation. bleu_ref: File containing reference translations for BLEU calculation. bleu_threshold: minimum BLEU score before training is stopped. vocab_file_path: Path to vocabulary file used to subtokenize bleu_source. Raises: ValueError: if both or none of single_iteration_train_steps and single_iteration_train_epochs were defined. """ # Ensure that exactly one of single_iteration_train_steps and # single_iteration_train_epochs is defined. if single_iteration_train_steps is None: if single_iteration_train_epochs is None: raise ValueError( "Exactly one of single_iteration_train_steps or " "single_iteration_train_epochs must be defined. Both were none.") else: if single_iteration_train_epochs is not None: raise ValueError( "Exactly one of single_iteration_train_steps or " "single_iteration_train_epochs must be defined. Both were defined.") evaluate_bleu = bleu_source is not None and bleu_ref is not None # Print details of training schedule. tf.logging.info("Training schedule:") if single_iteration_train_epochs is not None: tf.logging.info("\t1. Train for %d epochs." % single_iteration_train_epochs) else: tf.logging.info("\t1. Train for %d steps." % single_iteration_train_steps) tf.logging.info("\t2. Evaluate model.") if evaluate_bleu: tf.logging.info("\t3. Compute BLEU score.") if bleu_threshold is not None: tf.logging.info("Repeat above steps until the BLEU score reaches %f" % bleu_threshold) if not evaluate_bleu or bleu_threshold is None: tf.logging.info("Repeat above steps %d times." % train_eval_iterations) if evaluate_bleu: # Create summary writer to log bleu score (values can be displayed in # Tensorboard). bleu_writer = tf.summary.FileWriter( os.path.join(estimator.model_dir, BLEU_DIR)) if bleu_threshold is not None: # Change loop stopping condition if bleu_threshold is defined. train_eval_iterations = INF # Loop training/evaluation/bleu cycles for i in xrange(train_eval_iterations): tf.logging.info("Starting iteration %d" % (i + 1)) # Train the model for single_iteration_train_steps or until the input fn # runs out of examples (if single_iteration_train_steps is None). estimator.train( dataset.train_input_fn, steps=single_iteration_train_steps, hooks=train_hooks) eval_results = estimator.evaluate(dataset.eval_input_fn) tf.logging.info("Evaluation results (iter %d/%d):" % (i + 1, train_eval_iterations)) tf.logging.info(eval_results) benchmark_logger.log_evaluation_result(eval_results) # The results from estimator.evaluate() are measured on an approximate # translation, which utilize the target golden values provided. The actual # bleu score must be computed using the estimator.predict() path, which # outputs translations that are not based on golden values. The translations # are compared to reference file to get the actual bleu score. if evaluate_bleu: uncased_score, cased_score = evaluate_and_log_bleu( estimator, bleu_source, bleu_ref, vocab_file_path) # Write actual bleu scores using summary writer and benchmark logger global_step = get_global_step(estimator) summary = tf.Summary(value=[ tf.Summary.Value(tag="bleu/uncased", simple_value=uncased_score), tf.Summary.Value(tag="bleu/cased", simple_value=cased_score), ]) bleu_writer.add_summary(summary, global_step) bleu_writer.flush() benchmark_logger.log_metric( "bleu_uncased", uncased_score, global_step=global_step) benchmark_logger.log_metric( "bleu_cased", cased_score, global_step=global_step) # Stop training if bleu stopping threshold is met. if model_helpers.past_stop_threshold(bleu_threshold, uncased_score): bleu_writer.close() break def define_transformer_flags(): """Add flags and flag validators for running transformer_main.""" # Add common flags (data_dir, model_dir, train_epochs, etc.). flags_core.define_base(multi_gpu=False, num_gpu=False, export_dir=False) flags_core.define_performance( num_parallel_calls=True, inter_op=False, intra_op=False, synthetic_data=False, max_train_steps=False, dtype=False ) flags_core.define_benchmark() # Set flags from the flags_core module as "key flags" so they're listed when # the '-h' flag is used. Without this line, the flags defined above are # only shown in the full `--helpful` help text. flags.adopt_module_key_flags(flags_core) # Add transformer-specific flags flags.DEFINE_enum( name="param_set", short_name="mp", default="big", enum_values=["base", "big"], help=flags_core.help_wrap( "Parameter set to use when creating and training the model. The " "parameters define the input shape (batch size and max length), " "model configuration (size of embedding, # of hidden layers, etc.), " "and various other settings. The big parameter set increases the " "default batch size, embedding/hidden size, and filter size. For a " "complete list of parameters, please see model/model_params.py.")) # Flags for training with steps (may be used for debugging) flags.DEFINE_integer( name="train_steps", short_name="ts", default=None, help=flags_core.help_wrap("The number of steps used to train.")) flags.DEFINE_integer( name="steps_between_evals", short_name="sbe", default=1000, help=flags_core.help_wrap( "The Number of training steps to run between evaluations. This is " "used if --train_steps is defined.")) # BLEU score computation flags.DEFINE_string( name="bleu_source", short_name="bls", default=None, help=flags_core.help_wrap( "Path to source file containing text translate when calculating the " "official BLEU score. --bleu_source, --bleu_ref, and --vocab_file " "must be set. Use the flag --stop_threshold to stop the script based " "on the uncased BLEU score.")) flags.DEFINE_string( name="bleu_ref", short_name="blr", default=None, help=flags_core.help_wrap( "Path to source file containing text translate when calculating the " "official BLEU score. --bleu_source, --bleu_ref, and --vocab_file " "must be set. Use the flag --stop_threshold to stop the script based " "on the uncased BLEU score.")) flags.DEFINE_string( name="vocab_file", short_name="vf", default=VOCAB_FILE, help=flags_core.help_wrap( "Name of vocabulary file containing subtokens for subtokenizing the " "bleu_source file. This file is expected to be in the directory " "defined by --data_dir.")) flags_core.set_defaults(data_dir="/tmp/translate_ende", model_dir="/tmp/transformer_model", batch_size=None, train_epochs=None) @flags.multi_flags_validator( ["train_epochs", "train_steps"], message="Both --train_steps and --train_epochs were set. Only one may be " "defined.") def _check_train_limits(flag_dict): return flag_dict["train_epochs"] is None or flag_dict["train_steps"] is None @flags.multi_flags_validator( ["data_dir", "bleu_source", "bleu_ref", "vocab_file"], message="--bleu_source, --bleu_ref, and/or --vocab_file don't exist. " "Please ensure that the file paths are correct.") def _check_bleu_files(flags_dict): """Validate files when bleu_source and bleu_ref are defined.""" if flags_dict["bleu_source"] is None or flags_dict["bleu_ref"] is None: return True # Ensure that bleu_source, bleu_ref, and vocab files exist. vocab_file_path = os.path.join( flags_dict["data_dir"], flags_dict["vocab_file"]) return all([ tf.gfile.Exists(flags_dict["bleu_source"]), tf.gfile.Exists(flags_dict["bleu_ref"]), tf.gfile.Exists(vocab_file_path)]) def run_transformer(flags_obj): """Create tf.Estimator to train and evaluate transformer model. Args: flags_obj: Object containing parsed flag values. """ # Determine training schedule based on flags. if flags_obj.train_steps is not None: train_eval_iterations = ( flags_obj.train_steps // flags_obj.steps_between_evals) single_iteration_train_steps = flags_obj.steps_between_evals single_iteration_train_epochs = None else: train_epochs = flags_obj.train_epochs or DEFAULT_TRAIN_EPOCHS train_eval_iterations = train_epochs // flags_obj.epochs_between_evals single_iteration_train_steps = None single_iteration_train_epochs = flags_obj.epochs_between_evals # Add flag-defined parameters to params object params = PARAMS_MAP[flags_obj.param_set] params.data_dir = flags_obj.data_dir params.num_parallel_calls = flags_obj.num_parallel_calls params.epochs_between_evals = flags_obj.epochs_between_evals params.repeat_dataset = single_iteration_train_epochs params.batch_size = flags_obj.batch_size or params.batch_size # Create hooks that log information about the training and metric values train_hooks = hooks_helper.get_train_hooks( flags_obj.hooks, tensors_to_log=TENSORS_TO_LOG, # used for logging hooks batch_size=params.batch_size # for ExamplesPerSecondHook ) benchmark_logger = logger.config_benchmark_logger(flags_obj) benchmark_logger.log_run_info( model_name="transformer", dataset_name="wmt_translate_ende", run_params=params.__dict__) # Train and evaluate transformer model estimator = tf.estimator.Estimator( model_fn=model_fn, model_dir=flags_obj.model_dir, params=params) train_schedule( estimator=estimator, # Training arguments train_eval_iterations=train_eval_iterations, single_iteration_train_steps=single_iteration_train_steps, single_iteration_train_epochs=single_iteration_train_epochs, train_hooks=train_hooks, benchmark_logger=benchmark_logger, # BLEU calculation arguments bleu_source=flags_obj.bleu_source, bleu_ref=flags_obj.bleu_ref, bleu_threshold=flags_obj.stop_threshold, vocab_file_path=os.path.join(flags_obj.data_dir, flags_obj.vocab_file)) def main(_): run_transformer(flags.FLAGS) if __name__ == "__main__": tf.logging.set_verbosity(tf.logging.INFO) define_transformer_flags() absl_app.run(main) ================================================ FILE: official/transformer/translate.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Translate text or files using trained transformer model.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os # pylint: disable=g-bad-import-order from six.moves import xrange # pylint: disable=redefined-builtin from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: enable=g-bad-import-order from official.transformer.data_download import VOCAB_FILE from official.transformer.model import model_params from official.transformer.utils import tokenizer from official.utils.flags import core as flags_core _DECODE_BATCH_SIZE = 32 _EXTRA_DECODE_LENGTH = 100 _BEAM_SIZE = 4 _ALPHA = 0.6 def _get_sorted_inputs(filename): """Read and sort lines from the file sorted by decreasing length. Args: filename: String name of file to read inputs from. Returns: Sorted list of inputs, and dictionary mapping original index->sorted index of each element. """ with tf.gfile.Open(filename) as f: records = f.read().split("\n") inputs = [record.strip() for record in records] if not inputs[-1]: inputs.pop() input_lens = [(i, len(line.split())) for i, line in enumerate(inputs)] sorted_input_lens = sorted(input_lens, key=lambda x: x[1], reverse=True) sorted_inputs = [] sorted_keys = {} for i, (index, _) in enumerate(sorted_input_lens): sorted_inputs.append(inputs[index]) sorted_keys[index] = i return sorted_inputs, sorted_keys def _encode_and_add_eos(line, subtokenizer): """Encode line with subtokenizer, and add EOS id to the end.""" return subtokenizer.encode(line) + [tokenizer.EOS_ID] def _trim_and_decode(ids, subtokenizer): """Trim EOS and PAD tokens from ids, and decode to return a string.""" try: index = list(ids).index(tokenizer.EOS_ID) return subtokenizer.decode(ids[:index]) except ValueError: # No EOS found in sequence return subtokenizer.decode(ids) def translate_file( estimator, subtokenizer, input_file, output_file=None, print_all_translations=True): """Translate lines in file, and save to output file if specified. Args: estimator: tf.Estimator used to generate the translations. subtokenizer: Subtokenizer object for encoding and decoding source and translated lines. input_file: file containing lines to translate output_file: file that stores the generated translations. print_all_translations: If true, all translations are printed to stdout. Raises: ValueError: if output file is invalid. """ batch_size = _DECODE_BATCH_SIZE # Read and sort inputs by length. Keep dictionary (original index-->new index # in sorted list) to write translations in the original order. sorted_inputs, sorted_keys = _get_sorted_inputs(input_file) num_decode_batches = (len(sorted_inputs) - 1) // batch_size + 1 def input_generator(): """Yield encoded strings from sorted_inputs.""" for i, line in enumerate(sorted_inputs): if i % batch_size == 0: batch_num = (i // batch_size) + 1 tf.logging.info("Decoding batch %d out of %d." % (batch_num, num_decode_batches)) yield _encode_and_add_eos(line, subtokenizer) def input_fn(): """Created batched dataset of encoded inputs.""" ds = tf.data.Dataset.from_generator( input_generator, tf.int64, tf.TensorShape([None])) ds = ds.padded_batch(batch_size, [None]) return ds translations = [] for i, prediction in enumerate(estimator.predict(input_fn)): translation = _trim_and_decode(prediction["outputs"], subtokenizer) translations.append(translation) if print_all_translations: tf.logging.info("Translating:\n\tInput: %s\n\tOutput: %s" % (sorted_inputs[i], translation)) # Write translations in the order they appeared in the original file. if output_file is not None: if tf.gfile.IsDirectory(output_file): raise ValueError("File output is a directory, will not save outputs to " "file.") tf.logging.info("Writing to file %s" % output_file) with tf.gfile.Open(output_file, "w") as f: for index in xrange(len(sorted_keys)): f.write("%s\n" % translations[sorted_keys[index]]) def translate_text(estimator, subtokenizer, txt): """Translate a single string.""" encoded_txt = _encode_and_add_eos(txt, subtokenizer) def input_fn(): ds = tf.data.Dataset.from_tensors(encoded_txt) ds = ds.batch(_DECODE_BATCH_SIZE) return ds predictions = estimator.predict(input_fn) translation = next(predictions)["outputs"] translation = _trim_and_decode(translation, subtokenizer) tf.logging.info("Translation of \"%s\": \"%s\"" % (txt, translation)) def main(unused_argv): from official.transformer import transformer_main tf.logging.set_verbosity(tf.logging.INFO) if FLAGS.text is None and FLAGS.file is None: tf.logging.warn("Nothing to translate. Make sure to call this script using " "flags --text or --file.") return subtokenizer = tokenizer.Subtokenizer( os.path.join(FLAGS.data_dir, FLAGS.vocab_file)) # Set up estimator and params params = transformer_main.PARAMS_MAP[FLAGS.param_set] params.beam_size = _BEAM_SIZE params.alpha = _ALPHA params.extra_decode_length = _EXTRA_DECODE_LENGTH params.batch_size = _DECODE_BATCH_SIZE estimator = tf.estimator.Estimator( model_fn=transformer_main.model_fn, model_dir=FLAGS.model_dir, params=params) if FLAGS.text is not None: tf.logging.info("Translating text: %s" % FLAGS.text) translate_text(estimator, subtokenizer, FLAGS.text) if FLAGS.file is not None: input_file = os.path.abspath(FLAGS.file) tf.logging.info("Translating file: %s" % input_file) if not tf.gfile.Exists(FLAGS.file): raise ValueError("File does not exist: %s" % input_file) output_file = None if FLAGS.file_out is not None: output_file = os.path.abspath(FLAGS.file_out) tf.logging.info("File output specified: %s" % output_file) translate_file(estimator, subtokenizer, input_file, output_file) def define_translate_flags(): """Define flags used for translation script.""" # Model and vocab file flags flags.DEFINE_string( name="data_dir", short_name="dd", default="/tmp/translate_ende", help=flags_core.help_wrap( "Directory for where the translate_ende_wmt32k dataset is saved.")) flags.DEFINE_string( name="vocab_file", short_name="vf", default=VOCAB_FILE, help=flags_core.help_wrap( "Name of vocabulary file containing subtokens for subtokenizing the " "input text or file. This file is expected to be in the directory " "defined by --data_dir.")) flags.DEFINE_string( name="model_dir", short_name="md", default="/tmp/transformer_model", help=flags_core.help_wrap( "Directory containing Transformer model checkpoints.")) flags.DEFINE_enum( name="param_set", short_name="mp", default="big", enum_values=["base", "big"], help=flags_core.help_wrap( "Parameter set to use when creating and training the model. The " "parameters define the input shape (batch size and max length), " "model configuration (size of embedding, # of hidden layers, etc.), " "and various other settings. The big parameter set increases the " "default batch size, embedding/hidden size, and filter size. For a " "complete list of parameters, please see model/model_params.py.")) flags.DEFINE_string( name="text", default=None, help=flags_core.help_wrap( "Text to translate. Output will be printed to console.")) flags.DEFINE_string( name="file", default=None, help=flags_core.help_wrap( "File containing text to translate. Translation will be printed to " "console and, if --file_out is provided, saved to an output file.")) flags.DEFINE_string( name="file_out", default=None, help=flags_core.help_wrap( "If --file flag is specified, save translation to this file.")) if __name__ == "__main__": define_translate_flags() FLAGS = flags.FLAGS absl_app.run(main) ================================================ FILE: official/transformer/utils/__init__.py ================================================ ================================================ FILE: official/transformer/utils/dataset.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Input pipeline for the transformer model to read, filter, and batch examples. Two things to note in the pipeline: 1. Batching scheme The examples encoded in the TFRecord files contain data in the format: {"inputs": [variable length array of integers], "targets": [variable length array of integers]} Where integers in the arrays refer to tokens in the English and German vocab file (named `vocab.ende.32768`). Prior to batching, elements in the dataset are grouped by length (max between "inputs" and "targets" length). Each group is then batched such that: group_batch_size * length <= batch_size. Another way to view batch_size is the maximum number of tokens in each batch. Once batched, each element in the dataset will have the shape: {"inputs": [group_batch_size, padded_input_length], "targets": [group_batch_size, padded_target_length]} Lengths are padded to the longest "inputs" or "targets" sequence in the batch (padded_input_length and padded_target_length can be different). This batching scheme decreases the fraction of padding tokens per training batch, thus improving the training speed significantly. 2. Shuffling While training, the dataset is shuffled in two places in the code. The first is the list of training files. Second, while reading records using `parallel_interleave`, the `sloppy` argument is used to generate randomness in the order of the examples. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tensorflow as tf # Use the number of training files as the shuffle buffer. _FILE_SHUFFLE_BUFFER = 100 # Buffer size for reading records from a TFRecord file. Each training file is # 7.2 MB, so 8 MB allows an entire file to be kept in memory. _READ_RECORD_BUFFER = 8 * 1000 * 1000 # Example grouping constants. Defines length boundaries for each group. # These values are the defaults used in Tensor2Tensor. _MIN_BOUNDARY = 8 _BOUNDARY_SCALE = 1.1 def _load_records(filename): """Read file and return a dataset of tf.Examples.""" return tf.data.TFRecordDataset(filename, buffer_size=_READ_RECORD_BUFFER) def _parse_example(serialized_example): """Return inputs and targets Tensors from a serialized tf.Example.""" data_fields = { "inputs": tf.VarLenFeature(tf.int64), "targets": tf.VarLenFeature(tf.int64) } parsed = tf.parse_single_example(serialized_example, data_fields) inputs = tf.sparse_tensor_to_dense(parsed["inputs"]) targets = tf.sparse_tensor_to_dense(parsed["targets"]) return inputs, targets def _filter_max_length(example, max_length=256): """Indicates whether the example's length is lower than the maximum length.""" return tf.logical_and(tf.size(example[0]) <= max_length, tf.size(example[1]) <= max_length) def _get_example_length(example): """Returns the maximum length between the example inputs and targets.""" length = tf.maximum(tf.shape(example[0])[0], tf.shape(example[1])[0]) return length def _create_min_max_boundaries( max_length, min_boundary=_MIN_BOUNDARY, boundary_scale=_BOUNDARY_SCALE): """Create min and max boundary lists up to max_length. For example, when max_length=24, min_boundary=4 and boundary_scale=2, the returned values will be: buckets_min = [0, 4, 8, 16, 24] buckets_max = [4, 8, 16, 24, 25] Args: max_length: The maximum length of example in dataset. min_boundary: Minimum length in boundary. boundary_scale: Amount to scale consecutive boundaries in the list. Returns: min and max boundary lists """ # Create bucket boundaries list by scaling the previous boundary or adding 1 # (to ensure increasing boundary sizes). bucket_boundaries = [] x = min_boundary while x < max_length: bucket_boundaries.append(x) x = max(x + 1, int(x * boundary_scale)) # Create min and max boundary lists from the initial list. buckets_min = [0] + bucket_boundaries buckets_max = bucket_boundaries + [max_length + 1] return buckets_min, buckets_max def _batch_examples(dataset, batch_size, max_length): """Group examples by similar lengths, and return batched dataset. Each batch of similar-length examples are padded to the same length, and may have different number of elements in each batch, such that: group_batch_size * padded_length <= batch_size. This decreases the number of padding tokens per batch, which improves the training speed. Args: dataset: Dataset of unbatched examples. batch_size: Max number of tokens per batch of examples. max_length: Max number of tokens in an example input or target sequence. Returns: Dataset of batched examples with similar lengths. """ # Get min and max boundary lists for each example. These are used to calculate # the `bucket_id`, which is the index at which: # buckets_min[bucket_id] <= len(example) < buckets_max[bucket_id] # Note that using both min and max lists improves the performance. buckets_min, buckets_max = _create_min_max_boundaries(max_length) # Create list of batch sizes for each bucket_id, so that # bucket_batch_size[bucket_id] * buckets_max[bucket_id] <= batch_size bucket_batch_sizes = [batch_size // x for x in buckets_max] # bucket_id will be a tensor, so convert this list to a tensor as well. bucket_batch_sizes = tf.constant(bucket_batch_sizes, dtype=tf.int64) def example_to_bucket_id(example_input, example_target): """Return int64 bucket id for this example, calculated based on length.""" seq_length = _get_example_length((example_input, example_target)) # TODO: investigate whether removing code branching improves performance. conditions_c = tf.logical_and( tf.less_equal(buckets_min, seq_length), tf.less(seq_length, buckets_max)) bucket_id = tf.reduce_min(tf.where(conditions_c)) return bucket_id def window_size_fn(bucket_id): """Return number of examples to be grouped when given a bucket id.""" return bucket_batch_sizes[bucket_id] def batching_fn(bucket_id, grouped_dataset): """Batch and add padding to a dataset of elements with similar lengths.""" bucket_batch_size = window_size_fn(bucket_id) # Batch the dataset and add padding so that all input sequences in the # examples have the same length, and all target sequences have the same # lengths as well. Resulting lengths of inputs and targets can differ. return grouped_dataset.padded_batch(bucket_batch_size, ([None], [None])) return dataset.apply(tf.contrib.data.group_by_window( key_func=example_to_bucket_id, reduce_func=batching_fn, window_size=None, window_size_func=window_size_fn)) def _read_and_batch_from_files( file_pattern, batch_size, max_length, num_parallel_calls, shuffle, repeat): """Create dataset where each item is a dict of "inputs" and "targets". Args: file_pattern: String used to match the input TFRecord files. batch_size: Maximum number of tokens per batch of examples max_length: Maximum number of tokens per example num_parallel_calls: Number of cpu cores for parallel input processing. shuffle: If true, randomizes order of elements. repeat: Number of times to repeat the dataset. If None, the dataset is repeated forever. Returns: tf.data.Dataset object containing examples loaded from the files. """ dataset = tf.data.Dataset.list_files(file_pattern) if shuffle: # Shuffle filenames dataset = dataset.shuffle(buffer_size=_FILE_SHUFFLE_BUFFER) # Read files and interleave results. When training, the order of the examples # will be non-deterministic. dataset = dataset.apply( tf.contrib.data.parallel_interleave( _load_records, sloppy=shuffle, cycle_length=num_parallel_calls)) # Parse each tf.Example into a dictionary # TODO: Look into prefetch_input_elements for performance optimization. dataset = dataset.map(_parse_example, num_parallel_calls=num_parallel_calls) # Remove examples where the input or target length exceeds the maximum length, dataset = dataset.filter(lambda x, y: _filter_max_length((x, y), max_length)) # Batch such that each batch has examples of similar length. dataset = _batch_examples(dataset, batch_size, max_length) dataset = dataset.repeat(repeat) # Prefetch the next element to improve speed of input pipeline. dataset = dataset.prefetch(1) return dataset def train_input_fn(params): """Load and return dataset of batched examples for use during training.""" file_pattern = os.path.join(getattr(params, "data_dir", ""), "*train*") return _read_and_batch_from_files( file_pattern, params.batch_size, params.max_length, params.num_parallel_calls, shuffle=True, repeat=params.repeat_dataset) def eval_input_fn(params): """Load and return dataset of batched examples for use during evaluation.""" file_pattern = os.path.join(getattr(params, "data_dir", ""), "*dev*") return _read_and_batch_from_files( file_pattern, params.batch_size, params.max_length, params.num_parallel_calls, shuffle=False, repeat=1) ================================================ FILE: official/transformer/utils/metrics.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the 'License'); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an 'AS IS' BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Functions for calculating loss, accuracy, and other model metrics. Metrics: - Padded loss, accuracy, and negative log perplexity. Source: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/metrics.py - BLEU approximation. Source: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/bleu_hook.py - ROUGE score. Source: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/rouge.py """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import math import numpy as np import six from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf def _pad_tensors_to_same_length(x, y): """Pad x and y so that the results have the same length (second dimension).""" with tf.name_scope("pad_to_same_length"): x_length = tf.shape(x)[1] y_length = tf.shape(y)[1] max_length = tf.maximum(x_length, y_length) x = tf.pad(x, [[0, 0], [0, max_length - x_length], [0, 0]]) y = tf.pad(y, [[0, 0], [0, max_length - y_length]]) return x, y def padded_cross_entropy_loss(logits, labels, smoothing, vocab_size): """Calculate cross entropy loss while ignoring padding. Args: logits: Tensor of size [batch_size, length_logits, vocab_size] labels: Tensor of size [batch_size, length_labels] smoothing: Label smoothing constant, used to determine the on and off values vocab_size: int size of the vocabulary Returns: Returns the cross entropy loss and weight tensors: float32 tensors with shape [batch_size, max(length_logits, length_labels)] """ with tf.name_scope("loss", [logits, labels]): logits, labels = _pad_tensors_to_same_length(logits, labels) # Calculate smoothing cross entropy with tf.name_scope("smoothing_cross_entropy", [logits, labels]): confidence = 1.0 - smoothing low_confidence = (1.0 - confidence) / tf.to_float(vocab_size - 1) soft_targets = tf.one_hot( tf.cast(labels, tf.int32), depth=vocab_size, on_value=confidence, off_value=low_confidence) xentropy = tf.nn.softmax_cross_entropy_with_logits_v2( logits=logits, labels=soft_targets) # Calculate the best (lowest) possible value of cross entropy, and # subtract from the cross entropy loss. normalizing_constant = -( confidence * tf.log(confidence) + tf.to_float(vocab_size - 1) * low_confidence * tf.log(low_confidence + 1e-20)) xentropy -= normalizing_constant weights = tf.to_float(tf.not_equal(labels, 0)) return xentropy * weights, weights def _convert_to_eval_metric(metric_fn): """Wrap a metric fn that returns scores and weights as an eval metric fn. The input metric_fn returns values for the current batch. The wrapper aggregates the return values collected over all of the batches evaluated. Args: metric_fn: function that returns scores and weights for the current batch's logits and predicted labels. Returns: function that aggregates the scores and weights from metric_fn. """ def problem_metric_fn(*args): """Returns an aggregation of the metric_fn's returned values.""" (scores, weights) = metric_fn(*args) # The tf.metrics.mean function assures correct aggregation. return tf.metrics.mean(scores, weights) return problem_metric_fn def get_eval_metrics(logits, labels, params): """Return dictionary of model evaluation metrics.""" metrics = { "accuracy": _convert_to_eval_metric(padded_accuracy)(logits, labels), "accuracy_top5": _convert_to_eval_metric(padded_accuracy_top5)( logits, labels), "accuracy_per_sequence": _convert_to_eval_metric( padded_sequence_accuracy)(logits, labels), "neg_log_perplexity": _convert_to_eval_metric(padded_neg_log_perplexity)( logits, labels, params.vocab_size), "approx_bleu_score": _convert_to_eval_metric(bleu_score)(logits, labels), "rouge_2_fscore": _convert_to_eval_metric(rouge_2_fscore)(logits, labels), "rouge_L_fscore": _convert_to_eval_metric(rouge_l_fscore)(logits, labels), } # Prefix each of the metric names with "metrics/". This allows the metric # graphs to display under the "metrics" category in TensorBoard. metrics = {"metrics/%s" % k: v for k, v in six.iteritems(metrics)} return metrics def padded_accuracy(logits, labels): """Percentage of times that predictions matches labels on non-0s.""" with tf.variable_scope("padded_accuracy", values=[logits, labels]): logits, labels = _pad_tensors_to_same_length(logits, labels) weights = tf.to_float(tf.not_equal(labels, 0)) outputs = tf.to_int32(tf.argmax(logits, axis=-1)) padded_labels = tf.to_int32(labels) return tf.to_float(tf.equal(outputs, padded_labels)), weights def padded_accuracy_topk(logits, labels, k): """Percentage of times that top-k predictions matches labels on non-0s.""" with tf.variable_scope("padded_accuracy_topk", values=[logits, labels]): logits, labels = _pad_tensors_to_same_length(logits, labels) weights = tf.to_float(tf.not_equal(labels, 0)) effective_k = tf.minimum(k, tf.shape(logits)[-1]) _, outputs = tf.nn.top_k(logits, k=effective_k) outputs = tf.to_int32(outputs) padded_labels = tf.to_int32(labels) padded_labels = tf.expand_dims(padded_labels, axis=-1) padded_labels += tf.zeros_like(outputs) # Pad to same shape. same = tf.to_float(tf.equal(outputs, padded_labels)) same_topk = tf.reduce_sum(same, axis=-1) return same_topk, weights def padded_accuracy_top5(logits, labels): return padded_accuracy_topk(logits, labels, 5) def padded_sequence_accuracy(logits, labels): """Percentage of times that predictions matches labels everywhere (non-0).""" with tf.variable_scope("padded_sequence_accuracy", values=[logits, labels]): logits, labels = _pad_tensors_to_same_length(logits, labels) weights = tf.to_float(tf.not_equal(labels, 0)) outputs = tf.to_int32(tf.argmax(logits, axis=-1)) padded_labels = tf.to_int32(labels) not_correct = tf.to_float(tf.not_equal(outputs, padded_labels)) * weights axis = list(range(1, len(outputs.get_shape()))) correct_seq = 1.0 - tf.minimum(1.0, tf.reduce_sum(not_correct, axis=axis)) return correct_seq, tf.constant(1.0) def padded_neg_log_perplexity(logits, labels, vocab_size): """Average log-perplexity excluding padding 0s. No smoothing.""" num, den = padded_cross_entropy_loss(logits, labels, 0, vocab_size) return -num, den def bleu_score(logits, labels): """Approximate BLEU score computation between labels and predictions. An approximate BLEU scoring method since we do not glue word pieces or decode the ids and tokenize the output. By default, we use ngram order of 4 and use brevity penalty. Also, this does not have beam search. Args: logits: Tensor of size [batch_size, length_logits, vocab_size] labels: Tensor of size [batch-size, length_labels] Returns: bleu: int, approx bleu score """ predictions = tf.to_int32(tf.argmax(logits, axis=-1)) # TODO: Look into removing use of py_func bleu = tf.py_func(compute_bleu, (labels, predictions), tf.float32) return bleu, tf.constant(1.0) def _get_ngrams_with_counter(segment, max_order): """Extracts all n-grams up to a given maximum order from an input segment. Args: segment: text segment from which n-grams will be extracted. max_order: maximum length in tokens of the n-grams returned by this methods. Returns: The Counter containing all n-grams upto max_order in segment with a count of how many times each n-gram occurred. """ ngram_counts = collections.Counter() for order in xrange(1, max_order + 1): for i in xrange(0, len(segment) - order + 1): ngram = tuple(segment[i:i + order]) ngram_counts[ngram] += 1 return ngram_counts def compute_bleu(reference_corpus, translation_corpus, max_order=4, use_bp=True): """Computes BLEU score of translated segments against one or more references. Args: reference_corpus: list of references for each translation. Each reference should be tokenized into a list of tokens. translation_corpus: list of translations to score. Each translation should be tokenized into a list of tokens. max_order: Maximum n-gram order to use when computing BLEU score. use_bp: boolean, whether to apply brevity penalty. Returns: BLEU score. """ reference_length = 0 translation_length = 0 bp = 1.0 geo_mean = 0 matches_by_order = [0] * max_order possible_matches_by_order = [0] * max_order precisions = [] for (references, translations) in zip(reference_corpus, translation_corpus): reference_length += len(references) translation_length += len(translations) ref_ngram_counts = _get_ngrams_with_counter(references, max_order) translation_ngram_counts = _get_ngrams_with_counter(translations, max_order) overlap = dict((ngram, min(count, translation_ngram_counts[ngram])) for ngram, count in ref_ngram_counts.items()) for ngram in overlap: matches_by_order[len(ngram) - 1] += overlap[ngram] for ngram in translation_ngram_counts: possible_matches_by_order[len(ngram) - 1] += translation_ngram_counts[ ngram] precisions = [0] * max_order smooth = 1.0 for i in xrange(0, max_order): if possible_matches_by_order[i] > 0: precisions[i] = float(matches_by_order[i]) / possible_matches_by_order[i] if matches_by_order[i] > 0: precisions[i] = float(matches_by_order[i]) / possible_matches_by_order[ i] else: smooth *= 2 precisions[i] = 1.0 / (smooth * possible_matches_by_order[i]) else: precisions[i] = 0.0 if max(precisions) > 0: p_log_sum = sum(math.log(p) for p in precisions if p) geo_mean = math.exp(p_log_sum / max_order) if use_bp: ratio = translation_length / reference_length bp = math.exp(1 - 1. / ratio) if ratio < 1.0 else 1.0 bleu = geo_mean * bp return np.float32(bleu) def rouge_2_fscore(logits, labels): """ROUGE-2 F1 score computation between labels and predictions. This is an approximate ROUGE scoring method since we do not glue word pieces or decode the ids and tokenize the output. Args: logits: tensor, model predictions labels: tensor, gold output. Returns: rouge2_fscore: approx rouge-2 f1 score. """ predictions = tf.to_int32(tf.argmax(logits, axis=-1)) # TODO: Look into removing use of py_func rouge_2_f_score = tf.py_func(rouge_n, (predictions, labels), tf.float32) return rouge_2_f_score, tf.constant(1.0) def _get_ngrams(n, text): """Calculates n-grams. Args: n: which n-grams to calculate text: An array of tokens Returns: A set of n-grams """ ngram_set = set() text_length = len(text) max_index_ngram_start = text_length - n for i in range(max_index_ngram_start + 1): ngram_set.add(tuple(text[i:i + n])) return ngram_set def rouge_n(eval_sentences, ref_sentences, n=2): """Computes ROUGE-N f1 score of two text collections of sentences. Source: https://www.microsoft.com/en-us/research/publication/ rouge-a-package-for-automatic-evaluation-of-summaries/ Args: eval_sentences: Predicted sentences. ref_sentences: Sentences from the reference set n: Size of ngram. Defaults to 2. Returns: f1 score for ROUGE-N """ f1_scores = [] for eval_sentence, ref_sentence in zip(eval_sentences, ref_sentences): eval_ngrams = _get_ngrams(n, eval_sentence) ref_ngrams = _get_ngrams(n, ref_sentence) ref_count = len(ref_ngrams) eval_count = len(eval_ngrams) # Count the overlapping ngrams between evaluated and reference overlapping_ngrams = eval_ngrams.intersection(ref_ngrams) overlapping_count = len(overlapping_ngrams) # Handle edge case. This isn't mathematically correct, but it's good enough if eval_count == 0: precision = 0.0 else: precision = float(overlapping_count) / eval_count if ref_count == 0: recall = 0.0 else: recall = float(overlapping_count) / ref_count f1_scores.append(2.0 * ((precision * recall) / (precision + recall + 1e-8))) # return overlapping_count / reference_count return np.mean(f1_scores, dtype=np.float32) def rouge_l_fscore(predictions, labels): """ROUGE scores computation between labels and predictions. This is an approximate ROUGE scoring method since we do not glue word pieces or decode the ids and tokenize the output. Args: predictions: tensor, model predictions labels: tensor, gold output. Returns: rouge_l_fscore: approx rouge-l f1 score. """ outputs = tf.to_int32(tf.argmax(predictions, axis=-1)) rouge_l_f_score = tf.py_func(rouge_l_sentence_level, (outputs, labels), tf.float32) return rouge_l_f_score, tf.constant(1.0) def rouge_l_sentence_level(eval_sentences, ref_sentences): """Computes ROUGE-L (sentence level) of two collections of sentences. Source: https://www.microsoft.com/en-us/research/publication/ rouge-a-package-for-automatic-evaluation-of-summaries/ Calculated according to: R_lcs = LCS(X,Y)/m P_lcs = LCS(X,Y)/n F_lcs = ((1 + beta^2)*R_lcs*P_lcs) / (R_lcs + (beta^2) * P_lcs) where: X = reference summary Y = Candidate summary m = length of reference summary n = length of candidate summary Args: eval_sentences: The sentences that have been picked by the summarizer ref_sentences: The sentences from the reference set Returns: A float: F_lcs """ f1_scores = [] for eval_sentence, ref_sentence in zip(eval_sentences, ref_sentences): m = float(len(ref_sentence)) n = float(len(eval_sentence)) lcs = _len_lcs(eval_sentence, ref_sentence) f1_scores.append(_f_lcs(lcs, m, n)) return np.mean(f1_scores, dtype=np.float32) def _len_lcs(x, y): """Returns the length of the Longest Common Subsequence between two seqs. Source: http://www.algorithmist.com/index.php/Longest_Common_Subsequence Args: x: sequence of words y: sequence of words Returns integer: Length of LCS between x and y """ table = _lcs(x, y) n, m = len(x), len(y) return table[n, m] def _lcs(x, y): """Computes the length of the LCS between two seqs. The implementation below uses a DP programming algorithm and runs in O(nm) time where n = len(x) and m = len(y). Source: http://www.algorithmist.com/index.php/Longest_Common_Subsequence Args: x: collection of words y: collection of words Returns: Table of dictionary of coord and len lcs """ n, m = len(x), len(y) table = dict() for i in range(n + 1): for j in range(m + 1): if i == 0 or j == 0: table[i, j] = 0 elif x[i - 1] == y[j - 1]: table[i, j] = table[i - 1, j - 1] + 1 else: table[i, j] = max(table[i - 1, j], table[i, j - 1]) return table def _f_lcs(llcs, m, n): """Computes the LCS-based F-measure score. Source: http://research.microsoft.com/en-us/um/people/cyl/download/papers/ rouge-working-note-v1.3.1.pdf Args: llcs: Length of LCS m: number of words in reference summary n: number of words in candidate summary Returns: Float. LCS-based F-measure score """ r_lcs = llcs / m p_lcs = llcs / n beta = p_lcs / (r_lcs + 1e-12) num = (1 + (beta ** 2)) * r_lcs * p_lcs denom = r_lcs + ((beta ** 2) * p_lcs) f_lcs = num / (denom + 1e-12) return f_lcs ================================================ FILE: official/transformer/utils/tokenizer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Defines Subtokenizer class to encode and decode strings.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import re import sys import unicodedata import numpy as np import six from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf PAD = "" PAD_ID = 0 EOS = "" EOS_ID = 1 RESERVED_TOKENS = [PAD, EOS] # Set of characters that will be used in the function _escape_token() (see func # docstring for more details). # This set is added to the alphabet list to ensure that all escaped tokens can # be encoded. _ESCAPE_CHARS = set(u"\\_u;0123456789") # Regex for the function _unescape_token(), the inverse of _escape_token(). # This is used to find "\u", "\\", and "\###;" substrings in the token. _UNESCAPE_REGEX = re.compile(r"\\u|\\\\|\\([0-9]+);") _UNDEFINED_UNICODE = u"\u3013" # Set contains all letter and number characters. _ALPHANUMERIC_CHAR_SET = set( six.unichr(i) for i in xrange(sys.maxunicode) if (unicodedata.category(six.unichr(i)).startswith("L") or unicodedata.category(six.unichr(i)).startswith("N"))) # min_count is the minimum number of times a subtoken must appear in the data # before before it is added to the vocabulary. The value is found using binary # search to obtain the target vocabulary size. _MIN_MIN_COUNT = 1 # min value to use when binary searching for min_count _MAX_MIN_COUNT = 1000 # max value to use when binary searching for min_count class Subtokenizer(object): """Encodes and decodes strings to/from integer IDs.""" def __init__(self, vocab_file, reserved_tokens=None): """Initializes class, creating a vocab file if data_files is provided.""" tf.logging.info("Initializing Subtokenizer from file %s." % vocab_file) if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS self.subtoken_list = _load_vocab_file(vocab_file, reserved_tokens) self.alphabet = _generate_alphabet_dict(self.subtoken_list) self.subtoken_to_id_dict = _list_to_index_dict(self.subtoken_list) self.max_subtoken_length = 0 for subtoken in self.subtoken_list: self.max_subtoken_length = max(self.max_subtoken_length, len(subtoken)) # Create cache to speed up subtokenization self._cache_size = 2 ** 20 self._cache = [(None, None)] * self._cache_size @staticmethod def init_from_files( vocab_file, files, target_vocab_size, threshold, min_count=None, file_byte_limit=1e6, reserved_tokens=None): """Create subtoken vocabulary based on files, and save vocab to file. Args: vocab_file: String name of vocab file to store subtoken vocabulary. files: List of file paths that will be used to generate vocabulary. target_vocab_size: target vocabulary size to generate. threshold: int threshold of vocabulary size to accept. min_count: int minimum count to use for generating the vocabulary. The min count is the minimum number of times a subtoken should appear in the files before it is added to the vocabulary. If set to none, this value is found using binary search. file_byte_limit: (Default 1e6) Maximum number of bytes of sample text that will be drawn from the files. reserved_tokens: List of string tokens that are guaranteed to be at the beginning of the subtoken vocabulary list. Returns: Subtokenizer object """ if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS if tf.gfile.Exists(vocab_file): tf.logging.info("Vocab file already exists (%s)" % vocab_file) else: tf.logging.info("Begin steps to create subtoken vocabulary...") token_counts = _count_tokens(files, file_byte_limit) alphabet = _generate_alphabet_dict(token_counts) subtoken_list = _generate_subtokens_with_target_vocab_size( token_counts, alphabet, target_vocab_size, threshold, min_count, reserved_tokens) tf.logging.info("Generated vocabulary with %d subtokens." % len(subtoken_list)) _save_vocab_file(vocab_file, subtoken_list) return Subtokenizer(vocab_file) def encode(self, raw_string, add_eos=False): """Encodes a string into a list of int subtoken ids.""" ret = [] tokens = _split_string_to_tokens(_native_to_unicode(raw_string)) for token in tokens: ret.extend(self._token_to_subtoken_ids(token)) if add_eos: ret.append(EOS_ID) return ret def _token_to_subtoken_ids(self, token): """Encode a single token into a list of subtoken ids.""" cache_location = hash(token) % self._cache_size cache_key, cache_value = self._cache[cache_location] if cache_key == token: return cache_value ret = _split_token_to_subtokens( _escape_token(token, self.alphabet), self.subtoken_to_id_dict, self.max_subtoken_length) ret = [self.subtoken_to_id_dict[subtoken_id] for subtoken_id in ret] self._cache[cache_location] = (token, ret) return ret def decode(self, subtokens): """Converts list of int subtokens ids into a string.""" if isinstance(subtokens, np.ndarray): # Note that list(subtokens) converts subtokens to a python list, but the # items remain as np.int32. This converts both the array and its items. subtokens = subtokens.tolist() if not subtokens: return "" assert isinstance(subtokens, list) and isinstance(subtokens[0], int), ( "Subtokens argument passed into decode() must be a list of integers.") return _unicode_to_native( _join_tokens_to_string(self._subtoken_ids_to_tokens(subtokens))) def _subtoken_ids_to_tokens(self, subtokens): """Convert list of int subtoken ids to a list of string tokens.""" escaped_tokens = "".join([ self.subtoken_list[s] for s in subtokens if s < len(self.subtoken_list)]) escaped_tokens = escaped_tokens.split("_") # All tokens in the vocabulary list have been escaped (see _escape_token()) # so each token must be unescaped when decoding. ret = [] for token in escaped_tokens: if token: ret.append(_unescape_token(token)) return ret def _save_vocab_file(vocab_file, subtoken_list): """Save subtokens to file.""" with tf.gfile.Open(vocab_file, mode="w") as f: for subtoken in subtoken_list: f.write("'%s'\n" % _unicode_to_native(subtoken)) def _load_vocab_file(vocab_file, reserved_tokens=None): """Load vocabulary while ensuring reserved tokens are at the top.""" if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS subtoken_list = [] with tf.gfile.Open(vocab_file, mode="r") as f: for line in f: subtoken = _native_to_unicode(line.strip()) subtoken = subtoken[1:-1] # Remove surrounding single-quotes if subtoken in reserved_tokens: continue subtoken_list.append(_native_to_unicode(subtoken)) return reserved_tokens + subtoken_list def _native_to_unicode(s): """Convert string to unicode (required in Python 2).""" if six.PY2: return s if isinstance(s, unicode) else s.decode("utf-8") else: return s def _unicode_to_native(s): """Convert string from unicode to native format (required in Python 2).""" if six.PY2: return s.encode("utf-8") if isinstance(s, unicode) else s else: return s def _split_string_to_tokens(text): """Splits text to a list of string tokens.""" if not text: return [] ret = [] token_start = 0 # Classify each character in the input string is_alnum = [c in _ALPHANUMERIC_CHAR_SET for c in text] for pos in xrange(1, len(text)): if is_alnum[pos] != is_alnum[pos - 1]: token = text[token_start:pos] if token != u" " or token_start == 0: ret.append(token) token_start = pos final_token = text[token_start:] ret.append(final_token) return ret def _join_tokens_to_string(tokens): """Join a list of string tokens into a single string.""" token_is_alnum = [t[0] in _ALPHANUMERIC_CHAR_SET for t in tokens] ret = [] for i, token in enumerate(tokens): if i > 0 and token_is_alnum[i - 1] and token_is_alnum[i]: ret.append(u" ") ret.append(token) return "".join(ret) def _escape_token(token, alphabet): r"""Replace characters that aren't in the alphabet and append "_" to token. Apply three transformations to the token: 1. Replace underline character "_" with "\u", and backslash "\" with "\\". 2. Replace characters outside of the alphabet with "\###;", where ### is the character's Unicode code point. 3. Appends "_" to mark the end of a token. Args: token: unicode string to be escaped alphabet: list of all known characters Returns: escaped string """ token = token.replace(u"\\", u"\\\\").replace(u"_", u"\\u") ret = [c if c in alphabet and c != u"\n" else r"\%d;" % ord(c) for c in token] return u"".join(ret) + "_" def _unescape_token(token): r"""Replaces escaped characters in the token with their unescaped versions. Applies inverse transformations as _escape_token(): 1. Replace "\u" with "_", and "\\" with "\". 2. Replace "\###;" with the unicode character the ### refers to. Args: token: escaped string Returns: unescaped string """ def match(m): r"""Returns replacement string for matched object. Matched objects contain one of the strings that matches the regex pattern: r"\\u|\\\\|\\([0-9]+);" The strings can be '\u', '\\', or '\###;' (### is any digit number). m.group(0) refers to the entire matched string ('\u', '\\', or '\###;'). m.group(1) refers to the first parenthesized subgroup ('###'). m.group(0) exists for all match objects, while m.group(1) exists only for the string '\###;'. This function looks to see if m.group(1) exists. If it doesn't, then the matched string must be '\u' or '\\' . In this case, the corresponding replacement ('_' and '\') are returned. Note that in python, a single backslash is written as '\\', and double backslash as '\\\\'. If m.goup(1) exists, then use the integer in m.group(1) to return a unicode character. Args: m: match object Returns: String to replace matched object with. """ # Check if the matched strings are '\u' or '\\'. if m.group(1) is None: return u"_" if m.group(0) == u"\\u" else u"\\" # If m.group(1) exists, try and return unicode character. try: return six.unichr(int(m.group(1))) except (ValueError, OverflowError) as _: return _UNDEFINED_UNICODE # Use match function to replace escaped substrings in the token. return _UNESCAPE_REGEX.sub(match, token) def _count_tokens(files, file_byte_limit=1e6): """Return token counts of words in the files. Samples file_byte_limit bytes from each file, and counts the words that appear in the samples. The samples are semi-evenly distributed across the file. Args: files: List of filepaths file_byte_limit: Max number of bytes that will be read from each file. Returns: Dictionary mapping tokens to the number of times they appear in the sampled lines from the files. """ token_counts = collections.defaultdict(int) for filepath in files: with tf.gfile.Open(filepath, mode="r") as reader: file_byte_budget = file_byte_limit counter = 0 lines_to_skip = int(reader.size() / (file_byte_budget * 2)) for line in reader: if counter < lines_to_skip: counter += 1 else: if file_byte_budget < 0: break line = line.strip() file_byte_budget -= len(line) counter = 0 # Add words to token counts for token in _split_string_to_tokens(_native_to_unicode(line)): token_counts[token] += 1 return token_counts def _list_to_index_dict(lst): """Create dictionary mapping list items to their indices in the list.""" return {item: n for n, item in enumerate(lst)} def _split_token_to_subtokens(token, subtoken_dict, max_subtoken_length): """Splits a token into subtokens defined in the subtoken dict.""" ret = [] start = 0 token_len = len(token) while start < token_len: # Find the longest subtoken, so iterate backwards. for end in xrange(min(token_len, start + max_subtoken_length), start, -1): subtoken = token[start:end] if subtoken in subtoken_dict: ret.append(subtoken) start = end break else: # Did not break # If there is no possible encoding of the escaped token then one of the # characters in the token is not in the alphabet. This should be # impossible and would be indicative of a bug. raise ValueError("Was unable to split token \"%s\" into subtokens." % token) return ret def _generate_subtokens_with_target_vocab_size( token_counts, alphabet, target_size, threshold, min_count=None, reserved_tokens=None): """Generate subtoken vocabulary close to the target size.""" if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS if min_count is not None: tf.logging.info("Using min_count=%d to generate vocab with target size %d" % (min_count, target_size)) return _generate_subtokens( token_counts, alphabet, min_count, reserved_tokens=reserved_tokens) def bisect(min_val, max_val): """Recursive function to binary search for subtoken vocabulary.""" cur_count = (min_val + max_val) // 2 tf.logging.info("Binary search: trying min_count=%d (%d %d)" % (cur_count, min_val, max_val)) subtoken_list = _generate_subtokens( token_counts, alphabet, cur_count, reserved_tokens=reserved_tokens) val = len(subtoken_list) tf.logging.info("Binary search: min_count=%d resulted in %d tokens" % (cur_count, val)) within_threshold = abs(val - target_size) < threshold if within_threshold or min_val >= max_val or cur_count < 2: return subtoken_list if val > target_size: other_subtoken_list = bisect(cur_count + 1, max_val) else: other_subtoken_list = bisect(min_val, cur_count - 1) # Return vocabulary dictionary with the closest number of tokens. other_val = len(other_subtoken_list) if abs(other_val - target_size) < abs(val - target_size): return other_subtoken_list return subtoken_list tf.logging.info("Finding best min_count to get target size of %d" % target_size) return bisect(_MIN_MIN_COUNT, _MAX_MIN_COUNT) def _generate_alphabet_dict(iterable, reserved_tokens=None): """Create set of characters that appear in any element in the iterable.""" if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS alphabet = {c for token in iterable for c in token} alphabet |= {c for token in reserved_tokens for c in token} alphabet |= _ESCAPE_CHARS # Add escape characters to alphabet set. return alphabet def _count_and_gen_subtokens( token_counts, alphabet, subtoken_dict, max_subtoken_length): """Count number of times subtokens appear, and generate new subtokens. Args: token_counts: dict mapping tokens to the number of times they appear in the original files. alphabet: list of allowed characters. Used to escape the tokens, which guarantees that all tokens can be split into subtokens. subtoken_dict: dict mapping subtokens to ids. max_subtoken_length: maximum length of subtoken in subtoken_dict. Returns: A defaultdict mapping subtokens to the number of times they appear in the tokens. The dict may contain new subtokens. """ subtoken_counts = collections.defaultdict(int) for token, count in six.iteritems(token_counts): token = _escape_token(token, alphabet) subtokens = _split_token_to_subtokens( token, subtoken_dict, max_subtoken_length) # Generate new subtokens by taking substrings from token. start = 0 for subtoken in subtokens: for end in xrange(start + 1, len(token) + 1): new_subtoken = token[start:end] subtoken_counts[new_subtoken] += count start += len(subtoken) return subtoken_counts def _filter_and_bucket_subtokens(subtoken_counts, min_count): """Return a bucketed list of subtokens that are filtered by count. Args: subtoken_counts: defaultdict mapping subtokens to their counts min_count: int count used to filter subtokens Returns: List of subtoken sets, where subtokens in set i have the same length=i. """ # Create list of buckets, where subtokens in bucket i have length i. subtoken_buckets = [] for subtoken, count in six.iteritems(subtoken_counts): if count < min_count: # Filter out subtokens that don't appear enough continue while len(subtoken_buckets) <= len(subtoken): subtoken_buckets.append(set()) subtoken_buckets[len(subtoken)].add(subtoken) return subtoken_buckets def _gen_new_subtoken_list( subtoken_counts, min_count, alphabet, reserved_tokens=None): """Generate candidate subtokens ordered by count, and new max subtoken length. Add subtokens to the candiate list in order of length (longest subtokens first). When a subtoken is added, the counts of each of its prefixes are decreased. Prefixes that don't appear much outside the subtoken are not added to the candidate list. For example: subtoken being added to candidate list: 'translate' subtoken_counts: {'translate':10, 't':40, 'tr':16, 'tra':12, ...} min_count: 5 When 'translate' is added, subtoken_counts is updated to: {'translate':0, 't':30, 'tr':6, 'tra': 2, ...} The subtoken 'tra' will not be added to the candidate list, because it appears twice (less than min_count) outside of 'translate'. Args: subtoken_counts: defaultdict mapping str subtokens to int counts min_count: int minumum count requirement for subtokens alphabet: set of characters. Each character is added to the subtoken list to guarantee that all tokens can be encoded. reserved_tokens: list of tokens that will be added to the beginning of the returned subtoken list. Returns: List of candidate subtokens in decreasing count order, and maximum subtoken length """ if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS # Create a list of (count, subtoken) for each candidate subtoken. subtoken_candidates = [] # Use bucketted list to iterate through subtokens in order of length. # subtoken_buckets[i] = set(subtokens), where each subtoken has length i. subtoken_buckets = _filter_and_bucket_subtokens(subtoken_counts, min_count) max_subtoken_length = len(subtoken_buckets) - 1 # Go through the list in reverse order to consider longer subtokens first. for subtoken_len in xrange(max_subtoken_length, 0, -1): for subtoken in subtoken_buckets[subtoken_len]: count = subtoken_counts[subtoken] # Possible if this subtoken is a prefix of another token. if count < min_count: continue # Ignore alphabet/reserved tokens, which will be added manually later. if subtoken not in alphabet and subtoken not in reserved_tokens: subtoken_candidates.append((count, subtoken)) # Decrement count of the subtoken's prefixes (if a longer subtoken is # added, its prefixes lose priority to be added). for end in xrange(1, subtoken_len): subtoken_counts[subtoken[:end]] -= count # Add alphabet subtokens (guarantees that all strings are encodable). subtoken_candidates.extend((subtoken_counts.get(a, 0), a) for a in alphabet) # Order subtoken candidates by decreasing count. subtoken_list = [t for _, t in sorted(subtoken_candidates, reverse=True)] # Add reserved tokens to beginning of the list. subtoken_list = reserved_tokens + subtoken_list return subtoken_list, max_subtoken_length def _generate_subtokens( token_counts, alphabet, min_count, num_iterations=4, reserved_tokens=None): """Create a list of subtokens in decreasing order of frequency. Args: token_counts: dict mapping str tokens -> int count alphabet: set of characters min_count: int minimum number of times a subtoken must appear before it is added to the vocabulary. num_iterations: int number of iterations to generate new tokens. reserved_tokens: list of tokens that will be added to the beginning to the returned subtoken list. Returns: Sorted list of subtokens (most frequent first) """ if reserved_tokens is None: reserved_tokens = RESERVED_TOKENS # Use alphabet set to create initial list of subtokens subtoken_list = reserved_tokens + list(alphabet) max_subtoken_length = 1 # On each iteration, segment all words using the subtokens defined in # subtoken_dict, count how often the resulting subtokens appear, and update # the dictionary with subtokens w/ high enough counts. for i in xrange(num_iterations): tf.logging.info("\tGenerating subtokens: iteration %d" % i) # Generate new subtoken->id dictionary using the new subtoken list. subtoken_dict = _list_to_index_dict(subtoken_list) # Create dict mapping subtoken->count, with additional subtokens created # from substrings taken from the tokens. subtoken_counts = _count_and_gen_subtokens( token_counts, alphabet, subtoken_dict, max_subtoken_length) # Generate new list of subtokens sorted by subtoken count. subtoken_list, max_subtoken_length = _gen_new_subtoken_list( subtoken_counts, min_count, alphabet, reserved_tokens) tf.logging.info("\tVocab size: %d" % len(subtoken_list)) return subtoken_list ================================================ FILE: official/transformer/utils/tokenizer_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Test Subtokenizer and string helper methods.""" import collections import tempfile import unittest import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.utils import tokenizer class SubtokenizerTest(unittest.TestCase): def _init_subtokenizer(self, vocab_list): temp_file = tempfile.NamedTemporaryFile(delete=False) with tf.gfile.Open(temp_file.name, 'w') as w: for subtoken in vocab_list: w.write("'%s'" % subtoken) w.write("\n") return tokenizer.Subtokenizer(temp_file.name, reserved_tokens=[]) def test_encode(self): vocab_list = ["123_", "test", "ing_"] subtokenizer = self._init_subtokenizer(vocab_list) s = "testing 123" encoded_list = subtokenizer.encode(s) self.assertEqual([1, 2, 0], encoded_list) def test_decode(self): vocab_list = ["123_", "test", "ing_"] subtokenizer = self._init_subtokenizer(vocab_list) encoded_list = [1, 2, 0] # testing 123 decoded_str = subtokenizer.decode(encoded_list) self.assertEqual("testing 123", decoded_str) def test_subtoken_ids_to_tokens(self): vocab_list = ["123_", "test", "ing_"] subtokenizer = self._init_subtokenizer(vocab_list) encoded_list = [1, 2, 0] # testing 123 token_list = subtokenizer._subtoken_ids_to_tokens(encoded_list) self.assertEqual([u"testing", u"123"], token_list) class StringHelperTest(unittest.TestCase): def test_split_string_to_tokens(self): text = "test? testing 123." tokens = tokenizer._split_string_to_tokens(text) self.assertEqual(["test", "? ", "testing", "123", "."], tokens) def test_join_tokens_to_string(self): tokens = ["test", "? ", "testing", "123", "."] s = tokenizer._join_tokens_to_string(tokens) self.assertEqual("test? testing 123.", s) def test_escape_token(self): token = u"abc_\\4" alphabet = set("abc_\\u;") escaped_token = tokenizer._escape_token(token, alphabet) self.assertEqual("abc\\u\\\\\\52;_", escaped_token) def test_unescape_token(self): escaped_token = u"Underline: \\u, Backslash: \\\\, Unicode: \\52;" unescaped_token = tokenizer._unescape_token(escaped_token) self.assertEqual( "Underline: _, Backslash: \\, Unicode: 4", unescaped_token) def test_list_to_index_dict(self): lst = ["test", "strings"] d = tokenizer._list_to_index_dict(lst) self.assertDictEqual({"test": 0, "strings": 1}, d) def test_split_token_to_subtokens(self): token = "abc" subtoken_dict = {"a": 0, "b": 1, "c": 2, "ab": 3} max_subtoken_length = 2 subtokens = tokenizer._split_token_to_subtokens( token, subtoken_dict, max_subtoken_length) self.assertEqual(["ab", "c"], subtokens) def test_generate_alphabet_dict(self): s = ["testing", "123"] reserved_tokens = ["???"] alphabet = tokenizer._generate_alphabet_dict(s, reserved_tokens) self.assertIn("?", alphabet) self.assertIn("t", alphabet) self.assertIn("e", alphabet) self.assertIn("s", alphabet) self.assertIn("i", alphabet) self.assertIn("n", alphabet) self.assertIn("g", alphabet) self.assertIn("1", alphabet) self.assertIn("2", alphabet) self.assertIn("3", alphabet) def test_count_and_gen_subtokens(self): token_counts = {"abc": 5} alphabet = set("abc_") subtoken_dict = {"a": 0, "b": 1, "c": 2, "_": 3} max_subtoken_length = 2 subtoken_counts = tokenizer._count_and_gen_subtokens( token_counts, alphabet, subtoken_dict, max_subtoken_length) self.assertIsInstance(subtoken_counts, collections.defaultdict) self.assertDictEqual( {"a": 5, "b": 5, "c": 5, "_": 5, "ab": 5, "bc": 5, "c_": 5, "abc": 5, "bc_": 5, "abc_": 5}, subtoken_counts) def test_filter_and_bucket_subtokens(self): subtoken_counts = collections.defaultdict( int, {"a": 2, "b": 4, "c": 1, "ab": 6, "ac": 3, "abbc": 5}) min_count = 3 subtoken_buckets = tokenizer._filter_and_bucket_subtokens( subtoken_counts, min_count) self.assertEqual(len(subtoken_buckets[0]), 0) self.assertEqual(set("b"), subtoken_buckets[1]) self.assertEqual(set(["ab", "ac"]), subtoken_buckets[2]) self.assertEqual(len(subtoken_buckets[3]), 0) self.assertEqual(set(["abbc"]), subtoken_buckets[4]) def test_gen_new_subtoken_list(self): subtoken_counts = collections.defaultdict( int, {"translate": 10, "t": 40, "tr": 16, "tra": 12}) min_count = 5 alphabet = set("translate") reserved_tokens = ["reserved", "tokens"] subtoken_list, max_token_length = tokenizer._gen_new_subtoken_list( subtoken_counts, min_count, alphabet, reserved_tokens) # Check that "tra" isn"t in the list (its count should be decremented to 2, # so it should not be added to the canddiate list). self.assertNotIn("tra", subtoken_list) self.assertIn("tr", subtoken_list) self.assertIn("t", subtoken_list) self.assertEqual(len("translate"), max_token_length) def test_generate_subtokens(self): token_counts = {"ab": 1, "bc": 3, "abc": 5} alphabet = set("abc_") min_count = 100 num_iterations = 1 reserved_tokens = ["reserved", "tokens"] vocab_list = tokenizer._generate_subtokens( token_counts, alphabet, min_count, num_iterations, reserved_tokens) # Check that reserved tokens are at the front of the list self.assertEqual(vocab_list[:2], reserved_tokens) # Check that each character in alphabet is in the vocab list for c in alphabet: self.assertIn(c, vocab_list) if __name__ == "__main__": unittest.main() ================================================ FILE: official/utils/__init__.py ================================================ ================================================ FILE: official/utils/export/__init__.py ================================================ ================================================ FILE: official/utils/export/export.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Convenience functions for exporting models as SavedModels or other types.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf def build_tensor_serving_input_receiver_fn(shape, dtype=tf.float32, batch_size=1): """Returns a input_receiver_fn that can be used during serving. This expects examples to come through as float tensors, and simply wraps them as TensorServingInputReceivers. Arguably, this should live in tf.estimator.export. Testing here first. Args: shape: list representing target size of a single example. dtype: the expected datatype for the input example batch_size: number of input tensors that will be passed for prediction Returns: A function that itself returns a TensorServingInputReceiver. """ def serving_input_receiver_fn(): # Prep a placeholder where the input example will be fed in features = tf.placeholder( dtype=dtype, shape=[batch_size] + shape, name='input_tensor') return tf.estimator.export.TensorServingInputReceiver( features=features, receiver_tensors=features) return serving_input_receiver_fn ================================================ FILE: official/utils/export/export_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for exporting utils.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.export import export class ExportUtilsTest(tf.test.TestCase): """Tests for the ExportUtils.""" def test_build_tensor_serving_input_receiver_fn(self): receiver_fn = export.build_tensor_serving_input_receiver_fn(shape=[4, 5]) with tf.Graph().as_default(): receiver = receiver_fn() self.assertIsInstance( receiver, tf.estimator.export.TensorServingInputReceiver) self.assertIsInstance(receiver.features, tf.Tensor) self.assertEqual(receiver.features.shape, tf.TensorShape([1, 4, 5])) self.assertEqual(receiver.features.dtype, tf.float32) self.assertIsInstance(receiver.receiver_tensors, dict) # Note that Python 3 can no longer index .values() directly; cast to list. self.assertEqual(list(receiver.receiver_tensors.values())[0].shape, tf.TensorShape([1, 4, 5])) def test_build_tensor_serving_input_receiver_fn_batch_dtype(self): receiver_fn = export.build_tensor_serving_input_receiver_fn( shape=[4, 5], dtype=tf.int8, batch_size=10) with tf.Graph().as_default(): receiver = receiver_fn() self.assertIsInstance( receiver, tf.estimator.export.TensorServingInputReceiver) self.assertIsInstance(receiver.features, tf.Tensor) self.assertEqual(receiver.features.shape, tf.TensorShape([10, 4, 5])) self.assertEqual(receiver.features.dtype, tf.int8) self.assertIsInstance(receiver.receiver_tensors, dict) # Note that Python 3 can no longer index .values() directly; cast to list. self.assertEqual(list(receiver.receiver_tensors.values())[0].shape, tf.TensorShape([10, 4, 5])) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/utils/flags/README.md ================================================ # Adding Abseil (absl) flags quickstart ## Defining a flag absl flag definitions are similar to argparse, although they are defined on a global namespace. For instance defining a string flag looks like: ```$xslt from absl import flags flags.DEFINE_string( name="my_flag", default="a_sensible_default", help="Here is what this flag does." ) ``` All three arguments are required, but default may be `None`. A common optional argument is short_name for defining abreviations. Certain `DEFINE_*` methods will have other required arguments. For instance `DEFINE_enum` requires the `enum_values` argument to be specified. ## Key Flags absl has the concept of a key flag. Any flag defined in `__main__` is considered a key flag by default. Key flags are displayed in `--help`, others only appear in `--helpfull`. In order to handle key flags that are defined outside the module in question, absl provides the `flags.adopt_module_key_flags()` method. This adds the key flags of a different module to one's own key flags. For example: ```$xslt File: flag_source.py --------------------------------------- from absl import flags flags.DEFINE_string(name="my_flag", default="abc", help="a flag.") ``` ```$xslt File: my_module.py --------------------------------------- from absl import app as absl_app from absl import flags import flag_source flags.adopt_module_key_flags(flag_source) def main(_): pass absl_app.run(main, [__file__, "-h"] ``` when `my_module.py` is run it will show the help text for `my_flag`. Because not all flags defined in a file are equally important, `official/utils/flags/core.py` (generally imported as flags_core) provides an abstraction for handling key flag declaration in an easy way through the `register_key_flags_in_core()` function, which allows a module to make a single `adopt_key_flags(flags_core)` call when using the util flag declaration functions. ## Validators Often the constraints on a flag are complicated. absl provides the validator decorator to allow one to mark a function as a flag validation function. Suppose we want users to provide a flag which is a palindrome. ```$xslt from absl import flags flags.DEFINE_string(name="pal_flag", short_name="pf", default="", help="Give me a palindrome") @flags.validator("pal_flag") def _check_pal(provided_pal_flag): return provided_pal_flag == provided_pal_flag[::-1] ``` Validators take the form that returning True (truthy) passes, and all others (False, None, exception) fail. ## Common Flags Common flags (i.e. batch_size, model_dir, etc.) are provided by various flag definition functions, and channeled through `official.utils.flags.core`. For instance to define common supervised learning parameters one could use the following code: ```$xslt from absl import app as absl_app from absl import flags from official.utils.flags import core as flags_core def define_flags(): flags_core.define_base() flags.adopt_key_flags(flags_core) def main(_): flags_obj = flags.FLAGS print(flags_obj) if __name__ == "__main__" absl_app.run(main) ``` ## Testing To test using absl, simply declare flags in the setupClass method of TensorFlow's TestCase. ```$xslt from absl import flags import tensorflow as tf def define_flags(): flags.DEFINE_string(name="test_flag", default="abc", help="an example flag") class BaseTester(unittest.TestCase): @classmethod def setUpClass(cls): super(BaseTester, cls).setUpClass() define_flags() def test_trivial(self): flags_core.parse_flags([__file__, "test_flag", "def"]) self.AssertEqual(flags.FLAGS.test_flag, "def") ``` ## Immutability Flag values should not be mutated. Instead, use getter functions to return the desired values. An example getter function is `get_loss_scale` function below: ``` # Map string to (TensorFlow dtype, default loss scale) DTYPE_MAP = { "fp16": (tf.float16, 128), "fp32": (tf.float32, 1), } def get_loss_scale(flags_obj): if flags_obj.loss_scale is not None: return flags_obj.loss_scale return DTYPE_MAP[flags_obj.dtype][1] def main(_): flags_obj = flags.FLAGS() # Do not mutate flags_obj # if flags_obj.loss_scale is None: # flags_obj.loss_scale = DTYPE_MAP[flags_obj.dtype][1] # Don't do this print(get_loss_scale(flags_obj)) ... ``` ================================================ FILE: official/utils/flags/__init__.py ================================================ ================================================ FILE: official/utils/flags/_base.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Flags which will be nearly universal across models.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function from absl import flags import tensorflow as tf from official.utils.flags._conventions import help_wrap from official.utils.logs import hooks_helper def define_base(data_dir=True, model_dir=True, train_epochs=True, epochs_between_evals=True, stop_threshold=True, batch_size=True, multi_gpu=False, num_gpu=True, hooks=True, export_dir=True): """Register base flags. Args: data_dir: Create a flag for specifying the input data directory. model_dir: Create a flag for specifying the model file directory. train_epochs: Create a flag to specify the number of training epochs. epochs_between_evals: Create a flag to specify the frequency of testing. stop_threshold: Create a flag to specify a threshold accuracy or other eval metric which should trigger the end of training. batch_size: Create a flag to specify the batch size. multi_gpu: Create a flag to allow the use of all available GPUs. num_gpu: Create a flag to specify the number of GPUs used. hooks: Create a flag to specify hooks for logging. export_dir: Create a flag to specify where a SavedModel should be exported. Returns: A list of flags for core.py to marks as key flags. """ key_flags = [] if data_dir: flags.DEFINE_string( name="data_dir", short_name="dd", default="/tmp", help=help_wrap("The location of the input data.")) key_flags.append("data_dir") if model_dir: flags.DEFINE_string( name="model_dir", short_name="md", default="/tmp", help=help_wrap("The location of the model checkpoint files.")) key_flags.append("model_dir") if train_epochs: flags.DEFINE_integer( name="train_epochs", short_name="te", default=1, help=help_wrap("The number of epochs used to train.")) key_flags.append("train_epochs") if epochs_between_evals: flags.DEFINE_integer( name="epochs_between_evals", short_name="ebe", default=1, help=help_wrap("The number of training epochs to run between " "evaluations.")) key_flags.append("epochs_between_evals") if stop_threshold: flags.DEFINE_float( name="stop_threshold", short_name="st", default=None, help=help_wrap("If passed, training will stop at the earlier of " "train_epochs and when the evaluation metric is " "greater than or equal to stop_threshold.")) if batch_size: flags.DEFINE_integer( name="batch_size", short_name="bs", default=32, help=help_wrap("Batch size for training and evaluation.")) key_flags.append("batch_size") assert not (multi_gpu and num_gpu) if multi_gpu: flags.DEFINE_bool( name="multi_gpu", default=False, help=help_wrap("If set, run across all available GPUs.")) key_flags.append("multi_gpu") if num_gpu: flags.DEFINE_integer( name="num_gpus", short_name="ng", default=1 if tf.test.is_gpu_available() else 0, help=help_wrap( "How many GPUs to use with the DistributionStrategies API. The " "default is 1 if TensorFlow can detect a GPU, and 0 otherwise.")) if hooks: # Construct a pretty summary of hooks. hook_list_str = ( u"\ufeff Hook:\n" + u"\n".join([u"\ufeff {}".format(key) for key in hooks_helper.HOOKS])) flags.DEFINE_list( name="hooks", short_name="hk", default="LoggingTensorHook", help=help_wrap( u"A list of (case insensitive) strings to specify the names of " u"training hooks.\n{}\n\ufeff Example: `--hooks ProfilerHook," u"ExamplesPerSecondHook`\n See official.utils.logs.hooks_helper " u"for details.".format(hook_list_str)) ) key_flags.append("hooks") if export_dir: flags.DEFINE_string( name="export_dir", short_name="ed", default=None, help=help_wrap("If set, a SavedModel serialization of the model will " "be exported to this directory at the end of training. " "See the README for more details and relevant links.") ) key_flags.append("export_dir") return key_flags def get_num_gpus(flags_obj): """Treat num_gpus=-1 as 'use all'.""" if flags_obj.num_gpus != -1: return flags_obj.num_gpus from tensorflow.python.client import device_lib # pylint: disable=g-import-not-at-top local_device_protos = device_lib.list_local_devices() return sum([1 for d in local_device_protos if d.device_type == "GPU"]) ================================================ FILE: official/utils/flags/_benchmark.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Flags for benchmarking models.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function from absl import flags from official.utils.flags._conventions import help_wrap def define_benchmark(benchmark_log_dir=True, bigquery_uploader=True): """Register benchmarking flags. Args: benchmark_log_dir: Create a flag to specify location for benchmark logging. bigquery_uploader: Create flags for uploading results to BigQuery. Returns: A list of flags for core.py to marks as key flags. """ key_flags = [] flags.DEFINE_enum( name="benchmark_logger_type", default="BaseBenchmarkLogger", enum_values=["BaseBenchmarkLogger", "BenchmarkFileLogger", "BenchmarkBigQueryLogger"], help=help_wrap("The type of benchmark logger to use. Defaults to using " "BaseBenchmarkLogger which logs to STDOUT. Different " "loggers will require other flags to be able to work.")) if benchmark_log_dir: flags.DEFINE_string( name="benchmark_log_dir", short_name="bld", default=None, help=help_wrap("The location of the benchmark logging.") ) if bigquery_uploader: flags.DEFINE_string( name="gcp_project", short_name="gp", default=None, help=help_wrap( "The GCP project name where the benchmark will be uploaded.")) flags.DEFINE_string( name="bigquery_data_set", short_name="bds", default="test_benchmark", help=help_wrap( "The Bigquery dataset name where the benchmark will be uploaded.")) flags.DEFINE_string( name="bigquery_run_table", short_name="brt", default="benchmark_run", help=help_wrap("The Bigquery table name where the benchmark run " "information will be uploaded.")) flags.DEFINE_string( name="bigquery_metric_table", short_name="bmt", default="benchmark_metric", help=help_wrap("The Bigquery table name where the benchmark metric " "information will be uploaded.")) @flags.multi_flags_validator( ["benchmark_logger_type", "benchmark_log_dir"], message="--benchmark_logger_type=BenchmarkFileLogger will require " "--benchmark_log_dir being set") def _check_benchmark_log_dir(flags_dict): benchmark_logger_type = flags_dict["benchmark_logger_type"] if benchmark_logger_type == "BenchmarkFileLogger": return flags_dict["benchmark_log_dir"] return True return key_flags ================================================ FILE: official/utils/flags/_conventions.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Central location for shared arparse convention definitions.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import functools from absl import app as absl_app from absl import flags # This codifies help string conventions and makes it easy to update them if # necessary. Currently the only major effect is that help bodies start on the # line after flags are listed. All flag definitions should wrap the text bodies # with help wrap when calling DEFINE_*. help_wrap = functools.partial(flags.text_wrap, length=80, indent="", firstline_indent="\n") # Replace None with h to also allow -h absl_app.HelpshortFlag.SHORT_NAME = "h" ================================================ FILE: official/utils/flags/_misc.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Misc flags.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function from absl import flags from official.utils.flags._conventions import help_wrap def define_image(data_format=True): """Register image specific flags. Args: data_format: Create a flag to specify image axis convention. Returns: A list of flags for core.py to marks as key flags. """ key_flags = [] if data_format: flags.DEFINE_enum( name="data_format", short_name="df", default=None, enum_values=["channels_first", "channels_last"], help=help_wrap( "A flag to override the data format used in the model. " "channels_first provides a performance boost on GPU but is not " "always compatible with CPU. If left unspecified, the data format " "will be chosen automatically based on whether TensorFlow was " "built for CPU or GPU.")) key_flags.append("data_format") return key_flags ================================================ FILE: official/utils/flags/_performance.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Register flags for optimizing performance.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import multiprocessing from absl import flags # pylint: disable=g-bad-import-order import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.flags._conventions import help_wrap # Map string to (TensorFlow dtype, default loss scale) DTYPE_MAP = { "fp16": (tf.float16, 128), "fp32": (tf.float32, 1), } def get_tf_dtype(flags_obj): return DTYPE_MAP[flags_obj.dtype][0] def get_loss_scale(flags_obj): if flags_obj.loss_scale is not None: return flags_obj.loss_scale return DTYPE_MAP[flags_obj.dtype][1] def define_performance(num_parallel_calls=True, inter_op=True, intra_op=True, synthetic_data=True, max_train_steps=True, dtype=True): """Register flags for specifying performance tuning arguments. Args: num_parallel_calls: Create a flag to specify parallelism of data loading. inter_op: Create a flag to allow specification of inter op threads. intra_op: Create a flag to allow specification of intra op threads. synthetic_data: Create a flag to allow the use of synthetic data. max_train_steps: Create a flags to allow specification of maximum number of training steps dtype: Create flags for specifying dtype. Returns: A list of flags for core.py to marks as key flags. """ key_flags = [] if num_parallel_calls: flags.DEFINE_integer( name="num_parallel_calls", short_name="npc", default=multiprocessing.cpu_count(), help=help_wrap("The number of records that are processed in parallel " "during input processing. This can be optimized per " "data set but for generally homogeneous data sets, " "should be approximately the number of available CPU " "cores. (default behavior)")) if inter_op: flags.DEFINE_integer( name="inter_op_parallelism_threads", short_name="inter", default=0, help=help_wrap("Number of inter_op_parallelism_threads to use for CPU. " "See TensorFlow config.proto for details.") ) if intra_op: flags.DEFINE_integer( name="intra_op_parallelism_threads", short_name="intra", default=0, help=help_wrap("Number of intra_op_parallelism_threads to use for CPU. " "See TensorFlow config.proto for details.")) if synthetic_data: flags.DEFINE_bool( name="use_synthetic_data", short_name="synth", default=False, help=help_wrap( "If set, use fake data (zeroes) instead of a real dataset. " "This mode is useful for performance debugging, as it removes " "input processing steps, but will not learn anything.")) if max_train_steps: flags.DEFINE_integer( name="max_train_steps", short_name="mts", default=None, help=help_wrap( "The model will stop training if the global_step reaches this " "value. If not set, training will run until the specified number " "of epochs have run as usual. It is generally recommended to set " "--train_epochs=1 when using this flag." )) if dtype: flags.DEFINE_enum( name="dtype", short_name="dt", default="fp32", enum_values=DTYPE_MAP.keys(), help=help_wrap("The TensorFlow datatype used for calculations. " "Variables may be cast to a higher precision on a " "case-by-case basis for numerical stability.")) flags.DEFINE_integer( name="loss_scale", short_name="ls", default=None, help=help_wrap( "The amount to scale the loss by when the model is run. Before " "gradients are computed, the loss is multiplied by the loss scale, " "making all gradients loss_scale times larger. To adjust for this, " "gradients are divided by the loss scale before being applied to " "variables. This is mathematically equivalent to training without " "a loss scale, but the loss scale helps avoid some intermediate " "gradients from underflowing to zero. If not provided the default " "for fp16 is 128 and 1 for all other dtypes.")) loss_scale_val_msg = "loss_scale should be a positive integer." @flags.validator(flag_name="loss_scale", message=loss_scale_val_msg) def _check_loss_scale(loss_scale): # pylint: disable=unused-variable if loss_scale is None: return True # null case is handled in get_loss_scale() return loss_scale > 0 return key_flags ================================================ FILE: official/utils/flags/core.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Public interface for flag definition. See _example.py for detailed instructions on defining flags. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import functools import sys from absl import app as absl_app from absl import flags from official.utils.flags import _base from official.utils.flags import _benchmark from official.utils.flags import _conventions from official.utils.flags import _misc from official.utils.flags import _performance def set_defaults(**kwargs): for key, value in kwargs.items(): flags.FLAGS.set_default(name=key, value=value) def parse_flags(argv=None): """Reset flags and reparse. Currently only used in testing.""" flags.FLAGS.unparse_flags() absl_app.parse_flags_with_usage(argv or sys.argv) def register_key_flags_in_core(f): """Defines a function in core.py, and registers its key flags. absl uses the location of a flags.declare_key_flag() to determine the context in which a flag is key. By making all declares in core, this allows model main functions to call flags.adopt_module_key_flags() on core and correctly chain key flags. Args: f: The function to be wrapped Returns: The "core-defined" version of the input function. """ def core_fn(*args, **kwargs): key_flags = f(*args, **kwargs) [flags.declare_key_flag(fl) for fl in key_flags] # pylint: disable=expression-not-assigned return core_fn define_base = register_key_flags_in_core(_base.define_base) # Remove options not relevant for Eager from define_base(). define_base_eager = register_key_flags_in_core(functools.partial( _base.define_base, epochs_between_evals=False, stop_threshold=False, multi_gpu=False, hooks=False)) define_benchmark = register_key_flags_in_core(_benchmark.define_benchmark) define_image = register_key_flags_in_core(_misc.define_image) define_performance = register_key_flags_in_core(_performance.define_performance) help_wrap = _conventions.help_wrap get_num_gpus = _base.get_num_gpus get_tf_dtype = _performance.get_tf_dtype get_loss_scale = _performance.get_loss_scale DTYPE_MAP = _performance.DTYPE_MAP ================================================ FILE: official/utils/flags/flags_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== import unittest from absl import flags import tensorflow as tf from official.utils.flags import core as flags_core # pylint: disable=g-bad-import-order def define_flags(): flags_core.define_base(multi_gpu=True, num_gpu=False) flags_core.define_performance() flags_core.define_image() flags_core.define_benchmark() class BaseTester(unittest.TestCase): @classmethod def setUpClass(cls): super(BaseTester, cls).setUpClass() define_flags() def test_default_setting(self): """Test to ensure fields exist and defaults can be set. """ defaults = dict( data_dir="dfgasf", model_dir="dfsdkjgbs", train_epochs=534, epochs_between_evals=15, batch_size=256, hooks=["LoggingTensorHook"], num_parallel_calls=18, inter_op_parallelism_threads=5, intra_op_parallelism_threads=10, data_format="channels_first" ) flags_core.set_defaults(**defaults) flags_core.parse_flags() for key, value in defaults.items(): assert flags.FLAGS.get_flag_value(name=key, default=None) == value def test_benchmark_setting(self): defaults = dict( hooks=["LoggingMetricHook"], benchmark_log_dir="/tmp/12345", gcp_project="project_abc", ) flags_core.set_defaults(**defaults) flags_core.parse_flags() for key, value in defaults.items(): assert flags.FLAGS.get_flag_value(name=key, default=None) == value def test_booleans(self): """Test to ensure boolean flags trigger as expected. """ flags_core.parse_flags([__file__, "--multi_gpu", "--use_synthetic_data"]) assert flags.FLAGS.multi_gpu assert flags.FLAGS.use_synthetic_data def test_parse_dtype_info(self): for dtype_str, tf_dtype, loss_scale in [["fp16", tf.float16, 128], ["fp32", tf.float32, 1]]: flags_core.parse_flags([__file__, "--dtype", dtype_str]) self.assertEqual(flags_core.get_tf_dtype(flags.FLAGS), tf_dtype) self.assertEqual(flags_core.get_loss_scale(flags.FLAGS), loss_scale) flags_core.parse_flags( [__file__, "--dtype", dtype_str, "--loss_scale", "5"]) self.assertEqual(flags_core.get_loss_scale(flags.FLAGS), 5) with self.assertRaises(SystemExit): flags_core.parse_flags([__file__, "--dtype", "int8"]) if __name__ == "__main__": unittest.main() ================================================ FILE: official/utils/logs/__init__.py ================================================ ================================================ FILE: official/utils/logs/hooks.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Hook that counts examples per second every N steps or seconds.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.logs import logger class ExamplesPerSecondHook(tf.train.SessionRunHook): """Hook to print out examples per second. Total time is tracked and then divided by the total number of steps to get the average step time and then batch_size is used to determine the running average of examples per second. The examples per second for the most recent interval is also logged. """ def __init__(self, batch_size, every_n_steps=None, every_n_secs=None, warm_steps=0, metric_logger=None): """Initializer for ExamplesPerSecondHook. Args: batch_size: Total batch size across all workers used to calculate examples/second from global time. every_n_steps: Log stats every n steps. every_n_secs: Log stats every n seconds. Exactly one of the `every_n_steps` or `every_n_secs` should be set. warm_steps: The number of steps to be skipped before logging and running average calculation. warm_steps steps refers to global steps across all workers, not on each worker metric_logger: instance of `BenchmarkLogger`, the benchmark logger that hook should use to write the log. If None, BaseBenchmarkLogger will be used. Raises: ValueError: if neither `every_n_steps` or `every_n_secs` is set, or both are set. """ if (every_n_steps is None) == (every_n_secs is None): raise ValueError("exactly one of every_n_steps" " and every_n_secs should be provided.") self._logger = metric_logger or logger.BaseBenchmarkLogger() self._timer = tf.train.SecondOrStepTimer( every_steps=every_n_steps, every_secs=every_n_secs) self._step_train_time = 0 self._total_steps = 0 self._batch_size = batch_size self._warm_steps = warm_steps def begin(self): """Called once before using the session to check global step.""" self._global_step_tensor = tf.train.get_global_step() if self._global_step_tensor is None: raise RuntimeError( "Global step should be created to use StepCounterHook.") def before_run(self, run_context): # pylint: disable=unused-argument """Called before each call to run(). Args: run_context: A SessionRunContext object. Returns: A SessionRunArgs object or None if never triggered. """ return tf.train.SessionRunArgs(self._global_step_tensor) def after_run(self, run_context, run_values): # pylint: disable=unused-argument """Called after each call to run(). Args: run_context: A SessionRunContext object. run_values: A SessionRunValues object. """ global_step = run_values.results if self._timer.should_trigger_for_step( global_step) and global_step > self._warm_steps: elapsed_time, elapsed_steps = self._timer.update_last_triggered_step( global_step) if elapsed_time is not None: self._step_train_time += elapsed_time self._total_steps += elapsed_steps # average examples per second is based on the total (accumulative) # training steps and training time so far average_examples_per_sec = self._batch_size * ( self._total_steps / self._step_train_time) # current examples per second is based on the elapsed training steps # and training time per batch current_examples_per_sec = self._batch_size * ( elapsed_steps / elapsed_time) self._logger.log_metric( "average_examples_per_sec", average_examples_per_sec, global_step=global_step) self._logger.log_metric( "current_examples_per_sec", current_examples_per_sec, global_step=global_step) ================================================ FILE: official/utils/logs/hooks_helper.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Hooks helper to return a list of TensorFlow hooks for training by name. More hooks can be added to this set. To add a new hook, 1) add the new hook to the registry in HOOKS, 2) add a corresponding function that parses out necessary parameters. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.logs import hooks from official.utils.logs import logger from official.utils.logs import metric_hook _TENSORS_TO_LOG = dict((x, x) for x in ['learning_rate', 'cross_entropy', 'train_accuracy']) def get_train_hooks(name_list, **kwargs): """Factory for getting a list of TensorFlow hooks for training by name. Args: name_list: a list of strings to name desired hook classes. Allowed: LoggingTensorHook, ProfilerHook, ExamplesPerSecondHook, which are defined as keys in HOOKS **kwargs: a dictionary of arguments to the hooks. Returns: list of instantiated hooks, ready to be used in a classifier.train call. Raises: ValueError: if an unrecognized name is passed. """ if not name_list: return [] train_hooks = [] for name in name_list: hook_name = HOOKS.get(name.strip().lower()) if hook_name is None: raise ValueError('Unrecognized training hook requested: {}'.format(name)) else: train_hooks.append(hook_name(**kwargs)) return train_hooks def get_logging_tensor_hook(every_n_iter=100, tensors_to_log=None, **kwargs): # pylint: disable=unused-argument """Function to get LoggingTensorHook. Args: every_n_iter: `int`, print the values of `tensors` once every N local steps taken on the current worker. tensors_to_log: List of tensor names or dictionary mapping labels to tensor names. If not set, log _TENSORS_TO_LOG by default. **kwargs: a dictionary of arguments to LoggingTensorHook. Returns: Returns a LoggingTensorHook with a standard set of tensors that will be printed to stdout. """ if tensors_to_log is None: tensors_to_log = _TENSORS_TO_LOG return tf.train.LoggingTensorHook( tensors=tensors_to_log, every_n_iter=every_n_iter) def get_profiler_hook(save_steps=1000, **kwargs): # pylint: disable=unused-argument """Function to get ProfilerHook. Args: save_steps: `int`, print profile traces every N steps. **kwargs: a dictionary of arguments to ProfilerHook. Returns: Returns a ProfilerHook that writes out timelines that can be loaded into profiling tools like chrome://tracing. """ return tf.train.ProfilerHook(save_steps=save_steps) def get_examples_per_second_hook(every_n_steps=100, batch_size=128, warm_steps=5, **kwargs): # pylint: disable=unused-argument """Function to get ExamplesPerSecondHook. Args: every_n_steps: `int`, print current and average examples per second every N steps. batch_size: `int`, total batch size used to calculate examples/second from global time. warm_steps: skip this number of steps before logging and running average. **kwargs: a dictionary of arguments to ExamplesPerSecondHook. Returns: Returns a ProfilerHook that writes out timelines that can be loaded into profiling tools like chrome://tracing. """ return hooks.ExamplesPerSecondHook( batch_size=batch_size, every_n_steps=every_n_steps, warm_steps=warm_steps, metric_logger=logger.get_benchmark_logger()) def get_logging_metric_hook(tensors_to_log=None, every_n_secs=600, **kwargs): # pylint: disable=unused-argument """Function to get LoggingMetricHook. Args: tensors_to_log: List of tensor names or dictionary mapping labels to tensor names. If not set, log _TENSORS_TO_LOG by default. every_n_secs: `int`, the frequency for logging the metric. Default to every 10 mins. Returns: Returns a ProfilerHook that writes out timelines that can be loaded into profiling tools like chrome://tracing. """ if tensors_to_log is None: tensors_to_log = _TENSORS_TO_LOG return metric_hook.LoggingMetricHook( tensors=tensors_to_log, metric_logger=logger.get_benchmark_logger(), every_n_secs=every_n_secs) # A dictionary to map one hook name and its corresponding function HOOKS = { 'loggingtensorhook': get_logging_tensor_hook, 'profilerhook': get_profiler_hook, 'examplespersecondhook': get_examples_per_second_hook, 'loggingmetrichook': get_logging_metric_hook, } ================================================ FILE: official/utils/logs/hooks_helper_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for hooks_helper.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import unittest import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.logs import hooks_helper class BaseTest(unittest.TestCase): def test_raise_in_non_list_names(self): with self.assertRaises(ValueError): hooks_helper.get_train_hooks( 'LoggingTensorHook, ProfilerHook', batch_size=256) def test_raise_in_invalid_names(self): invalid_names = ['StepCounterHook', 'StopAtStepHook'] with self.assertRaises(ValueError): hooks_helper.get_train_hooks(invalid_names, batch_size=256) def validate_train_hook_name(self, test_hook_name, expected_hook_name, **kwargs): returned_hook = hooks_helper.get_train_hooks([test_hook_name], **kwargs) self.assertEqual(len(returned_hook), 1) self.assertIsInstance(returned_hook[0], tf.train.SessionRunHook) self.assertEqual(returned_hook[0].__class__.__name__.lower(), expected_hook_name) def test_get_train_hooks_logging_tensor_hook(self): self.validate_train_hook_name('LoggingTensorHook', 'loggingtensorhook') def test_get_train_hooks_profiler_hook(self): self.validate_train_hook_name('ProfilerHook', 'profilerhook') def test_get_train_hooks_examples_per_second_hook(self): self.validate_train_hook_name('ExamplesPerSecondHook', 'examplespersecondhook') def test_get_logging_metric_hook(self): test_hook_name = 'LoggingMetricHook' self.validate_train_hook_name(test_hook_name, 'loggingmetrichook') if __name__ == '__main__': tf.test.main() ================================================ FILE: official/utils/logs/hooks_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for hooks.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import time import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.logs import hooks from official.utils.testing import mock_lib tf.logging.set_verbosity(tf.logging.DEBUG) class ExamplesPerSecondHookTest(tf.test.TestCase): """Tests for the ExamplesPerSecondHook. In this test, we explicitly run global_step tensor after train_op in order to grab the correct global step value. This is to correct for discrepancies in reported global step when running on GPUs. As in the after_run functions in ExamplesPerSecondHook, the global step from run_results (global_step = run_values.results) is not always correct and taken as the stale global_step (which may be 1 off the correct value). The exact global_step value should be from run_context (global_step = run_context.session.run(global_step_tensor) """ def setUp(self): """Mock out logging calls to verify if correct info is being monitored.""" self._logger = mock_lib.MockBenchmarkLogger() self.graph = tf.Graph() with self.graph.as_default(): tf.train.create_global_step() self.train_op = tf.assign_add(tf.train.get_global_step(), 1) self.global_step = tf.train.get_global_step() def test_raise_in_both_secs_and_steps(self): with self.assertRaises(ValueError): hooks.ExamplesPerSecondHook( batch_size=256, every_n_steps=10, every_n_secs=20, metric_logger=self._logger) def test_raise_in_none_secs_and_steps(self): with self.assertRaises(ValueError): hooks.ExamplesPerSecondHook( batch_size=256, every_n_steps=None, every_n_secs=None, metric_logger=self._logger) def _validate_log_every_n_steps(self, every_n_steps, warm_steps): hook = hooks.ExamplesPerSecondHook( batch_size=256, every_n_steps=every_n_steps, warm_steps=warm_steps, metric_logger=self._logger) with tf.train.MonitoredSession( tf.train.ChiefSessionCreator(), [hook]) as mon_sess: for _ in range(every_n_steps): # Explicitly run global_step after train_op to get the accurate # global_step value mon_sess.run(self.train_op) mon_sess.run(self.global_step) # Nothing should be in the list yet self.assertFalse(self._logger.logged_metric) mon_sess.run(self.train_op) global_step_val = mon_sess.run(self.global_step) if global_step_val > warm_steps: self._assert_metrics() else: # Nothing should be in the list yet self.assertFalse(self._logger.logged_metric) # Add additional run to verify proper reset when called multiple times. prev_log_len = len(self._logger.logged_metric) mon_sess.run(self.train_op) global_step_val = mon_sess.run(self.global_step) if every_n_steps == 1 and global_step_val > warm_steps: # Each time, we log two additional metrics. Did exactly 2 get added? self.assertEqual(len(self._logger.logged_metric), prev_log_len + 2) else: # No change in the size of the metric list. self.assertEqual(len(self._logger.logged_metric), prev_log_len) def test_examples_per_sec_every_1_steps(self): with self.graph.as_default(): self._validate_log_every_n_steps(1, 0) def test_examples_per_sec_every_5_steps(self): with self.graph.as_default(): self._validate_log_every_n_steps(5, 0) def test_examples_per_sec_every_1_steps_with_warm_steps(self): with self.graph.as_default(): self._validate_log_every_n_steps(1, 10) def test_examples_per_sec_every_5_steps_with_warm_steps(self): with self.graph.as_default(): self._validate_log_every_n_steps(5, 10) def _validate_log_every_n_secs(self, every_n_secs): hook = hooks.ExamplesPerSecondHook( batch_size=256, every_n_steps=None, every_n_secs=every_n_secs, metric_logger=self._logger) with tf.train.MonitoredSession( tf.train.ChiefSessionCreator(), [hook]) as mon_sess: # Explicitly run global_step after train_op to get the accurate # global_step value mon_sess.run(self.train_op) mon_sess.run(self.global_step) # Nothing should be in the list yet self.assertFalse(self._logger.logged_metric) time.sleep(every_n_secs) mon_sess.run(self.train_op) mon_sess.run(self.global_step) self._assert_metrics() def test_examples_per_sec_every_1_secs(self): with self.graph.as_default(): self._validate_log_every_n_secs(1) def test_examples_per_sec_every_5_secs(self): with self.graph.as_default(): self._validate_log_every_n_secs(5) def _assert_metrics(self): metrics = self._logger.logged_metric self.assertEqual(metrics[-2]["name"], "average_examples_per_sec") self.assertEqual(metrics[-1]["name"], "current_examples_per_sec") if __name__ == "__main__": tf.test.main() ================================================ FILE: official/utils/logs/logger.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Logging utilities for benchmark. For collecting local environment metrics like CPU and memory, certain python packages need be installed. See README for details. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import datetime import json import multiprocessing import numbers import os import threading import uuid from six.moves import _thread as thread from absl import flags import tensorflow as tf from tensorflow.python.client import device_lib METRIC_LOG_FILE_NAME = "metric.log" BENCHMARK_RUN_LOG_FILE_NAME = "benchmark_run.log" _DATE_TIME_FORMAT_PATTERN = "%Y-%m-%dT%H:%M:%S.%fZ" FLAGS = flags.FLAGS # Don't use it directly. Use get_benchmark_logger to access a logger. _benchmark_logger = None _logger_lock = threading.Lock() def config_benchmark_logger(flag_obj=None): """Config the global benchmark logger.""" _logger_lock.acquire() try: global _benchmark_logger if not flag_obj: flag_obj = FLAGS if (not hasattr(flag_obj, "benchmark_logger_type") or flag_obj.benchmark_logger_type == "BaseBenchmarkLogger"): _benchmark_logger = BaseBenchmarkLogger() elif flag_obj.benchmark_logger_type == "BenchmarkFileLogger": _benchmark_logger = BenchmarkFileLogger(flag_obj.benchmark_log_dir) elif flag_obj.benchmark_logger_type == "BenchmarkBigQueryLogger": from official.benchmark import benchmark_uploader as bu # pylint: disable=g-import-not-at-top bq_uploader = bu.BigQueryUploader(gcp_project=flag_obj.gcp_project) _benchmark_logger = BenchmarkBigQueryLogger( bigquery_uploader=bq_uploader, bigquery_data_set=flag_obj.bigquery_data_set, bigquery_run_table=flag_obj.bigquery_run_table, bigquery_metric_table=flag_obj.bigquery_metric_table, run_id=str(uuid.uuid4())) else: raise ValueError("Unrecognized benchmark_logger_type: %s" % flag_obj.benchmark_logger_type) finally: _logger_lock.release() return _benchmark_logger def get_benchmark_logger(): if not _benchmark_logger: config_benchmark_logger() return _benchmark_logger class BaseBenchmarkLogger(object): """Class to log the benchmark information to STDOUT.""" def log_evaluation_result(self, eval_results): """Log the evaluation result. The evaluate result is a dictionary that contains metrics defined in model_fn. It also contains a entry for global_step which contains the value of the global step when evaluation was performed. Args: eval_results: dict, the result of evaluate. """ if not isinstance(eval_results, dict): tf.logging.warning("eval_results should be dictionary for logging. " "Got %s", type(eval_results)) return global_step = eval_results[tf.GraphKeys.GLOBAL_STEP] for key in sorted(eval_results): if key != tf.GraphKeys.GLOBAL_STEP: self.log_metric(key, eval_results[key], global_step=global_step) def log_metric(self, name, value, unit=None, global_step=None, extras=None): """Log the benchmark metric information to local file. Currently the logging is done in a synchronized way. This should be updated to log asynchronously. Args: name: string, the name of the metric to log. value: number, the value of the metric. The value will not be logged if it is not a number type. unit: string, the unit of the metric, E.g "image per second". global_step: int, the global_step when the metric is logged. extras: map of string:string, the extra information about the metric. """ metric = _process_metric_to_json(name, value, unit, global_step, extras) if metric: tf.logging.info("Benchmark metric: %s", metric) def log_run_info(self, model_name, dataset_name, run_params): tf.logging.info("Benchmark run: %s", _gather_run_info(model_name, dataset_name, run_params)) class BenchmarkFileLogger(BaseBenchmarkLogger): """Class to log the benchmark information to local disk.""" def __init__(self, logging_dir): super(BenchmarkFileLogger, self).__init__() self._logging_dir = logging_dir if not tf.gfile.IsDirectory(self._logging_dir): tf.gfile.MakeDirs(self._logging_dir) def log_metric(self, name, value, unit=None, global_step=None, extras=None): """Log the benchmark metric information to local file. Currently the logging is done in a synchronized way. This should be updated to log asynchronously. Args: name: string, the name of the metric to log. value: number, the value of the metric. The value will not be logged if it is not a number type. unit: string, the unit of the metric, E.g "image per second". global_step: int, the global_step when the metric is logged. extras: map of string:string, the extra information about the metric. """ metric = _process_metric_to_json(name, value, unit, global_step, extras) if metric: with tf.gfile.GFile( os.path.join(self._logging_dir, METRIC_LOG_FILE_NAME), "a") as f: try: json.dump(metric, f) f.write("\n") except (TypeError, ValueError) as e: tf.logging.warning("Failed to dump metric to log file: " "name %s, value %s, error %s", name, value, e) def log_run_info(self, model_name, dataset_name, run_params): """Collect most of the TF runtime information for the local env. The schema of the run info follows official/benchmark/datastore/schema. Args: model_name: string, the name of the model. dataset_name: string, the name of dataset for training and evaluation. run_params: dict, the dictionary of parameters for the run, it could include hyperparameters or other params that are important for the run. """ run_info = _gather_run_info(model_name, dataset_name, run_params) with tf.gfile.GFile(os.path.join( self._logging_dir, BENCHMARK_RUN_LOG_FILE_NAME), "w") as f: try: json.dump(run_info, f) f.write("\n") except (TypeError, ValueError) as e: tf.logging.warning("Failed to dump benchmark run info to log file: %s", e) class BenchmarkBigQueryLogger(BaseBenchmarkLogger): """Class to log the benchmark information to BigQuery data store.""" def __init__(self, bigquery_uploader, bigquery_data_set, bigquery_run_table, bigquery_metric_table, run_id): super(BenchmarkBigQueryLogger, self).__init__() self._bigquery_uploader = bigquery_uploader self._bigquery_data_set = bigquery_data_set self._bigquery_run_table = bigquery_run_table self._bigquery_metric_table = bigquery_metric_table self._run_id = run_id def log_metric(self, name, value, unit=None, global_step=None, extras=None): """Log the benchmark metric information to bigquery. Args: name: string, the name of the metric to log. value: number, the value of the metric. The value will not be logged if it is not a number type. unit: string, the unit of the metric, E.g "image per second". global_step: int, the global_step when the metric is logged. extras: map of string:string, the extra information about the metric. """ metric = _process_metric_to_json(name, value, unit, global_step, extras) if metric: # Starting new thread for bigquery upload in case it might take long time # and impact the benchmark and performance measurement. Starting a new # thread might have potential performance impact for model that run on # CPU. thread.start_new_thread( self._bigquery_uploader.upload_benchmark_metric_json, (self._bigquery_data_set, self._bigquery_metric_table, self._run_id, [metric])) def log_run_info(self, model_name, dataset_name, run_params): """Collect most of the TF runtime information for the local env. The schema of the run info follows official/benchmark/datastore/schema. Args: model_name: string, the name of the model. dataset_name: string, the name of dataset for training and evaluation. run_params: dict, the dictionary of parameters for the run, it could include hyperparameters or other params that are important for the run. """ run_info = _gather_run_info(model_name, dataset_name, run_params) # Starting new thread for bigquery upload in case it might take long time # and impact the benchmark and performance measurement. Starting a new # thread might have potential performance impact for model that run on CPU. thread.start_new_thread( self._bigquery_uploader.upload_benchmark_run_json, (self._bigquery_data_set, self._bigquery_run_table, self._run_id, run_info)) def _gather_run_info(model_name, dataset_name, run_params): """Collect the benchmark run information for the local environment.""" run_info = { "model_name": model_name, "dataset": {"name": dataset_name}, "machine_config": {}, "run_date": datetime.datetime.utcnow().strftime( _DATE_TIME_FORMAT_PATTERN)} _collect_tensorflow_info(run_info) _collect_tensorflow_environment_variables(run_info) _collect_run_params(run_info, run_params) _collect_cpu_info(run_info) _collect_gpu_info(run_info) _collect_memory_info(run_info) return run_info def _process_metric_to_json( name, value, unit=None, global_step=None, extras=None): """Validate the metric data and generate JSON for insert.""" if not isinstance(value, numbers.Number): tf.logging.warning( "Metric value to log should be a number. Got %s", type(value)) return None extras = _convert_to_json_dict(extras) return { "name": name, "value": float(value), "unit": unit, "global_step": global_step, "timestamp": datetime.datetime.utcnow().strftime( _DATE_TIME_FORMAT_PATTERN), "extras": extras} def _collect_tensorflow_info(run_info): run_info["tensorflow_version"] = { "version": tf.VERSION, "git_hash": tf.GIT_VERSION} def _collect_run_params(run_info, run_params): """Log the parameter information for the benchmark run.""" def process_param(name, value): type_check = { str: {"name": name, "string_value": value}, int: {"name": name, "long_value": value}, bool: {"name": name, "bool_value": str(value)}, float: {"name": name, "float_value": value}, } return type_check.get(type(value), {"name": name, "string_value": str(value)}) if run_params: run_info["run_parameters"] = [ process_param(k, v) for k, v in sorted(run_params.items())] def _collect_tensorflow_environment_variables(run_info): run_info["tensorflow_environment_variables"] = [ {"name": k, "value": v} for k, v in sorted(os.environ.items()) if k.startswith("TF_")] # The following code is mirrored from tensorflow/tools/test/system_info_lib # which is not exposed for import. def _collect_cpu_info(run_info): """Collect the CPU information for the local environment.""" cpu_info = {} cpu_info["num_cores"] = multiprocessing.cpu_count() try: # Note: cpuinfo is not installed in the TensorFlow OSS tree. # It is installable via pip. import cpuinfo # pylint: disable=g-import-not-at-top info = cpuinfo.get_cpu_info() cpu_info["cpu_info"] = info["brand"] cpu_info["mhz_per_cpu"] = info["hz_advertised_raw"][0] / 1.0e6 run_info["machine_config"]["cpu_info"] = cpu_info except ImportError: tf.logging.warn("'cpuinfo' not imported. CPU info will not be logged.") def _collect_gpu_info(run_info): """Collect local GPU information by TF device library.""" gpu_info = {} local_device_protos = device_lib.list_local_devices() gpu_info["count"] = len([d for d in local_device_protos if d.device_type == "GPU"]) # The device description usually is a JSON string, which contains the GPU # model info, eg: # "device: 0, name: Tesla P100-PCIE-16GB, pci bus id: 0000:00:04.0" for d in local_device_protos: if d.device_type == "GPU": gpu_info["model"] = _parse_gpu_model(d.physical_device_desc) # Assume all the GPU connected are same model break run_info["machine_config"]["gpu_info"] = gpu_info def _collect_memory_info(run_info): try: # Note: psutil is not installed in the TensorFlow OSS tree. # It is installable via pip. import psutil # pylint: disable=g-import-not-at-top vmem = psutil.virtual_memory() run_info["machine_config"]["memory_total"] = vmem.total run_info["machine_config"]["memory_available"] = vmem.available except ImportError: tf.logging.warn("'psutil' not imported. Memory info will not be logged.") def _parse_gpu_model(physical_device_desc): # Assume all the GPU connected are same model for kv in physical_device_desc.split(","): k, _, v = kv.partition(":") if k.strip() == "name": return v.strip() return None def _convert_to_json_dict(input_dict): if input_dict: return [{"name": k, "value": v} for k, v in sorted(input_dict.items())] else: return [] ================================================ FILE: official/utils/logs/logger_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for benchmark logger.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import json import os import tempfile import time import unittest import mock from absl.testing import flagsaver import tensorflow as tf # pylint: disable=g-bad-import-order try: from google.cloud import bigquery except ImportError: bigquery = None from official.utils.flags import core as flags_core from official.utils.logs import logger class BenchmarkLoggerTest(tf.test.TestCase): @classmethod def setUpClass(cls): # pylint: disable=invalid-name super(BenchmarkLoggerTest, cls).setUpClass() flags_core.define_benchmark() def test_get_default_benchmark_logger(self): with flagsaver.flagsaver(benchmark_logger_type='foo'): self.assertIsInstance(logger.get_benchmark_logger(), logger.BaseBenchmarkLogger) def test_config_base_benchmark_logger(self): with flagsaver.flagsaver(benchmark_logger_type='BaseBenchmarkLogger'): logger.config_benchmark_logger() self.assertIsInstance(logger.get_benchmark_logger(), logger.BaseBenchmarkLogger) def test_config_benchmark_file_logger(self): # Set the benchmark_log_dir first since the benchmark_logger_type will need # the value to be set when it does the validation. with flagsaver.flagsaver(benchmark_log_dir='/tmp'): with flagsaver.flagsaver(benchmark_logger_type='BenchmarkFileLogger'): logger.config_benchmark_logger() self.assertIsInstance(logger.get_benchmark_logger(), logger.BenchmarkFileLogger) @unittest.skipIf(bigquery is None, 'Bigquery dependency is not installed.') def test_config_benchmark_bigquery_logger(self): with flagsaver.flagsaver(benchmark_logger_type='BenchmarkBigQueryLogger'): logger.config_benchmark_logger() self.assertIsInstance(logger.get_benchmark_logger(), logger.BenchmarkBigQueryLogger) class BaseBenchmarkLoggerTest(tf.test.TestCase): def setUp(self): super(BaseBenchmarkLoggerTest, self).setUp() self._actual_log = tf.logging.info self.logged_message = None def mock_log(*args, **kwargs): self.logged_message = args self._actual_log(*args, **kwargs) tf.logging.info = mock_log def tearDown(self): super(BaseBenchmarkLoggerTest, self).tearDown() tf.logging.info = self._actual_log def test_log_metric(self): log = logger.BaseBenchmarkLogger() log.log_metric("accuracy", 0.999, global_step=1e4, extras={"name": "value"}) expected_log_prefix = "Benchmark metric:" self.assertRegexpMatches(str(self.logged_message), expected_log_prefix) class BenchmarkFileLoggerTest(tf.test.TestCase): def setUp(self): super(BenchmarkFileLoggerTest, self).setUp() # Avoid pulling extra env vars from test environment which affects the test # result, eg. Kokoro test has a TF_PKG env which affect the test case # test_collect_tensorflow_environment_variables() self.original_environ = dict(os.environ) os.environ.clear() def tearDown(self): super(BenchmarkFileLoggerTest, self).tearDown() tf.gfile.DeleteRecursively(self.get_temp_dir()) os.environ.clear() os.environ.update(self.original_environ) def test_create_logging_dir(self): non_exist_temp_dir = os.path.join(self.get_temp_dir(), "unknown_dir") self.assertFalse(tf.gfile.IsDirectory(non_exist_temp_dir)) logger.BenchmarkFileLogger(non_exist_temp_dir) self.assertTrue(tf.gfile.IsDirectory(non_exist_temp_dir)) def test_log_metric(self): log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) log = logger.BenchmarkFileLogger(log_dir) log.log_metric("accuracy", 0.999, global_step=1e4, extras={"name": "value"}) metric_log = os.path.join(log_dir, "metric.log") self.assertTrue(tf.gfile.Exists(metric_log)) with tf.gfile.GFile(metric_log) as f: metric = json.loads(f.readline()) self.assertEqual(metric["name"], "accuracy") self.assertEqual(metric["value"], 0.999) self.assertEqual(metric["unit"], None) self.assertEqual(metric["global_step"], 1e4) self.assertEqual(metric["extras"], [{"name": "name", "value": "value"}]) def test_log_multiple_metrics(self): log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) log = logger.BenchmarkFileLogger(log_dir) log.log_metric("accuracy", 0.999, global_step=1e4, extras={"name": "value"}) log.log_metric("loss", 0.02, global_step=1e4) metric_log = os.path.join(log_dir, "metric.log") self.assertTrue(tf.gfile.Exists(metric_log)) with tf.gfile.GFile(metric_log) as f: accuracy = json.loads(f.readline()) self.assertEqual(accuracy["name"], "accuracy") self.assertEqual(accuracy["value"], 0.999) self.assertEqual(accuracy["unit"], None) self.assertEqual(accuracy["global_step"], 1e4) self.assertEqual(accuracy["extras"], [{"name": "name", "value": "value"}]) loss = json.loads(f.readline()) self.assertEqual(loss["name"], "loss") self.assertEqual(loss["value"], 0.02) self.assertEqual(loss["unit"], None) self.assertEqual(loss["global_step"], 1e4) self.assertEqual(loss["extras"], []) def test_log_non_number_value(self): log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) log = logger.BenchmarkFileLogger(log_dir) const = tf.constant(1) log.log_metric("accuracy", const) metric_log = os.path.join(log_dir, "metric.log") self.assertFalse(tf.gfile.Exists(metric_log)) def test_log_evaluation_result(self): eval_result = {"loss": 0.46237424, "global_step": 207082, "accuracy": 0.9285} log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) log = logger.BenchmarkFileLogger(log_dir) log.log_evaluation_result(eval_result) metric_log = os.path.join(log_dir, "metric.log") self.assertTrue(tf.gfile.Exists(metric_log)) with tf.gfile.GFile(metric_log) as f: accuracy = json.loads(f.readline()) self.assertEqual(accuracy["name"], "accuracy") self.assertEqual(accuracy["value"], 0.9285) self.assertEqual(accuracy["unit"], None) self.assertEqual(accuracy["global_step"], 207082) loss = json.loads(f.readline()) self.assertEqual(loss["name"], "loss") self.assertEqual(loss["value"], 0.46237424) self.assertEqual(loss["unit"], None) self.assertEqual(loss["global_step"], 207082) def test_log_evaluation_result_with_invalid_type(self): eval_result = "{'loss': 0.46237424, 'global_step': 207082}" log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) log = logger.BenchmarkFileLogger(log_dir) log.log_evaluation_result(eval_result) metric_log = os.path.join(log_dir, "metric.log") self.assertFalse(tf.gfile.Exists(metric_log)) def test_collect_tensorflow_info(self): run_info = {} logger._collect_tensorflow_info(run_info) self.assertNotEqual(run_info["tensorflow_version"], {}) self.assertEqual(run_info["tensorflow_version"]["version"], tf.VERSION) self.assertEqual(run_info["tensorflow_version"]["git_hash"], tf.GIT_VERSION) def test_collect_run_params(self): run_info = {} run_parameters = { "batch_size": 32, "synthetic_data": True, "train_epochs": 100.00, "dtype": "fp16", "resnet_size": 50, "random_tensor": tf.constant(2.0) } logger._collect_run_params(run_info, run_parameters) self.assertEqual(len(run_info["run_parameters"]), 6) self.assertEqual(run_info["run_parameters"][0], {"name": "batch_size", "long_value": 32}) self.assertEqual(run_info["run_parameters"][1], {"name": "dtype", "string_value": "fp16"}) self.assertEqual(run_info["run_parameters"][2], {"name": "random_tensor", "string_value": "Tensor(\"Const:0\", shape=(), dtype=float32)"}) self.assertEqual(run_info["run_parameters"][3], {"name": "resnet_size", "long_value": 50}) self.assertEqual(run_info["run_parameters"][4], {"name": "synthetic_data", "bool_value": "True"}) self.assertEqual(run_info["run_parameters"][5], {"name": "train_epochs", "float_value": 100.00}) def test_collect_tensorflow_environment_variables(self): os.environ["TF_ENABLE_WINOGRAD_NONFUSED"] = "1" os.environ["TF_OTHER"] = "2" os.environ["OTHER"] = "3" run_info = {} logger._collect_tensorflow_environment_variables(run_info) self.assertIsNotNone(run_info["tensorflow_environment_variables"]) expected_tf_envs = [ {"name": "TF_ENABLE_WINOGRAD_NONFUSED", "value": "1"}, {"name": "TF_OTHER", "value": "2"}, ] self.assertEqual(run_info["tensorflow_environment_variables"], expected_tf_envs) @unittest.skipUnless(tf.test.is_built_with_cuda(), "requires GPU") def test_collect_gpu_info(self): run_info = {"machine_config": {}} logger._collect_gpu_info(run_info) self.assertNotEqual(run_info["machine_config"]["gpu_info"], {}) def test_collect_memory_info(self): run_info = {"machine_config": {}} logger._collect_memory_info(run_info) self.assertIsNotNone(run_info["machine_config"]["memory_total"]) self.assertIsNotNone(run_info["machine_config"]["memory_available"]) @unittest.skipIf(bigquery is None, 'Bigquery dependency is not installed.') class BenchmarkBigQueryLoggerTest(tf.test.TestCase): def setUp(self): super(BenchmarkBigQueryLoggerTest, self).setUp() # Avoid pulling extra env vars from test environment which affects the test # result, eg. Kokoro test has a TF_PKG env which affect the test case # test_collect_tensorflow_environment_variables() self.original_environ = dict(os.environ) os.environ.clear() self.mock_bq_uploader = mock.MagicMock() self.logger = logger.BenchmarkBigQueryLogger( self.mock_bq_uploader, "dataset", "run_table", "metric_table", "run_id") def tearDown(self): super(BenchmarkBigQueryLoggerTest, self).tearDown() tf.gfile.DeleteRecursively(self.get_temp_dir()) os.environ.clear() os.environ.update(self.original_environ) def test_log_metric(self): self.logger.log_metric( "accuracy", 0.999, global_step=1e4, extras={"name": "value"}) expected_metric_json = [{ "name": "accuracy", "value": 0.999, "unit": None, "global_step": 1e4, "timestamp": mock.ANY, "extras": [{"name": "name", "value": "value"}] }] # log_metric will call upload_benchmark_metric_json in a separate thread. # Give it some grace period for the new thread before assert. time.sleep(1) self.mock_bq_uploader.upload_benchmark_metric_json.assert_called_once_with( "dataset", "metric_table", "run_id", expected_metric_json) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/utils/logs/metric_hook.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Session hook for logging benchmark metric.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order class LoggingMetricHook(tf.train.LoggingTensorHook): """Hook to log benchmark metric information. This hook is very similar as tf.train.LoggingTensorHook, which logs given tensors every N local steps, every N seconds, or at the end. The metric information will be logged to given log_dir or via metric_logger in JSON format, which can be consumed by data analysis pipeline later. Note that if `at_end` is True, `tensors` should not include any tensor whose evaluation produces a side effect such as consuming additional inputs. """ def __init__(self, tensors, metric_logger=None, every_n_iter=None, every_n_secs=None, at_end=False): """Initializer for LoggingMetricHook. Args: tensors: `dict` that maps string-valued tags to tensors/tensor names, or `iterable` of tensors/tensor names. metric_logger: instance of `BenchmarkLogger`, the benchmark logger that hook should use to write the log. every_n_iter: `int`, print the values of `tensors` once every N local steps taken on the current worker. every_n_secs: `int` or `float`, print the values of `tensors` once every N seconds. Exactly one of `every_n_iter` and `every_n_secs` should be provided. at_end: `bool` specifying whether to print the values of `tensors` at the end of the run. Raises: ValueError: 1. `every_n_iter` is non-positive, or 2. Exactly one of every_n_iter and every_n_secs should be provided. 3. Exactly one of log_dir and metric_logger should be provided. """ super(LoggingMetricHook, self).__init__( tensors=tensors, every_n_iter=every_n_iter, every_n_secs=every_n_secs, at_end=at_end) if metric_logger is None: raise ValueError("metric_logger should be provided.") self._logger = metric_logger def begin(self): super(LoggingMetricHook, self).begin() self._global_step_tensor = tf.train.get_global_step() if self._global_step_tensor is None: raise RuntimeError( "Global step should be created to use LoggingMetricHook.") if self._global_step_tensor.name not in self._current_tensors: self._current_tensors[self._global_step_tensor.name] = ( self._global_step_tensor) def after_run(self, unused_run_context, run_values): # should_trigger is a internal state that populated at before_run, and it is # using self_timer to determine whether it should trigger. if self._should_trigger: self._log_metric(run_values.results) self._iter_count += 1 def end(self, session): if self._log_at_end: values = session.run(self._current_tensors) self._log_metric(values) def _log_metric(self, tensor_values): self._timer.update_last_triggered_step(self._iter_count) global_step = tensor_values[self._global_step_tensor.name] # self._tag_order is populated during the init of LoggingTensorHook for tag in self._tag_order: self._logger.log_metric(tag, tensor_values[tag], global_step=global_step) ================================================ FILE: official/utils/logs/metric_hook_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Tests for metric_hook.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tempfile import time import tensorflow as tf # pylint: disable=g-bad-import-order from tensorflow.python.training import monitored_session # pylint: disable=g-bad-import-order from official.utils.logs import metric_hook from official.utils.testing import mock_lib class LoggingMetricHookTest(tf.test.TestCase): """Tests for LoggingMetricHook.""" def setUp(self): super(LoggingMetricHookTest, self).setUp() self._log_dir = tempfile.mkdtemp(dir=self.get_temp_dir()) self._logger = mock_lib.MockBenchmarkLogger() def tearDown(self): super(LoggingMetricHookTest, self).tearDown() tf.gfile.DeleteRecursively(self.get_temp_dir()) def test_illegal_args(self): with self.assertRaisesRegexp(ValueError, "nvalid every_n_iter"): metric_hook.LoggingMetricHook(tensors=["t"], every_n_iter=0) with self.assertRaisesRegexp(ValueError, "nvalid every_n_iter"): metric_hook.LoggingMetricHook(tensors=["t"], every_n_iter=-10) with self.assertRaisesRegexp(ValueError, "xactly one of"): metric_hook.LoggingMetricHook( tensors=["t"], every_n_iter=5, every_n_secs=5) with self.assertRaisesRegexp(ValueError, "xactly one of"): metric_hook.LoggingMetricHook(tensors=["t"]) with self.assertRaisesRegexp(ValueError, "metric_logger"): metric_hook.LoggingMetricHook(tensors=["t"], every_n_iter=5) def test_print_at_end_only(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() t = tf.constant(42.0, name="foo") train_op = tf.constant(3) hook = metric_hook.LoggingMetricHook( tensors=[t.name], at_end=True, metric_logger=self._logger) hook.begin() mon_sess = monitored_session._HookedSession(sess, [hook]) # pylint: disable=protected-access sess.run(tf.global_variables_initializer()) for _ in range(3): mon_sess.run(train_op) self.assertEqual(self._logger.logged_metric, []) hook.end(sess) self.assertEqual(len(self._logger.logged_metric), 1) metric = self._logger.logged_metric[0] self.assertRegexpMatches(metric["name"], "foo") self.assertEqual(metric["value"], 42.0) self.assertEqual(metric["unit"], None) self.assertEqual(metric["global_step"], 0) def test_global_step_not_found(self): with tf.Graph().as_default(): t = tf.constant(42.0, name="foo") hook = metric_hook.LoggingMetricHook( tensors=[t.name], at_end=True, metric_logger=self._logger) with self.assertRaisesRegexp( RuntimeError, "should be created to use LoggingMetricHook."): hook.begin() def test_log_tensors(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() t1 = tf.constant(42.0, name="foo") t2 = tf.constant(43.0, name="bar") train_op = tf.constant(3) hook = metric_hook.LoggingMetricHook( tensors=[t1, t2], at_end=True, metric_logger=self._logger) hook.begin() mon_sess = monitored_session._HookedSession(sess, [hook]) # pylint: disable=protected-access sess.run(tf.global_variables_initializer()) for _ in range(3): mon_sess.run(train_op) self.assertEqual(self._logger.logged_metric, []) hook.end(sess) self.assertEqual(len(self._logger.logged_metric), 2) metric1 = self._logger.logged_metric[0] self.assertRegexpMatches(str(metric1["name"]), "foo") self.assertEqual(metric1["value"], 42.0) self.assertEqual(metric1["unit"], None) self.assertEqual(metric1["global_step"], 0) metric2 = self._logger.logged_metric[1] self.assertRegexpMatches(str(metric2["name"]), "bar") self.assertEqual(metric2["value"], 43.0) self.assertEqual(metric2["unit"], None) self.assertEqual(metric2["global_step"], 0) def _validate_print_every_n_steps(self, sess, at_end): t = tf.constant(42.0, name="foo") train_op = tf.constant(3) hook = metric_hook.LoggingMetricHook( tensors=[t.name], every_n_iter=10, at_end=at_end, metric_logger=self._logger) hook.begin() mon_sess = monitored_session._HookedSession(sess, [hook]) # pylint: disable=protected-access sess.run(tf.global_variables_initializer()) mon_sess.run(train_op) self.assertRegexpMatches(str(self._logger.logged_metric), t.name) for _ in range(3): self._logger.logged_metric = [] for _ in range(9): mon_sess.run(train_op) # assertNotRegexpMatches is not supported by python 3.1 and later self.assertEqual(str(self._logger.logged_metric).find(t.name), -1) mon_sess.run(train_op) self.assertRegexpMatches(str(self._logger.logged_metric), t.name) # Add additional run to verify proper reset when called multiple times. self._logger.logged_metric = [] mon_sess.run(train_op) # assertNotRegexpMatches is not supported by python 3.1 and later self.assertEqual(str(self._logger.logged_metric).find(t.name), -1) self._logger.logged_metric = [] hook.end(sess) if at_end: self.assertRegexpMatches(str(self._logger.logged_metric), t.name) else: # assertNotRegexpMatches is not supported by python 3.1 and later self.assertEqual(str(self._logger.logged_metric).find(t.name), -1) def test_print_every_n_steps(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() self._validate_print_every_n_steps(sess, at_end=False) # Verify proper reset. self._validate_print_every_n_steps(sess, at_end=False) def test_print_every_n_steps_and_end(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() self._validate_print_every_n_steps(sess, at_end=True) # Verify proper reset. self._validate_print_every_n_steps(sess, at_end=True) def _validate_print_every_n_secs(self, sess, at_end): t = tf.constant(42.0, name="foo") train_op = tf.constant(3) hook = metric_hook.LoggingMetricHook( tensors=[t.name], every_n_secs=1.0, at_end=at_end, metric_logger=self._logger) hook.begin() mon_sess = monitored_session._HookedSession(sess, [hook]) # pylint: disable=protected-access sess.run(tf.global_variables_initializer()) mon_sess.run(train_op) self.assertRegexpMatches(str(self._logger.logged_metric), t.name) # assertNotRegexpMatches is not supported by python 3.1 and later self._logger.logged_metric = [] mon_sess.run(train_op) self.assertEqual(str(self._logger.logged_metric).find(t.name), -1) time.sleep(1.0) self._logger.logged_metric = [] mon_sess.run(train_op) self.assertRegexpMatches(str(self._logger.logged_metric), t.name) self._logger.logged_metric = [] hook.end(sess) if at_end: self.assertRegexpMatches(str(self._logger.logged_metric), t.name) else: # assertNotRegexpMatches is not supported by python 3.1 and later self.assertEqual(str(self._logger.logged_metric).find(t.name), -1) def test_print_every_n_secs(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() self._validate_print_every_n_secs(sess, at_end=False) # Verify proper reset. self._validate_print_every_n_secs(sess, at_end=False) def test_print_every_n_secs_and_end(self): with tf.Graph().as_default(), tf.Session() as sess: tf.train.get_or_create_global_step() self._validate_print_every_n_secs(sess, at_end=True) # Verify proper reset. self._validate_print_every_n_secs(sess, at_end=True) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/utils/misc/__init__.py ================================================ ================================================ FILE: official/utils/misc/model_helpers.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Miscellaneous functions that can be called by models.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import numbers import tensorflow as tf def past_stop_threshold(stop_threshold, eval_metric): """Return a boolean representing whether a model should be stopped. Args: stop_threshold: float, the threshold above which a model should stop training. eval_metric: float, the current value of the relevant metric to check. Returns: True if training should stop, False otherwise. Raises: ValueError: if either stop_threshold or eval_metric is not a number """ if stop_threshold is None: return False if not isinstance(stop_threshold, numbers.Number): raise ValueError("Threshold for checking stop conditions must be a number.") if not isinstance(eval_metric, numbers.Number): raise ValueError("Eval metric being checked against stop conditions " "must be a number.") if eval_metric >= stop_threshold: tf.logging.info( "Stop threshold of {} was passed with metric value {}.".format( stop_threshold, eval_metric)) return True return False ================================================ FILE: official/utils/misc/model_helpers_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ Tests for Model Helper functions.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.misc import model_helpers class PastStopThresholdTest(tf.test.TestCase): """Tests for past_stop_threshold.""" def test_past_stop_threshold(self): """Tests for normal operating conditions.""" self.assertTrue(model_helpers.past_stop_threshold(0.54, 1)) self.assertTrue(model_helpers.past_stop_threshold(54, 100)) self.assertFalse(model_helpers.past_stop_threshold(0.54, 0.1)) self.assertFalse(model_helpers.past_stop_threshold(-0.54, -1.5)) self.assertTrue(model_helpers.past_stop_threshold(-0.54, 0)) self.assertTrue(model_helpers.past_stop_threshold(0, 0)) self.assertTrue(model_helpers.past_stop_threshold(0.54, 0.54)) def test_past_stop_threshold_none_false(self): """Tests that check None returns false.""" self.assertFalse(model_helpers.past_stop_threshold(None, -1.5)) self.assertFalse(model_helpers.past_stop_threshold(None, None)) self.assertFalse(model_helpers.past_stop_threshold(None, 1.5)) # Zero should be okay, though. self.assertTrue(model_helpers.past_stop_threshold(0, 1.5)) def test_past_stop_threshold_not_number(self): """Tests for error conditions.""" with self.assertRaises(ValueError): model_helpers.past_stop_threshold("str", 1) with self.assertRaises(ValueError): model_helpers.past_stop_threshold("str", tf.constant(5)) with self.assertRaises(ValueError): model_helpers.past_stop_threshold("str", "another") with self.assertRaises(ValueError): model_helpers.past_stop_threshold(0, None) with self.assertRaises(ValueError): model_helpers.past_stop_threshold(0.7, "str") with self.assertRaises(ValueError): model_helpers.past_stop_threshold(tf.constant(4), None) if __name__ == "__main__": tf.test.main() ================================================ FILE: official/utils/testing/__init__.py ================================================ ================================================ FILE: official/utils/testing/integration.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Helper code to run complete models from within python. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import shutil import sys import tempfile from absl import flags from official.utils.flags import core as flags_core def run_synthetic(main, tmp_root, extra_flags=None, synth=True, max_train=1): """Performs a minimal run of a model. This function is intended to test for syntax errors throughout a model. A very limited run is performed using synthetic data. Args: main: The primary function used to exercise a code path. Generally this function is ".main(argv)". tmp_root: Root path for the temp directory created by the test class. extra_flags: Additional flags passed by the caller of this function. synth: Use synthetic data. max_train: Maximum number of allowed training steps. """ extra_flags = [] if extra_flags is None else extra_flags model_dir = tempfile.mkdtemp(dir=tmp_root) args = [sys.argv[0], "--model_dir", model_dir, "--train_epochs", "1", "--epochs_between_evals", "1"] + extra_flags if synth: args.append("--use_synthetic_data") if max_train is not None: args.extend(["--max_train_steps", str(max_train)]) try: flags_core.parse_flags(argv=args) main(flags.FLAGS) finally: if os.path.exists(model_dir): shutil.rmtree(model_dir) ================================================ FILE: official/utils/testing/mock_lib.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Mock objects and related functions for testing.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function class MockBenchmarkLogger(object): """This is a mock logger that can be used in dependent tests.""" def __init__(self): self.logged_metric = [] def log_metric(self, name, value, unit=None, global_step=None, extras=None): self.logged_metric.append({ "name": name, "value": float(value), "unit": unit, "global_step": global_step, "extras": extras}) ================================================ FILE: official/utils/testing/pylint.rcfile ================================================ [MESSAGES CONTROL] disable=R,W, bad-option-value [REPORTS] # Tells whether to display a full report or only the messages reports=no # Activate the evaluation score. score=no [BASIC] # Regular expression matching correct argument names argument-rgx=^[a-z][a-z0-9_]*$ # Regular expression matching correct attribute names attr-rgx=^_{0,2}[a-z][a-z0-9_]*$ # Regular expression matching correct class attribute names class-attribute-rgx=^(_?[A-Z][A-Z0-9_]*|__[a-z0-9_]+__|_?[a-z][a-z0-9_]*)$ # Regular expression matching correct class names class-rgx=^_?[A-Z][a-zA-Z0-9]*$ # Regular expression matching correct constant names const-rgx=^(_?[A-Z][A-Z0-9_]*|__[a-z0-9_]+__|_?[a-z][a-z0-9_]*)$ # Minimum line length for functions/classes that require docstrings, shorter # ones are exempt. docstring-min-length=10 # Regular expression matching correct function names function-rgx=^(?:(?P_?[A-Z][a-zA-Z0-9]*)|(?P_?[a-z][a-z0-9_]*))$ # Good variable names which should always be accepted, separated by a comma good-names=main,_ # Regular expression matching correct inline iteration names inlinevar-rgx=^[a-z][a-z0-9_]*$ # Regular expression matching correct method names method-rgx=^(?:(?P__[a-z0-9_]+__|next)|(?P_{0,2}[A-Z][a-zA-Z0-9]*)|(?P_{0,2}[a-z][a-z0-9_]*)|(setUp|tearDown))$ # Regular expression matching correct module names module-rgx=^(_?[a-z][a-z0-9_]*)|__init__|PRESUBMIT|PRESUBMIT_unittest$ # Regular expression which should only match function or class names that do # not require a docstring. no-docstring-rgx=(__.*__|main|.*ArgParser) # Naming hint for variable names variable-name-hint=[a-z_][a-z0-9_]{2,30}$ # Regular expression matching correct variable names variable-rgx=^[a-z][a-z0-9_]*$ [TYPECHECK] # List of module names for which member attributes should not be checked # (useful for modules/projects where namespaces are manipulated during runtime # and thus existing member attributes cannot be deduced by static analysis. It # supports qualified module names, as well as Unix pattern matching. ignored-modules=absl, absl.*, official, official.*, tensorflow, tensorflow.*, LazyLoader, google, google.cloud.* [CLASSES] # List of method names used to declare (i.e. assign) instance attributes. defining-attr-methods=__init__,__new__,setUp # List of member names, which should be excluded from the protected access # warning. exclude-protected=_asdict,_fields,_replace,_source,_make # This is deprecated, because it is not used anymore. #ignore-iface-methods= # List of valid names for the first argument in a class method. valid-classmethod-first-arg=cls,class_ # List of valid names for the first argument in a metaclass class method. valid-metaclass-classmethod-first-arg=mcs [DESIGN] # Argument names that match this expression will be ignored. Default to name # with leading underscore ignored-argument-names=_.* # Maximum number of arguments for function / method max-args=5 # Maximum number of attributes for a class (see R0902). max-attributes=7 # Maximum number of branch for function / method body max-branches=12 # Maximum number of locals for function / method body max-locals=15 # Maximum number of parents for a class (see R0901). max-parents=7 # Maximum number of public methods for a class (see R0904). max-public-methods=20 # Maximum number of return / yield for function / method body max-returns=6 # Maximum number of statements in function / method body max-statements=50 # Minimum number of public methods for a class (see R0903). min-public-methods=2 [EXCEPTIONS] # Exceptions that will emit a warning when being caught. Defaults to # "Exception" overgeneral-exceptions=StandardError,Exception,BaseException [FORMAT] # Number of spaces of indent required inside a hanging or continued line. indent-after-paren=4 # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 # tab). indent-string=' ' # Maximum number of characters on a single line. max-line-length=80 # Maximum number of lines in a module max-module-lines=99999 # List of optional constructs for which whitespace checking is disabled no-space-check= # Allow the body of an if to be on the same line as the test if there is no # else. single-line-if-stmt=yes [VARIABLES] # List of additional names supposed to be defined in builtins. Remember that # you should avoid to define new builtins when possible. additional-builtins= # List of strings which can identify a callback function by name. A callback # name must start or end with one of those strings. callbacks=cb_,_cb # A regular expression matching the name of dummy variables (i.e. expectedly # not used). dummy-variables-rgx=^\*{0,2}(_$|unused_|dummy_) # Tells whether we should check for unused import in __init__ files. init-import=no ================================================ FILE: official/utils/testing/reference_data/reference_data_test/dense/results.json ================================================ [1, 1, 0.4701630473136902, 0.4701630473136902, 0.4701630473136902] ================================================ FILE: official/utils/testing/reference_data/reference_data_test/dense/tf_version.json ================================================ ["1.8.0-dev20180325", "v1.7.0-rc1-750-g6c1737e6c8"] ================================================ FILE: official/utils/testing/reference_data/reference_data_test/uniform_random/results.json ================================================ [0.9872556924819946] ================================================ FILE: official/utils/testing/reference_data/reference_data_test/uniform_random/tf_version.json ================================================ ["1.8.0-dev20180325", "v1.7.0-rc1-750-g6c1737e6c8"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_projection_version-1_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.08920872211456299, 0.8918969631195068, 4064.7060546875, 32, 4, 4, 8, 0.0, 0.10715862363576889, 2344.4775390625] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_projection_version-1_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_projection_version-2_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.918815016746521, 0.1826801300048828, 4064.4677734375, 32, 4, 4, 8, -1.3153012990951538, 0.011247094720602036, 261.84716796875] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_projection_version-2_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_version-1_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.1677999496459961, 0.7767924070358276, 4089.44189453125, 32, 8, 8, 4, 0.8615571856498718, 1.1359407901763916, 5806.876953125] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_version-1_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_version-2_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.8239736557006836, 0.3485994338989258, 4108.87548828125, 32, 8, 8, 4, 0.16798323392868042, -0.2975311279296875, 2860.068359375] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_bottleneck_version-2_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_projection_version-1_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.5349493026733398, 0.5126370191574097, 4070.01220703125, 32, 4, 4, 8, 0.0, 2.7680201530456543, 2341.23486328125] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_projection_version-1_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_projection_version-2_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.7820245027542114, 0.8173515796661377, 4095.256591796875, 32, 4, 4, 8, 0.0679062008857727, 0.009305447340011597, -137.36178588867188] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_projection_version-2_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_version-1_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.23128163814544678, 0.22117376327514648, 4100.51806640625, 32, 8, 8, 4, 1.1768392324447632, 0.2728465795516968, 5832.6416015625] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_version-1_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_version-2_width-8_channels-4/results.json ================================================ [32, 8, 8, 4, 0.7616699934005737, 0.5485763549804688, 4106.8720703125, 32, 8, 8, 4, -0.056346118450164795, 0.5792689919471741, 2972.37255859375] ================================================ FILE: official/utils/testing/reference_data/resnet/batch-size-32_building_version-2_width-8_channels-4/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data/resnet/batch_norm/results.json ================================================ [32, 16, 16, 3, 0.9722558259963989, 0.18413543701171875, 12374.20703125, 32, 16, 16, 3, 1.6126631498336792, -1.096894383430481, -0.041595458984375] ================================================ FILE: official/utils/testing/reference_data/resnet/batch_norm/tf_version.json ================================================ ["1.8.0-dev20180408", "v1.7.0-1345-gb874783ccd"] ================================================ FILE: official/utils/testing/reference_data.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """TensorFlow testing subclass to automate numerical testing. Reference tests determine when behavior deviates from some "gold standard," and are useful for determining when layer definitions have changed without performing full regression testing, which is generally prohibitive. This class handles the symbolic graph comparison as well as loading weights to avoid relying on random number generation, which can change. The tests performed by this class are: 1) Compare a generated graph against a reference graph. Differences are not necessarily fatal. 2) Attempt to load known weights for the graph. If this step succeeds but changes are present in the graph, a warning is issued but does not raise an exception. 3) Perform a calculation and compare the result to a reference value. This class also provides a method to generate reference data. Note: The test class is responsible for fixing the random seed during graph definition. A convenience method name_to_seed() is provided to make this process easier. The test class should also define a .regenerate() class method which (usually) just calls the op definition function with test=False for all relevant tests. A concise example of this class in action is provided in: official/utils/testing/reference_data_test.py """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import hashlib import json import os import shutil import sys import numpy as np import tensorflow as tf from tensorflow.python import pywrap_tensorflow class BaseTest(tf.test.TestCase): """TestCase subclass for performing reference data tests.""" def regenerate(self): """Subclasses should override this function to generate a new reference.""" raise NotImplementedError @property def test_name(self): """Subclass should define its own name.""" raise NotImplementedError @property def data_root(self): """Use the subclass directory rather than the parent directory. Returns: The path prefix for reference data. """ return os.path.join(os.path.split( os.path.abspath(__file__))[0], "reference_data", self.test_name) ckpt_prefix = "model.ckpt" @staticmethod def name_to_seed(name): """Convert a string into a 32 bit integer. This function allows test cases to easily generate random fixed seeds by hashing the name of the test. The hash string is in hex rather than base 10 which is why there is a 16 in the int call, and the modulo projects the seed from a 128 bit int to 32 bits for readability. Args: name: A string containing the name of a test. Returns: A pseudo-random 32 bit integer derived from name. """ seed = hashlib.md5(name.encode("utf-8")).hexdigest() return int(seed, 16) % (2**32 - 1) @staticmethod def common_tensor_properties(input_array): """Convenience function for matrix testing. In tests we wish to determine whether a result has changed. However storing an entire n-dimensional array is impractical. A better approach is to calculate several values from that array and test that those derived values are unchanged. The properties themselves are arbitrary and should be chosen to be good proxies for a full equality test. Args: input_array: A numpy array from which key values are extracted. Returns: A list of values derived from the input_array for equality tests. """ output = list(input_array.shape) flat_array = input_array.flatten() output.extend([float(i) for i in [flat_array[0], flat_array[-1], np.sum(flat_array)]]) return output def default_correctness_function(self, *args): """Returns a vector with the concatenation of common properties. This function simply calls common_tensor_properties() for every element. It is useful as it allows one to easily construct tests of layers without having to worry about the details of result checking. Args: *args: A list of numpy arrays corresponding to tensors which have been evaluated. Returns: A list of values containing properties for every element in args. """ output = [] for arg in args: output.extend(self.common_tensor_properties(arg)) return output def _construct_and_save_reference_files( self, name, graph, ops_to_eval, correctness_function): """Save reference data files. Constructs a serialized graph_def, layer weights, and computation results. It then saves them to files which are read at test time. Args: name: String defining the run. This will be used to define folder names and will be used for random seed construction. graph: The graph in which the test is conducted. ops_to_eval: Ops which the user wishes to be evaluated under a controlled session. correctness_function: This function accepts the evaluated results of ops_to_eval, and returns a list of values. This list must be JSON serializable; in particular it is up to the user to convert numpy dtypes into builtin dtypes. """ data_dir = os.path.join(self.data_root, name) # Make sure there is a clean space for results. if os.path.exists(data_dir): shutil.rmtree(data_dir) os.makedirs(data_dir) # Serialize graph for comparison. graph_bytes = graph.as_graph_def().SerializeToString() expected_file = os.path.join(data_dir, "expected_graph") with tf.gfile.Open(expected_file, "wb") as f: f.write(graph_bytes) with graph.as_default(): init = tf.global_variables_initializer() saver = tf.train.Saver() with self.test_session(graph=graph) as sess: sess.run(init) saver.save(sess=sess, save_path=os.path.join(data_dir, self.ckpt_prefix)) # These files are not needed for this test. os.remove(os.path.join(data_dir, "checkpoint")) os.remove(os.path.join(data_dir, self.ckpt_prefix + ".meta")) # ops are evaluated even if there is no correctness function to ensure # that they can be evaluated. eval_results = [op.eval() for op in ops_to_eval] if correctness_function is not None: results = correctness_function(*eval_results) with tf.gfile.Open(os.path.join(data_dir, "results.json"), "w") as f: json.dump(results, f) with tf.gfile.Open(os.path.join(data_dir, "tf_version.json"), "w") as f: json.dump([tf.VERSION, tf.GIT_VERSION], f) def _evaluate_test_case(self, name, graph, ops_to_eval, correctness_function): """Determine if a graph agrees with the reference data. Args: name: String defining the run. This will be used to define folder names and will be used for random seed construction. graph: The graph in which the test is conducted. ops_to_eval: Ops which the user wishes to be evaluated under a controlled session. correctness_function: This function accepts the evaluated results of ops_to_eval, and returns a list of values. This list must be JSON serializable; in particular it is up to the user to convert numpy dtypes into builtin dtypes. """ data_dir = os.path.join(self.data_root, name) # Serialize graph for comparison. graph_bytes = graph.as_graph_def().SerializeToString() expected_file = os.path.join(data_dir, "expected_graph") with tf.gfile.Open(expected_file, "rb") as f: expected_graph_bytes = f.read() # The serialization is non-deterministic byte-for-byte. Instead there is # a utility which evaluates the semantics of the two graphs to test for # equality. This has the added benefit of providing some information on # what changed. # Note: The summary only show the first difference detected. It is not # an exhaustive summary of differences. differences = pywrap_tensorflow.EqualGraphDefWrapper( graph_bytes, expected_graph_bytes).decode("utf-8") with graph.as_default(): init = tf.global_variables_initializer() saver = tf.train.Saver() with tf.gfile.Open(os.path.join(data_dir, "tf_version.json"), "r") as f: tf_version_reference, tf_git_version_reference = json.load(f) # pylint: disable=unpacking-non-sequence tf_version_comparison = "" if tf.GIT_VERSION != tf_git_version_reference: tf_version_comparison = ( "Test was built using: {} (git = {})\n" "Local TensorFlow version: {} (git = {})" .format(tf_version_reference, tf_git_version_reference, tf.VERSION, tf.GIT_VERSION) ) with self.test_session(graph=graph) as sess: sess.run(init) try: saver.restore(sess=sess, save_path=os.path.join( data_dir, self.ckpt_prefix)) if differences: tf.logging.warn( "The provided graph is different than expected:\n {}\n" "However the weights were still able to be loaded.\n{}".format( differences, tf_version_comparison) ) except: # pylint: disable=bare-except raise self.failureException( "Weight load failed. Graph comparison:\n {}{}" .format(differences, tf_version_comparison)) eval_results = [op.eval() for op in ops_to_eval] if correctness_function is not None: results = correctness_function(*eval_results) with tf.gfile.Open(os.path.join(data_dir, "results.json"), "r") as f: expected_results = json.load(f) self.assertAllClose(results, expected_results) def _save_or_test_ops(self, name, graph, ops_to_eval=None, test=True, correctness_function=None): """Utility function to automate repeated work of graph checking and saving. The philosophy of this function is that the user need only define ops on a graph and specify which results should be validated. The actual work of managing snapshots and calculating results should be automated away. Args: name: String defining the run. This will be used to define folder names and will be used for random seed construction. graph: The graph in which the test is conducted. ops_to_eval: Ops which the user wishes to be evaluated under a controlled session. test: Boolean. If True this function will test graph correctness, load weights, and compute numerical values. If False the necessary test data will be generated and saved. correctness_function: This function accepts the evaluated results of ops_to_eval, and returns a list of values. This list must be JSON serializable; in particular it is up to the user to convert numpy dtypes into builtin dtypes. """ ops_to_eval = ops_to_eval or [] if test: try: self._evaluate_test_case( name=name, graph=graph, ops_to_eval=ops_to_eval, correctness_function=correctness_function ) except: tf.logging.error("Failed unittest {}".format(name)) raise else: self._construct_and_save_reference_files( name=name, graph=graph, ops_to_eval=ops_to_eval, correctness_function=correctness_function ) class ReferenceDataActionParser(argparse.ArgumentParser): """Minimal arg parser so that test regeneration can be called from the CLI.""" def __init__(self): super(ReferenceDataActionParser, self).__init__() self.add_argument( "--regenerate", "-regen", action="store_true", help="Enable this flag to regenerate test data. If not set unit tests" "will be run." ) def main(argv, test_class): """Simple switch function to allow test regeneration from the CLI.""" flags = ReferenceDataActionParser().parse_args(argv[1:]) if flags.regenerate: if sys.version_info[0] == 2: raise NameError("\nPython2 unittest does not support being run as a " "standalone class.\nAs a result tests must be " "regenerated using Python3.\n" "Tests can be run under 2 or 3.") test_class().regenerate() else: tf.test.main() ================================================ FILE: official/utils/testing/reference_data_test.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """This module tests generic behavior of reference data tests. This test is not intended to test every layer of interest, and models should test the layers that affect them. This test is primarily focused on ensuring that reference_data.BaseTest functions as intended. If there is a legitimate change such as a change to TensorFlow which changes graph construction, tests can be regenerated with the following command: $ python3 reference_data_test.py -regen """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import unittest import warnings import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.testing import reference_data class GoldenBaseTest(reference_data.BaseTest): """Class to ensure that reference data testing runs properly.""" @property def test_name(self): return "reference_data_test" def _uniform_random_ops(self, test=False, wrong_name=False, wrong_shape=False, bad_seed=False, bad_function=False): """Tests number generation and failure modes. This test is of a very simple graph: the generation of a 1x1 random tensor. However, it is also used to confirm that the tests are actually checking properly by failing in predefined ways. Args: test: Whether or not to run as a test case. wrong_name: Whether to assign the wrong name to the tensor. wrong_shape: Whether to create a tensor with the wrong shape. bad_seed: Whether or not to perturb the random seed. bad_function: Whether to perturb the correctness function. """ name = "uniform_random" g = tf.Graph() with g.as_default(): seed = self.name_to_seed(name) seed = seed + 1 if bad_seed else seed tf.set_random_seed(seed) tensor_name = "wrong_tensor" if wrong_name else "input_tensor" tensor_shape = (1, 2) if wrong_shape else (1, 1) input_tensor = tf.get_variable( tensor_name, dtype=tf.float32, initializer=tf.random_uniform(tensor_shape, maxval=1) ) def correctness_function(tensor_result): result = float(tensor_result[0, 0]) result = result + 0.1 if bad_function else result return [result] self._save_or_test_ops( name=name, graph=g, ops_to_eval=[input_tensor], test=test, correctness_function=correctness_function ) def _dense_ops(self, test=False): name = "dense" g = tf.Graph() with g.as_default(): tf.set_random_seed(self.name_to_seed(name)) input_tensor = tf.get_variable( "input_tensor", dtype=tf.float32, initializer=tf.random_uniform((1, 2), maxval=1) ) layer = tf.layers.dense(inputs=input_tensor, units=4) layer = tf.layers.dense(inputs=layer, units=1) self._save_or_test_ops( name=name, graph=g, ops_to_eval=[layer], test=test, correctness_function=self.default_correctness_function ) def test_uniform_random(self): self._uniform_random_ops(test=True) def test_tensor_name_error(self): with self.assertRaises(AssertionError): self._uniform_random_ops(test=True, wrong_name=True) def test_tensor_shape_error(self): with self.assertRaises(AssertionError): self._uniform_random_ops(test=True, wrong_shape=True) @unittest.skipIf(sys.version_info[0] == 2, "catch_warning doesn't catch tf.logging.warn in py 2.") def test_bad_seed(self): with warnings.catch_warnings(record=True) as warn_catch: self._uniform_random_ops(test=True, bad_seed=True) assert len(warn_catch) == 1, "Test did not warn of minor graph change." def test_incorrectness_function(self): with self.assertRaises(AssertionError): self._uniform_random_ops(test=True, bad_function=True) def test_dense(self): self._dense_ops(test=True) def regenerate(self): self._uniform_random_ops(test=False) self._dense_ops(test=False) if __name__ == "__main__": reference_data.main(argv=sys.argv, test_class=GoldenBaseTest) ================================================ FILE: official/utils/testing/scripts/presubmit.sh ================================================ #!/bin/bash # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== # Presubmit script that run tests and lint under local environment. # Make sure that tensorflow and pylint is installed. # usage: models >: ./official/utils/testing/scripts/presubmit.sh # usage: models >: ./official/utils/testing/scripts/presubmit.sh lint py2_test py3_test set +x SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" cd "$SCRIPT_DIR/../../../.." MODEL_ROOT="$(pwd)" export PYTHONPATH="$PYTHONPATH:${MODEL_ROOT}" cd official lint() { local exit_code=0 RC_FILE="utils/testing/pylint.rcfile" echo "===========Running lint test============" for file in `find . -name '*.py' ! -name '*test.py' -print` do echo "Linting ${file}" pylint --rcfile="${RC_FILE}" "${file}" || exit_code=$? done # More lenient for test files. for file in `find . -name '*test.py' -print` do echo "Linting ${file}" pylint --rcfile="${RC_FILE}" --disable=missing-docstring,protected-access "${file}" || exit_code=$? done return "${exit_code}" } py_test() { local PY_BINARY="$1" local exit_code=0 echo "===========Running Python test============" for test_file in `find . -name '*test.py' -print` do echo "Testing ${test_file}" ${PY_BINARY} "${test_file}" || exit_code=$? done return "${exit_code}" } py2_test() { local PY_BINARY=$(which python2) py_test "$PY_BINARY" return $? } py3_test() { local PY_BINARY=$(which python3) py_test "$PY_BINARY" return $? } test_result=0 if [ "$#" -eq 0 ]; then TESTS="lint py2_test py3_test" else TESTS="$@" fi for t in "${TESTS}"; do ${t} || test_result=$? done exit "${test_result}" ================================================ FILE: official/wide_deep/README.md ================================================ # Predicting Income with the Census Income Dataset ## Overview The [Census Income Data Set](https://archive.ics.uci.edu/ml/datasets/Census+Income) contains over 48,000 samples with attributes including age, occupation, education, and income (a binary label, either `>50K` or `<=50K`). The dataset is split into roughly 32,000 training and 16,000 testing samples. Here, we use the [wide and deep model](https://research.googleblog.com/2016/06/wide-deep-learning-better-together-with.html) to predict the income labels. The **wide model** is able to memorize interactions with data with a large number of features but not able to generalize these learned interactions on new data. The **deep model** generalizes well but is unable to learn exceptions within the data. The **wide and deep model** combines the two models and is able to generalize while learning exceptions. For the purposes of this example code, the Census Income Data Set was chosen to allow the model to train in a reasonable amount of time. You'll notice that the deep model performs almost as well as the wide and deep model on this dataset. The wide and deep model truly shines on larger data sets with high-cardinality features, where each feature has millions/billions of unique possible values (which is the specialty of the wide model). --- The code sample in this directory uses the high level `tf.estimator.Estimator` API. This API is great for fast iteration and quickly adapting models to your own datasets without major code overhauls. It allows you to move from single-worker training to distributed training, and it makes it easy to export model binaries for prediction. The input function for the `Estimator` uses `tf.contrib.data.TextLineDataset`, which creates a `Dataset` object. The `Dataset` API makes it easy to apply transformations (map, batch, shuffle, etc.) to the data. [Read more here](https://www.tensorflow.org/programmers_guide/datasets). The `Estimator` and `Dataset` APIs are both highly encouraged for fast development and efficient training. ## Running the code First make sure you've [added the models folder to your Python path](/official/#running-the-models); otherwise you may encounter an error like `ImportError: No module named official.wide_deep`. ### Setup The [Census Income Data Set](https://archive.ics.uci.edu/ml/datasets/Census+Income) that this sample uses for training is hosted by the [UC Irvine Machine Learning Repository](https://archive.ics.uci.edu/ml/datasets/). We have provided a script that downloads and cleans the necessary files. ``` python data_download.py ``` This will download the files to `/tmp/census_data`. To change the directory, set the `--data_dir` flag. ### Training You can run the code locally as follows: ``` python wide_deep.py ``` The model is saved to `/tmp/census_model` by default, which can be changed using the `--model_dir` flag. To run the *wide* or *deep*-only models, set the `--model_type` flag to `wide` or `deep`. Other flags are configurable as well; see `wide_deep.py` for details. The final accuracy should be over 83% with any of the three model types. ### TensorBoard Run TensorBoard to inspect the details about the graph and training progression. ``` tensorboard --logdir=/tmp/census_model ``` ## Inference with SavedModel You can export the model into Tensorflow [SavedModel](https://www.tensorflow.org/programmers_guide/saved_model) format by using the argument `--export_dir`: ``` python wide_deep.py --export_dir /tmp/wide_deep_saved_model ``` After the model finishes training, use [`saved_model_cli`](https://www.tensorflow.org/programmers_guide/saved_model#cli_to_inspect_and_execute_savedmodel) to inspect and execute the SavedModel. Try the following commands to inspect the SavedModel: **Replace `${TIMESTAMP}` with the folder produced (e.g. 1524249124)** ``` # List possible tag_sets. Only one metagraph is saved, so there will be one option. saved_model_cli show --dir /tmp/wide_deep_saved_model/${TIMESTAMP}/ # Show SignatureDefs for tag_set=serve. SignatureDefs define the outputs to show. saved_model_cli show --dir /tmp/wide_deep_saved_model/${TIMESTAMP}/ \ --tag_set serve --all ``` ### Inference Let's use the model to predict the income group of two examples: ``` saved_model_cli run --dir /tmp/wide_deep_saved_model/${TIMESTAMP}/ \ --tag_set serve --signature_def="predict" \ --input_examples='examples=[{"age":[46.], "education_num":[10.], "capital_gain":[7688.], "capital_loss":[0.], "hours_per_week":[38.]}, {"age":[24.], "education_num":[13.], "capital_gain":[0.], "capital_loss":[0.], "hours_per_week":[50.]}]' ``` This will print out the predicted classes and class probabilities. Class 0 is the <=50k group and 1 is the >50k group. ## Additional Links If you are interested in distributed training, take a look at [Distributed TensorFlow](https://www.tensorflow.org/deploy/distributed). You can also [run this model on Cloud ML Engine](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction), which provides [hyperparameter tuning](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction#hyperparameter_tuning) to maximize your model's results and enables [deploying your model for prediction](https://cloud.google.com/ml-engine/docs/getting-started-training-prediction#deploy_a_model_to_support_prediction). ================================================ FILE: official/wide_deep/__init__.py ================================================ ================================================ FILE: official/wide_deep/data_download.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Download and clean the Census Income Dataset.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import sys from six.moves import urllib import tensorflow as tf DATA_URL = 'https://archive.ics.uci.edu/ml/machine-learning-databases/adult' TRAINING_FILE = 'adult.data' TRAINING_URL = '%s/%s' % (DATA_URL, TRAINING_FILE) EVAL_FILE = 'adult.test' EVAL_URL = '%s/%s' % (DATA_URL, EVAL_FILE) parser = argparse.ArgumentParser() parser.add_argument( '--data_dir', type=str, default='/tmp/census_data', help='Directory to download census data') def _download_and_clean_file(filename, url): """Downloads data from url, and makes changes to match the CSV format.""" temp_file, _ = urllib.request.urlretrieve(url) with tf.gfile.Open(temp_file, 'r') as temp_eval_file: with tf.gfile.Open(filename, 'w') as eval_file: for line in temp_eval_file: line = line.strip() line = line.replace(', ', ',') if not line or ',' not in line: continue if line[-1] == '.': line = line[:-1] line += '\n' eval_file.write(line) tf.gfile.Remove(temp_file) def main(_): if not tf.gfile.Exists(FLAGS.data_dir): tf.gfile.MkDir(FLAGS.data_dir) training_file_path = os.path.join(FLAGS.data_dir, TRAINING_FILE) _download_and_clean_file(training_file_path, TRAINING_URL) eval_file_path = os.path.join(FLAGS.data_dir, EVAL_FILE) _download_and_clean_file(eval_file_path, EVAL_URL) if __name__ == '__main__': FLAGS, unparsed = parser.parse_known_args() tf.app.run(argv=[sys.argv[0]] + unparsed) ================================================ FILE: official/wide_deep/wide_deep.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Example code for TensorFlow Wide & Deep Tutorial using tf.estimator API.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import shutil from absl import app as absl_app from absl import flags import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.flags import core as flags_core from official.utils.logs import hooks_helper from official.utils.logs import logger from official.utils.misc import model_helpers _CSV_COLUMNS = [ 'age', 'workclass', 'fnlwgt', 'education', 'education_num', 'marital_status', 'occupation', 'relationship', 'race', 'gender', 'capital_gain', 'capital_loss', 'hours_per_week', 'native_country', 'income_bracket' ] _CSV_COLUMN_DEFAULTS = [[0], [''], [0], [''], [0], [''], [''], [''], [''], [''], [0], [0], [0], [''], ['']] _NUM_EXAMPLES = { 'train': 32561, 'validation': 16281, } LOSS_PREFIX = {'wide': 'linear/', 'deep': 'dnn/'} def define_wide_deep_flags(): """Add supervised learning flags, as well as wide-deep model type.""" flags_core.define_base() flags_core.define_benchmark() flags.adopt_module_key_flags(flags_core) flags.DEFINE_enum( name="model_type", short_name="mt", default="wide_deep", enum_values=['wide', 'deep', 'wide_deep'], help="Select model topology.") flags_core.set_defaults(data_dir='/tmp/census_data', model_dir='/tmp/census_model', train_epochs=40, epochs_between_evals=2, batch_size=40) def build_model_columns(): """Builds a set of wide and deep feature columns.""" # Continuous columns age = tf.feature_column.numeric_column('age') education_num = tf.feature_column.numeric_column('education_num') capital_gain = tf.feature_column.numeric_column('capital_gain') capital_loss = tf.feature_column.numeric_column('capital_loss') hours_per_week = tf.feature_column.numeric_column('hours_per_week') education = tf.feature_column.categorical_column_with_vocabulary_list( 'education', [ 'Bachelors', 'HS-grad', '11th', 'Masters', '9th', 'Some-college', 'Assoc-acdm', 'Assoc-voc', '7th-8th', 'Doctorate', 'Prof-school', '5th-6th', '10th', '1st-4th', 'Preschool', '12th']) marital_status = tf.feature_column.categorical_column_with_vocabulary_list( 'marital_status', [ 'Married-civ-spouse', 'Divorced', 'Married-spouse-absent', 'Never-married', 'Separated', 'Married-AF-spouse', 'Widowed']) relationship = tf.feature_column.categorical_column_with_vocabulary_list( 'relationship', [ 'Husband', 'Not-in-family', 'Wife', 'Own-child', 'Unmarried', 'Other-relative']) workclass = tf.feature_column.categorical_column_with_vocabulary_list( 'workclass', [ 'Self-emp-not-inc', 'Private', 'State-gov', 'Federal-gov', 'Local-gov', '?', 'Self-emp-inc', 'Without-pay', 'Never-worked']) # To show an example of hashing: occupation = tf.feature_column.categorical_column_with_hash_bucket( 'occupation', hash_bucket_size=1000) # Transformations. age_buckets = tf.feature_column.bucketized_column( age, boundaries=[18, 25, 30, 35, 40, 45, 50, 55, 60, 65]) # Wide columns and deep columns. base_columns = [ education, marital_status, relationship, workclass, occupation, age_buckets, ] crossed_columns = [ tf.feature_column.crossed_column( ['education', 'occupation'], hash_bucket_size=1000), tf.feature_column.crossed_column( [age_buckets, 'education', 'occupation'], hash_bucket_size=1000), ] wide_columns = base_columns + crossed_columns deep_columns = [ age, education_num, capital_gain, capital_loss, hours_per_week, tf.feature_column.indicator_column(workclass), tf.feature_column.indicator_column(education), tf.feature_column.indicator_column(marital_status), tf.feature_column.indicator_column(relationship), # To show an example of embedding tf.feature_column.embedding_column(occupation, dimension=8), ] return wide_columns, deep_columns def build_estimator(model_dir, model_type): """Build an estimator appropriate for the given model type.""" wide_columns, deep_columns = build_model_columns() hidden_units = [100, 75, 50, 25] # Create a tf.estimator.RunConfig to ensure the model is run on CPU, which # trains faster than GPU for this model. run_config = tf.estimator.RunConfig().replace( session_config=tf.ConfigProto(device_count={'GPU': 0})) if model_type == 'wide': return tf.estimator.LinearClassifier( model_dir=model_dir, feature_columns=wide_columns, config=run_config) elif model_type == 'deep': return tf.estimator.DNNClassifier( model_dir=model_dir, feature_columns=deep_columns, hidden_units=hidden_units, config=run_config) else: return tf.estimator.DNNLinearCombinedClassifier( model_dir=model_dir, linear_feature_columns=wide_columns, dnn_feature_columns=deep_columns, dnn_hidden_units=hidden_units, config=run_config) def input_fn(data_file, num_epochs, shuffle, batch_size): """Generate an input function for the Estimator.""" assert tf.gfile.Exists(data_file), ( '%s not found. Please make sure you have run data_download.py and ' 'set the --data_dir argument to the correct path.' % data_file) def parse_csv(value): print('Parsing', data_file) columns = tf.decode_csv(value, record_defaults=_CSV_COLUMN_DEFAULTS) features = dict(zip(_CSV_COLUMNS, columns)) labels = features.pop('income_bracket') return features, tf.equal(labels, '>50K') # Extract lines from input files using the Dataset API. dataset = tf.data.TextLineDataset(data_file) if shuffle: dataset = dataset.shuffle(buffer_size=_NUM_EXAMPLES['train']) dataset = dataset.map(parse_csv, num_parallel_calls=5) # We call repeat after shuffling, rather than before, to prevent separate # epochs from blending together. dataset = dataset.repeat(num_epochs) dataset = dataset.batch(batch_size) return dataset def export_model(model, model_type, export_dir): """Export to SavedModel format. Args: model: Estimator object model_type: string indicating model type. "wide", "deep" or "wide_deep" export_dir: directory to export the model. """ wide_columns, deep_columns = build_model_columns() if model_type == 'wide': columns = wide_columns elif model_type == 'deep': columns = deep_columns else: columns = wide_columns + deep_columns feature_spec = tf.feature_column.make_parse_example_spec(columns) example_input_fn = ( tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec)) model.export_savedmodel(export_dir, example_input_fn) def run_wide_deep(flags_obj): """Run Wide-Deep training and eval loop. Args: flags_obj: An object containing parsed flag values. """ # Clean up the model directory if present shutil.rmtree(flags_obj.model_dir, ignore_errors=True) model = build_estimator(flags_obj.model_dir, flags_obj.model_type) train_file = os.path.join(flags_obj.data_dir, 'adult.data') test_file = os.path.join(flags_obj.data_dir, 'adult.test') # Train and evaluate the model every `flags.epochs_between_evals` epochs. def train_input_fn(): return input_fn( train_file, flags_obj.epochs_between_evals, True, flags_obj.batch_size) def eval_input_fn(): return input_fn(test_file, 1, False, flags_obj.batch_size) run_params = { 'batch_size': flags_obj.batch_size, 'train_epochs': flags_obj.train_epochs, 'model_type': flags_obj.model_type, } benchmark_logger = logger.config_benchmark_logger(flags_obj) benchmark_logger.log_run_info('wide_deep', 'Census Income', run_params) loss_prefix = LOSS_PREFIX.get(flags_obj.model_type, '') train_hooks = hooks_helper.get_train_hooks( flags_obj.hooks, batch_size=flags_obj.batch_size, tensors_to_log={'average_loss': loss_prefix + 'head/truediv', 'loss': loss_prefix + 'head/weighted_loss/Sum'}) # Train and evaluate the model every `flags.epochs_between_evals` epochs. for n in range(flags_obj.train_epochs // flags_obj.epochs_between_evals): model.train(input_fn=train_input_fn, hooks=train_hooks) results = model.evaluate(input_fn=eval_input_fn) # Display evaluation metrics tf.logging.info('Results at epoch %d / %d', (n + 1) * flags_obj.epochs_between_evals, flags_obj.train_epochs) tf.logging.info('-' * 60) for key in sorted(results): tf.logging.info('%s: %s' % (key, results[key])) benchmark_logger.log_evaluation_result(results) if model_helpers.past_stop_threshold( flags_obj.stop_threshold, results['accuracy']): break # Export the model if flags_obj.export_dir is not None: export_model(model, flags_obj.model_type, flags_obj.export_dir) def main(_): run_wide_deep(flags.FLAGS) if __name__ == '__main__': tf.logging.set_verbosity(tf.logging.INFO) define_wide_deep_flags() absl_app.run(main) ================================================ FILE: official/wide_deep/wide_deep_test.csv ================================================ 39,State-gov,77516,Bachelors,13,Never-married,Adm-clerical,Not-in-family,,,2174,0,40,,<=50K 50,Self-emp-not-inc,83311,Bachelors,13,Married-civ-spouse,Exec-managerial,Husband,,,0,0,13,,<=50K 38,Private,215646,HS-grad,9,Divorced,Handlers-cleaners,Not-in-family,,,0,0,40,,<=50K 53,Private,234721,11th,7,Married-civ-spouse,Handlers-cleaners,Husband,,,0,0,40,,<=50K 28,Private,338409,Bachelors,13,Married-civ-spouse,Prof-specialty,Wife,,,0,0,40,,<=50K 37,Private,284582,Masters,14,Married-civ-spouse,Exec-managerial,Wife,,,0,0,40,,<=50K 49,Private,160187,9th,5,Married-spouse-absent,Other-service,Not-in-family,,,0,0,16,,<=50K 52,Self-emp-not-inc,209642,HS-grad,9,Married-civ-spouse,Exec-managerial,Husband,,,0,0,45,,>50K 31,Private,45781,Masters,14,Never-married,Prof-specialty,Not-in-family,,,14084,0,50,,>50K 42,Private,159449,Bachelors,13,Married-civ-spouse,Exec-managerial,Husband,,,5178,0,40,,>50K 37,Private,280464,Some-college,10,Married-civ-spouse,Exec-managerial,Husband,,,0,0,80,,>50K 30,State-gov,141297,Bachelors,13,Married-civ-spouse,Prof-specialty,Husband,,,0,0,40,,>50K 23,Private,122272,Bachelors,13,Never-married,Adm-clerical,Own-child,,,0,0,30,,<=50K 32,Private,205019,Assoc-acdm,12,Never-married,Sales,Not-in-family,,,0,0,50,,<=50K 40,Private,121772,Assoc-voc,11,Married-civ-spouse,Craft-repair,Husband,,,0,0,40,,>50K 34,Private,245487,7th-8th,4,Married-civ-spouse,Transport-moving,Husband,,,0,0,45,,<=50K 25,Self-emp-not-inc,176756,HS-grad,9,Never-married,Farming-fishing,Own-child,,,0,0,35,,<=50K 32,Private,186824,HS-grad,9,Never-married,Machine-op-inspct,Unmarried,,,0,0,40,,<=50K 38,Private,28887,11th,7,Married-civ-spouse,Sales,Husband,,,0,0,50,,<=50K 43,Self-emp-not-inc,292175,Masters,14,Divorced,Exec-managerial,Unmarried,,,0,0,45,,>50K 40,Private,193524,Doctorate,16,Married-civ-spouse,Prof-specialty,Husband,,,0,0,60,,>50K 56,Local-gov,216851,Bachelors,13,Married-civ-spouse,Tech-support,Husband,,,0,0,40,,>50K 54,?,180211,Some-college,10,Married-civ-spouse,?,Husband,,,0,0,60,,>50K 22,State-gov,311512,Some-college,10,Married-civ-spouse,Other-service,Husband,,,0,0,15,,<=50K 31,Private,84154,Some-college,10,Married-civ-spouse,Sales,Husband,,,0,0,38,,>50K 57,Federal-gov,337895,Bachelors,13,Married-civ-spouse,Prof-specialty,Husband,,,0,0,40,,>50K 47,Private,51835,Prof-school,15,Married-civ-spouse,Prof-specialty,Wife,,,0,1902,60,,>50K 50,Federal-gov,251585,Bachelors,13,Divorced,Exec-managerial,Not-in-family,,,0,0,55,,>50K 25,Private,289980,HS-grad,9,Never-married,Handlers-cleaners,Not-in-family,,,0,0,35,,<=50K 42,Private,116632,Doctorate,16,Married-civ-spouse,Prof-specialty,Husband,,,0,0,45,,>50K ================================================ FILE: official/wide_deep/wide_deep_test.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tensorflow as tf # pylint: disable=g-bad-import-order from official.utils.testing import integration from official.wide_deep import wide_deep tf.logging.set_verbosity(tf.logging.ERROR) TEST_INPUT = ('18,Self-emp-not-inc,987,Bachelors,12,Married-civ-spouse,abc,' 'Husband,zyx,wvu,34,56,78,tsr,<=50K') TEST_INPUT_VALUES = { 'age': 18, 'education_num': 12, 'capital_gain': 34, 'capital_loss': 56, 'hours_per_week': 78, 'education': 'Bachelors', 'marital_status': 'Married-civ-spouse', 'relationship': 'Husband', 'workclass': 'Self-emp-not-inc', 'occupation': 'abc', } TEST_CSV = os.path.join(os.path.dirname(__file__), 'wide_deep_test.csv') class BaseTest(tf.test.TestCase): """Tests for Wide Deep model.""" @classmethod def setUpClass(cls): # pylint: disable=invalid-name super(BaseTest, cls).setUpClass() wide_deep.define_wide_deep_flags() def setUp(self): # Create temporary CSV file self.temp_dir = self.get_temp_dir() self.input_csv = os.path.join(self.temp_dir, 'test.csv') with tf.gfile.Open(self.input_csv, 'w') as temp_csv: temp_csv.write(TEST_INPUT) with tf.gfile.Open(TEST_CSV, "r") as temp_csv: test_csv_contents = temp_csv.read() # Used for end-to-end tests. for fname in ['adult.data', 'adult.test']: with tf.gfile.Open(os.path.join(self.temp_dir, fname), 'w') as test_csv: test_csv.write(test_csv_contents) def test_input_fn(self): dataset = wide_deep.input_fn(self.input_csv, 1, False, 1) features, labels = dataset.make_one_shot_iterator().get_next() with tf.Session() as sess: features, labels = sess.run((features, labels)) # Compare the two features dictionaries. for key in TEST_INPUT_VALUES: self.assertTrue(key in features) self.assertEqual(len(features[key]), 1) feature_value = features[key][0] # Convert from bytes to string for Python 3. if isinstance(feature_value, bytes): feature_value = feature_value.decode() self.assertEqual(TEST_INPUT_VALUES[key], feature_value) self.assertFalse(labels) def build_and_test_estimator(self, model_type): """Ensure that model trains and minimizes loss.""" model = wide_deep.build_estimator(self.temp_dir, model_type) # Train for 1 step to initialize model and evaluate initial loss def get_input_fn(num_epochs, shuffle, batch_size): def input_fn(): return wide_deep.input_fn( TEST_CSV, num_epochs=num_epochs, shuffle=shuffle, batch_size=batch_size) return input_fn model.train(input_fn=get_input_fn(1, True, 1), steps=1) initial_results = model.evaluate(input_fn=get_input_fn(1, False, 1)) # Train for 100 epochs at batch size 3 and evaluate final loss model.train(input_fn=get_input_fn(100, True, 3)) final_results = model.evaluate(input_fn=get_input_fn(1, False, 1)) print('%s initial results:' % model_type, initial_results) print('%s final results:' % model_type, final_results) # Ensure loss has decreased, while accuracy and both AUCs have increased. self.assertLess(final_results['loss'], initial_results['loss']) self.assertGreater(final_results['auc'], initial_results['auc']) self.assertGreater(final_results['auc_precision_recall'], initial_results['auc_precision_recall']) self.assertGreater(final_results['accuracy'], initial_results['accuracy']) def test_wide_deep_estimator_training(self): self.build_and_test_estimator('wide_deep') def test_end_to_end_wide(self): integration.run_synthetic( main=wide_deep.main, tmp_root=self.get_temp_dir(), extra_flags=[ '--data_dir', self.get_temp_dir(), '--model_type', 'wide', ], synth=False, max_train=None) def test_end_to_end_deep(self): integration.run_synthetic( main=wide_deep.main, tmp_root=self.get_temp_dir(), extra_flags=[ '--data_dir', self.get_temp_dir(), '--model_type', 'deep', ], synth=False, max_train=None) def test_end_to_end_wide_deep(self): integration.run_synthetic( main=wide_deep.main, tmp_root=self.get_temp_dir(), extra_flags=[ '--data_dir', self.get_temp_dir(), '--model_type', 'wide_deep', ], synth=False, max_train=None) if __name__ == '__main__': tf.test.main() ================================================ FILE: projects/__init__.py ================================================ import projects.ai2018 try: import projects.kaggle import projects.feed except Exception: pass ================================================ FILE: projects/ai2018/__init__.py ================================================ import projects.ai2018.sentiment import projects.ai2018.reader ================================================ FILE: projects/ai2018/binary/__init__.py ================================================ import projects.ai2018.sentiment.prepare ================================================ FILE: projects/ai2018/binary/algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/binary/algos/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-02-16 19:12:02.066189 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS CLASSES = ['na', 'neg', 'neu', 'pos'] ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] ASPECTS = ['location', 'service', 'price', 'environment', 'dish', 'others'] NUM_ATTRIBUTES = len(ATTRIBUTES) ATTRIBUTES_MAP = dict(zip(ATTRIBUTES, range(NUM_ATTRIBUTES))) # -2,-1,0,1 -> 0,1,2,3 NUM_CLASSES = 4 flags.DEFINE_bool('share_pooling', True, 'wether to share pooling params for each attribute') flags.DEFINE_bool('share_fc', True, 'wether to share fc layer notice if share pooling actually must not share fc also no matter what you set share_fc') flags.DEFINE_integer('bert_num_heads', 12, '') flags.DEFINE_integer('bert_num_layers', 12, '') flags.DEFINE_float('bert_dropout', 0.1, '') flags.DEFINE_float('bert_lr_ratio', 0.1, '') flags.DEFINE_bool('use_soft_label', False, '') flags.DEFINE_bool('use_len', False, 'wether add length as a feature') flags.DEFINE_string('pretrain_encoder', 'bilm', 'bilm or bert') flags.DEFINE_bool('transformer_add_rnn', False, '') flags.DEFINE_bool('unk_aug', False, '') #flags.DEFINE_integer('unk_id', 1, 'bert unk id is 100') flags.DEFINE_integer('unk_aug_start_epoch', 2, '') flags.DEFINE_integer('unk_aug_start_step', 7000, '') flags.DEFINE_float('unk_aug_max_ratio', 0.02, '') flags.DEFINE_bool('use_class_weights', False, '') flags.DEFINE_bool('att_dropout', True, 'for tf rnet by default att with dropout') flags.DEFINE_integer('char_min_count', None, '') flags.DEFINE_integer('tag_min_count', None, '') #flags.DEFINE_float('label_smoothing', 0, '') flags.DEFINE_bool('cut_front', False, '') flags.DEFINE_integer('content_limit', 0, '') flags.DEFINE_float('other_corpus_factor', 1., '') flags.DEFINE_string('model', None, '') flags.DEFINE_string('loss', 'cross', '') flags.DEFINE_float('other_loss_factor', 1., '') flags.DEFINE_float('na_loss_ratio', 0., '') flags.DEFINE_bool('na_loss_ratio_add', True, '') flags.DEFINE_float('earth_mover_loss_ratio', 0, '') flags.DEFINE_string('aspect', 'all', 'location, service, price, enviroment, dis, others') flags.DEFINE_integer('attr_index', None, '') #flags.DEFINE_string('weights', None, '') flags.DEFINE_float('init_weight', 1., '') flags.DEFINE_float('mlp_ratio', 0., '') flags.DEFINE_bool('binary_class_index', None, '') flags.DEFINE_bool('use_hier_encode', False, '') flags.DEFINE_bool('use_type', False, '') flags.DEFINE_bool('use_type_emb', False, '') flags.DEFINE_integer('type_emb_dim', 100, '') flags.DEFINE_bool('rcontent', False, '') flags.DEFINE_bool('split_type', False, '') flags.DEFINE_string('att_type', 'p2q', '') flags.DEFINE_string('att_combiner', 'gate', '') flags.DEFINE_string('att_activation', 'relu', '') flags.DEFINE_bool('loss_combine_by_scalar', False, '') flags.DEFINE_string('encoder_combiner', 'concat', '') flags.DEFINE_bool('use_mlp', False, '') flags.DEFINE_bool('use_word', True, '') flags.DEFINE_bool('use_simple_char', False, '') flags.DEFINE_string('simple_char_combiner', 'concat', '') ## in prepare.config #flags.DEFINE_bool('use_char', False, '') flags.DEFINE_bool('use_token_info', False, '') flags.DEFINE_bool('use_info_fc', False, '') flags.DEFINE_string('token_info_combiner', 'concat', '') flags.DEFINE_bool('use_comment_info', False, '') flags.DEFINE_bool('use_comment_info_fc', False, '') flags.DEFINE_string('comment_info_combiner', 'concat', '') flags.DEFINE_bool('comment_info_lang_only', False, '') flags.DEFINE_bool('cudnn_gru_encode', False, 'depreciated, for safe you could just use gru_baseline.py with auc 0.954 single model') flags.DEFINE_bool('use_pos', False, '') flags.DEFINE_bool('use_tag', False, '') flags.DEFINE_bool('use_ner', False, '') flags.DEFINE_integer('tag_emb_dim', 100, '') flags.DEFINE_bool('use_emb_fc', False, '') flags.DEFINE_bool('use_emb_att', False, '') flags.DEFINE_bool('use_emb_max', False, '') flags.DEFINE_float('sfu_keepprob', 0.5, '') flags.DEFINE_float('emb_keepprob', 0.5, '') flags.DEFINE_bool('emb_dropout', False, '') flags.DEFINE_bool('use_label_emb', False, '') flags.DEFINE_bool('use_label_att', False, '') flags.DEFINE_bool('simple_label_att', False, '') flags.DEFINE_bool('use_label_rnn', False, '') flags.DEFINE_string('label_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_string('self_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_integer('label_emb_dim', 100, '') flags.DEFINE_integer('label_emb_height', None, '') flags.DEFINE_bool('concat_label_emb', False, '') flags.DEFINE_bool('label2text_attention', False, '') flags.DEFINE_bool('perlabel_encoding', False, '') flags.DEFINE_bool('use_self_match', False, '') flags.DEFINE_bool('self_match_before_label_att', True, '') flags.DEFINE_string('loss_type', 'normal', '') flags.DEFINE_bool('hier_finetune', False, '') flags.DEFINE_bool('char_only', False, '') flags.DEFINE_integer('char_num_layers', 1, '') flags.DEFINE_integer('char_hidden_size', 100, '') flags.DEFINE_string('char_output_method', 'last', '') flags.DEFINE_integer('simple_char_num_layers', 3, '') flags.DEFINE_string('addtional_word_info', None, 'pos,tag,ner') flags.DEFINE_string('decay_target', None, 'loss or auc') flags.DEFINE_integer('decay_patience', 4, '') flags.DEFINE_float('decay_factor', 0.5, '') flags.DEFINE_float('decay_start_epoch_', 1., '') flags.DEFINE_bool('dynamic_weights', False, '') flags.DEFINE_bool('use_gate', False, '') flags.DEFINE_bool('use_position_encoding', False, '') ================================================ FILE: projects/ai2018/binary/algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-17 20:34:23.281520 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os from algos.weights import * from algos.config import NUM_CLASSES #from evaluate import load_class_weights def calc_loss(y, y_, weights, training=False): #y += 2 #print(y_, y, weights) #-----------deprciated seems per class learning rate decay do not improve if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: assert FLAGS.loss == 'cross' loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=tf.losses.Reduction.NONE) loss = melt.adjust_lrs(loss) loss = tf.reduce_mean(loss) #print('--------------weights', weights) # if weights == 1: # weights = tf.ones([FLAGS.num_learning_rate_weights], dtype=tf.float32) #weights = tf.expand_dims(weights * tf.get_collection('learning_rate_weights')[-1], 0) # FIXME weights actually is per example adjust not for classes.. should be of shape [batch_size] #loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights) else: if FLAGS.loss == 'cross': if not FLAGS.label_smoothing: loss = tf.losses.sparse_softmax_cross_entropy(y, y_, weights=weights) else: onehot_labels = tf.one_hot(y, NUM_CLASSES) print('--------------using label smoothing', FLAGS.label_smoothing) loss = tf.losses.softmax_cross_entropy(onehot_labels, y_, weights=weights, label_smoothing=FLAGS.label_smoothing) elif FLAGS.loss == 'focal': loss = melt.losses.focal_loss(y, y_) #----------depreciated below has bug.. if FLAGS.na_loss_ratio > 0.: y_ = tf.concat([y_[:,:,0:1], tf.reduce_sum(y_[:,:,1:], -1, keepdims=True)], -1) y_onehot = tf.one_hot(tf.to_int64(y > 0), 2) if no_weights(): bloss = tf.losses.sigmoid_cross_entropy(y_onehot, y_) else: bloss = tf.losses.sigmoid_cross_entropy(y_onehot, y_, reduction=tf.losses.Reduction.NONE) bloss = tf.reduce_sum(bloss * tf.expand_dims(weights, -1), -1) bloss = tf.reduce_mean(bloss) if FLAGS.na_loss_ratio_add: loss = loss + FLAGS.na_loss_ratio * bloss else: loss = (1 - FLAGS.na_loss_ratio) * loss + FLAGS.na_loss_ratio * bloss if FLAGS.earth_mover_loss_ratio > 0.: y_onehot = tf.one_hot(y, 4) earth_mover_loss = melt.losses.earth_mover_loss(y_onehot[:,:,1:], y_[:,:,1:]) loss = loss + FLAGS.earth_mover_loss_ratio * earth_mover_loss return loss # now consider simple rule level 0 loss + level 1 loss # not imporve, worse... def calc_hier_loss(y, y_, weights): binary_label = tf.to_int64(tf.equal(y, 0)) # sigmoid reduction by default is not None will return scalar and if set None will return result shape as label level0_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,0], weights=weights, reduction=tf.losses.Reduction.NONE) mask = tf.to_float(1 - binary_label) # softmax loss reduction by defualt is not None and will return scalar, set None will return shape as label level1_loss = tf.losses.sparse_softmax_cross_entropy(tf.maximum(y - 1, 0), y_[:,:,1:], weights=weights, reduction=tf.losses.Reduction.NONE) loss = level0_loss + level1_loss * mask loss = tf.reduce_mean(loss) return loss def calc_hier_neu_loss(y, y_, weights): binary_label = tf.to_int64(tf.equal(y, 0)) # sigmoid reduction by default is not None will return scalar and if set None will return result shape as label level0_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,0], weights=weights, reduction=tf.losses.Reduction.NONE) mask = tf.to_float(1 - binary_label) # softmax loss reduction by defualt is not None and will return scalar, set None will return shape as label level1_loss = tf.losses.sparse_softmax_cross_entropy(tf.maximum(y - 1, 0), y_[:,:,1:], weights=weights, reduction=tf.losses.Reduction.NONE) loss = level0_loss + level1_loss * mask # add neu binary cid = 2 binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) loss = loss + binary_loss loss = tf.reduce_mean(loss) return loss #now try to add neu binary loss, if imrove can try add all binary loss for na, neg,neu,pos def calc_add_binary_loss(y, y_, cids, weights): reduction = tf.losses.Reduction.SUM_BY_NONZERO_WEIGHTS if FLAGS.loss_combine_by_scalar else tf.losses.Reduction.NONE loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=reduction) for cid in cids: binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=reduction) loss = loss + binary_loss * FLAGS.other_loss_factor loss = tf.reduce_mean(loss) return loss def calc_binary_loss(y, y_, cid, weights): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights) return binary_loss def calc_regression_loss(y, y_, weights): y = y * 2 + 2 return tf.losses.mean_squared_error(y, y_, weights=weights) def calc_add_binaries_loss(y, y_, cid, weights): loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=tf.losses.Reduction.NONE) for cid in range(NUM_CLASSES): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) loss = loss + binary_loss * (1 / NUM_CLASSES) loss = tf.reduce_mean(loss) return loss def calc_binaries_only_loss(y, y_, cid, weights): loss = None for cid in range(NUM_CLASSES): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) if loss is None: loss = binary_loss else: loss = loss + binary_loss loss = tf.reduce_mean(loss) return loss def criterion(model, x, y, training=False): y_ = model(x, training=training) weights = get_weights(FLAGS.aspect, FLAGS.attr_index) # only need this if we have label -1 means to mask mask = y >= 0 weights = weights * tf.to_float(mask) y = y * tf.to_int64(mask) # if FLAGS.use_class_weights: # weights = load_class_weights() # print('--------------', weights) if FLAGS.loss_type == 'normal': return calc_loss(y, y_, weights, training) elif FLAGS.loss_type == 'binary': return tf.losses.sigmoid_cross_entropy(tf.to_int64(y[:,FLAGS.binary_class_index:FLAGS.binary_class_index + 1] > 0), y_, reduction=tf.losses.Reduction.NONE, weights=weights) elif FLAGS.loss_type == 'hier': # not improve deprecated return calc_hier_loss(y, y_, weights) elif FLAGS.loss_type == 'add_neu_binary': # neu cid is 2 return calc_add_binary_loss(y, y_, [2], weights) elif FLAGS.loss_type.startswith('add_binary_'): cids = [int(x) for x in FLAGS.loss_type.split('_')[-1].split(',')] return calc_add_binary_loss(y, y_, cids, weights) elif FLAGS.loss_type.startswith('binary_'): cid = int(FLAGS.loss_type.split('_')[-1]) return calc_binary_loss(y, y_, cid, weights) elif FLAGS.loss_type == 'regression': return calc_regression_loss(y, y_, weights) elif FLAGS.loss_type == 'add_binaries': return calc_add_binaries_loss(y, y_, weights) elif FLAGS.loss_type == 'binaries_only': return calc_binaries_only_loss(y, y_, weights) elif FLAGS.loss_type == 'hier_neu': return calc_hier_neu_loss(y, y_, weights) else: raise ValueError(f'Unsupported loss type{FLAGS.loss_type}') ================================================ FILE: projects/ai2018/binary/algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ptr-net.py # \author chenghuige # \date 2018-01-15 11:50:08.306272 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.weights import * import prepare.config import melt logging = melt.logging import gezi import numpy as np UNK_ID = 1 # code above is dpreciated juse use Models derived from ModelBase class ModelBase(melt.Model): def __init__(self, embedding=None, lm_model=False, use_text_encoder=True): super(ModelBase, self).__init__() self.num_units = FLAGS.rnn_hidden_size if FLAGS.encoder_type != 'convnet' else FLAGS.num_filters self.dropout_rate = 1 - FLAGS.keep_prob self.keep_prob = 1 - self.dropout_rate self.num_layers = FLAGS.num_layers config = { 'word': { 'vocab': FLAGS.vocab, 'num_layers': FLAGS.num_layers, 'hidden_size': FLAGS.rnn_hidden_size, 'emb_dim': FLAGS.emb_dim, 'embedding_file': FLAGS.word_embedding_file, 'trainable': FLAGS.finetune_word_embedding, 'num_finetune': FLAGS.num_finetune_words, }, 'char': { 'limit': FLAGS.char_limit, 'use_char_emb': FLAGS.use_char_emb, 'emb_dim': FLAGS.char_emb_dim, 'trainable': FLAGS.finetune_char_embedding, 'hidden_size': FLAGS.rnn_hidden_size, 'output_method': FLAGS.char_output_method, 'combiner': FLAGS.char_combiner, 'padding': FLAGS.char_padding, 'num_finetune': FLAGS.num_finetune_chars, }, 'pos': { 'emb_dim': FLAGS.tag_emb_dim }, 'ner': { 'emb_dim': FLAGS.tag_emb_dim }, 'encoder': FLAGS.encoder_type, 'dropout_rate': 1 - FLAGS.keep_prob, 'recurrent_dropout': FLAGS.recurrent_dropout, 'cell': FLAGS.cell, 'rnn_padding': FLAGS.rnn_padding, 'rnn_no_padding': FLAGS.rnn_no_padding, 'rnn_train_init_state': FLAGS.rnn_train_init_state, 'concat_layers': FLAGS.concat_layers, } self.lm_model = None if use_text_encoder: if FLAGS.pretrain_encoder == 'bilm': self.encode = wenzheng.TextEncoder(config, embedding, use_char=FLAGS.use_char, use_char_emb=FLAGS.use_char_emb, use_pos=FLAGS.use_pos, use_ner=FLAGS.use_ner, lm_model=lm_model) else: self.encode = wenzheng.BertEncoder(embedding) self.lm_model = self.encode.lm_model if not self.lm_model: # hier not improve self.hier_encode = melt.layers.HierEncode() if FLAGS.use_hier_encode else None # top-k best, max,att can benfit ensemble(better then max, worse then topk-3), topk,att now best with 2layers logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) #self.pooling = keras.layers.GlobalMaxPool1D() # mlp not help much! if FLAGS.mlp_ratio != 0: self.dropout = keras.layers.Dropout(0.3) if FLAGS.mlp_ratio < 0: # here activation hurt perf! #self.dense = keras.layers.Dense(NUM_ATTRIBUTES * NUM_CLASSES * 2, activation=tf.nn.relu) self.dense = keras.layers.Dense(NUM_ATTRIBUTES * NUM_CLASSES * 2) elif FLAGS.mlp_ratio <= 1: self.dense = melt.layers.DynamicDense(FLAGS.mlp_ratio) else: self.dense = kears.layers.Dense(int(FLAGS.mlp_ratio)) else: self.dense = None if FLAGS.use_len: self.len_embedding = wenzheng.Embedding(3000, 32) self.num_classes = NUM_CLASSES if FLAGS.binary_class_index is None else 1 if FLAGS.loss_type == 'regression': self.num_classes = 1 self.logits = keras.layers.Dense(NUM_ATTRIBUTES * self.num_classes, activation=None) def unk_aug(self, x, x_mask=None, training=False): """ randomly make 10% words as unk TODO this works, but should this be rmoved and put it to Dataset so can share for both pyt and tf """ # if not self.training or not FLAGS.unk_aug or melt.epoch() < FLAGS.unk_aug_start_epoch: # return x if not training or not FLAGS.unk_aug: return x def aug(x, x_mask): # print('---------------do unk aug') # print('ori_x....', x) if x_mask is None: x_mask = x > 0 x_mask = tf.to_int64(x_mask) ratio = tf.random_uniform([1,], 0, FLAGS.unk_aug_max_ratio) mask = tf.random_uniform([melt.get_shape(x, 0), melt.get_shape(x, 1)]) > ratio mask = tf.to_int64(mask) rmask = FLAGS.unk_id * (1 - mask) x = (x * mask + rmask) * x_mask #print('aug_x....', x) return x # print('----------------', FLAGS.unk_aug_start_step) # print(tf.constant(FLAGS.unk_aug_start_step)) # print(tf.train.get_global_step()) # print(tf.train.get_global_step() < tf.constant(FLAGS.unk_aug_start_step)) # well, below eager ok, but graph mode, get_global_step() is None #return tf.cond(tf.train.get_global_step() < tf.constant(FLAGS.unk_aug_start_step), lambda: x, lambda: aug(x, x_mask)) return tf.cond(tf.train.get_or_create_global_step() < tf.constant(FLAGS.unk_aug_start_step, dtype=tf.int64), lambda: x, lambda: aug(x, x_mask)) class BiLanguageModel(ModelBase): def __init__(self, embedding=None, lm_model=True): super(BiLanguageModel, self).__init__(embedding, lm_model=True) def call(self, input, training=False): return self.encode(input, training=False) class RNet(ModelBase): def __init__(self, embedding=None, lm_model=False): super(RNet, self).__init__(embedding, lm_model=lm_model) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob if FLAGS.att_dropout else 1., combiner=FLAGS.att_combiner) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) #self.multiplier = 2 if self.encode.bidirectional else 1 if FLAGS.use_self_match: self.match_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob if FLAGS.att_dropout else 1., combiner=FLAGS.att_combiner) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) ori_c_len = c_len if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) if self.lm_model: return x # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) if FLAGS.use_label_att: label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) if FLAGS.use_label_rnn: label_seq = self.label_encode(label_seq, tf.ones([batch_size], tf.int32) * tf.cast(melt.get_shape(label_emb, 1), tf.int32)) x = self.att_dot_attention(x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) if not FLAGS.simple_label_att: x = self.att_encode(x, c_len, training=training) # put self match at last, selfmatch help a bit if FLAGS.use_self_match: x = self.match_dot_attention(x, x, mask=c_mask, training=training) x = self.match_encode(x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) if FLAGS.use_len: len_emb = self.len_embedding(ori_c_len) x = tf.concat([x, len_emb], -1) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) # # No help match # if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: # x = melt.adjust_lrs(x) if FLAGS.loss_type == 'regression': x = tf.nn.sigmoid(x) * 10 else: x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x # same as Model but for match attention using SeqAttn class RNetV2(RNet): def __init__(self, embedding=None, lm_model=False): super(RNetV2, self).__init__(embedding, lm_model=lm_model) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.multiplier = 2 if self.encode.bidirectional else 1 # hier a bit worse self.hier_encode = melt.layers.HierEncode() if FLAGS.use_hier_encode else None if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) if self.lm_model: return x # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) if FLAGS.use_label_att: label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) if FLAGS.use_label_rnn: label_seq = self.label_encode(label_seq, tf.ones([batch_size], tf.int32) * tf.cast(melt.get_shape(label_emb, 1), tf.int32)) x = self.att_dot_attention(x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) if not FLAGS.simple_label_att: x = self.att_encode(x, c_len, training=training) # put self match at last, selfmatch help a bit if FLAGS.use_self_match: x = self.match_dot_attention(x, mask=c_mask, training=training) x = self.match_encode(x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) # # No help match # if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: # x = melt.adjust_lrs(x) if FLAGS.loss_type == 'regression': x = tf.nn.sigmoid(x) * 10 else: x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x # same as RNetV2 but is gate + sfu class RNetV3(RNet): def __init__(self, embedding=None): super(RNetV3, self).__init__(embedding) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner='gate') #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner='sfu', identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) #same as RNetV3 but all use sfu and since dot attention with sfu not good, change # V4 is bad , seems for label attention can only use gate class RNetV4(RNet): def __init__(self, embedding=None): super(RNetV4, self).__init__(embedding) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.melt.layers.SeqAttnMatch(combiner='sfu', identity=True, keep_prob=self.keep_prob) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner='sfu', identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) #same as ModelV2 but this is pytorch Mreader like attention(light attention) class MReader(ModelBase): def __init__(self, embedding=None): super(MReader, self).__init__() #same input dim then outpu dim , if concat will * num_layers assert not FLAGS.concat_layers if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES * NUM_ATTRIBUTES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): self.att_dot_attentions.append(melt.layers.melt.layers.SeqAttnMatch(combiner=FLAGS.att_combiner, identity=True)) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) # yes just using label emb.. label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) label_seq = self.label_encode(label_seq, tf.ones([batch_size], dtype=tf.int64) * self.label_emb_height, training=training) for i in range(FLAGS.hop): x = self.att_dot_attentions[i](x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) x = self.att_encodes[i](x, c_len, training=training) x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) #x = self.pooling(x) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x #--------------BERT! # using bert transformer from third.bert import modeling class Transformer(ModelBase): def __init__(self, embedding=None): super(Transformer, self).__init__(embedding, lm_model=False, use_text_encoder=False) self.init_checkpoint = None if FLAGS.bert_dir: bert_dir = FLAGS.bert_dir bert_config_file = f'{bert_dir}/bert_config.json' bert_config = modeling.BertConfig.from_json_file(bert_config_file) self.init_checkpoint= f'{bert_dir}/bert_model.ckpt' elif FLAGS.bert_config_file: bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) else: bert_config = { "attention_probs_dropout_prob": 0.1, "directionality": "bidi", "hidden_act": "gelu", "hidden_dropout_prob": 0.1, "hidden_size": 768, "initializer_range": 0.02, "intermediate_size": 3072, "max_position_embeddings": 512, "num_attention_heads": 12, "num_hidden_layers": 12, "pooler_fc_size": 768, "pooler_num_attention_heads": 12, "pooler_num_fc_layers": 3, "pooler_size_per_head": 128, "pooler_type": "first_token_transform", "type_vocab_size": 2, "vocab_size": gezi.Vocabulary(FLAGS.vocab).size() } bert_config = modeling.BertConfig.from_dict(bert_config) bert_config.attention_probs_dropout_prob = FLAGS.bert_dropout bert_config.hidden_dropout_prob = FLAGS.bert_dropout bert_config.num_hidden_layers = FLAGS.bert_num_layers bert_config.num_attention_heads = FLAGS.bert_num_heads logging.info('bert_config\n', bert_config.to_json_string()) self.bert_config = bert_config if FLAGS.transformer_add_rnn: self.rnn_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) def restore(self): tvars = tf.trainable_variables() (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, self.init_checkpoint) tf.train.init_from_checkpoint(self.init_checkpoint, assignment_map) logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) def call(self, input, training=False): self.step += 1 x = input['content'] x = self.unk_aug(x, training=training) batch_size = melt.get_shape(x, 0) # TODO move to __init__ model = modeling.BertModel( config=self.bert_config, is_training=training, input_ids=x, use_one_hot_embeddings=FLAGS.use_tpu) if self.step == 0 and self.init_checkpoint: self.restore() c_len = melt.length(x) if FLAGS.encoder_output_method == 'last': x = model.get_pooled_output() else: x = model.get_sequence_output() logging.info('---------------bert_lr_ratio', FLAGS.bert_lr_ratio) x = x * FLAGS.bert_lr_ratio + tf.stop_gradient(x) * (1 - FLAGS.bert_lr_ratio) if FLAGS.transformer_add_rnn: assert FLAGS.encoder_output_method != 'last' x = self.rnn_encode(x, c_len) if FLAGS.encoder_output_method != 'last': x = self.pooling(x, c_len) x2 = model.get_pooled_output() x = tf.concat([x, x2], -1) x = self.logits(x) x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, NUM_CLASSES]) return x ================================================ FILE: projects/ai2018/binary/algos/weights.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file weights.py # \author chenghuige # \date 2018-09-17 19:45:07.901500 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os import numpy as np from algos.config import NUM_CLASSES, NUM_ATTRIBUTES, ATTRIBUTES, ATTRIBUTES_MAP import melt logging = melt.logging def no_weights(): return FLAGS.aspect == 'all' and FLAGS.attr_index is None def get_pos(aspect): start = None end = None index = None if '-' in aspect: aspect, index = aspect.split('-') index = int(index) if aspect == 'location': start = 0 end = 3 elif aspect == 'service': start = 3 end = 7 elif aspect == 'price': start = 7 end = 10 elif aspect == 'environment': start = 10 end = 14 elif aspect == 'dish': start = 14 end = 18 elif aspect == 'others': start = 18 end = 20 if index is not None: start += index end = start + 1 return start, end def parse_weights(): if ':' in FLAGS.weights: weights = np.ones([NUM_ATTRIBUTES]) * FLAGS.init_weight for item in FLAGS.weights.split(','): aspect, val = item.split(':') val = float(val) start, end = get_pos(aspect) if start is None: assert aspect in ATTRIBUTES_MAP weights[ATTRIBUTES_MAP[aspect]] = val else: for i in range(start, end): weights[i] = val else: weights = list(map(float, FLAGS.weights.split(','))) assert len(weights) == NUM_ATTRIBUTES return weights def get_weights(aspect, attr_index=None): if FLAGS.weights: weights = parse_weights() else: weights = np.zeros([NUM_ATTRIBUTES]) if no_weights(): return 1. if attr_index is not None: weights[attr_index] = 1. start, end = get_pos(aspect) if start is None: assert aspect in ATTRIBUTES_MAP weights[ATTRIBUTES_MAP[aspect]] = 1. else: for i in range(start, end): weights[i] = 1. logging.info('weights:', weights) logging.info('weights:', list(zip(ATTRIBUTES, weights))) return tf.expand_dims(tf.constant(weights, dtype=tf.float32), 0) ================================================ FILE: projects/ai2018/binary/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from collections import namedtuple import gezi import melt logging = melt.logging from wenzheng.utils import vocabulary import prepare.config class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) def parser(self, example): """Parses a single tf.Example into image and label tensors.""" features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'content_str': tf.FixedLenFeature([], tf.string), 'content': tf.VarLenFeature(tf.int64), 'char': tf.VarLenFeature(tf.int64), 'label': tf.FixedLenFeature([], tf.int64), 'source': tf.FixedLenFeature([], tf.string), } features = tf.parse_single_example(example, features=features_dict) content = features['content'] content = melt.sparse_tensor_to_dense(content) features['content'] = content label = features['label'] #if FLAGS.use_char: chars = features['char'] chars = melt.sparse_tensor_to_dense(chars) # if FLAGS.char_min_count: # chars = melt.greater_then_set(chars, FLAGS.char_min_count, UNK_ID) features['char'] = chars x = features y = label return x, y ================================================ FILE: projects/ai2018/binary/evaluate.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('info_path', None, '') flags.DEFINE_bool('auc_need_softmax', True, '') flags.DEFINE_string('class_weights_path', './mount/temp/ai2018/sentiment/class_weights.npy', '') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_bool('show_detail', False, '') flags.DEFINE_string('i', '.', '') flags.DEFINE_string('metric_name', 'adjusted_f1/mean', '') flags.DEFINE_float('min_thre', 0., '0.705') flags.DEFINE_integer('len_thre', 256, '') flags.DEFINE_float('max_thre', 1000., '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') #from sklearn.utils.extmath import softmax from sklearn.metrics import log_loss, roc_auc_score import numpy as np import glob import gezi import melt logging = melt.logging from wenzheng.utils import ids2text import pickle import pandas as pd import traceback #since we have same ids... must use valid and test 2 infos valid_infos = {} test_infos = {} decay = None wnames = [] def init(): global valid_infos, test_infos with open(FLAGS.info_path, 'rb') as f: valid_infos = pickle.load(f) if FLAGS.test_input: with open(FLAGS.info_path.replace('.pkl', '.test.pkl'), 'rb') as f: test_infos = pickle.load(f) ids2text.init() def calc_loss(labels, predicts): """ softmax loss, mean loss and per attr loss """ names = ['loss'] loss = log_loss(labels, predicts) vals = [loss] return vals, names # TODO understand macro micro.. def calc_auc(labels, predicts): """ per attr auc """ names = ['auc'] auc = roc_auc_score(labels, predicts) vals = [auc] return vals, names def evaluate(labels, predicts): vals, names = calc_auc(labels, predicts) vals_loss, names_loss = calc_loss(labels, predicts) vals += vals_loss names += names_loss return vals, names ================================================ FILE: projects/ai2018/binary/prepare/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-10-17 14:44:21.024368 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('use_char', True, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_integer('word_limit', 3000, '') flags.DEFINE_integer('content_limit_', None, 'used for bert 512') #flags.DEFINE_bool('use_pos', False, '') ================================================ FILE: projects/ai2018/binary/prepare/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/binary/valid.txt', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/binary/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', None, '10 or 5?') flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', True, '') flags.DEFINE_bool('augument', False, '') flags.DEFINE_string('mode', None, '') flags.DEFINE_string('mode_', None, '') flags.DEFINE_bool('ignore_start_end', False, 'If you have not remove start and end quota before,you can filter here') flags.DEFINE_bool('add_start_end_', True, '') flags.DEFINE_bool('has_position', False, '') flags.DEFINE_bool('fixed_vocab', False, '') flags.DEFINE_string('start_mark', '', '') flags.DEFINE_string('end_mark', '', '') flags.DEFINE_string('unk_word', '', '') flags.DEFINE_bool('word_only', False, '') flags.DEFINE_bool('use_soft_label_', False, '') flags.DEFINE_bool('is_soft_label', False, '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi #assert gezi.env_has('JIEBA_POS') from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None vocab = None char_vocab = None pos_vocab = None ner_vocab = None seg_result = None pos_result = None ner_result = None def get_mode(path): mode = 'train' if 'train' in path: mode ='train' elif 'valid' in path: mode = 'valid' elif 'test' in path: mode = 'test' elif '.pm' in path: mode = 'pm' elif 'trans' in path: mode = 'trans' elif 'deform' in path: mode = 'deform' elif 'canyin' in path: mode = 'canyin' elif 'dianping' in path: mode = 'dianping' elif 'ensemble.infer.debug.csv' in path: mode = 'test' if FLAGS.augument: mode = 'aug.' + mode if FLAGS.mode: mode = FLAGS.mode return mode def build_features(index): mode = get_mode(FLAGS.input) start_index = FLAGS.start_index out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ ## TODO FIXME whty here still None ? FLAGS.num_records has bee modified before in main as 7 ... #print('---------', num_records, FLAGS.num_records_) if not num_records: if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: num_records = 1 else: num_records = 1 #print('------------------', num_records, FLAGS.num_records_) start, end = gezi.get_fold(total, num_records, index) print('total', total, 'infile', FLAGS.input, 'out_file', out_file, 'num_records', num_records, 'start', start, 'end', end) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in tqdm(range(start, end), ascii=True): try: #row = df.iloc[i] row = df[i] id = str(row[0]) words = row[-1].split('\t') content = row[2] content_ori = content content = filter.filter(content) label = int(row[1]) content_ids = [vocab.id(x) for x in words] if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) if np.sum(char_ids) == 0: print('------------------------bad id', id) print(content_ids) print(words) exit(0) else: char_ids = [0] feature = { 'id': melt.bytes_feature(id), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content_ori), 'char': melt.int64_feature(char_ids), 'source': melt.bytes_feature(mode), } feature['label'] = melt.int64_feature(label) # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): mode = get_mode(FLAGS.input) global vocab, char_vocab vocab = gezi.Vocabulary(FLAGS.vocab_, fixed=FLAGS.fixed_vocab, unk_word=FLAGS.unk_word) char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) print('char vocab size:', char_vocab.size()) mode_ = 'train' if 'valid' in FLAGS.input: mode_ = 'valid' elif 'test' in FLAGS.input: mode_ = 'test' else: assert 'train' in FLAGS.input if FLAGS.augument: mode_ = 'aug.' + mode_ if FLAGS.mode_: mode_ = FLAGS.mode_ global df df = [] for line in open(FLAGS.input): df.append(line.strip().split('\t', 3)) pool = multiprocessing.Pool() if not FLAGS.num_records_: if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: FLAGS.num_records_ = 1 else: FLAGS.num_records_ = 1 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() # for i in range(FLAGS.num_records_): # build_features(i) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/binary/prepare/run.sh ================================================ python ./gen-records.py python ./gen-records.py --input ./mount/data/ai2018/binary/train.txt ================================================ FILE: projects/ai2018/binary/prepare/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('feed_single', False, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text, preprocess=True, return_words=False): wenzheng.utils.text2ids.init() if preprocess: text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single=FLAGS.feed_single, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=False, pad=False, return_words=return_words) ================================================ FILE: projects/ai2018/binary/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file inference.py # \author chenghuige # \date 2018-02-05 20:05:25.123740 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/temp/ai2018/binary/tfrecord/valid/*record,', '') flags.DEFINE_integer('batch_size_', 512, '') flags.DEFINE_string('type', 'debug', '') flags.DEFINE_string('base', './mount/temp/ai2018/binary/tfrecord/', '') #flags.DEFINE_integer('unk_id', 1, '') #flags.DEFINE_integer('fold', None, '') flags.DEFINE_bool('dump_valid', True, '') flags.DEFINE_bool('dump_test', False, '') flags.DEFINE_integer('unk_id', 1, 'bert unk id is 100') import tensorflow as tf tf.enable_eager_execution() import sys, os from sklearn import metrics import pandas as pd import numpy as np import gezi import pickle from wenzheng.utils import ids2text import melt logging = melt.logging from dataset import Dataset from tqdm import tqdm # TODO by default save all ? so do not need to change the code ? # _asdict() https://stackoverflow.com/questions/26180528/python-named-tuple-to-dictionary # err... valid and test data share same id... def deal(dataset, infos): for x, _ in tqdm(dataset, ascii=True): for key in x: x[key] = x[key].numpy() if type(x[key][0]) == bytes: x[key] = gezi.decode(x[key]) ids = x['id'] for j in range(len(ids)): infos[ids[j]] = {} for key in x: infos[ids[j]][key] = x[key][j] def main(_): base = FLAGS.base logging.set_logging_path('./mount/tmp/') vocab_path = f'{base}/vocab.txt' ids2text.init(vocab_path) FLAGS.vocab = f'{base}/vocab.txt' # FLAGS.length_index = 2 # FLAGS.buckets = '100,400' # FLAGS.batch_sizes = '64,64,32' input_ = FLAGS.input if FLAGS.type == 'test': input_ = input_.replace('valid', 'test') inputs = gezi.list_files(input_) inputs.sort() if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] if FLAGS.type == 'debug': print('type', FLAGS.type, 'inputs', inputs, file=sys.stderr) dataset = Dataset('valid') dataset = dataset.make_batch(FLAGS.batch_size_, inputs) print('dataset', dataset) timer = gezi.Timer('read record') for i, (x, y) in enumerate(dataset): # if i % 10 == 1: # print(x['id']) # print(x['content'][0]) # print(ids2text.ids2text(x['content'][0], sep='|')) # print(x['content']) # print(type(x['id'].numpy()[0]) == bytes) # break x['id'] = gezi.decode(x['id'].numpy()) x['content_str'] = gezi.decode(x['content_str'].numpy()) for j, id in enumerate(x['id']): if id == '573': print(id, x['content_str'][j]) elif FLAGS.type == 'dump': valid_infos = {} test_infos = {} # TODO notice train and valid also share ids.. so valid only save 0 is ok... # 120000 doc but first 15000 train duplicate id with valid so only save valid result for those ids currently if FLAGS.dump_valid: inputs = gezi.list_files(f'{base}/valid/*record') dataset = Dataset('valid') dataset = dataset.make_batch(1, inputs) deal(dataset, valid_infos) print('after valid', len(valid_infos)) for key in valid_infos: print(valid_infos[key]) print(ids2text.ids2text(valid_infos[key]['content'])) break ofile = f'{base}/info.pkl' with open(ofile, 'wb') as out: pickle.dump(valid_infos, out) del valid_infos if FLAGS.dump_test: inputs = gezi.list_files(f'{base}/test/*record') dataset = Dataset('test') dataset = dataset.make_batch(1, inputs) deal(dataset, test_infos) print('after test', len(test_infos)) ofile = ofile.replace('.pkl', '.test.pkl') with open(ofile, 'wb') as out: pickle.dump(test_infos, out) for key in test_infos: print(test_infos[key]) print(ids2text.ids2text(test_infos[key]['content'])) break elif FLAGS.type == 'show_info': valid_infos = pickle.load(open(f'{base}/info.pkl', 'rb')) lens = [len(valid_infos[key]['content']) for key in valid_infos] unks = [list(valid_infos[key]['content']).count(FLAGS.unk_id) for key in valid_infos] print('num unks per doc:', sum(unks) / len(valid_infos)) print('num doc with unk ratio:', len([x for x in unks if x != 0]) / len(unks)) print('un unk tokens ratio:', sum(unks) / sum(lens)) print('len max:', np.max(lens)) print('len min:', np.min(lens)) print('len mean:', np.mean(lens)) print('num docs:', len(valid_infos)) num_show = 0 for key in valid_infos: if list(valid_infos[key]['content']).count(FLAGS.unk_id) > 0: print(valid_infos[key]) print(ids2text.ids2text(valid_infos[key]['content'])) num_show += 1 if num_show > 5: break del valid_infos print('--------------for test info:') test_infos = pickle.load(open(f'{base}/info.test.pkl', 'rb')) lens = [len(test_infos[key]['content']) for key in test_infos] unks = [list(test_infos[key]['content']).count(FLAGS.unk_id) for key in test_infos] print('num unks per doc:', sum(unks) / len(test_infos)) print('num doc with unk ratio:', len([x for x in unks if x != 0]) / len(test_infos)) print('un unk tokens ratio:', sum(unks) / sum(lens)) print('len max:', np.max(lens)) print('len min:', np.min(lens)) print('len mean:', np.mean(lens)) print('num docs:', len(test_infos)) num_show = 0 for key in test_infos: if list(test_infos[key]['content']).count(FLAGS.unk_id) > 0: print(test_infos[key]) print(ids2text.ids2text(test_infos[key]['content'])) num_show += 1 if num_show > 5: break else: raise ValueError(FLAGS.type) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/binary/torch-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback import lele from wenzheng.utils import input_flags from algos import config from torch_algos.loss import Criterion import torch_algos.model as base from dataset import Dataset import evaluate as ev def main(_): FLAGS.torch = True melt.apps.init() ev.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] #model = getattr(base, FLAGS.model)(embedding) model = getattr(base, 'MReader')(embedding) logging.info('model\n', model) if FLAGS.lm_path: _, updated_params = lele.load(model, FLAGS.lm_path) assert updated_params, FLAGS.lm_path train = melt.apps.get_train() criterion = Criterion() train(Dataset, model, criterion.forward, eval_fn=ev.evaluate) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/binary/torch_algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/binary/torch_algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-17 20:34:23.281520 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import numpy as np import lele import torch from torch import nn from torch.nn import functional as F class Criterion(object): def __init__(self): self.loss_fn = nn.BCEWithLogitsLoss() def forward(self, model, x, y, training=False): y_ = model(x) y_ = y_.squeeze(1) y = y.float() loss = self.loss_fn(y_, y) return loss ================================================ FILE: projects/ai2018/binary/torch_algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-09-30 10:25:11.024133 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F import wenzheng from wenzheng.utils import vocabulary import melt logging = melt.logging import numpy as np import lele layers = lele.layers import gezi import os class ModelBase(nn.Module): def __init__(self, embedding=None, lm_model=False): super(ModelBase, self).__init__() self.num_units = FLAGS.rnn_hidden_size self.dropout_rate = 1 - FLAGS.keep_prob config = { 'word': { 'vocab': FLAGS.vocab, 'num_layers': FLAGS.num_layers, 'hidden_size': FLAGS.rnn_hidden_size, 'emb_dim': FLAGS.emb_dim, 'embedding_file': FLAGS.word_embedding_file, 'trainable': FLAGS.finetune_word_embedding, 'num_finetune': FLAGS.num_finetune_words, }, 'char': { 'limit': FLAGS.char_limit, 'use_char_emb': FLAGS.use_char_emb, 'emb_dim': FLAGS.char_emb_dim, 'trainable': FLAGS.finetune_char_embedding, 'hidden_size': FLAGS.rnn_hidden_size, 'output_method': FLAGS.char_output_method, 'combiner': FLAGS.char_combiner, 'padding': FLAGS.char_padding, 'num_finetune': FLAGS.num_finetune_chars, }, 'pos': { 'emb_dim': FLAGS.tag_emb_dim }, 'ner': { 'emb_dim': FLAGS.tag_emb_dim }, 'encoder': FLAGS.encoder_type, 'dropout_rate': 1 - FLAGS.keep_prob, 'recurrent_dropout': FLAGS.recurrent_dropout, 'cell': FLAGS.cell, 'rnn_padding': FLAGS.rnn_padding, 'rnn_no_padding': FLAGS.rnn_no_padding, 'concat_layers': FLAGS.concat_layers, } self.encode = wenzheng.pyt.TextEncoder(config, embedding, use_char=FLAGS.use_char, use_char_emb=FLAGS.use_char_emb, use_pos=FLAGS.use_pos, use_ner=FLAGS.use_ner, lm_model=lm_model) self.lm_model = self.encode.lm_model if not self.lm_model: doc_hidden_size = self.encode.output_size if FLAGS.share_pooling: self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size=doc_hidden_size, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) else: self.pooling = lele.layers.Poolings( FLAGS.encoder_output_method, input_size=doc_hidden_size, num_poolings=NUM_ATTRIBUTES, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) # input dim not as convinient as tf.. pre_logits_dim = self.pooling.output_size self.logits = nn.Linear(pre_logits_dim, 1) def unk_aug(self, x, x_mask=None): """ randomly make 10% words as unk TODO this works, but should this be rmoved and put it to Dataset so can share for both pyt and tf """ if not self.training or not FLAGS.unk_aug or melt.epoch() < FLAGS.unk_aug_start_epoch: return x if x_mask is None: x_mask = x > 0 x_mask = x_mask.long() ratio = np.random.uniform(0, FLAGS.unk_aug_max_ratio) mask = torch.cuda.FloatTensor(x.size(0), x.size(1)).uniform_() > ratio mask = mask.long() rmask = FLAGS.unk_id * (1 - mask) x = (x * mask + rmask) * x_mask return x class BiLanguageModel(ModelBase): def __init__(self, embedding=None): super(BiLanguageModel, self).__init__(embedding, lm_model=True) # Model is like RNet! if you use label att and self match # if not just simple gru model class RNet(ModelBase): def __init__(self, embedding=None): super(RNet, self).__init__(embedding) Rnn = lele.layers.StackedBRNN doc_hidden_size = self.encode.output_size if FLAGS.use_label_att: self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = nn.Embedding(self.label_emb_height, FLAGS.emb_dim) self.att_dot_attentions = nn.ModuleList() self.att_encodes = nn.ModuleList() for i in range(FLAGS.label_hop): self.att_dot_attentions.append(lele.layers.DotAttention(input_size=doc_hidden_size, input_size2=FLAGS.emb_dim, hidden=self.num_units, dropout_rate=self.dropout_rate, combiner=FLAGS.att_combiner)) self.att_encodes.append(Rnn( input_size=self.att_dot_attentions[-1].output_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, )) if FLAGS.use_self_match: self.match_dot_attention = lele.layers.DotAttention(input_size=doc_hidden_size, input_size2=doc_hidden_size, hidden=self.num_units, dropout_rate=self.dropout_rate, combiner=FLAGS.att_combiner) self.match_encode = Rnn( input_size=self.match_dot_attention.output_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) def forward(self, input, training=False): x = input['content'] #print(x.shape) x_mask = x.eq(0) batch_size = x.size(0) x = self.unk_aug(x, x_mask) if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) x = self.encode(input, x_mask, training=training) if FLAGS.use_label_att: label_emb = self.label_embedding.weight label_seq = lele.tile(label_emb.unsqueeze(0), 0, batch_size) # TODO label rnn for i in range(FLAGS.label_hop): x = self.att_dot_attentions[i](x, label_seq, torch.zeros(batch_size, self.label_emb_height).byte().cuda()) x = self.att_encodes[i](x, x_mask) if FLAGS.use_self_match: x = self.match_dot_attention(x, x, x_mask) x = self.match_encode(x, x_mask) x = self.pooling(x, x_mask) x = self.logits(x) return x # MReader with hop==1 can be viewed as rnet also # NOTICE mainly use this one # TODO word and char encoder can merge to one Encoder handle inputs with word and char class MReader(ModelBase): def __init__(self, embedding=None): super(MReader, self).__init__(embedding) Rnn = lele.layers.StackedBRNN doc_hidden_size = self.encode.output_size if FLAGS.use_label_att: self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = nn.Embedding(self.label_emb_height, FLAGS.emb_dim) # here linear better or another rnn is better ? if not FLAGS.use_label_rnn: self.label_forward = nn.Linear(FLAGS.emb_dim, doc_hidden_size) else: self.label_forward = Rnn( input_size=emb_dim, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(FLAGS.hop): # interactive aligner if FLAGS.use_label_att: self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner if FLAGS.use_self_match: self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( Rnn( input_size=doc_hidden_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) ) def forward(self, input, training=False): #print('------------', input['source']) #print(input['id']) x = input['content'] #print(x) #print(x.shape) x_mask = x.eq(0) batch_size = x.size(0) max_c_len = x.size(1) x = self.unk_aug(x, x_mask) if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) x = self.encode(input, x_mask, training=training) if FLAGS.use_label_att: label_emb = self.label_embedding.weight label_seq = lele.tile(label_emb.unsqueeze(0), 0, batch_size) x2_mask = torch.zeros(batch_size, self.label_emb_height).byte().cuda() if not FLAGS.use_label_rnn: label_seq = self.label_forward(label_seq) else: label_seq = self.label_forward(label_seq, x2_mask) # Align and aggregate c_check = x q = label_seq else: c_check = x #print(c_check.shape, q.shape, x2_mask.shape) for i in range(FLAGS.hop): if FLAGS.use_label_att: q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) else: c_bar = c_check if FLAGS.use_self_match: c_tilde = self.self_aligners[i].forward(c_bar, x_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x_mask) x = c_check x = self.pooling(x, x_mask) x = self.logits(x) return x # class Model(ModelBase): # def forward(self, input, training=False): # x = input['content'] # x_mask = x.eq(0) # batch_size = x.size(0) # x = self.encode(input, x_mask, training=training) # x = self.pooling(x, x_mask) # x = self.logits(x) # x = x.view([-1, NUM_ATTRIBUTES, self.num_classes]) # return x ================================================ FILE: projects/ai2018/binary/train/train.sh ================================================ base=./mount if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/binary/tfrecord/ model_dir=$base/temp/ai2018/binary/model/base/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/word.jieba.ft.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/README.md ================================================ # generate tfrecord go to prepare, sh run.sh gen valid/test/train # dump infos.pkl python ./read-records.py --type dump if you want just to verify records, python ./read-records.py --type=any.. other then dump # training python ./train.py # train using graph EAGER=1 python ./train.py # train using eager mode ================================================ FILE: projects/ai2018/reader/__init__.py ================================================ ================================================ FILE: projects/ai2018/reader/algos/README.md ================================================ ./baseline.py simple rnn based with query + passage one rnn encoding ./qcatt.py query passage separately encode and interact using attention same as rnet without using self match attention ./rnet.py query passage separately encode and interact using attention then add self match attention(support gate combine and sfu combine) ./m_reader.py same as rnet but can have multi hop attention steps ================================================ FILE: projects/ai2018/reader/algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/reader/algos/baseline.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file baseline.py # \author chenghuige # \date 2018-09-28 15:16:36.730041 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import melt logging = melt.logging class Model(melt.Model): def __init__(self): super(Model, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() ## adadelta adagrad will need cpu, so just use adam.. #with tf.device('/cpu:0'): self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob self.encode = wenzheng.Encoder(FLAGS.encoder_type) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES) self.logits2 = keras.layers.Dense(NUM_CLASSES) def call(self, input, training=False): x = input['rcontent'] if FLAGS.rcontent else input['content'] #print(x.shape) batch_size = melt.get_shape(x, 0) length = melt.length(x) #with tf.device('/cpu:0'): x = self.embedding(x) x = self.encode(x, length, training=training) # must mask pooling when eval ? but seems much worse result #if not FLAGS.mask_pooling and training: if not FLAGS.mask_pooling: length = None x = self.pooling(x, length) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) x = tf.cond(tf.cast(input['type'] == 0, tf.bool), lambda: (x1 + x2) / 2., lambda: x2) return x class Model2(melt.Model): """ same as Model but with bi encode separately for passage and query """ def __init__(self): super(Model2, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() ## adadelta adagrad will need cpu, so just use adam.. #with tf.device('/cpu:0'): self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob self.encode = melt.layers.CudnnRnn2(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) self.pooling = melt.layers.MaxPooling2() #self.pooling = keras.layers.GlobalMaxPool1D() self.logits = keras.layers.Dense(NUM_CLASSES, activation=None) self.logits2 = keras.layers.Dense(NUM_CLASSES, activation=None) def call(self, input, training=False): x1 = input['query'] x2 = input['passage'] length1 = melt.length(x1) length2 = melt.length(x2) #with tf.device('/cpu:0'): x1 = self.embedding(x1) x2 = self.embedding(x2) x = x1 batch_size = melt.get_shape(x1, 0) num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] #print('----------------length', tf.reduce_max(length), inputs.comment.shape) mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] x = self.encode(x1, length1, x2, length2, mask_fws=mask_fws, mask_bws=mask_bws) x = self.pooling(x, length1, length2) #x = self.pooling(x) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) x = tf.cond(tf.cast(input['type'] == 0, tf.bool), lambda: (x1 + x2) / 2., lambda: x2) return x ================================================ FILE: projects/ai2018/reader/algos/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-02-16 19:12:02.066189 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS CLASSES = ['neg', 'pos', 'na'] NUM_CLASSES = 3 flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_bool('use_char', False, '') flags.DEFINE_string('model', None, '') flags.DEFINE_bool('use_type', False, '') flags.DEFINE_bool('use_type_emb', False, '') flags.DEFINE_bool('use_type_rnn', False, '') flags.DEFINE_integer('type_emb_dim', 100, '') flags.DEFINE_bool('rcontent', False, '') flags.DEFINE_bool('split_type', False, '') flags.DEFINE_string('att_type', 'p2q', '') flags.DEFINE_string('att_combiner', 'gate', '') flags.DEFINE_string('att_activation', 'relu', '') flags.DEFINE_integer('unk_vocab_size', None, 'none means not to use, and if use can set like 10000') flags.DEFINE_bool('finetune_unk_vocab', False, '') flags.DEFINE_bool('type1_only', False, '') flags.DEFINE_bool('type0_only', False, '') flags.DEFINE_float('type1_weight', None, '') flags.DEFINE_integer('type1_count', None, '') flags.DEFINE_bool('use_qc_att', True, '') flags.DEFINE_bool('use_bidaf_att', False, '') flags.DEFINE_bool('use_ac_att', False, '') flags.DEFINE_bool('use_self_match', True, '') flags.DEFINE_bool('cq_reverse', False, '') flags.DEFINE_bool('use_answer_emb', False, '') flags.DEFINE_bool('combine_query', False, '') flags.DEFINE_bool('share_dropout', True, '') flags.DEFINE_bool('use_att_encode', False, 'for mreader wether to use at encode or not') flags.DEFINE_bool('use_bias', False, '') flags.DEFINE_string('encoder_combiner', 'concat', '') flags.DEFINE_bool('use_mlp', False, '') flags.DEFINE_bool('use_word', True, '') flags.DEFINE_bool('use_pos', False, '') flags.DEFINE_bool('use_tag', False, '') flags.DEFINE_bool('use_ner', False, '') flags.DEFINE_integer('tag_emb_dim', 100, '') flags.DEFINE_bool('use_emb_fc', False, '') flags.DEFINE_bool('use_emb_att', False, '') flags.DEFINE_bool('use_emb_max', False, '') flags.DEFINE_float('sfu_keepprob', 0.5, '') flags.DEFINE_float('emb_keepprob', 0.5, '') flags.DEFINE_bool('emb_dropout', False, '') flags.DEFINE_bool('use_label_emb', False, '') flags.DEFINE_bool('use_label_att', False, '') flags.DEFINE_bool('simple_label_att', False, '') flags.DEFINE_string('label_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_string('self_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_integer('label_emb_dim', 100, '') flags.DEFINE_integer('label_emb_height', None, '') flags.DEFINE_bool('concat_label_emb', False, '') flags.DEFINE_bool('label2text_attention', False, '') flags.DEFINE_bool('perlabel_encoding', False, '') flags.DEFINE_bool('toxic_only', False, '') flags.DEFINE_bool('toxic_softmax_loss', False, 'for toxic and serv') flags.DEFINE_bool('char_only', False, '') flags.DEFINE_integer('char_num_layers', 1, '') flags.DEFINE_integer('char_hidden_size', 100, '') flags.DEFINE_string('char_output_method', 'last', '') flags.DEFINE_integer('simple_char_num_layers', 3, '') flags.DEFINE_string('addtional_word_info', None, 'pos,tag,ner') flags.DEFINE_string('decay_target', None, 'loss or auc') flags.DEFINE_integer('decay_patience', 4, '') flags.DEFINE_float('decay_factor', 0.5, '') flags.DEFINE_bool('optimize_auc', False, '') flags.DEFINE_float('auc_ratio', 0., '') flags.DEFINE_bool('balance_pos_neg', False, '') flags.DEFINE_bool('dynamic_weights', False, '') flags.DEFINE_bool('use_gate', False, '') flags.DEFINE_bool('hate_corpus', False, '') flags.DEFINE_bool('use_position_encoding', False, '') ================================================ FILE: projects/ai2018/reader/algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-17 20:34:23.281520 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import melt logging = melt.logging # TODO add support for na or not binary sigmoid loss def criterion(model, x, y, training=False): y_ = model(x, training=training) if not FLAGS.type1_weight: weights = 1.0 else: # weights not help seems weights = tf.map_fn(lambda x: tf.cond(tf.equal(x, 1), lambda: FLAGS.type1_weight, lambda: 1.), x['type'], dtype=tf.float32) return tf.losses.sparse_softmax_cross_entropy(labels=y, logits=y_, weights=weights) ================================================ FILE: projects/ai2018/reader/algos/m_reader.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file m_reader.py # \author chenghuige # \date 2018-09-28 15:16:16.146020 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import melt logging = melt.logging # same as V3 but not use share dropout and recurrent dropout class MnemonicReaderV4(melt.Model): def __init__(self): super(MnemonicReaderV4, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size, vocab2_trainable=FLAGS.finetune_unk_vocab) self.num_layers = FLAGS.num_layers if FLAGS.hop > 1: assert self.num_layers == 1 and FLAGS.att_combiner == 'sfu', 'mreader must set num layers to 1 so can iterative align if you set hop > 1, and use sfu as combiner' self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob logging.info('num_layers:', self.num_layers) logging.info('num_unints:', self.num_units) logging.info('keep_prob:', self.keep_prob) self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob, recurrent_dropout=False) if FLAGS.use_qc_att or FLAGS.use_bidaf_att: assert not (FLAGS.use_qc_att and FLAGS.use_bidaf_att), 'use rnet or use bidaf? just choose one!' #Attention = melt.layers.DotAttention if FLAGS.use_qc_att else melt.layers.BiDAFAttention Attention = melt.layers.SeqAttnMatch if FLAGS.use_qc_att else melt.layers.BiDAFAttention # seems share att and match attention is fine a bit improve ? but just follow squad to use diffent dot attention # NOTICE for eager mode ckpt save should not write as x = [None] * 3 can not save... self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): #self.att_dot_attentions.append(Attention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.att_dot_attentions.append(Attention(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True)) self.att_dot_attentions.append(Attention(combiner=FLAGS.att_combiner, identity=True)) # TODO seems not work like layers.Dense... name in graph mode in eager mode will name as att_encode, match_encode # in graph mode just cudnn_rnn, cudnn_rnn_1 so all ignore name=.. not like layers.Dense.. TODO # TODO seems in mreader do not use att_encode .. so check which is better use or not to use.. self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_label_emb or FLAGS.use_label_att: assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if not FLAGS.use_label_att: # TODO not use activation ? #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) else: self.label_att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): #self.match_dot_attentions.append(melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.match_dot_attentions.append(melt.layers.SelfAttnMatch(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_answer_emb: self.context_dense = keras.layers.Dense(FLAGS.emb_dim) self.answer_dense = keras.layers.Dense(FLAGS.emb_dim) # self.context_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) # self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) if FLAGS.use_type_emb: type_emb_dim = 10 num_types = 2 self.type_embedding = melt.layers.Embedding(num_types, type_emb_dim) logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES) if FLAGS.split_type: self.logits2 = keras.layers.Dense(NUM_CLASSES) def call(self, input, training=False): q = input['query'] c = input['passage'] # reverse worse if FLAGS.cq_reverse: q, c = c, q #print(input['type']) # print('q', q) # print('c', c) q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) c_mask = tf.cast(c, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') q_len = tf.ones([batch_size], dtype=q.dtype) * tf.cast(melt.get_shape(q, -1), q.dtype) c_len = tf.ones([batch_size], dtype=c.dtype) * tf.cast(melt.get_shape(c, -1), c.dtype) q_mask = tf.ones_like(q) c_mask = tf.ones_like(c) c = self.encode(c_emb, c_len, training=training) q = self.encode(q_emb, q_len, training=training) # helps a lot using qc att, now bidaf att worse.. # TODO... FIXME WRONG! must use sfu as to iterative align gate will increase dim while sfu not x = c for i in range(FLAGS.hop): if not FLAGS.use_bidaf_att: x = self.att_dot_attentions[i](x, q, mask=q_mask, training=training) else: x = self.att_dot_attentions[i](x, q, c_mask, q_mask, training=training) if FLAGS.use_att_encode: x = self.att_encodes[i](x, c_len, training=training) #x = self.match_dot_attentions[i](x, x, mask=c_mask, training=training) x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) if FLAGS.mask_pooling: x = self.pooling(x, c_len, calc_word_scores=self.debug) else: x = self.pooling(x, None, calc_word_scores=self.debug) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) if FLAGS.use_type_emb: x = tf.concat([x, self.type_embedding(input['type'])], 1) # might helps ensemble if FLAGS.use_answer_emb: x1 = x neg = input['candidate_neg'] pos = input['candidate_pos'] na = input['candidate_na'] neg_len = melt.length(neg) pos_len = melt.length(pos) na_len = melt.length(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) if FLAGS.share_dropout: neg = self.encode(neg_emb, neg_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) pos = self.encode(pos_emb, pos_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) na = self.encode(na_emb, na_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: neg = self.encode(neg_emb, neg_len, training=training) pos = self.encode(pos_emb, pos_len, training=training) na = self.encode(na_emb, na_len, training=training) neg = self.pooling(neg, neg_len) pos = self.pooling(pos, pos_len) na = self.pooling(na, na_len) answer = tf.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = tf.matmul(answer, tf.transpose(tf.expand_dims(x, 1), [0, 2, 1])) x = tf.reshape(x, [batch_size, NUM_CLASSES]) x = tf.concat([x1, x], -1) #return x # not help if FLAGS.combine_query: q = self.pooling(q, q_len) x = tf.concat([x, q], -1) if not FLAGS.use_label_emb: # split logits by type is useful, especially for type1, and improve a lot with type1 only finetune if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) mask = tf.expand_dims(tf.to_float(tf.equal(input['type'], 0)), 1) x = x1 * mask + x2 * (1 - mask) else: # use label emb seems not help ? x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) return x # this is follow hkust pytorch MnemonicReader with same attention implementation, this is V3 class MnemonicReader(melt.Model): def __init__(self): super(MnemonicReader, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size, vocab2_trainable=FLAGS.finetune_unk_vocab) self.num_layers = FLAGS.num_layers if FLAGS.hop > 1: assert self.num_layers == 1 and FLAGS.att_combiner == 'sfu', 'mreader must set num layers to 1 so can iterative align if you set hop > 1, and use sfu as combiner' self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob logging.info('num_layers:', self.num_layers) logging.info('num_unints:', self.num_units) logging.info('keep_prob:', self.keep_prob) self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_qc_att or FLAGS.use_bidaf_att: assert not (FLAGS.use_qc_att and FLAGS.use_bidaf_att), 'use rnet or use bidaf? just choose one!' #Attention = melt.layers.DotAttention if FLAGS.use_qc_att else melt.layers.BiDAFAttention Attention = melt.layers.SeqAttnMatch if FLAGS.use_qc_att else melt.layers.BiDAFAttention # seems share att and match attention is fine a bit improve ? but just follow squad to use diffent dot attention # NOTICE for eager mode ckpt save should not write as x = [None] * 3 can not save... self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): #self.att_dot_attentions.append(Attention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.att_dot_attentions.append(Attention(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True)) self.att_dot_attentions.append(Attention(combiner=FLAGS.att_combiner, identity=True)) # TODO seems not work like layers.Dense... name in graph mode in eager mode will name as att_encode, match_encode # in graph mode just cudnn_rnn, cudnn_rnn_1 so all ignore name=.. not like layers.Dense.. TODO # TODO seems in mreader do not use att_encode .. so check which is better use or not to use.. self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_label_emb or FLAGS.use_label_att: assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if not FLAGS.use_label_att: # TODO not use activation ? #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) else: self.label_att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): #self.match_dot_attentions.append(melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.match_dot_attentions.append(melt.layers.SelfAttnMatch(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_answer_emb: self.context_dense = keras.layers.Dense(FLAGS.emb_dim) self.answer_dense = keras.layers.Dense(FLAGS.emb_dim) # self.context_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) # self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) if FLAGS.use_type_emb: type_emb_dim = 10 num_types = 2 self.type_embedding = melt.layers.Embedding(num_types, type_emb_dim) logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES) if FLAGS.split_type: self.logits2 = keras.layers.Dense(NUM_CLASSES) def call(self, input, training=False): q = input['query'] c = input['passage'] # reverse worse if FLAGS.cq_reverse: q, c = c, q #print(input['type']) # print('q', q) # print('c', c) q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) c_mask = tf.cast(c, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') q_len = tf.ones([batch_size], dtype=q.dtype) * tf.cast(melt.get_shape(q, -1), q.dtype) c_len = tf.ones([batch_size], dtype=c.dtype) * tf.cast(melt.get_shape(c, -1), c.dtype) q_mask = tf.ones_like(q) c_mask = tf.ones_like(c) if FLAGS.share_dropout: num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] # NOTICE query and passage share same drop out, so same word still has same embedding vector after dropout in query and passage c = self.encode(c_emb, c_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) q = self.encode(q_emb, q_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: c = self.encode(c_emb, c_len, training=training) q = self.encode(q_emb, q_len, training=training) # helps a lot using qc att, now bidaf att worse.. # TODO... FIXME WRONG! must use sfu as to iterative align gate will increase dim while sfu not x = c for i in range(FLAGS.hop): if not FLAGS.use_bidaf_att: x = self.att_dot_attentions[i](x, q, mask=q_mask, training=training) else: x = self.att_dot_attentions[i](x, q, c_mask, q_mask, training=training) if FLAGS.use_att_encode: x = self.att_encodes[i](x, c_len, training=training) #x = self.match_dot_attentions[i](x, x, mask=c_mask, training=training) x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) if FLAGS.mask_pooling: x = self.pooling(x, c_len, calc_word_scores=self.debug) else: x = self.pooling(x, None, calc_word_scores=self.debug) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) if FLAGS.use_type_emb: x = tf.concat([x, self.type_embedding(input['type'])], 1) # might helps ensemble if FLAGS.use_answer_emb: x1 = x neg = input['candidate_neg'] pos = input['candidate_pos'] na = input['candidate_na'] neg_len = melt.length(neg) pos_len = melt.length(pos) na_len = melt.length(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) if FLAGS.share_dropout: neg = self.encode(neg_emb, neg_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) pos = self.encode(pos_emb, pos_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) na = self.encode(na_emb, na_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: neg = self.encode(neg_emb, neg_len, training=training) pos = self.encode(pos_emb, pos_len, training=training) na = self.encode(na_emb, na_len, training=training) neg = self.pooling(neg, neg_len) pos = self.pooling(pos, pos_len) na = self.pooling(na, na_len) answer = tf.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = tf.matmul(answer, tf.transpose(tf.expand_dims(x, 1), [0, 2, 1])) x = tf.reshape(x, [batch_size, NUM_CLASSES]) x = tf.concat([x1, x], -1) #return x # not help if FLAGS.combine_query: q = self.pooling(q, q_len) x = tf.concat([x, q], -1) if not FLAGS.use_label_emb: # split logits by type is useful, especially for type1, and improve a lot with type1 only finetune if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) mask = tf.expand_dims(tf.to_float(tf.equal(input['type'], 0)), 1) x = x1 * mask + x2 * (1 - mask) else: # use label emb seems not help ? x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) return x # V2 is follow hkust pytorch MnemonicReader but more dropout on attention(like hkust tensorflow rnet) class MnemonicReaderV2(melt.Model): def __init__(self): super(MnemonicReaderV2, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size, vocab2_trainable=FLAGS.finetune_unk_vocab) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob logging.info('num_layers:', self.num_layers) logging.info('num_unints:', self.num_units) logging.info('keep_prob:', self.keep_prob) self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_qc_att or FLAGS.use_bidaf_att: assert not (FLAGS.use_qc_att and FLAGS.use_bidaf_att), 'use rnet or use bidaf? just choose one!' #Attention = melt.layers.DotAttention if FLAGS.use_qc_att else melt.layers.BiDAFAttention Attention = melt.layers.SeqAttnMatch if FLAGS.use_qc_att else melt.layers.BiDAFAttention # seems share att and match attention is fine a bit improve ? but just follow squad to use diffent dot attention # NOTICE for eager mode ckpt save should not write as x = [None] * 3 can not save... self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): #self.att_dot_attentions.append(Attention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) self.att_dot_attentions.append(Attention(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True)) #self.att_dot_attentions.append(Attention(combiner=FLAGS.att_combiner, identity=True)) # TODO seems not work like layers.Dense... name in graph mode in eager mode will name as att_encode, match_encode # in graph mode just cudnn_rnn, cudnn_rnn_1 so all ignore name=.. not like layers.Dense.. TODO # TODO seems in mreader do not use att_encode .. so check which is better use or not to use.. self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_label_emb or FLAGS.use_label_att: assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if not FLAGS.use_label_att: # TODO not use activation ? #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) else: self.label_att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): #self.match_dot_attentions.append(melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) self.match_dot_attentions.append(melt.layers.SelfAttnMatch(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True, diag=False)) #self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_answer_emb: self.context_dense = keras.layers.Dense(FLAGS.emb_dim) self.answer_dense = keras.layers.Dense(FLAGS.emb_dim) # self.context_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) # self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES) if FLAGS.split_type: self.logits2 = keras.layers.Dense(NUM_CLASSES) def call(self, input, training=False): q = input['query'] c = input['passage'] # reverse worse if FLAGS.cq_reverse: q, c = c, q #print(input['type']) # print('q', q) # print('c', c) q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) c_mask = tf.cast(c, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) if FLAGS.share_dropout: num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] # NOTICE query and passage share same drop out, so same word still has same embedding vector after dropout in query and passage c = self.encode(c_emb, c_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) q = self.encode(q_emb, q_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: c = self.encode(c_emb, c_len, training=training) q = self.encode(q_emb, q_len, training=training) # helps a lot using qc att, now bidaf att worse.. for i in range(FLAGS.hop): if not FLAGS.use_bidaf_att: x = self.att_dot_attentions[i](c, q, mask=q_mask, training=training) else: x = self.att_dot_attentions[i](c, q, c_mask, q_mask, training=training) if FLAGS.use_att_encode: x = self.att_encodes[i](x, c_len, training=training) #x = self.match_dot_attentions[i](x, x, mask=c_mask, training=training) x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) # might helps ensemble if FLAGS.use_answer_emb: x1 = x neg = input['candidate_neg'] pos = input['candidate_pos'] na = input['candidate_na'] neg_len = melt.length(neg) pos_len = melt.length(pos) na_len = melt.length(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) if FLAGS.share_dropout: neg = self.encode(neg_emb, neg_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) pos = self.encode(pos_emb, pos_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) na = self.encode(na_emb, na_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: neg = self.encode(neg_emb, neg_len, training=training) pos = self.encode(pos_emb, pos_len, training=training) na = self.encode(na_emb, na_len, training=training) neg = self.pooling(neg, neg_len) pos = self.pooling(pos, pos_len) na = self.pooling(na, na_len) answer = tf.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = tf.matmul(answer, tf.transpose(tf.expand_dims(x, 1), [0, 2, 1])) x = tf.reshape(x, [batch_size, NUM_CLASSES]) x = tf.concat([x1, x], -1) #return x # not help if FLAGS.combine_query: q = self.pooling(q, q_len) x = tf.concat([x, q], -1) if not FLAGS.use_label_emb: # split logits by type is useful, especially for type1, and improve a lot with type1 only finetune if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) mask = tf.expand_dims(tf.to_float(tf.equal(input['type'], 0)), 1) x = x1 * mask + x2 * (1 - mask) else: # use label emb seems not help ? x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) return x # V1 is just like hkust rnet with interactive attention class MnemonicReaderV1(melt.Model): def __init__(self): super(MnemonicReaderV1, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size, vocab2_trainable=FLAGS.finetune_unk_vocab) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob logging.info('num_layers:', self.num_layers) logging.info('num_unints:', self.num_units) logging.info('keep_prob:', self.keep_prob) self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_qc_att or FLAGS.use_bidaf_att: assert not (FLAGS.use_qc_att and FLAGS.use_bidaf_att), 'use rnet or use bidaf? just choose one!' #Attention = melt.layers.DotAttention if FLAGS.use_qc_att else melt.layers.BiDAFAttention Attention = melt.layers.SeqAttnMatch if FLAGS.use_qc_att else melt.layers.BiDAFAttention # seems share att and match attention is fine a bit improve ? but just follow squad to use diffent dot attention # NOTICE for eager mode ckpt save should not write as x = [None] * 3 can not save... self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): self.att_dot_attentions.append(Attention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.att_dot_attentions.append(Attention(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True)) #self.att_dot_attentions.append(Attention(combiner=FLAGS.att_combiner, identity=True)) # TODO seems not work like layers.Dense... name in graph mode in eager mode will name as att_encode, match_encode # in graph mode just cudnn_rnn, cudnn_rnn_1 so all ignore name=.. not like layers.Dense.. TODO # TODO seems in mreader do not use att_encode .. so check which is better use or not to use.. self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_label_emb or FLAGS.use_label_att: assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if not FLAGS.use_label_att: # TODO not use activation ? #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) else: self.label_att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): self.match_dot_attentions.append(melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner)) #self.match_dot_attentions.append(melt.layers.SelfAttnMatch(keep_prob=self.keep_prob, combiner=FLAGS.att_combiner, identity=True, diag=False)) #self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_answer_emb: self.context_dense = keras.layers.Dense(FLAGS.emb_dim) self.answer_dense = keras.layers.Dense(FLAGS.emb_dim) # self.context_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) # self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES) if FLAGS.split_type: self.logits2 = keras.layers.Dense(NUM_CLASSES) def call(self, input, training=False): q = input['query'] c = input['passage'] # reverse worse if FLAGS.cq_reverse: q, c = c, q #print(input['type']) # print('q', q) # print('c', c) q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) c_mask = tf.cast(c, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) if FLAGS.share_dropout: num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] # NOTICE query and passage share same drop out, so same word still has same embedding vector after dropout in query and passage c = self.encode(c_emb, c_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) q = self.encode(q_emb, q_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: c = self.encode(c_emb, c_len, training=training) q = self.encode(q_emb, q_len, training=training) # helps a lot using qc att, now bidaf att worse.. for i in range(FLAGS.hop): if not FLAGS.use_bidaf_att: x = self.att_dot_attentions[i](c, q, mask=q_mask, training=training) else: x = self.att_dot_attentions[i](c, q, c_mask, q_mask, training=training) if FLAGS.use_att_encode: x = self.att_encodes[i](x, c_len, training=training) x = self.match_dot_attentions[i](x, x, mask=c_mask, training=training) #x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) # might helps ensemble if FLAGS.use_answer_emb: x1 = x neg = input['candidate_neg'] pos = input['candidate_pos'] na = input['candidate_na'] neg_len = melt.length(neg) pos_len = melt.length(pos) na_len = melt.length(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) if FLAGS.share_dropout: neg = self.encode(neg_emb, neg_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) pos = self.encode(pos_emb, pos_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) na = self.encode(na_emb, na_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) else: neg = self.encode(neg_emb, neg_len, training=training) pos = self.encode(pos_emb, pos_len, training=training) na = self.encode(na_emb, na_len, training=training) neg = self.pooling(neg, neg_len) pos = self.pooling(pos, pos_len) na = self.pooling(na, na_len) answer = tf.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = tf.matmul(answer, tf.transpose(tf.expand_dims(x, 1), [0, 2, 1])) x = tf.reshape(x, [batch_size, NUM_CLASSES]) x = tf.concat([x1, x], -1) #return x # not help if FLAGS.combine_query: q = self.pooling(q, q_len) x = tf.concat([x, q], -1) if not FLAGS.use_label_emb: # split logits by type is useful, especially for type1, and improve a lot with type1 only finetune if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) mask = tf.expand_dims(tf.to_float(tf.equal(input['type'], 0)), 1) x = x1 * mask + x2 * (1 - mask) else: # use label emb seems not help ? x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) return x ================================================ FILE: projects/ai2018/reader/algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ptr-net.py # \author chenghuige # \date 2018-01-15 11:50:08.306272 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from algos.baseline import Model, Model2 from algos.qcatt import QCAttention from algos.rnet import RNet from algos.rnet import RNet as Rnet from algos.m_reader import * from algos.m_reader import MnemonicReader as MReader ================================================ FILE: projects/ai2018/reader/algos/qcatt.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file qcatt.py # \author chenghuige # \date 2018-09-28 15:19:25.674053 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import melt logging = melt.logging class QCAttention(melt.Model): def __init__(self): super(QCAttention, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob self.encode = wenzheng.Encoder(FLAGS.encoder_type) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.pooling = melt.layers.MaxPooling() self.logits = keras.layers.Dense(NUM_CLASSES, activation=None) self.logits2 = keras.layers.Dense(NUM_CLASSES, activation=None) def call(self, input, training=False): q = input['query'] c = input['passage'] q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] c = self.encode(c_emb, c_len, mask_fws=mask_fws, mask_bws=mask_bws) q = self.encode(q_emb, q_len, mask_fws=mask_fws, mask_bws=mask_bws) qc_att = self.att_dot_attention(c, q, mask=q_mask, training=training) num_units = [melt.get_shape(qc_att, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(1)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(1)] x = self.att_encode(qc_att, c_len, mask_fws=mask_fws, mask_bws=mask_bws) x = self.pooling(x, c_len) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) x = tf.cond(tf.cast(input['type'] == 0, tf.bool), lambda: (x1 + x2) / 2., lambda: x2) return x ================================================ FILE: projects/ai2018/reader/algos/rnet.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file rnet.py # \author chenghuige # \date 2018-09-28 15:15:58.298504 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import melt logging = melt.logging # TODO make all to one model is fine, not to hold so many JUST USE Rnet! class RNet(melt.Model): def __init__(self): super(RNet, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding, vocab2_size=FLAGS.unk_vocab_size, vocab2_trainable=FLAGS.finetune_unk_vocab) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = FLAGS.keep_prob logging.info('num_layers:', self.num_layers) logging.info('num_unints:', self.num_units) logging.info('keep_prob:', self.keep_prob) self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_qc_att or FLAGS.use_bidaf_att: assert not (FLAGS.use_qc_att and FLAGS.use_bidaf_att), 'use rnet or use bidaf? just choose one!' Attention = melt.layers.DotAttention if FLAGS.use_qc_att else melt.layers.BiDAFAttention # seems share att and match attention is fine a bit improve ? but just follow squad to use diffent dot attention self.att_dot_attention = Attention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) # TODO seems not work like layers.Dense... name in graph mode in eager mode will name as att_encode, match_encode # in graph mode just cudnn_rnn, cudnn_rnn_1 so all ignore name=.. not like layers.Dense.. TODO self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_label_emb or FLAGS.use_label_att: assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if not FLAGS.use_label_att: # TODO not use activation ? #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) else: self.label_att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.label_att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) if FLAGS.use_self_match: self.match_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) # TODO might try to all set use_bias=True if FLAGS.use_answer_emb: self.context_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) # self.context_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) # self.answer_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) self.logits = keras.layers.Dense(NUM_CLASSES, activation=None) if FLAGS.split_type: self.logits2 = keras.layers.Dense(NUM_CLASSES, activation=None) def call(self, input, training=False): q = input['query'] c = input['passage'] # reverse worse if FLAGS.cq_reverse: q, c = c, q #print(input['type']) # print('q', q) # print('c', c) q_len = melt.length(q) c_len = melt.length(c) q_mask = tf.cast(q, tf.bool) c_mask = tf.cast(c, tf.bool) q_emb = self.embedding(q) c_emb = self.embedding(c) x = c_emb batch_size = melt.get_shape(x, 0) num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] # NOTICE query and passage share same drop out, so same word still has same embedding vector after dropout in query and passage c = self.encode(c_emb, c_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) q = self.encode(q_emb, q_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) # helps a lot using qc att, now bidaf att worse.. if FLAGS.use_qc_att or FLAGS.use_bidaf_att: if FLAGS.use_qc_att: # rnet x = self.att_dot_attention(c, q, mask=q_mask, training=training) else: # bidaf x = self.att_dot_attention(c, q, c_mask, q_mask, training=training) x = self.att_encode(x, c_len, training=training) # not help! if FLAGS.use_label_att: label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) x = self.label_att_dot_attention(x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) x = self.label_att_encode(x, c_len, training=training) # TODO try add use ac att # helps a bit if FLAGS.use_self_match: x = self.match_dot_attention(x, x, mask=c_mask, training=training) x = self.match_encode(x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) if FLAGS.use_type: x = tf.concat([x, tf.expand_dims(tf.to_float(input['type']), 1)], 1) # might helps ensemble if FLAGS.use_answer_emb: x1 = x neg = input['candidate_neg'] pos = input['candidate_pos'] na = input['candidate_na'] neg_len = melt.length(neg) pos_len = melt.length(pos) na_len = melt.length(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) neg = self.encode(neg_emb, neg_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) pos = self.encode(pos_emb, pos_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) na = self.encode(na_emb, na_len, mask_fws=mask_fws, mask_bws=mask_bws, training=training) neg = self.pooling(neg, neg_len) pos = self.pooling(pos, pos_len) na = self.pooling(na, na_len) answer = tf.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = tf.matmul(answer, tf.transpose(tf.expand_dims(x, 1), [0, 2, 1])) x = tf.reshape(x, [batch_size, NUM_CLASSES]) x = tf.concat([x1, x], -1) #return x # not help if FLAGS.combine_query: q = self.pooling(q, q_len) x = tf.concat([x, q], -1) if not FLAGS.use_label_emb: # split logits by type is useful, especially for type1, and improve a lot with type1 only finetune if not FLAGS.split_type: x = self.logits(x) else: x1 = self.logits(x) x2 = self.logits2(x) mask = tf.expand_dims(tf.to_float(tf.equal(input['type'], 0)), 1) x = x1 * mask + x2 * (1 - mask) else: # use label emb seems not help ? x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) return x ================================================ FILE: projects/ai2018/reader/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from collections import namedtuple import gezi import melt logging = melt.logging from wenzheng.utils import vocabulary import algos.config class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) # !must use tf.equal not ==, verify this using eager mode! tensor != 1... tf.equal(tensor, 1) self.filter_fn = None if not FLAGS.type1_only else lambda x, y: tf.equal(x['type'], 1) if FLAGS.type0_only: self.filter_fn = lambda x, y: tf.equal(x['type'], 0) logging.info('filter_fn', self.filter_fn) if FLAGS.type1_count: self.count_fn = lambda x, y: tf.cond(tf.equal(x['type'], 1), lambda: FLAGS.type1_count, lambda: 1) logging.info('count_fn', self.count_fn) def parser(self, example): features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'url': tf.FixedLenFeature([], tf.string), 'answer': tf.FixedLenFeature([], tf.int64), 'answer_str': tf.FixedLenFeature([], tf.string), 'query': tf.VarLenFeature(tf.int64), 'query_char': tf.VarLenFeature(tf.int64), 'query_pos': tf.VarLenFeature(tf.int64), 'query_str': tf.FixedLenFeature([], tf.string), 'passage': tf.VarLenFeature(tf.int64), 'passage_char': tf.VarLenFeature(tf.int64), 'passage_pos': tf.VarLenFeature(tf.int64), 'passage_str': tf.FixedLenFeature([], tf.string), 'candidate_neg': tf.VarLenFeature(tf.int64), 'candidate_neg_char': tf.VarLenFeature(tf.int64), 'candidate_neg_pos': tf.VarLenFeature(tf.int64), 'candidate_pos': tf.VarLenFeature(tf.int64), 'candidate_pos_char': tf.VarLenFeature(tf.int64), 'candidate_pos_pos': tf.VarLenFeature(tf.int64), 'candidate_na': tf.VarLenFeature(tf.int64), 'candidate_na_char': tf.VarLenFeature(tf.int64), 'candidate_na_pos': tf.VarLenFeature(tf.int64), 'query_char': tf.VarLenFeature(tf.int64), 'query_pos': tf.VarLenFeature(tf.int64), 'alternatives': tf.FixedLenFeature([], tf.string), 'candidates': tf.FixedLenFeature([], tf.string), 'type': tf.FixedLenFeature([], tf.int64), } features = tf.parse_single_example(example, features=features_dict) query = features['query'] passage = features['passage'] candidate_neg = features['candidate_neg'] candidate_pos = features['candidate_pos'] candidate_na = features['candidate_na'] query = melt.sparse_tensor_to_dense(query) passage = melt.sparse_tensor_to_dense(passage) candidate_neg = melt.sparse_tensor_to_dense(candidate_neg) candidate_pos = melt.sparse_tensor_to_dense(candidate_pos) candidate_na = melt.sparse_tensor_to_dense(candidate_na) def s2d(name): x = features[name] x = melt.sparse_tensor_to_dense(x) features[name] = x l = ['query_char', 'query_pos', \ 'passage_char', 'passage_pos', \ 'candidate_neg_char', 'candidate_neg_pos', \ 'candidate_pos_char', 'candidate_pos_pos', \ 'candidate_na_char', 'candidate_na_pos', ] for name in l: s2d(name) # def add_start_end(text): # return tf.concat([tf.constant([vocabulary.start_id()], dtype=tf.int64), text, tf.constant([vocabulary.end_id()], dtype=tf.int64)], 0) # if FLAGS.add_start_end: # query = add_start_end(query) features['query'] = query # if FLAGS.add_start_end: # passage = add_start_end(passage) features['passage'] = passage # if not FLAGS.add_start_end: # features['content'] = tf.concat([passage, tf.constant([vocabulary.end_id()], dtype=tf.int64), query], 0) # features['rcontent'] = tf.concat([query, tf.constant([vocabulary.end_id()], dtype=tf.int64), passage], 0) # else: features['content'] = tf.concat([passage, query[1:]], 0) features['rcontent'] = tf.concat([query, passage[1:]], 0) # if FLAGS.add_start_end: # candidate_neg = add_start_end(candidate_neg) features['candidate_neg'] = candidate_neg # if FLAGS.add_start_end: # candidate_pos = add_start_end(candidate_pos) features['candidate_pos'] = candidate_pos features['candidate_na'] = candidate_na answer = features['answer'] x = features y = answer return x, y ================================================ FILE: projects/ai2018/reader/ensemble/ensemble-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np import gezi idir = sys.argv[1] def parse(input): return np.array([float(x.strip()) for x in input[1:-1].split(' ') if x.strip()]) cadidates = {} results = {} results2 = {} for file_ in glob.glob('%s/*.infer.txt.debug' % idir): df = pd.read_csv(file_) #df = df.sort_index(0) ids = df['id'].values candidates_ = df['candidates'].values scores = df['score'] scores = [parse(score) for score in scores] if not results: candidates = dict(zip(ids, candidates_)) print(file_) scores = gezi.softmax(scores, -1) for id, score in zip(ids, scores): if id not in results: results[id] = score else: results[id] += score ofile = os.path.join(idir, 'ensemble.infer.txt') print('ofile:', ofile) with open(ofile, 'w') as out: for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] print(id, predict, sep='\t', file=out) ================================================ FILE: projects/ai2018/reader/ensemble/ensemble-valid.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np import gezi idir = sys.argv[1] def parse(input): return np.array([float(x.strip()) for x in input[1:-1].split(' ') if x.strip()]) cadidates = {} m = {} results = {} results2 = {} ignore_type1s = set() for i, file_ in enumerate(glob.glob('%s/*.valid.csv' % idir)): df = pd.read_csv(file_) #df = df.sort_index(0) ids = df['id'].values labels = df['label'].values candidates_ = df['candidates'].values predicts = df['predict'].values scores = df['score'] scores = [parse(score) for score in scores] if not m: m = dict(zip(ids, labels)) candidates = dict(zip(ids, candidates_)) df0 = df.loc[df['type'] == 0] df1 = df.loc[df['type'] == 1] labels0 = df0['label'].values predicts0 = df0['predict'].values labels1 = df1['label'].values predicts1 = df1['predict'].values print(file_, np.mean(np.equal(labels, predicts)), np.mean(np.equal(labels0, predicts0)), np.mean(np.equal(labels1, predicts1))) type1_score = np.mean(np.equal(labels1, predicts1)) if type1_score < 0.5: ignore_type1s.add(i) print('ignore typ1 for', file_) # only use df0 ids = df0['id'].values scores = df0['score'] scores = [parse(score) for score in scores] for id, score in zip(ids, scores): if id not in results: results[id] = score else: results[id] += score scores2 = gezi.softmax(scores, -1) for id, score in zip(ids, scores2): if id not in results2: results2[id] = score else: results2[id] += score match = 0 for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] if predict == m[id]: match += 1 print('acc_by_logit', match / len(df)) match = 0 for id, score in results2.items(): index = np.argmax(score, -1) predict = candidates[id].split('|')[index] #if predict.strip() == m[id]: if predict == m[id]: match += 1 print('acc_by_prob', match / len(df)) cadidates = {} results = {} results2 = {} for i, file_ in enumerate(glob.glob('%s/*.infer.txt.debug' % idir)): df = pd.read_csv(file_) #df = df.sort_index(0) ids = df['id'].values candidates_ = df['candidates'].values scores = df['score'] scores = [parse(score) for score in scores] df0 = df.loc[df['type'] == 0] df1 = df.loc[df['type'] == 1] ids0 = df0['id'].values ids1 = df1['id'].values scores0 = df0['score'] scores0 = [parse(score) for score in scores0] scores1 = df1['score'] scores1 = [parse(score) for score in scores1] if i in ignore_type1s: print('infer ignore:', file_) ids = ids0 scores = scores0 if not results: candidates = dict(zip(ids, candidates_)) print(file_) scores = gezi.softmax(scores, -1) print(len(ids), len(scores)) for id, score in zip(ids, scores): if id not in results: results[id] = score else: results[id] += score ofile = os.path.join(idir, 'ensemble.infer.txt') print('ofile:', ofile) with open(ofile, 'w') as out: for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] print(id, predict, sep='\t', file=out) ================================================ FILE: projects/ai2018/reader/ensemble/ensemble.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', False, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_bool('use_type', True, '') flags.DEFINE_string('idir', '.', '') import sys import os import glob import pandas as pd import numpy as np import gezi from tqdm import tqdm import copy from scipy.stats import rankdata DEBUG = 0 idir = '.' def parse(input): return np.array([float(x.strip()) for x in input[1:-1].split(' ') if x.strip()]) def blend_weights(weights, norm_factor=0.1): weights_min = np.min(weights) weights_max = np.max(weights) gap = weights_max - weights_min for i in range(len(weights)): weights[i] = ((weights[i] - weights_min) / gap) + norm_factor # ranked = rankdata(weights) # sum_rank = np.sum(ranked) # for j in range(len(weights)): # weights[j] = ranked[j] / sum_rank def main(_): DEBUG = FLAGS.debug idir = FLAGS.idir print('METHOD:', FLAGS.method) cadidates = {} m = {} results = {} results1 = {} results2 = {} valid_files = glob.glob(f'{idir}/*.valid.csv') if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.txt.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') print('num_ensembles', len(valid_files)) print('num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), f'{len(valid_files)} {len(infer_files)}' num_ensembles = len(valid_files) wether_ids = None gdf = None weights = [] weights_if = [] weights_wether = [] scores_list = [] def get_weight(id, weight, weight_if, weight_wether): if FLAGS.method == 'avg' or FLAGS.method == 'mean': return 1. if not FLAGS.use_type: weight_ = weight else: if id in wether_ids: weight_ = weight_wether else: weight_ = weight_if # well we use avg mean for wether_if... #weight_ = 1. return weight_ for i, file_ in enumerate(valid_files): df = pd.read_csv(file_) df = df.sort_values('id') ids = df['id'].values labels = df['label'].values if i == 0: gdf = df candidates_ = df['candidates'].values predicts = df['predict'].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) if not m: m = dict(zip(ids, labels)) candidates = dict(zip(ids, candidates_)) df0 = df.loc[df['type'] == 0] df1 = df.loc[df['type'] == 1] labels0 = df0['label'].values predicts0 = df0['predict'].values labels1 = df1['label'].values predicts1 = df1['predict'].values if not wether_ids: wether_ids = set(df1['id'].values) acc = np.mean(np.equal(labels, predicts)) acc_if = np.mean(np.equal(labels0, predicts0)) acc_wether = np.mean(np.equal(labels1, predicts1)) weights.append(acc) weights_if.append(acc_if) weights_wether.append(acc_wether) print(i, file_, 'acc:', acc, 'acc_if:', acc_if, 'acc_wether:', acc_wether, 'num_if:', len(df0), 'num_wether:', len(df1)) blend_weights(weights, 1.) blend_weights(weights_if, 100.) # weights_if similar as disable weights blend_weights(weights_wether, 0.001) # 75106 #blend_weights(weights_wether, 0.01) #751 print('weights', weights) print('weights_if', weights_if) print('weights_wether', weights_wether) for i in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[i] weight = weights[i] weight_if = weights_if[i] weight_wether = weights_wether[i] for id, score in zip(ids, scores): weight_ = get_weight(id, weight, weight_if, weight_wether) score *= weight_ if id not in wether_ids: if id not in results: results[id] = copy.copy(score) else: results[id] += score if id not in results1: results1[id] = copy.copy(score) else: results1[id] += score score = gezi.softmax(score) if id not in results2: results2[id] = copy.copy(score) else: results2[id] += score if id in wether_ids: if id not in results: results[id] = copy.copy(score) else: results[id] += score match = 0 match_if = 0 match_wether = 0 for id, score in results1.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] match_now = 1 if predict == m[id] else 0 match += match_now if id not in wether_ids: match_if += match_now else: match_wether += match_now print('--------------by logit') print('acc_if_by_logit', match_if / (len(results1) - len(wether_ids))) print('add_wether_by_logit', match_wether / len(wether_ids)) print('acc_by_logit', match / len(results1)) match = 0 match_if = 0 match_wether = 0 for id, score in results2.items(): index = np.argmax(score, -1) predict = candidates[id].split('|')[index] match_now = 1 if predict == m[id] else 0 match += match_now if id not in wether_ids: match_if += match_now else: match_wether += match_now print('---------------by prob') print('acc_if_by_prob', match_if / (len(results2) - len(wether_ids))) print('add_wether_by_prob', match_wether / len(wether_ids)) print('acc_by_prob', match / len(results2)) match = 0 match_if = 0 match_wether = 0 for id, score in results.items(): index = np.argmax(score, -1) predict = candidates[id].split('|')[index] match_now = 1 if predict == m[id] else 0 match += match_now if id not in wether_ids: match_if += match_now else: match_wether += match_now print('--------------if by logit, wether by prob') print('acc_if_final', match_if / (len(results) - len(wether_ids))) print('add_wether_final', match_wether / len(wether_ids)) print('acc_final', match / len(results)) cadidates = {} results = {} for i, file_ in enumerate(infer_files): df = pd.read_csv(file_) df = df.sort_values('id') ids = df['id'].values candidates_ = df['candidates'].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) df1 = df.loc[df['type'] == 1] ids1 = df1['id'].values if not wether_ids: wether_ids = set(ids1) if not results: candidates = dict(zip(ids, candidates_)) print(i, file_) weight = weights[i] weight_if = weights_if[i] weight_wether = weights_wether[i] for id, score in zip(ids, scores): weight_ = get_weight(id, weight, weight_if, weight_wether) score = score * weight_ if id not in wether_ids: if id not in results: results[id] = copy.copy(score) else: results[id] += score else: score = gezi.softmax(score) if id not in results: results[id] = copy.copy(score) else: results[id] += score ofile = os.path.join(idir, 'ensemble.infer.txt') print('out:', ofile) with open(ofile, 'w') as out: for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] print(id, predict, sep='\t', file=out) ofile = os.path.join(idir, 'ensemble.infer.debug.txt') print('out debug:', ofile) if not DEBUG: with open(ofile, 'w') as out: for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] print(id, predict, score, sep='\t', file=out) else: predicts = np.array([candidates[id].split('|')[np.argmax(score, -1)] for id, score in results.items()]) gdf['predict'] = predicts print('check acc:', np.mean(np.equal(gdf['label'].values, gdf['predict'].values))) gdf.to_csv(ofile, index=False) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/ensemble/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-09-15 19:12:03.819848 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np from sklearn.metrics import f1_score df = pd.read_csv(sys.argv[1]) acc = 0 acc_if = 0 acc_wether = 0 num_if = 0 num_wehter = 0 for row in df.iterrows(): score = int(row[1]['label'] == row[1]['predict']) acc += score if row[1]['type'] == 0: num_if += 1 acc_if += score else: num_wehter += 1 acc_wether += score print('num_if', num_if, 'num_wether', num_wehter) print('acc_if:', acc_if / num_if) print('acc_wether:', acc_wether / num_wehter) print('acc:', acc / len(df)) ================================================ FILE: projects/ai2018/reader/evaluate.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time, io sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8') sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding='utf-8') import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('info_path', None, '') #from sklearn.utils.extmath import softmax from melt.utils.weight_decay import WeightDecay, WeightsDecay import numpy as np import gezi import melt logging = melt.logging from wenzheng.utils import ids2text from sklearn.metrics import log_loss import pickle valid_infos = {} test_infos = {} decay = None wnames = [] def init(): global valid_infos, test_infos global wnames with open(FLAGS.info_path, 'rb') as f: valid_infos = pickle.load(f) with open(FLAGS.info_path.replace('.pkl', '.test.pkl'), 'rb') as f: test_infos = pickle.load(f) ids2text.init() #min_learning_rate = 1e-5 min_learning_rate = FLAGS.min_learning_rate logging.info('Min learning rate:', min_learning_rate) if FLAGS.decay_target: global decay decay_target = FLAGS.decay_target cmp = 'less' if decay_target == 'loss' else 'greater' if not decay: logging.info('Weight decay target:', decay_target) if FLAGS.num_learning_rate_weights <= 1: decay = WeightDecay(patience=FLAGS.decay_patience, decay=FLAGS.decay_factor, cmp=cmp, #decay_start_epoch=FLAGS.decay_start_epoch, decay_start_epoch=1, min_learning_rate=min_learning_rate) else: wnames = ['if', 'whether'] decay = WeightsDecay(patience=FLAGS.decay_patience, decay=FLAGS.decay_factor, cmp=cmp, min_learning_rate=min_learning_rate, names=wnames) ## worse then just simply argmax # def to_predict(logits): # predicts = np.zeros([len(logits)]) # probs = gezi.softmax(logits, 1) # for i, prob in enumerate(probs): # if prob[2] > 0.4: # predicts[i] = 2 # else: # predicts[i] = np.argmax(prob[:-1]) # return predicts def calc_acc(labels, predicts, ids, model_path): names = ['acc', 'acc_if', 'acc_whether', 'acc_na'] predicts = np.argmax(predicts, 1) #predicts = to_predict(predicts) acc = np.mean(np.equal(labels, predicts)) # na index is set to 2 acc_na = np.mean(np.equal(np.equal(labels, 2), np.equal(predicts, 2))) predicts1, predicts2, labels1, labels2 = [], [], [], [] for i, id in enumerate(ids): type = valid_infos[id]['type'] if type == 0: predicts1.append(predicts[i]) labels1.append(labels[i]) else: predicts2.append(predicts[i]) labels2.append(labels[i]) acc_if = np.mean(np.equal(labels1, predicts1)) acc_whether = np.mean(np.equal(labels2, predicts2)) vals = [acc, acc_if, acc_whether, acc_na] if model_path is None: if FLAGS.decay_target: target = acc if FLAGS.num_learning_rate_weights <= 1 else [acc_if, acc_whether] weights = decay.add(target) if FLAGS.num_learning_rate_weights > 1: vals += list(weights) names += [f'weights/{name}' for name in wnames] return vals, names def calc_loss(labels, predicts, ids, model_path=None): """ softmax loss, mean loss and per attr loss """ names = ['loss', 'loss_if', 'loss_wether'] predicts1, predicts2, labels1, labels2 = [], [], [], [] for i, id in enumerate(ids): type = valid_infos[id]['type'] if type == 0: predicts1.append(predicts[i]) labels1.append(labels[i]) else: predicts2.append(predicts[i]) labels2.append(labels[i]) loss = log_loss(labels, predicts) loss_if = log_loss(labels1, predicts1) loss_wether = log_loss(labels2, predicts2) vals = [loss, loss_if, loss_wether] if model_path is None: if FLAGS.decay_target and FLAGS.decay_target == 'loss': if FLAGS.num_learning_rate_weights <= 1: target = loss elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: target = losses else: raise f'Unsupported weights number{FLAGS.num_learning_rate_weights}' weights = decay.add(target) return vals, names def evaluate(labels, predicts, ids=None, model_path=None): vals, names = calc_acc(labels, predicts, ids, model_path) probs = gezi.softmax(predicts) vals_loss, names_loss = calc_loss(labels, probs, ids, model_path) vals += vals_loss names += names_loss return vals, names valid_write = None infer_write = None valid_names = ['id', 'label', 'predict', 'score', 'candidates', 'type', 'query', 'passage', 'query_seg', 'passage_seg'] def write(id, label, predict, out, out2=None, is_infer=False): infos = valid_infos if not is_infer else test_infos info = infos[id] score = gezi.softmax(predict) predict = np.argmax(predict) candidates = info['candidates'].split('|') if label is not None: label = candidates[label] predict = candidates[predict] #.. on P40 not ok.. WHY ? FIXME # print(id, label, predict, score, gezi.csv(info['candidates']), info['type'], gezi.csv(info['query_str']), gezi.csv(info['passage_str']), # gezi.csv(ids2text.ids2text(info['query'], sep='|')), gezi.csv(ids2text.ids2text(info['passage'], sep='|')), sep=',', file=out) # File "/home/slurm/job/tmp/job-58821/wenzheng/projects/ai2018/reader/evaluate.py", line 178, in write # print(id, label, predict, score, gezi.csv(info['candidates']), info['type'], gezi.csv(info['query_str']), gezi.csv(info['passage_str']), sep=',', file=out) # UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256) print(id, label, predict, score, gezi.csv(info['candidates']), info['type'], gezi.csv(info['query_str']), gezi.csv(info['passage_str']), sep=',', file=out) #print(id, label, predict, score, sep=',', file=out) if is_infer: #for contest print(id, predict, sep='\t', file=out2) def valid_write(id, label, predict, out): return write(id, label, predict, out) def infer_write(id, predict, out, out_debug): return write(id, None, predict, out_debug, out, is_infer=True) ================================================ FILE: projects/ai2018/reader/infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tf.enable_eager_execution() import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags #from algos.model import * from algos.loss import criterion import algos.model as base from dataset import Dataset import evaluate as ev from prepare.text2ids import text2ids from wenzheng.utils import ids2text import numpy as np from algos.config import CLASSES def main(_): melt.apps.init() #ev.init() model = getattr(base, FLAGS.model)() model.debug = True melt.eager.restore(model) ids2text.init() vocab = ids2text.vocab # query = '阿里和腾讯谁更流氓' # passage = '腾讯比阿里流氓' # query = 'c罗和梅西谁踢球更好' # passage = '梅西比c罗踢的好' query = '青光眼遗传吗' passage = '青光眼有遗传因素的,所以如果是您的父亲是青光眼的话,那我们在这里就强烈建议您,自己早期到医院里面去做一个筛查,测一下,看看眼,尤其是检查一下视野,然后视网膜的那个情况,都做一个早期的检查。' qids = text2ids(query) qwords = [vocab.key(qid) for qid in qids] print(qids) print(ids2text.ids2text(qids)) pids = text2ids(passage) pwords = [vocab.key(pid) for pid in pids] print(pids) print(ids2text.ids2text(pids)) x = { 'query': [qids], 'passage': [pids], 'type': [0], } logits = model(x)[0] probs = gezi.softmax(logits) print(probs) print(list(zip(CLASSES, [x for x in probs]))) predict = np.argmax(logits, -1) print('predict', predict, CLASSES[predict]) # print words importance scores word_scores_list = model.pooling.word_scores for word_scores in word_scores_list: print(list(zip(pwords, word_scores[0].numpy()))) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/prepare/README.md ================================================ ./gen-seg.py is for dureader corpus seg (~/data/dureader/raw/corpus/corpus.json) ================================================ FILE: projects/ai2018/reader/prepare/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/reader/valid.json', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/reader/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('limit', 5000, '') flags.DEFINE_integer('max_examples', None, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_bool('use_char', None, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_bool('add_start_end_', True, '') import traceback import multiprocessing from sklearn.utils import shuffle import numpy as np import glob import json from gezi import Vocabulary import gezi import melt from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) vocab = None char_vocab = None pos_vocab = None def get_mode(path): if 'train' in path: return 'train' elif 'valid' in path: return 'valid' elif 'test' in path: return 'test' elif '.pm' in path: return 'pm' return 'train' def is_negative(candidate): negs = ['不', '无', '没'] for neg in negs: if neg in candidate: return True return False # neg, pos, uncertain def sort_alternatives(alternatives, query): candidates = [None] * 3 type = 0 l = [] alternatives = alternatives.split('|') # TODO check strip.. for answer for candidate_ in alternatives: # if candidate != candidate.strip(): # print(query, alternatives) candidate = candidate_.strip() if candidate == '无法确定': candidates[2] = candidate_ else: l.append(candidate_) if candidates[2] == None: l = [] for candidate_ in alternatives: candidate = candidate_.strip() if ('无法' in candidate or '确定' in candidate or '确认' in candidate) or candidate == 'wfqd': candidates[2] = candidate_ else: l.append(candidate_) if candidates[2] == None: candidates[2] = l[-1] if len(l) == 0: candidates[0] = candidates[2] candidates[1] = candidates[2] return candidates, type # TODO "alternatives": "不能|无法确定" if only 2 possbiles now make another as 无法确定 but might just set to '' and # when inference only consider prob of 不能 and 无法确定 mask '' to 0 prob if len(l) == 1: if l[0].strip().startswith('不') or l[0].strip().startswith('无') \ or l[0].strip().startswith('假') \ or l[0].strip().startswith('坏'): candidates[0] = l[0] candidates[1] = candidates[-1] else: candidates[0] = candidates[-1] candidates[1] = l[0] return candidates, type if l[0].strip() == '是' and l[1].strip() == '否': candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0].strip() == '否' and l[1].strip() == '是': candidates[0] = l[0] candidates[1] = l[1] return candidates, type if l[0].strip().startswith('真') and l[1].strip().startswith('假') or l[0].strip().startswith('好') and l[1].strip().startswith('坏'): candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0].strip().startswith('假') and l[1].strip().startswith('真') or l[0].strip().startswith('坏') and l[1].strip().startswith('好'): candidates[0] = l[0] candidates[1] = l[1] return candidates, type if l[0] in l[1]: candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[1] in l[0]: candidates[0] = l[0] candidates[1] = l[1] return candidates, type if is_negative(l[0]): candidates[0] = l[0] candidates[1] = l[1] return candidates, type elif is_negative(l[1]): candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0] in query and l[1] not in query: candidates[1] = l[0] candidates[0] = l[1] return candidates, type if l[0] not in query and l[1] in query: candidates[0] = l[0] candidates[1] = l[1] return candidates, type # #assert l[0] in query and l[1] in query, f'{l[0]},{l[1]},{query}' # if not (l[0] in query and l[1] in query): # return [], type type = 1 # TODO not ok for like 跑步好,慢走好 跑步和慢走哪个好? pos1 = query.lower().find(l[0].strip().lower()) if pos1 < 0: pos1 = query.lower().find(l[0][:-1].strip().lower()) pos2 = query.lower().find(l[1].strip().lower()) if pos2 < 0: pos2 = query.lower().find(l[1][:-1].strip().lower()) if pos1 < 0: pos1 = 10000 if pos2 < 0: pos2 = 10000 if pos1 <= pos2: # candidates[0] = l[0] # candidates[1] = l[1] candidates[0] = l[1] candidates[1] = l[0] else: # candidates[0] = l[1] # candidates[1] = l[0] candidates[0] = l[0] candidates[1] = l[1] return candidates, type def get_char_ids(words): if FLAGS.use_char: words = words[:FLAGS.limit] chars = [list(word) for word in words] char_ids = np.zeros([len(words), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) if np.sum(char_ids) == 0: print('------------------------bad id', id) print(content_ids) print(words) exit(0) else: char_ids = [0] return char_ids def get_pos_ids(pos): if pos_vocab: assert pos pos = pos[:FLAGS.word_limit] pos_ids = [pos_vocab.id(x) for x in pos] else: pos_ids = [0] return pos_ids def build_features(file_): mode = get_mode(FLAGS.input) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}.tfrecord'.format(mode, os.path.basename(file_).split('_')[-1]) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('infile', file_, 'out_file', out_file) max_len = 0 num = 0 num_whether = 0 answer_len = 0 with melt.tfrecords.Writer(out_file) as writer: for line in open(file_): try: m = json.loads(line.rstrip('\n')) url = m['url'] alternatives = m['alternatives'] query_id = int(m['query_id']) passage = m['passage'] query = m['query'] # if query_id != 254146: # continue if not 'answer' in m: answer = 'unknown' else: answer = m['answer'] # candidates is neg,pos,uncertain # type 0 means true or false, type 1 means wehter candidates, type = sort_alternatives(alternatives, query) assert candidates is not None answer_id = 0 for i, candiate in enumerate(candidates): if candiate == answer: answer_id = i assert candidates is not None candidates_str = '|'.join(candidates) pos = None words = m['seg_query'].split('\x09') if '|' in words[0]: try: l = [x.split('|') for x in words] words, pos = list(zip(*l)) except Exception: print(m['seg_query'].split('\x09')) if FLAGS.add_start_end_: words = gezi.add_start_end(words) if pos: if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) query_ids = [vocab.id(x) for x in words] query_pos_ids = get_pos_ids(pos) query_char_ids = get_char_ids(words) pos = None words = m['seg_passage'].split('\x09') if '|' in words[0]: try: l = [x.split('|') for x in words] words, pos = list(zip(*l)) except Exception: print(m['seg_passage'].split('\x09')) if FLAGS.add_start_end_: words = gezi.add_start_end(words) if pos: if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) passage_ids = [vocab.id(x) for x in words] passage_pos_ids = get_pos_ids(pos) passage_char_ids = get_char_ids(words) alternatives_list = alternatives.split('|') alternatives_segs = m['seg_alternatives'].split('|') for i, candidate in enumerate(candidates): index = alternatives_list.index(candiate) segs = alternatives_segs[index] words = segs.split('\x09') pos = None if '|' in words[0]: l = [x.split('|') for x in words] words, pos = list(zip(*l)) if FLAGS.add_start_end_: words = gezi.add_start_end(words) if pos: if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) if i == 0: candidate_neg_ids = [vocab.id(x) for x in words] candidate_neg_pos_ids = get_pos_ids(pos) candidate_neg_char_ids = get_char_ids(words) elif i == 1: candidate_pos_ids = [vocab.id(x) for x in words] candidate_pos_pos_ids = get_pos_ids(pos) candidate_pos_char_ids = get_char_ids(words) else: # 无法确定 candidate_na_ids = [vocab.id(x) for x in words] candidate_na_pos_ids = get_pos_ids(pos) candidate_na_char_ids = get_char_ids(words) if len(candidate_pos_ids) > answer_len: answer_len = len(candidate_pos_ids) print(answer_len) if len(candidate_neg_ids) > answer_len: answer_len = len(candidate_neg_ids) print(answer_len) assert len(query_ids), line assert len(passage_ids), line limit = FLAGS.limit if len(passage_ids) > limit: print('long line', len(passage_ids), query_id) if len(passage_ids) > max_len: max_len = len(passage_ids) print('max_len', max_len) query_ids = query_ids[:limit] passage_ids = passage_ids[:limit] feature = { 'id': melt.bytes_feature(str(query_id)), 'url': melt.bytes_feature(url), 'alternatives': melt.bytes_feature(alternatives), 'candidates': melt.bytes_feature(candidates_str), 'passage': melt.int64_feature(passage_ids), 'passage_char': melt.int64_feature(passage_char_ids), 'passage_pos': melt.int64_feature(passage_pos_ids), 'passage_str': melt.bytes_feature(passage), 'query': melt.int64_feature(query_ids), 'query_char': melt.int64_feature(query_char_ids), 'query_pos': melt.int64_feature(query_pos_ids), 'query_str': melt.bytes_feature(query), 'candidate_neg': melt.int64_feature(candidate_neg_ids), 'candidate_neg_char': melt.int64_feature(candidate_neg_char_ids), 'candidate_neg_pos': melt.int64_feature(candidate_neg_pos_ids), 'candidate_pos': melt.int64_feature(candidate_pos_ids), 'candidate_pos_char': melt.int64_feature(candidate_pos_char_ids), 'candidate_pos_pos': melt.int64_feature(candidate_pos_pos_ids), 'candidate_na': melt.int64_feature(candidate_na_ids), 'candidate_na_char': melt.int64_feature(candidate_na_char_ids), 'candidate_na_pos': melt.int64_feature(candidate_na_pos_ids), 'answer': melt.int64_feature(answer_id), 'answer_str': melt.bytes_feature(answer), 'type': melt.int64_feature(type) } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) #if not candidates: if num % 1000 == 0: print(num, query_id, query, type) print(alternatives, candidates) print(answer, answer_id) writer.write(record) num += 1 if type: num_whether += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(passage_ids) if FLAGS.max_examples and num >= FLAGS.max_examples: break except Exception: print(traceback.format_exc(), file=sys.stderr) print('-----------', query) print(alternatives) #break print('num_wehter:', num_whether) def main(_): assert FLAGS.use_char is not None global vocab, char_vocab, pos_vocab vocab = gezi.Vocabulary(FLAGS.vocab_) print('vocab size:', vocab.size()) char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) print('char vocab size:', char_vocab.size()) pos_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'pos_vocab.txt') if os.path.exists(pos_vocab_file): pos_vocab = Vocabulary(pos_vocab_file) print('pos vocab size:', pos_vocab.size()) if os.path.isfile(FLAGS.input): build_features(FLAGS.input) else: files = glob.glob(FLAGS.input + '/*') pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(build_features, files) pool.close() pool.join() # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) mode = get_mode(FLAGS.input) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/prepare/gen-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dureader corpus /home/gezi/data/dureader/raw/trainset/*.json # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import json import traceback START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text): words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] print(' '.join(words)) num = 0 num_errs = 0 for line in sys.stdin: if num % 10000 == 0: print(num, 'num_errs:', num_errs, file=sys.stderr) line = line.rstrip() # try: m = json.loads(line) question = m['question'] seg(question) answers = m['answers'] for answer in answers: seg(answer) docs = m['documents'] for doc in docs: title = doc['title'] seg(title) for paragrah in doc['paragraphs']: seg(paragrah) num += 1 if num == FLAGS.max_lines: break # except Exception: # num_errs += 1 # print(traceback.format_exc()) ================================================ FILE: projects/ai2018/reader/prepare/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') flags.DEFINE_integer('max_words', 200000, '') flags.DEFINE_bool('add_additional', True, 'add additional words from embedding file, this is by default for word') flags.DEFINE_string('sort_by', 'count', '') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab print('input_vocab', input_vocab) dir_ = os.path.dirname(FLAGS.input_vocab) lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) try: vector = list(map(float, array[-vec_size:])) except Exception: print(i, line) continue if word.lower() in normed_ori_set: embedding_dict[word] = vector else: embedding_dict[word.lower()] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if FLAGS.sort_by == 'count': print('sort by count') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) else: print('sort by knowldege') words_knowledge = [] emb_mat_knowledge = [] words_no_knowledge = [] emb_mat_no_knowledge = [] with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat_knowledge.append(np.array(embedding_dict[word])) words_knowledge.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat_no_knowledge.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words_no_knowledge.append(word) # elif FLAGS.type == 'scratch': # if count >= FLAGS.min_count: # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) # else: # #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) # emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # words.append(word) # elif FLAGS.type == 'only': # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) #if FLAGS.sort_by == 'knowledge': words += words_no_knowledge emb_mat += emb_mat_no_knowledge words += words_knowledge emb_mat += emb_mat_knowledge words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) if FLAGS.add_additional: for word in embedding_dict: if word not in words_set: words_set.add(word) words.append(word) emb_mat.append(np.array(embedding_dict[word])) if len(words) > FLAGS.max_words: break print('num words after adding additional', len(words)) out_vocab = os.path.join(dir_, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) print('out_vocab', out_vocab) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(dir_, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) print('out_mat', out_mat) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/prepare/pre-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import six if FLAGS.seg_method == 'char': assert not six.PY2 import sys,os import numpy as np import gezi #assert gezi.env_has('JIEBA_POS') from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback import json START_WORD = '' END_WORD = '' counter = WordCounter(most_common=0, min_count=1) counter2 = WordCounter(most_common=0, min_count=1) print('seg_method:', FLAGS.seg_method, file=sys.stderr) type = None if gezi.env_has('SENTENCE_PIECE'): assert FLAGS.sp_path gezi.segment.init_sp(FLAGS.sp_path) def seg_(text): l = gezi.cut(text, type) if type != 'word': for x, y in l: counter.add(x) counter2.add(y) words = ['%s|%s' % (x, y) for x,y in l] else: if FLAGS.seg_method == 'char': l2 = [] for i, w in enumerate(l): for ch in w: counter.add(ch) counter2.add(str(i)) l2.append((ch, i)) words = ['%s|%d' % (x, y) for x,y in l2] else: words = l for w in words: counter.add(w) return words def seg(m, out): # query counter.add(START_WORD) counter.add(END_WORD) # passage counter.add(START_WORD) counter.add(END_WORD) words = seg_(m['query']) m['seg_query'] = '\x09'.join(words) words = seg_(m['passage']) m['seg_passage'] = '\x09'.join(words) l = [] for x in m['alternatives'].split('|'): words = seg_(x) l.append('\x09'.join(words)) m['seg_alternatives'] = '|'.join(l) if six.PY2: print(json.dumps(m, ensure_ascii=False).encode('utf8'), file=out) else: print(json.dumps(m, ensure_ascii=False), file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.json', '.seg.%s.json' % FLAGS.name) vocab = ifile.replace('.json', '.seg.%s.vocab' % FLAGS.name) type = 'word' vocab2 = None if 'pos' in FLAGS.name or FLAGS.seg_method == 'char': vocab2 = ifile.replace('.json', '.pos.%s.vocab' % FLAGS.name) if 'pos' in FLAGS.name: type = 'pos' elif 'ner' in FLAGS.name: vocab2 = ifile.replace('.json', '.ner.%s.vocab' % FLAGS.name) type = 'ner' fm = 'w' ids_set = set() # if os.path.exists(ofile): # fm = 'a' # for line in open(ofile): # m = json.loads(line.rstrip('\n')) # ids_set.add(m['query_id']) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: lines = open(ifile).readlines() for i in tqdm(range(len(lines)), ascii=True): m = json.loads(lines[i].rstrip('\n')) id = m['query_id'] if id in ids_set: continue try: seg(m, out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab) if vocab2: counter2.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(lines)) ================================================ FILE: projects/ai2018/reader/prepare/run-char-ft.sh ================================================ dir=./mount/temp/ai2018/reader/tfrecords/char.ft emb=./mount/data/my-embedding.v1/fastText-dureader-char/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim ================================================ FILE: projects/ai2018/reader/prepare/run-char-glove.sh ================================================ dir=./mount/temp/ai2018/reader/tfrecords/char.glove emb=./mount/data/my-embedding.v1/GloVe-dureader-char/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim ================================================ FILE: projects/ai2018/reader/prepare/run-noemb.sh ================================================ dir=$1 vocab=$dir/vocab.txt python ./gen-records.py --input $dir/test.json --use_char=1 --vocab_=$vocab python ./gen-records.py --input $dir/train.corpus --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/reader/prepare/run-word-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/reader/tfrecords/word.jieba.ft emb=./mount/data/my-embedding.v1/fastText-dureader-basic/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --max_words=400000 sh ./run-noemb.sh $dir #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/reader/prepare/run-word-jieba-glove.sh ================================================ dir=./mount/temp/ai2018/reader/tfrecords/word.jieba.glove emb=./mount/data/my-embedding.v1/GloVe-dureader-basic/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --max_words=400000 sh ./run-noemb.sh $dir #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/reader/prepare/to-simplify-dureader.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dureader corpus /home/gezi/data/dureader/raw/trainset/*.json # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys,os import numpy as np import gezi import json import traceback START_WORD = '' END_WORD = '' num = 0 num_errs = 0 for line in sys.stdin: line = line.rstrip() # try: m = json.loads(line) m['question'] = gezi.to_simplify(m['question']) for i in range(len(m['answers'])): m['answers'][i] = gezi.to_simplify(m['answers'][i]) for i in range(len(m['documents'])): m['documents'][i]['title'] = gezi.to_simplify(m['documents'][i]['title']) for j in range(len(m['documents'][i]['paragraphs'])): m['documents'][i]['paragraphs'][j] = gezi.to_simplify(m['documents'][i]['paragraphs'][j]) print(json.dumps(m, ensure_ascii=False).encode('utf8')) ================================================ FILE: projects/ai2018/reader/prepare/to-simplify.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tqdm import tqdm import pandas as pd import gezi import traceback import json import six #you may need to ln ~/soft/bseg/ data,conf,lib to current path and run in pyenv(python2) assert six.PY2, 'must using py2 env to do simplify' for line in open(sys.argv[1]): m = json.loads(line.rstrip('\n')) m['passage'] = gezi.to_simplify(m['passage']) m['query'] = gezi.to_simplify(m['query']) m['alternatives'] = gezi.to_simplify(m['alternatives']) print(json.dumps(m, ensure_ascii=False).encode('utf8')) ================================================ FILE: projects/ai2018/reader/prepare-unkvocab.sh ================================================ cd ./prepare/ sh run-unkvocab.sh cd .. python ./read-records.py --type=dump ================================================ FILE: projects/ai2018/reader/prepare.sh ================================================ cd ./prepare/ sh run.sh cd .. python ./read-records.py --type=dump ================================================ FILE: projects/ai2018/reader/prepare.v1/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os infile = './mount/data/ai2018/reader/train.json' import json for line in open(infile): m = json.loads(line.rstrip()) print(m['query']) print(m['passage']) ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/reader/valid.json', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/reader/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('limit', 5000, '') flags.DEFINE_integer('max_examples', None, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_bool('use_char', False, '') import traceback import multiprocessing from sklearn.utils import shuffle import numpy as np import glob import json from gezi import Vocabulary import gezi import melt from text2ids import text2ids as text2ids_ from wenzheng.utils import text2ids from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) def get_mode(path): if 'train' in path: return 'train' elif 'valid' in path: return 'valid' elif 'test' in path: return 'test' elif '.pm' in path: return 'pm' return 'train' def is_negative(candidate): negs = ['不', '无', '没'] for neg in negs: if neg in candidate: return True return False # neg, pos, uncertain def sort_alternatives(alternatives, query): candidates = [None] * 3 type = 0 l = [] alternatives = alternatives.split('|') # TODO check strip.. for answer for candidate_ in alternatives: # if candidate != candidate.strip(): # print(query, alternatives) candidate = candidate_.strip() if candidate == '无法确定': candidates[2] = candidate_ else: l.append(candidate_) if candidates[2] == None: l = [] for candidate_ in alternatives: candidate = candidate_.strip() if ('无法' in candidate or '确定' in candidate or '确认' in candidate) or candidate == 'wfqd': candidates[2] = candidate_ else: l.append(candidate_) if candidates[2] == None: candidates[2] = l[-1] if len(l) == 0: candidates[0] = candidates[2] candidates[1] = candidates[2] return candidates, type # TODO "alternatives": "不能|无法确定" if only 2 possbiles now make another as 无法确定 but might just set to '' and # when inference only consider prob of 不能 and 无法确定 mask '' to 0 prob if len(l) == 1: if l[0].strip().startswith('不') or l[0].strip().startswith('无') \ or l[0].strip().startswith('假') \ or l[0].strip().startswith('坏'): candidates[0] = l[0] candidates[1] = candidates[-1] else: candidates[0] = candidates[-1] candidates[1] = l[0] return candidates, type if l[0].strip() == '是' and l[1].strip() == '否': candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0].strip() == '否' and l[1].strip() == '是': candidates[0] = l[0] candidates[1] = l[1] return candidates, type if l[0].strip().startswith('真') and l[1].strip().startswith('假') or l[0].strip().startswith('好') and l[1].strip().startswith('坏'): candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0].strip().startswith('假') and l[1].strip().startswith('真') or l[0].strip().startswith('坏') and l[1].strip().startswith('好'): candidates[0] = l[0] candidates[1] = l[1] return candidates, type if l[0] in l[1]: candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[1] in l[0]: candidates[0] = l[0] candidates[1] = l[1] return candidates, type if is_negative(l[0]): candidates[0] = l[0] candidates[1] = l[1] return candidates, type elif is_negative(l[1]): candidates[0] = l[1] candidates[1] = l[0] return candidates, type if l[0] in query and l[1] not in query: candidates[1] = l[0] candidates[0] = l[1] return candidates, type if l[0] not in query and l[1] in query: candidates[0] = l[0] candidates[1] = l[1] return candidates, type # #assert l[0] in query and l[1] in query, f'{l[0]},{l[1]},{query}' # if not (l[0] in query and l[1] in query): # return [], type type = 1 # TODO not ok for like 跑步好,慢走好 跑步和慢走哪个好? pos1 = query.lower().find(l[0].strip().lower()) if pos1 < 0: pos1 = query.lower().find(l[0][:-1].strip().lower()) pos2 = query.lower().find(l[1].strip().lower()) if pos2 < 0: pos2 = query.lower().find(l[1][:-1].strip().lower()) if pos1 < 0: pos1 = 10000 if pos2 < 0: pos2 = 10000 if pos1 <= pos2: # candidates[0] = l[0] # candidates[1] = l[1] candidates[0] = l[1] candidates[1] = l[0] else: # candidates[0] = l[1] # candidates[1] = l[0] candidates[0] = l[0] candidates[1] = l[1] return candidates, type def build_features(file_): mode = get_mode(FLAGS.input) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}_{2}.tfrecord'.format(mode, os.path.basename(os.path.dirname(file_)), os.path.basename(file_)) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('infile', file_, 'out_file', out_file) num = 0 num_whether = 0 answer_len = 0 with melt.tfrecords.Writer(out_file) as writer: for line in open(file_): try: m = json.loads(line.rstrip('\n')) url = m['url'] alternatives = m['alternatives'] query_id = int(m['query_id']) passage = m['passage'] query = m['query'] # if query_id != 254146: # continue if not 'answer' in m: answer = 'unknown' else: answer = m['answer'] # candidates is neg,pos,uncertain # type 0 means true or false, type 1 means wehter candidates, type = sort_alternatives(alternatives, query) assert candidates is not None answer_id = 0 for i, candiate in enumerate(candidates): if candiate == answer: answer_id = i assert candidates is not None candidates_str = '|'.join(candidates) query_ids = text2ids_(query) passage_ids = text2ids_(passage) candidate_neg_ids = text2ids_(candidates[0]) candidate_pos_ids = text2ids_(candidates[1]) candidate_na_ids = text2ids_('无法确定') if len(candidate_pos_ids) > answer_len: answer_len = len(candidate_pos_ids) print(answer_len) if len(candidate_neg_ids) > answer_len: answer_len = len(candidate_neg_ids) print(answer_len) assert len(query_ids), line assert len(passage_ids), line limit = FLAGS.limit if len(passage_ids) > limit: print('long line', len(passage_ids), query_id) query_ids = query_ids[:limit] passage_ids = passage_ids[:limit] feature = { 'id': melt.bytes_feature(str(query_id)), 'url': melt.bytes_feature(url), 'alternatives': melt.bytes_feature(alternatives), 'candidates': melt.bytes_feature(candidates_str), 'passage': melt.int64_feature(passage_ids), 'passage_str': melt.bytes_feature(passage), 'query': melt.int64_feature(query_ids), 'query_str': melt.bytes_feature(query), 'candidate_neg': melt.int64_feature(candidate_neg_ids), 'candidate_pos': melt.int64_feature(candidate_pos_ids), 'candidate_na': melt.int64_feature(candidate_na_ids), 'answer': melt.int64_feature(answer_id), 'answer_str': melt.bytes_feature(answer), 'type': melt.int64_feature(type) } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) #if not candidates: if num % 1000 == 0: print(num, query_id, query, type) print(alternatives, candidates) print(answer, answer_id) writer.write(record) num += 1 if type: num_whether += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(passage_ids) if FLAGS.max_examples and num >= FLAGS.max_examples: break except Exception: print(traceback.format_exc(), file=sys.stderr) print('-----------', query) print(alternatives) #break print('num_wehter:', num_whether) def main(_): text2ids.init(FLAGS.vocab_) print('to_lower:', FLAGS.to_lower, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) print(text2ids.ids2text(text2ids_('傻逼脑残B'))) print(text2ids_('傻逼脑残B')) print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) #exit(0) if os.path.isfile(FLAGS.input): build_features(FLAGS.input) else: files = glob.glob(FLAGS.input + '/*') pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(build_features, files) pool.close() pool.join() # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) mode = get_mode(FLAGS.input) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dureader corpus /home/gezi/data/dureader/raw/trainset/*.json # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import json START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text): words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] print(' '.join(words)) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) line = line.rstrip() m = json.loads(line) question = m['question'] seg(question) answers = m['answers'] for answer in answers: seg(answer) docs = m['documents'] for doc in docs: title = doc['title'] seg(title) for paragrah in doc['paragraphs']: seg(paragrah) num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-test-unkvocab.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/reader/test.json --unk_vocab_size=100 ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/reader/test.json ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-train-unkvocab.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/reader/train/ --unk_vocab_size=100 ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/reader/train/ #python ./gen-records.py --input ./mount/data/ai2018/reader/train.json ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-valid-unkvocab.sh ================================================ python ./gen-records.py --unk_vocab_size=100 ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/reader/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) import sys,os #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() #text = text.lower() words = segmentor.Segment(text, FLAGS.seg_method) if num % 10000 == 0: print(text, '|'.join(words), len(words), file=sys.stderr) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/reader/prepare.v1/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/reader/prepare.v1/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/reader/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('dir', './mount/temp/ai2018/reader/tfrecord/', '') flags.DEFINE_string('emb', './mount/temp/ai2018/reader/vectors.txt', '') flags.DEFINE_integer('min_count', 10, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): input_vocab = FLAGS.input_vocab lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/prepare.v1/run-char.sh ================================================ sh ./gen-valid.sh --seg_method=char sh ./gen-test.sh --seg_method=char sh ./gen-train.sh --seg_method=char ================================================ FILE: projects/ai2018/reader/prepare.v1/run-unkvocab.sh ================================================ python ./merge-emb.py sh ./gen-valid-unkvocab.sh sh ./gen-test-unkvocab.sh sh ./gen-train-unkvocab.sh ================================================ FILE: projects/ai2018/reader/prepare.v1/run.sh ================================================ python ./merge-emb.py sh ./gen-valid.sh sh ./gen-test.sh sh ./gen-train.sh ================================================ FILE: projects/ai2018/reader/prepare.v1/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('to_lower', True, '') flags.DEFINE_integer('unk_vocab_size', None, 'none means not to use, and if use can set like 10000') import sys import os #from projects.ai2018.reader.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng def text2ids(text): wenzheng.utils.text2ids.init() #text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, pad=False, unk_vocab_size=FLAGS.unk_vocab_size) ================================================ FILE: projects/ai2018/reader/prepare.v1/to-simplify.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tqdm import tqdm import pandas as pd import gezi import traceback import six assert six.PY2, 'must using py2 env to do simplify' key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1], lineterminator='\n') contents = df[key].values num_modified = 0 num_errs = 0 for i in tqdm(range(len(contents)), ascii=True): try: scontent = gezi.to_simplify(contents[i]) except Exception: num_errs += 1 print(traceback.format_exc()) continue if scontent != contents[i]: # print('------------------', i) # print(contents[i]) # print(scontent) contents[i] = scontent num_modified += 1 df[key] = contents print('modify ratio', num_modified / len(df)) print('num_errs', num_errs) df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/reader/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file inference.py # \author chenghuige # \date 2018-02-05 20:05:25.123740 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/temp/ai2018/sentiment/tfrecord/valid/*record,', '') flags.DEFINE_integer('batch_size_', 512, '') flags.DEFINE_string('type', 'debug', '') flags.DEFINE_string('base', './mount/temp/ai2018/sentiment/tfrecord/', '') #flags.DEFINE_integer('fold', None, '') import tensorflow as tf tf.enable_eager_execution() import sys, os from sklearn import metrics import pandas as pd import numpy as np import gezi import pickle from wenzheng.utils import ids2text import melt logging = melt.logging from dataset import Dataset from tqdm import tqdm # TODO by default save all ? so do not need to change the code ? # _asdict() https://stackoverflow.com/questions/26180528/python-named-tuple-to-dictionary # err... valid and test data share same id... def deal(dataset, infos): for x, _ in tqdm(dataset, ascii=True): for key in x: x[key] = x[key].numpy() if type(x[key][0]) == bytes: x[key] = gezi.decode(x[key]) ids = x['id'] for j in range(len(ids)): infos[ids[j]] = {} for key in x: infos[ids[j]][key] = x[key][j] def main(_): base = FLAGS.base logging.set_logging_path('./mount/tmp/') vocab_path = f'{base}/vocab.txt' ids2text.init(vocab_path) FLAGS.vocab = f'{base}/vocab.txt' # FLAGS.length_index = 2 # FLAGS.buckets = '100,400' # FLAGS.batch_sizes = '64,64,32' input_ = FLAGS.input if FLAGS.type == 'test': input_ = input_.replace('valid', 'test') inputs = gezi.list_files(input_) inputs.sort() if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] if FLAGS.type == 'debug': print('type', FLAGS.type, 'inputs', inputs, file=sys.stderr) dataset = Dataset('valid') dataset = dataset.make_batch(FLAGS.batch_size_, inputs) print('dataset', dataset) timer = gezi.Timer('read record') for i, (x, y) in enumerate(dataset): # if i % 10 == 1: # print(x['id']) # print(x['content'][0]) # print(ids2text.ids2text(x['content'][0], sep='|')) # print(x['content']) # print(type(x['id'].numpy()[0]) == bytes) # break x['id'] = gezi.decode(x['id'].numpy()) x['content_str'] = gezi.decode(x['content_str'].numpy()) for j, id in enumerate(x['id']): if id == '573': print(id, x['content_str'][j]) elif FLAGS.type == 'dump': valid_infos = {} test_infos = {} inputs = gezi.list_files(f'{base}/train/*record') dataset = Dataset('valid') dataset = dataset.make_batch(1, inputs) deal(dataset, valid_infos) print('after valid', len(valid_infos)) inputs = gezi.list_files(f'{base}/test/*record') dataset = Dataset('test') dataset = dataset.make_batch(1, inputs) deal(dataset, test_infos) print('after test', len(test_infos)) for key in valid_infos: print(valid_infos[key]) print(ids2text.ids2text(valid_infos[key]['content'])) break ofile = f'{base}/info.pkl' with open(ofile, 'wb') as out: pickle.dump(valid_infos, out) ofile = ofile.replace('.pkl', '.test.pkl') with open(ofile, 'wb') as out: pickle.dump(test_infos, out) elif FLAGS.type == 'show_info': valid_infos = pickle.load(open(f'{base}/info.pkl', 'rb')) lens = [len(valid_infos[key]['content']) for key in valid_infos] unks = [list(valid_infos[key]['content']).count(1) for key in valid_infos] print('num unks per doc:', sum(unks) / len(unks)) print('num doc with unk ratio:', len([x for x in unks if x != 0]) / len(unks)) print('un unk tokens ratio:', sum(unks) / sum(lens)) print('len max:', np.max(lens)) print('len min:', np.min(lens)) print('len mean:', np.mean(lens)) else: raise ValueError(FLAGS.type) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/tools/check.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file check.py # \author chenghuige # \date 2018-09-10 01:35:31.982045 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import json infos = {} for line in open(sys.argv[1]): m = json.loads(line.rstrip('\n')) query_id = str(m['query_id']) alternatives = m['alternatives'] infos[query_id] = [x.strip() for x in alternatives.split('|')] if len(infos[query_id]) != 3: print(line) for line in open(sys.argv[2]): query_id, predict = line.rstrip('\n').split('\t') if predict not in infos[query_id]: print(query_id, predict) ================================================ FILE: projects/ai2018/reader/tools/check.sh ================================================ python ./check.py ~/data/ai2018/reader/test.json $1 ================================================ FILE: projects/ai2018/reader/tools/cp-best-epochs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '../' if not len(sys.argv) > 1 else sys.argv[1] thre = 0.73 if not len(sys.argv) > 2 else float(sys.argv[2]) key = 'acc' if not len(sys.argv) > 3 else sys.argv[3] print('model_dir', model_dir, 'thre', thre, 'key', key) if key != 'loss': cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics for dir_ in glob.glob(f'{model_dir}/*/*'): if not os.path.isdir(dir_): continue print(dir_) best_score = 0 if key != 'loss' else 1e10 best_epoch = None best_iepoch = None in_epoch_dir = True files = glob.glob(f'{dir_}/epoch/*.valid.metrics') if not files: in_epoch_dir = False files = glob.glob(f'{dir_}/ckpt/*.valid.metrics') for file_ in files: epoch = gezi.strip_suffix(file_, 'valid.metrics').split('-')[1] iepoch = int(float(epoch)) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue if cmp(score, best_score): best_score = score best_epoch = epoch best_iepoch = iepoch print('best_epoch:', best_epoch, 'best_score:', best_score) if best_epoch and best_score > thre: if in_epoch_dir: command = f'ensemble-cp.py {dir_}/epoch/model.ckpt-{best_epoch}' else: command = f'ensemble-cp.py {dir_}/ckpt/ckpt-{best_epoch}' print(command) os.system(command) ================================================ FILE: projects/ai2018/reader/tools/ensemble-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np import gezi idir = sys.argv[1] def parse(input): return np.array([float(x.strip()) for x in input[1:-1].split(' ') if x.strip()]) cadidates = {} results = {} results2 = {} for file_ in glob.glob('%s/*.infer.txt.debug' % idir): df = pd.read_csv(file_) #df = df.sort_index(0) ids = df['id'].values candidates_ = df['candidates'].values scores = df['score'] scores = [parse(score) for score in scores] if not results: candidates = dict(zip(ids, candidates_)) print(file_) scores = gezi.softmax(scores, -1) for id, score in zip(ids, scores): if id not in results: results[id] = score else: results[id] += score # scores2 = gezi.softmax(scores, -1) # for id, score in zip(ids, scores2): # if id not in results2: # results2[id] = score # else: # results2[id] += score ofile = os.path.join(idir, 'ensemble.infer.txt') print('ofile:', ofile) with open(ofile, 'w') as out: for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] print(id, predict, sep='\t', file=out) ================================================ FILE: projects/ai2018/reader/tools/ensemble-valid.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np import gezi idir = sys.argv[1] def parse(input): return np.array([float(x.strip()) for x in input[1:-1].split(' ') if x.strip()]) cadidates = {} m = {} results = {} results2 = {} for file_ in glob.glob('%s/*.valid.csv' % idir): df = pd.read_csv(file_) #df = df.sort_index(0) ids = df['id'].values labels = df['label'].values candidates_ = df['candidates'].values predicts = df['predict'].values scores = df['score'] scores = [parse(score) for score in scores] if not m: m = dict(zip(ids, labels)) candidates = dict(zip(ids, candidates_)) print(file_, np.mean(np.equal(labels, predicts))) for id, score in zip(ids, scores): if id not in results: results[id] = score else: results[id] += score scores2 = gezi.softmax(scores, -1) for id, score in zip(ids, scores2): if id not in results2: results2[id] = score else: results2[id] += score match = 0 for id, score in results.items(): index = np.argmax(score, -1) #print(id, score, index) predict = candidates[id].split('|')[index] if predict == m[id]: match += 1 print('acc_by_logit', match / len(df)) match = 0 for id, score in results2.items(): index = np.argmax(score, -1) predict = candidates[id].split('|')[index] #if predict.strip() == m[id]: if predict == m[id]: match += 1 print('acc_by_prob', match / len(df)) ================================================ FILE: projects/ai2018/reader/tools/ensemble.sh ================================================ python ./ensemble-valid.py $1 python ./ensemble-infer.py $1 ================================================ FILE: projects/ai2018/reader/tools/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-09-15 19:12:03.819848 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np from sklearn.metrics import f1_score df = pd.read_csv(sys.argv[1]) acc = 0 for row in df.iterrows(): acc += int(row[1]['label'] == row[1]['predict']) print('acc:', acc / len(df)) ================================================ FILE: projects/ai2018/reader/tools/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] #chars2 = [x.upper() for x in chars] #chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/reader/tools/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/reader/tools/show-best-epochs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '..' if len(sys.argv) > 1: model_dir = sys.argv[1] key = 'acc' if len(sys.argv) > 2: key = sys.argv[2] print('key', key) if key != 'loss': cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics for dir_ in glob.glob(f'{model_dir}/*/*'): if not os.path.isdir(dir_): continue print(dir_) best_score = 0 if key != 'loss' else 1e10 best_epoch = None files = glob.glob(f'{dir_}/epoch/*.valid.metrics') if not files: files = glob.glob(f'{dir_}/ckpt/*.valid.metrics') for file_ in files: epoch = int(float(gezi.strip_suffix(file_, 'valid.metrics').split('-')[1])) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue if cmp(score, best_score): best_score = score best_epoch = epoch print('best_epoch:', best_epoch, 'best_score:', best_score) ================================================ FILE: projects/ai2018/reader/tools/vocab-add-all-char.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in open(sys.argv[1]): word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') for line in open(sys.argv[2]): word, count = line.rstrip('\n').split('\t') if word not in words: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/reader/tools/vocab-add-char.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in open(sys.argv[1]): word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') min_count = int(sys.argv[3]) for line in open(sys.argv[2]): word, count = line.rstrip('\n').split('\t') if int(count) < min_count: break if word not in words: print(word, count, sep='\t') ================================================ FILE: projects/ai2018/reader/torch-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, io sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8') sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding='utf-8') import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags import torch_algos.model as base from torch_algos.loss import criterion from dataset import Dataset import evaluate as ev import lele def get_num_finetune_words(): if not FLAGS.dynamic_finetune: return FLAGS.num_finetune_words else: #return min(int(melt.epoch() * 1000), FLAGS.num_finetune_words) return int(melt.epoch() * 1000) def freeze_embedding(self, grad_input, grad_output): num_finetune_words = get_num_finetune_words() grad_output[0][num_finetune_words:, :] = 0 def freeze_char_embedding(self, grad_input, grad_output): grad_output[0][FLAGS.num_finetune_chars:, :] = 0 def main(_): FLAGS.num_folds = 10 FLAGS.torch = True melt.apps.init() ev.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] model = getattr(base, FLAGS.model)(embedding) if FLAGS.num_finetune_words: model.encode.embedding.register_backward_hook(freeze_embedding) if FLAGS.num_finetune_chars and FLAGS.use_char and FLAGS.use_char_emb: model.encode.char_embedding.register_backward_hook(freeze_char_embedding) logging.info('model\n', model) param_groups = None if FLAGS.lm_path: #both BiLanguageModel or RNet or MReader.. use self.ecode so ok update encode.embedding.weight... encode.char_embedding.weight.. _, updated_params = lele.load(model, FLAGS.lm_path) if FLAGS.lm_lr_factor != 1: ignored_params = list(map(id, updated_params)) base_params = filter(lambda p: id(p) not in ignored_params, model.parameters()) param_groups = [ {'params': base_params}, {'params': updated_params, 'lr': FLAGS.learning_rate * FLAGS.lm_lr_factor} ] train = melt.apps.get_train() optimizer = None if FLAGS.optimizer == 'noam': # Hard to find optim parmas so not to use currently # optimizer = lele.training.optimizers.NoamOpt(FLAGS.emb_dim, 2, 4000, # torch.optim.Adam(model.parameters(), lr=0, betas=(0.9, 0.98), eps=1e-9)) optimizer = lele.training.optimizers.NoamOpt(128, 2, 4000, torch.optim.Adamax(model.parameters(), lr=0)) train(Dataset, model, criterion, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_names=ev.valid_names, valid_suffix='.valid.csv', infer_debug_names=ev.valid_names, infer_suffix='.infer.txt', write_streaming=True, optimizer=optimizer, param_groups=param_groups ) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/torch_algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/reader/torch_algos/baseline/__init__.py ================================================ ================================================ FILE: projects/ai2018/reader/torch_algos/baseline/baseline.py ================================================ # -*- coding: utf-8 -*- import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F from algos.config import NUM_CLASSES import wenzheng from wenzheng.utils import vocabulary import melt logging = melt.logging import numpy as np import lele class Bow(nn.Module): def __init__(self): super(Bow, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() emb_dim = FLAGS.emb_dim self.embedding = wenzheng.pyt.get_embedding(vocab_size, emb_dim, FLAGS.word_embedding_file, FLAGS.finetune_word_embedding) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.dropout = nn.Dropout(p=(1 - FLAGS.keep_prob)) self.encode = nn.GRU(input_size=emb_dim, hidden_size=self.num_units, batch_first=True, bidirectional=True) #self.logits = nn.Linear(2 * self.num_units, NUM_CLASSES) self.logits = nn.Linear(emb_dim, NUM_CLASSES) def forward(self, input, training=False): x = input['rcontent'] if FLAGS.rcontent else input['content'] #print(x.shape) x = self.embedding(x) x = torch.max(x, 1)[0] x = self.logits(x) return x class Gru(nn.Module): def __init__(self): super(Gru, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() emb_dim = FLAGS.emb_dim self.embedding = wenzheng.pyt.get_embedding(vocab_size, emb_dim, FLAGS.word_embedding_file, FLAGS.finetune_word_embedding) self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.dropout = nn.Dropout(p=(1 - FLAGS.keep_prob)) #self.encode = nn.GRU(input_size=emb_dim, hidden_size=self.num_units, batch_first=True, bidirectional=True) self.encode = lele.layers.StackedBRNN( input_size=emb_dim, hidden_size=self.num_units, num_layers=self.num_layers, dropout_rate=1 - FLAGS.keep_prob, dropout_output=False, concat_layers=False, rnn_type=nn.GRU, padding=FLAGS.rnn_padding, ) ## Support mask #self.pooling = lele.layers.MaxPooling() self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size= 2 * self.num_units, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) # input dim not as convinient as tf.. pre_logits_dim = self.pooling.output_size if FLAGS.use_type: pre_logits_dim += 1 num_types = 2 if FLAGS.use_type_emb: type_emb_dim = 10 self.type_embedding = nn.Embedding(num_types, type_emb_dim) pre_logits_dim += type_emb_dim if FLAGS.use_type_rnn: self.type_embedding = nn.Embedding(num_types, emb_dim) self.logits = nn.Linear(pre_logits_dim, NUM_CLASSES) #self.logits = nn.Linear(emb_dim, NUM_CLASSES) def forward(self, input, training=False): x = input['rcontent'] if FLAGS.rcontent else input['content'] #print(x.shape) x_mask = x.eq(0) if not FLAGS.mask_pooling: x_mask = torch.zeros_like(x, dtype=torch.uint8) x = self.embedding(x) if FLAGS.use_type_rnn: t = self.type_embedding(input['type']).unsqueeze(1) x = torch.cat([t, x], 1) # TODO by default touch.zeros is cpu.. x_mask = torch.cat([torch.zeros(x.size(0), 1, dtype=torch.uint8).cuda(), x_mask], 1) # # prefere to use class over function # #x = F.dropout(x,self.drop_out, training=self.training) # x = self.dropout(x) # #print('training', self.training) # x, _ = self.encode(x) x = self.encode(x, x_mask) #x = F.max_pool2d(x, kernel_size=x.size()[2:]) #x = torch.max(x, 1)[0] x = self.pooling(x, x_mask) if FLAGS.use_type: x = torch.cat([x, input['type'].float().unsqueeze(1)], 1) if FLAGS.use_type_emb: x = torch.cat([x, self.type_embedding(input['type'])], 1) x = self.logits(x) return x # ai challenger baeline # https://github.com/AIChallenger/AI_Challenger_2018/tree/master/Baselines/opinion_questions_machine_reading_comprehension2018_baseline class MwAN(nn.Module): def __init__(self): super(MwAN, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() embedding_size = FLAGS.emb_dim encoder_size = FLAGS.rnn_hidden_size self.dropout = nn.Dropout(p=(1 - FLAGS.keep_prob)) self.embedding = wenzheng.pyt.get_embedding(vocab_size, emb_dim, FLAGS.word_embedding_file, FLAGS.finetune_word_embedding) self.q_encoder = nn.GRU(input_size=embedding_size, hidden_size=encoder_size, batch_first=True, bidirectional=True) self.p_encoder = nn.GRU(input_size=embedding_size, hidden_size=encoder_size, batch_first=True, bidirectional=True) self.a_encoder = nn.GRU(input_size=embedding_size, hidden_size=int(embedding_size / 2), batch_first=True, bidirectional=True) self.a_attention = nn.Linear(embedding_size, 1, bias=False) # Concat Attention self.Wc1 = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.Wc2 = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vc = nn.Linear(encoder_size, 1, bias=False) # Bilinear Attention self.Wb = nn.Linear(2 * encoder_size, 2 * encoder_size, bias=False) # Dot Attention : self.Wd = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vd = nn.Linear(encoder_size, 1, bias=False) # Minus Attention : self.Wm = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vm = nn.Linear(encoder_size, 1, bias=False) self.Ws = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vs = nn.Linear(encoder_size, 1, bias=False) self.gru_agg = nn.GRU(12 * encoder_size, encoder_size, batch_first=True, bidirectional=True) """ prediction layer """ self.Wq = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vq = nn.Linear(encoder_size, 1, bias=False) self.Wp1 = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.Wp2 = nn.Linear(2 * encoder_size, encoder_size, bias=False) self.vp = nn.Linear(encoder_size, 1, bias=False) self.prediction = nn.Linear(2 * encoder_size, embedding_size, bias=False) self.logits = nn.Linear(3, 3) self.logits2 = nn.Linear(3, 3) self.initiation() def initiation(self): initrange = 0.1 nn.init.uniform_(self.embedding.weight, -initrange, initrange) for module in self.modules(): if isinstance(module, nn.Linear): nn.init.xavier_uniform_(module.weight, 0.1) def forward(self, x, training=False): query = x['query'] passage = x['passage'] candidate_neg = x['candidate_neg'] candidate_pos = x['candidate_pos'] candidate_na = x['candidate_na'] #print(passage.shape) q_embedding = self.embedding(query) p_embedding = self.embedding(passage) neg_embeddings = self.embedding(candidate_neg) pos_embeddings = self.embedding(candidate_pos) na_embeddings = self.embedding(candidate_na) neg_embedding, _ = self.a_encoder(neg_embeddings) pos_embedding, _ = self.a_encoder(pos_embeddings) na_embedding, _ = self.a_encoder(na_embeddings) neg_score = F.softmax(self.a_attention(neg_embedding), 1) neg_output = neg_score.transpose(2, 1).bmm(neg_embedding).squeeze() pos_score = F.softmax(self.a_attention(pos_embedding), 1) pos_output = pos_score.transpose(2, 1).bmm(pos_embedding).squeeze() na_score = F.softmax(self.a_attention(na_embedding), 1) na_output = na_score.transpose(2, 1).bmm(na_embedding).squeeze() a_embedding = torch.stack([neg_output, pos_output, na_output], dim=1) hq, _ = self.q_encoder(p_embedding) hq=self.dropout(hq) hp, _ = self.p_encoder(q_embedding) p=self.dropout(hp) _s1 = self.Wc1(hq).unsqueeze(1) _s2 = self.Wc2(hp).unsqueeze(2) # squeeze might cause batch size None TODO sjt = self.vc(torch.tanh(_s1 + _s2)).squeeze() ait = F.softmax(sjt, 2) qtc = ait.bmm(hq) _s1 = self.Wb(hq).transpose(2, 1) sjt = hp.bmm(_s1) ait = F.softmax(sjt, 2) qtb = ait.bmm(hq) _s1 = hq.unsqueeze(1) _s2 = hp.unsqueeze(2) sjt = self.vd(torch.tanh(self.Wd(_s1 * _s2))).squeeze() ait = F.softmax(sjt, 2) qtd = ait.bmm(hq) sjt = self.vm(torch.tanh(self.Wm(_s1 - _s2))).squeeze() ait = F.softmax(sjt, 2) qtm = ait.bmm(hq) _s1 = hp.unsqueeze(1) _s2 = hp.unsqueeze(2) sjt = self.vs(torch.tanh(self.Ws(_s1 * _s2))).squeeze() ait = F.softmax(sjt, 2) qts = ait.bmm(hp) aggregation = torch.cat([hp, qts, qtc, qtd, qtb, qtm], 2) aggregation_representation, _ = self.gru_agg(aggregation) sj = self.vq(torch.tanh(self.Wq(hq))).transpose(2, 1) rq = F.softmax(sj, 2).bmm(hq) sj = F.softmax(self.vp(self.Wp1(aggregation_representation) + self.Wp2(rq)).transpose(2, 1), 2) rp = sj.bmm(aggregation_representation) encoder_output = self.dropout(F.leaky_relu(self.prediction(rp))) logits = a_embedding.bmm(encoder_output.transpose(2, 1)).squeeze() #logits = self.logits(logits) return logits def criterion(model, x, y, training=False): y_ = model(x, training=training) loss_fn = torch.nn.CrossEntropyLoss() # Do not need one hot #y = torch.zeros(y.size(0), NUM_CLASSES, dtype=torch.int64).scatter_(1, y.view(y.size(0), 1), 1) loss = loss_fn(y_, y) return loss ================================================ FILE: projects/ai2018/reader/torch_algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-28 10:54:49.368829 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import torch def criterion(model, x, y): y_ = model(x) loss_fn = torch.nn.CrossEntropyLoss() # Do not need one hot #y = torch.zeros(y.size(0), NUM_CLASSES, dtype=torch.int64).scatter_(1, y.view(y.size(0), 1), 1) loss = loss_fn(y_, y) return loss ================================================ FILE: projects/ai2018/reader/torch_algos/m_reader.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file m_reader.py # \author chenghuige # \date 2018-09-28 11:15:19.088911 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os """Implementation of the Mnemonic Reader.""" import torch import torch.nn as nn import torch.nn.functional as F import lele layers = lele.layers from torch.autograd import Variable import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import numpy as np import melt logging = melt.logging def get_mask(x): if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) else: x_mask = x.eq(0) return x_mask #v3 change to use lele.layers.CudnnRnn and recurrent + share dropout class MnemonicReaderV3(nn.Module): RNN_TYPES = {'lstm': nn.LSTM, 'gru': nn.GRU, 'rnn': nn.RNN} CELL_TYPES = {'lstm': nn.LSTMCell, 'gru': nn.GRUCell, 'rnn': nn.RNNCell} def __init__(self, args=None): super(MnemonicReaderV3, self).__init__() if args is None: args = FLAGS # Store config self.args = args vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.pyt.get_embedding(vocab_size, args.emb_dim, args.word_embedding_file, args.finetune_word_embedding) doc_input_size = args.emb_dim self.dropout_rate = 1 - args.keep_prob self.num_layers = 1 # Encoder self.encoding_rnn = layers.CudnnRnn( input_size=doc_input_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=args.rnn_padding, ) doc_hidden_size = 2 * args.rnn_hidden_size # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(args.hop): # interactive aligner self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( layers.StackedBRNN( input_size=doc_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) ) self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size= 2 * args.rnn_hidden_size, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) pre_logits_dim = self.pooling.output_size if FLAGS.use_type_emb: num_types = 2 type_emb_dim = 10 self.type_embedding = nn.Embedding(num_types, type_emb_dim) pre_logits_dim += type_emb_dim self.logits = nn.Linear(pre_logits_dim, NUM_CLASSES) self.logits2 = nn.Linear(pre_logits_dim, NUM_CLASSES) def forward(self, inputs): x1 = inputs['passage'] x2 = inputs['query'] # Embed both document and question x1_emb = self.embedding(x1) x2_emb = self.embedding(x2) # TODO understand pytorch mask, not set to no pad x1_mask = get_mask(x1) x2_mask = get_mask(x2) num_units = self.encoding_rnn.num_units batch_size = x1.size(0) mask_fws = [F.dropout(torch.ones(1, batch_size, num_units[layer]).cuda(),p=self.dropout_rate, training=self.training) for layer in range(self.num_layers)] mask_bws = [F.dropout(torch.ones(1, batch_size, num_units[layer]).cuda(),p=self.dropout_rate, training=self.training) for layer in range(self.num_layers)] # Encode document with RNN c = self.encoding_rnn(x1_emb, x1_mask, mask_fws, mask_bws) # Encode question with RNN q = self.encoding_rnn(x2_emb, x2_mask, mask_fws, mask_bws) # Align and aggregate c_check = c for i in range(self.args.hop): q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) c_tilde = self.self_aligners[i].forward(c_bar, x1_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x1_mask) if self.args.pooling_no_padding: #logging.info('----------pooling no padding!') x1_mask = torch.zeros_like(x1, dtype=torch.uint8) c = self.pooling(c_check, x1_mask) if FLAGS.use_type_emb: c = torch.cat([c, self.type_embedding(inputs['type'])], 1) x = self.logits(c) if self.args.split_type: x2 = self.logits2(c) mask = torch.eq(inputs['type'], 0).float().unsqueeze(1) x = x * mask + x2 * (1 - mask) return x # MnemonicReader is actually V2, v2 support more pooling, v2 with split got 7368 # TODO err why wrong.. slow at beggining FIXME can just fall back to V1 class MnemonicReader(nn.Module): RNN_TYPES = {'lstm': nn.LSTM, 'gru': nn.GRU, 'rnn': nn.RNN} CELL_TYPES = {'lstm': nn.LSTMCell, 'gru': nn.GRUCell, 'rnn': nn.RNNCell} def __init__(self, args=None): super(MnemonicReader, self).__init__() if args is None: args = FLAGS # Store config self.args = args vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.pyt.get_embedding(vocab_size, args.emb_dim, args.word_embedding_file, args.finetune_word_embedding) doc_input_size = args.emb_dim # Encoder self.encoding_rnn = layers.StackedBRNN( input_size=doc_input_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=args.rnn_padding, ) doc_hidden_size = 2 * args.rnn_hidden_size # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(args.hop): # interactive aligner self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( layers.StackedBRNN( input_size=doc_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) ) self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size= 2 * args.rnn_hidden_size, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) dim = self.pooling.output_size if FLAGS.use_type_emb: num_types = 2 type_emb_dim = 10 self.type_embedding = nn.Embedding(num_types, type_emb_dim) dim += type_emb_dim if FLAGS.use_answer_emb: self.context_dense = nn.Linear(self.pooling.output_size, FLAGS.emb_dim) self.answer_dense = nn.Linear(self.pooling.output_size, FLAGS.emb_dim) dim += 3 self.logits = nn.Linear(dim, NUM_CLASSES) self.logits2 = nn.Linear(dim, NUM_CLASSES) def forward(self, inputs): x1 = inputs['passage'] x2 = inputs['query'] batch_size = x1.size(0) # Embed both document and question x1_emb = self.embedding(x1) x2_emb = self.embedding(x2) # TODO understand pytorch mask, not set to no pad x1_mask = get_mask(x1) x2_mask = get_mask(x2) #----- well here currently not reccurent dropout and not share dropout # Encode document with RNN c = self.encoding_rnn(x1_emb, x1_mask) # Encode question with RNN q = self.encoding_rnn(x2_emb, x2_mask) # Align and aggregate c_check = c for i in range(self.args.hop): q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) c_tilde = self.self_aligners[i].forward(c_bar, x1_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x1_mask) if self.args.pooling_no_padding: #logging.info('----------pooling no padding!') x1_mask = torch.zeros_like(x1, dtype=torch.uint8) c = self.pooling(c_check, x1_mask) if FLAGS.use_type_emb: c = torch.cat([c, self.type_embedding(inputs['type'])], 1) if FLAGS.use_answer_emb: x1 = x = c neg = inputs['candidate_neg'] pos = inputs['candidate_pos'] na = inputs['candidate_na'] neg_mask = get_mask(neg) pos_mask = get_mask(pos) na_mask = get_mask(na) neg_emb = self.embedding(neg) pos_emb = self.embedding(pos) na_emb = self.embedding(na) neg = self.encoding_rnn(neg_emb, neg_mask) pos = self.encoding_rnn(pos_emb, pos_mask) na = self.encoding_rnn(na_emb, na_mask) neg = self.pooling(neg, neg_mask) pos = self.pooling(pos, pos_mask) na = self.pooling(na, na_mask) answer = torch.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = answer.bmm(x.unsqueeze(1).transpose(2, 1)) x = x.view(batch_size, NUM_CLASSES) x = torch.cat([x1, x], -1) c = x x = self.logits(c) if self.args.split_type: x2 = self.logits2(c) mask = torch.eq(inputs['type'], 0).float().unsqueeze(1) x = x * mask + x2 * (1 - mask) return x # this is V1 which already got good results 736, V2 will have more pooling method with mask support, also add support for recurrent dropout.. class MnemonicReaderV1(nn.Module): RNN_TYPES = {'lstm': nn.LSTM, 'gru': nn.GRU, 'rnn': nn.RNN} CELL_TYPES = {'lstm': nn.LSTMCell, 'gru': nn.GRUCell, 'rnn': nn.RNNCell} def __init__(self, args=None): super(MnemonicReaderV1, self).__init__() if args is None: args = FLAGS # Store config self.args = args vocabulary.init() vocab_size = vocabulary.get_vocab_size() self.embedding = wenzheng.pyt.get_embedding(vocab_size, args.emb_dim, args.word_embedding_file, args.finetune_word_embedding) doc_input_size = args.emb_dim # Encoder self.encoding_rnn = layers.StackedBRNN( input_size=doc_input_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) doc_hidden_size = 2 * args.rnn_hidden_size # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(args.hop): # interactive aligner self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( layers.StackedBRNN( input_size=doc_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) ) self.logits = nn.Linear(2 * args.rnn_hidden_size, NUM_CLASSES) self.logits2 = nn.Linear(2 * args.rnn_hidden_size, NUM_CLASSES) def forward(self, inputs): x1 = inputs['passage'] x2 = inputs['query'] # Embed both document and question x1_emb = self.embedding(x1) x2_emb = self.embedding(x2) # x1_mask = x1 == 0 # x2_mask = x2 == 0 # TODO understand pytorch mask, not set to no pad x1_mask = torch.zeros_like(x1, dtype=torch.uint8) x2_mask = torch.zeros_like(x2, dtype=torch.uint8) # Encode document with RNN c = self.encoding_rnn(x1_emb, x1_mask) # Encode question with RNN q = self.encoding_rnn(x2_emb, x2_mask) # Align and aggregate c_check = c for i in range(self.args.hop): q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) c_tilde = self.self_aligners[i].forward(c_bar, x1_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x1_mask) # TODO support other pooling layer like attention topk in torch or without mask ? c = torch.max(c_check, 1)[0] x = self.logits(c) if self.args.split_type: x2 = self.logits2(c) mask = torch.eq(inputs['type'], 0).float().unsqueeze(1) x = x * mask + x2 * (1 - mask) return x ================================================ FILE: projects/ai2018/reader/torch_algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-09-28 10:09:41.585876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function # from torch_algos.rnet import Rnet # from torch_algos.m_reader import * # from torch_algos.m_reader import MnemonicReader # MReader = MnemonicReader # # baseline # from torch_algos.baseline.baseline import * import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch import torch.nn as nn import torch.nn.functional as F import lele layers = lele.layers from torch.autograd import Variable import wenzheng from wenzheng.utils import vocabulary import wenzheng.utils.input_flags from algos.config import NUM_CLASSES import numpy as np import melt logging = melt.logging class ModelBase(nn.Module): def __init__(self, embedding=None, lm_model=False): super(ModelBase, self).__init__() self.num_units = FLAGS.rnn_hidden_size self.dropout_rate = 1 - FLAGS.keep_prob config = { 'word': { 'vocab': FLAGS.vocab, 'num_layers': FLAGS.num_layers, 'hidden_size': FLAGS.rnn_hidden_size, 'emb_dim': FLAGS.emb_dim, 'embedding_file': FLAGS.word_embedding_file, 'trainable': FLAGS.finetune_word_embedding, 'num_finetune': FLAGS.num_finetune_words, }, 'char': { 'limit': FLAGS.char_limit, 'use_char_emb': FLAGS.use_char_emb, 'emb_dim': FLAGS.char_emb_dim, 'trainable': FLAGS.finetune_char_embedding, 'hidden_size': FLAGS.rnn_hidden_size, 'output_method': FLAGS.char_output_method, 'combiner': FLAGS.char_combiner, 'padding': FLAGS.char_padding, 'num_finetune': FLAGS.num_finetune_chars, }, 'pos': { 'emb_dim': FLAGS.tag_emb_dim }, 'ner': { 'emb_dim': FLAGS.tag_emb_dim }, 'encoder': FLAGS.encoder_type, 'dropout_rate': 1 - FLAGS.keep_prob, 'recurrent_dropout': FLAGS.recurrent_dropout, 'cell': FLAGS.cell, 'rnn_padding': FLAGS.rnn_padding, 'rnn_no_padding': FLAGS.rnn_no_padding, 'concat_layers': FLAGS.concat_layers, } self.encode = wenzheng.pyt.TextEncoder(config, embedding, use_char=FLAGS.use_char, use_char_emb=FLAGS.use_char_emb, use_pos=FLAGS.use_pos, use_ner=FLAGS.use_ner, lm_model=lm_model) self.lm_model = self.encode.lm_model self.config = config def get_mask(x): if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) else: x_mask = x.eq(0) return x_mask class MReader(ModelBase): def __init__(self, embedding=None): super(MReader, self).__init__(embedding) Rnn = lele.layers.StackedBRNN doc_hidden_size = self.encode.output_size # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(FLAGS.hop): # interactive aligner self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( Rnn( input_size=doc_hidden_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) ) self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size=doc_hidden_size, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) dim = self.pooling.output_size if FLAGS.use_type_emb: num_types = 2 type_emb_dim = 10 self.type_embedding = nn.Embedding(num_types, type_emb_dim) dim += type_emb_dim if FLAGS.use_answer_emb: self.context_dense = nn.Linear(self.pooling.output_size, FLAGS.emb_dim) self.answer_dense = nn.Linear(self.pooling.output_size, FLAGS.emb_dim) dim += 3 self.logits = nn.Linear(dim, NUM_CLASSES) self.logits2 = nn.Linear(dim, NUM_CLASSES) def forward(self, inputs): x1 = inputs['passage'] x2 = inputs['query'] batch_size = x1.size(0) # TODO understand pytorch mask, not set to no pad x1_mask = get_mask(x1) x2_mask = get_mask(x2) #----- well here currently not reccurent dropout and not share dropout # Encode document with RNN input = { 'content': inputs['passage'], 'char': inputs['passage_char'], 'pos': inputs['passage_pos'] } c = self.encode(input, x1_mask) input = { 'content': inputs['query'], 'char': inputs['query_char'], 'pos': inputs['query_pos'] } # Encode question with RNN q = self.encode(input, x2_mask) # Align and aggregate c_check = c for i in range(FLAGS.hop): q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) c_tilde = self.self_aligners[i].forward(c_bar, x1_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x1_mask) c = self.pooling(c_check, x1_mask) if FLAGS.use_type_emb: c = torch.cat([c, self.type_embedding(inputs['type'])], 1) if FLAGS.use_answer_emb: x1 = x = c neg = inputs['candidate_neg'] pos = inputs['candidate_pos'] na = inputs['candidate_na'] neg_mask = get_mask(neg) pos_mask = get_mask(pos) na_mask = get_mask(na) input = { 'content': inputs['candidate_neg'], 'char': inputs['candidate_neg_char'], 'pos': inputs['candidate_neg_pos'] } neg = self.encode(input, neg_mask) input = { 'content': inputs['candidate_pos'], 'char': inputs['candidate_pos_char'], 'pos': inputs['candidate_pos_pos'] } pos = self.encode(input, pos_mask) input = { 'content': inputs['candidate_na'], 'char': inputs['candidate_na_char'], 'pos': inputs['candidate_na_pos'] } na = self.encode(input, na_mask) neg = self.pooling(neg, neg_mask) pos = self.pooling(pos, pos_mask) na = self.pooling(na, na_mask) answer = torch.stack([neg, pos, na], 1) # [batch_size, emb_dim] x = self.context_dense(x) # [batch_size, 3, emb_dim] answer = self.answer_dense(answer) x = answer.bmm(x.unsqueeze(1).transpose(2, 1)) x = x.view(batch_size, NUM_CLASSES) x = torch.cat([x1, x], -1) c = x x = self.logits(c) if FLAGS.split_type: x2 = self.logits2(c) mask = torch.eq(inputs['type'], 0).float().unsqueeze(1) x = x * mask + x2 * (1 - mask) return x ================================================ FILE: projects/ai2018/reader/torch_algos/rnet.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file rnet.py # \author chenghuige # \date 2018-09-28 10:24:33.014425 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import lele layers = lele.layers import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES import numpy as np class Rnet(nn.Module): RNN_TYPES = {'lstm': nn.LSTM, 'gru': nn.GRU, 'rnn': nn.RNN} CELL_TYPES = {'lstm': nn.LSTMCell, 'gru': nn.GRUCell, 'rnn': nn.RNNCell} def __init__(self, args=None): super(Rnet, self).__init__() # Store config if args is None: args = FLAGS self.args = args vocabulary.init() vocab_size = vocabulary.get_vocab_size() # Word embeddings (+1 for padding) self.embedding = nn.Embedding(vocab_size, args.emb_dim, padding_idx=0) if FLAGS.word_embedding_file: self.embedding.weight.data.copy_(torch.from_numpy(np.load(FLAGS.word_embedding_file))) if not FLAGS.finetune_word_embedding: self.embedding.weight.requires_grad = False doc_input_size = args.emb_dim # Encoder self.encode_rnn = layers.StackedBRNN( input_size=doc_input_size, hidden_size=args.rnn_hidden_size, num_layers=args.num_layers, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=True, rnn_type=self.RNN_TYPES['gru'], padding=False, ) # Output sizes of rnn encoder doc_hidden_size = 2 * args.rnn_hidden_size question_hidden_size = 2 * args.rnn_hidden_size #if args.concat_rnn_layers: doc_hidden_size *= args.num_layers question_hidden_size *= args.num_layers # Gated-attention-based RNN of the whole question self.question_attn = layers.SeqAttnMatch(question_hidden_size, identity=False) self.question_attn_gate = layers.Gate(doc_hidden_size + question_hidden_size) self.question_attn_rnn = layers.StackedBRNN( input_size=doc_hidden_size + question_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) question_attn_hidden_size = 2 * args.rnn_hidden_size # Self-matching-attention-baed RNN of the whole doc self.doc_self_attn = layers.SelfAttnMatch(question_attn_hidden_size, identity=False) self.doc_self_attn_gate = layers.Gate(question_attn_hidden_size + question_attn_hidden_size) self.doc_self_attn_rnn = layers.StackedBRNN( input_size=question_attn_hidden_size + question_attn_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) doc_self_attn_hidden_size = 2 * args.rnn_hidden_size self.doc_self_attn_rnn2 = layers.StackedBRNN( input_size=doc_self_attn_hidden_size, hidden_size=args.rnn_hidden_size, num_layers=1, dropout_rate=1 - args.keep_prob, dropout_output=False, concat_layers=False, rnn_type=self.RNN_TYPES['gru'], padding=False, ) self.logits = nn.Linear(2 * args.rnn_hidden_size, NUM_CLASSES, bias=True) def forward(self, inputs): """Inputs: x1 = document word indices [batch * len_d] x1_c = document char indices [batch * len_d] x1_f = document word features indices [batch * len_d * nfeat] x1_mask = document padding mask [batch * len_d] x2 = question word indices [batch * len_q] x2_c = document char indices [batch * len_d] x1_f = document word features indices [batch * len_d * nfeat] x2_mask = question padding mask [batch * len_q] """ x1 = inputs['passage'] x2 = inputs['query'] # x1_mask = x1 == 0 # x2_mask = x2 == 0 # TODO understand pytorch mask, not set to no pad x1_mask = torch.zeros_like(x1, dtype=torch.uint8) x2_mask = torch.zeros_like(x2, dtype=torch.uint8) # Embed both document and question x1_emb = self.embedding(x1) x2_emb = self.embedding(x2) # # Dropout on embeddings # if self.args.dropout_emb > 0: # x1_emb = F.dropout(x1_emb, p=self.args.dropout_emb, training=self.training) # x2_emb = F.dropout(x2_emb, p=self.args.dropout_emb, training=self.training) # Encode document with RNN c = self.encode_rnn(x1_emb, x1_mask) # Encode question with RNN q = self.encode_rnn(x2_emb, x2_mask) # Match questions to docs question_attn_hiddens = self.question_attn(c, q, x2_mask) rnn_input = self.question_attn_gate(torch.cat([c, question_attn_hiddens], 2)) c = self.question_attn_rnn(rnn_input, x1_mask) # Match documents to themselves doc_self_attn_hiddens = self.doc_self_attn(c, x1_mask) rnn_input = self.doc_self_attn_gate(torch.cat([c, doc_self_attn_hiddens], 2)) c = self.doc_self_attn_rnn(rnn_input, x1_mask) c = self.doc_self_attn_rnn2(c, x1_mask) c = torch.max(c, 1)[0] x = self.logits(c) return x ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.answeremb-split.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.anseremb.split.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.att.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.att.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.last.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.last.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.maxatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.maxatt.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.maxmean.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.maxmean.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,mean \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.mean.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.mean.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=mean \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.topk.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.topk.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.topkatt.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train/v1/torch.word.mreader.nopad.answeremb-split.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL=gru echo 'use default CELL gru' fi dir=$base/temp/ai2018/reader/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v1/$fold/$SRC/torch.word.mreader.nopad.anseremb.split.topkattlast.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --use_type=0 \ --rcontent=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key rcontent \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, io # for p40... sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8') sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding='utf-8') import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags #from algos.model import * from algos.loss import criterion import algos.model as base from dataset import Dataset import evaluate as ev def main(_): FLAGS.num_folds = 10 melt.apps.init() Model = getattr(base, FLAGS.model) logging.info('Using tensorflow Model:', Model) model = Model() logging.info(model) train = melt.apps.get_train() ev.init() train(Dataset, model, criterion, eval_fn=ev.calc_acc, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_names=ev.valid_names, valid_suffix='.valid.csv', infer_debug_names=ev.valid_names, infer_suffix='.infer.txt', write_streaming=True) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/reader/train.v1/torch-decay.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/torch.decay num_epochs=100 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=Model \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 200,350,800,1600,3200 \ --length_key rcontent \ --batch_sizes 32,16,8,4,2,1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.5 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/torch.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/torch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=Model \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/model2.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/model2.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/qcatt.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/qcatt.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=QCAttention \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/qcatt.sfu.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/qcatt.sfu.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=QCAttention \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.1layer.keep05.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.1layer.keep05/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.5 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.1layer.keep10.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.1layer.keep10/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.emb.finetne/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.emb/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.keep07/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.5 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rcontent.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rcontent.split/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.5 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.emb.finetune.att.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07.emb.finetune.att.2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.emb.finetune.att.finetune.type1only.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07.emb.finetune.att.finetune.type1only/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_only=1 \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.emb.finetune.att.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07.emb.finetune.att/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.emb.finetune.att.type1only.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07.emb.finetune.att.type1only/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_only=1 \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.emb.finetune.att.type1w2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07.emb.finetune.att.type1w2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_weight=2. \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.att.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.att.2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.att.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.att/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.att.type1w2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.att.type1w2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_weight=2. \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_vocab_size=100 \ --finetune_unk_vocab=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.att.unkvocab/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_vocab_size=100 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.f07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.f07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.f09.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.f09/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.later.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.later/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.maxatt.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.maxatt/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.nodecay.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.nodecay/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.se.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.se/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --add_start_end=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.topk.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.topk/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.unkvocab.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.unkvocab.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_vocab_size=100 \ --finetune_unk_vocab=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.finetune.unkvocab.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.finetune.unkvocab/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_vocab_size=100 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.nodecay.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb.nodecay/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.emb/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.1layer.keep07.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.1layer.keep07.split/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --split_type=1 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v1/rnet.sfu.2layer.keep07.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.sfu.2layer.keep07.emb.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=1 \ --decay_start_epoch=2 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_raterning_rate=0 \ --learning_rate_decay_factor=0.7 \ --num_epochs_per_decay=1 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay3/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay4.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay4/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type0_only=0 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay5.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay5/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay6.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay6/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.8 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.decay7.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.decay7/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.5 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.keep08.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.keep08/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.8 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.keep09.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.keep09/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.labelemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.labelemb/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ -decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.max.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.max/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.split.finetune.type1only.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.split.finetune.type1only/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_only=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.split/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v2/rnet.type0only.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/rnet.type0only/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type0_only=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/bidaf.split.lr0002.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/bidaf.split.lr0002/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_qc_att=0 \ --use_bidaf_att=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/bidaf.split.lrsmall.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/bidaf.split.lrsmall/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_qc_att=0 \ --use_bidaf_att=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0005 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/bidaf.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/bidaf.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_qc_att=0 \ --use_bidaf_att=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/bow/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi # att and combiner remove dropout model_dir=$base/temp/ai2018/reader/model/v3/mreader.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.ae.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.ae/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_att_encode=1 \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.epoch3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.epoch3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.lr0002.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.lr0002/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.max.nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.max.nomask/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.max.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.max/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.noshare.max.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.noshare.max/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type=0 \ --share_dropout=0 \ --encoder_output_method=max \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000 \ --batch_sizes 32,16,8 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MReader \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.v1.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.v1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReaderV1 \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.v2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReaderV2 \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/mreader.v2.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/mreader.v2.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MnemonicReaderV2 \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rcontent.3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rcontent.3/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rcontent.4.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rcontent.4/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rcontent.5.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rcontent.5/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rcontent.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rcontent/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.2.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.2.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0025 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.2.dec.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.2.dec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0005 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.4.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ --buffer_size=250000 \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer.split.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer.split.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer.split2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer.split2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.answer3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.answer3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.att2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.att2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 64 \ --buckets 400 \ --batch_sizes 64,32 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.gate.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.gate/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=gate \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.hidden200/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.keep075.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.keep075/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.75 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.labelatt.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.labelatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.labelatt10.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.labelatt10/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --label_emb_height=10 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.lr00005.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.lr00005/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0005 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.max.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.max/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.nobucket.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.nobucket/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.p2.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.p2.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 64 \ --buckets 400 \ --batch_sizes 64,32 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=2 \ --decay_factor=0.5 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.p2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.p2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=2 \ --decay_factor=0.6 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.relu.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.relu/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.batch64 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.cq.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.cq.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --combine_query=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.cq.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.cq/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --combine_query=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.p2.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.p2.batch64 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=2 \ --decay_factor=0.5 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.p2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.p2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=2 \ --decay_factor=0.6 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.reverse.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.reverse/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --cq_reverse=1 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.test.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.test/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1c10.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1c10.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_count=10 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1c2.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1c2.batch64/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_count=2 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1c2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1c2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_count=2 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1c5.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1c5.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_count=5 \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --buckets 400 \ --batch_sizes 64,32 \ --batch_size 64 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1w2.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1w2.batch64/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_weight=2. \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 64 \ --buckets 400 \ --batch_sizes 64,32 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.split.type1w2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.split.type1w2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --type1_weight=2. \ --split_type=1 \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/rnet.tanh.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/rnet.tanh/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --att_activation=tanh \ --model=Rnet \ --att_combiner=sfu \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-keep07.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.keep07 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=Model \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.lr00005.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.lr00005 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0005 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.lr0001.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.lr0001 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.lr0001.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.lr0001.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.lr0003.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.lr0003 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.003 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.lr0004.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.lr0004 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.004 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.emb.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.emb.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.lr0001.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.lr0001 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReader \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mreader.v1.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mreader.v1.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReaderV1 \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mwan.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mwan.emb.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=MwAN \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,2000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mwan.emb.batch64.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mwan.emb.batch64 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=MwAN \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 64,32 \ --batch_size 64 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mwan.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mwan.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=MwAN \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mwan.lr0001.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mwan.lr0001 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=MwAN \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-mwan.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.mwan num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=MwAN \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-rnet.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.rnet.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-rnet.lr0001.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.rnet.lr0001.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-rnet.lr0001.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.rnet.lr0001 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch-rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch.rnet num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Rnet \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v3/torch.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v3/torch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--model=MwAN \ #--buckets 400 \ #--length_key passage \ #--batch_sizes 32,16 \ #--buckets 200,350,800,1600,3200 \ #--length_key rcontent \ #--batch_sizes 32,16,8,4,2,1 \ #--batch_size 32 \ python $exe \ --model=Model \ --use_type=1 \ --rcontent=1 \ --vocab=$dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --length_key rcontent \ --buckets 400 \ --length_key rcontent \ --batch_sizes 32,16 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --interval_steps 100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/bow-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/bow.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/bow-nomask-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/bow.nomask.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/bow-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/bow.nomask/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-att.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.att/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-latt.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.latt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-nomask.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.nomask.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.nomask/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-simpledrop-bw.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi # not using recurrent_dropout,bw using different dropout then fw model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.simpledrop.bw/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bw_dropout=1 \ --recurrent_dropout=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-simpledrop.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi # not using recurrent_dropout model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.simpledrop/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=0 \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-top2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.top2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-top2mean.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.top2mean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk_mean \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-top2wmean.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.top2wmean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk_weighted_mean \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-topkatt2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.topkatt2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk_att \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb-topkatt3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb.topkatt3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk_att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/gru.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Model \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader-v4-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.v4.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=MnemonicReaderV4 \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader-v4-split-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.v4.split.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --split_type=1 \ --model=MnemonicReaderV4 \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader-v4-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.v4.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=0 \ --split_type=1 \ --model=MnemonicReaderV4 \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader-v4.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.v4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=0 \ --model=MnemonicReaderV4 \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.max.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.max.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000 \ --batch_sizes 32,16,8 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.max.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.max/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.max.split.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.max.split.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --split_type=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000 \ --batch_sizes 32,16,8 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.max.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.max.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400 \ --batch_sizes 32,16 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.split.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.split.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --split_type=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/mreader.split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/mreader.split/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MReader \ --att_combiner=sfu \ --hop=2 \ --rcontent=1 \ --use_type=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --buckets 400,1000,2000 \ --batch_sizes 32,16,8,4 \ --length_key passage \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch=2 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-bow-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.bow.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Bow \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-bow.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.bow num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Bow \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.nomask num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-pad-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.pad.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_padding=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-type.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.type num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type=1 \ --model=Gru \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att-typernn.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att.typernn num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_rnn=1 \ --model=Gru \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-att.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.att num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-keep08.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.keep08 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.8 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-latt.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.latt num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-mask.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.mask.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-mask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.mask num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-nodrop.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.nodrop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=1. \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-nomask.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.nomask.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.nomask num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-topk2-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.topk2.nomask num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-topk2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.topk2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-topk3-nomask.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.topk3.nomask num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=0 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb-topk3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb.topk3 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mask_pooling=1 \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru.2.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-gru.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.gru num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=Gru \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-1hop-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.1hop.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-1hop-split-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.1hop.split.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=1 \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-nopad-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.nopad.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-typeemb-nopad-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.typeemb.nopad.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-typeemb-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.typeemb.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000 \ --length_key rcontent \ --batch_sizes 32,16,8 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-typeemb-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.typeemb.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-att.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.att num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-nopad-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.nopad.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-nopad-typeemb-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.nopad.typeemb.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-nopad-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.nopad.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-pad-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.pad.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb-typeemb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb.typeemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-emb.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.emb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=0 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-hop3-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.hop3.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=3 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-poolnopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.poolnopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=0 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --pooling_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-split-hop3-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.split.hop3.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=3 \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-split-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.split.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-split-poolnopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.split.poolnopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=1 \ --rnn_no_padding=0 \ --pooling_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-typeemb-hop3-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.typeemb.hop3.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=3 \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-typeemb-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.typeemb.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_type_emb=1 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-decay09.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.decay09 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReaderV3 \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=MnemonicReaderV3 \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-poolnopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.poolnopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --pooling_no_padding=1 \ --rnn_no_padding=0 \ --model=MnemonicReaderV3 \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-split-decay09.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.split.decay09 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MnemonicReaderV3 \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-split-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.split.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --split_type=1 \ --model=MnemonicReaderV3 \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3-split.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3.split num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --model=MnemonicReaderV3 \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v4/torch-mreader-v3.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v4/torch.mreader.v3 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=MnemonicReaderV3 \ --rcontent=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v5/torch-mreader-split-answeremb-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v5/torch.mreader.answeremb.split.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_answer_emb=1 \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v5/torch-mreader-split-nopad-ftwiki.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord.5k.wiki.fasttext/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v5/torch.mreader.split.nopad.ftwiki num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReader \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/reader/train.v1/v5/torch-mreader-split-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/reader/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/reader/model/v5/torch.mreader.split.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --split_type=1 \ --use_type_emb=0 \ --rnn_padding=0 \ --rnn_no_padding=1 \ --model=MnemonicReaderV1 \ --rcontent=1 \ --use_type=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --length_key rcontent \ --buckets 400,1000,2000 \ --length_key rcontent \ --batch_sizes 32,16,8,4 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=acc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/README.md ================================================ # ai challenger 2018 细粒度用户评论情感分类第一名(后厂村静静团队)解决方案 1. 整体部分参考答辩ppt https://mp.weixin.qq.com/s/W0PhbE8149nD3Venmy33tw 2. 这次比赛客观成绩好的主要原因我觉得是因为我从比赛一开始就采用了1kw的外部点评数据,这使得我可以采用大词表策略14.4w,19.8w(频次》20) 但是比赛大部分时间成绩不如do somethig团队,后期取得明显领先优势应该主要是简化版的elmo基于大规模数据的预训练再配合self match attention(self match attention参考rnet是其他选手大部分没有使用的,其实在kaggle toxic我也尝试了但是效果不明显这次比赛它和elmo配合效果非常好)带来单模型效果显著提升。 fast elmo部分可以参考 torch-lm-train.py tf版本对应 lm-train.py 但是基本相同的实现和完全相同的训练数据 tf版本可能训练过程中经常出现NAN,待修复 pytorch版本训练稳定。注意目前的设计只能单层elmo如果多层需要再修改代码因为目前是stack rnn第二层就等于loss作弊了(不过单层elmo预训练在这个数据效果足够好) 我的机器资源相对充分这使得我可以并行跑比如多种分词这种简单但是带来较大模型差异性的模型增强集成效果,这样我可以使用较少单模型集成取得更好效果。 3. 其他答辩团队的方案更加新颖细致一些,受益匪浅。do something和nevermore团队都采用了attention pooling层独占不共享的策略,而我采用的pooling层完全共享(topk concat attention) pooling层的独占策略使得模型更加具有可解释性。 另外do somthing团队使用了sru也值得尝试。 new start团队采用了seq2seq的模型 并且使用了平衡准召的loss nevermore团队对稀有类别过采样处理 do somthing团队做了标注纠正 并且引入了基于词汇和类别共现的特征表示。 4. 关于pooling层独占的实验效果 赛后在当前最佳单模型基础上实验了pooling层独占效果,f1直接指标提高比较明显,有一个exclusive_fc取得了最优loss,考虑模型随机性提升不是特别明显,当然更多调参可能还能提升一下效果,更主要的好处还是带来更好的模型可解释性。 sh ./train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.sh adjusted_f1 0.7193 f1 0.7144 loss 0.3215 sh ./train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.sh adjusted_f1 0.7207 f1 0.7145 loss 0.3236 # 一些注意事项 1. python 3.6 tf 1.10.1 pytorch 1.0 即使只使用基于pytorch的模型也依赖tensorflow因为采用了tf dataset读取tfrecord(对应pytorch的时候使用的是tf的eager模式读取数据) 2. 训练脚本只需要参考 wenzheng/projects/ai2018/sentiment/train/v14 可以参考train目录下的readme 我这里提供了一个不利用estimator的bert训练脚本 但是当前bert容易过拟合效果不如rnn 单模型bert最优 0.71(train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.sh) rnn 0.72(train/v14/torch.self_attention.unkaug.elmo.finetune_6k.sh) 比赛中的最佳单模型 建议只参考基于pytorch rnn的这个最佳单模型, 或者赛后实验的pooling层独占(train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.sh) 3. 需要设置python path export PYTHONPATH=$root/utils:$root 这样可以找到wenzheng/utils/gezi等等lib 4. 训练的时候 CUDA_VISIBLE_DEVICES=0 sh ./train/v14/a.sh 或者 CUDA_VISIBLE_DEVICES=0,1 sh ./train/v14/a.sh(使用两个gpu tower loss) 类似这样 注意pytorch支持多gpu(包括使用buckets length),tensorflow支持多gpu(但是如果采用buckets length,graph模式 不支持多gpu) tensorflow理论上支持eager模式 tf的代码我都是基本按照tf.keras接口写的支持eager但是目前tf eager还不完善。 5. 当前最好的单模型torch版本(torch比tensorflow占用显存更大)如果使用1080ti 11g显存 需要2个gpu跑,p40可以单卡跑。 当然你也可以调小batch size 或者调整 buckets以及batch sizes 6. 模型集成只需要参考 ensemble/ensemble-cv.py 我这里利用了valid数据做交叉验证,没有使用全部数据多fold的方式(那样模型训练代价比较高) # 生成好的tfrecords 为了方便训练这里提供了预先处理好的tfrecords可以在百度云盘下载 链接: https://pan.baidu.com/s/1Ehixs1gbS4nv4a1ivI6TwA 提取码: rzd1 包括最佳单模型对应tfrecords word.jieba.ft 对应elmo模型 model/lm/.../latest.pyt # generate tfrecord go to prepare, sh run.sh gen valid/test/train # dump infos.pkl python ./read-records.py --type dump or just sh prepare.sh to do above, be sure you use correct tfrecord folder (using ln -s) and vectors.txt if use word pretrain emb if you want just to verify records, python ./read-records.py --type=any.. other then dump # training python ./train.py # train using graph python ./torch-train.py # train using eager tf + pytorch EAGER=1 python ./train.py # train using eager mode (using tfrecord) MODE=valid,test sh ./train/*.sh just valid and test using eager mode(using tfrecord) SHOW=1 sh ./train/*.sh just show model arch in eager mode python ./infer.py or INFER=1 sh ./train/*.sh will do infer(without tfrecord) using eager mode INFER=1 c0 sh ./train/gru.sh ~/temp/ai2018/sentiment/model/gru/ INFER=1 c0 sh ./train/gru.sh ~/temp/ai2018/sentiment/model/gru/ckpt/ckpt-10 ================================================ FILE: projects/ai2018/sentiment/__init__.py ================================================ import projects.ai2018.sentiment.prepare ================================================ FILE: projects/ai2018/sentiment/algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/sentiment/algos/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-02-16 19:12:02.066189 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS CLASSES = ['na', 'neg', 'neu', 'pos'] ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] ASPECTS = ['location', 'service', 'price', 'environment', 'dish', 'others'] NUM_ATTRIBUTES = len(ATTRIBUTES) ATTRIBUTES_MAP = dict(zip(ATTRIBUTES, range(NUM_ATTRIBUTES))) # -2,-1,0,1 -> 0,1,2,3 NUM_CLASSES = 4 flags.DEFINE_bool('share_pooling', True, 'wether to share pooling params for each attribute') flags.DEFINE_bool('share_fc', True, 'wether to share fc layer notice if share pooling actually must not share fc also no matter what you set share_fc') flags.DEFINE_integer('bert_num_heads', 12, '') flags.DEFINE_integer('bert_num_layers', 12, '') flags.DEFINE_float('bert_dropout', 0.1, '') flags.DEFINE_float('bert_lr_ratio', 0.1, '') flags.DEFINE_bool('use_soft_label', False, '') flags.DEFINE_bool('use_len', False, 'wether add length as a feature') flags.DEFINE_string('pretrain_encoder', 'bilm', 'bilm or bert') flags.DEFINE_bool('transformer_add_rnn', False, '') flags.DEFINE_bool('unk_aug', False, '') flags.DEFINE_integer('unk_id', 1, 'bert unk id is 100') flags.DEFINE_integer('unk_aug_start_epoch', 2, '') flags.DEFINE_integer('unk_aug_start_step', 7000, '') flags.DEFINE_float('unk_aug_max_ratio', 0.02, '') flags.DEFINE_bool('use_class_weights', False, '') flags.DEFINE_bool('att_dropout', True, 'for tf rnet by default att with dropout') flags.DEFINE_integer('char_min_count', None, '') flags.DEFINE_integer('tag_min_count', None, '') #flags.DEFINE_float('label_smoothing', 0, '') flags.DEFINE_bool('cut_front', False, '') flags.DEFINE_integer('content_limit', 0, '') flags.DEFINE_float('other_corpus_factor', 1., '') flags.DEFINE_string('model', None, '') flags.DEFINE_string('loss', 'cross', '') flags.DEFINE_float('other_loss_factor', 1., '') flags.DEFINE_float('na_loss_ratio', 0., '') flags.DEFINE_bool('na_loss_ratio_add', True, '') flags.DEFINE_float('earth_mover_loss_ratio', 0, '') flags.DEFINE_string('aspect', 'all', 'location, service, price, enviroment, dis, others') flags.DEFINE_integer('attr_index', None, '') #flags.DEFINE_string('weights', None, '') flags.DEFINE_float('init_weight', 1., '') flags.DEFINE_float('mlp_ratio', 0., '') flags.DEFINE_bool('binary_class_index', None, '') flags.DEFINE_bool('use_hier_encode', False, '') flags.DEFINE_bool('use_type', False, '') flags.DEFINE_bool('use_type_emb', False, '') flags.DEFINE_integer('type_emb_dim', 100, '') flags.DEFINE_bool('rcontent', False, '') flags.DEFINE_bool('split_type', False, '') flags.DEFINE_string('att_type', 'p2q', '') flags.DEFINE_string('att_combiner', 'gate', '') flags.DEFINE_string('att_activation', 'relu', '') flags.DEFINE_bool('loss_combine_by_scalar', False, '') flags.DEFINE_string('encoder_combiner', 'concat', '') flags.DEFINE_bool('use_mlp', False, '') flags.DEFINE_bool('use_word', True, '') flags.DEFINE_bool('use_simple_char', False, '') flags.DEFINE_string('simple_char_combiner', 'concat', '') ## in prepare.config #flags.DEFINE_bool('use_char', False, '') flags.DEFINE_bool('use_token_info', False, '') flags.DEFINE_bool('use_info_fc', False, '') flags.DEFINE_string('token_info_combiner', 'concat', '') flags.DEFINE_bool('use_comment_info', False, '') flags.DEFINE_bool('use_comment_info_fc', False, '') flags.DEFINE_string('comment_info_combiner', 'concat', '') flags.DEFINE_bool('comment_info_lang_only', False, '') flags.DEFINE_bool('cudnn_gru_encode', False, 'depreciated, for safe you could just use gru_baseline.py with auc 0.954 single model') flags.DEFINE_bool('use_pos', False, '') flags.DEFINE_bool('use_tag', False, '') flags.DEFINE_bool('use_ner', False, '') flags.DEFINE_integer('tag_emb_dim', 100, '') flags.DEFINE_bool('use_emb_fc', False, '') flags.DEFINE_bool('use_emb_att', False, '') flags.DEFINE_bool('use_emb_max', False, '') flags.DEFINE_float('sfu_keepprob', 0.5, '') flags.DEFINE_float('emb_keepprob', 0.5, '') flags.DEFINE_bool('emb_dropout', False, '') flags.DEFINE_bool('use_label_emb', False, '') flags.DEFINE_bool('use_label_att', False, '') flags.DEFINE_bool('simple_label_att', False, '') flags.DEFINE_bool('use_label_rnn', False, '') flags.DEFINE_string('label_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_string('self_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_integer('label_emb_dim', 100, '') flags.DEFINE_integer('label_emb_height', None, '') flags.DEFINE_bool('concat_label_emb', False, '') flags.DEFINE_bool('label2text_attention', False, '') flags.DEFINE_bool('perlabel_encoding', False, '') flags.DEFINE_bool('use_self_match', False, '') flags.DEFINE_bool('self_match_before_label_att', True, '') flags.DEFINE_string('loss_type', 'normal', '') flags.DEFINE_bool('hier_finetune', False, '') flags.DEFINE_bool('char_only', False, '') flags.DEFINE_integer('char_num_layers', 1, '') flags.DEFINE_integer('char_hidden_size', 100, '') flags.DEFINE_string('char_output_method', 'last', '') flags.DEFINE_integer('simple_char_num_layers', 3, '') flags.DEFINE_string('addtional_word_info', None, 'pos,tag,ner') flags.DEFINE_string('decay_target', None, 'loss or auc') flags.DEFINE_integer('decay_patience', 4, '') flags.DEFINE_float('decay_factor', 0.5, '') flags.DEFINE_float('decay_start_epoch_', 1., '') flags.DEFINE_bool('dynamic_weights', False, '') flags.DEFINE_bool('use_gate', False, '') flags.DEFINE_bool('use_position_encoding', False, '') ================================================ FILE: projects/ai2018/sentiment/algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-17 20:34:23.281520 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os from algos.weights import * from algos.config import NUM_CLASSES #from evaluate import load_class_weights def calc_loss(y, y_, weights, training=False): #y += 2 #print(y_, y, weights) #-----------deprciated seems per class learning rate decay do not improve if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: assert FLAGS.loss == 'cross' loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=tf.losses.Reduction.NONE) loss = melt.adjust_lrs(loss) loss = tf.reduce_mean(loss) #print('--------------weights', weights) # if weights == 1: # weights = tf.ones([FLAGS.num_learning_rate_weights], dtype=tf.float32) #weights = tf.expand_dims(weights * tf.get_collection('learning_rate_weights')[-1], 0) # FIXME weights actually is per example adjust not for classes.. should be of shape [batch_size] #loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights) else: if FLAGS.loss == 'cross': if not FLAGS.label_smoothing: loss = tf.losses.sparse_softmax_cross_entropy(y, y_, weights=weights) else: onehot_labels = tf.one_hot(y, NUM_CLASSES) print('--------------using label smoothing', FLAGS.label_smoothing) loss = tf.losses.softmax_cross_entropy(onehot_labels, y_, weights=weights, label_smoothing=FLAGS.label_smoothing) elif FLAGS.loss == 'focal': loss = melt.losses.focal_loss(y, y_) #----------depreciated below has bug.. if FLAGS.na_loss_ratio > 0.: y_ = tf.concat([y_[:,:,0:1], tf.reduce_sum(y_[:,:,1:], -1, keepdims=True)], -1) y_onehot = tf.one_hot(tf.to_int64(y > 0), 2) if no_weights(): bloss = tf.losses.sigmoid_cross_entropy(y_onehot, y_) else: bloss = tf.losses.sigmoid_cross_entropy(y_onehot, y_, reduction=tf.losses.Reduction.NONE) bloss = tf.reduce_sum(bloss * tf.expand_dims(weights, -1), -1) bloss = tf.reduce_mean(bloss) if FLAGS.na_loss_ratio_add: loss = loss + FLAGS.na_loss_ratio * bloss else: loss = (1 - FLAGS.na_loss_ratio) * loss + FLAGS.na_loss_ratio * bloss if FLAGS.earth_mover_loss_ratio > 0.: y_onehot = tf.one_hot(y, 4) earth_mover_loss = melt.losses.earth_mover_loss(y_onehot[:,:,1:], y_[:,:,1:]) loss = loss + FLAGS.earth_mover_loss_ratio * earth_mover_loss return loss # now consider simple rule level 0 loss + level 1 loss # not imporve, worse... def calc_hier_loss(y, y_, weights): binary_label = tf.to_int64(tf.equal(y, 0)) # sigmoid reduction by default is not None will return scalar and if set None will return result shape as label level0_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,0], weights=weights, reduction=tf.losses.Reduction.NONE) mask = tf.to_float(1 - binary_label) # softmax loss reduction by defualt is not None and will return scalar, set None will return shape as label level1_loss = tf.losses.sparse_softmax_cross_entropy(tf.maximum(y - 1, 0), y_[:,:,1:], weights=weights, reduction=tf.losses.Reduction.NONE) loss = level0_loss + level1_loss * mask loss = tf.reduce_mean(loss) return loss def calc_hier_neu_loss(y, y_, weights): binary_label = tf.to_int64(tf.equal(y, 0)) # sigmoid reduction by default is not None will return scalar and if set None will return result shape as label level0_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,0], weights=weights, reduction=tf.losses.Reduction.NONE) mask = tf.to_float(1 - binary_label) # softmax loss reduction by defualt is not None and will return scalar, set None will return shape as label level1_loss = tf.losses.sparse_softmax_cross_entropy(tf.maximum(y - 1, 0), y_[:,:,1:], weights=weights, reduction=tf.losses.Reduction.NONE) loss = level0_loss + level1_loss * mask # add neu binary cid = 2 binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) loss = loss + binary_loss loss = tf.reduce_mean(loss) return loss #now try to add neu binary loss, if imrove can try add all binary loss for na, neg,neu,pos def calc_add_binary_loss(y, y_, cids, weights): reduction = tf.losses.Reduction.SUM_BY_NONZERO_WEIGHTS if FLAGS.loss_combine_by_scalar else tf.losses.Reduction.NONE loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=reduction) for cid in cids: binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=reduction) loss = loss + binary_loss * FLAGS.other_loss_factor loss = tf.reduce_mean(loss) return loss def calc_binary_loss(y, y_, cid, weights): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights) return binary_loss def calc_regression_loss(y, y_, weights): y = y * 2 + 2 return tf.losses.mean_squared_error(y, y_, weights=weights) def calc_add_binaries_loss(y, y_, cid, weights): loss = tf.losses.sparse_softmax_cross_entropy(logits=y_, labels=y, weights=weights, reduction=tf.losses.Reduction.NONE) for cid in range(NUM_CLASSES): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) loss = loss + binary_loss * (1 / NUM_CLASSES) loss = tf.reduce_mean(loss) return loss def calc_binaries_only_loss(y, y_, cid, weights): loss = None for cid in range(NUM_CLASSES): binary_label = tf.to_int64(tf.equal(y, cid)) binary_loss = tf.losses.sigmoid_cross_entropy(binary_label, y_[:,:,cid], weights=weights, reduction=tf.losses.Reduction.NONE) if loss is None: loss = binary_loss else: loss = loss + binary_loss loss = tf.reduce_mean(loss) return loss def criterion(y, y_): weights = get_weights(FLAGS.aspect, FLAGS.attr_index) # only need this if we have label -1 means to mask mask = y >= 0 weights = weights * tf.to_float(mask) y = y * tf.to_int64(mask) # if FLAGS.use_class_weights: # weights = load_class_weights() # print('--------------', weights) if FLAGS.loss_type == 'normal': return calc_loss(y, y_, weights, training) elif FLAGS.loss_type == 'binary': return tf.losses.sigmoid_cross_entropy(tf.to_int64(y[:,FLAGS.binary_class_index:FLAGS.binary_class_index + 1] > 0), y_, reduction=tf.losses.Reduction.NONE, weights=weights) elif FLAGS.loss_type == 'hier': # not improve deprecated return calc_hier_loss(y, y_, weights) elif FLAGS.loss_type == 'add_neu_binary': # neu cid is 2 return calc_add_binary_loss(y, y_, [2], weights) elif FLAGS.loss_type.startswith('add_binary_'): cids = [int(x) for x in FLAGS.loss_type.split('_')[-1].split(',')] return calc_add_binary_loss(y, y_, cids, weights) elif FLAGS.loss_type.startswith('binary_'): cid = int(FLAGS.loss_type.split('_')[-1]) return calc_binary_loss(y, y_, cid, weights) elif FLAGS.loss_type == 'regression': return calc_regression_loss(y, y_, weights) elif FLAGS.loss_type == 'add_binaries': return calc_add_binaries_loss(y, y_, weights) elif FLAGS.loss_type == 'binaries_only': return calc_binaries_only_loss(y, y_, weights) elif FLAGS.loss_type == 'hier_neu': return calc_hier_neu_loss(y, y_, weights) else: raise ValueError(f'Unsupported loss type{FLAGS.loss_type}') ================================================ FILE: projects/ai2018/sentiment/algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ptr-net.py # \author chenghuige # \date 2018-01-15 11:50:08.306272 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary from algos.config import NUM_CLASSES, NUM_ATTRIBUTES from algos.weights import * import prepare.config import melt logging = melt.logging import gezi import numpy as np UNK_ID = 1 # code above is dpreciated juse use Models derived from ModelBase class ModelBase(melt.Model): def __init__(self, embedding=None, lm_model=False, use_text_encoder=True): super(ModelBase, self).__init__() self.num_units = FLAGS.rnn_hidden_size if FLAGS.encoder_type != 'convnet' else FLAGS.num_filters self.dropout_rate = 1 - FLAGS.keep_prob self.keep_prob = 1 - self.dropout_rate self.num_layers = FLAGS.num_layers config = { 'word': { 'vocab': FLAGS.vocab, 'num_layers': FLAGS.num_layers, 'hidden_size': FLAGS.rnn_hidden_size, 'emb_dim': FLAGS.emb_dim, 'embedding_file': FLAGS.word_embedding_file, 'trainable': FLAGS.finetune_word_embedding, 'num_finetune': FLAGS.num_finetune_words, }, 'char': { 'limit': FLAGS.char_limit, 'use_char_emb': FLAGS.use_char_emb, 'emb_dim': FLAGS.char_emb_dim, 'trainable': FLAGS.finetune_char_embedding, 'hidden_size': FLAGS.rnn_hidden_size, 'output_method': FLAGS.char_output_method, 'combiner': FLAGS.char_combiner, 'padding': FLAGS.char_padding, 'num_finetune': FLAGS.num_finetune_chars, }, 'pos': { 'emb_dim': FLAGS.tag_emb_dim }, 'ner': { 'emb_dim': FLAGS.tag_emb_dim }, 'encoder': FLAGS.encoder_type, 'dropout_rate': 1 - FLAGS.keep_prob, 'recurrent_dropout': FLAGS.recurrent_dropout, 'cell': FLAGS.cell, 'rnn_padding': FLAGS.rnn_padding, 'rnn_no_padding': FLAGS.rnn_no_padding, 'rnn_train_init_state': FLAGS.rnn_train_init_state, 'concat_layers': FLAGS.concat_layers, } self.lm_model = None if use_text_encoder: if FLAGS.pretrain_encoder == 'bilm': self.encode = wenzheng.TextEncoder(config, embedding, use_char=FLAGS.use_char, use_char_emb=FLAGS.use_char_emb, use_pos=FLAGS.use_pos, use_ner=FLAGS.use_ner, lm_model=lm_model) else: self.encode = wenzheng.BertEncoder(embedding) self.lm_model = self.encode.lm_model if not self.lm_model: # hier not improve self.hier_encode = melt.layers.HierEncode() if FLAGS.use_hier_encode else None # top-k best, max,att can benfit ensemble(better then max, worse then topk-3), topk,att now best with 2layers logging.info('encoder_output_method:', FLAGS.encoder_output_method) logging.info('topk:', FLAGS.top_k) self.pooling = melt.layers.Pooling( FLAGS.encoder_output_method, top_k=FLAGS.top_k, att_activation=getattr(tf.nn, FLAGS.att_activation)) #self.pooling = keras.layers.GlobalMaxPool1D() # mlp not help much! if FLAGS.mlp_ratio != 0: self.dropout = keras.layers.Dropout(0.3) if FLAGS.mlp_ratio < 0: # here activation hurt perf! #self.dense = keras.layers.Dense(NUM_ATTRIBUTES * NUM_CLASSES * 2, activation=tf.nn.relu) self.dense = keras.layers.Dense(NUM_ATTRIBUTES * NUM_CLASSES * 2) elif FLAGS.mlp_ratio <= 1: self.dense = melt.layers.DynamicDense(FLAGS.mlp_ratio) else: self.dense = kears.layers.Dense(int(FLAGS.mlp_ratio)) else: self.dense = None if FLAGS.use_len: self.len_embedding = wenzheng.Embedding(3000, 32) self.num_classes = NUM_CLASSES if FLAGS.binary_class_index is None else 1 if FLAGS.loss_type == 'regression': self.num_classes = 1 self.logits = keras.layers.Dense(NUM_ATTRIBUTES * self.num_classes, activation=None) def unk_aug(self, x, x_mask=None, training=False): """ randomly make 10% words as unk TODO this works, but should this be rmoved and put it to Dataset so can share for both pyt and tf """ # if not self.training or not FLAGS.unk_aug or melt.epoch() < FLAGS.unk_aug_start_epoch: # return x if not training or not FLAGS.unk_aug: return x def aug(x, x_mask): # print('---------------do unk aug') # print('ori_x....', x) if x_mask is None: x_mask = x > 0 x_mask = tf.to_int64(x_mask) ratio = tf.random_uniform([1,], 0, FLAGS.unk_aug_max_ratio) mask = tf.random_uniform([melt.get_shape(x, 0), melt.get_shape(x, 1)]) > ratio mask = tf.to_int64(mask) rmask = FLAGS.unk_id * (1 - mask) x = (x * mask + rmask) * x_mask #print('aug_x....', x) return x # print('----------------', FLAGS.unk_aug_start_step) # print(tf.constant(FLAGS.unk_aug_start_step)) # print(tf.train.get_global_step()) # print(tf.train.get_global_step() < tf.constant(FLAGS.unk_aug_start_step)) # well, below eager ok, but graph mode, get_global_step() is None #return tf.cond(tf.train.get_global_step() < tf.constant(FLAGS.unk_aug_start_step), lambda: x, lambda: aug(x, x_mask)) return tf.cond(tf.train.get_or_create_global_step() < tf.constant(FLAGS.unk_aug_start_step, dtype=tf.int64), lambda: x, lambda: aug(x, x_mask)) class BiLanguageModel(ModelBase): def __init__(self, embedding=None, lm_model=True): super(BiLanguageModel, self).__init__(embedding, lm_model=True) def call(self, input, training=False): return self.encode(input, training=False) class RNet(ModelBase): def __init__(self, embedding=None, lm_model=False): super(RNet, self).__init__(embedding, lm_model=lm_model) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob if FLAGS.att_dropout else 1., combiner=FLAGS.att_combiner) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) #self.multiplier = 2 if self.encode.bidirectional else 1 if FLAGS.use_self_match: self.match_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob if FLAGS.att_dropout else 1., combiner=FLAGS.att_combiner) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob, cell=FLAGS.cell) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) ori_c_len = c_len if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) if self.lm_model: return x # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) if FLAGS.use_label_att: label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) if FLAGS.use_label_rnn: label_seq = self.label_encode(label_seq, tf.ones([batch_size], tf.int32) * tf.cast(melt.get_shape(label_emb, 1), tf.int32)) x = self.att_dot_attention(x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) if not FLAGS.simple_label_att: x = self.att_encode(x, c_len, training=training) # put self match at last, selfmatch help a bit if FLAGS.use_self_match: x = self.match_dot_attention(x, x, mask=c_mask, training=training) x = self.match_encode(x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) if FLAGS.use_len: len_emb = self.len_embedding(ori_c_len) x = tf.concat([x, len_emb], -1) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) # # No help match # if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: # x = melt.adjust_lrs(x) if FLAGS.loss_type == 'regression': x = tf.nn.sigmoid(x) * 10 else: x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x # same as Model but for match attention using SeqAttn class RNetV2(RNet): def __init__(self, embedding=None, lm_model=False): super(RNetV2, self).__init__(embedding, lm_model=lm_model) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner=FLAGS.att_combiner) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.multiplier = 2 if self.encode.bidirectional else 1 # hier a bit worse self.hier_encode = melt.layers.HierEncode() if FLAGS.use_hier_encode else None if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) if self.lm_model: return x # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) if FLAGS.use_label_att: label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) if FLAGS.use_label_rnn: label_seq = self.label_encode(label_seq, tf.ones([batch_size], tf.int32) * tf.cast(melt.get_shape(label_emb, 1), tf.int32)) x = self.att_dot_attention(x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) if not FLAGS.simple_label_att: x = self.att_encode(x, c_len, training=training) # put self match at last, selfmatch help a bit if FLAGS.use_self_match: x = self.match_dot_attention(x, mask=c_mask, training=training) x = self.match_encode(x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) # # No help match # if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: # x = melt.adjust_lrs(x) if FLAGS.loss_type == 'regression': x = tf.nn.sigmoid(x) * 10 else: x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x # same as RNetV2 but is gate + sfu class RNetV3(RNet): def __init__(self, embedding=None): super(RNetV3, self).__init__(embedding) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=self.keep_prob, combiner='gate') #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner='sfu', identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) #same as RNetV3 but all use sfu and since dot attention with sfu not good, change # V4 is bad , seems for label attention can only use gate class RNetV4(RNet): def __init__(self, embedding=None): super(RNetV4, self).__init__(embedding) if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim) if FLAGS.use_label_att: self.att_dot_attention = melt.layers.melt.layers.SeqAttnMatch(combiner='sfu', identity=True, keep_prob=self.keep_prob) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_label_rnn: self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attention = melt.layers.SelfAttnMatch(combiner='sfu', identity=True, diag=False, keep_prob=self.keep_prob) self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) #same as ModelV2 but this is pytorch Mreader like attention(light attention) class MReader(ModelBase): def __init__(self, embedding=None): super(MReader, self).__init__() #same input dim then outpu dim , if concat will * num_layers assert not FLAGS.concat_layers if FLAGS.use_label_emb or FLAGS.use_label_att: #assert not (FLAGS.use_label_emb and FLAGS.use_label_att) self.label_emb_height = NUM_CLASSES * NUM_ATTRIBUTES if not FLAGS.label_emb_height else FLAGS.label_emb_height if FLAGS.use_label_emb and FLAGS.use_label_att: assert self.label_emb_height == NUM_CLASSES * NUM_ATTRIBUTES self.label_embedding = melt.layers.Embedding(self.label_emb_height, FLAGS.emb_dim) if FLAGS.use_label_emb: #self.label_dense = keras.layers.Dense(FLAGS.emb_dim, activation=tf.nn.relu) self.label_dense = keras.layers.Dense(FLAGS.emb_dim, use_bias=False) if FLAGS.use_label_att: self.att_dot_attentions = [] self.att_encodes = [] for _ in range(FLAGS.hop): self.att_dot_attentions.append(melt.layers.melt.layers.SeqAttnMatch(combiner=FLAGS.att_combiner, identity=True)) #self.att_dot_attention = melt.layers.DotAttention(hidden=self.num_units, keep_prob=0.5, combiner=FLAGS.att_combiner) self.att_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) self.label_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) if FLAGS.use_self_match: self.match_dot_attentions = [] self.match_encodes = [] for _ in range(FLAGS.hop): self.match_dot_attentions.append(melt.layers.SelfAttnMatch(combiner=FLAGS.att_combiner, identity=True, diag=False)) self.match_encodes.append(melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob)) #self.match_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=0.5) def call(self, input, training=False): x = input['content'] x = self.unk_aug(x, training=training) c_mask = tf.cast(x, tf.bool) batch_size = melt.get_shape(x, 0) c_len, max_c_len = melt.length2(x) if FLAGS.rnn_no_padding: logging.info('------------------no padding! train or eval') #c_len = tf.ones([batch_size], dtype=x.dtype) * tf.cast(melt.get_shape(x, -1), x.dtype) c_len = max_c_len x = self.encode(input, c_len, max_c_len, training=training) # not help if self.hier_encode is not None: x = self.hier_encode(x, c_len) # yes just using label emb.. label_emb = self.label_embedding(None) label_seq = tf.tile(tf.expand_dims(label_emb, 0), [batch_size, 1, 1]) label_seq = self.label_encode(label_seq, tf.ones([batch_size], dtype=tf.int64) * self.label_emb_height, training=training) for i in range(FLAGS.hop): x = self.att_dot_attentions[i](x, label_seq, mask=tf.ones([batch_size, self.label_emb_height], tf.bool), training=training) x = self.att_encodes[i](x, c_len, training=training) x = self.match_dot_attentions[i](x, mask=c_mask, training=training) x = self.match_encodes[i](x, c_len, training=training) x = self.pooling(x, c_len, calc_word_scores=self.debug) #x = self.pooling(x) # not help much if self.dense is not None: x = self.dense(x) x = self.dropout(x, training=training) if not FLAGS.use_label_emb: x = self.logits(x) else: x = self.label_dense(x) # TODO.. x = melt.dot(x, self.label_embedding(None)) x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, self.num_classes]) return x #--------------BERT! # using bert transformer from third.bert import modeling class Transformer(ModelBase): def __init__(self, embedding=None): super(Transformer, self).__init__(embedding, lm_model=False, use_text_encoder=False) self.init_checkpoint = None if FLAGS.bert_dir: bert_dir = FLAGS.bert_dir bert_config_file = f'{bert_dir}/bert_config.json' bert_config = modeling.BertConfig.from_json_file(bert_config_file) self.init_checkpoint= f'{bert_dir}/bert_model.ckpt' elif FLAGS.bert_config_file: bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) else: bert_config = { "attention_probs_dropout_prob": 0.1, "directionality": "bidi", "hidden_act": "gelu", "hidden_dropout_prob": 0.1, "hidden_size": 768, "initializer_range": 0.02, "intermediate_size": 3072, "max_position_embeddings": 512, "num_attention_heads": 12, "num_hidden_layers": 12, "pooler_fc_size": 768, "pooler_num_attention_heads": 12, "pooler_num_fc_layers": 3, "pooler_size_per_head": 128, "pooler_type": "first_token_transform", "type_vocab_size": 2, "vocab_size": gezi.Vocabulary(FLAGS.vocab).size() } bert_config = modeling.BertConfig.from_dict(bert_config) bert_config.attention_probs_dropout_prob = FLAGS.bert_dropout bert_config.hidden_dropout_prob = FLAGS.bert_dropout bert_config.num_hidden_layers = FLAGS.bert_num_layers bert_config.num_attention_heads = FLAGS.bert_num_heads logging.info('bert_config\n', bert_config.to_json_string()) self.bert_config = bert_config if FLAGS.transformer_add_rnn: self.rnn_encode = melt.layers.CudnnRnn(num_layers=1, num_units=self.num_units, keep_prob=self.keep_prob) def restore(self): tvars = tf.trainable_variables() (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, self.init_checkpoint) tf.train.init_from_checkpoint(self.init_checkpoint, assignment_map) logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) def call(self, input, training=False): self.step += 1 x = input['content'] x = self.unk_aug(x, training=training) batch_size = melt.get_shape(x, 0) c_mask = tf.cast(x, tf.bool) # TODO move to __init__ model = modeling.BertModel( config=self.bert_config, is_training=training, input_ids=x, input_mask=c_mask, use_one_hot_embeddings=FLAGS.use_tpu) if self.step == 0 and self.init_checkpoint: self.restore() c_len = melt.length(x) if FLAGS.encoder_output_method == 'last': x = model.get_pooled_output() else: x = model.get_sequence_output() if training: x = tf.nn.dropout(x, keep_prob=0.9) logging.info('---------------bert_lr_ratio', FLAGS.bert_lr_ratio) x = x * FLAGS.bert_lr_ratio + tf.stop_gradient(x) * (1 - FLAGS.bert_lr_ratio) if FLAGS.transformer_add_rnn: assert FLAGS.encoder_output_method != 'last' x = self.rnn_encode(x, c_len) if FLAGS.encoder_output_method != 'last': x = self.pooling(x, c_len) x2 = model.get_pooled_output() x = tf.concat([x, x2], -1) x = self.logits(x) x = tf.reshape(x, [batch_size, NUM_ATTRIBUTES, NUM_CLASSES]) return x # class Model(ModelBase): # def call(self, input, training=False): # x = input['content'] # c_len = melt.length(x) # x = self.encode(input, c_len, training=training) # x = self.pooling(x, c_len) # x = self.logits(x) # x = tf.reshape(x, [-1, NUM_ATTRIBUTES, NUM_CLASSES]) # return x ================================================ FILE: projects/ai2018/sentiment/algos/weights.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file weights.py # \author chenghuige # \date 2018-09-17 19:45:07.901500 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os import numpy as np from algos.config import NUM_CLASSES, NUM_ATTRIBUTES, ATTRIBUTES, ATTRIBUTES_MAP import melt logging = melt.logging def no_weights(): return FLAGS.aspect == 'all' and FLAGS.attr_index is None def get_pos(aspect): start = None end = None index = None if '-' in aspect: aspect, index = aspect.split('-') index = int(index) if aspect == 'location': start = 0 end = 3 elif aspect == 'service': start = 3 end = 7 elif aspect == 'price': start = 7 end = 10 elif aspect == 'environment': start = 10 end = 14 elif aspect == 'dish': start = 14 end = 18 elif aspect == 'others': start = 18 end = 20 if index is not None: start += index end = start + 1 return start, end def parse_weights(): if ':' in FLAGS.weights: weights = np.ones([NUM_ATTRIBUTES]) * FLAGS.init_weight for item in FLAGS.weights.split(','): aspect, val = item.split(':') val = float(val) start, end = get_pos(aspect) if start is None: assert aspect in ATTRIBUTES_MAP weights[ATTRIBUTES_MAP[aspect]] = val else: for i in range(start, end): weights[i] = val else: weights = list(map(float, FLAGS.weights.split(','))) assert len(weights) == NUM_ATTRIBUTES return weights def get_weights(aspect, attr_index=None): if FLAGS.weights: weights = parse_weights() else: weights = np.zeros([NUM_ATTRIBUTES]) if no_weights(): return 1. if attr_index is not None: weights[attr_index] = 1. start, end = get_pos(aspect) if start is None: assert aspect in ATTRIBUTES_MAP weights[ATTRIBUTES_MAP[aspect]] = 1. else: for i in range(start, end): weights[i] = 1. logging.info('weights:', weights) logging.info('weights:', list(zip(ATTRIBUTES, weights))) return tf.expand_dims(tf.constant(weights, dtype=tf.float32), 0) ================================================ FILE: projects/ai2018/sentiment/analysis/analysis.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 236, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import matplotlib as mpl\n", "from matplotlib.font_manager import FontProperties\n", "import seaborn as sns\n", "\n", "dpi = 300\n", "mpl.rcParams['figure.dpi']= dpi\n", "\n", "sns.set(font=['sans-serif'])\n", "sns.set_style(\"whitegrid\",{\"font.sans-serif\":['Microsoft JhengHei']})\n", "#sns.set_style(\"whitegrid\",{\"font.sans-serif\":['Microsoft YaHei']})" ] }, { "cell_type": "code", "execution_count": 206, "metadata": {}, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%html\n", "" ] }, { "cell_type": "code", "execution_count": 207, "metadata": {}, "outputs": [], "source": [ "tags = ['位置', '服务', '价格', '环境', '菜品', '其他']\n", "attrs = ['交通是否便利', '距离商圈远近', '是否容易寻找',\n", " '排队等候时间', '服务人员态度', '是否容易停车', '点菜/上菜速度',\n", " '价格水平', '性价比', '折扣力度',\n", " '装修情况', '嘈杂情况', '就餐空间', '卫生情况', \n", " '分量', '口感', '外观', '推荐程度',\n", " '本次消费感受', '再次消费的意愿']\n", "classes = ['未提及', '负面', '中性', '正面']" ] }, { "cell_type": "code", "execution_count": 208, "metadata": {}, "outputs": [], "source": [ "df = pd.read_csv('./train.csv')" ] }, { "cell_type": "code", "execution_count": 209, "metadata": {}, "outputs": [], "source": [ "cols = df.columns[2:22]\n", "for col, attr in zip(cols, attrs):\n", " vals = df[col].values\n", " vals = [classes[x + 2] for x in vals]\n", " df[attr] = vals" ] }, { "cell_type": "code", "execution_count": 237, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 237, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABfEAAAWsCAYAAACJtMnFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3XuUVnW9P/DPXBjkMtwEREAEAUMUjJ+IiiZlamUdTVFSE2+oSaSsMmWZnixdZis9J7GjyCnLPAaSECy1OrbIS1pe46KIqKAockccGEGYgZnfHy32mf3MMPPMMMoGXq+/ns9+vnt/vntz+eO99/PdBdXV1dUBAAAAAABkTuHungAAAAAAAFA3IT4AAAAAAGSUEB8AAAAAADJKiA8AAAAAABklxAcAAAAAgIwS4gMAAAAAQEYJ8QEAAAAAIKOE+AAAAAAAkFFCfAAAAAAAyCghPgAAAAAAZJQQHwAAAAAAMkqIDwAAAAAAGSXEBwAAAACAjBLiAwAAAABARgnxAQAAAAAgo4T4AAAAAACQUUJ8AAAAAADIKCE+AAAAAABklBAfAAAAAAAySogPAAAAAAAZJcQHAAAAAICMEuIDAAAAAEBGCfEBAAAAACCjhPgAAAAAAJBRQnwAAAAAAMgoIT4AAAAAAGSUEB8AAAAAADJKiA8AAAAAABklxAcAAAAAgIwS4gMAAAAAQEYJ8QEAAAAAIKOE+AAAAAAAkFHFu3sCwJ6luro6Kisra21v0aJFFBQU7IYZAQAAAMDeS4gPNEplZWW8+uqrtbYPGjQoSkpKdsOMAAAAAGDvZTkdAAAAAADIKCE+AAAAAABklBAfAAAAAAAySogPAAAAAAAZJcQHAAAAAICMEuIDAAAAAEBGCfEBAAAAACCjhPgAAAAAAJBRQnwAAAAAAMgoIT4AAAAAAGSUEB8AAAAAADJKiA8AAAAAABklxAcAAAAAgIwS4gMAAAAAQEYJ8QEAAAAAIKOE+AAAAAAAkFFCfAAAAAAAyCghPgAAAAAAZJQQHwAAAAAAMkqIDwAAAAAAGSXEBwAAAACAjBLiAwAAAABARgnxAQAAAAAgo4T4AAAAAACQUUJ8AAAAAADIKCE+AAAAAABklBAfAAAAAAAySogPAAAAAAAZJcQHAAAAAICMEuIDAAAAAEBGCfEBAAAAACCjhPgAAAAAAJBRQnwAAAAAAMgoIT4AAAAAAGSUEB8AAAAAADJKiA8AAAAAABklxAcAAAAAgIwS4gMAAAAAQEYJ8QEAAAAAIKOE+AAAAAAAkFFCfAAAAAAAyCghPgAAAAAAZFTx7p4A2ffOO+/EggULYs2aNVFRURHt2rWLvn37xpAhQ6Jly5bN1qeysjLmz58fixcvjrKysigqKoouXbrE4YcfHv3792+2PhER69ati3nz5sX7778fmzdvjtatW0evXr1iyJAh0bFjx2bttWjRonj99ddj3bp1sX379ujYsWP0798/Bg8eHMXF/gkCAAAAADsnQcyoz3zmM5/IcR944IE45phjGhxXXV0dM2fOjPvuuy8WL15c55jWrVvHWWedFePGjYtOnTo1eU7r1q2LyZMnx8yZM6O8vLzOMb17947LL788Ro4cGQUFBU3u9eKLL8akSZPi+eefj6qqqlrfFxUVxYgRI2L8+PExYMCAJvepqKiIKVOmxAMPPBDLly+vc0yHDh3i3HPPjSuuuCLatGnT5F4AAAAAwN6roLq6unp3T4LaPokQv0WLFvHUU09F586d6x23fv36uPrqq+Oll17K67idOnWKu+66K44++uhGz+npp5+O6667LsrKyvIaf8IJJ8TEiROjbdu2jeqzbdu2uO222+LBBx/Ma3yLFi3iuuuuiwsvvLBRfSIi3nvvvRg3bly8+eabeY3v2bNnTJ48Ofr169foXrtDRUVFvPrqq7W2Dxo0KEpKSnbDjAAAAABg72VN/H3ISSedlFeAf95559UK8EtKSqJPnz7Rv3//WkHt+vXrY8yYMTFv3rxGzefxxx+PsWPH1grw27dvHwMHDoxu3brVeur+2WefjTFjxsTWrVvz7lNVVRXf+973agX4hYWF0b179xg4cGCUlpamvqusrIxbb7017r///kad09KlS+Pcc8+tFeC3atUqDj300Ojdu3e0aNEi9d37778fF1xwQbz77ruN6gUAAAAA7P08iZ9R//jHP3b5GA899FA8/vjjSX3ffffFCSecsNPxVVVVMXr06Hj55ZeTbd27d49x48bFGWeckYTPlZWVMWvWrJg4cWKsXbs2GXvAAQfEY489Fu3atWtwbosWLYpRo0alwvjPf/7z8Z3vfCcGDRqUbFu9enVMnjw5pkyZEjX/qp5//vlx0003NdgnIuLnP/953Hvv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ADJKiA8AAAAAABklxAcAAAAAgIwS4gMAAAAAQEYJ8QEAAAAAIKOE+AAAAAAAkFFCfAAAAAAAyCghPgAAAAAAZJQQHwAAAAAAMkqIDwAAAAAAGVW8uyfArlu1alW89tprsXz58ti0aVMUFRVF27Zto3v37nHYYYfFAQcc0ORjv/POO7FgwYJYs2ZNVFRURLt27aJv374xZMiQaNmyZbOdQ2VlZcyfPz8WL14cZWVlUVRUFF26dInDDz88+vfv32x9IiLWrVsX8+bNi/fffz82b94crVu3jl69esWQIUOiY8eOzdpr0aJF8frrr8e6deti+/bt0bFjx+jfv38MHjw4iov98wMAAAAA6idF3ENVVFTEzJkz46GHHoqFCxfWO/bQQw+NH/3oR3HUUUfldezq6uqYOXNm3HfffbF48eI6x7Ru3TrOOuusGDduXHTq1KnR899h3bp1MXny5Jg5c2aUl5fXOaZ3795x+eWXx8iRI6OgoKDJvV588cWYNGlSPP/881FVVVXr+6KiohgxYkSMHz8+BgwY0OQ+FRUVMWXKlHjggQdi+fLldY7p0KFDnHvuuXHFFVdEmzZtmtwLAAAAANi7FVRXV1fv7knQOHPmzInrr78+li5dmvc+//7v/x4XXHBBg+PWr18fV199dbz00kt5HbdTp05x1113xdFHH533XHZ4+umn47rrrouysrK8xp9wwgkxceLEaNu2baP6bNu2LW677bZ48MEH8xrfokWLuO666+LCCy9sVJ+IiPfeey/GjRsXb775Zl7je/bsGZMnT45+/fo1utfuUlFREa+++mqt7YMGDYqSkpJPfT7f+vH0KN+09VPvCzRNaZuWMfmms3f3NAAAAGCPYU38PcysWbPiwgsvrBXgFxYWRq9evWLw4MExYMCAJj0dv379+jjvvPNqBfglJSXRp0+f6N+/f62Qdv369TFmzJiYN29eo3o9/vjjMXbs2FoBfvv27WPgwIHRrVu3Wk/dP/vsszFmzJjYujX/wLaqqiq+973v1QrwCwsLo3v37jFw4MAoLS1NfVdZWRm33npr3H///Y06p6VLl8a5555bK8Bv1apVHHroodG7d+9o0aJF6rv3338/Lrjggnj33Xcb1QsAAAAA2DdYTmcP8r//+79x/fXXp5aC6devX1x22WVx8skn1wqjV61aFU899VT84Q9/aPDYVVVVcdVVV6VuDnTv3j3GjRsXZ5xxRhI+V1ZWxqxZs2LixImxdu3aiIjYunVrXH311fHYY49Fu3btGuy1aNGiuPbaa2P79u3Jts9//vPxne98JwYNGpRsW716dUyePDmmTJkSO34wMm/evPjpT38aN910U4N9IiImTpwYjz/+eFK3atUqxowZE6NHj44OHTok25977rm44447YsGCBcm2n/3sZ/HZz342PvvZzzbYZ/PmzfGtb30rPvjgg2Rb//7946qrropTTz01uSHx8ccfx9SpU+Puu++Ojz76KCIiPvzww7j66qtj+vTptUJ+AAAAAGBhWcDuAAAgAElEQVTfZjmdPcSSJUti5MiR8fHHHyfbLr/88hg/fnxewe+OF7juzP333x+33XZbUh966KFx3333RdeuXesc/95778WFF14YK1euTLaNHj06brzxxnrnUVVVFSNHjkyt43/ppZfGhAkTdrrPtGnT4qabbkqC/IKCgpgxY0Ycfvjh9fZasGBBnHPOOclNj9LS0rj33ntj6NChdY7fsmVLjB07Nv7xj38k2wYMGBCzZs1qcC3+W2+9NR544IGkHjZsWEyaNGmnS/+88sorMWbMmNi4cWOy7frrr4+LL7643j5ZYDkdYFdYTgcAAAAax3I6e4jrr78+FeBPmDAhvv/97+f95HZ9AX55eXlMmjQpqVu1ahWTJk3aaYAfEdGrV6+44447UtumTZuWehK9Lo888kgqwD/xxBPrDfAjIr7xjW/EyJEjk7q6ujo13525/fbbU79auPnmm3ca4EdE7LfffnHnnXdGx44dk22LFi2KJ554ot4+y5Yti6lTpyZ1ly5d4p577ql37f7BgwfXuuHxy1/+MioqKurtBQAAAADsW4T4e4DZs2fH/Pnzk/rMM8+MSy+9tNmOP2PGjNTa9FdeeWX07Nmzwf2GDh0aX/va15K6oqKiwaV7fvOb3ySfS0pK4oc//GFec7zmmmuiTZs2Sf3EE0/E6tWrdzp+4cKF8fzzzyf18ccfH6eddlqDfdq3bx/f/e53U9seeuihevf57W9/G5WVlUk9YcKEWksb1eWMM86IIUOGJPW6deti9uzZDe4HAAAAAOw7hPgZV1VVFRMnTkzq9u3bxw9+8INm7TFjxozkc0lJSZx33nl573vuueem6prrz+d67bXXYtGiRUl90kknxUEHHZRXn06dOsWXvvSlpN6+fXu9gXfuzYSLLroorz4REaeffnrqlwvPPfdclJeX1zl227Zt8eijjyZ1ly5d8rpZsENjrh8AAAAAsO8R4mfcX//613jzzTeT+uKLL87r5bH5Wrp0aer4J510UrRv3z7v/YcOHRrdu3dP6gULFsT69evrHPuXv/wlVZ911lmNmuvpp5+eqp955pmdjq3Zq0uXLnHCCSfk3adVq1ZxyimnJHVlZWVqnfyaXnjhhdSvGE4//fQoKirKu9cpp5wS++23X1L//e9/Ty0BBAAAAADs24T4GffYY48ln1u3bh0XXnhhsx4/N5weMWJEo/YvKCiIY445Jqmrq6tj7ty5DfZq0aJFHHfccY3qddRRR6XeATB37tyo673MS5YsSS21c8IJJzQqWI+IOPbYY1P1nDlz6hy3q9evTZs2MXjw4KQuLy9P3VQBAAAAAPZtQvwM27JlS/ztb39L6hNPPLHel6U2RW7gfuSRRzb6GIMGDUrVr7/+eq0xW7duTb3QduDAgVFSUtKoPiUlJTFgwICkLisri5UrV9Yalxu4N+WcagbrEXWfU0T6+hUVFdW6FvnI3afmkkMAAAAAwL5NiJ9hzz77bGzevDmpay7x0lxqBsalpaVxyCGHNPoYuSH022+/XWvM4sWLY9u2bUmdG5Ln64gjjkjVS5YsqTXmjTfeSNVN6XXIIYek1sWv65xye/Xt2ze1T77yOScAAAAAYN8kxM+wl156KVUPHz68WY9fXV0d77zzTlL36NEjCgoKGn2cAw88MFWvWLGi1pjcYLpnz56N7hMRqfX38+2V78tzayosLIwDDjggqdetWxcVFRWpMatXr46PPvpol/pE5HdOAAAAAMC+SYifYTXXRt9///2jU6dOtcZ89NFHsWDBgnjppZfijTfe2OlLZeuyZs2aqKysTOrcMD5f+++/f2qt+jVr1tQakxtMN7VX165dU3VDvVq3bt3kFwHXDPGrq6tr9Vq+fHmqbuo51ewTUfc5AQAAAAD7puLdPQF2rmaI369fv+Tztm3bYubMmfHQQw/Fa6+9Vuvlrv37948vfvGLcckll0SHDh12evzcsDg3TM5XYWFhdO7cOVmfvqysrMFe3bp1a1Kv3Dlu2LCh3l5N7bOzXjV/QdBc169Lly5RUFCQ/DnWdf0AAAAAgH2TED+j1q9fH+vWrUvqXr16RUTEqlWr4qqrropXXnllp/u+9dZb8dZbb8XUqVPjBz/4QXz961+vc9zGjRtTdWlpaZPn26pVq+Tz5s2bo6qqKgoL/++HHrlhe1Nf0Ju75nx5eXmqrqysTL1HoLnOqa5ezXX9iouLo6SkJLZu3RoRkVqiZ0+ybdu2Ji3H1Fg1f/UB7B1q/ioMAAAAsiBLGZQQP6Nyn/IuLS2N9evXx+jRo+O9997L6xgbNmyICRMmxOrVq+Nb3/pWre9zQ+mWLVs2eb41962uro7KysrUttxguqm9cvfLXaf+kzqnT6PXjhA/t8+e4vXXX//EexQXF8eRRx75ifcBPl0LFy5MvfwcAAAAdrejjjpqd08hIcTPqNzQu3Xr1vGDH/wgCfAPPfTQGD16dBx33HHRtWvX2LJlS7z33nvxxBNPxP/8z/+kAub//M//jL59+8bJJ5+cOmbuk4/NGXjnhvjN1aukpCRV54Y+uX1yxzdG7hwb6tVc10+QBQAAAADs4MW2GbVp06ZU/eKLL8aTTz4ZERHf+c53YtasWTFq1Kg46KCDomXLltG+ffsYNGhQjB8/Ph5//PEYPHhwav8bbrih1vIv27dvT9W78hOR4uL0/aDcY+UG003tlbtfbt9P8pxy6+Y6p9xj5/YBAAAAAPZdQvyMqivEj4i45ppr4qqrroqioqKd7rv//vvHb37zm+jRo0eyraysLB566KHUuNzQeVfWJN6yZUvyuaioqNZT6c3Vq2afiNpr5H9S51RXr9yn/JurV24fAAAAAGDf5ZHfjKprSZVjjjkmrrjiirz2b9u2bdx4440xduzYZNu0adNS++eGxTvWZG+Kmuu4574QNiKiTZs2zdIrd7/cXrnntCvry+fum3vs5rx+Nfet6/rtCQ477LBMvfAD2HMMHDhwd08BAAAAMkuIn1F1PY397W9/u1HH+PznPx89evSI5cuXR0TE+++/HytXrowDDzwwImqHxbsSQtd8kryuELq5ejX0dPwndU51Hbs5e9W8YbCnPolfXFwsxAeaxP8dAAAAsHOW08mo3CfX27VrF0cffXSjjlFYWBjHHntsaturr76afM4Ni9evX9/IWf6fDz74IPncpUuXWt/n9vrwww+b1Cd3jp07d07VhYWFqXC9uc6prl7Ndf3KyspSv7zI7QMAAAAA7LuE+BmVG+IfdNBB9a6DvzMDBgxI1TWD6e7du6e+W7lyZaOPHxFRXl6eWsO/d+/etcbsePp/hxUrVjSpV+4cG+q1atWqqK6ublKvVatWJZ87d+4cpaWlqe+b6/rV7BNR9zkBAAAAAPsmIX5G9ezZM1U3dYmVDh06pOoNGzYkn3OD6U8yWO/Tp0+9++QrN/DOPW5u/8rKyli7dm2TetWcY13nlLutqeeUz/UDAAAAAPZNQvyM6tSpU3Tq1Cmpy8vLm3Sc4uL0aw/222+/VH3wwQcnn99///34+OOPG91j4cKFqfqQQw6pNSY3mH7zzTcb3Se3V8uWLaNHjx6fSK+VK1dGWVlZUtd1Tu3bt4+OHTsm9RtvvNHoPhH5XT8AAAAAYN8kxM+wfv36JZ+XL1/epGVhagbREZEKnSMiBg4cmHzetm1bzJ8/v9E95s2bl6qHDRtWa0zv3r1TvyaYM2dOo/ts3749XnnllaQeOnRoFBbW/itc85ya2mvu3Lmpuq5zyu21du3aWLZsWaN71bx+rVu3jiOOOKLRxwAAAAAA9k5C/AyrGRyXl5fHW2+91ehj5D4dnvuU+uc+97lU/eKLLza6R819DjvssDjggANqjWnRokUcc8wxSb1ixYpGB94LFiyIzZs3J/WIESPqHHf88cenwv2mnNMLL7yQfC4qKqp1nXbY1etXUVGRumEwfPjwKCkpadQxAAAAAIC9lxA/w0455ZRU/dhjjzVq/+rq6njuueeSum3btrWe8h4+fHhqyZ1Zs2Y16on/V155JZYsWZLUOwvWIyJOPPHEVD1z5sy8+9Q1fme9OnXqlDrPl19+uVE3DCoqKuLPf/5zUg8ePLjWuwV22NVzmj17dmqppPquHwAAAACw7xHiZ9iAAQOiV69eSf3www/Hxo0b897/6aefjnfffTepR4wYEUVFRakxbdu2TT1Nvnz58njyySfz7jFlypTkc1FRUYwcOXKnY08++eRo0aJFUk+fPj22bt2aV5+NGzfGH//4x6QeNmxYvS+A/cpXvpJ8rq6ujt/97nd59Yn4182Smi8AHjVq1E7H9u3bNw499NCkfumllxq1Nv7UqVOTz6Wlpal5AwAAAAAI8TPusssuSz6vX78+brvttrz227x5c9x66607PVZ923/yk5/k9YLbl19+OWbNmpXUp512WuqmQ66uXbvGGWeckdSrV6+OX/ziFw32iYj42c9+lrqBMXbs2HrHjxo1Ktq1a5fUDz74YF7h+oYNG+KOO+5I6h49esTpp59e7z651++mm26KqqqqBns98sgjqeV3vvnNb0ZpaWmD+wEAAAAA+w4hfsaNHDkyFYz/4Q9/iP/6r/+qd58tW7bEt7/97XjvvfeSbaeddlqtF77uMHTo0Bg6dGhSL1u2LL7//e/X+5T8O++8E9dee22y9E5xcXFceeWVDZ7PZZddlvo1wK9//et45JFH6t1nypQpMX369KQeMmRIDB8+vN592rZtGxdccEFSV1ZWxvjx42PFihU73WfTpk0xfvz4+OCDD5JtV155ZWq5obp89atfjZ49eyb13Llz45Zbbqk3yN8xpuZ8L7roonr7AAAAAAD7nqIf/ehHP9rdk2DnCgsL4+CDD06th//iiy/G/Pnzo1evXtGtW7dke0VFRcyePTvGjx8fCxYsSLb37NkzJk+eHC1bttxpn8MPPzxmzJiRBM9vv/12PPvss3HggQfGwQcfnIzbunVrTJs2La677rpYu3Ztsn3cuHHx5S9/ucHz6dixY2zevDnmzJkTEf9a6mb27Nmxfv366NevX+rp+WXLlsXtt98e99xzT7Jtv/32i//+7/+OTp06Ndhr8ODB8ac//Sl5gr+srCz+9Kc/RWlpafTv3z+5mVBdXR1PPfVUXHvttTFv3rxk/2OPPTZuuOGGKCgoqLdPYWFh9O7dOx599NFk26uvvhrz58+Pgw8+OPVnVF5eHvfff3/ceOONsWnTpmT7zTffHP/v//2/Bs8pC7Zv3x5r1qyptf2AAw6otVzTp+GxpxdGReX2T70v0DQtS4rj3z5f901lAAAAoLaC6sa8xZTd5p577omJEyfW2t6pU6c48MADo6KiIpYvXx6bN29Ofd+tW7e47777ol+/fg32mD59etxwww21trdt2zZ69uwZW7ZsieXLl0dlZWXq+6985Svx85//vMGwe4fKysq4/PLLUy/djYgoKCiIrl27RufOnWPNmjWxbt261Et2i4uLY+LEiXHyySfn1SciYtGiRXH++eenAvOIiJKSkujRo0e0bNkyli1bVuv7Pn36xNSpU6Njx45597rrrrvi7rvvrrW9Q4cO0b179ygvL4+VK1fGtm3bUt9feumlMWHChLz77G4VFRXx6quv1to+aNCgKCkp+dTn860fT4/yTfm9WwHY/UrbtIzJN529u6cBAAAAewxP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nz4xZcqUOP3005NtgEpLS+Pxxx+PW2+9NdauXRsREbt27Ypp06bFU089FR07dqzVugAAAACAg18mW5/9QvhEVdwTf+zYsfHjH//4gPSZM2dOTJkyJal79uwZv/rVr+KII46ocnxxcXGcf/758eabb+bM9Y477thnr0suuSSee+65pD711FPjJz/5SbX73b/wwgsxbdq0KCkpSY794he/iC996Us19lm9enWMGTMmtm/fHhERLVu2jJtuuilOOeWUKseXl5fHD37wg3jiiSeSY927d485c+ZE69ata+x13333xY033pjURx55ZNxzzz3Ro0ePKsd/+OGHMWnSpFi1alVybOLEifHDH/6wxj6NraSkJP7+979XOj506NBKvzL4JEy+7tHYsm3XJ94XqJ8O7VrFXdec2djTAAAAgCbDdjpERMTu3bvjpz/9aVJnMpmYOXNmtQF+RETXrl3j5z//eU5w+/zzz+eE+lWZO3duToB/5JFHxn//93/X+MDaf/u3f4uLL74459jtt99eY5+IiJkzZyYBfkTEpZdeWm2AHxHRokWLuOGGG3LWvXbt2njkkUdq7LNly5acLy/atGkTd9xxR7UBfkRE//7942c/+1nOsYcffrjGZwMAAAAAAM2LEJ+I2BO+V9wGZvz48TF8+PB9nte/f/84//zzc4499NBDNZ5zzz335NTXXXddFBbue2enCy+8MPr27ZvUixcvjoULF1Y7ft26dfHkk08m9cCBAyvNtSotW7aMK6+8MufYvtb0+9//PjZu3JjU3/72t6Nfv3777DVq1Kj46le/mtQlJSXxhz/8YZ/nAQAAAADNgxCfiNgTQld03nnn1frcs88+OzKZTFL/6U9/ivLy8irHrl+/Pl588cWkHjp0aBxzzDG16lNUVBTjxo3LOfbss89WO/5//ud/kn30IyL+4z/+o1ZfFkTsefZAxb3933nnnVi2bFm14yt+fkVFRXHuuefWqk9ExDnnnJNT5z9UGAAAAABovoT4xNatW3Me5jp06NAYOHBgrc/v27dvjBw5MqnXrVsXixcvrnLsc889F7t3707qsWPH1mmup59+ek790ksvVTu2YhheVFSUc8d7bZx22mk59V/+8pcqx73//vuxdOnSpD755JOjU6dOte4zatSo6NOnT1IvWrQoiouL6zRXAAAAAODgJMQnXn/99ZwHxp500kl1vsbxxx+fU8+bN6/Kca+88kpOXddehx56aM6WOm+//XZs3ry50rht27blbLUzfPjwOgXrEZ/cmjKZTBx33HFJnc1mY/78+XW6BgAAAABwcBLiUykwHjZsWJ2v8ZnPfCanXrJkyT57de/evVb7xucbOnRo8jqbzcZbb71VaczChQtz7vivz5qOPvroaNHin/9EarOm+vaquKaaegEAAAAAzYsQn3jzzTdz6vxAvjaOPvronPrdd9+tNGbjxo2xevXqas+pb6933nmn0piGWFO7du3isMMOS+oVK1bEzp07a+zVoUOHOPzww+vcKz/Er+rzAwAAAACaHyE+OYFxhw4donPnznW+xiGHHBKtWrVK6hUrVlQakx+2V3xwbF1U3D8+ImLlypUHrFfv3r2T19lsNlatWpXzfjabjffeey+p+/btm/OQ3/r0iah6TQAAAABA8yPEb0N1d8kAACAASURBVObyg+n8MLkuevTokbxev359znY2EZWD6fr26tmzZ069Zs2aSmPye/Xq1euA9FqzZk2UlpYmdX3XdMghh0TLli2r7QMAAAAANE+FjT0B6mbt2rXJg1QzmUx06NAhOnXqFN27d4/WrVvX+XobNmzIeahtfmhdFz179ozly5dHRER5eXls2bIl567+/GC6oYL1jRs3VhpTsVfr1q2jS5cuDdJr06ZN1fapanxttWjRIrp165Z8oVLVmgAAAACA5keI38S8/PLL8fLLL1c6XlhYGIMGDYrjjjsuzjnnnOjfv3+trrd58+acukOHDvWeW5s2bXLq/BA/v1f79u0bpM/WrVsrjakYtte3T1W9tmzZklMfqM9v+/btUV5envNg3bQrKyur11ZCdVXxFwvAwaHiL5oAAAAgDdKUQQnxDxJlZWWxaNGiWLRoUfzqV7+KU045Jf7rv/4runbtWuN5+aF0xX3t6yr/3Ip3+Ddkr331icgN9pvCmvLPzWazUVpaul/X+6QtWbLkgPcoLCyMYcOGHfA+wCdr8eLFUVZW1tjTAAAAgMTIkSMbewqJpnObL7VWXl4e//f//t/42te+Fm+88UaNY/PvfiwqKqp33/zAOT+Qye/VUCF+VcFPxV5NYU1VnevOVAAAAADAnfhNwPPPP1/pWDabjW3btsXGjRvjrbfeirlz58aTTz4Z69atS8asXbs2LrroonjggQfiiCOOqPLa+Q+f3Z/Au7CwsMY6PwCv709S9tUnv9f+/PRlX73yP7+G7JWmn+wAAAAAAI3DnfhNVCaTifbt20e/fv3ii1/8YlxxxRXx5z//OS699NKc8Hfjxo3x/e9/P7LZbJXXyQ+Kq9qaprZ27tyZU7dr167GXvW90zy/T9u2bSuNqdhrf+5o37VrV429GmpNEbnrKigoaFJb6QAAAAAAB4Y78Q8iLVu2jEsuuSQGDRoUU6dOTe5GX7x4cTz99NPx1a9+tdI5+aH0/oT4+efmPxQ2P9TPD8hrK/+8/D4Re9a1dz77s6Z9hfj5dX3XFJE7z6rWlHaDBw/26wGgXoYMGdLYUwAAAIDUEuIfhE4++eS48MIL484770yOPfbYY1WG+Plh8f6E0Pl3yOdfu6F67StY33ts48aN+9Un4pNbU36vphjiFxYWCvGBevHfDgAAAKie7XQOUt/61rdy9rd/7bXXqgyY8++OLy4urnfP9evXJ687depUaX/9/LC9vr0q9omI6NatW6UxFXtt2rQpysvL69Urf475vRpqTRG56+revXu9rwMAAAAAHDyE+Aep9u3bx7HHHpvUu3btio8++qjSuC5duuTc9b1q1ap691y9enXyesCAAZXe79OnT05d317551XVq3fv3snr0tLSWLt27X73ymQylXo11Jq2bNkS27ZtS+qq1gQAAAAAND9C/INY//79c+r8O9gj9gTTFcetWrWq2ofg1mTbtm2xefPmpK4qhM4/Vt/Au+KXBbXttXLlynr1qjjHXr16RevWrXPe79atW3To0KFB+0QI8QEAAACAPYT4B7GOHTvm1Dt27KhyXMXAuKSkJN5///0691qyZElOffjhh9fYJyJi6dKlde4TsedBvfvqddhhh+13r9LS0li2bFmNfSIiPvWpTyWvP/roo2o/55rUZk0AAAAAQPMjxD+IbdiwIafu0qVLleOGDBmSU8+bN6/OvebPn59TV9zKZ6+2bdvmBPmLFi2KkpKSOvdasGBB8nrAgAHRs2fPSmMGDx6cU9dnTUuWLMl5jkBVa4rI/fzKysrijTfeqHOvimuqqRcAAAAA0LwI8Q9i77zzTk5d3cNSTzzxxJz61VdfrXOv//3f/01ed+7cOYYPH77PXqWlpXUO19euXRvvvvtuUp900klVjhs2bFh06tQpqV977bU6bxP0t7/9Laf+whe+UOW4hvj8Kp4zePDgKr+YAAAAAACaHyH+Qaq4uDjn7u4+ffrkPOy1oiFDhkS3bt2Sevbs2bF169Za91qzZk288sorST169Oho0aLqv1r5gfdjjz1W6z4REY8//nhOGF9diF9QUBCf+9znknrFihU5XzTUxhNPPJG87tmzZwwaNKjKcZ/73OeisLCw2jnuy8KFC3O+cKluTQAAAABA8yPEP0jdddddUVZWltT54XlFmUwmvvzlLyf19u3b6xSuP/zww7F79+6kPuuss6ode/zxx+ds6/Pss89W+cDdqpSWlsajjz6a1P3794/jjz++2vFjxozJqe+///5a9YnY88uCivvhjx8/vtqx7du3z/l8V6xYES+88EKtez3wwAPJ64KCgjjjjDNqfS4AAAAAcHAT4qdceXl5nc/585//HL/97W+TukWLFvH1r3+9xnPOP//8nLvJZ86cGWvWrNlnrw8//DBmzZqV1Mccc0wcd9xx1Y5v1apVTJo0Kal37twZP/rRj/bZJyJi1qxZOQ/dveiii6KgoKDa8V/60pdy9uCfPXt2/OUvf9lnn9LS0rj++uuTul27djlzrsqFF16YU8+YMaNWD7idO3duPP7440n9la98Jfr377/P8wAAAACA5kGIn3Ljxo2r0x7rjz32WHz3u9/NuTN+3LhxceSRR9Z4Xr9+/eLUU09N6s2bN8e0adNi06ZN1Z6zbt26mDp1auzcuTM5NmXKlH3OccKECdG+ffukfuaZZ+Luu++u8Zw5c+bE7bffntR9+/aN008/vcZzWrRoEd/61rdyjk2fPj3efPPNas8pKyuLK6+8Mt5+++3k2MSJE3P216/KqFGjYtSoUUm9fPny+P73v5/zYNx87733Xvznf/5nsvVOYWFhfPvb366xDwAAAADQvAjxU27JkiUxceLEGD9+fDzyyCPx0UcfVRqzbdu2eO6552LSpEnxgx/8IOcO8KFDh8ZVV11Vq16XX355Tlg9f/78OOuss+KZZ57J+VKgrKwsnnzyyTj77LNzAvFx48bF6NGj99mnU6dOcfnll+ccu+mmm+J73/teTngesedBtj/96U9j2rRpUVJSEhF7wvkZM2ZEUVHRPnuNGzcuRowYkdTr1q2LCRMmxL333ltp3/+5c+fGN77xjXjyySeTY0cccURccskl++wTEXH11VdHy5Ytk3rOnDkxYcKEeOmll3LG7dq1K+6///4499xzY+XKlcnxiy++OAYOHFirXgAAAABA85DJ1uUJnHzijjrqqErHDjnkkDjkkEOiVatWsWnTpli5cmXO/vd7HX300fHLX/4yunbtWut+L7/8ckyePLnS9dq0aRP9+vWLbDYbH330Uc7d9xERI0eOjF/96lfRqlWrWve64oorcraS2atbt27Rs2fP2LBhQ6xevbrSlkJXX331PrcHqmj16tUxfvz4StsDtWzZMnr37h3t27ePFStWVPrVQbdu3eLBBx+s0/Y2jz76aJVfmrRv3z769esXO3fujBUrVkRpaWnO+2PGjIlbbrklMplMrXs1lpKSkvj73/9e6fjQoUNr9cVKQ5t83aOxZVv1v3gA0qVDu1Zx1zVnNvY0AAAAoMkQ4qdcVSH+vhQWFsZ5550Xl112Wc6d4bX14osvxuWXXx5btmyp1fgxY8bEjTfeGG3atKlTn927d8f1118fDz74YK3Gt2nTJq655poYO3ZsnfpE7Nm7f/LkyfHuu+/WavxRRx0Vt912Wxx66KF17vXoo4/Gddddl/xyoCaZTCa+/vWvx/Tp02vc3z9NhPjA/hDiAwAAQN0UXHvttdc29iSo3vDhw6O4uDhWr16ds6VNVXr37h1nnXVW3HzzzXHKKafUOxQeMGBAnH766bF58+Z49913q+07bNiwuOaaa+KSSy6p15cFLVq0iC984QsxbNiw+OCDD+Ljjz+uclzr1q3ja1/7Wtxyyy01PjS3Jp06dYrx48dHy5Yt4+233672obN9+/aN73znO/GjH/0ounTpUq9eQ4YMiVNOOSXWrl0bH3zwQZUPJ27RokWccMIJ8eMf/zjOOeecaNGi6exstXv37iofetyzZ89G+SLiqRcXR0lpzf82gPRoVVQYp31hSGNPAwAAAJoMd+I3ETt27IilS5fGBx98EMXFxbFz585o0aJFdOzYMbp27RpDhgyJfv36NXjfbdu2xeuvvx7vvfdebNu2LVq3bh29e/eOYcOGRZ8+fRq01/Lly2PBggWxevXqKCsri44dO8Zhhx0WI0aMqPNd/jXZvXt3LFiwIJYuXRobN26MgoKC6N69ewwePDgGDRrUYH0iIjZs2BCvv/56LF++PHbs2BFt27aNfv36xYgRI+KQQw5p0F6fFHfiA/vDnfgAAABQN0J8oE6E+MD+EOIDAABA3TSdPTwAAAAAAKCZEeIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAACklxAcAAAAAgJQS4gMAAAAAQEoJ8QEAAAAAIKWE+AAAAAAAkFJCfAAAAAAASCkhPgAAAAAApJQQHwAAAAAAUkqIDwAAAAAAKSXEBwAAAACAlBLiAwAAAABASgnxAQAAAAAgpYT4AAAAAACQUkJ8AAAAAABIKSE+AAAAAACklBAfAAAAAABSSogPAAAAAAApJcQHAAAAAICUEuIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAACklxAcAAAAAgJQS4gMAAAAAQEoJ8QEAAAAAIKWE+AAAAAAAkFJCfAAAAAAASCkhPgAAAAAApJQQHwAAAAAAUkqIDwAAAAAAKSXEBwAAAACAlBLiAwAAAABASgnxAQAAAAAgpYT4AAAAAACQUkJ8AAAAAABIKSE+AAAAAACklBAfAAAAAABSSogPAAAAAAApJcQHAAAAAICUEuIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAACklxAcAAAAAgJQS4gMAAAAAQEoJ8QEAAAAAIKWE+AAAAAAAkFJCfAAAAAAASCkhPgAAAAAApJQQHwAAAAAAUkqIDwAAAAAAKSXEBwAAAACAlBLiAwAAAABASgnxAQAAAAAgpYT4AAAAAACQUkJ8AAAAAABIKSE+AAAAAACklBAfAAAAAABSSogPAAAAAAApJcQHAAAAAICUEuIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAACklxAcAAAAAgJQS4gMAAAAAQEoJ8QEAAAAAIKWE+AAAAAAAkFJCfAAAAAAASCkhPgAAAAAApJQQHwAAAAAAUkqIDwAAAAAAKSXEBwAAAACAlBLiAwAAAABASgnxAQAAAAAgpYT4AAAAAACQUkJ8AAAAAABIKSE+AAAAAACklBAfAAAAAABSSogPAAAAAAApJcQHAAAAAICUEuIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAACklxAcAAAAAgJQS4gMAAAAAQEoJ8QEAAAAAIKWE+AAAAAAAkFJCfAAAAAAASCkhPgAAAAAApJQQHwAAAAAAUkqIDwAAAAAAKSXEBwAAAACAlBLiAwAAAABASgnxAQAAAAAgpYT4AAAAAACQUkJ8AAAAAABIKSE+AAAAAACklBAfAAAAAABSSogPAAAAAAApJcQHAAAAAICUEuIDAAAAAEBKCfEBAAAAACClhPgAAAAAAJBSQnwAAAAAAEgpIT4AAAAAAKSUEB8AAAAAAFJKiA8AAAAAAClV2NgTIN1WrlwZCxcujFWrVsXOnTujffv2MWDAgBgxYkS0b9++wfqUl5fHokWL4q233ooNGzZERETXrl1j0KBB8elPfzoymUyD9dq8eXPMnz8/Pvjgg9i2bVu0bt06+vTpE8OHD4+ePXs2WJ+IiPfeey8WLVoUa9asiZKSkujYsWMcccQRMWLEiGjVqlWD9gIAAAAADj5C/IPIf/3Xf8XDDz+cc+zGG2+McePG1flac+bMibvvvjveeOONKt8vKiqKMWPGxNSpU+PQQw+t13wjIrZu3Rr33ntvPPTQQ7F+/foqx/Tq1SvOO++8mDhxYrRs2bLevd5888247bbb4oUXXojS0tJK72cymfjsZz8bU6dOjWOPPbbefbLZbDz22GNxzz33xLJly6oc07Zt2xg3blxMmTIlunbtWu9eAAAAAMDBzXY6B4m//e1v8cgjj+z3dbZv3x7Tpk2LKVOmVBvgR0SUlJTEE088EV/72tfi2WefrVevhQsXxmmnnRa33XZbtQF+RMTq1avjJz/5SZx99tnx8ccf16vXnXfeGWeccUbMnj27ygA/Yk/4/uqrr8akSZPiZz/7WWSz2Tr3KS4ujokTJ8b06dOrDfAj9nzOv/vd7+LUU0+N1157rc59AAAAAIDmQYh/ENixY0dcffXV9QqdK9q5c2d885vfjD/+8Y85xwsLC6N///5x1FFHRdu2bXPe2759e1x22WUxe/bsOvWaN29eTJo0KVauXJlzvF27djFo0KDo169fFBQU5Lz3j3/8IyZOnBjFxcV16jVjxoy45ZZboqysLDmWyWSiR48e8elPfzo6d+6cMz6bzcYvf/nLmDFjRp36FBcXx7nnnlsplC8qKorDDjss/uVf/iWKiooqnXPBBRfEggUL6tQLAAAAAGgebKdzELjlllviww8/jIiI7t27x9q1a+t1nauuuirmz5+f1J07d46LL744zjrrrCS8z2azMXv27Lj55pvj/fffj4g9+9lfccUVMXjw4FptrbNmzZq45JJLYseOHcmxESNGxKWXXhonnHBCcmzjxo1x3333xaxZs5K75z/44IP4wQ9+EHfffXet1vTII4/Er3/966QuKCiICRMmxAUXXBC9evVKji9atChuvvnm+Otf/5oc+81vfhPHHHNMjBkzZp99ysvLY+rUqclnEhHRp0+fmDJlSpx++unJNkClpaXx+OOPx6233pr877Rr166YNm1aPPXUU9GxY8darQsAAAAAaB7cid/ELViwIH77298m9aRJk+p1nTlz5sRTTz2V1D179owHHnggvvGNb+TcfZ/JZOKUU06JBx98MAYNGpQc3759e63vXL/22muTh9dGRJx66qnx29/+NifAj9jzJcJ3v/vd+PnPf55zB/uLL74Yf/rTn/bZZ/Xq1XHjjTcmdcuWLeOWW26Jq666KifAj4g4+uijY9asWXH66afnHL/hhhti586d++z1m9/8JubOnZvURx55ZDz88MNx5pln5uzj37Jlyxg/fnw88MAD0bt37+T4xx9/HDNnztxnHwAAAACgeRHiN2ElJSVx5ZVXRnl5eUREjB49OoYNG1bn6+zevTt++tOfJnUmk4mZM2fGEUccUe05Xbt2rRSuP//88/Hmm2/W2Gvu3Lnx3HPPJfWRRx4Z//3f/13jA2v/7d/+LS6++OKcY7fffnuNfSIiZs6cGdu3b0/qSy+9NE455ZRqx7do0SJuuOGGnHWvXbt2n88a2LJlS9xxxx1J3aZNm7jjjjuiR48e1Z7Tv3//+NnPfpZz7OGHH67x2QAAAAAAQPMjxG/CbrvttnjnnXciYs82MZdddlm9rvP888/nbAMzfvz4GD58+D7P69+/f5x//vk5xx566KEaz7nnnnty6uuuuy4KC/e9q9OFF14Yffv2TerFixfHwoULqx2/bt26ePLJJ5N64MCBleZalZYtW8aVV16Zc2xfa/r9738fGzduTOpvf/vb0a9fv332GjVqVHz1q19N6pKSkvjDH/6wz/MAAAAAgOZDiN9ELV68OGbNmpXU559/fhx99NH1utbvf//7nPq8886r9blnn312ZDKZpP7Tn/6U/DIg3/r16+PFF19M6qFDh8YxxxxTqz5FRUUxbty4nGPPPvtsteP/53/+J9lHPyLiP/7jP2r1ZUHEnl80VNzb/5133olly5ZVO77i51dUVBTnnnturfpERJxzzjk5df5DhQEAAACA5k2I3wSVlZXFlVdeGWVlZRERMWDAgJg2bVq9rrV169ach7kOHTo0Bg4cWOvz+/btGyNHjkzqdevWxeLFi6sc+9xzz8Xu3buTeuzYsXWaa/5+9S+99FK1YyuG4UVFRTl3vNfGaaedllP/5S9/qXLc+++/H0uXLk3qk08+OTp16lTrPqNGjYo+ffok9aJFi6K4uLhOcwUAAAAADl5NMsR/7bXXkj8rVqxo0GsvWrQouXZNd183prvvvjuWLFkSEXv2r7/hhhuiVatW9brW66+/HiUlJUl90kkn1fkaxx9/fE49b968Kse98sorOXVdex166KE5W+q8/fbbsXnz5krjtm3blrPVzvDhw+sUrEd8cmvKZDJx3HHHJXU2m4358+fX6RoAAAAAwMGrSYb4EydOjEmTJsWkSZPi0UcfbdBrP//888m1v/nNb1a7NUxjWbZsWc5DXSdMmBCjRo2q9/XyA+P6PBj3M5/5TE699wuGmnp17969VvvG5xs6dGjyOpvNxltvvVVpzMKFC3Pu+K/Pmo4++uho0eKf/zxqs6b69qq4ppp6AQAAAADNT5MM8SP2BLgHwle+8pXIZrORzWZj7dq18dprrx2QPvVRXl4eV155ZbLXe9++fePyyy/fr2u++eabOXV+IF8b+Xvxv/vuu5XGbNy4MVavXl3tOfXttffBvhU1xJratWsXhx12WFKvWLEidu7cWWOvDh06xOGHH17nXvkhflWfHwAAAADQPDXZEL/iw1Qb0t7tWvZe/6OPPjogferjvvvuizfeeCOpr7/++mjbtu1+XbNiYNyhQ4fo3Llzna9xyCGH5GznU9UWR/lhe8UHx9ZFxf3jIyJWrlx5wHr17t07eZ3NZmPVqlU572ez2XjvvfeSum/fvvX6e1mxT0TVawIAAAAAmqcmG+IfKNu2bcup169f30gzyfXBBx/ErbfemtRnnHFG/Ou//ut+XTM/mM4Pk+uiR48eyev169fnbGcTUTmYrm+vnj175tRr1qypNCa/V69evQ5IrzVr1iS/ioio/5oOOeSQaNmyZbV9AAAAAIDmS4if529/+1tE/HO7ntatWzfmdCJiz1x++MMfJtu59OjRI6ZPn77f192wYUPOQ23zQ+u6qHhueXl5bNmyJef9/GC6oYL1jRs3VhpTsVfr1q2jS5cuDdJr06ZN1fapanxttWjRIrp165bUVa0JAAAAAGieCht7AmmyfPnyuPnmmyOTySQhfv72LY3hgQceiFdffTWpr7322ujQocN+X3fz5s059f5cs02bNjn1li1bcrbmye/Vvn37BumzdevWSmMqhu317VNVr/wvJg7U57d9+/YoLy/PebBuU1BWVnbAtrmqqOKvFoCDQ8VfNQEAAEAapCmDSmWI/8QTT9T6wbVvvfVWPP744/XuVVpaGsXFxfH3v/89XnrppZw70wsKCuKzn/1sva/dEFauXBk33XRTUp966qnxxS9+sUGunR9KV9zXvq7yz634OTZkr331icgN9pvCmvLPzWazUVpaul/XawxLliw54D0KCwtj2LBhB7wP8MlavHhxlJWVNfY0AAAAIDFy5MjGnkIilSH+ww8/HPPnz69xzN6Q/4UXXogXXnihQfpms9nkTuJMJhNjx46NTp06Nci16+vqq69O9unv0qVL/PCHP2ywa+ff+VhUVFTva+UHzvlhTH6vhgrxqwp9KvZqCmuq6tymGOIDAAAAAA0vlft1fPnLX05C+mw2W+lPRVW9X58/EZEE+NlsNo488si44oorPtmF5/nDH/4QL7/8clJfffXV0bVr1wa7fv7DZ/cn8C4sLKyxzg/A6/tzlH31ye+1Pz972Vev/M+vIXul6ec6AAAAAEDjSW2I36JFi1pvqdMQ9ob5RUVFce6558YDDzywX/up7681a9bEj3/846Q++eST49RTT23QHvlBcVVb09TW3ofu7tWuXbsae9V3/+P8Pm3btq00pmKv/dlnedeuXTX2aqg1ReSuq6CgwF34AAAAAEBEpHQ7nR49esRFF10UH3/8cZXvP/bYY8ld80ceeWQMGTJkv/q1bds2OnfuHIMHD45jjz02OnbsuF/XawjXXXdd8oDWjh07xnXXXdfgPfJD6f0J8fPPzX8obH6onx+Q11b+efl9Ivasa+989mdN+wrx8+v6rikid55VrakpGDx4sF8QAPWyv/8/DgAAAAezVIb4ERHf/e53q33vscceS16ffPLJcemll34SU/rEPPPMMzFnzpykvuKKK6JHjx4N3ic/LN6fEDr/Dvn8azdUr30F63uPbdy4cb/6RHxya8rv1VRD/MLCQiE+UC/+2wEAAADVS+V2Os1ZcXFxXH/99Un9r//6r3HmmWcekF75d8cXFxfX+1rr169PXnfq1KnS/vr5YXt9e1XsExHRrVu3SmMq9tq0aVOUl5fXq1f+HPN7NdSaInLX1b1793pfBwAAAAA4uKT2Tvzm6qabbsoJg//617/GUUcdVe/rTZ8+PaZPn57Uffv2jeeffz4iIrp06RJt2rSJHTt2RETEqlWr6t1n9erVyesBAwZUer9Pnz45dX175Z9XVa/evXvHsmXLImLPPvVr166Nnj177levTCZTqVdDrWnLli2xbdu2pK5qTQAAAABA89Rk78Tf+yDag82HH374ifXKZDLRv3//pF61alW9PtNt27bF5s2bk7qqEDr/WH0D74pfFtS218qVK+vVq+Ice/XqFa1bt855v1u3btGhQ4cG7RMhxAcAAAAA/qlJ3ol/4403Jq8HDRrUiDNp+gYMGBBvvfVWROx5uOr7778fhx12WJ2usWTJkpz68MMPr7JPRUuXLq3bRP+/xYsX77NX/vyXLl0aI0aMUIOTiQAAIABJREFUqFOf0tLS5G7+6vpERHzqU5+KRYsWRUTERx99FDt27Kjznva1WRMAAAAA0Dw1yRB/7NixjT2FA+aKK67Iuau9rl5++eW45557kvqCCy6I0aNHJ3WrVq1yxg8ZMiT++Mc/JvW8efPqHOLPnz8/pz722GMrjWnbtm0MGDAg3n///YiIWLRoUZSUlFTaO39fFixYkLweMGBAldvkDB48OKeeN29enH322XXqs2TJkpwH1Va1pog9n9/eEL+srCzeeOONOP744+vUq+KaauoFAAAAADQ/TTLEP5gdffTR+3V+/nYzAwcOjM997nPVjj/xxBPjlltuSepXX301zjjjjDr1/N///d/kdefOnWP48OHV9tob4peWlsa8efPqFHivXbs23n333aQ+6aSTqhw3bNiw6NSpU2zatCkiIl577bXIZrORyWRq3etvf/tbTv2FL3yhynEnnnhiPPLII0n96quv1jnEf/XVV5PXgwcPrtf+/QAAAADAwanJ7olPwxgyZEh069YtqWfPnh1bt26t9flr1qyJV155JalHjx4dLVpU/dfqxBNPzKkfe+yxOs318ccfz9mzv7oQv6Cg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TdC///1vU33TTTd5HOePz6/iOZ07d/b4xQQAAAAAAACA+okQPwCUlZVp5syZWr9+vXGse/fuWrZsmRo2bHhJ1+7SpYvi4+ONev369SooKPD6/MzMTG3dutWo+/fvr6Agz/+zcg28P/jgA5/m+uGHH5rC+MpC/ODgYF133XVGnZ6ebvqiwRt///vfjdcJCQlKSkryOO66664zbWPkOsfqpKammh5OXNmaAAAAAAAAANRPhPgB4IknntBHH31k1J07d9by5csVFRV1yde22WwaOHCgURcVFfkUrq9atUqlpaVGPWLEiErH9uvXT40bNzbqTz/9VNnZ2V71cTgcWr16tVG3adNG/fr1q3T8oEGDTPVbb73lVR+p/JcFFffDHz58eKVjo6KiTF9OpKen6/PPP/e618qVK43XwcHBuuOOO7w+FwAAAAAAAEDdR4hvcfPnz9e7775r1FdeeaVee+0103Yxl2rs2LGmu8kXLVqkzMzMas87duyYli1bZtS9evXStddeW+n4Bg0a6N577zXq4uJiPf30017NcdmyZaaH7k6cOFHBwcGVjv/FL35h2oN//fr12rx5c7V9HA6HnnrqKaNu2LChac6eTJgwwVTPmzfPqwfcbtu2TR9++KFR33bbbWrTpk215wEAAAAAAACoPwjxLeyFF17Q3/72N6Nu27atXn/9dcXFxfm1T6tWrTR48GCjzsvL07Rp03Tu3LlKz8nKytLUqVNVXFxsHJsyZUq1vUaNGmX6BcHHH3+spUuXVnlOSkqKlixZYtQtW7bU0KFDqzwnKChI999/v+nY7NmztW/fvkrPKSkp0aOPPqoffvjBODZmzJhqvzDp06eP+vTpY9THjx/XI488YnowrqsjR45oxowZxtY7ISEhmjRpUpV9AAAAAAAAANQ/wU8++eSTtT0JuHv99df1wgsvGHWDBg30yCOPyG636/jx4zX607p160r7XX311Xr//feN4DkjI0MbNmxQkyZN1L59e2Of+5KSEq1bt06PPPKI6SGzw4YN07hx46pdV3h4uKKjo7Vp0ybj2FdffaUjR46offv2atKkiXH8zJkzWrJkiebPn6+SkhJJ5eH84sWLdcUVV1TbKykpSVu3blVGRoak8q2C1q1bp9DQUF155ZUKCwszxm7btk2zZs0ybYXToUMHPffcc6ZfKVSma9euWrNmjcrKyiRJ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8pOYOnVq2vG8vLzo1atXFBYWxqxZs2L58uWp95YvXx5nnHFGtGvXLvbff/8G15oyZUr85Cc/iRUrVqQdLy4ujr59+0ZZWVnMnTs3Vq1alXrv7bffjtGjR8fdd9/dqLvXL7/88vjb3/6WdiwnJye6desW3bp1i9mzZ8eSJUtS79XU1MSNN94YK1eujPPPP7/BdRYtWhTHHHPMOv/7FBQURO/evSMvLy8++eSTqKysTJvz05/+NG699dbYeeedG1wLAAAAAGgbhPgJd9VVV8UjjzwSn3/+ebPXOv/889MC/E6dOsVJJ50URx11VBQVFUXEmoD7iSeeiKuvvjoVVq9evTp++ctfxoABAxq0tc78+fPj5JNPTgvwhw4dGmPGjIk999wzdWzJkiVxyy23xE033ZTa/uaTTz6Jc845J/785z836JruvffetAA/Nzc3jj322PjpT38aPXr0SB2fPn16XH311fHCCy+kjt16660xbNiwOOiggzZYZ/Xq1XHqqaemBfi9evWKU045JQ477LDUNkBVVVXx4IMPxjXXXBMLFiyIiIiVK1fGaaedFg8//HB07NixQdcFAAAAALQN7Vq6Adbv73//e70BfqdOnbK2fcnkyZPj4YcfTo27d+8ed955Z/zoRz9KBfgRa+5gP+CAA+Kuu+6KHXbYIXV8+fLlcfnllzeo1sUXX5x6eG1ExMEHHxy33XZbWoAfseb6Tj/99Lj22mvTrvPZZ5+NJ598coN15s2bF1dccUVqnJ+fH3/4wx/i/PPPTwvwIyIGDRoUN910Uxx22GFpxy+77LKoqKjYYK1bb701bSuj7bbbLu65554YNWpU2j7++fn5ceSRR8add94ZPXv2TB3//PPPY/z48RusAwAAAAC0LUL8VqZXr14xevTouOWWW+KFF16Ibt26NXnNVatWxe9+97vUOCcnJ8aPHx/bbLNNvXM6d+68Trj+9NNPp+3RX5fXXnstnnrqqdR4u+22i9/+9rfrfWDtvvvuGyeddFLaseuuu269dSIixo8fn7b1z5gxY+KAAw6o9/x27drFZZddlnbdCxYsiHvvvXe9dZYtWxbXX399alxYWBjXX399bLHFFvXO6devX/z+979PO3bPPffU+3BfAAAAAKBtEuInXE5OTmy//fZx8sknx4QJE+KZZ56JCy64IPbcc8/Iy8vObkhPP/102jYwRx55ZIP2Z+/Xr1/8+Mc/Tjt29913r3fOzTffnDa+5JJLGnQdP/vZz6J3796p8YwZM2LatGn1nv/FF1/EP/7xj9R42223XafXuuTn58d5552XdmxD13T//fen7an/85//PPr06bPBWrvuumsccsghqXFlZWVMmDBhg/MAAAAAgLZDiJ9wEydOjH/84x8xZsyYGDhwYLPUuP/++9PGP/zhDxs89+ijj46cnJzU+Mknn4zVq1fXee7ChQvj2WefTY0HDx4cw4YNa1CdgoKCGDlyZNqxxx57rN7zJ06cmNpHPyLi+9//foO/9Nh7773T9vb/4IMP4v3336/3/LX//QoKCuKYY45pUJ2IiO9973tp48cff7zBcwEAAACATZ8QP+Fq792ebWVlZWkPcx08eHBsu+22DZ7fu3fv2GWXXVLjL774ImbMmFHnuU899VSsWrUqNT788MMb1Wvt/eqfe+65es9dOwwvKChIu+O9IQ499NC08b/+9a86z/v444/j3XffTY2/9a1vxWabbdbgOrvuumv06tUrNZ4+fXosWrSoUb0CAAAAAJsuIX4b9/rrr0dlZWVqvM8++zR6jT322CNtPGXKlDrP+/e//502bmytvn37pm2p895778XSpUvXOa+8vDxtq52dd965UcF6xMa7ppycnNh9991T45qampg6dWqj1gAAAAAANl1C/DaudmA8ZMiQRq+x0047pY3feeedDdbq1q1bg/aNr23w4MGp1zU1NfGf//xnnXOmTZuWdsd/Jtc0aNCgaNfu//7foyHXlGmtta9pfbUAAAAAgLZHiN/GzZw5M21cO5BviEGDBqWNP/zww3XOWbJkScybN6/eOZnW+uCDD9Y5JxvXVFxcHFtvvXVqPHv27KioqFhvrdLS0ujfv3+ja9UO8ev69wMAAAAA2iYhfhu3dmBcWloanTp1avQaXbp0ifbt26fGs2fPXuec2mH72g+ObYy194+PiJgzZ06z1erZs2fqdU1NTcydOzft/Zqamvjoo49S4969e6c95DeTOhF1XxMAAAAA0DYJ8duw2sF07TC5MbbYYovU64ULF6ZtZxOxbjCdaa3u3bunjefPn7/OObVrZfpw4A3Vmj9/flRVVaXGmV5Tly5dIj8/v946AAAAAEDbJcRvwxYvXpz2UNvaoXVjrD139erVsWzZsrT3awfT2QrWlyxZss45a9fq0KFDbL755lmp9eWXX9Zbp67zG6pdu3bRtWvX1LiuawIAAAAA2qa8lm6AlrN06dK0cWlpacZrFRYWpo2XLVuWtjVP7VolJSVZqVNWVrbOOWuH7ZnWqatW7S8mmuvfb/ny5bF69eq0B+u2BtXV1RltJ9RYa/9qAdg0rP2rpk2Vzy7YNLWFzy8AgLYqSX/HCfHbsNqh9Nr72jdW7blr3+GfzVobqhORHuy3hmuqPbempiaqqqqatF5LeOedd5q9Rl5eXgwZMqTZ6wAb14wZM6K6urql22g2Prtg07Wpf34BALRlu+yyS0u3kNK6bvUlq2rfOVRQUJDxWrUD59p/zNSula0Qv64/mtau1Rquqa657uoCAAAAACKE+G1a7YfPNiXwzsvLW++4dgCe6c9RNlSndq2m/OxlQ7Vq//tls1aSfq4DAAAAALQcIX4bVjsormtrmoaqqKhIGxcXF6+3VqZ3mteuU1RUtM45a9dqyh3tK1euXG+tbF1TRPp15ebmtrqtdAAAAACA5mFP/DasdijdlBC/9tzaD4WtHerXDsgbqva82nUi1lzXV/005Zo2FOLXHmd6TRHpfdZ1Ta3BgAED/IIAyMiOO+7Y0i0AZMTnFwAAG4MQvw2rHRY3JYSufYd87bWzVWtDwfpXx5YsWdKkOhEb75pq12qtIX5eXp4QH8iIzw6gtfL5BQDAxmA7nTas9t3xixYtynithQsXpl5vttlm6+yvXztsz7TW2nUiIrp27brOOWvX+vLLL2P16tUZ1ardY+1a2bqmiPTr6tatW8brAAAAAACbFiF+G7b55pun3fU9d+7cjNeaN29e6vVWW221zvu9evVKG2daq/a8umr17Nkz9bqqqioWLFjQ5Fo5OTnr1MrWNS1btizKy8tT47quCQAAAABom4T4bVhOTk7069cvNZ47d27U1NQ0ep3y8vJYunRpalxXCF37WKaB99pfFjS01pw5czKqtXaPPXr0iA4dOqS937Vr1ygtLc1qnQghPgAAAADwf4T4bdzagXFlZWV8/PHHjV7jnXfeSRv3799/vXUiIt59991G14mImDFjxgZrbb311k2uVVVVFe+///5660REbLnllqnXn332WaxYsaLRtRpyTQAAAABA2yTEb+N23HHHtPGUKVMavcbUqVPTxsOHD1/nnKKiorQgf/r06VFZWdnoWm+88Ubq9VZbbRXdu3df55wBAwakjTO5pnfeeSftQbV1XVNE+r9fdXV1vPnmm42utfY1ra8WAAAAAND2CPHbuG984xtp41deeaXRa7z88sup1506dYqdd955g7WqqqoaHa4vWLAgPvzww9R4n332qfO8IUOGxGabbZYav/rqq43eJuill15KG3/zm9+s87xs/PutPWfAgAF1fjEBAAAAALRNQvw2bscdd4yuXbumxk888USUlZU1eP78+fPj3//+d2q89957R7t2df+fVe3A+4EHHmhUrw8++GBaGF9fiJ+bmxt77bVXajx79uy0Lxoa4qGHHkq97t69e+ywww51nrfXXntFXl5evT1uyLRp0+KDDz5Ijeu7JgAAAACgbRLit3E5OTlx4IEHpsbLly9vVLh+zz33xKpVq1Ljo446qt5z99hjj9h8881T48ceeywWLlzYoDpVVVVx3333pcb9+vWLPfbYo97zDzrooLTxHXfc0aA6EWt+WbD2fvhHHnlkveeWlJSkfTkxe/bseOaZZxpc684770y9zs3NjSOOOKLBcwEAAACATV/ehk9hU/fjH/847r777qiuro6IiPHjx8cBBxwQW2yxxXrnffrpp3HTTTelxsOGDYvdd9+93vPbt28fxx13XFxzzTUREVFRURG/+c1v4g9/+MMGe7zpppvSHrp7wgknRG5ubr3n/9d//VdstdVWqTlPPPFE/Otf/4oRI0ast05VVVX8+te/To2Li4vjuOOOW++cn/3sZ2nB/eWXXx577rlnFBYWrnfea6+9Fg8++GBq/J3vfCf69eu33jkAANBSzp1weZRVNPxXu0DLK+lQEleMPK+l2wCgiYT4RJ8+feLggw9ObSGzdOnSOO200+JPf/pT2t7ya/viiy/i1FNPjYqKitSxU045ZYO1jj322Lj55ptTW/ZMmjQpBgwYECeccEK9cyZPnhzXXXddaty7d+847LDD1lunXbt2cfzxx8f555+fOnbuuefGzTffXO/WONXV1XHetgYuswAAIABJREFUeefFe++9lzo2evToev8NvrLrrrvGrrvuGq+99lpERMyaNSv+3//7f3H11VdH+/bt65zz0UcfxS9+8YvU1jt5eXnx85//fL11AACgJZVVlMWyleUt3QYAQJsjxE+46dOnx9KlS+t9f+XKlanXq1atStufvraOHTvGoEGD6nzvrLPOin/+85/x5ZdfRkTE1KlT46ijjooxY8bEAQcckLrrvbq6OiZNmhTXXHNNfPbZZ6n5I0eOjL333nuD17PZZpvFWWedFZdccknq2NixY2PmzJlx0kknxde+9rXU8QULFsQtt9wSf/3rX1Nb9rRr1y4uv/zyKCgo2GCtkSNHxn333RdTp06NiDVfPBx77LFxyimnxFFHHRUlJSWpc1977bUYN25cvPrqq6lj22yzTZx88skbrBMRceGFF8aoUaOiqqoqItZ88XDsscfGmDFj0rbbWblyZdx3331x7bXXxuLFi1PHTzrppNh2220bVAsAAAAAaDtyahrzFE42utGjR8crr7ySlbWGDx8et912W73vP//883HiiSemttX5SmFhYfTp0ydqamris88+S7v7PiJil112ib/+9a/13nVel1/+8pdpW8l8pWvXrtG9e/dYvHhxzJs3L1avXp32/oUXXhg/+MEPGlxn3rx5ceSRR8b8+fPTjufn50fPnj2jpKQkZs+enfryYu0+7rrrrkZtb3Pfffel3fn/lZKSkujTp09UVFTE7NmzU0H/Vw466KD4wx/+EDk5OQ2u1ZIqKyvjrbfeWuf44MGDG/TlSradeMl9sax85YZPBBKhtLh9/OmiUS3dRot789rTo3qFLSmgNckrLIkhp45r6TZa1Kl3nudOfGhlStsXx7Xfv7yl2wCgiTzYlpS99947rrvuuigtLU07vmLFinjvvffi/fffXyfAP+igg+Lmm29uVIAfsWbf+GOOOWad41988UW8/fbbMWfOnLQAv7CwMK688spGBfgRET169Ig77rgj+vfvn3a8qqoqPv3005gxY8Y6Af72228fd999d6P3px81alRcdtll6wTZZWVlMXPmzPj444/TAvycnJwYPXp0jB07ttUE+AAAAADAxiXEJ80+++wTjzzySBxxxBHrDeaHDBkS1113XYwbN26DD3CtS25ublx88cVx4403xk477VTveR06dIiRI0fGxIkT4/DDD290nYiIfv36xYMPPhinnXZadO7cud7zevfuHeeee27cf//90bdv34xqjRo1Kh588MHYf//9Iy+v7t2q2rVrF3vttVfcfvvtccEFF6z3Ab0AAAAAQNtmOx3qVV5eHq+//np89NFHUV5eHh06dIiePXvGkCFDolevXlmtNWvWrHjjjTdi3rx5UV1dHR07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hw4dWroVoJktWbIkzjjjjJg3b17ccsst8d3vfnejh/huogBIjn333VeAjxAfoC1p3759XH311VlZa+bMmfHnP/85IiLOOuus6N27d8ZrrS+UmjRpUsbrrm3lypVx1FFHRVVVVey3335x5plnNnlN/yEFbCwTJ06MSy+9NHbYYYe4/fbbo7CwsKVbAppBTU1NnH322TFnzpyIiLj88ssbfZcowKauKX/PffbZZ3HCCSdkXHvMmDGxfPnyDZ53++23x6xZs2L77bePkSNHNrrOlClTUr9W33///Rs9n02PEB+gDcnLy4uDDz44K2uVlpamQvxvfOMbzfYApG222SYr6zz22GOpO/5/8IMfZG1dgI1h2rRpUV1dHQsWLBDgwybs+uuvj2effTYiIkaNGhXDhw+PpUuXZrRWfn5+xp8XbqIAkqy0tLTF/p476qijGnTe/fffHxERO+20U/zoRz9qdJ2vtg0qKSmJESNGNHo+mx4hPgBtwj333BMREf3794899tijhbsBaJxp06ZFRMTAgQNbuBOgufz973+P8ePHp8b33Xdf3HfffRmvd/jhh8eVV16Z0Vw3UQA0zeLFiyMiokuXLo2eu3LlynjuueciIuLb3/62Ly+JCCE+AG3AzJkz48UXX4yINX9A5uTktHBHAA23fPny+OCDDyIiYtCgQS3cDdAcJk6cGL/61a+ipqampVvJKjdRwMYxePDgqKysbPI6f/zjH+OPf/xjxvPPPffcjO4639TU1NQ0KcR/7rnnUlv2fOc738lqb7ReQnwANnnXXXdd1NTURKdOneLwww9v6XYAGuWll16KVatWRUTEbrvt1sLdANk2efLkOOecc2L16tUxdOjQuPrqqyM/Pz+jtcaNG5e6e3+fffbJZpuN5iYKoLlMnz49rrrqqozmLlmyJMvdrGvx4sVRXV0dERFdu3Zt9PzHHnssIiI6deoUX//617PaG62XEB+ATdrUqVNTDwQaPXp0FBUVtXBHQFPMmjUrnnjiiYznf7WtQ8Sau5y+uksqE0OHDo1hw4ZlPL+hJk+eHBERRUVFMXTo0GavB2w8jz76aJx99tlRXV0dAwcOjBtvvDFKS0szWuvFF1+MCRMmRETEyJEj46CDDspmq43mJgrYeC655JLUF/6ZuPLKK6OsrCz23Xff+Pa3v53xOjvvvPN63z/nnHPigQceqPf9Bx54YJ3399xzz7jlllvSjr333nvx3nvvZdxnc5s/f37qdWND/MrKynjmmWciIuKAAw7I+EtdNj1CfABajccee6zRgdu9996bel1QUBB33XVXk3ro1atXi9/ZBm3Z+++/H7/97W+zstakSZOa9PDG//mf/2lyiP/WW2/FlltuWe/7q1evTv0hN2zYsKisrFzn5/Jr/9FeXl7eoLrFxcUZdAtk0w033BDjxo2Lmpqa2H777ePmm2/OOMD/4osv4he/+EWsXr06ttxyy7jggguy3G3juIkCNq6RI0c2af64ceOirKwsBg4cGEceeWSWumo+vXv3jiFDhmQ0t7y8PPUA8eby+eefp15369atUXOfffbZKCsri4iIQw89NKt90boJ8QFoNa6//vqYOXNmxvPHjh3b5B723ntvIT7QKAceeGAUFBTE6NGj1/nD+Je//GWsXr06vvvd79Y5d8qUKbFo0aKIiHj++efX+6XBkiVLGvylwttvvx15ef4UgJZQWVkZv/rVr1J3mw4dOjT+9Kc/xWabbZbRetXV1XHGGWfEggULoqCgIMaOHZvVL+rcRAFky5lnnhnHH3/8Oscvv/zyeP7552O//faLM888M+29ur4EHD58eMYP7v7ggw+aPcSfM2dO6nVjQ/yvbjDp1atX7Lrrrlnti9bNf7kDANAqPfXUU9GnT59GzSkvL08F3VdccUVGd6415uFxZWVl8dFHH0VExIoVK9Z5v7q6Os4+++woKyuL73//++u8/49//KPR/QHJtWDBgjjjjDPi1VdfjYg1+9Zfc801UVhYmPGaV111VbzyyisRseahkoMHD85Kr19xEwWQLVtssUVsscUW6xz/6ovH0tLS2GabbTZ2W1n36aefRsSaLyBKSkoaPG/58uWpX2AeeuihniVCGiE+ALFixYo44IADIiLi7LPPjkMOOaSFO1q/o48+Oi699NI63/vWt74Vs2fPjlGjRsVll13WoPUuvfTSuOOOO2LgwIGpvWRrO/nkk+Opp57KuGegbfrwww9Tr/v167fO+1tuuWV88skncckll0T79u3jiCOOSL23bNmymDhxYkSs2Uqnvp+3T5gwIV599dUoKiqKCy+8sEF95ebmNuYygCx44okn4sILL0w9VPF73/teXHjhhU36Vcz9998ft956a0REHHLIIXV+GQjAxjV79uyIiDq/sFifyZMnp276OOyww7LeF62bEB+AWL16dWrfvrruFAUgMxsK8ceNGxeXXnppTJ06NS688MLYbLPNYr/99ouINQ93W758eUREHH/88fGtb32rzhqvv/56vPrqq1FQUNDkPXGB7CsrK4vf/OY3qe1z8vPz46KLLopvfvOb8frrr2e87ueffx4XXXRRRER07NgxDj300Hj55ZfrPLekpCQGDhyYca0IN1EANNRXv8Ls3r17VFdXN3jeww8/HBERO+64Y2y55ZbrnWtbxLbH/+IAANBMvvojrn379nU+wLa4uDhuuummGD16dMyYMSPOPPPMePTRR6N3796pPaR79OhhGwlopZYsWRJHHHFEfPbZZxER0bdv3/j9738fO++8c0yYMCHOPffcrNRZunRpnHjiifW+P2TIkLR96gFaswceeCD1xWjSVFdXp/777+WXX87oC9QZM2asd17Hjh3j5Zdfjnbt2mXcJ62P/7UBAKCZfHUn/rbbblvvFjYlJSVxww03RM+ePeOwww6L3r17x9NPP52ae9xxx9n+BlqpTp06xemnnx75+flxxBFHxEMPPRQ777xzS7cF0CosWrSopVtotE8++SSqqqqatcauu+4qwG+D3IkPAADNZOrUqRERscMOO6z3vO7du8ff/va36NWrV9TU1MQ111wTEWse8Hb00Uc3e59A8zn00ENj9913r3dv5MLCwnjooYeapfZtt90Wt912W7OsDdBcampq4rbbbou//OUv8c9//jN1fOzYsVnd/rV79+5ZW+srb7/9dur1mDFj4q677or58+dHjx494vjjj8943fLy8rj66qsjImL33Xdvcp+0PkJ8AJqsvLw8li5dmtHcwsLCyM/Pz3JHEbNmzYpHHnmkQed+8sknWa8P8P7778eCBQsiImLo0KEbPP+r7XYmTZoUM2fOjIiIn/70p1FSUtJ8TQIbxfoebpiTk1PndlvZsNlmmzXLukDLW7JkSSxcuDAra61atSoiIhYvXhwffPBBk9crLCyMXr16ZTR31qxZcdFFF8ULL7wQERHz5s2LHj16RERkvObGNH369IhY80vLk046KfLy8mLs2LHx+eefx/Dhw2O77bbLaN3HHnss9XrEiBFZ6ZXWRYgPQJMde+yxGc+95ppr4sADD8xiN2u8/PLL9T7cDWBjeOmll1Kvhw0b1qA5q1atSt2F361bt/jh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27blo48+MkmJwQoVKjBmzBhGjBjBf//7XzZs2MDRo0eJiYnh8OHDHD58mGXLlvHBBx+kaCwtohCR9GratCm7du0iPDycmJgYcuTIgZ2dHY6OjtSpU8doV6dOHZo1a4aXlxezZ89OdDxLS0s6d+5M586duXfvHn/88Qc3btzA29ubBw8eEBAQQFBQEGFhYURERBAVFZVoXAmpUaMG8+bNY9GiRSxevBhra+sE21lZWdGyZUtOnjwJxP7btnnz5rRu3dokOyWKFi2Ki4sLffv2ZcGCBRw4cIDIyEjq1q2b7rHl9WAW8+JePRERERERERExmVu3btGqVat4iaNChQpRtmxZypcvT8WKFalWrRpVqlQxySGQyfHy8uKnn35i+/btfPTRR0kmxwAcHBy4evUqnTt3ZurUqRke34sGDRrEb7/9xvvvv8+KFSsydW4RyRqeP39Ojhw5XnUYREdHJ1oi6EXr1q3jzTffpGbNmi+V5jGlK1eucOHCBbp06ZJhc0jWoiS+iIiIiIiISAY6cOAAZmZm2NnZYWdn90oOn/ynwMBALCwstDNHRETkNaAkvoiIiIiIiIiIiIhIFpX8PhAREREREREREREREXkllMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmilMQXEREREREREREREcmisr3qAEREREREJHWePHlCVFQUFhYW5MuX71WH81ry8/PD39+fatWqZcj4AQEBXL16FYCqVavq+5QFhIWFERkZibm5OTly5HjV4WQoX19frl69Sp06dfSzJyIi8i9gFhMTE/OqgxARERERkZRr3Lgxvr6+FC1aFHd391cdTpqEh4fz0UcfUaVKFZo1a0b79u0zbe6IiAi6d+/OhQsX6NSpE8OHD8fGxsakcxw8eBBHR0cAVq9eTd26dU06flpt2LCB27dvU7JkSbp27Zpk2zVr1nDv3r0UtX0d9O3bl6NHj1KiRAkOHz780v0DBw5w584d+vTp8wqiS5vAwED++usvrl27Znxcv36dp0+fAtCjRw8mTJjwiqMUERGR9NJKfBERERERyXSnTp3i4cOHPHz4kPLly2fq3Js3b8bDwwOA9evXs2/fPr7++mtatmyZZL/79+9TvHjxDIsrOjoaLy8v3njjjQybY8+ePZw4cYJ333032cT8jh07uHDhQoravg4iIiIAElyFv3v3bkaNGkVkZCRXrlxhxowZWFpaZnaIhpiYGJ4+fcqTJ0/4+++/efDgAb6+vvj6+nL37l3jOjg4OMlxfvnlF7p3706pUqUyKXIRERHJCErii4iIiIhIpjty5Ihx3bRp00ydu0uXLuTNm5fvvvuOBw8e8Pfff+Pk5MSePXv45ptvKFiwYLz2YWFhzJkzh9WrV+Pq6krz5s0zJK6NGzcydepUPv/8c4YOHUru3LkzZJ7/VZGRkQAJJueLFSuGjY0Njx49YseOHQQHBzNv3jysrKxSNcf27du5cOEClpaWWFpaYm5ubnxERkYSHh5ORETESx+hoaEEBgby5MkT479RUVGpmjtPnjyULl2acuXK8cYbb1CpUiUqVapEsWLFUjWOiIiIZD1K4ouIiIiISKaKiYnh4MGDQGzytFatWpkeQ4sWLWjUqBGurq6sXbuWmJgYDhw4wPnz55k1axb29vZGW3d3d/7zn/8AMHr0aIoWLWrymIOCgpg3bx5RUVGsW7eOjh07JrsiPzg4mAcPHqRqntDQUACeP3+Ol5dXkm3DwsJS3DaOlZUVJUuWTFVMmc3CwuKl195++23c3Nzo2bMnt2/f5s6dOzx58oTChQunauzixYszatQoU4UaT65cuShcuDDFihXD1taWEiVKYGdnh52dHWXKlKFQoUIZMq+IiIi8ekrii4iIiIhIpvLw8OD+/fsANG/eHDMzs1cSR86cOZk4cSLNmzdn/PjxeHt74+/vT+/evXF0dMTR0REzMzOaNm3KsGHDmDdvHmFhYQwePJgtW7ZQtGhRk8Uyf/58AgICAOjatWuKSuqcOHHCqLufWpcuXaJFixYmb1u2bFn27t2bppgyWlzyPm5F/j8VL16cVatW8d133zFlypQ0nZPwzjvvULVqVS5fvhzvdXNzc6ytrY2P7Nmzkz17dnLlykXu3LmN/+bNmxcbGxvy589P/vz5sbGxoXDhwhQuXJicOXOmKAZfX198fHx45513EnxgISIiIq8fJfFFRERERCRT7d6927hu1arVK4wkVp06ddi6dSuTJk1i586dREdHs2DBAq5fv853331Hjhw5GDRoED4+PmzZsoVHjx4xfPhwVq9eTbZs6f8n1blz51i3bh0AhQoVYsiQIeke83X05MkTtm7dmmHjP3r0CIDHjx+zatWqRNvVrFmTX3/9Nd5rn3zySYof2vzyyy9ERESQLVs2LCwsyJYtW6ofVD169CjNK+t/+OEHNm/eTP78+fnll18oW7ZsmsYRERGRrENJfBERERERSVZAQAB+fn6p7leiRAny5ctnfB4eHs7OnTsBKF++PG+99ZbJYkyPXLlyMXv2bOrVq8c333xDREQEhw4d4saNG1SvXh2AKVOmcP36dTw9PTl79iyurq6MHj06XfOGhYUxfvx4oqOjjTny5s2bor5NmjTh2rVrqZqvR48enDp1infeeYe1a9cm2bZTp07GwbZr1qxJsm3jxo3x9fVNVSz/9OTJE2bMmJGuMVLi0aNHqZ6nWrVqKU7ix622Dw8PZ/fu3Xh7ezN06NAU9d2xYwerVq3C29ubgwcPpno3gJ+fH9u3bwegVKlSSuCLiIj8SyiJLyIiIiIiydq6dSsuLi6p7ufi4oKDg4Px+cGDB/n7778B+PTTT00Wn6l07NiRcuXKMXjwYAYNGmQk8CE2Obtw4ULatm1LYGAg//nPf2jcuDF16tRJ83zTp0/nr7/+AqBly5YZfshvXE38V1XCKCkJHTj7OnNycuLAgQMAVKxYMUUHIt+/fx9PT08AlixZwpgxY1I15w8//EBERARAmkstiYiISNajJL6IiIiISAbbtm0bFy5cMNl4gYGBADx9+pSpU6eabNyRI0emuO52Wq1fv964njVrFrNmzTLZ2FWrVmXLli3pHqd27drs3LmTggULvnSvePHiODs74+joSHR0NGPHjmXHjh3kyJEj1fPs3r3b+HrY2toyefLkNMXr5+fHH3/8kaK2cQ8MgoKC2LVrV5Jt437OHj9+nGzbkJCQFM2fFHNzc+N6yZIlNGrUKN1jvmjJkiW4uroCcP78+TR9z1LDyckJd3d3wsLC+Oabb7C3t4+3KyUhvXr1YvPmzdy+fZtffvmFfv36UaBAgRTN5+XlhZubGwDVq1enYcOG6X4PIiIikjUoiS8iIiIiksFOnDiRIbW+Q0JCjFrqpjB48OBEk/hVq1alR48eqR6zfPnyxvXly5c5depUmuPLTAkl8OM0adKEzp07s2HDBnx8fFi8eDHDhw9P1fhXr15l4sSJQOwK9Dlz5iSb4E3Mxo0bWbhwYarnd3JySlFbLy+vFLdNj4zeHZA7d27jOjg4OMOT+OXKlWPgwIHMnTuXgIAAZs+enexDN0tLSwYPHszIkSN5/vw5a9asYdiwYSma79tvvyUqKgqI/V0WERGRfw8l8UVEREREJFn16tWjXr166Rpj5cqVxrWtrS1WVlbpDYvIyEh8fHwATHLIbEqNGTOGY8eO4evry8qVK2nfvj2lSpVKUd8HDx7Qv39/goODARg3bhw1atRIcyy///57mvtmJXEJ6IzyYhL/2bNniR4cGxMTY7IHCn369GHr1q14e3vj5ubGF198Ee/BVkJatmzJvHnz8PHxYdOmTTg6Oib7s+3m5saJEycAaNasmVbhi4iI/MsoiS8iIiIiksFmzpzJzJkz09w/NDSU999/n6dPn1KkSBHMzMzw8/OjcOHCmJmZ8fDhQ3LlysWxY8cyvBxOWt28eZPdu3cDYGdnx969e01SA33Lli2MGzcOIF2J8NTKlSsX33zzDf369aNNmzYpLnkCsUni+vXrs23bNrp27Uq3bt3SHMfTp0+5ePEiAJ988glz585NtO2RI0fo378/EHuA7meffZbk2Kk52NYUIiMjM3T8F5P4QUFBibabP38+jx8/ZsyYMeTKlStdc1pZWTF69GgcHR2JiopiwYIFSX6PILas0GeffYaLiwv+/v64u7vTuHHjRNvfvn3bOKg3f/78aS7LJCIiIlmXkvgiIiIiIlncvn37ePr0KQCdO3c26r6bm5vTrl07Fi9eTHBwMHv27KF9+/avMtREzZ07l+joaCC21IepDjHduHGjcZ3Z771BgwZs27aNSpUqpapf8eLFmTFjBoMGDaJEiRLpiuHEiRPGCvZ33nknybbXrl0zritXrpyueTNC3IGs8H+7KrZt28bo0aPTNW7c+86bN6/xWmJJ/MePH7Nq1Sqjxr8pzpxo0qQJVatW5fLly+zfv5/79+9TvHjxJPu0bt2a77//nujoaM6cOZNkEn/atGk8e/YMgEmTJiVZCkpEREReT0rii4iIiIhkcZs3bwZi62W/mMQH6NChA0uWLCEmJoZNmzZlyST+6dOnOXDgABBbJ7xNmzYmGffatWt4eHgAUKdOnRQlpnfv3s2RI0cYM2ZMqlbPJya1CfwXlSxZMt3zHzt2zLiuXr06YWFhibaNK7diaWlJhQoVkmwLsTsGAKKjo5NtmxAzM7NUlUx6cY6M2FHy4vf7yZMnCbb58ccfCQkJwdzcPE1nQCSmR48e/PLLLzg4OJAnT55k2xcpUoQRI0ZQs2ZNateunWTbH3/8kW3btnHz5k1atGhhqpBFREQkC1ESX0REREQkC/Py8uL06dMANG3alMKFC8e7X7JkSd577z1+//13PDw8uH79OhUrVnwVoSYoIiKCKVOmGJ+PHz8eCwuLeG0ePXpkrHhu2bIlzZo1S9HYLx7q26tXr2Tb37t3j8mTJxMUFMR///tfRo4cSceOHVM0F4CHhwfh4eEpanv9+nXj+sqVKymeo0SJEqlK7r9YD79Dhw4p6hMREUGdOnVSPMcff/xB9erVU9w+zptvvpmqA51fTKzHJfE/+ugjowxTeuXPn9+4DggIeOn+zZs3Wb9+PQAODg5UqFDBJPMCtG3blrZt26aqT9++fVPUzsrKKlU/xyIiIvL6URJfRERERCQLW7RokbEiunfv3gm26dWrl5HMXbJkCbNnz860+JKzcOFCvLy8APj4449p0KDBS22ePHnCvn37AFKcXL53756xI6FMmTJJlhuJ8/DhQ2xsbAgKCiIwMJCJEyeyZ88enJ2dky1vAjBs2DD8/PxSFN+L4uqVp0S/fv0YOXJkitrevn2bu3fvpjqezJIvX75UtX+xxE1cLfrcuXPHq2WfHvnz58fCwoKoqCgeP3780n1nZ2ciIyPJkSMHQ4cOTdXYCxYsYOHChSaJM6O0a9cuXWdziIiIyKujJL6IiIiISBbl7e1trEJu1KgRb731VoLtGjRoYNTc3rNnD8OGDaNUqVKZGWqCTp8+zdKlSwHIkycP48ePT7Ddi7XQra2tUzT24sWLjX59+/bF3Nw82T41a9Zk586dLF68mGXLlhEREcHvv/9Oq1atmDx5ssnK/GSWYsWK8dtvvyXZJioqCmdnZ44cOQLAu+++m+KHCoMHD+bKlSvUqFEDV1fXFMf18ccfExUV9dKukeS8uBLfxsYmVX1TwszMjAIFCuDv74+/v3+8e60aXacAAB+kSURBVHv27OH48eMADBgwIN1nFYiIiIiYkpL4IiIiIiJZ1Pz5841DSx0dHZNsO3DgQAYPHkxUVBRLlizB2dk5M0JM1L179xg+fLhxmO2kSZMSXe3+YomauPebFB8fH2MVfqlSpWjXrl2K47K2tmbYsGE0a9aMsWPHcuXKFZ49e8aoUaM4deoUX3/9NdmzZ09yjFq1avHdd9+leM7k+Pn50b1791T3y549O3Z2donev3HjBhMmTODChQsAlC1bljlz5lCoUKEUjR9Xz97a2jrJeV7k5+dnfA/LlCmToj5x7t+/D8SW0nmxbvzff//N4cOHUzUWwHvvvUexYsXivVa0aFH8/f15+PCh8dqTJ0+M35cyZcrQp0+fVM/1ogEDBpjkvAVTcXV1TdOZBiIiIpJ1KIkvIiIiIpIFnTlzhp07dwLwwQcfJFuTvEmTJlSqVIlr166xdetWevToka5DV9Nr0qRJPHr0CIitB57UKvfAwEDjOjQ0NNmxp06daqzCHz58ONmypf6fNZUrV2bTpk0sXLiQpUuXEh0djZubG1euXGHRokUULVo00b7Zs2endOnSqZ4zMf88IyC9bt68yYoVK9i2bZuRUK9RowY//PBDihP4yQkPDycwMJDo6GjjIyIigv/85z9Gm7fffjtVY8Yl8f+5gv/u3buMGzcu1TEuXrz4pSR+8eLF8fT0NOYCcHFxwd/fHzMzM6ZMmZKqw3gT4uDgQPny5dM1hiktXLhQSXwREZHXnJL4IiIiIiJZTGRkpHHQa7Zs2RgzZkyyfczMzBg3bhw9e/YkKiqKadOmsWbNmowONVFTpkyhV69eFCpUiG+//TbJti8eMvrs2bMk2+7evRt3d3cgdqV1ixYt0hyjpaUlw4cPp27duowaNYpHjx5x+fJlhg4dyoYNG9I87qvw4MEDfvvtN3bs2IGHh4fxupWVFX369MHR0RFLS0uTzefn50eTJk0SvW9nZ5eqw3MBo75/Ug9Q0ituN8jdu3eJiYnB3d0dNzc3ALp06YK9vX2GzS0iIiKSVkrii4iIiIhkMStXruT69esAdO3alQoVKqSon729PY0bN+bQoUOcPn2aPXv28Mknn2RkqImys7Pj559/Jlu2bMmubI5bsQ/g6+ubaLugoCCmT58OxCbgJ02aZJJY33vvPbZs2cKgQYO4du0aEyZMMMm4GSUmJoZbt27h6enJ+fPnOXPmDDdu3IjXxsrKilatWjFo0CBKlixp8hhKlixJ9erVuXjx4kv3SpQowdy5c1P90ODmzZsAlCtXLtE2q1evpm7duone9/LySvLBjq2tLQDPnz/n6tWrxve6VKlSjB49OlXxioiIiGQWJfFFRERERLKQS5cuMX/+fAAKFCjA0KFDU9V/7NixHD16lIiICJydnalbt+4rq8+d0oNNvb29jes7d+4k2CYmJoYxY8YYB5L27duXsmXLpj/I/69o0aKsW7cODw+PZEsXXbhwgR49elC8eHGKFStGsWLFKFGiBKVKlcLOzs6kK94T4+TkxNWrV196vVKlSrRq1Yp27dql+mDZf5o/fz5hYWGJnhHg7OzMrVu3iI6OJiYmBjMzM4oUKUKNGjVS/TV4+PChsSMjpQ+t0uLFMkiDBw/G398fCwsLZsyYQc6cOTNsXhEREZH0UBJfRERERCSLCA4OZsSIEUa994kTJ8Y74DMlSpcuzaBBg5g3bx7+/v5MnjyZBQsWZES4JvPiKvKrV68SERHxUhJ4+fLlHDp0CIDq1asne9BvWmTPnj1F5VRCQkI4depUgvcsLCwoUaIEpUuXpmLFilSpUoXKlStTrly5NNXuT4iZmRlDhgzB0dGRIkWKULNmTezt7WnQoAGFCxc26uAHBwena548efIYP38JjWVra4utrS3m5ubkyJEjXXNduXLFuM7IJP6LD37iyvcMGTIk1aV/UsPb25uQkJAMG/9F+fLlo0SJEpkyl4iIiGQeJfFFRERERLKAmJgYJk6caKxKb9WqFS1btkzTWAMGDODQoUNcunSJ/fv3s2XLFj799FNThmsyUVFR8ZL4ISEhXL58mZo1axqvPXv2jOXLlwOxiWVXV9dMWe2emHz58lG0aFHu37/P06dP492LiorCx8cHHx8fjh07ZrxuZWVF1apVqVWrFm+//Tb29vbkzp07zTE0adIEd3f3l+rHd+/endOnT6d53LSwtbU1HrCkVdxDEQsLC9566y1ThJWguJ0ScQ/K3n//fb788ssMmw9iH8Zl1vekdevWfP/995kyl4iIiGQeJfFFRERERLKA+fPns3v3bgCKFSvG5MmT0zyWhYUF3333He3atSMsLIypU6dSpUoVqlSpYqpwTeb8+fMvHWa7b9++eEn83Llz4+bmxrBhwxgwYECG1HhPjbfeeosVK1YAsQ8YHjx4wN27d7l9+7bx4eXlxcOHD40+4eHheHh44OHhwcqVK/ntt9/SlcSHjD0ANrPFJfGrVKmS5NclNDQ0yR0GoaGhSc7j6elpXOfKlYtZs2ZhZmaWymhFREREMpeS+CIiIiIir9i2bdv48ccfgdgV23PmzCFv3rzpGrN8+fKMGzeOKVOm8Pz5cwYNGoSbmxsFCxZM9Vi7d+/Gw8MjzbGULl2azz//PMF77u7uxrWtrS2+vr5s374dJyeneKvtS5YsyaZNm7CwsEhzHCmxZ88e7ty5Q9++fROdy9zc3LjOnTs3FSpUSLAETEBAANeuXePq1atcunQJDw8P7t27R61atbCzs8uw9wBQsWLFDF9hvmbNmnT9XMTx8/Pjzz//BODdd99Nsm3//v3TPI+XlxcDBgwwVuGHhoaabEdHtWrV6Ny5MxC7U+NFTk5OBAYGMn/+fON9NmvWjHbt2qV73gcPHuDs7Gy8pxcffsVp0aIFISEh1KpVK93ziYiIyKuhJL6IiIiIyCt05MgRJkyYYHw+depU3n77bZOM/dlnn3Hp0iU2b97MvXv3GDJkCKtWrcLKyipV4/z++++4ubmlOY533303wSR+ZGQkW7duBaBMmTKMHj2aQYMG8ejRI7Zu3UqnTp3itc/oBH5kZCRz5szB29ubw4cPs27dunhzRkdHpyqOAgUKYG9vH6/Ovp+f30v10ZNbPZ4WBQsWTHM5ppQ6ePCgSZL4u3fvNr62TZo0Sfd4Cblx4wa9evUiMDDQeC0qKoo//viDDz/8MN3jf/jhh4mOE5c8L1u2LO3atSMkJIRDhw7Rs2fPdP2uBwQE4OLiYiTwO3funODv2dSpU9M8h4iIiGQNSuKLiIiIiLwiR48eZfDgwUYSrk+fPiZZnfuiKVOmcP36dS5dusTZs2cZOnQoCxYseKU15eMcOHAAPz8/ADp06MCHH35IiRIluHfvHosWLcLBwQFra+tMi2fLli3GmQS2trYvJevjku25cuVK8xxxJXDCwsI4dOgQO3fu5MiRI2kez1TWr19PcHAwRYsWpVWrVpk6d9yDnOLFiyeY1C5TpgyLFy9O9bjVq1cH4MKFCwwYMIC///4bgJ49e7JmzRqioqI4ceKESZL4KVGmTBm++eYbRo0aRUREBEOHDmXz5s1pKov09OlT+vTpw61btwBo3LhxukpwiYiISNamJL6IiIiIyCvw+++/4+joSHh4OACffvopo0aNMvk8VlZWLFy4kM8++4x79+5x+PBhRo0axezZs1O8otzZ2RlnZ2eTxhUZGcn8+fMByJkzJx06dMDc3Jz+/fszZcoUI5H/1VdfmXTexISHhxsljSwsLHB0dIx3PyYmxkjip7WWfUREBCdPnmTXrl3s378/ydrumc3FxYXg4GDs7e0zNYl/9OhRrl27BsQeyppQffo8efKkOdG+f/9+Ro0aZXzvBg4cyFdffcXFixc5d+4cBw8eZPz48Wl/A6nUpk0brly5wsqVK/H396dfv36sXr0aGxubFI8RGBhI//79jdI877zzDnPnzs3wnSoiIiLy6pgn30RERERERExp586dDBgwgLCwMABatWqFs7Nzhh2wWaxYMVasWEGBAgWA2Lrvo0ePNnYAvAobNmwwVhH36NGD/PnzA9CxY0fKlCkDwPLly7lx40amxPPzzz9z//59IDbRWq5cuXj3AwICjK9XoUKFUjxueHg4hw4dYuzYsdSvX5++ffuydetWI4FvbW1N3bp1TfQu0iY8PNyIJ72H7aZGTEyM8eDE0tIy0XMTEnL37l0GDBjAvn37ErwfHR3N3LlzGTp0KKGhoZiZmTF27FjjoVDcQwFfX18uXryY6Dxz5szhjz/+SHFcKTF69GjjQcm1a9fo06fPS4c7J+bhw4d8/vnnXLhwAYitgb948eJM3bEiIiIimU9JfBERERGRTLR8+XJGjhxpJIQ/+eQTXFxc4h2WmhHKlSvHihUrjCTtzp07+fLLL1+qz54ZfH19cXV1BSBv3rz06tXLuJctWzbGjRsHxK5cHzFihLFbIaMEBATwww8/ALHJ5H+uwofYA0TjFCtWLMnxgoKC2LVrFyNGjKBevXoMHDiQrVu38uTJEwBy5MhBs2bNcHV15cSJE0yfPt2E7yb17t27Z1yXKFEi0+bdunUr586dA8DBwSHRsjLbtm1jxYoVHD9+HIhN0H/55Zf897//ZezYsdy8efOlPtOnT2fRokXExMSQI0cO5syZE+/nrE2bNsbvXFw5n4QcOnSIbt26sWjRojS/z38yMzNj5syZNGjQAABPT0969erF48ePk+zn5eVF165djQdbtWrVYvny5Zn64EVEREReDSXxRUREREQyQUREBFOmTGHWrFnExMQA0K1bN1xdXTOtDMabb77JihUryJcvHwDHjh2je/fuySYPTSkmJobx48cbK49Hjhz5UimRRo0a0bZtWyB2pXJGJ7ldXV0JCgoCYr8nJUuWfKnN9evXjWtbW9uX7t+6dYsVK1bQvXt37O3tcXJyYufOncYK9zx58tCqVSvmzZvHiRMnmD9/Pi1btkxXfX1TiTsHAHhpB0JGMjc3J1u2bOTOnZthw4YBsQ9A5syZE6/U0E8//YSLiwt79+41+s2aNYvs2bMTEhKCo6PjSyvZBwwYQJkyZShfvjzr16/nk08+iXe/WLFivP/++wD8+uuvxgOWF8XExHD37l0AY9eMqVhaWvLjjz8aB/levHiRjh07GqWF/mnv3r106NABHx8fAOrVq8eKFSvIkyePSeMSERGRrEk18UVEREREMpifnx/Dhg3Dw8MDiF2J6+TkRP/+/YHY+vCpSVQHBgYCsYdbTp06NUV97Ozs6N27NzVr1mTt2rX07t0bf39/PD09ad++PfPmzaNGjRqpfGepN3fuXE6ePAlAnTp16NSpU4LtJkyYwKlTp7h//z6//PILb775ZqJt08PT05PNmzcDULBgQQYPHpxgu8uXLxvX5cuX5++//+bkyZMcP36c33//HV9f35f6FC5cmMaNG9OkSRPq1auHlZWVyeM3hbjV8AC1a9fOtHnbtm1LgQIFePjwIUWKFAFiV74vXryYzZs3s3PnzkRrxVepUoUJEybw9ddfc/v2bb7//numTJli3C9cuDDr1q0jd+7cZM+enejoaPz9/eOt9u/duzfu7u6EhISwcuVKhg8fHm+OGzduGDtVKleubOJ3H3texbx58xg7diw7duzA19eXLl26MH78eDp27AhAcHAwc+bMYc2aNUa/1q1bM3369Cz78yQiIiKmpyS+iIiIiEgGOnnyJE5OTsZqd2tra6ZNm0abNm2MNlFRUaxbty7VY4eEhKS4X40aNejduzcAFStW5JdffqFPnz54e3tz//59unXrxtixY1NVlzy19u3bx+LFi4HYMjozZ85M9ByAvHnzsnDhQrp160ZoaChTp07F1taW+vXrmyyemJgYpk2bRnR0NABOTk6Jrmw+deqUcT1w4ECu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nWTHitsdEbfq/kXnzp2je/fuCa5kT0zDhg1ZsmRJguWbIiMjyZbNdJvS586dy6JFixK9ny9fPurUqUP9+vVp1KgRtra2Jpsb/u/Biru7O8eOHTPOFkhI5cqV+fXXX9NV1kpEREQyn5L4IiIiIiKvmayYxA8ODqZDhw74+voydOhQevfubZJVzimxZ88epkyZQmBgYLIJ93v37hEUFETlypWTHDM8PJxp06YRHBzM7Nmz0x3jqlWrmDFjhvF5tmzZyJUrF8WKFaNq1ao0b948xbXgg4ODadSoEUFBQQneNzMzo2zZstSuXZu6devSoEGDNK26T42QkBD27t3Lxo0b8fDwMF4fMWIE/fv3T/f4Fy5cwM3NjT///BM/Pz+ePXtGeHg40dHRZMuWDWtra/Lly0fJkiVp2LAhn3/+eYIPBDJCcHAwzZo1w9/fH3Nzc0qXLk316tWpUaMGtWrVonLlypn2uxATE4OnpycnT57k0qVLeHp6xnt49OOPP/LRRx9lSiwiIiJiOkrii4iIiIi8ZrJiEh/Ay8sLgPLly2f63P7+/qxfv54hQ4aYdNyoqCgsLCxMOqYpfP/992zevJmiRYtSvHhxSpcuTZkyZahQoQKVK1dOtL56Zvjzzz9ZsWIFf/31Fxs3bjTpqvesytPTk6ioKCpWrJjqMwEyWkBAAJcuXeL27dt88cUXrzocERERSQMl8UVERERERMTksuoDEBEREZHXjZL4IiIiIiIiIiIiIiJZVOYU5hMRERERERERERERkVRTEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJItSEl9EREREREREREREJIv6f+3YsQAAAADAIH/raewojCQ+AAAAAABMSXwAAAAAAJiS+AAAAAAAMCXxAQAAAABgSuIDAAAAAMCUxAcAAAAAgCmJDwAAAAAAUxIfAAAAAACmJD4AAAAAAExJfAAAAAAAmJL4AAAAAAAwJfEBAAAAAGBK4gMAAAAAwJTEBwAAAACAKYkPAAAAAABTEh8AAAAAAKYkPgAAAAAATEl8AAAAAACYkvgAAAAAADAl8QEAAAAAYEriAwAAAADAlMQHAAAAAIApiQ8AAAAAAFMSHwAAAAAApiQ+AAAAAABMSXwAAAAAAJgKGyxEzYA8pHkAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABfEAAAWsCAYAAACJtMnFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3XmcV3W9P/D3LAwIjCyyCYioQIiCorhmWabX1NKUm2kJpqiphNxui7n8suWqLd5KS8nStM2lq0FqpV5SK8sUA8ERUcGdRcBxYARhBmZ+f/jw3Dnf2QeUD/B8/vV9n/l8zvt8jssfr+/5fk5RfX19fQAAAAAAAMkp3tIXAAAAAAAANE2IDwAAAAAAiRLiAwAAAABAooT4AAAAAACQKCE+AAAAAAAkSogPAAAAAACJEuIDAAAAAECihPgAAAAAAJAoIT4AAAAAACRKiA8AAAAAAIkS4gMAAAAAQKKE+AAAAAAAkCghPgAAAAAAJEqIDwAAAAAAiRLiAwAAAABAooT4AAAAAACQKCE+AAAAAAAkSogPAAAAAACJEuIDAAAAAECihPgAAAAAAJAoIT4AAAAAACRKiA8AAAAAAIkS4gMAAAAAQKKE+AAAAAAAkCghPgAAAAAAJEqIDwAAAAAAiRLiAwAAAABAooT4AAAAAACQKCE+AAAAAAAkSogPAAAAAACJEuIDAAAAAECihPgAAAAAAJCo0i19AcDWpb6+Pmpraxsd79SpUxQVFW2BKwIAAACAbZcQH2iX2traePLJJxsdHz16dJSVlW2BKwIAAACAbZftdAAAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFGlW/oCADbFl666O6rXrN/SlwG0UXm3znHVlz6+pS8DAAAAthpCfGCrVr1mvRAfAAAAgG2W7XQAAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFGlW/oC2HTLli2Lp556KhYvXhxr1qyJkpKS6N69ewwcODD23HPP6N+/f4fP/cILL0RFRUUsX748ampqYscdd4w99tgjxo4dG507d95sa6itrY25c+fGwoULo6qqKkpKSqJv376x1157xfDhwzdbn4iIlStXxhNPPBGvvvpqrF27Nrp27RpDhgyJsWPHRq9evTZrrwULFsTTTz8dK1eujI0bN0avXr1i+PDhMWbMmCgt9Z8fAAAAANAyKeJWqqamJqZPnx633XZbzJ8/v8WxI0aMiK9//eux//77t+nc9fX1MX369Ljxxhtj4cKFTY7p2rVrnHTSSTF58uTo3bt3u6//HStXrozrr78+pk+fHtXV1U2OGTp0aJx99tkxfvz4KCoq6nCvxx57LKZNmxb//Oc/o66urtHfS0pK4vDDD4+pU6fGyJEjO9ynpqYmbrnllvjlL38ZixcvbnJMz54945RTTolzzjknunXr1uFeAAAAAMC2rai+vr5+S18E7TN79uy46KKL4sUXX2zznP/3//5fnHbaaa2Oq6ysjAsuuCBmzZrVpvP27t07rrnmmjjggAPafC3v+Mtf/hJf+cpXoqqqqk3jDzvssLj66quje/fu7eqzYcOGuPLKK+PXv/51m8Z36tQpvvKVr8TEiRPb1Sci4uWXX47JkyfHs88+26bxgwcPjuuvvz6GDRvW7l5bSk1NTTz55JONjo8ePTrKysre8+v53DfuiOo169/zvkDHlHfrHNdf9u9b+jIAAABgq2FP/K3MjBkzYuLEiY0C/OLi4hgyZEiMGTMmRo4c2aGn4ysrK+PUU09tFOCXlZXFbrvtFsOHD28U0lZWVsakSZPiiSeeaFev++67L84777xGAX6PHj1i1KhRMWDAgEZP3T/88MMxadKkWL++7YFtXV1d/Od//mejAL+4uDgGDhwYo0aNivLy8tzfamtr4/LLL4+bb765XWt68cUX45RTTmkU4O+www4xYsSIGDp0aHTq1Cn3t1dffTVOO+20eOmll9rVCwAAAADYPthOZyty7733xkUXXZTbCmbYsGFx1llnxZFHHtkojF62bFk89NBD8bvf/a7Vc9fV1cWU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x4477pjVv/71r9sUrq9atSquuuqqrB40aFAcf/zxLc4pvH+XXXZZ1NXVtdrrrrvuym2/85nPfCbKy8tbnQcAAAAAbD+E+IkbP358Lhj/3e9+Fz/+8Y9bnLNu3bo4//zz4+WXX86OHXvssY1e+PqOcePGxbhx47L6lVdeiS996UstPiX/wgsvxJe//OVs653S0tI499xzW13PWWedlfs1wM9//vO46667Wpxzyy23xB133JHVY8eOjUMPPbTFOd27d4/TTjstq2tra2Pq1KmxZMmSZuesWbMmpk6dGq+//np27Nxzz81tN9SU4447LgYPHpzVc+bMiW9961stBvnvjGl4vaeffnqLfQAAAACA7U/J17/+9a9v6YugecXFxbHrrrvm9sN/7LHHYu7cuTFkyJAYMGBAdrympiZmzpwZU6dOjYqKiuz44MGD4/rrr4/OnTs322evvfaKO++8Mwuen3/++Xj44Ydj5513jl133TUbt379+rj99tvjK1/5SqxYsSI7Pnny5PjoRz/a6np69eoVa9eujdmzZ0fE21vdzJw5MyorK2PYsGG5p+dfeeWV+N73vhfXXXdddqxLly7x05/+NHr37t1qrzFjxsQf//jH7An+qqqq+OMf/xjl5eUxfPjw7MuE+vr6eOihh+LLX/5yPPHEE9n8gw8+OC655JIoKipqsU9xcXEMHTo07r777uzYk08+GXPnzo1dd90198+ouro6br755rj00ktjzZo12fFvfvObsd9++7W6phRs3Lgxli9f3uh4//79G23X9F645y/zo6Z243veF+iYzmWl8fEPNf2lMgAAANBYUX173mLKFnPdddfF1Vdf3eh47969Y+edd46amppYvHhxrF27Nvf3AQMGxI033hjDhg1rtccdd9wRl1xySaPj3bt3j8GDB8e6deti8eLFUVtbm/v7McccEz/4wQ9aDbvfUVtbG2effXbupbsREUVFRdGvX7/o06dPLF++PFauXJl7yW5paWlcffXVceSRR7apT0TEggUL4tOf/nQuMI+IKCsri0GDBkXnzp3jlVdeafT33XbbLW699dbo1atXm3tdc801ce211zY63rNnzxg4cGBUV1fH0qVLY8OGDbm/n3nmmXHhhRe2uc+WVlNTE08++WSj46NHj46ysrL3/Ho+9407onpN296tAGx55d06x/WX/fuWvgwAAADYangSfytxwAEHRHl5eTz66KO5bVreeuutWLFiRVRWVjYK10ePHh0///nPc0/St2TUqFGx8847x8MPPxwbN/7fk801NTWxcuXKqKqqyvUuKiqKCRMmxLe+9a0oLm77zkwlJSVx9NFHx8KFC+P555/P/W3NmjWxYsWKRl9G9OzZM6655pr48Ic/3OY+ERF9+vSJQw89NB566KFcUL9x48aoqqqKlStXNrpvBx54YNxwww1tetq/oYMOOihKSkpi1qxZuS8f1q1bFytWrIjVq1fn7l9paWl84QtfiKlTp7arz5bmSXxgU3gSHwAAANrHk/hbmYULF8Y111wTDzzwQKPw+R3ve9/74rOf/WyceOKJbX46vqFFixbFD3/4w3jggQcaPTUe8fb2MQcffHBMnjw5t5d+R9x9990xbdq0WLRoUZN/Ly8vjxNPPDHOO++8dofqDa1atSqmTZsWv/3tbxs9df+O4cOHx6RJk+ITn/hEh+7bO+bOnRs//OEP45FHHomm/vPq1KlTfPjDH47JkyfHyJEjO9xnS/EkPrApPIkPAAAA7SPE30pVV1fH7Nmz46WXXoo1a9ZEt27dom/fvjF69OjcS1Y3xRtvvBH/+te/4pVXXom33norunbtGoMHD46xY8fGTjvttFl6vOO5556LioqKWLFiRdTV1UWPHj1i+PDhMWbMmM0aDNfU1MTs2bNj0aJFsXr16igtLY0BAwbE3nvvHbvttttm6xMR8dprr8WcOXNi8eLFsX79+ujevXvsuuuuMXbs2Nze/1sbIT6wKYT4AAAA0D5CfKBdhPjAphDiAwAAQPu0fSNzAAAAAADgPSXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfABqdQdPAAAgAElEQVQAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEiUEB8AAAAAABIlxAcAAAAAgEQJ8QEAAAAAIFFCfAAAAAAASJQQHwAAAAAAEiXEBwAAAACARAnxAQAAAAAgUUJ8AAAAAABIlBAfAAAAAAASJcQHAAAAAIBECfEBAAAAACBRQnwAAAAAAEhU6Za+ANK3ZMmSmDdvXixdujTWrVsX3bt3j6FDh8bYsWOje/fum61PXV1dVFRUxDPPPBNvvPFGRET07t07Ro4cGXvttVcUFRVttl6rV6+OOXPmxEsvvRRr1qyJLl26xMCBA2PfffeN/v37b7Y+EREvvPBCVFRUxPLly6OmpiZ23HHH2GOPPWLs2LHRuXPnzdoLAAAAANi2CPG3AkcccUQsXry4w/MPOeSQuPnmm9s9b+bMmfHTn/405s6d2+Tfy8rK4phjjokpU6bELrvs0uHre/PNN+PnP/953HbbbfH66683OWbAgAFx+umnx4QJE6JTp04d7rVgwYK49tpr48EHH4za2tpGfy8qKooDDjggpkyZEgceeGCH+9TX18f06dPjxhtvjIULFzY5pmvXrnHSSSfF5MmTo3fv3h3uBQAAAABsu2ynQyNr166NCy64ICZPntxsgB8RUVNTE7///e/j+OOPj3vvvbdDvebNmxcf//jH49prr202wI+IWLZsWXznO9+JT33qU/Haa691qNdPfvKTGD9+fNx///1NBvgRb4fvjz32WEycODGuuuqqqK+vb3efysrKmDBhQlx00UXNBvgRb9/nX//613HcccfFrFmz2t0HAAAAANj2CfHJWbduXZx55plx33335Y6XlpbGkCFD4n3ve1907do197e1a9fGF77whbj//vvb1Wv27NkxceLEWLJkSe54t27dYuTIkTF48OAoKSnJ/e2pp56KCRMmRGVlZbt6XXHFFfGDH/wgNmzYkB0rKiqKfv36xV577RU9e/bMja+vr4+f/exnccUVV7SrT2VlZZx66qmNQvmysrLYbbfdYvjw4VFWVtZozqRJk+KJJ55oVy8AAAAAYNtnO52tzGGHHRaTJk1q15zCgLoll1xyScyZMyc397zzzouTTz45C+/r6+vj/vvvj+9///vx4osvRsTb+9lfeOGFseeee7Zpa53ly5fH+eefH2+99VZ2bOzYsTF16tQ45JBDsmNVVVVx8803xw033JA9Pf/SSy/FV7/61fjpT3/apjX99re/jV/84hdZXVJSEp/5zGdi0qRJMWDAgOx4RUVFfP/734+///3v2bFf/vKXsd9++8UxxxzTap+6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anLc5rh/DefsueeeTX4xAQAAAABsf4T426jKysrc090DBw7Mvey1oVGjRkWfPn2y+v77748333yzzb2WL18e//jHP7L6sMMOi+Lipv/VKgy8p0+f3uY+EREzZszIhfHNhfglJSVx6KGHZvXixYtzXzS0xe9///vsc//+/WPkyJFNjjv00EOjtLS02Wtszbx583JfuDS3JgAAAABg+yPE30Zdf/31sWHDhqwuDM8bKioqio9+9KNZvXbt2naF67fffnts3Lgxq08++eRmxx588MG5bX3uvffeJl+425Ta2tq44447snrIkCFx8MEHNzv+mGOOydW/+c1v2tQn4u1fFjTcD/+Tn/xks2O7d++eu7+LFy+OBx98sM29brnlluxzSUlJjB8/vs1zAQAAAIBtmxA/cXV1de2e89BDD8WvfvWrrC4uLo7TTjutxTlnnHFG7mnya665JpYvX95qr5dffjluuOGGrN5vv/3ioIMOanZ8586dY+LEiVm9bt26+K//+q9W+0RE3HDDDbmX7p5zzjlRUlLS7Pijjjoqtwf//fffH3/9619b7VNbWxvf+ta3srpbt265a27KWWedlauvuOKKNr3g9vHHH48ZM2Zk9bHHHhtDhgxpdR4AAAAAsH0Q4ifupJNOatce69OnT4//+I//yD0Zf9JJJ8WIESNanDd48OA47rjjsnr16tVxwQUXxKpVq5qds3LlypgyZUqsW7cuOzZ58uRWr/Ezn/lM/H/27jRMqurcH/ZT0DRTAy0gswSUKKAIOCfByyE5McgxRhwJAacYBxSjxr8BJdGjgImix9kgmmjieDQOUaOEaByTKAIiIo6IyCBjy2x3Q70feKlQ3QzdTUnvgvu+rr6stWvv9axdxnz41apnFxUVZcbPPvtsjB07dovXTJgwIW6//fbMuH379nHsscdu8Zo6derEWWedlXVs2LBhMWPGjM1eU15eHsOHD48PP/wwc2zQoEFZ/fU35YADDogDDjggM549e3b84he/yHowbkUzZ86MSy+9NNN6p6CgIM4555wt1gEAAAAAdi5C/IR77733YtCgQXHiiSfGI488Ep9//nmlc1auXBl///vfY/DgwfHLX/4yawd4jx494vLLL69SrUsuuSQrrJ48eXKcdNJJ8eyzz2Z9KVBeXh5PPfVUnHzyyVmBeP/+/aNPnz5brdOsWbO45JJLso6NGTMmLr744qzwPGL9g2yvu+66GDp0aJSWlkbE+nB+1KhRUVhYuNVa/fv3j969e2fGixYtioEDB8Y999xTqe//xIkT47TTTounnnoqc2yPPfaI8847b6t1IiJGjBgR9erVy4wnTJgQAwcOjFdeeSXrvK+++iruv//+GDBgQMydOzdz/Nxzz40uXbpUqRYAAAAAsHNIpavzBE62u7322qvSsRYtWkSLFi2ifv368eWXX8bcuXOz+t9vsM8++8Rdd90VzZs3r3K9V199Nc4+++xK8zVs2DA6dOgQ6XQ6Pv/886zd9xER+++/f/z+97+P+vXrV7nWZZddltVKZoOWLVtG69atY+nSpTF//vxKLYVGjBix1fZAG5s/f36ceOKJldoD1atXL9q2bRtFRUUxZ86cSr86aNmyZTz44IPVam/z6KOPbvJLk6KioujQoUOsWbMm5syZE2VlZVnv9+3bN2688cZIpVJVrlVbSktL45133ql0vEePHlX6YiXXzr7q0Vi+cvO/eACSpUnj+vG7X59Q28sAAACAvCHET7hNhfhbU1BQEKeeempcdNFFWTvDq+qll16KSy65JJYvX16l8/v27RujR4+Ohg0bVqvO2rVr4+qrr44HH3ywSuc3bNgwfv3rX8dxxx1XrToR63v3n3322fHJJ59U6fy99torbrvttthtt92qXevRRx+Nq666KvPLgS1JpVLxk5/8JIYNG7bF/v5JIsQHtoUQHwAAAKqn7pVXXnllbS+CzevVq1csWbIk5s+fn9XSZlPatm0bJ510Utxwww1x1FFH1TgU7tSpUxx77LGxbNmy+OSTTzZbt2fPnvHrX/86zjvvvBp9WVCnTp04/PDDo2fPnjFr1qz44osvNnlegwYN4oc//GHceOONW3xo7pY0a9YsTjzxxKhXr158+OGHm33obPv27eP888+Pa665JnbZZZca1erevXscddRRsXDhwpg1a9YmH05cp06d+Na3vhXXXnttnHLKKVGnTv50tlq7du0mH3rcunXrWvki4umXpkdp2Zb/2wCSo35hQRxzePfaXgYAAADkDTvx88Tq1avjgw8+iFmzZsWSJUtizZo1UadOnWjatGk0b948unfvHh06dMh53ZUrV8Zbb70VM2fOjJUrV0aDBg2ibdu20bNnz2jXrl1Oa82ePTumTJkS8+fPj/Ly8mjatGl0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gB+x/nP+05/+FP369Ys333yz2nUAAAAAgJ2DEH8HsHr16hgxYkSNQueNrVmzJs4444x4/vnns44XFBREx44dY6+99opGjRplvbdq1aq46KKLYvz48dWqNWnSpBg8eHDMnTs363jjxo2ja9eu0aFDh6hbt27We++++24MGjQolixZUq1ao0aNihtvvDHKy8szx1KpVLRq1Sr23nvvKC4uzjo/nU7HXXfdFaNGjapWnSVLlsSAAQMqhfKFhYXRuXPn+OY3vxmFhYWVrjnzzDNjypQp1aoFAAAAAOwctNPZAdx4443x2WefRUTErrvuGgsXLqzRPJdffnlMnjw5My4uLo5zzz03TjrppEx4n06nY/z48XHDDTfEp59+GhHr+9lfdtll0a1btyq11lmwYEGcd955sXr16syx3r17x4UXXhjf+ta3MsdKSkriD3/4Q4wbNy6ze37WrEQhmJcAACAASURBVFnxy1/+MsaOHVule3rkkUfi3nvvzYzr1q0bAwcOjDPPPDPatGmTOT5t2rS44YYb4rXXXsscu++++2K//faLvn37brXOunXr4oILLsh8JhER7dq1iyFDhsSxxx6baQNUVlYWTzzxRNx0002Zf09fffVVDB06NJ5++ulo2rRple4LAAAAANg52Imf56ZMmRJ//OMfM+PBgwfXaJ4JEybE008/nRm3bt06HnjggTjttNOydt+nUqk46qij4sEHH4yuXbtmjq9atarKO9evvPLKzMNrIyL69esXf/zjH7MC/Ij1XyL8/Oc/j1tuuSVrB/tLL70Uf/vb37ZaZ/78+TF69OjMuF69enHjjTfG5ZdfnhXgR0Tss88+MW7cuDj22GOzjo8cOTLWrFmz1Vr33XdfTJw4MTPec8894+GHH44TTjghq49/vXr14sQTT4wHHngg2rZtmzn+xRdfxM0337zVOgAAAADAzkWIn8dKS0tj+PDhsW7duoiI6NOnT/Ts2bPa86xduzauu+66zDiVSsXNN98ce+yxx2avad68eaVw/YUXXogZM2ZssdbEiRPj73//e2a85557xm9/+9stPrD2iCOOiHPPPTfr2O23377FOhERN998c6xatSozvvDCC+Ooo47a7Pl16tSJkSNHZt33woULt/qsgeXLl8cdd9yRGTds2DDuuOOOaNWq1Wav6dixY1x//fVZxx5++OEtPhsAAAAAANj5CPHz2G233RYff/xxRKxvE3PRRRfVaJ4XXnghqw3MiSeeGL169drqdR07dozTTz8969hDDz20xWvuvvvurPFVV10VBQVb7+r005/+NNq3b58ZT58+PaZOnbrZ8xctWhRPPfVUZtylS5dKa92UevXqxfDhw7OObe2eHnvssSgpKcmMzznnnOjQocNWax1wwAHx3//935lxaWlp/PnPf97qdQAAAADAzkOIn6emT58e48aNy4xPP/302GeffWo012OPPZY1PvXUU6t87cknnxypVCoz/tvf/pb5ZUBFixcvjpdeeikz7tGjR+y3335VqlNYWBj9+/fPOvbcc89t9vy//OUvmT76ERE//vGPq/RlQcT6XzRs3Nv/448/jo8++miz52/8+RUWFsaAAQOqVCci4pRTTskaV3yoMAAAAACwcxPi56Hy8vIYPnx4lJeXR0REp06dYujQoTWaa8WKFVkPc+3Ro0d06dKlyte3b98+9t9//8x40aJFMX369E2e+/e//z3Wrl2bGR933HHVWmvFfvWvvPLKZs/dOAwvLCzM2vFeFcccc0zW+OWXX97keZ9++ml88MEHmfGRRx4ZzZo1q3KdAw44INq1a5cZT5s2LZYsWVKttQIAAAAAOy4hfh4aO3ZsvPfeexGxvn/9yJEjo379+jWa66233orS0tLM+LDDDqv2HIccckjWeNKkSZs87/XXX88aV7fWbrvtltVS58MPP4xly5ZVOm/lypVZrXZ69epVrWA9YvvdUyqVioMPPjgzTqfTMXny5GrNAQAAAADsuIT4eeajjz7KeqjrwIED44ADDqjxfBUD45o8GHfffffNGm/4gmFLtXbdddcq9Y2vqEePHpnX6XQ63n///UrnTJ06NWvHf03uaZ999ok6df7zn0dV7qmmtTa+py3VAgAAAAB2PkL8PLJu3boYPnx4ptd7+/bt45JLLtmmOWfMmJE1rhjIV0XFXvyffPJJpXNKSkpi/vz5m72mprU2PNh3Y7m4p8aNG0fnzp0z4zlz5sSaNWu2WKtJkyax++67V7tWxRB/U58fAAAAALBzEuLnkT/84Q/x9ttvZ8ZXX311NGrUaJvm3DgwbtKkSRQXF1d7jhYtWmS185kzZ06lcyqG7Rs/OLY6Nu4fHxExd+7cr61W27ZtM6/T6XTMmzcv6/10Oh0zZ87MjNu3b5/1kN+a1InY9D0BAAAAADsnIX6emDVrVtx0002Z8fHHHx/f+c53tmnOisF0xTC5Olq1apV5vXjx4qx2NhGVg+ma1mrdunXWeMGCBZXOqVirTZs2X0utBQsWZH4VEVHze2rRokXUq1dvs3UAAAAAgJ2XED8PpNPpuOKKKzLtXFq1ahXDhg3b5nmXLl2a9VDbiqF1dWx87bp162L58uVZ71cMpnMVrJeUlFQ6Z+NaDRo0iF122SUntb788svN1tnU+VVVp06daNmyZWa8qXsCAAAAAHZOBbW9ALbugQceiDfeeCMzvvLKK6NJkybbPO+yZcuyxtsyZ8OGDbPGy5cvz2rNU7FWUVFRTuqsWLGi0jkbh+01rbOpWhW/mPi6Pr9Vq1bFunXrsh6smw/Ky8tr1E6oujb+1QKwY9j4V00AAACQBEnKoIT4CTd37twYM2ZMZtyvX7/47ne/m5O5K4bSG/e1r66K1268wz+XtbZWJyI72M+He6p4bTqdjrKysm2arza89957X3uNgoKC6Nmz59deB9i+pk+fHuXl5bW9DAAAAMjYf//9a3sJGfm11XcnNGLEiFi5cmVEROyyyy5xxRVX5GzuijsfCwsLazxXxcC5YhhTsVauQvxNhT4b18qHe9rUtXalAgAAAAARQvxE+/Of/xyvvvpqZjxixIho3rx5zuav+PDZbQm8CwoKtjiuGIDX9OcoW6tTsda2/Oxla7Uqfn65rJWkn+sAAAAAALVHiJ9QCxYsiGuvvTYzPvLII6Nfv345rVExKN5Ua5qq2vDQ3Q0aN268xVo13WlesU6jRo0qnbNxrW3Z0f7VV19tsVau7iki+77q1q2bd610AAAAAICvh574CXXVVVdlHtDatGnTuOqqq3Jeo2IovS0hfsVrKz4UtmKoXzEgr6qK11WsE7H+vjasZ1vuaWshfsVxTe8pInudm7qnfNCtWze/IABqpHv37rW9BAAAAEgsIX4CPfvsszFhwoTM+LLLLotWrVrlvE7FsHhbQuiKO+Qrzp2rWlsL1jccKykp2aY6EdvvnirWytcQv6CgQIgP1Ij/7wAAAIDN004nYZYsWRJXX311Zvyd73wnTjjhhK+lVsXd8UuWLKnxXIsXL868btasWaX++hXD9prW2rhORETLli0rnbNxrS+//DLWrVtXo1oV11ixVq7uKSL7vnbdddcazwMAAAAA7FjsxE+YMWPGZIXBr732Wuy11141nm/YsGExbNiwzLh9+/bxwgsvRETELrvsEg0bNozVq1dHRMS8efNqXGf+/PmZ1506dar0frt27bLGNa1V8bpN1Wrbtm189NFHEbG+T/3ChQujdevW21QrlUpVqpWre1q+fHmsXLkyM97UPQEAAAAAOyc78RPms88+2261UqlUdOzYMTOeN29epNPpas+zcuXKWLZsWWa8qRC64rGaBt4bf1lQ1Vpz586tUa2N19imTZto0KBB1vstW7aMJk2a5LROhBAfAAAAAPgPIf5ObuPAuLS0ND799NNqz/Hee+9ljXffffct1omI+OCDD6pdJyJi+vTpW63VuXPnba5VVlaW2c2/uToREd/4xjcyrz///PPMrxqqoyr3BAAAAADsnLTTSZjLLrssa1d7db366qtx9913Z8Znnnlm9OnTJzOuX79+1vndu3eP559/PjOeNGlSpRB8ayZPnpw1Puiggyqd06hRo+jUqVPmS4Jp06ZFaWlppd75WzNlypTM606dOm2yTU63bt2yxpMmTYqTTz65WnXee++9rAfVbuqeItZ/ftOmTYuIiPLy8nj77bfjkEMOqVatje9pS7UAAAAAgJ2PED9h9tlnn226vmK7mS5dusS3v/3tzZ5/6KGHxo033pgZv/HGG3H88cdXq+a///3vzOvi4uLo1avXZmttCPHLyspi0qRJ1Qq8Fy5cGJ988klmfNhhh23yvJ49e0azZs3iyy+/jIiIN998M9LpdKRSqSrX+te//pU1Pvzwwzd53qGHHhqPPPJIZvzGG29UO8R/4403Mq+7detWo/79AAAAAMCOSTudnVz37t2jZcuWmfH48eNjxYoVVb5+wYIF8frrr2fGffr0iTp1Nv0/q0MPPTRr/Pjjj1drrU888URWz/7Nhfh169bN+uJizpw5WV80VMWTTz6Zed26devo2rXrJs/79re/HQUF//kurOIat2bq1Knx8ccfZ8abuycAAAAAYOckxN/JpVKp+MEPfpAZr1q1qlrh+sMPPxxr167NjE866aTNnnvIIYfELrvskhk/99xzsXjx4irVKSsri0cffTQz7tix4xZ3vPft2zdrfP/991epTsT6XxZs3A//xBNP3Oy5RUVFWV9OzJkzJ1588cUq13rggQcyr+vWrVvtX0EAAAAAADs2IT5x+umnZ+0mv/nm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SZPYfffdY88994zCwsIcrQ4AAAAAAHJjpwzxAQAAAAAgH+R1T3wAAAAAANiRCfEBAAAAACChhPgAAAAAAJBQQnwAAAAAAEionSbET6fTtb0EAAAAAAColoLaXkCuzZs3L15//fWYNGlSTJ8+PZYsWRJffvllfPXVV9G4ceMoLi6O1q1bx/777x8HH3xwHHjggVFYWFjbywYAAAAAgEp2mBB/8uTJcc8998QLL7wQ69ati4jKu+9XrFgRK1asiDlz5sSkSZPirrvuihYtWsTpp58eAwYMiEaNGtXG0gEAAAAAYJPyvp1OaWlpXH311fHjH/84JkyYEGvXrs2E96lUapN/EesD/nQ6HYsWLYrrr78+fvCDH8TEiRNr81YAAAAAACBLXof4X375ZZx88snxwAMPZEL5DUH9hvHm/iIi69wFCxbEaaedFvfdd18t3xUAAAAAAKyXt+10SktLY8iQIfHee+9FRGTtsG/evHkcfvjh0aNHj9hjjz2iSZMm0bhx41i1alUsX748Zs6cGVOnTo1//OMfsWjRosy15eXlMXr06GjatGn86Ec/qrV7AwAAAACAiDwO8ceMGRMTJ07MCu/btGkTl156aXz/+9+PevXqbfbaAw88ME466aQoLy+P559/Pq677rqYP39+Zlf+iBEjonPnztGzZ8/tdTsAAAAAAFBJXrbTmTNnTjzwwAOZ0D0i4vDDD4+nn346+vXrt8UAf2MFBQXRr1+/ePrpp+Owww7LtOMpKyuLkSNHfp23AAAAAAAAW5WXIf64ceOirKwsIta30TnwwAPjlltuiaKiohrNV1RUFLfccksccMABmS8F3nnnnZgwYULO1gwAAAAAANWVlyH+Sy+9lNmFX1BQECNHjqzy7vvNKSwsjGuuuSYKCgoyLXoeffTRXCwXAAAAAABqJO9C/E8++STmzp0bEet34ffr1y922223nMzdqVOnOProoyOdTkc6nY5///vfmR3/AAAAAACwveVliB8RmbY3hx12WE7nP/zwwzOv16xZE2+//XZO5wcAAAAAgKrKuxB/yZIlWeO99947p/NvmG9DS50FCxbkdH4AAAAAAKiqvAvxS0pKssbNmzfP6fwtWrTIGi9evDin8wMAAAAAQFXlXYjfoEGD7Vpv9erV27UeAAAAAABskHchfsWd97neKV+xXU9xcXFO5wcAAAAAgKrK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1pTZa1cN8XNycoT4QIP4dwcAwNfHdy+AXY898ZugCy+8MI444ohUvW7dunjiiScqzcsM9detW9fgnmvXrk29bteuXaX99TPD9ob2qtgnIqJz586V5lTs9fnnn0dZWVmDemWeY2avxlpTRPq6unTp0uD3AQAAAACaFiF+E3XxxRen1TNmzKg0p0OHDml3fa9cubLB/QoKClKv+/TpU+nv3bt3T6sb2ivzuKp6devWLfW6pKQkVq9evcO9srKyKvVqrDVt2rQpCgsLU3VVawIAAAAAdk9C/CZqyJAh0a5du1Q9f/78SnOysrKid+/eqXrlypVRXl5e716FhYWxcePGVF1VCJ051tDAu+LFgrr2WrFiRYN6VTzHrl27RsuWLdP+3rlz52jbtm2j9okQ4gMAAAAA/0eI30Q1a9Ysunbtmqq3bNlS5Z7tFQPj4uLi+OSTT+rda8GCBWl1v379auwTEbFo0aJ694mofDGiql59+/bd4V4lJSXx0Ucf1dgnImKvvfZKvf7000/jiy++qHevuqwJAAAAANg9CfGbsIp3jmdnZ1f58JrMp9K/88479e4ze/bstPqQQw6pNKd169ZpQf68efOiuLi43r3mzJmTet2nT5/Iz8+vNGfgwIFpdUPWtGDBgrSLHlWtKSL98ystLY1333233r0qrqmmXgAAAADA7keI34StWbMm9bpjx47RrFnl/7i/+c1vptVvvfVWvfv8/e9/T71u3759DB06tMp5FXuVlJTUO1xfvXp1LF68OFVXfHhvRZlbCf3jH/+o9zZBf/vb39Lqb33rW1XOa4zPr+IxAwcOrPLCBAAAAACwexLiN1GffvppLF++PFXvt99+Vc7bf//9o3Pnzql6+vTpsXnz5jr3WbVqVbzxxhupetSoUVVeLIioHHg/9dRTde4TETFt2rS0ML66ED87OzsOO+ywVL18+fK0Cw118ec//zn1Oj8/PwYMGFDlvMMOOyxycnKqPcfazJ07Nz7++ONUXd2aAAAAAIDdkxC/iXrsscfS6qOOOqrKeVlZWXHsscem6i1bttQrXJ8yZUps27YtVZ9yyinVzh05cmR06NAhVT///POxdu3aOvUpKSmJJ598MlX37t07Ro4cWe380aNHp9WPPPJInfpEbP9lQcX98MeNG1ft3Ly8vLSLE8uXL49XXnmlzr0effTR1Ovs7Ow46aST6nwsAAAAAND0CfET7H/+53/qvQ1MRMSsWbPid7/7Xapu27ZtpVC7orPPPjvtbvJJkybFqlWrau2zdOnSuP/++1P1QQcdFIceemi181u0aBFnnnlmqi4qKopf/OIXtfaJiLj//vvTHrp7wQUXRHZ2drXzv/Od76TtwT99+vR49dVXa+1TUlISP//5z1N1mzZt0s65Kuedd15afdNNN9XpAbdvv/12TJs2LVUfd9xx0bt371qPAwAAAAB2H0L8BLvlllvivPPOS9tupTYzZsyICy64IEpKSlJjl156aXTs2LHaY3r27BnHH398qt64cWNMnDgxPv/882qPWbNmTUyYMCGKiopSY5dcckmt53f66adHXl5eqn7uuefi3nvvrfGYGTNmxOTJk1N1jx49YsyYMTUe06xZszj//PPTxq6++upYuHBhtceUlpbGNddcEx9++GFqbPz48Wn761dlxIgRMWLEiFS9bNmyuOKKK9IejJtpyZIl8ZOf/CR1kSYnJycuuuiiGvsAAAAAALsfIX7Cvf7663H88cfHj370o3juuedi3bp1leZs2bIlZs6cGRdccEFccsklaXvaH3vssTF+/Pha+1x++eVpYfXs2bPjlFNOieeeey5tu5zS0tJ4+umn49RTT00LxMeOHRujRo2qtU+7du3i8ssvTxu77bbb4sc//nFaeB6x/UG2t9xyS0ycODGKi4sjYns4f9NNN0Vubm6tvcaOHRvDhg1L1WvWrInTTz89HnzwwUr7/r/99tvxwx/+MJ5++unUWP/+/eNHP/pRrX0iIq677rpo3rx5qp4xY0acfvrp8dprr6XN27p1azzyyCNx2mmnxYoVK1LjF198cey999516gUAAAAA7D6yyhuyXwtfi6OOOirt4bQR2/ew79y5c3Ts2DFyc3Nj48aNsXz58igtLa10/LHHHhu33nprWrhck9dffz0uvPDCSu/VqlWr6NmzZ5SXl8enn36advd9RMTw4cPjoYceihYtWtR5bVdeeWXaVjJf6ty5c+Tn58f69eujoKAgysrK0v5+3XXXxRlnnFHnPgUFBTFu3LhK2wM1b948unXrFnl5ebF8+fJKvzro3LlzPPbYY/Xa3ubJJ5+Ma6+9ttJ4Xl5e9OzZM4qKimL58uVpv5KI2L5//x133BFZWVl17rUzFRcXx3vvvVdpfPDgwXW6uNLYLrzh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pvp90Vm3bl2cdtpplQL83Nzc6Nu3b+yzzz6VQu5169bFueeeG3PmzKlXLwAAAABg92A7nYR76KGHYtu2ban6gAMOiO9///tx5JFHRufOndPmfvbZZ/HHP/4xHnzwwSgsLEyNXXrppTFlypRo1qzmazbXXnttzJ49O1W3b98+Lr744jjllFNS4X15eXlMnz49br/99vjkk08iYvt+9ldeeWUMHDiwTlvrrFq1Kn70ox/FF198kRobNmxYXHbZZfEv//IvqbENGzbEb3/727j//vtT29/885//jKuuuiruvffeWvtERDzxxBPxu9/9LlVnZ2fH6aefHueee2507do1NT5v3ry4/fbb469//Wtq7Pe//30cdNBBMXr06Fr7lJWVxYQJE1KfSURE9+7d45JLLokxY8aktgEqKSmJadOmxa9+9atYvXp1RERs3bo1Jk6cGM8++2zssccedVoXAAAAALB7cCf+LqJ79+5x9913x9SpU2PcuHGVAvyI7XfmX3rppfHHP/4xunTpkhqfO3du/OUvf6nx/WfMmBHPPvts2ns9+uij8cMf/jDt7vusrKw45phj4rHHHosBAwakxrds2VLnO9evv/761MNrIyKOP/74ePjhh9MC/IjtFxH+9V//Ne666660O9hnzpwZL774Yq19CgoK4uabb07VzZs3jzvuuCOuvfbatAA/YvvFkfvvvz/GjBmTNn7jjTdGUVFRrb1+//vfx9tvv52q991335gyZUqcfPLJafv4N2/ePMaNGxePPvpodOvWLTX+2WefxaRJk2rtAwAAAADsXoT4u4Dvfve78cwzz8TRRx9dp/n9+/eP2267LW3s4Ycfrnb+tm3b4pZbbknVWVlZMWnSpOjfv3+1x3Ts2LFSuP7yyy/HwoULazy3t99+O1566aVUve+++8Yvf/nLGh9Ye+SRR8bFF1+cNjZ58uQa+0Rs34poy5Ytqfqyyy6LY445ptr5zZo1ixtvvDFt3atXr44nnniixj6bNm2Ke+65J1W3atUq7rnnnthzzz2rPaZ3795x6623po1NmTKl2of7AgAAAAC7JyF+wp177rkxadKkyMvLq9dxhx56aNrDUt97773YuHFjlXNffvnltG1gxo0bF0OHDq21R+/evePss89OG3v88cdrPOaBBx5Iq2+44YbIyal9V6fzzjsvevTokarnz58fc+fOrXb+mjVr4umnn07Ve++9d6VzrUrz5s3jmmuuSRurbU1Tp06NDRs2pOqLLrooevbsWWuvESNGxPe+971UXVxcHH/6059qPQ4AAAAA2H0I8RPu0ksvjaysrAYde/jhh6del5WVxaJFi6qcN3Xq1LT6rLPOqnOPU089Ne38XnzxxSgrK6ty7tq1a2PmzJmpevDgwXHQQQfVqU9ubm6MHTs2bez555+vdv4zzzyT2kc/IuIHP/hBnS4WRESMGjUqbW//jz/+OD766KNq51f8/HJzc+O0006rU5+IiO9///tpdeZDhQEAAACA3ZsQvwnr06dPWl1xH/ovbd68Oe1hroMHD4699967zj169OgRw4cPT9Vr1qyJ+fPnVzn3pZdeSntI74knnljnPhFRab/61157rdq5FcPw3NzctDve6+KEE05Iq1999dUq533yySdpF0eOOuqoaNeuXZ37jBgxIrp3756q582bF+vWravXuQIAAAAATZcQvwnL3IJn69atlebMmjUriouLU/URRxxR7z4jR45Mq995550q573xxhtpdX179erVK21LnQ8//LDKLYIKCwvTttoZOnRovYL1iK9vTVlZWXHooYem6vLy8pg9e3a93gMAAAAAaLqE+E1YxYe6RkTsscceleZkBsZDhgypd58DDzwwrV6wYEGV8yr26tKlS532jc80ePDg1Ovy8vL44IMPKs2ZO3du2h3/DVnTAQccEM2a/d//POqypob2qrimmnoBAAAAALsfIX4TtnTp0rS6b9++leYsXLgwrc4M5OvigAMOSKsXL15cac6GDRuioKCg2mMa2uvjjz+uNKcx1tSmTZu0z2v58uVRVFRUY6+2bdtGv3796t0rM8Sv6vMDAAAAAHZPQvwmbM6cOanXHTp0SHtY65cqBsZt27aN9u3b17tPp06dokWLFql6+fLlleZkhu1VnUtdVNw/PiJixYoVX1mvbt26pV6Xl5fHypUr0/5eXl4eS5YsSdU9evRo0EOIK/aJqHpNAAAAAMDuSYjfRBUWFsbrr7+eqr/97W9XmpMZTGeGyfWx5557pl6vXbs2bTubiMrBdEN75efnp9WrVq2qNCezV9euXb+SXqtWrYqSkpJU3dA1derUKZo3b15tHwAAAABg9yXEb6KmTp0ahYWFqfrEE0+sNGf9+vVpD7XNDK3ro+KxZWVlsWnTprS/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tXJlqXYjCANQ0Ozfv1/r16+XJHXv3l0BAQFurgiAMyIjI7VhwwaHx9/ZElC6fWfynTubHVG/fn01aNDA4fG22rRpkyQpICBA9evXz/P1AFsQ4gOAiXXo0MGp8Z9++qni4+MVERGhzp07u6iqvBMeHq66des6NDYhIcF4kGVeuXjxovG6VKlSdo3dsmWL4uPjJUlt27Z1aV1AYTZz5kx9+umnslgsqlatmr788kuHA/zLly/rX//6l9LT01WxYkWNGjXKxdXahyAMgLutW7fO7sBt8eLFxmtfX1999913TtVQtmxZt98VBRRmJ06c0KRJk1wy15o1a7RmzRqHx7/xxhtOh/h//PGHKlasmO376enpxsVXDRo0UHJycqYtbu++0C4hIcGmdQMDAx2oFvh/hPgAAKcNHTpUffr0yXR8/Pjx2rZtm5o3b66hQ4davZdVGNW4cWOHHyB58uTJPA/xz58/b7y2N8S/82W1bNmyatSokUvrAgqj5ORkvfvuu8ZdPvXr19cXX3yhYsWKOTRfamqqhgwZopiYGPn6+mry5Mku/csWQRiAgmjGjBk6evSow+MnT57sdA2PP/44n10A7NKyZUv5+vqqe/fumS5me/vtt5Wenq7nn38+y7H79u1TbGysJGnbtm05/mhw7do1m39UOHTokLy9iWHhOP7tAQA47b777tN9992X6fidACw4OFhVq1bN77Jc7uzZs5Ju/wARFBRk87jExETjao62bduypzXgpJiYGA0ZMkS7d++WdHvf+s8++0z+/v4Oz/nRRx/pt99+k3T7Yd61a9d2Sa13EIQBAICC7qefflK5cuXsGpOQkGAE3RMmTHDobvPatWtnuho+O/Hx8Tp16pQk6ebNm5neT01N1bBhwxQfH6+XXnop0/s//vij3fUB+YEQHwAAG0VFRUlSlj9Y5GTTpk3GF8h27dq5vC6gMNmwYYNGjx5tPMz6xRdf1OjRo526smnp0qX65ptvJElt2rTJ8i90AOBKN2/eVIsWLSRJw4YNU5s2bdxcUc5eeOEFjR07Nsv3nn76aUVFRalTp04aN26cTfONHTtW8+fPV0REhPEckoz69++vn376yeGaARROf/31l/G6QoUKmd6vWLGizpw5ozFjxsjPz08dO3Y03ouLi9PKlSsl3d5KJ7staZctW6bdu3crICBAo0ePtqkuLy8ve04D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sNN122rbtm2KiYmRJP3973/P9H5QUJAGDhyoMWPGaNeuXVq9erVat26d67wzZ86UJIWEhGQ5LwAAAAAgfxw7dkydOnWya8yNGzf03HPP5dgnICBA+/fvd6Y0QBIhPgDcEz755BOdOHFCvr6+mjBhgry8vLLsd//99+uNN97QlClTtHTpUjVt2lQtW7Z0au0iRYpo3759Sk9PV0BAgHr27KnevXsrICBAy5cvd2puM1i0aJEkKTw8XI899liWfV588UV9//33Onz4sCZMmKAnnngi050Qdzt58qTWrl0rSXrppZdUpEgR1xcOAAAAAC70zDPPODV+xIgRGjFihIuqAQoXQnwAKODWrl2rr776SpL01ltv6f7778+xf+/evbV9+3bt2rVLI0aMUNWqVfXAAw84vL6np6f+8Y9/6NKlS+rTp49CQ0PtnmPPnj2aPHmySpcurSlTptj8EKK8dvLkSWMrnU6dOmW7p7+np6fef/99vfjii4qJidG4ceOMOweyMnHiRKWlpSkkJES9evXKk9oBAAAAALapXbu2/vzzT5v6jhw5UkuWLFFISIixRSqQ1wjxAaAAO3LkiN555x1JUosWLfTKK6/kOsbLy0tTpkzR3//+d8XExKh///5avHixihcv7nAdzgbRUVFR2rdvn4oVK2aaAF+SPv/8c1ksFgUGBuqll17KsW/dunX18ssv6z//+Y9WrFihJ598Uq1atcrUb/369frll18kSX379nXJvv0AHGOmzxsAKOiWLFmiJUuWuLsMAC5WtWpVvfXWWw6PT05O1rRp0yTd/jtrrVq1HJ6rQYMGDo8FCjpCfAAooE6dOqVXX31ViYmJqlq1ql3725csWVJTp07VK6+8orNnz6pv376aO3euSx90a49Lly5JkkqUKJFr39jYWEVHR+far1ixYvL393e4poMHDxpb3nTr1k0hISG5jnnzzTe1detWnThxQqNGjVKNGjVUqVIl4/0rV67o/ffflyQ9+OCD6tGjh8P1AXDcrVu3JEl+fn5uriRrBGEAAMAsKlSooL59+zo8PiEhwQjxn3zySXXo0MFVpQGFCiE+ABRAkZGR6tmzp65cuaL77rtPc+bMUVBQkF1zNGjQQJMmTdKQIUN04MAB9e/fX7NmzXJLqPXXX39JksqVK5dr3zfffNOmOSdNmmTXw3PvZrFY9MEHH8hisRj7/NuiSJEimjJlijp37qz4+Hj169dPixcvVrFixZSamqrBgwcrNjZWXl5eGjt2rHx8fByqD4Djrly5orS0NEly6g4kAIC1Fi1aaPDgwTb1nTFjhlauXJnHFQEAcO8gxAeAAubo0aPq3bu3YmJiFBwcrNmzZ6ts2bIOzdWyZUvFxMToww8/1M6dO9WnTx/NmDEj36/IP3jwoCTlup9/flm4cKF+//13SdKAAQNsukPgjmrVqumDDz7QsGHDdPr0afXr109z5szRuHHjtHv3bknSwIEDVb9+/TypHUDOjhw5YryuXLmyGyvJHkEYgIIoODhYVatWtalv0aJF87gaAADuLYT4AFCA/Prrrxo0aJDi4uIUEhKiOXPmqHr16k7N2b17d6WlpWnChAnatWuXevbsqS+++CLfrlCNjY3V8ePHJcmmLWtmzZqlRo0a5drP0TsKIiMjNWnSJElSlSpV9PLLL9s9R7t27XTixAnNmjVL+/fvV4sWLXT58mVJ0lNPPaV+/fo5VBsA5/33v/+VdPvOn9KlS7u3mGwQhAEAAAC4m6e7CwAA5M5isWjWrFnq3bu34uLiFBoaqq+//lq1a9d2yfyvvPKKRowYIUn63//+p86dO+vEiRMumTs3P//8sywWiyRpwYIFSkpKyrF/kSJFFBgYmOv/vL3t/506NTVVb7/9thITEyVJ7777rsNb3gwdOlStW7eWJCPAj4iI0CeffCJPT/7zC7hDXFycfvjhB0lS8+bN3VwNAAAAANiGFAEATO7KlSvq37+/Jk+erLS0NFWtWlULFy50+gr8jF555RVNmjRJPj4+ioyMVJcuXbRp0yaXrpGV1atXG68vXrxoPPTIHT777DPt3btX0u2H2TZp0sThuZYtW6atW7daHTt9+rQ2b97sVI0ArBUvXlwRERGqWbNmrn0/++wz3bhxQx4eHurSpYvNawQFBSksLMyurbUAAAAAwFUI8QHAxNatW6c2bdoYwe8TTzyhRYsWqUKFCnmyXrt27TR79mwFBwcrISFBAwYM0Icffqjk5OQ8We/kyZP69ddfJcnYOuKrr77Sjh078mS9nGzYsEGzZ882ahk2bJhD80RGRqpXr1565513dOPGDXl6eqpFixby8fFRQkKChg4dqtGjRys+Pt6V5QOF1lNPPaVly5Zp/vz5OfZbs2aN5s2bJ0lq27at8Zlz69Ytde3aVaNGjdLGjRuz/P9mz5499csvv2jmzJmuPwEAAAAAyAUhPgCY0Llz5/TGG29o8ODBio2NlZeXlwYOHKgvvvhCwcHBebp2kyZNtGTJEj344IOSpHnz5qlTp046dOiQy9eaNWuWLBaLfHx89NVXX+mJJ55Qenq6Bg4cqD/++MPl62Xn6NGjevvtt2WxWOTn56d///vfKlKkiF1zREdHa8yYMWrVqpW2b98uSQoPD9dXX32lqVOnasGCBQoPD5ckLV68WM8991y+3OkAQPrhhx+MH+ZKlSql4cOHG+/NmTNH+/bt0/fff6833nhDjzzyiF5++WXNmzdPFy9edFfJAAAAAGDgwbYAYDKzZ8/WtGnTdOvWLUm3g+CPP/5YDRs2zLcaKlWqpEWLFmn06NFatWqV/vzzT3Xp0kU9e/bUoEGD5Ovr6/Qahw8f1o8//ihJ6tixo0qXLq1x48apU6dOunTpknr06KF3331X7du3d3qtnERHR6tv377GPvgffPCBTdty3HHmzBl98803Wrx4sXHHgq+vr3r06KEBAwYoICBAklSnTh2tWLFC48aN04oVK3Tx4kUNGDBAzZo107/+9S898MADrj85oJC7du2aPv74Yy1ZskSSFBAQoM8//1yhoaFGn4oVK6ply5basWOHrl+/rpSUFO3cuVM7d+7UuHHj1KBBA7Vs2VItWrRQWFiYu04FANxq0aJFWrRoUY59lixZYnze2urQoUOqVq2aM6UBAFAoEOIDgMlUrlxZKSkp8vT0VLdu3fTmm28qKCgo3+sICAjQ5MmT9fjjj+vDDz9UfHy8oqKi7Hpg7LVr17I8npKSolGjRik9PV3BwcEaNGiQJCksLExz585Vt27ddPXqVQ0fPlxff/21Hn/8cZecU0bXr19Xnz59jKtte/XqpXbt2uU6LikpSevWrdPSpUv122+/Gce9vLzUtm1bvfHGGypfvnymcUWLFtVHH32ktm3b6t1331VUVJS2bNmibdu2qUOHDho4cCAhIeAC586d0+LFizV//nxje5wSJUro888/V7169az6tmnTRm3atFF6eroOHDigrVu3asOGDTp27JgsFov27t2rvXv3auLEiXrsscfUsWNHPf300w7/mEkQBhQukZGRSk9Pz3T85s2bxuvY2FidOXMm17liYmKM1xcuXDAuFHBGeHi4Xd/tAOBek5SU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2YlfqFChdA92tVaVKlVyvAb8/fv3s9X/6NGj2rx5sySpYsWKatKkSZo2SUlJOnnypNauXav169fr1q1bxnsuLi5q1aqVBg8erGLFilk9f7t27dSuXTudOnVK33zzjdatW6f79+8rIiJCQ4cO1dy5c+Xv76+33npLTk5Otn9QAACQLkJ8AAAA4BG2b98+rVq1yub+L7/8crohfnx8vH744QdJUvny5TV06FD16dNHN27c0A8//KB27dqlap/TAX58fLxmzpypixcvaufOnVq+fHmqORMTE61ax5NPPqn69eunqrMfFRWV6tBUSbp3754dVp9a0aJF1bJlS7uP+6Dt27c/EiG+JD3zzDPq16+fpk2bpuvXr2vevHkaMmRIhu1TduI/8cQTubXEh27jxo3GLnw/P79UNy/OnTunRYsWadeuXameMJEkV1dX+fj4qE+fPipXrly211GtWjVNnDhRgwYN0jfffKPFixcrNjZWFy9e1JAhQ/TNN99o6dKlD7WkFgAA/0SE+AAAAADS2LZtm6KioiRJbdq00WuvvabSpUvrypUrmjdvnlq1aqU8efLk2nrWrFmjixcvSkp+KuDvYX1K2J4/f36b50gpgXP//n0FBwdrw4YN2rVrl83j2ct3332nuLg4lShRQj4+Pg97OTnigw8+0KpVq3T+/HktXrxYHTp0yLA0U8pOfHuVwAkPD1dkZKRdxsqI2WzOVv+AgABFRkbqzz//VIsWLVK998QTT2jbtm2KiYkxXitdurTatGmjNm3a5EhppyeffFL+/v7q3LmzgoKCtGjRIpnNZr322msE+AAA5ABCfAAAADy2VqxYoSNHjqR6LWWXryStXLlS+/fvt3i8B8tX/PjjjwoNDbVqPSm7yX/++ed0Q8Xx48enCaknTZqkSZMmWTVPVuLj4/Xll19KkvLly6c2bdrI2dlZPXv21Lhx44wgf8CAAXadNyMmk0n//ve/JSXvtPfz80v1flJSkhHi21rL3mw26+DBg9q4caN++uknxcXFZW/RdjRt2jTFxcWpfv36/9gQ383NTaNGjVK3bt1kNps1b948TZ48Od22N2/elGS/EP+jjz6yyzg5yd3d3TgA+O/lap588kl98sknmjt3rpo2bapmzZqpTp06dik1lJXChQtr8ODB8vX11apVq9SzZ88cnxMAgMcRIT4AAAAeWyEhIVq/fn2m79takuT48eM6fvy4TX3PnDmjM2fOpHl9xIgR2dppbqkVK1bo/PnzkpJ3SKeULWnbtq2+/vprXbhwQUFBQWrZsqWeffbZHF/PN998o6tXr0qS3n77bT3zzDOp3o+OjjZ2OltT79tkMmnv3r366aefFBwcrD///DPV+3ny5JGXl5cOHTqUzU9gO5PJZNxQyO5hu46uYcOGatSokfbs2aN169bJz89PZcqUSdMuOjpaUnJZoseJq6trhrvq27Ztq7Zt21o8lslkkpubm3FDoGjRomrfvr0kqUKFClavrWLFigoICLC6HwAAsAwhPgAAAADD5cuXNWPGDEnJB4d27drVeM/V1VXDhw9Xr169ZDabNXjwYK1atUru7u45tp7o6GjNnTtXUvJu7b/vwpeU6qmFkiVLZjpebGys9uzZo+DgYO3cuTPNjnsPDw+9+uqrevPNN+Xt7a1bt27p9ddft8Mnsc2VK1eM69KlSz+0deQWf39/7dmzR4mJiTpx4kSaEP/27dsymUySrLth83dt2rRRgwYNsrVWW9mzvI3ZbLa6fE10dLR69+6tfPnyaerUqSpevLjKli2rwMBAi/onJSVpw4YNev3115UvXz5blg0AAKxEiA8AAIDH1pQpUzRlypRUr4WFhcnX11eS9Omnn6p169a5tp5q1aopISFBPXr00CeffJJr86ZISkrSiBEjdPv2bUnSJ598kqZkibe3t3x9ffXjjz8qIiJCkydP1rhx43JsTTNmzDBKHHXs2DHdOumnT582rtPbuX3+/Hnt3LlTP//8s44ePar4+PhU7xcsWFCNGzdWs2bN1LhxY3l4eBjvPVgi6WFIOQdAUponEP6JvLy81KFDB/n6+qpWrVpp3k8ppSNJTz31lM3zlC1bNsOa+1k5e/as1q5dq759+9p0Ays8PFxJSUlpyuLYolu3bvLw8FCXLl2MmxIJCQmqW7euJOndd9/V8OHDjfbx8fHq1q2bwsLCJEm+vr6aPXu2XnrpJYvmO336tEaPHq3Q0FDVq1dPCxYsyNWzMQAAeFwR4gMAAACQJH3xxRc6ePCgJKl27dpq165duu1GjhypQ4cO6erVq/r2229VrVq1DNtmx4kTJ7R69WpJyeU+/P3902138uRJ47pixYq6deuWDh48qP3792vfvn26fPlymj5PPfWUmjRpoqZNm6pevXo5+jRBdhw9etS4tjRofdSNHz8+w/fsEeKHh4frypUratKkSbrvL1myRH/++afKli1r3NBLERISovfff1+JiYm6du2apk6davG8t27d0pQpU7R27Vr17NlTgwYNsmn9KX755RcdPnxYUvITJikhflJSknH47927d1P1cXV11eeff66+ffvq/Pnzunnzpj788ENNmTLFovMW3Nzc9Mcff0iSDh48qAEDBmjOnDlpDpoGAAD2lfMn3QAAAABweFu3btX8+fMlJZfRmTJlSoY7hQsVKqQ5c+Yob968kqTAwEDt27fPrutJSkrSxIkTjcN+Bw0apIIFC6bb9sGa9b1791aDBg00YMAArVy5MlWAX7lyZfXq1UsrVqzQnj17FBgYqFdffdVhA3xJCg4OlpRcSqdSpUoPeTUP3/Xr143rrEonZeTTTz9V79691bVrV+Pn60FLly7VnDlz9OOPP6Z5r1atWnrnnXckJR9enfI7Ywk3NzedPHlSSUlJ+s9//pPpeRyWmDdvnnHdrVs3i/tVqlRJq1atkre3t6TkkjxDhgzRDz/8kGXfChUqaNGiRcYTOsHBwRkeQAwAAOyHEB8AAAB4zB0+fFhDhw6VJDk5OWnatGlZlhp54YUXjPDObDbLz89PR44csduali9fbhwqXL16db377rvptouMjDTK6dStW1fXrl0zgtk8efKoUaNGGjVqlLZv367169dr0KBB8vLyskspk5y2e/du47P5+vo+EmvOaVFRUca1LSH+tm3bjKdNKlSoIGdn6/9JPHr0aFWsWFGSNGfOHOMQ6KwUKFBA8+bNMwLwMWPGWNz37/bu3au9e/dKksqVK6emTZta1T9//vz697//bRxmm5iYqJEjRxo3jf7u5MmTxuHRlStXVlBQkFEPf9myZVqyZIlNnwMAAFiGcjoAAADAY+zYsWP6+OOPde/ePUlSv3799Nprr1nUt2XLloqMjNS0adN09+5d9erVS3PnzlX9+vWztaZLly5p+vTpkpJ3LwcGBmYYYK9bt864bt++vYoWLart27erUaNGqlu3rvG0wKMmKipKY8aMkZQc/nbu3Pmhrmf79u3pliVKz4OH8drb1atXJUnu7u4qXry4VX1jYmKMUj0FChTIsDxTVjw8PDRt2jS1a9dOZrNZkyZN0sKFC9O0O3XqlKpUqZLqRkHZsmU1Y8YMde/eXXfu3NGA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ZPY71rt3b61evVqFCxdWqVKlMmx37do1o5RQgQIFNHv2bOXJkyfD9nXr1tXWrVt19uxZ/etf/1LVqlVVuHBheXh4yNXV1bhRISXfIEhMTFRiYqLMZrPMZrPu3bunmJgYhYSEGDczOnfurHz58qU7X7169bR06VKbf0cAAEDmCPEBAACAXJAS2me221ZKDnLfeOMNu849a9YsLVy40Pi6Vq1amjlzZqahYXaUL19eK1eu1NixY7V27VpJ0ooVKxQaGqoff/wx3XrZ3bp105EjR5QnTx59+umnmY6/YMECY0f20KFDVbx4cZvXWrp0ae3YscM4MDUj77//vkXB98WLF/X9998rKipKkZGRunz5sq5evZrhUxYuLi566aWX1KpVK/3rX//KVl3/IkWKyMfHRz4+PjKbzdq7d682btyoHTt26M6dO7p9+7ZWrFihFStWqEGDBurTp4/q1Klj83z29OSTT2r16tVZtqtSpYrGjBlj8bjOzs4aMGCA3n77bYuf1ujRo4f27dsns9msxYsXa/HixRbP9yAnJyeNHTs2VdmjvytevLg+//xz1a9fP9NDiEuUKKE1a9boq6++0nPPPZflZ+nfv78OHjyoP//8U1euXDGe8rBVrVq15Ofnl2kbAnwAAHKOU9KDRR4BAACAx1x4eLjatm0rSZowYYJ8fX3tNvavv/6qdu3aKb3/C16gQAF5eXlpyJAhqlKlit3mlKS4uDi1adNGly9fVr9+/dStW7dcO3hy8+bNGjdunGJiYjR+/HijfEh6rly5otjY2Cw/v8lk0sSJExUXF6fp06dne41ff/11qhsHrq6uyp8/v0qWLKnnn39ezZs3t2gHt5T8vfb29lZsbGy67zs5OalChQp66aWXVLduXTVq1MiiXffZcefOHW3ZskUrV65USEiI8frgwYPVs2fPDPtdvHjRuKE0btw4iw+D3bx5s6KiolSyZEk1b97c4nW2atVKkZGRMpvNRi13d3d3FS5cWE8//bTq1aunTp06Zbgb3J4OHz6sRYsW6eLFi7p165bi4uJkMpnS/d39u3z58unZZ59Vnz595O3tneNrzci5c+e0YMECnTp1SjExMbp3755MJpPi4+OVkJCQ5rO4uLjI1dVV7u7u8vDwUMGCBVW8eHE1aNBAH374YaY7/wEAQM4ixAcAAAByUVJSkkwmkxFSpgRnD5a3yAnnzp2TJFWsWDFH50nP9evX9d1336lv3752HTchISHHv2+2+Pzzz7V69WqVKFFCpUqVUrly5VS+fHlVqlRJVapUUYECBR7a2k6dOqWFCxfqt99+08qVK9PU3EfmEhISlJCQYNxoiI+PV2JiopycnOTq6mqU3AEAALAnQnwAAAAAeMw46g0QAAAApEWIDwAAAAAAAACAg8qdQpgAAAAAAAAAAMBqhPgAAAAAAAAAADgoQnwAAAAAAAAAABwUIT4AAAAAAAAAAA6KEB8AAAAAAAAAAAdFiA8AAAAAAAAAgIMixAcAAAAAAAAAwEER4gMAAAAAAAAA4KAI8QEAAAAAAAAAcFCE+AAAAAAAAAAAOChCfAAAAAAAAAAAHBQhPgAAAAAAAAAADooQHwAAAAAAAAAAB0WIDwAAAAAAAACAgyLEBwAAAAAAAADAQRHiAwAAAAAAAADgoAjxAQAAAAAAAABwUIT4AAAAAAAAAAA4KEJ8AAAAAAAAAAAcFCE+AAAAAAAAAAAOihAfAAAAAAAAAAAHRYgPAAAAAAAAAICDIsQHAAAAAAAAAMBBEeIDAAAAAAAAAOCgCPEBAAAAAAAAAHBQhPgAAAAAAAAAADgoQnwAAAAAAAAAABwUIT4AAAAAAAAAAA6KEB8AAAAAAAAAAAdFiA8AAAAAAAAAgIMixAcAAAAAAAAAwEER4gMAAAAAAAAA4KAI8QEAAAAAAAAAcFCE+AAAAAAAAAAAOChCfAAAAAAAAAAAHBQhPgAAAAAAAAAADooQHwAAAAAAAAAAB0WIDwAAAAAAAACAg/p/QleBXL6NwOMAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.catplot(attrs[-2], data=df, kind='count')\n", "sns.catplot(attrs[-1], data=df, kind='count')" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 88, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyecharts import Bar, configure\n", "\n", "configure(output_image='pdf')\n", "\n", "bar = Bar(\"我的第一个图表\", \"这里是副标题\")\n", "bar.add(\"服装\", [\"衬衫\", \"羊毛衫\", \"雪纺衫\", \"裤子\", \"高跟鞋\", \"袜子\"], [5, 20, 36, 10, 75, 90], legend_text_size=39)\n", "#bar.show_config()\n", "bar # 将在 jupyter 中显示为 pdf 文件,并不保存为本地 pdf 文件。" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pyecharts\n", "line = pyecharts.Line(\"气温变化折线图\", '2018-4-16', title_pos='center')\n", "line.add(\"服装\", [\"衬衫\", \"羊毛衫\", \"雪纺衫\", \"裤子\", \"高跟鞋\", \"袜子\"], [5, 20, 36, 10, 75, 90], mark_point=['max'], legend_pos='left')\n", "#line.add(\"最低气温\", cities, lows, mark_line=['average'], is_smooth=True)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def cat_count(attr):\n", " counts = df.groupby([attr]).size()\n", " return [counts[x] for x in classes]" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyecharts import Bar, configure\n", "\n", "configure(output_image='pdf')\n", "\n", "bar = Bar('位置', title_text_size=36)\n", "\n", "for i in range(0, 3):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=20)\n", "#bar.show_config()\n", "bar" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('服务', title_text_size=36)\n", "\n", "for i in range(3, 7):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=20)\n", "bar" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('价格', title_text_size=36)\n", "\n", "for i in range(7, 10):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('环境', title_text_size=36)\n", "\n", "for i in range(10, 14):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('菜品', title_text_size=36)\n", "\n", "for i in range(14, 18):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('其他', title_text_size=36)\n", "\n", "for i in range(18, 20):\n", " bar.add(attrs[i], classes, cat_count(attrs[i]), xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyecharts import Bar\n", "\n", "attr = [\"{}月\".format(i) for i in range(1, 8)]\n", "v1 = [0, 100, 200, 300, 400, 220, 250]\n", "v2 = [1000, 800, 600, 500, 450, 400, 300]\n", "bar = Bar(\"瀑布图示例\")\n", "# 利用第一个 add() 图例的颜色为透明,即 'rgba(0,0,0,0)',并且设置 is_stack 标志为 True\n", "bar.add(\"def\", attr, v1, label_color=['red'])\n", "bar.add(\"月份\", attr, v2, label_color=['green'])\n", "bar" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "#python ~/steniment/evaluate.py; python correlation.py \n", "dir = '/home/gezi/data3/v11/submit.1115.2.2.2/7model'\n", "models = np.load(f'{dir}/models.npy')\n", "cm = np.load(f'{dir}/cm.npy')" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "models = [x for x in models if x != 'ensemble']" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "ncm = np.zeros([len(models), len(models)])" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "for i in range(len(models)):\n", " for j in range(len(models)):\n", " if i > 0:\n", " i_ = i + 1\n", " else:\n", " i_ = i\n", " if j > 0:\n", " j_ = j + 1\n", " else:\n", " j_ = j\n", " ncm[i, j] = cm[i_, j_]" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(7, 7)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ncm.shape" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "7" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(models)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['char.nbert_tf.char.transformer.nbert.finetune',\n", " 'word.jieba.ft_tf.word.rnetv2.gru.lm.unkaug',\n", " 'word.sp10w.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug.hidden400',\n", " 'word.sp1w.ft_tf.word.rnet.gru.nolatt.hidden600',\n", " 'word.sp20w.ft_tf.word.rnet.gru.unkaug',\n", " 'word.sp20w.ft_tf.word.rnet.lstm.unkaug',\n", " 'word.jieba.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug.hidden400']" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "models" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "models = [x.replace('word.', '').replace('.nopad','').replace('.bertopt', '').replace('.tf', '').replace('.torch', '').replace('_', '.').replace('char.', '').replace('.word', '').replace('.unkaug', '').replace('lm', 'elmo').replace('.hidden400', '').replace('.hidden600', '').replace('.tf', '').replace('.torch', '').replace('.nolatt','').replace('.ft', '') for x in models]" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "models[0] = 'char.bert'\n", "models[1] = models[1].replace('gru.elmo', 'elmo.gru')" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['char.bert',\n", " 'jieba.rnetv2.elmo.gru',\n", " 'sp10w.mreader.elmo.lstm',\n", " 'sp1w.rnet.gru',\n", " 'sp20w.rnet.gru',\n", " 'sp20w.rnet.lstm',\n", " 'jieba.mreader.elmo.lstm']" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "models" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "cm = ncm" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(7, 7)" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cm.shape" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1. , 0.96970468, 0.9715044 , 0.97025394, 0.97006507,\n", " 0.9707432 , 0.97275464],\n", " [0.96970468, 1. , 0.98257916, 0.98191659, 0.98151083,\n", " 0.9816018 , 0.98558189],\n", " [0.9715044 , 0.98257916, 1. , 0.98279696, 0.98544462,\n", " 0.98707933, 0.98836242],\n", " [0.97025394, 0.98191659, 0.98279696, 1. , 0.98378369,\n", " 0.9841393 , 0.98403441],\n", " [0.97006507, 0.98151083, 0.98544462, 0.98378369, 1. ,\n", " 0.99048502, 0.9839939 ],\n", " [0.9707432 , 0.9816018 , 0.98707933, 0.9841393 , 0.99048502,\n", " 1. , 0.98538368],\n", " [0.97275464, 0.98558189, 0.98836242, 0.98403441, 0.9839939 ,\n", " 0.98538368, 1. ]])" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cm" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "#(cm * 1000).astype(np.int32)\n", "amin, amax = cm.min(), cm.max() # 求最大最小值\n", "cm2 = (cm-amin)/(amax-amin) # (矩阵元素-最小值)/(最大值-最小值)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1.00000000e+00, 0.00000000e+00, 5.94056752e-02, 1.81300695e-02,\n", " 1.18957014e-02, 3.42798691e-02, 1.00674282e-01],\n", " [3.66466898e-15, 1.00000000e+00, 4.24965834e-01, 4.03095540e-01,\n", " 3.89701873e-01, 3.92704812e-01, 5.24081105e-01],\n", " [5.94056752e-02, 4.24965834e-01, 1.00000000e+00, 4.32155132e-01,\n", " 5.19550047e-01, 5.73509323e-01, 6.15862119e-01],\n", " [1.81300695e-02, 4.03095540e-01, 4.32155132e-01, 1.00000000e+00,\n", " 4.64725527e-01, 4.76463456e-01, 4.73001252e-01],\n", " [1.18957014e-02, 3.89701873e-01, 5.19550047e-01, 4.64725527e-01,\n", " 1.00000000e+00, 6.85925600e-01, 4.71664289e-01],\n", " [3.42798691e-02, 3.92704812e-01, 5.73509323e-01, 4.76463456e-01,\n", " 6.85925600e-01, 1.00000000e+00, 5.17538453e-01],\n", " [1.00674282e-01, 5.24081105e-01, 6.15862119e-01, 4.73001252e-01,\n", " 4.71664289e-01, 5.17538453e-01, 1.00000000e+00]])" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cm2" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import random\n", "from pyecharts import HeatMap\n", "\n", "x_axis = models\n", "y_axis = models\n", "cm3 = (cm2 * 100).astype(np.int32)\n", "data = [(i, j, cm3[i, j]) for i in range(len(models)) for j in range(len(models))]\n", "heatmap = HeatMap()\n", "heatmap.add(\"模型相关性\", x_axis, y_axis, data, is_visualmap=True,\n", " visual_text_color=\"#000\", \n", " #visual_orient='horizontal', \n", " visual_orient='vertical', \n", " legend_text_size=30, \n", " xaxis_rotate=10, \n", " yaxis_rotate=0)\n", "#heatmap.show_config()\n", "heatmap" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np; np.random.seed(0)\n", "import seaborn as sns; sns.set()\n", "uniform_data = np.random.rand(10, 12)\n", "ax = sns.heatmap(uniform_data)" ] }, { "cell_type": "code", "execution_count": 289, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAACZMAAAYHCAYAAAAUj3T/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xt8z/X///H7zmyzzWYO0WxzPkyRUEKNhXQiOYQkivqkkBTR6dM3dJJ0UPmQQ8lHUlHOkmNyCnM+zaYZs4P2ttlm9vvDzz5ee7+3vd/vvbf3xu16ufjj9Xi/ns/nY/Z6odw9ny65ubm5AgAAAAAAAAAAAAAAAADc0Fyd3QAAAAAAAAAAAAAAAAAAwPkIkwEAAAAAAAAAAAAAAAAACJMBAAAAAAAAAAAAAAAAAAiTAQAAAAAAAAAAAAAAAABEmAwAAAAAAAAAAAAAAAAAIMJkAAAAAAAAAAAAAAAAAAARJgMAAAAAAAAAAAAAAAAAiDAZAAAAAAAAAAAAAAAAAECEyQAAAAAAAAAAAAAAAAAAIkwGAAAAAAAAAAAAAAAAABBhMgAAAAAAAAAAAAAAAACACJMBAAAAAAAAAAAAAAAAAESYDAAAAAAAAAAAAAAAAAAgwmQAAAAAAAAAAAAAAAAAABEmAwAAAAAAAAAAAAAAAACIMBkAAAAAAAAAAAAAAAAAQITJAAAAAAAAAAAAAAAAAAAiTAYAAAAAAAAAAAAAAAAAEGEyAAAAAAAAAAAAAAAAAIAIkwEAAAAAAAAAAAAAAAAARJgMAAAAAAAAAAAAAAAAACDCZAAAAAAAAAAAAAAAAAAAESYDAAAAAAAAAAAAAAAAAIgwGQAAAAAAAAAAAAAAAABAhMkAAAAAAAAAAAAAAAAAACJMBgAAAAAAAAAAAAAAAAAQYTIAAAAAAAAAAAAAAAAAgAiTAQAAAAAAAAAAAAAAAABEmAwAAAAAAAAAAAAAAAAAIMJkAAAAAAAAwA1v2rRpatCggeFHWZe/32nTpjm7JUCSNHr0aMOzGRUV5eyWStXmzZvN3s/t27c7uy0AAAAAgJXcnd0AAAAAAAAAAFyP4uLiFBMTo9OnTystLU2ZmZny9vaWn5+f/Pz8FB4errCwMLm4uDi7VQAAAAAAAEmEyQAAAAAAAFAGnTp1Sh07dizw84kTJ6pHjx7FXmf79u3q169fgZ/PmTNHrVu3LvY6uDFkZWVpzZo1WrlypbZs2aKUlJQix1SqVElNmzZVx44d1a1bNwUGBpZCpwAAAAAAAJZxzCUAAAAAAADKnUWLFjlknu+//94h8+DGlp2drVmzZikyMlIjRozQr7/+alWQTJLS0tK0ZcsWvf3222rXrp2effZZHThwoIQ7Bv7n5MmTZsdS/vTTT85uCwAAAADgJITJAAAAAAAAUO5s375dJ0+eLNYcJpNJK1ascFBHuFFFR0frgQce0KRJk5SYmFisuS5duqQ1a9aoe/fueumll6wOpAEAAAAAADgKx1wCAAAAAACgXPrhhx80cuRIu8cvW7ZM6enpDuwIN5off/xR48ePV3Z2tsXPvb291apVKzVs2FCBgYEKDAyUm5ubTCaTTp06pYMHD2rHjh0ymUyGcbm5ufr555/Vs2dPjlkFAAAAAAClijAZAAAAAAAAygV/f3+dP38+7/rHH3/UCy+8IFdX+zbfz39UZkBAgFJTU4vVI24cCxYs0Ouvv67c3Fyzz2699Vb961//Ups2beTp6VnoPNnZ2dq4caPmz5+v9evXW5wPKE/uvPNOHTp0yNltAAAAAADsxDGXAAAAAAAAKBfat28vPz+/vOuEhARt2LDBrrmOHTumXbt25V27ubmpa9euxe4RN4b169frzTffNAt++fj46KOPPtKCBQvUvn37IoNkkuTh4aF77rlHX375pRYtWqTbbrutpNoGAAAAAAAoEmEyAAAAAAAAlAteXl7q1q2boZZ/dzFrff/994bru+66S1WrVrW7N9w4kpKS9PLLLysnJ8dQDw4O1rx584oVSmzSpIm++eYbjRkzRh4eHsVtFQAAAAAAwGaEyQAAAAAAAFBuPPLII4brtWvXKiUlxaY5Ll26pJ9//rnQeYGCTJ48WcnJyYaah4eHZsyYocaNGxd7fhcXFw0ePFhfffWVKlWqVOz5AAAAAAAAbOHu7AYAAAAAAAAAa0VERKhBgwY6dOiQJCk7O1tLlizR448/bvUc69at07lz5/KuK1eurMjISB07dszh/ebk5Gjfvn06deqUUlJSlJaWJn9/fwUGBio0NFQNGjRw+JqSlJWVpR07duj06dM6d+6cXF1dVaVKFdWvX1+NGjWSi4tLiax7rdzcXB06dEhxcXFKTk5WamqqKlasqMDAQNWsWVMRERFydy9f/3vy8OHDWrJkiVn9hRdeUMOGDR261h133GH32KysLO3Zs0dnzpxRUlKSMjIyFBAQoKCgINWtW1ehoaGOa7QQ8fHx2r9/v+Lj43XhwgW5ubkpKChI9913nypWrGjzfDk5OTpw4ICOHj2qpKQkZWZmytvbWw0aNLD55ysxMVH79+9XcnKykpOTdfnyZQUGBqpKlSq69dZb5e/vb3N/JeHixYs6ceKETpw4oeTk5LyfR39/f1WuXFmNGjVSzZo1nd1mibv6TCckJCg5OVkZGRmqXLmyAgMDVa9ePdWuXbtU+jh9+rT27Nmj+Ph4Xbx4Uf7+/goODlaLFi0UFBRUKj0AAAAAQEkrX/+3BgAAAAAAADe8Hj16aOLEiXnXP/zwg01hsvxHXD744IMOP1Jw7969mjVrljZu3Kjz588XeF/VqlV1991366mnnlJISEix1z116pQ++eQTrVq1SiaTyeI9wcHB6tOnjwYNGiQfH59ir5nf3r17NXfuXG3atMkQ2svPx8dHbdu21VNPPaVmzZo5vI+SMGfOHF2+fNlQCw0N1eDBg53UkdHmzZs1d+5c/fHHH0pPTy/wvptvvlmdOnXS4MGDFRwcbPM6kZGR+vvvv/Ouu3fvrkmTJkm6EvBcuHCh5s+fr8OHD1sc37p1a9WqVSvveuvWrWbv8Jw5c9S6dWtJV0JpM2bM0NKlSy2+T61atbIqTJaamqo5c+ZozZo1OnTokHJzcy3e5+rqqiZNmqhXr17q0aNHqYYec3NztWPHDq1du1Z//vmn9u/fb3akan7Vq1dX586dNWjQINWoUcOqdRYuXKjx48cX+PmYMWM0ZsyYQue444479PXXX5vVN2/erEGDBhlq33zzjVq2bGlVb9fauHGj5s2bp61btxb6TIeEhKhTp04aMmSIXaGu9u3b68yZM3nXPXv21P/93//lXa9YsUIzZszQnj17LI53cXFRs2bNNHz4cLVr187m9QEAAACgLOGYSwAAAAAAAJQr+cNfBw4c0L59+6wam5iYqA0bNhhqjjziMjk5WSNHjtSjjz6qX375pdAgmSSdPXtW//3vf3Xffffp7bffVlZWlt1rz549W/fff78WL15cYJBMuvJzMG3aNN1///2Kjo62e738/v77bw0fPlw9e/bUTz/9VGiQTJIuXLiglStX6tFHH9Xw4cP1zz//OKyXkpCZmalffvnFrN6nTx+5ujr3f7PGxcVp8ODBGjRokNauXVto6Obq/bNmzdK9996rTz/91CwgZ6+YmBj16NFDb775ZoFBMlstXLhQ9913n7755psi36eC5OTkaPr06erUqZM+/fRTHTx4sMAgmSRdvnxZe/fu1YQJE9S1a1dt377d3vZtsmXLFnXo0EH9+vXTf/7zH+3du7fIIJkkJSQkaPbs2YqKitK0adMK/drKi9jYWD3xxBMaPHiwfvvttyKf6djYWM2cOVOdOnXS9OnTHfZzcP78eT399NN6/vnnCwySSVdCgLt379aQIUM0btw4q75vAAAAAFBWESYDAAAAAABAuRIYGKjIyEhD7YcffrBq7I8//qhLly7lXTdt2tRhR03GxcWpb9+++vXXX20OMmRnZ2vu3LkaNGiQXYGZKVOm6J133lFGRobVY+Lj4zVgwACHBMr++usvPfroo1q5cqVd41euXKlevXrp5MmTxe6lpFja7cvDw0Pdu3d3UkdXREdHq0+fPtq4caPNY9PT0/Xxxx9rxIgRxQoyStKxY8fUu3dvh4XIJGnGjBkaP368Tc91fiaTSU8//bSmTJmitLQ0m8dfDTUtXrzY7h6sderUKcPuWLbKzs7WJ598on/961/lOsy0Z88e9e7dW1u2bLF5bHp6uqZMmaJRo0YV+5lOTk7WY489pt9//92mcYsWLdKrr75arLUBAAAAwJk45hIAAAAAAADlziOPPKIVK1bkXS9dulQvv/yyPD09Cx2XP3TmqF3JkpKS1LdvXyUmJpp9Vr16dUVFRalOnTry9/dXcnKyDh48qFWrVik1NdVw7/bt2zVo0CB99913RX4tV82aNUvTp083q3t6eqpdu3a6/fbbVbVqVaWnp+vUqVNau3ZtXuAnPT1d//rXv9S5c2c7vuortm7dqqeeekqZmZmGuqurq1q2bKnmzZurVq1aqlSpkjIzM5WQkKBt27Zpy5YthsDLiRMn9PTTT2vRokXy9fW1u5+S8scff5jVGjVqpICAACd0c8WxY8c0YMAAi7s2hYaGqlOnTqpdu7Z8fX2VmJioPXv2WNy5bMWKFcrKyrL4HFkjIyNDzz77rOF5rl+/vtq1a6eQkBD5+fkpOTlZMTExWr58uVVzbtq0SV9++WXetaenp1q3bq1WrVopODhYbm5uSkhI0J49ewrctSo9PV39+vXTwYMHzT6rXbu2WrdurQYNGsjPz0/u7u5KTk7W3r179fvvvyslJSXv3uzsbI0bN05VqlQp1SMMg4OD1bRpU4WHh6tmzZry8fFRxYoVlZGRoXPnzunw4cPasGGDkpOTDePWrFmjqVOnatSoUQXOHRAQoIYNG0q68vUdO3bM8PlNN90kPz+/QvtzxNG8+R0+fFgDBw60+D0NCwtTp06dFBISkvdM79692+LOZb/++qsyMzP12Wef2dVHTk6Onn32WR09ejSv1qRJE9111126+eab5evrq9TUVO3Zs0crV6402w1y8eLF6tSpkzp16mTX+gAAAADgTITJAAAAAAAAUO7cddddqlatWt4uPqmpqVq9erXuu+++Asfs3LlTx48fz7v28vLS/fffX+xecnNz9corr5gFySpUqKCRI0fq8ccft3gM4vjx4zVt2jTNnDnTcMzgvn379P7772vcuHFFrn38+HFNmTLFrN6+fXv9+9//VvXq1c0+GzlypFatWqU33nhD586dU0JCghYsWGDNl2omMTFRo0aNMguS9ejRQ8OHD9dNN91kcdywYcMUGxurN99807CjVkxMjMaNG6ePP/7Yrn5K0v79+81qzZo1c0InV2RlZWnUqFFmIZqAgACNGzdODz30kMVx58+f16RJk8yClb/99ptmz56tgQMH2tzLqlWr8oKBNWvW1Guvvaa7777b4r1jx461aue+GTNm5N3XuXNnjR07VjVq1LB4b/7n76rXXnvNLEhWv359jR07VnfeeWeBa2dkZGj27NmaNm1a3k6Gly9f1ujRo/Xzzz+rWrVqRfZvr5CQEPXs2VP33HOP6tevX+T9OTk5WrJkid577z3D0bJffvmlunTposaNG1scFxUVpaioKEnSyZMnde+99xo+HzFiRIHPUEnJzMzUiy++aPGZHj9+vB544AGL41JTU/XOO+/op59+MtTXrFmjb775Rv369bO5l6thNEkKDw/XG2+8odatW5vd17dvX40ePVqjR4/W5s2bDZ999NFHhMkAAAAAlEsccwkAAAAAAIByx83NTQ8//LChtmjRokLHfP/994brqKioInfescbSpUu1fv16Q83Ly0vTp0/XE088YTFIJl0Jm7300kt64403zD6bM2eO9u7dW+Tab7zxhlmQpmvXrvriiy8sBsmuioqK0ty5cxUUFCRJunjxYpFr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5fHZPHz4sBITEw21xx9/3OIudIXJysoy+3WvPLD0vBXnmbY0tjw/0wAAAABQ2giTAQAAAAAA4Lpw9913KygoyOJnHh4eevDBBx2+ZuPGjQ3XCQkJOnfunF1z7du3zyzU06RJE4v3WtphLTo62q51L126pEOHDtk0plmzZma1bdu22bV+eeHl5aVu3bqZ1efPn2/2fStJFStWVFhYmKF24MCBvCNebbV3716zmiN38CttYWFhqlSpkqG2c+fOUv0e2SohIcGs1rJlS5vniY6ONuzGWF74+vqqdu3ahtqBAwfs/p5ZeqYL+rUUAAAAAGCOMBkAAAAAAACuC4UFxiIjIy3u5lVczZs3N6utWLHCrrmWL19uVmvRooXFe4OCglSrVi1Dbe3atXaFLzZu3Gh2JFxR2rRpI3d3d0Nt3bp15TLIYosBAwaY7QoWExOjWbNmlWof+Z+79PR0bdiwwa65LD13lp7r8sLNzU1t2rQx1NLS0rRlyxYndVS0lJQUs5o9xzLmPyrTWm5ubma10g7f5X/m0tLStGnTJrvmut6eaQAAAAAobYTJAAAAAAAAcN3If9RlUfXiateunVltwYIFNgcx0tLStHTpUkPNw8NDrVu3LnBM+/btDddnz57VunXrbFpXkv773//aPMbX11etWrUy1BISEvTTTz/ZPFd50qBBAz3wwANm9Y8++kiHDx926FpbtmzR/v37LX521113mdW+++47m9eIi4szC6FVrlzZbMe98qZjx45mtS+++MIJnVinYsWKZjVLAbPCpKam2n3kqo+Pj1nN1oBpcTnqmT558qRZCC0oKEgNGza0uzcAAAAAuNEQJgMAAAAAAMB1o169etq8ebM2btxo+JE/eOUozZo1MzsS8NChQ5o/f75N80yZMkWpqamGWpcuXQo8tlOS+vTpY1abPHmysrKyrF538+bNWrNmjfWNXuOZZ54xq7377ruKi4uza77y4pVXXlHlypUNtaysLA0ePFgHDx4s9vy5ubmaMWOGnnrqKaWlpVm8JyoqSsHBwYbab7/9pt9//92mtd5++21dunTJUOvdu7c8PDxsa7qMeeCBB8x27tu6davmzp3rpI4Kl/97KcnmXbnefPNNmUwmu9b39fWVq6vxrwpK+z3u3LmzqlSpYqitXr1aGzdutGmet956yyzM27dvX7OdFAEAAAAABSNMBgAAAAAAgOtKUFCQgoODDT/yH03oSIMGDTKrvfvuu9q2bZtV47///nt9++23hpqLi4ueeOKJQsc1aNDAbOeymJgYjR071qqd0WJiYjRmzBirerSkVatWatu2raF2/vx5DRkyRMeOHbNrzszMTH333XelfmykLYKCgjR58mSzowHPnj2r/v37a+XKlXbPHR0drb59++q9994r9MhQDw8PDRgwwKz+8ssv6+jRo1atNXXqVLOd7Ly8vPTYY4/Z1HNZ5O7uruHDh5vVJ02apIULF9o97/bt2/Xiiy8WpzWLmjZtarY72ddff62zZ89aNX7q1KlrQjPsAAAgAElEQVR2H3EpXXmewsPDDbUNGzYoNzfX7jlt5enpafHZGzNmjI4fP27VHB9++KFZ+KxChQrq27evQ3oEAAAAgBsFYTIAAAAAAACgGO6//3516NDBULt48aKefvppzZs3r8BgV2Zmpj744ANNmDDBLLQxcOBAsx3PLHn99dfl6elpqC1dulTPPPOMzpw5U+C41atXq3///kpMTJR0JXBhj4kTJ6pq1aqGWkxMjHr27KkvvviiwJ21rpWbm6udO3fqnXfeUWRkpF5//fUyv7tZhw4d9Prrr5uFFNPS0jR8+HD16dNHGzZsKDQQdlV2drbWrVunoUOHqmfPntq1a5dVPQwaNEiNGjUy1FJSUjRgwIBCg0X//POPXn31VX322Wdmn40ePVrVqlWzav2y7uGHH9ZDDz1kqF26dEnjx4/X888/r0OHDlk1T0JCgr7++mv17NlT/fr1s3n3N2t4enoqMjLSUEtNTdXAgQMLPT71zJkzGjFihOF76evra1cPzZs3N1wfPXpUEyZMUHx8vF3z2WPIkCGqX7++oZaUlKT+/ftr2bJlBY47f/68xo4da/Eo0zFjxpjteAYAAAAAKBx7OwMAAAAAAADFNHHiRD300EN54SxJSk9P17///W/95z//UVRUlOrUqaNKlSopJSVFBw8e1KpVq5SSkmI2V5MmTaze/ahOnToaNWqUJk2aZKivW7dOUVFRat++vVq2bKng4GBdvHhRcXFxWrNmjSGgUq1aNXXp0kWzZ8+2+euuVq2aPvvsMz3++ONKT083fO0ffvihpk+frhYtWqh58+aqWrWq/Pz8dPHiRaWlpens2bPav3+/oqOjzY74LA969+4tT09PTZgwwSw0tmvXLg0ZMkTe3t5q3bq1GjVqpMqVKyswMFBubm4ymUw6deqUDh48qB07dlgVusvP09NTH3zwgXr27Gn4uU9OTtbIkSM1bdo0derUSSEhIfLx8VFSUpJ2796ttWvX6sKFC2bz3X333RZ3OyvP3n77bcXGxpoF9FasWKGVK1eqYcOGuv322xUaGip/f3+5urrqn3/+UUpKio4cOaJ9+/bp5MmTpbJD17PPPqsVK1YYjh09fvy4HnroIbVv315t2rRRtWrVlJ2drcTERP3555/asmWL4Vjb3r1768iRI9q5c6fN6z/yyCNmu7YtXLhQCxcuVFBQkCpXrmx2VOQtt9yit956y+a1CuLl5aUPPvhAvXr1UkZGRl49KSlJI0aMyHumb7755rxn+q+//tLatWsN78BVHTt2VL9+/RzWHwAAAADcKAiTAQAAAAAAAMUUFBSkb7/9VkOGDNHJkycNn8XHx1sd1Lrtttv0+eefm+02VphBgwYpJSXFbFeezMxMrVq1SqtWrSpwrLe3tz799FOz4w5tERERoQULFmj48OGKiYkxfJaenq6NGzeaHT13vejevbvq1q2rl156SSdOnDD7PD09Xb/99pt+++03m+Z1c3NTz549zXYey69OnTqaM2eOhg4dqqSkJMNnx48f15dffmnVevfee6/ef//9Ej0O1hk8PT319ddf64033tDixYsNn+Xm5urAgQM6cOCAk7ozqlu3rsaNG2cWzrp8+bLWrVtX5Dvatm1bjR8/XgMHDrRr/ebNm+vBBx/Uzz//bPZZUlKS2fMlSZUrV7ZrrcLUr19fs2fP1tChQ83CtseOHbP6CN2uXbvq3XffdXh/AAAAAHAj4JhLAAAAAAAAwAFCQkL03XffqWvXrjaHcjw8PDRgwADNmjVL/v7+Nq89atQojR07VhUrVrR6TPXq1TV79mxFRETYvF5+9evX16JFi9S/f395eXkVa66IiAizY0PLsoiICP388896+eWXFRwcXKy5PD091a1bNy1ZskRvvfWW/Pz8rFp/wYIFuvPOO21ez9vbW8OHD9fUqVOL/X0rqypUqKBJkyZp8uTJqlWrVrHmqlKlivr27eugzsz169dPEyZMkIeHh03jevXqpenTp9sUQrXk7bffVv/+/Z0eKrzlllu0YMECtWnTxuax3t7eGjFihKZMmVLsnw8AAAAAuFGxMxkAAAAAAADg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H1bHZkluDJbWecDZ477Q3jh2V4w7Kytb4x+eqqNHEw3xKlX89NrU8cz6cpkrnesq599ot86nkhc8/x3Xg3CEs//WWz1E4IpjM9vyb0HJzlEFi0tdnVNpaRl6642Pdfugp/XVlz9ZPpSAq4uzP89Y5QTnCgCAK1EeDwAo93Jzc/XWW29pzpw5JerDVl9++aWeeeYZuz70v/7666pevbpNSxWmp6crJcWx5avy8vI0Z84cHT16VG+//bZDfUjSZ599pueee87h9s5w9uxZjR49utjCrr+Ljo7W8OHDtWjRIgUFBdnUJjc3V1OnTtX8+fPtHmNqaqqeeuopJSYm6r777rO7vSS9+uqrWrhwoUNtAQCXh5LdyDa35cYDXK0kx6xV2zyVzjFb0qKRgu2LyrXi8nDipBG6sUfbYvd55929dPJkiua8v8IQX7r4B428r78qV65UbB8o/0p0bFrlVCmdB0qeU8bXzh52bm6unnnmXf35505D3MPDXdPeeFS1a9d07g5RLjg/n0owmJLt2s72Bc9RJesPuKhE130WsVL7rFKK131FeW7iSD03caQhlpqaptOnU7V71yFt+j1aK1dsUErKheUG9+2L03MTZurLZT9q2puPKCCgqmM/AK5Izv4cVkofw4CrAPMvAVYoJgMAlHtvv/22ZSFZRESE+vfvr/bt26tmzZry9fXV2bNndfToUUVHR+unn37Spk2bLJ90LUxMTIxmzZqV/wVDz5491b9/f0VERKhatWo6d+6cdu3apcWLF+uHH34wtJ0yZYq6du2q6tWr27y/xo0bq1OnTmrZsqUaNWqkmjVrys/PT3l5eUpJSdGBAwf0yy+/aPny5UpKSspvt3r1akVGRmr48OE27+uiAwcOaNWqVfmv27Ztq4EDB6pt27YKCAhQRkaG4uLitG7dOvn4+Njdv61efvnl/EIyX19fDRkyRL1791ZoaKg8PDx09OhR/fDDD1q0aJFOnz6d3+7IkSMaO3asli5datOSl6+//rqpkMzf318DBgxQp06d1KRJE1WpUkUZGRk6fPiwfv75Z3388cc6e/aspEszizVu3FjdunWz62f87rvvtGnTpvzXvXr10k033aSIiAhVrVpVZ86c0eHDh7Vy5UpJUu/evdWwYUNJ0rp163To0KH8th07dlR4eHih+/L29rZrbAAAx3h6mj9Gl2TJlL8vZ3RRhRLMGgUU5Ollvl7KsDjubGW1tJGXl/O/XvL0NI87s4TLKhVsX9S4rfZ/0TXtm+uWf3ayeb8PjPmnVq/8TUfjTuTHUlPTtWb17xo8pLvN/aB8sDo2SrLkV6bFOaS0cqqkS5UVbO/scb/04mx9vXqjIebm5qZJLz6oLl2KL+ZE+ef066oyPEeVPJ+MP7crxo0rn9PPURbXjK44Nr0s/haU9LrPlecoPz9f+fn5KiSklnr2aq9HH7tTb735sRZ/8k3+Nn9s2ql7h7+o+QsnqUaNKk7bNy4fzv48k5FpnmnT6rMeAADOwicSAEC59t1335kKySpVqqRXXnlFN910k2l7Pz8/BQcH65prrtGIESOUnJysBQsWqHLlyjbt72KBWNWqVfXOO++oQ4cOpv4DAwPVrVs3ffjhh5o6dWr+e2fOnNGyZcs0atSoIvfh4+Oj++67T4MHD1a9evUK3c7f31916tRRly5dNG7cOE2ZMkVLly7Nf//dd9/VoEGDVKmSfbMZbNu2TZLk4eGhF198Ubfffrvh/SpVqigwMFDt2rWzq197XfxdN27cWO+//75CQ0MN71erVk3h4eEaOnSoxo8fr6ioqPz3YmJiNHfuXN1///1F7uO7777TvHnzDLH+/ftr0qRJpmPCz89PAQEBateune655x498sgj+YVgeXl5euaZZ7R27VpVqWL7F0AX2/v7+2vGjBmm48nf318hISHq1OnCzchbb701/70DBw4Yism6deumESNG2LxvAIBr+PhUNMVKcoPG6oap1T4AR3l7m4+nktzEyLS4ieGKY9bbKtdKUAQnmcde1Lh9fAt/b+hdPe3ar5eXp24b3E3vvLXUEP/zj90Uk12GrI5Nq5vttrI6rn18nP+giNXxXpJxW7V35t+C16bM06effmOKT5gwUrfdZl8Oovzy9jEvoef8fHL+OepyyydcPayWei1RTllcM7rmus+547Zq74pz60W+lbz17+dHqU5ILb05bVF+/ODBY/r3s+/pvVnPuGzfKL+s89HxpZczM6w+h5VsiWUAAIrCnH0AgHIrJydHr776qmEa8kqVKmnRokWWhWRWatSooccee0w9e9r+ZbOXl5fmzp1rKvwpaOTIkerSpYshtnz58mL7r127tv71r38VWUhW0MUCur59++bHzp49q2XLltncR0GTJk0yFZKVtpo1a+rDDz80FZL9XUBAgGbNmpU/Y9dF77//vs6dO1dou+zsbL344ouG2G233aa33nqr2OLC6tWra/bs2WrevHl+7NSpU1q8eHGR7ax4eHhozpw5xR5PAIDLQ9Wq/qZYWlqGw/1Zta1a1bYieMAWVauaHzxIS3N81hfrY9bP4f4K4+fnY3qaPyszW+fP2758/d/l5Jw33bypUsS4K1XysZzBwt3dTR06htm9/47Xm2eY3bJ5r939oOxZngfOpTvcn3VOmfdRUn5+vqZjOjMzW+fPn3eoP6uccta433pzkT76aIUp/vgTd2vY8P5O2QfKB+t8cvZ11dWdT7i6lM5nFdfkVMEZljIzs5x63eeK69WC7h15i7p0aWOIrf95i379ZbvL943yp4qTP4elW7S12gcAAM5CMRkAoNxavny5jh49aohNnDhRLVu2dOl+77///iKXE/y7e+65x/B67969Sk93/EZCccaPH294XXCpTVu1b99egwcPdsaQSuTJJ59UYGBgsdv5+/vr+eefN8TOnTtnWK6zoBUrVighISH/dWhoqF544QWbx+bj46NJkyYZYosWLTIUN9ri7rvvVmRkpF1tAADlV40aVU2x+Pgkiy1tc/y4uW1AgHkfgKOsltVJSDjpcH/x8ea2NWq4pgCyeoF+c3PzdCLxlEN9JSacMl3HFTfugADz7y4kpJb8/OxfCr5ps1B5eBi/hktOOmP3tSXKnuV5ICHZ4f7ij5vbWh17zlC9esGcylWigzmVkJBsziknnL9mTF+sOXO+MMUfHj9Eo0cPLHH/KF+cn0+ld11VvboxT8tjPuHqY3ndZ3HtZqv4eHM+1nDROaqGKafylJjo2NgTE05aXPeVzlKTD4wZZIotXfJtqewb5UuNGubCy8SE0w73lxBvPscU/LwEwDFubu5X/D/AERw5AIBy64svjF8gN23aVAMGDHDpPr28vHT33XfbvP11110nT89LT6OeP39ee/e6boaBRo0ayc/v0pN0O3bscOgG1PDhw505LIcEBgbqH//4h83bd+zYUREREYbYypUrC93+008/NbweNWqUKlSwb+rvyMhIw+xkiYmJ2rdvn83t3dzcNGzYMLv2CQAo30JCzEXQx44lOtzf8eMnDK89PNwVHFzT4f6AgmqHBJhix485r/DFw8NdQcE1HO6vKHXqmHPhmINjtyrYqRNSdK7VCTW/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yWcxubqq+/ixGnD3DJlc+NUZ+JV3RLgGPPY3+XfvVq9xJldXdb72avW6/fesKQCAQ3iGhyvmkUflHVP/16iwsdeo04w/tKjXKJObm9qNGKlujz4uT76UCQfw6BChLn+ZKa+Y7vUb6OqqdmOuUcT021vcmgoafoW6/PUJeUSwpmBfrCcAQEtDZzIArd4HH3yg77//XlOnTtXYsWMVHFz3dlfl5eWaNWuWMjIyDPHLL7/c5uvm5uZqxowZevfdd9W1a1er5+Tl5emhhx7Szp07DfHp06fblKczXXDBBUpJ+a27Tm7ub9+oGTZsmEwmU61jY2Ji1L59++rCp7PH/joedXviiSc0derU6u0mjx8/ruuuu07PPvusLrvsMpvmKC8v16ZNm/Txxx9r//79+uabb2o9t1evXnJ1dVVFxS9dhAoLCzVv3jw98MADjf6z2CIgIEAPPfSQnn766epYWlqapkyZoieeeMLqnzk9PV3PPfdcdSe8wMBAnbayjUVTufbaa7Vx48bq461bt+rNN9/UH//4x1rHbN++XXfffbehoxlahvDwEC38aLZWrlyvhQuWatu25FqLB729PTVq1AW67ffj1bVrZBNnaunKq87XkKGxWrBgqf69eLWysiy34fxV56hw3TD5Ct1082h5etKuHs2TV7tgnT/zIWVsTNThbxN06sAhqZb16OrpofDzBipm7JXyjejQxJkCLYNHcLD6PfKwcjZv0bFVCcpLOVj7mvLwUMjgQYocfZW8w1lTAADHcg8OVteH/qLcxM06kbBahYdqf41y8fBQwMDBCrnyKnl2sP0LpPYQNuZq+cR0U37yPhUeOqiSjGOqKq+7s7LJ1VWekZ0UMHCQgi68WOYG7qoA2MotKFidH/yLziRu1qnvVqmojjXlN2Cwgq8YJY8mXlMho66WV9duKty/T0WHUlRq45rS/68pvwGDFHjBxXL18a17DNBArCcAQEtCMRmANiE1NVWzZ8/W888/r0GDBmno0KHq06ePunTposDAQHl6eqq4uFhHjx7Vli1btGjRIh08eNAwx8iRIw3duM7l8ssv15o1a5SWlqbx48frhhtu0FVXXaWoqCi5u7srIyND33//vRYuXKjs7GzD2C5duujee++16TpJSUkW20uey/r162vtJOXv76/bb7/d5rmGDRumhQsXWn3Ols5i559/vpYsWWIR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AAAAAAAAgGAyAAAAAAAAAAAAAAAAAIAku78nAAAAAAAAAAAAAAAAAHQmq8XfMwC6JjKTAQAAAAAAAAAAAAAAAAAIJgMAAAAAAAAAAAAAAAAAEEwGAAAAAAAAAAAAAAAAABDBZAAAAAAAAAAAAAAAAAAASXZ/TwAAAAAAAAAAAAAAAADoTDZLg7+nAHRJZCYDAAAAAAAAAAAAAAAAABBMBgAAAAAAAAAAAAAAAAAgmAwAAAAAAAAAAAAAAAAAIMnu7wkAAAAAAAAAAAAAAAAAnclq8fcMgK6JzGQAAAAAAAAAAAAAAAAAAILJAAAAAAAAAAAAAAAAAAAEkwEAAAAAAAAAAAAAAAAARDAZAAAAAAAAAAAAAAAAAECS3d8TAAAAAAAAAAAAAAAAADqT1eLvGQBdE5nJAAAAAAAAAAAAAAAAAABkJgMAAEDncTbU+nsKwHGjvsHfMwCOLyUlfKiA9hIXxqPdQHv6f+zdd3gU5doG8HtL2qb3npCEnhAg1KjYKCqoCAh4VJRmr6hHFPWzw0GOFaXpUSwcEcQCUpQqLdTQIQmQkN6TTU+25fuDQ5LZmSS7m2w2kPt3XV6X+2bKm5DN7Mzc8zz+Dzxo6ykQXTPyV/1g6ykQXVOK4p+y9RSIiIjICliZjIiIiIiIiIiIiIiIiIiIiIiIiFiZjIiIiIiIiIiIiIiIiIiIiIi6FjkLaxNJYmUyIiIiIiIiIiIiIiIiIiIiIiIiYpiMiIiIiIiIiIiIiIiIiIiIiIiIGCYjIiIiIiIiIiIiIiIiIiIiIiIiAEpbT4CIiIiIiIiIiIiIiIiIiIiIqCMpZLaeAVHnxMpkRERERERERERERERERERERERExDAZERERERERERERERERERERERERMUxGREREREREREREREREREREREREYJiMiIiIiIiIiIiIiIiIiIiIiIiIAChtPQEiIiIiIiIiIiIiIiIiIiIioo4kl9XbegpEnRIrkxERERERERERERERERERERERERHDZERERERERERERERERERERERERMQwGREREREREREREREREREREREREQFQ2noCREREREREREREREREREREREQdidWXiKTxvUFEREREREREREREREREREREREQMkxERERERERERERERERERERERERHDZERERERERERERERERERERERERASGyYiIiIiIiIiIiIiIiIiIiIiIiAiA0tYTICIiIiIiIiIiIiIiIiIiIiLqSHKZrWdA1DmxMhkRERERERERERERERERERERERExTEZEREREREREREREREREREREREQMkxEREREREREREREREREREREREREApa0nQERERERERERERERERERERETUkRQyW8+AqHNiZTIiIiIiIiIiIiIiIiIiIiIiIiJimIyIiIiIiIiIiIiIiIiIiIiIiIgYJiMiIiIiIiIiIiIiIiIiIiIiIiIwTEZEREREREREREREREREREREREQAlLaeABERERERERERERERERERERFRR5LL6m09BaJOiZXJiIiIiIiIiIiIiIiIiIiIiIiIiGEyIiIiIiIiIiIiIiIiIiIiIiIiYpiMiIiIiIiIiIiIiIiIiIiIiIiIAChtPQEiIiIiIiIiIiIiIiIiIiIioo4kl9l6BkSdEyuTEREREREREREREREREREREREREcNkRERERERERERERERERERERERExDAZERERERERERERERERERERERERAVDaegJERERERERERERERERERERERB1JLrP1DIg6J1YmIyIiIiIiIiIiIiIiIiIiIiIiIobJiIiIiIiIiIiIiIiIiIiIiIiIiGEyIiIiIiIiIiIiIiIiIiIiIiIiAsNkREREREREREREREREREREREREBEBp6wkQEREREREREREREREREREREXUkVl8iksb3BhERERERERERERERERERERERETFMRkRERERERERERERERERERERERAyTEREREREREREREREREREREREREQClrSdARERERERERERERERERERERNSRZDJbz4Coc2JlMiIiIiIiIiIiIiIiIiIiIiIiImKYjIiIiIiIiIiIiIiIiIiIiIiIiBgmIyIiIiIiIiIiIiIiIiIiIiIiIjBMRkRERERERERERERERERERERERACUtp4AEREREREREREREREREREREVFHktl6AkSdFCuTEREREREREREREREREREREREREcNkRERERERERERERERERERERERExDAZERERERERERERERERERERERERAVDaegJERERERERERERERERERERERB1JJrP1DIg6J1YmIyIiIiIiIiIiIiIiIiIiIiIiIobJiIiIiIiIiIiIiIiIiIiIiIiIiG0uiYiIiIg6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Li4GGg0REREREREREREREREREREREVH1YTJZOW7fvo2srKzibYVCgaZNmxpwRERERERERERERERERERERERERNWDyWRlyMnJweLFiwVtgYGBUCgUBhoRERERERERERERERERERERERFR9ZEbegC1yfr165GamoqEhAScP38eqampgsdfe+01A42MiIiIiIiIiIiIiIiIiIiIiKqOzNADIKqVmExWwq5duxAbGyv52PPPP4/evXvX8IiIiIiIiIiIiIiIiIiIiIiIiIhqBpe51ELHjh2xevVqyGTMSiUiIiIiIiIiIiIiIiIiIiIioqcTK5NJsLS0hIODA1q3bo0+ffqga9euhh4SERERERERERERERERERERERFRtWIyWQknTpww9BCIiIiIiIiIiIiIiIiIiIiIiIgMgslkRERERERERERERERERERERPRMkclkhh4CUa1kZOgBEBERERERERERERERERERERERkeExmYyIiIiIiIiIiIiIiIiIiIiIiIiYTEZERERERERERERERERERERERESA3NADICIiIiIiIiIiIiIiIiIiIiKqWTJDD4CoVmJlMiIiIiIiIiIiIiIiIiIiIiIiImIyGRERERERERERERERERERERERETGZjIiIiIiIiIiIiIiIiIiIiIiIiMBkMiIiIiIiIiIiIiIiIiIiIiIiIgIgN/QAiIiIiIiIiIiIiIiIiIiIiIhqkoz1l4gkMTKIiIiIiIiIiIiIiIiIiIiIiIiIyWRERERERERERERERERERERERETEZDIiIiIiIiIiIiIiIiIiIiIiIiICIDf0AIiIiIiIiIiIiIiIiIiIiIiIapbM0AMgqpVYmYyIiIiIiIiIiIiIiIiIiIiIiIiYTEZERERERERERERERERERERERERMJiMiIiIiIiIiIiIiIiIiIiIiIiIwmYyIiIiIiIiIiIiIiIiIiIiIiIgAyA09ACIiIiIiIiIiIiIiIiIiIiKimiSDzNBDIKqVWJmMiIiIiIiIiIiIiIiIiIiIiIiImExGRERERERERERERERERERERERETCYjIiIiIiIiIiIiIiIiIiIiIiIiAHJDD4CIiIiIiIiIiIiIiIiIiIiIqCbJZDJDD4GoVmJlMiIiIiIiIiIiIiIiIiIiIiIiImIyGRERERERERERERERERERERERETGZjIiIiIiIiIiIiIiIiIiIiIiIiADIDT0AIiIiIiIiIiIiIiIiIiIiIqKaxfpLRFIYGURERERERERERERERERERERERMRkMiIiIiIiIiIiIiIiIiIiIiIiImIyGREREREREREREREREREREREREYHJZERERERERERERERERERERERERARAbugBEBERERERERERERERERERERHVJBlkhh4CUa3EymRERERERERERERERERERERERETEZDIiIiIiIiIiIiIiIiIiIiIiIiLiMpdERERERERERERERERERERERFRLJSQk4MaNG3j48CFycnJgZmYGV1dXtGzZEo0aNTL08ETu3buH0NBQJCYmQqVSwdLSEo0bN4a/vz9sbW0NPbwKMZmMiIiIiIiIiIiIiIiIiIiIiJ4xMkMPgCpw4sQJfPvttwgODkZRUZHkPl5eXhg3bhz69+8Pmcxwf9OCggLs3LkT27ZtQ0xMjOQ+xsbG6NixIyZOnIiAgIAaHqH2ZEVl/baJiIiIiKpYRsExQw+B6KnRe7+5oYdA9FR59KjQ0EMgemr4tjAy9BCIniqMKKKqk5TDL4yJqtLVoG8MPQSip0puzE5DD+GZoykKM/QQqp2RzNvQQ9BLdnY2Zs+ejSNHjmjdJzAwEMuWLYODg0M1jkxaVFQUpk6divDwcK37jBw5Eh988AEUCkU1jkw/nIcSEREREREREREREREREREREZHBZWdnY9y4cTolkgHAlStXMHz4cCQmJlbTyKTdu3cPQ4cO1SmRDAC2b9+OadOmQa1WV9PI9MdkMiIiIiIiIiIiIiIiIiIiIiIiMrg5c+YgJCRE0Fa/fn3MmTMHv/32G/744w8cPHgQ//vf/+Dh4SHYLzo6GlOnTq2xBK2srCxMmjQJqampgnY/Pz8sW7YMR48exeXLl7F3714EBQXB1tZWsN/vv/+OpUuX1shYdcFkMiIiIiIi+n/27ju+iir///j7lvSE3gIGQhFCSQFZelGKoEhRdPGr666461pWXb/2sruyurrrqmv9qmBBV2zYAFF6VTokIaGEkEACJCaENNJv/f2R34y5IUCChCC+no8HD5mTmXPP4JzM3HM+cz4AAAAAAAAAAABNavXq1Vq6dKlP2aBBg7Ro0SL97ne/U8+ePdWsWTN1795d1113nRYsWKCJEyf67J+QkKBPPvnknLT3tdde06FDh3zK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xWLh4sWLZGdn8/zzz6trfVsSExNJS0sDmudnampq2L59+w21GxQUxF133eXz2kcffQS0nh9pizHO+n//7/+Rm5vLkiVLiIuL69IYTgghhBBCCHH7kLzEQgghxG3E2IUaERFBamoqx48fByAjI4ORI0d2msnH4/FgsVjUBKURwNKZq1ev8sYbb6BpGrquo2kav/zlL31KOrZF0zTcbjcxMTE88cQTrF27FpfLhaZpfPXVVxw/fpzU1NRW5/Xo0YNx48ZRVFSkXvvrX//KokWLulyWwWw2c+bMGUpKStA0DafTiaZparduWxO9Xq+X7t278/LLL3PkyBFOnjzJgQMH8Hq9JCUlERkZSWxsLAkJCYSFhanzJHjsu6srJRtvNuOZqq6uZv369Xz00UfExsby3HPPERoa2uZOeeMeNYLJ3G43FotFLRTczHtM13WsViuZmZls27ZNZeIrKCjg66+/9glU7UxSUhLp6enk5eWhaRpXr15ly5YtpKend+l8r9dLQEAAW7du9cms+G2WpxFCCCGEEEK0rba2ltLSUvr376/GJN8m4+9+Y+z02muvtbkBLCgoiGHDhtG7d28uX76M2+0mNzdXBZY5nU5WrFhBUlIS995777fW3549ezJ06FByc3PRdR2Xy0VeXh7V1dWtMpZ35O6772bFihU0NTVhNps5duwY58+fVxnOOhrDGuNNY+Ocke39Hz3uFUIIIYQQQny3STCZEEIIcZvxer1omsacOXNITU1l6tSpdO/evUvnGhPBO3bs4I033iAsLIyXCQejwwAAIABJREFUX3650/Py8vKoqqoCmgPQfvjDHzJ06NA2JzlblvZrOaHpcDiIjIykvLxclcRbtWoVbVXsttvtjBkzhpUrV+JyubBYLJw7d47169czY8aMTgPgjH5dvnyZy5cvA83BZX5+fvTo0aPd81p+lvT0dNLT07nvvvs6/X7Ed9f19+c/IrisuLiY3/3ud2zbtk29VlBQwJAhQ1i0aFG7iws2mw23262CNhsbG9Xu8m+j32lpaSQkJKhgstLSUr766ismTZrU5UCuyMhIRo0aRV5enipNY+yO7yy4Fa79foxAMlkIEUIIIYQQ4h9v48aNrFu3jpycHBITE/n000+/9UAyuLZh7oMPPuCvf/0rlZWVPu+NHTuW+++/nxEjRuDv74/L5SIgIACAkydPsmLF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18u2bS8IFggE1NzcrNdee02vvfaawuGwGhsb2x1v27ZGjRql22+/XcOHDydIBgAAAAAfMlalAABAh9yHwcOGDVNmZqbXvs+yLG3btk1XX321evbseTGHiI+Ruro67du3T0eOHFF1dbX2798vy7I0ceJEDR8+XOPHj5d09lYtneV+LxcuXKhnn31WlmVJkqqqqlRaWqrLLrsspkVLZ8/Xp08fffGLX9Tvf/97nT59Wj6fT83NzXr88ceVnp7utVHpaKEkEAjo+PHjeumllyTJC6PddNNN7/s+3bFRiQwAAADo3tw5Rr9+/RQIBLyNJPv27dOOHTs0bty4dnMod5PN/Pnz9cADD3jzhhdffFG33HKL4uLi2l0jISFBoVBIjuN41ZjXr18vKTZAFhcXp6FDh2rMmDHKzs5Wdna20tPTFQ6HY87nHteZOYtpmpo4caIGDBig6upqGYahhIQEXXXVVZKkZ599VpLaBcni4uI0evRoXXHFFVq4cKEXrGOeBAAAAAAfLvOee+6552IPAgAAfDxZliWfz6eGhgZt3LhRtm3LcRxFIhF95jOfUXx8/MUeIj4GSktL9cwzz2jVqlX6wx/+oHXr1mn79u0qLy/XunXr9MILL+jVV19VamqqhgwZ8oGu5e4+HzRokNasWaPa2loFAgFZlqVQKKTs7GwlJSV1utWly7Zt9erVS8FgUDt37lR9fb1CoZCi0ajeeust2batCRMmdHjOyspKfe9731NxcbHXfmXYsGG644471KNHjw90vwAAAAC6N3eOkZSUpLKyMlVUVMhxHNm2rZ49e2rChAnq0aNHzBzHDXENHTpU//d//+fN3U+cOKFp06a1m3e5lbwaGhq0bt06b97i8vv9GjJkiCZPnqw5c+ZowYIFmjt3ri699FINGDDA27DjjuG9IbK24bKziYuL04EDB7Rz5075/X41NTVpxIgRuv/++5WTk6NoNKq+ffuqsbFREyZM0MyZMzV79mzNnz9fl19+uRITE2XbNkEyAAAAAPgIUJkMAACclRvcyc/P99pmGIahiooK1dXVqV+/fl0O7eCTqW1FMffv3LIsPfPMM3rqqad08ODBmM8Hg0FFo1EZhqGmpiZt2bJFX/rSl3T77bdr/vz5Gjx48PtuTeLuwp87d67+53/+xzvH7t27VV5ervT09C5/J93P33jjjWpqatJ//dd/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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import matplotlib as mpl\n", "from matplotlib.font_manager import FontProperties\n", "import seaborn as sns\n", "\n", "dpi = 300\n", "mpl.rcParams['figure.dpi']= dpi\n", "\n", "sns.set(font=['sans-serif'])\n", "sns.set_style(\"whitegrid\",{\"font.sans-serif\":['Microsoft JhengHei']})\n", "\n", "import numpy as np; np.random.seed(0)\n", "import seaborn as sns; sns.set()\n", "import matplotlib.pyplot as plt\n", "f, ax = plt.subplots(figsize=(8,5))\n", "#ax = sns.heatmap(cm2, ax=ax,vmin=0, vmax=1,annot=True,fmt ='0.1g', xticklabels=models, yticklabels=models)\n", "#ax = sns.heatmap(cm2,cmap = 'RdBu',ax=ax,vmin=0, vmax=1,annot=True,fmt ='0.1g', xticklabels=models, yticklabels=models)\n", "ax = sns.heatmap(cm2,cmap=\"YlGnBu\",ax=ax,vmin=0, vmax=1,annot=True,fmt ='0.1g', xticklabels=models, yticklabels=models)\n", "#设置坐标字体方向\n", "label_y = ax.get_yticklabels()\n", "plt.setp(label_y, rotation=0, horizontalalignment='right')\n", "label_x = ax.get_xticklabels()\n", "plt.setp(label_x, rotation=20, horizontalalignment='right')\n", "plt.title('Model Correlation')#标题\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [], "source": [ "seg_methods = ['char', 'jieba', 'sp1w', 'sp10w', 'sp20w']\n", "vocab_sizes = [6797, 144298, 12611, 100850, 198057]\n", "min_lens = [19, 12, 8, 7, 7]\n", "max_lens = [2003, 1365, 1702, 1287, 1212]\n", "mean_lens = [344.661, 225.6477, 217.9499, 166.4245, 156.068]\n", "unks_perdoc = [0.042, 1.353, 0.0304, 0.0308, 0.016019]\n", "unks_perdoc_testb = [0.074, 1.7338, 0.280565, 0.280895, 0.052255]" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('文本长度统计', title_text_size=36)\n", "\n", "#for i, method in enumerate(seg_methods):\n", "bar.add('min', seg_methods, min_lens, xaxis_label_textsize=30, legend_text_size=25)\n", "bar.add('max', seg_methods, max_lens, xaxis_label_textsize=30, legend_text_size=25)\n", "bar.add('mean', seg_methods, mean_lens, xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('词汇量', title_text_size=36)\n", "\n", "#for i, method in enumerate(seg_methods):\n", "bar.add('vocab_size', seg_methods, vocab_sizes, xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bar = Bar('未登录词', title_text_size=36)\n", "\n", "#for i, method in enumerate(seg_methods):\n", "bar.add('unks_perdoc', seg_methods, unks_perdoc, xaxis_label_textsize=30, legend_text_size=25)\n", "bar.add('unks_perdoc_testb', seg_methods, unks_perdoc_testb, xaxis_label_textsize=30, legend_text_size=25)\n", "bar" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [ { "data": { "image/png": "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OWZBslq1aum7774rMp/IRx99pA8//NCsLDAwUGPGjNGjjz5q84WryWTSt99+q7fffrvgMwoJCdGlS5cK6ngi54vJZNLDDz9s9hJXuhI0euONN9SzZ0+b7U6fPq1XXnmlYCeV5dwlacqUKbrvvvsKHT8tLU333HOPEhMTzcpr1Kih119/Xd26dbPZ7uzZs5o0aZJ+++03q5/997//Ve/evQsdV5JOnDihAQMGWO0EqVy5skaPHq3777+/0GOucnJytGHDBi1YsECHDx92OW+VI5YuXarx48ebla1Zs0a1atUqsq2tXCQNGzbUhAkT1KVLF7v5Py5duqSvvvpK//nPfwoCbZIUHh6u77//vshjGy1zvlz7N7NevXp67bXXdNNNN9lsm5qaqrFjx2rjxo1m5TExMfrpp58KHVe6sq6HDx9uFfytUqWKJk2apNtuu81mu6ysLH3wwQf66quvJNle147kZSnO/bLFMh/UtZ9llSpVNHHiRLuB/KysLL3xxhtavny5WXnFihW1YcMGhYSEuDQnAADgPhw7BgAAAK97++23rQIvL7zwgmbOnFlo4EW68oJq2rRpGj16tFn57t27tXLlSqfncvXFV6NGjfTNN98U+nK/VatW+vrrr63yraSmpjp8ZNPixYv14Ycf6rbbbnMo8CJdCWq9++67Vi8K161bV2gCenf4448/rHauTJo0Sf379y8y8CJJQUFB6tq1q959913NmjWryPqzZ8+2CrwMHTpU8+fPL/TeSFdeQo4bN07/+te/zMrj4+M1f/78QtsmJCRo5syZZmUBAQF677339OSTT9r9prvBYNDgwYM1a9asgtwLli95PeG7776zGXj5+uuv7QZepCtr67PPPtPtt98uyfW5v/fee1aBl1q1amn+/Pl2Ay+SVL16dc2cOVN333231c8mTpzo0HzGjh1rFXhp1KiRFi9erMGDBxeZXyQoKEi9evXSp59+WvCy3tf8+OOPVoGX3r17a9myZeratWuhiddDQkI0YsQIzZw502wdp6enW615R1z9m9myZUstWLDAbuBFuhKYnjFjhlXupaNHj2rr1q1FjvXTTz/ZDLzMnTvXbuBFkkJDQ/Xyyy8XHHHmjWfSEVc/y9q1a2vBggWF7qAMDQ3V1KlTdfPNN5uVZ2RkaNWqVSU6TwAA4BiCLwAAAPCqxMREq3wDQ4YM0RNPPOFUP2PGjFHXrl3Nyhx5uW9LYGCgPvzwQ0VGRhZZNzIyUh9++KHVy/gffvjB7GgfexwNuNjy9NNPq2XLlgXXJpOp2LkbinLq1Cmz65CQEN11110u9VWuXLlCf37x4kXNnj3brKxHjx569dVXC325bKl///66//77zcq+/PJLq+OtrrVgwQKzXQGSNHz48IKgRFE6dOig5557zuE5uputoMG0adNUt27dItv6+/tr2rRpLn+bPzU1Vd99951Vnx999FGRuyqkKwGsKVOmWL2gt9WvpY0bN2rXrl1mZZGRkfr8889dOpLP1c+gJJlMJn388cdmZU2bNtUHH3ygoKAgh/u5+eab9fTTT5uVLV26VCkpKU7PqWLFivrPf/6jiIiIIusGBQXphRdesCq33A1ji62dcm+99Zbq16/v0DydeYa9JTAwUB988IFq1qxZZF2DwWC1E0dy7LMEAAAlj+ALAAAAvGrOnDlmL7nDwsL0/PPPu9TXqFGjzK737dtnM09IUYYNG+bwyzzpypn8w4YNMyvLycmx+ma6uxkMBt1zzz1mZdu3by/RMS1zYVSoUKHInQSuWrJkidLS0gqu/fz89Morr7jU19NPP20WsElKStLOnTtt1s3Pz7cKYkVERFi9qC7K0KFDnVpH7rJ7926rPCC33XZboTsSLIWEhLicr2bx4sUF3+C/6oEHHlCzZs0c7iMgIEATJ060Ki/qmDpbAdeJEyeqatWqDo/t63777TcdOnTIrOzll18uMu+ILcOHDy/IKyVd2Xmxfv16p/t56KGHVKNGDYfr33zzzVbHMtrKXXOtI0eOaNu2bVb9FLaTypbx48c7tEvPW/r166cWLVo4XL9hw4a64YYbzMqK+iwBAIBn+O7/4gAAAMB1wfJ4lL59+xaZi8Oedu3aFSRdv+ra8/QdZblLwhEDBw60KnPlJaazLHcy7N2712rHhjtZfrM9OTlZJ06cKJGxLNdG586dVbt2bZf6io6OttpJYW9tHDlyRElJSWZld955Z5E7dSz5+fkVmRulJNhad66s6V69eqlKlSpOt/v999+tyoYMGeJ0P506dbI60i8uLs4qyfhVmZmZ2rJli1lZzZo1HU7kXlpYPhf16tVTp06dXOorJCREN954o1mZK38zbf39K4y/v79VwODYsWOFtrE8flCSBgwY4NS40pW8Q126dHG6nae48qxeuwNSko4fP+6m2QAAgOIoma+oAQAAAA44ffq01c6Udu3audyfn5+fatSoYZbvYd++fbr33nsd7iMmJkYxMTFOj12/fn01atTI7Bvpe/bsUX5+vlPfss7KytLWrVt18OBBHT58WOfPn1dmZqYuXryo/Px8q/qW+VdycnKUkpLi0PFOrrDMs2IymfTPf/5T//3vf1061smenJwcq+OjirM2pCtHSB08eLDget++fTbr2doR0717d5fG7NGjh959912X2rrK8nMrX768VV4IR/j7+6tnz55asGCBw23y8vK0e/dus7KYmBirIIqj7rjjDqtdHtu3b7d5dNTWrVuVl5dnVnbXXXfJ39/fpbF9lWVwpG3btsXqz/JoNXvPhT116tRRtWrVnB63Tp06ZtcXLlwotL7lc2kwGHTLLbc4Pa4k3XrrrT55NFdISIhatWrldDvLzzIvL09ZWVlmu5oAAIDnEXwBAACA19g6ImvGjBn68ssvXe7z5MmTZtfXHlvlCMtvYzujefPmZi+Ks7KydOzYMTVo0KDItrGxsZo9e7bWrl1b7GTQGRkZJRZ8adasmZo3b272gnbv3r3q06eP+vbtq759+6pz584KCQkp1jixsbFWR1ctWbJEv/zyi8t9JiQkmF3bWxtxcXFWZc2bN3dpzJiYGAUHB1v9LiXJ8sihpk2buhyAcPZ5OHbsmFVA0JkjlCxZfqNfuvL72Qq+7Nixw6qsuAE7X5OYmGgVsN6wYYPV8YPOsNxJ5OzfTEfyCNlime8qMzOz0PqWz2XdunVd3iXpzBF4nlSjRg2Xjo+zlTssMzOT4AsAAF5G8AUAAABec/bsWasyy+BJcZ0/f96p+sXJ0WFrx0xqamqhwRej0agpU6Zo/vz5Nne2uKKob5AX16RJkzRs2DCzhPWXL1/W8uXLtXz5cgUGBqply5Zq06aNWrVqpY4dO6py5cpOjWFrbSQkJFgFUIrD3tqwLA8MDHQ5Z0hAQICio6M9dgyQyWSyennu7jVdGFsv7h0JPtpjq6294ICtRPGWR82VdomJiVZlycnJdo9ic4WzfzPDw8NdGscyV1Rubm6h9S3nZbljxxnFaVuS3PVZSirR4ycBAIBjCL4AAADAa5x9yecKZ3cc2PoGcXHaXnsEmiWj0ahnn31Wa9ascXlMW4p6iVlcbdq00SeffKLnnnvO5otwo9Go7du3m+1satCggfr06aO77rrLoRf63lwblvesOGtCksvfzndFZmamVRDP3Wu6MOnp6cXu41q2XkbbGsNeuWUOqNLO2V0prnD2b6YrOzVcYflcFue5Ku4zXVI89VkCAADPIPgCAAAAryksMOEtziZVL6ptVlaW3fqzZs2yGXipVq2aevXqpbZt26pOnTqqXr26QkNDFRwcrKCgILO6f/31lx566CGX5+yqLl26aOXKlfr888+1cOHCIl8KHzlyRB9//LFmzJih22+/XWPHjlXt2rXt1vfm2rh2R49U/BeilvesJNlab+5e086OX758ebeOb++ZsnVsVXHG9kW++DfTU9z5XHrymQQAANcvgi8AAADwmuDgYKuyWbNmqVu3bl6YzRUXL150a1t7Z+6npKTo008/NSsLCAjQ2LFj9eCDD9o8RsaW4uaHKY6IiAg999xzeuaZZ/THH39o06ZN2rp1q/bv32/3yBuTyaRVq1bp999/1wcffGA3YbatnDGvvfaaBg8e7NbfwRbLb8UXFkBzRFG5LNzJ1npz95p2dnzLHDDFHd/eM2VrJ0R2dnaZynth67l44okn9MILL3hhNp4VFhZmtiOuOM+lJ59JAABw/SL4AgAAAK+JjIy0KrN3pJCnFCdfiq229o49Wrt2rdWL5RdeeEGPPPKIU2N6+/OSrgSNbrnlloJASk5Ojnbv3q3t27drw4YN2r59u9VRaJmZmXrmmWe0dOlSmzlJIiIirMo89bta3rOsrCzl5OS4/G15TxyhdlVYWJj8/PzMjh5z95oujK1jwoozvq2dHvbyYthaMxkZGWUq+OKLfzM9JTw83OxZKs5z5clnEgAAXL/8vD0BAAAAXL9sJWE/c+aMF2byf4qTGP3YsWNWZZUqVbJZ9/fffze7Dg8P14MPPuj0mKdOnXK6TUkLCgpShw4dNGLECM2dO1cbN27UCy+8YBXUyM7O1vTp02324c21Ub16dbNrk8mkw4cPu9RXWlqazp07545pOcRgMFi9oLe1Lh119OhRp+rbWu9HjhxxeXxbn7utAIRke80cPHjQ5bF9UVRUlFWZt/9meorlc+nqMymVvXUBAAB8E8EXAAAAeE3r1q2tyrZs2eKFmfyfvXv3uq1taGiozV0dknT27Fmz61atWrmUw2Dnzp1Ot/G0yMhIPfHEE1qwYIHVLoTffvvNKpeDJLVo0UJ+fub/74qn1karVq2sylz9nHft2lXc6TjthhtuMLs+cOCA8vLyXOrL2eehXr16VnlWYmNjXRpbkvbs2WNV1qJFC5t127RpY1W2fft2l8f2RXXr1rXa4bN9+3aX729pYvlcZmRkuBzYKw1/NwEAQOlH8AUAAABe06RJE6tvcm/durXI5O0l6ciRIy7tFDh27JgOHTpkVtayZUurAMJVlr+jvaOUCpOamqq//vrL6XbeEhMTowEDBpiVXbx4USdPnrSqGxERYRVEOHr0aLG+7e6o1q1by2AwmJWtWLHCpb5++OEHd0zJKZZBzezsbKudVo7Iy8vT2rVrnWrj7+9v9ZL86NGjVs+Go1atWmVV1rZtW5t127dvb5UracWKFWUqMOHn56fOnTublWVnZ2vjxo1empHn2AquufJ85efn68cff3RpDv7+/jb7AwAAsIXgCwAAALzGYDCoZ8+eZmUXL17UV1995aUZXbFw4UK3tOnWrZvd+uXKlTO7diUHwTfffKPLly873c6bYmJirMrs5QTp1auXVdmnn37q9jlZCg8PV9euXc3Ktm3bph07djjVz8mTJ7V69Wp3Ts0httbdokWLnO7n119/VVJSktPtbr75Zquyb7/91ul+tm7dqri4OLOyJk2a2DxeTLqS78YyMHH69Gn99NNPTo/ty7z1XHjbzTffbBWkXrRokdM5hVasWGG189BRtvIHZWdnu9QXAAAo+wi+AAAAwKtGjBhh9W31WbNmeeW4pqvmzZunEydOOFz/xIkTmjdvnllZUFCQ7r33XrttqlSpYna9fft2p17iHTp0SJ988onD9X2FrZf59vLiPPjgg1Z5Yr7//nv9/PPPJTK3aw0ePNiqbNKkSbp48aJD7XNzc/Xqq6/aPFKtpLVq1cpq19Dq1av1559/OtzH5cuX9e9//9ul8fv376/g4GCzsm+//VYHDhxwuI/c3Fy9+eabVuXDhg0rtN0TTzxhVTZ58mSP5t0paXfeeafq1q1rVrZ161bNmTPHOxPykJCQEP397383K0tOTtbUqVMd7iMpKcnldS3Z3qHoi3m3AACAbyD4AgAAAK+qU6eO7rvvPrMyo9GoUaNGuZyvIS8vT//73//0/vvvu9Q+JydHo0ePVnp6epF109PTNXr0aKuX7P369bMbVJCkDh06mF1nZ2fro48+cmh+8fHxeuqpp7zyYn/OnDkuHWElSZmZmVq2bJlZWcWKFVWjRg2b9StUqKDHHnvMrMxkMunFF1/UL7/84tIcJGndunWaNGlSoXVuvfVWqwDGwYMHNXLkyCK/aX/58mWNHTtWf/zxh8tzLK6HHnrIqmzs2LEOvSjOy8vTiy++aPM4OEdUqlTJ6iV5bm6unnnmGYeCICaTSa+88opVsCYqKkp33313oW07d+5s9WylpaXpsccec2m3Q3x8vNNtSlpAQIDGjBljVT5t2jSXdhhdtX37dj3//PPFmVqJGz58uFVOocWLF2vatGlFHv+VmJioRx55RMnJyS6P36h5Ttk4AAAgAElEQVRRI6uydevWudwfAAAo2wi+AAAAwOvGjRunxo0bm5UlJyfroYce0rRp0xw++ujAgQN6//33ddttt+m5555z6pv2V139xn5cXJyGDBmi3bt32627e/duDR061OpopEqVKmns2LGFjnP77bdb5YOZPXu2PvjgA+Xm5tptt2LFCg0aNKjgJXpYWFih47jb5s2b9eijj6pfv36aOXOmwwmvDx06pEceeUSnT582K+/bt68CAwPttnv88cfVpUsXs7Ls7GyNHj1aEydOdPhb58ePH9fMmTPVr18/jRgxQtu2bSu0vr+/v9566y2ruf3555/q27evvv76a6WkpJj9LD09XcuWLVO/fv0KckpUrFjR5lFrJe2ee+5Rp06dzMrOnTunoUOH6rfffrPb7syZMxoxYoRWrlwp6cpuA1c899xzqlatmlnZiRMnNHjwYG3atMluu8TERD311FNWQTpJeuONN6x21Njy9ttvWyWlj4uLU//+/bVgwYJCny/pSvD1119/1ciRI/Xwww8XOZ433HXXXVZB69zcXE2aNEljxoxx+G/f2bNn9eWXX2rgwIEaPHiw0zl+PC06Otrm39bPPvtMAwYM0OrVq612p8XHx2vmzJnq27dvQc4oe3mDihIREWH1PC9dulRz5sxx+vgzAABQ9gUUXQUAAAAoWaGhoZoxY4YeeOABs28lG41GffbZZ/ryyy/Vtm1btW/fXtWrV1d4eLiMRqMuXLigpKQkHThwQLGxsS7lp7D0+OOP64svvlB2drYOHz6sgQMHqn379urWrZuqV68u6coLyw0bNmjr1q0ymUxm7Q0Gg1577bVCd71IUv369XX33Xdr+fLlZuUzZszQsmXL1KdPHzVp0kTly5dXenq6jh07prVr15rtRihXrpxeeOEFvfbaa8X+vZ116NAhvf/++3r//fdVs2ZNNW/eXE2bNlVUVJQqVqwof39/ZWZm6uTJk9q6dau2b99u9VlFRETY/Ab/tQICAvTBBx9o0KBBOnr0aEG5yWTSwoULtWTJErVo0UIdOnRQrVq1FBERofz8fGVkZCg1NVVxcXGKjY21Cvo4omnTppo4caImTZpkNvekpCS98cYbevPNNxUVFaWIiAilp6crNTXVKrn766+/rvnz55vN3TLoVhIMBoPeeust3XfffcrIyCgoT0xM1JNPPqlmzZqpZ8+eqlWrloKCgpSUlKTNmzdr48aNZjuqnnnmGb399ttOjx8REaG3335bjz32mFmwIz4+XsOHD9cNN9ygW2+9VTVr1lRwcLCSkpK0ZcsWbdiwwWYeo6FDh6p3794OjV2zZk1NmzZNo0aNktFoLChPTk7Wq6++qg8++EBdunRRixYtFBkZqeDgYF24cEEJCQnat2+ftm3bVvAivWbNmk7/7p7y+uuvFzxf11q9erVWr16tpk2bqmPHjqpXr54iIiLk5+enjIwMnT9/XocOHVJsbKxOnDhh9Vz6usGDB2vHjh36/vvvzcr37t2rMWPGKDAwUFFRUQoNDVVKSopVPq2KFStqypQpuuOOO8zKHX0u+/fvr2nTphVc5+XlacqUKZo6daqqV6+uChUqWPU1aNAgm0cZAgCAso3gCwAAABxiMBhKtP9atWpp8eLFevbZZ63yvRiNRm3evFmbN28u0Tlcncc777yjMWPGKC8vTyaTSVu3brV6wWmLwWDQ66+/rj59+jg01iuvvKLdu3ebvZiX/u/b6IUJDAzU9OnTXd6Z4E6nT5/W6dOnncrFUrFiRX300UdWuW9sCQ8P17fffqsXX3zRatdGXl6edu3aVWI5gh544AEZDAZNmjTJ6lgjk8mk5ORkm8cYGQwGTZgwQXfeeafmzp1r9jNP7VaqXbu2Zs+erUcffdTqW/n79+/X/v37C23/+OOPq0+fPi4FX6QrR4B9/PHH+sc//mGVz2jv3r3au3evQ/0MGzZMEyZMcGrsbt26afbs2XrmmWesXr6npqZqxYoVWrFihVN9+pqgoCB9/vnnev3117VkyRKrnx84cMCl3X++zmAw6N///rf8/f1t7pAyGo12j5irWLGiZsyYodq1a1v9zNHncujQoVq+fLkOHTpkVm4ymZSQkKCEhASrNsU56gwAAJReHDsGAAAAK7ZyiVies18SoqOjNW/ePI0aNUoVKlQoVl8NGjRQ3759XWrbq1cv/fe//7VK9l6YiIgIvfPOO3rggQccblOhQgXNmTNHbdq0cWp+VatW1RdffKHu3bs71c4dKleuXOw+2rdvr/nz56tjx44OtwkPD9fMmTM1YcKEYs+hZs2aVkc2FWbgwIFauHChVQ4Ye2rXrq3PPvusIO/KtTtPJBV7bTujVatW+vLLL23mqrDH399fzz77bJFH5zmie/fumjdvnlq0aOF024iICL322mt65ZVXXNotdOONN2rRokXq0aOH022vioqKcrmtJwQHB+utt97StGnTbAYUnBEVFVVqdmf4+flp6tSpevfddx0K4Er/tx46dOhg9UxKjj+X5cqV0+zZs9W1a1en5gwAAK4/7HwBAACAlUuXLlmVhYaGemTsoKAgPfvss3r00Uc1f/58rV27Vnv27CkyT0NgYKBatmypLl26qEePHmrZsmWx5nHrrbfqf//7n2bOnKnvvvtOmZmZNutVqlRJd955p55++ukijxqzpVq1apo3b54WLlyoL774otAcJjVr1tSAAQP00EMPeTzXy1VvvPGGnnzySf3222/666+/tHPnTiUmJhbZLiQkRN27d9e9996rW2+91aWxDQaDHn74YQ0aNEhLlizRypUrtXPnTpvHVF3Lz89PzZo100033aTu3burY8eOTu/katmypRYvXqzNmzdr1apV2rFjh5KSknT+/HkFBwcrOjpaN9xwg3r16qXevXvL39+/oK3lt97Dw8OdGru4brjhBi1btkxffvmlFi1apOPHj9usFxgYqB49emjUqFFq3ry5W8dfvHixfvrpJy1atEhbt261GeC9qmHDhurTp4+GDx9e7EBVnTp19Mknn2jXrl2aO3eufv/9d6WmphbaJioqSl26dFG/fv3UrVu3Yo3vKXfffbf+9re/6ccff9T333+vbdu2KSsrq8h2DRs21E033aRbbrlFXbt2VUBA6XpF0K9fP/Xq1Uu//vqrfv75Z8XFxSkpKUlZWVkKCwtTrVq11K5dO915551meV5sHVHpzHNZrVo1ff7559q7d69Wrlypffv26dixY7pw4YKys7OL/PcKAABcHwym0nbAKwAAAErc+vXr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3u/9Xlx00UUt/bMBDl6plBK+FKamgLKjmBy+DKl8AQAAAGAWymT40t/fHzfccEPcc889E773iSeeiD/+4z+Ob3/72/E3f/M3ceSRR87ACas9++yzcfXVV8dTTz1V933lcjk2btwYGzdujCuuuCKuv/76KBaLk9pz586d8clPfjJ++tOf1n1fpVKJhx56KB566KG48MIL43Of+1x0d3c3vd/u3bvjz//8z+P73/9+Q+8vl8tx//33x/333x9nnXVWfO5zn4sTTjih6X2BbBhJmfnSXpya8GXv3JeRmnVtxwAAAACYjTI386W/vz9Wr17dUPByoAcffDAuv/zy2LFjxzSdLNmWLVvisssumzB4Ge/222+Pa6+9NkZHR5vec/v27fHBD35wwuBlvHvuuSdWr14d/f39TV23a9eu+O///b83HLyM9/DDD8cHP/jBeOaZZyZ1PdBaY5VKjKa2HTv4mS8RER0pIc6QtmMAAAAAzEKZq3y58cYbY/PmzVVrS5YsiVWrVsV5550XRx99dOzYsSMefvjhWLt2bWzZsmX/+5577rm4+uqr4/bbb4+2tun/1vr6+uKqq66KXbt2Va0vX748Vq1aFcuWLYtDDjkktm7dGvfee2/cfvvtsXv37v3vW79+fXzxi1+M6667ruE9R0dH45prrqlpbfamN70pVq9eHWeeeWYsXLgwtm7dGg888EDcdtttsXXr1v3v27x5c9x4441xyy23NLzn//pf/yuefPLJqrWOjo543/veFxdccEEsXbo0enp6YmBgILZs2RI/+clP4lvf+lb09fXtf/+rr74aH/vYx+IHP/hBdHZ2Nrw30HqllKqXiIj2KZj5EhHR0Z4c4owIXwAAAACYhTIVvmzYsCHuvvvuqrVzzz03vvzlL8f8+fP3ry1YsCBOOumkWLlyZfzRH/1R1TWbNm2Kb37zm3HFFVdM+3m/9KUv1YQgq1atiuuvv75qxsmhhx4ap556arz//e+PK6+8Mp5++un9X/v6178eF198cZxyyikN7blu3brYtGlT1dp73vOe+PznPx/t7e371xYsWBAnn3xyvO9974tPfOITVVUyd999d/z4xz+Od73rXRPu96Mf/Sjuv//+qrUlS5bEmjVr4k1velPVend3dyxcuDD+03/6T/GhD30oPvaxj1VVBL344ouxdu3a+PjHP97Q9wpkQ73wpThl4Uvyx5GZLwAAAADMRplpO1apVGqqMZYsWRJf+cpXqoKXA7W3t8cXv/jFWLZsWdX6V7/61RgcHJy2s0ZEbNu2Le64446qtQsuuCBuuOGG1OHyRx99dKxZs6Zq5krS951mcHAwvva1r1WtnXbaafHXf/3XVcHLgRYsWBBf/epXY/HixVXrt9xyS1QqlQn3/O53v1v1Op/Px9///d/XBC/jLVmyJP7hH/4h5s2bV7X+ve99b8I9gWypV33SXpyatmOdKfcx8wUAAACA2Sgz4cv69evjiSeeqFq76aaboqenp+51hUIhbr755qq1HTt2xLe+9a0pP+OBbr311hgeHt7/urOzMz772c9OeN3ixYvjmmuuqVrbsGFDzfee5M4776yZaXPzzTdHoVD/l589PT3xmc98pmrtF7/4Raxfv37CPR944IGq1+94xzvizW9+84TXRez9XleuXFm19stf/jJ27tzZ0PVANpRS5r1ETGXbseT7DGs7BgAAAMAslJnw5Yc//GHV62OOOSbOP//8hq5985vfHG9961ur1sa3L5tKlUql5v4XXXRRLFq0qKHrL7300pqKkPHff5Lxe55zzjlx6qmnNrTnihUr4phjjql7v/F6e3tjYGCgau3ss89uaL8Dzzje9u3bm7oH0FqlUnr40jZV4Usxue3YcKncUJUeAAAAAGRJJsKXUqkUP/nJT6rWVq5cmdq+K8l73/veqtePPPJI/PrXv56S843385//vCZAuOSSSxq+vqenJy644IKqtQ0bNtS9ZufOnbF58+ZJ75nP5+Piiy+uWtu4cWOMjo6mXjM+eInYO7+mGUnvL5VKTd0DaK2ROjNfpq7yJbmCr1Kpvz8AAAAAZFEmwpdHHnkkent7q9bOPffcpu7xtre9rer12NhY3HfffQd9tiQbN26sel0sFuOss85q6h7jv7+nnnoqXn755dT3//M//3OMjVX/AnL89zyR8e9/7bXXYtOmTanvP+ywwyKfr35EXnvttab2THr/kUce2dQ9gNYqjdaZ+dI2NTNfOorpH0fmvgAAAAAw22QifHnyySerXhcKhVi+fHlT9zj++ONrfqk//r5T5amnnqp6vWzZsujo6GjqHklhzfj7Hmj897Jw4cI47rjjmtrz9NNPr5kPU2/P9vb2WLp0adXaQw891NSe499/1FFH1bQ/A7ItrfKkkM9F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WBEXXnhh3HPPPfvX/vVf/zUuvvjiWL16dZx33nmxaNGi2LlzZzz88MOxdu3aeOaZZ6ruceaZZ8Zll102I+f9H//jf8S9994bL7zwwv61r3/96/Hwww/HqlWr4rTTTosFCxbE1q1b4957743bb789du3aVXWP1atXxymnnNLwnh/84Afj+9//fjzyyCP7177//e/Hk08+Gb//+78fZ555ZhxxxBGxbdu2uP/+++O2226rCV4uvPDCeNe73tXQftddd1387Gc/q2qTtmnTprjooovi0ksvjXe9611x0kknRU9PT/T398ezzz4b9913X9x5553x2muvVd2rvb09brzxxoa/VyAbSikzX4rTMfOlIy18UfkCAAAAwOyRqfAlIuIv//IvY+vWrfHoo4/uX3vppZdq2mYlOf744+Pv/u7v6g6Rn0o9PT3xla98Ja644orYvXv3/vVHHnmkpoonyYoVK+JTn/pUU3u2tbXF3/3d38UVV1wRzz///P71p59+Om644YYJrz/99NPjL//yLxveb+nSpfG3f/u38Yd/+IdRKpX2rw8MDMQ//uM/xj/+4z82dJ9CoRB/9Vd/FWeccUbDewOtNzZWidFycjXfjLYdGxa+AAAAADB7ZKbt2D49PT2xdu3a+J3f+Z2mrjv77LNj3bp1sWjRomk6WbKlS5fGunXrYunSpU1dd/nll086KDrqqKPijjvuiLe+9a1NXffud7871q5dGz09PU1d91u/9Vuxbt26eOMb39jUdfscc8wx8Y1vfCP+y3/5L5O6HmidtHkvERHF4sy1HRsulWNsLDkEAgAAAICsyVzlS8TeAOZLX/pSrF+/PtasWRObNm1Kfe/JJ58cq1evjksuuWTCGSbT5cQTT4zvfve7cccdd8Q3vvGNqjZkB8rn8/H2t789rrrqqjj77LMPas+FCxfG//k//yf+6Z/+KdauXRtPPvlk6nvPOuus+MhHPhIrVqyY9H5vectb4nvf+1788Ic/jDvvvDM2b94co6PpMxjy+XwsW7YsPvCBD8Tv/u7vRmdn56T3BlpnJKXlWERE+3S0HUsJXyL2BjBt01BtAwAAAABTLZPhyz7nn39+nH/++bFt27bYvHlzvPTSSzEwMBCdnZ2xePHieMtb3hLHHXfcQe1RL7RoRrFYjA9/+MPx4Q9/OJ5++un4t3/7t9i+fXuUSqXo7u6O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vj0effTRePHFF2NgYCA6Oztj8eLFcdppp8Vxxx3X6uPV2LJlSzz++OOxY8eOGBkZie7u7jj++OPjjDPOiEMPPXRa9nzhhRfisccei61bt8bQ0FDMmzcvjj322Dj99NNj0aJF07LnPv39/fHYY4/Fc889F7t3745yuRxdXV1x1FFHxRve8IZYunRpFIvFaT0DMDXKKeFLLrLZdiwi4vAFHfHrPbVVLsIXAAAAAFol0+HLhg0bYs2aNbFp06aopMwhOOWUU2L16tWxcuXKyLXwF4OlUinWrVsX3/jGN+L5559PfE+hUIi3v/3t8bGPfSzOPvvsg96zUqnEXXfdFWvXro0nnngi8T25XC7OOuusuPLKK2PFihUHveeBe69fvz7WrVsX//qv/xqlUvpg646Ojli+fHm8853vjMsuuyzmz58/ZecAptZYyn9rs1j1ss9h85MrX1418wUAAACAFslk+NLf3x833HBD3HPPPRO+94knnog//uM/jm9/+9vxN3/zN3HkkUfOwAmrPfvss3H11VfHU089Vfd95XI5Nm7cGBs3bowrrrgirr/++klXhOzcuTM++clPxk9/+tO676tUKvHQQw/FQw89FBdeeGF87nOfi+7u7kntuc+WLVvihhtuiM2bNzf0/uHh4XjwwQfjwQcfjHPOOSfOOOOMg9ofmD5pbceyHL4cPr8zcX2XmS8AAAAAtEjmZr709/fH6tWrGwpeDvTggw/G5ZdfHjt27JimkyXbsmVLXHbZZRMGL+Pdfvvtce2118bo6GjTe27fvj0++MEPThi8jHfPPffE6tWro7+/v+k997n33nvjfe97X8PBCzC7pIUvaUPtsyC18kXbMQAAAABaJHOVLzfeeGPNL/aXLFkSq1ativPOOy+OPvro2LFjRzz88MOxdu3a2LJly/73Pffcc3H11VfH7bffHm1t0/+t9fX1xVVXXRW7du2qWl++fHmsWrUqli1bFoccckhs3bo17r333rj99ttj9+7d+9+3fv36+OIXvxjXXXddw3uOjo7GNddcU9Pa7E1velOsXr06zjzzzFi4cGFs3bo1Hnjggbjtttti69at+9+3efPmuPHGG+OWW25p+vv90Y9+FNdee22Uy+Wq9be//e1xwQUXxJlnnhlHHHFEzJs3L3p7e+OFF16If/u3f4v77rtvwtZkQDakth3L6LyXiL0z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O5bPRSxoa44Fbc0REdHYWIiWlsbEP52L26K9tSnxPgeOnEy9LukPAAAAAPWjasKXjRs3jplr8oUvfCFOnBg7yPi1isVifPazny1bW7JkSXzwgx+c0HPXrl1b9uc3f/M3J3TdRz/60Whubj59fPLkyfj85z9/xusOHDgQX/3qV8vWNmzYEBdddNEZr/3Qhz4UixcvLlu79dZbx8xxGa23tzduv/32srULL7wwNm7ceMZnAvWrKHyZFqs75yWu7zrYU+GdAAAAAFAtqiZ8yeVycdNNN5Wt7d27N2688cbo7U0eXDw4OBi/93u/F88++2zZ+g033BBz5syZsb1GRHR2dsY111xTtvbII4/El770pSilzFA4cOBAfOxjHyv7eXK5XHzyk5+c0DPnzJkTN9xwQ9nali1b4tOf/nQMDibPFujp6Ykbb7wx9u3bV7Z+0003TbilG1CfxgtfClXz6TC7nt3xSvz05SPx/O6jqX/aWpOrVrbtPjbuda/+AQAAAKD+VNXXaxs2bIgrr7yybO3HP/5xXHXVVfHtb387Xnjhheju7o4XX3wx/uEf/iE2bdoUDz/8cNnrL7vssrj66qsrst+Pf/zjsXLlyrK1b33rW3H11VfHD37wg9i9e3ccP348tm7dGnfeeWe8//3vj23btpW9/vrrr48LL7xwws/88Ic/HOvXry9b+/73vx8f+MAH4oEHHoiXXnopuru7Y/v27fHXf/3XcdVVV8Xjjz9e9vorr7wy3vnOd07ypwXqTbE4knouL5ydsM6OuYnrh46dHPd3DAAAAED9Sp62Pou++MUvxv79+2PLli2n1/bu3TumbVaSVatWxde+9rXUIfLTra2tLe6+++649tpr49ixY6fXn3766TFVPEk2bNgQn/rUpyb1zIaGhvja174W1157bezatev0+vbt2+Pmm28+4/WXXnppfPGLX5zUM4H6pO3YxO052JP6+xoZSQ5YRkZKseWFV2Jhe8uYc4V8LlaktCsDAAAAoPZVVeVLxKlA45577ol3v/vdk7ruzW9+c9x///2xdOnSGdpZsjVr1sT9998fa9asmdR111xzzZSDos7OzrjvvvviTW9606Suu+KKK+Kee+6Jtra2ST8TqD/DReHLRBVHSjGS8mfe3KZI+3UdPt6feM14wRcAAAAAta/qwpeIUwHMnXfeGXfddVdcdtll4752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UNccaz8XwKqqG3x6bVdNwm3eTKeuPHdKimcEAEgFu83QnKkFmjO1QJ9YNlmH69pVXd+u5rYutbQF1NwW0HF/UCat+Cyjsyuszq6wjjV1mO5jM4zuICbHrYITYUxetutED5uMnq+ZGWn1zyAAAAAAFpQ2/+qIxWJ9VmOUl5fr4YcfltebuH+By+XS/fffryNHjmj37t0944888og+97nPKTMzc9TmW1dXp9/+9rdxYytWrNAdd9xhekxpaal++ctf6tOf/rT8fr+kk6/74YcfHvCanZ2devTRR+PG5s2bp/vuu092uz3hMTk5OXrkkUd01VVXxa2AeeCBB3TJJZcMWE97rP1cACv777/tN72xtuqCadxIAoBxwG4zNK0sRzbFVFF0soxsJBqTryOk9o6g2juCausIqd0flK8zrGAookAoomjU4umMpGgspub2LjW3d2l/P/u5XXYVnAhoCnIyVJDtVn5OxiljbmU4E//9GgAAAAAGI23u1G3YsEGVlZVxY3fddZfpDf6P2O123X333br66qt7xhoaGvTMM8/ohhtuGJW5StKvfvUrdXWdbE7qdrv1/e9/f8DjysrKdMstt+hHP/pRz9jGjRtVWVk54OqXp59+Wg0N8YW27777btPg5SNer1f//M//rH/8x3/sGduzZ482bNigFStW9HvsWPu5AGOd2524nv3uA016d39Twm2lBVm6/GNT5LDbBjy/88SNJLtt4H0BAOnrowb3HzEkZWc5lZ3llJS4t184ElVXKKJgKKKu4Cn/PxRRMByV2+XQcX+Xmo93qa0jqJBJmUsrCAQjOtbo17FGv+k+3kynCrIzlO1xKTvTKW+mU96sE18znd1jWS55M53KcjukmBSJRhWJxnp+PpFTH5GoorGYIpFE26Nxzz+6fk6WSzkel7KznIP6cx4AAABA+kib8OWFF16Ie15RUaHLLrtsUMeeddZZOvvss7V169aesfXr14/aTf5YLNanDNcVV1yhkpKSQR1/zTXX6IEHHlBHx8mSCS+88MKA4Uvva55zzjmaM2fOoK65fPlyVVRU6OjRo3HnGyh8GUs/F8CqotGYfvvXvabbr10xkxsyAIABOew2Oew2eRIE/Q6HTYtndf9dtqWtS7FYTB8eaVF7Z0gdgXD3oyusrmBEhiEZhiGb0V3myzAM2Wwnx4wTY1L335slyWYzVFbk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pLy8PK/rV6xYUSNHjlT37t196t9ms2natGl6//33lZOT41GdunXrasqUKbryyit96lOSPv/8c7366qvKyMjwaP2qVatq4sSJuuWWW3zuE8HHZrOpd+/e+vHHHx1+5mvyhZiGP+3bt08vvviitm/f7nXdTz/9VG3btvVoXeIapSklJUWvvPKKvvzyS6/rXnXVVXrjjTfUqFEjr+plZ2frjTfe0Ny5cz2uc8UVV+jdd9/1uq8CgTqO4L1Zs2YV3sA7fPhwseubeUOvPMUm53j/8WdMHz58WK+99pq+++47tw+EuBIWFqZhw4bp73//u0JCfJ+hIRDx9c0332jEiBFOb7g7ExUVpZdeesnn79LlXSDP1cV59tlnXV7XlCT5QlyXDHO+AChWWlqa+vXr51XiRZI2btyoRx55xCHzDyQlJWnDhg0+JV6k/JgcNWqUxowZ41P9l19+WVOmTPH4i54kHTt2TI8++qg2bdrkU58fffSRXnrpJY8vWKT8G0MJCQlatmyZT30iOM2bN89p4qUkiGn4y6pVq9StWzefEi/eIq5RWs6ePavHHnvMp8SLJG3ZskUPP/yw9u7d63GdnJwcPfXUU17d3Jak3bt36+GHH9a+ffu83UxJgTmO4Jvx48dr6dKlHt3MM1N5ik3O8f7lz5j+7bff9PXXX/uUeJHyE5BvvvmmnnjiCa9isqhAxNfSpUs1ePBgj29QS9LFixc1atQozZw506c+y7tAnauLs3btWp+va9whrkuOYccAFGvkyJEON1nq1q2rvn37qn379qpdu7ZOnTqlLVu2aNasWYYL8IMHD2ro0KFKTExUaCinHLjWsGFD3XDDDWrXrp2aNGmi6tWrKyIiQqdOndLWrVv12Wefadu2bYY68+fPV/Xq1TVs2DCP+5k7d64++eQTQ1mFChXUq1cvdenSRfXr11daWpp2796txMRE/b//9/8K18vIyNCQIUO0aNEir15L//rrrzV58mRDWVhYmLp27aoHH3xQjRo1UnZ2tvbv36/58+frq6++KhzWLy8vTyNGjCgcbx5lW3Jyst58801T2ySm4S8rV67UU0895TAUzY033qhOnTopPj5e1atXV4UKFXThwgUdPnxYP//8s9atW1fs0GT2iGuUpn/84x8OT4BGRESoW7du6tSpk+Li4hQdHa309HTt27dP3377rT777DOlpqYWrn/mzBk9/vjjWrp0qSIjI4vt880339Tq1asNZTExMerTp486deqkOnXqKCUlRUlJSZo9e7Z27Nhh6CshIUELFy5UdHS0x58zEMcRyp7yEpuc48uf2NhY3XjjjbruuuvUvHlzVatWTRUqVNDZs2e1fft2LVy4UN99952hztdff61Ro0ZpwoQJXvUViPjauXOnXnjhBcMDjSEhIercubN69eqlxo0by2q16sCBA1qwYIGWLFliuBabNGmSGjdurNtuu82rz4rgk56errFjx5reLnFtDoYdA+DWmjVrNHjwYENZu3btNHXqVKdjtmdlZem5557T8uXLDeWjR49Wnz59SnVbUXbMmzdPY8eOVWhoqO6++2716NFD7dq1K7bep59+qldeecXwxzU0NFSLFi1SXFxcsfVPnz6tTp066eLFi4VlsbGxmjlzpsv6H3/8sSZOnGiY4+jOO+/UO++8U2x/kpSZmak77rhDycnJhWWVKlXS1KlTXX7mpUuXasSIEYbP2apVK33xxRce9Yng9eSTT2rVqlWSpMjISLVq1UqbN28u/Lm3w44R0/CXffv2qVu3boan3ho3bqyXX35Z1157bbH1z507py+++EK33nqrGjdu7HZd4hqlaeXKlRoyZIihrG7dupoxY4aaNm3qst6xY8f0+OOPa/fu3Ybyp59+2uFa2d6vv/6qrl27GuIzLi5OM2fOVGxsrMP6NptNb7zxhv79738byvv3768RI0a47atAII4jlEyzZs0MyxUqVFCrVq3UqlUrtW7dWs8884zh52YMZVNeYpNzfGD4M6bXrl2rgQMHymKx6LbbblPPnj110003FTv596pVq/T8888rLS3NUD5z5kx16NDBo74DFV/dunXTzp07C5fDwsI0ceJE3X333U7X37Bhg5588klduHChsCw2NlYrV65URESEx/2Wd4E4Vxfn9ddfLzwvWywWtW/fXt9//71hHW+HHSOuzcOwYwBcstlsmjJliqGsbt26mjZtmsvJcsPDw/XWW285ZLY/+OADwwU2yreQkBDde++9WrZsmSZNmuRR4kWSevbsqXHjxhnKcnJy9P7773tU3z4OrVarpk6d6jZx079/fz366KOGsq+++spwQeDOJ598YrhgkfJfVXb3me+55x4NHz7cUJaUlKSVK1d61CeC04oVKwoTL5I0ePBg1a9fv0RtEtPw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hx/2qE+UL8S1eSw2byZwAFAuDRs2TCtWrDCU1atXT/369VP79u1Vq1YtnT59Wlu2bNGsWbMcLpzj4+OVmJio0NBQf242gti//vUvffDBB4ay0NBQPfzww4qMjPSpzZYtWzoMledMYmKiXnnlFUNZxYoV1atXL91999267LLLlJ6erl27dikxMVHfffedYd2qVatq4cKFqlu3rsfbtmbNGg0ePNhQFhYWpm7duqlr165q1KiRsrOztX//fn366adavny54fXa8PBwzZ8/n5sff0IvvPCCYfzyevXqeTy8YwFiGv6wcuVKh/Gjw8LC1KNHD911111q3LixIiMjdfLkSf3www/6z3/+4zCXV82aNbVw4UK382MUIK5RWvbs2aOHHnpI6enphvIKFSqoe/fuuu2229SkSRNFR0crLS1NBw4c0Lp16/Tpp5/q3Llzhjrh4eGaM2dOsQlFKf/mwccff2woq1atmh599FF17NhRderU0blz55SUlKTZs2c7JHkaNGighQsXKjo62uPPGojjCL5LSkpye4NpxowZhuWrrrpKV199tdN1K1eurEGDBnnUb3mJTc7x/ufPmP7ss880evRoh/IePXqoatWqHm6xUf369R3e1HIlEPGVlJSkXr16Gd4wDgkJ0V133aWePXuqcePGslqtOnDggBYuXKhFixYZ1rVYLJo2bZrDG3BwL1Dnam+8++67eu+99wxlu3bt8rod4tocJF8AFCs1NVX9+vVzGB7KEw0aNNDcuXNVq1atUtgylFX2N5zN8OCDD7qcmNze2LFjNW/ePK/7iIyM1IwZM9SuXTuv606fPl1vvvmm1/VCQkI0efJk3XPPPV7XRfAzI/kiEdPwj5kzZ2rixIk+1Y2JidH06dN15ZVXelyHuEZp+fbbb/Xkk086DInnDavVqsmTJ+vuu+/2aP2cnBwNGTLE6zlmpPzjJzExUU2bNvW6biCOI/hmwYIFevHFF01py5vrifIUm5zj/cufMe3sZnNJtWvXzuN5LqTAxNeXX36p5557Tnl5eV7XHT58uMPQUiheoM7V3jAr+SIR12Zg2DEAxYqOjtasWbO8fsX6mmuu0bx580i8IOiMGTNGQ4cO9Wp4szp16ug///mPzzchBg0apFdffdWrN3uqVKmiqVOn8kUPxSKm4Q8DBgzQxIkTvZ54u2XLlvr888+9SrxIxDVKzy233KJ58+bp8ssv96l+vXr1NGfOHI8TL1L+G77vvvuu18NgxMXFaf78+T7d3JYCcxyhbClPsck5HqUpEPF177336v3331eVKlU8rhMZGalXX3016G5QIzgR1yVH8gWAR6Kjo/Xee+9p6tSpio+Pd7tus2bNNH78eCUmJqpGjRp+2kLAcxaLRUOGDNGCBQt01113uZ2IrWbNmho6dKiWLl2qNm3alKjfHj16aOnSperevbvbOZCqVKmivn37avny5UH1uiyCFzENf3nggQe0YsUK/e1vf3P7hSgkJERt2rTRW2+9pS+++EL169f3ui/iGqWpdevWWrJkiSZOnKirr7662OFxQ0JC1Lp1a7366qtatmyZyyFE3AkLC9PYsWM1d+5cdejQQSEhrr+O169fXyNHjtTChQvVqFEjr/sqEKjjCGVLeYpNzvEoTYGIr44dO2r58uXq27evKleu7HK9qKgode/eXUuXLlWPHj1K1CfKF+K6ZBh2DIBPkpOTtX37dh09elTp6emKjIxUnTp11Lp1a59usACBlJqaqq1bt+rgwYO6cOGCrFarqlevrubNm6tFixaGiUjNkpmZqW3btmnfvn06f/68LBaLYmJiFBcXp9atWzNHEkqEmIY/5ObmKikpSXv27NGZM2dks9kUExOjmjVrKj4+3ucx1l0hrlGaLl68qJ07d+rQoUM6f/680tPTVaFCBVWqVEl169ZV69atvZrTwhNnz57Vtm3bdOjQIaWlpSksLEy1atVSy5YtfX6boDiBOI5Q9pSX2OQcj9IUiPjKycnRjh07tHfvXp09e1Y2m02VK1dWkyZN1LZtW0VERJjeJ8oX4tp7JF8AAAAAAAAAAABMxLBjAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYCKSLwAAAAAAAAAAACYi+QIAAAAAAAAAAGAiki8AAAAAAAAAAAAmIvkCAAAAAAAAAABgIpIvAAAAAAAAAAAAJiL5AgAAAAAAAAAAYKL/D1c5bKBShEokAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pickle\n", "base = '/home/gezi/temp/ai2018/sentiment/tfrecords/word.jieba.ft'\n", "valid_infos = pickle.load(open(f'{base}/info.pkl', 'rb'))\n", "lens = [len(valid_infos[key]['content']) for key in valid_infos]\n", "sns.distplot(lens)\n", "plt.title('Jieba seg doc length')#标题\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABl8AAARZCAYAAABE7xa4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xd4VHX6///XpBFIII0WQpcOUqRIEZCilA+iCKsgokSlWGBdXRBRRJEVu6CuoFjQSJMmwlcBpaMovYUSeg0hISEhhdT5/eGPLGdKMjOZFMLzcV17XXvuOe8yw5yT3XPP+32bzGazWQAAAAAAAAAAAHALj+KeAAAAAAAAAAAAQGlC8gUAAAAAAAAAAMCNSL4AAAAAAAAAAAC4EckXAAAAAAAAAAAANyL5AgAAAAAAAAAA4EYkXwAAAAAAAAAAANyI5AsAAAAAAAAAAIAbkXwBAAAAAAAAAABwI5IvAAAAAAAAAAAAbkTyBQAAAAAAAAAAwI1IvgAAAAAAAAAAALgRyRcAAAAAAAAAAAA3IvkCAAAAAAAAAADgRiRfAAAAAAAAAAAA3IjkCwAAAAAAAAAAgBuRfAEAAAAAAAAAAHAjki8AAAAAAAAAAABuRPIFAAAAAAAAAADAjUi+AAAAAAAAAAAAuBHJFwAAAAAAAAAAADci+QIAAAAAAAAAAOBGJF8AAAAAAAAAAADciOQLAAAAAAAAAACAG5F8AQAAAAAAAAAAcCOSLwAAAAAAAAAAAG5E8gUAAAAAAAAAAMCNSL4AAAAAAAAAAAC4EckXAAAAAAAAAAAANyL5AgAAAAAAAAAA4EYkXwAAAHBTmDBhgho2bJj7n+7duxf3lIBS7dy5c4ZrrmHDhlq6dGlxT6vUWLp0qdXne+7cueKeForIsGHDDP/2w4YNK+4pAQAAN/Mq7gkAAACgdDCbzTp58qTOnDmj6OhopaSkKCMjQ35+fgoICFBAQIDq16+v6tWrF/dUAQAAAAAoVCRfAAAA4LLU1FStXr1aa9as0fbt23X16tV82wQFBalFixa699571atXL/n7+xfBTAEAAAAAKDokXwAAAOC0lJQUzZ49W/PmzVNiYqJTbRMSErRhwwZt2LBBU6ZMUa9evTRmzBjVqFGjkGYLAEDBLF26VC+//LIhtnbtWlZzAgAAu6j5AgAAAKf8/vvv6t27t2bOnOl04sXStWvXtHz5cvXp00dTp05Venq6m2YJAAAAAEDxYeULAAAAHPbFF1/oww8/lNlstvl6QECAOnTooNtuu03BwcEKDg6W2WxWUlKSzp07pwMHDmjPnj26du2aoV1mZqYiIiI0fPhwfkUMAAAAALjpkXwBAACAQz766CPNmjXL5mudO3fW6NGj1apVK3l6eubZT1pamtavX6+IiAjt2rWrMKYKAAAAAECxIvkCAACAfC1atMhm4qVSpUp6//331b59e4f7Klu2rPr27au+fftq69ateuuttxQVFeXO6QIAAAAAUKyo+QIAAIA8HT9+XG+++aZVvE6dOlqwYIFTiRdLHTp00JIlS/TEE08UZIoAAAAAAJQorHwBAABAnl577TWlp6cbYoGBgfr2229VpUqVAvfv4+Ojl156SU2bNpW3t3eB+wMAAAAAoLiRfAEAAIBdGzdu1I4dO6zikydPdkvi5Ub9+vVzSz9Xr17Vnj17dPr0aV29elXlypVTcHCwmjRpottuu80tY1yXkpKiEydO6NSpU7py5YpSUlLk4+OjChUqKCQkRM2aNVOlSpXcOqY9GRkZOnDggE6ePKmEhARlZGTIz89PLVu2VIsWLQp17OzsbJ06dUpRUVGKj49XSkqKsrOzVbZsWfn5+Sk0NFTVq1dXzZo15eHhvsX3Fy5c0JEjRxQfH6/4+Hh5enoqKChIlStXVsuWLeXn5+e2sa67fPmy9u7dq0uXLikhIUFly5ZVaGiomjZtqurVq7t9PHeLiorSsWPHdOnSJV27dk3ly5dXnTp11KJFi0L5vCylpaXlfn7x8fHKyMhQUFCQQkJC1KRJE1WtWrVQxz916pSOHz+uhIQEJSQkyGw2y8/PT5UrV1bdunVVu3btfOtWlXRxcXGKjIxUQkKCLl++rJycHAUHB6tixYpq0aKFAgMDC30O0dHR2r9/vy5cuKC0tDQFBASoYsWKuuOOO1SxYkW3j3fixAlFRUUpNjZWycnJKl++vGrUqFFk77cwxcfHa8+ePTp79qxSU1NVvnx5BQcHq0WLFgoLCyvu6QEAgDyQfAEAAIBdc+bMsYq1b99effv2LfrJ5OPQoUOaOXOm1q1bp8zMTJvnhIWF6YknntDDDz/s0iqbrKws/fnnn9qwYYO2bdumqKgomc3mPNvUrFlT/fr107BhwxQcHOz0mEuXLtXLL79siK1duzb3Qf/Ro0f15Zdfas2aNUpNTbVqP2DAgEJLvhw4cEDz58/X6tWrdfXq1XzP9/f3V/PmzdW1a1f17t3bpQftMTExmjNnjjZs2KATJ07YPc/b21stWrTQ0KFD1adPH5lMJqfHutHatWs1Z84c7dixQzk5OTbPady4sYYPH677778/d7xhw4Zp27Ztuee0a9dOERERBZqLszIzM/Xdd99p8eLFdj8zb29vde/eXc8884waNWrk9jn88ssvWrRokbZv366MjAy759WvX1+9evVSeHi4/P393TL24cOH9d133+mPP/5QdHR0nudWqFBB7du3V58+fdSzZ0/5+Pi4ZQ6FLTExUREREVq7dq0OHTpk977k4eGhJk2a6B//+IcGDhzo9H2we/fuOn/+fO7xgAED9Pbbb+ce//rrr/ryyy+1Z88em+1NJpNuv/12Pffcc+ratatTY1vKysrS999/r0WLFunYsWM2z/H09FSnTp00evRotW7dOjfesGFDw3nPPfecxowZY9V+woQJWrZsmd059OjRI9952us7P3/99Zc+//xzbd261e49p169eho1apTuu+++At/jAACA+5F8AQAAgE3R0dHaunWrVXzo0KHFMBv7zGazZsyYoS+++ELZ2dl5nnv+/Hm9+eabWrJkib788kuFhIQ4PM7PP/+sKVOmKCEhwan5nTlzRp999pm++eYbjRs3zq2f32effab//ve/ysrKclufjsjIyNDUqVO1aNEiuw8FbUlOTtYff/yhP/74Qz///LN++OEHh9teu3ZNM2bM0Ny5c622wbMlMzNTO3bs0I4dOzRr1iy9//77atCggcPjXZeQkKBXXnlFa9euzffcQ4cO6aWXXtKSJUs0Y8YMl5Jt7nbw4EG99NJLioqKyvO8zMxMrV69WmvXrtXYsWM1atQot43/2muvaf/+/Q6df/ToUR09elRz587V888/r8GDB7s89tmzZ/X2229r7dq1+SZJr0tKStKaNWu0Zs0aNWjQQCtWrHB5/KKQnZ2tr776SrNnz1ZSUlK+5+fk5OjAgQM6cOCAZs+erWnTpqldu3YFnsfVq1c1btw4rV+/Ps/zzGaz9u3bp5EjR2rAgAGaOnWqvLycfyxx6NAhjR8/Pt/vdXZ2tjZt2qTNmzfr0Ucf1csvv1ziVzZlZGRoypQpWrRoUb7nHjt2TOPGjdPy5cv1ySefqFy5ckUwQwAA4Cj3rfkHAABAqbJu3TqrB5aVKlVS9+7di2lG1nJycjRu3DjNnDkz38TLjQ4ePKihQ4cqJSXF4TbXtypyVVpamqZMmaLJkye73MeN3njjDc2YMaNYEi8jR47UwoULnUq8FERsbKyGDRumr7/+2qHEi6UjR45o8ODB2rhxo1Pt4uPj9fjjjzuUeLnRtm3b9OijjyoxMdGpdu62b98+PfbYY/k+oL5RVlaWPvzwQ73//vsFHn/Tpk0aOnSow4mXGyUkJGjy5MmaOnWqS9+zP//8U4MGDdJvv/3mcOLFkjP3h+KQnJysp59+Wh988IFDiRdL586d0xNPPKHFixcXaB4JCQl65JFH8k28WFq2bJkmTJjg9HiufK/NZrMiIiI0fvx4l78PRSE9PV1PPfWUQ4mXG23ZskUjR4506u8gAAAofKx8AQAAgE1//fWXVaxNmzYu/Uq5sHz00UeGX6aHhoaqa9euatCggYKCgpSamqrjx49rzZo1OnfunKHtyZMn9cEHH+i1115zaeywsDA1btxY9erVU5UqVeTn5ydfX1+lpqbq0qVLOnTokLZs2WK1HdeCBQvUoEGDAq2AWbRokebNm5d7XK5cOXXq1El33HGHQkJCZDabdfHiRf31119urbEiSV988YXNFVGhoaHq1KmT6tWrp5CQEJUpU0ZpaWlKSUnR6dOndfToUe3Zs8fm1mh5iYuL08MPP2zY6ui6Bg0aqG3btqpXr54qVKgg6e+aLHv27NHGjRsND89TUlI0ZswYLViwQE2aNMl33KysLI0YMUJHjhyxeq1SpUrq2bOn6tevr6CgICUmJurkyZNau3Zt7vfs+PHjeumll5x6r+509uxZPfnkkza3g2vYsKF69OihsLAw+fr66tKlS9q2bZu2bNmSu2Xf7NmzC7Ry588//9TTTz9tMznYuHFjdevWLXf82NjY3PEttySLiIhQTk6OU9fphg0b9Oyzz9ocOygoSB07dlSzZs0UHBwsHx8fXb16VRcuXNCBAwe0e/fuEp90kf5O5j722GOKjIy0eq1mzZq688471bBhQwUEBMjLy0sJCQnav3+/Nm7cqPj4+NxzMzMz9eqrr6pixYq6++67nZ5HVlaWnn32WUMipEmTJrrrrrtUo0YNlS9fXomJidq7d69+/fVXq+/jihUr1LNnT/Xu3duh8a4njGx9r+vXr6/u3burRo0a8vPzy619s379+txE6MqVKx26/q8LDQ3N3YYvMTHRatu62267Ld+t25ypcTNx4kTD3946deqoS5cuqlu3rgICApScnKyDBw9qzZo1iouLM7Tdvn275syZoyeffNLh8QAAQOEymUvyzz4AAABQbHr27KmzZ88aYi+99JKeeOKJYpmP5d773t7eysrKyi2YPWHCBA0cONDmljIZGRn6+OOPNXv2bEPc09NT69evV5UqVfId/5NPPtGaNWs0aNAgde3aVbVr1863TUZGhhYuXKjp06crOTk5N+7j46PffvvNoXFt1Xzx9PTM/YXz4MGD9fzzzysoKMhm+/T0dJUpUybfcRyRnp6u9u3bGxIoZcuW1aRJkzRgwIB8Ez0ZGRnavn27li5dqpiYGH3//fd5np+Tk6Pw8HD9+eefhnirVq308ssv51nLJikpSZ999pnmzJlj+KV79erVtXz58nzriXz66af65JNPDDFvb2+NGTNGTzzxhM0HrmazWQsWLNC7776b+xn5+vrq2rVruecURc0Xs9msxx9/3CqBWqlSJU2ZMsXu6rXz58/r1Vdf1R9//CHJeu6SNG3aND344IN5jp+QkKD7779fMTExhni1atX0xhtvqEuXLjbbXbx4UZMnT9aGDRusXvvvf/+rnj175jmuJJ0+fVqDBg2yWglSsWJFPffcc/rHP/6RZwI5IyNDmzdv1sKFC3Xs2DGtW7cu3zFdlV89p7zYqkVSr149TZw4UR07drRb/+PatWv67rvv9PHHHxtqYwUEBOinn37Ktw6TZc2XMmXK5K5Gq127tl5//XV16NDBZtv4+HiNGzdOW7ZsMcTr1q2rX375Jc9xpb+/1+Hh4VbJ30qVKmny5Mm65557bLZLSUnR9OnT9d1330my/b12pC5LQf69bLGsB3XjZ1mpUiVNmjRJvXr1stk2JSVFU6ZM0Y8//miIV6hQQZs3b5avr69LcwIAAO7FtmMAAACwkpGRYbVSRJKaNWtWDLOxLTMzU2azWYGBgZo3b54eeughu3v5+/j46N///rceeughQzw7O1tLlixxaLzhw4drxYoVevzxxx1KvFwfd9iwYZo7d67hYX9GRobmzp3rUB+2XE+8TJgwQW+88YbdxIsktyVeJGnr1q1WK1cmT56sgQMHOrTCxsfHR506ddIHH3xglQiz5auvvrJKvAwdOlTz58/PM/Ei/f0QcsKECfrPf/5jiJ87d07z58/Ps210dLRmzZpliHl5eenDDz/UqFGj7P7S3WQyaciQIZo9e3Zu7QXLh7xFYfny5TYTL3Pnzs1z28CwsDB9+eWXuvfeeyW5PvcPP/zQKvFSvXp1zZ8/327iRZKqVq2qWbNmqX///lavTZo0yaH5jBs3zirxUr9+fS1evFhDhgzJd+Wej4+PevTooS+++CL3YX1J8/PPP1slXnr27Klly5apU6dOeRZe9/X11ciRIzVr1izD9zgxMdHqO++I68mC22+/XQsXLrSbeJGk4OBgzZw506r20okTJ7Rjx458x/rll19sJl4iIiLsJl4kyc/PT6+88kruFmfFcU064vpnWaNGDS1cuNBu4kX6+z29/fbbuuuuuwzxpKQkrV69ulDnCQAAHEfyBQAAAFZiYmJs7ovvzPYpReWtt97K3RYmPy+++KJVMsLyV9j2lC9f3um5XdeoUSO98MILhlhB6yz06tVL4eHhBerDWZYroXx9fXXfffe51FfZsmXzfD0tLU1fffWVIXb33Xfrtddey/PhsqWBAwfqH//4hyH27bffWm1vdaOFCxcaVgVIUnh4eG5SIj9t2rSx+vcuSraSBu+9955q1aqVb1tPT0+99957Lv+aPz4+XsuXL7fq89NPP813VYX0dwJr2rRpVg/obfVracuWLdq7d68hFhQUpK+//lqhoaEOvoP/cfUzKExms1mfffaZIdaoUSNNnz5dPj4+Dvdz11136dlnnzXEli5dqsuXLzs9pwoVKujjjz9WYGBgvudeT4RbcuQ+bGul3FtvvaU6deo4NE9nruHi4u3trenTpyssLCzfc00mk9VKHMnxv2kAAKDwkXwBAACAFXvFm6/X1Sgp2rVrpx49ejh8fmBgoLp27WqIHTp0qEgKx/fv39+QNLh8+bJOnjzpUl8eHh4aP368u6bmMMtaGOXLly+0GkBLlixRQkJC7rGHh4deffVVl/p69tlnDZ99bGys9uzZY/PcnJwcq8RYYGCg1YPq/AwdOtThh8LutG/fPqs6IPfcc0+eKxIs+fr6ulyvZvHixbm/4L/u4YcfVuPGjR3uw8vLS5MmTbKK57dNna3VVJMmTVLlypUdHruk27Bhg44ePWqIvfLKK/nWHbElPDxcfn5+ucfp6enatGmT0/089thjqlatmsPn33XXXVb1hGzVrrnR8ePHtXPnTqt+8lpJZcvLL7/s9jpY7tSvXz+nVpjWq1dPTZs2NcTy+ywBAEDRKbn/qwMAAADFxt62LAVZ/VEYLFc0OOL22283HKemplptkVQYypcvr5CQEEPM8lf6jmrfvn2x/Crf8pftcXFxOn36dKGMZbl1Tvv27VWjRg2X+goNDbVaSXFjrYUbHT9+XLGxsYZY3759812pY8nDwyPf2iiFwdbDc1eukx49eqhSpUpOt/v999+tYo888ojT/bRr107169c3xKKioqyKjF+XnJys7du3G2JhYWEOF3K/WVheF7Vr11a7du1c6svX11d33nmnIWbvusiL5XaO+fH09LRKGOSXiLbcflCSBg0a5NS40t91hzp27Oh0u6Lijr9pp06dctNsAABAQRXOz9QAAABwU7O15Zgkp7Z7KgquPHSsWbOmVezq1atOb0tkNpt14MABRUZGKioqShcvXlRKSoqSk5OVlZVls01iYqLh+MKFC06NeZ3lA9OiYllnxWw261//+pf++9//urStkz0ZGRlWiak77rijQH1Wr15dR44cyT0+ePCgzfNsrYixXC3lqLvvvlsffPCBS21dZfm5lStXzqouhCM8PT3VvXt3LVy40OE22dnZ2rdvnyFWt25dqySKo3r37m21ymPXrl02t47asWNHbi2k6+677z67daBuVpbJkVatWhWoP8skrr3rwp6aNWuqSpUqTo9reR++evVqnudbXpcmk0mdO3d2elxJ6tatW4ncmsvX11fNmzd3up3lZ5mdna2UlBTDqiYAAFA8SL4AAADAiq+vr814UlJSian7UqZMGYdqSFiytXonvwd/lud+9dVX+umnn3T+/Hmnx3d13Bs1adKkQOO6qnHjxmrSpInhAW1kZKR69eqlPn36qE+fPmrfvr3d74+jDhw4YLV11ZIlS/Tbb7+53Gd0dLTh+MYtzW4UFRVlFXP1865bt67KlClj9V4Kk+WWQ40aNXI5AWG5OiE/J0+eVGpqqiHmzBZKlix/0S/9/f5sJV92795tFStowq6kiYmJsbrnbN68Wffff7/LfVquJLJ3XdjjSB0hWyzvw8nJyXmeb3ld1qpVS/7+/i6N7cwWeEWpWrVqLm0fZ+tvWnJyMskXAABKAJIvAAAAsBIQEGAz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559/3qooeWRkpCIjIx3qZ9iwYZo4caJTY3fp0kVfffWVxo4da/XwPT4+XitXrtTKlSud6rOk8fHx0ddff6033njD5n3l8OHDTtXZuVmYTCa988478vT0tLlCKjMz0+4WcxUqVNDMmTNVo0YNq9ccvS6HDh2qH3/80WrFptlsVnR0tM06aAXZ6gwAANzc2HYMAAAATuncubNWrVql0aNHWxVEd1a5cuX08MMPa/Xq1XrxxRfl4+Pjplm63wsvvKCnn35aJpPJ4Taenp4aPXq03nnnHafalVQVK1YscB+tW7fW/Pnz1bZtW4fbBAQEaNasWZo4cWKB5xAWFma1ZVNeHnroIf3www9WNWDsqVGjhr788svcuis3rjyR/q5lU1SaN2+ub7/91matCns8PT31z3/+0+b2Ts7q2rWrvv/+ezVr1szptoGBgXr99df16quvurRa6M4779SiRYt09913O932upCQEJfbFoUyZcrorbfe0nvvvWczoeCMkJCQm2Z1hoeHh95++2198MEHDiVwpf99H9q0aWN1TUqOX5dly5bVV199pU6dOjk1ZwAAcGti5QsAAACc5ufnp3/9618aNWqUVq1apdWrV2vHjh0OFaEPCQlRixYt1Lt3b9177703TR0Uk8mk559/Xl26dNHMmTO1ZcsWuzVuypYtqx49emjEiBFq1KhREc+08EyZMkWjRo3Shg0b9Ndff2nPnj2KiYnJt52vr6+6du2qAQMGqFu3bi6NbTKZ9Pjjj2vw4MFasmSJVq1apT179tjcpupGHh4eaty4sTp06KCuXbuqbdu2TifCbr/9di1evFjbtm3T6tWrtXv3bsXGxurKlSsqU6aMQkND1bRpU/Xo0UM9e/aUp6dnblvLX70HBAQ4NXZBNW3aVMuWLdO3336rRYsW6dSpUzbP8/b21t13361nnnlGTZo0cev4ixcv1i+//KJFixZpx44dhq3NLNWrV0+9evVSeHh4gRNVNWvW1Oeff669e/cqIiJCv//+u+Lj4/NsExISoo4dO6pfv37q0qVLgcYvKv3799f//d//6eeff9ZPP/2knTt3KiUlJd929erVU4cOHdS5c2d16tRJXl431+OBfv36qUePHlq/fr1+/fVXRUVFKTY2VikpKfL391f16tV1xx13qG/fvoY6L7GxsVZ9OXNdVqlSRV9//bUiIyO1atUq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iUm+mEwmPf/884bY+fPn9fTTTys5Odlmm4yMDP373//WgQMHDPHRo0erbNmyhTZXSapSpYoeeeQRQ2z16tV655137G6XdvHiRY0YMcLwfkwmk/75z386NGbZsmU1evRoQ2zfvn0aP368MjIybLa5evWqnn76aV24cMEQf/7552UymRwa11JWVpZWrFhhiDVt2lSNGjVyqT8AAAAAAAAAAEqTEpN8kf5eAdKrVy9D7K+//lL//v0VERGhY8eOKSkpSSdOnNDixYs1YMAA/fzzz4bzW7VqpcGDBxfJfJ977jnVqFHDEPv66681ePBg/fLLLzp79qwSExN1+PBhffrpp3rggQcUFRVlOD88PNyppMWQIUPUsmVLQ2zlypV68MEHtXTpUp08eVJJSUk6evSovv32W/Xv31/btm0znN+rVy9169bNyXf7P5s2bVJcXJwhxqoXAAAAAAAAAAD+ZjI7U9W+CCQnJys8PFz79u1zum3NmjU1d+5cVa5c2eE2lludtWvXThEREQ63P3r0qB599FFduXLF4TbXde/eXZ988onTRe9jYmL06KOP6syZM06P2bx5c33zzTfy9/d3uu11Y8aM0Zo1a3KPvb29tXnzZgUFBbnc583i8uVk5eSUqEumWJlMJlWsaPwuxcUl2139BQAlFfczAKUJ9zQApQX3MwClCfe0wuPhYVJIiOvPuwtLiVr5Ikn+/v765ptvdM899zjVrk2bNpo/f75TiRd3qF+/vubPn6/69es71e6RRx7Rxx9/7HTiRfp7y7N58+apdevWTrW79957C5x4SUhI0Pr16w2x7t273xKJFwAAAAAAAAAAHOH8k/8i4O/vr08//VRr167V7NmztXv3brvnNmzYUOHh4XrggQdcrmFSUHXr1tWyZcs0b948RURE6OzZszbP8/DwUKdOnTR69Gi1adOmQGNWqlRJc+fO1Y8//qhvvvlGR44csXvuHXfcoREjRqh79+4FGlOS/t//+3/KzMw0xNhyDAAAAAAAAACA/ylx247ZEhMTo7179+r8+fNKTU2Vr6+vQkNDdfvtt1vVXCkJjh49qoMHD+rSpUvKzMyUn5+fatasqZYtWxbaCpGzZ89q//79io6OVnp6usqWLauwsDC1aNFCVapUKZQxb0VsO2bEckkApQX3MwClCfc0AKUF9zMApQn3tMJTUrcduymSL0BJQfLFiD8aAEoL7mcAShPuaQBKC+5nAEoT7mmFp6QmX0pczRcAAAAAAAAAAICbWYms+QIAKH0uXUnTnqNxyszKVuuGlVU1uFxxTwkAAAAAAAAoFCRfAACFLvJUvD5dsl/pmdmSpB83n9RzD96uFvUqFvPMAAAAAAAAAPdj2zEAQKHKMZs179eo3MSLJGXnmPX9miPsawoAAAAAAIBSieQLAKBQnbuUrOjLqVbxy0npupSQVgwzAgAAAAAAAAoXyRcAQKE6dDrB7mtJqRlFOBMAAAAAAACgaJB8AQAUqrySL8lpmUU4EwAAAAAAAKBokHwBABSarOwcHTl7xe7rJF8AAAAAAABQGpF8AQAUmlMXryo9I9vu6ylpWUU4GwAAAAAAAKBokHwBABSavLYck6SUa6x8AQAAAAAAQOlD8gUAUGgO55N8YdsxAAAAAAAAlEYkXwAAhSIzK35ikHEAACAASURBVFtHzyXmeQ7JFwAAAAAAAJRGJF8AAIXi2LlEZWXn5HlOCskXAAAAAAAAlEIkXwAAheLQmby3HJOk5LSsIpgJAAAAAAAAULRIvgAACsWhfOq9SFLKNVa+AAAAAAAAoPQh+QIAcLu09CydvHA13/Oo+QIAAAAAAIDSiOQLAMDtos5eUY7ZnO95mVk5Ss/MLoIZAQAAAAAAAEWH5AsAwO0c2XLsuhRWvwAAAAAAAKCUIfkCAHC7w04kX9h6DAAAAAAAAKUNyRcAgFslp2XqzKVkh89n5QsAAAAAAABKG5IvAAC3cmbViyQlX8sqpJkAAAAAAAAAxYPkCwDArZyp9yKx7RgAAAAAAABKH5IvAAC3IvkCAAAAAACAWx3JFwCA2yRcTdfF+FSbr5lMtttQ8wUAAAAAAAClDckXAIDbHDodb/e1hjUCbcZJvgAAAAAAAKC0IfkCAHAbe1uOhYaUU1glf5uvse0YAAAAAAAAShuSLwAAtzCbzTpsJ/nSuFaQ/Mt623wt+RrJFwAAAAAAAJQuJF8AAG4ReyVNl5PSbb7WuFaw/Hy9bL6WnJZVmNMCAAAAAAAAihzJFwCAWxy0s+rFJKlhzUC7K1+o+QIAAAAAAIDShuQLAMAt7G05VrNKefmX9baffLmWqRyzuTCnBgAAAAAAABQpki8AgAIzm806lEe9F0nys5N8MZultHS2HgMAAAAAAEDpQfIFAFBg5+NSdDXV9vZhjf7/5Iu9lS+SlMzWYwAAAAAAAChFSL4AAArs0Cnbq148PUxqUCNAEskXAAAAAAAA3DpIvgAACszelmN1qlWQr4+XJMnXx1OeHiab56WQfAEAAAAAAEApQvIFAFAg2Tk5OnLWTr2XmkG5/91kMsnP18vmeax8AQAAAAAAQGlC8gUAUCBnYpKVlp5t87XGtYIMx352th5LScty+7wAAAAAAACA4kLyBQBQIAdPxduMe3t56LawAEPMXt0XVr4AAAAAAACgNCH5AgAokMN26r3Urx4gby/jnxm7yZdrJF8AAAAAAABQepB8AQC4LDMrR0fPJdp8zXLLMSmvbcdIvgAAAAAAAKD0IPkCAHDZiQuJ/x979x4kV33eifvt7rlqRjd0BwvbwkIQAZIwJqZscBAYcKoM2GWHy+JaCeONnDWGVBwC2C5+cXDsUAkpHNaQyItwcZGdDcRsOWsokLzG3jjIASGBbYEQNyF0BXSZ+0z3/P4gKOqZPjPdPbczw/NUucz5Tp/zPTOSTlf1Z973ja6eQsmvnVAifGlu0HYMAAAAgIlP+AJA1X6b0HKssT4X75s7ud96U2NNydcLXwAAAACYSIQvAFQtKXxZNH965LL932KSZr60tvcM630BAAAAwFgSvgBQlZ58IV58/WDJr5VqORaRHL60dKh8AQAAAGDiEL4AUJXW9u7IF3pLfm3he6aWXE8KXzq78tGTLz07BgAAAADGG+ELAFVJCl4iIiY1lJ7t0tRQOnyJMPcFAAAAgIlD+AJAVXoGCF9ymUzJ9aaEypcI4QsAAAAAE4fwBYCq5AdoE5bLlX57SWo7FvF2GzMAAAAAmAiELwBUpTBQ5Uu2dOVLbU026mtzJb/W0t4zLPcFAAAAAGNN+AJAVQaa+ZLLlQ5fIiKaG0vPg2ntUPkCAAAAwMQgfAGgKgOGLwmVLxHJc1/MfAEAAABgohC+AFCVfH6g8CX57aWpQfgCAAAAwMQmfAGgKvlCIfFrA7cdE74AAAAAMLEJXwCoSk9C27FMJiKbqTx8aRW+AAAAADBBCF8AqEpS27GB5r1EJM98Eb4AAAAAMFEIXwCoSlLbsYHmvUQM0Haso2fI9wQAAAAAaSB8AaAqhYS2Y4NWvjTUlFw38wUAAACAiUL4AkBV8knhS27g8GWgmS+9vaWvCQAAAADjifAFgKpUO/MlKXzJF3qjoys/5PsCAAAAgLEmfAGgKj3DPPMl4u3qFwAAAAAY74QvAFSl2rZjTQOELy0dwhcAAAAAxj/hCwBVqbbt2KSGmkh6RYvKFwAAAAAmAOELAFVJrHwZJHzJZjIxqaGm5NeELwAAAABMBMIXAKpSSAxfBn9rSZr70treM6R7AgAAAIA0EL4AUJV8oVByfbCZLxEDhS8qXwAAAAAY/4QvAFSl2pkvERFNCeGLtmMAAAAATATCFwCq0lPlzJeI5MqXlg7hCwAAAADjn/AFgKoktx2rfuaLyhcAAAAAJgLhCwBVGVLbsYaakutmvgAAAAAwEQhfAKhKfgTajrW29wzpngAAAAAgDYQvAFRlKOFLk7ZjAAAAAExgwhcAqlIYgZkvbZ09ibNkAAAAAGC8EL4AUJWhzHxJCl8iIlo7tB4DAAAAYHwTvgBQlSG1HWsYIHzRegwAAACAcU74AkBVepLClyG0HYsw9wUAAACA8U/4AkBV8vmEmS9lVL7U1WajJiGkaW3XdgwAAACA8U34AkBVhtJ2LJPJRHNjTcmvqXwBAAAAYLwTvgBQlaGELxHJrceELwAAAACMd8IXAKqS2HYsN7TwpbVD+AIAAADA+CZ8AaAqhcTKl/LeWpoaVL4AAAAAMDEJXwCoylDbjjUlVb4IXwAAAAAY54QvAFSlJyl8GWLbMZUvAAAAAIx3whcAqpLPD63tWHL40lP1PQEAAABAGghfAKhKvlAouV5+27GakuutHSpfAAAAABjfhC8AVCVx5ku5bccatB0DAAAAYGISvgBQlcS2Y5lyK19Khy/dPYXo7M5XfV8AAAAAMNaELwBUJbHtWLmVLwnhS0REq+oXAAAAAMYx4QsAVSkktR3LlvfWMlD4ovUYAAAAAOOZ8AWAqiTOfMmW23asJvFrKl8AAAAAGM+ELwBUpScpfCmz7Vgum43G+tIBTEtHT9X3BQAAAABjTfgCQFXy+aG1HYuIaGpICF9UvgAAAAAwjiX3fEmRPXv2xObNm+O1116Ltra2aGhoiHnz5sVJJ50U8+fPH+vb62fbtm3x61//Ovbu3RtdXV3R1NQUxx57bCxdujSmTZs2Intu3749nn322di5c2d0dHTEpEmT4j3veU+ccsopMXv27BHZ8x2tra3x7LPPxiuvvBL79++PfD4fjY2NMWfOnHjve98bCxcujNra5NkOwPiULxRKrudymWhoKO/f/JSmuth3oKPfemd3oexrRER0dAhrAAAAAEiPVIcv69evj9WrV8fGjRujt7f0b1ifcMIJsXLlyrjooosikymv1c1I6O7ujrVr18Y999wTr776asnX5HK5+MhHPhJ/+Id/GKeddtqQ9+zt7Y2HHnoo1qxZE1u2bCn5mkwmE6eeempcddVVsXz58iHveeTe69ati7Vr18YTTzwR3d3JH3zW19fHkiVL4qyzzopLL700Jk+ePGz3AYyNQm9vJDyWo6bMmS8REc2NpQOWlvauam4LAAAAAFIhleFLa2tr3HDDDfHII48M+totW7bEn/3Zn8UDDzwQf/u3fxszZ84chTss9vLLL8fVV18dzz///ICvy+fz8fjjj8fjjz8eV1xxRVx//fVVV4Ts27cvrr322vjVr3414Ot6e3vjySefjCeffDLOP//8+Na3vhVNTU1V7fmObdu2xQ033BCbNm0q6/WdnZ2xYcOG2LBhQ3zoQx+KpUuXDml/YOwltRyLiMgeEb48t/2tAa+TdJUd+1oHPTciYtH86YO+BgAAAABGW+pmvrS2tsbKlSvLCl6OtGHDhrj88stj7969I3RnpW3bti0uvfTSQYOXvu6999645pproqen8qHSe/bsicsuu2zQ4KWvRx55JFauXBmtra0V7/mOxx57LD796U+XHbwAE1OhkBy+VDLzpbG+9O8AtHdU/mwEAAAAgLRIXeXLjTfe2O+D/aOPPjpWrFgRZ5xxRsydOzf27t0bTz31VKxZsya2bdt2+HWvvPJKXH311XHvvfdGTc3If2stLS2xatWqeOut4t/OXrJkSaxYsSIWL14cU6dOjZ07d8Zjjz0W9957b+zfv//w69atWxe33nprXHfddWXv2dPTE1/+8pf7tTb7wAc+ECtXroxly5bFrFmzYufOnfHLX/4y7r777ti5c+fh123atCluvPHGuO222yr+fh999NG45pprIp/PF61/5CMfiXPPPTeWLVsWM2bMiEmTJsWhQ4di+/bt8Zvf/CZ+/vOfD9qaDBhfkua9RETkSrQde233ociXCGy6uvP91iIi3jrUGa/sPJh4/ffM0b4QAAAAgPRKVfiyfv36ePjhh4vWTj/99Pjud79bNCdkypQpcdxxx8VFF10Uf/qnf1p0zsaNG+MHP/hBXHHFFSN+v7fffnu/EGTFihVx/fXX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6dKy9gXSK58v/ZyrqbLtmJkvAAAAAEwkqQlfIt6uADn//POL1p544om48MIL45577okXXnghDh48GC+++GL80z/9U3zqU5+K//N//k/R65ctWxaXXnrpqNzvl770pZg/f37R2l133RWXXnpp/OQnP4nt27fHgQMHYsuWLXH77bfHxRdf3G/4/MqVK+OEE04oe8/LLrusX3jx4x//OD796U/Hgw8+GC+99FIcPHgwtm7dGt///vfjwgsvjA0bNhS9/vzzz4+zzz677D2bm5vjG9/4RtHarl274lOf+lT8+Z//eTzxxBOxd+/eOHToUGzbti3uu++++OQnPxkPPvhg0TmzZs2Kb33rW2XvC6RXvlC6Hdjwtx0TvgAAAAAw/mR6K5lqPwpaWlpi5cqVsXnz5orPPfbYY+O+++6L2bNnl31O31Znp59+etxzzz1ln79169a44oorYv/+/WWf847ly5fH3/3d3w069L6v3bt3xxVXXBGvvvpqxXuecsopsWbNmmhubq743P/5P/9n3HLLLRWfFxExffr0+Id/+Ic45ZRTqjo/Ld54oyUKCe2W3o0ymUzMnFn8d2nfvpbE6i8mju8/vCV+9vTr/dZPP3F2rLropGhoqI2IiOe2vxUREa/sPDjgv53fvPxm/PuW/nOzpjbXxUUffX/RWjabiffOmxIREYvmT4+IiI6O7n7nQiU8z4CJxDMNmCg8z4CJxDNt5GSzmZgxo/LPu0daqipfIt6uslizZk18/OMfr+i80047LdauXVtR8DIcFi5cGGvXro2FCxdWdN7ll18e3/nOdyoOXiLebnl2//33xwc/+MGKzjvvvPOqDl4iIj7/+c/HLbfcEk1NTRWdt3jx4vhf/+t/jfvgBfhPSW3HstVWviS0HetS+QIAAADAOJS68CXi7QDm9ttvj+9+97uxbNmyAV+7aNGi+Pa3vx333ntvv2H0o2XBggXxz//8z3HjjTf2a0N2pGw2G2eeeWbcd999cdNNN0VtbW3Ve86aNSvuu++++Pa3v92veqevU089Ne644474u7/7u6qDl3dcdNFF8cgjj8R//a//NaZOnZr4umw2G0uWLIlbb701HnjggQF/LsD4M+xtxwaY+eI3QAAAAAAYb1LXdqyU3bt3x6ZNm2LHjh3R1tYWDQ0NMW/evDj55JNT+aH+1q1b4ze/+U3s2bMnuru7o6mpKY499thYunRpTJ8+fUT23L59ezzzzDOxc+fO6OzsjMbGxjjmmGNiyZIlMWfOnBHZM5/Px7PPPhtbt26NN998M3p7e2P69Okxa9asWLZsWUybNm1E9h1L2o4VUy757nXnQ8/Ght/u6bd+1pKjY8UnTqi47dje/e3xk38r3UrxsnMXRm3Nf/6ugLZjjATPM2Ai8UwDJgrPM2Ai8UwbOWltO1Z5z6sxMGfOnDjvvPPG+jbKtnDhworbkA3V/PnzRz2IyuVysWTJkliyZMmo7guMvXxCkJLLDW/lS8Tb1S9Hhi8AAAAAkHY+zQKgYkkzX4a77VhERKe5LwAAAACMM8IXACqWVPlSk63ubaW2Nvk84QsAAAAA443wBYCK5QuFkuvVth3LZjJRlxDACF8AAAAAGG+ELwBUbLjbjkUktx7r7BK+AAAAADC+CF8AqFhS27HsSIQvKl8AAAAAGGeELwBULCl8GVLlS53wBQAAAICJQfgCQMUSZ75kq39b0XYMAAAAgIlC+AJAxRIrX3LD33asq7t00AMAAAAAaSV8AaBi+Xzp8KVG2zEAAAAAEL4AULnEtmO5obQdK32u8AUA4SpYeAAAIABJREFUAACA8Ub4AkDFEtuODaXyxcwXAAAAACYI4QsAFUtqOzak8CWh7VhXTyEKCWEPAAAAAKSR8AWAiiVVvmSHEL7UJVS+RER09ah+AQAAAGD8EL4AULHktmPVv600DBC+dGg9BgAAAMA4InwBoGL5QqHkei43/G3HIsx9AQAAAGB8Eb4AULGkmS81Q2g7VpPLRm2u9NuSyhcAAAAAxhPhCwAV6e3tHaDtWPXhS0REQ33p6pf2rp4hXRcAAAAARpPwBYCKFHpLBy8REbmEypVy1SfMfdF2DAAAAIDxRPgCQEWSWo5FDEflS03JdW3HAAAAABhPhC8AVCSp5VhERC43xPClrnTlS0entmMAAAAAjB/CFwAqMlD4ks0MLXxpTApfVL4AAAAAMI4IXwCoyMCVL0N7W2mo03YMAAAAgPFP+AJARfL5QuLXaoY680XlCwAAAAATgPAFgIoMWPkyxPClPiF86ezOR2GAfQEAAAAgTYQvAFRkJNuONdaXDl8i3g5gAAAAAGA8EL4AUJGB2o4NtfIlaeZLRERHV8+Qrg0AAAAAo0X4AkBFBq58GWLbsdrkypf2TpUvAAAAAIwPwhcAKjKSM1+y2UxiANPRJXwBAAAAYHwQvgBQkXx+5MKXiIiGutLhS6fwBQAAAIBxQvgCQEXyhYFmvgz9bSUpfDHzBQAAAIDxQvgCQEWS2o5l4u22YUOVFL60q3wBAAAAYJwQvgBQkaTwJZcbevASEdFQX1Ny3cwXAAAAAMYL4QsAFUma+TIcLcciBmg71qntGAAAAADjg/AFgIokzXzJDUPLsYjk8KWzW+ULAAAAAOOD8AWAiox427G6hLZjncIXAAAAAMYH4QsAFUluOzaylS/d+UL05EtX3QAAAABAmghfAKhIzxi1HYuI6OhS/QIAAABA+glfAKhIIantWHZ43lKS2o5FCF8AAAAAGB+ELwBUZKRnvtTVZiOTcKnOrp5h2QMAAAAARpLwBYCKjPTMl0wmk9h6TOULAAAAAOOB8AWAiiRWvgxT27GI5NZj7cIXAAAAAMYB4QsAFckXCiXXh6vtWEQkV750ajsGAAAAQPoJXwCoyEi3HYsYIHxR+QIAAADAOCB8AaAiPYltx4YzfCnddkz4AgAAAMB4IHwBoCKFUQlfSle+dHZpOwYAAABA+glfAKhI8syX4XtLSQpf2lW+AAAAADAOCF8AqMiozHypT2471ttben8AAAAASAvhCwAVyY9h27FCoTe6e0pX3gAAAABAWghfAKjIWLYdi3i7+gUAAAAA0kz4AkBFRqXtWF3ptmMRwhcAAAAA0k/4AkBFRqPtWE0uk3i9jq6eYdsHAAAAAEaC8AWAivSMQviSyWQSW491dKp8AQAAACDdhC8AVKSQGL4M71tKUuuxdpUvAAAAAKSc8AWAiuTzhZLrudzwVb5ERDTUJ1S+mPkCAAAAQMoJXwCoyGjMfImIAdqOqXwBAAAAIN2ELwBUJDF8Ge7Kl4S2YypfAAAAAEg74QsAFUlsOzbsM1+0HQMAAABgfBK+AFCRsW471q7tGAAAAAApJ3wBoCI9Y9x2rLMrH729pe8BAAAAANJA+AJARfL5hPAlMzqVL72h+gUAAACAdBO+AFCRQkLVSS43zDNf6kuHLxERrR3CFwAAAADSS/gCQEXy+ULJ9dGa+RIR0drePax7AQAAAMBwEr4AUJF80syXYQ5fctls1NaUfptS+QIAAABAmglfAKhIYviSG97wJSK5+kXlCwAAAABpJnwBoCLJbceG/y0lMXzpEL4AAAAAkF7CFwAqMlptxyIiGupqSq63tms7BgAAAEB6CV8AqEhPCtqOtal8AQAAACDFhC8AVCSfH83Kl6SZLypfAAAAAEgv4QsAFSkkth0biZkvCW3HVL4AAAAAkGLCFwDK1tvbG4XeUax8qU+qfBG+AAAAAJBewhcAypZPqHqJGN2ZLx1d+cgXCsO+HwAAAAAMB+ELAGVLmvcSMbptxyIi2jrMfQEAAAAgnYQvAJRtoGqTEWk7llD5EhHR2i58AQAAACCdhC8AlK1nlNuO1dcOEL50mPsCAAAAQDoJXwAo28Btx4Y/fMlmM4kBTGu78AUAAACAdBK+AFC2wkCVLyMQvkRENNQnhC9mvgAAAACQUsIXAMo28MyXkXlLSZr70qbtGAAAAAApJXwBoGz5UZ75EhHRUFdTcr21XeULAAAAAOkkfAGgbKM98yUiufKlVeULAAAAACklfAGgbANWvoxy27HWduELAAAAAOkkfAGgbD0DzXwZ7bZjHdqOAQAAAJBOwhcAypaqtmMqXwAAAABIKeELAGUbuO3YCIUv9aXDl+6eQnR25UdkTwAAAAAYCuELAGUrJIQv2UwmMpmRCV8aE9qORUQcbOsakT0BAAAAYCiELwCULZ8w82Wk5r1ERNQntB2LiDjYKnwBAAAAIH2ELwCULWnmy0i1HIuIqKvJRlJRjfAFAAAAgDQSvgBQtqSZLyMZvmQymWhIaD12QPgCAAAAQAoJXwAoW09i27GRfTtpSGg9dkj4AgAAAEAKCV8AKNtYtB2LSA5ftB0DAAAAII2ELwCUbSzajkUkhy/ajgEAAACQRqWb6KfMnj17YvPmzfHaa69FW1tbNDQ0xLx58+Kkk06K+fPnj/Xt9bNt27b49a9/HXv37o2urq5oamqKY489NpYuXRrTpk0bkT23b98ezz77bOzcuTM6Ojpi0qRJ8Z73vCdOOeWUmD179ojsCbz7jF34Uvrt6mBr54juCwAAAADVSHX4sn79+li9enVs3LgxentLf+B3wgknxMqVK+Oiiy6KTGZkP/wbSHd3d6xduzbuueeeePXVV0u+JpfLxUc+8pH4wz/8wzjttNOGvGdvb2889NBDsWbNmtiyZUvJ12QymTj11FPjqquuiuXLl1e1z6JFi4ZymxERsXjx4njwwQeHfB1gbBWSwpeRnvlSr+0YAAAAAONHKsOX1tbWuOGGG+KRRx4Z9LVbtmyJP/uzP4sHHngg/vZv/zZmzpw5CndY7OWXX46rr746nn/++QFfl8/n4/HHH4/HH388rrjiirj++uujtra2qj337dsX1157bfzqV78a8HW9vb3x5JNPxpNPPhnnn39+fOtb34qmpqaq9gTI5wsl18eu8kX4AgAAAED6pG7mS2tra6xcubKs4OVIGzZsiMsvvzz27t07QndW2rZt2+LSSy8dNHjp6957741rrrkmenp6Kt5zz549cdlllw0avPT1yCOPxMqVK6O1tbXiPQEixq7tWGPCzJeDbV2JlZEAAAAAMFZSV/ly4403xqZNm4rWjj766FixYkWcccYZMXfu3Ni7d2889dRTsWbNmti2bdvh173yyitx9dVXx7333hs1NSP/rbW0tMSqVavirbfeKlpfsmRJrFixIhYvXhxTp06NnTt3xmOPPRb33ntv7N+///Dr1q1bF7feemtcd911Ze/Z09MTX/7yl/u1NvvABz4QK1eujGXLlsWsWbNi586d8ctf/jLuvvvu2Llz5+HXbdq0KW688ca47bbbqvyuIy699NKYPHlyRefMnTu36v2A9OhJbDs20pUvpcOXnnxvtHf2pO83CQAAAAB4V0tV+LJ+/fp4+OGHi9ZOP/30+O53v1v0Yf+UKVPiuOOOi4suuij+9E//tOicjRs3xg9+8IO44oorRvx+b7/99n4hyIoVK+L6668vmj8zbdq0OPHEE+Ozn/1sXHXVVbF169bDX7vrrrviwgsvjBNOOKGsPdeuXRsbN24sWvvEJz4Rt9xyS9TV1R1emzJlSixatCg+/elPxx/90R8VVck8/PDD8dOf/jTOPvvsir7fd3zhC1+I97znPVWdC4xvyW3HRjb+qE8IXyIiDrR2xfSmusSvAwAAAMBoS80vC/f29varxjj66KPjjjvuSKyyqKuri1tvvTUWL15ctH7nnXdGe3v7iN1rRMTu3bvj/vvvL1o799xz44YbbigKXo40d+7cWL16ddHMlVLfd5L29vb4+7//+6K1k046Kf7mb/6mKHg50pQpU+LOO++MefPmFa3fdtttWvUAFRurtmNJM18izH0BAAAAIH1SE76sW7cutmzZUrT21a9+NZqbmwc8L5fLxc0331y0tnfv3vjHf/zHYb/HI33ve9+Lzs7Ow8cNDQ1x0003DXrevHnz4stf/nLR2vr16/t9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RkTMmTMnLr/88qK1Rx55JP7qr/4qsV3arl274gtf+ELR95PJZOKaa64pa8/GxsZYtWpV0drmzZvjuuuui66u0h86Hjp0KL74xS/G66+/XrR+7bXXRiYz8Iel//Iv/xK///u/Hw888MCgIdg7enp64u67745Vq1ZFT09P0ddWrFgRs2bNKus6QDoltR2rGaW2Y3W1uUja6VC78AUAAACAdBi5gR9VWL58eZx//vnxyCOPHF574okn4sILL4yVK1fGGWecEbNnz459+/bFU089FWvWrIkXXnih6BrLli2LSy+9dFTu90tf+lI89thjsX379sNrd911Vzz11FOxYsWKOOmkk2LKlCmxc+fOeOyxx+Lee++Nt956q+gaK1eujBNOOKHsPS+77LL48Y9/XDTI/sc//nE899xzceWVV8ayZctixowZsXv37vjXf/3XuPvuu/sFL+eff36cffbZZe338ssvx4033hjf+MY34swzz4xTTz01TjzxxDjmmGOiubk56uvr4+DBg7F9+/bYsGFDPPjgg/3am0VEfPSjH43//t//e9nfJ5A+vb29A7QdG53wJZvJRH1dLjq6+lflHWrVdgwAAACAdEhV+BIR8Zd/+Zexc+fO2Lx58+G1HTt29GubVcqxxx4b3/nOd0Z0iPyRmpub44477ogrrrgi9u/ff3j96aef7lfFU8ry5cvjT/7kTyras6amJr7zne/EFVdcEa+++urh9a1bt8YNN9ww6PmnnHJK/OVf/mVFe0ZEdHR0xKOPPhqPPvpoxed++MMfjttuuy1qa2srPhdIj4SivoiIyI5S+BLx9tyXUuHLwTaVLwAAAACkQ2rajr2jubk51qxZEx//+McrOu+0006LtWvXxuzZs0fozkpbuHBhrF27NhYuXFjReZdffnnVQdGcOXPi/vvvjw9+8IMVnXfeeefFmjVrorm5ueI9q9HY2Bhf+cpXRnVPYOQkzXuJiMjlRu/tpKG+9HNT+AIAAABAWqSu8iXi7QDm9ttvj3Xr1sXq1atj48aNia9dtGhRrFy5Mi6++OJBZ5iMlAULFsQ///M/x/333x/33HNPURuyI2Wz2fjIRz4Sq1atitNOO21Ie86aNSvuu++++NGPfhRr1qyJ5557LvG1p556anzhC1+I5cuXV7TH7//+70ddXV088cQT8cwzz5RsJ9ZXNpuN448/Pj75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r+Oll16KdevWRVdXV8lzMplMnHzyyfGJT3wiLr744mhoaOj3vMDwy+WEL2876ZjpyeHLhj2Ry+fH3M8DAAAAgNKqMnxpbW2NG2+8MZ544ole37tmzZr4yle+Ej/5yU/i29/+djQ3N1dghYXefPPNuPbaa+O1114r+b7u7u5YuXJlrFy5Mq644oq44YYboq6ubkBz7ty5M66//vp49tlnS74vn8/Hc889F88991ycf/758Vd/9VfR2NjY53keeuihuOOOO/q1tnw+Hy+++GK8+OKL8T//5/+MW2+9NT70oQ/16xrA8CtV+TLWsoaTjpkWj/7TG0XjrYe6YuO2ljh69sRhWBUAAAAA1arquva3trbG0qVL+xS8vNMzzzwTl19+eezYsWOIVpZs7dq1cdlll/UavPR0//33xxe/+MVeq0iSbN++PT7zmc/0Grz09MQTT8TSpUujtbW133MO1ObNm+Pzn/98LF++vGJzAuWRtudLNhPDWmk4HE6YPyVqa5I/8yv2fQEAAACgh6qrfLnpppti9erVBWNz586Nq666Ks4+++yYPXt27NixI37961/HvffeG2vXrj3yvvXr18e1114b999/f9TWDv1Ha2lpiWXLlsWePYUP3k499dS46qqr4qSTTorJkyfHli1b4sknn4z7778/9u7de+R9Tz31VNx+++3x5S9/uc9zdnV1xXXXXVfU2uzd7353LF26NE477bSYMWNGbNmyJf7lX/4lfvjDH8aWLVuOvG/16tVx00039buaJSJi/vz58d73vjdOOeWUOOaYY+Koo46KpqamqK2tjdbW1njjjTfi2WefjYceeqhgznw+H7feemvMmzcvzjnnnH7PCwyPtHaP2ezYCl4iIsbV1cRxcyfHqxv3Fr22ZsOeuOB9C4ZhVQAAAABUq6oKX1asWBGPP/54wdhZZ50V3/3ud2PixH9r6TJp0qQ47rjj4uKLL44//dM/LThn1apV8Xd/93dxxRVXDPl677zzzqIQ5Kqrroobbrih4LfCp0yZEosWLYpPfepTcfXVV8frr79+5LUf/OAHcdFFF8WJJ57YpzmXL18eq1atKhi78MIL42/+5m9i3LhxR8YmTZoUCxcujI9//OPxx3/8xwVVMo8//nj84z/+Y3z4wx/udb5jjjkmvvzlL8dHP/rRWLAg/eFiU1NTzJo1K84+++z4T//p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3X///WFHm40aNUoVFRWaMmWKBg8erJqaGn366ad66aWXVFNTc+6+zZs3a8GCBVq8eHG3XvOwYcP05S9/WdOnT9fIkSOVm5ur1NRU1dfXq7KyUr/73e+0adOmoGdee+015ebm6v777+/WnADix+szDrY6yXyJm7LSgXr30/C6L02tZ+u+DOXoMQAAAAAAAMuzVPBl9erVWrFiRVDb9OnT9etf/1oDBgw415aVlaWRI0fqxhtv1L/8y78EPVNZWanXXntNc+fOjfl6n3nmmbAgyLx58/Twww8H1Z8ZOHCgxo4dq29/+9u66667tHv37nN9L774ombPnq3y8vKo5ly2bJkqKyuD2q6//nr927/9m1JSUs61ZWVlqaysTN/85jf1T//0T0FZMitWrNCHH36oq666Kqo5nU6nbrjhBn3729/W9OnTDe8ZMGCARowYoW9961t6/fXX9dOf/lQej+dc//PPP6/rr79eo0ePjmpOAH3DZ5L54qDeS9yMKjav+1J16CTBFwAAAAAAgH7AMr/KHAgEwrIxhgwZomeffTYo8HK+lJQUPfnkkxo3blxQ+3PPPafW1taYrVWSamtr9eqrrwa1XX311XrkkUeCAi/nKyws1AsvvBBUc8XodZtpbW3V888/H9Q2fvx4PfHEE0GBl/NlZWXpueeeU1FRUVD74sWLFejk+Bq73a6vfe1reu+99/TLX/7SNPAS6pZbbtFPfvKToDav16v/+I//iOp5AH2HzJe+505x6oKiLMO+nQcbDdsBAAAAAABgLZbZTVu1apV27twZ1Pboo48qMzPyb/g6HA4tXLgwqK2+vl6/+93ven2N5/vNb36j9vb2c9dutzuq2iZFRUVhx2+tXr067LUbef3118Nq2ixcuFAOhyPic5mZmfrRj34U1LZjxw6tWrUq4nM33XSTnnjiCQ0bNqzTtYX61re+FRasWbNmjTo6Oro8FoD48RpkW0gEX+KtrHSgYXtVNXVfAAAAAAAA+gPL7Kb96U9/CrouLi7WrFmzonr2wgsv1LRp04LaQo8v602BQCBs/Ouuu075+flRPX/TTTcpPT09qC309RsJnfPiiy/W2LFjo5pz5syZKi4ujjheqM6COp35xje+EXTd3NysqqqqHo0JILZ8JpkvDgfHjsVTeekgw/amVo+O1jfHeTUAAAAAAADoKksEXzwejz766KOg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OR3nFQEAAAAAAPSMZYIvNptNDz74YFDbkSNHdO+996qpqcnwmY6ODv3gBz/Qtm3bgtrvuecepaWlxWytklRQUKDbb789qG3lypX6xS9+YXpc2rFjx3T33XcHvR6bzaYHHnggqjnT0tJ0zz33BLVt2bJFP/zhD9XR0WH4zJkzZ3Tvvffq6NGjQe0PPvigbPx2O5C02j1+w3an3TIfC0giKU6HpozJM+1f8ddD8vujP4oUAAAAAACgr1mq4MfMmTN17bXXauXKlefa1q5dq9mzZ6uiokKXXnqp8vPz1dDQoI0bN2rJkiXas2dP0BhTpkzRrbfeGpf13nffffrggw9UXf2/R6K8+OKL2rhxo+bNm6fx48crKytLNTU1+uCDD7R06VI1NjYGjVFRUaHy8vKo57ztttv0zjvvaNOmTefa3nnnHVVVVenOO+/UlClTlJubq9raWn3yySd66aWXwgIv1157ra666qqo59y2bZtWrFgR9f2ffPKJ2tvbDfuysrL0j//4j1GPBSA2zDJfqPeCvjKyOFtVh07qxOnwz4/aEy1a9Vm1vjq9tA9WBgAAAAAA0HWWCr5I0uOPP66amhpt2bLlXNuRI0fCjs0yUlpaqqeffjpuReQzMzP17LPPau7cuTp58uS59k2bNoVl8RiZOXOmvv/973dpTqfTqaefflpz587VoUOHzrXv3r1bjzzySKfPT5w4UY8//niX5ty1a5deeOGFqO/fuHGjNm7caNhXXFxM8AWwALOaL04HmS/oG3abTReX52vlOuMaL6/8uUpjh+coLyvVsB8AAAAAAMBKLLfLlpmZqSVLluirX/1ql5676KKLtGzZMuXn58doZcZGjx6tZcuWafTo0V167vbbb+92oKigoECvvvqqpk2b1qXnrrnmGi1ZskSZmZldnhNAYqHmC6yoICddwwoHGPZ1eP1a/MYm08AhAAAAAACAlVgu+CKdDcA888wz+vWvf60pU6ZEvLesrEyLFi3S0qVLw4rRx8uIESP05ptvasGCBSopKTG9z26364orrtArr7yixx57TC6Xq9tzDh48WK+88ooWLVqksrKyiPdOnTpVzz77rH71q18ReAEgybzmi4PMF/SxaWMGy2E3DgIeqW/Wsg92xXlFAAAAAAAAXWe5Y8fON2vWLM2aNUu1tbXavHmzjhw5opaWFrndbhUVFWnChAkR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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pickle\n", "base = '/home/gezi/temp/ai2018/sentiment/tfrecords/char.ft'\n", "valid_infos = pickle.load(open(f'{base}/info.pkl', 'rb'))\n", "lens = [len(valid_infos[key]['content']) for key in valid_infos]\n", "sns.distplot(lens)\n", "plt.title('Char seg doc length')#标题\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.12724761904761905" ] }, "execution_count": 72, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len([x for x in lens if x > 512]) / len(lens)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import random\n", "from pyecharts import HeatMap\n", "\n", "x_axis = [\n", " \"12a\", \"1a\", \"2a\", \"3a\", \"4a\", \"5a\", \"6a\", \"7a\", \"8a\", \"9a\", \"10a\", \"11a\",\n", " \"12p\", \"1p\", \"2p\", \"3p\", \"4p\", \"5p\", \"6p\", \"7p\", \"8p\", \"9p\", \"10p\", \"11p\"]\n", "y_axis = [\n", " \"Saturday\", \"Friday\", \"Thursday\", \"Wednesday\", \"Tuesday\", \"Monday\", \"Sunday\"]\n", "data = [[i, j, random.randint(0, 50)] for i in range(24) for j in range(7)]\n", "heatmap = HeatMap()\n", "heatmap.add(\n", " \"热力图直角坐标系\",\n", " x_axis,\n", " y_axis,\n", " data,\n", " is_visualmap=True,\n", " visual_text_color=\"#000\",\n", " visual_orient=\"horizontal\",\n", ")\n", "heatmap" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyecharts import Radar\n", "\n", "schema = [\n", " (\"销售\", 6500), (\"管理\", 16000), (\"信息技术\", 30000), (\"客服\", 38000), (\"研发\", 52000), (\"市场\", 25000)]\n", "v1 = [[4300, 10000, 28000, 35000, 50000, 19000]]\n", "v2 = [[5000, 14000, 28000, 31000, 42000, 21000]]\n", "radar = Radar()\n", "radar.config(schema)\n", "radar.add(\"预算分配\", v1, is_splitline=True, is_axisline_show=True)\n", "radar.add(\"实际开销\", v2, label_color=[\"#4e79a7\"], is_area_show=False)\n", "#radar.show_config()\n", "radar" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [], "source": [ "dir_ = '/home/gezi/temp/ai2018/sentiment/model/v12/0/word.jieba.ft/'" ] }, { "cell_type": "code", "execution_count": 109, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'/home/gezi/temp/ai2018/sentiment/model/v12/0/word.jieba.ft/tf.word.baseline.gru.hidden100/epoch/model.ckpt-1.00-3282.valid.metrics'" ] }, "execution_count": 109, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import glob\n", "l = glob.glob(f'{dir_}/*/epoch/*.valid.metrics') \n", "l2 = glob.glob(f'{dir_}/*/ckpt/*.valid.metrics') \n", "l = l + l2\n", "l[0]" ] }, { "cell_type": "code", "execution_count": 117, "metadata": {}, "outputs": [], "source": [ "def get_name_epoch(path):\n", " l = path.split('/')\n", " return l[-3], int(float(l[-1].rsplit('.', 2)[0].split('-')[1]))" ] }, { "cell_type": "code", "execution_count": 118, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('tf.word.baseline.gru.hidden100', 1)" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "get_name_epoch(l[0])" ] }, { "cell_type": "code", "execution_count": 126, "metadata": {}, "outputs": [], "source": [ "def get_infos(l):\n", " f1 = {}\n", " loss = {}\n", " for path in l:\n", " name, epoch = get_name_epoch(path)\n", " if name not in f1:\n", " f1[name] = [0] * 100\n", " loss[name] = [0] * 100\n", " \n", " for line in open(path):\n", " l = line.rstrip().split('\\t')\n", " if l[0] == 'adjusted_f1/mean':\n", " f1[name][epoch] = float(l[1])\n", " if l[0] == 'loss/mean':\n", " loss[name][epoch] = float(l[1])\n", " \n", " for key in f1:\n", " f1[key] = [x for x in f1[key] if x != 0]\n", " loss[key] = [x for x in loss[key] if x != 0]\n", " return f1, loss" ] }, { "cell_type": "code", "execution_count": 127, "metadata": {}, "outputs": [], "source": [ "f1, loss = get_infos(l)" ] }, { "cell_type": "code", "execution_count": 130, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['tf.word.baseline.gru.hidden100', 'tf.word.baseline.gru.hidden200', 'tf.word.baseline.lstm.hidden100', 'tf.word.baseline.gru.hidden400', 'tf.word.baseline.lstm.hidden200', 'tf.word.baseline.lstm.hidden400', 'tf.word.baseline.lstm.hidden400.unkaug', 'tf.word.baseline.gru.hidden400.unkaug', 'tf.word.baseline.lstm.hidden400.attention_pooling', 'tf.word.baseline.lstm.hidden400.max_pooling', 'tf.word.baseline.lstm.hidden400.max_pooling.unkaug', 'torch.word.baseline.gru.hidden100', 'torch.word.baseline.lstm.hidden400', 'torch.word.baseline.gru.hidden200', 'torch.word.baseline.lstm.hidden100', 'torch.word.baseline.lstm.hidden400.unkaug', 'torch.word.baseline.lstm.hidden200', 'torch.word.baseline.gru.hidden400', 'torch.word.baseline.gru.hidden400.unkaug', 'torch.word.baseline.lstm.hidden400.attention_pooling', 'torch.word.baseline.lstm.hidden400.max_pooling'])" ] }, "execution_count": 130, "metadata": {}, "output_type": "execute_result" } ], "source": [ "f1.keys()" ] }, { "cell_type": "code", "execution_count": 187, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 187, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pyecharts\n", "line = pyecharts.Line(\"Adjusted F1\", 'hidden_size', title_pos='center')\n", "def add(key):\n", " line.add(key, [x + 1 for x in range(len(f1[key]))], f1[key],legend_pos='65%', legend_top='45%', legend_orient='vertical')\n", "add('tf.word.baseline.gru.hidden100')\n", "add('tf.word.baseline.gru.hidden200')\n", "line\n", "#line.add(\"最低气温\", cities, lows, mark_line=['average'], is_smooth=True)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "fig = plt.figure()\n", "ax = fig.add_subplot(111)\n", "ax.set_xlabel('epoch')\n", "ax.set_title('Adjusted F1')\n", "#var.plot(kind='line')\n", "sns.pointplot(x=\"sepal_length\",y=\"species\",data=iris)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 151, "metadata": {}, "outputs": [ { "ename": "URLError", "evalue": "", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mURLError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mseaborn\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0msns\u001b[0m\u001b[0;34m;\u001b[0m \u001b[0msns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mmatplotlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpyplot\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mfmri\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mload_dataset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"fmri\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 4\u001b[0m \u001b[0max\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlineplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"timepoint\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"signal\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mfmri\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/seaborn/utils.py\u001b[0m in \u001b[0;36mload_dataset\u001b[0;34m(name, cache, data_home, **kws)\u001b[0m\n\u001b[1;32m 426\u001b[0m os.path.basename(full_path))\n\u001b[1;32m 427\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexists\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcache_path\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 428\u001b[0;31m \u001b[0murlretrieve\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfull_path\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcache_path\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 429\u001b[0m \u001b[0mfull_path\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcache_path\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 430\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36murlretrieve\u001b[0;34m(url, filename, reporthook, data)\u001b[0m\n\u001b[1;32m 246\u001b[0m \u001b[0murl_type\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msplittype\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0murl\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 247\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 248\u001b[0;31m \u001b[0;32mwith\u001b[0m \u001b[0mcontextlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclosing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0murlopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mfp\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 249\u001b[0m \u001b[0mheaders\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minfo\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36murlopen\u001b[0;34m(url, data, timeout, cafile, capath, cadefault, context)\u001b[0m\n\u001b[1;32m 221\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 222\u001b[0m \u001b[0mopener\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_opener\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 223\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mopener\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtimeout\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 224\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0minstall_opener\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mopener\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36mopen\u001b[0;34m(self, fullurl, data, timeout)\u001b[0m\n\u001b[1;32m 524\u001b[0m \u001b[0mreq\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmeth\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreq\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 525\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 526\u001b[0;31m \u001b[0mresponse\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_open\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreq\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 527\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 528\u001b[0m \u001b[0;31m# post-process response\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36m_open\u001b[0;34m(self, req, data)\u001b[0m\n\u001b[1;32m 547\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 548\u001b[0m return self._call_chain(self.handle_open, 'unknown',\n\u001b[0;32m--> 549\u001b[0;31m 'unknown_open', req)\n\u001b[0m\u001b[1;32m 550\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 551\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0merror\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mproto\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36m_call_chain\u001b[0;34m(self, chain, kind, meth_name, *args)\u001b[0m\n\u001b[1;32m 502\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mhandler\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mhandlers\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 503\u001b[0m \u001b[0mfunc\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgetattr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mhandler\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmeth_name\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 504\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 505\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 506\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/lib/python3.6/urllib/request.py\u001b[0m in \u001b[0;36munknown_open\u001b[0;34m(self, req)\u001b[0m\n\u001b[1;32m 1386\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0munknown_open\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreq\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1387\u001b[0m \u001b[0mtype\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mreq\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtype\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1388\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mURLError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'unknown url type: %s'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mtype\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1389\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1390\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mparse_keqv_list\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ml\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mURLError\u001b[0m: " ] } ], "source": [ "import seaborn as sns; sns.set()\n", "import matplotlib.pyplot as plt\n", "fmri = sns.load_dataset(\"fmri\")\n", "ax = sns.lineplot(x=\"timepoint\", y=\"signal\", data=fmri)" ] }, { "cell_type": "code", "execution_count": 152, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.9.0'" ] }, "execution_count": 152, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sns.__version__" ] }, { "cell_type": "code", "execution_count": 264, "metadata": {}, "outputs": [], "source": [ "words = ['', '这家', '烧烤店', '在', '汉广', '街上', ',', '临近', '木兰', '街', 'SPACE', '位置', '来说', '还', '不错', ',', '环境', '一般', ',', 'SPACE', '羊排', '烤', '的', '还行', ',', '生', '蚝', '一般', 'SPACE', '总体', '来说', '偶尔', '吃', '下', '还', '可以', '吧', '']\n", "alpha = [0.00056962966,0.23827146,0.19244207,0.11011295,0.17349437,0.11852508,0.046037722,0.05955463,0.017608836,0.012202048,0.0028137492,0.0002055885,0.00036370466,0.00025330443,0.00029033062,0.000363468,2.7266471e-05,0.00018710292,0.00032836615,0.001367057,0.00075813156,0.00045154025,0.00021950406,0.00029479177,0.0006688184,0.0013774327,0.0005269423,0.0004646081,0.00067773816,0.000642519,0.00056342455,0.00033431596,0.0002380904,0.0004108409,0.00061148417,0.0011762715,0.0015607427,0.014004141,0.00896384,2.1429629e-05,0.37175584,0.07558788,0.33509356,0.1697859,0.0038804545,0.02001661,0.007757798,0.006119119,0.00013767781,4.334247e-06,1.0210862e-05,5.279099e-06,4.277094e-06,6.740322e-06,5.797643e-07,4.09565e-06,7.305827e-06,3.0841245e-05,8.720799e-05,5.405498e-05,1.5832167e-05,2.1332751e-05,2.9347422e-05,0.00018563062,6.511817e-05,2.4849227e-05,1.7997092e-05,2.3965602e-05,2.3201446e-05,1.4656879e-05,1.4404182e-05,1.9649635e-05,2.3715076e-05,3.687569e-05,3.490308e-05,0.00011355923,0.0005842279,0.029999776,1.7293179e-06,0.058603156,0.48592827,0.40500358,0.00088649447,0.010413157,0.0033831166,0.0051128203,1.609663e-05,2.6391604e-07,5.735476e-07,2.8675615e-07,1.4218736e-07,4.560604e-07,1.630011e-08,2.394288e-07,5.014799e-07,1.9691922e-06,7.396251e-06,5.79215e-06,1.341706e-06,1.0409632e-06,1.8008423e-06,1.9817078e-05,6.9998982e-06,1.504122e-06,1.0326239e-06,1.2741053e-06,1.6307731e-06,1.2316684e-06,1.0689273e-06,1.4129797e-06,1.329779e-06,1.852888e-06,2.0678915e-06,4.650104e-06,1.37295265e-05,0.00025052283,0.002406888,7.102476e-08,0.49947086,0.47508273,0.0003134499,0.01335174,0.0022750262,0.006826716,5.732753e-06,9.009489e-08,2.4423855e-07,1.2207312e-07,4.3175923e-08,7.5488174e-08,2.0259927e-09,2.4459881e-08,4.5484725e-08,1.09136735e-07,2.173289e-07,1.7534026e-07,5.1412126e-08,3.722629e-08,6.946574e-08,3.491876e-07,1.4973494e-07,6.18174e-08,4.0161186e-08,4.521847e-08,7.1870744e-08,8.006812e-08,6.239435e-08,7.5538075e-08,5.8768606e-08,8.5548855e-08,9.72977e-08,1.2412634e-07,1.1170426e-08,5.734933e-07,1.0305622e-05,0.00025791547,3.6675576e-11,0.9922611,3.2401495e-06,0.00080826605,0.00046556682,0.006192976,6.4999284e-08,7.688091e-11,2.6033345e-10,1.5389628e-10,2.4369395e-11,5.7068135e-11,1.3758031e-12,4.209913e-12,1.1131891e-11,3.5245674e-11,1.3024166e-10,9.062795e-11,2.465463e-11,1.02834624e-11,3.036038e-11,3.9441242e-10,2.7160954e-10,3.6255554e-11,1.9610213e-11,2.3564236e-11,4.5669964e-11,5.880638e-11,5.565829e-11,5.970238e-11,2.4837814e-11,2.660082e-11,3.3746998e-11,4.3454084e-11,5.8468173e-09,2.2263244e-07,6.5809013e-06,0.00018795805,0.76023954,2.8099684e-11,1.4163233e-05,0.002846326,0.0016716388,0.23503284,6.9263376e-07,5.534576e-10,1.0025111e-09,6.0198035e-10,7.0297296e-11,2.0708672e-10,2.4979498e-12,4.421643e-12,8.175089e-12,2.1680647e-11,5.799486e-11,4.5608902e-11,1.5915207e-11,5.404486e-12,1.4014908e-11,1.6539643e-10,1.6201743e-10,1.6372405e-11,1.1798698e-11,1.2507246e-11,3.2388096e-11,4.5429528e-11,3.3704383e-11,5.133505e-11,2.0461466e-11,1.8092828e-11,2.3883263e-11,2.5419576e-11,0.000102959624,0.00023068195,0.00065305067,0.005622172,0.112546965,0.6421059,1.2739303e-06,0.11983475,0.016419545,0.09562227,0.0062783537,0.00031939067,8.294289e-05,5.577999e-05,4.0655217e-05,4.9371505e-05,1.2822981e-06,3.535012e-06,4.506455e-06,5.977631e-06,1.5159782e-06,1.0197052e-06,5.2390953e-07,4.1203393e-07,1.3586782e-06,1.8026171e-06,1.104013e-06,8.0996637e-07,1.2823543e-06,5.020124e-07,7.217179e-07,5.035161e-07,3.026199e-07,5.810576e-07,6.3050356e-07,6.862109e-07,1.4327063e-06,3.2030607e-06,6.1817116e-07,5.52283e-06,3.5603553e-05,0.0011115113,0.13030563,0.59892017,0.0005561896,5.9126988e-09,0.034148283,0.23482789,8.55557e-05,9.062598e-07,9.623369e-07,8.08868e-07,1.1246144e-07,7.957441e-08,2.3227656e-10,6.326746e-10,2.0848088e-09,1.1778244e-08,4.6939906e-08,4.1757737e-08,1.1344107e-08,4.418274e-09,5.664094e-09,3.4855375e-08,1.6811294e-08,3.51414e-09,2.955254e-09,3.5292602e-09,6.02612e-09,7.9421385e-09,3.524417e-09,7.3049273e-09,5.940472e-09,5.283536e-09,5.933033e-09,8.017111e-09,1.2274532e-07,1.4374442e-06,7.767993e-06,0.00012718725,0.050404813,0.23621525,5.1177896e-05,0.022932429,3.970699e-09,0.69017303,8.4768624e-05,3.340572e-07,6.4330084e-07,8.0959467e-07,9.161604e-08,2.8530582e-08,5.167704e-10,5.1855653e-10,7.4695783e-10,3.6470416e-09,4.1953356e-08,5.2269392e-08,1.4626351e-08,6.9932806e-09,4.1461248e-09,3.4761328e-08,2.870443e-08,3.991451e-09,1.9197202e-09,2.8457632e-09,4.2172927e-09,6.715207e-09,5.3000218e-09,8.824364e-09,6.7193846e-09,5.5734453e-09,3.927891e-09,3.5266383e-09,2.4284148e-09,3.2371084e-08,3.351724e-07,1.08964405e-05,0.019142782,0.9482213,8.509342e-06,0.004502425,0.01970487,1.13365935e-10,0.008341579,3.372035e-05,1.7191984e-05,1.6077163e-05,3.7923402e-07,2.8157926e-08,3.6709604e-11,1.2988788e-11,2.3699513e-11,1.1466573e-10,1.3834579e-09,2.6459326e-09,1.1640511e-09,2.5498822e-10,8.258984e-11,5.755155e-10,8.226413e-10,6.6425865e-11,5.574288e-11,6.56719e-11,1.5091743e-10,2.1214397e-10,2.0070644e-10,3.918063e-10,2.3624788e-10,8.9983625e-11,7.041281e-11,5.909673e-11,2.9342942e-13,3.816457e-13,5.529312e-13,4.794734e-12,1.0527923e-10,1.464242e-09,2.927596e-10,8.5955626e-10,1.2681751e-09,4.3709592e-06,5.940336e-14,0.99659014,0.002407311,0.0009862544,1.1733425e-05,1.3036882e-07,1.168117e-09,9.479672e-11,1.9125645e-12,2.6634387e-12,2.862755e-12,8.134662e-12,1.943177e-11,8.025441e-12,2.2627118e-13,7.937156e-14,6.675096e-13,7.8228147e-13,3.8122446e-13,1.6369386e-13,1.9864958e-13,1.6721464e-13,1.271253e-13,1.8980347e-13,3.591711e-13,1.1465269e-13,1.5297664e-13,1.9864581e-13,1.9090624e-21,1.0698295e-21,8.072447e-22,6.709731e-21,1.1088079e-20,1.0418318e-19,1.3261445e-18,8.1073936e-19,4.4500844e-19,1.5733488e-15,8.8740165e-08,5.289501e-21,0.9677862,0.03219641,1.727184e-05,6.2119726e-11,5.1860495e-12,5.6674034e-15,2.962147e-18,8.5992197e-19,1.0979162e-18,1.3651864e-17,1.5760873e-16,4.4750782e-17,1.847563e-20,3.1337685e-22,2.0297159e-20,8.31997e-20,2.5517163e-20,3.9165312e-20,5.588407e-20,5.3577994e-20,4.108374e-20,8.58008e-20,4.677313e-19,3.438494e-20,3.2868594e-20,1.5846989e-20,3.4578484e-21,2.5804602e-21,1.7961542e-21,1.862313e-20,3.8441726e-20,1.9321318e-19,3.525998e-19,8.814353e-19,8.773962e-19,8.2128214e-16,2.1946744e-10,0.99086326,5.4156302e-21,0.00913473,1.9548231e-06,8.48706e-13,1.2619545e-15,2.0053734e-16,7.469352e-19,4.8988004e-19,2.643059e-18,3.2562325e-17,4.0833606e-16,3.8085653e-16,3.6473867e-20,1.6562609e-21,4.2235277e-20,8.905602e-20,1.78092e-20,3.2876074e-19,1.2054503e-18,2.5703841e-18,2.845547e-18,5.31756e-18,4.0354013e-17,1.5239367e-18,1.6654237e-19,4.4599986e-20,5.623665e-20,3.1154006e-20,2.0970455e-20,2.173599e-19,5.3066593e-19,2.709261e-18,5.5373493e-18,1.7300597e-17,2.5785188e-17,1.7934777e-14,2.099651e-09,0.76977164,0.2133123,1.2646466e-19,0.016916016,1.2163226e-10,5.338143e-14,2.4294885e-14,2.9036445e-17,1.5209011e-17,7.3545164e-17,1.2261283e-15,1.8718496e-14,6.751753e-14,2.769217e-18,9.222329e-20,1.9285259e-18,6.6472404e-18,4.6339035e-19,3.3178357e-18,1.0214899e-17,3.8364167e-17,8.6286955e-17,2.953718e-16,6.1174765e-15,3.055371e-16,1.0302205e-17,2.067397e-18,3.7098298e-18,1.4527403e-18,5.9846605e-19,4.4247152e-18,4.83639e-18,1.8209155e-17,2.3228656e-16,1.3844297e-16,1.679415e-16,2.4348833e-14,1.4376964e-09,0.02376716,0.0026273136,0.9736041,7.278694e-18,1.4054018e-06,4.708772e-11,7.3186866e-11,2.4593549e-14,3.1615789e-15,3.724055e-16,2.9021134e-15,1.8842468e-14,9.335718e-13,6.446801e-16,4.266487e-18,1.6913079e-17,1.421755e-16,3.6124374e-17,3.3546108e-17,7.25151e-17,4.6875022e-17,8.5167396e-17,4.6428364e-16,9.183962e-15,1.2259205e-14,1.2111107e-15,3.1407095e-16,1.5957296e-13,7.8659505e-14,6.5952784e-14,2.6579986e-13,3.8913686e-13,1.8430472e-12,9.692066e-12,3.3656843e-12,1.796926e-12,6.2116035e-11,5.488433e-07,0.0029369763,3.919168e-05,0.00024052778,0.048287272,2.5008383e-13,0.9358694,0.012626075,4.0780908e-08,3.4504286e-10,3.739897e-12,4.583258e-12,2.911014e-11,2.8075978e-10,7.638843e-11,2.320384e-12,6.0284326e-11,4.154183e-10,1.0980454e-11,5.5087805e-12,8.340005e-12,1.0786532e-11,2.1146002e-12,3.0562423e-12,5.34347e-12,1.4284139e-11,1.9318625e-11,9.441815e-12,3.578352e-30,2.0224766e-30,7.0463e-31,2.1324321e-30,2.8043127e-30,6.645526e-30,7.5247136e-29,2.9367426e-30,9.7291955e-30,2.4207089e-29,1.4700144e-24,7.32941e-20,1.7419743e-23,3.1554995e-23,4.8361677e-22,2.797537e-16,7.4756174e-29,1.0,5.796056e-18,5.6403886e-24,3.3980422e-27,2.355938e-27,4.9441973e-27,1.9837105e-26,8.891081e-27,2.6423025e-27,1.281681e-23,9.893128e-21,8.441095e-26,1.0200132e-26,1.3410474e-27,4.4987927e-26,2.285597e-27,7.875976e-28,3.2659195e-28,1.0225606e-27,1.5474094e-27,2.133306e-27,2.4554737e-29,1.4287508e-29,1.0350197e-29,2.5744926e-29,8.581139e-30,1.1763259e-29,2.074401e-28,7.9991115e-30,9.7628045e-30,8.565114e-30,1.1929672e-25,8.009674e-23,2.7681735e-24,1.4361266e-23,7.5166787e-22,3.7742427e-18,1.0,7.4756174e-29,2.3043506e-11,4.8880862e-20,3.6923008e-26,1.9506244e-27,3.834758e-27,1.6376807e-25,1.5721321e-26,4.523519e-27,3.589875e-24,5.2720973e-18,9.844844e-25,1.9093683e-26,5.722694e-27,5.051575e-25,2.2240414e-26,4.25703e-27,1.6890652e-27,1.5315073e-26,6.83351e-27,8.5979614e-27,1.8700965e-18,1.1059938e-18,9.407562e-19,2.077563e-18,9.846713e-19,9.438224e-19,1.1475938e-17,1.1438781e-18,6.102778e-19,6.7819603e-19,1.04448605e-16,1.8167298e-15,4.474374e-16,7.4485663e-16,1.09614246e-14,5.2901704e-13,2.5152661e-07,0.99999976,3.244131e-18,4.1787976e-10,1.0121078e-15,1.776025e-17,1.3512367e-17,3.9422382e-17,1.6191577e-16,1.4992817e-17,8.0812065e-17,2.2400791e-14,4.284392e-15,2.5101155e-17,2.2739721e-17,5.758526e-17,2.0208621e-17,6.738716e-18,1.7463363e-18,6.0785243e-18,2.0012308e-17,4.262462e-17,3.065944e-09,1.8386007e-09,1.4547331e-09,1.96305e-09,1.2277191e-09,9.856913e-10,5.994509e-09,2.544866e-09,1.1733942e-09,1.2921746e-09,5.727995e-08,2.0768951e-07,1.1556091e-07,1.5363932e-07,5.5490875e-07,1.7626135e-06,9.639003e-05,0.83533746,0.16455956,1.2775272e-09,2.8660208e-06,1.1092947e-07,5.983272e-08,6.3564045e-08,5.873625e-08,1.18411e-08,1.7065597e-08,1.1536864e-07,2.5275992e-07,1.0919296e-08,8.848485e-09,9.064647e-09,5.9487895e-09,3.1149086e-09,2.0599953e-09,2.316336e-09,3.4457e-09,1.1947227e-08,7.016914e-08,2.1455338e-07,2.2549166e-07,1.6132492e-07,1.872262e-07,1.0881313e-07,6.2739495e-08,4.1855273e-07,5.570486e-07,6.433942e-07,2.5407785e-06,1.0943319e-05,2.5730675e-05,3.066049e-05,2.6974683e-06,7.884383e-07,2.3964888e-06,2.6040188e-05,1.6448324e-05,0.000118277705,5.272222e-08,0.74248624,0.20894547,0.04758494,4.8396392e-05,0.00016051838,0.0004271026,8.690043e-05,2.9389314e-06,3.8319786e-06,9.803443e-07,1.611886e-06,4.3683594e-06,2.2196218e-06,4.1439453e-06,9.143611e-07,1.1047864e-07,7.87479e-08,9.768357e-10,3.1084126e-09,4.1274526e-09,3.0422087e-09,3.0451057e-09,2.0001625e-09,9.863843e-10,8.7029886e-09,1.6221748e-08,2.8761622e-08,1.6875055e-07,3.1804957e-06,7.4094164e-06,1.1947676e-05,4.9133547e-07,2.2584258e-08,3.8835946e-08,3.2154645e-08,6.746321e-09,1.070025e-07,0.01735449,1.232302e-09,0.8129567,0.16959338,3.6816334e-06,1.5660728e-05,3.9425133e-05,1.1943745e-05,5.2202793e-08,1.10336074e-07,2.6587418e-08,5.5296585e-08,2.1884267e-07,1.567389e-07,4.610065e-07,8.042584e-08,4.8214055e-09,1.4938809e-09,8.223452e-12,1.57663e-11,1.6557202e-11,1.5447558e-11,1.4345827e-11,1.20868975e-11,8.776373e-12,4.0943842e-11,7.860914e-11,2.1912576e-10,6.9808017e-09,6.358712e-07,1.6090587e-06,3.1586842e-06,5.524442e-08,2.4840638e-09,1.4114085e-09,1.0946993e-09,8.8886926e-11,9.994764e-10,8.4575244e-05,0.014078431,2.1340473e-11,0.985819,6.357663e-07,2.55357e-07,2.424988e-06,9.162883e-06,5.1537064e-09,1.448699e-08,2.7810112e-09,6.507456e-09,2.3064729e-08,1.509708e-08,6.3589816e-08,5.6321627e-09,1.5285515e-10,2.965273e-11,1.1089587e-11,2.1331627e-11,1.2898888e-11,1.1231355e-11,6.008341e-12,4.121403e-12,6.9307303e-12,1.6012499e-11,3.774037e-11,4.819808e-11,2.89501e-09,1.8129164e-07,1.5069697e-06,1.1440344e-05,2.7484386e-06,2.405695e-08,5.686216e-09,4.6943374e-08,2.6039687e-10,1.0661875e-09,1.9340512e-05,0.002949062,0.9898864,2.142852e-11,6.952377e-05,1.4036071e-06,2.1021933e-05,0.007035235,6.855986e-08,1.10029525e-07,2.1374749e-08,5.6830963e-08,1.8738479e-07,9.0870024e-08,1.0741926e-06,4.557232e-07,2.1237667e-09,1.4232503e-10,3.4292432e-07,3.9997968e-07,3.0414694e-07,2.856561e-07,2.4177584e-07,1.4567044e-07,3.1149676e-07,2.797869e-07,3.0497065e-07,2.1277776e-07,1.112502e-06,1.0201583e-06,1.9670517e-06,6.3954285e-06,2.5868607e-05,8.921226e-05,3.4736888e-05,6.142221e-05,1.4577176e-05,1.3428226e-05,0.00026810315,0.00087258144,0.008701139,0.9475971,2.920671e-07,0.0012751985,0.0034734937,0.037124276,0.00037189617,3.1271386e-05,7.3643237e-06,4.4217322e-06,3.4571763e-06,2.3642333e-06,4.7481353e-06,7.02659e-06,1.6763438e-06,1.0072725e-06,9.142772e-07,3.275177e-06,4.33276e-06,1.8588695e-06,4.066061e-06,2.2254842e-06,5.350048e-07,2.228868e-06,3.3100062e-06,1.919439e-06,5.051888e-07,2.240021e-08,1.1563264e-07,2.7572221e-07,2.2162382e-07,3.5081166e-06,1.3363977e-05,2.2878588e-05,1.7473725e-06,3.5044654e-06,0.0011511474,0.004805014,0.0045242193,0.024765853,0.0016508023,3.7809406e-07,0.66997474,0.29277375,0.00014908928,3.8891263e-05,1.2536133e-05,2.7379161e-05,2.4197398e-05,1.2376467e-05,1.0161107e-05,6.655389e-06,1.1970044e-06,7.06273e-07,5.76045e-10,1.8922295e-09,2.5205953e-09,1.3128032e-09,4.6116284e-09,3.5904306e-09,5.396527e-10,1.7705233e-09,4.5016137e-09,4.5187063e-09,6.9973356e-09,2.3894942e-09,4.8563793e-09,9.49604e-09,1.4469566e-09,1.501084e-07,0.0001067626,2.9903284e-05,1.5511866e-08,8.3183584e-09,5.044577e-06,1.9922429e-05,7.076066e-05,0.0006108953,7.405769e-06,0.00110343,6.227106e-10,0.99803954,4.3391688e-06,7.935594e-07,1.1087612e-07,3.9320582e-07,2.4765455e-07,8.6318465e-08,9.539724e-08,4.5446654e-08,5.448366e-09,1.762965e-09,1.1236118e-11,1.597425e-11,1.1982043e-11,1.1990112e-11,1.3618205e-11,8.02663e-12,8.758779e-12,8.18758e-12,1.38479705e-11,8.071921e-12,1.8141509e-10,2.1668482e-10,2.2653565e-10,7.240931e-10,2.69087e-10,2.2883489e-08,0.0018230929,0.9715353,9.512336e-08,1.2440559e-09,2.2706535e-08,1.3351979e-07,5.9149406e-06,0.004522814,1.7510462e-06,1.06673015e-05,0.022079222,1.3775972e-11,2.0260382e-05,4.0441677e-07,2.7205985e-08,3.8118753e-07,6.549246e-08,1.0575886e-08,1.4019648e-08,2.1879268e-08,1.0214448e-09,1.5301586e-10,7.9259564e-07,5.5946106e-07,3.9778607e-07,3.7668596e-07,3.5619487e-07,2.797144e-07,6.705708e-07,3.329591e-07,3.2207248e-07,3.2755864e-07,4.275156e-06,3.2136602e-06,2.1906733e-06,2.4409565e-06,3.306197e-06,2.9249399e-05,0.0007522014,0.0087729,0.0008797787,0.00013180148,3.7134538e-05,2.8220093e-05,0.00016087847,0.0021313757,0.00084824505,0.00026268107,0.0046419725,0.97973275,6.6616565e-07,0.0011143922,0.00017982941,0.00017400367,5.3010506e-05,1.7058306e-05,1.1895007e-05,1.018429e-05,5.54423e-06,4.24977e-06,1.8917832e-09,1.875651e-09,1.235688e-09,1.0677866e-09,1.0775931e-09,7.465152e-10,6.60918e-10,1.0010973e-09,1.2020158e-09,9.715728e-10,4.6216693e-09,1.2418389e-08,1.0181442e-07,4.400107e-08,7.729778e-09,3.6944364e-08,2.2884268e-07,4.2837192e-07,1.29769795e-08,1.4335169e-08,1.2190112e-07,1.5016847e-07,1.1385522e-06,8.611822e-06,1.7957377e-07,1.7251645e-07,2.1373298e-06,4.9236285e-05,2.8056545e-06,1.6771751e-09,0.039142426,0.85889846,0.07867783,0.007930084,0.013777261,0.001503545,4.651945e-06,3.0013294e-07,8.679484e-12,9.5005835e-12,8.275011e-12,8.8795854e-12,1.0927078e-11,1.01142645e-11,4.9713246e-12,8.943393e-12,9.320026e-12,1.16817285e-11,2.9344513e-11,9.270936e-11,1.9532174e-09,7.0878614e-10,8.742292e-11,2.926382e-10,1.5741544e-10,6.7174516e-10,6.150888e-11,6.0778375e-11,1.6316809e-10,1.893256e-10,1.1435339e-09,8.753045e-09,2.2125879e-10,2.9094738e-10,1.5624353e-09,1.7329759e-08,2.3687998e-09,0.00020479516,8.775064e-12,0.9247954,0.06889133,0.003255076,0.002659362,0.0001938625,1.7665738e-07,5.4495986e-09,4.877323e-17,5.683882e-17,5.918853e-17,9.3684564e-17,1.3324966e-16,1.3435524e-16,3.2846257e-17,1.1162683e-16,1.4054335e-16,1.5551271e-16,2.3392737e-16,8.417624e-16,3.9442713e-14,2.5210089e-14,5.351874e-16,3.5843732e-15,5.0011133e-14,5.6156176e-13,1.4751315e-15,5.896545e-16,2.5407317e-15,3.72905e-15,2.5341073e-14,2.2039953e-13,1.2581373e-15,6.017804e-15,5.2474836e-14,2.2995043e-12,2.1706688e-14,4.2558003e-08,8.758166e-06,8.310321e-17,0.991585,0.007393605,0.0009917651,2.0899675e-05,2.8517674e-10,1.5501639e-12,3.3372264e-17,5.3667498e-17,4.9352626e-17,7.014102e-17,1.2116878e-16,9.576833e-17,1.8966552e-17,4.7592498e-17,1.06573116e-16,1.413562e-16,1.7086689e-16,6.201437e-16,4.19521e-14,5.4476863e-14,9.342366e-16,6.7511655e-16,2.4411225e-15,2.3753828e-14,4.9736504e-16,3.7178804e-16,6.61549e-15,1.4179217e-14,8.6294145e-14,6.981988e-13,9.450941e-16,5.1098317e-15,3.1753896e-14,3.7958243e-13,6.3535658e-15,3.7455106e-09,6.268322e-07,0.9526846,7.9843026e-17,0.04363453,0.0036443465,3.587275e-05,3.700375e-10,1.686358e-12,1.0500338e-15,1.3349383e-15,1.1895491e-15,1.5483782e-15,2.3699372e-15,2.6597074e-15,6.640416e-16,1.7986734e-15,3.2354793e-15,5.0316468e-15,4.651738e-15,2.3615592e-14,1.4295018e-12,3.400337e-12,9.286483e-14,1.7791947e-14,1.5338378e-14,8.2905044e-14,3.0241276e-15,3.5497393e-15,6.12924e-14,1.851744e-13,1.0299361e-12,6.173761e-12,1.1784975e-14,4.7656062e-14,2.0180819e-13,1.1176758e-12,3.7279885e-14,6.8836874e-09,5.400477e-07,0.12952684,0.7956364,1.4558657e-15,0.07385145,0.0009847146,9.20672e-09,4.1488084e-11,7.257639e-15,7.481911e-15,5.1988544e-15,5.59421e-15,4.5786713e-15,4.923097e-15,3.3461494e-15,6.792636e-15,1.1441043e-14,1.40892665e-14,4.0878433e-14,5.978398e-13,5.0377983e-11,3.2704342e-10,8.530603e-12,1.4445774e-13,2.953672e-14,1.5275774e-13,3.639423e-15,1.0901825e-14,5.3140223e-13,2.529257e-12,2.0145899e-11,3.389168e-10,1.099117e-13,1.8169553e-13,1.0357444e-12,6.880467e-12,1.2072176e-13,5.5537658e-08,2.0489447e-06,0.080685236,0.30859277,0.34295788,6.7608772e-15,0.2677615,3.6808146e-07,5.747799e-10,5.038738e-14,4.1988677e-14,2.6144565e-14,2.939081e-14,1.7698027e-14,1.5711285e-14,1.3143731e-14,2.1804473e-14,3.425023e-14,1.9368128e-14,4.709555e-14,1.5862116e-13,6.866342e-12,5.89524e-11,4.1097438e-11,1.3937188e-12,3.3377104e-13,4.9989396e-12,4.5720026e-14,4.4242347e-14,4.2318587e-13,1.592524e-12,6.4398825e-12,5.189382e-10,5.870414e-13,4.295165e-13,1.7808295e-12,3.875407e-11,3.730402e-13,2.1874813e-08,5.390762e-07,0.0061366092,0.010963124,0.016504249,0.96638864,2.4400949e-14,6.782757e-06,6.976864e-09,7.899177e-09,4.6956123e-09,3.4474346e-09,3.9494434e-09,2.6527807e-09,2.4503903e-09,3.2423106e-09,2.8929046e-09,2.8519085e-09,1.7906558e-09,7.4243274e-09,1.7914733e-08,8.865819e-08,2.3485731e-07,4.7970326e-07,2.2270711e-07,5.96761e-08,2.635359e-07,1.778451e-08,7.775896e-09,6.0412684e-09,1.1279754e-08,2.0649958e-08,2.8573126e-07,1.6547164e-08,9.1272385e-09,2.5224532e-08,2.1376458e-07,2.399397e-08,7.996488e-06,5.803962e-05,0.009893259,0.01336141,0.01823168,0.1569582,0.80138767,2.8829898e-09,9.9814024e-05,5.175804e-05,1.115633e-05,5.661113e-06,3.6793253e-06,2.4944115e-06,1.9044995e-06,5.293385e-06,2.8546085e-06,1.8698552e-06,1.0974745e-06,7.040157e-06,6.3073435e-06,1.7338029e-05,3.4416622e-05,9.084225e-05,7.948477e-05,6.0078517e-05,0.00024213747,2.7661577e-05,1.9688425e-05,3.1445559e-06,2.5521867e-06,2.925329e-06,1.398309e-05,7.260699e-06,3.9326633e-06,5.9603453e-06,2.3384506e-05,1.3430654e-05,0.00037674676,0.0013074594,0.03927117,0.04446587,0.059995078,0.1789833,0.6019599,0.07288909,2.1053e-06]" ] }, { "cell_type": "code", "execution_count": 265, "metadata": {}, "outputs": [], "source": [ "alpha = np.reshape(alpha, [38, 38])" ] }, { "cell_type": "code", "execution_count": 266, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.00056962966\n", "2.1429629e-05\n", "1.7293179e-06\n", "7.102476e-08\n", "3.6675576e-11\n", "2.8099684e-11\n", "1.2739303e-06\n", "5.9126988e-09\n", "3.970699e-09\n", "1.13365935e-10\n", "5.940336e-14\n", "5.289501e-21\n", "5.4156302e-21\n", "1.2646466e-19\n", "7.278694e-18\n", "2.5008383e-13\n", "7.4756174e-29\n", "7.4756174e-29\n", "3.244131e-18\n", "1.2775272e-09\n", "5.272222e-08\n", "1.232302e-09\n", "2.1340473e-11\n", "2.142852e-11\n", "2.920671e-07\n", "3.7809406e-07\n", "6.227106e-10\n", "1.3775972e-11\n", "6.6616565e-07\n", "1.6771751e-09\n", "8.775064e-12\n", "8.310321e-17\n", "7.9843026e-17\n", "1.4558657e-15\n", "6.7608772e-15\n", "2.4400949e-14\n", "2.8829898e-09\n", "2.1053e-06\n" ] } ], "source": [ "for i in range(38):\n", " print(alpha[i][i])" ] }, { "cell_type": "code", "execution_count": 302, "metadata": {}, "outputs": [], "source": [ "for i in range(38):\n", " alpha[i][i] = 0." ] }, { "cell_type": "code", "execution_count": 267, "metadata": {}, "outputs": [ { "data": { "image/png": "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St7CGUk6duyY5s+fr/79++uDDz6wpikAAAAAgM/Et62vp+7spohaQR5rCgqLNf2DzVr17QELOwMAAPAdn8ygqV+/vnr06OEylpGRof3797vMcomKiiq1h4xz4FKWpc9sNvcZlN1u14033qhevXpp1qxZiouLk/S/gMY0TQUGBup3v/udBg0apAEDBpTrGq128uRJvfTSSy5jUVFRuvvuu33U0cXl5uZqxowZ2rJli2bPnq2gIM+/qFcVvwaGvu6i8rm7xl/HasDFw2e47+Ar3HvwBe47+Ar3HipTq6Z19OzYHnpl+Tad9LDnjGlK73y6U4ePZ2rUgDay2bj3UHn4bx58gfsOvlKT772yrNDlKz4JaPr27VtqubB169ZpwoQJLmPx8fF67bXX3B5j0KBBl7U8mt3+67TqOnXqaMaMGSXjsbGxCgwM1A033KAnnniiSuyXUlRUpMcff1znz593GX/sscdUp04dS3oICgpSXFyc+vbtq3bt2qlFixaKiIhQYGCgMjMzdfjwYf3www9asWKFTp8+7fLedevWqXbt2i7/O1RVdevW9nULPhMTE+7rFlADcd/BV7j34Avcd/AV7j1UpNjYcL38WF9Ne3+zdh0847Huy4RjOpdbpCdGxyk0xOers6MG4b958AXuO/gK957vGWZZpqFYwBHQOM+gGTBggMeApjzatm3r8twwDH300Udq37692/rdu3erXbt2l31eq/ztb3/TkiVLXMZ+//vfa8GCBZWeDqalpWnZsmW64447FBsbe9H6goICvfnmm3rjjTdKQjKHadOmafjw4ZXVKgAAAADATxQWFWvusm36essxr3WtrqijKff9RtGRoRZ1BgAAYB2/CWh++uknzZ0712UsPj6+1KyaS/HCCy8oJCREoaGhJY/BgwdXiw3qFy1apKlTp7qMNWzYUCtXrvTr6/v000/11FNPuYw1atRIX3zxhYKDg33UFQAAAADAKqZpasm6PVr2ZYrXuvrRYZryx15q3jDSos4AAACs4TcBDcrvs88+0xNPPOEyEyUiIkKLFy8uNWvIH7mb+TNr1izddtttPuoIAAAAAGC19ZuP6LUV21Vs9/znidqhgXpmXE91aV3Pws4AAAAqFwFNFfXtt9/qwQcfVGFhYclYaGio3n33XcXHx/uws7I7c+aMrr32WuXn55eMDR48WLNnz/ZhV5cn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WXPPz18VP7p/buzYWZlQMwCaCgNNA1RRURGXXHJJzJs3r9bxk08+OW666aZIZblZ3b464YQTYsCAAR/8OeGEEz7R484///woLS2tdexf/uVfdruvzEdt27YtJk2aVOvYwIED48QTT9y74gAAAAD1pFVhQVx2zpD47IgeWXOLlm2MKXfNinWbyxNqBkBTYKBpYKqqquKKK67Y7d4sxx57bNx6662Rn5/5JnW50KpVq7jkkktqHZs3b15873vfi127du3xMVu3bo1LL7003n///VrHr7zyynoZnwAAAAD2VX5eXow7+ZA47/iDs+beX7c9Jk+dGW+v3JJQMwAaOzf7aGB+8pOfxNNPP13rWEFBQfTp0yd+/OMf79NzHnbYYXHqqafWRb09GjNmTDz22GMxZ86cD4499thj8frrr8fFF18cI0aMiJKSkli9enW88MIL8dvf/na3cebzn/98HH/88fXWEQAAAGBfpVKpOOXI3lFaXBS/fmxhVFbt+Z4zm7fvipvvnhX/dMZhMaJ/54RbAtDYGGgamNWrV+92rKqqKqZNm7bPz3nWWWfV60BTUFAQP/7xj+PCCy+M5cuXf3D8jTfeiOuuu+5jHz906NCYMmVKvfUDAAAAqAujBnaJju0K4/YH58W28j3fc2ZXZU389KH5MeZz/eNzo3ol3BCAxsQlzqgTXbt2jbvvvjvKysr26nEnn3xy3HnnndG2bdt6agYAAABQd/r1KI4bxpdF106tM2bSEXH3X96Ie/7yRtTUpJMrB0CjYqChznTu3DmmT58eN910UwwYMCBrduTIkXHHHXfET37yE+MMAAAA0Kh06dg6Jo4ri0N6FmfNPTXj3fjZw/OjorI6oWYANCapdDptxqdevPvuuzF//vxYuXJlVFRURKtWraJHjx4xbNiw6Nq1a67r1Yv167c1i9+MSaVSUVpae1hbt25beDmhPjnvyBXnHrngvCNXnHvkgvOOXKmLc6+yqibu/OOieGnh7pes/7CDureLy0cPi+I2LfepK02H1zxypTmfe3l5qSgpaZgfEnAPGupNr169olcv11oFAAAAmqYWBXnxjS8eGqUdWsVjL7yTMff2yq0xeeqMuOLcYdGjtE1yBQFo0FziDAAAAAD2USqVirOP7RsXnTow8vNSGXPrNu+MKdNmxqJlGxNsB0BDZqABAAAAgP10zLAD4srz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shSjQkkESu5ZLTs7W0lJSR5NVkrS+vXrNWDAAKeCQ3k3f/58/e1vf9NNN92kq666SsOGDdP06dO1atWqMv93FRTEab8VkpOTtW7dOq8mi6Q/xoCnnnpKzz77bClHVjQrzrcY70pXIOXeunXrvC7OSH9M+IwYMUJvvvlmKUYFbwRS3lktLy9PY8aM8ag4I0kpKSnq37+/9u7d66PIAlN5z72GDRsWW5yBfzp27JgefPBBLV682LRjMpfnf1jiDIBXsrKyNGLECGVkZBja27ZtqyFDhqhly5aKjIxUamqqVqxYoffee0+ZmZkX+33//ff65z//qSeeeMLtY+bl5Wn06NFOj142adJESUlJat++vWrUqKHU1FT9+OOPWrBggVJTUy/227ZtmyZMmFCiuxvgP9q2baurrrpKV1xxherUqaOYmBjl5+df/Pd///33dezYsYv98/PzNX78eFWrVk3XXXed18e95557VKVKFY+2qVWrltfHg/+JiIhQ//79Pd7uiiuu8HibCRMmOE1a1a5dW0OGDNHVV1+tWrVqKT09XZs3b9b8+fMNF+sHDx7UqFGj9N577ykkhFM+6Y/CYHl19dVXWx0C/r8GDRrommuuUadOndS4cWPFxMSoYsWKSk9P15YtW/TRRx9p69athm0++OADxcTEaPTo0T6Pz6rzLcY73/P33LtUfHz8xVgbNGigatWqKTg4WGlpadqwYYMWLVqkX3/91bDNtGnTVK1atRLdAd+jRw+PJzkrVark9fHKg0DKO0kaPny4x9vEx8d7vM20adP0/fffG9qio6M1aNAg3XTTTYqLi1NmZqaSk5O1YMECbd++/WK/U6dOacSIEfrss8/87j0W/sRfcy8+Pt6rPPvTL7/8ojVr1hjaevfu7dW+uLYtXfXq1dMVV1yhNm3a6LLLLlPdunUVERGhkJAQZWdna9++fdqwYYOWLFliOHey2+167rnnVKdOHXXu3NmnMTKX5584ewX8VHh4uFq1aqVWrVqpdevWGjt2rNUhGcyaNctpcB0yZIjGjRtnWAc8KipKCQkJ6tu3r4YNG6Y9e/Zc/O7tt99Wz5491bx5c7eOuXjxYm3ZssXQduutt+rll182vF+katWqatasmXr37q2//vWvhgr9t99+q1WrVnm1BEJ54O95FxUVpT59+qhv37667LLLXPapVq2aWrZsqXvvvVeTJk3Shx9+ePG7vLw8Pfvss/r6669VsWJFr2IYPnx4sWv7wnP+nnuXioyM1GOPPebz46xcuVLffvutoa1Tp056/fXXDRdSVatWVePGjXXHHXfo8ccfN2yzZcsWffDBBxo0aJDP40Xp6dChQ4ku3Dds2OA04eDthbtZE1VlXUhIiLp3766+ffuqU6dOLvtUqVJFjRo1Up8+ffThhx9q4sSJunDhwsXv33jjDd16661q2rSpT2O14nyL8c53Ain3KlWqpDvvvFN9+/ZVy5YtXfaJjIxUfHy8+vfvr9dff10zZ840fD916lR16dJFMTExXsVw991368orr/RqW/xPIOWdIzPO8Xbt2qX58+cb2po2baq33nrL8NL6yMhINWjQQN27d9eUKVP0zjvvXPzu0KFDeu2110r0fsOyKBBy789rHm85Lr8bFBSkO++806t9cW1bcpdddpmeeOIJ3Xzzzapfv36h/SIiIlSzZk1dffXVeuCBB/Tyyy87PUH33HPPafny5T59zxRzef6JAg3gJ9q0aaPWrVtf/NOoUSPDciT+NFmZlpamRYsWGdpuuummItdRrVWrlubOnavbbrvt4qOJdrtd06dP1+zZs4s95tmzZ/XGG28Y2lq1aqVp06YpODjY5TZVq1bVnDlz1KNHD0P1ffr06brxxht5oawCJ+/Cw8M1YsQIDRs2zO07fCpUqKAXXnhBubm5+vzzzy+2HzlyRJ9++qkGDBjgq3DhhkDJPav8OT5eqnbt2po9e3ahd0pWqFBB//znP3X48GHt3LnzYvucOXPUp08f7vB1wV8Lg9dcc42uueYar7d3LMZUqVJFN998s1f7MmOiqiwLCgpSjx49NHr0aDVo0MDt7fr166eQkBBNmDDhYlteXp5ee+01vfrqq74IVZI151uMd74RSLkXGhqqAQMG6K9//atq1Kjh1jZBQUEaOXKkCgoK9Nprr11s//333/X222/r8ccf90msKFog5Z2VXn31VV36OujKlStr7ty5huLMpWw2myZMmKAjR44YnrpZtGiRhgwZUuh25Ul5yb2MjAytWrXK0HbNNdeQAxa69dZbPd4mLCxMzzzzjDIzM7Vs2bKL7UePHtXatWt99j4a5vL8F4tRA37i448/1jPPPKNevXqpSZMmfr1W/Lx585Sbm3vxc1hYmFtrtcbFxTk9Krxy5Urt2rWr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BMBtrgbBihUrerUvx+08GdR9fUwEvtzcXD388MPKyMgwtI8aNUrNmzf3aF/333+/+vfvr3r16rn8PiYmRjExMWrXrp2GDRumxYsXa+rUqTp//vzFPv/973/12muvacyYMZ7/MLBcdHS0xo8frz59+qhKlSou+9SsWVM1a9bU9ddfr5EjR+qll17Shx9+aOgzc+ZMdejQQVdffXWRxzt79qzhs7dPQRR28c4EUtmSl5enr776ytAWHx+v1q1be71Psyaq4NrkyZO1ceNGQ9t1112ne+65x2fHtOp8i/HOv1iRe94oKCjQ448/7jRx2K9fP91www0e7at379665ZZbFB8f7/L7atWqqVq1amrZsqXuu+8+ffPNN/q///s/w4RuSkqKXnjhBb388sse/yywNu/CwsI0evRo9evXT9WrV3fZJzY2VrGxserUqZNGjBihOXPmaPbs2Yan9JYsWaIOHTrorrvuKvJ4vhzzuLb1XCCMea6eku7Ro4fXucO1rf84e/asXnnlFa1du1Z//etfdeWVV/rsWMzl+T8KNACAMuXPi/YdO3YY2jt37qwHHnjA4/098cQTbvcNCgrSwIED1bhxYw0bNsxwV+eCBQs0aNAg1oYOQPHx8YVO3LhSuXJlvfDCC4qLi9Orr75q+G7atGn65JNPSjtElGOrV6/WyZMnDW29evXyal9mT1TB2cKFC/X+++8b2mrVqqW///3vstlsFkWF8iCQcu/ll1/WypUrDW0JCQl66qmnPN6XO0+2XurWW29VkyZN1L9/f0OR5quvvrq4pA3cZ3XeVa9eXQ8//LDb/StUqKDRo0erQYMGTtcIs2bNUs+ePUtleVH4ntW55y5XT0l7e54ncW1rlu7duyshIeHi57y8PJ05c0b79+/Xzz//fPHdaXa7XT/99JPWrVun++67T+PGjfOr/IN5eAcNALeFh4c7tTmuKekux+1c7duqYyKwTZw4UcuXLze0NW/eXK+88oppJztXXXWVxo4da2jLycnR4sWLTTk+/MNDDz2kLl26GNp27NihDRs2FLmd48uGL71jzROOL02WXK9ZjsDmeOEeEhKinj17erWvPyeqCivOOPpzomrq1KlO382aNcvr3C2vli1bpsmTJxvaqlSpojfeeEPVqlXz6bGtOt9ivPMPVuaep+bOnev03pm4uDjNmTPH6ztzPdW0aVOn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GdoSExOL3KZ69epq27at18e02+364osvDG2dO3d2eacC/F9hL3icMmWKbr75ZgsjMzp37pz+/e9/G9pat26tsLAwawKCJX7++WcdPHjQ0Ob4InVHoaGhTku3fPHFFy6XFSiM4xjZrl07LqDKEMcL99DQUPXs2dOiaP7H04mq8iYzM1NJSUlOy9n069dPTz75pDVBXcKK8y3GO3P4e+5d6siRI0pKSnJ6+vRvatdeUQAAGHlJREFUf/ubBg8ebFFUzux2u7799ltDW40aNVhq6hKBlHfeSE9P18aNGw1t7rwXyfF9E//6178MT4oVx3HMq1Wrll8s7exPAjn3XD0lnZCQoObNm1sU0R+4tvWdn376yamtbt26pX4c5vL8G1dMADxis9nUrVs3Q9u3337rsurvypIlS5zWFnfcnyuOfdavX69du3a5dcyVK1c63TnjzjHhf3799VcNGzbM6QWPzz33nF9MTl7qnXfecfp/wR295c+0adOc2tzJg1tvvdXw+ciRI1q5cqVbx9y1a5fT3U2MeWVHRkaGVq1aZWi74YYbLF9iwtuJqvIiOztbw4cPV0pKiqG9Z8+eev755y2KypkV51uMd74VKLknSSdOnFBSUpLTWvMjRozQgw8+aFFUri1btszp/wbnef8TSHnnrZkzZxqe5pfcywHHMSonJ0effvqpW8dMT093Kgx27drVrW3Li0DPPVdPSVv9jkGJa1tfKSgo0KJFiwxtUVFRateuXakfi7k8/0aBBijHmjVrZvjj7l1pw4YNU8WKFS9+Pnv2rCZOnFjsdsePH9f06dMNbYmJiUpISCh22379+ql69eqGtv/7v/9zWovSUVZWliZNmmRoa968udOdSzCPt3l3+PBhJSUlKSMjw9A+fvx49evXr9TjTE9PLza/CrNmzRrNmDHD0FapUiWfxAn3eZN7aWlpXh9v+vTpWrNmjaGtZcuWxT5BI/1xd6Xjmr0vvvhisXdY5ufn66mnnjK01ahRw69fggrPLF261GlpE3+4cPd2oqo8yM3N1YgRI5zerXLLLbdo6tSpPllnPDEx0TDeFXeH45+sON9ivPOdQMq9jIwMDR06VIcOHTK033vvvRo7dmypx3nq1CmnMctdu3bt0jPPPGNos9lsuu+++0ojtIAXKHlXknO8Tz75RB9++KGhrWbNmk4FZ1datGihLl26GNpm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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from matplotlib.font_manager import FontProperties\n", "import matplotlib.pyplot as plt \n", "myfont = FontProperties(fname=r'/usr/share/fonts/opentype/noto/NotoSansCJK-Black.ttc')\n", "plt.plot((1,2,3),(4,3,1)) \n", "plt.title(\"聲量圖\",fontproperties=myfont) \n", "plt.ylabel(\"文章數量\",fontproperties=myfont) \n", "plt.xlabel(\"時間\",fontproperties=myfont) \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 268, "metadata": {}, "outputs": [ { "data": { "image/png": "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77/f6Qn0xYsXa9y4cZe926A0J06c0IABA5wa3CVp9erVGj58uHJzc50+ZmXmL3m3bt06lws1knT48GENGjRIX375pRujQkX4S+6ZLTc3V8OHD3dq4lKSfvzxRw0cONCu+FDVLViwQE888YS6du2q6667TiNGjNCsWbO0bt26Sv93FRDAJYAZUlNTtXHjRpcmjqTfxoDJkyfrueeec3NkjplxvsV4517+lHsbN250uVAj/Tb5M2rUKP3tb39zY1RwhT/lndmKioo0btw4pwo1kpSWlqYBAwZo//79HorMP1X13GvUqNFlCzXwTceOHdMjjzyipUuXeu2YzOX5HpZBA1BhOTk5GjVqlLKysgztbdq00bBhw9SiRQtFRUUpPT1da9as0eLFi5WdnX2x3zfffKNXX31VTz/9dLmPWVRUpLFjx9o9nnnllVdq+PDhateunWrVqqX09HR9//33WrhwodLT0y/22759uyZNmlShux7gO9q0aaPrrrtO11xzjerVq6e4uDgVFxdf/Pf/8MMPdezYsYv9i4uLNXHiRMXGxuqmm25y+bj333+/qlev7tQ2derUcfl48D2RkZEaMGCA09tdc801Tm8zadIkuwmsunXratiwYbr++utVp04dZWZmKiUlRQsWLDBcuB86dEhjxozR4sWLFRTE6Z/0W5Gwqrr++uvNDgH/X2Jiom644QZ17NhRTZo0UVxcnEJDQ5WZmamtW7fqk08+0bZt2wzbfPTRR4qLi9PYsWM9Hp9Z51uMd57n67l3qaSkpIuxJiYmKjY2VoGBgTp+/Lg2bdqkJUuWaN++fYZtZs6cqdjY2ArdGX/XXXc5PeFZrVo1l49XFfhT3knSyJEjnd4mKSnJ6W1mzpypb775xtAWExOjwYMHq2vXrkpISFB2drZSU1O1cOFC7dix42K/06dPa9SoUfrss8987r0XvsRXcy8pKcmlPPvdzz//rO+++87Q1rt3b5f2xbWtezVo0EDXXHONWrdurSuuuEL169dXZGSkgoKClJubqwMHDmjTpk1avny54dzJarXq+eefV7169dSpUyePxshcnm/i7BXwA+Hh4WrZsqVatmypVq1aafz48WaHZDBnzhy7gXbYsGGaMGGCYd3w6OhoJScnq1+/fhoxYoT27t178bv33ntPPXv2VPPmzct1zKVLl2rr1q2GtjvuuEMzZswwvI+kRo0aatasmXr37q0//vGPhsr9qlWrtG7dOpeWSagKfD3voqOj1adPH/Xr109XXHFFqX1iY2PVokULDR06VFOnTtXHH3988buioiI999xz+sc//qHQ0FCXYhg5cuRl1wKG83w99y4VFRWlJ5980uPHWbt2rVatWmVo69ixo9566y3DRVWNGjXUpEkT3XPPPXrqqacM22zdulUfffSRBg8e7PF44T7t27ev0EX8pk2b7CYfXL2I99akVWUXFBSkHj16qF+/furYsWOpfapXr67GjRurT58++vjjj/XSSy+psLDw4vfvvPOO7rjjDjVt2tSjsZpxvsV45zn+lHvVqlXTvffeq379+qlFixal9omKilJSUpIGDBigt956S7NnzzZ8P336dHXu3FlxcXEuxXDffffp2muvdWlb/I8/5Z0tb5zj7d69WwsWLDC0NW3aVO+++67hhfdRUVFKTExUjx49NG3aNL3//vsXvzt8+LDefPPNCr0PsTLyh9z7/ZrHVbZL9AYEBOjee+91aV9c21bcFVdcoaefflq33XabGjZsWGa/yMhI1a5dW9dff70efvhhzZgxw+7Juueff16rV6/26HupmMvzTRRrAB/UunVrtWrV6uKfxo0bG5Ys8aWJy+PHj2vJkiWGtq5duzpcd7VOnTqaN2+e7rzzzouPL1qtVs2aNUtvv/32ZY95/vx5vfPOO4a2li1baubMmQoMDCx1mxo1amju3Lm66667DFX5WbNm6dZbb+VltPKfvAsPD9eoUaM0YsSIct/5ExISohdffFEFBQX6/PPPL7YfPXpUy5Yt08CBAz0VLsrBX3LPLL+Pj5eqW7eu3n777TLvoAwJCdGrr76qI0eOaNeuXRfb586dqz59+nDnbyl8tUh4ww036IYbbnB5e9vCTPXq1XXbbbe5tC9vTFpVZgEBAbrrrrs0duxYJSYmlnu7/v37KygoSJMmTbrYVlRUpDfffFOvv/66J0KVZM75FuOdZ/hT7gUHB2vgwIH64x//qFq1apVrm4CAAI0ePVolJSV68803L7afO3dO7733np566imPxArH/CnvzPT666/r0ldJR0REaN68eYZCzaUsFosmTZqko0ePGp7GWbJkiYYNG1bmdlVJVcm9rKwsrVu3ztB2ww03kAMmuuOOO5zeJiwsTFOmTFF2drZWrlx5sf3XX3/Vhg0b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iNC0adMuexxPjnm5ubku7asq84XcKw/b87zfl2N0Fde2vqFatWp69NFHNXjwYKeXzXYWc3m+j/9NAFxS2oAYGhrq0r5st3NmgPf0MeH/CgoK9NhjjykrK8vQPmbMGDVv3typfT300EMaMGCAGjRoUOr3cXFxiouLU9u2bTVixAgtXbpU06dP14ULFy72+e9//6s333xT48aNc/6HgeliYmI0ceJE9enTR9WrVy+1T+3atVW7dm3dfPPNGj16tF555RV9/PHHhj6zZ89W+/btdf311zs83vnz5w2fXX06oqwLeSaTKpeioiJ99dVXhrakpCS1atXK5X16a9IKpXv55Ze1efNmQ9tNN92k+++/32PHNOt8i/HOt5iRe64oKSnRU089ZTeJ2L9/f91yyy1O7at37966/fbblZSUVOr3sbGxio2NVYsWLfTAAw/o66+/1v/93/8ZJnfT0tL04osvasaMGU7/LDA378LCwjR27Fj1799fNWvWLLVPfHy84uPj1bFjR40aNUpz587V22+/bXh6b/ny5Wrfvr369u3r8HieHPO4tnWeP4x5pT09fdddd7mcO1zb+o7z58/rtdde04YNG/THP/5R1157rceOxVye76NYAwCotH6/gN+5c6ehvVOnTnr44Yed3t/TTz9d7r4BAQEaNGiQmjRpohEjRhju9ly4cKEGDx7MWtJ+KCkpqcxJnNJEREToxRdfVEJCgl5//XXDdzNnztTf//53d4eIKmz9+vU6efKkoa1Xr14u7cvbk1awt2jRIn344YeGtjp16ugvf/mLLBaLSVGhKvCn3JsxY4bWrl1raEtOTtbkyZOd3ld5nni91B133KErr7xSAwYMMBRsvvrqq4vL3qD8zM67mjVr6rHHHit3/5CQEI0dO1aJiYl21whz5sxRz5493bIEKTzP7Nwrr9Kennb1PE/i2tZbevTooeTk5Iufi4qKdPbsWf3yyy/66aefLr5rzWq16ocfftDGjRv1wAMPaMKECT6Vf/Ae3lkDwCXh4eF2bbZrUJaX7Xal7dusY8K/vfTSS1q9erWhrXnz5nrttde8duJz3XXXafz48Ya2vLw8LV261CvHh2949NFH1blzZ0Pbzp07tWnTJofb2b6o+NI72Zxh+8JlqfQ1zuHfbC/ig4KC1LNnT5f29fukVVmFGlu/T1pNnz7d7rs5c+a4nLtV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tDRt2LBBn332WakXQWPGjNENN9xQ7mN36dJF3bp10+rVqy+2bdy4UT179tTw4cN1/fXXKz4+XidPnlRKSooWLFigffv2GfbRrl073X///a7/BcCn7NmzR7t27TK09ezZ0y3rNs+fP19btmzRI488os6dOyskJOSy2+Tn52vOnDmaP3++3XfOTFpVZrNnz7abeAkKClJiYqLdXarl1aJFC48Wwsw432K8cz9/yr3nnntOO3fuNLRFRESoRo0apS4nWh433HDDZX/nHj9+XC+//LJmzJih6667Th07dlRycrIaNmyo6tWrKywsTDk5OTp27Jg2b96sL774wq6gJP12p+9zzz3nUpyVjT/lnSTt2rVLY8eOVWRkpG699Va1bdtWycnJql27tqpXr66goCCdOXNGBw4c0MaNG7Vs2TKdPn3abj+9e/dWv379yn3c5s2ba/jw4XrvvfcutqWlpenee+/VkCFD1KVLFyUkJOjMmTNKTU3VwoULtX37dsM+GjZsyPXFJfwt90pT2tPTvXr1ctv+ubb1jLS0ND3xxBMKDw/XrbfeqjZt2ig5OVkJCQmKjIxUWFiYcnNzderUKe3evVv//e9/tWbNGrslxQICAvTiiy/aPYXibszl+SaKNYAPSktL07x588rdPyUlRSkpKaV+V69ePY8XayIjI/X2229r8ODBhrvRtm3bZnd35P9r7+5jq7rrP4B/em3pBS4rOJCxCm5kLbAN0K0bGgnJdDoya1DcNJtg4oiiYpiK0Y0Zs4WJmctMOsaYmj0kHSMxU0kkE8VhMhuzzc1NClNctAFGamEDBNqu9On3h7G/Fcp2b3tvz215vf7aOef78Bm5XM457/s9ZyAf+chHYs2aNTnNWVpaGvfff38sW7as3yMSXn311bj99tvfsf+8efNi/fr1Oc052o2Uz93pK2oi/ruUO5faTzdz5sysX8b55ptvxo4dO874NVs2PvjBD0ZdXV2UlZXl3Hc0Gymfvbd644034sknn4wnn3wy57633HJLfP3rX8+53/r166O5ubnf4xwOHjx4xpLwgcyYMSPuv//+UfkCxsEaKSHh2Zy+qiYivxfxSd20Gs0G+pV0V1dX1NfXD3rMT3/60wW9eZTU+Zbvu/waSZ+9gc7zWltb4+GHHx70mOXl5Vn/QKKrqysaGhrOeHRpNmbPnh0//elPI5PJ5Nx3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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from matplotlib.font_manager import FontProperties\n", "import matplotlib.pyplot as plt \n", "myfont = FontProperties(fname=r'/home/gezi/py3env/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/微软雅黑.ttf')\n", "plt.plot((1,2,3),(4,3,1)) \n", "plt.title(\"聲量圖\",fontproperties=myfont) \n", "plt.ylabel(\"文章數量\",fontproperties=myfont) \n", "plt.xlabel(\"時間\",fontproperties=myfont) \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 269, "metadata": {}, "outputs": [ { "data": { "image/png": "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AAAA4JQQoAAAAABYFmZmZiTNr/xIt127dikrK0uPPPKIfvKTn+jQoUO69957VVtbK0n6t3/7N911112amZmRYRjatWuXrrnmmpMef8uWLRofH0973+l2++236w//8A8z3QYAAACwJBCgAAAAAFgWfh1A5OXlLcr4N910k5qamnTbbbeptbVVV111lb74xS/q5Zdf1gsvvCBJys7O1je+8Q1dccUVi9LDcvX4449r586dp33/I488okceeeSU7vnUpz6lu++++7RrAgAAAB+GAAUAAADAsjA6OipJ2rdvnxoaGj7wuieffPKE75/Ijh07tH79en3hC1/Q4OCg7r333uR769at09///d+f1EHzqTjzBAAAAFh+CFAAAAAALAvDw8OLOn4wGNQzzzyjn//85xocHHzP+729vXrooYf0iU98QhdeeKFcLtei9rOc7NixQ5dffvkZrbkYW7kBAAAA70SAAgAAAGDJGxkZ0fT0tKT5rba2b99+2mOVlJQoGo3qyJEjevvtt/Xaa6/plVdeUXd397uua2xs1LXXXqtwOKzHHntMPT092r17t3bv3q2cnBxdcMEF2rp1q7Zu3aqmpqb3HDq/mjgcDjkc/HoJAACAlYWfcAEAAAAsee3t7ck/X3jhhaqrq7M03m233aZ///d/f8/XKysr9dGPflRXXnmlNm3alPz6ddddpz179mj37t16+umnNTU1pWeffVbPPvuspPnVEOvXr9f3v/99+f3+E9aenZ3V5s2bLfWfLn/913+tz3/+82kd83S3TztZ9913H2fQAAAA4IwgQAEAAACw5L322muS5g9xX7duneXxvvrVr2rfvn2anJzUOeeco61bt2rbtm1au3bt+15vt9u1fft2bd++XTMzM3r55Zf1/PPP68UXX9TRo0cVjUbV0NDwoeEJAAAAgOWDAAUAAADAkvfrlR7nn39+WrbKys3N1e7du09rrOzs7GSYIkljY2Pav3+/NmzYcMpjnc4KkGAwqI997GOSpJ07d+pP/uRPTun+/v5+S1ugnawvfOEL+spXvpKWsY4ePaqPf/zjaRkLAAAAOFkEKAAAAACWtGAwqAMHDkiSLrvsMknSH/zBH2j//v2ZbEt33XWXrr76ahUUFOjSSy/NaC8AAAAA0o8ABQAAAMCS9sMf/lDS/KqRT3ziExnuBqfrq1/9qp588smTutbt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fffdlZ7bMAy9/PLLatKkyUVl69Kly0W9DgAAAAAA+L/QEJfGDuykF97bpC05eZXOHM0v1sy0DE2+rZtiovgBSwAAagq/KFBKSkqUnZ0twzDOumWXaZr67rvvznqNYRgVX3u9Xn333XeVvt4wDJWVlV1UrsLCQt17772aMWOGmjVrdlHnAAAAAAAA/s0dGqJxQxL13LtZ2rEvv9KZQ7lFmpmWqcdvS1Z05PndQhwAAAQ2vyhQfurGG2+UJJ0+fVpr166VYRi68sorFRUVdcZxKzfccINcrh/uTLZixYoz1jZu3KjFixefd5a///3vyszMVGpqqlauXKnIyMgLfTsAAAAAACAAhLtD9MjQRM2an6ndBwsqndl/rFDPzs/UYynJqhXhd99SAQAAVczv/m//wgsvSJJ2796tfv36SZL+53/+R23atDnreGVmzJhRUXR06NDhjLVVq1Zp/vz5Fb/PyclRq1atKj1Pfn6+3n77bRmGocTERMoTAAAAAACCXGR4qCYM76pn5mVo75HCSmdyDp/S8+9laeLwJIWHhdicEAAA2CngHyJ/IY4dOybTNCtu9fXggw/qd7/7nQoKzv7JkjfffFOnT5+WYRgaP368A2kBAAAAAIDdakW4NXFEkpokRFnO7Nx/Ui+8v0llnnIbkwEAALvVqALlz3/+sxYsWFBRovh8Pi1atEgDBw5UVlZWxdypU6c0d+5cGYahm266SW3btnUwNQAAAAAAsFPtWmF6LCVJDeKs70axbU+e/rogWx6vz8ZkAADATjWqQJGkjh07Vnxdv359maapgwcP6q677tLnn38uSZo7d64KCwtlGIYeeughh5ICAAAAAACnxEaHa1JqshJiIyxnNu/O1asfblG5jxIFAIBgVOMKlJ+aPXu27rrrLklSSUmJHn74Ya1evVpz5syRYRi69tpr1bJlS2dDAgAAAAAAR8THRGhSarLiaodbznyz45heX7JNPp9pYzIAAGAHxx4iX1hYqGPHjkmSDhw4UHE8JydHpmmecezAgQMKCQmxnM3Nza04tmfPHoWHW//D5qfCw8MrHlD/hz/8QR6PR2PHjlV5ebkMw9A999zzi94jAAAAAAAIbPXqRGpSarKmzf1GBafLKp35cusRuUNcurtfB7kMw+aEAACgujhWoKxcuVK///3vzzhmmqZuuumms47df//9Z73eanbQ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nTo1unfvvsf39V//9V/xi1/8osFlmUwmevXqFb169Yrly5fHpk2bdq1ls9n46U9/GlVVVXH99dfv4yMkn/bd448/Htdff32D/5//1/++5bW0tDQ2bdoUy5Yti/r6+l3ra9eujU996lPx05/+NI466qg0Y7OP8mnv5YLnvPzxTuVdSzNq1KhcR2A3brnllrj99tsbnC/9rz59+kSvXr0im83GunXrYvXq1Q3WKyoq4pxzzolp06Y1+QuKzvNav3zbe871CkO+7btc8JyXG6157/Xq1SuOPfbYXMdgN+bMmfO28qR9+/bRp0+f6NSpU2zbti2WLVsWVVVVDWamTJkSq1atiltvvbVZ3nnnPC8/KVBgP3z3u9+NRx555G3/iOfSmjVr4rLLLmvwZDthwoS48sorG/zSsmnTprj77rvjzjvv3PUWvbfeeiu+8pWvxB133LFH93Xfffc1eLItLi6Oj3/843HhhRdG3759d10+d+7cuOmmm+KZZ57Zddkvf/nLOPTQQ+PEE0/c58daqPJt302bNq3BP6p9+/aNiRMnxgknnBDDhg1rMFtZWRkzZ86MH/3oR7F06dKIiKipqYkrr7wyHnrooQb7Zk+cdtppcfrpp+/VdfLxxLqlyLe911jPnj3jhhtu2Kvr7M1fznjOy63WWt75xTp//fznP2/wy+nYsWNj4sSJceyxx0bPnj0bzK5evTqmTZsWd911V2zbtm3XZZdffnnce++9UVRU1CSZnOcVhnzbe871CkO+7bvGnOe1Xvmy97785S/v9bsRGquoqIibb7551/GZZ565Vy+yX3jhhXHMMcfs1X0OHjx4r+ZpqG3btnHOOefESSedFOPHj4/i4uJdazU1NfHCCy/EHXfcEc8+++yuy5988sn44Q9/GFdddVWTZnGel798hBfsh8MOOyzxczm7du0a27dvj+rq6ohI7+NsLrvssvjjH/+46/jkk0+O7373u4mfh/jkk0/GF77whV05I975Lab/a9WqVXHiiSfG9u3bIyKitLQ0brzxxjjhhBN2O19fXx9f+cpX4sEHH9x1Wa9eveLxxx+Ptm3b7vHjI//23SWXXBJPPfVUtGvXLi6//PK44IILoqys7B2vs3Xr1rjssssavEX63HPPjW9+85vven///LEO7/SxNzS9fNt7EQ0/2mHAgAHxxBNPNMv9eM7Lrb0p75pz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KlasqDlz5ui//uu/3FqPs4cfL1q0SD/88IORrlixovr06eOuZsGDnOkTJ06c0MSJEy2ulTQOMebBHjxY+5433njDYlVR48aN9cknn1hsfVBWmOf5F2/qexJzPX/hbf2OeZ7/8La+Z+3y5csWZ9w1btzYLS+mODvmzZgxQ3/99ZeRrl27tu68806X2+NPvvvuO4e3rpKk33//XfPnzzfSlSpVKhSQcAbzPO9HAAXwcn///bc+++wzLV68WOnp6cXm7d+/v8UbGqtXr9bs2bOLvWfdunUWP7LUqVNHPXv2LPaegIAAPfnkkxbXxo0bZ/HmrbXs7GyNHz9ehw4dMq4NHDjQayZFsGRvv9u4caOef/555eTkSLq2Zc3s2bPVqlUrt7fp1KlTGjRoULH9rKC8vDzNnj1br732msX1J554QlWqVHF7++Aejox5L7zwgr7++mu7Hz52796tQYMG6dy5c8a166+/vsQfuhnzUBIerH3Pu+++q3nz5hnpBg0aaO7cuYqOjnZrPczzYM3b+h5zPf/gbf1OYp7nL7yx71lbvny5xT3ueut++/btGjVqlBITE+3Kn5WVpSlTpujjjz+2uP4///M/CgkJcUub/MX06dP1xBNP6MiRI3bfs27dOg0bNkxZWVnGtZEjRxbbV5nn+Q5TnjMhNwCSpD///FMpKSlFfv/iiy8ah0uFhYUVWlpeUEREhFq0aGFxbd++fXr00UeNgbZhw4ZavHhxsctYFyxYoFdffdXi2n333aenn35ajRs3Nq6dO3dO8+bN09y5c40HooCAAM2dO7fY5X75cnNz9eijj2rnzp3GtfDwcD3zzDPq16+fRRu3b9+ud999V9u2bTOuNWrUSN9++y1/6J3gLf3u999/15AhQ3TlyhXj2vDhw+3qP0Vp3rx5kX+ET5w4oa5du8pkMqlDhw7q3bu3br31VlWrVs0iX3JysjZv3qy5c+da/IAoSZ07d1ZcXFyxb2SgaN7S9/INHDhQW7duVe3atdW3b1916dJFTZo0sdjzPDs7W3v27NGXX36pFStWKDs72/guKipKCxYssGvvdsY879alSxdjL+JKlSpp+/btDpfx999/a926dQoNDVX37t0VFhZm973Wf3vHjx+vxx57zOE2WNu6das+//xzvfjii8VuP5IvKytL06dPt3gzTpLefPPNEh+m8B9z587V1KlT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n3f43sOHD2v//v3Ky8srhZa5T0ZGhp566ilNnz5dZ86c8XRzvEp2dranmwAAAIAyZMrz9tk7AAAAAJSRsWPHSpLuuusudenSpdD3sbGxmjVrlsxms/bu3etQ2Y899ph+++03RUdHa9WqVYqOjnZLm90pMzNTTz31lH755RdJUt26dbVy5UpVqFDBwy0rLDMzU5s3b9bq1au1f/9+LV++XIGBgW6t48qVK9qzZ4+2bNmiTZs26ezZs1q5cqXCw8PdWg8AAAC8k3tnlwAAAADw/3vkkUe0Y8eOMq2zV69emjp1qtP3f/vtt5KkevXq2QygOOvQoUP67bffJEnNmzf3yuDJ1atX9eyzzxrBk4iICMXFxXlN8OTq1avav3+/fvvtN/3222/asWOHMjIyjO+///57de/e3amys7Oz9ffff+v48eM6evSo9u/fr/379+vAgQPKysqyyDtjxgxNnDjRpX8LAAAAygcCKAAAAABQyuLj443PQ4cO9WBLbMvOztbzzz+vjRs3SroWPJk7d66aNm1a5m25evWqTpw4ocTERCUkJOjAgQPau3evDh8+XCiYIUmVK1dWt27dVL9+fUnSli1blJCQIJPJJJPJpOzsbF29elVXr15VRkaGUlNTdfnyZV28eFHnz583tmQrbnsuk8mkxo0b67bbbnNrYA0AAADejQAKAAAAgFIVHh6uRx55pFTrmDNnjteeLZKQkKAVK1ZIklq2bKlbb73Vwy2ylJaWphdffFHr1683rplMJo0ePdot5UdHR2vBggV25f311181ZMgQ5ebmFpknICBAzZs3V/v27XXHHXfo5ptvltlsNr4/ceKEXnnlFZfaXKNGDd1444268cYb1bJlS918882KjIx0qUwAAACUPwRQAAAAAJSqyMhIt/0YX5RPPvlEOTk5pVqHs6ZOnWqsbnjqqac83BpLJ06c0NNPP62DBw9aXL906ZIuXbrkljpSU1Ptztu6dWsFBgbq6tWrkqSgoCA1aNBATZs21Z9//qmEhARdd911Wrx4cZFldOvWTRMnTiy0WsVsNqtChQoKDw9XZGSkoqKiFB0drerVq6tmzZqqVauW6tevr/r163PGCQAAACQRQAEAAAAAt+jWrZuOHz9ebJ4RI0Y4XG5MTEyprODZunWrRo0apYsXL7q97IJq1qxpd97Q0FBNnz5dFSpUUN26dVW3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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from matplotlib.font_manager import FontProperties\n", "\n", "import matplotlib.pyplot as plt\n", "plt.rcParams['font.sans-serif'] = ['Microsoft JhengHei'] \n", "plt.rcParams['axes.unicode_minus'] = False\n", "plt.plot((1,2,3),(4,3,-1))\n", "plt.title(\"聲量圖\")\n", "plt.ylabel(\"文章數量\")\n", "plt.xlabel(\"品牌名稱\") \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 270, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'/home/gezi/py3env/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/微软正黑体.ttf'" ] }, "execution_count": 270, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#find matplotlib default font\n", "from matplotlib.font_manager import findfont, FontProperties \n", "findfont(FontProperties(family=FontProperties().get_family())) " ] }, { "cell_type": "code", "execution_count": 271, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "bak\t\t\t\tSourceHanSansSC-ExtraLight.otf\r\n", "cmb10.ttf\t\t\tSourceHanSansSC-Heavy.otf\r\n", "cmex10.ttf\t\t\tSourceHanSansSC-Light.otf\r\n", "cmmi10.ttf\t\t\tSourceHanSansSC-Medium.otf\r\n", "cmr10.ttf\t\t\tSourceHanSansSC-Normal.otf\r\n", "cmss10.ttf\t\t\tSourceHanSansSC-Regular.otf\r\n", "cmsy10.ttf\t\t\tSTIXGeneralBolIta.ttf\r\n", "cmtt10.ttf\t\t\tSTIXGeneralBol.ttf\r\n", "DejaVuSans-BoldOblique.ttf\tSTIXGeneralItalic.ttf\r\n", "DejaVuSans-Bold.ttf\t\tSTIXGeneral.ttf\r\n", "DejaVuSansDisplay.ttf\t\tSTIXNonUniBolIta.ttf\r\n", "DejaVuSansMono-BoldOblique.ttf\tSTIXNonUniBol.ttf\r\n", "DejaVuSansMono-Bold.ttf\t\tSTIXNonUniIta.ttf\r\n", "DejaVuSansMono-Oblique.ttf\tSTIXNonUni.ttf\r\n", "DejaVuSansMono.ttf\t\tSTIXSizFiveSymReg.ttf\r\n", "DejaVuSans-Oblique.ttf\t\tSTIXSizFourSymBol.ttf\r\n", "DejaVuSans.ttf\t\t\tSTIXSizFourSymReg.ttf\r\n", "DejaVuSerif-BoldItalic.ttf\tSTIXSizOneSymBol.ttf\r\n", "DejaVuSerif-Bold.ttf\t\tSTIXSizOneSymReg.ttf\r\n", "DejaVuSerifDisplay.ttf\t\tSTIXSizThreeSymBol.ttf\r\n", "DejaVuSerif-Italic.ttf\t\tSTIXSizThreeSymReg.ttf\r\n", "DejaVuSerif.ttf\t\t\tSTIXSizTwoSymBol.ttf\r\n", "LICENSE_STIX\t\t\tSTIXSizTwoSymReg.ttf\r\n", "simsun.ttc\t\t\t微软雅黑.ttf\r\n", "SourceHanSansSC-Bold.otf\t微软正黑体.ttf\r\n" ] } ], "source": [ "!ls /home/gezi/py3env/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf" ] }, { "cell_type": "code", "execution_count": 272, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "38\n", "38\n" ] } ], "source": [ "print(len(words))\n", "print(len(alpha))" ] }, { "cell_type": "code", "execution_count": 298, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "7.0463e-31 1.0\n" ] } ], "source": [ "#(cm * 1000).astype(np.int32)\n", "amin, amax = alpha.min(), alpha.max() # 求最大最小值\n", "print(amin, amax)\n", "alpha2 = (alpha-amin)/(amax-amin) # (矩阵元素-最小值)/(最大值-最小值)" ] }, { "cell_type": "code", "execution_count": 296, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[5.6962966e-04, 2.3827146e-01, 1.9244207e-01, ..., 1.1762715e-03,\n", " 1.5607427e-03, 1.4004141e-02],\n", " [8.9638400e-03, 2.1429629e-05, 3.7175584e-01, ..., 3.6875690e-05,\n", " 3.4903080e-05, 1.1355923e-04],\n", " [5.8422790e-04, 2.9999776e-02, 1.7293179e-06, ..., 1.8528880e-06,\n", " 2.0678915e-06, 4.6501040e-06],\n", " ...,\n", " [5.0387380e-14, 4.1988677e-14, 2.6144565e-14, ..., 2.4400949e-14,\n", " 6.7827570e-06, 6.9768640e-09],\n", " [7.8991770e-09, 4.6956123e-09, 3.4474346e-09, ..., 8.0138767e-01,\n", " 2.8829898e-09, 9.9814024e-05],\n", " [5.1758040e-05, 1.1156330e-05, 5.6611130e-06, ..., 6.0195990e-01,\n", " 7.2889090e-02, 2.1053000e-06]])" ] }, "execution_count": 296, "metadata": {}, "output_type": "execute_result" } ], "source": [ "alpha2" ] }, { "cell_type": "code", "execution_count": 309, "metadata": {}, "outputs": [ { "data": { "image/png": "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KKG6deuqS5cukn67H+bNm6f58+crPT3deM8TJ05o7Nix+vTTT+3O6wjjxo1TamrqLX+tTJkyGjJkiMLDw3Ns3s/KytLmzZs1bdo0HT582K4M8+bN05AhQ1SuXDm7rgMAAAAAIL/ystlsNleHAAAAAJB/bdq0Sc8+++wdJ0TkpGbNmho7dqweeughByazxqlTp9SzZ8/bfjD6V8WKFdOECRNy3Rxjs9n0+eefa/LkyUbNBD4+Plq0aJFq166dq/1uatu2rWJjY3Osi4qKUvny5fO011999NFHmjZtWo51EydOVK9evRy6t6eIi4tT27Ztc3zfBQUF6fvvv1fBggXt3mP69OmaMmVKjnW+vr7avHmzSpYsafcejtCqVSvFx8ffscbHx0dHjhxxUqLfnD59Wh07dsyxrnnz5pozZ471gf5/r7zyil3H1Xbr1k2vvvpqrqc0nj59WqNGjTKeitW5c2d98MEHudrrpoULFxo1wTZr1kxHjx7V1atX//ZrjRo10sSJE1WlShW79z948KBGjx6tc+fOGV9TtmxZRUVFydfXsT/H6W734ZgxY7R8+fIc6yZNmqTw8HCH7Hnu3Dl1795dKSkpxtfcc889euONN9S6des87x8fH68333xT69evt+s6R/4d9/jjj2vv3r051rVt21YbNmz429d9fHw0dOhQDR8+XAUKFLBrb5vNplmzZun999+3qynyqaee0pgxY+zaCwAAAACA/MpzfnQeAAAAgEd6+OGHNW7cuDytER0draFDh2rQoEE6cOCAg5I5ns1mu+NEjL+qUaOGli5dmqepSF5eXho8eLA++uij204d+aOsrCx9+OGHud4PnmHJkiVGDZcdO3bMVeOXJIWFhcnLyyvHuhs3bmjZsmW52gPOtXnzZuPGL29vb40fP17vvfdeno7nrVSpkr799ls1adLEqH7NmjW5Pj7RXrt27bpl49eAAQP0zTff5KrxS5Lq1aunefPmqWrVqsbX/Prrr7edQIbcy87O1iuvvGJX41e7du20fPlyhzR+Sb9Ny/r444/12muvycfHx/i6iRMn6sKFCw7JYOpWjV+FCxfWrFmz9O9//9vuxi/pt3/HDB06VFOmTLHr9ds7QQ8AAAAAgPyM5i8AAAAAlhswYIDGjx9v1ChyJ9u3b1efPn303HPPOe3Df3t888032rNnj1FtaGio5s6dq7Jlyzpk73bt2umVV14xqt20aZOio6Mdsi/c05IlS4zqcnPk400hISHGDTv2TJKCa6SkpOj11183rp84caIGDBjgkL0LFSqkGTNmKCQkxKh++vTpDtk3N4YPH67x48fn+SjiUqVKacaMGSpSpIjxNWvWrMnTnvi7BQsWaNeuXcb1jz/+uKZNm6agoCCHZ+nfv79dDVDJycm5Oq7WkQoXLqwvv/xSzZs3z/NanTp10tixY43rL1++bNefHQAAAAAA+RnNXwAAAACcYsCAAZo6dWqupwz9UVRUlHr06KERI0a4TRNYSkqK0VGE0m8f+k+fPt2uD/1NPPHEE2rZsmWOdTabTV9//bVD94b72LVrl86cOZNjXenSpXX//ffnaS/TY9dOnDjh1lP7IH3xxReKi4szqh0+fLh69Ojh0P2DgoI0ceJEoybhdevWOX3ikST17t1bo0aNcth6FStWtOvYuk2bNuXpCGX8WVpamvHf29Jvz7vXX389z41/d9KpUyejI0lvWrRokdERzFbw8fHRxx9/nOdjpP9o0KBBuu+++4zro6KiHLY3AAAAAACejOYvAAAAAE7TuXNnzZs3T5UrV87zWjabTZGRkW7TBPb555/r0qVLOdb5+fnpk08+Ubly5RyewcvLS2+99ZbR8Y9r1qzR9evXHZ4Brmc6Zatbt255bmLo3Lmz8TFfERERedoL1rly5Ypmz55tVNupUyeNHDnSkhz333+/Hn300RzrsrKytGLFCksy3E7NmjXtmoxmqk+fPsbHRyYnJ+vEiRMOz3C3+uKLL5SQkGBUW7t2bU2YMCHPE0xNPPHEE+rcubNRbWZmpvF719Gef/75PDcQ/5WXl5ddDZF79+516P4AAAAAAHgqmr8AAAAAOFWtWrW0ePFi9erVyyHr/bEJ7IUXXtDZs2cdsq490tPT9eWXXxrV/uMf/1D9+vUty1KuXDm1a9cux7rk5GRt3rzZshxwjZSUFK1du9aoNi9HPt5UuHBhtWnTxqh21apVysjIyPOecLxvvvlGV69ezbGucOHCeuONNyxtgDE9StKZzV/e3t6aMGGC/P39LVl74MCBxvX79u1zeIa70Y0bN4wnYPr7++v999+35M//dl5//XXjoyWXLVvm9GdrrVq1NHToUEvWbty4sRo0aGBUe+zYMaWlpVmSAwAAAAAAT0LzFwAAAACnCwwM1MSJEzVjxgyVKVPGIWvabDatWLFCjzzyiP7f//t/Ro0MjrJq1SpduXIlx7pSpUrpueeeszxP//79jeq+//57i5PA2VavXq3U1NQc6+69917VqlXLIXuaNpElJycrMjLSIXvCcbKzs7VgwQKj2hEjRqh48eKW5gkNDVXjxo1zrDty5IjRtEVH6NKli6VNu926dTOa2ChJP//8s2U57ibr1683nvo1ePBg4+lsjlK8eHENGzbMqDY5Odm46ddRxo4dKx8fH8vWNz1WNisrSydPnrQsBwAAAAAAnoLmLwAAAAAu8/DDD2vVqlUaOHCgfH3AGJ9oAAAgAElEQVR9HbJmZmamvvjiC3Xq1EkRERGy2WwOWfdOTBsnnnvuOeNJHnnRrFkzFStWLMe67du3W54FzmV65KMjpn7d1KpVKwUHBxvVcvSj+9m6davOnz+fY11ISIiefPJJJySSOnbsmGONzWbTzp07nZBGevrppy1dv3DhwkYNb5JodHGQRYsWGdUVLlxYTz31lMVpbu3xxx9XoUKFjGrXr19vcZr/U6dOHbVs2dLSPUwnSkq8JwAAAAAAkGj+AgAAAOBiQUFBGjdunBYvXuzQDxMTExM1btw4DRw4UGfOnHHYun8VHx9vdAxXoUKFHNpwkxOTKTWnTp1SUlKSE9LAGU6dOqU9e/bkWOfl5aWwsDCH7evn56euXbsa1e7YscOo0QjOs2bNGqO6Xr16OaxJNyemR7799NNPFieRGjZsqBo1ali+zwMPPGBUFxsba3GS/C8lJUU7duwwqn388ced0rR9K0WKFDF+Vm/fvl1ZWVkWJ/pN3759Ld+jXLlyqlSpklEtf6cAAAAAAEDzFwAAAAA3UbNmTc2ePVszZ8506AftO3fuVPfu3TVv3jyHrflHGzduNKrr3LmzUz9ANj2i7Pjx4xYngbOYTv1q2rSpypUr59C9TRsbs7OztWTJEofujdyz2WzavHlzjnXe3t569NFHnZDoN7Vr1zY6BtEZz68OHTpYvof02zQlE8466jI/+/7775WZmWlU68z7/lYeeeQRo7rk5GTt37/f4jS/NQ+723siMTHR4iQAAAAAALg/mr8AAAAAuJXWrVvru+++0+TJk1W5cmWHrJmWlqbXX39do0aN0rVr1xyy5k1bt241qnPkpCUT1atXN6qj+St/yM7O1tKlS41qrbgXGzZsaDylZcmSJU45jhU5O3z4sFHjRJMmTRzeMHgnBQoUUPny5XOsc8bz68EHH7R8D0mqWrWqUV1ycrJx4xJubdu2bUZ1derUcdi/Q3KrWbNmxo3jBw8etDiNFBoaqhIlSli+j2T+nqAhEgAAAAAAmr8AAAAAuCFvb2+FhYVp1apVmjhxoipWrOiQddeuXau+ffvq9OnTDllPktGkDV9fXzVs2NBhe5ooUqSIUR1HiOUP27ZtU3x8fI51/v7+6ty5syUZTKd/nT17Vj/++KMlGWAf00lBjRs3tjjJ35k8wy5evKiMjAzLMhQoUMC4kTavypUrZzTtTJKlr/lucOjQIaO6hx56yOIkOfPx8TH+98OxY8csTiPVrVvX8j1uqlChglFdenq6xUkAAAAAAHB/NH8BAAAAcFs+Pj7q1auXVq9erYkTJxp/EHgnMTExeuyxx4w//L2T+Ph4JSQk5FhXs2ZNFSpUKM/72aNw4cJGdRcuXLA4CZwhIiLCqO7hhx82bgy0V3h4uHGtaV5Yy/Q52KhRI4uT/J07PMMqVaokX19fy9b/Ix8fHwUHBxvVXr9+3eI0+VdmZqbxxLgHHnjA4jRm3Kn5q1q1apbvcZPphDHeDwAAAAAASM75DhYAAAAA5IGvr6969eql7t27KyIiQp988ol+/fXXXK93+fJlDRw4UJ9//rnq16+f63VMP2gtVqyYNm7cmOt9csO0IYLmL8+XlJSkDRs2GNWaTufKjQoVKqhRo0bat29fjrVr167Vq6++anycGawRHR1tVJeUlOT0Z1haWppR3YULFxzSGHwrzjzqUpKCg4ONGoo59jH3fvnlF+Pfv1q1almcxoxpw9X58+ctTiKVLVvW8j1uMm2G5P0AAAAAAADNXwAAAAA8iK+vrx577DH17NlT33zzjaZPn67Lly/naq1r165p2LBh+vbbb1WlSpVcrWF6ZOK2bdu0bdu2XO1htZSUFFdHQB6tWLHCaPJJ0aJF1bp1a0uzhIeHGzV/paWlafXq1erTp4+leXBnps+wF1980eIkuWflM8x0+pij+Pv7G9XZbDaLk+RfcXFxRnWlS5c2bj6yWtWqVY3qkpKSlJGRoQIFCliWxarJkbdi+jp4PwAAAAAAwLGPAAAAADyQv7+/Bg0apPXr12vYsGG5/qDz8uXLGj58uFJTU3N1vemHyO6M45I83+LFi43qOnfubNxckluPPPKI/Pz8jGpNc8MaqampSkpKcnWMPLPyGWZlE82tWP3+hPnf2yEhIRYnMVeqVCnj2vj4eAuTOPc9wfsBAAAAAABzNH8BAAAA8FhBQUF64YUXtHr1anXs2DFXa8TExGjChAm5ujY/HJmYkZHh6gjIg2PHjunw4cNGtVYe+XhTcHCwHn74YaPavXv36tSpU5bmwe3lh+eXZO0zzMvLy7K13WG/u5HpfV+6dGmLk5grVqyYfHx8jGqvXbtmcRrn4f0AAAAAAIA5jn0EAAAA4PFCQkL00UcfaePGjfrPf/6jxMREu66PiIhQWFiYmjdvbtd1aWlpdtW7o6ysLFdHQB5EREQY1/bv39/CJLkTERGhF154wdUx7kr54fklSTdu3HB1BHgQ02NC3eXIR0ny9vZWwYIFjbLT0A0AAAAAwN2JyV8AAAAA8o02bdpo2bJlatasmd3XTpo0STabza5r8kvzBDxTZmamli9f7uoYebJ06VIaEF2E5xfuRunp6UZ1zj7yMyemRyCavj4AAAAAAJC/0PwFAAAAIF8pWbKkZs2apa5du9p13ZEjRxQVFWXXNdevX7erHnCkjRs36vLly66OkScXLlzQtm3bXB3jrsTzC3cj08lYps1WzuLry+ENAAAAAADg9mj+AgAAAJDv+Pv7a9KkSWrbtq1d182dO9euej6MhSstXrzY1REcIr+8Dk/D8wt3Iy8vL6M6dztONDMz06jO3SaWAQAAAAAA56D5CwAAAEC+5Ovrq8mTJ6tKlSrG1+zYsUOJiYnG9e42GQR3j4SEBG3dutXVMRxiw4YNSkpKcnWMuw7PL9yNTJujTCeEOYvppL6AgACLkwAAAAAAAHfEj3kCAAAAyLcCAwM1adIk9e3bVzabLcf67Oxsbd68Wb169TJav2DBgkZ1YWFhmjx5slEtYGLp0qVuN5kmt65fv67ly5drwIABro5yVzF9fklSVFSUypcvb2EawDlMm6OuXr1qcRJzmZmZSktLM6oNDAy0OA0AAAAAAHBHTP4CAAAAkK/Vr19fjzzyiHH9vn37jGsLFy5sVGc6sQMwld+OSsxvr8cTFClSxLjW3aYgAbllet/Hx8dbnMTcpUuXjBrYvby8VKZMGSckAgAAAAAA7obmLwAAAAD5Xr9+/YxrT5w4YVxbunRpozp3miACz/fTTz/p5MmTro7hUEeOHNGxY8dcHeOuUrJkSXl7m31b6Nq1axanAZyjXLlyRnXnz5+3OIk500a04sWLGx9rCQAAAAAA8heavwAAAADke02bNjU+CuncuXPG65pO2HCnCSLwfPl1SlZERISrI9xVfH19Vbx4caNanmHIL8qWLWtUd/78ebdpeoyJiTGqCwkJsTgJAAAAAABwV76uDgAAAAAAVvP29latWrW0e/fuHGvtmdJVvnx5o7rz588rOzvbeMoOcDvp6elauXKlUW2HDh00bdo0ixPdWUxMjLp06WJUu3z5co0dO1b+/v4Wp8JNFSpU0MWLF3OsO3v2rBPSANarUqWKUZ3NZtORI0fUrFkzixPlzHQiae3atS1OAgAAAAAA3BWfPAAAAAC4K5QoUcKoLjMz03jNmjVrGtWlpaXpl19+MV4XuJ21a9caT6Pp1q2bxWlyVq1aNdWvX9+o9vLly9q4caPFifBHNWrUMKo7evSoxUkA5yhTpoxKlSplVLt9+3aL05jZu3evUV3dunUtTgIAAAAAANwVzV8AAAAA7gqm04QKFixovGbx4sVVsmRJo9p9+/YZrwvcjumRj0FBQWrTpo3Facz07NnTuDa/Hmnprkybv3h+IT8xbZLavHmzxUlylpqaqkOHDhnVNmzY0OI0AAAAAADAXdH8BQAAAOCuYDotKTAw0K51GzRoYFS3ZcsWu9YF/urcuXPauXOnUW2HDh1UoEABixOZ6dq1q3Hz5datW3XhwgWLE+Em0+fXuXPnFBMTY3EawDlMj3I8fPiwy+/7TZs2GU0kDQkJ0b333uuERAAAAAAAwB3R/AUAAADgrhAbG2tUV6ZMGbvWbdGihVHdli1bdPXqVbvWBv5o6dKlstlsRrVhYWEWpzFXtGhRtW3b1qg2KytL3333ncWJ/i47O9vpe5qyMludOnUUHBxsVLty5UrLcsD9ufN7xF72TEVcsGCBhUlytmLFCqM6d5n0CAAAAAAAXIPmLwAAAAD53rVr13Ty5Emj2sqVK9u1tmnzV1pampYuXWrX2sBNNpvN+EjEUqVK6YEHHrA4kX169eplXOuKox9tNpvS09Odvq+JtLQ0y9b29vbW/fffb1QbERFhNIEI+ZOV96GzValSRdWqVTOqnT9/vi5dumRxols7e/asNm7caFTbuXNni9MAAAAAAAB3RvMXAAAAAIcyPV7RmbZs2aIbN24Y1daoUcOutatWrWp81NL//vc/ZWRk2LU+IEk7duwwnl7XuXNn+fj4WJzIPg8++KBKlSplVHvy5Ent27fPYXub/l6kpqY6bE8T3t5m35KxOlenTp2M6n799VctXLjQ0ixwPne5D53NtCE1LS1NH3zwgcVpbm3mzJlGE9eqV6+upk2bOiERAAAAAABwVzR/AQAAAHCoiIgITZw40bjZyhm+/vpr49rcTEwKDw83qouPj9f06dPtXh+wZxqWOx35eJOPj49duRw5/cvf39+oLi4uzmF7mjDN9euvv1qao3379goKCjKqnTZtmsumIMEa7nIfOtujjz5q/Nrnz5+v3bt3W5zoz44dO6ZFixYZ1T7++OMWpwEAAAAAAO6O5i8AAAAADmWz2TRnzhw98cQTOnbsmKvjaNWqVdqzZ49RbbFixVS3bl279wgPD5efn59R7cyZM7V//36793CUK1euuGxv5M61a9cUGRlpVFuxYkU1aNDA4kS5Y8/Rj6tWrXLYMYyBgYFGdTExMQ7Zz5RprmvXrik+Pt6yHAUKFFDXrl2NahMTE/X6669blsVEcnKyS/fPb9zlPnS2YsWKqUePHka1NptN//73v5WYmGhxqt9kZGRo7NixRlO/Spcurd69ezshFQAAAAAAcGc0fwEAAACwxP79+9WrVy9NmDDBZZNifv75Z7saFXr06GF8BNYflS5d2nj6140bNzR8+HCdO3fO7n3yavny5frnP//p9H2RNytXrlRaWppRbbdu3SxOk3v33nuv6tSpY1R77do1rVmzxiH7lihRwqjOkUdNmggKClJAQIBR7d69ey3NMmTIEOPjMdetW6cpU6ZYmudWEhIS9NRTT2nr1q1O3zs/c6f70NlGjBihggULGtXGx8frmWeesfxoa5vNptdee03Hjx83qh85cqTxawAAAAAAAPkXzV8AAAAALJOVlaWvvvpKbdu21VtvveXUY9X279+vQYMGGU+J8fb2Vp8+fXK939NPP23cPJGQkKABAwbol19+yfV+9jh79qyee+45jRkzRlevXnXKnnAce45AdOfmL8m+6V+OOvqxfPnyRnWRkZFGk3YcKSQkxKhu7dq1luaoVKmS8fQvSZo+fbrTGsCys7M1f/58devWTVu2bHHKnncbd7kPna1MmTIaNGiQcf2BAwc0dOhQyxras7OzNWHCBC1dutSo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Qnlex9ECAwM1btw4V8f4mwYNGmju3LkKCQlxdZTf+fr6qmTJkq6OkS+5633obF5eXho/frz++9//yt/f39VxJEmDBw/WrFmzFBgY6OooAAAAAADATdH8BQAAAMCh6tat67Yfzrdu3VorV65Ur169nLKft7e3xo4dqylTpqhIkSJO2fN2/Pz89Oyzz2rWrFkuzQEz9hz52K1bNwuTWMee6V+5PUL1jypUqKC33npLXl5eeV7L0bp06aInnnjC1TH+JjQ0VBEREXrooYdcHUW1a9fWwoULdf/997s6Sr7lrvehK/Tr10/z589XjRo1XJahbNmy+vTTT/XSSy9Z2qwOAAAAAAA8H81fAAAAAByqSZMmWrt2rUaPHu02U6YaNWqkL7/8UjNnzlS5cuWcvn+XLl20atUqdenSxel7e3t7Kzw8XKtXr9bo0aPdZpIJbu/w4cM6duyYUW1gYKDatm1rcSJrhIWFyc/Pz6j2p59+UkxMTJ737NKli9588023bKR49dVXndaYao9ixYrps88+07vvvqsSJUo4ff8KFSronXfeUUREhGrXru30/e827nofukLt2rW1ZMkSvfzyy049btHf31+DBw/WqlWrPPb5DgAAAAAAnIvmLwAAAAAOFxQUpGeffVYbNmzQzJkz1adPH6c3DQQGBqpXr15auHCh5s2b5/JpMaVKldKUKVO0cOFCdejQwfLpQ8WLF9fQoUMVGRmpSZMmqUKFCpbuB8exZ8pV+/btVbBgQQvTWKd48eJq1aqVcX1ERIRD9u3bt69mzZqle+65xyHrOYq3t7cmTpyo//znPwoICHB1nL/p3r27IiMj9eKLL6p06dKW7uXl5aUWLVroo48+0tq1a9WjRw95e/MtLGdw9/vQ2Xx9ffXPf/5TmzZt0gsvvKBSpUpZtlfhwoX11FNPacOGDXrppZc45hEAAAAAABjzdXUAAAAAAPmXj4+PWrdurdatW8tms+n48ePavXu39u7dq0OHDun06dOy2WwO2cvLy0vVq1dXkyZN1KZNGzVv3twtp1zVr19f06ZN07lz57Ry5UqtXLlS0dHReV7Xy8tL9957r+6//361b99eTZs2dcvpRshZpUqVNGLECKPaDh06WJzGWs8++6xq1aplVOvIBtLmzZtr1apV+vrrrzV37lzFxcXZvUalSpU0cOBAh2W66R//+Ic6duyo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0ybjtK327ds7tO7QoUP1xRdfKDY2VsnJyRo6dKguX76shIQEu3EPP/ywJk+erHvuuUfS9aDZiy++qJo1a6p79+4aPHiwWrZsqa1bt+rEiRM6d+6c0tPTjfkeHh6SpC+++MLoq1y5sgIDAx3+GUyfPl3Tp0/P9l1UVJQaNmx4y7lt27bVwoULHd4LAAAAAAAAAAAAAAAAQNHkdOGvBg0aGM9RUVG6//77jfaNk79uDlZ17NjRoXU9PDzUpUsXLViwQNL16x9vVqdOHYWEhGQJk/3444+SpJiYGK1cuVJDhgwxwl/S9dO/bg6oeXh4KCEhQbt27ZIklStXTo888ogWL17sUJ1Fwblz54wT2vLi888/V+3atQuwIgAAAAAAAAAAAAAAAODu4/Thr759+xptd3d3nT592rjysXbt2qpbt+4t17JarTp06JC+/vprbdq0KcspX9L1QNm0adPUo0cP42Sxm33//ffGc8uWLSVJLVq0MPp27typRo0aGW0PDw9t2LDBOJmsR48e8vX1NU4Sc0RqaqrOnTtntL28vG57teUNFStWdHifvLLZbMaVlnlx81WeAAAAAAAAAAAAAAAAAPLG6cJfFSpUkJ+fn65cuaLDhw8rNTXVeOfh4aErV67o/vvv1+HDh9W5c+cs82NjY/Xdd99p79692r17ty5dupTjflarVR999JHuu+8+1a9fP8v73bt3G88PP/ywJCkwMNCoMTIyUgMHDjTGlChRQuvWrZMkWSwWPfvss6pWrZo2b97s0PePiYnRyJEjjXapUqW0aNEiu4AZAAAAAAAAAAAAAAAAADhd+EuSOnfurFKlSql169bGCVrS9ZO/GjZsqNWrV+vEiRPy9/fX2bNn9e233+rw4cOKiopSbGzsLdctV66cnn76aQUFBemdd95RZGSkJOn48ePq2bOnunfvrv79+xtXEkZGRuqnn34y9m7btq0kycXFRc2aNdO3336r5ORkfffdd8Ye58+f18mTJyVJDz30kKpVq+bw9/7mm280YcIEJSUlSZIqV66siIgI1apVy+E17oQqVapo27ZtZpcBAAAAAAAAAAAAAAAA3NWcMvw1depU4/lGkEqSPD09jec6depIun5S1syZM+1OCLtZqVKl9Pjjj6tTp0568MEH5erqKklatGiRpk+frtWrV0uS0tPTtWrVKq1evVqNGzeWv7+/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/eK4444rd65evXpx++23R7169bLKV1paGrNnz07G++23XzRq1CirewIAAAAAAAAAAOlR/qoiU6dOLTeuTPlr2rRp8fbbb5c7V1RUFPfff3+UlZVllW/27NmxZs2aZNy5c+es7gcAAAAAAAAAAKRL+auKvPXWW8lxhw4dom3btru1/qWXXooLL7wwNmzYsM21yZMnx/Dhw2PLli2VzjdlypRy46OOOqrS9wIAAAAAAAAAANKn/FUFSktLY9q0acl4d3f9+t///d8YOnRoFBUVRUREJpOJc889Nxo2bJjMefrpp2PIkCGxfv36SmV89tlny4179epVqfsAAAAAAAAAAADVg/JXFZg5c2a5VypWtPy1bt26uPzyy+M3v/lNlJaWRkRE3bp1Y8yYMXHttdfG3XffHQ0aNEjmv/7661FYWBhz5szZrXzvvvtuLFy4MBl37tw52rRps1v3AAAAAAAAAAAAqhflryrw6quvJscNGjSI7t2773LNnDlzorCwMF5++eXkXH5+ftx2221RWFgYERE9evTYpgC2aNGiOOuss2LChAlRVlZWoXz33XdfufGPf/zjCq0DAAAAAAAAAACqL+WvKrB1+euHP/xh1K9ff4dzN23aFLfddlsMGDAgFi9enJxv3rx53HfffXHyySeXm9+zZ8944IEHomXLlsm5oqKiGD16dJx55pkxa9asnWabPXt2vPHGG8m4QYMG0bdv3wp/bwAAAAAAAABA9ZbJ1PFVA76gMvzNydInn3xS7pWKO3vl45QpU+LUU0+Ne+65J4qLi5Pzhx56aDzxxBPRo0eP7a474ogj4vHHH4/OnTuXOz9r1qwYMGBAXHvttfH5559vs660tDRuvPHGcucGDBgQzZo1q8i3BgAAAAAAAAAAVGPKX1l66aWXyo23V/6aN29eDBkyJAYPHhxLliwpd+3000+PyZMnR9u2bXf6nNatW8ekSZOif//+5c6XlpbGY489Fscff3zceOON5XYTmzBhQsycOTMZ169fPy644IIKf28AAAAAAAAAAED1lZd2gFz33HPPJcft2rWLDh06JOOFCxfGHXfcES+88EKUlpaWW9esWbO44YYb4pRTTqnwsxo0aBC33nprnHjiiXH99dfH6tWrk2ubNm2KiRMnxsMPPxynnXZanHHGGfH73/++3PqLLroo9t577939FgEAAAAAAAAA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ZwrMwNClFwWkBLsSJLGXYImCMRJ7ARXxK7aABUuUWFDz2sUY0eSNRo2I7SX2BKwhFhCsgChKLzr0OszM7w9/nngYylTODFzXWrOYvc/e+7kHccUVb/cTs2bNioKCguTaRCIR55xzTjRo0KBSng0AAAAAAAAAANsz5a9qYO7cuTFu3Ljk+LTTTqu0s3/2s5/FhRdeGHfddVdERLz++utxxx13xJAhQza7b8WKFTFz5szIz8+PxYsXJ39dsGBBLFy4MObPnx/z58+PFStWlDpLcXFxfPDBB3HYYYdV6GcCAAAAAAAAAACUvyrk7bffjoceeigiIlq2bBnDhw8v1zkPPvhgFBYWRkRE06ZN44gjjqi0jBER5513Xrz77rsxfvz4iIgYOXJk7L777tGrV69N7nn11Vdj6NChFX52nTp1ol27dtG+ffvYaaedolWrVhU+EwAAAAAAAAAAUP6qkIULFyYLVe3bty/XGfPnz4/Ro0cnx7/+9a+jqKgo1q5dW+5ciUQiatWqlRxnZGTEH/7wh+jdu3fk5+dHRMTQoUOjU6dO5c7942ftsMMO0apVq2jbtm20adMm2rVrF23bto0dd9wxmjVrFolEokLPAAAAAAAAAAA2I8O/l4ftlfJXmj3wwANRUFCQMn7ggQcqdGbr1q1j7NixKXNNmzaNG264IS644IKI+P61jhdeeGGMGjUq6tSps9nz6tevHz179oxmzZolv1q0aBGtWrWKli1bphTNAAAAAAAAAADYfi1cuDA++uijmD17dqxatSpycnKiZcuWseuuu0bbtm3THS/FihUr4pNPPonZs2fH8uXLY82aNZGXlxcNGjSIzp07R6dOnSIzMzPdMTdL+SuN5syZk3LrV1U7/PDDo2/fvvHUU09FRMQXX3wR1113XfzhD3/Y7L6uXbvGvffeuzUiAgAAAAAAAABQA40dOzZGjhwZH374YRQXF290TdeuXaNfv37Rp0+ftL1JrrCwMF588cV48sknY8KECVFUVLTJtbm5udGrV6845ZRTYs8999yKKUsvI90Btme33HJLyq1fW8OVV14ZrVu3joiIli1bxoknnrhVnw8AAAAAAAAAwLZj5cqVcdFFF8X5558fEydO3GTxKyJiypQpccUVV8QZZ5wR33777VZM+b0vvvgi+vbtG0OGDIn3339/s8WviIjVq1fH888/HyeeeGJcffXVsWLFiq2UtPTc/JUm//73v+PVV19NjocMGRLnnntuypqCgoLIzs6u1Ofm5eXFLbfcEo8++mjccMMN0bBhw0o9HwAAAAAAAACA7cPKlSujX79+MXny5DLte++99+KUU06Jxx57LJo2bVpF6VJ9/PHH0a9fv1i+fHm59o8ePTqmT58eDz/8cOTl5VVyuvJz81carF+/Pm666abkuG3btnHmmWemrPnggw/isMMOizfffLPSn9+jR4+49957Fb8AAAAAAAAAACi3q666qkTxq1WrVnHVVVfFmDFj4v33348XX3wxbrzxxujYsWPKum+++SYuvPDCWL9+fZXnXLp0aQwYMKBE8atp06Zx0UUXxahRo+Lf//53TJgwIcaOHRsjRoyIX/7yl5GRkVqtmjRpUvzud7+r8rxlofyVBn/+859j+vTpyfHll18etWrVSo7ff//9OPfcc2PBggUxcODA+Otf/5qOmAAAAAAAAAAAsFFjx46Nl19+OWWuR48e8X//939x5plnRufOnaN+/frRsWPH6Nu3bzz33HNx5JFHpqz/8MMP4+9//3uVZ7333nsjPz8/ZW6//faLF198MS644ILYY489okmTJpGXlxetW7eOww8/PO64447461//WuKWrxdeeCE++OCDKs9cWspfW9m0adPinnvuSY579OgRvXr1SlnTuHHjaNy4cUREFBYWxs033xzXXnvtVmk6AgAAAAAAAADA5hQXF8fdd9+dMteqVav44x//GPXq1dvonlq1asUdd9wRu+yyS8r8Aw88EKtXr66yrIWFhTFmzJiUuZYtW8a9994b9evX3+zeHj16xC233FJifsPz0kn5aysqKCiIK664IgoKCiIiIjs7O66++uoS6zp27BijRo2Kbt26JedGjRoVgwYNijVr1my1vAAAAAAAAAAAsKF//etfMWXKlJS5q6++usQtWRvKzMyMG2+8MWVu0aJFMWrUqErP+IPPPvsslixZkjJ32mmnRd26dUu1/xe/+EWJV1a+9957lZavorLSHWB78uCDD8Znn32WHJ933nnRtWvXja5t0qRJPPLIIzFgwICYOHFiRESMGzcuzj777HjggQc22ZL8wb///e+46667Nvl53759o2/fvqXK/d5770WXLl1Ktba0Hnnkkdh3330r9UwAAAAAAAAA2C4l0h2A7c1LL72UMm7dunUcdthhpdrbrVu32GeffWLChAnJuZdffjnOPPPMSs34gwULFpSY++lPf1qmM7p37x5ffvllcrxw4cIK56osbv7ainr16hXNmzePiIguXbrEwIEDN7u+Xr168dBDD8Xee++dnPvggw/ioosu2uKzFi9eHJMnT97k1/z58yv2wwAAAAAAAAAAsN0pKCiIN954I2WuT58+kUiUvoX4q1/9KmU8adKk+O677yol34Y29krJBg0alOmMRo0apYx/eOtfdaD8tRV16tQpHnvssWjdunUMHz48srOzt7inbt26MXLkyNh9990j4vtC2GWXXVbVUWPdunVV/gwAAAAAAAAAAGqWSZMmxfLly1PmevToUaYzNnxbXFFRUbz11lsVzrYxjRs3LjG3bNmyMp2x4Wsjd9hhhwplqkxe+7iVtW3bNsaMGVPq94ZGROTl5cXIkSNjwIABceWVV0a3bt22uOfAAw+MMWPGpMzddddd8a9//atUz1y7dm3y+/333z/uueeeza5fsmRJHHroocnxCy+8EC1bttzk+pycnFLlAAAAAAAAAACg+pg6dWrKODMzM/bYY48yndGuXbvYYYcd4ttvv93kuZVll112iUQiEcXFxcm5CRMmJC9iKo2JEyemjH/8Fr90U/5Kg7IUv37QsGHDePLJJ0t9RV69evWiXr16KXP169cv9fNWrVqV8uwtZf5xWSzi+3JXeX5OAAAAAAAAAACqr6+++ipl3LJly6hTp06Zz+nQoUNK+WvGjBkVzrYxDRs2jP322y/efvvt5Nyjjz4aJ598cqkuLxo3blxMmzYtZe6EE06o9JzlpfyVJvfee2/cd999lX7uv/71r2jTpk2Fz1m4cGHy+7y8vAqfBwAAAAAAAABAzffll1+mjFu1alWuczZ8o9yGpbLKdMkll8T48eOjsLAwIiLmzJkTF110Udxxxx2b7cVMmjQprrjiipS5I444Inr27FllWcsqI90BqJ5+XP5q3rx5GpMAAAAAAAAAAFBd/LhTEhHRokWLcp2zYflrwYIF5c60JbvttltcffXVKXNvvPFGHHvssfHwww/HlClTYuXKlbF+/frIz8+Pt99+O4YOHRqnnnpqLF26NLlnn332ieHDh1dZzvJw81c1kJWVFbVq1SoxX1hYmHydYiKRiNzc3I3u//ErGivLj1ua5W1oAgAAAAAAAABQOitWrIiVK1dW6TPq1q1b4TfAbdhTKe95G+5bs2ZNFBUVRUZG1dxldeqpp0ajRo1i2LBhsWTJkoiImDt3btx2221b3JubmxtnnnlmXHDBBRvt+KST8lc1cOyxx8Ytt9xSYv7dd9+NM844IyK+L2CNHTt2o/u7dOlSqXnWrl0bM2fOTI7btWtXqecDAAAAAAAAAJDqL3/5S9x3331V+oxBgwbFhRdeWKEzNix/5eTklOucje1btWpVhctpm3P00UfHAQccEH//+9/j2WefLfEKyw0lEok4+eST48ILL4zGjRtXWa6KUP6ihMmTJyffcZqRkRFdu3ZNcyIAAAAAAAAAYJMSiXQnYDuyevXqlHF5b8LaWPlr5cqVVVr+ivi+F/P+++/HrFmztri2uLg4Hn/88ZgwYUKcf/75cdRRR1VptvJQ/qKE8ePHJ7/v0KFD1KlTJ41pAAAAAAAAAACgYvLz82Po0KHx+uuvp8zXrVs39t5772jdunXk5ubG0qVL4/PPP4+pU6dGUVFRRERMnTo1LrnkknjppZfitttuK/dtZ1VB+YsSfvx6yX333TeNSQAAAAAAAAAAqE5yc3OjoKAgOV63bl25zlmzZk2Jubp165Y71+Z89913cfrpp6e85rFOnToxePDg6Nu3b9SuXbvEnpkzZ8add94ZL774YnLulVdeiZUrV8aDDz4YmZmZVZK1rDLSHYDqZerUqTFlypTkeP/9909jGgAAAAAAAAAAqpMN3yC3sRJXaWxsX1W9ne7yyy9PKX41aNAgRo0aFaeddtpGi18REe3atYs777wzLrroopT5t99+Ox5++OEqyVkebv4ixeOPP578vl69erHffvulMQ0AAAAAAAAAwPahX79+8Zvf/KZKn1EZN2ttWNBasWJFuc7ZcF9OTk5kZFT+PVZvvPFGvP322ylzN9xwQ3Tq1KlU+y+44IKYNGlSvPnmm8m5Bx98ME499dQqu6msLJS/SFq0aFE888wzyfHRRx+9yXYjAAAAAAAAAACVJy8vL/Ly8tIdY4uaNWsWX331VXI8f/78cp2z4b5mzZpVKNemPPnkkynjDh06xBFHHFGmM84///yU8tfy5cvjn//8Z/Tp06dSMlaE1z6SdMcdd6S8h/WUU05JYxoAAAAAAAAAAKqbDh06pIznzp1brnM23NexY8dyZ9qU4uLi+OCDD1LmDjjggDKfs+eee0b9+vVT5j788MMKZassyl9ERMQHH3wQzz77bHJ88MEHR9euXdOYCAAAAAAAAACA6mbDktb8+fNj1apVZT5nxowZKeP27dtXKNfGLF++PJYuXZoy16ZNmzKfk5GREa1atUqZW7BgQYWyVRavfdxOrFu3Lr755puNfpafnx+DBw+O4uLiiIjIysqKwYMHb814AAAAAAAAAEB5ZSTSnYDtSJcuXVLG69evj48++ih69uxZ6jNmzpwZixYt2uy5lWH16tUl5nJycsp1Vm5ubsr4x2/XSyc3f20Hli1bFv3794+JEycm5/79738nW5dz586NtWvXJj8744wzonPnzls9JwAAAAAAAAAA1duee+4Z9erVS5l77733ynTGhuszMjLK9TrGLWnQoEGJucWLF5frrPz8/JRxw4YNy3VOZVP+2sYtWLAgTj311Hj//fdT5idOnBjnnHNOLF26NHbdddd4+umno3PnztGtW7e49NJL05QWAAAAAAAAAIDqLDs7Ow466KCUueeffz75xrnSeO6551LGe+65ZzRp0qRS8v1YTk5O5OXlpcxNnjy5zOfk5+fHzJkzU+aaNWtWoWyVRflrG/bNN9/EySefHNOmTUvOnXLKKbHDDjtERMSECRPiiCOOiCeeeCJatGgRTzzxRIwYMSJq1apV5mfVqVMnBg8enPzaWHMSAAAAAAAAAICa76ijjkoZz549O8aOHVuqvVOmTClxidGRRx5Zadk2tNdee6WM33nnnfj222/LdMZzzz1XotzWvXv3CmerDFnpDkDEs88+G88+++xm18yZM6dM7zadMmVKnH322Sl/WAcMGBCDBw+O3r17xznnnBMrVqyIxYsXx/XXXx/33ntvHHLIIXHggQfG0qVLo0WLFtGoUaNSPy8nJycGDBiw0c/Wr18fa9asibVr18aaNWtizZo1kZOTE61bty71+QAAAAAAAAAAVA+HHXZYdOnSJaZOnZqcu+mmm6Jnz55Rt27dTe4rLCyMq6++OmWuadOm8Zvf/KZUz92wO9OjR4949NFHN7vnoIMOirfeeis5XrNmTdx8881xxx13lOqZs2bNij/96U8pczk5ObHvvvuWan9VU/6qgNzc3GjevHlEfP8HsTr59NNPU4pfJ5xwQgwePDgivm80Pvroo3HxxRcnr6T77rvvYvTo0TF69OjknkQiEVlZWZGVlRWZmZlb/L64uDjWrl2bUvJau3ZtrF+/vkS+3/3ud3HqqadW8e8CAAAAAAAAAACVLZFIxCWXXBLnn39+cm7OnDlx/vnnx/3331/iVYsREevWrYsrrrgiPvnkk5T5gQMHRm5ubpVlPf744+P++++P/Pz85NwLL7wQdevWjWuvvXazb8ibOnVqDBo0KJYsWZIyf9ppp230Z0wH5a8KOOqoo0pcY1cederUKdMtWxuaM2dOibk+ffrE/fffH7Nnz44DDjgghg0blvJ5t27d4vnnn48///nP8eijj5b4QxoRUVxcHAUFBVFQUFDubBuTm5sbvXv3rtQzAQAAAAAAAADYeg499NA44ogj4pVXXknOvfvuu9G7d+/o169f/OxnP4tmzZrFt99+GxMnToy//OUvMX369JQz9tprrzjppJOqNGfdunXjsssui6FDh6bMjxo1Kt566604+eST42c/+1m0bt06cnJyYunSpfHZZ5/Fa6+9Fi+88EKJ3kzr1q03+Xa8dFD+qgaOOOKIuOWWW8q9f2Ovg8zKyoqBAwfGI488EnfddVdkZZX8S12nTp0YNGhQDBgwIN566634z3/+E1OmTIm5c+fG8uXLY82aNVFUVBTr168v8d7SijjqqKOiXr16lXYeAAAAAAAAAABb38033xzz5s2Ljz76KDk3Z86cuPHGG7e4t127dnHPPfdstNNS2Y4//vj45ptv4oEHHkiZnzdvXqlf/xgR0ahRoxg5cmQ0aNCgsiOWm/LXNuy4446LAw88cIvXzNWqVSsOO+ywOOywwza5pri4ONavX58sg/3wa2FhYRQWFibXZWRkREZGRiQSiUgkEhsdb+66PAAAAAAAAAAAaoa8vLz4y1/+EldeeWW89tprpd7XvXv3uPvuu2OHHXaownSpLr300ujQoUPccMMNsXz58jLv33fffeO2226LFi1aVEG68ksUV+aVTiQVFBTEp59+mhx369ZN6anGmZbuAFAtfLdmSrojVFjPvzZMd4QK++K86vUPENurgqJV6Y5QYZPzS74uuqbpvkOndEcAAAAAANgGdE53ACrRzr96JN0RqATTnz0j3REq5F//+leMHDkyPvzww02u6dKlS/Tr1y+OO+64SCQSZX7Ghm/H69GjRzz66KNlOiM/Pz9Gjx4dzzzzTMyYMWOza2vXrh0///nP45RTTokDDjigXJmr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1157bZnO6NatW1x88cXJ8b333huPPfZYpeYEAAAAAAAAAABqJq99rAKLFi2Kfv36xcKFCyMiIisrK+68885Sve5xQ+eee25MnDgxxo0bFxERN9xwQ2RmZsZJJ51UpnOaN28e119/fZmfXxlatWqVlucCAAAAAAAAAMC2TPmrki1evDj69+8fM2fOTM4NHjw49t5773Kdl0gk4tZbb40TTjghZs6cGcXFxXH99dfHunXr4owzzij1OQ0aNIiTTz65XBkAAAAAAAAAAIDqx2sfK9GiRYvi9NNPj2nTpiXnjjnmmOjfv3+Fzm3QoEE8+OCDyZvDiouL46abbopbb701iouLK3Q2AAAAAAAAAFDDJXxtE19QDspflWTevHlx2mmnxRdffJGc22uvveLmm2+ulPPbt28fI0aMiFq1aiXn/vznP8fFF18cK1asqJRnAAAAAAAAAAAANYfyVyX4/PPP48QTT4yvv/46Ode2bdsYMWJE1K5du9Ke071797j77rsjOzs7OffKK6/ECSeckHLbGAAAAAAAAAAAsO1T/qqg119/PU455ZRYsGBBcq558+bxv//7v9GkSZNKf96hhx4ad911V0oBbMaMGfGb3/wmnnzyyUp/HgAAAAAAAAAAUD0pf5VTcXFx/PGPf4zzzz8/Vq1alZxv3Lhx/OUvf4k2bdpU2bMPP/zwuO+++yI3Nzc5t3r16vjd734XZ511VsyZM6fKng0AAAAAAAAAAFQPyl/lsHTp0jjvvPPirrvuiqKiouR8s2bN4m9/+1t07NixyjMcfPDB8de//jUaNWqUMj9+/PgYOXJklT8fAAAAAAAAAABIL+Wvcli/fn189dVXKXOtW7eOxx9/fKsUv36wxx57xN///vfYeeedk3OHH354XHvttVstAwAAAAAAAAAAkB5Z6Q5QEzVp0iQeeuihOPnkkyM/Pz923333+OMf/xg77LDDVs+y0047xahRo+Kqq66KefPmxe233x6ZmZlRXFwchYWFWz1PaWVmZkYikUh3DAAAAAAAAAAAqLGUv8ppp512ij/96U/x2GOPxbBhwyInJydtWerWrRt33313rFy5Mplj9OjRcc0116Qt05aMHDkyDjzwwHTHAAAAAAAAAIAarzjD5SuwvVL+qoDdd989dt9993THSKpbt266IwAAAAAAAAAAAFtJRroDAAAAAAAAAAAA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ALBp1ab8ddddd6UUvxo1ahQjR46M3XbbbZN7WrRoEUceeWQceeSRMWvWrPjPf/5T6ufttttuccghh2zy82XLlsXtt98ef//735NzK1asiGHDhsXjjz9e6uf84MevfKxTp07sscceMX78+IiIePfdd2PWrFnRtm3bMp/7gzlz5sRpp50WCxcuTJnv27dvXHTRRdGsWbNN7q1du3bstttusdtuu8XAgQPj3Xffjezs7FI9t379+pv9fQQAAAAAAAAAAKpGxpaXVL1169aVeCXi7373u80WvzbUtm3b6Nu3b6Vlql+/fgwbNiz69++fMj9hwoR49913y3TWggUL4u23306Od99999hrr72S4+Li4nj66afLnXX16tUxYMCAlOJXdnZ23HrrrXHjjTdutvi1Mfvuu2/svffe5c4DAAAAAAAAAABUvWpR/vrss89i2bJlyXHt2rWjV69eaUz0XxdffHE0bdo0Ze71118v0xnPPPNMFBYWJse9evWKww47LGXNs88+G0VFReXKeOutt8b06dOT44yMjBgxYkQcd9xx5ToPAAAAAAAAAACo/qpF+Wv+/Pkp4/r160dWVvV4I2VOTk4ceuihKXOfffZZqfdveKtXdnZ2HH300bHrrrtGp06dkvPz58+Pt956q8z5pkyZEk8++WTK3Pnnnx8HHXRQmc8CAAAAAAAAAABqjmpR/iouLk4ZL168OFauXJmmNCV16NAhZZyfn1/qve+++27MmjUrOT7ooIOiUaNGERHRp0+flLXlefXj/fffn3JjWOfOnWPQoEFlPgcAAAAAAAAAAKhZqkX5q02bNinj9evXx1NPPZWmNCXl5uamjDcsq23O6NGjU8Y/Lnz17t07MjL++5dg7NixZSqWLVq0KP75z3+mzJ177rkpZwIAAAAAAAAA27iMhK9t4QvKoVq0hLp16xZNmjRJmbv99ttj7NixaUqUavHixSnjpk2blmrfsmXL4tVXX02OGzZsGAcffHBy3Lx58/j5z3+eHBcUFMTzzz9f6lz//Oc/o7CwMCXX0UcfXer9AAAAAAAAAABAzVUtyl+ZmZlx2mmnpcytW7cu/t//+38xbNiwWL58eZqSfe/DDz9MGXfu3LlU+8aMGRNr165Njo866qioVatWyprjjjsuZbzhTWGbM378+JRxjx49Iisrq9T7AQAAAAAAAACAmqtalL8iIs4555zo1q1bylxxcXE8/vjj8Ytf/CL+9re/xbp167Z6rlmzZsU777yTMveLX/yiVHuffvrplPGGRa8fzsrLy0uOp0+fHpMmTSrV+Z988knK+Kc//Wmp9gEAAAAAAAAAADVftbkmqlatWvHQQw9F//79Y8qUKSmfLV68OG644YZ46KGHYuDAgfHrX/86srOzqzzT2rVr44orroiCgoLk3O677x777LPPFvd+/vnn8emnnybHO+20U+y5554l1uXk5MQRRxyRUhQbPXr0Rtf+WEFBQcybNy9lrmPHjlvMVdmWLVsW48aNK/X6gw8+OBIJ76kFAAAAAAAAAICKqjblr4iIJk2axJNPPhk33nhjPPXUUyU+nzdvXlx33XXx4IMPxgUXXBC/+tWvIiOjai4v++yzz+Kaa65JKXBlZ2fHddddV6ry0oavb+zdu/cm1/7qV79KKX+9+OKLcdVVV0WdOnU2uSc/Pz+KiopS5ho2bLjFXJVt+vTpMXDgwFKv//TTT72aEgAAAAAAAAAAKkG1a+Hk5OTEjTfeGMccc0z8/ve/jy+//LLEmjlz5sRVV10VTzzxRAwbNix22WWXMj/n448/jszMzOS4oKAgli9fHl9++WW8//778dFHH6Wsz8zMjP/5n/+JXXfddYtnr127NsaMGZMcJxKJ6NOnzybXd+/ePdq0aROzZ8+OiIiVK1fGSy+9FL/+9a83uWflypUl5ho0aLDFbAAAAAAAAAAAwLah2pW/ftCzZ88YM2ZMPPvsszFixIiYO3duiTUff/xxnHjiiTFkyJA466yzynT+Aw88UOq1jRs3jptvvjkOOeSQUq1/7bXXYunSpcnxPvvsE23atNnk+h/KYSNGjEjOjR49erPlrx8X136wfv36UuUDAAAAAAAAAABqvmpb/or4vuB0wgknRO/eveOZZ56JBx54IObNm5eypqCgIIYPHx6zZ8+Oa665plKfX7t27ejTp09ccskl0aRJk1Lv2/CVj8cdd9wW9xx33HEp5a+JEyfGV199FR06dNjo+o294nHJkiXRunXrUuesDHvvvXc88cQTW/WZAAAAAAAAAABANS9//aBWrVpx0kknxfHHHx+PP/54/PGPf4wlS5akrHn00UejZcuWcfbZZ5frGZmZmVG/fv1o1KhRdOvWLbp37x5HHHFENG7cuEznzJo1K/7zn/8kx7Vr144jjzxyi/vatWsX++yzT0yYMCE5N3r06Lj88ss3ur5+/fqRmZkZhYWFybnvvvuuTFn/P/buPd7KMe8f+Het9k7tzpGkQYUOjB6HPAbR8JhJpTKMSI+GIcMYNcTjmEENk8E4PaPEOJazSWQq5FCGmXEmlMNEJSmidmkf2uv3h5/12B333mvtVqv9fr9e6+W+rvu6vvd3tXf99XHdAAAAAAAAAMAWIJnrBoBcyYvw13fq168fJ554YvTv3z9+97vfxdSpUyvd/9Of/hSHH354lU6/+t///d847LDDst7jI488EqlUKj0uKSmJbt261ajWo48+GmeffXYUFKz9Y0okEtG6detKr8N844034uCDD67RswAAAAAAAAAAgPySl9nPFi1axA033BCDBw+uNF9WVhb33HNPjrqKqKioiL/+9a9Zq7dkyZJ49tln13t/n332qTT+5z//mbVnAwAAAAAAAAAAm7e8DH9954ILLojOnTtXmpsxY0aOuomYOXNmLFy4MKs1H3roofXe22+//SqNX3311ViwYEFWnw8AAAAAAAAAAGye8uq1j2tKJpMxYMCAuPzyy9NzuQw/rRnUOuaYY+K//uu/qlXjk08+iSuuuCI9fv7552PRokXRunXrtdYefPDBUVhYGGVlZRERUV5eHnfccUdcdNFFNegeAAAAAAAAAADIJ3kd/oqI2GGHHSqNE4lETvr48ssvY/r06ZXmhgwZEjvttFO16qRSqbjzzjvTIbbVq1fHxIkT41e/+tVaa1u3bh19+/aNRx55JD13//33x9FHH73WiWgAAAAAAAAAAMCWJa9f+xgR8dVXX1Uat2rVKid9TJo0KX0CV0TED3/4w2oHvyK+Da/17du30tzDDz+83vVDhgyJZPL/fowlJSUxbNiwKC4urvazAQAAAAAAAACA/LFZhL/efPPN+OSTT2q09+mnn6403meffbLRUrWt+crHNQNc1XHkkUdWGn/88cfxz3/+c51rO3ToEKeeemqlublz58bgwYNj8eLFNe4BAAAAAAAAAADYvG0W4a8PPvgg+vfvH2PGjFnrJK8Nefzxx2PKlCmV5jIJXdXUG2+8Ee+//356nEwmo1evXjWu1759+9hrr70qza0ZLvu+YcOGxf77719pbtasWTFgwIB46qmnqvXsb775JsaNGxfTpk2r1j4AAAAAAAAAIEcSCZ8t4QM1UJDrBr6zcuXK+NOf/hQ333xzHH744XHQQQfFfvvtt9ZrHMvKyuKNN96I++67Lx5//PFK93r27LlWCGpTWDOY1a1bt2jdunVGNfv37x+vvfZaejx16tQYMWJENGnSZK21yWQyrr322vjFL34Rc+bMSc9/+umnccYZZ8Ree+0V/fv3jx49esT222+/1v6FCxfGrFmz4umnn46nnnoqli1bFqNGjapSn8uWLYtnnnmmWt9tu+22iy5dulRrDwAAAAAAAAAAUNlmE/76zqpVq2LixIkxceLEiIho0qRJbL311tGgQYNYsWJFfPbZZ1FWVrbWvr322itGjhy5qduNlStXxuTJkyvNHXHEERnX7d27d1xxxRVRWloaEd/+uTz++OMxcODAda5v2bJl3HPPPXHOOefE888/X+nea6+9lg6SFRUVxTbbbBNFRUVRXFwcX331VRQXF9e4zw8++CBOO+20au3p27dvXH311TV+JgAAAAAAAAAAsJm89nGrrbZa773ly5fH3Llz47333ot58+atFfyqV69eDBo0KP7yl79Es2bNarvVtUyZMiVWrFiRHhcWFkbPnj0zrtusWbM49NBDK81t6NWP3+255ZZbYuTIkdGyZct1rlm5cmV88skn8d5778X8+fPXG/xq0KBBzRoHAAAAAAAAAAA2ic3i5K8+ffpEq1atYvLkyfHSSy/F3LlzN7pn2223jV69esWAAQNil112qf0m12PNQNaBBx4YzZs3z0rtn/3sZzFlypT0+O2334733nsvOnfuvN49iUQiBgwYEP369YtJkybFY489Fq+88kqsXr16g89KJBKx6667xgEHHBA/+9nPNvgMAAAAAAAAAAAg9xKpVCqV6ybWVFxcHB999FHMnTs3li5dGitWrIitttoqGjduHNtuu2107tw52rRpk+s288bKlSvjnXfeiXnz5sWXX34Zq1atisLCwmjYsGE0b948dthhh2jfvn1OTk7bvM3JdQMAwBaq4Y6/y3ULGfvmk8ty3QIAAAAAkJGOuW6ALOrwm7/mugWy4KObfpbrFshDm8XJX2tq3LhxdO3aNbp27ZrrVrYIRUVF0a1bt+jWrVuuWwEAAAAAAAAAALIkmesGAAAAAAAAAAAAqD7hLwAAAAAAAACf0tS5AAAgAElEQVQAgDy0Wb72EQAAAAAAAACAKkomct0BkCNO/gIAAAAAAAAAAMhDwl8AAAAAAAAAAAB5SPgLAAAAAAAAAAAgDwl/AQAAAAAAAAAA5CHhLwAAAAAAAAAAgDwk/AUAAAAAAAAAAJCHhL8AAAAAAAAAAADykPAXAAAAAAAAAABAHirIdQMAAFDXfPPJZbluIWPNd7k21y1kbPGc03LdQsYKk0W5bgEAAAAA2AykEolctwDkiJO/AAAAAAAAAAAA8pDwFwAAAAAAAAAAQB4S/gIAAAAAAAAAAMhDwl8AAAAAAAAAAAB5SPgLAAAAAAAAAAAgDwl/AQAAAAAAAAAA5CHhLwAAAAAAAAAAgDwk/AUAAAAAAAAAAJCHCnLdAAAAAAAAAAAAGXD0D9RZ/voDAAAAAAAAAADkIeEvAAAAAAAAAACAPCT8VUuee+65+PDDD2u0t7i4OO66665IpVJZ7goAAAAAAAAAANhSFOS6gS1RSUlJ/Pa3v42VK1dGq1atYvDgwXHqqadWae/LL78c5513XsyfPz+WLFkSZ599di13CwAAAAAAAAAA5CPhr1owc+bMWLlyZURELF68OFq2bFmlfd9880389re/jcWLF0dExNixY6NLly7Rq1evjPp5/fXX49hjj82oRja8+OKLVf6zAAAAAAAAAAAANsxrH2vBU089lb4uLCyMn/70p1Xa17Bhw7jqqqsimfy/H8uFF14YH3zwQdZ7BAAAAAAAAAAA8puTv7Js9erV8cwzz6THBx98cDRt2rTK+w844IA488wz4/rrr4+IiJUrV8aZZ54ZDz30UDRq1Cjj/nr37h2/+c1v1nu/f//+UVZWFvvss0+MHDlyvetOPfXUmD9/frRr1y7+/Oc/r3fdyJEj48UXX8yoZwAAAAAAAAAAYG3CX1n28ssvx9KlS9PjI444oto1TjvttHj++efjtddei4iIjz76KC655JK45pprMu6vSZMmsfPOO6/3fiKRiIhvTyHb0LrCwsL0fze0rqioqIadAgAAAAAAAAAAGyL8lWV//etf09eNGzeOQw45pNo1kslk/P73v0+fwtW6devo169fNtsEAAAAAAAAALYUyUSuOwByRPgri5YtWxZ/+9vf0uMjjjgiGjZsGOXl5bF69epq1frBD34Qp5xySnz88cdx4YUXRtOmTaOkpKRKewsLCyOZTK73fnl5eZXqZGNdKpWqUg0AAAAAAAAAAKB6hL+yaOLEibFq1ar0+LjjjouIiBtvvDHGjBlT47pPPPFEtdZfddVV0b9//3Xeu//+++P+++/faI2ZM2fG7rvvvtF177//fpXWAQAAAAAAAAAA2bX+46Gotu+HqvbYY4/o0qVLDrsBAAAAAAAAAAC2ZE7+ypKXX345Pvjgg/T42GOPzWE363fEEUfE0KFDq7x++fLlMWfOnIiIaNGiRXTo0KFaz7v00kvj73//e7X2AAAAAAAAAAAAG5dIpVKpXDexJfjVr34Vzz77bHo8bdq02GmnnXLX0PeUlZXFV199FRERDRs2jMaNG1d57z/+8Y8YPHhwRET07Nkzbrjhhmo9e9myZVFSUhIREdtss00kEolq7c+tObluAABgs9V8l2tz3ULGFs85LdctZKwwWZTrFgAAAADIWx1z3QBZ1H74pFy3QBb8+5p+uW6BPOTkryx46623KgW/NherV6+OVCoViUQiWrRokZ4vLy+vco2Kior0dSqVqtbeiIiioqIoKipK9xMRkUwmI5n0xlEAAAAAAAAAAMiE8FcW3HTTTdXeM2vWrNh1112jfv36NX7u6NGjY+edd44ePXpEq1at1rr/3//93/Hqq6/WuP6apk2bFrvvvnvGdfr27RtXX311FjoCAAAAAAAAAIC6S/grQ9U59auioiJuuummmDx5csydOzeuv/76OPzww2v03C+++CJuv/329MlePXv2jOuvv75GtQAAAAAAAAAAgPwj/JWhG264ocprk8lkPP/88zF37tyIiHj00UdrHP564YUXIpVKRcS3r2Pccccd11pz3XXXxapVq2pU/ztvvPFGnHvuuRERcdBBB8WIESMyqhcR0ahRo4xrAAAAAAAAAAD/XyKR6w6AHBH+ysD06dPj+eefr9aefv36xVtvvRURETNmzIilS5dGixYtqv3smTNnVhr36tVrrTWtW7eudt01ffbZZ+nroqKi2GmnnTKuCQAAAAAAAAAAZE74q4ZWrVoVo0aNSo9btGgRZWVlUVxcvMF9ffr0idGjR0d5eXmUlZXFE088EYMGDarWs1OpVKXwV7t27WK33Xar0t5ly5ZFSUlJlZ/19ddfp69LS0tj8eLFVW80IhKJRGyzzTbV2gMAAAAAAAAAAGyc8FcN3XzzzbFgwYL0+Kyzzoobbrhho+GvrbfeOg444ID0iWGTJ0+udvjr7bffji+++CI9rs6r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FltvvXUNOwcAAAAAAAAAADZE+GsL17Vr1xg9enQk/v8Rj0uWLIlf/OIXMW/evPXuqVevXlx33XXRpk2biIgoLy+PYcOGxfvvv7/BZ91+++3x4YcfpsdDhgyJH/3oR1n4FgAAAAAAAAAAwJqEv+qAPn36xPDhw9Pjzz//PH75y1/GkiVL1runZcuWceONN0b9+vUjImLFihXx61//Or7++ut1rp8/f378+c9/To/32muvGDp0aJa+AQAAAAAAAAAAsCbhrzpiyJAhMWDAgPT4k08+iVNOOSWKi4vXu2ePPfaI8847r9KeESNGrHPtpZdeGt98801ERDRv3jyuueaaKCgoyFL3AAAAAAAAAADAmhKpVCqV6yby2b333huXXnpprtuIiIhRo0bFMcccs977ZWVlceKJJ8bLL7+cnvvP//zPuPXWW2OrrbZa774zzjgjnnrqqejYsWNcffXV0alTp0r3J06cmA6JJRKJ+POf/xyHHnpoht9mczAn1w0AAFuoRjuNzHULGVvx8br/p4B8korVuW4hY4mol+sWAAAAAMhbHXPdAFnU7uK/5boFsmDuqF65boE85OSvOqSwsDBuvPHG2G677dJzHTt23OgJXVdccUWcccYZ8fDDD68V/Fq0aFFcccUV6fGQIUO2kOAXAAAAAAAAAABs3ryXL0ONGjWKtm3b1nj/kiVLoqSkJCK+fV1io0aNMuplY1q2bBk33nhjDB48OIYPHx4nnHBC+t6CBQsqjdc0ceLEteZWrFgRX3/9dXo8adKkmDx58jr3T5kyJerXr7/RHgEAAAAAAAAAgI0T/spQv379ol+/fjXef/LJJ8fMmTMjIuK8886Lo446KlutrVfXrl3jySefjFatWlWaLy8vjwULFmRU+7PPPlvvPW8YBQAAAAAAAIBa4L1vUGf5618LXn311bjggguitLS0Vmofd9xxMW/evIzqrBn8AgAAAAAAAAAA8ouTv7LsrrvuiquuuirKyspi6dKlccMNN2TtVYeff/55DBs2LD7//PM48sgj4/LLL48+ffpkpfaattlmm3jhhRcyqlFSUhJdu3bNUkcAAAAAAAAAAMD3Ofkry7744osoKyuLiIhnnnkmhg4dmpUTwFatWhWnn356fP755xERUVxcHC+//HLGdQEAAAAAAAAAgPwk/JVlZ511Vhx55JHp8TPPPBPnnntupFKpGtdcvXp1nHXWWfH222+n5/r06RMjRozIqFcAAAAAAAAAACB/ee1jLRg1alQsXLgw/vGPf0RExJQpU+LKK6+MCy+8sEb1Lrnkkpg+fXp63L179xg9enQkk+vP7g0cODBeffXV9d6fPXt2jXoBAAAAAAAAAAA2D07+qgWFhYVx0003Rbt27dJzd955Z9xxxx3VrnXFFVfEQw89lB7vvffeceONN0ZhYWEWOgUAAAAAAAAAAPKV8Fctadq0adx8883RtGnT9Nz3X9tYFU888UTceeed6XG3bt3i1ltvjaKioo3uLSgoiHr16lX6AAAAAAAAAAAAWw7hr1rUoUOHuOqqq6KwsDDOP//8uPrqq6u1v1evXnHaaadFRMS+++4b48aNi0aNGlVp79133x3vvPNO+jNt2rRq9w8AAAAAAAAAAGy+CnLdwJbukEMOiWnTpsX2229f7b2JRCLOOuus2HvvvWPfffet0olfAAAAAAAAAEAdk0jkugMgR4S/amjIkCHx4YcfZlxnyZIl6evRo0fHTTfdlHHNwYMHx4knnphxHQAAAAAAAAAAYPMl/FVDn3/+eSxYsCCrNb/66qv46quvMq6zfPnyLHQDAAAAAAAAAABszoS/WKclS5ZEp06dct0GAAAAAAAAAACwHsJfNfToo49mtH/atGlxzjnnRElJSaX5ww8/PK699tqoV69eRvUBAAAAAAAAAIAtm/BXDkyYMCFGjhwZFRUVa92bMmVKbLXVVvGHP/whkslkDrr7VjKZjDZt2kRERGlpaSxevDgiIgoLC2PbbbettPazzz6L1atXR0REq1aton79+hERkUql4tNPP92EXQMAAAAAAAAAQN0h/LWJXXfddXHzzTdHRETr1q2jefPmMXv27IiI2HHHHeOTTz6JRx99NEpKSuKPf/xjOki1KSSTyWjSpElERGy99dYxderUiIh49dVXY+DAgRERscsuu8TEiRMr7Tv00ENjwYIFERFx0003xZ577hkR34bGDjjggPS6RCJR698BAAAAAAAAAADqCuGvTaSkpCQuvfTSeOSRRyIiomnTpnHrrbfG6NGj0+GvU089NZ588sl47rnnYsqUKfHll1/GjTfeGM2bN98kPe6www7x8ssvrzW/fPny9HXjxo2rXK9+/frrrAcAAAAAAAAAAGQud+8VrEPmzp0bAwYMSAe/mjRpErfddlt07Nix0rp69erFtddeG127do2IiH/+859x1FFHxTvvvLPJe/6+moa/AAAAAAAAAIBNIJnw2RI+UAPCX7Xsb3/7Wxx99NHx3nvvRURE8+bN4/bbb08HvNbUuHHjuPXWW2O33XaLiIgFCxbEwIED4+67745UKlVrfZaVlcWMGTPWee+TTz5JX7dq1arWegAAAAAAAAAAAKpO+KuWfPPNNzFy5Mj47W9/G8XFxRERsf3228eECRNijz322ODeZs2axR133BH77LNPRESsWrUqRo0aFb/85S9j/vz5We+1uLg4hgwZEvfff/867//73/9OX7dr1y7rzwcAAAAAAAAAAKpP+KsW/P3vf4++ffvGPffck57bfffd47777oudd965SjWaNWsWf/nLX+InP/lJpbp9+vSJMWPGRGlpaVZ6/fzzz2PQoEHx4osvxoIFC9a55s0330xfZxL+mjhxYqVaAAAAAAAAAABAzQl/ZdFXX30VF1xwQZx00kkxb9689PwRRxwREyZMiNatW1erXoMGDeLGG2+MoUOHRjL57Y9q1apV8ac//Sl69+4dkyZNioqKihr3+95778WAAQPSr6T8+OOP11rz0Ucfxdy5cyMiIplMxl577VXj502ZMiWOOeaY6NevXzz55JM1rgMAAAAAAAAAAAh/ZUUqlYpJkyZF796945FHHknPFxYWxsUXXxzXXHNNNGjQoEa1E4lEnHHGGXHrrbdGq1at0vPz5s2Lc889N/r37x+PPfZYlJeXV6vuc889F8cff3wsXLgwIr4Nmo0aNWqtdQ888ED6ukuXLtGyZcsafY+IiJUrV0ZExOzZs50ABgAAAAAAAAAAGRL+ytCLL74YRx99dJx77rnxxRdfpOfbtWsX9957b5xwwglZec6BBx4Yjz32WPTs2bPS/Jw5c+Kcc86Jn/70p3H77bfH0qVL17m/uLi40vj000+PFStWREREq1at4u67747evXtXWjNv3ry499570+Mjjjgio++wfPny9PX222+fUS0AAAAAAAAAAKjrhL9qaPbs2TFkyJA48cQTY9asWZXuDRw4MCZOnBh77LFHVp/ZokWLuOGGG2LMmDHRtm3bSvcWLFgQf/jDH+Lggw+O//mf/4mysrJK999///1K49WrV0dExO677x4PPfRQdO3atdL9VatWxdChQ2PVqlUREdG4ceMY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AKC8SyTSnQBIF599LEFZWVkxYMCAPMWva665pkjFr+/VqFEjRowYEffff3/svvvuKffeeOON6NGjR0yYMCFlfvDgwdGiRYuUv+HDhyfvjxkzJs/9wYMHFzkjAAAAAAAAAACwc3nzVwmZP39+XHnllfHJJ58k5zIyMmLo0KHRu3fvEnnGMcccE08++WRce+218eKLLybnS/stYHXq1ImuXbsWae/bb78dixcvLtE8AAAAAAAAAACA8leJmDhxYgwfPjyysrKSc9WrV4/bb789OnXqVKLP+tnPfhZ//etfY9y4cTFy5MjIzs5O3vv+LWCDBw+O3XbbLfbcc8+UvevWrYvVq1dHREStWrWiTp06Kfd32223fJ/ZsGHD+MMf/lCkvAMGDFD+AgAAAAAAAACAUqD8VQxr1qyJ4cOHx7///e+U+aZNm8bf/va3aNasWak9+9e//nW0b98+rrrqqvj444+T8+vWrYsHH3wwHn/88bjmmmtS9jz00EPJTz+eccYZ8T//8z+llg8AAAAAAAAAAChdGekOUFY988wzceKJJ+Ypfh166KExfvz4Ui1+fW/vvfeOxx57LM4999zkXKVKleLWW2+NSpUqlfrzAQAAAAAAAACA9FH+KoIHH3wwrrrqqli5cmVyLiMjIy666KJ44IEHom7dujstS6VKleK6666Lv/71r1G7du0YNGhQtGjRYqc9HwAAAAAAAAAASA+ffSyCXr16xeTJk2P27NkREdG4ceMYNWpUtG/fPm2Zjj/++GjTpk3Uq1evxM+eO3euQhkAAAAAAAAAAPzEePNXEVStWjX+/Oc/R+3ataNHjx4xefLktBa/vle/fv1IJBJF2jtz5syYM2dOCScCAAAAAAAAAABKizd/FVGTJk3iqaeeigYNGqQ7SrG9//77cckll0S/fv3igAMOyHO/du3a0blz5yKdPW3atFi6dGlxIwIAAAAAAAAA21HE98QAuwDlr2LYFYpfU6ZMid/+9reRlZUV77//flx44YV51jRq1ChuuummIp0/YMAA5S8AAAAAAAAAACgFPvtYjr3wwgtxySWXRFZWVkRENGzYMM2JAAAAAAAAAACAgvLmr3IkNzc3ef3666/Hgw8+GDk5ORER0adPnxg8eHC6ogEAAAAAAAAAAIWk/FWOrFu3Lnn92WefJa/79+8fl19+eToiAQAAAAAAAAAARaT8VY7MnTs3z9zgwYOjT58+O9w3f/786NatW5Ge+fXXXxdpHwAAAAAAAAAAsGPKX+XEl19+Ga+88kpynEgk4oYbboizzjrrR/du2rQpFixYUJrxAAAAAAAAAACAQlL+Kifmz58fW7dujYiIjIyMGDFiRPzyl79McyoAAAAAAAAAAKColL/KiSOPPDJuvfXWGDhwYAwcOLBQxa+WLVvG5MmTi/TcAQMGxH/+858i7QUAAAAAAAAAALZP+asc6d69ezRo0CAOPvjgdEcBAAAAAAAAAEpIIpFIdwQgTRK5ubm56Q4BP02fpjsAALCLysndmO4IxZaZqJLuCMVWa5+b0x2h2NbO/126IwAAAABQZjVPdwBK0L73vp7uCJSAeZcdne4IlEEZ6Q4AAAAAAAAAAABA4fnsIwAAAAAAAAAAUCK+/vrrmDlzZixZsiSysrKiSpUq0ahRo2jVqlXsscce6Y63XV9//XV8/PHHsXjx4li/fn1kZGRE9erVo3HjxrH33nvHXnvt9ZP8xKryFwAAAAAAAAAAUCwvv/xy/P3vf48ZM2ZEbm5uvmtatmwZffr0iVNPPfUnUaTauHFjjB8/Ph5//PH4+OOPd7i2Tp06ceihh0bnzp3jl7/85U5K+OMSudv7pw3l3qfpDgAA7KJycjemO0KxZSaqpDtCsdXa5+Z0Ryi2tfN/l+4IAAAAAJRZzdMdgBK0772vpzsCJWDeZUenO0KRbNiwIYYMGRL/+c9/Crynffv2cccdd0S9evVKMdmOvfTSS3HjjTfGsmXLCrWvUqVKMWvWrFJKVXgZ6Q4AAAAAAAAAAACUPRs2bIg+ffoUqvgVETFt2rQ4++yzY/ny5aWUbMduv/32+O1vf1vo4tdPkc8+AgAAAAAAAAAAhTZ06ND48MMPU+YaN24cF1xwQXTo0CEaNmwYy5cvj+nTp8c///nPmDdvXnLd559/Hv3794+HHnooKlTYeRWmkSNHxgMPPJAyV6VKlejSpUt07tw5mjVrFvXq1YuMjIxYu3ZtfPbZZzFr1qx49dVXY86cOTstZ0H57CNsl88+AgDw0/ZtzjfpjlBslTNrpztCsTU8YHS6IxTbF7PPT3eEYstI+P9vAwAAgMLx2cddic8+7hrK2mcfX3755bjssstS5tq3bx/33HNP1KxZM8/6TZs2xTXXXBPPPfdcyvx1110X5557bqlm/d7EiRNjyJAhKXNHH3103HDDDdG0adMf3b9o0aIYP358DBw4sLQiFpryF2yX8hcAAD9tyl8/DcpfPw3KXwAAAFBYyl+7kv3+pvy1K/isb9kpf+Xm5kbPnj1j7ty5ybnGjRvHU089FTVq1NjuvpycnPjVr34Vs2fPTs7Vr18/XnjhhahatWqpZl6xYkWceOKJ8c03//ffrZ9yyikxatSoyMjIKNVnl6aymxwAAAAAAAAAANjpXnrppZTiV0TEsGHDdlj8iojIzMyMESNGpMwtX748HnvssRLPuK0RI0akFL9atWoVN910U5kufkUofwEAAAAAAAAAAIXw7LPPpoybNGkSxx13XIH2HnDAAXHIIYekzG37KciStnDhwpTMiUQibrjhhsjMzCzV5+4Myl8AAAAAAAAAAECBbN68OV577bWUuVNPPTUSiUSBzzjttNNSxh988EGsXLmyRPLlZ/z48Snjdu3aRevWrUvteTuT8hcAAAAAAAAAAFAgH3zwQaxbty5lrn379oU647DDDksZb926Nd54441iZ8vPli1bYtKkSSlzPXr0KJVnpYPyFwAAAAAAAAAAUCCffPJJyjgzMzPatGlTqDP23HPPqFev3g7PLSlz587N81axI444olSelQ4V0h0AAAAAAAAAAAAoG+bPn58ybtSoUVSrVq3Q5+yzzz6xYsWK5HjBggXFzpafmTNnpoyrVasWTZs2TZn74osv4r333oulS5fG5s2bo06dOlGvXr045JBDokGDBqWSq6QofwEAAAAAAAAAAAUyb968lHHjxo2LdE6jRo1SxtuWykrKrFmzUsb77rtvJBKJiPjuE5a33XZbTJs2bbv7mzVrFn369ImePXtGZmZmqWQsDp99BAAAAAAAAAAACuTrr79OGTds2LBI52xb/lq2bFmRM+3ItqWy2rVrR25ubtxxxx1x9tln77D4FRHx3//+N4YOHRo9e/aMxYsXl0rG4vDmLwAAAAAAAACAMuz/v8SIMm79+vWxYcOGUn1G9erVo0aNGsU6IysrK2Vc1PO23bdx48bYunVrZGSU7Lus1qxZkzKuXr163HzzzTFmzJhCnfPpp59Gr169YsyYMbH//vuXZMRiUf4CAAAAAAAAAIA0++c//xl/+ctfSvUZl19+efTv379YZ2xb/qpSpUqRzslvX1ZWVrHLadtat25dyvjdd9+N//znP8lx/fr148ILL4yjjz46GjduHFu3bo0lS5bEK6+8Eg888EBKeWzVqlUxYMCAmDRpUonnLCqffQQAAAAAAAAAAAokOzs7ZVypUqUinZNf+as03ny2bflr1apVyeujjjoqnnvuubjwwgtjv/32i2rVqkWNGjWiZcuWcdlll8Wzzz4bbdu2Tdm/aNGiuOWWW0o8Z1EpfwEAAAAAAAAAALuk3NzcfOebN28e99577w7f4FW3bt0YPXp0NGnSJGV+4sSJsXz58hLNWVTKXwAAAAAAAAAAQIFUrVo1Zbxp06YinbNx48Y8c9WrVy/SWTtSrVq1fOdvuOGGAr21rEaNGjFkyJCUuU2bNsUTTzxRIvmKS/kLAAAAAAAAAAAokG3LVPmVuAoiv33bK2oVR35nNm/ePA499NACn9G5c+do0KBByty7775b7GwloUK6AwAAAAAAAAAAQHnXp0+f6NWrV6k+oyTerLVtmWr9+vVFOmfbfVWqVImMjJJ/j1V+5a/DDz+8UGdkZmZGu3bt4t///ndy7sMPPyx2tpKg/AUAAAAAAAAAAGlWo0aNqFGjRrpj/Kjdd9895s+fnxx/9dVXRTpn23277757sXJtT8OGDWPevHkpc82bNy/0OdvuWbNmTWzZsiUqVEhv/cpnHwEAAAAAAAAAgALZZ599UsZffPFFkc7Zdt++++5b5Ew7sm3eiIhatWoV+pz89nzzzTdFylSSvPkLAAAAAAAAAKAMS3j1DzvRtiWtr776KrKysvL9vOKOLFiwIGW89957Fztbfvbbb788c7m5uYU+J789iUSiSJlKkv/4AwAAAAAAAAAABdKiRYuU8ZYtW2LmzJmFOmPRokWxfPnyHZ5bUlq2bJlnbu3atYU+Z9s9iUQiateuXeRcJUX5CwAAAAAAAAAAKJC2bdtGzZo1U+amTZtWqDO2XZ+RkREdO3Ysdrb8tG7dOnbbbbeUuU8//bTQ52y7p169epGZmVmsbCVB+QsAAAAAAAAAACiQihUrxjHHHJMyN3ny5EJ9SvGJJ55IGbdt2zZPQaukZGRkROfOnVPmpkyZUqgztmzZkqewdsghhxQ7W0lQ/gIAAAAAAAAAAAqse/fuKeMlS5bEyy+/XKC9c+fOjXfffTdlrlu3biWWLT8nnXRSyvizzz6LqVOnFnj/888/n+czlUcccUSJZCsu5S8AAAAAAAAAAKDAjjvuuGjRokXK3B//+MfYsGHDDvfl5OTEsGHDUubq168fvXr1KtBzW7RokfLXu3fvAu3r0KFDtGvXLmXuxhtvjI0bN/7o3m+++SZGjRqVMlenTp04+eSTC/Ts0qb8BQAAAAAAAAAAFFgikYgrr7wyZW7p0qVx2WWXxfr16/Pds2nTphg0aFB89NFHKfN9+/aNqlWrllrW7w0aNChlPG/evLjkkkti7dq1292zYsWK6NOnT3z11Vcp8xdddFFUq1atVHIWlvIXAAAAAAAAAABQKJ07d46uXbumzE2dOjVOOeWUGDt2bHz22Wexdu3amD9/fkyYMCFOO+20eOaZZ1LWH3TQQXHmmWfulLxt27bN86awqVOnRteuXePee++NOXPmxJo1a2LVqlUxc+bMuOuuu6Jbt24xe/bslD0dOnSIiy66aKdkLogK6Q4AAAAAAAAAAEDRJRLpTkB59ac//Sm+/PLLmDlzZnJu6dKlMWLEiB/du+eee8bdd98dFSrsvPrS//zP/8SXX34ZL774YnJu1apVceedd8add975o/t/8YtfxO233x6ZmZmlGbNQvPkLAAAAAAAAAAAotBo1asQ///nP6NKlS6H2HXroofHII4/E7rvvXkrJ8lexYsW46667ok+fPpGRUbjaVI8ePeLhhx+OunXrllK6olH+AgAAAAAAAAAAiqRGjRrxl7/8Je6555446KCDdri2RYsWcdNNN8VDDz0U9erV20kJU1WoUCEGDx4cEyZMiK5du0bFihW3u7ZKlSrRuXPneOyxx+K2226LqlWr7sSkBZPIzc3NTXcI+Gn6NN0BAABgh77N+SbdEYqtcmbtdEcotoYHjE53hGL7Yvb56Y5QbBmJnfdqeAAAANg1NE93AEpQi3+8nu4IlIBPfnN0uiOUiGXLlsWHH34YS5cujaysrKhSpUo0atQoDjzwwNhjjz3SHS+PrKys+OCDD2LBggWxbt26qFChQtStWzcaN24cBx10UFSuXDndEXfIfzMKAAAAAAAAAACUiAYNGsQJJ5yQ7hgFVq1atTjiiCPiiCOOSHeUIvHZRwAAAAAAAAAAgDJI+QsAAAAAAAAAAKAMUv4CAAAAAAAAAAAog5S/AAAAAAAAAAAAyqAK6Q4AAAAAAAAAAEDRZSTSnQBIF2/+AgAAAAAAAAAAKIOUvwAAAAAAAAAAAMog5S8AAAAAAAAAAIAySPkLAAAAAAAAAACgDKqQ7gD8tHXp0iVWr14dERHNmjWLRx55JM2JAAAAAAAAAACACOUvduDzzz+PRYsWJcft27dPYxoAAAAAAAAAAOCHfPaR7Zo+fXrKuEuXLmlKAgAAAAAAAAAAbEv5i+2aMWNG8rpRo0bRqlWrNKYBAAAAAAAAAAB+yGcf2a4fvvnr+OOPT2MSAAAAAAAAAGB7PehMxQAAIABJREFUEol0JwDSxZu/yNfatWvjs88+S46PO+64NKYBAAAAAAAAAAC2pfxFvmbMmBG5ubkREVGnTp1o165dmhMBAAAAAAAAAAA/pPxFvmbMmJG87tSpU1So4AuhAAAAAAAAAADwU6L8Rb6mT5+evO7SpUsakwAAAAAAAAAAAPlR/iKPLVu2xKxZsyIiokqVKnHkkUemOREAAAAAAAAAALAt5S/ymDt3bmRlZUVExJFHHhlVq1ZNcyIAAAAAAAAAAGBbFdIdgJ+eVq1axSeffJLuGAAAAAAAAAAAwA548xcAAAAAAAAAAEAZ5M1fAAAAAAAAAABlWCKR7gRAunjzFwAAAAAAAAAAQBmk/AUAAAAAAAAAAFAGKX8BAAAAAAAAAACUQcpfAAAAAAAAAAAAZZDyFwAAAAAAAAAAQBlUId0BAAAAKJrKmbXTHYGI+GrORemOUGxV97wh3RGKLXvRjemOAAAAAACw03nzFwAAAAAAAAAAQBmk/AUAAAAAAAAAAFAG+ewjAAAAAAAAAEAZlkgk0h0BSBNv/gIAAAAAAAAAACiDlL8AAAAAAAAAAADKIOUvAAAAAAAAAACAMkj5CwAAAAAAAAAAoAxS/gIAAAAAAAAAACiDlL8AAAAAAAAAAADKIOUvAAAAAAAAAACAMkj5iyLLzc2NrKysdMcAAAAAAAAAAIByqUK6A7DzjBkzJqZOnRoREZdcckkccsghRTpn3bp1MXHixPjf//3faNmyZdx1110lGRMAAAAAAAAAKISEV/9AuaX8VY7MmTMnXn311YiIOO2004p8zgcffBB/+tOfIiJi4cKFMXPmzGjdunVJRAQAAAAAAAAAAApI+SsNcnNz48EHHyyVs4866qjYb7/9SuXs73Xs2DE6dOgQU6ZMiYiIv/zlL3H//feX6jMBAAAAAAAAAIBUyl9pkJOTEyNHjiyVs0eOHFnq5a+IiEGDBsUZZ5wRubm58dprr8XcuXOjZcuWpf5cAAAAAAAAAADgO8pfRXTSSSfFF198Ueh9AwYMiN69e5dCopJx1VVXxTPPPFPofaeeemqB1p1zzjlx/fXXF/p8AAAAAAAAAAAglfJXEWVnZ0dWVlah923evDkyMjLi5JNP3uG6Tz/9ND755JOIiKhRo0Yce+yxBTp/zz33LHQmAAAAAAAAAACg7FH+SoOMjIy49dZbd7jm0ksvTZa/jj/++Bg1atTOiBannHJKtGrVKs/84sWLY4899ijQGfPmzYt9990333sHHHBAsfIBAAAAAAAAAADfUf4qopdffjnP3Lx58+LEE09MjqdPnx7Vq1cv9NlZWVkxZcqU5LhLly5FC1kExx57bMpbxtauXRsjR46MyZMnx+jRo6NDhw473L9w4cK44447ol27djF06NBo1qxZaUcGAAAAAAAAAIByKSPdAcjrrbfeim+//TYiIqpVqxYdO3ZMW5b7778/Jk6cGDk5OTFw4MBYtmzZDtf/6U9/is2bN8fbb78dvXr1ihUrVuykpAAAAAAAAAAAUL4of/0EPf/888nrjh07RuXKldOW5fLLL4999tknIiJWrlwZgwcPjtzc3HzXvvrqq/Haa68lx0OGDIl69ertlJwAAAAAAAAAUF4lEv52hT8oCp99/InJzs6OF198MTnu3r17kc5ZsWJFvPfeeylzX375ZfL6ww8/TLm377775vuJxipVqsSoUaPi17/+dWzdujXefvvtGDt2bJx33nkp6zZt2hQjR45Mjnv27Bm9evUqUnYAAAAAAAAAAODHKX/9xLzwwguRlZUVERF16tSJ4447rkjnzJkzJ6644ort3h8zZkzKuG/fvnHhhRdGdnZ2nrW77757nHTSSfHUU0/FIYccEu3bt4+vvvoqZc3jjz8eCxcujIiIJk2aRN++ffOs+V4ikYgGDRoU8hcBAAAAAAAAAAA/pPz1E/Pkk08mr3v06BGVKlXaac8eOXJkTJo0aYdr3n///Tj11FN3uGbp0qXRrVu37d6vVq1azJgxo0gZAQAAAAAAAACA7yh//YQsXbo03nrrreT4tNNOK/JZjRo1ijPOOCNlbtq0abFo0aKIiOjQoUM0adIkee/AAw+MZcuWFfl5AAAAAAAAAADAzqX89RPy6KOPxtatWyMiolatWvHxxx/Hxx9/HG3bto1mzZoV6qxmzZrFH//4x5S5QYMGJctfZ555Zp63c9WvXz86duxYjF9QMBUq+B87AAAAAAAAAAAoLi2cIrr++utj3LhxO1xz8MEH55kbMmRIXHDBBXnmN23aFBMmTEiO165dG9dee21yT2HLX0XRpk2baNOmTak/BwAAAAAAAAAAKL6MdAfgO0899VSsWrUqIiIyMzOjUaNGedYsXrw4rr/++vj22293djwAAAAAAAAAAOAnxpu/iqhy5cpRrVq1lLnc3NzIzs5Ojre9HxFRsWLFPHNbt26Nv//978lx9+7d44svvogvv/wyOffYY4/FyJEjIysrKyIi/vCHPxT7N+Rn3rx5ceKJJ5bK2VOmTIm6deuWytkAAAAAAAAAUF4lEulOAKSL8lcRDRs2LIYNG5Yyt21x6s0334zq1av/6FkvvPBCLFiwIDn+zW9+k6fctW7dumTxa9y4cXHYYYfFSSedVJyfAAAAAAAAAAAAlGHKX2mWm5sb9913X3J81FFHxf77759n3YUXXhhvvPFGTJkyJSIirrvuumjVqlXstddepZbtoIMOil69ehXrjNGjR8dnn31WQokAAAAAAAAAAIDvKX+l2TPPPBOzZ89Oji+++OJ81yUSiRg1alSccsopsWbNmtiwYUNcddVV8eijj0alSpVKJVvTpk3j9NNPL9YZTz75pPIXAAAAAAAAAACUgox0ByjPNm/eHHfeeWdyfPjhh8fhhx++3fUNGjSI4cOHJ8ezZ8+O2267rVQzAgAAAAAAAAAAP03e/JVG48aNi0WLFkXEd2/2+t3vfveje0444YQ444wzYsKECRER8eCDD8YRRxwRxxxzTInnW79+fcybN69YZ2zcuLGE0gAAAAAAAAAAAD+k/JUmK1eujLvuuis5Pumkk+IXv/hFgfYOGzYs3nvvvVi4cGHk5ubGkCFD4sknn4x69eqVaMZXXnklXnnllRI9EwAAAAAAAAAAKBk++5gmo0aNirVr10ZERKVKleKqq64q8N5q1arFLbfcEpmZmRHxXZFs2LBhpZITAAAAAAAAAAD4afLmr53g888/jzfffDPeeuutGDx4cHz55ZcxefLk5P0+ffpE06ZNC3Vm69at4/zzz48xY8ZERMSrr74ajz76aJx55pkllvvkk0+OW2+9tVhnXHDBBTFlypQSSgQAAAAAAAAAAHxP+asUjRgxIqZNmxZLlixJzvXr1y+GDh2aHP/85z+Pfv36Fen8K664Il544YVYvHhxRHz3NrEOHTrEXnvtVbzgAAAAAAAAAECZkUikOwGQLspfJWD9+vXx3nvvxUsvvZQyP3HixJRxZmZm3H777ckyWCKRiOHDh0flypWL9NwqVarEH/7wh+jTp09ERGRlZcWQIUPi4YcfjkQB/zf7qlWr4p133om33norzjrrrKhatWry3jfffBOzZs0qUrbvbdiwoVj7AQAAAAAAAACA/Cl/FUFWVla8++678e6778a0adPio48+ipycnHzXVq5cOY444og4/vjjIzc3N6699trkvV/96lfRvn37YmU54ogj4rTTTotJkyZFRMT7778f//rXv+L888/f4b7x48fH3/72t5g7d27k5uZGRETXrl2jSZMmyTWvv/56vP7668XKBwAAAAAAAAAAlA7lryKYMWNGXHLJJdu9X6tWrTjmmGOiS5cu0bFjx6hWrVosXrw4Tj/99OSaJk2axO9+97sSyTN48OB4/fXXY+XKlRERMWnSpDjvvPMikUjEli1bYtasWfHOO+/E9OnTk3vefPPNPOdkZ2eXSB4AAAAAAAAAAKD0KX8VwT777JNnrn79+tG5c+c44YQT4rDDDouKFSsm723atCmuuOKKWLt2bUREVKxYMe64446oWbNmieSpU6dODBs2LK6++uro3r17jBgxIp599tmYMGFCzJgxI7Kysra7NzMzM9q2bRudOnWKgw8+ONatWxeZmZkREXH00UfHFVdcERERU6ZMiVGjRkVERPv27WPo0KHJM5588skYM2ZMRERccMEF0bNnz+S9G2+8MWbOnFkivxMAAAAAAAAAAPg/yl9F0LBhw6hWrVrUqVMnunTpEieccEIcfPDBkZGRke/6NWvWRJUqVZLjgQMHRps2bUo000knnRTVq1ePTp06RUTE3Llz46233sp3bZ06deKoo46KY489Njp27Bi1a9dO3qtfv37MmTMnz56nn346eX3IIYfE/vvvnxxPnTo1eb377run3Hv00UeT1y+++GKMHTs2evfuHZ07d97uPy8AAAAAAAAAAODHKX8VQSKRiAkTJsS+++5boPW77757PPTQQ3HHHXfEvHnzok+fPqWS6/viV0RE8+bNU+41atQojj/++OjSpUsceuihybd7FcSWLVviqaeeSo4PPvjgIuVbv359vPPOO/HOO+/EySefHLfeemuRzgEAAAAAAAAAAJS/iqygxa/vZWRkxMCBA2PLli2llChV8+bNY++9944uXbpEly5donXr1kU+6x//+Ed89dVXEfHdm8GOPPLIIp2zZs2a5HVJffISAAAAAAAAAADKK+WvnaxChZ3zj7x58+bx3HPPFfucSZMmxd13350c9+nTp1BvDfuhZcuWJa/32GOPYmcDAAAAAAAAAIDyTPmLfK1YsSJuvvnmmDx5cnKuVatWccEFF+RZm0gkUvZtz5w5c5LXhX1zGgAAAAAAAACQv4zEj68Bdk3KX6T46KOP4rHHHosnnngivv322+R88+bN4/7778/3rV81atRIXj/11FNxzjnnRNOmTVPWPP/88zF16tSI+O7tZ23atCmlXwAAAAAAAAAAAOWD8lc5t2HDhpg+fXpMmTIlXnjhhVi0aFGeNSeeeGLceOONUatWrXzPaNWqVfJ6+fLlccIJJ0SjRo2iYsWKERGxfv36WL58eXLN4YcfHnXq1CnhXwIAAAAAAAAAAOWL8lc5tmrVqjjhhBNi3bp1+d5v2bJlXHnllXHsscfu8JwWLVpE586d4+WXX46IiJycnFiyZEm+a2vUqBFDhw4tXnAAAAAAAAAAACAy0h2A9Klbt25cfvnlKXMZGRnRqVOnuO++++KJJ5740eLX9+68887o27dv7LXXXsk3fn0vMzMzmjRpEieffHKMHz8+9t133xL7DQAAAAAAAAAAUF4lcnNzc9MdgvTZunVrnHXWWZFIJKJr167RrVu3aNSoUbpj/UR8mu4AAAAAO0XVPW9Id4Riy150Y7ojAAAAQBnTPN0BKEEH/+8b6Y5ACZh+dsd0R6AM8tnHci4jIyMeeeSRyMjwEjgAAAAAAAAAAChLNH5Q/AIAAAAAAAAAgDJI6wcAAAAAAAAAAKAM8tlHAAAAAAAAAIAyLJFIdwIgXbz5CwAAAAAAAAAAoAxS/gIAAAAAAAAAACiDlL8AAAAAAAAAAADKoArpDgAAAABlWdU9b0h3hGLLXnRjuiMAAAAAAFAE3vwFAAAAAAAAAABQBil/AQAAAAAAAAAAlEHKXwAAAAAAAAAAAGWQ8hcAAAAAAAAAAEAZVCHdAQAAAAAAAAAAKLpEIt0JgHTx5i8AAAAAAAAAAIAySPkLAAAAAAAAAACgDFL+AgAAAAAAAAAAKIOUvwAAAAAAAAAAAMog5S8AAAAAAAAAAIAyqEK6A5Aet912W6xfvz7atm0bnTp1itq1a6c7EgAAAAAAAAAAUAjKX+VQbm5ujB8/PlavXh2PPPJIvPrqq8pfAAAAAAAAAABQxih/lUNz586N1atXR0REu3btomHDhgXat2bNmrj77rsL9aw999wzLrjggsJGBAAAAAAAAAAAfoTyVzn06quvJq979OhR4H3r16+Phx9+uFDPOvjgg5W/AAAAAAAAAKAUJTIS6Y4ApElGugOw87322msREVGxYsXo2rVrgffl5uaWViQAAAAAAAAAAKCQvPmrHOjdu3dMmzYtz/zmzZvjsMMOy3fPuHHjom3btilzOTk5yev69evH8OHD8907ffr0uP/++4uRGAAAAAAAAAAA+DHKXxTYpk2bktc1a9aMY489Nt9133777c6KBAAAAAAAAAAA5ZbyVzmz1157RUZG/l/7XL58eaxfv367e7Ozs5PXlSpVKvFsAAAAAAAAAABAwSl/lTMPP/xw1K9fP997gwcPjkmTJm137zfffJO8rlOnTolnAwAAAAAAAAAACi7/V0BRLmzdurVQ65ctW5a8rlevXknHAQAAAAAAAAAACkH5qxxauHBhXH/99dGzZ8/Iyckp8L5PP/00eb333nuXRjQAAAAAAAAAAKCAlL/KoXfffTfGjRsXn3zySTz77LMF2rNx48Z45plnkuNWrVptd23FihWT16tXry56UAAAAAAAAAAAYLuUv8qhk08+OerUqRMREf/4xz8KtOf222+PFStWRERE9erVo0OHDttdW79+/eT1ggULYvTo0bF27dqI+O5Tk5s2bYrNmzcXNT4AAAAAAAAA8AOJhL9d4Q+KQvmrHKpSpUqcfvrpERHx8ccfx5tvvrnD9ffff388+OCDyfGFF14YlStX3u76/fffP+rWrZsc33zzzdGuXbto0aJF7L///nHggQfGI488UsxfAQAAAAAAAAAA5ZvyVzl19tlnR+L/10bHjh2b75oNGzbEkCFD4rbbbkvOtWjRIn7zm9/s8OyKFSvGoEGDdrimZcuWhUwMAAAAAAAAAAD8kPJXObXHHnskP904ZcqU5GcZf+iiiy6KiRMnJscNGjSIe+65J6pUqfKj5//yl7+Me+65Jw499NB817do0aIY6QEAAAAAAAAAgArpDkD6nHnmmbH33nvHxRdfHLVq1cpzf+jQodG7d+/YuHFj/PznP4/Ro0dH06ZNC3z+cccdF8cdd1xERGzatClyc3MjIiKRSESlSpVK5kcAAAAAAAAAAEA5pfxVBNOnT4/HH3883TF26MYbb4wKFXb8r7dr167RtWvX7d5v3bp13HTTTfHSSy/F73//+6hRo0aR8yh7AQAAAAAAAABAyVL+KoKFCxfGhAkT0h1jhwYMGBCzZs2KiIjVq1cn599444183/IVEfHFF1/kmevevXt07969dEICAAAAAAAAAABFpvy1i1q8eHH069cvz/yQIUMKdc7f/va3uO+++4qdp3HjxvH0008X+xwAAAAAAAAAAOA7yl/s0ObNmyMrK6vY52RnZ5dAGgAAAAAAAABgW4lEuhMA6aL8VQSnn356nH766emOsUNfffVVDBw4MCIixo0bF0uWLImIiL59+0b16tXz3fPcc8/F7Nmzd1pGAAAAAAAAAACg6JS/dlENGzaMSy65JCIi3njjjWT569xzz4369evnu2f+/Pl5yl/9+/eP/v37x4cffhi9evWKiIijjjoqRo8e/aMZ7rzzzrj33nsjImK//fYr8m8BAAAAAAAAAADyykh3ANJn06ZNBV574IEHxs9+9rOIiJg6dWqsW7fuR88eN25ccvx9cQwAAAAAAAAAACgZyl/l0Lvvvht9+vSJQYMGFXhPRkZGHHXUURERsXnz5njxxRd3uH7y5MmxatWqiIioX79+dOrUqch5AQAAAAAAAACAvJS/yoGcnJzkdSKRiMmTJ8fbb78dL774YvJzkAXRvXv35PXYsWO3uy47Ozvuvvvu5Picc86JChV8YRQAAAAAAAAAAEqS8lc5kJWVlbxOJBJx5plnRsR3pbAdlbi21alTp2jcuHFERMyePTumTp2a77p//OMf8fXXX0dERN26deO8884ranQAAAAAAAAAAGA7lL/KgQ0bNiSvE4lEtGrVKlq1ahUREY8//nhkZ2cX6JzMzMzo1atXcnzLLbfE1q1bU9bMmTMn7rvvvuT4kksuierVqxcnPgAAAAAAAAAAkA/lr3Lgh+WvKlWqRETEr3/964iIWLduXTz99NMFPuucc86JOnXqRETErFmzYvz48cl72dnZMXDgwNi8eXNERDRv3jzOOeecYucHAAAAAAAAAADyUv7axeXk5MTatWsjIqJChQpRrVq1iIjo3r17VK5cOSIiHnvssQKfV6tWrejXr19yPGrUqJg3b17k5OTE1VdfHfPnz08+a+TIkVGpUqWS+ikAAAAAAAAAQD4SCX+7wh8UhfLXLm7RokXJN3H97Gc/S87XrFkzOnfuHJmZmbHvvvvGli1bCnzmWWedFc2aNYuI794q1q9fv7j22mvj5ZdfTq659NJLk5+WBAAAAAAAAAAASl6FdAegdH322WfJ68aNG6fc69u3b1x55ZXx85//vFBnVqxYMe64444444wzYuPGjbFgwYJYsGBB8v7xxx8f/fv3L1ZuAAAAAAAAAABgx7z5axf33//+N3m95557ptxr2bJloYtf32vWrFkMGjQoz/wBBxwQt9xySyS8jxAAAAAAAAAAAEqV8tcu7u23305et2zZssTOnTZtWowePTrP/LJly1KeCQAAAAAAAAAAlA7lr13YypUr4/3330+OW7duXewzv/nmmxgxYkScf/758eWXX+b7zH79+sXAgQNjyZIlxX4eAAAAAAAAAACQP+WvXdiLL74YW7dujYiIatWqRdu2bXe4ftOmTcnrbT/bmJ2dHQ8++GCccMIJMXbs2OS5ERFnnHFGDBo0KCpUqJCc+/e//x3dunWL66+/PubNm1cSPwcAAAAAAAAAAPiBCj++hLJo69at8dBDDyXHHTt2jEqVKkVExObNm2Pjxo1Rs2bN5P0lS5bEO++8kxxXr149IiKWL18ejz32WIwdOzZWr16d8oyaNWvG73//++jRo0dERBx66KExcODAWLp0afI548aNi3HjxkWbNm3i1FNPjaOOOir22muv0vnRAAAAAAAAAABQjih/7aKefPLJ+PTTT5PjU089NXn9zTffxJFHHhmVK1eOGjVqRGZmZqxcuTJycnIi4ru3hG3ZsiX69u0bb7zxRmzZsiXP+T169IjBgwdH/fr1k3MHHXRQPP3003HffffFmDFj4ttvv03e+/DDD+PDDz+MiIhGjRrFXXfdFW3atCnx3w0AAAAAAAAAAOWF8tcu6qmnnkpe77HHHtGpU6fkuF69erHbbrvFypUrUwpa3+vdu3c0bNgw3nvvvTzFr/bt28eAAQOiXbt2+T63atWqceWVV0avXr1i9OjRMXHixMjKykpZ06hRo2jdunUxfh0AAAAAAAAA8L2MRLoTAOmSke4AlI477rgjOnToEBERl156aWRm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vfeYOHFiPPbYYxERcfnll9ep/HXVVVfF2rVrIyLinnvuqVH+Gjt2bKxYsSIiIu6++27lLwAAAAAAAAAA2A2Uv3aBV199NS6++OJYtWpVbNiwIb74xS/We6/169fH9773vVi8eHEMGDAgrrjiijjggAMaMS0AAAAAAAAAkMvSqaQTAElR/toFbr755li5cmVERFx99dXRqlWrGDlyZL32uuqqq2Lx4sURETFnzpwoLy+P3//+940VFQAAAAAAAAAAyFHppAM0R7fcckt07949IiKqq6vjyiuvjClTptR5nz/96U8xderUzLhbt24xbty4RssJAAAAAAAAAADkLuWvXaB9+/Zx1113xf777x8REVVVVfGTn/wkZs6cWes95s+fHzfeeGNm3KlTp/jd734XHTp0aPS8AAAAAAAAAABA7lH+2kW6dOkSd955Z+yxxx4REVFRURHf//7344033tjp2lWrVsV3v/vdKC8vj4iI1q1bx/jx46Nr1667NDMAAAAAAAAAAJA7lL92oUMOOST+93//NzM+++yzo0ePHjtcU1ZWFt/97ndj+fLlERGRTqdj3Lhx0bt3712aFQAAAAAAAAAAyC15SQfIVZWVlVFRUbHT5/r37x+jRo2K4uLiuOiii6KiomKH666++up46aWXMuPLLrssTjjhhCgtLd3puwoLCyNi88lhq1atyrr30UcfZa5XrlwZb731VmbcuXPnKC4ujg8//HCb+1ZXV+/03VvuvXTp0u3ez8vLi3322afW+wEAAAAAAAAAANuWqq5Ls4eMX//613HLLbckHSPL3Llzo3PnznHrrbfGbbfdVut1l19+eXzyk5+MUaNG7fTZe+65J/r27Zs1d9JJJ8WKFStq9a4uXbrE008/XetsyXpr548AAAAAzcoho15JOkKDPXJzcdIRGuTQtl2SjtBgha3aJR0BAABqYcdfrSK3nP3kM0lHoBFMOvXEpCOQg5z8BQAAAAAAAACQw1Ip5/5AS6X81Qx94hOfiBNOOCFr7s0338x81vGggw6K/fffP3PvgAMO2K35AAAAAAAAAACAhlP+qqeLL744Lr744gbtMXDgwFiyZElERFx66aVx4YUXNka0GDFiRIwYMSJr7vvf/3489thjERExcuTIuOCCC2qse/PNN7e5X9++fWPt2rW1evfdd98d/fr1q2NiAAAAAAAAAACg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3nn1SA0AAAAAAAAAAGwtnXQAdq/d+dnH3/zmN7FgwYKIiOjYsWPceOONu/R9AAAAAAAAAADQkjj5qxl75513YurUqXH++edHhw4dImL7n3287bbbok2bNnHOOedEmzZt4rTTTos333yzxp6vvPJKfOELX4iIiMMOOywmT568zXe//PLLMX78+Mz4uuuui7322qtR/lwAAAAAAAAAAIDyV7M2ZMiQiIg4+OCDY9iwYRGx+XOMHysoKIiIiIqKirjvvvtizZo1cdttt8WMGTMyZbH6WLVqVXzve9+LioqKiIi44IIL4tRTT633fgAAAAAAAAAAQE0++9gCPP3005nrLctfeXmbu39/+9vfYs2aNRGxuSjWkOJXZWVlXHLJJbFixYqIiPjsZz8bl156ab33AwAAAAAAAAAAts3JX81Yt27dYvHixTF37tyorq6OVCqVOY0rIiI/Pz8iIh5//PHM3Jlnntmgd44dOzaef/75iIjYb7/94uabb876vNpImcIAACAASURBVCQAAAAAAAAA0LjSqeqkIwAJcfJXM9avX7+IiFi9enUsWLAgIrJP/srPz4+ysrKYOXNmRGz+DOTQoUPr/b6777477r///sxev/rVr6Jjx4713g8AAAAAAAAAANg+J381Y8cff3xMmDAhIjZ/+rF3795ZJ38VFBTE7NmzY926dRERcfLJJ8dZZ50Vy5Ytq9X+r732WvTs2XOb98rKyuKcc87Z4frnnntOOQwAAAAAAAAAAOrJyV/N2LHHHhvp9OZf8TPPPBMREeXl5Zn7BQUFMXny5Mz47LPP3r0BAQAAAAAAAACAenPyVzPWrl276NGjRyxcuDDmz58fa9asyZz81apVq1i9enWmFLbvvvvGiSeeGF27do2CgoJav2Pp0qVZhbKuXbtGXl7t/rWq7XMAAAAAAAAAAEBN2jfN3LHHHhsLFy6MqqqqePbZZ6OsrCwiIoqKimLKlClRWVkZEZtP/Uqn0/HHP/6xVvuWl5fHjTfeGH/6058yc9/5znfiu9/9buP/IQAAAAAAAAAAgBp89rGZO+644zLXTz31VObkr9atW8ecOXMiIiKdTtfpk48rVqyIr3zlK5niVzqdjiuvvFLxCwAAAAAAAAAAdiMnfzVzffr0ie7du8fw4cNj+PDhcc4550TE5pO/7rjjjrj33nvj7bffjv32269W+z355JNx5ZVXxsqVKyMiok2bNnHTTTfFySefvMv+DAAAAAAAAAAAQE3KX81cx44dY+rUqZnxx5993GOPPaK4uDguuuiiWu3zr3/9K6677rp45JFHMnPdunWLX//613HIIYc0bmgAAAAAAAAAAGCnlL9amE2bNkXE5vJXbT3++ONx/fXXx4cffpg1v3jx4hgyZEidMzz66KPRo0ePOq8DAAAAAAAAAGpKp5JOACRF+asF2bRpU+bkrz333HOnz7/xxhtxww03xIsvvrirowEAAAAAAAAAAHWk/NWCrFq1KnPdtm3b7T63YsWKuP3222PixIlRVVWVmW/dunXm5LDi4uLo0qVLvXIUFBTUax0AAAAAAAAAAPAfyl8tyJblr/bt29e4v2LFirjjjjviL3/5S+aEsIiIwsLCGDVqVEREjB8/PiIiLrjggvjOd76zixMDAAAAAAAAAADbo/zVgixZsiRzvWbNmqx7d9xxR9x6661Zpa+IiIEDB8YPf/jD6Nq1awwaNCgzP2zYsF0bFgAAAAAAAAAA2KF00gHYfd5///3M9dSpU2Pq1KmZcf/+/SM/Pz8z7tu3b/z5z3+O2267Lbp27Rp///vfY/HixRERceSRR8aBBx6423IDAAAAAAAAAAA1KX+1IG+++WbW+Iorroh33303IiJ69uwZY8eOjaOOOir+8Ic/xD333BNHH3105tlJkyZlrocPH757AgMAAAAAAAAAANvls48tyPz58yMioqCgIMrKymLjxo0xZsyYmDhxYhQVFcXQoUNj6NCh21z70ksvZa5///vfx3333Vfn9//oRz+KAQMG1Cs7AAAAAAAAAACQTfmrhVi+fHksX748IiJOPPHEaN26dUydOjXeeuutuPbaa+OGG27Y4frq6urM9bJly+qVIZVK1WsdAAAAAAAAAABQk/JXC/HMM89krvv27RuDBw+O2bNnx4YNG2LSpEnxmc98Zpd/znHPPffcpfsDAAAAAAAAQEuUTjoAkBjlrxZizpw5meu+fftGly5d4uKLL46f//znERFx9dVXx5FHHhkHHnjgNtfPmDGjXu8dPHhwvPfeexER0bZt23rtAQAAAAAAAAAA1KT82QKsXbs2nnrqqYiI2HvvvaNnz54REfHVr341Dj744IiI2LBhQ3z/+9+PsrKyRn33qlWrMtft2rVr1L0BAAAAAAAAAKAlU/5q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AKCQOPkrD84888xYsmRJ5jStRx99NB544IE466yzEk6W7Y9//GN885vfjHQ6HRERFRUVMWvWrOjSpcsen582bVpMmjQprxnKy8vzuh8AAAAAAAAAALRVyl95Mm3atHj66adj06ZNERHxve99L9773vfGoEGD4vjjj4/KyspG7TdhwoRYvHhxRET06NEjfvOb30RJSe5/uv74xz/GhAkTYvv27RERUVJSErfcckscfvjhe13ToUOH6NChQ87vBAAAAAAAAACan7u+oO3y93+edOrUKb7zne9kxlu3bo1vfOMbUVtb2+i91q1bF7/73e8y43HjxjWp+PWHP/whq/iVSqVi6tSpcdJJJ+W8JwAAAAAAAAAAkCzlrzwaOXJknHbaaZlx586do7q6utH7zJ8/P+rr6yMiol27dnH22WfnnGn+/PnxpS99Kav4NW3atKwrKXPJCAAAAAAAAAAAJMu1j3l29dVXx/Lly+Oiiy6Kc889N1KpVKPWv/7663HPPfdkxqNHj45OnTo1OsfOnTvjuuuui7vuuisz9/aJX+ecc07WsxMnTow333wzrr766jjyyCMb/S4AAAAAAAAAAKDlKX/lWefOnWPRokVRWlqa0/o5c+bEli1bMuPRo0fntM/DDz+cVfwqLi6OqVOn7naK2BNPPBG//e1vIyLi05/+dNx8880xatSonN4JAAAAAAAAAAC0HNc+NoNci19r167NOvUrIqK8vDynvU4//fTo2bNnZo877rhjt+JXXV1dXHfddZlx165d48QTT8zpfQAAAAAAAAAAQMtS/noXmTp1amzbti0ve5WVlcVXvvKV6NatW9x9991x8skn7/bMvHnzYuXKlZnxlClToqKiIi/vBwAAAAAAAAAAmpdrH3O0ffv2vX6XSqWirKysUfs99NBDsWTJkt3m6+vr46qrropPfvKTccIJJzRqz7Fjx8ZJJ50U3bt33+27qqqq+OEPf5gZjxgxIkaMGNGo/QEAAAAAAAAAgOQof+Vg06ZN+7wesXfv3rF48eIG71dVVRXXXHPNHr+78cYb44knnoiFCxfGpZdeGhMmTIhUKtWgfYuLi/dY/Eqn03HVVVdFTU1NRER07tw5pk6dmvl+yJAhDc6eqxNOOCHmzZvX7O8BAAAAAAAAAIDWSvkrYbW1tXHZZZfFW2+9FRERRUVFUV9fn/n+iSeeiIh/nQB26623xjPPPBM33nhjHHzwwTm/c968ebF06dLM+LrrrouuXbvmvB8AAAAAAAAAkJyiVDrpCEBCipIO0NZNmTIl/vrXv2bGl1xySdb33/jGN+Kggw7KjJcsWRKf/vSn4/nnn8/pfc8991zMmDEjMx43blx89KMfzWkvAAAAAAAAAAAgOU7+ykHXrl2jsrIya+6pp56K888/v1H7zJgxIxYuXJgZjx49Os4777y47bbbMnMnnXRSjBo1Kr785S/H3//+94iIWLduXZx33nkxZcqUOOussxr8vjfeeCO+9rWvxY4dOzJz48eP3+25t08ba6zrr78+HnrooYiI6N+/f9x77717fbasrCyndwAAAAAAAAAAAP+i/JWQefPmxZw5czLjIUOGxDXXXBM1NTW7PduvX7+477774qqrropFixZFRMT27dvj29/+djz33HMxZcqUKC0t3ef76urq4vLLL4+qqqqs+VQqtduznTt3zuVXyip0FRUV5bwPAAAAAAAAAACwf659TMDs2bPj+uuvz4x79+4ds2fPjnbt2u11TYcOHeLWW2+Nyy67LIqK/v2n7b777ovzzz8/Nm/evM93Tps2LecTvQAAAAAAAAAAgHcf5a8WlE6n4+abb46bb745M9e1jQFJzgAAIABJREFUa9e48847o2fPnvtdn0ql4stf/nLccccd0aFDh8z8M888E5/61Kfi+eef3+O6W265Je6///6m/wIAAAAAAAAAAMC7hvJXC9m6dWtcdtllMXv27Mxcp06d4kc/+lH079+/UXt95CMfiXvuuSe6d++emduwYUOMGzcuHnnkkaxnb7/99rjjjjsyY1cxAgAAAAAAAABA66D81QLWrl0b5557bixatCgz16tXr7j77rtjyJAhOe15xBFHxAMPPBBHHnlkZm7btm3xta99Le69995Ip9MxY8aMuO222zLfDxw4MKZNm5b7LwIAAAAAAAAAALxrKH81s1/+8pcxZsyY+Nvf/paZO+KII+Lee++Nww47rEl7d+/ePe6+++748Ic/nJnr1q1bfOQjH4nvf//7MWfOnMx8165dY+7cuXHQQQc16Z0AAAAAAAAAAMC7g/JXM7rhhhvi61//erz11luZuZNPPjnuvvvurCsbm6JDhw4xa9as+MxnPhPl5eUxa9as6NGjRwwaNCjzzEEHHRRz586NPn365OWd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c8DIUFFAxQlkhsM55/eHyyePTGfChwOv11rP8rv3dw+fhwNrueTt3ltvnS222CItWtT+7fKLX/yi3vssXrw4rVu3bpKaAQAAAAAAAABgfSb8RZKkb9++6datW95666088cQTee+997L77rs36R4LFizIXnvtlX333TeDBg3KPvvsk7KysibdAwAAAAAAAAAA1heSNyRJCoVCDjjggCRJVVVVxo8f3+R7vPnmm1m4cGHGjRuXU045JdXV1U2+BwAAAAAAAAAArC+Evyg68MADi8933XVXk6//xhtvFJ+33HLL5a6RBAAAAAAAAAAA6k76Zj03Z86cPProo5k5c2amT5+esrKyVFdXZ/LkyXn99dfTo0ePJtvr0+GvbbbZpsnWBQAAAAAAAID1WXmhptQlACUi/LWOmj9/fiZPnpz33nsv7777bvGf7777bmbNmlUcN3HixEycOHGFazzwwAM58cQTm6ymT4e/tt122yZbFwAAAAAAAAAA1kfCX+uoKVOm5JhjjmnUGvUJfy1btmy1Y15//fXi83bbbdfgugAAAAAAAAAAAOGvdVaXLl1WO6aioiLdunVL9+7ds+WWW2aLLbbIFltskR//+MeZO3duXnzxxcyaNStdu3Zd4fzWrVsXn6dOnZqtttpqpXvNnDkzzz//fLHdu3fvun8ZAAAAAAAAAABgOcJf66iNN964+LzRRhulZ8+e6dGjR3r27JmePXtmyy23TLdu3VJeXr7c3C9/+csZP358ampqMmHChBx11FEr3GPzzTfPO++8kyS54IIL0qZNm2y//fapqKhIklRXV2fOnDl55plncumll6aqqipJ0r1792yxxRZN/ZUBAAAAAAAAAGC9Ivy1jmrbtm1uuumm9OjRIx06dKjX3H333Tfjx49PRUVFZs+evcpxzzzzTJLkzTffzPHHH1+n9U866aR61QMAAAAAAAAAACxP+GsdttNOOzVo3t57750zzzwzX/3qV9OxY8eVjvvWt76VcePG5eWXX67z2scee2wOP/zwBtUFAAAAAAAAAAD8i/AXy+nQocNKr3r8tA022CDXXnttxowZkwceeCAzZszIkiVLao1p1apVunbtmp133jlHHnlk+vXrt6bKBgAAAAAAAACA9YrwF43Stm3b/OAHP8gPfvCDUpcCAAAAAAAAAADrFeEvAAAAAAAAAIBmrKxQ6gqAUikrdQEAAAAAAAAAAADUn/AXAAAAAAAAAABAMyT8BQAAAAAAAAAA0AwJfwEAAAAAAAAAADRDwl8AAAAAAAAAAADNkPAXAAAAAAAAAABAM9Si1AUAAAAApbVhz4tKXUKjffTqyFKXADSRmtSUuoRGK6RQ6hJIUlWztNQlNNqiN88udQkAAACs5Zz8BQAAAAAAAAAA0Aw5+QsAAAAAAAAAoBkrcwAxrLec/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAAAAAEDDlRVKXQFQKk7+AgAAAAAAAAAAaIac/LWeGjVqVObPn5+dd945AwYMyIYbbljqkgAAAAAAAAAAgHoQ/loP1dTU5Oabb87s2bNzww035OGHHxb+AgAAAAAAAACAZkb4az00ZcqUzJ49O0my++67Z9NNN63TvDlz5uQ3v/lNvfbaYostctxxx9W3RAAAAAAAAAAAYDWEv9ZDDz/8cPF50KBBdZ43f/78XHfddfXaa9dddxX+AgAAAAAAAACANaCs1AXw+XvkkUeSJBUVFTnggAPqPK+mpmZNlQQAAAAAAAAAANSTk7/WA0cffXSefvrp5forKyuzxx57rHDO2LFjs/POO9fqq6qqKj536dIl55xzzgrnPvvssxkzZkwjKgYAAAAAAAAAAFZH+Is6W7p0afG5ffv2+cpXvrLCcUuWLPm8SgIAAAAAAAAAgPWW8Nd6Zsstt0xZ2Ypv+3zvvfcyf/78lc5dtGhR8blly5ZNXhsAAAAAAAAAUH/lhVJXAJSK8Nd65rrrrkuXLl1W+O4nP/lJbr/99pXO/eijj4rPHTt2bPLaAAAAAAAAAACAulvxEVCsF6qrq+s1ftasWcXnjTfeuKnLAQAAAAAAAAAA6kH4az00bdq0nHnmmRkyZEiqqqrqPO+VV14pPvfo0WNNlAYAAAAAAAAAANSR8Nd66C9/+UvGjh2bf/zjH7nnnnvqNGfx4sX505/+VGz36dNnpWMrKiqKz7Nnz254oQAAAAAAAAAAwEoJf62HDjnkkHTs2DFJcsUVV9Rpzi9/+cu8//77SZK2bdumf//+Kx3bpUuX4vPrr7+eK6+8MnPnzk3y8VWTS5cuTWVlZUPLBwAAAAAAAAAAIvy1XmrdunW+9rWvJUn+/ve/57HHHlvl+DFjxuTqq68utr/zne+kVatWKx3/hS98IZ07dy62//d//ze77757evXqlS984QvZcccdc8MNNzTyWwAAAAAAAAAAwPpN+Gs99a1vfSuFQiFJcs0116xwzIIFC/LTn/40o0aNKvb16tUrJ5xwwirXrqioyMiRI1c5pnfv3vWsGAAAAAAAAAAA+DThr/VU9+7di1c3PvHEE8VrGT/tP//zP3PbbbcV2127ds1vf/vbtG7derXrH3bYYfntb3+bfv36rXB8r169GlE9AAAAAAAAAADQotQFUDrf+MY30qNHj3z3u99Nhw4dlnt/+umn5+ijj87ixYuz1VZb5corr8zmm29e5/X322+/7LfffkmSpUuXpqamJklSKBTSsmXLpvkSAAAAAAAAALCeKyvUlLoEoESEvxrg2Wefza233lrqMlbp7LPPTosWq/7xHnDAATnggANW+r5v3775xS9+kQcffDA/+9nP0q5duwbXI+wFAAAAAAAAAABNS/irAaZNm5Zbbrml1GWs0ve///28+OKLSZLZs2cX+ydNmrTCU76S5K233lqu76CDDspBBx20ZooEAAAAAAAAAAAaTPhrHTV9+vQMHz58uf6f/vSn9Vpn9OjR+f3vf9/oerp165bx48c3eh0AAAAAAAAAAOBjwl+sUmVlZRYuXNjodRYtWtQE1QAAAAAAAAAAAJ8Q/mqAr33ta/na175W6jJW6Z133smIESOSJGPHjs14s+jEAAAgAElEQVSMGTOSJMOGDUvbtm1XOOfee+/N5MmTP7caAQAAAAAAAACAhhP+WkdtuummOfHEE5MkkyZNKoa/vv3tb6dLly4rnPPaa68tF/465ZRTcsopp+T555/PEUcckSTZa6+9cuWVV662hl/96lf53e9+lyTZZpttGvxdAAAAAAAAAACA5ZWVugBKZ+nSpXUeu+OOO6ZTp05Jkqeeeirz5s1b7dpjx44ttj8JjgEAAAAAAAAAAE1D+Gs99Je//CXHH398Ro4cWec5ZWVl2WuvvZIklZWVmTBhwirH33nnnfnwww+TJF26dMmAAQMaXC8AAAAAAAAAALA84a/1QFVVVfG5UCjkzjvvzOOPP54JEyYUr4Osi4MOOqj4fM0116x03KJFi/Kb3/ym2D7qqKPSooUb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JK1atcqGG26Yrl27Ztttt80mm2xS4krXblVVVfnnP/+ZadOmZdasWVm0aFGSpHXr1mnfvn023XTT9OjRI926dStxpQAAAAAAAAAAQF2steGvF154ITfddFPuvffeYuBrVbp3755hw4bl61//+grfH3300Xn66adXuUZFRUXat2+fjh07pnfv3tlpp51y8MEHN1mw7NVXX83BBx9cq+9b3/pWzjrrrCZZ/7OqqqrywAMPZNy4cfnzn/+chQsXrnbORhttlC9/+cs58cQT07Nnz+XeT5w4McOGDWtwTW3atMlzzz3X4PkAAAAAAAAAAMDH1rprHz/44IOMGDEihx9+eG6++eY6Bb+SZPr06Xn00UcbtXdlZWU+/PDDvPbaa/nTn/6U888/P1/5ylcyYsSIvP/++41aO0luueWW5frGjRuXJUuWNHrtzxo/fnz233//nHrqqXnggQfqFPxKPv71v+OOO/Lss882eU0AAAAAAAAAAEDTWatO/nr99dfzn//5n5k5c+Zy71q3bp1NN900rVu3zsKFCzNnzpzMnTt3jde0bNmyjBs3Lo899lguu+yy9OvXr0HrVFZW5s4771yuf+7cubn//vtzyCGHNLbUJMns2bPzk5/8JA8//PAK3xcKhWy44YbZaKONUlZWlnnz5uW9995LVVVVk+wPAAAAAAAAAAB8Ptaa8Nf8+fOXC35VVFTk8MMPz9e+9rXssMMOKSurfVDZO++8k7/97W8ZP358Jk6cWK/9hg0blp133rnYrq6uzvz58zNr1qy89NJLeeSRR7J48eLi+zlz5uSkk07K9ddfn169etX7+02cODEffPBBsV0oFFJTU5Pk4xPBmiL89cYbb+Q73/lOZsyYUat/gw02yKGHHpoBAwakf//+2WCDDWq9X7JkSV555ZX8+c9/zr333pu///3vdd5zm222yciRI+s8vry8vM5jAQAAAAAAAACAlVtrwl+/+tWvagW/OnXqlMsvvzw77rjjSudsuummOfDAA3PggQdm+vTpefLJJ+u834477pivfOUrK30/d+7cjBo1KjfeeGOxb/78+Tn77LNz/fXX13mfT3z6ysc2bdpkp512yhNPPJEkeeqppzJ9+vR079693ut+YubMmfn2t7+dd999t1b/4Ycfnu9///vZZJNNVjq3VatW2XHHHbPjjjtm2LBheeqpp1JRUVGnfTt06LDKX0cAAAAAAAAAAGDNKFv9kDVv6dKly12JeOaZZ64y+PVZ3bt3z+GHH95kNXXo0CFnn312vvOd79Tq/+tf/5qnnnqqXmvNmjUrjz32WLHdt2/f7LLLLsV2TU1Nbr311gbXumjRopx44om1gl8VFRW54IILcu65564y+LUie+yxR3bdddcG1wMAAAAAAAAAAKx5a0X46+WXX87cuXOL7VatWmX//fcvYUX/cuqpp6ZLly61+h5++OF6rXHbbbelqqqq2N5///2z33771Rpz++23p7q6ukE1XnDBBZk6dWqxXVZWlssuuyxDhgxp0HoAAAAAAAAAQPNRVvBZFz7QEGtF+Oudd96p1e7QoUNatFg7bqRs3bp19t1331p9L7/8cp3nf/ZUr4qKihx88MHp06dPtt1222L/O++8k0mTJtW7vilTpmTs2LG1+k4++eTss88+9V4LAAAAAAAAAABoPtaK8FdNTU2t9uzZs7NgwYISVbO8rbfeulb7ww8/rPPcp556KtOnTy+299lnn3Tq1ClJMnjw4FpjG3L1429/+9taJ4Ztt912+d73vlfvdQAAAAAAAAAAgOZlrQh/bb755rXay5Yty80331yiapa3wQYb1Gp/Nqy2Krfcckut9qcDX4ceemjKyv71I3jooYfqFSx77733MmHChFp93/3ud2utCQAAAAAAAAAArJvWipTQ9ttvn4022qhW36hRo/LQQw+VqKLaZs+eXavdpUuXOs2bO3du7r///mK7Y8eOGTBgQLHdtWvX/Pu//3uxXVlZmTvvvLPOdU2YMCFVVVW16jr44IPrPB8AAAAAAAAAAGi+1orwV3l5eb797W/X6lu6dGn+67/+K2effXbmzZtXoso+9txzz9Vqb7fddnWad/fdd2fJkiXF9kEHHZSWLVvWGjNkyJBa7c+eFLYqTzzxRK32F7/4xbRo0aLO8wEAAAAAAAAAgOZrrQh/JckJJ5yQ7bffvlZfTU1Nrr/++vzHf/xHrr322ixduvRzr2v69On585//XKvvP/7jP+o099Zbb63V/mzQ65O12rVrV2xPnTo1f/vb3+q0/ksvvVSrvfvuu9dpHgAAAAAAAAAA0PytNcdEtWzZMldccUW+853vZMqUKbXezZ49O+ecc06uuOKKDBs2LIcddlgqKirWeE1LlizJj3/841RWVhb7+vbtm9122221c//+979n8uTJxfZWW22VnXfeeblxrVu3zgEHHFArKHbLLbescOynVVZW5u23367V17Nnz9XW1dTmzp2biRMn1nn8gAEDUigU1mBFAAAAAAAAAACwflhrwl9JstFGG2Xs2LE599xzc/PNNy/3/u23385ZZ52VMWPGZPjw4Rk6dGjKytbM4WUvv/xyzjjjjFoBroqKipx11ll1Ci999vrGQw89dKVjhw4dWiv89ac//Smnn3562rRps9I5H374Yaqrq2v1dezYcbV1NbWpU6dm2LBhdR4/efJkV1MCAAAAAAAAAEATWOtSOK1bt865556bQYMG5ec//3leffXV5cbMnDkzp59+em644YacffbZ2WGHHeq9z4svvpjy8vJiu7KyMvPmzcurr76av/zlL3nhhRdqjS8vL89FF12UPn36rHbtJUuW5O677y62C4VCBg8evNLx/fr1y+abb54ZM2YkSRYsWJB77rknhx122ErnLFiwYLm+DTfccLW1AQAAAAAAAADrljVzbA7QHKx14a9PfOlLX8rdd9+d22+/PZdddlneeuut5ca8+OKLOfLIIzNy5Mgcd9xx9Vp/9OjRdR7buXPnnHfeefnKV75Sp/EPPPBAPvroo2J7t912y+abb77S8Z+Ewy677LJi3y233LLK8Neng2ufWLZsWZ3qAwAAAAAAAAAAmr+1NvyVfBxw+vrXv55DDz00t912W0aPHp2333671pjKysqcf/75mTFjRs4444wm3b9Vq1YZPHhwTjvttGy00UZ1nvfZKx+HDBmy2jlDhgypFf569tln89prr2Xrrbde4fgVXfE4Z86c/Nu//Vud62wKu+66a2644YbPdU8AAAAAAAAAAKCZnPzXsmXLfOMb38j999+fn/70pysMPl1zzTW58sorG7xHeXl5OnXqlK233jqDBg3Kz372szz88MM555xz6hX8mj59ep588sliu1WrVjnwwANXO2+LLbbIbrvtVqvvsyGyT+vQocNyp3998MEHda4TAAAAAAAAAABo3tbqk78+q2XLljnuuOMyePDgnHXWWbnvvvtqvb/44otz4IEH1un0q8suuywDBw5s8hpvu+221NTUFNtLlixJv379GrTWnXfemR/+8Idp0WL5H1OhUEjXrl1rXYf5/PPPZ++9927QXgAAAAAAAAAAQPPSLE7++qxOnTrlN7/5TY455pha/ZWVlbn22mtLVFVSXV2d22+/vcnWe//99/Pwww+v9P1nTwp7+umnm2xvAAAAAAAAAABg7dYsw1+f+OlPf5revXvX6ps0aVKJqkkee+yxvP3220265qquftxjjz1qtZ999tnMnDmzSfcHAAAAAAAAAADWTs3q2sfPKisryxFHHJGf//znxb5Shp8+G9Q6/PDDs99++9VrjTfffDPnnXdesf3oo49m1qxZ6dq163Jj995771RUVKSysjJJsmzZsvzxj3/M//t//68B1QMAAAAAAAAAAM1Jsw5/JUn37t1rtQuFQknq+PDDD/PQQw/V6vvud7+bLbfcsl7r1NTU5Oqrry6G2KqqqnLHHXfkpJNOWm5s165dc8ghh+S2224r9o0dOzaHHXbYcieiAQAAAAAAAAAA65Zmfe1jksyZM6dWu0uXLiWp46677iqewJUkffr0qXfwK/k4vHbIIYfU6rv11ltXOv673/1uysr+9WNcsmRJTj311MyfP7/eewMAAAAAAAAAzU+h4LMufKAh1orw1wsvvJA333yzQXMffPDBWu3ddtutKUqqt89e+fjZAFd9DBkypFb7jTfeyNNPP73CsVtvvXVOPPHEWn3Tpk3LMccck/fee6/BNQAAAAAAAAAAAGu3tSL8NXXq1AwePDijR49e7iSvVRk3blzuvffeWn2NCV011PPPP59//vOfxXZZWVkOOuigBq/Xo0eP7LLLLrX6Phsu+7RTTz01/fv3r9U3efLkHHHEEZkwYUK99l60aFEuv/zy3H///fWaBwAAAAAAAAAAfL5alLqATyxcuDAXX3xxfve73+XAAw/Ml7/85eyxxx7LXeNYWVmZ559/PjfeeGPGjRtX690BBxywXAjq8/DZYFa/fv3StWvXRq05ePDgPPfcc8X2fffdl//5n/9J+/btlxtbVlaWX/7ylzn22GPzyiuvFPvfeuutDB8+PLvssksGDx6cffbZJ926dVtu/ttvv53JkyfnwQcfzIQJEzJ37tyce+65dapz7ty5mThxYr2+26abbpovfOEL9ZoDAAAAAAAAAADUttaEvz6xePHi3HHHHbnjjjuSJO3bt89GG22U1q1bZ8GCBXnnnXdSWVm53Lxddtkl55xzzuddbhYuXJjx48fX6hs0aFCj1z344INz3nnnZenSpUk+/nUZN25cvvnNb65wfOfOnXPttddm5MiRefTRR2u9e+6554pBsjZt2mTjjTdOmzZtMn/+/MyZMyfz589vcJ1Tp07NsGHD6jXnkEMOyUUXXdTgPQEAAAAAAAAAgLXk2sdWrVqt9N28efMybdq0TJkyJdOnT18u+FVeXp6jjjoqV111VTbccMM1Xepy7r333ixYsKDYrqioyAEHHNDodTfccMPsu+++tfpWdfXjJ3PGjBmTc845J507d17hmIULF+bNN9/MlClTMmPGjJUGv1q3bt2wwgEAAAAAAAAAgM/FWnHy11e/+tV06dIl48ePz5NPPplp06atds4mm2ySgw46KEcccUS22WabNV/kSnw2kLXnnnumY8eOTbL20KFDc++99xbbL730UqZMmZLevXuvdE6hUMgRRxyRQw89NHfddVfuvvvu/PWvf01VVdUq9yoUCtl2223z7//+7xk6dOgq9wAAAAAAAAAAAEqvUFNTU1PqIj5r/vz5ee211zJt2rTMnj07CxYsSKtWrdKuXbtssskm6d27dzbbbLNSl9lsLFy4MC+//HKmT5+eDz/8MIsXL05FRUU22GCDdOzYMd27d0+PHj1KcnLa2u2VUhcAAADwuajJqv+HoeagkPJSlwDAWqYma91/+q63Dbe+oNQlNNrc135S6hIAgJXartQF0ISefm98qUugCXyxy1dLXQLN0Fpx8tdntWvXLn379k3fvn1LXco6oU2bNunXr1/69etX6lIAAAAAAAAAAIAmslaGvwAAAAAAAAAAqJtCqQsASqas1AUAAAAAAAAAAABQf8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMtSh1AQAAAAAAAAAANFyhUOoKgFJx8hcAAAAAAAAAAEAz5OQvAAAAWM8VUl7qEgCgyRXS/I8+mPvaT0pdAuuIpdXzSl1Co/XZ6y+lLqHRnnv0C6UuodHatNik1CU0Wk1NTalLaLSygr/iBQD+xclfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAAAAAEDDOfkH1l/+/AMAAAAAAAAAADRDwl8AAAAAAAAAAADNkPAXAAAAAAAAAABAMyT8BQAAAAAAAAAA0Ay1KHUB64PFixendevWJZu/InPmzEl5eXnat2/foLkffPBBkqRTp07p3Llzk9YGAAAAAAAAAACsnpO/1rD7778/AwcOzHXXXdeg+U899VT22WefXH755Vm8eHGT1XXDDTekf//+OeGEE3LPPffUa+5NN92Ugw8+OAcffHCuuuqqJqsJAAAAAAAAAACoO+GvNejmm2/OKaeckvfeey/nnntuJkyYUK/5lZWV+fnPf545c+bkoosuyv777585c+Y0SW2PPPJIKisrM2nSpDz77LNNsiYAAAAAAAAAAPD5Ef5agwYPHpwddtghSVJdXZ0RI0bkhRdeqPP8P/7xj5k6dWqxPXTo0HTs2LHRdX344Yd5/vnni+399tuv0WsCAAAAAAAAAACfL+GvNahly5b59a9/nQ4dOiRJFi9enNNOO61Op3fNnDkzv/3tb4vtfv365fvf/36T1PXoo4+muro6SbLhhhumX79+TbIuAAAAAAAAAPD5KxRqfNaBDzSE8Nca1r1795x//vnF9syZM/OjH/0oNTWr/kN7xhlnZOHChUmSTp065Ze//GXKy8ubpKZHHnmk+LzPPvukRYsWTbIuAAAAAAAAAADw+RH++hwMHDgwRx55ZLHduXPnLF68eKXjb7755jz++ONJkkKhkAsuuCBdu3ZtkloWL16cSZMmFdv77rtvk6wLAAAAAAAAAAB8vhz59Dk5/fTT8/bbb+fYY4/NXnvttdJxs2bNygUXXFBsH3/88dlnn32arI777rsv8+bNS5K0adMme++9d5OtDQAAAAAAAAAAfH6Ev5rIW2+9la9+9aurHffMM8+s8v2yZcuydOnSYvuGG27IjTfeuNLxu+22W6644oo613nrrbcWnwcOHJi2bdvWeS4AAAAAAAAAALD2EP5qItXV1Vm4cGGTr7to0aJVvl+yZEmd15o+fXqefvrpYnvIkCENrgsAAAAAAAAAACgt4a/1yG233ZaampokSdeuXdO/f/8kSa9evRq85uWXX57LL7+8XnO+973v5ZRTTmnwngAAAAAAAAAAgPDXGvPggw9m8803XyNrX3LJJbn00kvrNWfZsmW5/fbbi+1DDjkkZWVlTV0aAAAAAAAAAADwORH+Wk/cddddefvtt4vtT079SpI2bdqsdn5lZWUqKyuTJIVCoXiC2KdtsMEGKRQKq12roqKiLiUDAAAAAAAAAACrIPy1Hqiurs7vf//7Wn2fPvXrueeeW+0aP/rRj3LnnXcmSfbcc8889thjSZIePXrk9ddfT5Kcd955Ofjgg5uqbAAAAAAAAACgDlZ/TAuwrnLv33rgnnvuybRp0xo8f/HixZkwYUKSpEOHDtltt92K7/r37188yeuee+5pVJ0AAAAAAAAAAEDdCX+t42pqajJ69OhGrfHQQw9lwYIFSZK99947LVr868C4tm3bZtddd02SPPLII5k/f36j9gIAAAAAAAAAAOpG+Gsdd9999+WVV15p1Bo33XRT8Xm//fZb7v2AAQOSJEuWLMmf/vSnRu0FAAAAAAAAAADUjfDXOmzRokW54IILGrXGa6+9lieeeCJJ0r59+xWGvw466KAUCh/fIHzDDTc0aj8AAAAAAAAAAKBuhL/WYaNHj85bb72VJGnRokU222yzeq9x/fXXF58POuigtGrVarkxm222WXbbbbckycsvv5y//e1vDawYAAAAAAAAAACoK+GvddQbb7yRq666qtg++uij071793qt8cEHH+SWW24ptocOHbrSsYccckjxecyYMfXaBwAAAAAAAAAAqL8WpS5gXTVo0KDiVYhNrbKycrVjzjnnnCxdujRJ0qVLl3zve9/LySefXK99rrrqqixatChJsuOOO2bXXXdd6dhBgwblggsuyMKFC/PQQw9lypQp6d27d732AwAAAAAAAAAA6k74aw35JDRVKjNmzCg+//jHP067du3qNf/999+vdeXjcccdt8rx7dq1y9ChQ3PdddelpqYmv/rVrzJ69Oh67QkAAAAAAAAAANSdax/XUUcccUSSZN999611JWNdXXzxxVm4cGGSpFu3bjnwwANXO+eoo44qnnY2ceLETJo0qd77Av3z+GoAACAASURBVAAAAAAAAAD1Uyj4rAsfaAgnf60hDz74YDbffPPVjquqqkp5eXm91r7kkkty6aWXrnLMkCFD8oc//CHnnHNOvdZOkr///e+57bbbiu3hw4enRYvV/1bp2bNn9t9//9x3331JknPPPTd33313WrZsWe8aAAAAAAAAAACAVXPyVxNp2bJldtppp+KnLoGnSZMmZf/9988999xTr7023XTT4j49e/Zc4ZjOnTvn+uuvz8Ybb1yvtauqqnLGGWekuro6SbL11ltn6NChdZ5/6qmnpqzs499W06ZNy6hRo+q1PwAAAAAAAAAAUDdO/moim2yySW666aY6j7/++utz9tlnJ0l+9KMfpXPnztljjz3qNPfwww/P4Ycfvtpx3bt3r3M9n7jyyivz0ksvFdsjRoyo18lkPXv2zODBg3P77bcnSa6++ursvffe2XPPPetdCwAAAAAAAAAAsHJO/moCL730Uh5//PEsW7ZsuXdPPfVU8bNw4cJi/6GHHpoePXokSZYuXZrhw4dnypQpdd7z6quvzl133dX44j/lpZdeyiWXXFJs77fffhk4cGC91xk5cmQ6dOiQJKmpqckPf/jDvPHGG01WJwAAAAAAAAAAIPzVJC677LIcf/zx2XPPPfPHP/6x1rtjjjmm+JkxY0axv127drnsssvSrl27JMm8efPyX//1X5k9e/Yq91q0aFF++MMf5rzzzsvpp5+ep556qkm+w9y5c3Pqqadm6dKlSZI2bdrkzDPPbNBaG2+8cUaMGFFsz5kzJyeeeOJqvxsAAAAAAAAAAFB3wl+N9OGHH2bSpElJPg45dezYsc5ze/bsmQsvvDCFQiFJMnPmzPz3f/93qqurVzqnvLw806ZNS5JUVlbmlFNOyauvvtrwL5CkqqoqI0aMqBVOO/PMM7Pppps2eM0jjzwye+21V7E9bdq0HHvssfnggw8aVSsAAAAAAAAAAPAx4a9GGj9+fCorK5N8fFrW/vvvX6/5++67b4455phie9KkSbnssstWOr5ly5a55JJLiiGzjz76KCeeeGKjQlU/+9nP8uijjxbbgwcPztChQxu8XpIUCoVceOGFtQJk//jHP3LUUUdl+vTpjVobAAAAAAAAAAAQ/mq0O+64o/g8cODAtGnTpt5rjBw5Mr169Sq2J0+enKqqqmJ75syZ+d73vpdJkyaluro6//Zv/5ZRo0alrOzjH9+MGTMybNiwLFmypN57X3zxxbnpppuK7V69euWss85Kklx55ZXp1avXcp9Ro0YVx19++eUrHHPxxRenc+fOueSSS2r9mrz++us57LDD8vDDD9e7VgAAAAAAAAAA4F+Evxrh1VdfzUsvvVRsDxkypEHrtGzZMr/85S/TsWPHnHXWWRk9enTKy8uL72fMmJEHHnggJ5xwQgYOHJiamprstddeOeWUU4pjXnjhhZx55pn12veiiy7K6NGji+2uXbtmzJgxadu2bYO+x4r07ds3l156aSoqKop9H330USZPntxkewAAAAAAAADA+qzgs058oCGEvxrhmmuuKT537do1/fv3b/Ba22yzTSZOnJhvfetby7178803i89t27ZNofDxH/mTTz45AwYMKL6744478oc//KFO+y1dujSPP/54sd2hQ4eMGTOm1jWNFRUVadOmzXKfTwe5VjamZcuWxTF77rlnLr300mywwQZJkgMPPDDDhw+vU50AAAAAAAAAAMCKtSh1Ac3V7Nmza135+M1vfrN4DWNDrezKyKlTpxafd9hhh+JzoVDI+eefnyFDhmTWrFlJkgsvvDDbbrtt9tprr1Xu1bJly4wZMyZHHHFEFixYkD/84Q/p3bt3rTHHHHNMjjnmmOXmjhkzpnj143HHHZeRI0eu9rsNGDAg1157bUaNGpXzzz9/teMBAAAAAAAAAIBVc/JXA914441ZtGhRkqRVq1Y58sgjVzjuk1O6ko+vO2yIv/3tb8XnnXfeuda7zp0758ILLywGz6qqqnLRRRelpqZmtetuvPHGGT16dK655ppsv/32DaqtPvr06ZM//OEPKw25AQAAAAAAAAAAdSf81QBLly7NddddV2wPHjw4nTt3XuHYDh06FJ+ff/75eu/12muv1Zr3pS99abkxe+yxR04++eTi81VXXVUrdLYq2223Xbbbbrt61wUAAAAAAAAAAJSWax8b4Lnnnsvs2bOL7WOPPXalY7fddts888wzSZLLL78822+/ffr371+ncNarr76aH/zgB8VTvHr16pWtttpqhWOHDx+ejTbaKEceeWRatPBjBQAAAAAAAACAdZ2UUAPssccemTBhQq655pq89dZb2WabbVY69pBDDimGv+bMmZPjjz8+bdq0SadOnVa5x8KFC2sFzJLk+9///krHl5eX56ijjqrHtwAAAAAAAAAAAJoz4a8G2myzzfKjH/1oteMOP/zwPPTQQ3nkkUeKfQsXLszChQvrtd/JJ5+cgQMH1rtOAAAAAAAAAABg3ST8tYaVl5fnd7/7XW688cbcfffdmTp1aubPn1+8ynFlKioq0rVr1+ywww755je/mf79+39OFQMAAAAAAAAAAM2B8Nfn4JMrGUt9LWNFRUVatmyZJCkrKytpLQAAAAAAAABA0ygrlLoCoFQKNas7ggrWW6+UugAAAAAAAGi0pdXzSl1Co/XZ6y+lLqHRnnv0C6UuodHatNik1CU02rrwV6NlBed70FS2K3UBNKGXZo8rdQk0gT6dBpW6BJohxz8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAADAmtWyrH2pS2i0+XNnlrqERvpCCuvAX80VUl7qEhqlJstSVmj+PwcAgE/4NxsAAAAAAIB1mODX2kHwa+0g+AWsqwqlLgAoGdc+AgAAAAAAAAAANEPCXwAAAAAAAAAAAM2Q8BcAAAAAAAAAAEAzJPwFAAAAAAAAAADQDAl/AQAAAAAAAAAANEMtSl0AAAAAAAAAAACwbnj33XfzwgsvZMaMGVm4cGFat26dzTbbLH369En37t1LXV6SpKqqKm+88Ub++c9/5v3338+8efPSsmXLbLjhhtlss83St2/ftGvXrtRl1onwFwAAAAAAAAAA0CgPPfRQLr/88jz33HOpqalZ4ZjevXvn+OOPz+DBg1MoFD7X+qZOnZqJEyfmySefzF//+tcsWrRopWPLysrSp8//Z+/O470e8//xP8+WlpP2jLKWUUQUhZEljS37FhlDMSWTStqtoSkZQvXNUmTPEmJIiG5Mw6AhRkOWLJW0mMJp75zz+8Nv3h/vOtU573NO707d77fbud3e1/V+XdfrcWZOf3ncrmu/OP/88+Okk06KSpUqbcGkJZNRuLH/tWG791m6AwAAAAAAABHRYL+H0x2h1L6YeUK6I5Ra1ex66Y4AlKm90x2AMvSfZS+kOwJlYN+aJ6c7QkqWL18egwYNipdffrnYa1q3bh2333571K1btxyT/eL555+PsWPHxmefpdYD2W233eKWW26JFi1alHGyspGZ7gAAAAAAAAAAAEDFs3z58ujcuXOJil8REe+++26cf/75sXjx4nJK9n+mTZuWcvErIuLbb7+NP/zhD/H888+XYaqy49rHNHv88cfjyy+/jIiIU045JZo3b57mRP9nzZo1KR1bt27dusjO9qcFAAAAAAAAALAtu+qqq+LDDz9MmmvQoEF06tQpDjvssPjNb34Tixcvjvfffz/Gjx+f6MhERHzzzTfRo0ePeOSRR7Z4z+SAAw6IQw89NFq1ahUNGzaMOnXqRH5+fixYsCDefvvtePTRR+O7775LPJ+fnx+DBg2K2rVrR5s2bbZo1s3R0EmzV199NaZPnx4REfvss0+5lb8effTROOigg6Jp06bFen7u3LnRq1evOProo6Nnz54lelfPnj2jRo0a0a9fv6hdu3YqcQEAAAAAAAAA2Iq9/vrrMWXKlKS51q1bx5gxY6J69eqJuR133DEaN24cp512WvTr1y9pzQcffBCPP/54XHDBBeWet2bNmnHWWWfFOeecE3vuuWeRz9SuXTuaNWsWF154YQwZMiSeeOKJxHfr1q2L66+/PiZPnhw77LBDuectLtc+buPy8/PjhhtuiBtvvDE6deoUn3/++WbXzJ49O84444yYNWtW/L//9//iySefLPb7pk+fHq+99lo888wzceKJJ8aLL75YmvgAAAAAAAAAAGxlCgsL484770yaa9CgQdx1111Jxa9fq1SpUowYMSKaNWuWNH/33XfHypUryy1r1apVo1u3bjF16tTo37//Rotfv1apUqW48cYb4/TTT0+anzdvXjz99NPlFTUlyl/buFmzZsVTTz0VERFLly6NTp06xZw5cza5Zq+99op99903Mb7hhhvi73//+2bftXbt2hg6dGhi/NNPP0WdOnVSTA4AAAAAAAAAwNbotddei08//TRp7uqrr47c3NxNrsvKyoohQ4YkzS1evLhEBxOV1I033hi9e/feaCltU6666qrYcccdk+Zee+21sopWJpS/tnHNmzeP4cOHR0ZGRkRELFmyJC666KKYO3fuRtdkZWXFHXfcETvvvHNE/HJsXa9evTZ7atj6d7N26dIlDj300DL4LQAAAAAAAAAA2Fq89NJLSeOGDRtGu3btirV23333jYMOOihpbv3rI8tSVlZWymtr1KgRxxxzTNLc+++/X9pIZUr5aztw0kknRZ8+fRLjRYsWxcUXXxxLlizZ6JratWvHqFGjolKlShERsXz58vjzn/8cP/74Y5HPz5s3L8aMGZMYt2jRInr27FlGvwEAAAAAAAAAAFuDtWvXxhtvvJE0d9pppyUOJiqOM844I2k8c+bM+OGHH8okX1lr2rRp0njFihWRl5eXpjQbUv7aTnTp0iU6dOiQGH/77bfxpz/9aZN/jPvvv38MGDAgac21115b5LODBw9O3L9as2bNuO222yI7O7uM0gMAAAAAAAAAsDWYOXNm/Pzzz0lzrVu3LtEehxxySNK4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URaUvyjSkiVLtug/KgAAAAAAAAAAtn4HHnhgVK9ePelwonfffbdE5a933303aZyZmRlHHHFEmWXclBkzZsTll18ea9asScxlZ2fH7bffHm3atNkiGcqS8leKnnvuuVKtf+WVV6Jv376xevXqpPkTTjghRowYEVlZWaXaHwAAAAAAAAAAylpOTk4cddRR8cILLyTmnnvuuejRo0dkZGQUa49JkyYljQ888MCoU6dOmeYsyscffxyXXnpprFy5MjGXmZkZw4YNi2OPPbbc318eMtMdYHv02GOPRa9evTYofkVETJkyJQYNGpR0n2g6ZGZmRsOGDaNhw4ZRr169xHxOTk5i/n8/vy6q1atXLzHfoEGDdEQHAAAAAAAAAKAcnXjiiUnjefPmxeuvv16stZ9++mm89957SXMnnHBCmWXbmC+++CL+9Kc/RV5eXtL84MGD49RTTy3395cXJ39tYXfccUfcddddERGx0047Rc2aNWP27NkREbHbbrvFt99+G88991ysXr06/vrXv0alSpW2WLbMzMyoXr16RETUqVMnXn755YiIeP/996Njx44REbHXXntt0L485phjYv78+RERMXr06DjwwAMjImLNmjXxu9/9LvFccdudAAAAAAAAAEDxZfrP8Wxh7dq1iyZNmiQ6LxERf/nLX+LQQw+NatWqbXRdfn5+XH311Ulz9erViw4dOhTrvU2aNEkat27dOh5++OHNrps7d2507tw5li5dmjQ/aNCgOPfcc4v17q2Vk7+2kNWrV8egQYMSxa8dd9wxxo0bl3SqVteuXeOoo46KiF9OALvkkkti2bJlWyzjrrvuGjNmzIgZM2Ykil8RkXRHa25ubrH3q1SpUmK/GTNmbNEiGwAAAAAAAAAA5SMjIyOuuOKKpLn58+fHZZddtsHJWv+zZs2a6Nu3b3z88cdJ8926dYsqVaqUW9aFCxdGp06dYtGiRUnzvXr1ik6dOpXbe7cUJ39tAV9//XX06tUrPv3004iIqF69etx3332x9957Jz2XlZUVI0aMiM6dO8dHH30U7777bpx55pkxevTo2HfffdMRPSJSL38BAAAAAAAAALBtOuaYY+L4449POmDonXfeiVNPPTU6d+4chx12WNSvXz+WLFkS77//fowfPz6++OKLpD1atGgR5513Xrnm7NWrV8ybNy9prl69erFixYq49dZbU9rzhBNOiP32268s4pWa8lc5e+mll+Kaa65JtBpr1qwZ48aNi/3337/I53Nzc2PcuHHRqVOn+M9//hPz58+Pjh07Rt++feOCCy4ot6sT165dG//85z/jiCOO2OC7b7/9NvH51yeVAQAAAAAAAACw/Ro6dGgsWLAgPvroo8Tc/PnzY8iQIZtdu9tuu8XIkSMjO7t860vrn/gVEbF48eIYO3Zsyns2atRoqyl/ufaxnKxcuTJuuummuOKKKxLFrwYNGsRjjz220eLX/9SoUSMeeOCBOOiggyIiYtWqVTFkyJC4+OKLN2giloW8vLzo0qVLPPHEE0V+/9VXXyU+77HHHmX+fgAAAAAAAAAAKp7c3NwYP358HHvssSVad/DBB8eECROifv365ZRs+6H8VQ7eeuutOOWUU+KRRx5JzDVr1iwef/zxaNy4cbH2qFGjRtx///1J/zjeeuutOOmkk+Luu++ONWvWlEnWRYsWxR/+8Id4++23Y/78+UU+8+t2ZmnKX5MmTUraCwAAAAAAAACAii03NzdGjx4dY8aMiRYtWmzy2SZNmsTNN98cjzzySNStW3cLJdy2ufaxDC1btiyGDx8ezzzzTNL8ySefHH/5y1+icuXKJdqvcuXKMWrUqBgzZkyMHj06CgoKYtWqVXH77bfHxIkTo2fPnnHyySdHZmZqHb5PP/00unXrFgsWLIiIiG+++WaDZ+bMmRNff/11RERkZmZu9h/ppkyZMiWmTZsWTZo0iR49epS49QkAAAAAAAAAwNapXbt20a5du1i4cGF8+OGHMX/+/FixYkVUrlw5dt5559h///1j1113LdU7Zs+eXeI1r7/+eqneubVT/ioDhYWF8be//S1uvvnm+OGHHxLzOTk5MWDAgPjjH/+Y8t4ZGRnRvXv3OPDAA2PAgAGxePHiiIiYO3du9OvXL8aOHRtdu3aNE088sUR3oL7xxhvRu3fvWL58eUT8UjQr6r7VJ598MvF5n332idq1a6f8u6xYsSIifvmH+NFHHyl/AQAAAAAAAABsY3baaac47rjj0h1ju+Hax1J6++2346yzzop+/folFb/22GOPmDBhQqmKX792+OGHx9/+9rc4/vjjk+Y/++yz6Nu3bxx33HExfvz4WLp0aZHr8/LyksaXXXZZovhVr169ePjhh6N9+/ZJz8ydOzcmTJiQGJ988sml+h1+/vnnxOcGDRqUai8AAAAAAAAAANjeKX+laPbs2dGlS5fo1KlTzJo1K+m7jh07xqRJk2L//fcv03fWqlUrRo4cGXfffXc0bNgw6bv58+fHzTffHEceeWT0798/1q5dm/T9559/njTOz8+PiIhmzZrFxIkTo3nz5knfr1q1Knr27BmrVq2KiF/uZ+3QoUOp8v+6HKf8BQAAAAAAAABlI8PPNvEDqXDtYwpmzpwZHTt2jIKCgqT53XbbLW688cY47LDDyvX9bdu2jUMPPTTuv//+uO+++xIneEVErFmzJho1ahQ5OTlJayZNmrTBPscff3wMHz48qlSpkjSfl5cXvXr1iv/85z+Jue7du0dubu5msxUWFhY5v27duliyZElivH55DQAAAAAAAAAAKBknf6XgwAMPjI4dOybGOTk50bVr1/jb3/5W7sWv/6lSpUp07949Xn311bjwwgujcuXKERHRpk2buPTSS5Oe/eSTT2L69OlJc926dYs777xzg+LX559/Huedd17S80cddVR06tRpo1l+XTRbsGBBkc988sknidPGIpz8BQAAAAAAAAAApaX8laJBgwZF8+bN44gjjojnn38++vTpkyhgbUl16tSJq6++OqZNmxZ//vOfY9iwYZGRkXwY4D777BPdunWLiIiMjIy48cYbo3fv3knPLV++PG655ZY444wzkq6IbNWqVdxxxx2RmbnxP5Wddtop8fnee++Nr7/+Oun7hQsXxl//+tfEuGHDhlG1atWUfl8AAAAAAAAAAOAXrn1MUU5OTjz00EMbnJyVLrVr145evXpt9PvevXvHd999F02aNIlzzz03Mf/999/Hww8/HE8++WT89NNPSWtOPvnkGDp0aOywww6bfPdRRx0V77zzTkT8csLX8ccfv8nnjznmmM39OgAAAAAAAAAAwGYof5XC1lL8Kq5hw4ZFdnby/+WPPPJIjBs3LmkuNzc3Bg4cGOecc06x9j3//PPjxRdfjFmzZm322YYNG8bll19e/NAAAAAAAAAAAECRlL+2I+sXvyIievbsGdOnT49PPvkkMjIyXSlwawAAIABJREFU4tRTT40+ffokXeW4OVWqVIlHH300Hn300XjzzTdj8eLFsW7dusT3mZmZsdNOO0XLli2jc+fOUaNGjTL5fQAAAAAAAAAAYHuWUVhYWJjuEKTXF198EXfddVd07do1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hw6N8847L4YNGxbHHXdckc9NnTo1OnToEB06dIgpU6ZEQUFBiX6PiF+umBw1alS0a9cu3nvvvRKvBwAAAAAAAAAASs61jyn4+OOPk65sHDBgQMyZM2ez6+rXrx99+vSJiIjGjRuXOsdZZ50VhxxySERE1KhRo8hnbrjhhk3ucdddd0VExIcffhgDBw6Mgw46KOrVq1eiHL17945XXnklIiL69+8fzz33XOy4444l2gMAAAAAAAAAACgZ5a8ULFiwIHFCVtu2beN3v/tdscpfderUia5du5ZZjvbt25dq/RtvvBGzZs1KjM8///wSF78iIs4999xE+eu7776L66+/Pm6//fZSZQMAAAAAAAAAADbNtY8pOProo6Nu3bpRrVq1uP7669MdJ2V333134nO1atWSrpssiTZt2kSHDh0S48mTJyedjAYAAAAAAAAAAJQ9J3+lICcnJ0477bRo0KBB7Lzzzpt9fvjw4XH//fen9K7BgwfH4MGDS/R8x44dN/vctGnT4v3330+ML7rooqhVq1YqESPil6svp0+fHt99911ERAwZMiRat24dDRs2THlPAAAAAAAAAABg45z8laJLLrkkzj///HTHSMnatWtj+PDhiXGNGjXi4osvLtWeubm5MWTIkMQ4Ly8vBg4cGIWFhaXaFwAAAAAAAAAAKJqTv1JUp06dlNa1bNkydt99900+M2vWrPjss88iIuLAAw+MPffcs9jPF8ejjz4aX331VWLco0ePqF69erHXb8zhhx8eHTp0iCeffDIiIt5999148MEHo1OnTqXeGwAAAAAAAAAASKb8tYWdc845ceaZZ27ymVtvvTVR5jr99NM3e43jr5/fnKVLl8aYMWMS47322qtY10QW1/rXP44YMSKOOOKIaNy4cZm9AwAAAAAAAAAAcO1jhVFQUBATJ06Mbt26xZVXXpnyPrfeemv8+OOPifGgQYMiO7vsOoDrX/+4evXquOqqq6KgoKDM3gEAAAAAAAAA/J8MP9vED6RC+auCyMzMjEceeSSmTZsWL7/8cixevLjEe7z55psxceLExLht27bRpk2bsowZEb9c/3jOOeckxjNnzowHHnigzN8DAAAAAAAAAADbM+WvCuSss86KiIh169bFM888U6K1eXl5cd111yXGVapUiauvvrpM8/1anz59ombNmonxnXfeGV9//XW5vQ8AAAAAAAAAALY3yl8VxNq1a+OII45IXNH41FNPRWFhYbHXDxs2LBYsWJAYX3HFFbHrrruWec7/qVWrVvTt2zcxXrVqVVx99dUlygwAAAAAAAAAAGxcdroDbI8KCwvjvvvuixUrVsSqVati9erVsXLlyli1alWsXLkyPvvss8Szt9xySwwbNixWr16dtMfcuXNjxowZ0apVq82+75VXXkm67rF58+Zx4YUXlt0vtBFnn312TJw4MWbOnBkRETNmzIgnnngizjvvvHJ/NwAAAAAAAAAAbOuUv9IgIyMjpkyZEv/+9783++yKFSs2+t0LL7yw2fLX119/HYMGDUqMc3JyYsiQIZGZWf6HvmVkZMT1118fZ599duTn50dExG233Rbt2rWLevXqlfv7AQAAAAAAAABgW+baxzT53e9+V+R8VlZW1KlTJxo1ahQtWrSItm3bxhlnnBGdOnWKXr16xfXXXx/VqlWLiIiXX3451q1bt9F3rFy5Mnr06BF5eXmJuR49ekSTJk3K9pfZhH333TfOP//8xPinn36Km266aYu9HwAAAAAAAAAAtlVO/kqTM888M3bZZZeoXbt21KxZM2rXrh21atWKmjVrRkZGxibX/utf/4oXXnghli5dGv/4xz82+tywYcOSrpA89NBDo0uXLmX2OxRXr1694qWXXoolS5ZERMRbb70VCxcujJ122mmLZwEAAAAAAAAAgG2F8lea7LHHHrHHHnuktPbkk0+O/Pz8OPnkk+Owww6L9957r8jnLrnkkpg1a1Z8/PHHUatWrbjllltSuu7x1yeHpaJ69erRv3//6N+/fxx55JFx0003KX4BAAAAAAAAAEApKX9VQG3bto22bdsmxgsWLEh8zsnJSXzefffd4/HHH4+RI0dGixYtUipc5efnx4wZMxLjKlWqpJT5tNNOixo1asTRRx+d0noAAAAAAAAAoGibuWAM2IYpf1UQ33zzTVSpUiVq1aqVKHitXLkypkyZEi+//HLiufULXjk5OdGnT59N7v3OO+/EJ598EjVr1owaNWpEbm5u7LDDDvHDDz/EE088EXPmzEk827Bhw5R/B8UvAAAAAAAAAAAoO8pfFcQdd9wRkydPjoiIrKysyMnJiVWrViU9k5ubGy1btizx3gsXLoxhw4YV69lfnzgGAAAAAAAAAACkT2a6A1A8BxxwQOJzfn7+BsWvrKysuPbaa6NatWol3rtp06bFeu64446LI488ssT7AwAAAAAAAAAAZc/JXxXEgQceGM2aNYuCgoIoLCyMjIyMyMzMjGrVqsVee+0VZ599djRr1iylvRs1ahS5ubmxYsWKKCgoSPouKysrGjduHGeccUZcdNFFZfGrAAAAAAAAAAAAZSCjsLCwMN0h2Hrk5+cnfgoLC6NKlSqRkZGR7lhp8lm6AwAAAAAAANuIarvflO4IpZb3zTXpjlBqGbG9/ncvKMre6Q5AGZq7/G/pjkAZ2LXaKemOQAXk5C+SZGVlRVZWVrpjAAAAAAAAAAAAm5GZ7gAAAAAAAAAAAACUnPIXAAAAAAAAAABABeTaRwAAAAAAAACACiwj3QGAtHHyFwAAAAAAAAAAQAWk/AUAAAAAAAAAAFABKX8BAAAAAAAAAABUQNnpDgAAAAAAAACbUrfJmHRHKLXl31yb7giltqbgp3RHKLVKmTumOwIAQJly8hcAAAAAAAAAAEAFpPwFAAAAAAAAAABQASl/AQAAAAAAAAAAVEDZ6Q4AAAAAAAAAAEDqMjPSnQBIFyd/AQAAAAAAAAAAVEDKXwAAAAAAAAAAABWQ8hcAAAAAAAAAAEAFpPwFAAAAAAAAAABQASl/AQAAAAAAAAAAVEDKXwAAAAAAAAAAABWQ8hcAAAAAAAAAAEAFlJ3uAFQcTz/9dCxevDhOOeWUaNiwYbrjAAAAAAAAAADAds3JXxTLunXrYtSoUXH77bdHu3btYvDgwemOBAAAAAAAAABERIafbeIHUqH8RbG88sorsWDBgoiIKCwsjEMOOSTNiQAAAAAAAAAAYPum/EWxPPTQQ4nPe+65Zxx//PFpTAMAAAAAAAAAAGSnOwDlZ+jQofHf//632M9fdtll0bhx4w3m//Wvf8UHH3yQGF966aWRmak3CAAAAAAAAAAA6aT8tQ2bOnVqzJ8/v9jPn3POOUWWv+68887E59/85jdx3HHHxerVq1POlZ2dHVlZWSmvBwAAAAAAAAAAlL/YjLfffjveeeedxPj777+Pli1blmrP/v37xyWXXFLaaAAAAAAAAAAAsF1T/tpOXHzxxdG0adMN5gcPHhwrVqzY6Lpfn/oFAAAAAAAAAABsPZS/thOtW7eOtm3bbjA/dOjQjZa/Jk+eHB988EF5RwMAAAAAAAAAAFKg/EWR8vLyYtiwYYlxs2bNYuLEiZGZmZnGVAAAAAAAAAAAwP8of1GkkSNHxqJFiyIiIjMzMwYPHqz4BQAAAAAAAABboYyMwnRHANJEm4cNzJo1Kx555JHE+JxzzonmzZunMREAAAAAAAAAALA+5S+SrFy5Mvr27Rv5+fkREVGrVq248sor05wKAAAAAAAAAABYn/IXSYYOHRpz5sxJjK+77rqoWbNmGhMBAAAAAAAAAABFyU53ALYeb731Vjz55JOJcfv27aNdu3axevXqlPfMyMiISpUqlUU8AAAAAAAAAADgV5S/SDjssMPit7/9bdx6662Rn58ff/rTn6J58+al2rNhw4bx+uuvl1FCAAAAAAAAAADgf5S/SMjIyIiTTz45jjnmmJg7d25Uq1Yt3ZEAAAAAAAAAAICNyEx3ALY+VatWjSZNmqQ7BgAAAAAAAAAAsAlO/mKjdtlll5g9e3axn//73/8el19+eaxatSoifimR3XjjjeUVDwAAAAAAAAAAtmvKX5SJV199NXr37h1r166NiIg6derEvffeG/vtt1+akwEAAAAAAADAti0j3QGAtHHtI6X2/PPPxxVXXJEofjVs2DAmTJig+AUAAAAAAAAAAOVI+YtSeeqpp2LAgAGxbt26iIjYe++9Y8KECbH77runORkAAAAAAAAAAGzbXPtIyp5++um49tpro7CwMCIi9ttvv7jvvvuiZs2aaU4GAAAAAAAAAADbPid/kZJnn302rrnmmkTxq2XLlvHggw8qfgEAAAAAAAAAwBai/EWJPffcc3HVVVdFQUFBRES0atUq7rvvvsjNzU1zMgAAAAAAAAAA2H4of1EiU6dOjUGDBiWKX61bt46xY8dG1apV05wMAAAAAAAAAAC2L8pfFNs777wTV155ZeTn50fEL1c93n333VGlSpXNrs3Pz09cEQkAAAAAAAAAAJRedroDsGV069atVOtnzZoVl112WaxevToiIpo1axZjx46NatWqFWv9p59+Gpdeemm0a9cujj322Dj88MMjIyOjVJkAAAAAAAAAAGB7pvzFZn3//fdx6aWXxvLlyyMiYs8994xx48ZFbm5usff44YcfYvHixfH444/HU089FR999FFkZ/vzAwAAAAAAAIDScvYKbL9c+8gmrVixIrp16xaLFy+OiIi6devGuHHjonbt2iXaZ9GiRYnP9evXV/wCAAAAAAAAAIBS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v/71r+P000/frfh1yCGHxJQpU2LGjBn7LX5NmzYtHnjggdS4WbNmMX369LjllltS20mWlZXFFVdcEX/+858z+G0AAAAAAAAAAIAI5a8G4bXXXku9f+utt2LSpEmxdevWtGuGDh0aixcvrtQxjbfffnvcfvvtqXEikYjJkydHu3btom/fvnHNNdekPtu5c2eMGTMmnnvuuQx8EwAAAAAAAAAA4COOfcyQ2267LUpLSyMiomnTpllO83+2bNkSy5cv3+vnRxxxRNx0003Ro0eP/a5VWloaN954Yzz66KNp81dddVX07t07Nb7oooti3bp1MW/evIiI2LZtW1x88cUxd+7c6NixY/W+CAAAAAAAAAAAkMbOXxnSsmXLaNOmTbRp06bWyl8flcuqYtKkSfHBBx/sNp+fnx/f+MY3YtGiRZUqfq1bty7OPvvs3YpfF198cYwePXq36ydMmBC9evVKjd9777246KKLYuPGjVX+DgAAAAAAAAAAwO6Uv3LIunXr0sb5+fn7vP7111+PJ554Yrf5Ll26xAMPPBDXXnttNG7ceJ9rJJPJmD17dgwePDhWr16d9tmll14aV1111R7vy8/PjylTpkSXLl1Sc+vXr4/Ro0fvduQkAAAAAAAAAABQdcpfOWLHjh0xe/bstLlmzZrt85727dvHt771rdQ4kUjEmDFj4tFHH41jjz12v89cvXp1jBw5Mm666abYtm1bar5Ro0bxox/9KMaNG7fP+5s2bRrTp0+P4uLi1NwLL7wQl112WbV2MQMAAAAAAAAAAP5PIplMJrMdoqFbv359TJo0KZo3bx7NmjWLJk2aRFFRURx00EGRn58fb7/9dixZsiTWr1+fuqdFixbx9NNP73ftZDIZF154YTz33HNx8803R+/evfd7z5tvvhk///nPY8GCBfHJH4/DDz88pkyZEscdd1ylv9/KlStj1KhRUV5enpobOnRo/PjHP670GtnxcrYDAAAAAAAAEZGM+vDrrIpsB6ixZDL3v0PLzrdnO0KNvb/m29mOQL3RZf+XkDN27tp/f4C6r3H+ydmOQA4qyHYAIlq3bh1/+tOfoqSkpNL3DBgwoFLXJRKJuPnmm2Pr1q3RqVOnfV779ttvxx133BHz58+PsrKy3dYZNmxYXHvttfvdceyTevToEePHj48f/OAHERFRXFwcZ599dpXWAAAAAAAA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AAAAAACZofxVA8lkMh5//PEYNmxYjdYpLy+PBx98MDXu3r17HH/88btdt2HDhrRxy5Yta/TcfZk1a1bccMMN8c4779TaMwAAAAAAAAAAgOpT/qqmZ599NoYPHx5XXXVVrF+/vkZr/dd//Vds3LgxNR4xYsQer0smk2nj119/vUbP3Zddu3bFgw8+GH379o3bb789tm3bVmvPAgAAAAAAAAAAqk75q4rWrl0bY8eOjXPPPTeee+65jKw5Z86c1PuDDz44BgwYsMfrDj/88LTxwoULY/v27RnJsDfbt2+PadOmRZ8+fWLevHmxa9euWn0eAAAAAAAAAABQOcpflfTuu+/GxIkTY+DAgbFs2bLUfH5+/l7LWpWxdu3a+POf/5waDxkyJD71qU/t8dqePXumjTds2BBXXHFFbN26tdrP35uTTjop2rVrlxpv2rQpbrzxxvja176W9v0BAAAAAAAAgGxLeNWLF1Sd8td+7NixI6ZPnx5f/epXY+7cuVFeXp767Ctf+UosWrQoJk6cWO31P77rVyKR2OuRjxERgwcPjuLi4rS5FStWxODBg+OPf/xjtTPsyYknnhhLliyJ8ePHR4sWLVLzH9/5bNWqVRl9JgAAAAAAAAAAUHnKX3tRUVERjzzySPTt2zemTp0a27ZtS332xS9+MebOnRvTp0+PTp06VfsZ27dvjwULFqTGPXr0iCOPPHKv1zdr1ixuvPHGSCTS256vv/56fOMb34gxY8bEv/71r2rn+aTCwsK44IILYunSpTF27NgoKipKffbss8/GmWeeGd/+9rfj9ddfz9gzAQAAAAAAAACAylH+2oMVK1bEoEGD4rrrrosNGzak5jt37hzTp0+POXPmxBe+8IUaP2fhwoVpRzaOHDlyv/f069cvbrjhhsjPz9/ts+XLl8fAgQPjyiuvjLVr19Y430eaNm0a3/rWt+K3v/1tjBgxIho1ahQREclkMp544ok444wzYvLkyfH+++9n7JkAAAAAAAAAAMC+JZLJZDLbIeqKF198MW655ZbdjlBs27ZtXH755TFkyJA9lq6qa9CgQfHiiy9GRESbNm1i2bJllV7/6aefjmuvvTbefvvtPX6el5cXAwYMiCuuuCLat2+fscwREa+99lpMmTIllixZEh//8WnevHlccsklcd5550VhYWFGn5kdL2c7AAAAAAAAEBGlFVuyHSEDcv9XchXJsmxHqLE3t2/KdoQa6zO7ebYj1NiqUYn9X1THFRW0znaEDOiS7QBkUEXyn9mOQAbkJT6b7QjkIDt/RcTbb78d48ePjyFDhqQVv5o3bx7XXHNNPPnkkzFs2LCMFr/++hRimtUAACAASURBVNe/popfERFnnnlmldY/+eST44knnojzzz8/tRPXx1VUVMTChQujf//+MW3atCgtLc1I7oiIDh06xM9+9rN46KGHokePHqn5Dz74IG655ZY4/fTTY9GiRaFXCAAAAAAAAAAAtadB7/y1devWmDVrVtx7772xc+fO1Hzjxo3j3HPPjUsuuSQOPvjgWnn2VVddFY8//nhERDRq1CiWL18erVq1qtZa69ati6lTp8bixYujoqJij9ccc8wx8bOf/Szju4BFRPzhD3+I2267LVavXp0237179/jOd74TJ598csafeWDY+QsAAAAAAOoCO3/VDXb+qhvs/FU32PmLusbOX/WDnb+ojgZb/nrvvfeif//+8d5776Xm8vPzY/DgwXHFFVdEmzZtavXZvXr1irKy//0P5DPOOCN+9rOf1XjdNWvWxB133BG/+c1v9rjr1qGHHhq/+tWv4qijjqrxsz4pmUzGE088EVOnTo1169alfXb11VfH6NGjM/7M2qf8BQAAAAAAdYHyV92g/FU3KH/VDcpf1DXKX/WD8hfV0WCPfdy5c2da8SsioqCgIJo2bRqJRO3+x8ZDDz2UKn5FRIwcOTIj6x511FExZcqUeOyxx6JXr167fb5p06YYNWpUfPDBBxl53ic1btw4mjVrttv8J/85AwAAAAAAAAAANddgd/6KiPjHP/4R06ZNixUrVqTNN2rUKIYOHRqjR4/O+DGJFRUV0bt373jjjTciIqJz586p4x8zbenSpXHdddftVvY666yz4qabbsrIM8rLy+Pxxx+PWbNmxZo1a9I+a9euXVx88cUxdOjQKCwszMjzDiw7fwEAAAAAQF1g56+6wc5fdYOdv+oGO39R1yTjhWxHIAMS0S3bEchBDbr89ZFVq1bFtGnT4r//+7/T5vPz86N///5xySWXZOyoxGXLlsXYsWNT4wkTJsQ555yTkbX35NVXX42zzz47Nm/enJpr1KhRrFixIlq0aFHtdUtKSuLhhx+OX/ziF6ki20fatWsXY8aMiSFDhkSjRo2q/YzsU/4CAAAAAIC6QPmrblD+qhuUv+oG5S/qGuWv+kH5i+posMc+ftxxxx0Xd911Vzz88MNx6qmnpuZ37doVCxcujAEDBsQ3v/nNeP7552v8rDlz5qTeFxUVxaBBg2q85r507Ngxvv/976fNlZWVxTPPPFOt9bZu3Rp33XVXnHbaaXHTTTelFb8OP/zwmDRpUjz55JNx5pln5njxCwAAAAAAAAAA6raCbAeoS4499tiYOXNmPP/88zFt2rRYvnx5REQkk8n47W9/G7/97W/jlFNOiTFjxsQJJ5xQ5fVff/31+MMf/pAaDxw4MJo2bZqx/HvTp0+fOOSQQ+Ldd99NzX1yt679effdd+O+++6L2bNnx5Yt6f/vmvbt28eYMWNi8ODBUVDgRwoAAAAAAAAAAA4ETZ09OOaYY2LGjBmxevXquOOOO2LZsmXx0emYK1asiBUrVsSXvvSluOSSS+KUU06p9Lpz5syJj5+yOXLkyIxn35NEIhGHH354WvkrL69ym7698cYbcc8998TDDz8cO3fuTPusQ4cOMWbMmBg4cKDSFwAAAAAAAAAAHGAaO/vQvXv3mD59erzwwgsxbdq0eOqpp1LlrWeffTaeffbZ6N69e1x66aXRu3fvfa5VUlISjz76aGr8xS9+MY4++uhazf9x77//ftq4VatW+7x+3bp1MX369Fi0aFGUl5enfdaxY8dU6Ss/Pz/jWQEAAAAAAAAAgP2r3PZPDVy3bt3ijjvuiAULFkSfPn0ikUikPlu9enV897vf3e8aixcvTitgVWfXr8WLF6ftHFZZ//rXv+K1115Lm/vCF76wz3see+yxmD9/flrxq2PHjnHzzTfH4sWLY8iQIYpfAAAAAAAAAACQRcpfVdC1a9e4/fbb47HHHou+ffumlcD2Z86cOan3hx56aPTp06fKz//JT34S5513XjzzzDOVvmfLli1x3XXXpc2dcMIJcdhhh1V6jc985jNx6623xuLFi2Pw4MFKXwAAAAAAAAAAUAc49rEajj766Pj5z38eL7/8ctxxxx2xcuXKfV6/evXqWLVqVWo8bNiwKCwsrNazn3322Tj//POjS5cu0b9//zj55JPjmGOOiYKC9L/Kd955J5YuXRqzZs2KN998MzVfUFAQ119/faWe1alTpxg7dmz0798/8vL0BAEAAAAAAAAA2Ld33nknVq1aFevXr4/t27dH48aNo23btnHMMcdE+/btsx1vN2vXro3Vq1fHxo0bo7S0NJo0aRJHHHFEfO5zn4vi4uJsx9sv5a8a6NKlS0ydOnW3IxU/afbs2an3+fn5cdZZZ9X42S+//HK8/PLLEfG/ha6WLVtGixYtory8PN599920IyY/UlBQED/60Y+iW7du+11/+PDhcdlllyl9AQAAAAAAAECd53f7ZN+yZcti1qxZ8fe//z2SyeQer+natWtceOGFMWjQoCqduJdpZWVlMXfu3Pj1r38d69at2+M1+fn58R//8R9xySWXxAknnHCAE1ZeIrm3f9pkxIcffhi9evWKHTt2RETEf/7nf8add95ZrbVOP/30eOWVV6p1b8eOHWPixInRo0ePat3fML2c7QAAAAAAAEBElFZsyXaEDMj9X8lVJMuyHaHG3ty+KdsRaqzP7ObZjlBjq0Zl75f9mVJU0DrbETKgS7YDkEHJeCnbEciARByd7QjVsm3bthg/fnw8+eSTlb7nxBNPjClTpsShhx5ai8n27NVXX41vfvObqU2XKuPcc8+N7373u9GoUaNaTFY9dv6qZY8++miq+BURMXLkyGqvNW/evFi4cGEsX748/vGPf8T27dv3eX1+fn6ceOKJMXDgwBgwYEC1j5oEAAAAAAAAAIBP2rZtW1x44YXxP//zP1W6789//nOMHDkyZs+eHa1ataqldLtbu3ZtnHPOObF58+Yq3Xf//ffHW2+9FT//+c+joKBu1a3s/FWLkslknH766fHqq69GRESHDh3iySefzMi2dRUVFfHGG2/Ev//973jrrbfiww8/jIqKimjSpEk0a9YsPvOZz0SXLl2icePGNX5Ww2XnLwAAAAAAqAvs/FU32PmrbrDzV91g5y/qGjt/1Q+5uPPXuHHjYsmSJWlzhx12WFxwwQXRo0ePaNOmTWzcuDH+9re/xS9/+ctYu3Zt2rWf//zn4/777z8ghaqtW7fGkCFDdjvm8fjjj48LLrggunfvHs2bN4+33norli5dGvfff3+8//77addedNFF8Z3vfKfWs1ZF3aqi1TN/+tOfUsWviIizzz47Y+eV5uXlRfv27aN9+/YZWQ8AAAAAAAAAACpr2bJluxW/TjzxxJg+fXo0a9YsNXfwwQdHp06dYtCgQXHNNdek3fP3v/895s2bF+eee26t5502bdpuxa8LLrggvvvd76b1eYqLi6Nbt24xfPjwGDVqVPzrX/9KfXbPPffEwIEDo2vXrrWet7Lysh2gPpszZ07qfePGjWPo0KFZTAMAAAAAAAAAADWXTCZj6tSpaXOHHXZY3HnnnWnFr48rLCyM2267Lbp37542P2PGjNixY0etZY2I2LBhQ1qPJyKid+/eMX78+L1u5NSmTZuYNWtWNGnSJDW3p++dbcpfteTtt9+O5cuXp8b9+vWL4uLiLCYCAAAAAAAAAICae+qpp+LFF19Mm/ve974XTZs23ed9+fn5MWnSpLS5jRs3xoMPPpjxjB939913R0lJSWrcuHHjuPHGG/d7X9u2beOKK65Im1u2bNlu3z2blL9qybx582LXrl2p8YgRI7KYBgAAAAAAAAAAMuM3v/lN2rhdu3bxla98pVL3fvazn/3/2bvvsCiutg3g99CbqDEiKGJvMYnm1WgsiT2xd42BFEVRUWxRsRujib1hRexKNNbYorHExBaNUWPFLkgHBSx02J3vD76d7FK3DCyL9++6vNwdZs6cbXNmzjznOWjUqJHGsuzTR8pJFMUc5Xfs2BFOTk5abd+3b1/Y2dlpLMv++o3JwtgVKKmcnJzg4+MDALC3t8f7779v5BoRERERERERERERERERERFRSSQg92nriApDRkYGzpw5o7GsR48eeU6fmJtevXrh6tWr0vPr168jLi4O5cqVk62eKrdu3UJsbKzGsp49e2q9vYODA9q3b49Dhw5Jy06fPo1x48bJVkdDMPirkLi7uxu7CkREREREREREREREREREREREsrp+/Tpev36tsaxJkyY6ldG0aVON50qlEufOndMpKEtbZ8+e1XhuaWmJ//3vfzqV0aRJE43grwcPHiAyMhIVK1aUpY6G4LSPRERERERERERERERERERERESklfv372s8Nzc3R4MGDXQqw83NDW+//Xa+5crlwYMHGs/r168Pa2trncrILVgse7nGwuAvIiIiIiIiIiIiIiIiIiIiIiLSypMnTzSeu7i4wM7OTudyqlevrvE8ODjYoHrlJXt9s+9XG1WrVoW5uXm+5RoLg7+IiIiIiIiIiIiIiIiIiIiIiEgrjx8/1niu79SHLi4uGs8LI5hKoVAgJCREY5k+9TU3N4eTk5PGMgZ/ERERERERERERERERERERERGRSYmNjdV47uzsrFc52YO/YmJi9K5TXhISEpCRkaGxrDjXVx8Wxq4AEREREREREREREREREREREdGbLjExEUlJSYW6D3t7ezg4OBhURnJyssZzfcvLvl1qaiqUSiXMzOTLZZW9rrntV1vZt8utbGNg8BcRERERERERERERERERERERkZFt3rwZq1atKtR9+Pj4YNSoUQaVkT3oycbGRq9yctsuOTnZ4OC07OVps19tZN+uuAR/cdpHIiIiIiIiIiIiIiIiIiIiIiLSSkpKisZzKysrvcrJLQhL7sxnuQVoWVtb61VW9u2KS/AXM38R5am2sStAREREREREREREREQArJjOgGRSvZSxa2C4R8ONXQMiKp54f7tkOG7sCpAJ4qkyERERERERERERERERERERERFpxdbWVuN5enq6XuWkpqbmWGZvb69XWXmxs7PLsSwtLU2vsrJvl1vZxsDgLyIiIiIiIiIiIiIiIiIiIiIi0kr2oKfcgri0kdt2cgdU5VaeXPUtLsFfnPaRiIiIiIiIiIiIiIiIiIiIiMjIBg0ahP79+xfqPuTIrJU96CkxMVGvcrJvZ2NjAzMzefNY5RagJVd9GfxFREREREREREREREREREREREQAAAcHBzg4OBi7GgVycnLCkydPpOfR0dF6lZN9OycnJ4PqlZuyZcvC0tISGRkZee5XW0VRX31w2kciIiIiIiIiIiIiIiIiIiIiItJK9erVNZ5HRkbqVU727WrUqKF3nfJibm6OKlWq5LtfbSgUCsTGxmosK4z66oPBX0REREREREREREREREREREREpJXsQU/R0dFITk7WuZzg4GCN59WqVTOoXnnJXl/1rGXaevr0KTIzMzWWZQ+CMxYGfxERERERERERERERERERERERkVbq1Kmj8TwzMxM3b97UqYzQ0FA8e/Ys33LlUrt2bY3nd+7cQVpamk5lXL16tcByjYXBX0REREREREREREREREREREREpJWGDRuiVKlSGssuX76sUxnZ1zczM8PHH39scN1y88knn2g8z8jIwL///qtTGf/884/G89q1a6NixYoG100ODP4iIiIiIiIiIiIiIiIiIiIiIiKtWFpaolWrVhrLDh48CFEUtS7jwIEDGs8bNmyIcuXKyVK/7N577z04OTnlu//8JCYm4uTJkxrL2rZtK0vd5MDgLyIiIiIiIiIiIiIiIiIiIiIi0lqnTp00noeHh+P06dNabXvv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n376qUOO7cpSW/wV/zkzJcVfktS9e3cdOXJEhmHoP//5j959911HhJ0uOaFT2RVldI67d0m+9Byf4q+cISQkRO+9954mTJigChUqPHB7R74uJk+erKVLl1p/E8WLF9f8+fNVrVq1NB8TyCw5LU9npe9waREWFqYNGzZo3bp1VtvkvbOB+fj4aNq0aek+V074DhcVFaU1a9Zo4cKFCg4OtisCa9GihcaNG8fydcjWKP4CAADOQPEXkALvvfee1qxZk2j5OEfO+pVWjmyMl6RPPvlEixcvtq41d+7cmjFjhlq2bJnuWJctW6aZM2fqn3/+sR5L+BZUqFAh1atXT40aNdIrr7ySpnMcOHBA8+bNU1BQkPWYYRiqUqWKpk6dqsceeyztF5DNxMbG6vz58/cdWXj79m21bdtW165dk2EYateunaZOnerwWI4fP65t27ZpyJAhDjnepUuX9NJLLyksLMxaAnL58uWqV69ektsHBQVp8ODBioiIkBT3uqtfv74WLVqkvHnzOiSmnKRPnz7at29fpsyeZpqmSpQooZ07dzrsmAMHDrSuZcyYMSkuvr2fhMW0RYsW1fz581WzZs10Hxepd/ToUfn7+2vTpk26c+dOpjWqbd++XR999JEuX75s93mibNmymjx5crLvX1lRWjoOJKl///7Wcne1a9fWsmXLcvR7sLOKv27cuCEfHx9rlszChQvru+++U/HixR1yfFflzJm/JGnatGlasGCBDMNQyZIltX379nTHnF45rVPZFWVEjnNkYQ7FX0iKo9s0Ro8erdWrV1uftzw9PfXll1/K29vbEeECGSYn5+ms8h0urc6dO6fly5dr3bp1unv3rqS4/8N+/fppxIgRmRJTdv0OZ7PZtHTpUs2dO1e3b9+WFPe7zJ8/v4YNG8aSjci24ou/HPX5BwAAQJISz8MPIJGhQ4dq8+bNioyMtB4bNGhQJkaUWMKRZOkxcuRIa4rtcuXKqX///mrWrFn6A5RUvnx53blzx7pfoEABNWzYUA0bNlSDBg1UpUqVdF+Dt7e3vL29FRgYqI8//ljnz5+XaZoqX768ypQpk95LyFbc3NweOKV8gQIF5Ovrq4EDBypPnjz6+OOPnRLL448/rscff9xhxytXrpzmzJmj3r17q06dOnr33XetjtikPP3001qyZIkGDBigW7duqUOHDurdu3eOLjpwBFepH3fGyNU33nhDhw4d0vnz57Vw4cIcv7xdZqpVq5Zq1aql0aNHa/PmzQoICMiUOFq0aKGnn35ac+bM0eLFixUdHa1HH31UPXr0UJUqVTIlprSqVKmSChUqlOr9RowYoaCgIPXo0UPvvvtukkuC5STFixfX4MGDHX7cwoULa8yYMXr77bdVo0YNzZo1i8KvFChVqpTVOfcg8Uuzp+ZzhLe3txYsWCDTNBUWFqbz58/r0UcfTVOsQLyMyHHu7u4OG8AB3I+j2jQ+/PBD3blzR99//70qV66sN954w6GzmQNwvqzyHS6tKlWqpAkTJmjo0KH69ttv9fXXXys8PDzNA10dFVN2/A7n7u6ufv36qVOnTpo2bZrWrl2r2NhYeXh4KCQkRKGhofLy8srQmABHctTnHwAAAImZv4AUmzFjhubPny/DMNSkSRN9+eWXmR2S5fr169btYsWKOeSYu3fvVuPGjR26VKLNZtOgQYNUq1YtNWrUyBrd66zlGCMjIzVlyhTlzZs3Syytk5Xdvn1bd+7cyXZTpv/++++qWLFiirc/d+6cTNPMUTPAOUNQUJCuXr2aaef39PRUmzZtMu38KXXz5k3ZbDYaIpHI+fPn9eeff+rpp5/O7FAy3JEjR1S7du3MDiNHWLZsmV588cVMXVYU/7p7964OHTqkihUrqkSJEpkdjiTp0KFDunDhgnX/hRdeyLxgkCNERUXZfYbLCjPgIWtwdJuGzWbT/v371bhx43QfC8gs5GnXER0drUOHDqlBgwaZHUqaZKXvcCdOnFBISIiaNWuW4wcTIXuLiorS4cOHrfvZ9f0BAABkLRR/ASl0584dtWzZUmFhYfLz87OWq0D6fPnll/L19VXDhg3VuHFjNW3aVAUKFEjVMf755x/NmDFDFSpUUPny5VW5cuVsV8QEAAAAAAAAAACArCcmJkZdu3bV5cuXJUkdOnTQ+++/n+rjbN26VaNHj5YUt5TtqlWrVLZsWYfGCgDImSj+AlIhNDRUkZGRKlmyZGaH4jJat26tS5cuWffd3d3VvHlzDRkyxG7Jwg4dOkiSSpQooQULFtgdIyAgQGPGjLGbIrlQoULy9vZWx44d9dxzzzn5KgAAjnDgwAHt2LFDp06d0t9//y3TNFW8eHH93//9n1q2bKl69epldogAAKQJOQ4A4IrIbwCAnGTDhg0aMWKEpLi+rPXr16dqZRJJ6tKli06cOCHDMNSmTRvNmDHDGaECAHIgir/7I0mqAAAYyElEQVQAOM3MmTN1/vx5hYWFaenSpYmeDwoKUr9+/ZLcN2/evPriiy+sZRqqVq0qwzBUqlQpbdu2zW7bzp076+TJk3aPJSwEa9eunaZOnZreywEAOMmZM2c0ceJE/fLLL9Zj8R9RE76f165dW+PHj1e1atUyPEYAANKCHAcAcEXkNwBATtW1a1cdP35chmGoZcuWmjVrVor33bNnj1577TVJkpubm9avX6/HHnvMWaECAHIYir8AOI2Pj49+//13GYahvXv3qmjRopKktWvX6sknn1SJEiUUHh6uo0eP6uDBg9qzZ49OnjwpwzBkmqaKFi2q7du3y9PTM9nir7t378rPz0+hoaH6+++/dfnyZV26dEl//vmnXaPTlClT1LFjx0z5PQAAkvfLL7/o9ddf1+3bt5PsLJD+7USQpNy5c2v69OnM6ggAyPLIcQAAV0R+AwDkZAcOHNArr7wiKS7/+fr6qnbt2ina95VXXtGBAwdkGIZat26tzz77zJmhAgByGIq/ADjNG2+8oR07dsgwDH377beqU6eOli5dqilTpqhevXpavnx5osahffv2aeDAgYqKipJhGPr000/Vvn37+878lZSQkBCNGTNGe/fulWEYat68uebMmeOsSwUApMHff/+tdu3aKTw8XNK/HQZJfTxN+Jy7u7u++OILNW3aNOOCBQAgFchxAABXRH4DAMC+76t+/fpavnz5A/f55Zdf1LNnT0lxs36tW7dOlStXdnaoAIAcxD2zAwDguipUqGDdvnDhgkqWLKmpU6fKNE398ssvWrhwofr372+3z1NPPaVGjRpp586dkqT/9//+X5rOXbJkSU2cONEaVXj58uU0HQcA4DyTJ09WeHi4XadAsWLF1KJFC1WsWFH58uVTWFiYDh06pKCgIEVHR8swDNlsNo0ePVrfffedvLy8MvkqAABIjBwHAHBF5DcAAKQRI0YoMDBQMTExOnjwoHbu3KlmzZrdd5958+ZJkrVcJIVfAABHo/gLgNOUK1fOun3p0iV16tRJw4cP15QpU2Sapr744gu1bt3abjtJ1uhBSSpQoECaz1+2bFnrdnR0dJqPAwBwvGvXrmnLli3WUr+GYahPnz4aOnSo8ubNm2j74OBgjRo1Sr/++qskKTQ0VDNnztTEiRMzOnQAAO6LHAcAcEXkNwAA4lSqVEldu3aVr6+vJGn69Olq2rRpopVu4p04cUKBgYGS4oq/Bg0alGGxAgByDrfMDgCA60o489fFixclSb1799aTTz4pSYqMjNSkSZPs9vn999915MgR637NmjWdHygAIMNt2rRJNptNUlyjx0svvaRRo0Yl2WkgxRX0LlmyRNWrV7c6G9atW6ewsLCMDBsAgAcixwEAXBH5DQCAf7311lvKnz+/DMPQmTNntHbt2mS3nT9/vqS4/Pnss8+qSpUqGRUmACAHofgLgNOUL1/eun3hwgXr9qRJk+Th4SHTNBUUFKRdu3ZZzy1ZskSmaUqSChcurAYNGqT5/AnPmStXrjQfBwDgePGFvqZpysPDQ8OHD3/gPnny5NGHH35ojTKPjIzUDz/84OxQAQBIFXIcAMAVkd8AAPiXl5eX+vXrJ9M0ZZqmZs2apaioqETbnTt3Tj/++KMkZv0CADgXyz4CcJqSJUsqT548ioqK0qVLl6zHy5Urp9dee02zZ8+WaZqaOnWqmjZtqtOnT2vNmjXW1Lgvv/xyoqKtO3fuaOXKlQ889+3bt7V69Wrr/sMPP+ygqwIAOMLp06clxTV6PPPMMyle5rd69eqqVauWjh49KsMwdODAAXXv3t2ZoQIAkCrkOACAKyK/AQBgr2/fvlq5cqWuXLmikJAQff311+rTp4/dNvPnz7eKoFu0aKGqVatmUrQAAFdH8RcApzEMQ2XLltW5c+d0+/ZthYaGysvLS5LUr18/+fn56erVqzp79qxWrVqlpUuXKjo6WtK/oybudePGDU2YMCFVMUhSs2bN0n09AADHCQ8Pt26ndolfb29vHT16VJJ06tQph8YFAEB6keMAAK6I/AYAgD0PDw+99dZbGjNmjEzT1Lx589StWzerQDo4OFgbN260tmfWLwCAM7HsIwCnSrj048WLF63bnp6eGjhwoHV/woQJOnv2rKS4gq2xY8cmOYIwfgrd1Pw0adJEPXr0cOJVAgBS6+bNm1aB7iOPPJKqfStVqiQpLieEhYU5PDYAANKDHAcAcEXkNwAAEuvcubMqV64sKS5Xfvnll9ZzCxYsUExMjAzDUPPmzVWtWrXMChMAkAMw8xcAp7q3+Ktu3brW/W7dumnevHm6fv26bDabpLjCr27dusnHxyfJ4+XLl0/PPvvsA8/r7u4uLy8vNWzYUM8880w6rwIA4Gg2m83qOEjpciHxChYsaN2+efOmQ+MCACC9yHEAAFdEfgMAIDHDMDRy5Ej1799fpmlq+fLl6tmzpyRpzZo11naDBw/OrBABADkExV8AnKpChQrW7YQzf0nS1atXVbhwYV27ds1qPHrqqac0bty4ZI9XtGhRffrpp06JFQCQOdzcUjcZbe7cua3bMTExjg4HAACHIccBAFwR+Q0AgH81adJEjRo10t69exUREaFZs2apQIECio6OlmEYatq0qapXr57ZYQIAXBzLPgJwqnLlylm3ExZ/+fr6qmPHjjp37pwMw5BpmpKkd955R+7u1KUCAAAAAAAAAAAg6xs5cqRVHL127Vr5+vpaz7355puZFRYAIAeh+AuAUyWc+evChQv68ccf1aFDB02cOFF37tyRaZpW4Zckbd68OROiBAAAAAAAAAAAAFKvatWq6tixo0zTVExMjCIiIqxZv2rUqJHZ4QEAcgCm1wHgVCVKlFDevHkVFRWlU6dO6a233pIkq+CrdOnS6tChg+bNmyfTNLV27VoNGzbMWgYSAOD6Dh8+LJvNluLtjx8/bnd/+/btdoXED/Lss8+meFsAANKDHAcAcEXkNwAAEhs6dKg2b96syMhI67FBgwZlYkQAgJzEMFPzLQsAUujatWvavn27tm3bpj179iSa4cvT01O9e/fW66+/rjx58uiZZ57RtWvXZBiGFi9erKeeesrueFWrVpVhGCpVqpS2bduW0ZcDAHCw+Pd10zTTVPCbMKekZn/DMHTy5MlUnw8AgJQixwEAXBH5DQCAB5sxY4bmz58vwzDUpEkTffnll5kdEgAgh2DmLwAOs2vXLm3btk0HDx7U+fPnk9ymcOHC6tWrl1555RUVKVLEetzHx0dLly6VFLf0473FX/GuXbumV199VUWKFFGxYsVUpUoVVatWTTVr1mS2MADIhuI7D9KyXzzGMgAAsiJyHADAFZHfAABI3oABA+Tn56ewsDANHjw4s8MBAOQgFH8BcJht27bJ399fUtKNOIZh6N1339ULL7yQ6LnnnntOS5culWma2rp1qyZOnJhkMVd0dLQOHDiQ6PGiRYvqueee00svvaRq1ao54GoAABkhrY3+dBYAALI6chwAwBWR3wAASF7+/Pm1ceNGRUZGqmTJkpkdDgAgB6H4C4DD1KtXT35+fpIkDw8PNWzYUM2aNVNoaKhmzZolSbp06VKS+z7xxBMqXLiwbty4obCwMP3666+qV69eou2SaygKDQ2Vn5+f/Pz81Lx5c40aNUrly5d30JUBABzN29s7s0MAAMApyHEAAFdEfgMAIGW8vLwyOwQAQA5kmAy5AeAgV69e1erVq+Xt7a1atWopd+7ckqT9+/erd+/eMgxDbdu21fTp05Pcf8SIEdqwYYMMw9CAAQM0bNgw67mqVavKMAwVK1ZMkydP1q1bt3Tp0iWdOHFC+/fv182bN61tDcOQh4eHRo8erW7dujn3ogEAAAAAAAAAAAAAADIJM38BcJjixYvr9ddfT/R4whm4Ll68mOz+jRo10oYNGyRJu3fvtiv+ipcnTx41btzY7rGoqCht375dc+fO1W+//SZJunv3rsaNG6eLFy9qxIgRaboeAAAAAAAAAAAAAACArMwtswMA4PpKlCih3LlzyzRNBQcHJ7vdk08+KSluacfffvtN4eHhKTp+njx51KZNG61du1Zjx45V7ty5ZRiGTNPUokWLNHXqVIdcBwAAAAAAAAAAAAAAQFZC8RcApzMMQ2XKlJEk3bp1S2FhYUluV6pUKZUuXVpSXAHYgQMHUn2eXr16acWKFSpUqJBdAdimTZvSdxEAAAAAAAAAAAAAAABZDMVfADJEuXLlVKhQIdWoUUO3bt1Kdrs6depIiiv++uWXX+yeM00zReeqVauWFi5cqHz58lkFYGPHjtWVK1fSfgEAAAAAAAAAAAAAAABZjHtmBwAgZ5g1a5YkacSIEdq3b5/y5s2rRx55JNF2derU0datW9W/f3/17t3bevyFF16QJBUpUiTJ469bt05PPvmkdcyaNWtq/PjxGjlypAzD0N27dzV58mR99tlnDr4yAEBmCwkJ0fLlyxUYGKjLly/Lzc1NDz/8sOrVq6cOHTqoYcOGmR0iAABpQo4DALgi8hsAAAAAOJZhpnQqHQBIpx07duiNN96QYRiSpOrVq+vZZ59V69atValSJUlScHCwYmNjVb58+RQdMzg4WOPHj9e+ffv0zDPPaP78+XbPv/XWW/rhhx9kGIZ69uypsWPHOvaiAABpsnr1au3atcu6/8wzz6hLly6pPs5XX32lGTNmKDo6OtEMkfH5pnXr1vrggw9UsGDB9AUNAEAKkOMAAK6I/AYAAAAAWRfFXwAyzIQJE+Tr62vdj2/QkaRKlSqpffv26tatmx566KEHHismJkaLFi3SnDlzFBkZKdM0ZRiGPvroI3Xu3NnaLjg4WC+//LKmTJmixo0bO/aCAABp9txzz+mPP/6QaZrKkyePNm3apDJlyqTqGB999JFWrFhhdRgkzCvx4vND3bp1tXjxYnl4eDgkfgAAkkOOAwC4IvIbAAAAAGRdbpkdAICcY/z48fL399fQoUNVv3595cqVS6ZpyjRNnT17VjNnzlR4ePgDj3Py5El17txZM2bMUEREhNVg1KhRI9WqVctu27Jly+qHH36g8AsAspBr164pODhYUlxjf7NmzVLdabBkyRItX77c6hgwDMPKKQl/4h8/dOiQpk6d6ozLAQDAQo4DALgi8hsAAAAAZG3umR0AgJzDMAzVrFlTNWvW1Ouvv67w8HBt3LhR69ev15EjR1S7dm1r+cekREdHa/bs2Vq0aJFiYmKsoq/KlStr5MiRatKkSZL75cuXzynXAwBImzNnzkj6d0R3+/btU7X/yZMnNXXqVLtR4qZpqmrVqnrxxRdVtmxZhYeHa+vWrfr++++tzgNfX1+9/PLL9801AACkBzkOAOCKyG8AAAAAkLVR/AUg0xQpUkQ9e/ZUz549denSJd26dSvZbY8dO6bRo0fr7NmzVtFXwYIFNXjwYPXq1Uu5cuXKqLABAOl05coVu/u1a9dO8b6maWr8+PGy2WxWh4BhGHr11Vf13nvv2XUmdOjQQRs2bNA777wjwzAUExOjVatWadSoUQ67FgAAEiLHAQBcEfkNAAAAALI2ir8AOMymTZs0fPhwq9Emfgr3+Ntubm7WT65cuax/c+XKJXd3d+XJk0e5c+eWh4eHPDw8lC9fPhUoUECS9P3331uzfbm5ualjx45655135OXllWnXCwBImxs3bli3CxUqpEceeSTF+65Zs0bHjh2z6zRo3bq1Ro8eneT27du3186dO7VhwwZJcbmKjgMAgLOQ4wAAroj8BgAAAABZG8VfABwqflau+H/vJ+HIvpQcN76YzDRN/fzzz5owYYLq1q2rBg0aqEaNGmmOGQCQsSIjIyXF5YEiRYqkeD+bzaYvvvjCLn8ULlxYEydOvO9+L730ktVxcPXqVV25ciVVnRUAAKQUOQ4A4IrIbwAAAACQtVH8BcDhUlL4lZrt7t3eMAz9+eef+vPPP/Xjjz9Kkh566CG1aNFCzz//vOrXr5+6gAEAmSZfvnwp3jYgIECXL1+2GzH+3//+V4ULF77vfnXq1JG7u7tsNpsk6fTp03QcAACcjhwHAHBF5DcAAAAAyHoo/gLgMD4+PvLx8bHuJ5wF7N7bsbGxiomJUWxsrGJjY2Wz2RQVFaXo6GjZbDZFR0fr5s2bCg8PV1hYmK5du6ZLly7p4sWLunDhgsLCwuzO/ffff8vf31/+/v6qUKGC+vbtqxdeeEHu7rzNAUBWE7+kryRFRESkaJ/o6GjNmzfPbsR4yZIl9fLLLz9wX3d3d5UsWVLBwcGS4kaOAwDgDOQ4AIArIr8BAAAAQNZGVQQAp4lv3Eluecc7d+7o8OHDOnTokA4dOqSjR49qwYIFqlu37gOPHRwcrKNHj+qnn37S9u3bdf36deu58+fPa9y4cVqwYIFGjhypli1bOuaCAAAOUbRoUUlxBcF//fVXivbx8/NTSEiI3Yjx119/Xblz507R/vnz57du3759O/VBAwCQAuQ4AIArIr8BAAAAQNZG8ReADGOz2XT48GHt3btX+/bt07FjxxQTE2O3zZ49e1JU/FW2bFmVLVtW7dq106RJk3To0CF988032rJli6KjoyVJly5d0ptvvikfHx9NmjTJrtEIAJB5qlSpYt2OiIjQiRMnVKNGjWS3v337tmbPnp1oxHjnzp1TfM6Eo9MjIyNTGTEAAClDjgMAuCLyGwAAAABkbW6ZHQCAnGP48OF65ZVXNHfuXB0+fFg2m81aBtI0TRUsWDDRco4pVbduXX366afasWOHunXrJsMwrJGFmzZt0rBhwxx8NQCAtKpYsaIKFixodQSsWbPmvttPnz7dyg/xI8YHDx6cqqV9//77b+s2xcAAAGchxwEAXBH5DQAAAACyNoq/AGSYBg0aWIVe+fLl09NPP63Bgwdr7ty52rVrl37++WeNGzcuXecoVqyYPvjgA/n6+qpUqVKSpFatWmn69OmOuAQAgAMYhqHWrVtbOWHlypU6efJkktvu2LFD3377rd1SIZUqVdILL7yQ4vNdv35dt27dsjoq4pcsAQDA0chxAABXRH4DAAAAgKyN4i8AGaZZs2Z688035efnpwMHDmjRokUaPHiwmjdvrkceecSh56pVq5YCAgL00UcfaebMmSpQoIBDjw8ASJ/u3btLiutEiI6O1muvvaYtW7YoNjZWknT37l0tW7ZMQ4cOlWmadvuOGzfObvmQB/npp58kyTpO+fLlHXEJAAAkiRwHAHBF5DcAAAAAyLpSPs8yAKRT6dKlNWjQoAw7X5EiRdSlS5cMOx8AIOVq1qypdu3aaePGjTIMQ6GhoRo2bJjy5s2rQoUKKTQ0VDExMdZI8fh/u3XrpgYNGqTqXIGBgXb3K1as6MhLAQDADjkOAOCKyG8AAAAAkHUZ5r3DcAAAAIAMEBoaqq5duyokJESSEo0Ol2SNDjdNU9WqVdPKlSuVJ0+eFJ/jxo0batq0qSIjI2WapipUqKAtW7Y45gIAAEgGOQ4A4IrIbwAAAACQNbHsIwAAADKFl5eXFi1apJIlS1qjwu/9keI6DapXr65FixalqtNAknx9fRURESEprhPiqaeecvh1AABwL3IcAMAVkd8AAAAAIGui+AsAAACZ5tFHH9X69evVq1cvFSxYUKZp2v14eXlpyJAh8vX1lZeXV6qOHRwcrHnz5kn6d0R6u3btHH4NAAAkhRwHAHBF5DcAAAAAyHpY9hEAAABZQlRUlE6dOqW//vpLpmmqTJkyql69utzc0jZe4dixYzp79qx1P2/evPLx8XFUuAAApBg5DgDgishvAAAAAJA1UPwFAAAAAAAAAAAAAAAAANkQyz4CAAAAAAAAAAAAAAAAQDZE8RcAAAAAAAAAAAAAAAAAZEMUfwEAAAAAAAAAAAAAAABANkTxFwAAAAAAAAAAAAAAAABkQxR/AQAAAAAAAAAAAAAAAEA2RPEXAAAAAAAAAAAAAAAAAGRDFH8BAAAAAAAAAAAAAAAAQDZE8RcAAAAAAAAAAAAAAAAAZEMUfwEAAAAAAAAAAAAAAABANkTxFwAAAAAAAAAAAAAAAABkQxR/AQAAAAAAAAAAAAAAAEA2RPEXAAAAAAAAAAAAAAAAAGRDFH8BAAAAAAAAAAAAAAAAQDZE8RcAAAAAAAAAAAAAAAAAZEMUfwEAAAAAAAAAAAAAAABANkTxFwAAAAAAAAAAAAAAAABkQxR/AQAAAAAAAAAAAAAAAEA2RPEXAAAAAAAAAAAAAAAAAGRDFH8BAAAAAAAAAAAAAAAAQDZE8RcAAAAAAAAAAAAAAAAAZEMUfwEAAAAAAAAAAAAAAABANkTxFwAAAAAAAAAAAAAAAABkQxR/AQAAAAAAAAAAAAAAAEA2RPEXAAAAAAAAAAAAAAAAAGRDFH8BAAAAAAAAAAAAAAAAQDZE8RcAAAAAAAAAAAAAAAAAZEMUfwEAAAAAAAAAAAAAAABANkTxFwAAAAAAAAAAAAAAAABkQ/8f1RbccLD24uYAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import matplotlib as mpl\n", "from matplotlib.font_manager import FontProperties\n", "import seaborn as sns\n", "\n", "dpi = 300\n", "mpl.rcParams['figure.dpi']= dpi\n", "\n", "# sns.set(font=['sans-serif'])\n", "# sns.set_style(\"whitegrid\",{\"font.sans-serif\":['Microsoft JhengHei']})\n", "\n", "from matplotlib.font_manager import FontProperties\n", "import matplotlib.pyplot as plt \n", "myfont = FontProperties(fname=r'/home/gezi/py3env/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/微软雅黑.ttf')\n", "\n", "import numpy as np; np.random.seed(0)\n", "import seaborn as sns; sns.set()\n", "import matplotlib.pyplot as plt\n", "f, ax = plt.subplots(figsize=(10,10))\n", "#ax = sns.heatmap(cm2, ax=ax,vmin=0, vmax=1,annot=True,fmt ='0.1g', xticklabels=models, yticklabels=models)\n", "#ax = sns.heatmap(alpha,cmap = 'RdBu',ax=ax,vmin=0, vmax=1,fmt ='0.1g', xticklabels=words, yticklabels=words)\n", "ax = sns.heatmap(alpha,cmap=\"YlGnBu\",ax=ax,vmin=0, vmax=1,fmt ='0.1g', xticklabels=words, yticklabels=words)\n", "#设置坐标字体方向\n", "label_y = ax.get_yticklabels()\n", "plt.setp(label_y, rotation=0, horizontalalignment='right',fontproperties=myfont)\n", "label_x = ax.get_xticklabels()\n", "plt.setp(label_x, rotation=90, horizontalalignment='right',fontproperties=myfont)\n", "plt.title('Self Attention',fontproperties=myfont, fontsize=25)#标题\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 308, "metadata": {}, "outputs": [ { "data": { "image/png": "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KKG6deuqS5cukn67H+bNm6f58+crPT3deM8TJ05o7Nix+vTTT+3O6wjjxo1TamrqLX+tTJkyGjJkiMLDw3Ns3s/KytLmzZs1bdo0HT582K4M8+bN05AhQ1SuXDm7rgMAAAAAIL/ystlsNleHAAAAAJB/bdq0Sc8+++wdJ0TkpGbNmho7dqweeughByazxqlTp9SzZ8/bfjD6V8WKFdOECRNy3Rxjs9n0+eefa/LkyUbNBD4+Plq0aJFq166dq/1uatu2rWJjY3Osi4qKUvny5fO011999NFHmjZtWo51EydOVK9evRy6t6eIi4tT27Ztc3zfBQUF6fvvv1fBggXt3mP69OmaMmVKjnW+vr7avHmzSpYsafcejtCqVSvFx8ffscbHx0dHjhxxUqLfnD59Wh07dsyxrnnz5pozZ471gf5/r7zyil3H1Xbr1k2vvvpqrqc0nj59WqNGjTKeitW5c2d98MEHudrrpoULFxo1wTZr1kxHjx7V1atX//ZrjRo10sSJE1WlShW79z948KBGjx6tc+fOGV9TtmxZRUVFydfXsT/H6W734ZgxY7R8+fIc6yZNmqTw8HCH7Hnu3Dl1795dKSkpxtfcc889euONN9S6des87x8fH68333xT69evt+s6R/4d9/jjj2vv3r051rVt21YbNmz429d9fHw0dOhQDR8+XAUKFLBrb5vNplmzZun999+3qynyqaee0pgxY+zaCwAAAACA/MpzfnQeAAAAgEd6+OGHNW7cuDytER0draFDh2rQoEE6cOCAg5I5ns1mu+NEjL+qUaOGli5dmqepSF5eXho8eLA++uij204d+aOsrCx9+OGHud4PnmHJkiVGDZcdO3bMVeOXJIWFhcnLyyvHuhs3bmjZsmW52gPOtXnzZuPGL29vb40fP17vvfdeno7nrVSpkr799ls1adLEqH7NmjW5Pj7RXrt27bpl49eAAQP0zTff5KrxS5Lq1aunefPmqWrVqsbX/Prrr7edQIbcy87O1iuvvGJX41e7du20fPlyhzR+Sb9Ny/r444/12muvycfHx/i6iRMn6sKFCw7JYOpWjV+FCxfWrFmz9O9//9vuxi/pt3/HDB06VFOmTLHr9ds7QQ8AAAAAgPyM5i8AAAAAlhswYIDGjx9v1ChyJ9u3b1efPn303HPPOe3Df3t888032rNnj1FtaGio5s6d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N24Y1daoUcOutatWrWp81NL//vc/ZWRk2LU+IEk7duwwnl7XuXNn+fj4WJzIPg8++KBKlSplVHvy5Ent27fPYXub/l6kpqY6bE8T3t5m35KxOlenTp2M6n799VctXLjQ0ixwPne5D53NtCE1LS1NH3zwgcVpbm3mzJlGE9eqV6+upk2bOiERAAAAAABwVzR/AQAAAHCoiIgITZw40bjZyhm+/vpr49rcTEwKDw83qouPj9f06dPtXh+wZxqWOx35eJOPj49duRw5/cvf39+oLi4uzmF7mjDN9euvv1qao3379goKCjKqnTZtmsumIMEa7nIfOtujjz5q/Nrnz5+v3bt3W5zoz44dO6ZFixYZ1T7++OMWpwEAAAAAAO6O5i8AAAAADmWz2TRnzhw98cQTOnbsmKvjaNWqVdqzZ49RbbFixVS3bl279wgPD5efn59R7cyZM7V//36793CUK1euuGxv5M61a9cUGRlpVFuxYkU1aNDA4kS5Y8/Rj6tWrXLYMYyBgYFGdTExMQ7Zz5RprmvXrik+Pt6yHAUKFFDXrl2NahMTE/X6669blsVEcnKyS/fPb9zlPnS2YsWKqUePHka1NptN//73v5WYmGhxqt9kZGRo7NixRlO/Spcurd69ezshFQAAAAAAcGc0fwEAAACwxP79+9WrVy9NmDDBZZNifv75Z7saFXr06GF8BNYflS5d2nj6140bNzR8+HCdO3fO7n3yavny5frnP//p9H2RNytXrlRaWppRbbdu3SxOk3v33nuv6tSpY1R77do1rVmzxiH7lihRwqjOkUdNmggKClJAQIBR7d69ey3NMmTIEOPjMdetW6cpU6ZYmudWEhIS9NRTT2nr1q1O3zs/c6f70NlGjBihggULGtXGx8frmWeesfxoa5vNptdee03Hjx83qh85cqTxawAAAAAAAPkXzV8AAAAALJOVlaWvvvpKbdu21VtvveXUY9X279+vQYMGGU+J8fb2Vp8+fXK939NPP23cPJGQkKABAwbol19+yfV+9jh79qyee+45jRkzRlevXnXKnnAce45AdOfmL8m+6V+OOvqxfPnyRnWRkZFGk3YcKSQkxKhu7dq1luaoVKmS8fQvSZo+fbrTGsCys7M1f/58devWTVu2bHHKnncbd7kPna1MmTIaNGiQcf2BAwc0dOhQyxras7OzNWHCBC1dutSo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Qnlex9ECAwM1btw4V8f4mwYNGmju3LkKCQlxdZTf+fr6qmTJkq6OkS+5633obF5eXho/frz++9//yt/f39VxJEmDBw/WrFmzFBgY6OooAAAAAADATdH8BQAAAMCh6tat67Yfzrdu3VorV65Ur169nLKft7e3xo4dqylTpqhIkSJO2fN2/Pz89Oyzz2rWrFkuzQEz9hz52K1bNwuTWMee6V+5PUL1jypUqKC33npLXl5eeV7L0bp06aInnnjC1TH+JjQ0VBEREXrooYdcHUW1a9fWwoULdf/997s6Sr7lrvehK/Tr10/z589XjRo1XJahbNmy+vTTT/XSSy9Z2qwOAAAAAAA8H81fAAAAAByqSZMmWrt2rUaPHu02U6YaNWqkL7/8UjNnzlS5cuWcvn+XLl20atUqdenSxel7e3t7Kzw8XKtXr9bo0aPdZpIJbu/w4cM6duyYUW1gYKDatm1rcSJrhIWFyc/Pz6j2p59+UkxMTJ737NKli9588023bKR49dVXndaYao9ixYrps88+07vvvqsSJUo4ff8KFSronXfeUUREhGrXru30/e827nofukLt2rW1ZMkSvfzyy049btHf31+DBw/WqlWrPPb5DgAAAAAAnIvmLwAAAAAOFxQUpGeffVYbNmzQzJkz1adPH6c3DQQGBqpXr15auHCh5s2b5/JpMaVKldKUKVO0cOFCdejQwfLpQ8WLF9fQoUMVGRmpSZMmqUKFCpbuB8exZ8pV+/btVbBgQQvTWKd48eJq1aqVcX1ERIRD9u3bt69mzZqle+65xyHrOYq3t7cmTpyo//znPwoICHB1nL/p3r27IiMj9eKLL6p06dKW7uXl5aUWLVroo48+0tq1a9WjRw95e/MtLGdw9/vQ2Xx9ffXPf/5TmzZt0gsvvKBSpUpZtlfhwoX11FNPacOGDXrppZc45hEAAAAAABjzdXUAAAAAAPmXj4+PWrdurdatW8tms+n48ePavXu39u7dq0OHDun06dOy2WwO2cvLy0vVq1dXkyZN1KZNGzVv3twtp1zVr19f06ZN07lz57Ry5UqtXLlS0dHReV7Xy8tL9957r+6//361b99eTZs2dcvpRshZpUqVNGLECKPaDh06WJzGWs8++6xq1aplVOvIBtLmzZtr1apV+vrrrzV37lzFxcXZvUalSpU0cOBAh2W66R//+Ic6duyo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0ybjtK327ds7tO7QoUP1xRdfKDY2VsnJyRo6dKguX76shIQEu3EPP/ywJk+erHvuuUfS9aDZiy++qJo1a6p79+4aPHiwWrZsqa1bt+rEiRM6d+6c0tPTjfkeHh6SpC+++MLoq1y5sgIDAx3+GUyfPl3Tp0/P9l1UVJQaNmx4y7lt27bVwoULHd4LAAAAAAAAAAAAAAAAQNHkdOGvBg0aGM9RUVG6//77jfaNk79uDlZ17NjRoXU9PDzUpUsXLViwQNL16x9vVqdOHYWEhGQJk/3444+SpJiYGK1cuVJDhgwxwl/S9dO/bg6oeXh4KCEhQbt27ZIklStXTo888ogWL17sUJ1Fwblz54wT2vLi888/V+3atQuwIgAAAAAAAAAAAAAAAODu4/Thr759+xptd3d3nT592rjysXbt2qpbt+4t17JarTp06JC+/vprbdq0KcspX9L1QNm0adPUo0cP42Sxm33//ffGc8uWLSVJLVq0MPp27typRo0aGW0PDw9t2LDBOJmsR48e8vX1NU4Sc0RqaqrOnTtntL28vG57teUNFStWdHifvLLZbMaVlnlx81WeAAAAAAAAAAAAAAAAAPLG6cJfFSpUkJ+fn65cuaLDhw8rNTXVeOfh4aErV67o/vvv1+HDh9W5c+cs82NjY/Xdd99p79692r17ty5dupTjflarVR999JHuu+8+1a9fP8v73bt3G88PP/ywJCkwMNCoMTIyUgMHDjTGlChRQuvWrZMkWSwWPfvss6pWrZo2b97s0PePiYnRyJEjjXapUqW0aNEiu4AZAAAAAAAAAAAAAAAAADhd+EuSOnfurFKlSql169bGCVrS9ZO/GjZsqNWrV+vEiRPy9/fX2bNn9e233+rw4cOKiopSbGzsLdctV66cnn76aQUFBemdd95RZGSkJOn48ePq2bOnunfvrv79+xtXEkZGRuqnn34y9m7btq0kycXFRc2aNdO3336r5ORkfffdd8Ye58+f18mTJyVJDz30kKpVq+bw9/7mm280YcIEJSUlSZIqV66siIgI1apVy+E17oQqVapo27ZtZpcBAAAAAAAAAAAAAAAA3NWcMvw1depU4/lGkEqSPD09jec6depIun5S1syZM+1OCLtZqVKl9Pjjj6tTp0568MEH5erqKklatGiRpk+frtWrV0uS0tPTtWrVKq1evVqNGzeWv7+/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/eK4444rd65evXpx++23R7169bLKV1paGrNnz07G++23XzRq1CirewIAAAAAAAAAAOlR/qoiU6dOLTeuTPlr2rRp8fbbb5c7V1RUFPfff3+UlZVllW/27NmxZs2aZNy5c+es7gcAAAAAAAAAAKRL+auKvPXWW8lxhw4dom3btru1/qWXXooLL7wwNmzYsM21yZMnx/Dhw2PLli2VzjdlypRy46OOOqrS9wIAAAAAAAAAANKn/FUFSktLY9q0acl4d3f9+t///d8YOnRoFBUVRUREJpOJc889Nxo2bJjMefrpp2PIkCGxfv36SmV89tlny4179epVqfsAAAAAAAAAAADVg/JXFZg5c2a5VypWtPy1bt26uPzyy+M3v/lNlJaWRkRE3bp1Y8yYMXHttdfG3XffHQ0aNEjmv/7661FYWBhz5szZrXzvvvtuLFy4MBl37tw52rRps1v3AAAAAAAAAAAAqhflryrw6quvJscNGjSI7t2773LNnDlzorCwMF5++eXkXH5+ftx2221RWFgYERE9evTYpgC2aNGiOOuss2LChAlRVlZWoXz33XdfufGPf/zjCq0DAAAAAAAAAACqL+WvKrB1+euHP/xh1K9ff4dzN23aFLfddlsMGDAgFi9enJxv3rx53HfffXHyySeXm9+zZ8944IEHomXLlsm5oqKiGD16dJx55pkxa9asnWabPXt2vPHGG8m4QYMG0bdv3wp/bwAAAAAAAABA9ZbJ1PFVA76gMvzNydInn3xS7pWKO3vl45QpU+LUU0+Ne+65J4qLi5Pzhx56aDzxxBPRo0eP7a474ogj4vHHH4/OnTuXOz9r1qwYMGBAXHvttfH5559vs660tDRuvPHGcucGDBgQzZo1q8i3BgAAAAAAAAAAVGPKX1l66aWXyo23V/6aN29eDBkyJAYPHhxLliwpd+3000+PyZMnR9u2bXf6nNatW8ekSZOif//+5c6XlpbGY489Fscff3zceOON5XYTmzBhQsycOTMZ169fPy644IIKf28AAAAAAAAAAED1lZd2gFz33HPPJcft2rWLDh06JOOFCxfGHXfcES+88EKUlpaWW9esWbO44YYb4pRTTqnwsxo0aBC33nprnHjiiXH99dfH6tWrk2ubNm2KiRMnxsMPPxynnXZanHHGGfH73/++3PqLLroo9t577939FgEAAAAAAAAAgGrIzl9ZmD17dixYsCAZH3300cnxkiVLon///vHcc89tU/w6/vjj4/nnn9+t4tfW+vTpE88991z07dt3m2tbtmyJrl27xkMPPVTu1ZIdO3aMwYMHV+p5AAAAAAAAAABA9aP8lYVXX3213HjrVz62a9cubrjhhnLX27RpE+PGjYu77rorWrZsmdWzmzdvHmPHjo2JEydG165dk/OFhYVx1llnxdixY2PAgAER8fXrHn//+99HvXr1snomAAAAAAAAAABQfXjtYxYuv/zy6N69ezzzzDPxxhtvRM+ePctdLywsjHfeeSdeeOGFuOCCC+KCCy6IBg0aVGmGbt26xcMPPxyvvPJKPPHEE3HddddFREReXl7ceOON0bx582jfvn0ceuihVfpcAAAAAAAAAAAgXZmysrKytEPUBCUlJZGXt22XbuPGjbF27dpo1apVCqnIzsdpBwCqSEH7X6cdIWsbP7s+7QjUEGWR+7/6ZSKTdgQAAAAAgBqgU9oBqEKdfvjntCNQBT5+59K0I5CD7PxVRbZX/IqIKCgoiIKCgm85DQAAAAAAAAAAUNMpfwEAAAAAAAAA5LKMt2ZAbVUn7QAAAAAAAAAAAADsPuUvAAAAAAAAAACAHKT8BQAAAAAAAAAAkIOUvwAAAAAAAAAAAHJQXtoBAKjeOp7zXtoRsrbxs+vTjgDVxnurP0k7Qta6tTww7QgAAAAAAABQLdj5CwAAAAAAAAAAIAcpfwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAclJd2AAAAAAAAAAAAsmDrH6i1fPwBAAAAAAAAAABykPIXAAAAAAAAAABADlL+AgAAAAAAAAAAyEHKXwAAAAAAAAAAADlI+QsAAAAAAAAAACAHKX8BAAAAAAAAAADkIOUvAAAAAAAAAACAHJSXdoCaqKioKM4666zo3r17nH/++bHPPvtsd97YsWPjww8/jIiIoUOHRpcuXb7NmDu1dOnSeP/995PxD37wg2jVqlWKiQAAAAAAAAAAgK0pf+0B9957b8yZMyfmzJkTkyZNiueeey7222+/beZ98MEHMW3atIiIGDhw4Lcdc6fefffdGDZsWDK+/fbb4+STT04xEQAAAAAAAACwXZlM2gmAlCh/VbGFCxfGPffck4xPP/307Ra/dscnn3wSn3zySYXmNmzYMI499tisngcAAAAAAAAAAFR/yl9VqKSkJK655pooKiqKiIg2bdqU2z2rsl588cX405/+VKG5bdu2jddffz3rZwIAAAAAAAAAANVbnbQD1CTjxo2L6dOnJ+PRo0dH48aNU0wEAAAAAAAAAADUVHb+qiJvvvlm3H///cn4vPPOi6OOOioiIpYtWxaDBg3aZs2KFSuS41GjRkXDhg3LXd93331j/Pjx0bVr1+2u356mTZtWJj4AAAAAAAAAAJBjlL+qwD//+c+46qqroqysLCIiunbtGldffXVyvbi4OBYsWLDTe2xdBPumo48+Oo4++uiqCQsAAAAAAAAAANQIXvuYpYULF8YvfvGLWLduXUREtGjRIm6//fbIy9OrAwAAAAAAAAAA9hwNpSwsWrQoBg0aFJ9//nlEROTn58e4ceNin332KTevffv2MXfu3G3Wn3feeTFt2rSIiBg/fnz07t17z4cGAAAAAAAAAABqBDt/VdL7778fAwYMiKVLl0ZERCaTid/+9rfRo0ePZE5xcXFa8QAAAAAAAAAAgBpO+asSPv300xg4cGB88cUXybnhw4dH3759k/GUKVPixBNPjEcffTRKSkrSiAkAAAAAAAAA1AaZjK+a8AWVoPxVCR06dIjvf//7yfiyyy6L888/PxkXFxfHmDFjYtmyZTFq1Ki49tpr04gJAAAAAAAAAADUYMpflZDJZGLEiBGRyWRi5MiRMWTIkHLXJ06cGPPnz4+IiLy8vLjgggvSiAkAAAAAAAAAANRgeWkHyFWHHHJIPPTQQ9GtW7dy51etWhV//vOfk/G5554b3/3ud7/teFXuiiuuyPoe06dPj0aNGlVBGgAAAAAAAAAAQPkrC98sfkVEjBo1KtauXRsREXvttVcMGTIkevXqFatXr97pvQYPHrzd8xMmTIjx48fHe++9V+FcTZo0iSlTplR4PgAAAAAAAAAAkHuUv6rQE088EW+88UYyvuGGG6Jx48ZZ33fz5s2xcePGCs+vW7du1s8EAAAAAAAAAACqN+WvKrJ8+fIYM2ZMMj7ttNOiT58+ERHRo0ePWLNmTaXu27Rp0yrJl62LL744fvCDH2R1jwYNGlRRGgAAAAAAAAAAQPmrChQVFcUVV1wR69ati4iIFi1axLXXXptcHzt2bFb3/8tf/rLNudGjR8eECRMi4uti1tChQ7N6xq4ccsgh0bt37z36DAAAAAAAAAAAoOLqpB2gJrj55ptj5syZyfi73/1uNGvWbJfrxo4dG3379o2+ffuWe10kAAAAAAAAAADArtj5K0uPPfZYPPLII5Vau3z58pg3b15ERKxdu7YqYwEAAAAAAAAAtYWtf6DW8vHPwt///vf49a9/nXYMAAAAAAAAAACgFlL+qqSZM2fGkCFDori4OO0oAAAAAAAAAABALaT8VQmffvppXHjhhbFx48bk3LHHHptiIgAAAAAAAAAAoLbJSztALiotLY21a9cm40GDBkWXLl3ib3/723bnd+3atVxRbHuGDRsWw4YN2+b8kCFD4rLLLssuMAAAAAAAAAAAUOPY+asSDjzwwOjbt29ERBx//PFx1VVXpZwIAAAAAAAAAACobez8VUnnnXdeLF26NMaNGxd169bd6dwDDjhguzt/rVq1KtavXx8REXvttVc0btx4mznNmzevmsAAAAAAAAAAAECNovxVSZ07d477778/GjRosMu5Tz755HbPX3XVVfHss89GRMTVV18d/fv3r9KMAAAAAAAAAABAzeW1j1lo2LBh2hEAAAAAAAAAAIBays5fAAAAAAAAAAA5rCyTSTsCkBI7fwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAcpPxVjZWWlsaSJUvirbfeivXr16cdBwAAAAAAAAAAqEby0g7A1+bPnx9//etfY8GCBbFw4cJYsGBBfPbZZ7F58+aIiHj55ZejcePGKacEAAAAAAAAAACqC+WvPay4uDhWrlwZy5cvj2XLlpX776xZs5J5d999907vs2XLlj0dFQAAAAAAAAAAyCHKX3vQ1KlTY/DgwVFaWlqp9XXq1InWrVvH/vvvHwUFBeWuFRUVJceZTGabtV988UXMnj27Us+NiJg7d2658T//+c9tMmTjsMMOi2bNmlXZ/QAAAAAAAAAAoLZR/tqDDjvssArN22uvvWL//feP9u3bx/777x8HHHBAtG/fPtq3bx/16tXb7pqty1kNGzbc5vrMmTPj4osvrlzw7djVzmS7a8KECXHkkUdW6T0BAAAAAAAAAKA2Uf7ag/7rv/4rDj744Pjwww8jPz8/2rVrFx07dowOHTpEhw4dkuPGjRvv8B7PPvts5Ofnx1577RWNGjWKkpKSeOmll2LGjBnJnLZt234b3w4AAAAAAAAAUB1t+8IwoJZQ/trDxowZE/n5+dG+ffvIy9v9H/fzzz8fb7zxxg6v5+fnx1FHHZVNRAAAAAAAAAAAIAcpf+1hBx98cFbrO3bsuNPy15AhQ6JFixbbnD/uuOPKvRoSAAAAAAAAAACoWZS/qrmDDjoo8vPzo7i4ODlXUFAQnTp1irPPPjv69++fYjoAAAAAAAAAACAtyl9V5NRTT41TTz21yu/br1+/6NevX0RElJaWRp06dar8GQAAAAAAAAAAQO7RJMohil8AAAAAAAAAAMD/0SYCAAAAAAAAAADIQcpfAAAAAAAAAAAAOUj5CwAAAAAAAAAAIAflpR0AAAAAAAAAAIAs1MmknQBIiZ2/AAAAAAAAAAAAcpDyFwAAAAAAAAAAQA7y2keAPawsytKOkJX3HmiWdoSstf/dkrQjZO2zq9ulHSFrX27+OO0IWWta74C0I2StU9P6aUfIWq7/fzUiIhO23wYAAAAAACB7dv4CAAAAAAAAAADIQcpfAAAAAAAAAAAAOUj5CwAAAAAAAAAAIAcpfwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAclJd2AAAAAAAAAAAAspDJpJ0ASImdvwAAAAAAAAAAAHKQ8hcAAAAAAAAAAEAOUv4CAAAAAAAAAADIQcpfAAAAAAAAAAAAOUj5CwAAAAAAAAAAIAcpfwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAcpPwFAAAAAAAAAACQg/LSDgAAAAAAAAAAQBYyaQcA0mLnLwAAAAAAAAAAgByk/AUAAAAAAAAAAJCDlL8AAAAAAAAAAABykPIXAAAAAAAAAABADlL+AgAAAAAAAAAAyEHKXwAAAAAAAAAAADlI+QsAAAAAAAAAACAHKX8BAAAAAAAAAADkoLy0AwAAAAAAAAAAkIU6mbQTACmx8xEVHPQAACAASURBVBcAAAAAAAAAAEAOUv4CAAAAAAAAAADIQcpfAAAAAAAAAAAAOUj5CwAAAAAAAAAAIAcpfwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAcpPwFAAAAAAAAAACQg5S/AAAAAAAAAAAAclBe2gEAAAAAAAAAAMhCJpN2AiAldv4CAAAAAAAAAADIQcpfAAAAAAAAAAAAOUj5CwAAAAAAAAAAIAcpfwEAAAAAAAAAAOQg5S8AAAAAAAAAAIAcpPwFAAAAAAAAAACQg5S/AAAAAAAAAAAAclBe2gGo3k444YT48ssvIyLiwAMPjMmTJ6ecCAAAAAAAAAAoJ5N2ACAtyl/s0GeffRaLFi1Kxt27d08xDQAAAAAAAAAAsDWvfWSHpk+fXm58wgknpJQEAAAAAAAAAAD4JuUvdmjGjBnJcevWraNLly4ppgEAAAAAAAAAALam/MUObb3zV58+fVJMAgAAAAAAAAAAfJPyF9u1du3a+OSTT5Lxf//3f6eYBgAAAAAAAAAA+CblL7ZrxowZUVZWFhERzZo1ix/+8IcpJwIAAAAAAAAAALam/MV2zZgxIzn+0Y9+FHl5eSmmAQAAAAAAAAAAvkn5i+2aPn16cnzCCSekmAQAAAAAAAAAANge2zmxjZKSkvjggw8iIqJBgwbRq1evlBMBAAAAAAAAADtUJ5N2AiAldv5iGx999FFs3LgxIiJ69eoVDRs2TDkRAAAAAAAAAADwTXb+YhtdunSJuXPnph0DAAAAAAAAAADYCTt/AQAAAAAAAAAA5CDlLwAAAAAAAAAAgByk/AUAAAAAAAAAAJCDlL8AAAAAAAAAAABykPIXAAAAAAAAAABADlL+AgAAAAAAAAAAyEF5aQcAAAAAAAAAACALmbQDAGlR/gLYwzI5/pvWltLitCNkrd5/NUo7AhHRvH6ntCNkrbh0Y9oRsvbxV5vTjpC1bi1z+/+rAAAAAAAAUFW89hEAAAAAAAAAACAHKX8BAAAAAAAAAADkIOUvAAAAAAAAAACAHKT8BQAAAAAAAAAAkIOUvwAAAAAAAAAAAHKQ8hcAAAAAAAAAAEAOUv4CAAAAAAAAAADIQXlpBwAAAAAAAAAAoPLKMpm0IwApsfMXAAAAAAAAAABADlL+AgAAAAAAAAAAyEHKX9XIypUro7S0NO0YAAAAAAAAAABADlD+2kPWrFkTZ555ZvL1r3/9a6fzy8rKYuDAgdG7d++46aabYv78+VWWZf369XHdddfFggULquyeAAAAAAAAAABAuvLSDlBTFRcXx8yZM5NxUVHRTudPmzYtKWc99NBDUVhYWCU55syZE0OHDo3PPvss3nnnnXjssceicePGVXLvXSkpKYlFixbF/PnzY/78+bFu3bq48sorv5VnAwAAAAAAAABATaf8VU1MnDgxOe7atWt06dKlSu67du3aWLJkSUREzJ8/P6688sq46667ok6dqtn0bcOGDbF06dJYvHhxLF68OJYsWRJLliyJzz777P+zd99RVlZ3+7g/ZwrMwNClFwWkBLsSJLGXYImCMRJ7ARXxK7aABUuUWFDz2sUY0eSNRo2I7SX2BKwhFhCsgChKLzr0OszM7w9/nngYylTODFzXWrOYvc/e+7kHccUVb/cTs2bNioKCguTaRCIR55xzTjRo0KBSng0AAAAAAAAAANsz5a9qYO7cuTFu3Ljk+LTTTqu0s3/2s5/FhRdeGHfddVdERLz++utxxx13xJAhQza7b8WKFTFz5szIz8+PxYsXJ39dsGBBLFy4MObPnx/z58+PFStWlDpLcXFxfPDBB3HYYYdV6GcCAAAAAAAAAACUvyrk7bffjoceeigiIlq2bBnDhw8v1zkPPvhgFBYWRkRE06ZN44gjjqi0jBER5513Xrz77rsxfvz4iIgYOXJk7L777tGrV69N7nn11Vdj6NChFX52nTp1ol27dtG+ffvYaaedolWrVhU+EwAAAAAAAAAAUP6qkIULFyYLVe3bty/XGfPnz4/Ro0cnx7/+9a+jqKgo1q5dW+5ciUQiatWqlRxnZGTEH/7wh+jdu3fk5+dHRMTQoUOjU6dO5c7942ftsMMO0apVq2jbtm20adMm2rVrF23bto0dd9wxmjVrFolEokLPAAAAAAAAAAA2I8O/l4ftlfJXmj3wwANRUFCQMn7ggQcqdGbr1q1j7NixKXNNmzaNG264IS644IKI+P61jhdeeGGMGjUq6tSps9nz6tevHz179oxmzZolv1q0aBGtWrWKli1bphTNAAAAAAAAAADYfi1cuDA++uijmD17dqxatSpycnKiZcuWseuuu0bbtm3THS/FihUr4pNPPonZs2fH8uXLY82aNZGXlxcNGjSIzp07R6dOnSIzMzPdMTdL+SuN5syZk3LrV1U7/PDDo2/fvvHUU09FRMQXX3wR1113XfzhD3/Y7L6uXbvGvffeuzUiAgAAAAAAAABQA40dOzZGjhwZH374YRQXF290TdeuXaNfv37Rp0+ftL1JrrCwMF588cV48sknY8KECVFUVLTJtbm5udGrV6845ZRTYs8999yKKUsvI90Btme33HJLyq1fW8OVV14ZrVu3joiIli1bxoknnrhVnw8AAAAAAAAAwLZj5cqVcdFFF8X5558fEydO3GTxKyJiypQpccUVV8QZZ5wR33777VZM+b0vvvgi+vbtG0OGDIn3339/s8WviIjVq1fH888/HyeeeGJcffXVsWLFiq2UtPTc/JUm//73v+PVV19NjocMGRLnnntuypqCgoLIzs6u1Ofm5eXFLbfcEo8++mjccMMN0bBhw0o9HwAAAAAAAACA7cPKlSujX79+MXny5DLte++99+KUU06Jxx57LJo2bVpF6VJ9/PHH0a9fv1i+fHm59o8ePTqmT58eDz/8cOTl5VVyuvJz81carF+/Pm666abkuG3btnHmmWemrPnggw/isMMOizfffLPSn9+jR4+49957Fb8AAAAAAAAAACi3q666qkTxq1WrVnHVVVfFmDFj4v33348XX3wxbrzxxujYsWPKum+++SYuvPDCWL9+fZXnXLp0aQwYMKBE8atp06Zx0UUXxahRo+Lf//53TJgwIcaOHRsjRoyIX/7yl5GRkVqtmjRpUvzud7+r8rxlofyVBn/+859j+vTpyfHll18etWrVSo7ff//9OPfcc2PBggUxcODA+Otf/5qOmAAAAAAAAAAAsFFjx46Nl19+OWWuR48e8X//939x5plnRufOnaN+/frRsWPH6Nu3bzz33HNx5JFHpqz/8MMP4+9//3uVZ7333nsjPz8/ZW6//faLF198MS644ILYY489okmTJpGXlxetW7eOww8/PO64447461//WuKWrxdeeCE++OCDKs9cWspfW9m0adPinnvuSY579OgRvXr1SlnTuHHjaNy4cUREFBYWxs033xzXXnvtVmk6AgAAAAAAAADA5hQXF8fdd9+dMteqVav44x//GPXq1dvonlq1asUdd9wRu+yyS8r8Aw88EKtXr66yrIWFhTFmzJiUuZYtW8a9994b9evX3+zeHj16xC233FJifsPz0kn5aysqKCiIK664IgoKCiIiIjs7O66++uoS6zp27BijRo2Kbt26JedGjRoVgwYNijVr1my1vAAAAAAAAAAAsKF//etfMWXKlJS5q6++usQtWRvKzMyMG2+8MWVu0aJFMWrUqErP+IPPPvsslixZkjJ32mmnRd26dUu1/xe/+EWJV1a+9957lZavorLSHWB78uCDD8Znn32WHJ933nnRtWvXja5t0qRJPPLIIzFgwICYOHFiRESMGzcuzj777HjggQc22ZL8wb///e+46667Nvl53759o2/fvqXK/d5770WXLl1Ktba0Hnnkkdh3330r9UwAAAAAAAAA2C4l0h2A7c1LL72UMm7dunUcdthhpdrbrVu32GeffWLChAnJuZdffjnOPPPMSs34gwULFpSY++lPf1qmM7p37x5ffvllcrxw4cIK56osbv7ainr16hXNmzePiIguXbrEwIEDN7u+Xr168dBDD8Xee++dnPvggw/ioosu2uKzFi9eHJMnT97k1/z58yv2wwAAAAAAAAAAsN0pKCiIN954I2WuT58+kUiUvoX4q1/9KmU8adKk+O677yol34Y29krJBg0alOmMRo0apYx/eOtfdaD8tRV16tQpHnvssWjdunUMHz48srOzt7inbt26MXLkyNh9990j4vtC2GWXXVbVUWPdunVV/gwAAAAAAAAAAGqWSZMmxfLly1PmevToUaYzNnxbXFFRUbz11lsVzrYxjRs3LjG3bNmyMp2x4Wsjd9hhhwplqkxe+7iVtW3bNsaMGVPq94ZGROTl5cXIkSNjwIABceWVV0a3bt22uOfAAw+MMWPGpMzddddd8a9//atUz1y7dm3y+/333z/uueeeza5fsmRJHHroocnxCy+8EC1bttzk+pycnFLlAAAAAAAAAACg+pg6dWrKODMzM/bYY48yndGuXbvYYYcd4ttvv93kuZVll112iUQiEcXFxcm5CRMmJC9iKo2JEyemjH/8Fr90U/5Kg7IUv37QsGHDePLJJ0t9RV69evWiXr16KXP169cv9fNWrVqV8uwtZf5xWSzi+3JXeX5OAAAAAAAAAACqr6+++ipl3LJly6hTp06Zz+nQoUNK+WvGjBkVzrYxDRs2jP322y/efvvt5Nyjjz4aJ598cqkuLxo3blxMmzYtZe6EE06o9JzlpfyVJvfee2/cd999lX7uv/71r2jTpk2Fz1m4cGHy+7y8vAqfBwAAAAAAAABAzffll1+mjFu1alWuczZ8o9yGpbLKdMkll8T48eOjsLAwIiLmzJkTF110Udxxxx2b7cVMmjQprrjiipS5I444Inr27FllWcsqI90BqJ5+XP5q3rx5GpMAAAAAAAAAAFBd/LhTEhHRokWLcp2zYflrwYIF5c60JbvttltcffXVKXNvvPFGHHvssfHwww/HlClTYuXKlbF+/frIz8+Pt99+O4YOHRqnnnpqLF26NLlnn332ieHDh1dZzvJw81c1kJWVFbVq1SoxX1hYmHydYiKRiNzc3I3u//ErGivLj1ua5W1oAgAAAAAAAABQOitWrIiVK1dW6TPq1q1b4TfAbdhTKe95G+5bs2ZNFBUVRUZG1dxldeqpp0ajRo1i2LBhsWTJkoiImDt3btx2221b3JubmxtnnnlmXHDBBRvt+KST8lc1cOyxx8Ytt9xSYv7dd9+NM844IyK+L2CNHTt2o/u7dOlSqXnWrl0bM2fOTI7btWtXqecDAAAAAAAAAJDqL3/5S9x3331V+oxBgwbFhRdeWKEzNix/5eTklOucje1btWpVhctpm3P00UfHAQccEH//+9/j2WefLfEKyw0lEok4+eST48ILL4zGjRtXWa6KUP6ihMmTJyffcZqRkRFdu3ZNcyIAAAAAAAAAYJMSiXQnYDuyevXqlHF5b8LaWPlr5cqVVVr+ivi+F/P+++/HrFmztri2uLg4Hn/88ZgwYUKcf/75cdRRR1VptvJQ/qKE8ePHJ7/v0KFD1KlTJ41pAAAAAAAAAACgYvLz82Po0KHx+uuvp8zXrVs39t5772jdunXk5ubG0qVL4/PPP4+pU6dGUVFRRERMnTo1LrnkknjppZfitttuK/dtZ1VB+YsSfvx6yX333TeNSQAAAAAAAAAAqE5yc3OjoKAgOV63bl25zlmzZk2Jubp165Y71+Z89913cfrpp6e85rFOnToxePDg6Nu3b9SuXbvEnpkzZ8add94ZL774YnLulVdeiZUrV8aDDz4YmZmZVZK1rDLSHYDqZerUqTFlypTkeP/9909jGgAAAAAAAAAAqpMN3yC3sRJXaWxsX1W9ne7yyy9PKX41aNAgRo0aFaeddtpGi18REe3atYs777wzLrroopT5t99+Ox5++OEqyVkebv4ixeOPP578vl69erHffvulMQ0AAAAAAAAAwPahX79+8Zvf/KZKn1EZN2ttWNBasWJFuc7ZcF9OTk5kZFT+PVZvvPFGvP322ylzN9xwQ3Tq1KlU+y+44IKYNGlSvPnmm8m5Bx98ME499dQqu6msLJS/SFq0aFE888wzyfHRRx+9yXYjAAAAAAAAAACVJy8vL/Ly8tIdY4uaNWsWX331VXI8f/78cp2z4b5mzZpVKNemPPnkkynjDh06xBFHHFGmM84///yU8tfy5cvjn//8Z/Tp06dSMlaE1z6SdMcdd6S8h/WUU05JYxoAAAAAAAAAAKqbDh06pIznzp1brnM23NexY8dyZ9qU4uLi+OCDD1LmDjjggDKfs+eee0b9+vVT5j788MMKZassyl9ERMQHH3wQzz77bHJ88MEHR9euXdOYCAAAAAAAAACA6mbDktb8+fNj1apVZT5nxowZKeP27dtXKNfGLF++PJYuXZoy16ZNmzKfk5GREa1atUqZW7BgQYWyVRavfdxOrFu3Lr755puNfpafnx+DBw+O4uLiiIjIysqKwYMHb814AAAAAAAAAEB5ZSTSnYDtSJcuXVLG69evj48++ih69uxZ6jNmzpwZixYt2uy5lWH16tUl5nJycsp1Vm5ubsr4x2/XSyc3f20Hli1bFv3794+JEycm5/79738nW5dz586NtWvXJj8744wzonPnzls9JwAAAAAAAAAA1duee+4Z9erVS5l77733ynTGhuszMjLK9TrGLWnQoEGJucWLF5frrPz8/JRxw4YNy3VOZVP+2sYtWLAgTj311Hj//fdT5idOnBjnnHNOLF26NHbdddd4+umno3PnztGtW7e49NJL05QWAAAAAAAAAIDqLDs7Ow466KCUueeffz75xrnSeO6551LGe+65ZzRp0qRS8v1YTk5O5OXlpcxNnjy5zOfk5+fHzJkzU+aaNWtWoWyVRflrG/bNN9/EySefHNOmTUvOnXLKKbHDDjtERMSECRPiiCOOiCeeeCJatGgRTzzxRIwYMSJq1apV5mfVqVMnBg8enPzaWHMSAAAAAAAAAICa76ijjkoZz549O8aOHVuqvVOmTClxidGRRx5Zadk2tNdee6WM33nnnfj222/LdMZzzz1XotzWvXv3CmerDFnpDkDEs88+G88+++xm18yZM6dM7zadMmVKnH322Sl/WAcMGBCDBw+O3r17xznnnBMrVqyIxYsXx/XXXx/33ntvHHLIIXHggQfG0qVLo0WLFtGoUaNSPy8nJycGDBiw0c/Wr18fa9asibVr18aaNWtizZo1kZOTE61bty71+QAAAAAAAAAAVA+HHXZYdOnSJaZOnZqcu+mmm6Jnz55Rt27dTe4rLCyMq6++OmWuadOm8Zvf/KZUz92wO9OjR4949NFHN7vnoIMOirfeeis5XrNmTdx8881xxx13lOqZs2bNij/96U8pczk5ObHvvvuWan9VU/6qgNzc3GjevHlEfP8HsTr59NNPU4pfJ5xwQgwePDgivm80Pvroo3HxxRcnr6T77rvvYvTo0TF69OjknkQiEVlZWZGVlRWZmZlb/L64uDjWrl2bUvJau3ZtrF+/vkS+3/3ud3HqqadW8e8CAAAAAAAAAACVLZFIxCWXXBLnn39+cm7OnDlx/vnnx/3331/iVYsREevWrYsrrrgiPvnkk5T5gQMHRm5ubpVlPf744+P++++P/Pz85NwLL7wQdevWjWuvvXazb8ibOnVqDBo0KJYsWZIyf9ppp230Z0wH5a8KOOqoo0pcY1cederUKdMtWxuaM2dOibk+ffrE/fffH7Nnz44DDjgghg0blvJ5t27d4vnnn48///nP8eijj5b4QxoRUVxcHAUFBVFQUFDubBuTm5sbvXv3rtQzAQAAAAAAAADYeg499NA44ogj4pVXXknOvfvuu9G7d+/o169f/OxnP4tmzZrFt99+GxMnToy//OUvMX369JQz9tprrzjppJOqNGfdunXjsssui6FDh6bMjxo1Kt566604+eST42c/+1m0bt06cnJyYunSpfHZZ5/Fa6+9Fi+88EKJ3kzr1q03+Xa8dFD+qgaOOOKIuOWWW8q9f2Ovg8zKyoqBAwfGI488EnfddVdkZZX8S12nTp0YNGhQDBgwIN566634z3/+E1OmTIm5c+fG8uXLY82aNVFUVBTr168v8d7SijjqqKOiXr16lXYeAAAAAAAAAABb38033xzz5s2Ljz76KDk3Z86cuPHGG7e4t127dnHPPfdstNNS2Y4//vj45ptv4oEHHkiZnzdvXqlf/xgR0ahRoxg5cmQ0aNCgsiOWm/LXNuy4446LAw88cIvXzNWqVSsOO+ywOOywwza5pri4ONavX58sg/3wa2FhYRQWFibXZWRkREZGRiQSiUgkEhsdb+66PAAAAAAAAAAAaoa8vLz4y1/+EldeeWW89tprpd7XvXv3uPvuu2OHHXaownSpLr300ujQoUPccMMNsXz58jLv33fffeO2226LFi1aVEG68ksUV+aVTiQVFBTEp59+mhx369ZN6anGmZbuAFAtfLdmSrojVFjPvzZMd4QK++K86vUPENurgqJV6Y5QYZPzS74uuqbpvkOndEcAAAAAANgGdE53ACrRzr96JN0RqATTnz0j3REq5F//+leMHDkyPvzww02u6dKlS/Tr1y+OO+64SCQSZX7Ghm/H69GjRzz66KNlOiM/Pz9Gjx4dzzzzTMyYMWOza2vXrh0///nP45RTTokDDjigXJmr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1157bZnO6NatW1x88cXJ8b333huPPfZYpeYEAAAAAAAAAABqJq99rAKLFi2Kfv36xcKFCyMiIisrK+68885Sve5xQ+eee25MnDgxxo0bFxERN9xwQ2RmZsZJJ51UpnOaN28e119/fZmfXxlatWqVlucCAAAAAAAAAMC2TPmrki1evDj69+8fM2fOTM4NHjw49t5773Kdl0gk4tZbb40TTjghZs6cGcXFxXH99dfHunXr4owzzij1OQ0aNIiTTz65XBkAAAAAAAAAAIDqx2sfK9GiRYvi9NNPj2nTpiXnjjnmmOjfv3+Fzm3QoEE8+OCDyZvDiouL46abbopbb701iouLK3Q2AAAAAAAAAFDDJXxtE19QDspflWTevHlx2mmnxRdffJGc22uvveLmm2+ulPPbt28fI0aMiFq1aiXn/vznP8fFF18cK1asqJRnAAAAAAAAAAAANYfyVyX4/PPP48QTT4yvv/46Ode2bdsYMWJE1K5du9Ke071797j77rsjOzs7OffKK6/ECSeckHLbGAAAAAAAAAAAsO1T/qqg119/PU455ZRYsGBBcq558+bxv//7v9GkSZNKf96hhx4ad911V0oBbMaMGfGb3/wmnnzyyUp/HgAAAAAAAAAAUD0pf5VTcXFx/PGPf4zzzz8/Vq1alZxv3Lhx/OUvf4k2bdpU2bMPP/zwuO+++yI3Nzc5t3r16vjd734XZ511VsyZM6fKng0AAAAAAAAAAFQPyl/lsHTp0jjvvPPirrvuiqKiouR8s2bN4m9/+1t07NixyjMcfPDB8de//jUaNWqUMj9+/PgYOXJklT8fAAAAAAAAAABIL+Wvcli/fn189dVXKXOtW7eOxx9/fKsUv36wxx57xN///vfYeeedk3OHH354XHvttVstAwAAAAAAAAAAkB5Z6Q5QEzVp0iQeeuihOPnkkyM/Pz923333+OMf/xg77LDDVs+y0047xahRo+Kqq66KefPmxe233x6ZmZlRXFwchYWFWz1PaWVmZkYikUh3DAAAAAAAAAAAqLGUv8ppp512ij/96U/x2GOPxbBhwyInJydtWerWrRt33313rFy5Mplj9OjRcc0116Qt05aMHDkyDjzwwHTHAAAAAAAAAIAarzjD5SuwvVL+qoDdd989dt9993THSKpbt266IwAAAAAAAAAAAFtJRroDAAAAAAAAAAAA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ALBp1ab8ddddd6UUvxo1ahQjR46M3XbbbZN7WrRoEUceeWQceeSRMWvWrPjPf/5T6ufttttuccghh2zy82XLlsXtt98ef//735NzK1asiGHDhsXjjz9e6uf84MevfKxTp07sscceMX78+IiIePfdd2PWrFnRtm3bMp/7gzlz5sRpp50WCxcuTJnv27dvXHTRRdGsWbNN7q1du3bstttusdtuu8XAgQPj3Xffjezs7FI9t379+pv9fQQAAAAAAAAAAKpGxpaXVL1169aVeCXi7373u80WvzbUtm3b6Nu3b6Vlql+/fgwbNiz69++fMj9hwoR49913y3TWggUL4u23306Od99999hrr72S4+Li4nj66afLnXX16tUxYMCAlOJXdnZ23HrrrXHjjTdutvi1Mfvuu2/svffe5c4DAAAAAAAAAABUvWpR/vrss89i2bJlyXHt2rWjV69eaUz0XxdffHE0bdo0Ze71118v0xnPPPNMFBYWJse9evWKww47LGXNs88+G0VFReXKeOutt8b06dOT44yMjBgxYkQcd9xx5ToPAAAAAAAAAACo/qpF+Wv+/Pkp4/r160dWVvV4I2VOTk4ceuihKXOfffZZqfdveKtXdnZ2HH300bHrrrtGp06dkvPz58+Pt956q8z5pkyZEk8++WTK3Pnnnx8HHXRQmc8CAAAAAAAAAABqjmpR/iouLk4ZL168OFauXJmmNCV16NAhZZyfn1/qve+++27MmjUrOT7ooIOiUaNGERHRp0+flLXlefXj/fffn3JjWOfOnWPQoEFlPgcAAAAAAAAAAKhZqkX5q02bNinj9evXx1NPPZWmNCXl5uamjDcsq23O6NGjU8Y/Lnz17t07MjL++5dg7NixZSqWLVq0KP75z3+mzJ177rkpZwIAAAAAAAAA27iMhK9t4QvKoVq0hLp16xZNmjRJmbv99ttj7NixaUqUavHixSnjpk2blmrfsmXL4tVXX02OGzZsGAcffHBy3Lx58/j5z3+eHBcUFMTzzz9f6lz//Oc/o7CwMCXX0UcfXer9AAAAAAAAAABAzVUtyl+ZmZlx2mmnpcytW7cu/t//+38xbNiwWL58eZqSfe/DDz9MGXfu3LlU+8aMGRNr165Njo866qioVatWyprjjjsuZbzhTWGbM378+JRxjx49Iisrq9T7AQAAAAAAAACAmqtalL8iIs4555zo1q1bylxxcXE8/vjj8Ytf/CL+9re/xbp167Z6rlmzZsU777yTMveLX/yiVHuffvrplPGGRa8fzsrLy0uOp0+fHpMmTSrV+Z988knK+Kc//Wmp9gEAAAAAAAAAADVftbkmqlatWvHQQw9F//79Y8qUKSmfLV68OG644YZ46KGHYuDAgfHrX/86srOzqzzT2rVr44orroiCgoLk3O677x777LPPFvd+/vnn8emnnybHO+20U+y5554l1uXk5MQRRxyRUhQbPXr0Rtf+WEFBQcybNy9lrmPHjlvMVdmWLVsW48aNK/X6gw8+OBIJ76kFAAAAAAAAAICKqjblr4iIJk2axJNPPhk33nhjPPXUUyU+nzdvXlx33XXx4IMPxgUXXBC/+tWvIiOjai4v++yzz+Kaa65JKXBlZ2fHddddV6ry0oavb+zdu/cm1/7qV79KKX+9+OKLcdVVV0WdOnU2uSc/Pz+KiopS5ho2bLjFXJVt+vTpMXDgwFKv//TTT72aEgAAAAAAAAAAKkG1a+Hk5OTEjTfeGMccc0z8/ve/jy+//LLEmjlz5sRVV10VTzzxRAwbNix22WWXMj/n448/jszMzOS4oKAgli9fHl9++WW8//778dFHH6Wsz8zMjP/5n/+JXXfddYtnr127NsaMGZMcJxKJ6NOnzybXd+/ePdq0aROzZ8+OiIiVK1fGSy+9FL/+9a83uWflypUl5ho0aLDFbAAAAAAAAAAAwLah2pW/ftCzZ88YM2ZMPPvsszFixIiYO3duiTUff/xxnHjiiTFkyJA466yzynT+Aw88UOq1jRs3jptvvjkOOeSQUq1/7bXXYunSpcnxPvvsE23atNnk+h/KYSNGjEjOjR49erPlrx8X136wfv36UuUDAAAAAAAAAABqvmpb/or4vuB0wgknRO/eveOZZ56JBx54IObNm5eypqCgIIYPHx6zZ8+Oa665plKfX7t27ejTp09ccskl0aRJk1Lv2/CVj8cdd9wW9xx33HEp5a+JEyfGV199FR06dNjo+o294nHJkiXRunXrUuesDHvvvXc88cQTW/WZAAAAAAAAAABANS9//aBWrVpx0kknxfHHHx+PP/54/PGPf4wlS5akrHn00UejZcuWcfbZZ5frGZmZmVG/fv1o1KhRdOvWLbp37x5HHHFENG7cuEznzJo1K/7zn/8kx7Vr144jjzxyi/vatWsX++yzT0yYMCE5N3r06Lj88ss3ur5+/fqRmZkZhYWFybnvvvuuTFn/P/buPd7KMe8f+Het9k7tzpGkQYUOjB6HPAbR8JhJpTKMSI+GIcMYNcTjmEENk8E4PaPEOJazSWQq5FCGmXEmlMNEJSmidmkf2uv3h5/12B333mvtVqv9fr9e6+W+rvu6vvd3tXf99XHdAAAAAAAAAMAWIJnrBoBcyYvw13fq168fJ554YvTv3z9+97vfxdSpUyvd/9Of/hSHH354lU6/+t///d847LDDst7jI488EqlUKj0uKSmJbt261ajWo48+GmeffXYUFKz9Y0okEtG6detKr8N844034uCDD67RswAAAAAAAAAAgPySl9nPFi1axA033BCDBw+uNF9WVhb33HNPjrqKqKioiL/+9a9Zq7dkyZJ49tln13t/n332qTT+5z//mbVnAwAAAAAAAAAAm7e8DH9954ILLojOnTtXmpsxY0aOuomYOXNmLFy4MKs1H3roofXe22+//SqNX3311ViwYEFWnw8AAAAAAAAAAGye8uq1j2tKJpMxYMCAuPzyy9NzuQw/rRnUOuaYY+K//uu/qlXjk08+iSuuuCI9fv7552PRokXRunXrtdYefPDBUVhYGGVlZRERUV5eHnfccUdcdNFFNegeAAAAAAAAAADIJ3kd/oqI2GGHHSqNE4lETvr48ssvY/r06ZXmhgwZEjvttFO16qRSqbjzzjvTIbbVq1fHxIkT41e/+tVaa1u3bh19+/aNRx55JD13//33x9FHH73WiWgAAAAAAAAAAMCWJa9f+xgR8dVXX1Uat2rVKid9TJo0KX0CV0TED3/4w2oHvyK+Da/17du30tzDDz+83vVDhgyJZPL/fowlJSUxbNiwKC4urvazAQAAAAAAAACA/LFZhL/efPPN+OSTT2q09+mnn6403meffbLRUrWt+crHNQNc1XHkkUdWGn/88cfxz3/+c51rO3ToEKeeemqlublz58bgwYNj8eLFNe4BAAAAAAAAAADYvG0W4a8PPvgg+vfvH2PGjFnrJK8Nefzxx2PKlCmV5jIJXdXUG2+8Ee+//356nEwmo1evXjWu1759+9hrr70qza0ZLvu+YcOGxf77719pbtasWTFgwIB46qmnqvXsb775JsaNGxfTpk2r1j4AAAAAAAAAIEcSCZ8t4QM1UJDrBr6zcuXK+NOf/hQ333xzHH744XHQQQfFfvvtt9ZrHMvKyuKNN96I++67Lx5//PFK93r27LlWCGpTWDOY1a1bt2jdunVGNfv37x+vvfZaejx16tQYMWJENGnSZK21yWQyrr322vjFL34Rc+bMSc9/+umnccYZZ8Ree+0V/fv3jx49esT222+/1v6FCxfGrFmz4umnn46nnnoqli1bFqNGjapSn8uWLYtnnnmmWt9tu+22iy5dulRrDwAAAAAAAAAAUNlmE/76zqpVq2LixIkxceLEiIho0qRJbL311tGgQYNYsWJFfPbZZ1FWVrbWvr322itGjhy5qduNlStXxuTJkyvNHXHEERnX7d27d1xxxRVRWloaEd/+uTz++OMxcODAda5v2bJl3HPPPXHOOefE888/X+nea6+9lg6SFRUVxTbbbBNFRUVRXFwcX331VRQXF9e4zw8++CBOO+20au3p27dvXH311TV+JgAAAAAAAAAAsJm89nGrrbZa773ly5fH3Llz47333ot58+atFfyqV69eDBo0KP7yl79Es2bNarvVtUyZMiVWrFiRHhcWFkbPnj0zrtusWbM49NBDK81t6NWP3+255ZZbYuTIkdGyZct1rlm5cmV88skn8d5778X8+fPXG/xq0KBBzRoHAAAAAAAAAAA2ic3i5K8+ffpEq1atYvLkyfHSSy/F3LlzN7pn2223jV69esWAAQNil112qf0m12PNQNaBBx4YzZs3z0rtn/3sZzFlypT0+O2334733nsvOnfuvN49iUQiBgwYEP369YtJkybFY489Fq+88kqsXr16g89KJBKx6667xgEHHBA/+9nPNvgMAAAAAAAAAAAg9xKpVCqV6ybWVFxcHB999FHMnTs3li5dGitWrIitttoqGjduHNtuu2107tw52rRpk+s288bKlSvjnXfeiXnz5sWXX34Zq1atisLCwmjYsGE0b948dthhh2jfvn1OTk7bvM3JdQMAwBaq4Y6/y3ULGfvmk8ty3QIAAAAAkJGOuW6ALOrwm7/mugWy4KObfpbrFshDm8XJX2tq3LhxdO3aNbp27ZrrVrYIRUVF0a1bt+jWrVuuWwEAAAAAAAAAALIkmesGAAAAAAAAAAAAqD7hLwAAAAAAAACf0tS5AAAgAElEQVQAgDy0Wb72EQAAAAAAAACAKkomct0BkCNO/gIAAAAAAAAAAMhDwl8AAAAAAAAAAAB5SPgLAAAAAAAAAAAgDwl/AQAAAAAAAAAA5CHhLwAAAAAAAAAAgDwk/AUAAAAAAAAAAJCHhL8AAAAAAAAAAADykPAXAAAAAAAAAABAHirIdQMAAFDXfPPJZbluIWPNd7k21y1kbPGc03LdQsYKk0W5bgEAAAAA2AykEolctwDkiJO/AAAAAAAAAAAA8pDwFwAAAAAAAAAAQB4S/gIAAAAAAAAAAMhDwl8AAAAAAAAAAAB5SPgLAAAAAAAAAAAgDwl/AQAAAAAAAAAA5CHhLwAAAAAAAAAAgDwk/AUAAAAAAAAAAJCHCnLdAAAAAAAAAAAAGXD0D9RZ/voDAAAAAAAAAADkIeEvAAAAAAAAAACAPCT8VUuee+65+PDDD2u0t7i4OO66665IpVJZ7goAAAAAAAAAANhSFOS6gS1RSUlJ/Pa3v42VK1dGq1atYvDgwXHqqadWae/LL78c5513XsyfPz+WLFkSZ599di13CwAAAAAAAAAA5CPhr1owc+bMWLlyZURELF68OFq2bFmlfd9880389re/jcWLF0dExNixY6NLly7Rq1evjPp5/fXX49hjj82oRja8+OKLVf6zAAAAAAAAAAAANsxrH2vBU089lb4uLCyMn/70p1Xa17Bhw7jqqqsimfy/H8uFF14YH3zwQdZ7BAAAAAAAAAAA8puTv7Js9erV8cwzz6THBx98cDRt2rTK+w844IA488wz4/rrr4+IiJUrV8aZZ54ZDz30UDRq1Cjj/nr37h2/+c1v1nu/f//+UVZWFvvss0+MHDlyvetOPfXUmD9/frRr1y7+/Oc/r3fdyJEj48UXX8yoZwAAAAAAAAAAYG3CX1n28ssvx9KlS9PjI444oto1TjvttHj++efjtddei4iIjz76KC655JK45pprMu6vSZMmsfPOO6/3fiKRiIhvTyHb0LrCwsL0fze0rqioqIadAgAAAAAAAAAAGyL8lWV//etf09eNGzeOQw45pNo1kslk/P73v0+fwtW6devo169fNtsEAAAAAAAAALYUyUSuOwByRPgri5YtWxZ/+9vf0uMjjjgiGjZsGOXl5bF69epq1frBD34Qp5xySnz88cdx4YUXRtOmTaOkpKRKewsLCyOZTK73fnl5eZXqZGNdKpWqUg0AAAAAAAAAAKB6hL+yaOLEibFq1ar0+LjjjouIiBtvvDHGjBlT47pPPPFEtdZfddVV0b9//3Xeu//+++P+++/faI2ZM2fG7rvvvtF177//fpXWAQAAAAAAAAAA2bX+46Gotu+HqvbYY4/o0qVLDrsBAAAAAAAAAAC2ZE7+ypKXX345Pvjgg/T42GOPzWE363fEEUfE0KFDq7x++fLlMWfOnIiIaNGiRXTo0KFaz7v00kvj73//e7X2AAAAAAAAAAAAG5dIpVKpXDexJfjVr34Vzz77bHo8bdq02GmnnXLX0PeUlZXFV199FRERDRs2jMaNG1d57z/+8Y8YPHhwRET07Nkzbrjhhmo9e9myZVFSUhIREdtss00kEolq7c+tObluAABgs9V8l2tz3ULGFs85LdctZKwwWZTrFgAAAADIWx1z3QBZ1H74pFy3QBb8+5p+uW6BPOTkryx46623KgW/NherV6+OVCoViUQiWrRokZ4vLy+vco2Kior0dSqVqtbeiIiioqIoKipK9xMRkUwmI5n0xlEAAAAAAAAAAMiE8FcW3HTTTdXeM2vWrNh1112jfv36NX7u6NGjY+edd44ePXpEq1at1rr/3//93/Hqq6/WuP6apk2bFrvvvnvGdfr27RtXX311FjoCAAAAAAAAAIC6S/grQ9U59auioiJuuummmDx5csydOzeuv/76OPzww2v03C+++CJuv/329MlePXv2jOuvv75GtQAAAAAAAAAAgPwj/JWhG264ocprk8lkPP/88zF37tyIiHj00UdrHP564YUXIpVKRcS3r2Pccccd11pz3XXXxapVq2pU/ztvvPFGnHvuuRERcdBBB8WIESMyqhcR0ahRo4xrAAAAAAAAAAD/XyKR6w6AHBH+ysD06dPj+eefr9aefv36xVtvvRURETNmzIilS5dGixYtqv3smTNnVhr36tVrrTWtW7eudt01ffbZZ+nroqKi2GmnnTKuCQAAAAAAAAAAZE74q4ZWrVoVo0aNSo9btGgRZWVlUVxcvMF9ffr0idGjR0d5eXmUlZXFE088EYMGDarWs1OpVKXwV7t27WK33Xar0t5ly5ZFSUlJlZ/19ddfp69LS0tj8eLFVW80IhKJRGyzzTbV2gMAAAAAAAAAAGyc8FcN3XzzzbFgwYL0+Kyzzoobbrhho+GvrbfeOg444ID0iWGTJ0+udvjr7bffji+++CI9rs6r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FltvvXUNOwcAAAAAAAAAADZE+GsL17Vr1xg9enQk/v8Rj0uWLIlf/OIXMW/evPXuqVevXlx33XXRpk2biIgoLy+PYcOGxfvvv7/BZ91+++3x4YcfpsdDhgyJH/3oR1n4FgAAAAAAAAAAwJqEv+qAPn36xPDhw9Pjzz//PH75y1/GkiVL1runZcuWceONN0b9+vUjImLFihXx61//Or7++ut1rp8/f378+c9/To/32muvGDp0aJa+AQAAAAAAAAAAsCbhrzpiyJAhMWDAgPT4k08+iVNOOSWKi4vXu2ePPfaI8847r9KeESNGrHPtpZdeGt98801ERDRv3jyuueaaKCgoyFL3AAAAAAAAAADAmhKpVCqV6yby2b333huXXnpprtuIiIhRo0bFMcccs977ZWVlceKJJ8bLL7+cnvvP//zPuPXWW2OrrbZa774zzjgjnnrqqejYsWNcffXV0alTp0r3J06cmA6JJRKJ+POf/xyHHnpoht9mczAn1w0AAFuoRjuNzHULGVvx8br/p4B8korVuW4hY4mol+sWAAAAAMhbHXPdAFnU7uK/5boFsmDuqF65boE85OSvOqSwsDBuvPHG2G677dJzHTt23OgJXVdccUWcccYZ8fDDD68V/Fq0aFFcccUV6fGQIUO2kOAXAAAAAAAAAABs3ryXL0ONGjWKtm3b1nj/kiVLoqSkJCK+fV1io0aNMuplY1q2bBk33nhjDB48OIYPHx4nnHBC+t6CBQsqjdc0ceLEteZWrFgRX3/9dXo8adKkmDx58jr3T5kyJerXr7/RHgEAAAAAAAAAgI0T/spQv379ol+/fjXef/LJJ8fMmTMjIuK8886Lo446KlutrVfXrl3jySefjFatWlWaLy8vjwULFmRU+7PPPlvvPW8YBQAAAAAAAIBa4L1vUGf5618LXn311bjggguitLS0Vmofd9xxMW/evIzqrBn8AgAAAAAAAAAA8ouTv7LsrrvuiquuuirKyspi6dKlccMNN2TtVYeff/55DBs2LD7//PM48sgj4/LLL48+ffpkpfaattlmm3jhhRcyqlFSUhJdu3bNUkcAAAAAAAAAAMD3Ofkry7744osoKyuLiIhnnnkmhg4dmpUTwFatWhWnn356fP755xERUVxcHC+//HLGdQEAAAAAAAAAgPwk/JVlZ511Vhx55JHp8TPPPBPnnntupFKpGtdcvXp1nHXWWfH222+n5/r06RMjRozIqFcAAAAAAAAAACB/ee1jLRg1alQsXLgw/vGPf0RExJQpU+LKK6+MCy+8sEb1Lrnkkpg+fXp63L179xg9enQkk+vP7g0cODBeffXV9d6fPXt2jXoBAAAAAAAAAAA2D07+qgWFhYVx0003Rbt27dJzd955Z9xxxx3VrnXFFVfEQw89lB7vvffeceONN0ZhYWEWOgUAAAAAAAAAAPKV8Fctadq0adx8883RtGnT9Nz3X9tYFU888UTceeed6XG3bt3i1ltvjaKioo3uLSgoiHr16lX6AAAAAAAAAAAAWw7hr1rUoUOHuOqqq6KwsDDOP//8uPrqq6u1v1evXnHaaadFRMS+++4b48aNi0aNGlVp79133x3vvPNO+jNt2rRq9w8AAAAAAAAAAGy+CnLdwJbukEMOiWnTpsX2229f7b2JRCLOOuus2HvvvWPfffet0olfAAAAAAAAAEAdk0jkugMgR4S/amjIkCHx4YcfZlxnyZIl6evRo0fHTTfdlHHNwYMHx4knnphxHQAAAAAAAAAAYPMl/FVDn3/+eSxYsCCrNb/66qv46quvMq6zfPnyLHQDAAAAAAAAAABszoS/WKclS5ZEp06dct0GAAAAAAAAAACwHsJfNfToo49mtH/atGlxzjnnRElJSaX5ww8/PK699tqoV69eRvUBAAAAAAAAAIAtm/BXDkyYMCFGjhwZFRUVa92bMmVKbLXVVvGHP/whkslkDrr7VjKZjDZt2kRERGlpaSxevDgiIgoLC2PbbbettPazzz6L1atXR0REq1aton79+hERkUql4tNPP92EXQMAAAAAAAAAQN0h/LWJXXfddXHzzTdHRETr1q2jefPmMXv27IiI2HHHHeOTTz6JRx99NEpKSuKPf/xjOki1KSSTyWjSpElERGy99dYxderUiIh49dVXY+DAgRERscsuu8TEiRMr7Tv00ENjwYIFERFx0003xZ577hkR34bGDjjggPS6RCJR698BAAAAAAAAAADqCuGvTaSkpCQuvfTSeOSRRyIiomnTpnHrrbfG6NGj0+GvU089NZ588sl47rnnYsqUKfHll1/GjTfeGM2bN98kPe6www7x8ssvrzW/fPny9HXjxo2rXK9+/frrrAcAAAAAAAAAAGQud+8VrEPmzp0bAwYMSAe/mjRpErfddlt07Nix0rp69erFtddeG127do2IiH/+859x1FFHxTvvvLPJe/6+moa/AAAAAAAAAIBNIJnw2RI+UAPCX7Xsb3/7Wxx99NHx3nvvRURE8+bN4/bbb08HvNbUuHHjuPXWW2O33XaLiIgFCxbEwIED4+67745UKlVrfZaVlcWMGTPWee+TTz5JX7dq1arWegAAAAAAAAAAAKpO+KuWfPPNNzFy5Mj47W9/G8XFxRERsf3228eECRNijz322ODeZs2axR133BH77LNPRESsWrUqRo0aFb/85S9j/vz5We+1uLg4hgwZEvfff/867//73/9OX7dr1y7rzwcAAAAAAAAAAKpP+KsW/P3vf4++ffvGPffck57bfffd47777oudd965SjWaNWsWf/nLX+InP/lJpbp9+vSJMWPGRGlpaVZ6/fzzz2PQoEHx4osvxoIFC9a55s0330xfZxL+mjhxYqVaAAAAAAAAAABAzQl/ZdFXX30VF1xwQZx00kkxb9689PwRRxwREyZMiNatW1erXoMGDeLGG2+MoUOHRjL57Y9q1apV8ac//Sl69+4dkyZNioqKihr3+95778WAAQPSr6T8+OOP11rz0Ucfxdy5cyMiIplMxl577VXj502ZMiWOOeaY6NevXzz55JM1rgMAAAAAAAAAAAh/ZUUqlYpJkyZF796945FHHknPFxYWxsUXXxzXXHNNNGjQoEa1E4lEnHHGGXHrrbdGq1at0vPz5s2Lc889N/r37x+PPfZYlJeXV6vuc889F8cff3wsXLgwIr4Nmo0aNWqtdQ888ED6ukuXLtGyZcsafY+IiJUrV0ZExOzZs50ABgAAAAAAAAAAGRL+ytCLL74YRx99dJx77rnxxRdfpOfbtWsX9957b5xwwglZec6BBx4Yjz32WPTs2bPS/Jw5c+Kcc86Jn/70p3H77bfH0qVL17m/uLi40vj000+PFStWREREq1at4u67747evXtXWjNv3ry499570+Mjjjgio++wfPny9PX222+fUS0AAAAAAAAAAKjrhL9qaPbs2TFkyJA48cQTY9asWZXuDRw4MCZOnBh77LFHVp/ZokWLuOGGG2LMmDHRtm3bSvcWLFgQf/jDH+Lggw+O//mf/4mysrJK999///1K49WrV0dExO677x4PPfRQdO3atdL9VatWxdChQ2PVqlUREdG4ceMY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AKC8SyTSnQBIF599LEFZWVkxYMCAPMWva665pkjFr+/VqFEjRowYEffff3/svvvuKffeeOON6NGjR0yYMCFlfvDgwdGiRYuUv+HDhyfvjxkzJs/9wYMHFzkjAAAAAAAAAACwc3nzVwmZP39+XHnllfHJJ58k5zIyMmLo0KHRu3fvEnnGMcccE08++WRce+218eKLLybnS/stYHXq1ImuXbsWae/bb78dixcvLtE8AAAAAAAAAACA8leJmDhxYgwfPjyysrKSc9WrV4/bb789OnXqVKLP+tnPfhZ//etfY9y4cTFy5MjIzs5O3vv+LWCDBw+O3XbbLfbcc8+UvevWrYvVq1dHREStWrWiTp06Kfd32223fJ/ZsGHD+MMf/lCkvAMGDFD+AgAAAAAAAACAUqD8VQxr1qyJ4cOHx7///e+U+aZNm8bf/va3aNasWak9+9e//nW0b98+rrrqqvj444+T8+vWrYsHH3wwHn/88bjmmmtS9jz00EPJTz+eccYZ8T//8z+llg8AAAAAAAAAAChdGekOUFY988wzceKJJ+Ypfh166KExfvz4Ui1+fW/vvfeOxx57LM4999zkXKVKleLWW2+NSpUqlfrzAQAAAAAAAACA9FH+KoIHH3wwrrrqqli5cmVyLiMjIy666KJ44IEHom7dujstS6VKleK6666Lv/71r1G7du0YNGhQtGjRYqc9HwAAAAAAAAAASA+ffSyCXr16xeTJk2P27NkREdG4ceMYNWpUtG/fPm2Zjj/++GjTpk3Uq1evxM+eO3euQhkAAAAAAAAAAPzEePNXEVStWjX+/Oc/R+3ataNHjx4xefLktBa/vle/fv1IJBJF2jtz5syYM2dOCScCAAAAAAAAAABKizd/FVGTJk3iqaeeigYNGqQ7SrG9//77cckll0S/fv3igAMOyHO/du3a0blz5yKdPW3atFi6dGlxIwIAAAAAAAAA21HE98QAuwDlr2LYFYpfU6ZMid/+9reRlZUV77//flx44YV51jRq1ChuuummIp0/YMAA5S8AAAAAAAAAACgFPvtYjr3wwgtxySWXRFZWVkRENGzYMM2JAAAAAAAAAACAgvLmr3IkNzc3ef3666/Hgw8+GDk5ORER0adPnxg8eHC6ogEAAAAAAAAAAIWk/FWOrFu3Lnn92WefJa/79+8fl19+eToiAQAAAAAAAAAARaT8VY7MnTs3z9zgwYOjT58+O9w3f/786NatW5Ge+fXXXxdpHwAAAAAAAAAAsGPKX+XEl19+Ga+88kpynEgk4oYbboizzjrrR/du2rQpFixYUJrxAAAAAAAAAACAQlL+Kifmz58fW7dujYiIjIyMGDFiRPzyl79McyoAAAAAAAAAAKColL/KiSOPPDJuvfXWGDhwYAwcOLBQxa+WLVvG5MmTi/TcAQMGxH/+858i7QUAAAAAAAAAALZP+asc6d69ezRo0CAOPvjgdEcBAAAAAAAAAEpIIpFIdwQgTRK5ubm56Q4BP02fpjsAALCLysndmO4IxZaZqJLuCMVWa5+b0x2h2NbO/126IwAAAABQZjVPdwBK0L73vp7uCJSAeZcdne4IlEEZ6Q4AAAAAAAAAAABA4fnsIwAAAAAAAAAAUCK+/vrrmDlzZixZsiSysrKiSpUq0ahRo2jVqlXsscce6Y63XV9//XV8/PHHsXjx4li/fn1kZGRE9erVo3HjxrH33nvHXnvt9ZP8xKryFwAAAAAAAAAAUCwvv/xy/P3vf48ZM2ZEbm5uvmtatmwZffr0iVNPPfUnUaTauHFjjB8/Ph5//PH4+OOPd7i2Tp06ceihh0bnzp3jl7/85U5K+OMSudv7pw3l3qfpDgAA7KJycjemO0KxZSaqpDtCsdXa5+Z0Ryi2tfN/l+4IAAAAAJRZzdMdgBK0772vpzsCJWDeZUenO0KRbNiwIYYMGRL/+c9/Crynffv2cccdd0S9evVKMdmOvfTSS3HjjTfGsmXLCrWvUqVKMWvWrFJKVXgZ6Q4AAAAAAAAAAACUPRs2bIg+ffoUqvgVETFt2rQ4++yzY/ny5aWUbMduv/32+O1vf1vo4tdPkc8+AgAAAAAAAAAAhTZ06ND48MMPU+YaN24cF1xwQXTo0CEaNmwYy5cvj+nTp8c///nPmDdvXnLd559/Hv3794+HHnooKlTYeRWmkSNHxgMPPJAyV6VKlejSpUt07tw5mjVrFvXq1YuMjIxYu3ZtfPbZZzFr1qx49dVXY86cOTstZ0H57CNsl88+AgDw0/ZtzjfpjlBslTNrpztCsTU8YHS6IxTbF7PPT3eEYstI+P9vAwAAgMLx2cddic8+7hrK2mcfX3755bjssstS5tq3bx/33HNP1KxZM8/6TZs2xTXXXBPPPfdcyvx1110X5557bqlm/d7EiRNjyJAhKXNHH3103HDDDdG0adMf3b9o0aIYP358DBw4sLQiFpryF2yX8hcAAD9tyl8/DcpfPw3KXwAAAFBYyl+7kv3+pvy1K/isb9kpf+Xm5kbPnj1j7ty5ybnGjRvHU089FTVq1NjuvpycnPjVr34Vs2fPTs7Vr18/XnjhhahatWqpZl6xYkWceOKJ8c03//ffrZ9yyikxatSoyMjIKNVnl6aymxwAAAAAAAAAANjpXnrppZTiV0TEsGHDdlj8iojIzMyMESNGpMwtX748HnvssRLPuK0RI0akFL9atWoVN910U5kufkUofwEAAAAAAAAAAIXw7LPPpoybNGkSxx13XIH2HnDAAXHIIYekzG37KciStnDhwpTMiUQibrjhhsjMzCzV5+4Myl8AAAAAAAAAAECBbN68OV577bWUuVNPPTUSiUSBzzjttNNSxh988EGsXLmyRPLlZ/z48Snjdu3aRevWrUvteTuT8hcAAAAAAAAAAFAgH3zwQaxbty5lrn379oU647DDDksZb926Nd54441iZ8vPli1bYtKkSSlzPXr0KJVnpYPyFwAAAAAAAAAAUCCffPJJyjgzMzPatGlTqDP23HPPqFev3g7PLSlz587N81axI444olSelQ4V0h0AAAAAAAAAAAAoG+bPn58ybtSoUVSrVq3Q5+yzzz6xYsWK5HjBggXFzpafmTNnpoyrVasWTZs2TZn74osv4r333oulS5fG5s2bo06dOlGvXr045JBDokGDBqWSq6QofwEAAAAAAAAAAAUyb968lHHjxo2LdE6jRo1SxtuWykrKrFmzUsb77rtvJBKJiPjuE5a33XZbTJs2bbv7mzVrFn369ImePXtGZmZmqWQsDp99BAAAAAAAAAAACuTrr79OGTds2LBI52xb/lq2bFmRM+3ItqWy2rVrR25ubtxxxx1x9tln77D4FRHx3//+N4YOHRo9e/aMxYsXl0rG4vDmLwAAAAAAAACAMuz/v8SIMm79+vWxYcOGUn1G9erVo0aNGsU6IysrK2Vc1PO23bdx48bYunVrZGSU7Lus1qxZkzKuXr163HzzzTFmzJhCnfPpp59Gr169YsyYMbH//vuXZMRiUf4CAAAAAAAAAIA0++c//xl/+ctfSvUZl19+efTv379YZ2xb/qpSpUqRzslvX1ZWVrHLadtat25dyvjd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mxZLlixJzvXr1y+GDh2aHP/85z+Pfv36Fen8K664Il544YVYvHhxRHz3NrEOHTrEXnvtVbzgAAAAAAAAAECZkUikOwGQLspfJWD9+vXx3nvvxUsvvZQyP3HixJRxZmZm3H777ckyWCKRiOHDh0flypWL9NwqVarEH/7wh+jTp09ERGRlZcWQIUPi4YcfjkQB/zf7qlWr4p133om33norzjrrrKhatWry3jfffBOzZs0qUrbvbdiwoVj7AQAAAAAAAACA/Cl/FUFWVla8++678e6778a0adPio48+ipycnHzXVq5cOY444og4/vjjIzc3N6699trkvV/96lfRvn37YmU54ogj4rTTTotJkyZFRMT7778f//rXv+L888/f4b7x48fH3/72t5g7d27k5uZGRETXrl2jSZMmyTWvv/56vP7668XKBwAAAAAAAAAAlA7lryKYMWNGXHLJJdu9X6tWrTjmmGOiS5cu0bFjx6hWrVosXrw4Tj/99OSaJk2axO9+97sSyTN48OB4/fXXY+XKlRERMWnSpDjvvPMikUjEli1bYtasWfHOO+/E9OnTk3vefPPNPOdkZ2eXSB4AAAAAAAAAAKD0KX8VwT777JNnrn79+tG5c+c44YQT4rDDDouKFSsm723atCmuuOKKWLt2bUREVKxYMe64446oWbNmieSpU6dODBs2LK6++uro3r17jBgxIp599tmYMGFCzJgxI7Kysra7NzMzM9q2bRudOnWKgw8+ONatWxeZmZkREXH00UfHFVdcERERU6ZMiVGjRkVERPv27WPo0KHJM5588skYM2ZMRERccMEF0bNnz+S9G2+8MWbOnFkivxMAAAAAAAAAAPg/yl9F0LBhw6hWrVrUqVMnunTpEieccEIcfPDBkZGRke/6NWvWRJUqVZLjgQMHRps2bUo000knnRTVq1ePTp06RUTE3Llz46233sp3bZ06deKoo46KY489Njp27Bi1a9dO3qtfv37MmTMnz56nn346eX3IIYfE/vvvnxxPnTo1eb377run3Hv00UeT1y+++GKMHTs2evfuHZ07d97uPy8AAAAAAAAAAODHKX8VQSKRiAkTJsS+++5boPW77757PPTQQ3HHHXfEvHnzok+fPqWS6/viV0RE8+bNU+41atQojj/++OjSpUsceuihybd7FcSWLVviqaeeSo4PPvjgIuVbv359vPPOO/HOO+/EySefHLfeemuRzgEAAAAAAAAAAJS/iqygxa/vZWRkxMCBA2PLli2llChV8+bNY++9944uXbpEly5donXr1kU+6x//+Ed89dVXEfHdm8GOPPLIIp2zZs2a5HVJffISAAAAAAAAAADKK+WvnaxChZ3zj7x58+bx3HPPFfucSZMmxd13350c9+nTp1BvDfuhZcuWJa/32GOPYmcDAAAAAAAAAIDyTPmLfK1YsSJuvvnmmDx5cnKuVatWccEFF+RZm0gkUvZtz5w5c5LXhX1zGgAAAAAAAACQv4zEj68Bdk3KX6T46KOP4rHHHosnnngivv322+R88+bN4/7778/3rV81atRIXj/11FNxzjnnRNOmTVPWPP/88zF16tSI+O7tZ23atCmlXwAAAAAAAAAAAOWD8lc5t2HDhpg+fXpMmTIlXnjhhVi0aFGeNSeeeGLceOONUatWrXzPaNWqVfJ6+fLlccIJJ0SjRo2iYsWKERGxfv36WL58eXLN4YcfHnXq1CnhXwIAAAAAAAAAAOWL8lc5tmrVqjjhhBNi3bp1+d5v2bJlXHnllXHsscfu8JwWLVpE586d4+WXX46IiJycnFiyZEm+a2vUqBFDhw4tXnAAAAAAAAAAACAy0h2A9Klbt25cfvnlKXMZGRnRqVOnuO++++KJJ5740eLX9+68887o27dv7LXXXsk3fn0vMzMzmjRpEieffHKMHz8+9t133xL7DQAAAAAAAAAAUF4lcnNzc9MdgvTZunVrnHXWWZFIJKJr167RrVu3aNSoUbpj/UR8mu4AAAAAO0XVPW9Id4Riy150Y7ojAAAAQBnTPN0BKEEH/+8b6Y5ACZh+dsd0R6AM8tnHci4jIyMeeeSRyMjwEjgAAAAAAAAAAChLNH5Q/AIAAAAAAAAAgDJI6wcAAAAAAAAAAKAM8tlHAAAAAAAAAIAyLJFIdwIgXbz5CwAAAAAAAAAAoAxS/gIAAAAAAAAAACiDlL8AAAAAAAAAAADKoArpDgAAAABlWdU9b0h3hGLLXnRjuiMAAAAAAFAE3vwFAAAAAAAAAABQBil/AQAAAAAAAAAAlEHKXwAAAAAAAAAAAGWQ8hcAAAAAAAAAAEAZVCHdAQAAAAAAAAAAKLpEIt0JgHTx5i8AAAAAAAAAAIAySPkLAAAAAAAAAACgDFL+AgAAAAAAAAAAKIOUvwAAAAAAAAAAAMog5S8AAAAAAAAAAIAyqEK6A5Aet912W6xfvz7atm0bnTp1itq1a6c7EgAAAAAAAAAAUAjKX+VQbm5ujB8/PlavXh2PPPJIvPrqq8pfAAAAAAAAAABQxih/lUNz586N1atXR0REu3btomHDhgXat2bNmrj77rsL9aw999wzLrjggsJGBAAAAAAAAAAAfoTyVzn06quvJq979OhR4H3r16+Phx9+uFDPOvjgg5W/AAAAAAAAAKAUJTIS6Y4ApElGugOw87322msREVGxYsXo2rVrgffl5uaWViQAAAAAAAAAAKCQvPmrHOjdu3dMmzYtz/zmzZvjsMMOy3fPuHHjom3btilzOTk5yev69evH8OHD8907ffr0uP/++4uRGAAAAAAAAAAA+DHKXxTYpk2bktc1a9aMY489Nt9133777c6KBAAAAAAAAAAA5ZbyVzmz1157RUZG/l/7XL58eaxfv367e7Ozs5PXlSpVKvFsAAAAAAAAAABAwSl/lTMPP/xw1K9fP997gwcPjkmTJm137zfffJO8rlOnTolnAwAAAAAAAAAACi7/V0BRLmzdurVQ65ctW5a8rlevXknHAQAAAAAAAAAACkH5qxxauHBhXH/99dGzZ8/Iyckp8L5PP/00eb333nuXRjQAAAAAAAAAAKCAlL/KoXfffTfGjRsXn3zySTz77LMF2rNx48Z45plnkuNWrVptd23FihWT16tXry56UAAAAAAAAAAAYLuUv8qhk08+OerUqRMREf/4xz8KtOf222+PFStWRERE9erVo0OHDttdW79+/eT1ggULYvTo0bF27dqI+O5Tk5s2bYrNmzcXNT4AAAAAAAAA8AOJhL9d4Q+KQvmrHKpSpUqcfvrpERHx8ccfx5tvvrnD9ffff388+OCDyfGFF14YlStX3u76/fffP+rWrZsc33zzzdGuXbto0aJF7L///nHggQfGI488UsxfAQAAAAAAAAAA5ZvyVzl19tlnR+L/10bHjh2b75oNGzbEkCFD4rbbbkvOtWjRIn7zm9/s8OyKFSvGoEGDdrimZcuWhUwMAAAAAAAAAAD8kPJXObXHHnskP904ZcqU5GcZf+iiiy6KiRMnJscNGjSIe+65J6pUqfKj5//yl7+Me+65Jw499NB817do0aIY6QEAAAAAAAAAgArpDkD6nHnmmbH33nvHxRdfHLVq1cpzf+jQodG7d+/YuHFj/PznP4/Ro0dH06ZNC3z+cccdF8cdd1xERGzatClyc3MjIiKRSESlSpVK5kcAAAAAAAAAAEA5pfxVBNOnT4/HH3883TF26MYbb4wKFXb8r7dr167RtWvX7d5v3bp13HTTTfHSSy/F73//+6hRo0aR8yh7AQAAAAAAAABAyVL+KoKFCxfGhAkT0h1jhwYMGBCzZs2KiIjVq1cn599444183/IVEfHFF1/kmevevXt07969dEICAAAAAAAAAABFpvy1i1q8eHH069cvz/yQIUMKdc7f/va3uO+++4qdp3HjxvH0008X+xwAAAAAAAAAAOA7yl/s0ObNmyMrK6vY52RnZ5dAGgAAAAAAAABgW4lEuhMA6aL8VQSnn356nH766emOsUNfffVVDBw4MCIixo0bF0uWLImIiL59+0b16tXz3fPcc8/F7Nmzd1pGAAAAAAAAAACg6JS/dlENGzaMSy65JCIi3njjjWT569xzz4369evnu2f+/Pl5yl/9+/eP/v37x4cffhi9evWKiIijjjoqRo8e/aMZ7rzzzrj33nsjImK//fYr8m8BAAAAAAAAAADyykh3ANJn06ZNBV574IEHxs9+9rOIiJg6dWqsW7fuR88eN25ccvx9cQwAAAAAAAAAACgZyl/l0Lvvvht9+vSJQYMGFXhPRkZGHHXUURERsXnz5njxxRd3uH7y5MmxatWqiIioX79+dOrUqch5AQAAAAAAAACAvJS/yoGcnJzkdSKRiMmTJ8fbb78dL774YvJzkAXRvXv35PXYsWO3uy47Ozvuvvvu5Picc86JChV8YRQAAAAAAAAAAEqS8lc5kJWVlbxOJBJx5plnRsR3pbAdlbi21alTp2jcuHFERMyePTumTp2a77p//OMf8fXXX0dERN26deO8884ranQAAAAAAAAAAGA7lL/KgQ0bNiSvE4lEtGrVKlq1ahUREY8//nhkZ2cX6JzMzMzo1atXcnzLLbfE1q1bU9bMmTMn7rvvvuT4kksuierVqxcnPgAAAAAAAAAAkA/lr3Lgh+WvKlWqRETEr3/964iIWLduXTz99NMFPuucc86JOnXqRETErFmzYvz48cl72dnZMXDgwNi8eXNERDRv3jzOOeecYucHAAAAAAAAAADyUv7axeXk5MTatWsjIqJChQpRrVq1iIjo3r17VK5cOSIiHnvssQKfV6tWrejXr19yPGrUqJg3b17k5OTE1VdfHfPnz08+a+TIkVGpUqWS+ikAAAAAAAAAQD4SCX+7wh8UhfLXLm7RokXJN3H97Gc/S87XrFkzOnfuHJmZmbHvvvvGli1bCnzmWWedFc2aNYuI794q1q9fv7j22mvj5ZdfTq659NJLk5+WBAAAAAAAAAAASl6FdAegdH322WfJ68aNG6fc69u3b1x55ZXx85//vFBnVqxYMe64444444wzYuPGjbFgwYJYsGBB8v7xxx8f/fv3L1ZuAAAAAAAAAABgx7z5axf33//+N3m95557ptxr2bJloYtf32vWrFkMGjQoz/wBBxwQt9xySyS8jxAAAAAAAAAAAEqV8tcu7u23305et2zZssTOnTZtWowePTrP/LJly1KeCQAAAAAAAAAAlA7lr13YypUr4/3330+OW7duXewzv/nmmxgxYkScf/758eWXX+b7zH79+sXAgQNjyZIlxX4eAAAAAAAAAACQP+WvXdiLL74YW7dujYiIatWqRdu2bXe4ftOmTcnrbT/bmJ2dHQ8++GCccMIJMXbs2OS5ERFnnHFGDBo0KCpUqJCc+/e//x3dunWL66+/PubNm1cSPwcAAAAAAAAAAPiBCj++hLJo69at8dBDDyXHHTt2jEqVKkVExObNm2Pjxo1Rs2bN5P0lS5bEO++8kxxXr149IiKWL18ejz32WIwdOzZWr16d8oyaNWvG73//++jRo0dERBx66KExcODAWLp0afI548aNi3HjxkWbNm3i1FNPjaOOOir22muv0vnRAAAAAAAAAABQjih/7aKefPLJ+PTTT5PjU089NXn9zTffxJFHHhmVK1eOGjVqRGZmZqxcuTJycnIi4ru3hG3ZsiX69u0bb7zxRmzZsiXP+T169IjBgwdH/fr1k3MHHXRQPP3003HffffFmDFj4ttvv03e+/DDD+PDDz+MiIhGjRrFXXfdFW3atCnx3w0AAAAAAAAAAOWF8tcu6qmnnkpe77HHHtGpU6fkuF69erHbbrvFypUrUwpa3+vdu3c0bNgw3nvvvTzFr/bt28eAAQOiXbt2+T63atWqceWVV0avXr1i9OjRMXHixMjKykpZ06hRo2jdunUxfh0AAAAAAAAA8L2MRLoTAOmSke4AlI477rgjOnToEBERl156aWRm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vfeYOHFiPPbYYxERcfnll9ep/HXVVVfF2rVrIyLinnvuqVH+Gjt2bKxYsSIiIu6++27lLwAAAAAAAAAA2A2Uv3aBV199NS6++OJYtWpVbNiwIb74xS/We6/169fH9773vVi8eHEMGDAgrrjiijjggAMaMS0AAAAAAAAAkMvSqaQTAElR/toFbr755li5cmVERFx99dXRqlWrGDlyZL32uuqqq2Lx4sURETFnzpwoLy+P3//+940VFQAAAAAAAAAAyFHppAM0R7fcckt07949IiKqq6vjyiuvjClTptR5nz/96U8xderUzLhbt24xbty4RssJAAAAAAAAAADkLuWvXaB9+/Zx1113xf777x8REVVVVfGTn/wkZs6cWes95s+fHzfeeGNm3KlTp/jd734XHTp0aPS8AAAAAAAAAABA7lH+2kW6dOkSd955Z+yxxx4REVFRURHf//7344033tjp2lWrVsV3v/vdKC8vj4iI1q1bx/jx46Nr1667NDMAAAAAAAAAAJA7lL92oUMOOST+93//NzM+++yzo0ePHjtcU1ZWFt/97ndj+fLlERGRTqdj3Lhx0bt3712aFQAAAAAAAAAAyC15SQfIVZWVlVFRUbHT5/r37x+jRo2K4uLiuOiii6KiomKH666++up46aWXMuPLLrssTjjhhCgtLd3puwoLCyNi88lhq1atyrr30UcfZa5XrlwZb731VmbcuXPnKC4ujg8//HCb+1ZXV+/03VvuvXTp0u3ez8vLi3322afW+wEAAAAAAAAAANuWqq5Ls4eMX//613HLLbckHSPL3Llzo3PnznHrrbfGbbfdVut1l19+eXzyk5+MUaNG7fTZe+65J/r27Zs1d9JJJ8WKFStq9a4uXbrE008/XetsyXpr548AAAAAzcoho15JOkKDPXJzcdIRGuTQtl2SjtBgha3aJR0BAABqYcdfrSK3nP3kM0lHoBFMOvXEpCOQg5z8BQAAAAAAAACQw1Ip5/5AS6X81Qx94hOfiBNOOCFr7s0338x81vGggw6K/fffP3PvgAMO2K35AAAAAAAAAACAhlP+qqeLL744Lr744gbtMXDgwFiyZElERFx66aVx4YUXNka0GDFiRIwYMSJr7vvf/3489thjERExcuTIuOCCC2qse/PNN7e5X9++fWPt2rW1evfdd98d/fr1q2NiAAAAAAAAAACg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3nn1SA0AAAAAAAAAAGwtnXQAdq/d+dnH3/zmN7FgwYKIiOjYsWPceOONu/R9AAAAAAAAAADQkjj5qxl75513YurUqXH++edHhw4dImL7n3287bbbok2bNnHOOedEmzZt4rTTTos333yzxp6vvPJKfOELX4iIiMMOOywmT568zXe//PLLMX78+Mz4uuuui7322qtR/lwAAAAAAAAAAIDyV7M2ZMiQiIg4+OCDY9iwYRGx+XOMHysoKIiIiIqKirjvvvtizZo1cdttt8WMGTMyZbH6WLVqVXzve9+LioqKiIi44IIL4tRTT633fgAAAAAAAAAAQE0++9gCPP3005nrLctfeXmbu39/+9vfYs2aNRGxuSjWkOJXZWVlXHLJJbFixYqIiPjsZz8bl156ab33AwAAAAAAAAAAts3JX81Yt27dYvHixTF37tyorq6OVCqVOY0rIiI/Pz8iIh5//PHM3Jlnntmgd44dOzaef/75iIjYb7/94uabb876vNpImcIAACAASURBVCQAAAAAAAAA0LjSqeqkIwAJcfJXM9avX7+IiFi9enUsWLAgIrJP/srPz4+ysrKYOXNmRGz+DOTQoUPr/b6777477r///sxev/rVr6Jjx4713g8AAAAAAAAAANg+J381Y8cff3xMmDAhIjZ/+rF3795ZJ38VFBTE7NmzY926dRERcfLJJ8dZZ50Vy5Ytq9X+r732WvTs2XOb98rKyuKcc87Z4frnnntOOQwAAAAAAAAAAOrJyV/N2LHHHhvp9OZf8TPPPBMREeXl5Zn7BQUFMXny5Mz47LPP3r0BAQAAAAAAAACAenPyVzPWrl276NGjRyxcuDDmz58fa9asyZz81apVq1i9enWmFLbvvvvGiSeeGF27do2CgoJav2Pp0qVZhbKuXbtGXl7t/rWq7XMAAAAAAAAAAEBN2jfN3LHHHhsLFy6MqqqqePbZZ6OsrCwiIoqKimLKlClRWVkZEZtP/Uqn0/HHP/6xVvuWl5fHjTfeGH/6058yc9/5znfiu9/9buP/IQAAAAAAAAAAgBp89rGZO+644zLXTz31VObkr9atW8ecOXMiIiKdTtfpk48rVqyIr3zlK5niVzqdjiuvvFLxCwAAAAAAAAAAdiMnfzVzffr0ie7du8fw4cNj+PDhcc4550TE5pO/7rjjjrj33nvj7bffjv32269W+z355JNx5ZVXxsqVKyMiok2bNnHTTTfFySefvMv+DAAAAAAAAAAAQE3KX81cx44dY+rUqZnxx5993GOPPaK4uDguuuiiWu3zr3/9K6677rp45JFHMnPdunWLX//613HIIYc0bmgAAAAAAAAAAGCnlL9amE2bNkXE5vJXbT3++ONx/fXXx4cffpg1v3jx4hgyZEidMzz66KPRo0ePOq8DAAAAAAAAAGpKp5JOACRF+asF2bRpU+bkrz333HOnz7/xxhtxww03xIsvvrirowEAAAAAAAAAAHWk/NWCrFq1KnPdtm3b7T63YsWKuP3222PixIlRVVWVmW/dunXm5LDi4uLo0qVLvXIUFBTUax0AAAAAAAAAAPAfyl8tyJblr/bt29e4v2LFirjjjjviL3/5S+aEsIiIwsLCGDVqVEREjB8/PiIiLrjggvjOd76zixMDAAAAAAAAAADbo/zVgixZsiRzvWbNmqx7d9xxR9x6661Zpa+IiIEDB8YPf/jD6Nq1awwaNCgzP2zYsF0bFgAAAAAAAAAA2KF00gHYfd5///3M9dSpU2Pq1KmZcf/+/SM/Pz8z7tu3b/z5z3+O2267Lbp27Rp///vfY/HixRERceSRR8aBBx6423IDAAAAAAAAAAA1KX+1IG+++WbW+Iorroh33303IiJ69uwZY8eOjaOOOir+8Ic/xD333BNHH3105tlJkyZlrocPH757AgMAAAAAAAAAANvls48tyPz58yMioqCgIMrKymLjxo0xZsyYmDhxYhQVFcXQoUNj6NCh21z70ksvZa5///vfx3333Vfn9//oRz+KAQMG1Cs7AAAAAAAAAACQTfmrhVi+fHksX748IiJOPPHEaN26dUydOjXeeuutuPbaa+OGG27Y4frq6urM9bJly+qVIZVK1WsdAAAAAAAAAABQk/JXC/HMM89krvv27RuDBw+O2bNnx4YNG2LSpEnxmc98Zpd/znHPPffcpfsDAAAAAAAAQEuUTjoAkBjlrxZizpw5meu+fftGly5d4uKLL46f//znERFx9dVXx5FHHhkHHnjgNtfPmDGjXu8dPHhwvPfeexER0bZt23rtAQAAAAAAAAAA1KT82QKsXbs2nnrqqYiI2HvvvaNnz54REfHVr341Dj744IiI2LBhQ3z/+9+PsrKyRn33qlWrMtft2rVr1L0BAAAAAAAAAKAlU/5q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AKCQOPkrD84888xYsmRJ5jStRx99NB544IE466yzEk6W7Y9//GN885vfjHQ6HRERFRUVMWvWrOjSpcsen582bVpMmjQprxnKy8vzuh8AAAAAAAAAALRVyl95Mm3atHj66adj06ZNERHxve99L9773vfGoEGD4vjjj4/KyspG7TdhwoRYvHhxRET06NEjfvOb30RJSe5/uv74xz/GhAkTYvv27RERUVJSErfcckscfvjhe13ToUOH6NChQ87vBAAAAAAAAACan7u+oO3y93+edOrUKb7zne9kxlu3bo1vfOMbUVtb2+i91q1bF7/73e8y43HjxjWp+PWHP/whq/iVSqVi6tSpcdJJJ+W8JwAAAAAAAAAAkCzlrzwaOXJknHbaaZlx586do7q6utH7zJ8/P+rr6yMiol27dnH22WfnnGn+/PnxpS99Kav4NW3atKwrKXPJCAAAAAAAAAAAJMu1j3l29dVXx/Lly+Oiiy6Kc889N1KpVKPWv/7663HPPfdkxqNHj45OnTo1OsfOnTvjuuuui7vuuisz9/aJX+ecc07WsxMnTow333wzrr766jjyyCMb/S4AAAAAAAAAAKDlKX/lWefOnWPRokVRWlqa0/o5c+bEli1bMuPRo0fntM/DDz+cVfwqLi6OqVOn7naK2BNPPBG//e1vIyLi05/+dNx8880xatSonN4JAAAAAAAAAAC0HNc+NoNci19r167NOvUrIqK8vDynvU4//fTo2bNnZo877rhjt+JXXV1dXHfddZlx165d48QTT8zpfQAAAAAAAAAAQMtS/noXmTp1amzbti0ve5WVlcVXvvKV6NatW9x9991x8skn7/bMvHnzYuXKlZnxlClToqKiIi/vBwAAAAAAAAAAmpdrH3O0ffv2vX6XSqWirKysUfs99NBDsWTJkt3m6+vr46qrropPfvKTccIJJzRqz7Fjx8ZJJ50U3bt33+27qqqq+OEPf5gZjxgxIkaMGNGo/QEAAAAAAAAAgOQof+Vg06ZN+7wesXfv3rF48eIG71dVVRXXXHPNHr+78cYb44knnoiFCxfGpZdeGhMmTIhUKtWgfYuLi/dY/Eqn03HVVVdFTU1NRER07tw5pk6dmvl+yJAhDc6eqxNOOCHmzZvX7O8BAAAAAAAAAIDWSvkrYbW1tXHZZZfFW2+9FRERRUVFUV9fn/n+iSeeiIh/nQB26623xjPPPBM33nhjHHzwwTm/c968ebF06dLM+LrrrouuXbvmvB8AAAAAAAAAkJyiVDrpCEBCipIO0NZNmTIl/vrXv2bGl1xySdb33/jGN+Kggw7KjJcsWRKf/vSn4/nnn8/pfc8991zMmDEjMx43blx89KMfzWkvAAAAAAAAAAAgOU7+ykHXrl2jsrIya+6pp56K888/v1H7zJgxIxYuXJgZjx49Os4777y47bbbMnMnnXRSjBo1Kr785S/H3//+94iIWLduXZx33nkxZcqUOOussxr8vjfeeCO+9rWvxY4dOzJz48eP3+25t08ba6zrr78+HnrooYiI6N+/f9x77717fbasrCyndwAAAAAAAAAAAP+i/JWQefPmxZw5czLjIUOGxDXXXBM1NTW7PduvX7+477774qqrropFixZFRMT27dvj29/+djz33HMxZcqUKC0t3ef76urq4vLLL4+qqqqs+VQqtduznTt3zuVXyip0FRUV5bwPAAAAAAAAAACwf659TMDs2bPj+uuvz4x79+4ds2fPjnbt2u11TYcOHeLWW2+Nyy67LIqK/v2n7b777ovzzz8/Nm/evM93Tps2LecTvQAAAAAAAAAAgHcf5a8WlE6n4+abb46bb745M9e1jQFJzgAAIABJREFUa9e48847o2fPnvtdn0ql4stf/nLccccd0aFDh8z8M888E5/61Kfi+eef3+O6W265Je6///6m/wIAAAAAAAAAAMC7hvJXC9m6dWtcdtllMXv27Mxcp06d4kc/+lH079+/UXt95CMfiXvuuSe6d++emduwYUOMGzcuHnnkkaxnb7/99rjjjjsyY1cxAgAAAAAAAABA66D81QLWrl0b5557bixatCgz16tXr7j77rtjyJAhOe15xBFHxAMPPBBHHnlkZm7btm3xta99Le69995Ip9MxY8aMuO222zLfDxw4MKZNm5b7LwIAAAAAAAAAALxrKH81s1/+8pcxZsyY+Nvf/paZO+KII+Lee++Nww47rEl7d+/ePe6+++748Ic/nJnr1q1bfOQjH4nvf//7MWfOnMx8165dY+7cuXHQQQc16Z0AAAAAAAAAAMC7g/JXM7rhhhvi61//erz11luZuZNPPjnuvvvurCsbm6JDhw4xa9as+MxnPhPl5eUxa9as6NGjRwwaNCjzzEEHHRRz586NPn365OWdAAAAAAAAAMC7R1HKT2v4gVwofzWjM888Mw455JCIiCgtLY1vfvObMXv27KioqMjre4qLi2PatGmxcOHCOProoyMi4rTTTotDDjkkOnXqFPPmzcu6HhIAAAAAAAAAACh8yl/NaNCgQTF37twYMmRI3HPPPXHRRRdFKtV8Vc3+/ftnPpeVlcUXv/jFmDdvXhx11FHN9k4AAAAAAAAAACAZJUkHaO2OPvroeOihhxJ59xe+8IVE3gsAAAAAAAAAADQ/J38BAAAAAAAAAAAUIOUvAAAAAAAAAACAAqT8lSfLly9POgIAAAAAAAAAANCGKH/lwezZs+Omm27KjF955ZV45JFHEkwEAAAAAAAAAAC0diVJByhk6XQ6pk+fHvPmzdtt/sorr4wDDzwwTjzxxEbtmUqlory8PDMuKiqcfl46nU46AgAAAAAAAAAAtBnKXznauXNnTJkyJR588MHM3LBhw6KioiIWL14ctbW1cdFFF8U555wTEydOjI4dOzZo34MPPjiWLVvWXLGb1YYNGzKfU6lUgkkAAAAAAAAAoO0o8n/RQ5ul/JWDHTt2xMSJE+PRRx/NzB177LExe/bsqK2tjXHjxsULL7wQ6XQ67r333liwYEGcdNJJMWLEiBgwYED06NEjOnfuHCUlJTmd7FVfXx91dXWxY8eO2LFjR9TV1e02Pvzww/P5K+9XVVVVLF26NDPu0KFDi74fAAAAAAAAAADaGuWvHDz55JNZxa9BgwbF7Nmzo7y8PMrLy+PHP/5xfOUrX8mc4LV9+/Z47LHH4rHHHtvjfqlUKlKpVBQVFe31czqdzhS86uvr95nvyCOPjIULF+bvF46IW265JV599dU4+OCDo1OnTnHAAQdEaWlpFBUVxbp16+KBBx6I7du3Z54/9NBD8/p+AAAAAAAAAAAgm/JXDk488cQ4/PDDY+XKldG1a9eYO3dudOrUKfN9ly5d4q677or58+fH3Llzs65D3JN0Oh3pdHq/pa6GOuOMM/Kyzzu9/vrrsWDBggY/f8opp+Q9AwAAAAAAAAAA8G/KXzlIpVJx8cUXx+TJk2PWrFnRu3fv3Z4pKSmJz33uc3HuuefGk08+GU888URUVlbGhg0borq6OmprazPXNL59VWM6nW5ytqKiovjEJz7R5H12NXjw4AY/O2LEiBg5cmTeMwAAAAAAAAAAAP+m/JWj0047Lbp06RLHHHPMPp8rKSmJE088MU488cT97llfXx87d+7c7Y9vnwz2znJYOp2OVCoVEf8qfL19TWRxcXGUl5c37Zfbg8MOOyxKS0szJ5TtekrZAQccEIMGDYrRo0fH5z73uUw2AAAAAAAAAACgeSh/5aioqCiOP/74vO9ZVFSU1z13dfzxx0dlZWWj133gAx+I559/frf5+vr6SKfTUVxcnI94AAAAAAAAAABAAyl/0STNXVYDAAAAAAAAAAD2THMHAAAAAAAAAACgADn5CwAAAAAAAACggBUnHQBIjJO/AAAAAAAAAAAACpDyFwAAAAAAAAAAQAFS/gIAAAAAAAAAAChAyl8AAAAAAAAAAAAFqCTpAAAAAABA/lSvnpR0hCbpOuSOpCM02abKCUlHoJWoq69JOkKTlRZ1SDoCAABAq+bkLwAAAAAAAAAAgAKk/AUAAAAAAAAAAFCAlL8AAAAAAAAAAAAKUEnSAQAAAAAAAAAAyF1RKp10BCAhTv4CAAAAAAAAAAAoQMpfAAAAAAAAAAAABUj5CwAAAAAAAAAAoAApfwEAAAAAAAAAABQg5S8AAAAAAAAAAIACpPwFAAAAAAAAAABQgJS/AAAAAAAAAAAACpDyFwAAAAAAAAAAQAEqSToAAAAAAAAAAAC5K0olnQBIipO/AAAAAAAAAAAACpDyFwAAAAAAAAAAQAFS/gIAAAAAAAAAAChAyl8AAAAAAAAAAAAFSPkLAAAAAAAAAACgACl/AQAAAAAAAAAAFCDlLwAAAAAAAAAAgAJUknQAAAAAAAAAAAByV5RKOgGQFCd/AQAAAAAAAAAAFCDlLwAAAAAAAAAAgAKk/AUAAAAAAAAAAFCAlL8AAAAAAAAAAAAKkPIXAAAAAAAAAABAAVL+AgAAAAAAAAAAKEDKXwAAAAAAAAAAAAVI+QsAAAAAAAAAAKAAlSQdAAAAAAAAAACA3BWnkk4AJMXJXwAAAAAAAAAAAAVI+QsAAAAAAAAAAKAAKX8BAAAAAAAAAAAUIOUvAAAAAAAAAACAAqT8BQAAAAAAAAAAUICUvwAAAAAAAAAAAAqQ8hcAAAAAAAAAAEABUv4CAAAAAAAAAAAoQCVJBwAAAAAAAAAAIHdFqaQTAElx8hcAAAAAAAAAAEABcvIX+zRy5Mh4/fXXIyJi8ODBMX/+/IQTAQAAAAAAAAAAEcpf7MPq1atjzZo1mfGwYcMSTAMAAAAAAAAAALyTax/Zq2eeeSZrPHLkyISSAAAAAAAAAAAAu1L+Yq+WLVuW+dyzZ8845phjEkwDAAAAAAAAAAC8k/IXe/XOk79GjBiRYBIAAAAAAAAAAGBXyl/s0T//+c944YUXMuPhw4cnmAYAAAAAAAAAANiV8hd7tGzZskin0xER0alTp3j/+9+fcCIAAAAAAAAAAOCdSpIOwLvTsmXLMp8/8pGPREmJv1QAAAAAAAAA4N2oKJVOOgKQECd/sUfPPPNM5vPIkSMTTAIAAAAAAAAAAOyJ8he7qauri+eeey4iItq1axcf+tCHEk4EAAAAAAAAAADsSvmL3axYsSJqamoiIuJDH/pQtG/fPuFEAAAAAAAAAADArkqSDsC7zzHHHBOVlZVJxwAAAAAAAAAAAPbByV8AAAAAAAAAAAAFSPkLAAAAAAAAAACgACl/AQAAAAAAAAAAFCDlLwAAAAAAAAAAgAJUknQAAAAAAAAAAAByV5RKOgGQFCd/AQAAAAAAAAAAFCAnfwEAAADA/5eOdNIR8qCw/3vPjZUXR316e9IxmmRnelsUp9olHaPNO/Q7LyUdocluvaDw/5k0uv+gpCMAAAC0aoX9b4IAAAAAgFal0ItfEaH4BQAAALQY5S8AAAAAAAAAAIACpPwFAAAAAAAAAABQgJS/AAAAAAAAAAAACpDyFwAAAAAAAAAAQAFS/gIAAAAAAAAAAChAJUkHAAAAAAAAAAAgd8VJBwAS4+QvAAAAAAAAAACAAqT8BQAAAAAAAAAAUICUvwAAAAAAAAAAAAqQ8hcAAAAAAAAAAEABUv5iv373u9/FyJEjMz9VVVVJRwIAAAAAAAAAgDavJOkAvPtt2bIl1qxZkxnX1tYmmAYAAAAAAAAAAIhQ/mrTfvSjH8WGDRviQx/6UAwbNizat2+fdCQAAAAAAAAAAKCBlL/aqG3btsWcOXPijTfeiB//+MfxwQ9+MO68886kYwEAAAAAAAAAjVSUSjoBkJSipAOQjEceeSTeeOONzHjMmDEJpgEAAAAAAAAAABpL+auNuueeezKfO3bsGKeeemqCaQAAAAAAAAAAgMZS/mqDli9fHs8991xmPHbs2GjXrl2CiQAAAAAAAAAAgMZS/mqDbrvttsznoqKiOP/88xNMAwAAAAAAAAAA5KIk6QC0rKeffjp+//vfZ8bHHXdcbN26NVauXLnXNa+++mrWePXq1bFz586c3l9RURG9evXKaS0AAAAAAAAAAPBvyl9tzC233JI1fvrpp+MTn/hEo/aYMGFCzu8fPnx4zJw5M+f1AAAAAAAAAADAv7j2sQ1ZsmRJ/OlPf0o6BgAAAAAAAAAAkAfKX23E1q1b45prrkk6BgAAAAAAAAAAkCeufWwjbr311lizZk1mfM455zS4DPbLX/4yvv71r2fGjzzySAwaNCjvGQEAAAAAAACAxitKpZOOACTEyV9twPLly+PHP/5xZtyzZ8+44oorEkwEAAAAAAAAAAA0lfJXK7dly5a46qqror6+PjM3bdq0qKioSDAVAAAAAAAAAADQVMpfrVg6nY5vfetb8cILL2TmRo8eHSeffHKCqQAAAAAAAAAAgHxQ/mrFZs6cGb/+9a8z4169esWkSZMSTAQAAAAAAAAAAOSL8lcrtXTp0rjtttsy4/Ly8pg5c2Z06tQpwVQAAAAAAAAAAEC+KH+1UkOHDo2hQ4dGREQqlYobbrghjjzyyIRTAQAAAAAAAAAA+aL81Uq1a9cuZs6cGV26dIlLL700TjnllKQjAQAAAAAAAAAAeVSSdACaT9euXeMnP/lJDBo0KOkoAAAAAAAAAABAnil/tXLvLH594QtfiCeeeKLJe55++uk5rbvgggviyiuvbPL7AQAAAAAAAIB/K04lnQBIimsfAQAAAAAAAAAACpDyFwAAAAAAAAAAQAFy7WMbcv3110dNTU2j1/3+97+P6dOnZ8Zz5syJPn36NHqfgw8+uNFrAAAAAAAAAACAPVP+akN69uyZ07oVK1Zkjfv06RODBg3KRyQAAAAAAAAAACBHrn0EAAAAAAAAAAAoQMpfAAAAAAAAAAAABUj5CwAAAAAAAAAAoAApfwEAAAAAAAAAABSgkqQDAAAAAAAAAACQu6JU0gmApDj5CwAAAAAAAAAAoAApfwEAAAAAAAAAABQg5S8AAAAAAAAAAIACVJJ0AJpHXV1d/POf/8zLXlu2bMkav/XWW/Haa681ac/i4uI46KCDmrQHAAAAAAAAAAC0ZcpfrdTf/va3OPPMM5tl73POOafJe/Tu3TsWL16chzQAAAAAAAAAANA2ufYRAAAAAAAAAACgACl/AQAAAAAAAAAAFCDXPrZSQ4cOjcrKyqRjAAAAAAAAAAAAzUT5CwAAAAAAAACggBWlkk4AJMW1jwAAAAAAAAAAAAVI+QsAAAAAAAAAAKAAKX8BAAAAAAAAAAAUIOUvAAAAAAAAAACAAqT8BQAAAAAAAAAAUICUvwAAAAAAAAAAAAqQ8hcAAAAAAAAAAEABUv4CAAAAAAAAAAAoQCVJBwAAAACAd4tUpJKO0OYVp9olHYFWYtW0gUlHaLL2/b6TdIQm27pmWtIRAADahCL/cxbaLCd/AQAAAAAAAAAAFCDlLwAAAAAAAAAAgAKk/AUAAAAAAAAAAFCAlL8AAAAAAAAAAAAKkPIXAAAAAAAAAABAAVL+AgAAAAAAAAAAKEDKXwAAAAAAAAAAAAVI+QsAAAAAAAAAAKAAlSQdAAAAAAAAAACA3BWn0klHABLi5C8AAAAAAAAAAIACpPwFAAAAAAAAAABQgJS/2qDXXnstRo0aFaNGjYoZM2YkHQcAAAAAAAAAAMhBSdIBaHk7d+6Ml19+OSIiNm3a1Gzv2bZtW7z88svx4osvxosvvhhHH310jBgxotneBwAAAAAAAAAAbYnyFzmrr6+PzZs3x6uvvhrr1q2LqqqqWLNmTaxZsybWrl0b69evj/r6+szz733ve5W/AAAAAAAAAAAgT5S/2KvXXnst/u///i82b94cGzdujM2bN8fmzZtjw4YNsX79+ti4cWPs2LGjwfstW7YsNm7cGN26dWvG1AAAAAAAAAAA0DYof7FXmzdvjgsvvDCntUVFRdG9e/fo27dv9OvXL/NTVlaW55QAAAAAAAAAANA2KX+xV4cffnj07t071q1bt9t3xcXFUV9fH+l0OiIizjvvvBgyZEj06dMn+vTpE7169VL0AgAAAAAAAIAWUJR0ACAxyl/s04UXXhhr1qyJHj16RPfu3aNnz57Ro0eP6NatW3zwgx+MN954I/Ncnz59Ek4LAAAAAAAAAABth/IX+zRu3LikIwAAAAAAAAAAAHug/NXKff7zn48NGzZkzdXX12c+/+///m88++yzu627/PLLY9SoUc2eDwAAAAAAAAAAyI3yVytXVVUV69at2+v31dXVUV1dvdv8W2+91ZyxAAAAAAAAAACAJipKOgAAAAAAAAAAAACNp/zVRhxxxBFRWVkZlZWV8Yc//CEzP3bs2Mz83LlzmzXDxo0bY/ny5c36DgAAAAAAAAAAaCtc+0jepNPpePXVV2P16tWxZs2arD9WVVVFTU1NHHjggbF06dKkowIAAAAAAAAAQMFT/qJRamtro6qqKqqqqqK2tjYzP378+NiwYUNs3759n+u3bt3a3BEBAAAAAAAAAKBNUP5ir9auXRu//OUvY82aNbFmzZqoqqqKDRs2RH19/W7PrlmzZp97de7cOfr37x/9+vVrrrgAAAAAAAAA0CYVpZJOACRF+Yu9Wr16ddx8880NejaVSkX37t2jX79+0a9fv+jfv3/07ds3U/iqqKho5rQAAAAAAAAAANC2KH+xV4ccckjWeNeC1y9+8YvYtm1bREQ8+uijceihhyaQEgAAAAAAAAAA2iblL/aqd+/eMWnSpEzZq2/fvlFWVpb5/rHHHsuUv0pK/KUEAAAAAAAAAAAtSWOHverYsWN8/vOfTzoGAAAAAAAAAACwB0VJBwAAAAAAAAAAAKDxlL8AAAAAAAAAAAAKkGsf24gVK1bEkCFDdptfsGBBLFiwIIFEAAAAAAAAAABAUyh/0ax27twZa9eujZdeeilefPHFePHFF+Oll16Ku+66K0pLS5OOBwAAAAAAAAAABUv5q40oKyuL3r17R0REfX19rF69OiIiKioqomvXrrs937Fjx0btv3379lixYkVWwevFF1+MVatWRW1t7W7PV1dXx8EHH5zDbwIAAAAAAAAAvFNRKukEQFKUv9qIgQMHxs9//vOIiNi0aVOceOKJERExcuTImD59eoP22LZtW6xevTpWrVoVq1atiq1bt2a+O/300xuVR/kLAAAAAAAAAACaRvmrlXv/+98fAwYMiH79+jV67SOPPBJ//vOf4+WXX45Vq1bF+vXrI51ON3h9SUlJ9OnTJw499NAYMGBA1h+7d+/e6DwAAAAAAAAAAMC/KX+1cjfccEOjnq+vr4/6+vooKSmJhQsXxuOPP96gdccee2wMHjw4U/AaMGBA9O3bN0pLS3OJDQAAAAAAAAAA7IfyFxER8dprr8X8+fPjwQcfjK9+9asxZsyY6Ny5c+b70tLS6Nu3bwwcODDzc+2110Z1dXVERMyYMSP69OmTVHwAAAAAAAAAAGhzlL+IiIiqqqr4wQ9+EBERDz/8cIwZMyY+/elPx4gRI2Lg/2PvzqO1rur9gb+fcziATAKKKFdURIUUccKMqykp1ykUyNTKnLqmeMm04Db482qmS/MqWalFOJTXEecBckJRMadMc8DIUFFAxQlkhsM55/eHyyePTGfChwOv11rP8rv3dw+fhwNrueTt3ltvnS222CItWtT+7fKLX/yi3vssXrw4rVu3bpKaAQAAAAAAAABgfSb8RZKkb9++6datW95666088cQTee+997L77rs36R4LFizIXnvtlX333TeDBg3KPvvsk7KysibdAwAAAAAAAAAA1heSNyRJCoVCDjjggCRJVVVVxo8f3+R7vPnmm1m4cGHGjRuXU045JdXV1U2+BwAAAAAAAAAArC+Evyg68MADi8933XVXk6//xhtvFJ+33HLL5a6RBAAAAAAAAAAA6k76Zj03Z86cPProo5k5c2amT5+esrKyVFdXZ/LkyXn99dfTo0ePJtvr0+GvbbbZpsnWBQAAAAAAAID1WXmhptQlACUi/LWOmj9/fiZPnpz33nsv7777bvGf7777bmbNmlUcN3HixEycOHGFazzwwAM58cQTm6ymT4e/tt122yZbFwAAAAAAAAAA1kfCX+uoKVOm5JhjjmnUGvUJfy1btmy1Y15//fXi83bbbdfgugAAAAAAAAAAAOGvdVaXLl1WO6aioiLdunVL9+7ds+WWW2aLLbbIFltskR//+MeZO3duXnzxxcyaNStdu3Zd4fzWrVsXn6dOnZqtttpqpXvNnDkzzz//fLHdu3fvun8ZAAAAAAAAAABgOcJf66iNN964+LzRRhulZ8+e6dGjR3r27JmePXtmyy23TLdu3VJeXr7c3C9/+csZP358ampqMmHChBx11FEr3GPzzTfPO++8kyS54IIL0qZNm2y//fapqKhIklRXV2fOnDl55plncumll6aqqipJ0r1792yxxRZN/ZUBAAAAAAAAAGC9Ivy1jmrbtm1uuumm9OjRIx06dKjX3H333Tfjx49PRUVFZs+evcpxzzzzTJLkzTffzPHHH1+n9U866aR61QMAAAAAAAAAACxP+GsdttNOOzVo3t57750zzzwzX/3qV9OxY8eVjvvWt76VcePG5eWXX67z2scee2wOP/zwBtUFAAAAAAAAAAD8i/AXy+nQocNKr3r8tA022CDXXnttxowZkwceeCAzZszIkiVLao1p1apVunbtmp133jlHHnlk+vXrt6bKBgAAAAAAAACA9YrwF43Stm3b/OAHP8gPfvCDUpcCAAAAAAAAAADrFeEvAAAAAAAAAIBmrKxQ6gqAUikrdQEAAAAAAAAAAADUn/AXAAAAAAAAAABAMyT8BQAAAAAAAAAA0AwJfwEAAAAAAAAAADRDwl8AAAAAAAAAAADNkPAXAAAAAAAAAABAM9Si1AUAAAAApbVhz4tKXUKjffTqyFKXADSRmtSUuoRGK6RQ6hJIUlWztNQlNNqiN88udQkAAACs5Zz8BQAAAAAAAAAA0Aw5+QsAAAAAAAAAoBkrcwAxrLec/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAAAAAEDDlRVKXQFQKk7+AgAAAAAAAAAAaIac/LWeGjVqVObPn5+dd945AwYMyIYbbljqkgAAAAAAAAAAgHoQ/loP1dTU5Oabb87s2bNzww035OGHHxb+AgAAAAAAAACAZkb4az00ZcqUzJ49O0my++67Z9NNN63TvDlz5uQ3v/lNvfbaYostctxxx9W3RAAAAAAAAAAAYDWEv9ZDDz/8cPF50KBBdZ43f/78XHfddfXaa9dddxX+AgAAAAAAAACANaCs1AXw+XvkkUeSJBUVFTnggAPqPK+mpmZNlQQAAAAAAAAAANSTk7/WA0cffXSefvrp5forKyuzxx57rHDO2LFjs/POO9fqq6qqKj536dIl55xzzgrnPvvssxkzZkwjKgYAAAAAAAAAAFZH+Is6W7p0afG5ffv2+cpXvrLCcUuWLPm8SgIAAAAAAAAAgPWW8Nd6Zsstt0xZ2Ypv+3zvvfcyf/78lc5dtGhR8blly5ZNXhsAAAAAAAAAUH/lhVJXAJSK8Nd65rrrrkuXLl1W+O4nP/lJbr/99pXO/eijj4rPHTt2bPLaAAAAAAAAAACAulvxEVCsF6qrq+s1ftasWcXnjTfeuKnLAQAAAAAAAAAA6kH4az00bdq0nHnmmRkyZEiqqqrqPO+VV14pPvfo0WNNlAYAAAAAAAAAANSR8Nd66C9/+UvGjh2bf/zjH7nnnnvqNGfx4sX505/+VGz36dNnpWMrKiqKz7Nnz254oQAAAAAAAAAAwEoJf62HDjnkkHTs2DFJcsUVV9Rpzi9/+cu8//77SZK2bdumf//+Kx3bpUuX4vPrr7+eK6+8MnPnzk3y8VWTS5cuTWVlZUPLBwAAAAAAAAAAIvy1XmrdunW+9rWvJUn+/ve/57HHHlvl+DFjxuTqq68utr/zne+kVatWKx3/hS98IZ07dy62//d//ze77757evXqlS984QvZcccdc8MNNzTyWwAAAAAAAAAAwPpN+Gs99a1vfSuFQiFJcs0116xwzIIFC/LTn/40o0aNKvb16tUrJ5xwwirXrqioyMiRI1c5pnfv3vWsGAAAAAAAAAAA+DThr/VU9+7di1c3PvHEE8VrGT/tP//zP3PbbbcV2127ds1vf/vbtG7derXrH3bYYfntb3+bfv36rXB8r169GlE9AAAAAAAAAADQotQFUDrf+MY30qNHj3z3u99Nhw4dlnt/+umn5+ijj87ixYuz1VZb5corr8zmm29e5/X322+/7LfffkmSpUuXpqamJklSKBTSsmXLpvkSAAAAAAAAALCeKyvUlLoEoESEvxrg2Wefza233lrqMlbp7LPPTosWq/7xHnDAATnggANW+r5v3775xS9+kQcffDA/+9nP0q5duwbXI+wFAAAAAAAAAABNS/irAaZNm5Zbbrml1GWs0ve///28+OKLSZLZs2cX+ydNmrTCU76S5K233lqu76CDDspBBx20ZooEAAAAAAAAAAAaTPhrHTV9+vQMHz58uf6f/vSn9Vpn9OjR+f3vf9/oerp165bx48c3eh0AAAAAAAAAAOBjwl+sUmVlZRYuXNjodRYtWtQE1QAAAAAAAAAAAJ8Q/mqAr33ta/na175W6jJW6Z133smIESOSJGPHjs14s+jEAAAgAElEQVSMGTOSJMOGDUvbtm1XOOfee+/N5MmTP7caAQAAAAAAAACAhhP+WkdtuummOfHEE5MkkyZNKoa/vv3tb6dLly4rnPPaa68tF/465ZRTcsopp+T555/PEUcckSTZa6+9cuWVV662hl/96lf53e9+lyTZZpttGvxdAAAAAAAAAACA5ZWVugBKZ+nSpXUeu+OOO6ZTp05Jkqeeeirz5s1b7dpjx44ttj8JjgEAAAAAAAAAAE1D+Gs99Je//CXHH398Ro4cWec5ZWVl2WuvvZIklZWVmTBhwirH33nnnfnwww+TJF26dMmAAQMaXC8AAAAAAAAAALA84a/1QFVVVfG5UCjkzjvvzOOPP54JEyYUr4Osi4MOOqj4fM0116x03KJFi/Kb3/ym2D7qqKPSooUbRgEAAAAAAABgTSjzWSc+0BB+76wHFi5cWHwuFAr5xje+keTjUNiqQlyfNWDAgHTr1i1JMnny5Dz11FMrHHfFFVfk3XffTZJ07tw5xxxzTENLBwAAAAAAAAAAVkL4az2wYMGC4nOhUEifPn3Sp0+fJMmtt96aRYsW1Wmd8vLyHHHEEcX2hRdemOrq6lpjXn755fz+978vtk888cS0bdu2MeUDAAAAAAAAAAArIPy1Hvh0+Kt169ZJkiOPPDJJMm/evIwfP77Oax111FHp2LFjkuTFF1/MzTffXHy3aNGijBgxIpWVlUmS7bbbLkcddVSj6wcAAAAAAAAAAJYn/LWOq6qqyty5c5MkLVq0SJs2bZIkBx10UFq1apUkuemmm+q8XocOHTJ8+PBi+4ILLsirr76aqqqq/PCHP8xrr71W3Ov8889Py5Ytm+qrAAAAAAAAAAAAnyL8tY578803iydxderUqdjfvn377LvvvikvL0/Pnj2zbNmyOq/5zW9+M9tuu22Sj08VGz58eM4444w89NBDxTEnnXRS8WpJAAAAAAAAAACg6bUodQGsWVOnTi0+d+vWrda7YcOG5bTTTstWW21VrzUrKipy8cUX5+tf/3oWL16c119/Pa+//nrx/cCBA3PKKac0qm4AAAAAAAAAAGDVnPy1jvvnP/9ZfN5iiy1qvevdu3e9g1+f2HbbbTNy5Mjl+rfffvtceOGFKRQKDVoXAAAAAAAAAACoG+Gvddzjjz9efO7du3eTrfv000/nyiuvXK5/1qxZtfYEAAAAAAAAAADWDNc+rsM++OCD/PWvfy22+/bt2+g1P/roo1xyySW57rrrUl1dvcI9hw8fnkGDBuUHP/hBNt9880bvCQAAAAAAAACsXJnLuWC95eSvddiECROKAa02bdpk5513XuX4pUuXFp8/e23jokWLcvXVV2f//ffPNddcUyv49fWvfz0jR45Mixb/yhKOGzcuBx54YM4888y8+uqrTfF1AAAAAAAAAACAT3Hy1zqquro61157bbH95S9/OS1btkySVFZWZvHixWnfvn3x/YwZM/Lkk08W223btk2SvPfee7nppptyzTXXZPbs2bX2aN++fX72s59l0KBBSZJ+/fplxIgRmTlzZnGfsWPHZuzYsdlpp50yePDg7LXXXtlyyy3XzJcGAAAAAAAAAID1iPDXOuquu+7KK6+8UmwPHjy4+PzRRx9lzz33TKtWrdKuXbuUl5fngw8+SFVVVZKPTwlbtmxZhg0blkmTJmXZsmXLrT9o0KD85Cc/SZcuXYp9u+yyS8aPH5/f//73ueqqq7JkyZLiu+effz7PP/98kmSzzTbLr3/96+y0005N/r0BAAAAAAAAAGB94drHddTdd99dfO7evXsGDBhQbG+88cbZaKONsmTJknzwwQd59913i8GvJDn66KOz6aab5plnnlku+PXFL34x1157bUaNGlUr+PWJDTbYIKeddlruvffefPvb306bNm2WG7PZZpulb9++TfAtAQAAAAAAAABg/SX8tY66+OKL079//yTJSSedlPLy8lrvt91225SV/evHXygUsvnmm2fEiBE57bTT0rFjx5xwwglJkrKysuyzzz75v//7v1xzzTXZfffdV7t/t27d8j//8z959NFHc/rpp2fnnXdOoVBIRUVFzjnnnBQKhSb8tgAAAAAAAAAAsP4p1NTU1JS6CNaMJUuW5Ne//nVGjhxZK+j1aVVVVamqqkp5eflyAbFFixblqquuytChQ9OtW7dG1/Puu+/mtddey5e+9KVGr/X5eGX1QwAAANYBG/a8qNQlNNpHr44sdQlAE6lJ8//PlYX4Hx/XBlU1S0tdQqOVF1qWugQAYJ22XakLoAk99NafSl0CTWDfbgeXugSaIeEvWCnhLwAAYP0g/AWsTYS/aCrCXwAAqyP8tS4R/lo3CH/REK59BAAAAAAAAAAAaIZalLoAAAAAAAAAAAAartwBxLDecvIXAAAAAAAAAABAMyT8BQAAAAAAAAAA0AwJfwEAAAAAAAAAADRDLUpdAAAAAFBac179QalLACgqpFDqElhHlBUqSl1Co3XY+helLqHR5r72k1KXAAAAsE5z8hcAAAAAAAAAAEAzJPwFAAAAAAAAAADQDAl/AQAAAAAAAAAANEPCXwAAAAAAAAAAAM1Qi1IXAAAAAAAAAABAw5UVakpdAlAiTv4CAAAAAAAAAABohoS/AAAAAAAAAAAAmiHhLwAAAAAAAAAAgGZI+AsAAAAAAAAAAKAZEv4CAAAAAAAAAABohoS/AAAAAAAAAAAAmiHhLwAAAAAAAAAAgGaoRakLAAAAAAAAAACg4coKpa4AKBUnfwEAAAAAAAAAADRDa/3JX9XV1Xn99dfzj3/8I7Nnz868efOSJK1atcqGG26Yrl27Ztttt80mm2xS4krXblVVVfnnP/+ZadOmZdasWVm0aFGSpHXr1mnfvn023XTT9OjRI926dStxpQAAAAAAAAAAQF2steGvF154ITfddFPuvffeYuBrVbp3755hw4bl61//+grfH3300Xn66adXuUZFRUXat2+fjh07pnfv3tlpp51y8MEHN1mw7NVXX83BBx9cq+9b3/pWzjrrrCZZ/7OqqqrywAMPZNy4cfnzn/+chQsXrnbORhttlC9/+cs58cQT07Nnz+XeT5w4McOGDWtwTW3atMlzzz3X4PkAAAAAAAAAAMDH1rprHz/44IOMGDEihx9+eG6++eY6Bb+SZPr06Xn00UcbtXdlZWU+/PDDvPbaa/nTn/6U888/P1/5ylcyYsSIvP/++41aO0luueWW5frGjRuXJUuWNHrtzxo/fnz233//nHrqqXnggQfqFPxKPv71v+OOO/Lss882eU0AAAAAAAAAAEDTWatO/nr99dfzn//5n5k5c+Zy71q3bp1NN900rVu3zsKFCzNnzpzMnTt3jde0bNmyjBs3Lo899lguu+yy9OvXr0HrVFZW5s4771yuf+7cubn//vtzyCGHNLbUJMns2bPzk5/8JA8//PAK3xcKhWy44YbZaKONUlZWlnnz5uW9995LVVVVk+wPAAAAAAAAAAB8Ptaa8Nf8+fOXC35VVFTk8MMPz9e+9rXssMMOKSurfVDZO++8k7/97W8ZP358Jk6cWK/9hg0blp133rnYrq6uzvz58zNr1qy89NJLeeSRR7J48eLi+zlz5uSkk07K9ddfn169etX7+02cODEffPBBsV0oFFJTU5Pk4xPBmiL89cYbb+Q73/lOZsyYUat/gw02yKGHHpoBAwakf//+2WCDDWq9X7JkSV555ZX8+c9/zr333pu///3vdd5zm222yciRI+s8vry8vM5jAQAAAAAAAACAlVtrwl+/+tWvagW/OnXqlMsvvzw77rjjSudsuummOfDAA3PggQdm+vTpefLJJ+u834477pivfOUrK30/d+7cjBo1KjfeeGOxb/78+Tn77LNz/fXX13mfT3z6ysc2bdpkp512yhNPPJEkeeqppzJ9+vR079693ut+YubMmfn2t7+dd999t1b/4Ycfnu9///vZZJNNVjq3VatW2XHHHbPjjjtm2LBheeqpp1JRUVGnfTt06LDKX0cAAAAAAAAAAGDNKFv9kDVv6dKly12JeOaZZ64y+PVZ3bt3z+GHH95kNXXo0CFnn312vvOd79Tq/+tf/5qnnnqqXmvNmjUrjz32WLHdt2/f7LLLLsV2TU1Nbr311gbXumjRopx44om1gl8VFRW54IILcu65564y+LUie+yxR3bdddcG1wMAAAAAAAAAAKx5a0X46+WXX87cuXOL7VatWmX//fcvYUX/cuqpp6ZLly61+h5++OF6rXHbbbelqqqq2N5///2z33771Rpz++23p7q6ukE1XnDBBZk6dWqxXVZWlssuuyxDhgxp0HoAAAAAAAAAQPNRVvBZFz7QEGtF+Oudd96p1e7QoUNatFg7bqRs3bp19t1331p9L7/8cp3nf/ZUr4qKihx88MHp06dPtt1222L/O++8k0mTJtW7vilTpmTs2LG1+k4++eTss88+9V4LAAAAAAAAAABoPtaK8FdNTU2t9uzZs7NgwYISVbO8rbfeulb7ww8/rPPcp556KtOnTy+299lnn3Tq1ClJMnjw4FpjG3L1429/+9taJ4Ztt912+d73vlfvdQAAAAAAAAAAgOZlrQh/bb755rXay5Yty80331yiapa3wQYb1Gp/Nqy2Krfcckut9qcDX4ceemjKyv71I3jooYfqFSx77733MmHChFp93/3ud2utCQAAAAAAAAAArJvWipTQ9ttvn4022qhW36hRo/LQQw+VqKLaZs+eXavdpUuXOs2bO3du7r///mK7Y8eOGTBgQLHdtWvX/Pu//3uxXVlZmTvvvLPOdU2YMCFVVVW16jr44IPrPB8AAAAAAAAAAGi+1orwV3l5eb797W/X6lu6dGn+67/+K2effXbmzZtXoso+9txzz9Vqb7fddnWad/fdd2fJkiXF9kEHHZSWLVvWGjNkyJBa7c+eFLYqTzzxRK32F7/4xbRo0aLO8wEAAAAAAAAAgOZrrQh/JckJJ5yQ7bffvlZfTU1Nrr/++vzHf/xHrr322ixduvRzr2v69On585//XKvvP/7jP+o099Zbb63V/mzQ65O12rVrV2xPnTo1f/vb3+q0/ksvvVSrvfvuu9dpHgAAAAAAAAAA0PytNcdEtWzZMldccUW+853vZMqUKbXezZ49O+ecc06uuOKKDBs2LIcddlgqKirWeE1LlizJj3/841RWVhb7+vbtm9122221c//+979n8uTJxfZWW22VnXfeeblxrVu3zgEHHFArKHbLLbescOynVVZW5u23367V17Nnz9XW1dTmzp2biRMn1nn8gAEDUigU1mBFAAAAAAAAAACwflhrwl9JstFGG2Xs2LE599xzc/PNNy/3/u23385ZZ52VMWPGZPjw4Rk6dGjKytbM4WUvv/xyzjjjjFoBroqKipx11ll1Ci999vrGQw89dKVjhw4dWiv89ac//Smnn3562rRps9I5H374Yaqrq2v1dezYcbV1NbWpU6dm2LBhdR4/efJkV1MCAAAAAAAAAEATWOtSOK1bt865556bQYMG5ec//3leffXV5cbMnDkzp59+em644YacffbZ2WGHHeq9z4svvpjy8vJiu7KyMvPmzcurr76av/zlL3nhhRdqjS8vL89FF12UPn36rHbtJUuW5O677y62C4VCBg8evNLx/fr1y+abb54ZM2YkSRYsWJB77rknhx122ErnLFiwYLm+DTfccLW1AQAAAAAAAADrljVzbA7QHKx14a9PfOlLX8rdd9+d22+/PZdddlneeuut5ca8+OKLOfLIIzNy5Mgcd9xx9Vp/9OjRdR7buXPnnHfeefnKV75Sp/EPPPBAPvroo2J7t912y+abb77S8Z+Ewy677LJi3y233LLK8Neng2ufWLZsWZ3qAwAAAAAAAAAAmr+1NvyVfBxw+vrXv55DDz00t912W0aPHp2333671pjKysqcf/75mTFjRs4444wm3b9Vq1YZPHhwTjvttGy00UZ1nvfZKx+HDBmy2jlDhgypFf569tln89prr2Xrrbde4fgVXfE4Z86c/Nu//Vud62wKu+66a2644YbPdU8AAAAAAAAAAKCZnPzXsmXLfOMb38j999+fn/70pysMPl1zzTW58sorG7xHeXl5OnXqlK233jqDBg3Kz372szz88MM555xz6hX8mj59ep588sliu1WrVjnwwANXO2+LLbbIbrvtVqvvsyGyT+vQocNyp3998MEHda4TAAAAAAAAAABo3tbqk78+q2XLljnuuOMyePDgnHXWWbnvvvtqvb/44otz4IEH1un0q8suuywDBw5s8hpvu+221NTUFNtLlixJv379GrTWnXfemR/+8Idp0WL5H1OhUEjXrl1rXYf5/PPPZ++9927QXgAAAAAAAAAAQPPSLE7++qxOnTrlN7/5TY455pha/ZWVlbn22mtLVFVSXV2d22+/vcnWe//99/Pwww+v9P1nTwp7+umnm2xvAAAAAAAAAABg7dYsw1+f+OlPf5revXvX6ps0aVKJqkkee+yxvP3220265qquftxjjz1qtZ999tnMnDmzSfcHAAAAAAAAAADWTs3q2sfPKisryxFHHJGf//znxb5Shp8+G9Q6/PDDs99++9VrjTfffDPnnXdesf3oo49m1qxZ6dq163Jj995771RUVKSysjJJsmzZsvzxj3/M//t//68B1QMAAAAAAAAAAM1Jsw5/JUn37t1rtQuFQknq+PDDD/PQQw/V6vvud7+bLbfcsl7r1NTU5Oqrry6G2KqqqnLHHXfkpJNOWm5s165dc8ghh+S2224r9o0dOzaHHXbYcieiAQAAAAAAAAAA65Zmfe1jksyZM6dWu0uXLiWp46677iqewJUkffr0qXfwK/k4vHbIIYfU6rv11ltXOv673/1uysr+9WNcsmRJTj311MyfP7/eewMAAAAAAAAAzU+h4LMufKAh1orw1wsvvJA333yzQXMffPDBWu3ddtutKUqqt89e+fjZAFd9DBkypFb7jTfeyNNPP73CsVtvvXVOPPHEWn3Tpk3LMccck/fee6/BNQAAAAAAAAAAAGu3tSL8NXXq1AwePDijR49e7iSvVRk3blzuvffeWn2NCV011PPPP59//vOfxXZZWVkOOuigBq/Xo0eP7LLLLrX6Phsu+7RTTz01/fv3r9U3efLkHHHEEZkwYUK99l60aFEuv/zy3H///fWaBwAAAAAAAAAAfL5alLqATyxcuDAXX3xxfve73+XAAw/Ml7/85eyxxx7LXeNYWVmZ559/PjfeeGPGjRtX690BBxywXAjq8/DZYFa/fv3StWvXRq05ePDgPPfcc8X2fffdl//5n/9J+/btlxtbVlaWX/7ylzn22GPzyiuvFPvfeuutDB8+PLvssksGDx6cffbZJ926dVtu/ttvv53JkyfnwQcfzIQJEzJ37tyce+65dapz7ty5mThxYr2+26abbpovfOEL9ZoDAAAAAAAAAADUttaEvz6xePHi3HHHHbnjjjuSJO3bt89GG22U1q1bZ8GCBXnnnXdSWVm53Lxddtkl55xzzuddbhYuXJjx48fX6hs0aFCj1z344INz3nnnZenSpUk+/nUZN25cvvnNb65wfOfOnXPttddm5MiRefTRR2u9e+6554pBsjZt2mTjjTdOmzZtMn/+/MyZMyfz589vcJ1Tp07NsGHD6jXnkEMOyUUXXdTgPQEAAAAAAAAAgLXk2sdWrVqt9N28efMybdq0TJkyJdOnT18u+FVeXp6jjjoqV111VTbccMM1Xepy7r333ixYsKDYrqioyAEHHNDodTfccMPsu+++tfpWdfXjJ3PGjBmTc845J507d17hmIULF+bNN9/MlClTMmPGjJUGv1q3bt2wwgEAAAAAAAAAgM/FWnHy11e/+tV06dIl48ePz5NPPplp06atds4mm2ySgw46KEcccUS22WabNV/kSnw2kLXnnnumY8eOTbL20KFDc++99xbbL730UqZMmZLevXuvdE6hUMgRRxyRQw89NHfddVfuvvvu/PWvf01VVdUq9yoUCtl2223z7//+7xk6dOgq9wAAAAAAAAAAAEqvUFNTU1PqIj5r/vz5ee211zJt2rTMnj07CxYsSKtWrdKuXbtssskm6d27dzbbbLNSl9lsLFy4MC+//HKmT5+eDz/8MIsXL05FRUU22GCDdOzYMd27d0+PHj1KcnLa2u2VUhcAAADwuajJqv+HoeagkPJSlwDAWqYma91/+q63Dbe+oNQlNNrc135S6hIAgJXartQF0ISefm98qUugCXyxy1dLXQLN0Fpx8tdntWvXLn379k3fvn1LXco6oU2bNunXr1/69etX6lIAAAAAAAAAAIAmslaGvwAAAAAAAAAAqJtCqQsASqas1AUAAAAAAAAAAABQf8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMtSh1AQAAAAAAAAAANFyhUOoKgFJx8hcAAAAAAAAAAEAz5OQvAAAAWM8VUl7qEgCgyRXS/I8+mPvaT0pdAuuIpdXzSl1Co/XZ6y+lLqHRnnv0C6UuodHatNik1CU0Wk1NTalLaLSygr/iBQD+xclfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAAAAAEDDOfkH1l/+/AMAAAAAAAAAADRDwl8AAAAAAAAAAADNkPAXAAAAAAAAAABAMyT8BQAAAAAAAAAA0Ay1KHUB64PFixendevWJZu/InPmzEl5eXnat2/foLkffPBBkqRTp07p3Llzk9YGAAAAAAAAAACsnpO/1rD7778/AwcOzHXXXdeg+U899VT22WefXH755Vm8eHGT1XXDDTekf//+OeGEE3LPPffUa+5NN92Ugw8+OAcffHCuuuqqJqsJAAAAAAAAAACoO+GvNejmm2/OKaeckvfeey/nnntuJkyYUK/5lZWV+fnPf545c+bkoosuyv777585c+Y0SW2PPPJIKisrM2nSpDz77LNNsiYAAAAAAAAAAPD5Ef5agwYPHpwddtghSVJdXZ0RI0bkhRdeqPP8P/7xj5k6dWqxPXTo0HTs2LHRdX344Yd5/vnni+399tuv0WsCAAAAAAAAAACfL+GvNahly5b59a9/nQ4dOiRJFi9enNNOO61Op3fNnDkzv/3tb4vtfv365fvf/36T1PXoo4+muro6SbLhhhumX79+TbIuAAAAAAAAAPD5KxRqfNaBDzSE8Nca1r1795x//vnF9syZM/OjH/0oNTWr/kN7xhlnZOHChUmSTp065Ze//GXKy8ubpKZHHnmk+LzPPvukRYsWTbIuAAAAAAAAAADw+RH++hwMHDgwRx55ZLHduXPnLF68eKXjb7755jz++ONJkkKhkAsuuCBdu3ZtkloWL16cSZMmFdv77rtvk6wLAAAAAAAAAAB8vhz59Dk5/fTT8/bbb+fYY4/NXnvttdJxs2bNygUXXFBsH3/88dlnn32arI777rsv8+bNS5K0adMme++9d5OtDQAAAAAAAAAAfH6Ev5rIW2+9la9+9aurHffMM8+s8v2yZcuydOnSYvuGG27IjTfeuNLxu+22W6644oo613nrrbcWnwcOHJi2bdvWeS4AAAAAAAAAALD2EP5qItXV1Vm4cGGTr7to0aJVvl+yZEmd15o+fXqefvrpYnvIkCENrgsAAAAAAAAAACgt4a/1yG233ZaampokSdeuXdO/f/8kSa9evRq85uWXX57LL7+8XnO+973v5ZRTTmnwngAAAAAAAAAAgPDXGvPggw9m8803XyNrX3LJJbn00kvrNWfZsmW5/fbbi+1DDjkkZWVlTV0aAAAAAAAAAADwORH+Wk/cddddefvtt4vtT079SpI2bdqsdn5lZWUqKyuTJIVCoXiC2KdtsMEGKRQKq12roqKiLiUDAAAAAAAAAACrIPy1Hqiurs7vf//7Wn2fPvXrueeeW+0aP/rRj3LnnXcmSfbcc8889thjSZIePXrk9ddfT5Kcd955Ofjgg5uqbAAAAAAAAACgDlZ/TAuwrnLv33rgnnvuybRp0xo8f/HixZkwYUKSpEOHDtltt92K7/r37188yeuee+5pVJ0AAAAAAAAAAEDdCX+t42pqajJ69OhGrfHQQw9lwYIFSZK99947LVr868C4tm3bZtddd02SPPLII5k/f36j9gIAAAAAAAAAAOpG+Gsdd9999+WVV15p1Bo33XRT8Xm//fZb7v2AAQOSJEuWLMmf/vSnRu0FAAAAAAAAAADUjfDXOmzRokW54IILGrXGa6+9lieeeCJJ0r59+xWGvw466KAUCh/fIHzDDTc0aj8AAAAAAAAAAKBuhL/WYaNHj85bb72VJGnRokU222yzeq9x/fXXF58POuigtGrVarkxm222WXbbbbckycsvv5y//e1vDawYAAAAAAAAAACoK+GvddQbb7yRq666qtg++uij071793qt8cEHH+SWW24ptocOHbrSsYccckjxecyYMfXaBwAAAAAAAAAAqL8WpS5gXTVo0KDiVYhNrbKycrVjzjnnnCxdujRJ0qVLl3zve9/LySefXK99rrrqqixatChJsuOOO2bXXXdd6dhBgwblggsuyMKFC/PQQw9lypQp6d27d732AwAAAAAAAAAA6k74aw35JDRVKjNmzCg+//jHP067du3qNf/999+vdeXjcccdt8rx7dq1y9ChQ3PdddelpqYmv/rVrzJ69Oh67QkAAAAAAAAAANSdax/XUUcccUSSZN999611JWNdXXzxxVm4cGGSpFu3bjnwwANXO+eoo44qnnY2ceLETJo0qd77Av3z+GoAACAASURBVAAAAAAAAAD1Uyj4rAsfaAgnf60hDz74YDbffPPVjquqqkp5eXm91r7kkkty6aWXrnLMkCFD8oc//CHnnHNOvdZOkr///e+57bbbiu3hw4enRYvV/1bp2bNn9t9//9x3331JknPPPTd33313WrZsWe8aAAAAAAAAAACAVXPyVxNp2bJldtppp+KnLoGnSZMmZf/9988999xTr7023XTT4j49e/Zc4ZjOnTvn+uuvz8Ybb1yvtauqqnLGGWekuro6SbL11ltn6NChdZ5/6qmnpqzs499W06ZNy6hRo+q1PwAAAAAAAAAAUDdO/moim2yySW666aY6j7/++utz9tlnJ0l+9KMfpXPnztljjz3qNPfwww/P4Ycfvtpx3bt3r3M9n7jyyivz0ksvFdsjRoyo18lkPXv2zODBg3P77bcnSa6++ursvffe2XPPPetdCwAAAAAAAAAAsHJO/moCL730Uh5//PEsW7ZsuXdPPfVU8bNw4cJi/6GHHpoePXokSZYuXZrhw4dnypQpdd7z6quvzl133dX44j/lpZdeyiWXXFJs77fffhk4cGC91xk5cmQ6dOiQJKmpqckPf/jDvPHGG01WJwAAAAAAAAAAIPzVJC677LIcf/zx2XPPPfPHP/6x1rtjjjmm+JkxY0axv127drnsssvSrl27JMm8efPyX//1X5k9e/Yq91q0aFF++MMf5rzzzsvpp5+ep556qkm+w9y5c3Pqqadm6dKlSZI2bdrkzDPPbNBaG2+8cUaMGFFsz5kzJyeeeOJqvxsAAAAAAAAAAFB3wl+N9OGHH2bSpElJPg45dezYsc5ze/bsmQsvvDCFQiFJMnPmzPz3f/93qqurVzqnvLw806ZNS5JUVlbmlFNOyauvvtrwL5CkqqoqI0aMqBVOO/PMM7Pppps2eM0jjzwye+21V7E9bdq0HHvssfnggw8aVSsAAAAAAAAAAPAx4a9GGj9+fCorK5N8fFrW/vvvX6/5++67b4455phie9KkSbnssstWOr5ly5a55JJLiiGzjz76KCeeeGKjQlU/+9nP8uijjxbbgwcPztChQxu8XpIUCoVceOGFtQJk//jHP3LUUUdl+vTpjVobAAAAAAAAAAAQ/mq0O+64o/g8cODAtGnTpt5rjBw5Mr169Sq2J0+enKqqqmJ75syZ+d73vpdJkyaluro6//Zv/5ZRo0alrOzjH9+MGTMybNiwLFmypN57X3zxxbnpppuK7V69euWss85Kklx55ZXp1avXcp9Ro0YVx19++eUrHHPxxRenc+fOueSSS2r9mrz++us57LDD8vDDD9e7VgAAAAAAAAAA4F+Evxrh1VdfzUsvvVRsDxkypEHrtGzZMr/85S/TsWPHnHXWWRk9enTKy8uL72fMmJEHHnggJ5xwQgYOHJiamprstddeOeWUU4pjXnjhhZx55pn12veiiy7K6NGji+2uXbtmzJgxadu2bYO+x4r07ds3l156aSoqKop9H330USZPntxkewAAAAAAAADA+qzgs058oCGEvxrhmmuuKT537do1/fv3b/Ba22yzTSZOnJhvfetby7178803i89t27ZNofDxH/mTTz45AwYMKL6744478oc//KFO+y1dujSPP/54sd2hQ4eMGTOm1jWNFRUVadOmzXKfTwe5VjamZcuWxTF77rlnLr300mywwQZJkgMPPDDDhw+vU50AAAAAAAAAAMCKtSh1Ac3V7Nmza135+M1vfrN4DWNDrezKyKlTpxafd9hhh+JzoVDI+eefnyFDhmTWrFlJkgsvvDDbbrtt9tprr1Xu1bJly4wZMyZHHHFEFixYkD/84Q/p3bt3rTHHHHNMjjnmmOXmjhkzpnj143HHHZeRI0eu9rsNGDAg1157bUaNGpXzzz9/teMBAAAAAAAAAIBVc/JXA914441ZtGhRkqRVq1Y58sgjVzjuk1O6ko+vO2yIv/3tb8XnnXfeuda7zp0758ILLywGz6qqqnLRRRelpqZmtetuvPHGGT16dK655ppsv/32DaqtPvr06ZM//OEPKw25AQAAAAAAAAAAdSf81QBLly7NddddV2wPHjw4nTt3XuHYDh06FJ+ff/75eu/12muv1Zr3pS99abkxe+yxR04++eTi81VXXVUrdLYq2223Xbbbbrt61wUAAAAAAAAAAJSWax8b4Lnnnsvs2bOL7WOPPXalY7fddts888wzSZLLL78822+/ffr371+ncNarr76aH/zgB8VTvHr16pWtttpqhWOHDx+ejTbaKEceeWRatPBjBQAAAAAAAACAdZ2UUAPssccemTBhQq655pq89dZb2WabbVY69pBDDimGv+bMmZPjjz8+bdq0SadOnVa5x8KFC2sFzJLk+9///krHl5eX56ijjqrHtwAAAAAAAAAAAJoz4a8G2myzzfKjH/1oteMOP/zwPPTQQ3nkkUeKfQsXLszChQvrtd/JJ5+cgQMH1rtOAAAAAAAAAABg3ST8tYaVl5fnd7/7XW688cbcfffdmTp1aubPn1+8ynFlKioq0rVr1+ywww755je/mf79+39OFQMAAAAAAAAAAM2B8Nfn4JMrGUt9LWNFRUVatmyZJCkrKytpLQAAAAAAAABA0ygrlLoCoFQKNas7ggrWW6+UugAAAAAAAGi0pdXzSl1Co/XZ6y+lLqHRnnv0C6UuodHatNik1CU02rrwV6NlBed70FS2K3UBNKGXZo8rdQk0gT6dBpW6BJohxz8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzZDwFwAAAAAAAAAAQDMk/AUAAAAAAAAAANAMCX8BAAAAAAAAAAA0Q8JfAAAAAAAAAAAAzVCLUhcAAAAAAADAmtWyrH2pS2i0+XNnlrqERvpCCuvAX80VUl7qEhqlJstSVmj+PwcAgE/4NxsAAAAAAIB1mODX2kHwa+0g+AWsqwqlLgAoGdc+AgAAAAAAAAAANEPCXwAAAAAAAAAAAM2Q8BcAAAAAAAAAAEAzJPwFAAAAAAAAAADQDAl/AQAAAAAAAAAANEMtSl0AAAAAAAAAAACwbnj33XfzwgsvZMaMGVm4cGFat26dzTbbLH369En37t1LXV6SpKqqKm+88Ub++c9/5v3338+8efPSsmXLbLjhhtlss83St2/ftGvXrtRl1onwFwAAAAAAAAAA0CgPPfRQLr/88jz33HOpqalZ4ZjevXvn+OOPz+DBg1MoFD7X+qZOnZqJEyfmySefzF//+tcsWrRopWPLysrSp8//Z+/O470e8//xP8+WlpP2jLKWUUQUhZEljS37FhlDMSWTStqtoSkZQvXNUmTPEmJIiG5Mw6AhRkOWLJW0mMJp75zz+8Nv3h/vOtU573NO707d77fbud3e1/V+XdfrcWZOf3ncrmu/OP/88+Okk06KSpUqbcGkJZNRuLH/tWG791m6AwAAAAAAABHRYL+H0x2h1L6YeUK6I5Ra1ex66Y4AlKm90x2AMvSfZS+kOwJlYN+aJ6c7QkqWL18egwYNipdffrnYa1q3bh2333571K1btxyT/eL555+PsWPHxmefpdYD2W233eKWW26JFi1alHGyspGZ7gAAAAAAAAAAAEDFs3z58ujcuXOJil8REe+++26cf/75sXjx4nJK9n+mTZuWcvErIuLbb7+NP/zhD/H888+XYaqy49rHNHv88cfjyy+/jIiIU045JZo3b57mRP9nzZo1KR1bt27dusjO9qcFAAAAAAAAALAtu+qqq+LDDz9MmmvQoEF06tQpDjvssPjNb34Tixcvjvfffz/Gjx+f6MhERHzzzTfRo0ePeOSRR7Z4z+SAAw6IQw89NFq1ahUNGzaMOnXqRH5+fixYsCDefvvtePTRR+O7775LPJ+fnx+DBg2K2rVrR5s2bbZo1s3R0EmzV199NaZPnx4REfvss0+5lb8effTROOigg6Jp06bFen7u3LnRq1evOProo6Nnz54lelfPnj2jRo0a0a9fv6hdu3YqcQEAAAAAAAAA2Iq9/vrrMWXKlKS51q1bx5gxY6J69eqJuR133DEaN24cp512WvTr1y9pzQcffBCPP/54XHDBBeWet2bNmnHWWWfFOeecE3vuuWeRz9SuXTuaNWsWF154YQwZMiSeeOKJxHfr1q2L66+/PiZPnhw77LBDuectLtc+buPy8/PjhhtuiBtvvDE6deoUn3/++WbXzJ49O84444yYNWtW/L//9//iySefLPb7pk+fHq+99lo888wzceKJJ8aLL75YmvgAAAAAAAAAAGxlCgsL484770yaa9CgQdx1111Jxa9fq1SpUowYMSKaNWuWNH/33XfHypUryy1r1apVo1u3bjF16tTo37//Rotfv1apUqW48cYb4/TTT0+anzdvXjz99NPlFTUlyl/buFmzZsVTTz0VERFLly6NTp06xZw5cza5Zq+99op99903Mb7hhhvi73//+2bftXbt2hg6dGhi/NNPP0WdOnVSTA4AAAAAAAAAwNbotddei08//TRp7uqrr47c3NxNrsvKyoohQ4YkzS1evLhEBxOV1I033hi9e/feaCltU6666qrYcccdk+Zee+21sopWJpS/tnHNmzeP4cOHR0ZGRkRELFmyJC666KKYO3fuRtdkZWXFHXfcETvvvHNE/HJsXa9evTZ7atj6d7N26dIlDj300DL4LQAAAAAAAAAA2Fq89NJLSeOGDRtGu3btirV23333jYMOOihpbv3rI8tSVlZWymtr1KgRxxxzTNLc+++/X9pIZUr5aztw0kknRZ8+fRLjRYsWxcUXXxxLlizZ6JratWvHqFGjolKlShERsXz58vjzn/8cP/74Y5HPz5s3L8aMGZMYt2jRInr27FlGvwEAAAAAAAAAAFuDtWvXxhtvvJE0d9pppyUOJiqOM844I2k8c+bM+OGHH8okX1lr2rRp0njFihWRl5eXpjQbUv7aTnTp0iU6dOiQGH/77bfxpz/9aZN/jPvvv38MGDAgac21115b5LODBw9O3L9as2bNuO222yI7O7uM0gMAAAAAAAAAsDWYOXNm/Pzzz0lzrVu3LtEehxxySNK4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URaUvyjSkiVLtug/KgAAAAAAAAAAtn4HHnhgVK9ePelwonfffbdE5a933303aZyZmRlHHHFEmWXclBkzZsTll18ea9asScxlZ2fH7bffHm3atNkiGcqS8leKnnvuuVKtf+WVV6Jv376xevXqpPkTTjghRowYEVlZWaXaHwAAAAAAAAAAylpOTk4cddRR8cILLyTmnnvuuejRo0dkZGQUa49JkyYljQ888MCoU6dOmeYsyscffxyXXnpprFy5MjGXmZkZw4YNi2OPPbbc318eMtMdYHv02GOPRa9evTYofkVETJkyJQYNGpR0n2g6ZGZmRsOGDaNhw4ZRr169xHxOTk5i/n8/vy6q1atXLzHfoEGDdEQHAAAAAAAAAKAcnXjiiUnjefPmxeuvv16stZ9++mm89957SXMnnHBCmWXbmC+++CL+9Kc/RV5eXtL84MGD49RTTy3395cXJ39tYXfccUfcddddERGx0047Rc2aNWP27NkREbHbbrvFt99+G88991ysXr06/vrXv0alSpW2WLbMzMyoXr16RETUqVMnXn755YiIeP/996Njx44REbHXXntt0L485phjYv78+RERMXr06DjwwAMjImLNmjXxu9/9LvFccdudAAAAAAAAAEDxZfrP8Wxh7dq1iyZNmiQ6LxERf/nLX+LQQw+NatWqbXRdfn5+XH311Ulz9erViw4dOhTrvU2aNEkat27dOh5++OHNrps7d2507tw5li5dmjQ/aNCgOPfcc4v17q2Vk7+2kNWrV8egQYMSxa8dd9wxxo0bl3SqVteuXeOoo46KiF9OALvkkkti2bJlWyzjrrvuGjNmzIgZM2Ykil8RkXRHa25ubrH3q1SpUmK/GTNmbNEiGwAAAAAAAAAA5SMjIyOuuOKKpLn58+fHZZddtsHJWv+zZs2a6Nu3b3z88cdJ8926dYsqVaqUW9aFCxdGp06dYtGiRUnzvXr1ik6dOpXbe7cUJ39tAV9//XX06tUrPv3004iIqF69etx3332x9957Jz2XlZUVI0aMiM6dO8dHH30U7777bpx55pkxevTo2HfffdMRPSJSL38BAAAAAAAAALBtOuaYY+L4449POmDonXfeiVNPPTU6d+4chx12WNSvXz+WLFkS77//fowfPz6++OKLpD1atGgR5513Xrnm7NWrV8ybNy9prl69erFixYq49dZbU9rzhBNOiP32268s4pWa8lc5e+mll+Kaa65JtBpr1qwZ48aNi/3337/I53Nzc2PcuHHRqVOn+M9//hPz58+Pjh07Rt++feOCCy4ot6sT165dG//85z/jiCOO2OC7b7/9NvH51yeVAQAAAAAAAACw/Ro6dGgsWLAgPvroo8Tc/PnzY8iQIZtdu9tuu8XIkSMjO7t860vrn/gVEbF48eIYO3Zsyns2atRoqyl/ufaxnKxcuTJuuummuOKKKxLFrwYNGsRjjz220eLX/9SoUSMeeOCBOOiggyIiYtWqVTFkyJC4+OKLN2giloW8vLzo0qVLPPHEE0V+/9VXXyU+77HHHmX+fgAAAAAAAAAAKp7c3NwYP358HHvssSVad/DBB8eECROifv365ZRs+6H8VQ7eeuutOOWUU+KRRx5JzDVr1iwef/zxaNy4cbH2qFGjRtx///1J/zjeeuutOOmkk+Luu++ONWvWlEnWRYsWxR/+8Id4++23Y/78+UU+8+t2ZmnKX5MmTUraCwAAAAAAAACAii03NzdGjx4dY8aMiRYtWmzy2SZNmsTNN98cjzzySNStW3cLJdy2ufaxDC1btiyGDx8ezzzzTNL8ySefHH/5y1+icuXKJdqvcuXKMWrUqBgzZkyMHj06CgoKYtWqVXH77bfHxIkTo2fPnnHyySdHZmZqHb5PP/00unXrFgsWLIiIiG+++WaDZ+bMmRNff/11RERkZmZu9h/ppkyZMiWmTZsWTZo0iR49epS49QkAAAAAAAAAwNapXbt20a5du1i4cGF8+OGHMX/+/FixYkVUrlw5dt5559h///1j1113LdU7Zs+eXeI1r7/+eqneubVT/ioDhYWF8be//S1uvvnm+OGHHxLzOTk5MWDAgPjjH/+Y8t4ZGRnRvXv3OPDAA2PAgAGxePHiiIiYO3du9OvXL8aOHRtdu3aNE088sUR3oL7xxhvRu3fvWL58eUT8UjQr6r7VJ598MvF5n332idq1a6f8u6xYsSIifvmH+NFHHyl/AQAAAAAAAABsY3baaac47rjj0h1ju+Hax1J6++2346yzzop+/folFb/22GOPmDBhQqmKX792+OGHx9/+9rc4/vjjk+Y/++yz6Nu3bxx33HExfvz4WLp0aZHr8/LyksaXXXZZovhVr169ePjhh6N9+/ZJz8ydOzcmTJiQGJ988sml+h1+/vnnxOcGDRqUai8AAAAAAAAAANjeKX+laPbs2dGlS5fo1KlTzJo1K+m7jh07xqRJk2L//fcv03fWqlUrRo4cGXfffXc0bNgw6bv58+fHzTffHEceeWT0798/1q5dm/T9559/njTOz8+PiIhmzZrFxIkTo3nz5knfr1q1Knr27BmrVq2KiF/uZ+3QoUOp8v+6HKf8BQAAAAAAAABlI8PPNvEDqXDtYwpmzpwZHTt2jIKCgqT53XbbLW688cY47LDDyvX9bdu2jUMPPTTuv//+uO+++xIneEVErFmzJho1ahQ5OTlJayZNmrTBPscff3wMHz48qlSpkjSfl5cXvXr1iv/85z+Jue7du0dubu5msxUWFhY5v27duliyZElivH55DQAAAAAAAAAAKBknf6XgwAMPjI4dOybGOTk50bVr1/jb3/5W7sWv/6lSpUp07949Xn311bjwwgujcuXKERHRpk2buPTSS5Oe/eSTT2L69OlJc926dYs777xzg+LX559/Huedd17S80cddVR06tRpo1l+XTRbsGBBkc988sknidPGIpz8BQAAAAAAAAAApaX8laJBgwZF8+bN44gjjojnn38++vTpkyhgbUl16tSJq6++OqZNmxZ//vOfY9iwYZGRkXwY4D777BPdunWLiIiMjIy48cYbo3fv3knPLV++PG655ZY444wzkq6IbNWqVdxxxx2RmbnxP5Wddtop8fnee++Nr7/+Oun7hQsXxl//+tfEuGHDhlG1atWUfl8AAAAAAAAAAOAXrn1MUU5OTjz00EMbnJyVLrVr145evXpt9PvevXvHd999F02aNIlzzz03Mf/999/Hww8/HE8++WT89NNPSWtOPvnkGDp0aOywww6bfPdRRx0V77zzTkT8csLX8ccfv8nnjznmmM39OgAAAAAAAAAAwGYof5XC1lL8Kq5hw4ZFdnby/+WPPPJIjBs3LmkuNzc3Bg4cGOecc06x9j3//PPjxRdfjFmzZm322YYNG8bll19e/NAAAAAAAAAAAECRlL+2I+sXvyIievbsGdOnT49PPvkkMjIyXSlwawAAIABJREFU4tRTT40+ffokXeW4OVWqVIlHH300Hn300XjzzTdj8eLFsW7dusT3mZmZsdNOO0XLli2jc+fOUaNGjTL5fQAAAAAAAAAAYHuWUVhYWJjuEKTXF198EXfddVd07do1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hw6N8847L4YNGxbHHXdckc9NnTo1OnToEB06dIgpU6ZEQUFBiX6PiF+umBw1alS0a9cu3nvvvRKvBwAAAAAAAAAASs61jyn4+OOPk65sHDBgQMyZM2ez6+rXrx99+vSJiIjGjRuXOsdZZ50VhxxySERE1KhRo8hnbrjhhk3ucdddd0VExIcffhgDBw6Mgw46KOrVq1eiHL17945XXnklIiL69+8fzz33XOy4444l2gMAAAAAAAAAACgZ5a8ULFiwIHFCVtu2beN3v/tdscpfderUia5du5ZZjvbt25dq/RtvvBGzZs1KjM8///wSF78iIs4999xE+eu7776L66+/Pm6//fZSZQMAAAAAAAAAADbNtY8pOProo6Nu3bpRrVq1uP7669MdJ2V333134nO1atWSrpssiTZt2kSHDh0S48mTJyedjAYAAAAAAAAAAJQ9J3+lICcnJ0477bRo0KBB7Lzzzpt9fvjw4XH//fen9K7BgwfH4MGDS/R8x44dN/vctGnT4v3330+ML7rooqhVq1YqESPil6svp0+fHt99911ERAwZMiRat24dDRs2THlPAAAAAAAAAABg45z8laJLLrkkzj///HTHSMnatWtj+PDhiXGNGjXi4osvLtWeubm5MWTIkMQ4Ly8vBg4cGIWFhaXaFwAAAAAAAAAAKJqTv1JUp06dlNa1bNkydt99900+M2vWrPjss88iIuLAAw+MPffcs9jPF8ejjz4aX331VWLco0ePqF69erHXb8zhhx8eHTp0iCeffDIiIt5999148MEHo1OnTqXeGwAAAAAAAAAASKb8tYWdc845ceaZZ27ymVtvvTVR5jr99NM3e43jr5/fnKVLl8aYMWMS47322qtY10QW1/rXP44YMSKOOOKIaNy4cZm9AwAAAAAAAAAAcO1jhVFQUBATJ06Mbt26xZVXXpnyPrfeemv8+OOPifGgQYMiO7vsOoDrX/+4evXquOqqq6KgoKDM3gEAAAAAAAAA/J8MP9vED6RC+auCyMzMjEceeSSmTZsWL7/8cixevLjEe7z55psxceLExLht27bRpk2bsowZEb9c/3jOOeckxjNnzowHHnigzN8DAAAAAAAAAADbM+WvCuSss86KiIh169bFM888U6K1eXl5cd111yXGVapUiauvvrpM8/1anz59ombNmonxnXfeGV9//XW5vQ8AAAAAAAAAALY3yl8VxNq1a+OII45IXNH41FNPRWFhYbHXDxs2LBYsWJAYX3HFFbHrrruWec7/qVWrVvTt2zcxXrVqVVx99dUlygwAAAAAAAAAAGxcdroDbI8KCwvjvvvuixUrVsSqVati9erVsXLlyli1alWsXLkyPvvss8Szt9xySwwbNixWr16dtMfcuXNjxowZ0apVq82+75VXXkm67rF58+Zx4YUXlt0vtBFnn312TJw4MWbOnBkRETNmzIgnnngizjvvvHJ/NwAAAAAAAAAAbOuUv9IgIyMjpkyZEv/+9783++yKFSs2+t0LL7yw2fLX119/HYMGDUqMc3JyYsiQIZGZWf6HvmVkZMT1118fZ599duTn50dExG233Rbt2rWLevXqlfv7AQAAAAAAAABgW+baxzT53e9+V+R8VlZW1KlTJxo1ahQtWrSItm3bxhlnnBGdOnWKXr16xfXXXx/VqlWLiIiXX3451q1bt9F3rFy5Mnr06BF5eXmJuR49ekSTJk3K9pfZhH333TfOP//8xPinn36Km266aYu9HwAAAAAAAAAAtlVO/kqTM888M3bZZZeoXbt21KxZM2rXrh21atWKmjVrRkZGxibX/utf/4oXXnghli5dGv/4xz82+tywYcOSrpA89NBDo0uXLmX2OxRXr1694qWXXoolS5ZERMRbb70VCxcujJ122mmLZwEAAAAAAAAAgG2F8lea7LHHHrHHHnuktPbkk0+O/Pz8OPnkk+Owww6L9957r8jnLrnkkpg1a1Z8/PHHUatWrbjllltSuu7x1yeHpaJ69erRv3//6N+/fxx55JFx0003KX4BAAAAAAAAAEApKX9VQG3bto22bdsmxgsWLEh8zsnJSXzefffd4/HHH4+RI0dGixYtUipc5efnx4wZMxLjKlWqpJT5tNNOixo1asTRRx+d0noAAAAAAAAAoGibuWAM2IYpf1UQ33zzTVSpUiVq1aqVKHitXLkypkyZEi+//HLiufULXjk5OdGnT59N7v3OO+/EJ598EjVr1owaNWpEbm5u7LDDDvHDDz/EE088EXPmzEk827Bhw5R/B8UvAAAAAAAAAAAoO8pfFcQdd9wRkydPjoiIrKysyMnJiVWrViU9k5ubGy1btizx3gsXLoxhw4YV69lfnzgGAAAAAAAAAACkT2a6A1A8BxxwQOJzfn7+BsWvrKysuPbaa6NatWol3rtp06bFeu64446LI488ssT7AwAAAAAAAAAAZc/JXxXEgQceGM2aNYuCgoIoLCyMjIyMyMzMjGrVqsVee+0VZ599djRr1iylvRs1ahS5ubmxYsWKKCgoSPouKysrGjduHGeccUZcdNFFZfGrAAAAAAAAAAAAZSCjsLCwMN0h2Hrk5+cnfgoLC6NKlSqRkZGR7lhp8lm6AwAAAAAAANuIarvflO4IpZb3zTXpjlBqGbG9/ncvKMre6Q5AGZq7/G/pjkAZ2LXaKemOQAXk5C+SZGVlRVZWVrpjAAAAAAAAAAAAm5GZ7gAAAAAAAAAAAACUnPIXAAAAAAAAAABABeTaRwAAAAAAAACACiwj3QGAtHHyFwAAAAAAAAAAQAWk/AUAAAAAAAAAAFABKX8BAAAAAAAAAABUQNnpDgAAAAAAAACbUrfJmHRHKLXl31yb7giltqbgp3RHKLVKmTumOwIAQJly8hcAAAAAAAAAAEAFpPwFAAAAAAAAAABQASl/AQAAAAAAAAAAVEDZ6Q4AAAAAAAAAAEDqMjPSnQBIFyd/AQAAAAAAAAAAVEDKXwAAAAAAAAAAABWQ8hcAAAAAAAAAAEAFpPwFAAAAAAAAAABQASl/AQAAAAAAAAAAVEDKXwAAAAAAAAAAABWQ8hcAAAAAAAAAAEAFlJ3uAFQcTz/9dCxevDhOOeWUaNiwYbrjAAAAAAAAAADAds3JXxTLunXrYtSoUXH77bdHu3btYvDgwemOBAAAAAAAAABERIafbeIHUqH8RbG88sorsWDBgoiIKCwsjEMOOSTNiQAAAAAAAAAAYPum/EWxPPTQQ4nPe+65Zxx//PFpTAMAAAAAAAAAAGSnOwDlZ+jQofHf//632M9fdtll0bhx4w3m//Wvf8UHH3yQGF966aWRmak3CAAAAAAAAAAA6aT8tQ2bOnVqzJ8/v9jPn3POOUWWv+68887E59/85jdx3HHHxerVq1POlZ2dHVlZWSmvBwAAAAAAAAAAlL/YjLfffjveeeedxPj777+Pli1blmrP/v37xyWXXFLaaAAAAAAAAAAAsF1T/tpOXHzxxdG0adMN5gcPHhwrVqzY6Lpfn/oFAAAAAAAAAABsPZS/thOtW7eOtm3bbjA/dOjQjZa/Jk+eHB988EF5RwMAAAAAAAAAAFKg/EWR8vLyYtiwYYlxs2bNYuLEiZGZmZnGVAAAAAAAAAAAwP8of1GkkSNHxqJFiyIiIjMzMwYPHqz4BQAAAAAAAABboYyMwnRHANJEm4cNzJo1Kx555JHE+JxzzonmzZunMREAAAAAAAAAALA+5S+SrFy5Mvr27Rv5+fkREVGrVq248sor05wKAAAAAAAAAABYn/IXSYYOHRpz5sxJjK+77rqoWbNmGhMBAAAAAAAAAABFyU53ALYeb731Vjz55JOJcfv27aNdu3axevXqlPfMyMiISpUqlUU8AAAAAAAAAADgV5S/SDjssMPit7/9bdx6662Rn58ff/rTn6J58+al2rNhw4bx+uuvl1FCAAAAAAAAAADgf5S/SMjIyIiTTz45jjnmmJg7d25Uq1Yt3ZEAAAAAAAAAAICNyEx3ALY+VatWjSZNmqQ7BgAAAAAAAAAAsAlO/mKjdtlll5g9e3axn//73/8el19+eaxatSoifimR3XjjjeUVDwAAAAAAAAAAtmvKX5SJV199NXr37h1r166NiIg6derEvffeG/vtt1+akwEAAAAAAADAti0j3QGAtHHtI6X2/PPPxxVXXJEofjVs2DAmTJig+AUAAAAAAAAAAOVI+YtSeeqpp2LAgAGxbt26iIjYe++9Y8KECbH77runORkAAAAAAAAAAGzbXPtIyp5++um49tpro7CwMCIi9ttvv7jvvvuiZs2aaU4GAAAAAAAAAADbPid/kZJnn302rrnmmkTxq2XLlvHggw8qfgEAAAAAAAAAwBai/EWJPffcc3HVVVdFQUFBRES0atUq7rvvvsjNzU1zMgAAAAAAAAAA2H4of1EiU6dOjUGDBiWKX61bt46xY8dG1apV05wMAAAAAAAAAAC2L8pfFNs777wTV155ZeTn50fEL1c93n333VGlSpXNrs3Pz09cEQkAAAAAAAAAAJRedroDsGV069atVOtnzZoVl112WaxevToiIpo1axZjx46NatWqFWv9p59+Gpdeemm0a9cujj322Dj88MMjIyOjVJkAAAAAAAAAAGB7pvzFZn3//fdx6aWXxvLlyyMiYs8994xx48ZFbm5usff44YcfYvHixfH444/HU089FR999FFkZ/vzAwAAAAAAAIDScvYKbL9c+8gmrVixIrp16xaLFy+OiIi6devGuHHjonbt2iXaZ9GiRYnP9evXV/wCAAAAAAAAAIBS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v/71r+P000/frfh1yCGHxJQpU2LGjBn7LX5NmzYtHnjggdS4WbNmMX369LjllltS20mWlZXFFVdcEX/+858z+G0AAAAAAAAAAIAI5a8G4bXXXku9f+utt2LSpEmxdevWtGuGDh0aixcvrtQxjbfffnvcfvvtqXEikYjJkydHu3btom/fvnHNNdekPtu5c2eMGTMmnnvuuQx8EwAAAAAAAAAA4COOfcyQ2267LUpLSyMiomnTpllO83+2bNkSy5cv3+vnRxxxRNx0003Ro0eP/a5VWloaN954Yzz66KNp81dddVX07t07Nb7oooti3bp1MW/evIiI2LZtW1x88cUxd+7c6NixY/W+CAAAAAAAAAAAkMbOXxnSsmXLaNOmTbRp06bWyl8flcuqYtKkSfHBBx/sNp+fnx/f+MY3YtGiRZUqfq1bty7OPvvs3YpfF198cYwePXq36ydMmBC9evVKjd9777246KKLYuPGjVX+DgAAAAAAAAAAwO6Uv3LIunXr0sb5+fn7vP7111+PJ554Yrf5Ll26xAMPPBDXXnttNG7ceJ9rJJPJmD17dgwePDhWr16d9tmll14aV1111R7vy8/PjylTpkSXLl1Sc+vXr4/Ro0fvduQkAAAAAAAAAABQdcpfOWLHjh0xe/bstLlmzZrt85727dvHt771rdQ4kUjEmDFj4tFHH41jjz12v89cvXp1jBw5Mm666abYtm1bar5Ro0bxox/9KMaNG7fP+5s2bRrTp0+P4uLi1NwLL7wQl112WbV2MQMAAAAAAAAAAP5PIplMJrMdoqFbv359TJo0KZo3bx7NmjWLJk2aRFFRURx00EGRn58fb7/9dixZsiTWr1+fuqdFixbx9NNP73ftZDIZF154YTz33HNx8803R+/evfd7z5tvvhk///nPY8GCBfHJH4/DDz88pkyZEscdd1ylv9/KlStj1KhRUV5enpobOnRo/PjHP670GtnxcrYDAAAAAAAAEZGM+vDrrIpsB6ixZDL3v0PLzrdnO0KNvb/m29mOQL3RZf+XkDN27tp/f4C6r3H+ydmOQA4qyHYAIlq3bh1/+tOfoqSkpNL3DBgwoFLXJRKJuPnmm2Pr1q3RqVOnfV779ttvxx133BHz58+PsrKy3dYZNmxYXHvttfvdceyTevToEePHj48f/OAHERFRXFwcZ599dpXWAAAAAAAA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AAAAAACZofxVA8lkMh5//PEYNmxYjdYpLy+PBx98MDXu3r17HH/88btdt2HDhrRxy5Yta/TcfZk1a1bccMMN8c4779TaMwAAAAAAAAAAgOpT/qqmZ599NoYPHx5XXXVVrF+/vkZr/dd//Vds3LgxNR4xYsQer0smk2nj119/vUbP3Zddu3bFgw8+GH379o3bb789tm3bVmvPAgAAAAAAAAAAqk75q4rWrl0bY8eOjXPPPTeee+65jKw5Z86c1PuDDz44BgwYsMfrDj/88LTxwoULY/v27RnJsDfbt2+PadOmRZ8+fWLevHmxa9euWn0eAAAAAAAAAABQOcpflfTuu+/GxIkTY+DAgbFs2bLUfH5+/l7LWpWxdu3a+POf/5waDxkyJD71qU/t8dqePXumjTds2BBXXHFFbN26tdrP35uTTjop2rVrlxpv2rQpbrzxxvja176W9v0BAAAAAAAAgGxLeNWLF1Sd8td+7NixI6ZPnx5f/epXY+7cuVFeXp767Ctf+UosWrQoJk6cWO31P77rVyKR2OuRjxERgwcPjuLi4rS5FStWxODBg+OPf/xjtTPsyYknnhhLliyJ8ePHR4sWLVLzH9/5bNWqVRl9JgAAAAAAAAAAUHnKX3tRUVERjzzySPTt2zemTp0a27ZtS332xS9+MebOnRvTp0+PTp06VfsZ27dvjwULFqTGPXr0iCOPPHKv1zdr1ixuvPHGSCTS256vv/56fOMb34gxY8bEv/71r2rn+aTCwsK44IILYunSpTF27NgoKipKffbss8/GmWeeGd/+9rfj9ddfz9gzAQAAAAAAAACAylH+2oMVK1bEoEGD4rrrrosNGzak5jt37hzTp0+POXPmxBe+8IUaP2fhwoVpRzaOHDlyv/f069cvbrjhhsjPz9/ts+XLl8fAgQPjyiuvjLVr19Y430eaNm0a3/rWt+K3v/1tjBgxIho1ahQREclkMp544ok444wzYvLkyfH+++9n7JkAAAAAAAAAAMC+JZLJZDLbIeqKF198MW655ZbdjlBs27ZtXH755TFkyJA9lq6qa9CgQfHiiy9GRESbNm1i2bJllV7/6aefjmuvvTbefvvtPX6el5cXAwYMiCuuuCLat2+fscwREa+99lpMmTIllixZEh//8WnevHlccsklcd5550VhYWFGn5kdL2c7AAAAAAAAEBGlFVuyHSEDcv9XchXJsmxHqLE3t2/KdoQa6zO7ebYj1NiqUYn9X1THFRW0znaEDOiS7QBkUEXyn9mOQAbkJT6b7QjkIDt/RcTbb78d48ePjyFDhqQVv5o3bx7XXHNNPPnkkzFs2LCMFr/++hRimtUAACAASURBVNe/popfERFnnnlmldY/+eST44knnojzzz8/tRPXx1VUVMTChQujf//+MW3atCgtLc1I7oiIDh06xM9+9rN46KGHokePHqn5Dz74IG655ZY4/fTTY9GiRaFXCAAAAAAAAAAAtadB7/y1devWmDVrVtx7772xc+fO1Hzjxo3j3HPPjUsuuSQOPvjgWnn2VVddFY8//nhERDRq1CiWL18erVq1qtZa69ati6lTp8bixYujoqJij9ccc8wx8bOf/Szju4BFRPzhD3+I2267LVavXp0237179/jOd74TJ598csafeWDY+QsAAAAAAOoCO3/VDXb+qhvs/FU32PmLusbOX/WDnb+ojgZb/nrvvfeif//+8d5776Xm8vPzY/DgwXHFFVdEmzZtavXZvXr1irKy//0P5DPOOCN+9rOf1XjdNWvWxB133BG/+c1v9rjr1qGHHhq/+tWv4qijjqrxsz4pmUzGE088EVOnTo1169alfXb11VfH6NGjM/7M2qf8BQAAAAAAdYHyV92g/FU3KH/VDcpf1DXKX/WD8hfV0WCPfdy5c2da8SsioqCgIJo2bRqJRO3+x8ZDDz2UKn5FRIwcOTIj6x511FExZcqUeOyxx6JXr167fb5p06YYNWpUfPDBBxl53ic1btw4mjVrttv8J/85AwAAAAAAAAAANddgd/6KiPjHP/4R06ZNixUrVqTNN2rUKIYOHRqjR4/O+DGJFRUV0bt373jjjTciIqJz586p4x8zbenSpXHdddftVvY666yz4qabbsrIM8rLy+Pxxx+PWbNmxZo1a9I+a9euXVx88cUxdOjQKCwszMjzDiw7fwEAAAAAQF1g56+6wc5fdYOdv+oGO39R1yTjhWxHIAMS0S3bEchBDbr89ZFVq1bFtGnT4r//+7/T5vPz86N///5xySWXZOyoxGXLlsXYsWNT4wkTJsQ555yTkbX35NVXX42zzz47Nm/enJpr1KhRrFixIlq0aFHtdUtKSuLhhx+OX/ziF6ki20fatWsXY8aMiSFDhkSjRo2q/YzsU/4CAAAAAIC6QPmrblD+qhuUv+oG5S/qGuWv+kH5i+posMc+ftxxxx0Xd911Vzz88MNx6qmnpuZ37doVCxcujAEDBsQ3v/nNeP7552v8rDlz5qTeFxUVxaBBg2q85r507Ngxvv/976fNlZWVxTPPPFOt9bZu3Rp33XVXnHbaaXHTTTelFb8OP/zwmDRpUjz55JNx5pln5njxCwAAAAAAAAAA6raCbAeoS4499tiYOXNmPP/88zFt2rRYvnx5REQkk8n47W9/G7/97W/jlFNOiTFjxsQJJ5xQ5fVff/31+MMf/pAaDxw4MJo2bZqx/HvTp0+fOOSQQ+Ldd99NzX1yt679effdd+O+++6L2bNnx5Yt6f/vmvbt28eYMWNi8ODBUVDgRwoAAAAAAAAAAA4ETZ09OOaYY2LGjBmxevXquOOOO2LZsmXx0emYK1asiBUrVsSXvvSluOSSS+KUU06p9Lpz5syJj5+yOXLkyIxn35NEIhGHH354WvkrL69ym7698cYbcc8998TDDz8cO3fuTPusQ4cOMWbMmBg4cKDSFwAAAAAAAAAAHGAaO/vQvXv3mD59erzwwgsxbdq0eOqpp1LlrWeffTaeffbZ6N69e1x66aXRu3fvfa5VUlISjz76aGr8xS9+MY4++uhazf9x77//ftq4VatW+7x+3bp1MX369Fi0aFGUl5enfdaxY8dU6Ss/Pz/jWQEAAAAAAAAAgP2r3PZPDVy3bt3ijjvuiAULFkSfPn0ikUikPlu9enV897vf3e8aixcvTitgVWfXr8WLF6ftHFZZ//rXv+K1115Lm/vCF76wz3see+yxmD9/flrxq2PHjnHzzTfH4sWLY8iQIYpfAAAAAAAAAACQRcpfVdC1a9e4/fbb47HHHou+ffumlcD2Z86cOan3hx56aPTp06fKz//JT34S5513XjzzzDOVvmfLli1x3XXXpc2dcMIJcdhhh1V6jc985jNx6623xuLFi2Pw4MFKXwAAAAAAAAAAUAc49rEajj766Pj5z38eL7/8ctxxxx2xcuXKfV6/evXqWLVqVWo8bNiwKCwsrNazn3322Tj//POjS5cu0b9//zj55JPjmGOOiYKC9L/Kd955J5YuXRqzZs2KN998MzVfUFAQ119/faWe1alTpxg7dmz0798/8vL0BAEAAAAAAAAA2Ld33nknVq1aFevXr4/t27dH48aNo23btnHMMcdE+/btsx1vN2vXro3Vq1fHxo0bo7S0NJo0aRJHHHFEfO5zn4vi4uJsx9sv5a8a6NKlS0ydOnW3IxU/afbs2an3+fn5cdZZZ9X42S+//HK8/PLLEfG/ha6WLVtGixYtory8PN599920IyY/UlBQED/60Y+iW7du+11/+PDhcdlllyl9AQAAAAAAAECd53f7ZN+yZcti1qxZ8fe//z2SyeQer+natWtceOGFMWjQoCqduJdpZWVlMXfu3Pj1r38d69at2+M1+fn58R//8R9xySWXxAknnHCAE1ZeIrm3f9pkxIcffhi9evWKHTt2RETEf/7nf8add95ZrbVOP/30eOWVV6p1b8eOHWPixInRo0ePat3fML2c7QAAAAAAAEBElFZsyXaEDMj9X8lVJMuyHaHG3ty+KdsRaqzP7ObZjlBjq0Zl75f9mVJU0DrbETKgS7YDkEHJeCnbEciARByd7QjVsm3bthg/fnw8+eSTlb7nxBNPjClTpsShhx5ai8n27NVXX41vfvObqU2XKuPcc8+N7373u9GoUaNaTFY9dv6qZY8++miq+BURMXLkyGqvNW/evFi4cGEsX748/vGPf8T27dv3eX1+fn6ceOKJMXDgwBgwYEC1j5oEAAAAAAAAAIBP2rZtW1x44YXxP//zP1W6789//nOMHDkyZs+eHa1ataqldLtbu3ZtnHPOObF58+Yq3Xf//ffHW2+9FT//+c+joKBu1a3s/FWLkslknH766fHqq69GRESHDh3iySefzMi2dRUVFfHGG2/Ev//973jrrbfiww8/jIqKimjSpEk0a9YsPvOZz0SXLl2icePGNX5Ww2XnLwAAAAAAqAvs/FU32PmrbrDzV91g5y/qGjt/1Q+5uPPXuHHjYsmSJWlzhx12WFxwwQXRo0ePaNOmTWzcuDH+9re/xS9/+ctYu3Zt2rWf//zn4/777z8ghaqtW7fGkCFDdjvm8fjjj48LLrggunfvHs2bN4+33norli5dGvfff3+8//77addedNFF8Z3vfKfWs1ZF3aqi1TN/+tOfUsWviIizzz47Y+eV5uXlRfv27aN9+/YZWQ8AAAAAAAAAACpr2bJluxW/TjzxxJg+fXo0a9YsNXfwwQdHp06dYtCgQXHNNdek3fP3v/895s2bF+eee26t5502bdpuxa8LLrggvvvd76b1eYqLi6Nbt24xfPjwGDVqVPzrX/9KfXbPPffEwIEDo2vXrrWet7Lysh2gPpszZ07qfePGjWPo0KFZTAMAAAAAAAAAADWXTCZj6tSpaXOHHXZY3HnnnWnFr48rLCyM2267Lbp37542P2PGjNixY0etZY2I2LBhQ1qPJyKid+/eMX78+L1u5NSmTZuYNWtWNGnSJDW3p++dbcpfteTtt9+O5cuXp8b9+vWL4uLiLCYCAAAAAAAAAICae+qpp+LFF19Mm/ve974XTZs23ed9+fn5MWnSpLS5jRs3xoMPPpjxjB939913R0lJSWrcuHHjuPHGG/d7X9u2beOKK65Im1u2bNlu3z2blL9qybx582LXrl2p8YgRI7KYBgAAAAAAAAAAMuM3v/lN2rhdu3bxla98pVL3fvazn/3/2bvvsCiutg3g99CbqDEiKGJvMYnm1WgsiT2xd42BFEVRUWxRsRujib1hRexKNNbYorHExBaNUWPFLkgHBSx02J3vD76d7FK3DCyL9++6vNwdZs6cbXNmzjznOWjUqJHGsuzTR8pJFMUc5Xfs2BFOTk5abd+3b1/Y2dlpLMv++o3JwtgVKKmcnJzg4+MDALC3t8f7779v5BoRERERERERERERERERERFRSSQg92nriApDRkYGzpw5o7GsR48eeU6fmJtevXrh6tWr0vPr168jLi4O5cqVk62eKrdu3UJsbKzGsp49e2q9vYODA9q3b49Dhw5Jy06fPo1x48bJVkdDMPirkLi7uxu7CkREREREREREREREREREREREsrp+/Tpev36tsaxJkyY6ldG0aVON50qlEufOndMpKEtbZ8+e1XhuaWmJ//3vfzqV0aRJE43grwcPHiAyMhIVK1aUpY6G4LSPRERERERERERERERERERERESklfv372s8Nzc3R4MGDXQqw83NDW+//Xa+5crlwYMHGs/r168Pa2trncrILVgse7nGwuAvIiIiIiIiIiIiIiIiIiIiIiLSypMnTzSeu7i4wM7OTudyqlevrvE8ODjYoHrlJXt9s+9XG1WrVoW5uXm+5RoLg7+IiIiIiIiIiIiIiIiIiIiIiEgrjx8/1niu79SHLi4uGs8LI5hKoVAgJCREY5k+9TU3N4eTk5PGMgZ/ERERERERERERERERERERERGRSYmNjdV47uzsrFc52YO/YmJi9K5TXhISEpCRkaGxrDjXVx8Wxq4AEREREREREREREREREREREdGbLjExEUlJSYW6D3t7ezg4OBhURnJyssZzfcvLvl1qaiqUSiXMzOTLZZW9rrntV1vZt8utbGNg8BcRERERERERERERERERERERkZFt3rwZq1atKtR9+Pj4YNSoUQaVkT3oycbGRq9yctsuOTnZ4OC07OVps19tZN+uuAR/cdpHIiIiIiIiIiIiIiIiIiIiIiLSSkpKisZzKysrvcrJLQhL7sxnuQVoWVtb61VW9u2KS/AXM38R5am2sStAREREREREREREREQArJjOgGRSvZSxa2C4R8ONXQMiKp54f7tkOG7sCpAJ4qkyERERERERERERERERERERERFpxdbWVuN5enq6XuWkpqbmWGZvb69XWXmxs7PLsSwtLU2vsrJvl1vZxsDgLyIiIiIiIiIiIiIiIiIiIiIi0kr2oKfcgri0kdt2cgdU5VaeXPUtLsFfnPaRiIiIiIiIiIiIiIiIiIiIiMjIBg0ahP79+xfqPuTIrJU96CkxMVGvcrJvZ2NjAzMzefNY5RagJVd9GfxFREREREREREREREREREREREQAAAcHBzg4OBi7GgVycnLCkydPpOfR0dF6lZN9OycnJ4PqlZuyZcvC0tISGRkZee5XW0VRX31w2kciIiIiIiIiIiIiIiIiIiIiItJK9erVNZ5HRkbqVU727WrUqKF3nfJibm6OKlWq5LtfbSgUCsTGxmosK4z66oPBX0REREREREREREREREREREREpJXsQU/R0dFITk7WuZzg4GCN59WqVTOoXnnJXl/1rGXaevr0KTIzMzWWZQ+CMxYGfxERERERERERERERERERERERkVbq1Kmj8TwzMxM3b97UqYzQ0FA8e/Ys33LlUrt2bY3nd+7cQVpamk5lXL16tcByjYXBX0REREREREREREREREREREREpJWGDRuiVKlSGssuX76sUxnZ1zczM8PHH39scN1y88knn2g8z8jIwL///qtTGf/884/G89q1a6NixYoG100ODP4iIiIiIiIiIiIiIiIiIiIiIiKtWFpaolWrVhrLDh48CFEUtS7jwIEDGs8bNmyIcuXKyVK/7N577z04OTnlu//8JCYm4uTJkxrL2rZtK0vd5MDgLyIiIiIiIiIiIiIiIiIiIiIi0lqnTp00noeHh+P06dNabXvv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n376qUOO7cpSW/wV/zkzJcVfktS9e3cdOXJEhmHoP//5j959911HhJ0uOaFT2RVldI67d0m+9Byf4q+cISQkRO+9954mTJigChUqPHB7R74uJk+erKVLl1p/E8WLF9f8+fNVrVq1NB8TyCw5LU9npe9waREWFqYNGzZo3bp1VtvkvbOB+fj4aNq0aek+V074DhcVFaU1a9Zo4cKFCg4OtisCa9GihcaNG8fydcjWKP4CAADOQPEXkALvvfee1qxZk2j5OEfO+pVWjmyMl6RPPvlEixcvtq41d+7cmjFjhlq2bJnuWJctW6aZM2fqn3/+sR5L+BZUqFAh1atXT40aNdIrr7ySpnMcOHBA8+bNU1BQkPWYYRiqUqWKpk6dqsceeyztF5DNxMbG6vz58/cdWXj79m21bdtW165dk2EYateunaZOnerwWI4fP65t27ZpyJAhDjnepUuX9NJLLyksLMxaAnL58uWqV69ektsHBQVp8ODBioiIkBT3uqtfv74WLVqkvHnzOiSmnKRPnz7at29fpsyeZpqmSpQooZ07dzrsmAMHDrSuZcyYMSkuvr2fhMW0RYsW1fz581WzZs10Hxepd/ToUfn7+2vTpk26c+dOpjWqbd++XR999JEuX75s93mibNmymjx5crLvX1lRWjoOJKl///7Wcne1a9fWsmXLcvR7sLOKv27cuCEfHx9rlszChQvru+++U/HixR1yfFflzJm/JGnatGlasGCBDMNQyZIltX379nTHnF45rVPZFWVEjnNkYQ7FX0iKo9s0Ro8erdWrV1uftzw9PfXll1/K29vbEeECGSYn5+ms8h0urc6dO6fly5dr3bp1unv3rqS4/8N+/fppxIgRmRJTdv0OZ7PZtHTpUs2dO1e3b9+WFPe7zJ8/v4YNG8aSjci24ou/HPX5BwAAQJISz8MPIJGhQ4dq8+bNioyMtB4bNGhQJkaUWMKRZOkxcuRIa4rtcuXKqX///mrWrFn6A5RUvnx53blzx7pfoEABNWzYUA0bNlSDBg1UpUqVdF+Dt7e3vL29FRgYqI8//ljnz5+XaZoqX768ypQpk95LyFbc3NweOKV8gQIF5Ovrq4EDBypPnjz6+OOPnRLL448/rscff9xhxytXrpzmzJmj3r17q06dOnr33XetjtikPP3001qyZIkGDBigW7duqUOHDurdu3eOLjpwBFepH3fGyNU33nhDhw4d0vnz57Vw4cIcv7xdZqpVq5Zq1aql0aNHa/PmzQoICMiUOFq0aKGnn35ac+bM0eLFixUdHa1HH31UPXr0UJUqVTIlprSqVKmSChUqlOr9RowYoaCgIPXo0UPvvvtukkuC5STFixfX4MGDHX7cwoULa8yYMXr77bdVo0YNzZo1i8KvFChVqpTVOfcg8Uuzp+ZzhLe3txYsWCDTNBUWFqbz58/r0UcfTVOsQLyMyHHu7u4OG8AB3I+j2jQ+/PBD3blzR99//70qV66sN954w6GzmQNwvqzyHS6tKlWqpAkTJmjo0KH69ttv9fXXXys8PDzNA10dFVN2/A7n7u6ufv36qVOnTpo2bZrWrl2r2NhYeXh4KCQkRKGhofLy8srQmABHctTnHwAAAImZv4AUmzFjhubPny/DMNSkSRN9+eWXmR2S5fr169btYsWKOeSYu3fvVuPGjR26VKLNZtOgQYNUq1YtNWrUyBrd66zlGCMjIzVlyhTlzZs3Syytk5Xdvn1bd+7cyXZTpv/++++qWLFiirc/d+6cTNPMUTPAOUNQUJCuXr2aaef39PRUmzZtMu38KXXz5k3ZbDYaIpHI+fPn9eeff+rpp5/O7FAy3JEjR1S7du3MDiNHWLZsmV588cVMXVYU/7p7964OHTqkihUrqkSJEpkdjiTp0KFDunDhgnX/hRdeyLxgkCNERUXZfYbLCjPgIWtwdJuGzWbT/v371bhx43QfC8gs5GnXER0drUOHDqlBgwaZHUqaZKXvcCdOnFBISIiaNWuW4wcTIXuLiorS4cOHrfvZ9f0BAABkLRR/ASl0584dtWzZUmFhYfLz87OWq0D6fPnll/L19VXDhg3VuHFjNW3aVAUKFEjVMf755x/NmDFDFSpUUPny5VW5cuVsV8QEAAAAAAAAAACArCcmJkZdu3bV5cuXJUkdOnTQ+++/n+rjbN26VaNHj5YUt5TtqlWrVLZsWYfGCgDImSj+AlIhNDRUkZGRKlmyZGaH4jJat26tS5cuWffd3d3VvHlzDRkyxG7Jwg4dOkiSSpQooQULFtgdIyAgQGPGjLGbIrlQoULy9vZWx44d9dxzzzn5KgAAjnDgwAHt2LFDp06d0t9//y3TNFW8eHH93//9n1q2bKl69epldogAAKQJOQ4A4IrIbwCAnGTDhg0aMWKEpLi+rPXr16dqZRJJ6tKli06cOCHDMNSmTRvNmDHDGaECAHIgir/7I0mqAAAYyElEQVQAOM3MmTN1/vx5hYWFaenSpYmeDwoKUr9+/ZLcN2/evPriiy+sZRqqVq0qwzBUqlQpbdu2zW7bzp076+TJk3aPJSwEa9eunaZOnZreywEAOMmZM2c0ceJE/fLLL9Zj8R9RE76f165dW+PHj1e1atUyPEYAANKCHAcAcEXkNwBATtW1a1cdP35chmGoZcuWmjVrVor33bNnj1577TVJkpubm9avX6/HHnvMWaECAHIYir8AOI2Pj49+//13GYahvXv3qmjRopKktWvX6sknn1SJEiUUHh6uo0eP6uDBg9qzZ49OnjwpwzBkmqaKFi2q7du3y9PTM9nir7t378rPz0+hoaH6+++/dfnyZV26dEl//vmnXaPTlClT1LFjx0z5PQAAkvfLL7/o9ddf1+3bt5PsLJD+7USQpNy5c2v69OnM6ggAyPLIcQAAV0R+AwDkZAcOHNArr7wiKS7/+fr6qnbt2ina95VXXtGBAwdkGIZat26tzz77zJmhAgByGIq/ADjNG2+8oR07dsgwDH377beqU6eOli5dqilTpqhevXpavnx5osahffv2aeDAgYqKipJhGPr000/Vvn37+878lZSQkBCNGTNGe/fulWEYat68uebMmeOsSwUApMHff/+tdu3aKTw8XNK/HQZJfTxN+Jy7u7u++OILNW3aNOOCBQAgFchxAABXRH4DAMC+76t+/fpavnz5A/f55Zdf1LNnT0lxs36tW7dOlStXdnaoAIAcxD2zAwDguipUqGDdvnDhgkqWLKmpU6fKNE398ssvWrhwofr372+3z1NPPaVGjRpp586dkqT/9//+X5rOXbJkSU2cONEaVXj58uU0HQcA4DyTJ09WeHi4XadAsWLF1KJFC1WsWFH58uVTWFiYDh06pKCgIEVHR8swDNlsNo0ePVrfffedvLy8MvkqAABIjBwHAHBF5DcAAKQRI0YoMDBQMTExOnjwoHbu3KlmzZrdd5958+ZJkrVcJIVfAABHo/gLgNOUK1fOun3p0iV16tRJw4cP15QpU2Sapr744gu1bt3abjtJ1uhBSSpQoECaz1+2bFnrdnR0dJqPAwBwvGvXrmnLli3WUr+GYahPnz4aOnSo8ubNm2j74OBgjRo1Sr/++qskKTQ0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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import matplotlib as mpl\n", "from matplotlib.font_manager import FontProperties\n", "import seaborn as sns\n", "\n", "dpi = 300\n", "mpl.rcParams['figure.dpi']= dpi\n", "\n", "# sns.set(font=['sans-serif'])\n", "# sns.set_style(\"whitegrid\",{\"font.sans-serif\":['Microsoft JhengHei']})\n", "\n", "from matplotlib.font_manager import FontProperties\n", "import matplotlib.pyplot as plt \n", "myfont = FontProperties(fname=r'/home/gezi/py3env/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/微软雅黑.ttf')\n", "\n", "import numpy as np; np.random.seed(0)\n", "import seaborn as sns; sns.set()\n", "import matplotlib.pyplot as plt\n", "f, ax = plt.subplots(figsize=(10,10))\n", "#ax = sns.heatmap(cm2, ax=ax,vmin=0, vmax=1,annot=True,fmt ='0.1g', xticklabels=models, yticklabels=models)\n", "#ax = sns.heatmap(alpha,cmap = 'RdBu',ax=ax,vmin=0, vmax=1,fmt ='0.1g', xticklabels=words, yticklabels=words)\n", "ax = sns.heatmap(alpha2,cmap=\"YlGnBu\",ax=ax,vmin=0, vmax=1,fmt ='0.1g', xticklabels=words, yticklabels=words)\n", "#设置坐标字体方向\n", "label_y = ax.get_yticklabels()\n", "plt.setp(label_y, rotation=0, horizontalalignment='right',fontproperties=myfont)\n", "label_x = ax.get_xticklabels()\n", "plt.setp(label_x, rotation=90, horizontalalignment='right',fontproperties=myfont)\n", "plt.title('Self Attention',fontproperties=myfont, fontsize=25)#标题\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/ai2018/sentiment/analysis/analyze.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file analyze.py # \author chenghuige # \date 2018-10-03 14:44:39.978269 # \Description # -----------detailed f1 infos # location_traffic_convenience 0.6712383080788638 # location_distance_from_business_district 0.5629060402359796 # location_easy_to_find 0.7248325856789342 # service_wait_time 0.6770740954491001 # service_waiters_attitude 0.8069045649815189 # service_parking_convenience 0.7526363109778337 # service_serving_speed 0.775706676245927 # price_level 0.7892694978665769 # price_cost_effective 0.7123042372602688 # price_discount 0.6898761224553072 # environment_decoration 0.7345291206372897 # environment_noise 0.7664456569694614 # environment_space 0.7672318580085105 # environment_cleaness 0.7596899305910838 # dish_portion 0.7350563643550543 # dish_taste 0.7407494293948916 # dish_look 0.6002670892812643 # dish_recommendation 0.7520857946099313 # others_overall_experience 0.5958015346685603 # others_willing_to_consume_again 0.7198627097688324 # adjusted f1_prob:[0.7167233963757594] # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer('id', None, '') flags.DEFINE_string('ifile', '/home/gezi/temp/ai2018/sentiment/model/v2/0/submit6/ensemble.valid.debug.csv', '') flags.DEFINE_string('attr', 'location_distance_from_business_district', 'location_distance_from_business_district, others_overall_experience') flags.DEFINE_float('total', 100, '') flags.DEFINE_string('label', None, '') flags.DEFINE_string('key', 'score', '') import sys import os import pandas as pd import numpy as np import gezi ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) classes = ['NA', 'NEG', 'NEU', 'POS'] num_classes = 4 def parse(l): if ',' in l: return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: return np.array([float(x.strip()) for x in l[1:-1].split()]) ifile = FLAGS.ifile attr = FLAGS.attr total = FLAGS.total df = pd.read_csv(ifile) df = df.sort_values('id') idx = ATTRIBUTES.index(attr) idx = idx * num_classes num_oks = 0 num_errs = 0 for _, row in df.iterrows(): label = row[attr + '_y'] + 2 label = classes[label] predict = row[attr] + 2 predict = classes[predict] score = row[FLAGS.key] score = parse(score) score = score[idx:idx + 4] prob = gezi.softmax(score) id = row['id'] if FLAGS.id: if id != FLAGS.id: continue else: print(id, score) print(id, prob) print(attr, 'label :', label) print(attr, 'predict:', predict) labels = row[2:2+num_attrs] labels += 2 predicts = row[2+num_attrs:2+2*num_attrs] predicts += 2 print(list(zip(ATTRIBUTES, [classes[x] for x in labels]))) print(list(zip(ATTRIBUTES, [classes[x] for x in predicts]))) print(row['content']) print(row['seg']) exit(0) if FLAGS.label: if label == FLAGS.label.upper(): print(id, score) print(id, prob) print(attr, 'label :', label) print(attr, 'predict:', predict) labels = row[2:2+num_attrs] labels += 2 predicts = row[2+num_attrs:2+2*num_attrs] predicts += 2 print(list(zip(ATTRIBUTES, [classes[x] for x in labels]))) print(list(zip(ATTRIBUTES, [classes[x] for x in predicts]))) print(row['content']) print(row['seg']) num_errs += 1 else: if label != predict or FLAGS.id: print(id, score) print(id, prob) print(attr, 'label :', label) print(attr, 'predict:', predict) print(row['content']) print(row['seg']) num_errs += 1 else: num_oks += 1 if num_errs == total: print('num_oks', num_oks, 'num_errs', num_errs) break ================================================ FILE: projects/ai2018/sentiment/analysis/beam-search.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file beam-search.py # \author chenghuige # \date 2018-10-24 15:27:26.697918 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import gezi import pandas as pd import numpy as np import beam_f ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes N = NUM_CLASSES idx = 2 infile = sys.argv[1] if len(sys.argv) > 1 else './mount/temp/ai2018/sentiment/submit6/word.glove_rnet.3layer_model.ckpt-13.00-42666.valid.csv' df = pd.read_csv(infile) #scores = df['score'].values #scores = df['score'] scores = df['prob'] scores = [gezi.str2scores(score) for score in scores] scores = np.array(scores) scores = np.reshape(scores, [-1, NUM_ATTRIBUTES, NUM_CLASSES]) probs = gezi.softmax(scores) labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values index = 0 scores = scores[:, index, :] labels = labels[:, index] probs = probs[:, index, :] probs = np.reshape(probs, [NUM_CLASSES, -1]) x = scores y = labels + 2 print(probs) print(probs.shape) print(y) print(y.shape) # import six # assert six.PY2 # from expt import BisectionClassifier # from sklearn.linear_model import LogisticRegressionCV # cpe_model = LogisticRegressionCV(solver='liblinear') # cpe_model.fit(x, y) # classifier = BisectionClassifier('fmeasure') # x = np.transpose(x) # classifier.fit(x, y, eps = 0.1, eta = 0.1, num_outer_iter=10, cpe_model=cpe_model) # f1_loss = classifier.evaluate_loss(x, y) # print(f1_loss) bi_concave_iters = 1000 conf_opt_iters = 100 # weights = np.load('./mount/temp/ai2018/sentiment/class_weights.npy') # weights = weights[index] # weights = weights * weights * weights weights = [1.] * len(CLASSES) weights = np.array(weights) y = labels + 2 eps = 0.001 reg = 0.001 thresh = 0.1 print(y.shape) print(probs.shape) result = beam_f.seed_beam_f(N, weights, y, bi_concave_iters, conf_opt_iters, probs, eps, reg, thresh, last_k=1, out_put=None, restarts=5) print(result) ================================================ FILE: projects/ai2018/sentiment/analysis/beam_f.py ================================================ import numpy as np from beam_f_utils import * #----------------- concave optimization -------------------# def beam_f(N, weights, y, bi_concave_iters, conf_opt_iters, prob_estimates, eps, reg, thresh, last_k, out_put=True, seed=0): ''' Args ----------------- N: number of classes weights: weights for classes y: class labels for data bi_concave_iters, conf_opt_iters: inner, outter loop max iterations prob_estimates: class probability model (previously trained) eps, reg: perturbation constant, regularization thresh: convergence threshhold last_k: number of objective function values out_put: display/suppress output of optimization process seed: type of initial confusion matrix Return ----------------- classifiers: array of classifiers found classifier_weights: weights for classifiers found perf: macro f-score performance on data set ''' # Get initial Gain Matrix #-------------- weighted initialization if seed == 0: G_diag = [weights[n] for n in range(N)] G_0 = np.diag(G_diag) #-------------- balanced initialization elif seed == 1: G_0 = np.eye(N) #-------------- random initialization else: G_0 = 20 * np.random.random((N, N)) # Get the initial confusion matrix corresponding to the classifer # for the initial gain matrix Conf_t = compute_conf(G_0, prob_estimates, y) # Find performance of initial confusion matrix perf = eval_conf(Conf_t) #if out_put == True: print('initial:', perf, '\n') # Record all classifiers found across all iterations, along with their weights classifiers = np.zeros((bi_concave_iters * conf_opt_iters + 1, N, N)) classifier_weights = np.zeros(bi_concave_iters * conf_opt_iters + 1) classifiers[0, : , :] = G_0 classifier_weights[0] = 1 classifier_index = 1 # Last k objective from outer loop outer_obj = [] # Out loop: optimize u for fixed conf mat for s in range(bi_concave_iters): u_s = compute_u(np.copy(Conf_t), eps) # Last k objective from inner loop inner_obj = [] # Inner loop: optimize conf mat for fixed u for t in range(conf_opt_iters): # Compute biconcave objective for the confusion matrix at inner step t obj = compute_biconcave_obj(Conf_t, u_s, reg) #if out_put == True: # print(s, ',', t, ':', perf, ', ', obj) #print(t, perf) # Update last k objectives and terminate inner loop # if insufficient improvement in obj function is observed if t == conf_opt_iters - 1: if len(outer_obj) >= last_k: outer_obj.pop(0) outer_obj.append(obj) else: outer_obj.append(obj) else: if len(inner_obj) >= last_k: inner_obj.pop(0) inner_obj.append(obj) diff = np.absolute(np.array(inner_obj) \ - np.array(inner_obj[1:] + [0])) if (diff <= thresh).all(): if len(outer_obj) >= 3: outer_obj.pop(0) outer_obj.append(obj) else: outer_obj.append(obj) break else: inner_obj.append(obj) # Compute the gain matrix at inner step t G_t = compute_conf_grad(Conf_t, u_s, eps, reg) # Find new confusion matrix for gain matrix at inner step t Conf_new = compute_conf(G_t, prob_estimates ,y) # Update the confusion matrix using line search max_perf = -1 step_size = 0 for i in range(100): l = i * 0.01 Conf_line = l * Conf_new + (1 - l) * Conf_t perf_line = compute_biconcave_obj(Conf_line, u_s, reg) if perf_line > max_perf: max_perf = perf_line Conf_t[:, :] = Conf_line step_size = l # Record the gain matrix and the corresponding weight classifiers[classifier_index, :, :] = G_t classifier_weights[:classifier_index] = classifier_weights[:classifier_index] * (1 - step_size) classifier_weights[classifier_index] = step_size classifier_index = classifier_index + 1 # Find performance of confusion matrix accepted at inner step t perf = eval_conf(Conf_t) # Terminate inner loop if insufficient improvement in # obj function is observed diff = np.absolute(np.array(outer_obj) \ - np.array(outer_obj[1:] + [0])) print(perf, diff) if (diff <= thresh).all(): break # Truncate the classifer and classifier weights arrays classifiers = classifiers[:classifier_index, :, :] classifier_weights = classifier_weights[:classifier_index] #if out_put == True: print('final: ', str(perf), '\n') return classifiers, classifier_weights, perf def seed_beam_f(N, weights, y, bi_concave_iters, conf_opt_iters, prob_estimates, eps, reg, thresh, last_k, out_put=None, restarts=5): ''' Args ----------------- N: number of classes weights: weights for classes y: class labels for data bi_concave_iters, conf_opt_iters: inner, outter loop max iterations prob_estimates: class probability model (previously trained) eps, reg: perturbation constant, regularization thresh: convergence threshhold last_k: number of objective function values out_put: display/suppress output of optimization process restarts: number of restarts to use for beam_f Return ----------------- best_classifiers: best classifiers found using restarts best_weights: weights for best classifiers found using restarts ''' best_classifiers = np.zeros((bi_concave_iters * conf_opt_iters + 1, N, N)) best_weights = np.zeros(bi_concave_iters * conf_opt_iters + 1) best_perf = -1 # Call beam_f for multiple restarts with different types # of initial gain matrices for i in range(restarts): classifiers, classifier_weights, perf = beam_f(N, weights, y, bi_concave_iters, conf_opt_iters, prob_estimates, eps, reg, thresh, last_k, out_put=out_put, #seed=i) #seed=1) #seed=0) seed=2) print(perf) # if perf > best_perf: # best_classifiers[:, :, :] = classifiers # best_weights[:] = classifier_weights # best_perf = perf return best_classifiers, best_weights ================================================ FILE: projects/ai2018/sentiment/analysis/beam_f_utils.py ================================================ import numpy as np #------------ compute objective function ---------------# def compute_biconcave_obj(C, u, reg): ''' Computes the biconcave objective function Args ----------------- C: confusion matrix u: value of u reg: regularization parameter Return ----------------- obj: biconcave objective evaluate at u and confusion matrix ''' # Number of classes N = C.shape[0] P_Conf = np.array([np.sum(C[n, :]) + np.sum(C[:, n]) for n in range(N)]) obj = 2 * (u.dot(np.sqrt(np.diag(C)))) - (u**2).dot(P_Conf) - reg * np.linalg.norm(P_Conf) return obj #------------ compute performance for conf matrix --------------# def compute_u(C, eps): ''' Optimizes u for a fixed confusion matrix C Args ----------------- Conf: confusion matrix eps: perturbation parameter Return ----------------- u: optimal u for confusion matrix C ''' # Adding a small perturbation helps avoid loc optima C += eps # Number of classes N = C.shape[0] u = np.zeros(N) # Update u using closed form expression for n in range(N): u[n] = np.sqrt(C[n, n]) / (np.sum(C[n, :]) + np.sum(C[:, n])) return u #------------ evaluate performance of classifier --------------# def eval_classifier(prob_estimates, G, X, y): ''' Evaluate performance of classifier in terms of f-score Args ----------------- prob_estimates: probability estimates for X G: gain matrix X: attributes y: labels Return ----------------- perf: performance of classifier Conf: confusion matrix of classifier ''' Conf = compute_conf(G, prob_estimates, y) perf = eval_conf(Conf) return perf, Conf #------------ compute performance for conf matrix --------------# def eval_conf(C): # updated to use f-score ''' Evaluate performance of confusion matrix in terms of f-score Args ----------------- C: confusion matrix Return ----------------- macro f-score of confusion matrix ''' # Number of classes N = C.shape[0] perf = 0 cl = 0 for n in range(N): if (np.sum(C[n, :]) + np.sum(C[:, n])) > 0: perf = perf + (C[n, n] * 2.) / (np.sum(C[n, :]) + np.sum(C[:, n])) cl += 1 #else: #print 'invalid confusion matrix at class', n #sys.exit('invalid confusion matrix') if cl == 0: return 0 else: return perf / (1. * cl) #------------ gradient of performance measure -------------# def compute_conf_grad(C, u, eps, reg): # updated to use f-score ''' Finds gradient of f-score at confusion matrix C Args ----------------- C: confusion matrix u: value of u eps: perturbation parameter reg: regularization parameter Return ----------------- gradient of confusion matrix ''' # Number of classes N = C.shape[0] C += eps grad = np.zeros(C.shape) for n in range(N): P = np.zeros(C.shape) P[n, :] = 1 P[:, n] = 1 P[n, n] = 2 grad = grad - u[n] * u[n] * P grad[n, n] = grad[n, n] + u[n] / np.sqrt(2. * C[n, n]) return grad - reg * 2 * C #----------------- predict labels -------------------# def predict_labels(G, eta): ''' Outputs prediction of classifier with gain matrix G Args ----------------- G: gain matrix eta: probability estimates Return ----------------- labels: labels ''' M = eta.shape[1] # optimal class labels labels = np.zeros(M) for m in range(M): # for each data point eta_m = eta[:, m] # get eta for the m^{th} point t = G.dot(eta_m) # get a row vector with (g_{y})'*\eta_{x} indx = np.argmax(t) # weighted argmax labels[m] = indx # label for m-th data point return labels #----------------- compute confusion matrix -------------------# def compute_conf(G, eta, true_labels): ''' Given a gain matrix G computes its confusion matrix C Args ----------------- G: gain matrix eta: probability estimates true_labels: true labels Return ----------------- C: confusion matrix ''' # Number of classes N = G.shape[0] # Number of instances M = len(true_labels) # Initialize nxn Confision matrix C = np.zeros(G.shape) # Get prediction for the given classifier (gain matrix G) pred_labels = predict_labels(G, eta) pred_labels = pred_labels.reshape((pred_labels.shape[0], 1)) # Update the entries of confusion matrix for i in range(N): for j in range(N): comp_labels = pred_labels[true_labels == i] C[i, j] = len(comp_labels[comp_labels == j]) C = C / (M * 1.) return C def compute_rand_conf(classifiers, classifier_weights, eta, true_labels): ''' Given array of classifiers and corresponding weights computes a radomnized classifier Args ----------------- classifiers: array of classifiers classifier_weights: array of classifier weights eta: probability estimates true_labels: true labels Return ----------------- C: confusion matrix ''' # Number of classifiers, classes M = classifiers.shape[0] N = classifiers.shape[1] # Expected conf matrix C = np.zeros((N, N)) for m in range(M): conf = compute_conf(classifiers[m, :, :].reshape(N, N), eta, true_labels) C = C + classifier_weights[m] * conf return C ================================================ FILE: projects/ai2018/sentiment/analysis/class-info.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file class-info.py # \author chenghuige # \date 2018-09-15 16:59:15.393239 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np df = pd.read_csv(sys.argv[1]) ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] is_valid = False if len(df.columns) > 2 * len(ATTRIBUTES): is_valid = True idx = 2 if not is_valid else 2 + len(ATTRIBUTES) counts = np.zeros([len(ATTRIBUTES), 4], dtype=np.int64) for (_, row) in df.iterrows(): labels = list(row[idx: idx + len(ATTRIBUTES)]) for i, label in enumerate(labels): counts[i][label + 2] += 1 for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, ['%.5f' % (x / len(df)) for x in count]) for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, count) ================================================ FILE: projects/ai2018/sentiment/analysis/class-info.train.csv ================================================ location_traffic_convenience ['0.77507', '0.01255', '0.00996', '0.20242'] location_distance_from_business_district ['0.79695', '0.00558', '0.00508', '0.19239'] location_easy_to_find ['0.76767', '0.03787', '0.02354', '0.17092'] service_wait_time ['0.88346', '0.02890', '0.04173', '0.04591'] service_waiters_attitude ['0.40390', '0.08270', '0.11937', '0.39402'] service_parking_convenience ['0.93596', '0.01260', '0.01387', '0.03757'] service_serving_speed ['0.84476', '0.05226', '0.02266', '0.08032'] price_level ['0.50305', '0.11786', '0.23094', '0.14815'] price_cost_effective ['0.76421', '0.02868', '0.02926', '0.17786'] price_discount ['0.61184', '0.01634', '0.17386', '0.19796'] environment_decoration ['0.51349', '0.02037', '0.09040', '0.37574'] environment_noise ['0.69948', '0.02930', '0.04612', '0.22510'] environment_space ['0.62284', '0.05434', '0.08821', '0.23461'] environment_cleaness ['0.63427', '0.04298', '0.04479', '0.27796'] dish_portion ['0.54207', '0.09541', '0.09053', '0.27199'] dish_taste ['0.04829', '0.04155', '0.38286', '0.52730'] dish_look ['0.72357', '0.03027', '0.04452', '0.20164'] dish_recommendation ['0.80730', '0.02167', '0.01893', '0.15210'] others_overall_experience ['0.02010', '0.08937', '0.22320', '0.66733'] others_willing_to_consume_again ['0.62476', '0.03961', '0.02774', '0.30789'] location_traffic_convenience [81382 1318 1046 21254] location_distance_from_business_district [83680 586 533 20201] location_easy_to_find [80605 3976 2472 17947] service_wait_time [92763 3034 4382 4821] service_waiters_attitude [42410 8684 12534 41372] service_parking_convenience [98276 1323 1456 3945] service_serving_speed [88700 5487 2379 8434] price_level [52820 12375 24249 15556] price_cost_effective [80242 3011 3072 18675] price_discount [64243 1716 18255 20786] environment_decoration [53916 2139 9492 39453] environment_noise [73445 3077 4843 23635] environment_space [65398 5706 9262 24634] environment_cleaness [66598 4513 4703 29186] dish_portion [56917 10018 9506 28559] dish_taste [ 5070 4363 40200 55367] dish_look [75975 3178 4675 21172] dish_recommendation [84767 2275 1988 15970] others_overall_experience [ 2110 9384 23436 70070] others_willing_to_consume_again [65600 4159 2913 32328] ================================================ FILE: projects/ai2018/sentiment/analysis/class-info.valid.csv ================================================ location_traffic_convenience ['0.78380', '0.01213', '0.00907', '0.19500'] location_distance_from_business_district ['0.80213', '0.00600', '0.00533', '0.18653'] location_easy_to_find ['0.76773', '0.03680', '0.02193', '0.17353'] service_wait_time ['0.88247', '0.03100', '0.03993', '0.04660'] service_waiters_attitude ['0.39947', '0.08060', '0.12200', '0.39793'] service_parking_convenience ['0.93640', '0.01253', '0.01360', '0.03747'] service_serving_speed ['0.84513', '0.05367', '0.02453', '0.07667'] price_level ['0.49980', '0.11733', '0.23433', '0.14853'] price_cost_effective ['0.76187', '0.02967', '0.02653', '0.18193'] price_discount ['0.61747', '0.01773', '0.17540', '0.18940'] environment_decoration ['0.52007', '0.01833', '0.08747', '0.37413'] environment_noise ['0.70140', '0.03207', '0.04433', '0.22220'] environment_space ['0.63273', '0.05160', '0.08733', '0.22833'] environment_cleaness ['0.63973', '0.04167', '0.04180', '0.27680'] dish_portion ['0.54080', '0.09613', '0.09367', '0.26940'] dish_taste ['0.05040', '0.03867', '0.38800', '0.52293'] dish_look ['0.71720', '0.03033', '0.04407', '0.20840'] dish_recommendation ['0.80553', '0.02233', '0.01913', '0.15300'] others_overall_experience ['0.01900', '0.08553', '0.22380', '0.67167'] others_willing_to_consume_again ['0.62360', '0.03847', '0.02633', '0.31160'] location_traffic_convenience [11757 182 136 2925] location_distance_from_business_district [12032 90 80 2798] location_easy_to_find [11516 552 329 2603] service_wait_time [13237 465 599 699] service_waiters_attitude [5992 1209 1830 5969] service_parking_convenience [14046 188 204 562] service_serving_speed [12677 805 368 1150] price_level [7497 1760 3515 2228] price_cost_effective [11428 445 398 2729] price_discount [9262 266 2631 2841] environment_decoration [7801 275 1312 5612] environment_noise [10521 481 665 3333] environment_space [9491 774 1310 3425] environment_cleaness [9596 625 627 4152] dish_portion [8112 1442 1405 4041] dish_taste [ 756 580 5820 7844] dish_look [10758 455 661 3126] dish_recommendation [12083 335 287 2295] others_overall_experience [ 285 1283 3357 10075] others_willing_to_consume_again [9354 577 395 4674] ================================================ FILE: projects/ai2018/sentiment/analysis/correlations-filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file correlations.py # \author chenghuige # \date 2018-10-25 11:16:14.268580 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_float('thre', 0.992, '') import sys import os import numpy as np import pandas as pd from scipy.stats import ks_2samp import glob import melt import gezi from tqdm import tqdm import matplotlib.pyplot as plt import itertools ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] os.makedirs('./bak', exist_ok=True) #input is dir dir = sys.argv[1] if len(sys.argv) > 1 else './' object = None models = [] dfs = [] df = pd.read_csv('./models.csv') df = df[df['model'] != 'ensemble'] models_ = df['model'].values files_ = df['file'].values metrics = df['adjusted_f1/mean'].values models = [] files = [] for file, model in tqdm(zip(files_, models_), ascii=True): if not os.path.exists(file): continue df = pd.read_csv(file) df = df.sort_values('id') scores = [gezi.str2scores(x) for x in df['score'].values] scores = np.reshape(scores, [-1, len(ATTRIBUTES), 4]) scores = gezi.softmax(scores) ndf = pd.DataFrame() ndf['score'] = np.reshape(scores, [-1]) dfs.append(ndf) files.append(file) models.append(model) def calc_correlation(x, y, method): if method.startswith('ks'): ks_stat, p_value = ks_2samp(x, y) if method == 'ks_s': score = ks_stat else: score = p_value else: score = x.corr(y, method=method) return score len_ = len(dfs) c = np.zeros([len_, len_]) methods = ['pearson', 'kendall', 'spearman', 'ks_s', 'ks_p'] methods = methods[:1] for method in methods: print('---------------------------------------', method) for i in tqdm(range(len_), ascii=True): for j in range(len_): c[i, j] = calc_correlation(dfs[i]['score'], dfs[j]['score'], method=method) for i in range(1, len_): for j in range(i + 1, len_): if c[i, j] > FLAGS.thre: print(i, j, models[i],'%.4f' % metrics[i], models[j], '%.4f' % metrics[j], c[i, j]) if os.path.exists(files[j]) and not ('ensemble' in models[i] or 'ensemble' in models[j]): if glob.glob('%s_model.ckpt-*' % models[j]): command = 'mv %s_model.ckpt-* bak' % models[j] print(command) else: command = 'mv %s_ckpt-* bak' % models[j] print(command) os.system(command) continue ================================================ FILE: projects/ai2018/sentiment/analysis/correlations.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file correlations.py # \author chenghuige # \date 2018-10-25 11:16:14.268580 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import pandas as pd from scipy.stats import ks_2samp import glob import melt import gezi from tqdm import tqdm import matplotlib.pyplot as plt import itertools ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] #http://scikit-learn.org/stable/auto_examples/model_selection/plot_confusion_matrix.html def plot_confusion_matrix(cm, classes, normalize=False, title='Confusion matrix', cmap=plt.cm.Blues): """ This function prints and plots the confusion matrix. Normalization can be applied by setting `normalize=True`. """ if normalize: cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis] print("Normalized confusion matrix") else: print('Confusion matrix, without normalization') print(cm) plt.imshow(cm, interpolation='nearest', cmap=cmap) plt.title(title) plt.colorbar() tick_marks = np.arange(len(classes)) plt.xticks(tick_marks, classes, rotation=45) plt.yticks(tick_marks, classes) fmt = '.2f' if normalize else 'd' thresh = cm.max() / 2. for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])): plt.text(j, i, format(cm[i, j], fmt), horizontalalignment="center", color="white" if cm[i, j] > thresh else "black") plt.ylabel('True label') plt.xlabel('Predicted label') plt.tight_layout() if len(sys.argv) > 2: file1 = sys.argv[1] file2 = sys.argv[2] df1 = pd.read_csv(file1) df1 = df1.sort_values('id') df2 = pd.read_csv(file2) df2 = df2.sort_values('id') scores1 = [gezi.str2scores(x) for x in df1['score'].values] scores2 = [gezi.str2scores(x) for x in df2['score'].values] scores1 = np.reshape(scores1, [-1, len(ATTRIBUTES), 4]) scores1 = gezi.softmax(scores1) scores2 = np.reshape(scores2, [-1, len(ATTRIBUTES), 4]) scores2 = gezi.softmax(scores2) ndf1 = pd.DataFrame() ndf2 = pd.DataFrame() for i, attr in enumerate(ATTRIBUTES): score1 = np.reshape(scores1[:, i, :], [-1]) score2 = np.reshape(scores2[:, i, :], [-1]) ndf1[attr] = score1 ndf2[attr] = score2 print('Attr:----------------------------------------------------%s' % attr) print(' Pearson\'s correlation score: %0.6f' % ndf1[attr].corr( ndf2[attr], method='pearson')) # print(' Kendall\'s correlation score: %0.6f' % # ndf1[attr].corr( # ndf2[attr], method='kendall')) # print(' Spearman\'s correlation score: %0.6f' % # ndf1[attr].corr( # ndf2[attr], method='spearman')) # ks_stat, p_value = ks_2samp(ndf1[attr].values, # ndf2[attr].values) # print(' Kolmogorov-Smirnov test: KS-stat = %.6f p-value = %.3e' # % (ks_stat, p_value)) print('----------------------------------------------------------all') scores1 = np.reshape(scores1, [-1]) scores2 = np.reshape(scores2, [-1]) ndf1, ndf2 = pd.DataFrame(), pd.DataFrame() ndf1['mean'] = scores1 ndf2['mean'] = scores2 print(ndf1['mean'].corr(ndf2['mean'], method='pearson')) else: #input is dir dir = sys.argv[1] if len(sys.argv) > 1 else './' if not os.path.isdir(dir): dir = './' infile = sys.argv[1] object_name = os.path.basename(infile).replace('.valid.csv', '').split('_ckpt-')[0].split('_model.ckpt-')[0] else: object_name = None object = None models = [] dfs = [] for file in glob.glob('%s/*.valid.csv' % dir): df = pd.read_csv(file) df = df.sort_values('id') scores = [gezi.str2scores(x) for x in df['score'].values] scores = np.reshape(scores, [-1, len(ATTRIBUTES), 4]) scores = gezi.softmax(scores) ndf = pd.DataFrame() ndf['score'] = np.reshape(scores, [-1]) dfs.append(ndf) model_name = os.path.basename(file).replace('.valid.csv', '').split('_ckpt-')[0].split('_model.ckpt-')[0] if model_name == object_name: object = model_name models.append(model_name) def calc_correlation(x, y, method): if method.startswith('ks'): ks_stat, p_value = ks_2samp(x, y) if method == 'ks_s': score = ks_stat else: score = p_value else: score = x.corr(y, method=method) return score len_ = len(dfs) cm = np.zeros([len_, len_]) methods = ['pearson', 'kendall', 'spearman', 'ks_s', 'ks_p'] methods = methods[:1] for method in methods: print('---------------------------------------', method) for i in tqdm(range(len_), ascii=True): if object and models[i] != object: continue print('--------------------', models[i]) for j in range(len_): cm[i, j] = calc_correlation(dfs[i]['score'], dfs[j]['score'], method=method) indexes = np.argsort(-cm[i]) for index in indexes: print(models[index], cm[i, index]) # plt.figure() # plot_confusion_matrix(cm, classes=models) # plt.show() ================================================ FILE: projects/ai2018/sentiment/analysis/diff.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file analyze.py # \author chenghuige # \date 2018-10-03 14:44:39.978269 # \Description # -----------detailed f1 infos # location_traffic_convenience 0.6712383080788638 # location_distance_from_business_district 0.5629060402359796 # location_easy_to_find 0.7248325856789342 # service_wait_time 0.6770740954491001 # service_waiters_attitude 0.8069045649815189 # service_parking_convenience 0.7526363109778337 # service_serving_speed 0.775706676245927 # price_level 0.7892694978665769 # price_cost_effective 0.7123042372602688 # price_discount 0.6898761224553072 # environment_decoration 0.7345291206372897 # environment_noise 0.7664456569694614 # environment_space 0.7672318580085105 # environment_cleaness 0.7596899305910838 # dish_portion 0.7350563643550543 # dish_taste 0.7407494293948916 # dish_look 0.6002670892812643 # dish_recommendation 0.7520857946099313 # others_overall_experience 0.5958015346685603 # others_willing_to_consume_again 0.7198627097688324 # adjusted f1_prob:[0.7167233963757594] # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os import pandas as pd import numpy as np import gezi ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) classes = ['NA', 'NEG', 'NEU', 'POS'] num_classes = 4 ifile = sys.argv[1] ifile2 = sys.argv[2] df = pd.read_csv(ifile) df = df.sort_values('id') print(ifile, len(df)) df2 = pd.read_csv(ifile2) df2 = df2.sort_values('id') print(ifile2, len(df2)) #df = df.iloc[[0]] #print(df) #df2 = df2.iloc[[0]] #print(df2) is_valid = False if len(df.columns) > 2 * num_attrs: is_valid = True idx = 2 if not is_valid else 2 + num_attrs num_diff_docs = 0 num_diff_attrs = 0 for i in range(0, len(df)): first = True for j in range(num_attrs): cur = idx + j if df.iloc[i][cur] != df2.iloc[i][cur]: num_diff_attrs += 1 if first: first = False print(df.iloc[i]['content']) num_diff_docs += 1 attr = ATTRIBUTES[j] if not is_valid: print(attr, df.iloc[i][cur], df2.iloc[i][cur]) else: print(attr, df.iloc[i][cur], df2.iloc[i][cur], df.iloc[i][cur - num_attrs]) print('num_diff_docs', num_diff_docs, file=sys.stderr) print('num_diff_attrs', num_diff_attrs, file=sys.stderr) ================================================ FILE: projects/ai2018/sentiment/analysis/gen-class-weights.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file class-info.py # \author chenghuige # \date 2018-09-15 16:59:15.393239 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np ifile = '/home/gezi/data/ai2018/sentiment/train.csv' df = pd.read_csv(ifile) ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] counts = np.zeros([len(ATTRIBUTES), 4], dtype=np.int64) weights = np.zeros([len(ATTRIBUTES), 4], dtype=np.float32) for (_, row) in df.iterrows(): labels = list(row[2:]) for i, label in enumerate(labels): counts[i][label + 2] += 1 print('counts:', counts) for i in range(len(counts)): for j in range(4): #weights[i][j] = 1. / counts[i][j] weights[i][j] = len(df) / counts[i][j] print('weights', weights) #for attr, count in zip(ATTRIBUTES, counts): # print(attr, [x / len(df) for x in count]) dir = '/home/gezi/temp/ai2018/sentiment/' np.save(f'{dir}/class_weights.npy', weights) np.save(f'{dir}/class_counts.npy', counts) ================================================ FILE: projects/ai2018/sentiment/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from collections import namedtuple import gezi import melt logging = melt.logging from wenzheng.utils import vocabulary from algos.config import NUM_ATTRIBUTES, NUM_CLASSES import prepare.config class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) def get_aug_factor(): global_step = tf.train.get_or_create_global_step() num_examples = tf.constant(self.num_examples_per_epoch('train'), dtype=tf.int64) return tf.cond(tf.equal(tf.to_int64(global_step / num_examples) % 2, 0), lambda: 0., lambda: 1.) def undersampling_filter(x, y): prob = tf.cond(tf.equal(x['source'], 'train'), lambda: 1., lambda: FLAGS.other_corpus_factor) #prob = tf.cond(tf.equal(tf.strings.split(tf.expand_dims(x['source'], 0),'.').values[-1], 'train'), lambda: 1., lambda: FLAGS.other_corpus_factor) #is_aug = tf.to_float(tf.equal(x['source'], 'augument.train')) #is_aug = tf.to_float(tf.equal(tf.strings.split(tf.expand_dims(x['source'], 0),'.').values[0], 'aug')) #aug_factor = get_aug_factor() #prob *= is_aug * aug_factor + (1 - is_aug) * (1 - aug_factor) acceptance = tf.less_equal(tf.random_uniform([], dtype=tf.float32), prob) return acceptance self.filter_fn = undersampling_filter if FLAGS.other_corpus_factor < 1 else None #self.filter_fn = undersampling_filter def parse(self, example): """Parses a single tf.Example into image and label tensors.""" features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'content_str': tf.FixedLenFeature([], tf.string), 'content': tf.VarLenFeature(tf.int64), 'char': tf.VarLenFeature(tf.int64), 'pos': tf.VarLenFeature(tf.int64), 'ner': tf.VarLenFeature(tf.int64), 'wlen': tf.VarLenFeature(tf.int64), #'label': tf.FixedLenFeature([NUM_ATTRIBUTES], tf.int64), 'source': tf.FixedLenFeature([], tf.string), } if FLAGS.use_soft_label: features_dict['label'] = tf.FixedLenFeature([NUM_ATTRIBUTES * NUM_CLASSES], tf.float32) else: features_dict['label'] = tf.FixedLenFeature([NUM_ATTRIBUTES], tf.int64) #if FLAGS.use_char: #features_dict['chars'] = tf.VarLenFeature(tf.int64) features = tf.parse_single_example(example, features=features_dict) content = features['content'] content = melt.sparse_tensor_to_dense(content) # Actually not use below, for bert now use nbert tfrecords which is [first_n and last_m] so do not need content_limt 512 here if FLAGS.content_limit: # TODO now only condider bert.. whey content[0] or content[:0] content[-1] not work ? FIXME.. start_id = vocabulary.start_id() if not FLAGS.model == 'Transformer' else 101 end_id = vocabulary.end_id() if not FLAGS.model == 'Transformer' else 102 # TODO now has problem ... one additional end or start... if not FLAGS.cut_front: content = tf.concat([content[:FLAGS.content_limit - 1], tf.constant([end_id], dtype=tf.int64)], 0) else: content = tf.concat([tf.constant([start_id], dtype=tf.int64), content[-FLAGS.content_limit + 1:]], 0) # if FLAGS.add_start_end: # content = tf.concat([tf.constant([vocabulary.start_id()], dtype=tf.int64), content, tf.constant([vocabulary.end_id()], dtype=tf.int64)], 0) # NOTICE! not work in dataset... so put to later step like in call but should do the same thing again for pytorch.. ## TODO can use below to do unk aug so not to have different code for tf and pytorch later # if FLAGS.vocab_min_count: # # content = melt.greater_then_set(content, FLAGS.vocab_min_count, UNK_ID) features['content'] = content label = features['label'] #if FLAGS.use_char: chars = features['char'] chars = melt.sparse_tensor_to_dense(chars) # if FLAGS.char_min_count: # chars = melt.greater_then_set(chars, FLAGS.char_min_count, UNK_ID) features['char'] = chars pos = features['pos'] pos = melt.sparse_tensor_to_dense(pos) # if FLAGS.tag_min_count: # pos = melt.greater_then_set(pos, FLAGS.tag_min_count, UNK_ID) features['pos'] = pos ner = features['ner'] ner = melt.sparse_tensor_to_dense(ner) # if FLAGS.tag_min_count: # ner = melt.greater_then_set(ner, FLAGS.tag_min_count, UNK_ID) features['ner'] = ner wlen = features['wlen'] wlen = melt.sparse_tensor_to_dense(wlen) features['wlen'] = wlen x = features if not FLAGS.use_soft_label: y = label + 2 if FLAGS.binary_class_index is not None: y = tf.to_int64(tf.equal(y, FLAGS.binary_class_index)) else: y = label return x, y def num_examples_per_epoch(self, mode): if FLAGS.fold is not None: if mode == 'train': # err notice actually this is total, with fold *1/8 for valid *7/8 for train return 120000 elif mode == 'valid': return 15000 else: # for test testA is 15000 testB will be 200000 return super(Dataset, self).num_examples_per_epoch(mode) else: return super(Dataset, self).num_examples_per_epoch(mode) ================================================ FILE: projects/ai2018/sentiment/ensemble/README.md ================================================ just use ./ensemble-cv.py python ./ensemble-cv.py python ./ensemble-cv.py --debug=0 ================================================ FILE: projects/ai2018/sentiment/ensemble/calibrate-cv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description now work well, worse then mean... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score #from sklearn.preprocessing import minmax_scale import gezi import matplotlib.pyplot as plt import lightgbm as lgb from tqdm import tqdm from sklearn.metrics import f1_score from sklearn.ensemble import RandomForestClassifier from sklearn.calibration import CalibratedClassifierCV from sklearn.metrics import log_loss from sklearn.model_selection import KFold ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) num_classes = 4 idx = 2 results = None df2 = pd.DataFrame() idf2 = pd.DataFrame() valid_file = './ensemble.valid.csv' infer_file = './ensemble.infer.debug.csv' # idf = pd.read_csv(infer_file) # idf = idf.sort_values('id') #iscores = idf['logit'] #iscores = [gezi.str2scores(score) for score in iscores] # iscores2 = [] # for score in iscores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # iscores2.append(score) # iscores = iscores2 #iscores = np.array(iscores) print(valid_file) df = pd.read_csv(valid_file, sep=',') df = df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] #scores = df['logit'] #scores = df['prob'] scores = [gezi.str2scores(score) for score in scores] # scores2 = [] # for score in scores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # scores2.append(score) # scores = scores2 scores = np.array(scores) ids = df.iloc[:,0].values cnames = [] for attr in ATTRIBUTES: for i in range(4): cnames.append(f'{attr}_{i}') print('---------', cnames) df2['id'] = ids #idf2['id'] = ids for i, label in enumerate(df.columns.values[idx:idx+num_attrs]): df2[label] = labels[:,i] for i, name in enumerate(cnames): df2[name] = scores[:,i] #idf2[name] = iscores[:, i] for i, attr in tqdm(enumerate(ATTRIBUTES), ascii=True): index = 1 + num_attrs + i * 4 index2 = 1 + i * 4 X_ = df2.iloc[:, index: index + 4] #iX_ = idf2.iloc[:, index2: index2 + 4] f1_list = [] K = 5 y = df2[attr + '_y'] + 2 #ix_ = iX_.values X = X_.values y = y.values kf = KFold(n_splits=K) kf.get_n_splits(X) preds = [] ipreds = [] ys = [] for fold, (train_index, test_index) in enumerate(kf.split(X)): print(f'{i}:{attr} FOLD:{fold}') X_train, X_valid, X_test = X[train_index[:-3000]], X[train_index[-3000:]], X[test_index] y_train, y_valid, y_test = y[train_index[:-3000]], y[train_index[-3000:]], y[test_index] ys.append(y_test) # Train uncalibrated random forest classifier on whole train and validation # data and evaluate on test data clf = RandomForestClassifier(n_estimators=25) clf.fit(np.concatenate([X_train, X_valid], 0), np.concatenate([y_train, y_valid], 0)) clf_probs = clf.predict_proba(X_test) score = log_loss(y_test, clf_probs) print('1', score) # Train random forest classifier, calibrate on validation data and evaluate # on test data clf = RandomForestClassifier(n_estimators=25) clf.fit(X_train, y_train) clf_probs = clf.predict_proba(X_test) sig_clf = CalibratedClassifierCV(clf, method="sigmoid", cv="prefit") sig_clf.fit(X_valid, y_valid) sig_clf_probs = sig_clf.predict_proba(X_test) sig_score = log_loss(y_test, sig_clf_probs) print('2', sig_score) preds.append(clf.predict(X_test)) preds = np.concatenate(preds) y = np.concatenate(ys) df[attr] = np.array(preds) - 2 #ipreds = clf_final.predict(iX_) #idf[attr] = np.array(ipreds) - 2 df.to_csv('ensemble.valid.calibrate.csv', index=False) #idf.to_csv('ensemble.infer.calibrate.csv', index=False) ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-cv-parallel.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', True, '') flags.DEFINE_bool('grid_search', True, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 10, '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') flags.DEFINE_integer('seed', None, '') flags.DEFINE_integer('num_folds', 5, '') flags.DEFINE_bool('show_detail', False, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata from sklearn.model_selection import KFold DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_loss(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.mean(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) if FLAGS.adjust: for i in range(len(class_weights)): for j in range(4): #class_weights[i][j] = math.log(class_weights[i][j]) #class_weights[i] = gezi.softmax(class_weights[i]) #class_weights[i][j] += math.sqrt(class_weights[i][j]) #class_weights[i][j] += 0. #class_weights[i][j] = math.sqrt(class_weights[i][j]) x = class_weights[i][j] # If using prob adjust just set x for logits seems x^3 better #class_weights[i][j] = x # well this make single model adjusted f1 improve by adding 100... #class_weights[i][j] = x * x * x + 100 class_weights[i][j] = x * x * x #if FLAGS.more_adjust: # #this has been tested to be effective as for both fold 0 and 1 and different model combinations # class_weights[1][-2] = class_weights[1][-2] * 1.2 # class_weights[-2][0] = class_weights[-2][0] * 1.2 if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations # pow(1.2, 22) 55.2061438912436 class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 22) ## 22.63 #x = pow(1.2, 18) ## * 22644.802257413307 #class_weights[-2][0] = class_weights[-2][0] * x * x * x * 1.2 class_weights[-2][0] = class_weights[-2][0] * 60000 # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) else: class_weights = np.ones_like(class_weights) print('class_weights\n', class_weights) ori_class_weights = class_weights def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust and FLAGS.adjust or FLAGS.grid_search: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def blend_weights(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank def get_counts(probs): predicts = np.argmax(probs, 1) counts = np.zeros(4) for predict in predicts: counts[predict] += 1 return counts def adjust_probs(probs, labels): f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) probs[:, 1][-2] *= 10 f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) probs[:, -2][0] *= 100000 f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) # TODO FIXME pymp not work class factors seems not locked... import pymp #class_factors = pymp.shared.array((num_attrs, num_classes), dtype='float') + 1. # class factors is per class dynamic adjust for class weights from multiprocessing import Manager def grid_search_class_factors(probs, labels, weights, num_grids=10): manager = Manager() class_factors_dict = manager.dict() with pymp.Parallel(12) as p: for i in tqdm(p.range(num_attrs), ascii=True): #for i in p.range(num_attrs): #p.print(i, ATTRIBUTES[i]) #p.print('init counts:', get_counts(probs[:, i])) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): #for a in(range(1,1 + num_grids)): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:, i] * factor2 f1 = f1_score(labels[:, i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: #p.print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 #class_factors[i] = factor class_factors_dict[i] = factor #p.print('counts:', get_counts(probs[:, i] * factor)) #p.print('class_factors', i, class_factors_dict[i]) class_factors = np.ones([num_attrs, num_classes]) for i in range(num_attrs): class_factors[i] = class_factors_dict[i] return class_factors def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) if FLAGS.num_grids <= 1: FLAGS.grid_search = False # if FLAGS.grid_search: # FLAGS.debug = False DEBUG = FLAGS.debug idir = FLAGS.idir # first id, sencod content .. idx = 2 valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files), 'num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) kf = KFold(n_splits=FLAGS.num_folds, shuffle=True, random_state=FLAGS.seed) print('loading all valid csv') dfs = [] for file_ in tqdm(valid_files, ascii=True): df = pd.read_csv(file_) df = df.sort_values('id') dfs.append(df) logits_f1_list = [] logits_adjusted_f1_list = [] probs_f1_list = [] probs_adjusted_f1_list = [] grids_logits_adjusted_f1_list = [] logits_predict_list = [] logits_adjusted_predict_list = [] probs_predict_list = [] probs_adjusted_predict_list = [] grids_logits_adjusted_predict_list = [] labels_list = [] results_list = [] def split_train_valid(x): if FLAGS.num_folds == 1: return x, x else: total = 15000 assert total % FLAGS.num_folds == 0 num_valid = int(total / FLAGS.num_folds) num_train = total - num_valid return x[:num_train], x[num_train:] for fold, (train_index, valid_index) in enumerate(kf.split(dfs[0])): print('FOLD_%s---------------------------' % fold) print(train_index, valid_index) class_factors = np.ones([num_attrs, num_classes]) class_weights = ori_class_weights # logits sum results results = None # prob sum results results2 = None weights = [] scores_list = [] for fid, df in enumerate(dfs): file_ = valid_files[fid] train = df.iloc[train_index] valid = df.iloc[valid_index] #if fid == 0: train_labels = train.iloc[:, idx:idx+num_attrs].values valid_labels = valid.iloc[:, idx:idx+num_attrs].values labels = np.concatenate([train_labels, valid_labels], 0) train_predicts = train.iloc[:, idx+num_attrs:idx+2*num_attrs].values valid_predicts = valid.iloc[:, idx+num_attrs:idx+2*num_attrs].values predicts = np.concatenate([train_predicts, valid_predicts], 0) train_scores = train['score'] valid_scores = valid['score'] scores = np.concatenate([train_scores, valid_scores], 0) scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) train_labels, valid_labels = split_train_valid(labels) train_predicts, valid_predicts = split_train_valid(predicts) train_scores, valid_scores = split_train_valid(scores) f1s = calc_f1s(train_labels, train_predicts) f1s_adjusted = calc_f1s(train_labels, to_predict(train_scores, is_single=True)) train_probs = gezi.softmax(train_scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(train_labels + 2, train_probs) losses = calc_losses(train_labels + 2, train_probs) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print('%-3d' % fid, '%-100s' % file_, '%.5f' % f1, '%.5f' % f1_adjusted, '%.5f' % np.mean(aucs), '%.5f' % np.mean(losses)) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) blend_weights(weights, FLAGS.norm_factor) # if DEBUG: # print(weights) print('-----------calc weight and score') for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score sum_weights = np.sum(weights, 0) train_results, valid_results = split_train_valid(results) train_results2, valid_results2 = split_train_valid(results2) print('-----------using prob ensemble') adjusted_predict_prob = to_predict(valid_results2, sum_weights, adjust=False) adjusted_f1_prob = calc_f1(valid_labels, adjusted_predict_prob) valid_results2 = np.reshape(valid_results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(valid_results2, -1) - 2 f1_prob = calc_f1(valid_labels, predicts2) probs_f1_list.append(f1_prob) probs_adjusted_f1_list.append(adjusted_f1_prob) probs_predict_list.append(predicts2) probs_adjusted_predict_list.append(adjusted_predict_prob) print('%-40s' % 'f1_prob:', '%.5f' % f1_prob) print('%-40s' % 'adjusted f1_prob:', '%.5f' % adjusted_f1_prob) # print('-----------detailed f1 infos (ensemble by prob)') # _, adjusted_f1_probs, class_f1s = calc_f1_alls(valid_labels, to_predict(results2[num_train:], sum_weights, adjust=False)) # for i, attr in enumerate(ATTRIBUTES): # print(attr, adjusted_f1_probs[i]) # for i, cls in enumerate(CLASSES): # print(cls, class_f1s[i]) print('-----------using logits ensemble') adjusted_predict = to_predict(valid_results, sum_weights) adjusted_f1 = calc_f1(valid_labels, adjusted_predict) valid_results = np.reshape(valid_results, [-1, num_attrs, num_classes]) predicts = np.argmax(valid_results, -1) - 2 f1 = calc_f1(valid_labels, predicts) logits_f1_list.append(f1) logits_adjusted_f1_list.append(adjusted_f1) logits_predict_list.append(predicts) logits_adjusted_predict_list.append(adjusted_predict) results_list.append(valid_results) labels_list.append(valid_labels) print('%-40s' % 'f1:', '%.5f' % f1) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.show_detail: print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(valid_results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'f1:', '%.5f' % f1) print('%-40s' % 'f1 prob:', '%.5f' % f1_prob) print('%-40s' % 'adjusted f1 prob:', '%.5f' % adjusted_f1_prob) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.grid_search: print('------------grid search num_grids', FLAGS.num_grids) class_factors = grid_search_class_factors(gezi.softmax(np.reshape(train_results, [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), train_labels, class_weights, num_grids=FLAGS.num_grids) if FLAGS.show_detail: print('class_factors1 with num_grids', FLAGS.num_grids) print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors adjusted_f1_before_grids = adjusted_f1 print('after dynamic adjust class factors') adjusted_predict = to_predict(valid_results, sum_weights) adjusted_f1 = calc_f1(valid_labels, adjusted_predict) valid_results = np.reshape(valid_results, [-1, num_attrs, num_classes]) grids_logits_adjusted_f1_list.append(adjusted_f1) grids_logits_adjusted_predict_list.append(adjusted_predict) print('-----------using logits ensemble') print('%-40s' % 'adjusted f1 before grids:', '%.5f' % adjusted_f1_before_grids) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.show_detail: print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(valid_results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'adjusted f1 before grids:', '%.5f' % adjusted_f1_before_grids) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) print('-------------------------------------OVERALL mean') print('ensemble by probs') print('%-40s' % 'f1', '%.5f' % np.mean(probs_f1_list)) print('%-40s' % 'adjustedf f1', '%.5f' % np.mean(probs_adjusted_f1_list)) print('ensemble by logits') print('%-40s' % 'f1:', '%.5f' % np.mean(logits_f1_list)) print('%-40s' % 'adjusted f1:', '%.5f' % np.mean(logits_adjusted_f1_list)) if FLAGS.grid_search: print('ensemble by logits after grid search') print('%-40s' % 'adjusted f1', '%.5f' % np.mean(grids_logits_adjusted_f1_list)) print('-------------------------------------OVERALL recalc') labels = np.concatenate(labels_list, 0) print('ensemble by probs') print('%-40s' % 'f1', '%.5f' % calc_f1(labels, np.concatenate(probs_predict_list, 0))) print('%-40s' % 'adjustedf f1', '%.5f' % calc_f1(labels, np.concatenate(probs_adjusted_predict_list, 0))) print('ensemble by logits') print('%-40s' % 'f1:', '%.5f' % calc_f1(labels, np.concatenate(logits_predict_list, 0))) print('%-40s' % 'adjusted f1:', '%.5f' % calc_f1(labels, np.concatenate(logits_adjusted_predict_list, 0))) if FLAGS.grid_search: print('ensemble by logits after grid search') print('%-40s' % 'adjusted f1 after grid search', '%.5f' % calc_f1(labels, np.concatenate(grids_logits_adjusted_predict_list, 0))) _, adjusted_f1s, class_f1s = calc_f1_alls(labels, np.concatenate(logits_adjusted_predict_list, 0)) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'f1', '%.5f' % calc_f1(labels, np.concatenate(logits_predict_list, 0))) print('%-40s' % 'adjusted f1', '%.5f' % calc_f1(labels, np.concatenate(logits_adjusted_predict_list, 0))) if FLAGS.grid_search: print('%-40s' % 'adjusted f1 after grid search', '%.5f' % calc_f1(labels, np.concatenate(grids_logits_adjusted_predict_list, 0))) results = np.concatenate(results_list, 0) results = results.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES]) #factor = FLAGS.logits_factor / sum_weights #print('%-40s' % '* factor loss', '%.5f' % calc_loss(labels, gezi.softmax(results * factor))) print('%-40s' % 'loss', '%.5f' % calc_loss(labels, gezi.softmax(results))) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-cv-v1.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', True, '') flags.DEFINE_bool('grid_search', True, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_float('thre', 0.6, '') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 10, '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') flags.DEFINE_integer('seed', None, '') flags.DEFINE_integer('num_valid', 3000, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) if FLAGS.adjust: for i in range(len(class_weights)): for j in range(4): #class_weights[i][j] = math.log(class_weights[i][j]) #class_weights[i] = gezi.softmax(class_weights[i]) #class_weights[i][j] += math.sqrt(class_weights[i][j]) #class_weights[i][j] += 0. #class_weights[i][j] = math.sqrt(class_weights[i][j]) x = class_weights[i][j] # If using prob adjust just set x for logits seems x^3 better #class_weights[i][j] = x # well this make single model adjusted f1 improve by adding 100... #class_weights[i][j] = x * x * x + 100 class_weights[i][j] = x * x * x #if FLAGS.more_adjust: # #this has been tested to be effective as for both fold 0 and 1 and different model combinations # class_weights[1][-2] = class_weights[1][-2] * 1.2 # class_weights[-2][0] = class_weights[-2][0] * 1.2 if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations # pow(1.2, 22) 55.2061438912436 class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 22) ## 22.63 #x = pow(1.2, 18) ## * 22644.802257413307 #class_weights[-2][0] = class_weights[-2][0] * x * x * x * 1.2 class_weights[-2][0] = class_weights[-2][0] * 60000 # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) else: class_weights = np.ones_like(class_weights) print('class_weights', class_weights) def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust and FLAGS.adjust or FLAGS.grid_search: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def blend_weights(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank def get_counts(probs): predicts = np.argmax(probs, 1) counts = np.zeros(4) for predict in predicts: counts[predict] += 1 return counts def adjust_probs(probs, labels): f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) probs[:, 1][-2] *= 10 f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) probs[:, -2][0] *= 100000 f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) # TODO FIXME pymp not work class factors seems not locked... import pymp #class_factors = pymp.shared.array((num_attrs, num_classes), dtype='float') + 1. # class factors is per class dynamic adjust for class weights from multiprocessing import Manager manager = Manager() class_factors_dict = manager.dict() def grid_search_class_factors(probs, labels, weights, num_grids=10): global class_factors with pymp.Parallel(12) as p: for i in tqdm(p.range(num_attrs), ascii=True): #for i in p.range(num_attrs): #p.print(i, ATTRIBUTES[i]) #p.print('init counts:', get_counts(probs[:, i])) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): #for a in(range(1,1 + num_grids)): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:, i] * factor2 f1 = f1_score(labels[:, i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: #p.print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 #class_factors[i] = factor class_factors_dict[i] = factor #p.print('counts:', get_counts(probs[:, i] * factor)) #p.print('class_factors', i, class_factors_dict[i]) class_factors = np.ones([num_attrs, num_classes]) for i in range(num_attrs): class_factors[i] = class_factors_dict[i] return class_factors num_train = 15000 - FLAGS.num_valid def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) # if FLAGS.grid_search: # FLAGS.debug = False DEBUG = FLAGS.debug idir = FLAGS.idir # first id, sencod content .. idx = 2 # logits sum results results = None # prob sum results results2 = None valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files)) print('num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) def sort_table(df, randomize, key='id'): df_list = [] for i in randomize: df_list.append(df[df[key] == i]) return pd.concat(df_list) randomize = None # weights is for per model weight weights = [] scores_list = [] valid_files_ = [] for fid, file_ in enumerate(valid_files): df = pd.read_csv(file_) # if fid != len(valid_files) - 1: # df = df.drop(['content']) #df= df.sort_values('id') if randomize is None: np.random.seed(FLAGS.seed) randomize = np.arange(len(df)) np.random.shuffle(randomize) df['id2'] = randomize #df = sort_table(df, randomize) df = df.sort_values('id2') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) #f1 = calc_f1(labels, predicts) #f1 = calc_f1(labels, to_predict(scores)) #f1s = calc_f1s(labels, predicts) ## to_predict better # f1_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.npy' # f1_adjusted_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.adjust.npy' # if not os.path.exists(f1_file): valid_labels = labels[num_train:] labels = labels[:num_train] predicts = predicts[:num_train] scores = scores[:num_train] f1s = calc_f1s(labels, predicts) f1s_adjusted = calc_f1s(labels, to_predict(scores, is_single=True)) probs = gezi.softmax(scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(labels + 2, probs) losses = calc_losses(labels + 2, probs) # np.save(f1_file, f1s) # np.save(f1_adjusted_file, f1s_adjusted) # else: # f1s = np.load(f1_file) # f1s_adjusted = np.load(f1_adjusted_file) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print(fid, file_, f1, f1_adjusted, np.mean(aucs), np.mean(losses)) if f1_adjusted < FLAGS.thre: print('ignore', file_) continue else: valid_files_.append(file_) # NOTICE weighted can get 7186 while avg only 716 # and using original f1s score higher #weight = np.reshape(f1s, [num_attrs, 1]) #weight = np.reshape(f1s_adjusted, [num_attrs, 1]) #weight = np.reshape(aucs, [num_attrs, 1]) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) blend_weights(weights, FLAGS.norm_factor) # if DEBUG: # print(weights) valid_files = valid_files_ print('final num valid files', len(valid_files)) for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score sum_weights = np.sum(weights, 0) adjusted_f1 = calc_f1(valid_labels, to_predict(results[num_train:], sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(valid_labels, predicts[num_train:]) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) adjusted_f1_prob = calc_f1(valid_labels, to_predict(results2[num_train:], sum_weights, adjust=False)) results2 = np.reshape(results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(results2, -1) - 2 f1_prob = calc_f1(valid_labels, predicts2[num_train:]) print('-----------using prob ensemble') print('f1_prob:', f1_prob) print('adjusted f1_prob:', adjusted_f1_prob) print('-----------detailed f1 infos (ensemble by prob)') _, adjusted_f1_probs, class_f1s = calc_f1_alls(valid_labels, to_predict(results2[num_train:], sum_weights, adjust=False)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1_probs[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(results[num_train:], sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') class_factors = np.ones([num_attrs, num_classes]) if FLAGS.grid_search: class_factors = grid_search_class_factors(gezi.softmax(np.reshape(results[:num_train], [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), labels, class_weights, num_grids=FLAGS.num_grids) print('class_factors1') print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors print('after dynamic adjust class factors') adjusted_f1 = calc_f1(valid_labels, to_predict(results[num_train:], sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(valid_labels, predicts[num_train:]) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(results[num_train:], sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-cv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', True, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 0, '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') flags.DEFINE_integer('seed', 10240, '') flags.DEFINE_integer('num_folds', 1, '') flags.DEFINE_bool('show_detail', False, '') flags.DEFINE_bool('infer', False, '') flags.DEFINE_string('blend', 'rank', 'blend by rank or by weight') flags.DEFINE_bool('minmax_scale', False, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata from sklearn.model_selection import KFold from sklearn.metrics import confusion_matrix DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_loss(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.mean(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) if FLAGS.adjust: for i in range(len(class_weights)): for j in range(4): #class_weights[i][j] = math.log(class_weights[i][j]) #class_weights[i] = gezi.softmax(class_weights[i]) #class_weights[i][j] += math.sqrt(class_weights[i][j]) #class_weights[i][j] += 0. #class_weights[i][j] = math.sqrt(class_weights[i][j]) x = class_weights[i][j] # If using prob adjust just set x for logits seems x^3 better #class_weights[i][j] = x # well this make single model adjusted f1 improve by adding 100... #class_weights[i][j] = x * x * x + 100 class_weights[i][j] = x * x * x #if FLAGS.more_adjust: # #this has been tested to be effective as for both fold 0 and 1 and different model combinations # class_weights[1][-2] = class_weights[1][-2] * 1.2 # class_weights[-2][0] = class_weights[-2][0] * 1.2 if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations #class_weights[0][-2] = class_weights[1][-2] * 10. # pow(1.2, 22) 55.2061438912436 class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 22) #class_weights[1][1] = class_weights[1][-2] * 10 ## 22.63 #x = pow(1.2, 18) ## * 22644.802257413307 #class_weights[-2][0] = class_weights[-2][0] * x * x * x * 1.2 class_weights[-2][0] = class_weights[-2][0] * 60000 #class_weights[-2][1] = class_weights[-2][1] * 2 # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) else: class_weights = np.ones_like(class_weights) print('class_weights\n', class_weights) ori_class_weights = class_weights def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust and FLAGS.adjust or FLAGS.num_grids: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def blend_byrank(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank #print(np.sum(weights, 0)) return weights def blend_byweight(weights, norm_facotr): for i in range(num_attrs): if FLAGS.minmax_scale: weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] min_ws = np.min(ws) max_ws = np.max(ws) gap = max_ws - min_ws if gap > 0: for j in range(len(weights)): weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr sum_weights = np.sum(weights, 0) # return new weights... weights = weights / sum_weights #print(np.sum(weights, 0)) return weights def blend(weights, norm_factor): if FLAGS.blend == 'rank': print('blend by rank') return blend_byrank(weights, norm_factor) else: print('blend by weight') return blend_byweight(weights, norm_factor) def get_counts(probs): predicts = np.argmax(probs, 1) counts = np.zeros(4) for predict in predicts: counts[predict] += 1 return counts def adjust_probs(probs, labels): f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) probs[:, 1][-2] *= 10 f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) probs[:, -2][0] *= 100000 f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) # TODO FIXME pymp not work class factors seems not locked... import pymp #class_factors = pymp.shared.array((num_attrs, num_classes), dtype='float') + 1. # class factors is per class dynamic adjust for class weights from multiprocessing import Manager def grid_search_class_factors(probs, labels, weights, num_grids=10): manager = Manager() class_factors_dict = manager.dict() with pymp.Parallel(12) as p: for i in tqdm(p.range(num_attrs), ascii=True): #for i in p.range(num_attrs): #p.print(i, ATTRIBUTES[i]) #p.print('init counts:', get_counts(probs[:, i])) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): #for a in(range(1,1 + num_grids)): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:, i] * factor2 f1 = f1_score(labels[:, i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: #p.print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 #class_factors[i] = factor class_factors_dict[i] = factor #p.print('counts:', get_counts(probs[:, i] * factor)) #p.print('class_factors', i, class_factors_dict[i]) class_factors = np.ones([num_attrs, num_classes]) for i in range(num_attrs): class_factors[i] = class_factors_dict[i] return class_factors def get_distribution(predicts): counts = np.zeros([len(ATTRIBUTES), 4], dtype=np.int64) for predict in predicts: for i, p in enumerate(predict): counts[i][p + 2] += 1 return counts def print_confusion_matrix(labels, predicts): for i, attr in enumerate(ATTRIBUTES): print(i, '%-40s' % attr) print(confusion_matrix(labels[:, i] + 2, predicts[:, i] + 2)) def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) DEBUG = FLAGS.debug idir = FLAGS.idir if not DEBUG: FLAGS.infer = True FLAGS.num_folds = 1 #FLAGS.num_grids = 10 # first id, sencod content .. idx = 2 valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files), 'num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) print('loading all valid csv') dfs = [] for file_ in tqdm(valid_files, ascii=True): df = pd.read_csv(file_) df = df.sort_values('id') dfs.append(df) if FLAGS.num_folds > 1: kf = KFold(n_splits=FLAGS.num_folds, shuffle=True, random_state=FLAGS.seed) dataset = kf.split(dfs[0]) else: ids = dfs[0]['id'].values dataset = [(ids, ids)] logits_f1_list = [] logits_adjusted_f1_list = [] probs_f1_list = [] probs_adjusted_f1_list = [] grids_logits_adjusted_f1_list = [] logits_predict_list = [] logits_adjusted_predict_list = [] probs_predict_list = [] probs_adjusted_predict_list = [] grids_logits_adjusted_predict_list = [] labels_list = [] results_list = [] def split_train_valid(x): if FLAGS.num_folds == 1: return x, x else: total = 15000 assert total % FLAGS.num_folds == 0 num_valid = int(total / FLAGS.num_folds) num_train = total - num_valid return x[:num_train], x[num_train:] for fold, (train_index, valid_index) in enumerate(dataset): print('FOLD_%s---------------------------' % fold) print('train:', train_index, 'valid:', valid_index) class_factors = np.ones([num_attrs, num_classes]) class_weights = ori_class_weights # logits sum results results = None # prob sum results results2 = None weights = [] scores_list = [] for fid, df in enumerate(dfs): file_ = valid_files[fid] train = df.iloc[train_index] valid = df.iloc[valid_index] #if fid == 0: train_labels = train.iloc[:, idx:idx+num_attrs].values valid_labels = valid.iloc[:, idx:idx+num_attrs].values labels = np.concatenate([train_labels, valid_labels], 0) train_predicts = train.iloc[:, idx+num_attrs:idx+2*num_attrs].values valid_predicts = valid.iloc[:, idx+num_attrs:idx+2*num_attrs].values predicts = np.concatenate([train_predicts, valid_predicts], 0) train_scores = train['score'] valid_scores = valid['score'] scores = np.concatenate([train_scores, valid_scores], 0) scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) train_labels, valid_labels = split_train_valid(labels) train_predicts, valid_predicts = split_train_valid(predicts) train_scores, valid_scores = split_train_valid(scores) f1s = calc_f1s(train_labels, train_predicts) f1s_adjusted = calc_f1s(train_labels, to_predict(train_scores, is_single=True)) train_probs = gezi.softmax(train_scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(train_labels + 2, train_probs) losses = calc_losses(train_labels + 2, train_probs) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print('%-3d' % fid, '%-100s' % file_, '%.5f' % f1, '%.5f' % f1_adjusted, '%.5f' % np.mean(aucs), '%.5f' % np.mean(losses)) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) weights = blend(weights, FLAGS.norm_factor) sum_weights = np.sum(weights, 0) # print('weights\n', weights) # print('sum_weights\n', sum_weights) # if DEBUG: # print(weights) print('-----------calc weight and score') for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] #print(fid, valid_files[fid], '\n', ['%.5f' % x for x in np.reshape(weight, [-1])]) if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score train_results, valid_results = split_train_valid(results) train_results2, valid_results2 = split_train_valid(results2) print('-----------using prob ensemble') adjusted_predict_prob = to_predict(valid_results2, sum_weights, adjust=False) adjusted_f1_prob = calc_f1(valid_labels, adjusted_predict_prob) valid_results2 = np.reshape(valid_results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(valid_results2, -1) - 2 f1_prob = calc_f1(valid_labels, predicts2) probs_f1_list.append(f1_prob) probs_adjusted_f1_list.append(adjusted_f1_prob) probs_predict_list.append(predicts2) probs_adjusted_predict_list.append(adjusted_predict_prob) print('%-40s' % 'f1_prob:', '%.5f' % f1_prob) print('%-40s' % 'adjusted f1_prob:', '%.5f' % adjusted_f1_prob) # print('-----------detailed f1 infos (ensemble by prob)') # _, adjusted_f1_probs, class_f1s = calc_f1_alls(valid_labels, to_predict(results2[num_train:], sum_weights, adjust=False)) # for i, attr in enumerate(ATTRIBUTES): # print(attr, adjusted_f1_probs[i]) # for i, cls in enumerate(CLASSES): # print(cls, class_f1s[i]) print('-----------using logits ensemble') adjusted_predict = to_predict(valid_results, sum_weights) adjusted_f1 = calc_f1(valid_labels, adjusted_predict) valid_results = np.reshape(valid_results, [-1, num_attrs, num_classes]) predicts = np.argmax(valid_results, -1) - 2 f1 = calc_f1(valid_labels, predicts) logits_f1_list.append(f1) logits_adjusted_f1_list.append(adjusted_f1) logits_predict_list.append(predicts) logits_adjusted_predict_list.append(adjusted_predict) results_list.append(valid_results) labels_list.append(valid_labels) print('%-40s' % 'f1:', '%.5f' % f1) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.show_detail: print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(valid_results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'f1:', '%.5f' % f1) print('%-40s' % 'f1 prob:', '%.5f' % f1_prob) print('%-40s' % 'adjusted f1 prob:', '%.5f' % adjusted_f1_prob) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.num_grids: print('------------grid search num_grids', FLAGS.num_grids) class_factors = grid_search_class_factors(gezi.softmax(np.reshape(train_results, [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), train_labels, class_weights, num_grids=FLAGS.num_grids) if FLAGS.show_detail: print('class_factors1 with num_grids', FLAGS.num_grids) print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors adjusted_f1_before_grids = adjusted_f1 print('after dynamic adjust class factors') adjusted_predict = to_predict(valid_results, sum_weights) adjusted_f1 = calc_f1(valid_labels, adjusted_predict) valid_results = np.reshape(valid_results, [-1, num_attrs, num_classes]) grids_logits_adjusted_f1_list.append(adjusted_f1) grids_logits_adjusted_predict_list.append(adjusted_predict) print('-----------using logits ensemble') print('%-40s' % 'adjusted f1 before grids:', '%.5f' % adjusted_f1_before_grids) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) if FLAGS.show_detail: print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(valid_labels, to_predict(valid_results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'adjusted f1 before grids:', '%.5f' % adjusted_f1_before_grids) print('%-40s' % 'adjusted f1:', '%.5f' % adjusted_f1) # print('-------------------------------------OVERALL mean') # print('ensemble by probs') # print('%-40s' % 'f1', '%.5f' % np.mean(probs_f1_list)) # print('%-40s' % 'adjustedf f1', '%.5f' % np.mean(probs_adjusted_f1_list)) # print('ensemble by logits') # print('%-40s' % 'f1:', '%.5f' % np.mean(logits_f1_list)) # print('%-40s' % 'adjusted f1:', '%.5f' % np.mean(logits_adjusted_f1_list)) # if FLAGS.num_grids: # print('ensemble by logits after grid search') # print('%-40s' % 'adjusted f1', '%.5f' % np.mean(grids_logits_adjusted_f1_list)) print('-------------------------------------OVERALL recalc') labels = np.concatenate(labels_list, 0) print('ensemble by probs') print('%-40s' % 'f1', '%.5f' % calc_f1(labels, np.concatenate(probs_predict_list, 0))) print('%-40s' % 'adjustedf f1', '%.5f' % calc_f1(labels, np.concatenate(probs_adjusted_predict_list, 0))) print('ensemble by logits') predicts = np.concatenate(logits_predict_list, 0) print('%-40s' % 'f1:', '%.5f' % calc_f1(labels, predicts)) adjusted_predicts = np.concatenate(logits_adjusted_predict_list, 0) print('%-40s' % 'adjusted f1:', '%.5f' % calc_f1(labels, adjusted_predicts)) if FLAGS.num_grids: print('ensemble by logits after grid search') grids_predicts = np.concatenate(grids_logits_adjusted_predict_list, 0) print('%-40s' % 'adjusted f1 after grid search', '%.5f' % calc_f1(labels, grids_predicts)) _, adjusted_f1s, class_f1s = calc_f1_alls(labels, adjusted_predicts) for i, attr in enumerate(ATTRIBUTES): print('%-40s' % attr, '%.5f' % adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print('%-40s' % cls, '%.5f' % class_f1s[i]) print('%-40s' % 'f1', '%.5f' % calc_f1(labels, predicts)) print('%-40s' % 'adjusted f1', '%.5f' % calc_f1(labels, adjusted_predicts)) if FLAGS.num_grids: print('%-40s' % 'adjusted f1 after grid search', '%.5f' % calc_f1(labels, grids_predicts)) results = np.concatenate(results_list, 0) results = results.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES]) #factor = FLAGS.logits_factor / sum_weights #print('%-40s' % '* factor loss', '%.5f' % calc_loss(labels, gezi.softmax(results * factor))) ## directly do softmax on results since sum weights is 1 loss = calc_loss(labels, gezi.softmax(results)) print('%-40s' % 'loss', '%.5f' % loss) print('f1:class predictions distribution') counts = get_distribution(predicts) for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, ['%.5f' % (x / len(predicts)) for x in count]) #print_confusion_matrix(labels, predicts) print('adjusted f1:class predictions distribution') counts = get_distribution(adjusted_predicts) for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, ['%.5f' % (x / len(predicts)) for x in count]) #print_confusion_matrix(labels, adjusted_predicts) if FLAGS.num_grids: print('adjusted f1:class predictions distribution after grids search') counts = get_distribution(grids_predicts) for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, ['%.5f' % (x / len(grids_predicts)) for x in count]) #print_confusion_matrix(labels, grids_predicts) DEBUG = FLAGS.debug if FLAGS.infer: print('------------infer') ofile = os.path.join(idir, 'ensemble.infer.csv') file_ = gezi.strip_suffix(file_, '.debug') df = pd.read_csv(file_) idx = 2 results = None results2 = None for fid, file_ in enumerate(infer_files): df = pd.read_csv(file_) df = df.sort_values('id') print(fid, file_, len(df)) if not FLAGS.debug: assert len(df) == 200000 if results is None: results = np.zeros([len(df), num_attrs * num_classes]) results2 = np.zeros([len(df), num_attrs * num_classes]) scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) weight = weights[fid] if FLAGS.method == 'avg' and FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(np.reshape(score, [num_attrs, num_classes]) * weight, [-1]) results[i] += score score = gezi.softmax(np.reshape(score, [num_attrs, num_classes]), -1) score = np.reshape(score, [-1]) results2[i] += score #predicts = to_predict(results2, sum_weights) predicts = to_predict(results, sum_weights) counts = get_distribution(predicts) for attr, count in zip(ATTRIBUTES, counts): print('%-40s' % attr, ['%.5f' % (x / len(predicts)) for x in count]) if not DEBUG: columns = df.columns[idx:idx + num_attrs].values else: columns = df.columns[idx + num_attrs:idx + 2 * num_attrs].values if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') if not DEBUG: file_ = gezi.strip_suffix(file_, '.debug') print('temp csv using for write', file_) df = pd.read_csv(file_) else: print('debug test using file', valid_files[-1]) df = pd.read_csv(valid_files[-1]) # for safe must sort id df = df.sort_values('id') # TODO better ? not using loop ? for i, column in enumerate(columns): df[column] = predicts[:, i] if DEBUG: print('check blend result', calc_f1(df.iloc[:, idx:idx + num_attrs].values, predicts)) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') print(f'loss:[{loss}]') print('out:', ofile) if not DEBUG: df.to_csv(ofile, index=False, encoding="utf_8_sig") print('---------------results', results.shape) df['score'] = [x for x in results] if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.debug.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') print('out debug:', ofile) df.to_csv(ofile, index=False, encoding="utf_8_sig") if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-hillclimb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', True, '') flags.DEFINE_bool('grid_search', False, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_float('thre', 0.69, '') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 10, '') flags.DEFINE_integer('num_climbs', 25, '') flags.DEFINE_integer('num_train', 10000, 'num train of climbs') flags.DEFINE_bool('detail', False, '') flags.DEFINE_bool('more_adjust', True, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] LABELS = ATTRIBUTES CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) for i in range(len(class_weights)): for j in range(4): #class_weights[i][j] = math.log(class_weights[i][j]) #class_weights[i] = gezi.softmax(class_weights[i]) #class_weights[i][j] += math.sqrt(class_weights[i][j]) #class_weights[i][j] += 0. #class_weights[i][j] = math.sqrt(class_weights[i][j]) x = class_weights[i][j] # If using prob adjust just set x for logits seems x^3 better #class_weights[i][j] = x # well this make single model adjusted f1 improve by adding 100... #class_weights[i][j] = x * x * x + 100 class_weights[i][j] = x * x * x if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations class_weights[1][-2] = class_weights[1][-2] * 1.2 class_weights[-2][0] = class_weights[-2][0] * 1.2 # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) print('class_weights', class_weights) def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def to_one_predict(logits, label, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights[label] else: probs = logits result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 return result def blend_weights(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank # class factors is per class dynamic adjust for class weights def grid_search_class_factors(probs, labels, weights, num_grids=10): class_factors = np.ones([num_attrs, num_classes]) # TODO multi process for i in tqdm(range(num_attrs), ascii=True): print(i, ATTRIBUTES[i]) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:,i] * factor2 f1 = f1_score(labels[:,i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 class_factors[i] = factor return class_factors # weights is for per model weight weights = [] labels_list = [] scores_list = [] valid_files_ = [] """ Initializes an empty ensemble """ def init_hillclimb(): best_ensemble = {} for label in LABELS: best_ensemble[label] = [] best_score = {} best_loss = {} valid_score = {} valid_loss = {} for label in LABELS: best_score[label] = 0 best_loss[label] = 1000 valid_score[label] = None valid_loss[label] = None return best_ensemble, best_score, best_loss, valid_score, valid_loss """ Scores average AUC for an ensemble per label """ def score_ensemble(ensemble, label): blend_preds = np.zeros([len(scores_list[0]), NUM_CLASSES]) for model in ensemble: scores = scores_list[model] scores = np.reshape(scores, [-1, NUM_ATTRIBUTES, NUM_CLASSES]) scores = scores[:, label] blend_preds += scores predict = to_one_predict(blend_preds, label, len(ensemble)) index = FLAGS.num_train score = f1_score(labels_list[model][:, label][:index], predict[:index], average='macro') probs = gezi.softmax(blend_preds / len(ensemble)) loss = log_loss(labels_list[model][:, label][:index], probs[:index]) valid_score = f1_score(labels_list[model][:, label][index:], predict[index:], average='macro') valid_loss = log_loss(labels_list[model][:, label][index:], probs[index:]) return score, loss, valid_score, valid_loss """ Finds the optimal model to add next to an ensemble """ def find_best_improvement(ensemble, label): best_score = 0 best_loss = 1000 best_ensemble = [] best_valid_score = None best_valid_loss = None for i in range(0,len(labels_list)): ensemble = ensemble + [i] score, loss, valid_score, valid_loss = score_ensemble(ensemble, label) if score > best_score and loss <= best_loss: #if score < best_score: best_score = score best_loss = loss best_ensemble = ensemble best_valid_score = valid_score best_valid_loss = valid_loss ensemble = ensemble[:-1] return best_ensemble, best_score, best_loss, best_valid_score, best_valid_loss """ Performs a step for each label """ def climb(best_ensemble, best_score, best_loss, valid_score, valid_loss): for label in LABELS: best_ensemble[label], best_score[label], best_loss[label], valid_score[label], valid_loss[label] = find_best_improvement(best_ensemble[label], ATTRIBUTES.index(label)) return best_ensemble, best_score, best_loss, valid_score, valid_loss """ Gets optimal blending weights after hillclimb """ def get_optimal_weights(best_ensemble): weights = {} for label in LABELS: weights[label] = {} for num in set(best_ensemble[label]): weights[label][num] = best_ensemble[label].count(num)/len(best_ensemble[label]) return weights def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) # if FLAGS.grid_search: # FLAGS.debug = False DEBUG = FLAGS.debug idir = FLAGS.idir # first id, sencod content .. idx = 2 # logits sum results results = None # prob sum results results2 = None valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files)) print('num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) global weights global labels_list global scores_list global valid_files_ for fid, file_ in enumerate(valid_files): df = pd.read_csv(file_) df= df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values labels_list.append(labels) predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) #f1 = calc_f1(labels, predicts) #f1 = calc_f1(labels, to_predict(scores)) #f1s = calc_f1s(labels, predicts) ## to_predict better # f1_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.npy' # f1_adjusted_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.adjust.npy' # if not os.path.exists(f1_file): f1s = calc_f1s(labels, predicts) f1s_adjusted = calc_f1s(labels, to_predict(scores, is_single=True)) probs = gezi.softmax(scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(labels + 2, probs) losses = calc_losses(labels + 2, probs) # np.save(f1_file, f1s) # np.save(f1_adjusted_file, f1s_adjusted) # else: # f1s = np.load(f1_file) # f1s_adjusted = np.load(f1_adjusted_file) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print(fid, file_, f1, f1_adjusted, np.mean(aucs), np.mean(losses)) if f1_adjusted < FLAGS.thre: print('ignore', file_) continue else: valid_files_.append(file_) # NOTICE weighted can get 7186 while avg only 716 # and using original f1s score higher #weight = np.reshape(f1s, [num_attrs, 1]) #weight = np.reshape(f1s_adjusted, [num_attrs, 1]) #weight = np.reshape(aucs, [num_attrs, 1]) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) blend_weights(weights, FLAGS.norm_factor) print('weights by weight blending') print(weights) best_ensemble, best_score, best_loss, valid_score, valid_loss = init_hillclimb() # Run hillclimb for i in range(FLAGS.num_climbs): print("-------------") print("Step", i) best_ensemble, best_score, best_loss, valid_score, valid_loss = climb(best_ensemble, best_score, best_loss, valid_score, valid_loss) print("Best ensemble:") print(best_ensemble) print("Best score:") print(best_score) print("F1:", np.mean([best_score[label] for label in LABELS])) print("Best loss:") print(best_loss) print("Loss:", np.mean([best_loss[label] for label in LABELS])) print("Valid score:") print(best_score) print("Valid F1:", np.mean([valid_score[label] for label in LABELS])) print("Valid loss:") print(best_loss) print("Valid Loss:", np.mean([valid_loss[label] for label in LABELS])) # Get optimal weights opt_w = get_optimal_weights(best_ensemble) print("Optimal weights:") print(opt_w) weights = np.zeros_like(weights) for i, attr in enumerate(ATTRIBUTES): m = opt_w[attr] for idx, w in m.items(): weights[idx][i] = w print('weights by hillclimb') print(weights) valid_files = valid_files_ print('final num valid files', len(valid_files)) for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score sum_weights = np.sum(weights, 0) adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) adjusted_f1_prob = calc_f1(labels, to_predict(results2, sum_weights, adjust=False)) results2 = np.reshape(results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(results2, -1) - 2 f1_prob = calc_f1(labels, predicts2) print('-----------using prob ensemble') print('f1_prob:', f1_prob) print('adjusted f1_prob:', adjusted_f1_prob) print('-----------detailed f1 infos (ensemble by prob)') _, adjusted_f1_probs, class_f1s = calc_f1_alls(labels, to_predict(results2, sum_weights, adjust=False)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1_probs[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') class_factors = np.ones([num_attrs, num_classes]) if FLAGS.grid_search: class_factors = grid_search_class_factors(gezi.softmax(np.reshape(results, [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), labels, class_weights, num_grids=FLAGS.num_grids) print('class_factors') print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors print('after dynamic adjust class factors') adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') #-------------infer print('------------infer') ofile = os.path.join(idir, 'ensemble.infer.csv') file_ = gezi.strip_suffix(file_, '.debug') df = pd.read_csv(file_) idx = 2 results = None results2 = None for fid, file_ in enumerate(infer_files): df = pd.read_csv(file_) df = df.sort_values('id') print(fid, file_) if results is None: results = np.zeros([len(df), num_attrs * num_classes]) results2 = np.zeros([len(df), num_attrs * num_classes]) scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) weight = weights[fid] if FLAGS.method == 'avg' and FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(np.reshape(score, [num_attrs, num_classes]) * weight, [-1]) results[i] += score score = gezi.softmax(np.reshape(score, [num_attrs, num_classes]), -1) score = np.reshape(score, [-1]) results2[i] += score #predicts = to_predict(results2, sum_weights) predicts = to_predict(results, sum_weights) if not DEBUG: columns = df.columns[idx:idx + num_attrs].values else: columns = df.columns[idx + num_attrs:idx + 2 * num_attrs].values if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') if not DEBUG: file_ = gezi.strip_suffix(file_, '.debug') print('temp csv using for write', file_) df = pd.read_csv(file_) else: print('debug test using file', valid_files[-1]) df = pd.read_csv(valid_files[-1]) # for safe must sort id df = df.sort_values('id') # TODO better ? not using loop ? for i, column in enumerate(columns): df[column] = predicts[:, i] if DEBUG: print('check blend result', calc_f1(df.iloc[:, idx:idx + num_attrs].values, predicts)) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') print('out:', ofile) if not DEBUG: df.to_csv(ofile, index=False, encoding="utf_8_sig") print('---------------results', results.shape) df['score'] = [x for x in results] factor = FLAGS.logits_factor / sum_weights #print('--------sum_weights', sum_weights) #print('--------factor', factor) logits = np.reshape(results, [-1, num_attrs, num_classes]) # DO NOT USE *=... will change results... logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights logits = np.reshape(logits, [-1, num_attrs * num_classes]) print('---------------logits', logits.shape) print('----results', results) print('----logits', logits) df['logit'] = [x for x in logits] probs = np.reshape(probs, [-1, num_attrs * num_classes]) print('---------------probs', probs.shape) df['prob'] = [x for x in probs] if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.debug.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') print('out debug:', ofile) df.to_csv(ofile, index=False, encoding="utf_8_sig") if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score import gezi idir = sys.argv[1] num_attrs = 20 def parse(l): return np.array([float(x.strip()) for x in l[1:-1].split(',')]) def to_predict(logits): logits = np.reshape(logits, [-1, num_attrs, 4]) probs = gezi.softmax(logits, -1) probs = np.reshape(probs, [-1, 4]) result = np.zeros([len(probs)], dtype=np.int32) for i, prob in enumerate(probs): if prob[0] >= 0.6: result[i] = -2 else: result[i] = np.argmax(prob[1:]) - 1 result = np.reshape(result, [-1, num_attrs]) return result idx = 2 results = None for file_ in glob.glob('%s/*.infer.csv.debug' % idir): df = pd.read_csv(file_) predicts = df.iloc[:,idx:idx+num_attrs].values print(file_) if results is None: results = np.zeros([len(df), num_attrs * 4]) scores = df['score'] for i, score in enumerate(scores): score = parse(score) # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) results[i] += score #results = np.reshape(results, [-1, num_attrs, 4]) #predicts = np.argmax(results, -1) - 2 predicts = to_predict(results) columns = df.columns[idx:idx+num_attrs].values ofile = os.path.join(idir, 'ensemble.infer.csv') file_ = gezi.strip_suffix(file_, '.debug') df = pd.read_csv(file_) # TODO better ? not using loop ? for i, column in enumerate(columns): df[column] = predicts[:, i] print('out:', ofile) df.to_csv(ofile, index=False, encoding="utf_8_sig") ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble-v1.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== """ ensemble.py is depreciated, using ensemble-parallel.py instead """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', True, '') flags.DEFINE_bool('grid_search', False, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_float('thre', 0.6, '') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 10, '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) for i in range(len(class_weights)): for j in range(4): x = class_weights[i][j] class_weights[i][j] = x * x * x # well just compact for now, but should change this is a bug.. if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations # well, this should be further ajusted class_weights[1][-2] = class_weights[1][-2] * 1.2 class_weights[-2][0] = class_weights[-2][0] * 1.2 #if FLAGS.more_adjust: # #this has been tested to be effective as for both fold 0 and 1 and different model combinations # # well, this should be further ajusted # class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 20) # class_weights[-2][0] = class_weights[-2][0] * pow(1.2, 20) # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) print('class_weights', class_weights) def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust and FLAGS.adjust: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def blend_weights(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank def get_counts(probs): predicts = np.argmax(probs, 1) counts = np.zeros(4) for predict in predicts: counts[predict] += 1 return counts def adjust_probs(probs, labels): f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) probs[:, 1][-2] *= 10 f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) probs[:, -2][0] *= 100000 f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) # class factors is per class dynamic adjust for class weights def grid_search_class_factors(probs, labels, weights, num_grids=10): #adjust_probs(probs, labels) class_factors = np.ones([num_attrs, num_classes]) # TODO multi process for i in tqdm(range(num_attrs), ascii=True): print(i, ATTRIBUTES[i]) print('init counts:', get_counts(probs[:, i])) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:, i] * factor2 f1 = f1_score(labels[:, i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 class_factors[i] = factor print('counts:', get_counts(probs[:, i] * factor)) return class_factors def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) # if FLAGS.grid_search: # FLAGS.debug = False DEBUG = FLAGS.debug idir = FLAGS.idir # first id, sencod content .. idx = 2 # logits sum results results = None # prob sum results results2 = None valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files)) print('num_infers', len(infer_files)) assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) # weights is for per model weight weights = [] scores_list = [] valid_files_ = [] for fid, file_ in enumerate(valid_files): df = pd.read_csv(file_) df= df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) #f1 = calc_f1(labels, predicts) #f1 = calc_f1(labels, to_predict(scores)) #f1s = calc_f1s(labels, predicts) ## to_predict better # f1_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.npy' # f1_adjusted_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.adjust.npy' # if not os.path.exists(f1_file): f1s = calc_f1s(labels, predicts) f1s_adjusted = calc_f1s(labels, to_predict(scores, is_single=True)) probs = gezi.softmax(scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(labels + 2, probs) losses = calc_losses(labels + 2, probs) # np.save(f1_file, f1s) # np.save(f1_adjusted_file, f1s_adjusted) # else: # f1s = np.load(f1_file) # f1s_adjusted = np.load(f1_adjusted_file) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print(fid, file_, f1, f1_adjusted, np.mean(aucs), np.mean(losses)) if f1_adjusted < FLAGS.thre: print('ignore', file_) continue else: valid_files_.append(file_) # NOTICE weighted can get 7186 while avg only 716 # and using original f1s score higher #weight = np.reshape(f1s, [num_attrs, 1]) #weight = np.reshape(f1s_adjusted, [num_attrs, 1]) #weight = np.reshape(aucs, [num_attrs, 1]) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) blend_weights(weights, FLAGS.norm_factor) # if DEBUG: # print(weights) valid_files = valid_files_ print('final num valid files', len(valid_files)) for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score sum_weights = np.sum(weights, 0) adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) adjusted_f1_prob = calc_f1(labels, to_predict(results2, sum_weights, adjust=False)) results2 = np.reshape(results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(results2, -1) - 2 f1_prob = calc_f1(labels, predicts2) print('-----------using prob ensemble') print('f1_prob:', f1_prob) print('adjusted f1_prob:', adjusted_f1_prob) print('-----------detailed f1 infos (ensemble by prob)') _, adjusted_f1_probs, class_f1s = calc_f1_alls(labels, to_predict(results2, sum_weights, adjust=False)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1_probs[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') class_factors = np.ones([num_attrs, num_classes]) if FLAGS.grid_search: class_factors = grid_search_class_factors(gezi.softmax(np.reshape(results, [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), labels, class_weights, num_grids=FLAGS.num_grids) print('class_factors') print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors print('after dynamic adjust class factors') adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') #-------------infer print('------------infer') ofile = os.path.join(idir, 'ensemble.infer.csv') file_ = gezi.strip_suffix(file_, '.debug') df = pd.read_csv(file_) idx = 2 results = None results2 = None for fid, file_ in enumerate(infer_files): df = pd.read_csv(file_) df = df.sort_values('id') print(fid, file_) if results is None: results = np.zeros([len(df), num_attrs * num_classes]) results2 = np.zeros([len(df), num_attrs * num_classes]) scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) weight = weights[fid] if FLAGS.method == 'avg' and FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(np.reshape(score, [num_attrs, num_classes]) * weight, [-1]) results[i] += score score = gezi.softmax(np.reshape(score, [num_attrs, num_classes]), -1) score = np.reshape(score, [-1]) results2[i] += score #predicts = to_predict(results2, sum_weights) predicts = to_predict(results, sum_weights) if not DEBUG: columns = df.columns[idx:idx + num_attrs].values else: columns = df.columns[idx + num_attrs:idx + 2 * num_attrs].values if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') if not DEBUG: file_ = gezi.strip_suffix(file_, '.debug') print('temp csv using for write', file_) df = pd.read_csv(file_) else: print('debug test using file', valid_files[-1]) df = pd.read_csv(valid_files[-1]) # for safe must sort id df = df.sort_values('id') # TODO better ? not using loop ? for i, column in enumerate(columns): df[column] = predicts[:, i] if DEBUG: print('check blend result', calc_f1(df.iloc[:, idx:idx + num_attrs].values, predicts)) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') print('out:', ofile) if not DEBUG: df.to_csv(ofile, index=False, encoding="utf_8_sig") print('---------------results', results.shape) df['score'] = [x for x in results] factor = FLAGS.logits_factor / sum_weights #print('--------sum_weights', sum_weights) #print('--------factor', factor) logits = np.reshape(results, [-1, num_attrs, num_classes]) # DO NOT USE *=... will change results... logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights logits = np.reshape(logits, [-1, num_attrs * num_classes]) print('---------------logits', logits.shape) print('----results', results) print('----logits', logits) df['logit'] = [x for x in logits] probs = np.reshape(probs, [-1, num_attrs * num_classes]) print('---------------probs', probs.shape) df['prob'] = [x for x in probs] if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.debug.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') print('out debug:', ofile) df.to_csv(ofile, index=False, encoding="utf_8_sig") if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/ensemble.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:0num_classes:21.026718 # \Description ensemble by OOF score blend per attribute # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('debug', False, '') flags.DEFINE_string('method', 'blend', '') flags.DEFINE_string('idir', '.', '') flags.DEFINE_float('norm_factor', 0.0001, 'attr weights used norm factor') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_float('thre', 0.6, '') flags.DEFINE_string('weight_by', 'adjusted_f1', '') flags.DEFINE_integer('num_grids', 10, '10') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score, log_loss, roc_auc_score from sklearn.preprocessing import minmax_scale import gezi from tqdm import tqdm import math from scipy.stats import rankdata DEBUG = 0 idir = '.' ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] CLASSES = ['na', 'neg', 'neu', 'pos'] num_attrs = len(ATTRIBUTES) NUM_ATTRIBUTES = num_attrs num_classes = 4 NUM_CLASSES = num_classes num_ensembles = 0 def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def calc_f1(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) #f1_scores[i].append(f1) f1 = np.mean(f1_list) return f1 def calc_f1s(labels, predicts): f1_list = [] for i in range(num_attrs): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) return np.array(f1_list) def calc_loss(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.mean(losses) def calc_losses(labels, predicts): losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) return np.array(losses) def calc_aucs(labels, predicts): aucs_list = [] for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) return np.array(aucs_list) def calc_f1_alls(labels, predicts): f1_list = [] class_f1 = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): scores = f1_score(labels[:,i], predicts[:,i], average=None) class_f1 += scores f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES return f1, f1_list, class_f1 class_weights_path = './class_weights.npy' if not os.path.exists(class_weights_path): class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' # class_weights is per class(na, neg, neu, pos) weight class_weights = np.load(class_weights_path) #print('class_weights', class_weights) if FLAGS.adjust: for i in range(len(class_weights)): for j in range(4): #class_weights[i][j] = math.log(class_weights[i][j]) #class_weights[i] = gezi.softmax(class_weights[i]) #class_weights[i][j] += math.sqrt(class_weights[i][j]) #class_weights[i][j] += 0. #class_weights[i][j] = math.sqrt(class_weights[i][j]) x = class_weights[i][j] # If using prob adjust just set x for logits seems x^3 better #class_weights[i][j] = x # well this make single model adjusted f1 improve by adding 100... #class_weights[i][j] = x * x * x + 100 class_weights[i][j] = x * x * x #if FLAGS.more_adjust: # #this has been tested to be effective as for both fold 0 and 1 and different model combinations # class_weights[1][-2] = class_weights[1][-2] * 1.2 # class_weights[-2][0] = class_weights[-2][0] * 1.2 if FLAGS.more_adjust: #this has been tested to be effective as for both fold 0 and 1 and different model combinations # pow(1.2, 22) 55.2061438912436 class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 22) ## 22.63 #x = pow(1.2, 18) ## * 22644.802257413307 #class_weights[-2][0] = class_weights[-2][0] * x * x * x * 1.2 class_weights[-2][0] = class_weights[-2][0] * 60000 # for i in range(len(class_weights)): # for j in range(4): # class_weights[i][j] /= np.sum(class_weights[i]) #class_weights = gezi.softmax(class_weights) else: class_weights = np.ones_like(class_weights) print('class_weights', class_weights) def to_predict(logits, weights=None, is_single=False, adjust=True): logits = np.reshape(logits, [-1, num_attrs, num_classes]) ## DO NOT divde !! if is_single: factor = FLAGS.logits_factor else: if weights is None: factor = 1. else: factor = FLAGS.logits_factor / weights #print('factor:', factor) if adjust and FLAGS.adjust or FLAGS.num_grids: logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights else: probs = logits probs = np.reshape(probs, [-1, num_classes]) result = np.zeros([len(probs)], dtype=int) for i, prob in enumerate(probs): # # TODO try to calibrate to 0.5 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # this can also improve but not as good as per attr class weights adjust, can get 7183 # TODO class_weights right now still not the best! #prob[0] *= 0.4 result[i] = np.argmax(prob) - 2 result = np.reshape(result, [-1, num_attrs]) return result def blend_weights(weights, norm_facotr): for i in range(num_attrs): #weights[:, i] = minmax_scale(weights[:, i]) ws = weights[:, i] #min_ws = np.min(ws) #max_ws = np.max(ws) #gap = max_ws - min_ws #if gap > 0: # for j in range(len(weights)): # weights[j][i] = ((weights[j][i] - min_ws) / gap) + norm_facotr ranked = rankdata(ws) sum_rank = np.sum(ranked) for j in range(len(weights)): weights[j][i] = ranked[j] / sum_rank def get_counts(probs): predicts = np.argmax(probs, 1) counts = np.zeros(4) for predict in predicts: counts[predict] += 1 return counts def adjust_probs(probs, labels): f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) probs[:, 1][-2] *= 10 f1 = f1_score(labels[:, 1] + 2, np.argmax(probs[:, 1], 1), average='macro') print('location_distance_from_business_district', f1) f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) probs[:, -2][0] *= 100000 f1 = f1_score(labels[:, -2] + 2, np.argmax(probs[:, -2], 1), average='macro') print('thers_overall_experience', f1) # TODO FIXME pymp not work class factors seems not locked... import pymp #class_factors = pymp.shared.array((num_attrs, num_classes), dtype='float') + 1. # class factors is per class dynamic adjust for class weights from multiprocessing import Manager def grid_search_class_factors(probs, labels, weights, num_grids=10): manager = Manager() class_factors_dict = manager.dict() with pymp.Parallel(12) as p: for i in tqdm(p.range(num_attrs), ascii=True): #for i in p.range(num_attrs): #p.print(i, ATTRIBUTES[i]) #p.print('init counts:', get_counts(probs[:, i])) index = np.argsort(-np.array(weights[i])) def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,1 + num_grids), ascii=True): #for a in(range(1,1 + num_grids)): for b in range(1,1 + num_grids): for c in range(1,1 + num_grids): for d in range(1,1 + num_grids): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights[i] if not is_ok(factor2): continue preds = probs[:, i] * factor2 f1 = f1_score(labels[:, i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: #p.print('\n', ATTRIBUTES[i], factor, factor2, f1) best = f1 #class_factors[i] = factor class_factors_dict[i] = factor #p.print('counts:', get_counts(probs[:, i] * factor)) #p.print('class_factors', i, class_factors_dict[i]) class_factors = np.ones([num_attrs, num_classes]) for i in range(num_attrs): class_factors[i] = class_factors_dict[i] return class_factors def main(_): print('METHOD:', FLAGS.method) print('Norm factor:', FLAGS.norm_factor) # if FLAGS.num_grids: # FLAGS.debug = False DEBUG = FLAGS.debug idir = FLAGS.idir # first id, sencod content .. idx = 2 # logits sum results results = None # prob sum results results2 = None valid_files = glob.glob(f'{idir}/*.valid.csv') valid_files = [x for x in valid_files if not 'ensemble' in x] if not DEBUG: print('VALID then INFER') infer_files = glob.glob(f'{idir}/*.infer.csv.debug') else: print('Debug mode INFER ill write result using valid ids, just for test') infer_files = glob.glob(f'{idir}/*.valid.csv') infer_files = [x for x in infer_files if not 'ensemble' in x] print('num_ensembles', len(valid_files)) print('num_infers', len(infer_files)) if not FLAGS.debug: assert len(valid_files) == len(infer_files), infer_files global num_ensembles num_ensembles = len(valid_files) # need global ? even only read? global class_weights #print('-----------', class_weights) # weights is for per model weight weights = [] scores_list = [] valid_files_ = [] for fid, file_ in enumerate(valid_files): df = pd.read_csv(file_) df= df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) scores_list.append(scores) #f1 = calc_f1(labels, predicts) #f1 = calc_f1(labels, to_predict(scores)) #f1s = calc_f1s(labels, predicts) ## to_predict better # f1_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.npy' # f1_adjusted_file = gezi.strip_suffix(file_, '.valid.csv') + '.f1s.adjust.npy' # if not os.path.exists(f1_file): f1s = calc_f1s(labels, predicts) f1s_adjusted = calc_f1s(labels, to_predict(scores, is_single=True)) probs = gezi.softmax(scores.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES])) aucs = calc_aucs(labels + 2, probs) losses = calc_losses(labels + 2, probs) # np.save(f1_file, f1s) # np.save(f1_adjusted_file, f1s_adjusted) # else: # f1s = np.load(f1_file) # f1s_adjusted = np.load(f1_adjusted_file) f1 = np.mean(f1s) f1_adjusted = np.mean(f1s_adjusted) print(fid, file_, f1, f1_adjusted, np.mean(aucs), np.mean(losses)) if f1_adjusted < FLAGS.thre: print('ignore', file_) continue else: valid_files_.append(file_) # NOTICE weighted can get 7186 while avg only 716 # and using original f1s score higher #weight = np.reshape(f1s, [num_attrs, 1]) #weight = np.reshape(f1s_adjusted, [num_attrs, 1]) #weight = np.reshape(aucs, [num_attrs, 1]) if FLAGS.weight_by == 'loss': weight = np.reshape(1 / losses, [num_attrs, 1]) elif FLAGS.weight_by == 'auc': weight = np.reshape(aucs, [num_attrs, 1]) else: weight = np.reshape(f1s_adjusted, [num_attrs, 1]) weights.append(weight) weights = np.array(weights) scores_list = np.array(scores_list) blend_weights(weights, FLAGS.norm_factor) # if DEBUG: # print(weights) valid_files = valid_files_ print('final num valid files', len(valid_files)) for fid in tqdm(range(len(valid_files)), ascii=True): scores = scores_list[fid] if results is None: results = np.zeros([len(scores), num_attrs * num_classes]) results2 = np.zeros([len(scores), num_attrs * num_classes]) weight = weights[fid] if FLAGS.method == 'avg' or FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(score, [num_attrs, num_classes]) * weight score = np.reshape(score, [-1]) results[i] += score # notice softmax([1,2]) = [0.26894142, 0.73105858] softmax([2,4]) = [0.11920292, 0.88079708] score = np.reshape(score, [num_attrs, num_classes]) # this not work because *weight already.. #score *= FLAGS.logits_factor score = gezi.softmax(score, -1) #score *= class_weights score = np.reshape(score, [-1]) results2[i] += score sum_weights = np.sum(weights, 0) adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) predicts = np.argmax(results, -1) - 2 f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') print('f1:', f1) print('adjusted f1:', adjusted_f1) adjusted_f1_prob = calc_f1(labels, to_predict(results2, sum_weights, adjust=False)) results2 = np.reshape(results2, [-1, num_attrs, num_classes]) predicts2 = np.argmax(results2, -1) - 2 f1_prob = calc_f1(labels, predicts2) print('-----------using prob ensemble') print('f1_prob:', f1_prob) print('adjusted f1_prob:', adjusted_f1_prob) print('-----------detailed f1 infos (ensemble by prob)') _, adjusted_f1_probs, class_f1s = calc_f1_alls(labels, to_predict(results2, sum_weights, adjust=False)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1_probs[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') loss = calc_loss(labels, gezi.softmax(results.reshape([-1, NUM_ATTRIBUTES, NUM_CLASSES]))) print(f'loss:[{loss}]') class_factors = np.ones([num_attrs, num_classes]) if FLAGS.num_grids: class_factors = grid_search_class_factors(gezi.softmax(np.reshape(results, [-1, num_attrs, num_classes]) * (FLAGS.logits_factor / sum_weights)), labels, class_weights, num_grids=FLAGS.num_grids) print('class_factors') print(class_factors) # adjust class weights to get better result from grid search class_weights = class_weights * class_factors print('after dynamic adjust class factors') adjusted_f1 = calc_f1(labels, to_predict(results, sum_weights)) results = np.reshape(results, [-1, num_attrs, num_classes]) #predicts = np.argmax(results, -1) - 2 #f1 = calc_f1(labels, predicts) print('-----------using logits ensemble') #print('f1:', f1) print('adjusted f1:', adjusted_f1) print('-----------detailed f1 infos (ensemble by logits)') _, adjusted_f1s, class_f1s = calc_f1_alls(labels, to_predict(results, sum_weights)) for i, attr in enumerate(ATTRIBUTES): print(attr, adjusted_f1s[i]) for i, cls in enumerate(CLASSES): print(cls, class_f1s[i]) # print(f'adjusted f1_prob:[{adjusted_f1_prob}]') # print(f'adjusted f1:[{adjusted_f1}]') #-------------infer print('------------infer') ofile = os.path.join(idir, 'ensemble.infer.csv') file_ = gezi.strip_suffix(file_, '.debug') df = pd.read_csv(file_) idx = 2 results = None results2 = None for fid, file_ in enumerate(infer_files): df = pd.read_csv(file_) df = df.sort_values('id') print(fid, file_, len(df)) if not FLAGS.debug: assert len(df) == 200000 if results is None: results = np.zeros([len(df), num_attrs * num_classes]) results2 = np.zeros([len(df), num_attrs * num_classes]) scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) weight = weights[fid] if FLAGS.method == 'avg' and FLAGS.method == 'mean': weight = 1. for i, score in enumerate(scores): score = np.reshape(np.reshape(score, [num_attrs, num_classes]) * weight, [-1]) results[i] += score score = gezi.softmax(np.reshape(score, [num_attrs, num_classes]), -1) score = np.reshape(score, [-1]) results2[i] += score #predicts = to_predict(results2, sum_weights) predicts = to_predict(results, sum_weights) if not DEBUG: columns = df.columns[idx:idx + num_attrs].values else: columns = df.columns[idx + num_attrs:idx + 2 * num_attrs].values if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') if not DEBUG: file_ = gezi.strip_suffix(file_, '.debug') print('temp csv using for write', file_) df = pd.read_csv(file_) else: print('debug test using file', valid_files[-1]) df = pd.read_csv(valid_files[-1]) # for safe must sort id df = df.sort_values('id') # TODO better ? not using loop ? for i, column in enumerate(columns): df[column] = predicts[:, i] if DEBUG: print('check blend result', calc_f1(df.iloc[:, idx:idx + num_attrs].values, predicts)) print(f'adjusted f1_prob:[{adjusted_f1_prob}]') print(f'adjusted f1:[{adjusted_f1}]') print(f'loss:[{loss}]') print('out:', ofile) if not DEBUG: df.to_csv(ofile, index=False, encoding="utf_8_sig") print('---------------results', results.shape) df['score'] = [x for x in results] factor = FLAGS.logits_factor / sum_weights #print('--------sum_weights', sum_weights) #print('--------factor', factor) logits = np.reshape(results, [-1, num_attrs, num_classes]) # DO NOT USE *=... will change results... logits = logits * factor probs = gezi.softmax(logits, -1) probs *= class_weights logits = np.reshape(logits, [-1, num_attrs * num_classes]) print('---------------logits', logits.shape) print('----results', results) print('----logits', logits) #df['logit'] = [x for x in logits] probs = np.reshape(probs, [-1, num_attrs * num_classes]) print('---------------probs', probs.shape) #df['prob'] = [x for x in probs] if not DEBUG: ofile = os.path.join(idir, 'ensemble.infer.debug.csv') else: ofile = os.path.join(idir, 'ensemble.valid.csv') print('out debug:', ofile) df.to_csv(ofile, index=False, encoding="utf_8_sig") if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/ensemble/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-09-15 19:12:03.819848 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np from sklearn.metrics import f1_score df = pd.read_csv(sys.argv[1]) ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] idx = 2 length = 20 labels = df.iloc[:,idx:idx+length].values predicts = df.iloc[:,idx+length:idx+2*length].values f1_list = [] for i in range(length): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) f1 = np.mean(f1_list) for i, attr in enumerate(ATTRIBUTES): print(attr, f1_list[i]) print('f1:', f1) ================================================ FILE: projects/ai2018/sentiment/ensemble/gen-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score #from sklearn.preprocessing import minmax_scale import gezi idir = sys.argv[1] ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) def parse(l): return np.array([float(x.strip()) for x in l[1:-1].split(',')]) idx = 2 results = None df_result = pd.DataFrame() for fid, file_ in enumerate(glob.glob('%s/*.valid.csv' % idir)): print(file_) df = pd.read_csv(file_, sep=',') df.sort_index(0, inplace=True) labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] scores = [parse(score) for score in scores] scores = np.array(scores) ids = df.iloc[:,0].values cname = '.'.join(os.path.basename(file_).split('.')[:-2]) cnames = [cname + '_' + str(x) for x in range(num_attrs)] if fid == 0: df_result['id'] = ids for i, label in enumerate(df.columns.values[idx:idx+num_attrs]): df_result[label] = labels[:,i] #df.loc[df.columns.values[idx:idx+num_attrs]] = labels #df_result[cnames] = scores for i, name in enumerate(cnames): #print(i, name) df_result[name] = scores[:,i] df_result.to_csv(f'{idir}/result.csv', index=False) ================================================ FILE: projects/ai2018/sentiment/ensemble/hillclimb-ensembling.py ================================================ import pandas as pd import numpy as np import os from sklearn.metrics import roc_auc_score from sklearn.preprocessing import minmax_scale """ Initializes an empty ensemble """ def init_hillclimb(): best_ensemble = {} for label in LABELS: best_ensemble[label] = [] best_score = {} for label in LABELS: best_score[label] = 0 return best_ensemble, best_score """ Scores average AUC for an ensemble per label """ def score_ensemble(ensemble, label): blend_preds = np.zeros(len(train)) for model in ensemble: blend_preds += minmax_scale(files[model][label]) blend_preds = blend_preds/len(subnums) score = roc_auc_score(train[label], blend_preds) return score """ Finds the optimal model to add next to an ensemble """ def find_best_improvement(ensemble, label): best_score = 0 best_ensemble = [] for i in range(0,len(files)): ensemble = ensemble + [i] score = score_ensemble(ensemble, label) if score > best_score: best_score = score best_ensemble = ensemble ensemble = ensemble[:-1] return best_ensemble, best_score """ Performs a step for each label """ def climb(best_ensemble, best_score): for label in LABELS: best_ensemble[label], best_score[label] = find_best_improvement(best_ensemble[label], label) return best_ensemble, best_score """ Gets optimal blending weights after hillclimb """ def get_optimal_weights(best_ensemble): weights = {} for label in LABELS: weights[label] = {} for num in set(best_ensemble[label]): weights[label][num] = best_ensemble[label].count(num)/len(best_ensemble[label]) return weights """ Constructs a pandas dataframe using the optimal blending weights """ def get_optimal_blend(optimal_weights): sub = pd.read_csv(os.path.join(DATA_PATH, "sample_submission.csv")) blend = sub.copy() for label in LABELS: print(label) for key in optimal_weights[label]: blend[label] += optimal_weights[label][key] * minmax_scale(get_sub_file(key)[label]) print(optimal_weights[label][key], filenames[key]) blend[label] = minmax_scale(blend[label]) return blend def get_sub_file(num): filename = filenames[num] filename = filename.replace("oof", "sub") return pd.read_csv(os.path.join(SUB_PATH, filename)) if __name__ == "__main__": DATA_PATH = "../input/jigsaw-toxic-comment-classification-challenge/" SUB_PATH = "../input/oofmodels/trained-models/" train = pd.read_csv(os.path.join(DATA_PATH, "train.csv")).fillna(' ') test = pd.read_csv(os.path.join(DATA_PATH, "test.csv")).fillna(' ') LABELS = train.columns[2:] # Get submissions and out-of-fold predictions subnums = [29,51,52] filenames = ["oof" + str(num) + ".csv" for num in subnums] files = [pd.read_csv(os.path.join(SUB_PATH, filename)) for filename in filenames] best_ensemble, best_score = init_hillclimb() # Run hillclimb for i in range(25): print("-------------") print("Step", i) best_ensemble, best_score = climb(best_ensemble, best_score) print("Best ensemble:") print(best_ensemble) print("Best score:") print(best_score) print("AUC:", np.mean([best_score[label] for label in LABELS])) # Get optimal weights opt_w = get_optimal_weights(best_ensemble) print("Optimal weights:") print(opt_w) # Construct the blend blend = get_optimal_blend(opt_w) # Submit blend.to_csv("hillclimb.csv", index=False) ================================================ FILE: projects/ai2018/sentiment/ensemble/lgb-adjust.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description now work well, worse then mean... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score #from sklearn.preprocessing import minmax_scale import gezi import matplotlib.pyplot as plt import lightgbm as lgb from sklearn.metrics import f1_score from tqdm import tqdm from sklearn.model_selection import train_test_split from sklearn.model_selection import KFold ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) num_classes = 4 attr = 'others_willing_to_consume_again' attr = 'others_overall_experience' attr = 'location_distance_from_business_district' def parse(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) idx = 2 results = None df2 = pd.DataFrame() file_ = './ensemble.valid.debug.csv' print(file_) df = pd.read_csv(file_, sep=',') df.sort_index(0, inplace=True) labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values scores = df['score'] #scores = df['logit'] #scores = df['prob'] scores = [parse(score) for score in scores] scores = np.array(scores) ids = df.iloc[:,0].values df2['id'] = ids for i, label in enumerate(df.columns.values[idx:idx+num_attrs]): df2[label] = labels[:,i] scores = np.reshape(scores, [-1, num_attrs, num_classes]) for i, name in enumerate(ATTRIBUTES): #if name.startswith('others_willing_to_consume_again_'): if name.startswith(attr): for j in range(num_classes): df2[f'{name}_{j}'] = scores[:, i, j] #print(df2) i = ATTRIBUTES.index(attr) idx = 1 x = df2.iloc[:,idx+num_attrs:].values steps = range(10) probs = gezi.softmax(x * 10) weights = np.load('./mount/temp/ai2018/sentiment/class_weights.npy') weights = weights[i] weights = (weights * weights * weights) index = np.argsort(-weights) print(weights) print(index) kf = KFold(n_splits=2, shuffle=True) kf.get_n_splits(x) from sklearn.model_selection import train_test_split from sklearn.model_selection import KFold for fold, (train_index, valid_index) in enumerate(kf.split(x)): print('--------------------FOLD', fold, "TRAIN:", train_index, "valid:", valid_index) labels_train = labels[train_index] probs_train = probs[train_index] labels_valid = labels[valid_index] probs_valid = probs[valid_index] def is_ok(factor): return np.sum(np.argsort(-factor) == index) == 4 best = 0 for a in tqdm(range(1,11), ascii=True): for b in range(1,11): for c in range(1,11): for d in range(1,11): factor = np.array([a, b, c, d], dtype=np.float) factor2 = factor * weights if not is_ok(factor2): continue preds = probs_train * factor2 f1 = f1_score(labels_train[:,i] + 2, np.argmax(preds, 1), average='macro') if f1 > best: print(factor, factor2, f1) best = f1 best_factor = factor preds = probs_valid * factor2 print('valid', f1_score(labels_valid[:,i] + 2, np.argmax(preds, 1), average='macro')) print(fold, attr) print('best_factor', best_factor) print('best', best) ================================================ FILE: projects/ai2018/sentiment/ensemble/lgb-cv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description now work well, worse then mean... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score #from sklearn.preprocessing import minmax_scale import gezi import matplotlib.pyplot as plt import lightgbm as lgb from tqdm import tqdm from sklearn.metrics import f1_score ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) num_classes = 4 idx = 2 results = None df2 = pd.DataFrame() idf2 = pd.DataFrame() valid_file = './ensemble.valid.csv' infer_file = './ensemble.infer.debug.csv' idf = pd.read_csv(infer_file) idf = idf.sort_values('id') iscores = idf['logit'] iscores = [gezi.str2scores(score) for score in iscores] # iscores2 = [] # for score in iscores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # iscores2.append(score) # iscores = iscores2 iscores = np.array(iscores) print(valid_file) df = pd.read_csv(valid_file, sep=',') df = df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values #scores = df['score'] scores = df['logit'] #scores = df['prob'] scores = [gezi.str2scores(score) for score in scores] # scores2 = [] # for score in scores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # scores2.append(score) # scores = scores2 scores = np.array(scores) ids = df.iloc[:,0].values cnames = [] for attr in ATTRIBUTES: for i in range(4): cnames.append(f'{attr}_{i}') print('---------', cnames) df2['id'] = ids idf2['id'] = ids for i, label in enumerate(df.columns.values[idx:idx+num_attrs]): df2[label] = labels[:,i] for i, name in enumerate(cnames): df2[name] = scores[:,i] idf2[name] = iscores[:, i] print("Light Gradient Boosting Classifier: ") params = { 'boosting_type': 'gbdt', 'objective': 'multiclass', 'num_class': num_classes, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'verbose': -1, 'metric': ['multi_logloss'], "learning_rate": 0.2, "max_depth": 5, "num_leaves": 10, "reg_lambda": 0.1, "num_trees": 500, "min_data_in_leaf": 100, } clf = lgb.LGBMClassifier(max_depth=-1, learning_rate=0.05, objective='multiclass', random_state=314, silent=True, metric='None', n_jobs=4, n_estimators=5000, class_weight='balanced') from sklearn.model_selection import train_test_split from sklearn.model_selection import KFold from sklearn.metrics import f1_score def evaluate_macroF1_lgb(truth, predictions): # this follows the discussion in https://github.com/Microsoft/LightGBM/issues/1483 pred_labels = predictions.reshape(len(np.unique(truth)),-1).argmax(axis=0) f1 = f1_score(truth, pred_labels, average='macro') return ('macroF1', f1, True) import lightgbm as lgb def learning_rate_power_0997(current_iter): base_learning_rate = 0.1 min_learning_rate = 0.02 lr = base_learning_rate * np.power(.995, current_iter) return max(lr, min_learning_rate) # attr = 'others_willing_to_consume_again' # attr = 'others_overall_experience' # i = ATTRIBUTES.index(attr) for i, attr in tqdm(enumerate(ATTRIBUTES), ascii=True): index = 1 + num_attrs + i * 4 index2 = 1 + i * 4 X_ = df2.iloc[:, index: index + 4] iX_ = idf2.iloc[:, index2: index2 + 4] f1_list = [] K = 8 y = df2[attr + '_y'] + 2 ix_ = iX_.values X = X_.values y = y.values kf = KFold(n_splits=K) kf.get_n_splits(X) preds = [] ipreds = [] ys = [] for fold, (train_index, valid_index) in enumerate(kf.split(X)): print(f'{i}:{attr} FOLD:{fold}') X_train, X_valid = X[train_index], X[valid_index] y_train, y_valid = y[train_index], y[valid_index] ys.append(y_valid) #print(X_train.shape, y_train.shape) fit_params={"early_stopping_rounds":300, "eval_metric" : evaluate_macroF1_lgb, "eval_set" : [(X_valid,y_valid)], 'eval_names': ['valid'], #'callbacks': [lgb.reset_parameter(learning_rate=learning_rate_010_decay_power_099)], 'verbose': False, 'categorical_feature': 'auto'} fit_params['callbacks'] = [lgb.reset_parameter(learning_rate=learning_rate_power_0997)] opt_parameters = { #'colsample_bytree': 0.9221304051471293, 'min_child_samples': 150, 'num_leaves': 2, #'subsample': 0.9510118790770111, 'class_weight': 'balanced', 'lambda_l1': 1.79, 'lambda_l2': 1.71, 'num_trees': 2000 } #clf_final = lgb.LGBMClassifier(**clf.get_params()) #clf_final.set_params(**opt_parameters) clf_final = lgb.LGBMClassifier(bagging_fraction=0.9957236684465528, boosting_type='gbdt', class_weight='balanced', colsample_bytree=0.7953949538181928, feature_fraction=0.7333800304661316, lambda_l1=1.79753950286893, lambda_l2=1.710590311253639, learning_rate=0.2, max_depth=6, metric='None', min_child_samples=48, min_child_weight=48.94067592560281, min_split_gain=0.016737988780906453, n_estimators=5000, n_jobs=4, num_leaves=34, objective='multiclass', random_state=None, reg_alpha=0.0, reg_lambda=0.0, silent=True, subsample=0.9033449610388691, subsample_for_bin=200000, subsample_freq=1) clf_final.set_params(**opt_parameters) def learning_rate_power_0997(current_iter): base_learning_rate = 0.1 min_learning_rate = 0.02 lr = base_learning_rate * np.power(.997, current_iter) return max(lr, min_learning_rate) #Train the final model with learning rate decay fit_params['verbose'] = 200 _ = clf_final.fit(X_train, y_train, **fit_params) preds.append(clf_final.predict(X_valid)) preds = np.concatenate(preds) y = np.concatenate(ys) df[attr] = np.array(preds) - 2 ipreds = clf_final.predict(iX_) idf[attr] = np.array(ipreds) - 2 df.to_csv('ensemble.valid.lgb.csv', index=False) idf.to_csv('ensemble.infer.lgb.csv', index=False) # attr = 'others_overall_experience' # #f1 = f1_score(labels[:,i] + 2, preds, average='macro') # f1 = f1_score(y, preds, average='macro') # f1_list.append(f1) # print(attr, f1) # f1 = np.mean(f1_list) # for i, attr in enumerate(ATTRIBUTES): # print(attr, f1_list[i]) # print('f1:', f1) ================================================ FILE: projects/ai2018/sentiment/ensemble/lr-cv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ensemble.py # \author chenghuige # \date 2018-09-15 19:04:21.026718 # \Description now work well, worse then mean... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import pandas as pd import numpy as np from sklearn.metrics import f1_score #from sklearn.preprocessing import minmax_scale import gezi import matplotlib.pyplot as plt import lightgbm as lgb from tqdm import tqdm from sklearn.metrics import f1_score from sklearn.ensemble import RandomForestClassifier from sklearn.calibration import CalibratedClassifierCV from sklearn.metrics import log_loss ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] num_attrs = len(ATTRIBUTES) num_classes = 4 idx = 2 results = None df2 = pd.DataFrame() idf2 = pd.DataFrame() valid_file = './ensemble.valid.csv' infer_file = './ensemble.infer.debug.csv' # idf = pd.read_csv(infer_file) # idf = idf.sort_values('id') #iscores = idf['logit'] #iscores = [gezi.str2scores(score) for score in iscores] # iscores2 = [] # for score in iscores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # iscores2.append(score) # iscores = iscores2 iscores = np.array(iscores) print(valid_file) df = pd.read_csv(valid_file, sep=',') df = df.sort_values('id') labels = df.iloc[:,idx:idx+num_attrs].values predicts = df.iloc[:,idx+num_attrs:idx+2*num_attrs].values #scores = df['score'] scores = df['logit'] #scores = df['prob'] scores = [gezi.str2scores(score) for score in scores] # scores2 = [] # for score in scores: # score = gezi.softmax(np.reshape(score, [num_attrs, 4]), -1) # score = np.reshape(score, [-1]) # scores2.append(score) # scores = scores2 scores = np.array(scores) ids = df.iloc[:,0].values cnames = [] for attr in ATTRIBUTES: for i in range(4): cnames.append(f'{attr}_{i}') print('---------', cnames) df2['id'] = ids #idf2['id'] = ids for i, label in enumerate(df.columns.values[idx:idx+num_attrs]): df2[label] = labels[:,i] for i, name in enumerate(cnames): df2[name] = scores[:,i] #idf2[name] = iscores[:, i] for i, attr in tqdm(enumerate(ATTRIBUTES), ascii=True): index = 1 + num_attrs + i * 4 index2 = 1 + i * 4 X_ = df2.iloc[:, index: index + 4] #iX_ = idf2.iloc[:, index2: index2 + 4] f1_list = [] K = 5 y = df2[attr + '_y'] + 2 #ix_ = iX_.values X = X_.values y = y.values kf = KFold(n_splits=K) kf.get_n_splits(X) preds = [] ipreds = [] ys = [] for fold, (train_index, test_index) in enumerate(kf.split(X)): print(f'{i}:{attr} FOLD:{fold}') X_train, X_valid, X_test = X[train_index[:-3000]], X[train_index[-3000:]], X[test_index] y_train, y_valid y_test = y[train_index[:-3000]], y[train_index[-3000:]], y[test_index] ys.append(y_test) # Train uncalibrated random forest classifier on whole train and validation # data and evaluate on test data clf = RandomForestClassifier(n_estimators=25) clf.fit(np.concatenate([X_train, X_valid], 0), np.concatenate([y_train, y_valid], 0)) clf_probs = clf.predict_proba(X_test) score = log_loss(y_test, clf_probs) # Train random forest classifier, calibrate on validation data and evaluate # on test data clf = RandomForestClassifier(n_estimators=25) clf.fit(X_train, y_train) clf_probs = clf.predict_proba(X_test) sig_clf = CalibratedClassifierCV(clf, method="sigmoid", cv="prefit") sig_clf.fit(X_valid, y_valid) sig_clf_probs = sig_clf.predict_proba(X_test) sig_score = log_loss(y_test, sig_clf_probs) preds.append(clf_final.predict(X_test)) preds = np.concatenate(preds) y = np.concatenate(ys) df[attr] = np.array(preds) - 2 #ipreds = clf_final.predict(iX_) #idf[attr] = np.array(ipreds) - 2 df.to_csv('ensemble.valid.calibrate.csv', index=False) #idf.to_csv('ensemble.infer.calibrate.csv', index=False) ================================================ FILE: projects/ai2018/sentiment/evaluate.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('info_path', None, '') flags.DEFINE_bool('auc_need_softmax', True, '') flags.DEFINE_string('class_weights_path', './mount/temp/ai2018/sentiment/class_weights.npy', '') flags.DEFINE_float('logits_factor', 10, '10 7239 9 7245 but test set 72589 and 72532 so.. a bit dangerous') flags.DEFINE_bool('show_detail', False, '') flags.DEFINE_string('i', '.', '') flags.DEFINE_string('metric_name', 'adjusted_f1/mean', '') flags.DEFINE_float('min_thre', 0., '0.705') flags.DEFINE_integer('len_thre', 256, '') flags.DEFINE_float('max_thre', 1000., '') flags.DEFINE_bool('adjust', True, '') flags.DEFINE_bool('more_adjust', True, '') #from sklearn.utils.extmath import softmax from sklearn.metrics import f1_score, log_loss, roc_auc_score from melt.utils.weight_decay import WeightDecay, WeightsDecay import numpy as np import glob import gezi import melt logging = melt.logging from wenzheng.utils import ids2text #from projects.ai2018.sentiment.algos.config import ATTRIBUTES, NUM_ATTRIBUTES, NUM_CLASSES, CLASSES from algos.config import ATTRIBUTES, NUM_ATTRIBUTES, NUM_CLASSES, CLASSES import pickle import pandas as pd import traceback #since we have same ids... must use valid and test 2 infos valid_infos = {} test_infos = {} decay = None wnames = [] classes = ['0na', '1neg', '2neu', '3pos'] num_classes = len(classes) class_weights = None def load_class_weights(): global class_weights if class_weights is None: if FLAGS.adjust: if not os.path.exists(FLAGS.class_weights_path): FLAGS.class_weights_path = '/home/gezi/temp/ai2018/sentiment/class_weights.npy' if not os.path.exists(FLAGS.class_weights_path): FLAGS.class_weights_path = './class_weights.npy' class_weights = np.load(FLAGS.class_weights_path) for i in range(len(class_weights)): for j in range(num_classes): x = class_weights[i][j] class_weights[i][j] = x * x * x if FLAGS.more_adjust: class_weights[1][-2] = class_weights[1][-2] * pow(1.2, 22) class_weights[-2][0] = class_weights[-2][0] * 60000 else: class_weights = np.ones([NUM_ATTRIBUTES, NUM_CLASSES]) return class_weights def init(): global valid_infos, test_infos global wnames load_class_weights() with open(FLAGS.info_path, 'rb') as f: valid_infos = pickle.load(f) if FLAGS.test_input: with open(FLAGS.info_path.replace('.pkl', '.test.pkl'), 'rb') as f: test_infos = pickle.load(f) ids2text.init() #min_learning_rate = 1e-5 min_learning_rate = FLAGS.min_learning_rate if FLAGS.decay_target: global decay decay_target = FLAGS.decay_target cmp = 'less' if decay_target == 'loss' else 'greater' if FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: for attr in ATTRIBUTES: for j, cs in enumerate(CLASSES): wnames.append(f'{attr}_{j}{cs}') elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: wnames = ATTRIBUTES if not decay: logging.info('Weight decay target:', decay_target) if FLAGS.num_learning_rate_weights <= 1: decay = WeightDecay(patience=FLAGS.decay_patience, decay=FLAGS.decay_factor, cmp=cmp, decay_start_epoch=FLAGS.decay_start_epoch_, min_learning_rate=min_learning_rate) else: decay = WeightsDecay(patience=FLAGS.decay_patience, decay=FLAGS.decay_factor, cmp=cmp, min_learning_rate=min_learning_rate, decay_start_epoch=FLAGS.decay_start_epoch_, names=wnames) # def to_predict(logits): # probs = gezi.softmax(logits, 1) # result = np.zeros([len(probs)], dtype=np.int32) # for i, prob in enumerate(probs): # # it can imporve but depends 0.6 or 0.7 or 0.8 ? # if prob[0] >= 0.6: # result[i] = -2 # else: # result[i] = np.argmax(prob[1:]) - 1 # return result def regression_to_class(predict): if predict > 7: return 3 elif predict > 5: return 2 elif predict > 3: return 1 else: return 0 def to_class(predicts, thre=0.5): if FLAGS.loss_type == 'hier': ## TODO even hier.. still not good below... # result = np.zeros([len(predicts)], dtype=np.int32) # for i, predict in enumerate(predicts): # na_prob = gezi.sigmoid(predict[0]) # if na_prob > thre: # result[i] = 0 # else: # result[i] = np.argmax(predict[1:]) + 1 # return result return np.argmax(predicts, -1) elif FLAGS.loss_type == 'regression': return np.array([regression_to_class(x) for x in predicts]) else: return np.argmax(predicts, -1) def calc_f1(labels, predicts, model_path=None, name = 'f1'): names = ['mean'] + ATTRIBUTES + classes num_classes = NUM_CLASSES if FLAGS.binary_class_index is None else 2 if FLAGS.binary_class_index is not None: names = ['mean'] + ATTRIBUTES + ['not', classes[FLAGS.binary_class_index]] names = [f'{name}/' + x for x in names] # TODO show all 20 * 4 ? not only show 20 f1 f1_list = [] class_f1 = np.zeros([num_classes]) all_f1 = [] for i in range(NUM_ATTRIBUTES): #f1 = f1_score(labels[:,i], np.argmax(predicts[:,i], 1) - 2, average='macro') # print(labels[:,i]) # print(predicts[:,i]) # print(len(labels[:,i])) # print(len(predicts[:,i])) scores = f1_score(labels[:,i], to_class(predicts[:,i]), average=None) # if FLAGS.binary_class_index is not None: # scores = [scores[1]] ## this will be a bit better imporve 0.001, I will just use when ensemble #scores = f1_score(labels[:,i], to_predict(predicts[:,i]), average=None) class_f1 += scores all_f1 += list(scores) f1 = np.mean(scores) f1_list.append(f1) f1 = np.mean(f1_list) class_f1 /= NUM_ATTRIBUTES vals = [f1] + f1_list + list(class_f1) if model_path is None: if FLAGS.decay_target and FLAGS.decay_target == name: if FLAGS.num_learning_rate_weights <= 1: target = f1 elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES * NUM_CLASSES: target = all_f1 elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: target = f1_list else: raise f'Unsupported weights number{FLAGS.num_learning_rate_weights}' weights = decay.add(target) if FLAGS.num_learning_rate_weights > 1: vals += list(weights) names += [f'weights/{name}' for name in wnames] return vals, names def calc_loss(labels, predicts, model_path=None): """ softmax loss, mean loss and per attr loss """ names = ['mean'] + ATTRIBUTES names = ['loss/' + x for x in names] losses = [] for i in range(NUM_ATTRIBUTES): loss = log_loss(labels[:,i], predicts[:,i]) losses.append(loss) loss = np.mean(losses) vals = [loss] + losses if model_path is None: if FLAGS.decay_target and FLAGS.decay_target == 'loss': if FLAGS.num_learning_rate_weights <= 1: target = loss elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: target = losses else: raise f'Unsupported weights number{FLAGS.num_learning_rate_weights}' weights = decay.add(target) if FLAGS.num_learning_rate_weights > 1: vals += list(weights) names += [f'weights/{name}' for name in wnames] return vals, names # TODO understand macro micro.. def calc_auc(labels, predicts, model_path=None): """ per attr auc """ names = ['mean'] + ATTRIBUTES + classes names = ['auc/' + x for x in names] aucs_list = [] class_aucs = np.zeros([num_classes]) for i in range(NUM_ATTRIBUTES): aucs = [] #print(np.sum(predicts[:,i], -1)) for j in range(NUM_CLASSES): auc = roc_auc_score((labels[:, i] == j).astype(int), predicts[:, i, j]) aucs.append(auc) auc = np.mean(aucs) aucs_list.append(auc) class_aucs += np.array(aucs) class_aucs /= NUM_ATTRIBUTES auc = np.mean(aucs_list) vals = [auc] + aucs_list + list(class_aucs) if model_path is None: if FLAGS.decay_target and FLAGS.decay_target == 'auc': if FLAGS.num_learning_rate_weights <= 1: target = auc elif FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: target = aucs_list else: raise f'Unsupported weights number{FLAGS.num_learning_rate_weights}' weights = decay.add(target) if FLAGS.num_learning_rate_weights > 1: vals += list(weights) names += [f'weights/{name}' for name in wnames] return vals, names def evaluate(labels, predicts, ids=None, model_path=None): # TODO here use softmax will cause problem... not correct.. for f1 probs = gezi.softmax(predicts) #adjusted_probs = gezi.softmax(predicts * FLAGS.logits_factor) * class_weights * [1, 4., 5., 1.] adjusted_probs = gezi.softmax(predicts * FLAGS.logits_factor) * class_weights mean_vals = [] mean_names = [] #vals, names = calc_f1(labels, predicts, model_path) vals, names = calc_f1(labels, probs, model_path) mean_vals.append(vals[0]) mean_names.append(names[0]) vals = vals[1:] names = names[1:] vals_adjusted, names_adjusted = calc_f1(labels, adjusted_probs, model_path, name='adjusted_f1') mean_vals.append(vals_adjusted[0]) mean_names.append(names_adjusted[0]) vals += vals_adjusted[1:] names += names_adjusted[1:] vals_loss, names_loss = calc_loss(labels, probs, model_path) mean_vals.append(vals_loss[0]) mean_names.append(names_loss[0]) vals += vals_loss[1:] names += names_loss[1:] probs = predicts if not FLAGS.auc_need_softmax else probs vals_auc, names_auc = calc_auc(labels, probs, model_path) mean_vals.append(vals_auc[0]) mean_names.append(names_auc[0]) vals += vals_auc[1:] names += names_auc[1:] vals = mean_vals + vals names = mean_names + names return vals, names valid_write = None infer_write = None def write(ids, labels, predicts, ofile, ofile2=None, is_infer=False): infos = valid_infos if not is_infer else test_infos df = pd.DataFrame() df['id'] = ids contents = [infos[id]['content_str'] for id in ids] df['content'] = contents if labels is not None: for i in range(len(ATTRIBUTES)): df[ATTRIBUTES[i] + '_y'] = labels[:,i] - 2 for i in range(len(ATTRIBUTES)): # nitice if na only then if -1 means predict na as finally should be -2 if FLAGS.loss_type == 'regression': df[ATTRIBUTES[i]] = predicts[:,i] else: df[ATTRIBUTES[i]] = np.argmax(predicts[:,i], 1) - 2 if is_infer: df2 = df.sort_values('id') df2.to_csv(ofile, index=False, encoding="utf_8_sig") num_classes = NUM_CLASSES if FLAGS.binary_class_index is None else 1 if FLAGS.loss_type == 'regression': num_classes = 1 df['score'] = [list(x) for x in np.reshape(predicts, [-1, NUM_ATTRIBUTES * num_classes])] # for inference using length buckts need to sort, so for safe just all sort try: ids = [int(x) for x in ids] df['id'] = ids except Exception: pass df= df.sort_values('id') if not is_infer: # TODO FIXME new run, seg fild seems luanma.. only on p40 new run.. #df['seg'] = [ids2text.ids2text(infos[str(id)]['content'], sep='|') for id in ids] df.to_csv(ofile, index=False, encoding="utf_8_sig") if is_infer: ## write debug #df2 = df #df2['seg'] = [ids2text.ids2text(infos[str(id)]['content'], sep='|') for id in ids] #df2.to_csv(ofile2, index=False, encoding="utf_8_sig") df.to_csv(ofile2, index=False, encoding="utf_8_sig") def valid_write(ids, labels, predicts, ofile): return write(ids, labels, predicts, ofile) def infer_write(ids, predicts, ofile, ofile2): return write(ids, None, predicts, ofile, ofile2, is_infer=True) def evaluate_file(file): print('-------------------------', file) df = pd.read_csv(file) scores = df['score'] scores = [gezi.str2scores(score) for score in scores] scores = np.array(scores) predicts = np.reshape(scores, [-1, NUM_ATTRIBUTES, NUM_CLASSES]) # for auc might need to do this #predicts /= 26 idx = 2 length = NUM_ATTRIBUTES labels = df.iloc[:,idx:idx+length].values labels += 2 #print(labels.shape, predicts.shape) assert labels.shape[0] == 15000, labels.shape[0] vals, names = evaluate(labels, predicts) if FLAGS.show_detail: for name, val in zip(names, vals): print(name, val) print('---------------------------------') for name, val in zip(names, vals): if 'mean' in name: print(name, val) lens = [len(x) for x in df['content'].values] predicts1 = [] predicts2 = [] labels1 = [] labels2 = [] for len_, label, predict in zip(lens, labels, predicts): if len_ >= FLAGS.len_thre: predicts2.append(predict) labels2.append(label) else: predicts1.append(predict) labels1.append(label) predicts1 = np.array(predicts1) labels1 = np.array(labels1) print('num docs len < ', FLAGS.len_thre, len(predicts1)) vals1, names1 = evaluate(labels1, predicts1) for name, val in zip(names1, vals1): if 'mean' in name: print(name, val) predicts2 = np.array(predicts2) labels2 = np.array(labels2) print('num docs len >= ', FLAGS.len_thre, len(predicts2)) vals2, names2 = evaluate(labels2, predicts2) for name, val in zip(names2, vals2): if 'mean' in name: print(name, val) return vals, names if __name__ == '__main__': load_class_weights() input = FLAGS.i os.makedirs('./bak', exist_ok=True) if os.path.isdir(input): df = pd.DataFrame() fnames = [] mnames = [] m = {} for file in glob.glob('%s/*valid.csv' % input): try: fname = os.path.basename(file) fnames.append(fname) fname = gezi.strip_suffix(fname, '.valid.csv') if 'ensemble' in file: mname = file suffix = '' else: if '_ckpt-' in fname: mname, suffix = fname.split('_ckpt-') else: mname, suffix = fname.split('_model.ckpt-') mnames.append(mname) vals, names = evaluate_file(file) for val, name in zip(vals, names): if name not in m: m[name] = [val] else: m[name].append(val) if name == FLAGS.metric_name and (val < FLAGS.min_thre or val > FLAGS.max_thre): print('-----remove file', file, '%s:%f' % (FLAGS.metric_name, val)) command = 'mv %s.* ./bak' % fname print(command) os.system(command) except Exception: print(file) traceback.print_exc() df['model'] = mnames df['file'] = fnames for key, val in m.items(): df[key] = val df = df.sort_values('adjusted_f1/mean', ascending=False) df.to_csv('models.csv', index=False) else: evaluate_file(FLAGS.i) ================================================ FILE: projects/ai2018/sentiment/infer/v11/README.md ================================================ -----tf rnet.nolatt rnet lm ft glove jieba sp10w sp1w mix char hidden 400 padding concat layers reccrent dropout gate attention transformer (bert) transformer (bert) + gru -----torch mreader.nolatt mreader bertopt + unkaug adamax + loss decay hidden 768 no padding not concat layers simple dropout sfu attention ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.cutfront.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.cutfront/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --cutfront=1 \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.finetune.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --warmup_steps=2000 \ --num_decay_epochs=3 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.finetune.3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.3/ num_epochs=4 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-8 \ --num_decay_epochs=4 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.finetune4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.4/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.rnn.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.rnn.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --transformer_add_rnn=1 \ --rnn_hidden_size=768 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.topkatt.cutfront.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt.cutfront/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --cut_front=1 \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.topkatt.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.bert.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.char.transformer.nbert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.mix.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.mix.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.mix.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.mix.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.mreader.lm.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.mreader.lm.2layer.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.2layer.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.mreader.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --restore_exclude=adam,global_step,learning_rate \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.nolatt.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.nolatt.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnet.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnetv2.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/tf.word.rnetv2.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.char.mreader.lm.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.lm.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.char.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.char.mreader.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.char.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.mix.mreader.lm.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.lm.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.mix.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.mix.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.baike/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.addbaike/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.short.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft.short' echo 'use default SRC word.jieba.ft.short' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 1 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden768/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden768/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=768 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden768/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden768/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=768 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer/v11/torch.word.mreader.nopad.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tf.enable_eager_execution() import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags #from algos.model import * from algos.loss import criterion import algos.model as base from dataset import Dataset import evaluate as ev from prepare.text2ids import text2ids from wenzheng.utils import ids2text import numpy as np from algos.config import ATTRIBUTES def main(_): melt.apps.init() #ev.init() model = getattr(base, FLAGS.model)() model.debug = True melt.eager.restore(model) ids2text.init() vocab = ids2text.vocab content = '这是一个很好的餐馆,菜很不好吃,我还想再去' content = '这是一个很差的餐馆,菜很不好吃,我不想再去' content = '这是一个很好的餐馆,菜很好吃,我还想再去' content = '这是一个很好的餐馆,只是菜很难吃,我还想再去' content = '这是一个很好的餐馆,只是菜很不好吃,我还想再去' cids = text2ids(content) words = [vocab.key(cid) for cid in cids] print(cids) print(ids2text.ids2text(cids)) x = {'content': [cids]} logits = model(x)[0] probs = gezi.softmax(logits, 1) print(probs) print(list(zip(ATTRIBUTES, [list(x) for x in probs]))) predicts = np.argmax(logits, -1) - 2 print('predicts ', predicts) print(list(zip(ATTRIBUTES, predicts))) adjusted_predicts = ev.to_predict(logits) print('apredicts', adjusted_predicts) print(list(zip(ATTRIBUTES, adjusted_predicts))) # print words importance scores word_scores_list = model.pooling.word_scores for word_scores in word_scores_list: print(list(zip(words, word_scores[0].numpy()))) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/lm-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags # import projects # algos = projects.ai2018.sentiment.algos #from algos.model import * from algos.loss import criterion import algos.model as base from lm_dataset import Dataset def main(_): FLAGS.num_folds = 8 melt.apps.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] model = getattr(base, FLAGS.model)(embedding, lm_model=True) logging.info(model) train = melt.apps.get_train() train(Dataset, model, melt.losses.bilm_loss) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/lm_dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from collections import namedtuple import gezi import melt logging = melt.logging from wenzheng.utils import vocabulary from algos.config import NUM_ATTRIBUTES import prepare.config class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) def get_aug_factor(): global_step = tf.train.get_or_create_global_step() num_examples = tf.constant(self.num_examples_per_epoch('train'), dtype=tf.int64) return tf.cond(tf.equal(tf.to_int64(global_step / num_examples) % 2, 0), lambda: 0., lambda: 1.) def undersampling_filter(x, y): prob = tf.cond(tf.equal(x['source'], 'dianping'), lambda: 1., lambda: FLAGS.other_corpus_factor) #prob = tf.cond(tf.equal(tf.strings.split(tf.expand_dims(x['source'], 0),'.').values[-1], 'train'), lambda: 1., lambda: FLAGS.other_corpus_factor) #is_aug = tf.to_float(tf.equal(x['source'], 'augument.train')) #is_aug = tf.to_float(tf.equal(tf.strings.split(tf.expand_dims(x['source'], 0),'.').values[0], 'aug')) #aug_factor = get_aug_factor() #prob *= is_aug * aug_factor + (1 - is_aug) * (1 - aug_factor) acceptance = tf.less_equal(tf.random_uniform([], dtype=tf.float32), prob) return acceptance self.filter_fn = undersampling_filter if FLAGS.other_corpus_factor < 1 else None #self.filter_fn = undersampling_filter def parser(self, example): """Parses a single tf.Example into image and label tensors.""" features_dict = { 'content_str': tf.FixedLenFeature([], tf.string), 'content': tf.VarLenFeature(tf.int64), 'char': tf.VarLenFeature(tf.int64), 'source': tf.FixedLenFeature([], tf.string), } #if FLAGS.use_char: #features_dict['chars'] = tf.VarLenFeature(tf.int64) features = tf.parse_single_example(example, features=features_dict) content = features['content'] content = melt.sparse_tensor_to_dense(content) # if FLAGS.add_start_end: # content = tf.concat([tf.constant([vocabulary.start_id()], dtype=tf.int64), content, tf.constant([vocabulary.end_id()], dtype=tf.int64)], 0) # NOTICE! not work in dataset... so put to later step like in call but should do the same thing again for pytorch.. # if FLAGS.vocab_min_count: # content = melt.greater_then_set(content, FLAGS.vocab_min_count, UNK_ID) features['content'] = content #if FLAGS.use_char: chars = features['char'] chars = melt.sparse_tensor_to_dense(chars) # if FLAGS.char_min_count: # chars = melt.greater_then_set(chars, FLAGS.char_min_count, UNK_ID) features['char'] = chars features['id'] = tf.constant(0, dtype=tf.int64) x = features y = x['content'] return x, y ================================================ FILE: projects/ai2018/sentiment/prepare/README.md ================================================ first sh ./gen-vocab.sh to get vocab.txt then using like vocab-mincount.. to get vocab.5k.txt then merge with all chars from vocab.txt using vocab-add-char.py to get vocab.5k.chars.txt this is used for word embedding train then for canyin and dianping just use ./gen-mix-seg-canyin.py ./gen-char-seg-canyin.py ... not use ./gen-seg-canyin.py for this project for we do not want to consider more words not used here do also for dianping and train/valid/test data we will use all these data as word embedding pretrain sh ./gen-vocab-v2.sh will use simple just basic seg NOTICE this is depreceated for v2 just use same vocab as v1, v2 only diff when gen tfrecord will not feed single and will has char embedding since v2 word + char concat prove to be better then seg basic + single so try to further try seperate word and char embedding as V3 the script ./run-noemb-v3.sh is the same as ./run-noemb-v2.sh be sure you have char_vocab.txt under tfrecord dir 3 seg method 1.char char only 2.word.feed basic + digit + feed_sginle only consider first 6k top freq word 3.word.basic basic now change to below process 1. seg for train+valid+test 2. get vocab from train+valid+test 3. generate tfrecord using seg result and vocab use 4 seg method with below name 1. char 2. mix(jieba) 3. word (jieba pos, should be word.jieba) 4. besg(word by phrase bseg should be word.besg) ================================================ FILE: projects/ai2018/sentiment/prepare/__init__.py ================================================ import projects.ai2018.sentiment.prepare.filter ================================================ FILE: projects/ai2018/sentiment/prepare/config ================================================ data_dir=./mount/data/ai2018/sentiment/ ================================================ FILE: projects/ai2018/sentiment/prepare/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-10-17 14:44:21.024368 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('use_char', False, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_integer('word_limit', 3000, '') flags.DEFINE_integer('content_limit_', None, 'used for bert 512') #flags.DEFINE_bool('use_pos', False, '') ================================================ FILE: projects/ai2018/sentiment/prepare/embeddings/fasttext/run.sh ================================================ #!/usr/bin/env bash # # Copyright (c) 2016-present, Facebook, Inc. # All rights reserved. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. An additional grant # of patent rights can be found in the PATENTS file in the same directory. # RESULTDIR=./ DATADIR=./ mkdir -p "${RESULTDIR}" mkdir -p "${DATADIR}" make ./fasttext skipgram -input "${DATADIR}"/text -output "${RESULTDIR}"/text -lr 0.025 -dim 300 \ -ws 5 -epoch 10 -minCount 20 -neg 5 -loss ns -bucket 2000000 \ -minn 2 -maxn 3 -thread 4 -t 1e-4 -lrUpdateRate 100 cut -f 1,2 "${DATADIR}"/rw/rw.txt | awk '{print tolower($0)}' | tr '\t' '\n' > "${DATADIR}"/queries.txt cat "${DATADIR}"/queries.txt | ./fasttext print-word-vectors "${RESULTDIR}"/text.bin > "${RESULTDIR}"/vectors.txt python eval.py -m "${RESULTDIR}"/vectors.txt -d "${DATADIR}"/rw/rw.txt ================================================ FILE: projects/ai2018/sentiment/prepare/embeddings/glove/run.sh ================================================ #!/bin/bash set -e # Makes programs, downloads sample data, trains a GloVe model, and then evaluates it. # One optional argument can specify the language used for eval script: matlab, octave or [default] python make # 8 iter nan CORPUS=text VOCAB_FILE=vocab.txt COOCCURRENCE_FILE=cooccurrence.bin COOCCURRENCE_SHUF_FILE=cooccurrence.shuf.bin BUILDDIR=build SAVE_FILE=vectors VERBOSE=2 MEMORY=4.0 VOCAB_MIN_COUNT=20 VECTOR_SIZE=300 MAX_ITER=15 WINDOW_SIZE=15 BINARY=2 NUM_THREADS=8 X_MAX=10 echo "$ $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE" $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE echo "$ $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE" $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE echo "$ $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE" $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE echo "$ $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE" $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE echo "$ python eval/python/evaluate.py" python eval/python/evaluate.py ================================================ FILE: projects/ai2018/sentiment/prepare/filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter.py # \author chenghuige # \date 2018-09-14 21:55:52.069104 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('simplify', False, '') import sys import os import gezi def filter_duplicate_space(text): return ''.join([x for i, x in enumerate(text) if not (i < len(text) - 1 and not(x.strip()) and not(text[i + 1].strip()))]) # # def translate_emotion(word): # # dic = { # # '🍲' : '火锅', # # '🌶️' : '辣' # # } # # if word in dic: # # return dic[word] # # return word # def translate_emotions(text): # return text.replace('🍲', '火锅').replace('🌶️', '辣') def filter(x): x = x.strip('"') x = filter_duplicate_space(x) x = gezi.remove_duplicate(x) x = gezi.filter_quota(x).replace('\r', '\x01').replace('\n', '\x02').replace('', '\x01').replace('', '\x02').replace('\t', ' ').replace(' ', '\x03') # # So here actually always fals as is done in preprocess using py2 # if FLAGS.simplify: # # to lower, to simplify, to half # x = gezi.to_simplify(x) #x = translate_emotions(x) # TODO if needed try to find case usefull or not I think especally for sentiment not reading, lower is ok not loose important info like NIKE x = x.lower() return x ================================================ FILE: projects/ai2018/sentiment/prepare/find-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-chars.py # \author chenghuige # \date 2018-10-01 20:35:40.158875 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from projects.ai2018.sentiment.prepare import filter df = pd.read_csv('/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv') chars = set() for comment in df['content']: comment = filter.filter(comment) for w in comment: if w not in chars: print(w) chars.add(w) ================================================ FILE: projects/ai2018/sentiment/prepare/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare/gen-canyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./raw_comment_v2.csv') print(len(df)) df2 = pd.DataFrame() ids = ['c{}'.format(i) for i in range(len(df))] contents = df['content'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) labels = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['score'] label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -2 labels.append(label) df2['others_overall_experience'] = labels df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./canyin.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/gen-canyin.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv ================================================ FILE: projects/ai2018/sentiment/prepare/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/sentiment/prepare/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os files = [ './mount/data/ai2018/sentiment/train.csv', './mount/data/ai2018/sentiment/valid.csv', './mount/data/ai2018/sentiment/test.csv' ] import pandas as pd import filter for infile in files: df = pd.read_csv(infile) for row in df.iterrows(): content = filter.filter(row[1][1]) print(content) ================================================ FILE: projects/ai2018/sentiment/prepare/gen-dianping.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./ratings.csv') print(len(df)) df2 = pd.DataFrame() ids = ['d{}'.format(i) for i in range(len(df))] contents = df['comment'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) def score2class(score): label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -1 return label labels = [] labels_env = [] labels_flavor = [] labels_service = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['rating'] score_env = row['rating_env'] score_flavor = row['rating_flavor'] score_service = row['rating_service'] labels.append(score2class(score)) labels_env.append(score2class(score_env)) labels_flavor.append(score2class(score_flavor)) labels_service.append(score2class(score_service)) df2['others_overall_experience'] = labels df2['environment_decoration'] = labels_env df2['dish_taste'] = labels_flavor df2['service_waiters_attitude'] = labels_service df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./dianping.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/gen-dianping.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv ================================================ FILE: projects/ai2018/sentiment/prepare/gen-lm-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/my-embedding/Glove-sentiment-jieba/valid', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft/vocab.txt', 'vocabulary txt file') flags.DEFINE_integer('threads', None, '') flags.DEFINE_string('source', 'dianping', 'dianping or baike or zhidao or zhihu') flags.DEFINE_integer('max_sentence_len', 20, '') flags.DEFINE_string('tfrecord_dir', 'tfrecord', '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) vocab = None char_vocab = None def build_features(file_): if not os.path.isfile(file_): return file_name = os.path.basename(file_) assert os.path.isdir(FLAGS.input) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) out_file = os.path.join(dir_ , '{}/{}/{}.record'.format(FLAGS.tfrecord_dir, mode, file_name)) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('infile', file_, 'out_file', out_file) # if os.path.exists(out_file): # return max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for line in tqdm(open(file_), total=1e6, ascii=True): try: line = line.rstrip('\n') #line = filter.filter(line) words = line.split(' ') words = gezi.add_start_end(words) words_list = gezi.break_sentence(words, FLAGS.max_sentence_len) for words in words_list: content = ' '.join(words) content_ids = [vocab.id(x) for x in words] if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) else: char_ids = [0] feature = { 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content), 'char': melt.int64_feature(char_ids), 'source': melt.bytes_feature(FLAGS.source), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): FLAGS.word_limit = 2000 global vocab, char_vocab vocab = gezi.Vocabulary(FLAGS.vocab_) print('vocab file', FLAGS.vocab_, 'vocab size', vocab.size()) if FLAGS.use_char: char_vocab = gezi.Vocabulary(FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt')) files = glob.glob(FLAGS.input + '/*') pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(build_features, files) pool.close() pool.join() # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) os.system('mkdir -p %s/%s/%s' % (dir_, FLAGS.tfrecord_dir, mode)) out_file = os.path.join(dir_, '{}/{}/num_records.txt'.format(FLAGS.tfrecord_dir, mode)) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/gen-mix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-mix-vocab.py # \author chenghuige # \date 2018-10-23 06:48:14.182012 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os vocab_file = sys.argv[1] char_vocab_file = sys.argv[2] num_words = int(sys.argv[3]) words = set() for i, line in enumerate(open(vocab_file)): if i == num_words: break word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') for line in open(char_vocab_file): ch, count = line.rstrip('\n').split('\t') if ch not in words: print(ch, count, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/sentiment/valid.csv', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', None, '10 or 5?') flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', True, '') flags.DEFINE_bool('augument', False, '') flags.DEFINE_string('mode', None, '') flags.DEFINE_string('mode_', None, '') flags.DEFINE_bool('ignore_start_end', False, 'If you have not remove start and end quota before,you can filter here') flags.DEFINE_bool('add_start_end_', True, '') flags.DEFINE_bool('has_position', False, '') flags.DEFINE_bool('fixed_vocab', False, '') flags.DEFINE_string('start_mark', '', '') flags.DEFINE_string('end_mark', '', '') flags.DEFINE_string('unk_word', '', '') flags.DEFINE_bool('word_only', False, '') flags.DEFINE_bool('use_soft_label_', False, '') flags.DEFINE_bool('is_soft_label', False, '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi #assert gezi.env_has('JIEBA_POS') from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None vocab = None char_vocab = None pos_vocab = None ner_vocab = None seg_result = None pos_result = None ner_result = None def get_mode(path): mode = 'train' if 'train' in path: mode ='train' elif 'valid' in path: mode = 'train' elif 'test' in path: mode = 'test' elif '.pm' in path: mode = 'pm' elif 'trans' in path: mode = 'trans' elif 'deform' in path: mode = 'deform' elif 'canyin' in path: mode = 'canyin' elif 'dianping' in path: mode = 'dianping' elif 'ensemble.infer.debug.csv' in path: mode = 'test' if FLAGS.augument: mode = 'aug.' + mode if FLAGS.mode: mode = FLAGS.mode return mode def build_features(index): mode = get_mode(FLAGS.input) start_index = FLAGS.start_index out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ ## TODO FIXME whty here still None ? FLAGS.num_records has bee modified before in main as 7 ... #print('---------', num_records, FLAGS.num_records_) if not num_records: if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: num_records = 1 else: num_records = 7 #print('------------------', num_records, FLAGS.num_records_) start, end = gezi.get_fold(total, num_records, index) print('total', total, 'infile', FLAGS.input, 'out_file', out_file) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in tqdm(range(start, end), ascii=True): try: row = df.iloc[i] id = str(row[0]) if seg_result: if id not in seg_result: print('id %s ot found in seg_result' % id) continue words = seg_result[id] if FLAGS.content_limit_: # NOW only for bert! if len(words) + 2 > FLAGS.content_limit_: words = words[:FLAGS.content_limit_ - 3 - 50] + ['[MASK]'] + words[-50:] #print(words) if FLAGS.add_start_end_: words = gezi.add_start_end(words, FLAGS.start_mark, FLAGS.end_mark) if pos_result: pos = pos_result[id] if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) if ner_result: ner = ner_result[id] if FLAGS.add_start_end_: ner = gezi.add_start_end(ner) if start_index > 0: id == 't' + id content = row[1] content_ori = content content = filter.filter(content) if not FLAGS.use_soft_label_: if 'test' in mode: label = [-2] * 20 else: label = list(row[2:]) #label = [x + 2 for x in label] #num_labels = len(label) else: label = [0.] * 80 if not FLAGS.is_soft_label: for idx, val in enumerate(row[2:]): label[idx * 4 + val] = 1. else: logits = np.array(gezi.str2scores(row['score'])) logits = np.reshape(logits, [20, 4]) probs = gezi.softmax(logits) label = list(np.reshape(probs, [-1])) if not seg_result: content_ids, words = text2ids_(content, preprocess=False, return_words=True) assert len(content_ids) == len(words) else: content_ids = [vocab.id(x) for x in words] #print(words, content_ids) #exit(0) if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) #if len(content_ids) > FLAGS.word_limit: # print(id, content) # if mode not in ['test', 'valid']: # continue #if len(content_ids) < 5 and mode not in ['test', 'valid']: # continue content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) if np.sum(char_ids) == 0: print('------------------------bad id', id) print(content_ids) print(words) exit(0) else: char_ids = [0] if pos_vocab: assert pos pos = pos[:FLAGS.word_limit] pos_ids = [pos_vocab.id(x) for x in pos] else: pos_ids = [0] if ner_vocab: assert ner if pos_vocab: assert len(pos) == len(ner) ner = ner[:FLAGS.word_limit] ner_ids = [ner_vocab.id(x) for x in ner] else: ner_ids = [0] wlen = [len(word) for word in words] feature = { 'id': melt.bytes_feature(id), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content_ori), 'char': melt.int64_feature(char_ids), 'pos': melt.int64_feature(pos_ids), # might also be postion info for mix seg 'ner': melt.int64_feature(ner_ids), 'wlen': melt.int64_feature(wlen), 'source': melt.bytes_feature(mode), } feature['label'] = melt.int64_feature(label) if not FLAGS.use_soft_label_ else melt.float_feature(label) # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): mode = get_mode(FLAGS.input) assert FLAGS.use_fold #text2ids.init(FLAGS.vocab_) global vocab, char_vocab, pos_vocab, ner_vocab, seg_result, pos_result, ner_result #vocab = text2ids.vocab vocab = gezi.Vocabulary(FLAGS.vocab_, fixed=FLAGS.fixed_vocab, unk_word=FLAGS.unk_word) print('vocab size:', vocab.size()) char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) print('char vocab size:', char_vocab.size()) pos_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'pos_vocab.txt') if os.path.exists(pos_vocab_file): pos_vocab = Vocabulary(pos_vocab_file) print('pos vocab size:', pos_vocab.size()) ner_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'ner_vocab.txt') if os.path.exists(ner_vocab_file): ner_vocab = Vocabulary(ner_vocab_file) print('ner vocab size:', ner_vocab.size()) mode_ = 'train' if 'valid' in FLAGS.input: mode_ = 'valid' elif 'test' in FLAGS.input: mode_ = 'test' else: assert 'train' in FLAGS.input if FLAGS.augument: mode_ = 'aug.' + mode_ if FLAGS.mode_: mode_ = FLAGS.mode_ seg_file = FLAGS.vocab_.replace('vocab.txt', '%s.seg.txt' % mode_) seg_result = {} if os.path.exists(seg_file): print('seg or seg_pos exits:', seg_file) pos_result = {} for line in open(seg_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0] and not FLAGS.word_only: l = [x.rsplit('|', 1) for x in segs] segs, pos = list(zip(*l)) pos_result[id] = pos seg_result[id] = segs seg_done = True if seg_result else False ner_file = FLAGS.vocab_.replace('vocab.txt', '%s.ner.txt' % mode_) ner_result = {} if os.path.exists(ner_file): print('seg_ner exists:', ner_file) for line in open(ner_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0]: l = [x.rsplit('|', 1) for x in segs] segs, ner = list(zip(*l)) if not seg_done: seg_result[id] = segs ner_result[id] = ner print('len(seg_result)', len(seg_result)) print('len(ner_result)', len(ner_result)) # print('to_lower:', FLAGS.to_lower, 'feed_single:', FLAGS.feed_single, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) # print(text2ids.ids2text(text2ids_('傻逼脑残B'))) # print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) global df df = pd.read_csv(FLAGS.input, lineterminator='\n') pool = multiprocessing.Pool() if not FLAGS.num_records_: if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: FLAGS.num_records_ = 1 else: FLAGS.num_records_ = 7 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() # for i in range(FLAGS.num_records_): # build_features(i) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv ================================================ FILE: projects/ai2018/sentiment/prepare/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv ================================================ FILE: projects/ai2018/sentiment/prepare/gen-trans.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-trans.py # \author chenghuige # \date 2018-10-03 22:43:06.305917 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm df = pd.read_csv('./train.csv') comments = {} for line in open('./train.en.txt'): try: id, comment = line.rstrip().split('\t') comments[id] = comment except Exception: pass print(len(comments)) num_modify = 0 num_bads = 0 for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] id = row['id'] id = str(id) if id in comments: if len(comments[id].replace(' ', '')) < len(row['content'].replace(' ', '')) * 1.5 and len(comments[id].replace(' ', '')) > len(row['content'].replace(' ', '')) * 0.7: df.loc[i,'content'] = comments[id] num_modify += 1 else: print('bad translate:', comments[id]) print('ori', row['content']) num_bads += 1 print(num_modify, num_bads) df.to_csv('./trans.en.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/gen-trans.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv ================================================ FILE: projects/ai2018/sentiment/prepare/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/sentiment/prepare/gen-vocab-v2.sh ================================================ python gen-content.py | python gen-vocab.py --seg_method='basic' --vocab_name='vocab.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import sys,os #os.environ['JIEBA_POS'] = '1' import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/sentiment/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single_all', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method import traceback from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np from gezi import Segmentor segmentor = Segmentor() print(segmentor, file=sys.stderr) import gezi #assert gezi.env_has('JIEBA_POS') logging = gezi.logging logging.init('/tmp') from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() text = filter.filter(text) try: words = segmentor.Segment(text, FLAGS.seg_method) except Exception: print(num, '-----------fail', text) print(traceback.format_exc()) continue if num % 10000 == 0: logging.info(text, '|'.join(words), len(words)) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/sentiment/prepare/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') flags.DEFINE_integer('max_words', 200000, '') flags.DEFINE_bool('add_additional', True, 'add additional words from embedding file, this is by default for word') flags.DEFINE_string('sort_by', 'count', '') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab print('input_vocab', input_vocab) dir_ = os.path.dirname(FLAGS.input_vocab) lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) try: vector = list(map(float, array[-vec_size:])) except Exception: print(i, line) continue if word.lower() in normed_ori_set: embedding_dict[word] = vector else: embedding_dict[word.lower()] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if FLAGS.sort_by == 'count': print('sort by count') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) else: print('sort by knowldege') words_knowledge = [] emb_mat_knowledge = [] words_no_knowledge = [] emb_mat_no_knowledge = [] with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat_knowledge.append(np.array(embedding_dict[word])) words_knowledge.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat_no_knowledge.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words_no_knowledge.append(word) # elif FLAGS.type == 'scratch': # if count >= FLAGS.min_count: # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) # else: # #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) # emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # words.append(word) # elif FLAGS.type == 'only': # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) #if FLAGS.sort_by == 'knowledge': words += words_no_knowledge emb_mat += emb_mat_no_knowledge words += words_knowledge emb_mat += emb_mat_knowledge words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) if FLAGS.add_additional: for word in embedding_dict: if word not in words_set: words_set.add(word) words.append(word) emb_mat.append(np.array(embedding_dict[word])) if len(words) > FLAGS.max_words: break print('num words after adding additional', len(words)) out_vocab = os.path.join(dir_, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) print('out_vocab', out_vocab) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(dir_, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) print('out_mat', out_mat) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/merge-vocabs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-vocabs.py # \author chenghuige # \date 2018-10-23 02:07:23.291646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os m = {} files = sys.argv[1:] num_files = len(files) print('num_files', num_files, file=sys.stderr) for file_ in files: for line in open(file_): word, count = line.rstrip('\n').split('\t', 1) count = int(count) if word not in m: m[word] = count else: m[word] += count sorted_by_value = sorted(m.items(), key=lambda kv: -kv[1]) for key, val in sorted_by_value: print(key, val, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare/pre-mix-seg-v1.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') import sys,os import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback # TODO bseg py2 not support if using melt .. from wenzheng.utils import text2ids from text2ids import text2ids as text2ids_ def seg(id, text, out): text = filter.filter(text) _, words = text2ids_(text, return_words=True) print(id, '\x09'.join(words), sep='\t', file=out) def main(_): FLAGS.seg_method = 'basic_digit' FLAGS.feed_single = True FLAGS.feed_single_en = True print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('feed_single:', FLAGS.feed_single, file=sys.stderr) print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) text2ids.init(FLAGS.vocab) counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') assert FLAGS.vocab ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: #print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/pre-mix-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') flags.DEFINE_string('vocab', None, '') flags.DEFINE_bool('for_pretrain', False, '') import sys,os #os.environ['BSEG'] = '1' import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback #assert gezi.env_has('BSEG') import six if gezi.env_has('BSEG'): assert six.PY2 vocab = None def seg(id, text, out, counter): text = filter.filter(text) words = [] for i, word in enumerate(gezi.cut(text)): counter.add(str(i)) if vocab.has(word) and not word.isdigit(): words.append('%s|%d' % (word, i)) else: if six.PY2: for ch in word.decode('utf8'): words.append('%s|%d' % (ch.encode('utf8'), i)) else: for ch in word: words.append('%s|%d' % (ch, i)) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) def main(_): # FLAGS.seg_method = 'basic_digit' # FLAGS.feed_single = True # FLAGS.feed_single_en = True # print('seg_method:', FLAGS.seg_method, file=sys.stderr) # print('feed_single:', FLAGS.feed_single, file=sys.stderr) # print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) #assert FLAGS.vocab global vocab vocab = gezi.Vocabulary(FLAGS.vocab) ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.jieba.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') num_errs = 0 with open(ofile, 'w') as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare/pre-seg-bert.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import sys,os import numpy as np import gezi import pandas as pd from tqdm import tqdm import traceback from projects.ai2018.sentiment.prepare import filter from third.bert import tokenization tokenizer = tokenization.BasicTokenizer() def seg(id, text, out): text = filter.filter(text) words = tokenizer.tokenize(text) print(id, '\x09'.join(words), sep='\t', file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) num_errs = 0 with open(ofile, 'w') as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): try: seg(ids[i], contents[i], out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare/pre-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import six if FLAGS.seg_method == 'char': assert not six.PY2 import sys,os import numpy as np import gezi #assert gezi.env_has('JIEBA_POS') from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback START_WORD = '' END_WORD = '' counter = WordCounter(most_common=0, min_count=1) counter2 = WordCounter(most_common=0, min_count=1) print('seg_method:', FLAGS.seg_method, file=sys.stderr) if gezi.env_has('SENTENCE_PIECE'): assert FLAGS.sp_path gezi.segment.init_sp(FLAGS.sp_path) def seg(id, text, out, type): text = filter.filter(text) counter.add(START_WORD) counter.add(END_WORD) l = gezi.cut(text, type) if type != 'word': for x, y in l: counter.add(x) counter2.add(y) words = ['%s|%s' % (x, y) for x,y in l] else: if FLAGS.seg_method == 'char': l2 = [] for i, w in enumerate(l): for ch in w: counter.add(ch) counter2.add(str(i)) l2.append((ch, i)) words = ['%s|%d' % (x, y) for x,y in l2] else: words = l for w in words: counter.add(w) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) vocab = ifile.replace('.csv', '.seg.%s.vocab' % FLAGS.name) type_ = 'word' vocab2 = None if 'pos' in FLAGS.name or FLAGS.seg_method == 'char': vocab2 = ifile.replace('.csv', '.pos.%s.vocab' % FLAGS.name) if 'pos' in FLAGS.name: type_ = 'pos' elif 'ner' in FLAGS.name: vocab2 = ifile.replace('.csv', '.ner.%s.vocab' % FLAGS.name) type_ = 'ner' num_errs = 0 with open(ofile, 'w') as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, type=type_) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab) if vocab2: counter2.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare/run-char-bert.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.bert/ sh ./run-noemb-char-bert.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-char-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.ft emb=./mount/data/my-embedding/fastText-sentiment-char/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-char-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.glove emb=./mount/data/my-embedding/GloVe-sentiment-char/vectors.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-char-nbert.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.nbert/ sh ./run-noemb-char-nbert.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-char.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-char-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-char.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-jieba-mix-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/valid/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/train/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-mix.sh ================================================ ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-baike-len20.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=20 --tfrecord_dir tfrecord.len20 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-baike.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=40 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-bseg-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-bseg-ner-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-bseg-ner2-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-jieba-tx-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-len40.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp10w-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp10w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp1w-baike.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/baidu/corpus.sp1w/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --source=baike ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp1w-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp1w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp20w-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word-sp20w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=20 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=20 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare/run-lm-word.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg-mix/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-bseg-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.10epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-10epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-bseg-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.40epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-40epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-bseg-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.glove emb=./mount/data/my-embedding/GloVe-sentiment-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba-mix/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-mix-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-nchar-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/nchar.ft emb=./mount/data/my-embedding/fastText-sentiment-nchar/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-aug.sh ================================================ vocab=$1 name=$2 python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.valid --mode aug.$name.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.test --mode aug.$name.test python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.train --mode aug.$name.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-char-bert.sh ================================================ vocab=$1 python ./gen-records.py --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --word_only=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --word_only=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --word_only=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-char-nbert.sh ================================================ vocab=$1 python ./gen-records.py --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --content_limit_=512 --word_only=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --content_limit_=512 --word_only=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' --content_limit_=512 --word_only=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-char.sh ================================================ vocab=$1 python ./gen-records.py --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-mix-charaug.sh ================================================ vocab=$1 python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.valid --mode aug.char.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.test --mode aug.char.test python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.train --mode aug.char.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-mix.sh ================================================ vocab=$1 python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb-pl.sh ================================================ vocab=$1 python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --use_soft_label_=1 --word_only=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --use_soft_label_=1 --word_only=1 python ./gen-records.py --input /home/gezi/temp/ai2018/sentiment/p40/model.csv/v11/submit.testa/ensemble.infer.debug.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --num_records_=10 --use_soft_label_=1 --is_soft_label=1 --word_only=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-noemb.sh ================================================ vocab=$1 python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-ft-knowldege.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft.knowledge/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --sort_by=knowledge sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/ #emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft2/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft3/ emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb= ./mount/data/my-embedding/GloVe-sentiment-bseg/ /vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-ner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-subner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.ft/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-bseg-subner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-jieba-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-jieba-pos-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-jieba-pos-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-jieba-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp10w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-10w/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp10w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp10w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp1w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-1w/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp1w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp1w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp20w-ft-pl.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft.pl emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-20w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-pl.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir --use_soft_label=1 python read-records.py --base=$dir --type show_info --use_soft_label=1 popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp20w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-20w/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-sp20w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft emb=./mount/data/my-embedding/fastText-sentiment-stanford/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft2 emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft3 emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.glove emb=./mount/data/my-embedding/GloVe-sentiment-stanford/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-stanford-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/run-word-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('feed_single', False, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text, preprocess=True, return_words=False): wenzheng.utils.text2ids.init() if preprocess: text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single=FLAGS.feed_single, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=False, pad=False, return_words=return_words) ================================================ FILE: projects/ai2018/sentiment/prepare/tmp ================================================ 2018-10-19 10:42:16 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:42:54 0:00:40 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:43:12 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:44:32 0:01:21 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:45:45 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 10:50:15 0:04:33 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:03:14 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:06:18 0:03:06 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:09:20 0:06:08 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放|着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多|加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬|面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 395 2018-10-19 15:12:22 0:09:09 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点|单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我|点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一|坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完|胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是现|烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再|来|了|。|" 608 2018-10-19 15:15:26 0:12:13 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很好|有劲||微甜||羊杂|汤||里面|料|很足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满|大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没|花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 473 2018-10-19 15:18:28 0:15:15 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐|前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远|看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换|个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 351 2018-10-19 15:21:30 0:18:17 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝|点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就快|没|地方|了|,|得|提前|点|过去|抢|个|车位|再说|~|哈哈|" 349 2018-10-19 15:24:32 0:21:19 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长|草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用|券||实在|是|划算|。||今天|晚上|雨|下|的|挺大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我一|问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不|肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 514 2018-10-19 15:27:34 0:24:21 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店|内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮|面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤|是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带|娃|来|吃|还是|划算|滴|。||跟|博多|一幸舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉肉|没有|博多|一幸舍|的|大片|,|但是|味道|还|不错|,|嫩香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已|熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡|排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽菜|带|着|蔬菜汁|所以|是|水|脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不|像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚丸|店|加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1126 2018-10-19 15:32:53 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:33:36 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 15:33:57 0:00:22 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 15:34:17 0:00:42 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势|丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 393 2018-10-19 15:34:38 0:01:03 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还|算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是|现烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再来|了|。|" 604 2018-10-19 15:34:58 0:01:23 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很|好|有劲||微甜||羊杂|汤||里面|料|很|足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很|好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 474 2018-10-19 15:35:19 0:01:44 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 348 2018-10-19 15:35:39 0:02:04 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就|快|没|地方|了|,|得|提前|点|过去|抢个|车位|再说|~|哈哈|" 348 2018-10-19 15:36:00 0:02:24 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用券||实在|是|划算|。||今天|晚上|雨下|的|挺|大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我|一问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 511 2018-10-19 15:36:20 0:02:45 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带娃来|吃|还是|划算|滴|。||跟|博多|一幸|舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉|肉|没有|博多|一幸|舍|的|大片|,|但是|味道|还|不错|,|嫩|香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破|相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸|舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽|菜|带|着|蔬菜汁|所以|是|水脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚|丸|店加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1124 2018-10-19 15:36:40 0:03:05 "一、地理位置:谢家湾万象城5楼,溜冰场上面。二、服务:店铺不大,干净整洁。服务态度不咸不淡的,9积分兑换的,也可以理解三、食品:有一句话真的很对—不作死就不会死。本来不喜欢喝茶,但作为吃货,没尝过黑龙茶,觉得还是有点介意。刚好有9积分,就鼓起勇气尝试一下。要的常温的红茶,想到热量问题,少糖,也没有加配料。然后就悲剧了,茶很大一杯,但是苦呀,什么伯爵红茶,我都感觉不出来了,又不是单独泡的,也没有什么茶香味。实在是没办法,苦的喝了几口就喝不下去了。可能多加糖和布丁之类的配料会好很多吧,不过份量的确很大一杯" "|一|、|地|理|位|置|:|谢|家|湾|万|象|城|5|楼|,|溜|冰|场|上|面|。||二|、|服|务|:|店|铺|不|大|,|干|净|整|洁|。|服|务|态|度|不|咸|不|淡|的|,|9|积|分|兑|换|的|,|也|可|以|理|解||三|、|食|品|:|有|一|句|话|真|的|很|对|—|不|作|死|就|不|会|死|。|本|来|不|喜|欢|喝|茶|,|但|作|为|吃|货|,|没|尝|过|黑|龙|茶|,|觉|得|还|是|有|点|介|意|。|刚|好|有|9|积|分|,|就|鼓|起|勇|气|尝|试|一|下|。|要|的|常|温|的|红|茶|,|想|到|热|量|问|题|,|少|糖|,|也|没|有|加|配|料|。|然|后|就|悲|剧|了|,|茶|很|大|一|杯|,|但|是|苦|呀|,|什|么|伯|爵|红|茶|,|我|都|感|觉|不|出|来|了|,|又|不|是|单|独|泡|的|,|也|没|有|什|么|茶|香|味|。|实|在|是|没|办|法|,|苦|的|喝|了|几|口|就|喝|不|下|去|了|。||可|能|多|加|糖|和|布|丁|之|类|的|配|料|会|好|很|多|吧|,|不|过|份|量|的|确|很|大|一|杯|"|"|一|、|地理位置|:|谢家|湾|万象|城|5|楼|,|溜冰场|上面|。||二|、|服务|:|店铺|不|大|,|干净|整洁|。|服务态度|不咸不淡|的|,|9|积分|兑换|的|,|也|可以|理解||三|、|食品|:|有|一句|话|真的|很|对|—|不作|死|就|不会|死|。|本来|不|喜欢|喝茶|,|但|作为|吃货|,|没尝过|黑龙|茶|,|觉得|还是|有点|介意|。|刚好|有|9|积分|,|就|鼓起勇气|尝试|一下|。|要|的|常温|的|红茶|,|想到|热量|问题|,|少糖|,|也|没有|加|配料|。|然后|就|悲剧|了|,|茶|很大|一杯|,|但是|苦|呀|,|什么|伯爵|红茶|,|我|都|感觉|不|出来|了|,|又|不是|单独|泡|的|,|也|没有|什么|茶|香味|。|实在|是|没|办法|,|苦|的|喝|了|几口|就|喝|不|下去|了|。||可能|多|加糖|和|布丁|之类|的|配料|会|好|很多|吧|,|不过|份量|的确|很大|一杯|" 432 2018-10-19 15:37:01 0:03:26 "非常喜欢去新开的有特色的店品尝,有幸被大众点评网同城聚会抽到黄金替补免费品鉴的机会,我感到十分幸运!红不让台湾特色餐厅位于李沧万达金街1号入口扶梯旁,交通便利,停车方便。店面小资,适合举行小型派对。走近店门,服务员立刻开门迎接并且热情的打招呼。进入店面,环顾四周,鹅黄的灯光下透露出温馨慵懒的气氛,店家匠心独居,屋内的摆设典雅质朴。我们大家围坐在一起开始品尝台湾特色美食,前菜是鸡排沙拉,鸡排外焦里嫩,沙拉酸爽开胃陪的饮品是本店招牌—寒天奶栋,口感丝化。在我们的玩闹嘻戏中,硬菜短上来了——招牌全垒打拼盘,样子可爱,味道独特,被大家迅雷不及掩耳盗铃之势一扫而光。紧接着——等一个人小火锅,西班牙海鲜焗饭,黑椒牛柳焗饭海鲜焗烤嫩鸡排上桌了,食材琳琅满目,令人目不暇接。人多力量大,盘子渐渐见底了,新菜品——普罗旺斯田园披萨,台湾卤肉饭,秘制鸡腿饭,招牌巨蛋烧,阳光手打面,超级霸大热狗震撼来袭。这里特别提一下普罗旺斯田园披萨,顶上配料五颜六色,芝士浓郁,饼胚酥脆,搭配沙拉和洋葱圈口味绝佳。还有在卤肉饭,鸡腿饭,手打面扮演重要角色的酱料,里面居然搭配了小鱼干,补钙又美味。环境搭配合理,既有闺密情侣说悄悄话的私密空间,又有三五好友畅饮阔聊的长桌吧台,气氛轻松惬意,互不打扰。红不让台湾特色餐厅绝对是小资的你餐饮休闲,畅聊发呆的绝佳选择,千万不要错过!" "|非|常|喜|欢|去|新|开|的|有|特|色|的|店|品|尝|,|有|幸|被|大|众|点|评|网|同|城|聚|会|抽|到|黄|金|替|补|免|费|品|鉴|的|机|会|,|我|感|到|十|分|幸|运|!|红|不|让|台|湾|特|色|餐|厅|位|于|李|沧|万|达|金|街|1|号|入|口|扶|梯|旁|,|交|通|便|利|,|停|车|方|便|。|店|面|小|资|,|适|合|举|行|小|型|派|对|。|走|近|店|门|,|服|务|员|立|刻|开|门|迎|接|并|且|热|情|的|打|招|呼|。|进|入|店|面|,|环|顾|四|周|,|鹅|黄|的|灯|光|下|透|露|出|温|馨|慵|懒|的|气|氛|,|店|家|匠|心|独|居|,|屋|内|的|摆|设|典|雅|质|朴|。|我|们|大|家|围|坐|在|一|起|开|始|品|尝|台|湾|特|色|美|食|,|前|菜|是|鸡|排|沙|拉|,|鸡|排|外|焦|里|嫩|,|沙|拉|酸|爽|开|胃|陪|的|饮|品|是|本|店|招|牌|—|寒|天|奶|栋|,|口|感|丝|化|。|在|我|们|的|玩|闹|嘻|戏|中|,|硬|菜|短|上|来|了|—|—|招|牌|全|垒|打|拼|盘|,|样|子|可|爱|,|味|道|独|特|,|被|大|家|迅|雷|不|及|掩|耳|盗|铃|之|势|一|扫|而|光|。|紧|接|着|—|—|等|一|个|人|小|火|锅|,|西|班|牙|海|鲜|焗|饭|,|黑|椒|牛|柳|焗|饭|海|鲜|焗|烤|嫩|鸡|排|上|桌|了|,|食|材|琳|琅|满|目|,|令|人|目|不|暇|接|。|人|多|力|量|大|,|盘|子|渐|渐|见|底|了|,|新|菜|品|—|—|普|罗|旺|斯|田|园|披|萨|,|台|湾|卤|肉|饭|,|秘|制|鸡|腿|饭|,|招|牌|巨|蛋|烧|,|阳|光|手|打|面|,|超|级|霸|大|热|狗|震|撼|来|袭|。||这|里|特|别|提|一|下|普|罗|旺|斯|田|园|披|萨|,|顶|上|配|料|五|颜|六|色|,|芝|士|浓|郁|,|饼|胚|酥|脆|,|搭|配|沙|拉|和|洋|葱|圈|口|味|绝|佳|。|还|有|在|卤|肉|饭|,|鸡|腿|饭|,|手|打|面|扮|演|重|要|角|色|的|酱|料|,|里|面|居|然|搭|配|了|小|鱼|干|,|补|钙|又|美|味|。||环|境|搭|配|合|理|,|既|有|闺|密|情|侣|说|悄|悄|话|的|私|密|空|间|,|又|有|三|五|好|友|畅|饮|阔|聊|的|长|桌|吧|台|,|气|氛|轻|松|惬|意|,|互|不|打|扰|。||红|不|让|台|湾|特|色|餐|厅|绝|对|是|小|资|的|你|餐|饮|休|闲|,|畅|聊|发|呆|的|绝|佳|选|择|,|千|万|不|要|错|过|!|"|"|非常|喜欢|去|新开|的|有|特色|的|店|品尝|,|有幸|被|大众|点评|网同城|聚会|抽到|黄金|替补|免费|品鉴|的|机会|,|我|感到|十分|幸运|!|红|不让|台湾|特色|餐厅|位于|李沧|万达|金街|1|号|入口|扶梯|旁|,|交通|便利|,|停车|方便|。|店面|小资|,|适合|举行|小型|派对|。|走近|店门|,|服务员|立刻|开门|迎接|并且|热情|的|打招呼|。|进入|店面|,|环顾四周|,|鹅黄|的|灯光|下|透露|出|温馨|慵懒|的|气氛|,|店家|匠心|独居|,|屋内|的|摆设|典雅|质朴|。|我们|大家|围坐在|一起|开始|品尝|台湾|特色美食|,|前菜|是|鸡排|沙拉|,|鸡排|外焦里嫩|,|沙拉|酸爽|开胃|陪|的|饮品|是|本店|招牌|—|寒天|奶栋|,|口感|丝化|。|在|我们|的|玩闹|嘻戏|中|,|硬菜|短|上来|了|—|—|招牌|全垒打|拼盘|,|样子|可爱|,|味道|独特|,|被|大家|迅雷不及|掩耳盗铃|之势|一扫而光|。|紧接着|—|—|等|一个|人|小火锅|,|西班牙|海鲜|焗|饭|,|黑椒|牛柳|焗|饭|海鲜|焗|烤|嫩|鸡排|上桌|了|,|食材|琳琅满目|,|令人|目不暇接|。|人多|力量|大|,|盘子|渐渐|见底|了|,|新|菜品|—|—|普罗旺斯|田园|披萨|,|台湾|卤肉饭|,|秘制|鸡腿饭|,|招牌|巨蛋|烧|,|阳光|手|打面|,|超级|霸大|热狗|震撼|来袭|。||这里|特别|提|一下|普罗旺斯|田园|披萨|,|顶上|配料|五颜六色|,|芝士|浓郁|,|饼|胚|酥脆|,|搭配|沙拉|和|洋葱|圈|口味|绝佳|。|还有|在|卤肉饭|,|鸡腿饭|,|手|打面|扮演|重要|角色|的|酱料|,|里面|居然|搭配|了|小鱼|干|,|补钙|又|美味|。||环境|搭配|合理|,|既有|闺密|情侣|说|悄悄话|的|私密|空间|,|又|有|三五|好友|畅饮|阔聊|的|长桌|吧台|,|气氛|轻松|惬意|,|互不|打扰|。||红|不让|台湾|特色|餐厅|绝对|是|小资|的|你|餐饮|休闲|,|畅聊|发呆|的|绝佳|选择|,|千万|不要|错过|!|" 917 2018-10-19 15:37:21 0:03:46 "位于昆明新亚洲体育场的上岛咖啡,至今已有500多家连锁店遍布中国大江南北,成为目前国内最受欢迎的咖啡连锁餐厅之一。上岛咖啡执著于"香醇、甘美"的极致品质的制作理念;在店面设计方面,上岛融合了经典与时尚的理念,独具一格的店面设计,让上岛咖啡在春城声名远扬。走进这里,阳光的明媚与古朴的原木色绝妙的结合让你为之赞叹,坐在落地玻璃窗边的小几旁,沐浴一身的温暖阳光让人感到懒洋洋的舒服。在一入门的书架上捡一本喜欢的书,叫上一杯香浓的咖啡,看窗外的车水马龙,行行色色的行人,生活就在这样的细细品味中渗出丝丝甜美。除了各式各样的咖啡供您选择以外,还有各种佐咖啡的小点也十分精美。这里的食物是以台湾风味为主的,制作精致的盛具加上色香味俱全的可口美食让你在感观上得到最大的满足。上岛咖啡新亚洲店总的来说还不错,位置比较隐蔽一点点,环境还不错,环境很好,而且很安静,就是位置对于我们来说不是特别好找,东西很多,还有红酒,喝着红酒别有一番滋味,整个店面在二楼占地不大,晚上五点多去人不多,牛排沙拉土司都还行,罗宋汤很好喝,沙拉也不错,牛排要的八分熟,感觉有点老了,下次去要七分熟应该刚刚好,服务态度也不错,很安静,很舒服,是个放松心情的好地方。团的也划算,总之很满意,还会去的。" "|位|于|昆|明|新|亚|洲|体|育|场|的|上|岛|咖|啡|,|至|今|已|有|5|0|0|多|家|连|锁|店|遍|布|中|国|大|江|南|北|,|成|为|目|前|国|内|最|受|欢|迎|的|咖|啡|连|锁|餐|厅|之|一|。|上|岛|咖|啡|执|著|于|"|香|醇|、|甘|美|"|的|极|致|品|质|的|制|作|理|念|;|在|店|面|设|计|方|面|,|上|岛|融|合|了|经|典|与|时|尚|的|理|念|,|独|具|一|格|的|店|面|设|计|,|让|上|岛|咖|啡|在|春|城|声|名|远|扬|。|走|进|这|里|,|阳|光|的|明|媚|与|古|朴|的|原|木|色|绝|妙|的|结|合|让|你|为|之|赞|叹|,|坐|在|落|地|玻|璃|窗|边|的|小|几|旁|,|沐|浴|一|身|的|温|暖|阳|光|让|人|感|到|懒|洋|洋|的|舒|服|。|在|一|入|门|的|书|架|上|捡|一|本|喜|欢|的|书|,|叫|上|一|杯|香|浓|的|咖|啡|,|看|窗|外|的|车|水|马|龙|,|行|行|色|色|的|行|人|,|生|活|就|在|这|样|的|细|细|品|味|中|渗|出|丝|丝|甜|美|。|除|了|各|式|各|样|的|咖|啡|供|您|选|择|以|外|,|还|有|各|种|佐|咖|啡|的|小|点|也|十|分|精|美|。|这|里|的|食|物|是|以|台|湾|风|味|为|主|的|,|制|作|精|致|的|盛|具|加|上|色|香|味|俱|全|的|可|口|美|食|让|你|在|感|观|上|得|到|最|大|的|满|足|。|上|岛|咖|啡|新|亚|洲|店|总|的|来|说|还|不|错|,|位|置|比|较|隐|蔽|一|点|点|,|环|境|还|不|错|,|环|境|很|好|,|而|且|很|安|静|,|就|是|位|置|对|于|我|们|来|说|不|是|特|别|好|找|,|东|西|很|多|,|还|有|红|酒|,|喝|着|红|酒|别|有|一|番|滋|味|,|整|个|店|面|在|二|楼|占|地|不|大|,|晚|上|五|点|多|去|人|不|多|,|牛|排|沙|拉|土|司|都|还|行|,|罗|宋|汤|很|好|喝|,|沙|拉|也|不|错|,|牛|排|要|的|八|分|熟|,|感|觉|有|点|老|了|,|下|次|去|要|七|分|熟|应|该|刚|刚|好|,|服|务|态|度|也|不|错|,|很|安|静|,|很|舒|服|,|是|个|放|松|心|情|的|好|地|方|。|团|的|也|划|算|,|总|之|很|满|意|,|还|会|去|的|。|"|"|位于|昆明|新|亚洲|体育场|的|上|岛|咖啡|,|至今已有|500|多家|连锁店|遍布|中国|大江南北|,|成为|目前|国内|最|受欢迎|的|咖啡|连锁|餐厅|之一|。|上|岛|咖啡|执著|于|"|香醇|、|甘美|"|的|极致|品质|的|制作|理念|;|在|店面|设计|方面|,|上|岛|融合|了|经典|与|时尚|的|理念|,|独具一格|的|店面|设计|,|让|上|岛|咖啡|在|春城|声名|远扬|。|走进|这里|,|阳光|的|明媚|与|古朴|的|原木色|绝妙|的|结合|让|你|为|之|赞叹|,|坐在|落地|玻璃窗|边|的|小|几旁|,|沐浴|一身|的|温暖|阳光|让|人|感到|懒洋洋|的|舒服|。|在|一|入门|的|书架上|捡|一本|喜欢|的|书|,|叫|上|一杯|香浓|的|咖啡|,|看|窗外|的|车水马龙|,|行行色色|的|行人|,|生活|就|在|这样|的|细细品味|中|渗出|丝丝|甜美|。|除了|各式各样|的|咖啡|供|您|选择|以外|,|还有|各种|佐|咖啡|的|小点|也|十分|精美|。|这里|的|食物|是|以|台湾|风味|为主|的|,|制作|精致|的|盛具|加上|色香味|俱全|的|可口|美食|让你在|感观|上|得到|最大|的|满足|。|上|岛|咖啡|新|亚洲|店|总的来说|还|不错|,|位置|比较|隐蔽|一点点|,|环境|还|不错|,|环境|很|好|,|而且|很|安静|,|就是|位置|对于|我们|来说|不是|特别|好找|,|东西|很多|,|还有|红酒|,|喝|着|红酒|别有|一番滋味|,|整个|店面|在|二楼|占地|不|大|,|晚上|五点|多去|人|不|多|,|牛排|沙拉|土司|都|还行|,|罗宋汤|很|好喝|,|沙拉|也|不错|,|牛排|要|的|八分熟|,|感觉|有点|老|了|,|下次|去|要|七分|熟|应该|刚刚|好|,|服务态度|也|不错|,|很|安静|,|很|舒服|,|是|个|放松|心情|的|好|地方|。|团|的|也|划算|,|总之|很|满意|,|还会|去|的|。|" 859 2018-10-19 15:37:42 0:04:07 "我想说他们家的优惠活动好持久啊,我预售的时候买的券,前两天心血来潮去吃的活动还在继续首先说下服务,因为和男票开车去的,有点不认路,老板很耐心的在电话里帮我们指路,到了门店之后也帮我们推荐了他们家做的比较地道的伤心凉粉,说是厨师是四川那边来的。环境呢比较简单干净,去的时候下午一点多了,还有四五桌人在用餐口味对于我而言点了麻辣的口感正正好,男票比较能吃辣,相对而言觉得他们家的麻辣口感麻有了,辣还欠缺一点,老板娘说考虑到客人口味不同所以没敢放太多辣椒,能吃辣的朋友可以考虑下单之前和老板先说好。鱼呢我们选的是黑鱼,2.9斤的鱼加上一盆我以为没有什么东西实际上东西很多的锅底,我们吃的饱饱的,最后以为吃的差不多了,打包一看简直像没动过一样,分量还是满足的,鱼比较新鲜。伤心凉粉很辣,不过口味也蛮好吃的。总的来说,性价比还是可以的,两个人吃了大概160左右,用了团购券的话一百块不到,会考虑下次再来" "|我|想|说|他|们|家|的|优|惠|活|动|好|持|久|啊|,|我|预|售|的|时|候|买|的|券|,|前|两|天|心|血|来|潮|去|吃|的|活|动|还|在|继|续||首|先|说|下|服|务|,|因|为|和|男|票|开|车|去|的|,|有|点|不|认|路|,|老|板|很|耐|心|的|在|电|话|里|帮|我|们|指|路|,|到|了|门|店|之|后|也|帮|我|们|推|荐|了|他|们|家|做|的|比|较|地|道|的|伤|心|凉|粉|,|说|是|厨|师|是|四|川|那|边|来|的|。||环|境|呢|比|较|简|单|干|净|,|去|的|时|候|下|午|一|点|多|了|,|还|有|四|五|桌|人|在|用|餐||口|味|对|于|我|而|言|点|了|麻|辣|的|口|感|正|正|好|,|男|票|比|较|能|吃|辣|,|相|对|而|言|觉|得|他|们|家|的|麻|辣|口|感|麻|有|了|,|辣|还|欠|缺|一|点|,|老|板|娘|说|考|虑|到|客|人|口|味|不|同|所|以|没|敢|放|太|多|辣|椒|,|能|吃|辣|的|朋|友|可|以|考|虑|下|单|之|前|和|老|板|先|说|好|。|鱼|呢|我|们|选|的|是|黑|鱼|,|2|.|9|斤|的|鱼|加|上|一|盆|我|以|为|没|有|什|么|东|西|实|际|上|东|西|很|多|的|锅|底|,|我|们|吃|的|饱|饱|的|,|最|后|以|为|吃|的|差|不|多|了|,|打|包|一|看|简|直|像|没|动|过|一|样|,|分|量|还|是|满|足|的|,|鱼|比|较|新|鲜|。|伤|心|凉|粉|很|辣|,|不|过|口|味|也|蛮|好|吃|的|。||总|的|来|说|,|性|价|比|还|是|可|以|的|,|两|个|人|吃|了|大|概|1|6|0|左|右|,|用|了|团|购|券|的|话|一|百|块|不|到|,|会|考|虑|下|次|再|来|"|"|我|想|说|他们|家|的|优惠活动|好|持久|啊|,|我|预售|的|时候|买|的|券|,|前两天|心血来潮|去|吃|的|活动|还|在|继续||首先|说|下|服务|,|因为|和|男票|开车|去|的|,|有点|不|认路|,|老板|很|耐心|的|在|电话|里|帮|我们|指路|,|到|了|门店|之后|也|帮|我们|推荐|了|他们|家|做|的|比较|地道|的|伤心|凉粉|,|说|是|厨师|是|四川|那边|来|的|。||环境|呢|比较简单|干净|,|去|的|时候|下午|一点多|了|,|还有|四五桌|人|在|用餐||口味|对于|我|而言|点|了|麻辣|的|口感|正|正好|,|男票|比较|能|吃|辣|,|相对而言|觉得|他们|家|的|麻辣|口感|麻有|了|,|辣|还|欠缺|一点|,|老板娘|说|考虑|到|客人|口味|不同|所以|没敢|放太多|辣椒|,|能|吃|辣|的|朋友|可以|考虑|下单|之前|和|老板|先|说好|。|鱼|呢|我们|选|的|是|黑鱼|,|2.9|斤|的|鱼|加上|一盆|我|以为|没有|什么|东西|实际上|东西|很多|的|锅底|,|我们|吃|的|饱饱|的|,|最后|以为|吃|的|差不多|了|,|打包|一看|简直|像|没动|过|一样|,|分量|还是|满足|的|,|鱼|比较|新鲜|。|伤心|凉粉|很辣|,|不过|口味|也|蛮|好吃|的|。||总的来说|,|性价比|还是|可以|的|,|两个|人|吃|了|大概|160|左右|,|用|了|团购|券|的话|一百块|不到|,|会|考虑|下次|再|来|" 661 2018-10-19 15:38:02 0:04:27 "店的位置很好找,来了不止一次了。环境很好,人气很旺,服务很好,菜品很赞。白水都是放在高脚杯里,热水。上菜速度不错。鸭舌很入味,量还可以。脆脆的很喜欢。口水鸡超级给力,辣椒香而不燥,芝麻香,鸡肉很嫩,底下还有笋,比较爽口。麻酱油麦菜特别解辣,麻酱量大,微甜。水煮鱼鱼片鲜嫩,辣椒不会太辣,麻椒很给力。豆芽量大爽口。豆花好大一锅,小料配了酥黄豆,葱,酱汁,跟豆花一起,一吃好几碗。特别满足的一顿饭。继续支持!" "|店|的|位|置|很|好|找|,|来|了|不|止|一|次|了|。|环|境|很|好|,|人|气|很|旺|,|服|务|很|好|,|菜|品|很|赞|。|白|水|都|是|放|在|高|脚|杯|里|,|热|水|。|上|菜|速|度|不|错|。|鸭|舌|很|入|味|,|量|还|可|以|。|脆|脆|的|很|喜|欢|。|口|水|鸡|超|级|给|力|,|辣|椒|香|而|不|燥|,|芝|麻|香|,|鸡|肉|很|嫩|,|底|下|还|有|笋|,|比|较|爽|口|。|麻|酱|油|麦|菜|特|别|解|辣|,|麻|酱|量|大|,|微|甜|。|水|煮|鱼|鱼|片|鲜|嫩|,|辣|椒|不|会|太|辣|,|麻|椒|很|给|力|。|豆|芽|量|大|爽|口|。|豆|花|好|大|一|锅|,|小|料|配|了|酥|黄|豆|,|葱|,|酱|汁|,|跟|豆|花|一|起|,|一|吃|好|几|碗|。|特|别|满|足|的|一|顿|饭|。|继|续|支|持|!|"|"|店|的|位置|很|好找|,|来|了|不止一次|了|。|环境|很|好|,|人气|很旺|,|服务|很|好|,|菜品|很赞|。|白水|都|是|放在|高脚杯|里|,|热水|。|上菜|速度|不错|。|鸭舌|很|入味|,|量|还|可以|。|脆脆|的|很|喜欢|。|口水鸡|超级|给力|,|辣椒|香而|不燥|,|芝麻|香|,|鸡肉|很嫩|,|底下|还有|笋|,|比较|爽口|。|麻酱|油麦|菜|特别|解辣|,|麻酱|量|大|,|微甜|。|水煮鱼|鱼片|鲜嫩|,|辣椒|不会|太辣|,|麻椒|很|给|力|。|豆芽|量|大|爽口|。|豆花|好大|一锅|,|小料|配|了|酥|黄豆|,|葱|,|酱汁|,|跟|豆花|一起|,|一吃|好几碗|。|特别|满足|的|一顿饭|。|继续|支持|!|" 337 2018-10-19 17:11:03 0:00:13 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:11:59 0:00:12 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:21:39 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:23:51 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:29:21 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:41:29 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:48:42 0:00:15 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:05:48 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:40:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:45:17 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:48:18 0:03:10 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 18:51:11 0:06:03 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 18:53:59 0:08:51 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 18:56:44 0:11:36 "还是头一次被点评抽中宵夜套餐的,第一次提前打电话去预约,老板说8点半以后才开始提供宵夜,后面因为有事耽搁了也就没去成。第二次是晚上在家突然就想吃生蚝了,于是就直接过去了,在沈塘桥那里还仔细张望了几下,因为虽说是义海蚝情,但是店面看上去真的很干净完全不像吃烧烤宵夜的样子。然后老板很热情地出来问,我就囧囧地进去了。才知道这家店白天是茶餐厅,8点以后变身位义海蚝情。看起来生意很不错,里面几乎坐满了人。上菜很快,先上的是一盘酸酸甜甜的小果盘,因为不怎么喜欢吃酸的,所以吃了一两个就作罢,后来听老板说这些酸果是专门从广东那边运过来的,吃完烤串以后再吃这个就十分解腻。接着上了生蚝,分别是蒜蓉和原味的,处理得很干净,而且也不油腻,没有腥味。嫩烤生牛实在太美味了!据老板说这个生牛肉都是每天凌晨去市场买的,如果当天做不完,第二天也不会再用来做这道菜了,因为牛肉经过冷冻以后口感就没有那么鲜嫩了。后面还有烤韭黄,烤风爪还有烤鸡翅,味道都很棒!吃完以后,老板还特地过来询问我们的意见,征求我们的建议,非常诚恳,绝对好评!" "|还|是|头|一|次|被|点|评|抽|中|宵|夜|套|餐|的|,|第|一|次|提|前|打|电|话|去|预|约|,|老|板|说|8|点|半|以|后|才|开|始|提|供|宵|夜|,|后|面|因|为|有|事|耽|搁|了|也|就|没|去|成|。|第|二|次|是|晚|上|在|家|突|然|就|想|吃|生|蚝|了|,|于|是|就|直|接|过|去|了|,|在|沈|塘|桥|那|里|还|仔|细|张|望|了|几|下|,|因|为|虽|说|是|义|海|蚝|情|,|但|是|店|面|看|上|去|真|的|很|干|净|完|全|不|像|吃|烧|烤|宵|夜|的|样|子|。|然|后|老|板|很|热|情|地|出|来|问|,|我|就|囧|囧|地|进|去|了|。||才|知|道|这|家|店|白|天|是|茶|餐|厅|,|8|点|以|后|变|身|位|义|海|蚝|情|。|看|起|来|生|意|很|不|错|,|里|面|几|乎|坐|满|了|人|。|上|菜|很|快|,|先|上|的|是|一|盘|酸|酸|甜|甜|的|小|果|盘|,|因|为|不|怎|么|喜|欢|吃|酸|的|,|所|以|吃|了|一|两|个|就|作|罢|,|后|来|听|老|板|说|这|些|酸|果|是|专|门|从|广|东|那|边|运|过|来|的|,|吃|完|烤|串|以|后|再|吃|这|个|就|十|分|解|腻|。|接|着|上|了|生|蚝|,|分|别|是|蒜|蓉|和|原|味|的|,|处|理|得|很|干|净|,|而|且|也|不|油|腻|,|没|有|腥|味|。|嫩|烤|生|牛|实|在|太|美|味|了|!|据|老|板|说|这|个|生|牛|肉|都|是|每|天|凌|晨|去|市|场|买|的|,|如|果|当|天|做|不|完|,|第|二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因|为|牛|肉|经|过|冷|冻|以|后|口|感|就|没|有|那|么|鲜|嫩|了|。||后|面|还|有|烤|韭|黄|,|烤|风|爪|还|有|烤|鸡|翅|,|味|道|都|很|棒|!||吃|完|以|后|,|老|板|还|特|地|过|来|询|问|我|们|的|意|见|,|征|求|我|们|的|建|议|,|非|常|诚|恳|,|绝|对|好|评|!|"|"|还是|头一|次|被|点评|抽|中|宵夜|套餐|的|,|第一|次|提前|打电话|去|预约|,|老板|说|8|点|半|以后|才|开始|提供|宵夜|,|后面|因为|有|事|耽搁|了|也|就|没|去|成|。|第二|次|是|晚上|在家|突然|就|想|吃|生蚝|了|,|于是|就|直接|过去|了|,|在|沈|塘桥|那里|还|仔细|张望|了|几下|,|因为|虽说|是|义海蚝情|,|但是|店面|看上去|真的|很|干净|完全|不|像|吃|烧烤|宵夜|的|样子|。|然后|老板|很|热情|地|出来|问|,|我|就|囧囧|地|进去|了|。|才|知道|这|家|店|白天|是|茶|餐厅|,|8点|以后|变身|位|义海|蚝情|。|看起来|生意|很|不错|,|里面|几乎|坐满|了|人|。|上菜|很|快|,|先|上|的|是|一|盘|酸酸|甜甜|的|小|果盘|,|因为|不怎么|喜欢|吃|酸|的|,|所以|吃|了|一|两|个|就|作罢|,|后来|听|老板|说|这些|酸|果是|专门|从|广东|那边|运|过来|的|,|吃完|烤|串|以后|再|吃|这个|就|十分|解腻|。|接着|上|了|生蚝|,|分别|是|蒜蓉|和|原味|的|,|处理|得很|干净|,|而且|也|不|油腻|,|没有|腥味|。|嫩烤|生|牛|实在|太|美味|了|!|据|老板|说|这个|生|牛肉|都|是|每天|凌晨|去|市场|买的|,|如果|当天|做|不|完|,|第二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因为|牛肉|经过|冷冻|以后|口感|就|没有|那么|鲜嫩|了|。|后面|还|有|烤|韭黄|,|烤|风|爪|还有|烤|鸡翅|,|味道|都|很|棒|!|吃完|以后|,|老板|还|特地|过来|询问|我们|的|意见|,|征求|我们|的|建议|,|非常|诚恳|,|绝对|好评|!|" 769 2018-10-19 18:59:26 0:14:18 "性价比还是很高的一家店,菜品不算少,只是作为放题的话量稍微多了一点,不能每个品种都吃到,最后还是服务员mm说帮我们写量少点,还是不错的~越到后面客人越多可能就没之前服务那么周到,但总的来说基本没漏单情况~说说味道吧,这家店里所有的虾类都可以试试哦,甜虾很新鲜,什么虾色拉、盐烤大虾还有天妇罗炸虾都很美味哦~刺身类虽然品种不算很多但是188的价格来说算可以了,也很新鲜,飞鱼籽超级好吃的,铁板烧的话味道也不赖,反正这个价位来说算不错了~" "|性|价|比|还|是|很|高|的|一|家|店|,|菜|品|不|算|少|,|只|是|作|为|放|题|的|话|量|稍|微|多|了|一|点|,|不|能|每|个|品|种|都|吃|到|,|最|后|还|是|服|务|员|m|m|说|帮|我|们|写|量|少|点|,|还|是|不|错|的|~|越|到|后|面|客|人|越|多|可|能|就|没|之|前|服|务|那|么|周|到|,|但|总|的|来|说|基|本|没|漏|单|情|况|~|说|说|味|道|吧|,|这|家|店|里|所|有|的|虾|类|都|可|以|试|试|哦|,|甜|虾|很|新|鲜|,|什|么|虾|色|拉|、|盐|烤|大|虾|还|有|天|妇|罗|炸|虾|都|很|美|味|哦|~|刺|身|类|虽|然|品|种|不|算|很|多|但|是|1|8|8|的|价|格|来|说|算|可|以|了|,|也|很|新|鲜|,|飞|鱼|籽|超|级|好|吃|的|,|铁|板|烧|的|话|味|道|也|不|赖|,|反|正|这|个|价|位|来|说|算|不|错|了|~|"|"|性价比|还是|很|高|的|一|家|店|,|菜品|不|算|少|,|只是|作为|放题|的|话|量|稍微|多|了|一点|,|不|能|每个|品种|都|吃到|,|最后|还是|服务员|mm|说|帮|我们|写量|少|点|,|还是|不错|的|~|越|到|后面|客人|越|多|可能|就|没|之前|服务|那么|周到|,|但|总的来说|基本|没|漏|单|情况|~|说说|味道|吧|,|这|家|店里|所有|的|虾类|都|可以|试试|哦|,|甜虾|很|新鲜|,|什么|虾|色拉|、|盐|烤|大虾|还|有|天|妇罗|炸|虾|都|很|美味|哦|~|刺身|类|虽然|品种|不算|很多|但是|188|的|价格|来说|算|可以|了|,|也|很|新鲜|,|飞鱼籽|超级|好吃|的|,|铁板烧|的话|味道|也|不赖|,|反正|这个|价位|来说|算|不|错|了|~|" 366 2018-10-19 19:01:50 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:02:28 0:17:20 "下马坊地铁口出来稍微走一点点就能看到了,一家很小的店面。环境一般般,室内比较昏暗。服务态度还可以,没带钱出门,点单的时候只能想到用团购了。点了辣子鸡面和豌杂面,辣子鸡面上面是几根青菜和4块鸡肉,然后的然后就木有了,鸡块是凉的,需要先放在面汤里面泡会儿。豌杂面的豌豆有一点点酸酸的感觉,和以前吃得不一样。总体来说口味一般般,对于吃面喜欢先喝汤的我来说,总觉得欠缺点什么。没全部吃完,但是可以填饱肚子了。图一是辣子鸡面,会加香菜,不喜欢香菜的要提前说一下。图二是把鸡块吃完之后的素面条;图三为豌杂面。" "|下|马|坊|地|铁|口|出|来|稍|微|走|一|点|点|就|能|看|到|了|,|一|家|很|小|的|店|面|。|环|境|一|般|般|,|室|内|比|较|昏|暗|。|服|务|态|度|还|可|以|,|没|带|钱|出|门|,|点|单|的|时|候|只|能|想|到|用|团|购|了|。|点|了|辣|子|鸡|面|和|豌|杂|面|,|辣|子|鸡|面|上|面|是|几|根|青|菜|和|4|块|鸡|肉|,|然|后|的|然|后|就|木|有|了|,|鸡|块|是|凉|的|,|需|要|先|放|在|面|汤|里|面|泡|会|儿|。|豌|杂|面|的|豌|豆|有|一|点|点|酸|酸|的|感|觉|,|和|以|前|吃|得|不|一|样|。|总|体|来|说|口|味|一|般|般|,|对|于|吃|面|喜|欢|先|喝|汤|的|我|来|说|,|总|觉|得|欠|缺|点|什|么|。|没|全|部|吃|完|,|但|是|可|以|填|饱|肚|子|了|。|图|一|是|辣|子|鸡|面|,|会|加|香|菜|,|不|喜|欢|香|菜|的|要|提|前|说|一|下|。|图|二|是|把|鸡|块|吃|完|之|后|的|素|面|条|;|图|三|为|豌|杂|面|。|"|"|下马坊|地铁口|出来|稍微|走|一点点|就|能|看到|了|,|一|家|很|小|的|店面|。|环境|一|般般|,|室内|比较|昏暗|。|服务|态度|还|可以|,|没带|钱|出门|,|点|单|的|时候|只能|想到|用|团|购|了|。|点|了|辣子|鸡面|和|豌杂面|,|辣|子鸡|面|上面|是|几|根|青菜|和|4|块|鸡肉|,|然后|的|然后|就|木|有|了|,|鸡块|是|凉|的|,|需要|先|放在|面汤|里面|泡|会儿|。|豌杂面|的|豌豆|有|一点点|酸酸的|感觉|,|和|以前|吃|得|不|一样|。|总体|来说|口味|一般|般|,|对于|吃|面|喜欢|先|喝|汤|的|我|来说|,|总|觉得|欠缺|点|什么|。|没|全部|吃完|,|但是|可以|填饱|肚子|了|。|图|一|是|辣子|鸡面|,|会|加|香菜|,|不|喜欢|香菜|的|要|提前|说|一下|。|图二|是|把|鸡块|吃完|之后|的|素面条|;|图三|为|豌|杂面|。|" 420 2018-10-19 19:05:37 0:20:29 "今天要探的店是位于利时奥特莱斯4楼的阿拉渔歌,位置很好找,交通也便利。我是提前一天预约的,所以到店就有位置了。店面不大,里面的餐位还真不少。进门的那个大烤炉特别吸引人,忍不住凑近多看了几眼。原来今晚的烤鱼都是出自这个“大家伙”。中的霸王餐是78元的一条海鲈鱼,服务员推荐了几个口味,最后选择的人气较旺的:酱香味的。同时还点了2份配菜:豆芽和土豆粉。等了大概10分钟,今晚的主角终于登场了!幸好点了配菜,不然只有烤鱼上的几块土豆,怎么吃。鱼烤的火候倒是不错,外焦里嫩,鱼肉有弹性、肉质滑嫩,但鱼是活杀,不是现杀。5元一份的豆芽少的可怜,只有几根,土豆粉倒是不错,q弹爽滑,有嚼劲。总体评价:客流量不大,基本到了都有餐位的。鱼烤的比较好,调味也到位,但味道放太多了,吃后口干。提个建议:店内的手机信号很差,真心不喜欢。" "|今|天|要|探|的|店|是|位|于|利|时|奥|特|莱|斯|4|楼|的|阿|拉|渔|歌|,|位|置|很|好|找|,|交|通|也|便|利|。|我|是|提|前|一|天|预|约|的|,|所|以|到|店|就|有|位|置|了|。||店|面|不|大|,|里|面|的|餐|位|还|真|不|少|。|进|门|的|那|个|大|烤|炉|特|别|吸|引|人|,|忍|不|住|凑|近|多|看|了|几|眼|。|原|来|今|晚|的|烤|鱼|都|是|出|自|这|个|“|大|家|伙|”|。|中|的|霸|王|餐|是|7|8|元|的|一|条|海|鲈|鱼|,|服|务|员|推|荐|了|几|个|口|味|,|最|后|选|择|的|人|气|较|旺|的|:|酱|香|味|的|。|同|时|还|点|了|2|份|配|菜|:|豆|芽|和|土|豆|粉|。||等|了|大|概|1|0|分|钟|,|今|晚|的|主|角|终|于|登|场|了|!|幸|好|点|了|配|菜|,|不|然|只|有|烤|鱼|上|的|几|块|土|豆|,|怎|么|吃|。|鱼|烤|的|火|候|倒|是|不|错|,|外|焦|里|嫩|,|鱼|肉|有|弹|性|、|肉|质|滑|嫩|,|但|鱼|是|活|杀|,|不|是|现|杀|。|5|元|一|份|的|豆|芽|少|的|可|怜|,|只|有|几|根|,|土|豆|粉|倒|是|不|错|,|q|弹|爽|滑|,|有|嚼|劲|。||总|体|评|价|:|客|流|量|不|大|,|基|本|到|了|都|有|餐|位|的|。|鱼|烤|的|比|较|好|,|调|味|也|到|位|,|但|味|道|放|太|多|了|,|吃|后|口|干|。|提|个|建|议|:|店|内|的|手|机|信|号|很|差|,|真|心|不|喜|欢|。|"|"|今天|要|探|的|店|是|位于|利时|奥特莱斯|4|楼|的|阿拉|渔歌|,|位置|很|好找|,|交通|也|便利|。|我|是|提前|一|天|预约|的|,|所以|到|店|就|有|位置|了|。|店面|不大|,|里面|的|餐位|还|真|不少|。|进门|的|那个|大|烤炉|特别|吸引|人|,|忍不住|凑近|多|看|了|几|眼|。|原来|今晚|的|烤鱼|都|是|出自|这个|“|大家伙|”|。|中|的|霸王|餐|是|78|元|的|一|条|海|鲈鱼|,|服务员|推荐|了|几|个|口味|,|最后|选择|的|人气|较|旺|的|:|酱|香味|的|。|同时|还|点|了|2|份|配菜|:|豆芽|和|土豆粉|。|等|了|大概|10|分钟|,|今晚|的|主角|终于|登场|了|!|幸好|点|了|配菜|,|不然|只|有|烤鱼|上|的|几|块|土豆|,|怎么|吃|。|鱼|烤的|火候|倒是|不错|,|外焦|里嫩|,|鱼肉|有|弹性|、|肉质|滑嫩|,|但|鱼|是|活杀|,|不是|现杀|。|5|元|一|份|的|豆芽|少|的|可怜|,|只有|几|根|,|土豆粉|倒是|不错|,|q弹|爽滑|,|有|嚼劲|。|总体|评价|:|客流量|不|大|,|基本|到|了|都|有|餐位|的|。|鱼|烤的|比较|好|,|调味|也|到位|,|但|味道|放|太|多|了|,|吃|后|口干|。|提|个|建议|:|店|内|的|手机|信号|很|差|,|真心|不|喜欢|。|" 616 2018-10-19 19:05:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:08:54 0:23:46 "他家有很多分店感觉一下子冒出来的是的以前没怎么见到过现在随便去哪都能看到这家也是我新发现的不知是新开还是老店他家面分很多种什么毛细二细很多种以前都吃的普通的今天尝了毛细的特别细了了还有很粗的那种跟面片是的没见人吃过图片倒是见过凉菜就是普通面馆都有的不算特色了一小盘说是可以拚两种量不大但是也够吃了面拉出来很快吃的时候看见一个大老爷们要了两碗小姑娘的话一碗都吃不了辣椒油也还不错不算辣他家单纯说面的话微微偏贵忘了拍照片了对了点的双人套餐没吃完" "|他|家|有|很|多|分|店||感|觉|一|下|子|冒|出|来|的|是|的||以|前|没|怎|么|见|到|过||现|在|随|便|去|哪|都|能|看|到||这|家|也|是|我|新|发|现|的||不|知|是|新|开|还|是|老|店||他|家|面|分|很|多|种||什|么|毛|细||二|细||很|多|种||以|前|都|吃|的|普|通|的||今|天|尝|了|毛|细|的||特|别|细|了|了||还|有|很|粗|的|那|种|跟|面|片|是|的||没|见|人|吃|过||图|片|倒|是|见|过||凉|菜|就|是|普|通|面|馆|都|有|的||不|算|特|色|了||一|小|盘||说|是|可|以|拚|两|种||量|不|大||但|是|也|够|吃|了||面|拉|出|来|很|快||吃|的|时|候|看|见|一|个|大|老|爷|们|要|了|两|碗||小|姑|娘|的|话|一|碗|都|吃|不|了||辣|椒|油||也|还|不|错||不|算|辣||他|家|单|纯|说|面|的|话|微|微|偏|贵||忘|了|拍|照|片|了||对|了|点|的|双|人|套|餐||没|吃|完|"|"|他|家有|很多|分店|感觉|一|下子|冒出|来|的|是的|以前|没|怎么|见到|过|现在|随便|去|哪|都|能|看到|这|家|也|是|我|新|发现|的|不知|是|新开|还是|老店|他|家|面分|很多|种|什么|毛细|二|细|很多|种|以前|都|吃|的|普通|的|今天|尝|了|毛细|的|特别|细了|了|还有|很|粗|的|那|种|跟|面片|是|的|没|见人|吃|过|图片|倒是|见|过|凉菜|就|是|普通|面馆|都|有的|不算|特色|了|一|小|盘|说|是|可以|拚|两|种|量|不|大|但是|也|够|吃|了|面|拉|出来|很|快|吃|的|时候|看见|一|个|大|老爷们|要|了|两|碗|小|姑娘|的话|一|碗|都|吃|不|了|辣椒油|也|还|不错|不|算|辣|他|家|单纯|说|面的|话|微微|偏|贵|忘|了|拍|照片|了|对了|点|的|双人|套餐|没|吃完|" 415 2018-10-19 19:09:09 0:03:37 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 19:12:08 0:27:00 "和很久没见的高中同学聚会,都很喜欢猫咪,上次约在江南西的某家猫咪主题餐厅,感觉都很好,能和可爱的猫咪亲密接触棒棒哒,于是这次也准备约到猫咪主题的餐厅一边吃饭一边逗猫,在大众点评上看到这家meow1306猫小窝评价看上去都不错,于是愉快地定下了午餐之约(下午还要去买买买~),预定了12点用餐,惭愧地迟到了半小时(友人迷路了半小时呵呵,其实就是体育中心a出口出去直走到路口左转30米左右就到了╮(╯▽╰)╭)幸好到达之时仍然有空位,安全入座。先说说#环境#,空间蛮大的,全店铺木地板,进门需要换鞋+进行手部消毒,位置刚好正对着太古汇,边上是一排超大落地玻璃窗,能看到体育西路的车水马龙,采光视线都不错,墙壁上的装饰也很用心,我们位置后面是一墙的猫咪春游壁画,樱花之下猫咪们愉快用餐的姿态萌萌哒~座椅用的是矮沙发+配套的木质桌子,沙发满软的,刚好是猫咪很容易能跳上去的高度,桌子的高度也刚刚好,很方便进餐,有一股家的味道,很闲适,最赞的是每张桌子的间隔都很宽敞,坐着一点都不压抑,聊天也不会很受隔壁的影响,不错说完环境,就轮到最核心的#猫咪#了,与这里宽敞的环境相比,猫咪的数量就完全不成正比,只有小猫六七只,有两只美短(估计还是兄弟来着),还有一直纯白的波斯猫、一只脸黑的暹罗猫,两只扁脸咖啡猫(其中一只脖子套了一个蝴蝶结,另外一只又胖又懒,全程在装地毯),还有一只纯黑的小奶猫(没认出品种,但是身娇体柔易推倒有木有),一只配一桌都嫌不够,不过猫猫都很干净、很乖巧,能抱(不过下一秒就逃),身上也没有什么味道,调教得还算不错。说完猫咪,再说说食物出品,只能说重点果然在猫,食物就一般般啦,#味道#还可以,但是分量真心少,我们点了一个爆浆鸡腿肉饭(28)、一个番茄肉酱意粉(36)、一壶花果茶(玫瑰花+苹果花36),一共100,团购后88,人均44。先说我的鸡腿饭,味道还ok,是切开的小块鸡腿肉+腌萝卜+洋葱煮的肉酱拌饭,鸡腿肉虽不多但肉都满嫩的,下饭;朋友的番茄肉酱意粉那个分量感觉三口就能吃完,偷尝了一根味道不错,就是性价比很低;花果茶就更坑爹了,壶里面的茶叶花蕾就那么两三颗可怜的漂浮着,茶水谈而无味,根本不值得这个价,差评。最后稍稍提一下#服务#除了最开始的给我们喷一下手+拿菜单(居然是用牛皮纸手写的)给我们点下菜几乎全程自助,没有热情交谈的店主给我们介绍店里的猫咪,也没有店员给我们拿逗猫棒、猫玩具,态度冷淡,在最后快离开的时候,还有一个女的一边在给气球打气(据说2点有包场活动估计是布置场地的工作人员),一边用炒鸡可怕的眼神盯着我们,吓得我们赶紧去结账。总体来说环境很不错,但奔着去看猫咪的可能有点失望了,食物的性价比也很低,不过环境蛮安静的,比较适合去下午茶小聚,顺便逗逗猫咪,据说还有鸡尾酒,晚上去的可以尝尝" "|和|很|久|没|见|的|高|中|同|学|聚|会|,|都|很|喜|欢|猫|咪|,|上|次|约|在|江|南|西|的|某|家|猫|咪|主|题|餐|厅|,|感|觉|都|很|好|,|能|和|可|爱|的|猫|咪|亲|密|接|触|棒|棒|哒|,|于|是|这|次|也|准|备|约|到|猫|咪|主|题|的|餐|厅|一|边|吃|饭|一|边|逗|猫|,|在|大|众|点|评|上|看|到|这|家|m|e|o|w|1|3|0|6|猫|小|窝|评|价|看|上|去|都|不|错|,|于|是|愉|快|地|定|下|了|午|餐|之|约|(|下|午|还|要|去|买|买|买|~|)|,|预|定|了|1|2|点|用|餐|,|惭|愧|地|迟|到|了|半|小|时|(|友|人|迷|路|了|半|小|时|呵|呵|,|其|实|就|是|体|育|中|心|a|出|口|出|去|直|走|到|路|口|左|转|3|0|米|左|右|就|到|了|╮|(|╯|▽|╰|)|╭|)|幸|好|到|达|之|时|仍|然|有|空|位|,|安|全|入|座|。||先|说|说|#|环|境|#|,|空|间|蛮|大|的|,|全|店|铺|木|地|板|,|进|门|需|要|换|鞋|+|进|行|手|部|消|毒|,|位|置|刚|好|正|对|着|太|古|汇|,|边|上|是|一|排|超|大|落|地|玻|璃|窗|,|能|看|到|体|育|西|路|的|车|水|马|龙|,|采|光|视|线|都|不|错|,|墙|壁|上|的|装|饰|也|很|用|心|,|我|们|位|置|后|面|是|一|墙|的|猫|咪|春|游|壁|画|,|樱|花|之|下|猫|咪|们|愉|快|用|餐|的|姿|态|萌|萌|哒|~|座|椅|用|的|是|矮|沙|发|+|配|套|的|木|质|桌|子|,|沙|发|满|软|的|,|刚|好|是|猫|咪|很|容|易|能|跳|上|去|的|高|度|,|桌|子|的|高|度|也|刚|刚|好|,|很|方|便|进|餐|,|有|一|股|家|的|味|道|,|很|闲|适|,|最|赞|的|是|每|张|桌|子|的|间|隔|都|很|宽|敞|,|坐|着|一|点|都|不|压|抑|,|聊|天|也|不|会|很|受|隔|壁|的|影|响|,|不|错||说|完|环|境|,|就|轮|到|最|核|心|的|#|猫|咪|#|了|,|与|这|里|宽|敞|的|环|境|相|比|,|猫|咪|的|数|量|就|完|全|不|成|正|比|,|只|有|小|猫|六|七|只|,|有|两|只|美|短|(|估|计|还|是|兄|弟|来|着|)|,|还|有|一|直|纯|白|的|波|斯|猫|、|一|只|脸|黑|的|暹|罗|猫|,|两|只|扁|脸|咖|啡|猫|(|其|中|一|只|脖|子|套|了|一|个|蝴|蝶|结|,|另|外|一|只|又|胖|又|懒|,|全|程|在|装|地|毯|)|,|还|有|一|只|纯|黑|的|小|奶|猫|(|没|认|出|品|种|,|但|是|身|娇|体|柔|易|推|倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不|够|,|不|过|猫|猫|都|很|干|净|、|很|乖|巧|,|能|抱|(|不|过|下|一|秒|就|逃|)|,|身|上|也|没|有|什|么|味|道|,|调|教|得|还|算|不|错|。||说|完|猫|咪|,|再|说|说|食|物|出|品|,|只|能|说|重|点|果|然|在|猫|,|食|物|就|一|般|般|啦|,|#|味|道|#|还|可|以|,|但|是|分|量|真|心|少|,|我|们|点|了|一|个|爆|浆|鸡|腿|肉|饭|(|2|8|)|、|一|个|番|茄|肉|酱|意|粉|(|3|6|)|、|一|壶|花|果|茶|(|玫|瑰|花|+|苹|果|花|3|6|)|,|一|共|1|0|0|,|团|购|后|8|8|,|人|均|4|4|。|先|说|我|的|鸡|腿|饭|,|味|道|还|o|k|,|是|切|开|的|小|块|鸡|腿|肉|+|腌|萝|卜|+|洋|葱|煮|的|肉|酱|拌|饭|,|鸡|腿|肉|虽|不|多|但|肉|都|满|嫩|的|,|下|饭|;|朋|友|的|番|茄|肉|酱|意|粉|那|个|分|量|感|觉|三|口|就|能|吃|完|,|偷|尝|了|一|根|味|道|不|错|,|就|是|性|价|比|很|低|;|花|果|茶|就|更|坑|爹|了|,|壶|里|面|的|茶|叶|花|蕾|就|那|么|两|三|颗|可|怜|的|漂|浮|着|,|茶|水|谈|而|无|味|,|根|本|不|值|得|这|个|价|,|差|评|。||最|后|稍|稍|提|一|下|#|服|务|#|除|了|最|开|始|的|给|我|们|喷|一|下|手|+|拿|菜|单|(|居|然|是|用|牛|皮|纸|手|写|的|)|给|我|们|点|下|菜|几|乎|全|程|自|助|,|没|有|热|情|交|谈|的|店|主|给|我|们|介|绍|店|里|的|猫|咪|,|也|没|有|店|员|给|我|们|拿|逗|猫|棒|、|猫|玩|具|,|态|度|冷|淡|,|在|最|后|快|离|开|的|时|候|,|还|有|一|个|女|的|一|边|在|给|气|球|打|气|(|据|说|2|点|有|包|场|活|动|估|计|是|布|置|场|地|的|工|作|人|员|)|,|一|边|用|炒|鸡|可|怕|的|眼|神|盯|着|我|们|,|吓|得|我|们|赶|紧|去|结|账|。||总|体|来|说|环|境|很|不|错|,|但|奔|着|去|看|猫|咪|的|可|能|有|点|失|望|了|,|食|物|的|性|价|比|也|很|低|,|不|过|环|境|蛮|安|静|的|,|比|较|适|合|去|下|午|茶|小|聚|,|顺|便|逗|逗|猫|咪|,|据|说|还|有|鸡|尾|酒|,|晚|上|去|的|可|以|尝|尝|"|"|和|很久|没|见|的|高中|同学|聚会|,|都|很|喜欢|猫咪|,|上次|约在|江南|西|的|某|家|猫咪|主题|餐厅|,|感觉|都|很|好|,|能|和|可爱|的|猫咪|亲密|接触|棒棒哒|,|于是|这|次|也|准备|约|到|猫咪|主题|的|餐厅|一边|吃饭|一边|逗|猫|,|在|大众|点评|上|看到|这|家|meow|1306|猫|小窝|评价|看上去|都|不错|,|于是|愉快|地|定下|了|午餐|之|约|(|下午|还|要|去|买|买|买|~|)|,|预定|了|12点|用餐|,|惭愧|地|迟到|了|半|小时|(|友人|迷路|了|半|小时|呵呵|,|其实|就是|体育|中心|a|出口|出去|直|走到|路口|左转|30|米|左右|就|到|了|╮|(|╯▽╰|)|╭|)|幸好|到达|之时|仍然|有|空位|,|安全|入座|。|先|说说|#|环境|#|,|空间|蛮大|的|,|全|店铺|木|地板|,|进门|需要|换|鞋|+|进行|手部|消毒|,|位置|刚好|正对着|太古汇|,|边上|是|一|排|超大|落地|玻璃窗|,|能|看到|体育|西路|的|车水马龙|,|采光|视线|都|不错|,|墙壁|上|的|装饰|也|很|用心|,|我们|位置|后面|是|一|墙|的|猫咪|春游|壁画|,|樱花|之下|猫咪们|愉快|用餐|的|姿态|萌萌哒|~|座椅|用|的|是|矮沙发|+|配套|的|木质|桌子|,|沙发|满|软|的|,|刚好|是|猫咪|很|容易|能|跳上|去|的|高度|,|桌子|的|高度|也|刚刚|好|,|很|方便|进餐|,|有|一|股|家|的|味道|,|很|闲适|,|最|赞|的|是|每|张|桌子|的|间隔|都|很|宽敞|,|坐|着|一点|都|不|压抑|,|聊天|也|不|会|很|受|隔壁|的|影响|,|不错|说完|环境|,|就|轮到|最|核心|的|#|猫咪|#|了|,|与|这里|宽敞|的|环境|相比|,|猫咪|的|数量|就|完全|不|成|正比|,|只有|小猫|六七|只|,|有|两|只|美|短|(|估计|还是|兄弟|来着|)|,|还有|一直|纯白|的|波斯猫|、|一|只|脸|黑|的|暹罗猫|,|两|只|扁|脸|咖啡|猫|(|其中|一|只|脖子|套|了|一|个|蝴蝶|结|,|另外|一|只|又|胖|又|懒|,|全程|在|装|地毯|)|,|还有|一|只|纯|黑|的|小奶|猫|(|没|认出|品种|,|但是|身娇体|柔易|推倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不够|,|不过|猫|猫|都|很|干净|、|很|乖巧|,|能|抱|(|不过|下|一|秒|就|逃|)|,|身上|也|没有|什么|味道|,|调教|得|还算|不错|。|说完|猫咪|,|再|说说|食物|出品|,|只能|说|重点|果然|在|猫|,|食物|就|一般|般|啦|,|#|味道|#|还|可以|,|但是|分量|真心|少|,|我们|点|了|一|个|爆浆|鸡腿|肉饭|(|28|)|、|一|个|番茄|肉酱|意粉|(|36|)|、|一|壶|花|果茶|(|玫瑰花|+|苹果花|36|)|,|一共|100|,|团购|后|88|,|人均|44|。|先|说|我|的|鸡腿|饭|,|味道|还|ok|,|是|切开|的|小|块|鸡腿|肉|+|腌萝卜|+|洋葱|煮|的|肉酱|拌饭|,|鸡腿|肉|虽|不|多|但|肉|都|满|嫩的|,|下饭|;|朋友|的|番茄|肉酱|意粉|那个|分量|感觉|三|口|就|能|吃完|,|偷|尝|了|一|根|味道|不错|,|就是|性价比|很低|;|花果|茶|就|更|坑|爹|了|,|壶|里面|的|茶叶|花蕾|就|那么|两|三|颗|可怜|的|漂浮|着|,|茶水|谈|而|无味|,|根本|不|值得|这个|价|,|差评|。|最后|稍稍|提|一下|#|服务|#|除了|最开始|的|给|我们|喷一|下手|+|拿|菜单|(|居然|是|用|牛皮纸|手写|的|)|给|我们|点|下|菜|几乎|全程|自助|,|没有|热情|交谈|的|店主|给|我们|介绍|店里|的|猫咪|,|也|没有|店员|给|我们|拿|逗|猫|棒|、|猫|玩具|,|态度|冷淡|,|在|最后|快|离开|的|时候|,|还有|一|个|女的|一边|在|给|气球|打气|(|据说|2|点|有|包场|活动|估计|是|布置|场地|的|工作|人员|)|,|一边|用|炒|鸡|可怕|的|眼神|盯|着|我们|,|吓|得|我们|赶紧|去|结账|。|总体|来说|环境|很|不错|,|但|奔着|去|看|猫咪|的|可能|有点|失望|了|,|食物|的|性价比|也|很|低|,|不过|环境|蛮|安静|的|,|比较|适合|去|下午|茶|小聚|,|顺便|逗逗|猫咪|,|据说|还有|鸡尾酒|,|晚上|去|的|可以|尝尝|" 1962 2018-10-19 19:12:25 0:06:53 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 19:15:18 0:30:10 "位置确实比较隐蔽,从美甲店上二楼就是,门口有个不大的招牌,幸好看了大家的点评得以顺利找到。首先说环境,装修让人很舒服,有吧台,也有包间。今天来给爸爸过生日,订了包间,能坐的舒服些,但之前不清楚包间有最低消费,老板很好,为我们破例了一次,特别感谢!菜品很精致,量是日料店一贯的比较秀气,但胜在质量,味道都很好,一看就是用料上乘。寿喜锅菜单上没有,却在墙上挂的推荐菜单中看到了,必点,要的牛肉锅。我是一直喜欢寿喜锅的,让我来尝一尝,鉴定一下。好吃,真的是很好吃,肥牛蘸着生鸡蛋,滑滑嫩嫩,真的完胜我吃过的除将太无二外的其他家,在我的排名中和将太无二并列。大家推荐的明太子鸡翅饺子和明太子黄油土豆都点了,味道都很赞,主要是比较新颖,超满意的一餐!服务也加分不少哦!" "|位|置|确|实|比|较|隐|蔽|,|从|美|甲|店|上|二|楼|就|是|,|门|口|有|个|不|大|的|招|牌|,|幸|好|看|了|大|家|的|点|评|得|以|顺|利|找|到|。|首|先|说|环|境|,|装|修|让|人|很|舒|服|,|有|吧|台|,|也|有|包|间|。|今|天|来|给|爸|爸|过|生|日|,|订|了|包|间|,|能|坐|的|舒|服|些|,|但|之|前|不|清|楚|包|间|有|最|低|消|费|,|老|板|很|好|,|为|我|们|破|例|了|一|次|,|特|别|感|谢|!|菜|品|很|精|致|,|量|是|日|料|店|一|贯|的|比|较|秀|气|,|但|胜|在|质|量|,|味|道|都|很|好|,|一|看|就|是|用|料|上|乘|。|寿|喜|锅|菜|单|上|没|有|,|却|在|墙|上|挂|的|推|荐|菜|单|中|看|到|了|,|必|点|,|要|的|牛|肉|锅|。|我|是|一|直|喜|欢|寿|喜|锅|的|,|让|我|来|尝|一|尝|,|鉴|定|一|下|。|好|吃|,|真|的|是|很|好|吃|,|肥|牛|蘸|着|生|鸡|蛋|,|滑|滑|嫩|嫩|,|真|的|完|胜|我|吃|过|的|除|将|太|无|二|外|的|其|他|家|,|在|我|的|排|名|中|和|将|太|无|二|并|列|。|大|家|推|荐|的|明|太|子|鸡|翅|饺|子|和|明|太|子|黄|油|土|豆|都|点|了|,|味|道|都|很|赞|,|主|要|是|比|较|新|颖|,|超|满|意|的|一|餐|!|服|务|也|加|分|不|少|哦|!|"|"|位置|确实|比较|隐蔽|,|从|美|甲|店|上|二|楼|就是|,|门口|有|个|不|大|的|招牌|,|幸好|看|了|大家|的|点评|得以|顺利|找到|。|首先|说|环境|,|装修|让|人|很|舒服|,|有|吧台|,|也|有|包间|。|今天|来给|爸爸|过|生日|,|订|了|包间|,|能|坐|的|舒服|些|,|但|之前|不|清楚|包间|有|最低|消费|,|老板|很|好|,|为|我们|破例|了|一|次|,|特别|感谢|!|菜品|很|精致|,|量|是|日|料|店|一贯|的|比较|秀气|,|但|胜|在|质量|,|味道|都|很|好|,|一|看|就是|用料|上乘|。|寿喜|锅|菜单|上|没有|,|却|在|墙|上|挂|的|推荐|菜单|中|看到|了|,|必点|,|要|的|牛肉锅|。|我|是|一直|喜欢|寿喜锅|的|,|让|我|来尝|一|尝|,|鉴定|一下|。|好吃|,|真的|是|很|好吃|,|肥牛蘸|着|生|鸡蛋|,|滑滑嫩嫩|,|真的|完胜|我|吃|过|的|除|将|太|无|二|外|的|其他|家|,|在|我|的|排名|中|和|将|太|无|二|并列|。|大家|推荐|的|明|太子|鸡翅|饺子|和|明|太子|黄油|土豆|都|点|了|,|味道|都|很|赞|,|主要|是|比较|新颖|,|超|满意|的|一|餐|!|服务|也|加分|不少|哦|!|" 571 2018-10-19 19:15:39 0:10:07 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 19:26:30 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 ================================================ FILE: projects/ai2018/sentiment/prepare/to-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-chars.py # \author chenghuige # \date 2018-10-28 08:37:28.846557 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import six assert six.PY3 import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback ifile = sys.argv[1] ofile = sys.argv[2] ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: l = [] for ch in filter.filter(contents[i]): l.append(ch) print(' '.join(l), file=out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare/to-norm.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import gezi key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1]) contents = df[key].values for i in range(len(contents)): scontent = gezi.normalize(contents[i]) if scontent != contents[i]: print('------------------', i) print(contents[i]) print(scontent) contents[i] = scontent df[key] = contents df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare/to-simplify.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tqdm import tqdm import pandas as pd import gezi import traceback import six assert six.PY2, 'must using py2 env to do simplify' key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1], lineterminator='\n') contents = df[key].values num_modified = 0 num_errs = 0 for i in tqdm(range(len(contents)), ascii=True): try: scontent = gezi.to_simplify(contents[i]) except Exception: num_errs += 1 print(traceback.format_exc()) continue if scontent != contents[i]: # print('------------------', i) # print(contents[i]) # print(scontent) contents[i] = scontent num_modified += 1 df[key] = contents print('modify ratio', num_modified / len(df)) print('num_errs', num_errs) df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare.test/README.md ================================================ first sh ./gen-vocab.sh to get vocab.txt then using like vocab-mincount.. to get vocab.5k.txt then merge with all chars from vocab.txt using vocab-add-char.py to get vocab.5k.chars.txt this is used for word embedding train then for canyin and dianping just use ./gen-mix-seg-canyin.py ./gen-char-seg-canyin.py ... not use ./gen-seg-canyin.py for this project for we do not want to consider more words not used here do also for dianping and train/valid/test data we will use all these data as word embedding pretrain sh ./gen-vocab-v2.sh will use simple just basic seg NOTICE this is depreceated for v2 just use same vocab as v1, v2 only diff when gen tfrecord will not feed single and will has char embedding since v2 word + char concat prove to be better then seg basic + single so try to further try seperate word and char embedding as V3 the script ./run-noemb-v3.sh is the same as ./run-noemb-v2.sh be sure you have char_vocab.txt under tfrecord dir 3 seg method 1.char char only 2.word.feed basic + digit + feed_sginle only consider first 6k top freq word 3.word.basic basic now change to below process 1. seg for train+valid+test 2. get vocab from train+valid+test 3. generate tfrecord using seg result and vocab use 4 seg method with below name 1. char 2. mix(jieba) 3. word (jieba pos, should be word.jieba) 4. besg(word by phrase bseg should be word.besg) ================================================ FILE: projects/ai2018/sentiment/prepare.test/__init__.py ================================================ import projects.ai2018.sentiment.prepare.filter ================================================ FILE: projects/ai2018/sentiment/prepare.test/config ================================================ data_dir=./mount/data/ai2018/sentiment/ ================================================ FILE: projects/ai2018/sentiment/prepare.test/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-10-17 14:44:21.024368 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('use_char', False, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_integer('word_limit', 3000, '') #flags.DEFINE_bool('use_pos', False, '') ================================================ FILE: projects/ai2018/sentiment/prepare.test/embeddings/fasttext/run.sh ================================================ #!/usr/bin/env bash # # Copyright (c) 2016-present, Facebook, Inc. # All rights reserved. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. An additional grant # of patent rights can be found in the PATENTS file in the same directory. # RESULTDIR=./ DATADIR=./ mkdir -p "${RESULTDIR}" mkdir -p "${DATADIR}" make ./fasttext skipgram -input "${DATADIR}"/text -output "${RESULTDIR}"/text -lr 0.025 -dim 300 \ -ws 5 -epoch 10 -minCount 20 -neg 5 -loss ns -bucket 2000000 \ -minn 2 -maxn 3 -thread 4 -t 1e-4 -lrUpdateRate 100 cut -f 1,2 "${DATADIR}"/rw/rw.txt | awk '{print tolower($0)}' | tr '\t' '\n' > "${DATADIR}"/queries.txt cat "${DATADIR}"/queries.txt | ./fasttext print-word-vectors "${RESULTDIR}"/text.bin > "${RESULTDIR}"/vectors.txt python eval.py -m "${RESULTDIR}"/vectors.txt -d "${DATADIR}"/rw/rw.txt ================================================ FILE: projects/ai2018/sentiment/prepare.test/embeddings/glove/run.sh ================================================ #!/bin/bash set -e # Makes programs, downloads sample data, trains a GloVe model, and then evaluates it. # One optional argument can specify the language used for eval script: matlab, octave or [default] python make # 8 iter nan CORPUS=text VOCAB_FILE=vocab.txt COOCCURRENCE_FILE=cooccurrence.bin COOCCURRENCE_SHUF_FILE=cooccurrence.shuf.bin BUILDDIR=build SAVE_FILE=vectors VERBOSE=2 MEMORY=4.0 VOCAB_MIN_COUNT=20 VECTOR_SIZE=300 MAX_ITER=15 WINDOW_SIZE=15 BINARY=2 NUM_THREADS=8 X_MAX=10 echo "$ $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE" $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE echo "$ $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE" $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE echo "$ $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE" $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE echo "$ $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE" $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE echo "$ python eval/python/evaluate.py" python eval/python/evaluate.py ================================================ FILE: projects/ai2018/sentiment/prepare.test/filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter.py # \author chenghuige # \date 2018-09-14 21:55:52.069104 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('simplify', False, '') import sys import os import gezi def filter_duplicate_space(text): return ''.join([x for i, x in enumerate(text) if not (i < len(text) - 1 and not(x.strip()) and not(text[i + 1].strip()))]) # # def translate_emotion(word): # # dic = { # # '🍲' : '火锅', # # '🌶️' : '辣' # # } # # if word in dic: # # return dic[word] # # return word # def translate_emotions(text): # return text.replace('🍲', '火锅').replace('🌶️', '辣') def filter(x): x = x.strip('"') x = filter_duplicate_space(x) x = gezi.remove_duplicate(x) x = gezi.filter_quota(x).replace('\r', '\x01').replace('\n', '\x02').replace('', '\x01').replace('', '\x02').replace('\t', ' ').replace(' ', '\x03') # # So here actually always fals as is done in preprocess using py2 # if FLAGS.simplify: # # to lower, to simplify, to half # x = gezi.to_simplify(x) #x = translate_emotions(x) # TODO if needed try to find case usefull or not I think especally for sentiment not reading, lower is ok not loose important info like NIKE x = x.lower() return x ================================================ FILE: projects/ai2018/sentiment/prepare.test/find-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-chars.py # \author chenghuige # \date 2018-10-01 20:35:40.158875 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from projects.ai2018.sentiment.prepare import filter df = pd.read_csv('/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv') chars = set() for comment in df['content']: comment = filter.filter(comment) for w in comment: if w not in chars: print(w) chars.add(w) ================================================ FILE: projects/ai2018/sentiment/prepare.test/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-canyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./raw_comment_v2.csv') print(len(df)) df2 = pd.DataFrame() ids = ['c{}'.format(i) for i in range(len(df))] contents = df['content'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) labels = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['score'] label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -2 labels.append(label) df2['others_overall_experience'] = labels df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./canyin.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-canyin.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os files = [ './mount/data/ai2018/sentiment/train.csv', './mount/data/ai2018/sentiment/valid.csv', './mount/data/ai2018/sentiment/test.csv' ] import pandas as pd import filter for infile in files: df = pd.read_csv(infile) for row in df.iterrows(): content = filter.filter(row[1][1]) print(content) ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-dianping.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./ratings.csv') print(len(df)) df2 = pd.DataFrame() ids = ['d{}'.format(i) for i in range(len(df))] contents = df['comment'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) def score2class(score): label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -1 return label labels = [] labels_env = [] labels_flavor = [] labels_service = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['rating'] score_env = row['rating_env'] score_flavor = row['rating_flavor'] score_service = row['rating_service'] labels.append(score2class(score)) labels_env.append(score2class(score_env)) labels_flavor.append(score2class(score_flavor)) labels_service.append(score2class(score_service)) df2['others_overall_experience'] = labels df2['environment_decoration'] = labels_env df2['dish_taste'] = labels_flavor df2['service_waiters_attitude'] = labels_service df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./dianping.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-dianping.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-lm-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/my-embedding/Glove-sentiment-jieba/valid', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft/vocab.txt', 'vocabulary txt file') flags.DEFINE_integer('threads', None, '') flags.DEFINE_string('source', 'dianping', 'dianping or baike or zhidao or zhihu') flags.DEFINE_integer('max_sentence_len', 20, '') flags.DEFINE_string('tfrecord_dir', 'tfrecord', '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) vocab = None char_vocab = None def build_features(file_): if not os.path.isfile(file_): return file_name = os.path.basename(file_) assert os.path.isdir(FLAGS.input) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) out_file = os.path.join(dir_ , '{}/{}/{}.record'.format(FLAGS.tfrecord_dir, mode, file_name)) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('infile', file_, 'out_file', out_file) # if os.path.exists(out_file): # return max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for line in tqdm(open(file_), total=1e6, ascii=True): try: line = line.rstrip('\n') line = filter.filter(line) words = line.split(' ') words = gezi.add_start_end(words) words_list = gezi.break_sentence(words, FLAGS.max_sentence_len) for words in words_list: content = ' '.join(words) content_ids = [vocab.id(x) for x in words] if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) else: char_ids = [0] feature = { 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content), 'char': melt.int64_feature(char_ids), 'source': melt.bytes_feature(FLAGS.source), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): FLAGS.word_limit = 2000 global vocab, char_vocab vocab = gezi.Vocabulary(FLAGS.vocab_) print('vocab file', FLAGS.vocab_, 'vocab size', vocab.size()) if FLAGS.use_char: char_vocab = gezi.Vocabulary(FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt')) files = glob.glob(FLAGS.input + '/*') pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(build_features, files) pool.close() pool.join() # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) os.system('mkdir -p %s/%s/%s' % (dir_, FLAGS.tfrecord_dir, mode)) out_file = os.path.join(dir_, '{}/{}/num_records.txt'.format(FLAGS.tfrecord_dir, mode)) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-mix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-mix-vocab.py # \author chenghuige # \date 2018-10-23 06:48:14.182012 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os vocab_file = sys.argv[1] char_vocab_file = sys.argv[2] num_words = int(sys.argv[3]) words = set() for i, line in enumerate(open(vocab_file)): if i == num_words: break word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') for line in open(char_vocab_file): ch, count = line.rstrip('\n').split('\t') if ch not in words: print(ch, count, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/sentiment/valid.csv', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', 7, '10 or 5?') flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', True, '') flags.DEFINE_bool('augument', False, '') flags.DEFINE_string('mode', None, '') flags.DEFINE_string('mode_', None, '') flags.DEFINE_bool('ignore_start_end', False, 'If you have not remove start and end quota before,you can filter here') flags.DEFINE_bool('add_start_end_', True, '') flags.DEFINE_bool('has_position', False, '') flags.DEFINE_bool('fixed_vocab', False, '') flags.DEFINE_string('start_mark', '', '') flags.DEFINE_string('end_mark', '', '') flags.DEFINE_string('unk_word', '', '') flags.DEFINE_bool('word_only', False, '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi #assert gezi.env_has('JIEBA_POS') from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None vocab = None char_vocab = None pos_vocab = None ner_vocab = None seg_result = None pos_result = None ner_result = None def get_mode(path): mode = 'train' if 'train' in path: mode ='train' elif 'valid' in path: mode = 'train' elif 'test' in path: mode = 'test' elif '.pm' in path: mode = 'pm' elif 'trans' in path: mode = 'trans' elif 'deform' in path: mode = 'deform' elif 'canyin' in path: mode = 'canyin' elif 'dianping' in path: mode = 'dianping' if FLAGS.augument: mode = 'aug.' + mode if FLAGS.mode: mode = FLAGS.mode return mode def build_features(index): mode = get_mode(FLAGS.input) start_index = FLAGS.start_index out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: num_records = 1 start, end = gezi.get_fold(total, num_records, index) print('total', total, 'infile', FLAGS.input, 'out_file', out_file) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in tqdm(range(start, end), ascii=True): try: #row = df.iloc[i] row = df[i] id = str(row[0]) if seg_result: if id not in seg_result: print('id %s ot found in seg_result' % id) continue words = seg_result[id] if FLAGS.add_start_end_: words = gezi.add_start_end(words, FLAGS.start_mark, FLAGS.end_mark) if pos_result: pos = pos_result[id] if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) if ner_result: ner = ner_result[id] if FLAGS.add_start_end_: ner = gezi.add_start_end(ner) if start_index > 0: id == 't' + id content = row[1] content_ori = content content = filter.filter(content) #label = list(row[2:]) label = [-2] * 20 #label = [x + 2 for x in label] #num_labels = len(label) if not seg_result: content_ids, words = text2ids_(content, preprocess=False, return_words=True) assert len(content_ids) == len(words) else: content_ids = [vocab.id(x) for x in words] #print(words, content_ids) #exit(0) if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) #if len(content_ids) > FLAGS.word_limit: # print(id, content) # if mode not in ['test', 'valid']: # continue #if len(content_ids) < 5 and mode not in ['test', 'valid']: # continue content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) if np.sum(char_ids) == 0: print('------------------------bad id', id) print(content_ids) print(words) exit(0) else: char_ids = [0] if pos_vocab: assert pos pos = pos[:FLAGS.word_limit] pos_ids = [pos_vocab.id(x) for x in pos] else: pos_ids = [0] if ner_vocab: assert ner if pos_vocab: assert len(pos) == len(ner) ner = ner[:FLAGS.word_limit] ner_ids = [ner_vocab.id(x) for x in ner] else: ner_ids = [0] wlen = [len(word) for word in words] feature = { 'id': melt.bytes_feature(id), 'label': melt.int64_feature(label), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content_ori), 'char': melt.int64_feature(char_ids), 'pos': melt.int64_feature(pos_ids), # might also be postion info for mix seg 'ner': melt.int64_feature(ner_ids), 'wlen': melt.int64_feature(wlen), 'source': melt.bytes_feature(mode), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): mode = get_mode(FLAGS.input) assert FLAGS.use_fold #text2ids.init(FLAGS.vocab_) global vocab, char_vocab, pos_vocab, ner_vocab, seg_result, pos_result, ner_result #vocab = text2ids.vocab vocab = gezi.Vocabulary(FLAGS.vocab_, fixed=FLAGS.fixed_vocab, unk_word=FLAGS.unk_word) print('vocab size:', vocab.size()) char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) print('char vocab size:', char_vocab.size()) pos_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'pos_vocab.txt') if os.path.exists(pos_vocab_file): pos_vocab = Vocabulary(pos_vocab_file) print('pos vocab size:', pos_vocab.size()) ner_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'ner_vocab.txt') if os.path.exists(ner_vocab_file): ner_vocab = Vocabulary(ner_vocab_file) print('ner vocab size:', ner_vocab.size()) mode_ = 'train' if 'valid' in FLAGS.input: mode_ = 'valid' elif 'test' in FLAGS.input: mode_ = 'test' else: assert 'train' in FLAGS.input if FLAGS.augument: mode_ = 'aug.' + mode_ if FLAGS.mode_: mode_ = FLAGS.mode_ seg_file = FLAGS.vocab_.replace('vocab.txt', '%s.seg.txt' % mode_) seg_result = {} if os.path.exists(seg_file): print('seg or seg_pos exits:', seg_file) pos_result = {} for line in open(seg_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0] and not FLAGS.word_only: l = [x.rsplit('|', 1) for x in segs] segs, pos = list(zip(*l)) pos_result[id] = pos seg_result[id] = segs seg_done = True if seg_result else False ner_file = FLAGS.vocab_.replace('vocab.txt', '%s.ner.txt' % mode_) ner_result = {} if os.path.exists(ner_file): print('seg_ner exists:', ner_file) for line in open(ner_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0]: l = [x.split('|') for x in segs] segs, ner = list(zip(*l)) if not seg_done: seg_result[id] = segs ner_result[id] = ner print('len(seg_result)', len(seg_result)) print('len(ner_result)', len(ner_result)) # print('to_lower:', FLAGS.to_lower, 'feed_single:', FLAGS.feed_single, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) # print(text2ids.ids2text(text2ids_('傻逼脑残B'))) # print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) global df #df = pd.read_csv(FLAGS.input, lineterminator='\n') df = [] for line in open(FLAGS.input): df.append(line.rstrip('\n').split('\t', 1)) pool = multiprocessing.Pool() if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: FLAGS.num_records_ = 1 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() # for i in range(FLAGS.num_records_): # build_features(i) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-trans.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-trans.py # \author chenghuige # \date 2018-10-03 22:43:06.305917 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm df = pd.read_csv('./train.csv') comments = {} for line in open('./train.en.txt'): try: id, comment = line.rstrip().split('\t') comments[id] = comment except Exception: pass print(len(comments)) num_modify = 0 num_bads = 0 for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] id = row['id'] id = str(id) if id in comments: if len(comments[id].replace(' ', '')) < len(row['content'].replace(' ', '')) * 1.5 and len(comments[id].replace(' ', '')) > len(row['content'].replace(' ', '')) * 0.7: df.loc[i,'content'] = comments[id] num_modify += 1 else: print('bad translate:', comments[id]) print('ori', row['content']) num_bads += 1 print(num_modify, num_bads) df.to_csv('./trans.en.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-trans.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-vocab-v2.sh ================================================ python gen-content.py | python gen-vocab.py --seg_method='basic' --vocab_name='vocab.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import sys,os #os.environ['JIEBA_POS'] = '1' import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/sentiment/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single_all', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method import traceback from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np from gezi import Segmentor segmentor = Segmentor() print(segmentor, file=sys.stderr) import gezi #assert gezi.env_has('JIEBA_POS') logging = gezi.logging logging.init('/tmp') from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() text = filter.filter(text) try: words = segmentor.Segment(text, FLAGS.seg_method) except Exception: print(num, '-----------fail', text) print(traceback.format_exc()) continue if num % 10000 == 0: logging.info(text, '|'.join(words), len(words)) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/sentiment/prepare.test/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') flags.DEFINE_integer('max_words', 200000, '') flags.DEFINE_bool('add_additional', True, 'add additional words from embedding file, this is by default for word') flags.DEFINE_string('sort_by', 'count', '') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab print('input_vocab', input_vocab) dir_ = os.path.dirname(FLAGS.input_vocab) lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) try: vector = list(map(float, array[-vec_size:])) except Exception: print(i, line) continue if word.lower() in normed_ori_set: embedding_dict[word] = vector else: embedding_dict[word.lower()] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if FLAGS.sort_by == 'count': print('sort by count') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) else: print('sort by knowldege') words_knowledge = [] emb_mat_knowledge = [] words_no_knowledge = [] emb_mat_no_knowledge = [] with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat_knowledge.append(np.array(embedding_dict[word])) words_knowledge.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat_no_knowledge.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words_no_knowledge.append(word) # elif FLAGS.type == 'scratch': # if count >= FLAGS.min_count: # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) # else: # #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) # emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # words.append(word) # elif FLAGS.type == 'only': # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) #if FLAGS.sort_by == 'knowledge': words += words_no_knowledge emb_mat += emb_mat_no_knowledge words += words_knowledge emb_mat += emb_mat_knowledge words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) if FLAGS.add_additional: for word in embedding_dict: if word not in words_set: words_set.add(word) words.append(word) emb_mat.append(np.array(embedding_dict[word])) if len(words) > FLAGS.max_words: break print('num words after adding additional', len(words)) out_vocab = os.path.join(dir_, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) print('out_vocab', out_vocab) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(dir_, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) print('out_mat', out_mat) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/merge-vocabs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-vocabs.py # \author chenghuige # \date 2018-10-23 02:07:23.291646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os m = {} files = sys.argv[1:] num_files = len(files) print('num_files', num_files, file=sys.stderr) for file_ in files: for line in open(file_): word, count = line.rstrip('\n').split('\t', 1) count = int(count) if word not in m: m[word] = count else: m[word] += count sorted_by_value = sorted(m.items(), key=lambda kv: -kv[1]) for key, val in sorted_by_value: print(key, val, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.test/pre-mix-seg-v1.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') import sys,os import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback # TODO bseg py2 not support if using melt .. from wenzheng.utils import text2ids from text2ids import text2ids as text2ids_ def seg(id, text, out): text = filter.filter(text) _, words = text2ids_(text, return_words=True) print(id, '\x09'.join(words), sep='\t', file=out) def main(_): FLAGS.seg_method = 'basic_digit' FLAGS.feed_single = True FLAGS.feed_single_en = True print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('feed_single:', FLAGS.feed_single, file=sys.stderr) print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) text2ids.init(FLAGS.vocab) counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') assert FLAGS.vocab ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: #print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/pre-mix-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') flags.DEFINE_string('vocab', None, '') flags.DEFINE_bool('for_pretrain', False, '') import sys,os #os.environ['BSEG'] = '1' import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback #assert gezi.env_has('BSEG') import six if gezi.env_has('BSEG'): assert six.PY2 vocab = None def seg(id, text, out, counter): text = filter.filter(text) words = [] for i, word in enumerate(gezi.cut(text)): counter.add(str(i)) if vocab.has(word) and not word.isdigit(): words.append('%s|%d' % (word, i)) else: if six.PY2: for ch in word.decode('utf8'): words.append('%s|%d' % (ch.encode('utf8'), i)) else: for ch in word: words.append('%s|%d' % (ch, i)) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) def main(_): # FLAGS.seg_method = 'basic_digit' # FLAGS.feed_single = True # FLAGS.feed_single_en = True # print('seg_method:', FLAGS.seg_method, file=sys.stderr) # print('feed_single:', FLAGS.feed_single, file=sys.stderr) # print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) #assert FLAGS.vocab global vocab vocab = gezi.Vocabulary(FLAGS.vocab) ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.jieba.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.test/pre-seg-bert.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import sys,os import numpy as np import gezi import pandas as pd from tqdm import tqdm import traceback from projects.ai2018.sentiment.prepare import filter from third.bert import tokenization tokenizer = tokenization.BasicTokenizer() def seg(id, text, out): text = filter.filter(text) words = tokenizer.tokenize(text) print(id, '\x09'.join(words), sep='\t', file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) num_errs = 0 with open(ofile, 'w') as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): try: seg(ids[i], contents[i], out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.test/pre-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import six if FLAGS.seg_method == 'char': assert not six.PY2 import sys,os import numpy as np import gezi #assert gezi.env_has('JIEBA_POS') from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback START_WORD = '' END_WORD = '' counter = WordCounter(most_common=0, min_count=1) counter2 = WordCounter(most_common=0, min_count=1) print('seg_method:', FLAGS.seg_method, file=sys.stderr) if gezi.env_has('SENTENCE_PIECE'): assert FLAGS.sp_path gezi.segment.init_sp(FLAGS.sp_path) def seg(id, text, out, type): text = filter.filter(text) counter.add(START_WORD) counter.add(END_WORD) l = gezi.cut(text, type) if type != 'word': for x, y in l: counter.add(x) counter2.add(y) words = ['%s|%s' % (x, y) for x,y in l] else: if FLAGS.seg_method == 'char': l2 = [] for i, w in enumerate(l): for ch in w: counter.add(ch) counter2.add(str(i)) l2.append((ch, i)) words = ['%s|%d' % (x, y) for x,y in l2] else: words = l for w in words: counter.add(w) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) vocab = ifile.replace('.csv', '.seg.%s.vocab' % FLAGS.name) type_ = 'word' vocab2 = None if 'pos' in FLAGS.name or FLAGS.seg_method == 'char': vocab2 = ifile.replace('.csv', '.pos.%s.vocab' % FLAGS.name) if 'pos' in FLAGS.name: type_ = 'pos' elif 'ner' in FLAGS.name: vocab2 = ifile.replace('.csv', '.ner.%s.vocab' % FLAGS.name) type_ = 'ner' ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, type=type_) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab) if vocab2: counter2.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-char-bert.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.bert/ sh ./run-noemb-char-bert.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-char-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.ft emb=./mount/data/my-embedding/fastText-sentiment-char/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-char-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.glove emb=./mount/data/my-embedding/GloVe-sentiment-char/vectors.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-char.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-char-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-char.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-jieba-mix-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/valid/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/train/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-mix.sh ================================================ ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-baike-len20.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=20 --tfrecord_dir tfrecord.len20 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-baike.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=40 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-bseg-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-bseg-ner-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-bseg-ner2-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-jieba-tx-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-len40.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-sp10w-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-sp10w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-sp1w-baike.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/baidu/corpus.sp1w/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --source=baike ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-sp1w-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word-sp1w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-lm-word.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg-mix/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-bseg-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.10epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-10epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-bseg-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.40epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-40epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-bseg-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.glove emb=./mount/data/my-embedding/GloVe-sentiment-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba-mix/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-mix-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-aug.sh ================================================ vocab=$1 name=$2 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.valid --mode aug.$name.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.test --mode aug.$name.test #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.train --mode aug.$name.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-char-bert.sh ================================================ vocab=$1 #python ./gen-records.py --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-char.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-mix-charaug.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.valid --mode aug.char.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.test --mode aug.char.test #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.train --mode aug.char.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-mix.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb-wordonly.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/sent/test.seg.txt --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --word_only=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-noemb.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-ft-knowldege.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft.knowledge/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --sort_by=knowledge sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/ #emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft2/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft3/ emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb= ./mount/data/my-embedding/GloVe-sentiment-bseg/ /vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-ner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-subner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.ft/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-bseg-subner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-ft-short.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft.short emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim vocab=$dir/vocab.txt python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.short.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --word_only=1 #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-pos-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-pos-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-jieba-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp10w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-10w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp10w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp10w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp1w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-1w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp1w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp1w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp20w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-20w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-sp20w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft emb=./mount/data/my-embedding/fastText-sentiment-stanford/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft2 emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft3 emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.glove emb=./mount/data/my-embedding/GloVe-sentiment-stanford/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-stanford-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run-word-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.test/run.sh ================================================ sh ./run-char-ft.sh sh ./run-char-glove.sh sh ./run-word-jieba-ft.sh sh ./run-word-jieba-glove.sh sh ./run-word-bseg-ft.sh sh ./run-word-bseg-glove.sh sh ./run-word-bseg-ner-ft.sh sh ./run-word-bseg-ner-glove.sh sh ./run-word-sp10w-ft.sh sh ./run-word-sp10w-glove.sh sh ./run-word-sp1w-ft.sh sh ./run-word-sp1w-glove.sh sh ./run-mix-jieba-ft.sh ================================================ FILE: projects/ai2018/sentiment/prepare.test/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('feed_single', False, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text, preprocess=True, return_words=False): wenzheng.utils.text2ids.init() if preprocess: text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single=FLAGS.feed_single, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=False, pad=False, return_words=return_words) ================================================ FILE: projects/ai2018/sentiment/prepare.test/tmp ================================================ 2018-10-19 10:42:16 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:42:54 0:00:40 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:43:12 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:44:32 0:01:21 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:45:45 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 10:50:15 0:04:33 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:03:14 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:06:18 0:03:06 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:09:20 0:06:08 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放|着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多|加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬|面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 395 2018-10-19 15:12:22 0:09:09 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点|单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我|点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一|坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完|胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是现|烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再|来|了|。|" 608 2018-10-19 15:15:26 0:12:13 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很好|有劲||微甜||羊杂|汤||里面|料|很足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满|大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没|花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 473 2018-10-19 15:18:28 0:15:15 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐|前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远|看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换|个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 351 2018-10-19 15:21:30 0:18:17 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝|点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就快|没|地方|了|,|得|提前|点|过去|抢|个|车位|再说|~|哈哈|" 349 2018-10-19 15:24:32 0:21:19 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长|草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用|券||实在|是|划算|。||今天|晚上|雨|下|的|挺大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我一|问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不|肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 514 2018-10-19 15:27:34 0:24:21 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店|内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮|面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤|是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带|娃|来|吃|还是|划算|滴|。||跟|博多|一幸舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉肉|没有|博多|一幸舍|的|大片|,|但是|味道|还|不错|,|嫩香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已|熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡|排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽菜|带|着|蔬菜汁|所以|是|水|脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不|像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚丸|店|加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1126 2018-10-19 15:32:53 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:33:36 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 15:33:57 0:00:22 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 15:34:17 0:00:42 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势|丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 393 2018-10-19 15:34:38 0:01:03 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还|算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是|现烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再来|了|。|" 604 2018-10-19 15:34:58 0:01:23 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很|好|有劲||微甜||羊杂|汤||里面|料|很|足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很|好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 474 2018-10-19 15:35:19 0:01:44 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 348 2018-10-19 15:35:39 0:02:04 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就|快|没|地方|了|,|得|提前|点|过去|抢个|车位|再说|~|哈哈|" 348 2018-10-19 15:36:00 0:02:24 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用券||实在|是|划算|。||今天|晚上|雨下|的|挺|大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我|一问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 511 2018-10-19 15:36:20 0:02:45 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带娃来|吃|还是|划算|滴|。||跟|博多|一幸|舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉|肉|没有|博多|一幸|舍|的|大片|,|但是|味道|还|不错|,|嫩|香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破|相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸|舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽|菜|带|着|蔬菜汁|所以|是|水脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚|丸|店加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1124 2018-10-19 15:36:40 0:03:05 "一、地理位置:谢家湾万象城5楼,溜冰场上面。二、服务:店铺不大,干净整洁。服务态度不咸不淡的,9积分兑换的,也可以理解三、食品:有一句话真的很对—不作死就不会死。本来不喜欢喝茶,但作为吃货,没尝过黑龙茶,觉得还是有点介意。刚好有9积分,就鼓起勇气尝试一下。要的常温的红茶,想到热量问题,少糖,也没有加配料。然后就悲剧了,茶很大一杯,但是苦呀,什么伯爵红茶,我都感觉不出来了,又不是单独泡的,也没有什么茶香味。实在是没办法,苦的喝了几口就喝不下去了。可能多加糖和布丁之类的配料会好很多吧,不过份量的确很大一杯" "|一|、|地|理|位|置|:|谢|家|湾|万|象|城|5|楼|,|溜|冰|场|上|面|。||二|、|服|务|:|店|铺|不|大|,|干|净|整|洁|。|服|务|态|度|不|咸|不|淡|的|,|9|积|分|兑|换|的|,|也|可|以|理|解||三|、|食|品|:|有|一|句|话|真|的|很|对|—|不|作|死|就|不|会|死|。|本|来|不|喜|欢|喝|茶|,|但|作|为|吃|货|,|没|尝|过|黑|龙|茶|,|觉|得|还|是|有|点|介|意|。|刚|好|有|9|积|分|,|就|鼓|起|勇|气|尝|试|一|下|。|要|的|常|温|的|红|茶|,|想|到|热|量|问|题|,|少|糖|,|也|没|有|加|配|料|。|然|后|就|悲|剧|了|,|茶|很|大|一|杯|,|但|是|苦|呀|,|什|么|伯|爵|红|茶|,|我|都|感|觉|不|出|来|了|,|又|不|是|单|独|泡|的|,|也|没|有|什|么|茶|香|味|。|实|在|是|没|办|法|,|苦|的|喝|了|几|口|就|喝|不|下|去|了|。||可|能|多|加|糖|和|布|丁|之|类|的|配|料|会|好|很|多|吧|,|不|过|份|量|的|确|很|大|一|杯|"|"|一|、|地理位置|:|谢家|湾|万象|城|5|楼|,|溜冰场|上面|。||二|、|服务|:|店铺|不|大|,|干净|整洁|。|服务态度|不咸不淡|的|,|9|积分|兑换|的|,|也|可以|理解||三|、|食品|:|有|一句|话|真的|很|对|—|不作|死|就|不会|死|。|本来|不|喜欢|喝茶|,|但|作为|吃货|,|没尝过|黑龙|茶|,|觉得|还是|有点|介意|。|刚好|有|9|积分|,|就|鼓起勇气|尝试|一下|。|要|的|常温|的|红茶|,|想到|热量|问题|,|少糖|,|也|没有|加|配料|。|然后|就|悲剧|了|,|茶|很大|一杯|,|但是|苦|呀|,|什么|伯爵|红茶|,|我|都|感觉|不|出来|了|,|又|不是|单独|泡|的|,|也|没有|什么|茶|香味|。|实在|是|没|办法|,|苦|的|喝|了|几口|就|喝|不|下去|了|。||可能|多|加糖|和|布丁|之类|的|配料|会|好|很多|吧|,|不过|份量|的确|很大|一杯|" 432 2018-10-19 15:37:01 0:03:26 "非常喜欢去新开的有特色的店品尝,有幸被大众点评网同城聚会抽到黄金替补免费品鉴的机会,我感到十分幸运!红不让台湾特色餐厅位于李沧万达金街1号入口扶梯旁,交通便利,停车方便。店面小资,适合举行小型派对。走近店门,服务员立刻开门迎接并且热情的打招呼。进入店面,环顾四周,鹅黄的灯光下透露出温馨慵懒的气氛,店家匠心独居,屋内的摆设典雅质朴。我们大家围坐在一起开始品尝台湾特色美食,前菜是鸡排沙拉,鸡排外焦里嫩,沙拉酸爽开胃陪的饮品是本店招牌—寒天奶栋,口感丝化。在我们的玩闹嘻戏中,硬菜短上来了——招牌全垒打拼盘,样子可爱,味道独特,被大家迅雷不及掩耳盗铃之势一扫而光。紧接着——等一个人小火锅,西班牙海鲜焗饭,黑椒牛柳焗饭海鲜焗烤嫩鸡排上桌了,食材琳琅满目,令人目不暇接。人多力量大,盘子渐渐见底了,新菜品——普罗旺斯田园披萨,台湾卤肉饭,秘制鸡腿饭,招牌巨蛋烧,阳光手打面,超级霸大热狗震撼来袭。这里特别提一下普罗旺斯田园披萨,顶上配料五颜六色,芝士浓郁,饼胚酥脆,搭配沙拉和洋葱圈口味绝佳。还有在卤肉饭,鸡腿饭,手打面扮演重要角色的酱料,里面居然搭配了小鱼干,补钙又美味。环境搭配合理,既有闺密情侣说悄悄话的私密空间,又有三五好友畅饮阔聊的长桌吧台,气氛轻松惬意,互不打扰。红不让台湾特色餐厅绝对是小资的你餐饮休闲,畅聊发呆的绝佳选择,千万不要错过!" "|非|常|喜|欢|去|新|开|的|有|特|色|的|店|品|尝|,|有|幸|被|大|众|点|评|网|同|城|聚|会|抽|到|黄|金|替|补|免|费|品|鉴|的|机|会|,|我|感|到|十|分|幸|运|!|红|不|让|台|湾|特|色|餐|厅|位|于|李|沧|万|达|金|街|1|号|入|口|扶|梯|旁|,|交|通|便|利|,|停|车|方|便|。|店|面|小|资|,|适|合|举|行|小|型|派|对|。|走|近|店|门|,|服|务|员|立|刻|开|门|迎|接|并|且|热|情|的|打|招|呼|。|进|入|店|面|,|环|顾|四|周|,|鹅|黄|的|灯|光|下|透|露|出|温|馨|慵|懒|的|气|氛|,|店|家|匠|心|独|居|,|屋|内|的|摆|设|典|雅|质|朴|。|我|们|大|家|围|坐|在|一|起|开|始|品|尝|台|湾|特|色|美|食|,|前|菜|是|鸡|排|沙|拉|,|鸡|排|外|焦|里|嫩|,|沙|拉|酸|爽|开|胃|陪|的|饮|品|是|本|店|招|牌|—|寒|天|奶|栋|,|口|感|丝|化|。|在|我|们|的|玩|闹|嘻|戏|中|,|硬|菜|短|上|来|了|—|—|招|牌|全|垒|打|拼|盘|,|样|子|可|爱|,|味|道|独|特|,|被|大|家|迅|雷|不|及|掩|耳|盗|铃|之|势|一|扫|而|光|。|紧|接|着|—|—|等|一|个|人|小|火|锅|,|西|班|牙|海|鲜|焗|饭|,|黑|椒|牛|柳|焗|饭|海|鲜|焗|烤|嫩|鸡|排|上|桌|了|,|食|材|琳|琅|满|目|,|令|人|目|不|暇|接|。|人|多|力|量|大|,|盘|子|渐|渐|见|底|了|,|新|菜|品|—|—|普|罗|旺|斯|田|园|披|萨|,|台|湾|卤|肉|饭|,|秘|制|鸡|腿|饭|,|招|牌|巨|蛋|烧|,|阳|光|手|打|面|,|超|级|霸|大|热|狗|震|撼|来|袭|。||这|里|特|别|提|一|下|普|罗|旺|斯|田|园|披|萨|,|顶|上|配|料|五|颜|六|色|,|芝|士|浓|郁|,|饼|胚|酥|脆|,|搭|配|沙|拉|和|洋|葱|圈|口|味|绝|佳|。|还|有|在|卤|肉|饭|,|鸡|腿|饭|,|手|打|面|扮|演|重|要|角|色|的|酱|料|,|里|面|居|然|搭|配|了|小|鱼|干|,|补|钙|又|美|味|。||环|境|搭|配|合|理|,|既|有|闺|密|情|侣|说|悄|悄|话|的|私|密|空|间|,|又|有|三|五|好|友|畅|饮|阔|聊|的|长|桌|吧|台|,|气|氛|轻|松|惬|意|,|互|不|打|扰|。||红|不|让|台|湾|特|色|餐|厅|绝|对|是|小|资|的|你|餐|饮|休|闲|,|畅|聊|发|呆|的|绝|佳|选|择|,|千|万|不|要|错|过|!|"|"|非常|喜欢|去|新开|的|有|特色|的|店|品尝|,|有幸|被|大众|点评|网同城|聚会|抽到|黄金|替补|免费|品鉴|的|机会|,|我|感到|十分|幸运|!|红|不让|台湾|特色|餐厅|位于|李沧|万达|金街|1|号|入口|扶梯|旁|,|交通|便利|,|停车|方便|。|店面|小资|,|适合|举行|小型|派对|。|走近|店门|,|服务员|立刻|开门|迎接|并且|热情|的|打招呼|。|进入|店面|,|环顾四周|,|鹅黄|的|灯光|下|透露|出|温馨|慵懒|的|气氛|,|店家|匠心|独居|,|屋内|的|摆设|典雅|质朴|。|我们|大家|围坐在|一起|开始|品尝|台湾|特色美食|,|前菜|是|鸡排|沙拉|,|鸡排|外焦里嫩|,|沙拉|酸爽|开胃|陪|的|饮品|是|本店|招牌|—|寒天|奶栋|,|口感|丝化|。|在|我们|的|玩闹|嘻戏|中|,|硬菜|短|上来|了|—|—|招牌|全垒打|拼盘|,|样子|可爱|,|味道|独特|,|被|大家|迅雷不及|掩耳盗铃|之势|一扫而光|。|紧接着|—|—|等|一个|人|小火锅|,|西班牙|海鲜|焗|饭|,|黑椒|牛柳|焗|饭|海鲜|焗|烤|嫩|鸡排|上桌|了|,|食材|琳琅满目|,|令人|目不暇接|。|人多|力量|大|,|盘子|渐渐|见底|了|,|新|菜品|—|—|普罗旺斯|田园|披萨|,|台湾|卤肉饭|,|秘制|鸡腿饭|,|招牌|巨蛋|烧|,|阳光|手|打面|,|超级|霸大|热狗|震撼|来袭|。||这里|特别|提|一下|普罗旺斯|田园|披萨|,|顶上|配料|五颜六色|,|芝士|浓郁|,|饼|胚|酥脆|,|搭配|沙拉|和|洋葱|圈|口味|绝佳|。|还有|在|卤肉饭|,|鸡腿饭|,|手|打面|扮演|重要|角色|的|酱料|,|里面|居然|搭配|了|小鱼|干|,|补钙|又|美味|。||环境|搭配|合理|,|既有|闺密|情侣|说|悄悄话|的|私密|空间|,|又|有|三五|好友|畅饮|阔聊|的|长桌|吧台|,|气氛|轻松|惬意|,|互不|打扰|。||红|不让|台湾|特色|餐厅|绝对|是|小资|的|你|餐饮|休闲|,|畅聊|发呆|的|绝佳|选择|,|千万|不要|错过|!|" 917 2018-10-19 15:37:21 0:03:46 "位于昆明新亚洲体育场的上岛咖啡,至今已有500多家连锁店遍布中国大江南北,成为目前国内最受欢迎的咖啡连锁餐厅之一。上岛咖啡执著于"香醇、甘美"的极致品质的制作理念;在店面设计方面,上岛融合了经典与时尚的理念,独具一格的店面设计,让上岛咖啡在春城声名远扬。走进这里,阳光的明媚与古朴的原木色绝妙的结合让你为之赞叹,坐在落地玻璃窗边的小几旁,沐浴一身的温暖阳光让人感到懒洋洋的舒服。在一入门的书架上捡一本喜欢的书,叫上一杯香浓的咖啡,看窗外的车水马龙,行行色色的行人,生活就在这样的细细品味中渗出丝丝甜美。除了各式各样的咖啡供您选择以外,还有各种佐咖啡的小点也十分精美。这里的食物是以台湾风味为主的,制作精致的盛具加上色香味俱全的可口美食让你在感观上得到最大的满足。上岛咖啡新亚洲店总的来说还不错,位置比较隐蔽一点点,环境还不错,环境很好,而且很安静,就是位置对于我们来说不是特别好找,东西很多,还有红酒,喝着红酒别有一番滋味,整个店面在二楼占地不大,晚上五点多去人不多,牛排沙拉土司都还行,罗宋汤很好喝,沙拉也不错,牛排要的八分熟,感觉有点老了,下次去要七分熟应该刚刚好,服务态度也不错,很安静,很舒服,是个放松心情的好地方。团的也划算,总之很满意,还会去的。" "|位|于|昆|明|新|亚|洲|体|育|场|的|上|岛|咖|啡|,|至|今|已|有|5|0|0|多|家|连|锁|店|遍|布|中|国|大|江|南|北|,|成|为|目|前|国|内|最|受|欢|迎|的|咖|啡|连|锁|餐|厅|之|一|。|上|岛|咖|啡|执|著|于|"|香|醇|、|甘|美|"|的|极|致|品|质|的|制|作|理|念|;|在|店|面|设|计|方|面|,|上|岛|融|合|了|经|典|与|时|尚|的|理|念|,|独|具|一|格|的|店|面|设|计|,|让|上|岛|咖|啡|在|春|城|声|名|远|扬|。|走|进|这|里|,|阳|光|的|明|媚|与|古|朴|的|原|木|色|绝|妙|的|结|合|让|你|为|之|赞|叹|,|坐|在|落|地|玻|璃|窗|边|的|小|几|旁|,|沐|浴|一|身|的|温|暖|阳|光|让|人|感|到|懒|洋|洋|的|舒|服|。|在|一|入|门|的|书|架|上|捡|一|本|喜|欢|的|书|,|叫|上|一|杯|香|浓|的|咖|啡|,|看|窗|外|的|车|水|马|龙|,|行|行|色|色|的|行|人|,|生|活|就|在|这|样|的|细|细|品|味|中|渗|出|丝|丝|甜|美|。|除|了|各|式|各|样|的|咖|啡|供|您|选|择|以|外|,|还|有|各|种|佐|咖|啡|的|小|点|也|十|分|精|美|。|这|里|的|食|物|是|以|台|湾|风|味|为|主|的|,|制|作|精|致|的|盛|具|加|上|色|香|味|俱|全|的|可|口|美|食|让|你|在|感|观|上|得|到|最|大|的|满|足|。|上|岛|咖|啡|新|亚|洲|店|总|的|来|说|还|不|错|,|位|置|比|较|隐|蔽|一|点|点|,|环|境|还|不|错|,|环|境|很|好|,|而|且|很|安|静|,|就|是|位|置|对|于|我|们|来|说|不|是|特|别|好|找|,|东|西|很|多|,|还|有|红|酒|,|喝|着|红|酒|别|有|一|番|滋|味|,|整|个|店|面|在|二|楼|占|地|不|大|,|晚|上|五|点|多|去|人|不|多|,|牛|排|沙|拉|土|司|都|还|行|,|罗|宋|汤|很|好|喝|,|沙|拉|也|不|错|,|牛|排|要|的|八|分|熟|,|感|觉|有|点|老|了|,|下|次|去|要|七|分|熟|应|该|刚|刚|好|,|服|务|态|度|也|不|错|,|很|安|静|,|很|舒|服|,|是|个|放|松|心|情|的|好|地|方|。|团|的|也|划|算|,|总|之|很|满|意|,|还|会|去|的|。|"|"|位于|昆明|新|亚洲|体育场|的|上|岛|咖啡|,|至今已有|500|多家|连锁店|遍布|中国|大江南北|,|成为|目前|国内|最|受欢迎|的|咖啡|连锁|餐厅|之一|。|上|岛|咖啡|执著|于|"|香醇|、|甘美|"|的|极致|品质|的|制作|理念|;|在|店面|设计|方面|,|上|岛|融合|了|经典|与|时尚|的|理念|,|独具一格|的|店面|设计|,|让|上|岛|咖啡|在|春城|声名|远扬|。|走进|这里|,|阳光|的|明媚|与|古朴|的|原木色|绝妙|的|结合|让|你|为|之|赞叹|,|坐在|落地|玻璃窗|边|的|小|几旁|,|沐浴|一身|的|温暖|阳光|让|人|感到|懒洋洋|的|舒服|。|在|一|入门|的|书架上|捡|一本|喜欢|的|书|,|叫|上|一杯|香浓|的|咖啡|,|看|窗外|的|车水马龙|,|行行色色|的|行人|,|生活|就|在|这样|的|细细品味|中|渗出|丝丝|甜美|。|除了|各式各样|的|咖啡|供|您|选择|以外|,|还有|各种|佐|咖啡|的|小点|也|十分|精美|。|这里|的|食物|是|以|台湾|风味|为主|的|,|制作|精致|的|盛具|加上|色香味|俱全|的|可口|美食|让你在|感观|上|得到|最大|的|满足|。|上|岛|咖啡|新|亚洲|店|总的来说|还|不错|,|位置|比较|隐蔽|一点点|,|环境|还|不错|,|环境|很|好|,|而且|很|安静|,|就是|位置|对于|我们|来说|不是|特别|好找|,|东西|很多|,|还有|红酒|,|喝|着|红酒|别有|一番滋味|,|整个|店面|在|二楼|占地|不|大|,|晚上|五点|多去|人|不|多|,|牛排|沙拉|土司|都|还行|,|罗宋汤|很|好喝|,|沙拉|也|不错|,|牛排|要|的|八分熟|,|感觉|有点|老|了|,|下次|去|要|七分|熟|应该|刚刚|好|,|服务态度|也|不错|,|很|安静|,|很|舒服|,|是|个|放松|心情|的|好|地方|。|团|的|也|划算|,|总之|很|满意|,|还会|去|的|。|" 859 2018-10-19 15:37:42 0:04:07 "我想说他们家的优惠活动好持久啊,我预售的时候买的券,前两天心血来潮去吃的活动还在继续首先说下服务,因为和男票开车去的,有点不认路,老板很耐心的在电话里帮我们指路,到了门店之后也帮我们推荐了他们家做的比较地道的伤心凉粉,说是厨师是四川那边来的。环境呢比较简单干净,去的时候下午一点多了,还有四五桌人在用餐口味对于我而言点了麻辣的口感正正好,男票比较能吃辣,相对而言觉得他们家的麻辣口感麻有了,辣还欠缺一点,老板娘说考虑到客人口味不同所以没敢放太多辣椒,能吃辣的朋友可以考虑下单之前和老板先说好。鱼呢我们选的是黑鱼,2.9斤的鱼加上一盆我以为没有什么东西实际上东西很多的锅底,我们吃的饱饱的,最后以为吃的差不多了,打包一看简直像没动过一样,分量还是满足的,鱼比较新鲜。伤心凉粉很辣,不过口味也蛮好吃的。总的来说,性价比还是可以的,两个人吃了大概160左右,用了团购券的话一百块不到,会考虑下次再来" "|我|想|说|他|们|家|的|优|惠|活|动|好|持|久|啊|,|我|预|售|的|时|候|买|的|券|,|前|两|天|心|血|来|潮|去|吃|的|活|动|还|在|继|续||首|先|说|下|服|务|,|因|为|和|男|票|开|车|去|的|,|有|点|不|认|路|,|老|板|很|耐|心|的|在|电|话|里|帮|我|们|指|路|,|到|了|门|店|之|后|也|帮|我|们|推|荐|了|他|们|家|做|的|比|较|地|道|的|伤|心|凉|粉|,|说|是|厨|师|是|四|川|那|边|来|的|。||环|境|呢|比|较|简|单|干|净|,|去|的|时|候|下|午|一|点|多|了|,|还|有|四|五|桌|人|在|用|餐||口|味|对|于|我|而|言|点|了|麻|辣|的|口|感|正|正|好|,|男|票|比|较|能|吃|辣|,|相|对|而|言|觉|得|他|们|家|的|麻|辣|口|感|麻|有|了|,|辣|还|欠|缺|一|点|,|老|板|娘|说|考|虑|到|客|人|口|味|不|同|所|以|没|敢|放|太|多|辣|椒|,|能|吃|辣|的|朋|友|可|以|考|虑|下|单|之|前|和|老|板|先|说|好|。|鱼|呢|我|们|选|的|是|黑|鱼|,|2|.|9|斤|的|鱼|加|上|一|盆|我|以|为|没|有|什|么|东|西|实|际|上|东|西|很|多|的|锅|底|,|我|们|吃|的|饱|饱|的|,|最|后|以|为|吃|的|差|不|多|了|,|打|包|一|看|简|直|像|没|动|过|一|样|,|分|量|还|是|满|足|的|,|鱼|比|较|新|鲜|。|伤|心|凉|粉|很|辣|,|不|过|口|味|也|蛮|好|吃|的|。||总|的|来|说|,|性|价|比|还|是|可|以|的|,|两|个|人|吃|了|大|概|1|6|0|左|右|,|用|了|团|购|券|的|话|一|百|块|不|到|,|会|考|虑|下|次|再|来|"|"|我|想|说|他们|家|的|优惠活动|好|持久|啊|,|我|预售|的|时候|买|的|券|,|前两天|心血来潮|去|吃|的|活动|还|在|继续||首先|说|下|服务|,|因为|和|男票|开车|去|的|,|有点|不|认路|,|老板|很|耐心|的|在|电话|里|帮|我们|指路|,|到|了|门店|之后|也|帮|我们|推荐|了|他们|家|做|的|比较|地道|的|伤心|凉粉|,|说|是|厨师|是|四川|那边|来|的|。||环境|呢|比较简单|干净|,|去|的|时候|下午|一点多|了|,|还有|四五桌|人|在|用餐||口味|对于|我|而言|点|了|麻辣|的|口感|正|正好|,|男票|比较|能|吃|辣|,|相对而言|觉得|他们|家|的|麻辣|口感|麻有|了|,|辣|还|欠缺|一点|,|老板娘|说|考虑|到|客人|口味|不同|所以|没敢|放太多|辣椒|,|能|吃|辣|的|朋友|可以|考虑|下单|之前|和|老板|先|说好|。|鱼|呢|我们|选|的|是|黑鱼|,|2.9|斤|的|鱼|加上|一盆|我|以为|没有|什么|东西|实际上|东西|很多|的|锅底|,|我们|吃|的|饱饱|的|,|最后|以为|吃|的|差不多|了|,|打包|一看|简直|像|没动|过|一样|,|分量|还是|满足|的|,|鱼|比较|新鲜|。|伤心|凉粉|很辣|,|不过|口味|也|蛮|好吃|的|。||总的来说|,|性价比|还是|可以|的|,|两个|人|吃|了|大概|160|左右|,|用|了|团购|券|的话|一百块|不到|,|会|考虑|下次|再|来|" 661 2018-10-19 15:38:02 0:04:27 "店的位置很好找,来了不止一次了。环境很好,人气很旺,服务很好,菜品很赞。白水都是放在高脚杯里,热水。上菜速度不错。鸭舌很入味,量还可以。脆脆的很喜欢。口水鸡超级给力,辣椒香而不燥,芝麻香,鸡肉很嫩,底下还有笋,比较爽口。麻酱油麦菜特别解辣,麻酱量大,微甜。水煮鱼鱼片鲜嫩,辣椒不会太辣,麻椒很给力。豆芽量大爽口。豆花好大一锅,小料配了酥黄豆,葱,酱汁,跟豆花一起,一吃好几碗。特别满足的一顿饭。继续支持!" "|店|的|位|置|很|好|找|,|来|了|不|止|一|次|了|。|环|境|很|好|,|人|气|很|旺|,|服|务|很|好|,|菜|品|很|赞|。|白|水|都|是|放|在|高|脚|杯|里|,|热|水|。|上|菜|速|度|不|错|。|鸭|舌|很|入|味|,|量|还|可|以|。|脆|脆|的|很|喜|欢|。|口|水|鸡|超|级|给|力|,|辣|椒|香|而|不|燥|,|芝|麻|香|,|鸡|肉|很|嫩|,|底|下|还|有|笋|,|比|较|爽|口|。|麻|酱|油|麦|菜|特|别|解|辣|,|麻|酱|量|大|,|微|甜|。|水|煮|鱼|鱼|片|鲜|嫩|,|辣|椒|不|会|太|辣|,|麻|椒|很|给|力|。|豆|芽|量|大|爽|口|。|豆|花|好|大|一|锅|,|小|料|配|了|酥|黄|豆|,|葱|,|酱|汁|,|跟|豆|花|一|起|,|一|吃|好|几|碗|。|特|别|满|足|的|一|顿|饭|。|继|续|支|持|!|"|"|店|的|位置|很|好找|,|来|了|不止一次|了|。|环境|很|好|,|人气|很旺|,|服务|很|好|,|菜品|很赞|。|白水|都|是|放在|高脚杯|里|,|热水|。|上菜|速度|不错|。|鸭舌|很|入味|,|量|还|可以|。|脆脆|的|很|喜欢|。|口水鸡|超级|给力|,|辣椒|香而|不燥|,|芝麻|香|,|鸡肉|很嫩|,|底下|还有|笋|,|比较|爽口|。|麻酱|油麦|菜|特别|解辣|,|麻酱|量|大|,|微甜|。|水煮鱼|鱼片|鲜嫩|,|辣椒|不会|太辣|,|麻椒|很|给|力|。|豆芽|量|大|爽口|。|豆花|好大|一锅|,|小料|配|了|酥|黄豆|,|葱|,|酱汁|,|跟|豆花|一起|,|一吃|好几碗|。|特别|满足|的|一顿饭|。|继续|支持|!|" 337 2018-10-19 17:11:03 0:00:13 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:11:59 0:00:12 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:21:39 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:23:51 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:29:21 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:41:29 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:48:42 0:00:15 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:05:48 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:40:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:45:17 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:48:18 0:03:10 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 18:51:11 0:06:03 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 18:53:59 0:08:51 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 18:56:44 0:11:36 "还是头一次被点评抽中宵夜套餐的,第一次提前打电话去预约,老板说8点半以后才开始提供宵夜,后面因为有事耽搁了也就没去成。第二次是晚上在家突然就想吃生蚝了,于是就直接过去了,在沈塘桥那里还仔细张望了几下,因为虽说是义海蚝情,但是店面看上去真的很干净完全不像吃烧烤宵夜的样子。然后老板很热情地出来问,我就囧囧地进去了。才知道这家店白天是茶餐厅,8点以后变身位义海蚝情。看起来生意很不错,里面几乎坐满了人。上菜很快,先上的是一盘酸酸甜甜的小果盘,因为不怎么喜欢吃酸的,所以吃了一两个就作罢,后来听老板说这些酸果是专门从广东那边运过来的,吃完烤串以后再吃这个就十分解腻。接着上了生蚝,分别是蒜蓉和原味的,处理得很干净,而且也不油腻,没有腥味。嫩烤生牛实在太美味了!据老板说这个生牛肉都是每天凌晨去市场买的,如果当天做不完,第二天也不会再用来做这道菜了,因为牛肉经过冷冻以后口感就没有那么鲜嫩了。后面还有烤韭黄,烤风爪还有烤鸡翅,味道都很棒!吃完以后,老板还特地过来询问我们的意见,征求我们的建议,非常诚恳,绝对好评!" "|还|是|头|一|次|被|点|评|抽|中|宵|夜|套|餐|的|,|第|一|次|提|前|打|电|话|去|预|约|,|老|板|说|8|点|半|以|后|才|开|始|提|供|宵|夜|,|后|面|因|为|有|事|耽|搁|了|也|就|没|去|成|。|第|二|次|是|晚|上|在|家|突|然|就|想|吃|生|蚝|了|,|于|是|就|直|接|过|去|了|,|在|沈|塘|桥|那|里|还|仔|细|张|望|了|几|下|,|因|为|虽|说|是|义|海|蚝|情|,|但|是|店|面|看|上|去|真|的|很|干|净|完|全|不|像|吃|烧|烤|宵|夜|的|样|子|。|然|后|老|板|很|热|情|地|出|来|问|,|我|就|囧|囧|地|进|去|了|。||才|知|道|这|家|店|白|天|是|茶|餐|厅|,|8|点|以|后|变|身|位|义|海|蚝|情|。|看|起|来|生|意|很|不|错|,|里|面|几|乎|坐|满|了|人|。|上|菜|很|快|,|先|上|的|是|一|盘|酸|酸|甜|甜|的|小|果|盘|,|因|为|不|怎|么|喜|欢|吃|酸|的|,|所|以|吃|了|一|两|个|就|作|罢|,|后|来|听|老|板|说|这|些|酸|果|是|专|门|从|广|东|那|边|运|过|来|的|,|吃|完|烤|串|以|后|再|吃|这|个|就|十|分|解|腻|。|接|着|上|了|生|蚝|,|分|别|是|蒜|蓉|和|原|味|的|,|处|理|得|很|干|净|,|而|且|也|不|油|腻|,|没|有|腥|味|。|嫩|烤|生|牛|实|在|太|美|味|了|!|据|老|板|说|这|个|生|牛|肉|都|是|每|天|凌|晨|去|市|场|买|的|,|如|果|当|天|做|不|完|,|第|二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因|为|牛|肉|经|过|冷|冻|以|后|口|感|就|没|有|那|么|鲜|嫩|了|。||后|面|还|有|烤|韭|黄|,|烤|风|爪|还|有|烤|鸡|翅|,|味|道|都|很|棒|!||吃|完|以|后|,|老|板|还|特|地|过|来|询|问|我|们|的|意|见|,|征|求|我|们|的|建|议|,|非|常|诚|恳|,|绝|对|好|评|!|"|"|还是|头一|次|被|点评|抽|中|宵夜|套餐|的|,|第一|次|提前|打电话|去|预约|,|老板|说|8|点|半|以后|才|开始|提供|宵夜|,|后面|因为|有|事|耽搁|了|也|就|没|去|成|。|第二|次|是|晚上|在家|突然|就|想|吃|生蚝|了|,|于是|就|直接|过去|了|,|在|沈|塘桥|那里|还|仔细|张望|了|几下|,|因为|虽说|是|义海蚝情|,|但是|店面|看上去|真的|很|干净|完全|不|像|吃|烧烤|宵夜|的|样子|。|然后|老板|很|热情|地|出来|问|,|我|就|囧囧|地|进去|了|。|才|知道|这|家|店|白天|是|茶|餐厅|,|8点|以后|变身|位|义海|蚝情|。|看起来|生意|很|不错|,|里面|几乎|坐满|了|人|。|上菜|很|快|,|先|上|的|是|一|盘|酸酸|甜甜|的|小|果盘|,|因为|不怎么|喜欢|吃|酸|的|,|所以|吃|了|一|两|个|就|作罢|,|后来|听|老板|说|这些|酸|果是|专门|从|广东|那边|运|过来|的|,|吃完|烤|串|以后|再|吃|这个|就|十分|解腻|。|接着|上|了|生蚝|,|分别|是|蒜蓉|和|原味|的|,|处理|得很|干净|,|而且|也|不|油腻|,|没有|腥味|。|嫩烤|生|牛|实在|太|美味|了|!|据|老板|说|这个|生|牛肉|都|是|每天|凌晨|去|市场|买的|,|如果|当天|做|不|完|,|第二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因为|牛肉|经过|冷冻|以后|口感|就|没有|那么|鲜嫩|了|。|后面|还|有|烤|韭黄|,|烤|风|爪|还有|烤|鸡翅|,|味道|都|很|棒|!|吃完|以后|,|老板|还|特地|过来|询问|我们|的|意见|,|征求|我们|的|建议|,|非常|诚恳|,|绝对|好评|!|" 769 2018-10-19 18:59:26 0:14:18 "性价比还是很高的一家店,菜品不算少,只是作为放题的话量稍微多了一点,不能每个品种都吃到,最后还是服务员mm说帮我们写量少点,还是不错的~越到后面客人越多可能就没之前服务那么周到,但总的来说基本没漏单情况~说说味道吧,这家店里所有的虾类都可以试试哦,甜虾很新鲜,什么虾色拉、盐烤大虾还有天妇罗炸虾都很美味哦~刺身类虽然品种不算很多但是188的价格来说算可以了,也很新鲜,飞鱼籽超级好吃的,铁板烧的话味道也不赖,反正这个价位来说算不错了~" "|性|价|比|还|是|很|高|的|一|家|店|,|菜|品|不|算|少|,|只|是|作|为|放|题|的|话|量|稍|微|多|了|一|点|,|不|能|每|个|品|种|都|吃|到|,|最|后|还|是|服|务|员|m|m|说|帮|我|们|写|量|少|点|,|还|是|不|错|的|~|越|到|后|面|客|人|越|多|可|能|就|没|之|前|服|务|那|么|周|到|,|但|总|的|来|说|基|本|没|漏|单|情|况|~|说|说|味|道|吧|,|这|家|店|里|所|有|的|虾|类|都|可|以|试|试|哦|,|甜|虾|很|新|鲜|,|什|么|虾|色|拉|、|盐|烤|大|虾|还|有|天|妇|罗|炸|虾|都|很|美|味|哦|~|刺|身|类|虽|然|品|种|不|算|很|多|但|是|1|8|8|的|价|格|来|说|算|可|以|了|,|也|很|新|鲜|,|飞|鱼|籽|超|级|好|吃|的|,|铁|板|烧|的|话|味|道|也|不|赖|,|反|正|这|个|价|位|来|说|算|不|错|了|~|"|"|性价比|还是|很|高|的|一|家|店|,|菜品|不|算|少|,|只是|作为|放题|的|话|量|稍微|多|了|一点|,|不|能|每个|品种|都|吃到|,|最后|还是|服务员|mm|说|帮|我们|写量|少|点|,|还是|不错|的|~|越|到|后面|客人|越|多|可能|就|没|之前|服务|那么|周到|,|但|总的来说|基本|没|漏|单|情况|~|说说|味道|吧|,|这|家|店里|所有|的|虾类|都|可以|试试|哦|,|甜虾|很|新鲜|,|什么|虾|色拉|、|盐|烤|大虾|还|有|天|妇罗|炸|虾|都|很|美味|哦|~|刺身|类|虽然|品种|不算|很多|但是|188|的|价格|来说|算|可以|了|,|也|很|新鲜|,|飞鱼籽|超级|好吃|的|,|铁板烧|的话|味道|也|不赖|,|反正|这个|价位|来说|算|不|错|了|~|" 366 2018-10-19 19:01:50 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:02:28 0:17:20 "下马坊地铁口出来稍微走一点点就能看到了,一家很小的店面。环境一般般,室内比较昏暗。服务态度还可以,没带钱出门,点单的时候只能想到用团购了。点了辣子鸡面和豌杂面,辣子鸡面上面是几根青菜和4块鸡肉,然后的然后就木有了,鸡块是凉的,需要先放在面汤里面泡会儿。豌杂面的豌豆有一点点酸酸的感觉,和以前吃得不一样。总体来说口味一般般,对于吃面喜欢先喝汤的我来说,总觉得欠缺点什么。没全部吃完,但是可以填饱肚子了。图一是辣子鸡面,会加香菜,不喜欢香菜的要提前说一下。图二是把鸡块吃完之后的素面条;图三为豌杂面。" "|下|马|坊|地|铁|口|出|来|稍|微|走|一|点|点|就|能|看|到|了|,|一|家|很|小|的|店|面|。|环|境|一|般|般|,|室|内|比|较|昏|暗|。|服|务|态|度|还|可|以|,|没|带|钱|出|门|,|点|单|的|时|候|只|能|想|到|用|团|购|了|。|点|了|辣|子|鸡|面|和|豌|杂|面|,|辣|子|鸡|面|上|面|是|几|根|青|菜|和|4|块|鸡|肉|,|然|后|的|然|后|就|木|有|了|,|鸡|块|是|凉|的|,|需|要|先|放|在|面|汤|里|面|泡|会|儿|。|豌|杂|面|的|豌|豆|有|一|点|点|酸|酸|的|感|觉|,|和|以|前|吃|得|不|一|样|。|总|体|来|说|口|味|一|般|般|,|对|于|吃|面|喜|欢|先|喝|汤|的|我|来|说|,|总|觉|得|欠|缺|点|什|么|。|没|全|部|吃|完|,|但|是|可|以|填|饱|肚|子|了|。|图|一|是|辣|子|鸡|面|,|会|加|香|菜|,|不|喜|欢|香|菜|的|要|提|前|说|一|下|。|图|二|是|把|鸡|块|吃|完|之|后|的|素|面|条|;|图|三|为|豌|杂|面|。|"|"|下马坊|地铁口|出来|稍微|走|一点点|就|能|看到|了|,|一|家|很|小|的|店面|。|环境|一|般般|,|室内|比较|昏暗|。|服务|态度|还|可以|,|没带|钱|出门|,|点|单|的|时候|只能|想到|用|团|购|了|。|点|了|辣子|鸡面|和|豌杂面|,|辣|子鸡|面|上面|是|几|根|青菜|和|4|块|鸡肉|,|然后|的|然后|就|木|有|了|,|鸡块|是|凉|的|,|需要|先|放在|面汤|里面|泡|会儿|。|豌杂面|的|豌豆|有|一点点|酸酸的|感觉|,|和|以前|吃|得|不|一样|。|总体|来说|口味|一般|般|,|对于|吃|面|喜欢|先|喝|汤|的|我|来说|,|总|觉得|欠缺|点|什么|。|没|全部|吃完|,|但是|可以|填饱|肚子|了|。|图|一|是|辣子|鸡面|,|会|加|香菜|,|不|喜欢|香菜|的|要|提前|说|一下|。|图二|是|把|鸡块|吃完|之后|的|素面条|;|图三|为|豌|杂面|。|" 420 2018-10-19 19:05:37 0:20:29 "今天要探的店是位于利时奥特莱斯4楼的阿拉渔歌,位置很好找,交通也便利。我是提前一天预约的,所以到店就有位置了。店面不大,里面的餐位还真不少。进门的那个大烤炉特别吸引人,忍不住凑近多看了几眼。原来今晚的烤鱼都是出自这个“大家伙”。中的霸王餐是78元的一条海鲈鱼,服务员推荐了几个口味,最后选择的人气较旺的:酱香味的。同时还点了2份配菜:豆芽和土豆粉。等了大概10分钟,今晚的主角终于登场了!幸好点了配菜,不然只有烤鱼上的几块土豆,怎么吃。鱼烤的火候倒是不错,外焦里嫩,鱼肉有弹性、肉质滑嫩,但鱼是活杀,不是现杀。5元一份的豆芽少的可怜,只有几根,土豆粉倒是不错,q弹爽滑,有嚼劲。总体评价:客流量不大,基本到了都有餐位的。鱼烤的比较好,调味也到位,但味道放太多了,吃后口干。提个建议:店内的手机信号很差,真心不喜欢。" "|今|天|要|探|的|店|是|位|于|利|时|奥|特|莱|斯|4|楼|的|阿|拉|渔|歌|,|位|置|很|好|找|,|交|通|也|便|利|。|我|是|提|前|一|天|预|约|的|,|所|以|到|店|就|有|位|置|了|。||店|面|不|大|,|里|面|的|餐|位|还|真|不|少|。|进|门|的|那|个|大|烤|炉|特|别|吸|引|人|,|忍|不|住|凑|近|多|看|了|几|眼|。|原|来|今|晚|的|烤|鱼|都|是|出|自|这|个|“|大|家|伙|”|。|中|的|霸|王|餐|是|7|8|元|的|一|条|海|鲈|鱼|,|服|务|员|推|荐|了|几|个|口|味|,|最|后|选|择|的|人|气|较|旺|的|:|酱|香|味|的|。|同|时|还|点|了|2|份|配|菜|:|豆|芽|和|土|豆|粉|。||等|了|大|概|1|0|分|钟|,|今|晚|的|主|角|终|于|登|场|了|!|幸|好|点|了|配|菜|,|不|然|只|有|烤|鱼|上|的|几|块|土|豆|,|怎|么|吃|。|鱼|烤|的|火|候|倒|是|不|错|,|外|焦|里|嫩|,|鱼|肉|有|弹|性|、|肉|质|滑|嫩|,|但|鱼|是|活|杀|,|不|是|现|杀|。|5|元|一|份|的|豆|芽|少|的|可|怜|,|只|有|几|根|,|土|豆|粉|倒|是|不|错|,|q|弹|爽|滑|,|有|嚼|劲|。||总|体|评|价|:|客|流|量|不|大|,|基|本|到|了|都|有|餐|位|的|。|鱼|烤|的|比|较|好|,|调|味|也|到|位|,|但|味|道|放|太|多|了|,|吃|后|口|干|。|提|个|建|议|:|店|内|的|手|机|信|号|很|差|,|真|心|不|喜|欢|。|"|"|今天|要|探|的|店|是|位于|利时|奥特莱斯|4|楼|的|阿拉|渔歌|,|位置|很|好找|,|交通|也|便利|。|我|是|提前|一|天|预约|的|,|所以|到|店|就|有|位置|了|。|店面|不大|,|里面|的|餐位|还|真|不少|。|进门|的|那个|大|烤炉|特别|吸引|人|,|忍不住|凑近|多|看|了|几|眼|。|原来|今晚|的|烤鱼|都|是|出自|这个|“|大家伙|”|。|中|的|霸王|餐|是|78|元|的|一|条|海|鲈鱼|,|服务员|推荐|了|几|个|口味|,|最后|选择|的|人气|较|旺|的|:|酱|香味|的|。|同时|还|点|了|2|份|配菜|:|豆芽|和|土豆粉|。|等|了|大概|10|分钟|,|今晚|的|主角|终于|登场|了|!|幸好|点|了|配菜|,|不然|只|有|烤鱼|上|的|几|块|土豆|,|怎么|吃|。|鱼|烤的|火候|倒是|不错|,|外焦|里嫩|,|鱼肉|有|弹性|、|肉质|滑嫩|,|但|鱼|是|活杀|,|不是|现杀|。|5|元|一|份|的|豆芽|少|的|可怜|,|只有|几|根|,|土豆粉|倒是|不错|,|q弹|爽滑|,|有|嚼劲|。|总体|评价|:|客流量|不|大|,|基本|到|了|都|有|餐位|的|。|鱼|烤的|比较|好|,|调味|也|到位|,|但|味道|放|太|多|了|,|吃|后|口干|。|提|个|建议|:|店|内|的|手机|信号|很|差|,|真心|不|喜欢|。|" 616 2018-10-19 19:05:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:08:54 0:23:46 "他家有很多分店感觉一下子冒出来的是的以前没怎么见到过现在随便去哪都能看到这家也是我新发现的不知是新开还是老店他家面分很多种什么毛细二细很多种以前都吃的普通的今天尝了毛细的特别细了了还有很粗的那种跟面片是的没见人吃过图片倒是见过凉菜就是普通面馆都有的不算特色了一小盘说是可以拚两种量不大但是也够吃了面拉出来很快吃的时候看见一个大老爷们要了两碗小姑娘的话一碗都吃不了辣椒油也还不错不算辣他家单纯说面的话微微偏贵忘了拍照片了对了点的双人套餐没吃完" "|他|家|有|很|多|分|店||感|觉|一|下|子|冒|出|来|的|是|的||以|前|没|怎|么|见|到|过||现|在|随|便|去|哪|都|能|看|到||这|家|也|是|我|新|发|现|的||不|知|是|新|开|还|是|老|店||他|家|面|分|很|多|种||什|么|毛|细||二|细||很|多|种||以|前|都|吃|的|普|通|的||今|天|尝|了|毛|细|的||特|别|细|了|了||还|有|很|粗|的|那|种|跟|面|片|是|的||没|见|人|吃|过||图|片|倒|是|见|过||凉|菜|就|是|普|通|面|馆|都|有|的||不|算|特|色|了||一|小|盘||说|是|可|以|拚|两|种||量|不|大||但|是|也|够|吃|了||面|拉|出|来|很|快||吃|的|时|候|看|见|一|个|大|老|爷|们|要|了|两|碗||小|姑|娘|的|话|一|碗|都|吃|不|了||辣|椒|油||也|还|不|错||不|算|辣||他|家|单|纯|说|面|的|话|微|微|偏|贵||忘|了|拍|照|片|了||对|了|点|的|双|人|套|餐||没|吃|完|"|"|他|家有|很多|分店|感觉|一|下子|冒出|来|的|是的|以前|没|怎么|见到|过|现在|随便|去|哪|都|能|看到|这|家|也|是|我|新|发现|的|不知|是|新开|还是|老店|他|家|面分|很多|种|什么|毛细|二|细|很多|种|以前|都|吃|的|普通|的|今天|尝|了|毛细|的|特别|细了|了|还有|很|粗|的|那|种|跟|面片|是|的|没|见人|吃|过|图片|倒是|见|过|凉菜|就|是|普通|面馆|都|有的|不算|特色|了|一|小|盘|说|是|可以|拚|两|种|量|不|大|但是|也|够|吃|了|面|拉|出来|很|快|吃|的|时候|看见|一|个|大|老爷们|要|了|两|碗|小|姑娘|的话|一|碗|都|吃|不|了|辣椒油|也|还|不错|不|算|辣|他|家|单纯|说|面的|话|微微|偏|贵|忘|了|拍|照片|了|对了|点|的|双人|套餐|没|吃完|" 415 2018-10-19 19:09:09 0:03:37 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 19:12:08 0:27:00 "和很久没见的高中同学聚会,都很喜欢猫咪,上次约在江南西的某家猫咪主题餐厅,感觉都很好,能和可爱的猫咪亲密接触棒棒哒,于是这次也准备约到猫咪主题的餐厅一边吃饭一边逗猫,在大众点评上看到这家meow1306猫小窝评价看上去都不错,于是愉快地定下了午餐之约(下午还要去买买买~),预定了12点用餐,惭愧地迟到了半小时(友人迷路了半小时呵呵,其实就是体育中心a出口出去直走到路口左转30米左右就到了╮(╯▽╰)╭)幸好到达之时仍然有空位,安全入座。先说说#环境#,空间蛮大的,全店铺木地板,进门需要换鞋+进行手部消毒,位置刚好正对着太古汇,边上是一排超大落地玻璃窗,能看到体育西路的车水马龙,采光视线都不错,墙壁上的装饰也很用心,我们位置后面是一墙的猫咪春游壁画,樱花之下猫咪们愉快用餐的姿态萌萌哒~座椅用的是矮沙发+配套的木质桌子,沙发满软的,刚好是猫咪很容易能跳上去的高度,桌子的高度也刚刚好,很方便进餐,有一股家的味道,很闲适,最赞的是每张桌子的间隔都很宽敞,坐着一点都不压抑,聊天也不会很受隔壁的影响,不错说完环境,就轮到最核心的#猫咪#了,与这里宽敞的环境相比,猫咪的数量就完全不成正比,只有小猫六七只,有两只美短(估计还是兄弟来着),还有一直纯白的波斯猫、一只脸黑的暹罗猫,两只扁脸咖啡猫(其中一只脖子套了一个蝴蝶结,另外一只又胖又懒,全程在装地毯),还有一只纯黑的小奶猫(没认出品种,但是身娇体柔易推倒有木有),一只配一桌都嫌不够,不过猫猫都很干净、很乖巧,能抱(不过下一秒就逃),身上也没有什么味道,调教得还算不错。说完猫咪,再说说食物出品,只能说重点果然在猫,食物就一般般啦,#味道#还可以,但是分量真心少,我们点了一个爆浆鸡腿肉饭(28)、一个番茄肉酱意粉(36)、一壶花果茶(玫瑰花+苹果花36),一共100,团购后88,人均44。先说我的鸡腿饭,味道还ok,是切开的小块鸡腿肉+腌萝卜+洋葱煮的肉酱拌饭,鸡腿肉虽不多但肉都满嫩的,下饭;朋友的番茄肉酱意粉那个分量感觉三口就能吃完,偷尝了一根味道不错,就是性价比很低;花果茶就更坑爹了,壶里面的茶叶花蕾就那么两三颗可怜的漂浮着,茶水谈而无味,根本不值得这个价,差评。最后稍稍提一下#服务#除了最开始的给我们喷一下手+拿菜单(居然是用牛皮纸手写的)给我们点下菜几乎全程自助,没有热情交谈的店主给我们介绍店里的猫咪,也没有店员给我们拿逗猫棒、猫玩具,态度冷淡,在最后快离开的时候,还有一个女的一边在给气球打气(据说2点有包场活动估计是布置场地的工作人员),一边用炒鸡可怕的眼神盯着我们,吓得我们赶紧去结账。总体来说环境很不错,但奔着去看猫咪的可能有点失望了,食物的性价比也很低,不过环境蛮安静的,比较适合去下午茶小聚,顺便逗逗猫咪,据说还有鸡尾酒,晚上去的可以尝尝" "|和|很|久|没|见|的|高|中|同|学|聚|会|,|都|很|喜|欢|猫|咪|,|上|次|约|在|江|南|西|的|某|家|猫|咪|主|题|餐|厅|,|感|觉|都|很|好|,|能|和|可|爱|的|猫|咪|亲|密|接|触|棒|棒|哒|,|于|是|这|次|也|准|备|约|到|猫|咪|主|题|的|餐|厅|一|边|吃|饭|一|边|逗|猫|,|在|大|众|点|评|上|看|到|这|家|m|e|o|w|1|3|0|6|猫|小|窝|评|价|看|上|去|都|不|错|,|于|是|愉|快|地|定|下|了|午|餐|之|约|(|下|午|还|要|去|买|买|买|~|)|,|预|定|了|1|2|点|用|餐|,|惭|愧|地|迟|到|了|半|小|时|(|友|人|迷|路|了|半|小|时|呵|呵|,|其|实|就|是|体|育|中|心|a|出|口|出|去|直|走|到|路|口|左|转|3|0|米|左|右|就|到|了|╮|(|╯|▽|╰|)|╭|)|幸|好|到|达|之|时|仍|然|有|空|位|,|安|全|入|座|。||先|说|说|#|环|境|#|,|空|间|蛮|大|的|,|全|店|铺|木|地|板|,|进|门|需|要|换|鞋|+|进|行|手|部|消|毒|,|位|置|刚|好|正|对|着|太|古|汇|,|边|上|是|一|排|超|大|落|地|玻|璃|窗|,|能|看|到|体|育|西|路|的|车|水|马|龙|,|采|光|视|线|都|不|错|,|墙|壁|上|的|装|饰|也|很|用|心|,|我|们|位|置|后|面|是|一|墙|的|猫|咪|春|游|壁|画|,|樱|花|之|下|猫|咪|们|愉|快|用|餐|的|姿|态|萌|萌|哒|~|座|椅|用|的|是|矮|沙|发|+|配|套|的|木|质|桌|子|,|沙|发|满|软|的|,|刚|好|是|猫|咪|很|容|易|能|跳|上|去|的|高|度|,|桌|子|的|高|度|也|刚|刚|好|,|很|方|便|进|餐|,|有|一|股|家|的|味|道|,|很|闲|适|,|最|赞|的|是|每|张|桌|子|的|间|隔|都|很|宽|敞|,|坐|着|一|点|都|不|压|抑|,|聊|天|也|不|会|很|受|隔|壁|的|影|响|,|不|错||说|完|环|境|,|就|轮|到|最|核|心|的|#|猫|咪|#|了|,|与|这|里|宽|敞|的|环|境|相|比|,|猫|咪|的|数|量|就|完|全|不|成|正|比|,|只|有|小|猫|六|七|只|,|有|两|只|美|短|(|估|计|还|是|兄|弟|来|着|)|,|还|有|一|直|纯|白|的|波|斯|猫|、|一|只|脸|黑|的|暹|罗|猫|,|两|只|扁|脸|咖|啡|猫|(|其|中|一|只|脖|子|套|了|一|个|蝴|蝶|结|,|另|外|一|只|又|胖|又|懒|,|全|程|在|装|地|毯|)|,|还|有|一|只|纯|黑|的|小|奶|猫|(|没|认|出|品|种|,|但|是|身|娇|体|柔|易|推|倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不|够|,|不|过|猫|猫|都|很|干|净|、|很|乖|巧|,|能|抱|(|不|过|下|一|秒|就|逃|)|,|身|上|也|没|有|什|么|味|道|,|调|教|得|还|算|不|错|。||说|完|猫|咪|,|再|说|说|食|物|出|品|,|只|能|说|重|点|果|然|在|猫|,|食|物|就|一|般|般|啦|,|#|味|道|#|还|可|以|,|但|是|分|量|真|心|少|,|我|们|点|了|一|个|爆|浆|鸡|腿|肉|饭|(|2|8|)|、|一|个|番|茄|肉|酱|意|粉|(|3|6|)|、|一|壶|花|果|茶|(|玫|瑰|花|+|苹|果|花|3|6|)|,|一|共|1|0|0|,|团|购|后|8|8|,|人|均|4|4|。|先|说|我|的|鸡|腿|饭|,|味|道|还|o|k|,|是|切|开|的|小|块|鸡|腿|肉|+|腌|萝|卜|+|洋|葱|煮|的|肉|酱|拌|饭|,|鸡|腿|肉|虽|不|多|但|肉|都|满|嫩|的|,|下|饭|;|朋|友|的|番|茄|肉|酱|意|粉|那|个|分|量|感|觉|三|口|就|能|吃|完|,|偷|尝|了|一|根|味|道|不|错|,|就|是|性|价|比|很|低|;|花|果|茶|就|更|坑|爹|了|,|壶|里|面|的|茶|叶|花|蕾|就|那|么|两|三|颗|可|怜|的|漂|浮|着|,|茶|水|谈|而|无|味|,|根|本|不|值|得|这|个|价|,|差|评|。||最|后|稍|稍|提|一|下|#|服|务|#|除|了|最|开|始|的|给|我|们|喷|一|下|手|+|拿|菜|单|(|居|然|是|用|牛|皮|纸|手|写|的|)|给|我|们|点|下|菜|几|乎|全|程|自|助|,|没|有|热|情|交|谈|的|店|主|给|我|们|介|绍|店|里|的|猫|咪|,|也|没|有|店|员|给|我|们|拿|逗|猫|棒|、|猫|玩|具|,|态|度|冷|淡|,|在|最|后|快|离|开|的|时|候|,|还|有|一|个|女|的|一|边|在|给|气|球|打|气|(|据|说|2|点|有|包|场|活|动|估|计|是|布|置|场|地|的|工|作|人|员|)|,|一|边|用|炒|鸡|可|怕|的|眼|神|盯|着|我|们|,|吓|得|我|们|赶|紧|去|结|账|。||总|体|来|说|环|境|很|不|错|,|但|奔|着|去|看|猫|咪|的|可|能|有|点|失|望|了|,|食|物|的|性|价|比|也|很|低|,|不|过|环|境|蛮|安|静|的|,|比|较|适|合|去|下|午|茶|小|聚|,|顺|便|逗|逗|猫|咪|,|据|说|还|有|鸡|尾|酒|,|晚|上|去|的|可|以|尝|尝|"|"|和|很久|没|见|的|高中|同学|聚会|,|都|很|喜欢|猫咪|,|上次|约在|江南|西|的|某|家|猫咪|主题|餐厅|,|感觉|都|很|好|,|能|和|可爱|的|猫咪|亲密|接触|棒棒哒|,|于是|这|次|也|准备|约|到|猫咪|主题|的|餐厅|一边|吃饭|一边|逗|猫|,|在|大众|点评|上|看到|这|家|meow|1306|猫|小窝|评价|看上去|都|不错|,|于是|愉快|地|定下|了|午餐|之|约|(|下午|还|要|去|买|买|买|~|)|,|预定|了|12点|用餐|,|惭愧|地|迟到|了|半|小时|(|友人|迷路|了|半|小时|呵呵|,|其实|就是|体育|中心|a|出口|出去|直|走到|路口|左转|30|米|左右|就|到|了|╮|(|╯▽╰|)|╭|)|幸好|到达|之时|仍然|有|空位|,|安全|入座|。|先|说说|#|环境|#|,|空间|蛮大|的|,|全|店铺|木|地板|,|进门|需要|换|鞋|+|进行|手部|消毒|,|位置|刚好|正对着|太古汇|,|边上|是|一|排|超大|落地|玻璃窗|,|能|看到|体育|西路|的|车水马龙|,|采光|视线|都|不错|,|墙壁|上|的|装饰|也|很|用心|,|我们|位置|后面|是|一|墙|的|猫咪|春游|壁画|,|樱花|之下|猫咪们|愉快|用餐|的|姿态|萌萌哒|~|座椅|用|的|是|矮沙发|+|配套|的|木质|桌子|,|沙发|满|软|的|,|刚好|是|猫咪|很|容易|能|跳上|去|的|高度|,|桌子|的|高度|也|刚刚|好|,|很|方便|进餐|,|有|一|股|家|的|味道|,|很|闲适|,|最|赞|的|是|每|张|桌子|的|间隔|都|很|宽敞|,|坐|着|一点|都|不|压抑|,|聊天|也|不|会|很|受|隔壁|的|影响|,|不错|说完|环境|,|就|轮到|最|核心|的|#|猫咪|#|了|,|与|这里|宽敞|的|环境|相比|,|猫咪|的|数量|就|完全|不|成|正比|,|只有|小猫|六七|只|,|有|两|只|美|短|(|估计|还是|兄弟|来着|)|,|还有|一直|纯白|的|波斯猫|、|一|只|脸|黑|的|暹罗猫|,|两|只|扁|脸|咖啡|猫|(|其中|一|只|脖子|套|了|一|个|蝴蝶|结|,|另外|一|只|又|胖|又|懒|,|全程|在|装|地毯|)|,|还有|一|只|纯|黑|的|小奶|猫|(|没|认出|品种|,|但是|身娇体|柔易|推倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不够|,|不过|猫|猫|都|很|干净|、|很|乖巧|,|能|抱|(|不过|下|一|秒|就|逃|)|,|身上|也|没有|什么|味道|,|调教|得|还算|不错|。|说完|猫咪|,|再|说说|食物|出品|,|只能|说|重点|果然|在|猫|,|食物|就|一般|般|啦|,|#|味道|#|还|可以|,|但是|分量|真心|少|,|我们|点|了|一|个|爆浆|鸡腿|肉饭|(|28|)|、|一|个|番茄|肉酱|意粉|(|36|)|、|一|壶|花|果茶|(|玫瑰花|+|苹果花|36|)|,|一共|100|,|团购|后|88|,|人均|44|。|先|说|我|的|鸡腿|饭|,|味道|还|ok|,|是|切开|的|小|块|鸡腿|肉|+|腌萝卜|+|洋葱|煮|的|肉酱|拌饭|,|鸡腿|肉|虽|不|多|但|肉|都|满|嫩的|,|下饭|;|朋友|的|番茄|肉酱|意粉|那个|分量|感觉|三|口|就|能|吃完|,|偷|尝|了|一|根|味道|不错|,|就是|性价比|很低|;|花果|茶|就|更|坑|爹|了|,|壶|里面|的|茶叶|花蕾|就|那么|两|三|颗|可怜|的|漂浮|着|,|茶水|谈|而|无味|,|根本|不|值得|这个|价|,|差评|。|最后|稍稍|提|一下|#|服务|#|除了|最开始|的|给|我们|喷一|下手|+|拿|菜单|(|居然|是|用|牛皮纸|手写|的|)|给|我们|点|下|菜|几乎|全程|自助|,|没有|热情|交谈|的|店主|给|我们|介绍|店里|的|猫咪|,|也|没有|店员|给|我们|拿|逗|猫|棒|、|猫|玩具|,|态度|冷淡|,|在|最后|快|离开|的|时候|,|还有|一|个|女的|一边|在|给|气球|打气|(|据说|2|点|有|包场|活动|估计|是|布置|场地|的|工作|人员|)|,|一边|用|炒|鸡|可怕|的|眼神|盯|着|我们|,|吓|得|我们|赶紧|去|结账|。|总体|来说|环境|很|不错|,|但|奔着|去|看|猫咪|的|可能|有点|失望|了|,|食物|的|性价比|也|很|低|,|不过|环境|蛮|安静|的|,|比较|适合|去|下午|茶|小聚|,|顺便|逗逗|猫咪|,|据说|还有|鸡尾酒|,|晚上|去|的|可以|尝尝|" 1962 2018-10-19 19:12:25 0:06:53 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 19:15:18 0:30:10 "位置确实比较隐蔽,从美甲店上二楼就是,门口有个不大的招牌,幸好看了大家的点评得以顺利找到。首先说环境,装修让人很舒服,有吧台,也有包间。今天来给爸爸过生日,订了包间,能坐的舒服些,但之前不清楚包间有最低消费,老板很好,为我们破例了一次,特别感谢!菜品很精致,量是日料店一贯的比较秀气,但胜在质量,味道都很好,一看就是用料上乘。寿喜锅菜单上没有,却在墙上挂的推荐菜单中看到了,必点,要的牛肉锅。我是一直喜欢寿喜锅的,让我来尝一尝,鉴定一下。好吃,真的是很好吃,肥牛蘸着生鸡蛋,滑滑嫩嫩,真的完胜我吃过的除将太无二外的其他家,在我的排名中和将太无二并列。大家推荐的明太子鸡翅饺子和明太子黄油土豆都点了,味道都很赞,主要是比较新颖,超满意的一餐!服务也加分不少哦!" "|位|置|确|实|比|较|隐|蔽|,|从|美|甲|店|上|二|楼|就|是|,|门|口|有|个|不|大|的|招|牌|,|幸|好|看|了|大|家|的|点|评|得|以|顺|利|找|到|。|首|先|说|环|境|,|装|修|让|人|很|舒|服|,|有|吧|台|,|也|有|包|间|。|今|天|来|给|爸|爸|过|生|日|,|订|了|包|间|,|能|坐|的|舒|服|些|,|但|之|前|不|清|楚|包|间|有|最|低|消|费|,|老|板|很|好|,|为|我|们|破|例|了|一|次|,|特|别|感|谢|!|菜|品|很|精|致|,|量|是|日|料|店|一|贯|的|比|较|秀|气|,|但|胜|在|质|量|,|味|道|都|很|好|,|一|看|就|是|用|料|上|乘|。|寿|喜|锅|菜|单|上|没|有|,|却|在|墙|上|挂|的|推|荐|菜|单|中|看|到|了|,|必|点|,|要|的|牛|肉|锅|。|我|是|一|直|喜|欢|寿|喜|锅|的|,|让|我|来|尝|一|尝|,|鉴|定|一|下|。|好|吃|,|真|的|是|很|好|吃|,|肥|牛|蘸|着|生|鸡|蛋|,|滑|滑|嫩|嫩|,|真|的|完|胜|我|吃|过|的|除|将|太|无|二|外|的|其|他|家|,|在|我|的|排|名|中|和|将|太|无|二|并|列|。|大|家|推|荐|的|明|太|子|鸡|翅|饺|子|和|明|太|子|黄|油|土|豆|都|点|了|,|味|道|都|很|赞|,|主|要|是|比|较|新|颖|,|超|满|意|的|一|餐|!|服|务|也|加|分|不|少|哦|!|"|"|位置|确实|比较|隐蔽|,|从|美|甲|店|上|二|楼|就是|,|门口|有|个|不|大|的|招牌|,|幸好|看|了|大家|的|点评|得以|顺利|找到|。|首先|说|环境|,|装修|让|人|很|舒服|,|有|吧台|,|也|有|包间|。|今天|来给|爸爸|过|生日|,|订|了|包间|,|能|坐|的|舒服|些|,|但|之前|不|清楚|包间|有|最低|消费|,|老板|很|好|,|为|我们|破例|了|一|次|,|特别|感谢|!|菜品|很|精致|,|量|是|日|料|店|一贯|的|比较|秀气|,|但|胜|在|质量|,|味道|都|很|好|,|一|看|就是|用料|上乘|。|寿喜|锅|菜单|上|没有|,|却|在|墙|上|挂|的|推荐|菜单|中|看到|了|,|必点|,|要|的|牛肉锅|。|我|是|一直|喜欢|寿喜锅|的|,|让|我|来尝|一|尝|,|鉴定|一下|。|好吃|,|真的|是|很|好吃|,|肥牛蘸|着|生|鸡蛋|,|滑滑嫩嫩|,|真的|完胜|我|吃|过|的|除|将|太|无|二|外|的|其他|家|,|在|我|的|排名|中|和|将|太|无|二|并列|。|大家|推荐|的|明|太子|鸡翅|饺子|和|明|太子|黄油|土豆|都|点|了|,|味道|都|很|赞|,|主要|是|比较|新颖|,|超|满意|的|一|餐|!|服务|也|加分|不少|哦|!|" 571 2018-10-19 19:15:39 0:10:07 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 19:26:30 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 ================================================ FILE: projects/ai2018/sentiment/prepare.test/to-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-chars.py # \author chenghuige # \date 2018-10-28 08:37:28.846557 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import six assert six.PY3 import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback ifile = sys.argv[1] ofile = sys.argv[2] ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: l = [] for ch in filter.filter(contents[i]): l.append(ch) print(' '.join(l), file=out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.test/to-norm.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import gezi key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1]) contents = df[key].values for i in range(len(contents)): scontent = gezi.normalize(contents[i]) if scontent != contents[i]: print('------------------', i) print(contents[i]) print(scontent) contents[i] = scontent df[key] = contents df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare.test/to-simplify.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tqdm import tqdm import pandas as pd import gezi import traceback import six assert six.PY2, 'must using py2 env to do simplify' key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1], lineterminator='\n') contents = df[key].values num_modified = 0 num_errs = 0 for i in tqdm(range(len(contents)), ascii=True): try: scontent = gezi.to_simplify(contents[i]) except Exception: num_errs += 1 print(traceback.format_exc()) continue if scontent != contents[i]: # print('------------------', i) # print(contents[i]) # print(scontent) contents[i] = scontent num_modified += 1 df[key] = contents print('modify ratio', num_modified / len(df)) print('num_errs', num_errs) df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/README.md ================================================ first sh ./gen-vocab.sh to get vocab.txt then using like vocab-mincount.. to get vocab.5k.txt then merge with all chars from vocab.txt using vocab-add-char.py to get vocab.5k.chars.txt this is used for word embedding train then for canyin and dianping just use ./gen-mix-seg-canyin.py ./gen-char-seg-canyin.py ... not use ./gen-seg-canyin.py for this project for we do not want to consider more words not used here do also for dianping and train/valid/test data we will use all these data as word embedding pretrain sh ./gen-vocab-v2.sh will use simple just basic seg NOTICE this is depreceated for v2 just use same vocab as v1, v2 only diff when gen tfrecord will not feed single and will has char embedding since v2 word + char concat prove to be better then seg basic + single so try to further try seperate word and char embedding as V3 the script ./run-noemb-v3.sh is the same as ./run-noemb-v2.sh be sure you have char_vocab.txt under tfrecord dir 3 seg method 1.char char only 2.word.feed basic + digit + feed_sginle only consider first 6k top freq word 3.word.basic basic now change to below process 1. seg for train+valid+test 2. get vocab from train+valid+test 3. generate tfrecord using seg result and vocab use 4 seg method with below name 1. char 2. mix(jieba) 3. word (jieba pos, should be word.jieba) 4. besg(word by phrase bseg should be word.besg) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/__init__.py ================================================ import projects.ai2018.sentiment.prepare.filter ================================================ FILE: projects/ai2018/sentiment/prepare.testb/config ================================================ data_dir=./mount/data/ai2018/sentiment/ ================================================ FILE: projects/ai2018/sentiment/prepare.testb/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-10-17 14:44:21.024368 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('use_char', False, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_integer('word_limit', 3000, '') #flags.DEFINE_bool('use_pos', False, '') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/embeddings/fasttext/run.sh ================================================ #!/usr/bin/env bash # # Copyright (c) 2016-present, Facebook, Inc. # All rights reserved. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. An additional grant # of patent rights can be found in the PATENTS file in the same directory. # RESULTDIR=./ DATADIR=./ mkdir -p "${RESULTDIR}" mkdir -p "${DATADIR}" make ./fasttext skipgram -input "${DATADIR}"/text -output "${RESULTDIR}"/text -lr 0.025 -dim 300 \ -ws 5 -epoch 10 -minCount 20 -neg 5 -loss ns -bucket 2000000 \ -minn 2 -maxn 3 -thread 4 -t 1e-4 -lrUpdateRate 100 cut -f 1,2 "${DATADIR}"/rw/rw.txt | awk '{print tolower($0)}' | tr '\t' '\n' > "${DATADIR}"/queries.txt cat "${DATADIR}"/queries.txt | ./fasttext print-word-vectors "${RESULTDIR}"/text.bin > "${RESULTDIR}"/vectors.txt python eval.py -m "${RESULTDIR}"/vectors.txt -d "${DATADIR}"/rw/rw.txt ================================================ FILE: projects/ai2018/sentiment/prepare.testb/embeddings/glove/run.sh ================================================ #!/bin/bash set -e # Makes programs, downloads sample data, trains a GloVe model, and then evaluates it. # One optional argument can specify the language used for eval script: matlab, octave or [default] python make # 8 iter nan CORPUS=text VOCAB_FILE=vocab.txt COOCCURRENCE_FILE=cooccurrence.bin COOCCURRENCE_SHUF_FILE=cooccurrence.shuf.bin BUILDDIR=build SAVE_FILE=vectors VERBOSE=2 MEMORY=4.0 VOCAB_MIN_COUNT=20 VECTOR_SIZE=300 MAX_ITER=15 WINDOW_SIZE=15 BINARY=2 NUM_THREADS=8 X_MAX=10 echo "$ $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE" $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE echo "$ $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE" $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE echo "$ $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE" $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE echo "$ $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE" $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE echo "$ python eval/python/evaluate.py" python eval/python/evaluate.py ================================================ FILE: projects/ai2018/sentiment/prepare.testb/filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter.py # \author chenghuige # \date 2018-09-14 21:55:52.069104 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('simplify', False, '') import sys import os import gezi def filter_duplicate_space(text): return ''.join([x for i, x in enumerate(text) if not (i < len(text) - 1 and not(x.strip()) and not(text[i + 1].strip()))]) # # def translate_emotion(word): # # dic = { # # '🍲' : '火锅', # # '🌶️' : '辣' # # } # # if word in dic: # # return dic[word] # # return word # def translate_emotions(text): # return text.replace('🍲', '火锅').replace('🌶️', '辣') def filter(x): x = x.strip('"') x = filter_duplicate_space(x) x = gezi.remove_duplicate(x) x = gezi.filter_quota(x).replace('\r', '\x01').replace('\n', '\x02').replace('', '\x01').replace('', '\x02').replace('\t', ' ').replace(' ', '\x03') # # So here actually always fals as is done in preprocess using py2 # if FLAGS.simplify: # # to lower, to simplify, to half # x = gezi.to_simplify(x) #x = translate_emotions(x) # TODO if needed try to find case usefull or not I think especally for sentiment not reading, lower is ok not loose important info like NIKE x = x.lower() return x ================================================ FILE: projects/ai2018/sentiment/prepare.testb/find-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-chars.py # \author chenghuige # \date 2018-10-01 20:35:40.158875 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from projects.ai2018.sentiment.prepare import filter df = pd.read_csv('/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv') chars = set() for comment in df['content']: comment = filter.filter(comment) for w in comment: if w not in chars: print(w) chars.add(w) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-canyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./raw_comment_v2.csv') print(len(df)) df2 = pd.DataFrame() ids = ['c{}'.format(i) for i in range(len(df))] contents = df['content'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) labels = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['score'] label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -2 labels.append(label) df2['others_overall_experience'] = labels df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./canyin.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-canyin.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os files = [ './mount/data/ai2018/sentiment/train.csv', './mount/data/ai2018/sentiment/valid.csv', './mount/data/ai2018/sentiment/test.csv' ] import pandas as pd import filter for infile in files: df = pd.read_csv(infile) for row in df.iterrows(): content = filter.filter(row[1][1]) print(content) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-dianping.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./ratings.csv') print(len(df)) df2 = pd.DataFrame() ids = ['d{}'.format(i) for i in range(len(df))] contents = df['comment'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) def score2class(score): label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -1 return label labels = [] labels_env = [] labels_flavor = [] labels_service = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['rating'] score_env = row['rating_env'] score_flavor = row['rating_flavor'] score_service = row['rating_service'] labels.append(score2class(score)) labels_env.append(score2class(score_env)) labels_flavor.append(score2class(score_flavor)) labels_service.append(score2class(score_service)) df2['others_overall_experience'] = labels df2['environment_decoration'] = labels_env df2['dish_taste'] = labels_flavor df2['service_waiters_attitude'] = labels_service df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./dianping.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-dianping.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-lm-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/my-embedding/Glove-sentiment-jieba/valid', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft/vocab.txt', 'vocabulary txt file') flags.DEFINE_integer('threads', None, '') flags.DEFINE_string('source', 'dianping', 'dianping or baike or zhidao or zhihu') flags.DEFINE_integer('max_sentence_len', 20, '') flags.DEFINE_string('tfrecord_dir', 'tfrecord', '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) vocab = None char_vocab = None def build_features(file_): if not os.path.isfile(file_): return file_name = os.path.basename(file_) assert os.path.isdir(FLAGS.input) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) out_file = os.path.join(dir_ , '{}/{}/{}.record'.format(FLAGS.tfrecord_dir, mode, file_name)) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('infile', file_, 'out_file', out_file) # if os.path.exists(out_file): # return max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for line in tqdm(open(file_), total=1e6, ascii=True): try: line = line.rstrip('\n') line = filter.filter(line) words = line.split(' ') words = gezi.add_start_end(words) words_list = gezi.break_sentence(words, FLAGS.max_sentence_len) for words in words_list: content = ' '.join(words) content_ids = [vocab.id(x) for x in words] if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) else: char_ids = [0] feature = { 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content), 'char': melt.int64_feature(char_ids), 'source': melt.bytes_feature(FLAGS.source), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): FLAGS.word_limit = 2000 global vocab, char_vocab vocab = gezi.Vocabulary(FLAGS.vocab_) print('vocab file', FLAGS.vocab_, 'vocab size', vocab.size()) if FLAGS.use_char: char_vocab = gezi.Vocabulary(FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt')) files = glob.glob(FLAGS.input + '/*') pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(build_features, files) pool.close() pool.join() # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) mode = 'train' if 'train' in FLAGS.input else 'valid' dir_ = os.path.dirname(os.path.dirname(FLAGS.input)) os.system('mkdir -p %s/%s/%s' % (dir_, FLAGS.tfrecord_dir, mode)) out_file = os.path.join(dir_, '{}/{}/num_records.txt'.format(FLAGS.tfrecord_dir, mode)) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-mix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-mix-vocab.py # \author chenghuige # \date 2018-10-23 06:48:14.182012 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os vocab_file = sys.argv[1] char_vocab_file = sys.argv[2] num_words = int(sys.argv[3]) words = set() for i, line in enumerate(open(vocab_file)): if i == num_words: break word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') for line in open(char_vocab_file): ch, count = line.rstrip('\n').split('\t') if ch not in words: print(ch, count, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/sentiment/valid.csv', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', 7, '10 or 5?') flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', True, '') flags.DEFINE_bool('augument', False, '') flags.DEFINE_string('mode', None, '') flags.DEFINE_string('mode_', None, '') flags.DEFINE_bool('ignore_start_end', False, 'If you have not remove start and end quota before,you can filter here') flags.DEFINE_bool('add_start_end_', True, '') flags.DEFINE_bool('has_position', False, '') flags.DEFINE_bool('fixed_vocab', False, '') flags.DEFINE_string('start_mark', '', '') flags.DEFINE_string('end_mark', '', '') flags.DEFINE_string('unk_word', '', '') flags.DEFINE_bool('word_only', False, '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from tqdm import tqdm from gezi import Vocabulary import gezi #assert gezi.env_has('JIEBA_POS') from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None vocab = None char_vocab = None pos_vocab = None ner_vocab = None seg_result = None pos_result = None ner_result = None def get_mode(path): mode = 'train' if 'train' in path: mode ='train' elif 'valid' in path: mode = 'train' elif 'test' in path: mode = 'test' elif '.pm' in path: mode = 'pm' elif 'trans' in path: mode = 'trans' elif 'deform' in path: mode = 'deform' elif 'canyin' in path: mode = 'canyin' elif 'dianping' in path: mode = 'dianping' if FLAGS.augument: mode = 'aug.' + mode if FLAGS.mode: mode = FLAGS.mode return mode def build_features(index): mode = get_mode(FLAGS.input) start_index = FLAGS.start_index out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: num_records = 1 start, end = gezi.get_fold(total, num_records, index) print('total', total, 'infile', FLAGS.input, 'out_file', out_file) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in tqdm(range(start, end), ascii=True): try: row = df.iloc[i] id = str(row[0]) if seg_result: if id not in seg_result: print('id %s ot found in seg_result' % id) continue words = seg_result[id] if FLAGS.add_start_end_: words = gezi.add_start_end(words, FLAGS.start_mark, FLAGS.end_mark) if pos_result: pos = pos_result[id] if FLAGS.add_start_end_: pos = gezi.add_start_end(pos) if ner_result: ner = ner_result[id] if FLAGS.add_start_end_: ner = gezi.add_start_end(ner) if start_index > 0: id == 't' + id content = row[1] content_ori = content content = filter.filter(content) #label = list(row[2:]) label = [-2] * 20 #label = [x + 2 for x in label] #num_labels = len(label) if not seg_result: content_ids, words = text2ids_(content, preprocess=False, return_words=True) assert len(content_ids) == len(words) else: content_ids = [vocab.id(x) for x in words] #print(words, content_ids) #exit(0) if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit and len(content_ids) < 5: print('{} {} {}'.format(id, len(content_ids), content_ori)) #if len(content_ids) > FLAGS.word_limit: # print(id, content) # if mode not in ['test', 'valid']: # continue #if len(content_ids) < 5 and mode not in ['test', 'valid']: # continue content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] # NOTICE different from tf, pytorch do not allow all 0 seq for rnn.. if using padding mode if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) if np.sum(char_ids) == 0: print('------------------------bad id', id) print(content_ids) print(words) exit(0) else: char_ids = [0] if pos_vocab: assert pos pos = pos[:FLAGS.word_limit] pos_ids = [pos_vocab.id(x) for x in pos] else: pos_ids = [0] if ner_vocab: assert ner if pos_vocab: assert len(pos) == len(ner) ner = ner[:FLAGS.word_limit] ner_ids = [ner_vocab.id(x) for x in ner] else: ner_ids = [0] wlen = [len(word) for word in words] feature = { 'id': melt.bytes_feature(id), 'label': melt.int64_feature(label), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content_ori), 'char': melt.int64_feature(char_ids), 'pos': melt.int64_feature(pos_ids), # might also be postion info for mix seg 'ner': melt.int64_feature(ner_ids), 'wlen': melt.int64_feature(wlen), 'source': melt.bytes_feature(mode), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): mode = get_mode(FLAGS.input) assert FLAGS.use_fold #text2ids.init(FLAGS.vocab_) global vocab, char_vocab, pos_vocab, ner_vocab, seg_result, pos_result, ner_result #vocab = text2ids.vocab vocab = gezi.Vocabulary(FLAGS.vocab_, fixed=FLAGS.fixed_vocab, unk_word=FLAGS.unk_word) print('vocab size:', vocab.size()) char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) print('char vocab size:', char_vocab.size()) pos_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'pos_vocab.txt') if os.path.exists(pos_vocab_file): pos_vocab = Vocabulary(pos_vocab_file) print('pos vocab size:', pos_vocab.size()) ner_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'ner_vocab.txt') if os.path.exists(ner_vocab_file): ner_vocab = Vocabulary(ner_vocab_file) print('ner vocab size:', ner_vocab.size()) mode_ = 'train' if 'valid' in FLAGS.input: mode_ = 'valid' elif 'test' in FLAGS.input: mode_ = 'test' else: assert 'train' in FLAGS.input if FLAGS.augument: mode_ = 'aug.' + mode_ if FLAGS.mode_: mode_ = FLAGS.mode_ seg_file = FLAGS.vocab_.replace('vocab.txt', '%s.seg.txt' % mode_) seg_result = {} if os.path.exists(seg_file): print('seg or seg_pos exits:', seg_file) pos_result = {} for line in open(seg_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0] and not FLAGS.word_only: l = [x.rsplit('|', 1) for x in segs] segs, pos = list(zip(*l)) pos_result[id] = pos seg_result[id] = segs seg_done = True if seg_result else False ner_file = FLAGS.vocab_.replace('vocab.txt', '%s.ner.txt' % mode_) ner_result = {} if os.path.exists(ner_file): print('seg_ner exists:', ner_file) for line in open(ner_file): id, segs = line.rstrip('\n').split('\t', 1) segs = segs.split('\x09') if FLAGS.ignore_start_end: segs = segs[1:-1] if '|' in segs[0]: l = [x.split('|') for x in segs] segs, ner = list(zip(*l)) if not seg_done: seg_result[id] = segs ner_result[id] = ner print('len(seg_result)', len(seg_result)) print('len(ner_result)', len(ner_result)) # print('to_lower:', FLAGS.to_lower, 'feed_single:', FLAGS.feed_single, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) # print(text2ids.ids2text(text2ids_('傻逼脑残B'))) # print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) global df df = pd.read_csv(FLAGS.input, lineterminator='\n') pool = multiprocessing.Pool() if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: FLAGS.num_records_ = 1 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() # for i in range(FLAGS.num_records_): # build_features(i) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-trans.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-trans.py # \author chenghuige # \date 2018-10-03 22:43:06.305917 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm df = pd.read_csv('./train.csv') comments = {} for line in open('./train.en.txt'): try: id, comment = line.rstrip().split('\t') comments[id] = comment except Exception: pass print(len(comments)) num_modify = 0 num_bads = 0 for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] id = row['id'] id = str(id) if id in comments: if len(comments[id].replace(' ', '')) < len(row['content'].replace(' ', '')) * 1.5 and len(comments[id].replace(' ', '')) > len(row['content'].replace(' ', '')) * 0.7: df.loc[i,'content'] = comments[id] num_modify += 1 else: print('bad translate:', comments[id]) print('ori', row['content']) num_bads += 1 print(num_modify, num_bads) df.to_csv('./trans.en.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-trans.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-vocab-v2.sh ================================================ python gen-content.py | python gen-vocab.py --seg_method='basic' --vocab_name='vocab.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import sys,os #os.environ['JIEBA_POS'] = '1' import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/sentiment/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single_all', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method import traceback from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np from gezi import Segmentor segmentor = Segmentor() print(segmentor, file=sys.stderr) import gezi #assert gezi.env_has('JIEBA_POS') logging = gezi.logging logging.init('/tmp') from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() text = filter.filter(text) try: words = segmentor.Segment(text, FLAGS.seg_method) except Exception: print(num, '-----------fail', text) print(traceback.format_exc()) continue if num % 10000 == 0: logging.info(text, '|'.join(words), len(words)) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') flags.DEFINE_integer('max_words', 200000, '') flags.DEFINE_bool('add_additional', True, 'add additional words from embedding file, this is by default for word') flags.DEFINE_string('sort_by', 'count', '') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab print('input_vocab', input_vocab) dir_ = os.path.dirname(FLAGS.input_vocab) lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) try: vector = list(map(float, array[-vec_size:])) except Exception: print(i, line) continue if word.lower() in normed_ori_set: embedding_dict[word] = vector else: embedding_dict[word.lower()] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if FLAGS.sort_by == 'count': print('sort by count') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) else: print('sort by knowldege') words_knowledge = [] emb_mat_knowledge = [] words_no_knowledge = [] emb_mat_no_knowledge = [] with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): #if FLAGS.type == 'normal': if word in embedding_dict: emb_mat_knowledge.append(np.array(embedding_dict[word])) words_knowledge.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) emb_mat_no_knowledge.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words_no_knowledge.append(word) # elif FLAGS.type == 'scratch': # if count >= FLAGS.min_count: # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) # else: # #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) # emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # words.append(word) # elif FLAGS.type == 'only': # if word in embedding_dict: # emb_mat.append(np.array(embedding_dict[word])) # words.append(word) #if FLAGS.sort_by == 'knowledge': words += words_no_knowledge emb_mat += emb_mat_no_knowledge words += words_knowledge emb_mat += emb_mat_knowledge words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) if FLAGS.add_additional: for word in embedding_dict: if word not in words_set: words_set.add(word) words.append(word) emb_mat.append(np.array(embedding_dict[word])) if len(words) > FLAGS.max_words: break print('num words after adding additional', len(words)) out_vocab = os.path.join(dir_, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) print('out_vocab', out_vocab) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(dir_, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) print('out_mat', out_mat) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/merge-vocabs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-vocabs.py # \author chenghuige # \date 2018-10-23 02:07:23.291646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os m = {} files = sys.argv[1:] num_files = len(files) print('num_files', num_files, file=sys.stderr) for file_ in files: for line in open(file_): word, count = line.rstrip('\n').split('\t', 1) count = int(count) if word not in m: m[word] = count else: m[word] += count sorted_by_value = sorted(m.items(), key=lambda kv: -kv[1]) for key, val in sorted_by_value: print(key, val, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/pre-mix-seg-v1.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') import sys,os import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback # TODO bseg py2 not support if using melt .. from wenzheng.utils import text2ids from text2ids import text2ids as text2ids_ def seg(id, text, out): text = filter.filter(text) _, words = text2ids_(text, return_words=True) print(id, '\x09'.join(words), sep='\t', file=out) def main(_): FLAGS.seg_method = 'basic_digit' FLAGS.feed_single = True FLAGS.feed_single_en = True print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('feed_single:', FLAGS.feed_single, file=sys.stderr) print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) text2ids.init(FLAGS.vocab) counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') assert FLAGS.vocab ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: #print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/pre-mix-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description mix seg must have input vocab # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('name', None, '') flags.DEFINE_string('vocab', None, '') flags.DEFINE_bool('for_pretrain', False, '') import sys,os #os.environ['BSEG'] = '1' import numpy as np import gezi from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback #assert gezi.env_has('BSEG') import six if gezi.env_has('BSEG'): assert six.PY2 vocab = None def seg(id, text, out, counter): text = filter.filter(text) words = [] for i, word in enumerate(gezi.cut(text)): counter.add(str(i)) if vocab.has(word) and not word.isdigit(): words.append('%s|%d' % (word, i)) else: if six.PY2: for ch in word.decode('utf8'): words.append('%s|%d' % (ch.encode('utf8'), i)) else: for ch in word: words.append('%s|%d' % (ch, i)) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) def main(_): # FLAGS.seg_method = 'basic_digit' # FLAGS.feed_single = True # FLAGS.feed_single_en = True # print('seg_method:', FLAGS.seg_method, file=sys.stderr) # print('feed_single:', FLAGS.feed_single, file=sys.stderr) # print('feed_single_en:', FLAGS.feed_single_en, file=sys.stderr) #assert FLAGS.vocab global vocab vocab = gezi.Vocabulary(FLAGS.vocab) ifile = sys.argv[1] if not gezi.env_has('BSEG'): ofile = ifile.replace('.csv', '.seg.jieba.mix.txt') else: ofile = ifile.replace('.csv', '.seg.bseg.mix.txt') counter = WordCounter(most_common=0, min_count=1) vocab2 = ifile.replace('.csv', '.pos.mix.vocab') ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, counter) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.testb/pre-seg-bert.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import sys,os import numpy as np import gezi import pandas as pd from tqdm import tqdm import traceback from projects.ai2018.sentiment.prepare import filter from third.bert import tokenization tokenizer = tokenization.BasicTokenizer() def seg(id, text, out): text = filter.filter(text) words = tokenizer.tokenize(text) print(id, '\x09'.join(words), sep='\t', file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) num_errs = 0 with open(ofile, 'w') as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): try: seg(ids[i], contents[i], out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/pre-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_string('name', None, '') flags.DEFINE_bool('for_pretrain', False, '') flags.DEFINE_string('sp_path', None, '') assert FLAGS.seg_method import six if FLAGS.seg_method == 'char': assert not six.PY2 import sys,os import numpy as np import gezi #assert gezi.env_has('JIEBA_POS') from gezi import WordCounter import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback START_WORD = '' END_WORD = '' counter = WordCounter(most_common=0, min_count=1) counter2 = WordCounter(most_common=0, min_count=1) print('seg_method:', FLAGS.seg_method, file=sys.stderr) if gezi.env_has('SENTENCE_PIECE'): assert FLAGS.sp_path gezi.segment.init_sp(FLAGS.sp_path) def seg(id, text, out, type): text = filter.filter(text) counter.add(START_WORD) counter.add(END_WORD) l = gezi.cut(text, type) if type != 'word': for x, y in l: counter.add(x) counter2.add(y) words = ['%s|%s' % (x, y) for x,y in l] else: if FLAGS.seg_method == 'char': l2 = [] for i, w in enumerate(l): for ch in w: counter.add(ch) counter2.add(str(i)) l2.append((ch, i)) words = ['%s|%d' % (x, y) for x,y in l2] else: words = l for w in words: counter.add(w) if not FLAGS.for_pretrain: print(id, '\x09'.join(words), sep='\t', file=out) else: print(' '.join([x.split('|')[0] for x in words]), file=out) assert FLAGS.name ifile = sys.argv[1] ofile = ifile.replace('.csv', '.seg.%s.txt' % FLAGS.name) vocab = ifile.replace('.csv', '.seg.%s.vocab' % FLAGS.name) type_ = 'word' vocab2 = None if 'pos' in FLAGS.name or FLAGS.seg_method == 'char': vocab2 = ifile.replace('.csv', '.pos.%s.vocab' % FLAGS.name) if 'pos' in FLAGS.name: type_ = 'pos' elif 'ner' in FLAGS.name: vocab2 = ifile.replace('.csv', '.ner.%s.vocab' % FLAGS.name) type_ = 'ner' ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): #if str(ids[i]) in ids_set: # continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: seg(ids[i], contents[i], out, type=type_) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) counter.save(vocab) if vocab2: counter2.save(vocab2) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-char-bert.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.bert/ sh ./run-noemb-char-bert.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-char-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.ft emb=./mount/data/my-embedding/fastText-sentiment-char/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-char-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char.glove emb=./mount/data/my-embedding/GloVe-sentiment-char/vectors.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-char.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/char sh ./run-noemb-char.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-char-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.len256 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-char.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/char.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/valid/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-char/corpus/train/ --use_char=0 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-jieba-mix-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/valid/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba-mix/corpus/train/ --use_char=1 --max_sentence_len=256 --tfrecord_dir tfrecord.len256 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-mix.sh ================================================ ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-baike-len20.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=20 --tfrecord_dir tfrecord.len20 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-baike.sh ================================================ python ./gen-lm-records.py --input ./mount/data/baidu/corpus.jieba/train/ --use_char=1 --source=baike --max_sentence_len=40 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-bseg-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-bseg-ner-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-bseg-ner2-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-bseg-ner/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-jieba-tx-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus.tx/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-len40.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-sp10w-len40.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=40 --tfrecord_dir tfrecord.len40 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-sp10w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/valid/ --use_char=1 --vocab_ $vocab python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/corpus/train/ --use_char=1 --vocab_ $vocab ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-sp1w-baike.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/baidu/corpus.sp1w/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --source=baike ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-sp1w-len256.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=256 --tfrecord_dir tfrecord.256 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word-sp1w.sh ================================================ vocab=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft/vocab.txt python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/valid/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/corpus/train/ --use_char=1 --vocab_ $vocab --max_sentence_len=128 --tfrecord_dir tfrecord ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-lm-word.sh ================================================ python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/valid/ --use_char=1 python ./gen-lm-records.py --input ./mount/data/my-embedding/GloVe-sentiment-jieba/corpus/train/ --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg-mix/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-bseg-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.10epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-10epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-bseg-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove.40epoch emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix-40epoch/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-bseg-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.bseg.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.glove emb=./mount/data/my-embedding/GloVe-sentiment-mix/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba-mix/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-mix-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/mix.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-mix.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-aug.sh ================================================ vocab=$1 name=$2 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.valid --mode aug.$name.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.test --mode aug.$name.test #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --mode_ aug.$name.train --mode aug.$name.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-char-bert.sh ================================================ vocab=$1 #python ./gen-records.py --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --use_char=0 --vocab_=$vocab --fixed_vocab=1 --start_mark='[CLS]' --end_mark='[SEP]' --unk_word='[UNK]' #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-char.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=char --feed_single=0 --use_char=0 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-mix-charaug.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.valid --mode aug.char.train python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.test --mode aug.char.test #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=0 --vocab_=$vocab --mode_ aug.char.train --mode aug.char.train #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-mix.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic_digit --feed_single=1 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb-wordonly.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --word_only=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-noemb.sh ================================================ vocab=$1 #python ./gen-records.py --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab #python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ft emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.glove emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-ft-knowldege.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft.knowledge/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --sort_by=knowledge sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft/ #emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft2/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.ft3/ emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec #emb=./mount/data/my-embedding/fastText-sentiment-bseg-ner/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-glove-10epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb= ./mount/data/my-embedding/GloVe-sentiment-bseg/ /vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-glove-40epoch.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.glove/ emb=./mount/data/my-embedding/GloVe-sentiment-bseg/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-ner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.ner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-subner-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.ft/ emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-bseg-subner-jiebapre-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.bseg.subner.jiebapre.ft/ emb=./mount/data/my-embedding/fastText-sentiment-basic-pos/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-ft-short.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft.short emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim vocab=$dir/vocab.txt python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.short.csv --seg_method=basic --feed_single=0 --use_char=1 --vocab_=$vocab --word_only=1 #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-pos-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.ft emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-pos-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.pos.glove emb=./mount/data/my-embedding/GloVe-sentiment-jieba/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-jieba-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.jieba.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp10w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-10w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp10w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-10w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp10w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp10w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp1w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-1w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp1w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-1w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp1w-tx.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp1w.tx emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim --add_additional=0 sh ./run-noemb.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp20w-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.ft emb=./mount/data/my-embedding/fastText-sentiment-sentencepiece-20w/text.vec emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-sp20w-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.sp20w.glove emb=./mount/data/my-embedding/GloVe-sentiment-sentencepiece-20w/vectors.fix.txt emb_dim=300 #python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb-wordonly.sh $dir/vocab.txt #sh ./run-noemb-aug.sh $dir/vocab.txt seg pushd . cd .. python ./read-records.py --type=dump --base=$dir python read-records.py --base=$dir --type show_info popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-ft.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft emb=./mount/data/my-embedding/fastText-sentiment-stanford/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-ft2.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft2 emb=./mount/data/my-embedding/fastText-sentiment-jieba/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-ft3.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.ft3 emb=./mount/data/my-embedding/fastText-sentiment-bseg/text.vec emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-glove.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.glove emb=./mount/data/my-embedding/GloVe-sentiment-stanford/vectors.fix.txt emb_dim=300 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-stanford-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.stanford.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-tx-ftchar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.ftchar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run-word-tx-glovechar.sh ================================================ dir=./mount/temp/ai2018/sentiment/tfrecords/word.tx.glovechar emb=./mount/data/word-emb/Tencent_AILab_ChineseEmbedding.txt emb_dim=200 python ./merge-emb.py --input_vocab=$dir/vocab.ori.txt --emb=$emb --emb_dim=$emb_dim sh ./run-noemb.sh $dir/vocab.txt pushd . cd .. python ./read-records.py --type=dump --base=$dir popd ================================================ FILE: projects/ai2018/sentiment/prepare.testb/run.sh ================================================ sh ./run-char-ft.sh sh ./run-char-glove.sh sh ./run-word-jieba-ft.sh sh ./run-word-jieba-glove.sh sh ./run-word-bseg-ft.sh sh ./run-word-bseg-glove.sh sh ./run-word-bseg-ner-ft.sh sh ./run-word-bseg-ner-glove.sh sh ./run-word-sp10w-ft.sh sh ./run-word-sp10w-glove.sh sh ./run-word-sp1w-ft.sh sh ./run-word-sp1w-glove.sh sh ./run-mix-jieba-ft.sh ================================================ FILE: projects/ai2018/sentiment/prepare.testb/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('feed_single', False, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text, preprocess=True, return_words=False): wenzheng.utils.text2ids.init() if preprocess: text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single=FLAGS.feed_single, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=False, pad=False, return_words=return_words) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/tmp ================================================ 2018-10-19 10:42:16 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:42:54 0:00:40 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:43:12 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 10:44:32 0:01:21 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 10:45:45 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 10:50:15 0:04:33 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:03:14 0:00:02 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:06:18 0:03:06 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍|山|而|建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有|嚼|头|。||鸵心|拼|鸵肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的了|的|。||入口处|养|了|两只|鸵鸟|,|萌|哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 384 2018-10-19 15:09:20 0:06:08 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放|着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多|加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬|面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 395 2018-10-19 15:12:22 0:09:09 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点|单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我|点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一|坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完|胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是现|烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再|来|了|。|" 608 2018-10-19 15:15:26 0:12:13 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很好|有劲||微甜||羊杂|汤||里面|料|很足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满|大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没|花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 473 2018-10-19 15:18:28 0:15:15 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐|前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远|看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换|个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 351 2018-10-19 15:21:30 0:18:17 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝|点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就快|没|地方|了|,|得|提前|点|过去|抢|个|车位|再说|~|哈哈|" 349 2018-10-19 15:24:32 0:21:19 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长|草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用|券||实在|是|划算|。||今天|晚上|雨|下|的|挺大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我一|问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不|肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 514 2018-10-19 15:27:34 0:24:21 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店|内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮|面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤|是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带|娃|来|吃|还是|划算|滴|。||跟|博多|一幸舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉肉|没有|博多|一幸舍|的|大片|,|但是|味道|还|不错|,|嫩香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已|熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡|排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽菜|带|着|蔬菜汁|所以|是|水|脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不|像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚丸|店|加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1126 2018-10-19 15:32:53 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送|人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那|取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 370 2018-10-19 15:33:36 0:00:01 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼|吼|,|萌死|人|的|棒棒糖|,|中|了|大众|点评|的|霸王餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不会|很甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是太|高端|大气|上档次|了|,|还|可以|买|蝴蝶结|扎口|,|送人|可以|买|礼盒|。|我|是|先|打|的|卖家|电话|,|加|了|微信|,|给|卖家|传|的|照片|。|等|了|几天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官|屯|那取|的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得吃|啊|。|" 368 2018-10-19 15:33:57 0:00:22 "椒江过去的,超级方便,直接导航临海汽车站。斜对面,很大的广告牌。环境超级棒,门前是一片农田,傍山而建,台阶顺势而上,庭院青青。都是包厢。服务员素质不错,很热情,上菜也快。菜品价格不贵,分量很足。记忆尤深是,客家酿豆腐,豆腐入味,汤汁很美味。鸵鸟蛋超级大,一开始不敢吃,吃了后,觉得口感不错,比鸡蛋有嚼头。鸵心拼鸵肝,一般人接受不了,哈哈哈哈,因为本来内脏都不是一般人接受的了的。入口处养了两只鸵鸟,萌哒哒。环境真的不是一般的棒,推荐亲子游。" "|椒|江|过|去|的|,|超|级|方|便|,|直|接|导|航|临|海|汽|车|站|。|斜|对|面|,|很|大|的|广|告|牌|。||环|境|超|级|棒|,|门|前|是|一|片|农|田|,|傍|山|而|建|,|台|阶|顺|势|而|上|,|庭|院|青|青|。|都|是|包|厢|。||服|务|员|素|质|不|错|,|很|热|情|,|上|菜|也|快|。||菜|品|价|格|不|贵|,|分|量|很|足|。||记|忆|尤|深|是|,|客|家|酿|豆|腐|,|豆|腐|入|味|,|汤|汁|很|美|味|。||鸵|鸟|蛋|超|级|大|,|一|开|始|不|敢|吃|,|吃|了|后|,|觉|得|口|感|不|错|,|比|鸡|蛋|有|嚼|头|。||鸵|心|拼|鸵|肝|,|一|般|人|接|受|不|了|,|哈|哈|哈|哈|,|因|为|本|来|内|脏|都|不|是|一|般|人|接|受|的|了|的|。||入|口|处|养|了|两|只|鸵|鸟|,|萌|哒|哒|。||环|境|真|的|不|是|一|般|的|棒|,|推|荐|亲|子|游|。|"|"|椒江|过去|的|,|超级|方便|,|直接|导航|临海|汽车站|。|斜对面|,|很大|的|广告牌|。||环境|超级|棒|,|门前|是|一片|农田|,|傍山|而建|,|台阶|顺势|而|上|,|庭院|青青|。|都|是|包厢|。||服务员|素质|不错|,|很|热情|,|上菜|也|快|。||菜品|价格|不|贵|,|分量|很足|。||记忆|尤深|是|,|客家|酿|豆腐|,|豆腐|入味|,|汤汁|很|美味|。||鸵鸟蛋|超级|大|,|一|开始|不敢|吃|,|吃|了|后|,|觉得|口感|不错|,|比|鸡蛋|有嚼头|。||鸵心|拼|鸵|肝|,|一般|人|接受|不了|,|哈哈哈哈|,|因为|本来|内脏|都|不是|一般|人|接受|的|了|的|。||入口处|养|了|两只|鸵鸟|,|萌哒|哒|。||环境|真的|不是|一般|的|棒|,|推荐|亲子|游|。|" 381 2018-10-19 15:34:17 0:00:42 "伊势丹楼下,路过很多次都没有进来~终于有机会来尝一尝了大阪煎饼了!店面比较小,放着日本名族歌曲,日本小店的感觉~老板是个亲切的日本大叔~【章鱼小丸子】很q弹!真的是我吃过最q弹的小丸子!里面很明显有一块有嚼劲的章鱼肉~【海鲜大阪煎饼】味道很好,蛋皮里面包的虾,扇贝肉,鸡蛋,还有些菜~加了奶酪,多加十元,但是感觉意义不大。【海鲜大阪烧】这个是送错餐送给我们吃的~里面只有虾,感觉没得煎饼好吃,价格比煎饼便宜。【乌冬面】很清淡,但是汤很有味道~面有嚼劲~" "|伊|势|丹|楼|下|,|路|过|很|多|次|都|没|有|进|来|~|终|于|有|机|会|来|尝|一|尝|了|大|阪|煎|饼|了|!|店|面|比|较|小|,|放|着|日|本|名|族|歌|曲|,|日|本|小|店|的|感|觉|~|老|板|是|个|亲|切|的|日|本|大|叔|~||【|章|鱼|小|丸|子|】|很|q|弹|!|真|的|是|我|吃|过|最|q|弹|的|小|丸|子|!|里|面|很|明|显|有|一|块|有|嚼|劲|的|章|鱼|肉|~||【|海|鲜|大|阪|煎|饼|】|味|道|很|好|,|蛋|皮|里|面|包|的|虾|,|扇|贝|肉|,|鸡|蛋|,|还|有|些|菜|~|加|了|奶|酪|,|多|加|十|元|,|但|是|感|觉|意|义|不|大|。||【|海|鲜|大|阪|烧|】|这|个|是|送|错|餐|送|给|我|们|吃|的|~|里|面|只|有|虾|,|感|觉|没|得|煎|饼|好|吃|,|价|格|比|煎|饼|便|宜|。||【|乌|冬|面|】|很|清|淡|,|但|是|汤|很|有|味|道|~|面|有|嚼|劲|~|"|"|伊势|丹|楼下|,|路过|很|多次|都|没有|进来|~|终于|有|机会|来|尝一尝|了|大阪|煎饼|了|!|店面|比较|小|,|放着|日本|名族|歌曲|,|日本|小店|的|感觉|~|老板|是|个|亲切|的|日本|大叔|~||【|章鱼|小丸子|】|很|q|弹|!|真的|是|我|吃|过|最|q|弹|的|小丸子|!|里面|很|明显|有|一块|有|嚼|劲|的|章|鱼肉|~||【|海鲜|大阪|煎饼|】|味道|很|好|,|蛋|皮里|面包|的|虾|,|扇贝|肉|,|鸡蛋|,|还|有些|菜|~|加|了|奶酪|,|多加|十元|,|但是|感觉|意义|不|大|。||【|海鲜|大阪|烧|】|这个|是|送错|餐|送给|我们|吃|的|~|里面|只有|虾|,|感觉|没|得|煎饼|好吃|,|价格比|煎饼|便宜|。||【|乌冬面|】|很|清淡|,|但是|汤|很|有|味道|~|面有|嚼|劲|~|" 393 2018-10-19 15:34:38 0:01:03 "一直很喜欢这家的pasta,以前都是在美罗城楼下吃的,感觉都很好还一直和别人推荐,周日下雨和老公本来想去太兴的没想到关门就到镰仓了,这里地方还算比较大,一进去浓浓的奶香味很舒服,坐下来开始点单,新品出来还比较多,不过还是点了pasta。畅食的面包必须点单后才给你上ok没问题,我点了脆虾番茄奶油意面52元,虾大概有6-8个还算可以,不过意面不多,最重要的是这里的意面能叫意面吗?烂的比烂糊面还烂,加上烧的浓稠的的酱汁要死了就是一坨面粉,完全没有口味可言,老公点的扇贝配鲑鱼意面也是如此,面条都糊了,受不了,吃完胃就不舒服了。熏鲑鱼色拉还可以酱料调配的比较爽口。畅食的面包真的没有以前好吃了,以前的羊角面包都是现烤热腾腾的,现在很多都是一起上,虽然味道还不错但是口感没有刚出炉的那么酥脆了。看来以后老公是不会再来了。" "|一|直|很|喜|欢|这|家|的|p|a|s|t|a|,|以|前|都|是|在|美|罗|城|楼|下|吃|的|,|感|觉|都|很|好|还|一|直|和|别|人|推|荐|,|周|日|下|雨|和|老|公|本|来|想|去|太|兴|的|没|想|到|关|门|就|到|镰|仓|了|,|这|里|地|方|还|算|比|较|大|,|一|进|去|浓|浓|的|奶|香|味|很|舒|服|,|坐|下|来|开|始|点|单|,|新|品|出|来|还|比|较|多|,|不|过|还|是|点|了|p|a|s|t|a|。||畅|食|的|面|包|必|须|点|单|后|才|给|你|上|o|k|没|问|题|,|我|点|了|脆|虾|番|茄|奶|油|意|面|5|2|元|,|虾|大|概|有|6|-|8|个|还|算|可|以|,|不|过|意|面|不|多|,|最|重|要|的|是|这|里|的|意|面|能|叫|意|面|吗|?|烂|的|比|烂|糊|面|还|烂|,|加|上|烧|的|浓|稠|的|的|酱|汁|要|死|了|就|是|一|坨|面|粉|,|完|全|没|有|口|味|可|言|,|老|公|点|的|扇|贝|配|鲑|鱼|意|面|也|是|如|此|,|面|条|都|糊|了|,|受|不|了|,|吃|完|胃|就|不|舒|服|了|。||熏|鲑|鱼|色|拉|还|可|以|酱|料|调|配|的|比|较|爽|口|。||畅|食|的|面|包|真|的|没|有|以|前|好|吃|了|,|以|前|的|羊|角|面|包|都|是|现|烤|热|腾|腾|的|,|现|在|很|多|都|是|一|起|上|,|虽|然|味|道|还|不|错|但|是|口|感|没|有|刚|出|炉|的|那|么|酥|脆|了|。||看|来|以|后|老|公|是|不|会|再|来|了|。|"|"|一直|很|喜欢|这家|的|pasta|,|以前|都|是|在|美罗城|楼下|吃|的|,|感觉|都|很|好|还|一直|和|别人|推荐|,|周日|下雨|和|老公|本来|想|去|太兴|的|没想到|关门|就|到|镰|仓|了|,|这里|地方|还|算|比较|大|,|一|进去|浓浓的|奶|香味|很|舒服|,|坐下|来|开始|点单|,|新品|出来|还|比较|多|,|不过|还是|点|了|pasta|。||畅食|的|面包|必须|点|单后|才|给|你|上|ok|没|问题|,|我点|了|脆|虾|番茄|奶油|意面|52|元|,|虾|大概|有|6|-|8|个|还|算|可以|,|不过意|面不多|,|最|重要|的|是|这里|的|意面|能|叫|意面|吗|?|烂|的|比|烂糊|面|还|烂|,|加上|烧|的|浓稠|的|的|酱汁|要死|了|就是|一坨|面粉|,|完全|没有|口味|可言|,|老公|点|的|扇贝|配|鲑鱼|意面|也|是|如此|,|面条|都|糊|了|,|受不了|,|吃|完胃|就|不|舒服|了|。||熏|鲑鱼|色拉|还|可以|酱料|调配|的|比较|爽口|。||畅食|的|面包|真的|没有|以前|好吃|了|,|以前|的|羊角|面包|都|是|现烤|热腾腾|的|,|现在|很多|都|是|一起|上|,|虽然|味道|还|不错|但是|口感|没有|刚|出炉|的|那么|酥脆|了|。||看来|以后|老公|是|不会|再来|了|。|" 604 2018-10-19 15:34:58 0:01:23 "以前对烧烤都没感觉,这次抽中大众的霸王餐就去吃了。吃下来意犹未尽的感觉,很好吃!妈妈也赞不绝口。我们没点羊排单点的烤串还有凉皮做的很好有劲微甜羊杂汤里面料很足最后都没吃完还有羊肉面汤里放了胡椒粉面条很有嚼劲我喜欢的凉拌海带也不错店里烤串价格不贵而且分量很实在!羊肉串3块羊脆骨4块考鸡翅个头满大的两个也就8块明虾也非常好吃2块一串店家服务态度也很好的我们三个大人一个小孩吃了202我去结帐老板说2块钱就算了够爽气真是霸王餐了吃饱喝足还打包一分钱都没花!以后要吃烤串一定还去就是如果能出团购代金券就更好拉" "|以|前|对|烧|烤|都|没|感|觉|,|这|次|抽|中|大|众|的|霸|王|餐|就|去|吃|了|。|吃|下|来|意|犹|未|尽|的|感|觉|,|很|好|吃|!|妈|妈|也|赞|不|绝|口|。|我|们|没|点|羊|排||单|点|的|烤|串||还|有|凉|皮||做|的|很|好|有|劲||微|甜||羊|杂|汤||里|面|料|很|足||最|后|都|没|吃|完||还|有|羊|肉|面||汤|里|放|了|胡|椒|粉||面|条|很|有|嚼|劲||我|喜|欢|的||凉|拌|海|带|也|不|错||店|里|烤|串|价|格|不|贵||而|且|分|量|很|实|在|!||羊|肉|串|3|块||羊|脆|骨|4|块||考|鸡|翅|个|头|满|大|的|两|个|也|就|8|块||明|虾|也|非|常|好|吃||2|块|一|串||店|家|服|务|态|度|也|很|好|的||我|们|三|个|大|人|一|个|小|孩|吃|了|2|0|2||我|去|结|帐||老|板|说|2|块|钱|就|算|了||够|爽|气||真|是|霸|王|餐|了||吃|饱|喝|足||还|打|包||一|分|钱|都|没|花|!|以|后|要|吃|烤|串|一|定|还|去||就|是|如|果|能|出|团|购|代|金|券||就|更|好|拉|"|"|以前|对|烧烤|都|没|感觉|,|这次|抽|中|大众|的|霸王餐|就|去|吃|了|。|吃|下来|意犹未尽|的|感觉|,|很|好吃|!|妈妈|也|赞不绝口|。|我们|没点|羊排||单点|的|烤串||还有|凉皮||做|的|很|好|有劲||微甜||羊杂|汤||里面|料|很|足||最后|都|没|吃|完||还有|羊肉|面||汤里|放|了|胡椒粉||面条|很|有|嚼|劲||我|喜欢|的||凉拌|海带|也|不错||店里|烤串|价格|不|贵||而且|分量|很|实在|!||羊肉串|3|块||羊|脆骨|4|块||考|鸡翅|个头|满大|的|两个|也|就|8|块||明虾|也|非常|好吃||2|块|一串||店家|服务态度|也|很|好|的||我们|三个|大人|一个|小孩|吃|了|202||我|去|结帐||老板|说|2|块钱|就算|了||够|爽气||真是|霸王餐|了||吃饱喝足||还|打包||一分钱|都|没花|!|以后|要|吃|烤串|一定|还|去||就是|如果|能出|团购|代金券||就|更好|拉|" 474 2018-10-19 15:35:19 0:01:44 "餐前,装冷菜的碟子是仿青瓷的碟子,高脚,可惜是塑料的,近看缺了质感,没有瓷器那种通透,远看挺不错。盛菜的器皿有些也挺有特色的,包厢布置也花了功夫,走古风挂字画。墙纸是青花瓷的,对面墙壁也贴了很多瓷器,有几个还是玲珑瓷,透光看比较好看。比较喜欢他们家的日式茶壶,铁壶,很沉但漂亮,据说冲泡能补铁?菜品味道一般,花样是挺多的,杨枝甘露换个器皿就能换来很大的拍照量,是不是桌桌都有?喜欢那个有小把的酱料器皿,拿着很可爱" "|餐|前|,|装|冷|菜|的|碟|子|是|仿|青|瓷|的|碟|子|,|高|脚|,|可|惜|是|塑|料|的|,|近|看|缺|了|质|感|,|没|有|瓷|器|那|种|通|透|,|远|看|挺|不|错|。|盛|菜|的|器|皿|有|些|也|挺|有|特|色|的|,|包|厢|布|置|也|花|了|功|夫|,|走|古|风|挂|字|画|。|墙|纸|是|青|花|瓷|的|,|对|面|墙|壁|也|贴|了|很|多|瓷|器|,|有|几|个|还|是|玲|珑|瓷|,|透|光|看|比|较|好|看|。|比|较|喜|欢|他|们|家|的|日|式|茶|壶|,|铁|壶|,|很|沉|但|漂|亮|,|据|说|冲|泡|能|补|铁|?|菜|品|味|道|一|般|,|花|样|是|挺|多|的|,|杨|枝|甘|露|换|个|器|皿|就|能|换|来|很|大|的|拍|照|量|,|是|不|是|桌|桌|都|有|?|喜|欢|那|个|有|小|把|的|酱|料|器|皿|,|拿|着|很|可|爱|"|"|餐前|,|装|冷菜|的|碟子|是|仿|青瓷|的|碟子|,|高脚|,|可惜|是|塑料|的|,|近|看|缺|了|质感|,|没有|瓷器|那种|通透|,|远看|挺不错|。|盛菜|的|器皿|有些|也|挺|有|特色|的|,|包厢|布置|也|花|了|功夫|,|走|古风|挂|字画|。|墙纸|是|青花瓷|的|,|对面|墙壁|也|贴|了|很多|瓷器|,|有|几个|还是|玲珑|瓷|,|透光|看|比较|好看|。|比较|喜欢|他们|家|的|日式|茶壶|,|铁壶|,|很沉|但|漂亮|,|据说|冲泡|能|补铁|?|菜品|味道|一般|,|花样|是|挺|多|的|,|杨枝|甘露|换个|器皿|就|能|换来|很大|的|拍照|量|,|是不是|桌桌|都|有|?|喜欢|那个|有|小|把|的|酱料|器皿|,|拿|着|很|可爱|" 348 2018-10-19 15:35:39 0:02:04 "本人上周参加了婚宴!灯光效果非常不错,做的挺用心。服务员态度比较谦和,也挺任劳任怨的,一个个东跑西癫都累出汗了,看着俺都心疼啊。用于闹肚子,喝点白酒也没吃菜,不过听老婆说个个菜做的超棒,非得中秋节拉着我去尝尝果木烤鸭和杏鲍菇。以后想吃海鲜就去奥帆号了,海鲜厨房嘛高端的装修,可口的大众亲民的价格。还有好多帅哥美女免费服务哟~唯一美中不足的地方就是院子里的停车场有点小,放30多个车就快没地方了,得提前点过去抢个车位再说~哈哈" "|本|人|上|周|参|加|了|婚|宴|!|灯|光|效|果|非|常|不|错|,|做|的|挺|用|心|。|服|务|员|态|度|比|较|谦|和|,|也|挺|任|劳|任|怨|的|,|一|个|个|东|跑|西|癫|都|累|出|汗|了|,|看|着|俺|都|心|疼|啊|。|用|于|闹|肚|子|,|喝|点|白|酒|也|没|吃|菜|,|不|过|听|老|婆|说|个|个|菜|做|的|超|棒|,|非|得|中|秋|节|拉|着|我|去|尝|尝|果|木|烤|鸭|和|杏|鲍|菇|。|以|后|想|吃|海|鲜|就|去|奥|帆|号|了|,|海|鲜|厨|房|嘛|高|端|的|装|修|,|可|口|的|大|众|亲|民|的|价|格|。|还|有|好|多|帅|哥|美|女|免|费|服|务|哟|~|唯|一|美|中|不|足|的|地|方|就|是|院|子|里|的|停|车|场|有|点|小|,|放|3|0|多|个|车|就|快|没|地|方|了|,|得|提|前|点|过|去|抢|个|车|位|再|说|~|哈|哈|"|"|本人|上周|参加|了|婚宴|!|灯光效果|非常|不错|,|做|的|挺|用心|。|服务员|态度|比较|谦和|,|也|挺|任劳任怨|的|,|一个个|东跑|西癫|都|累|出汗|了|,|看着|俺|都|心疼|啊|。|用于|闹肚子|,|喝点|白酒|也|没|吃|菜|,|不过|听|老婆|说|个个|菜|做|的|超棒|,|非得|中秋节|拉|着|我|去|尝尝|果木|烤鸭|和|杏鲍菇|。|以后|想|吃海鲜|就|去|奥帆|号|了|,|海鲜|厨房|嘛|高端|的|装修|,|可口|的|大众|亲民|的|价格|。|还有|好多|帅哥美女|免费|服务|哟|~|唯一|美中不足|的|地方|就是|院子|里|的|停车场|有点|小|,|放|30|多个|车|就|快|没|地方|了|,|得|提前|点|过去|抢个|车位|再说|~|哈哈|" 348 2018-10-19 15:36:00 0:02:24 "趁赛格美食节买的团购券来西安一年对长安大排档长草很久了也差不多拖了一年才来吃七七八八减减以后用了59块钱买了100的抵用券实在是划算。今天晚上雨下的挺大的和男票出门回来的时候就在小寨下了直奔赛格六楼长安大排挡。去的时候不到七点已经有不少人排队了。我一问原来两个人不需要等位实在是太好了。点了葫芦鸡枣馍锅贴和羊肉串。加起来105两个人吃的饱饱的。葫芦鸡很好吃有点像炸鸡58一整只鸡两个人吃的好饱男票动手撕开的他很喜欢吃。羊肉串十串25肉很大块也不肥。锅贴中规中矩。枣馍感觉没有大家评价的那么好不过当主食也不错。总之很满意的一家店性价比高菜的味道也不错。" "|趁|赛|格|美|食|节|买|的|团|购|券||来|西|安|一|年||对|长|安|大|排|档|长|草|很|久|了||也|差|不|多|拖|了|一|年|才|来|吃||七|七|八|八|减|减|以|后|用|了|5|9|块|钱|买|了|1|0|0|的|抵|用|券||实|在|是|划|算|。||今|天|晚|上|雨|下|的|挺|大|的||和|男|票|出|门||回|来|的|时|候|就|在|小|寨|下|了||直|奔|赛|格|六|楼|长|安|大|排|挡|。||去|的|时|候|不|到|七|点||已|经|有|不|少|人|排|队|了|。|我|一|问||原|来|两|个|人|不|需|要|等|位||实|在|是|太|好|了|。||点|了|葫|芦|鸡||枣|馍||锅|贴|和|羊|肉|串|。|加|起|来|1|0|5||两|个|人|吃|的|饱|饱|的|。||葫|芦|鸡|很|好|吃||有|点|像|炸|鸡||5|8|一|整|只|鸡||两|个|人|吃|的|好|饱||男|票|动|手|撕|开|的||他|很|喜|欢|吃|。||羊|肉|串|十|串|2|5||肉|很|大|块||也|不|肥|。|锅|贴|中|规|中|矩|。|枣|馍|感|觉|没|有|大|家|评|价|的|那|么|好||不|过|当|主|食|也|不|错|。||总|之|很|满|意|的|一|家|店||性|价|比|高||菜|的|味|道|也|不|错|。|"|"|趁|赛格|美食节|买|的|团购|券||来|西安|一年||对|长安|大排档|长草|很|久|了||也|差不多|拖|了|一年|才|来|吃||七七八八|减减|以后|用|了|59|块钱|买|了|100|的|抵用券||实在|是|划算|。||今天|晚上|雨下|的|挺|大|的||和|男票|出门||回来|的|时候|就|在|小寨|下|了||直奔|赛格|六楼|长安|大排挡|。||去|的|时候|不到|七点||已经|有|不少|人|排队|了|。|我|一问||原来|两个|人|不|需要|等位||实在|是|太好了|。||点|了|葫芦|鸡||枣馍||锅贴|和|羊肉串|。|加|起来|105||两个|人|吃|的|饱饱|的|。||葫芦|鸡|很|好吃||有点像|炸鸡||58|一整只|鸡||两个|人|吃|的|好|饱||男票|动手|撕开|的||他|很|喜欢|吃|。||羊肉串|十串|25||肉|很大|块||也|不肥|。|锅贴|中规中矩|。|枣馍|感觉|没有|大家|评价|的|那么|好||不过|当|主食|也|不错|。||总之|很|满意|的|一家|店||性价比|高||菜|的|味道|也|不错|。|" 511 2018-10-19 15:36:20 0:02:45 "店内印象:日本风的装修,店里光线偏暗,空间狭小很拘谨,桌上没有随时可以接水的水龙头,桌子上也没有嵌入式可以煮面的小电磁炉,(该评价是跟博多一幸舍对比),店员服务态度很热情,上汤上面也算快,价格比博多一幸舍便宜一些,周一至周五可以打折,周末没有任何优惠。面的口感可以根据自己的感觉选择软普通硬很硬,咸度、是否加葱都可根据喜好选择,个人觉的普通即可,尝试了一次硬的,也可以接受,但是估计不会尝试特硬的、、、汤是十分浓稠,有胶口的感觉,浓稠度和博多一幸舍差不多,也就是东北皮冻的五分到七分的浓度,很多人可能会觉得腻,本人挺喜欢,另加一份面6元,加汤不要钱,带娃来吃还是划算滴。跟博多一幸舍的面面配料基本一致,紫菜、鸡蛋、芽菜、香葱、木耳、笋、叉烧、每种都有单独价格,没有搭配在一起的全套豪华配菜价格。面里搭配的肉肉没有博多一幸舍的大片,但是味道还不错,嫩香,就是家里的蒜泥肘子肉(盐水炖肘花)。糖心蛋就是煮鸡蛋,蛋清已熟,蛋黄儿半熟,温泉蛋就是窝鸡蛋,蛋清变白裹住没熟的蛋黄儿。还点了一口饺子、炸鸡块,炸鸡排,炸香肠,可惜没来得及拍照就破相了,不能上图了,一口饺子不如博多一幸舍好吃,炸鸡块有四块,比博多一幸舍的稍微小一点,但是更好吃更入味也更嫩一些。那个香肠没什么特点,宝宝喜欢而已。鸡排不过不失的,没什么特点。配菜中,木耳就是脆,芽菜带着蔬菜汁所以是水脆,笋是嫩。雪碧直接给了易拉罐和一根管子,不像博多一幸舍,漂亮的大啤酒杯,质量不错的黑色吸管。豚丸店加汤只有清汤加(清汤也已经十分浓稠),博多加汤时会问您需要加浓汤还是清汤。" "|店|内|印|象|:|日|本|风|的|装|修|,|店|里|光|线|偏|暗|,|空|间|狭|小||很|拘|谨|,|桌|上|没|有|随|时|可|以|接|水|的|水|龙|头|,|桌|子|上|也|没|有|嵌|入|式|可|以|煮|面|的|小|电|磁|炉|,|(|该|评|价|是|跟|博|多|一|幸|舍|对|比|)|,|店|员|服|务|态|度|很|热|情|,|上|汤|上|面|也|算|快|,|价|格|比|博|多|一|幸|舍|便|宜|一|些|,|周|一|至|周|五|可|以|打|折|,|周|末|没|有|任|何|优|惠|。||面|的|口|感|可|以|根|据|自|己|的|感|觉|选|择|软||普|通||硬||很|硬|,|咸|度|、|是|否|加|葱|都|可|根|据|喜|好|选|择|,|个|人|觉|的|普|通|即|可|,|尝|试|了|一|次|硬|的|,|也|可|以|接|受|,|但|是|估|计|不|会|尝|试|特|硬|的|、|、|、||汤|是|十|分|浓|稠|,|有|胶|口|的|感|觉|,|浓|稠|度|和|博|多|一|幸|舍|差|不|多|,|也|就|是|东|北|皮|冻|的|五|分|到|七|分|的|浓|度|,|很|多|人|可|能|会|觉|得|腻|,||本|人|挺|喜|欢|,|另|加|一|份|面|6|元|,|加|汤|不|要|钱|,|带|娃|来|吃|还|是|划|算|滴|。||跟|博|多|一|幸|舍|的|面|面|配|料|基|本|一|致|,|紫|菜|、|鸡|蛋|、|芽|菜|、|香|葱|、|木|耳|、|笋|、|叉|烧|、|每|种|都|有|单|独|价|格|,|没|有|搭|配|在|一|起|的|全|套|豪|华|配|菜|价|格|。||面|里|搭|配|的|肉|肉|没|有|博|多|一|幸|舍|的|大|片|,|但|是|味|道|还|不|错|,|嫩|香|,|就|是|家|里|的|蒜|泥|肘|子|肉|(|盐|水|炖|肘|花|)|。|糖|心|蛋|就|是|煮|鸡|蛋|,|蛋|清|已|熟|,|蛋|黄|儿|半|熟|,|温|泉|蛋|就|是|窝|鸡|蛋|,|蛋|清|变|白|裹|住|没|熟|的|蛋|黄|儿|。||还|点|了|一|口|饺|子|、|炸|鸡|块|,|炸|鸡|排|,|炸|香|肠|,|可|惜|没|来|得|及|拍|照|就|破|相|了|,|不|能|上|图|了|,|一|口|饺|子|不|如|博|多|一|幸|舍|好|吃|,|炸|鸡|块|有|四|块|,|比|博|多|一|幸|舍|的|稍|微|小|一|点|,|但|是|更|好|吃|更|入|味|也|更|嫩|一|些|。|那|个|香|肠|没|什|么|特|点|,|宝|宝|喜|欢|而|已|。|鸡|排|不|过|不|失|的|,|没|什|么|特|点|。||配|菜|中|,||木|耳|就|是|脆|,|芽|菜|带|着|蔬|菜|汁|所|以|是|水|脆|,||笋|是|嫩|。||雪|碧|直|接|给|了|易|拉|罐|和|一|根|管|子|,|不|像|博|多|一|幸|舍|,|漂|亮|的|大|啤|酒|杯|,|质|量|不|错|的|黑|色|吸|管|。||豚|丸|店|加|汤|只|有|清|汤|加|(|清|汤|也|已|经|十|分|浓|稠|)|,|博|多|加|汤|时|会|问|您|需|要|加|浓|汤|还|是|清|汤|。||"|"|店内|印象|:|日本|风|的|装修|,|店里|光线|偏暗|,|空间|狭小||很|拘谨|,|桌上|没有|随时|可以|接水|的|水龙头|,|桌子|上|也|没有|嵌入式|可以|煮面|的|小|电磁炉|,|(|该|评价|是|跟|博多|一幸|舍|对比|)|,|店员|服务态度|很|热情|,|上|汤|上面|也|算|快|,|价格比|博多|一幸|舍|便宜|一些|,|周一|至|周五|可以|打折|,|周末|没有|任何|优惠|。||面|的|口感|可以|根据|自己|的|感觉|选择|软||普通||硬||很|硬|,|咸度|、|是否|加葱|都|可|根据|喜好|选择|,|个人|觉|的|普通|即可|,|尝试|了|一次|硬|的|,|也|可以|接受|,|但是|估计|不会|尝试|特硬|的|、|、|、||汤是|十分|浓稠|,|有|胶口|的|感觉|,|浓|稠度|和|博多|一幸|舍|差不多|,|也|就是|东北|皮冻|的|五分|到|七分|的|浓度|,|很多|人|可能|会|觉得|腻|,||本人|挺|喜欢|,|另加|一份|面|6|元|,|加汤|不要|钱|,|带娃来|吃|还是|划算|滴|。||跟|博多|一幸|舍|的|面面|配料|基本一致|,|紫菜|、|鸡蛋|、|芽菜|、|香葱|、|木耳|、|笋|、|叉烧|、|每种|都|有|单独|价格|,|没有|搭配|在|一起|的|全套|豪华|配菜|价格|。||面里|搭配|的|肉|肉|没有|博多|一幸|舍|的|大片|,|但是|味道|还|不错|,|嫩|香|,|就是|家里|的|蒜泥|肘子|肉|(|盐水|炖|肘|花|)|。|糖心|蛋|就是|煮|鸡蛋|,|蛋清|已熟|,|蛋黄|儿|半熟|,|温泉|蛋|就是|窝|鸡蛋|,|蛋清|变白|裹住|没熟|的|蛋黄|儿|。||还点|了|一口|饺子|、|炸鸡块|,|炸鸡|排|,|炸|香肠|,|可惜|没|来得及|拍照|就|破|相|了|,|不能|上图|了|,|一口|饺子|不如|博多|一幸|舍|好吃|,|炸鸡块|有|四块|,|比|博多|一幸|舍|的|稍微|小|一点|,|但是|更|好吃|更|入味|也|更|嫩|一些|。|那个|香肠|没什么|特点|,|宝宝|喜欢|而已|。|鸡排|不过|不失|的|,|没什么|特点|。||配菜|中|,||木耳|就是|脆|,|芽|菜|带|着|蔬菜汁|所以|是|水脆|,||笋|是|嫩|。||雪碧|直接|给|了|易拉罐|和|一根|管子|,|不像|博多|一幸|舍|,|漂亮|的|大|啤酒杯|,|质量|不错|的|黑色|吸管|。||豚|丸|店加|汤|只有|清|汤加|(|清汤|也|已经|十分|浓稠|)|,|博多|加汤|时会|问|您|需要|加|浓汤|还是|清汤|。||" 1124 2018-10-19 15:36:40 0:03:05 "一、地理位置:谢家湾万象城5楼,溜冰场上面。二、服务:店铺不大,干净整洁。服务态度不咸不淡的,9积分兑换的,也可以理解三、食品:有一句话真的很对—不作死就不会死。本来不喜欢喝茶,但作为吃货,没尝过黑龙茶,觉得还是有点介意。刚好有9积分,就鼓起勇气尝试一下。要的常温的红茶,想到热量问题,少糖,也没有加配料。然后就悲剧了,茶很大一杯,但是苦呀,什么伯爵红茶,我都感觉不出来了,又不是单独泡的,也没有什么茶香味。实在是没办法,苦的喝了几口就喝不下去了。可能多加糖和布丁之类的配料会好很多吧,不过份量的确很大一杯" "|一|、|地|理|位|置|:|谢|家|湾|万|象|城|5|楼|,|溜|冰|场|上|面|。||二|、|服|务|:|店|铺|不|大|,|干|净|整|洁|。|服|务|态|度|不|咸|不|淡|的|,|9|积|分|兑|换|的|,|也|可|以|理|解||三|、|食|品|:|有|一|句|话|真|的|很|对|—|不|作|死|就|不|会|死|。|本|来|不|喜|欢|喝|茶|,|但|作|为|吃|货|,|没|尝|过|黑|龙|茶|,|觉|得|还|是|有|点|介|意|。|刚|好|有|9|积|分|,|就|鼓|起|勇|气|尝|试|一|下|。|要|的|常|温|的|红|茶|,|想|到|热|量|问|题|,|少|糖|,|也|没|有|加|配|料|。|然|后|就|悲|剧|了|,|茶|很|大|一|杯|,|但|是|苦|呀|,|什|么|伯|爵|红|茶|,|我|都|感|觉|不|出|来|了|,|又|不|是|单|独|泡|的|,|也|没|有|什|么|茶|香|味|。|实|在|是|没|办|法|,|苦|的|喝|了|几|口|就|喝|不|下|去|了|。||可|能|多|加|糖|和|布|丁|之|类|的|配|料|会|好|很|多|吧|,|不|过|份|量|的|确|很|大|一|杯|"|"|一|、|地理位置|:|谢家|湾|万象|城|5|楼|,|溜冰场|上面|。||二|、|服务|:|店铺|不|大|,|干净|整洁|。|服务态度|不咸不淡|的|,|9|积分|兑换|的|,|也|可以|理解||三|、|食品|:|有|一句|话|真的|很|对|—|不作|死|就|不会|死|。|本来|不|喜欢|喝茶|,|但|作为|吃货|,|没尝过|黑龙|茶|,|觉得|还是|有点|介意|。|刚好|有|9|积分|,|就|鼓起勇气|尝试|一下|。|要|的|常温|的|红茶|,|想到|热量|问题|,|少糖|,|也|没有|加|配料|。|然后|就|悲剧|了|,|茶|很大|一杯|,|但是|苦|呀|,|什么|伯爵|红茶|,|我|都|感觉|不|出来|了|,|又|不是|单独|泡|的|,|也|没有|什么|茶|香味|。|实在|是|没|办法|,|苦|的|喝|了|几口|就|喝|不|下去|了|。||可能|多|加糖|和|布丁|之类|的|配料|会|好|很多|吧|,|不过|份量|的确|很大|一杯|" 432 2018-10-19 15:37:01 0:03:26 "非常喜欢去新开的有特色的店品尝,有幸被大众点评网同城聚会抽到黄金替补免费品鉴的机会,我感到十分幸运!红不让台湾特色餐厅位于李沧万达金街1号入口扶梯旁,交通便利,停车方便。店面小资,适合举行小型派对。走近店门,服务员立刻开门迎接并且热情的打招呼。进入店面,环顾四周,鹅黄的灯光下透露出温馨慵懒的气氛,店家匠心独居,屋内的摆设典雅质朴。我们大家围坐在一起开始品尝台湾特色美食,前菜是鸡排沙拉,鸡排外焦里嫩,沙拉酸爽开胃陪的饮品是本店招牌—寒天奶栋,口感丝化。在我们的玩闹嘻戏中,硬菜短上来了——招牌全垒打拼盘,样子可爱,味道独特,被大家迅雷不及掩耳盗铃之势一扫而光。紧接着——等一个人小火锅,西班牙海鲜焗饭,黑椒牛柳焗饭海鲜焗烤嫩鸡排上桌了,食材琳琅满目,令人目不暇接。人多力量大,盘子渐渐见底了,新菜品——普罗旺斯田园披萨,台湾卤肉饭,秘制鸡腿饭,招牌巨蛋烧,阳光手打面,超级霸大热狗震撼来袭。这里特别提一下普罗旺斯田园披萨,顶上配料五颜六色,芝士浓郁,饼胚酥脆,搭配沙拉和洋葱圈口味绝佳。还有在卤肉饭,鸡腿饭,手打面扮演重要角色的酱料,里面居然搭配了小鱼干,补钙又美味。环境搭配合理,既有闺密情侣说悄悄话的私密空间,又有三五好友畅饮阔聊的长桌吧台,气氛轻松惬意,互不打扰。红不让台湾特色餐厅绝对是小资的你餐饮休闲,畅聊发呆的绝佳选择,千万不要错过!" "|非|常|喜|欢|去|新|开|的|有|特|色|的|店|品|尝|,|有|幸|被|大|众|点|评|网|同|城|聚|会|抽|到|黄|金|替|补|免|费|品|鉴|的|机|会|,|我|感|到|十|分|幸|运|!|红|不|让|台|湾|特|色|餐|厅|位|于|李|沧|万|达|金|街|1|号|入|口|扶|梯|旁|,|交|通|便|利|,|停|车|方|便|。|店|面|小|资|,|适|合|举|行|小|型|派|对|。|走|近|店|门|,|服|务|员|立|刻|开|门|迎|接|并|且|热|情|的|打|招|呼|。|进|入|店|面|,|环|顾|四|周|,|鹅|黄|的|灯|光|下|透|露|出|温|馨|慵|懒|的|气|氛|,|店|家|匠|心|独|居|,|屋|内|的|摆|设|典|雅|质|朴|。|我|们|大|家|围|坐|在|一|起|开|始|品|尝|台|湾|特|色|美|食|,|前|菜|是|鸡|排|沙|拉|,|鸡|排|外|焦|里|嫩|,|沙|拉|酸|爽|开|胃|陪|的|饮|品|是|本|店|招|牌|—|寒|天|奶|栋|,|口|感|丝|化|。|在|我|们|的|玩|闹|嘻|戏|中|,|硬|菜|短|上|来|了|—|—|招|牌|全|垒|打|拼|盘|,|样|子|可|爱|,|味|道|独|特|,|被|大|家|迅|雷|不|及|掩|耳|盗|铃|之|势|一|扫|而|光|。|紧|接|着|—|—|等|一|个|人|小|火|锅|,|西|班|牙|海|鲜|焗|饭|,|黑|椒|牛|柳|焗|饭|海|鲜|焗|烤|嫩|鸡|排|上|桌|了|,|食|材|琳|琅|满|目|,|令|人|目|不|暇|接|。|人|多|力|量|大|,|盘|子|渐|渐|见|底|了|,|新|菜|品|—|—|普|罗|旺|斯|田|园|披|萨|,|台|湾|卤|肉|饭|,|秘|制|鸡|腿|饭|,|招|牌|巨|蛋|烧|,|阳|光|手|打|面|,|超|级|霸|大|热|狗|震|撼|来|袭|。||这|里|特|别|提|一|下|普|罗|旺|斯|田|园|披|萨|,|顶|上|配|料|五|颜|六|色|,|芝|士|浓|郁|,|饼|胚|酥|脆|,|搭|配|沙|拉|和|洋|葱|圈|口|味|绝|佳|。|还|有|在|卤|肉|饭|,|鸡|腿|饭|,|手|打|面|扮|演|重|要|角|色|的|酱|料|,|里|面|居|然|搭|配|了|小|鱼|干|,|补|钙|又|美|味|。||环|境|搭|配|合|理|,|既|有|闺|密|情|侣|说|悄|悄|话|的|私|密|空|间|,|又|有|三|五|好|友|畅|饮|阔|聊|的|长|桌|吧|台|,|气|氛|轻|松|惬|意|,|互|不|打|扰|。||红|不|让|台|湾|特|色|餐|厅|绝|对|是|小|资|的|你|餐|饮|休|闲|,|畅|聊|发|呆|的|绝|佳|选|择|,|千|万|不|要|错|过|!|"|"|非常|喜欢|去|新开|的|有|特色|的|店|品尝|,|有幸|被|大众|点评|网同城|聚会|抽到|黄金|替补|免费|品鉴|的|机会|,|我|感到|十分|幸运|!|红|不让|台湾|特色|餐厅|位于|李沧|万达|金街|1|号|入口|扶梯|旁|,|交通|便利|,|停车|方便|。|店面|小资|,|适合|举行|小型|派对|。|走近|店门|,|服务员|立刻|开门|迎接|并且|热情|的|打招呼|。|进入|店面|,|环顾四周|,|鹅黄|的|灯光|下|透露|出|温馨|慵懒|的|气氛|,|店家|匠心|独居|,|屋内|的|摆设|典雅|质朴|。|我们|大家|围坐在|一起|开始|品尝|台湾|特色美食|,|前菜|是|鸡排|沙拉|,|鸡排|外焦里嫩|,|沙拉|酸爽|开胃|陪|的|饮品|是|本店|招牌|—|寒天|奶栋|,|口感|丝化|。|在|我们|的|玩闹|嘻戏|中|,|硬菜|短|上来|了|—|—|招牌|全垒打|拼盘|,|样子|可爱|,|味道|独特|,|被|大家|迅雷不及|掩耳盗铃|之势|一扫而光|。|紧接着|—|—|等|一个|人|小火锅|,|西班牙|海鲜|焗|饭|,|黑椒|牛柳|焗|饭|海鲜|焗|烤|嫩|鸡排|上桌|了|,|食材|琳琅满目|,|令人|目不暇接|。|人多|力量|大|,|盘子|渐渐|见底|了|,|新|菜品|—|—|普罗旺斯|田园|披萨|,|台湾|卤肉饭|,|秘制|鸡腿饭|,|招牌|巨蛋|烧|,|阳光|手|打面|,|超级|霸大|热狗|震撼|来袭|。||这里|特别|提|一下|普罗旺斯|田园|披萨|,|顶上|配料|五颜六色|,|芝士|浓郁|,|饼|胚|酥脆|,|搭配|沙拉|和|洋葱|圈|口味|绝佳|。|还有|在|卤肉饭|,|鸡腿饭|,|手|打面|扮演|重要|角色|的|酱料|,|里面|居然|搭配|了|小鱼|干|,|补钙|又|美味|。||环境|搭配|合理|,|既有|闺密|情侣|说|悄悄话|的|私密|空间|,|又|有|三五|好友|畅饮|阔聊|的|长桌|吧台|,|气氛|轻松|惬意|,|互不|打扰|。||红|不让|台湾|特色|餐厅|绝对|是|小资|的|你|餐饮|休闲|,|畅聊|发呆|的|绝佳|选择|,|千万|不要|错过|!|" 917 2018-10-19 15:37:21 0:03:46 "位于昆明新亚洲体育场的上岛咖啡,至今已有500多家连锁店遍布中国大江南北,成为目前国内最受欢迎的咖啡连锁餐厅之一。上岛咖啡执著于"香醇、甘美"的极致品质的制作理念;在店面设计方面,上岛融合了经典与时尚的理念,独具一格的店面设计,让上岛咖啡在春城声名远扬。走进这里,阳光的明媚与古朴的原木色绝妙的结合让你为之赞叹,坐在落地玻璃窗边的小几旁,沐浴一身的温暖阳光让人感到懒洋洋的舒服。在一入门的书架上捡一本喜欢的书,叫上一杯香浓的咖啡,看窗外的车水马龙,行行色色的行人,生活就在这样的细细品味中渗出丝丝甜美。除了各式各样的咖啡供您选择以外,还有各种佐咖啡的小点也十分精美。这里的食物是以台湾风味为主的,制作精致的盛具加上色香味俱全的可口美食让你在感观上得到最大的满足。上岛咖啡新亚洲店总的来说还不错,位置比较隐蔽一点点,环境还不错,环境很好,而且很安静,就是位置对于我们来说不是特别好找,东西很多,还有红酒,喝着红酒别有一番滋味,整个店面在二楼占地不大,晚上五点多去人不多,牛排沙拉土司都还行,罗宋汤很好喝,沙拉也不错,牛排要的八分熟,感觉有点老了,下次去要七分熟应该刚刚好,服务态度也不错,很安静,很舒服,是个放松心情的好地方。团的也划算,总之很满意,还会去的。" "|位|于|昆|明|新|亚|洲|体|育|场|的|上|岛|咖|啡|,|至|今|已|有|5|0|0|多|家|连|锁|店|遍|布|中|国|大|江|南|北|,|成|为|目|前|国|内|最|受|欢|迎|的|咖|啡|连|锁|餐|厅|之|一|。|上|岛|咖|啡|执|著|于|"|香|醇|、|甘|美|"|的|极|致|品|质|的|制|作|理|念|;|在|店|面|设|计|方|面|,|上|岛|融|合|了|经|典|与|时|尚|的|理|念|,|独|具|一|格|的|店|面|设|计|,|让|上|岛|咖|啡|在|春|城|声|名|远|扬|。|走|进|这|里|,|阳|光|的|明|媚|与|古|朴|的|原|木|色|绝|妙|的|结|合|让|你|为|之|赞|叹|,|坐|在|落|地|玻|璃|窗|边|的|小|几|旁|,|沐|浴|一|身|的|温|暖|阳|光|让|人|感|到|懒|洋|洋|的|舒|服|。|在|一|入|门|的|书|架|上|捡|一|本|喜|欢|的|书|,|叫|上|一|杯|香|浓|的|咖|啡|,|看|窗|外|的|车|水|马|龙|,|行|行|色|色|的|行|人|,|生|活|就|在|这|样|的|细|细|品|味|中|渗|出|丝|丝|甜|美|。|除|了|各|式|各|样|的|咖|啡|供|您|选|择|以|外|,|还|有|各|种|佐|咖|啡|的|小|点|也|十|分|精|美|。|这|里|的|食|物|是|以|台|湾|风|味|为|主|的|,|制|作|精|致|的|盛|具|加|上|色|香|味|俱|全|的|可|口|美|食|让|你|在|感|观|上|得|到|最|大|的|满|足|。|上|岛|咖|啡|新|亚|洲|店|总|的|来|说|还|不|错|,|位|置|比|较|隐|蔽|一|点|点|,|环|境|还|不|错|,|环|境|很|好|,|而|且|很|安|静|,|就|是|位|置|对|于|我|们|来|说|不|是|特|别|好|找|,|东|西|很|多|,|还|有|红|酒|,|喝|着|红|酒|别|有|一|番|滋|味|,|整|个|店|面|在|二|楼|占|地|不|大|,|晚|上|五|点|多|去|人|不|多|,|牛|排|沙|拉|土|司|都|还|行|,|罗|宋|汤|很|好|喝|,|沙|拉|也|不|错|,|牛|排|要|的|八|分|熟|,|感|觉|有|点|老|了|,|下|次|去|要|七|分|熟|应|该|刚|刚|好|,|服|务|态|度|也|不|错|,|很|安|静|,|很|舒|服|,|是|个|放|松|心|情|的|好|地|方|。|团|的|也|划|算|,|总|之|很|满|意|,|还|会|去|的|。|"|"|位于|昆明|新|亚洲|体育场|的|上|岛|咖啡|,|至今已有|500|多家|连锁店|遍布|中国|大江南北|,|成为|目前|国内|最|受欢迎|的|咖啡|连锁|餐厅|之一|。|上|岛|咖啡|执著|于|"|香醇|、|甘美|"|的|极致|品质|的|制作|理念|;|在|店面|设计|方面|,|上|岛|融合|了|经典|与|时尚|的|理念|,|独具一格|的|店面|设计|,|让|上|岛|咖啡|在|春城|声名|远扬|。|走进|这里|,|阳光|的|明媚|与|古朴|的|原木色|绝妙|的|结合|让|你|为|之|赞叹|,|坐在|落地|玻璃窗|边|的|小|几旁|,|沐浴|一身|的|温暖|阳光|让|人|感到|懒洋洋|的|舒服|。|在|一|入门|的|书架上|捡|一本|喜欢|的|书|,|叫|上|一杯|香浓|的|咖啡|,|看|窗外|的|车水马龙|,|行行色色|的|行人|,|生活|就|在|这样|的|细细品味|中|渗出|丝丝|甜美|。|除了|各式各样|的|咖啡|供|您|选择|以外|,|还有|各种|佐|咖啡|的|小点|也|十分|精美|。|这里|的|食物|是|以|台湾|风味|为主|的|,|制作|精致|的|盛具|加上|色香味|俱全|的|可口|美食|让你在|感观|上|得到|最大|的|满足|。|上|岛|咖啡|新|亚洲|店|总的来说|还|不错|,|位置|比较|隐蔽|一点点|,|环境|还|不错|,|环境|很|好|,|而且|很|安静|,|就是|位置|对于|我们|来说|不是|特别|好找|,|东西|很多|,|还有|红酒|,|喝|着|红酒|别有|一番滋味|,|整个|店面|在|二楼|占地|不|大|,|晚上|五点|多去|人|不|多|,|牛排|沙拉|土司|都|还行|,|罗宋汤|很|好喝|,|沙拉|也|不错|,|牛排|要|的|八分熟|,|感觉|有点|老|了|,|下次|去|要|七分|熟|应该|刚刚|好|,|服务态度|也|不错|,|很|安静|,|很|舒服|,|是|个|放松|心情|的|好|地方|。|团|的|也|划算|,|总之|很|满意|,|还会|去|的|。|" 859 2018-10-19 15:37:42 0:04:07 "我想说他们家的优惠活动好持久啊,我预售的时候买的券,前两天心血来潮去吃的活动还在继续首先说下服务,因为和男票开车去的,有点不认路,老板很耐心的在电话里帮我们指路,到了门店之后也帮我们推荐了他们家做的比较地道的伤心凉粉,说是厨师是四川那边来的。环境呢比较简单干净,去的时候下午一点多了,还有四五桌人在用餐口味对于我而言点了麻辣的口感正正好,男票比较能吃辣,相对而言觉得他们家的麻辣口感麻有了,辣还欠缺一点,老板娘说考虑到客人口味不同所以没敢放太多辣椒,能吃辣的朋友可以考虑下单之前和老板先说好。鱼呢我们选的是黑鱼,2.9斤的鱼加上一盆我以为没有什么东西实际上东西很多的锅底,我们吃的饱饱的,最后以为吃的差不多了,打包一看简直像没动过一样,分量还是满足的,鱼比较新鲜。伤心凉粉很辣,不过口味也蛮好吃的。总的来说,性价比还是可以的,两个人吃了大概160左右,用了团购券的话一百块不到,会考虑下次再来" "|我|想|说|他|们|家|的|优|惠|活|动|好|持|久|啊|,|我|预|售|的|时|候|买|的|券|,|前|两|天|心|血|来|潮|去|吃|的|活|动|还|在|继|续||首|先|说|下|服|务|,|因|为|和|男|票|开|车|去|的|,|有|点|不|认|路|,|老|板|很|耐|心|的|在|电|话|里|帮|我|们|指|路|,|到|了|门|店|之|后|也|帮|我|们|推|荐|了|他|们|家|做|的|比|较|地|道|的|伤|心|凉|粉|,|说|是|厨|师|是|四|川|那|边|来|的|。||环|境|呢|比|较|简|单|干|净|,|去|的|时|候|下|午|一|点|多|了|,|还|有|四|五|桌|人|在|用|餐||口|味|对|于|我|而|言|点|了|麻|辣|的|口|感|正|正|好|,|男|票|比|较|能|吃|辣|,|相|对|而|言|觉|得|他|们|家|的|麻|辣|口|感|麻|有|了|,|辣|还|欠|缺|一|点|,|老|板|娘|说|考|虑|到|客|人|口|味|不|同|所|以|没|敢|放|太|多|辣|椒|,|能|吃|辣|的|朋|友|可|以|考|虑|下|单|之|前|和|老|板|先|说|好|。|鱼|呢|我|们|选|的|是|黑|鱼|,|2|.|9|斤|的|鱼|加|上|一|盆|我|以|为|没|有|什|么|东|西|实|际|上|东|西|很|多|的|锅|底|,|我|们|吃|的|饱|饱|的|,|最|后|以|为|吃|的|差|不|多|了|,|打|包|一|看|简|直|像|没|动|过|一|样|,|分|量|还|是|满|足|的|,|鱼|比|较|新|鲜|。|伤|心|凉|粉|很|辣|,|不|过|口|味|也|蛮|好|吃|的|。||总|的|来|说|,|性|价|比|还|是|可|以|的|,|两|个|人|吃|了|大|概|1|6|0|左|右|,|用|了|团|购|券|的|话|一|百|块|不|到|,|会|考|虑|下|次|再|来|"|"|我|想|说|他们|家|的|优惠活动|好|持久|啊|,|我|预售|的|时候|买|的|券|,|前两天|心血来潮|去|吃|的|活动|还|在|继续||首先|说|下|服务|,|因为|和|男票|开车|去|的|,|有点|不|认路|,|老板|很|耐心|的|在|电话|里|帮|我们|指路|,|到|了|门店|之后|也|帮|我们|推荐|了|他们|家|做|的|比较|地道|的|伤心|凉粉|,|说|是|厨师|是|四川|那边|来|的|。||环境|呢|比较简单|干净|,|去|的|时候|下午|一点多|了|,|还有|四五桌|人|在|用餐||口味|对于|我|而言|点|了|麻辣|的|口感|正|正好|,|男票|比较|能|吃|辣|,|相对而言|觉得|他们|家|的|麻辣|口感|麻有|了|,|辣|还|欠缺|一点|,|老板娘|说|考虑|到|客人|口味|不同|所以|没敢|放太多|辣椒|,|能|吃|辣|的|朋友|可以|考虑|下单|之前|和|老板|先|说好|。|鱼|呢|我们|选|的|是|黑鱼|,|2.9|斤|的|鱼|加上|一盆|我|以为|没有|什么|东西|实际上|东西|很多|的|锅底|,|我们|吃|的|饱饱|的|,|最后|以为|吃|的|差不多|了|,|打包|一看|简直|像|没动|过|一样|,|分量|还是|满足|的|,|鱼|比较|新鲜|。|伤心|凉粉|很辣|,|不过|口味|也|蛮|好吃|的|。||总的来说|,|性价比|还是|可以|的|,|两个|人|吃|了|大概|160|左右|,|用|了|团购|券|的话|一百块|不到|,|会|考虑|下次|再|来|" 661 2018-10-19 15:38:02 0:04:27 "店的位置很好找,来了不止一次了。环境很好,人气很旺,服务很好,菜品很赞。白水都是放在高脚杯里,热水。上菜速度不错。鸭舌很入味,量还可以。脆脆的很喜欢。口水鸡超级给力,辣椒香而不燥,芝麻香,鸡肉很嫩,底下还有笋,比较爽口。麻酱油麦菜特别解辣,麻酱量大,微甜。水煮鱼鱼片鲜嫩,辣椒不会太辣,麻椒很给力。豆芽量大爽口。豆花好大一锅,小料配了酥黄豆,葱,酱汁,跟豆花一起,一吃好几碗。特别满足的一顿饭。继续支持!" "|店|的|位|置|很|好|找|,|来|了|不|止|一|次|了|。|环|境|很|好|,|人|气|很|旺|,|服|务|很|好|,|菜|品|很|赞|。|白|水|都|是|放|在|高|脚|杯|里|,|热|水|。|上|菜|速|度|不|错|。|鸭|舌|很|入|味|,|量|还|可|以|。|脆|脆|的|很|喜|欢|。|口|水|鸡|超|级|给|力|,|辣|椒|香|而|不|燥|,|芝|麻|香|,|鸡|肉|很|嫩|,|底|下|还|有|笋|,|比|较|爽|口|。|麻|酱|油|麦|菜|特|别|解|辣|,|麻|酱|量|大|,|微|甜|。|水|煮|鱼|鱼|片|鲜|嫩|,|辣|椒|不|会|太|辣|,|麻|椒|很|给|力|。|豆|芽|量|大|爽|口|。|豆|花|好|大|一|锅|,|小|料|配|了|酥|黄|豆|,|葱|,|酱|汁|,|跟|豆|花|一|起|,|一|吃|好|几|碗|。|特|别|满|足|的|一|顿|饭|。|继|续|支|持|!|"|"|店|的|位置|很|好找|,|来|了|不止一次|了|。|环境|很|好|,|人气|很旺|,|服务|很|好|,|菜品|很赞|。|白水|都|是|放在|高脚杯|里|,|热水|。|上菜|速度|不错|。|鸭舌|很|入味|,|量|还|可以|。|脆脆|的|很|喜欢|。|口水鸡|超级|给力|,|辣椒|香而|不燥|,|芝麻|香|,|鸡肉|很嫩|,|底下|还有|笋|,|比较|爽口|。|麻酱|油麦|菜|特别|解辣|,|麻酱|量|大|,|微甜|。|水煮鱼|鱼片|鲜嫩|,|辣椒|不会|太辣|,|麻椒|很|给|力|。|豆芽|量|大|爽口|。|豆花|好大|一锅|,|小料|配|了|酥|黄豆|,|葱|,|酱汁|,|跟|豆花|一起|,|一吃|好几碗|。|特别|满足|的|一顿饭|。|继续|支持|!|" 337 2018-10-19 17:11:03 0:00:13 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:11:59 0:00:12 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:21:39 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:23:51 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:29:21 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:41:29 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 17:48:42 0:00:15 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:05:48 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:40:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:45:17 0:00:09 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 18:48:18 0:03:10 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 18:51:11 0:06:03 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 18:53:59 0:08:51 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 18:56:44 0:11:36 "还是头一次被点评抽中宵夜套餐的,第一次提前打电话去预约,老板说8点半以后才开始提供宵夜,后面因为有事耽搁了也就没去成。第二次是晚上在家突然就想吃生蚝了,于是就直接过去了,在沈塘桥那里还仔细张望了几下,因为虽说是义海蚝情,但是店面看上去真的很干净完全不像吃烧烤宵夜的样子。然后老板很热情地出来问,我就囧囧地进去了。才知道这家店白天是茶餐厅,8点以后变身位义海蚝情。看起来生意很不错,里面几乎坐满了人。上菜很快,先上的是一盘酸酸甜甜的小果盘,因为不怎么喜欢吃酸的,所以吃了一两个就作罢,后来听老板说这些酸果是专门从广东那边运过来的,吃完烤串以后再吃这个就十分解腻。接着上了生蚝,分别是蒜蓉和原味的,处理得很干净,而且也不油腻,没有腥味。嫩烤生牛实在太美味了!据老板说这个生牛肉都是每天凌晨去市场买的,如果当天做不完,第二天也不会再用来做这道菜了,因为牛肉经过冷冻以后口感就没有那么鲜嫩了。后面还有烤韭黄,烤风爪还有烤鸡翅,味道都很棒!吃完以后,老板还特地过来询问我们的意见,征求我们的建议,非常诚恳,绝对好评!" "|还|是|头|一|次|被|点|评|抽|中|宵|夜|套|餐|的|,|第|一|次|提|前|打|电|话|去|预|约|,|老|板|说|8|点|半|以|后|才|开|始|提|供|宵|夜|,|后|面|因|为|有|事|耽|搁|了|也|就|没|去|成|。|第|二|次|是|晚|上|在|家|突|然|就|想|吃|生|蚝|了|,|于|是|就|直|接|过|去|了|,|在|沈|塘|桥|那|里|还|仔|细|张|望|了|几|下|,|因|为|虽|说|是|义|海|蚝|情|,|但|是|店|面|看|上|去|真|的|很|干|净|完|全|不|像|吃|烧|烤|宵|夜|的|样|子|。|然|后|老|板|很|热|情|地|出|来|问|,|我|就|囧|囧|地|进|去|了|。||才|知|道|这|家|店|白|天|是|茶|餐|厅|,|8|点|以|后|变|身|位|义|海|蚝|情|。|看|起|来|生|意|很|不|错|,|里|面|几|乎|坐|满|了|人|。|上|菜|很|快|,|先|上|的|是|一|盘|酸|酸|甜|甜|的|小|果|盘|,|因|为|不|怎|么|喜|欢|吃|酸|的|,|所|以|吃|了|一|两|个|就|作|罢|,|后|来|听|老|板|说|这|些|酸|果|是|专|门|从|广|东|那|边|运|过|来|的|,|吃|完|烤|串|以|后|再|吃|这|个|就|十|分|解|腻|。|接|着|上|了|生|蚝|,|分|别|是|蒜|蓉|和|原|味|的|,|处|理|得|很|干|净|,|而|且|也|不|油|腻|,|没|有|腥|味|。|嫩|烤|生|牛|实|在|太|美|味|了|!|据|老|板|说|这|个|生|牛|肉|都|是|每|天|凌|晨|去|市|场|买|的|,|如|果|当|天|做|不|完|,|第|二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因|为|牛|肉|经|过|冷|冻|以|后|口|感|就|没|有|那|么|鲜|嫩|了|。||后|面|还|有|烤|韭|黄|,|烤|风|爪|还|有|烤|鸡|翅|,|味|道|都|很|棒|!||吃|完|以|后|,|老|板|还|特|地|过|来|询|问|我|们|的|意|见|,|征|求|我|们|的|建|议|,|非|常|诚|恳|,|绝|对|好|评|!|"|"|还是|头一|次|被|点评|抽|中|宵夜|套餐|的|,|第一|次|提前|打电话|去|预约|,|老板|说|8|点|半|以后|才|开始|提供|宵夜|,|后面|因为|有|事|耽搁|了|也|就|没|去|成|。|第二|次|是|晚上|在家|突然|就|想|吃|生蚝|了|,|于是|就|直接|过去|了|,|在|沈|塘桥|那里|还|仔细|张望|了|几下|,|因为|虽说|是|义海蚝情|,|但是|店面|看上去|真的|很|干净|完全|不|像|吃|烧烤|宵夜|的|样子|。|然后|老板|很|热情|地|出来|问|,|我|就|囧囧|地|进去|了|。|才|知道|这|家|店|白天|是|茶|餐厅|,|8点|以后|变身|位|义海|蚝情|。|看起来|生意|很|不错|,|里面|几乎|坐满|了|人|。|上菜|很|快|,|先|上|的|是|一|盘|酸酸|甜甜|的|小|果盘|,|因为|不怎么|喜欢|吃|酸|的|,|所以|吃|了|一|两|个|就|作罢|,|后来|听|老板|说|这些|酸|果是|专门|从|广东|那边|运|过来|的|,|吃完|烤|串|以后|再|吃|这个|就|十分|解腻|。|接着|上|了|生蚝|,|分别|是|蒜蓉|和|原味|的|,|处理|得很|干净|,|而且|也|不|油腻|,|没有|腥味|。|嫩烤|生|牛|实在|太|美味|了|!|据|老板|说|这个|生|牛肉|都|是|每天|凌晨|去|市场|买的|,|如果|当天|做|不|完|,|第二|天|也|不|会|再|用|来|做|这|道|菜|了|,|因为|牛肉|经过|冷冻|以后|口感|就|没有|那么|鲜嫩|了|。|后面|还|有|烤|韭黄|,|烤|风|爪|还有|烤|鸡翅|,|味道|都|很|棒|!|吃完|以后|,|老板|还|特地|过来|询问|我们|的|意见|,|征求|我们|的|建议|,|非常|诚恳|,|绝对|好评|!|" 769 2018-10-19 18:59:26 0:14:18 "性价比还是很高的一家店,菜品不算少,只是作为放题的话量稍微多了一点,不能每个品种都吃到,最后还是服务员mm说帮我们写量少点,还是不错的~越到后面客人越多可能就没之前服务那么周到,但总的来说基本没漏单情况~说说味道吧,这家店里所有的虾类都可以试试哦,甜虾很新鲜,什么虾色拉、盐烤大虾还有天妇罗炸虾都很美味哦~刺身类虽然品种不算很多但是188的价格来说算可以了,也很新鲜,飞鱼籽超级好吃的,铁板烧的话味道也不赖,反正这个价位来说算不错了~" "|性|价|比|还|是|很|高|的|一|家|店|,|菜|品|不|算|少|,|只|是|作|为|放|题|的|话|量|稍|微|多|了|一|点|,|不|能|每|个|品|种|都|吃|到|,|最|后|还|是|服|务|员|m|m|说|帮|我|们|写|量|少|点|,|还|是|不|错|的|~|越|到|后|面|客|人|越|多|可|能|就|没|之|前|服|务|那|么|周|到|,|但|总|的|来|说|基|本|没|漏|单|情|况|~|说|说|味|道|吧|,|这|家|店|里|所|有|的|虾|类|都|可|以|试|试|哦|,|甜|虾|很|新|鲜|,|什|么|虾|色|拉|、|盐|烤|大|虾|还|有|天|妇|罗|炸|虾|都|很|美|味|哦|~|刺|身|类|虽|然|品|种|不|算|很|多|但|是|1|8|8|的|价|格|来|说|算|可|以|了|,|也|很|新|鲜|,|飞|鱼|籽|超|级|好|吃|的|,|铁|板|烧|的|话|味|道|也|不|赖|,|反|正|这|个|价|位|来|说|算|不|错|了|~|"|"|性价比|还是|很|高|的|一|家|店|,|菜品|不|算|少|,|只是|作为|放题|的|话|量|稍微|多|了|一点|,|不|能|每个|品种|都|吃到|,|最后|还是|服务员|mm|说|帮|我们|写量|少|点|,|还是|不错|的|~|越|到|后面|客人|越|多|可能|就|没|之前|服务|那么|周到|,|但|总的来说|基本|没|漏|单|情况|~|说说|味道|吧|,|这|家|店里|所有|的|虾类|都|可以|试试|哦|,|甜虾|很|新鲜|,|什么|虾|色拉|、|盐|烤|大虾|还|有|天|妇罗|炸|虾|都|很|美味|哦|~|刺身|类|虽然|品种|不算|很多|但是|188|的|价格|来说|算|可以|了|,|也|很|新鲜|,|飞鱼籽|超级|好吃|的|,|铁板烧|的话|味道|也|不赖|,|反正|这个|价位|来说|算|不|错|了|~|" 366 2018-10-19 19:01:50 0:00:11 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:02:28 0:17:20 "下马坊地铁口出来稍微走一点点就能看到了,一家很小的店面。环境一般般,室内比较昏暗。服务态度还可以,没带钱出门,点单的时候只能想到用团购了。点了辣子鸡面和豌杂面,辣子鸡面上面是几根青菜和4块鸡肉,然后的然后就木有了,鸡块是凉的,需要先放在面汤里面泡会儿。豌杂面的豌豆有一点点酸酸的感觉,和以前吃得不一样。总体来说口味一般般,对于吃面喜欢先喝汤的我来说,总觉得欠缺点什么。没全部吃完,但是可以填饱肚子了。图一是辣子鸡面,会加香菜,不喜欢香菜的要提前说一下。图二是把鸡块吃完之后的素面条;图三为豌杂面。" "|下|马|坊|地|铁|口|出|来|稍|微|走|一|点|点|就|能|看|到|了|,|一|家|很|小|的|店|面|。|环|境|一|般|般|,|室|内|比|较|昏|暗|。|服|务|态|度|还|可|以|,|没|带|钱|出|门|,|点|单|的|时|候|只|能|想|到|用|团|购|了|。|点|了|辣|子|鸡|面|和|豌|杂|面|,|辣|子|鸡|面|上|面|是|几|根|青|菜|和|4|块|鸡|肉|,|然|后|的|然|后|就|木|有|了|,|鸡|块|是|凉|的|,|需|要|先|放|在|面|汤|里|面|泡|会|儿|。|豌|杂|面|的|豌|豆|有|一|点|点|酸|酸|的|感|觉|,|和|以|前|吃|得|不|一|样|。|总|体|来|说|口|味|一|般|般|,|对|于|吃|面|喜|欢|先|喝|汤|的|我|来|说|,|总|觉|得|欠|缺|点|什|么|。|没|全|部|吃|完|,|但|是|可|以|填|饱|肚|子|了|。|图|一|是|辣|子|鸡|面|,|会|加|香|菜|,|不|喜|欢|香|菜|的|要|提|前|说|一|下|。|图|二|是|把|鸡|块|吃|完|之|后|的|素|面|条|;|图|三|为|豌|杂|面|。|"|"|下马坊|地铁口|出来|稍微|走|一点点|就|能|看到|了|,|一|家|很|小|的|店面|。|环境|一|般般|,|室内|比较|昏暗|。|服务|态度|还|可以|,|没带|钱|出门|,|点|单|的|时候|只能|想到|用|团|购|了|。|点|了|辣子|鸡面|和|豌杂面|,|辣|子鸡|面|上面|是|几|根|青菜|和|4|块|鸡肉|,|然后|的|然后|就|木|有|了|,|鸡块|是|凉|的|,|需要|先|放在|面汤|里面|泡|会儿|。|豌杂面|的|豌豆|有|一点点|酸酸的|感觉|,|和|以前|吃|得|不|一样|。|总体|来说|口味|一般|般|,|对于|吃|面|喜欢|先|喝|汤|的|我|来说|,|总|觉得|欠缺|点|什么|。|没|全部|吃完|,|但是|可以|填饱|肚子|了|。|图|一|是|辣子|鸡面|,|会|加|香菜|,|不|喜欢|香菜|的|要|提前|说|一下|。|图二|是|把|鸡块|吃完|之后|的|素面条|;|图三|为|豌|杂面|。|" 420 2018-10-19 19:05:37 0:20:29 "今天要探的店是位于利时奥特莱斯4楼的阿拉渔歌,位置很好找,交通也便利。我是提前一天预约的,所以到店就有位置了。店面不大,里面的餐位还真不少。进门的那个大烤炉特别吸引人,忍不住凑近多看了几眼。原来今晚的烤鱼都是出自这个“大家伙”。中的霸王餐是78元的一条海鲈鱼,服务员推荐了几个口味,最后选择的人气较旺的:酱香味的。同时还点了2份配菜:豆芽和土豆粉。等了大概10分钟,今晚的主角终于登场了!幸好点了配菜,不然只有烤鱼上的几块土豆,怎么吃。鱼烤的火候倒是不错,外焦里嫩,鱼肉有弹性、肉质滑嫩,但鱼是活杀,不是现杀。5元一份的豆芽少的可怜,只有几根,土豆粉倒是不错,q弹爽滑,有嚼劲。总体评价:客流量不大,基本到了都有餐位的。鱼烤的比较好,调味也到位,但味道放太多了,吃后口干。提个建议:店内的手机信号很差,真心不喜欢。" "|今|天|要|探|的|店|是|位|于|利|时|奥|特|莱|斯|4|楼|的|阿|拉|渔|歌|,|位|置|很|好|找|,|交|通|也|便|利|。|我|是|提|前|一|天|预|约|的|,|所|以|到|店|就|有|位|置|了|。||店|面|不|大|,|里|面|的|餐|位|还|真|不|少|。|进|门|的|那|个|大|烤|炉|特|别|吸|引|人|,|忍|不|住|凑|近|多|看|了|几|眼|。|原|来|今|晚|的|烤|鱼|都|是|出|自|这|个|“|大|家|伙|”|。|中|的|霸|王|餐|是|7|8|元|的|一|条|海|鲈|鱼|,|服|务|员|推|荐|了|几|个|口|味|,|最|后|选|择|的|人|气|较|旺|的|:|酱|香|味|的|。|同|时|还|点|了|2|份|配|菜|:|豆|芽|和|土|豆|粉|。||等|了|大|概|1|0|分|钟|,|今|晚|的|主|角|终|于|登|场|了|!|幸|好|点|了|配|菜|,|不|然|只|有|烤|鱼|上|的|几|块|土|豆|,|怎|么|吃|。|鱼|烤|的|火|候|倒|是|不|错|,|外|焦|里|嫩|,|鱼|肉|有|弹|性|、|肉|质|滑|嫩|,|但|鱼|是|活|杀|,|不|是|现|杀|。|5|元|一|份|的|豆|芽|少|的|可|怜|,|只|有|几|根|,|土|豆|粉|倒|是|不|错|,|q|弹|爽|滑|,|有|嚼|劲|。||总|体|评|价|:|客|流|量|不|大|,|基|本|到|了|都|有|餐|位|的|。|鱼|烤|的|比|较|好|,|调|味|也|到|位|,|但|味|道|放|太|多|了|,|吃|后|口|干|。|提|个|建|议|:|店|内|的|手|机|信|号|很|差|,|真|心|不|喜|欢|。|"|"|今天|要|探|的|店|是|位于|利时|奥特莱斯|4|楼|的|阿拉|渔歌|,|位置|很|好找|,|交通|也|便利|。|我|是|提前|一|天|预约|的|,|所以|到|店|就|有|位置|了|。|店面|不大|,|里面|的|餐位|还|真|不少|。|进门|的|那个|大|烤炉|特别|吸引|人|,|忍不住|凑近|多|看|了|几|眼|。|原来|今晚|的|烤鱼|都|是|出自|这个|“|大家伙|”|。|中|的|霸王|餐|是|78|元|的|一|条|海|鲈鱼|,|服务员|推荐|了|几|个|口味|,|最后|选择|的|人气|较|旺|的|:|酱|香味|的|。|同时|还|点|了|2|份|配菜|:|豆芽|和|土豆粉|。|等|了|大概|10|分钟|,|今晚|的|主角|终于|登场|了|!|幸好|点|了|配菜|,|不然|只|有|烤鱼|上|的|几|块|土豆|,|怎么|吃|。|鱼|烤的|火候|倒是|不错|,|外焦|里嫩|,|鱼肉|有|弹性|、|肉质|滑嫩|,|但|鱼|是|活杀|,|不是|现杀|。|5|元|一|份|的|豆芽|少|的|可怜|,|只有|几|根|,|土豆粉|倒是|不错|,|q弹|爽滑|,|有|嚼劲|。|总体|评价|:|客流量|不|大|,|基本|到|了|都|有|餐位|的|。|鱼|烤的|比较|好|,|调味|也|到位|,|但|味道|放|太|多|了|,|吃|后|口干|。|提|个|建议|:|店|内|的|手机|信号|很|差|,|真心|不|喜欢|。|" 616 2018-10-19 19:05:43 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 2018-10-19 19:08:54 0:23:46 "他家有很多分店感觉一下子冒出来的是的以前没怎么见到过现在随便去哪都能看到这家也是我新发现的不知是新开还是老店他家面分很多种什么毛细二细很多种以前都吃的普通的今天尝了毛细的特别细了了还有很粗的那种跟面片是的没见人吃过图片倒是见过凉菜就是普通面馆都有的不算特色了一小盘说是可以拚两种量不大但是也够吃了面拉出来很快吃的时候看见一个大老爷们要了两碗小姑娘的话一碗都吃不了辣椒油也还不错不算辣他家单纯说面的话微微偏贵忘了拍照片了对了点的双人套餐没吃完" "|他|家|有|很|多|分|店||感|觉|一|下|子|冒|出|来|的|是|的||以|前|没|怎|么|见|到|过||现|在|随|便|去|哪|都|能|看|到||这|家|也|是|我|新|发|现|的||不|知|是|新|开|还|是|老|店||他|家|面|分|很|多|种||什|么|毛|细||二|细||很|多|种||以|前|都|吃|的|普|通|的||今|天|尝|了|毛|细|的||特|别|细|了|了||还|有|很|粗|的|那|种|跟|面|片|是|的||没|见|人|吃|过||图|片|倒|是|见|过||凉|菜|就|是|普|通|面|馆|都|有|的||不|算|特|色|了||一|小|盘||说|是|可|以|拚|两|种||量|不|大||但|是|也|够|吃|了||面|拉|出|来|很|快||吃|的|时|候|看|见|一|个|大|老|爷|们|要|了|两|碗||小|姑|娘|的|话|一|碗|都|吃|不|了||辣|椒|油||也|还|不|错||不|算|辣||他|家|单|纯|说|面|的|话|微|微|偏|贵||忘|了|拍|照|片|了||对|了|点|的|双|人|套|餐||没|吃|完|"|"|他|家有|很多|分店|感觉|一|下子|冒出|来|的|是的|以前|没|怎么|见到|过|现在|随便|去|哪|都|能|看到|这|家|也|是|我|新|发现|的|不知|是|新开|还是|老店|他|家|面分|很多|种|什么|毛细|二|细|很多|种|以前|都|吃|的|普通|的|今天|尝|了|毛细|的|特别|细了|了|还有|很|粗|的|那|种|跟|面片|是|的|没|见人|吃|过|图片|倒是|见|过|凉菜|就|是|普通|面馆|都|有的|不算|特色|了|一|小|盘|说|是|可以|拚|两|种|量|不|大|但是|也|够|吃|了|面|拉|出来|很|快|吃|的|时候|看见|一|个|大|老爷们|要|了|两|碗|小|姑娘|的话|一|碗|都|吃|不|了|辣椒油|也|还|不错|不|算|辣|他|家|单纯|说|面的|话|微微|偏|贵|忘|了|拍|照片|了|对了|点|的|双人|套餐|没|吃完|" 415 2018-10-19 19:09:09 0:03:37 "吃过最完美的一顿餐厅周午餐,前菜,主菜,甜品,饮料,居然前菜和主菜还都有配酒,真是大爱啊[色][色][色]。先上的面包配黄油,后悔不应该都吃了,害的主菜吃不下啊!服务员还会问需不需要再加,还好没有贪心,嘿嘿。前菜的芝士和冷肉拼盘,量很足,然后能说好喜欢那个白色的拌酱嘛~前菜配干白或者粉红葡萄酒,很搭。主菜被通知已经没有三文鱼和鸭腿了,只能换了牛肉千层面和半只烤春鸡配土豆,配的干红。土豆好甜,春鸡和千层面量太大,吃撑了我们两个女生!最后还有甜品,推荐酸奶,感觉有用cheese,很特别。提拉米苏有点偏甜,所以最后配的黑咖啡,真是直接解腻的。预定的时候以为只有一杯酒,想不到配的是两杯酒,真是太划算了!地方不大,但是装修的很舒服,也不会有太簇拥的感觉。酒定的价格也不贵,下次可以和朋友再来小聚。" "|吃|过|最|完|美|的|一|顿|餐|厅|周|午|餐|,|前|菜|,|主|菜|,|甜|品|,|饮|料|,|居|然|前|菜|和|主|菜|还|都|有|配|酒|,|真|是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面|包|配|黄|油|,|后|悔|不|应|该|都|吃|了|,|害|的|主|菜|吃|不|下|啊|!|服|务|员|还|会|问|需|不|需|要|再|加|,|还|好|没|有|贪|心|,|嘿|嘿|。|前|菜|的|芝|士|和|冷|肉|拼|盘|,|量|很|足|,|然|后|能|说|好|喜|欢|那|个|白|色|的|拌|酱|嘛|~|前|菜|配|干|白|或|者|粉|红|葡|萄|酒|,|很|搭|。|主|菜|被|通|知|已|经|没|有|三|文|鱼|和|鸭|腿|了|,|只|能|换|了|牛|肉|千|层|面|和|半|只|烤|春|鸡|配|土|豆|,|配|的|干|红|。|土|豆|好|甜|,|春|鸡|和|千|层|面|量|太|大|,|吃|撑|了|我|们|两|个|女|生|!|最|后|还|有|甜|品|,|推|荐|酸|奶|,|感|觉|有|用|c|h|e|e|s|e|,|很|特|别|。|提|拉|米|苏|有|点|偏|甜|,|所|以|最|后|配|的|黑|咖|啡|,|真|是|直|接|解|腻|的|。|预|定|的|时|候|以|为|只|有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真|是|太|划|算|了|!|地|方|不|大|,|但|是|装|修|的|很|舒|服|,|也|不|会|有|太|簇|拥|的|感|觉|。|酒|定|的|价|格|也|不|贵|,|下|次|可|以|和|朋|友|再|来|小|聚|。|"|"|吃|过|最|完美|的|一|顿|餐厅|周|午餐|,|前菜|,|主菜|,|甜品|,|饮料|,|居然|前菜|和|主菜|还|都|有|配酒|,|真是|大|爱|啊|[|色|]|[|色|]|[|色|]|。|先|上|的|面包|配|黄油|,|后悔|不|应该|都|吃|了|,|害|的|主菜|吃|不|下|啊|!|服务员|还|会|问|需|不|需要|再加|,|还好|没有|贪心|,|嘿嘿|。|前菜|的|芝士|和|冷|肉|拼盘|,|量|很|足|,|然后|能|说好|喜欢|那个|白色|的|拌酱|嘛|~|前菜|配|干白|或者|粉红|葡萄酒|,|很|搭|。|主菜|被|通知|已经|没有|三文鱼|和|鸭|腿|了|,|只|能|换了|牛肉|千|层面|和|半|只|烤|春|鸡|配|土豆|,|配|的|干红|。|土豆|好|甜|,|春鸡|和|千|层|面量|太|大|,|吃|撑|了|我们|两|个|女生|!|最后|还|有|甜品|,|推荐|酸奶|,|感觉|有用|cheese|,|很|特别|。|提拉|米|苏|有点|偏|甜|,|所以|最后|配|的|黑|咖啡|,|真是|直接|解腻|的|。|预定|的|时候|以为|只有|一|杯|酒|,|想|不|到|配|的|是|两|杯|酒|,|真是|太|划算|了|!|地方|不|大|,|但是|装修|的|很|舒服|,|也|不|会|有|太|簇拥|的|感觉|。|酒|定|的|价格|也|不|贵|,|下次|可以|和|朋友|再来|小聚|。|" 604 2018-10-19 19:12:08 0:27:00 "和很久没见的高中同学聚会,都很喜欢猫咪,上次约在江南西的某家猫咪主题餐厅,感觉都很好,能和可爱的猫咪亲密接触棒棒哒,于是这次也准备约到猫咪主题的餐厅一边吃饭一边逗猫,在大众点评上看到这家meow1306猫小窝评价看上去都不错,于是愉快地定下了午餐之约(下午还要去买买买~),预定了12点用餐,惭愧地迟到了半小时(友人迷路了半小时呵呵,其实就是体育中心a出口出去直走到路口左转30米左右就到了╮(╯▽╰)╭)幸好到达之时仍然有空位,安全入座。先说说#环境#,空间蛮大的,全店铺木地板,进门需要换鞋+进行手部消毒,位置刚好正对着太古汇,边上是一排超大落地玻璃窗,能看到体育西路的车水马龙,采光视线都不错,墙壁上的装饰也很用心,我们位置后面是一墙的猫咪春游壁画,樱花之下猫咪们愉快用餐的姿态萌萌哒~座椅用的是矮沙发+配套的木质桌子,沙发满软的,刚好是猫咪很容易能跳上去的高度,桌子的高度也刚刚好,很方便进餐,有一股家的味道,很闲适,最赞的是每张桌子的间隔都很宽敞,坐着一点都不压抑,聊天也不会很受隔壁的影响,不错说完环境,就轮到最核心的#猫咪#了,与这里宽敞的环境相比,猫咪的数量就完全不成正比,只有小猫六七只,有两只美短(估计还是兄弟来着),还有一直纯白的波斯猫、一只脸黑的暹罗猫,两只扁脸咖啡猫(其中一只脖子套了一个蝴蝶结,另外一只又胖又懒,全程在装地毯),还有一只纯黑的小奶猫(没认出品种,但是身娇体柔易推倒有木有),一只配一桌都嫌不够,不过猫猫都很干净、很乖巧,能抱(不过下一秒就逃),身上也没有什么味道,调教得还算不错。说完猫咪,再说说食物出品,只能说重点果然在猫,食物就一般般啦,#味道#还可以,但是分量真心少,我们点了一个爆浆鸡腿肉饭(28)、一个番茄肉酱意粉(36)、一壶花果茶(玫瑰花+苹果花36),一共100,团购后88,人均44。先说我的鸡腿饭,味道还ok,是切开的小块鸡腿肉+腌萝卜+洋葱煮的肉酱拌饭,鸡腿肉虽不多但肉都满嫩的,下饭;朋友的番茄肉酱意粉那个分量感觉三口就能吃完,偷尝了一根味道不错,就是性价比很低;花果茶就更坑爹了,壶里面的茶叶花蕾就那么两三颗可怜的漂浮着,茶水谈而无味,根本不值得这个价,差评。最后稍稍提一下#服务#除了最开始的给我们喷一下手+拿菜单(居然是用牛皮纸手写的)给我们点下菜几乎全程自助,没有热情交谈的店主给我们介绍店里的猫咪,也没有店员给我们拿逗猫棒、猫玩具,态度冷淡,在最后快离开的时候,还有一个女的一边在给气球打气(据说2点有包场活动估计是布置场地的工作人员),一边用炒鸡可怕的眼神盯着我们,吓得我们赶紧去结账。总体来说环境很不错,但奔着去看猫咪的可能有点失望了,食物的性价比也很低,不过环境蛮安静的,比较适合去下午茶小聚,顺便逗逗猫咪,据说还有鸡尾酒,晚上去的可以尝尝" "|和|很|久|没|见|的|高|中|同|学|聚|会|,|都|很|喜|欢|猫|咪|,|上|次|约|在|江|南|西|的|某|家|猫|咪|主|题|餐|厅|,|感|觉|都|很|好|,|能|和|可|爱|的|猫|咪|亲|密|接|触|棒|棒|哒|,|于|是|这|次|也|准|备|约|到|猫|咪|主|题|的|餐|厅|一|边|吃|饭|一|边|逗|猫|,|在|大|众|点|评|上|看|到|这|家|m|e|o|w|1|3|0|6|猫|小|窝|评|价|看|上|去|都|不|错|,|于|是|愉|快|地|定|下|了|午|餐|之|约|(|下|午|还|要|去|买|买|买|~|)|,|预|定|了|1|2|点|用|餐|,|惭|愧|地|迟|到|了|半|小|时|(|友|人|迷|路|了|半|小|时|呵|呵|,|其|实|就|是|体|育|中|心|a|出|口|出|去|直|走|到|路|口|左|转|3|0|米|左|右|就|到|了|╮|(|╯|▽|╰|)|╭|)|幸|好|到|达|之|时|仍|然|有|空|位|,|安|全|入|座|。||先|说|说|#|环|境|#|,|空|间|蛮|大|的|,|全|店|铺|木|地|板|,|进|门|需|要|换|鞋|+|进|行|手|部|消|毒|,|位|置|刚|好|正|对|着|太|古|汇|,|边|上|是|一|排|超|大|落|地|玻|璃|窗|,|能|看|到|体|育|西|路|的|车|水|马|龙|,|采|光|视|线|都|不|错|,|墙|壁|上|的|装|饰|也|很|用|心|,|我|们|位|置|后|面|是|一|墙|的|猫|咪|春|游|壁|画|,|樱|花|之|下|猫|咪|们|愉|快|用|餐|的|姿|态|萌|萌|哒|~|座|椅|用|的|是|矮|沙|发|+|配|套|的|木|质|桌|子|,|沙|发|满|软|的|,|刚|好|是|猫|咪|很|容|易|能|跳|上|去|的|高|度|,|桌|子|的|高|度|也|刚|刚|好|,|很|方|便|进|餐|,|有|一|股|家|的|味|道|,|很|闲|适|,|最|赞|的|是|每|张|桌|子|的|间|隔|都|很|宽|敞|,|坐|着|一|点|都|不|压|抑|,|聊|天|也|不|会|很|受|隔|壁|的|影|响|,|不|错||说|完|环|境|,|就|轮|到|最|核|心|的|#|猫|咪|#|了|,|与|这|里|宽|敞|的|环|境|相|比|,|猫|咪|的|数|量|就|完|全|不|成|正|比|,|只|有|小|猫|六|七|只|,|有|两|只|美|短|(|估|计|还|是|兄|弟|来|着|)|,|还|有|一|直|纯|白|的|波|斯|猫|、|一|只|脸|黑|的|暹|罗|猫|,|两|只|扁|脸|咖|啡|猫|(|其|中|一|只|脖|子|套|了|一|个|蝴|蝶|结|,|另|外|一|只|又|胖|又|懒|,|全|程|在|装|地|毯|)|,|还|有|一|只|纯|黑|的|小|奶|猫|(|没|认|出|品|种|,|但|是|身|娇|体|柔|易|推|倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不|够|,|不|过|猫|猫|都|很|干|净|、|很|乖|巧|,|能|抱|(|不|过|下|一|秒|就|逃|)|,|身|上|也|没|有|什|么|味|道|,|调|教|得|还|算|不|错|。||说|完|猫|咪|,|再|说|说|食|物|出|品|,|只|能|说|重|点|果|然|在|猫|,|食|物|就|一|般|般|啦|,|#|味|道|#|还|可|以|,|但|是|分|量|真|心|少|,|我|们|点|了|一|个|爆|浆|鸡|腿|肉|饭|(|2|8|)|、|一|个|番|茄|肉|酱|意|粉|(|3|6|)|、|一|壶|花|果|茶|(|玫|瑰|花|+|苹|果|花|3|6|)|,|一|共|1|0|0|,|团|购|后|8|8|,|人|均|4|4|。|先|说|我|的|鸡|腿|饭|,|味|道|还|o|k|,|是|切|开|的|小|块|鸡|腿|肉|+|腌|萝|卜|+|洋|葱|煮|的|肉|酱|拌|饭|,|鸡|腿|肉|虽|不|多|但|肉|都|满|嫩|的|,|下|饭|;|朋|友|的|番|茄|肉|酱|意|粉|那|个|分|量|感|觉|三|口|就|能|吃|完|,|偷|尝|了|一|根|味|道|不|错|,|就|是|性|价|比|很|低|;|花|果|茶|就|更|坑|爹|了|,|壶|里|面|的|茶|叶|花|蕾|就|那|么|两|三|颗|可|怜|的|漂|浮|着|,|茶|水|谈|而|无|味|,|根|本|不|值|得|这|个|价|,|差|评|。||最|后|稍|稍|提|一|下|#|服|务|#|除|了|最|开|始|的|给|我|们|喷|一|下|手|+|拿|菜|单|(|居|然|是|用|牛|皮|纸|手|写|的|)|给|我|们|点|下|菜|几|乎|全|程|自|助|,|没|有|热|情|交|谈|的|店|主|给|我|们|介|绍|店|里|的|猫|咪|,|也|没|有|店|员|给|我|们|拿|逗|猫|棒|、|猫|玩|具|,|态|度|冷|淡|,|在|最|后|快|离|开|的|时|候|,|还|有|一|个|女|的|一|边|在|给|气|球|打|气|(|据|说|2|点|有|包|场|活|动|估|计|是|布|置|场|地|的|工|作|人|员|)|,|一|边|用|炒|鸡|可|怕|的|眼|神|盯|着|我|们|,|吓|得|我|们|赶|紧|去|结|账|。||总|体|来|说|环|境|很|不|错|,|但|奔|着|去|看|猫|咪|的|可|能|有|点|失|望|了|,|食|物|的|性|价|比|也|很|低|,|不|过|环|境|蛮|安|静|的|,|比|较|适|合|去|下|午|茶|小|聚|,|顺|便|逗|逗|猫|咪|,|据|说|还|有|鸡|尾|酒|,|晚|上|去|的|可|以|尝|尝|"|"|和|很久|没|见|的|高中|同学|聚会|,|都|很|喜欢|猫咪|,|上次|约在|江南|西|的|某|家|猫咪|主题|餐厅|,|感觉|都|很|好|,|能|和|可爱|的|猫咪|亲密|接触|棒棒哒|,|于是|这|次|也|准备|约|到|猫咪|主题|的|餐厅|一边|吃饭|一边|逗|猫|,|在|大众|点评|上|看到|这|家|meow|1306|猫|小窝|评价|看上去|都|不错|,|于是|愉快|地|定下|了|午餐|之|约|(|下午|还|要|去|买|买|买|~|)|,|预定|了|12点|用餐|,|惭愧|地|迟到|了|半|小时|(|友人|迷路|了|半|小时|呵呵|,|其实|就是|体育|中心|a|出口|出去|直|走到|路口|左转|30|米|左右|就|到|了|╮|(|╯▽╰|)|╭|)|幸好|到达|之时|仍然|有|空位|,|安全|入座|。|先|说说|#|环境|#|,|空间|蛮大|的|,|全|店铺|木|地板|,|进门|需要|换|鞋|+|进行|手部|消毒|,|位置|刚好|正对着|太古汇|,|边上|是|一|排|超大|落地|玻璃窗|,|能|看到|体育|西路|的|车水马龙|,|采光|视线|都|不错|,|墙壁|上|的|装饰|也|很|用心|,|我们|位置|后面|是|一|墙|的|猫咪|春游|壁画|,|樱花|之下|猫咪们|愉快|用餐|的|姿态|萌萌哒|~|座椅|用|的|是|矮沙发|+|配套|的|木质|桌子|,|沙发|满|软|的|,|刚好|是|猫咪|很|容易|能|跳上|去|的|高度|,|桌子|的|高度|也|刚刚|好|,|很|方便|进餐|,|有|一|股|家|的|味道|,|很|闲适|,|最|赞|的|是|每|张|桌子|的|间隔|都|很|宽敞|,|坐|着|一点|都|不|压抑|,|聊天|也|不|会|很|受|隔壁|的|影响|,|不错|说完|环境|,|就|轮到|最|核心|的|#|猫咪|#|了|,|与|这里|宽敞|的|环境|相比|,|猫咪|的|数量|就|完全|不|成|正比|,|只有|小猫|六七|只|,|有|两|只|美|短|(|估计|还是|兄弟|来着|)|,|还有|一直|纯白|的|波斯猫|、|一|只|脸|黑|的|暹罗猫|,|两|只|扁|脸|咖啡|猫|(|其中|一|只|脖子|套|了|一|个|蝴蝶|结|,|另外|一|只|又|胖|又|懒|,|全程|在|装|地毯|)|,|还有|一|只|纯|黑|的|小奶|猫|(|没|认出|品种|,|但是|身娇体|柔易|推倒|有|木|有|)|,|一|只|配|一|桌|都|嫌|不够|,|不过|猫|猫|都|很|干净|、|很|乖巧|,|能|抱|(|不过|下|一|秒|就|逃|)|,|身上|也|没有|什么|味道|,|调教|得|还算|不错|。|说完|猫咪|,|再|说说|食物|出品|,|只能|说|重点|果然|在|猫|,|食物|就|一般|般|啦|,|#|味道|#|还|可以|,|但是|分量|真心|少|,|我们|点|了|一|个|爆浆|鸡腿|肉饭|(|28|)|、|一|个|番茄|肉酱|意粉|(|36|)|、|一|壶|花|果茶|(|玫瑰花|+|苹果花|36|)|,|一共|100|,|团购|后|88|,|人均|44|。|先|说|我|的|鸡腿|饭|,|味道|还|ok|,|是|切开|的|小|块|鸡腿|肉|+|腌萝卜|+|洋葱|煮|的|肉酱|拌饭|,|鸡腿|肉|虽|不|多|但|肉|都|满|嫩的|,|下饭|;|朋友|的|番茄|肉酱|意粉|那个|分量|感觉|三|口|就|能|吃完|,|偷|尝|了|一|根|味道|不错|,|就是|性价比|很低|;|花果|茶|就|更|坑|爹|了|,|壶|里面|的|茶叶|花蕾|就|那么|两|三|颗|可怜|的|漂浮|着|,|茶水|谈|而|无味|,|根本|不|值得|这个|价|,|差评|。|最后|稍稍|提|一下|#|服务|#|除了|最开始|的|给|我们|喷一|下手|+|拿|菜单|(|居然|是|用|牛皮纸|手写|的|)|给|我们|点|下|菜|几乎|全程|自助|,|没有|热情|交谈|的|店主|给|我们|介绍|店里|的|猫咪|,|也|没有|店员|给|我们|拿|逗|猫|棒|、|猫|玩具|,|态度|冷淡|,|在|最后|快|离开|的|时候|,|还有|一|个|女的|一边|在|给|气球|打气|(|据说|2|点|有|包场|活动|估计|是|布置|场地|的|工作|人员|)|,|一边|用|炒|鸡|可怕|的|眼神|盯|着|我们|,|吓|得|我们|赶紧|去|结账|。|总体|来说|环境|很|不错|,|但|奔着|去|看|猫咪|的|可能|有点|失望|了|,|食物|的|性价比|也|很|低|,|不过|环境|蛮|安静|的|,|比较|适合|去|下午|茶|小聚|,|顺便|逗逗|猫咪|,|据说|还有|鸡尾酒|,|晚上|去|的|可以|尝尝|" 1962 2018-10-19 19:12:25 0:06:53 "渔乐圈主题餐厅听名字觉得是一家吃鱼的餐厅,实际上是一家港式茶餐厅,当然这家港式茶餐厅真的很奇葩,香港人吃东西讲究清单,这家点的菜品我吃完之后只有一个印象,就是咸,这家店的位置在写字楼里面的,一般人很难找到,不知道老板怎么想的,会选在这里,边上就是一家保险公司。我是周六中午去吃的,人很少,几乎没几桌客人,我看了看菜单,服务员是推荐点酸菜鱼,这里的酸菜鱼是按斤卖的,觉得价格小贵没点,点了个乳鸽,这里的乳鸽的味道有点怪,不想平常吃到的都是脆脆的。点了皮蛋瘦肉粥,味道还行,不好不坏,还点了叉烧肠粉,都是肥肉,味道马马虎虎。还点了鱼香茄子煲,味道是不错,就是太油了,另外点了个豉汁蒸排骨,这个真的不好吃,排骨不光拍了嫩肉粉,还咬不动。吃完之后我跟店里类似主管的反映菜太咸,她完全不当回事,这样怎么会进步呢!" "|渔|乐|圈|主|题|餐|厅|听|名|字|觉|得|是|一|家|吃|鱼|的|餐|厅|,|实|际|上|是|一|家|港|式|茶|餐|厅|,|当|然|这|家|港|式|茶|餐|厅|真|的|很|奇|葩|,|香|港|人|吃|东|西|讲|究|清|单|,|这|家|点|的|菜|品|我|吃|完|之|后|只|有|一|个|印|象|,|就|是|咸|,|这|家|店|的|位|置|在|写|字|楼|里|面|的|,|一|般|人|很|难|找|到|,|不|知|道|老|板|怎|么|想|的|,|会|选|在|这|里|,|边|上|就|是|一|家|保|险|公|司|。|我|是|周|六|中|午|去|吃|的|,|人|很|少|,|几|乎|没|几|桌|客|人|,|我|看|了|看|菜|单|,|服|务|员|是|推|荐|点|酸|菜|鱼|,|这|里|的|酸|菜|鱼|是|按|斤|卖|的|,|觉|得|价|格|小|贵|没|点|,|点|了|个|乳|鸽|,|这|里|的|乳|鸽|的|味|道|有|点|怪|,|不|想|平|常|吃|到|的|都|是|脆|脆|的|。|点|了|皮|蛋|瘦|肉|粥|,|味|道|还|行|,|不|好|不|坏|,|还|点|了|叉|烧|肠|粉|,|都|是|肥|肉|,|味|道|马|马|虎|虎|。|还|点|了|鱼|香|茄|子|煲|,|味|道|是|不|错|,|就|是|太|油|了|,|另|外|点|了|个|豉|汁|蒸|排|骨|,|这|个|真|的|不|好|吃|,|排|骨|不|光|拍|了|嫩|肉|粉|,|还|咬|不|动|。|吃|完|之|后|我|跟|店|里|类|似|主|管|的|反|映|菜|太|咸|,|她|完|全|不|当|回|事|,|这|样|怎|么|会|进|步|呢|!|"|"|渔乐圈|主题|餐厅|听|名字|觉得|是|一|家|吃鱼|的|餐厅|,|实际上|是|一|家|港式|茶|餐厅|,|当然|这|家|港式|茶|餐厅|真的|很|奇葩|,|香港人|吃|东西|讲究|清单|,|这|家|点|的|菜品|我|吃完|之后|只|有|一|个|印象|,|就是|咸|,|这|家|店|的|位置|在|写字楼|里面|的|,|一般|人|很|难|找到|,|不|知道|老板|怎么|想|的|,|会|选|在|这里|,|边上|就|是|一|家|保险|公司|。|我|是|周六|中午|去|吃|的|,|人|很少|,|几乎|没|几|桌|客人|,|我|看|了|看|菜单|,|服务员|是|推荐|点|酸菜鱼|,|这里|的|酸菜|鱼|是|按|斤|卖的|,|觉得|价格|小|贵|没|点|,|点|了|个|乳鸽|,|这里|的|乳鸽|的|味道|有点|怪|,|不|想|平常|吃到|的|都|是|脆脆|的|。|点|了|皮蛋|瘦肉粥|,|味道|还行|,|不好不坏|,|还|点|了|叉烧|肠粉|,|都|是|肥肉|,|味道|马马虎虎|。|还|点|了|鱼香|茄子煲|,|味道|是|不错|,|就是|太|油了|,|另外|点|了|个|豉汁蒸|排骨|,|这个|真的|不好吃|,|排骨|不|光|拍|了|嫩肉粉|,|还|咬|不|动|。|吃完|之后|我|跟|店里|类似|主管|的|反映|菜|太|咸|,|她|完全|不当|回事|,|这样|怎么|会|进步|呢|!|" 597 2018-10-19 19:15:18 0:30:10 "位置确实比较隐蔽,从美甲店上二楼就是,门口有个不大的招牌,幸好看了大家的点评得以顺利找到。首先说环境,装修让人很舒服,有吧台,也有包间。今天来给爸爸过生日,订了包间,能坐的舒服些,但之前不清楚包间有最低消费,老板很好,为我们破例了一次,特别感谢!菜品很精致,量是日料店一贯的比较秀气,但胜在质量,味道都很好,一看就是用料上乘。寿喜锅菜单上没有,却在墙上挂的推荐菜单中看到了,必点,要的牛肉锅。我是一直喜欢寿喜锅的,让我来尝一尝,鉴定一下。好吃,真的是很好吃,肥牛蘸着生鸡蛋,滑滑嫩嫩,真的完胜我吃过的除将太无二外的其他家,在我的排名中和将太无二并列。大家推荐的明太子鸡翅饺子和明太子黄油土豆都点了,味道都很赞,主要是比较新颖,超满意的一餐!服务也加分不少哦!" "|位|置|确|实|比|较|隐|蔽|,|从|美|甲|店|上|二|楼|就|是|,|门|口|有|个|不|大|的|招|牌|,|幸|好|看|了|大|家|的|点|评|得|以|顺|利|找|到|。|首|先|说|环|境|,|装|修|让|人|很|舒|服|,|有|吧|台|,|也|有|包|间|。|今|天|来|给|爸|爸|过|生|日|,|订|了|包|间|,|能|坐|的|舒|服|些|,|但|之|前|不|清|楚|包|间|有|最|低|消|费|,|老|板|很|好|,|为|我|们|破|例|了|一|次|,|特|别|感|谢|!|菜|品|很|精|致|,|量|是|日|料|店|一|贯|的|比|较|秀|气|,|但|胜|在|质|量|,|味|道|都|很|好|,|一|看|就|是|用|料|上|乘|。|寿|喜|锅|菜|单|上|没|有|,|却|在|墙|上|挂|的|推|荐|菜|单|中|看|到|了|,|必|点|,|要|的|牛|肉|锅|。|我|是|一|直|喜|欢|寿|喜|锅|的|,|让|我|来|尝|一|尝|,|鉴|定|一|下|。|好|吃|,|真|的|是|很|好|吃|,|肥|牛|蘸|着|生|鸡|蛋|,|滑|滑|嫩|嫩|,|真|的|完|胜|我|吃|过|的|除|将|太|无|二|外|的|其|他|家|,|在|我|的|排|名|中|和|将|太|无|二|并|列|。|大|家|推|荐|的|明|太|子|鸡|翅|饺|子|和|明|太|子|黄|油|土|豆|都|点|了|,|味|道|都|很|赞|,|主|要|是|比|较|新|颖|,|超|满|意|的|一|餐|!|服|务|也|加|分|不|少|哦|!|"|"|位置|确实|比较|隐蔽|,|从|美|甲|店|上|二|楼|就是|,|门口|有|个|不|大|的|招牌|,|幸好|看|了|大家|的|点评|得以|顺利|找到|。|首先|说|环境|,|装修|让|人|很|舒服|,|有|吧台|,|也|有|包间|。|今天|来给|爸爸|过|生日|,|订|了|包间|,|能|坐|的|舒服|些|,|但|之前|不|清楚|包间|有|最低|消费|,|老板|很|好|,|为|我们|破例|了|一|次|,|特别|感谢|!|菜品|很|精致|,|量|是|日|料|店|一贯|的|比较|秀气|,|但|胜|在|质量|,|味道|都|很|好|,|一|看|就是|用料|上乘|。|寿喜|锅|菜单|上|没有|,|却|在|墙|上|挂|的|推荐|菜单|中|看到|了|,|必点|,|要|的|牛肉锅|。|我|是|一直|喜欢|寿喜锅|的|,|让|我|来尝|一|尝|,|鉴定|一下|。|好吃|,|真的|是|很|好吃|,|肥牛蘸|着|生|鸡蛋|,|滑滑嫩嫩|,|真的|完胜|我|吃|过|的|除|将|太|无|二|外|的|其他|家|,|在|我|的|排名|中|和|将|太|无|二|并列|。|大家|推荐|的|明|太子|鸡翅|饺子|和|明|太子|黄油|土豆|都|点|了|,|味道|都|很|赞|,|主要|是|比较|新颖|,|超|满意|的|一|餐|!|服务|也|加分|不少|哦|!|" 571 2018-10-19 19:15:39 0:10:07 "去了不少次,地址也比较好找,在中原路与工人路交叉口向南200米,店里的装饰和设计比较古朴,很有解放前的味道。这次团购的是2~3人餐,三菜一汤,还有三份米,分量也不错菜差不多够三个吃,就是米的分量不大,不过可以加钱要米饭,团购价四十九元还是比较实惠的,菜品属于偏川味,都是辣的属于比较开胃的菜。前台态度也不错,服务员上菜更是一路小跑,上菜速度很快,给服务员小哥点个赞。希望店家推出更多的更实惠的团购套餐。" "|去|了|不|少|次|,||地|址|也|比|较|好|找|,|在|中|原|路|与|工|人|路|交|叉|口|向|南|2|0|0|米|,||店|里|的|装|饰|和|设|计|比|较|古|朴|,|很|有|解|放|前|的|味|道|。|这|次|团|购|的|是|2|~|3|人|餐|,||三|菜|一|汤|,||还|有|三|份|米|,|分|量|也|不|错||菜|差|不|多|够|三|个|吃|,|就|是|米|的|分|量|不|大|,|不|过|可|以|加|钱|要|米|饭|,|团|购|价|四|十|九|元|还|是|比|较|实|惠|的|,|菜|品|属|于|偏|川|味|,||都|是|辣|的||属|于|比|较|开|胃|的|菜|。|前|台|态|度|也|不|错|,|服|务|员||上|菜|更|是|一|路|小|跑|,||上|菜|速|度|很|快|,|给|服|务|员|小|哥|点|个|赞|。|希|望|店|家|推|出|更|多|的|更|实|惠|的|团|购|套|餐|。|"|"|去|了|不少|次|,|地址|也|比较|好找|,|在|中原|路|与|工人|路|交叉口|向南|200|米|,|店|里|的|装饰|和|设计|比较|古朴|,|很|有|解放|前|的|味道|。|这|次|团购|的|是|2|~|3|人|餐|,|三|菜|一|汤|,|还有|三|份|米|,|分量|也|不错|菜|差不多|够|三|个|吃|,|就是|米|的|分量|不|大|,|不过|可以|加|钱|要|米饭|,|团|购价|四十九|元|还是|比较|实惠|的|,|菜品|属于|偏川味|,|都|是|辣|的|属于|比较|开胃|的|菜|。|前台|态度|也|不错|,|服务员|上菜|更|是|一|路|小跑|,|上菜|速度|很|快|,|给|服务员|小哥|点|个|赞|。|希望|店家|推出|更|多|的|更|实惠|的|团购|套餐|。|" 356 2018-10-19 19:26:30 0:00:10 "吼吼吼,萌死人的棒棒糖,中了大众点评的霸王餐,太可爱了。一直就好奇这个棒棒糖是怎么个东西,大众点评给了我这个土老冒一个见识的机会。看介绍棒棒糖是用德国糖做的,不会很甜,中间的照片是糯米的,能食用,真是太高端大气上档次了,还可以买蝴蝶结扎口,送人可以买礼盒。我是先打的卖家电话,加了微信,给卖家传的照片。等了几天,卖家就告诉我可以取货了,去大官屯那取的。虽然连卖家的面都没见到,但是还是谢谢卖家送我这么可爱的东西,太喜欢了,这哪舍得吃啊。" "|吼|吼|吼|,|萌|死|人|的|棒|棒|糖|,|中|了|大|众|点|评|的|霸|王|餐|,|太|可|爱|了|。|一|直|就|好|奇|这|个|棒|棒|糖|是|怎|么|个|东|西|,|大|众|点|评|给|了|我|这|个|土|老|冒|一|个|见|识|的|机|会|。|看|介|绍|棒|棒|糖|是|用|德|国|糖|做|的|,|不|会|很|甜|,|中|间|的|照|片|是|糯|米|的|,|能|食|用|,|真|是|太|高|端|大|气|上|档|次|了|,|还|可|以|买|蝴|蝶|结|扎|口|,|送|人|可|以|买|礼|盒|。|我|是|先|打|的|卖|家|电|话|,|加|了|微|信|,|给|卖|家|传|的|照|片|。|等|了|几|天|,|卖|家|就|告|诉|我|可|以|取|货|了|,|去|大|官|屯|那|取|的|。|虽|然|连|卖|家|的|面|都|没|见|到|,|但|是|还|是|谢|谢|卖|家|送|我|这|么|可|爱|的|东|西|,|太|喜|欢|了|,|这|哪|舍|得|吃|啊|。|"|"|吼吼吼|,|萌死人|的|棒棒糖|,|中了|大众|点评|的|霸王|餐|,|太|可爱|了|。|一直|就|好奇|这个|棒棒糖|是|怎么|个|东西|,|大众|点评|给|了|我|这个|土老冒|一|个|见识|的|机会|。|看|介绍|棒棒糖|是|用|德国|糖|做|的|,|不|会|很|甜|,|中间|的|照片|是|糯米|的|,|能|食用|,|真是|太|高端|大气|上档次|了|,|还|可以|买|蝴蝶|结扎|口|,|送人|可以|买|礼盒|。|我|是|先|打的|卖家|电话|,|加了|微信|,|给|卖|家传|的|照片|。|等|了|几|天|,|卖家|就|告诉|我|可以|取货|了|,|去|大官屯|那|取的|。|虽然|连|卖家|的|面|都|没|见到|,|但是|还是|谢谢|卖家|送|我|这么|可爱|的|东西|,|太|喜欢|了|,|这|哪|舍得|吃|啊|。|" 370 ================================================ FILE: projects/ai2018/sentiment/prepare.testb/to-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-chars.py # \author chenghuige # \date 2018-10-28 08:37:28.846557 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import six assert six.PY3 import pandas as pd from projects.ai2018.sentiment.prepare import filter from tqdm import tqdm import traceback ifile = sys.argv[1] ofile = sys.argv[2] ids_set = set() fm = 'w' if os.path.exists(ofile): fm = 'a' for line in open(ofile): ids_set.add(line.split('\t')[0]) print('%s already done %d' % (ofile, len(ids_set))) num_errs = 0 with open(ofile, fm) as out: df = pd.read_csv(ifile, lineterminator='\n') contents = df['content'].values ids = df['id'].values for i in tqdm(range(len(df)), ascii=True): if str(ids[i]) in ids_set: continue #if i != 2333: # continue #print(gezi.cut(filter.filter(contents[i]), type_)) try: l = [] for ch in filter.filter(contents[i]): l.append(ch) print(' '.join(l), file=out) except Exception: if num_errs == 0: print(traceback.format_exc()) num_errs += 1 continue #exit(0) print('num_errs:', num_errs, 'ratio:', num_errs / len(df)) ================================================ FILE: projects/ai2018/sentiment/prepare.testb/to-norm.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import gezi key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1]) contents = df[key].values for i in range(len(contents)): scontent = gezi.normalize(contents[i]) if scontent != contents[i]: print('------------------', i) print(contents[i]) print(scontent) contents[i] = scontent df[key] = contents df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare.testb/to-simplify.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-simplify.py # \author chenghuige # \date 2018-10-19 12:58:07.505225 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tqdm import tqdm import pandas as pd import gezi import traceback import six assert six.PY2, 'must using py2 env to do simplify' key = 'content' if len(sys.argv) > 3: key = sys.argv[3] df = pd.read_csv(sys.argv[1], lineterminator='\n') contents = df[key].values num_modified = 0 num_errs = 0 for i in tqdm(range(len(contents)), ascii=True): try: scontent = gezi.to_simplify(contents[i]) except Exception: num_errs += 1 print(traceback.format_exc()) continue if scontent != contents[i]: # print('------------------', i) # print(contents[i]) # print(scontent) contents[i] = scontent num_modified += 1 df[key] = contents print('modify ratio', num_modified / len(df)) print('num_errs', num_errs) df.to_csv(sys.argv[2], index=False, encoding='utf_8_sig') ================================================ FILE: projects/ai2018/sentiment/prepare.v1/filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter.py # \author chenghuige # \date 2018-09-14 21:55:52.069104 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('to_simplify', False, '') import sys import os import gezi def filter(x): x = gezi.filter_quota(x).replace('\r', '\x01').replace('\n', '\x02').replace('', '\x01').replace('', '\x02').replace('\t', ' ') # simplify seems not help but might help diversity if FLAGS.to_simplify: x = gezi.to_simplify(x) # TODO if needed try to find case usefull or not I think especally for sentiment not reading, lower is ok not loose important info like NIKE x = x.lower() return x ================================================ FILE: projects/ai2018/sentiment/prepare.v1/find-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-chars.py # \author chenghuige # \date 2018-10-01 20:35:40.158875 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from projects.ai2018.sentiment.prepare import filter df = pd.read_csv('/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv') chars = set() for comment in df['content']: comment = filter.filter(comment) for w in comment: if w not in chars: print(w) chars.add(w) ================================================ FILE: projects/ai2018/sentiment/prepare.v1/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-canyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./raw_comment_v2.csv') print(len(df)) df2 = pd.DataFrame() ids = ['c{}'.format(i) for i in range(len(df))] contents = df['content'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) labels = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['score'] label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -2 labels.append(label) df2['others_overall_experience'] = labels df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./canyin.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-canyin.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-char-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-char-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-char-seg-train.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-char-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os infile = './mount/data/ai2018/sentiment/train.csv' import pandas as pd import filter df = pd.read_csv(infile) for row in df.iterrows(): content = filter.filter(row[1][1]) print(content) ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-dianping.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./ratings.csv') print(len(df)) df2 = pd.DataFrame() ids = ['d{}'.format(i) for i in range(len(df))] contents = df['comment'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) def score2class(score): label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -1 return label labels = [] labels_env = [] labels_flavor = [] labels_service = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['rating'] score_env = row['rating_env'] score_flavor = row['rating_flavor'] score_service = row['rating_service'] labels.append(score2class(score)) labels_env.append(score2class(score_env)) labels_flavor.append(score2class(score_flavor)) labels_service.append(score2class(score_service)) df2['others_overall_experience'] = labels df2['environment_decoration'] = labels_env df2['dish_taste'] = labels_flavor df2['service_waiters_attitude'] = labels_service df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./dianping.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-dianping.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-mix-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") #assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from wenzheng.utils import text2ids vocab = '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt' text2ids.init(vocab) from text2ids import text2ids as text2ids_ #import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): #text = filter.filter(text) words = text2ids.ids2words(text2ids_(text)) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/seg.mix.txt' with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) #try: seg(comment, out) #except Exception: # continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-mix-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") #assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from wenzheng.utils import text2ids vocab = '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt' text2ids.init(vocab) from text2ids import text2ids as text2ids_ #import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): #text = filter.filter(text) words = text2ids.ids2words(text2ids_(text)) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.mix.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/sentiment/valid.csv', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('limit', 3000, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', 7, '10 or 5?') #flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', False, '') import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd from gezi import Vocabulary import gezi import melt from text2ids import text2ids as text2ids_ from wenzheng.utils import text2ids import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None def get_mode(path): if 'train' in path: return 'train' elif 'valid' in path: if not FLAGS.use_fold: return 'valid' else: return 'train' elif 'test' in path: return 'test' elif '.pm' in path: return 'pm' elif 'trans' in path: return 'trans' elif 'deform' in path: return 'deform' elif 'canyin' in path: return 'canyin' elif 'dianping' in path: return 'dianping' return 'train' def build_features(index): mode = get_mode(FLAGS.input) start_index = 0 if not FLAGS.use_fold else 1 out_file = os.path.dirname(FLAGS.vocab) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ if mode in ['valid', 'test', 'dev', 'pm']: num_records = 1 start, end = gezi.get_fold(total, num_records, index) print('infile', FLAGS.input, 'out_file', out_file) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in range(start, end): try: row = df.iloc[i] id = row[0] content = row[1] #print(content, type(content)) if len(content) > max_len: max_len = len(content) print('max_len', max_len) if len(content) > 3000: print(id, content) if mode not in ['test', 'valid']: continue label = list(row[2:]) #label = [x + 2 for x in label] #num_labels = len(label) content_ids = text2ids_(content) if len(content_ids) < 5 and mode not in ['test', 'valid']: continue limit = FLAGS.limit if len(content_ids) > max_num_ids: max_num_ids = len(content_ids) print('max_num_ids', max_num_ids) content_ids = content_ids[:limit] feature = { 'id': melt.bytes_feature(str(id)), 'label': melt.int64_feature(label), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content), 'sorce': melt.bytes_feature(mode), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) if num % 1000 == 0: print(num) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: #print(traceback.format_exc(), file=sys.stderr) pass def main(_): text2ids.init(FLAGS.vocab_) print('to_lower:', FLAGS.to_lower, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) print(text2ids.ids2text(text2ids_('傻逼脑残B'))) print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) global df df = pd.read_csv(FLAGS.input, lineterminator='\n') mode = get_mode(FLAGS.input) pool = multiprocessing.Pool() if mode in ['valid', 'test', 'dev', 'pm']: FLAGS.num_records_ = 1 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() #build_features(FLAGS.input) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter from wenzheng.utils import text2ids vocab = '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt' text2ids.init(vocab) from text2ids import text2ids as text2ids_ START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-seg-train.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-trans.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-trans.py # \author chenghuige # \date 2018-10-03 22:43:06.305917 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm df = pd.read_csv('./train.csv') comments = {} for line in open('./train.en.txt'): try: id, comment = line.rstrip().split('\t') comments[id] = comment except Exception: pass print(len(comments)) num_modify = 0 num_bads = 0 for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] id = row['id'] id = str(id) if id in comments: if len(comments[id].replace(' ', '')) < len(row['content'].replace(' ', '')) * 1.5 and len(comments[id].replace(' ', '')) > len(row['content'].replace(' ', '')) * 0.7: df.loc[i,'content'] = comments[id] num_modify += 1 else: print('bad translate:', comments[id]) print('ori', row['content']) num_bads += 1 print(num_modify, num_bads) df.to_csv('./trans.en.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-trans.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/sentiment/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) import sys,os #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() #text = text.lower() words = segmentor.Segment(text, FLAGS.seg_method) if num % 10000 == 0: print(text, '|'.join(words), len(words), file=sys.stderr) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/sentiment/prepare.v1/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v1/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('dir', './mount/temp/ai2018/sentiment/tfrecord/', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 10, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v1/run-char.sh ================================================ python ./merge-emb.py sh ./gen-valid.sh --seg_method=char sh ./gen-test.sh --seg_method=char sh ./gen-train.sh --seg_method=char ================================================ FILE: projects/ai2018/sentiment/prepare.v1/run-noemb.sh ================================================ #python ./merge-emb.py sh ./gen-valid.sh sh ./gen-test.sh sh ./gen-train.sh ================================================ FILE: projects/ai2018/sentiment/prepare.v1/run.sh ================================================ python ./merge-emb.py sh ./gen-valid.sh sh ./gen-test.sh sh ./gen-train.sh ================================================ FILE: projects/ai2018/sentiment/prepare.v1/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text): wenzheng.utils.text2ids.init() text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=True, pad=False) ================================================ FILE: projects/ai2018/sentiment/prepare.v2/README.md ================================================ first sh ./gen-vocab.sh to get vocab.txt then using like vocab-mincount.. to get vocab.5k.txt then merge with all chars from vocab.txt using vocab-add-char.py to get vocab.5k.chars.txt this is used for word embedding train then for canyin and dianping just use ./gen-mix-seg-canyin.py ./gen-char-seg-canyin.py ... not use ./gen-seg-canyin.py for this project for we do not want to consider more words not used here do also for dianping and train/valid/test data we will use all these data as word embedding pretrain sh ./gen-vocab-v2.sh will use simple just basic seg NOTICE this is depreceated for v2 just use same vocab as v1, v2 only diff when gen tfrecord will not feed single and will has char embedding since v2 word + char concat prove to be better then seg basic + single so try to further try seperate word and char embedding as V3 the script ./run-noemb-v3.sh is the same as ./run-noemb-v2.sh be sure you have char_vocab.txt under tfrecord dir ================================================ FILE: projects/ai2018/sentiment/prepare.v2/__init__.py ================================================ import projects.ai2018.sentiment.prepare.filter ================================================ FILE: projects/ai2018/sentiment/prepare.v2/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-10-17 14:44:21.024368 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('use_char', False, '') flags.DEFINE_integer('char_limit', 6, '') flags.DEFINE_integer('word_limit', 3000, '') flags.DEFINE_bool('use_tag', False, '') ================================================ FILE: projects/ai2018/sentiment/prepare.v2/embeddings/fasttext/run.sh ================================================ #!/usr/bin/env bash # # Copyright (c) 2016-present, Facebook, Inc. # All rights reserved. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. An additional grant # of patent rights can be found in the PATENTS file in the same directory. # RESULTDIR=./ DATADIR=./ mkdir -p "${RESULTDIR}" mkdir -p "${DATADIR}" make ./fasttext skipgram -input "${DATADIR}"/text -output "${RESULTDIR}"/text -lr 0.025 -dim 300 \ -ws 5 -epoch 10 -minCount 20 -neg 5 -loss ns -bucket 2000000 \ -minn 2 -maxn 3 -thread 4 -t 1e-4 -lrUpdateRate 100 cut -f 1,2 "${DATADIR}"/rw/rw.txt | awk '{print tolower($0)}' | tr '\t' '\n' > "${DATADIR}"/queries.txt cat "${DATADIR}"/queries.txt | ./fasttext print-word-vectors "${RESULTDIR}"/text.bin > "${RESULTDIR}"/vectors.txt python eval.py -m "${RESULTDIR}"/vectors.txt -d "${DATADIR}"/rw/rw.txt ================================================ FILE: projects/ai2018/sentiment/prepare.v2/embeddings/glove/run.sh ================================================ #!/bin/bash set -e # Makes programs, downloads sample data, trains a GloVe model, and then evaluates it. # One optional argument can specify the language used for eval script: matlab, octave or [default] python make # 8 iter nan CORPUS=text VOCAB_FILE=vocab.txt COOCCURRENCE_FILE=cooccurrence.bin COOCCURRENCE_SHUF_FILE=cooccurrence.shuf.bin BUILDDIR=build SAVE_FILE=vectors VERBOSE=2 MEMORY=4.0 VOCAB_MIN_COUNT=20 VECTOR_SIZE=300 MAX_ITER=15 WINDOW_SIZE=15 BINARY=2 NUM_THREADS=8 X_MAX=10 echo "$ $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE" $BUILDDIR/vocab_count -min-count $VOCAB_MIN_COUNT -verbose $VERBOSE < $CORPUS > $VOCAB_FILE echo "$ $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE" $BUILDDIR/cooccur -memory $MEMORY -vocab-file $VOCAB_FILE -verbose $VERBOSE -window-size $WINDOW_SIZE < $CORPUS > $COOCCURRENCE_FILE echo "$ $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE" $BUILDDIR/shuffle -memory $MEMORY -verbose $VERBOSE < $COOCCURRENCE_FILE > $COOCCURRENCE_SHUF_FILE echo "$ $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE" $BUILDDIR/glove -save-file $SAVE_FILE -threads $NUM_THREADS -input-file $COOCCURRENCE_SHUF_FILE -x-max $X_MAX -iter $MAX_ITER -vector-size $VECTOR_SIZE -binary $BINARY -vocab-file $VOCAB_FILE -verbose $VERBOSE echo "$ python eval/python/evaluate.py" python eval/python/evaluate.py ================================================ FILE: projects/ai2018/sentiment/prepare.v2/filter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter.py # \author chenghuige # \date 2018-09-14 21:55:52.069104 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('simplify', False, '') import sys import os import gezi def filter_duplicate(text): return ''.join([x for i, x in enumerate(text) if not (i < len(text) - 1 and not(x.strip()) and not(text[i + 1].strip()))]) def filter(x): x = filter_duplicate(x) x = gezi.filter_quota(x).replace('\r', '\x01').replace('\n', '\x02').replace('', '\x01').replace('', '\x02').replace('\t', ' ').replace(' ', '\x03') # simplify seems not help but might help diversity if FLAGS.simplify: try: x = gezi.to_simplify(x) except Exception: pass # TODO if needed try to find case usefull or not I think especally for sentiment not reading, lower is ok not loose important info like NIKE x = x.lower() return x ================================================ FILE: projects/ai2018/sentiment/prepare.v2/find-chars.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-chars.py # \author chenghuige # \date 2018-10-01 20:35:40.158875 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from projects.ai2018.sentiment.prepare import filter df = pd.read_csv('/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv') chars = set() for comment in df['content']: comment = filter.filter(comment) for w in comment: if w not in chars: print(w) chars.add(w) ================================================ FILE: projects/ai2018/sentiment/prepare.v2/fix-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix-vocab.py # \author chenghuige # \date 2018-09-13 14:49:43.197787 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = set() for line in sys.stdin: word, count = line.rstrip('\n').split('\t') words.add(word) print(word, count, sep='\t') chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] chars2 = [x.upper() for x in chars] chars += chars2 chars = [x for x in chars if x not in words] for word in chars: print(word, 1, sep='\t') ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-canyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./raw_comment_v2.csv') print(len(df)) df2 = pd.DataFrame() ids = ['c{}'.format(i) for i in range(len(df))] contents = df['content'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) labels = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['score'] label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -2 labels.append(label) df2['others_overall_experience'] = labels df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./canyin.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-canyin.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-char-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-char-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-char-seg-train.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifiles = ['/home/gezi/data/ai2018/sentiment/train.csv', '/home/gezi/data/ai2018/sentiment/valid.csv', '/home/gezi/data/ai2018/sentiment/test.csv'] ofile = '/home/gezi/data/ai2018/sentiment/seg.char.txt' with open(ofile, 'w') as out: num = 0 for ifile in ifiles: df = pd.read_csv(ifile) for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-char-seg.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'char', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.char.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-char-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-char-vocab.py # \author chenghuige # \date 2018-09-11 20:25:15.703398 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os for line in sys.stdin: word, freq = line.rstrip('\n').split('\t') if (word.startswith('<') and word.endswith('>')) or len(word) == 1: print(line, end='') ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-content.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-content.py # \author chenghuige # \date 2018-09-11 10:37:16.658519 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os files = [ './mount/data/ai2018/sentiment/train.csv', './mount/data/ai2018/sentiment/valid.csv', './mount/data/ai2018/sentiment/test.csv' ] import pandas as pd import filter for infile in files: df = pd.read_csv(infile) for row in df.iterrows(): content = filter.filter(row[1][1]) print(content) ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-dianping.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file convert.py # \author chenghuige # \date 2018-10-04 09:32:00.555830 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm import numpy as np ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] NUM_CLASSES = 4 df = pd.read_csv('./ratings.csv') print(len(df)) df2 = pd.DataFrame() ids = ['d{}'.format(i) for i in range(len(df))] contents = df['comment'].values df2['id'] = ids df2['content'] = contents for attr in ATTRIBUTES: df2[attr] = [-3] * len(df) print(len(df2)) def score2class(score): label = -2 if score > 3: label = 1 elif score == 3: label = 0 else: label = -1 return label labels = [] labels_env = [] labels_flavor = [] labels_service = [] for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] score = row['rating'] score_env = row['rating_env'] score_flavor = row['rating_flavor'] score_service = row['rating_service'] labels.append(score2class(score)) labels_env.append(score2class(score_env)) labels_flavor.append(score2class(score_flavor)) labels_service.append(score2class(score_service)) df2['others_overall_experience'] = labels df2['environment_decoration'] = labels_env df2['dish_taste'] = labels_flavor df2['service_waiters_attitude'] = labels_service df2 = df2[['id', 'content'] + ATTRIBUTES] df2.to_csv('./dianping.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-dianping.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-mix-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer('max_lines', 0, '') flags.DEFINE_string('vocab_', '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt', '') #assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from wenzheng.utils import text2ids vocab = FLAGS.vocab_ text2ids.init(vocab) from text2ids import text2ids as text2ids_ #import filter START_WORD = '' END_WORD = '' FLAGS.seg_method = 'basic_digit' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): #text = filter.filter(text) words = text2ids.ids2words(text2ids_(text)) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/' + os.path.basename(FLAGS.vocab_).replace('.txt', '.mix.txt') with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) #try: seg(comment, out) #except Exception: # continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-mix-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_string('vocab_', '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt', '') #assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from wenzheng.utils import text2ids vocab = FLAGS.vocab_ text2ids.init(vocab) from text2ids import text2ids as text2ids_ #import filter START_WORD = '' END_WORD = '' FLAGS.seg_method = 'basic_digit' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): #text = filter.filter(text) words = text2ids.ids2words(text2ids_(text)) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/' + os.path.basename(FLAGS.vocab_).replace('.txt', '.mix.txt') with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-mix-seg-train.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_string('vocab_', '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt', '') #assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from wenzheng.utils import text2ids vocab = FLAGS.vocab_ text2ids.init(vocab) from text2ids import text2ids as text2ids_ #import filter START_WORD = '' END_WORD = '' FLAGS.seg_method = 'basic_digit' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): #text = filter.filter(text) words = text2ids.ids2words(text2ids_(text)) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ofile = '/home/gezi/data/ai2018/sentiment/' + os.path.basename(FLAGS.vocab_).replace('.txt', '.mix.txt') ifiles = ['/home/gezi/data/ai2018/sentiment/train.csv', '/home/gezi/data/ai2018/sentiment/valid.csv', '/home/gezi/data/ai2018/sentiment/test.csv'] with open(ofile, 'w') as out: num = 0 for ifile in ifiles: df = pd.read_csv(ifile) for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-08-29 15:20:35.282947 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/ai2018/sentiment/valid.csv', '') flags.DEFINE_string('vocab_', './mount/temp/ai2018/sentiment/tfrecord/vocab.txt', 'vocabulary txt file') #flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_bool('binary', False, '') flags.DEFINE_integer('threads', None, '') flags.DEFINE_integer('num_records_', 7, '10 or 5?') flags.DEFINE_integer('start_index', 0, 'set it to 1 if you have valid file which you want to put in train as fold 0') flags.DEFINE_bool('use_fold', True, '') flags.DEFINE_bool('augument', False, '') import six import traceback from sklearn.utils import shuffle import numpy as np import glob import json import pandas as pd import jieba.posseg from gezi import Vocabulary import gezi from gezi import melt from text2ids import text2ids as text2ids_ import wenzheng from wenzheng.utils import text2ids import config from projects.ai2018.sentiment.prepare import filter import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) total_words = Value('i', 0) df = None vocab = None char_vocab = None tag_vocab = None def get_mode(path): mode = 'train' if 'train' in path: mode ='train' elif 'valid' in path: mode = 'train' elif 'test' in path: mode = 'test' elif '.pm' in path: mode = 'pm' elif 'trans' in path: mode = 'trans' elif 'deform' in path: mode = 'deform' elif 'canyin' in path: mode = 'canyin' elif 'dianping' in path: mode = 'dianping' if FLAGS.augument: mode = 'aug.' + mode return mode def build_features(index): mode = get_mode(FLAGS.input) start_index = FLAGS.start_index out_file = os.path.dirname(FLAGS.vocab) + '/{0}/{1}.record'.format(mode, index + start_index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(df) num_records = FLAGS.num_records_ if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: num_records = 1 start, end = gezi.get_fold(total, num_records, index) print('total', total, 'infile', FLAGS.input, 'out_file', out_file) max_len = 0 max_num_ids = 0 num = 0 with melt.tfrecords.Writer(out_file) as writer: for i in range(start, end): try: row = df.iloc[i] id = str(row[0]) if start_index > 0: id == 't' + id content = row[1] content = filter.filter(content) label = list(row[2:]) #label = [x + 2 for x in label] #num_labels = len(label) content_ids, words = text2ids_(content, return_words=True) assert len(content_ids) == len(words) if len(content_ids) > max_len: max_len = len(content_ids) print('max_len', max_len) if len(content_ids) > FLAGS.word_limit: print(id, content) if mode not in ['test', 'valid']: continue if len(content_ids) < 5 and mode not in ['test', 'valid']: continue content_ids = content_ids[:FLAGS.word_limit] words = words[:FLAGS.word_limit] if FLAGS.use_char: chars = [list(word) for word in words] char_ids = np.zeros([len(content_ids), FLAGS.char_limit], dtype=np.int32) vocab_ = char_vocab if char_vocab else vocab for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = vocab_.id(ch) char_ids = list(char_ids.reshape(-1)) else: char_ids = [0] if tag_vocab: l = list(jieba.posseg.cut(content)) tags = [tag for word, tag in l] #assert len(tags) == len(content_ids) tags = tags[:FLAGS.word_limit] # print(len(words), len(tags), len(content)) # print(content) # print(list(zip(range(len(words)), words))) # print(list(zip(range(len(l)),[word for word, tag in l]))) for i in range(len(tags)): if words[i] == '\x01' or words[i] == '\x02' or words[i] == '\x03': tags[i] = 'sep' tag_ids = [tag_vocab.id(x) for x in tags] #print(content, list(zip(words, tag_ids, tags))) #exit(0) else: tag_ids = [0] feature = { 'id': melt.bytes_feature(id), 'label': melt.int64_feature(label), 'content': melt.int64_feature(content_ids), 'content_str': melt.bytes_feature(content), 'chars': melt.int64_feature(char_ids), 'source': melt.bytes_feature(mode), } # TODO currenlty not get exact info wether show 1 image or 3 ... record = tf.train.Example(features=tf.train.Features(feature=feature)) if num % 1000 == 0: print(num) writer.write(record) num += 1 global counter with counter.get_lock(): counter.value += 1 global total_words with total_words.get_lock(): total_words.value += len(content_ids) except Exception: print(traceback.format_exc(), file=sys.stderr) pass def main(_): assert FLAGS.use_fold text2ids.init(FLAGS.vocab_) global vocab, char_vocab, tag_vocab vocab = text2ids.vocab char_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'char_vocab.txt') if os.path.exists(char_vocab_file): char_vocab = Vocabulary(char_vocab_file) tag_vocab_file = FLAGS.vocab_.replace('vocab.txt', 'tag_vocab.txt') if os.path.exists(tag_vocab_file): tag_vocab = Vocabulary(tag_vocab_file) print('to_lower:', FLAGS.to_lower, 'feed_single_en:', FLAGS.feed_single_en, 'seg_method', FLAGS.seg_method) print(text2ids.ids2text(text2ids_('傻逼脑残B'))) print(text2ids.ids2text(text2ids_('喜欢玩孙尚香的加我好友:2948291976'))) global df df = pd.read_csv(FLAGS.input, lineterminator='\n') mode = get_mode(FLAGS.input) pool = multiprocessing.Pool() if mode.split('.')[-1] in ['valid', 'test', 'dev', 'pm'] or 'valid' in FLAGS.input: FLAGS.num_records_ = 1 print('num records file to gen', FLAGS.num_records_) #FLAGS.num_records_ = 1 pool.map(build_features, range(FLAGS.num_records_)) pool.close() pool.join() # for i in range(FLAGS.num_records_): # build_features(i) # for safe some machine might not use cpu count as default ... print('num_records:', counter.value) os.system('mkdir -p %s/%s' % (os.path.dirname(FLAGS.vocab_), mode)) out_file = os.path.dirname(FLAGS.vocab_) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) print('mean words:', total_words.value / counter.value) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-seg-canyin.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/raw_comment_v2.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/sentiment_classify_data/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['content']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-seg-dianping.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter from wenzheng.utils import text2ids vocab = '/home/gezi/temp/ai2018/sentiment/vocab.5k.chars.txt' text2ids.init(vocab) from text2ids import text2ids as text2ids_ START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-seg-train.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description seg using dianping corpus /home/gezi/data/ai2018/sentiment/dianping/ratings.csv # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('seg_method', 'basic', '') flags.DEFINE_integer("max_lines", 0, "") assert FLAGS.seg_method import sys,os import numpy as np import melt from gezi import Segmentor segmentor = Segmentor() import gezi import pandas as pd from projects.ai2018.sentiment.prepare import filter START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) def seg(text, out): text = filter.filter(text) words = segmentor.Segment(text, FLAGS.seg_method) words = [x.strip() for x in words if x.strip()] if words: print(' '.join(words), file=out) ifile = '/home/gezi/data/ai2018/sentiment/dianping/ratings.csv' df = pd.read_csv(ifile) ofile = '/home/gezi/data/ai2018/sentiment/dianping/seg.txt' with open(ofile, 'w') as out: num = 0 for comment in df['comment']: if num % 10000 == 0: print(num, file=sys.stderr) try: seg(comment, out) except Exception: continue num += 1 if num == FLAGS.max_lines: break ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-test.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-train.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-trans.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-trans.py # \author chenghuige # \date 2018-10-03 22:43:06.305917 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import pandas as pd from tqdm import tqdm df = pd.read_csv('./train.csv') comments = {} for line in open('./train.en.txt'): try: id, comment = line.rstrip().split('\t') comments[id] = comment except Exception: pass print(len(comments)) num_modify = 0 num_bads = 0 for i in tqdm(range(len(df)), ascii=True): row = df.iloc[i] id = row['id'] id = str(id) if id in comments: if len(comments[id].replace(' ', '')) < len(row['content'].replace(' ', '')) * 1.5 and len(comments[id].replace(' ', '')) > len(row['content'].replace(' ', '')) * 0.7: df.loc[i,'content'] = comments[id] num_modify += 1 else: print('bad translate:', comments[id]) print('ori', row['content']) num_bads += 1 print(num_modify, num_bads) df.to_csv('./trans.en.csv', index=False, encoding="utf_8_sig") def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-trans.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-valid.sh ================================================ python ./gen-records.py ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab-bseg-basic-v2.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python gen-content.py | python gen-vocab.py --seg_method='basic' --vocab_name='vocab.bseg.basic.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab-bseg-basic.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python gen-content.py | python gen-vocab.py --seg_method='basic_single_all' --vocab_name='vocab.bseg.basic' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab-bseg-phrase-v2.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python gen-content.py | python gen-vocab.py --seg_method='phrase' --vocab_name='vocab.bseg.phrase.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab-bseg-phrase.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python gen-content.py | python gen-vocab.py --seg_method='phrase_single_all' --vocab_name='vocab.bseg.phrase' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab-v2.sh ================================================ python gen-content.py | python gen-vocab.py --seg_method='basic' --vocab_name='vocab.v2' --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file to_flickr_caption.py # \author chenghuige # \date 2016-07-11 16:29:27.084402 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO could do segment parallel @TODO now single thread... slow """ import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 0, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", 0, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("add_unknown", True, "treat ignored words as unknow") flags.DEFINE_boolean("save_count_info", True, "save count info to bin") flags.DEFINE_string("out_dir", './mount/temp/ai2018/sentiment/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('seg_method', 'basic_single_all', '') assert FLAGS.most_common > 0 or FLAGS.min_count > 0 assert FLAGS.seg_method from gezi import WordCounter counter = WordCounter( most_common=FLAGS.most_common, min_count=FLAGS.min_count) import sys,os #reload(sys) #sys.setdefaultencoding('utf8') import numpy as np from gezi import Segmentor segmentor = Segmentor() print(segmentor, file=sys.stderr) import gezi START_WORD = '' END_WORD = '' print('seg_method:', FLAGS.seg_method, file=sys.stderr) print('min_count:', FLAGS.min_count, 'most_common:', FLAGS.most_common) num = 0 for line in sys.stdin: if num % 10000 == 0: print(num, file=sys.stderr) text = line.rstrip() #text = text.lower() words = segmentor.Segment(text, FLAGS.seg_method) if num % 10000 == 0: print(text, '|'.join(words), len(words), file=sys.stderr) counter.add(START_WORD) for word in words: counter.add(word) if word.isdigit(): counter.add('') counter.add(END_WORD) num += 1 if num == FLAGS.max_lines: break counter.add(START_WORD) print(FLAGS.out_dir, file=sys.stderr) vocab_name = FLAGS.vocab_name or 'vocab' counter.save(FLAGS.out_dir + '/%s.txt' % vocab_name) ================================================ FILE: projects/ai2018/sentiment/prepare.v2/gen-vocab.sh ================================================ python gen-content.py | python gen-vocab.py --min_count=1 ================================================ FILE: projects/ai2018/sentiment/prepare.v2/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input_vocab', './mount/temp/ai2018/sentiment/tfrecord/vocab.ori.txt', '') flags.DEFINE_string('dir', './mount/temp/ai2018/sentiment/tfrecord/', '') flags.DEFINE_string('emb', './mount/temp/ai2018/sentiment/vectors.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_integer('most_common', None, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): print('emb', FLAGS.emb) input_vocab = FLAGS.input_vocab lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-char.sh ================================================ python ./merge-emb.py python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=char python ./gen-records.py --simplify=1 --seg_method=char python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=char python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=char python ./gen-records.py --simplify=0 --augument=1 --seg_method=char python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=char python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=0 --start_index=1 --seg_method=char #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=char #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=char ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-noemb-bseg-basic-v2.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=basic_digit --feed_single=0 python ./gen-records.py --simplify=1 --seg_method=basic_digit --feed_single=0 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=basic_digit --feed_single=0 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=basic_digit #python ./gen-records.py --simplify=0 --augument=1 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=1 --start_index=1 --seg_method=basic_digit --feed_single=0 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=basic_digit ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-noemb-bseg-basic.sh ================================================ export BSEG=1 export LD_LIBRARY_PATH=./lib:./:$LD_LIBRARY_PATH python ./gen-records.py --simplify=1 --seg_method=basic_digit --feed_single=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=basic_digit --feed_single=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=basic_digit --feed_single=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=basic_digit #python ./gen-records.py --simplify=0 --augument=1 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=1 --start_index=1 --seg_method=basic_digit --feed_single=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=basic_digit ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-noemb-v2.sh ================================================ python ./gen-records.py --simplify=1 --seg_method=basic --feed_single=0 --use_char=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=basic --feed_single=0 --use_char=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=basic_digit #python ./gen-records.py --simplify=0 --augument=1 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=1 --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=basic_digit ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-noemb-v3.sh ================================================ python ./gen-records.py --simplify=1 --seg_method=basic --feed_single=0 --use_char=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=basic --feed_single=0 --use_char=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=basic_digit #python ./gen-records.py --simplify=0 --augument=1 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=1 --start_index=1 --seg_method=basic --feed_single=0 --use_char=1 #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=basic_digit ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run-noemb.sh ================================================ python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=1 --start_index=1 --seg_method=basic_digit python ./gen-records.py --simplify=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/train.csv --simplify=0 --augument=1 --start_index=1 --seg_method=basic_digit python ./gen-records.py --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/test.csv --simplify=0 --augument=1 --seg_method=basic_digit python ./gen-records.py --input ./mount/data/ai2018/sentiment/trans.en.csv --simplify=0 --start_index=1 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/sentiment_classify_data/comment_raw_v2/canyin.csv --simplify=0 --start_index=0 --seg_method=basic_digit #python ./gen-records.py --input ./mount/data/ai2018/sentiment/dianping/dianping.csv --simplify=0 --start_index=0 --seg_method=basic_digit ================================================ FILE: projects/ai2018/sentiment/prepare.v2/run.sh ================================================ python ./merge-emb.py sh ./run-noemb.sh ================================================ FILE: projects/ai2018/sentiment/prepare.v2/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2018-09-18 12:18:31.627281 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('feed_single_en', True, '') flags.DEFINE_bool('feed_single', True, '') flags.DEFINE_bool('to_lower', True, '') import sys import os from projects.ai2018.sentiment.prepare import filter from wenzheng.utils.text2ids import text2ids as to_ids import wenzheng # TODO check 2018.10.01 add multi grid def text2ids(text, return_words=False): wenzheng.utils.text2ids.init() text = filter.filter(text) return to_ids(text, seg_method=FLAGS.seg_method, feed_single=FLAGS.feed_single, feed_single_en=FLAGS.feed_single_en, to_lower=FLAGS.to_lower, norm_digit=False, multi_grid=True, pad=False, return_words=return_words) ================================================ FILE: projects/ai2018/sentiment/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file inference.py # \author chenghuige # \date 2018-02-05 20:05:25.123740 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/temp/ai2018/sentiment/tfrecord/valid/*record,', '') flags.DEFINE_integer('batch_size_', 512, '') flags.DEFINE_string('type', 'debug', '') flags.DEFINE_string('base', './mount/temp/ai2018/sentiment/tfrecord/', '') #flags.DEFINE_integer('unk_id', 1, '') #flags.DEFINE_integer('fold', None, '') flags.DEFINE_bool('dump_valid', True, '') flags.DEFINE_bool('dump_test', True, '') import tensorflow as tf tf.enable_eager_execution() import sys, os from sklearn import metrics import pandas as pd import numpy as np import gezi import pickle from wenzheng.utils import ids2text import melt logging = melt.logging from dataset import Dataset from tqdm import tqdm # TODO by default save all ? so do not need to change the code ? # _asdict() https://stackoverflow.com/questions/26180528/python-named-tuple-to-dictionary # err... valid and test data share same id... def deal(dataset, infos): for x, _ in tqdm(dataset, ascii=True): for key in x: x[key] = x[key].numpy() if type(x[key][0]) == bytes: x[key] = gezi.decode(x[key]) ids = x['id'] for j in range(len(ids)): infos[ids[j]] = {} for key in x: infos[ids[j]][key] = x[key][j] def main(_): base = FLAGS.base logging.set_logging_path('./mount/tmp/') vocab_path = f'{base}/vocab.txt' ids2text.init(vocab_path) FLAGS.vocab = f'{base}/vocab.txt' # FLAGS.length_index = 2 # FLAGS.buckets = '100,400' # FLAGS.batch_sizes = '64,64,32' input_ = FLAGS.input if FLAGS.type == 'test': input_ = input_.replace('valid', 'test') inputs = gezi.list_files(input_) inputs.sort() if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] if FLAGS.type == 'debug': print('type', FLAGS.type, 'inputs', inputs, file=sys.stderr) dataset = Dataset('valid') dataset = dataset.make_batch(FLAGS.batch_size_, inputs) print('dataset', dataset) timer = gezi.Timer('read record') for i, (x, y) in enumerate(dataset): # if i % 10 == 1: # print(x['id']) # print(x['content'][0]) # print(ids2text.ids2text(x['content'][0], sep='|')) # print(x['content']) # print(type(x['id'].numpy()[0]) == bytes) # break x['id'] = gezi.decode(x['id'].numpy()) x['content_str'] = gezi.decode(x['content_str'].numpy()) for j, id in enumerate(x['id']): if id == '573': print(id, x['content_str'][j]) elif FLAGS.type == 'dump': valid_infos = {} test_infos = {} # TODO notice train and valid also share ids.. so valid only save 0 is ok... # 120000 doc but first 15000 train duplicate id with valid so only save valid result for those ids currently if FLAGS.dump_valid: inputs = gezi.list_files(f'{base}/train/*record') dataset = Dataset('valid') dataset = dataset.make_batch(1, inputs) deal(dataset, valid_infos) print('after valid', len(valid_infos)) for key in valid_infos: print(valid_infos[key]) print(ids2text.ids2text(valid_infos[key]['content'])) break ofile = f'{base}/info.pkl' with open(ofile, 'wb') as out: pickle.dump(valid_infos, out) del valid_infos if FLAGS.dump_test: inputs = gezi.list_files(f'{base}/test/*record') dataset = Dataset('test') dataset = dataset.make_batch(1, inputs) deal(dataset, test_infos) print('after test', len(test_infos)) ofile = ofile.replace('.pkl', '.test.pkl') with open(ofile, 'wb') as out: pickle.dump(test_infos, out) for key in test_infos: print(test_infos[key]) print(ids2text.ids2text(test_infos[key]['content'])) break elif FLAGS.type == 'show_info': valid_infos = pickle.load(open(f'{base}/info.pkl', 'rb')) lens = [len(valid_infos[key]['content']) for key in valid_infos] unks = [list(valid_infos[key]['content']).count(FLAGS.unk_id) for key in valid_infos] print('num unks per doc:', sum(unks) / len(valid_infos)) print('num doc with unk ratio:', len([x for x in unks if x != 0]) / len(unks)) print('un unk tokens ratio:', sum(unks) / sum(lens)) print('len max:', np.max(lens)) print('len min:', np.min(lens)) print('len mean:', np.mean(lens)) print('num docs:', len(valid_infos)) num_show = 0 for key in valid_infos: if list(valid_infos[key]['content']).count(FLAGS.unk_id) > 0: print(valid_infos[key]) print(ids2text.ids2text(valid_infos[key]['content'])) num_show += 1 if num_show > 5: break del valid_infos print('--------------for test info:') test_infos = pickle.load(open(f'{base}/info.test.pkl', 'rb')) lens = [len(test_infos[key]['content']) for key in test_infos] unks = [list(test_infos[key]['content']).count(FLAGS.unk_id) for key in test_infos] print('num unks per doc:', sum(unks) / len(test_infos)) print('num doc with unk ratio:', len([x for x in unks if x != 0]) / len(test_infos)) print('un unk tokens ratio:', sum(unks) / sum(lens)) print('len max:', np.max(lens)) print('len min:', np.min(lens)) print('len mean:', np.mean(lens)) print('num docs:', len(test_infos)) num_show = 0 for key in test_infos: if list(test_infos[key]['content']).count(FLAGS.unk_id) > 0: print(test_infos[key]) print(ids2text.ids2text(test_infos[key]['content'])) num_show += 1 if num_show > 5: break else: raise ValueError(FLAGS.type) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/scripts/cp.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file infer.py # \author chenghuige # \date 2018-11-12 23:25:26.255789 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi ensembel_dir = '/home/gezi/temp/ai2018/sentiment/p40/model.csv/v11/submit/' model_dir = '/home/gezi/data3/v11/submit/' #ensembel_dir = model_dir valid_files = glob.glob('%s/*.valid.csv' % ensembel_dir) infer_files = glob.glob('%s/*.infer.csv' % ensembel_dir) valid_files = [x for x in valid_files if not 'ensemble' in x] infer_files = [x for x in infer_files if not 'ensemble' in x] #assert len(valid_files) == len(infer_files) for i, file_ in enumerate(valid_files): dest_file = file_.replace('.valid.csv', '.infer.csv') dest_file = os.path.join(model_dir, os.path.basename(dest_file)) command = f'cp {dest_file} {ensembel_dir}' print(i, '-----', command) os.system(command) ================================================ FILE: projects/ai2018/sentiment/scripts/example.sh ================================================ #SRC=word.mix.ft c0 sh ./train/v2/torch.mreader.1hop.sh SRC=word.mix.glove c0 sh ./train/v2/rnet.sh #SRC=word.tx.ftchar c1 sh ./train/v2/torch.mreader.1hop.wchar.pos.sh SRC=word.stanford.glove c1 sh ./train/v2/torch.mreader.1hop.wchar.pos.sh #SRC=word.glove c2 sh ./train/v2/torch.mreader.1hop.wchar.pos.sh SRC=word.ft c2 sh ./train/v2/torch.mreader.1hop.wchar.pos.sh #SRC=word.stanford.tx.ftchar c3 sh ./train/v2/torch.mreader.1hop.wchar.pos.ner.sh SRC=char.glove c3 sh ./train/v2/torch.mreader.1hop.sh ================================================ FILE: projects/ai2018/sentiment/scripts/gen-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file infer.py # \author chenghuige # \date 2018-11-12 23:25:26.255789 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi ensembel_dir = '/home/gezi/temp/ai2018/sentiment/p40/model.csv/v11/submit.testa/' #model_dir = '/home/gezi/data3/v11/submit/' #model_dir = '/home/gezi/data3/v11/lstm-or-sp20w/submit/' #model_dir = '/home/gezi/data3/v11/lstm-or-sp20w/2/submit/' #model_dir = '/home/gezi/data3/v11/nbert/' #model_dir = '/home/gezi/data3/v11/lstm-or-sp20w/3/submit/' #model_dir = '/home/gezi/data3/v11/nbert2/' #model_dir = '/home/gezi/data3/v11/bert3/' model_dir = '/home/gezi/data3/v11/submit.1115.2.2.2/slim/' ensembel_dir = model_dir valid_files = glob.glob('%s/*.valid.csv' % ensembel_dir) infer_files = glob.glob('%s/*.infer.csv' % ensembel_dir) valid_files = [x for x in valid_files if not 'ensemble' in x] infer_files = [x for x in infer_files if not 'ensemble' in x] #assert len(valid_files) == len(infer_files) for i, file_ in enumerate(valid_files): file_ = os.path.basename(file_) file_ = gezi.strip_suffix(file_, '.valid.csv') src, model = file_.split('_', 1) cell = 'gru' if 'lstm' in model: cell = 'lstm' model = model.replace('.gru', '').replace('.lstm', '') pattern = '_model.ckpt-' if pattern in model: script = model.split(pattern)[0] else: pattern = '_ckpt-' script = model.split(pattern)[0] #command = f'MODE=test INFER=1 SRC={src} CELL={cell} sh ./infer/v11/{script}.sh {model_dir}{file_}' command = f'MODE=test INFER=1 SRC={src} CELL={cell} sh ./train/v11/{script}.sh {model_dir}{file_}' print(command) ================================================ FILE: projects/ai2018/sentiment/scripts/infer-example.sh ================================================ # infer for tf models just use graph mode for safe MODE=test INFER=1 sh ./infer/v11/tf.word.rnetv2.lm.sh /home/gezi/temp/ai2018/sentiment/model/v11/0/word.jieba.ft/tf.word.rnetv2.gru.lm/epoch/model.ckpt-5.00-16410 # infer for pytorch models MODE=test INFER=1 sh ./train/v10/torch.word.mreader.nopad.lm.unkaug.sh /home/gezi/temp/ai2018/sentiment/model/v10/0/word.jieba.ft/torch.word.mreader.nopad.lm.gru.unkaug/ckpt/ckpt-6 ================================================ FILE: projects/ai2018/sentiment/scripts/infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file infer.py # \author chenghuige # \date 2018-11-12 23:25:26.255789 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import glob import gezi ensembel_dir = '/home/gezi/temp/ai2018/sentiment/p40/model.csv/v11/submit.testa/' model_dir = '/home/gezi/data3/v11/submit/' #ensembel_dir = model_dir valid_files = glob.glob('%s/*.valid.csv' % ensembel_dir) infer_files = glob.glob('%s/*.infer.csv' % ensembel_dir) valid_files = [x for x in valid_files if not 'ensemble' in x] infer_files = [x for x in infer_files if not 'ensemble' in x] #gpu = sys.argv[1] #assert len(valid_files) == len(infer_files) print('num valid fiels', len(valid_files)) num_infers = 0 for i, file_ in enumerate(valid_files): dest_file = file_.replace('.valid.csv', '.infer.csv') dest_file = os.path.join(model_dir, os.path.basename(dest_file)) print(dest_file) #dest_file = file_ #if os.path.exists(dest_file) and gezi.get_unmodify_minutes(dest_file) < 60 * 24: #if os.path.exists(dest_file) and gezi.get_unmodify_minutes(dest_file) < 0.0000001: # print(i, dest_file, 'newly generated', gezi.get_unmodify_minutes(dest_file) / 60, 'hours') #if os.path.exists(dest_file) and len(pd.read_csv(dest_file)) == 2e5: need_infer = True if os.path.exists(dest_file): df = pd.read_csv(dest_file) if len(df) == 200000: df = df.sort_values('id') df.to_csv(dest_file, index=False, encoding="utf_8_sig") print(i, dest_file, 'already exists with 200000 lines, you need to delete first if want to update') need_infer = False if need_infer: num_infers += 1 file_ = os.path.basename(file_) file_ = gezi.strip_suffix(file_, '.valid.csv') src, model = file_.split('_', 1) cell = 'gru' if 'lstm' in model: cell = 'lstm' model = model.replace('.gru', '').replace('.lstm', '') pattern = '_model.ckpt-' if pattern in model: script = model.split(pattern)[0] else: pattern = '_ckpt-' script = model.split(pattern)[0] command = f'MODE=test INFER=1 SRC={src} CELL={cell} sh ./infer/v11/{script}.sh {model_dir}{file_}' #command = f'MODE=valid INFER=2 SRC={src} CELL={cell} c{gpu} sh ./infer/v11/{script}.sh {model_dir}{file_}' print(i, '-------', command) os.system(command) command = f'cp {dest_file} {ensembel_dir}' print(i, '-----', command) os.system(command) command = f'cp {dest_file}.debug {ensembel_dir}' print(i, '-----', command) os.system(command) print('num_infers', num_infers) ================================================ FILE: projects/ai2018/sentiment/scripts/infer.sh_0 ================================================ MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/tf.word.rnet.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_tf.word.rnet.gru_model.ckpt-8.00-26256 MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/tf.word.rnetv2.nolatt.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_tf.word.rnetv2.nolatt.gru.unkaug_model.ckpt-10.00-32820 MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/tf.word.rnet.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_tf.word.rnet.gru.unkaug_model.ckpt-16.00-52512 ================================================ FILE: projects/ai2018/sentiment/scripts/infer.sh_1 ================================================ MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/tf.word.rnet.nolatt.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_tf.word.rnet.gru.nolatt_model.ckpt-12.00-39384 MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/tf.word.rnetv2.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_tf.word.rnetv2.gru.unkaug_model.ckpt-15.00-49230 MODE=test INFER=1 SRC=word.sp20w.ft CELL=gru sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.es.sh /home/gezi/data3/v11/lstm-or-sp20w/2/submit/word.sp20w.ft_torch.word.mreader.nopad.lm.gru.bertopt.nolatt.unkaug.hidden400.es_ckpt-10 ================================================ FILE: projects/ai2018/sentiment/scripts/infer.sh_2 ================================================ MODE=test INFER=1 SRC=mix.jieba.ft CELL=lstm sh ./train/v11/torch.mix.mreader.lm.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/mix.jieba.ft_torch.mix.mreader.lm.lstm_ckpt-11 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden300.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.nolatt.unkaug.hidden300_ckpt-9 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug.hidden300_ckpt-7 MODE=test INFER=1 SRC=word.sp10w.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp10w.ft_torch.word.mreader.nopad.lm.lstm.nolatt.unkaug_ckpt-7 MODE=test INFER=1 SRC=word.sp20w.glove CELL=lstm sh ./train/v11/tf.word.rnetv2.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp20w.glove_tf.word.rnetv2.lstm.unkaug_model.ckpt-8.00-26256 MODE=test INFER=1 SRC=word.sp10w.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.hidden300.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp10w.ft_torch.word.mreader.nopad.lm.lstm.bertopt.unkaug.hidden300_ckpt-5 MODE=test INFER=1 SRC=word.sp1w.ft CELL=lstm sh ./train/v11/tf.word.rnet.nolatt.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp1w.ft_tf.word.rnet.lstm.nolatt_model.ckpt-10.00-32820 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.unkaug_ckpt-13 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug.hidden400_ckpt-6 MODE=test INFER=1 SRC=word.sp10w.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp10w.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug.hidden300_ckpt-6 ================================================ FILE: projects/ai2018/sentiment/scripts/infer.sh_3 ================================================ MODE=test INFER=1 SRC=word.sp10w.ft CELL=lstm sh ./train/v11/tf.word.rnet.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp10w.ft_tf.word.rnet.lstm_model.ckpt-5.00-16410 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden400.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.nolatt.unkaug.hidden400_ckpt-7 MODE=test INFER=1 SRC=word.sp10w.ft CELL=lstm sh ./train/v11/tf.word.rnet.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp10w.ft_tf.word.rnet.lstm.unkaug_model.ckpt-5.00-16410 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/tf.word.rnet.nolatt.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_tf.word.rnet.lstm.nolatt_model.ckpt-5.00-16410 MODE=test INFER=1 SRC=word.sp20w.ft CELL=lstm sh ./train/v11/tf.word.rnet.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp20w.ft_tf.word.rnet.lstm.unkaug_model.ckpt-7.00-22974 MODE=test INFER=1 SRC=word.jieba.ft CELL=lstm sh ./train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.jieba.ft_torch.word.mreader.nopad.lm.lstm.bertopt.nolatt.unkaug_ckpt-12 MODE=test INFER=1 SRC=word.sp1w.ft CELL=lstm sh ./train/v11/tf.word.rnet.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp1w.ft_tf.word.rnet.lstm_model.ckpt-6.00-19692 MODE=test INFER=1 SRC=word.sp20w.glove CELL=lstm sh ./train/v11/tf.word.rnetv2.nolatt.unkaug.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp20w.glove_tf.word.rnetv2.nolatt.lstm.unkaug_model.ckpt-5.00-16410 MODE=test INFER=1 SRC=word.sp20w.ft CELL=lstm sh ./train/v11/tf.word.rnet.sh /home/gezi/data3/v11/lstm-or-sp20w/submit/word.sp20w.ft_tf.word.rnet.lstm_model.ckpt-5.00-16410 ================================================ FILE: projects/ai2018/sentiment/scripts/prepare-char.sh ================================================ cd ./prepare/ sh run-char.sh cd .. python ./read-records.py --type=dump ================================================ FILE: projects/ai2018/sentiment/scripts/prepare-noemb.sh ================================================ cd ./prepare/ sh run-noemb.sh cd .. python ./read-records.py --type=dump ================================================ FILE: projects/ai2018/sentiment/scripts/prepare.sh ================================================ cd ./prepare/ sh run.sh cd .. python ./read-records.py --type=dump ================================================ FILE: projects/ai2018/sentiment/tools/check-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file check.py # \author chenghuige # \date 2018-10-20 23:58:33.339526 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import gezi import numpy as np m = {} for line in open('./vectors.fix.txt'): l = line.strip().split() if len(l) < 100: continue key = l[0] vec = np.array([float(x) for x in l[1:]]) m[key] = vec def sim(x, y): print(x, y, gezi.cosine(m[x], m[y])) sim('女人', '女孩') sim('女人', '今天') sim('征途', '征程') sim('征途', '电脑') sim('笔记本', '电脑') def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/tools/cp-best-epochs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '../' if not len(sys.argv) > 1 else sys.argv[1] thre = 0.714 if not len(sys.argv) > 2 else float(sys.argv[2]) key = 'adjusted_f1/mean' if not len(sys.argv) > 3 else sys.argv[3] #key = 'loss/mean' if not len(sys.argv) > 3 else sys.argv[3] print('model_dir', model_dir, 'thre', thre, 'key', key) if 'loss' not in key: cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics for dir_ in glob.glob(f'{model_dir}/*/*'): if not os.path.isdir(dir_): continue print(dir_) best_score = 0 if 'loss' not in key else 1e10 best_epoch = None best_iepoch = None in_epoch_dir = True files = glob.glob(f'{dir_}/epoch/*.valid.metrics') if not files: in_epoch_dir = False files = glob.glob(f'{dir_}/ckpt/*.valid.metrics') for file_ in files: epoch = gezi.strip_suffix(file_, 'valid.metrics').split('-')[1] iepoch = int(float(epoch)) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue if cmp(score, best_score): best_score = score best_epoch = epoch best_iepoch = iepoch print('best_epoch:', best_epoch, 'best_score:', best_score) if best_epoch and best_score > thre: if in_epoch_dir: command = f'ensemble-cp.py {dir_}/epoch/model.ckpt-{best_epoch}' else: command = f'ensemble-cp.py {dir_}/ckpt/ckpt-{best_epoch}' print(command) os.system(command) ================================================ FILE: projects/ai2018/sentiment/tools/cp-best-epochs2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '../' if not len(sys.argv) > 1 else sys.argv[1] thre = 0.71 if not len(sys.argv) > 2 else float(sys.argv[2]) key = 'adjusted_f1/mean' if not len(sys.argv) > 3 else sys.argv[3] #key = 'loss/mean' if not len(sys.argv) > 3 else sys.argv[3] print('model_dir', model_dir, 'thre', thre, 'key', key) if 'loss' not in key: print('greater is better') cmp = lambda x, y: x > y else: print('less is better') cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics for dir_ in glob.glob(f'{model_dir}/*/*'): if not os.path.isdir(dir_): continue print(dir_) best_score = 0 if 'loss' not in key else 1e10 best_epoch = None best_iepoch = None in_epoch_dir = True files = glob.glob(f'{dir_}/epoch/*.valid.metrics') if not files: in_epoch_dir = False files = glob.glob(f'{dir_}/ckpt/*.valid.metrics') for file_ in files: epoch = gezi.strip_suffix(file_, 'valid.metrics').split('-')[1] iepoch = int(float(epoch)) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue if cmp(score, best_score): best_score = score best_epoch = epoch best_iepoch = iepoch print('best_epoch:', best_epoch, 'best_score:', best_score) if best_epoch and cmp(best_score, thre): if in_epoch_dir: command = f'ensemble-cp.py {dir_}/epoch/model.ckpt-{best_epoch}' else: command = f'ensemble-cp.py {dir_}/ckpt/ckpt-{best_epoch}' print(command) #os.system(command) #print(dir_) dir2_ = dir_.replace('temp', 'mount2/temp').replace('model.csv', 'model') dir3_ = dir_.replace('model.csv', 'model.ckpt') os.system(f'mkdir -p {dir3_}/epoch') os.system(f'mkdir -p {dir3_}/ckpt') if in_epoch_dir: command = f'rsync {dir2_}/epoch/model.ckpt-{best_epoch}* {dir3_}/epoch' else: command = f'rsync {dir2_}/ckpt/ckpt-{best_epoch}* {dir3_}/ckpt' print(command) os.system(command) ================================================ FILE: projects/ai2018/sentiment/tools/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-09-15 19:12:03.819848 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np from sklearn.metrics import f1_score df = pd.read_csv(sys.argv[1]) ATTRIBUTES = ['location_traffic_convenience', 'location_distance_from_business_district', 'location_easy_to_find', 'service_wait_time', 'service_waiters_attitude', 'service_parking_convenience', 'service_serving_speed', 'price_level', 'price_cost_effective', 'price_discount', 'environment_decoration', 'environment_noise', 'environment_space', 'environment_cleaness', 'dish_portion', 'dish_taste', 'dish_look', 'dish_recommendation', 'others_overall_experience', 'others_willing_to_consume_again'] idx = 2 length = 20 labels = df.iloc[:,idx:idx+length].values predicts = df.iloc[:,idx+length:idx+2*length].values f1_list = [] for i in range(length): f1 = f1_score(labels[:,i], predicts[:, i], average='macro') f1_list.append(f1) f1 = np.mean(f1_list) for i, attr in enumerate(ATTRIBUTES): print(attr, f1_list[i]) print('f1:', f1) ================================================ FILE: projects/ai2018/sentiment/tools/find-best-epoch.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob model_dir = sys.argv[1] key = 'adjusted_f1' if len(sys.argv) > 2: key = sys.argv[2] print('key', key) def parse(x, key='adjusted_f1'): idx = x.index('epoch:') idx2 = x.index(' ', idx) epoch = int(float(line[idx:idx2].split('/')[0].split(':')[1])) idx = x.index(f'{key}/mean:') idx2 = x.index("'", idx) score = float(x[idx:idx2].split(':')[-1]) return epoch, score best_score = 0 if key != 'loss' else 1e10 best_epoch = None if key != 'loss': cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y def deal(line): global best_score, best_epoch epoch, score = parse(line, key) if cmp(score, best_score): best_score = score best_epoch = epoch for file_ in glob.glob(f'{model_dir}/log.txt*'): for line in open(file_): if 'epoch_valid' in line: deal(line.strip()) print('best_epoch:', best_epoch, 'best_score:', best_score) ================================================ FILE: projects/ai2018/sentiment/tools/fix-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file fix.py # \author chenghuige # \date 2018-10-20 23:43:54.852568 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os words = [] for line in open('./vocab.txt'): try: words.append(line.rstrip('\n').split()[0]) except Exception: print(line, file=sys.stderr) for i, line in enumerate(open('./vectors.txt')): _, vec = line.rstrip().split(' ', 1) if i < len(words): print(words[i], vec, sep=' ') else: print(line) ================================================ FILE: projects/ai2018/sentiment/tools/lcp-loop.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file lcp.py # \author chenghuige # \date 2018-05-23 13:06:34.938478 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import time input = sys.argv[1] base = os.path.basename(input) os.system('mkdir -p %s' % base) while True: for item in glob.glob(input + '/*'): if os.path.isdir(item): print(item) folder = os.path.basename(item) command = 'mkdir -p %s/%s' %(base, folder) print(command) os.system(command) for item2 in glob.glob('%s/*' % item): if os.path.isdir(item2): folder2 = os.path.basename(item2) command = 'mkdir -p %s/%s/%s' % (base, folder, folder2) print(command) os.system(command) command = 'mkdir -p %s/%s/%s/epoch' %(base, folder, folder2) os.system(command) command = 'mkdir -p %s/%s/%s/ckpt' %(base, folder, folder2) os.system(command) command = 'mkdir -p %s/%s/%s/ckpt2' %(base, folder, folder2) os.system(command) os.system('rsync --progress -avz %s/epoch/*valid* %s/%s/%s/epoch' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/epoch/*infer* %s/%s/%s/epoch' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/ckpt/*valid* %s/%s/%s/ckpt' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/ckpt/*infer* %s/%s/%s/ckpt' % (item2, base, folder, folder2)) time.sleep(10) ================================================ FILE: projects/ai2018/sentiment/tools/lcp.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file lcp.py # \author chenghuige # \date 2018-05-23 13:06:34.938478 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob input = sys.argv[1] base = os.path.basename(input) os.system('mkdir -p %s' % base) for item in glob.glob(input + '/*'): if os.path.isdir(item): print(item) folder = os.path.basename(item) command = 'mkdir -p %s/%s' %(base, folder) print(command) os.system(command) for item2 in glob.glob('%s/*' % item): if os.path.isdir(item2): folder2 = os.path.basename(item2) command = 'mkdir -p %s/%s/%s' % (base, folder, folder2) print(command) os.system(command) command = 'mkdir -p %s/%s/%s/epoch' %(base, folder, folder2) os.system(command) command = 'mkdir -p %s/%s/%s/ckpt' %(base, folder, folder2) os.system(command) command = 'mkdir -p %s/%s/%s/ckpt2' %(base, folder, folder2) os.system(command) os.system('rsync --progress -avz %s/epoch/*valid* %s/%s/%s/epoch' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/epoch/*infer* %s/%s/%s/epoch' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/ckpt/*valid* %s/%s/%s/ckpt' % (item2, base, folder, folder2)) os.system('rsync --progress -avz %s/ckpt/*infer* %s/%s/%s/ckpt' % (item2, base, folder, folder2)) ================================================ FILE: projects/ai2018/sentiment/tools/rename-finetune.sh ================================================ python ./rename-variables-finetune.py --checkpoint_dir=./ rm *.pb ================================================ FILE: projects/ai2018/sentiment/tools/rename-variables-finetune.py ================================================ #!/usr/bin/env python # ============================================================================== # \file rename_variables.py # \author chenghuige # \date 2017-08-28 17:20:39.256411 # \Description # ============================================================================== #https://gist.github.com/batzner/7c24802dd9c5e15870b4b56e22135c96 import sys, getopt import tensorflow as tf usage_str = 'python tensorflow_rename_variables.py --checkpoint_dir=path/to/dir/ ' \ '--replace_from=substr --replace_to=substr --add_prefix=abc --dry_run' def rename(checkpoint_dir, dry_run): checkpoint = tf.train.get_checkpoint_state(checkpoint_dir) with tf.Session() as sess: for var_name, _ in tf.contrib.framework.list_variables(checkpoint_dir): # Load the variable var = tf.contrib.framework.load_variable(checkpoint_dir, var_name) # Set the new name new_name = var_name if 'adam' in new_name or new_name.startswith('OptimizeLoss') or new_name.startswith('global_step') or new_name.startswith('learning_rate'): new_name = 'ignore/' + new_name if None not in [replace_from, replace_to]: new_name = new_name.replace(replace_from, replace_to) if add_prefix: new_name = add_prefix + new_name if dry_run: print('%s would be renamed to %s.' % (var_name, new_name)) else: print('Renaming %s to %s.' % (var_name, new_name)) # Rename the variable var = tf.Variable(var, name=new_name) if not dry_run: # Save the variables saver = tf.train.Saver() sess.run(tf.global_variables_initializer()) saver.save(sess, checkpoint.model_checkpoint_path) def main(argv): checkpoint_dir = None replace_from = None replace_to = None add_prefix = None dry_run = False try: opts, args = getopt.getopt(argv, 'h', ['help=', 'checkpoint_dir=', 'replace_from=', 'replace_to=', 'add_prefix=', 'dry_run']) except getopt.GetoptError: print(usage_str) sys.exit(2) for opt, arg in opts: if opt in ('-h', '--help'): print(usage_str) sys.exit() elif opt == '--checkpoint_dir': checkpoint_dir = arg elif opt == '--replace_from': replace_from = arg elif opt == '--replace_to': replace_to = arg elif opt == '--add_prefix': add_prefix = arg elif opt == '--dry_run': dry_run = True if not checkpoint_dir: print('Please specify a checkpoint_dir. Usage:') print(usage_str) sys.exit(2) rename(checkpoint_dir, dry_run) if __name__ == '__main__': main(sys.argv[1:]) ================================================ FILE: projects/ai2018/sentiment/tools/seg2corpus.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file seg2corpus.py # \author chenghuige # \date 2018-10-20 08:10:01.731952 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os for line in sys.stdin: l = line.rstrip('\n').split('\t', 1)[1].split('\x09') if not l: continue if '|' in l[0]: l = [x.split('|')[0] for x in l] print(' '.join(l)) def main(_): pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/tools/show-best-epochs.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '..' if len(sys.argv) > 1: model_dir = sys.argv[1] key = 'adjusted_f1/mean' if len(sys.argv) > 2: key = sys.argv[2] print('key', key) if not 'loss' in key: cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics res = [] for dir_ in glob.glob(f'{model_dir}/*/*'): if not os.path.isdir(dir_): continue best_score = 0 if not 'loss' in key else 1e10 best_epoch = None files = glob.glob(f'{dir_}/epoch/*.valid.metrics') if not files: files = glob.glob(f'{dir_}/ckpt/*.valid.metrics') find = False for file_ in files: epoch = int(float(gezi.strip_suffix(file_, 'valid.metrics').split('-')[1])) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue if cmp(score, best_score): find = True best_score = score best_epoch = epoch if find: #print(dir_) #print('best_epoch:', best_epoch, 'best_score:', best_score) res.append((dir_.replace('../', ''), best_epoch, best_score)) res.sort(key=lambda x: x[-1], reverse=not 'loss' in key) for dir_, best_epoch, best_score in res: print('%.5f' % best_score, best_epoch, dir_) ================================================ FILE: projects/ai2018/sentiment/tools/show-metrics.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file find-best-epoch.py # \author chenghuige # \date 2018-10-07 10:32:35.416608 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import glob import gezi model_dir = '.' if len(sys.argv) > 1: model_dir = sys.argv[1] key = 'adjusted_f1/mean' if len(sys.argv) > 2: key = sys.argv[2] print('key', key) if not 'loss' in key: cmp = lambda x, y: x > y else: cmp = lambda x, y: x < y # model.ckpt-3.00-9846.valid.metrics # ckpt-4.valid.metrics res = [] for file_ in glob.glob(f'{model_dir}/*.valid.metrics'): epoch = int(float(gezi.strip_suffix(file_, 'valid.metrics').split('-')[1])) for line in open(file_): name, score = line.strip().split() score = float(score) if name != key: continue res.append((gezi.strip_suffix(file_.replace('./', ''), '.valid.metrics'), epoch, score)) res.sort(key=lambda x: x[-1], reverse=not 'loss' in key) for file_, epoch, score in res: print('%.5f' % score, epoch, file_) ================================================ FILE: projects/ai2018/sentiment/tools/slim.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file remove-content.py # \author chenghuige # \date 2018-11-13 20:52:59.621179 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd df = pd.read_csv(sys.argv[1]) df = df.sort_values('id') contents = ['abc'] * len(df) df['content'] = contents df.to_csv(sys.argv[1].replace('.csv', '.slim.csv'), index=False, encoding="utf_8_sig") ================================================ FILE: projects/ai2018/sentiment/torch-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #tf.enable_eager_execution() import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags import torch_algos.model as base from dataset import Dataset import lele from prepare.filter import filter from wenzheng.utils import ids2text import numpy as np import jieba from algos.config import ATTRIBUTES import evaluate as ev vocab = None char_vocab = None model = None def convert(content): content = filter(content) words = [word for word in jieba.cut(content)] #words = gezi.add_start_end(words, '', '') wids = [vocab.id(word) for word in words] chars = [list(word) for word in words] char_ids = np.zeros([len(wids), FLAGS.char_limit], dtype=np.int32) for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = char_vocab.id(ch) char_ids = char_ids.reshape(-1) input = {'content': np.array([wids], dtype=np.long), 'char': np.array([char_ids], dtype=np.long)} return lele.to_torch(input), words def predict(content): x, words = convert(content) logits = model(x)[0] logits = logits.detach().cpu().numpy() probs = gezi.softmax(logits, 1) #print(probs) print(list(zip(ATTRIBUTES, [list(x) for x in probs]))) predicts = np.argmax(logits, -1) - 2 print('predicts ', predicts) print(list(zip(ATTRIBUTES, predicts))) # adjusted_predicts = ev.to_predict(logits) # print('apredicts', adjusted_predicts) # print(list(zip(ATTRIBUTES, adjusted_predicts))) alpha = model.pooling.poolings[0].alpha alpha = alpha.detach().cpu().numpy() for i, attr in enumerate(ATTRIBUTES): scores = alpha[0, i] print(attr, predicts[i]) for word, score in zip(words, scores): print(word, score * len(words)) def encode(content, aspect=-2): x, _ = convert(content) _ = model(x) feature = model.pooling.encode[0] feature = feature.detach().cpu().numpy() feature = feature[aspect] return feature def sim(content1, content2, aspect=-2): f1 = encode(content1, aspect) f2 = encode(content2, aspect) score = gezi.cosine(f1, f2) print(content1, content2, ATTRIBUTES[aspect], score) def main(_): FLAGS.torch = True FLAGS.emb_dim = 300 FLAGS.cell = 'lstm' FLAGS.num_layers = 2 FLAGS.rnn_hidden_size = 400 FLAGS.concat_layers = False FLAGS.use_char = True FLAGS.share_fc = False FLAGS.share_pooling = False FLAGS.recurrent_dropout = False FLAGS.rnn_no_padding = False FLAGS.rnn_padding = True FLAGS.att_combiner = 'sfu' FLAGS.hop = 1 FLAGS.use_label_att = False FLAGS.use_self_match = True FLAGS.encoder_type = 'rnn' FLAGS.encoder_output_method = 'att' FLAGS.model_dir = '/home/gezi/temp/ai2018/sentiment/model/v14/0/word.jieba.ft/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.pad/' melt.apps.init() FLAGS.model = 'MReader' model_path = '%s/latest.pyt' % FLAGS.model_dir global vocab, char_vocab, model vocab_path = '%s/vocab.txt' % FLAGS.model_dir char_vocab_path = vocab_path.replace('vocab.txt', 'char_vocab.txt') FLAGS.vocab = vocab_path vocab = gezi.Vocabulary(vocab_path) char_vocab = gezi.Vocabulary(char_vocab_path) model = getattr(base, FLAGS.model)() model = model.cuda() print('model\n', model) lele.load(model, model_path) contents = ['这是一个很好的餐馆,菜很不好吃,我还想再去', '这是一个很差的餐馆,菜很不好吃,我不想再去', '这是一个很好的餐馆,菜很好吃,我还想再去', '这是一个很好的餐馆,只是菜很难吃,我还想再去', '这是一个很好的餐馆,只是菜很不好吃,我还想再去', '好吃的!黑胡椒牛肉粒真的是挺咸的', '不论是环境的宽敞度还是菜的味道上', '烤鸭皮酥脆入口即化,总体还可以', '烤鸭皮酥脆入口即化', '软炸鲜菇据说是他家的优秀美味担当', '环境挺好的,服务很到位', '肉松的味道都不错,量一般', '也不算便宜,不过吃着好吃', '高大上的餐厅,一级棒的环境', '比较硬,比较喜欢芝士和咖喱口味的', '有嚼劲,很入味宫廷豌豆黄造型可爱', '蔬菜中规中矩,解腻不错', '女友生日菜有点贵架势不错味道就这样', '相比其他兰州拉面粗旷的装饰风格,这家设计很小清新,座位宽敞,客人不多', '这家店的菜做的不错,但是服务特别差', '印象中这家店适合拍照', '适合和闺蜜一起去', '''被朋友安利的地方。刺身都很大块,厚厚的一片塞进嘴巴里,爽爆了!甜虾超级大的个头,不过要自己剥皮,自己动手丰衣足食。北极贝,三文鱼,金枪鱼各个都片大肉厚,吃的超满足。鹅肝,牛舌,鳕鱼都很嫩,不过口味稍微有丢丢咸。点的所有的食物除了芥末章鱼芥末味道太重没吃完,别的全都吃的干干 净净!中午因为大部分是吃定食的,所以给自助的我们安排了包间,打电话过去预订的时候还有特别提醒说有团购,服务不错,而且基本没有漏单。总之是很不错的日式放题,下次还会去。''', '孕妇还有呼吸系统不太好的老人请慎重', '但还是不建议孕妇与小孩来', '感谢对孕妇的满满善意', '对我这个孕妇来说环境很清爽很好', '让孕妇情何以堪', '还有1个孕妇等了从12点多等到2点', '作为孕妇吃的小心翼翼', '适合老人孩子孕妇冬天吃一下', '当来到颐和园,皇家所独有的庄重大气便被融入内核', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '也就少了点高端的氛围', '店非常的简约小清新', '环境清新', '难得再回学校的时候发现这么小清新的小店', '感觉多放些奶油更加完美', '晚上还有表演'] for content in contents: print(content) predict(content) sim('牛肉赞', '牛肉好吃') sim('牛肉赞', '牛肉不好吃') sim('牛肉赞', '牛肉一般') sim('牛肉赞', '羊肉一般') sim('牛肉赞', '牛肉赞', aspect=ATTRIBUTES.index('dish_taste')) sim('牛肉赞', '羊肉赞', aspect=ATTRIBUTES.index('dish_taste')) sim('牛肉赞', '牛肉好吃', aspect=ATTRIBUTES.index('dish_taste')) sim('牛肉赞', '羊肉好吃', aspect=ATTRIBUTES.index('dish_taste')) sim('羊肉赞', '羊肉好吃') sim('羊肉赞', '羊肉好吃', aspect=ATTRIBUTES.index('dish_taste')) #sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了') sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', aspect=ATTRIBUTES.index('environment_decoration')) #sim('店非常的简约小清新', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了') sim('店非常的简约小清新', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', aspect=ATTRIBUTES.index('environment_decoration')) #sim('店非常的简约小清新', '难得再回学校的时候发现这么小清新的小店') sim('店非常的简约小清新', '难得再回学校的时候发现这么小清新的小店', aspect=ATTRIBUTES.index('environment_decoration')) #sim('店非常的简约小清新', '环境高大上', aspect=ATTRIBUTES.index('environment_decoration')) #sim('店非常的简约小清新', '环境文艺清新', aspect=ATTRIBUTES.index('environment_decoration')) sim('店非常的简约小清新', '环境小清新', aspect=ATTRIBUTES.index('environment_decoration')) sim('店非常的简约小清新', '文艺清新', aspect=ATTRIBUTES.index('environment_decoration')) sim('环境小清新', '文艺清新', aspect=ATTRIBUTES.index('environment_decoration')) sim('环境小清新', '高大上', aspect=ATTRIBUTES.index('environment_decoration')) #sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '环境高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '文艺清新', aspect=ATTRIBUTES.index('environment_decoration')) #sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '环境高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '文艺清新', aspect=ATTRIBUTES.index('environment_decoration')) sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '高大上', aspect=ATTRIBUTES.index('others_overall_experience')) sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '文艺清新', aspect=ATTRIBUTES.index('others_overall_experience')) #sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '环境高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '高大上', aspect=ATTRIBUTES.index('others_overall_experience')) sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '文艺清新', aspect=ATTRIBUTES.index('others_overall_experience')) sim('牛肉好吃', '高大上', aspect=ATTRIBUTES.index('environment_decoration')) sim('适合闺蜜聚会', '适合朋友聚会') sim('适合闺蜜聚会', '适合孕妇的餐厅') sim('适合闺蜜聚会', '适合拍照的餐厅') sim('适合闺蜜聚会', '和闺蜜一起来的') sim('适合闺蜜聚会', '适合朋友聚会', aspect=ATTRIBUTES.index('environment_decoration')) sim('适合闺蜜聚会', '适合孕妇的餐厅', aspect=ATTRIBUTES.index('environment_decoration')) sim('适合闺蜜聚会', '适合拍照的餐厅', aspect=ATTRIBUTES.index('environment_decoration')) sim('适合闺蜜聚会', '和闺蜜一起来的', aspect=ATTRIBUTES.index('environment_decoration')) # # print words importance scores # word_scores_list = model.pooling.word_scores # for word_scores in word_scores_list: # print(list(zip(words, word_scores[0].numpy()))) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/torch-lm-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback import lele import algos.config from wenzheng.utils import input_flags import torch_algos.model as base from lm_dataset import Dataset def main(_): FLAGS.torch = True melt.apps.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] model = getattr(base, FLAGS.model)(embedding) assert model.lm_model logging.info(model) train = melt.apps.get_train() bilm_criterion = lele.losses.BiLMCriterion() train(Dataset, model, bilm_criterion.forward) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/torch-sim.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #tf.enable_eager_execution() import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags import torch_algos.model as base from dataset import Dataset import lele from prepare.filter import filter from wenzheng.utils import ids2text import numpy as np import jieba from algos.config import ATTRIBUTES import evaluate as ev vocab = None char_vocab = None model = None def convert(content): content = filter(content) words = [word for word in jieba.cut(content)] words = gezi.add_start_end(words, '', '') wids = [vocab.id(word) for word in words] chars = [list(word) for word in words] char_ids = np.zeros([len(wids), FLAGS.char_limit], dtype=np.int32) for i, token in enumerate(chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = char_vocab.id(ch) char_ids = char_ids.reshape(-1) input = {'content': np.array([wids], dtype=np.long), 'char': np.array([char_ids], dtype=np.long)} return lele.to_torch(input), words def predict(content): x, words = convert(content) logits = model(x)[0] logits = logits.detach().cpu().numpy() probs = gezi.softmax(logits, 1) #print(probs) print(list(zip(ATTRIBUTES, [list(x) for x in probs]))) predicts = np.argmax(logits, -1) - 2 print('predicts ', predicts) print(list(zip(ATTRIBUTES, predicts))) # adjusted_predicts = ev.to_predict(logits) # print('apredicts', adjusted_predicts) # print(list(zip(ATTRIBUTES, adjusted_predicts))) alpha = model.pooling.poolings[0].alpha alpha = alpha.detach().cpu().numpy() for i, attr in enumerate(ATTRIBUTES): scores = alpha[0, i] print(attr, predicts[i]) for word, score in zip(words, scores): print(word, score * len(words)) def encode(content): x, _ = convert(content) _ = model(x) feature = model.feature[0] feature = feature.detach().cpu().numpy() return feature def sim(content1, content2): f1 = encode(content1) f2 = encode(content2) score = gezi.cosine(f1, f2) print(content1, content2, score) def main(_): FLAGS.torch = True FLAGS.emb_dim = 300 FLAGS.cell = 'lstm' FLAGS.num_layers = 1 FLAGS.rnn_hidden_size = 400 FLAGS.concat_layers = False FLAGS.use_char = True FLAGS.share_fc = True FLAGS.share_pooling = True FLAGS.recurrent_dropout = False FLAGS.rnn_no_padding = False FLAGS.rnn_padding = True FLAGS.att_combiner = 'sfu' FLAGS.hop = 1 FLAGS.use_label_att = False FLAGS.use_self_match = False FLAGS.encoder_type = 'rnn' FLAGS.encoder_output_method = 'max' FLAGS.model_dir = '/home/gezi/temp/ai2018/sentiment/model/lm/word.jieba.ft.long/torch.word.lm.nopad.lstm.hidden400/' melt.apps.init() FLAGS.model = 'MReader' model_path = '%s/latest.pyt' % FLAGS.model_dir global vocab, char_vocab, model vocab_path = '%s/vocab.txt' % FLAGS.model_dir char_vocab_path = vocab_path.replace('vocab.txt', 'char_vocab.txt') FLAGS.vocab = vocab_path vocab = gezi.Vocabulary(vocab_path) char_vocab = gezi.Vocabulary(char_vocab_path) model = getattr(base, FLAGS.model)() model = model.cuda() print('model\n', model) lele.load(model, model_path) contents = ['这是一个很好的餐馆,菜很不好吃,我还想再去', '这是一个很差的餐馆,菜很不好吃,我不想再去', '这是一个很好的餐馆,菜很好吃,我还想再去', '这是一个很好的餐馆,只是菜很难吃,我还想再去', '这是一个很好的餐馆,只是菜很不好吃,我还想再去', '好吃的!黑胡椒牛肉粒真的是挺咸的', '不论是环境的宽敞度还是菜的味道上', '烤鸭皮酥脆入口即化,总体还可以', '烤鸭皮酥脆入口即化', '软炸鲜菇据说是他家的优秀美味担当', '环境挺好的,服务很到位', '肉松的味道都不错,量一般', '也不算便宜,不过吃着好吃', '高大上的餐厅,一级棒的环境', '比较硬,比较喜欢芝士和咖喱口味的', '有嚼劲,很入味宫廷豌豆黄造型可爱', '蔬菜中规中矩,解腻不错', '女友生日菜有点贵架势不错味道就这样', '相比其他兰州拉面粗旷的装饰风格,这家设计很小清新,座位宽敞,客人不多'] sim('牛肉赞', '牛肉好吃') sim('牛肉赞', '牛肉不好吃') sim('牛肉赞', '牛肉一般') sim('牛肉赞', '他们家的牛肉很好吃') sim('牛肉赞', '羊肉一般') sim('牛肉赞', '羊肉好吃') sim('羊肉赞', '羊肉好吃') sim('适合闺蜜聚会', '适合朋友聚会') sim('适合闺蜜聚会', '适合孕妇的餐厅') sim('适合闺蜜聚会', '适合拍照的餐厅') sim('适合闺蜜聚会', '和闺蜜一起来的') sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了') sim('店非常的简约小清新', '在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了') sim('店非常的简约小清新', '环境小清新') sim('店非常的简约小清新', '文艺清新') sim('环境小清新', '文艺清新') sim('环境小清新', '高大上') sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '高大上') sim('当来到颐和园,皇家所独有的庄重大气便被融入内核', '文艺清新') sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '高大上') sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '文艺清新') sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '适合拍照') sim('在我印象应该不仅是豪华酒店了,而是奢华酒店级别的了', '复古') sim('古色古香的院子', '复古') # # print words importance scores # word_scores_list = model.pooling.word_scores # for word_scores in word_scores_list: # print(list(zip(words, word_scores[0].numpy()))) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/torch-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback import lele from wenzheng.utils import input_flags from torch_algos.loss import Criterion import torch_algos.model as base from dataset import Dataset import evaluate as ev def get_num_finetune_words(): if not FLAGS.dynamic_finetune: return FLAGS.num_finetune_words else: return min(int(melt.epoch() * 1000), FLAGS.num_finetune_words) def freeze_embedding(self, grad_input, grad_output): num_finetune_words = get_num_finetune_words() grad_output[0][num_finetune_words:, :] = 0 def freeze_char_embedding(self, grad_input, grad_output): grad_output[0][FLAGS.num_finetune_chars:, :] = 0 def main(_): FLAGS.num_folds = 8 FLAGS.torch = True melt.apps.init() ev.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] model = getattr(base, FLAGS.model)(embedding) if FLAGS.num_finetune_words: model.encode.embedding.register_backward_hook(freeze_embedding) if FLAGS.num_finetune_chars and FLAGS.use_char and FLAGS.use_char_emb: model.encode.char_embedding.register_backward_hook(freeze_char_embedding) logging.info('model\n', model) param_groups = None if FLAGS.lm_path: #both BiLanguageModel or RNet or MReader.. use self.ecode so ok update encode.embedding.weight... encode.char_embedding.weight.. _, updated_params = lele.load(model, FLAGS.lm_path) assert updated_params, lm_path if FLAGS.lm_lr_factor != 1: ignored_params = list(map(id, updated_params)) base_params = filter(lambda p: id(p) not in ignored_params, model.parameters()) param_groups = [ {'params': base_params}, {'params': updated_params, 'lr': FLAGS.learning_rate * FLAGS.lm_lr_factor} ] train = melt.apps.get_train() #criterion = Criterion(ev.class_weights) criterion = Criterion() train(Dataset, model, criterion.forward, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_suffix='.valid.csv', infer_suffix='.infer.csv', param_groups=param_groups) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/torch_algos/__init__.py ================================================ ================================================ FILE: projects/ai2018/sentiment/torch_algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-09-17 20:34:23.281520 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import numpy as np from algos.weights import * from algos.config import NUM_CLASSES, NUM_ATTRIBUTES import lele import torch from torch import nn from torch.nn import functional as F class Criterion(object): def __init__(self, class_weights=None): self.class_weights = class_weights self.loss_fn = torch.nn.CrossEntropyLoss() self.loss_fn2 = torch.nn.CrossEntropyLoss(reduction='none') self.bloss_fn = nn.BCEWithLogitsLoss() # if FLAGS.use_class_weights: # self.weighted_loss_fn = [None] * NUM_ATTRIBUTES # class_weights = np.reshape(class_weights, [NUM_ATTRIBUTES, NUM_CLASSES]) # class_weights = np.log(np.log(class_weights + 1.) + 1.) # logging.info('class_weights', class_weights) # for i in range(NUM_ATTRIBUTES): # self.weighted_loss_fn[i] = torch.nn.CrossEntropyLoss(weight=torch.Tensor(class_weights[i]).cuda()) def calc_soft_label_loss(self, y_, y, num_classes): y = y.view(-1, num_classes) y_ = y_.view(-1, num_classes) log_probs = F.log_softmax(y_, dim=-1) loss = -torch.sum(log_probs * y, -1) loss = loss.mean() return loss def forward(self, model, x, y, training=False): y_ = model(x) if FLAGS.use_soft_label: return self.calc_soft_label_loss(y_, y, NUM_CLASSES) #print(y.shape, y_.shape) # without view Expected target size (32, 4), got torch.Size([32, 20]) if training and FLAGS.num_learning_rate_weights == NUM_ATTRIBUTES: loss = self.loss_fn2(y_.view(-1, NUM_CLASSES), y.view(-1)).view(-1, NUM_ATTRIBUTES) # stop some gradients due to learning_rate weights loss = lele.adjust_lrs(loss) loss = loss.mean() # elif FLAGS.use_class_weights: # losses = [] # for i in range(NUM_ATTRIBUTES): # loss = self.weighted_loss_fn[i](y_[:,i,:], y[:,i]) # losses.append(loss) # loss = torch.mean(torch.stack(losses)) else: loss = self.loss_fn(y_.view(-1, NUM_CLASSES), y.view(-1)) # depreciated add neu binary not help final ensemble if FLAGS.loss_type == 'add_neu_binary': cid = 2 y_ = y_[:,:,cid] y = (y == 2).float() bloss = self.bloss_fn(y_, y) loss = loss + bloss * FLAGS.other_loss_factor return loss ================================================ FILE: projects/ai2018/sentiment/torch_algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-09-30 10:25:11.024133 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F from algos.config import NUM_CLASSES, NUM_ATTRIBUTES import wenzheng from wenzheng.utils import vocabulary import melt logging = melt.logging import numpy as np import lele layers = lele.layers import gezi import os class ModelBase(nn.Module): def __init__(self, embedding=None, lm_model=False): super(ModelBase, self).__init__() self.num_units = FLAGS.rnn_hidden_size self.dropout_rate = 1 - FLAGS.keep_prob config = { 'word': { 'vocab': FLAGS.vocab, 'num_layers': FLAGS.num_layers, 'hidden_size': FLAGS.rnn_hidden_size, 'emb_dim': FLAGS.emb_dim, 'embedding_file': FLAGS.word_embedding_file, 'trainable': FLAGS.finetune_word_embedding, 'num_finetune': FLAGS.num_finetune_words, }, 'char': { 'limit': FLAGS.char_limit, 'use_char_emb': FLAGS.use_char_emb, 'emb_dim': FLAGS.char_emb_dim, 'trainable': FLAGS.finetune_char_embedding, 'hidden_size': FLAGS.rnn_hidden_size, 'output_method': FLAGS.char_output_method, 'combiner': FLAGS.char_combiner, 'padding': FLAGS.char_padding, 'num_finetune': FLAGS.num_finetune_chars, }, 'pos': { 'emb_dim': FLAGS.tag_emb_dim }, 'ner': { 'emb_dim': FLAGS.tag_emb_dim }, 'encoder': FLAGS.encoder_type, 'dropout_rate': 1 - FLAGS.keep_prob, 'recurrent_dropout': FLAGS.recurrent_dropout, 'cell': FLAGS.cell, 'rnn_padding': FLAGS.rnn_padding, 'rnn_no_padding': FLAGS.rnn_no_padding, 'concat_layers': FLAGS.concat_layers, } self.encode = wenzheng.pyt.TextEncoder(config, embedding, use_char=FLAGS.use_char, use_char_emb=FLAGS.use_char_emb, use_pos=FLAGS.use_pos, use_ner=FLAGS.use_ner, lm_model=lm_model) self.lm_model = self.encode.lm_model if not self.lm_model: doc_hidden_size = self.encode.output_size if FLAGS.share_pooling: self.pooling = lele.layers.Pooling( FLAGS.encoder_output_method, input_size=doc_hidden_size, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) else: self.pooling = lele.layers.Poolings( FLAGS.encoder_output_method, input_size=doc_hidden_size, num_poolings=NUM_ATTRIBUTES, top_k=FLAGS.top_k, att_activation=getattr(F, FLAGS.att_activation)) # input dim not as convinient as tf.. pre_logits_dim = self.pooling.output_size # not work well can ignore if FLAGS.use_len: len_embedding_dim = 32 self.len_embedding = nn.Embedding(3000, len_embedding_dim, padding_idx=0) pre_logits_dim += len_embedding_dim self.num_classes = NUM_CLASSES if FLAGS.binary_class_index is None else 2 if FLAGS.share_pooling: # if share pooling then must share fc self.logits = nn.Linear(pre_logits_dim, NUM_ATTRIBUTES * self.num_classes) else: if FLAGS.share_fc: # share fc self.logits = nn.Linear(pre_logits_dim, self.num_classes) else: # exclusive fc self.logits = lele.layers.Linears(pre_logits_dim, self.num_classes, NUM_ATTRIBUTES) def unk_aug(self, x, x_mask=None): """ randomly make 10% words as unk TODO this works, but should this be rmoved and put it to Dataset so can share for both pyt and tf """ if not self.training or not FLAGS.unk_aug or melt.epoch() < FLAGS.unk_aug_start_epoch: return x if x_mask is None: x_mask = x > 0 x_mask = x_mask.long() ratio = np.random.uniform(0, FLAGS.unk_aug_max_ratio) mask = torch.cuda.FloatTensor(x.size(0), x.size(1)).uniform_() > ratio mask = mask.long() rmask = FLAGS.unk_id * (1 - mask) x = (x * mask + rmask) * x_mask return x class BiLanguageModel(ModelBase): def __init__(self, embedding=None): super(BiLanguageModel, self).__init__(embedding, lm_model=True) # Model is like RNet! if you use label att and self match # if not just simple gru model class RNet(ModelBase): def __init__(self, embedding=None): super(RNet, self).__init__(embedding) Rnn = lele.layers.StackedBRNN doc_hidden_size = self.encode.output_size if FLAGS.use_label_att: self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = nn.Embedding(self.label_emb_height, FLAGS.emb_dim) self.att_dot_attentions = nn.ModuleList() self.att_encodes = nn.ModuleList() for i in range(FLAGS.label_hop): self.att_dot_attentions.append(lele.layers.DotAttention(input_size=doc_hidden_size, input_size2=FLAGS.emb_dim, hidden=self.num_units, dropout_rate=self.dropout_rate, combiner=FLAGS.att_combiner)) self.att_encodes.append(Rnn( input_size=self.att_dot_attentions[-1].output_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, )) if FLAGS.use_self_match: self.match_dot_attention = lele.layers.DotAttention(input_size=doc_hidden_size, input_size2=doc_hidden_size, hidden=self.num_units, dropout_rate=self.dropout_rate, combiner=FLAGS.att_combiner) self.match_encode = Rnn( input_size=self.match_dot_attention.output_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) def forward(self, input, training=False): x = input['content'] #print(x.shape) x_mask = x.eq(0) batch_size = x.size(0) x = self.unk_aug(x, x_mask) if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) x = self.encode(input, x_mask, training=training) if FLAGS.use_label_att: label_emb = self.label_embedding.weight label_seq = lele.tile(label_emb.unsqueeze(0), 0, batch_size) # TODO label rnn for i in range(FLAGS.label_hop): x = self.att_dot_attentions[i](x, label_seq, torch.zeros(batch_size, self.label_emb_height).byte().cuda()) x = self.att_encodes[i](x, x_mask) if FLAGS.use_self_match: x = self.match_dot_attention(x, x, x_mask) x = self.match_encode(x, x_mask) x = self.pooling(x, x_mask) self.feature = x x = self.logits(x) x = x.view([-1, NUM_ATTRIBUTES, self.num_classes]) return x # MReader with hop==1 can be viewed as rnet also # NOTICE mainly use this one # TODO word and char encoder can merge to one Encoder handle inputs with word and char class MReader(ModelBase): def __init__(self, embedding=None): super(MReader, self).__init__(embedding) Rnn = lele.layers.StackedBRNN doc_hidden_size = self.encode.output_size if FLAGS.use_label_att: self.label_emb_height = NUM_CLASSES if not FLAGS.label_emb_height else FLAGS.label_emb_height self.label_embedding = nn.Embedding(self.label_emb_height, FLAGS.emb_dim) # here linear better or another rnn is better ? if not FLAGS.use_label_rnn: self.label_forward = nn.Linear(FLAGS.emb_dim, doc_hidden_size) else: self.label_forward = Rnn( input_size=emb_dim, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) # Interactive aligning, self aligning and aggregating self.interactive_aligners = nn.ModuleList() self.interactive_SFUs = nn.ModuleList() self.self_aligners = nn.ModuleList() self.self_SFUs = nn.ModuleList() self.aggregate_rnns = nn.ModuleList() for i in range(FLAGS.hop): # interactive aligner if FLAGS.use_label_att: self.interactive_aligners.append(layers.SeqAttnMatch(doc_hidden_size, identity=True)) self.interactive_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # self aligner if FLAGS.use_self_match: self.self_aligners.append(layers.SelfAttnMatch(doc_hidden_size, identity=True, diag=False)) self.self_SFUs.append(layers.SFU(doc_hidden_size, 3 * doc_hidden_size)) # aggregating self.aggregate_rnns.append( Rnn( input_size=doc_hidden_size, hidden_size=self.num_units, num_layers=1, dropout_rate=self.dropout_rate, dropout_output=False, concat_layers=False, rnn_type=FLAGS.cell, padding=FLAGS.rnn_padding, ) ) def forward(self, input, training=False): #print('------------', input['source']) #print(input['id']) x = input['content'] #print(x) #print(x.shape) x_mask = x.eq(0) batch_size = x.size(0) max_c_len = x.size(1) x = self.unk_aug(x, x_mask) if FLAGS.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) x = self.encode(input, x_mask, training=training) if FLAGS.use_label_att: label_emb = self.label_embedding.weight label_seq = lele.tile(label_emb.unsqueeze(0), 0, batch_size) x2_mask = torch.zeros(batch_size, self.label_emb_height).byte().cuda() if not FLAGS.use_label_rnn: label_seq = self.label_forward(label_seq) else: label_seq = self.label_forward(label_seq, x2_mask) # Align and aggregate c_check = x q = label_seq else: c_check = x #print(c_check.shape, q.shape, x2_mask.shape) for i in range(FLAGS.hop): if FLAGS.use_label_att: q_tilde = self.interactive_aligners[i].forward(c_check, q, x2_mask) c_bar = self.interactive_SFUs[i].forward(c_check, torch.cat([q_tilde, c_check * q_tilde, c_check - q_tilde], 2)) else: c_bar = c_check if FLAGS.use_self_match: c_tilde = self.self_aligners[i].forward(c_bar, x_mask) c_hat = self.self_SFUs[i].forward(c_bar, torch.cat([c_tilde, c_bar * c_tilde, c_bar - c_tilde], 2)) c_check = self.aggregate_rnns[i].forward(c_hat, x_mask) x = c_check x = self.pooling(x, x_mask) self.feature = x # not work well can ignore if FLAGS.use_len: x_len = torch.sum(input['content'] > 0, 1) len_emb = self.len_embedding(x_len) x = torch.cat([x, len_emb], -1) x = self.logits(x) x = x.view([-1, NUM_ATTRIBUTES, self.num_classes]) return x class Fastai(ModelBase): def __init__(self, embedding=None): super(Fastai, self).__init__(embedding) vocabulary.init() vocab_size = vocabulary.get_vocab_size() emb_dim = FLAGS.emb_dim self.num_classes = NUM_CLASSES self.model = lele.fastai.text.classifier(vocab_size, NUM_ATTRIBUTES * self.num_classes, emb_sz=emb_dim, nl=FLAGS.num_layers, embedding_weight=FLAGS.word_embedding_file) def forward(self, input, training=False): x = input['content'] x = self.unk_aug(x) # TODO .. #x = x.permute(1, 0) x = x.transpose(0, 1) x = self.model(x) x = x[0] x = x.view([-1, NUM_ATTRIBUTES, self.num_classes]) return x # class Model(ModelBase): # def forward(self, input, training=False): # x = input['content'] # x_mask = x.eq(0) # batch_size = x.size(0) # x = self.encode(input, x_mask, training=training) # x = self.pooling(x, x_mask) # x = self.logits(x) # x = x.view([-1, NUM_ATTRIBUTES, self.num_classes]) # return x ================================================ FILE: projects/ai2018/sentiment/train/README.md ================================================ v3 is lstm version of v2 v4 is same as v2 but decay by f1 v5 back to using decay by f1 also all add num_finetune_words.. v9 refactor move encoder to wenzheng.pyt.BiLMEncoder v9 show bert opt better loss for both pyt and tf, and better loss also better f1 for tf, so tf will all using bert opt v9 with lm example from v11 will use aug mode by default ? v12 after contest for ppt re run, but torch elmo wrong input(still improve.. but not as good as using correct one) v13 fix v12 bug of elmo v14 for jieba best is ./v14/torch.self_attention.unkaug.elmo.finetune_6k.sh for sp20w best is ./v14/torch.self_attention.unkaug.elmo.no_finetune_word.sh ================================================ FILE: projects/ai2018/sentiment/train/v1/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.bucket.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.char.bucket/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key=content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.pos.ner.stanford.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.stanford/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.stanford/model/v1/$fold/$SRC/gru.char.pos.ner.stanford/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--vocab_min_count=200 \ #--char_min_count=100 \ #--tag_min_count=500 \ python $exe \ --use_ner=1 \ --use_pos=1 \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --tag_emb_dim=50 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.char.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.pos.stanford.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.stanford/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.stanford/model/v1/$fold/$SRC/gru.char.pos.stanford.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--char_min_count=100 \ #--tag_min_count=500 \ python $exe \ --vocab_min_count=200 \ --use_pos=1 \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.pos.stanford.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.stanford/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.stanford/model/v1/$fold/$SRC/gru.char.pos.stanford/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab_min_count=200 \ --char_min_count=100 \ --tag_min_count=500 \ --use_pos=1 \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.char.stanford.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.stanford/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.stanford/model/v1/$fold/$SRC/gru.char.stanford/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab_min_count=200 \ --char_min_count=100 \ --tag_min_count=500 \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v1/gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --fold=$fold \ --concat_layers=1 \ --recurrent_dropout=1 \ --rnn_no_padding=0 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/README.md ================================================ ./torch.word.mreader.nopad.lm.ner.sh not work as complain embedding dim.. which now added 32 tag emb ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.bow.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=bow \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.bow.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.bow.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_max_ratio=0.02 \ --unk_aug_start_step=7000 \ --num_finetune_words=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=bow \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.rnet.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.rnet.$CELL.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.rnet.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.rnet.$CELL.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.sp1w.ft' echo 'use default SRC word.sp1w.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=1e-4 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.bert.cutfront.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.bert.cutfront/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --cut_front=1 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=1e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.bert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.bert.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/100000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.bert.rnn.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.bert.rnn.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --transformer_add_rnn=1 \ --rnn_hidden_size=768 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/100000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.bert.rnn.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.bert.rnn/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --transformer_add_rnn=1 \ --rnn_hidden_size=400 \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.bert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer.bert/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.char.transformer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.sp1w.ft' echo 'use default SRC word.sp1w.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.char.transformer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.mix.rnet.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.mix.rnet.$CELL.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.bow.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=bow \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.lm.rnet.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm.rnet.$CELL.rand/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=RNet \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.lm.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm.rnet.$CELL/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=RNet \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.mreader.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.mreader.$CELL.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=2 \ --att_combiner=sfu \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.mreader.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.mreader.$CELL.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=2 \ --att_combiner=sfu \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.mreader.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=1 \ --att_combiner=sfu \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.3layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden300.3layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden300.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden400.decay6.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden400.decay6/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=5e-6 \ --num_decay_epochs=6 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden400.lm.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden400.lm.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=1e-6 \ --num_decay_epochs=5 \ --warmup_steps=0 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden400.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden400.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden400.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden400.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.bseg.ner.ft' echo 'use default SRC word.bseg.ner.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.nolatt.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.nolatt.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.nolatt.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.nolatt.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnet.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnet.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/tf.word.rnetv2.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/tf.word.rnetv2.$CELL.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.char.mreader.nopad.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.char.mreader.nopad.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.char.mreader.nopad.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.char.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.char.mreader.nopad.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.char.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.char.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.char.mreader.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.char.mreader.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.char.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.lm.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.$CELL.hidden300/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=300 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --warmup_steps=5000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.lm.hidden400.b24.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.$CELL.hidden400.b24/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 24 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --warmup_steps=5000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.lm.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.$CELL.hidden400/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --warmup_steps=5000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.lm.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.$CELL.hidden600/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=600 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --warmup_steps=5000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.lm.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.$CELL.hidden768/ num_epochs=1 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=768 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --warmup_steps=5000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.lm.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.lm.$CELL.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.bertopt.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.bertopt.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.bseg.ner.ft' echo 'use default SRC word.bseg.ner.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.baike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.baike/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.addbaike/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.baike/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.addbaike/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.gru.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.gru.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden768/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.gru.hidden768/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=768 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.bseg.ner.ft' echo 'use default SRC word.bseg.ner.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --tag_emb_dim=32 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.bseg.ner.ft' echo 'use default SRC word.bseg.ner.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL/ # should add ner ... forget.., change it in v11.. #model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --tag_emb_dim=32 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v10/torch.word.mreader.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.word.mreader.nopad.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/README.md ================================================ -----tf rnet.nolatt rnet lm ft glove jieba sp10w sp1w mix char hidden 400 padding concat layers reccrent dropout gate attention transformer (bert) transformer (bert) + gru -----torch mreader.nolatt mreader bertopt + unkaug adamax + loss decay hidden 768 no padding not concat layers simple dropout sfu attention ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.cutfront.finetune.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.cutfront.finetune.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --cut_front=1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --warmup_steps=4000 \ --num_decay_epochs=15 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.cutfront.finetune.3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.cutfront.finetune.3/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --cut_front=1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --warmup_steps=4000 \ --num_decay_epochs=20 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.cutfront.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.cutfront.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --cut_front=1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=1e-5 \ --min_learning_rate=5e-7 \ --warmup_steps=4000 \ --num_decay_epochs=25 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.cutfront.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.cutfront/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --cutfront=1 \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.finetune.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --num_decay_epochs=15 \ --warmup_steps=4000 \ --num_decay_epochs=6 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.finetune.3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.3/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_decay_epochs=20 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.finetune.4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.4/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-4 \ --min_learning_rate=5e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_decay_epochs=6 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --num_decay_epochs=10 \ --warmup_steps=4000 \ --num_decay_epochs=20 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.finetune4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.finetune.4/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.rnn.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.rnn.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --transformer_add_rnn=1 \ --rnn_hidden_size=768 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #5e-5 decay 8 epoch, then epoch 9 change to use 3e-5 decay 16 epoch python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.topkatt.cutfront.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt.cutfront/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --cut_front=1 \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.topkatt.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=10 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.bert.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.bert' echo 'use default SRC char.bert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.bert.topkatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.finetune.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.finetune.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # 3 5e-6 6 5e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=5e-7 \ --num_decay_epochs=30 \ --warmup_steps=6000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.finetune.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.finetune.topkatt/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 5000000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.finetune2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.finetune2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=4e-6 \ --min_learning_rate=1e-7 \ --num_decay_epochs=30 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #5e-5 decay 8 epoch, then epoch 9 change to use 3e-5 decay 16 epoch python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 5000000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.char.transformer.nbert.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.char.transformer.nbert.topkatt/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #5e-5 decay 8 epoch, then epoch 9 change to use 3e-5 decay 16 epoch python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 5000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.mix.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.mix.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.mix.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.mix.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.mreader.lm.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,0_5,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.mreader.lm.2layer.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.2layer.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,0_5,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,0_5,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.mreader.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.mreader.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,0_5,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --hop=2 \ --att_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.lenemb.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.lenemb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --use_len=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.nolatt.hidden600.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.nolatt.hidden600/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=600 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.unkaug.lenemb.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.unkaug.lenemb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --use_len=1 \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnet.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnet.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnetv2.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.$CELL.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,kernel_1,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnetv2.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.$CELL.lm.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,0_3,0_4,kernel_1,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnetv2.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.nolatt.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/tf.word.rnetv2.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/tf.word.rnetv2.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNetV2 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.char.mreader.lm.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.lm.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.char.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.char.mreader.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.char.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.char.mreader.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.mix.mreader.lm.nolatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.lm.$CELL.nolatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.mix.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.mix.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mix.mreader.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=600,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.baike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.baike/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.addbaike/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.es.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden300.es/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.ls.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden300.ls/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.b24.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.sp20w.ft.pl' echo 'use default SRC word.sp20w.ft.pl' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400.b24/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 16 \ --buckets=500,1000 \ --batch_sizes 16,8,4 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=7 \ --warmup_steps=3000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.es.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400.es/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.ls.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400.ls/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.pl.b24.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.sp20w.ft.pl' echo 'use default SRC word.sp20w.ft.pl' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400.pl.b24/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --use_soft_label=1 \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'1.record,'$dir/train/'2.record,',$dir/train/'3.record,'$dir/train/'4.record,'$dir/train/'5.record',$dir/train/'6.record,'$dir/test/'*,' \ --valid_input=$dir/train/'0.record,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 16 \ --buckets=500,1000 \ --batch_sizes 16,8,4 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.pl.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.sp20w.ft.pl' echo 'use default SRC word.sp20w.ft.pl' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400.pl/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --use_soft_label=1 \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/test/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug.hidden768/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden768/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=768 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.lenemb.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.unkaug.lenemb.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --use_len=1 \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.bertopt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.bertopt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden300.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden300/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden300/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.hidden768.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug.hidden768/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden768/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=768 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.nolatt.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.nolatt.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v11/torch.word.mreader.nopad.lm.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='gru' echo 'use default CELL gru' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.word.mreader.nopad.lm.$CELL.unkaug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.rnet.max_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.rnet.max_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.rnet.max_pooling.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.rnet.max_pooling.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.rnet/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.rnet.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.rnet.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.self_attention.max_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.self_attention.max_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.self_attention.max_pooling.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.self_attention.max_pooling.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.self_attention.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.self_attention/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.self_attention.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.self_attention.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden100.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden100/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden200.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden200/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.attention_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.attention_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.max_pooling.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.max_pooling.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --global_step=0 \ --global_epoch=0 \ --restore_exclude=adam,0_2,global_step,ignore,learning_rate \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.max_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.max_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.max_pooling.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.max_pooling.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.hidden400.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL.hidden400.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.baseline.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.baseline.$CELL/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.rnet.$CELL/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/tf.word.rnet.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/tf.word.rnet.$CELL.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=0 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.mreader.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.mreader.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.mreader/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.mreader.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.mreader.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.mreader.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.mreader.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.self_attention.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.self_attention.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.self_attention.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.self_attention/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.self_attention.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.self_attention.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.self_attention.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.self_attention.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden100.nochar.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden100.nochar/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden100.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden100/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden200.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden200/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden400.attention_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden400.attention_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden400.max_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden400.max_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden400.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden400/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden400.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.$CELL.nopad/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v12/torch.word.baseline.hidden400.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.self_attention.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.self_attention.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.self_attention.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.self_attention/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.self_attention.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.self_attention.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.self_attention.unkaug.elmo.valid_decay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.self_attention.unkaug.elmo.valid_decay/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.self_attention.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.self_attention.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.word.baseline.hidden400.unkaug.elmo.hack.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.word.baseline.hidden400.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v13/torch.word.baseline.hidden400.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v13/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/test.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/test/ num_epochs=8 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_fc=0 \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 24 \ --buckets=500,1000 \ --batch_sizes 24,12,6 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/test2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/test2/ num_epochs=2 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size=32 \ --batch_size_per_gpu=0 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps=1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps=1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/test3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/test3/ num_epochs=8 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_fc=0 \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'0.record,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.1gpu.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.1gpu.2/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.1gpu.3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.1gpu.3/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=3 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.1gpu.3epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.1gpu.3epoch/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=1 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.1gpu.4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.1gpu.4/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=4 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.1gpu.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.1gpu/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.2gpu.3epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.2gpu.3epoch/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.2gpu.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.2gpu/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=3 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.3epoch.lr2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr2/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.3epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.3epoch/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=5 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=3 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch/ num_epochs=4 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=3e-5 \ --warmup_proportion=0. \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune.lr2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune.lr2/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.all_finetune/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03.all_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03.all_finetune/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dropout=0.3 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.drop03/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dropout=0.3 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr10.all.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr10.all/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=1e-4 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr2/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr5/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.ratio1.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.ratio1/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=10000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=10000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.topkatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w.topkatt/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=10000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.all.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.1w/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=10000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.lr8/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.no_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.no_finetune/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=0 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr.2/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=1 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-4 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.lr/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=1 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=2e-4 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch.ratio1/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=6 \ --batch_size_per_gpu=1 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.3epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.3epoch/ num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.4epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.4epoch/ num_epochs=4 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.5epoch.3layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.5epoch.3layer/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_num_layers=3 \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=32 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.5epoch.all_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.5epoch.all_finetune/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.5epoch.lr5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.5epoch.lr5/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.5epoch.lr8.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.5epoch.lr8/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.4gpu.5epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune.4gpu.5epoch/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/tf.char.transformer.nbert.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/tf.char.transformer.nbert.finetune/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # from 72k epoch 16.45 change min lr from 5e-7 1e-7 python $exe \ --bert_lr_ratio=0.1 \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --num_finetune_words=3000 \ --num_finetune_chars=3000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=5 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=20 \ --warmup_steps=4000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=0 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.all_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.all_finetune/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #--num_finetune_words=6000 \ #--num_finetune_chars=3000 \ python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_100k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_100k/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=100000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_10k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_10k/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=10000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_20k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_20k/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=20000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_50k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_50k/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=50000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.batch32.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.batch32/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size=32 \ --buckets=1000 \ --batch_sizes 32,16 \ --length_key=content \ --batch_size_per_gpu=0 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.batch8.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.batch8/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size=8 \ --batch_size_per_gpu=0 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=200 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.pad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.pad/ num_epochs=8 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_fc=0 \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.onlyatt/ num_epochs=8 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_fc=0 \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.exclusive_fc/ num_epochs=8 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_fc=0 \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k.exclusive_pooling/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --share_pooling=0 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.finetune_6k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.finetune_6k/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.no_finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.no_finetune/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #--num_finetune_words=6000 \ #--num_finetune_chars=3000 \ python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --finetune_char_embedding=0 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.no_finetune_word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.no_finetune_word/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #--num_finetune_words=6000 \ #--num_finetune_chars=3000 \ python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --finetune_char_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.no_finetune_word2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.no_finetune_word2/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi #--num_finetune_words=6000 \ #--num_finetune_chars=3000 \ python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=0 \ --use_char=1 \ --num_finetune_chars=3000 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --finetune_char_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.nochar.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.nochar/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.elmo.valid_decay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug.elmo.valid_decay/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.self_attention.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.self_attention.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.word.baseline.hidden100.nobuckets.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.word.baseline.$CELL.hidden100.nobuckets/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size=32 \ --batch_size_per_gpu=0 \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.word.baseline.hidden100.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.word.baseline.$CELL.hidden100/ num_epochs=2 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size=32 \ --batch_size_per_gpu=0 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps=1000 \ --metric_eval_interval_steps=1000 \ --save_interval_steps=1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.word.baseline.hidden400.unkaug.elmo.hack.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.word.baseline.hidden400.unkaug.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug.elmo/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.$CELL.hidden400/latest.pyt \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v14/torch.word.baseline.hidden400.unkaug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi if [ $CELL ]; then echo 'CELL:' $CELL else CELL='lstm' echo 'use default CELL lstm' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v14/$fold/$SRC/torch.word.baseline.$CELL.hidden400.unkaug/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi python $exe \ --unk_aug=1 \ --unk_aug_start_epoch=2 \ --unk_aug_max_ratio=0.02 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=$CELL \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=400 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps=0 \ --save_interval_steps 1000 \ --save_interval_epochs=100 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v15/bert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v15/$fold/$SRC/bert num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v15/bert2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.nbert' echo 'use default SRC char.nbert' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v15/$fold/$SRC/bert2 num_epochs=3 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./$exe model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./$exe model_dir=$1 fold=0 fi # use 4 gpu to run if gtx1080ti FIXME now can only batc_size 2 * 4 .. why? CUDA_VISIBLE_DEVICES=0,1,2,3 python $exe \ --bert_lr_ratio=1. \ --bert_dir=$base/data/my-embedding/bert-char/ckpt/500000 \ --model=Transformer \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size=24 \ --batch_size_per_gpu=0 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=8e-5 \ --min_learning_rate=1e-7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.wchar.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.wchar.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.wchar.pos.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.wchar.pos.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.wchar.pos.ner.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.wchar.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.wchar.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.wchar.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/rnet.wchar.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.wchar/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/torch.mreader.1hop.wchar.pos.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.wchar.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/torch.mreader.1hop.wchar.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.wchar.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/torch.mreader.1hop.wchar.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.wchar/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v2/torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.2hop.wchar.pos.labelrnn.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.3layer/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.wchar.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.wchar.3layer/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.wchar.pos.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.wchar.pos.3layer/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.wchar.pos.ner.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.wchar.pos.ner/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.wchar.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.wchar.pos/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/rnet.wchar.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_rnet.wchar/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_torch.mreader.1hop/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/torch.mreader.1hop.wchar.pos.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_torch.mreader.1hop.wchar.pos.ner/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/torch.mreader.1hop.wchar.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_torch.mreader.1hop.wchar.pos/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/torch.mreader.1hop.wchar.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_torch.mreader.1hop.wchar/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v3/torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/lstm_torch.mreader.2hop.wchar.pos.labelrnn.topkattlast/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.wchar.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.wchar.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.wchar.pos.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.wchar.pos.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.wchar.pos.ner.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.wchar.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.wchar.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.wchar.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/rnet.wchar.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.wchar/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/torch.mreader.1hop.wchar.pos.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.wchar.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/torch.mreader.1hop.wchar.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.wchar.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/torch.mreader.1hop.wchar.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.wchar/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v4/torch.mreader.2hop.wchar.pos.labelrnn.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.2hop.wchar.pos.labelrnn.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/README.md ================================================ now ./rnet.char.noconcat.sh ./rnet.char.residual.sh bad ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.char.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.char.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.char.noconcat.residual.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.char.noconcat.residual/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --encoder_residual_connect=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.char.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.char.noconcat/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.char.residual.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.char.residual/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --encoder_residual_connect=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.mix.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.mix.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.mix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.mix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.word.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.word.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.word.pos.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.word.pos.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.word.pos.ner.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.word.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.word.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.word.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/rnet.word.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.char.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.mix.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.mix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.ner.fast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word.ner.fast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.pos.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.1hop.word.subner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.word.subner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --tag_emb_dim=32 \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v5/torch.mreader.2hop.word.pos.labelrnn.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.2hop.word.pos.labelrnn.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/README.md ================================================ now ./rnet.char.noconcat.sh ./rnet.char.residual.sh bad now get best result from word bseg ner notice subner.sh with ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.char.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.char.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.char.residual.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.char.residual/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --encoder_residual_connect=1 \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.adafactor.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.adafactor/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adafactor \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.multistep.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.multistep/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=multistep \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.natt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.natt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,natt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.v1.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.v1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.mix.yellowfin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.mix.yellowfin/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=yellowfin \ --learning_rate=0.1 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.adamax.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word.adamax/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.pos.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word.pos.3layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.pos.ner.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.pos.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnet.word.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/rnetv2.mix.natt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnetv2.mix.natt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=RNetV2 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key='content' \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,natt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.char.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=3000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.mix.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.mix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.mix.v1.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.mix.v1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.mix.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.mix.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.mix.v3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.mix.v3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.latt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.latt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.ner.latt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.ner.latt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.pos.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.pos.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.pos/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.subner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.subner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --tag_emb_dim=32 \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.1hop.word.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.word.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.mreader.2hop.word.pos.labelrnn.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.2hop.word.pos.labelrnn.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.gate.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.gate/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=0 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='gate' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.ner.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.ner/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.ner.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.ner.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.ner.v3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.ner.v3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.ner.v4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.ner.v4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.ner.v5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.ner.v5/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=1 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=0 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=0 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='gate' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --torch_cudnn_rnn=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v6/torch.rnet.word.v4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.rnet.word.v4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_ner=0 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --torch_cudnn_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.mreader.1hop.word.latt.pad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.word.latt.pad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.mreader.1hop.word.latt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.word.latt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.mreader.1hop.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.mreader.1hop.word.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.word.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.mreader.1hop.word.v3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.word.v3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v7/torch.rnet.word.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.rnet.word.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --use_ner=0 \ --use_pos=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.lm.mreader.word.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.lm.mreader.word.nopad.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_model=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.lm.mreader.word.nopad.rand2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.lm.mreader.word.nopad.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_model=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.0002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.lm.mreader.word.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.lm.mreader.word.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_model=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.lm.mreader.word.nopad2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.lm.mreader.word.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_model=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.00005 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.lm.mreader.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/lm/$SRC/torch.lm.mreader.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_model=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.aug.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.aug/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --other_corpus_factor=0.3 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.seg.train/'*' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.chconv.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.chconv/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --char_encoder=conv \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.chpad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.chpad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --char_padding=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.curnn.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.curnn/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.latt.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.latt.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.latt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.latt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,latt \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.2layer.lm.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.2layer.lm.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.2layer.lm.rand2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.2layer.lm.rand2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.2layer.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.2layer.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.2layer.lm2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.2layer.lm2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --min_learning_rate=0.00001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.2layer.lm3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.lm3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.lm.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.lm.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.lm2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad.lm2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.dynamic.transformer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.dynamic.transformer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=transformer \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.elmo.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.elmo/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=elmo \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.finetune2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.finetune2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=8000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.noam.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.noam/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --torch_lr=1 \ --optimizer=noam \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.noam2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.noam2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --torch_lr=1 \ --optimizer=noam \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v8/torch.mreader.word.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.word/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/README.md ================================================ ./tf.word.rnet.attnodrop.sh worse then ./tf.word.rnet.sh so attention dropout needed ./tf.word.rnet.bertopt.sh not work for tf here sfu works bad even for mreader, just using dot TODO FIXME ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.5epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.5epoch/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,384,512 \ --batch_sizes 32,16,14,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.bert.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.bert/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.lm.10epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.lm.10epoch/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,384,512 \ --batch_sizes 32,16,14,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.lm.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.lm.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,384,512 \ --batch_sizes 32,16,14,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-4 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.lm.5epoch.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.lm.5epoch.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-6 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.lm.5epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.lm.5epoch/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --bert_dir=$base/data/word-emb/chinese_L-12_H-768_A-12 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,512 \ --batch_sizes 32,16,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --min_learning_rate=1e-7 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.char.transformer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.char.transformer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #bert handle word embedding .. #--word_embedding_file=$dir/emb.npy \ #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=Transformer \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --content_limit=512 \ --buckets=128,256,320,384,512 \ --batch_sizes 32,16,14,12,6,2 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=5e-5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.lm.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm.2layer/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.lm.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm.rand/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.lm.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.mreader.sfu.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.mreader.sfu/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --att_combiner=sfu \ --hop=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.mreader/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --hop=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=MReader \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.attnodrop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.attnodrop/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --att_dropout=0 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.10epoch.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt.10epoch.2/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.10epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt.10epoch/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.15epoch.d5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt.15epoch.d5/ num_epochs=15 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --min_learning_rate=1e-5 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.5epoch.finetune.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt.5epoch.finetune/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.0001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.5epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt.5epoch/ num_epochs=10 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi #--decay_target=loss \ #--decay_patience=1 \ #--decay_factor=0.8 \ #--decay_start_epoch_=2. \ python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/tf.word.lm/ \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.rnet/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.transformer.5epoch.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.transformer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/tf.word.transformer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/tf.word.transformer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --model=RNet \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam_t2t \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.lstm.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.lstm.nopad.rand/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.lstm.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.lstm.nopad/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.lstm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.lstm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.nopad.addbaike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.nopad.addbaike/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/train.baike/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.nopad.rand/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm.nopad/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='char.ft' echo 'use default SRC char.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.char.lm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.mreader.2layer.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.char.mreader.2layer.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.char.mreader.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.char.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.mreader.nopad.pos.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.char.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_pos=1 \ --tag_emb_dim=32 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.char.mreader.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.char.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --use_char=0 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.2layer.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.2layer.nopad/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.2layer/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.lstm.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.lstm.nopad.rand/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.lstm.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.lstm.nopad/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.lstm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.lstm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.nopad.addbaike.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.addbaike/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --other_corpus_factor=0.1 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/train.baike/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.rand/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.9 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba' echo 'use default SRC word.jieba' fi dir=$base/temp/ai2018/sentiment/tfrecords/lm/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm/ num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-lm-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=BiLanguageModel \ --label_emb_height=20 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=0.1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=0.1 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lstm.mreader.2layer.nopad.latt6.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.lstm.mreader.2layer.nopad.latt6.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.lstm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=6 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lstm.mreader.2layer.nopad.latt80.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.lstm.mreader.2layer.nopad.latt80.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.lstm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=80 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lstm.mreader.2layer.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.lstm.mreader.2layer.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.lstm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.lstm.mreader.2layer.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.lstm.mreader.2layer.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.lm.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.lm.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nolatt.lm.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nolatt.lm.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nolatt.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nolatt.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.cw.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.cw/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_load_optimizer=0 \ --use_class_weights=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.labelrnn.2hop.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.labelrnn.2hop.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.labelrnn.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.labelrnn.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.latt6.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.latt6.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=6 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.latt80.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.latt80.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=80 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.3.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.4.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.5/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad.long/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.beropt.d5.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.bertopt.d5/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.beropt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --warmup_steps=2000 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad.rand/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.lm.v2.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.lm.v2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_lr_factor=0.1 \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.nolatt.lm.bertopt.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.nolatt.lm.bertopt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=bert \ --learning_rate=0.002 \ --min_learning_rate=5e-6 \ --num_decay_epochs=5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.nolatt.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad.nolatt.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.2layer.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.2layer.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.3layer.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.3layer.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.3layer.nopad.nolatt.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.3layer.nopad.nolatt.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.nopad.cw.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.nopad.cw/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_class_weights=1 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.mreader.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.mreader/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnet.2layer.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnet.2layer.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnet.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnet.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnet.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnet.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnet.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnet/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnn.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnn.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_finetune=1 \ --torch_load_optimizer=0 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnn.nopad.lm.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnn.nopad.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --lm_path=$base/temp/ai2018/sentiment/model/lm/$SRC.long/torch.word.lm.nopad/latest.pyt \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=MReader \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnn.nopad.rand.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnn.nopad.rand/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_finetune=1 \ --torch_load_optimizer=0 \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnn.nopad.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnn.nopad/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --rnn_padding=0 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train/v9/torch.word.rnn.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.jieba.ft' echo 'use default SRC word.jieba.ft' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.word.rnn/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --dynamic_finetune=1 \ --num_finetune_words=6000 \ --num_finetune_chars=3000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=RNet \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets=500,1000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adamax \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from wenzheng.utils import input_flags # import projects # algos = projects.ai2018.sentiment.algos #from algos.model import * from algos.loss import criterion import algos.model as base from dataset import Dataset import evaluate as ev def main(_): FLAGS.num_folds = 8 FLAGS.model = FLAGS.model or 'RNet' melt.apps.init() ev.init() embedding = None if FLAGS.word_embedding_file and os.path.exists(FLAGS.word_embedding_file): embedding = np.load(FLAGS.word_embedding_file) FLAGS.emb_dim = embedding.shape[1] model = getattr(base, FLAGS.model)(embedding) logging.info(model) train = melt.apps.get_train() init_fn = None # TODO FIXME should like below but now has problem # File "/home/gezi/mine/wenzheng/utils/melt/util.py", line 38, in create_restore_fn # assert variables_to_restore, tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) # AssertionError: [, , , , , , , , , , , ] # if FLAGS.lm_path: # init_fn = melt.create_restore_fn(FLAGS.lm_path, FLAGS.model, 'TextEncoder') train(Dataset, model, criterion, eval_fn=ev.evaluate, init_fn=init_fn, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_suffix='.valid.csv', infer_suffix='.infer.csv') if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/ai2018/sentiment/train.v1/README.md ================================================ v4 try to use canyin embeddings ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.emb.fix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.emb.fix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.emb.warm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.emb.warm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=/home/gezi/temp/ai2018/sentiment.v1/model/v4/gru.5k.canyin.mix.dianping/word-embedding.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.labelatt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.labelatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.labelatt.simple.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.labelatt.simple/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --simple_label_att=1 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.mdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.mdecay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/bow.topk-3att.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/bow.topk-3att.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/convnet.topk-3att.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/convnet.topk-3att.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=convnet \ --keep_prob=0.7 \ --num_layers=4 \ --num_filters=128 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/crnn.topk-3att.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/crnn.topk-3att.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=convnet,rnn \ --keep_prob=0.7 \ --num_layers=1 \ --num_filters=128 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.2layer.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.2layer.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.att.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.att/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=attention \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.att2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.att2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=attention2 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.emb.finetune.later.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.emb.finetune.later/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.emb.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.emb.fix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.emb.fix/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.emb.warm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.emb.warm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=/home/gezi/temp/ai2018/sentiment.v1/model/v4/gru.5k.canyin.mix.dianping/word-embedding.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.f05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.f05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.f07.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.f07/ num_epochs=21 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.f09.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.f09/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=2 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.focal.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.focal/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss='focal' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.focal2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.focal2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss='focal' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.hidden200/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.label.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_emb=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.maxatt.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.maxatt.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,attention \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.maxatt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.maxatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,attention \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.maxmean.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.maxmean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max,mean \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay.f09.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay.f09/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=80 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay.p2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay.p2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=80 \ --decay_target=f1 \ --decay_patience=2 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=80 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay2.f07.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay2.f07/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.7 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay2.f09.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay2.f09/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mdecay2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mdecay2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.mean.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.mean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=mean \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.naonly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.naonly/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_ratio=1. \ --na_ratio_add=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.naratio01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.naratio01/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_ratio=0.1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.naratio1.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.naratio1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_ratio=1. \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.nodecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.nodecay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.p2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.p2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=2 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.10epoch.decay05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.10epoch.decay05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.5 \ --num_epochs_per_decay=10. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.10epoch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.10epoch/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --num_epochs_per_decay=10. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.5epoch.decay01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.5epoch.decay01/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.1 \ --num_epochs_per_decay=5. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.5epoch.decay04.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.5epoch.decay04/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.4 \ --num_epochs_per_decay=5. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.5epoch.decay08.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.5epoch.decay08/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.8 \ --num_epochs_per_decay=5. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.5epoch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.5epoch/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --num_epochs_per_decay=5. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.decay05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.decay05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.5 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.decay08.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine.decay08/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --learning_rate_cosine_m_mul=0.8 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.cosine.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.cosine/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --learning_rate_method='cosine' \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.earth.na.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.earth.na/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --earth_mover_loss_ratio=0.1 \ --na_loss_ratio=0.1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.earth.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.earth/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --earth_mover_loss_ratio=0.1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.hier.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.hier/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_hier_encode=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.label.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.label/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_emb=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.labelatt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.labelatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.mlp.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.mlp.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mlp_ratio=-1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.mlp.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.mlp/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mlp_ratio=-1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.mlp05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.mlp05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mlp_ratio=0.5 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.mlp1.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.mlp1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --mlp_ratio=1. \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.na.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3.na/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=0.1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.hier.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.hier/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_hier_encode=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.label.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.label/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_emb=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.10w.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord.10w.emb.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model.10w.emb.dianping/gru.topk-3att.2layer.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.1w.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord.1w.emb.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model.1w.emb.dianping/gru.topk-3att.2layer.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.mdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.mdecay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.naonly.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.naonly.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --binary_class_index=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.naonly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.naonly/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --binary_class_index=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=0.1 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.finetune2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=0.1 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio01/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=0.1 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=0.5 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio1.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.naratio1/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --na_loss_ratio=1. \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20.selfmatch/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.height20.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.height20/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.mdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.mdecay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb.sfu/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --att_combiner=sfu \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.finetune.d05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi #finetune from epoch 7 train using gru.topk-3att.2layer.labelatt.sh model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.finetune.d05/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --restore_exclude=learning_rate_weights,learning_rate \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0003 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi #finetune from epoch 7 train using gru.topk-3att.2layer.labelatt.sh model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --restore_exclude=learning_rate_weights,learning_rate \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.0003 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.labelatt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer.labelatt/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att.2layer/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-3att.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-3att/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-4.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=4 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-5/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=5 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk-6.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk-6/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --top_k=6 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.topk.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.topk/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.0.naratio01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.0.naratio01/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_ratio=0.1 \ --attr_index=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.0.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.0/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --attr_index=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.location.naratio01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.location.naratio01/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --na_ratio=0.1 \ --aspect='location' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.location.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.location/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --aspect='location' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.service.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.service/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --aspect='service' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.service.topk.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.service.topk/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --aspect='service' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.service0.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.service0/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --aspect='service-0' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/gru.weights.service0.topk.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/gru.weights.service0.topk/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --aspect='service-0' \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/qanet.topk-3att.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/qanet.topk-3att.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=qanet \ --keep_prob=0.7 \ --num_layers=3 \ --num_filters=128 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v1/rcnn.topk-3att.labelatt.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/rcnn.topk-3att.labelatt.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn,convnet \ --keep_prob=0.7 \ --num_layers=1 \ --num_filters=128 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.1w.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.1w.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.dish.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.dish num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='dish' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.environment.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.environment num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='environment' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.location.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.location num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='location' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.others.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.others num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='others' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.price.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.price num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='price' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.aspect.service.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.aspect.service num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='service' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.keep06.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.keep06 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.6 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.keep08.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.keep08 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.8 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.keep09.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.keep09 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.9 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.labelemb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.labelemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_emb=1 \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.labelrnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.sfu num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --att_combiner=sfu \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.tanh.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.tanh num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt10.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt10.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=10 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sfu num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --att_combiner=sfu \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt20 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt40.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt40.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=40 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.5k.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.5k.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.dish.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.dish num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='dish' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.environment.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.environment num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='environment' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.location.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.location num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='location' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.others.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.others num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='others' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.price.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.price num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='price' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.aspect.service.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.aspect.service num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect='service' \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.hidden300 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.2layer.topk3att.labelatt80.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=80 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.hidden200.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.hidden200 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v2/gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/gru.char.wordpretrain_glove_dianping.3layer.topk3att.labelatt20.selfmatch num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-5k-ftwiki.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.fasttext.wiki/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.ftwiki num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-5k-labelrnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.labelrnn num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-5k-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-baseline-att.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.baseline.att num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-baseline-ftwiki.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.fasttext.wiki/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.baseline.ftwiki num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru-baseline.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.baseline num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.mreader.2hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.mreader.2hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV3 \ --hop=2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.mreader.sfu.2hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.mreader.sfu.2hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV3 \ --hop=2 \ --att_combiner=sfu \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.mreader.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.mreader.sfu num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV3 \ --att_combiner=sfu \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.mreader.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.mreader num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV3 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k.sfu num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --att_combiner=sfu \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/gru.5k.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-att-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.att.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-att-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.att.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-att-v2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.att.v2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-pad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.pad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-v2-ftwiki.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.fasttext.wiki/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.v2.ftwiki num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline-v2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline.v2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-baseline.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.baseline num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-labelatt-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.labelatt.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-labelatt-sfu-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.labelatt.sfu.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-curnn-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.curnn.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1000,2000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-curnn-sfu-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.curnn.sfu.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1000,2000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-curnn-sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.curnn.sfu num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1000,2000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-curnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.curnn num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --rnn_no_padding=0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1000,2000 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-gru-rnet-sfu-nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.gru.rnet.sfu.nopad num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-mreader-1hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment.v1/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment.v1/model/v3/torch.mreader.1hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi #--buckets 1200 \ #--batch_sizes 32,16 \ #--length_key content \ python $exe \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-mreader-2hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.mreader.2hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-mreader-labelrnn-1hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.mreader.labelrnn.1hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v3/torch-mreader-labelrnn-2hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/torch.mreader.labelrnn.2hop num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-char-addneubinary-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.char.addneubinary.finetune num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-char-addneubinary-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.char.addneubinary.trans num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-char-addneubinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.char.addneubinary num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.char num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addbinaries-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addbinaries.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binaries \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addbinaries.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addbinaries num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binaries \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addnabinary-finetune-epoch5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addnabinary.finetune.epoch5 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binary_0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addnabinary-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addnabinary.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binary_0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addnabinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addnabinary num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binary_0 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addnaneubinary-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addnaneubinary.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_binary_0,2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary-finetune-epoch5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary.finetune.epoch5 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary-finetune-factor2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary.finetune.factor2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --other_loss_factor=2. \ --loss_type=add_binary_2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-addneubinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.addneubinary num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-binariesonly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.binariesonly num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=binaries_only \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-cotrain.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.cotrain num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --ther_corpus_factor=0.1 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/dianping/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-deformcanyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.deformcanyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --other_corpus_factor=1. \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/canyin/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-deformdianping-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.dianping.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --restore_include='model/embedding/embedding_kernel' \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-deformdianping.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.dianping num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --defrom_ratio=1. \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/dianping/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-finetune-dianpingemb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.finetune.dianpingemb num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=/home/gezi/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.dianping/word-embedding.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-hier-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.hier.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=hier \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-hier-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.hier.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=hier \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-hier.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.hier num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=hier \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-hierneu-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.hierneu.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=hier_neu \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-neubinary-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.neubinary.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=binary_2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-neubinary-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.neubinary.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=binary_2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-neubinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.neubinary num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=binary_2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersAgainOnly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersAgainOnly num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect=others_willing_to_consume_again \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersOnly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersOnly num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect=others \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersOverallOnly.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersOverallOnly num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --aspect=others_overall_experience \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersOverallW2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersOverallW2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --weights=others_overall_experience:2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersOverallW5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersOverallW5 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --weights=others_overall_experience:5 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersW10.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersW10 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --weights=others:10 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersW2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersW2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --weights=others:2 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-othersW5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.othersW5 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --weights=others:5 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-regression-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.regression.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=regression \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-regression.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.regression num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=regression \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-small.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.small num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --content_limit=500 \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-trans.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.trans.2 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.005 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-trans.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.trans.3 num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix-trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin-mix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin.mix num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-hier-canyin-finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.hier.canyin.finetune num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --hier_finetune=1 \ --loss_type=hier \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-hier-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.hier.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --loss_type=hier \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-lattonly-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.lattonly.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=0 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-maxmean-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.maxmean.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=max,mean \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv2-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv2.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv2-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv2.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv2-sfu-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv2.sfu.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --att_combiner=sfu \ --model=RNetV2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv3-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv3.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV3 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv3-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv3.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV3 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv3-selfmatchonly-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv3.selfmatchonly.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV3 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-rnetv4-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.rnetv4.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=RNetV4 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-selfmatchonly-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.selfmatchonly.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-topk3attmean-canyin-char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.topk3attmean.canyin.char num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,mean \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-topk3attmean-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.topk3attmean.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,mean \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru-5k-topk3mean-canyin.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/gru.5k.topk3mean.canyin num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,mean \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/gru.5k.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/gru.5k num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=ModelV2 \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/rcnn-k5-canyin-mix.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/rcnn.5k.canyin.mix num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --model=Model \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn,convnet \ --keep_prob=0.7 \ --num_layers=1 \ --num_filters=128 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/torch-mreader-trans.sh ================================================ base=./mount #dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/torch.mreader.trans num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200,2000 \ --batch_sizes 32,16,4 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v1/v4/torch-mreader.sh ================================================ base=./mount #dir=$base/temp/ai2018/sentiment/tfrecord.5k.glove.dianping/ dir=$base/temp/ai2018/sentiment/tfrecord.5k.mix.glove.canyin/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/torch.mreader num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi mode=train if [ "$INFER" = "2" ]; then echo "VALID MODE" #exe=./infer.py mode=valid model_dir=$1 fold=0 fi if [ "$INFER" = "3" ]; then echo "TEST MODE" #exe=./infer.py mode=test model_dir=$1 fold=0 fi if [ "$INFER" = "4" ]; then echo "VALID+TEST MODE" #exe=./infer.py mode=valid,test model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --use_label_att=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --valid_input=$dir/valid/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --top_k=3 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ --mode=$mode \ ================================================ FILE: projects/ai2018/sentiment/train.v2/README.md ================================================ py run.py qiano v3 use lstm cell v4 same as v3 but decay by adjusted_f1 not f1 v4 also for weights decay use decay factor 0.9 v5 same as v4 but decay by loss , decay factor 0.5 for weights decay v6 same as v5 but decay by auc v7 word + char gru decay start 3 v8 decay start 2 v9 decay start 1 v10 decay start 2, lstm v11 decay start 1, lstm v12 same as v11 but sfu combine word and char ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.emb.binary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.emb.binary/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=binary \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.ori.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.ori.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.ori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.ori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.simplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.simplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.testori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.testori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/bow.testsimplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/bow.testsimplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.400.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 400 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.char.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.char.sfu/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=sfu \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.adjust.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.adjust/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.cw.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.cw/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_class_weights=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.decay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.decay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_start_epoch=1. \ --learning_rate_decay_factor=0.9 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.decay2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.decay2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_start_epoch=1. \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.last.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.last/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.lastmax.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.lastmax/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last,max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.lastmaxmean.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.lastmaxmean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last,max,mean \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.loss.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.loss/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.norec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=0 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.rec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.rec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.rec.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb.rec.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.smooth.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.emb.smooth/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_smoothing=0.1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.emb.trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.emb.trans/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,',$dir/trans/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm.3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm.emb/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.lr0002.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm.lr0002/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.pretrain.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.lm.pretrain/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.lm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.ori.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.ori.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.ori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.ori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.simplify.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.simplify.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.simplify.emb.addneubinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.simplify.emb.addneubinary/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.simplify.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.simplify.emb.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_folds=8 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.simplify.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.simplify.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.simplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.simplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.testsimplify.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.testsimplify.emb.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_folds=8 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.testsimplify.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.testsimplify.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/gru.testsimplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/gru.testsimplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb.norec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=0 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.rec.2layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb.rec.2layer.noconcat/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.rec.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb.rec.2layer.noconcat.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.rec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb.rec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.rec.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb.rec.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/lstm.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/lstm.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/rnet.char.ft.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.ft.10epoch/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/rnet.char.ft/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/rnet.char.glove.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.15epoch/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/rnet.char.glove/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.1layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai.1layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai.3/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.4.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai.4/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai.5/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.fastai.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.fastai/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.gru.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.gru.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=gru \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.gru/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=gru \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.1layer.labelatt.2hop.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.1layer.labelatt.2hop.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_hop=2 \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --learning_rate_start_factor=10. \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.1layer.labelatt.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.1layer.labelatt.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2layer.noconcat.labelatt.gate.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2layer.noconcat.labelatt.gate.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='gate' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2layer.noconcat.labelatt.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2layer.noconcat.labelatt.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.evpadd.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.evpadd/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=0 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.max.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.max.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.max.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.max/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.padd.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.padd/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.recdrop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm.recdrop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstm/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.bwdrop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2.bwdrop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bw_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.norec.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2.norec.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.norec.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2.norec.nopad/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=1 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2.norec/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.lstmV2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.lstmV2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.rnet.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.rnet.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.006 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1/torch.rnetV2.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1/$fold/$SRC/torch.rnetV2.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --torch_cudnn_rnn=1 \ --recurrent_dropout=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.emb.binary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.emb.binary/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=binary \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.ori.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.ori.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.ori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.ori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.simplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.simplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.testori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.testori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/bow.testsimplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/bow.testsimplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=bow \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.400.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.400/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 400 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.char.sfu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.char.sfu/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=sfu \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.adjust.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.adjust/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.char.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.char.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2.4 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.char.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.char.3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2.4 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.char.4.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.char.4/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=3. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.char.5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.char.5/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_learning_rate_weights=20 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=3. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.char.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.char/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --char_combiner=concat \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.cw.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.cw/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_class_weights=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.decay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.decay/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_start_epoch=1. \ --learning_rate_decay_factor=0.9 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.decay2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.decay2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_start_epoch=1. \ --learning_rate_decay_factor=0.8 \ --num_epochs_per_decay=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.last.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.last/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.lastmax.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.lastmax/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last,max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.lastmaxmean.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.lastmaxmean/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=last,max,mean \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.loss.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.loss/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.norec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=0 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.rec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.rec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.rec.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb.rec.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=gru \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.smooth.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.emb.smooth/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_smoothing=0.1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.emb.trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.emb.trans/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,',$dir/trans/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm.3/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm.emb/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.lr0002.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm.lr0002/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.pretrain.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.lm.pretrain/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.lm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru.lm/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.ori.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.ori.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/aug.test/'*,' \ --info_path=$dir/info.pkl \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.ori.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.ori/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/aug.train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/gru/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.simplify.emb.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.simplify.emb.2/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.simplify.emb.addneubinary.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.simplify.emb.addneubinary/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.simplify.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.simplify.emb.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_folds=8 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.simplify.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.simplify.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.simplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.simplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.testsimplify.emb.finetune.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.testsimplify.emb.finetune/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_folds=8 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.testsimplify.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.testsimplify.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/gru.testsimplify.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/gru.testsimplify/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb.norec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=0 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.rec.2layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb.rec.2layer.noconcat/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.rec.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb.rec.2layer.noconcat.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.rec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb.rec/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.rec.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb.rec.topkattlast/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/lstm.emb.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/lstm.emb/ num_epochs=20 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=lstm \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/rnet.char.ft.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.ft.10epoch/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/rnet.char.ft/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/rnet.char.glove.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecord.char.glove.15epoch/ fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/rnet.char.glove/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.1layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai.1layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.3.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai.3/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.4.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai.4/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.5.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai.5/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.fastai.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.fastai/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Fastai \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.gru.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.gru.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=gru \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.gru.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.gru/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=gru \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.1layer.labelatt.2hop.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.1layer.labelatt.2hop.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_hop=2 \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --learning_rate_start_factor=10. \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.1layer.labelatt.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.1layer.labelatt.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2layer.noconcat.labelatt.gate.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2layer.noconcat.labelatt.gate.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='gate' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2layer.noconcat.labelatt.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2layer.noconcat.labelatt.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.2layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.evpadd.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.evpadd/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=0 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.max.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.max.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.max.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.max/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=max \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.padd.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.padd/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --rnn_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.recdrop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm.recdrop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstm.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstm/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.bwdrop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2.bwdrop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --bw_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.norec.2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2.norec.2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.norec.nopad.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2.norec.nopad/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=1 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.norec.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2.norec/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --recurrent_dropout=0 \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.lstmV2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.lstmV2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=ModelV2 \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.rnet.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.rnet.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.006 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v1.1/torch.rnetV2.2layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v1.1/$fold/$SRC/torch.rnetV2.2layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --torch_cudnn_rnn=1 \ --recurrent_dropout=1 \ --model=Model \ --cell=lstm \ --use_self_match=0 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v10/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v10/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v10/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v11/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v11/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v11/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v12/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --char_combiner=sfu \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v12/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v12/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --char_combiner=sfu \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/README.md ================================================ v2 change to use lstm as cell ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.3layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.3layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.3layer.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/rnet.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.1hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.1hop.2layer.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.1hop.decay09.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.decay09/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.1hop.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.labelrnn.2hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.labelrnn.2hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreader.labelrnn.2hop.2layer.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.labelrnn.2hop.2layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2/torch.mreaderV2.1hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreaderV2.1hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/README.md ================================================ .fine means finetune, normal will be from epoch 5 .fine2 means finetune from epoch 10 or best model ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/convnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/convnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=cnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/qanet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/qanet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=qanet \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.3layer.fine.lr10.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.fine.lr10/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.01 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.3layer.fine.lr2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.fine.lr2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.3layer.fine.lr4.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.fine.lr4/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.004 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.3layer.fine.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer.fine/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/aug.train/'*,' \ --valid_input=$dir/train/$fold'.record,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.addneu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.addneu/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.fine.addneu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.fine.addneu/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.fine.trans.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi export EVFIRST=1 model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.fine.trans/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.fine.trans01.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi export EVFIRST=1 model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.fine.trans01/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --other_corpus_factor=0.1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.fine.trans05.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi export EVFIRST=1 model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.fine.trans05/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --other_corpus_factor=0.5 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,'$dir/trans/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.fine2.addneu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.fine2.addneu/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.hidden300.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.hidden300/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=300 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.labelrnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.labelrnn/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.latt10.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.latt10/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=10 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.latt80.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.latt80/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=80 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.maxmeanatt.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet.maxmeanatt/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=max,mean,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/rnetv2.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/rnetv2/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --model=RNetV2 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/torch.mreader.1hop.labelrnn.addneu.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.labelrnn.addneu/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --loss_type=add_neu_binary \ --use_label_rnn=1 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/torch.mreader.1hop.labelrnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop.labelrnn/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/torch.mreader.1hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/torch.mreader.2hop.labelrnn.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.2hop.labelrnn/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v2.old/torch.mreader.2hop.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v2/$fold/$SRC/torch.mreader.2hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_rnn=0 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/README.md ================================================ v3 change to use lstm as cell ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.3layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.3layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.3layer.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.3layer.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.3layer.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.3layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.noconcat.lossesdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.noconcat.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.noconcat.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.noconcat.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/rnet.topkattlast.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/rnet.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.aucsdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.f1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.2layer.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.decay09.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.decay09/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.1hop.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.1hop.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.labelrnn.2hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.labelrnn.2hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreader.labelrnn.2hop.2layer.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreader.labelrnn.2hop.2layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=1 \ --hop=2 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v3/torch.mreaderV2.1hop.2layer.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v3/$fold/$SRC/torch.mreaderV2.1hop.2layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --torch_cudnn_rnn=1 \ --concat_layers=0 \ --recurrent_dropout=1 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=0 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/README.md ================================================ v4 change to use lstm as cell ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/rnet.3layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.3layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/rnet.noconcat.lossesdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.noconcat.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/rnet.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.aucsdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.f1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.decay09.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop.decay09/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v4/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v4/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/README.md ================================================ v5 change to use lstm as cell ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/rnet.3layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.3layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/rnet.noconcat.lossesdecay.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.noconcat.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/rnet.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.adjf1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=adjusted_f1 \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.2layer.topkattlast.aucsdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.aucsdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.2layer.topkattlast.f1sdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.f1sdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=f1 \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.2layer.topkattlast.lossesdecay.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast.lossesdecay/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_learning_rate_weights=20 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.2layer.topkattlast.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.2layer.topkattlast/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att,last \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.decay09.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop.decay09/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.5 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v5/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v5/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/README.md ================================================ v6 change to use lstm as cell ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/rnet.3layer.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.3layer.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/rnet.3layer.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.3layer/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=3 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/rnet.noconcat.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet.noconcat/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/torch.mreader.1hop.decay09.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop.decay09/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.9 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v6/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v6/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 1200 \ --batch_sizes 32,16 \ --length_key content \ --encoder_type=rnn \ --cell=lstm \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=auc \ --decay_patience=1 \ --decay_factor=0.8 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/rnet.finetune6k.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/rnet.finetune6k/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/rnet.fixword.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/rnet.fixword/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/torch.mreader.1hop.finetune6k.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.finetune6k/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --num_finetune_words=6000 \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/torch.mreader.1hop.fixword.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop.fixword/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=0 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v7/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v7/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v8/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v8/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v8/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=2. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v9/rnet.sh ================================================ base=./mount dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/rnet/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=1 \ --recurrent_dropout=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/ai2018/sentiment/train.v2/v9/torch.mreader.1hop.sh ================================================ base=./mount if [ $SRC ]; then echo 'SRC:' $SRC else SRC='word.glove' echo 'use default SRC word.glove' fi dir=$base/temp/ai2018/sentiment/tfrecords/$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/ai2018/sentiment/model/v9/$fold/$SRC/torch.mreader.1hop/ num_epochs=30 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./torch-train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_char=1 \ --concat_layers=0 \ --recurrent_dropout=0 \ --use_label_rnn=0 \ --hop=1 \ --att_combiner='sfu' \ --rnn_no_padding=1 \ --model=MReader \ --use_self_match=1 \ --label_emb_height=20 \ --fold=$fold \ --use_label_att=1 \ --use_self_match=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'*,' \ --test_input=$dir/test/'*,' \ --info_path=$dir/info.pkl \ --emb_dim 300 \ --word_embedding_file=$dir/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --buckets 800,1200 \ --batch_sizes 32,16,8 \ --length_key content \ --encoder_type=rnn \ --cell=gru \ --keep_prob=0.7 \ --num_layers=1 \ --rnn_hidden_size=200 \ --encoder_output_method=topk,att \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.002 \ --decay_target=loss \ --decay_patience=1 \ --decay_factor=0.8 \ --decay_start_epoch_=1. \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/README.md ================================================ be sure to use eager mode train EAGER=1 sh ./train/word.sh ================================================ FILE: projects/common/lm/algos/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-10-11 22:14:50.914666 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf def loss_fn(model, inputs, targets, training=False): #targets = tf.transpose(targets, [1,0]) labels = tf.reshape(targets, [-1]) outputs = model(inputs, training=training) return tf.reduce_mean( tf.nn.sparse_softmax_cross_entropy_with_logits( labels=labels, logits=outputs)) ================================================ FILE: projects/common/lm/algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-10-11 16:56:08.992105 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow.contrib.cudnn_rnn.python.layers import cudnn_rnn from tensorflow.contrib.eager.python import tfe layers = tf.keras.layers import melt import wenzheng class PTBModel(tf.keras.Model): """LSTM for word language modeling. Model described in: (Zaremba, et. al.) Recurrent Neural Network Regularization http://arxiv.org/abs/1409.2329 See also: https://github.com/tensorflow/models/tree/master/tutorials/rnn/ptb """ def __init__(self, vocab_size, embedding_dim, hidden_dim, num_layers, dropout_ratio, concat_layers=False, use_cudnn_rnn=True): super(PTBModel, self).__init__() self.keep_ratio = 1 - dropout_ratio self.use_cudnn_rnn = use_cudnn_rnn self.embedding = wenzheng.Embedding(vocab_size, embedding_dim, FLAGS.word_embedding_file) self.rnn = melt.layers.CudnnRnn(num_layers, hidden_dim, keep_prob=1 - dropout_ratio, concat_layers=concat_layers, return_state=True, cell='gru') self.linear = layers.Dense( vocab_size, kernel_initializer=tf.random_uniform_initializer(-0.1, 0.1)) if not concat_layers: self._output_shape = [-1, 2 * hidden_dim] else: self._output_shape = [-1, 2 * hidden_dim * num_layers] def call(self, input_seq, training=False): """Run the forward pass of PTBModel. Args: input_seq: [length, batch] shape int64 tensor. training: Is this a training call. Returns: outputs tensors of inference. """ #input_seq = tf.transpose(input_seq, [1,0]) y = self.embedding(input_seq) if training: y = tf.nn.dropout(y, self.keep_ratio) y = self.rnn(y, training=training)[0] return self.linear(tf.reshape(y, self._output_shape)) ================================================ FILE: projects/common/lm/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer('bptt', 70, '') import gezi import melt logging = melt.logging import numpy as np import gezi class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) self.epoch_size = None self.batch_size = None self.data_npy = None self.data = None # https://github.com/tensorflow/models/blob/master/tutorials/rnn/ptb/reader.py # https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/eager/python/examples/rnn_ptb/rnn_ptb.py # TODO no shuffle each epoch here def make_batch(self, batch_size, filenames, bptt=None, **kwargs): bptt = bptt or FLAGS.bptt self.batch_size = batch_size if self.data is None: data_npy = np.load(filenames[0]) self.data = data_npy self.data_npy = data_npy self.epoch_size = ((len(np.concatenate(self.data_npy)) // batch_size) - 1) // bptt else: data_npy = self.data_npy with tf.device('/cpu:0'): if not tf.executing_eagerly(): if self.data is None: self.data_npy_ori = data_npy self.data_npy = np.concatenate(data_npy) data_npy = self.data_npy data_npy = self.data_npy if self.data is None: #self.data = tf.get_variable('input_%s' % self.subset, dtype=tf.int32, shape=data_npy.shape, initializer=tf.constant_initializer(data_npy), trainable=False) self.data = tf.get_variable('input_%s' % self.subset, dtype=tf.int32, shape=data_npy.shape,trainable=False) data_placeholder = tf.placeholder(tf.int32, data_npy.shape) data_init = self.data.assign(data_placeholder) sess = melt.get_session() sess.run(data_init, feed_dict={data_placeholder: data_npy}) data = self.data data_len = tf.size(data) batch_len = data_len // batch_size data = tf.reshape(data[:batch_size * batch_len], [batch_size, batch_len]) epoch_size = (batch_len - 1) // bptt assertion = tf.assert_positive( epoch_size, message="epoch_size == 0, decrease batch_size or bptt") with tf.control_dependencies([assertion]): epoch_size = tf.identity(epoch_size, name="epoch_size") i = tf.train.range_input_producer(epoch_size, shuffle=False).dequeue() x = tf.strided_slice(data, [0, i * bptt], [batch_size, (i + 1) * bptt]) x.set_shape([batch_size, bptt]) y = tf.strided_slice(data, [0, i * bptt + 1], [batch_size, (i + 1) * bptt + 1]) y.set_shape([batch_size, bptt]) class Iter(object): def __init__(self, x, y): self.x = x self.y = y def __iter__(self): return self def get_next(self): return self.x, self.y iter = Iter(x, y) return iter else: # in eager mode if tf.get_variable will be very slow... # epoch:0.02/1024 step:8600 elapsed:[1.312] batch_size:[32] batches/s:[76.23] insts/s:[2439] 1epoch:[1.40h] lr:[0.0010000] train_loss:[5.0710] valid_loss:[5.0503] class Iter(): def __init__(self, data): self.ori_data = data self.reset() def reset(self): self.i = 0 np.random.shuffle(self.ori_data) self.data = np.concatenate(self.ori_data) data_len = len(self.data) batch_len = data_len // batch_size self.data = self.data[:batch_size * batch_len].reshape([batch_size, batch_len]) def __iter__(self): return self def __next__(self): i = self.i data = self.data if i < data.shape[1]: slen = min(bptt, data.shape[1] - 1 - i) x = data[:, i:i + slen] y = data[:, i + 1:i + 1 + slen] self.i += bptt return x, y else: self.reset() raise StopIteration() return Iter(data_npy) def num_examples_per_epoch(self, mode): return self.epoch_size * self.batch_size ================================================ FILE: projects/common/lm/prepare/to-ids.glove.word.sh ================================================ python ./to-ids.py \ --vocab='/home/gezi/mount/temp/ai2018/sentiment/tfrecords/word.glove/vocab.txt' \ --idir='/home/gezi/other/tools/GloVe-sentiment-5k/' \ --odir='/home/gezi/mount/temp/lm/corpus/sentiment.word' ================================================ FILE: projects/common/lm/prepare/to-ids.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file to-ids.py # \author chenghuige # \date 2018-10-11 11:58:46.615350 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import gezi import numpy as np from pathlib import Path flags.DEFINE_string('vocab', '/home/gezi/mount/temp/ai2018/sentiment/tfrecords/char.glove/vocab.txt', '') flags.DEFINE_string('idir', '/home/gezi/other/tools/GloVe-sentiment-char/', '') flags.DEFINE_string('odir', '/home/gezi/mount/temp/lm/corpus/sentiment/', '') def main(_): vocab = gezi.Vocabulary(FLAGS.vocab) command = 'mkdir -p %s/valid' % FLAGS.odir print('command', command) os.system(command) command = 'mkdir -p %s/train' % FLAGS.odir print('command', command) os.system(command) # TODO Path will turn ./mount to mount... odir = Path(FLAGS.odir) print('odir', odir) def deal(file_, type): print(file_, type) ids_list = [] for i, line in enumerate(open(file_)): if i % 100000 == 0: print(i) line = line.rstrip() line = line.strip('"') line = line.strip() l = line.split(' ') l.insert(0, '') ids = [vocab.id(x) for x in l] #print(' '.join(map(str, ids)), file=out) ids_list.append(np.array(ids)) ids_list = np.array(ids_list) out_file = odir / type / 'ids.npy' print('out_file', out_file) np.save(out_file, ids_list) idir = Path(FLAGS.idir) deal(idir / 'text.valid', 'valid') deal(idir / 'text.train', 'train') if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/common/lm/prepare/to-ids.sh ================================================ ================================================ FILE: projects/common/lm/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read-records.py # \author chenghuige # \date 2018-10-11 16:44:51.910748 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os import melt import dataset FLAGS.valid_input = './mount/temp/lm/corpus/sentiment/valid/ids.npy' def main(_): melt.apps.init() if not tf.executing_eagerly(): ds = dataset.Dataset('valid') iter = ds.make_batch(32, [FLAGS.valid_input], bptt=70) x, y = iter.get_next() def run(sess, step): x_, y_ = sess.run([x, y]) #if step == 210: print(step, x_, y_) # print(len(x_), len(x_[0])) # exit(0) melt.flow.tf_flow(run) else: ds = dataset.Dataset('valid') iter = ds.make_batch(32, [FLAGS.valid_input], bptt=70) for i, (x, y) in enumerate(iter): #if i == 210: print(i, x, y) #exit(0) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/common/lm/train/char.concat.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.char fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.char.concat num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/char.emb.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.char fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.char.emb num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --word_embedding_file=./mount/temp/ai2018/sentiment/tfrecords/char.glove/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/char.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.char fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.char num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/char.small.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.char.small fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.char.small num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v1/train.concat.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.$SRC.concat num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v1/train.emb.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.$SRC.emb num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --word_embedding_file=./mount/temp/ai2018/sentiment/tfrecords/$SRC.glove/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v1/train.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.$SRC num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v2/train.concat.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/v2/sentiment.$SRC.concat num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v2/train.emb.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/v2/sentiment.$SRC.emb num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --word_embedding_file=./mount/temp/ai2018/sentiment/tfrecords/$SRC.glove/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/v2/train.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.$SRC fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/v2/sentiment.$SRC num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=200 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/word.concat.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.word fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.word.concat num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --concat_layers=1 \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/word.emb.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.word fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.word.emb num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --word_embedding_file=./mount/temp/ai2018/sentiment/tfrecords/char.glove/emb.npy \ --finetune_word_embedding=1 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train/word.sh ================================================ base=./mount dir=$base/temp/lm/corpus/sentiment.word fold=0 if [ $# == 1 ]; then fold=$1 fi if [ $FOLD ]; then fold=$FOLD fi model_dir=$base/temp/lm/model/sentiment.word num_epochs=5 mkdir -p $model_dir/epoch cp $dir/vocab* $model_dir cp $dir/vocab* $model_dir/epoch exe=./train.py if [ "$INFER" = "1" ]; then echo "INFER MODE" exe=./infer.py model_dir=$1 fold=0 fi if [ "$INFER" = "2" ]; then echo "VALID MODE" exe=./infer.py model_dir=$1 fold=0 fi python $exe \ --use_label_att=0 \ --use_self_match=0 \ --vocab $dir/vocab.txt \ --model_dir=$model_dir \ --train_input=$dir/train/'ids.npy,' \ --valid_input=$dir/valid/'ids.npy,' \ --emb_dim 300 \ --batch_size 32 \ --encoder_type=rnn \ --keep_prob=0.7 \ --num_layers=2 \ --rnn_hidden_size=100 \ --eval_interval_steps 1000 \ --metric_eval_interval_steps 1000 \ --save_interval_steps 1000 \ --save_interval_epochs=1 \ --valid_interval_epochs=1 \ --inference_interval_epochs=1 \ --freeze_graph=1 \ --optimizer=adam \ --learning_rate=0.001 \ --num_epochs=$num_epochs \ ================================================ FILE: projects/common/lm/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('concat_layers', False, '') import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from algos.loss import loss_fn #import algos.model as base from algos.model import PTBModel as Model from dataset import Dataset #import evaluate as ev # EAGER=1 python train.py # EAGER=1 python train.py --word_embedding_file ./mount/temp/ai2018/sentiment/tfrecords/char.glove/emb.npy def main(_): vocab = gezi.Vocabulary(FLAGS.vocab) # FLAGS.valid_input = './mount/temp/lm/corpus/sentiment/valid/ids.npy' # FLAGS.train_input = './mount/temp/lm/corpus/sentiment/train/ids.npy' # FLAGS.model_dir = './mount/temp/lm/model/sentiment' if not FLAGS.word_embedding_file else './mount/temp/lm/model/sentiment.pretrain' # FLAGS.batch_size_dim = 0 melt.apps.init() #ev.init() #model = getattr(base, FLAGS.model)() model = Model(vocab_size=vocab.size(), embedding_dim=FLAGS.emb_dim, hidden_dim=FLAGS.rnn_hidden_size, num_layers=FLAGS.num_layers, concat_layers=FLAGS.concat_layers, dropout_ratio=1 - FLAGS.keep_prob) logging.info(model) train = melt.apps.get_train() train(Dataset, model, loss_fn) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/README.md ================================================ # for single gpu you need to set CUDA... for one specfic gpu otherwise will teat to use multiple gpu(but not horovod) # run train + eval using horovod (deeep+wide, use index emb, field emb, one mlp horovodrun -np 8 sh ./train/test6.sh # use simple parse can get auc 0.7501 #evaluate only METRIC=1 sh ./train/test6.sh # pytorch read and train, ok # TODO however, loading model retrain using horovod now not work checkpoint = load_torch_model(model, latest_path) OOM horovodrun -np 8 sh ./torch-only-train-hvd/best-v0.sh # tf eager read and torch train, not ok , unfortunately due to tf conflict with torch, torch.cuda.set_device then not work.. horovodrun -np 8 sh ./torch-train/best-v0.sh #be careful you may need to clear gpu ... #----------some status not important for main purpose nc python read-test.py --batch_parse=0 nc python read-test.py different result batch_parse=1 is much faster speed much affected by text_dataset.py so if you change some thing there make sure to check speed not down ================================================ FILE: projects/feed/rank/tf/__init__.py ================================================ ================================================ FILE: projects/feed/rank/tf/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2019-07-26 23:14:46.546584 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('model', None, '') flags.DEFINE_string('field_file_path', '../input/feat_fields.old', '') flags.DEFINE_string('feat_file_path', '../input/feature_index', '') flags.DEFINE_string('emb_activation', None, '') flags.DEFINE_string('dense_activation', 'relu', '') flags.DEFINE_integer('max_feat_len', 100, '') flags.DEFINE_integer('hidden_size', 50, 'TODO should be emb dim') flags.DEFINE_bool('wide_addval', True, '') flags.DEFINE_bool('deep_addval', False, '') #flags.DEFINE_bool('deep_field', False, '') flags.DEFINE_string('deep_wide_combine', 'concat', 'concat or add') flags.DEFINE_string('pooling', 'sum', '') flags.DEFINE_bool('field_emb', False, 'if True better but more param') flags.DEFINE_bool('index_addone', True, 'will not support index addone false') flags.DEFINE_bool('rank_loss', False, '') flags.DEFINE_integer('feature_dict_size', 3200000, '') flags.DEFINE_integer('field_dict_size', 100, '') flags.DEFINE_integer('valid_multiplier', 10, '') flags.DEFINE_string('mlp_dims', None, 'use 50 better then None but more param') flags.DEFINE_float('mlp_drop', 0.2, '') flags.DEFINE_bool('deep_final_act', False, 'deep do not need final act relu') flags.DEFINE_bool('field_concat', False, '') #flags.DEFINE_integer('num_fields', 100, '') flags.DEFINE_bool('batch_parse', True, '') flags.DEFINE_bool('write_valid', False, '') ================================================ FILE: projects/feed/rank/tf/data/train_0 ================================================ 0 0 8a0d1501828636798|9d0299 19718i0l2wl6Lg 1:1 293:1 336:1 1903:0.5482 1925:0.5023 1309401:1 1309498:1 1309510:1 1309522:1 1309534:1 1309552:1 1309575:1 1309576:1 1309584:1 1360553:1 1366342:1 1367217:1 1388775:1 1394438:1 1403335:1 1436568:1 1436577:1 1436622:1 1436633:1 1438005:1 1514175:1 1640956:1 1736893:1 1814174:1 1923613:1 2452726:1 2453726:1 2453777:1 2453891:1 2453969:1 2619832:0.0023 2691168:0.0023 2725996:0.0023 2836556:0.0023 2908022:0.0023 2909661:1 2909665:1 3049648:1 3115657:1 3115764:1 3115967:1 3116062:1 3116129:1 0 0 1d31e2b996f6113f9a322736e7435bfac666fe218f61 20190704A0TED300 281:1 324:1 1409:0.69133 1429:0.25685 1437:0.59525 1309389:1 1309498:1 1309510:1 1309522:1 1309534:1 1309552:1 1309575:1 1311290:1 1342171:1 1366343:1 1368752:1 1381153:1 1395229:1 1395732:1 1425300:1 1436567:1 1436574:1 1436610:1 1436633:1 1438005:1 1514175:1 1640957:1 1736893:1 1814186:1 1923656:1 2452725:1 2453727:1 2453777:1 2453903:1 2454012:1 2617971:5.0E-5 2690796:5.0E-5 2725624:5.0E-5 2834496:5.0E-5 2836545:5.0E-5 2907552:5.0E-5 2910811:1 3115656:1 3115657:1 3115764:1 3115868:1 3116010:1 3116080:1 1 38 085b1500258270224|f2002f 19723b0x2Bluel 1:1 282:1 325:1 1470:0.99975 1472:1.98455 443563:1 1309390:1 1309498:1 1309510:1 1309522:1 1309548:1 1309562:1 1309567:1 1309576:1 1309584:1 1328406:1 1366342:1 1376566:1 1397656:1 1413552:1 1419967:1 1436567:1 1436584:1 1436611:1 1436861:1 1493080:1 1624614:1 1795616:1 2452725:1 2453760:1 2453777:1 2453874:1 2454014:1 2598657:0.9212 2618293:0.48455 2686628:0.9212 2690865:0.48455 2722926:0.9212 2725663:0.48455 2822039:0.9212 2834559:0.48455 2836337:0.9212 2836546:0.48455 2901719:0.9212 2907604:0.48455 2909661:1 2909665:1 3071683:1 3115726:1 3115832:1 3115995:1 3116068:1 3116138:1 0 0 c2ec869497032615179 20190722A0T3K900 5:1 94:1 347:1 6748:1 220970:1 459659:1 673189:1 886719:1 1100249:1 1309455:1 1309498:1 1309510:1 1309522:1 1309535:1 1309554:1 1309570:1 1309577:1 1309585:1 1335793:1 1366343:1 1384690:1 1397803:1 1428543:1 1430761:1 1431225:1 1436567:1 1436574:1 1436591:1 1436894:1 2026514:1 2075773:1 2172139:1 2240952:1 2294223:1 2380509:1 2452725:1 2453760:1 2453777:1 2453901:1 2454017:1 2461639:0.0969 2490070:0.0969 2568248:0.0048 2607556:0.85325 2629299:0.0048 2644286:0.0969 2675372:0.0048 2688562:0.85325 2700282:0.0969 2717625:0.0048 2724216:0.85325 2742965:0.0969 2799935:0.0048 2827941:0.85325 2836443:0.85325 2849629:0.0969 2887567:0.0048 2904459:0.85325 2909664:1 2909665:1 2923092:1 3115661:1 3115770:1 3115932:1 3116047:1 3116113:1 0 0 ceb8860916036210009 19722c0l0lF8nL 1:1 297:1 340:1 2069:1.4087 2091:1.3916 2093:0.051349998 86164:1 309462:1 539075:1 752605:1 966135:1 1179665:1 1309405:1 1309498:1 1309510:1 1309522:1 1309535:1 1309564:1 1309569:1 1309576:1 1310829:1 1362384:1 1366342:1 1396611:1 1429818:1 1433936:1 1436567:1 1436577:1 1436626:1 1436894:1 1437256:1 1508303:1 1638018:1 1735477:1 1809344:1 1919976:1 2452725:1 2453728:1 2453777:1 2453931:1 2453984:1 2612546:0.2018 2620643:0.0173 2689626:0.2018 2691300:0.0173 2724714:0.2018 2726140:0.0173 2831447:0.2018 2835798:0.0173 2836499:0.2018 2836560:0.0173 2905987:0.2018 2908229:0.0173 2909661:1 2909665:1 2915885:1 3115741:1 3115845:1 3115942:1 3116051:1 3116113:1 0 0 4f6c868906045957627 open_doc_prod8151307 1:1 273:1 316:1 1089:0.80439997 1090:2.0545 1309381:1 1309498:1 1309510:1 1309522:1 1309534:1 1309552:1 1309569:1 1309576:1 1309584:1 1331886:1 1366344:1 1369068:1 1395057:1 1397558:1 1409071:1 1418654:1 1436567:1 1436575:1 1436602:1 1436633:1 1437607:1 1511956:1 1639483:1 1736167:1 1811891:1 1921871:1 2452725:1 2453727:1 2453777:1 2453971:1 2460512:0.0206 2485221:0.0206 2604741:0.008400001 2616662:0.5545 2642380:0.0206 2687880:0.008400001 2690475:0.5545 2698944:0.0206 2723811:0.008400001 2725361:0.5545 2826039:0.008400001 2833881:0.5545 2836412:0.008400001 2836537:0.5545 2847441:0.0206 2903572:0.008400001 2907155:0.5545 2909661:1 2909665:1 2923430:1 3115657:1 3115764:1 3115975:1 3116064:1 3116130:1 0 0 269d866960026528594 tt_6713246803380142595 1:1 283:1 326:1 1515:1.0001 1534:0.31719998 1539:0.3171 78340:1 298897:1 531251:1 744781:1 958311:1 1171841:1 1309391:1 1309502:1 1309515:1 1309522:1 1309550:1 1309555:1 1309575:1 1309576:1 1310885:1 1351697:1 1366342:1 1366356:1 1378197:1 1405260:1 1405278:1 1412158:1 1436567:1 1436577:1 1436612:1 1436860:1 2062811:1 2152216:1 2225829:1 2281229:1 2363019:1 2440215:1 2452725:1 2453749:1 2453777:1 2453871:1 2453979:1 2600445:0.2849 2618407:1.0E-4 2621646:0.577 2651879:0.577 2687007:0.2849 2690893:1.0E-4 2706375:0.577 2723125:0.2849 2725754:1.0E-4 2823302:0.2849 2834644:1.0E-4 2836359:0.2849 2836547:1.0E-4 2907618:1.0E-4 2909661:1 2910234:1 3115676:1 3115780:1 3115933:1 3116054:1 3116114:1 0 0 328e99001215231367 19716b0x2e3H77 1:1 265:1 308:1 733:0.54865 749:0.6365 27809:1 243791:1 480720:1 694250:1 907780:1 1121310:1 1309373:1 1309505:1 1309521:1 1309527:1 1309550:1 1309558:1 1309575:1 1309576:1 1310874:1 1326032:1 1366342:1 1405410:1 1405947:1 1405948:1 1436567:1 1436584:1 1436595:1 1436884:1 2036644:1 2097753:1 2252552:1 2314333:1 2452725:1 2453749:1 2453788:1 2453884:1 2454016:1 2615453:0.04865 2690219:0.04865 2724948:0.04865 2833132:0.04865 2836529:0.04865 2906842:0.04865 2909661:1 3115714:1 3115818:1 3115936:1 3116058:1 3116124:1 0 0 d756A00000852A4CBA 19711k0x3X61Ac 1:1 261:1 304:1 65171:1 284441:1 518082:1 731612:1 945142:1 1158672:1 1309369:1 1309498:1 1309510:1 1309522:1 1309547:1 1309556:1 1309575:1 1309576:1 1310760:1 1366343:1 1405460:1 1412594:1 1414012:1 1419937:1 1436567:1 1436584:1 1436591:1 1436857:1 2056550:1 2138356:1 2216086:1 2274080:1 2350519:1 2429372:1 2452725:1 2453771:1 2453777:1 2453879:1 2454014:1 2526337:0.442 2624174:0.442 2659534:0.442 2709841:0.442 2769297:0.442 2867815:0.442 2909661:1 2910763:1 3068618:1 3115687:1 3115792:1 3115934:1 3116054:1 3116118:1 0 0 943e861755037410716 19722k0x1fNB26 6:1 139:1 349:1 632:1.54365 654:0.84174997 660:1.00245 195725:1 433752:1 648636:1 862166:1 1075696:1 1289226:1 1309457:1 1309498:1 1309510:1 1309522:1 1309534:1 1309560:1 1309567:1 1309577:1 1309584:1 1327680:1 1366342:1 1377074:1 1379220:1 1406681:1 1410408:1 1411277:1 1436567:1 1436584:1 1436593:1 1436893:1 1488532:1 1616110:1 1716524:1 1790881:1 1899539:1 2004320:1 2452725:1 2453733:1 2453777:1 2453913:1 2453969:1 2615082:0.043649998 2690152:0.043649998 2724901:0.043649998 2832991:0.043649998 2836527:0.043649998 2906701:0.043649998 2909664:1 2909665:1 2980181:1 3115717:1 3115823:1 3115896:1 3116019:1 3116088:1 ================================================ FILE: projects/feed/rank/tf/dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-26 23:00:24.215922 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from text_dataset import Dataset as TextDataset from tfrecord_dataset import Dataset as TFRecordDataset ================================================ FILE: projects/feed/rank/tf/eager-train/best-v0.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=1 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/eager.$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/err/torch-only-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-train.py # \author chenghuige # \date 2019-08-02 01:05:59.741965 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F from pyt.dataset import * from pyt.model import * import pyt.model as base import evaluate as ev import loss import melt def main(_): #FLAGS.torch_only = True FLAGS.torch = True melt.apps.init() fit = melt.apps.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier FLAGS.eval_batch_size = 512 * 10 print('---------eval_batch_size', FLAGS.eval_batch_size) #model_name = FLAGS.model model_name = 'WideDeep' model = getattr(base, model_name)() loss_fn = nn.BCEWithLogitsLoss() td = TD() files = gezi.list_files('../input/train/*') train_ds = get_dataset(files, td) train_dl = DataLoader(ds, FLAGS.batch_size, shuffle=True) files = gezi.list_files('../input/valid/*') valid_ds = get_dataset(files, td) valid_dl = DataLoader(valid_ds, FLAGS.eval_batch_size) valid_dl2 = DataLoader(valid_ds, FLAGS.batch_size) fit(model, loss_fn, dataset=train_dl, valid_dataset=valid_dl, valid_dataset2=valid_dl2 eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, #write_valid=FLAGS.write_valid) write_valid=False, ) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-28 08:43:41.067128 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from sklearn.metrics import roc_auc_score, log_loss import gezi dataset = None def evaluate(y, y_): y_ = gezi.sigmoid(y_) auc = roc_auc_score(y, y_) loss = log_loss(y, y_) return [auc, loss], ['auc', 'loss'] def valid_write(ids, labels, predicts, out): for id, label, predict in zip(ids, labels, predicts): print('{},{},{:.3f}'.format(id, label, gezi.sigmoid(predict)), file=out) ================================================ FILE: projects/feed/rank/tf/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2019-07-27 22:33:36.314010 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS import glob from tqdm import tqdm import multiprocessing from multiprocessing import Value, Manager counter = Value('i', 0) import gezi import melt from text_dataset import Dataset import tensorflow as tf dataset = None def get_out_file(infile): infile_ = os.path.basename(infile) ofile_ = infile_ + '.record' ofile = os.path.join(FLAGS.out_dir, ofile_) return ofile def build_features(infile): ofile = get_out_file(infile) print('----------writing to', ofile) with melt.tfrecords.Writer(ofile) as writer: for line in tqdm(open(infile)): fields = line.rstrip().split('\t') if len(fields) > 4: label = int(fields[0]) id = '{}\t{}'.format(fields[2], fields[3]) feat_id, feat_field, feat_value = dataset.get_feat(fields[4:]) assert len(feat_id) == len(feat_value), "len(feat_id) == len(feat_value) -----------------" assert len(feat_id) == len(feat_field) feature = { 'label': melt.int64_feature(label), 'id': melt.bytes_feature(id), 'index': melt.int64_feature(feat_id), 'field': melt.int64_feature(feat_field), 'value': melt.float_feature(feat_value) } record = tf.train.Example(features=tf.train.Features(feature=feature)) writer.write(record) global counter with counter.get_lock(): counter.value += 1 def main(_): global dataset dataset = Dataset() pool = multiprocessing.Pool() files = glob.glob(FLAGS.input) print('input', FLAGS.input) if not os.path.exists(FLAGS.out_dir): print('make new dir: [%s]' % FLAGS.out_dir, file=sys.stderr) os.makedirs(FLAGS.out_dir) pool.map(build_features, files) pool.close() pool.join() print('num_records:', counter.value) out_file = '{}/num_records.txt'.format(FLAGS.out_dir) gezi.write_to_txt(counter.value, out_file) if __name__ == '__main__': flags.DEFINE_string('input', None, '') flags.DEFINE_string('out_dir', None, '') flags.DEFINE_string('mode', None, '') absl_app.run(main) ================================================ FILE: projects/feed/rank/tf/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2019-07-28 15:15:35.162774 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf keras = tf.keras from keras import backend as K def binary_crossentropy_with_ranking(y_true, y_pred): """ Trying to combine ranking loss with numeric precision""" # first get the log loss like normal logloss = K.mean(K.binary_crossentropy(y_pred, y_true), axis=-1) # next, build a rank loss # clip the probabilities to keep stability y_pred_clipped = K.clip(y_pred, K.epsilon(), 1-K.epsilon()) # translate into the raw scores before the logit y_pred_score = K.log(y_pred_clipped / (1 - y_pred_clipped)) # determine what the maximum score for a zero outcome is y_pred_score_zerooutcome_max = K.max(y_pred_score * K.cast(y_true <1, tf.float32)) # determine how much each score is above or below it rankloss = y_pred_score - y_pred_score_zerooutcome_max # only keep losses for positive outcomes rankloss = rankloss * y_true # only keep losses where the score is below the max rankloss = K.square(K.clip(rankloss, -100, 0)) # average the loss for just the positive outcomes above = K.sum(rankloss, axis=-1) below = K.sum(K.cast(y_true > 0, tf.float32)) + 1. rankloss = above / below # return (rankloss + 1) * logloss - an alternative to try return rankloss + logloss ================================================ FILE: projects/feed/rank/tf/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-07-26 20:15:30.419843 # \Description TODO maybe input should be more flexible, signle feature, cross, cat, lianxu choumi # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import gezi import melt import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS keras = tf.keras from keras import backend as K import numpy as np # output logits! class Wide(keras.Model): def __init__(self): super(Wide, self).__init__() self.emb = keras.layers.Embedding(FLAGS.feature_dict_size + 1, 1) if FLAGS.wide_addval: self.mult = keras.layers.Multiply() self.bias = K.variable(value=np.array([0.])) def call(self, input): ids = input['index'] values = input['value'] x = self.emb(ids) x = K.squeeze(x, -1) # strage, eval for wide only addval will got worse result if FLAGS.wide_addval: x = self.mult([x, values]) x = K.sum(x,1) x = x + self.bias return x class Deep(keras.Model): def __init__(self): super(Deep, self).__init__() # # do not need two many deep embdding, only need some or cat not cross TODO # # STILL OOM FIXME... # if FLAGS.hidden_size > 50: # print('---------------put emb on cpu') # with tf.device('/cpu:0'): # self.emb = keras.layers.Embedding(FLAGS.feature_dict_size + 1, FLAGS.hidden_size) # else: self.emb = keras.layers.Embedding(FLAGS.feature_dict_size + 1, FLAGS.hidden_size) self.emb_dim = FLAGS.hidden_size if FLAGS.field_emb: self.field_emb = keras.layers.Embedding(FLAGS.field_dict_size + 1, FLAGS.hidden_size) self.emb_dim += FLAGS.hidden_size self.mult = keras.layers.Multiply() self.emb_activation = None if FLAGS.emb_activation: self.emb_activation = keras.layers.Activation(FLAGS.emb_activation) self.bias = K.variable(value=np.array([0.])) if not FLAGS.mlp_dims: self.mlp = None else: dims = [int(x) for x in FLAGS.mlp_dims.split(',')] self.mlp = melt.layers.Mlp(dims, activation=FLAGS.dense_activation, drop_rate=FLAGS.mlp_drop) act = FLAGS.dense_activation if FLAGS.deep_final_act else None self.dense = keras.layers.Dense(1, activation=act) if FLAGS.pooling != 'allsum': self.pooling = melt.layers.Pooling(FLAGS.pooling) def call(self, input, training=False): ids = input['index'] values = input['value'] fields = input['field'] # if FLAGS.hidden_size > 50: # with tf.device('/cpu:0'): # x = self.emb(ids) # else: x = self.emb(ids) if FLAGS.field_emb: x = K.concatenate([x, self.field_emb(fields)], axis=-1) if FLAGS.deep_addval: values = K.expand_dims(values, -1) x = self.mult([x, values]) if FLAGS.field_concat: num_fields = FLAGS.field_dict_size #x = tf.math.unsorted_segment_sum(x, fields, num_fields) x = melt.unsorted_segment_sum_emb(x, fields, num_fields) # like [512, 100 * 50] x = K.reshape(x, [-1, num_fields * self.emb_dim]) else: if FLAGS.pooling == 'allsum': x = K.sum(x, 1) else: assert FLAGS.index_addone, 'can not calc length for like 0,1,2,0,0,0' c_len = melt.length(ids) x = self.pooling(x, c_len) if self.emb_activation: x = self.emb_activation(x + self.bias) if self.mlp: x = self.mlp(x, training=training) x = self.dense(x) x = K.squeeze(x, -1) return x class WideDeep(keras.Model): def __init__(self): super(WideDeep, self).__init__() self.wide = Wide() self.deep = Deep() self.dense = keras.layers.Dense(1) # TODO verify we can remove training ? since we use K.Phrase() when sess.run def call(self, input, training=False): w = self.wide(input) d = self.deep(input, training=training) if FLAGS.deep_wide_combine == 'concat': x = K.stack([w, d], 1) x = self.dense(x) x = K.squeeze(x, -1) else: x = w + d return x ================================================ FILE: projects/feed/rank/tf/mpi.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file mpi.py # \author chenghuige # \date 2019-07-30 08:29:49.196748 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os # mpi_helloworld.py from mpi4py import MPI comm = MPI.COMM_WORLD size = comm.Get_size() rank = comm.Get_rank() node_name = MPI.Get_processor_name() # get the name of the node print('Hello world from process %d at %s.' % (rank, node_name)) ================================================ FILE: projects/feed/rank/tf/prepare/gen-records.sh ================================================ sh ./prepare/gen-valid.sh sh ./prepare/gen-train.sh ================================================ FILE: projects/feed/rank/tf/prepare/gen-train.sh ================================================ python ./gen-records.py \ --input=../input/train/train* \ --out_dir=../input/tfrecord/train ================================================ FILE: projects/feed/rank/tf/prepare/gen-valid.sh ================================================ python ./gen-records.py \ --input=../input/valid/valid* \ --out_dir=../input/tfrecord/valid/ ================================================ FILE: projects/feed/rank/tf/pyt/__init__.py ================================================ ================================================ FILE: projects/feed/rank/tf/pyt/dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-08-03 13:06:43.588260 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import subprocess import linecache import torch from torch.utils.data import Dataset, ConcatDataset ## TODO relative path ...? #from ..text_dataset import Dataset as TD #from projects.feed.rank.tf.text_dataset import Dataset as TD #from torch.nn.utils.rnn import pack_sequence class TextDataset(Dataset): def __init__(self, filename, td): self._filename = filename self._total_data = int(subprocess.check_output("wc -l " + filename, shell=True).split()[0]) self.td = td def __getitem__(self, idx): line = linecache.getline(self._filename, idx + 1) # lis, list, list, scalar, scalar feat_id, feat_field, feat_value, [label], [id] = self.td.parse_line2(line) ## this will use lele.DictPadCollate #return {'index': feat_id, 'field': feat_field, 'value': feat_value, 'id': id}, label ## this will use lele.DictPadCollate2 but this is slow.. return {'index': torch.tensor(feat_id), 'field': torch.tensor(feat_field), 'value': torch.tensor(feat_value), 'id': id}, torch.tensor(label) def __len__(self): return self._total_data def get_dataset(files, td): assert files datasets = [TextDataset(x, td) for x in files] return ConcatDataset(datasets) if __name__=="__main__": pass ================================================ FILE: projects/feed/rank/tf/pyt/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-08-01 23:08:36.979020 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F import lele import numpy as np # output logits! class Wide(nn.Module): def __init__(self): super(Wide, self).__init__() self.emb = nn.Embedding(FLAGS.feature_dict_size + 1, 1) #self.bias = torch.zeros(1, requires_grad=True).cuda() # https://discuss.pytorch.org/t/tensors-are-on-different-gpus/1450/28 # without below multiple gpu will fail # RuntimeError: binary_op(): expected both inputs to be on same device, but input a is on cuda:0 and input b is on cuda:7 self.bias = nn.Parameter(torch.zeros(1)) def forward(self, input): # print('--------------', input['index'][0]) # print(len(input['index']), len(input['index'][0])) # exit(0) ids = input['index'] values = input['value'] x = self.emb(ids) x = x.squeeze(-1) # strange, eval for wide only addval will got worse result if FLAGS.wide_addval: x = x * values x = x.sum(1) x = x + self.bias return x class Deep(nn.Module): def __init__(self): super(Deep, self).__init__() self.emb = nn.Embedding(FLAGS.feature_dict_size + 1, FLAGS.hidden_size) self.emb_dim = FLAGS.hidden_size if FLAGS.field_emb: self.field_emb = nn.Embedding(FLAGS.field_dict_size + 1, FLAGS.hidden_size) self.emb_dim += FLAGS.hidden_size olen = self.emb_dim if not FLAGS.mlp_dims: self.mlp = None else: dims = [int(x) for x in FLAGS.mlp_dims.split(',')] self.mlp = nn.Linear(self.emb_dim, dims[0]) # self.mlp = melt.layers.Mlp(dims, activation=FLAGS.dense_activation, drop_rate=FLAGS.mlp_drop) olen = dims[-1] act = FLAGS.dense_activation if FLAGS.deep_final_act else None self.dense = nn.Linear(olen, 1) if FLAGS.pooling != 'allsum': self.pooling = self.pooling = lele.layers.Pooling(FLAGS.pooling) def forward(self, input): ids = input['index'] values = input['value'] fields = input['field'] ids_mask = ids.eq(0) # if FLAGS.hidden_size > 50: # with tf.device('/cpu:0'): # x = self.emb(ids) # else: x = self.emb(ids) #print('x', x) if FLAGS.field_emb: x = torch.cat([x, self.field_emb(fields)], -1) if FLAGS.deep_addval: values = torch.unsqueeze(values, -1) x = x* values if FLAGS.field_concat: num_fields = FLAGS.field_dict_size #x = tf.math.unsorted_segment_sum(x, fields, num_fields) x = melt.unsorted_segment_sum_emb(x, fields, num_fields) # like [512, 100 * 50] x = K.reshape(x, [-1, num_fields * self.emb_dim]) else: if FLAGS.pooling == 'allsum': x = torch.sum(x, 1) else: assert FLAGS.index_addone, 'can not calc length for like 0,1,2,0,0,0' x = self.pooling(x, ids_mask) #print('x after pooling', x) if self.mlp: x = self.mlp(x) #print('x after mlp', x) x = F.dropout(F.relu(x), p=FLAGS.mlp_drop, training=self.training) #print('x after dropout', x) x = self.dense(x) x = x.squeeze(-1) #exit(0) #-----FIXME why large value ? return x class WideDeep(nn.Module): def __init__(self): super(WideDeep, self).__init__() self.wide = Wide() self.deep = Deep() self.dense = nn.Linear(2, 1) # TODO verify we can remove training ? since we use K.Phrase() when sess.run def forward(self, input): w = self.wide(input) d = self.deep(input) if FLAGS.deep_wide_combine == 'concat': x = torch.stack([w, d], 1) x = self.dense(x) x = x.squeeze(-1) else: x = w + d return x ================================================ FILE: projects/feed/rank/tf/read/README.md ================================================ test2 is normal sess.run not eager mode ================================================ FILE: projects/feed/rank/tf/read/horovod.sh ================================================ horovodrun -np=2 python read-test2.py ================================================ FILE: projects/feed/rank/tf/read/read-record.sh ================================================ python ./read-record.py \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --batch_size=500 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/read/read-text.sh ================================================ python ./read-text.py \ --train_input=../input/train \ --valid_input=../input/valid \ --batch_size=500 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/read-record.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tfrecord_dataset import Dataset import tensorflow as tf tf.enable_eager_execution() dataset = Dataset('train') da = dataset.make_batch() for i, batch in enumerate(da): print('---------------------------', i) print(batch[0]['id'], batch[0]['id'].shape, batch[1].shape, batch[0]['index'].shape) #print(batch[0]['index'][0]) #print(batch[0]['field'][0]) if i == 1: exit(0) exit(0) ================================================ FILE: projects/feed/rank/tf/read-simple.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read-simple.py # \author chenghuige # \date 2019-07-30 22:29:54.489845 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf #tf.enable_eager_execution() #创建一个Dataset对象 dataset = tf.data.Dataset.from_tensor_slices([1,2,3,4,5,6,7,8,9, 10]) '''合成批次''' dataset=dataset.batch(3) #创建一个迭代器 iterator = dataset.make_one_shot_iterator() #get_next()函数可以帮助我们从迭代器中获取元素 element = iterator.get_next() #遍历迭代器,获取所有元素 with tf.Session() as sess: for i in range(9): print(sess.run(element)) ================================================ FILE: projects/feed/rank/tf/read-test.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from text_dataset import Dataset import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tf.enable_eager_execution() import melt def main(_): FLAGS.train_input = '../input/train.small' FLAGS.valid_input = '../input/train.small' FLAGS.batch_size = 4 FLAGS.feat_file_path='../input/feature_index' FLAGS.field_file_path='../input/feat_fields.old' #melt.init() dataset = Dataset('train') #dataset = Dataset('valid') da = dataset.make_batch(4) # #as for melt eager not repeat mode will get same sequence each epoch if seed is the same # for epoch in range(2): # for i, batch in enumerate(da): # print(i, batch[1], batch[0]['id']) for i, batch in enumerate(da): print('---------------------------', i) #print(batch[0]['id']) print(batch[0]['id'], batch[0]['id'].shape, batch[1].shape, batch[0]['index'].shape) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/read-test2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from text_dataset import Dataset import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import melt #非eager模式 melt是按照step控制轮次的 使用的是 repeat 模式 #eager模式 melt 非repeate # notcie input data 10 lines def main(_): FLAGS.train_input = '../input/train.small' FLAGS.valid_input = '../input/train.small' FLAGS.batch_size = 4 FLAGS.feat_file_path='../input/feature_index' FLAGS.field_file_path='../input/feat_fields.old' melt.init() dataset = Dataset('train') #dataset = Dataset('valid') iter = dataset.make_batch() op = iter.get_next() print('---batch_size', dataset.batch_size, FLAGS.batch_size) sess = melt.get_session() print('----sess', sess) if not FLAGS.use_horovod: for epoch in range(2): for i in range(3): batch = sess.run(op) print(epoch, i, len(batch[0]['id']), batch[0]['id']) else: for epoch in range(2): for i in range(3): batch = sess.run(op) print(epoch, i, len(batch[0]['id']), batch[0]['id']) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/read-test3.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from text_dataset import Dataset import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import melt #非eager模式 melt是按照step控制轮次的 使用的是 repeat 模式 #eager模式 melt 非repeate #eager模式因为非repeat 所以最后才会出现small batch 变成补0 #如果是repeat模式不会的 repeat 模式 训练会比较安全。。 完全按照step来。。 TODO eager模式 当前框架按照非repeate 最后一组有风险 对应parse batch模式 CHECK #而且非repeate模式 如果每个epoch seed相同数据顺序是完全一致的 repeat没关系 # notcie input data 10 lines def main(_): FLAGS.train_input = '../input/train.small' FLAGS.valid_input = '../input/train.small' FLAGS.batch_size = 4 FLAGS.feat_file_path='../input/feature_index' FLAGS.field_file_path='../input/feat_fields.old' melt.init() #dataset = Dataset('train') dataset = Dataset('valid') iter = dataset.make_batch() op = iter.get_next() print('---batch_size', dataset.batch_size, FLAGS.batch_size) sess = melt.get_session() print('----sess', sess) try: sess.run(iter.initializer) except Exception: pass if not FLAGS.use_horovod: #for epoch in range(2): # for i in range(int(10 / FLAGS.batch_size + 0.5)): # batch = sess.run(op) # print(epoch, i, len(batch[0]['id'])) for i in range(4): batch = sess.run(op) print(i, batch[0]['id']) else: for epoch in range(1): for i in range(3): batch = sess.run(op) print(epoch, i, len(batch[0]['id'])) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/read-text.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from text_dataset import Dataset import tensorflow as tf tf.enable_eager_execution() dataset = Dataset('train') da = dataset.make_batch() for i, batch in enumerate(da): print(i, batch[0]) #print(batch[0]['index'][0]) #print(batch[0]['field'][0]) if i == 2: exit(0) ================================================ FILE: projects/feed/rank/tf/test/read-torch-dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read-torch-dataset.py # \author chenghuige # \date 2019-08-03 14:08:33.314862 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from torch.utils.data import DataLoader import gezi import lele from pyt.dataset import * from text_dataset import Dataset as TD #import numpy as np import horovod.torch as hvd hvd.init() torch.cuda.set_device(hvd.local_rank()) #seed = 1024 #torch.cuda.manual_seed(seed) device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") files = gezi.list_files('../input/train.small/*') td = TD() ds = get_dataset(files, td) #import tensorflow as tf sampler = ds sampler = torch.utils.data.distributed.DistributedSampler( ds, num_replicas=hvd.size(), rank=hvd.rank()) # sampler = torch.utils.data.RandomSampler(sampler) #sampler = torch.utils.data.RandomSampler(ds) # # seems here shuffle not work.. # sampler = torch.utils.data.distributed.DistributedSampler( # sampler, num_replicas=hvd.size(), rank=hvd.rank(), # shuffle=True) #collate_fn = lele.DictPadCollate2() collate_fn = lele.DictPadCollate() dl = DataLoader(ds, 2, collate_fn=collate_fn, sampler=sampler) print(len(ds), len(dl), len(dl.dataset)) for epoch in range(2): if dl.sampler and hasattr(dl.sampler, 'set_epoch'): dl.sampler.set_epoch(epoch) for i, (x, y) in enumerate(dl): for j in range(len(y)): print('epoch', epoch, 'i', i, 'j', j, x['id'][j]) # #print('--------------', d) # print(x['index'].shape, x['index'].dtype) # print(x['field'].shape, x['field'].dtype) # print(x['value'].shape, x['value'].dtype) # print(x['id'].shape, x['id'].dtype) # print(y.shape) # print(x) # for key in x: # print(key, type(x[key][0]), type(x[key]), x[key][0].dtype) # if i == 2: # break # dl = DataLoader(ds, 2, # collate_fn=lele.DictPadCollate()) # import itertools # d = itertools.cycle(dl) # for i in range(20): # x, y = next(d) # print(x['id']) # print('================ end') ================================================ FILE: projects/feed/rank/tf/test/test-torch-hvd.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-hvd-test.py # \author chenghuige # \date 2019-08-06 11:39:03.209243 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from torch.utils.data import DataLoader import gezi import lele import melt melt.init() #import horovod.tensorflow as hvd #import horovod.tensorflow as hvd # from pyt.dataset import * # from text_dataset import Dataset as TD import numpy as np #import horovod.tensorflow as hvd import horovod.torch as hvd hvd.init() for i in range(5): print(i) ================================================ FILE: projects/feed/rank/tf/text_dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-26 23:00:24.215922 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import melt logging = melt.logging import numpy as np from config import * class Dataset(melt.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) self.Type = tf.data.TextLineDataset self.batch_parse = FLAGS.batch_parse self.index_addone = int(FLAGS.index_addone) assert self.index_addone self.max_feat_len = FLAGS.max_feat_len self.field_id = {} self.feat_to_field = {} self.load_feature_files() self.batch_size = melt.batch_size() #---np.float32 much slower.. 1.0 -> 1.5h per epoch.. self.float_fn = float if self.batch_parse else np.float32 # feature idx start from 4 self.start = 4 def load_feature_files(self): self.field_id = {} for line in open(FLAGS.feat_file_path, 'r'): if line == '': break line = line.rstrip() fields = line.split('\t') assert len(fields) == 2 #----------- +1 #fid = int(fields[1]) - 1 + FLAGS.index_addone #fid = int(fields[1]) - 1 + self.index_addone fid = int(fields[1]) tokens = fields[0].split('\a') if tokens[0] not in self.field_id: #----------- +1 #self.field_id[tokens[0]] = len(self.field_id) + self.index_addone self.field_id[tokens[0]] = len(self.field_id) + 1 self.feat_to_field[fid] = self.field_id[tokens[0]] logging.info('----num fields', len(self.field_id)) def get_feat(self, fields): num_features = len(fields) feat_id = [None] * num_features feat_field = [None] * num_features feat_value = [None] * num_features for i in range(num_features): tokens = fields[i].split(':') #assert len(tokens) == 2 ## well do as less as possible if -1 + 1 then 0.9 h -> 0.97 h.. #feat_id[i] = int(tokens[0]) - 1 + self.index_addone feat_id[i] = int(tokens[0]) feat_field[i] = self.feat_to_field[feat_id[i]] feat_value[i] = self.float_fn(tokens[1]) return feat_id, feat_field, feat_value #-----------by this way decode line by line , more powerfull, but slower if batch parse then you must have fixed batch size! 1epoch:[2.69h] batch parse 2.03h def parse_line(self, line): fields = line.decode().split('\t') #need np.float32 if float32 tf complain double .., but np.lofat32 is much slower then float label = np.float32(fields[0]) id = '{}\t{}'.format(fields[2], fields[3]) feat_id, feat_field, feat_value = self.get_feat(fields[self.start:]) # need [label] consider tfrecord generation return feat_id, feat_field, feat_value, [label], [id] def parse_line2(self, line): fields = line.split('\t') #need np.float32 if float32 tf complain double .., but np.lofat32 is much slower then float label = np.float32(fields[0]) id = '{}\t{}'.format(fields[2], fields[3]) feat_id, feat_field, feat_value = self.get_feat(fields[self.start:]) # need [label] consider tfrecord generation return feat_id, feat_field, feat_value, [label], [id] def line_parse_(self, line): feat_id, feat_field, feat_value, label, id = \ tf.py_func(self.parse_line, [line], [tf.int64, tf.int64, tf.float32, tf.float32, tf.string]) feat_id.set_shape([None]) feat_field.set_shape([None]) feat_value.set_shape([None]) label.set_shape([1]) id.set_shape([1]) # label id shape like (batch_size,) return {'index': feat_id, 'field': feat_field, 'value': feat_value, 'id': tf.squeeze(id, -1)}, tf.squeeze(label, -1) # https://stackoverflow.com/questions/52284951/tensorflow-py-func-typeerror-with-tf-data-dataset-output def parse_batch(self, feat_list, batch_size): # def parse_batch(self, feat_list): # batch_size = self.batch_size feat_ids = np.zeros((batch_size, self.max_feat_len), dtype=np.int64) feat_fields = np.zeros((batch_size, self.max_feat_len), dtype=np.int64) feat_values = np.zeros((batch_size, self.max_feat_len), dtype=np.float32) labels = np.zeros(batch_size, dtype=np.float32) ids = [''] * batch_size # ''means not effective id, usefull for batch_parse + not repeat final batch with padding elments cur_max_feat_len = 0 for i, feat_line in enumerate(feat_list): # python 3 need decode fields = feat_line.decode().split('\t') assert len(fields) > self.start, fields #fields = feat_line.split('\t') labels[i] = float(fields[0]) ids[i] = '{}\t{}'.format(fields[2], fields[3]) feat_id, feat_field, feat_value = self.get_feat(fields[self.start:]) #assert len(feat_id) == len(feat_value), "len(feat_id) == len(feat_value) -----------------" trunc_len = min(len(feat_id), self.max_feat_len) #---也许是因为批量写速度比逐个访问numpy数组位置快(原地逐个访问) feat_ids[i, :trunc_len] = feat_id[:trunc_len] feat_fields[i, :trunc_len] = feat_field[:trunc_len] feat_values[i, :trunc_len] = feat_value[:trunc_len] cur_max_feat_len = max(cur_max_feat_len, trunc_len) ## even here [:i, :cur..] still final batch size is same not small # feat_ids = feat_ids[:i, :cur_max_feat_len] # feat_fields = feat_fields[:i, :cur_max_feat_len] # feat_values = feat_values[:i, :cur_max_feat_len] feat_ids = feat_ids[:, :cur_max_feat_len] feat_fields = feat_fields[:, :cur_max_feat_len] feat_values = feat_values[:, :cur_max_feat_len] return feat_ids, feat_fields, feat_values, labels, ids def batch_parse_(self, line, batch_size): #def batch_parse_(self, line): # batch_size = self.batch_size #tf.py_func(self.parse_batch, [line, batch_size], #tf.py_func(self.parse_batch, [line], feat_ids, feat_fields, feat_values, labels, ids = \ tf.py_func(self.parse_batch, [line, batch_size], [tf.int64, tf.int64, tf.float32, tf.float32, tf.string]) #---for pyfunc you need to set shape.. otherwise first dim unk strange for keras layer TODO FIXME feat_ids.set_shape((batch_size, None)) feat_fields.set_shape((batch_size, None)) feat_values.set_shape((batch_size, None)) return {'index': feat_ids, 'field': feat_fields, 'value': feat_values, 'id': ids}, labels def parse(self, line, batch_size): if self.batch_parse: return self.batch_parse_(line, batch_size) else: return self.line_parse_(line) # def parse(self, line): # if self.batch_parse: # return self.batch_parse_(line) # else: # return self.line_parse_(line) ================================================ FILE: projects/feed/rank/tf/tfrecord_dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-26 23:00:24.215922 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import melt import numpy as np from config import * class Dataset(melt.Dataset): def __init__(self, subset='valid'): super(Dataset, self).__init__(subset) # only support line parse not batch parse since here parse_single_example # so slower then text + pyfunc due to they use batch parse def parse(self, example): features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), 'index': tf.VarLenFeature(tf.int64), 'field': tf.VarLenFeature(tf.int64), 'value': tf.VarLenFeature(tf.float32), } features = tf.parse_single_example(example, features=features_dict) print(features) melt.sparse2dense(features) y = features['label'] y = tf.cast(y, tf.float32) del features['label'] x = features return x, y ================================================ FILE: projects/feed/rank/tf/torch-hvd-train/best-v0-small.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-hvd-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/train_0 \ --valid_input=../input/valid/valid_0 \ --model_dir=../input/model/torch.hvd.$model.best.v0.small \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-hvd-train/best-v0.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-hvd-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/torch.hvd.$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-hvd-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-train.py # \author chenghuige # \date 2019-08-02 01:05:59.741965 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F from torch.utils.data import DataLoader import torch.optim as optim import torch.utils.data.distributed import horovod.torch as hvd import numpy as np from pyt.dataset import * import text_dataset from pyt.model import * import pyt.model as base import evaluate as ev import loss import melt logging = melt.logging import gezi import lele from tqdm import tqdm logging.init('/home/gezi/temp') import horovod.torch as hvd hvd.init() # Horovod: pin GPU to local rank. torch.cuda.set_device(hvd.local_rank()) seed = 1024 torch.cuda.manual_seed(seed) def train(epoch, model, loss_fn, train_loader, optimizer): model.train() # Horovod: set epoch to sampler for shuffling. train_loader.sampler.set_epoch(epoch) for batch_idx, (data, target) in tqdm(enumerate(train_loader), total=len(train_loader), ascii=True): for key in data: if type(data[key][0]) != np.str_: data[key] = data[key].cuda() target = target.cuda() optimizer.zero_grad() output = model(data) loss = loss_fn(output, target) loss.backward() optimizer.step() if batch_idx % 100 == 0: # Horovod: use train_sampler to determine the number of examples in # this worker's partition. logging.info('Train Epoch: {} [{}/{} ({:.0f}%)]\tLoss: {:.6f}'.format( epoch, batch_idx * len(data), len(train_loader.sampler), 100. * batch_idx / len(train_loader), loss.item())) def metric_average(val, name): tensor = torch.tensor(val) avg_tensor = hvd.allreduce(tensor, name=name) return avg_tensor.item() def test(model, loss_fn, test_loader): model.eval() test_loss = 0. test_accuracy = 0. for data, target in test_loader: data, target = data.cuda(), target.cuda() output = model(data) # sum up batch loss test_loss += loss_fn(output, target) # Horovod: use test_sampler to determine the number of examples in # this worker's partition. test_loss /= len(test_sampler) # Horovod: average metric values across workers. test_loss = metric_average(test_loss, 'avg_loss') # Horovod: print output only on first rank. if hvd.rank() == 0: print('\nTest set: Average loss: {:.4f}\n'.format(test_loss)) def main(_): FLAGS.torch_only = True melt.init() #fit = melt.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier FLAGS.eval_batch_size = 512 model_name = FLAGS.model model = getattr(base, model_name)() model = model.cuda() loss_fn = nn.BCEWithLogitsLoss() td = text_dataset.Dataset() train_files = gezi.list_files('../input/train/*') train_ds = get_dataset(train_files, td) #kwargs = {'num_workers': 4, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} #num_workers = int(16 / hvd.size()) num_workers = 1 # set to 1 2 min to start might just set to 0 for safe num_workers = 0 # 设置0 速度比1慢很多 启动都需要1分多。。 # pin_memory 影响不大 单gpu提升速度一点点 多gpu 主要是 num_workers 影响资源占有。。有可能启动不起来 # 多gpu pin_memory = False 反而速度更快。。 #kwargs = {'num_workers': num_workers, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} kwargs = {'num_workers': 1, 'pin_memory': False, 'collate_fn': lele.DictPadCollate()} train_sampler = train_ds train_sampler = torch.utils.data.distributed.DistributedSampler( train_ds, num_replicas=hvd.size(), rank=hvd.rank()) train_dl = DataLoader(train_ds, FLAGS.batch_size, sampler=train_sampler, **kwargs) valid_files = gezi.list_files('../input/valid/*') valid_ds = get_dataset(valid_files, td) # support shuffle=False from version 1.2 valid_sampler = torch.utils.data.distributed.DistributedSampler( valid_ds, num_replicas=hvd.size(), rank=hvd.rank(), shuffle=False) # valid_sampler2 = torch.utils.data.distributed.DistributedSampler( # valid_ds, num_replicas=hvd.size(), rank=hvd.rank(), shuffle=False) valid_dl = DataLoader(valid_ds, FLAGS.eval_batch_size, sampler=valid_sampler, **kwargs) #valid_dl2 = DataLoader(valid_ds, FLAGS.batch_size, sampler=valid_sampler2, **kwargs) optimizer = optim.Adamax(model.parameters(), lr=0.1) #optimizer = optim.SGD(model.parameters(), lr=0.1) hvd.broadcast_parameters(model.state_dict(), root_rank=0) hvd.broadcast_optimizer_state(optimizer, root_rank=0) optimizer = hvd.DistributedOptimizer(optimizer, named_parameters=model.named_parameters()) for epoch in range(2): train(epoch, model, loss_fn, train_dl, optimizer) test(model, loss_fn, valid_dl) #logging.info('num valid examples', len(valid_ds), len(valid_dl)) # fit(model, # loss_fn, # dataset=train_dl, # valid_dataset=valid_dl, # valid_dataset2=valid_dl2, # eval_fn=ev.evaluate, # valid_write_fn=ev.valid_write, # #write_valid=FLAGS.write_valid) # write_valid=False, # ) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/torch-only-train/baseline.sh ================================================ model=WideDeep python ./torch-train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/torch.$model.baseline \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-only-train/best-v0-small.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-only-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/train_0 \ --valid_input=../input/valid/valid_0 \ --model_dir=../input/model/torch.only.$model.best.v0.small \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-only-train/best-v0.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-only-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/torch.only.$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-only-train-hvd/best-v0-small.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-only-train-hvd.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/train_0 \ --valid_input=../input/valid/valid_0 \ --model_dir=../input/model/torch.only.hvd.$model.best.v0.small \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-only-train-hvd/best-v0.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-only-train-hvd.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/train* \ --valid_input=../input/valid/valid* \ --model_dir=../input/model/torch.only.hvd.$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-only-train-hvd.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-train.py # \author chenghuige # \date 2019-08-02 01:05:59.741965 # \Description # ============================================================================== from __future__ import absolute_import, division, print_function import multiprocessing import os import sys import gezi import melt import tensorflow as tf import evaluate as ev import lele import loss import pyt.model as base import torch import text_dataset from pyt.dataset import get_dataset from pyt.model import * from torch import nn from torch.nn import functional as F from torch.utils.data import DataLoader flags = tf.app.flags FLAGS = flags.FLAGS logging = melt.logging import horovod.torch as hvd hvd.init() torch.cuda.set_device(hvd.local_rank()) def main(_): FLAGS.torch_only = True melt.init() fit = melt.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier model_name = FLAGS.model model = getattr(base, model_name)() model = model.cuda() loss_fn = nn.BCEWithLogitsLoss() td = text_dataset.Dataset() train_files = gezi.list_files('../input/train/*') train_ds = get_dataset(train_files, td) #kwargs = {'num_workers': 4, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} #kwargs = {'num_workers': 0, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} #kwargs = {'num_workers': 4, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} num_workers = 1 kwargs = {'num_workers': num_workers, 'pin_memory': False, 'collate_fn': lele.DictPadCollate()} train_sampler = train_ds train_sampler = torch.utils.data.distributed.DistributedSampler( train_ds, num_replicas=hvd.size(), rank=hvd.rank()) train_dl = DataLoader(train_ds, FLAGS.batch_size, sampler=train_sampler, **kwargs) valid_files = gezi.list_files('../input/valid/*') valid_ds = get_dataset(valid_files, td) kwargs['num_workers'] = 1 # support shuffle=False from version 1.2 valid_sampler = torch.utils.data.distributed.DistributedSampler( valid_ds, num_replicas=hvd.size(), rank=hvd.rank(), shuffle=False) kwargs['num_workers'] = 1 valid_sampler2 = torch.utils.data.distributed.DistributedSampler( valid_ds, num_replicas=hvd.size(), rank=hvd.rank(), shuffle=False) valid_dl = DataLoader(valid_ds, FLAGS.eval_batch_size, sampler=valid_sampler, **kwargs) valid_dl2 = DataLoader(valid_ds, FLAGS.batch_size, sampler=valid_sampler2, **kwargs) fit(model, loss_fn, dataset=train_dl, valid_dataset=valid_dl, valid_dataset2=valid_dl2, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, #write_valid=FLAGS.write_valid) write_valid=False, ) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/torch-only-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-train.py # \author chenghuige # \date 2019-08-02 01:05:59.741965 # \Description # ============================================================================== from __future__ import absolute_import, division, print_function import multiprocessing import os import sys import tensorflow as tf import evaluate as ev import gezi import lele import loss import melt import pyt.model as base import torch import text_dataset from pyt.dataset import get_dataset from pyt.model import * from torch import nn from torch.nn import functional as F from torch.utils.data import DataLoader flags = tf.app.flags FLAGS = flags.FLAGS logging = melt.logging import horovod.torch as hvd hvd.init() # Horovod: pin GPU to local rank. torch.cuda.set_device(hvd.local_rank()) def main(_): FLAGS.torch_only = True #FLAGS.valid_input = None melt.init() fit = melt.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier model_name = FLAGS.model model = getattr(base, model_name)() loss_fn = nn.BCEWithLogitsLoss() td = text_dataset.Dataset() train_files = gezi.list_files(FLAGS.train_input) train_ds = get_dataset(train_files, td) ## speed up a bit with pin_memory==True ## num_workers 1 is very slow especially for validation, seems 4 workers is enough, large number dangerous sometimes 12 ok sometimes hang, too much resource seems #kwargs = {'num_workers': 12, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} #kwargs = {'num_workers': 6, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} kwargs = {'num_workers': 8, 'pin_memory': True, 'collate_fn': lele.DictPadCollate()} ## for 1 gpu, set > 8 might startup very slow #num_workers = int(8 / hvd.size()) # num_workers = 0 # pin_memory = False #kwargs = {'num_workers': num_workers, 'pin_memory': pin_memory, 'collate_fn': lele.DictPadCollate()} train_dl = DataLoader(train_ds, FLAGS.batch_size, shuffle=True, **kwargs) #kwargs['num_workers'] = max(1, num_workers) #logging.info('num train examples', len(train_ds), len(train_dl)) if FLAGS.valid_input: valid_files = gezi.list_files(FLAGS.valid_input) valid_ds = get_dataset(valid_files, td) valid_dl = DataLoader(valid_ds, FLAGS.eval_batch_size, **kwargs) #kwargs['num_workers'] = max(1, num_workers) valid_dl2 = DataLoader(valid_ds, FLAGS.batch_size, **kwargs) #logging.info('num valid examples', len(valid_ds), len(valid_dl)) fit(model, loss_fn, dataset=train_dl, valid_dataset=valid_dl, valid_dataset2=valid_dl2, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, #write_valid=FLAGS.write_valid) write_valid=False, ) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/torch-train/baseline.sh ================================================ model=WideDeep python ./torch-train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/torch.$model.baseline \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-train/best-v0-small.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train0/train_0 \ --valid_input=../input/valid0/valid_0 \ --model_dir=../input/model/torch.$model.best.v0.small \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-train/best-v0.sh ================================================ model=WideDeep #model=Deep #model=Wide #--valid_input=../input/valid \ python ./torch-train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/torch.$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/torch-train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file torch-train.py # \author chenghuige # \date 2019-08-02 01:05:59.741965 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import torch from torch import nn from torch.nn import functional as F from dataset import * from pyt.model import * import pyt.model as base import evaluate as ev import loss import melt def main(_): FLAGS.torch = True melt.init() fit = melt.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier print('---------eval_batch_size', FLAGS.eval_batch_size) model_name = FLAGS.model model = getattr(base, model_name)() Dataset = TextDataset if not 'tfrecord' in FLAGS.train_input else TFRecordDataset loss_fn = nn.BCEWithLogitsLoss() fit(model, loss_fn, Dataset, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, #write_valid=FLAGS.write_valid) write_valid=False) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/tf/train/README.md ================================================ v0 ./dw-concat2.sh is best 0.737 this is 0 start index, all sum loss 0.3159 v1 ./dw-mean2.sh is best 0.7389 1 start index, length mean loss 0.30675 0 start index al sum better then 1 start (all sum or length sum) ================================================ FILE: projects/feed/rank/tf/train/allsum.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=allsum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.allsum \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/attention.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=attention \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.att \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/baseline.sh ================================================ model=WideDeep python ./train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/baseline \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/baseline2.sh ================================================ model=WideDeep python ./train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/baseline2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=10000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ -field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/baseline3.sh ================================================ model=WideDeep python ./train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/baseline3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.0005 \ --feat_file_path=../input/feature_index \ -field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/baseline4.sh ================================================ model=WideDeep python ./train.py \ --simple_parse=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/baseline4 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=125 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-lp.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --batch_parse=0 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.lp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-lrnoscal-prerand.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --batch_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/train.rand \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.lrnoscale.prerand \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-lrnoscale-largebuffer.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --batch_parse=0 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.lrnoscale.largebuffer \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-lrnoscale-nbp.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --batch_parse=0 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.lrnoscale.nbp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-lrnoscale.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --batch_parse=0 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.lrnoscale \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-noshard.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.noshard \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-record-lrnoscale-largebuffer.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/tfrecord/train.rand \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.best.v0.horovod.record.lrnoscale.largebuffer.prerand \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-record-lrnoscale.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.best.v0.horovod.record.lrnoscale \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-record.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.best.v0.horovod.record \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod-sp.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod.sp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-horovod2.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.horovod2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=250 \ --learning_rate=0.008 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-record.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.best.v0.record \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0-sp.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0.sp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/best-v0.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.best.v0 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/deep-addval.sh ================================================ model=Deep python ./train.py \ --deep_addval=1 \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.addval \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/deep.embact.sh ================================================ model=Deep python ./train.py \ --emb_activation=relu \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.embact \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/deep.sh ================================================ model=Deep python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-add.sh ================================================ model=WideDeep python ./train.py \ --emb_activation=relu \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.add \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-att-fieldemb.sh ================================================ model=WideDeep python ./train.py \ --field_emb=1 \ --pooling=att2 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.att.fieldemb \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-bigbatch.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.5 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.bigbatch \ --batch_size=40000 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-concat.sh ================================================ model=WideDeep2 python ./train.py \ --emb_activation=relu \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.concat \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-concat2.sh ================================================ model=WideDeep2 python ./train.py \ --index_addone=0 \ --pooling=allsum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.concat2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-concat3.sh ================================================ model=WideDeep2 python ./train.py \ --wide_addval=0 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.concat3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-concat4.sh ================================================ model=WideDeep2 python ./train.py \ --deep_addval=1 \ --wide_addval=1 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.concat4 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-field.sh ================================================ model=WideDeep2 python ./train.py \ --deep_field=1 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.field \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-fieldemb.sh ================================================ model=WideDeep python ./train.py \ --field_emb=1 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.fieldemb \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-hidden100.sh ================================================ model=WideDeep python ./train.py \ --hidden_size=100 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.hidden100 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-hidden64.sh ================================================ model=WideDeep python ./train.py \ --hidden_size=64 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.hidden64 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-max-fieldemb.sh ================================================ model=WideDeep python ./train.py \ --field_emb=1 \ --pooling=max \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.max.fieldemb \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-max.sh ================================================ model=WideDeep python ./train.py \ --pooling=max \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.max \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-max2.sh ================================================ model=WideDeep python ./train.py \ --pooling=max \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.max2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean.sh ================================================ model=WideDeep python ./train.py \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-2.sh ================================================ model=WideDeep python ./train.py \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb-mlp1layer.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb.mlp1layer \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb-mlp1layer2.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=1 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb.mlp1layer2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb-mlp2layer.sh ================================================ model=WideDeep python ./train.py \ --mlp_dims=50,1 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb.mlp2layer \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb-rankloss.sh ================================================ model=WideDeep python ./train.py \ --rank_loss=1 \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb.rankloss \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb.sh ================================================ model=WideDeep python ./train.py \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-fieldemb2.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --field_emb=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.fieldemb2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2-rankloss.sh ================================================ model=WideDeep python ./train.py \ --rank_loss=1 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2.rankloss \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean2.sh ================================================ model=WideDeep python ./train.py \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-mean3.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --pooling=mean \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.mean3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-new-allsum.sh ================================================ model=WideDeep python ./train.py \ --index_addone=1 \ --pooling=allsum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.new.allsum \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-new.sh ================================================ model=WideDeep python ./train.py \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.new \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-old-allsum.sh ================================================ model=WideDeep python ./train.py \ --index_addone=0 \ --pooling=allsum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.old.allsum \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-old.sh ================================================ model=WideDeep python ./train.py \ --index_addone=0 \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.old \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-record.sh ================================================ model=WideDeep python ./train.py \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.dw.record \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat-fieldemb-mlp.sh ================================================ model=WideDeep python ./train.py \ --valid_multiplier=10 \ --field_emb=1 \ --mlp_dims=1024 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat.fieldemb.mlp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat-fieldemb-mlp2.sh ================================================ model=WideDeep python ./train.py \ --valid_multiplier=10 \ --field_emb=1 \ --mlp_dims=50 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat.fieldemb.mlp2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat-fieldemb-mlp3.sh ================================================ model=WideDeep python ./train.py \ --valid_multiplier=10 \ --field_emb=1 \ --field_dict_size=81 \ --mlp_dims=1024 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat.fieldemb.mlp3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat-mlp.sh ================================================ model=WideDeep python ./train.py \ --mlp_dims=1024 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat.mlp \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat-mlp2.sh ================================================ model=WideDeep python ./train.py \ --mlp_dims=50 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat.mlp2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fconcat.sh ================================================ model=WideDeep python ./train.py \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fconcat \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fieldemb-rankloss.sh ================================================ model=WideDeep python ./train.py \ --rank_loss=1 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fieldemb.rankloss \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fieldemb.sh ================================================ model=WideDeep python ./train.py \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fieldemb \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-fieldemb2.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fieldemb2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-horovod-noshard.sh ================================================ model=WideDeep python ./train.py \ --horovod_shard=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.horovod.noshard \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=125 \ --learning_rate=0.008 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-horovod.sh ================================================ model=WideDeep python ./train.py \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.horovod \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=125 \ --learning_rate=0.008 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum-record.sh ================================================ model=WideDeep python ./train.py \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.record \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum2-fieldemb-mlp1layer.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum.fieldemb.mlp1layer \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-sum2.sh ================================================ model=WideDeep python ./train.py \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.sum2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-text.sh ================================================ model=WideDeep python ./train.py \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.text \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/dw-topk.sh ================================================ model=WideDeep python ./train.py \ --pooling=topk \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.topk \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/fconcat-record.sh ================================================ model=WideDeep python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --field_emb=1 \ --field_dict_size=81 \ --mlp_dims=1024 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train.rand \ --valid_input=../input/valid \ --model_dir=../input/model/$model.dw.fconcat.record \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/fconcat.sh ================================================ model=WideDeep python ./train.py \ --simple_parse=1 \ --valid_multiplier=10 \ --field_emb=1 \ --field_dict_size=81 \ --mlp_dims=1024 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/* \ --valid_input=../input/valid/* \ --model_dir=../input/model/fconcat \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/fconcat2.sh ================================================ model=WideDeep python ./train.py \ --mlp_drop=0.5 \ --mlp_dims=1024 \ --simple_parse=1 \ --valid_multiplier=10 \ --field_emb=1 \ --field_dict_size=81 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/* \ --valid_input=../input/valid/* \ --model_dir=../input/model/fconcat2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/fconcat3.sh ================================================ model=WideDeep python ./train.py \ --mlp_drop=0. \ --mlp_dims=50 \ --simple_parse=1 \ --valid_multiplier=10 \ --field_emb=1 \ --field_dict_size=81 \ --field_concat=1 \ --deep_final_act=0 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/* \ --valid_input=../input/valid/* \ --model_dir=../input/model/fconcat3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-batch128-test.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.02 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.b128.test\ --batch_size=128 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-batch256.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.b256 \ --batch_size=256 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-batch64-2.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.b64.2\ --batch_size=64 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-batch64-test.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.01 \ --save_interval_epochs=0.01 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.b64.test\ --batch_size=64 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-batch64.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --save_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.b64\ --batch_size=64 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-scale.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --eval_batch_size=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.scale \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.008 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-small.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --eval_batch_size=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid.small \ --model_dir=../input/model/$model.horovod \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-test-record.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.05 \ --save_interval_epochs=0.05 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.horovod.test.tfrecord \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod-test.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.05 \ --save_interval_epochs=0.05 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod.test \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/horovod2.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --batch_parse=1 \ --valid_multiplier=10 \ --eval_batch_size=1 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --save_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.horovod2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/rankloss.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --rank_loss=1 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.rankloss \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/record.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/$model.dw.sum.fieldemb.mlp1layer \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/small.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_steps=100 \ --valid_interval_epochs=0.1 \ --train_input=../input/train0/*, \ --valid_input=../input/valid0/*, \ --model_dir=../input/model/small \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/sum.sh ================================================ model=WideDeep python ./train.py \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.sum \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test1.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.rand/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test1 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test10.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train.rand/* \ --valid_input=../input/valid/* \ --model_dir=../input/model/test10 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test11.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train.rand/* \ --valid_input=../input/valid/* \ --model_dir=../input/model/test11 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test12.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.rand/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test12 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test2.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.old \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/test2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test3.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.old \ --valid_input=../input/tfrecord/valid \ --model_dir=../input/model/test3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test4.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train.old/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/test4 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test5.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.rand/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test5 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test6-2.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_steps=100 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/test6.2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test6-3.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --interval_steps=10 \ --valid_interval_steps=10 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/test6.3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test6.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_parse=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train/*, \ --valid_input=../input/valid/*, \ --model_dir=../input/model/test6 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test7.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_read=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.old/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test8.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --simple_read=1 \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.rand/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test3 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/test9.sh ================================================ model=WideDeep #--valid_input=../input/valid \ python ./train.py \ --buffer_size=512000 \ --valid_multiplier=10 \ --deep_final_act=0 \ --mlp_dims=50 \ --mlp_drop=0.2 \ --field_emb=1 \ --pooling=sum \ --dense_activation=relu \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/tfrecord/train.rand/* \ --valid_input=../input/tfrecord/valid/* \ --model_dir=../input/model/test9 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=1000 \ --learning_rate=0.001 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep.sh ================================================ model=WideDeep python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2-bert-2epoch.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.bert.2epoch \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=5000 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2-bert.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.bert \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=5000 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2-bert2-2epoch.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=2 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.bert2.2epoch \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=5000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2-bert2.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.bert2 \ --batch_size=512 \ --max_feat_len=100 \ --optimizer=bert \ --min_learning_rate=1e-6 \ --warmup_steps=5000 \ --learning_rate=0.002 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2-lazy.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.lazy \ --batch_size=512 \ --max_feat_len=100 \ --optimizer= --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-deep2.sh ================================================ model=WideDeep2 python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-ftrl.sh ================================================ model=Wide python ./train.py \ --optimizer=ftrl \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.ftrl \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide-noval.sh ================================================ model=Wide python ./train.py \ --wide_addval=0 \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model.noval \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train/wide.sh ================================================ model=Wide python ./train.py \ --model=$model \ --num_epochs=3 \ --eager=0 \ --valid_interval_epochs=0.1 \ --train_input=../input/train \ --valid_input=../input/valid \ --model_dir=../input/model/$model \ --batch_size=512 \ --max_feat_len=100 \ --feat_file_path=../input/feature_index \ --field_file_path=../input/feat_fields.old ================================================ FILE: projects/feed/rank/tf/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file read.py # \author chenghuige # \date 2019-07-26 18:02:22.038876 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from dataset import * from model import * import model as base import evaluate as ev import loss def main(_): melt.init() fit = melt.get_fit() FLAGS.eval_batch_size = 512 * FLAGS.valid_multiplier print('---------eval_batch_size', FLAGS.eval_batch_size) model_name = FLAGS.model model = getattr(base, model_name)() Dataset = TextDataset if not 'tfrecord' in FLAGS.train_input else TFRecordDataset loss_fn = tf.losses.sigmoid_cross_entropy if not FLAGS.rank_loss else loss.binary_crossentropy_with_ranking fit(model, loss_fn, Dataset, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, write_valid=FLAGS.write_valid) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/feed/rank/v1/README.md ================================================ split index to sparse and dense ================================================ FILE: projects/kaggle/blindness/jupter/tf-image.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "import tensorflow as tf" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "tf.enable_eager_execution()" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import cv2" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "img_file = '../input/train_images/000c1434d8d7.png'" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(cv2.imread(img_file))" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "img = cv2.imread(img_file)\n", "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", "plt.imshow(img)" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(img[::-1, :, :])" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import scipy.misc \n", "import io" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/gezi/py3env/lib/python3.6/site-packages/ipykernel_launcher.py:2: DeprecationWarning: `toimage` is deprecated!\n", "`toimage` is deprecated in SciPy 1.0.0, and will be removed in 1.2.0.\n", "Use Pillow's ``Image.fromarray`` directly instead.\n", " \n" ] } ], "source": [ "s = io.BytesIO()\n", "scipy.misc.toimage(img).save(s, format=\"png\")" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "s = io.BytesIO()\n", "import PIL.Image as Image\n", "Image.fromarray(img).save(s, format=\"png\")" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "img2 = Image.open(s)" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(3216, 2136)" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "img2.size" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import io\n", "plt.figure()\n", "plt.plot([1, 2])\n", "plt.title(\"test\\nss\")\n", "buf = io.BytesIO()\n", "plt.savefig(buf, format='png')\n", "buf.seek(0)" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "class A():\n", " i = 3\n", " def haha(self):\n", " x = self.i + 1\n", " print(x)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4\n", "4\n", "4\n", "5\n", "4\n" ] } ], "source": [ "a = A()\n", "a.haha()\n", "a.haha()\n", "b = A()\n", "b.haha()\n", "b.i += 1\n", "b.haha()\n", "a.haha()" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(nrows=1,ncols=1, figsize=(50,50))\n", "ax.set_title('abcdef', fontsize=40)\n", "ax.imshow(img)\n", "plt.savefig('../input/test.png', format='png', bbox_inches='tight')" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "bad argument type for built-in operation", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0ms\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mBytesIO\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msavefig\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'png'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbbox_inches\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'tight'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimshow\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: bad argument type for built-in operation" ] }, { "data": { "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from io import BytesIO \n", "s = BytesIO()\n", "plt.savefig(s, format='png', bbox_inches='tight')\n", "plt.imshow(cv2.imread(s))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(2136, 3216, 3)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cv2.imread(img_file).shape" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "image_contents = tf.read_file('../input/train_images/000c1434d8d7.png')\n", "image = tf.image.decode_png(image_contents) " ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "TensorShape([Dimension(2136), Dimension(3216), Dimension(3)])" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "image.shape" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAD8CAYAAACSCdTiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsvV2sbduW1/Vrrfc+5lx7n3NPXUqoKgpCFQZIAAuqIGiCCD74EV5AqRBAiOHBSjAmygMJ8sSLiQ9iMEZJUHnREmKgSCDhgZAYEhIUChBCFWIKNCmqSrh179l7fcw5x+i9t+ZD62PMseZe+9xzq+TqveyerHP2Gmt89NE/2se/tfYf4u58aB/ah/ahfWjfnE3/v+7Ah/ahfWgf2of2T699EPIf2of2oX1o38Ttg5D/0D60D+1D+yZuH4T8h/ahfWgf2jdx+yDkP7QP7UP70L6J2wch/6F9aB/ah/ZN3L7uQl5E/k0R+fsi8mMi8ge/3s//0D60D+1D+2epydczT15EEvB/AP8a8I+Avw78Tnf/0a9bJz60D+1D+9D+GWpfb0v+1wE/5u7/0N0X4E8Bv+Xr3IcP7UP70D60f2Za/jo/7zuBH9/9/o+Af/H2JBH5AeAHxq+/5uvQr2/6JuNHgX/hF2dUHTcwY/xfsD7+746bYA7m4MR5nfG7C46DwOoIOiACTly/PnNt7h4nxC+7Xq1Xv/xPWc9b7ynXU2T81d0REdxtnLD+fr3Ds7vubiKMd3nfuDl0HEWiG4C80H8R2Xq8vqo8e2+HMW7b49fuOejob5wq+Hjl+D1OFPFt6PbvN16Z7mw3Vr32R2W7xe699+/g61uM/17HZH1O9C/OXN9B4pW2+RF5Niu4R5+v0zfu69e+reOnsuuHbBfs+gDXzscAzl24v7TPnL9v9ubutwv8nfb1FvKfq7n7Hwf+OICIuK7LZryO7Be6XDe5+LN7xDlJt39vx9aFi2DrYnbGRuV6z3HsuqGufwN41i+LPthuc6zPVOIe3Y0kz/uznmduCNdn7a+/bevfVBUz+6rjub7DL/HGX/uhTziqcj515gvMj4nLSbg8Jk6Pd9zPM5fZaEvh3JR5gXN3TuY8OTyKoAtUcawKrThmhni8l6kMReAIjqrSevSx9w6aSCmhBs3i2vPThY8Or3B3eotrMENVmTSzLC3GMQuY0yXGtDOTUiJJJqWE9MZFjGKCeYvx8Xj31hqTJoyEmZFKorWGtc7xOMU72JhnMfKYR+uJBxpTSqhWSi2ceqVouioXKikVxA0z3ebQ6ORxXlZDOHKan5i8YFk5ZGH2Cl44KJgZ1qFn5+BKb467sxSnOxzEKaKojrEm3vG0GJNMPC6Om2I+cyiJg8QaQWxTNqtMMHOO6qSUcBdadXqGxSvZAJF4jhmoU2ys4dLwPlHNOZDoufMFhYc2U/Jx3NvIXkBmRBKaDOtKlVivNkM1JZfOsUxkW6giuPp1L4sg4z0nFO+O5fW945zUG//kSfhTP/KIWXvvfvmZtm2vu299eSYndsaEiIDG+rz9mw/FuV633X89R573W7nKG/T6773cWsfh87SvN1zzE8Av3P3+C8axz2xGvJAim/XgwjOBur70enw9B4uJ2S8ed78uFmcTwuvxvZCFsflGH15SKEpMsAtbH9dnrm3993qf27YuAguzbjtvWzz6fJGIyIsC/nYhqSo5Z36FNn7kL37Ca4HzW2d+OHK5P/Dwxnl4U3h4nHg8dc6nzHLKvL0ob7vwlWZ82Z0HExbJeOvUyakOixh0xVs8M6XEUtv2b1KitU5x4dKcLpmpF/rs6CLI4hyr8no6srQFMSOrUxIUhSyOacfzQr5zVBwtkNSxXpm8MHnBu9FrG8JFqL2hqTCPMe+9c5BEdaP3BZE4XxGmlGlzw5vTe4+f5pzmjnWl945egO60ljjRKaXgWUmqLL3hUobCV1KKsWgKvTkiCTOoXai2IFrox8y5LTzNS6ylbrTe6WaUrOSuXNwxNTw5dEgG9BCSbhVp0FvGTCgoDSOrkbKhMtFbQhIYnW4hMNfdpAo5QTpO9N5x74g2rFeSaew0EdRBVMla8JzxrNjJSb1zh1OSI+68rZ0pvcKGZ9gVPBslHegiLF1Zxl5rMzSMuzvn9aRkWZA0UdXp5iAaG1cUFUGbc7FOF1BfMO+Y9RhTUb7wkfO7f9W3MNFBbFv/t/tg2zP+slH0ojE1ZANjvyuyyZd1D7tfZY3uBbnuDD7VZzJrL0f2MmiVHbeG4vbsnQz56vb7tX29hfxfB36JiHy3iEzA7wD+3Fe7SCAsYAnL/NnfnE177v+9tv0EYH61wlW3SdsPmMh1sDfBL88nAXMk6fMJ8+cexovv4c+192bFvzBp6/PiBL++42dY+OtxESGJIElpyfhD/8rP42/9hU/gDOenzPlJePsWvvKVzuXpyPlJePPGeLwkni7OvRdOtfP23Ll3eLTOxYzZKk6it9VqD6tbVekN6mIohWUx5rnTnhpqYYm/IlGq0btxAMwbCUVyZjrARwdBipCyUFIja0OzIzQOZQJzsnYKlbvsHKdEzhlRI7sizUmm2NzJnsieKFUwA3Fl7uFtoEJWxcwpDVg6AljvZBTpTupQLGMVrCt3krEFxDws+OSU2nCDQ8okZyhcDSFnRkEppdC6MXwasmTuSiL3xkclM00T3RMphcKo1jeDItZ8YTFQG3BGUpyMU2ixELEOquGQq2SOIqTc8W6cZxDrkJy5VUQSbg0Zgn6e4xhiMe5AFigD35F09QLcHe8gx8JUyk6YOiVlam/0JvTemSQhIlys0XuP9d4yT3Mjm9Omxp2AtISL4f3EnRYmhhKTGM9uhuVQtEsHYQIXTAQ1I5NRFz6+W/g9v/pb+agUXK99Uw1llQjB/q9+10f8hu/+4pALz4X97b5a9/W6F1/cazvZ4R5Gwmp4XaGsnTzY7eG9kXq7//fewooQ/Gza1zW7BkBEfjPwR4EE/Al3/0++yvmeJAT7reUOzyETN0NFNwt47zKtmvB2MFd3aLvPC1DJpiR2z36mbXeKZX/t+qz9vVfh7u6k4b6isp23Lq6XFtbebds/73YO10X02hN/7Pdkfvu/u6APHzE/JZ7uE28endN9YrkIT5fEfBYez8apJRaDh+70lniSzmOtNDeEiSbOQYRL66SUaNbJWoY1OKCF4aqvv6vGJi0lPA/HoD33qpobGTCdoBv0GVTBdXgs8U5FICeh1oqoklwRMVa9X5tQTUd/xmBY2saulELvM3mshVaUvlRyCkUVoDZ4UpDYsN0FNQ8BQwgfz+FxVBOmMReNwD5FhNZ7zOdQJmu8YNIUrzXGpiNod6o4BxXm3sg5o67MrfJxTlx6pUtGRMg5PCmVAZHpCv0pKh23hIpTrTNXpXni7tC5K5laK45S8nWN19o5aN68QpFQIb13SAN2Qqm0GH8XalKOJGoLz6mpouLRN++05YCkhcmfQ4mzO7QOU+YLqXPKd/yTf/wlvv3bPmFC6e547yyENZ5SQoTr+FnioE51ozIguZzBGinDZJ1TF/7M3/yUL7X8jkf+O77nW/hFHwslC//7VzJ/+ke+jPf2zh7b9tmAXjb5ofrOvrcBKa7X3O7ZLk7y55DwrUG537vibM+57c8eCt4f/zyY/NddyH+tbRXy7wjoIVwdJ2l6tqD25ynDRXtBMK4TFJgy20DeTtY26XDF3OSqcffa/JkW5rnSeKZ8dp7CM2iIq/J6B/O76dN7PYaUaceF//o3Hvl9v/8TeLtwPguP98bpfODNm8bpMnE5O8sl87Q4j2djRnioThWYm3KyWNSXJqQCsylOI3m6wl3NaApJEmqOSchpAO2JIhbWNrpZLFnC6r/sNkkagnwxIXnDRZFVmPWwEA8lLEQ1Z9bO1CHna1ip906XEPIQVna1q6DNGG3pUBJ9jGsemzU5SB7Pk7QphXnppGxYVehQMSbPARGJU7OTR1BU6OSc6QPbN61oy7FWxtwHlj+UoiZ0B+uF5en0PrwxOtV7KBpd3/PaP9mMC6N4CMbFnNk7hcLSEuZPHFLMQ0+JxIhpeKFZHZ5rKELBSCSQBSNgProFZKVKwWnqWE/k5MwuuPeINaW0ebJdIEsmdY81ccj47MxzZTp27g4Hal9oTJybcVcSqo20jluCxTpp9MEsvInar/Ga2AOdkiZEr4rBuvM//e17furJQSP4+7u+58i3f1SYPHD/IvCXf9z4K//XE84cHt4LbS9Ub43G9diz/bjb06vxuIeBX9qvtwbg+9rt9auS+TxC/hu24nUV0ipKt9jU7xV6vCvggQ2DXa3K27+b2zuW/RYU2lvs7u9M/H5iX8Lmvxp2+L5zVkzxfe8alkDlL/y2T/iBP6DY25mHOXH/xnh6UB7fwvnxwOUsnJ/g4eScZnhqzkN1ziJcqnAxp7ly8sac4FSdRsIqLL3RWccio1qGcNwFqFfrwwzfBSNpFkHbrBxTIRmbNdlaQ7SCH+Lcbhxy2dxu97B6qxtuhTJgg1UIrAJ/miYmTUh3JjGOuXFIleSJu1eFlJw7FT4qGacCEUNoVbCeNqHm7hzUSNZCURWhlNgyTxOYCq/8QDOl1evamSR+DoRHMB3SNmeL9U2xiQheAyZCFrqdQ0FJI+WrEQIjLmQhTNe29lNVaUWxQ34ep5GKcDesYsGSsGAciXc8HA5Xr2JY79UN05iLuxbPXSGpBduet1qxXXi2J8LjyiRbKNq5mxTpc8A4h8Q0xbNbvoM286ok7i/G0soGdyjCt+a7Z/tIVUeQOJSvasBhl1axYYD13slF+N2/+jU/76OEuPJ7v/c7+JZPXkFWqkZfL37Hv/Tdyq/8tgPTe0TkMwv7PUbbft9f955v8/UMcdB3Re1n7f2Xjj9bN1+Dcf4NYclvC8ifC8l98GOPw90OPlzx8j1csh7f32vF5PfX7wMl7+njM9du/5z1GS9p9721LhLZN7ijos/vzXXRvPTs7R4mFBp/9ve94l///gJvE6cn4c1XhPlceHjonB8L5+o8LYWns/HYnNkS98vMzMRinSUZrQq9O211R42BA4N6bKgpF/pw21NKaHecDNJGn8EgLCjvvCqJuRtgSBMuohSU2RYOBMQjGgJHNIP37XkAB4cnAu82s83KS6NfuTmWM5fmSLJtzeRVITksQGttE3ytC6LOMRXcwmo9C0gLKCUXIaNUryFMxTloptbo29xW4NXIw8NpUsnlmiSQUqI3p2Lc5Ym5VY6uw9IMAbYM90fdaGTukiIaFn/rCvTrerKOZR2e04T3RtLVK1qDs8LcCrVW7o6OWOP1XWHusRYbqwdyXbOLdY55zENr27o0iTkIoyqU6sVlzIEiXRCtdNI4xzf4R1xxS7TmNCpHBYpQPLFoxJqawqRCtU4ySKmQstE6uMc8d0AsPJYzqyXvuCUmddBEUaON/XxQZ6kJKSdU7rZxKYDTxzsa//3ffeInT0Ia2TlX6Or5XnvHWJN3s/r2e3xtW9xvWPov2d0vyaCvJpe/OS35fUB1ZLKswc59kHIdzPX324ycvRW+b9s9zOluz6LhijzTxC9dv557q/VXN+wZPm/XtMoV7uk+IKMXoKL3CfjtfUVAOjk5f+UP/3P8pu8v2KNzfoD7e+V8Vh4f4XLKvD133p46T+fGY3NOZpxq5eKJuTmLQW9K0QPmsj2/9oa3Dr0jQ6HV3kAKrw4HkjueBaGBOdY6fSzU2oWiiriOOUvhCYyxPmiGVnExllpJSKQfjjBjTpA1IJZJVqs4XcfFBJfEnMb9paMkeo1g6GyJpQrdlWaOpLxtokOGlITelsjvFyGbMUlFJqF249wbENDK0pXWFySnwK21kbJRcgRG4/0yVjM5TygJa0MJuVBr25SkRXiCajEWWRQl8ZpG9hhHF0g5hJqZoQnyVCKugIJVDlOmuDPt1kMkKUQIVxEORXhanNqXCLAaXLrRm9MNbMA9rXvMe1a6xop1MboafcXrCcgtjQBxVgNNESxWJY0Y1usEWRq+CGaNuymRpoL0iCcw4MA1cJ1FkCRbRpCqME1TxBNap2iiJwFJaIWEUJLRTXEJL6UDAiwmHF4lXD8iWyO7YMzQOk3BsiKvM9//K1/x88p1b7/PmNss9H3W2+74KgOeGY/+PID7DDHYJWrcyrOXYmz7/98+96u1bwghf+sO3mJctzAB8JmpUnuX9n0Dd+sNvDSoL8E4wLNCkpeu3VvnL73jbX/f5x6uLTkcRflrf+g13/sbO+XNgeUrd3zlbeLxXrn/FB7fKvenwtN54mnOPHR4aPBo8KSZhtM18FQFvtIvkQo3np9z3lz1fTyj986yLLgpdbEXx9DwDVLxEUy9ncua4j3W56SUNphmDew2+ibY94pPVUMQDDina1il1eMcTYYmwz1SKYsLKgfqArV3ymI0nNbaJsS2eSuJJs5inftWsF45NbZz93PWUsVLp5gwuXJ6qtcxGHOtIxV2P47rGLc1mCmF2RTrASGta2WFSfbjv45PT4Vzv4nhSEO0cW7C4hlNxsGPPNTIff84RTB97UN4bz3erSluefwt4R51BRCeyZrq24f301qLPH7vFIPX2Zi9bOOjqnw0KRPhRa1zun8nSNjIx6814gXzHLUQou0K3TSjl+v7qyrajKELtzFYliWC/qJUnaly2KCedU6maeL7v/fIFw53lL1F/p52u3f3a/j2vPcpi73c2l+/L+raK4Zb2bbvx+dp3xBCHkaKkttmWa8ZN/u8+L0wVLmmSK455nstus9J3VIhx7lre1/e6v5v+7z4LYWS50L5WS6+7LT70OBrLv974ZgbL+R2Qc2Hzh/9rcYv/ZcFPlVaVd48NM5PyulBWS4HzkviaW7M1XlqzpcujbMIpxbW22yNZcQ2mhmvLASnoPRmWIu0PO8rNBTWp7jRXbdriyaUyIkvkpHOgF2E6o6mTm1GN0gCU06RvmjX8apu9LnTe4bq4GsBlWw1A6pEwRQRgFPNWyZPduEuKYcS8IlaFP3M3TB1qjfEG66dKWcsCcmhJMNZYnwlkdxQaxySkBN8/Eq4myYS0FyZm9NqotWAfg5eOU6QDzFnr6aEVMENVBMgtGF8LBg+hOQkCdfwBFyMSaGII9mRDHjGNIqWrENtxlI7JhbpjoBK4zBFGuRBFbM2hipgEG8Fm6F55y5lkoFKD/jEO0lhymHNl1IQXcilU62DK9ZH5pDC43LZlKw6eM6kVK7ebhLME90Wlq5kHPMZerzz2YVqTusRTJ2SRC6+j2K6odCeWt0UvVC4WItMrwRl3SrNyRJKC8kU1ajYJrwTdeeiiVaVyaFNhlcn4WTPOMrHx8Tv/L47XN+Nd617bfXub9GDvQxZf98SRW6s+vXfz6DdPUIh1ySOl2DaW8Ti87ZvCCG/pjrCc815+6LvWNSyO74O7rjXJjj9ucC+tUT3MM2Ko+8rZW/bXgNv/V2Vh+2CsXv3TK6u3osew40btw/CfJv/Iv7bXwu/99//AtNcqE+JT78M5/uRLvmUeXvfeLs4p6XwKfBpd7xkTu0KrWgqQ+EYSKEnoeQJoZPUrxaTOaUD3SijmlKvscCRdqiohaW2Cl0fP9ZT5F+749bo1TjkxGESkobVJT0WdsfpohhCm0/4PpYycrHDUxAUQ9wpKWCc3ntkzIiwmGN9WKAW17oKWcM6rc1o3XEK4gXVTEdwTeQ8DWtaaWs6aU50KocsHI6QciO50WqiLkp3Ix8Cfjsk5WAC1dEUwdjVCuxmZBNa69AddaF5pBvOHtW/tXYudWFSAQwTKKUAgV13hG7QutItcfFG7o5UJxkU6bxKCaNzyHCXjImKq5MxajeyFJroZl1H35S2OFNSptQ5ZONwVKQNpeQdCCWjPf4dr6U0ixk5eKKQseRMVkAEJJOWgOTy8NZmU9pYL2pRaEcDXYSlTjR3QDjkCXVhlkQbCXNWlKpXodm70a1yvJuChkMiBdfVmdxpFabjgRNCQ7BeMRe+MHV+1/f9XIrAwd/19JPoszqY2zz6fSr3Hu7dG2l7mWFEHcLeOF3vs5dHe0/vtgD087ZviMDrVlG604wQbnr3q6a7/fs7OfE8P74GTfYu1H4Q17890667FMo1PXMfKF37IeldyoFVOaxwwz7/fx/A+Zzjgojw+779E/7In4T0FWd5SLy5h9ND5ulR+dKXO60X7i/OU0982hutK9Xh1BpdMssowKktrN0iytKFxTvWHSWNMQiXOnmM+7lXQgWsLx3vUiyCX6GwxnsalEN+Fl9II+2wNxmVk3F9Gx5Bd0EkodYxnI+PmadLvQavXSNHerj+AIdUMA+IRHJUczYDSYp2p+8rDcfcTFkHZ4+RhuKch5IRWdPyBBuB1zoyrlAhdcdWOKsox5yotYYiE0PdkH7NQ28kTJYtQ6ZL5IHrKIQKGgclEbCJOCweaZm0GsVVI5ahquEV9Ig74HF9EphS5tRCyeSceXxaMDPuJuXjwxDmKiR3zpJoyKgUXkJx9I6IM6VMFpiGAXJ2Jw1DqA8ahjKqYyvGUXME5NXwkZa5NOgdppTIeWF2tgKu2RqedATxNTKNcsYUqlsUt4mhOpGkbobNWlfhgOTMsizoGNMiuq07Uij2DJSkLNZIohQxFozUV88xFL/mmZ9+W/jBv/1E7/WdPb39m4jd3NbWrOvinWPr/lfFt/zidy3yl/b/+8Kq33SB1xXSuG17Fwlu3KKbAMcW/NR3sbJbSATYsOS9gL8NykT1tT6biD3OeKuZ3R2Gi7bBTf68WvYzx2FnyTeHf+e7Gv/Fn7wjf9o5vRU+fSM8voXHB+HyqFRLPM7wdnY+7cbZEhczFgs4xd2xLmDHsF49MbsiEhWkqoqoh6XuEWQzCRz+qJmkSiFHdamAWgdxCmv64cRBJ8o0vJghkDoOPXLTEy2s6W74jtcnK2ALLqEMH04VJ2Otk+Sq3HvvGFAkgQpTKuRUEIfuAXFgUXA1pQxecBeyKMcyDWgvrMrt2TlvFlRrDfMKXHP6180a6YbKWZ2lGcvsqCkQCk5zwUrco4mTsjNpwczpslqyQTBWULILDQIiMceSbEVGMh051U7vjpG4LB318GYkCylnyjRhopz7KJjCQ3nnSC9tHRZzkoaStVQoJVHcwTs5hbcgclU8M51LN3Cli29xA+3OJImkYCnRu8e9k9BQLKKwsYfInKTGXLjG+Toyc0Q4SKJVg5S51IassQWNzCfRytJsI11TB0TDUq9Glgzum5I2wEUQEm5RnLb0tTo4jJyJjCZBk1DKAc1C74Vve23827/8C0Rd9nXf7ZMkVgG/h3nXGMV+n94a0Gs17z5Au8JRqzzZ/6yy6hbHj5t9fovwG8KSF3kOkawa9FnhkspVS3J1qdYqsu7PAyXbeS9Z/buBvdXIL52/P773CPbHNs1LxAtuYZ2vcUz4VZPxw3/pjuU8wZeFNz+t3L8tnB6dh/vMZXYee+a+Jt7MxmKdtz2soW4TM1dCp96CLMxHxkoflmJx4VTnzfJcrfBpBMc8gY3AWB9wiPeOkzi3ZStv1wRuMuYBUu9oyUhvmzVoI11y8Wv8ZAuCeljs5rrhmd0jNTLnTDMLQWGdnpzXTegYVZTqGrPhQUnQPVPbhcTIvc4S2TljPmqt2MCfnuc9N0QSXZ5vXrHIl49iJ+VV0rVWh05khPjF8BL9npfOUTJnq3SMMkUl7WGM75IFNeGgmUs/j9z/gLBSSlxapw2LN6tTJphI9BT9WuYBZapwJ06rSlNhmQ2sD48DkhuTBAbehnV+Mcc8jzU2PGQJYyV7CN20s17NLIrX8vDYKMiwgMs0grhdcJtoqfGqGIuB6LV2wprTcqSrrmv7OLD/nMDG8SpC1jUJoLAsI8NpxAo615jQXK/B85QSJQ3DqDVyErQ1Xk0HLj5HwVsTpK8plDF2f+cnZ/7Sj13egW+32NguVve+PfpZsvXWYHzfsf391nPgWebON4clD9eBXa3yVcBv2rTbFpR7xgWxJwraQSLbYI5rbp8FO0z+hrZgVTq399kHgbkR4usCWaGdZ5j9bjGsBVjvGwOA13bkh//sKzgl0mPhfEqcngqXk3D/lHmchTeXxP1S+HTpPFnl7FGi3yxTPdL4vHXENLBrj9hVs46Pn8h5zlgnLLnmQYw1ilYilTIDCe9BHOYeG+suT7GhxLEWXoAAXiMjpS9RZq/pQKXTXPERfBMRem18S54onuiWMM+B17ujhOXbKnitYI25RX+zKWecPoi7lIZYwAy9tVGkI3RRkmTEle4N1OkrVQDPFbOq4oP6ICMcuGb/kELAqyYScGmR1RNFT5Hr38T5uCg5K/mQsGyoJ+7Sa3wJgrKzGS0lptUrSjBpCQqIxfEGVh1qsICJR2VsP8HDpbI8VGTRzaI9JGiExTxJ5eNj8PaYF5bZwRKeJ2oLHBsEKZlSgipinYd1nXcNpbq4M4/CrDWls/ca68OCcM1cY30lRXIiW2TGLG0NsIY31bsjRfhI0lBaUyTPWhDNtep0IrXX3Zl7p3cbRXMNdUcVWlsQVSZJ1LG+9l6ZmeMDjjMXekosZUBerVFK4i4VUgZR6HXh448/ekfAP9vLu/39kmB+SWDv06b3OPxL99mngQO7DKTx+2comHfkxjeMJb/Ds25pC7Zja9T6Bj65ud8za/wzBeqOPvhWk75z/o2Fvy+C2Hse+z5s/XyBhOil52U1lgLn//ETDp+AfVp489Y4P7zizVc6T0+J+7Pz5q3w0AqfNuWpOZ6U6kuwEppRmwCR795HMUpviboK2JEamC0ERa2V4+qJ5IAVRARvC20UJE1raiRwmWtUU9YFyxo0BuYUj3tv6ZEeCiNlYalXnpvrBojN1EZ2TO+VuzKhdQgYDWbEbsbinUmF1Jw+KImzR2wBRuqn2EZlvHgNPho3jjlgkaXVwM49ISuuK2MsRCnFaUsKhUBnMdmKhKpVkGNUoaZhVbqQRqD1i0dDeuKUGnhUCLMoDA/H2FVf54CODh7Y9EEiPlGtcyaC0/tiMAzy6h2OWFAbHDA9Cx9jPBBZLstlDVB2XhXn9XGwVbYDOXdOw1ubqVuB28odhO6YT+2qBNKw+t2ULI3WC8diXBo0W7B2pKshaVvwTGVwHomRO1i6es0Zj+fmfsS8AAAgAElEQVRqoY34BBJZNQCkzoTSPArVFjF0UF2zoyqZ8vXfaQfTig5834fiNugp8XOPxpu3lZ+Uxg/+cKdezs+CnlsCBwSUchOzW+XALbXwXiC/RLOy7vd9IHf/vD1d+l4mDGXzVS35/1/yyd+2zaJ6wQXaXhg2vffV3KR1zD9LvfnAoF961r5fm8ZeF8OqEPz5ZADILnjsfs2K1fe4aO8+r3D/X/5y8s/5CfxTuH+A82Ph4S2cHpW3J+XpAo/mXNQ5q9GAp/lEkiNmMxCYZfeEupNcsW6wCwivQiBJCp773bgXu2YWuBS0dgIQifOWVkkahFjgmDi+KJ7CWnzGgT+Et1lDNW0KYP2/96i6PGjCLTZOrZViIZRr7RgRNPYUFvkqVCMlddBeDJc/skcG9YCmCLiuuL6NohpXxI00JbwZKeWr4vGM6IyTIydb00ZGZiYcUmPKQfUQ9+vbunjozjFnvEeuvKqSDh2j0Hujz3Ylc7N4h5qEFjA5RZyWJDhhhgBpriBKVhvvYegY2wNKcuF8qVTNpDuHDtNBNst98QlmJydD0xkoHMQx60ySscVY0rtV5CvraHg9jdbWbC9Di3KXImNIJOM2kTK07kwSY2kK5x4B8mRGkUxxo4+xNg+IqLWGZ+NwLPSeOV+WLV4CysyCdIccc5pSog6qklKuNAl7uFE1UozjPpGF1d05Jvjpp87/3SZ+8G+83fiX3mt8vbA/t7/7jZF2AwWLyzuy531ybe33M8j4q0BBt+0bQshvgnEEOm1sOkXwwUehDn2Eeda2WuPrtdv91gDrXjPv/vbS82XM1WaprzCOr9F2xgnx9xVO2gdtVkWFRwBz7aPv8mZfxOTE6Jr4s7+z8NF3/Tj2JvPwduHxTeHxAR7v4XFWzovz2JVHhxPg0mhJgMLJGn1WyhTcNuIaBVDD7W5iTJKpzci5gEJbeqTDieBDOHc3fDA7ttYhQ+opcNZh1TY1tGWSGLp0jE6yCVNFmMk5QetITqTWkWnC5oWSNO6B0OtCfBI4IB8Eek1I9sikcKjZcTe0hGeiEhWt2Mh6yTmO9R6Wk2s8O2YQESOLBmnZZn0pzRakRvXpvPRh5cPSGscSsAyHRJ87mgLHLRo86Jri4yMZIE/UBVKKuMfFG05Hh+BZEIpXShJevVYWFG0J6UYpmSaVu1JIrSFiJA9qhDws3NwXLgY5x5q5K7qt/tojzTNLgSSkWcAb3RuHUjgU5TT3SNdclDIJR4dJE1kds4B9FGduIRzn3rgrIyidgp4iubBopRMpnQ+181pD8ScEBfriNITjoSPeUfeogXDHk2CiuDl4xSVzSEKrgmrAWr0HpDRNeYtrzXQOZMiRCz/qZCPgrZluFSEFPQZRj+DuLN43o0obpJSZUhg1/+Ah8+f/9hta76Pnuy3oPKtGFwe/oSkRB5OdLCCuEb0W73U3kJ3huoNr9tTDm/cvLwdxv5b2DSHk17ZaE3tBuB5bc0r3lYGw17zvh2XeG2Td4eabdpZr0OkdBfFCVH1f0feSIF/vuX/e7T08wx/8vgO//t/7IvenC/K2cXo48PhWOZ+FpyXx9rHy6MKbxXgyYbbExaDJQs+JfElUs41zJQ+OmJVRErlaDNIG5qpRUBbWDpt1vSzjYxeiWCtMxVjT1rIqiSiucV0DuQbSQJSUYkOrCNkrJSmPre0qQMOSX2bn7tWwaIfnkFIE9lRjNjeyLi+01tDiUNsWnDsTXCht8LDsc46tCzYoM3OJbZClRqBTXwUJW+8cPGE1FJJZZr4sfJSFU3NSmhCriLClkrbWgkNIE61V7iYll+B3PD01yqv8TPm77Ui/mjElJR/G+3iiXuZtfZRSKBwxXzAfNAASqZhHkxB8A7Yo2qg5YYuhqSCakBbc++qCmVMmYVkqIhPLMpMOr7jMUXkZfEFOySlojFvnOAjg3J08vgiWmah1pDZWJ6UDIj2EG0FNQBIO5pF95ZCOSlDFCO4xZlmgW+HATE+K6oQx3BiIwOwgN7OWBnxbYRS8YWXUUQQUE4aAbnOiEplUUsJArLUyrSmz6nx6mvjzP/qG6hfuvHCRa/B2v1f3xUnvy6J5dswJBQbPZMAVAXjnUoAXU7P39/5arPlvGEz+pZfa4+vPtN+NNX973Z5bfuV0d3l3El+6/naCdfUsdrGB24Dt5jl8xoc/3mfJW574jn7hJ/7iEZtfs3wZ3t4X7r8CD6fE4yO8nTP3c0ACj814WCrdEyYpMEAz3s4VsgbTYot0uSIeuPb6Lk1p2ujN6C2RstAWobY58F+vFC8sJpsbnPEIWMmVUx4VJuKrSSKRa+4tXOhMpNrpqJZNKbG0jgyBvSxxzfEuYfXKlbLMzkcFZheO4+NBNjDptdxeJeMeZFnr5wgDV77CUM2ArKjCQQ3rss2XD9oE00jHpEXOP0BO14ybdp6jSMuMWSZEhLsUFcHdjZwOOI2iTpoiTgDgqbC0umHpfeDtIeAbnjWKpVp4D43BClnblh6Y0hUXz+Y8LpU0SvyPmkOhEgHH5gMCsrUMP+bfPQqhbDy71gpTZmpGH5QST9Vp1dHxKURNneOdoho58lt8rMHhMHGqkb9vFopKbQRArXA+L8gkqFS8HDC/0lyoXGkPzBrHVLAVrhvryTRiIl4bphIY/FoJu9Icj9qG2R2vsdYW7Ar9ycDeJfZ6kagp6HYBlMd24H/4Ww+YLdvee1/gddubu2y/LfPmJjZ3u7+3gkt9WUh/NeF9G/z9PJj8N5yQv7W0V8G8O/968S4rZst393cnYN9eqmb9PFpzzyS3n1B4NzK/BWSGtt5r7VsFkOXA5Ye+iB06y5vO268Ij28mnh6E+8fEp5fK23rkoXVO3Tm3EFJzu1D7a+a+YJLADWRhuaQQIkWZFGzjale8r4sHZktRbFODGrhI5L3P1XBPOHOkB47NnDR45YMh8qrUaooCqWAXHEVAHt9b7X3ltoFjjrL11+XAaQlq2rxLYexNyTnypnMPL0HGs+vu26B5vIONj4vkcojqXAsBefHOAWXWzh2Jp1FpOSmgiYMLJ2vIwIdXQrQ+jCpNHe2OeME0MkSqddyV3KHnqNx196h2HUHqavGxC3Lh0jq5RD9fm/MokFpiUkNEEVs/wOJ8QuExGdWco/gzmK9IFKWJR03U63LAfB6QRiKP2v+HOQqpTNly0Okj8N2u6cWZaxGYDc/OVBjV/ngSvEY6axuW7l2eMDrLqGcwM6RBPgqpJuq5sUxKcqdMQVmBpXdrSyTTrIYwb52UCpmOofQcH4dfGTAdqAofuUT2EIpLUGPMolzset+NIXVAiaSosJ2kRpaWJLpe6Dnzoz954K/+w59i9tVD2+/71ap+v1e+L8zc9rL5M9lzm0v/WQbfOzLm5pnfVMVQ8EIQc+f2rL+vf789vv6s7UXc+4X20gR8nuvf58bdHl8F+z5v/rbv/+A//SLczdinxsMb4ek+cX4q3D/Cw1l5aIk3rfFo8NA7JxKP5sz1buP/XpZls4xUlSqJZpmlK1Uiu2b264dXtgCs5Y2Sdw2IrhbYKrC3BekZPF85wYeAft1kEx4QH93oXbB+zXxYCa7MjMvlEgJslO4DWxHSZtkN672qc7a69VsNPBl9UB1P0wTjI+AppeB5nzIijlblvjbwzF2emFDuNDOLc5REceOw8+62n3YEL+So1qKIcUxwVOfVQclDOKSUeF2ioGYde5Gokk0O0oYlbBnreSuAuVjEUXzKuAr32bbxcI9ipJXAbfaAZza+eIsveAnhXfSm9BbvdZSEtlB2kwclteaZ4ytjOghlGmmSOT8jaStrzn/vWBVKPgbUdWqkKpGO2TqTX6EwEWG+GPMlBOz6nYDiwRG03u92zbv7Znmb2cb/vs7vev8JpRjXTwu60yxxLtOz+67zsF7bWmPuDZcTvQtV4dIWWhXuKHzfz3d+7qQcd5z/L7W9EL6VMy/t99tj75MLn3Xd7fGvxTj/GQt5EfmFIvI/i8iPisiPiMh/OI7/YRH5CRH538bPb95d8x+LyI+JyN8XkX/ja33mvrr1nUF+6Z1VtrzzW+VwOyHr8a2ACrly3XCdxJcqbFdX7RlMtOvnPn9+z2Ox/fsmgwXAsvH7v6fzHb+m0j813jzC471zOaXghT/Dm2Y8XoSLC+faqBa5xLU2qnTMGlaNQ45KUbGM0CkqWLMogHKneEJ644RRPYijtIN45bTMSO1kC79kLSxLBriFs2RQzfBmwSOTE31eSCJk7Uw+6AkssNUpp6DYdfCUQYPVsIgOjh/DagT2yjovFkyS4sOqHlxAPeWr9YlHRgzXatWlGZM7yMzsPWIKFu7y3WFCCNIrU8G8k4dAWUwRg9kaRZRDig9cd6/gzulyZnJBcQoZxDDpJAlStck6j5czIqMIp8Tn7FDnkCATME7NzjHHMRhC0Iwk8bnD3uuo6u0sKcZnMY/57ivtLZScqVh8qk99QEINEYekXOoS353NiaRCngrSM32JnPNcnFcfOUwL00eJlhpNowCqJrApoWqclhrjdzdF4JHOXJ3WwBfj2FNYr6bQG+eB5ReC6bS6DYriPOgiBveORaprKYmG0jXSIueV+z12BWA0iZiPZCGbUkVoGG1ZotaCSHMVH3QJct2/SYRCRlJU7aK6QZZ1mfk3v+eL0T+7NeSMNT6wyoNncmM1kPz6s9KxMPbNCue8UwX/kuh6QdZtPdkhF5+n/YzhGhH5DuA73P1visjHwN8Afivw24FHd//Pbs7/5cCfBH4d8POBvwT8Und/N8Lx/Dpfc6rhKjS/hn5+JqZ+i6Ht2SBf/PyX77yIXT/28YBNgdjLMM2+7bF9d6dPxtTgk5758b/87Ry+NPP2Xnnz08r5KfP4Ft6cM5/OFlb8UjlLfIrtsdbxgQowT2HFjg+gii20kZ/dm7K0yG++m5y5NyZTusaHJJaLRDCThT4ogCcJXL25073Q7cwxFWobfW9hVb26E3oLi/BsFz5RoTcjpcJZLQRiiyk/WSPpkSSGj4KZPOiN77TQasWmhFjmcpl5fSjUAYV0jwyMjFGOY+xq8NuLVkrKLItxh6MjsCpunCyCrtJnXh/HWI3PCk6aeLyceZXiQ9kiwtIiE+qYfLj5UVSWJHK5NQk1C3lZOVCElUemiOLZOVhgxXNvJLlalkgC7zQcNPGJKG9aC8oBM2R8LcU0Qe1Bfm9O7TM53UFvY10lNK9f1prQAYdlHTQE4xux2iwK1BxO0rkbQvy0BAQT8ZvONE1Rd9BhHlZ9pCUeeLysn2hcmA6Jg3bmPuFzpRxibnPOfDo3VI2PDsKxKEvr+Ep3oIKMj8E3udYHkAt3bpwbkQW2NEgBE4mzVcWuhHjZoIliRTnXRvE1rTS8yTyFN7gWPBUXXIwiiTrqJ1prJHXyYNF0jJ9688Cf/hEBqdtcfRYmvwn8nSi9hW5u214uvRRLfKntsf9dv/7pwTXu/lPu/jfHvx+Avwd852dc8luAP+Xus7v/n8CPEQL/8zzrmTX+Wa7US9euba9195p4///9uS/d5xb2+Zlc99Lx9fc0fwx94p/8V3ccvvIl5ifh9ChcTonHk3CaM28rfFqdNw3ODtWjfH+1jpYeRTTkdC0w4lpNuueFN3fubP1dwwLjmmlTRIOWdmQJJWT7ZJ/ZFUYppVwhoeS0Psdn5og0ufNgR6y10kdGSEqJZVk2y2QjL0tBi+AlPuH31I1+aGGJ762mHWTn7kxTwBRhxSp44NLVg2em2soF40g5MvfA7iePH68hHN2Df0f7FZZqrW0BXnrEH2QK6zQNcrctFjOCgtVt1AsEXcKa471ZlePeOWdUjLMu3E0xfrlcmUZXXHkVhtM0BbTVE5WwqLcc8NHHuTdOc2NZYxRmETBVYR52VW/xrd217ytd9H5M13WyBotfHeCQGyKFuhhLT/Eh7UPAMjlnTstMUeeQdQvsqkZlNa0jzVA1bFTIbt8qsJmnYUG31qKQjogJpBRVsXtPfJ3LZwV0KeZinxu/rsvbfb/uBZPM4j0+mp6Eb3v9Cb/sW/MzmfM+gX0LG6/jt47p54GGX4JwPi/883na/yuYvIh8F/C9wP86Dv0HIvJ3RORPiMgXx7HvBH58d9k/4j1KQUR+QER+WER+eD32jLynX9MX927Ne+71Lsxyg6k9m6hBT7AGo+C5i7WnTNhr4v1EbSXIO8qEz8L194I+8cT/8ge+E777yOX0BT59Aw/3wuUsnE7Kl8/O29k4dWHuwbOyoMFPTpRtD17CcGEtqHi7ROFMt2CUzLri22HdBOVupnZFcg7yrB50EVniowzqCTyPLBTFx4YMrLUx6ZVNM2somGZBEnZIeZT6BwTh3sGMu2MswSxK0Uh7sx4wTvKRc94aR58ggaHxY4bkTp7S4LkPfpPUndwjNz4+IZjo4sFsyIAmciiRCxlPwYY4WwtWSCLjaLEIfM6tR267JnJRekpQCkriXBtGQFHdGrSgN15x6ITwUVZE+8hECsGvzsbmaF7wHsHgujhumUtP9KSRwaMJTYVF1rJ2I3kO6tzSKbmNNFVwlIM4uTs6qnhTCm8B75g7Z2kcU+KQEjVFIZ6kROrOlDMiyrJUcoOT+viObgKUpoA5RxVcl/iOQAuaZcbcX5pjptwdQGnxXIIfp/sQ1LCNk2jwv4OhPdFrfDqxoEwmLIANz2YB3GMtV4+iPxOND52TMA0q6XUvzbUGWVm/UgLk5pw9SPrcRr8sgURw17tTtfIbfnHhk+m6f19qG6S7E8gbYZnZO8L7mUFpO96tl9oL35hYScu+1vazFvIi8hHwZ4D/yN3vgT8G/PPArwZ+CvgjX+s93f2Pu/uvdfdf+8Lznr/4e2CQ9dy9VfJ5rOr3adX3BT1e8hT2QvvzBFr213/fZPyK3/QQBU/3yuV0YH4ofOlJ+fTi3Fflvicu5syeqRZu+rIsV2tl99zVyrnU5VngdA1wzU1oWmLzpScgrM7WBnxigR/v+z5JItk1VVRECGj9eUYR0tAUAUtZOhl5ZnVNjLS23p9ZWatVWknMFkxVtvvwy2qBiVy/ILRasavnEsrrwqlfA7NdMnVpSFp4XRLalhg7wjJfMA6uXNZvy45nuDuzXZ+x7+9qvYoIx0l4dUyoLxzy4FtpytLTs3ut19VaEV1wS3gLWoAF45g6sqQX17YSXDcTyuQaFcg7gbKI4SnI5TR1Ur56RyKRffTkjXMP+KgnQWtnyVcvRHV8y9aV+8tpBOYH51CW4Kwf1vfS07b2ehYuFn9bv6N7MVgY9MYtqDRKKSzWuXjb1tnax83TEuFk9QpjtsHLkxJuwSbae2Q6rR+cud2Dq2fXZQ1wh0G0jte5LTSFKr55K/v19dt+2ccon22Rv2Qwvu+89123//st1v8+4/DzeAjXNfOzaCJSCAH/g+7+QwDu/o/dvbu7Af8NV0jmJ4BfuLv8F4xjn6s9s7jliqGvQcyv9tLPrtnj8fo8ZfJWe67Xbl9x2h9br5ErOdmeWOjWe4BrkPWlNvnH/NUf+lbKOfP05DzcK0/3wuMlM8+Jt7NyL23AD7DYhUuvJJ1IFAwf7IyDE4WEObRupDSFNT/8kdc5Ixbve1kaSzcORJVqBKpC0NUmLAssTWgG7oGhrnnlc3VEGwfzUfByDTSrTHiNysMIGmay6vYTBmJ8xzUqlh0ZTIn04GPv0jiWoKyNDJcgyipJSL1yPCRk8M981MG9MneYinIoGc2Fu5RRzUxZ4/uuBF9LKlPkTKdppI8mFnowLXpURyaN1MCO0KohJAoBYaHDQ1kW+shEAhASnfj03V1KsFZjaqVIRN+mQ+Ew5Q0GexoWLK0joohWMGeuS2D8a7Cux2pVH3wvObJrgkkyvpjWJL4Xa+MDKXnKZA3Oey8T1QU0Ucoh2EGTc7BgEE0CXeND31YbOU9MKhF47g2zRtJCkJh1EhmmTE+CuHNMwVG0mLJ4UA+rBs2CJaHh6MDBixRCBEV1cdcgX3OPyt5pZBSpKpLCAz3bjGG4OKLKUw4KD3qLtSNcg7nLAmbhQS1nPPuWclq7kLQwQbBx9sgqqiOuZXTKa/j13/1z4ruyu71+2/ZU4beG5C0ce2vx7+/3LNgq78oYcZ4x7X7e9rPJrhHgvwP+nrv/57vj37E77d8C/u74958DfofI/8Pdu8XK0m33Xb8x5pxV3Wvv7zuX2OfE2BaxEwscIgghjhCYCKOAQDwAr5EgUiT8kEhcXpBfeUFcxAsvCBASCYqEeEGOBIpBRjwgFCxbgiSOgFgRcuLbOcffZe+1VnfVnHMMHsas6lprr73Pd7BB+lxbW92ruru6etasMcflP/5/mUXkR4AfA37he/i+20r5klye3fL1zxEw+FMjvm07CdDxOCrv7HP3PTTbzuW49QG52ow9KjvJ0Jay2ekQXuhiC3Iv45f/rY/xnrl+nnhzn1juJx7ulc8W49Nr59GUaoWVIFSyXqgmrNca3YEN0mitV2RMiFBXaq0h3kMByQNvHdX9hNsUreCSUIWT2BBkzlxVgtVxpBnMFKHhqSODqnfSRNVoNe8C3gRrlV4XNE23qGIscLVH4bS3CJlLKUiJYqakaAZya5goiaAEKJbjhtUWxTM3Tkkonphyoq6dLqFHmouRicghSSweqTesVdpoJXeXKMblW35cewhIX3ulIdyJcqfOmTSMMYBi0mA6k1uPlFWemNO6y/LFgmFYb5H2a51zKmgbnCmSsB6GGIxpduZTGpDVYNeEiKDmMu1zLjzNMd1N6U2gCkgL+cJSIkWlxlWCuMy7I9oj/02CKkwawtqtNbpC7dG4Fpw0xuyJWRI9K8V9v05JgnJ4UidrNBxpcnp13OLzUjIrDauFPtJ5yZRVOiVDkxAKb5pGSkkRcdb9vhA2JEvvcU1XC5K0Vonaknaar4g6J3PyqP2YMBrtQgR+1pA5FHPupnmPutBEVjBvcU09FM/WpnRT3nZDSSQyf+T7rnz/AS78ErJlswdb8fqIrnke9W//t9dF5ImjebRxTxSn3lPD+yLb78ST/8eBfxn4p+QpXPLfF5G/LiJ/Dfgp4N8cJ/XLwH8N/E3grwB/3r8LsmbbnhvcbXtpwI+UnNuAPeGc+C4e/0th1Xbc9312w7kfc/Lb978vZXPcamr8mMGP/Klfxx+Et4/O5cG5PBpvK3x+hcvQuFyt7x6HiASiIAcb316o67rjurOxdwNuYWikNJa4QfeO0r4X7bZQvDHSAtyEDVRvQtqzOq/LQpPOSmIl7WLeR+w2ELKBY7plbnjpI+7+yEK5ebgiAlIxD976bIGqkEPz2PYb9hrJRhMw8PRnzTQ9zAe5MTH2pnvKYDvn7fPH9FDxypydLA01h+Ue8hy4fwlDOUkje3RM7ljz2keR2vb9W8rn2kNFKlIJyrrE+azeQ4hcRvMQN/RVQ7n2Gq/XSEVliUYjZ9nnlLvThUDueGEqrxBtpNxJCc7lVpjsScITF0HnQBZt47E3sB2ui3vUDtzSaH4KScAslcSKqvLRaaPMEMpkT1J7F70JvmwC7Eh9cp9s454MksG63jpRWwvnZIsoN9oKYJ9Xx3t2O+/jfNtYPPsgNNvGzFQ4k54w1P6zf/9pP7f3gT62uf5SKvclm/I8lXx87fj4PtvxvaRrvjQdr8fti0KOxuf358eUzxf87pvheM937pHF4aKIvNz5+r7vkJJY/4uvgTpvPk9857eFhzeF79w7nz0qn5ny2eLU1lgtcTELdSVgWSu1b5M4JOF2+bjhJbA2VtGQPnPh2hfO+cSyLKRUaKvQmtFTdEZONQxRZdpb1UVCMCIX3+XnxIWcOtchulFEWZfKPMXvmlx3b/GUE4sJruGVuTunLCwjxUB15mw0gwePlEyrQtHOeSA7TAyR0QQ0hLbj4gjUzjUJJ1UW72Qd4trZqRul7Oo8SgfPrGunt0SZAmZ4njJ586bEWJvxKk84jTlHL4INoi76MHol72Oj1iNoS4Z6QPdMYW4MTzWw3N0dNrK3dDNUPo6ZUiK7UyUND11AHRdlJoH7vsDbpgw1d2p7WgAsHj0LMX9DdCRPyjLmxZyE2qO9v/cei2C/FUSDDuGKm2IqO3XABjtUVe6vibpcuTtlygQ6FgfNieUhosImjddnpWKDtljQqUCLhUzGuFjXoJhgZZojp9+bgJaoK5hiEvDMusZ1SBIwU1XlOvZFUXu7B7faSqb14PUP0rLRdzEWQOTACDvgmYpH5JgFvPO//vprfvHXvh2QpC+4HW3B0Z58yAa99Nox+7BlCw4LxHe19l+ajtdtO66CL732fHu+Ej5PxXwRz/5D7zlGDS+leV76zufbf/hPAK+E+qbw8Cbx+Dbz9gL3j/Db3XhcrtTNs9uueOvoMLbTND3xPDOydw0eC4NbN2DO6Wa4vZJleLK90C+RdpFTQVO/pTJU96LYXqDStnvEswVyZD5lzlootnn++qTjcyvmTgSkLo3CWUoLFxdMMnPP+2e34pmI7Dzq8dyHahJYz6ic9vM8EpFtRdJNgs9piHbmOXM6K9A5nUrk8r1jOYwaWXnslZaEap1iN0hd31Jve5F3wBCZcEv7OJsF/74loQ+vfNJE9kh7QFA3F4uxLNNtroRAib7jmTorp3MiZWOaFNWblwyR+tM6FLw0NHtFG9N88zTDe755tvuYDY++irN434uS1Tt1wFfraBxDKindoJXbeOxjPbzrVuP/SYJ+oorvEQjw1Is2C/qFnsALPmXu8hT4dm9MU3S0ilrAdMWxnujtFrm5h5ZvtYiKhOmdueD2FCrckzzx8LfzSdmiWGszf/T7Pmf+gD3Yo3h/f878aA+O24t5/mc26rt59h/avjSe/JFI/7gdc1bHQsb7fteRAXAnGFJ9Z/BeWkg2r3zr+jy+5xh+bc1bLxn94993/hW+SuJXf9bwN6/51rcan98XPn2T+fQBfuvSeNMlsPCm1NH8crXgnGkt0BFZRr5yyHzKTeQAACAASURBVPfl8Fe4+jBwNeCcm1GKppc4nznFcaVBs6AbcIGUQ52n4swkHIO1ISlyv1s6SCQ84nmKm6bWzikLUjuelNyMNE90W6nkaFjKN3x9eLHGpNDIAakzo6oyDU+srZ3XCj6geACiwafjlllaxQbpWPJOTxPqnVMqdG8sw5CJBRukc0UskBy9VqoYJd/RB0XCKU8stSESAh1F4rq3NtIM5qSsLFcb9AaEZunG2bOlCCTqIqID3moNccVy2tEq0oLqwVy4K0JbMz6YErOHgMjaln1uvc6FZo5OQXbm7iMfP8ZtRAQlpT1/nz0K2StGG9h/G8XxU9b9OvSR0mpVSBYYf0vyJPV2ztOe1lsXp5mSsvN6Cgx+tUyvS+i8Xlc+Pt0FTv4czsWlG5Y1FL5hn5fLNaKv5HCVrS+gkkiHe2ujPBj3rB76XrY+DtXdk69bxClOaxbIHxeaR09FEedqDWtOlkSZ4h5qLQS/Txqw0Vqj5vWth4mf+z9+O9A4/cPNTkfysmO+/WhfPrTtXr8/LcA+tzVfxJP/Uhj5o2cGT9Exe6eq3Aqj7yBfXvjss+94mgvc8sXPwqx3nj8r4m77nqdu9vcc/laM6mc+/Q++zsc/UPnss4m3nwmfflL49lv4zITP1sp3WkaoPPZABGykUVY7bgXTFaSwLAtZw/hO6tADClhINPHAUbvgvVEbvJ7z3pg0DQ7utlbwxKWCTMrkDcS4y1MUQ93xHJ2HXQp9UA5raiTJ5Gq0BOqFQiWNRdeNXUe0cuO1KWUOz8sbX59f8aZeScPLuqTK3eDTMWvM2bFGiIRIIFakD3k3Iu+99hoLVEroMHre4kap6tSaIDeKOHd5otbKtY4i9kDupJQ4WywiTeMmLdqhgmhGrNG5NeRtkcUyUhkispOZnQ3WBLk7JQcMsGdDBwWzuCOJaMoyY04Zq0FbEBHUiB5Gobv3zpzO4YmXwN27O7M3NGce+8qrKdSpsiuXaiPyUtALEr5onHcVXIe3PThiNuRGb0FN0MVJRNF1y9FX7eRqqDg5nVjWCjlgtceah/WEycpSofTMmlden4Oeeh336SwJpND7wptrBc2cUoEUC0BKibVHUVkkKBzwfOO2cSdYRxt5DHqTzhNm1RHhbuIurtH01hTm0Q3eXZBxTps2rUiiuzMl3zuO3RO/8Hcrv/wbnw+k2rv39fHvzfE8FmC39+2IQLs5py9lA7bjbffM8/1fxMh/KfjkX0p7iEQ51Q+r5Id+7ftW0ZfSOfi773n+fPv+9x37pYv15Jh65k+/uvDxH7pn/c5XWC6Zx3vnYVUeq/CWxn2PztDeozEmpYEp75mumdqN4hNinTnlQFI4IVQhRsqJtjQshRGvzZCsQeQ1zjkTNK7dnVwAF85euSwTTGFMN89GRGje0eSs7YpIGJqSMtYcm3MoE/VR/JQ435wK5sMgInS7FYlFhJwyn/WFSRMwqIZPJ3RdEHWkJ1q7Ig5FC712TqcpPNPWDi39IdAgEjdyzI8NPaN4M5YmJIX72kgp1IFUopZRNNNbp+dgTRQJ1SzD6GlGrKMYOZV9/LpsmHCltUg3eI2ctblSbaGkwrU5OY9i5si9P64V8Yx3YTFnvRrVZU+lwChG0smScVeuqZG7hO5uGvhuIJUbiZl7YMA1bQXzisoECBvWoYmTyVg3vEsgpVxZugWsUjaRdMc1lKRsqIgJOdAsBiKFtRtIwqn4SFf03PnaiHJWNbDMwwKnu0D9NBwVR/ojdclx7mrk7LQe0WKtlWlWbKmIJNwGw/yhQ9pdyCkWKjPbmUv3aP0AzhCRgOamRPNOHYL0gu80FmlLvUmij9qDAeorSU/8xDeUv/mtQHq9dF8f/46oDraE/xNHc2QlVATnaTf/c4fyuZP5IRDIS9uXwpPfvGtJ+uSivfPeA8Z0fDb+fk+K5zn3xEvv/cB5PXn/R564SBTWnE1l6OULISJkO3H/l17TO3z6beHTzwoPbyc+uSi/+dh5C3xer5hOPFYbBbpMcnjb+kAYjAVuhK8yzudqlbNtak3RMKQpkwZ8cnVFE2QX+jhP7REOZ4Jm9v4qqCvqbQ/XAWSTTOudWQvTyaHeUA6mCfVMogaqpTVUAh/tloLvOxtTB5tPzBL4ZzQFD7g4vTNu2sZdSTjRcXuc3Ncl2BpThtKFloRJlcUGh/24cSfPKIO33jrdJ6pFB2hK0dTVdcsN656SKxIKWJpT1B76rZOxpIA1ttboFumWSSTG24LlMlIHoBpIouoheo0naov63eOyknIcazXnpDlSDJsWypaKcJAU86aut9b9rIdmLMIg5VGE1sluNAAS1+eyNKwofq3MBww6BGrHWnjLkyukjblUsBwpDO9BZ3FsQLu/Nlxgmgp5IHRaWzmnqCc0Fd6sRlqColpPLTRL21ZfGZxJGlqvLYGQbkYtS2gPSMJaaCJ0H9KAo7EpOTtHU/KAEddRkL0htIZmsYwegGFHdjZPySB114p1E+Z5qzP0IItrSvLKL30r81f/zpsvZCu+m86FIk94bp6cM7d5cPzc9vrvKU9+256vyscfr/pUvGPbXkqzHF97vv+lheGdNNELxvuhAG285i+/57j9O//kV0jTytvfesXloXF9KLy9wieXlUcy19ZZDcQ7cOvw7G0T4ojJcG2V7DfvxczIox7QWwtPJ2fatSIH77knaLVz8oxZh8EtkkWoEnnIRMKHeMa2TSPdMk8zti4kE4pmHlsYBRvfvXknpRRwjyYwzXQqnjLqhjRnmqOFf6mNJOH2qCrZg14gmdOsM2nmM2/Mo6Cbc+YuF1pfhiLQKCj2TsoZUsJ6aMC25OjQGcq2Ao6lPOCHCffwwLuN3/DoSBGcofSkjayZvvHX14qnaNCqbnyUZ1pbSSpoyrh3TEBd0J54W6+UNNNrYfUFR3HLlJzo3va53ayRpxnzthvgYC+UfaGCSia6PZv1nbagAevlCj4xpYzXjmjADsscxUcmZ2rOeTrRRgEUYDXhTitSCi0JsnZaH8pK0qlDOP2jqXC9tv1e2IxN7wnzlb6Je+tE6p1VnZMWvvLauV+Cz7+uM5IbxRTvzpo6H5VKZQI2D/zd+3e75quFcU8psda+1z7aSCeZO0NHfS/qbve4mSNZySlxuVyY5zkWbQ+PO9A5yrIsnKYz1qG3UCS71BWVTEX50Y+EX9KZOjSTn3vZL9mNl1IwL712LPwej3H83JYS+8IO6ZfBk39pdTtuz3NWe678BfWVD4mCvGPwh7F+npt/fmG23NqTYi7vXmB3JyfndYff/kt/D9e38Mmbme98knjzAJ8szieL8UkXLtXAMw+sdB/n1w3pRifaxcOQ3wSgN6HzksBqcMVPwxD0FhC3yE/6DsHc4JZJMtJDKan2p8XszbOBSO9UwrvHnMbKSXNEACU0W5HGKU9kafQWuqFt5/4WemSZeXV6BW0ZBFsjGtFGb8FfU7VzGhjzQEVs9LvC0kMDNsjXMlWcKKuOsRoIIsXJcxRnlUR3Y9JM78Znj8bpBOfBUvm41kC9aKItw2ikG8ba63VcS4u8r92w5jkPWcXu9DwgkjiZiS7OxCZxmPbfYxIpikht1cCup4Auzhpe+KXDbJ1p0CRUVWyQzV2WKyoz18uK9jKoIAaXviTqJgJC4MFbciZZ96aqIso0Q3enrlFbOY3f2mX0H+SE95CLrOLogGpuaSrrQrLMVRcm3XQHKqccaKzrOjpIxXi8Dzy9S+FKZ7GV1zlxigbtXYUrjfmM+k4r0NRIduujiBpCzJnrYDCFrRlyRPyDKdRzQCujPpG5hPYgRW9aCdvCChGNmThpTw0EeR9t5XTOXJbEr/72hZ//1fsXDe2L9UMZDZEHO7FlKI5w66PtOdqw5ymbbd79nim8vm/l2gqv22Ad0TfvHTTerVYfvisG1N9933HfsTgLN2MIN+N+fO3JglAS/8tP/zD/yE+s/MZ3Op9/9hGfft75ZIFPr87nDm+vjUfrVCl07/tNqhKhuNkI/z1QEtU66twEJXJGhparKCOdcmNTVFVa3ybZiBDqmNwWhlJVmdWxFCiLnM7cr9fgsfENHROpHRFBhsKSpjAsdwkgkD5dQg7O3ZnSRF2dmoWJaLa59DqYCZW6Y5iF1AQvPYjngeq+G9HuNhAvbeSbw2NdLtegym0jpZBuZHbLHh0EJQCA1cY0azT2DAOWiZQSQO6Za4v0xhbm58MCzrYAHIQ2lLH4pPBegR3NJCJoUYqE8pWWuCaMwmXvnZJvTk3OGcWRoYsgKUfXbjNMh5Ej4XahrRPTcIh0LHLXS6eKgCeE/iTcV4m+CB8DVCTkDs95wsWiC1RunEN5yiMegrb1hlShU3lYlfMcZGziiqSR214HwgXj6iEyUjxxcaHJwquSmWTFSKFcJUGfISKjw3rMC7tJAm6/oRujKCvRH5JCjzdJoGKst10VyqztqCJNZWfG3O7NvNFmCKNnQHAN0RQRoWzGtjjrEgvOf/U3Lrzpy4sEic8N8nbOR4DGcxtz3L7b69t3/J418sd81ktQpRcLFofix/Nc/Dsh0IBeHZkon+fVnlfMn3vwx+Mefgtf8863/svv580nM7/+SeLtw8Qnb1c+vQr3XfnMlWtzVlu5mmKEdx1pIB8NJSDmXHKirwH7m3MgbABOJdAwEfoFz4qN3PpeMBw/LUkgER4vjUwm58wk13jEuR8EX5MkKIllDU74wBz7niqxXVlKSd5YKUyjEUuKwKB+6A6nLqwJpln3yT8NrxwYHqlRLFFlQUdkITYoaEvgvzcO+22IJQfnfe8hvA3R9Z+HOHg36Kpkv80PzEnSESkI0Ylapjt6u45ziXpCEsHqlj65XVtjGCJgKxrvEdU00bd2f9m6i42pJM4Z6uq0ASFc69bDkPd6wW3uhZGPlE4sLOdUaNjulKxmiARiZEuTXXoNzv0SEMXLhsgaRt5GTn8aBkzzMKLdw4OsjTxntgEuoaGHuzPKEtjidA/AwGnunM4Z78HrD5AH/lwwLt5wS9RVKWpUU8oknHPHSKxjrNDgAyp664Le5Ai3+QFQkoBnlmVBS8zJtTbKWJA1jci7G+cNZeORJd+OIyNiOY1FseOBm2+Ry+5ZcTNOY8HJJ8W6UmviO/cLP/sr94g9bdz/UErluZ14CcF3fP04154/flFP/kuTkz8OwP4jD/uOKZj9veb7DbeTk730vmefOVIN70baD9Vwd0yiQr6dx0vEZs8NfMuF/+lf+0M8LG/5/K1y/zhxf+lcF7ha5mKhtLQCS0uhaamKi2OthvanRIfgOZ3QVkN/QxjiB4VZOm1dkXTjPGligc/uYEMVafPW19qoq5F1AleSrswl8tTVna9o4tEi3G41DLhmI+XgmJlkYumN2judjkrGNAdXjAtdo4qaVXCPbsSWMkk7yeImy66YGjnp5hgzS8A9iys6KbROTxrGWIJUCyEau+gInQxIyqzSd8NfYngCupkzkzqTRK5ZRHi8OEkV643zKTz93i9MpxKFQzqtdVYtvD4zin+JrBbF7wF/TDljh/RNSomTBLtj7w1NjnNmkYo6LDXqLd2NbLILdbt6EMzh9B7NUzaonVMOThmzhqmhg93RcsIW51UZBk8Vo1EZ2rUeEM7TXIDEwwrXZqQ1UhvaiUivQVfBJYqv66TUZjR1JpReIQFNwK/DWGWHbuQ8IdFsQZqFNiLJqzjmgVYKpSSDUlgWY1KlXTpvEnztpHQND9ukoRopExs1KJEbk2cjxG3aWoN4OpcYY1VSCu6qDDBERkqZYsws6KfTRoUw5kXKiaULDDrnTKb2DGWl4KzWaapIDm4bx6ntwquT8I0TfPvxqa16brCfEyNu+7YF+nn/j0jUg9w96nsO7gbfQx7+uH3pOl637UNF0A+xub1UfD0+l3TgLBkDvBn+52vmTkZ0CMm247z0PT+yXvnD//DC9bMz99fC28V5U+GRORqcNIc8Wq9o6jxK38WuO0IjcW3BAbO0GoyFKYjEHEWSUnt0Sq7WB/zy5hXOHh2C1hxEWKvTu2NLQmicy0oSWKuNwqfyxqCngd3WTvOJtla8G7M2Op1SOq+y8/pVZjo5U2rMqkwZ5iKcJ8jJyCfhbjY+vqu8njvnuXE+PfL9XzW+du7cTQuvcuMuVc7Z+MokfJSdj6doVJlzp2RnTpW7ZLyacghsiEAuNMBkEKk1Y8oTmJGsk5Nwzs4pdVw7ZwnR7tMUaKBcAq2CgXrGLhXxaJsXdaYqFHdEnJM01PIORQ1edBBrTEn2jsycyp5uoE9xzTxIycDi2nkYnm3uJI+CLT3Gv+FhsiSuVdBAG0s3Lm64KG3t1B5NWprTKLRWzqRhIEBEYyyk8bp0vjo7r79q0QhXIn12lTgnScpqFbWYW6eeSBbnbQbab0IfqTs6OX1tPF4ynz8k1odYcJOsTDnSLis2FuhCl5XXd0LKxlyCiuLh6mBRFJ1U8Loi3ShTQk13b9ndWVt0JyMJLRnvKw5Ii/e7ONOmCiVOa+t+T5u3vaBdR3S1rivSK3nQRKzrSvMVb0FwN6UJsYQS6mO9NlZXSGf+sR/+fcGi+swGva/Q+sTWiIDKjawsLPuT92+5fD2QpH2v25fCk//QgL0Uyhw/83zde36sI+HQhhjY33v8zPMcv8h+8C2H3K3vLJMvefU/9298g+Vt59Orcv8orM1ZunDfVx4RWjeWXtGB6TZz1G9C0knySLn0/ey2DtYtrE0eTTc2KAkYeV4BHvOEevDV1DUEtd0Tp7NzLhlPDffBE2IdY4ToOJpiqqS84n18l3gUVFNA4QKzXnBZSUXo3jidp2hSa8Zd73QNiuDoQE0kDaHx7hmRgg2PzMxYPLz1pS4h6GGB20+jm7P3Hnlcjwglq+Jbl6NCawslJRSljW7hSZS6Vh7nHC3olmjNSEOModZK0oJPiRXDqgCFPHWslzByUxSit6KdqiK9o4Nm4aTRs7DaiuYNWhp54tfa6SNXpimNNv4bosLMsSlTq+3UEElvnObbPK8eUNY0GrBUN8lAYVmi4zSrReQ6FhobC36E+sG18/u+ptALD0vla68TOrjiexOsNxppjH1QO1wtvpc6xsucxAzcAACPl4mlQi4T8wmm2dGrwki5TJpQq0zTzONj21Mm7RoLZJl0p6xI1bB5IllEVGZGQZAeVMMbb70jAyNvVLk1qakKOu7rDS66URi4pYA6a4dSuKwrUyokTXuWYGuSyx79JEEfNDR5l8rHc+VHvjbxtz9ZRgHsdr+/z+t+pyh7eK6isWBtGYjDefy/3b4cRt6fFjd3z/kQ6myroMBunY0wkhus8vkxXvK4t+PCOPbAub60Em8XY7vRXjyWBPrg96P8wX/I+c1vG/ePwsMqvLl2Li3zaND7JtUmXMxwCtkDdy4dkkQji6rSVtmpYdmKUL3hknCptByc511GcXSwNnpfkCS0tWG9hBZoKZzSEnnglukysNPW0Wo7RtpS3ByVkMpLGbpMzAnMYsFTBK+VDFh3jExdVkoKbp3ajYwGXLF33DutgvmKD8M+j4av7okkhFgIBhUcG1z10NdGLeFJlpzJ5kga3aYS0nOPa0K8Y2qUpCMiU05TodfoMF0HJj++N2B6ngOBc72uTEwhJm0l4Jitk2oKo8ONwkJSqAvtxHAikASzFXflsjqvS6fJQLvkQErJ4GUxIiJoFvtLC7jfhGIehg2HxaK47Zbo1qJQWDvnnEiSqd6C9kAVU0U8mqW2cL+OyDChFBFWT7gIeVI+noTmgoiRJGEptHezh2pUo3MW5VoLfSC1egvaY6dH85AXqqy4ZdYL9No43ym9BMWF+oCippnajPNdZl0ciGJySx3WaMwTSTQRbF0QGRTJyK6lu/SoJ0AguIILXjBx1J1cNFKC1iENScwOnoOW2K3ui2dfK0VTLH6qINE0dW3Bm++qSNOd5vKcnbdLxrzzR37wzP/1aZBuPLEPuxGPfztm/pD6hQjujiloNw/SvufmZCv+Hjz+L7J9KYz88+246m3Y5aOR3Y3tM7TNS8d5KdVyiwJeiBjsmTf/7Jxe2t/Kwv/45/4A9rnwyafO5w+dz5fCZws8duNxFaoWLt5oA2KooyaQPWQszAw8UDGGkaZRQNsWMZHR5u1Y78E3E4SJ+9gkg7rMWOpApUyJOa9kS5gaVg1SFONKEjRFJ6yqDhHlUdTzQRUsN/SDDeNRRCMJ6MF6iTjJK0VSGH8ZRsEBomGntuggDA9VxrWNgqqZYW6YCBZ8YlHwnRJ3KcQrultM+q3gpcHJLroinulb44vcFuMbrbCEbIXGd4bnJjQHH1BV00ztffDeZPLqiBqSBO9XplTAMhcGwmhEh2ut5KKYyPBMQ9+0qjIPTzQP0jXGjR7sj8aplDBEPaKZK7ZN6eGJ6oBeRh1DtIWh3dI8mpHeyONctpRd7RvCpvPozslnrr2jSXnTLPoMUtrPG9vQTJEfRkLUJbVo+OtaSa9mzITlKqxLRzzvmrbVJtqDksqFPBfqErKPQiOLoG5DCzZTl3GertHDcU67iMdWlK617nWxyNHHuG2La1doa9AnuFWEzJwd6RJF46xca9AhbwpWx+Ns9RQYSLScCJkZ5Yoho5t5S9OqKF+Ryg98pPzm26f25bkdEL1F/++89kIW4vmx7LmN+YKG/kuRk9888JfSNtu+HXc68lx7sWPk0l/UZj00Bz336jf0zoZjPeo5Pjmv90QD2yYifH99xY/++Jlfewv3NfFQJx7M6Z5DxzMZXRvdE90TyzVyrMs1yL9U6iBv8ugYtZuwtB84tacMLqcoqGKsraIpBS9Hg88X6L4O9srR4TpIzawGJC9hFBHEEyUlJilUh5JiHKecgz/enNWMKsLa4hzOmqHbHlpOYkwaXvGkQDJkcKV3AcuZOtBCZ0Lib2cD9BW3xikp2XMYTGksOkiliOJ4s052JxWlZEi0QIUkYbEWzVmirK1TW99valXl8VJHiqNFz6cZp2Jo6yzXuiNRQuBbmJSg6HV4cMMSlHxHVbgMrPZmcFpr5JS4rj4ao6IxTVWZPARXcKOLUZMHSbokkiimsHrI5bnKSAMIILgKSmYqIZayWkW8Ip4iRZMzplG0RhPV4dKd69ppteOumAmeMrTCm0vlvhomlUttdEl0Ex4vK+pQUiLW0EiVLGun1xrGVIIoLVVjMuF8brx+rUzZ9mit9x4NbY9weYheh4yPQmoIz3tSplkorxV6IrliC7R6S1G4CZfriqPMCVSCdhmLelHDuYixVOM0JSTaYBEKyzXGUZLS3Gk9AA61BbeTN6P3+O8O61opWhBVZL/njc0StO4kmUjygBDj/hM/9Ap/wWd+jgjc9hm+e+bPbUgUzm91wM1+3d4g79QHP7R9OYz8C9Xp7e+j9NZuyO22/4kCC+wr8HFgjwZ9+759YFWeHNsYxdnDcTYI5fOB9yQ07fzcn/0qj98y3lwzD9W598q1O1UqljqThNHKEhQAUymYCV0StXUeq6HWqVaRQWfQLIiVIv5s5AS9EkGhR7HrrsxgQuuFtSWKFvDOq5Mzl0ATXAeFrIhEYcmcZs6ld5a2oL3ysSrdB0thNza1q66MlvND3SArhU7xBFKZWyAflhqh+rnoDnftzWjukBOP0qPt3DqWKgkhTZ1LC2K213czSTJnh7spEDarV7oMwrM1FIyyQFFhWZzcC9fW49bM0b17xbm2Ru1C1mCp/GoRsgb3S6vK+SSUrCRtgUgpY/50QyyaZOaUmYcClFvCSxT8NN8ch5QACe72TMe07IbezfCUOFknWSVPBSekHU89MamS9MCrMgqiYhEB1KE6tVZF54LkWMxnC6rpU05RJPYbbXND6L1SRahAq4kuGRNApwFfjOvqKXNZnbWFpKT1hKSMlAlywb2zsTve1861ObJmtDXOKTEn5aO7SLFch+B87YmlClkT02TjvnRaC6bRSRrzKdG1cZ5PPN47ayfQLRIpDHHoLdAzTmjPAiweBlpVuawr1SIq7bJCTlyrslwGEEFOrOSI3LywNKX2RLPR2ZFmfHQib3xAJtEIOJWBNLPOPBe6VXpLfPME3zd/mK9qZ9KVg9HXd+lPdiqLZ77jtu97Rdj8jo28iPzfEkpQ/5uI/OLY93UR+R9E5G+Nx6+N/SIi/5GI/IqI/DUR+WO/w+/+rlXsbd/2/33V6Sdpmvfk1rfHI3fE83TPcSv9xA9Z4cf/hPKrqfLp1XmoicdFWU1oklhd+SwlugWHhnvwdCe58o0U2qeTnHgwwe2EaKcysVp0Hbpleos2+boaffCiuCWs6+Dz3n5f5/VHwfw4o8xoGAR5qv6z/Z663sZOeohxA2Tx+F+HKtLWqDPGxvuEpsbHWaFEvrRMinPjGT8uDK01Fiy48nPiVYruzfUS/OFTXnd2yu1zE4F3n1AWMaxE+mXxTNMZzxHNnFNhQjlpFK03PvdNDeqjUx41jZt2bbLw2Ad78n6tj53XGzc5RIoheRRcU7+F3pd6mx855yfYdwBvnc/MSXqiePDlF2PnaN8QLO6O1D541X0fw3UJSmjV0HVt4rzVWLTJIUX3tt8E3o9OTTL233zKMB24XnYcvQU9rzjcS9AozALZ+q4tcHzvOuoUrVdep8bXz8rrj4W7u1N47ePYD6tyfRRqW9C54CWYUq9VaamSSuatR5qmVd11OnoSVozF+27cn8wHe2oTtqjtOThj+529dz7rC+mkzHNimgPxg9wapW4F29t37ToG47nkRFX4yT94ftG2PLcz2+PRy3/HjvGubTm+73sx9L9bnvxPufsfdfc/Pv7+GeDn3f3HgJ8ffwP8c4S2648BPw38x1/k4OFlypO/RW6r4uZt7wNwCHOOA7N53MdtH3S5pXz27xnwySfvO4ZVw/t/HlFsm/HAz/zJr/DtzxKf3lcu3XmsnasqV3ce3eh95MrdEJ1Zzam1R1jI4KjxSrtWVhprIyCMqyNN6FW41kYfZi98DQAAIABJREFUDJTWOurK1Y2HS3SrOpVcjNdF9+aUdUDS2tVYDzcMhDeULfLU7h4NQwilnEmiuEFvIWrd1/i+lMJzF5TkRnE4VWfWRtZgTeyirEx4XUkEb42IhCH2kat14bo2WjMy8FEBNWVZK6NTnSSF3iH1KCrPnnG3vbdhS5dMY3r3Fd6sDXAmDbSEN0e0chromGmaWHoHF/qqQZ9gQrOVguLasdQp0zASmkgD+ug16HDd4/dngpUxuoaDPkC909qVTVvVhsEpItHwJo3kSsmJ5o0pKc0W1jrmf1aaNTQJZQpKhTIl7uYxV3tnTokyIoVeK7kLmkBSFOibdHpK5Kw8XgP7nSY4ZYHauWx57SF60kdHrQtRpDan9o7LTXLx9TRRco5ISUAdRE9oCoP+SpyvzJVzUQLnFDq4EdVOLNcOXElF8WQkEvPk5Gx4acE5ZGk0wgWqrDH6PQAJbumgynCDbgM1U/aUjIhivpKyB+e9OLmDkPj6OVMIw84gRjMzmtsOsWyDnC6LjsDZsQ4pFXKO69Ou8I2zULzjz3ScDX/S9CQie1RytDNHO7Wj9PyGFDpmC97nrL60/X+VrvkXgL8wnv8F4F887P+LHttfBb4qT4W/X9xeypc//7/tf9/nn2/vWyU/tLp+z+/T1/zZf77wyb3z+Vq4b4mLKDTdOcS3GwrYxRjcAyX0qBa5ROmcTnn3SFWVMmk02Ewrr/MMSbmbc/yfMq+0ICWTsjPNysmMyYXr4O3YznmaomkqE55kcnYvGbgVvdSZvDNLD/SH3Dorj7xCW30AYJXgZF+2TkZAuO6e0C595zfuoYaz9kZ1GbqlAZErJWTgzGLhajVgbYXgJdlk7LabVFX3c8vF+WigQdRywGkIj/l6jc7WZQmYZpPbbwJwUzRXXp8mXicwrbg2ihhqbVd82mF57qjMWI+FsmlgxFGhDL76UspeF5imQR4mHaTvuO2YB4ky3Wh1j95la41Mw5fEsiz7/uN8v3oU4MXh0RtuJVAvi5N0ZtGFU7lFF0fP1VrfHasusPS2v1ZrJdlE9pmrNdRWJjWSEdEGdb+emxN2njp3JydZJulEF2O1xv3F8PtYNDR1zJdRhyqcsgbltN7EzbfzjLEOPVwfXcMpBewVQhP2SFuweI+opN7myLpFj2Pb5mFKaVeOgqDAOM6rjc9+K+Bv437nwk/+6A+8YxOee+DHCOiYYXju5W/7n9cBj49fZPvdMPIO/Pci8ksi8tNj3zfd/TfG898Evjme/yDwdw6f/btj35NNRH5aRH5xS/+MfU8eX9qOefijV/3EkG9592eV6ueV7a048lKB48hB8b6tifBT5Z5P+om3NrPWzmWtXM15Wxu1O2t1HiTazWsfOUoTGGIKWKLWRrcoMgUPinHWEAYpYpyIvODkjllDe8e8RR2vN+6miY+k0bUxJZgE1r6CJbIm3FaqG48SuPigAKh0NVRvaYpu4Nap/Taxp6HkM2kiAS4F6x3m8OpqjwJakJkFYienU9DKiuIuZNluILAuaO2c9Y7zafCU6wwZUurR5p4TpylxdxZaUXJyNFXcO82jV3TK8bhcVhDDU+SBpS1cF6OpkOaQ0vNpYtXIeZ+mEIfoHhz1ZKfk4MvvNSgbJimcy4wxcXXwJvjg4ElppkwZpDMVQRLMHvz9iCJZsIE4ysO4Vt/C/xOOUkrifD5R9zqSUhxKytEPIQnXQs7KlAuS4VwK0T8guBuPhNCFj0ULIKuOxi7DOlxl4TSk/ioWXjs3Y+maaA7mAp1Q1dLEI4KnicUri1dq7ZH0c1DNXBoU7ShwqQ0lkVVJCq+mxtc/7pzmDimxNmE15Y07j9dMX4w5Dd4cKqgjpeE60kOrsm46uznRBxcP3ehmmDtZE1ccmwr3PaLU5kZJOeZATqgbyQ2pfXA8xSLsMMjyQs2rWJS7Maf2kElfJSKGMNIO/UqSCkl5i/LDH1+D++hoXw72aLdPBzu2efpPDPoorr6oKc27WYMPbb8bRv4n3f2PEamYPy8if/L4osev/Z4qBe7+n7r7Hz+kf46vPe0QG9s2cFsaZ0vhbJ9Rbimf4/OXjr1t73vfBqE6bs8Xn8k7//nP/AG+/SjcrwvmyrUnWjVWaTSgU/CWaCPd0aJfBD2EzNWCs9FEsdYoKUFiT82U5njaqIaF5MZqAI0icKKRB5NfpzIp5CJMpbK2ZRQIC1kCN23WMRWm7LtWLEQ6axPHZiAVSJGbn3JHvDP1hBKsgjlDylF4E+u4JNZmgVVOIVwto4Nz69otWfj+uwmXK+sSXaW11mg86kKvjTQWhNQ7Z4fenSKnKIrSo2PYBs2vhWGU1WjdwGfOpqw2aI0l8N6WopNVqOislDygnymKmNaVq3WgMalT60qSHtdkRArN14Ab1sbaGkmDMrdIFExba4OdsiEovYUBkr6F4j0WAu1MArMKyeN/d8MJlI1jiAV1wfVaKVqxgbhZm4Mq88i5b56sJDipk8Twxakd7nLmKyRODhMg4iPltEUjsuO4TYAUNLzSG6loXEMVzIXVOstA8HSiMGwKp2miWcV7RWxhKglxZS7RIDVNhSY50h8mfP6Y+c6bhhlMSUlZkN7QYqHLWzKJROvBJrorWrnTuwA5op8UfR6nLhQruAlt7WChkZBIpGlmmqadcz/3WBTFBUlx7KsGJ1CkhoRN0SulkI5cG1x7jI27szRhSpW/9+tnLOtOZPfExmwp5oPdSqJ7L87ubPqNv+a5lx/0EP8/pmvc/dfG47eA/wb4E8BvbWmY8fit8fZfA3748PEfGvu+yPcwjvekELJtz9MoLz0+pyt+KSr4UBh0PP723veFT980R16feFMTb2viTY2Ox64TlcTCrbDWBj/Gtdd30lCbkT2Gl8+Lv2oVbStfKYnmp5EvzeTpFjbnnLGeaFWYbCJ3OKdCcWEe+ePtN5w1k9iarG7oG4hwPI+wfLsWG0UwUjGrkYPe9TUF6cFomBGkOtZmVGHOxnkC9WW/fg/VaTJxnuCchVO+dfttN5dIFOC2Mbr0GnSyqkwdFm7pmrspP5kfD8RCuR2ntUZx4ax5dGI6tTceuiH1VpCe5iBoa+LczbffvuWw8Wij3/DX0X0cQtiXXsnzxNT8Ceb749P8JNx3d3pLe3E1F4u6wWkCq+jwXLdrlbKxLrf0zbFAvM2Z7Xlrka5ZCO3dlEPAeqGjMuH+VL7veM3DiPYncy7EwJ15nllcuNqgLphjHB7pXNW5dOF+NZpnLkvBczRzTXMiF+NcVhZRrq0izLhlPnnbeXsN8MB2PnmIpuScQ/i937rTt+hj+81SOxO6d+D2lkJNrSWWa5z7dv7bGPnJOSWn9YXeIjUaDtA4rkd395bK2xdDvamc4YUqhT/8jczJEpWnxGVHG3K0Z8/T0Ue7dLwvt9fM7R1786Htd2TkReSViHy0PQf+GeBvAH8Z+DPjbX8G+Nnx/C8D/4rE9o8Cnx/SOt/lTA8Tzm0PcfYJTex/vsIdi7DPw59tIh9vspfSMMdBT6J7keRD1e7/5E//fXznsfOw9sF/Do+Lc20LTggQBN7b95X85KODdUuR9B7hsqdoeBGBFhSrOWeKQbfAG2sq1CZc2pViiTzBNI5xrUGZmgnh7jQ8p2YGONLrzs8j7uBG60KeCoKRUzStBCemMxVFxbC1Yh6eV+9GJSMpYZrozWk1cNFoJkt4i3MClyvJo8hWtKCE8EUaXUmJTm/C4h3zTJKhlqQeSQ3pqAQnfuDII5WSVYP62D1yylLxNeoaOo2oSGfmUVBLKXFOQhnUEdqj4NoMvCnr1ok6F9Q6fQXRiVaNojDlyKUnvYs5gJCkkxWmrDstwSwJWkdz4nUupKy0XlnqSndnHapLlQ4adZMpZdSDtbMuQT5nnT11oGJkyWiaoAYDZVVDCW6itUckZ23Abi2zrJ2mc1wDF6oIQuLijW5xZzQLFM3OryNC0cSUAkWyCWlsxqcO6g26o55RWaIvQCTk+pKSpwJTpqVGT5mGoO3KPBmvXwlf+QjmkiG3aARUZWnCd9423iwONSLsNDlZGomVIspdK9CU1sdCWzt17XSEy1qptUSq04xpiLa7O7jiJpgp6yLUa+TqqyslnwBjGRFhFMhvtSlvfZ935oyO5eHoaUU98c3Xyu9/FaCJF03ZsT/nYJuOdmk3/PbUrkT95ot78fA79+S/CfzPIvK/A78A/Lfu/leAfxf4p0XkbwF/avwN8N8Bfxv4FeA/A/7cF/2i5znzbXvCNfPCjz9y0xyPcyz2vS/f/9KKu3XYfmgTEf7Bf+ANb1flkczSnKUFxO1CQWzeveTt/ZtHt3kJD9eKa3myACUPr9jdWdZHyqRPzuXzWikyY17R1OLG7g0pGem+e6+qGuHkWARSSgE/68acyv59tt7oiZN0Lizj74B5bl7Mdo5mhlCCJrYUcgFNxnxKXFk4ZXkKP0ORPgyuQTKgDQnC4TWKyOiWjehg64CciALpUZrQLCKdeXjlpxx4eutBD6uqof3aDemO175DKss4l4w+4S3fvH0RocwGsgyO8or0gdhg0DHPiY3dsveOFd2Ly3sXrN5I4+Zxftv5b9DJKWXWFIpNfTTYODU8YE17kXz77DzPWBesC49W6UUxySzeOUnaPWAAtUoa/D9HyOzxnghG0zn4aywI33TYmqg9JKZpinvCboVI0Y55VEgDxjvSVAPttM13dwetWFcem/JRybz+KO/jtxcd3Vmq8rgQ9Q8quQRYoLWGzRl8Zr0GTHhdDUjY6iTPzLmTCPrtjYa72uiczrdr02r0DGhqe9RyJkRXmgxHYpvfEv0U1xrF8eAPEnoJDqb62Egs/PgPfjVoEJ7Zne35MRp/yX48L7hu+1863nfbvhR88lsTwZ4HP3j1h/fdbswtt0isekdvPUlwgQhPu8b2z/uzZoX3bC/l6uNAxr/0ffDv/es/wv/5ifCmKp8vxv2qXNy4tvDsW3fcdEQmW0hcwfM4j0hJhFGPc7l6D94YnEkSCaE14+qOr45aRtTJKfg2VA4kWpeFj+aZq4fASPWRPvGgImjdWNU4SSKPn2bWSOMmFh0t826kIWT9iHPuTnWlqZE9CK1mzcwp03tl9R5wwDGUZ2D1gssVlbJzvy9ro6C7+INowDYBfOdpL0Fl69ByNPa4hXqTSAiY0EFaFCHnIjxejToELFoVZpt5ZCFp51WBzi394QPXvkoYgjA2YxGU283XbUXSKRYcT7vRdoku31IK62JIrtQWhvskwkMKsQnvHkgSyeCJh7ZyGumm1iL3vM2/SLOEYHiyQIwk0aglWAv0jyqdUG7amq3agMgW244DjajHuHcmueWXl5GyyFnpNQydJA1N00zUCwjtljp+q5rvimO1KSk71WrMzxQcMKG4FDj9uUy0Fiki9Yx5HamH6J+Yc6iTVSs83jvL6pjcognFmdQ532VyMWqNQntbO9aDa8Y9dA3Wg/FseHjUI+KbJeC8IkJtMV5lRMllbpRJWFuwmLrc6m+70d2cvpGr76PuknPmzT2IGh+9clgbf/GvLwFy+MB2zB4cC7LPdTLeAY3cusO/q1v/5ep4HWHNEb/+vAh7RMXIKJxu70mi71Sr4VlhQ9597Qud41hgepn4t//VH+O3HhKrwWoha7a4hYAzgek1Dxz8ao4BzYysM+LBQbN6j65IN9bWyCivpSApBQ6+dS5mqDjFz1gPtMqUdKQ9ElkykwuyNjwl7teVGeh0so/QW4KvPKkwuQedrnkUMpMG7asY5sKZFEZCg18ndWHNiaZGUYuCbsqsa2NtC018QPiUWYNDZlGl+2NM2oH0qGvIvHkPSTaXSAkYiqvRXTESrS/UBKsGtFKIqKOgoX7Vo3NVchTY1gUkJ05pZuqNswpiFqmvsaBnd2ozlrXRRP4f7t7l15ZtSe/6RYwxMudce59zrqtcZZdcJRvZ5uGSpZJcQoKuhTAlMDKiUbSMhIAGNOjSo42E6IEEEl1eDSQa/BHIAoQAyRIWWGBZfpRd956z15yZY0QEjRg5Z6619zl1b1EyXOfR1t5nrjlz5spHjIgvvvg+9gjCjBfPhmQVTajChdoSB3eBGP3ZHNRIPXwMn5lgqbl4f3W9ZPNZjRfWPN9VuJXCfSQ8cW1P7LmUbMpuZtx3yxmDAoyebk8EZfhTS2fSBx8Q5jH05EaLoNaF0YV4DAplRbdHTpHmAhnU6UZVEHSpVIKmnRDPhrnFA6bUbhiNMRI0RXbcRxrDt8LNO1IlZajrikpls7yHiufMQakLHtnoDxe2XZPTHhu/8HFn+UOBTg56eGEbwd2FH78G390MCbguwYfrQrkoQ5R7VfY6TWSWghVoRdEmLBp8pZVagmUJVDvLKtOYPgP2vglVg1pbCvmFJ6NLsgG/j/6otrcxsLkIuATdB7EOCEude3V+/Q/X72XhnePN+wzdT8beR1x5Uwn8bDyWn48g/750OUMsjyzsVF4f2/umxfFvFf1sf++396+d9/2lLP+oFn5pq/TS+PFwbg73EG4mWFmwWaofVUWNTmNQHaqnzO1RQp8nD5dlwZNjwzLx0BWlWuBWH7z05dLRkpnT4pKNXiEbbbPMhuTEH+fmOJbzdODx+1R/YpFNlK3kePvxntZaZnQBHgs+rQQPWOjYT/H9WRqPgbYXRlR8FHzi1loGpdrj3B7n4GhSmiWNTkdON9p4wgubj6k+uT+a1TsOS0W0P87j8fvZbKBFBN9uTzeqo4FXSkFL8rZLdTyyj3Icz2VSJs+NOxs8Gunne+t+v6euz0tFdDymY8tswr5pGJ4qrzHGY3/AA5aqtXIv8YC0Hr/PnPg8oJOLVojK7XVwj4FeF66VB7x2wDeHmfdxH2waNH/bpzpP6l4jRb7OUMMBwwwJ2qTYHtfp3BA+8+177w94bYtkRe2engmmzo8uxjcfQC5gNauCLsqO8NoLP3kN9g2IjVbgpcGHCqsaHxZhVeNag1WNhcES8piSPSqv4zwM5Rm8b1mpqSq6tDmF/jlpo7X2gM7O8MpjmlZX/vQ34Lp8FluO5+J9LHns4wckiyPioar7024/F0H+jLvDs4EqMullp9XwfELOejNnWuWZl/rFYH6iLz0gnGOBOI84v5tkK6XwL/9Z51Pf2LrSjaSVWaC9p4pcqRgyOeoVZHkenwhdHZ9GEos0ihQYnZhsluKp82EjJQs+bRvqHalOJTN3nQ1oHQn1pKyB0YqymVO0ZcOwwkegjGw4VmrKFXva1X2YuvF1jsB3NwhFbH5HdEqy6SgSWTZPTZObJXZp4dykoOIs4awUGoNFjELw0oQmDlHxUtKvFqHUhNPM09KvIHSbgynHQlILRZ1rQLN0Gkr2o1EbmG+YV7qN1CopTkyXJSUwqVzX5VnpqVNLSsaOKUonHlRRlAo98C0f+rXGvJ+ccOXjcmGEoyIUGakjEwvrApc1UB3oEpR5bVopqDt4p8yFHBm8UBh241IaEoNuno350mHaExYpbEOwkZi0S8JhVRsy8ln51I2+w+jwYb1wEc/Kw4yF7H+0knaPOdMw5oBVocc9hei6E0MBRaQgUhiq+MjhOHPHPGheWCS4yFwgu2EoJgYxZX0jIGLKrD2HiZpDLVMXZ0ot20g7RFX4hRd4uRTKYpQhiFW8w26VH9+M101zhqSmlnwIWElhtkFy+yFd10ApXqnlwtbzWHZPGms+7CUpuKxASmqLJ6tmROLzTdMzNsgEyubvNkZCm3s3uieEp1fhK77MvnvEsHcQzfn19xLnZy2tf2Dsmn9Qm4h81mWGtwMB/m4A4f32nqZ0vHYwW84SBW++l7cYfZg/cfvTYmAI3Rf+1d/6k/yOfeDWlZtnmWpa+VSfjV6bSobp95SQSzEDh0ZhkUp4ln46S0IbgW2dT95hFEaRxOiXxlqFj9NT00Kp2qgO+5Y4/6JCuPFpO/BUwy0DtJVAGoTGZKkIrp3hyk/CHkMZL0W5Sh6zVsuHahgiDqTzkk5uuarmNGi/o7KwSspwJ1EocdhCS7xZ5EG5LK44AiUbsY2EebZuXJYr9GBtaYjikguLUgh12kvFR8oxE/rob6gFUgrGloFFCyK5aFR1qpKj/3qqBicMlDivZS+gJoXSi0ATvjPQpSG6YuF86ka8CruljlBtQikb+0jP1PunhXjdWMRy4EycpTilGlYad+u8LJVNBnJdkqGiyUgyg9dR6dPr91JykVmuMOI13+OO95HHaAWj0Gks142mA0g3KabyaeK6hd4tZSskg7lZx6NyH866LLnwEblaTOOVWuuDRz/GYFwyoNYquOd9VT156eGCbyl90fToIw20pTCaaF7jMpVVM2MXiJbCbEP5KPALXynXr4JaNyDP8bYF396Nb2/w2o0QuLQczNrDKJSEhCLhRSP4FIM0Rits5oSlf29dWlKUB/SRbKVDFK3WSqjMY8spblXl5p1RYCfwAJMNr4pHY8Tgsih/5o/qI8N/H3uOuHXEGgmSkRSnRaB8/rmfRYESfk6C/Hn7Usf5S51o+L1XuzNV6YvY14mJ857d837fRYxf1ldi3cHudI0prFSTduiSuhr7gH1kJ57K5kqnsrtSWn1wniFv+n0Ltns+6G4FolFKThVeF8lhpwlnvGWmWFrmFeFahWtdeFlSITIiuGilxZM1cNVKZaA++LBeEtKRJyd4G8HgyaY5yvgzdHaUwAcccm0rd3m+93jfAUsd7+9VoJb07pwwQlRl1GSLlFLY951aK9t94Iex92SxNFF8H1kNHDAXK+Gp1155DjUdEM+5ImuSXqjne+FjhQ+zYXu+JnlwqRETW8dsZ10r1zq4fMiS/tt7Qgom9XGvlKa0NZvqTQdVjF/7pRcurVB98LIUfrIHRMnrpP0BH10rvCzKpeR8wv1+T3mEkHShisCbJiznoBYUC0q7J6/7VHHalFk4M8sOiEnV3wSjM6R3Flhzd0YPRn9er/P1EEkF1btFSl7P77uH0TWrsQPG8SkJPSQeGfHx3ZCiZLdpJv/VFb5+EdrF0DYlQLwyurDfC2PPhrcLfJSGNjCy+f9I0o5mdsQbaO24b848+DMf/kKhjCc33j3N52X447UzQ66UhfDCH//Ry/ciBu/j0BmqeSwCJ5jo/d8/7fZzE+S/KC/A5/o133cC3q+kx2sHjHOGgD6bSpurrMSzpHrPrllM+Eu//iM+bcanPS98L+n+Pmbgc4KoIFSGKpiRxSQwO/xVkuURvTA83SMrOQxSm7BWoTVP2l9Iwj+SJtgeguhgFcHYkkpYKj4Gfdsz0EVBinKzjs3GbZWcng0KzDLc6Uh5aqSjwqpzgtQLY3NUKkEjaFnSmlGXp76KDVhGRxXu2EMP56UuFHkKLrXZWAwmP3safax4Ts6G09ZKWYxaFsIFtYQBrEry02PJBqJnA1rcKDLmAJlRrbLfHMP4qgqj52zACH909BcpqAW1Oa+ufLuthAn7dkMk2LpTaUg4RTz1fFpy/JfFp8F38g1fX51xj9Tzb42PL8EyZZF7wC9fK1+/dL56+cDHpXIp8z5W2D6BlvaoGs2dFwQZmd23JZu5EVm5xDCqOx3oPWmMrsFXUqhRWJzUXJcANdQtG8ziyPQJyLH+BZ1QooYiJR6G7+4ps7yE4nuAD8oSXFujRkpb2xgUVQJli4Ec7BSRh76PeGTFxQysUyPnwQJTxUJS9ncGTNWszsoIWgm+uTY+vjQu10JQGN4ZbnzaB693YxtG0Bn3bbKRUjLjaDobOTOxlAUl94kHX3+8MuyOaNplXosmmUCEVxlEnVaCc0o7tf2FGs8+0rUtKSfRYRXn6xXW6SXwNng9p/Dfowhf6kGeP3NOrH6a7ecmyB/bezjl/er2fdn7DzVXv/Szow9wrhTesHDenei9On/5n39hRGOPyqfdUj87nk3UbQjhNXnbk752DD2pKuP1zm5CTG3vWisvkzrWxGlqLDMTP5pdx7Gcm0OlFGr5ANLfNOzOvOiP0p7WifN3W6XkpOAxnXpqJu1h3EY2H2kFXduDe3y8R1WR7a0A2jljPs7fFpbBl9zX8bscDdvjmEoFxB68aLG3krm9Z7ZrRbByosmWJ1vl46p8sKD3PKcfr3BpabXYDzErF1wbNrPMY78imf0XXXP4pi6H+9ub7chgj2twKcLX10bMc957Z+uD3x0rB1vk9XXnJ98J3333XVZSTalkNWZDiShvmqR3S6OOc1JzNE1rTVXKsQs2lFZfuLTM2A+LwuM4wxvCStWEddzK45zX2DHJBr+ocX99NqSPRvU2p4tZW8oqa39TpYkIXWFd1zevvW8snzNpd3/QiY9n75hIBR6Z94OIIBuXZecXvm58/SN9U02EN/pW2W6VHspmEJ69gt4799t4VJHHzMWRgR/V4kG3PYT4RLISZJzmCsxZXdjlKRxXThj6MRew0vmzf+wb1i9Mv56f3/dB+/za7welOG8/F0H+yKR/aPtSOfSlkyfyXD2/9P6zXsSx3wfvPp7GBWdWD0AbsJePfDcyOxylYgK7pXvSJyooBEqIU6rgOgh36OQ0IolhRgxEAi0Di2zitTn5ahPnlFJxUX5yvyOWXGaRyh6SfOVD0XIkro4qoxyBVtiK5mQnlWKWJfTUJD+CXLr4KC7GVRsrqRkSkROpdV0eZauaUMVxTVphYAzpRHXuLmDKfcwBKIxRc+gnsWRnIEBOveqUbrj3PZk77qjsQGFV4cPSkm4pjerZmGxYmqIUJ8ZGLUItwf3mbNvCwLlcQEvQvdEKlGioVPoQ+kg6a/SAUfGbYd65LDlxa0OwSXlkct3DgopPuuFKtUIpwrKmcmVbgktzwuF6KXy4RvZA1LiXlb93c9wKe7+xqvPV5WnU7p7GFE5KTyeU4g+zmEMorqRzIh3HY0AJSul8KI21KC7OPgq7TeXPGDjGYFAKRAy85/Mw5vR12mml9IFICta5D0QrPiuZ5kZE47Y9JQ5sdzChuNC7T6XVQLXB9Kv8AAAgAElEQVSwhaMh5ONykrwoSf8sCn08OeGtNYjKPpxQGB7smtfo7kdSM/iwwjffNFpbqbGkCJsNbp7nVkahm6USqjdAKNoYPauIBWXfHa+Z6QNpzFIcJ+cCtjAGUKQwIii1ESpsLhSr2Gy472FomdpEroQGuzT+yNeK6VsvgUfckhM1/NSAfQT4U4Z/vO97Z3S+Z/v5CPLxZbjmS83Uc1D/vhXwjerbqYv9WBhO3PtjGAGe8M4BEz0yXZy/+Csg48rdnc2D25auOqqV3dPhp0dyb12g0GCk85NNuERVacscBJJ0mL5HSZs8yUEkT1kzdttxcT4sCV/UssDY6bsgmo3CYqkJXh38hPPDoGhPA/JwrKTVWSdt066lpW68AM1oRega3LxzbSt7l8c5KGps9oqUwVUbZaRWd7I2FPP6wF6LGloCteBKgRjs5kiplCpAofc7pYAkBykXNjWWVlhrxfw15waqouEJYZjRasHnZOXLxfmqWtrI7XmcL+vGKJ5uR55TjFt3+u681M5L7SwMwheWUoHKEgtxD/yWAw+xO7EJ+6vBqEQvYAlpeHcIgzB86uX3baOVC6bB3/3xxtiNFw3aSAen2z1d/5Zl4TZgvxcua+GlCUJCbWsorVSkVJo2rAiFHY2Naw0aHRWnWGakX60Vj+AnezYYGcGolpZ46rQ6G54UtvudpQm15XNxKSsyHLXIhRanNeNSgv2eshlNO0uZejE1GTvXlou9r8Kt2tTHz8ANuUivMudDJJlaF0lmknWjavoBFA18ZEOYzebi3liWOalNsmaQRlBBcyBuqTd+4cPG5esduSpegiKN3QMZIHsgk9LZzNERtCkKKJFc+hZKbTEXllmReGQiBlRPKK2IsmHTa9Yomuqx5o5GwyKH8qQoW1/pDH7xBajlTTx6VFfBGyj4YNY84tu7EHbEry/Bz9+3/VwE+S9h7m+Egb7nM+8bHuf3f6kZ8n77vkbs51925V//7T/B77x29hB2ZDom2cNeD54YY5ajz/KzNuHlw0qpoA4lhLvB3U5iVCfYBXg44UByzLWMhzb8w1uzpNb4URofXPPNBB9pNyeagzsRQWGjeOFWQT1Assl5ODIty8ItRjpXlRSaOq7DAUsc52mM8fj9jmbsce1am9IJAh/9Cdccja8DqirRubYnzDPC2aNx0bcCUW6FfQvWtfCyrKkVEwv7FkRV2rqztAtL6IN7fsArMRvXIsIaFxbdQJ764a7pQdoW5/pSKRXW5XQtRqXfAuv6EME6BLEOSCAbag0bMGIgSxDVsL1Tm2EDXj8Ffdy4tMEv/kjYpGcGqW+bbwBDlsefzSfsEhuXa+EeKacgkpm5yRP+OO6N4/pUvTLGE5o88O9SysPlKSKwMSmcMh4/Pz9fx3U47snz/X5+dh6zBVbo3TF7+2w/msHDuWu6kW3b9oDojnvqwVIb6V7mlv7AH8vCxzK4XBrIE+7Jxe/KJ+/sJecM7iW9C+4+HnISZ1jWzJKlNJ7Q37lR/WgMz3v3Ie3wDjZukc5rv/axfXY+jr/Pceb3gp2P7T2t/Ie2z51n/3+4hQDxTnrg4LZ+YaV7bB5vfn5W0TuXQMz9AzzMdYm3ZZFOt/R5HIezD0CNneW6EDen79NgWnM8WiYvunuOaNt0M3LbEGYzcxh3S7lbd8vpRRfWOTxlBcrYqVGAIBAurTxgFZ2GGV0Cc5ARaM3f41oXCHBPc+L7GCiTHqZK8YRtujhKSj6ECyFKo0IJek99b9fUfzfLYZ1lTSnWhiKtUFwYLmwxiIDiSqfPIOrEyKrHutDx6eoDOhSZNnahwbCdYoWlXBn9ziILfQ+qdq5LAwkqwT5hJglF1WlLY3/tsFQ+fep0S371WjMImilOsnCIhFY+FNi2SfGMHEGXJaUY7j6mQ5bw4aUiVSgSU/t/mqGXoFhFJMWrFEdMcTOiwo3AzKmr8/Wl8J0L1xUuteEjhbjcnUWF63LlosHvfuqoKYJw7521JDzVI2gihKZk8dgT9926sF6X2TAXYgRVnbCSUgYCFwmG61TMDLTmMas7oklJDHUwZ8PSxalWtk87TuVyUe59pEG2BIVcCA55wFqV3QOkEAWig0rFZfaJUMJyorasikXgY2BDaO34QKVoetMugFVNSWefsI5EcteHY2GghwroyGuzGGKwyKBcF26vO0srDDq/++lOKQ1Rp0ZqKr0sDTdl3zsfl8J3m7Fe77hcZyVps2Ea+CHnPaBqTVICx3BZUEgLRQllTCk/KcqwgcbgH/3lj/z1v/f6ZlZVJvlA5r+FGYfmv7+UyR+f+4cTkxd5s3r9NHSi7/vZ+4bteRV9n7mfF4Xvg4auS6Fr5dWdV+v0QzEyCm7CZiMlAerlIdz0cDqK7c104bHfaxHEdpYVfqUlhQueWfAxEXlkUQDXApdZDp8nGccYhDa+u99y+EMEZCM8fVDvnr2BI9NaQtI31Z/erXjnZdhshuZxXevCR32hx5NWWRfjI5WvpD2lga0ToYxZvVh7a4R+npA9Mj6N8WhOi6btXq2V62JUV5Zl5VKVdpJefn19pS7ZuLQhmX03RWVhu61A5dvN2aWyXpXSnO9sf065qrKua5JeIwXQDnz4dcuHfN931rVQG4ga15d5HWVQP1T0Inz8aqUt2Rg+bBpjK4g5ex/cvh387U8b9/7MDCFFtL67DW4DahglJA1KTtPPTR0t/qi+ztXp4YaUbCilV+GlLlRRPtn+yILPjcrjnB+Vi00663FOuzTGsuDTJzi84VbfZN9Hg7hNxldCOVBq3q9HBn58z3HdSymsFxDd5zQ09B7sm7PdjX17TuaeP3v8HsspArpV9i2fraNyWUrF7jv7Zjltrpn1i9/T2KQY6yV9HPJ5qNRRaOTk9PWanq2pXZQOZI+qckpUr9Mf+Xw+zsdbSqFg/JHrQNtbD9jj+r1JOk8x5n2MO+/7Hzp2zeMETpz8ERDk3Uk58K1TA+P7aErwHLI6f+Z4b5G3J/T82vG+47P/2j/9I+7D6AGlLElrCwHpDHEKlds28BFIEy5rUAGhobrgVWeGcQhipVlCawXtgz1yrLSUwjZyctY9bdhWKQSZABhJ2TRR6rLOfmtS+MQsoYySE47S2+M3Ua1QG1ev6FysfEQOAHlSBVlXtvUCltSyD63Sx0atTpWBWqFHOlvVpUy9m85HmzxjH3xzTaz/WmFtTw17iZ2FqRVTK4sULusLIkAkFh0jcoJ316QB2sYqgioUGbSiyYavwn5Ll6uvVyG847FD20A7X18KF92RXZBd+CoueEy4a9IhoeBAdOOX/jBQO9fF2O7J9Nk2Y63GslTG2KdzlUDfKGH0+7dJL/x4pb4ATfG48DvfKWUrhDTKrqytYX2gyGNC89tdCVNEK7sMtmmld0BeA6FquoblkFxhyM4qhY9lyWy5VnYj80kfuNlUjTzMYyZU2IxWcpK11CAWoURAGCNyKGhZhUXv9HpQPFM4bFikFDKSlnrTSOYWsPeetE5RNCLdv1QwHG2FiBw2gkCkAElHXC6dtu5EZRq5CDZyYruPNI3Z3ZLUEAnF1SaIZLP6aJw6whKFiEGsFSkrL0tD5qjDbWsT4hMqzuVaufeFVZXbVpB5bvv9zhFLfcozq6TX72EVuYdRa8ElA//wzoz7uSAJeDTWyD7RZ7HNnrMJB6X4zQJ6ijNxuMfFzwbX/FwE+WM7usvfZ8t3bOdJVHg2K1B5MnWOEydvF4tj34cpNHzezX5chFC0wJ//zV/ktgvdNUXIXLgPSybEwzyjTQnXgKl/HZJ61bghWvCqaC0MN2Sp07u0skfBLAgfOa3q2diS2jANrDtFctkoNViB15tNJkwaYo8qLAguqbXuBUxjMjkGbQg/HjvmG41g1CArYqVYR3fQ7elBO8agyJSUpbDWoJG2hve+4ZLnd0gqZl5LmQuhY9ZZyepgqTkpeyzQ63Ba5DmKrig7MFgWxcTZbBClzuuZsM2y1OwbFGXfFnacWjyF0UpF1PmwKGoFsYb6whaGqDJKoARSGjGMvUeyjiyhiEFKZ+xbYQxHDF7aStELclQM5kknLNnsPmR8q6X5dl0d6kbo9I/dgK5s953DdShcZxYaRIB7UCM52Mp4TL+OMRjbnvK/oz0apt07N9+5SmC+QRgSmgGz6uSi5zkrErSl4Nt0lVKo7skBR2hU1FPKoNvO9aU9JIWPasGFx1Run9Bgd4PitFA2hW0M7rvNBCUH02IYS6nU2ohIH4Jlcv1HF0YXiJygXteGMkANGwGyMOzwe1W2Pm0fESSMGMnCYZ8wDglJXT8MrovRVsWts9TKts3BpeG0MrBLVpe1DLZP2dBPf4CS0vph6JKuV2pBQcFBQnBLXn2dA2rFnCiNPlKm2dTxEvypX/z4Rbbf+57LAeMc7KozA+cggZwTzt9r+7kI8l+CZn4Ik/ohxs17aOangXu+DxpygctwLvqaFLaSIkj3GG8aNEe56mdDa5E3jap9nxz0iVsetLRrS12QdUJAB7RgpDHENuTBI34YW6tSyprj+EzD7EjxqTL8AY8ccMjRNNLhNBcukgvMRZWwyrp8TJ2O093i7uzzuyKC24DOUyteVYmSQzCqyidJ6eOW7n+oPgdljmboAzIww92QshPeGAMins3Ofd8JL0QUeg9ut1v+bAq9LXOA7DbPd7WG7FPbfPqaXiYz5WhouztdgaU+Of8i7Fswen7GSjbUkwPdH6yP47iag6zt4ZsaEdRype88YJ8RA6vOLqlHtMiKb1mZQWW7G7516Ma+xdSfEWITdFTYle6F2x5sPtjC+LgmlHDV+uDVnyHOAzaonsJoh5nJ8Ty8h1COzxz8+Nsnx7k9dOTP07/u/oAlz7MlR6NdNHs37v6g6B73+rlBe1yHo7F7JgqoalITjwr9mE6di2nEtMAsT+E0M0N0IDr4uDZeLsa1PZusALc9+PEt4dJrueEqEAvrNZVRD657RCC7UUawy4S0gBH+MDlRTZnsobmo1sm6OrPwfu3j+GK8+T6Y+EsLwpde/722n4sg/15WGN7y3R+UI2FywuUB1ZxHut/jXu/hnogTD/6gTupzMvPs4gRQdPDnfhVedeGTB/feMa10WkIeJHWyxKkHMFISdkhw63tya2ujSE2T5hnoDpZJEwjL4R0bgRuM4SlwZj6nFhXlScGqTalyp99jSgULL6VRHELkgRVXDPf0STU6FEAaNzMWaXwaG1TnJ32fWjGJ75sIVSphzuZ7Nk89dTak5UTtcENs6rOHEaOhVTBRfC/sE8YR89lAriyAWkl6nORELYCS1c6Oz8Ghhb51vrsNzAqlNBSbsriW+jcmsAnbq9FHOh+t68oaxho2DSYqMYwoU1dfAyl7ZoWeuuO318Oo3GlekyEzBuLCp9sdHyM53G7sItjWGZ5te1eoc6FxycnbwVPad706qBEyEEkP2fVScJLGZ1KhruxeuDuYCT0q42bIyIzyozRiBxlKZWF0xT8FagV6YHfoIlh3xmmGwfrOy5J4f4l8bi6aLJpSGlYFl5H3vUKVivn9ESCXoohbasT7QBSYvgTfdeVF0kKSaPQ9YQtFKVKyCjj1GaxqunYdQV/mfIc4+3y9qCLFKW0G0y703RjMwSoJ7sMQCq0mn36pjaU1MKcJfLg633wTXK/r/C7FeuV+qzAa1w/ZWxEa67piXglvEIGVwg4Uc5Y5BbxLitchis3vKxEzcTP2ERT1xzm7rp9TH89J55dg6GMa+EAgHjM7P0Oc//kI8hNmOQdseAa1N4MEZ5qSfA7dvNntiQsPMwM5WQs+9jMZPfjbBmyPyl/+F/4491C2EKy1dJMZg0JJUwIKMa3sdMmhlT2MRSoFpdSWXOEiqUooU1RpZjp/Z9/Yp/8mmhN26aHtfFgX1AZtYpSmgaogfc/hKQXb0vbv9b6RElTQ1mWaR5QTba5RpTLEHr6k0jT3J3lOZChow024mSOi7OZoKGMxBhvRU1xMRGhFaH1MGmKwORRVdjdqSw/UIkqNit0NpKHF+erSWKLSltRhdy0wAklCBbfXDSnKV01x7bTqOBuqQV1Tm1+acF2E5ZJ2yqEJAxyTm6vWh6SvdtJIQhtXbY+kIrn+jeFKKRWToJVCSOW728x2mbo+Y3ABugauyZRKOmBWKCugt2TfLFKyIrBKq4WomfFeK2iFoGExuLbBWnYuKyxXpV8cQdFlYdPgJ2NwU+dbnO8UfjI6Q2FrQhfYQzCt6AZ9T9aUiRI1WE+Zs1QIT6rn6ilTEMMY+04oXKRm8lMupIGN0LslW+VU5apq+uU2gyJQEqfXmkNsVxV2SZjm3HR8yGtHwVwhPOHESRoopYAIPowx0o3L16BHwS1wVbZewRQxuFkDDaQOSkszk097YdWVpsLLR2H5UHHLaefXDV7vg4XBy+p88sL9deelBNtuuYhKJlxP2eXgBcVsYH1k8O2DHsEYT1rlFsKh4LkunY9fXXJGZm5fzNaDN8nrl+Ldz7L9voO8iPxjIvI/nf78RET+HRH590Tkb5xe/63TZ/5dEfnfReSvisg/+9N+13tmy/vy5j1D5szU+L7y6LHfk3rl98FC3wfbFFn5o998ZBtkCd2fpfG+748b2QRepKZYViRtcoz+YMEcCnl7PMf7IRes6vUhe3B8/rjRDiGw45iKg8ZzrD8i2CVFomp7duhLDCLS2EAkpyl3CTYJRnuOmqvqg6XzaA65o2EsRR6ZtYhQNljnVOWmCR0NgtcaM/MdDweeo7w9fg8tSUf0SWHsPZul6qljX0ltfBGhRWNoQRZhNGWtbUI57Rm0Vd8EkaMqOo7/2Nydy+XyZLfcjW0bDyXNMcYDavu025OpFE/O93H+l2Xhk3UayoXChcxYv9VUzDQB2oTa9On7evDoj+tpm9PHnfXyhLAigmYJRdVln9O0z2pPi7OU4NKElyWtCVUj5y5KpPLnpOPeb3P2YUKEAN3TzGbfjXt3Xuf4/ocPHwhSQMzkOX9xPt4a8mB5PaCTeBp/H39GD14H6Lg/rs1Zp/4MUbjlMNgb2YN4TskWUruoVlj82St6ZMky0Kk/YWaEpl7NURVU/8Q31+DyIjAhlbsv/J0fKzT4cNmQptxNebkkpfN+Gw/phTMb6Rx/epXU2tfTs+ZwD+Pmg0UW/sRXF7x8WTH3DJ0d/39s7+PaD8HV77ffd5CPiL8aEb8REb8B/DngFfhv5o//w+NnEfHfzYP8M8BvA78O/AXgPxKR8qV9/9D2JqAf5Yv7m8mxN7i7nHSb53l5k6nLyVrwnZzxcWK/eEEEVjM2c/YR4D5FtxTfnVoKh6nyoyzdkk0whmeZx2xiktmR+ZOeRWTeHeTk5jHcUUXBUhsbNF2cPJm5BoQf2Ubqhodn5t/IxSazhELVFdUlhahcYB+pdd4j318V2w1koaoS3jGdAY7U2V514aLJYIkFvAXg1KiEp+5HK5UPeqGqUkTY952lVW5b4JpYd1tT6/146McYWdlMRtPCTAy90LsQS16b4cZ9OOaClOmZW6+0kkJwW3U6gxBLNsgMArVW6vyuIKdUVdIgvOrhX9rRlgbk0QSdypfLsqAxIDzlBbpRm6RcMQu4YEl/QMT5qIWmmc3pHGzaxpZ0PhXauuTgGUqXlMWtS845GAEkZHIMRUUIfTiDDEi76cMO0j3hjaUewX9MaCirMZFjiKggIeha0TlngGZ10TUX3KLgtuO7sXukJ4I+M1kTYcDDCAemteacpTg0X4rGgz2EzOdC03wbO1XdZLVgs5od0/v3EA8ckyhQRQgJmioehi0wmmLdk6cPeHRKDUqBSpsVOOz7wBxMK47x8VJo65xad8ND+MnfV1YpXC8QpXK/74gIl3aBXmgUQgZawMv6kJaA/Fy4AM+BMZ3/hQX3LvzxH7U3MzZf2pxIe8eTVtG5h/GzTLvCHxxc8+eBvxYRf/0H3vMvAv9FRGwR8X+QZt7/5E+z8x9quIrIw+np/Qr4/r3vhZS+tP/jc0dw/6Hm7B/96o7FnoJbEtx8vMkkj4xGNU1+jz5C1fLZ4vHI+memVEYyNrL83TLQ8xzoOjKk4/jMLP1OJ0+4iabuixWKro/f/7hhRPsbcalrWx6SvMe5NNGHa89LaSxauehpwlGelcTx8Ofx5ERsRIdY02FpNvSKVnzrmYmRwaDfnw2/M+/63ERzdywKd914OWVKAKU64cs811m1NMksqoo++fo6vni+j2bZ8Tvs+/5gyAyFZeR1WNC0GTzxlY/s/nYzkNQueTQLx3PS9032F/XhbLX377i+pMNQiQyYy7I8z/Gy4J4a5kOhhzPWQhPlWqBF5+6FzUdKXxzZrr3NNGut0KDoJSdOachuXOStvPUq06Tj/KxomrAc+zqzQZIt9RTNO1dq59fPLlfH/VXmEN/x56iShJm4nc5bNVg9sf1tCLcB61q4aE0G0umZO47hSJgigo2cXjazaYdYubvz9TW58sf1vPfgx99tqMC67ozLwqsFH3kFnH3Lc7hK4aqDTkoda+ncj/6LO1psUqjfxpBv4pVVyhdjyvm1ilLRz17/Uvz6vbY/qCD/28B/fvr/f1tE/mcR+c9E5A/N1/4Y8H+d3vN/z9c+20Tk3xCRvyIif+V5oG+xqsPc+z3F6L1E8LnJOk7NneM1eDYyzjj8+81PlMoDo/+tf+rX6Cz0qCl/62mKsNtg0wDNDNKHo7VRtXCzkdOKtqezkSgrz0CdcAqpEiipo9K9IQGLgugh3ZrcbEfZ7hngFaes6R16K1AaSAn2+x3VymXAtTRA6V5RSnq5ejwoemV6W4ZKinx5KgRK5PlTVS5ry0zPnbsbWvMzI5yBgxhWEkJZysQshydWPwPqUAhN3nVUYTOnB9z6QLUiWtPTdBgY6D31zi818c2dmfE3YR+e+G8tlLZTqyKh+NBsKptxaaBaqQWK5iIET+kF9eeiXEpL2AthEWgqtItiGKY+HZGyGls/Xlha4bJWmoBbBncRoV1buhONQOgsNRt+teVcxArUcmF0UEnfUi8CkTTX3o1Pd0OEx4JYa+M6F2Bvha7ZNEaSbnkbA7NcFHJW4xmEVUHbQEraEu7duW8jK1gVtt351AcjhNGdQfY3VNIlSkMZBExeeCh4N8aYGTg5xh8W01NWH8N/vvcU/pp/Fk2KoNCgJWQmRbPBOoO0uU63sYpFynxs91R/XF14vW9810dShclztOs54IMtibvXaPReEE1NpW6dteSi8eFj5fKx0C3ZU/to9JHDaC/qyAJ/59u8LqJGbCmf7cCq6RWALLQxF7o52BWRiqtjgE9P3VKdVbYvxpgjrp0doc59xTfx7B8EXPM4MJEF+IvAfz1f+o+BPwn8BvA3gf/gZ91nRPwnEfGbEfGbQJZbJ57ol1a2L+FUB1vm3KE+PvN9wwTnwagzXPPed9G48Jv/+Dfcu+BSuGtNbRUSdmh7ltaX8mSHpOASlGy5Joc2nH10xt6pVhN3jYQiRDpGMgNS5z154SVI+zmJB6f+aNhsvT8WDkOgBy0pOlgJ7r5nEOrABniW6xH5d5mCZtdQJEbyuotwG44VQQqzqZhMER0ObryI8iLKohWPfLjNDB0+KZ+GixKQ1EV96qiYp22b1sKH65oqiZZj+Br5u422UASEzIK1p6aMqrK+pGogUagmiAYqjkX2Ow4XLRuZBcrE7mTCWIf9W5Xse/SptFkYD0pq2OC65rBYrSvDBQtlfx28biPlLGgQDSuFm1m6RImjOKptmn1MllMEWnLAhW4ghZisDRTikLitudg9hmEC7pDOV3OB3nT2H9pKmWJ2EUGTRokCJXntMjQHobRTtTK0crMgJKUttC0IqTq5h7Hfk3GDCqILXZVAuN03IuUwWdeVl6a4aorhdSfMGFZgVEZUbnvOHuwD7lsGbutQVNJL11L3XWUHN8JSITKftZIMsCgYQllW9gJ7gcv64fGM7lImmwtokbMUmlr6Fk4RQ4tzD2fEwCVVRQW42Se0Bdc1F1KA73ZniwDpXEthuabqpBK5GIwJ0RVhyKAHLEvLBRwnpFKksqCsRVlkwW43Lji/+odf3sSjR7yaMe6AmS38s3mfnyWDP7Y/iEz+nwP+h4j4W/NA/lZEWEQ48J/yhGT+BvBrp8/96nztp9p+aOX6oQar+bMZdF4FvwTRvP//czPos00HX186vSWccTQoW2TgO5qn54XiMFyWiR0e2eKltIQXqk1clEeJG5GCTuHPUfLNxkOUC54QznnxOvOj35tOy5oCTmmeHZQaj3L5rO9z3o7XX3fnPiI12DOBxEZqd+9TY6TgVHlO8h2854jkj5uu7JHDX302Sg445DgGAL/v3H1wC7gsQampYimp4kZtTm1PLF9LPBymQiWVOEtJbv508EEGwuUhvDbKE344JhjXeUxnp5/j3Np0KTp+tzEClcY9Bvex4wr7PVDWBwTyxojcnyJuYm+TDpFsKOrYean6kFVw9xQa0zzG98SCB6d/Nvsf94Ikq+gBrchTxnf38ZigdBNsTFPvaIwOxQprNSzA94564Ht/nJfjO0SEWwjFSmbLtbGFcus7PZwF51qEukJtqRkjkkEy7+scAlN1jIpLWu1JLbMn8aRbnhvhEcG3t/2NfIfI1ETq9nA9A95AOUfFdmylFL6WhoizrCl0NkhXN3+tXDSrrlKhLcGtL1wR7vf+mOk4oNEvxRgNUA3A+PDhA3298Ktff3jTN3wfg97IifB5vPpZg/0fRJD/VzhBNSLyK6ef/SXgf5n//m+B3xaRVUT+EeBPA//9T/MFj8YonzNr3r/22Umbq+KXKEnn7cj4zxzVM23ysb+5VUnPTI80n24lucR4QeWJh0YEhBAOa2uJu0ZqjDOZAmHJZcfl0Qhdlgv7uLNZcNdUE6RU9sPYWYyYGL/P73GMqwi4MabGPCXpYSGe2vUqdBtIbbg+B4FUguvaHubH3XeESo+d8E5dF0Iyk+2eTV7DuEti4ODwvxQAACAASURBVMfgiI7BpRaWWrgoWDEkNoYpG4EU2G0gGErJpp84dSkpyiB5LkQTOopS0MvTE9QxesngvhaBUNxTLvdan5roRsrNLmrz/FYUp0bLYRxGVioyJ7M8H8TrdQEcZcHR9DGVlIy+7ykG5lMKIkIYpItRiQxKIxyT1GuXeU2xzkrho2aADR0pCVDTLSorzsruQWtZ8RjCbjv36BMeTNGwiED6nsHXJwTljptl49OdboYRqa2uT5aJaDCGM4ajtdIFtsiGZc66LglvjUxQXijEnOrdbCBUaq8UXwhTfEja7TlsNj1kq1CK8PKh5gJcncu18Isvk2K5wGAnWuE2AtsD8YJ1f1SS5yYj8GDiPBeWzO6HA7rQZxNXWsJOLAtbBN2DnwzHUUwqKtBUuWihAKUpFklyKK5ssqNL0A0WL3y3OZ/u9uwzXSqmMDyPY9yFJgOlcNWELJOam+SIEJD6NAWycLQbX7UMvBb+BlE4JAzO8ev9BP7vB675f6VCKSIfgH8G+DdPL//7IvIbQAD/5/GziPhfReS/Av43YAD/VkR8v13K59/1oDuW2dxAfviXPYK/iPB9cPtnOJc8XxcSixdV3qhgivBNG3hp3DafWiABpNiRHY1bT5qasp4ywbzg4ZkhrXVJ5oAn9loYiEpqooyVUozqOf5tk92whrFNqqSPzoci7OowAi1KKQs2IQgbTm0Fd0O1zExoNkol3eqTiVHYJa0KLxRqqWyehhgimt60kCPqNTN4d33oa9TJ7a81G4hEpKLlhNfaolNz50ltPDK0QuO73eG0n6VWKCDLzoeSxuBRSjKBwqm1ZB+i9MReLRUDl2uBrVM8f2emVvoYqYs/+piMiJXYBx6d1hbEg1pymnaRhTE61MJ3PlhdGBrTgakiwqPB7p7DaFIGeB57Q8GCLtP9S0A82MuzQiCUTsIVXguxPyuoOrucSyg+zzn4ZG7M6kyUGDPDFZ9yGMm+qpoTsNsxdRvJGNpHKnRaBMNSYx5yRsDtQoQRkUF1aN4brRRia4iQw0aFXEhrkgkuL42xg5RCwzG/U1sjhk9JvaRm3npBGKgKFCV8Y1mFbQdwqqeypojQSk3abcnnNiLo87odz1FE0p+JlguYJTMKyOY4yfzJuYgOXrm14GJO0UKrNZlVwGvf53Ws1JbCasOcuixst+ljKynZ/bENbnuhhRJRGb1zvcBrSbPyRYzrUvnd1519N8rynCgXhU9b56XmPWBOyqu8S1xV9eHX8D5GvSeX/DSb/Cxv/v9iE5F4QB7uqOhnDdJH8J0vH5Xa2fDj2M7Z+vGQvt/X48TLu8+dztVv/frKv/QXfo2/vTk9lD6c3RSzKTMwhLSTLnz73Q1IHN06k3++IZFGwFWUOzax2vzShnK3zkXrbIwqZtPcObKZ61WJ2QB0z0m8M50NoI885o8XeTDWeuToP0yu/RIQT3hpmSyEUmHsTm0tdUnICc7jfU2E7inntRadvP31oWG+euVmnd6N9ZK67/cTba4KqFuepWUe9zHOLlAmve3l0qb409NU2ieO7/6cjB27UNuYVoENt5W+v6bvrBoajfuW7Jc+z2mpjjjQsodSPCGYmJREn8yNGs6o9aFu+ICUptvW8I7LnHGwkQ1Ud0QSZqturKWyefaVXvfJoppQGgZbFDReHzx9IYPUPYKYi98+DFFH6pXbtrMNYW087uXHPdoKOwPZhdrynJbWwAe1Lvz421daO6h+z7kIVeXD0rFPyi//kvA3/37P4avN6JaiZarK0vL7tjCKtwdxoJTCHhsvUueo/8xiPabMttPDWctxzHkN+/58HrXMJGt6CncbhOZcRoksvK4fvuLbbz9RHLLmnJIYGqytzupo7jMyiF9Kw8hBMDPLzNwsaZ97Prd3UboJcn/qyq8VSrnz4cMHxrZjujDuzmXNKfSXF6UuPVUso9Ap/M53c8GiU1tq8q81dYLM4b/8H/8e34V8FlfgywSQ98H9tNj9nrjNz8XEqz7T68/YM+f3vGfXvH8PvB0ZjlPAeUy+TqbBmXnzJZjnn/hTv8xuBWtpYv1p63nDYoQNmPrpt27JVpE1/UKPIRrJbFiW8sBOgeRJRwFJjXGdXNmD9SFSEMuGT4mgoY8+gHtgcTw8wVChSEWise2piSMSszHk1GK0CrafHrbe2W1koy6yAOq9Y+HU2fk/DDB6BDWMqqklPhB+/JMb+2vAq3DrqbxZRKme7kGXJZkvLQoWUD7A9YPTqqJNCbbMmNfcZw+4bYOtZxV0WRI3jToHYiJhje4ptrV74FrSUNrvyNoQOeiRwn512lKoaoSkmXlXQCuLZn9CKkTNzL+2FKGLWYKnq1eHkuP1laAzpljXDLQlXY5akUdzNFy5j87eU/6gaUt3K+kowYh07FrXlcu0l4sCr49KMe/VtSlNLnjPoabaZgP36DtpYvE24DIUkYqNQCjTHczRsaeypyg+EyHzgnkBSzhkU+Gv/V0h2pX7zXMiuCQUA84YM+v39nhufFYISEMqSHP6MIY5m/GgpF7bgkTlU88GO1LQSzw1a4Zmb2A4237LYw7nmlwc9gHffvuJQNg979MWkyBRUgE1JGHNsJRcK7omlBpwHzmZuk3evIwDVl1YXCjqyUrynn9LUJeWsiaXiuAsayW2XBT3TpqJW7JpPHYuLdDp5byWSmiffQVHbPBLlxfE1zcB/tF4jdOfcxYfJ6bNz5Cb/1wE+fcNjfPr71/70me/1Nw4N47eM2/eN2rhOSl5vO9P/soLXYLap5bHFG46O/Aghkd/NMcO6zMzY4+SsMYwbtZp0yVH1LI5OC/oMdZ9BPoxBl2THibyzKYOHvV1zpcdAadURzUIP2XqcsLiS2q1D7sDnzfVjnNQHBZJOGqXwNvkFnsyafqujF64fLhwyaeOtiSHfVkFrT3dhYBSg9pgVaeMhvc8D2FJqdOys4SxojR/21g+zl+VhI3WS+Ui2VytFtRRKF0fPYLDPWuMQanO1wFEYvzHpPHRmO2RDU6A5kyWTd4/h0tSRDoK7bLjLRlHVwqlnjjpkQvQWXira9Bnr2YxHnr9B3R1N+Gq6dT1HPdPTXwdTy12G/C6bwx53vuPpu3MWmuDpaQnrOjTdyAXuopPp6/3n0U6XQbfvT7v+dfX7W2Pat4jLjwaowd99mhG63BuG7zep4iaj0cFFhFsNtgk5R2OeQRGLpdtEXRNs5n/h7u397Vta9K7flVjjDnX2vuc+9Hddgu3jWVLFjmyBDlgyCAlwQGSA/gHyCxBQkyCBJJlkxBDgIQsJyQg4QgR2QYBtmW33e5+7/ues/eac4yqIqgx51p733Ne31Ybi+t5tXXPWWevr/kxZtVTz0cuvC2Dzb3So3AbnMeakUPyi8JLjEk/HHeNyEEisNwPSSnjfv2P/LGRdiNDgtuAur81S7Oh57l3PLdUYy/JRLvdbtj+9IbckJDPlvvaMnrwcZ25Xtsb3caX1qfHz/qlx3/q9vNY5L9Svb//wo+qVuA0KfvaXc8JDsvhX/v+X7ixXD6UrF49khpoTiuVMBiavOGh8DqSBmbSs+30/ELqiqnSgVIaXTKN6Qgh6G6nw12xNBI7vvNETlL+jxD9Lrj5TKFHEJKpPxaDXZKbnwvHzIic/jrmhW4ZHVhLwcaYnvF3l0qAJsrL7ZV9C2w3yh6ZkSrCzZ1ygXoVJAajGKZ25/1Leu27FWR2JAM7q8LDQXCpDZGYHU/jsFzI+XeqhbtNMzQ11rUBOXOAVHiGD0KTE74sF6IataTKtw94caUH3LYtU4oQRhjbMPBG3FJ97MKJhW82Q7WLUFQZmhCHSMF8B9LQLRe5/K49oFKpNhAL1JVtD8rSuIlTJvtIPH3ZL9N2IswhPbUoBGMbOOnRQkjaQy8CGmlZ4JWyLhiGNk3oamL5XbJz23xnLUpEeqFXDWyZjJvInNXwnZi2GEbMBLHCUoMRiV6bGVoklaY43dIn/rDa3cTZNZImWyKPTbnQSKFdHKQB7optH4HUlnYaumRVLvC8KtqABkz2lwynhnC4XlZtuCqfRkcEai2p7J4e/UdhVkp2jb0oFnnUw3NgPqZB375XbjcoESneW7L76bsx3Ni2QiXtt/fYKXXQ1jTiK8sTfc9h/CpHnOWAmvoC8wnLSTrRSi381gdJhfkX1i8ROXU5b+CZOYQ9zAh/6vazWOThy3ewLy2+j7//JRzr1w0uHh97X92/f/8urz+qdgHa9cJi8FQXVs/cyYPilpFzc9il083w4TUeX+s5Cs8xK9Ra73TKA5OeVK8xBrs0ZLQTUz2+S2uNosp3skBJ17yjrWWpJ6XucRBaSqGHcxudOi2PzYzbCHooRzCDqnK5NLw4Ue+y6xE5X2hyp6398CLcXrKyV1Wa7Vw104080sMeOOMMRfJ9j321aDlf76CmFueNj8qhqEyFaFbYY57dVnc2q/TdedZGcO9Yjn177LOjWnuNFHCdyklyv/TIm9Jp0azCKORQU7aER+bnOqyNrd7tiCPSh2aNrLp7VDYL1kvK44V2Km6HVrwu53lyDKp5+PwA/dN9TnLsv2Pfvy+KPmjlz36s/PYlv3cpJTuMej9evXeEhvkLVu/00WN/PlL8nOBJ8ly6UlhdTquD9yyZRxvjNefUbJVJG/W3++0wLfOdjHYE0cF60fPHS3a8RR9sBB7+fMA/6hmcfiUzj3M2cL9OFi1U2Wlq57n91Ox8jaIw9uXNOQOcKWTfDk1zsv2OHJQKtclJnz1T15ZUZn+sQsiXeScRP9blHJu7pyDtD7H9LBb5r8E1b7Crom8w+XMxn4890pPeKMvkrbvbgcE/4l/vtxz8LXTLqm14Wu8OD6R3XFJIcWLFnq2bSPCqCa/EHKYlZW3nEjx403GGDUc43QbV84RepeAxEIKqjdIagiM1K8ZjoT6YPCJCtA2N9CV3TU+UYpliqSaUMimkc0GrRVBTXvfsUpLSZ7SL0JbC06rp8jdb2NYaUtNFU0uwlsan6OnJsy60VmiXllQ298ni0Ry2ycKlrHhPZkiZ3EDVOruXe0AFcCYO9cjHNCD63J/mDO9UzXzZRZ2lKlhlXQ3VirEnrTCCIcYvbxtV0jo3oidW69C2xs3h854XaBVS1FSTAFBDUpAUhd0gpNK8sRCsraXb5xLpjLinN0455ivqDLEMeumdsqYNRUil237eDMB57T2VpQWoDZOknR6BLhFBfeIMmTjpdprdjXse21sY3QLZnY+/tbM87bgPWqQPTPVgkZXbHlhUQgbL+sS2K1oVj0JlZd+VzStBA01nSFsKC0rXTilBsU5IS/aTB/QMBe8eyPRnem0ZpLF6gAaZOihp01yUPgV6qgvuSSl1UbZhbCPnRmqCl6zgRdKvSKScndRx037FuFH5NKDV6xvzNGBCb4Jcs3vQC4Q46xU8BkUbe7xgewGcVVJBe/GgPBd+wFiqsO83drdEB/ZKE2eEsFua0bWycNs6gfKxGoWnN+vKY7DRsYadaXjv1qN/4TD591X1l/79XMAfK+N4EBg8LOKPC/vx+8eiD/DoIf9+kBuifLvkyUhdp7d6CoGS+pSwS0ScAib3vOhChbJnlWuRA9BaMuiDkuHPhCZVzoPFQGpFMPb53Xp4XijD0/c8gmWdg0V3Gn1WowJT6LJbCkyGF5wcnkXNtjiFH4qlcJXwjPB7iUpUpaVeF6mFEUoPw6wT7Gx7wjFjjGxrNRffLYJaFqRW+uueZluaPvSQ7B15GGbtYfiSaVdUMhR6DEY43XdsBPuWZlvnzdtywd9fB0HaHzxmtbokH9/MKMn3JNS47ZOPXYSLVq4VdktPfHel1MRQY6lIgJGWC6YQUjJQezg3u+E+w56L59DRFwaDvicst3lJs7KajDANiOoMyjks1bbwtObNzyMyeNojLSdQrq3NYZzg1tNWunoOR/cB6hRN/UV3S82GKErQWsEkYZFSGk0br9XZZSCjopKFxtIa5oUffGSWbpmxfGXnaWn0W1BV5oDZaUVxlH1SOG8j1c8xKj3SAz/oc76UHVVee0ZrhbVdWHGajxwqy31GIZLmd9icQ1QYZD6wjciQ+fmzR6afHXzz/CwdsTEZYqkLCBR6ICNv1I6lCrVUvCoXqTy7sJZIc7vdqHJhLVBbw2NQ9cLLuFEpiCX0ucdOKxmHuIjRyoVhNfMMNLgukl2uwDaCPjsyhlEvd3XruY49wM1fXnt+XMT+lO1nscjD14esP2LPvBuY/rrfff+6P2WQSxR+50/+Fntvb5Jj1Dt10iDXmdBztp6yU8YtBzCH+ZTHmxbzcUinmlF1r/F22DMkcy2P5xw3qBqS0vylEjM79UgHGgo7k+43uc9wb7nPweKI00QtrVqzYvosd9Opo7U9qH+1Vi6Xyxvs/vi3Y0gsIrCPrGanFfNO0j+PNvbmbwdQJ7ThBbeCFk+1pCodT1WjCM2Aem/Nzfd0jdyXE9p5tB2uTTjsk49qOfdT43Yb5/6otbLj0/8lz4VtWkOf51A0wuupRs7B5ZZUuXXN1+127qfjddSDtTqyJVd+WQOftNsc8MqpnD2Ok8/z6TD90t1mDKJiRXjp2x2+KanirbWeitujot3DuBSDi1KeXs9zoO8QXmjVWEPpmvvzjz0p3zRnuWQ3+gj/lOGs3CGPI8nsqI77LsjUh8DsnOfnH2Ngo+BWTzqsiGAzWe097PjYlR7n/aNV8XEdHY+31s7vpjrZZ2VQqlGq8VSSPTWqcJnF2aaRXSR347vgblns3vGxss/ZjLujXCkVliVJB6smxfaeBJd20HdGnZ6f80OVhJu+MGP8EvHj/eD1165R77afzSL/pUr+0c/mMbQb5skRbxkxjyyB4455Bnx/iX4ZX2iLpPPn/vSVre4wF7QxoQMZSTM0My4eIEatC1ULV6nsbtjeT9FGeAGS9ni0sW4dIgc/lTSiMklccAWqWfp7PJwIOfwNmlsGK/QdmD4enjj8UAd3lpa0vtHTTOugdaHO8qzUshGS8MRTrbSpS2jNKKUntU8KFsqwjVvf8/tM2qmZs+825f4QbcJAOsOctSUV09PPpFugNoEqFbaedELFCRm0pSAevFDYe5p4VS3s7vSDSVRANEVE2z6QalR18J0xMcxBgBqtLthQXm9J35PQZM2WylqUbxZNywTs3vWEUcgK2+ZgTArUdOhl0YlZk3DYrQ9+uW3pY26WgrhyX7x8JO3yUoV9ZADKAbEBVG10S/vsl+P81Qy0CXFcCtjBlAKNhGPCS3oJWVbXoWu6gboSAyrGH/sWPjShecN3YZNA1UFuPKmyfFAKFZedlwHffZzhKSVPciewcHpxwHEtDDGuS2MpylImlNYKyH7esDUmdFTayVpK7D7VxGpxHtsDBuyRjp0RzuXa0LXgJWiL0EqanC0tKY9tKYgG5v28aZR1mTeJwVWEety0S0FDqGQq1xgDjTIhyEmUmI6Sz0u6uB7akdeXkcNfFXpslEiI8FWdKjtCYZEMXhFJ76rRc9AsIlxrdkpVhSf/8mL9iCw8mjAea9jhxfVTt5/NIn9sj5g58IYd8z7Ribmz8Hcsm3c8+OOOn0+50wcPjOz4PYDmjT/zm4IC3SONxSYTIsrKrRglnHpZWbXOk8Pp0lhLQSsUH3kTGBvZ0ebCNpi49DzAVgeadn54JN3P+qBqYYQhEwYo8znhGdZ9CJO2MKSkpWqNkjYFvTG6cDPBuKGqXJfg26XAAM84btRygFYUrpeFfQezwujGaxibb2nCZCuineHCPgInP6+Wgi9XfBdGy4tIXLnWPFLJa0lz4+GGWYaVV1FGNPbhNKmZkkXlMv3ggwG7o1Z4caF7YRuwW8bBfY5MFKIo2ipIhos7inoyZy6XJSvwrbKZsYjxdK3sDH45ekJcEQlbTGuAVmFZKq0lLlvCUc0FsN+2ZNsA4bPcqG1aLDCdKBtaN7oNPArtolyQaV+QQ26KcgvJm29J5kuGAQZDBjIZMeqaopqyUSZFNzxvRkdyU1JS4TkEqUG5ZFj5r0bhh3/c+IPfy/QmkYyT1CK8mvF5kOwov/C6Cz+MwdYlg7RRbp7DZPedIZIMrSi8xsCkYzK/C5NqK0mx9CLcJNlPBUk1c/jpDisSJ7xiCF01uzfLm2hEGvNVBI+dKHMwOga6Z/i4aKWWBauRP5aaCZYKtbCXO+0zLYcBL3njqkkHbiGsklAm5LC3tP1cUpwr++7st56unN1Zl4Zchc8v8FwVM6dSKeGUGLQS1Lowxj7PGeWmhe+++XGcxvtF/xGTfyxI/zDsmj+SrcE/r+09g+WL//41lVj8+PnvWTRw59QeL/MI3cjD7ynB999VVCoi2W6ZgMUCMqbZU2Ds9D0wg7UIZfqy2BBqKJsM1tru8niyHd18+pGfrW85b0Qu0C4LMoKwmli67VgIRe/f0y0jBM0DmRdDRmZ2igdUEHWqXJJDLBl6DVO1uqQlcvWswrZtg1mR9R6MXWjqSXHRjVJW/HajiKT7nx3pWC88tXRdRO8e8WnrEKfNwnl8Jkbp7rTTACxx25SnO91zfqDqmVc77oZfZsJTKexh1DGhsKIUpn+/KjL9z9uS0IlSqFUYZqgseCQNsEo9j83x+h533HhD8OEsvmdLTnCbOHInWA7ufBi1FXYz9q7YntJ5M+MfS9BKtvC7BBa5TzYsZfMCbcZDii64CUxPnGHGIitWhCJyVmtlVsGyVGTc+MWQu6xelF9+Uv6vz5VfjQw1Ecnu47AM8ds+rXxu1Fb4gx/ifG4wWENhN5bW+NXe02+pFLRo0jxzb725Dg/rh4WERXTO0FQ1vYrmvlW9azlUNe0WRgZ0HI+7O+lEmkyVbjvDgzbPHzND5nks0zVFkdynA6gVbDqjjoNeadTuaVZH0D1Da5gajefW+LzPYnAMXqh8uBwMI0V70oENQbsh00a7HB1DzWNS9V5TLyF8WK9EvLUdfl+hv9fnvF+/fsr2s6rkH1uYUxn2tUEsvDX7OZ7zHsOXO58en8PYh2n2+7SoXQb16mmy5bkYCEA4YfmcqJqDq2gs7UJxRXuKl4akJ/nR9qLyYIV8d4vczBCDUKF7Glg1knc7QmlFKBKspSJ7npD73k9zqTubIxW0ixpegmVNzHHRfK8hRux5MbQlub4lKkwcf3hPaEJS4WmhLNV4+lhxSTXoy6egTJ/6Zfp5VxnTwQ8GhVLAW2CSzIsNO9vQ5WIsJFd+k51lVtARCVktJS9Md87M1D4teiMSjsoczRyCVZXpgxLYEK4FVnHClLVlq7+uzvUKKo5vwbY73Z3QoM3nqSqrVlb3yfO/pTtilHPesofiJdilcOTzrqXOG5dQLhVisNSg2TqHy51F0w66iqJeTuhojIGMYNv2e8VWE0pYZsJUkLCFMmhH2MocKA53HChSJxx4YOYJNQ0r/P5t4zYNtdSCMj12wpVOpaE8tTw3YFIiSyf0gKQKm0GTNq2oIxOXSqEf5IDoGfYeU0UcnLMUd7h6zWBsyYVeynIu4sNTGBeUk1arCuKWHXPcq3G1kt1yDMQm1fS2T4+hoMmgTjpsqaATJhrjGM52fOTF3kQQyYDymHDLuq5QnOvTkuwsSSuD2y0jDcc8bzWgrMFrFBbNY1JJB0sXxUacYeUJuXQ+lvEGIv4adPP+7/9CwjVfqsIfh0DvK/PHIcWXBhiP+P5775rH13vP6okIXJ2neoP5+ONg1D1dDl8jY+123Xjxz8S01D2GRzYdA3e3Mzvz9O3QBx/xOTQ8PtO+79NMLJWsollpykXourNe7s5/h9L02pRF48x+jZgRgr6x1OQ2bxqs6FmlHoNUVUXDqA+DieMz9p4hEKMH6yUzTHVpxFQqRiQOvtndyCv5v+up4lXPQe4hIDmGngA2Cq8+6POCPPj6p/pXONk0Q8lqNCIZPu8gtxfraV3wcGzP4VwLelFK3BOoGoqWjpvyy9dOn1eiysq+2XkjPkLB930/B26PmoOIYO+ByHruu6Zv08mO9zz+HBHUqRY+YMTjHNv37A73fT8H60dO66kv0GAU3thGw6C13D8vPdLmuY/7a2jQxuSYS6WWjX/5T8CnF2Gbx/JxsP54XUQEi6dmw4elWV2tuLa0oz4/AxAVt/k5C5SA176nWps7CeDUIjwQFWwImzib3If8kCZsu6SOId9P6CyYdhQYU6PwGC0J02NI0p8pDffuOoTjHITUbgRCaTdqvXtd2ZRGP9ofH9muvXe6w253q5DjM5z7shsfl8ubdedr1fofhlzype1nscjDjxfvEzPnEUqRE6OXeItbPQ5lD3zrGGIU0Tev/TiEfX9TqSz0UdjMCblbo6ZZRwaHVId+C7BK1YZZhmRAIDHQtkx4JpWTN09K3CniGYNA8bhX93sYujbkgG6MpFvaYHFDpGX6vBgve0coqWqdIcJyUWwPhhVGOCUqTZY5vGtIKRCFZUk7VSIQjKXUpJqRr7Wos3Vn73kxjFXRNSl80QcWAi3x8hHOooWilZtkyMYWg8+SvOkRG8bOy2b4OpOnjoQmSb8UG4HHms6FIQwLglyMED9beXVL64YelBg4xs6dZfRUlaoDVSiavijUxmVdKW1DW/BcG7IJKtn+tyW4NLCSNNkQZallQgIlKX0W+GjcKIQU9uFJW0zzdLopUQY2BrU4qoOrJsUx6FhURjAtgbPDGiNj5USE2FMf0TfnV7syJFg/tOx85k3x5tM7R4QaaX0QKmmSdpz9kv7w1wpMxtRuCYUVn+HrGkjd+Pi88KvPigylsJzX2xCdnjCBeYaJRATbbsgQujlbH9z2fkIhg8LnGxNTd6LvicVrsGp2ftfZMQ9JbUXVdNkcEtDSw8hLwOyW9kg9wB4GGlgMfDhhAQS6+oRASa+PqOBpa5yOo5VuaXiGyPTRF157Kme3GWR+rDkiqZhurWe2q6c2Zt9ySAtCRKrES03DvcULze72FnsYkPRdCWUrjWs9lL9f3762mH9Jv/O1lPQDZgAAIABJREFU7WexyJ/Qib7ze58L/eNifzAR0Fy8f/Sch8HFI2vh+L03ooOHAe2xuQljLo5bBCaaAxjPhVyq5YKvBZPB1kGZbWssLLWlvFtT4eIj8fTOyBZcgKZnm7rN6j0iqGYpOCIrFsRpIvialYeThl3r5Uo3w6PySmeRlR5wlZR8g1Nc8W3SyUpWyhpge2fvPXFWPeLzgqU1YilcStCmNaz4Kx9GQ24dE9LEKyrqg7UITYWB4fsOOlA6FlNhiJBxfNcJERVKJGwBa7KNJkXRfMct/UuGS4rE2CCU2zDMMyqOqLikaKZIZZXAR7CW1C+IpBUAMjKA3Q/qX8JORgqTtq3QJGGwUMF6wl4WwW0eD7M0hHMcmrKUTBuS6a3/yXZeOpgMRsCl5fzDiqD9SBJLVgnAtqddMLUgurAcRIClIqxsQ2hLzhDLLEQqFR+dq6RYKagUzeF2LnqDqgIk3NEEvvumUl3woqisOQMwYwAbgYXyq9fCP/w9qJpBHd2cYQ31yhILtkNQMrMgAl0ronfVMR40DaLnzbaVnFO5gUql0MCYYrdk6bRFaCysJa/ZcSSpuXFt9WTG+NQT2IRewwphheJKQ1ibUD1dVo9OTzxFVYukeEuiJ9TlioRArQkbltSG6JqmgzisixLDMHNEg/Wid/pm5BD+oBZ3c0orlJaEiNu24SWjJmsU1r4SRdh9YFvSqr8GvTw+9p5dc5BBfur2s1jk4cctypdalqOVeqQXfgmq+RLU8yXI5zQ4evg3lY3R72pPkbz4kY7Hlha++0A1uGjlopWbKWNCErdbGoElbzsDtc/XVqUaXKTe4Z/JsVbVNM+qecgqivq9zTx+R0TOjNEDr64IzQdedkZUIgq+FHYNfhVO7HeMU0R4bist5I3Zmrvz1PNCbuJcqqQpm3JK4h/5zdmaKuTI+YSgLvXeNbUl6ON27ss8EJV9C3ZXXJPbf1xUN3F8Ma7qEMsp/998sIfR5xxBVdlnpuax8Oz7zpC7gVTzNLoiKj2y1Zalomvj29/I9K0t7ISuEtfO/TG4y/pLKfdEpQlDuaaEvpEJRdXvw0RV5bNmvN1uMyhd4tQWHFqFHCSn/0/vnbZwagUOeKBL4EWIVgi2yXJKq9xh/exiDsjHrfB7v8hIyZhD4uMzJ+lgYd+ykNm9YLKwTRrykTq1YeziiA+q3HNxHy06vCo7+fmOz1Bqdi5aHPf9PKdGV0ZX3Cpb2LnPj+P4CKOc16ZnePboD+d+MWq7D/Yfr9vNR4aerO38nMexOMzujvWgOhS721s86hMOk7uDDutWUw/wAPvufv8O76/FI+gb4Kot3Ti/sMB/Dar5GkT9T9t+Fot8CG/kvu+3YxgBd4rlj3yaH6vyCB4Tn+Chen94vy+Zm2lkPF+fF7pFerBUMlDCJmvBIt3xIjprgdfXLXHyZQGSOysDGskhBkM86JNrvhZFCmiVc+BUIiXoHQfJ4ZB7nMEfI6ZlgkQm0hRAWg6lpHFtSencdrDY00TNSvpvk94pXhxqsNug1EYPoeqSBmEWhBmXtSIth7EUaOKTKWN0GwlhjaRJju7JxbZ0fdyHs5CpUk5gRehh54ViBqM4ps5Vp9IyjNvYWWoSL20IYx670dMdc++OlkGdzJO1NsQzMtDMICqtJWMmvPDNxwuXjwufxsZSFmw3xA1X59Pm1EtlbYJ15TYGw526NLoNbKTVhNaC2fTgcUt7Y8vWXMWQklUtU/jmUtP3PASPaWmrMgeUxottMzA9B8sRgVoQIonl24SDIpk4RziIjR2NxrBUgQrgqgyczTrbSLjvF9tg7wORqaou6aWeGQhzZ4rzqRtO5gXHqIQ32hI8XVOtXGuGblvcPeip5VzYJCxfP9LAy4pgAU/rZZ4zSY8MesYYtIQ7JMC74r0Sr0rM7j0V6AojYSG33NfmjpSgLjoLjQJ+L9BSAxKIT6fP2422PsJPwZDA8FPg5JGWyaqZfWAj14nj3AsLLpcAGxTNazgzgg9LkUpRp6hzLQ2sci1KIbvi26shlhTP9hXI5UAoTnXrhLMOGPn/E3aNiPwVEflHIvK/Pzz2GyLy10Xkb8//fz8fFxH5L0Tk74jI/yYi/+rDc/7i/P2/LSJ/8Q/zQd9X5V8aUjwOtI7/H39+HLAKX/69x/c4aF3vt1buQ5mK0EK4Thy9lMIWwtB2VmatNWp0vnu+p0MdF0OPFOocd/ejajiUtO5ODGNd1/NiGmMgrSZGrTng/WDK2Pu9knKnOMhDyEYpBY8d0cyHHbLS1Vhk4zUSRniJkfGEA9LidZqg6V3VeCwYNx+8djs/Jxg6/Wx2T0XmY0V2rc6Q9qYSGX1G903V42Mu7jGfuFk/xUxmxmaBcdAOF0oMeneKrnOYNlgvBY2dpSRd8qjmj/3Te+elB7966QyUbdvOY2BmvOwjB4ISoD2H3JLH+PiMxzD5IpVraagllVJV+VAV1LmonJXsp19ueNz51sf3vDxZcqdFuWoeJ0ZaEwxSCHdUy+871XMIOBLHf7wODqO5YyCdjK17VSrqlO70yLwDI5XIx746KtlaKyaBtDT3Ot7ncaB6VNOttfM5ZxjKcS258yLGZ0YurEOm0CnPmbXESSioS2e5GLXF+R2g0O2S2oF6/zm2R2Xz45D4XPBfnddQPm95kw+/q82bKLrnzOv43v2hWwPOzgSyS63tvv74LYVgtcmcW93PjwVnKYL4YC31HNZ/ac350vb4u+9RhZ+6/dRK/q8C/867x/4T4G9ExJ8D/sb8O2Sw95+bP38J+C8hbwrAXwb+NTLc+y8fN4afsh3V+nthwHmiPVCr3j/2fge9/3vEg0GZ3N/vuBk8cvBFMx+1WFB1Ojb2uxR67AYzF9W1MPotBy0TwzXPwV4ayCZe6CjNVmpkt1FaxRBCp7IxP2Q6SUbBN8OAccBPrSK1olJYpVKWdlaBVcukbv0KYpmWxi/cbrcMJ6kXxkh8WmVl91RMmuxoyda1j4EPGEtWQVF0KhMhbLD7fV9+WBaEBZFyConcnRcHHT3NqLSwTldHMPYx6FroI7CaXcpzq+zduSzCpTau1ytSFqoqRVJu3lrBi6RJHDd6v6Gtst8MoyQOXRSPDfON22tHSkFq4fPrYL853tPTp88ZS5RKa8qiDZekL7pl1RoIgVBLfve1FIYOsMHTUlmk89SUFs4qJdW27kSvjCpc12VWhjKVnkqMyojBbjtS83wrLRO1LByXPa/Skrm1BztDRCZdcrqP1oKSPkibZUcTlgPDPHgFbfVUHg9TOoXDWlJVubYLohnTGELOCCYldt93XodCW9LnKCJFb6oZOSjKa78xsPS0MUPnNZt2Ac46FHVFyKjJrvf52MveqZGB9uGpt7AhKNMvqHekvKJFppCukPVxxgWaJew15G5xPYajKrRF8KdZ/Eild6N3o0RjQeiR7DMZTq0NHYkGrEW5dcM8KFFYa+VJCosFT6tQZeciwaKZESsiPC8l5wtNqa6spdFUuCyVOgxiENNhsjY/0NcfbY8owrku+V3V/35W+Ou2n7TIR8T/BPz+u4f/XeCvzT//NeDfe3j8v4nc/hfgO8lw738b+OsR8fsR8QfAX+fHN46vvT9wH0Cc1aC83RmntD785L4/ct2/BvfAnX1zulU+tEdF71XJ8xPJh68lhRiWtD2WhX0beFXWkpP2s4oQQeO4KaVRmSInZ96s09UZIsnZnQZM2lPm/Xrbk2njGdY9xFKBGIpU5fP+OTnWs/rYbSDRebpUImAB9l3x6RrY1kKMxvAMaB5R2ewV08HwNEODvLCZrocnDVLTSfDqySQ6koiaKLJUPu038I5iVHIhpAj76Kylom4MnN1HGocVw7zTWhAtBWNVnNf+SniKbdydfd/ZJ8+4k6EVr/uNzkIPaK0irXDbUzRmVdJNMYyPHxQtK62tDEsHzbUIEYPSxgxe3vPYGGhxdM1jpiXQsSVlUxPQKyK0qlQVLhRWhUsVnrXCzNJtA7DGvqVu4ro0Pj/YJx/2BrfN0VBqXcByAF9bcKmNp1pZouX9XR7i7FwRvXseiUwzPsuypJKiOmolhmPRGDXNuYKBj+wqdzI6cpXCE0H3jr3kILuoJ6TXBz46l2igecxdUvMhami5V9FVav4ooEFICpykLenAKIAWxFIcdZAjxoQbd08rA58e71mIGW4Jby11nUy4HCZHCJcebH0/06FEMgTejGRSFcFYczXQShUYRfIm0419FGp3ogpMG4WbpqtmCe6JbR6AsAVsARcNrpfCRfOcjq3wLJnvHCI8XQtrg49i6HAKC3VZKRuYTFaNdix+rHp9XKtE7ozBYy08tDw/dfujYPK/HRH/YP75HwK/Pf/8O8Dfffi9vzcf+9rjP9pE5C+JyN8Ukb85//7FoevjEPX9QPXRpuBL2/u2xyQweVv5P7ajx5+PlvQMxJhilIOv3JYAsRN6efQkOXjQj5/raP1E7624iEwG3oQJSDbBHolvHoctIhC7D2cfFaVWVj7tmXT0Mna8XtgwWLMd98iL44AxPrSV0ZWYeZ0nM+HYrzUHqOtcUH6I/TSDUlVeBujtbhwlIme11lCiFTYb9CgnV9ki+J6FtWb6jw190/ofA7zDcG16RZ3DswUlbv3NfiulnC2xqnJZUpTU1n1CDSmh32wgl8alLW8+M6SnT4nB85r74IDLahVE7kPuxyFf39PNs29gr/A5cuFrT4qXzuvYMX3Lx6Y83DznefH49+PnWETPLIIH2ObYjsdORfEcqh6/11pjkULYguh+nnuqisqSSuyq7Eunxs6wwtaPa0BZrgNkf3PtHe+3R5p2HelKx/l9n7MkvHc8d0wmzvHdHn//uMZOn5+TVPD2+/aeHjWvy11Tclxj4pE/D+9/XMN72XmqwXObFM8xMF1PWM/8hmgmV71iuYhrQqPbyLzW2vJzLGtmBD9flMJOe1Uu4VwJWqRdxqJZBKz6YNgHyG40lywr/ynD18ftcT/91O2fyeA18hP94cGir7/efxURfz4i/vzx2CM082YBnhTK9zvluOO9GWD8mh30yKM/n3Nw7h+eo8WQ2W6FkPSyjWweq1CGYDRMKh2nqmIM0Jrt7/Sbvqhi2rlKwjilJ2+4SkqiuwcjDtveApHWxemTk9VKqcIwh56fWmrJls4FF6dEELZTWoXYKNOJIEK4PlVULtw2R8qEwjyx78M4bHPNoW0hE6MiFX5OsnYA+j7uLAhJa17D2IksjMKwiTknrzpVk7tnNukN0vDMkwirePL/1WY+rWa1t3fcO60Uygxq9qWwdaWtlUttmAXEANspIdxG57XAhyfhdlvRlkO/7kZZCxqTIljyJl9KSVtlHLPgU+/Ynp5CS8lFo7XGpQkaydF36+ymhCqDnaXC0iTZR+uE71xYagPPeUb4QBZFNsfHvRtV0k1Uo7FMF8mtJ3Nk9BwCOga+Y5O3XyStp9PTJc+HQGgmXDXnAWiwbdnh5bAxj1VEHofN00LYrNO8sUnhuQlN4DZzDEYoLV9qslHyZjgmLN7IofMjoUE94bw+cggtEuhcJrYtYwWPofsgq1t3GGMnIhOZ0qJ7hoHPDt2JsxPwEdjM/+0hqFcsCt0z+B0DSuojRGKquRMyow7qJQfXlqgbOv9r6PlaGxkj+bxUipD89hqstXF9KrSAlUYJ4Rtf+IYUiDWvXFQpQ1nWNEQrUmkh7JLFmYR/ce36Elb/hlnzh6BR/lEW+d+dMAzz//9oPv73gT/18Ht/cj72tcd/8valan6+/xt8/fj/+wX9/XMeF/33Q9fHTuFxAHskvYhMlkefwx6cyr2aKg+0uWu7IL6ddLx9z/T4sCv7rZ4VqJkle2TvaVIWUDTZOCeNa78Phx6rvByspf2saoZGx1cAPwlOxeZtr3TGWSk+7oN9f/3RMHTze6ekFogObBwpOPeb8FGJbds22/t7p3V0QY+DMYYlnINwa/dq/ajESilc25I+OkxF58uGLPWNunMvZHDyfN1ilR9+KJgYn7Z75X18zqLLWRVqcUTvqtqDJnfM2o/nrUV4moyNqPnTmqIaWe17B+tUMsS5Tiu2JkqNdn4vVT27hIOit+qDkjUqr0dFXKZhXIWnp6c352vHMzCecr7Wi967x0eb3kcCwvEZHjuZszPzngKpWunR+dVnZ7e3Xel5XmhW8Y/79rBYTkhnCoJwlsj9sCzL2UkANCn3DIA5s1KbNsw9GOPeCT8O0Y/u5taNfXAqkmuttCbpac/0KZrVfScTvhp5DrcmFF1TjTv0tM44vue1LlyqUsnKfJHCxy78lhe+XwZPS6FgyK0Tu/G0Os8tb04l4ELwoQofryvXCNqib2C79+vU+7Xp8d/fr3M/ZfujLPL/PXAwZP4i8N89PP4fSG7/OvDDhHX+R+AviMj3c+D6F+ZjP2n7Ef7OA+Ux0okRvi4NPv7tqNLP6t/vqtdjoPFoSiUi6LTbDYFLq/hU5MWwpIMVJ7qTSTbzAJbIvMkIdu9ph1qzIv+N6wdKVa4YVMuABHdUBFfDWkUkPddftk+JxffJQ75OnNNzWDSKIG3Ba6VQeHFjHz2Vk27pKmkVE+VlH8kSID8r8spSnGHkEM7TeRENtArLcjmtYD2SqrbUHKLdbGNUIWgglnTM2Vq7KO6Tyqk1P+eDEdkpMbegRypfZRFudst5QA+EFXMhKCn88ZS+l6VwFUWXQsSKls6FPB7fLY1rON8+VX7zQwUVPr8ONku/lN/47u5FfvDRO51alRFlsk8qW9+5ubDvg02NoUkHlG6wD4ZBew7Wms6axeC2b3yO4JdjsEXhVdJOeC3G7sZLH5goLo62BULZqvO533CE1lasFEw9HRCj0XGuk8WxBihB8cLL7YZa4daVgaBkSIrEdp6zLcBRylL5/mPwm4tPGnLm5t4vigEMdsBd2fuNvd8YkSpisyCkYZGBM0f4uSmMGeJSvBBhOaT1tDbeN+PzbWfrClHQqCzAVm6YcOpFRspHM1UthCJlDoslRVo+qajcb/rDnNgtqazDGOZULUlbbQCeWPx0oZQg3ShrYzdHvKGkvkJFKFVZ12BZnKipsh6uCM5zE66kD/+zCN9i/IYI318Kax08h/BbH4TvlhyySizoS+VDK1wsWBSupfCMUYewqvFdOM+Ls05H1vdV+48qe3lALORBHPoTt59Kofxvgf8Z+FdE5O+JyH8I/OfAvyUifxv4N+ffAf4H4P8E/g7wXwP/0fzgvw/8Z8D/On/+0/nYT9reL9BHu/Klav3tF3zLoYe3nPhje8RFH3H5x9fBY5o6FbZtR0vhaZkLxxq8euRgK/obytvxmsMM1Plh3xjeOdR++yADQkQRKsWdl5HBxUmFg51BKUL1yaE/5hAjuI2ew+Iw1rhT2LIN7mkWFYUPlyUDFFQJbpO2uIM1kJGmZxTCPQeMRXgJZ7cUHV3agkjQo/DU0o9lWGTqdKSatbsR86JzFyIU25zwSjeI0ugGS70QKrwMqOWaXOOiKJUibXrE+/0ISqQJl02XRtGpEA6iDnYffI6R5lAyWNvOb3+fs46xd1pRbEtfd3AurXJZ8ngPlPowKEfrlNCnTUKzTIuqCs9PyuUy+O5Dp8lrVscC9XJFi+SlWBWjMEzQFixryQQj0shLJFhbQWOCA5FDzkoKfF57sHtkUPmYohx1WhF8JGQ1CPoe9C3tL9rsgkyn6ReG1s5vPRl/+jfhsqRQCmZ8ZWQymcS9E9xtEFpYynIOUSHhwSg5uD8DOuY1ZGaopP21IticWRiRBINZMN18MHph7Bf2fvdIUhfqkufS0R0oaRcRU1EqMuEZqYi2s6JPFwOnFkVqsNY7Pu+eqWsq6aWkklkNWkpSOBU6jT1mpxqdpYIzoBiLpKHZosEqzqUo3y+Vb5vwQYXnVriUOXeLwcdn4+NFwXc+3YL98yu7x3TI3Cgt/YI+aOWpKM+lsBYBth+tYz+ClB+sWh4NGn/q9pOshiPi3//KP/0bX/jdAP7jr7zOXwH+yk/+dG+fe/75/Q75UsX+ozvjAy4f/tak7PH/B10yIpAHQdXjcPdopUs13DtIZKJOEr6y4tEcqowxcmFFMNX00y41K/fpe3OdyT99wOv0FSmSFM5a0qjrW1mwac/a986y5HNWdWye+DrFMU6Klo6uQl1gqk7XdeWlbyyTv+3WUwIfkcETklTNmw9qTFsBjBGJzRJJH7RJX0hTq7QMOCyGY37OGkorqT7FnQij1XIOvBpQSAigqCYlVMcJ6Ygm7PKp71ya4iKsraXrS98ZXmi1oZ6DxNurEGVFfBDN+DN/KhXHv/sHxm5G08bLJ5ntMpjtXK4rhc6nDeKA4RzEFuw20GkF/PE6ITgdPF8bl+eVtRtlM26fW0a76V2p2sMILdx+cJaPeW6NMdBlRf2A29IzHgnEjAhAlM99y2hJGzl/cMdN2c1RVsBOS+hS7vBJKYVG8CLGwoXhN76vhe+eld/7LDwVuEXCgguK17tSM4/jHQJ8vHZGpLWFFMX9DhEeC7UccZcMRl9xNp4qiMDQIMjIQB2p5dh7LlZu6dk0+tHlAQh9B2FFNTH5xwDw41osWlB2qrT53nOa4lk4AVgP2vKWvVIsO2AAFyHGIC7BFjlTSPiq0PpgjZVv6gtPND7GQJrQPG/K6p0ic9+JEBK07wL9ZUXL4DaCZ67ouNFKoVvwTS18bAO9BJdRMJXcSQ/7+ktIxJfmiF9a9762/SwUr4/bI4Z+ZDvCWzOyN9P/LwxeH0333w9uj7vlyUV9r7TtSiuVdrXZOlVECpukHeyQMhfCOwY6Iu/XebOphDjS0ljKYraIWGK7kuny4qkSlICrK9010408GDU9W3pAH0lVq5oz3aHKbht9GH0Yt1djl34GL5gZNZTd50IthaUYMRoyoEbhiTVtXsNRgt2hh9KNbHcDhpf05SagQJU6PWMKPQpMimV347oEpdwtADIdKEVdeoFS0lslHChLmr+Rwc6XS9Izq8GiBbN9mrM12iKUCCBj5FoNKHtqEuSJv/X/dP7RL+wUpY0wnr5ZE/eNgUvedAfCRTpEWsJqFIqTkARJxbuNHID+2d955mkd3LYXXOFyFZZLJzC22z6PfaYXbT3DLfYXYTjU5UL0/bT13XrnaVbHg8KyQozMA0gV8VFl36X4O8brTIWSAsxrIGoqoV2SSojBd+WCaOPv/r7x+bXi6qwI37dCqYFGJjkdN9XN0tdojLvtwLHALlqS717zvDi8e6LcOzZGSchI5aQslkjPm+qgWlGtLEsDCWpLz/3a0lPIMfpw0MDZgEFRQQhalfTet8FlXTANYiqFI9LVdcxruZuDFjxg33NfjZ5ZuBYZ9mMkPZMmxLQyuFmfmpTBtcAyXvluaXxUuCyN5jp1F3neVVHEg1YrtZQMn1GQ0Si2sNtLYu5RoGccz+UpuNB4FpIGe6Si8ePF/LGwBN6sW/+8MPl/7tvxhd9X1+e/HwyF4Efc+PO55l+8M8IcuApvMPv3O/PTDnUxXveEb/oAc+WmQgU09jzRpjWuaopYLAo9gh5gQ3jdduoMa9496CLUqBSCpdz9XwCkKN0GguHFKRNv7RaM6ajYAzwGgXG9fqCtV7Qu1HXhua2ZiCM7o6cE/3H/1SrcRlZCosHn/UbxnbYomy+8jsrWL4y4ICIsslK8clWl6KC5p9viSI59CUerpLnUki6XB16LG7fPL3Qp9C1ThMIco2VQx76BOWu7sHdj78baKtIaMYyKUAJuXXla0vfeVfm87QhpwiUS2G1HR0WbsT4JDGMMRXTwL32bjKJvL5U+YOuNz7amLqho2h58aNSWg7ZSE+9+7ekt8+1vFL755kN+bjM+PBnKTrSVKgNITv91WWl6ISKDo8UGuiQLKA29GiKV7inY0V55CUdqFhDenRhByIqL0ic0ZEXpw8BGVr+azKimOb8YVeiygzh7K/yDH5RfbDtiO1KSBjlG4+Y7I0jmVlWW1t6IDDMc/u5tky6SKcs/h4NmmDX2XbEQ6nLhUpP5YuF4DEpNqLV4ioaMoNQs9dPFUUESarmu9wHwtd6vS+2w9402B+1mxiqKTrfPx3zkWpUIY1lL+rlPksEYgwNALaUQolgpeDRcG+jC7s7lsvBUne+L8jEG6zJAhVYKi3SutaA1uFThm+dK6EapC/1XC4tCq0arxrVk6lReE8rHj4WmnUsVLhjPKnixr65HwKkLeiSDfMlu5ddtP4tF/mvtCnxhSPGuxXk/jf51bc7XXvNxO4yajgzH4/V0G+cgCt7ygE8mgGaIgE4s7+C/36u0u5nRYWFwyKvT9a7hdg+CeGSBwN0vft/3k8GjHuyFDAfxZVJA7yfNKmWamNnMfb0zY2IfZ0DzsNs8Xcn4NTqfzflE5SUq3XMIXaaSc993oqXX+6dJQ4xWKG1hXdeTlbHhp6HT8Z1aa6d3fkSc4hUTTsEMNU6I4mCPPBqlHeyOl08y3y9oAr/z259STDXg914nJj8XDcgKu9TgF7fPPNXpNrptfH99RtrC3/pd+D/+784//L1XPr8u/MFr4Z+8QFuvXGWwh+CyUHtjxB0K8SInh9w1LS1UlZfolAjGpvyiyxvGyfHc41gdBmkHe+SxYz2q8eIgfbJpirGsyXMPJKX8tvD0XGj0O5tKhEsoNRLuOPyVHs8td+dmecxc5dQMZEfxSmkbiBGMvHHPa+joZh1OE7nDX/2RJXb8/nEeuDuDdOksnkPex2N9PP9RH/B4HbtnMXSpbd7U7poBkXtweu+pYfjsnRrCxYSyDb5dFz5eGzIK2gtPMrjS4VaRvvOBBXsFdriWlteQDNrHG7rcZxFrES4qPK8bv/nsXK/X/JBd08Z6zhd+beH5iEw8wFY/dftZLPLH4OHxyx7Dn2M7LITf+8D/6KX48VAV7tX7MZBV1S/eMffdz/Y5UKQMbDJjAIIFn+9fqmDe0VrmiZ+sgIh4k3AT0dlxPDY2MoZMajnjQezjAAAgAElEQVTVdmlElsMhibQgFg22AEfoI/m8QcXCknpZBcRxTbaDRcEnWyKHRQEom6VX99oSH09VqbPIyj4KMFik8XTNgWipwS2CjVTvqgWt3G+QqnqaU5kF+xZIqagJkBflpkETz9Z5BBGpLtweovxqy7i4jBzs9wVnMn/M7KTciWRAdKNOrn7iwy9zkf0n/8Spl8Ti//7vfuBzTybNiJ2qguAsreAj2HYokV7/n/tGt47pwmvv/InvCmsTXvuF118oTxfj5da5WeVlt0wAcr0TA7Ti0rN7CmVYHstMn2IqOxuvQ3l18NJRBUJhqowPuEY1s0FF0qPczNCyMiypvHkpZ3enkUyplw3+7u/+ij/1x5XnCZV8c3Vqye6wIER0mjq30kEGy5pc9WPguT+4SxZRmkjaWzvTwjffV6fvjnrabw8SotqHU2Yhg6TXkgaEe8Jhk9eflOIEI84FPO4WDn1khGVQ6GOcFOWje3fP/ekY9EBLI/Oy0kzt6ACbZJLTIDMDahRscv7dB1qEP77C96tzfepEF+IW+CtgjcsH5fKssBpPz5XYAn3tFAsuT0YtK3h2jK2uXKvwoTkfnpZ0Vd0D35XnZ6VaAV2+WHgea9kBG79ft/6Z2xr8/2H7Gl71/s+/7rmPd8Ov/lu8tRf+EnvnvYJ11Ht1fPC1DyzzWKSO7WC+UB64yZIxc8f7vbdWPVkHDxXeEocnCCd2eihDAdriuFVqdNS2H/3O8d4HD/14L9WkvI0+T7q4oGWclaRbPStJEeFJBq/beFOJPX5Xdz8X6WNf7ltgI02i9i2Hitv/y927/MqyJWleP7O1lnvE3uecvJVZWdUpiiqqoUGoEULqHjBi3AOEmCMhxKPV4g9AIPgPmCEkEEIIISGEhASMkGiJAQzoCd1F8y6qquuR2V2VmTdvnnP2jnD3tZYZA1vuEXvfczNvFq1GF7/a2vfE9vCI8FgPM/s++z51zmV68Zl3DGGapiMiLB6drqfp1lFZvHNSKNnoTRAKYHyWwkGpTJ26KWUylqXSmlPJ5Hazl9sB8laUtUWDkw1HJwesKC6Jb89xb5+t8PnVkPnMRmjd7/f4ftxceh0t9LfodV0arcZjmoxcePF97591j3yjpizHa9yP470UYT309EVKyB6IYBmetsz3/7jzbAVz53u/kphLHSYcldM5cSqd72ahYCwtBOFUJvBbJ2kELS859vvvfdx3CZrrfj5w4DD79+nuMJcvzStVvalCKlDSi3uwj58o0wxT7jtHtWPuhLEBZmGKUu1lT8Z91rt6j+CqC2orRZ2HKfGYlNkzDy1xfgent0J+08lvQoRvmuGcBU3C6XRCZca6kHvGF2fWE2UzZv94ZIki4SOgzXhzqszJSFR+1vFVZen78fV1jm/GIq9y7GT74e4vQIgXwOsritELauROn9xr9nec0z3a2B/7VDZQO4icWQktk6TKw9B/j8jC2ayx1s5qG8sQO9rt6rI54Kg7eUrkKSiSkztvptMw09BD8rS6cZphnuvdAA2pgySNR028fYhaH77hbQCsa8b7SiEz68SEHk71rXXaViPiFUd0onsOWeHUmQZ9MWc4z1d6jz7X5gkZqoDXuuFA09OYaCPj6ICEwcLepdl63JulQW3DL7bHojCnjJlzdaemW8kmpYQRhhG9d1KLLs/NlKXBmwy0kKqylGgSnbbk0PBp/cxlKYj2IVlR+XBRrDrXxfFaWbtAK9gWP1Wch1PmN/7MG8oE0iPFpyTeP2X+jx9s/OHzxOUClS04/uuCDtOZ3iDhIaA17ZtSCKslCcZSJWrcT90gp5AetkaR2Bz20kRIBqdY3F2gGN1qdDizlx3DAUzawqadmuywzsMzy5LxFnLRRVbaMJf//hfO4xTYxfUC+XSi5ijH0HO4j1ljbUOdU8NnVwfbaZ8XfXSeHoHSkEdmUGi7BGi9R/quSmUjieM5AHyS0Bnm6kSwo07QcjUmcquDOeSOuFHdSRbZ7s6j3xdwt07PjnsPQxADaz2E5jQUUpUYn7WH+c7qneyFyROfqfCts+BUzDfmpCRrpJbIZjykBIvz4cOKsDGdKg/v4LNfWnn3q8qsM6VdKSmT37wj9Ym6Bn2S08p8UjxlQKklHyW918Hm3r9z33m/HyK39evrHN+MRZ6XvPaj3nffDu4cKRnc3bS7v8sOUr3KAvZruvuL1/nUbtn7zKYrxUBIWI/Us3WCOWPCTAlbs/SGSdILv9amwTvOdOidYk7RHk5NdaNLpq1G8bAGnNxZm0ErQ9Y4gNb9M1ypLM1Ze6e6MwEmjojzMKdjgwzuMlSBjQ5TobYhw2vRfOSpMUkCr5AMNeOzWXmcwFq0oHfRo3uzmvO8XdhMebZO7vXQu1ZVUmnkosEcssYsQkZpXrn0ji0zlYXTKTjw0qPZplpnxVi8s3g0i5kWdKg9qrVgOEjjYZ4omthqRbaOWcOs0W2lSYiZNctQM9Z88LITkjKosgh0XaE0PDvbeuGPflKD4kpmE0eboake3colw3ffNB6BaRYubFTpzFMApSKCtFikiiZ6XUIaLAmJwtYBEUzh2sJKr3rHLbFIMD1miRKfiEQj2uo070CmbaHOGNnUxkI66svmLRYwJyQh8qDT+kwW+HB1/tFfEb73nUTvhSQbP3mufPxQEI3NaCcunDTjLqMpKiQgjtKBJrqFr+v+fe8+wrthtQJ0RunEUXVmCiohZjaXREqhUe+q0aHtYbcno5wljWhiooVY3eg4d3esRWNUN0eS4dJ4OydUN8Q1GDxAd7gu/QAxFTlM4LM4Z1fIU0TZ1vEKGaechKKdN4+FiQfKOlOv8Oah8Ku/nHk4O6dHeHgQ3ryZmOcOBcQSp56Yp8bW4jvcLo1ZEqQTTgRY1wWU+qXgdV973INN9xorfB3w/rzja/Hk/78+3J1RrPtSXf7+qOKw17G+oia/89/hJQj7ui72KTBEJLpf23piSo1e2zHAH6cAG3sagmYoZhtOx+wupST+njV4wt3BekJ0Q0wotlEK4NuYoDvLITSt3YbuBlEOkW5ce0jvzihXNZJlXHrwts3vykU7rxm6RQq5emdSZas3J5xOYW097NKsk1LBUuOxR5PNutYwWAZUzrg3znmisuHmpBSt9d2EbTPmU0FHSr826P2Mp5Uyb8DEpI1UMyudKQ8wuRvclT7C/LxwaRvVGpPMNC28v6zMJY1NL4OH2YRnQBVvFRNFetShOQu0SlEfmRVsQ6ohdadoDqNs0bAgFB/SDBNoO8bZ288eaIBfLvzZd5kPS6NMGetGTQNHMGHb+esuzMR9WdfGNE0Hx/zeR6CgtCS0VlHJVAkFxJ5zdFVjiGaqB/02DdwmVSMRQlq0IVrXgj769t3M+59e+DPfyvz571XefSfxW78Nb8vGhYy1UMLsgx7be49sAMZm5zDGue2/+w1U3hsTtwTzneNUngo2xG3UDMqOMxg2gGfrHbEwnam1IiikWBhPOsxV0jjvPCFD+/+gA0+7zEeMmyUpWHRCt8F/jfcdY1k1cW2ESqUMaQcRtK+ck6PeOKXMLOFbTLXo35iemU6JTHgKaJLQo8nRX9DaRhHhVJxOQ4uHO+Cc2KpQa2NqhdMEts48vxc+/6KFVPQnfCv2cf9iPdI/nZ78N2KRVySiU3NU5HCkORqXGIv7AGPuSzcwNoNd0Ocu3fTxg4TwkuzdZB7X8x3s8NsNb9KY5me0TxhGUtA+1O8cJpyqsSltKNIifU13m4gRXaOqUFsbMqfhOrPXmT0rYoZbI2cFMdxiAes4iWAImITvZ5FMd0F7p6REb5Xqerz/lBSrHckxyUp2shU+9phwbkZyo3ahylCznJVOCZCshbjUY5m4qrKukRI/ngsfW+OtOu45xMxsfGvmPJ5D4a8TGutlVi5to0xO1phsWxUeSmazDbU0FAELjmE9JmETZ9uiAUjlHGk/GU8F69GAdqGS+gNdG7YKPnOITbkOHvZSyfmESIiQ1Wa4TIg2nOBWl1J4LPDFGpGeaQioTaMDdF0q3//BM1dm3k4ZScJvfK/wf/2h83CasM3okgeX22kW7/8ksIiSUsHpTFlZm1Jy6A6hUaWt1ZiksImwdaeQRvaWWIDJgslVXIbrlh/mID4W3yQVSmbrietPF759yrzfnnn32Rl1eH+tUBKyKrL5iD4clwRCMH5QIHxf2Rf6sYHvIn0QaqK9d9Sj4a9oOmQ4TPZy6i6O5/hELIzWcFdcE2rB728J0sAdKoYpiBkZodYFPMFQZ00lkV1iHtWhnaMxs4XCwzTKpIwsXnzM0xJzxKNeXnKis/GtMvFwDukI0WDb6KMyZ0dcQ3XSwrazTJFtlCKkk6EtUdbMJQsPU+JKhc2ZHs98eP8MPvHF5xtZn7ElrDx/fF0C/ObLAesL3+qx/tyf8f9bnvx+vI66j3r4J0DS1+WYTwG295TC+3NeoNn75uCJnE+kbBQypzSH4JI13uSbx6m7k6sd4OjxXgaoudO/VBWtmVV0tFqHFdmJRG6OqI4IddRsUzTq3ItK7QDcDkTl4gfwKxKc451S5wQYuUmk8cWFSRJzeilQBqNDU2/1zlLKANFWpimojk8fr6HgN7xIK7dsa+9s3V2KqhsXvzKdGqqRRfThUdp6UPDuv997oKyUQhl17lorPbZTkOFylGJCV3V8dANH56kxpY3P3u5+pxPr0rg+w3IRVAqFTvYGnkNmOCWWbaIrkbHcsTzcnWoZzYW3Ocwn1u2Z67NxKsaUGrSFx5Oith1ZyLPDh53fnUKx8P1HOwTEigsL8fknj3uTqjG5vgAt5zuDlt6CFtm4Cw7uxu8u3JZS4nQ68fb0QOsrosYvfyfdgHGJMuL+Xvdxqqm+mGspJaqEg9TudVr3hfNuHu3HIfw2wP79/+/n3iyRTd37Ce+OaaaClweuXV98rqNc2+wo783ZmUb3rwlR8quVXGNuzB6bfRENGrEG1XPSNFg3hbk0prmTSyOdnMc3SsoNXDmlArWH1WcJfn9+SHgx2tNMez4hTZgy1FMA0Kt3hOWYi2vLPC3xfS29wilotp9asF+vPV/1t69zfCMieRcikBjRNdwWglGhedENth8yov7j3E9sAse5+vJ6x2DymyiQquKysa5XtAsuxsREbY2iIUbW+oZZwh1QpamhKRanBNTWSUVD9Kw5iNFkRW1CU+jDW1dWOj0nJldad4w2VAw7OgV10T18Ij0NSVmCMVGrI8CUSwClPlgIOsomzSg6sQ4JhabhEnXCeerK4yTU2nGi7FBysHS2dSOfMhMZ97C7QxK5C60mRCakRhOOikStVKKumPKJXjvqmVoTJUOh4+b0Kly18KhGpyIIsssrjwW2aOLq4T2aZwaOkHhTEmurtOGxm3N09MocG1ZJmQ9r5+NWmWZFto7oxNrCFOktHjovkllaGLF/XB2Vxto7Z5l4nE48eSxYSHQW//QSm+ZjmXl/yZgqG5WHBHmeELlS0kRSY/H4LNaVDnhaEUmcJgPCNNvcySJUgZQVNaMnD9qsCsnCw1fTIEt6ZssC7sw5h0mIpvDPTYIunakULt6gwx9/vPLZg/Jbv/OGh2+vbJfG3/+u8hvfUf7G72dqNcxDQlhV2XpHemGzzoxG2ciNvDbylOnVaM3IU6IhhG/srkkTxi1KFNfNosHPR8BAFUxjcVuDPwQoXvSgRh4sNrugBlYS2jumjW6E0YeAWiOpYkRGkZNQOiAJcmLrgSdsCiBMKcU8dMOToM1xr6QhpSyuyMkoWdm8IZJIyXEWck5QIJ0hy8z6xUp+k0nTBURYNqe8fcP25Ni50DWIAY9vE198VD5ulVI7MsH57Rv+9ofnI5K/Zwndl5SNW1UBc1SicexT1qRfdXwzFvlP7GT7ou3jPzFe1Kw+Fe3v19pLNHsqtC/mKqMs9Oo193PcQ3b48qHz2bdOtNZoLezUrFVWKTSfEAGqsdCQJIwAg211mtwoZ0LocKOF3huWFDTRrDF5imtnWPvGLAnVqPHSO1WE1AwnM00hfhZKvynqpSIE9iRoCuqjdCOnFIsainjBMLwVHs4F6wuyCX3bdfB3MbONIoU8jzpoAkakuK2d01npJmRRqoXdXe9CaIhITDDfyCXq3l0sJF2LM7lylUaanV/+bGbZMj9+ugBKN4ekNO8BcKujKvS9HpyMz35ZeP85bFVpopx3PXPtbMMgPRdBVajNEBWWzTDrlKFvLxIa86F5H/est3G/zVl8JfU8DFsgH405wnULlc4Pz4pZ5oOu1GYkL+SyRI9B6iwInQChRTKt92AkEZIL9ND3MQu5DoCiicUIw+7UmAhBOJXQg8HCxal1J+cou9U00VuHudC6hSOZNtwL69b5/mb85E8m3hWY2fjutyPQSDpxbRuTCVWC2WMppHi7hHG4NqenMMboopQyBQYzupb3+VV7p+cYn1iA9BsbyBRyyknZtpV5njFv9A45BSagKb7ryP4UOqQympsSSA91qKG1NhQ1O+4aZddmrGkEAS0m+r3pilkLRUqI8aXCG86UtFLUOE2K2oR7peXMCYtKb3Ikw1QSU+ksP22kd5XpBGsryBZ2l0/tiufQEIpNKcqP3oyzOA04n4XmnZ+2cNFqdtMQul+rYJSqd6B1X6v6KFvz5QzgU8c3YpF/fdxTIl8f96n+/u+fdR3h66U+9yWeH17g4V3UB0qqeBeeNKM1uhlba2TniOD7DkYlJ0mkbjoYDBCparjSjHpqSlErzoXWhnsTQvXIFpzKo08sGbzeAasDZNpBslorWkA5UW1h1lHCIWzpNFWmHF6Yl21lVkfkziVJbrradaSVCtQhcmXJEcL2UJIdRhT3Jsex4DqlJ/q2YjmF3g0W+jeSKVk5y8L7q/PFVZhaCZbCoFlYz9TmmAmnKeRoe++cZ0Ptyj/464XkJ/7632rh04qDdc6ExSEazBAkcW0PSFtIE4RLlFJmgzbTPMobmnI0XWlINUwpauUTdXweIuvS3YzcwkoO5emD8DDn8EGtiZoKMhuPIny8rJSc2I4yWnznR/lB9fj3rgvvPjpGh5ZNynlkOErpjkpiEwvzdRSsHmUy39k5ZpSifLguqJyYMZ434aOe+fAnirWOpu1FOcR6p3mnJGcm472CKt0L1isMp6ZtbI5H0HWXMeeccesoPsTAhnqoGXih1dj43BKkjluJzUQy29rwlEJ5dMyLDcMl5sJeinTbmWv1RfAGt5KlD3ZZbBTK5DUysr08WY1fmSce5+HzoM7Tj4w5welXg+iwl0e390ZuGcuGp8THS8GaIxssm3JdQjF1njLdKmtTdsG0XBzXmZ4q89T448vzz+xg/VR5+f4+f93jG7XI76wZv4vCgeMxPhHx78c97XLfGe83i51Xv+vS3zdYvLiGwI9+1PmHftVYe+h44JAttMIZkQ96a2ISDfnepILtnXyirGa4CKlEZBedqETVRfVgtmsXrmLBqXYjS6KlTuuhsrfVzCSN6o5YiIa1zWlJKQbNN7pEI9TSAGuUPIxKWo0UVYRqhZQiDQ8q3DomqkJRttWYNIzI97b6q6/MecaIaO+kmUvflTSVRGih+wRihYYw6W7q0cl5oaXCtc18e05MvZGnjptQcuLaQvSrW1DszBy3RBZjISNXuCale6WKgCvnAlY9WugxZk9sG1iudP9AnpXJMtNc0OQs1RC/a5cHSgo7PxldptmdnKZYmKRhzdk8Pl+U8QS1Si5KqyFd4WkKGeiSEHNyPlHygq6ZnoVm4da0O1IBNIesE90snJ7Eh9rhRO/OlKPDd2s2zDWUPiinMwpE6axTKWlE1jqhW2jgiEuA+B6Mo81XFKW3yITRyI5NGrMXpBubNoQwXtFeWVNE7u7OlBK0wFb2e+iSwRpVQ1pgw0nNcXVab6hksgTXu/VQY+0yGAzBS6NLZlLoQ5Y46JhR3JDgeKKSEYIAMEmiZ2GrndSDfnxYB46xFNgVzJYDb+khl2F5C7rsKpxt5lo7p3edeRb6pSNTgi1ja+Phl5S2TrguyFJYFsM3aBt8fFpohLwGWyeXQi6VviUmzUjq1NoQjHJWfrg2XORLlYP7w3DUx1o1xudewvmagfw3A3i9X2gPtNlfCunDjRN/fx68vIGHdIHdmC6vW4T3KOGTFEpmfu/70Rqeh0/kJqHNsvYAKlPNwZ4Ybf9JQotbJc6XofVylmgYac2CQjmi+9DpDr15KdCkktMuFZyQFC3ZhUa30MxUVaQnaMraHCky2DJ+GId/7I5Lo2cPto8Kq8XnsOYwdZI45BKTjmBKJKLkdMrRhGUGy7rSXJk0hcenRLNOkOAEoYGFYfPu72lmnFTZ2koRmEUQTljdULnym7+mpNl593DGSHhtnEm4ODZ1TsUo4zoXmaB1Ksof/DDxgx8Lsyu/NhvfnsNrdPf77FSaJcwmwr/LYTKubR1ujJ2UY+SUnNEGkmbqkK+IDtBKxegyDRZOvI8laCmstY7FU9gQkEQDVg9jiycztrbyVEtYAA6jadXAb4omtqZM+9iVaPYJXCcP5U1l3RJWQ745thgjyd6oJHSXwDUkmqg8tkI2jyi6ibPZTTIBEiZCmiZad9bmWAU8sbTK5gLDfMNMoqGrVlqWaORxp02B/ZAesD48FwiZCB+fx4fchUoG6QeGVtRJ9DARkYrKiZoF1/Dk3d+77fNPldyVaZi0195GD0LM2/k0gaXQmDenWSdp2Ab2JGRNTFqx1qm9B7ZliR97SEmvaaF91tApLDRrFrqEIumWYL1mfO5Mc9zLx9wpAl4bkhNZE8lDhG7bDPMwQbkmpfopekamhqfKc00/MyLf17B9jXotvfJ1j2/EIn/fyn2fDt63+b8+7tkynzpebxz7sfPH76/z+t+ff/45vdkBluxyAaUUzCp5urX936dY92JEKSVWccTDGFg4HYO4tfZC4Ex5pG0lavptpMkejRWTNOYzJJ25WhiX7K8d6apStzvfzbu27p3t4O6Hjd5eJljX9QXb4r5muGHIlMly2wwzwjlPh1b5Q56OssH+/J2pklMa3Z/GYg084TzwP//fayh0XqL89AR89JB01e7ULSabZ6WklW+/LfjSD+aGpI3yZuM6Jm8f/PnenVQq+E0eYmuOkbj2enyP7iHupqkezkUQjI9GCrNxu9L7RikzOReSEeJWOSNECWJntvTeySiZW03Y3fGkAY7qzQZul1foY6jt42DPBvexFzLFmVaje3PzfojmvR7/Iob4m+N5q99Z9pm9+Ny11ojG74KbfQyuGGuPUtUuiaHdOadyvNZRHnzFntnnYONuLnoZpupO14nNg/1jvWC+oC3kK4IUAKeRhe73rxK6N6rKlHI0y+2g5dZwNsw3dmZZ6OxHltx752qZSZ2HojwUDdvHvtFOowvbBOtxn0NKAuoq4AFEX+vG5bnxIJDPifLonN4p8wny5GhqL+ZWYHeN67Yi2jidC9UfuNpLV6ivKj/ff6efevznHT93kReR/0hEfigi/+vdY/+2iPyfIvI3ReS/FJHPxuP/gIhcReS3xs+/f/ecvyAi/4uI/I6I/DvyC7zL/dRjR/Nbje3+719i2HyF2e1rDfkXN/dVBP/l+ldjuTji7XBushqpurkiOSHD1GFf0Jv4oQyYEJJEOcLMosZue+0+qHRdMnRFh2mHeAvDZnG8gvoUnXDx7kndMQ99mlYV6yFGVjfn4WGilGifTynS1t2WsLYeZVwf5QQvwYoYE2qeS8SpsotpOepb6OkzFoginBGmpHSH81yofQPd68ghrOXSeb4sqMPSQrd719nRXECUJOGHeqUzYSTCPcmIlDfUFGHSiOg//8K41MSyVmpNSC/88Y9n+mJ8dp5RE0QL57HwqIwGIdNogBFBybQ+DJhMaIR5Rcohu7z1hgCX2sPQu0BJ07GIIp1CSAFsOCVHrb9rCGORDOkwe46GHFfcR5TrcmjaoFOYUeh0aLurE2bcQ13BPah3T75RSqaakkiUeaI0H3rqAhr3yii4ysAHKjI8ANQ5lCL3Bqdu0ccQQGiMrA3DCogJE9GpbU1ICkmD4tiHJv9mhrOy9vA7DrzDx+CJ19pVOH1E5kZ0lrr6KMtElugmIXIHh+7M/jz3TkoD1LeQ/hDVW2e7OqlkzMMzttddSTVKed46op0mjqN0C7qjTiXKlklCDtyFdXHqs7FenLoGIL6Zx3dnyroYW+303phOznzKeB7evUlRmanV2LoMEbSEzo4l4cPTAmJfWmvuj3tccY/qX7vcfZ3j60Ty/zHwl1499leBf8zd/3Hgt4F/4+5vv+vu/8T4+St3j/97wL8C/Lnx8/qaX+u4ByE+Fd1/1c73qet86lqvgdv78/fHzIyS3wDBJT/pTVJ433hKKcckSrmTcn/BOQduGi1DvlVEuHpj9hudao+kjwk5OPGqYZLdJR0CYOcivH1IdFuOa0tbmCQGtapS2y2C3tkiewZRUVa7veb1ev1S1iRM+KXxbIZJpmI0vVm3rUt0c+6R2rGQO5zKdAhu7dHu/hn3n/uMYT/uI979edYTH7GhmbODz4Z45eInfnzteG8jcoNKjpJFmXG/Gacv1l58x6pRXlq60zWzudCHwuLalWuD1WHtTh0gtZnREjySQ5Oe6Ipe15WiZ5ZUWHoNUwqRo2dg7TcXrNfZXu+dTZzraHxavAXAOrhR213jXDSP3UTnIOihizUubQucyW8iYtUtJJHvePV79rdheBmGMVunt9u92o9dxlftNk9yzkzTdHzf+xzqKZQn893i5O7BKOImcHafZezf+f2c2zfD1z+7LPaRkZLRahS7gbOBeayYhmHLtQld5+PvqplrEy7VjyypVaFKJZ2UpmClcu3Qton1qqyL8vxkXJ6dpSY+Psdz+mWmLQvMzmILS1X86hStpGwIM5enyvtLuEt91dr0+ti/p506+Xc1knf3/x74yavH/lt332fHXwN+7WddQ0S+B7xz97/m8a39J8A/+0k0sLIAACAASURBVLXfJS8ZNfemHscC/RWCPa9r6191A49r+0v9Zgh+8P2i7+58vFRs1NiX1pke3uJWmfMp+lFFSKfMrELqmdSCKeAatUzxSLUhJH7FO/M8k9TZPK4NDD2QRilGycJ5DubHvlj25qyej49fWHg8JWgBkDYXqkEWoa8LIJxcOJc5TDxSYmv9RePKrgIY5QdjlhLMHxFaDcCxmDBhZA12QfdEd8ckJmyTEiWT2nAzNjKLd8yFzDmEynDS6GPYnX1KCSGqhpLE4scClAtHotgsN2/0KqymYdSdhKVGB/CyhoaNi1KbsTWHAfhdbaN5Y91aVDfNaT1+TAyxzpQemSQi7YxgW0WGKJrm6LLEHJpRXfBUUCms1vDaSG6hLZ7P/HRbcTWmckLKRB9MC7zgCE4evP2Op85iYQCjmplcaBiKopJwI7xPRXCRME4XAVW2VqkW2Ih4yBNYc5TEWhtNCs06rRmM8hGShsViwkbZR0lYX0ljHBSJZqEwnek0tqj/pxTsqqFTk1L42OLrGP8BfuoOLHKzptxJCSICaRi9YDFW+q1hShGsRVNTSoFf9VGbTiXKKPeBwiQJd6P23dshxpMZdE8UJha5+csaHUmRIeCFp67UHhnFU2+0nlm2SuvO1keJrFWW1bguxlMVPn50Pr6H919UfvqTK8hGzoVWYVkyT58H9TU3Y1Ln3axkEt+/KtXyJwPR1xWKQ06ZAF9f9wP9vOPvBrvmXwT+87t//6aI/A3gA/Bvufv/APx9wPfvzvn+eOxrHeIgo536vqNU/NYctWMRL+pWzo1x8+rvn65hDtu/vZSzN0ipvkCy3Z331yufPZ7xtDGXie3yjCP0vpEStBW2tNG9IArJQUSxHvIMBQ0nJ6tUize4XiotwQPR+XrtQsnOJInW2+F/ar2DCadUor2dDL0xIeAJabA1GR60IUUr3OiblvVmotB6yJc7UQ7C0L2rFqGz8txSNIjZFmygmWDttI6cZrw7nQWRE4noEEzEQhTRWKN4piXFmyH6TNLMc4sv5VyU57pxToWtNk4knrweWIeJQOtMomxp34wNsxRyDdKipb4pGznAZcmIhe7J1hRNo6NCgoGSNBgiOWfWxgCFE00daZVMYsE4lRNNwnELgucvEmyaBCF+xoptoby4KUxkJENLcPbM2RLP6YLYTKON8zq7bd5+nxYLRlUimqKqG5mQt+huuKcAEXvcgz6GtzqgE8lXJp1Yk9Fqj5JOb8GAYSwammlmwY33yCqKJ/BMzSGREP+F3G5DuApILliKjb0YLDuFURRcaH2lewjiTf02f/ZofO019IAk+N3iHg1vgz1TNFHEI1sZG8Cefe4/dTWKJLoY4HQNW0KIzGBqUKXRizI5mJbhGxzjrFtnygU1H1RJoVqnuvKhd6alMeeEzB2lDB2nhIpQ1ZDR3Jd9onXo15FFD+VVmGlPIO8az9fGx1XwFvc4VSU9OpeuKI3ff3qk5gupb19e7z5RVbjHOIBfSIXy/9UiLyL/JmGD+Z+Oh/4O8Ovu/rmI/AXgvxKRP/+nuO5fBv7y3b9vvNhX4IPz6t/3dazx+M8CNL4EZviXz4s08GVp6G//8Jlv/aZStzx22tsRC+jEgycymWePL7JxK+s0M8oQVRINgDKXMB9up0KrlQdLlJSxVoekQGw4CQvQdtQluzVmlQM4693QfCGWG8Vrp3qj5KHL7tF0E5RNOaibdVilBeciLAffvjnzvEQF9dlOFA1QDFdME9sS8g6aEpoaVG6AU+yygSskj05E7UcKvevvrHYDZwHea8er0FpQOBFBNcU9G5tL9UTaAU6ch3IGuQnGdXdSylzXhVROdNviPYoGW8SiMWxpK25plKssuhSTYKkxbUptt7Z0ANXRZNZjXEy5YX3CdQBtLcoqIgGMZldUOr0peDTZ3AccUZqJ92ICmg7xn+OcrpHtDa2vIWDWD8aFWNBRyzTE3ZKiw606pXTwyoFbtmYdKIiEuqVbbCg+vodmnX7KsHXQW1kmEXRexkI5zVHHb5swl1j0LCWSFbZWkXzj/e9za9bM2jesRw9CzC+CL6/A4MZnj0DhiPoZGvL5Bhwfxio4z5lwckrA2Ghab0z5JvFhFpIJLk4Z70dVEW9cOfPFVvmiFT5T59uThOGNDME8oq5+XRp+VR40LP6uvTHPhedhCHT9YFy3RPLOVZxUO36aKLnybnae2sT//ic/JpvAlzC/2/G6enB/VqxVX2+h/1Oza0TkXwD+aeCfGyUY3H1198/H//9PwO8C/zDwA16WdH5tPPbJw93/A3f/i+7+F+FGG/oSMCEcdMp7SeH9uJfk3M25D7Efv0kL3z/33oHluPYngNg//P5H5pID/6GTSmbSGLATinilb50uFTWn5fA4venJE18wty/TVOgpXIvcEhs9ePUCS93odKoFiDRJsD1SAs0RedVmAbKhiM5kDaeemjamMqMIJYVUa0tENynGNjjNiGJO0N1EcYHnSwiviTrFMnUDa6GL3t0RKjmHq4/VhJFRabiGpG9R4TynABCBrIkiiWttoCFSliwWqmqhfuh1ZmtO0hM2yhO1Dz/SlJCcyVlZ+kpDwhvWGq33KOv0qNGf3chkbFhZeA/AdggsDlpdiFVhxlaNXIMZIT2Rs1KyouKj0Usj+m6GabTz44lGUGifaod+Y8Ukjy7IpoBOwMI0zVQkrPakk7NGp3IRZuI+7HjKQZszQ2t8B3Fdo0i4HLUeLkxIju5XTdQtvjOz3XTdAl+wiLzbiAJbMro3kgjTkPBNPd6TOLC1MAs3CQctV3qvqISzlatFFtcTmkPETTRAbadHT4XHxpBIB6a0dqOpUgja57rjEWowzO2T70CrHwv5lBXNclCNE0IbwoDBhe1oCaC6EeXKkypJQmtGRiZ74FyibASpoGlmofLBnD9aGz+91JEtRomrdefpotiiXJ6c2ivXrXNhYX5UrDichE0ddIakVIVzVh7eBpsoqbEtQfn8YrOj1PXzjtfr3t8TCqWI/CXgXwP+GXe/3D3+XQlnXkTkzxIA6++5+98BPojIPzlYNf888F//Iq/5KTD01Xt6Adrdg6T3z38d7b9+ja8CXvfz93N+5/eutBoCRiJygJ8nzaExU+QAlybCyq747bV3MMt9NE9lZbOgH2rbAaFQbNyjkCp+iEnt7yelRN6iXr2/v96jOWazkCDGZqpn2qDCieRjwu3lr3wHxE2uLIQj0w54dsk8pM6s9WaabI51wU1poyN1n0QQAlq9C9dqwdTIyoaytMrUgdY5p4KmfoCrN7E152kRVpsOIa7eAwhsNSK6Uyq3Dsq7MSASdM4PfSUXwzdHux7A7gvMxZyPa6VKOspDbjdBrf2e1g16S7SqB73xqB2rMktizvBY0rFIZ/oRbWarTHS6bZwKPJT0Yhxee6XYjbYI4R06MTK/qXPON0ZSzpk5way3btCmtxq1c/M27RIYTk4FaIiMxaWNko04y51h9+6dm1Ii+UvANOmZVvUAa/exuH9v7jd3NLi5p+3X2K9bOgfGsp93P6ZFBMvnI+Dar79H4pv1Y7G+F/vbKbv766lqaPvfze99Ph5z+q5x0Xqi5EfePmSuIjy7syJ8fo15+f5iFAspjPKdhfJLGftWor4T5m/Bm19OTG8a54fEfApdqadn4dFjDD/7iR/8ULgy0Q/NqZ99vF6vvs7GcH98HQrlfwb8j8A/IiLfF5F/Cfh3gbfAX5WXVMl/CvibIvJbwH8B/BV330HbfxX4D4HfISL8/+YXe6cvb8br0s0O6HzJEWp/bPw+pIS5gbj7Y3v0fjxfbtnC/cKvqmw1cXosJMJUQSVj1lnsmc4ajAY1sgag1wm9ma6EdK5bGBtopOHShxFHb+F0Qw+ne1Jk7xoNSdnjd0oFpLJVo+dwqNoHfHfjTHhceimIGr2v5DTaZ8Sgg1WjkZCSg93gjSnPNCKSMg0DCk1QmqNFOE0zmFFSIpXEY0mUNPRFPDpwnYQO9kVKKT5XswA7m2Ne8FIwa2y+0lqYZPSBNaRUecgTeGK9QjOoFuyKpxo+uOoKKT6L5KDz3XcyVwdhprYAMXvOOCla6/WmKNmbMaeMqEFOdBzNOjAUYfdXTUmwYqQ0bPBGd6hlRcf3c04RGW4YPQk2ske80lOm5Xw04m3Wh5TFitA4u7Gw4hlMWuAq5qNDWMiWqB2QG9++mYJGGz3SmSW8cTVBTkbRMt5DQlsfIFXQVN1CYM9H6UUcam+xuWs6Mttd1ls1aKNYo6vREbwB1fEUtEx3D4/Xdk/9CwD2CKC6QauHH+zuv5rZ3c6GTIR4nDeAxvsNtaREVkUkQXdKmUAy0mL8t9bivTdnuW7UkS3uon7Vjc06bWQ6eAcX1m781BrZrrxvcJXMk0moYFZjLQVM+GiCvDMWPbN5Yt2M7dKwCpacXBJzSixVWbeOKsjkPG/K5f3C+4sitgXG9TUW7C+tW+PfX/eQX3RX+Ht9iIh/1W53lFTkpjYJt5uhjIl4F+Grauhm+5c7Xb9U0/+q+rxEqv2v/8t/Du0pWrzFaBWuT5XTg0D1SOVbIxdhW6PkkIdsapUA7XpfQ9t6Tzs9k9jo483Ntg/ynacO5vfUx1FiqmE+nVJiXa+QTjxoRTSUD1t3PnuTuF7CzOOgcxKGJd6j6WQlyjard053UsGTK80606CLIj0aRVpEfVEy2FBXUupsbQ4d/dLoVkhjA2pmpKIgDWk5qKasofktEs/RU3Dpd6A4RS8ASVlrZBhTMXzo+O+CU60KczGu1ZlyGfo6RMu+CKCc8wrA1gfFdCxOop0smSudbHCe5vjsOaSNF5+QbiMD2+hpejHWzAyGXMPuICWSmEaEvVls7AlBkh400DT8XVvdx1dwwAOgvMl4bKPJrbZ+jA1jj5oTSaORqO2L4Rgn2xrdvDDWeOxgwnRtJJsCcHdnEWPqkSXsEfGk0UxW3Ua5L8U9cmcyqEloJEpfKTlD7bS9ycqiXGVmSMnoaDT0bjBKm7tUSXDk7chwVZUsmT7M36ccxvBHXT0Js4amzq7kaGZMJY9sVKKcKAISEhExb+PmJGeYeUfD1RHISdCf57by3XN0dOsK3ynG8xUeuoJsPHz3TGJs+HWQNnLQMn2Cpx/B5XllwXk7Jdqp8bQoTTf++ucz/90f/vSTdOH743Xl4fV6NQLPn7vcfyM6Xr/q2KPrF5H5K7Di9Y18na7fbyBfAjo+cb0brWnmD/6kk5Mf4l0A58fMeg2Nlf3669JwLhHdT7cUd08n91Tz/gvdywVdCSf5fltADpxhPHdfiDV1kMrDNMfvxwCNvjPFpHl+qsEjVj26JJ0F6wVV5aMGmJeNYf3mRwmjiTNZcIEvDRYffPopuPL7ZzVveJ/Q1EkZrM0v7r9qlK3ykJSttdJbun2e4cOZUiLlznyKzMVKnDPNOZqUVliq0/z23L08BgQdUJVzMt7OhQlDqWw+sflEKeUoS+ylsU2cB0+knHluG5s42xoibNlugLLK/GL8vNb27z2UJVU19Nb1xvu2UWNPKfEw3abf3lex91Pcj8vut47S+03lJk1wK9Nos6PxDm5lwaPDNAuLx/+7TUC74VNjg7jXh9+sj03gZpotImiDNQVuM3dCi0cJB5vxee7fw50H+A3zkmCe7D0i99H6DoQf4+puHk8emkx7V3bOOZy3JDH5HUC7Z7cSfQOr37q3RYQHDyxhn4v7c1prLD2sEj88Gxer/MiUqxWukli0cG3O1pRlc55deDL4eN242sZlzTxvjUrBZ+epdD7vhY/Z2OzM7354flky/MRxv+68Pm+/d1/3+EYt8gdAOj7kbnT7KR35AFa+ghd/95zXC/kO0O7gRohP3T13X/xt4/d/78c0QqkPQHR05GUPtUCp0YGXEklPAZL15SaVmztGPzjPAGkitEgsGkj6VoNFI1HeuZoNqWyh0sAdyUMDxySMxktm0qhd//p3M29OnfMU3ZbNOr1XpvIwPo9QvOEtjBUiRe/YFlo6u+PQfl8tGRnQFou/WkjD1t4Qd0wKWxpgFk4rt4xDJCIlVcX6rs4XvORmwrJ1zBUb0V1txrJWTFP4lSZBpFO3zpYsBKvG3O9m9F5p2XlMBVNhSo2tJkw2XANQnDDmY9GCZoM9gobB9AC7ZQf20nA3yoJIOGwF/dDH53Zkb2bqLcDGwRDpu2RCHxt4G5K46vQR2YuF3s0eOdcuR4ls54YD2GBXdEJ3KI2IuLphRIeuWRhmm8G6NXoflNgci5mnCHpC3lrIrdL2yLokSnu5wey9GDtvv7vRTJANkOhnCCP1jlr4I6ytI3kwi1J4DrdBThDXAG/9Fmxljd7c6dRJJNJonNr7DYJ0AXvAGhlH3Pe5FDCntjZUQY1mQ+E1D8yLSu8e5uIUrAaFddfCaS2AXlpnTgSgK0EBrt1YBS6psGh0z16p1Ox83Cof+8Z7g0sTrovyoRkfRXmqjSuOnWAl8aGFw5tpYkkrP/6wvVh3Prlg7+Vlf6nPNQbDL1SX/8Ys8j8ryn6tYfM6uv+qa93rbLz+28/7rar8b3/rA5OWL+EDB/jZhet225RKKbQkVB1iSpICaB2Ri4gMz9F+OO/M8/yqtfvmxAMgqrwrpxec4m3bDhDzd3/Y+IMfP7Ct4Vi/9uFRaUCLDsiWQIpxbi+1bZrfwK7UjKveIqv9vKcqqNfjPRZRdG1s1lEy0/p8dLOqKpb1iHTvy1/uCR9ROezR7ozqxOad1dpxjR0Q7q/dpCTKW1tIVlE3peTzbUFB6Dki9v1aL+h5o9nm3ng9E4yJkwwAeoB8ohYevHfjoimhQMgtGr7vZo0ShON1qJfenbd/BqFQXWmDXnt//V0X6Pi8fuso3j/PYg3LeizQB/A7OloLemRR9xGyu1PTdJNZuHuN+/NUnVKUqtH0tn++PeO7j5TvgdjeblH6/vv+dZ6fGsoKLTLY/f0++gCDs9Kb0uqNPrlvjO5BAOiNUO10oL3UoNoX9IodjlnP2oOCPEDXHSeo1yXG4pTZGN3JTTDJbNX5CZ1nVT43ZamZywIf0sYHd764Zuq1BkbRQp7CSzhqPSaoxXjqLwHX12vH/Xu+//2nPb4RUsN7ffzeGer+b/cT5auOw9z7DsB9XcpxDz784cbiwd/VSAmO19vPXa8nclZ6oKnRig6kk1KXjZQy7g00bPO2tiAoc/Ijbb/foOakyGpMWmi10SWsAr07WQ1RZ9ag9NXeI5oT5bmuoXY5K7KFXIgA19qZc8GnTvdCrxtTjrLA2i/knMn7wiaZZejAZ01c+obIme4rpBTKlT02haxO3TrTVHhbnItnZoJNo4MGmjxoZuhET+DNyTlRrKO50OzCWqPMkUTptGhsMsHVKZJordIV5sEwEQ1zZrOVLEo5z/RBb8s5osBLhTdFmPKZj71zkmeempBywi0x46zudIetd1QU7SAyjLAJpknRYOU1hEzU6rfBqAl9+UY4gEXJQXNmMmerkdGU08x63ZCUUDOstqjHO6hogKquQbdzKJONRYvobPXIcDQFR764ssjOMonxElTDyHC2NqJ0D8XHsxaSh/dAZAc6eiNgk4z0TpoSudb4jCZQF1QKvdfQ7nEHuROuc6OpkM0p3RFJ1ARF94U39Hy6RDdzlyhXTSqDV3+jLae94QlwM4rMdJyS/OD1Zw0BuZQSfTFSEpLqobsjmmmjL2OjRYm0dlQzuj+3MXyNnZSFVErgrO70zXFNZFG6ONclymjnab51nIugLiy1MpnSOuFu5oaY8t4rbg4Whty5V9ocbmdSjH4tfEucPoN740dPUUr1TzQzHRuqGzIwBP+EefcvArrG2vcNOHZAZOetH4/fsWLuj9fnyUDovwS0vjoHeLEJvObdvz6qQ31+wr0jGiYSZRIm02EIASeV0FDRYHEkBPUYqBPKyYQk4OH6gIxoTElMTTklY8oBGoqE+9K332W+/SDI7LhXXGMA22rUFhH8tYW7T7WOUrmsYCloj7ULU4HmwUKgG1s3tpZYWzAsZs2IVmYK7oPNIiEY1g1ajlLHh62GLokNsSq5UzgUgvLpRlZCdWXnP1tmLomSYhCnMbG3ZrQaZZyitygTDOOmzGkCro6nRgPa1qi1AYZLlM0ecsEt8aiZ2RKzVC4tbPLQaG8TERYJX93VDEsh7rW5BoBICFO11kgl4aIB+tYZER9AaqJ3Zx06L5KFy1bxFBLBXRRTpRHeo+aZJE7ydCgqVuskiQg8z0PYDgn6d+tUM9r47B7k8yN67t2jnDce795o1tmss6aMSiyOMc4gFIyjzVlFyOooHcmJSYRZJUS4xmKYk+DWSMMcZKcxmkrIRVsnERRaSBQLRljtG7MIOlhPRYK1lBXEM006CsylkIeOUiOA5EkStXaQKTK04mgWmtVoKuyxYZVi5NyZk3Au0QG9WZiAz1NBsjInYc4lwOjmmDVEQlTCmrNuHW8CKZy7qo4grsdmG9luyHnISdiaQRdqJijBpYQblgRDqJNopeFjY7o8wdPmrEvljz58tUnIgbWNHhXDg/l0h2H8aY5vxCIPX52yvC7V/LznvK6DHfX7OyT7/qb+zBtr8Nt/NBadnnG7cZPdI2181o5n5WyByt+/t4XOljiA0/uMZKWHKbWlI+2tCs2Ntw/O49mYpAzp4TT444Logogw/z/cvU2sbdty3/WrGmPMudY+98U2UkAoIGRQhBQ6aUT0aRHoIDootJHokA49EB3aSIgWIBEJ0SNKM40QGgjJ4kMksUjsmGBiYhvbPPvZz36+956915pjVBWNGnOuuffZ5753XyKkmyktnX3W5/wYs0aNqv+HOqs6lxJUnMuy8YXl4LmUB1b/sRxPdExtwRKNZ8/juE20ydty1bGEn/j+obBNfe+9DLJj7PeSwVl07Xy+zxN1KWkw3f3R6DuLk+1/QxKHdqp84tsbV7nyMqBUJ+hoGZ+URM4N173huU8e7+3XtqVxyf4dz1MG4aybsh9nliYKxEOgTlVZJBLUqnpALEUHF63H+d0nu8XlaBJGpMgX0tHyWt1UdGB+Q2XCMedxns/1/vmbP3D9u07RXlap5OTfPJunL9aP42mSiKAq+uoaXBel6adSufu4UA/WSbxzTxMVVUemr3BbHKK+On/AQSTLzDtYxanRWVxygpg9ucP96s31qrXSFiHYWGVwLc7oQb8bYTLHJrg/7u0v1sJF4akGXyzCQqe2h7jZXsI6B+ctHlLiqzjXCpdrgaq8+KAsjSh5Ln40AkbBpPHbP6y43D8fU07x4Xxsb/Vsvs32nQnyezZ/ZrFCshjfZttnHOnOjjtvRfQo/+wY4X07M1zfy/73fQFwvfG//cpvpY9rS/aghrKsGRCkCtpneUdTjKq7MSJheUUG7pZMUFIGWDBaAQlPA4kFbNZ5VxQvwh/8yPj6Vvm5y51KOhG5w9KUUHlkXASVSm0XrigDm5meo7EgLmwuaZQsiROPURgxktEYgpgjkxZeEWpNQ+ksCwjLZJze3NB5U5eaN3If6SV7CeWjGzYim3Ca7MN1qRBGiPOMcCf5AVu/UWqSdDT2Bi0HFnufSB1lG6DuoLBeBE/LjsxCvdC33M8tjDvKuI887t4pRbjdbqgv2WSeN5NHwjFtpGiaS0VKEAFEsoJlNbRecNmdtARTS7OICJpmQz4iSxf76qbKwxjEzCmR5KQ6B1qdMtWVDGrrJMwEleKVNum6yWYtVF2ylGhOnQ1DJaWBVZWLJAO0TFPUIkot6RMr2Q1nzHGjJcd/1ZIlIlNMpj9Z2aGZCsUOdnXyCRqmkexdfDaeFXe4NIW6Ip4wZxRaUcac0PAgzBMfj7LWSUirs0+FoVFoSzKDq4CMjk1Cl6gyzDAVhsBuIk40huf4QAUuSi/Gi6W2Ukw1x9oyM3fJRzehlQviQiVXUD0UGcJdZzlyg+BO35Sbp8bUCHi+dW59Y+tK985z5MpzLfCy3eks/Oj2x6i/H3bf4t/fJhvfptl63r4zQf7s+HTO/N4jBpxPzquAv9f241EbPLut7IF/z5z37dzhPv+2uPKbv1coMXDbaNUo7rgPLiI8SeXiC3TDx51FE/VSCa41qc+7WNJTWxndcBHcUnRMNbLrH4YUTxZrF56H8fXtztf3Dzx9b6FqasYsNbhqoY5B2BWRws2M7e75W80p0YkRLAxaRH5vhbVWlg1QUIJrayxkQ61ax+RON2cEjAhubrtUOC+WS2gzQ1owaPSp2i+aiBC1oK0LZiCkUuJ2H9gIniOJKosUfKfDS2VEo5XK4I7WhSjbQ6SuCc+eDd9SA99e5qoHrq2mFSJbNmljICjh4E3SxWiSjBZViHt6yM4MUiNYy8a6GmWibtaJi0cG3QTzMsdOR8uFKgt4okEaI6crS7PuLYRAadoompMkMlcqEukYpjnCXZI/oZaEqZ0gtBOX3PNaHbaDpwBQJ9lKR6JlLAaOUTX3dVjCTycpHTHHo9NsoBgWg6gdqmIlSz8+AiENsFWyrKNRqGtNHXhxYNAoVJWZrAjLotQKmzuXOdZKKbhlZtxKpahzvTRaFXp0npbJjvVUL1VzFLgsCzYewa6WBUInadBTQbP3nLB8IFJwUbo3mONGw7m0yrU1aq3cLI4m/aUK1MKIhhbnZi/0LbhvTt9STiFEuEuCFlAlpBHRWSVYqmDSUtde09T+61thWxv3ULoaoo3f/ri9WrW83V4h/fwRn87SK3vC+k1l5E9j53dw+6ZZ7e0k8DnkzNv3vf2Oc4P1bZf+vEUEv/dDp5brzJ848NGdOzJjw/V6hWlkvJaKi4E515qY7dvt9uq49iXauUSxPxdWCW189Xynbw5xpbbgecCLCdEKSKe1B/7Yp1BYeIWq3CdJp4WgPWvkd0mlPchl87IsLDHoXii6sl54RfXfER+5rNej7LAbi59lCqLqlH99HNO+b19EfVDWozIkMezDbtTGgUKy8RCkaijNss8AcLlcza0NDAAAIABJREFU6L3Tq/C1bYxtZWzrw+Qc4MSR2NEZe4Z9aPu7JxRWVz5ujyXyXuL4ZAzGgpbO1/1+4jokUqgEPK2WQXdevzFLKl+Qx9wduudE6JLNay8CLQXYdF6LyhSTm9DAdCHzV2W+bdtS5nnWlKsn5+Eo3TDmadiRMg98f0SkrpALzVNzZpvw373xuss3SDdkGyzxQO/sCKr93tldoo7XhDSOX4VlLUepaxzNbDlQQFqCtuS5XJbl4Afskg8ePd+jKfu8Tr3/MUYadbzcEYsJaR6oLK8kLYJBqZMMNdINLCGbsN0a261hI813EtHzGPfblrLEZxz+WdLBRvJVvAhfvTzDacz8xh+/75fwTdvbOPaPbblmb5zuDdUDxngS6jkLj+2fgU8hlK8w76cM/1yaeTWj8mmm/3ZJ9Uv/11fgG/hGLYEhiAfhjuCoC/cp/FQ1G1EV4Umv3HwkXrqm+uDNOnXeeMKCxCTgDIcRaAmebzskLWuyo3+NHTrZwscOsiQm/m6Dm6RBxUDYPABNXXQtqEBTpe0ZH4VBGh0zZQkonmJYY7BI6plUndDFSSZRgap5ZB7p2PNgLmYWbcNBFRvpAGQxlSCLHee9TAz1mGUDPBheuI0bsWfEVKpULrUgbimJ0MFl44sKxSpaO08rEAXVSsMpZUogqyCWq4Wq9ajTL1L4sKavbYjSJrIEgFrZLPXq2/LgU1wKVG3TTzTF4ZZLy6xYBLEUr3YP7rM5h8LNnJhN9yJQJVJYToRaEtq3Nzd1sneBZHaSNN7G7H1IpRahFqGlag1NhcuSgEudCBjGSBaqpEOZYVi3dAkrS9osUo6GK37H/M7aBO8gUy/GlGMVp5KMWC15Y9w9JTOKplCZW5bn0MLo6We7M1eXZWFR4+kyckV7gz5GDiZ79G9yIlLog1VT7C7v0WThUpQ6Bd3G2LjUwrVVIFcGw1Ni2mJP2pRVKkOyb3Bpl5S68ECLsayCteQJENmA7pZqp9tw7trxKYNgszRqZoQpMT2dVVNE7taTg7GNzu/88Jtr8a8AI1OmA3+UqfeHiLxbRv7c9p0I8p/L2s8B/b0M++1njybrCYZ5Dujn7/kEsfPOigAyIP3vv/rl8dmDFakP/PuOuz77nWLOs/WkVM/n9swpIo7G686OzYYSiA6upRE9dccRZ12Tgv/FojxVWPV+NGLDFTc5mK77RNjvFfNx3Kx7Y090oMUIW7l5MLbG/UW52c50TXPlVWuKsYVw0UoR5bk98M9vV0NHpt6VHpLOSptjA2J78B5KdJbZ0DNNd6NzY7Pj3Kc6oZVEUTx35+7K5RQMz/T4IYVtZp1nx64xxnH+z9nnbQT3+/143/7ajkkfXfC4o8UOA/d9LADHdRYRXgZ4e/z/sHgs8lCbnNf7esLiQwrbFQvK9CvdXysBL5orsQVFdLzKEPeV352k/++rlbbkd7TWsjEdkW5OCNVei4kVh8ajYb5n/Dt+PeKBjd+PfV857Cu1iDjGFNKP5nBEgHQ87kRZ+JPfu/An/4nrcT7O2y2Ml2kEf17RAthQbh48d8OtIiSnJEmI4xgz+z15sHXnPpWlcSfvw1sYo5yQdfpoxu/aOSLTxm/CpVcU7Y8EZV8l9t5frWrCB1/7E1+Ok67/j9k+l8H/NLX570SQPx/gq4M9Zd5nz9bzdkbf7PU+4f0TFfFowr4t+RwTwRt4JsDH3rmNzKh6jxQsQ6itTShbR3YJ2zkRUPTIcoumKcF1WekiaIVVlToMvKegUs2AvcgCaqytQKkUXfmnvrdw0cqQzs/+bOF5OMuEvLVS8DGQUlMy1SNrijowd5ZSaVpwTXNmZS7B60aEsSwvPC3GbXSuywfCEx3yPPU6BIfp51lu01S6O620rJH24DYc8ZXClS+u8LO+cV2My5OgbWTDN8DMCVkYXnJiGgCKa8W1ZtNvZwJboNpSsE00G9QRbDZXQR5QDPHOheB7LXV2wgJEkTCsVKwP1pLBu4vy1dfOfQRRKpCZ2t0Ss53iaukOZANiNtAWTZbqMqWdi1QknOfbnSGO+ILZyFVUBF6MpcKIjXtP6laJyn0k/l+90jSRLqUUfORYH1P7RUpQOogZlBQBM3eGGUFmwwIwOna/ccFotvFEGlbEMPqWY3GMgWihSDaNQ5JRbQomWRKiVEYMNi9sPcltSMHHHbOR4m0WdHNukvyDGMkaFldiagftXqrmQniCiB3h+3/4wks3QoKy34NlrmoizXFqE3zcUv46YhrtTGhrZCP0Isa6lCNrB7IHJLnq8mmrOZ2WceusJZODtdTMklvNQD4VQdc195MugCMxGbmRk2uUdsSlUgptbajkcdkyM2+t/OBW4J3EEx7VgXPfb5+0z8z892LiT7J9J4L83mw4Zst3Au179fVdU3t/HV6fzP09b7Xo94nhvdXArmj5ev8u/P73X5BRCUB0wcaWON+olJp2ZapJgtk80ootHEkBeHD4+nZnHU7zyujZuozSKJ4qeHt92aMTjNQpKXC7d754gpcefP9HNy5tSSy0OCMGFgUJZ3giStJow6CkFnpXoUeSmKpURBKDXJfKRy9YbSmT4LMWGrAgsx+gbNHBB6sXPsjChSvyIshWWWZ2StswfeHFnW258HVoNjClUjCersL1Aqa5DJeiiC3YfUogdGP0QDybed2ceBmsUbkN8NsGFmybMUbw1d3YKMQUyDKzaaKdImBRlKqFgfNixvMYtJrkMg3FR8ci7efw4B4do+KWDUWvmg3nMTLQSOVmhkrhvnUsoC4XQgZ1V3b0oBTFonDvQZkrICMNuqe9B14EG4MWkqsEFaoWltqSqjfH+tI62GRsStCWmkqjmiWhUiu1Ne6tphewTOPsSMKQz7JhpHwi3h73WK06x4Eeyp1YpazXRBIdMtlCuKMi3KYCpc7zXEaea5GCeB4/w7JhG9AtM967N/7o655KqB5IGM1TykNbIL6x4FyXKx6DheBalCbBUy1cVBBxYjKQXQsm2SdSH7BtOZ7FUgrCsqRUNdVSZTjWEl6ctXuhufNUO+EbRXvaDmphK0634HpJqK+kpQQNZRXBrTPEWEhhPOqCivPrP7rB7Im8BXXsCMBzQno0Wt9s78WkH7d9N4I8ny5b3pZh3oo67dt70gVvVwZvP/e2wbZvb2v1+2ay8T/94h9RSrA2qLOEUhsE29GMPDciD4PrE8271kqvwle+pfaGPMSsdjr/28/IptwcOpmJ1ynrerMsFZzLBJfaDpzxmQ5/wBKLPEohJ2z5vu/btqVY2GwMigjdF/pYeOkVq54m4fWOXR1asHGjVA4tmIgUdPsQD9p+RHAfymYl8dTFAaPULR8xuLdO1McSWGthWza+siTx6JJWiKVArcKKUsZDxEtEchl/GitjDMQSH34t7RUd/1x2WpaFGg0tA9Ge/q2RnzlKCNwPgbj9N/McJpehT8mDEY+x1U9CYufy3v77e9lm6KfCegC30bDyel/38Xn0Ek73yttxvT+2KPjSWeJxD53fu/+u6KA5PM3sdS957ft/1co6+wSDoOv7gajWSolcbV3rwqU0lkX5mcsCK6xrodQ05XZLzsEWNVE5rdEw1qmGut8be1P2bHy/uVHW5ZVo2rmUuk/+y7LQNudiDz+GXG03XJZ0OIvG6I9G83HPnLgSN3/g9veHu3Oj8YdfP7/SzD+f1/25t2Xjtxygn6bpCt+RIH+GLkY8YJH7TLef8PcG8dvt1ez4pqnxntjZu9n8ftPMzxWH3/phyupiwdYTjpai5tMMQ7N+XFqlLg1wVvzV9xedNc1IOv1SdyPjLTMSmJo4gZMTxt2cbVg6KUmdjD5n88TU+1yKu8Pdpkl0AdmMe6RMr4fR1gbutFoZFiC78cXUPSFYp0VdjWwKlepIbDw1odbEOrdWWUVxS/apSssVlQhG/jsmi/AY7GQZxgjYBI0KJKu1slBqKlduZKbf090UQ1ikZYNPHFWZ6IyBNsGiYvcUyLptA3xqr+PYfUsc+mU5xs4QQTUljKtqLs0VwjqiD4EtYqWET25jsoA9CupCH4KWdAdrWvHhuKXFn/cNiQe5pVZNHq8I19rYIollKfteAOe6wCrCooGYZ2M0QLUgJcXcYGLbJc2yB8HastZuBNWSpVxKNtuJQMUJSeMOCUUnCGmHch5jEqFVnYxX407WyIso5umGJjI9Dqrgy0TJOAcHpUiW+HbBO/E4mMQv253RX9DhPG+WpakQhAINZJ6jMKN7oCaM2bzXAnh6HsgANUkGtTk+7FBy7ZHll94NrSkv3d2AFHQbY6CRwAR6ZuWi6TQlkQ3yPtnNQcU1z90249JalOW6TPSW4ZalqbAUqfv9r8ZBEjxvn+vz7bFlL8/9w27fiSC/b+81V39cU/Yt2uZzDdr3Zs73fv9tX2D/++P6PX7w+/3UbGmvsrNSCmVpB6MPXmOczyWiiCCKsElALbl8l8c+lla5T+KK6cNNaM9oliW9XO/3+5HZeFXC76iMV/t1OBxt41hx7MeW9djBxQceykeVV5mSmdFrygKcBcdsKVzksVI5Z6YRkTV9247PDHlcq2exrJ1H0EP56r7x0Tvj5Z7eskwZZuEBm/NtkooE7IWCsdK5+531okBBNbPBHeq3LMurrFVEkJ5NzVrrAVncM/4zu7K74rqyWWGLRJsArKFYOTFq9SG0dT4XO1MXHgJle0ZYYjaYZ/Mua86DYLCuiSDRYgQb1Xdj8QfL9SxB3BWWSPanxz1XYSfW8ZM2pD2YvyLZB7DyOC/FHg1IVUVtocRD+viAJcbOC3jsw77K2TPmEnl8e6Z8BgKM/uBK2BCYENPzPXucv/1e7cZK6uLvq+Nzs/x8n+6N4LccGIBNHC8XYguEhuiWq43Jvt4f5yxfROCWQIf9/EpLGfENR4dTuuFV+X9+NBj+aSD/pri0P/decvm5939u+04FeQv/BAL5Xhnm7Ne6Q92OwR2PZe/5869O4Mw+zp6wO6TpFRrn1BtYty/5hb/7Q0YY2gKiY+ronO1VFe+DtghJ0JQJ3RKqCMzBE1NBUB1KL1xDk0hiTF9PaBEskQJQbR4xKC9j4+6D28bEyTd6gefQZD3W62Ea3muwqHKtC3UXQ7JHhh01HYb6EEC5yuCL4lzaXL6KYKrgKVNM73Tb2MIoWxqNt1qQUjGgmPMFhQKs2lApB069kcfdtFCo3JAJd0uhlUspXL/3s3mDD+e+TUvELRU00YaVdHXqpdH1wpeb8r1IvZJRjFKgsEEXZGQmaCOI4Wwzq/Uik+jClIBO+VwpDTRLB24FwXl5+Zj7BwftvZcMulULW9z5GM4YHVkKEKjK4d3qpAxwK42wQFHupWffJAbIoLUVYWVQuFN4doPoOJrN3QLBhBvujNcyNdUtJaEpgmqllIanLE+SqUqh9y0lrdVTWI2Hg5KagJREH7VsVFofhOSEb975sDSalqzXz1VU8yyLdBuEGMtaqE24ap2BLvshucrbS35pKtOKoGQWfts26IF6n1DUlKM2cgLtVfBauZfKMvX9IwK0TvloYRsphpfsYSd4JHIiKf3cwwkp3O8bFLiuxlqUpsnQvW13lrZPIoKjaAw6NRMxh/A0v6kOt48g3WiXks17L/zmj57nCvKdpus5nsxYZOHv6m+dt3+kZCgR+a9F5Aci8ndPz/3HIvI7ktZ/f1tE/vXTa/+hiPyaiPyqiPyrp+f//Hzu10TkP/jJd/GdfYqHNMH5ZOzBey+9nMs5r5oac0CcMfdwqkPOC/wKEz91pg+s/qkjDlB88Cu//hFksHgQU3lvd7V3n8rY22C95PLvo9u0/QNtLan2YSm0FBAHwgJqWU4NxMJmjtWYhJpgBLPpqyw1ZQqWonzwQh3Bvadkqsagh7NqzeAOGTgiWKaAminQjY8vd4pm48ydpLlbsnIjYEw6+rqkGmNrK+4Lo3TMBjbAthutZOC+V2AUrt0ZNG4W3CyXtTGc3gdhaR5t4RRvOME2kuXbI7CiiKQiYrBNpUhn8RVEURN6N56elC8XZ4tcfr/ESIvAtbIVuI+OikBUKiR/wUpS27fE5Jt13JQbPV2xCsTkB5SW+upusC5XJJziyWA1Bw/hYopqYdt61uOVZLValgzEC2VOKqhwpfB0uZ6yUsM98dllYkKapvVdt5Fja2rAhyp+6r/s4/w8dkEQUYJcrfWp7+9heBh9jNTSh8OWz2WX9508CEtsuhaj64ZNZm/TAlsKksXIBn8EeJIHCEBx2jZoUSaHJGUIalNMsqR22wbewGoQFW5jGpEXoTVlaRdGpBpkd6MHPG8dXQtD7EgaGgoh9G2w9cE9Estvw1E3IPGeroMxjBqFpQwsthTcMyO8oAoWeZ2eavoNlJraUFRPuRJxhsHLAC0NdUcleRc/3ODlTQb+Kua8gXMflQDhkyT07HPxtqz8TdtPksn/N8Cff+f5/ywi/ux8/LV5AH8G+AvAvzQ/81+ISJHkUf/nwL8G/Bng357v/am2I0i/s2R5+/xP2o3+3GfOF+V8Ed7+1qYwfOUPfpRZpcbrBsqOjxbWwwmpxMZ1MmK3bQOS7Xn36ShUHszS16y/zkLWPVsI0u/pfDR/Z3OjhlHFjwnv0uB76nisr75vnwDXiYIppRDbYJXCdRVWF+6clsiADj90zY969szKIxJb77bwcXM6WSJZtFAtA8tXage2HDIb35fA+7L6Wtrx3X1ipcckwYgk2mTHboskPf+MpHJTwiu3GMdxiaRWDYAvmaXeR2fpCTvdy1fLkhnxuq5EVT5Illyex3aYqJzLML33KRSX59JIBqtpMjxLzbLH23Mm+tDIPybwGeDPrNT9Wrl7EpBmKSQijmb8/vlzuWK/HufsdSdYlVJYpdAiNeYvpR3fey7B5Aez1ryPgYh0y9pF2HZOQpcsxbHUoxxzHsfbrrg5Vz77Me5ln9baIX2wM05rzR6H1eAWG3c6wZbn9CSwt48/kYfh/f7auVF6lDxLQWUlPMenlmTS7pyWHo/xdTaLr81pLTWNzudov54N46nBvcNLd37zR58yXD/Jyt/EmHMcei/zf+87vmn7sUE+In4B+MMf9765/RvAX46Ie0T8Omna/S/Px69FxD+IiA34y/O932JHH0Fmb9ocuNI3x7tn22/FzD45tnPpZx8Ab2BLn6uJfTIBuBLR+V9+6ffmQAKkoDjmgejMCiR1W7L50/hju+MC17pgOoipEVJJvH1TodV0cRoEbttsNEJBDllVL5Kfm5rbNo28B0GrCYl0JaGOdWUjm4KZHaTefWaZxtJSe2aJhZCK2ICS5aalNiSClz6mxG1qoUgVtiLozKb6ZmwjYY8JgXU2kmpetPLFdDIYYxAO3TcsIvkGJtzIFQe10KRR74GPfjTzgscESETaE2qhl4JrwkX1tuu+JARVxfnehyuKJ5RPoC6FXpzF58Q3CmtbKALbuBORXrMiMmv1MlcXswmq2dycWLw5NjJQX9vlUBiFSXIyo6iDaPIWZvkwJkzSZyDMcav0gFJTq6XoVDndjDKDvUcnfLAoVJJh3QhU7Mj+F5RVA3GHMZAxnY+mobWRekS7TrtqehYUBXU7ynnDHS3Z8naD0T3N5eVBAMwD5VjFijux9xtEkenBel59Ljq/NxKRY9YRCSSyXxQiyeqtOwO5Ir0DD9ervX5uxAFJ3jmiEnmzCwoSDM3ypZlht43LZUVrUGWZoIe9NNBpNQl5fwJjTBIgkhPqcM2SmZYEPMiUSb6stFK5u/I7X3/1brzZQRt5/8178xzD3qnVv2Xl/6TbP0xN/i+KyC/Ncs7Pzef+FPBbp/f89nzuc8+/u4nIvysif0tE/tb+3Bk9s2cJn9vO5Zr3JoHPbRFxyCe8kkyYNfkd5fO2AXL+/y/9+o1rRHbTJaAksakBweBaYmqRCK0FzsJAiCpcSUZm6c5SU5zLI5E6paU7faemzrg7G86CUWuh1nJqnBpB5b51WpZWQRyXBWmVl+1OHRtDUlu7mmV5pxurarIdR2LObbtzqVe8O12TRNQZLGsqUsqUQl6LUiKDealBbcF1XVKTWy/ggkwyim8bbdaMP6wriyp9ZB2+UrhpkmUMIUbwYj2lefebXbPmayNSCrcEH1QwGzQzFiugjdYsy0DjhonQdKH3O6VInlsejc+lTFGwaNxu29T5V6y0bMZJCpt1z2wvJFVH9zpyqysu7TH2gjShNtjuI5feHrTW0mS6K5er0kolzDOQambq97A51gzRnpO3dKp0iq6oGEQgDOoiLLWlccq+8ispyWDEoYmzpVPkI1BG8ERi10MCKWlyMUQTFTYnpCpKTO9fZtO4aWEp8OHS8Jh8j5kgFdEM0pF4/Vqy1LFn2WNkmUksHyUi0VSmvIxOkZI6SGRf6NCEMWO4cS0toZ6sKVcQO7Iu5RIWebBvVUFIEUAitfOXKVA3xBArrLXxQTsvTNlpKsNkQjPzPJUblA9TjkFHNlZVKeps3WiejmSrN55Kgh3Ugz/8+sa9P0pne+J5llMJmR6+zqv3nWPSvh3SKt8iwOfnfrrtvwT+BeDPAt8H/tOf8nve3SLiv4qIPxcRf+6919/rkH/Dd302m39bovmmDvd5mXQu13yyH7ryG3+wZXmCVOVbC6g/MNr7Evu8DzulfrOBLJX7/f5KDAxe67Lv+GBVxQb0LQfeuq7H+w9Bp9kT2MsB1/b4bHg+RmQT6aXbUdNdS4pJbf3l1fuLLnCy6tvLRPvEu1alaYBtNHEiRpqHKCmydVkOC76IOLLdtwiGPQDvy/KIdG16sX6gH3IpXvgYEPXBH9gRHvvf+znez8Nh43duvLfCqhtSlC/p02Slg21TUveBfVbPlcNDuGo7yjiP/Xpch7MAWg/P4GuP9xzlBEsOwbo9kpoYxpBKp7D1Lx8rWlN2OPzbsXjzZIIuWh5ZtpxLLv0VX2M/H80G3h5lDdWsb6u/xnTv79/H26uVrT3O63ms7p+9Pi1oSR2m8z21nx8TjnLIuZxVHe42jpXr2Tx9s0GocOuPYwpX3Ccsdb9usiBSMYObvRAtJ8EYwj0e6DF3B12Y7Wv6XVnXRpdC6zOhspGIqnm/vLy8HNf9owm//TJne14H5rfX/Lz9JK99m1IN/JRBPiJ+LyIsUpT5L5HlGIDfAf7Z01v/mfnc557/yX/zxxzXPgO+1YOf+/v5+v3M2s91/nND9fzZ83fsTZC3XW4N53/4xR+yVjvKDWZBmQSSTQ0lm7prLPsYmLXcLH2MCZOsomwCXRM9M8bGvkTtkU2wUYRB1od7Tzy8SCUs6AGtptiY6AIulEmVr60gVjAKN+ssUYkaiRWOQoRl8xid9diAYeklS1Ahm7Il69itXikj8DDuAa0U6lJYF47y06JCj2C7banZ7sl8HEBIapRraXzQctSh15qa9hXhMpm3iwpx73RTes3vlF1US4VbpAXfPYwXM7Qs4AaqiGaQ75FIj26pqxJzFYKmnIJEZvZfqE7M8vSJzZQ2VwERhMuU4nVMOsKgeJahvA8Wnb2OmakNCfTSMIxxCvIpvVYoOuvxTSmuFF9opdJiOiXFckyOixYUYXg6bi0urJJjem0LO3O5ERBGeAavVUrKb7Sa0gM7eCHSNm+ROq0roQDuGVCXWqYs8pQICGXrI83My64XL0RxKLk6Oe4RzTJiZvOGnMTibpHj6lXJB5AQSlsYHqm+GbuWTHoQeJBWiZ5nEASf9/KYmva7mfp+L7/cOn1koeTpeslViio/c3FeeqpHRlWEwYsL95tzLSUnU+ksNUuTKsFlWV/1QC56yd+qhZsF//ePxsHWfy9evYpd54RTPn3P/vy3ESbbt58qyIvIP336778J7Mibvwr8BRFZReTngT8N/A3gbwJ/WkR+XkQWsjn7V3+a3z5v5wD8udr53N/PzoLn4P629PL2fft3vy3XvN4n49d/ENw6XKRQLWnkZWYe9dSA29zY4qEv7e4sYtSZZZ0zx/23SkmVwH17i03eM/f935sPlh7Aw/R4C+GPt5iomo31oimPqvBB6qPB6hlMLpcLz71SPlTaallmWOLI6ESEF+9sklnbxZI5uzfT1okX3/Hpe9a+1IrPLH6/Wfb9PmOoawWRh3jW/t67ZG29Mbgugp1WPiaJV97Pm3tOrDvm+byquofyYq8Ft3a+wPOW4mfn6743G88rLdMUzLKhh9zvuaG6B+aGIj2VM/fXzln/fuxjjHQn0oeL074iWNc131uVxSZvoCq9MIOhv8LDbzheX+PWdWmvfveMIz/v13685zHm7tSWpYtSsryyknLQqxSe6nK8/3x/3cK4RI61A2t+vndUDkewt01NMyO0YuRqsm/53BZ2ZPVpWPOQ/d1F5IBpF/kpYGMfGx3nfr8fgAYRQe7jkN6uzZPxLA+uzH6OXvrGJs4oWWp7Hhu/9lU/+Abn7XxOj++RwN7BRH4uY/9HXq4Rkf8W+F+Bf1FEfltE/h3gPxGRXxaRXwL+FeDfnz/+K8BfAf4P4K8D/97M+AfwF4H/Hvh7wF+Z7/1W2551H1n0G5TNATvaM5O5fW4ygE9FgT5xiTrVwCLigLvtn3l3i87/+It/jPsDTqkImyfkzosnFE1S3tc80FJZpguQjGRvIkGTxPiOGNRWCJIpWaedmy+FC5kRa0mhqnBJoadpuC1twR2WS2FY6pv/iZrZ/NIqMdLFhy70SJdKk8L9HmwjGK5UhatmFi+k0QVu2EdFexqe7HLCXbL+vtSCbWBa0ciSR4RhAW6JLKm1TmZfxSPFrkSdYpaolgnlu9Ssdy9a0uxChT9RJyInGn020u4abJINyorQimJ0ahS20SkjkHignXwEwwoqxpWC3J+pJaieTNBlqRAbqfUiDD9Z3KlSm1LqPh4dEaepED1XZYGylOV1AIXUOrdkGBNB0wqaMD/H8dAjYFfRY5L0GGzbdpDdXGat2AZBiqmJxNEo3ifExSUbictUOh0P+QqdTeeCHJkNiRwGAAAgAElEQVR6WdKYxCChmoAUwSPQUrLmLjVXc2SgHeIMSW0XnHRrMmdM97ZVlXtxiJb9MhXMg4IiJV3G4JHN+2SE11qJyS3xYXlOEIpKossk93shV1X7Pbq2S/IJlLyfCGhpclU0x+Li6QP8lS188bRi7vQxUAtEGktNmG9bQKRNxzTFtp6OX6S2/2ZKXZMEKfV7/NrvPNPuz5+GhglBhUfZeSfenePV21h1riZ823KNfNtZ4f/vTUTi2x7Ut/juT7P+eL0kelXGefPeA4cvn5ITpAX/0b/186gI0dMRJqjYNmVtw2F0uje+9vRRrU2w2PiCmmqUFqlmNycaKYrcB89iiAsXE27FKHbF44W1FvqmiDhFZlDRRFcgDiIwDKuVZfeV5cGavO1sQhnIvaJPcdDdneBnPlzwuKc8Qym8bMJznx6yOtm8I47auDloF8YH48NIOJ2ULDMByGTreijWx8NAAkW04nZL67enLFHc7kAJRCbkzTIb/uKysrnhOGVK5krLwGqRE2prieUvddCngmbfUsTr4EdMTf4mwn08gk2RwUsvlKogG8SCq7JtG20aan98di5LTfz4lEAs1bD7LB+8UzKMyU6qFZDMOLfRkyjWlVsxfkaE55nUvMQ4GsRDUrO/xTRQn4N2uM36vxwsXVQOKOaezffNcFZqy8nuRuK6D1lnCbQ4vTfcoNQkt5kH5htrWdksG5PNc0LZos9jmM3sSGLfvmoy8wlRfBALi8z6tjg6S25BrgBT+O2EqJuckyK5GjDXdNqayULepwpzJXOgmibKpzjIUlkMbiU4Eu3S+a0fOP/8z7VcFThsIqxbjk9k4/KhYQasho16rLZVFXNl3RLmOSz43dvCX/97v/+qV/F228vBb+PN27jzue1YncaPL+B8Zxivb+t1b7f3Zrjz0urt6/tJfE9P4jxrnmfV92rz+2tvN+8Lv/27X1PjnoGjvcYh11kfLhWuBE/kzN584bZ92uQyM7obX6uxhh6mywCNjSWWT0o8+8pjLxXsmugijkWl22tz7UUr6qmXXltQ41GSgKwz3xFMCptPUTUn9eSnMNjl2rhcG21RnpqyVmHp9dBN8S0DeWvpvnO/+SsOgGiKk6XY16AtysvLSwaEetIvmvhmSI6BuychB1iW5chSzxN0Ppfa+t4VnY5U57IAwDZr5bsuPEx9+gHEwoanWFtJSeS+PRyazlj9vazzdsydV5X7se/nV6e8r6oi5twk9+8exkXrJ2P4PP72zwFEHw/uQSRjdG9IQrJStXTMUp+/2ENvvbWGUCHqq3vAzPCeLlXn8iCtHGVHETkw9/t432U29tWImRHbSA0kTzRY2x548r3pXuYYi0i5g4Icq11I6OZiQHs05vdj2M/7LiPSJbCa90VZF+wMRYyFP/Vzl+O3cqUzeQVjHPrx7o6/QPFtJkML95tBT+8Hd2dE8Gt/8PKtmqSf6xd+0/ZtkvPvRJB/W5t++xp8vhv99gG8Mvd++51nXfrPdbeP/8tDOuGT/aLz3/3iH8ygqOjUcmFSvSMGpaRQ2VKdKMJTaVQ8JW/HXEbfN5qkF+niwgdy+SlFJ24bTJM9qKHQ0gS7zqbcNSDEc4mNsQ2nWuKgw0ciPNi41JRlLYvwxVpoS7oylZYlkx7BvYNtRpMUYevD2Vx49mAzJ6bKnwxPed2WkOWqxsstM3UplXsf3LbOMMvlv2eTrnieVAdubpgubO6glQ0O2KJHQii1NEQrplnK6cPwmsvy8E6rkuUfSdErs2DcyX334FYS5TICNvN0eIpHPThJSYAorSjBOIIPZsgkJ/XJoAzJfd96arS71cM96dx3gGCLbK63lg3VCBBRzOLQPbqUKyNWQJPLYHJMaMEU3drvjeDIdCOyvOJ7aSqgm09sf46N8DRrX1RxD9o+PEmuhIUxLJLToQmlNDNKS5cnMyNmzyWERNT4lGqeUMohibTxPlB7lCcKD4KghadeT8vyiwq4Ra5dakkBskjRtlqzJLasuQJKPEKu/PBs1BJ5braJpNqTi+o7wCK4x+2YAEUE64MMI5XiCVXmDlorvSRUuIiwtrzn7i6Hqcyuo7TLgXQT/v4PTtj4c6n3ncD8uSz+c1LDP832nQjy50D8XtPkJ9l+mprWT/q+z13A3/2jC3/01WCY8Ud+T9hgEV5mx3+v0e5Z/oiEhnkR8OC26ivhr/14RVJ0KthokqzAUtOnNXxao7GlA87+2f7wBTWzZG4WpVQHX3nmwaK8WfBxezBY3VOG4GUjvWBflO2WpaFSgtokTR7u41VmfLOOaZYt3jacgKToi+JWjzozsRDeuFtawqk9zq2eJmYbSvGNNgOvSDryFEsU0KoVGck03QNKbamcWarzVJVU1Xk0Y+82uNvA5OGu1MMpm70iNR3BY5YIlmUBMZwX3Morluo+jt4u21trx37vGWNEIKqMAl0jHYt6smx3vPvefN0zzqNJOa/30ewlx5PxEBfbVwI7O9StIWJcLL8/IuV5TR4M5PO4OwKzPdyQ9v/vx7Zf/6NEo6kJJPpQYRyS+vle5GCYqj1gwjsTt5RysHHPq+6dMSsyy0yR43hvBO/X5Lxa38+ViFBHHMJrR+Y+V26jCB/HxrVVYhOabsd1PF/TWq6U4VSLBFOEMKTx93+QJuLnGPL22r/N8t/W3r+pJr///W1K2N+JIP+5bD3i4b363qYnVuT58dY0ZG/iflMZ5r2LdLyur0s8jx248Qt/+4doAe1TZ9tTW0OAoks60jhZmlDBQ7jde2bqfUc0QClZ+PeSeV3VRp0MSOt5cyKG9H3JWmntkje5yIH+EBGGk7KolgYJXXPFYJEZ9RFIMMycFxtoONJS7nfzrNmadQoZqGspvBjcLFUlRwffskF9u2dGvZF1eimF4Y6rgw1cjGub0EAdwKCW1NPfJKaVobPBgS1fVoGaYmlNg20bXNuCezBqYXNnVGXVyn0btKKIC6INH6k8KBG0IoyRLlj7GKgE3Y3NBirCc2n47GmIpgSylnSyMgfvHRFF4gmZy/ajRCE6/W4HhmOuDNMpGyyY36kN1Cs2NfaZvqslnNJjZveOm+H3dF1qctI0n7K5Ng1EFim0ufKzWXLKnlB/1ICl0Jb0H44lVwqqyqUt2ZT1bApnOcPpMzHZsel7nV/GQ4ZBcKrWxLHHhnuWWbI31LiPnnaEFlyv1yOLhqTvXSTNOlqBqoFsWzKWq86xGEQ8VqkWWbK5Wadvz6ztkvegBzEsVwQh2FwN6GzkbrMPwJiqowh0Q2oQ1vGbYmrcSa5KiSBsUJaCkwJmPh3bpFWiKD2c5+3Or/zgD3gro7+v+N/GlzNq7u321pzobdz7x65cs2+7MuR5+xx2VCSbO2eo1udO5nvWgSJyCJIpctDpzy5S+9/nk/6qhh+V//P7zssIIjILE/PpqZr7srnhPdB5g6sHT9qSnl0UrSkOJZY3wuh9/r5gPd2ORNPYOnRQo6DhD4OSSEfbc9ZSa9LlVVIEawGelkafrjnbMG7uPEe6GKlXCoFtd4Y79y2mPvmCSGds8PycAS8iG5o9CoSm9aGkhnwqsBsKEz5pM8tTvtLgHsmCDE0DaBNlqOIKowgWQmiCt4WSTFEtbD4QFmzCHqMPIgpujY+etowjBgNHuhGtUDTQWrEQmrZkHUuWwZJXUBGtGdiHA8ouW6CRv592fpVByvOOaRCzlrzOYxi3MdjcUS1gcdDmU5PfcCrbgHtVMBgDRkluBbWgayNsUDVNv3VpbCITwZIPKY/VCECTqQ5a4bI0fHQ+aMF8WggGh0a8nfTtxQMZdygTf28GrVBlYZ31nBhT7z9S7EtqgfvIEg0Fn41fok0xu4mIs+CLurCI0Ja89lmCWbibp9m3ZaJzXGOJGdw7rqceVTA5BABOKcL1eiW457FJPmhKFWFdlLVVijwmpMyu89EDdG3JPRmFMseWrspSV66XCvWC6EA0pbBbSe2jnWAnIvy/Xwv3SIXNcy9ojxN7nDkTw/bS8cFmPVUmPhfIvy0Q5TsT5M/Ns/de+1wZ59vMeJ+bLc/Lq7cTxo+7EO7O3/nVZy4f6rHkP6sEikz69qSkW82g1kLS3k+ELYyQNFu+amOzwX30wwdzk2yeEY22OO5KxCBi0ER5WhJXrSVoS17y1iQdmKYD1YsoXQpdCnecxVOYaWeq7jrjvT/OxRk3fZhPl5QZKCUQ9eP3bp7swCOrjCS4SFFM+qHB7lUPcan9RrmuThm5lL82pUkKot1duVngYyXCKfVkMF0MEado8DMfoPlDH34fG3u57JxR7QFv/+0zA3It9WB+nk3ZVRUdp3Mhycx8a0q9f/+1NJ5jvGoWhjn39mgYnkW8zs3vc4lnf5wx+zWEFx7MVhGhqrKVDP77+NsbieeyzKt7pkzJ6+HcPFdoAOZbZhxilDqbpFXwpjkRv6OOuGf/+/Ge3cj2/b7qqSk8x/46NYPe3nvH/Tm18JOJ3XCr1MbxXLGgyRRra5Z6Tf4QbYt6YYtylKHyxAtNNqIITTz5F/rgo+z7sfmjqd9x7j74O99/3XA9l2nOf78tMZ+PS0U/ee6bKgw/yfadCfLAgU+H1xf9vTLO22D8udnvvefPAmf7SiE1Jh4X5/zaXu7Zf/vx78AN/udf/kPKZjytCyHOteVg2wNBhM1HOhEttSCqIEL44ItlAQ1CB6OkyJm2yg2DkgzLiCDEeQmwEO6bUCkUFcKNtRSqNPotnXTCUya1SXq7ug9Uay6HozFKZuaq+XAHkUKZ2aK74BLcunO3jaZBCZ3MxvxNgNodBdZWsElo6pYCX4dmPw8Br7BdtyUOM46XewaKVgKxztMKywIobLM8VWrQXSia398d8DtLqWwjy1/rAkOdFlmzUJ+WzkVYIRnBQwgpLAKIUwlGAywY3bGpLxMTH16q0KcC5d5QLPPRx8BdEWkHvlxrcOsbTJenTSqp917Qkdo4i8GqlW0b1FrwWLhHZrXufiq1TZKQpcyCz0awD+O+JezR/VE7HySaZ5VsRur084UsCaZTVeLjR/gxrhfy97Z7T2TSHCtj5GQb857ZVwOQuPSrZk09toHHQHGKpINV+sxCH0aJwYiBa5bwdvEuF2VY0KaS6THxT+2Z4g9WoJlhkhBG15Js7yJoGXgEoxf6NgjR2YwPGAOLRPqsZPlN6HRzWnWWVmjFoQtPV1BfIXKi3wmJRnBF+OFH+OrlncZqxCNu+SNmHPFCHmJlZ6b9J98xN9WHz8VPun1ngvy5oQcP8tKP295rYrz3OpxO/Ge0mn9c9n5+z3nyeOHCL/+DL1PLZsLI9mZYZhQ6/UkLkIYRQ6Yi33gw61RWil4wrXztQuVCn6zOs+yqFoey8Hx/6Lf0/qgh9vlbr7JqVdw3RIylfo+IcQTZcwZTakAjSSXlgULRkqJkt4/Gy5YkHaFiI/dNHRZ97bbjKrz0DXhA5Y7M1tOko2/75DJwN1pbUa2s1SjeuVaZUgUbA0/jjgAZhcXnhKQCtXA3Z9UnaqxskbITe2a8nwd3J265T7ue0H5+vpKRhtq7ycqp+WnjMc42kmm8M2t39uzDFSy3EoOrCmEvxzlWVe46JQsmFl+LUUZFR2HRwiAONEdex4cs8/7c/nv7Ph1NSGmM/ijduXtm+JEkn31CWCUnnWwEdz4sSvOV7sKYpcUdFHDWBxKRKZvNq2M/rxhyvC6YPfSVejgmlcFjVXKPB/tVTk5ji5YsiYm8Os79Prjdbsli7Wm0vs4a/ANLn5/T6dClqpSolK5cr9c0P1kUaQPX5TiHqpoM2ynVLJ5OZl9H5298/wWX+7vx4L049W3i0ttVwD+2mfxbGvQedBSBd+rp33Qi3s6EnwTv2Vg6v/Y24z9r15xn4vd+Vxn8tb/zJbctqKSWSsQsnYixWWpUewxqNJAGlg1also2NVa2GGnIYKnfQhjYAwq2LoURG0hqmF8uCy+bcR8Colx0zGbfY5I0gDDKaSR0+xLhgko2u7SQSpaazSpw3AclHvZ2WwiUwfWLCrZiPZe5sqTcsZRkjGooPjbwwfayoaEMz4Bz13S7KqWhJVI3BYcC/9w/GfzstfHli/Hls/Cjl1S+FPVUwqSwLoWtF6QELsZzEV5s4PaAL955puigaaOVNOm+jzuUmpC8Jkgt3D1QqQyUNYRQkN7YDvOVRAeJbTRSi8VGQCiY8yQVs9flHhFBdEElzVq2MMIHtEs2Ow8oXjA8FUQbhdVSg8U04Z9KqmjusNDeOxap0Lnr7NYm9JF166rC2NKjtpSss8vIIOcEtjkaZXIdKlKnzWAtDEuq/3BHL4NLcZTAuhEW2RYYTh+WEM6AujTMnK7OslYu0zTBJWvp99GpOIumY5jQiJEGKGHOPWZ/Rh4GKGUirYpnT2NzyxXBZDRJSVTOAlyfGk/XnNxv0fj6NhJKOqWqhwex5dhdSVjkzTtVnG0MYhmpmzMa231Q1dMVy2AdHDLVWgtXCn+0fcGXX3X0rV4wHH3B92IIcJC93osvcoSj17X9b6th850I8m/r8Wece2YnemQU+3Pf1Jxw4t3O9RHQ3zRYz+/Z33cO7Of3HEvN02pAwulb8Dd/9Ydzqe/IxMKLB98rQrWgaCD4lPJVineqO5VcOi8VhIZrXvC731IbO0DF6e4UnZA0iXTKKYKpU6Lx9HQBH7RItiSSTc+GpmhTaxk4whmezjhN0wAFT1s7zvhiqZNRmqK2WBpLP9VGkObWLhshmtDEcIZts+GZeuVlmSSpMbNHphGzCW6dkjGT3/id4I+fRxKi1FCpuCnFCi4p9nXfDAljm815Mc/GIoPasvm3ilAXTY19AiQJaREp8qXB0RTf6+FfR2AiEB2pmWEPICxSD16FqivDBI8sR/RZ2pPIG7nqig+ZmHoOpApksC1FgN35a6OXkfLK6mzT+MQGU05YAE0UiTzE7UZ4IrWYvQ8XkEF44VpTsOz/4+7dfm3ZtvOuX2u99xpjrn3xOXYchOKgBClBinhwICIRIolE8gBvKEJAXpKHKFEED0jwwlv+h7wEIYQQSIQogEQAWQJZ4AQISew48SUX27Et+/gc+5x9LnvvteYcVb331nhovdeoOdac63JOFGmfkqbWXGOOUaOqV1XrrX/ta9+XTEN7XmF1j/cuursq1UFd9W5oHcYcQ5MfFClGToOSuEbgk3WheAIpSO/U1gntQmWz8B4QcTZzPDvnEnLZXRTLHcud83JGLIq3u9CgHeoiGh24moyzCB+IAi1sMlMKJpIFNp4ZENaURxDwXulpGKj3oLBCSEBY7Wgte6b/QUpkufo0dBeQzGfSuFcJNzN3VnWqO//o65fXEs2dUeM8gn+PMWSPRTev7UXamxD2HJzztu0LEeSfYr4cf+Z7noNvnmTV3AT2p77nteB/mGyegnmOx/bUPn/8514+KqA9gmxGpllQigv3Teh6wpcrF7puDvqwL7NvJVzn791tN5+euO2rvvHtz2HlyqV+CgIDsC7gVxnX2aF65M3fLkPT0Li31lnLxl12tm2jrqdrZySRKSrDSs5C3e9YTJyBryxXrnpR40EK6+GujyW67ZRFIBy3XIPV47CNU5uwz6VdYa0rRBVwhdr1mh6PZ+8rGOM9xzQTHO1ZtGv9niksNj8/J30XQgIgxXL/9t41M4rL1WvXCnUTpAYdct4jc3zcY2yPptJ6CIpzn3faeWhxzevg9c1r2JJQLH6OYmRzTPaVsl7F3I7XX91Zz8pySix32z4OIsK5LK9BYGt//AzOMZ29Heu6gir9pp52W7gUCXkH13H/ScCb8305Zy5dWe1a9M6ibJ648/OjrvM5ju4OsuE0PvxYKacr739CPtWNpR6MvJvxQU987WXmK9/4lCbXwvFzseH4/9vY8hTR403bm5LY2+0LEeRvt+Ng3GbNx23KDj+X2avqTl9643dE9WqXTJ3Z01MX8BEUdCgUAyTL/PWf/5ysFh2lYvvPdMZpbmBRzME6vkUhKg/VQJHEyY0lOyeEM46WaDBprdGysJQUcsBLmD2XU+Z0ShiVRCanxF06YRITygxgUyoWz7AtrKtwcejY3qzjQz52UvdKH45VDFMTN7ZN6B5dlN47rz5vQa/rY9XTRh1hyCkvWREJtU6vW3jeSt2djXBFPGRbm7cQTJMMKfPyEoXbnGBZjJwc6ysZ55QKyiicd0Oz8NB7+H12ISfFW9DmEKEjNI/Mb17PjHDn0aXaByW1EV2nJwljch0TRsoTmgmNexjLa4hitws/IAu9OWYbtQWTpOG7YmYmVnV3y4kknW6CagqtHjNqi8L9XQlYpW31KuVbRkDuQ85CMjkpipN6x8ck0oeuTRNn89BiWauy9cf1nSkrrUoItonglvbJpojSWnTGojbMrxdqC1GybqEl07vtbCQfY3/F2gHi3yUrJY1CvIdo3iZOTVEYnoFwsejFkJRZsvPlDwqK4zqeH2YQVJCg+y45sVrUCprEuXlWei7IFt3nKTkvCpicQxAQZ1ly0HhbjN2HkkEZnc6Nn/31l8Mx93HD5jF7n8jBUyyZW8RAVV9zrLuez3X/74PLfyGC/Lu29742iEeM/MBFnZuZPdl0cGTU7JVwufJcj++FK+vmdgY/Ks4BdCp//Wde8dkFTuaQIJrlA08VcUw7p6I0r2gRyrlgybmMwGgqWBouN8uC6Ua2Ftrc6UzaMuu24VqwLjRVeg7Zg6wnrGuYTUgPfXdCZrW1xgKYNTxt1LRivkZTip6gRwu9o0FL40VgujngorZtZO3cpcSSnAYkyZxOTtZO3Tasd1oXJGV6NZK/RFuju5NXx0WpVDbfWHS5rhS8I24xGVBobUMkQQtI56RGacK6Ouso5qlEQ1FJA87KaVyXMIyonqhNQIyLO2sP0+fejCUVqhkmMVm1rIgoxQvn5QOSl5ggrJNTouRM0cCx04QIxgqgM9VNA0LbvKPiYVBhIYecx2SmHvdQVYNtQ71gvaNmpK2COmlZ2Cy43d2jbjODRa+xymjibNsFl0byIY+7hKZ9Fw2IJV1hN9FodsuaaTXMw5v1gBtMyOMyZBcWSWQXqj+QtJE9mEaM+oj5A96ND8od2RztxouyUA602KPGz0yWlhxsnS1dV5ki0cBUNEEupFTIeaEsQqZzzsQ9vEGj0Deh3oNV5f6e3SdWrOyKp2KQpLN4xyrcVfCkZIG0CL1n7rc1tKVEoIWXQgeqGWuFJWUyzq98nvnkYjvt8U3bXDm8Dfbdxfv8mqTO2HLsy3mf7QsR5N91afLcyc+beS7Rb7c3ySY8tZ/b79qXzId933Jk55bd+Im//50947hmNPIIftkLmtu2t/fPJfFcvoeg1TkyzpxRW8ka+O1FQtxKe2jJVHFS7uRitLa9Bm0ty7Jn9PM4ZnNNrZWtN8pgkFRxin2+L8mPcM4cTzNjbTWohjmhUtDBApnXodmLsGETwZcUIlR6RuXEWq9jM8eptbYrKcqYnEyFaJFMu2BYZNGZVK6Q1Q7pTChGG6Lt0RjkfMZMHxVLj9fPzLhcLlec+PCeY3v/EYab13EGt+P9cpQnMAk63inBB1qQJcxepkuSnAsLumumHCGWJ+9VFroUGplaDeuPmwJPY7kyrzcEBHYU0jvCekeoMmiip32fx8xyat1v27afu4hwOp0esXAmM2cG/DosBMul7/dzSjGhFBQfKqW9dzYTyCdEwjBnM0G2htfOx6p8rMbHWfgQ5yOBj1PlBXCaukObolZgC8eyXIS7D3xnoX05n9mGMNk0bp9j19yo1rmXxM999SWPzB14nc49x/upuPMUqeOp1273/77bFyLI38Ix71qAOBZE9weVaZ779onjKYz+KehnzrLHYvA8ziMnFuKB/Zlfe8nDpYW+iginpDSrgOIa3aFFgnbYFIQUlC7xgDK6k31ouzeLbs3eSFmRouRz4WNJnCUMv08dzqnQutD6iuRYwhq2d262tuFqGIr36OgbdVbASOcc+Lc3TrrgJe/BSiTgmy6F9WCCkbKMrthYAbh0ThJCZIsk0jIy7AGD3DbjTKjMXMiS+dIHJaR2HbxEsVYkmrnutw0kOkNbDw2YMmAMSRp8er3SRlsnJI7HsrzTI3PUCIhZhBwM8cEoApeGErDVeVGWHFc0ArZy8smNP7pN8Zhd4Qoph5G0GgzN+Ys7dQTB6tdJwT1giNpD0sJsaOV7NMe5O7Vv+2SxF3MV+sO6Z5C9R29DX42+Gms12sNGv9RwalIP6mltcR9CyDFwpV9OXaUmDjWKuN1Dwld7uH9Ju9ILFdjcuAxNIDTuX2CHb0SEEyE1XVXYomQfomSALCGTcIRHZ0+BmUE7cXlVERckJTZ3Hlxo3rmYszq86raLtKUMmjo+DFYoiVSITlYZRu1bo0i+FqYl3NNUNeQsrPIrnzS+c78h/jhZQmWHaeez/1TgfzLePBPX9mTxPVk1+yG9/0f+2W9vG6D3KULcFk6fmjmfm3WP7J3bv5nbo0nguQILREb4v/78y9DtmM4zOdMU7oiuz9V7SMAeHHsgMu7uB2/Skqge8r8zszxmrovCvWcu1kBWkr6IzLuzF7mm5+wiC+eloWogdefSp5RIBpehIz+FmmYQmoJna297tpb3pqnxEOhKbznwYA0HndnVOR/gI4fczGjknadsZnxj3fYxNTMuLmS58MIaX8rXAra774Xnbb1m2fXivFovkK9jdSyCTuhKVamb0u2yZ+SzI3duW010W8AL1lPoArmH7YUV+pCqPcod55xZ0lXsbDoQ9d6DXdWMzfMjOOM4JvNeuljDUmgOWVFUCpfaqQaXhxquSS2hstBbSOLi+VrzGXzZ6dI1zyuckxTr1xXa3nA1xvQoRjav3czu91VM6lQNPH0+T7mHKFh2eZQczCAYkh8rd4vsKwl3h63tTmrzvjOtaDYezLm/X9Gh4RT9GpGglJRCLrs4vkQXMsPsXtTJWSkL5OJswOf1RLKOJqMscf7LZuZDnM4AACAASURBVLTeH/U5qAL9Q/7+b/XX4sBTwfw40R9jwFOw7+3vb3rtfba3BnkR+a9E5Osi8nOH1/6KiPy98fOrIvL3xuu/S0QeDn/7zw+f+Vcl3KR+SUT+orxPZH58PK+99lTQheusJ3L1bZ2/T7z+qQF8iqXzCC97CtKRx0XW6Sh1xN3G3sGVf/wrK59cvk1eAjf2HtKvF99gCDG5h/PNxDxnc5JriH1pArXO3WkhCXgTth7B9aIr6mDmbP1C1kJD2Xyl1Y6cE9KEbpXkw+UIR2ropkgbhd8ejBnUWeQUWWoCNPPQ4aUnXm3w0DtVQmp37bG6qA4PNZgQKhmnUmvQ3MScponGUEX0RspXRkvI7zag86ptrISi5B581s6SnFM58+Agi6P1GuRFhNpDjraPollyZ8l3rA+NtXbUlLU6beuoK9KC9nmpG86KH6ijMZZzpQFrvdCsUhu0Hr0OVTLLEsF064ltbWDDfaqGK9irHph39BoYKo6JkbVRUg/KbE7ULbjYCaGQd7XGJXWSFbYKbTXaaoRhrYZZ7n4DBm1RFba20qzSvYIEI+mcM+CkpCyiZA/mqJfRDdrjR0Qhl9G/MGA8j1pGLkHdnL6o5gIWonWnpEgTCoK0HoJ6o/CriWCzeEeth/hbSYguo97iwEGvHlA3ziWTx0rWNNMfoo6hdMhKw6AUzOa5D9iMRFI4nYy0JFrOyNDYmR3DJ62Yh21nd/AhsZFTFOWzpn2V/bPfqlwu96+xYR5BVzc1wFtM/rni6YwnT1Eov9vtXTL5/xr4t44vuPu/7+4/6u4/CvyPwP90+PM/mX9z9z9/eP0vAX+W8H39Pbf7fNftOVz9dhO5QjLHTOM4yEmextD3ffgV8jly61+beW+c7CfrZxcyu7mg8f/Oj/1fn9O64XULIbLR3t+SIAk0h0ZGk05DsLGsbwQUEm3pAcmYwJaNRTtqwpJl6LfAOWdq34almUDKXLzjGYq8CAkFNETJWsPTQitxw56LQhp6OMSDUXujdcUclq3xImfOmmNCctlldL23YD14h6QUXegunNMJlUxxQ60jJJpBCCCEy1EV38+raEFdSV6u19FCXEy8YS68mE0xo219zxbV8RzxbzOQDSQZbsrmQiFBXkJgyxsfCJTkuBQkneim+AaYk/TEsrze5WlmoFcWRS4RAJfToY4jRm0rAU4kvCesK30DvziXVni1KqsGBJKXQqKQT9EZ+nC/YX1AXR6sMCTgJM/KSWO80iJkjQJdKiFwdz6VUA11RWX4rx5UEb13PCspFzZzrDmaCmo6JuANTRZcdDe61fBHaCsnDgy0YRPo3WiVkD8mmgFX7Y8miUVOLHq1NyxmIbo37ulQwtw45yiyZlGkOLMKfP/ZWGFpRxbQErIfuUWTVFf2YnYZdY3m49qJDB2mB84a17tLsHmWpXDpjwXGer/qE10uwj/82sv9OT4+8+hBJliiMH4bqL/L3PZ72t4aLd39rwPfeupvIxv/94C//KZ9SBh/f+zu/5/HKPw3wL/z/ofLo2LXHNynMPLbWfI2O3/Tsuhtk8hTK4fjrH5bjLr93Pz3l1+d+PGffnUtdvVthzkajqfHxzGzgT0DORQEb+sFGyfW4ch0LKS5RzCY7+924f7Vlc8sIizSKAxM2Qsqpysbwq7t8It0yjIwTp8mG4HRnjTzYjlxziWO0TdSGVow/YIm27PTCQlNWCXnTLbXJ9Onio0pJVIWvrVdJ3F3D971+FwhjCU0dWqJFn64mlwjFdFoPpqG17PIilTKQsAjgzO9Fx9TomIRIMdntm27wmY972O6q0QOyYqGYyqhjFlics85k2qIgkmNsbjl3U87PQDRaPKKZi/HB5lPRAJ7Nt/5/0eRsHl/HRku04xk/r/3HvaGpYCHi9cses9rFh3Tzp1mFr8mQO5OXjrCsl8juMoPXOm4/ugenrDIhMZ2CePxPBUPK0trZ+ZK6C5FQVpb9BocoR7RjujomB0w4zF2PIIjqZzT9R7rA6aZY7fdG1UzP/XV+ghCu30+n1zlf5fbU5//bvb5vWLyfxj4LXf/xcNrv1tEflpEfkJE/vB47XcAXzm85yvjtffajpk1vD2r330Unxms54q3+7J8Fk8OBdwjNv+mTrZjJrAf781hFBp/+xe/w8s1jJ/R6AL8IGXOKNY73pwz0Z13zolMFMjutIQFnWhIC+OcJQqGKsFfP58zimLNQp8dQQnoIY/lt2mM4aVu+7F3M9wXjFhJWAu53pKUknJ0cKbB67Y5lh0b6odOBzH6kBdODklPIbFbOtJPbNXJraMj2CjhkZqFkG5IghKvY0rOHVIOMoMJmwhJGpunQf0MBlFwrhOqIfyFCakLWwsJBfUNH/WLJo5qFIU1FSQrzTtrqyzJeHFSsmYsdZKE2UjyoPnXLqz1qli5mVMlRMhqi/E9nWPyrj1EvDDftcZFozcijx6BjGHS0EVoBWqOQitFQycoB7TmCr1s0Zo7oSRJrC1WrtljBcdoFupJAMfdQvVzBDUd0sFtUFjPqaBmFGG/jnoqSIj6o91Zyhmrhk6NG5aggW5bJCVCaO4AHq3d+BC2K2PSTmNlm0xpCEsumAR3fTmN45MMEqb0WvIOk2jJuztWTGhOKY11a1ctJg/3sJPquE5jBS6hUpoQfGuxGp01g3FMpYTL96tuISMsYUxvzTkX5de+7fzat18FzfiQsL0NU38uBs3tOcGxf1r4/Pca5P8kj7P4rwH/grv/fuA/Af47Efn4fXcqIn9ORH5SRH4Sni5ezu1dKte3GfTt7098/7Pf97bPHj/31CrDjtV4C5bLj/3kt5GU8dpYTLhYtGt/kBfuFh5R8ia3f/OOnq5dqCJCVfA06H3mWG2xr/OyP/A9XVcZMzNLKaiLUxQMXzC7UvzmuUTnYtuz6iaFLS+8ctmzvSOEMSfh+oiBENTGlDLf2RJ4rAhmAfI4aZ8khdTBOG/tAU3MrtE0innanbNm2IKxcSvpfN82NomV0W56wchYx9f13ikGxeCj5UzShZxOlFOnNR5RIa8MlmvWqD1MtaVes+4p1AUxKVxKoev1eh5XX8f9z8z1mFA4G8vpSgNWVWwUXAFqFk6S9lUCwJZg4VoY3btMx7W/XXEeu6CP/97ey8dibAm9Ye5cH70nF0Cugmw555AjJoT3zsV5kY9Sw2W/DrdQmHsIiV0ejFbHdfdBq7VMS5nNlc2V+3YVR/Mc13f2Erg7Fzr+YuGcCieNFaOqoz3znbWx9cadBB7/kUXvQ8/OV+/hp3/j1X7djzHiqZ/vZXtb/Hnf/X/XQV5CFu5PAH9lvubuq7t/c/z+U8A/AX4v8BvAjxw+/iPjtSc3d/8v3P0PuPsfGN/1qIB5m9Efg+qjk7vJ8o8X4E2B+nZSuO1Amw/fbSMVRFa/N0eNYu+jYC/XpqrIfpSf+erKb33yih8oIZjEQyOfFCEoguYrd8kJiddoAMkEZU01bN6yKCdzrFXOp4QnwMInliH8lEyhOq1Hl2LrYUeoyVkczCtIR6WTU6P3up9jk0rab65AWnPUyyi9MTXGc1ZKUVo1qjOavBLdG0gKezlTXC+ck+N+otx9hHoB69fAOOSWQ2OnIhRQx1vFm6FWQw6ZTktjYjwVkLZDJ72HD20jOkgnHbMbVIwizsLVqq95mGBUD+/RzkrdItt2G/isjHGyLeiUm4VRSx6Qk4KKg8kwHWnk5JCcdH/BPXDiOxJFZXRyhvaPe6doYvEofk/f29DHP2Ee+vuXtYVgnG87O+vsiuXZiKUkURZCWO0oSZDLWL04dBX6oJjOFWvqxkl0N96wJJQUmjK1NlrtuB3qXAOzbt72CSWlhHrmVIbfgRE6RBY4tSK8NOfSrhDf1lYSEl6y3sineEZqF7xGV4SrUy0YXFMlobXGidDawQaNMxfqcIc6j9pOQVkkJv5cAYkuds8hkNfG6rNm5UEbdyirOGtX7u8TP/+NjXu72h7Of2f9bT7TzyWdb0tU3xh/nvj7+/i/fi+Z/B8H/pG77zCMiPywiKTx+79IFFh/2d2/BnwmIn9o4Ph/Cvif3+fLbmGPt7X+wtMsmTcN9u337C3HT2D+txnOPvuOCUhm4dcfT0q7euVxxjfjv/9bn3ORTk0byynRt47V0GFZLKOWhsqeIsMV6CQJvPNhytAbi4Y6ZSFTVCBBEsF7p/fGDy0BOSBGshwu911Dn17j3yTsD33WFNrrRCDbWsAV89xThrpuLLmQVQb0AluTQcdzXm6XMelF4RYgqaFkSJWtNV5+euHh3hBJnJZMkhIT0xBwm41QIonkCUNHsFK6OGuTAWcYBruv6aKx1N91d8wwc0BQ92CDwK7/LimgCndHU9QGPGXEK9U9IC9XVBMlZboQrfQ50/HB4ukkjSatWg86NVrJH0VzDwSFtPcO7iRVTFMYiUvQ++5UyQpYY/FD97Q559OCEPDGWYW6hbGMmhPWkDngCOtICwgmu4a4GYJajWTDOsT0sguneU40icBgEiulmoyWPQK9w4UWHaHuYJ2cE214A8zgozqTqkIZq4vmDZPRWDV+Zm1iHdetjZXoZTOcTNLQp3FPbBjSBNcU/W9DcmEycUIXKdHW0Os/pYAvk3QWIqvPOZPdcZs+Bk4SJS2C9ETqhrXoIBfAW+Lrn2e+9q2XpH6NJ8eO+BlPjoH3TXj6LW5/u5/b7RbOmRPLu27vQqH8y8DfBP4lEfmKiPyZ8af/gNcLrn8E+BkJSuX/APx5d59F2/8Q+C+BXyIy/B9756O8HsujpfbxdXieSvnc78/pz9xutxPDm5ZTt0vgqZD5xk037l8Z/9tPf7Yv3csCyxLuNhNr3LOkQyF1FvTm985i4F4cGpnasix8uztZgxvtel1RmNmVu50fCy1dZBS0UjxsbWiITDhkwgDHrONYKNxP8cCNriQ2V/ATohtpcU5nWC+dS4eVoKdNV6rJu6/WeblVqkXBFs8hU3uof0wYZBOnD6co3B95nc5twk+zs3E2tM399R6GFvc90e0xxDKvdcpGtzXGo1zoaRhL5Cj8bp5DLKsX+nalBB7F4Y6F81d922G0uV28o6khGkU/rUax6z344UkpNXFfr8qLx47lXW/98JxMqYKjD0HOmWKdOw3oR7uT8+P7OSC9w4o4X3tHqoQGz8oV9hG5asofC+3zvOe98yIVFhk68Uvm7DGxp5KHA1rHLpm7fO36zuXql3DSzjJWcaWUfWIPuY5rUT63gweAHCY3U1LZ9rGq1nlphe+sxt/75DtP1tiO2+198Vw2/7b3vSkJ/W7hIPlugPx/lpuI+DFLhsdZ/JsGXkRwC22J52a+NAyRd/qT+Vv3/8ZJxa7c+D3wTL2JEUiO8M3x90Thz/6bd/zwl15Em3tLmFp0UtZK79PkAWyJQL+t4bDTWqP5eADItKmWRyeTouPQwsX+MjTJj+qKflF8aYFR5qlfHVKxRZQkw6jCQQbUpITfprvTDE4olhzr7Lz7PpbDelzq+iT8d86a6d5IoqwtXK1OZ4XhaQtDsbALKS+sa6UsTsnyqEHp9iEUcdaLkc6FXKMoe0qFzx/uOZ1O+8O9qHJ3V9haOCel7ohGD6yIQO1UB8mJcxZerQ0RpY5mJ3ELYTMJ4awNgx6uTG5BDX30YCdlGUXR1hpaMik50sbklAiT79kgJrARQmYiwtYiYCYDyUJyhvuV0VvUK3IJnNmY91/su0h0/c5j6SMzLWNl2aRTyPuYq4YFoNlVsTO3kX0n5yNV7tVY/Nr4VkQhJzavnFDWIVdcUqzU1qHVM/sOuoZ+z4cajlzuHqu3QWgoeUzG5shFSKeFXhv6whATmikfnpTLFoJxJtBHjUf6rHFEMb4pSLrQWuaUMu7tKoJHdJc/DEZRb4mHV/Czn2780te+8+i5n/fbjBNKNEPKgdf/1rh0RAwOseARtDv/fhP35ufHz1sj/hei4/VNM9fM3ub7jj/uoTX/ptnxmEW9K5b2pvcei2dPYWq3rz3aL5W/+jdWNgm9lb1AZ0JOCylDWULh8HIP9y8jE0qbUC2yr7NmOms43gzYqPc+spnMtnXgWtiaGfmRWvZoJXLo8jWLRprbjBagLA6yPSreuUeBb1LXnpoUZ9afMe6WIUA2Lf2mLHBJu3Li0dHquKI6ZoX7pDmw+bnaeNX7rq0yxxYav/1DJycLoTONrsd5vp4yH53CEat3RzVxFvhtP+QU6WQJU4kZ4GZB8Hh/TR2WUkpozWN74RyGnG0CX9Kj6z7H7HK57LRDuJp2q4WJxqVXnErKhminbYlWQ6CubtcC+LETeq76jt+lWnho217Ynn8r6G4xuaWplJl5tTVa9V1TqKrz0OtOPzQLsbTpXzxXeUcqcDJQizHIyD5+cxzm+2rTXe/9/CISCbcUKxyxfd9VAjazrmwE2cD9ulpZJHHC6XpNOu5b331aISa4zx5WPnmo/PJvfYbzROC9iQdyIxz2FFR8GwOe+v9T3/MUXPw+2xcqk4fXMfA3Hf9zs+mbZtnn9nP7XU8F82d/98Psy7gh5HBBD81UXQp/7Pcu/Bv/8pfofWp3RybprQ98+loTqFsH8s5gcYE8lqfb1jnlAaskgbGcv++VLJkHIpNeL4a7UV6AX4bXp9mjc5gPHSbRPNKEznAzaoJMjrxcDa33OkROj2GSHlQ7GcqEiIVxiBlbDaXNIj5UG8ckY8blEtnrKTtFU8AYs/6hV/kBdycPXvuynHfTZfpwwiJWCSklkM5v+0C5750vnZSHS6P5QjehN6EBdx849qpTh2b4h6Vyzonf+Nz4HV8+sW3GZ2vn/iEmpkvroWyousM/WSb/3OmeR4t8FP7i74PpM1cYLlcFS1KoP/eo75Scdu2X4/3ZWuOcCt0qrSniSktRAwFQnbRU2VdTZsHzj8DL+O44j23bkJzIolSF3kH3RqEpY5D3AN7wkC9AYmIeAd0sahSnovuqdnY375x4ARsTd8mHJIjE2qJB65wTnhsqwuaZTN0713WH7TpnhC3BZYjcZW/RTCUJH17ATidzTRK7haewNHjZ4LNXmZ/69W/xae3P+qkeV+tvijXHCetdt3eJXd9Xmfxxu13aHF+73Z6bTW9lPN+2Hb/nKPd5eyFuZ/LbWVgknJieYuvMLXnlJ37hnp/79Veci6NZqAM+MVGaAxoc44sKnDKShZKVUhJKaHzXGud+2YxmIbn6SpWXW/DNq0Sg3LrhmnhQg5qiIKahox6dkUr3YwPaUCJMhmoIbUkWSoIkI4u3GUSCA445dykxDbsnrXIzJxFFsNad2gw8kxyqOW0spN2h1qB7LDm46J3OKSlJrxiz9RqiVsBmjpQFc98LuKLXRrAFQSTYP9965dgls9bM/aZsFbwrbo1kG59ehFVS9DG4UVNBllg1ffOl8e37RmtxXOaODvs894NBsygdwbWTPRqsoitLyK5sW6XVThtKnxcPmMg0GDtb6wiOYWx2wTUsIfMQM1MXEOXijZ4SKkbSDXFYHDzsw+iiVAlrxr15pxtnSRTiOi65IK54yuTBjmrNdlgn2D5OyiAW/RFqnZPHxNzpYWPVQ15gWTKnBVIn5J0hmFsetFYf8sKLOqpROrdYcNIdsDE5sJIRWu8k30hZySxD475TShzbvSpbv07+SU+R4QdJH2tbXBcEGaJ1Yg61s4nQ7xv/4OsPfF7tEVRya7j91Gr99pk/rqKe2p7r83nu/d9NUv6FC/LH7bkMe/77XPHiFlZ5br+3n9mz2if0428/d/zM7UU//v7U97s7f+0nP+Mbr2JpfJcKJ3S/IapGkes0srGdz66VlOB0VjQbeSG0twsglQ9dYtK4OF7jJ7kg3fmonPcxO2L1WTpF7VFxdx63GXtx775ttMFeCOjgevMbvndUzmx77mdm+NUTjczaW2DjaRiQHOzyjgW7ueUhqfAwXJockPHeKVK2f66nHe6ZkEFrjY+y88//oFE3A1/YMCx1ZHE+PDu/PYUi43Rjujw4Lz+LZf16afRR18wpocd70pzFldOY3MyM1q8do3F/GCIhlCUa9MBajVqvxt4TH3cPRlW2aELLOe8dsXNMp9vTrWuYSEj2zmNzPxhbO7TtCqn1HuJ4d5L375/jNu+DVHLUmLTxIkF6oVjpyDnOxU6GvLh2oPa6kGmcNBQxsTtUjcXDJOUYJFdTNjT6LtZKGff+JAaIyC6NfTQjmeNgPeN2lTKu8rgG9uFyjprGKLQfYb66wT9+BV97ebnNmJ98Tp975o8w8nPP+W08OG7z2r9rIvqm7QsH17wL1PIIUx5Z91sXNQNXu9Wnedty7HY76uXM2X6uGm47cG/hnOPWJfE7Py78+T/+pdDPJoS/RAQh00YmtEgi+WjRFw9FRG9ByTP2ApfmBe8d687FGqUPU44RDE/LtTg9z3fbWphuiLAUh2Y0vwaslBLGyMyHNZqLIUSwSh7NP5fR2ZoRzENPBiaHvtOG+XZGgn7pTspxNBHQhbY5OYPMzD3nXVitunGi0GjM+O85xsSHs1IUpu3aDDWvp3hwuu+MrMJ2EVwdpLE1jZ4BN+5t4UsfKvf3K9YjY08qtA5LMlwytRmanK1D77OZrIdGi41mIw3aq3sUsvPAi9fB/y4axcPWWvjcilJKFLlTCsju0uK9KmN1lTLeguljNibEFhTCV5vRaITOViIliSDL61DjixQZu0gUV7tC6j2Omevkmj0oqxMCKykH9j6wsEmVVVW2i/Dibpi6b45bpojx0CsscB6Tl6mz7OilBIfehimIG6eSdlrmhmHWyXqm9gsApzxhI+im4Z8wegxMjJISra0oujPVchr1iGaYJ5oqv/bJA3/n1+5vGviehmaeIoK86/aucQyehonn69+XcM1RX+N2ux2U24aB57L78cerk9TBEvCpAH+7j0eFtsOSbn7f/HwaXGLMH7u+CK9NLsk7X/30wo/97AUtGi3vpFCGtE7qiYVlZF1CLWU4ImVOZSHnBWnsLeGXS2QmuSRelMJyB3I2VDqKskllS6EtE2yE4CC7GJJg3WC1wJhXT6T8AuxadEtLJy19nNcZOO1dqouG809kfh7iVq50M7opRkMTVHfUjZLsMdxliZ6VkjTsAlMOvvkQ1BLv+FgRNA8KX+3wsEaxsm6OUFiOhcYeeuXWjEZlfQWXrQ9GT6L1FLz6Jpic8Lrx8JCpcockAWWn6S2LAp0Pl40PP4x7oaBUj6arB4ZDlEC1ymYhiCWSaNKhXPVdqvXw+T0tITAmnXrpbG1layuVRnqRaamzdYlJ18C1juAVTVVdo7ibU3Qw5wJJQt0UgsFirpTk3OWFk+awPVTFD/f3kY0j2imkEOzyIQCmGnx888C5JZqeSgivs+SgJ3o3chJUNy7SydnozUOiWYTkhlhAiBnh9OCcckHKwnKKBjv3qB3dqUCL5ITh/NXch3xkaBQt0jFRVoiJ35Vvff1TJIX0slvCHPqomVQRvv3g/MI34SKPVzxTbHDWzmZMCEDycXy5jUvPNS09tzp4Lsbcxrb3wve/KJn8LbxyzECOjIHD564ZtL2uBvembV6Yd204eGoSOP7/1rJrhw9u9v9URu9k/tQf/TK/44fOw6i5U6vjDDNvH5RJIpPORULLfBaSfOCBHhoqods99VY6WgW8UE6dzYLeNrN7kUTv04lp3FwkqvVdNnbCIpICtvFuQUH0gc0yTLvHtWs1IIojD9zMcDoqhbV2Uo7CrI0l78MaTVincp04t2G9V2ulaOYuGw/NSRImE+tsu9ew7guoSPADXDSPvZwXpBKh2BKeGmk0YJWUx/EJvYcsRBJ4aBsvUnTp3p2ML398QsT55DvOujn3Bu5C7xN2Oa6SphWhjKB8fc3MOKfCSqePrDonZav26AGfHde992gOYwae672WpYEXth7WfEvMrddi/gLa05UYQAe/UoortheOA7YxzoMXn8b3zBUdhGJoJpyb8mS1jZVKOin0eO/DWvkgRbbuKeGEbtId02A7kVrAP1oy5pdxHYf6Z680D//iipFduBjjnkzTQhjRYM2cUyFrhx5a+q0F/JR6jFN34eKZ//fXN37j29/GrIDXK/wir8cEVd07248J4f7c+nUVfzQP+ae1He6F759M/imXp/n/+cAeO8PcfYgVvT3A3wbWXT7hZtK4/cxxwnkTdnbM7Of7n3So0te/T2j81b/xdV4+3KNpAz+heRh1q9CKkoqgREu81/H5Apigatxp3l2eQvY33rNoOE5pCmw5USgiiCuyCCaGl4K7IFroJjSDREJzCbedGo45s608pYL1Ct6jSDY06cV1PHxOWlLI1mrokbsKJnkPKCe7KgROJcVlWTCZhd/Iwtk2lqQMtYYIAFLDSi4JqaSxuoGk07HI8NZQd7y1YFi0Tg+LktF85bStsuSCaoybmUVhrwnuwtIVa4554n5d+Pp3jG986qSlk5Owrm3ASVHgBQanfXmEtU+JiFmbcPedfpgTlBwTQVJnKRoeusPkpW0zwIfIWpIwRs+pcy7BajpnOC0Bo/UmrM1QG0Yhlmh+rU24BazSJBzAXohy0rxLAixZKDlkosWjQOsa8FYWKGI0Rs1Bwzi8WmcVo/dKTk6TGlBYUk5LjvuDQm/RIZxSrI42qYPKWmPV5zkm4dopWshhiIvVRm3hW3ypmc/vh2fB2rAtoWumPhgPl8TqhplQPAFK1jRM6J1f+GTjq598Njph22tBeXal7s/sXI3701n5o1X6jBE3Mf5tePub/v4+WP0XJ5P3x9jXUzPj+2BkT+Fd38Wx7Rf4XeoG8/hkQENHrfo9qD9xOFmMH/oA/t0/+iOc7xZyq6FLo8p9a9yRHmVNrsKK8oFt1G6saLAHxnGt1nYlQSUyf62hj3K3vGIzZ7Uww24eQmETPrG+YcNlqJTCwza6D3evy8GoYTgypTCCdsuRfauTRgPMSUo0aRESLAvRfHXGkSWDCNLDPDnnHMbiA1LLbkw0NgAAIABJREFUZBALzfnUkS3DUHa8b7Hsn8W4PDscB5de5AqP4I5nG7DDBltBTgXGSuChjWYeGc07LbGmThrso5PmMQE42AlJGw+NgFk2QUpAaurCQ6+BAw98fXa2ziA7jym7sBIwWvw9LPkgMuU9eXNlpY/+BY3smgRSeZE+oJsN05k1gq85bTVqFrbWWcbKaDmsInZlxtFopeOeUlXUOmmIivVU4phlqGgaNDWqx6SjNNwK971hAl+6W6g9dISyGU1D/lkeYuxLTvjgu1uJe+2DkQqZGU0XLptTUkPpNIXuC6/WivXMmYzohg+THbNhAA6kQbu0rrQO2StNIUmhC3zt042//Rufslp6zc7vWM/b49DMom/izJtiSsCO/kZm3fG9O/Pp8Nrtft8Vk//CBHl4Oog/RU96qkNsDpryusTwcR9P/f1dtqPq4W1B64gv3x7Hs1V4e1ykNTd+9Hd/mT/x++/YhlwwBN4oQ8bAmdrgja0FdU1Eoig6hmgzJQ0YxcwC52/DlLrqaKiJY1q3wDyzX9kouYSeTjBwIJXM5XLZg1VOC62uj9QebdD8KsGH9xbHW6bcrYLU0IqxBnVztDglO9aF1ozTOSYWq6PoWK7NQhM6cBWWHhPIw2xCmveCZWTo3seDuyC+kc5LYNi9c2md04CdmnTwRF+HxIFG12lKIbI2C9o7s0muVo7kU0xwEsTr3kJYrPeAYJLKo+s+75dWnbIkZMAw8z1NQTvcLYnaHbE4x+IBW00WhpmBCS9OSm8+pIxzYN8KWmt4tK5Gl8zDVnlRoIxrtR4kdJccWXwniquqyjbsHY/39skcOZ2CeTQ0g44c/HX0KJxfLMhQzJSkLK6PzjEphJtVBGNVxXxjGQ1tLhl15TJcxS49VlTz82JhyJ1TnKNI0CKzKI6yrpU6JjpJmewd7cI3Lp2/8ZWVS1tfy9z3359J2B4lZ7dF2UNx9il49jbhO773dmJ5LkZ/3wV5HQ1E8Ewx9Ans67sJ2M/h6++DqT25ynjHlcexSHubMSiFP/KjX+aP/a6wzYsPJB5qD113jaC3unPnC1t9YOvKQ05Qh6JlT5AfKJav49SiWYWawBOkMC/pNtyIUtqPtfceBTxJGAI1dGKSXIXEujC6P2NCW8UxU4oL5tBGw5T0hlsGDOmdnhUd5tQSfYkjqPSdk61MPFtBAipaLdx+ookLnBWzQs+dU8usre6UzDuNxrG1wlmNnhOnEpPj/WULz1Q31I1mJ+pDxZaEMhQMqSCF6okiHR9NXB+mzCYbzaOYrD1ULat2VM5Bc3owqkb2f7Fo0FEig08t88pD4/w8i53q9BbNT8ltr63M+6QeH2+Z7kyMFUEUvCGg6CJjHBF6UXqD7bKGUxQehtZqwal3x/UgeWwx2drJ8FXIpe+GKEvW0QkcLCfPig4pAzNj8ykl7KwoC0Pi2KIL2Py6gqketRdxJZdO78F66WZYSvT7hspCUhtUSUVPNXTggRAycz5aYpXRZmc2AcHlnFk7bCYstbN54id+/VO++dnVbGVvApRrLe2WdXb7PD+XZT+Zpc86Ia/HmKe2N6ECI0n8/sHkb6vKb5rdnvr9eHHehGc9dbHe9H3vso93nSCO73uqGcKo/N9/9xN+4beuHOrWWtj8advPrUs8MPl8ohXFh6mCJudo0D3fazkywXLaWM5RfNxWe8RLnueVD+yBW3PrXSrBd5e2EL1y4ZyMuxIc6mwMFx8jJUjZdlGpXJyywItzfP/kQU/d+yrO6mEc3iVH8W5k5601nJXTKbj6vYXN4TxGMeehO1UUksbklI3qxkPd9sB0krTDKbo4izfc66MltGiL7J1GzmD5wj/3sZHyFaNdloW7vKDdoRmb+qOxd3c6URj9zDaKXEXFbu+FveMY6FnY5LEK6p4Rz8zXr6vEGbxUg1qYmyN143yX8BF0d1cmIeSgD70MTWIl8Mi43eKazetz/Hce//F52OwgruXLfkyeQmN+HSYepoKnzv3FWbfMtoYGUb9vlHwH+oCoURblg4+NZVmuiVGKBrW5wjqOC4S5SXHhRVqhJP7u1y98/unVpWrev8dxfyqGPPfM3r7+1GeemxDeZ3sfPB6+IEF+ZunPBfDj8ua4vcZeucHQbwP/+w7e7b6fuqC3x3rcduepw/tm8Xh21QHXDl2HLsZf+Vu/yW9+c0WtB/fbFNGMptBgzwaU0CpXh3zS6B40YzmlMPymsyCcnCjaIYicoptwNDJZzWxr0PKadLKCjMzMe0XE6b1GYbKDzyYcEqYhCXzZGmICHdrwD5VEeNiSkMGIqGqYtTCMHtn6qYROfiNgmuahD5M907eOWGdJYbacWvDO75aFvkYx8y7DXTJEEw+tEfbZQh/yDml04W5bYN7NOj9wyqEf787dory46/zwl06URfnobsG8s6mjOGimD9P1zQRLwjmlyETvOmBoT0NeNyGS9mVZmto5buHklYIhRe174d8MdPjV9nGsmtjlih3DvCN6WAEmjWJv0j1w5chlI2Bbp5shKSNNOZ0WFo1ie2/CpVZc436y0ZDVXajWMMucSsb0hCXhoW2jcO7kU6wMQzPeeRi6/8lAagiV9V5pFdZqfN4aL3vnfjPut7FK6bDWxsPFWevoeu6Oag53rCXonncltJLqkdJYYvVbSkal0If7l6lgJrgUjHD5eqidf/hJ51e/8ZJNXo8R7xIHnkv+br0u3jXDf3az6/cosq/w348t+AXcbi/Em2bNI9792sRwuFC3f3/qO9/2/+92hn4q83/j1oT/9ie+yTdeXTHh2fk4s5i1K/fbVX8mczWfnlzxY7YzuydzzmEfJw03KJbp9w6+sK3sGVNKwWfes56sj1ynjhnmMds/58JZ8+6gtIuwHSbefYUxMqvZ8SkimF/QFMdLiZb/+VlVZV3X/f+thdDbtm27MNlc2s9jrLU+es0sssSLJ770YuGjD8788J3RLbFJRc6OZueUhSzGixOIPVDtxG9+es+37gPLrxuYKRfvNOyRr+lDrztdcJ7XHIejKNe8dx937UrIPw99olLK3sk6x+pY/znem6rRfbtqFM3ndTmdlTKM261n6iZcHiq9watLQEatOp8/NF7Vzv1aWS8NNwVPXGrmflUeaqe6PPK23Vajd2ieuGyJzy6wdaVVZb04vaX4vpqxbaGvcS2WZeGUhA/PnQ/PnZQcZCOXq8ewUPZzPafCqiF1XCV8Z3sDfAT7FD+9d7766o6f/cr9a4/VU7Hiu0n83vaZozvcu+7/+Fy99/F8UTD57+Hzb4R2jhPG28bifd73HGRzy6g5Yv4TZ7vdx77sPuxSXfn4Q+VP/es/xMcfDnGuFvv59uWBstxFoUtlFPyERIV0Zu1tl661wRk2c7Jt9LRgrvgocPYe2VkdcrPLKWRgW2s0E4oWPt8ue+H5xfnMZYsluzKCjEMZGelxWTy7Zbd2FS87mje7O/1BsOR8uBRqb4PnHA5Z0/RDRXCvfFSUc3JMF771MIIqibXPxMDRPUjG+Z3PCyFblqmEDEIiRMSMxulcWGRlXRMvN6PridJ7uDBJwx4CthA/0Dh9UPCak7QELbMZtB5GIzKZRJ08TLx9FDdRCV/RUTie7CCRGcCdasoyDEDcQyu/qLJ6DwOSCaXUzrnMqxBF+tx9Twy2YRw/O1p7D90hM4sCpcS9UzQFtGW6rxC2we9PFJLEWMq4nk06ZtNAO1O3AR31IaXAddKuY3Vm1qLb1yvnU7kmboPOuLlyVqV4R5fCehmevtkea+OL02f2azHhVROyhh7QNz478//88jd30bo5Gd5myLf1vCOWfvssP2X48a5x9fZ7niOS3OL48zveBZP/vgzyb8PAj/rux0D6pu95Z1z9qcLK8QY5VNCPXa5P3SA7/1wfN4Idg/2P/GDhT/7BHyCfNR5CEbopbberi6Bae+dLKJ8j9B6NUOdcaFvdM6NFh3LgoPjZVveGpGwa7eJ15e7FidruUSm8Gi32syD4KAMamWqSKPRF236PLlW5eroao8Xf2MekWVjkfXZ/QWUhvzDUhDomJdxCWiAlSPG9Sw4IKOz8hOYLa71nKWWncxYrvLJ77lLosmS9yiy0wV3PEsfsBCPDLxcoZ3pTHrzhHQoby7KwtYbJiQXloQe+rVx58M2uBivugcPt91GKQqqIUKbxdncYHZei4KYYfW8uMndkWPrlPmidPrT+RYBgSLnpvqpLqSMU7lvl47HvZiCjRrCNoNha23ViXIfO0GacNXOh01Dwcc3GvLwkoyTfM+s+oKM+koQqwQAqmyAmlMVYVXgh19VbVcg9mszcjFMZ0htDLkEkPnua/gLj/mmEMBlEz0cVx1okNq21WDGelV7DG/YrF+Fv/uInbP36PN3GgXdthHxSpFCfTgK/F/mDN33/kGf4/im83m7PqbfB89j98bVHGfQ7YPJvKq68y3YMfrcw0fH34/fccmWfes+vfdv5X/7OZ3hf9uzI3fEkMLsTB7zyUvt+c05xqp4EOZVr85EqTqP1lVIynkP/PN05nhvuEpmZZdzCzq6gLBoaOrPwdsySgFBdlMp9vYpgmYZGyjzHmenPgHixhpcwp66D5nh0MppZT2sherWunZeXymbCpTs13e+FzDlmvQlCAS9xDh7mHr0JWo3FlW3bdnilbiAs1M14VVdKZy/MPjoGOxQqhzDaEW6aEMzM0I/QzG2dSDQKuPN6nuTKVZ/3kIhgRdnE2LhCcMd9zqJ5b0qrQ2NdPAzf/aqOOMf/CFvlDotHIfhBg64pGho4qlEcP5019GQ4xc+ElA4Fy9xj1VKKspxj8hURNDVSvgqvrTQqho8Gtjw57j18eLOmR+d3HIfbe2KeW82CDdLB1y7wN3/1ZXDhD8/6bfL2HCRyhByP99Pta8fXv1cE4k3b+yTnbw3yIvI7ReT/FJF/ICI/LyL/8Xj9B0Xk/xCRXxz/fnm8LiLyF0Xkl0TkZ0TkXzns60+P9/+iiPzpdz3I5wZ07PNwMlGYOL7nqeB9KxV6DLTAs96u73IMx4Lp8bU53z6SKr0p0txu+34PWjrz9bkf9cbPf6Px137qE17VNdT7PIy03SKrrD343yktJAXJQk5hAVhI6BYG3KYhFCXDL2cbHqGqysMmNAd9IWFMUYVtdVqDacpQxSkpkVV30+8ysujLMAXXBLU3JF1ZH9Y6i4bU8HxAk0RBb17PfsnoSXYZ5CzHB94RicJvt8hwFlVoI2B3QXQJQxI2ThrOWVuttA70kNSqFq5CLhkk0VlC057omr5LZQQS2DzRutJtQDV9dvZCaKyHa5bi0Qks11VZ7Y3uRnMlSRSf56QiIpGF94DvkjpdrzWGnBLalN6M2hoMXF6zkpeMiAdWLk42R3r4uCKVD88eTXDtceFuGoabGZaUrsKqwsve6FaR3pAlmpy6x4SGGZjhg6tf3aII2w1v7KwZTWEInlJYIHqK7lkssRK0zrMI51wQi2J63RzRhR7LE/qQ7/DWo3kuKX1JtN5jLIdqprvTzJlhTcxpLvzGp52/9aufsa7RRLjXkfBH8Ojts3rcjn4Ix/fNjvpbyGaPKwMCet8s/q1BXN99h++SyTfgP3X33wf8IeA/EpHfB/xnwI+7++8Bfnz8H+DfJgy8fw/w54C/BDEpAH8B+IPAvwb8hTkxvG17KtjeBmZ4PcDeYuivBfvjQA6MbWqC3LJ53nQ874rl3wbqqTt+NPc+bqHnHsvJ28aL4wSRxPiHX135338GPugXXqjyA4uTdUVt44OUcBtUOe8oRmoefOZx/OtaWT0YHS3BpWe6Ca5Bhaktug9dEzUl/Kz4i9AL781YL40Ty64NPifXdV1xgReja1TE0dMd3YNbn5UwzPASRs5muMiOzSMVdSN5hhbmdK4hRKbm5NMSDCVzluToNCCR4Lovy4ITzCK1jg+PUNGOeCh5rhpm1pfmbJdEd2PbKvWyxbVdMjmB9aFNzlWmofpKHXIOXRzTuAen0mHvgUsXTeEgpULOCVXZ/XsDx1e6CVvvJA29mtuMNbp+HdMObngzxALPX7uz3Ye7UhmGHq10PEW2HGp1ORQ2R+A1+hjbuN+19icb85aUubQKS+Z8foFIoqKAoZKpZmw99O/JhZ5jNvdDwlVrpQus3TExajNSa4hGkV8tVmnbuBb2sCLSKTlRckJEMVXSYIK1i1JyrKpWBuXTPIL4/9/e2cXadl13/TfmnGvtfa/t2tdJakVJ2sb9oOQhaq0IBbAKAuG0kcBFqlCearVIlfiQ6AMPgUqoPPAAEn1AIKqiFqWoooW0qHmABhcigQJNGhI7H42cOK7zVcfOh319ffc+a6055+BhzLnWOvvsfc6+N5fccw57SEdn7bnXx5x7zTXWmOPj/3eZRKYX5ea64X998TVeW5uC36YT5lWs8+dzH0t8vgrd1o7IybZvQzb7v4+cqeRV9QVV/XjZvgF8FngT8DjwvrLb+4CfLNuPA7+uJn8APCAibwTeBTypqt9S1ZeBJ4Ef37ej+/xA25ZL+wZDnDiU47myu655Kz/w3GWx+dDOrYNty8S5Ut8832abqvL0l6/ze58zLPn5EjwWv3kNyIkIGhJuAeoFLZkHoxsgeXyYMjq6rhv7WHO2zUpxLJZ+dC0Mw0BOE+Z4vV5KiZuxp89pdOfMXQW9pjGDpFrntc/OOeNLJZ74vVJKo1tEREDDeF5VozusfRYxK3SeQ1371kSliXrMHTD6szPIUKw/6YlpNboIbIwO8COM8Xz16L1Hgn03YDnhgMHzusltMH8pbuLdz10fm/nvbduaFe+cQU84q4+IpZJasze0xQpJkQ2ArnXeOAbygpya6XcN/tjvVTOw6vVSN7Barca5m3MecXaapqFPkb5Y1l4jjUzjmo9F1RixpAlTZXSYZRNpxrXNtNKbHWeuL0Hc0Ym+VldYzfq5fhT56Bev88r6JC77MYPpNp7zbQZZPeZO6Y1t1znt/LvklnzyIvJ9wI8CHwEeUtUXyldfAx4q228Cvjw77CulbVf7tuv8nIh8TEQ+Nrad8fts84Xt8q9tuZ4tp86w0LdNlF1tm35/OL5kO+ajny/3dHIXnUC3yzriX2z6EUUET+J/f+4b/OenV3RpDThQZdFOEAOGGOm5kh0xG4a6wzJmpCppl/CCkXKLZbz0mgookwUCk0YLcGHZL2HhkKD4ZOTikA0a2AnL4AnSoupxLuDVk5KRf2cMomDMnZ9ZRAsVc/80Vs0aY8QZqINR+bmMaCK4YHDJFZrCGU6NLeE92QuUlxLZLEUvLUqg8UtW2bFWU4ZHko2o3Df0XWa5NL+0UyFLwpVUQ00DUTtwDRIExNxjTVhYXr8TcnElgVVddn1B+XTTC2eeHtkVbtWkeXQlxGxQCCkb9r+SCaFBxMY4xGjuE01mIStoIVLXaFj8IuaCa3CliAxwLSIdV5aRtk0FclpIOpBVCCitK7ERtVqAIIE2NAWIzkEh8G7FkUpmT8gQCim3rXQySYzWMgoEL4gqbfBostURavNrcA4ngeg9R84SCAzF0+bE0gtN60gkgnhQ+50bbz78piQOxCzcjMKHv9Dxws0er930rMhxN81cR+xrEJ71/aYi3qWUT1PW2zwV9ZhbVfR7K3kRuRf4beDnVfXVjQ7V2XxHRFV/RVXfoarvKNc+1XVS3+T7LmW2WcGbx9TPc6WzbZ/NdKd6rtP6vDmpTgRY0WN92nZT5+efj0FV+fDzN/jgJzIqx5mYWhdoXcFm8UJ0cKSRoWSXhMYCpPMX1RhwaoMtwzHXyCJMFqABSIFbtviQcdKWPHHGTJ7RStUp77ta/NvunYiwbuWYFYe25NQgzlL/gr+C5sAwDFt/DxGDBg7RAsxrjJovqZFWdJo4yhGnjGBWqsqA/Ubee26kjItmLY/sWC6yvGoY9Vk7EMu1ryuQzftV28cVnDHjHbPak4MrboKamOO6zOdgKKQiQz6eDz/PjwfLp5/Pi7pPfbF0XUdy9mJpmyXOhXFFsBBPio6ht3MtxdNqIesQRoyaajlvWp3zqt651Z9jA9IdmwNzHti+74/NY1XLJhrKam0dYciWRVP/6vzrNY1gd9dXPU8+N3B9be6obc/e5lzbDOh+u7LtOrv22Xa9s1YDd9RdUy7YYAr+N1T1d0rzi8UNQ/n/Umn/KvCW2eFvLm272s8UVd0aaJjDfM7/RsW/A7D/xLnn59yYsNvgBbbtv2/7XKoCO7byEEYe2E3Lf1sAd5tVH3Lk6a+8xu994gZd39N5TxwsSOVbK+RxviEUEhBRGBzE5FnFiG89YRFwKFEjEhoCaiiBknFGM0QQS52MCn2KdHEgB4juyAK+0YgpQmjHpb1zBmOgOrEHafY4MfLtOoaFd/ho0MYqHr8wgud+cAzREC1rMdGVtrX8aAy8i0qALi05ppKnnkoQ2nB3wObPTTEf8c2jm+M9uadZEIdML8LQZ/oQcY0vufCGLR97X/hTW4iObn2Ed+DECDlIeYwr5Jxp8VZJKgJhwc0bxmgk3uGCWdkxJcsqUcuVd97jQzC7UyxgrRQIgWyFXMZA1ZDFESTgRcnOiF5wkCnXb1tkYcQhkg3tM6vHR8/19ZqcI0oiuEx0K5JLZC/02bJxjjShTgDDyNeY8OIs86mQgzvnbNXEpDBj6kkx0DrBhQGh4YpvxnlvcyfjUzO+OLyCywY4F/EMYpDAeBAyrVhWl1NYLpcFlwlWmnnulcyHv3TE0VGP00wqOEDVgj+RoVTjXjO5FQV6lpwwzmYr9Tks+qZsazsrUWOX7JNdI8CvAp9V1V+affUB4Imy/QTwu7P2nxaTdwLXi1vng8BjInJNLOD6WGnbS7YuWzYi2vNt1eOY8PVHrTd23+vcruzrJprvPw961e9PSxXdvM78RRc18skvrXn/Hx7h1j0SFAZDOrRl/pokxrQkWWnEMbgM3mgGrw8DXjyDQp8N18TrwJphdCcogDe42YULpaTdHnga837F9cDQJ4IT2uDBeWLq8UFGTk4flMgAeSA0DucpON8FOCorrlp1csR6gJgbc59IHtmpQvCIKz56tzRo28LClMRenDVnXaIjJqGp+d5tawrWCX3saLz5uLN6hgjrFMlB0CBo9kQXDGKhZCtVWIKIQSkHL7hoOeYL8UhwNAoae4J2XHvwKinHYz5554yIwmXFLRpyVnJWc9ypkXJktNCb2wsi+MLiJRnNE9CWZCPTaMXjw4KYoO9hPWQ0lCBuUlJjRN0FZIIhehpdklAWTUEPjQnnC9lMTizahixCxlL9nYOYh3EVk9KAS4KKEchLtKInHyJNK6youPHTHM8hHosBgEFQiA+EbFDBohFJxqO78vabHa0GNDi6Xnnx5Ss8/ScdN1Y9pP6Yz76uSjd955vG3DG3b1XGG4r6rGdyLidW+jK5jE5L7qj3cfPYauzeymrjzGIoEXkU+J/Ap2AsnvuHmF/+PwDfA3wR+Buq+q3yUviXWFB1BfyMqn6snOtny7EA/0RV/+2ZHdyjGOo010iVvblezzj3rmtNAb/jed/zmzzPYd4811kuqdOO2cYoNV7TL/iBh67wF/90wxvuE/rUkomkIdG7llBcLmsUkrl2VuvIte9q8QlWxRL1IiyDUeT5SgyhcKQdmsOIOZ90/lAJ0hclhvn2Ox0Kt6uY9ahK0ywYdDDo3FgLqJIVGGkhHlFTdjklNBdLsDEi8lDcTQllZHDKjJk0QU2RDFjmjgVsM64JOM1jMZSqVfdqAE9DTyVC8ebXdgak1biG1CUIppT61RE5uIL0OHfVGCBYSomrrilB54wvlmxGLcySM20oyIk5WcaIUzQmC6yWudtrovWBWInkvUMKFZ9Ua7SkluacSiWwpc5Uhef8tMpVDJphRBjVTOsX1o8gBI3E7NCq6ERHZdkPkSveABVuqtImSDWTJycWrmWVekiORgx51M9gL5palFVy9htV1Ae6rmPhixtPIXuhxZi6MpGcjLXJe09Sz5CVLnqef6Xnj77+Kn0Hk5qa5Kzipm3P36bO2EfPnHXeasyd9qzX/U7rW91H/3+oeN1V8rvnuaf0KXfrN/B2ZF9lfuZ56lJPONUtVX+7N1yFxx+5xgP3t/RBkGgZNbGAdUUrgaTrOrPq1crFQ+NHHPS2bUc8d8t+CWiFBlZIhEImXYKJuWRrFNgCrzA0nqakF1arxCEjFECFxXU54SUQnQFapWjohG1ZfHbZ44rronXF966ZPgnSBlarFctlIDtjsJK+QCTXqsRsBTkD0BCOxQ0U40k9Sg7nMz4pyU3ZHzljAd8QiDnjYiZ5YZEyA8F4RKNl1Eg5xpcq1f5oGLN6ejIhy0g6LSWw6lwGbUalighCRghldWrAc9WnbYia4GNG3QRFML78SwVocB4lgxqhd06BxncsJTA4pRsSIgXJUjszWrKRt4yWcAoF+bQgjmaI1aiRhKQGDVYMdjW0RiEILJriGhQL/IaxsrQEm4eAcza3euw3bwQGUZZuKmhLkul1AG0Zos2X514e+PzXV2Ns5hj0gMiYrFDb5tWq1gfdrlxnz9i+su0Zrqu1OUbTLndM+SHP9DjUvl5qJT+3YmH7jdh24zaP31XGvGmF77p5u25oXQqe9kaev9V33vgNl87mRMVNvr2sGSdu63WjC1wLjr/6jpYHX3cVlxy9JnyBBEgxjJgfMUbu9S1Rc6l5yYYVkw0VEhhT2ZwUjs8MCY9XYSj8mKu+gJBJotUWHQwJsmlKIVQBRIs5QzlPP1jhVp96mmjKO6n57bObQL5EhCYbOcdRLumJkpHecuHt/vVk15h6TJYtVK3tFBUfEsk5XLLK2xEsjIxo5iiaguxECTN/bowZX4gyGrGKzLXLLBWya4k5mhtDhKGMUXNlwJJRQefgCFno1Mi7U0o4b8VQ4npEjAovZSPBjoPdb+cCkhQtijbGSPSOVoXWh+Kuy8eURkoJCR5JxqWLDCw8NNmuET30MeMx008xAAAP40lEQVSDKfOhK9y2pVDKLHnDDLI5VVIzc0KlGdtezYn7xJGbSMgYWYlzONLo+hh0wsZxWgH1zN/uXCFJiRZXEJGRrCXl14h6lVWXScm4Cf741Z5nXlyNMR44GacS5TjkgCrCLDC9Q01uw6vZut+euuE0GZ9pykt9j+tdKiU/JwyB7db77SylYDdWxVy5bma/bDvHPv61W+3f8aX/5B+s1bKbSn5z/83rOwAPf+3t1/iBNy+MCxXj2cwYal/WYaS2cyLEYQKTmnhIZbK4yr0YOsNyCSpWWQhj5sXIA6uKjw6cp2ncmOcuwZMxN8V66Llv4VknKTC+ys2C9e4RxC8KebdHSy67ZmEYciGtEK5fv87rH7jfBh488aizlwkKEtEeaA3nPqI0JdMoqYwMVcNgAdsK7/XgMvBqAdpK3qxDYgLxJXhsVbzDMNCEheWOByNPt9/elGJWIwGp2SV1TtSZkXMlzU6EUDBvnDO4ZjBY38IMFUodgCsuDyNx14LDP0EpkAt+EZkgBpPQxYHQltVJZ2NsF4FBYb0ybHtxhYO3z4biKVMMoa7mTGmbpR1cpM+WSinBfPyNgHPG/RrzNH/aAtXgg41nEKvM9t7T9z3Lwq+r3rKnGCyeEELA5YFVEp5/NfPsi68abk81dNATK9tNvua5oVCfjRMu0D0MxBPbetLYrCsJ4ExC712AZ/Nr1f0qq9ylUfL7WMXbxMvEqL7j3Hsp3m3IcLcr2xTxfGKdZtWfJtX1tHnOzX0AFjge/VNL3va9DaFZ8lrqQdvx+CGZFdYLXHVmpeVsKIqVhATAIzhv2Ci5vOScWsXpYKY9roCODWoYJk47UjLrcdE2dNLTZj+6SwBL6VTL8zZKQHsZJO9ZtIHuqAbNpkBz6zyrzrI+eqcslw1IJBXQNhkMAdIVxbkQo1BMDmJ5iUeMMGSdJu5Vh6Apc/8DAzdWV0o2BoSCee98JKeAcxklHCPkBmh8osPy+GumjVOH0uNdM708y/RyYeJb7Yt/PlaGomwctq684Cv+kDpjb5rPMYcgmM87qIyrBJGKF+NHyIicFaRDYgmUjvMzIW2g1akS1gclDoAz7trslaQco590YqieKSXuaRUZWnqfDR8+RpwKS18qmhu7ni9FXCKCpFhoKBtW6+JqQuxlLsJ6SHzmpYGv31xNL0mZxn7aM7DteajWvRM3Ks/NZ3SuA04YXxvf7fK53ylXbZVLq+R3KcKtynPLm3V23ttWqNvOVfuwef6zjruVa29aGZvXPCtldDouEAI8/N1LHn37vbSFVG8M6AnIkBicsMSszuSgwYKXFK7Opvh4c/LHlLwoBmpW3TepkIEks9xccRFoEBYeZFDWOq0YOhKogzRZSGA599k1KJ351J35hzUY3d4gQjM4OrF0zeWyIbiCoVIoDqtl3fiA6OQjzjnjm4CLVkRl10vc41s6D61XhljYsNSyPmpVbkWKdLM035q22KceBkf2033yeJQeJ2Hc1zEFIl2x5odhoBelIUypf04hTcHtnM0PHzaCvs5ZwVhPNsq/lGibQLV5fHDkWDH9YRiMfKZKaBTnMsm5MZuHIdG0hRBbCxSyOI56W7kplqWUU4crL4Glj7Tcw5qBoawKY+xZuNas9lIAppJHuGUVy/MfehlntCRQel7ohOe+2fH1mxGvUzbRPOC/j2zue1pixuYz9+0aY/scs49OuXRKvmwfV/R6cik2Ow7Yvtza5qK51ZXCrfLH7mNVzH3t461T89HVsZy1qtnc3pVX64q/87u/6wp/4YcWPPg6j8/mwsk5s8BxFCMixmLUoTRqS88BS0HxOhUqxWLZNt4CrVZxWaysLPhQxpWFVksqp2aWC2NkEhqURFcZx+exhWKleidooXezyt1ZlkrO4B0+ZwYNSLl2zfGrv2lGC09tVbBxQjz0nqMbR4QrAfWC18kNlzIINeYSwRXYgAoDnZUjzdwjASnHDGI++IYMKvQeQgF3a1zCSVvcMoFEwkUxX3rwVtGrU/AtuNlyPWeiNEi9uWIBU4MtmM19pmIkcxnJ6DKQEvdWBnLyaG4s7dAJPuSJMlHsxVizqe7x9lJ0ziz1QT25sE5lxbKRmhq8tniFQQ4rubf5G8hTdWrpY/SZvqScHnU9Q25oRHBWrYHzmS/fhM9/beC1UtNQkw7qHIDps32YnqltPA1zPXC7Rtk+x00B+5PegM2Mu81zA1uf7dq+j5K/UFDD49JsQ8HBydzVXT/c5vH1HJttZx276SfbJae9bOayGeSt/wU50b6t7/W7zZTNXaK5IUXPCy+/xgc+cZ0XXurH7yo8b0TJwXLgGxX8MPGM1kpMswSPA1GpWzAUSNfKEzv6hzF/Mm1AWJBzOY8bRvrApmlGbJd6rZqe6skEURaLgLhEyp0RQBR/eL1mtXLXfTq2lJ7z0tZr1WrWmFYslhNj1jBY7nfdv7JvGVOSpxJH1yX6ksTgeo4CrFzBiylwyskLRzkSh6nCd96vOUZLj8UXKt6+c44UjGWqXmteKZqiBSobFVBvgduZpV9ZpnqdKl6ru4t8Zbp2cDStYQW1ziMpE2c6RFU5yrCKmfV6bZ/7qd+hYLrPjZEuRVZ9Z1wBMpTsq8yaxJFYpWoUe+lHHOs+MuSGtgRmsw4gA1/4xnWe/spNVuvV2Jc6vm1Sx7+pB7YoyWPtZz3P265zVtsxvKcN2dW+7Zy3a5BfCEt+s0ioyqZle7tv2m2uns1zbLv+Wcfe7o05LZgzXmsWzNmUTcybfcbm8fz577+PH3qrH8vr++BJ656rV1o0Jl6tBCGleCoXKysOU8GIV2NIsnMnFjjWXcIv7ZxNNrdQKx6G4oK54mmKL/soG3lJTKCDYedoYiTWFu9oQx6rgnPOdGRyKsE/LFvFUBWFLEqMCUTwjRXS1N8m58yiaYmliCiXaw8FPjZgwcXsDE5Ai2Xd52xWZrHCklA4cl15iVj7UOAeTMEJQsK5hqFPNC0ECSPcgBMhJQ8hk1Ws6rMp109zX6+M22M1bXCoU5bqSE4t/RVjxVK1SuBWLPBZFb6UlwOYC6ppGiN6Z6qLSJIR105zWGf+aqnk3Q6RylrlwDsCjNlYMIG+jfzABhRlaJMZ8/EjdCVA70VYqOKWmXikfPwbkT95JaK5G+f8bSu8jWerng+1jJvNVOrTVsmnrfy3Pftz3/3cKDvhZp7ps2oM7DJEL427ZjO7pkrArKQdxwG7J8O+7pnb9bvV7BeR01Ow9mk/RvtXqiK35ckfW7JuPAjb/PUn/JIu8D33O/7cD1/l9dfuZZ0Gli4Yvsmg3JSEF4OQlSEZUFQJ6rXtktwNdMFYlUKBlNUc0KAMQweYom/VgoYd4DpHlzMLn1B1dIMSiiKrvLNJnLFMFbfMMjR2boEkRjdniksxNqcGp5leLd8+pQRqrp1mKZZ+WBUllt2RnZSsFMN6NyA1s+IHelL0oJ4uR5rGmLIs9dGOcQVtcr4KoxRnuYJxLiIGpRyVphW8d6QEOZty60v1sSs31xeGriEnUl9JVjxXs/naa2wl9QlCLlyvzvLQ3aRAYraXxZXGkcs8cBmQzNALyyvWljRyj1twM/aF0nAgSRhxdELracRzs89j1pGqxQS8WgptQ8Q1LdARh2mlVy3WJgvrLGSxAH4uWTrLthn3WQThSit86ZuZp156jb7vSVsUwDG35kzmLs+93Cl7ZMdtk10plvs+0/XYzed3Z5ZOkfnq47Io+RvAM3e7H3dIXg9842534g7IZRkHHMZyXuUwlrPle1X1DWftFP4fXPhOyzNa0CgvuojIxy7DWC7LOOAwlvMqh7HcOblQgdeDHOQgBznIrclByR/kIAc5yCWWi6Dkf+Vud+AOymUZy2UZBxzGcl7lMJY7JOc+8HqQgxzkIAe5fbkIlvxBDnKQgxzkNuWg5A9ykIMc5BLLuVXyIvLjIvKMiDwrIu+92/3ZR0TkeRH5lIg8JSKVDetBEXlSRD5f/l8r7SIi/6KM75Mi8shd7vuvichLIvLpWdst911Enij7f15EnjhHY/lFEflquTdPici7Z9/9gzKWZ0TkXbP2uzoHReQtIvIhEfkjEfmMiPy90n7h7sspY7mI92UpIh8VkafLWP5xaX+riHyk9Ou3RKQt7Yvy+dny/fedNcY7KnN8h/PyB3jgC8DDQAs8Dbztbvdrj34/D7x+o+2fAe8t2+8F/mnZfjfwXzDcq3cCH7nLff8x4BHg07fbd+BB4Lny/1rZvnZOxvKLwN/fsu/byvxaAG8t886fhzkIvBF4pGzfB3yu9PfC3ZdTxnIR74sA95btBqNCfSdGh/qe0v7LwN8q238b+OWy/R7gt04b453u73m15P8M8KyqPqeqPfCbwON3uU+3K48D7yvb7wN+ctb+62ryB8ADIvLGu9FBAFX9H8C3Nppvte/vAp5U1W+p6svAkxjX73dUdoxllzwO/Kaqdqr6x8Cz2Py763NQVV9Q1Y+X7RvAZ4E3cQHvyylj2SXn+b6oqr5WPjblT4G/BLy/tG/el3q/3g/8ZRERdo/xjsp5VfJvAr48+/wVTp8Q50UU+K8i8n9E5OdK20Oq+kLZ/hrwUNm+CGO81b6f9zH93eLG+LXq4uCCjKUs8X8Usxov9H3ZGAtcwPsiIl5EngJewl6aXwBeUdW4pV9jn8v314HX8R0ay3lV8hdVHlXVR4CfAP6OiPzY/Eu1NdqFzFm9yH0v8q+B7wd+BHgB+Od3tzv7i4jcC/w28POq+ur8u4t2X7aM5ULeF1VNqvojwJsx6/uH73KXdsp5VfJfBd4y+/zm0nauRVW/Wv6/BPwn7Oa/WN0w5f9LZfeLMMZb7fu5HZOqvlgezAz8G6Zl8bkei4g0mFL8DVX9ndJ8Ie/LtrFc1PtSRVVfAT4E/FnMPVbxwOb9Gvtcvr8f+CbfobGcVyX/h8APlmh1iwUrPnCX+3SqiMg9InJf3QYeAz6N9btmMzwB/G7Z/gDw0yUj4p3A9dkS/LzIrfb9g8BjInKtLLsfK213XTbiHX8duzdgY3lPyYB4K/CDwEc5B3Ow+G1/Ffisqv7S7KsLd192jeWC3pc3iMgDZfsK8FewGMOHgJ8qu23el3q/fgr472UFtmuMd1a+E9Ho2/nDMgU+h/m6fuFu92eP/j6MRcqfBj5T+4z53v4b8Hng94EHdYrQ/6syvk8B77jL/f/32HJ5wHyDf/N2+g78LBZAehb4mXM0ln9X+vpJ7OF642z/XyhjeQb4ifMyB4FHMVfMJ4Gnyt+7L+J9OWUsF/G+vB34ROnzp4F/VNofxpT0s8B/BBalfVk+P1u+f/isMd7JvwOswUEOcpCDXGI5r+6agxzkIAc5yB2Qg5I/yEEOcpBLLAclf5CDHOQgl1gOSv4gBznIQS6xHJT8QQ5ykINcYjko+YMc5CAHucRyUPIHOchBDnKJ5f8C85QZVpoJMFYAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(image)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ " img1 = tf.image.resize_image_with_crop_or_pad(image, 256, 256) " ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "img1" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(img1)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "W0721 17:07:39.316631 139965843011328 image.py:663] Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(tf.image.resize_images(image, [256, 256], method=0))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "img2 = tf.image.resize_images(image, [256, 256], method=0)\n", "resized = np.asarray(img2, dtype='uint8')\n", "plt.imshow(resized)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "img3 = tf.image.random_crop(image, [256, 256, 3])\n", "plt.imshow(img3)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "img = tf.image.resize_images(image, [256, 256], method=0)\n", "img = tf.random_crop(img, [224, 224, 3])\n", "img = tf.image.random_flip_left_right(img)\n", "img = np.asarray(img, dtype='uint8')\n", "plt.imshow(img)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/blindness/keras/READEME.md ================================================ first start with kaggle kernel http://192.168.31.36:8888/notebooks/wenzheng/projects/kaggle/blindness/other/APTOS%202019_%20Keras%20Baseline.ipynb ================================================ FILE: projects/kaggle/blindness/keras/aug.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file aug.py # \author chenghuige # \date 2019-07-21 21:53:11.255995 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from imgaug import augmenters as iaa import imgaug as ia sometimes = lambda aug: iaa.Sometimes(0.5, aug) seq = iaa.Sequential( [ # apply the following augmenters to most images iaa.Fliplr(0.5), # horizontally flip 50% of all images iaa.Flipud(0.2), # vertically flip 20% of all images sometimes(iaa.Affine( scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis translate_percent={"x": (-0.1, 0.1), "y": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis) rotate=(-10, 10), # rotate by -45 to +45 degrees shear=(-5, 5), # shear by -16 to +16 degrees order=[0, 1], # use nearest neighbour or bilinear interpolation (fast) cval=(0, 255), # if mode is constant, use a cval between 0 and 255 mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples) )), # execute 0 to 5 of the following (less important) augmenters per image # don't execute all of them, as that would often be way too strong iaa.SomeOf((0, 5), [ sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation iaa.OneOf([ iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0 iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7 iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7 ]), iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images # search either for all edges or for directed edges, # blend the result with the original image using a blobby mask iaa.SimplexNoiseAlpha(iaa.OneOf([ iaa.EdgeDetect(alpha=(0.5, 1.0)), iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)), ])), iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images iaa.OneOf([ iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2), ]), iaa.Invert(0.01, per_channel=True), # invert color channels iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value) iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation # either change the brightness of the whole image (sometimes # per channel) or change the brightness of subareas iaa.OneOf([ iaa.Multiply((0.9, 1.1), per_channel=0.5), iaa.FrequencyNoiseAlpha( exponent=(-1, 0), first=iaa.Multiply((0.9, 1.1), per_channel=True), second=iaa.ContrastNormalization((0.9, 1.1)) ) ]), sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths) sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1))) ], random_order=True ) ], random_order=True) ================================================ FILE: projects/kaggle/blindness/keras/check.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file check.py # \author chenghuige # \date 2019-07-23 09:51:36.973744 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os ================================================ FILE: projects/kaggle/blindness/keras/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2019-07-21 22:03:51.198317 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os WORKERS = 12 CHANNEL = 3 SIZE = 300 NUM_CLASSES = 5 epochs = 50; #batch_size = 32 random_state = 2019 num_folds = 5 ================================================ FILE: projects/kaggle/blindness/keras/dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-21 21:52:09.914646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.utils import Sequence import numpy as np from aug import seq from sklearn.utils import shuffle import cv2 from config import * from multiprocessing import Manager #image_dict = {} # with out this if fit using multiprocess image_dict never add item image_dict = Manager().dict() class Dataset(Sequence): def __init__(self, image_filenames, labels, batch_size, is_train=True, mix=False, augment=False): self.image_filenames, self.labels = image_filenames, labels self.batch_size = batch_size self.is_train = is_train self.is_augment = augment if(self.is_train): self.on_epoch_end() self.is_mix = mix def __len__(self): return int(np.ceil(len(self.image_filenames) / float(self.batch_size))) def __getitem__(self, idx): batch_x = self.image_filenames[idx * self.batch_size:(idx + 1) * self.batch_size] batch_y = self.labels[idx * self.batch_size:(idx + 1) * self.batch_size] if(self.is_train): return self.train_generate(batch_x, batch_y) return self.valid_generate(batch_x, batch_y) def on_epoch_end(self): if(self.is_train): self.image_filenames, self.labels = shuffle(self.image_filenames, self.labels) else: pass def mix_up(self, x, y): lam = np.random.beta(0.2, 0.4) ori_index = np.arange(int(len(x))) index_array = np.arange(int(len(x))) np.random.shuffle(index_array) mixed_x = lam * x[ori_index] + (1 - lam) * x[index_array] mixed_y = lam * y[ori_index] + (1 - lam) * y[index_array] return mixed_x, mixed_y def train_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img if(self.is_augment): img = seq.augment_image(img) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) if(self.is_mix): batch_images, batch_y = self.mix_up(batch_images, batch_y) return batch_images, batch_y def get_images(self, indexes): image_names = [self.image_filenames.values[i] for i in indexes] imgs = [] for sample in image_names: if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/' + sample +'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img imgs.append(img) imgs = np.array(imgs, np.float32) / 255 return imgs def valid_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) return batch_images, batch_y ================================================ FILE: projects/kaggle/blindness/keras/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf from keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score, confusion_matrix from config import * import cv2 from gezi import SummaryWriter import gezi import seaborn as sns from io import BytesIO import matplotlib.pyplot as plt from dataset import image_dict def gen_confusion(y_true, y_pred, info=''): cm = confusion_matrix(y_true=y_true, y_pred=y_pred) cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis] fig, ax = plt.subplots() sns.heatmap(cm, annot=True) ax.set(ylabel='True label', xlabel='Predicted label,{}'.format(info)) s = BytesIO() plt.savefig(s, format='png', bbox_inches='tight') return s def to_str(scores): return ','.join(['{:.2f}'.format(x) for x in scores]) class Evaluator(Callback): def __init__(self, dir, validation_data=(), interval=1, loss_type='classification'): super(Callback, self).__init__() self.dir = dir self.interval = interval self.valid_generator, self.y_val = validation_data self.history = [] self.epoch = 0 self.loss_type = loss_type self.logger = SummaryWriter(self.dir) def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, workers=1, use_multiprocessing=False, verbose=1) #print(y_pred) #print('----------', self.y_val.shape, y_pred.shape) y_scores = y_pred if 'classification' in self.loss_type: if not 'ordinal' in self.loss_type: def flatten(y): return np.argmax(y, axis=1).reshape(-1) else: if not '2' in self.loss_type: def flatten(y): return np.sum(y > 0.5, axis=1).reshape(-1) - 1 else: def flatten(y): return np.sum(y > 0.5, axis=1).reshape(-1) y_true = flatten(self.y_val) y_pred = flatten(y_pred) else: #regression y_true = self.y_val.reshape(-1) y_pred = y_pred.reshape(-1) if not 'sigmoid2' in self.loss_type: def trans(x): return int(x + 0.5) # if x >= NUM_CLASSES: # return NUM_CLASSES - 1 # if x <= 0: # return 0 # return int(x) else: def trans(x): return int(x * 4.0 + 0.5) def trans2(x): return int(x * 4.0) y_true = np.array([trans2(x) for x in y_true]) y_pred = np.array([trans(x) for x in y_pred]) if 'classification' in self.loss_type: y_score = [] for scores, pred in zip(y_scores, y_pred): if not 'ordinal2' in self.loss_type: y_score.append(scores[pred]) else: y_score.append(scores[max(pred - 1, 0)]) y_score = np.array(y_score) else: y_score = y_scores.reshape(-1) score = cohen_kappa_score(y_true, y_pred, labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - kappa: %.6f \n" % (epoch + 1, score)) self.logger.scalar('kappa', score, epoch + 1) print('image_dict size', len(image_dict)) batch_idx = 0 batch_images, _ = self.valid_generator[batch_idx] idx = batch_idx * self.valid_generator.batch_size texts = [] timer = gezi.Timer('image/rand') indexes = [x + idx for x in range(20)] for i in range(len(indexes)): texts.append('id:{}\nlabel:{}\npred:{}\nscore:{:.3f}\nscores:{}'.format( self.valid_generator.image_filenames.values[indexes[i]], y_true[indexes[i]], y_pred[indexes[i]], y_score[indexes[i]], to_str(y_scores[indexes[i]]))) images = [cv2.cvtColor(img, cv2.COLOR_BGR2RGB) for img in self.valid_generator.get_images(indexes)] self.logger.image('rand', images, epoch + 1, texts) timer.print() # timer = gezi.Timer('image/confidence') # #print(y_score.shape, y_true.shape, y_pred.shape) # indexes = (- y_score * (y_true != y_pred)).argsort()[:20] # texts = [] # #print('---------------', indexes) # for i in range(len(indexes)): # texts.append('id:{}\nlabel:{}\npred:{}\nscore:{:.3f}\nscores:{}'.format( # self.valid_generator.image_filenames.values[indexes[i]], # y_true[indexes[i]], # y_pred[indexes[i]], # y_score[indexes[i]], # to_str(y_scores[indexes[i]]))) # images = [cv2.cvtColor(img, cv2.COLOR_BGR2RGB) for img in self.valid_generator.get_images(indexes)] # self.logger.image('confidence', images, epoch + 1, texts) # timer.print() timer = gezi.Timer('image/dist') indexes = (-abs(y_true - y_pred)).argsort()[:20] texts = [] for i in range(len(indexes)): texts.append('id:{}\nlabel:{}\npred:{}\nscore:{:.3f}\nscores:{}'.format( self.valid_generator.image_filenames.values[indexes[i]], y_true[indexes[i]], y_pred[indexes[i]], y_score[indexes[i]], to_str(y_scores[indexes[i]]))) images = [cv2.cvtColor(img, cv2.COLOR_BGR2RGB) for img in self.valid_generator.get_images(indexes)] self.logger.image('dist', images, epoch + 1, texts) timer.print() confusion = gen_confusion(y_true, y_pred, info='kappa:{:.4f}'.format(score)) self.logger.image('confusion', confusion, epoch + 1, bytes_input=True) self.history.append(score) if score >= max(self.history): timer = gezi.Timer('saving checkpoint with current best kappa:{:.4f}'.format(score)) self.model.save('{}/densenet_bestqwk.h5'.format(self.dir)) timer.print() ================================================ FILE: projects/kaggle/blindness/keras/evaluate2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from config import * class QWKEvaluation(Callback): def __init__(self, validation_data=(), interval=1): super(Callback, self).__init__() self.interval = interval self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') ================================================ FILE: projects/kaggle/blindness/keras/fake-infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file infer.py # \author chenghuige # \date 2019-07-23 09:24:50.235252 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd import numpy as np def hack_lb(test_preds): id_codes = np.load('../input/aptos2019/aptos2019-test/small_id_codes.npy', allow_pickle = True) small_ids_df = pd.DataFrame(id_codes, columns=["id_code"]) test_df = pd.read_csv("../input/aptos2019-blindness-detection/test.csv") sample_df = small_ids_df sample_df["diagnosis"] = test_preds sub = pd.merge(test_df, sample_df, on='id_code', how='left').fillna(0) sub["diagnosis"] = sub["diagnosis"].astype(int) return sub submit = pd.read_csv('../input/aptos2019-result/submission.csv') predicted = submit['diagnosis'] submit = hack_lb(predicted) submit.to_csv('submission.csv', index=False) submit.head() ================================================ FILE: projects/kaggle/blindness/keras/folds.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file folds.py # \author chenghuige # \date 2019-07-23 17:13:22.547651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from sklearn.model_selection import StratifiedKFold def get_train_valid(x, y, fold=0, num_folds=5, random_state=2019): skf = StratifiedKFold(n_splits=num_folds, random_state=random_state) train_index, valid_index = list(skf.split(x, y))[fold] return x[train_index], x[valid_index], y[train_index], y[valid_index] ================================================ FILE: projects/kaggle/blindness/keras/gen-folds.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-folds.py # \author chenghuige # \date 2019-07-23 17:19:00.621274 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import pandas as pd from sklearn.model_selection import StratifiedKFold from sklearn.utils import shuffle from config import * df = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') x = df['id_code'] y = df['diagnosis'] x, y = shuffle(x, y, random_state=random_state) skf = StratifiedKFold(n_splits=num_folds, random_state=random_state) for i, (_, valid_index) in enumerate(skf.split(x, y)): x_valid, y_valid = x[valid_index], y[valid_index] df = pd.DataFrame() df['id_code'] = x_valid df['diagnosis'] = y_valid result_file = '../input/train_{}.csv'.format(i) df.to_csv(result_file, index=False) ================================================ FILE: projects/kaggle/blindness/keras/infer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file infer.py # \author chenghuige # \date 2019-07-23 09:24:50.235252 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS import pandas as pd from tqdm import tqdm import cv2 from keras.models import load_model import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score, confusion_matrix # TODO can load all info like SIZE from saved model meta data ? SIZE = 300 NUM_CLASSES= 5 class Predictor(): def __init__(self, model, batch_size, predict_fn=None): self.predicted = [] self.inputs = [] self.model = model self.batch_size = batch_size self.predict_fn = predict_fn def _predict(self): self.inputs = np.array(self.inputs) if self.predict_fn: self.predicted += self.predict_fn(self.model, self.inputs) else: self.predicted += list(self.model.predict(self.inputs)) self.inputs = [] def add(self, x): self.inputs.append(x) if len(self.inputs) == self.batch_size: self._predict() def predict(self): if self.inputs: self._predict() return np.array(self.predicted) def hack_lb(test_preds): id_codes = np.load('../input/aptos2019/aptos2019-test/small_id_codes.npy', allow_pickle = True) small_ids_df = pd.DataFrame(id_codes, columns=["id_code"]) test_df = pd.read_csv("../input/aptos2019-blindness-detection/test.csv") sample_df = small_ids_df sample_df["diagnosis"] = test_preds sub = pd.merge(test_df, sample_df, on='id_code', how='left').fillna(0) sub["diagnosis"] = sub["diagnosis"].astype(int) return sub def main(_): if not FLAGS.valid: if not FLAGS.lb_only: submit = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') else: submit = pd.read_csv('../input/aptos2019/aptos2019-test/test.csv') else: submit = pd.read_csv('../input/aptos2019-blindness-detection/train_%d.csv' % FLAGS.fold) model_path = '../input/aptos2019/densenet_bestqwk.h5' if not FLAGS.model_path else FLAGS.model_path print('loading model from ', model_path) try: model = load_model(model_path) except Exception: # https://github.com/keras-team/keras/issues/5916 import loss model = load_model(model_path, custom_objects={'kappa_loss': loss.kappa_loss}) predict_fn = None if FLAGS.tta: def predict_fn_(model, X): # now only cosinder classification TODO score =((model.predict(X).ravel()*model.predict(X[:, ::-1, :, :]).ravel()*model.predict(X[:, ::-1, ::-1, :]).ravel()*model.predict(X[:, :, ::-1, :]).ravel())**0.25).reshape([-1, NUM_CLASSES]).tolist() return score predict_fn = predict_fn_ print('predict_fn', predict_fn) predictor = Predictor(model, FLAGS.batch_size, predict_fn) for name in tqdm(submit['id_code'].values, ascii=True): if not FLAGS.valid: path = os.path.join('../input/aptos2019-blindness-detection/test_images/', name + '.png') else: path = os.path.join('../input/aptos2019-blindness-detection/train_images/', name + '.png') image = cv2.imread(path) image = cv2.resize(image, (SIZE, SIZE)) image = image / 255 predictor.add(image) predicted = predictor.predict() ## classification predicted = np.array([np.argmax(x) for x in predicted]) ## ordinal classification #predicted = np.array([np.sum(x > 0.5, axis=-1) for x in predicted]) ## regression #predicted = np.array([int(x + 0.5) for x in predicted]) if not FLAGS.valid: if not FLAGS.lb_only: submit['diagnosis'] = predicted else: submit = hack_lb(predicted) else: submit['predict'] = predicted score = cohen_kappa_score(submit['diagnosis'].values, submit['predict'].values, labels=[0,1,2,3,4], weights='quadratic') print('kappa score for valid file', score) result_file = 'submission.csv' if FLAGS.model_path: dir = os.path.dirname(FLAGS.model_path) result_file = '{}/{}'.format(dir, result_file) submit.to_csv(result_file, index=False) submit.head() if __name__ == '__main__': flags.DEFINE_integer('batch_size', 128, '') flags.DEFINE_string('model_path', None, '') flags.DEFINE_bool('tta', False, '') flags.DEFINE_bool('optimize_kappa', False, '') flags.DEFINE_bool('valid', False, 'infer valid or infer test') flags.DEFINE_integer('fold', 0, '') flags.DEFINE_bool('lb_only', False, 'only consider lb score') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/keras/infer.sh ================================================ python ./infer.py --model_path $1 ================================================ FILE: projects/kaggle/blindness/keras/jupter.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Using TensorFlow backend.\n" ] } ], "source": [ "from __future__ import absolute_import\n", "from __future__ import division\n", "from __future__ import print_function\n", "\n", "import sys \n", "import os\n", "\n", "from absl import app as absl_app\n", "from absl import flags\n", "FLAGS = flags.FLAGS\n", "\n", "from keras.callbacks import ModelCheckpoint\n", "from keras import metrics\n", "from keras.optimizers import Adam \n", "\n", "# create callbacks list\n", "from keras.callbacks import (ModelCheckpoint, LearningRateScheduler,\n", " EarlyStopping, ReduceLROnPlateau,CSVLogger,\n", " TensorBoard)\n", "\n", "from keras.utils import to_categorical\n", "import keras\n", "\n", "import numpy as np\n", "import pandas as pd\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.utils import shuffle\n", "\n", "from config import * \n", "from dataset import Dataset\n", "from evaluate import QWKEvaluation\n", "from model import create_model\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "batch_size_ 24\n" ] } ], "source": [ "df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv')\n", "df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv')\n", "\n", "x = df_train['id_code']\n", "y = df_train['diagnosis']\n", "\n", "batch_size = 32\n", "\n", "x, y = shuffle(x, y, random_state=8)\n", "y = to_categorical(y, num_classes=NUM_CLASSES)\n", "train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=0.1,\n", " stratify=y, random_state=8)\n", "#---------- init\n", "train_data = Dataset(train_x, train_y, 128, is_train=True)\n", "batch_size_ = 24\n", "print('batch_size_', batch_size_)\n", "train_mixup = Dataset(train_x, train_y, batch_size_, is_train=True, mix=False, augment=True)\n", "valid_data = Dataset(valid_x, valid_y, batch_size, is_train=False)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING: Logging before flag parsing goes to stderr.\n", "W0722 20:54:07.297391 140406537910016 deprecation.py:323] From /home/gezi/py3env/lib/python3.6/site-packages/tensorflow/python/framework/op_def_library.py:263: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", "Instructions for updating:\n", "Colocations handled automatically by placer.\n", "W0722 20:54:25.478129 140406537910016 deprecation.py:506] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:3445: calling dropout (from tensorflow.python.ops.nn_ops) with keep_prob is deprecated and will be removed in a future version.\n", "Instructions for updating:\n", "Please use `rate` instead of `keep_prob`. Rate should be set to `rate = 1 - keep_prob`.\n" ] } ], "source": [ "# train step1, warm up model\n", "model = create_model(\n", "input_shape=(SIZE,SIZE,3), \n", "n_out=NUM_CLASSES)\n", "\n", "for layer in model.layers:\n", " layer.trainable = False\n", "\n", "for i in range(-3,0):\n", " model.layers[i].trainable = True\n", "\n", "model.compile(\n", "loss='categorical_crossentropy',\n", "optimizer=Adam(1e-3))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "12/12 [==============================] - 22s 2s/step\n" ] }, { "ename": "TypeError", "evalue": "bad argument type for built-in operation", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mqwk\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mqwk\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_epoch_end\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/mine/wenzheng/projects/kaggle/blindness/keras/evaluate.py\u001b[0m in \u001b[0;36mon_epoch_end\u001b[0;34m(self, epoch, logs)\u001b[0m\n\u001b[1;32m 63\u001b[0m \u001b[0mtexts\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'id:{} label:{} :predict:{}'\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalid_generator\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimage_filenames\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0midx\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mflatten\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0my_val\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0midx\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mflatten\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my_pred\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0midx\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 64\u001b[0m \u001b[0mimages\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcvtColor\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mCOLOR_BGR2RGB\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mimg\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mbatch_images\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;36m20\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 65\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlogger\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimage_summary\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'image'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mimages\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtexts\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 66\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 67\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"\\n epoch: %d - kappa: %.6f \\n\"\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mepoch\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mscore\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/mine/wenzheng/utils/gezi/summary.py\u001b[0m in \u001b[0;36mimage_summary\u001b[0;34m(self, tag, images, step, text)\u001b[0m\n\u001b[1;32m 46\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mimg\u001b[0m \u001b[0;32min\u001b[0m \u001b[0menumerate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimages\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 47\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mtext\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 48\u001b[0;31m \u001b[0mimg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mputText\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtext\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m30\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mFONT_HERSHEY_COMPLEX\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 49\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 50\u001b[0m \u001b[0;31m# Write the image to a string\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mTypeError\u001b[0m: bad argument type for built-in operation" ] } ], "source": [ "qwk = QWKEvaluation(validation_data=(valid_data, valid_y),\n", " batch_size=batch_size, interval=1) \n", "\n", "qwk.model = model\n", "qwk.on_epoch_end(0)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "import cv2" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "img = cv2.imread('../input/aptos2019-blindness-detection/train_images/000c1434d8d7.png')\n", "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plt.imshow(img)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "img = cv2.imread('../input/aptos2019-blindness-detection/train_images/000c1434d8d7.png')\n", "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", "plt.imshow(img)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "fig, ax = plt.subplots(nrows=1,ncols=1, figsize=(50,50))" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5,1,'abcdef')" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ax.set_title('abcdef', fontsize=40)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ax.imshow(img)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "valid_data.image_filenames[0]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "type(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "type(valid_data.image_filenames)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "train_x[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "valid_x[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "train_test_split?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "len(valid_x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "len(train_x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "x[:3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "valid_x[:3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "valid_x.values[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "x.values[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "x[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "valid_x[3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/blindness/keras/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2019-07-21 21:52:43.549005 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf # def earth_mover_loss(y_true, y_pred): # cdf_ytrue = tf.cumsum(y_true, axis=-1) # cdf_ypred = tf.cumsum(y_pred, axis=-1) # samplewise_emd = tf.sqrt(tf.reduce_mean(tf.square(tf.abs(cdf_ytrue - cdf_ypred)), axis=-1)) # return samplewise_emd import keras.backend as K from keras.losses import binary_crossentropy, categorical_crossentropy def earth_mover_loss(y_true, y_pred): cdf_ytrue = K.cumsum(y_true, axis=-1) cdf_ypred = K.cumsum(y_pred, axis=-1) samplewise_emd = K.sqrt(K.mean(K.square(K.abs(cdf_ytrue - cdf_ypred)), axis=-1)) return samplewise_emd # reference link: https://www.kaggle.com/christofhenkel/weighted-kappa-loss-for-keras-tensorflow #.. can no simple load def kappa_loss(y_true, y_pred, y_pow=2, eps=1e-12, N=5, bsize=32, name='kappa'): """A continuous differentiable approximation of discrete kappa loss. Args: y_pred: 2D tensor or array, [batch_size, num_classes] y_true: 2D tensor or array,[batch_size, num_classes] y_pow: int, e.g. y_pow=2 N: typically num_classes of the model bsize: batch_size of the training or validation ops eps: a float, prevents divide by zero name: Optional scope/name for op_scope. Returns: A tensor with the kappa loss.""" with tf.name_scope(name): y_true = tf.to_float(y_true) repeat_op = tf.to_float(tf.tile(tf.reshape(tf.range(0, N), [N, 1]), [1, N])) repeat_op_sq = tf.square((repeat_op - tf.transpose(repeat_op))) weights = repeat_op_sq / tf.to_float((N - 1) ** 2) pred_ = y_pred ** y_pow try: pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [-1, 1])) except Exception: pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [bsize, 1])) hist_rater_a = tf.reduce_sum(pred_norm, 0) hist_rater_b = tf.reduce_sum(y_true, 0) conf_mat = tf.matmul(tf.transpose(pred_norm), y_true) nom = tf.reduce_sum(weights * conf_mat) denom = tf.reduce_sum(weights * tf.matmul( tf.reshape(hist_rater_a, [N, 1]), tf.reshape(hist_rater_b, [1, N])) / tf.to_float(bsize)) return nom*0.5 / (denom + eps) + categorical_crossentropy(y_true, y_pred)*0.5 def get_loss(loss_type=None): if 'regression' in loss_type: if 'sigmoid2' in loss_type: return 'binary_crossentropy' if not 'mae' in loss_type: return 'mse' else: return 'mae' elif 'ordinal' in loss_type: return 'binary_crossentropy' elif 'earth' in loss_type: return earth_mover_loss else: # classification if 'kappa' in loss_type: return kappa_loss return 'categorical_crossentropy' ================================================ FILE: projects/kaggle/blindness/keras/lr.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file lr.py # \author chenghuige # \date 2019-07-23 20:02:43.001845 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os # https://www.dlology.com/blog/bag-of-tricks-for-image-classification-with-convolutional-neural-networks-in-keras/ import numpy as np from tensorflow import keras from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense from tensorflow.keras import backend as K class WarmUpLearningRateScheduler(keras.callbacks.Callback): """Warmup learning rate scheduler """ def __init__(self, warmup_batches, init_lr, verbose=0): """Constructor for warmup learning rate scheduler Arguments: warmup_batches {int} -- Number of batch for warmup. init_lr {float} -- Learning rate after warmup. Keyword Arguments: verbose {int} -- 0: quiet, 1: update messages. (default: {0}) """ super(WarmUpLearningRateScheduler, self).__init__() self.warmup_batches = warmup_batches self.init_lr = init_lr self.verbose = verbose self.batch_count = 0 self.learning_rates = [] def on_batch_end(self, batch, logs=None): self.batch_count = self.batch_count + 1 lr = K.get_value(self.model.optimizer.lr) self.learning_rates.append(lr) def on_batch_begin(self, batch, logs=None): if self.batch_count <= self.warmup_batches: lr = self.batch_count*self.init_lr/self.warmup_batches K.set_value(self.model.optimizer.lr, lr) if self.verbose > 0: print('\nBatch %05d: WarmUpLearningRateScheduler setting learning ' 'rate to %s.' % (self.batch_count + 1, lr)) def cosine_decay_with_warmup(global_step, learning_rate_base, total_steps, warmup_learning_rate=0.0, warmup_steps=0, hold_base_rate_steps=0): """Cosine decay schedule with warm up period. Cosine annealing learning rate as described in: Loshchilov and Hutter, SGDR: Stochastic Gradient Descent with Warm Restarts. ICLR 2017. https://arxiv.org/abs/1608.03983 In this schedule, the learning rate grows linearly from warmup_learning_rate to learning_rate_base for warmup_steps, then transitions to a cosine decay schedule. Arguments: global_step {int} -- global step. learning_rate_base {float} -- base learning rate. total_steps {int} -- total number of training steps. Keyword Arguments: warmup_learning_rate {float} -- initial learning rate for warm up. (default: {0.0}) warmup_steps {int} -- number of warmup steps. (default: {0}) hold_base_rate_steps {int} -- Optional number of steps to hold base learning rate before decaying. (default: {0}) Returns: a float representing learning rate. Raises: ValueError: if warmup_learning_rate is larger than learning_rate_base, or if warmup_steps is larger than total_steps. """ if total_steps < warmup_steps: raise ValueError('total_steps must be larger or equal to ' 'warmup_steps.') learning_rate = 0.5 * learning_rate_base * (1 + np.cos( np.pi * (global_step - warmup_steps - hold_base_rate_steps ) / float(total_steps - warmup_steps - hold_base_rate_steps))) if hold_base_rate_steps > 0: learning_rate = np.where(global_step > warmup_steps + hold_base_rate_steps, learning_rate, learning_rate_base) if warmup_steps > 0: if learning_rate_base < warmup_learning_rate: raise ValueError('learning_rate_base must be larger or equal to ' 'warmup_learning_rate.') slope = (learning_rate_base - warmup_learning_rate) / warmup_steps warmup_rate = slope * global_step + warmup_learning_rate learning_rate = np.where(global_step < warmup_steps, warmup_rate, learning_rate) return np.where(global_step > total_steps, 0.0, learning_rate) class WarmUpCosineDecayScheduler(keras.callbacks.Callback): """Cosine decay with warmup learning rate scheduler """ def __init__(self, learning_rate_base, total_steps, global_step_init=0, warmup_learning_rate=0.0, warmup_steps=0, hold_base_rate_steps=0, verbose=0): """Constructor for cosine decay with warmup learning rate scheduler. Arguments: learning_rate_base {float} -- base learning rate. total_steps {int} -- total number of training steps. Keyword Arguments: global_step_init {int} -- initial global step, e.g. from previous checkpoint. warmup_learning_rate {float} -- initial learning rate for warm up. (default: {0.0}) warmup_steps {int} -- number of warmup steps. (default: {0}) hold_base_rate_steps {int} -- Optional number of steps to hold base learning rate before decaying. (default: {0}) verbose {int} -- 0: quiet, 1: update messages. (default: {0}) """ super(WarmUpCosineDecayScheduler, self).__init__() self.learning_rate_base = learning_rate_base self.total_steps = total_steps self.global_step = global_step_init self.warmup_learning_rate = warmup_learning_rate self.warmup_steps = warmup_steps self.hold_base_rate_steps = hold_base_rate_steps self.verbose = verbose self.learning_rates = [] def on_batch_end(self, batch, logs=None): self.global_step = self.global_step + 1 lr = K.get_value(self.model.optimizer.lr) self.learning_rates.append(lr) def on_batch_begin(self, batch, logs=None): lr = cosine_decay_with_warmup(global_step=self.global_step, learning_rate_base=self.learning_rate_base, total_steps=self.total_steps, warmup_learning_rate=self.warmup_learning_rate, warmup_steps=self.warmup_steps, hold_base_rate_steps=self.hold_base_rate_steps) K.set_value(self.model.optimizer.lr, lr) if self.verbose > 0: print('\nBatch %05d: setting learning ' 'rate to %s.' % (self.global_step + 1, lr)) ================================================ FILE: projects/kaggle/blindness/keras/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-07-21 21:52:05.709750 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.applications.densenet import DenseNet121,DenseNet169 from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate, Multiply, Lambda) from keras.models import Model #from keras import backend as K import keras import tensorflow as tf from config import * def create_model(input_shape, n_out, loss_type=''): input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) if 'linear_regression' in loss_type: final_output = Dense(1, activation='linear', name='final_output')(x) elif 'sigmoid_regression' in loss_type: x = Dense(1, activation='sigmoid')(x) #final_output = Multiply(name='final_output')([x, tf.constant(10.)]) #https://github.com/keras-team/keras/issues/10204 #final_output = Lambda(lambda x: x * 10.0, name='final_output')(x) final_output = Lambda(lambda x: x * 4.0, name='final_output')(x) elif 'sigmoid2_regression' in loss_type: final_output = Dense(1, activation='sigmoid', name='final_output')(x) elif loss_type == 'ordinal_classification': final_output = Dense(n_out, activation='sigmoid', name='final_output')(x) elif loss_type == 'ordinal2_classification': final_output = Dense(n_out - 1, activation='sigmoid', name='final_output')(x) else: final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model ================================================ FILE: projects/kaggle/blindness/keras/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-07-21 21:52:40.029962 # \Description still multiple gpu not correct result... # seems keras bug, train 90% valid 10% multiple gpu ok # train 80% valid 20% multiple gpu wrong.. # to reproduce # c01 python train2.py ok # c01 python train2.py --valid_portion=0.1 wrong # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS from keras.callbacks import ModelCheckpoint from keras import metrics from keras.optimizers import Adam # create callbacks list from keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger, TensorBoard) from keras.utils import to_categorical import keras import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.utils import shuffle from config import * from dataset import * from evaluate import Evaluator from model import create_model from loss import get_loss import folds from util import * def to_regression(y): bs = len(y) y = np.argmax(y, -1).reshape([bs, 1]) return y def to_regression2(y): bs = len(y) y = np.argmax(y, -1).reshape([bs, 1]) y = y / (NUM_CLASSES - 1) return y def to_ordinal(y): # [0,0,1,0,0] ->[1,1,1,0,0] for multi label loss y_ = np.empty(y.shape, dtype=y.dtype) y_[:, NUM_CLASSES - 1] = y[:, NUM_CLASSES - 1] for i in range(NUM_CLASSES - 2, -1, -1): y_[:, i] = np.logical_or(y[:, i], y_[:, i+1]) y = y_ return y def to_ordinal2(y): y = to_ordinal(y) y = y[:, 1:] return y def trans_y(y, loss_type): if 'regression' in loss_type: if 'sigmoid2' in loss_type: return to_regression2(y) else: return to_regression(y) elif 'ordinal' in loss_type: if '2' in loss_type: return to_ordinal2(y) else: return to_ordinal(y) return y def main(_): num_gpus = get_num_gpus() assert num_gpus print('num_gpus', get_num_gpus()) batch_size = FLAGS.batch_size # ordinal2 better then ordinal since do not need 5 bits just need 4 bits # so classification, sigmoid_regression and ordinal2_classification similar result, classification maybe slightly better # for regression, tend to predict less 4.. loss_types = ['classification', 'linear_regression', \ 'sigmoid_regression', 'sigmoid_regression_mae', 'sigmoid2_regression', \ 'ordinal_classification', 'ordinal2_classification', 'earth_classification', 'kappa_classification'] loss_type = FLAGS.loss_type print('loss_type', loss_type) assert loss_type in loss_types #----------- read input df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') x = df_train['id_code'] y = df_train['diagnosis'] x, y = shuffle(x, y, random_state=random_state) # https://stackoverflow.com/questions/48508036/sklearn-stratifiedkfold-valueerror-supported-target-types-are-binary-mul # Supported target types are: ('binary', 'multiclass'). Got 'multilabel-indicator' instead. # can not put after to_categorical train_x, valid_x, train_y, valid_y = folds.get_train_valid(x, y, FLAGS.fold, FLAGS.num_folds, random_state=2019) # # check if exactly same as gen-folds, so fold 0 valid.csv should be same as ../input/train_0.csv # df = pd.DataFrame() # df['id_code'] = valid_x # df['diagnosis'] = valid_y # df.to_csv('valid.csv', index=False) train_y = to_categorical(train_y, num_classes=NUM_CLASSES) train_y = trans_y(train_y, loss_type) valid_y = to_categorical(valid_y, num_classes=NUM_CLASSES) valid_y = trans_y(valid_y, loss_type) #---------- init train_data = Dataset(train_x, train_y, 128, is_train=True) #batch_size_ = int(batch_size * (3 / 4)) if num_gpus == 1 else batch_size batch_size_ = int(batch_size * (3 / 4)) * FLAGS.multiplier # 24 48 print('batch_size_', batch_size_) train_mixup = Dataset(train_x, train_y, batch_size_, is_train=True, mix=False, augment=True) valid_data = Dataset(valid_x, valid_y, batch_size, is_train=False) # train step1, warm up model model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES, loss_type=loss_type) for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) loss_fn = get_loss(loss_type) print('loss_fn', loss_fn) model.compile( loss=loss_fn, optimizer=Adam(1e-3)) #model.summary() dir = '../working/{}/{}'.format(FLAGS.fold, loss_type) if FLAGS.multiplier > 1: dir += '_{}'.format(FLAGS.multiplier) if num_gpus > 1: dir += '_{}gpu'.format(num_gpus) print('dir:', dir) tb = TensorBoard(log_dir=dir, histogram_freq=0, write_graph=True, write_images=False) eval = Evaluator(dir, validation_data=(valid_data, valid_y), interval=1, loss_type=loss_type) ## for faster check evaluate probelm but may cuase problem for mutltigpu wrong eval TODO FIXME # eval.model = model # eval.on_epoch_end(-1) # print('image_dict size', len(image_dict)) model.fit_generator( train_data, validation_data=valid_data, epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[eval, tb]) # seems if use_multiprocessing=True will not update image_dict print('image_dict size', len(image_dict)) # train step2, train all layers checkpoint = ModelCheckpoint('{}/densenet_.h5'.format(dir), monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='{}/training_log.csv'.format(dir), separator=',', append=True) # from lr import WarmUpCosineDecayScheduler # warmup_epoch = 2 # warmup_steps = warmup_epoch * len(train_mixup) # warm_up_lr = WarmUpCosineDecayScheduler(learning_rate_base=2e-4, # total_steps=len(train_mixup) * (epochs - 2), # warmup_learning_rate=0.0, # warmup_steps=warmup_steps, # hold_base_rate_steps=0) if num_gpus > 1: model = smodel for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, eval, tb] #callbacks_list = [checkpoint, csv_logger, warm_up_lr, early, eval, tb] if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) lr = 1e-4 lr *= FLAGS.multiplier # Notice if using warm_up_lr then lr here not on effect model.compile(loss=loss_fn, optimizer=Adam(lr=lr)) epoch_now = 2 model.fit_generator( train_mixup, validation_data=valid_data, epochs=epochs, verbose=1, ## FIXME probelm with callback save model OSError: Unable to create file (unable to lock file, errno = 11, error message = 'Resource temporarily unavailable') ## will be slower (50->57) not using multiprocessing seems problem only occur for validation when saving checkpoint # workers=WORKERS, # use_multiprocessing=True, workers=1, use_multiprocessing=False, callbacks=callbacks_list, initial_epoch=epoch_now) if __name__ == '__main__': flags.DEFINE_integer('batch_size', 32, '') flags.DEFINE_integer('num_folds', 5, '') flags.DEFINE_integer('fold', 0, '') flags.DEFINE_integer('multiplier', 1, '') flags.DEFINE_string('loss_type', 'classification', 'classification, linear_regression, sigmoid_regression, ordinal_classification') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/keras/train2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-07-21 21:52:40.029962 # \Description still multiple gpu not correct result... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS from keras.callbacks import ModelCheckpoint from keras import metrics from keras.optimizers import Adam # create callbacks list from keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger, TensorBoard) import keras from keras.utils import to_categorical import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.utils import shuffle from config import * from dataset import Dataset from evaluate2 import QWKEvaluation from model import create_model def get_num_gpus(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) print('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None def main(_): num_gpus = get_num_gpus() assert num_gpus print('num_gpus', get_num_gpus()) batch_size = FLAGS.batch_size #----------- read input df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') x = df_train['id_code'] y = df_train['diagnosis'] x, y = shuffle(x, y, random_state=8) y = to_categorical(y, num_classes=NUM_CLASSES) train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=FLAGS.valid_portion, stratify=y, random_state=8) #---------- init train_data = Dataset(train_x, train_y, 128, is_train=True) #batch_size_ = int(batch_size * (3 / 4)) if num_gpus == 1 else batch_size batch_size_ = int(batch_size * (3 / 4)) print('batch_size_', batch_size_) train_mixup = Dataset(train_x, train_y, batch_size_, is_train=True, mix=False, augment=True) valid_data = Dataset(valid_x, valid_y, batch_size, is_train=False) # train step1, warm up model model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES) for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile( loss='categorical_crossentropy', optimizer=Adam(1e-3)) tb = TensorBoard(log_dir='./logs', histogram_freq=0, write_graph=True, write_images=False) qwk = QWKEvaluation(validation_data=(valid_data, valid_y), interval=1) model.fit_generator( train_data, validation_data=valid_data, epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[qwk]) # train step2, train all layers checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='../working/training_log.csv', separator=',', append=True) if num_gpus > 1: model = smodel for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk] if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile(loss='categorical_crossentropy', # loss=kappa_loss, optimizer=Adam(lr=1e-4)) model.fit_generator( train_mixup, validation_data=valid_data, epochs=epochs, verbose=1, workers=1, use_multiprocessing=False, callbacks=callbacks_list, initial_epoch=2) if __name__ == '__main__': flags.DEFINE_integer('batch_size', 32, '') flags.DEFINE_float('valid_portion', 0.1, '') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/keras/util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file util.py # \author chenghuige # \date 2019-07-23 17:40:39.405865 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os def get_num_gpus(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) print('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None ================================================ FILE: projects/kaggle/blindness/keras2/READEME.md ================================================ first start with kaggle kernel http://192.168.31.36:8888/notebooks/wenzheng/projects/kaggle/blindness/other/APTOS%202019_%20Keras%20Baseline.ipynb ================================================ FILE: projects/kaggle/blindness/keras2/aug.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file aug.py # \author chenghuige # \date 2019-07-21 21:53:11.255995 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from imgaug import augmenters as iaa import imgaug as ia sometimes = lambda aug: iaa.Sometimes(0.5, aug) seq = iaa.Sequential( [ # apply the following augmenters to most images iaa.Fliplr(0.5), # horizontally flip 50% of all images iaa.Flipud(0.2), # vertically flip 20% of all images sometimes(iaa.Affine( scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis translate_percent={"x": (-0.1, 0.1), "y": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis) rotate=(-10, 10), # rotate by -45 to +45 degrees shear=(-5, 5), # shear by -16 to +16 degrees order=[0, 1], # use nearest neighbour or bilinear interpolation (fast) cval=(0, 255), # if mode is constant, use a cval between 0 and 255 mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples) )), # execute 0 to 5 of the following (less important) augmenters per image # don't execute all of them, as that would often be way too strong iaa.SomeOf((0, 5), [ sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation iaa.OneOf([ iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0 iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7 iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7 ]), iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images # search either for all edges or for directed edges, # blend the result with the original image using a blobby mask iaa.SimplexNoiseAlpha(iaa.OneOf([ iaa.EdgeDetect(alpha=(0.5, 1.0)), iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)), ])), iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images iaa.OneOf([ iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2), ]), iaa.Invert(0.01, per_channel=True), # invert color channels iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value) iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation # either change the brightness of the whole image (sometimes # per channel) or change the brightness of subareas iaa.OneOf([ iaa.Multiply((0.9, 1.1), per_channel=0.5), iaa.FrequencyNoiseAlpha( exponent=(-1, 0), first=iaa.Multiply((0.9, 1.1), per_channel=True), second=iaa.ContrastNormalization((0.9, 1.1)) ) ]), sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths) sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1))) ], random_order=True ) ], random_order=True) ================================================ FILE: projects/kaggle/blindness/keras2/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2019-07-21 22:03:51.198317 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os WORKERS = 2 CHANNEL = 3 SIZE = 300 NUM_CLASSES = 5 epochs = 30; #batch_size = 32 ================================================ FILE: projects/kaggle/blindness/keras2/dataset.py ================================================ wenzheng/dataset.py at master · chenghuige/wenzheng
Skip to content
  • Unwatch
    Notifications
  • Fork

/wenzheng

Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
executable file 153 lines (126 sloc) 5.15 KB
# Copyright 2017 The TensorFlow Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ==============================================================================
"""CIFAR-10 data set.
See http://www.cs.toronto.edu/~kriz/cifar.html.
"""
import os
import tensorflow as tf
flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_bool('random_brightness', False, '')
flags.DEFINE_bool('random_contrast', False, '')
flags.DEFINE_bool('return_dict', False, '')
HEIGHT = 224
WIDTH = 224
DEPTH = 3
class Dataset(object):
def __init__(self, data_dir, subset='train', use_distortion=True):
self.data_dir = data_dir
self.subset = subset
self.use_distortion = use_distortion
def get_filenames(self):
if self.subset in ['train', 'valid', 'test']:
return [os.path.join(self.data_dir, self.subset + '.tfrecords')]
else:
raise ValueError('Invalid data subset "%s"' % self.subset)
def parser(self, serialized_example):
"""Parses a single tf.Example into image and label tensors."""
# Dimensions of the images in the CIFAR-10 dataset.
# See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the
# input format.
features = tf.parse_single_example(
serialized_example,
features={
'id': tf.FixedLenFeature([], tf.string),
'image': tf.FixedLenFeature([], tf.string),
'label': tf.FixedLenFeature([], tf.int64),
})
image = features['image']
#image = tf.expand_dims(image, axis=-1)
print('--------------1', image)
#image = tf.decode_raw(image, tf.uint8)
image = tf.image.decode_png(image)
#image.set_shape([HEIGHT * WIDTH * DEPTH])
print('--------------2', image, image.shape)
#image = tf.cast(
# tf.reshape(image, [HEIGHT, WIDTH, DEPTH]),
# tf.float32)
image = tf.cast(image, tf.float32)
label = tf.cast(features['label'], tf.int32)
id = features['id']
# Custom preprocessing.
image = self.preprocess(image)
# if not FLAGS.return_dict:
# return id, image, label
# else:
# return {'id': id, 'image': image}, label
return image, label
def make_batch(self, batch_size, filenames=None, repeat=None, initializable=None):
"""Read the images and labels from 'filenames'."""
filenames = filenames or self.get_filenames()
if initializable is None:
initializable = self.subset != 'train'
# Repeat infinitely.
dataset = tf.data.TFRecordDataset(filenames).repeat()
# Parse records.
dataset = dataset.map(
self.parser, num_parallel_calls=batch_size)
# Potentially shuffle records.
if self.subset == 'train':
min_queue_examples = int(
Dataset.num_examples_per_epoch(self.subset) * 0.4)
# Ensure that the capacity is sufficiently large to provide good random
# shuffling.
dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size)
# Batch it up.
dataset = dataset.batch(batch_size)
assert tf.executing_eagerly()
return dataset
def preprocess(self, image):
"""Preprocess a single image in [height, width, depth] layout."""
if self.subset == 'train' and self.use_distortion:
# Pad 4 pixels on each dimension of feature map, done in mini-batch
#... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries
# refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME
tf.summary.image('image', image)
#print('--------', image)
#image = tf.image.resize_image_with_crop_or_pad(image, 256, 256)
#image = tf.image.resize_images(image, [256, 256], method=0)
#image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH])
image = tf.image.random_flip_left_right(image)
if FLAGS.random_brightness:
image = tf.image.random_brightness(image,
max_delta=63)
if FLAGS.random_contrast:
distorted_image = tf.image.random_contrast(image,
lower=0.2,
upper=1.8)
tf.summary.image('image/distort', image)
else:
image = tf.image.resize_images(image, [HEIGHT, WIDTH], method=0)
image = tf.cast(
tf.reshape(image, [HEIGHT, WIDTH, DEPTH]),
tf.float32)
return image
@staticmethod
def num_examples_per_epoch(subset='train'):
if subset == 'train':
return 3295
elif subset == 'valid':
return 367
elif subset == 'test':
return 1928
else:
raise ValueError('Invalid data subset "%s"' % subset)
You can’t perform that action at this time.
================================================ FILE: projects/kaggle/blindness/keras2/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from config import * class QWKEvaluation(Callback): def __init__(self, validation_data=(), batch_size=64, interval=1): super(Callback, self).__init__() self.interval = interval self.batch_size = batch_size self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)), workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') ================================================ FILE: projects/kaggle/blindness/keras2/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2019-07-21 21:52:43.549005 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os ================================================ FILE: projects/kaggle/blindness/keras2/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-07-21 21:52:05.709750 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.applications.densenet import DenseNet121,DenseNet169 from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) from keras.models import Model from config import * def create_model(input_shape, n_out): input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model ================================================ FILE: projects/kaggle/blindness/keras2/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-07-21 21:52:40.029962 # \Description still multiple gpu not correct result... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS from keras.callbacks import ModelCheckpoint from keras import metrics from keras.optimizers import Adam # create callbacks list from keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger, TensorBoard) from keras.utils import to_categorical import keras import tensorflow as tf import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.utils import shuffle from config import * from dataset import Dataset from evaluate import QWKEvaluation from model import create_model def get_num_gpus(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) print('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None def get_dataset(subset, use_distortion=None): data_dir = '../input/tfrecords/' if use_distortion is None: use_distortion = False if subset == 'train': use_distortion = True return Dataset(data_dir, subset=subset, use_distortion=use_distortion) def main(_): # TODO FIXME RuntimeError: tf.placeholder() is not compatible with eager execution. tf.enable_eager_execution() num_gpus = get_num_gpus() assert num_gpus print('num_gpus', get_num_gpus()) batch_size = FLAGS.batch_size #---------- init train_data = get_dataset('train', use_distortion=False).make_batch(batch_size) batch_size_ = int(batch_size * (3 / 4)) if num_gpus == 1 else batch_size print('batch_size_', batch_size_) train_mixup = get_dataset('train', use_distortion=True).make_batch(batch_size_) valid_data = get_dataset('valid').make_batch(batch_size) # train step1, warm up model model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES) for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile( loss='categorical_crossentropy', optimizer=Adam(1e-3)) tb = TensorBoard(log_dir='./logs', histogram_freq=0, write_graph=True, write_images=False) qwk = QWKEvaluation(validation_data=(valid_data, valid_y), batch_size=batch_size, interval=1) model.fit_generator( train_data, epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[qwk]) # train step2, train all layers checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='../working/training_log.csv', separator=',', append=True) if num_gpus > 1: model = smodel for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk] if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile(loss='categorical_crossentropy', # loss=kappa_loss, optimizer=Adam(lr=1e-4)) model.fit_generator( train_mixup, validation_data=valid_data, epochs=epochs, verbose=1, workers=1, use_multiprocessing=False, callbacks=callbacks_list) if __name__ == '__main__': flags.DEFINE_integer('batch_size', 32, '') flags.DEFINE_float('valid_portion', 0.1, '') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/keras2tf/READEME.md ================================================ first start with kaggle kernel http://192.168.31.36:8888/notebooks/wenzheng/projects/kaggle/blindness/other/APTOS%202019_%20Keras%20Baseline.ipynb ================================================ FILE: projects/kaggle/blindness/keras2tf/aug.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file aug.py # \author chenghuige # \date 2019-07-21 21:53:11.255995 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from imgaug import augmenters as iaa import imgaug as ia sometimes = lambda aug: iaa.Sometimes(0.5, aug) seq = iaa.Sequential( [ # apply the following augmenters to most images iaa.Fliplr(0.5), # horizontally flip 50% of all images iaa.Flipud(0.2), # vertically flip 20% of all images sometimes(iaa.Affine( scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis translate_percent={"x": (-0.1, 0.1), "y": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis) rotate=(-10, 10), # rotate by -45 to +45 degrees shear=(-5, 5), # shear by -16 to +16 degrees order=[0, 1], # use nearest neighbour or bilinear interpolation (fast) cval=(0, 255), # if mode is constant, use a cval between 0 and 255 mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples) )), # execute 0 to 5 of the following (less important) augmenters per image # don't execute all of them, as that would often be way too strong iaa.SomeOf((0, 5), [ sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation iaa.OneOf([ iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0 iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7 iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7 ]), iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images # search either for all edges or for directed edges, # blend the result with the original image using a blobby mask iaa.SimplexNoiseAlpha(iaa.OneOf([ iaa.EdgeDetect(alpha=(0.5, 1.0)), iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)), ])), iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images iaa.OneOf([ iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2), ]), iaa.Invert(0.01, per_channel=True), # invert color channels iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value) iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation # either change the brightness of the whole image (sometimes # per channel) or change the brightness of subareas iaa.OneOf([ iaa.Multiply((0.9, 1.1), per_channel=0.5), iaa.FrequencyNoiseAlpha( exponent=(-1, 0), first=iaa.Multiply((0.9, 1.1), per_channel=True), second=iaa.ContrastNormalization((0.9, 1.1)) ) ]), sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths) sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1))) ], random_order=True ) ], random_order=True) ================================================ FILE: projects/kaggle/blindness/keras2tf/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2019-07-21 22:03:51.198317 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os WORKERS = 2 CHANNEL = 3 SIZE = 300 NUM_CLASSES = 5 epochs = 30; #batch_size = 32 ================================================ FILE: projects/kaggle/blindness/keras2tf/dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-21 21:52:09.914646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tensorflow.keras.utils import Sequence import numpy as np from aug import seq from sklearn.utils import shuffle import cv2 from config import * class Dataset(Sequence): def __init__(self, image_filenames, labels, batch_size, is_train=True, mix=False, augment=False): self.image_filenames, self.labels = image_filenames, labels self.batch_size = batch_size self.is_train = is_train self.is_augment = augment if(self.is_train): self.on_epoch_end() self.is_mix = mix def __len__(self): return int(np.ceil(len(self.image_filenames) / float(self.batch_size))) def __getitem__(self, idx): batch_x = self.image_filenames[idx * self.batch_size:(idx + 1) * self.batch_size] batch_y = self.labels[idx * self.batch_size:(idx + 1) * self.batch_size] if(self.is_train): return self.train_generate(batch_x, batch_y) return self.valid_generate(batch_x, batch_y) def on_epoch_end(self): if(self.is_train): self.image_filenames, self.labels = shuffle(self.image_filenames, self.labels) else: pass def mix_up(self, x, y): lam = np.random.beta(0.2, 0.4) ori_index = np.arange(int(len(x))) index_array = np.arange(int(len(x))) np.random.shuffle(index_array) mixed_x = lam * x[ori_index] + (1 - lam) * x[index_array] mixed_y = lam * y[ori_index] + (1 - lam) * y[index_array] return mixed_x, mixed_y def train_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) if(self.is_augment): img = seq.augment_image(img) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) if(self.is_mix): batch_images, batch_y = self.mix_up(batch_images, batch_y) return batch_images, batch_y def valid_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) return batch_images, batch_y ================================================ FILE: projects/kaggle/blindness/keras2tf/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tensorflow.keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from config import * class QWKEvaluation(Callback): def __init__(self, validation_data=(), batch_size=64, interval=1): super(Callback, self).__init__() self.interval = interval self.batch_size = batch_size self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)), workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') ================================================ FILE: projects/kaggle/blindness/keras2tf/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2019-07-21 21:52:43.549005 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os ================================================ FILE: projects/kaggle/blindness/keras2tf/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-07-21 21:52:05.709750 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from tensorflow.keras.applications.densenet import DenseNet121,DenseNet169 from tensorflow.keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) from tensorflow.keras.models import Model from config import * def create_model(input_shape, n_out): input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model ================================================ FILE: projects/kaggle/blindness/keras2tf/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-07-21 21:52:40.029962 # \Description still multiple gpu not correct result... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS from tensorflow.keras.callbacks import ModelCheckpoint from tensorflow.keras import metrics from tensorflow.keras.optimizers import Adam # create callbacks list from tensorflow.keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger, TensorBoard) from tensorflow.keras.utils import to_categorical from tensorflow import keras import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.utils import shuffle from config import * from dataset import Dataset from evaluate import QWKEvaluation from model import create_model def get_num_gpus(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) print('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None def main(_): num_gpus = get_num_gpus() assert num_gpus print('num_gpus', get_num_gpus()) batch_size = FLAGS.batch_size #----------- read input df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') x = df_train['id_code'] y = df_train['diagnosis'] x, y = shuffle(x, y, random_state=8) y = to_categorical(y, num_classes=NUM_CLASSES) train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=FLAGS.valid_portion, stratify=y, random_state=8) #---------- init train_data = Dataset(train_x, train_y, 128, is_train=True) batch_size_ = int(batch_size * (3 / 4)) if num_gpus == 1 else batch_size print('batch_size_', batch_size_) train_mixup = Dataset(train_x, train_y, batch_size_, is_train=True, mix=False, augment=True) valid_data = Dataset(valid_x, valid_y, batch_size, is_train=False) # train step1, warm up model model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES) for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile( loss='categorical_crossentropy', optimizer=Adam(1e-3)) tb = TensorBoard(log_dir='./logs', histogram_freq=0, write_graph=True, write_images=False) qwk = QWKEvaluation(validation_data=(valid_data, valid_y), batch_size=batch_size, interval=1) model.fit_generator( train_data, epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[qwk]) # train step2, train all layers checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='../working/training_log.csv', separator=',', append=True) if num_gpus > 1: model = smodel for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk] if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile(loss='categorical_crossentropy', # loss=kappa_loss, optimizer=Adam(lr=1e-4)) model.fit_generator( train_mixup, validation_data=valid_data, epochs=epochs, verbose=1, workers=1, use_multiprocessing=False, callbacks=callbacks_list) if __name__ == '__main__': flags.DEFINE_integer('batch_size', 32, '') flags.DEFINE_float('valid_portion', 0.1, '') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/keras3/READEME.md ================================================ first start with kaggle kernel http://192.168.31.36:8888/notebooks/wenzheng/projects/kaggle/blindness/other/APTOS%202019_%20Keras%20Baseline.ipynb ================================================ FILE: projects/kaggle/blindness/keras3/aug.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file aug.py # \author chenghuige # \date 2019-07-21 21:53:11.255995 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from imgaug import augmenters as iaa import imgaug as ia sometimes = lambda aug: iaa.Sometimes(0.5, aug) seq = iaa.Sequential( [ # apply the following augmenters to most images iaa.Fliplr(0.5), # horizontally flip 50% of all images iaa.Flipud(0.2), # vertically flip 20% of all images sometimes(iaa.Affine( scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis translate_percent={"x": (-0.1, 0.1), "y": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis) rotate=(-10, 10), # rotate by -45 to +45 degrees shear=(-5, 5), # shear by -16 to +16 degrees order=[0, 1], # use nearest neighbour or bilinear interpolation (fast) cval=(0, 255), # if mode is constant, use a cval between 0 and 255 mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples) )), # execute 0 to 5 of the following (less important) augmenters per image # don't execute all of them, as that would often be way too strong iaa.SomeOf((0, 5), [ sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation iaa.OneOf([ iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0 iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7 iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7 ]), iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images # search either for all edges or for directed edges, # blend the result with the original image using a blobby mask iaa.SimplexNoiseAlpha(iaa.OneOf([ iaa.EdgeDetect(alpha=(0.5, 1.0)), iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)), ])), iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images iaa.OneOf([ iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2), ]), iaa.Invert(0.01, per_channel=True), # invert color channels iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value) iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation # either change the brightness of the whole image (sometimes # per channel) or change the brightness of subareas iaa.OneOf([ iaa.Multiply((0.9, 1.1), per_channel=0.5), iaa.FrequencyNoiseAlpha( exponent=(-1, 0), first=iaa.Multiply((0.9, 1.1), per_channel=True), second=iaa.ContrastNormalization((0.9, 1.1)) ) ]), sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths) sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1))) ], random_order=True ) ], random_order=True) ================================================ FILE: projects/kaggle/blindness/keras3/bak/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from config import * class QWKEvaluation(Callback): def __init__(self, validation_data=(), batch_size=64, interval=1): super(Callback, self).__init__() self.interval = interval self.batch_size = batch_size self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)), workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') ================================================ FILE: projects/kaggle/blindness/keras3/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2019-07-21 22:03:51.198317 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os WORKERS = 2 CHANNEL = 3 SIZE = 300 NUM_CLASSES = 5 epochs = 30; #batch_size = 32 ================================================ FILE: projects/kaggle/blindness/keras3/dataset.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset.py # \author chenghuige # \date 2019-07-21 21:52:09.914646 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.utils import Sequence import numpy as np from aug import seq from sklearn.utils import shuffle import cv2 from config import * from multiprocessing import Manager #image_dict = {} # with out this if fit using multiprocess image_dict never add item image_dict = Manager().dict() class Dataset(Sequence): def __init__(self, image_filenames, labels, batch_size, is_train=True, mix=False, augment=False, ): self.image_filenames, self.labels = image_filenames, labels self.batch_size = batch_size self.is_train = is_train self.is_augment = augment if(self.is_train): self.on_epoch_end() self.is_mix = mix def __len__(self): return int(np.ceil(len(self.image_filenames) / float(self.batch_size))) def __getitem__(self, idx): batch_x = self.image_filenames[idx * self.batch_size:(idx + 1) * self.batch_size] batch_y = self.labels[idx * self.batch_size:(idx + 1) * self.batch_size] if(self.is_train): return self.train_generate(batch_x, batch_y) return self.valid_generate(batch_x, batch_y) def on_epoch_end(self): if(self.is_train): self.image_filenames, self.labels = shuffle(self.image_filenames, self.labels) else: pass def mix_up(self, x, y): lam = np.random.beta(0.2, 0.4) ori_index = np.arange(int(len(x))) index_array = np.arange(int(len(x))) np.random.shuffle(index_array) mixed_x = lam * x[ori_index] + (1 - lam) * x[index_array] mixed_y = lam * y[ori_index] + (1 - lam) * y[index_array] return mixed_x, mixed_y def train_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img if(self.is_augment): img = seq.augment_image(img) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) if(self.is_mix): batch_images, batch_y = self.mix_up(batch_images, batch_y) return batch_images, batch_y def get_images(self, indexes): image_names = [self.image_filenames.values[i] for i in indexes] imgs = [] for sample in image_names: if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/' + sample +'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img imgs.append(img) imgs = np.array(imgs, np.float32) / 255 return imgs def valid_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): if sample in image_dict: img = image_dict[sample] else: img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) image_dict[sample] = img batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) return batch_images, batch_y ================================================ FILE: projects/kaggle/blindness/keras3/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2019-07-21 21:52:01.775723 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.callbacks import Callback import numpy as np from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from config import * class QWKEvaluation(Callback): def __init__(self, validation_data=(), batch_size=64, interval=1): super(Callback, self).__init__() self.interval = interval self.batch_size = batch_size self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, #steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)), workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') ================================================ FILE: projects/kaggle/blindness/keras3/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2019-07-21 21:52:43.549005 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os ================================================ FILE: projects/kaggle/blindness/keras3/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2019-07-21 21:52:05.709750 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from keras.applications.densenet import DenseNet121,DenseNet169 from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) from keras.models import Model from config import * def create_model(input_shape, n_out): input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model ================================================ FILE: projects/kaggle/blindness/keras3/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-07-21 21:52:40.029962 # \Description still multiple gpu not correct result... # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os from absl import app as absl_app from absl import flags FLAGS = flags.FLAGS from keras.callbacks import ModelCheckpoint from keras import metrics from keras.optimizers import Adam # create callbacks list from keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger, TensorBoard) import keras from keras.utils import to_categorical import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.utils import shuffle from config import * from dataset import Dataset from evaluate import QWKEvaluation from model import create_model def get_num_gpus(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) print('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None def main(_): num_gpus = get_num_gpus() assert num_gpus print('num_gpus', get_num_gpus()) batch_size = FLAGS.batch_size #----------- read input df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') x = df_train['id_code'] y = df_train['diagnosis'] x, y = shuffle(x, y, random_state=8) y = to_categorical(y, num_classes=NUM_CLASSES) train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=FLAGS.valid_portion, stratify=y, random_state=8) #---------- init train_data = Dataset(train_x, train_y, 128, is_train=True) #batch_size_ = int(batch_size * (3 / 4)) if num_gpus == 1 else batch_size batch_size_ = int(batch_size * (3 / 4)) print('batch_size_', batch_size_) train_mixup = Dataset(train_x, train_y, batch_size_, is_train=True, mix=False, augment=True) valid_data = Dataset(valid_x, valid_y, batch_size, is_train=False) # train step1, warm up model model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES) for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile( loss='categorical_crossentropy', optimizer=Adam(1e-3)) tb = TensorBoard(log_dir='./logs', histogram_freq=0, write_graph=True, write_images=False) qwk = QWKEvaluation(validation_data=(valid_data, valid_y), batch_size=batch_size, interval=1) model.fit_generator( train_data, validation_data=valid_data, epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[qwk]) # train step2, train all layers checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='../working/training_log.csv', separator=',', append=True) if num_gpus > 1: model = smodel for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk] if num_gpus > 1: smodel = model model = keras.utils.multi_gpu_model(model, num_gpus, cpu_merge=False) model.compile(loss='categorical_crossentropy', # loss=kappa_loss, optimizer=Adam(lr=1e-4)) model.fit_generator( train_mixup, validation_data=valid_data, epochs=epochs, verbose=1, workers=1, use_multiprocessing=False, callbacks=callbacks_list, initial_epoch=2) if __name__ == '__main__': flags.DEFINE_integer('batch_size', 32, '') flags.DEFINE_float('valid_portion', 0.1, '') absl_app.run(main) ================================================ FILE: projects/kaggle/blindness/other/APTOS 2019_ Keras Baseline.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Credits and references : The complete code is taken from [this kernel](https://www.kaggle.com/mathormad/aptos-resnet50-baseline).Changed the model,added some augmentations and retrained it.Thanks to the [Author of the kernel](https://www.kaggle.com/mathormad)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### BEFORE YOU FORK, PLEASE SUPPORT AND UPVOTE THE CURRENT KERNEL AND ORIGINAL [RESNET50 STARTER KERNEL](https://www.kaggle.com/mathormad/aptos-resnet50-baseline)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Introduction:\n", "## What is diabetic retinopathy?\n", "#### Diabetic retinopathy is the most common form of diabetic eye disease. Diabetic retinopathy usually only affects people who have had diabetes (diagnosed or undiagnosed) for a significant number of years.\n", "#### Retinopathy can affect all diabetics and becomes particularly dangerous, increasing the risk of blindness, if it is left untreated.\n", "#### The risk of developing diabetic retinopathy is known to increase with age as well with less well controlled blood sugar and blood pressure level.\n", "#### According to the NHS, 1,280 new cases of blindness caused by diabetic retinopathy are reported each year in England alone, while a further 4,200 people in the country are thought to be at risk of retinopathy-related vision loss.\n", "#### All people with diabetes should have a dilated eye examination at least once every year to check for diabetic retinopathy.\n", "![](https://www.aoa.org/Images/public/Diabetic_Retinopathy.jpg)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "_cell_guid": "b1076dfc-b9ad-4769-8c92-a6c4dae69d19", "_uuid": "8f2839f25d086af736a60e9eeb907d3b93b6e0e5" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['train_images', 'test_images', 'sample_submission.csv', 'test.csv', 'train.csv', 'aptos2019-blindness-detection', 'mobilenet-v2-keras-weights', 'ResNet-50', 'resnet50', 'tfrecords', 'model', 'densenet-keras']\n" ] } ], "source": [ "# This Python 3 environment comes with many helpful analytics libraries installed\n", "# It is defined by the kaggle/python docker image: https://github.com/kaggle/docker-python\n", "# For example, here's several helpful packages to load in \n", "\n", "import numpy as np # linear algebra\n", "import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n", "\n", "# Input data files are available in the \"../input/\" directory.\n", "# For example, running this (by clicking run or pressing Shift+Enter) will list the files in the input directory\n", "\n", "import os\n", "print(os.listdir(\"../input\"))\n", "\n", "# Any results you write to the current directory are saved as output." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Using TensorFlow backend.\n" ] } ], "source": [ "from keras.preprocessing.image import ImageDataGenerator\n", "from keras.models import Sequential, load_model\n", "from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D,\n", " BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate)\n", "from keras.callbacks import ModelCheckpoint\n", "from keras import metrics\n", "from keras.optimizers import Adam \n", "from keras import backend as K\n", "import keras\n", "from keras.models import Model" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "_cell_guid": "79c7e3d0-c299-4dcb-8224-4455121ee9b0", "_uuid": "d629ff2d2480ee46fbb7e2d37f6b5fab8052498a" }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import skimage.io\n", "from skimage.transform import resize\n", "from imgaug import augmenters as iaa\n", "from tqdm import tqdm\n", "import PIL\n", "from PIL import Image, ImageOps\n", "import cv2\n", "from sklearn.utils import class_weight, shuffle\n", "from keras.losses import binary_crossentropy, categorical_crossentropy\n", "#from keras.applications.resnet50 import preprocess_input\n", "from keras.applications.densenet import DenseNet121,DenseNet169\n", "import keras.backend as K\n", "import tensorflow as tf\n", "from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score\n", "from keras.utils import Sequence\n", "from keras.utils import to_categorical\n", "from sklearn.model_selection import train_test_split\n", "import imgaug as ia\n", "\n", "WORKERS = 2\n", "CHANNEL = 3\n", "\n", "import warnings\n", "warnings.filterwarnings(\"ignore\")\n", "SIZE = 300\n", "NUM_CLASSES = 5" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv')\n", "df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Visualising some sample pictures of different classes." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def display_samples(df, columns=4, rows=3):\n", " fig=plt.figure(figsize=(5*columns, 4*rows))\n", "\n", " for i in range(columns*rows):\n", " image_path = df.loc[i,'id_code']\n", " image_id = df.loc[i,'diagnosis']\n", " img = cv2.imread(f'../input/aptos2019-blindness-detection/train_images/{image_path}.png')\n", " img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", " \n", " fig.add_subplot(rows, columns, i+1)\n", " plt.title(image_id)\n", " plt.imshow(img)\n", " \n", " plt.tight_layout()\n", "\n", "display_samples(df_train)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = df_train['id_code']\n", "y = df_train['diagnosis']\n", "\n", "x, y = shuffle(x, y, random_state=8)\n", "y.hist()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(3112,)\n", "(3112, 5)\n", "(550,)\n", "(550, 5)\n" ] } ], "source": [ "y = to_categorical(y, num_classes=NUM_CLASSES)\n", "train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=0.15,\n", " stratify=y, random_state=8)\n", "print(train_x.shape)\n", "print(train_y.shape)\n", "print(valid_x.shape)\n", "print(valid_y.shape)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "sometimes = lambda aug: iaa.Sometimes(0.5, aug)\n", "seq = iaa.Sequential(\n", " [\n", " # apply the following augmenters to most images\n", " iaa.Fliplr(0.5), # horizontally flip 50% of all images\n", " iaa.Flipud(0.2), # vertically flip 20% of all images\n", " sometimes(iaa.Affine(\n", " scale={\"x\": (0.9, 1.1), \"y\": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis\n", " translate_percent={\"x\": (-0.1, 0.1), \"y\": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis)\n", " rotate=(-10, 10), # rotate by -45 to +45 degrees\n", " shear=(-5, 5), # shear by -16 to +16 degrees\n", " order=[0, 1], # use nearest neighbour or bilinear interpolation (fast)\n", " cval=(0, 255), # if mode is constant, use a cval between 0 and 255\n", " mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples)\n", " )),\n", " # execute 0 to 5 of the following (less important) augmenters per image\n", " # don't execute all of them, as that would often be way too strong\n", " iaa.SomeOf((0, 5),\n", " [\n", " sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation\n", " iaa.OneOf([\n", " iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0\n", " iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7\n", " iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7\n", " ]),\n", " iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images\n", " iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images\n", " # search either for all edges or for directed edges,\n", " # blend the result with the original image using a blobby mask\n", " iaa.SimplexNoiseAlpha(iaa.OneOf([\n", " iaa.EdgeDetect(alpha=(0.5, 1.0)),\n", " iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)),\n", " ])),\n", " iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images\n", " iaa.OneOf([\n", " iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels\n", " iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2),\n", " ]),\n", " iaa.Invert(0.01, per_channel=True), # invert color channels\n", " iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value)\n", " iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation\n", " # either change the brightness of the whole image (sometimes\n", " # per channel) or change the brightness of subareas\n", " iaa.OneOf([\n", " iaa.Multiply((0.9, 1.1), per_channel=0.5),\n", " iaa.FrequencyNoiseAlpha(\n", " exponent=(-1, 0),\n", " first=iaa.Multiply((0.9, 1.1), per_channel=True),\n", " second=iaa.ContrastNormalization((0.9, 1.1))\n", " )\n", " ]),\n", " sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths)\n", " sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around\n", " sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1)))\n", " ],\n", " random_order=True\n", " )\n", " ],\n", " random_order=True)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "class My_Generator(Sequence):\n", "\n", " def __init__(self, image_filenames, labels,\n", " batch_size, is_train=True,\n", " mix=False, augment=False):\n", " self.image_filenames, self.labels = image_filenames, labels\n", " self.batch_size = batch_size\n", " self.is_train = is_train\n", " self.is_augment = augment\n", " if(self.is_train):\n", " self.on_epoch_end()\n", " self.is_mix = mix\n", "\n", " def __len__(self):\n", " return int(np.ceil(len(self.image_filenames) / float(self.batch_size)))\n", "\n", " def __getitem__(self, idx):\n", " batch_x = self.image_filenames[idx * self.batch_size:(idx + 1) * self.batch_size]\n", " batch_y = self.labels[idx * self.batch_size:(idx + 1) * self.batch_size]\n", "\n", " if(self.is_train):\n", " return self.train_generate(batch_x, batch_y)\n", " return self.valid_generate(batch_x, batch_y)\n", "\n", " def on_epoch_end(self):\n", " if(self.is_train):\n", " self.image_filenames, self.labels = shuffle(self.image_filenames, self.labels)\n", " else:\n", " pass\n", " \n", " def mix_up(self, x, y):\n", " lam = np.random.beta(0.2, 0.4)\n", " ori_index = np.arange(int(len(x)))\n", " index_array = np.arange(int(len(x)))\n", " np.random.shuffle(index_array) \n", " \n", " mixed_x = lam * x[ori_index] + (1 - lam) * x[index_array]\n", " mixed_y = lam * y[ori_index] + (1 - lam) * y[index_array]\n", " \n", " return mixed_x, mixed_y\n", "\n", " def train_generate(self, batch_x, batch_y):\n", " batch_images = []\n", " for (sample, label) in zip(batch_x, batch_y):\n", " img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png')\n", " img = cv2.resize(img, (SIZE, SIZE))\n", " if(self.is_augment):\n", " img = seq.augment_image(img)\n", " batch_images.append(img)\n", " batch_images = np.array(batch_images, np.float32) / 255\n", " batch_y = np.array(batch_y, np.float32)\n", " if(self.is_mix):\n", " batch_images, batch_y = self.mix_up(batch_images, batch_y)\n", " return batch_images, batch_y\n", "\n", " def valid_generate(self, batch_x, batch_y):\n", " batch_images = []\n", " for (sample, label) in zip(batch_x, batch_y):\n", " img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png')\n", " img = cv2.resize(img, (SIZE, SIZE))\n", " batch_images.append(img)\n", " batch_images = np.array(batch_images, np.float32) / 255\n", " batch_y = np.array(batch_y, np.float32)\n", " return batch_images, batch_y" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def create_model(input_shape, n_out):\n", " input_tensor = Input(shape=input_shape)\n", " base_model = DenseNet121(include_top=False,\n", " weights=None,\n", " input_tensor=input_tensor)\n", " base_model.load_weights(\"../input/densenet-keras/DenseNet-BC-121-32-no-top.h5\")\n", " x = GlobalAveragePooling2D()(base_model.output)\n", " x = Dropout(0.5)(x)\n", " x = Dense(1024, activation='relu')(x)\n", " x = Dropout(0.5)(x)\n", " final_output = Dense(n_out, activation='softmax', name='final_output')(x)\n", " model = Model(input_tensor, final_output) \n", " return model" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING: Logging before flag parsing goes to stderr.\n", "W0721 18:26:42.491315 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:74: The name tf.get_default_graph is deprecated. Please use tf.compat.v1.get_default_graph instead.\n", "\n", "W0721 18:26:42.509601 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:517: The name tf.placeholder is deprecated. Please use tf.compat.v1.placeholder instead.\n", "\n", "W0721 18:26:42.516185 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:4138: The name tf.random_uniform is deprecated. Please use tf.random.uniform instead.\n", "\n", "W0721 18:26:42.543597 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:174: The name tf.get_default_session is deprecated. Please use tf.compat.v1.get_default_session instead.\n", "\n", "W0721 18:26:42.544507 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:181: The name tf.ConfigProto is deprecated. Please use tf.compat.v1.ConfigProto instead.\n", "\n", "W0721 18:26:44.896511 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:1834: The name tf.nn.fused_batch_norm is deprecated. Please use tf.compat.v1.nn.fused_batch_norm instead.\n", "\n", "W0721 18:26:44.952250 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:3976: The name tf.nn.max_pool is deprecated. Please use tf.nn.max_pool2d instead.\n", "\n", "W0721 18:26:45.902692 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:3980: The name tf.nn.avg_pool is deprecated. Please use tf.nn.avg_pool2d instead.\n", "\n", "W0721 18:27:00.256437 139993109382912 deprecation.py:506] From /home/gezi/py3env/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py:3445: calling dropout (from tensorflow.python.ops.nn_ops) with keep_prob is deprecated and will be removed in a future version.\n", "Instructions for updating:\n", "Please use `rate` instead of `keep_prob`. Rate should be set to `rate = 1 - keep_prob`.\n" ] } ], "source": [ "# create callbacks list\n", "from keras.callbacks import (ModelCheckpoint, LearningRateScheduler,\n", " EarlyStopping, ReduceLROnPlateau,CSVLogger)\n", "\n", "epochs = 30; batch_size = 32\n", "checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, \n", " save_best_only=True, mode='min', save_weights_only = True)\n", "reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, \n", " verbose=1, mode='auto', epsilon=0.0001)\n", "early = EarlyStopping(monitor=\"val_loss\", \n", " mode=\"min\", \n", " patience=9)\n", "\n", "csv_logger = CSVLogger(filename='../working/training_log.csv',\n", " separator=',',\n", " append=True)\n", "\n", "train_generator = My_Generator(train_x, train_y, 128, is_train=True)\n", "train_mixup = My_Generator(train_x, train_y, batch_size, is_train=True, mix=False, augment=True)\n", "valid_generator = My_Generator(valid_x, valid_y, batch_size, is_train=False)\n", "\n", "model = create_model(\n", " input_shape=(SIZE,SIZE,3), \n", " n_out=NUM_CLASSES)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(model)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "# reference link: https://www.kaggle.com/christofhenkel/weighted-kappa-loss-for-keras-tensorflow\n", "def kappa_loss(y_true, y_pred, y_pow=2, eps=1e-12, N=5, bsize=32, name='kappa'):\n", " \"\"\"A continuous differentiable approximation of discrete kappa loss.\n", " Args:\n", " y_pred: 2D tensor or array, [batch_size, num_classes]\n", " y_true: 2D tensor or array,[batch_size, num_classes]\n", " y_pow: int, e.g. y_pow=2\n", " N: typically num_classes of the model\n", " bsize: batch_size of the training or validation ops\n", " eps: a float, prevents divide by zero\n", " name: Optional scope/name for op_scope.\n", " Returns:\n", " A tensor with the kappa loss.\"\"\"\n", "\n", " with tf.name_scope(name):\n", " y_true = tf.to_float(y_true)\n", " repeat_op = tf.to_float(tf.tile(tf.reshape(tf.range(0, N), [N, 1]), [1, N]))\n", " repeat_op_sq = tf.square((repeat_op - tf.transpose(repeat_op)))\n", " weights = repeat_op_sq / tf.to_float((N - 1) ** 2)\n", " \n", " pred_ = y_pred ** y_pow\n", " try:\n", " pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [-1, 1]))\n", " except Exception:\n", " pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [bsize, 1]))\n", " \n", " hist_rater_a = tf.reduce_sum(pred_norm, 0)\n", " hist_rater_b = tf.reduce_sum(y_true, 0)\n", " \n", " conf_mat = tf.matmul(tf.transpose(pred_norm), y_true)\n", " \n", " nom = tf.reduce_sum(weights * conf_mat)\n", " denom = tf.reduce_sum(weights * tf.matmul(\n", " tf.reshape(hist_rater_a, [N, 1]), tf.reshape(hist_rater_b, [1, N])) /\n", " tf.to_float(bsize))\n", " \n", " return nom*0.5 / (denom + eps) + categorical_crossentropy(y_true, y_pred)*0.5" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "from keras.callbacks import Callback\n", "class QWKEvaluation(Callback):\n", " def __init__(self, validation_data=(), batch_size=64, interval=1):\n", " super(Callback, self).__init__()\n", "\n", " self.interval = interval\n", " self.batch_size = batch_size\n", " self.valid_generator, self.y_val = validation_data\n", " self.history = []\n", "\n", " def on_epoch_end(self, epoch, logs={}):\n", " if epoch % self.interval == 0:\n", " y_pred = self.model.predict_generator(generator=self.valid_generator,\n", " steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)),\n", " workers=1, use_multiprocessing=False,\n", " verbose=1)\n", " def flatten(y):\n", " return np.argmax(y, axis=1).reshape(-1)\n", " \n", " score = cohen_kappa_score(flatten(self.y_val),\n", " flatten(y_pred),\n", " labels=[0,1,2,3,4],\n", " weights='quadratic')\n", " print(\"\\n epoch: %d - QWK_score: %.6f \\n\" % (epoch+1, score))\n", " self.history.append(score)\n", " if score >= max(self.history):\n", " print('saving checkpoint: ', score)\n", " self.model.save('../working/densenet_bestqwk.h5')\n", "\n", "qwk = QWKEvaluation(validation_data=(valid_generator, valid_y),\n", " batch_size=batch_size, interval=1)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "W0721 18:27:46.228304 139993109382912 deprecation_wrapper.py:119] From /home/gezi/py3env/lib/python3.6/site-packages/keras/optimizers.py:790: The name tf.train.Optimizer is deprecated. Please use tf.compat.v1.train.Optimizer instead.\n", "\n", "W0721 18:27:46.374963 139993109382912 deprecation.py:323] From /home/gezi/py3env/lib/python3.6/site-packages/tensorflow/python/ops/math_grad.py:1250: add_dispatch_support..wrapper (from tensorflow.python.ops.array_ops) is deprecated and will be removed in a future version.\n", "Instructions for updating:\n", "Use tf.where in 2.0, which has the same broadcast rule as np.where\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/2\n", "25/25 [==============================] - 89s 4s/step - loss: 1.5424\n", "18/18 [==============================] - 32s 2s/step\n", "\n", " epoch: 1 - QWK_score: 0.006788 \n", "\n", "saving checkpoint: 0.006787894024453456\n", "Epoch 2/2\n", "25/25 [==============================] - 51s 2s/step - loss: 0.8708\n", "18/18 [==============================] - 32s 2s/step\n", "\n", " epoch: 2 - QWK_score: 0.134186 \n", "\n", "saving checkpoint: 0.1341858202851799\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# warm up model\n", "for layer in model.layers:\n", " layer.trainable = False\n", "\n", "for i in range(-3,0):\n", " model.layers[i].trainable = True\n", "\n", "model.compile(\n", " loss='categorical_crossentropy',\n", " optimizer=Adam(1e-3))\n", "\n", "model.fit_generator(\n", " train_generator,\n", " steps_per_epoch=np.ceil(float(len(train_y)) / float(128)),\n", " epochs=2,\n", " workers=WORKERS, use_multiprocessing=True,\n", " verbose=1,\n", " callbacks=[qwk])" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/30\n", "130/130 [==============================] - 250s 2s/step - loss: 0.8822 - val_loss: 0.5759\n", "\n", "Epoch 00001: val_loss improved from inf to 0.57595, saving model to ../working/densenet_.h5\n", "18/18 [==============================] - 31s 2s/step\n", "\n", " epoch: 1 - QWK_score: 0.872207 \n", "\n", "saving checkpoint: 0.8722066723607128\n", "Epoch 2/30\n", "130/130 [==============================] - 227s 2s/step - loss: 0.7148 - val_loss: 0.5361\n", "\n", "Epoch 00002: val_loss improved from 0.57595 to 0.53611, saving model to ../working/densenet_.h5\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 2 - QWK_score: 0.865784 \n", "\n", "Epoch 3/30\n", "130/130 [==============================] - 233s 2s/step - loss: 0.6640 - val_loss: 0.5616\n", "\n", "Epoch 00003: val_loss did not improve from 0.53611\n", "18/18 [==============================] - 31s 2s/step\n", "\n", " epoch: 3 - QWK_score: 0.886918 \n", "\n", "saving checkpoint: 0.8869182477817812\n", "Epoch 4/30\n", "130/130 [==============================] - 238s 2s/step - loss: 0.6400 - val_loss: 0.4575\n", "\n", "Epoch 00004: val_loss improved from 0.53611 to 0.45754, saving model to ../working/densenet_.h5\n", "18/18 [==============================] - 31s 2s/step\n", "\n", " epoch: 4 - QWK_score: 0.887315 \n", "\n", "saving checkpoint: 0.8873145139801656\n", "Epoch 5/30\n", "130/130 [==============================] - 222s 2s/step - loss: 0.5950 - val_loss: 0.4591\n", "\n", "Epoch 00005: val_loss did not improve from 0.45754\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 5 - QWK_score: 0.904261 \n", "\n", "saving checkpoint: 0.9042614532676219\n", "Epoch 6/30\n", "130/130 [==============================] - 225s 2s/step - loss: 0.5742 - val_loss: 0.4748\n", "\n", "Epoch 00006: val_loss did not improve from 0.45754\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 6 - QWK_score: 0.874059 \n", "\n", "Epoch 7/30\n", "130/130 [==============================] - 234s 2s/step - loss: 0.5522 - val_loss: 0.5848\n", "\n", "Epoch 00007: val_loss did not improve from 0.45754\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 7 - QWK_score: 0.873151 \n", "\n", "Epoch 8/30\n", "130/130 [==============================] - 240s 2s/step - loss: 0.5699 - val_loss: 0.4755\n", "\n", "Epoch 00008: val_loss did not improve from 0.45754\n", "\n", "Epoch 00008: ReduceLROnPlateau reducing learning rate to 4.999999873689376e-05.\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 8 - QWK_score: 0.877792 \n", "\n", "Epoch 9/30\n", "130/130 [==============================] - 223s 2s/step - loss: 0.5226 - val_loss: 0.4735\n", "\n", "Epoch 00009: val_loss did not improve from 0.45754\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 9 - QWK_score: 0.901197 \n", "\n", "Epoch 10/30\n", "130/130 [==============================] - 230s 2s/step - loss: 0.4991 - val_loss: 0.4175\n", "\n", "Epoch 00010: val_loss improved from 0.45754 to 0.41751, saving model to ../working/densenet_.h5\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 10 - QWK_score: 0.904162 \n", "\n", "Epoch 11/30\n", "130/130 [==============================] - 236s 2s/step - loss: 0.4908 - val_loss: 0.4513\n", "\n", "Epoch 00011: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 11 - QWK_score: 0.894103 \n", "\n", "Epoch 12/30\n", "130/130 [==============================] - 226s 2s/step - loss: 0.4669 - val_loss: 0.4435\n", "\n", "Epoch 00012: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 12 - QWK_score: 0.903984 \n", "\n", "Epoch 13/30\n", "130/130 [==============================] - 225s 2s/step - loss: 0.4810 - val_loss: 0.4670\n", "\n", "Epoch 00013: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 13 - QWK_score: 0.893420 \n", "\n", "Epoch 14/30\n", "130/130 [==============================] - 232s 2s/step - loss: 0.4624 - val_loss: 0.4259\n", "\n", "Epoch 00014: val_loss did not improve from 0.41751\n", "\n", "Epoch 00014: ReduceLROnPlateau reducing learning rate to 2.499999936844688e-05.\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 14 - QWK_score: 0.907608 \n", "\n", "saving checkpoint: 0.9076076812437555\n", "Epoch 15/30\n", "130/130 [==============================] - 239s 2s/step - loss: 0.4477 - val_loss: 0.4468\n", "\n", "Epoch 00015: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 15 - QWK_score: 0.907599 \n", "\n", "Epoch 16/30\n", "130/130 [==============================] - 223s 2s/step - loss: 0.4313 - val_loss: 0.4665\n", "\n", "Epoch 00016: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 16 - QWK_score: 0.906826 \n", "\n", "Epoch 17/30\n", "130/130 [==============================] - 226s 2s/step - loss: 0.4352 - val_loss: 0.4482\n", "\n", "Epoch 00017: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 31s 2s/step\n", "\n", " epoch: 17 - QWK_score: 0.910783 \n", "\n", "saving checkpoint: 0.9107830812279493\n", "Epoch 18/30\n", "130/130 [==============================] - 232s 2s/step - loss: 0.4232 - val_loss: 0.4211\n", "\n", "Epoch 00018: val_loss did not improve from 0.41751\n", "\n", "Epoch 00018: ReduceLROnPlateau reducing learning rate to 1.249999968422344e-05.\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 18 - QWK_score: 0.908851 \n", "\n", "Epoch 19/30\n", "130/130 [==============================] - 225s 2s/step - loss: 0.3980 - val_loss: 0.4202\n", "\n", "Epoch 00019: val_loss did not improve from 0.41751\n", "18/18 [==============================] - 30s 2s/step\n", "\n", " epoch: 19 - QWK_score: 0.898774 \n", "\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_mixup = My_Generator(train_x, train_y, 24, is_train=True, mix=False, augment=True)\n", "# train all layers\n", "for layer in model.layers:\n", " layer.trainable = True\n", "callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk]\n", "model.compile(loss='categorical_crossentropy',\n", " # loss=kappa_loss,\n", " optimizer=Adam(lr=1e-4))\n", "model.fit_generator(\n", " train_mixup,\n", " steps_per_epoch=np.ceil(float(len(train_x)) / float(batch_size)),\n", " validation_data=valid_generator,\n", " validation_steps=np.ceil(float(len(valid_x)) / float(batch_size)),\n", " epochs=epochs,\n", " verbose=1,\n", " workers=1, use_multiprocessing=False,\n", " callbacks=callbacks_list)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "submit = pd.read_csv('../input/aptos2019-blindness-detection/sample_submission.csv')\n", "model.load_weights('../working/densenet_bestqwk.h5')\n", "predicted = []" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# reference:https://www.kaggle.com/CVxTz/cnn-starter-nasnet-mobile-0-9709-lb \n", "for i, name in tqdm(enumerate(submit['id_code'])):\n", " path = os.path.join('../input/aptos2019-blindness-detection/test_images/', name+'.png')\n", " image = cv2.imread(path)\n", " image = cv2.resize(image, (SIZE, SIZE))\n", " X = np.array((image[np.newaxis])/255)\n", " score_predict=((model.predict(X).ravel()*model.predict(X[:, ::-1, :, :]).ravel()*model.predict(X[:, ::-1, ::-1, :]).ravel()*model.predict(X[:, :, ::-1, :]).ravel())**0.25).tolist()\n", " label_predict = np.argmax(score_predict)\n", " predicted.append(str(label_predict))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "submit['diagnosis'] = predicted\n", "submit.to_csv('submission.csv', index=False)\n", "submit.head()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 1 } ================================================ FILE: projects/kaggle/blindness/other/Intro APTOS Diabetic Retinopathy (EDA & Sta e77c27.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "**BEFORE YOU FORK, PLEASE SUPPORT AND UPVOTE**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Versions:\n", "* v3: first scoring kernel (LB 0.676)\n", "* v5: Longer epochs, export model, and optimize kappa (LB 0.705)\n", "* v8: Converted to regression problem, as required by the QWK optimizer(LB 0.722)\n", "* v11: Added TTA and seed" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Diabetic Retinopathy \n", "\n", "Diabetic retinopathy (DR), also known as diabetic eye disease, is a medical condition in which damage occurs to the retina due to diabetes mellitus. It is a leading cause of blindness. Diabetic retinopathy affects up to 80 percent of those who have had diabetes for 20 years or more. Diabetic retinopathy often has no early warning signs. **Retinal (fundus) photography with manual interpretation is a widely accepted screening tool for diabetic retinopathy**, with performance that can exceed that of in-person dilated eye examinations. \n", "\n", "The below figure shows an example of a healthy patient and a patient with diabetic retinopathy as viewed by fundus photography ([source](https://www.biorxiv.org/content/biorxiv/early/2018/06/19/225508.full.pdf)):\n", "\n", "![image.png](data:image/jpeg;base64,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)\n", "\n", "An automated tool for grading severity of diabetic retinopathy would be very useful for accerelating detection and treatment. Recently, there have been a number of attempts to utilize deep learning to diagnose DR and automatically grade diabetic retinopathy. This includes a previous [competition](https://kaggle.com/c/diabetic-retinopathy-detection) and [work by Google](https://ai.googleblog.com/2016/11/deep-learning-for-detection-of-diabetic.html). Even one deep-learning based system is [FDA approved](https://www.fda.gov/NewsEvents/Newsroom/PressAnnouncements/ucm604357.htm). \n", "\n", "Clearly, this dataset and deep learning problem is quite important. \n", "\n", "# A look at the data:\n", "\n", "Data description from the competition:\n", "\n", ">You are provided with a large set of high-resolution retina images taken under a variety of imaging conditions. A left and right field is provided for every subject. >Images are labeled with a subject id as well as either left or right (e.g. 1_left.jpeg is the left eye of patient id 1).\n", ">\n", ">A clinician has rated the presence of diabetic retinopathy in each image on a scale of 0 to 4, according to the following scale:\n", ">\n", ">0 - No DR\n", ">\n", ">1 - Mild\n", ">\n", ">2 - Moderate\n", ">\n", ">3 - Severe\n", ">\n", ">4 - Proliferative DR\n", ">\n", ">Your task is to create an automated analysis system capable of assigning a score based on this scale.\n", "\n", "...\n", "\n", "> Like any real-world data set, you will encounter noise in both the images and labels. Images may contain artifacts, be out of focus, underexposed, or overexposed. A major aim of this competition is to develop robust algorithms that can function in the presence of noise and variation.\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%reload_ext autoreload\n", "%autoreload 2\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "_cell_guid": "b1076dfc-b9ad-4769-8c92-a6c4dae69d19", "_uuid": "8f2839f25d086af736a60e9eeb907d3b93b6e0e5" }, "outputs": [], "source": [ "from fastai import *\n", "from fastai.vision import *\n", "import pandas as pd\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Making pretrained weights work without needing to find the default filename\n", "if not os.path.exists('/tmp/.cache/torch/checkpoints/'):\n", " os.makedirs('/tmp/.cache/torch/checkpoints/')\n", "!cp '../input/resnet50/resnet50.pth' '/tmp/.cache/torch/checkpoints/resnet50-19c8e357.pth'" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "_cell_guid": "79c7e3d0-c299-4dcb-8224-4455121ee9b0", "_uuid": "d629ff2d2480ee46fbb7e2d37f6b5fab8052498a" }, "outputs": [ { "data": { "text/plain": [ "['train_images',\n", " 'test_images',\n", " 'sample_submission.csv',\n", " 'test.csv',\n", " 'train.csv',\n", " 'aptos2019-blindness-detection',\n", " 'mobilenet-v2-keras-weights',\n", " 'ResNet-50',\n", " 'resnet50']" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import os\n", "os.listdir('../input')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Make sure cudnn is enabled: True\n" ] } ], "source": [ "print('Make sure cudnn is enabled:', torch.backends.cudnn.enabled)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def seed_everything(seed):\n", " random.seed(seed)\n", " os.environ['PYTHONHASHSEED'] = str(seed)\n", " np.random.seed(seed)\n", " torch.manual_seed(seed)\n", " torch.cuda.manual_seed(seed)\n", " torch.backends.cudnn.deterministic = True\n", "\n", "SEED = 999\n", "seed_everything(SEED)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Reading data and Basic EDA\n", "\n", "Here I am going to open the dataset with pandas, check distribution of labels." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
diagnosispath
02../input/aptos2019-blindness-detection/train_i...
11../input/aptos2019-blindness-detection/train_i...
20../input/aptos2019-blindness-detection/train_i...
34../input/aptos2019-blindness-detection/train_i...
40../input/aptos2019-blindness-detection/train_i...
53../input/aptos2019-blindness-detection/train_i...
62../input/aptos2019-blindness-detection/train_i...
70../input/aptos2019-blindness-detection/train_i...
80../input/aptos2019-blindness-detection/train_i...
91../input/aptos2019-blindness-detection/train_i...
\n", "
" ], "text/plain": [ " diagnosis path\n", "0 2 ../input/aptos2019-blindness-detection/train_i...\n", "1 1 ../input/aptos2019-blindness-detection/train_i...\n", "2 0 ../input/aptos2019-blindness-detection/train_i...\n", "3 4 ../input/aptos2019-blindness-detection/train_i...\n", "4 0 ../input/aptos2019-blindness-detection/train_i...\n", "5 3 ../input/aptos2019-blindness-detection/train_i...\n", "6 2 ../input/aptos2019-blindness-detection/train_i...\n", "7 0 ../input/aptos2019-blindness-detection/train_i...\n", "8 0 ../input/aptos2019-blindness-detection/train_i...\n", "9 1 ../input/aptos2019-blindness-detection/train_i..." ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "base_image_dir = os.path.join('..', 'input/aptos2019-blindness-detection/')\n", "train_dir = os.path.join(base_image_dir,'train_images/')\n", "df = pd.read_csv(os.path.join(base_image_dir, 'train.csv'))\n", "df['path'] = df['id_code'].map(lambda x: os.path.join(train_dir,'{}.png'.format(x)))\n", "df = df.drop(columns=['id_code'])\n", "df = df.sample(frac=1).reset_index(drop=True) #shuffle dataframe\n", "df.head(10)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "There are 3662 images\n" ] } ], "source": [ "len_df = len(df)\n", "print(f\"There are {len_df} images\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is actually very small. The [previous competition](https://kaggle.com/c/diabetic-retinopathy-detection) had ~35k images, which supports the idea that pretraining on that dataset may be quite beneficial." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The dataset is highly imbalanced, with many samples for level 0, and very little for the rest of the levels." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df['diagnosis'].hist(figsize = (10, 5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's look at an example image:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2896 1944\n" ] } ], "source": [ "from PIL import Image\n", "\n", "im = Image.open(df['path'][1])\n", "width, height = im.size\n", "print(width,height) \n", "im.show()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(np.asarray(im))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The images are actually quite big. We will resize to a much smaller size." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "bs = 64 #smaller batch size is better for training, but may take longer\n", "sz=224" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "tfms = get_transforms(do_flip=True,flip_vert=True,max_rotate=360,max_warp=0,max_zoom=1.1,max_lighting=0.1,p_lighting=0.5)\n", "src = (ImageList.from_df(df=df,path='./',cols='path') #get dataset from dataset\n", " .split_by_rand_pct(0.2) #Splitting the dataset\n", " .label_from_df(cols='diagnosis',label_cls=FloatList) #obtain labels from the level column\n", " )\n", "data= (src.transform(tfms,size=sz,resize_method=ResizeMethod.SQUISH,padding_mode='zeros') #Data augmentation\n", " .databunch(bs=bs,num_workers=4) #DataBunch\n", " .normalize(imagenet_stats) #Normalize \n", " )" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data.show_batch(rows=20, figsize=(17,16))" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data.show_batch(rows=20, figsize=(17,16))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Training (Transfer learning)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The Kaggle competition used the Cohen's quadratically weighted kappa so I have that here to compare. This is a better metric when dealing with imbalanced datasets like this one, and for measuring inter-rater agreement for categorical classification (the raters being the human-labeled dataset and the neural network predictions). Here is an implementation based on the scikit-learn's implementation, but converted to a pytorch tensor, as that is what fastai uses." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import cohen_kappa_score\n", "def quadratic_kappa(y_hat, y):\n", " return torch.tensor(cohen_kappa_score(torch.round(y_hat), y, weights='quadratic'),device='cuda:0')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Training:**\n", "\n", "We use transfer learning, where we retrain the last layers of a pretrained neural network. I use the ResNet50 architecture trained on the ImageNet dataset, which has been commonly used for pre-training applications in computer vision. Fastai makes it quite simple to create a model and train:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Downloading: \"https://download.pytorch.org/models/resnet50-19c8e357.pth\" to /home/gezi/.cache/torch/checkpoints/resnet50-19c8e357.pth\n", "100%|██████████| 102502400/102502400 [11:55<00:00, 143238.52it/s]\n" ] } ], "source": [ "learn = cnn_learner(data, base_arch=models.resnet50, metrics = [quadratic_kappa])" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n", "Min numerical gradient: 9.12E-07\n", "Min loss divided by 10: 1.00E-02\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.lr_find()\n", "learn.recorder.plot(suggestion=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we can see that the loss decreases fastest around `lr=1e-2` so that is what we will use to train:" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossquadratic_kappatime
01.9778920.5658670.79873502:33
11.0261500.3527070.84396902:25
20.6717870.3065770.87811602:30
30.4995450.3024700.86241302:30
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.fit_one_cycle(4,max_lr = 1e-2)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAEKCAYAAAARnO4WAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3XmcFPWd//HXp3t67ou5GGC4Qe57BA2CosaoUZHIGl2NUZPwi9nN5W4Sk2yiOdw1F+sRN4km6pooxsRzvY0XSiIIyiU3cg0MzAHMDHMf398f3YwDzAwDTE/1dL+fj0c/uru6uuvTNfCub3+r6lvmnENERKKfz+sCRESkZyjwRURihAJfRCRGKPBFRGKEAl9EJEYo8EVEYkRYA9/MMs3sr2a2wczWm9mZ4VyeiIh0LC7Mn38X8JJzbr6ZxQPJYV6eiIh0wMJ14pWZZQArgWFOZ3eJiHgunC38oUAp8KCZTQJWAF93zlW3ncnMFgALAFJSUqaNHj06jCWJiESXFStWlDnncrsybzhb+IXAu8BM59xSM7sLqHTO/aCj9xQWFrrly5eHpR4RkWhkZiucc4VdmTecO22LgCLn3NLQ878CU8O4PBER6UTYAt85txfYZWajQpPOA9aFa3kiItK5cB+l81XgkdAROh8BN4R5eSIi0oGwBr5zbiXQpb4lEYkejY2NFBUVUVdX53UpUSMxMZGCggICgcBJf0a4W/giEoOKiopIS0tjyJAhmJnX5fR6zjnKy8spKipi6NChJ/05GlpBRLpdXV0d2dnZCvtuYmZkZ2ef8i8mBb6IhIXCvnt1x/qMisC/+7XNvLWp1OsyREQiWlQE/u/e2spiBb6IhJSXlzN58mQmT55Mfn4+AwYMaH3e0NDQpc+44YYb2LhxY5gr7VlRsdM2KT6OmoZmr8sQkQiRnZ3NypUrAbjttttITU3l3//934+YxzmHcw6fr/1274MPPhj2OntaVLTwk+P91DY0eV2GiES4LVu2MHbsWK655hrGjRtHcXExCxYsoLCwkHHjxvHjH/+4dd6zzjqLlStX0tTURGZmJrfccguTJk3izDPPpKSkxMNvcfKiooWfHO9XC18kQv3o/z5k3Z7Kbv3Msf3TufXScSf13g0bNvDwww9TWBg8ReiOO+4gKyuLpqYm5syZw/z58xk7duwR76moqODss8/mjjvu4Oabb+aBBx7glltuOeXv0dOiooWfFO+ntlGBLyLHN3z48NawB1i0aBFTp05l6tSprF+/nnXrjh0BJikpiYsuugiAadOmsX379p4qt1uphS8iYXWyLfFwSUlJaX28efNm7rrrLpYtW0ZmZibXXnttu8e6x8fHtz72+/00NfXOLuToaOEHtNNWRE5cZWUlaWlppKenU1xczMsvv+x1SWEVNS187bQVkRM1depUxo4dy+jRoxk8eDAzZ870uqSwCtsFUE7GyV4A5ZYnVvP6hhKWff/8MFQlIidq/fr1jBkzxusyok576zVSLoDSY5Li/dSqS0dEpFNREfjJ8X5qGpuJpF8rIiKRJkoCP47mFkdDc4vXpYiIRKyoCPykgB9A3ToiIp2IisBPjg8Gvg7NFBHpWFQEfpICX0TkuKIi8JPjg6cTqEtHRADmzJlzzElUd955JzfddFOH70lNTQVgz549zJ8/v915zjnnHI536Pidd95JTU1N6/OLL76YgwcPdrX0sIqSwD/cwtfJVyICV199NY899tgR0x577DGuvvrq4763f//+/PWvfz3pZR8d+C+88AKZmZkn/XndKSoCv7VLRwOoiQgwf/58nn/++daLnWzfvp09e/YwZcoUzjvvPKZOncqECRN45plnjnnv9u3bGT9+PAC1tbVcddVVjBkzhnnz5lFbW9s630033dQ6rPKtt94KwN13382ePXuYM2cOc+bMAWDIkCGUlZUBsHDhQsaPH8/48eO58847W5c3ZswYvvSlLzFu3DguuOCCI5bTnaJmaAVQl45IRHrxFti7pns/M38CXHRHhy9nZWUxffp0XnzxRebOnctjjz3GlVdeSVJSEk899RTp6emUlZVxxhlncNlll3V4vdjf/OY3JCcns379elavXs3UqVNbX7v99tvJysqiubmZ8847j9WrV/O1r32NhQsX8sYbb5CTk3PEZ61YsYIHH3yQpUuX4pxjxowZnH322fTp04fNmzezaNEi7r//fq688kqeeOIJrr322u5ZV21ERQs/ORDcbmmnrYgc1rZb53B3jnOO733ve0ycOJHzzz+f3bt3s2/fvg4/Y/Hixa3BO3HiRCZOnNj62uOPP87UqVOZMmUKH374YbvDKrf1zjvvMG/ePFJSUkhNTeUzn/kMb7/9NgBDhw5l8uTJQHiHX46K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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.recorder.plot_losses()\n", "learn.recorder.plot_metrics()" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n", "Min numerical gradient: 1.00E-05\n", "Min loss divided by 10: 9.12E-08\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.unfreeze()\n", "learn.lr_find()\n", "learn.recorder.plot(suggestion=True)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossquadratic_kappatime
00.3651950.2936790.87479602:29
10.3768510.2916510.88478802:30
20.3665590.3014500.87133302:25
30.3316970.2713820.88662302:31
40.3153410.2554990.89615602:30
50.2956120.2562940.89932402:29
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.fit_one_cycle(6, max_lr=slice(1e-6,1e-3))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.recorder.plot_losses()\n", "learn.recorder.plot_metrics()" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "learn.export()\n", "learn.save('stage-2')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's evaluate our model:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "interp = ClassificationInterpretation.from_learner(learn)\n", "\n", "losses,idxs = interp.top_losses()\n", "\n", "len(data.valid_ds)==len(losses)==len(idxs)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "#interp.plot_confusion_matrix(figsize=(12,12), dpi=60)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Optimize the Metric\n", "\n", "Optimizing the quadratic kappa metric was an important part of the top solutions in the previous competition. Thankfully, @abhishek has already provided code to do this for us. We will use this to improve the score." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "valid_preds = learn.get_preds(ds_type=DatasetType.Valid)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import os\n", "import scipy as sp\n", "from functools import partial\n", "from sklearn import metrics\n", "from collections import Counter\n", "import json" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "class OptimizedRounder(object):\n", " def __init__(self):\n", " self.coef_ = 0\n", "\n", " def _kappa_loss(self, coef, X, y):\n", " X_p = np.copy(X)\n", " for i, pred in enumerate(X_p):\n", " if pred < coef[0]:\n", " X_p[i] = 0\n", " elif pred >= coef[0] and pred < coef[1]:\n", " X_p[i] = 1\n", " elif pred >= coef[1] and pred < coef[2]:\n", " X_p[i] = 2\n", " elif pred >= coef[2] and pred < coef[3]:\n", " X_p[i] = 3\n", " else:\n", " X_p[i] = 4\n", "\n", " ll = metrics.cohen_kappa_score(y, X_p, weights='quadratic')\n", " return -ll\n", "\n", " def fit(self, X, y):\n", " loss_partial = partial(self._kappa_loss, X=X, y=y)\n", " initial_coef = [0.5, 1.5, 2.5, 3.5]\n", " self.coef_ = sp.optimize.minimize(loss_partial, initial_coef, method='nelder-mead')\n", " print(-loss_partial(self.coef_['x']))\n", "\n", " def predict(self, X, coef):\n", " X_p = np.copy(X)\n", " for i, pred in enumerate(X_p):\n", " if pred < coef[0]:\n", " X_p[i] = 0\n", " elif pred >= coef[0] and pred < coef[1]:\n", " X_p[i] = 1\n", " elif pred >= coef[1] and pred < coef[2]:\n", " X_p[i] = 2\n", " elif pred >= coef[2] and pred < coef[3]:\n", " X_p[i] = 3\n", " else:\n", " X_p[i] = 4\n", " return X_p\n", "\n", " def coefficients(self):\n", " return self.coef_['x']" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.9085164856079234\n" ] } ], "source": [ "optR = OptimizedRounder()\n", "optR.fit(valid_preds[0],valid_preds[1])" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.524648 1.566159 2.455142 3.276578]\n" ] } ], "source": [ "coefficients = optR.coefficients()\n", "print(coefficients)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## TTA\n", "\n", "Test-time augmentation, or TTA, is a commonly-used technique to provide a boost in your score, and is very simple to implement. Fastai already has TTA implemented, but it is not the best for all purposes, so I am redefining the fastai function and using my custom version." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "from fastai.core import *\n", "from fastai.basic_data import *\n", "from fastai.basic_train import *\n", "from fastai.torch_core import *\n", "def _tta_only(learn:Learner, ds_type:DatasetType=DatasetType.Valid, num_pred:int=10) -> Iterator[List[Tensor]]:\n", " \"Computes the outputs for several augmented inputs for TTA\"\n", " dl = learn.dl(ds_type)\n", " ds = dl.dataset\n", " old = ds.tfms\n", " aug_tfms = [o for o in learn.data.train_ds.tfms]\n", " try:\n", " pbar = master_bar(range(num_pred))\n", " for i in pbar:\n", " ds.tfms = aug_tfms\n", " yield get_preds(learn.model, dl, pbar=pbar)[0]\n", " finally: ds.tfms = old\n", "\n", "Learner.tta_only = _tta_only\n", "\n", "def _TTA(learn:Learner, beta:float=0, ds_type:DatasetType=DatasetType.Valid, num_pred:int=10, with_loss:bool=False) -> Tensors:\n", " \"Applies TTA to predict on `ds_type` dataset.\"\n", " preds,y = learn.get_preds(ds_type)\n", " all_preds = list(learn.tta_only(ds_type=ds_type, num_pred=num_pred))\n", " avg_preds = torch.stack(all_preds).mean(0)\n", " if beta is None: return preds,avg_preds,y\n", " else: \n", " final_preds = preds*beta + avg_preds*(1-beta)\n", " if with_loss: \n", " with NoneReduceOnCPU(learn.loss_func) as lf: loss = lf(final_preds, y)\n", " return final_preds, y, loss\n", " return final_preds, y\n", "\n", "Learner.TTA = _TTA" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Submission\n", "Let's now create a submission" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
id_codediagnosis
00005cfc8afb60
1003f0afdcd150
2006efc72b6380
300836aaacf060
4009245722fa40
\n", "
" ], "text/plain": [ " id_code diagnosis\n", "0 0005cfc8afb6 0\n", "1 003f0afdcd15 0\n", "2 006efc72b638 0\n", "3 00836aaacf06 0\n", "4 009245722fa4 0" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sample_df = pd.read_csv('../input/aptos2019-blindness-detection/sample_submission.csv')\n", "sample_df.head()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "learn.data.add_test(ImageList.from_df(sample_df,'../input/aptos2019-blindness-detection',folder='test_images',suffix='.png'))" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/html": [], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "preds,y = learn.TTA(ds_type=DatasetType.Test)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "test_predictions = optR.predict(preds, coefficients)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
id_codediagnosis
00005cfc8afb61
1003f0afdcd152
2006efc72b6382
300836aaacf062
4009245722fa42
\n", "
" ], "text/plain": [ " id_code diagnosis\n", "0 0005cfc8afb6 1\n", "1 003f0afdcd15 2\n", "2 006efc72b638 2\n", "3 00836aaacf06 2\n", "4 009245722fa4 2" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sample_df.diagnosis = test_predictions.astype(int)\n", "sample_df.head()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "sample_df.to_csv('submission.csv',index=False)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 1 } ================================================ FILE: projects/kaggle/blindness/other/keras_baseline.py ================================================ # coding: utf-8 # ### Credits and references : The complete code is taken from [this kernel](https://www.kaggle.com/mathormad/aptos-resnet50-baseline).Changed the model,added some augmentations and retrained it.Thanks to the [Author of the kernel](https://www.kaggle.com/mathormad). # #### BEFORE YOU FORK, PLEASE SUPPORT AND UPVOTE THE CURRENT KERNEL AND ORIGINAL [RESNET50 STARTER KERNEL](https://www.kaggle.com/mathormad/aptos-resnet50-baseline) # # Introduction: # ## What is diabetic retinopathy? # #### Diabetic retinopathy is the most common form of diabetic eye disease. Diabetic retinopathy usually only affects people who have had diabetes (diagnosed or undiagnosed) for a significant number of years. # #### Retinopathy can affect all diabetics and becomes particularly dangerous, increasing the risk of blindness, if it is left untreated. # #### The risk of developing diabetic retinopathy is known to increase with age as well with less well controlled blood sugar and blood pressure level. # #### According to the NHS, 1,280 new cases of blindness caused by diabetic retinopathy are reported each year in England alone, while a further 4,200 people in the country are thought to be at risk of retinopathy-related vision loss. # #### All people with diabetes should have a dilated eye examination at least once every year to check for diabetic retinopathy. # ![](https://www.aoa.org/Images/public/Diabetic_Retinopathy.jpg) # In[ ]: # This Python 3 environment comes with many helpful analytics libraries installed # It is defined by the kaggle/python docker image: https://github.com/kaggle/docker-python # For example, here's several helpful packages to load in import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv) # Input data files are available in the "../input/" directory. # For example, running this (by clicking run or pressing Shift+Enter) will list the files in the input directory import os print(os.listdir("../input")) # Any results you write to the current directory are saved as output. # In[ ]: import gezi from keras.preprocessing.image import ImageDataGenerator from keras.models import Sequential, load_model from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) from keras.callbacks import ModelCheckpoint from keras import metrics from keras.optimizers import Adam from keras import backend as K import keras from keras.models import Model # In[ ]: import matplotlib.pyplot as plt import skimage.io from skimage.transform import resize from imgaug import augmenters as iaa from tqdm import tqdm import PIL from PIL import Image, ImageOps import cv2 from sklearn.utils import class_weight, shuffle from keras.losses import binary_crossentropy, categorical_crossentropy #from keras.applications.resnet50 import preprocess_input from keras.applications.densenet import DenseNet121,DenseNet169 import keras.backend as K import tensorflow as tf from sklearn.metrics import f1_score, fbeta_score, cohen_kappa_score from keras.utils import Sequence from keras.utils import to_categorical from sklearn.model_selection import train_test_split import imgaug as ia WORKERS = 2 CHANNEL = 3 import warnings warnings.filterwarnings("ignore") SIZE = 300 NUM_CLASSES = 5 # In[ ]: df_train = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') df_test = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') # ### Visualising some sample pictures of different classes. # In[ ]: def display_samples(df, columns=4, rows=3): fig=plt.figure(figsize=(5*columns, 4*rows)) for i in range(columns*rows): image_path = df.loc[i,'id_code'] image_id = df.loc[i,'diagnosis'] img = cv2.imread(f'../input/aptos2019-blindness-detection/train_images/{image_path}.png') img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) fig.add_subplot(rows, columns, i+1) plt.title(image_id) plt.imshow(img) plt.tight_layout() display_samples(df_train) # In[ ]: x = df_train['id_code'] y = df_train['diagnosis'] x, y = shuffle(x, y, random_state=8) y.hist() # In[ ]: y = to_categorical(y, num_classes=NUM_CLASSES) train_x, valid_x, train_y, valid_y = train_test_split(x, y, test_size=0.15, stratify=y, random_state=8) print(train_x.shape) print(train_y.shape) print(valid_x.shape) print(valid_y.shape) # In[ ]: sometimes = lambda aug: iaa.Sometimes(0.5, aug) seq = iaa.Sequential( [ # apply the following augmenters to most images iaa.Fliplr(0.5), # horizontally flip 50% of all images iaa.Flipud(0.2), # vertically flip 20% of all images sometimes(iaa.Affine( scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}, # scale images to 80-120% of their size, individually per axis translate_percent={"x": (-0.1, 0.1), "y": (-0.1, 0.1)}, # translate by -20 to +20 percent (per axis) rotate=(-10, 10), # rotate by -45 to +45 degrees shear=(-5, 5), # shear by -16 to +16 degrees order=[0, 1], # use nearest neighbour or bilinear interpolation (fast) cval=(0, 255), # if mode is constant, use a cval between 0 and 255 mode=ia.ALL # use any of scikit-image's warping modes (see 2nd image from the top for examples) )), # execute 0 to 5 of the following (less important) augmenters per image # don't execute all of them, as that would often be way too strong iaa.SomeOf((0, 5), [ sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))), # convert images into their superpixel representation iaa.OneOf([ iaa.GaussianBlur((0, 1.0)), # blur images with a sigma between 0 and 3.0 iaa.AverageBlur(k=(3, 5)), # blur image using local means with kernel sizes between 2 and 7 iaa.MedianBlur(k=(3, 5)), # blur image using local medians with kernel sizes between 2 and 7 ]), iaa.Sharpen(alpha=(0, 1.0), lightness=(0.9, 1.1)), # sharpen images iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)), # emboss images # search either for all edges or for directed edges, # blend the result with the original image using a blobby mask iaa.SimplexNoiseAlpha(iaa.OneOf([ iaa.EdgeDetect(alpha=(0.5, 1.0)), iaa.DirectedEdgeDetect(alpha=(0.5, 1.0), direction=(0.0, 1.0)), ])), iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01*255), per_channel=0.5), # add gaussian noise to images iaa.OneOf([ iaa.Dropout((0.01, 0.05), per_channel=0.5), # randomly remove up to 10% of the pixels iaa.CoarseDropout((0.01, 0.03), size_percent=(0.01, 0.02), per_channel=0.2), ]), iaa.Invert(0.01, per_channel=True), # invert color channels iaa.Add((-2, 2), per_channel=0.5), # change brightness of images (by -10 to 10 of original value) iaa.AddToHueAndSaturation((-1, 1)), # change hue and saturation # either change the brightness of the whole image (sometimes # per channel) or change the brightness of subareas iaa.OneOf([ iaa.Multiply((0.9, 1.1), per_channel=0.5), iaa.FrequencyNoiseAlpha( exponent=(-1, 0), first=iaa.Multiply((0.9, 1.1), per_channel=True), second=iaa.ContrastNormalization((0.9, 1.1)) ) ]), sometimes(iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25)), # move pixels locally around (with random strengths) sometimes(iaa.PiecewiseAffine(scale=(0.01, 0.05))), # sometimes move parts of the image around sometimes(iaa.PerspectiveTransform(scale=(0.01, 0.1))) ], random_order=True ) ], random_order=True) # In[ ]: class My_Generator(Sequence): def __init__(self, image_filenames, labels, batch_size, is_train=True, mix=False, augment=False): self.image_filenames, self.labels = image_filenames, labels self.batch_size = batch_size self.is_train = is_train self.is_augment = augment if(self.is_train): self.on_epoch_end() self.is_mix = mix def __len__(self): return int(np.ceil(len(self.image_filenames) / float(self.batch_size))) def __getitem__(self, idx): batch_x = self.image_filenames[idx * self.batch_size:(idx + 1) * self.batch_size] batch_y = self.labels[idx * self.batch_size:(idx + 1) * self.batch_size] if(self.is_train): return self.train_generate(batch_x, batch_y) return self.valid_generate(batch_x, batch_y) def on_epoch_end(self): if(self.is_train): self.image_filenames, self.labels = shuffle(self.image_filenames, self.labels) else: pass def mix_up(self, x, y): lam = np.random.beta(0.2, 0.4) ori_index = np.arange(int(len(x))) index_array = np.arange(int(len(x))) np.random.shuffle(index_array) mixed_x = lam * x[ori_index] + (1 - lam) * x[index_array] mixed_y = lam * y[ori_index] + (1 - lam) * y[index_array] return mixed_x, mixed_y def train_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) if(self.is_augment): img = seq.augment_image(img) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) if(self.is_mix): batch_images, batch_y = self.mix_up(batch_images, batch_y) return batch_images, batch_y def valid_generate(self, batch_x, batch_y): batch_images = [] for (sample, label) in zip(batch_x, batch_y): img = cv2.imread('../input/aptos2019-blindness-detection/train_images/'+sample+'.png') img = cv2.resize(img, (SIZE, SIZE)) batch_images.append(img) batch_images = np.array(batch_images, np.float32) / 255 batch_y = np.array(batch_y, np.float32) return batch_images, batch_y # In[ ]: def create_model(input_shape, n_out): input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model # In[ ]: # create callbacks list from keras.callbacks import (ModelCheckpoint, LearningRateScheduler, EarlyStopping, ReduceLROnPlateau,CSVLogger) epochs = 30; batch_size = 32 checkpoint = ModelCheckpoint('../working/densenet_.h5', monitor='val_loss', verbose=1, save_best_only=True, mode='min', save_weights_only = True) reduceLROnPlat = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=4, verbose=1, mode='auto', epsilon=0.0001) early = EarlyStopping(monitor="val_loss", mode="min", patience=9) csv_logger = CSVLogger(filename='../working/training_log.csv', separator=',', append=True) train_generator = My_Generator(train_x, train_y, 128, is_train=True) train_mixup = My_Generator(train_x, train_y, batch_size, is_train=True, mix=False, augment=True) valid_generator = My_Generator(valid_x, valid_y, batch_size, is_train=False) model = create_model( input_shape=(SIZE,SIZE,3), n_out=NUM_CLASSES) # In[ ]: # reference link: https://www.kaggle.com/christofhenkel/weighted-kappa-loss-for-keras-tensorflow def kappa_loss(y_true, y_pred, y_pow=2, eps=1e-12, N=5, bsize=32, name='kappa'): """A continuous differentiable approximation of discrete kappa loss. Args: y_pred: 2D tensor or array, [batch_size, num_classes] y_true: 2D tensor or array,[batch_size, num_classes] y_pow: int, e.g. y_pow=2 N: typically num_classes of the model bsize: batch_size of the training or validation ops eps: a float, prevents divide by zero name: Optional scope/name for op_scope. Returns: A tensor with the kappa loss.""" with tf.name_scope(name): y_true = tf.to_float(y_true) repeat_op = tf.to_float(tf.tile(tf.reshape(tf.range(0, N), [N, 1]), [1, N])) repeat_op_sq = tf.square((repeat_op - tf.transpose(repeat_op))) weights = repeat_op_sq / tf.to_float((N - 1) ** 2) pred_ = y_pred ** y_pow try: pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [-1, 1])) except Exception: pred_norm = pred_ / (eps + tf.reshape(tf.reduce_sum(pred_, 1), [bsize, 1])) hist_rater_a = tf.reduce_sum(pred_norm, 0) hist_rater_b = tf.reduce_sum(y_true, 0) conf_mat = tf.matmul(tf.transpose(pred_norm), y_true) nom = tf.reduce_sum(weights * conf_mat) denom = tf.reduce_sum(weights * tf.matmul( tf.reshape(hist_rater_a, [N, 1]), tf.reshape(hist_rater_b, [1, N])) / tf.to_float(bsize)) return nom*0.5 / (denom + eps) + categorical_crossentropy(y_true, y_pred)*0.5 # In[ ]: from keras.callbacks import Callback class QWKEvaluation(Callback): def __init__(self, validation_data=(), batch_size=64, interval=1): super(Callback, self).__init__() self.interval = interval self.batch_size = batch_size self.valid_generator, self.y_val = validation_data self.history = [] def on_epoch_end(self, epoch, logs={}): if epoch % self.interval == 0: y_pred = self.model.predict_generator(generator=self.valid_generator, steps=np.ceil(float(len(self.y_val)) / float(self.batch_size)), workers=1, use_multiprocessing=False, verbose=1) def flatten(y): return np.argmax(y, axis=1).reshape(-1) score = cohen_kappa_score(flatten(self.y_val), flatten(y_pred), labels=[0,1,2,3,4], weights='quadratic') print("\n epoch: %d - QWK_score: %.6f \n" % (epoch+1, score)) self.history.append(score) if score >= max(self.history): print('saving checkpoint: ', score) self.model.save('../working/densenet_bestqwk.h5') qwk = QWKEvaluation(validation_data=(valid_generator, valid_y), batch_size=batch_size, interval=1) # In[ ]: # warm up model for layer in model.layers: layer.trainable = False for i in range(-3,0): model.layers[i].trainable = True model.compile( loss='categorical_crossentropy', optimizer=Adam(1e-3)) model.fit_generator( train_generator, steps_per_epoch=np.ceil(float(len(train_y)) / float(128)), epochs=2, workers=WORKERS, use_multiprocessing=True, verbose=1, callbacks=[qwk]) # In[ ]: # train all layers for layer in model.layers: layer.trainable = True callbacks_list = [checkpoint, csv_logger, reduceLROnPlat, early, qwk] model.compile(loss='categorical_crossentropy', # loss=kappa_loss, optimizer=Adam(lr=1e-4)) model.fit_generator( train_mixup, steps_per_epoch=np.ceil(float(len(train_x)) / float(batch_size)), validation_data=valid_generator, validation_steps=np.ceil(float(len(valid_x)) / float(batch_size)), epochs=epochs, verbose=1, workers=1, use_multiprocessing=False, callbacks=callbacks_list) # In[ ]: submit = pd.read_csv('../input/aptos2019-blindness-detection/sample_submission.csv') model.load_weights('../working/densenet_bestqwk.h5') predicted = [] # In[ ]: # reference:https://www.kaggle.com/CVxTz/cnn-starter-nasnet-mobile-0-9709-lb for i, name in tqdm(enumerate(submit['id_code'])): path = os.path.join('../input/aptos2019-blindness-detection/test_images/', name+'.png') image = cv2.imread(path) image = cv2.resize(image, (SIZE, SIZE)) X = np.array((image[np.newaxis])/255) score_predict=((model.predict(X).ravel()*model.predict(X[:, ::-1, :, :]).ravel()*model.predict(X[:, ::-1, ::-1, :]).ravel()*model.predict(X[:, :, ::-1, :]).ravel())**0.25).tolist() label_predict = np.argmax(score_predict) predicted.append(str(label_predict)) # In[ ]: submit['diagnosis'] = predicted submit.to_csv('submission.csv', index=False) submit.head() ================================================ FILE: projects/kaggle/blindness/other/training-mobilenet-v2-in-4-min.py ================================================ """ This kernel takes about 12 min to run: * Image preprocessing: ~ 8 min * Model training: ~ 4 min Since MobileNet v2 has only 2.2M parameters, it trains faster than ResNet-50 (26M) and ResNext-101 (84M); as a tradeoff, the potential accuracy becomes lower. We will finetune the pretrained ImageNet weights. """ import os import json import math import cv2 import numpy as np import pandas as pd from keras import layers, optimizers from keras.applications import MobileNetV2 from keras.callbacks import ModelCheckpoint from keras.models import Sequential from sklearn.model_selection import train_test_split from tqdm import tqdm def pad_and_resize(image_path, pad=True, desired_size=224): def get_pad_width(im, new_shape, is_rgb=True): pad_diff = new_shape - im.shape[0], new_shape - im.shape[1] t, b = math.floor(pad_diff[0]/2), math.ceil(pad_diff[0]/2) l, r = math.floor(pad_diff[1]/2), math.ceil(pad_diff[1]/2) if is_rgb: pad_width = ((t,b), (l,r), (0, 0)) else: pad_width = ((t,b), (l,r)) return pad_width img = cv2.imread(image_path) if pad: pad_width = get_pad_width(img, max(img.shape)) padded = np.pad(img, pad_width=pad_width, mode='constant', constant_values=0) else: padded = img padded = cv2.cvtColor(padded, cv2.COLOR_BGR2RGB) resized = cv2.resize(padded, (desired_size,)*2).astype('uint8') return resized def build_model(): mobilenet = MobileNetV2( weights='../input/mobilenet-v2-keras-weights/mobilenet_v2_weights_tf_dim_ordering_tf_kernels_1.0_224_no_top.h5', include_top=False, input_shape=(224,224,3) ) model = Sequential() model.add(mobilenet) model.add(layers.GlobalAveragePooling2D()) model.add(layers.Dropout(0.5)) model.add(layers.Dense(5, activation='softmax')) model.compile( loss='categorical_crossentropy', optimizer=optimizers.Adam(lr=0.00002), metrics=['accuracy'] ) return model # Load Labels train_df = pd.read_csv('../input/aptos2019-blindness-detection/train.csv') test_df = pd.read_csv('../input/aptos2019-blindness-detection/test.csv') # Load Images train_resized_imgs = [] test_resized_imgs = [] import gezi t = gezi.Timer('loading train imgs') for image_id in tqdm(train_df['id_code'], ascii=True): img = pad_and_resize(f'../input/aptos2019-blindness-detection/train_images/{image_id}.png') train_resized_imgs.append(img) t.print() t = gezi.Timer('loading test imgs') for image_id in tqdm(test_df['id_code'], ascii=True): img = pad_and_resize(f'../input/aptos2019-blindness-detection/test_images/{image_id}.png') test_resized_imgs.append(img) t.print() x_test = np.stack(test_resized_imgs) print('split data') # Split Data x_train, x_val, y_train, y_val = train_test_split( np.stack(train_resized_imgs), pd.get_dummies(train_df['diagnosis']).values, test_size=0.1, random_state=2019 ) # Train Model model = build_model() checkpoint = ModelCheckpoint('model.h5', save_best_only=True) history = model.fit( x_train, y_train, epochs=10, batch_size=32, verbose=2, callbacks=[checkpoint], validation_data=(x_val, y_val) ) # Submission model.load_weights('model.h5') y_test = model.predict(x_test) test_df['diagnosis'] = y_test.argmax(axis=1) test_df.to_csv('submission.csv',index=False) ================================================ FILE: projects/kaggle/blindness/prepare/gen-records.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Read CIFAR-10 data from pickled numpy arrays and writes TFRecords. Generates tf.train.Example protos and writes them to TFRecord files from the python version of the CIFAR-10 dataset downloaded from https://www.cs.toronto.edu/~kriz/cifar.html. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import tensorflow as tf import glob import cv2 from tqdm import tqdm import melt import gezi NUM_FOLDS = 10 import pandas as pd m = {} l = pd.read_csv('../input/train.csv') for i in range(len(l)): m[l.id_code[i]] = l.diagnosis[i] def convert_to_tfrecord(input_files, output_file): """Converts a file to TFRecords.""" print('Generating %s' % output_file) with tf.python_io.TFRecordWriter(output_file) as record_writer: for input_file in tqdm(input_files, ascii=True): id = os.path.basename(input_file)[:-4] #img = cv2.imread(input_file) img = melt.read_image(input_file) # turn to channel first #img = img.transpose(2,0,1) if 'test' not in output_file: label = m[id] else: label = -1 example = tf.train.Example(features=tf.train.Features( feature={ 'id': melt.bytes_feature(id), #'image': melt.bytes_feature(img.tobytes()), 'image': melt.bytes_feature(img), 'label': melt.int64_feature(label) })) record_writer.write(example.SerializeToString()) def main(data_dir): input_dir = '../input' input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train_images')) if int(gezi.hash(os.path.basename(f)[:-4])) % NUM_FOLDS != 0] print('train:', len(input_files)) output_file = os.path.join(data_dir, 'train.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train_images')) if int(gezi.hash(os.path.basename(f)[:-4])) % NUM_FOLDS == 0] print('valid:', len(input_files)) output_file = os.path.join(data_dir, 'valid.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = glob.glob('%s/%s/*.png' % (input_dir, 'test_images')) output_file = os.path.join(data_dir, 'test.tfrecords') convert_to_tfrecord(input_files, output_file) if __name__ == '__main__': data_dir = '../input/tfrecords' main(data_dir) ================================================ FILE: projects/kaggle/blindness/prepare/gen-records.sh ================================================ python gen-records.py ================================================ FILE: projects/kaggle/blindness/tf/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('random_brightness', False, '') flags.DEFINE_bool('random_contrast', False, '') flags.DEFINE_bool('return_dict', False, '') HEIGHT = 224 WIDTH = 224 DEPTH = 3 class DataSet(object): def __init__(self, data_dir, subset='train', use_distortion=True): self.data_dir = data_dir self.subset = subset self.use_distortion = use_distortion def get_filenames(self): if self.subset in ['train', 'valid', 'test']: return [os.path.join(self.data_dir, self.subset + '.tfrecords')] else: raise ValueError('Invalid data subset "%s"' % self.subset) def parser(self, serialized_example): """Parses a single tf.Example into image and label tensors.""" # Dimensions of the images in the CIFAR-10 dataset. # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the # input format. features = tf.parse_single_example( serialized_example, features={ 'id': tf.FixedLenFeature([], tf.string), 'image': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), }) image = features['image'] #image = tf.expand_dims(image, axis=-1) print('--------------1', image) #image = tf.decode_raw(image, tf.uint8) image = tf.image.decode_png(image) #image.set_shape([HEIGHT * WIDTH * DEPTH]) print('--------------2', image, image.shape) #image = tf.cast( # tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), # tf.float32) image = tf.cast(image, tf.float32) label = tf.cast(features['label'], tf.int32) id = features['id'] # Custom preprocessing. image = self.preprocess(image) if not FLAGS.return_dict: return id, image, label else: return {'id': id, 'image': image}, label def make_batch(self, batch_size, filenames=None, repeat=None, initializable=None): """Read the images and labels from 'filenames'.""" filenames = filenames or self.get_filenames() if initializable is None: initializable = self.subset != 'train' # Repeat infinitely. dataset = tf.data.TFRecordDataset(filenames).repeat() # Parse records. dataset = dataset.map( self.parser, num_parallel_calls=batch_size) # Potentially shuffle records. if self.subset == 'train': min_queue_examples = int( DataSet.num_examples_per_epoch(self.subset) * 0.4) # Ensure that the capacity is sufficiently large to provide good random # shuffling. dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) # Batch it up. dataset = dataset.batch(batch_size) if not initializable: iterator = dataset.make_one_shot_iterator() else: iterator = dataset.make_initializable_iterator() self.iterator = iterator return iterator def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch #... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries # refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME tf.summary.image('image', image) #print('--------', image) #image = tf.image.resize_image_with_crop_or_pad(image, 256, 256) image = tf.image.resize_images(image, [256, 256], method=0) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) if FLAGS.random_brightness: image = tf.image.random_brightness(image, max_delta=63) if FLAGS.random_contrast: distorted_image = tf.image.random_contrast(image, lower=0.2, upper=1.8) tf.summary.image('image/distort', image) else: image = tf.image.resize_images(image, [HEIGHT, WIDTH], method=0) image = tf.cast( tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), tf.float32) return image @staticmethod def num_examples_per_epoch(subset='train'): if subset == 'train': return 3295 elif subset == 'valid': return 367 elif subset == 'test': return 1928 else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: projects/kaggle/blindness/tf/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-12-07 15:19:16.505094 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import pandas as pd from sklearn import metrics import gezi num_classes = 5 def evaluate(labels, logits, ids=None): logits = logits[:, :num_classes] predicts = np.argmax(logits, -1) acc = np.mean(np.equal(predicts, labels)) probs = gezi.softmax(logits) loss = metrics.log_loss(labels, probs) kappa = metrics.cohen_kappa_score(labels, predicts) vals = [loss, acc, kappa] names = ['loss', 'acc', 'kappa'] return vals, names def write(ids, labels, logits, ofile): logits = logits[:, :num_classes] df = pd.DataFrame() df['id_code'] = ids predicts = np.argmax(logits, -1) df['diagnosis'] = predicts if labels is not None: df['label'] = labels df= df.sort_values('id_code') df.to_csv(ofile, index=False) def valid_write(ids, labels, logits, ofile): return write(ids, labels, logits, ofile) def infer_write(ids, logits, ofile): return write(ids, None, logits, ofile) ================================================ FILE: projects/kaggle/blindness/tf/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-12-07 15:19:21.172303 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf def criterion(model, x, y, training=False): y_ = model(x, training=training) weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=y_, labels=y) loss = tf.reduce_mean(loss) model_params = tf.trainable_variables() loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) return loss ================================================ FILE: projects/kaggle/blindness/tf/model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Model class for Cifar10 Dataset.""" from __future__ import division from __future__ import print_function import tensorflow as tf import model_base import melt class BaseModel(model_base.ResNet): def __init__(self, num_layers, training, batch_norm_decay, batch_norm_epsilon, data_format='channels_first'): super(BaseModel, self).__init__( training, data_format, batch_norm_decay, batch_norm_epsilon ) self.n = (num_layers - 2) // 6 # Add one in case label starts with 1. No impact if label starts with 0. self.num_classes = 10 + 1 self.filters = [16, 16, 32, 64] self.strides = [1, 2, 2] def init_predict(self, input_data_format='channels_last'): #self.image_feed = tf.placeholder_with_default(tf.constant([test_image]), [None, ], name='image_feature') self.image_feed = tf.placeholder(tf.string, [None,], name='image') tf.add_to_collection('feed', self.image_feed) image = tf.map_fn(lambda img: melt.image.decode_image(img, image_format='png', dtype=tf.float32), self.image_feed, dtype=tf.float32) self.predict(image) tf.add_to_collection('classes', self.pred['classes']) tf.add_to_collection('probabilities', self.pred['probabilities']) tf.add_to_collection('logits', self.logits) tf.add_to_collection('pre_logits', self.pre_logits) def forward_pass(self, x, input_data_format='channels_last'): # TODO.. without this forward var scope inference_fn will cause problem for self._conv as try to add conv 43.. FIMXE with tf.variable_scope('forward', reuse=tf.AUTO_REUSE): """Build the core model within the graph.""" if self._data_format != input_data_format: if input_data_format == 'channels_last': # Computation requires channels_first. x = tf.transpose(x, [0, 3, 1, 2]) else: # Computation requires channels_last. x = tf.transpose(x, [0, 2, 3, 1]) # Image standardization. x = x / 128 - 1 x = self._conv(x, 3, 16, 1) x = self._batch_norm(x) x = self._relu(x) # Use basic (non-bottleneck) block and ResNet V1 (post-activation). res_func = self._residual_v1 # 3 stages of block stacking. for i in range(3): with tf.name_scope('stage'): for j in range(self.n): if j == 0: # First block in a stage, filters and strides may change. x = res_func(x, 3, self.filters[i], self.filters[i + 1], self.strides[i]) else: # Following blocks in a stage, constant filters and unit stride. x = res_func(x, 3, self.filters[i + 1], self.filters[i + 1], 1) x = self._global_avg_pool(x) self.pre_logits = x x = self._fully_connected(x, self.num_classes) self.logits = x return x def predict(self, x=None, input_data_format='channels_last'): if x is not None: self.forward_pass(x, input_data_format) logits = self.logits pred = { 'classes': tf.to_int32(tf.argmax(input=logits, axis=1)), 'probabilities': tf.nn.softmax(logits) } self.pred = pred return pred class Model(tf.keras.Model): def __init__(self): super(Model, self).__init__() with tf.variable_scope('resnet', reuse=tf.AUTO_REUSE) as scope: self.models = [None] * 2 data_format = 'channels_first' num_layers = 44 batch_norm_decay = 0.997 batch_norm_epsilon = 1e-05 data_dir = './mount/data/cifar10/' for i in range(2): self.models[i] = BaseModel( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, training=(i == 1), data_format=data_format) def call(self, x, input_data_format='channels_last', training=False): x = x['image'] model = self.models[int(training)] return model.forward_pass(x, input_data_format) ================================================ FILE: projects/kaggle/blindness/tf/model_base.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model. Related papers: https://arxiv.org/pdf/1603.05027v2.pdf https://arxiv.org/pdf/1512.03385v1.pdf https://arxiv.org/pdf/1605.07146v1.pdf """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class ResNet(object): """ResNet model.""" def __init__(self, training, data_format, batch_norm_decay, batch_norm_epsilon): """ResNet constructor. Args: training: if build training or inference model. data_format: the data_format used during computation. one of 'channels_first' or 'channels_last'. """ self._batch_norm_decay = batch_norm_decay self._batch_norm_epsilon = batch_norm_epsilon self._training = training assert data_format in ('channels_first', 'channels_last') self._data_format = data_format def forward_pass(self, x): raise NotImplementedError( 'forward_pass() is implemented in ResNet sub classes') def _residual_v1(self, x, kernel_size, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers, using Plan A for shortcut connection.""" del activate_before_residual with tf.name_scope('residual_v1') as name_scope: orig_x = x x = self._conv(x, kernel_size, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, kernel_size, out_filter, 1) x = self._batch_norm(x) if in_filter != out_filter: orig_x = self._avg_pool(orig_x, stride, stride) pad = (out_filter - in_filter) // 2 if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = self._relu(tf.add(x, orig_x)) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers with preactivation, plan A shortcut.""" with tf.name_scope('residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, [1, 1, 1, 1]) if in_filter != out_filter: pad = (out_filter - in_filter) // 2 orig_x = self._avg_pool(orig_x, stride, stride) if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _bottleneck_residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Bottleneck residual unit with 3 sub layers, plan B shortcut.""" with tf.name_scope('bottle_residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter // 4, stride, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) # pad when stride isn't unit x = self._conv(x, 3, out_filter // 4, 1, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter, 1, is_atrous=True) if in_filter != out_filter: orig_x = self._conv(orig_x, 1, out_filter, stride, is_atrous=True) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _conv(self, x, kernel_size, filters, strides, is_atrous=False): """Convolution.""" padding = 'SAME' if not is_atrous and strides > 1: pad = kernel_size - 1 pad_beg = pad // 2 pad_end = pad - pad_beg if self._data_format == 'channels_first': x = tf.pad(x, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) else: x = tf.pad(x, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) padding = 'VALID' return tf.layers.conv2d( inputs=x, kernel_size=kernel_size, filters=filters, strides=strides, padding=padding, use_bias=False, data_format=self._data_format) def _batch_norm(self, x): if self._data_format == 'channels_first': data_format = 'NCHW' else: data_format = 'NHWC' return tf.contrib.layers.batch_norm( x, decay=self._batch_norm_decay, center=True, scale=True, epsilon=self._batch_norm_epsilon, is_training=self._training, fused=True, data_format=data_format) def _relu(self, x): return tf.nn.relu(x) def _fully_connected(self, x, out_dim): with tf.name_scope('fully_connected') as name_scope: x = tf.layers.dense(x, out_dim) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _avg_pool(self, x, pool_size, stride): with tf.name_scope('avg_pool') as name_scope: x = tf.layers.average_pooling2d( x, pool_size, stride, 'SAME', data_format=self._data_format) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _global_avg_pool(self, x): with tf.name_scope('global_avg_pool') as name_scope: assert x.get_shape().ndims == 4 if self._data_format == 'channels_first': x = tf.reduce_mean(x, [2, 3]) else: x = tf.reduce_mean(x, [1, 2]) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x ================================================ FILE: projects/kaggle/blindness/tf/train/train.sh ================================================ data_dir='../input/tfrecords' python ./train.py \ --model_dir=../input/model/tf/baseline \ --train_input=$data_dir'/train.tfrecords,' \ --valid_input=$data_dir'/valid.tfrecords,' \ --test_input=$data_dir'/test.tfrecords,' \ --variable_strategy=cpu \ --batch_size=32 \ --batch_size_per_gpu=1 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --interval_steps=0 \ --eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=0 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=40 \ --return_dict=1 \ ================================================ FILE: projects/kaggle/blindness/tf/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback from model import Model from dataset import DataSet from loss import criterion import evaluate as ev def get_dataset(subset): data_dir = '../input/tfrecords/' use_distortion = False if subset == 'train': use_distortion = True return DataSet(data_dir, subset=subset, use_distortion=use_distortion) # TODO FIXME why 1gpu ok 2gpu fail ? train.py all ok... ai2018/sentiment/model.py bert is also all ok why here wrong ? def main(_): melt.apps.init() model = Model() logging.info(model) fit = melt.apps.get_fit() fit(get_dataset, model, criterion, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_suffix='.valid.csv', infer_suffix='.infer.csv') if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/blindness/tf2/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('random_brightness', False, '') flags.DEFINE_bool('random_contrast', False, '') flags.DEFINE_bool('return_dict', False, '') HEIGHT = 224 WIDTH = 224 DEPTH = 3 class DataSet(object): def __init__(self, data_dir, subset='train', use_distortion=True): self.data_dir = data_dir self.subset = subset self.use_distortion = use_distortion def get_filenames(self): if self.subset in ['train', 'valid', 'test']: return [os.path.join(self.data_dir, self.subset + '.tfrecords')] else: raise ValueError('Invalid data subset "%s"' % self.subset) def parser(self, serialized_example): """Parses a single tf.Example into image and label tensors.""" # Dimensions of the images in the CIFAR-10 dataset. # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the # input format. features = tf.parse_single_example( serialized_example, features={ 'id': tf.FixedLenFeature([], tf.string), 'image': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), }) image = features['image'] #image = tf.expand_dims(image, axis=-1) print('--------------1', image) #image = tf.decode_raw(image, tf.uint8) image = tf.image.decode_png(image) #image.set_shape([HEIGHT * WIDTH * DEPTH]) print('--------------2', image, image.shape) #image = tf.cast( # tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), # tf.float32) image = tf.cast(image, tf.float32) label = tf.cast(features['label'], tf.int32) id = features['id'] # Custom preprocessing. image = self.preprocess(image) # if not FLAGS.return_dict: # return id, image, label # else: # return {'id': id, 'image': image}, label return image, label def make_batch(self, batch_size, filenames=None, repeat=None, initializable=None): """Read the images and labels from 'filenames'.""" filenames = filenames or self.get_filenames() if initializable is None: initializable = self.subset != 'train' # Repeat infinitely. dataset = tf.data.TFRecordDataset(filenames).repeat() # Parse records. dataset = dataset.map( self.parser, num_parallel_calls=batch_size) # Potentially shuffle records. if self.subset == 'train': min_queue_examples = int( DataSet.num_examples_per_epoch(self.subset) * 0.4) # Ensure that the capacity is sufficiently large to provide good random # shuffling. dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) # Batch it up. dataset = dataset.batch(batch_size) if not tf.executing_eagerly(): if not initializable: iterator = dataset.make_one_shot_iterator() else: iterator = dataset.make_initializable_iterator() self.iterator = iterator return iterator return dataset def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch #... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries # refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME tf.summary.image('image', image) #print('--------', image) #image = tf.image.resize_image_with_crop_or_pad(image, 256, 256) image = tf.image.resize_images(image, [256, 256], method=0) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) if FLAGS.random_brightness: image = tf.image.random_brightness(image, max_delta=63) if FLAGS.random_contrast: distorted_image = tf.image.random_contrast(image, lower=0.2, upper=1.8) tf.summary.image('image/distort', image) else: image = tf.image.resize_images(image, [HEIGHT, WIDTH], method=0) image = tf.cast( tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), tf.float32) return image @staticmethod def num_examples_per_epoch(subset='train'): if subset == 'train': return 3295 elif subset == 'valid': return 367 elif subset == 'test': return 1928 else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: projects/kaggle/blindness/tf2/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-12-07 15:19:16.505094 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import pandas as pd from sklearn import metrics import gezi num_classes = 5 def evaluate(labels, logits, ids=None): logits = logits[:, :num_classes] predicts = np.argmax(logits, -1) acc = np.mean(np.equal(predicts, labels)) probs = gezi.softmax(logits) loss = metrics.log_loss(labels, probs) kappa = metrics.cohen_kappa_score(labels, predicts) vals = [loss, acc, kappa] names = ['loss', 'acc', 'kappa'] return vals, names def write(ids, labels, logits, ofile): logits = logits[:, :num_classes] df = pd.DataFrame() df['id_code'] = ids predicts = np.argmax(logits, -1) df['diagnosis'] = predicts if labels is not None: df['label'] = labels df= df.sort_values('id_code') df.to_csv(ofile, index=False) def valid_write(ids, labels, logits, ofile): return write(ids, labels, logits, ofile) def infer_write(ids, logits, ofile): return write(ids, None, logits, ofile) ================================================ FILE: projects/kaggle/blindness/tf2/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-12-07 15:19:21.172303 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf def criterion(model, x, y, training=False): y_ = model(x, training=training) #weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=y_, labels=y) loss = tf.reduce_mean(loss) #model_params = tf.trainable_variables() #loss += weight_decay * tf.add_n( # [tf.nn.l2_loss(v) for v in model_params]) return loss ================================================ FILE: projects/kaggle/blindness/tf2/model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Model class for Cifar10 Dataset.""" from __future__ import division from __future__ import print_function import melt import tensorflow as tf from tensorflow import keras # from keras.applications.densenet import DenseNet121,DenseNet169 # from keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, # BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) # from keras.models import Model from tensorflow.keras.applications.densenet import DenseNet121,DenseNet169 from tensorflow.keras.layers import (Activation, Dropout, Flatten, Dense, GlobalMaxPooling2D, BatchNormalization, Input, Conv2D, GlobalAveragePooling2D,concatenate,Concatenate) from tensorflow.keras.models import Model def create_model(input_shape, n_out): # TODO can we ignore input and output shape ? as for text might be undetermined length input_tensor = Input(shape=input_shape) base_model = DenseNet121(include_top=False, weights=None, input_tensor=input_tensor) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") x = GlobalAveragePooling2D()(base_model.output) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) final_output = Dense(n_out, activation='softmax', name='final_output')(x) model = Model(input_tensor, final_output) return model # class Model(tf.keras.Model): # def __init__(self, input_shape, n_out): # super(Model, self).__init__() # self.model = create_model(input_shape, n_out) # def call(self, x, training=False): ## x = x['image'] # return model(x, training=training) class Model(tf.keras.Model): def __init__(self): super(Model, self).__init__() base_model = DenseNet121(include_top=False, weights=None, input_shape=(224, 224, 3), ) base_model.load_weights("../input/densenet-keras/DenseNet-BC-121-32-no-top.h5") self.model = base_model def call(self, x, training=False): #x = x['image'] x = self.model(x) x = GlobalAveragePooling2D()(x) x = Dropout(0.5)(x) x = Dense(1024, activation='relu')(x) x = Dropout(0.5)(x) n_out = 3 final_output = Dense(n_out, activation='softmax', name='final_output')(x) return final_output ================================================ FILE: projects/kaggle/blindness/tf2/train/train.sh ================================================ data_dir='../input/tfrecords' python ./train.py \ --model_dir=../input/model/tf/baseline \ --train_input=$data_dir'/train.tfrecords,' \ --valid_input=$data_dir'/valid.tfrecords,' \ --test_input=$data_dir'/test.tfrecords,' \ --variable_strategy=cpu \ --batch_size=32 \ --batch_size_per_gpu=1 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --interval_steps=0 \ --eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=0 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.001 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=40 \ --return_dict=1 \ ================================================ FILE: projects/kaggle/blindness/tf2/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf from tensorflow import keras flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback #from model import create_model from model import Model from dataset import DataSet, HEIGHT, WIDTH from loss import criterion import evaluate as ev NUM_CLASSES = 5 def get_dataset(subset): data_dir = '../input/tfrecords/' use_distortion = False if subset == 'train': use_distortion = True return DataSet(data_dir, subset=subset, use_distortion=use_distortion) # TODO FIXME why 1gpu ok 2gpu fail ? train.py all ok... ai2018/sentiment/model.py bert is also all ok why here wrong ? def main(_): tf.enable_eager_execution() melt.apps.init() #model = create_model((HEIGHT,WIDTH,3), NUM_CLASSES) #model = Model((HEIGHT,WIDTH,3), NUM_CLASSES) model = Model() #print(model.summary()) # # logging.info(model) # fit = melt.apps.get_fit() # fit(get_dataset, # model, # criterion, # eval_fn=ev.evaluate, # valid_write_fn=ev.valid_write, # infer_write_fn=ev.infer_write, # valid_suffix='.valid.csv', # infer_suffix='.infer.csv', # #optimizer=keras.optimizers.Adam(lr=1e-4) # ) dt = get_dataset('train') train_data = dt.make_batch(FLAGS.batch_size, ['../input/tfrecords/train.tfrecords']) #train_data[0] = train_data[0]['image'] dt_valid = get_dataset('valid') valid_data = dt_valid.make_batch(FLAGS.batch_size, ['../input/tfrecords/valid.tfrecords']) #valid_data[0] = valid_data[0]['image'] model.compile( loss='sparse_categorical_crossentropy', optimizer=keras.optimizers.Adam(lr=1e-4), #metrics=['accuracy']) ) model.fit( train_data, steps_per_epoch=np.ceil(DataSet.num_examples_per_epoch('train') / FLAGS.batch_size), validation_data=valid_data, validation_steps=np.ceil(DataSet.num_examples_per_epoch('valid') / FLAGS.batch_size), epochs=5) # model.fit_generator( # train_data, # steps_per_epoch=np.ceil(DataSet.num_examples_per_epoch('train') / FLAGS.batch_size), # validation_data=valid_data, # validation_steps=np.ceil(DataSet.num_examples_per_epoch('valid') / FLAGS.batch_size), # epochs=5) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/README.md ================================================ generate tfrecords ./baseline/tf/cifar10_estimator/gen-records.sh ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/KerasT.iml ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/inspectionProfiles/Project_Default.xml ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/misc.xml ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/modules.xml ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/preferred-vcs.xml ================================================ ApexVCS ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/.idea/vcs.xml ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/4layerCNN.py ================================================ """ Keras Cifar-10 Classification """ # IMPORT ALL MODULES import os os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" os.environ["CUDA_VISIBLE_DEVICES"] = "" import melt import time import matplotlib.pyplot as plt import numpy as np from keras.models import Sequential from keras.layers import Dense from keras.layers import Dropout from keras.layers import Flatten from keras.constraints import maxnorm from keras.optimizers import SGD from keras.layers import Activation from keras.layers.convolutional import Conv2D from keras.layers.convolutional import MaxPooling2D from keras.layers.normalization import BatchNormalization from keras.utils import np_utils #from keras_sequential_ascii import sequential_model_to_ascii_printout from keras import backend as K if K.backend()=='tensorflow': K.set_image_dim_ordering("th") # Import Tensorflow with multiprocessing for use 16 cores on plon.io import tensorflow as tf import multiprocessing as mp core_num = mp.cpu_count() print(core_num) config = tf.ConfigProto( inter_op_parallelism_threads=core_num, intra_op_parallelism_threads=core_num) sess = tf.Session(config=config) # Loading the CIFAR-10 datasets from keras.datasets import cifar10 # Declare variables batch_size = 32 # 32 examples in a mini-batch, smaller batch size means more updates in one epoch num_classes = 10 # epochs = 200 # repeat 200 times data_augmentation = True (x_train, y_train), (x_test, y_test) = cifar10.load_data() # x_train - training data(images), y_train - labels(digits) print('x_train shape:', x_train.shape) print(x_train.shape[0], 'train samples') print(x_test.shape[0], 'test samples') # Here are the classes in the dataset, as well as 10 random images from each class_names = ['airplane','automobile','bird','cat','deer', 'dog','frog','horse','ship','truck'] # Print figure with 10 random images from each fig = plt.figure(figsize=(8,3)) for i in range(num_classes): ax = fig.add_subplot(2, 5, 1 + i, xticks=[], yticks=[]) idx = np.where(y_train[:]==i)[0] features_idx = x_train[idx,::] img_num = np.random.randint(features_idx.shape[0]) im = np.transpose(features_idx[img_num,::],(1,2,0)) ax.set_title(class_names[i]) plt.imshow(im) plt.show() # Convert and pre-processing y_train = np_utils.to_categorical(y_train, num_classes) y_test = np_utils.to_categorical(y_test, num_classes) x_train = x_train.astype('float32') x_test = x_test.astype('float32') x_train /= 255 x_test /= 255 # Define Model def base_model(): model = Sequential() model.add(Conv2D(32, (3, 3), padding='same', input_shape=x_train.shape[1:])) model.add(Activation('relu')) model.add(Conv2D(32,(3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Conv2D(64, (3, 3), padding='same')) model.add(Activation('relu')) model.add(Conv2D(64, (3,3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(num_classes)) model.add(Activation('softmax')) sgd = SGD(lr = 0.1, decay=1e-6, nesterov=True) # Train model model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) return model cnn_n = base_model() cnn_n.summary() # Vizualizing model structure #sequential_model_to_ascii_printout(cnn_n) # Fit model cnn = cnn_n.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_data=(x_test,y_test),shuffle=True) # Plots for training and testing process: loss and accuracy plt.figure(0) plt.plot(cnn.history['acc'],'r') plt.plot(cnn.history['val_acc'],'g') plt.xticks(np.arange(0, 11, 2.0)) plt.rcParams['figure.figsize'] = (8, 6) plt.xlabel("Num of Epochs") plt.ylabel("Accuracy") plt.title("Training Accuracy vs Validation Accuracy") plt.legend(['train','validation']) plt.figure(1) plt.plot(cnn.history['loss'],'r') plt.plot(cnn.history['val_loss'],'g') plt.xticks(np.arange(0, 11, 2.0)) plt.rcParams['figure.figsize'] = (8, 6) plt.xlabel("Num of Epochs") plt.ylabel("Loss") plt.title("Training Loss vs Validation Loss") plt.legend(['train','validation']) plt.show() scores = cnn_n.evaluate(x_test, y_test, verbose=0) print("Accuracy: %.2f%%" % (scores[1]*100)) # Confusion matrix result from sklearn.metrics import classification_report, confusion_matrix Y_pred = cnn_n.predict(x_test, verbose=2) y_pred = np.argmax(Y_pred, axis=1) for ix in range(10): print(ix, confusion_matrix(np.argmax(y_test,axis=1),y_pred)[ix].sum()) cm = confusion_matrix(np.argmax(y_test,axis=1),y_pred) print(cm) # Visualizing of confusion matrix import seaborn as sn import pandas as pd df_cm = pd.DataFrame(cm, range(10), range(10)) plt.figure(figsize = (10,7)) sn.set(font_scale=1.4)#for label size sn.heatmap(df_cm, annot=True,annot_kws={"size": 12})# font size plt.show() ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/6layerCNN.py ================================================ import os os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" os.environ["CUDA_VISIBLE_DEVICES"] = "" import time import matplotlib.pyplot as plt import numpy as np from keras.models import Sequential from keras.layers import Dense from keras.layers import Dropout from keras.layers import Flatten from keras.constraints import maxnorm from keras.optimizers import SGD from keras.layers import Activation from keras.layers.convolutional import Conv2D from keras.layers.convolutional import MaxPooling2D from keras.layers.normalization import BatchNormalization from keras.utils import np_utils from keras_sequential_ascii import sequential_model_to_ascii_printout from keras import backend as K if K.backend()=='tensorflow': K.set_image_dim_ordering("th") # Import Tensorflow with multiprocessing for use 16 cores on plon.io import tensorflow as tf import multiprocessing as mp core_num = mp.cpu_count() print(core_num) config = tf.ConfigProto( inter_op_parallelism_threads=core_num, intra_op_parallelism_threads=core_num) sess = tf.Session(config=config) # Loading the CIFAR-10 datasets from keras.datasets import cifar10 # Declare variables batch_size = 32 # 32 examples in a mini-batch, smaller batch size means more updates in one epoch num_classes = 10 # epochs = 200 # repeat 200 times data_augmentation = True (x_train, y_train), (x_test, y_test) = cifar10.load_data() # x_train - training data(images), y_train - labels(digits) print('x_train shape:', x_train.shape) print(x_train.shape[0], 'train samples') print(x_test.shape[0], 'test samples') # Here are the classes in the dataset, as well as 10 random images from each class_names = ['airplane','automobile','bird','cat','deer', 'dog','frog','horse','ship','truck'] # Print figure with 10 random images from each fig = plt.figure(figsize=(8,3)) for i in range(num_classes): ax = fig.add_subplot(2, 5, 1 + i, xticks=[], yticks=[]) idx = np.where(y_train[:]==i)[0] features_idx = x_train[idx,::] img_num = np.random.randint(features_idx.shape[0]) im = np.transpose(features_idx[img_num,::],(1,2,0)) ax.set_title(class_names[i]) plt.imshow(im) plt.show() # Convert and pre-processing y_train = np_utils.to_categorical(y_train, num_classes) y_test = np_utils.to_categorical(y_test, num_classes) x_train = x_train.astype('float32') x_test = x_test.astype('float32') x_train /= 255 x_test /= 255 # Define Model def base_model(): model = Sequential() model.add(Conv2D(32, (3, 3), padding='same', activation='relu', input_shape=x_train.shape[1:])) model.add(Dropout(0.2)) model.add(Conv2D(32,(3,3),padding='same', activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Conv2D(64,(3,3),padding='same',activation='relu')) model.add(Dropout(0.2)) model.add(Conv2D(64,(3,3),padding='same',activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Conv2D(128,(3,3),padding='same',activation='relu')) model.add(Dropout(0.2)) model.add(Conv2D(128,(3,3),padding='same',activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Flatten()) model.add(Dropout(0.2)) model.add(Dense(1024,activation='relu',kernel_constraint=maxnorm(3))) model.add(Dropout(0.2)) model.add(Dense(num_classes, activation='softmax')) sgd = SGD(lr=0.01, momentum=0.9, decay=1e-6, nesterov=False) # Train model model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) return model cnn_n = base_model() cnn_n.summary() # Vizualizing model structure sequential_model_to_ascii_printout(cnn_n) # Fit model cnn = cnn_n.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_data=(x_test,y_test),shuffle=True) # Plots for training and testing process: loss and accuracy plt.figure(0) plt.plot(cnn.history['acc'],'r') plt.plot(cnn.history['val_acc'],'g') plt.xticks(np.arange(0, 11, 2.0)) plt.rcParams['figure.figsize'] = (8, 6) plt.xlabel("Num of Epochs") plt.ylabel("Accuracy") plt.title("Training Accuracy vs Validation Accuracy") plt.legend(['train','validation']) plt.figure(1) plt.plot(cnn.history['loss'],'r') plt.plot(cnn.history['val_loss'],'g') plt.xticks(np.arange(0, 11, 2.0)) plt.rcParams['figure.figsize'] = (8, 6) plt.xlabel("Num of Epochs") plt.ylabel("Loss") plt.title("Training Loss vs Validation Loss") plt.legend(['train','validation']) plt.show() scores = cnn_n.evaluate(x_test, y_test, verbose=0) print("Accuracy: %.2f%%" % (scores[1]*100)) # Confusion matrix result from sklearn.metrics import classification_report, confusion_matrix Y_pred = cnn_n.predict(x_test, verbose=2) y_pred = np.argmax(Y_pred, axis=1) for ix in range(10): print(ix, confusion_matrix(np.argmax(y_test,axis=1),y_pred)[ix].sum()) cm = confusion_matrix(np.argmax(y_test,axis=1),y_pred) print(cm) # Visualizing of confusion matrix import seaborn as sn import pandas as pd df_cm = pd.DataFrame(cm, range(10), range(10)) plt.figure(figsize = (10,7)) sn.set(font_scale=1.4)#for label size sn.heatmap(df_cm, annot=True,annot_kws={"size": 12})# font size plt.show() ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/ConfusionMatrixVisualization.py ================================================ import seaborn as sn import pandas as pd import matplotlib.pyplot as plt # Simple example for array bellow array = [[736, 11, 54, 45, 30, 14, 15 , 9, 61, 25], [ 10, 839, 6 , 38, 3 ,13, 7, 5 , 22, 57], [ 47 , 2 ,566 , 96 ,145 , 65, 51 , 17 , 7 , 4], [ 23 , 6 ,56 ,570 ,97 ,140, 57 , 29 , 12 , 10], [ 16 , 2 ,52 , 80 ,700 , 55, 25 , 64 , 3 , 3], [ 10 , 1 ,64 ,211 , 59 ,582, 24 , 39 , 6 , 4], [ 4 , 3 ,42 ,114, 121 , 40, 650 , 13 , 5 , 8], [ 14 , 1 ,40 ,57, 69 , 68 , 11 ,723 , 3 ,14], [ 93 , 32 ,26 , 37, 16 , 15 , 6 , 2, 752 , 21], [ 34 , 83 , 8, 42 , 12 ,21, 6 , 21, 25 ,748]] df_cm = pd.DataFrame(array, range(10), range(10)) plt.figure(figsize = (10,7)) sn.set(font_scale=1.4)#for label size sn.heatmap(df_cm, annot=True,annot_kws={"size": 12})# font size plt.show() ================================================ FILE: projects/kaggle/cifar10/baseline/keras/KerasT-master/README.md ================================================ # CIFAR-10 IMAGE CLASSIFICATION WITH KERAS CONVOLUTIONAL NEURAL NETWORK TUTORIAL ## What is Keras? "Keras is an open source neural network library written in Python and capable of running on top of either [TensorFlow](https://www.tensorflow.org/), [CNTK](https://github.com/Microsoft/CNTK) or [Theano](http://deeplearning.net/software/theano/). Use Keras if you need a deep learning libraty that: * Allows for easy and fast prototyping * Supports both convolutional networks and recurrent networks, as well as combinations of the two * Runs seamlessly on CPU and GPU Keras is compatible with Python 2.7-3.5"[1]. Since Semptember 2016, Keras is the second-fastest growing Deep Learning framework after Google's Tensorflow, and the third largest after Tensorflow and Caffe[2]. ## What is Deep Learning? "Deep Learning is the application to learning tasks of artificial neural networks(ANNs) that contain more than one hidden layer. Deep learning is part of [Machine Learning](https://en.wikipedia.org/wiki/Machine_learning) methods based on learning data representations. Learning can be [supervised](https://en.wikipedia.org/wiki/Supervised_learning), parially supervised or [unsupervised](https://en.wikipedia.org/wiki/Unsupervised_learning)[3]." ## Project desciption Simple Youtube presentation what type of visualization is generated: ## What will you learn? You will learn: * What is Keras library and how to use it * What is Deep Learning * How to use ready datasets * What is Convolutional Neural Networks(CNN) * How to build step by step Convolutional Neural Networks(CNN) * What are differences in model results * What is supervised and unsupervised learning * Basics of Machine Learning * Introduction to Artificial Intelligence(AI) ## Project structure * 4layerCNN.py - 4-layer Keras model * 6layerCNN.py - 6-layer Keras model * README.md - project description step by step ## Convolutional neural network ### 6-layer neural network #### Network Architecture ``` OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%) Input ##### 3 32 32 Conv2D \|/ ------------------- 896 0.0% relu ##### 32 32 32 Dropout | || ------------------- 0 0.0% ##### 32 32 32 Conv2D \|/ ------------------- 9248 0.4% relu ##### 32 32 32 MaxPooling2D Y max ------------------- 0 0.0% ##### 32 16 16 Conv2D \|/ ------------------- 18496 0.8% relu ##### 64 16 16 Dropout | || ------------------- 0 0.0% ##### 64 16 16 Conv2D \|/ ------------------- 36928 1.5% relu ##### 64 16 16 MaxPooling2D Y max ------------------- 0 0.0% ##### 64 8 8 Conv2D \|/ ------------------- 73856 3.1% relu ##### 128 8 8 Dropout | || ------------------- 0 0.0% ##### 128 8 8 Conv2D \|/ ------------------- 147584 6.2% relu ##### 128 8 8 MaxPooling2D Y max ------------------- 0 0.0% ##### 128 4 4 Flatten ||||| ------------------- 0 0.0% ##### 2048 Dropout | || ------------------- 0 0.0% ##### 2048 Dense XXXXX ------------------- 2098176 87.6% relu ##### 1024 Dropout | || ------------------- 0 0.0% ##### 1024 Dense XXXXX ------------------- 10250 0.4% softmax ##### 10 ``` #### Model ``` model = Sequential() model.add(Conv2D(32, (3, 3), padding='same', activation='relu', input_shape=x_train.shape[1:])) model.add(Dropout(0.2)) model.add(Conv2D(32,(3,3),padding='same', activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Conv2D(64,(3,3),padding='same',activation='relu')) model.add(Dropout(0.2)) model.add(Conv2D(64,(3,3),padding='same',activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Conv2D(128,(3,3),padding='same',activation='relu')) model.add(Dropout(0.2)) model.add(Conv2D(128,(3,3),padding='same',activation='relu')) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Flatten()) model.add(Dropout(0.2)) model.add(Dense(1024,activation='relu',kernel_constraint=maxnorm(3))) model.add(Dropout(0.2)) model.add(Dense(num_classes, activation='softmax')) sgd = SGD(lr=0.01, momentum=0.9, decay=1e-6, nesterov=False) ``` Train model: ``` model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) return model cnn_n = base_model() cnn_n.summary() ``` Fit model: ``` cnn = cnn_n.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_data=(x_test,y_test),shuffle=True) ``` #### Results All results are for 50k iteration, learning rate=0.01. Neural networks have been trained at **16 cores and 16GB RAM** on [plon.io](https://plon.io/) * epochs = 10 **accuracy=75.61%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/59651c4b8c5c480001b146f1) ![Keras Training Loss vs Validation Loss](https://plon.io/files/59651c4b8c5c480001b146f3) **Confusion matrix result:** ``` [[806 9 39 13 28 4 7 9 61 24] [ 14 870 4 10 3 4 7 0 28 60] [ 69 1 628 64 122 36 44 19 13 4] [ 19 5 52 582 109 99 76 29 14 15] [ 13 2 44 46 761 27 38 62 6 1] [ 15 1 50 189 69 588 31 48 7 2] [ 8 3 39 53 52 14 814 4 10 3] [ 15 3 31 45 63 29 5 795 2 12] [ 61 13 8 10 17 1 4 4 875 7] [ 23 52 11 10 7 7 5 12 31 842]] ``` **Confusion matrix vizualizing** ![610](https://user-images.githubusercontent.com/11740059/28138320-a88b8e60-6750-11e7-9ec4-ac73ab40ccc7.png) Time of learning process: **1h 45min** * epochs = 20 **accuracy=75.31%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/59654ea78c5c480001b146f9) ![Keras Training Loss vs Validation Loss](https://plon.io/files/59654ea78c5c480001b146fb) **Confusion matrix result:** ``` [[810 5 30 22 14 2 9 10 60 38] [ 13 862 7 8 3 6 4 7 20 70] [ 85 2 626 67 84 44 44 27 12 9] [ 39 6 47 581 73 137 50 38 17 12] [ 22 1 52 87 744 34 22 64 2 2] [ 20 3 40 178 44 639 21 48 2 5] [ 12 3 42 55 67 16 782 10 7 6] [ 15 2 24 38 59 37 3 810 5 7] [ 79 14 10 19 6 4 8 5 827 28] [ 25 60 8 9 8 5 2 12 21 850]] ``` **Confusion matrix vizualizing** ![620](https://user-images.githubusercontent.com/11740059/28138461-2445946a-6751-11e7-930c-13217c9a5e13.png) Time of learning process: **3h 40min** * epochs = 50 **accuracy=69.93%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/596e67fed81bbc0001085260) ![Keras Training Loss vs Validation Loss](https://plon.io/files/596e67ffd81bbc0001085262) **Confusion matrix result:** ``` [[760 5 72 32 11 6 12 7 67 28] [ 12 862 10 16 3 2 18 4 30 43] [ 55 1 712 67 44 35 47 20 11 8] [ 37 7 126 554 63 81 69 45 11 7] [ 23 2 125 86 622 27 36 69 8 2] [ 20 2 121 201 48 488 56 50 7 7] [ 16 7 101 65 28 27 734 8 10 4] [ 16 4 59 60 57 36 9 749 5 5] [107 13 30 32 3 10 8 6 770 21] [ 42 100 8 26 8 7 4 21 42 742]] ``` **Confusion matrix vizualizing** ![650](https://user-images.githubusercontent.com/11740059/28338609-cf818aa2-6c09-11e7-83c0-89efa60b7c5f.png) Time of learning process: **8h 10min** * epochs = 100 **accuracy=68.66%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/596f6b4bd81bbc0001085268) ![Keras Training Loss vs Validation Loss](https://plon.io/files/596f6b4bd81bbc000108526a) **Confusion matrix result:** ``` [[736 11 54 45 30 14 15 9 61 25] [ 10 839 6 38 3 13 7 5 22 57] [ 47 2 566 96 145 65 51 17 7 4] [ 23 6 56 570 97 140 57 29 12 10] [ 16 2 52 80 700 55 25 64 3 3] [ 10 1 64 211 59 582 24 39 6 4] [ 4 3 42 114 121 40 650 13 5 8] [ 14 1 40 57 69 68 11 723 3 14] [ 93 32 26 37 16 15 6 2 752 21] [ 34 83 8 42 12 21 6 21 25 748]] ``` **Confusion matrix vizualizing** ![6100](https://user-images.githubusercontent.com/11740059/28372892-30861cfe-6ca1-11e7-9bbf-83fe0a995c2d.png) Time of learning process: **17h 10min** ### 4-Layer neural network #### Network Architecture ``` OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%) Input ##### 3 32 32 Conv2D \|/ ------------------- 896 0.1% relu ##### 32 32 32 Conv2D \|/ ------------------- 9248 0.7% relu ##### 32 30 30 MaxPooling2D Y max ------------------- 0 0.0% ##### 32 15 15 Dropout | || ------------------- 0 0.0% ##### 32 15 15 Conv2D \|/ ------------------- 18496 1.5% relu ##### 64 15 15 Conv2D \|/ ------------------- 36928 3.0% relu ##### 64 13 13 MaxPooling2D Y max ------------------- 0 0.0% ##### 64 6 6 Dropout | || ------------------- 0 0.0% ##### 64 6 6 Flatten ||||| ------------------- 0 0.0% ##### 2304 Dense XXXXX ------------------- 1180160 94.3% relu ##### 512 Dropout | || ------------------- 0 0.0% ##### 512 Dense XXXXX ------------------- 5130 0.4% softmax ##### 10 ``` #### Model ``` model = Sequential() model.add(Conv2D(32, (3, 3), padding='same', input_shape=x_train.shape[1:])) model.add(Activation('relu')) model.add(Conv2D(32,(3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Conv2D(64, (3, 3), padding='same')) model.add(Activation('relu')) model.add(Conv2D(64, (3,3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(num_classes)) model.add(Activation('softmax')) sgd = SGD(lr = 0.1, decay=1e-6, nesterov=True) ``` Train model: ``` model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) return model cnn_n = base_model() cnn_n.summary() ``` Fit model: ``` cnn = cnn_n.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_data=(x_test,y_test),shuffle=True) ``` #### Results All results are for 50k iteration, learning rate=0.1. Neural networks have been trained at **16 cores and 16GB RAM** on [plon.io](https://plon.io/) * epochs = 10 **accuracy=71.29%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/5965fdac8c5c48000129f83f) ![Keras Training Loss vs Validation Loss](https://plon.io/files/5965fdac8c5c48000129f841) **Confusion matrix result:** ``` [[772 5 24 19 17 6 18 10 66 63] [ 14 637 1 4 3 7 19 2 38 275] [ 81 0 538 50 88 86 93 27 19 18] [ 20 1 52 468 60 180 143 33 13 30] [ 19 1 51 59 662 33 91 66 16 2] [ 12 0 34 135 37 664 53 41 11 13] [ 7 0 23 29 26 13 885 2 10 5] [ 10 0 24 45 48 69 20 756 5 23] [ 74 4 3 9 4 6 8 4 854 34] [ 18 8 5 13 9 4 10 6 34 893]] ``` **Confusion matrix vizualizing** ![410](https://user-images.githubusercontent.com/11740059/28138095-dd7402c0-674f-11e7-831d-907f59da2723.png) Time of learning process: **1h 10min** * epochs = 20 **accuracy=74.57%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/59639691c0265100013c2c80) ![Keras Training Loss vs Validation Loss](https://plon.io/files/59639691c0265100013c2c82) **Confusion matrix result:** ``` [[729 11 56 36 52 5 12 11 58 30] [ 8 883 1 12 5 1 19 0 11 60] [ 40 3 545 88 152 54 71 35 7 5] [ 10 8 30 583 128 106 75 38 10 12] [ 7 1 15 37 806 9 43 77 5 0] [ 6 5 18 214 76 586 32 59 2 2] [ 3 3 23 58 65 7 825 11 4 1] [ 5 2 12 56 73 24 11 811 0 6] [ 39 30 11 18 18 5 11 5 847 16] [ 30 61 3 22 9 2 7 8 16 842]] ``` **Confusion matrix vizualizing** ![420](https://user-images.githubusercontent.com/11740059/28138581-98f7c1c0-6751-11e7-8f87-0d513b29391b.png) Time of learning process: **2h 15min** * epochs = 50 **accuracy=75.32%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/5963e88fc0265100013c2c8c) ![Keras Training Loss vs Validation Loss](https://plon.io/files/5963e890c0265100013c2c8e) Confusion matrix result: ``` [[727 8 53 25 39 5 4 13 82 44] [ 7 821 6 10 5 2 4 2 22 121] [ 46 0 652 66 107 43 40 30 9 7] [ 14 2 61 577 113 125 40 32 13 23] [ 7 0 46 39 812 15 20 49 6 6] [ 3 1 47 150 66 649 17 49 4 14] [ 1 3 49 69 80 27 751 2 9 9] [ 9 0 22 47 65 38 8 791 3 17] [ 32 19 8 21 15 1 6 8 859 31] [ 19 30 8 14 5 0 2 9 20 893]] ``` **Confusion matrix vizualizing** ![450](https://user-images.githubusercontent.com/11740059/28140056-0d399676-6757-11e7-976d-29001be11799.png) Time of learning process: **5h 45min** * epochs = 100 **accuracy=67.06%** ![Keras Training Accuracy vs Validation Accuracy](https://plon.io/files/5965cefa8c5c480001546c67) ![Keras Training Loss vs Validation Loss](https://plon.io/files/5965cf3e8c5c480001546c69) Time of learning process: **11h 10min** Confusion matrix result: ``` [[599 5 74 98 55 14 12 9 117 17] [ 16 738 12 65 9 26 7 6 40 81] [ 31 0 523 168 136 86 33 14 9 0] [ 10 1 31 652 90 175 19 15 5 2] [ 6 0 34 132 717 55 16 31 9 0] [ 5 1 17 233 53 661 10 15 4 1] [ 2 1 39 157 105 48 637 3 7 1] [ 6 0 14 97 103 96 5 637 5 1] [ 41 7 28 84 19 18 6 4 783 10] [ 25 28 8 77 29 27 5 19 59 723]] ``` **Confusion matrix vizualizing** ![4100](https://user-images.githubusercontent.com/11740059/28138980-e79bebf2-6752-11e7-9415-e45272435a9c.png) ## Resources 1. [Official Keras Documentation](https://keras.io/) 2. [About Keras on Wikipedia](https://en.wikipedia.org/wiki/Keras) 3. [About Deep Learning on Wikipedia](https://en.wikipedia.org/wiki/Deep_learning) 4. [Tutorial by Dr. Jason Brownlee](http://machinelearningmastery.com/object-recognition-convolutional-neural-networks-keras-deep-learning-library/) 5. [Tutorial by Parneet Kaur](http://parneetk.github.io/blog/cnn-cifar10/) 6. [Tutorial by Giuseppe Bonaccorso](https://www.bonaccorso.eu/2016/08/06/cifar-10-image-classification-with-keras-convnet/) 7. Open Source on GitHub ## Grab the code or run project in online IDE * You can [download code from GitHub](https://github.com/simongeek/KerasT) * You can [run the project in your browser](https://plon.io/explore/keras-cifar-10-classification/m5UMC4nOeCFLM6yXN) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/.gitignore ================================================ .DS_Store __pycache__/ *.log .ipynb_checkpoints images/ *.h5 ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/README.md ================================================ # Hands-on Deep Learning Code for a tutorial series by [deepsense.ai](https://deepsense.ai/), on learning deep learning the practical way. * [Starting deep learning hands-on: image classification on CIFAR-10](https://blog.deepsense.ai/deep-learning-hands-on-image-classification/) * ...more coming soon! ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/aux/cifar100_meta ================================================ }q(Ufine_label_namesq]q(UappleqU aquarium_fishqUbabyqUbearqUbeaverqUbedq Ubeeq Ubeetleq Ubicycleq Ubottleq UbowlqUboyqUbridgeqUbusqU butterflyqUcamelqUcanqUcastleqU caterpillarqUcattleqUchairqU chimpanzeeqUclockqUcloudqU cockroachqUcouchqUcrabqU crocodileqUcupq Udinosaurq!Udolphinq"Uelephantq#Uflatfishq$Uforestq%Ufoxq&Ugirlq'Uhamsterq(Uhouseq)Ukangarooq*Ukeyboardq+Ulampq,U lawn_mowerq-Uleopardq.Ulionq/Ulizardq0Ulobsterq1Umanq2U maple_treeq3U motorcycleq4Umountainq5Umouseq6Umushroomq7Uoak_treeq8Uorangeq9Uorchidq:Uotterq;U palm_treeqU pine_treeq?Uplainq@UplateqAUpoppyqBU porcupineqCUpossumqDUrabbitqEUraccoonqFUrayqGUroadqHUrocketqIUroseqJUseaqKUsealqLUsharkqMUshrewqNUskunkqOU skyscraperqPUsnailqQUsnakeqRUspiderqSUsquirrelqTU streetcarqUU sunflowerqVU sweet_pepperqWUtableqXUtankqYU telephoneqZU televisionq[Utigerq\Utractorq]Utrainq^Utroutq_Utulipq`UturtleqaUwardrobeqbUwhaleqcU willow_treeqdUwolfqeUwomanqfUwormqgeUcoarse_label_namesqh]qi(Uaquatic_mammalsqjUfishqkUflowersqlUfood_containersqmUfruit_and_vegetablesqnUhousehold_electrical_devicesqoUhousehold_furnitureqpUinsectsqqUlarge_carnivoresqrUlarge_man-made_outdoor_thingsqsUlarge_natural_outdoor_scenesqtUlarge_omnivores_and_herbivoresquUmedium_mammalsqvUnon-insect_invertebratesqwUpeopleqxUreptilesqyU small_mammalsqzUtreesq{U vehicles_1q|U vehicles_2q}eu. ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/aux/cifar100_to_h5py.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pickle\n", "from keras import datasets\n", "import h5py" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def unpickle(file):\n", " with open(file, 'rb') as fo:\n", " res = pickle.load(fo, encoding='bytes')\n", " return res" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "meta = unpickle(\"cifar100_meta\")" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys([b'fine_label_names', b'coarse_label_names'])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "meta.keys()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "30" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coarse_label_names = [s.decode('utf-8') for s in meta[b'coarse_label_names']]\n", "max([len(s) for s in coarse_label_names])" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "13" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fine_label_names = [s.decode('utf-8') for s in meta[b'fine_label_names']]\n", "max([len(s) for s in fine_label_names])" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([b'aquatic_mammals', b'fish', b'flowers', b'food_containers',\n", " b'fruit_and_vegetables', b'household_electrical_devices',\n", " b'household_furniture', b'insects', b'large_carnivores',\n", " b'large_man-made_outdoor_things', b'large_natural_outdoor_scenes',\n", " b'large_omnivores_and_herbivores', b'medium_mammals',\n", " b'non-insect_invertebrates', b'people', b'reptiles',\n", " b'small_mammals', b'trees', b'vehicles_1', b'vehicles_2'], \n", " dtype='|S30')" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.array(coarse_label_names, dtype='S30')" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Downloading data from http://www.cs.toronto.edu/~kriz/cifar-100-python.tar.gz\n", "168755200/169001437 [============================>.] - ETA: 0s" ] } ], "source": [ "(x_train, y_train), (x_test, y_test) = datasets.cifar100.load_data()" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "f = h5py.File(\"cifar100.h5\")\n", "f.create_dataset('x_train', data=x_train)\n", "f.create_dataset('y_train', data=y_train)\n", "f.create_dataset('x_test', data=x_test)\n", "f.create_dataset('y_test', data=y_test)\n", "f.create_dataset('coarse_label_names', data=np.array(coarse_label_names, dtype='S30'))\n", "f.create_dataset('fine_label_names', data=np.array(fine_label_names, dtype='S13'))\n", "f.close()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [default]", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.3" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/aux/cifar10_to_h5py.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "from keras import datasets\n", "import h5py" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": true }, "outputs": [], "source": [ "categories = [\n", " 'airplane',\n", " 'automobile',\n", " 'bird',\n", " 'cat',\n", " 'deer',\n", " 'dog',\n", " 'frog',\n", " 'horse',\n", " 'ship',\n", " 'truck']" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "(x_train, y_train), (x_test, y_test) = datasets.cifar10.load_data()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "f = h5py.File(\"cifar10.h5\")\n", "f.create_dataset('x_train', data=x_train)\n", "f.create_dataset('y_train', data=y_train)\n", "f.create_dataset('x_test', data=x_test)\n", "f.create_dataset('y_test', data=y_test)\n", "f.create_dataset('label_names', data=np.array(categories, dtype='S10'))\n", "f.close()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/cnn_adv.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers import Conv2D, MaxPool2D, Dropout, BatchNormalization from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('cnn') ctx.tags.append('adv') # create neural network architecture model = Sequential() model.add(Conv2D(32, (3, 3), activation='relu', padding='same', input_shape=(32, 32, 3))) model.add(Conv2D(32, (1, 1), activation='relu')) model.add(MaxPool2D()) model.add(BatchNormalization()) model.add(Dropout(0.25)) model.add(Conv2D(64, (3, 3), activation='relu', padding='same')) model.add(Conv2D(64, (1, 1), activation='relu')) model.add(MaxPool2D()) model.add(BatchNormalization()) model.add(Dropout(0.25)) model.add(Conv2D(128, (3, 3), activation='relu', padding='same')) model.add(Conv2D(128, (1, 1), activation='relu')) model.add(MaxPool2D()) model.add(BatchNormalization()) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(256, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(10)) model.add(Activation('softmax')) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=100, batch_size=128, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/cnn_fchollet.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers import Conv2D, MaxPool2D, Dropout from keras import optimizers from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('cnn') ctx.tags.append('fchollet') # create neural network architecture # adapted from: https://github.com/fchollet/keras/blame/master/examples/cifar10_cnn.py model = Sequential() model.add(Conv2D(32, (3, 3), activation='relu', padding='same', input_shape=(32, 32, 3))) model.add(Conv2D(32, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Dropout(0.25)) model.add(Conv2D(64, (3, 3), activation='relu', padding='same')) model.add(Conv2D(64, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(10)) model.add(Activation('softmax')) # initiate RMSprop optimizer opt = optimizers.rmsprop(lr=0.0001, decay=1e-6) model.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=200, batch_size=32, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/cnn_pkaur.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers import Conv2D, MaxPool2D, Dropout from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('cnn') ctx.tags.append('pkaur') # create neural network architecture # adapted from http://parneetk.github.io/blog/cnn-cifar10/, #with permission: https://twitter.com/_parneetkaur/status/928004636728090625 model = Sequential() model.add(Conv2D(48, (3, 3), activation='relu', padding='same', input_shape=(32, 32, 3))) model.add(Conv2D(48, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Dropout(0.25)) model.add(Conv2D(96, (3, 3), activation='relu', padding='same')) model.add(Conv2D(96, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Dropout(0.25)) model.add(Conv2D(192, (3, 3), activation='relu', padding='same')) model.add(Conv2D(192, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(256, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(10, activation='softmax')) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=200, batch_size=128, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/cnn_simple.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers import Conv2D, MaxPool2D, Dropout from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('cnn') # create neural network architecture model = Sequential() model.add(Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3))) model.add(MaxPool2D()) model.add(Conv2D(64, (3, 3), activation='relu')) model.add(MaxPool2D()) model.add(Flatten()) model.add(Dense(10)) model.add(Activation('softmax')) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=20, batch_size=32, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/drawings.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from keras_sequential_ascii import sequential_model_to_ascii_printout" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Using TensorFlow backend.\n" ] } ], "source": [ "from keras.models import Sequential\n", "from keras.layers import Dense, Activation, Flatten\n", "from keras.layers import Conv2D, MaxPool2D, Dropout, BatchNormalization" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 3072\n", " Dense XXXXX ------------------- 30730 100.0%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Flatten(input_shape=(32, 32, 3)))\n", "model.add(Dense(10))\n", "model.add(Activation('softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(model.layers)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "30730" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model.count_params()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 3072\n", " Dense XXXXX ------------------- 393344 95.7%\n", " sigmoid ##### 128\n", " Dense XXXXX ------------------- 16512 4.0%\n", " sigmoid ##### 128\n", " Dense XXXXX ------------------- 1290 0.3%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Flatten(input_shape=(32, 32, 3)))\n", "model.add(Dense(128, activation='sigmoid'))\n", "model.add(Dense(128, activation='sigmoid'))\n", "model.add(Dense(10))\n", "model.add(Activation('softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Conv2D \\|/ ------------------- 896 2.1%\n", " relu ##### 30 30 32\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 15 15 32\n", " Conv2D \\|/ ------------------- 18496 43.6%\n", " relu ##### 13 13 64\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 6 6 64\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 2304\n", " Dense XXXXX ------------------- 23050 54.3%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Conv2D(32, (3, 3), activation='relu',\n", " input_shape=(32, 32, 3)))\n", "model.add(MaxPool2D())\n", "\n", "model.add(Conv2D(64, (3, 3), activation='relu'))\n", "model.add(MaxPool2D())\n", "\n", "model.add(Flatten())\n", "model.add(Dense(10))\n", "model.add(Activation('softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Conv2D \\|/ ------------------- 1344 0.1%\n", " relu ##### 32 32 48\n", " Conv2D \\|/ ------------------- 20784 1.8%\n", " relu ##### 30 30 48\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 15 15 48\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 15 15 48\n", " Conv2D \\|/ ------------------- 41568 3.5%\n", " relu ##### 15 15 96\n", " Conv2D \\|/ ------------------- 83040 7.1%\n", " relu ##### 13 13 96\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 6 6 96\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 6 6 96\n", " Conv2D \\|/ ------------------- 166080 14.2%\n", " relu ##### 6 6 192\n", " Conv2D \\|/ ------------------- 331968 28.3%\n", " relu ##### 4 4 192\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 2 2 192\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 2 2 192\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 768\n", " Dense XXXXX ------------------- 393728 33.6%\n", " relu ##### 512\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 512\n", " Dense XXXXX ------------------- 131328 11.2%\n", " relu ##### 256\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 256\n", " Dense XXXXX ------------------- 2570 0.2%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Conv2D(48, (3, 3), padding='same', input_shape=(32, 32, 3)))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(48, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Conv2D(96, (3, 3), padding='same'))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(96, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Conv2D(192, (3, 3), padding='same'))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(192, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Flatten())\n", "model.add(Dense(512))\n", "model.add(Activation('relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(256))\n", "model.add(Activation('relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(10, activation='softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Conv2D \\|/ ------------------- 896 0.1%\n", " relu ##### 32 32 32\n", " Conv2D \\|/ ------------------- 9248 0.7%\n", " relu ##### 30 30 32\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 15 15 32\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 15 15 32\n", " Conv2D \\|/ ------------------- 18496 1.5%\n", " relu ##### 15 15 64\n", " Conv2D \\|/ ------------------- 36928 3.0%\n", " relu ##### 13 13 64\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 6 6 64\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 6 6 64\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 2304\n", " Dense XXXXX ------------------- 1180160 94.3%\n", " relu ##### 512\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 512\n", " Dense XXXXX ------------------- 5130 0.4%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Conv2D(32, (3, 3), activation='relu', padding='same',\n", " input_shape=(32, 32, 3)))\n", "model.add(Conv2D(32, (3, 3), activation='relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "\n", "model.add(Conv2D(64, (3, 3), activation='relu', padding='same'))\n", "model.add(Conv2D(64, (3, 3), activation='relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "\n", "model.add(Flatten())\n", "model.add(Dense(512, activation='relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(10))\n", "model.add(Activation('softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Conv2D \\|/ ------------------- 1344 0.1%\n", " relu ##### 32 32 48\n", " Conv2D \\|/ ------------------- 20784 1.8%\n", " relu ##### 30 30 48\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 15 15 48\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 15 15 48\n", " Conv2D \\|/ ------------------- 41568 3.5%\n", " relu ##### 15 15 96\n", " Conv2D \\|/ ------------------- 83040 7.1%\n", " relu ##### 13 13 96\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 6 6 96\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 6 6 96\n", " Conv2D \\|/ ------------------- 166080 14.2%\n", " relu ##### 6 6 192\n", " Conv2D \\|/ ------------------- 331968 28.3%\n", " relu ##### 4 4 192\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 2 2 192\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 2 2 192\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 768\n", " Dense XXXXX ------------------- 393728 33.6%\n", " relu ##### 512\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 512\n", " Dense XXXXX ------------------- 131328 11.2%\n", " relu ##### 256\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 256\n", " Dense XXXXX ------------------- 2570 0.2%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "model.add(Conv2D(48, (3, 3), padding='same', input_shape=(32, 32, 3)))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(48, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Conv2D(96, (3, 3), padding='same'))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(96, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Conv2D(192, (3, 3), padding='same'))\n", "model.add(Activation('relu'))\n", "model.add(Conv2D(192, (3, 3)))\n", "model.add(Activation('relu'))\n", "model.add(MaxPool2D())\n", "model.add(Dropout(0.25))\n", "model.add(Flatten())\n", "model.add(Dense(512))\n", "model.add(Activation('relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(256))\n", "model.add(Activation('relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(10, activation='softmax'))\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)\n", "\n", " Input ##### 32 32 3\n", " Conv2D \\|/ ------------------- 896 0.1%\n", " relu ##### 32 32 32\n", " Conv2D \\|/ ------------------- 1056 0.2%\n", " relu ##### 32 32 32\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 16 16 32\n", " BatchNormalization μ|σ ------------------- 128 0.0%\n", " ##### 16 16 32\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 16 16 32\n", " Conv2D \\|/ ------------------- 18496 2.9%\n", " relu ##### 16 16 64\n", " Conv2D \\|/ ------------------- 4160 0.6%\n", " relu ##### 16 16 64\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 8 8 64\n", " BatchNormalization μ|σ ------------------- 256 0.0%\n", " ##### 8 8 64\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 8 8 64\n", " Conv2D \\|/ ------------------- 73856 11.5%\n", " relu ##### 8 8 128\n", " Conv2D \\|/ ------------------- 16512 2.6%\n", " relu ##### 8 8 128\n", " MaxPooling2D Y max ------------------- 0 0.0%\n", " ##### 4 4 128\n", " BatchNormalization μ|σ ------------------- 512 0.1%\n", " ##### 4 4 128\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 4 4 128\n", " Flatten ||||| ------------------- 0 0.0%\n", " ##### 2048\n", " Dense XXXXX ------------------- 524544 81.6%\n", " relu ##### 256\n", " Dropout | || ------------------- 0 0.0%\n", " ##### 256\n", " Dense XXXXX ------------------- 2570 0.4%\n", " softmax ##### 10\n" ] } ], "source": [ "model = Sequential()\n", "\n", "model.add(Conv2D(32, (3, 3), activation='relu', padding='same',\n", " input_shape=(32, 32, 3)))\n", "model.add(Conv2D(32, (1, 1), activation='relu'))\n", "model.add(MaxPool2D())\n", "model.add(BatchNormalization())\n", "model.add(Dropout(0.25))\n", "\n", "model.add(Conv2D(64, (3, 3), activation='relu', padding='same'))\n", "model.add(Conv2D(64, (1, 1), activation='relu'))\n", "model.add(MaxPool2D())\n", "model.add(BatchNormalization())\n", "model.add(Dropout(0.25))\n", "\n", "model.add(Conv2D(128, (3, 3), activation='relu', padding='same'))\n", "model.add(Conv2D(128, (1, 1), activation='relu'))\n", "model.add(MaxPool2D())\n", "model.add(BatchNormalization())\n", "model.add(Dropout(0.25))\n", "\n", "model.add(Flatten())\n", "model.add(Dense(256, activation='relu'))\n", "model.add(Dropout(0.5))\n", "model.add(Dense(10))\n", "model.add(Activation('softmax'))\n", "\n", "sequential_model_to_ascii_printout(model)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/helpers.py ================================================ import h5py from keras import utils import numpy as np from PIL import Image from keras.callbacks import Callback from deepsense import neptune def load_cifar10(filepath="/public/cifar/cifar10.h5"): data = h5py.File(filepath, 'r') x_train = data['x_train'].value y_train = data['y_train'].value x_test = data['x_test'].value y_test = data['y_test'].value x_train = x_train.astype('float32') x_test = x_test.astype('float32') x_train /= 255 x_test /= 255 y_train = utils.to_categorical(y_train, 10) y_test = utils.to_categorical(y_test, 10) print("CIFAR-10 data loaded from {}.".format(filepath)) return (x_train, y_train), (x_test, y_test) ctx = neptune.Context() def array_2d_to_image(array, autorescale=True): assert array.min() >= 0 assert len(array.shape) in [2, 3] if array.max() <= 1 and autorescale: array = 255 * array array = array.astype('uint8') return Image.fromarray(array) def model_summary(model): print("Model created successfully.") print(model.summary()) ctx.channel_send('n_layers', len(model.layers)) ctx.channel_send('n_parameters', model.count_params()) categories = [ 'airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck'] class NeptuneCallback(Callback): def __init__(self, x_test, y_test, images_per_epoch=-1): self.epoch_id = 0 self.images_per_epoch = images_per_epoch self.x_test = x_test self.y_test = y_test def on_epoch_end(self, epoch, logs={}): self.epoch_id += 1 # logging numeric channels ctx.channel_send('Log-loss training', self.epoch_id, logs['loss']) ctx.channel_send('Log-loss validation', self.epoch_id, logs['val_loss']) ctx.channel_send('Accuracy training', self.epoch_id, logs['acc']) ctx.channel_send('Accuracy validation', self.epoch_id, logs['val_acc']) # Predict the digits for images of the test set. validation_predictions = self.model.predict_classes(self.x_test) scores = self.model.predict(self.x_test) # Identify the incorrectly classified images and send them to Neptune Dashboard. image_per_epoch = 0 for index, (prediction, actual) in enumerate(zip(validation_predictions, self.y_test.argmax(axis=1))): if prediction != actual: if image_per_epoch == self.images_per_epoch: break image_per_epoch += 1 ctx.channel_send('false_predictions', neptune.Image( name='[{}] {} X {} V'.format(self.epoch_id, categories[prediction], categories[actual]), description="\n".join([ "{:5.1f}% {} {}".format(100 * score, categories[i], "!!!" if i == actual else "") for i, score in enumerate(scores[index])]), data=array_2d_to_image(self.x_test[index,:,:]))) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/lr.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('logistic-regression') # create neural network architecture model = Sequential() model.add(Flatten(input_shape=(32, 32, 3))) model.add(Dense(10)) model.add(Activation('softmax')) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=20, batch_size=128, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/mlp.py ================================================ from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers import Dropout from helpers import NeptuneCallback, load_cifar10, model_summary from deepsense import neptune ctx = neptune.Context() ctx.tags.append('mlp') # create neural network architecture model = Sequential() model.add(Flatten(input_shape=(32, 32, 3))) model.add(Dense(128, activation='sigmoid')) model.add(Dense(128, activation='sigmoid')) model.add(Dense(10)) model.add(Activation('softmax')) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) model_summary(model) # loading data (x_train, y_train), (x_test, y_test) = load_cifar10() # training model.fit(x_train, y_train, epochs=20, batch_size=32, validation_data=(x_test, y_test), verbose=2, callbacks=[NeptuneCallback(x_test, y_test, images_per_epoch=20)]) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/hands-on-deep-learning-master/cifar_image_classification/neptune.yaml ================================================ project-key: CIF name: CIFAR10 with DL description: From blog post "Starting deep learning hands-on - image classification" by deepsense.ai. tags: [cifar10] environment: keras-2.0-gpu-py3 worker: gcp-gpu-medium exclude: - aux ================================================ FILE: projects/kaggle/cifar10/baseline/keras/simple/cifar10.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cifar10.py # \author chenghuige # \date 2018-07-11 15:34:51.963932 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import melt import os import cv2 import numpy import numpy as np import matplotlib.pyplot as plt from keras.models import Sequential from keras.layers import Dense, Activation from keras.layers import Conv2D, MaxPooling2D, Flatten, AveragePooling2D, BatchNormalization, advanced_activations from keras.layers import initializers from keras.optimizers import SGD, Adam from keras.utils import np_utils from keras.utils.vis_utils import plot_model import gezi classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') classes_map = dict(zip(classes, range(len(classes)))) print('----------', classes_map) import pandas as pd l = pd.read_csv('./mount/data/kaggle/cifar-10/trainLabels.csv') m = {} for i in range(len(l)): m[l.id[i]] = l.label[i] def loadData(path='train'): data = [] labels = [] #for i in range(10): #dir1 = './'+path+'/'+str(i) dir1 = './'+path+'/' listImg = os.listdir(dir1) for img in listImg: #print('img-----', img) imgIn = cv2.imread(dir1+'/'+img) if imgIn.size != 3072: print('Img error') data.append(imgIn) #data.append([numpy.array(Image.open(dir+'/'+img))]) #labels.append(i) #print path, i, 'is read' labels.append(classes_map[m[int(gezi.strip_suffix(img, '.png'))]]) return data, labels def loadTrainValid(path='train'): train_data = [] train_labels = [] valid_data = [] valid_labels = [] #for i in range(10): #dir1 = './'+path+'/'+str(i) dir1 = './'+path+'/' listImg = os.listdir(dir1) for img in listImg: #print('img-----', img) imgIn = cv2.imread(dir1+'/'+img) id = int(gezi.strip_suffix(img, '.png')) if imgIn.size != 3072: print('Img error') if id % 10 == 0: data, labels = valid_data, valid_labels else: data, labels = train_data, train_labels data.append(imgIn) #data.append([numpy.array(Image.open(dir+'/'+img))]) #labels.append(i) #print path, i, 'is read' labels.append(classes_map[m[id]]) return train_data, train_labels, valid_data, valid_labels def loadTest(path='test'): data = [] dir1 = './'+path+'/' listImg = os.listdir(dir1) num_imgs = len(listImg) for i in range(num_imgs): imgIn = cv2.imread(dir1+'/'+'%d.png' % (i + 1)) if imgIn.size != 3072: print('Img error') data.append(imgIn) return data #trainData, trainLabels = loadData('train') trainData, trainLabels, validData, validLabels = loadTrainValid() testData = loadTest() def preprocess(trainData, trainLabels=None): if trainLabels is not None: trainLabels = np_utils.to_categorical(trainLabels, 10) trainData = numpy.reshape(trainData, (len(trainData), 32, 32,3)) trainData = trainData.astype(numpy.float32) trainData -= numpy.mean(trainData, axis=0) trainData /= numpy.std(trainData, axis=0) if trainLabels is not None: return trainData, trainLabels else: return trainData print('---loading train') trainData, trainLabels = preprocess(trainData, trainLabels) print('num_train', len(trainData)) print('---loading valid') validData, validLabels = preprocess(validData, validLabels) print('num_valid', len(validData)) print('---loading test') testData = preprocess(testData) print('num_test', len(testData)) #print trainData[-1] model = Sequential() model.add(Conv2D(filters=32, kernel_size=(5,5), padding='same', input_shape=(32,32,3), data_format='channels_last', kernel_initializer=initializers.he_normal())) model.add(BatchNormalization(axis=-1, momentum=0.9, epsilon=1e-6)) model.add(Activation(advanced_activations.LeakyReLU(alpha=0.2))) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Conv2D(filters=32, kernel_size=(5,5), padding='same', data_format='channels_last', kernel_initializer=initializers.he_normal())) model.add(BatchNormalization(axis=-1, momentum=0.9, epsilon=1e-6)) model.add(Activation(advanced_activations.LeakyReLU(alpha=0.2))) model.add(AveragePooling2D(pool_size=(2,2))) model.add(Conv2D(filters=64, kernel_size=(5,5), padding='same', data_format='channels_last', kernel_initializer=initializers.he_normal())) model.add(BatchNormalization(axis=-1, momentum=0.9, epsilon=1e-6)) model.add(Activation(advanced_activations.LeakyReLU(alpha=0.2))) model.add(AveragePooling2D(pool_size=(2,2))) model.add(Flatten()) model.add(Dense(1024, kernel_initializer=initializers.he_normal())) model.add(BatchNormalization(epsilon=1e-6)) model.add(Activation(advanced_activations.LeakyReLU(alpha=0.2))) model.add(Dense(256, activation=advanced_activations.LeakyReLU(alpha=0.1), kernel_initializer=initializers.he_normal())) model.add(Dense(10, activation='softmax', kernel_initializer=initializers.he_normal())) adam = Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-8) model.summary() model.compile(optimizer=adam, loss='categorical_crossentropy', metrics=['accuracy']) result = model.fit(trainData, trainLabels, batch_size=256, epochs=20, verbose=1, shuffle=True, validation_data=(validData, validLabels)) plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=False) plt.figure() plt.plot(result.epoch, result.history['acc'], label='acc') plt.scatter(result.epoch, result.history['acc'], marker='*') plt.plot(result.epoch, result.history['val_acc'], label='val_acc') plt.scatter(result.epoch, result.history['val_acc'], marker='*') plt.legend(loc='right') #plt.show() plt.savefig('acc.png') result = model.predict(testData, batch_size=256) result = np.argmax(result, 1) result = [classes[x] for x in result] result_file = 'result.csv' predicts = pd.DataFrame() predicts['id'] = list(range(1, len(result) + 1)) predicts['label'] = result predicts.to_csv(result_file, index=False) ================================================ FILE: projects/kaggle/cifar10/baseline/keras/simple/result.csv ================================================ id,label 1,cat 2,airplane 3,automobile 4,ship 5,bird 6,cat 7,airplane 8,dog 9,horse 10,dog 11,bird 12,cat 13,deer 14,cat 15,dog 16,airplane 17,deer 18,deer 19,airplane 20,dog 21,airplane 22,ship 23,frog 24,automobile 25,horse 26,truck 27,automobile 28,dog 29,cat 30,cat 31,cat 32,horse 33,dog 34,cat 35,cat 36,dog 37,cat 38,dog 39,ship 40,dog 41,frog 42,bird 43,truck 44,deer 45,truck 46,automobile 47,deer 48,bird 49,airplane 50,truck 51,bird 52,horse 53,bird 54,frog 55,ship 56,ship 57,cat 58,ship 59,bird 60,cat 61,deer 62,cat 63,deer 64,frog 65,truck 66,truck 67,bird 68,horse 69,bird 70,bird 71,truck 72,bird 73,truck 74,deer 75,dog 76,truck 77,airplane 78,cat 79,horse 80,dog 81,frog 82,deer 83,airplane 84,deer 85,deer 86,cat 87,dog 88,bird 89,deer 90,truck 91,automobile 92,airplane 93,frog 94,horse 95,automobile 96,frog 97,deer 98,bird 99,truck 100,bird 101,deer 102,airplane 103,dog 104,cat 105,ship 106,bird 107,automobile 108,bird 109,frog 110,frog 111,horse 112,bird 113,deer 114,airplane 115,truck 116,horse 117,cat 118,horse 119,airplane 120,frog 121,deer 122,truck 123,horse 124,bird 125,ship 126,cat 127,airplane 128,dog 129,deer 130,horse 131,truck 132,cat 133,bird 134,frog 135,dog 136,cat 137,frog 138,frog 139,horse 140,truck 141,frog 142,dog 143,truck 144,bird 145,frog 146,truck 147,truck 148,ship 149,cat 150,frog 151,truck 152,dog 153,dog 154,truck 155,truck 156,horse 157,bird 158,ship 159,truck 160,deer 161,cat 162,frog 163,ship 164,cat 165,frog 166,automobile 167,frog 168,dog 169,cat 170,frog 171,bird 172,frog 173,automobile 174,frog 175,bird 176,airplane 177,cat 178,automobile 179,bird 180,automobile 181,frog 182,truck 183,deer 184,horse 185,ship 186,dog 187,ship 188,truck 189,cat 190,bird 191,automobile 192,ship 193,airplane 194,bird 195,truck 196,deer 197,automobile 198,cat 199,ship 200,bird 201,ship 202,deer 203,airplane 204,cat 205,airplane 206,bird 207,cat 208,cat 209,dog 210,frog 211,automobile 212,deer 213,dog 214,frog 215,cat 216,truck 217,dog 218,bird 219,dog 220,automobile 221,frog 222,truck 223,dog 224,deer 225,cat 226,truck 227,horse 228,cat 229,horse 230,horse 231,airplane 232,bird 233,dog 234,cat 235,horse 236,frog 237,deer 238,deer 239,truck 240,airplane 241,automobile 242,cat 243,bird 244,cat 245,cat 246,deer 247,frog 248,truck 249,horse 250,ship 251,bird 252,airplane 253,frog 254,airplane 255,cat 256,deer 257,cat 258,ship 259,deer 260,airplane 261,dog 262,automobile 263,horse 264,horse 265,frog 266,frog 267,cat 268,bird 269,bird 270,automobile 271,dog 272,truck 273,horse 274,cat 275,horse 276,ship 277,frog 278,horse 279,dog 280,dog 281,dog 282,bird 283,cat 284,truck 285,deer 286,automobile 287,ship 288,truck 289,cat 290,deer 291,automobile 292,deer 293,airplane 294,cat 295,truck 296,frog 297,dog 298,dog 299,ship 300,truck 301,frog 302,cat 303,frog 304,ship 305,frog 306,automobile 307,airplane 308,horse 309,cat 310,deer 311,automobile 312,ship 313,deer 314,truck 315,cat 316,cat 317,deer 318,deer 319,frog 320,frog 321,dog 322,horse 323,ship 324,dog 325,horse 326,ship 327,cat 328,dog 329,deer 330,truck 331,bird 332,airplane 333,bird 334,bird 335,deer 336,deer 337,dog 338,truck 339,deer 340,ship 341,ship 342,frog 343,deer 344,bird 345,cat 346,automobile 347,automobile 348,horse 349,cat 350,truck 351,bird 352,truck 353,bird 354,dog 355,airplane 356,cat 357,airplane 358,bird 359,bird 360,dog 361,horse 362,airplane 363,airplane 364,airplane 365,truck 366,deer 367,horse 368,truck 369,ship 370,deer 371,frog 372,truck 373,cat 374,airplane 375,truck 376,airplane 377,frog 378,cat 379,automobile 380,dog 381,truck 382,airplane 383,airplane 384,ship 385,cat 386,cat 387,ship 388,dog 389,bird 390,deer 391,frog 392,deer 393,bird 394,frog 395,frog 396,bird 397,frog 398,deer 399,cat 400,horse 401,airplane 402,deer 403,airplane 404,automobile 405,deer 406,airplane 407,truck 408,truck 409,bird 410,bird 411,horse 412,deer 413,ship 414,airplane 415,automobile 416,frog 417,cat 418,deer 419,bird 420,dog 421,frog 422,automobile 423,cat 424,deer 425,airplane 426,ship 427,cat 428,bird 429,automobile 430,frog 431,cat 432,cat 433,deer 434,airplane 435,truck 436,deer 437,automobile 438,truck 439,automobile 440,dog 441,airplane 442,airplane 443,horse 444,cat 445,ship 446,dog 447,horse 448,horse 449,airplane 450,airplane 451,deer 452,frog 453,airplane 454,ship 455,horse 456,airplane 457,deer 458,cat 459,bird 460,truck 461,deer 462,automobile 463,horse 464,frog 465,ship 466,ship 467,deer 468,bird 469,cat 470,deer 471,cat 472,ship 473,frog 474,airplane 475,cat 476,cat 477,horse 478,horse 479,dog 480,deer 481,dog 482,ship 483,cat 484,automobile 485,cat 486,airplane 487,frog 488,horse 489,ship 490,deer 491,truck 492,frog 493,frog 494,cat 495,automobile 496,horse 497,truck 498,frog 499,cat 500,bird 501,ship 502,dog 503,bird 504,deer 505,cat 506,dog 507,dog 508,automobile 509,cat 510,automobile 511,dog 512,automobile 513,frog 514,deer 515,airplane 516,ship 517,truck 518,ship 519,ship 520,automobile 521,frog 522,dog 523,horse 524,truck 525,frog 526,deer 527,airplane 528,dog 529,frog 530,airplane 531,dog 532,frog 533,bird 534,deer 535,horse 536,dog 537,airplane 538,ship 539,truck 540,truck 541,truck 542,cat 543,deer 544,cat 545,cat 546,deer 547,cat 548,horse 549,dog 550,horse 551,deer 552,dog 553,horse 554,deer 555,frog 556,cat 557,dog 558,ship 559,frog 560,bird 561,cat 562,automobile 563,frog 564,cat 565,airplane 566,horse 567,deer 568,frog 569,cat 570,horse 571,ship 572,frog 573,bird 574,ship 575,deer 576,airplane 577,truck 578,frog 579,ship 580,deer 581,frog 582,frog 583,frog 584,truck 585,automobile 586,dog 587,deer 588,automobile 589,airplane 590,deer 591,horse 592,deer 593,truck 594,horse 595,frog 596,ship 597,dog 598,truck 599,dog 600,deer 601,automobile 602,deer 603,automobile 604,truck 605,automobile 606,horse 607,bird 608,horse 609,horse 610,truck 611,deer 612,cat 613,automobile 614,ship 615,frog 616,deer 617,automobile 618,deer 619,horse 620,deer 621,frog 622,deer 623,cat 624,cat 625,cat 626,truck 627,cat 628,horse 629,horse 630,dog 631,airplane 632,deer 633,airplane 634,horse 635,horse 636,ship 637,deer 638,frog 639,airplane 640,cat 641,frog 642,frog 643,deer 644,deer 645,deer 646,automobile 647,cat 648,horse 649,frog 650,airplane 651,cat 652,truck 653,dog 654,dog 655,frog 656,deer 657,frog 658,truck 659,deer 660,horse 661,frog 662,ship 663,ship 664,airplane 665,automobile 666,ship 667,frog 668,automobile 669,frog 670,cat 671,cat 672,bird 673,frog 674,airplane 675,horse 676,deer 677,horse 678,automobile 679,horse 680,dog 681,deer 682,dog 683,airplane 684,horse 685,bird 686,cat 687,dog 688,frog 689,bird 690,dog 691,bird 692,airplane 693,deer 694,truck 695,automobile 696,frog 697,cat 698,automobile 699,ship 700,frog 701,horse 702,cat 703,truck 704,cat 705,deer 706,dog 707,frog 708,horse 709,bird 710,deer 711,frog 712,automobile 713,dog 714,deer 715,truck 716,ship 717,frog 718,automobile 719,cat 720,dog 721,truck 722,dog 723,cat 724,dog 725,airplane 726,bird 727,dog 728,deer 729,airplane 730,deer 731,truck 732,cat 733,truck 734,bird 735,bird 736,automobile 737,frog 738,cat 739,cat 740,cat 741,horse 742,dog 743,automobile 744,cat 745,deer 746,deer 747,deer 748,horse 749,dog 750,dog 751,automobile 752,ship 753,ship 754,truck 755,cat 756,automobile 757,dog 758,deer 759,frog 760,ship 761,truck 762,dog 763,deer 764,dog 765,airplane 766,ship 767,horse 768,frog 769,bird 770,ship 771,airplane 772,horse 773,cat 774,dog 775,deer 776,truck 777,airplane 778,dog 779,deer 780,horse 781,truck 782,deer 783,automobile 784,truck 785,frog 786,bird 787,cat 788,bird 789,truck 790,cat 791,bird 792,deer 793,cat 794,frog 795,horse 796,airplane 797,bird 798,frog 799,deer 800,airplane 801,frog 802,deer 803,dog 804,cat 805,airplane 806,automobile 807,frog 808,deer 809,bird 810,frog 811,truck 812,horse 813,bird 814,dog 815,horse 816,truck 817,cat 818,cat 819,cat 820,deer 821,cat 822,horse 823,airplane 824,ship 825,airplane 826,airplane 827,bird 828,deer 829,deer 830,truck 831,airplane 832,cat 833,deer 834,ship 835,truck 836,deer 837,truck 838,deer 839,dog 840,bird 841,horse 842,deer 843,dog 844,automobile 845,dog 846,frog 847,horse 848,deer 849,automobile 850,automobile 851,dog 852,dog 853,horse 854,truck 855,dog 856,frog 857,ship 858,frog 859,dog 860,airplane 861,automobile 862,automobile 863,deer 864,airplane 865,airplane 866,dog 867,deer 868,dog 869,airplane 870,frog 871,deer 872,horse 873,truck 874,bird 875,truck 876,dog 877,deer 878,airplane 879,frog 880,ship 881,deer 882,frog 883,frog 884,dog 885,frog 886,dog 887,dog 888,dog 889,horse 890,cat 891,bird 892,frog 893,ship 894,automobile 895,truck 896,frog 897,cat 898,truck 899,ship 900,deer 901,bird 902,truck 903,horse 904,truck 905,cat 906,bird 907,frog 908,dog 909,airplane 910,bird 911,dog 912,frog 913,deer 914,truck 915,truck 916,ship 917,bird 918,dog 919,dog 920,dog 921,cat 922,dog 923,airplane 924,automobile 925,deer 926,automobile 927,airplane 928,cat 929,automobile 930,truck 931,deer 932,bird 933,dog 934,horse 935,horse 936,ship 937,frog 938,automobile 939,automobile 940,airplane 941,bird 942,truck 943,truck 944,airplane 945,horse 946,bird 947,horse 948,truck 949,frog 950,deer 951,horse 952,airplane 953,dog 954,cat 955,cat 956,truck 957,frog 958,deer 959,dog 960,airplane 961,frog 962,frog 963,deer 964,airplane 965,dog 966,deer 967,cat 968,frog 969,automobile 970,truck 971,airplane 972,ship 973,bird 974,frog 975,deer 976,deer 977,horse 978,deer 979,truck 980,cat 981,horse 982,deer 983,ship 984,deer 985,airplane 986,dog 987,dog 988,frog 989,bird 990,cat 991,automobile 992,ship 993,deer 994,bird 995,deer 996,cat 997,truck 998,ship 999,horse 1000,truck 1001,bird 1002,airplane 1003,bird 1004,cat 1005,cat 1006,dog 1007,ship 1008,automobile 1009,automobile 1010,cat 1011,cat 1012,deer 1013,truck 1014,airplane 1015,frog 1016,horse 1017,ship 1018,bird 1019,cat 1020,automobile 1021,frog 1022,frog 1023,deer 1024,truck 1025,bird 1026,cat 1027,deer 1028,bird 1029,dog 1030,dog 1031,horse 1032,deer 1033,deer 1034,cat 1035,bird 1036,deer 1037,deer 1038,truck 1039,dog 1040,airplane 1041,cat 1042,dog 1043,dog 1044,ship 1045,cat 1046,cat 1047,ship 1048,horse 1049,cat 1050,bird 1051,dog 1052,deer 1053,dog 1054,frog 1055,bird 1056,frog 1057,frog 1058,cat 1059,bird 1060,horse 1061,frog 1062,truck 1063,truck 1064,automobile 1065,frog 1066,truck 1067,dog 1068,horse 1069,airplane 1070,cat 1071,frog 1072,deer 1073,horse 1074,horse 1075,cat 1076,truck 1077,dog 1078,frog 1079,truck 1080,deer 1081,deer 1082,dog 1083,deer 1084,ship 1085,ship 1086,cat 1087,horse 1088,deer 1089,bird 1090,cat 1091,automobile 1092,ship 1093,automobile 1094,airplane 1095,bird 1096,truck 1097,bird 1098,frog 1099,bird 1100,truck 1101,dog 1102,airplane 1103,frog 1104,airplane 1105,truck 1106,truck 1107,airplane 1108,truck 1109,truck 1110,ship 1111,dog 1112,horse 1113,cat 1114,truck 1115,deer 1116,bird 1117,truck 1118,deer 1119,airplane 1120,cat 1121,truck 1122,dog 1123,cat 1124,ship 1125,horse 1126,ship 1127,deer 1128,frog 1129,truck 1130,cat 1131,frog 1132,frog 1133,dog 1134,frog 1135,automobile 1136,cat 1137,frog 1138,ship 1139,horse 1140,horse 1141,frog 1142,cat 1143,horse 1144,airplane 1145,frog 1146,deer 1147,automobile 1148,frog 1149,truck 1150,bird 1151,bird 1152,truck 1153,bird 1154,bird 1155,horse 1156,dog 1157,dog 1158,automobile 1159,automobile 1160,deer 1161,cat 1162,ship 1163,airplane 1164,frog 1165,ship 1166,airplane 1167,truck 1168,automobile 1169,horse 1170,truck 1171,frog 1172,truck 1173,airplane 1174,horse 1175,ship 1176,deer 1177,deer 1178,automobile 1179,dog 1180,cat 1181,frog 1182,horse 1183,automobile 1184,deer 1185,automobile 1186,frog 1187,horse 1188,deer 1189,bird 1190,dog 1191,bird 1192,dog 1193,truck 1194,cat 1195,ship 1196,ship 1197,horse 1198,deer 1199,frog 1200,dog 1201,truck 1202,bird 1203,deer 1204,truck 1205,cat 1206,dog 1207,deer 1208,horse 1209,cat 1210,frog 1211,airplane 1212,truck 1213,truck 1214,truck 1215,ship 1216,frog 1217,dog 1218,airplane 1219,deer 1220,automobile 1221,deer 1222,ship 1223,dog 1224,bird 1225,truck 1226,automobile 1227,automobile 1228,cat 1229,automobile 1230,frog 1231,horse 1232,deer 1233,deer 1234,automobile 1235,automobile 1236,frog 1237,deer 1238,dog 1239,cat 1240,deer 1241,dog 1242,deer 1243,ship 1244,airplane 1245,ship 1246,truck 1247,horse 1248,airplane 1249,horse 1250,truck 1251,frog 1252,horse 1253,airplane 1254,ship 1255,ship 1256,cat 1257,cat 1258,cat 1259,ship 1260,truck 1261,deer 1262,bird 1263,deer 1264,bird 1265,truck 1266,frog 1267,cat 1268,ship 1269,truck 1270,dog 1271,deer 1272,airplane 1273,ship 1274,deer 1275,bird 1276,frog 1277,deer 1278,horse 1279,truck 1280,frog 1281,dog 1282,ship 1283,bird 1284,dog 1285,truck 1286,horse 1287,deer 1288,horse 1289,dog 1290,frog 1291,automobile 1292,frog 1293,deer 1294,automobile 1295,truck 1296,deer 1297,truck 1298,horse 1299,airplane 1300,automobile 1301,automobile 1302,airplane 1303,deer 1304,frog 1305,horse 1306,frog 1307,deer 1308,airplane 1309,airplane 1310,frog 1311,truck 1312,dog 1313,truck 1314,frog 1315,bird 1316,automobile 1317,dog 1318,truck 1319,horse 1320,automobile 1321,dog 1322,frog 1323,bird 1324,cat 1325,horse 1326,bird 1327,horse 1328,dog 1329,cat 1330,airplane 1331,automobile 1332,ship 1333,truck 1334,truck 1335,cat 1336,deer 1337,cat 1338,cat 1339,automobile 1340,horse 1341,automobile 1342,frog 1343,airplane 1344,airplane 1345,truck 1346,truck 1347,bird 1348,bird 1349,airplane 1350,frog 1351,dog 1352,cat 1353,bird 1354,cat 1355,deer 1356,truck 1357,horse 1358,dog 1359,dog 1360,dog 1361,dog 1362,dog 1363,deer 1364,cat 1365,deer 1366,airplane 1367,deer 1368,cat 1369,frog 1370,truck 1371,cat 1372,deer 1373,cat 1374,dog 1375,deer 1376,bird 1377,ship 1378,horse 1379,dog 1380,cat 1381,ship 1382,truck 1383,dog 1384,cat 1385,truck 1386,deer 1387,truck 1388,bird 1389,deer 1390,dog 1391,bird 1392,frog 1393,deer 1394,ship 1395,bird 1396,horse 1397,deer 1398,truck 1399,airplane 1400,ship 1401,truck 1402,ship 1403,deer 1404,automobile 1405,cat 1406,horse 1407,cat 1408,bird 1409,deer 1410,dog 1411,deer 1412,truck 1413,automobile 1414,deer 1415,truck 1416,cat 1417,ship 1418,bird 1419,horse 1420,bird 1421,truck 1422,ship 1423,frog 1424,cat 1425,airplane 1426,frog 1427,cat 1428,deer 1429,cat 1430,cat 1431,bird 1432,automobile 1433,truck 1434,frog 1435,automobile 1436,bird 1437,frog 1438,horse 1439,horse 1440,truck 1441,truck 1442,bird 1443,frog 1444,deer 1445,automobile 1446,frog 1447,frog 1448,bird 1449,truck 1450,deer 1451,airplane 1452,ship 1453,frog 1454,deer 1455,frog 1456,deer 1457,airplane 1458,horse 1459,ship 1460,airplane 1461,frog 1462,ship 1463,airplane 1464,cat 1465,bird 1466,airplane 1467,truck 1468,deer 1469,horse 1470,cat 1471,dog 1472,bird 1473,frog 1474,bird 1475,bird 1476,horse 1477,bird 1478,truck 1479,truck 1480,deer 1481,deer 1482,cat 1483,airplane 1484,airplane 1485,cat 1486,cat 1487,cat 1488,cat 1489,horse 1490,horse 1491,airplane 1492,dog 1493,dog 1494,deer 1495,frog 1496,airplane 1497,dog 1498,truck 1499,ship 1500,cat 1501,truck 1502,bird 1503,ship 1504,truck 1505,horse 1506,bird 1507,horse 1508,cat 1509,deer 1510,horse 1511,automobile 1512,bird 1513,deer 1514,airplane 1515,automobile 1516,frog 1517,truck 1518,airplane 1519,bird 1520,airplane 1521,automobile 1522,ship 1523,automobile 1524,frog 1525,airplane 1526,cat 1527,deer 1528,bird 1529,dog 1530,deer 1531,automobile 1532,ship 1533,deer 1534,truck 1535,deer 1536,ship 1537,frog 1538,deer 1539,ship 1540,cat 1541,ship 1542,dog 1543,airplane 1544,deer 1545,truck 1546,frog 1547,deer 1548,dog 1549,deer 1550,deer 1551,dog 1552,truck 1553,automobile 1554,bird 1555,bird 1556,deer 1557,bird 1558,dog 1559,automobile 1560,deer 1561,dog 1562,deer 1563,dog 1564,cat 1565,horse 1566,deer 1567,deer 1568,cat 1569,frog 1570,frog 1571,deer 1572,horse 1573,truck 1574,truck 1575,bird 1576,ship 1577,truck 1578,airplane 1579,automobile 1580,cat 1581,deer 1582,bird 1583,ship 1584,frog 1585,bird 1586,airplane 1587,automobile 1588,frog 1589,deer 1590,frog 1591,cat 1592,dog 1593,dog 1594,cat 1595,dog 1596,automobile 1597,horse 1598,frog 1599,cat 1600,airplane 1601,airplane 1602,truck 1603,dog 1604,dog 1605,cat 1606,horse 1607,ship 1608,horse 1609,cat 1610,frog 1611,deer 1612,truck 1613,dog 1614,truck 1615,bird 1616,airplane 1617,bird 1618,bird 1619,horse 1620,cat 1621,dog 1622,frog 1623,airplane 1624,truck 1625,truck 1626,cat 1627,dog 1628,frog 1629,deer 1630,dog 1631,airplane 1632,airplane 1633,airplane 1634,deer 1635,truck 1636,airplane 1637,truck 1638,deer 1639,frog 1640,airplane 1641,automobile 1642,truck 1643,cat 1644,horse 1645,truck 1646,dog 1647,truck 1648,horse 1649,cat 1650,automobile 1651,dog 1652,deer 1653,deer 1654,cat 1655,deer 1656,bird 1657,automobile 1658,frog 1659,airplane 1660,deer 1661,horse 1662,truck 1663,deer 1664,ship 1665,cat 1666,ship 1667,bird 1668,ship 1669,bird 1670,automobile 1671,truck 1672,frog 1673,deer 1674,deer 1675,truck 1676,horse 1677,frog 1678,deer 1679,deer 1680,frog 1681,airplane 1682,ship 1683,truck 1684,airplane 1685,frog 1686,cat 1687,airplane 1688,airplane 1689,ship 1690,automobile 1691,frog 1692,dog 1693,ship 1694,horse 1695,truck 1696,deer 1697,ship 1698,automobile 1699,ship 1700,deer 1701,automobile 1702,automobile 1703,airplane 1704,dog 1705,deer 1706,bird 1707,truck 1708,dog 1709,deer 1710,truck 1711,horse 1712,deer 1713,truck 1714,cat 1715,deer 1716,deer 1717,bird 1718,horse 1719,cat 1720,automobile 1721,frog 1722,cat 1723,cat 1724,bird 1725,frog 1726,deer 1727,frog 1728,cat 1729,cat 1730,deer 1731,truck 1732,truck 1733,horse 1734,ship 1735,cat 1736,truck 1737,cat 1738,cat 1739,bird 1740,deer 1741,ship 1742,airplane 1743,bird 1744,cat 1745,airplane 1746,cat 1747,truck 1748,deer 1749,frog 1750,dog 1751,automobile 1752,ship 1753,deer 1754,automobile 1755,frog 1756,truck 1757,truck 1758,truck 1759,ship 1760,automobile 1761,airplane 1762,ship 1763,deer 1764,cat 1765,frog 1766,truck 1767,cat 1768,ship 1769,automobile 1770,cat 1771,bird 1772,truck 1773,deer 1774,deer 1775,bird 1776,ship 1777,dog 1778,cat 1779,truck 1780,dog 1781,truck 1782,bird 1783,cat 1784,frog 1785,cat 1786,truck 1787,truck 1788,frog 1789,bird 1790,cat 1791,dog 1792,truck 1793,ship 1794,truck 1795,deer 1796,frog 1797,bird 1798,airplane 1799,dog 1800,frog 1801,cat 1802,dog 1803,bird 1804,deer 1805,automobile 1806,cat 1807,cat 1808,truck 1809,cat 1810,deer 1811,horse 1812,horse 1813,horse 1814,horse 1815,deer 1816,deer 1817,cat 1818,airplane 1819,bird 1820,dog 1821,cat 1822,horse 1823,bird 1824,deer 1825,horse 1826,dog 1827,airplane 1828,bird 1829,bird 1830,automobile 1831,truck 1832,dog 1833,airplane 1834,truck 1835,cat 1836,cat 1837,bird 1838,horse 1839,dog 1840,deer 1841,deer 1842,deer 1843,airplane 1844,horse 1845,dog 1846,bird 1847,dog 1848,cat 1849,deer 1850,dog 1851,truck 1852,frog 1853,automobile 1854,ship 1855,bird 1856,dog 1857,frog 1858,horse 1859,airplane 1860,cat 1861,horse 1862,deer 1863,dog 1864,frog 1865,cat 1866,bird 1867,airplane 1868,cat 1869,horse 1870,horse 1871,airplane 1872,deer 1873,bird 1874,airplane 1875,airplane 1876,horse 1877,ship 1878,airplane 1879,dog 1880,automobile 1881,deer 1882,airplane 1883,bird 1884,frog 1885,cat 1886,bird 1887,automobile 1888,deer 1889,horse 1890,bird 1891,deer 1892,truck 1893,automobile 1894,frog 1895,airplane 1896,bird 1897,dog 1898,deer 1899,truck 1900,cat 1901,cat 1902,cat 1903,airplane 1904,ship 1905,deer 1906,airplane 1907,truck 1908,cat 1909,truck 1910,truck 1911,cat 1912,horse 1913,automobile 1914,cat 1915,truck 1916,horse 1917,dog 1918,bird 1919,automobile 1920,cat 1921,dog 1922,ship 1923,automobile 1924,dog 1925,frog 1926,airplane 1927,automobile 1928,frog 1929,bird 1930,bird 1931,ship 1932,airplane 1933,truck 1934,horse 1935,ship 1936,frog 1937,ship 1938,horse 1939,truck 1940,frog 1941,dog 1942,ship 1943,frog 1944,horse 1945,cat 1946,cat 1947,ship 1948,deer 1949,frog 1950,cat 1951,truck 1952,bird 1953,dog 1954,deer 1955,horse 1956,deer 1957,frog 1958,cat 1959,dog 1960,airplane 1961,automobile 1962,deer 1963,dog 1964,deer 1965,truck 1966,cat 1967,truck 1968,truck 1969,automobile 1970,truck 1971,truck 1972,deer 1973,cat 1974,ship 1975,cat 1976,airplane 1977,bird 1978,automobile 1979,frog 1980,airplane 1981,ship 1982,dog 1983,truck 1984,airplane 1985,bird 1986,cat 1987,cat 1988,deer 1989,bird 1990,deer 1991,frog 1992,dog 1993,deer 1994,truck 1995,frog 1996,horse 1997,automobile 1998,frog 1999,frog 2000,automobile 2001,deer 2002,deer 2003,truck 2004,deer 2005,horse 2006,horse 2007,ship 2008,horse 2009,cat 2010,automobile 2011,deer 2012,frog 2013,horse 2014,dog 2015,cat 2016,cat 2017,cat 2018,deer 2019,ship 2020,airplane 2021,airplane 2022,frog 2023,deer 2024,horse 2025,deer 2026,truck 2027,bird 2028,cat 2029,airplane 2030,horse 2031,deer 2032,bird 2033,deer 2034,deer 2035,deer 2036,ship 2037,truck 2038,dog 2039,horse 2040,bird 2041,airplane 2042,deer 2043,deer 2044,dog 2045,deer 2046,horse 2047,cat 2048,bird 2049,deer 2050,truck 2051,dog 2052,bird 2053,cat 2054,horse 2055,bird 2056,airplane 2057,automobile 2058,airplane 2059,dog 2060,ship 2061,cat 2062,frog 2063,bird 2064,bird 2065,truck 2066,truck 2067,automobile 2068,truck 2069,cat 2070,horse 2071,dog 2072,cat 2073,deer 2074,deer 2075,airplane 2076,airplane 2077,ship 2078,airplane 2079,automobile 2080,airplane 2081,truck 2082,airplane 2083,frog 2084,bird 2085,dog 2086,horse 2087,frog 2088,dog 2089,truck 2090,frog 2091,bird 2092,automobile 2093,truck 2094,deer 2095,horse 2096,automobile 2097,truck 2098,truck 2099,bird 2100,ship 2101,horse 2102,airplane 2103,automobile 2104,dog 2105,airplane 2106,ship 2107,airplane 2108,truck 2109,automobile 2110,frog 2111,deer 2112,horse 2113,frog 2114,cat 2115,truck 2116,frog 2117,frog 2118,frog 2119,ship 2120,dog 2121,horse 2122,automobile 2123,dog 2124,dog 2125,truck 2126,deer 2127,ship 2128,ship 2129,ship 2130,airplane 2131,dog 2132,horse 2133,dog 2134,horse 2135,airplane 2136,deer 2137,deer 2138,dog 2139,bird 2140,horse 2141,deer 2142,horse 2143,frog 2144,bird 2145,automobile 2146,frog 2147,horse 2148,cat 2149,frog 2150,truck 2151,cat 2152,cat 2153,truck 2154,airplane 2155,ship 2156,horse 2157,horse 2158,airplane 2159,truck 2160,dog 2161,frog 2162,automobile 2163,ship 2164,automobile 2165,frog 2166,frog 2167,dog 2168,cat 2169,airplane 2170,truck 2171,ship 2172,cat 2173,horse 2174,horse 2175,dog 2176,cat 2177,frog 2178,frog 2179,truck 2180,cat 2181,frog 2182,ship 2183,horse 2184,ship 2185,bird 2186,automobile 2187,cat 2188,truck 2189,dog 2190,frog 2191,horse 2192,cat 2193,bird 2194,automobile 2195,cat 2196,ship 2197,horse 2198,deer 2199,airplane 2200,cat 2201,airplane 2202,bird 2203,dog 2204,truck 2205,horse 2206,frog 2207,truck 2208,dog 2209,airplane 2210,frog 2211,ship 2212,airplane 2213,deer 2214,automobile 2215,truck 2216,ship 2217,truck 2218,automobile 2219,horse 2220,automobile 2221,truck 2222,automobile 2223,truck 2224,dog 2225,cat 2226,automobile 2227,airplane 2228,cat 2229,cat 2230,frog 2231,airplane 2232,cat 2233,ship 2234,airplane 2235,bird 2236,airplane 2237,frog 2238,frog 2239,ship 2240,horse 2241,ship 2242,cat 2243,dog 2244,horse 2245,cat 2246,horse 2247,frog 2248,automobile 2249,automobile 2250,dog 2251,airplane 2252,horse 2253,dog 2254,dog 2255,truck 2256,ship 2257,cat 2258,ship 2259,airplane 2260,frog 2261,airplane 2262,truck 2263,horse 2264,truck 2265,bird 2266,airplane 2267,dog 2268,horse 2269,horse 2270,frog 2271,automobile 2272,ship 2273,automobile 2274,deer 2275,horse 2276,horse 2277,truck 2278,ship 2279,ship 2280,horse 2281,cat 2282,cat 2283,deer 2284,frog 2285,frog 2286,airplane 2287,truck 2288,frog 2289,ship 2290,frog 2291,dog 2292,cat 2293,horse 2294,truck 2295,dog 2296,cat 2297,airplane 2298,airplane 2299,ship 2300,cat 2301,frog 2302,horse 2303,cat 2304,airplane 2305,airplane 2306,airplane 2307,dog 2308,deer 2309,airplane 2310,cat 2311,airplane 2312,frog 2313,dog 2314,ship 2315,truck 2316,ship 2317,automobile 2318,ship 2319,frog 2320,deer 2321,deer 2322,deer 2323,frog 2324,frog 2325,bird 2326,frog 2327,frog 2328,frog 2329,dog 2330,deer 2331,cat 2332,automobile 2333,cat 2334,truck 2335,truck 2336,bird 2337,deer 2338,cat 2339,airplane 2340,dog 2341,bird 2342,horse 2343,truck 2344,truck 2345,airplane 2346,frog 2347,frog 2348,truck 2349,cat 2350,cat 2351,ship 2352,frog 2353,horse 2354,deer 2355,deer 2356,ship 2357,horse 2358,horse 2359,frog 2360,airplane 2361,deer 2362,frog 2363,truck 2364,frog 2365,airplane 2366,truck 2367,ship 2368,automobile 2369,truck 2370,ship 2371,horse 2372,dog 2373,ship 2374,cat 2375,bird 2376,frog 2377,automobile 2378,ship 2379,cat 2380,truck 2381,automobile 2382,dog 2383,truck 2384,airplane 2385,cat 2386,airplane 2387,cat 2388,automobile 2389,bird 2390,deer 2391,deer 2392,automobile 2393,truck 2394,cat 2395,deer 2396,dog 2397,deer 2398,bird 2399,cat 2400,ship 2401,automobile 2402,bird 2403,truck 2404,dog 2405,bird 2406,frog 2407,dog 2408,truck 2409,dog 2410,frog 2411,cat 2412,ship 2413,automobile 2414,cat 2415,automobile 2416,bird 2417,bird 2418,frog 2419,cat 2420,dog 2421,deer 2422,deer 2423,horse 2424,dog 2425,cat 2426,bird 2427,frog 2428,bird 2429,dog 2430,deer 2431,horse 2432,truck 2433,deer 2434,bird 2435,cat 2436,horse 2437,automobile 2438,cat 2439,truck 2440,truck 2441,airplane 2442,cat 2443,automobile 2444,deer 2445,airplane 2446,automobile 2447,truck 2448,cat 2449,deer 2450,frog 2451,horse 2452,automobile 2453,bird 2454,deer 2455,airplane 2456,deer 2457,horse 2458,truck 2459,frog 2460,automobile 2461,dog 2462,truck 2463,airplane 2464,horse 2465,frog 2466,cat 2467,deer 2468,truck 2469,bird 2470,horse 2471,bird 2472,ship 2473,deer 2474,cat 2475,horse 2476,ship 2477,deer 2478,deer 2479,cat 2480,automobile 2481,bird 2482,cat 2483,cat 2484,bird 2485,horse 2486,bird 2487,deer 2488,deer 2489,cat 2490,ship 2491,frog 2492,ship 2493,deer 2494,airplane 2495,automobile 2496,horse 2497,dog 2498,horse 2499,airplane 2500,dog 2501,cat 2502,horse 2503,bird 2504,truck 2505,deer 2506,dog 2507,cat 2508,automobile 2509,automobile 2510,frog 2511,automobile 2512,automobile 2513,deer 2514,bird 2515,frog 2516,automobile 2517,frog 2518,dog 2519,cat 2520,frog 2521,deer 2522,cat 2523,ship 2524,deer 2525,dog 2526,airplane 2527,truck 2528,bird 2529,deer 2530,deer 2531,automobile 2532,ship 2533,horse 2534,automobile 2535,frog 2536,cat 2537,deer 2538,deer 2539,cat 2540,frog 2541,airplane 2542,airplane 2543,horse 2544,truck 2545,dog 2546,truck 2547,automobile 2548,frog 2549,deer 2550,airplane 2551,horse 2552,frog 2553,deer 2554,airplane 2555,frog 2556,ship 2557,horse 2558,frog 2559,frog 2560,deer 2561,bird 2562,deer 2563,bird 2564,truck 2565,dog 2566,cat 2567,airplane 2568,horse 2569,automobile 2570,deer 2571,cat 2572,dog 2573,horse 2574,dog 2575,dog 2576,dog 2577,deer 2578,cat 2579,ship 2580,deer 2581,deer 2582,horse 2583,deer 2584,airplane 2585,dog 2586,horse 2587,cat 2588,airplane 2589,ship 2590,deer 2591,truck 2592,cat 2593,truck 2594,truck 2595,dog 2596,horse 2597,horse 2598,airplane 2599,dog 2600,truck 2601,cat 2602,ship 2603,automobile 2604,dog 2605,ship 2606,truck 2607,deer 2608,frog 2609,cat 2610,deer 2611,ship 2612,horse 2613,bird 2614,dog 2615,bird 2616,dog 2617,horse 2618,deer 2619,bird 2620,horse 2621,horse 2622,ship 2623,automobile 2624,airplane 2625,horse 2626,bird 2627,airplane 2628,automobile 2629,ship 2630,frog 2631,horse 2632,automobile 2633,cat 2634,bird 2635,truck 2636,airplane 2637,truck 2638,dog 2639,horse 2640,cat 2641,horse 2642,ship 2643,truck 2644,deer 2645,airplane 2646,airplane 2647,bird 2648,deer 2649,truck 2650,ship 2651,ship 2652,dog 2653,cat 2654,frog 2655,ship 2656,cat 2657,horse 2658,cat 2659,truck 2660,horse 2661,horse 2662,frog 2663,automobile 2664,deer 2665,horse 2666,ship 2667,automobile 2668,cat 2669,dog 2670,truck 2671,cat 2672,frog 2673,frog 2674,cat 2675,cat 2676,frog 2677,deer 2678,automobile 2679,airplane 2680,bird 2681,truck 2682,automobile 2683,bird 2684,horse 2685,dog 2686,frog 2687,airplane 2688,automobile 2689,deer 2690,ship 2691,ship 2692,automobile 2693,cat 2694,deer 2695,cat 2696,dog 2697,deer 2698,automobile 2699,dog 2700,cat 2701,bird 2702,horse 2703,bird 2704,cat 2705,deer 2706,dog 2707,frog 2708,bird 2709,truck 2710,frog 2711,frog 2712,horse 2713,automobile 2714,deer 2715,truck 2716,dog 2717,cat 2718,frog 2719,cat 2720,airplane 2721,deer 2722,horse 2723,dog 2724,horse 2725,truck 2726,ship 2727,dog 2728,deer 2729,cat 2730,deer 2731,deer 2732,dog 2733,cat 2734,truck 2735,truck 2736,truck 2737,dog 2738,ship 2739,airplane 2740,deer 2741,truck 2742,deer 2743,horse 2744,frog 2745,cat 2746,ship 2747,frog 2748,frog 2749,truck 2750,truck 2751,cat 2752,deer 2753,deer 2754,airplane 2755,automobile 2756,dog 2757,frog 2758,horse 2759,automobile 2760,automobile 2761,bird 2762,ship 2763,deer 2764,truck 2765,truck 2766,truck 2767,frog 2768,bird 2769,horse 2770,truck 2771,truck 2772,bird 2773,automobile 2774,automobile 2775,bird 2776,cat 2777,deer 2778,bird 2779,cat 2780,truck 2781,frog 2782,ship 2783,bird 2784,ship 2785,dog 2786,deer 2787,cat 2788,truck 2789,deer 2790,truck 2791,ship 2792,bird 2793,deer 2794,cat 2795,frog 2796,dog 2797,cat 2798,horse 2799,automobile 2800,cat 2801,cat 2802,airplane 2803,automobile 2804,truck 2805,ship 2806,horse 2807,bird 2808,bird 2809,cat 2810,automobile 2811,airplane 2812,cat 2813,deer 2814,cat 2815,horse 2816,cat 2817,automobile 2818,truck 2819,frog 2820,automobile 2821,frog 2822,bird 2823,ship 2824,ship 2825,deer 2826,airplane 2827,automobile 2828,dog 2829,truck 2830,deer 2831,deer 2832,cat 2833,cat 2834,cat 2835,truck 2836,cat 2837,bird 2838,dog 2839,truck 2840,frog 2841,automobile 2842,cat 2843,ship 2844,cat 2845,bird 2846,deer 2847,cat 2848,frog 2849,truck 2850,deer 2851,deer 2852,deer 2853,automobile 2854,frog 2855,deer 2856,horse 2857,dog 2858,cat 2859,truck 2860,horse 2861,truck 2862,horse 2863,horse 2864,frog 2865,deer 2866,bird 2867,deer 2868,dog 2869,horse 2870,cat 2871,automobile 2872,airplane 2873,horse 2874,dog 2875,frog 2876,frog 2877,frog 2878,horse 2879,cat 2880,cat 2881,ship 2882,deer 2883,deer 2884,dog 2885,horse 2886,frog 2887,deer 2888,frog 2889,ship 2890,deer 2891,deer 2892,deer 2893,frog 2894,automobile 2895,cat 2896,deer 2897,deer 2898,frog 2899,deer 2900,dog 2901,deer 2902,truck 2903,cat 2904,deer 2905,cat 2906,cat 2907,dog 2908,airplane 2909,ship 2910,cat 2911,airplane 2912,deer 2913,truck 2914,horse 2915,horse 2916,airplane 2917,dog 2918,truck 2919,deer 2920,deer 2921,automobile 2922,horse 2923,frog 2924,bird 2925,cat 2926,truck 2927,frog 2928,airplane 2929,bird 2930,ship 2931,dog 2932,airplane 2933,dog 2934,deer 2935,ship 2936,cat 2937,truck 2938,cat 2939,deer 2940,bird 2941,ship 2942,deer 2943,airplane 2944,airplane 2945,dog 2946,cat 2947,airplane 2948,horse 2949,horse 2950,ship 2951,deer 2952,ship 2953,frog 2954,truck 2955,dog 2956,cat 2957,airplane 2958,truck 2959,frog 2960,horse 2961,truck 2962,truck 2963,truck 2964,automobile 2965,airplane 2966,automobile 2967,airplane 2968,truck 2969,automobile 2970,ship 2971,frog 2972,truck 2973,cat 2974,bird 2975,dog 2976,airplane 2977,cat 2978,horse 2979,ship 2980,frog 2981,truck 2982,bird 2983,deer 2984,horse 2985,automobile 2986,ship 2987,dog 2988,bird 2989,horse 2990,airplane 2991,truck 2992,bird 2993,horse 2994,cat 2995,bird 2996,frog 2997,automobile 2998,airplane 2999,truck 3000,truck 3001,cat 3002,deer 3003,automobile 3004,cat 3005,horse 3006,deer 3007,cat 3008,automobile 3009,airplane 3010,deer 3011,ship 3012,cat 3013,frog 3014,ship 3015,cat 3016,cat 3017,ship 3018,ship 3019,frog 3020,airplane 3021,frog 3022,horse 3023,bird 3024,deer 3025,deer 3026,frog 3027,ship 3028,dog 3029,dog 3030,airplane 3031,airplane 3032,deer 3033,frog 3034,bird 3035,horse 3036,automobile 3037,cat 3038,deer 3039,automobile 3040,cat 3041,horse 3042,cat 3043,truck 3044,horse 3045,frog 3046,horse 3047,truck 3048,airplane 3049,airplane 3050,dog 3051,dog 3052,frog 3053,horse 3054,truck 3055,cat 3056,truck 3057,horse 3058,horse 3059,automobile 3060,deer 3061,truck 3062,ship 3063,truck 3064,ship 3065,dog 3066,deer 3067,truck 3068,airplane 3069,frog 3070,horse 3071,horse 3072,cat 3073,deer 3074,bird 3075,bird 3076,airplane 3077,horse 3078,automobile 3079,automobile 3080,bird 3081,cat 3082,cat 3083,ship 3084,horse 3085,horse 3086,deer 3087,truck 3088,bird 3089,airplane 3090,ship 3091,bird 3092,frog 3093,airplane 3094,cat 3095,airplane 3096,truck 3097,automobile 3098,dog 3099,frog 3100,airplane 3101,airplane 3102,deer 3103,dog 3104,automobile 3105,deer 3106,bird 3107,airplane 3108,deer 3109,dog 3110,frog 3111,airplane 3112,airplane 3113,automobile 3114,truck 3115,deer 3116,dog 3117,ship 3118,horse 3119,horse 3120,deer 3121,truck 3122,deer 3123,cat 3124,cat 3125,cat 3126,dog 3127,ship 3128,ship 3129,deer 3130,cat 3131,automobile 3132,automobile 3133,cat 3134,airplane 3135,automobile 3136,cat 3137,cat 3138,deer 3139,dog 3140,dog 3141,dog 3142,deer 3143,horse 3144,cat 3145,horse 3146,cat 3147,bird 3148,cat 3149,truck 3150,airplane 3151,deer 3152,dog 3153,automobile 3154,deer 3155,frog 3156,deer 3157,ship 3158,airplane 3159,ship 3160,truck 3161,airplane 3162,bird 3163,truck 3164,airplane 3165,frog 3166,deer 3167,deer 3168,bird 3169,cat 3170,horse 3171,frog 3172,ship 3173,frog 3174,deer 3175,automobile 3176,deer 3177,cat 3178,truck 3179,dog 3180,horse 3181,cat 3182,deer 3183,automobile 3184,deer 3185,automobile 3186,frog 3187,deer 3188,horse 3189,ship 3190,ship 3191,automobile 3192,bird 3193,dog 3194,ship 3195,truck 3196,truck 3197,deer 3198,dog 3199,dog 3200,automobile 3201,bird 3202,automobile 3203,airplane 3204,deer 3205,airplane 3206,truck 3207,airplane 3208,frog 3209,dog 3210,deer 3211,truck 3212,cat 3213,horse 3214,truck 3215,cat 3216,bird 3217,horse 3218,airplane 3219,frog 3220,cat 3221,deer 3222,truck 3223,cat 3224,frog 3225,deer 3226,dog 3227,truck 3228,ship 3229,bird 3230,horse 3231,dog 3232,ship 3233,horse 3234,automobile 3235,frog 3236,automobile 3237,airplane 3238,cat 3239,cat 3240,truck 3241,bird 3242,automobile 3243,dog 3244,frog 3245,automobile 3246,cat 3247,horse 3248,airplane 3249,dog 3250,ship 3251,cat 3252,airplane 3253,cat 3254,frog 3255,cat 3256,automobile 3257,deer 3258,cat 3259,deer 3260,ship 3261,bird 3262,cat 3263,automobile 3264,frog 3265,automobile 3266,dog 3267,frog 3268,truck 3269,truck 3270,bird 3271,deer 3272,deer 3273,truck 3274,cat 3275,truck 3276,ship 3277,bird 3278,truck 3279,deer 3280,horse 3281,frog 3282,deer 3283,frog 3284,deer 3285,bird 3286,airplane 3287,automobile 3288,automobile 3289,airplane 3290,ship 3291,ship 3292,deer 3293,truck 3294,airplane 3295,horse 3296,frog 3297,cat 3298,ship 3299,bird 3300,cat 3301,airplane 3302,dog 3303,automobile 3304,dog 3305,truck 3306,automobile 3307,truck 3308,automobile 3309,airplane 3310,deer 3311,truck 3312,frog 3313,truck 3314,frog 3315,bird 3316,automobile 3317,truck 3318,bird 3319,automobile 3320,dog 3321,ship 3322,horse 3323,bird 3324,horse 3325,airplane 3326,truck 3327,horse 3328,automobile 3329,dog 3330,bird 3331,horse 3332,cat 3333,deer 3334,deer 3335,frog 3336,automobile 3337,horse 3338,frog 3339,automobile 3340,deer 3341,bird 3342,cat 3343,cat 3344,deer 3345,frog 3346,bird 3347,airplane 3348,cat 3349,truck 3350,deer 3351,frog 3352,deer 3353,dog 3354,horse 3355,deer 3356,bird 3357,bird 3358,dog 3359,deer 3360,dog 3361,frog 3362,automobile 3363,cat 3364,frog 3365,cat 3366,truck 3367,cat 3368,frog 3369,horse 3370,truck 3371,cat 3372,frog 3373,truck 3374,bird 3375,frog 3376,airplane 3377,bird 3378,horse 3379,automobile 3380,dog 3381,frog 3382,bird 3383,cat 3384,ship 3385,horse 3386,truck 3387,automobile 3388,horse 3389,dog 3390,frog 3391,truck 3392,dog 3393,truck 3394,horse 3395,horse 3396,dog 3397,cat 3398,automobile 3399,dog 3400,truck 3401,frog 3402,automobile 3403,cat 3404,automobile 3405,horse 3406,bird 3407,bird 3408,airplane 3409,automobile 3410,automobile 3411,deer 3412,truck 3413,dog 3414,deer 3415,bird 3416,truck 3417,ship 3418,cat 3419,airplane 3420,frog 3421,truck 3422,cat 3423,deer 3424,dog 3425,truck 3426,bird 3427,airplane 3428,frog 3429,frog 3430,horse 3431,truck 3432,horse 3433,deer 3434,airplane 3435,deer 3436,ship 3437,frog 3438,deer 3439,truck 3440,frog 3441,horse 3442,automobile 3443,frog 3444,cat 3445,deer 3446,dog 3447,automobile 3448,frog 3449,cat 3450,deer 3451,deer 3452,airplane 3453,bird 3454,horse 3455,airplane 3456,dog 3457,ship 3458,ship 3459,cat 3460,airplane 3461,deer 3462,deer 3463,deer 3464,ship 3465,truck 3466,cat 3467,deer 3468,cat 3469,frog 3470,airplane 3471,dog 3472,airplane 3473,truck 3474,cat 3475,deer 3476,dog 3477,cat 3478,ship 3479,airplane 3480,ship 3481,dog 3482,frog 3483,airplane 3484,automobile 3485,automobile 3486,truck 3487,cat 3488,ship 3489,cat 3490,airplane 3491,deer 3492,truck 3493,truck 3494,truck 3495,deer 3496,deer 3497,ship 3498,bird 3499,dog 3500,dog 3501,bird 3502,cat 3503,cat 3504,deer 3505,automobile 3506,deer 3507,truck 3508,truck 3509,deer 3510,ship 3511,horse 3512,deer 3513,bird 3514,dog 3515,deer 3516,horse 3517,cat 3518,deer 3519,frog 3520,bird 3521,dog 3522,frog 3523,bird 3524,cat 3525,cat 3526,frog 3527,dog 3528,frog 3529,cat 3530,airplane 3531,dog 3532,ship 3533,frog 3534,truck 3535,cat 3536,dog 3537,cat 3538,dog 3539,truck 3540,automobile 3541,deer 3542,truck 3543,dog 3544,airplane 3545,airplane 3546,ship 3547,frog 3548,dog 3549,frog 3550,deer 3551,horse 3552,deer 3553,deer 3554,ship 3555,frog 3556,dog 3557,cat 3558,cat 3559,dog 3560,bird 3561,horse 3562,truck 3563,cat 3564,cat 3565,deer 3566,dog 3567,horse 3568,bird 3569,frog 3570,bird 3571,airplane 3572,ship 3573,truck 3574,dog 3575,horse 3576,horse 3577,cat 3578,airplane 3579,dog 3580,truck 3581,deer 3582,frog 3583,truck 3584,frog 3585,airplane 3586,deer 3587,automobile 3588,airplane 3589,horse 3590,airplane 3591,truck 3592,cat 3593,ship 3594,dog 3595,bird 3596,ship 3597,deer 3598,cat 3599,truck 3600,dog 3601,horse 3602,deer 3603,cat 3604,cat 3605,dog 3606,airplane 3607,dog 3608,dog 3609,cat 3610,deer 3611,automobile 3612,cat 3613,truck 3614,frog 3615,dog 3616,cat 3617,cat 3618,cat 3619,deer 3620,horse 3621,deer 3622,frog 3623,truck 3624,airplane 3625,deer 3626,airplane 3627,truck 3628,bird 3629,airplane 3630,bird 3631,ship 3632,deer 3633,frog 3634,cat 3635,bird 3636,bird 3637,airplane 3638,ship 3639,truck 3640,bird 3641,frog 3642,automobile 3643,airplane 3644,truck 3645,horse 3646,bird 3647,cat 3648,deer 3649,deer 3650,horse 3651,ship 3652,cat 3653,cat 3654,frog 3655,dog 3656,dog 3657,deer 3658,horse 3659,cat 3660,deer 3661,bird 3662,airplane 3663,truck 3664,ship 3665,cat 3666,ship 3667,cat 3668,automobile 3669,cat 3670,airplane 3671,dog 3672,ship 3673,deer 3674,horse 3675,automobile 3676,deer 3677,frog 3678,frog 3679,horse 3680,horse 3681,deer 3682,dog 3683,deer 3684,truck 3685,dog 3686,truck 3687,bird 3688,frog 3689,cat 3690,horse 3691,frog 3692,frog 3693,bird 3694,horse 3695,automobile 3696,bird 3697,truck 3698,cat 3699,dog 3700,dog 3701,cat 3702,bird 3703,frog 3704,airplane 3705,dog 3706,deer 3707,horse 3708,ship 3709,airplane 3710,horse 3711,airplane 3712,horse 3713,cat 3714,dog 3715,truck 3716,deer 3717,airplane 3718,bird 3719,cat 3720,airplane 3721,deer 3722,cat 3723,bird 3724,cat 3725,automobile 3726,truck 3727,horse 3728,truck 3729,frog 3730,bird 3731,truck 3732,ship 3733,automobile 3734,cat 3735,automobile 3736,truck 3737,automobile 3738,cat 3739,horse 3740,frog 3741,dog 3742,deer 3743,ship 3744,cat 3745,ship 3746,automobile 3747,bird 3748,bird 3749,cat 3750,deer 3751,airplane 3752,cat 3753,bird 3754,frog 3755,deer 3756,dog 3757,horse 3758,bird 3759,cat 3760,frog 3761,bird 3762,horse 3763,bird 3764,deer 3765,automobile 3766,frog 3767,frog 3768,deer 3769,ship 3770,bird 3771,ship 3772,horse 3773,horse 3774,bird 3775,frog 3776,truck 3777,airplane 3778,deer 3779,cat 3780,cat 3781,deer 3782,ship 3783,frog 3784,frog 3785,deer 3786,deer 3787,cat 3788,truck 3789,dog 3790,truck 3791,cat 3792,ship 3793,horse 3794,ship 3795,automobile 3796,frog 3797,automobile 3798,deer 3799,ship 3800,automobile 3801,horse 3802,airplane 3803,dog 3804,frog 3805,ship 3806,deer 3807,cat 3808,horse 3809,cat 3810,horse 3811,automobile 3812,bird 3813,frog 3814,truck 3815,bird 3816,ship 3817,airplane 3818,horse 3819,deer 3820,frog 3821,bird 3822,frog 3823,dog 3824,deer 3825,horse 3826,horse 3827,deer 3828,dog 3829,automobile 3830,cat 3831,frog 3832,cat 3833,horse 3834,deer 3835,cat 3836,dog 3837,automobile 3838,bird 3839,ship 3840,cat 3841,frog 3842,dog 3843,deer 3844,horse 3845,deer 3846,dog 3847,airplane 3848,automobile 3849,automobile 3850,dog 3851,dog 3852,ship 3853,deer 3854,bird 3855,cat 3856,airplane 3857,airplane 3858,truck 3859,cat 3860,horse 3861,airplane 3862,cat 3863,frog 3864,truck 3865,bird 3866,airplane 3867,frog 3868,frog 3869,ship 3870,frog 3871,deer 3872,cat 3873,truck 3874,dog 3875,frog 3876,truck 3877,truck 3878,ship 3879,bird 3880,ship 3881,cat 3882,airplane 3883,horse 3884,horse 3885,automobile 3886,dog 3887,airplane 3888,automobile 3889,dog 3890,bird 3891,truck 3892,horse 3893,bird 3894,bird 3895,cat 3896,airplane 3897,bird 3898,deer 3899,dog 3900,deer 3901,truck 3902,bird 3903,dog 3904,airplane 3905,frog 3906,horse 3907,deer 3908,truck 3909,deer 3910,deer 3911,ship 3912,bird 3913,ship 3914,dog 3915,deer 3916,cat 3917,cat 3918,bird 3919,bird 3920,truck 3921,horse 3922,horse 3923,deer 3924,ship 3925,deer 3926,frog 3927,deer 3928,horse 3929,frog 3930,deer 3931,airplane 3932,truck 3933,horse 3934,horse 3935,frog 3936,dog 3937,dog 3938,dog 3939,horse 3940,frog 3941,horse 3942,cat 3943,frog 3944,automobile 3945,ship 3946,ship 3947,ship 3948,truck 3949,dog 3950,cat 3951,truck 3952,deer 3953,cat 3954,dog 3955,automobile 3956,bird 3957,frog 3958,airplane 3959,automobile 3960,automobile 3961,dog 3962,horse 3963,truck 3964,truck 3965,ship 3966,horse 3967,dog 3968,cat 3969,dog 3970,frog 3971,dog 3972,cat 3973,deer 3974,frog 3975,bird 3976,bird 3977,frog 3978,frog 3979,frog 3980,horse 3981,truck 3982,frog 3983,automobile 3984,truck 3985,automobile 3986,frog 3987,frog 3988,frog 3989,truck 3990,airplane 3991,deer 3992,dog 3993,truck 3994,horse 3995,automobile 3996,airplane 3997,truck 3998,horse 3999,cat 4000,truck 4001,frog 4002,truck 4003,cat 4004,horse 4005,deer 4006,bird 4007,truck 4008,bird 4009,truck 4010,truck 4011,cat 4012,airplane 4013,frog 4014,bird 4015,deer 4016,deer 4017,truck 4018,deer 4019,truck 4020,ship 4021,bird 4022,ship 4023,horse 4024,cat 4025,airplane 4026,deer 4027,cat 4028,deer 4029,deer 4030,deer 4031,truck 4032,deer 4033,frog 4034,deer 4035,truck 4036,automobile 4037,frog 4038,horse 4039,horse 4040,dog 4041,horse 4042,automobile 4043,deer 4044,airplane 4045,deer 4046,frog 4047,cat 4048,frog 4049,dog 4050,truck 4051,ship 4052,cat 4053,truck 4054,frog 4055,bird 4056,deer 4057,airplane 4058,bird 4059,airplane 4060,truck 4061,bird 4062,truck 4063,ship 4064,deer 4065,frog 4066,deer 4067,frog 4068,ship 4069,ship 4070,deer 4071,automobile 4072,dog 4073,dog 4074,horse 4075,horse 4076,bird 4077,dog 4078,bird 4079,automobile 4080,ship 4081,ship 4082,truck 4083,cat 4084,ship 4085,cat 4086,dog 4087,frog 4088,bird 4089,horse 4090,dog 4091,dog 4092,bird 4093,truck 4094,bird 4095,frog 4096,deer 4097,airplane 4098,airplane 4099,deer 4100,dog 4101,dog 4102,cat 4103,airplane 4104,truck 4105,cat 4106,cat 4107,airplane 4108,deer 4109,bird 4110,cat 4111,frog 4112,horse 4113,truck 4114,truck 4115,dog 4116,cat 4117,ship 4118,dog 4119,cat 4120,airplane 4121,airplane 4122,frog 4123,cat 4124,airplane 4125,frog 4126,truck 4127,cat 4128,cat 4129,truck 4130,horse 4131,airplane 4132,dog 4133,frog 4134,cat 4135,frog 4136,cat 4137,cat 4138,cat 4139,deer 4140,truck 4141,airplane 4142,horse 4143,automobile 4144,deer 4145,automobile 4146,truck 4147,deer 4148,frog 4149,dog 4150,cat 4151,airplane 4152,frog 4153,automobile 4154,frog 4155,dog 4156,airplane 4157,bird 4158,frog 4159,truck 4160,frog 4161,horse 4162,deer 4163,automobile 4164,deer 4165,truck 4166,truck 4167,airplane 4168,horse 4169,cat 4170,deer 4171,frog 4172,cat 4173,bird 4174,frog 4175,dog 4176,cat 4177,deer 4178,frog 4179,bird 4180,frog 4181,horse 4182,deer 4183,dog 4184,cat 4185,ship 4186,truck 4187,horse 4188,cat 4189,deer 4190,horse 4191,cat 4192,automobile 4193,airplane 4194,frog 4195,dog 4196,bird 4197,horse 4198,horse 4199,truck 4200,frog 4201,frog 4202,automobile 4203,deer 4204,automobile 4205,truck 4206,deer 4207,deer 4208,ship 4209,bird 4210,horse 4211,ship 4212,truck 4213,cat 4214,frog 4215,bird 4216,truck 4217,cat 4218,deer 4219,ship 4220,frog 4221,cat 4222,deer 4223,cat 4224,frog 4225,ship 4226,frog 4227,truck 4228,ship 4229,ship 4230,bird 4231,bird 4232,cat 4233,airplane 4234,deer 4235,horse 4236,airplane 4237,cat 4238,cat 4239,cat 4240,automobile 4241,airplane 4242,cat 4243,cat 4244,bird 4245,ship 4246,bird 4247,automobile 4248,airplane 4249,deer 4250,cat 4251,bird 4252,horse 4253,truck 4254,ship 4255,automobile 4256,airplane 4257,deer 4258,frog 4259,truck 4260,cat 4261,deer 4262,truck 4263,deer 4264,cat 4265,truck 4266,frog 4267,bird 4268,cat 4269,horse 4270,automobile 4271,truck 4272,airplane 4273,deer 4274,horse 4275,cat 4276,horse 4277,horse 4278,dog 4279,dog 4280,bird 4281,frog 4282,ship 4283,truck 4284,deer 4285,cat 4286,deer 4287,cat 4288,automobile 4289,frog 4290,frog 4291,bird 4292,deer 4293,cat 4294,frog 4295,frog 4296,cat 4297,automobile 4298,airplane 4299,dog 4300,dog 4301,frog 4302,bird 4303,cat 4304,frog 4305,automobile 4306,cat 4307,bird 4308,horse 4309,truck 4310,deer 4311,cat 4312,airplane 4313,automobile 4314,airplane 4315,horse 4316,horse 4317,cat 4318,ship 4319,ship 4320,cat 4321,bird 4322,deer 4323,deer 4324,airplane 4325,automobile 4326,automobile 4327,dog 4328,ship 4329,cat 4330,cat 4331,frog 4332,dog 4333,truck 4334,dog 4335,dog 4336,deer 4337,dog 4338,cat 4339,horse 4340,truck 4341,airplane 4342,truck 4343,deer 4344,ship 4345,airplane 4346,cat 4347,truck 4348,frog 4349,deer 4350,truck 4351,cat 4352,automobile 4353,dog 4354,truck 4355,cat 4356,deer 4357,frog 4358,horse 4359,horse 4360,horse 4361,truck 4362,deer 4363,ship 4364,deer 4365,deer 4366,deer 4367,deer 4368,dog 4369,bird 4370,ship 4371,ship 4372,cat 4373,truck 4374,cat 4375,frog 4376,ship 4377,cat 4378,deer 4379,automobile 4380,truck 4381,deer 4382,cat 4383,cat 4384,automobile 4385,truck 4386,frog 4387,deer 4388,horse 4389,bird 4390,deer 4391,cat 4392,cat 4393,dog 4394,bird 4395,truck 4396,horse 4397,deer 4398,bird 4399,bird 4400,cat 4401,frog 4402,cat 4403,airplane 4404,horse 4405,cat 4406,horse 4407,dog 4408,horse 4409,bird 4410,cat 4411,deer 4412,frog 4413,dog 4414,cat 4415,airplane 4416,cat 4417,bird 4418,automobile 4419,frog 4420,automobile 4421,automobile 4422,dog 4423,ship 4424,truck 4425,bird 4426,horse 4427,frog 4428,dog 4429,deer 4430,automobile 4431,frog 4432,cat 4433,deer 4434,bird 4435,horse 4436,airplane 4437,dog 4438,bird 4439,ship 4440,horse 4441,dog 4442,cat 4443,cat 4444,deer 4445,automobile 4446,ship 4447,deer 4448,automobile 4449,frog 4450,dog 4451,cat 4452,deer 4453,deer 4454,dog 4455,automobile 4456,dog 4457,bird 4458,deer 4459,airplane 4460,cat 4461,truck 4462,truck 4463,airplane 4464,airplane 4465,deer 4466,frog 4467,deer 4468,truck 4469,cat 4470,ship 4471,dog 4472,airplane 4473,frog 4474,automobile 4475,cat 4476,airplane 4477,airplane 4478,cat 4479,ship 4480,cat 4481,frog 4482,cat 4483,dog 4484,dog 4485,bird 4486,horse 4487,truck 4488,truck 4489,truck 4490,automobile 4491,frog 4492,frog 4493,frog 4494,dog 4495,ship 4496,deer 4497,frog 4498,airplane 4499,cat 4500,automobile 4501,deer 4502,cat 4503,airplane 4504,horse 4505,ship 4506,truck 4507,frog 4508,dog 4509,airplane 4510,dog 4511,deer 4512,truck 4513,automobile 4514,deer 4515,bird 4516,automobile 4517,horse 4518,dog 4519,frog 4520,deer 4521,truck 4522,cat 4523,horse 4524,frog 4525,deer 4526,deer 4527,airplane 4528,deer 4529,truck 4530,automobile 4531,deer 4532,deer 4533,horse 4534,airplane 4535,ship 4536,automobile 4537,bird 4538,frog 4539,truck 4540,automobile 4541,deer 4542,frog 4543,cat 4544,deer 4545,dog 4546,frog 4547,bird 4548,cat 4549,frog 4550,truck 4551,frog 4552,truck 4553,automobile 4554,truck 4555,cat 4556,deer 4557,cat 4558,frog 4559,cat 4560,frog 4561,ship 4562,airplane 4563,horse 4564,truck 4565,horse 4566,bird 4567,dog 4568,bird 4569,dog 4570,bird 4571,deer 4572,dog 4573,automobile 4574,frog 4575,ship 4576,airplane 4577,airplane 4578,truck 4579,cat 4580,ship 4581,dog 4582,frog 4583,airplane 4584,deer 4585,bird 4586,ship 4587,airplane 4588,horse 4589,ship 4590,deer 4591,truck 4592,frog 4593,bird 4594,frog 4595,automobile 4596,dog 4597,deer 4598,dog 4599,deer 4600,bird 4601,dog 4602,bird 4603,truck 4604,horse 4605,deer 4606,cat 4607,ship 4608,dog 4609,automobile 4610,airplane 4611,deer 4612,bird 4613,frog 4614,deer 4615,horse 4616,bird 4617,cat 4618,horse 4619,horse 4620,truck 4621,ship 4622,horse 4623,frog 4624,automobile 4625,bird 4626,deer 4627,dog 4628,frog 4629,ship 4630,deer 4631,deer 4632,cat 4633,deer 4634,airplane 4635,horse 4636,cat 4637,deer 4638,deer 4639,automobile 4640,automobile 4641,dog 4642,deer 4643,dog 4644,frog 4645,dog 4646,frog 4647,frog 4648,truck 4649,truck 4650,deer 4651,dog 4652,dog 4653,ship 4654,airplane 4655,bird 4656,deer 4657,automobile 4658,truck 4659,horse 4660,dog 4661,frog 4662,deer 4663,deer 4664,deer 4665,frog 4666,deer 4667,ship 4668,airplane 4669,bird 4670,airplane 4671,dog 4672,cat 4673,dog 4674,truck 4675,frog 4676,dog 4677,bird 4678,airplane 4679,bird 4680,ship 4681,deer 4682,ship 4683,horse 4684,horse 4685,ship 4686,airplane 4687,cat 4688,airplane 4689,truck 4690,automobile 4691,cat 4692,cat 4693,truck 4694,deer 4695,deer 4696,frog 4697,airplane 4698,cat 4699,automobile 4700,deer 4701,bird 4702,truck 4703,airplane 4704,horse 4705,bird 4706,horse 4707,bird 4708,airplane 4709,deer 4710,truck 4711,airplane 4712,airplane 4713,frog 4714,ship 4715,truck 4716,cat 4717,cat 4718,deer 4719,airplane 4720,cat 4721,cat 4722,bird 4723,airplane 4724,deer 4725,dog 4726,dog 4727,automobile 4728,automobile 4729,deer 4730,truck 4731,deer 4732,cat 4733,truck 4734,truck 4735,frog 4736,frog 4737,frog 4738,airplane 4739,cat 4740,horse 4741,frog 4742,ship 4743,truck 4744,automobile 4745,deer 4746,frog 4747,bird 4748,truck 4749,airplane 4750,dog 4751,truck 4752,truck 4753,ship 4754,airplane 4755,airplane 4756,airplane 4757,automobile 4758,airplane 4759,deer 4760,airplane 4761,ship 4762,bird 4763,airplane 4764,cat 4765,bird 4766,dog 4767,ship 4768,truck 4769,automobile 4770,airplane 4771,deer 4772,frog 4773,ship 4774,horse 4775,cat 4776,cat 4777,truck 4778,frog 4779,airplane 4780,frog 4781,horse 4782,dog 4783,horse 4784,automobile 4785,deer 4786,bird 4787,ship 4788,ship 4789,bird 4790,deer 4791,cat 4792,ship 4793,horse 4794,automobile 4795,frog 4796,frog 4797,deer 4798,frog 4799,horse 4800,horse 4801,deer 4802,deer 4803,deer 4804,frog 4805,automobile 4806,automobile 4807,airplane 4808,truck 4809,airplane 4810,horse 4811,airplane 4812,frog 4813,dog 4814,automobile 4815,deer 4816,horse 4817,cat 4818,cat 4819,bird 4820,ship 4821,deer 4822,horse 4823,bird 4824,frog 4825,truck 4826,frog 4827,cat 4828,airplane 4829,bird 4830,deer 4831,cat 4832,truck 4833,airplane 4834,deer 4835,deer 4836,bird 4837,horse 4838,cat 4839,automobile 4840,bird 4841,deer 4842,deer 4843,deer 4844,truck 4845,cat 4846,bird 4847,automobile 4848,dog 4849,bird 4850,dog 4851,airplane 4852,dog 4853,deer 4854,deer 4855,airplane 4856,deer 4857,ship 4858,airplane 4859,bird 4860,bird 4861,deer 4862,automobile 4863,bird 4864,cat 4865,automobile 4866,airplane 4867,bird 4868,deer 4869,airplane 4870,deer 4871,truck 4872,truck 4873,cat 4874,cat 4875,cat 4876,cat 4877,ship 4878,deer 4879,cat 4880,horse 4881,bird 4882,ship 4883,dog 4884,dog 4885,ship 4886,airplane 4887,bird 4888,horse 4889,deer 4890,cat 4891,cat 4892,frog 4893,frog 4894,cat 4895,cat 4896,ship 4897,deer 4898,frog 4899,airplane 4900,airplane 4901,frog 4902,horse 4903,frog 4904,horse 4905,deer 4906,bird 4907,automobile 4908,deer 4909,deer 4910,bird 4911,deer 4912,airplane 4913,bird 4914,truck 4915,dog 4916,bird 4917,bird 4918,truck 4919,automobile 4920,dog 4921,airplane 4922,deer 4923,automobile 4924,truck 4925,bird 4926,frog 4927,deer 4928,bird 4929,automobile 4930,airplane 4931,automobile 4932,cat 4933,automobile 4934,automobile 4935,deer 4936,truck 4937,cat 4938,truck 4939,airplane 4940,ship 4941,cat 4942,deer 4943,dog 4944,ship 4945,airplane 4946,deer 4947,deer 4948,automobile 4949,bird 4950,cat 4951,dog 4952,frog 4953,bird 4954,cat 4955,truck 4956,frog 4957,truck 4958,ship 4959,deer 4960,deer 4961,cat 4962,deer 4963,bird 4964,dog 4965,airplane 4966,airplane 4967,dog 4968,cat 4969,ship 4970,deer 4971,deer 4972,truck 4973,automobile 4974,automobile 4975,truck 4976,cat 4977,bird 4978,airplane 4979,bird 4980,deer 4981,dog 4982,deer 4983,bird 4984,bird 4985,horse 4986,bird 4987,bird 4988,airplane 4989,deer 4990,automobile 4991,ship 4992,dog 4993,truck 4994,automobile 4995,deer 4996,airplane 4997,bird 4998,dog 4999,bird 5000,deer 5001,cat 5002,ship 5003,truck 5004,deer 5005,deer 5006,deer 5007,truck 5008,cat 5009,horse 5010,frog 5011,dog 5012,deer 5013,bird 5014,dog 5015,deer 5016,dog 5017,bird 5018,truck 5019,bird 5020,cat 5021,frog 5022,horse 5023,dog 5024,truck 5025,truck 5026,bird 5027,dog 5028,horse 5029,cat 5030,horse 5031,bird 5032,deer 5033,dog 5034,cat 5035,bird 5036,truck 5037,frog 5038,cat 5039,frog 5040,truck 5041,airplane 5042,horse 5043,ship 5044,automobile 5045,ship 5046,dog 5047,deer 5048,truck 5049,frog 5050,frog 5051,cat 5052,deer 5053,deer 5054,ship 5055,automobile 5056,ship 5057,horse 5058,airplane 5059,deer 5060,horse 5061,airplane 5062,horse 5063,dog 5064,frog 5065,frog 5066,bird 5067,ship 5068,ship 5069,cat 5070,dog 5071,deer 5072,airplane 5073,airplane 5074,frog 5075,cat 5076,horse 5077,deer 5078,ship 5079,deer 5080,cat 5081,cat 5082,frog 5083,dog 5084,truck 5085,deer 5086,deer 5087,deer 5088,truck 5089,deer 5090,horse 5091,horse 5092,airplane 5093,frog 5094,deer 5095,cat 5096,cat 5097,frog 5098,ship 5099,deer 5100,airplane 5101,truck 5102,truck 5103,cat 5104,horse 5105,truck 5106,automobile 5107,deer 5108,frog 5109,cat 5110,dog 5111,bird 5112,bird 5113,horse 5114,truck 5115,deer 5116,bird 5117,ship 5118,automobile 5119,bird 5120,bird 5121,truck 5122,horse 5123,horse 5124,frog 5125,cat 5126,frog 5127,cat 5128,cat 5129,airplane 5130,truck 5131,cat 5132,airplane 5133,frog 5134,dog 5135,truck 5136,automobile 5137,cat 5138,airplane 5139,truck 5140,frog 5141,bird 5142,cat 5143,cat 5144,frog 5145,dog 5146,deer 5147,dog 5148,frog 5149,airplane 5150,frog 5151,ship 5152,ship 5153,frog 5154,horse 5155,automobile 5156,truck 5157,dog 5158,ship 5159,cat 5160,cat 5161,automobile 5162,frog 5163,ship 5164,dog 5165,airplane 5166,deer 5167,deer 5168,horse 5169,truck 5170,dog 5171,automobile 5172,truck 5173,bird 5174,cat 5175,cat 5176,dog 5177,frog 5178,truck 5179,automobile 5180,bird 5181,bird 5182,cat 5183,frog 5184,dog 5185,dog 5186,cat 5187,cat 5188,frog 5189,ship 5190,ship 5191,cat 5192,truck 5193,frog 5194,truck 5195,cat 5196,cat 5197,dog 5198,frog 5199,deer 5200,bird 5201,airplane 5202,ship 5203,airplane 5204,bird 5205,dog 5206,deer 5207,horse 5208,frog 5209,dog 5210,dog 5211,ship 5212,deer 5213,ship 5214,horse 5215,airplane 5216,deer 5217,ship 5218,automobile 5219,truck 5220,automobile 5221,frog 5222,cat 5223,deer 5224,dog 5225,horse 5226,frog 5227,deer 5228,truck 5229,automobile 5230,cat 5231,horse 5232,cat 5233,deer 5234,truck 5235,ship 5236,frog 5237,cat 5238,bird 5239,bird 5240,deer 5241,automobile 5242,cat 5243,airplane 5244,frog 5245,frog 5246,bird 5247,frog 5248,horse 5249,cat 5250,automobile 5251,airplane 5252,truck 5253,bird 5254,deer 5255,truck 5256,cat 5257,frog 5258,ship 5259,cat 5260,frog 5261,truck 5262,horse 5263,airplane 5264,deer 5265,bird 5266,frog 5267,cat 5268,airplane 5269,dog 5270,automobile 5271,cat 5272,bird 5273,cat 5274,horse 5275,ship 5276,deer 5277,deer 5278,frog 5279,horse 5280,airplane 5281,deer 5282,automobile 5283,deer 5284,cat 5285,dog 5286,ship 5287,bird 5288,ship 5289,frog 5290,cat 5291,frog 5292,dog 5293,cat 5294,deer 5295,frog 5296,airplane 5297,cat 5298,deer 5299,deer 5300,bird 5301,ship 5302,cat 5303,dog 5304,ship 5305,cat 5306,cat 5307,bird 5308,frog 5309,cat 5310,automobile 5311,automobile 5312,airplane 5313,horse 5314,truck 5315,automobile 5316,horse 5317,truck 5318,airplane 5319,airplane 5320,automobile 5321,dog 5322,cat 5323,deer 5324,dog 5325,dog 5326,frog 5327,deer 5328,cat 5329,deer 5330,frog 5331,cat 5332,frog 5333,dog 5334,bird 5335,deer 5336,frog 5337,frog 5338,cat 5339,frog 5340,airplane 5341,deer 5342,airplane 5343,dog 5344,horse 5345,cat 5346,dog 5347,automobile 5348,cat 5349,deer 5350,cat 5351,frog 5352,cat 5353,dog 5354,automobile 5355,frog 5356,automobile 5357,deer 5358,automobile 5359,frog 5360,ship 5361,airplane 5362,dog 5363,airplane 5364,cat 5365,ship 5366,automobile 5367,automobile 5368,dog 5369,cat 5370,deer 5371,automobile 5372,dog 5373,automobile 5374,truck 5375,automobile 5376,cat 5377,frog 5378,cat 5379,cat 5380,dog 5381,horse 5382,bird 5383,automobile 5384,bird 5385,truck 5386,ship 5387,truck 5388,deer 5389,deer 5390,automobile 5391,airplane 5392,airplane 5393,automobile 5394,bird 5395,ship 5396,airplane 5397,cat 5398,truck 5399,deer 5400,bird 5401,horse 5402,deer 5403,deer 5404,automobile 5405,horse 5406,cat 5407,airplane 5408,deer 5409,airplane 5410,bird 5411,truck 5412,deer 5413,cat 5414,deer 5415,horse 5416,horse 5417,dog 5418,ship 5419,deer 5420,horse 5421,cat 5422,truck 5423,ship 5424,bird 5425,ship 5426,cat 5427,ship 5428,frog 5429,bird 5430,bird 5431,deer 5432,cat 5433,cat 5434,bird 5435,deer 5436,horse 5437,horse 5438,bird 5439,deer 5440,deer 5441,truck 5442,cat 5443,automobile 5444,deer 5445,dog 5446,horse 5447,cat 5448,automobile 5449,deer 5450,cat 5451,truck 5452,dog 5453,deer 5454,frog 5455,frog 5456,airplane 5457,bird 5458,bird 5459,automobile 5460,cat 5461,airplane 5462,truck 5463,automobile 5464,cat 5465,airplane 5466,bird 5467,cat 5468,frog 5469,truck 5470,frog 5471,automobile 5472,airplane 5473,automobile 5474,dog 5475,cat 5476,airplane 5477,deer 5478,truck 5479,automobile 5480,cat 5481,airplane 5482,automobile 5483,horse 5484,cat 5485,airplane 5486,deer 5487,frog 5488,deer 5489,dog 5490,cat 5491,deer 5492,dog 5493,dog 5494,automobile 5495,deer 5496,automobile 5497,cat 5498,cat 5499,deer 5500,airplane 5501,horse 5502,ship 5503,dog 5504,automobile 5505,cat 5506,bird 5507,frog 5508,bird 5509,airplane 5510,deer 5511,dog 5512,deer 5513,frog 5514,frog 5515,dog 5516,horse 5517,ship 5518,deer 5519,dog 5520,dog 5521,automobile 5522,truck 5523,frog 5524,automobile 5525,truck 5526,bird 5527,truck 5528,ship 5529,frog 5530,airplane 5531,airplane 5532,ship 5533,automobile 5534,truck 5535,automobile 5536,deer 5537,horse 5538,truck 5539,airplane 5540,airplane 5541,dog 5542,cat 5543,airplane 5544,bird 5545,automobile 5546,cat 5547,dog 5548,deer 5549,dog 5550,frog 5551,dog 5552,cat 5553,deer 5554,horse 5555,horse 5556,horse 5557,horse 5558,truck 5559,airplane 5560,cat 5561,ship 5562,automobile 5563,bird 5564,frog 5565,frog 5566,truck 5567,deer 5568,deer 5569,deer 5570,frog 5571,truck 5572,cat 5573,horse 5574,cat 5575,frog 5576,cat 5577,cat 5578,bird 5579,automobile 5580,cat 5581,dog 5582,horse 5583,truck 5584,deer 5585,ship 5586,frog 5587,airplane 5588,deer 5589,ship 5590,cat 5591,airplane 5592,automobile 5593,horse 5594,cat 5595,cat 5596,dog 5597,frog 5598,frog 5599,dog 5600,horse 5601,truck 5602,cat 5603,frog 5604,automobile 5605,ship 5606,automobile 5607,frog 5608,cat 5609,horse 5610,deer 5611,deer 5612,truck 5613,dog 5614,cat 5615,cat 5616,cat 5617,truck 5618,dog 5619,frog 5620,deer 5621,bird 5622,cat 5623,dog 5624,ship 5625,deer 5626,airplane 5627,cat 5628,airplane 5629,ship 5630,horse 5631,truck 5632,airplane 5633,airplane 5634,deer 5635,dog 5636,dog 5637,deer 5638,horse 5639,frog 5640,cat 5641,airplane 5642,cat 5643,deer 5644,frog 5645,dog 5646,frog 5647,automobile 5648,truck 5649,ship 5650,horse 5651,bird 5652,dog 5653,cat 5654,airplane 5655,automobile 5656,automobile 5657,deer 5658,cat 5659,cat 5660,cat 5661,airplane 5662,bird 5663,frog 5664,airplane 5665,cat 5666,horse 5667,bird 5668,airplane 5669,dog 5670,deer 5671,cat 5672,deer 5673,ship 5674,frog 5675,truck 5676,cat 5677,deer 5678,airplane 5679,cat 5680,dog 5681,cat 5682,bird 5683,horse 5684,deer 5685,ship 5686,horse 5687,truck 5688,bird 5689,frog 5690,dog 5691,cat 5692,bird 5693,bird 5694,dog 5695,frog 5696,automobile 5697,ship 5698,airplane 5699,deer 5700,automobile 5701,deer 5702,deer 5703,frog 5704,cat 5705,dog 5706,ship 5707,frog 5708,automobile 5709,deer 5710,airplane 5711,truck 5712,horse 5713,deer 5714,horse 5715,ship 5716,deer 5717,frog 5718,deer 5719,bird 5720,bird 5721,cat 5722,truck 5723,deer 5724,frog 5725,automobile 5726,ship 5727,dog 5728,truck 5729,horse 5730,cat 5731,bird 5732,ship 5733,truck 5734,cat 5735,truck 5736,bird 5737,cat 5738,frog 5739,automobile 5740,airplane 5741,bird 5742,automobile 5743,automobile 5744,frog 5745,deer 5746,bird 5747,automobile 5748,bird 5749,horse 5750,bird 5751,frog 5752,ship 5753,deer 5754,dog 5755,dog 5756,frog 5757,bird 5758,dog 5759,cat 5760,dog 5761,frog 5762,horse 5763,deer 5764,cat 5765,deer 5766,automobile 5767,dog 5768,deer 5769,cat 5770,deer 5771,airplane 5772,truck 5773,ship 5774,bird 5775,horse 5776,ship 5777,deer 5778,horse 5779,automobile 5780,frog 5781,cat 5782,bird 5783,horse 5784,dog 5785,frog 5786,airplane 5787,cat 5788,dog 5789,truck 5790,deer 5791,deer 5792,cat 5793,bird 5794,horse 5795,cat 5796,frog 5797,bird 5798,ship 5799,bird 5800,airplane 5801,bird 5802,frog 5803,horse 5804,frog 5805,airplane 5806,airplane 5807,horse 5808,frog 5809,cat 5810,horse 5811,airplane 5812,cat 5813,airplane 5814,airplane 5815,ship 5816,automobile 5817,deer 5818,horse 5819,airplane 5820,airplane 5821,horse 5822,airplane 5823,truck 5824,airplane 5825,truck 5826,airplane 5827,airplane 5828,frog 5829,frog 5830,horse 5831,ship 5832,cat 5833,bird 5834,ship 5835,dog 5836,airplane 5837,cat 5838,cat 5839,ship 5840,truck 5841,frog 5842,airplane 5843,cat 5844,deer 5845,dog 5846,deer 5847,truck 5848,bird 5849,automobile 5850,bird 5851,automobile 5852,airplane 5853,bird 5854,automobile 5855,deer 5856,cat 5857,truck 5858,truck 5859,cat 5860,bird 5861,cat 5862,deer 5863,airplane 5864,cat 5865,bird 5866,airplane 5867,truck 5868,deer 5869,bird 5870,cat 5871,horse 5872,cat 5873,ship 5874,truck 5875,dog 5876,frog 5877,dog 5878,ship 5879,horse 5880,deer 5881,frog 5882,deer 5883,automobile 5884,horse 5885,dog 5886,dog 5887,horse 5888,horse 5889,dog 5890,cat 5891,airplane 5892,cat 5893,horse 5894,deer 5895,frog 5896,truck 5897,frog 5898,bird 5899,automobile 5900,frog 5901,deer 5902,deer 5903,horse 5904,frog 5905,dog 5906,dog 5907,horse 5908,ship 5909,horse 5910,bird 5911,airplane 5912,deer 5913,cat 5914,cat 5915,frog 5916,dog 5917,frog 5918,dog 5919,automobile 5920,bird 5921,dog 5922,frog 5923,automobile 5924,dog 5925,dog 5926,automobile 5927,deer 5928,frog 5929,truck 5930,bird 5931,bird 5932,deer 5933,bird 5934,deer 5935,cat 5936,deer 5937,frog 5938,horse 5939,ship 5940,cat 5941,deer 5942,dog 5943,deer 5944,deer 5945,airplane 5946,bird 5947,airplane 5948,horse 5949,bird 5950,automobile 5951,airplane 5952,bird 5953,truck 5954,airplane 5955,dog 5956,airplane 5957,airplane 5958,dog 5959,dog 5960,bird 5961,dog 5962,frog 5963,frog 5964,cat 5965,deer 5966,bird 5967,cat 5968,cat 5969,deer 5970,dog 5971,deer 5972,truck 5973,truck 5974,bird 5975,deer 5976,deer 5977,deer 5978,dog 5979,truck 5980,horse 5981,airplane 5982,horse 5983,deer 5984,horse 5985,truck 5986,ship 5987,cat 5988,deer 5989,ship 5990,frog 5991,ship 5992,dog 5993,deer 5994,automobile 5995,deer 5996,dog 5997,deer 5998,bird 5999,cat 6000,airplane 6001,frog 6002,cat 6003,dog 6004,horse 6005,airplane 6006,deer 6007,dog 6008,automobile 6009,frog 6010,bird 6011,automobile 6012,deer 6013,airplane 6014,frog 6015,bird 6016,dog 6017,deer 6018,automobile 6019,dog 6020,horse 6021,truck 6022,bird 6023,deer 6024,bird 6025,airplane 6026,horse 6027,horse 6028,dog 6029,cat 6030,cat 6031,bird 6032,truck 6033,bird 6034,truck 6035,truck 6036,truck 6037,truck 6038,cat 6039,cat 6040,airplane 6041,bird 6042,dog 6043,airplane 6044,truck 6045,frog 6046,ship 6047,dog 6048,truck 6049,airplane 6050,dog 6051,bird 6052,dog 6053,cat 6054,horse 6055,ship 6056,dog 6057,frog 6058,truck 6059,horse 6060,dog 6061,truck 6062,airplane 6063,ship 6064,dog 6065,frog 6066,truck 6067,bird 6068,deer 6069,deer 6070,cat 6071,cat 6072,ship 6073,bird 6074,deer 6075,frog 6076,cat 6077,horse 6078,airplane 6079,deer 6080,bird 6081,airplane 6082,cat 6083,dog 6084,ship 6085,frog 6086,truck 6087,truck 6088,dog 6089,deer 6090,frog 6091,airplane 6092,dog 6093,bird 6094,frog 6095,deer 6096,bird 6097,frog 6098,automobile 6099,dog 6100,airplane 6101,ship 6102,bird 6103,bird 6104,automobile 6105,horse 6106,dog 6107,frog 6108,airplane 6109,cat 6110,dog 6111,deer 6112,frog 6113,deer 6114,dog 6115,horse 6116,truck 6117,cat 6118,truck 6119,horse 6120,horse 6121,cat 6122,dog 6123,ship 6124,ship 6125,cat 6126,horse 6127,cat 6128,frog 6129,truck 6130,dog 6131,airplane 6132,frog 6133,horse 6134,deer 6135,airplane 6136,frog 6137,frog 6138,airplane 6139,deer 6140,frog 6141,frog 6142,ship 6143,horse 6144,deer 6145,truck 6146,dog 6147,truck 6148,frog 6149,horse 6150,cat 6151,deer 6152,truck 6153,ship 6154,bird 6155,bird 6156,ship 6157,cat 6158,bird 6159,airplane 6160,horse 6161,frog 6162,airplane 6163,automobile 6164,frog 6165,truck 6166,airplane 6167,cat 6168,bird 6169,airplane 6170,dog 6171,dog 6172,frog 6173,frog 6174,ship 6175,frog 6176,ship 6177,airplane 6178,deer 6179,airplane 6180,horse 6181,automobile 6182,frog 6183,truck 6184,bird 6185,ship 6186,deer 6187,deer 6188,dog 6189,deer 6190,horse 6191,dog 6192,deer 6193,bird 6194,ship 6195,cat 6196,deer 6197,deer 6198,dog 6199,ship 6200,cat 6201,dog 6202,airplane 6203,cat 6204,truck 6205,dog 6206,bird 6207,bird 6208,frog 6209,truck 6210,truck 6211,cat 6212,airplane 6213,ship 6214,frog 6215,frog 6216,cat 6217,dog 6218,deer 6219,automobile 6220,bird 6221,ship 6222,deer 6223,deer 6224,automobile 6225,horse 6226,cat 6227,airplane 6228,airplane 6229,cat 6230,dog 6231,horse 6232,deer 6233,deer 6234,dog 6235,frog 6236,deer 6237,airplane 6238,deer 6239,horse 6240,deer 6241,airplane 6242,bird 6243,dog 6244,frog 6245,bird 6246,automobile 6247,truck 6248,airplane 6249,truck 6250,airplane 6251,automobile 6252,ship 6253,deer 6254,truck 6255,dog 6256,dog 6257,cat 6258,deer 6259,deer 6260,cat 6261,cat 6262,cat 6263,cat 6264,cat 6265,airplane 6266,truck 6267,deer 6268,ship 6269,truck 6270,cat 6271,horse 6272,frog 6273,dog 6274,dog 6275,bird 6276,airplane 6277,dog 6278,frog 6279,cat 6280,frog 6281,automobile 6282,horse 6283,bird 6284,deer 6285,automobile 6286,deer 6287,truck 6288,deer 6289,automobile 6290,horse 6291,cat 6292,automobile 6293,truck 6294,horse 6295,cat 6296,cat 6297,truck 6298,cat 6299,truck 6300,ship 6301,truck 6302,cat 6303,frog 6304,dog 6305,truck 6306,cat 6307,airplane 6308,bird 6309,automobile 6310,deer 6311,cat 6312,truck 6313,ship 6314,cat 6315,horse 6316,truck 6317,dog 6318,horse 6319,frog 6320,frog 6321,dog 6322,airplane 6323,dog 6324,deer 6325,truck 6326,dog 6327,horse 6328,ship 6329,cat 6330,automobile 6331,frog 6332,horse 6333,deer 6334,horse 6335,cat 6336,ship 6337,airplane 6338,dog 6339,frog 6340,truck 6341,truck 6342,frog 6343,frog 6344,airplane 6345,frog 6346,automobile 6347,truck 6348,deer 6349,truck 6350,deer 6351,airplane 6352,cat 6353,deer 6354,deer 6355,deer 6356,deer 6357,truck 6358,dog 6359,cat 6360,cat 6361,deer 6362,horse 6363,automobile 6364,dog 6365,automobile 6366,bird 6367,horse 6368,truck 6369,truck 6370,automobile 6371,bird 6372,ship 6373,ship 6374,frog 6375,airplane 6376,deer 6377,deer 6378,truck 6379,deer 6380,truck 6381,deer 6382,deer 6383,deer 6384,frog 6385,bird 6386,bird 6387,ship 6388,automobile 6389,cat 6390,frog 6391,ship 6392,truck 6393,horse 6394,bird 6395,dog 6396,truck 6397,horse 6398,cat 6399,truck 6400,deer 6401,ship 6402,horse 6403,cat 6404,deer 6405,ship 6406,truck 6407,horse 6408,frog 6409,dog 6410,airplane 6411,cat 6412,cat 6413,airplane 6414,automobile 6415,deer 6416,cat 6417,bird 6418,ship 6419,automobile 6420,dog 6421,ship 6422,deer 6423,horse 6424,dog 6425,dog 6426,frog 6427,automobile 6428,cat 6429,truck 6430,bird 6431,horse 6432,automobile 6433,horse 6434,horse 6435,frog 6436,airplane 6437,dog 6438,deer 6439,cat 6440,airplane 6441,frog 6442,ship 6443,deer 6444,deer 6445,ship 6446,dog 6447,horse 6448,cat 6449,deer 6450,deer 6451,frog 6452,deer 6453,frog 6454,horse 6455,automobile 6456,automobile 6457,dog 6458,horse 6459,truck 6460,truck 6461,dog 6462,cat 6463,frog 6464,ship 6465,truck 6466,horse 6467,cat 6468,horse 6469,horse 6470,frog 6471,deer 6472,frog 6473,cat 6474,frog 6475,dog 6476,truck 6477,airplane 6478,airplane 6479,automobile 6480,frog 6481,cat 6482,cat 6483,cat 6484,bird 6485,bird 6486,airplane 6487,dog 6488,horse 6489,airplane 6490,airplane 6491,truck 6492,frog 6493,bird 6494,ship 6495,frog 6496,airplane 6497,horse 6498,airplane 6499,truck 6500,cat 6501,bird 6502,ship 6503,truck 6504,truck 6505,truck 6506,airplane 6507,cat 6508,bird 6509,automobile 6510,cat 6511,airplane 6512,deer 6513,ship 6514,airplane 6515,automobile 6516,truck 6517,ship 6518,frog 6519,frog 6520,ship 6521,frog 6522,horse 6523,airplane 6524,frog 6525,frog 6526,cat 6527,horse 6528,horse 6529,automobile 6530,horse 6531,automobile 6532,horse 6533,bird 6534,dog 6535,bird 6536,bird 6537,deer 6538,deer 6539,truck 6540,frog 6541,airplane 6542,deer 6543,cat 6544,frog 6545,automobile 6546,airplane 6547,frog 6548,ship 6549,deer 6550,frog 6551,cat 6552,frog 6553,cat 6554,cat 6555,deer 6556,truck 6557,dog 6558,cat 6559,truck 6560,ship 6561,bird 6562,cat 6563,automobile 6564,airplane 6565,frog 6566,automobile 6567,frog 6568,cat 6569,truck 6570,ship 6571,frog 6572,cat 6573,bird 6574,cat 6575,cat 6576,cat 6577,cat 6578,cat 6579,airplane 6580,frog 6581,cat 6582,bird 6583,deer 6584,dog 6585,horse 6586,airplane 6587,deer 6588,deer 6589,dog 6590,truck 6591,truck 6592,horse 6593,dog 6594,bird 6595,deer 6596,cat 6597,dog 6598,deer 6599,frog 6600,deer 6601,cat 6602,automobile 6603,airplane 6604,cat 6605,dog 6606,cat 6607,bird 6608,automobile 6609,truck 6610,bird 6611,deer 6612,horse 6613,deer 6614,horse 6615,automobile 6616,deer 6617,automobile 6618,cat 6619,airplane 6620,dog 6621,airplane 6622,cat 6623,cat 6624,bird 6625,dog 6626,dog 6627,cat 6628,truck 6629,cat 6630,dog 6631,horse 6632,horse 6633,dog 6634,frog 6635,cat 6636,truck 6637,cat 6638,frog 6639,dog 6640,truck 6641,cat 6642,automobile 6643,dog 6644,frog 6645,bird 6646,horse 6647,automobile 6648,horse 6649,frog 6650,truck 6651,horse 6652,ship 6653,deer 6654,dog 6655,airplane 6656,bird 6657,cat 6658,bird 6659,automobile 6660,bird 6661,dog 6662,horse 6663,cat 6664,cat 6665,airplane 6666,horse 6667,automobile 6668,truck 6669,deer 6670,automobile 6671,deer 6672,airplane 6673,bird 6674,frog 6675,frog 6676,cat 6677,ship 6678,deer 6679,dog 6680,truck 6681,ship 6682,deer 6683,cat 6684,deer 6685,horse 6686,frog 6687,airplane 6688,truck 6689,truck 6690,deer 6691,ship 6692,truck 6693,airplane 6694,ship 6695,bird 6696,cat 6697,airplane 6698,truck 6699,cat 6700,frog 6701,cat 6702,truck 6703,deer 6704,frog 6705,cat 6706,ship 6707,deer 6708,cat 6709,truck 6710,horse 6711,dog 6712,truck 6713,deer 6714,ship 6715,ship 6716,airplane 6717,ship 6718,cat 6719,truck 6720,cat 6721,horse 6722,automobile 6723,deer 6724,deer 6725,bird 6726,deer 6727,automobile 6728,airplane 6729,cat 6730,bird 6731,dog 6732,truck 6733,truck 6734,bird 6735,frog 6736,frog 6737,frog 6738,automobile 6739,deer 6740,deer 6741,dog 6742,cat 6743,airplane 6744,cat 6745,frog 6746,dog 6747,horse 6748,ship 6749,horse 6750,cat 6751,truck 6752,cat 6753,cat 6754,cat 6755,truck 6756,airplane 6757,bird 6758,truck 6759,automobile 6760,truck 6761,bird 6762,frog 6763,cat 6764,deer 6765,ship 6766,horse 6767,bird 6768,airplane 6769,truck 6770,bird 6771,bird 6772,cat 6773,bird 6774,cat 6775,horse 6776,horse 6777,horse 6778,ship 6779,truck 6780,ship 6781,bird 6782,dog 6783,dog 6784,deer 6785,deer 6786,automobile 6787,ship 6788,cat 6789,ship 6790,cat 6791,dog 6792,cat 6793,dog 6794,truck 6795,dog 6796,cat 6797,cat 6798,airplane 6799,airplane 6800,airplane 6801,frog 6802,automobile 6803,truck 6804,automobile 6805,truck 6806,ship 6807,frog 6808,cat 6809,cat 6810,truck 6811,frog 6812,dog 6813,deer 6814,airplane 6815,dog 6816,dog 6817,airplane 6818,ship 6819,bird 6820,ship 6821,ship 6822,deer 6823,airplane 6824,deer 6825,dog 6826,airplane 6827,horse 6828,bird 6829,deer 6830,automobile 6831,frog 6832,bird 6833,cat 6834,horse 6835,airplane 6836,airplane 6837,ship 6838,ship 6839,bird 6840,truck 6841,dog 6842,deer 6843,deer 6844,dog 6845,airplane 6846,ship 6847,dog 6848,frog 6849,cat 6850,automobile 6851,horse 6852,ship 6853,frog 6854,bird 6855,dog 6856,dog 6857,truck 6858,cat 6859,cat 6860,horse 6861,bird 6862,frog 6863,truck 6864,bird 6865,frog 6866,truck 6867,truck 6868,frog 6869,frog 6870,truck 6871,ship 6872,frog 6873,ship 6874,automobile 6875,cat 6876,bird 6877,deer 6878,deer 6879,dog 6880,cat 6881,deer 6882,cat 6883,horse 6884,truck 6885,horse 6886,cat 6887,truck 6888,bird 6889,cat 6890,ship 6891,frog 6892,deer 6893,airplane 6894,frog 6895,horse 6896,frog 6897,cat 6898,frog 6899,cat 6900,cat 6901,ship 6902,frog 6903,airplane 6904,deer 6905,bird 6906,airplane 6907,cat 6908,truck 6909,ship 6910,bird 6911,dog 6912,dog 6913,horse 6914,deer 6915,cat 6916,automobile 6917,deer 6918,truck 6919,deer 6920,deer 6921,dog 6922,frog 6923,airplane 6924,horse 6925,airplane 6926,horse 6927,cat 6928,cat 6929,automobile 6930,horse 6931,deer 6932,cat 6933,dog 6934,bird 6935,cat 6936,cat 6937,truck 6938,frog 6939,deer 6940,airplane 6941,cat 6942,deer 6943,automobile 6944,horse 6945,truck 6946,deer 6947,frog 6948,horse 6949,airplane 6950,deer 6951,airplane 6952,truck 6953,frog 6954,truck 6955,bird 6956,frog 6957,ship 6958,dog 6959,frog 6960,dog 6961,ship 6962,horse 6963,deer 6964,frog 6965,deer 6966,horse 6967,bird 6968,cat 6969,cat 6970,cat 6971,bird 6972,dog 6973,cat 6974,airplane 6975,truck 6976,frog 6977,dog 6978,truck 6979,dog 6980,automobile 6981,ship 6982,horse 6983,ship 6984,ship 6985,deer 6986,cat 6987,ship 6988,frog 6989,horse 6990,deer 6991,ship 6992,truck 6993,airplane 6994,automobile 6995,horse 6996,automobile 6997,cat 6998,cat 6999,automobile 7000,horse 7001,bird 7002,deer 7003,bird 7004,bird 7005,cat 7006,truck 7007,deer 7008,deer 7009,airplane 7010,dog 7011,dog 7012,frog 7013,horse 7014,ship 7015,frog 7016,deer 7017,frog 7018,dog 7019,automobile 7020,dog 7021,bird 7022,dog 7023,ship 7024,ship 7025,cat 7026,frog 7027,cat 7028,frog 7029,cat 7030,horse 7031,automobile 7032,automobile 7033,dog 7034,horse 7035,horse 7036,automobile 7037,deer 7038,cat 7039,deer 7040,automobile 7041,deer 7042,airplane 7043,horse 7044,truck 7045,dog 7046,dog 7047,deer 7048,deer 7049,automobile 7050,cat 7051,deer 7052,cat 7053,frog 7054,cat 7055,ship 7056,truck 7057,cat 7058,horse 7059,deer 7060,frog 7061,dog 7062,ship 7063,ship 7064,bird 7065,automobile 7066,dog 7067,bird 7068,frog 7069,dog 7070,horse 7071,bird 7072,horse 7073,truck 7074,deer 7075,automobile 7076,ship 7077,horse 7078,frog 7079,ship 7080,truck 7081,cat 7082,frog 7083,frog 7084,airplane 7085,bird 7086,dog 7087,dog 7088,truck 7089,deer 7090,horse 7091,deer 7092,frog 7093,frog 7094,truck 7095,frog 7096,truck 7097,bird 7098,truck 7099,truck 7100,truck 7101,horse 7102,airplane 7103,ship 7104,cat 7105,frog 7106,truck 7107,cat 7108,horse 7109,automobile 7110,deer 7111,dog 7112,frog 7113,horse 7114,dog 7115,airplane 7116,bird 7117,frog 7118,horse 7119,ship 7120,deer 7121,bird 7122,cat 7123,deer 7124,deer 7125,cat 7126,horse 7127,frog 7128,dog 7129,frog 7130,ship 7131,frog 7132,truck 7133,automobile 7134,deer 7135,cat 7136,automobile 7137,bird 7138,automobile 7139,frog 7140,ship 7141,horse 7142,dog 7143,horse 7144,truck 7145,cat 7146,frog 7147,truck 7148,frog 7149,automobile 7150,dog 7151,frog 7152,airplane 7153,ship 7154,cat 7155,deer 7156,dog 7157,dog 7158,deer 7159,bird 7160,truck 7161,truck 7162,cat 7163,bird 7164,frog 7165,cat 7166,dog 7167,cat 7168,dog 7169,airplane 7170,automobile 7171,automobile 7172,horse 7173,ship 7174,ship 7175,airplane 7176,cat 7177,deer 7178,automobile 7179,cat 7180,deer 7181,dog 7182,horse 7183,deer 7184,deer 7185,dog 7186,frog 7187,dog 7188,truck 7189,dog 7190,airplane 7191,automobile 7192,cat 7193,deer 7194,horse 7195,truck 7196,deer 7197,airplane 7198,horse 7199,cat 7200,bird 7201,dog 7202,dog 7203,frog 7204,ship 7205,ship 7206,deer 7207,horse 7208,automobile 7209,frog 7210,dog 7211,frog 7212,deer 7213,truck 7214,ship 7215,deer 7216,bird 7217,cat 7218,cat 7219,automobile 7220,dog 7221,deer 7222,dog 7223,deer 7224,dog 7225,truck 7226,cat 7227,airplane 7228,ship 7229,frog 7230,truck 7231,automobile 7232,cat 7233,bird 7234,horse 7235,dog 7236,ship 7237,deer 7238,airplane 7239,horse 7240,frog 7241,ship 7242,horse 7243,cat 7244,bird 7245,dog 7246,deer 7247,automobile 7248,deer 7249,truck 7250,deer 7251,bird 7252,automobile 7253,bird 7254,cat 7255,frog 7256,cat 7257,deer 7258,bird 7259,bird 7260,deer 7261,truck 7262,horse 7263,deer 7264,cat 7265,truck 7266,horse 7267,automobile 7268,dog 7269,bird 7270,airplane 7271,cat 7272,frog 7273,bird 7274,ship 7275,truck 7276,dog 7277,truck 7278,ship 7279,cat 7280,dog 7281,bird 7282,horse 7283,truck 7284,airplane 7285,deer 7286,frog 7287,automobile 7288,truck 7289,cat 7290,bird 7291,ship 7292,cat 7293,airplane 7294,cat 7295,cat 7296,cat 7297,truck 7298,truck 7299,ship 7300,airplane 7301,cat 7302,airplane 7303,dog 7304,dog 7305,cat 7306,deer 7307,ship 7308,cat 7309,bird 7310,dog 7311,bird 7312,truck 7313,deer 7314,airplane 7315,truck 7316,cat 7317,ship 7318,horse 7319,deer 7320,horse 7321,cat 7322,bird 7323,frog 7324,cat 7325,cat 7326,horse 7327,dog 7328,bird 7329,horse 7330,dog 7331,cat 7332,airplane 7333,horse 7334,ship 7335,automobile 7336,ship 7337,deer 7338,bird 7339,cat 7340,bird 7341,deer 7342,truck 7343,horse 7344,cat 7345,cat 7346,frog 7347,ship 7348,bird 7349,cat 7350,frog 7351,frog 7352,automobile 7353,frog 7354,bird 7355,truck 7356,airplane 7357,automobile 7358,cat 7359,cat 7360,horse 7361,dog 7362,dog 7363,dog 7364,deer 7365,bird 7366,cat 7367,frog 7368,deer 7369,frog 7370,deer 7371,deer 7372,automobile 7373,horse 7374,deer 7375,horse 7376,horse 7377,truck 7378,ship 7379,automobile 7380,airplane 7381,airplane 7382,frog 7383,ship 7384,truck 7385,bird 7386,cat 7387,deer 7388,truck 7389,cat 7390,deer 7391,frog 7392,truck 7393,automobile 7394,bird 7395,ship 7396,horse 7397,cat 7398,bird 7399,airplane 7400,dog 7401,cat 7402,cat 7403,frog 7404,frog 7405,deer 7406,airplane 7407,airplane 7408,bird 7409,automobile 7410,dog 7411,ship 7412,deer 7413,cat 7414,cat 7415,truck 7416,frog 7417,horse 7418,deer 7419,dog 7420,horse 7421,cat 7422,automobile 7423,cat 7424,automobile 7425,cat 7426,truck 7427,deer 7428,frog 7429,deer 7430,frog 7431,frog 7432,airplane 7433,automobile 7434,frog 7435,frog 7436,dog 7437,dog 7438,horse 7439,airplane 7440,horse 7441,horse 7442,cat 7443,bird 7444,ship 7445,deer 7446,truck 7447,deer 7448,horse 7449,horse 7450,dog 7451,deer 7452,automobile 7453,airplane 7454,cat 7455,dog 7456,dog 7457,horse 7458,ship 7459,frog 7460,dog 7461,horse 7462,frog 7463,truck 7464,ship 7465,truck 7466,cat 7467,frog 7468,frog 7469,automobile 7470,cat 7471,bird 7472,frog 7473,cat 7474,horse 7475,deer 7476,horse 7477,truck 7478,truck 7479,deer 7480,ship 7481,airplane 7482,automobile 7483,bird 7484,airplane 7485,deer 7486,truck 7487,horse 7488,dog 7489,automobile 7490,automobile 7491,frog 7492,deer 7493,airplane 7494,ship 7495,bird 7496,automobile 7497,horse 7498,ship 7499,dog 7500,cat 7501,horse 7502,horse 7503,cat 7504,bird 7505,airplane 7506,ship 7507,dog 7508,airplane 7509,deer 7510,bird 7511,dog 7512,dog 7513,dog 7514,cat 7515,cat 7516,frog 7517,frog 7518,cat 7519,airplane 7520,cat 7521,deer 7522,automobile 7523,deer 7524,frog 7525,airplane 7526,bird 7527,cat 7528,deer 7529,dog 7530,automobile 7531,dog 7532,ship 7533,truck 7534,frog 7535,deer 7536,dog 7537,frog 7538,bird 7539,deer 7540,dog 7541,truck 7542,ship 7543,truck 7544,horse 7545,ship 7546,bird 7547,dog 7548,cat 7549,dog 7550,bird 7551,horse 7552,frog 7553,automobile 7554,automobile 7555,deer 7556,frog 7557,airplane 7558,frog 7559,airplane 7560,deer 7561,dog 7562,ship 7563,bird 7564,airplane 7565,cat 7566,ship 7567,cat 7568,bird 7569,truck 7570,automobile 7571,deer 7572,bird 7573,ship 7574,dog 7575,horse 7576,cat 7577,deer 7578,bird 7579,bird 7580,automobile 7581,automobile 7582,automobile 7583,truck 7584,cat 7585,frog 7586,bird 7587,frog 7588,dog 7589,frog 7590,deer 7591,frog 7592,deer 7593,bird 7594,dog 7595,ship 7596,cat 7597,bird 7598,automobile 7599,automobile 7600,dog 7601,deer 7602,ship 7603,dog 7604,truck 7605,automobile 7606,deer 7607,airplane 7608,cat 7609,truck 7610,airplane 7611,dog 7612,dog 7613,bird 7614,deer 7615,dog 7616,truck 7617,truck 7618,frog 7619,deer 7620,truck 7621,frog 7622,cat 7623,deer 7624,airplane 7625,frog 7626,cat 7627,airplane 7628,automobile 7629,frog 7630,frog 7631,automobile 7632,frog 7633,ship 7634,deer 7635,automobile 7636,airplane 7637,airplane 7638,truck 7639,cat 7640,truck 7641,airplane 7642,ship 7643,cat 7644,bird 7645,airplane 7646,cat 7647,airplane 7648,deer 7649,frog 7650,frog 7651,horse 7652,truck 7653,horse 7654,deer 7655,frog 7656,airplane 7657,airplane 7658,deer 7659,horse 7660,horse 7661,cat 7662,frog 7663,truck 7664,cat 7665,truck 7666,horse 7667,airplane 7668,deer 7669,dog 7670,truck 7671,bird 7672,airplane 7673,deer 7674,dog 7675,ship 7676,ship 7677,bird 7678,truck 7679,deer 7680,frog 7681,truck 7682,horse 7683,cat 7684,airplane 7685,frog 7686,cat 7687,airplane 7688,deer 7689,bird 7690,automobile 7691,airplane 7692,deer 7693,horse 7694,automobile 7695,frog 7696,airplane 7697,airplane 7698,truck 7699,automobile 7700,truck 7701,truck 7702,frog 7703,deer 7704,airplane 7705,truck 7706,deer 7707,bird 7708,dog 7709,ship 7710,horse 7711,dog 7712,automobile 7713,bird 7714,cat 7715,dog 7716,deer 7717,dog 7718,airplane 7719,truck 7720,airplane 7721,cat 7722,airplane 7723,cat 7724,ship 7725,truck 7726,frog 7727,ship 7728,deer 7729,automobile 7730,cat 7731,ship 7732,airplane 7733,deer 7734,airplane 7735,truck 7736,dog 7737,cat 7738,truck 7739,ship 7740,bird 7741,cat 7742,cat 7743,ship 7744,frog 7745,cat 7746,frog 7747,dog 7748,cat 7749,ship 7750,bird 7751,frog 7752,automobile 7753,bird 7754,ship 7755,airplane 7756,dog 7757,dog 7758,deer 7759,truck 7760,bird 7761,bird 7762,cat 7763,deer 7764,cat 7765,horse 7766,airplane 7767,cat 7768,airplane 7769,airplane 7770,truck 7771,dog 7772,ship 7773,frog 7774,horse 7775,frog 7776,automobile 7777,ship 7778,frog 7779,airplane 7780,horse 7781,truck 7782,cat 7783,deer 7784,dog 7785,ship 7786,deer 7787,truck 7788,deer 7789,truck 7790,bird 7791,bird 7792,deer 7793,dog 7794,ship 7795,deer 7796,horse 7797,ship 7798,frog 7799,frog 7800,frog 7801,horse 7802,frog 7803,horse 7804,cat 7805,dog 7806,cat 7807,cat 7808,dog 7809,automobile 7810,bird 7811,bird 7812,dog 7813,cat 7814,dog 7815,ship 7816,automobile 7817,deer 7818,automobile 7819,airplane 7820,airplane 7821,horse 7822,airplane 7823,horse 7824,deer 7825,cat 7826,bird 7827,airplane 7828,horse 7829,horse 7830,ship 7831,truck 7832,automobile 7833,deer 7834,automobile 7835,ship 7836,dog 7837,horse 7838,truck 7839,automobile 7840,bird 7841,deer 7842,cat 7843,airplane 7844,cat 7845,bird 7846,airplane 7847,airplane 7848,dog 7849,deer 7850,dog 7851,automobile 7852,frog 7853,ship 7854,airplane 7855,cat 7856,bird 7857,frog 7858,horse 7859,deer 7860,automobile 7861,airplane 7862,ship 7863,deer 7864,truck 7865,frog 7866,frog 7867,bird 7868,automobile 7869,automobile 7870,deer 7871,horse 7872,bird 7873,truck 7874,dog 7875,dog 7876,truck 7877,deer 7878,ship 7879,bird 7880,airplane 7881,frog 7882,horse 7883,horse 7884,cat 7885,deer 7886,bird 7887,frog 7888,horse 7889,airplane 7890,cat 7891,automobile 7892,ship 7893,deer 7894,frog 7895,airplane 7896,horse 7897,bird 7898,horse 7899,dog 7900,bird 7901,horse 7902,truck 7903,deer 7904,bird 7905,truck 7906,frog 7907,deer 7908,truck 7909,deer 7910,ship 7911,ship 7912,frog 7913,bird 7914,ship 7915,frog 7916,automobile 7917,automobile 7918,frog 7919,airplane 7920,ship 7921,automobile 7922,horse 7923,truck 7924,cat 7925,deer 7926,horse 7927,automobile 7928,truck 7929,dog 7930,deer 7931,horse 7932,bird 7933,ship 7934,bird 7935,automobile 7936,frog 7937,dog 7938,automobile 7939,airplane 7940,deer 7941,bird 7942,deer 7943,dog 7944,ship 7945,horse 7946,automobile 7947,frog 7948,dog 7949,bird 7950,airplane 7951,bird 7952,ship 7953,truck 7954,bird 7955,dog 7956,ship 7957,ship 7958,deer 7959,dog 7960,deer 7961,horse 7962,frog 7963,bird 7964,airplane 7965,deer 7966,automobile 7967,frog 7968,cat 7969,deer 7970,truck 7971,frog 7972,deer 7973,dog 7974,cat 7975,cat 7976,deer 7977,ship 7978,cat 7979,bird 7980,deer 7981,dog 7982,ship 7983,ship 7984,truck 7985,truck 7986,truck 7987,cat 7988,cat 7989,ship 7990,ship 7991,automobile 7992,horse 7993,deer 7994,ship 7995,automobile 7996,horse 7997,frog 7998,dog 7999,truck 8000,cat 8001,dog 8002,truck 8003,ship 8004,frog 8005,truck 8006,dog 8007,bird 8008,deer 8009,airplane 8010,cat 8011,dog 8012,cat 8013,automobile 8014,automobile 8015,frog 8016,frog 8017,cat 8018,cat 8019,automobile 8020,cat 8021,automobile 8022,dog 8023,dog 8024,bird 8025,deer 8026,airplane 8027,truck 8028,ship 8029,cat 8030,airplane 8031,automobile 8032,airplane 8033,dog 8034,frog 8035,deer 8036,frog 8037,truck 8038,deer 8039,bird 8040,truck 8041,horse 8042,automobile 8043,deer 8044,truck 8045,automobile 8046,cat 8047,cat 8048,automobile 8049,cat 8050,truck 8051,frog 8052,cat 8053,dog 8054,cat 8055,dog 8056,dog 8057,dog 8058,automobile 8059,truck 8060,ship 8061,airplane 8062,truck 8063,frog 8064,ship 8065,truck 8066,cat 8067,cat 8068,frog 8069,dog 8070,frog 8071,deer 8072,cat 8073,deer 8074,bird 8075,truck 8076,truck 8077,dog 8078,ship 8079,airplane 8080,frog 8081,cat 8082,deer 8083,truck 8084,ship 8085,airplane 8086,deer 8087,horse 8088,automobile 8089,truck 8090,automobile 8091,dog 8092,bird 8093,frog 8094,dog 8095,ship 8096,dog 8097,automobile 8098,horse 8099,deer 8100,airplane 8101,dog 8102,ship 8103,deer 8104,airplane 8105,ship 8106,cat 8107,deer 8108,dog 8109,ship 8110,deer 8111,deer 8112,deer 8113,bird 8114,deer 8115,cat 8116,frog 8117,ship 8118,horse 8119,horse 8120,truck 8121,dog 8122,deer 8123,automobile 8124,bird 8125,bird 8126,airplane 8127,frog 8128,deer 8129,airplane 8130,bird 8131,horse 8132,airplane 8133,truck 8134,ship 8135,cat 8136,airplane 8137,cat 8138,truck 8139,horse 8140,cat 8141,ship 8142,bird 8143,horse 8144,deer 8145,cat 8146,deer 8147,bird 8148,deer 8149,frog 8150,frog 8151,automobile 8152,deer 8153,deer 8154,frog 8155,horse 8156,airplane 8157,truck 8158,ship 8159,bird 8160,bird 8161,deer 8162,dog 8163,ship 8164,cat 8165,truck 8166,airplane 8167,automobile 8168,bird 8169,frog 8170,truck 8171,cat 8172,cat 8173,horse 8174,bird 8175,cat 8176,bird 8177,dog 8178,horse 8179,truck 8180,automobile 8181,bird 8182,horse 8183,bird 8184,frog 8185,cat 8186,truck 8187,dog 8188,bird 8189,cat 8190,bird 8191,truck 8192,deer 8193,deer 8194,ship 8195,truck 8196,truck 8197,frog 8198,cat 8199,truck 8200,deer 8201,airplane 8202,ship 8203,dog 8204,cat 8205,bird 8206,airplane 8207,dog 8208,truck 8209,airplane 8210,cat 8211,ship 8212,cat 8213,cat 8214,cat 8215,truck 8216,dog 8217,cat 8218,frog 8219,ship 8220,bird 8221,ship 8222,deer 8223,dog 8224,airplane 8225,cat 8226,cat 8227,automobile 8228,dog 8229,cat 8230,frog 8231,deer 8232,dog 8233,cat 8234,dog 8235,cat 8236,deer 8237,automobile 8238,automobile 8239,dog 8240,truck 8241,dog 8242,automobile 8243,deer 8244,truck 8245,dog 8246,frog 8247,bird 8248,bird 8249,horse 8250,horse 8251,horse 8252,truck 8253,horse 8254,deer 8255,ship 8256,frog 8257,cat 8258,frog 8259,dog 8260,truck 8261,cat 8262,dog 8263,automobile 8264,airplane 8265,deer 8266,deer 8267,deer 8268,frog 8269,automobile 8270,automobile 8271,frog 8272,horse 8273,frog 8274,horse 8275,bird 8276,cat 8277,bird 8278,deer 8279,airplane 8280,dog 8281,automobile 8282,truck 8283,bird 8284,airplane 8285,dog 8286,horse 8287,deer 8288,deer 8289,ship 8290,dog 8291,ship 8292,horse 8293,cat 8294,airplane 8295,frog 8296,dog 8297,deer 8298,cat 8299,horse 8300,ship 8301,truck 8302,horse 8303,horse 8304,dog 8305,airplane 8306,horse 8307,truck 8308,frog 8309,automobile 8310,automobile 8311,dog 8312,automobile 8313,frog 8314,cat 8315,deer 8316,horse 8317,horse 8318,cat 8319,deer 8320,automobile 8321,deer 8322,frog 8323,airplane 8324,truck 8325,airplane 8326,bird 8327,cat 8328,deer 8329,deer 8330,bird 8331,deer 8332,deer 8333,ship 8334,dog 8335,airplane 8336,automobile 8337,cat 8338,dog 8339,truck 8340,deer 8341,horse 8342,ship 8343,cat 8344,truck 8345,deer 8346,frog 8347,deer 8348,ship 8349,cat 8350,truck 8351,dog 8352,ship 8353,frog 8354,frog 8355,frog 8356,horse 8357,horse 8358,automobile 8359,airplane 8360,dog 8361,truck 8362,horse 8363,bird 8364,automobile 8365,truck 8366,horse 8367,cat 8368,dog 8369,truck 8370,bird 8371,bird 8372,dog 8373,horse 8374,ship 8375,cat 8376,horse 8377,truck 8378,cat 8379,airplane 8380,horse 8381,horse 8382,dog 8383,cat 8384,deer 8385,airplane 8386,bird 8387,bird 8388,cat 8389,deer 8390,dog 8391,airplane 8392,deer 8393,airplane 8394,airplane 8395,frog 8396,deer 8397,airplane 8398,dog 8399,automobile 8400,horse 8401,cat 8402,bird 8403,bird 8404,deer 8405,truck 8406,airplane 8407,dog 8408,truck 8409,automobile 8410,horse 8411,cat 8412,dog 8413,ship 8414,horse 8415,cat 8416,dog 8417,automobile 8418,deer 8419,airplane 8420,ship 8421,ship 8422,automobile 8423,bird 8424,bird 8425,automobile 8426,cat 8427,deer 8428,airplane 8429,frog 8430,deer 8431,automobile 8432,truck 8433,bird 8434,truck 8435,cat 8436,truck 8437,dog 8438,truck 8439,deer 8440,horse 8441,truck 8442,frog 8443,dog 8444,cat 8445,dog 8446,frog 8447,dog 8448,frog 8449,cat 8450,horse 8451,cat 8452,airplane 8453,horse 8454,deer 8455,horse 8456,ship 8457,deer 8458,deer 8459,bird 8460,airplane 8461,frog 8462,cat 8463,ship 8464,horse 8465,truck 8466,bird 8467,frog 8468,airplane 8469,frog 8470,truck 8471,frog 8472,bird 8473,cat 8474,deer 8475,deer 8476,airplane 8477,automobile 8478,horse 8479,dog 8480,bird 8481,deer 8482,airplane 8483,airplane 8484,frog 8485,ship 8486,ship 8487,cat 8488,ship 8489,ship 8490,dog 8491,cat 8492,dog 8493,truck 8494,deer 8495,dog 8496,truck 8497,deer 8498,frog 8499,frog 8500,automobile 8501,automobile 8502,dog 8503,dog 8504,automobile 8505,dog 8506,truck 8507,airplane 8508,truck 8509,bird 8510,frog 8511,deer 8512,airplane 8513,bird 8514,deer 8515,dog 8516,dog 8517,bird 8518,frog 8519,deer 8520,ship 8521,cat 8522,truck 8523,frog 8524,frog 8525,airplane 8526,cat 8527,truck 8528,horse 8529,bird 8530,dog 8531,truck 8532,airplane 8533,deer 8534,truck 8535,bird 8536,cat 8537,deer 8538,truck 8539,truck 8540,cat 8541,cat 8542,frog 8543,horse 8544,horse 8545,horse 8546,airplane 8547,automobile 8548,frog 8549,bird 8550,automobile 8551,frog 8552,frog 8553,airplane 8554,horse 8555,truck 8556,horse 8557,airplane 8558,frog 8559,dog 8560,airplane 8561,bird 8562,cat 8563,cat 8564,cat 8565,truck 8566,horse 8567,horse 8568,horse 8569,truck 8570,horse 8571,automobile 8572,deer 8573,horse 8574,horse 8575,truck 8576,automobile 8577,cat 8578,deer 8579,ship 8580,deer 8581,ship 8582,frog 8583,bird 8584,truck 8585,ship 8586,truck 8587,deer 8588,truck 8589,bird 8590,automobile 8591,deer 8592,dog 8593,frog 8594,truck 8595,cat 8596,deer 8597,cat 8598,frog 8599,deer 8600,airplane 8601,deer 8602,ship 8603,horse 8604,automobile 8605,cat 8606,truck 8607,bird 8608,frog 8609,frog 8610,deer 8611,cat 8612,truck 8613,bird 8614,horse 8615,frog 8616,deer 8617,deer 8618,cat 8619,automobile 8620,bird 8621,cat 8622,bird 8623,truck 8624,horse 8625,dog 8626,truck 8627,airplane 8628,ship 8629,ship 8630,ship 8631,deer 8632,deer 8633,bird 8634,cat 8635,truck 8636,horse 8637,ship 8638,ship 8639,dog 8640,frog 8641,cat 8642,horse 8643,cat 8644,dog 8645,deer 8646,cat 8647,dog 8648,horse 8649,dog 8650,dog 8651,deer 8652,horse 8653,deer 8654,ship 8655,cat 8656,dog 8657,bird 8658,bird 8659,deer 8660,ship 8661,bird 8662,deer 8663,airplane 8664,bird 8665,deer 8666,deer 8667,horse 8668,automobile 8669,dog 8670,bird 8671,airplane 8672,bird 8673,truck 8674,dog 8675,automobile 8676,truck 8677,frog 8678,dog 8679,truck 8680,ship 8681,cat 8682,cat 8683,deer 8684,airplane 8685,cat 8686,bird 8687,cat 8688,frog 8689,horse 8690,frog 8691,deer 8692,dog 8693,truck 8694,cat 8695,horse 8696,truck 8697,truck 8698,cat 8699,airplane 8700,dog 8701,truck 8702,bird 8703,bird 8704,dog 8705,automobile 8706,bird 8707,deer 8708,airplane 8709,airplane 8710,automobile 8711,cat 8712,airplane 8713,bird 8714,dog 8715,dog 8716,ship 8717,cat 8718,frog 8719,airplane 8720,deer 8721,automobile 8722,cat 8723,horse 8724,truck 8725,deer 8726,dog 8727,frog 8728,bird 8729,dog 8730,ship 8731,dog 8732,ship 8733,dog 8734,cat 8735,truck 8736,frog 8737,horse 8738,automobile 8739,ship 8740,bird 8741,deer 8742,deer 8743,airplane 8744,horse 8745,cat 8746,dog 8747,automobile 8748,dog 8749,bird 8750,bird 8751,truck 8752,frog 8753,bird 8754,airplane 8755,dog 8756,cat 8757,cat 8758,bird 8759,frog 8760,deer 8761,airplane 8762,bird 8763,bird 8764,bird 8765,truck 8766,cat 8767,deer 8768,airplane 8769,airplane 8770,horse 8771,truck 8772,bird 8773,dog 8774,deer 8775,airplane 8776,ship 8777,deer 8778,airplane 8779,automobile 8780,automobile 8781,horse 8782,bird 8783,ship 8784,frog 8785,truck 8786,bird 8787,cat 8788,ship 8789,dog 8790,dog 8791,deer 8792,bird 8793,cat 8794,frog 8795,bird 8796,airplane 8797,airplane 8798,truck 8799,deer 8800,deer 8801,truck 8802,bird 8803,airplane 8804,deer 8805,truck 8806,cat 8807,bird 8808,truck 8809,dog 8810,deer 8811,cat 8812,automobile 8813,cat 8814,cat 8815,deer 8816,automobile 8817,cat 8818,dog 8819,cat 8820,bird 8821,dog 8822,horse 8823,dog 8824,automobile 8825,automobile 8826,frog 8827,cat 8828,truck 8829,deer 8830,dog 8831,deer 8832,automobile 8833,bird 8834,cat 8835,deer 8836,automobile 8837,truck 8838,cat 8839,airplane 8840,truck 8841,ship 8842,truck 8843,truck 8844,dog 8845,cat 8846,deer 8847,dog 8848,truck 8849,dog 8850,automobile 8851,cat 8852,airplane 8853,deer 8854,ship 8855,horse 8856,airplane 8857,automobile 8858,airplane 8859,deer 8860,cat 8861,cat 8862,cat 8863,ship 8864,ship 8865,horse 8866,bird 8867,deer 8868,deer 8869,horse 8870,automobile 8871,horse 8872,cat 8873,airplane 8874,automobile 8875,deer 8876,frog 8877,bird 8878,bird 8879,bird 8880,cat 8881,cat 8882,deer 8883,airplane 8884,frog 8885,automobile 8886,bird 8887,cat 8888,cat 8889,cat 8890,frog 8891,cat 8892,deer 8893,cat 8894,frog 8895,dog 8896,bird 8897,ship 8898,frog 8899,airplane 8900,frog 8901,deer 8902,bird 8903,bird 8904,cat 8905,truck 8906,horse 8907,deer 8908,ship 8909,horse 8910,dog 8911,cat 8912,automobile 8913,deer 8914,dog 8915,frog 8916,frog 8917,dog 8918,automobile 8919,automobile 8920,cat 8921,airplane 8922,dog 8923,truck 8924,truck 8925,dog 8926,deer 8927,dog 8928,deer 8929,automobile 8930,dog 8931,deer 8932,truck 8933,ship 8934,ship 8935,frog 8936,ship 8937,dog 8938,cat 8939,deer 8940,automobile 8941,deer 8942,airplane 8943,automobile 8944,airplane 8945,frog 8946,cat 8947,truck 8948,deer 8949,automobile 8950,frog 8951,truck 8952,cat 8953,deer 8954,dog 8955,ship 8956,truck 8957,deer 8958,cat 8959,deer 8960,truck 8961,horse 8962,cat 8963,automobile 8964,automobile 8965,bird 8966,dog 8967,cat 8968,airplane 8969,truck 8970,deer 8971,horse 8972,cat 8973,cat 8974,truck 8975,deer 8976,deer 8977,ship 8978,airplane 8979,frog 8980,horse 8981,frog 8982,truck 8983,dog 8984,bird 8985,horse 8986,truck 8987,automobile 8988,frog 8989,frog 8990,cat 8991,deer 8992,bird 8993,dog 8994,airplane 8995,deer 8996,bird 8997,bird 8998,truck 8999,cat 9000,truck 9001,ship 9002,frog 9003,automobile 9004,cat 9005,dog 9006,cat 9007,ship 9008,cat 9009,truck 9010,deer 9011,horse 9012,cat 9013,bird 9014,ship 9015,deer 9016,frog 9017,ship 9018,bird 9019,airplane 9020,cat 9021,airplane 9022,deer 9023,frog 9024,frog 9025,automobile 9026,deer 9027,cat 9028,deer 9029,airplane 9030,deer 9031,bird 9032,frog 9033,truck 9034,dog 9035,cat 9036,horse 9037,automobile 9038,airplane 9039,ship 9040,deer 9041,automobile 9042,frog 9043,ship 9044,automobile 9045,bird 9046,ship 9047,automobile 9048,truck 9049,frog 9050,cat 9051,cat 9052,truck 9053,ship 9054,frog 9055,automobile 9056,cat 9057,cat 9058,truck 9059,dog 9060,deer 9061,truck 9062,frog 9063,bird 9064,cat 9065,ship 9066,deer 9067,airplane 9068,horse 9069,airplane 9070,bird 9071,horse 9072,automobile 9073,frog 9074,horse 9075,bird 9076,ship 9077,automobile 9078,automobile 9079,airplane 9080,truck 9081,frog 9082,cat 9083,ship 9084,frog 9085,cat 9086,frog 9087,dog 9088,automobile 9089,automobile 9090,deer 9091,deer 9092,ship 9093,dog 9094,bird 9095,truck 9096,truck 9097,deer 9098,bird 9099,automobile 9100,bird 9101,truck 9102,dog 9103,automobile 9104,horse 9105,ship 9106,dog 9107,horse 9108,ship 9109,ship 9110,cat 9111,dog 9112,deer 9113,horse 9114,ship 9115,ship 9116,dog 9117,bird 9118,horse 9119,ship 9120,bird 9121,automobile 9122,automobile 9123,horse 9124,airplane 9125,automobile 9126,airplane 9127,dog 9128,airplane 9129,dog 9130,deer 9131,bird 9132,airplane 9133,automobile 9134,cat 9135,bird 9136,cat 9137,cat 9138,truck 9139,frog 9140,cat 9141,cat 9142,frog 9143,airplane 9144,automobile 9145,deer 9146,automobile 9147,frog 9148,dog 9149,ship 9150,automobile 9151,dog 9152,truck 9153,airplane 9154,truck 9155,cat 9156,horse 9157,cat 9158,dog 9159,cat 9160,deer 9161,horse 9162,bird 9163,automobile 9164,automobile 9165,dog 9166,dog 9167,bird 9168,cat 9169,bird 9170,frog 9171,bird 9172,deer 9173,frog 9174,cat 9175,cat 9176,cat 9177,ship 9178,automobile 9179,cat 9180,bird 9181,frog 9182,dog 9183,automobile 9184,ship 9185,ship 9186,bird 9187,airplane 9188,airplane 9189,dog 9190,deer 9191,bird 9192,cat 9193,truck 9194,dog 9195,cat 9196,truck 9197,ship 9198,ship 9199,cat 9200,airplane 9201,cat 9202,horse 9203,dog 9204,truck 9205,deer 9206,cat 9207,automobile 9208,frog 9209,cat 9210,cat 9211,automobile 9212,truck 9213,truck 9214,deer 9215,deer 9216,ship 9217,automobile 9218,ship 9219,automobile 9220,dog 9221,horse 9222,ship 9223,frog 9224,frog 9225,bird 9226,ship 9227,automobile 9228,frog 9229,deer 9230,ship 9231,airplane 9232,dog 9233,truck 9234,frog 9235,truck 9236,horse 9237,airplane 9238,cat 9239,deer 9240,frog 9241,truck 9242,airplane 9243,horse 9244,horse 9245,horse 9246,cat 9247,dog 9248,deer 9249,cat 9250,frog 9251,ship 9252,deer 9253,ship 9254,cat 9255,frog 9256,truck 9257,airplane 9258,truck 9259,deer 9260,horse 9261,automobile 9262,cat 9263,airplane 9264,deer 9265,frog 9266,airplane 9267,airplane 9268,automobile 9269,cat 9270,truck 9271,airplane 9272,bird 9273,bird 9274,airplane 9275,truck 9276,cat 9277,horse 9278,frog 9279,truck 9280,airplane 9281,bird 9282,truck 9283,deer 9284,deer 9285,horse 9286,bird 9287,deer 9288,frog 9289,cat 9290,ship 9291,horse 9292,frog 9293,airplane 9294,airplane 9295,frog 9296,frog 9297,deer 9298,bird 9299,truck 9300,horse 9301,airplane 9302,cat 9303,horse 9304,automobile 9305,ship 9306,automobile 9307,deer 9308,ship 9309,bird 9310,automobile 9311,deer 9312,truck 9313,truck 9314,truck 9315,ship 9316,horse 9317,cat 9318,deer 9319,horse 9320,cat 9321,horse 9322,frog 9323,horse 9324,automobile 9325,dog 9326,airplane 9327,airplane 9328,cat 9329,ship 9330,frog 9331,dog 9332,cat 9333,airplane 9334,truck 9335,deer 9336,deer 9337,frog 9338,bird 9339,dog 9340,airplane 9341,dog 9342,automobile 9343,horse 9344,dog 9345,frog 9346,cat 9347,deer 9348,ship 9349,horse 9350,bird 9351,bird 9352,ship 9353,ship 9354,frog 9355,dog 9356,deer 9357,automobile 9358,cat 9359,airplane 9360,frog 9361,frog 9362,horse 9363,frog 9364,truck 9365,truck 9366,airplane 9367,horse 9368,airplane 9369,automobile 9370,dog 9371,bird 9372,horse 9373,automobile 9374,deer 9375,truck 9376,cat 9377,truck 9378,dog 9379,horse 9380,cat 9381,truck 9382,horse 9383,deer 9384,cat 9385,horse 9386,bird 9387,dog 9388,frog 9389,cat 9390,frog 9391,deer 9392,cat 9393,deer 9394,frog 9395,horse 9396,frog 9397,airplane 9398,bird 9399,cat 9400,cat 9401,dog 9402,frog 9403,cat 9404,automobile 9405,deer 9406,ship 9407,horse 9408,automobile 9409,deer 9410,dog 9411,airplane 9412,dog 9413,dog 9414,frog 9415,bird 9416,bird 9417,cat 9418,dog 9419,cat 9420,automobile 9421,cat 9422,bird 9423,horse 9424,cat 9425,bird 9426,horse 9427,airplane 9428,airplane 9429,automobile 9430,automobile 9431,frog 9432,frog 9433,truck 9434,deer 9435,dog 9436,cat 9437,dog 9438,deer 9439,deer 9440,deer 9441,deer 9442,horse 9443,truck 9444,dog 9445,deer 9446,bird 9447,horse 9448,truck 9449,frog 9450,dog 9451,dog 9452,bird 9453,truck 9454,automobile 9455,frog 9456,dog 9457,frog 9458,truck 9459,truck 9460,automobile 9461,airplane 9462,truck 9463,ship 9464,truck 9465,automobile 9466,airplane 9467,deer 9468,deer 9469,frog 9470,truck 9471,truck 9472,frog 9473,frog 9474,bird 9475,bird 9476,horse 9477,ship 9478,bird 9479,dog 9480,truck 9481,airplane 9482,deer 9483,dog 9484,truck 9485,dog 9486,ship 9487,bird 9488,dog 9489,dog 9490,deer 9491,ship 9492,dog 9493,airplane 9494,deer 9495,bird 9496,frog 9497,cat 9498,bird 9499,horse 9500,deer 9501,truck 9502,bird 9503,deer 9504,bird 9505,deer 9506,dog 9507,deer 9508,horse 9509,horse 9510,airplane 9511,dog 9512,truck 9513,airplane 9514,ship 9515,bird 9516,frog 9517,deer 9518,bird 9519,frog 9520,dog 9521,horse 9522,truck 9523,frog 9524,bird 9525,ship 9526,frog 9527,dog 9528,automobile 9529,ship 9530,automobile 9531,truck 9532,frog 9533,bird 9534,horse 9535,ship 9536,dog 9537,cat 9538,frog 9539,horse 9540,frog 9541,frog 9542,airplane 9543,deer 9544,deer 9545,dog 9546,ship 9547,cat 9548,dog 9549,deer 9550,bird 9551,ship 9552,airplane 9553,frog 9554,horse 9555,airplane 9556,airplane 9557,cat 9558,automobile 9559,cat 9560,dog 9561,bird 9562,dog 9563,horse 9564,deer 9565,bird 9566,frog 9567,deer 9568,automobile 9569,cat 9570,airplane 9571,deer 9572,frog 9573,ship 9574,ship 9575,dog 9576,dog 9577,cat 9578,truck 9579,cat 9580,truck 9581,frog 9582,bird 9583,automobile 9584,airplane 9585,dog 9586,ship 9587,truck 9588,dog 9589,frog 9590,cat 9591,truck 9592,ship 9593,frog 9594,cat 9595,cat 9596,cat 9597,deer 9598,cat 9599,ship 9600,dog 9601,cat 9602,horse 9603,ship 9604,cat 9605,airplane 9606,horse 9607,automobile 9608,deer 9609,frog 9610,cat 9611,frog 9612,deer 9613,horse 9614,truck 9615,ship 9616,horse 9617,truck 9618,horse 9619,deer 9620,horse 9621,horse 9622,frog 9623,automobile 9624,truck 9625,horse 9626,truck 9627,truck 9628,truck 9629,cat 9630,frog 9631,bird 9632,dog 9633,horse 9634,frog 9635,deer 9636,bird 9637,bird 9638,deer 9639,deer 9640,dog 9641,horse 9642,airplane 9643,airplane 9644,cat 9645,dog 9646,deer 9647,ship 9648,bird 9649,deer 9650,frog 9651,truck 9652,deer 9653,ship 9654,cat 9655,dog 9656,automobile 9657,frog 9658,frog 9659,airplane 9660,truck 9661,frog 9662,bird 9663,cat 9664,dog 9665,truck 9666,ship 9667,bird 9668,dog 9669,automobile 9670,deer 9671,airplane 9672,bird 9673,horse 9674,truck 9675,dog 9676,ship 9677,airplane 9678,bird 9679,airplane 9680,frog 9681,cat 9682,frog 9683,automobile 9684,dog 9685,horse 9686,automobile 9687,automobile 9688,dog 9689,frog 9690,airplane 9691,bird 9692,deer 9693,frog 9694,horse 9695,airplane 9696,bird 9697,truck 9698,truck 9699,deer 9700,horse 9701,deer 9702,truck 9703,automobile 9704,deer 9705,deer 9706,deer 9707,automobile 9708,deer 9709,automobile 9710,dog 9711,ship 9712,frog 9713,deer 9714,bird 9715,cat 9716,cat 9717,deer 9718,horse 9719,cat 9720,airplane 9721,dog 9722,truck 9723,deer 9724,truck 9725,airplane 9726,truck 9727,cat 9728,truck 9729,bird 9730,frog 9731,deer 9732,truck 9733,dog 9734,dog 9735,airplane 9736,ship 9737,deer 9738,automobile 9739,horse 9740,dog 9741,deer 9742,bird 9743,bird 9744,frog 9745,dog 9746,horse 9747,truck 9748,horse 9749,frog 9750,bird 9751,frog 9752,truck 9753,airplane 9754,ship 9755,deer 9756,horse 9757,dog 9758,bird 9759,bird 9760,deer 9761,frog 9762,truck 9763,dog 9764,automobile 9765,automobile 9766,ship 9767,ship 9768,automobile 9769,deer 9770,frog 9771,cat 9772,dog 9773,ship 9774,dog 9775,deer 9776,automobile 9777,cat 9778,deer 9779,deer 9780,bird 9781,truck 9782,airplane 9783,horse 9784,frog 9785,frog 9786,truck 9787,ship 9788,ship 9789,cat 9790,horse 9791,ship 9792,horse 9793,ship 9794,ship 9795,frog 9796,ship 9797,truck 9798,frog 9799,bird 9800,dog 9801,cat 9802,dog 9803,frog 9804,deer 9805,bird 9806,bird 9807,ship 9808,deer 9809,horse 9810,ship 9811,horse 9812,frog 9813,truck 9814,deer 9815,horse 9816,dog 9817,deer 9818,bird 9819,ship 9820,automobile 9821,frog 9822,frog 9823,airplane 9824,cat 9825,ship 9826,deer 9827,truck 9828,deer 9829,frog 9830,frog 9831,truck 9832,dog 9833,bird 9834,cat 9835,truck 9836,automobile 9837,frog 9838,dog 9839,deer 9840,cat 9841,truck 9842,frog 9843,deer 9844,truck 9845,frog 9846,cat 9847,cat 9848,automobile 9849,automobile 9850,cat 9851,horse 9852,automobile 9853,automobile 9854,truck 9855,horse 9856,ship 9857,horse 9858,dog 9859,ship 9860,horse 9861,bird 9862,ship 9863,ship 9864,dog 9865,frog 9866,cat 9867,cat 9868,cat 9869,automobile 9870,dog 9871,ship 9872,automobile 9873,automobile 9874,bird 9875,frog 9876,dog 9877,truck 9878,frog 9879,automobile 9880,automobile 9881,cat 9882,frog 9883,airplane 9884,ship 9885,truck 9886,airplane 9887,frog 9888,truck 9889,horse 9890,truck 9891,cat 9892,automobile 9893,horse 9894,airplane 9895,airplane 9896,dog 9897,cat 9898,automobile 9899,bird 9900,truck 9901,deer 9902,airplane 9903,deer 9904,bird 9905,deer 9906,ship 9907,bird 9908,cat 9909,ship 9910,truck 9911,horse 9912,cat 9913,automobile 9914,truck 9915,bird 9916,automobile 9917,cat 9918,horse 9919,cat 9920,automobile 9921,cat 9922,cat 9923,horse 9924,truck 9925,truck 9926,deer 9927,automobile 9928,deer 9929,airplane 9930,horse 9931,automobile 9932,ship 9933,cat 9934,cat 9935,automobile 9936,ship 9937,cat 9938,automobile 9939,truck 9940,ship 9941,automobile 9942,ship 9943,truck 9944,cat 9945,bird 9946,bird 9947,bird 9948,cat 9949,deer 9950,truck 9951,cat 9952,frog 9953,cat 9954,bird 9955,deer 9956,frog 9957,truck 9958,truck 9959,truck 9960,horse 9961,airplane 9962,dog 9963,dog 9964,deer 9965,horse 9966,frog 9967,deer 9968,airplane 9969,cat 9970,truck 9971,cat 9972,automobile 9973,ship 9974,bird 9975,deer 9976,airplane 9977,cat 9978,cat 9979,horse 9980,ship 9981,frog 9982,cat 9983,airplane 9984,deer 9985,frog 9986,cat 9987,automobile 9988,automobile 9989,deer 9990,automobile 9991,truck 9992,cat 9993,dog 9994,bird 9995,cat 9996,truck 9997,cat 9998,cat 9999,bird 10000,frog 10001,dog 10002,ship 10003,dog 10004,airplane 10005,truck 10006,horse 10007,horse 10008,horse 10009,deer 10010,ship 10011,dog 10012,airplane 10013,bird 10014,bird 10015,frog 10016,deer 10017,airplane 10018,cat 10019,automobile 10020,deer 10021,ship 10022,airplane 10023,airplane 10024,dog 10025,deer 10026,cat 10027,ship 10028,horse 10029,horse 10030,automobile 10031,deer 10032,automobile 10033,ship 10034,airplane 10035,cat 10036,bird 10037,airplane 10038,deer 10039,horse 10040,frog 10041,deer 10042,deer 10043,ship 10044,airplane 10045,automobile 10046,deer 10047,deer 10048,frog 10049,truck 10050,automobile 10051,dog 10052,dog 10053,airplane 10054,airplane 10055,automobile 10056,ship 10057,horse 10058,airplane 10059,deer 10060,horse 10061,automobile 10062,automobile 10063,horse 10064,frog 10065,ship 10066,cat 10067,airplane 10068,dog 10069,automobile 10070,frog 10071,frog 10072,airplane 10073,dog 10074,deer 10075,dog 10076,bird 10077,deer 10078,frog 10079,dog 10080,automobile 10081,automobile 10082,deer 10083,horse 10084,cat 10085,ship 10086,ship 10087,ship 10088,frog 10089,airplane 10090,deer 10091,cat 10092,frog 10093,dog 10094,cat 10095,bird 10096,horse 10097,dog 10098,ship 10099,frog 10100,cat 10101,dog 10102,truck 10103,cat 10104,deer 10105,deer 10106,horse 10107,truck 10108,automobile 10109,cat 10110,cat 10111,horse 10112,ship 10113,bird 10114,horse 10115,horse 10116,ship 10117,frog 10118,cat 10119,ship 10120,dog 10121,ship 10122,frog 10123,airplane 10124,truck 10125,automobile 10126,horse 10127,horse 10128,ship 10129,automobile 10130,cat 10131,cat 10132,truck 10133,frog 10134,horse 10135,bird 10136,airplane 10137,deer 10138,truck 10139,automobile 10140,horse 10141,automobile 10142,truck 10143,deer 10144,truck 10145,frog 10146,cat 10147,truck 10148,automobile 10149,bird 10150,frog 10151,airplane 10152,truck 10153,truck 10154,airplane 10155,deer 10156,cat 10157,airplane 10158,airplane 10159,horse 10160,deer 10161,airplane 10162,deer 10163,truck 10164,frog 10165,bird 10166,dog 10167,deer 10168,ship 10169,bird 10170,dog 10171,deer 10172,deer 10173,frog 10174,frog 10175,deer 10176,frog 10177,dog 10178,horse 10179,dog 10180,dog 10181,frog 10182,deer 10183,dog 10184,bird 10185,ship 10186,truck 10187,truck 10188,airplane 10189,dog 10190,cat 10191,truck 10192,frog 10193,dog 10194,bird 10195,frog 10196,ship 10197,cat 10198,dog 10199,automobile 10200,dog 10201,airplane 10202,ship 10203,frog 10204,deer 10205,frog 10206,frog 10207,ship 10208,cat 10209,cat 10210,horse 10211,ship 10212,cat 10213,frog 10214,truck 10215,deer 10216,airplane 10217,deer 10218,ship 10219,deer 10220,ship 10221,frog 10222,horse 10223,dog 10224,ship 10225,horse 10226,deer 10227,cat 10228,ship 10229,dog 10230,deer 10231,bird 10232,deer 10233,horse 10234,deer 10235,frog 10236,dog 10237,frog 10238,cat 10239,truck 10240,truck 10241,frog 10242,cat 10243,horse 10244,truck 10245,frog 10246,horse 10247,frog 10248,dog 10249,automobile 10250,horse 10251,automobile 10252,airplane 10253,truck 10254,bird 10255,horse 10256,cat 10257,dog 10258,frog 10259,deer 10260,dog 10261,airplane 10262,cat 10263,deer 10264,deer 10265,cat 10266,bird 10267,horse 10268,ship 10269,dog 10270,frog 10271,automobile 10272,airplane 10273,ship 10274,automobile 10275,dog 10276,airplane 10277,frog 10278,horse 10279,automobile 10280,ship 10281,truck 10282,frog 10283,dog 10284,dog 10285,cat 10286,frog 10287,horse 10288,frog 10289,bird 10290,deer 10291,cat 10292,truck 10293,dog 10294,truck 10295,cat 10296,frog 10297,dog 10298,airplane 10299,truck 10300,ship 10301,truck 10302,deer 10303,truck 10304,ship 10305,bird 10306,airplane 10307,deer 10308,bird 10309,bird 10310,dog 10311,cat 10312,dog 10313,dog 10314,ship 10315,automobile 10316,cat 10317,cat 10318,airplane 10319,airplane 10320,cat 10321,bird 10322,frog 10323,cat 10324,horse 10325,horse 10326,cat 10327,cat 10328,ship 10329,automobile 10330,bird 10331,dog 10332,frog 10333,cat 10334,dog 10335,bird 10336,truck 10337,airplane 10338,bird 10339,dog 10340,bird 10341,horse 10342,deer 10343,bird 10344,deer 10345,deer 10346,horse 10347,dog 10348,bird 10349,horse 10350,automobile 10351,dog 10352,cat 10353,truck 10354,deer 10355,frog 10356,airplane 10357,frog 10358,frog 10359,airplane 10360,truck 10361,deer 10362,automobile 10363,automobile 10364,dog 10365,bird 10366,cat 10367,automobile 10368,dog 10369,airplane 10370,bird 10371,ship 10372,horse 10373,deer 10374,deer 10375,dog 10376,truck 10377,frog 10378,truck 10379,deer 10380,dog 10381,ship 10382,airplane 10383,ship 10384,horse 10385,deer 10386,dog 10387,frog 10388,airplane 10389,deer 10390,deer 10391,ship 10392,cat 10393,bird 10394,bird 10395,bird 10396,automobile 10397,horse 10398,ship 10399,frog 10400,truck 10401,deer 10402,automobile 10403,dog 10404,cat 10405,deer 10406,bird 10407,deer 10408,dog 10409,dog 10410,deer 10411,bird 10412,ship 10413,airplane 10414,frog 10415,truck 10416,frog 10417,bird 10418,frog 10419,frog 10420,cat 10421,deer 10422,dog 10423,dog 10424,airplane 10425,airplane 10426,automobile 10427,cat 10428,horse 10429,horse 10430,bird 10431,ship 10432,airplane 10433,airplane 10434,ship 10435,cat 10436,airplane 10437,deer 10438,cat 10439,cat 10440,airplane 10441,dog 10442,truck 10443,dog 10444,deer 10445,bird 10446,cat 10447,horse 10448,automobile 10449,deer 10450,cat 10451,frog 10452,cat 10453,deer 10454,bird 10455,cat 10456,horse 10457,automobile 10458,horse 10459,truck 10460,bird 10461,frog 10462,bird 10463,deer 10464,deer 10465,deer 10466,dog 10467,airplane 10468,cat 10469,airplane 10470,ship 10471,cat 10472,bird 10473,cat 10474,deer 10475,frog 10476,frog 10477,frog 10478,truck 10479,frog 10480,airplane 10481,cat 10482,truck 10483,dog 10484,dog 10485,horse 10486,cat 10487,dog 10488,truck 10489,frog 10490,dog 10491,cat 10492,cat 10493,deer 10494,truck 10495,frog 10496,airplane 10497,deer 10498,frog 10499,bird 10500,deer 10501,dog 10502,frog 10503,frog 10504,bird 10505,frog 10506,deer 10507,frog 10508,truck 10509,frog 10510,truck 10511,automobile 10512,frog 10513,deer 10514,horse 10515,airplane 10516,horse 10517,automobile 10518,deer 10519,frog 10520,truck 10521,deer 10522,bird 10523,frog 10524,deer 10525,frog 10526,deer 10527,bird 10528,frog 10529,ship 10530,dog 10531,horse 10532,airplane 10533,deer 10534,frog 10535,truck 10536,frog 10537,truck 10538,horse 10539,deer 10540,automobile 10541,truck 10542,airplane 10543,ship 10544,truck 10545,frog 10546,truck 10547,deer 10548,ship 10549,deer 10550,automobile 10551,ship 10552,airplane 10553,ship 10554,horse 10555,bird 10556,cat 10557,airplane 10558,ship 10559,horse 10560,airplane 10561,dog 10562,cat 10563,cat 10564,cat 10565,frog 10566,horse 10567,bird 10568,automobile 10569,cat 10570,deer 10571,horse 10572,deer 10573,dog 10574,dog 10575,dog 10576,automobile 10577,horse 10578,cat 10579,ship 10580,frog 10581,frog 10582,dog 10583,frog 10584,cat 10585,truck 10586,cat 10587,dog 10588,dog 10589,deer 10590,deer 10591,dog 10592,frog 10593,deer 10594,cat 10595,airplane 10596,truck 10597,ship 10598,truck 10599,deer 10600,cat 10601,airplane 10602,horse 10603,dog 10604,horse 10605,deer 10606,automobile 10607,deer 10608,deer 10609,cat 10610,dog 10611,frog 10612,bird 10613,airplane 10614,deer 10615,cat 10616,deer 10617,horse 10618,cat 10619,frog 10620,airplane 10621,ship 10622,truck 10623,ship 10624,frog 10625,cat 10626,truck 10627,bird 10628,frog 10629,frog 10630,horse 10631,automobile 10632,deer 10633,frog 10634,deer 10635,frog 10636,cat 10637,dog 10638,cat 10639,dog 10640,deer 10641,ship 10642,deer 10643,airplane 10644,automobile 10645,deer 10646,truck 10647,truck 10648,horse 10649,cat 10650,bird 10651,horse 10652,horse 10653,airplane 10654,ship 10655,deer 10656,truck 10657,bird 10658,dog 10659,airplane 10660,bird 10661,frog 10662,cat 10663,horse 10664,frog 10665,airplane 10666,truck 10667,frog 10668,deer 10669,deer 10670,cat 10671,horse 10672,deer 10673,deer 10674,automobile 10675,truck 10676,airplane 10677,cat 10678,frog 10679,cat 10680,frog 10681,frog 10682,cat 10683,cat 10684,deer 10685,frog 10686,cat 10687,bird 10688,airplane 10689,dog 10690,bird 10691,truck 10692,horse 10693,frog 10694,deer 10695,deer 10696,deer 10697,bird 10698,airplane 10699,automobile 10700,truck 10701,horse 10702,dog 10703,airplane 10704,deer 10705,ship 10706,frog 10707,truck 10708,horse 10709,frog 10710,frog 10711,deer 10712,dog 10713,horse 10714,frog 10715,airplane 10716,dog 10717,truck 10718,deer 10719,truck 10720,cat 10721,truck 10722,truck 10723,frog 10724,deer 10725,deer 10726,bird 10727,bird 10728,automobile 10729,airplane 10730,dog 10731,deer 10732,ship 10733,ship 10734,dog 10735,deer 10736,cat 10737,deer 10738,deer 10739,horse 10740,bird 10741,cat 10742,horse 10743,deer 10744,dog 10745,truck 10746,bird 10747,frog 10748,dog 10749,bird 10750,truck 10751,deer 10752,cat 10753,automobile 10754,deer 10755,frog 10756,truck 10757,deer 10758,truck 10759,bird 10760,frog 10761,truck 10762,deer 10763,deer 10764,horse 10765,airplane 10766,bird 10767,deer 10768,cat 10769,dog 10770,airplane 10771,automobile 10772,truck 10773,truck 10774,horse 10775,cat 10776,cat 10777,dog 10778,deer 10779,automobile 10780,truck 10781,dog 10782,cat 10783,cat 10784,cat 10785,automobile 10786,cat 10787,cat 10788,ship 10789,deer 10790,cat 10791,horse 10792,deer 10793,dog 10794,deer 10795,horse 10796,ship 10797,bird 10798,deer 10799,cat 10800,deer 10801,cat 10802,automobile 10803,horse 10804,airplane 10805,dog 10806,bird 10807,dog 10808,cat 10809,ship 10810,frog 10811,cat 10812,dog 10813,frog 10814,truck 10815,horse 10816,dog 10817,truck 10818,deer 10819,horse 10820,truck 10821,horse 10822,airplane 10823,bird 10824,deer 10825,horse 10826,automobile 10827,horse 10828,deer 10829,truck 10830,horse 10831,horse 10832,dog 10833,airplane 10834,deer 10835,automobile 10836,dog 10837,frog 10838,dog 10839,deer 10840,bird 10841,dog 10842,airplane 10843,automobile 10844,automobile 10845,automobile 10846,cat 10847,frog 10848,cat 10849,bird 10850,cat 10851,dog 10852,horse 10853,truck 10854,automobile 10855,cat 10856,bird 10857,deer 10858,truck 10859,automobile 10860,automobile 10861,bird 10862,cat 10863,airplane 10864,horse 10865,bird 10866,ship 10867,deer 10868,frog 10869,automobile 10870,cat 10871,ship 10872,dog 10873,deer 10874,airplane 10875,frog 10876,horse 10877,frog 10878,deer 10879,bird 10880,dog 10881,cat 10882,automobile 10883,horse 10884,cat 10885,deer 10886,truck 10887,deer 10888,ship 10889,dog 10890,dog 10891,frog 10892,cat 10893,bird 10894,bird 10895,horse 10896,ship 10897,ship 10898,bird 10899,cat 10900,horse 10901,airplane 10902,horse 10903,cat 10904,ship 10905,horse 10906,deer 10907,airplane 10908,deer 10909,airplane 10910,deer 10911,dog 10912,frog 10913,deer 10914,frog 10915,ship 10916,truck 10917,truck 10918,airplane 10919,airplane 10920,deer 10921,truck 10922,cat 10923,cat 10924,truck 10925,dog 10926,airplane 10927,ship 10928,deer 10929,frog 10930,deer 10931,cat 10932,horse 10933,bird 10934,dog 10935,automobile 10936,cat 10937,deer 10938,frog 10939,horse 10940,truck 10941,horse 10942,cat 10943,bird 10944,airplane 10945,cat 10946,airplane 10947,deer 10948,bird 10949,cat 10950,frog 10951,frog 10952,horse 10953,cat 10954,airplane 10955,horse 10956,deer 10957,cat 10958,airplane 10959,horse 10960,deer 10961,frog 10962,deer 10963,ship 10964,deer 10965,dog 10966,truck 10967,deer 10968,airplane 10969,frog 10970,cat 10971,frog 10972,frog 10973,horse 10974,deer 10975,automobile 10976,dog 10977,airplane 10978,automobile 10979,airplane 10980,ship 10981,frog 10982,airplane 10983,frog 10984,automobile 10985,dog 10986,truck 10987,cat 10988,horse 10989,frog 10990,bird 10991,horse 10992,deer 10993,frog 10994,deer 10995,deer 10996,airplane 10997,deer 10998,automobile 10999,truck 11000,automobile 11001,dog 11002,automobile 11003,truck 11004,airplane 11005,bird 11006,ship 11007,bird 11008,deer 11009,deer 11010,cat 11011,deer 11012,frog 11013,ship 11014,airplane 11015,automobile 11016,deer 11017,bird 11018,airplane 11019,ship 11020,horse 11021,horse 11022,bird 11023,bird 11024,ship 11025,frog 11026,frog 11027,dog 11028,deer 11029,airplane 11030,dog 11031,truck 11032,deer 11033,bird 11034,frog 11035,dog 11036,bird 11037,deer 11038,airplane 11039,truck 11040,dog 11041,dog 11042,cat 11043,automobile 11044,cat 11045,deer 11046,ship 11047,dog 11048,dog 11049,horse 11050,truck 11051,frog 11052,frog 11053,automobile 11054,bird 11055,deer 11056,dog 11057,truck 11058,deer 11059,cat 11060,automobile 11061,deer 11062,dog 11063,truck 11064,bird 11065,cat 11066,ship 11067,cat 11068,cat 11069,dog 11070,ship 11071,horse 11072,horse 11073,ship 11074,airplane 11075,bird 11076,automobile 11077,cat 11078,truck 11079,deer 11080,horse 11081,bird 11082,frog 11083,horse 11084,bird 11085,dog 11086,cat 11087,frog 11088,truck 11089,cat 11090,dog 11091,deer 11092,truck 11093,deer 11094,frog 11095,frog 11096,cat 11097,deer 11098,truck 11099,airplane 11100,airplane 11101,dog 11102,bird 11103,frog 11104,automobile 11105,deer 11106,frog 11107,cat 11108,cat 11109,truck 11110,ship 11111,frog 11112,dog 11113,dog 11114,truck 11115,automobile 11116,cat 11117,cat 11118,horse 11119,truck 11120,automobile 11121,frog 11122,truck 11123,ship 11124,truck 11125,truck 11126,airplane 11127,airplane 11128,ship 11129,deer 11130,cat 11131,truck 11132,truck 11133,deer 11134,deer 11135,horse 11136,dog 11137,truck 11138,ship 11139,truck 11140,bird 11141,frog 11142,bird 11143,horse 11144,ship 11145,truck 11146,deer 11147,truck 11148,automobile 11149,automobile 11150,deer 11151,ship 11152,automobile 11153,deer 11154,frog 11155,horse 11156,frog 11157,dog 11158,cat 11159,truck 11160,airplane 11161,deer 11162,automobile 11163,deer 11164,cat 11165,truck 11166,ship 11167,dog 11168,horse 11169,cat 11170,truck 11171,horse 11172,ship 11173,ship 11174,frog 11175,horse 11176,airplane 11177,horse 11178,dog 11179,deer 11180,dog 11181,ship 11182,ship 11183,frog 11184,cat 11185,airplane 11186,dog 11187,airplane 11188,horse 11189,frog 11190,airplane 11191,deer 11192,frog 11193,cat 11194,horse 11195,deer 11196,automobile 11197,automobile 11198,horse 11199,truck 11200,truck 11201,truck 11202,frog 11203,truck 11204,automobile 11205,cat 11206,cat 11207,truck 11208,automobile 11209,deer 11210,dog 11211,truck 11212,deer 11213,horse 11214,truck 11215,deer 11216,dog 11217,deer 11218,horse 11219,frog 11220,deer 11221,airplane 11222,cat 11223,bird 11224,deer 11225,airplane 11226,horse 11227,frog 11228,automobile 11229,automobile 11230,frog 11231,frog 11232,deer 11233,frog 11234,dog 11235,dog 11236,deer 11237,bird 11238,truck 11239,ship 11240,truck 11241,dog 11242,truck 11243,truck 11244,airplane 11245,cat 11246,cat 11247,cat 11248,deer 11249,bird 11250,bird 11251,dog 11252,bird 11253,cat 11254,cat 11255,deer 11256,deer 11257,frog 11258,ship 11259,cat 11260,truck 11261,cat 11262,horse 11263,ship 11264,frog 11265,bird 11266,horse 11267,horse 11268,horse 11269,bird 11270,dog 11271,frog 11272,deer 11273,automobile 11274,cat 11275,frog 11276,deer 11277,frog 11278,cat 11279,dog 11280,dog 11281,deer 11282,frog 11283,truck 11284,ship 11285,bird 11286,cat 11287,deer 11288,deer 11289,frog 11290,bird 11291,dog 11292,frog 11293,cat 11294,automobile 11295,automobile 11296,dog 11297,deer 11298,airplane 11299,cat 11300,cat 11301,automobile 11302,deer 11303,dog 11304,frog 11305,truck 11306,bird 11307,bird 11308,ship 11309,deer 11310,horse 11311,truck 11312,bird 11313,bird 11314,cat 11315,bird 11316,horse 11317,ship 11318,horse 11319,deer 11320,horse 11321,truck 11322,ship 11323,ship 11324,dog 11325,horse 11326,bird 11327,airplane 11328,bird 11329,horse 11330,ship 11331,deer 11332,deer 11333,horse 11334,frog 11335,horse 11336,deer 11337,truck 11338,truck 11339,deer 11340,automobile 11341,airplane 11342,deer 11343,deer 11344,ship 11345,frog 11346,horse 11347,airplane 11348,deer 11349,automobile 11350,frog 11351,automobile 11352,bird 11353,truck 11354,automobile 11355,airplane 11356,airplane 11357,frog 11358,frog 11359,frog 11360,airplane 11361,dog 11362,dog 11363,horse 11364,horse 11365,truck 11366,cat 11367,truck 11368,frog 11369,cat 11370,truck 11371,airplane 11372,ship 11373,frog 11374,airplane 11375,truck 11376,ship 11377,automobile 11378,deer 11379,cat 11380,deer 11381,horse 11382,truck 11383,cat 11384,ship 11385,ship 11386,dog 11387,deer 11388,bird 11389,horse 11390,frog 11391,deer 11392,dog 11393,ship 11394,deer 11395,cat 11396,automobile 11397,dog 11398,horse 11399,dog 11400,horse 11401,bird 11402,frog 11403,horse 11404,truck 11405,frog 11406,deer 11407,ship 11408,bird 11409,ship 11410,bird 11411,ship 11412,dog 11413,horse 11414,ship 11415,dog 11416,horse 11417,bird 11418,truck 11419,horse 11420,deer 11421,deer 11422,bird 11423,bird 11424,airplane 11425,frog 11426,truck 11427,horse 11428,frog 11429,cat 11430,truck 11431,bird 11432,dog 11433,bird 11434,truck 11435,dog 11436,horse 11437,dog 11438,bird 11439,bird 11440,horse 11441,dog 11442,dog 11443,cat 11444,deer 11445,dog 11446,dog 11447,dog 11448,cat 11449,dog 11450,automobile 11451,dog 11452,deer 11453,horse 11454,ship 11455,airplane 11456,truck 11457,dog 11458,dog 11459,ship 11460,frog 11461,bird 11462,deer 11463,truck 11464,ship 11465,cat 11466,frog 11467,frog 11468,dog 11469,cat 11470,cat 11471,airplane 11472,dog 11473,bird 11474,airplane 11475,cat 11476,cat 11477,airplane 11478,horse 11479,truck 11480,frog 11481,cat 11482,frog 11483,frog 11484,automobile 11485,cat 11486,automobile 11487,truck 11488,bird 11489,ship 11490,horse 11491,truck 11492,automobile 11493,deer 11494,cat 11495,frog 11496,ship 11497,airplane 11498,frog 11499,deer 11500,truck 11501,dog 11502,cat 11503,frog 11504,bird 11505,horse 11506,ship 11507,bird 11508,cat 11509,cat 11510,airplane 11511,truck 11512,deer 11513,ship 11514,ship 11515,cat 11516,truck 11517,bird 11518,truck 11519,truck 11520,dog 11521,ship 11522,truck 11523,bird 11524,ship 11525,horse 11526,cat 11527,bird 11528,airplane 11529,deer 11530,frog 11531,cat 11532,deer 11533,airplane 11534,ship 11535,automobile 11536,horse 11537,automobile 11538,frog 11539,ship 11540,bird 11541,cat 11542,frog 11543,frog 11544,ship 11545,dog 11546,deer 11547,cat 11548,airplane 11549,deer 11550,cat 11551,dog 11552,airplane 11553,cat 11554,cat 11555,horse 11556,deer 11557,horse 11558,ship 11559,dog 11560,ship 11561,frog 11562,horse 11563,deer 11564,dog 11565,horse 11566,truck 11567,cat 11568,horse 11569,truck 11570,horse 11571,cat 11572,ship 11573,frog 11574,airplane 11575,horse 11576,deer 11577,deer 11578,cat 11579,dog 11580,cat 11581,cat 11582,ship 11583,horse 11584,horse 11585,frog 11586,deer 11587,deer 11588,dog 11589,deer 11590,dog 11591,truck 11592,frog 11593,cat 11594,cat 11595,ship 11596,airplane 11597,cat 11598,cat 11599,truck 11600,deer 11601,dog 11602,dog 11603,bird 11604,ship 11605,truck 11606,frog 11607,ship 11608,bird 11609,horse 11610,bird 11611,truck 11612,ship 11613,truck 11614,truck 11615,deer 11616,truck 11617,horse 11618,truck 11619,deer 11620,truck 11621,airplane 11622,ship 11623,dog 11624,deer 11625,automobile 11626,truck 11627,automobile 11628,bird 11629,ship 11630,truck 11631,airplane 11632,horse 11633,cat 11634,frog 11635,deer 11636,ship 11637,cat 11638,deer 11639,automobile 11640,airplane 11641,truck 11642,deer 11643,airplane 11644,airplane 11645,airplane 11646,cat 11647,automobile 11648,truck 11649,ship 11650,cat 11651,bird 11652,bird 11653,deer 11654,truck 11655,frog 11656,dog 11657,frog 11658,horse 11659,truck 11660,bird 11661,frog 11662,cat 11663,horse 11664,ship 11665,ship 11666,deer 11667,airplane 11668,frog 11669,bird 11670,airplane 11671,frog 11672,cat 11673,bird 11674,dog 11675,airplane 11676,ship 11677,airplane 11678,airplane 11679,airplane 11680,cat 11681,dog 11682,cat 11683,automobile 11684,frog 11685,deer 11686,deer 11687,horse 11688,cat 11689,automobile 11690,airplane 11691,dog 11692,frog 11693,dog 11694,horse 11695,frog 11696,bird 11697,frog 11698,dog 11699,frog 11700,deer 11701,ship 11702,frog 11703,dog 11704,ship 11705,deer 11706,airplane 11707,cat 11708,dog 11709,truck 11710,dog 11711,truck 11712,dog 11713,dog 11714,deer 11715,ship 11716,horse 11717,automobile 11718,bird 11719,cat 11720,dog 11721,dog 11722,bird 11723,cat 11724,dog 11725,deer 11726,deer 11727,dog 11728,airplane 11729,automobile 11730,ship 11731,truck 11732,bird 11733,cat 11734,dog 11735,dog 11736,bird 11737,frog 11738,horse 11739,ship 11740,deer 11741,dog 11742,automobile 11743,dog 11744,horse 11745,deer 11746,bird 11747,deer 11748,truck 11749,ship 11750,horse 11751,deer 11752,dog 11753,truck 11754,airplane 11755,horse 11756,deer 11757,airplane 11758,automobile 11759,cat 11760,frog 11761,horse 11762,airplane 11763,cat 11764,airplane 11765,bird 11766,frog 11767,ship 11768,cat 11769,ship 11770,deer 11771,truck 11772,truck 11773,automobile 11774,deer 11775,truck 11776,horse 11777,frog 11778,frog 11779,cat 11780,truck 11781,horse 11782,automobile 11783,dog 11784,deer 11785,airplane 11786,horse 11787,airplane 11788,dog 11789,cat 11790,airplane 11791,truck 11792,ship 11793,ship 11794,deer 11795,horse 11796,truck 11797,airplane 11798,frog 11799,automobile 11800,bird 11801,frog 11802,bird 11803,ship 11804,truck 11805,ship 11806,horse 11807,horse 11808,bird 11809,deer 11810,automobile 11811,ship 11812,airplane 11813,truck 11814,bird 11815,truck 11816,ship 11817,truck 11818,cat 11819,truck 11820,frog 11821,truck 11822,ship 11823,ship 11824,horse 11825,ship 11826,dog 11827,frog 11828,frog 11829,automobile 11830,horse 11831,ship 11832,cat 11833,dog 11834,truck 11835,cat 11836,ship 11837,deer 11838,cat 11839,airplane 11840,dog 11841,cat 11842,horse 11843,cat 11844,cat 11845,cat 11846,frog 11847,ship 11848,bird 11849,deer 11850,airplane 11851,horse 11852,ship 11853,cat 11854,horse 11855,airplane 11856,airplane 11857,deer 11858,dog 11859,dog 11860,horse 11861,truck 11862,truck 11863,ship 11864,bird 11865,horse 11866,ship 11867,frog 11868,ship 11869,bird 11870,automobile 11871,automobile 11872,cat 11873,airplane 11874,frog 11875,horse 11876,dog 11877,cat 11878,airplane 11879,cat 11880,deer 11881,frog 11882,dog 11883,automobile 11884,automobile 11885,bird 11886,cat 11887,ship 11888,horse 11889,frog 11890,horse 11891,cat 11892,automobile 11893,airplane 11894,horse 11895,airplane 11896,dog 11897,deer 11898,frog 11899,dog 11900,horse 11901,automobile 11902,ship 11903,frog 11904,truck 11905,deer 11906,cat 11907,cat 11908,cat 11909,airplane 11910,truck 11911,frog 11912,cat 11913,frog 11914,deer 11915,ship 11916,frog 11917,horse 11918,dog 11919,truck 11920,truck 11921,bird 11922,truck 11923,bird 11924,airplane 11925,ship 11926,cat 11927,horse 11928,frog 11929,bird 11930,frog 11931,bird 11932,dog 11933,ship 11934,airplane 11935,airplane 11936,frog 11937,bird 11938,horse 11939,ship 11940,airplane 11941,cat 11942,frog 11943,frog 11944,truck 11945,ship 11946,airplane 11947,truck 11948,airplane 11949,deer 11950,automobile 11951,dog 11952,automobile 11953,ship 11954,automobile 11955,automobile 11956,horse 11957,truck 11958,bird 11959,deer 11960,automobile 11961,frog 11962,frog 11963,dog 11964,bird 11965,truck 11966,frog 11967,cat 11968,deer 11969,horse 11970,frog 11971,airplane 11972,automobile 11973,ship 11974,cat 11975,frog 11976,airplane 11977,ship 11978,deer 11979,horse 11980,frog 11981,ship 11982,airplane 11983,cat 11984,deer 11985,bird 11986,dog 11987,ship 11988,automobile 11989,cat 11990,deer 11991,truck 11992,airplane 11993,cat 11994,ship 11995,deer 11996,ship 11997,cat 11998,bird 11999,truck 12000,frog 12001,dog 12002,ship 12003,airplane 12004,airplane 12005,cat 12006,automobile 12007,dog 12008,automobile 12009,horse 12010,truck 12011,ship 12012,dog 12013,deer 12014,cat 12015,bird 12016,cat 12017,dog 12018,ship 12019,truck 12020,cat 12021,deer 12022,dog 12023,airplane 12024,truck 12025,deer 12026,deer 12027,cat 12028,horse 12029,horse 12030,ship 12031,automobile 12032,horse 12033,airplane 12034,dog 12035,airplane 12036,bird 12037,horse 12038,ship 12039,frog 12040,horse 12041,automobile 12042,dog 12043,automobile 12044,airplane 12045,deer 12046,frog 12047,horse 12048,deer 12049,bird 12050,cat 12051,cat 12052,airplane 12053,cat 12054,cat 12055,dog 12056,truck 12057,dog 12058,airplane 12059,deer 12060,truck 12061,ship 12062,deer 12063,bird 12064,ship 12065,horse 12066,airplane 12067,truck 12068,airplane 12069,truck 12070,deer 12071,airplane 12072,horse 12073,truck 12074,horse 12075,deer 12076,deer 12077,dog 12078,dog 12079,airplane 12080,horse 12081,dog 12082,ship 12083,horse 12084,automobile 12085,horse 12086,deer 12087,airplane 12088,automobile 12089,airplane 12090,dog 12091,horse 12092,deer 12093,airplane 12094,ship 12095,horse 12096,dog 12097,truck 12098,horse 12099,ship 12100,cat 12101,automobile 12102,bird 12103,frog 12104,cat 12105,deer 12106,airplane 12107,ship 12108,cat 12109,frog 12110,horse 12111,bird 12112,automobile 12113,deer 12114,frog 12115,automobile 12116,automobile 12117,ship 12118,dog 12119,deer 12120,horse 12121,horse 12122,airplane 12123,dog 12124,truck 12125,ship 12126,automobile 12127,frog 12128,frog 12129,dog 12130,deer 12131,truck 12132,automobile 12133,automobile 12134,deer 12135,cat 12136,deer 12137,airplane 12138,ship 12139,cat 12140,truck 12141,ship 12142,bird 12143,ship 12144,deer 12145,dog 12146,deer 12147,deer 12148,airplane 12149,cat 12150,frog 12151,frog 12152,truck 12153,frog 12154,deer 12155,horse 12156,bird 12157,bird 12158,airplane 12159,deer 12160,frog 12161,cat 12162,cat 12163,ship 12164,bird 12165,deer 12166,bird 12167,bird 12168,truck 12169,frog 12170,truck 12171,bird 12172,deer 12173,cat 12174,cat 12175,deer 12176,airplane 12177,deer 12178,horse 12179,truck 12180,bird 12181,dog 12182,horse 12183,truck 12184,automobile 12185,airplane 12186,deer 12187,dog 12188,cat 12189,cat 12190,automobile 12191,frog 12192,cat 12193,dog 12194,deer 12195,cat 12196,cat 12197,dog 12198,dog 12199,frog 12200,truck 12201,airplane 12202,deer 12203,frog 12204,horse 12205,deer 12206,ship 12207,deer 12208,cat 12209,dog 12210,automobile 12211,deer 12212,horse 12213,frog 12214,airplane 12215,horse 12216,truck 12217,deer 12218,dog 12219,cat 12220,deer 12221,deer 12222,bird 12223,frog 12224,horse 12225,dog 12226,ship 12227,deer 12228,dog 12229,cat 12230,deer 12231,airplane 12232,cat 12233,dog 12234,horse 12235,airplane 12236,deer 12237,airplane 12238,truck 12239,bird 12240,ship 12241,frog 12242,airplane 12243,bird 12244,deer 12245,cat 12246,airplane 12247,frog 12248,truck 12249,airplane 12250,frog 12251,cat 12252,frog 12253,frog 12254,bird 12255,deer 12256,horse 12257,horse 12258,airplane 12259,frog 12260,frog 12261,frog 12262,frog 12263,automobile 12264,bird 12265,ship 12266,frog 12267,bird 12268,cat 12269,cat 12270,automobile 12271,frog 12272,frog 12273,deer 12274,frog 12275,cat 12276,dog 12277,airplane 12278,deer 12279,frog 12280,dog 12281,dog 12282,cat 12283,dog 12284,ship 12285,horse 12286,ship 12287,cat 12288,deer 12289,bird 12290,cat 12291,deer 12292,cat 12293,automobile 12294,automobile 12295,deer 12296,deer 12297,automobile 12298,airplane 12299,airplane 12300,frog 12301,truck 12302,horse 12303,ship 12304,airplane 12305,dog 12306,truck 12307,cat 12308,truck 12309,ship 12310,dog 12311,automobile 12312,airplane 12313,deer 12314,cat 12315,dog 12316,deer 12317,cat 12318,ship 12319,deer 12320,automobile 12321,dog 12322,horse 12323,automobile 12324,bird 12325,deer 12326,cat 12327,ship 12328,cat 12329,horse 12330,dog 12331,cat 12332,horse 12333,truck 12334,ship 12335,ship 12336,deer 12337,horse 12338,horse 12339,bird 12340,deer 12341,bird 12342,cat 12343,automobile 12344,bird 12345,deer 12346,bird 12347,frog 12348,bird 12349,cat 12350,frog 12351,bird 12352,truck 12353,automobile 12354,automobile 12355,horse 12356,bird 12357,horse 12358,frog 12359,airplane 12360,truck 12361,dog 12362,dog 12363,deer 12364,dog 12365,automobile 12366,cat 12367,automobile 12368,dog 12369,dog 12370,horse 12371,deer 12372,truck 12373,automobile 12374,horse 12375,bird 12376,deer 12377,ship 12378,frog 12379,deer 12380,deer 12381,frog 12382,airplane 12383,dog 12384,truck 12385,cat 12386,deer 12387,dog 12388,frog 12389,deer 12390,deer 12391,dog 12392,airplane 12393,truck 12394,truck 12395,deer 12396,cat 12397,cat 12398,automobile 12399,frog 12400,automobile 12401,cat 12402,frog 12403,airplane 12404,horse 12405,deer 12406,airplane 12407,cat 12408,horse 12409,horse 12410,frog 12411,frog 12412,cat 12413,frog 12414,airplane 12415,bird 12416,cat 12417,cat 12418,horse 12419,dog 12420,bird 12421,truck 12422,dog 12423,cat 12424,truck 12425,bird 12426,bird 12427,frog 12428,dog 12429,truck 12430,horse 12431,horse 12432,truck 12433,frog 12434,automobile 12435,horse 12436,automobile 12437,cat 12438,truck 12439,bird 12440,horse 12441,cat 12442,dog 12443,bird 12444,bird 12445,frog 12446,automobile 12447,dog 12448,horse 12449,ship 12450,airplane 12451,dog 12452,bird 12453,dog 12454,horse 12455,frog 12456,truck 12457,horse 12458,cat 12459,airplane 12460,frog 12461,truck 12462,cat 12463,truck 12464,automobile 12465,ship 12466,ship 12467,cat 12468,deer 12469,frog 12470,ship 12471,cat 12472,deer 12473,airplane 12474,dog 12475,frog 12476,automobile 12477,frog 12478,bird 12479,ship 12480,automobile 12481,cat 12482,dog 12483,cat 12484,deer 12485,horse 12486,bird 12487,dog 12488,horse 12489,truck 12490,deer 12491,deer 12492,airplane 12493,deer 12494,frog 12495,truck 12496,deer 12497,airplane 12498,automobile 12499,frog 12500,deer 12501,cat 12502,dog 12503,ship 12504,airplane 12505,truck 12506,deer 12507,truck 12508,truck 12509,frog 12510,bird 12511,dog 12512,airplane 12513,truck 12514,bird 12515,ship 12516,airplane 12517,airplane 12518,airplane 12519,ship 12520,truck 12521,ship 12522,cat 12523,automobile 12524,automobile 12525,deer 12526,deer 12527,cat 12528,bird 12529,dog 12530,airplane 12531,airplane 12532,horse 12533,ship 12534,horse 12535,deer 12536,deer 12537,horse 12538,ship 12539,frog 12540,airplane 12541,cat 12542,automobile 12543,truck 12544,deer 12545,ship 12546,deer 12547,dog 12548,frog 12549,ship 12550,ship 12551,truck 12552,horse 12553,dog 12554,cat 12555,deer 12556,automobile 12557,bird 12558,deer 12559,bird 12560,horse 12561,horse 12562,airplane 12563,automobile 12564,cat 12565,cat 12566,dog 12567,cat 12568,cat 12569,cat 12570,frog 12571,horse 12572,dog 12573,horse 12574,truck 12575,ship 12576,automobile 12577,cat 12578,frog 12579,ship 12580,frog 12581,frog 12582,dog 12583,truck 12584,truck 12585,deer 12586,frog 12587,bird 12588,frog 12589,horse 12590,automobile 12591,ship 12592,cat 12593,truck 12594,deer 12595,deer 12596,airplane 12597,horse 12598,airplane 12599,automobile 12600,truck 12601,cat 12602,automobile 12603,cat 12604,deer 12605,cat 12606,cat 12607,bird 12608,bird 12609,frog 12610,cat 12611,frog 12612,dog 12613,frog 12614,cat 12615,frog 12616,frog 12617,horse 12618,deer 12619,dog 12620,frog 12621,airplane 12622,frog 12623,cat 12624,dog 12625,automobile 12626,dog 12627,airplane 12628,cat 12629,ship 12630,deer 12631,cat 12632,deer 12633,horse 12634,dog 12635,airplane 12636,cat 12637,frog 12638,cat 12639,automobile 12640,ship 12641,frog 12642,cat 12643,airplane 12644,airplane 12645,frog 12646,deer 12647,dog 12648,frog 12649,horse 12650,horse 12651,deer 12652,bird 12653,automobile 12654,truck 12655,truck 12656,cat 12657,deer 12658,ship 12659,truck 12660,truck 12661,airplane 12662,dog 12663,bird 12664,frog 12665,cat 12666,bird 12667,truck 12668,deer 12669,bird 12670,truck 12671,ship 12672,horse 12673,cat 12674,dog 12675,horse 12676,deer 12677,airplane 12678,airplane 12679,automobile 12680,deer 12681,automobile 12682,ship 12683,ship 12684,dog 12685,truck 12686,automobile 12687,dog 12688,airplane 12689,cat 12690,deer 12691,automobile 12692,horse 12693,ship 12694,cat 12695,airplane 12696,frog 12697,horse 12698,horse 12699,truck 12700,cat 12701,cat 12702,cat 12703,deer 12704,dog 12705,truck 12706,automobile 12707,cat 12708,deer 12709,bird 12710,bird 12711,deer 12712,bird 12713,horse 12714,dog 12715,horse 12716,truck 12717,ship 12718,horse 12719,bird 12720,automobile 12721,deer 12722,dog 12723,cat 12724,horse 12725,dog 12726,deer 12727,bird 12728,ship 12729,dog 12730,airplane 12731,bird 12732,ship 12733,truck 12734,deer 12735,deer 12736,automobile 12737,automobile 12738,deer 12739,frog 12740,bird 12741,truck 12742,automobile 12743,dog 12744,automobile 12745,deer 12746,frog 12747,dog 12748,deer 12749,ship 12750,airplane 12751,truck 12752,bird 12753,truck 12754,truck 12755,horse 12756,dog 12757,ship 12758,ship 12759,deer 12760,automobile 12761,horse 12762,cat 12763,truck 12764,automobile 12765,frog 12766,cat 12767,deer 12768,bird 12769,truck 12770,automobile 12771,bird 12772,cat 12773,dog 12774,dog 12775,truck 12776,dog 12777,dog 12778,cat 12779,deer 12780,airplane 12781,horse 12782,dog 12783,dog 12784,airplane 12785,airplane 12786,cat 12787,deer 12788,truck 12789,horse 12790,bird 12791,cat 12792,deer 12793,airplane 12794,dog 12795,airplane 12796,frog 12797,dog 12798,truck 12799,cat 12800,deer 12801,dog 12802,bird 12803,horse 12804,ship 12805,deer 12806,frog 12807,bird 12808,airplane 12809,dog 12810,deer 12811,bird 12812,cat 12813,airplane 12814,airplane 12815,airplane 12816,deer 12817,truck 12818,deer 12819,deer 12820,frog 12821,cat 12822,bird 12823,ship 12824,deer 12825,cat 12826,frog 12827,deer 12828,truck 12829,frog 12830,airplane 12831,cat 12832,truck 12833,automobile 12834,truck 12835,cat 12836,cat 12837,automobile 12838,automobile 12839,cat 12840,airplane 12841,dog 12842,truck 12843,dog 12844,frog 12845,cat 12846,dog 12847,dog 12848,deer 12849,cat 12850,deer 12851,cat 12852,frog 12853,cat 12854,airplane 12855,deer 12856,airplane 12857,frog 12858,frog 12859,truck 12860,bird 12861,dog 12862,cat 12863,truck 12864,automobile 12865,ship 12866,automobile 12867,horse 12868,dog 12869,frog 12870,cat 12871,ship 12872,automobile 12873,dog 12874,bird 12875,cat 12876,horse 12877,automobile 12878,automobile 12879,ship 12880,bird 12881,airplane 12882,automobile 12883,airplane 12884,frog 12885,horse 12886,deer 12887,deer 12888,bird 12889,frog 12890,deer 12891,bird 12892,truck 12893,ship 12894,cat 12895,bird 12896,airplane 12897,airplane 12898,deer 12899,bird 12900,deer 12901,cat 12902,dog 12903,automobile 12904,bird 12905,frog 12906,cat 12907,bird 12908,bird 12909,ship 12910,truck 12911,truck 12912,airplane 12913,cat 12914,frog 12915,deer 12916,horse 12917,cat 12918,deer 12919,ship 12920,ship 12921,dog 12922,ship 12923,automobile 12924,cat 12925,truck 12926,horse 12927,cat 12928,ship 12929,truck 12930,deer 12931,cat 12932,airplane 12933,cat 12934,horse 12935,frog 12936,frog 12937,deer 12938,bird 12939,horse 12940,cat 12941,bird 12942,bird 12943,frog 12944,dog 12945,frog 12946,truck 12947,frog 12948,dog 12949,frog 12950,cat 12951,deer 12952,bird 12953,automobile 12954,frog 12955,automobile 12956,bird 12957,deer 12958,deer 12959,ship 12960,cat 12961,cat 12962,frog 12963,cat 12964,frog 12965,deer 12966,cat 12967,ship 12968,dog 12969,airplane 12970,truck 12971,horse 12972,bird 12973,automobile 12974,frog 12975,airplane 12976,truck 12977,dog 12978,dog 12979,deer 12980,horse 12981,cat 12982,airplane 12983,ship 12984,horse 12985,truck 12986,dog 12987,airplane 12988,horse 12989,airplane 12990,automobile 12991,dog 12992,deer 12993,bird 12994,deer 12995,cat 12996,ship 12997,airplane 12998,bird 12999,airplane 13000,cat 13001,cat 13002,dog 13003,automobile 13004,dog 13005,horse 13006,bird 13007,horse 13008,truck 13009,airplane 13010,deer 13011,deer 13012,cat 13013,airplane 13014,ship 13015,ship 13016,ship 13017,truck 13018,cat 13019,deer 13020,cat 13021,deer 13022,ship 13023,deer 13024,bird 13025,dog 13026,dog 13027,bird 13028,automobile 13029,bird 13030,ship 13031,horse 13032,truck 13033,automobile 13034,automobile 13035,cat 13036,automobile 13037,bird 13038,cat 13039,ship 13040,horse 13041,ship 13042,deer 13043,frog 13044,frog 13045,airplane 13046,airplane 13047,frog 13048,frog 13049,deer 13050,deer 13051,airplane 13052,deer 13053,horse 13054,deer 13055,frog 13056,automobile 13057,horse 13058,deer 13059,bird 13060,bird 13061,airplane 13062,deer 13063,frog 13064,dog 13065,dog 13066,truck 13067,cat 13068,dog 13069,bird 13070,horse 13071,bird 13072,horse 13073,frog 13074,horse 13075,horse 13076,deer 13077,dog 13078,horse 13079,frog 13080,truck 13081,truck 13082,bird 13083,horse 13084,bird 13085,cat 13086,cat 13087,automobile 13088,frog 13089,truck 13090,cat 13091,cat 13092,dog 13093,bird 13094,truck 13095,automobile 13096,frog 13097,airplane 13098,truck 13099,frog 13100,airplane 13101,cat 13102,airplane 13103,deer 13104,ship 13105,horse 13106,airplane 13107,dog 13108,dog 13109,dog 13110,truck 13111,cat 13112,horse 13113,airplane 13114,bird 13115,horse 13116,cat 13117,truck 13118,deer 13119,dog 13120,cat 13121,dog 13122,airplane 13123,deer 13124,deer 13125,frog 13126,automobile 13127,deer 13128,truck 13129,horse 13130,cat 13131,cat 13132,cat 13133,automobile 13134,automobile 13135,automobile 13136,deer 13137,airplane 13138,deer 13139,airplane 13140,bird 13141,bird 13142,ship 13143,bird 13144,dog 13145,airplane 13146,truck 13147,airplane 13148,cat 13149,dog 13150,truck 13151,automobile 13152,cat 13153,bird 13154,deer 13155,deer 13156,automobile 13157,cat 13158,horse 13159,cat 13160,ship 13161,automobile 13162,airplane 13163,automobile 13164,horse 13165,bird 13166,dog 13167,airplane 13168,cat 13169,horse 13170,ship 13171,deer 13172,horse 13173,horse 13174,frog 13175,airplane 13176,dog 13177,airplane 13178,bird 13179,bird 13180,deer 13181,truck 13182,ship 13183,deer 13184,dog 13185,truck 13186,bird 13187,deer 13188,truck 13189,cat 13190,automobile 13191,dog 13192,ship 13193,cat 13194,deer 13195,frog 13196,automobile 13197,automobile 13198,horse 13199,horse 13200,horse 13201,ship 13202,frog 13203,bird 13204,truck 13205,cat 13206,dog 13207,automobile 13208,deer 13209,dog 13210,automobile 13211,dog 13212,bird 13213,dog 13214,frog 13215,deer 13216,deer 13217,automobile 13218,dog 13219,cat 13220,ship 13221,truck 13222,airplane 13223,airplane 13224,truck 13225,deer 13226,frog 13227,airplane 13228,dog 13229,bird 13230,ship 13231,bird 13232,bird 13233,automobile 13234,truck 13235,frog 13236,dog 13237,ship 13238,cat 13239,airplane 13240,truck 13241,deer 13242,truck 13243,horse 13244,automobile 13245,frog 13246,truck 13247,dog 13248,truck 13249,frog 13250,frog 13251,truck 13252,deer 13253,automobile 13254,ship 13255,dog 13256,deer 13257,horse 13258,deer 13259,truck 13260,deer 13261,deer 13262,deer 13263,truck 13264,airplane 13265,dog 13266,truck 13267,truck 13268,truck 13269,cat 13270,horse 13271,truck 13272,horse 13273,airplane 13274,ship 13275,dog 13276,airplane 13277,horse 13278,horse 13279,cat 13280,cat 13281,truck 13282,airplane 13283,frog 13284,cat 13285,frog 13286,horse 13287,horse 13288,automobile 13289,deer 13290,frog 13291,airplane 13292,deer 13293,cat 13294,deer 13295,dog 13296,horse 13297,dog 13298,airplane 13299,automobile 13300,deer 13301,frog 13302,airplane 13303,airplane 13304,frog 13305,horse 13306,cat 13307,horse 13308,ship 13309,airplane 13310,horse 13311,deer 13312,cat 13313,bird 13314,airplane 13315,ship 13316,deer 13317,frog 13318,cat 13319,automobile 13320,deer 13321,truck 13322,airplane 13323,dog 13324,bird 13325,airplane 13326,cat 13327,frog 13328,truck 13329,dog 13330,truck 13331,cat 13332,frog 13333,airplane 13334,airplane 13335,cat 13336,ship 13337,dog 13338,cat 13339,horse 13340,bird 13341,deer 13342,automobile 13343,deer 13344,truck 13345,frog 13346,horse 13347,horse 13348,deer 13349,cat 13350,airplane 13351,airplane 13352,ship 13353,bird 13354,truck 13355,dog 13356,deer 13357,cat 13358,cat 13359,automobile 13360,cat 13361,truck 13362,automobile 13363,dog 13364,ship 13365,cat 13366,bird 13367,bird 13368,bird 13369,truck 13370,deer 13371,deer 13372,automobile 13373,horse 13374,frog 13375,airplane 13376,cat 13377,cat 13378,bird 13379,cat 13380,horse 13381,bird 13382,horse 13383,cat 13384,horse 13385,frog 13386,bird 13387,cat 13388,deer 13389,automobile 13390,deer 13391,cat 13392,ship 13393,cat 13394,truck 13395,automobile 13396,dog 13397,horse 13398,truck 13399,dog 13400,horse 13401,airplane 13402,deer 13403,airplane 13404,dog 13405,frog 13406,deer 13407,airplane 13408,bird 13409,deer 13410,ship 13411,horse 13412,frog 13413,cat 13414,deer 13415,airplane 13416,cat 13417,cat 13418,deer 13419,truck 13420,cat 13421,ship 13422,automobile 13423,horse 13424,horse 13425,airplane 13426,bird 13427,automobile 13428,truck 13429,horse 13430,cat 13431,dog 13432,cat 13433,deer 13434,cat 13435,truck 13436,frog 13437,deer 13438,automobile 13439,truck 13440,airplane 13441,airplane 13442,cat 13443,ship 13444,frog 13445,truck 13446,automobile 13447,horse 13448,dog 13449,ship 13450,airplane 13451,truck 13452,ship 13453,deer 13454,cat 13455,deer 13456,deer 13457,ship 13458,frog 13459,deer 13460,frog 13461,dog 13462,cat 13463,cat 13464,deer 13465,dog 13466,cat 13467,truck 13468,deer 13469,deer 13470,automobile 13471,airplane 13472,frog 13473,truck 13474,cat 13475,bird 13476,ship 13477,airplane 13478,horse 13479,cat 13480,truck 13481,deer 13482,bird 13483,deer 13484,cat 13485,airplane 13486,bird 13487,deer 13488,ship 13489,bird 13490,horse 13491,truck 13492,cat 13493,horse 13494,frog 13495,truck 13496,truck 13497,bird 13498,frog 13499,airplane 13500,dog 13501,bird 13502,ship 13503,horse 13504,horse 13505,airplane 13506,cat 13507,dog 13508,deer 13509,cat 13510,cat 13511,horse 13512,dog 13513,frog 13514,horse 13515,truck 13516,ship 13517,cat 13518,frog 13519,cat 13520,deer 13521,airplane 13522,dog 13523,horse 13524,cat 13525,airplane 13526,airplane 13527,bird 13528,airplane 13529,bird 13530,horse 13531,cat 13532,airplane 13533,automobile 13534,truck 13535,frog 13536,deer 13537,dog 13538,frog 13539,horse 13540,airplane 13541,truck 13542,ship 13543,cat 13544,deer 13545,truck 13546,automobile 13547,dog 13548,automobile 13549,truck 13550,cat 13551,cat 13552,deer 13553,deer 13554,horse 13555,bird 13556,bird 13557,horse 13558,dog 13559,horse 13560,ship 13561,truck 13562,bird 13563,ship 13564,dog 13565,dog 13566,frog 13567,ship 13568,frog 13569,cat 13570,frog 13571,cat 13572,bird 13573,airplane 13574,horse 13575,cat 13576,horse 13577,dog 13578,ship 13579,frog 13580,deer 13581,frog 13582,cat 13583,bird 13584,deer 13585,frog 13586,airplane 13587,deer 13588,horse 13589,deer 13590,frog 13591,truck 13592,ship 13593,horse 13594,ship 13595,horse 13596,automobile 13597,frog 13598,frog 13599,cat 13600,deer 13601,bird 13602,cat 13603,ship 13604,dog 13605,horse 13606,horse 13607,cat 13608,bird 13609,bird 13610,ship 13611,cat 13612,frog 13613,airplane 13614,cat 13615,frog 13616,dog 13617,ship 13618,frog 13619,dog 13620,truck 13621,airplane 13622,horse 13623,cat 13624,airplane 13625,bird 13626,frog 13627,cat 13628,airplane 13629,deer 13630,dog 13631,horse 13632,bird 13633,bird 13634,automobile 13635,dog 13636,horse 13637,dog 13638,ship 13639,ship 13640,bird 13641,truck 13642,truck 13643,horse 13644,cat 13645,horse 13646,horse 13647,frog 13648,bird 13649,dog 13650,automobile 13651,horse 13652,frog 13653,cat 13654,deer 13655,truck 13656,ship 13657,automobile 13658,dog 13659,deer 13660,ship 13661,airplane 13662,cat 13663,horse 13664,cat 13665,truck 13666,cat 13667,bird 13668,frog 13669,dog 13670,automobile 13671,truck 13672,cat 13673,truck 13674,deer 13675,deer 13676,ship 13677,deer 13678,airplane 13679,truck 13680,frog 13681,dog 13682,truck 13683,frog 13684,ship 13685,bird 13686,automobile 13687,truck 13688,automobile 13689,airplane 13690,airplane 13691,deer 13692,truck 13693,horse 13694,frog 13695,airplane 13696,automobile 13697,cat 13698,horse 13699,deer 13700,horse 13701,truck 13702,deer 13703,automobile 13704,automobile 13705,cat 13706,horse 13707,truck 13708,cat 13709,dog 13710,cat 13711,deer 13712,ship 13713,truck 13714,bird 13715,airplane 13716,ship 13717,automobile 13718,cat 13719,ship 13720,horse 13721,cat 13722,cat 13723,frog 13724,deer 13725,truck 13726,ship 13727,deer 13728,cat 13729,airplane 13730,deer 13731,horse 13732,automobile 13733,frog 13734,cat 13735,deer 13736,dog 13737,dog 13738,deer 13739,bird 13740,airplane 13741,truck 13742,frog 13743,truck 13744,ship 13745,dog 13746,airplane 13747,deer 13748,bird 13749,frog 13750,deer 13751,automobile 13752,ship 13753,cat 13754,airplane 13755,bird 13756,deer 13757,bird 13758,automobile 13759,horse 13760,frog 13761,truck 13762,airplane 13763,airplane 13764,truck 13765,frog 13766,ship 13767,frog 13768,cat 13769,truck 13770,deer 13771,horse 13772,automobile 13773,cat 13774,frog 13775,cat 13776,frog 13777,cat 13778,deer 13779,dog 13780,dog 13781,deer 13782,dog 13783,ship 13784,ship 13785,truck 13786,airplane 13787,dog 13788,bird 13789,airplane 13790,truck 13791,truck 13792,airplane 13793,automobile 13794,cat 13795,truck 13796,cat 13797,truck 13798,deer 13799,automobile 13800,deer 13801,cat 13802,automobile 13803,frog 13804,cat 13805,bird 13806,horse 13807,airplane 13808,dog 13809,frog 13810,frog 13811,automobile 13812,truck 13813,deer 13814,deer 13815,deer 13816,cat 13817,cat 13818,dog 13819,frog 13820,deer 13821,airplane 13822,frog 13823,truck 13824,automobile 13825,horse 13826,frog 13827,truck 13828,deer 13829,dog 13830,truck 13831,cat 13832,frog 13833,cat 13834,deer 13835,ship 13836,automobile 13837,automobile 13838,cat 13839,horse 13840,horse 13841,deer 13842,horse 13843,cat 13844,bird 13845,horse 13846,deer 13847,truck 13848,bird 13849,airplane 13850,truck 13851,automobile 13852,dog 13853,automobile 13854,horse 13855,truck 13856,bird 13857,deer 13858,frog 13859,ship 13860,automobile 13861,cat 13862,cat 13863,horse 13864,dog 13865,airplane 13866,dog 13867,cat 13868,deer 13869,bird 13870,deer 13871,airplane 13872,cat 13873,bird 13874,automobile 13875,bird 13876,cat 13877,cat 13878,deer 13879,automobile 13880,cat 13881,truck 13882,frog 13883,bird 13884,dog 13885,dog 13886,horse 13887,dog 13888,ship 13889,deer 13890,cat 13891,truck 13892,airplane 13893,cat 13894,deer 13895,deer 13896,deer 13897,cat 13898,deer 13899,automobile 13900,truck 13901,cat 13902,deer 13903,horse 13904,frog 13905,dog 13906,frog 13907,ship 13908,horse 13909,airplane 13910,cat 13911,dog 13912,ship 13913,bird 13914,deer 13915,frog 13916,horse 13917,airplane 13918,truck 13919,truck 13920,cat 13921,cat 13922,bird 13923,airplane 13924,automobile 13925,bird 13926,ship 13927,deer 13928,automobile 13929,dog 13930,frog 13931,dog 13932,frog 13933,cat 13934,horse 13935,automobile 13936,frog 13937,ship 13938,truck 13939,cat 13940,horse 13941,cat 13942,dog 13943,airplane 13944,automobile 13945,deer 13946,cat 13947,ship 13948,ship 13949,automobile 13950,frog 13951,truck 13952,truck 13953,frog 13954,dog 13955,truck 13956,frog 13957,deer 13958,truck 13959,dog 13960,cat 13961,horse 13962,bird 13963,cat 13964,automobile 13965,cat 13966,horse 13967,horse 13968,airplane 13969,truck 13970,truck 13971,deer 13972,cat 13973,deer 13974,frog 13975,truck 13976,frog 13977,truck 13978,bird 13979,automobile 13980,horse 13981,horse 13982,truck 13983,ship 13984,automobile 13985,cat 13986,horse 13987,cat 13988,frog 13989,frog 13990,truck 13991,horse 13992,truck 13993,airplane 13994,frog 13995,truck 13996,cat 13997,cat 13998,airplane 13999,deer 14000,horse 14001,automobile 14002,dog 14003,horse 14004,dog 14005,automobile 14006,automobile 14007,airplane 14008,cat 14009,frog 14010,bird 14011,cat 14012,airplane 14013,automobile 14014,truck 14015,deer 14016,ship 14017,cat 14018,truck 14019,airplane 14020,ship 14021,bird 14022,dog 14023,cat 14024,horse 14025,airplane 14026,truck 14027,automobile 14028,deer 14029,cat 14030,truck 14031,ship 14032,truck 14033,ship 14034,frog 14035,bird 14036,airplane 14037,deer 14038,airplane 14039,frog 14040,deer 14041,automobile 14042,cat 14043,frog 14044,bird 14045,truck 14046,deer 14047,deer 14048,automobile 14049,airplane 14050,dog 14051,horse 14052,cat 14053,dog 14054,airplane 14055,horse 14056,automobile 14057,dog 14058,truck 14059,ship 14060,ship 14061,dog 14062,dog 14063,horse 14064,dog 14065,bird 14066,deer 14067,bird 14068,ship 14069,automobile 14070,cat 14071,frog 14072,truck 14073,ship 14074,airplane 14075,bird 14076,frog 14077,airplane 14078,horse 14079,automobile 14080,cat 14081,bird 14082,ship 14083,cat 14084,truck 14085,airplane 14086,dog 14087,cat 14088,horse 14089,frog 14090,ship 14091,cat 14092,cat 14093,truck 14094,cat 14095,deer 14096,truck 14097,deer 14098,automobile 14099,airplane 14100,horse 14101,automobile 14102,cat 14103,cat 14104,ship 14105,ship 14106,cat 14107,truck 14108,bird 14109,horse 14110,frog 14111,horse 14112,cat 14113,horse 14114,horse 14115,truck 14116,truck 14117,deer 14118,horse 14119,deer 14120,automobile 14121,horse 14122,ship 14123,truck 14124,frog 14125,cat 14126,frog 14127,horse 14128,dog 14129,dog 14130,horse 14131,frog 14132,dog 14133,airplane 14134,ship 14135,dog 14136,cat 14137,deer 14138,dog 14139,horse 14140,ship 14141,bird 14142,truck 14143,deer 14144,airplane 14145,truck 14146,frog 14147,cat 14148,bird 14149,truck 14150,horse 14151,dog 14152,truck 14153,ship 14154,cat 14155,truck 14156,truck 14157,frog 14158,deer 14159,bird 14160,bird 14161,truck 14162,cat 14163,airplane 14164,cat 14165,airplane 14166,ship 14167,bird 14168,automobile 14169,cat 14170,dog 14171,cat 14172,cat 14173,automobile 14174,horse 14175,cat 14176,truck 14177,cat 14178,bird 14179,ship 14180,deer 14181,dog 14182,cat 14183,deer 14184,deer 14185,bird 14186,truck 14187,frog 14188,frog 14189,cat 14190,airplane 14191,deer 14192,bird 14193,airplane 14194,cat 14195,horse 14196,cat 14197,frog 14198,horse 14199,deer 14200,automobile 14201,ship 14202,truck 14203,dog 14204,dog 14205,automobile 14206,frog 14207,horse 14208,deer 14209,horse 14210,horse 14211,airplane 14212,bird 14213,frog 14214,bird 14215,horse 14216,airplane 14217,cat 14218,dog 14219,bird 14220,cat 14221,horse 14222,cat 14223,ship 14224,truck 14225,deer 14226,ship 14227,truck 14228,ship 14229,deer 14230,horse 14231,deer 14232,ship 14233,frog 14234,truck 14235,frog 14236,deer 14237,deer 14238,truck 14239,cat 14240,ship 14241,airplane 14242,horse 14243,dog 14244,bird 14245,dog 14246,cat 14247,horse 14248,deer 14249,dog 14250,ship 14251,truck 14252,horse 14253,bird 14254,truck 14255,ship 14256,deer 14257,cat 14258,deer 14259,frog 14260,automobile 14261,automobile 14262,airplane 14263,dog 14264,ship 14265,cat 14266,cat 14267,ship 14268,ship 14269,truck 14270,bird 14271,ship 14272,deer 14273,truck 14274,dog 14275,airplane 14276,frog 14277,cat 14278,truck 14279,truck 14280,horse 14281,deer 14282,deer 14283,cat 14284,ship 14285,automobile 14286,cat 14287,airplane 14288,horse 14289,cat 14290,deer 14291,cat 14292,deer 14293,horse 14294,bird 14295,airplane 14296,cat 14297,frog 14298,cat 14299,horse 14300,horse 14301,truck 14302,dog 14303,horse 14304,airplane 14305,bird 14306,deer 14307,dog 14308,airplane 14309,bird 14310,horse 14311,bird 14312,frog 14313,frog 14314,deer 14315,ship 14316,cat 14317,dog 14318,horse 14319,truck 14320,bird 14321,bird 14322,ship 14323,deer 14324,ship 14325,bird 14326,automobile 14327,cat 14328,deer 14329,automobile 14330,dog 14331,automobile 14332,dog 14333,horse 14334,horse 14335,truck 14336,bird 14337,cat 14338,deer 14339,deer 14340,bird 14341,dog 14342,automobile 14343,bird 14344,truck 14345,horse 14346,truck 14347,frog 14348,frog 14349,ship 14350,cat 14351,airplane 14352,truck 14353,automobile 14354,horse 14355,frog 14356,ship 14357,horse 14358,horse 14359,bird 14360,frog 14361,dog 14362,frog 14363,airplane 14364,bird 14365,ship 14366,bird 14367,cat 14368,horse 14369,dog 14370,horse 14371,bird 14372,ship 14373,dog 14374,automobile 14375,bird 14376,frog 14377,airplane 14378,deer 14379,bird 14380,truck 14381,airplane 14382,cat 14383,cat 14384,airplane 14385,truck 14386,bird 14387,horse 14388,cat 14389,deer 14390,dog 14391,horse 14392,cat 14393,bird 14394,airplane 14395,ship 14396,truck 14397,bird 14398,deer 14399,bird 14400,deer 14401,ship 14402,frog 14403,deer 14404,ship 14405,horse 14406,dog 14407,airplane 14408,truck 14409,airplane 14410,ship 14411,horse 14412,deer 14413,bird 14414,bird 14415,bird 14416,bird 14417,automobile 14418,dog 14419,dog 14420,cat 14421,deer 14422,frog 14423,frog 14424,deer 14425,truck 14426,horse 14427,deer 14428,dog 14429,horse 14430,dog 14431,deer 14432,frog 14433,deer 14434,truck 14435,dog 14436,deer 14437,horse 14438,airplane 14439,truck 14440,automobile 14441,ship 14442,ship 14443,automobile 14444,frog 14445,horse 14446,bird 14447,automobile 14448,horse 14449,frog 14450,airplane 14451,deer 14452,frog 14453,automobile 14454,truck 14455,ship 14456,airplane 14457,frog 14458,frog 14459,automobile 14460,bird 14461,truck 14462,automobile 14463,truck 14464,ship 14465,cat 14466,ship 14467,frog 14468,cat 14469,deer 14470,cat 14471,dog 14472,deer 14473,horse 14474,deer 14475,bird 14476,dog 14477,truck 14478,truck 14479,dog 14480,dog 14481,bird 14482,cat 14483,truck 14484,airplane 14485,automobile 14486,truck 14487,deer 14488,cat 14489,bird 14490,dog 14491,cat 14492,frog 14493,deer 14494,cat 14495,deer 14496,truck 14497,cat 14498,horse 14499,dog 14500,airplane 14501,horse 14502,truck 14503,automobile 14504,frog 14505,deer 14506,airplane 14507,deer 14508,ship 14509,cat 14510,automobile 14511,ship 14512,ship 14513,frog 14514,ship 14515,cat 14516,dog 14517,horse 14518,dog 14519,ship 14520,truck 14521,deer 14522,dog 14523,cat 14524,cat 14525,frog 14526,truck 14527,horse 14528,deer 14529,frog 14530,frog 14531,horse 14532,truck 14533,cat 14534,airplane 14535,deer 14536,automobile 14537,truck 14538,ship 14539,airplane 14540,ship 14541,dog 14542,truck 14543,airplane 14544,truck 14545,deer 14546,dog 14547,cat 14548,truck 14549,airplane 14550,dog 14551,airplane 14552,ship 14553,cat 14554,cat 14555,dog 14556,ship 14557,truck 14558,bird 14559,bird 14560,cat 14561,ship 14562,ship 14563,ship 14564,bird 14565,frog 14566,automobile 14567,frog 14568,cat 14569,frog 14570,deer 14571,cat 14572,dog 14573,frog 14574,automobile 14575,automobile 14576,automobile 14577,cat 14578,cat 14579,dog 14580,bird 14581,deer 14582,cat 14583,horse 14584,ship 14585,truck 14586,frog 14587,horse 14588,bird 14589,ship 14590,frog 14591,cat 14592,dog 14593,deer 14594,bird 14595,deer 14596,ship 14597,horse 14598,bird 14599,frog 14600,cat 14601,ship 14602,ship 14603,cat 14604,bird 14605,airplane 14606,frog 14607,dog 14608,horse 14609,truck 14610,dog 14611,horse 14612,truck 14613,frog 14614,cat 14615,horse 14616,dog 14617,horse 14618,ship 14619,horse 14620,cat 14621,automobile 14622,truck 14623,automobile 14624,deer 14625,deer 14626,deer 14627,horse 14628,deer 14629,cat 14630,truck 14631,airplane 14632,cat 14633,automobile 14634,deer 14635,bird 14636,ship 14637,horse 14638,deer 14639,ship 14640,truck 14641,cat 14642,bird 14643,frog 14644,dog 14645,frog 14646,bird 14647,bird 14648,frog 14649,frog 14650,dog 14651,dog 14652,frog 14653,horse 14654,cat 14655,automobile 14656,cat 14657,horse 14658,frog 14659,cat 14660,automobile 14661,automobile 14662,dog 14663,frog 14664,airplane 14665,dog 14666,frog 14667,deer 14668,ship 14669,airplane 14670,ship 14671,cat 14672,horse 14673,frog 14674,airplane 14675,frog 14676,horse 14677,truck 14678,automobile 14679,frog 14680,cat 14681,automobile 14682,airplane 14683,frog 14684,frog 14685,bird 14686,cat 14687,cat 14688,ship 14689,deer 14690,frog 14691,frog 14692,bird 14693,dog 14694,cat 14695,bird 14696,bird 14697,cat 14698,dog 14699,bird 14700,deer 14701,dog 14702,horse 14703,dog 14704,horse 14705,deer 14706,horse 14707,cat 14708,deer 14709,horse 14710,truck 14711,truck 14712,dog 14713,dog 14714,frog 14715,frog 14716,airplane 14717,airplane 14718,horse 14719,deer 14720,ship 14721,airplane 14722,truck 14723,cat 14724,dog 14725,deer 14726,cat 14727,airplane 14728,ship 14729,automobile 14730,frog 14731,frog 14732,ship 14733,ship 14734,bird 14735,dog 14736,frog 14737,airplane 14738,truck 14739,deer 14740,ship 14741,airplane 14742,automobile 14743,dog 14744,bird 14745,airplane 14746,airplane 14747,cat 14748,ship 14749,horse 14750,ship 14751,horse 14752,ship 14753,bird 14754,deer 14755,horse 14756,ship 14757,horse 14758,bird 14759,automobile 14760,cat 14761,frog 14762,horse 14763,bird 14764,automobile 14765,dog 14766,deer 14767,ship 14768,deer 14769,cat 14770,ship 14771,airplane 14772,frog 14773,ship 14774,airplane 14775,deer 14776,ship 14777,deer 14778,cat 14779,bird 14780,horse 14781,horse 14782,frog 14783,bird 14784,dog 14785,bird 14786,dog 14787,deer 14788,frog 14789,frog 14790,automobile 14791,truck 14792,ship 14793,ship 14794,ship 14795,dog 14796,ship 14797,deer 14798,frog 14799,truck 14800,dog 14801,dog 14802,frog 14803,dog 14804,cat 14805,airplane 14806,bird 14807,deer 14808,cat 14809,automobile 14810,truck 14811,deer 14812,truck 14813,bird 14814,frog 14815,dog 14816,deer 14817,deer 14818,horse 14819,truck 14820,cat 14821,truck 14822,airplane 14823,ship 14824,automobile 14825,frog 14826,cat 14827,cat 14828,cat 14829,ship 14830,frog 14831,ship 14832,horse 14833,airplane 14834,bird 14835,cat 14836,frog 14837,automobile 14838,deer 14839,automobile 14840,frog 14841,truck 14842,airplane 14843,dog 14844,airplane 14845,horse 14846,cat 14847,ship 14848,airplane 14849,horse 14850,airplane 14851,horse 14852,horse 14853,airplane 14854,dog 14855,horse 14856,deer 14857,truck 14858,frog 14859,airplane 14860,automobile 14861,bird 14862,airplane 14863,bird 14864,airplane 14865,deer 14866,airplane 14867,frog 14868,cat 14869,automobile 14870,automobile 14871,frog 14872,bird 14873,frog 14874,deer 14875,dog 14876,deer 14877,horse 14878,bird 14879,dog 14880,automobile 14881,bird 14882,automobile 14883,automobile 14884,cat 14885,cat 14886,horse 14887,dog 14888,ship 14889,bird 14890,frog 14891,deer 14892,airplane 14893,truck 14894,automobile 14895,frog 14896,bird 14897,ship 14898,truck 14899,dog 14900,frog 14901,cat 14902,deer 14903,horse 14904,dog 14905,cat 14906,bird 14907,automobile 14908,frog 14909,ship 14910,horse 14911,truck 14912,automobile 14913,horse 14914,deer 14915,ship 14916,cat 14917,horse 14918,dog 14919,airplane 14920,cat 14921,deer 14922,dog 14923,truck 14924,airplane 14925,truck 14926,horse 14927,horse 14928,truck 14929,ship 14930,automobile 14931,frog 14932,deer 14933,frog 14934,frog 14935,cat 14936,bird 14937,airplane 14938,ship 14939,horse 14940,deer 14941,airplane 14942,dog 14943,truck 14944,automobile 14945,dog 14946,deer 14947,bird 14948,frog 14949,truck 14950,truck 14951,horse 14952,bird 14953,airplane 14954,horse 14955,horse 14956,dog 14957,ship 14958,truck 14959,ship 14960,cat 14961,dog 14962,dog 14963,deer 14964,cat 14965,cat 14966,horse 14967,dog 14968,cat 14969,horse 14970,deer 14971,truck 14972,frog 14973,cat 14974,bird 14975,cat 14976,dog 14977,deer 14978,dog 14979,truck 14980,frog 14981,ship 14982,automobile 14983,dog 14984,airplane 14985,bird 14986,ship 14987,deer 14988,cat 14989,ship 14990,deer 14991,horse 14992,ship 14993,horse 14994,automobile 14995,truck 14996,cat 14997,ship 14998,deer 14999,frog 15000,airplane 15001,ship 15002,deer 15003,cat 15004,ship 15005,deer 15006,deer 15007,frog 15008,horse 15009,frog 15010,frog 15011,dog 15012,horse 15013,cat 15014,horse 15015,cat 15016,deer 15017,truck 15018,dog 15019,truck 15020,ship 15021,frog 15022,frog 15023,cat 15024,horse 15025,frog 15026,frog 15027,airplane 15028,cat 15029,truck 15030,dog 15031,airplane 15032,airplane 15033,cat 15034,truck 15035,deer 15036,deer 15037,airplane 15038,cat 15039,horse 15040,truck 15041,ship 15042,dog 15043,frog 15044,airplane 15045,automobile 15046,cat 15047,automobile 15048,automobile 15049,cat 15050,cat 15051,deer 15052,automobile 15053,automobile 15054,airplane 15055,cat 15056,horse 15057,deer 15058,frog 15059,automobile 15060,frog 15061,airplane 15062,airplane 15063,truck 15064,dog 15065,frog 15066,bird 15067,bird 15068,dog 15069,truck 15070,frog 15071,bird 15072,automobile 15073,dog 15074,deer 15075,bird 15076,deer 15077,cat 15078,deer 15079,frog 15080,dog 15081,frog 15082,bird 15083,frog 15084,cat 15085,automobile 15086,bird 15087,truck 15088,horse 15089,bird 15090,frog 15091,dog 15092,automobile 15093,dog 15094,cat 15095,bird 15096,truck 15097,deer 15098,bird 15099,deer 15100,dog 15101,automobile 15102,horse 15103,deer 15104,ship 15105,cat 15106,truck 15107,bird 15108,airplane 15109,bird 15110,automobile 15111,deer 15112,cat 15113,bird 15114,frog 15115,frog 15116,horse 15117,truck 15118,airplane 15119,frog 15120,frog 15121,automobile 15122,ship 15123,bird 15124,airplane 15125,deer 15126,ship 15127,ship 15128,bird 15129,airplane 15130,bird 15131,frog 15132,deer 15133,deer 15134,ship 15135,deer 15136,airplane 15137,bird 15138,horse 15139,truck 15140,frog 15141,bird 15142,cat 15143,bird 15144,ship 15145,deer 15146,deer 15147,deer 15148,airplane 15149,cat 15150,dog 15151,automobile 15152,frog 15153,automobile 15154,airplane 15155,truck 15156,horse 15157,airplane 15158,bird 15159,truck 15160,cat 15161,frog 15162,horse 15163,truck 15164,dog 15165,automobile 15166,frog 15167,deer 15168,dog 15169,frog 15170,deer 15171,frog 15172,horse 15173,ship 15174,deer 15175,truck 15176,ship 15177,deer 15178,deer 15179,truck 15180,deer 15181,frog 15182,truck 15183,ship 15184,airplane 15185,dog 15186,truck 15187,deer 15188,cat 15189,deer 15190,bird 15191,frog 15192,horse 15193,cat 15194,deer 15195,dog 15196,frog 15197,frog 15198,deer 15199,airplane 15200,frog 15201,truck 15202,cat 15203,airplane 15204,ship 15205,ship 15206,frog 15207,horse 15208,automobile 15209,frog 15210,frog 15211,dog 15212,dog 15213,ship 15214,truck 15215,deer 15216,deer 15217,frog 15218,airplane 15219,truck 15220,airplane 15221,dog 15222,frog 15223,truck 15224,airplane 15225,cat 15226,cat 15227,truck 15228,horse 15229,horse 15230,bird 15231,dog 15232,cat 15233,ship 15234,truck 15235,automobile 15236,automobile 15237,horse 15238,deer 15239,horse 15240,ship 15241,automobile 15242,horse 15243,dog 15244,frog 15245,bird 15246,deer 15247,ship 15248,bird 15249,cat 15250,deer 15251,airplane 15252,truck 15253,bird 15254,horse 15255,truck 15256,deer 15257,horse 15258,airplane 15259,deer 15260,deer 15261,ship 15262,cat 15263,frog 15264,bird 15265,deer 15266,deer 15267,automobile 15268,horse 15269,truck 15270,bird 15271,dog 15272,truck 15273,cat 15274,cat 15275,frog 15276,airplane 15277,truck 15278,dog 15279,deer 15280,cat 15281,cat 15282,dog 15283,cat 15284,dog 15285,automobile 15286,frog 15287,cat 15288,cat 15289,horse 15290,cat 15291,cat 15292,dog 15293,ship 15294,truck 15295,deer 15296,horse 15297,deer 15298,deer 15299,dog 15300,cat 15301,cat 15302,truck 15303,deer 15304,frog 15305,frog 15306,cat 15307,bird 15308,cat 15309,frog 15310,cat 15311,frog 15312,airplane 15313,truck 15314,automobile 15315,deer 15316,truck 15317,deer 15318,deer 15319,deer 15320,cat 15321,airplane 15322,cat 15323,cat 15324,deer 15325,bird 15326,cat 15327,dog 15328,airplane 15329,horse 15330,frog 15331,truck 15332,ship 15333,horse 15334,dog 15335,airplane 15336,ship 15337,cat 15338,bird 15339,bird 15340,airplane 15341,airplane 15342,horse 15343,airplane 15344,cat 15345,ship 15346,bird 15347,bird 15348,airplane 15349,ship 15350,truck 15351,frog 15352,ship 15353,truck 15354,airplane 15355,truck 15356,truck 15357,truck 15358,horse 15359,frog 15360,automobile 15361,bird 15362,bird 15363,horse 15364,dog 15365,dog 15366,bird 15367,bird 15368,truck 15369,truck 15370,frog 15371,cat 15372,deer 15373,bird 15374,frog 15375,horse 15376,frog 15377,automobile 15378,cat 15379,cat 15380,airplane 15381,automobile 15382,airplane 15383,frog 15384,dog 15385,frog 15386,truck 15387,cat 15388,ship 15389,bird 15390,frog 15391,bird 15392,cat 15393,horse 15394,deer 15395,horse 15396,ship 15397,airplane 15398,automobile 15399,cat 15400,truck 15401,cat 15402,frog 15403,automobile 15404,frog 15405,frog 15406,truck 15407,bird 15408,deer 15409,truck 15410,truck 15411,deer 15412,airplane 15413,frog 15414,horse 15415,bird 15416,horse 15417,dog 15418,horse 15419,bird 15420,cat 15421,bird 15422,truck 15423,truck 15424,horse 15425,deer 15426,ship 15427,deer 15428,deer 15429,deer 15430,bird 15431,horse 15432,airplane 15433,frog 15434,bird 15435,frog 15436,deer 15437,airplane 15438,horse 15439,cat 15440,horse 15441,ship 15442,truck 15443,deer 15444,frog 15445,horse 15446,deer 15447,bird 15448,ship 15449,ship 15450,horse 15451,dog 15452,truck 15453,frog 15454,dog 15455,truck 15456,dog 15457,frog 15458,dog 15459,cat 15460,airplane 15461,deer 15462,deer 15463,horse 15464,deer 15465,cat 15466,truck 15467,horse 15468,deer 15469,deer 15470,automobile 15471,truck 15472,ship 15473,frog 15474,cat 15475,ship 15476,cat 15477,automobile 15478,ship 15479,frog 15480,cat 15481,airplane 15482,deer 15483,deer 15484,horse 15485,frog 15486,cat 15487,frog 15488,deer 15489,ship 15490,airplane 15491,airplane 15492,truck 15493,frog 15494,bird 15495,dog 15496,deer 15497,frog 15498,airplane 15499,automobile 15500,horse 15501,frog 15502,airplane 15503,airplane 15504,cat 15505,deer 15506,cat 15507,bird 15508,airplane 15509,airplane 15510,airplane 15511,cat 15512,cat 15513,truck 15514,frog 15515,truck 15516,truck 15517,truck 15518,horse 15519,frog 15520,frog 15521,cat 15522,dog 15523,cat 15524,airplane 15525,frog 15526,truck 15527,deer 15528,truck 15529,truck 15530,deer 15531,automobile 15532,deer 15533,airplane 15534,deer 15535,dog 15536,frog 15537,frog 15538,cat 15539,bird 15540,airplane 15541,bird 15542,horse 15543,dog 15544,truck 15545,truck 15546,frog 15547,frog 15548,bird 15549,ship 15550,dog 15551,automobile 15552,airplane 15553,horse 15554,cat 15555,automobile 15556,deer 15557,horse 15558,ship 15559,horse 15560,truck 15561,airplane 15562,dog 15563,bird 15564,automobile 15565,truck 15566,deer 15567,airplane 15568,deer 15569,truck 15570,truck 15571,truck 15572,dog 15573,bird 15574,airplane 15575,frog 15576,frog 15577,airplane 15578,deer 15579,truck 15580,automobile 15581,horse 15582,cat 15583,cat 15584,frog 15585,frog 15586,truck 15587,deer 15588,deer 15589,bird 15590,ship 15591,bird 15592,automobile 15593,automobile 15594,truck 15595,truck 15596,horse 15597,cat 15598,horse 15599,airplane 15600,cat 15601,ship 15602,horse 15603,cat 15604,horse 15605,automobile 15606,frog 15607,deer 15608,horse 15609,deer 15610,airplane 15611,horse 15612,cat 15613,horse 15614,dog 15615,ship 15616,dog 15617,frog 15618,airplane 15619,dog 15620,bird 15621,frog 15622,ship 15623,bird 15624,cat 15625,dog 15626,dog 15627,bird 15628,ship 15629,truck 15630,deer 15631,dog 15632,cat 15633,dog 15634,cat 15635,cat 15636,dog 15637,automobile 15638,horse 15639,truck 15640,dog 15641,airplane 15642,horse 15643,cat 15644,frog 15645,ship 15646,cat 15647,ship 15648,airplane 15649,frog 15650,bird 15651,automobile 15652,frog 15653,cat 15654,dog 15655,bird 15656,cat 15657,bird 15658,bird 15659,automobile 15660,deer 15661,frog 15662,automobile 15663,truck 15664,airplane 15665,cat 15666,cat 15667,deer 15668,cat 15669,automobile 15670,dog 15671,airplane 15672,airplane 15673,airplane 15674,cat 15675,dog 15676,horse 15677,bird 15678,airplane 15679,cat 15680,cat 15681,cat 15682,cat 15683,truck 15684,frog 15685,frog 15686,bird 15687,horse 15688,automobile 15689,truck 15690,bird 15691,horse 15692,dog 15693,cat 15694,truck 15695,bird 15696,cat 15697,deer 15698,ship 15699,frog 15700,ship 15701,dog 15702,cat 15703,deer 15704,bird 15705,truck 15706,deer 15707,deer 15708,bird 15709,cat 15710,automobile 15711,frog 15712,deer 15713,automobile 15714,horse 15715,truck 15716,truck 15717,automobile 15718,frog 15719,dog 15720,deer 15721,deer 15722,bird 15723,airplane 15724,horse 15725,deer 15726,deer 15727,horse 15728,frog 15729,cat 15730,automobile 15731,cat 15732,horse 15733,frog 15734,deer 15735,deer 15736,bird 15737,frog 15738,deer 15739,cat 15740,horse 15741,cat 15742,frog 15743,cat 15744,frog 15745,cat 15746,dog 15747,truck 15748,ship 15749,cat 15750,automobile 15751,truck 15752,dog 15753,bird 15754,horse 15755,ship 15756,deer 15757,airplane 15758,ship 15759,cat 15760,frog 15761,frog 15762,deer 15763,airplane 15764,truck 15765,truck 15766,dog 15767,frog 15768,deer 15769,bird 15770,airplane 15771,bird 15772,frog 15773,truck 15774,dog 15775,cat 15776,deer 15777,truck 15778,frog 15779,deer 15780,truck 15781,cat 15782,dog 15783,airplane 15784,deer 15785,cat 15786,horse 15787,horse 15788,airplane 15789,dog 15790,horse 15791,dog 15792,dog 15793,dog 15794,frog 15795,ship 15796,ship 15797,bird 15798,dog 15799,bird 15800,deer 15801,ship 15802,bird 15803,cat 15804,deer 15805,truck 15806,deer 15807,frog 15808,cat 15809,deer 15810,cat 15811,horse 15812,deer 15813,deer 15814,dog 15815,frog 15816,airplane 15817,horse 15818,truck 15819,bird 15820,deer 15821,cat 15822,cat 15823,frog 15824,dog 15825,ship 15826,dog 15827,automobile 15828,automobile 15829,horse 15830,dog 15831,bird 15832,cat 15833,automobile 15834,truck 15835,bird 15836,frog 15837,cat 15838,airplane 15839,dog 15840,truck 15841,ship 15842,truck 15843,dog 15844,bird 15845,dog 15846,horse 15847,cat 15848,airplane 15849,automobile 15850,ship 15851,deer 15852,deer 15853,truck 15854,airplane 15855,cat 15856,horse 15857,cat 15858,ship 15859,bird 15860,frog 15861,frog 15862,ship 15863,cat 15864,dog 15865,horse 15866,dog 15867,deer 15868,bird 15869,airplane 15870,bird 15871,cat 15872,bird 15873,cat 15874,airplane 15875,airplane 15876,deer 15877,horse 15878,ship 15879,truck 15880,deer 15881,cat 15882,frog 15883,bird 15884,frog 15885,truck 15886,ship 15887,frog 15888,cat 15889,cat 15890,frog 15891,truck 15892,cat 15893,cat 15894,deer 15895,truck 15896,deer 15897,cat 15898,frog 15899,truck 15900,truck 15901,deer 15902,truck 15903,dog 15904,deer 15905,cat 15906,truck 15907,dog 15908,cat 15909,cat 15910,dog 15911,dog 15912,automobile 15913,deer 15914,automobile 15915,airplane 15916,deer 15917,horse 15918,cat 15919,automobile 15920,bird 15921,frog 15922,horse 15923,horse 15924,bird 15925,truck 15926,frog 15927,airplane 15928,bird 15929,frog 15930,airplane 15931,ship 15932,ship 15933,airplane 15934,bird 15935,cat 15936,truck 15937,frog 15938,airplane 15939,deer 15940,airplane 15941,horse 15942,frog 15943,ship 15944,dog 15945,horse 15946,deer 15947,truck 15948,dog 15949,horse 15950,truck 15951,deer 15952,deer 15953,bird 15954,frog 15955,horse 15956,horse 15957,automobile 15958,cat 15959,horse 15960,horse 15961,dog 15962,deer 15963,dog 15964,frog 15965,dog 15966,deer 15967,dog 15968,ship 15969,horse 15970,airplane 15971,automobile 15972,bird 15973,frog 15974,frog 15975,horse 15976,airplane 15977,frog 15978,truck 15979,bird 15980,cat 15981,cat 15982,ship 15983,airplane 15984,cat 15985,dog 15986,ship 15987,frog 15988,truck 15989,cat 15990,horse 15991,horse 15992,ship 15993,dog 15994,frog 15995,truck 15996,bird 15997,dog 15998,ship 15999,bird 16000,horse 16001,dog 16002,dog 16003,automobile 16004,cat 16005,truck 16006,cat 16007,ship 16008,horse 16009,cat 16010,bird 16011,automobile 16012,dog 16013,bird 16014,dog 16015,truck 16016,truck 16017,cat 16018,cat 16019,frog 16020,truck 16021,ship 16022,frog 16023,truck 16024,ship 16025,dog 16026,deer 16027,deer 16028,frog 16029,deer 16030,cat 16031,cat 16032,frog 16033,frog 16034,horse 16035,deer 16036,frog 16037,truck 16038,frog 16039,frog 16040,dog 16041,automobile 16042,deer 16043,dog 16044,cat 16045,deer 16046,horse 16047,airplane 16048,truck 16049,airplane 16050,deer 16051,truck 16052,bird 16053,truck 16054,truck 16055,automobile 16056,dog 16057,truck 16058,dog 16059,frog 16060,ship 16061,cat 16062,ship 16063,cat 16064,deer 16065,truck 16066,deer 16067,ship 16068,truck 16069,frog 16070,deer 16071,frog 16072,deer 16073,bird 16074,frog 16075,ship 16076,automobile 16077,automobile 16078,bird 16079,horse 16080,ship 16081,ship 16082,frog 16083,ship 16084,cat 16085,truck 16086,horse 16087,bird 16088,frog 16089,deer 16090,truck 16091,horse 16092,frog 16093,automobile 16094,dog 16095,bird 16096,frog 16097,frog 16098,frog 16099,horse 16100,bird 16101,dog 16102,truck 16103,frog 16104,deer 16105,deer 16106,cat 16107,deer 16108,ship 16109,truck 16110,deer 16111,frog 16112,dog 16113,cat 16114,automobile 16115,deer 16116,horse 16117,deer 16118,cat 16119,horse 16120,dog 16121,cat 16122,cat 16123,cat 16124,frog 16125,automobile 16126,truck 16127,deer 16128,airplane 16129,dog 16130,airplane 16131,ship 16132,automobile 16133,ship 16134,truck 16135,bird 16136,cat 16137,truck 16138,deer 16139,frog 16140,automobile 16141,dog 16142,ship 16143,frog 16144,truck 16145,automobile 16146,deer 16147,cat 16148,deer 16149,bird 16150,truck 16151,dog 16152,truck 16153,frog 16154,dog 16155,automobile 16156,deer 16157,ship 16158,bird 16159,horse 16160,dog 16161,deer 16162,cat 16163,airplane 16164,automobile 16165,deer 16166,cat 16167,bird 16168,cat 16169,deer 16170,deer 16171,deer 16172,truck 16173,deer 16174,cat 16175,ship 16176,dog 16177,dog 16178,horse 16179,deer 16180,deer 16181,truck 16182,frog 16183,bird 16184,horse 16185,bird 16186,automobile 16187,dog 16188,horse 16189,ship 16190,ship 16191,bird 16192,ship 16193,bird 16194,deer 16195,deer 16196,airplane 16197,dog 16198,truck 16199,airplane 16200,deer 16201,horse 16202,horse 16203,truck 16204,cat 16205,truck 16206,deer 16207,ship 16208,horse 16209,cat 16210,automobile 16211,bird 16212,deer 16213,horse 16214,horse 16215,deer 16216,horse 16217,horse 16218,deer 16219,truck 16220,airplane 16221,deer 16222,deer 16223,frog 16224,deer 16225,horse 16226,ship 16227,frog 16228,airplane 16229,dog 16230,automobile 16231,horse 16232,ship 16233,airplane 16234,cat 16235,dog 16236,frog 16237,airplane 16238,deer 16239,cat 16240,ship 16241,horse 16242,bird 16243,bird 16244,frog 16245,frog 16246,cat 16247,bird 16248,truck 16249,automobile 16250,frog 16251,cat 16252,ship 16253,bird 16254,truck 16255,horse 16256,horse 16257,airplane 16258,horse 16259,horse 16260,dog 16261,dog 16262,bird 16263,airplane 16264,airplane 16265,deer 16266,deer 16267,deer 16268,dog 16269,deer 16270,truck 16271,automobile 16272,deer 16273,automobile 16274,automobile 16275,deer 16276,frog 16277,deer 16278,frog 16279,ship 16280,dog 16281,truck 16282,ship 16283,automobile 16284,frog 16285,truck 16286,airplane 16287,automobile 16288,frog 16289,deer 16290,deer 16291,horse 16292,airplane 16293,cat 16294,cat 16295,bird 16296,truck 16297,bird 16298,airplane 16299,frog 16300,automobile 16301,deer 16302,truck 16303,truck 16304,ship 16305,automobile 16306,cat 16307,horse 16308,bird 16309,bird 16310,automobile 16311,truck 16312,dog 16313,ship 16314,dog 16315,bird 16316,frog 16317,deer 16318,dog 16319,airplane 16320,bird 16321,frog 16322,horse 16323,dog 16324,truck 16325,deer 16326,horse 16327,truck 16328,frog 16329,truck 16330,frog 16331,truck 16332,cat 16333,truck 16334,dog 16335,frog 16336,deer 16337,horse 16338,bird 16339,automobile 16340,horse 16341,truck 16342,dog 16343,cat 16344,automobile 16345,automobile 16346,truck 16347,deer 16348,dog 16349,horse 16350,automobile 16351,horse 16352,deer 16353,frog 16354,automobile 16355,automobile 16356,ship 16357,deer 16358,horse 16359,airplane 16360,ship 16361,dog 16362,cat 16363,dog 16364,cat 16365,bird 16366,automobile 16367,truck 16368,horse 16369,airplane 16370,cat 16371,cat 16372,horse 16373,frog 16374,horse 16375,truck 16376,deer 16377,frog 16378,cat 16379,cat 16380,ship 16381,dog 16382,airplane 16383,airplane 16384,deer 16385,airplane 16386,deer 16387,cat 16388,dog 16389,ship 16390,frog 16391,horse 16392,cat 16393,horse 16394,frog 16395,frog 16396,frog 16397,cat 16398,deer 16399,dog 16400,horse 16401,horse 16402,dog 16403,bird 16404,deer 16405,bird 16406,horse 16407,truck 16408,frog 16409,horse 16410,deer 16411,cat 16412,automobile 16413,frog 16414,truck 16415,dog 16416,dog 16417,cat 16418,horse 16419,cat 16420,horse 16421,truck 16422,bird 16423,bird 16424,deer 16425,horse 16426,cat 16427,airplane 16428,cat 16429,frog 16430,deer 16431,frog 16432,dog 16433,ship 16434,airplane 16435,deer 16436,cat 16437,cat 16438,bird 16439,cat 16440,frog 16441,cat 16442,airplane 16443,bird 16444,horse 16445,truck 16446,cat 16447,automobile 16448,frog 16449,airplane 16450,horse 16451,horse 16452,cat 16453,frog 16454,dog 16455,automobile 16456,airplane 16457,bird 16458,cat 16459,dog 16460,deer 16461,ship 16462,cat 16463,cat 16464,truck 16465,cat 16466,cat 16467,automobile 16468,airplane 16469,dog 16470,frog 16471,bird 16472,airplane 16473,ship 16474,deer 16475,horse 16476,ship 16477,cat 16478,truck 16479,frog 16480,truck 16481,frog 16482,airplane 16483,deer 16484,truck 16485,cat 16486,horse 16487,dog 16488,dog 16489,truck 16490,cat 16491,frog 16492,deer 16493,cat 16494,deer 16495,truck 16496,cat 16497,deer 16498,frog 16499,truck 16500,frog 16501,dog 16502,frog 16503,cat 16504,frog 16505,airplane 16506,airplane 16507,cat 16508,ship 16509,horse 16510,cat 16511,bird 16512,truck 16513,airplane 16514,dog 16515,deer 16516,dog 16517,automobile 16518,deer 16519,dog 16520,horse 16521,truck 16522,horse 16523,truck 16524,deer 16525,dog 16526,cat 16527,airplane 16528,deer 16529,deer 16530,deer 16531,cat 16532,truck 16533,automobile 16534,dog 16535,horse 16536,horse 16537,deer 16538,airplane 16539,airplane 16540,frog 16541,deer 16542,truck 16543,airplane 16544,truck 16545,automobile 16546,frog 16547,dog 16548,horse 16549,frog 16550,truck 16551,cat 16552,deer 16553,horse 16554,frog 16555,truck 16556,dog 16557,frog 16558,bird 16559,cat 16560,deer 16561,automobile 16562,truck 16563,dog 16564,frog 16565,cat 16566,truck 16567,cat 16568,horse 16569,frog 16570,airplane 16571,frog 16572,cat 16573,cat 16574,cat 16575,horse 16576,truck 16577,truck 16578,ship 16579,truck 16580,deer 16581,automobile 16582,truck 16583,horse 16584,cat 16585,cat 16586,frog 16587,bird 16588,airplane 16589,cat 16590,dog 16591,truck 16592,cat 16593,cat 16594,airplane 16595,automobile 16596,ship 16597,truck 16598,horse 16599,cat 16600,horse 16601,truck 16602,truck 16603,cat 16604,cat 16605,automobile 16606,automobile 16607,frog 16608,dog 16609,automobile 16610,cat 16611,deer 16612,airplane 16613,frog 16614,ship 16615,deer 16616,horse 16617,ship 16618,deer 16619,automobile 16620,dog 16621,deer 16622,cat 16623,cat 16624,dog 16625,bird 16626,dog 16627,horse 16628,deer 16629,automobile 16630,horse 16631,frog 16632,ship 16633,frog 16634,truck 16635,ship 16636,frog 16637,dog 16638,cat 16639,dog 16640,airplane 16641,frog 16642,airplane 16643,dog 16644,bird 16645,truck 16646,frog 16647,horse 16648,deer 16649,horse 16650,truck 16651,ship 16652,ship 16653,airplane 16654,cat 16655,automobile 16656,horse 16657,deer 16658,truck 16659,truck 16660,deer 16661,ship 16662,horse 16663,ship 16664,airplane 16665,airplane 16666,truck 16667,deer 16668,airplane 16669,deer 16670,cat 16671,dog 16672,truck 16673,cat 16674,ship 16675,airplane 16676,ship 16677,deer 16678,airplane 16679,airplane 16680,truck 16681,dog 16682,dog 16683,cat 16684,dog 16685,bird 16686,truck 16687,cat 16688,cat 16689,cat 16690,automobile 16691,airplane 16692,ship 16693,automobile 16694,ship 16695,frog 16696,bird 16697,horse 16698,dog 16699,automobile 16700,frog 16701,dog 16702,truck 16703,dog 16704,ship 16705,frog 16706,ship 16707,cat 16708,automobile 16709,bird 16710,cat 16711,ship 16712,airplane 16713,cat 16714,dog 16715,horse 16716,deer 16717,dog 16718,horse 16719,cat 16720,truck 16721,truck 16722,deer 16723,deer 16724,airplane 16725,dog 16726,frog 16727,bird 16728,airplane 16729,frog 16730,frog 16731,cat 16732,bird 16733,deer 16734,deer 16735,airplane 16736,automobile 16737,horse 16738,truck 16739,horse 16740,frog 16741,truck 16742,deer 16743,truck 16744,ship 16745,frog 16746,horse 16747,cat 16748,deer 16749,dog 16750,frog 16751,horse 16752,airplane 16753,horse 16754,truck 16755,bird 16756,truck 16757,frog 16758,dog 16759,horse 16760,frog 16761,dog 16762,horse 16763,dog 16764,airplane 16765,deer 16766,ship 16767,truck 16768,horse 16769,cat 16770,frog 16771,automobile 16772,deer 16773,frog 16774,deer 16775,truck 16776,automobile 16777,dog 16778,airplane 16779,airplane 16780,bird 16781,automobile 16782,deer 16783,ship 16784,cat 16785,frog 16786,frog 16787,bird 16788,dog 16789,deer 16790,dog 16791,frog 16792,dog 16793,airplane 16794,dog 16795,horse 16796,horse 16797,cat 16798,horse 16799,deer 16800,cat 16801,automobile 16802,deer 16803,frog 16804,ship 16805,cat 16806,bird 16807,automobile 16808,cat 16809,dog 16810,dog 16811,truck 16812,ship 16813,frog 16814,cat 16815,deer 16816,deer 16817,truck 16818,cat 16819,deer 16820,cat 16821,cat 16822,cat 16823,frog 16824,truck 16825,horse 16826,cat 16827,truck 16828,bird 16829,cat 16830,horse 16831,deer 16832,truck 16833,cat 16834,dog 16835,automobile 16836,cat 16837,deer 16838,bird 16839,truck 16840,bird 16841,deer 16842,horse 16843,dog 16844,airplane 16845,deer 16846,ship 16847,frog 16848,airplane 16849,frog 16850,deer 16851,deer 16852,frog 16853,ship 16854,cat 16855,truck 16856,cat 16857,dog 16858,deer 16859,cat 16860,deer 16861,truck 16862,deer 16863,horse 16864,cat 16865,horse 16866,frog 16867,bird 16868,deer 16869,horse 16870,cat 16871,dog 16872,truck 16873,truck 16874,horse 16875,dog 16876,deer 16877,cat 16878,ship 16879,deer 16880,deer 16881,horse 16882,horse 16883,horse 16884,bird 16885,automobile 16886,ship 16887,deer 16888,deer 16889,dog 16890,deer 16891,deer 16892,deer 16893,deer 16894,frog 16895,frog 16896,truck 16897,deer 16898,bird 16899,deer 16900,horse 16901,horse 16902,airplane 16903,truck 16904,dog 16905,horse 16906,ship 16907,horse 16908,ship 16909,cat 16910,dog 16911,truck 16912,horse 16913,frog 16914,airplane 16915,bird 16916,cat 16917,automobile 16918,ship 16919,cat 16920,truck 16921,automobile 16922,horse 16923,horse 16924,cat 16925,ship 16926,frog 16927,bird 16928,frog 16929,cat 16930,truck 16931,deer 16932,deer 16933,cat 16934,deer 16935,dog 16936,dog 16937,automobile 16938,frog 16939,deer 16940,deer 16941,horse 16942,cat 16943,automobile 16944,horse 16945,cat 16946,cat 16947,dog 16948,cat 16949,airplane 16950,bird 16951,dog 16952,bird 16953,frog 16954,deer 16955,deer 16956,automobile 16957,automobile 16958,frog 16959,automobile 16960,truck 16961,frog 16962,automobile 16963,horse 16964,frog 16965,frog 16966,ship 16967,airplane 16968,cat 16969,horse 16970,truck 16971,cat 16972,deer 16973,horse 16974,truck 16975,deer 16976,deer 16977,deer 16978,cat 16979,bird 16980,dog 16981,bird 16982,truck 16983,airplane 16984,truck 16985,dog 16986,dog 16987,horse 16988,automobile 16989,cat 16990,ship 16991,ship 16992,cat 16993,frog 16994,cat 16995,deer 16996,horse 16997,truck 16998,horse 16999,frog 17000,horse 17001,bird 17002,horse 17003,deer 17004,frog 17005,cat 17006,ship 17007,ship 17008,truck 17009,automobile 17010,bird 17011,truck 17012,horse 17013,cat 17014,frog 17015,dog 17016,deer 17017,deer 17018,automobile 17019,horse 17020,frog 17021,bird 17022,truck 17023,frog 17024,cat 17025,truck 17026,deer 17027,truck 17028,bird 17029,cat 17030,bird 17031,deer 17032,automobile 17033,deer 17034,automobile 17035,airplane 17036,deer 17037,ship 17038,automobile 17039,bird 17040,ship 17041,deer 17042,frog 17043,airplane 17044,ship 17045,airplane 17046,cat 17047,dog 17048,cat 17049,automobile 17050,dog 17051,deer 17052,ship 17053,truck 17054,deer 17055,frog 17056,dog 17057,automobile 17058,cat 17059,deer 17060,ship 17061,truck 17062,bird 17063,frog 17064,dog 17065,horse 17066,truck 17067,bird 17068,bird 17069,dog 17070,truck 17071,horse 17072,truck 17073,deer 17074,frog 17075,ship 17076,horse 17077,bird 17078,airplane 17079,deer 17080,automobile 17081,horse 17082,truck 17083,bird 17084,truck 17085,airplane 17086,cat 17087,truck 17088,cat 17089,airplane 17090,airplane 17091,automobile 17092,deer 17093,dog 17094,dog 17095,frog 17096,truck 17097,cat 17098,deer 17099,bird 17100,bird 17101,cat 17102,ship 17103,deer 17104,airplane 17105,deer 17106,horse 17107,frog 17108,frog 17109,truck 17110,deer 17111,bird 17112,automobile 17113,horse 17114,frog 17115,truck 17116,truck 17117,dog 17118,airplane 17119,airplane 17120,cat 17121,bird 17122,horse 17123,horse 17124,cat 17125,bird 17126,airplane 17127,truck 17128,frog 17129,automobile 17130,ship 17131,airplane 17132,ship 17133,ship 17134,deer 17135,ship 17136,cat 17137,deer 17138,frog 17139,dog 17140,cat 17141,truck 17142,dog 17143,deer 17144,frog 17145,ship 17146,frog 17147,truck 17148,truck 17149,automobile 17150,airplane 17151,frog 17152,truck 17153,automobile 17154,automobile 17155,airplane 17156,ship 17157,bird 17158,ship 17159,cat 17160,horse 17161,ship 17162,deer 17163,truck 17164,cat 17165,truck 17166,frog 17167,truck 17168,deer 17169,horse 17170,ship 17171,bird 17172,frog 17173,dog 17174,automobile 17175,truck 17176,truck 17177,ship 17178,cat 17179,truck 17180,cat 17181,truck 17182,automobile 17183,horse 17184,frog 17185,horse 17186,frog 17187,airplane 17188,truck 17189,ship 17190,deer 17191,truck 17192,dog 17193,cat 17194,cat 17195,frog 17196,bird 17197,airplane 17198,airplane 17199,truck 17200,truck 17201,horse 17202,frog 17203,deer 17204,deer 17205,bird 17206,frog 17207,cat 17208,bird 17209,deer 17210,frog 17211,dog 17212,deer 17213,cat 17214,frog 17215,frog 17216,ship 17217,dog 17218,automobile 17219,dog 17220,dog 17221,frog 17222,airplane 17223,automobile 17224,horse 17225,airplane 17226,automobile 17227,horse 17228,bird 17229,cat 17230,frog 17231,horse 17232,truck 17233,automobile 17234,ship 17235,frog 17236,ship 17237,cat 17238,dog 17239,dog 17240,deer 17241,bird 17242,ship 17243,airplane 17244,deer 17245,ship 17246,frog 17247,ship 17248,deer 17249,automobile 17250,dog 17251,cat 17252,bird 17253,cat 17254,automobile 17255,dog 17256,frog 17257,cat 17258,dog 17259,cat 17260,frog 17261,bird 17262,deer 17263,automobile 17264,cat 17265,bird 17266,cat 17267,ship 17268,bird 17269,deer 17270,deer 17271,ship 17272,bird 17273,dog 17274,airplane 17275,bird 17276,automobile 17277,deer 17278,truck 17279,frog 17280,automobile 17281,dog 17282,ship 17283,bird 17284,cat 17285,airplane 17286,truck 17287,cat 17288,cat 17289,dog 17290,truck 17291,deer 17292,horse 17293,bird 17294,frog 17295,horse 17296,deer 17297,dog 17298,airplane 17299,horse 17300,dog 17301,frog 17302,frog 17303,ship 17304,ship 17305,cat 17306,bird 17307,bird 17308,airplane 17309,airplane 17310,automobile 17311,cat 17312,automobile 17313,deer 17314,truck 17315,cat 17316,horse 17317,truck 17318,airplane 17319,cat 17320,cat 17321,dog 17322,dog 17323,frog 17324,bird 17325,cat 17326,bird 17327,automobile 17328,deer 17329,deer 17330,ship 17331,frog 17332,deer 17333,deer 17334,dog 17335,automobile 17336,truck 17337,ship 17338,truck 17339,ship 17340,deer 17341,truck 17342,automobile 17343,cat 17344,cat 17345,ship 17346,deer 17347,truck 17348,ship 17349,deer 17350,cat 17351,automobile 17352,automobile 17353,cat 17354,deer 17355,ship 17356,airplane 17357,airplane 17358,bird 17359,deer 17360,cat 17361,truck 17362,deer 17363,ship 17364,dog 17365,cat 17366,ship 17367,truck 17368,frog 17369,frog 17370,deer 17371,ship 17372,bird 17373,cat 17374,truck 17375,bird 17376,cat 17377,cat 17378,truck 17379,horse 17380,truck 17381,frog 17382,airplane 17383,bird 17384,cat 17385,dog 17386,deer 17387,frog 17388,horse 17389,automobile 17390,truck 17391,bird 17392,frog 17393,truck 17394,horse 17395,airplane 17396,deer 17397,deer 17398,bird 17399,frog 17400,bird 17401,cat 17402,truck 17403,cat 17404,truck 17405,dog 17406,ship 17407,dog 17408,deer 17409,truck 17410,deer 17411,bird 17412,ship 17413,dog 17414,airplane 17415,deer 17416,airplane 17417,dog 17418,airplane 17419,bird 17420,bird 17421,bird 17422,ship 17423,horse 17424,frog 17425,cat 17426,automobile 17427,airplane 17428,airplane 17429,horse 17430,dog 17431,bird 17432,truck 17433,truck 17434,deer 17435,frog 17436,frog 17437,cat 17438,cat 17439,dog 17440,frog 17441,automobile 17442,truck 17443,deer 17444,deer 17445,automobile 17446,frog 17447,deer 17448,frog 17449,airplane 17450,ship 17451,airplane 17452,dog 17453,horse 17454,bird 17455,horse 17456,deer 17457,horse 17458,airplane 17459,automobile 17460,cat 17461,ship 17462,ship 17463,deer 17464,automobile 17465,airplane 17466,dog 17467,truck 17468,truck 17469,bird 17470,airplane 17471,horse 17472,bird 17473,deer 17474,bird 17475,ship 17476,ship 17477,bird 17478,airplane 17479,airplane 17480,horse 17481,deer 17482,frog 17483,deer 17484,horse 17485,cat 17486,cat 17487,airplane 17488,bird 17489,cat 17490,truck 17491,frog 17492,airplane 17493,airplane 17494,frog 17495,automobile 17496,dog 17497,deer 17498,truck 17499,truck 17500,automobile 17501,frog 17502,horse 17503,frog 17504,truck 17505,truck 17506,bird 17507,dog 17508,deer 17509,truck 17510,ship 17511,deer 17512,horse 17513,dog 17514,airplane 17515,frog 17516,automobile 17517,frog 17518,frog 17519,deer 17520,cat 17521,truck 17522,cat 17523,dog 17524,frog 17525,ship 17526,bird 17527,bird 17528,horse 17529,horse 17530,deer 17531,cat 17532,airplane 17533,deer 17534,frog 17535,airplane 17536,ship 17537,dog 17538,horse 17539,horse 17540,frog 17541,truck 17542,truck 17543,airplane 17544,bird 17545,frog 17546,bird 17547,dog 17548,truck 17549,airplane 17550,bird 17551,deer 17552,truck 17553,cat 17554,frog 17555,airplane 17556,horse 17557,airplane 17558,frog 17559,dog 17560,cat 17561,deer 17562,ship 17563,deer 17564,deer 17565,deer 17566,horse 17567,frog 17568,deer 17569,frog 17570,deer 17571,horse 17572,deer 17573,horse 17574,cat 17575,dog 17576,deer 17577,deer 17578,horse 17579,truck 17580,automobile 17581,ship 17582,bird 17583,frog 17584,dog 17585,frog 17586,ship 17587,frog 17588,deer 17589,automobile 17590,horse 17591,horse 17592,truck 17593,ship 17594,deer 17595,truck 17596,horse 17597,bird 17598,deer 17599,horse 17600,truck 17601,bird 17602,airplane 17603,truck 17604,deer 17605,dog 17606,automobile 17607,frog 17608,bird 17609,ship 17610,dog 17611,cat 17612,deer 17613,ship 17614,horse 17615,horse 17616,deer 17617,deer 17618,ship 17619,truck 17620,deer 17621,truck 17622,frog 17623,cat 17624,bird 17625,truck 17626,bird 17627,cat 17628,dog 17629,cat 17630,horse 17631,dog 17632,bird 17633,airplane 17634,airplane 17635,automobile 17636,ship 17637,cat 17638,deer 17639,dog 17640,dog 17641,ship 17642,airplane 17643,deer 17644,frog 17645,airplane 17646,deer 17647,automobile 17648,cat 17649,airplane 17650,truck 17651,ship 17652,frog 17653,dog 17654,ship 17655,dog 17656,truck 17657,dog 17658,truck 17659,horse 17660,automobile 17661,horse 17662,dog 17663,automobile 17664,cat 17665,cat 17666,airplane 17667,bird 17668,deer 17669,deer 17670,horse 17671,cat 17672,truck 17673,horse 17674,cat 17675,automobile 17676,dog 17677,dog 17678,frog 17679,ship 17680,airplane 17681,dog 17682,bird 17683,ship 17684,dog 17685,ship 17686,cat 17687,ship 17688,truck 17689,truck 17690,frog 17691,deer 17692,frog 17693,deer 17694,horse 17695,frog 17696,airplane 17697,deer 17698,deer 17699,ship 17700,cat 17701,bird 17702,ship 17703,bird 17704,truck 17705,bird 17706,frog 17707,dog 17708,truck 17709,cat 17710,truck 17711,airplane 17712,deer 17713,automobile 17714,deer 17715,frog 17716,horse 17717,airplane 17718,automobile 17719,ship 17720,automobile 17721,ship 17722,horse 17723,deer 17724,frog 17725,deer 17726,automobile 17727,cat 17728,dog 17729,frog 17730,deer 17731,automobile 17732,bird 17733,airplane 17734,frog 17735,dog 17736,truck 17737,bird 17738,airplane 17739,ship 17740,bird 17741,truck 17742,horse 17743,truck 17744,automobile 17745,truck 17746,truck 17747,automobile 17748,bird 17749,dog 17750,cat 17751,deer 17752,deer 17753,bird 17754,ship 17755,cat 17756,frog 17757,horse 17758,frog 17759,dog 17760,frog 17761,airplane 17762,truck 17763,truck 17764,dog 17765,frog 17766,ship 17767,deer 17768,truck 17769,truck 17770,deer 17771,dog 17772,ship 17773,airplane 17774,cat 17775,airplane 17776,automobile 17777,airplane 17778,bird 17779,cat 17780,deer 17781,ship 17782,dog 17783,deer 17784,horse 17785,truck 17786,frog 17787,cat 17788,cat 17789,automobile 17790,cat 17791,deer 17792,cat 17793,cat 17794,dog 17795,cat 17796,ship 17797,ship 17798,frog 17799,frog 17800,automobile 17801,dog 17802,frog 17803,frog 17804,bird 17805,frog 17806,dog 17807,bird 17808,deer 17809,cat 17810,horse 17811,horse 17812,bird 17813,cat 17814,horse 17815,truck 17816,truck 17817,airplane 17818,deer 17819,cat 17820,frog 17821,frog 17822,deer 17823,truck 17824,automobile 17825,dog 17826,dog 17827,airplane 17828,cat 17829,bird 17830,deer 17831,automobile 17832,automobile 17833,bird 17834,deer 17835,airplane 17836,truck 17837,deer 17838,truck 17839,truck 17840,ship 17841,cat 17842,deer 17843,horse 17844,truck 17845,cat 17846,cat 17847,deer 17848,cat 17849,airplane 17850,dog 17851,cat 17852,horse 17853,truck 17854,cat 17855,dog 17856,bird 17857,cat 17858,ship 17859,dog 17860,truck 17861,horse 17862,cat 17863,dog 17864,ship 17865,cat 17866,frog 17867,deer 17868,cat 17869,cat 17870,truck 17871,frog 17872,frog 17873,airplane 17874,dog 17875,cat 17876,airplane 17877,ship 17878,automobile 17879,horse 17880,bird 17881,dog 17882,frog 17883,deer 17884,cat 17885,frog 17886,bird 17887,airplane 17888,frog 17889,cat 17890,cat 17891,cat 17892,horse 17893,cat 17894,automobile 17895,bird 17896,dog 17897,horse 17898,frog 17899,dog 17900,ship 17901,dog 17902,deer 17903,dog 17904,truck 17905,cat 17906,cat 17907,dog 17908,dog 17909,frog 17910,airplane 17911,ship 17912,automobile 17913,horse 17914,deer 17915,deer 17916,frog 17917,automobile 17918,cat 17919,airplane 17920,airplane 17921,automobile 17922,cat 17923,airplane 17924,bird 17925,cat 17926,horse 17927,airplane 17928,ship 17929,automobile 17930,deer 17931,frog 17932,deer 17933,airplane 17934,horse 17935,cat 17936,deer 17937,bird 17938,ship 17939,truck 17940,horse 17941,truck 17942,horse 17943,frog 17944,bird 17945,truck 17946,bird 17947,deer 17948,ship 17949,truck 17950,ship 17951,bird 17952,frog 17953,cat 17954,horse 17955,deer 17956,ship 17957,horse 17958,frog 17959,horse 17960,deer 17961,truck 17962,automobile 17963,cat 17964,dog 17965,ship 17966,frog 17967,dog 17968,dog 17969,bird 17970,ship 17971,ship 17972,bird 17973,cat 17974,truck 17975,bird 17976,bird 17977,automobile 17978,deer 17979,frog 17980,cat 17981,bird 17982,deer 17983,deer 17984,deer 17985,dog 17986,airplane 17987,truck 17988,deer 17989,cat 17990,airplane 17991,deer 17992,ship 17993,cat 17994,frog 17995,cat 17996,truck 17997,deer 17998,deer 17999,ship 18000,airplane 18001,ship 18002,horse 18003,bird 18004,bird 18005,airplane 18006,frog 18007,cat 18008,cat 18009,truck 18010,bird 18011,frog 18012,truck 18013,bird 18014,airplane 18015,horse 18016,airplane 18017,truck 18018,truck 18019,horse 18020,airplane 18021,bird 18022,frog 18023,horse 18024,deer 18025,automobile 18026,frog 18027,frog 18028,cat 18029,airplane 18030,deer 18031,truck 18032,dog 18033,airplane 18034,airplane 18035,cat 18036,airplane 18037,ship 18038,truck 18039,dog 18040,cat 18041,frog 18042,ship 18043,dog 18044,airplane 18045,cat 18046,horse 18047,cat 18048,cat 18049,dog 18050,automobile 18051,horse 18052,deer 18053,dog 18054,deer 18055,cat 18056,bird 18057,automobile 18058,airplane 18059,frog 18060,horse 18061,truck 18062,cat 18063,frog 18064,deer 18065,truck 18066,cat 18067,deer 18068,airplane 18069,airplane 18070,dog 18071,deer 18072,automobile 18073,ship 18074,airplane 18075,cat 18076,dog 18077,frog 18078,frog 18079,truck 18080,bird 18081,automobile 18082,deer 18083,frog 18084,ship 18085,deer 18086,cat 18087,cat 18088,bird 18089,automobile 18090,bird 18091,frog 18092,frog 18093,airplane 18094,airplane 18095,airplane 18096,dog 18097,horse 18098,bird 18099,dog 18100,frog 18101,truck 18102,cat 18103,cat 18104,dog 18105,frog 18106,cat 18107,frog 18108,horse 18109,deer 18110,frog 18111,horse 18112,deer 18113,cat 18114,dog 18115,cat 18116,automobile 18117,cat 18118,horse 18119,dog 18120,deer 18121,truck 18122,automobile 18123,ship 18124,frog 18125,cat 18126,truck 18127,horse 18128,cat 18129,bird 18130,airplane 18131,horse 18132,bird 18133,cat 18134,dog 18135,deer 18136,automobile 18137,dog 18138,frog 18139,dog 18140,frog 18141,airplane 18142,frog 18143,cat 18144,horse 18145,cat 18146,cat 18147,horse 18148,frog 18149,horse 18150,dog 18151,automobile 18152,truck 18153,ship 18154,ship 18155,horse 18156,dog 18157,cat 18158,cat 18159,frog 18160,bird 18161,frog 18162,horse 18163,truck 18164,dog 18165,frog 18166,airplane 18167,horse 18168,frog 18169,horse 18170,deer 18171,dog 18172,horse 18173,truck 18174,airplane 18175,ship 18176,dog 18177,deer 18178,ship 18179,deer 18180,truck 18181,airplane 18182,airplane 18183,frog 18184,airplane 18185,horse 18186,horse 18187,truck 18188,airplane 18189,deer 18190,airplane 18191,frog 18192,deer 18193,dog 18194,dog 18195,truck 18196,deer 18197,cat 18198,cat 18199,dog 18200,ship 18201,ship 18202,frog 18203,horse 18204,automobile 18205,horse 18206,ship 18207,cat 18208,dog 18209,frog 18210,truck 18211,airplane 18212,ship 18213,frog 18214,ship 18215,dog 18216,deer 18217,frog 18218,airplane 18219,dog 18220,cat 18221,cat 18222,horse 18223,frog 18224,dog 18225,truck 18226,cat 18227,cat 18228,truck 18229,truck 18230,frog 18231,automobile 18232,automobile 18233,cat 18234,truck 18235,automobile 18236,dog 18237,deer 18238,deer 18239,airplane 18240,dog 18241,bird 18242,cat 18243,dog 18244,dog 18245,truck 18246,horse 18247,automobile 18248,deer 18249,automobile 18250,cat 18251,bird 18252,dog 18253,bird 18254,airplane 18255,airplane 18256,truck 18257,cat 18258,automobile 18259,deer 18260,ship 18261,airplane 18262,horse 18263,truck 18264,dog 18265,horse 18266,automobile 18267,deer 18268,horse 18269,dog 18270,frog 18271,frog 18272,bird 18273,dog 18274,automobile 18275,deer 18276,cat 18277,airplane 18278,bird 18279,truck 18280,dog 18281,truck 18282,dog 18283,truck 18284,ship 18285,frog 18286,airplane 18287,bird 18288,cat 18289,cat 18290,bird 18291,frog 18292,cat 18293,cat 18294,bird 18295,cat 18296,bird 18297,dog 18298,dog 18299,cat 18300,frog 18301,bird 18302,horse 18303,dog 18304,bird 18305,cat 18306,airplane 18307,automobile 18308,dog 18309,horse 18310,cat 18311,deer 18312,deer 18313,deer 18314,dog 18315,airplane 18316,airplane 18317,ship 18318,frog 18319,automobile 18320,truck 18321,truck 18322,cat 18323,cat 18324,truck 18325,airplane 18326,ship 18327,horse 18328,deer 18329,bird 18330,truck 18331,dog 18332,bird 18333,cat 18334,dog 18335,horse 18336,frog 18337,ship 18338,deer 18339,cat 18340,bird 18341,ship 18342,cat 18343,dog 18344,horse 18345,cat 18346,truck 18347,cat 18348,horse 18349,truck 18350,frog 18351,deer 18352,automobile 18353,cat 18354,frog 18355,horse 18356,frog 18357,cat 18358,deer 18359,frog 18360,airplane 18361,ship 18362,ship 18363,deer 18364,ship 18365,deer 18366,dog 18367,deer 18368,bird 18369,frog 18370,deer 18371,cat 18372,deer 18373,airplane 18374,ship 18375,cat 18376,frog 18377,truck 18378,dog 18379,truck 18380,airplane 18381,truck 18382,airplane 18383,cat 18384,cat 18385,frog 18386,dog 18387,cat 18388,dog 18389,horse 18390,horse 18391,bird 18392,dog 18393,cat 18394,horse 18395,airplane 18396,dog 18397,deer 18398,bird 18399,frog 18400,automobile 18401,frog 18402,cat 18403,frog 18404,frog 18405,deer 18406,ship 18407,frog 18408,dog 18409,truck 18410,airplane 18411,deer 18412,automobile 18413,deer 18414,deer 18415,cat 18416,airplane 18417,automobile 18418,deer 18419,airplane 18420,frog 18421,horse 18422,cat 18423,horse 18424,dog 18425,truck 18426,frog 18427,bird 18428,cat 18429,ship 18430,truck 18431,cat 18432,deer 18433,deer 18434,cat 18435,cat 18436,cat 18437,deer 18438,dog 18439,bird 18440,deer 18441,bird 18442,dog 18443,truck 18444,horse 18445,airplane 18446,dog 18447,frog 18448,truck 18449,cat 18450,truck 18451,airplane 18452,frog 18453,truck 18454,truck 18455,dog 18456,horse 18457,dog 18458,deer 18459,automobile 18460,airplane 18461,cat 18462,horse 18463,cat 18464,deer 18465,dog 18466,dog 18467,bird 18468,deer 18469,ship 18470,truck 18471,frog 18472,ship 18473,ship 18474,cat 18475,dog 18476,airplane 18477,deer 18478,dog 18479,frog 18480,deer 18481,dog 18482,bird 18483,truck 18484,bird 18485,deer 18486,horse 18487,bird 18488,frog 18489,truck 18490,deer 18491,horse 18492,cat 18493,ship 18494,cat 18495,airplane 18496,horse 18497,dog 18498,bird 18499,frog 18500,cat 18501,cat 18502,deer 18503,airplane 18504,airplane 18505,ship 18506,horse 18507,dog 18508,ship 18509,frog 18510,frog 18511,frog 18512,airplane 18513,truck 18514,bird 18515,automobile 18516,horse 18517,deer 18518,horse 18519,horse 18520,cat 18521,airplane 18522,airplane 18523,deer 18524,airplane 18525,dog 18526,deer 18527,deer 18528,truck 18529,horse 18530,bird 18531,horse 18532,ship 18533,dog 18534,deer 18535,frog 18536,cat 18537,ship 18538,horse 18539,horse 18540,ship 18541,deer 18542,bird 18543,horse 18544,ship 18545,truck 18546,deer 18547,dog 18548,horse 18549,deer 18550,deer 18551,frog 18552,frog 18553,horse 18554,cat 18555,cat 18556,frog 18557,truck 18558,ship 18559,airplane 18560,bird 18561,dog 18562,deer 18563,cat 18564,deer 18565,ship 18566,truck 18567,cat 18568,dog 18569,horse 18570,cat 18571,deer 18572,deer 18573,cat 18574,frog 18575,frog 18576,dog 18577,airplane 18578,cat 18579,truck 18580,frog 18581,frog 18582,airplane 18583,cat 18584,airplane 18585,truck 18586,cat 18587,horse 18588,cat 18589,bird 18590,automobile 18591,airplane 18592,horse 18593,cat 18594,dog 18595,frog 18596,horse 18597,bird 18598,ship 18599,ship 18600,deer 18601,ship 18602,bird 18603,cat 18604,bird 18605,deer 18606,frog 18607,dog 18608,deer 18609,bird 18610,cat 18611,truck 18612,dog 18613,ship 18614,deer 18615,frog 18616,deer 18617,cat 18618,ship 18619,automobile 18620,ship 18621,horse 18622,automobile 18623,airplane 18624,horse 18625,cat 18626,dog 18627,dog 18628,bird 18629,bird 18630,horse 18631,truck 18632,frog 18633,frog 18634,truck 18635,ship 18636,dog 18637,dog 18638,airplane 18639,truck 18640,automobile 18641,deer 18642,deer 18643,frog 18644,dog 18645,frog 18646,truck 18647,horse 18648,horse 18649,frog 18650,truck 18651,cat 18652,cat 18653,bird 18654,ship 18655,horse 18656,airplane 18657,bird 18658,deer 18659,truck 18660,dog 18661,cat 18662,truck 18663,bird 18664,deer 18665,automobile 18666,cat 18667,truck 18668,dog 18669,automobile 18670,horse 18671,deer 18672,cat 18673,airplane 18674,ship 18675,automobile 18676,cat 18677,deer 18678,truck 18679,deer 18680,bird 18681,frog 18682,automobile 18683,automobile 18684,airplane 18685,horse 18686,frog 18687,frog 18688,deer 18689,cat 18690,cat 18691,deer 18692,airplane 18693,automobile 18694,airplane 18695,bird 18696,truck 18697,dog 18698,horse 18699,truck 18700,automobile 18701,frog 18702,truck 18703,horse 18704,truck 18705,dog 18706,horse 18707,automobile 18708,cat 18709,horse 18710,deer 18711,dog 18712,ship 18713,dog 18714,bird 18715,truck 18716,deer 18717,ship 18718,frog 18719,ship 18720,ship 18721,frog 18722,cat 18723,airplane 18724,frog 18725,ship 18726,frog 18727,automobile 18728,cat 18729,truck 18730,cat 18731,ship 18732,frog 18733,frog 18734,dog 18735,horse 18736,deer 18737,ship 18738,deer 18739,airplane 18740,deer 18741,cat 18742,horse 18743,frog 18744,dog 18745,truck 18746,bird 18747,truck 18748,frog 18749,horse 18750,horse 18751,ship 18752,ship 18753,airplane 18754,ship 18755,frog 18756,bird 18757,deer 18758,frog 18759,truck 18760,horse 18761,bird 18762,deer 18763,truck 18764,frog 18765,truck 18766,cat 18767,airplane 18768,horse 18769,bird 18770,ship 18771,dog 18772,horse 18773,ship 18774,deer 18775,dog 18776,ship 18777,ship 18778,cat 18779,ship 18780,deer 18781,cat 18782,horse 18783,airplane 18784,bird 18785,ship 18786,truck 18787,airplane 18788,truck 18789,deer 18790,ship 18791,horse 18792,dog 18793,horse 18794,truck 18795,horse 18796,cat 18797,bird 18798,airplane 18799,frog 18800,dog 18801,truck 18802,frog 18803,cat 18804,truck 18805,frog 18806,automobile 18807,truck 18808,bird 18809,ship 18810,frog 18811,dog 18812,deer 18813,bird 18814,deer 18815,bird 18816,deer 18817,automobile 18818,frog 18819,airplane 18820,deer 18821,airplane 18822,airplane 18823,cat 18824,bird 18825,cat 18826,dog 18827,dog 18828,dog 18829,horse 18830,horse 18831,airplane 18832,deer 18833,airplane 18834,dog 18835,frog 18836,dog 18837,cat 18838,cat 18839,airplane 18840,truck 18841,dog 18842,automobile 18843,airplane 18844,cat 18845,ship 18846,horse 18847,horse 18848,dog 18849,bird 18850,truck 18851,airplane 18852,deer 18853,deer 18854,airplane 18855,deer 18856,ship 18857,horse 18858,deer 18859,airplane 18860,frog 18861,horse 18862,ship 18863,airplane 18864,frog 18865,deer 18866,cat 18867,truck 18868,ship 18869,deer 18870,ship 18871,dog 18872,dog 18873,ship 18874,airplane 18875,airplane 18876,cat 18877,automobile 18878,dog 18879,horse 18880,cat 18881,airplane 18882,bird 18883,truck 18884,deer 18885,deer 18886,deer 18887,deer 18888,cat 18889,dog 18890,airplane 18891,deer 18892,cat 18893,frog 18894,deer 18895,ship 18896,ship 18897,horse 18898,cat 18899,dog 18900,deer 18901,bird 18902,dog 18903,truck 18904,airplane 18905,horse 18906,airplane 18907,cat 18908,frog 18909,deer 18910,airplane 18911,deer 18912,bird 18913,deer 18914,frog 18915,cat 18916,truck 18917,automobile 18918,airplane 18919,cat 18920,deer 18921,truck 18922,cat 18923,automobile 18924,automobile 18925,dog 18926,bird 18927,cat 18928,dog 18929,truck 18930,deer 18931,dog 18932,frog 18933,ship 18934,dog 18935,ship 18936,horse 18937,airplane 18938,deer 18939,automobile 18940,airplane 18941,truck 18942,deer 18943,deer 18944,horse 18945,bird 18946,cat 18947,cat 18948,dog 18949,airplane 18950,cat 18951,airplane 18952,cat 18953,horse 18954,airplane 18955,airplane 18956,airplane 18957,cat 18958,horse 18959,automobile 18960,dog 18961,airplane 18962,ship 18963,horse 18964,dog 18965,horse 18966,cat 18967,bird 18968,dog 18969,airplane 18970,deer 18971,horse 18972,airplane 18973,cat 18974,dog 18975,horse 18976,ship 18977,dog 18978,dog 18979,truck 18980,cat 18981,bird 18982,horse 18983,deer 18984,airplane 18985,frog 18986,cat 18987,bird 18988,horse 18989,frog 18990,airplane 18991,airplane 18992,airplane 18993,deer 18994,bird 18995,truck 18996,truck 18997,airplane 18998,truck 18999,automobile 19000,horse 19001,horse 19002,airplane 19003,truck 19004,automobile 19005,horse 19006,deer 19007,automobile 19008,frog 19009,cat 19010,cat 19011,frog 19012,cat 19013,dog 19014,cat 19015,deer 19016,cat 19017,truck 19018,cat 19019,deer 19020,horse 19021,airplane 19022,deer 19023,bird 19024,horse 19025,dog 19026,dog 19027,cat 19028,bird 19029,dog 19030,ship 19031,dog 19032,bird 19033,cat 19034,frog 19035,truck 19036,airplane 19037,airplane 19038,truck 19039,deer 19040,cat 19041,bird 19042,cat 19043,frog 19044,cat 19045,deer 19046,truck 19047,frog 19048,frog 19049,bird 19050,dog 19051,frog 19052,dog 19053,airplane 19054,frog 19055,bird 19056,deer 19057,dog 19058,cat 19059,horse 19060,automobile 19061,bird 19062,dog 19063,ship 19064,frog 19065,dog 19066,frog 19067,airplane 19068,dog 19069,truck 19070,cat 19071,horse 19072,airplane 19073,ship 19074,cat 19075,truck 19076,deer 19077,bird 19078,truck 19079,cat 19080,deer 19081,dog 19082,automobile 19083,airplane 19084,deer 19085,ship 19086,airplane 19087,cat 19088,cat 19089,truck 19090,ship 19091,deer 19092,ship 19093,deer 19094,ship 19095,cat 19096,deer 19097,deer 19098,ship 19099,airplane 19100,ship 19101,frog 19102,cat 19103,deer 19104,ship 19105,cat 19106,truck 19107,deer 19108,automobile 19109,frog 19110,dog 19111,dog 19112,deer 19113,truck 19114,ship 19115,cat 19116,deer 19117,deer 19118,truck 19119,truck 19120,horse 19121,horse 19122,frog 19123,horse 19124,cat 19125,cat 19126,bird 19127,truck 19128,ship 19129,bird 19130,cat 19131,deer 19132,truck 19133,dog 19134,cat 19135,automobile 19136,deer 19137,ship 19138,bird 19139,dog 19140,frog 19141,bird 19142,frog 19143,automobile 19144,frog 19145,bird 19146,dog 19147,automobile 19148,cat 19149,cat 19150,deer 19151,cat 19152,deer 19153,truck 19154,truck 19155,dog 19156,frog 19157,truck 19158,automobile 19159,automobile 19160,horse 19161,airplane 19162,horse 19163,dog 19164,truck 19165,airplane 19166,deer 19167,deer 19168,bird 19169,truck 19170,horse 19171,truck 19172,ship 19173,ship 19174,deer 19175,cat 19176,frog 19177,bird 19178,deer 19179,airplane 19180,automobile 19181,deer 19182,airplane 19183,automobile 19184,ship 19185,horse 19186,truck 19187,deer 19188,deer 19189,truck 19190,dog 19191,dog 19192,bird 19193,deer 19194,truck 19195,ship 19196,cat 19197,cat 19198,bird 19199,frog 19200,bird 19201,ship 19202,cat 19203,bird 19204,airplane 19205,truck 19206,truck 19207,cat 19208,deer 19209,airplane 19210,deer 19211,deer 19212,cat 19213,dog 19214,dog 19215,deer 19216,deer 19217,deer 19218,deer 19219,airplane 19220,automobile 19221,airplane 19222,deer 19223,cat 19224,ship 19225,airplane 19226,frog 19227,ship 19228,frog 19229,frog 19230,frog 19231,deer 19232,ship 19233,horse 19234,deer 19235,dog 19236,cat 19237,horse 19238,cat 19239,horse 19240,horse 19241,deer 19242,dog 19243,frog 19244,cat 19245,deer 19246,bird 19247,airplane 19248,truck 19249,truck 19250,deer 19251,horse 19252,cat 19253,horse 19254,dog 19255,ship 19256,frog 19257,horse 19258,bird 19259,airplane 19260,bird 19261,bird 19262,ship 19263,bird 19264,deer 19265,dog 19266,cat 19267,cat 19268,automobile 19269,ship 19270,airplane 19271,deer 19272,frog 19273,frog 19274,cat 19275,automobile 19276,frog 19277,automobile 19278,frog 19279,dog 19280,bird 19281,dog 19282,frog 19283,cat 19284,horse 19285,truck 19286,truck 19287,dog 19288,cat 19289,ship 19290,frog 19291,airplane 19292,dog 19293,frog 19294,truck 19295,bird 19296,horse 19297,bird 19298,cat 19299,deer 19300,automobile 19301,dog 19302,horse 19303,cat 19304,truck 19305,frog 19306,cat 19307,dog 19308,frog 19309,truck 19310,ship 19311,frog 19312,ship 19313,cat 19314,dog 19315,deer 19316,truck 19317,cat 19318,frog 19319,dog 19320,bird 19321,horse 19322,bird 19323,deer 19324,frog 19325,dog 19326,deer 19327,deer 19328,automobile 19329,deer 19330,frog 19331,cat 19332,horse 19333,cat 19334,automobile 19335,frog 19336,ship 19337,truck 19338,deer 19339,automobile 19340,truck 19341,horse 19342,frog 19343,cat 19344,automobile 19345,truck 19346,bird 19347,truck 19348,bird 19349,dog 19350,cat 19351,truck 19352,airplane 19353,airplane 19354,automobile 19355,dog 19356,cat 19357,horse 19358,deer 19359,deer 19360,frog 19361,deer 19362,deer 19363,truck 19364,horse 19365,horse 19366,deer 19367,deer 19368,frog 19369,cat 19370,dog 19371,cat 19372,cat 19373,cat 19374,horse 19375,dog 19376,cat 19377,bird 19378,bird 19379,dog 19380,cat 19381,dog 19382,frog 19383,cat 19384,deer 19385,automobile 19386,cat 19387,frog 19388,truck 19389,frog 19390,horse 19391,dog 19392,truck 19393,ship 19394,bird 19395,ship 19396,cat 19397,deer 19398,deer 19399,deer 19400,dog 19401,automobile 19402,bird 19403,ship 19404,automobile 19405,frog 19406,cat 19407,truck 19408,horse 19409,cat 19410,ship 19411,airplane 19412,horse 19413,frog 19414,bird 19415,dog 19416,bird 19417,deer 19418,horse 19419,horse 19420,dog 19421,horse 19422,bird 19423,horse 19424,horse 19425,ship 19426,cat 19427,ship 19428,cat 19429,bird 19430,frog 19431,dog 19432,dog 19433,dog 19434,frog 19435,truck 19436,bird 19437,automobile 19438,dog 19439,deer 19440,dog 19441,truck 19442,truck 19443,airplane 19444,ship 19445,bird 19446,ship 19447,bird 19448,cat 19449,cat 19450,cat 19451,bird 19452,cat 19453,horse 19454,automobile 19455,deer 19456,dog 19457,cat 19458,truck 19459,truck 19460,ship 19461,airplane 19462,horse 19463,automobile 19464,frog 19465,dog 19466,truck 19467,cat 19468,dog 19469,truck 19470,deer 19471,dog 19472,cat 19473,bird 19474,automobile 19475,ship 19476,bird 19477,automobile 19478,airplane 19479,deer 19480,deer 19481,frog 19482,ship 19483,deer 19484,cat 19485,deer 19486,cat 19487,horse 19488,cat 19489,frog 19490,frog 19491,deer 19492,ship 19493,horse 19494,bird 19495,dog 19496,horse 19497,airplane 19498,deer 19499,deer 19500,deer 19501,bird 19502,cat 19503,dog 19504,bird 19505,frog 19506,frog 19507,truck 19508,deer 19509,dog 19510,cat 19511,cat 19512,frog 19513,bird 19514,deer 19515,bird 19516,frog 19517,automobile 19518,deer 19519,cat 19520,ship 19521,airplane 19522,cat 19523,dog 19524,frog 19525,deer 19526,ship 19527,truck 19528,dog 19529,ship 19530,deer 19531,dog 19532,deer 19533,cat 19534,truck 19535,deer 19536,ship 19537,deer 19538,dog 19539,airplane 19540,dog 19541,ship 19542,deer 19543,truck 19544,horse 19545,ship 19546,deer 19547,airplane 19548,dog 19549,bird 19550,dog 19551,dog 19552,deer 19553,cat 19554,frog 19555,airplane 19556,frog 19557,dog 19558,horse 19559,cat 19560,dog 19561,automobile 19562,truck 19563,deer 19564,automobile 19565,frog 19566,automobile 19567,truck 19568,deer 19569,truck 19570,automobile 19571,automobile 19572,airplane 19573,deer 19574,truck 19575,dog 19576,dog 19577,cat 19578,dog 19579,truck 19580,automobile 19581,airplane 19582,frog 19583,airplane 19584,cat 19585,deer 19586,bird 19587,deer 19588,airplane 19589,truck 19590,horse 19591,bird 19592,truck 19593,truck 19594,deer 19595,horse 19596,dog 19597,deer 19598,dog 19599,automobile 19600,horse 19601,truck 19602,truck 19603,ship 19604,deer 19605,horse 19606,dog 19607,cat 19608,ship 19609,deer 19610,truck 19611,frog 19612,airplane 19613,deer 19614,ship 19615,frog 19616,deer 19617,deer 19618,bird 19619,bird 19620,ship 19621,frog 19622,frog 19623,truck 19624,dog 19625,cat 19626,automobile 19627,airplane 19628,ship 19629,ship 19630,airplane 19631,airplane 19632,cat 19633,cat 19634,cat 19635,automobile 19636,cat 19637,deer 19638,truck 19639,horse 19640,deer 19641,truck 19642,dog 19643,ship 19644,frog 19645,frog 19646,airplane 19647,cat 19648,frog 19649,frog 19650,cat 19651,frog 19652,dog 19653,automobile 19654,truck 19655,automobile 19656,dog 19657,frog 19658,bird 19659,cat 19660,cat 19661,deer 19662,cat 19663,frog 19664,horse 19665,dog 19666,truck 19667,truck 19668,deer 19669,bird 19670,ship 19671,frog 19672,frog 19673,airplane 19674,deer 19675,dog 19676,horse 19677,deer 19678,horse 19679,truck 19680,dog 19681,deer 19682,airplane 19683,frog 19684,ship 19685,frog 19686,horse 19687,truck 19688,dog 19689,horse 19690,deer 19691,ship 19692,automobile 19693,automobile 19694,cat 19695,truck 19696,dog 19697,cat 19698,ship 19699,dog 19700,deer 19701,frog 19702,airplane 19703,airplane 19704,truck 19705,airplane 19706,bird 19707,cat 19708,frog 19709,deer 19710,ship 19711,cat 19712,deer 19713,automobile 19714,ship 19715,bird 19716,ship 19717,dog 19718,cat 19719,deer 19720,horse 19721,bird 19722,automobile 19723,ship 19724,cat 19725,dog 19726,ship 19727,cat 19728,dog 19729,cat 19730,horse 19731,dog 19732,airplane 19733,cat 19734,horse 19735,truck 19736,cat 19737,cat 19738,bird 19739,bird 19740,frog 19741,frog 19742,ship 19743,automobile 19744,truck 19745,frog 19746,airplane 19747,truck 19748,deer 19749,ship 19750,truck 19751,horse 19752,horse 19753,truck 19754,automobile 19755,ship 19756,frog 19757,frog 19758,truck 19759,truck 19760,truck 19761,frog 19762,truck 19763,cat 19764,horse 19765,deer 19766,cat 19767,horse 19768,frog 19769,deer 19770,truck 19771,airplane 19772,dog 19773,bird 19774,ship 19775,deer 19776,horse 19777,truck 19778,airplane 19779,horse 19780,deer 19781,cat 19782,cat 19783,horse 19784,airplane 19785,truck 19786,ship 19787,cat 19788,deer 19789,horse 19790,automobile 19791,deer 19792,airplane 19793,deer 19794,frog 19795,horse 19796,bird 19797,automobile 19798,horse 19799,frog 19800,frog 19801,truck 19802,frog 19803,cat 19804,bird 19805,automobile 19806,truck 19807,horse 19808,dog 19809,deer 19810,airplane 19811,frog 19812,cat 19813,dog 19814,automobile 19815,deer 19816,cat 19817,bird 19818,horse 19819,cat 19820,horse 19821,truck 19822,cat 19823,dog 19824,frog 19825,airplane 19826,automobile 19827,truck 19828,dog 19829,airplane 19830,dog 19831,truck 19832,horse 19833,horse 19834,frog 19835,truck 19836,deer 19837,deer 19838,ship 19839,frog 19840,bird 19841,bird 19842,dog 19843,deer 19844,deer 19845,cat 19846,horse 19847,deer 19848,dog 19849,deer 19850,horse 19851,dog 19852,ship 19853,dog 19854,horse 19855,frog 19856,airplane 19857,truck 19858,frog 19859,truck 19860,cat 19861,ship 19862,horse 19863,deer 19864,cat 19865,deer 19866,truck 19867,cat 19868,ship 19869,ship 19870,ship 19871,frog 19872,horse 19873,frog 19874,horse 19875,dog 19876,truck 19877,cat 19878,bird 19879,deer 19880,automobile 19881,cat 19882,bird 19883,deer 19884,dog 19885,airplane 19886,ship 19887,automobile 19888,cat 19889,dog 19890,frog 19891,truck 19892,deer 19893,bird 19894,bird 19895,cat 19896,frog 19897,frog 19898,airplane 19899,ship 19900,frog 19901,deer 19902,truck 19903,dog 19904,horse 19905,bird 19906,cat 19907,cat 19908,deer 19909,truck 19910,ship 19911,frog 19912,ship 19913,truck 19914,horse 19915,horse 19916,ship 19917,ship 19918,cat 19919,cat 19920,deer 19921,automobile 19922,bird 19923,ship 19924,bird 19925,cat 19926,frog 19927,deer 19928,ship 19929,frog 19930,truck 19931,horse 19932,automobile 19933,horse 19934,frog 19935,truck 19936,ship 19937,automobile 19938,frog 19939,truck 19940,deer 19941,dog 19942,ship 19943,deer 19944,bird 19945,bird 19946,frog 19947,airplane 19948,horse 19949,automobile 19950,deer 19951,dog 19952,frog 19953,bird 19954,airplane 19955,ship 19956,bird 19957,frog 19958,deer 19959,frog 19960,cat 19961,dog 19962,cat 19963,truck 19964,ship 19965,automobile 19966,airplane 19967,ship 19968,dog 19969,frog 19970,deer 19971,truck 19972,frog 19973,frog 19974,horse 19975,horse 19976,frog 19977,dog 19978,horse 19979,automobile 19980,frog 19981,horse 19982,bird 19983,airplane 19984,frog 19985,truck 19986,airplane 19987,dog 19988,deer 19989,truck 19990,cat 19991,ship 19992,ship 19993,frog 19994,dog 19995,horse 19996,deer 19997,truck 19998,horse 19999,bird 20000,truck 20001,deer 20002,cat 20003,bird 20004,horse 20005,cat 20006,dog 20007,deer 20008,truck 20009,deer 20010,cat 20011,ship 20012,frog 20013,automobile 20014,dog 20015,frog 20016,automobile 20017,bird 20018,horse 20019,bird 20020,frog 20021,cat 20022,cat 20023,cat 20024,dog 20025,airplane 20026,ship 20027,airplane 20028,deer 20029,horse 20030,automobile 20031,deer 20032,horse 20033,horse 20034,bird 20035,deer 20036,automobile 20037,deer 20038,dog 20039,ship 20040,truck 20041,bird 20042,bird 20043,cat 20044,truck 20045,bird 20046,deer 20047,dog 20048,frog 20049,ship 20050,automobile 20051,frog 20052,deer 20053,horse 20054,ship 20055,dog 20056,ship 20057,horse 20058,dog 20059,truck 20060,dog 20061,horse 20062,cat 20063,bird 20064,frog 20065,truck 20066,frog 20067,truck 20068,deer 20069,horse 20070,dog 20071,deer 20072,airplane 20073,bird 20074,truck 20075,deer 20076,cat 20077,truck 20078,automobile 20079,truck 20080,horse 20081,automobile 20082,frog 20083,truck 20084,automobile 20085,dog 20086,deer 20087,airplane 20088,airplane 20089,ship 20090,airplane 20091,deer 20092,dog 20093,truck 20094,cat 20095,cat 20096,truck 20097,dog 20098,ship 20099,automobile 20100,frog 20101,airplane 20102,airplane 20103,airplane 20104,horse 20105,cat 20106,frog 20107,airplane 20108,deer 20109,ship 20110,dog 20111,cat 20112,cat 20113,dog 20114,dog 20115,airplane 20116,dog 20117,frog 20118,bird 20119,automobile 20120,dog 20121,automobile 20122,horse 20123,cat 20124,airplane 20125,truck 20126,bird 20127,horse 20128,horse 20129,deer 20130,airplane 20131,truck 20132,airplane 20133,bird 20134,airplane 20135,cat 20136,frog 20137,frog 20138,truck 20139,dog 20140,frog 20141,horse 20142,bird 20143,bird 20144,cat 20145,frog 20146,cat 20147,frog 20148,airplane 20149,ship 20150,airplane 20151,truck 20152,dog 20153,airplane 20154,horse 20155,cat 20156,frog 20157,cat 20158,automobile 20159,truck 20160,frog 20161,frog 20162,frog 20163,ship 20164,truck 20165,horse 20166,bird 20167,ship 20168,dog 20169,frog 20170,deer 20171,dog 20172,airplane 20173,airplane 20174,bird 20175,cat 20176,ship 20177,deer 20178,frog 20179,automobile 20180,dog 20181,cat 20182,airplane 20183,deer 20184,bird 20185,frog 20186,frog 20187,dog 20188,cat 20189,deer 20190,dog 20191,cat 20192,deer 20193,frog 20194,cat 20195,deer 20196,frog 20197,deer 20198,truck 20199,automobile 20200,bird 20201,truck 20202,bird 20203,horse 20204,cat 20205,dog 20206,dog 20207,airplane 20208,ship 20209,deer 20210,horse 20211,dog 20212,frog 20213,truck 20214,dog 20215,dog 20216,dog 20217,cat 20218,airplane 20219,automobile 20220,airplane 20221,dog 20222,dog 20223,frog 20224,truck 20225,truck 20226,truck 20227,deer 20228,deer 20229,ship 20230,bird 20231,cat 20232,dog 20233,cat 20234,bird 20235,ship 20236,airplane 20237,horse 20238,deer 20239,deer 20240,frog 20241,ship 20242,deer 20243,truck 20244,dog 20245,cat 20246,ship 20247,truck 20248,horse 20249,horse 20250,airplane 20251,bird 20252,ship 20253,horse 20254,automobile 20255,ship 20256,deer 20257,frog 20258,dog 20259,horse 20260,horse 20261,airplane 20262,frog 20263,deer 20264,truck 20265,horse 20266,automobile 20267,airplane 20268,bird 20269,bird 20270,cat 20271,ship 20272,cat 20273,dog 20274,deer 20275,cat 20276,horse 20277,truck 20278,automobile 20279,ship 20280,bird 20281,cat 20282,dog 20283,deer 20284,deer 20285,bird 20286,truck 20287,deer 20288,automobile 20289,ship 20290,airplane 20291,deer 20292,truck 20293,cat 20294,horse 20295,cat 20296,airplane 20297,dog 20298,deer 20299,dog 20300,airplane 20301,truck 20302,ship 20303,cat 20304,dog 20305,dog 20306,cat 20307,ship 20308,cat 20309,bird 20310,ship 20311,automobile 20312,ship 20313,deer 20314,automobile 20315,bird 20316,deer 20317,cat 20318,horse 20319,deer 20320,bird 20321,frog 20322,frog 20323,cat 20324,cat 20325,cat 20326,deer 20327,cat 20328,ship 20329,cat 20330,deer 20331,truck 20332,dog 20333,dog 20334,cat 20335,frog 20336,ship 20337,bird 20338,cat 20339,horse 20340,dog 20341,dog 20342,frog 20343,dog 20344,bird 20345,deer 20346,frog 20347,cat 20348,frog 20349,airplane 20350,cat 20351,frog 20352,horse 20353,automobile 20354,truck 20355,dog 20356,automobile 20357,horse 20358,deer 20359,cat 20360,bird 20361,frog 20362,deer 20363,cat 20364,airplane 20365,automobile 20366,bird 20367,airplane 20368,truck 20369,bird 20370,frog 20371,deer 20372,horse 20373,dog 20374,ship 20375,ship 20376,airplane 20377,frog 20378,automobile 20379,deer 20380,dog 20381,dog 20382,automobile 20383,automobile 20384,deer 20385,airplane 20386,cat 20387,automobile 20388,cat 20389,frog 20390,airplane 20391,bird 20392,frog 20393,ship 20394,cat 20395,horse 20396,bird 20397,truck 20398,bird 20399,deer 20400,cat 20401,truck 20402,deer 20403,dog 20404,deer 20405,frog 20406,automobile 20407,ship 20408,automobile 20409,truck 20410,deer 20411,dog 20412,bird 20413,frog 20414,horse 20415,frog 20416,bird 20417,automobile 20418,cat 20419,ship 20420,cat 20421,horse 20422,deer 20423,frog 20424,cat 20425,horse 20426,frog 20427,truck 20428,dog 20429,frog 20430,cat 20431,bird 20432,dog 20433,airplane 20434,frog 20435,automobile 20436,automobile 20437,cat 20438,frog 20439,automobile 20440,frog 20441,horse 20442,bird 20443,automobile 20444,frog 20445,deer 20446,airplane 20447,cat 20448,cat 20449,dog 20450,ship 20451,horse 20452,deer 20453,frog 20454,deer 20455,cat 20456,deer 20457,dog 20458,horse 20459,ship 20460,cat 20461,truck 20462,truck 20463,dog 20464,bird 20465,dog 20466,cat 20467,airplane 20468,dog 20469,bird 20470,ship 20471,horse 20472,ship 20473,dog 20474,cat 20475,truck 20476,cat 20477,frog 20478,deer 20479,deer 20480,dog 20481,truck 20482,horse 20483,frog 20484,frog 20485,frog 20486,cat 20487,frog 20488,dog 20489,deer 20490,frog 20491,horse 20492,deer 20493,automobile 20494,dog 20495,horse 20496,frog 20497,cat 20498,automobile 20499,bird 20500,cat 20501,cat 20502,frog 20503,truck 20504,ship 20505,ship 20506,frog 20507,truck 20508,dog 20509,deer 20510,truck 20511,airplane 20512,deer 20513,cat 20514,truck 20515,truck 20516,ship 20517,cat 20518,cat 20519,ship 20520,cat 20521,bird 20522,horse 20523,cat 20524,bird 20525,truck 20526,truck 20527,ship 20528,frog 20529,horse 20530,deer 20531,bird 20532,deer 20533,bird 20534,horse 20535,cat 20536,dog 20537,bird 20538,cat 20539,automobile 20540,cat 20541,dog 20542,ship 20543,dog 20544,deer 20545,bird 20546,frog 20547,deer 20548,deer 20549,dog 20550,cat 20551,automobile 20552,horse 20553,ship 20554,airplane 20555,truck 20556,cat 20557,dog 20558,cat 20559,deer 20560,deer 20561,cat 20562,truck 20563,ship 20564,bird 20565,truck 20566,deer 20567,dog 20568,automobile 20569,airplane 20570,horse 20571,dog 20572,frog 20573,cat 20574,truck 20575,frog 20576,airplane 20577,frog 20578,dog 20579,automobile 20580,ship 20581,horse 20582,truck 20583,bird 20584,automobile 20585,automobile 20586,airplane 20587,dog 20588,ship 20589,truck 20590,airplane 20591,deer 20592,automobile 20593,cat 20594,cat 20595,cat 20596,airplane 20597,bird 20598,deer 20599,ship 20600,cat 20601,horse 20602,airplane 20603,deer 20604,dog 20605,horse 20606,horse 20607,deer 20608,truck 20609,cat 20610,cat 20611,automobile 20612,cat 20613,airplane 20614,truck 20615,deer 20616,truck 20617,dog 20618,deer 20619,bird 20620,ship 20621,horse 20622,bird 20623,cat 20624,dog 20625,deer 20626,airplane 20627,automobile 20628,truck 20629,truck 20630,airplane 20631,horse 20632,cat 20633,airplane 20634,bird 20635,automobile 20636,cat 20637,truck 20638,airplane 20639,horse 20640,cat 20641,ship 20642,cat 20643,deer 20644,bird 20645,deer 20646,bird 20647,cat 20648,frog 20649,automobile 20650,bird 20651,frog 20652,frog 20653,cat 20654,airplane 20655,dog 20656,automobile 20657,horse 20658,frog 20659,cat 20660,truck 20661,frog 20662,cat 20663,frog 20664,truck 20665,truck 20666,cat 20667,automobile 20668,frog 20669,dog 20670,bird 20671,horse 20672,frog 20673,bird 20674,bird 20675,airplane 20676,frog 20677,bird 20678,truck 20679,horse 20680,ship 20681,deer 20682,dog 20683,deer 20684,bird 20685,cat 20686,deer 20687,airplane 20688,horse 20689,ship 20690,automobile 20691,horse 20692,deer 20693,truck 20694,horse 20695,deer 20696,truck 20697,cat 20698,bird 20699,horse 20700,deer 20701,truck 20702,bird 20703,deer 20704,frog 20705,bird 20706,horse 20707,deer 20708,cat 20709,deer 20710,frog 20711,dog 20712,automobile 20713,ship 20714,frog 20715,truck 20716,dog 20717,deer 20718,frog 20719,dog 20720,dog 20721,airplane 20722,frog 20723,airplane 20724,horse 20725,deer 20726,deer 20727,truck 20728,automobile 20729,deer 20730,dog 20731,airplane 20732,airplane 20733,cat 20734,ship 20735,frog 20736,truck 20737,automobile 20738,dog 20739,cat 20740,truck 20741,deer 20742,deer 20743,truck 20744,dog 20745,truck 20746,automobile 20747,bird 20748,frog 20749,airplane 20750,horse 20751,dog 20752,frog 20753,horse 20754,cat 20755,ship 20756,deer 20757,truck 20758,horse 20759,airplane 20760,automobile 20761,airplane 20762,automobile 20763,deer 20764,dog 20765,cat 20766,horse 20767,airplane 20768,dog 20769,truck 20770,deer 20771,frog 20772,truck 20773,automobile 20774,bird 20775,deer 20776,horse 20777,airplane 20778,frog 20779,dog 20780,bird 20781,bird 20782,airplane 20783,frog 20784,frog 20785,cat 20786,horse 20787,dog 20788,deer 20789,frog 20790,horse 20791,bird 20792,bird 20793,cat 20794,deer 20795,cat 20796,deer 20797,cat 20798,horse 20799,dog 20800,dog 20801,truck 20802,truck 20803,truck 20804,bird 20805,frog 20806,deer 20807,horse 20808,bird 20809,cat 20810,ship 20811,cat 20812,horse 20813,bird 20814,dog 20815,frog 20816,frog 20817,dog 20818,cat 20819,airplane 20820,deer 20821,bird 20822,truck 20823,dog 20824,deer 20825,cat 20826,bird 20827,automobile 20828,automobile 20829,horse 20830,dog 20831,deer 20832,horse 20833,airplane 20834,frog 20835,automobile 20836,deer 20837,frog 20838,deer 20839,ship 20840,deer 20841,airplane 20842,dog 20843,dog 20844,deer 20845,bird 20846,truck 20847,truck 20848,horse 20849,dog 20850,cat 20851,frog 20852,bird 20853,airplane 20854,airplane 20855,airplane 20856,truck 20857,frog 20858,bird 20859,horse 20860,truck 20861,horse 20862,horse 20863,horse 20864,cat 20865,truck 20866,deer 20867,cat 20868,horse 20869,dog 20870,bird 20871,bird 20872,cat 20873,frog 20874,ship 20875,deer 20876,truck 20877,deer 20878,truck 20879,airplane 20880,bird 20881,cat 20882,bird 20883,horse 20884,bird 20885,cat 20886,cat 20887,cat 20888,horse 20889,horse 20890,automobile 20891,ship 20892,deer 20893,deer 20894,cat 20895,truck 20896,deer 20897,bird 20898,truck 20899,automobile 20900,deer 20901,frog 20902,deer 20903,horse 20904,horse 20905,ship 20906,airplane 20907,deer 20908,cat 20909,frog 20910,automobile 20911,automobile 20912,deer 20913,dog 20914,cat 20915,cat 20916,horse 20917,cat 20918,cat 20919,dog 20920,frog 20921,cat 20922,deer 20923,cat 20924,truck 20925,deer 20926,bird 20927,deer 20928,ship 20929,ship 20930,deer 20931,ship 20932,cat 20933,truck 20934,cat 20935,dog 20936,airplane 20937,automobile 20938,frog 20939,bird 20940,automobile 20941,dog 20942,truck 20943,deer 20944,horse 20945,horse 20946,airplane 20947,ship 20948,airplane 20949,airplane 20950,dog 20951,horse 20952,ship 20953,cat 20954,horse 20955,truck 20956,bird 20957,automobile 20958,dog 20959,deer 20960,cat 20961,truck 20962,airplane 20963,cat 20964,airplane 20965,deer 20966,deer 20967,truck 20968,truck 20969,bird 20970,automobile 20971,bird 20972,horse 20973,deer 20974,dog 20975,ship 20976,horse 20977,truck 20978,dog 20979,bird 20980,frog 20981,deer 20982,dog 20983,cat 20984,ship 20985,dog 20986,ship 20987,cat 20988,horse 20989,horse 20990,frog 20991,dog 20992,cat 20993,deer 20994,deer 20995,ship 20996,horse 20997,automobile 20998,truck 20999,automobile 21000,truck 21001,frog 21002,cat 21003,deer 21004,automobile 21005,horse 21006,deer 21007,deer 21008,frog 21009,automobile 21010,deer 21011,horse 21012,horse 21013,horse 21014,cat 21015,dog 21016,bird 21017,frog 21018,automobile 21019,deer 21020,truck 21021,automobile 21022,bird 21023,airplane 21024,deer 21025,truck 21026,deer 21027,airplane 21028,deer 21029,dog 21030,cat 21031,frog 21032,frog 21033,airplane 21034,ship 21035,frog 21036,dog 21037,airplane 21038,airplane 21039,frog 21040,ship 21041,automobile 21042,automobile 21043,deer 21044,horse 21045,dog 21046,bird 21047,cat 21048,dog 21049,dog 21050,dog 21051,frog 21052,truck 21053,truck 21054,truck 21055,automobile 21056,frog 21057,dog 21058,airplane 21059,frog 21060,bird 21061,cat 21062,ship 21063,truck 21064,automobile 21065,automobile 21066,horse 21067,cat 21068,bird 21069,deer 21070,dog 21071,dog 21072,bird 21073,truck 21074,bird 21075,ship 21076,dog 21077,bird 21078,truck 21079,frog 21080,cat 21081,dog 21082,deer 21083,deer 21084,automobile 21085,dog 21086,automobile 21087,ship 21088,truck 21089,truck 21090,airplane 21091,deer 21092,frog 21093,frog 21094,truck 21095,deer 21096,bird 21097,frog 21098,truck 21099,bird 21100,deer 21101,truck 21102,horse 21103,horse 21104,deer 21105,deer 21106,horse 21107,ship 21108,airplane 21109,airplane 21110,bird 21111,ship 21112,automobile 21113,truck 21114,cat 21115,airplane 21116,deer 21117,airplane 21118,horse 21119,truck 21120,airplane 21121,truck 21122,deer 21123,horse 21124,cat 21125,deer 21126,truck 21127,deer 21128,automobile 21129,cat 21130,frog 21131,truck 21132,dog 21133,cat 21134,deer 21135,truck 21136,ship 21137,bird 21138,dog 21139,airplane 21140,horse 21141,cat 21142,horse 21143,frog 21144,horse 21145,ship 21146,frog 21147,airplane 21148,dog 21149,ship 21150,dog 21151,airplane 21152,dog 21153,horse 21154,frog 21155,automobile 21156,truck 21157,truck 21158,frog 21159,ship 21160,deer 21161,cat 21162,cat 21163,frog 21164,automobile 21165,deer 21166,bird 21167,dog 21168,cat 21169,horse 21170,deer 21171,deer 21172,truck 21173,automobile 21174,deer 21175,dog 21176,truck 21177,dog 21178,dog 21179,cat 21180,ship 21181,cat 21182,automobile 21183,ship 21184,truck 21185,dog 21186,airplane 21187,deer 21188,truck 21189,truck 21190,horse 21191,deer 21192,dog 21193,dog 21194,cat 21195,deer 21196,frog 21197,horse 21198,airplane 21199,airplane 21200,cat 21201,frog 21202,ship 21203,cat 21204,frog 21205,cat 21206,dog 21207,dog 21208,truck 21209,frog 21210,airplane 21211,dog 21212,horse 21213,dog 21214,truck 21215,deer 21216,ship 21217,truck 21218,automobile 21219,truck 21220,cat 21221,automobile 21222,truck 21223,automobile 21224,bird 21225,cat 21226,automobile 21227,cat 21228,frog 21229,cat 21230,frog 21231,deer 21232,automobile 21233,horse 21234,dog 21235,truck 21236,cat 21237,truck 21238,cat 21239,horse 21240,dog 21241,truck 21242,deer 21243,truck 21244,dog 21245,dog 21246,truck 21247,bird 21248,dog 21249,bird 21250,deer 21251,dog 21252,cat 21253,horse 21254,deer 21255,bird 21256,bird 21257,cat 21258,dog 21259,ship 21260,automobile 21261,horse 21262,cat 21263,deer 21264,frog 21265,deer 21266,frog 21267,horse 21268,airplane 21269,ship 21270,deer 21271,dog 21272,horse 21273,frog 21274,cat 21275,cat 21276,ship 21277,horse 21278,automobile 21279,ship 21280,airplane 21281,truck 21282,truck 21283,bird 21284,deer 21285,ship 21286,automobile 21287,automobile 21288,dog 21289,deer 21290,frog 21291,truck 21292,deer 21293,frog 21294,ship 21295,airplane 21296,dog 21297,truck 21298,dog 21299,airplane 21300,deer 21301,frog 21302,bird 21303,automobile 21304,airplane 21305,cat 21306,frog 21307,automobile 21308,dog 21309,airplane 21310,ship 21311,frog 21312,bird 21313,automobile 21314,bird 21315,horse 21316,airplane 21317,frog 21318,ship 21319,horse 21320,ship 21321,ship 21322,dog 21323,automobile 21324,cat 21325,frog 21326,bird 21327,frog 21328,deer 21329,cat 21330,truck 21331,deer 21332,dog 21333,truck 21334,frog 21335,horse 21336,cat 21337,truck 21338,deer 21339,airplane 21340,dog 21341,dog 21342,frog 21343,cat 21344,cat 21345,airplane 21346,dog 21347,dog 21348,deer 21349,bird 21350,airplane 21351,bird 21352,automobile 21353,dog 21354,cat 21355,horse 21356,cat 21357,deer 21358,deer 21359,automobile 21360,bird 21361,horse 21362,ship 21363,bird 21364,horse 21365,dog 21366,truck 21367,automobile 21368,frog 21369,deer 21370,airplane 21371,automobile 21372,truck 21373,cat 21374,horse 21375,horse 21376,bird 21377,deer 21378,automobile 21379,horse 21380,bird 21381,bird 21382,horse 21383,bird 21384,automobile 21385,cat 21386,horse 21387,bird 21388,frog 21389,frog 21390,frog 21391,airplane 21392,frog 21393,ship 21394,truck 21395,cat 21396,frog 21397,dog 21398,airplane 21399,horse 21400,frog 21401,automobile 21402,truck 21403,horse 21404,truck 21405,truck 21406,dog 21407,bird 21408,horse 21409,truck 21410,frog 21411,truck 21412,bird 21413,frog 21414,automobile 21415,truck 21416,truck 21417,frog 21418,frog 21419,bird 21420,airplane 21421,dog 21422,bird 21423,automobile 21424,truck 21425,bird 21426,ship 21427,truck 21428,deer 21429,ship 21430,cat 21431,horse 21432,frog 21433,truck 21434,horse 21435,deer 21436,dog 21437,deer 21438,cat 21439,airplane 21440,truck 21441,horse 21442,frog 21443,bird 21444,truck 21445,airplane 21446,frog 21447,cat 21448,frog 21449,deer 21450,dog 21451,bird 21452,dog 21453,frog 21454,horse 21455,frog 21456,dog 21457,frog 21458,cat 21459,ship 21460,dog 21461,airplane 21462,automobile 21463,bird 21464,dog 21465,cat 21466,bird 21467,dog 21468,automobile 21469,frog 21470,horse 21471,bird 21472,airplane 21473,frog 21474,frog 21475,ship 21476,frog 21477,airplane 21478,horse 21479,bird 21480,bird 21481,frog 21482,bird 21483,frog 21484,horse 21485,frog 21486,automobile 21487,ship 21488,automobile 21489,cat 21490,truck 21491,truck 21492,horse 21493,cat 21494,horse 21495,cat 21496,truck 21497,bird 21498,truck 21499,ship 21500,bird 21501,deer 21502,airplane 21503,airplane 21504,bird 21505,airplane 21506,truck 21507,deer 21508,horse 21509,dog 21510,frog 21511,horse 21512,ship 21513,airplane 21514,deer 21515,dog 21516,deer 21517,truck 21518,horse 21519,cat 21520,frog 21521,frog 21522,bird 21523,automobile 21524,ship 21525,deer 21526,truck 21527,ship 21528,bird 21529,dog 21530,dog 21531,bird 21532,horse 21533,truck 21534,ship 21535,truck 21536,automobile 21537,cat 21538,frog 21539,deer 21540,bird 21541,horse 21542,deer 21543,ship 21544,dog 21545,truck 21546,cat 21547,truck 21548,deer 21549,truck 21550,ship 21551,deer 21552,automobile 21553,truck 21554,airplane 21555,deer 21556,horse 21557,frog 21558,frog 21559,cat 21560,cat 21561,bird 21562,airplane 21563,bird 21564,horse 21565,deer 21566,cat 21567,bird 21568,frog 21569,frog 21570,truck 21571,dog 21572,ship 21573,dog 21574,deer 21575,horse 21576,deer 21577,airplane 21578,deer 21579,airplane 21580,horse 21581,deer 21582,dog 21583,frog 21584,cat 21585,horse 21586,automobile 21587,deer 21588,dog 21589,horse 21590,dog 21591,frog 21592,frog 21593,airplane 21594,dog 21595,frog 21596,dog 21597,ship 21598,frog 21599,cat 21600,bird 21601,cat 21602,truck 21603,deer 21604,deer 21605,automobile 21606,frog 21607,horse 21608,deer 21609,bird 21610,cat 21611,airplane 21612,deer 21613,ship 21614,cat 21615,cat 21616,cat 21617,truck 21618,frog 21619,airplane 21620,cat 21621,horse 21622,deer 21623,horse 21624,truck 21625,ship 21626,automobile 21627,frog 21628,deer 21629,frog 21630,horse 21631,deer 21632,deer 21633,cat 21634,automobile 21635,cat 21636,cat 21637,cat 21638,dog 21639,deer 21640,cat 21641,automobile 21642,ship 21643,cat 21644,dog 21645,truck 21646,dog 21647,frog 21648,bird 21649,truck 21650,deer 21651,deer 21652,horse 21653,horse 21654,horse 21655,ship 21656,truck 21657,cat 21658,frog 21659,airplane 21660,horse 21661,airplane 21662,horse 21663,deer 21664,deer 21665,frog 21666,horse 21667,truck 21668,horse 21669,frog 21670,frog 21671,ship 21672,deer 21673,truck 21674,ship 21675,automobile 21676,frog 21677,truck 21678,truck 21679,dog 21680,dog 21681,airplane 21682,frog 21683,dog 21684,dog 21685,dog 21686,cat 21687,horse 21688,bird 21689,truck 21690,automobile 21691,dog 21692,cat 21693,airplane 21694,dog 21695,cat 21696,deer 21697,bird 21698,airplane 21699,horse 21700,ship 21701,bird 21702,cat 21703,horse 21704,truck 21705,horse 21706,automobile 21707,truck 21708,frog 21709,horse 21710,deer 21711,bird 21712,cat 21713,airplane 21714,dog 21715,bird 21716,airplane 21717,horse 21718,truck 21719,ship 21720,truck 21721,deer 21722,dog 21723,dog 21724,frog 21725,cat 21726,bird 21727,dog 21728,airplane 21729,deer 21730,ship 21731,deer 21732,deer 21733,deer 21734,bird 21735,deer 21736,cat 21737,bird 21738,truck 21739,ship 21740,airplane 21741,truck 21742,deer 21743,airplane 21744,frog 21745,truck 21746,frog 21747,automobile 21748,dog 21749,frog 21750,frog 21751,truck 21752,ship 21753,ship 21754,deer 21755,airplane 21756,bird 21757,airplane 21758,deer 21759,ship 21760,cat 21761,horse 21762,frog 21763,deer 21764,dog 21765,ship 21766,horse 21767,dog 21768,cat 21769,deer 21770,horse 21771,deer 21772,horse 21773,frog 21774,bird 21775,airplane 21776,bird 21777,airplane 21778,ship 21779,ship 21780,cat 21781,deer 21782,bird 21783,frog 21784,airplane 21785,truck 21786,cat 21787,horse 21788,ship 21789,bird 21790,automobile 21791,dog 21792,deer 21793,cat 21794,dog 21795,frog 21796,horse 21797,frog 21798,deer 21799,truck 21800,bird 21801,truck 21802,bird 21803,truck 21804,airplane 21805,frog 21806,dog 21807,cat 21808,automobile 21809,dog 21810,deer 21811,truck 21812,ship 21813,bird 21814,automobile 21815,truck 21816,dog 21817,bird 21818,frog 21819,horse 21820,ship 21821,dog 21822,cat 21823,truck 21824,truck 21825,frog 21826,airplane 21827,deer 21828,bird 21829,truck 21830,frog 21831,horse 21832,cat 21833,airplane 21834,automobile 21835,bird 21836,dog 21837,frog 21838,cat 21839,cat 21840,automobile 21841,airplane 21842,deer 21843,airplane 21844,horse 21845,ship 21846,deer 21847,frog 21848,dog 21849,cat 21850,deer 21851,frog 21852,bird 21853,deer 21854,deer 21855,cat 21856,bird 21857,truck 21858,truck 21859,frog 21860,cat 21861,bird 21862,cat 21863,deer 21864,deer 21865,ship 21866,frog 21867,horse 21868,truck 21869,dog 21870,bird 21871,truck 21872,bird 21873,frog 21874,dog 21875,cat 21876,dog 21877,airplane 21878,dog 21879,truck 21880,dog 21881,horse 21882,frog 21883,truck 21884,deer 21885,deer 21886,cat 21887,dog 21888,cat 21889,automobile 21890,bird 21891,truck 21892,cat 21893,airplane 21894,truck 21895,truck 21896,airplane 21897,dog 21898,frog 21899,deer 21900,frog 21901,ship 21902,cat 21903,ship 21904,truck 21905,cat 21906,frog 21907,truck 21908,horse 21909,truck 21910,automobile 21911,deer 21912,frog 21913,cat 21914,deer 21915,dog 21916,deer 21917,deer 21918,ship 21919,frog 21920,frog 21921,automobile 21922,frog 21923,dog 21924,truck 21925,bird 21926,ship 21927,cat 21928,truck 21929,airplane 21930,frog 21931,deer 21932,ship 21933,truck 21934,cat 21935,frog 21936,ship 21937,truck 21938,deer 21939,frog 21940,automobile 21941,bird 21942,deer 21943,ship 21944,airplane 21945,dog 21946,airplane 21947,bird 21948,deer 21949,airplane 21950,bird 21951,truck 21952,horse 21953,cat 21954,truck 21955,frog 21956,automobile 21957,truck 21958,deer 21959,cat 21960,deer 21961,truck 21962,cat 21963,airplane 21964,horse 21965,cat 21966,ship 21967,dog 21968,airplane 21969,deer 21970,frog 21971,automobile 21972,bird 21973,ship 21974,dog 21975,ship 21976,truck 21977,airplane 21978,bird 21979,cat 21980,deer 21981,airplane 21982,cat 21983,truck 21984,automobile 21985,deer 21986,automobile 21987,cat 21988,bird 21989,ship 21990,deer 21991,cat 21992,truck 21993,frog 21994,ship 21995,automobile 21996,bird 21997,truck 21998,deer 21999,airplane 22000,deer 22001,deer 22002,cat 22003,automobile 22004,frog 22005,truck 22006,bird 22007,dog 22008,automobile 22009,horse 22010,cat 22011,dog 22012,ship 22013,bird 22014,airplane 22015,dog 22016,horse 22017,cat 22018,ship 22019,bird 22020,frog 22021,ship 22022,dog 22023,airplane 22024,horse 22025,bird 22026,automobile 22027,horse 22028,truck 22029,dog 22030,bird 22031,deer 22032,frog 22033,dog 22034,deer 22035,airplane 22036,cat 22037,airplane 22038,airplane 22039,frog 22040,dog 22041,ship 22042,airplane 22043,ship 22044,frog 22045,automobile 22046,dog 22047,bird 22048,frog 22049,cat 22050,bird 22051,cat 22052,truck 22053,airplane 22054,dog 22055,deer 22056,dog 22057,frog 22058,deer 22059,airplane 22060,cat 22061,dog 22062,cat 22063,ship 22064,deer 22065,truck 22066,frog 22067,automobile 22068,airplane 22069,frog 22070,automobile 22071,cat 22072,bird 22073,bird 22074,airplane 22075,horse 22076,deer 22077,deer 22078,cat 22079,ship 22080,truck 22081,frog 22082,ship 22083,frog 22084,truck 22085,dog 22086,ship 22087,bird 22088,horse 22089,dog 22090,frog 22091,airplane 22092,horse 22093,cat 22094,truck 22095,bird 22096,dog 22097,truck 22098,dog 22099,dog 22100,dog 22101,automobile 22102,frog 22103,airplane 22104,horse 22105,automobile 22106,frog 22107,truck 22108,airplane 22109,bird 22110,cat 22111,horse 22112,frog 22113,deer 22114,horse 22115,airplane 22116,automobile 22117,airplane 22118,dog 22119,airplane 22120,truck 22121,deer 22122,frog 22123,bird 22124,bird 22125,truck 22126,bird 22127,airplane 22128,dog 22129,automobile 22130,airplane 22131,ship 22132,ship 22133,ship 22134,airplane 22135,airplane 22136,dog 22137,bird 22138,dog 22139,truck 22140,cat 22141,bird 22142,deer 22143,cat 22144,deer 22145,airplane 22146,frog 22147,deer 22148,deer 22149,truck 22150,horse 22151,deer 22152,deer 22153,dog 22154,horse 22155,dog 22156,bird 22157,truck 22158,truck 22159,airplane 22160,bird 22161,cat 22162,frog 22163,frog 22164,bird 22165,truck 22166,bird 22167,frog 22168,dog 22169,bird 22170,frog 22171,frog 22172,frog 22173,frog 22174,truck 22175,deer 22176,horse 22177,deer 22178,bird 22179,bird 22180,deer 22181,cat 22182,dog 22183,ship 22184,truck 22185,deer 22186,bird 22187,frog 22188,ship 22189,cat 22190,truck 22191,deer 22192,truck 22193,cat 22194,airplane 22195,dog 22196,cat 22197,deer 22198,horse 22199,automobile 22200,horse 22201,truck 22202,automobile 22203,frog 22204,horse 22205,bird 22206,airplane 22207,frog 22208,cat 22209,deer 22210,dog 22211,cat 22212,frog 22213,deer 22214,ship 22215,dog 22216,deer 22217,frog 22218,ship 22219,cat 22220,deer 22221,dog 22222,frog 22223,cat 22224,truck 22225,frog 22226,truck 22227,ship 22228,truck 22229,deer 22230,cat 22231,bird 22232,airplane 22233,airplane 22234,ship 22235,airplane 22236,ship 22237,cat 22238,truck 22239,cat 22240,cat 22241,deer 22242,deer 22243,frog 22244,frog 22245,airplane 22246,cat 22247,frog 22248,deer 22249,horse 22250,dog 22251,dog 22252,deer 22253,ship 22254,deer 22255,truck 22256,frog 22257,ship 22258,horse 22259,automobile 22260,horse 22261,truck 22262,automobile 22263,horse 22264,truck 22265,bird 22266,automobile 22267,horse 22268,truck 22269,frog 22270,dog 22271,cat 22272,dog 22273,airplane 22274,airplane 22275,cat 22276,truck 22277,deer 22278,ship 22279,dog 22280,frog 22281,horse 22282,frog 22283,truck 22284,dog 22285,horse 22286,ship 22287,cat 22288,deer 22289,frog 22290,frog 22291,truck 22292,bird 22293,deer 22294,dog 22295,cat 22296,frog 22297,truck 22298,deer 22299,bird 22300,truck 22301,cat 22302,deer 22303,cat 22304,horse 22305,deer 22306,deer 22307,frog 22308,truck 22309,bird 22310,frog 22311,airplane 22312,cat 22313,bird 22314,ship 22315,airplane 22316,ship 22317,cat 22318,deer 22319,bird 22320,truck 22321,cat 22322,automobile 22323,dog 22324,truck 22325,cat 22326,bird 22327,cat 22328,airplane 22329,deer 22330,bird 22331,ship 22332,deer 22333,cat 22334,bird 22335,bird 22336,frog 22337,deer 22338,frog 22339,dog 22340,frog 22341,horse 22342,horse 22343,dog 22344,deer 22345,deer 22346,truck 22347,frog 22348,bird 22349,cat 22350,deer 22351,deer 22352,cat 22353,horse 22354,dog 22355,frog 22356,cat 22357,dog 22358,automobile 22359,frog 22360,deer 22361,truck 22362,horse 22363,truck 22364,ship 22365,ship 22366,horse 22367,automobile 22368,automobile 22369,cat 22370,frog 22371,ship 22372,ship 22373,ship 22374,frog 22375,dog 22376,cat 22377,deer 22378,airplane 22379,dog 22380,cat 22381,deer 22382,deer 22383,cat 22384,automobile 22385,ship 22386,bird 22387,ship 22388,frog 22389,airplane 22390,cat 22391,truck 22392,automobile 22393,frog 22394,truck 22395,dog 22396,cat 22397,truck 22398,frog 22399,horse 22400,bird 22401,cat 22402,cat 22403,horse 22404,cat 22405,frog 22406,cat 22407,dog 22408,frog 22409,bird 22410,horse 22411,deer 22412,deer 22413,deer 22414,ship 22415,cat 22416,bird 22417,truck 22418,ship 22419,truck 22420,cat 22421,airplane 22422,truck 22423,frog 22424,automobile 22425,bird 22426,ship 22427,bird 22428,automobile 22429,cat 22430,airplane 22431,dog 22432,bird 22433,bird 22434,horse 22435,ship 22436,cat 22437,horse 22438,horse 22439,deer 22440,horse 22441,dog 22442,frog 22443,horse 22444,horse 22445,deer 22446,airplane 22447,bird 22448,cat 22449,truck 22450,airplane 22451,automobile 22452,truck 22453,horse 22454,automobile 22455,ship 22456,airplane 22457,cat 22458,deer 22459,automobile 22460,airplane 22461,ship 22462,horse 22463,horse 22464,airplane 22465,cat 22466,deer 22467,airplane 22468,horse 22469,frog 22470,airplane 22471,truck 22472,automobile 22473,deer 22474,truck 22475,truck 22476,automobile 22477,cat 22478,automobile 22479,frog 22480,automobile 22481,deer 22482,deer 22483,cat 22484,deer 22485,cat 22486,bird 22487,dog 22488,dog 22489,dog 22490,truck 22491,truck 22492,bird 22493,truck 22494,deer 22495,truck 22496,dog 22497,truck 22498,cat 22499,bird 22500,truck 22501,truck 22502,automobile 22503,airplane 22504,frog 22505,truck 22506,deer 22507,frog 22508,deer 22509,horse 22510,frog 22511,cat 22512,dog 22513,automobile 22514,bird 22515,cat 22516,ship 22517,horse 22518,dog 22519,horse 22520,horse 22521,truck 22522,horse 22523,bird 22524,horse 22525,ship 22526,cat 22527,deer 22528,deer 22529,cat 22530,truck 22531,automobile 22532,airplane 22533,horse 22534,truck 22535,deer 22536,truck 22537,horse 22538,dog 22539,airplane 22540,frog 22541,airplane 22542,dog 22543,deer 22544,truck 22545,truck 22546,dog 22547,cat 22548,cat 22549,truck 22550,automobile 22551,dog 22552,horse 22553,deer 22554,dog 22555,horse 22556,automobile 22557,deer 22558,airplane 22559,dog 22560,cat 22561,truck 22562,automobile 22563,bird 22564,frog 22565,frog 22566,cat 22567,cat 22568,dog 22569,airplane 22570,frog 22571,deer 22572,deer 22573,deer 22574,cat 22575,frog 22576,frog 22577,airplane 22578,frog 22579,airplane 22580,bird 22581,deer 22582,dog 22583,horse 22584,automobile 22585,bird 22586,bird 22587,cat 22588,cat 22589,deer 22590,frog 22591,automobile 22592,cat 22593,cat 22594,bird 22595,deer 22596,dog 22597,deer 22598,truck 22599,horse 22600,cat 22601,frog 22602,frog 22603,frog 22604,deer 22605,cat 22606,truck 22607,deer 22608,automobile 22609,cat 22610,cat 22611,truck 22612,deer 22613,airplane 22614,frog 22615,truck 22616,frog 22617,airplane 22618,bird 22619,frog 22620,bird 22621,deer 22622,airplane 22623,cat 22624,frog 22625,dog 22626,automobile 22627,dog 22628,cat 22629,truck 22630,airplane 22631,frog 22632,ship 22633,deer 22634,cat 22635,bird 22636,truck 22637,truck 22638,automobile 22639,truck 22640,deer 22641,frog 22642,frog 22643,bird 22644,deer 22645,cat 22646,deer 22647,airplane 22648,dog 22649,horse 22650,airplane 22651,automobile 22652,horse 22653,frog 22654,deer 22655,deer 22656,airplane 22657,automobile 22658,automobile 22659,cat 22660,frog 22661,automobile 22662,ship 22663,horse 22664,dog 22665,bird 22666,bird 22667,automobile 22668,truck 22669,automobile 22670,bird 22671,truck 22672,cat 22673,frog 22674,ship 22675,deer 22676,frog 22677,dog 22678,horse 22679,truck 22680,cat 22681,frog 22682,dog 22683,truck 22684,dog 22685,frog 22686,frog 22687,bird 22688,cat 22689,truck 22690,cat 22691,truck 22692,frog 22693,dog 22694,airplane 22695,dog 22696,deer 22697,frog 22698,horse 22699,truck 22700,horse 22701,frog 22702,truck 22703,automobile 22704,bird 22705,frog 22706,cat 22707,horse 22708,automobile 22709,cat 22710,deer 22711,deer 22712,cat 22713,frog 22714,cat 22715,automobile 22716,airplane 22717,cat 22718,frog 22719,deer 22720,deer 22721,airplane 22722,bird 22723,automobile 22724,frog 22725,deer 22726,ship 22727,ship 22728,horse 22729,horse 22730,truck 22731,cat 22732,cat 22733,bird 22734,ship 22735,horse 22736,deer 22737,airplane 22738,airplane 22739,frog 22740,airplane 22741,airplane 22742,ship 22743,frog 22744,truck 22745,dog 22746,truck 22747,deer 22748,automobile 22749,horse 22750,deer 22751,automobile 22752,deer 22753,ship 22754,cat 22755,cat 22756,truck 22757,deer 22758,deer 22759,deer 22760,horse 22761,deer 22762,horse 22763,horse 22764,bird 22765,horse 22766,truck 22767,truck 22768,frog 22769,ship 22770,airplane 22771,dog 22772,automobile 22773,airplane 22774,cat 22775,truck 22776,dog 22777,airplane 22778,ship 22779,deer 22780,cat 22781,cat 22782,deer 22783,horse 22784,deer 22785,dog 22786,ship 22787,automobile 22788,frog 22789,frog 22790,dog 22791,deer 22792,airplane 22793,cat 22794,frog 22795,truck 22796,airplane 22797,dog 22798,dog 22799,cat 22800,deer 22801,deer 22802,horse 22803,cat 22804,cat 22805,airplane 22806,automobile 22807,automobile 22808,deer 22809,frog 22810,bird 22811,deer 22812,ship 22813,dog 22814,frog 22815,truck 22816,dog 22817,bird 22818,frog 22819,automobile 22820,horse 22821,truck 22822,frog 22823,dog 22824,horse 22825,cat 22826,cat 22827,bird 22828,ship 22829,dog 22830,dog 22831,dog 22832,bird 22833,frog 22834,deer 22835,frog 22836,cat 22837,deer 22838,cat 22839,truck 22840,horse 22841,automobile 22842,cat 22843,frog 22844,frog 22845,airplane 22846,ship 22847,airplane 22848,airplane 22849,cat 22850,automobile 22851,cat 22852,cat 22853,ship 22854,deer 22855,deer 22856,dog 22857,deer 22858,ship 22859,cat 22860,dog 22861,airplane 22862,cat 22863,dog 22864,horse 22865,frog 22866,airplane 22867,cat 22868,deer 22869,frog 22870,truck 22871,ship 22872,truck 22873,cat 22874,automobile 22875,frog 22876,dog 22877,deer 22878,bird 22879,cat 22880,bird 22881,bird 22882,deer 22883,frog 22884,horse 22885,cat 22886,frog 22887,dog 22888,automobile 22889,automobile 22890,bird 22891,horse 22892,frog 22893,automobile 22894,frog 22895,bird 22896,horse 22897,frog 22898,automobile 22899,cat 22900,deer 22901,airplane 22902,dog 22903,frog 22904,horse 22905,frog 22906,frog 22907,airplane 22908,dog 22909,frog 22910,bird 22911,cat 22912,cat 22913,frog 22914,ship 22915,frog 22916,truck 22917,deer 22918,dog 22919,deer 22920,deer 22921,ship 22922,horse 22923,cat 22924,horse 22925,airplane 22926,cat 22927,cat 22928,airplane 22929,frog 22930,truck 22931,cat 22932,airplane 22933,dog 22934,deer 22935,frog 22936,deer 22937,ship 22938,frog 22939,deer 22940,dog 22941,cat 22942,ship 22943,deer 22944,deer 22945,frog 22946,deer 22947,ship 22948,horse 22949,dog 22950,deer 22951,deer 22952,dog 22953,horse 22954,dog 22955,truck 22956,frog 22957,horse 22958,dog 22959,automobile 22960,frog 22961,frog 22962,dog 22963,frog 22964,truck 22965,airplane 22966,bird 22967,truck 22968,automobile 22969,dog 22970,frog 22971,deer 22972,deer 22973,bird 22974,airplane 22975,cat 22976,dog 22977,bird 22978,truck 22979,dog 22980,bird 22981,frog 22982,airplane 22983,airplane 22984,truck 22985,airplane 22986,dog 22987,cat 22988,frog 22989,cat 22990,dog 22991,bird 22992,horse 22993,truck 22994,bird 22995,cat 22996,cat 22997,ship 22998,deer 22999,cat 23000,airplane 23001,automobile 23002,ship 23003,automobile 23004,automobile 23005,bird 23006,bird 23007,cat 23008,frog 23009,deer 23010,dog 23011,deer 23012,frog 23013,horse 23014,horse 23015,truck 23016,deer 23017,deer 23018,deer 23019,ship 23020,cat 23021,deer 23022,automobile 23023,bird 23024,bird 23025,cat 23026,frog 23027,airplane 23028,truck 23029,frog 23030,horse 23031,truck 23032,automobile 23033,frog 23034,ship 23035,cat 23036,horse 23037,ship 23038,deer 23039,deer 23040,dog 23041,dog 23042,horse 23043,automobile 23044,cat 23045,dog 23046,dog 23047,ship 23048,dog 23049,horse 23050,dog 23051,dog 23052,automobile 23053,airplane 23054,deer 23055,deer 23056,dog 23057,cat 23058,dog 23059,automobile 23060,deer 23061,deer 23062,truck 23063,ship 23064,dog 23065,truck 23066,deer 23067,frog 23068,dog 23069,deer 23070,airplane 23071,frog 23072,frog 23073,dog 23074,cat 23075,ship 23076,ship 23077,ship 23078,bird 23079,deer 23080,automobile 23081,automobile 23082,bird 23083,truck 23084,deer 23085,horse 23086,deer 23087,dog 23088,dog 23089,ship 23090,automobile 23091,truck 23092,deer 23093,deer 23094,dog 23095,horse 23096,dog 23097,deer 23098,truck 23099,airplane 23100,dog 23101,ship 23102,dog 23103,bird 23104,automobile 23105,cat 23106,cat 23107,dog 23108,frog 23109,airplane 23110,ship 23111,airplane 23112,horse 23113,horse 23114,automobile 23115,cat 23116,deer 23117,frog 23118,bird 23119,dog 23120,automobile 23121,dog 23122,dog 23123,horse 23124,truck 23125,deer 23126,cat 23127,airplane 23128,bird 23129,deer 23130,cat 23131,ship 23132,dog 23133,bird 23134,automobile 23135,bird 23136,cat 23137,dog 23138,cat 23139,bird 23140,dog 23141,truck 23142,horse 23143,deer 23144,cat 23145,cat 23146,frog 23147,cat 23148,cat 23149,horse 23150,bird 23151,bird 23152,deer 23153,frog 23154,automobile 23155,ship 23156,automobile 23157,bird 23158,deer 23159,automobile 23160,dog 23161,deer 23162,automobile 23163,ship 23164,deer 23165,cat 23166,bird 23167,airplane 23168,truck 23169,ship 23170,deer 23171,deer 23172,deer 23173,dog 23174,airplane 23175,automobile 23176,deer 23177,frog 23178,frog 23179,deer 23180,frog 23181,cat 23182,truck 23183,automobile 23184,bird 23185,cat 23186,deer 23187,deer 23188,cat 23189,frog 23190,dog 23191,frog 23192,truck 23193,automobile 23194,frog 23195,automobile 23196,ship 23197,deer 23198,deer 23199,truck 23200,bird 23201,frog 23202,truck 23203,deer 23204,automobile 23205,truck 23206,airplane 23207,cat 23208,deer 23209,deer 23210,frog 23211,horse 23212,cat 23213,dog 23214,cat 23215,airplane 23216,dog 23217,cat 23218,cat 23219,bird 23220,bird 23221,dog 23222,cat 23223,cat 23224,bird 23225,deer 23226,airplane 23227,bird 23228,truck 23229,dog 23230,automobile 23231,ship 23232,horse 23233,frog 23234,automobile 23235,ship 23236,ship 23237,frog 23238,deer 23239,bird 23240,ship 23241,airplane 23242,horse 23243,truck 23244,dog 23245,deer 23246,deer 23247,frog 23248,dog 23249,dog 23250,horse 23251,ship 23252,ship 23253,truck 23254,deer 23255,cat 23256,bird 23257,horse 23258,airplane 23259,horse 23260,cat 23261,cat 23262,bird 23263,bird 23264,deer 23265,airplane 23266,truck 23267,airplane 23268,cat 23269,automobile 23270,automobile 23271,deer 23272,automobile 23273,automobile 23274,dog 23275,cat 23276,deer 23277,airplane 23278,ship 23279,bird 23280,truck 23281,horse 23282,dog 23283,horse 23284,dog 23285,dog 23286,frog 23287,cat 23288,frog 23289,horse 23290,dog 23291,deer 23292,deer 23293,cat 23294,cat 23295,horse 23296,horse 23297,automobile 23298,cat 23299,dog 23300,dog 23301,frog 23302,cat 23303,dog 23304,deer 23305,cat 23306,frog 23307,dog 23308,bird 23309,frog 23310,bird 23311,bird 23312,automobile 23313,cat 23314,deer 23315,ship 23316,ship 23317,dog 23318,deer 23319,cat 23320,frog 23321,airplane 23322,ship 23323,frog 23324,truck 23325,horse 23326,truck 23327,deer 23328,cat 23329,airplane 23330,truck 23331,airplane 23332,deer 23333,ship 23334,cat 23335,deer 23336,dog 23337,frog 23338,deer 23339,cat 23340,airplane 23341,dog 23342,deer 23343,truck 23344,dog 23345,airplane 23346,bird 23347,dog 23348,horse 23349,dog 23350,horse 23351,dog 23352,airplane 23353,cat 23354,bird 23355,cat 23356,cat 23357,frog 23358,bird 23359,cat 23360,frog 23361,horse 23362,deer 23363,automobile 23364,cat 23365,horse 23366,frog 23367,frog 23368,truck 23369,frog 23370,ship 23371,cat 23372,ship 23373,cat 23374,cat 23375,dog 23376,cat 23377,truck 23378,frog 23379,deer 23380,truck 23381,deer 23382,frog 23383,automobile 23384,ship 23385,cat 23386,automobile 23387,deer 23388,deer 23389,airplane 23390,frog 23391,bird 23392,dog 23393,airplane 23394,bird 23395,horse 23396,airplane 23397,deer 23398,bird 23399,automobile 23400,cat 23401,deer 23402,ship 23403,dog 23404,airplane 23405,truck 23406,dog 23407,truck 23408,cat 23409,cat 23410,frog 23411,frog 23412,truck 23413,automobile 23414,deer 23415,bird 23416,cat 23417,frog 23418,horse 23419,deer 23420,frog 23421,dog 23422,horse 23423,automobile 23424,deer 23425,deer 23426,dog 23427,automobile 23428,automobile 23429,deer 23430,horse 23431,bird 23432,cat 23433,dog 23434,automobile 23435,cat 23436,deer 23437,ship 23438,ship 23439,ship 23440,airplane 23441,frog 23442,dog 23443,cat 23444,cat 23445,dog 23446,bird 23447,frog 23448,frog 23449,deer 23450,dog 23451,cat 23452,dog 23453,deer 23454,cat 23455,bird 23456,frog 23457,airplane 23458,cat 23459,ship 23460,frog 23461,truck 23462,deer 23463,deer 23464,horse 23465,deer 23466,deer 23467,cat 23468,frog 23469,airplane 23470,bird 23471,frog 23472,dog 23473,dog 23474,deer 23475,deer 23476,cat 23477,horse 23478,truck 23479,deer 23480,deer 23481,ship 23482,dog 23483,horse 23484,cat 23485,truck 23486,dog 23487,cat 23488,horse 23489,cat 23490,ship 23491,horse 23492,deer 23493,bird 23494,deer 23495,horse 23496,truck 23497,frog 23498,bird 23499,frog 23500,airplane 23501,deer 23502,cat 23503,airplane 23504,ship 23505,airplane 23506,frog 23507,airplane 23508,deer 23509,horse 23510,deer 23511,dog 23512,cat 23513,frog 23514,dog 23515,horse 23516,deer 23517,deer 23518,truck 23519,truck 23520,truck 23521,truck 23522,cat 23523,airplane 23524,airplane 23525,deer 23526,bird 23527,truck 23528,automobile 23529,bird 23530,horse 23531,horse 23532,horse 23533,cat 23534,dog 23535,frog 23536,airplane 23537,cat 23538,cat 23539,dog 23540,truck 23541,airplane 23542,horse 23543,truck 23544,frog 23545,frog 23546,airplane 23547,truck 23548,cat 23549,cat 23550,dog 23551,truck 23552,dog 23553,bird 23554,automobile 23555,dog 23556,airplane 23557,dog 23558,deer 23559,automobile 23560,frog 23561,truck 23562,bird 23563,horse 23564,ship 23565,deer 23566,dog 23567,bird 23568,dog 23569,ship 23570,bird 23571,horse 23572,frog 23573,horse 23574,ship 23575,deer 23576,cat 23577,ship 23578,cat 23579,dog 23580,truck 23581,truck 23582,horse 23583,truck 23584,automobile 23585,horse 23586,deer 23587,frog 23588,ship 23589,truck 23590,dog 23591,truck 23592,automobile 23593,airplane 23594,dog 23595,deer 23596,truck 23597,airplane 23598,horse 23599,frog 23600,horse 23601,frog 23602,bird 23603,frog 23604,horse 23605,horse 23606,deer 23607,airplane 23608,frog 23609,frog 23610,ship 23611,bird 23612,deer 23613,cat 23614,dog 23615,horse 23616,ship 23617,truck 23618,deer 23619,cat 23620,ship 23621,airplane 23622,cat 23623,cat 23624,truck 23625,bird 23626,ship 23627,dog 23628,ship 23629,horse 23630,ship 23631,horse 23632,cat 23633,airplane 23634,dog 23635,ship 23636,cat 23637,deer 23638,dog 23639,truck 23640,bird 23641,ship 23642,frog 23643,deer 23644,bird 23645,frog 23646,truck 23647,horse 23648,bird 23649,horse 23650,dog 23651,bird 23652,dog 23653,bird 23654,ship 23655,automobile 23656,truck 23657,bird 23658,airplane 23659,frog 23660,truck 23661,frog 23662,deer 23663,frog 23664,truck 23665,cat 23666,horse 23667,horse 23668,airplane 23669,automobile 23670,cat 23671,frog 23672,frog 23673,truck 23674,truck 23675,bird 23676,airplane 23677,dog 23678,dog 23679,automobile 23680,airplane 23681,deer 23682,deer 23683,deer 23684,cat 23685,deer 23686,deer 23687,automobile 23688,deer 23689,frog 23690,cat 23691,deer 23692,airplane 23693,horse 23694,frog 23695,bird 23696,ship 23697,horse 23698,airplane 23699,horse 23700,dog 23701,ship 23702,deer 23703,ship 23704,automobile 23705,truck 23706,bird 23707,bird 23708,airplane 23709,deer 23710,frog 23711,deer 23712,frog 23713,frog 23714,frog 23715,deer 23716,cat 23717,deer 23718,bird 23719,cat 23720,horse 23721,dog 23722,truck 23723,frog 23724,ship 23725,airplane 23726,frog 23727,ship 23728,frog 23729,frog 23730,truck 23731,bird 23732,ship 23733,cat 23734,truck 23735,automobile 23736,ship 23737,airplane 23738,frog 23739,horse 23740,deer 23741,horse 23742,horse 23743,dog 23744,horse 23745,ship 23746,cat 23747,frog 23748,ship 23749,bird 23750,deer 23751,automobile 23752,automobile 23753,cat 23754,horse 23755,truck 23756,bird 23757,automobile 23758,bird 23759,automobile 23760,frog 23761,deer 23762,dog 23763,truck 23764,bird 23765,ship 23766,horse 23767,ship 23768,dog 23769,horse 23770,cat 23771,bird 23772,dog 23773,cat 23774,horse 23775,automobile 23776,frog 23777,bird 23778,truck 23779,cat 23780,truck 23781,truck 23782,airplane 23783,frog 23784,ship 23785,frog 23786,deer 23787,ship 23788,automobile 23789,dog 23790,cat 23791,automobile 23792,bird 23793,cat 23794,horse 23795,dog 23796,ship 23797,horse 23798,frog 23799,cat 23800,dog 23801,frog 23802,cat 23803,truck 23804,bird 23805,cat 23806,airplane 23807,ship 23808,dog 23809,automobile 23810,automobile 23811,frog 23812,horse 23813,cat 23814,bird 23815,truck 23816,frog 23817,airplane 23818,frog 23819,dog 23820,truck 23821,automobile 23822,cat 23823,truck 23824,automobile 23825,dog 23826,truck 23827,ship 23828,ship 23829,deer 23830,horse 23831,airplane 23832,truck 23833,dog 23834,cat 23835,horse 23836,horse 23837,frog 23838,automobile 23839,truck 23840,bird 23841,frog 23842,airplane 23843,ship 23844,horse 23845,horse 23846,airplane 23847,ship 23848,cat 23849,ship 23850,horse 23851,truck 23852,cat 23853,deer 23854,deer 23855,automobile 23856,cat 23857,dog 23858,cat 23859,cat 23860,truck 23861,ship 23862,deer 23863,truck 23864,truck 23865,cat 23866,truck 23867,horse 23868,airplane 23869,truck 23870,airplane 23871,truck 23872,bird 23873,frog 23874,deer 23875,airplane 23876,airplane 23877,deer 23878,horse 23879,horse 23880,dog 23881,cat 23882,horse 23883,bird 23884,deer 23885,horse 23886,deer 23887,horse 23888,horse 23889,truck 23890,cat 23891,truck 23892,dog 23893,truck 23894,deer 23895,automobile 23896,ship 23897,truck 23898,automobile 23899,bird 23900,ship 23901,frog 23902,deer 23903,airplane 23904,ship 23905,cat 23906,deer 23907,airplane 23908,frog 23909,cat 23910,truck 23911,horse 23912,airplane 23913,deer 23914,airplane 23915,dog 23916,deer 23917,dog 23918,deer 23919,deer 23920,cat 23921,truck 23922,bird 23923,truck 23924,horse 23925,truck 23926,truck 23927,truck 23928,dog 23929,automobile 23930,cat 23931,cat 23932,airplane 23933,deer 23934,bird 23935,cat 23936,airplane 23937,cat 23938,dog 23939,dog 23940,ship 23941,bird 23942,ship 23943,truck 23944,dog 23945,deer 23946,horse 23947,automobile 23948,dog 23949,dog 23950,automobile 23951,cat 23952,deer 23953,truck 23954,ship 23955,airplane 23956,cat 23957,cat 23958,horse 23959,ship 23960,deer 23961,cat 23962,cat 23963,truck 23964,deer 23965,dog 23966,airplane 23967,cat 23968,deer 23969,frog 23970,deer 23971,horse 23972,cat 23973,ship 23974,cat 23975,truck 23976,truck 23977,automobile 23978,ship 23979,bird 23980,truck 23981,airplane 23982,cat 23983,deer 23984,bird 23985,truck 23986,ship 23987,frog 23988,frog 23989,cat 23990,dog 23991,ship 23992,horse 23993,cat 23994,truck 23995,airplane 23996,automobile 23997,deer 23998,cat 23999,horse 24000,cat 24001,truck 24002,airplane 24003,truck 24004,airplane 24005,deer 24006,dog 24007,horse 24008,frog 24009,deer 24010,truck 24011,deer 24012,horse 24013,airplane 24014,bird 24015,dog 24016,frog 24017,ship 24018,automobile 24019,cat 24020,bird 24021,horse 24022,deer 24023,frog 24024,deer 24025,bird 24026,frog 24027,frog 24028,cat 24029,automobile 24030,frog 24031,frog 24032,bird 24033,frog 24034,truck 24035,horse 24036,automobile 24037,automobile 24038,horse 24039,ship 24040,ship 24041,airplane 24042,cat 24043,cat 24044,airplane 24045,cat 24046,automobile 24047,horse 24048,automobile 24049,airplane 24050,frog 24051,truck 24052,frog 24053,automobile 24054,bird 24055,bird 24056,bird 24057,bird 24058,frog 24059,deer 24060,cat 24061,cat 24062,deer 24063,cat 24064,horse 24065,automobile 24066,deer 24067,frog 24068,horse 24069,cat 24070,horse 24071,truck 24072,deer 24073,horse 24074,horse 24075,ship 24076,horse 24077,truck 24078,ship 24079,bird 24080,cat 24081,bird 24082,truck 24083,truck 24084,truck 24085,ship 24086,truck 24087,ship 24088,automobile 24089,airplane 24090,bird 24091,deer 24092,frog 24093,ship 24094,cat 24095,cat 24096,deer 24097,automobile 24098,truck 24099,deer 24100,automobile 24101,cat 24102,frog 24103,deer 24104,bird 24105,cat 24106,automobile 24107,dog 24108,horse 24109,dog 24110,deer 24111,frog 24112,truck 24113,airplane 24114,ship 24115,horse 24116,frog 24117,frog 24118,frog 24119,horse 24120,bird 24121,deer 24122,deer 24123,deer 24124,cat 24125,horse 24126,truck 24127,airplane 24128,horse 24129,cat 24130,frog 24131,airplane 24132,truck 24133,truck 24134,automobile 24135,frog 24136,cat 24137,bird 24138,deer 24139,frog 24140,automobile 24141,ship 24142,automobile 24143,dog 24144,deer 24145,truck 24146,dog 24147,automobile 24148,airplane 24149,ship 24150,truck 24151,dog 24152,automobile 24153,cat 24154,dog 24155,horse 24156,frog 24157,horse 24158,automobile 24159,ship 24160,horse 24161,frog 24162,dog 24163,ship 24164,cat 24165,deer 24166,cat 24167,cat 24168,cat 24169,deer 24170,deer 24171,airplane 24172,truck 24173,airplane 24174,cat 24175,dog 24176,ship 24177,truck 24178,bird 24179,frog 24180,dog 24181,ship 24182,frog 24183,cat 24184,truck 24185,ship 24186,dog 24187,cat 24188,frog 24189,truck 24190,frog 24191,dog 24192,bird 24193,ship 24194,automobile 24195,horse 24196,ship 24197,deer 24198,dog 24199,ship 24200,truck 24201,horse 24202,bird 24203,ship 24204,horse 24205,cat 24206,bird 24207,cat 24208,bird 24209,cat 24210,airplane 24211,bird 24212,deer 24213,airplane 24214,horse 24215,airplane 24216,ship 24217,deer 24218,deer 24219,cat 24220,dog 24221,frog 24222,deer 24223,deer 24224,airplane 24225,deer 24226,airplane 24227,deer 24228,cat 24229,dog 24230,airplane 24231,ship 24232,dog 24233,truck 24234,airplane 24235,bird 24236,horse 24237,cat 24238,deer 24239,automobile 24240,deer 24241,ship 24242,dog 24243,deer 24244,airplane 24245,frog 24246,dog 24247,deer 24248,cat 24249,deer 24250,frog 24251,cat 24252,horse 24253,deer 24254,bird 24255,automobile 24256,frog 24257,dog 24258,frog 24259,ship 24260,bird 24261,automobile 24262,airplane 24263,truck 24264,airplane 24265,cat 24266,automobile 24267,deer 24268,cat 24269,cat 24270,deer 24271,truck 24272,airplane 24273,cat 24274,frog 24275,ship 24276,truck 24277,ship 24278,cat 24279,horse 24280,deer 24281,bird 24282,bird 24283,dog 24284,airplane 24285,cat 24286,airplane 24287,deer 24288,frog 24289,cat 24290,bird 24291,cat 24292,deer 24293,automobile 24294,airplane 24295,bird 24296,cat 24297,frog 24298,automobile 24299,cat 24300,airplane 24301,horse 24302,airplane 24303,truck 24304,ship 24305,horse 24306,truck 24307,frog 24308,ship 24309,dog 24310,frog 24311,horse 24312,truck 24313,automobile 24314,cat 24315,dog 24316,dog 24317,dog 24318,ship 24319,horse 24320,deer 24321,dog 24322,frog 24323,deer 24324,automobile 24325,frog 24326,bird 24327,frog 24328,truck 24329,airplane 24330,truck 24331,deer 24332,ship 24333,cat 24334,cat 24335,cat 24336,ship 24337,deer 24338,ship 24339,cat 24340,cat 24341,truck 24342,frog 24343,ship 24344,frog 24345,bird 24346,frog 24347,automobile 24348,dog 24349,cat 24350,cat 24351,deer 24352,airplane 24353,frog 24354,airplane 24355,ship 24356,dog 24357,truck 24358,ship 24359,horse 24360,horse 24361,deer 24362,airplane 24363,automobile 24364,deer 24365,frog 24366,frog 24367,frog 24368,horse 24369,frog 24370,airplane 24371,dog 24372,deer 24373,bird 24374,dog 24375,cat 24376,airplane 24377,airplane 24378,ship 24379,automobile 24380,truck 24381,cat 24382,bird 24383,automobile 24384,dog 24385,truck 24386,cat 24387,deer 24388,airplane 24389,deer 24390,dog 24391,airplane 24392,ship 24393,truck 24394,deer 24395,cat 24396,deer 24397,truck 24398,truck 24399,ship 24400,horse 24401,deer 24402,bird 24403,cat 24404,airplane 24405,deer 24406,dog 24407,deer 24408,airplane 24409,cat 24410,dog 24411,bird 24412,horse 24413,deer 24414,frog 24415,deer 24416,bird 24417,frog 24418,horse 24419,dog 24420,cat 24421,frog 24422,ship 24423,cat 24424,deer 24425,frog 24426,horse 24427,frog 24428,airplane 24429,bird 24430,bird 24431,bird 24432,deer 24433,airplane 24434,cat 24435,airplane 24436,cat 24437,truck 24438,frog 24439,truck 24440,truck 24441,cat 24442,airplane 24443,horse 24444,cat 24445,airplane 24446,ship 24447,dog 24448,frog 24449,horse 24450,cat 24451,automobile 24452,cat 24453,dog 24454,deer 24455,deer 24456,truck 24457,dog 24458,truck 24459,horse 24460,deer 24461,automobile 24462,dog 24463,truck 24464,bird 24465,cat 24466,airplane 24467,horse 24468,horse 24469,bird 24470,airplane 24471,cat 24472,horse 24473,bird 24474,cat 24475,frog 24476,frog 24477,truck 24478,cat 24479,frog 24480,frog 24481,deer 24482,cat 24483,dog 24484,truck 24485,automobile 24486,deer 24487,automobile 24488,horse 24489,automobile 24490,horse 24491,truck 24492,dog 24493,automobile 24494,ship 24495,cat 24496,dog 24497,dog 24498,frog 24499,bird 24500,dog 24501,cat 24502,dog 24503,truck 24504,horse 24505,dog 24506,cat 24507,bird 24508,dog 24509,ship 24510,bird 24511,horse 24512,frog 24513,airplane 24514,bird 24515,airplane 24516,truck 24517,horse 24518,bird 24519,frog 24520,dog 24521,truck 24522,deer 24523,dog 24524,dog 24525,deer 24526,deer 24527,deer 24528,cat 24529,bird 24530,deer 24531,horse 24532,automobile 24533,horse 24534,dog 24535,cat 24536,bird 24537,dog 24538,airplane 24539,airplane 24540,bird 24541,dog 24542,bird 24543,bird 24544,automobile 24545,cat 24546,truck 24547,horse 24548,deer 24549,cat 24550,bird 24551,bird 24552,horse 24553,deer 24554,ship 24555,ship 24556,frog 24557,cat 24558,automobile 24559,dog 24560,dog 24561,horse 24562,cat 24563,deer 24564,truck 24565,deer 24566,dog 24567,automobile 24568,bird 24569,ship 24570,cat 24571,cat 24572,cat 24573,bird 24574,cat 24575,cat 24576,deer 24577,horse 24578,ship 24579,truck 24580,bird 24581,automobile 24582,truck 24583,deer 24584,ship 24585,truck 24586,cat 24587,deer 24588,ship 24589,truck 24590,dog 24591,deer 24592,dog 24593,cat 24594,bird 24595,truck 24596,automobile 24597,bird 24598,bird 24599,airplane 24600,cat 24601,deer 24602,frog 24603,deer 24604,horse 24605,dog 24606,truck 24607,frog 24608,frog 24609,horse 24610,automobile 24611,horse 24612,dog 24613,airplane 24614,horse 24615,airplane 24616,ship 24617,truck 24618,bird 24619,deer 24620,frog 24621,airplane 24622,horse 24623,horse 24624,airplane 24625,dog 24626,cat 24627,truck 24628,cat 24629,airplane 24630,bird 24631,airplane 24632,truck 24633,cat 24634,frog 24635,frog 24636,frog 24637,cat 24638,dog 24639,bird 24640,cat 24641,cat 24642,ship 24643,ship 24644,deer 24645,cat 24646,deer 24647,automobile 24648,frog 24649,bird 24650,deer 24651,deer 24652,truck 24653,dog 24654,deer 24655,horse 24656,deer 24657,truck 24658,deer 24659,deer 24660,ship 24661,horse 24662,horse 24663,dog 24664,dog 24665,deer 24666,horse 24667,deer 24668,frog 24669,bird 24670,frog 24671,truck 24672,airplane 24673,cat 24674,frog 24675,deer 24676,bird 24677,bird 24678,deer 24679,deer 24680,horse 24681,horse 24682,bird 24683,truck 24684,frog 24685,airplane 24686,bird 24687,deer 24688,airplane 24689,airplane 24690,deer 24691,deer 24692,cat 24693,horse 24694,truck 24695,automobile 24696,horse 24697,bird 24698,cat 24699,cat 24700,deer 24701,cat 24702,airplane 24703,ship 24704,ship 24705,truck 24706,bird 24707,horse 24708,dog 24709,airplane 24710,dog 24711,horse 24712,bird 24713,frog 24714,horse 24715,dog 24716,deer 24717,truck 24718,ship 24719,automobile 24720,horse 24721,bird 24722,dog 24723,cat 24724,cat 24725,deer 24726,cat 24727,dog 24728,horse 24729,truck 24730,ship 24731,bird 24732,automobile 24733,automobile 24734,automobile 24735,truck 24736,truck 24737,dog 24738,bird 24739,horse 24740,deer 24741,dog 24742,frog 24743,ship 24744,frog 24745,truck 24746,ship 24747,deer 24748,horse 24749,dog 24750,bird 24751,airplane 24752,truck 24753,deer 24754,dog 24755,horse 24756,truck 24757,bird 24758,ship 24759,airplane 24760,bird 24761,cat 24762,cat 24763,deer 24764,dog 24765,truck 24766,deer 24767,deer 24768,cat 24769,ship 24770,truck 24771,bird 24772,cat 24773,frog 24774,cat 24775,ship 24776,automobile 24777,ship 24778,bird 24779,cat 24780,cat 24781,horse 24782,bird 24783,dog 24784,deer 24785,truck 24786,ship 24787,truck 24788,horse 24789,horse 24790,cat 24791,deer 24792,frog 24793,airplane 24794,horse 24795,ship 24796,frog 24797,cat 24798,bird 24799,cat 24800,horse 24801,cat 24802,automobile 24803,horse 24804,frog 24805,frog 24806,frog 24807,dog 24808,deer 24809,cat 24810,airplane 24811,dog 24812,bird 24813,truck 24814,cat 24815,frog 24816,truck 24817,frog 24818,airplane 24819,airplane 24820,deer 24821,bird 24822,horse 24823,deer 24824,dog 24825,horse 24826,truck 24827,bird 24828,dog 24829,deer 24830,ship 24831,automobile 24832,airplane 24833,horse 24834,ship 24835,bird 24836,dog 24837,dog 24838,horse 24839,horse 24840,truck 24841,frog 24842,bird 24843,horse 24844,airplane 24845,dog 24846,deer 24847,deer 24848,airplane 24849,deer 24850,frog 24851,automobile 24852,horse 24853,horse 24854,bird 24855,ship 24856,horse 24857,cat 24858,frog 24859,airplane 24860,dog 24861,cat 24862,cat 24863,automobile 24864,ship 24865,horse 24866,automobile 24867,deer 24868,deer 24869,bird 24870,truck 24871,horse 24872,automobile 24873,deer 24874,horse 24875,bird 24876,automobile 24877,airplane 24878,horse 24879,cat 24880,ship 24881,horse 24882,horse 24883,frog 24884,ship 24885,ship 24886,horse 24887,dog 24888,bird 24889,truck 24890,cat 24891,truck 24892,bird 24893,dog 24894,airplane 24895,deer 24896,ship 24897,horse 24898,airplane 24899,deer 24900,airplane 24901,horse 24902,bird 24903,cat 24904,airplane 24905,frog 24906,frog 24907,airplane 24908,automobile 24909,ship 24910,deer 24911,dog 24912,automobile 24913,cat 24914,cat 24915,deer 24916,automobile 24917,truck 24918,bird 24919,deer 24920,automobile 24921,cat 24922,airplane 24923,bird 24924,dog 24925,horse 24926,bird 24927,frog 24928,automobile 24929,airplane 24930,cat 24931,deer 24932,airplane 24933,cat 24934,bird 24935,dog 24936,truck 24937,deer 24938,cat 24939,bird 24940,truck 24941,deer 24942,deer 24943,bird 24944,deer 24945,dog 24946,cat 24947,ship 24948,airplane 24949,airplane 24950,bird 24951,horse 24952,frog 24953,cat 24954,bird 24955,dog 24956,dog 24957,frog 24958,deer 24959,dog 24960,bird 24961,frog 24962,ship 24963,truck 24964,cat 24965,bird 24966,cat 24967,airplane 24968,truck 24969,frog 24970,ship 24971,cat 24972,cat 24973,airplane 24974,deer 24975,frog 24976,dog 24977,cat 24978,cat 24979,automobile 24980,automobile 24981,truck 24982,bird 24983,cat 24984,dog 24985,truck 24986,dog 24987,truck 24988,deer 24989,dog 24990,deer 24991,airplane 24992,deer 24993,cat 24994,ship 24995,horse 24996,deer 24997,cat 24998,frog 24999,bird 25000,deer 25001,cat 25002,deer 25003,ship 25004,truck 25005,cat 25006,dog 25007,frog 25008,frog 25009,cat 25010,cat 25011,dog 25012,frog 25013,bird 25014,deer 25015,truck 25016,cat 25017,truck 25018,automobile 25019,dog 25020,truck 25021,bird 25022,horse 25023,truck 25024,dog 25025,deer 25026,deer 25027,ship 25028,airplane 25029,cat 25030,dog 25031,dog 25032,bird 25033,deer 25034,bird 25035,horse 25036,bird 25037,bird 25038,truck 25039,horse 25040,deer 25041,truck 25042,frog 25043,dog 25044,cat 25045,frog 25046,automobile 25047,ship 25048,horse 25049,horse 25050,horse 25051,frog 25052,dog 25053,deer 25054,airplane 25055,truck 25056,horse 25057,ship 25058,deer 25059,ship 25060,horse 25061,horse 25062,deer 25063,deer 25064,bird 25065,cat 25066,bird 25067,bird 25068,bird 25069,bird 25070,frog 25071,truck 25072,cat 25073,frog 25074,dog 25075,cat 25076,horse 25077,automobile 25078,automobile 25079,dog 25080,deer 25081,horse 25082,horse 25083,cat 25084,cat 25085,truck 25086,cat 25087,dog 25088,deer 25089,airplane 25090,frog 25091,cat 25092,cat 25093,dog 25094,automobile 25095,airplane 25096,airplane 25097,horse 25098,ship 25099,ship 25100,horse 25101,frog 25102,airplane 25103,ship 25104,automobile 25105,horse 25106,dog 25107,cat 25108,horse 25109,dog 25110,deer 25111,dog 25112,frog 25113,dog 25114,cat 25115,deer 25116,airplane 25117,horse 25118,horse 25119,ship 25120,airplane 25121,truck 25122,deer 25123,bird 25124,truck 25125,dog 25126,horse 25127,ship 25128,truck 25129,cat 25130,frog 25131,frog 25132,ship 25133,bird 25134,truck 25135,truck 25136,ship 25137,horse 25138,truck 25139,deer 25140,frog 25141,deer 25142,airplane 25143,deer 25144,truck 25145,frog 25146,automobile 25147,horse 25148,deer 25149,ship 25150,cat 25151,horse 25152,deer 25153,frog 25154,airplane 25155,truck 25156,frog 25157,automobile 25158,truck 25159,frog 25160,deer 25161,dog 25162,bird 25163,horse 25164,truck 25165,truck 25166,deer 25167,truck 25168,airplane 25169,airplane 25170,ship 25171,dog 25172,dog 25173,dog 25174,cat 25175,frog 25176,dog 25177,dog 25178,bird 25179,cat 25180,airplane 25181,bird 25182,bird 25183,ship 25184,deer 25185,bird 25186,bird 25187,dog 25188,frog 25189,ship 25190,deer 25191,bird 25192,ship 25193,bird 25194,ship 25195,frog 25196,cat 25197,horse 25198,deer 25199,deer 25200,horse 25201,automobile 25202,truck 25203,cat 25204,bird 25205,truck 25206,ship 25207,frog 25208,deer 25209,cat 25210,bird 25211,dog 25212,horse 25213,bird 25214,horse 25215,horse 25216,dog 25217,frog 25218,frog 25219,horse 25220,ship 25221,horse 25222,automobile 25223,cat 25224,ship 25225,cat 25226,airplane 25227,frog 25228,deer 25229,deer 25230,airplane 25231,bird 25232,cat 25233,cat 25234,dog 25235,frog 25236,truck 25237,horse 25238,frog 25239,horse 25240,airplane 25241,frog 25242,deer 25243,truck 25244,cat 25245,cat 25246,cat 25247,truck 25248,deer 25249,cat 25250,truck 25251,truck 25252,bird 25253,horse 25254,bird 25255,horse 25256,bird 25257,airplane 25258,automobile 25259,frog 25260,frog 25261,ship 25262,frog 25263,frog 25264,automobile 25265,horse 25266,truck 25267,frog 25268,bird 25269,bird 25270,cat 25271,airplane 25272,automobile 25273,bird 25274,airplane 25275,bird 25276,cat 25277,deer 25278,frog 25279,cat 25280,cat 25281,frog 25282,dog 25283,frog 25284,dog 25285,cat 25286,horse 25287,cat 25288,dog 25289,truck 25290,deer 25291,automobile 25292,frog 25293,airplane 25294,cat 25295,ship 25296,dog 25297,dog 25298,dog 25299,airplane 25300,dog 25301,dog 25302,airplane 25303,frog 25304,bird 25305,dog 25306,deer 25307,truck 25308,deer 25309,dog 25310,dog 25311,dog 25312,dog 25313,dog 25314,airplane 25315,truck 25316,deer 25317,cat 25318,automobile 25319,frog 25320,frog 25321,truck 25322,dog 25323,cat 25324,cat 25325,horse 25326,truck 25327,truck 25328,horse 25329,deer 25330,dog 25331,bird 25332,airplane 25333,horse 25334,truck 25335,horse 25336,horse 25337,dog 25338,deer 25339,airplane 25340,airplane 25341,truck 25342,truck 25343,airplane 25344,horse 25345,bird 25346,truck 25347,airplane 25348,dog 25349,bird 25350,deer 25351,cat 25352,cat 25353,dog 25354,cat 25355,dog 25356,deer 25357,deer 25358,dog 25359,airplane 25360,truck 25361,horse 25362,cat 25363,cat 25364,cat 25365,ship 25366,bird 25367,truck 25368,automobile 25369,frog 25370,airplane 25371,cat 25372,deer 25373,dog 25374,airplane 25375,horse 25376,deer 25377,frog 25378,dog 25379,ship 25380,automobile 25381,airplane 25382,ship 25383,deer 25384,cat 25385,bird 25386,ship 25387,automobile 25388,horse 25389,ship 25390,cat 25391,ship 25392,automobile 25393,horse 25394,deer 25395,airplane 25396,frog 25397,dog 25398,truck 25399,horse 25400,truck 25401,ship 25402,horse 25403,deer 25404,truck 25405,cat 25406,dog 25407,cat 25408,ship 25409,cat 25410,airplane 25411,bird 25412,dog 25413,automobile 25414,frog 25415,truck 25416,dog 25417,deer 25418,horse 25419,bird 25420,airplane 25421,dog 25422,automobile 25423,bird 25424,truck 25425,truck 25426,frog 25427,automobile 25428,cat 25429,truck 25430,truck 25431,frog 25432,truck 25433,airplane 25434,horse 25435,truck 25436,cat 25437,bird 25438,airplane 25439,frog 25440,cat 25441,frog 25442,bird 25443,horse 25444,cat 25445,cat 25446,airplane 25447,airplane 25448,truck 25449,cat 25450,airplane 25451,truck 25452,horse 25453,bird 25454,deer 25455,cat 25456,airplane 25457,horse 25458,dog 25459,truck 25460,cat 25461,dog 25462,frog 25463,ship 25464,airplane 25465,airplane 25466,deer 25467,cat 25468,truck 25469,cat 25470,frog 25471,truck 25472,truck 25473,ship 25474,deer 25475,dog 25476,airplane 25477,airplane 25478,airplane 25479,deer 25480,dog 25481,horse 25482,cat 25483,airplane 25484,frog 25485,automobile 25486,cat 25487,automobile 25488,automobile 25489,cat 25490,deer 25491,dog 25492,deer 25493,automobile 25494,airplane 25495,dog 25496,ship 25497,ship 25498,horse 25499,dog 25500,frog 25501,ship 25502,cat 25503,deer 25504,ship 25505,dog 25506,truck 25507,airplane 25508,dog 25509,horse 25510,horse 25511,bird 25512,horse 25513,truck 25514,cat 25515,horse 25516,frog 25517,ship 25518,airplane 25519,dog 25520,dog 25521,deer 25522,cat 25523,frog 25524,frog 25525,dog 25526,automobile 25527,dog 25528,horse 25529,truck 25530,deer 25531,dog 25532,airplane 25533,horse 25534,truck 25535,frog 25536,ship 25537,airplane 25538,deer 25539,horse 25540,ship 25541,dog 25542,dog 25543,horse 25544,frog 25545,automobile 25546,bird 25547,cat 25548,truck 25549,bird 25550,horse 25551,automobile 25552,ship 25553,cat 25554,truck 25555,deer 25556,frog 25557,automobile 25558,cat 25559,bird 25560,frog 25561,bird 25562,deer 25563,horse 25564,deer 25565,frog 25566,horse 25567,bird 25568,truck 25569,cat 25570,horse 25571,bird 25572,horse 25573,deer 25574,truck 25575,airplane 25576,airplane 25577,deer 25578,automobile 25579,deer 25580,frog 25581,frog 25582,deer 25583,airplane 25584,bird 25585,bird 25586,dog 25587,airplane 25588,airplane 25589,cat 25590,ship 25591,truck 25592,frog 25593,automobile 25594,dog 25595,airplane 25596,ship 25597,ship 25598,truck 25599,truck 25600,airplane 25601,automobile 25602,ship 25603,bird 25604,ship 25605,cat 25606,cat 25607,automobile 25608,automobile 25609,truck 25610,ship 25611,deer 25612,automobile 25613,automobile 25614,truck 25615,airplane 25616,automobile 25617,frog 25618,deer 25619,truck 25620,cat 25621,truck 25622,cat 25623,deer 25624,frog 25625,ship 25626,truck 25627,airplane 25628,airplane 25629,deer 25630,deer 25631,truck 25632,truck 25633,horse 25634,ship 25635,deer 25636,cat 25637,cat 25638,deer 25639,automobile 25640,dog 25641,dog 25642,dog 25643,truck 25644,bird 25645,horse 25646,ship 25647,frog 25648,automobile 25649,deer 25650,horse 25651,airplane 25652,airplane 25653,truck 25654,cat 25655,automobile 25656,airplane 25657,cat 25658,dog 25659,deer 25660,deer 25661,dog 25662,dog 25663,dog 25664,bird 25665,deer 25666,ship 25667,cat 25668,frog 25669,frog 25670,dog 25671,bird 25672,cat 25673,deer 25674,bird 25675,ship 25676,deer 25677,bird 25678,automobile 25679,cat 25680,truck 25681,deer 25682,horse 25683,bird 25684,dog 25685,deer 25686,frog 25687,cat 25688,cat 25689,truck 25690,dog 25691,bird 25692,deer 25693,dog 25694,deer 25695,dog 25696,truck 25697,bird 25698,horse 25699,bird 25700,horse 25701,truck 25702,ship 25703,deer 25704,truck 25705,truck 25706,bird 25707,truck 25708,bird 25709,deer 25710,horse 25711,ship 25712,deer 25713,horse 25714,deer 25715,cat 25716,dog 25717,cat 25718,automobile 25719,cat 25720,cat 25721,frog 25722,horse 25723,ship 25724,ship 25725,horse 25726,bird 25727,truck 25728,deer 25729,deer 25730,horse 25731,deer 25732,dog 25733,automobile 25734,frog 25735,bird 25736,horse 25737,airplane 25738,truck 25739,deer 25740,ship 25741,ship 25742,cat 25743,bird 25744,horse 25745,dog 25746,airplane 25747,bird 25748,truck 25749,dog 25750,cat 25751,ship 25752,cat 25753,airplane 25754,bird 25755,airplane 25756,airplane 25757,automobile 25758,cat 25759,bird 25760,frog 25761,truck 25762,truck 25763,airplane 25764,deer 25765,deer 25766,dog 25767,frog 25768,bird 25769,bird 25770,deer 25771,horse 25772,frog 25773,cat 25774,airplane 25775,bird 25776,truck 25777,truck 25778,frog 25779,dog 25780,cat 25781,deer 25782,cat 25783,dog 25784,automobile 25785,dog 25786,dog 25787,bird 25788,cat 25789,frog 25790,bird 25791,deer 25792,ship 25793,bird 25794,airplane 25795,automobile 25796,ship 25797,cat 25798,frog 25799,cat 25800,automobile 25801,cat 25802,frog 25803,horse 25804,horse 25805,truck 25806,dog 25807,horse 25808,deer 25809,horse 25810,deer 25811,deer 25812,deer 25813,frog 25814,dog 25815,ship 25816,bird 25817,cat 25818,horse 25819,deer 25820,dog 25821,bird 25822,bird 25823,cat 25824,airplane 25825,horse 25826,automobile 25827,truck 25828,deer 25829,cat 25830,airplane 25831,dog 25832,truck 25833,truck 25834,deer 25835,truck 25836,truck 25837,cat 25838,truck 25839,deer 25840,automobile 25841,frog 25842,dog 25843,deer 25844,deer 25845,cat 25846,ship 25847,airplane 25848,horse 25849,automobile 25850,cat 25851,bird 25852,horse 25853,ship 25854,deer 25855,cat 25856,bird 25857,airplane 25858,cat 25859,bird 25860,ship 25861,horse 25862,cat 25863,cat 25864,deer 25865,airplane 25866,ship 25867,dog 25868,horse 25869,deer 25870,frog 25871,automobile 25872,truck 25873,bird 25874,frog 25875,automobile 25876,ship 25877,deer 25878,deer 25879,truck 25880,bird 25881,airplane 25882,cat 25883,frog 25884,deer 25885,frog 25886,frog 25887,ship 25888,airplane 25889,ship 25890,automobile 25891,frog 25892,truck 25893,frog 25894,ship 25895,automobile 25896,ship 25897,dog 25898,horse 25899,ship 25900,bird 25901,bird 25902,truck 25903,automobile 25904,frog 25905,truck 25906,dog 25907,cat 25908,frog 25909,bird 25910,deer 25911,truck 25912,ship 25913,deer 25914,deer 25915,deer 25916,airplane 25917,cat 25918,frog 25919,truck 25920,automobile 25921,truck 25922,airplane 25923,bird 25924,bird 25925,airplane 25926,cat 25927,dog 25928,frog 25929,bird 25930,frog 25931,bird 25932,deer 25933,bird 25934,deer 25935,deer 25936,truck 25937,dog 25938,cat 25939,ship 25940,frog 25941,truck 25942,bird 25943,automobile 25944,deer 25945,bird 25946,airplane 25947,truck 25948,ship 25949,bird 25950,automobile 25951,truck 25952,deer 25953,automobile 25954,cat 25955,horse 25956,airplane 25957,frog 25958,automobile 25959,automobile 25960,horse 25961,dog 25962,truck 25963,horse 25964,truck 25965,cat 25966,dog 25967,truck 25968,airplane 25969,airplane 25970,dog 25971,frog 25972,airplane 25973,ship 25974,horse 25975,cat 25976,frog 25977,bird 25978,deer 25979,frog 25980,deer 25981,truck 25982,automobile 25983,airplane 25984,deer 25985,frog 25986,dog 25987,dog 25988,dog 25989,automobile 25990,dog 25991,deer 25992,automobile 25993,dog 25994,horse 25995,horse 25996,cat 25997,deer 25998,frog 25999,frog 26000,cat 26001,deer 26002,frog 26003,airplane 26004,airplane 26005,cat 26006,dog 26007,bird 26008,cat 26009,cat 26010,truck 26011,frog 26012,horse 26013,ship 26014,airplane 26015,truck 26016,cat 26017,airplane 26018,dog 26019,airplane 26020,cat 26021,truck 26022,ship 26023,horse 26024,frog 26025,airplane 26026,truck 26027,deer 26028,airplane 26029,ship 26030,horse 26031,dog 26032,cat 26033,frog 26034,dog 26035,truck 26036,deer 26037,truck 26038,automobile 26039,frog 26040,cat 26041,horse 26042,horse 26043,airplane 26044,bird 26045,frog 26046,frog 26047,bird 26048,deer 26049,bird 26050,horse 26051,frog 26052,dog 26053,bird 26054,frog 26055,airplane 26056,bird 26057,horse 26058,frog 26059,deer 26060,deer 26061,bird 26062,automobile 26063,horse 26064,ship 26065,dog 26066,truck 26067,deer 26068,cat 26069,bird 26070,airplane 26071,horse 26072,deer 26073,truck 26074,truck 26075,dog 26076,frog 26077,deer 26078,frog 26079,airplane 26080,automobile 26081,ship 26082,cat 26083,dog 26084,cat 26085,cat 26086,horse 26087,automobile 26088,ship 26089,truck 26090,truck 26091,frog 26092,cat 26093,bird 26094,frog 26095,frog 26096,bird 26097,ship 26098,ship 26099,deer 26100,frog 26101,automobile 26102,dog 26103,bird 26104,horse 26105,frog 26106,ship 26107,truck 26108,frog 26109,cat 26110,deer 26111,bird 26112,frog 26113,cat 26114,horse 26115,automobile 26116,frog 26117,frog 26118,truck 26119,bird 26120,bird 26121,cat 26122,bird 26123,cat 26124,automobile 26125,truck 26126,dog 26127,bird 26128,dog 26129,deer 26130,automobile 26131,automobile 26132,cat 26133,ship 26134,frog 26135,dog 26136,dog 26137,deer 26138,frog 26139,ship 26140,truck 26141,automobile 26142,horse 26143,bird 26144,automobile 26145,deer 26146,airplane 26147,horse 26148,horse 26149,cat 26150,horse 26151,deer 26152,airplane 26153,automobile 26154,bird 26155,truck 26156,automobile 26157,bird 26158,dog 26159,bird 26160,frog 26161,airplane 26162,truck 26163,dog 26164,cat 26165,frog 26166,dog 26167,bird 26168,cat 26169,cat 26170,cat 26171,automobile 26172,dog 26173,airplane 26174,horse 26175,deer 26176,bird 26177,airplane 26178,frog 26179,bird 26180,frog 26181,horse 26182,dog 26183,automobile 26184,dog 26185,dog 26186,cat 26187,airplane 26188,bird 26189,deer 26190,ship 26191,airplane 26192,cat 26193,frog 26194,automobile 26195,ship 26196,dog 26197,horse 26198,dog 26199,deer 26200,deer 26201,airplane 26202,automobile 26203,truck 26204,ship 26205,cat 26206,airplane 26207,dog 26208,cat 26209,deer 26210,truck 26211,cat 26212,cat 26213,truck 26214,truck 26215,dog 26216,deer 26217,cat 26218,truck 26219,dog 26220,deer 26221,airplane 26222,frog 26223,truck 26224,airplane 26225,cat 26226,truck 26227,truck 26228,ship 26229,dog 26230,truck 26231,truck 26232,automobile 26233,frog 26234,horse 26235,dog 26236,automobile 26237,airplane 26238,horse 26239,horse 26240,airplane 26241,airplane 26242,ship 26243,deer 26244,ship 26245,truck 26246,deer 26247,deer 26248,ship 26249,truck 26250,airplane 26251,bird 26252,deer 26253,cat 26254,bird 26255,horse 26256,deer 26257,deer 26258,dog 26259,cat 26260,airplane 26261,horse 26262,ship 26263,horse 26264,deer 26265,ship 26266,airplane 26267,dog 26268,airplane 26269,horse 26270,bird 26271,dog 26272,truck 26273,ship 26274,automobile 26275,automobile 26276,deer 26277,deer 26278,cat 26279,dog 26280,airplane 26281,frog 26282,cat 26283,cat 26284,cat 26285,dog 26286,automobile 26287,deer 26288,cat 26289,bird 26290,cat 26291,deer 26292,deer 26293,horse 26294,cat 26295,deer 26296,automobile 26297,frog 26298,dog 26299,dog 26300,truck 26301,cat 26302,automobile 26303,ship 26304,dog 26305,cat 26306,airplane 26307,truck 26308,truck 26309,deer 26310,cat 26311,frog 26312,dog 26313,deer 26314,airplane 26315,deer 26316,horse 26317,ship 26318,dog 26319,cat 26320,horse 26321,frog 26322,deer 26323,cat 26324,bird 26325,bird 26326,airplane 26327,ship 26328,horse 26329,deer 26330,cat 26331,truck 26332,bird 26333,deer 26334,truck 26335,cat 26336,bird 26337,bird 26338,automobile 26339,dog 26340,ship 26341,cat 26342,airplane 26343,truck 26344,ship 26345,frog 26346,frog 26347,dog 26348,ship 26349,dog 26350,dog 26351,airplane 26352,deer 26353,airplane 26354,frog 26355,cat 26356,ship 26357,dog 26358,dog 26359,deer 26360,horse 26361,truck 26362,automobile 26363,dog 26364,truck 26365,automobile 26366,cat 26367,deer 26368,frog 26369,dog 26370,frog 26371,horse 26372,horse 26373,frog 26374,airplane 26375,automobile 26376,airplane 26377,automobile 26378,airplane 26379,deer 26380,truck 26381,deer 26382,ship 26383,automobile 26384,cat 26385,truck 26386,truck 26387,horse 26388,frog 26389,frog 26390,dog 26391,cat 26392,horse 26393,horse 26394,ship 26395,cat 26396,frog 26397,automobile 26398,ship 26399,ship 26400,deer 26401,deer 26402,automobile 26403,horse 26404,cat 26405,ship 26406,dog 26407,deer 26408,horse 26409,automobile 26410,deer 26411,airplane 26412,airplane 26413,automobile 26414,deer 26415,frog 26416,frog 26417,horse 26418,frog 26419,cat 26420,deer 26421,dog 26422,frog 26423,frog 26424,airplane 26425,truck 26426,deer 26427,bird 26428,frog 26429,dog 26430,bird 26431,dog 26432,ship 26433,frog 26434,truck 26435,automobile 26436,truck 26437,automobile 26438,cat 26439,deer 26440,ship 26441,truck 26442,airplane 26443,dog 26444,cat 26445,truck 26446,deer 26447,dog 26448,ship 26449,ship 26450,deer 26451,ship 26452,deer 26453,airplane 26454,deer 26455,deer 26456,frog 26457,cat 26458,horse 26459,deer 26460,bird 26461,cat 26462,cat 26463,deer 26464,truck 26465,frog 26466,horse 26467,bird 26468,deer 26469,ship 26470,ship 26471,deer 26472,horse 26473,bird 26474,airplane 26475,automobile 26476,airplane 26477,deer 26478,dog 26479,deer 26480,deer 26481,ship 26482,truck 26483,horse 26484,automobile 26485,bird 26486,cat 26487,frog 26488,truck 26489,horse 26490,airplane 26491,airplane 26492,cat 26493,airplane 26494,truck 26495,deer 26496,horse 26497,ship 26498,horse 26499,dog 26500,truck 26501,automobile 26502,deer 26503,deer 26504,dog 26505,horse 26506,frog 26507,dog 26508,ship 26509,dog 26510,truck 26511,cat 26512,truck 26513,horse 26514,frog 26515,airplane 26516,dog 26517,dog 26518,cat 26519,ship 26520,truck 26521,deer 26522,airplane 26523,deer 26524,truck 26525,deer 26526,frog 26527,frog 26528,dog 26529,automobile 26530,airplane 26531,deer 26532,truck 26533,horse 26534,frog 26535,bird 26536,cat 26537,automobile 26538,frog 26539,bird 26540,deer 26541,frog 26542,frog 26543,cat 26544,deer 26545,dog 26546,truck 26547,airplane 26548,cat 26549,ship 26550,horse 26551,deer 26552,bird 26553,cat 26554,deer 26555,bird 26556,bird 26557,horse 26558,truck 26559,horse 26560,horse 26561,airplane 26562,automobile 26563,dog 26564,cat 26565,airplane 26566,horse 26567,bird 26568,frog 26569,automobile 26570,airplane 26571,automobile 26572,ship 26573,automobile 26574,horse 26575,truck 26576,airplane 26577,horse 26578,truck 26579,dog 26580,frog 26581,cat 26582,deer 26583,bird 26584,cat 26585,ship 26586,deer 26587,deer 26588,dog 26589,automobile 26590,frog 26591,cat 26592,bird 26593,airplane 26594,frog 26595,cat 26596,truck 26597,airplane 26598,dog 26599,frog 26600,automobile 26601,horse 26602,frog 26603,ship 26604,horse 26605,truck 26606,cat 26607,truck 26608,bird 26609,truck 26610,truck 26611,horse 26612,dog 26613,horse 26614,horse 26615,deer 26616,frog 26617,ship 26618,airplane 26619,bird 26620,deer 26621,airplane 26622,truck 26623,horse 26624,automobile 26625,truck 26626,cat 26627,deer 26628,frog 26629,deer 26630,frog 26631,bird 26632,dog 26633,airplane 26634,cat 26635,horse 26636,deer 26637,airplane 26638,frog 26639,dog 26640,ship 26641,ship 26642,frog 26643,automobile 26644,truck 26645,dog 26646,cat 26647,deer 26648,horse 26649,horse 26650,horse 26651,deer 26652,deer 26653,dog 26654,deer 26655,automobile 26656,ship 26657,horse 26658,frog 26659,bird 26660,dog 26661,ship 26662,deer 26663,airplane 26664,ship 26665,truck 26666,ship 26667,airplane 26668,bird 26669,airplane 26670,ship 26671,truck 26672,deer 26673,bird 26674,cat 26675,horse 26676,horse 26677,frog 26678,frog 26679,horse 26680,automobile 26681,dog 26682,deer 26683,airplane 26684,ship 26685,frog 26686,airplane 26687,dog 26688,dog 26689,horse 26690,frog 26691,airplane 26692,bird 26693,deer 26694,deer 26695,airplane 26696,deer 26697,cat 26698,frog 26699,cat 26700,ship 26701,automobile 26702,ship 26703,dog 26704,cat 26705,deer 26706,cat 26707,frog 26708,airplane 26709,deer 26710,cat 26711,cat 26712,truck 26713,deer 26714,deer 26715,cat 26716,frog 26717,truck 26718,truck 26719,ship 26720,deer 26721,cat 26722,deer 26723,airplane 26724,cat 26725,horse 26726,frog 26727,deer 26728,bird 26729,frog 26730,cat 26731,cat 26732,frog 26733,deer 26734,truck 26735,automobile 26736,ship 26737,deer 26738,deer 26739,dog 26740,deer 26741,airplane 26742,deer 26743,bird 26744,ship 26745,airplane 26746,truck 26747,airplane 26748,truck 26749,dog 26750,bird 26751,automobile 26752,horse 26753,cat 26754,airplane 26755,automobile 26756,cat 26757,truck 26758,horse 26759,truck 26760,bird 26761,automobile 26762,airplane 26763,cat 26764,dog 26765,ship 26766,horse 26767,horse 26768,horse 26769,dog 26770,cat 26771,truck 26772,bird 26773,truck 26774,dog 26775,bird 26776,airplane 26777,horse 26778,truck 26779,dog 26780,deer 26781,truck 26782,airplane 26783,ship 26784,truck 26785,truck 26786,ship 26787,frog 26788,airplane 26789,truck 26790,truck 26791,cat 26792,deer 26793,automobile 26794,dog 26795,automobile 26796,bird 26797,truck 26798,ship 26799,deer 26800,horse 26801,frog 26802,horse 26803,cat 26804,frog 26805,dog 26806,ship 26807,dog 26808,dog 26809,truck 26810,frog 26811,deer 26812,dog 26813,deer 26814,deer 26815,bird 26816,frog 26817,ship 26818,dog 26819,frog 26820,deer 26821,deer 26822,dog 26823,horse 26824,horse 26825,horse 26826,dog 26827,ship 26828,automobile 26829,deer 26830,horse 26831,deer 26832,dog 26833,truck 26834,cat 26835,airplane 26836,frog 26837,deer 26838,cat 26839,frog 26840,horse 26841,horse 26842,ship 26843,frog 26844,bird 26845,deer 26846,dog 26847,deer 26848,cat 26849,frog 26850,dog 26851,deer 26852,automobile 26853,frog 26854,bird 26855,truck 26856,truck 26857,frog 26858,airplane 26859,cat 26860,horse 26861,frog 26862,ship 26863,truck 26864,horse 26865,ship 26866,dog 26867,truck 26868,truck 26869,automobile 26870,airplane 26871,deer 26872,cat 26873,airplane 26874,frog 26875,cat 26876,truck 26877,airplane 26878,dog 26879,horse 26880,cat 26881,deer 26882,bird 26883,deer 26884,automobile 26885,bird 26886,frog 26887,deer 26888,bird 26889,bird 26890,cat 26891,bird 26892,ship 26893,horse 26894,deer 26895,deer 26896,horse 26897,airplane 26898,truck 26899,airplane 26900,automobile 26901,ship 26902,ship 26903,truck 26904,horse 26905,automobile 26906,airplane 26907,cat 26908,frog 26909,frog 26910,frog 26911,horse 26912,truck 26913,truck 26914,cat 26915,truck 26916,deer 26917,ship 26918,horse 26919,truck 26920,dog 26921,ship 26922,horse 26923,automobile 26924,truck 26925,cat 26926,cat 26927,cat 26928,ship 26929,cat 26930,bird 26931,airplane 26932,bird 26933,airplane 26934,ship 26935,bird 26936,airplane 26937,truck 26938,automobile 26939,bird 26940,bird 26941,cat 26942,horse 26943,deer 26944,ship 26945,frog 26946,dog 26947,ship 26948,deer 26949,airplane 26950,deer 26951,bird 26952,bird 26953,horse 26954,cat 26955,deer 26956,ship 26957,horse 26958,deer 26959,deer 26960,airplane 26961,ship 26962,bird 26963,frog 26964,dog 26965,bird 26966,bird 26967,ship 26968,cat 26969,cat 26970,frog 26971,deer 26972,ship 26973,frog 26974,truck 26975,dog 26976,dog 26977,truck 26978,bird 26979,dog 26980,horse 26981,cat 26982,deer 26983,automobile 26984,horse 26985,deer 26986,cat 26987,truck 26988,cat 26989,airplane 26990,cat 26991,airplane 26992,ship 26993,ship 26994,truck 26995,dog 26996,dog 26997,truck 26998,deer 26999,airplane 27000,airplane 27001,frog 27002,dog 27003,frog 27004,cat 27005,ship 27006,horse 27007,deer 27008,cat 27009,truck 27010,automobile 27011,ship 27012,deer 27013,frog 27014,bird 27015,deer 27016,cat 27017,cat 27018,automobile 27019,frog 27020,horse 27021,deer 27022,automobile 27023,cat 27024,truck 27025,truck 27026,deer 27027,frog 27028,dog 27029,dog 27030,truck 27031,ship 27032,bird 27033,bird 27034,frog 27035,airplane 27036,dog 27037,automobile 27038,deer 27039,frog 27040,automobile 27041,deer 27042,bird 27043,dog 27044,automobile 27045,deer 27046,airplane 27047,airplane 27048,dog 27049,deer 27050,cat 27051,horse 27052,cat 27053,cat 27054,dog 27055,cat 27056,airplane 27057,frog 27058,horse 27059,horse 27060,deer 27061,truck 27062,horse 27063,frog 27064,horse 27065,dog 27066,airplane 27067,frog 27068,frog 27069,automobile 27070,airplane 27071,frog 27072,ship 27073,ship 27074,airplane 27075,frog 27076,deer 27077,horse 27078,truck 27079,horse 27080,deer 27081,dog 27082,horse 27083,dog 27084,horse 27085,bird 27086,automobile 27087,automobile 27088,cat 27089,automobile 27090,frog 27091,dog 27092,truck 27093,horse 27094,truck 27095,frog 27096,dog 27097,cat 27098,truck 27099,airplane 27100,ship 27101,airplane 27102,automobile 27103,truck 27104,bird 27105,automobile 27106,ship 27107,truck 27108,truck 27109,ship 27110,airplane 27111,deer 27112,automobile 27113,dog 27114,truck 27115,dog 27116,truck 27117,airplane 27118,deer 27119,horse 27120,deer 27121,airplane 27122,dog 27123,truck 27124,horse 27125,deer 27126,frog 27127,dog 27128,frog 27129,airplane 27130,truck 27131,deer 27132,horse 27133,truck 27134,frog 27135,horse 27136,horse 27137,cat 27138,dog 27139,truck 27140,deer 27141,deer 27142,truck 27143,automobile 27144,dog 27145,airplane 27146,truck 27147,dog 27148,airplane 27149,cat 27150,deer 27151,deer 27152,cat 27153,bird 27154,deer 27155,bird 27156,automobile 27157,ship 27158,ship 27159,frog 27160,truck 27161,deer 27162,truck 27163,ship 27164,cat 27165,airplane 27166,deer 27167,ship 27168,deer 27169,truck 27170,dog 27171,frog 27172,airplane 27173,bird 27174,cat 27175,truck 27176,horse 27177,horse 27178,cat 27179,dog 27180,ship 27181,cat 27182,horse 27183,bird 27184,deer 27185,truck 27186,cat 27187,frog 27188,ship 27189,truck 27190,airplane 27191,bird 27192,dog 27193,cat 27194,bird 27195,ship 27196,ship 27197,truck 27198,dog 27199,cat 27200,frog 27201,airplane 27202,frog 27203,ship 27204,cat 27205,frog 27206,frog 27207,truck 27208,bird 27209,automobile 27210,ship 27211,truck 27212,automobile 27213,cat 27214,automobile 27215,truck 27216,deer 27217,horse 27218,dog 27219,deer 27220,dog 27221,cat 27222,truck 27223,dog 27224,dog 27225,deer 27226,horse 27227,cat 27228,horse 27229,frog 27230,truck 27231,cat 27232,automobile 27233,airplane 27234,truck 27235,airplane 27236,automobile 27237,truck 27238,deer 27239,ship 27240,frog 27241,dog 27242,truck 27243,airplane 27244,cat 27245,cat 27246,dog 27247,deer 27248,automobile 27249,horse 27250,dog 27251,dog 27252,truck 27253,bird 27254,ship 27255,automobile 27256,bird 27257,deer 27258,airplane 27259,truck 27260,airplane 27261,dog 27262,truck 27263,horse 27264,dog 27265,cat 27266,automobile 27267,deer 27268,frog 27269,cat 27270,deer 27271,truck 27272,truck 27273,dog 27274,cat 27275,truck 27276,airplane 27277,dog 27278,truck 27279,ship 27280,ship 27281,truck 27282,cat 27283,dog 27284,horse 27285,cat 27286,ship 27287,automobile 27288,truck 27289,airplane 27290,cat 27291,horse 27292,horse 27293,airplane 27294,ship 27295,automobile 27296,truck 27297,horse 27298,bird 27299,truck 27300,frog 27301,truck 27302,cat 27303,truck 27304,ship 27305,cat 27306,horse 27307,airplane 27308,deer 27309,frog 27310,ship 27311,frog 27312,horse 27313,truck 27314,horse 27315,dog 27316,frog 27317,truck 27318,truck 27319,dog 27320,horse 27321,frog 27322,frog 27323,cat 27324,truck 27325,frog 27326,dog 27327,cat 27328,truck 27329,deer 27330,automobile 27331,frog 27332,truck 27333,deer 27334,frog 27335,dog 27336,frog 27337,cat 27338,deer 27339,deer 27340,automobile 27341,deer 27342,horse 27343,cat 27344,bird 27345,cat 27346,airplane 27347,horse 27348,bird 27349,deer 27350,dog 27351,deer 27352,dog 27353,frog 27354,bird 27355,automobile 27356,automobile 27357,frog 27358,dog 27359,cat 27360,truck 27361,deer 27362,truck 27363,ship 27364,deer 27365,dog 27366,frog 27367,horse 27368,dog 27369,truck 27370,frog 27371,bird 27372,dog 27373,truck 27374,horse 27375,horse 27376,cat 27377,cat 27378,truck 27379,truck 27380,bird 27381,deer 27382,bird 27383,deer 27384,frog 27385,horse 27386,cat 27387,truck 27388,truck 27389,deer 27390,cat 27391,dog 27392,ship 27393,horse 27394,airplane 27395,ship 27396,dog 27397,airplane 27398,deer 27399,dog 27400,frog 27401,bird 27402,bird 27403,bird 27404,automobile 27405,frog 27406,dog 27407,automobile 27408,deer 27409,horse 27410,frog 27411,bird 27412,ship 27413,cat 27414,horse 27415,ship 27416,deer 27417,ship 27418,cat 27419,deer 27420,automobile 27421,horse 27422,frog 27423,frog 27424,ship 27425,cat 27426,bird 27427,cat 27428,dog 27429,bird 27430,airplane 27431,cat 27432,bird 27433,dog 27434,bird 27435,deer 27436,frog 27437,airplane 27438,cat 27439,airplane 27440,ship 27441,cat 27442,deer 27443,airplane 27444,cat 27445,dog 27446,airplane 27447,truck 27448,deer 27449,automobile 27450,frog 27451,airplane 27452,horse 27453,bird 27454,dog 27455,frog 27456,airplane 27457,truck 27458,frog 27459,bird 27460,horse 27461,frog 27462,cat 27463,deer 27464,cat 27465,dog 27466,horse 27467,truck 27468,ship 27469,frog 27470,dog 27471,bird 27472,automobile 27473,dog 27474,ship 27475,dog 27476,dog 27477,automobile 27478,dog 27479,cat 27480,truck 27481,frog 27482,cat 27483,deer 27484,ship 27485,bird 27486,frog 27487,frog 27488,ship 27489,ship 27490,horse 27491,cat 27492,horse 27493,cat 27494,dog 27495,automobile 27496,truck 27497,ship 27498,truck 27499,truck 27500,truck 27501,bird 27502,frog 27503,airplane 27504,ship 27505,ship 27506,deer 27507,truck 27508,bird 27509,bird 27510,deer 27511,bird 27512,airplane 27513,automobile 27514,truck 27515,deer 27516,cat 27517,frog 27518,frog 27519,bird 27520,bird 27521,ship 27522,airplane 27523,frog 27524,deer 27525,airplane 27526,airplane 27527,cat 27528,horse 27529,bird 27530,truck 27531,cat 27532,airplane 27533,frog 27534,truck 27535,dog 27536,deer 27537,dog 27538,bird 27539,cat 27540,deer 27541,deer 27542,deer 27543,automobile 27544,deer 27545,deer 27546,frog 27547,bird 27548,horse 27549,bird 27550,truck 27551,truck 27552,horse 27553,bird 27554,bird 27555,deer 27556,horse 27557,deer 27558,dog 27559,truck 27560,automobile 27561,deer 27562,horse 27563,automobile 27564,deer 27565,ship 27566,deer 27567,cat 27568,deer 27569,cat 27570,horse 27571,frog 27572,cat 27573,deer 27574,dog 27575,deer 27576,cat 27577,dog 27578,ship 27579,bird 27580,bird 27581,truck 27582,deer 27583,cat 27584,bird 27585,dog 27586,bird 27587,bird 27588,cat 27589,truck 27590,frog 27591,dog 27592,airplane 27593,cat 27594,frog 27595,frog 27596,ship 27597,airplane 27598,frog 27599,deer 27600,ship 27601,frog 27602,horse 27603,deer 27604,horse 27605,automobile 27606,cat 27607,cat 27608,frog 27609,dog 27610,truck 27611,bird 27612,automobile 27613,truck 27614,cat 27615,deer 27616,frog 27617,deer 27618,cat 27619,airplane 27620,automobile 27621,bird 27622,bird 27623,bird 27624,dog 27625,truck 27626,cat 27627,deer 27628,frog 27629,bird 27630,dog 27631,horse 27632,dog 27633,dog 27634,ship 27635,cat 27636,cat 27637,truck 27638,cat 27639,cat 27640,airplane 27641,deer 27642,ship 27643,horse 27644,dog 27645,frog 27646,bird 27647,cat 27648,frog 27649,bird 27650,deer 27651,deer 27652,deer 27653,cat 27654,bird 27655,cat 27656,automobile 27657,horse 27658,horse 27659,frog 27660,deer 27661,ship 27662,ship 27663,deer 27664,cat 27665,bird 27666,automobile 27667,deer 27668,ship 27669,dog 27670,deer 27671,deer 27672,horse 27673,frog 27674,cat 27675,airplane 27676,deer 27677,ship 27678,cat 27679,horse 27680,frog 27681,bird 27682,truck 27683,cat 27684,truck 27685,truck 27686,horse 27687,frog 27688,dog 27689,cat 27690,bird 27691,frog 27692,bird 27693,dog 27694,dog 27695,frog 27696,truck 27697,deer 27698,dog 27699,bird 27700,airplane 27701,automobile 27702,deer 27703,deer 27704,truck 27705,cat 27706,airplane 27707,frog 27708,frog 27709,cat 27710,dog 27711,airplane 27712,cat 27713,dog 27714,cat 27715,automobile 27716,deer 27717,horse 27718,dog 27719,automobile 27720,deer 27721,bird 27722,deer 27723,horse 27724,cat 27725,automobile 27726,cat 27727,deer 27728,deer 27729,airplane 27730,dog 27731,dog 27732,frog 27733,truck 27734,frog 27735,dog 27736,frog 27737,frog 27738,deer 27739,horse 27740,bird 27741,bird 27742,deer 27743,dog 27744,dog 27745,automobile 27746,dog 27747,frog 27748,dog 27749,deer 27750,frog 27751,automobile 27752,airplane 27753,truck 27754,frog 27755,dog 27756,dog 27757,cat 27758,truck 27759,dog 27760,horse 27761,ship 27762,bird 27763,airplane 27764,deer 27765,deer 27766,airplane 27767,dog 27768,ship 27769,cat 27770,frog 27771,truck 27772,cat 27773,frog 27774,airplane 27775,ship 27776,automobile 27777,horse 27778,dog 27779,airplane 27780,deer 27781,cat 27782,deer 27783,frog 27784,dog 27785,truck 27786,frog 27787,airplane 27788,frog 27789,ship 27790,airplane 27791,automobile 27792,deer 27793,automobile 27794,cat 27795,horse 27796,bird 27797,deer 27798,horse 27799,cat 27800,deer 27801,frog 27802,dog 27803,frog 27804,bird 27805,frog 27806,horse 27807,truck 27808,deer 27809,frog 27810,deer 27811,frog 27812,horse 27813,frog 27814,cat 27815,ship 27816,horse 27817,dog 27818,ship 27819,truck 27820,frog 27821,dog 27822,cat 27823,horse 27824,automobile 27825,deer 27826,frog 27827,frog 27828,deer 27829,frog 27830,truck 27831,airplane 27832,deer 27833,dog 27834,airplane 27835,deer 27836,automobile 27837,airplane 27838,cat 27839,deer 27840,deer 27841,cat 27842,cat 27843,automobile 27844,horse 27845,truck 27846,dog 27847,bird 27848,deer 27849,cat 27850,deer 27851,dog 27852,bird 27853,automobile 27854,ship 27855,dog 27856,airplane 27857,dog 27858,frog 27859,truck 27860,airplane 27861,ship 27862,airplane 27863,deer 27864,frog 27865,frog 27866,airplane 27867,dog 27868,horse 27869,truck 27870,bird 27871,ship 27872,ship 27873,bird 27874,ship 27875,dog 27876,bird 27877,airplane 27878,truck 27879,deer 27880,cat 27881,cat 27882,deer 27883,airplane 27884,cat 27885,truck 27886,horse 27887,deer 27888,automobile 27889,airplane 27890,frog 27891,bird 27892,ship 27893,dog 27894,automobile 27895,frog 27896,cat 27897,cat 27898,cat 27899,deer 27900,horse 27901,truck 27902,horse 27903,cat 27904,dog 27905,airplane 27906,dog 27907,horse 27908,dog 27909,frog 27910,cat 27911,airplane 27912,truck 27913,frog 27914,dog 27915,airplane 27916,truck 27917,cat 27918,cat 27919,bird 27920,airplane 27921,deer 27922,deer 27923,horse 27924,truck 27925,deer 27926,deer 27927,horse 27928,deer 27929,ship 27930,bird 27931,horse 27932,automobile 27933,cat 27934,truck 27935,truck 27936,ship 27937,deer 27938,horse 27939,automobile 27940,automobile 27941,automobile 27942,horse 27943,deer 27944,deer 27945,deer 27946,truck 27947,deer 27948,horse 27949,truck 27950,ship 27951,dog 27952,deer 27953,truck 27954,truck 27955,deer 27956,airplane 27957,cat 27958,automobile 27959,truck 27960,deer 27961,frog 27962,truck 27963,horse 27964,automobile 27965,deer 27966,truck 27967,bird 27968,automobile 27969,deer 27970,airplane 27971,airplane 27972,cat 27973,frog 27974,horse 27975,bird 27976,cat 27977,ship 27978,bird 27979,ship 27980,dog 27981,truck 27982,dog 27983,bird 27984,cat 27985,horse 27986,ship 27987,automobile 27988,deer 27989,bird 27990,horse 27991,dog 27992,deer 27993,frog 27994,dog 27995,bird 27996,dog 27997,deer 27998,deer 27999,frog 28000,dog 28001,automobile 28002,truck 28003,airplane 28004,truck 28005,dog 28006,airplane 28007,cat 28008,deer 28009,cat 28010,cat 28011,ship 28012,airplane 28013,cat 28014,cat 28015,bird 28016,frog 28017,cat 28018,dog 28019,deer 28020,automobile 28021,frog 28022,automobile 28023,truck 28024,deer 28025,dog 28026,frog 28027,airplane 28028,deer 28029,airplane 28030,dog 28031,ship 28032,deer 28033,cat 28034,truck 28035,dog 28036,truck 28037,horse 28038,cat 28039,dog 28040,truck 28041,cat 28042,cat 28043,frog 28044,truck 28045,airplane 28046,horse 28047,ship 28048,deer 28049,airplane 28050,horse 28051,deer 28052,cat 28053,horse 28054,bird 28055,horse 28056,ship 28057,cat 28058,frog 28059,cat 28060,frog 28061,dog 28062,ship 28063,truck 28064,cat 28065,ship 28066,truck 28067,frog 28068,airplane 28069,horse 28070,automobile 28071,horse 28072,airplane 28073,cat 28074,cat 28075,dog 28076,deer 28077,deer 28078,cat 28079,ship 28080,cat 28081,deer 28082,airplane 28083,airplane 28084,truck 28085,truck 28086,deer 28087,bird 28088,truck 28089,cat 28090,airplane 28091,horse 28092,cat 28093,bird 28094,horse 28095,deer 28096,frog 28097,frog 28098,deer 28099,truck 28100,dog 28101,horse 28102,automobile 28103,cat 28104,dog 28105,airplane 28106,horse 28107,ship 28108,frog 28109,deer 28110,deer 28111,horse 28112,airplane 28113,bird 28114,ship 28115,cat 28116,dog 28117,ship 28118,bird 28119,horse 28120,cat 28121,cat 28122,airplane 28123,ship 28124,dog 28125,deer 28126,dog 28127,cat 28128,horse 28129,truck 28130,cat 28131,deer 28132,cat 28133,cat 28134,truck 28135,frog 28136,frog 28137,ship 28138,horse 28139,frog 28140,horse 28141,airplane 28142,bird 28143,deer 28144,ship 28145,frog 28146,dog 28147,deer 28148,airplane 28149,truck 28150,dog 28151,bird 28152,cat 28153,frog 28154,frog 28155,truck 28156,cat 28157,deer 28158,deer 28159,airplane 28160,horse 28161,cat 28162,cat 28163,airplane 28164,automobile 28165,bird 28166,dog 28167,bird 28168,dog 28169,cat 28170,frog 28171,truck 28172,ship 28173,deer 28174,bird 28175,automobile 28176,airplane 28177,dog 28178,dog 28179,horse 28180,deer 28181,automobile 28182,cat 28183,airplane 28184,bird 28185,truck 28186,airplane 28187,airplane 28188,truck 28189,truck 28190,bird 28191,airplane 28192,airplane 28193,ship 28194,truck 28195,truck 28196,truck 28197,deer 28198,bird 28199,truck 28200,horse 28201,dog 28202,frog 28203,bird 28204,horse 28205,frog 28206,truck 28207,truck 28208,deer 28209,truck 28210,truck 28211,cat 28212,cat 28213,deer 28214,frog 28215,truck 28216,bird 28217,deer 28218,truck 28219,cat 28220,truck 28221,cat 28222,truck 28223,horse 28224,horse 28225,cat 28226,truck 28227,frog 28228,horse 28229,truck 28230,deer 28231,deer 28232,dog 28233,truck 28234,ship 28235,cat 28236,bird 28237,automobile 28238,deer 28239,frog 28240,airplane 28241,automobile 28242,deer 28243,dog 28244,cat 28245,ship 28246,cat 28247,truck 28248,frog 28249,deer 28250,automobile 28251,cat 28252,automobile 28253,cat 28254,automobile 28255,deer 28256,deer 28257,truck 28258,truck 28259,cat 28260,dog 28261,dog 28262,horse 28263,airplane 28264,airplane 28265,dog 28266,truck 28267,frog 28268,dog 28269,ship 28270,automobile 28271,airplane 28272,deer 28273,frog 28274,frog 28275,ship 28276,truck 28277,deer 28278,airplane 28279,cat 28280,truck 28281,deer 28282,bird 28283,airplane 28284,truck 28285,truck 28286,frog 28287,automobile 28288,ship 28289,automobile 28290,deer 28291,dog 28292,dog 28293,deer 28294,frog 28295,frog 28296,airplane 28297,truck 28298,truck 28299,automobile 28300,bird 28301,cat 28302,airplane 28303,ship 28304,frog 28305,deer 28306,ship 28307,deer 28308,ship 28309,cat 28310,dog 28311,airplane 28312,cat 28313,airplane 28314,bird 28315,airplane 28316,cat 28317,horse 28318,horse 28319,dog 28320,cat 28321,horse 28322,frog 28323,cat 28324,cat 28325,bird 28326,deer 28327,truck 28328,bird 28329,bird 28330,dog 28331,dog 28332,automobile 28333,deer 28334,automobile 28335,airplane 28336,frog 28337,cat 28338,frog 28339,truck 28340,horse 28341,dog 28342,ship 28343,frog 28344,deer 28345,deer 28346,horse 28347,dog 28348,cat 28349,airplane 28350,airplane 28351,airplane 28352,frog 28353,frog 28354,truck 28355,automobile 28356,frog 28357,deer 28358,truck 28359,truck 28360,horse 28361,deer 28362,airplane 28363,deer 28364,bird 28365,truck 28366,truck 28367,deer 28368,deer 28369,frog 28370,deer 28371,frog 28372,airplane 28373,bird 28374,cat 28375,automobile 28376,truck 28377,frog 28378,truck 28379,airplane 28380,bird 28381,frog 28382,horse 28383,automobile 28384,truck 28385,cat 28386,truck 28387,dog 28388,horse 28389,horse 28390,ship 28391,cat 28392,dog 28393,deer 28394,airplane 28395,automobile 28396,bird 28397,airplane 28398,horse 28399,dog 28400,dog 28401,horse 28402,horse 28403,truck 28404,truck 28405,airplane 28406,frog 28407,cat 28408,cat 28409,frog 28410,dog 28411,truck 28412,dog 28413,frog 28414,deer 28415,truck 28416,dog 28417,ship 28418,ship 28419,ship 28420,ship 28421,airplane 28422,dog 28423,deer 28424,deer 28425,deer 28426,dog 28427,frog 28428,automobile 28429,deer 28430,deer 28431,dog 28432,bird 28433,cat 28434,bird 28435,ship 28436,automobile 28437,automobile 28438,deer 28439,horse 28440,dog 28441,horse 28442,bird 28443,horse 28444,cat 28445,horse 28446,frog 28447,cat 28448,bird 28449,horse 28450,truck 28451,cat 28452,ship 28453,deer 28454,dog 28455,dog 28456,airplane 28457,deer 28458,deer 28459,horse 28460,ship 28461,bird 28462,horse 28463,dog 28464,ship 28465,airplane 28466,frog 28467,frog 28468,airplane 28469,deer 28470,airplane 28471,horse 28472,automobile 28473,cat 28474,airplane 28475,cat 28476,frog 28477,bird 28478,dog 28479,deer 28480,bird 28481,frog 28482,deer 28483,frog 28484,truck 28485,frog 28486,horse 28487,dog 28488,airplane 28489,airplane 28490,frog 28491,dog 28492,automobile 28493,ship 28494,airplane 28495,cat 28496,frog 28497,cat 28498,deer 28499,automobile 28500,deer 28501,horse 28502,ship 28503,cat 28504,truck 28505,deer 28506,cat 28507,deer 28508,deer 28509,frog 28510,deer 28511,airplane 28512,dog 28513,cat 28514,deer 28515,airplane 28516,dog 28517,cat 28518,dog 28519,automobile 28520,deer 28521,dog 28522,automobile 28523,dog 28524,airplane 28525,horse 28526,deer 28527,cat 28528,automobile 28529,dog 28530,bird 28531,deer 28532,truck 28533,automobile 28534,truck 28535,automobile 28536,bird 28537,frog 28538,deer 28539,deer 28540,frog 28541,cat 28542,bird 28543,frog 28544,airplane 28545,dog 28546,deer 28547,frog 28548,cat 28549,automobile 28550,cat 28551,truck 28552,horse 28553,dog 28554,ship 28555,bird 28556,deer 28557,airplane 28558,cat 28559,truck 28560,frog 28561,horse 28562,dog 28563,dog 28564,frog 28565,ship 28566,cat 28567,cat 28568,truck 28569,cat 28570,automobile 28571,cat 28572,dog 28573,frog 28574,truck 28575,automobile 28576,bird 28577,ship 28578,dog 28579,airplane 28580,truck 28581,airplane 28582,airplane 28583,automobile 28584,truck 28585,horse 28586,bird 28587,horse 28588,horse 28589,airplane 28590,cat 28591,dog 28592,frog 28593,deer 28594,bird 28595,bird 28596,dog 28597,ship 28598,bird 28599,cat 28600,frog 28601,dog 28602,horse 28603,dog 28604,deer 28605,deer 28606,truck 28607,horse 28608,dog 28609,bird 28610,frog 28611,dog 28612,automobile 28613,frog 28614,deer 28615,dog 28616,ship 28617,dog 28618,dog 28619,cat 28620,cat 28621,automobile 28622,truck 28623,automobile 28624,frog 28625,bird 28626,cat 28627,airplane 28628,deer 28629,dog 28630,deer 28631,deer 28632,ship 28633,bird 28634,frog 28635,airplane 28636,truck 28637,horse 28638,deer 28639,cat 28640,frog 28641,dog 28642,ship 28643,truck 28644,truck 28645,cat 28646,frog 28647,ship 28648,dog 28649,airplane 28650,cat 28651,truck 28652,frog 28653,airplane 28654,bird 28655,automobile 28656,automobile 28657,deer 28658,deer 28659,automobile 28660,ship 28661,dog 28662,automobile 28663,truck 28664,deer 28665,dog 28666,frog 28667,bird 28668,automobile 28669,automobile 28670,truck 28671,cat 28672,horse 28673,cat 28674,frog 28675,automobile 28676,horse 28677,deer 28678,horse 28679,truck 28680,ship 28681,cat 28682,dog 28683,bird 28684,horse 28685,airplane 28686,deer 28687,truck 28688,airplane 28689,truck 28690,horse 28691,truck 28692,truck 28693,truck 28694,deer 28695,bird 28696,bird 28697,truck 28698,dog 28699,dog 28700,automobile 28701,dog 28702,truck 28703,frog 28704,frog 28705,horse 28706,frog 28707,horse 28708,horse 28709,cat 28710,cat 28711,ship 28712,bird 28713,bird 28714,frog 28715,bird 28716,deer 28717,frog 28718,ship 28719,frog 28720,deer 28721,airplane 28722,ship 28723,cat 28724,dog 28725,horse 28726,cat 28727,frog 28728,deer 28729,truck 28730,automobile 28731,horse 28732,ship 28733,horse 28734,cat 28735,ship 28736,dog 28737,cat 28738,automobile 28739,frog 28740,bird 28741,dog 28742,cat 28743,deer 28744,airplane 28745,horse 28746,truck 28747,frog 28748,dog 28749,dog 28750,cat 28751,frog 28752,truck 28753,cat 28754,horse 28755,bird 28756,ship 28757,ship 28758,truck 28759,dog 28760,horse 28761,bird 28762,bird 28763,airplane 28764,frog 28765,cat 28766,frog 28767,horse 28768,ship 28769,ship 28770,ship 28771,horse 28772,truck 28773,deer 28774,cat 28775,bird 28776,frog 28777,bird 28778,horse 28779,deer 28780,ship 28781,cat 28782,automobile 28783,dog 28784,truck 28785,deer 28786,frog 28787,dog 28788,airplane 28789,bird 28790,frog 28791,frog 28792,cat 28793,cat 28794,frog 28795,dog 28796,truck 28797,truck 28798,bird 28799,horse 28800,horse 28801,frog 28802,automobile 28803,frog 28804,cat 28805,automobile 28806,frog 28807,frog 28808,deer 28809,deer 28810,horse 28811,horse 28812,airplane 28813,bird 28814,dog 28815,cat 28816,bird 28817,ship 28818,ship 28819,horse 28820,horse 28821,bird 28822,truck 28823,cat 28824,frog 28825,automobile 28826,airplane 28827,automobile 28828,frog 28829,bird 28830,automobile 28831,cat 28832,deer 28833,airplane 28834,ship 28835,airplane 28836,airplane 28837,dog 28838,deer 28839,dog 28840,ship 28841,deer 28842,cat 28843,cat 28844,automobile 28845,truck 28846,frog 28847,cat 28848,cat 28849,automobile 28850,bird 28851,bird 28852,deer 28853,deer 28854,deer 28855,deer 28856,truck 28857,cat 28858,frog 28859,bird 28860,deer 28861,horse 28862,frog 28863,dog 28864,bird 28865,frog 28866,frog 28867,truck 28868,truck 28869,horse 28870,deer 28871,cat 28872,frog 28873,bird 28874,frog 28875,ship 28876,horse 28877,dog 28878,frog 28879,cat 28880,frog 28881,automobile 28882,bird 28883,ship 28884,truck 28885,airplane 28886,cat 28887,frog 28888,frog 28889,airplane 28890,automobile 28891,ship 28892,truck 28893,horse 28894,airplane 28895,dog 28896,truck 28897,ship 28898,truck 28899,cat 28900,cat 28901,automobile 28902,truck 28903,truck 28904,truck 28905,truck 28906,cat 28907,deer 28908,dog 28909,airplane 28910,truck 28911,cat 28912,cat 28913,frog 28914,cat 28915,cat 28916,truck 28917,truck 28918,dog 28919,deer 28920,horse 28921,automobile 28922,truck 28923,cat 28924,airplane 28925,cat 28926,automobile 28927,horse 28928,frog 28929,cat 28930,airplane 28931,deer 28932,frog 28933,airplane 28934,airplane 28935,cat 28936,ship 28937,truck 28938,frog 28939,bird 28940,deer 28941,cat 28942,automobile 28943,cat 28944,truck 28945,horse 28946,deer 28947,horse 28948,bird 28949,cat 28950,truck 28951,truck 28952,frog 28953,ship 28954,dog 28955,frog 28956,truck 28957,ship 28958,ship 28959,frog 28960,deer 28961,deer 28962,frog 28963,deer 28964,cat 28965,deer 28966,frog 28967,truck 28968,airplane 28969,dog 28970,deer 28971,ship 28972,horse 28973,deer 28974,truck 28975,horse 28976,ship 28977,airplane 28978,cat 28979,dog 28980,airplane 28981,airplane 28982,frog 28983,dog 28984,ship 28985,frog 28986,dog 28987,horse 28988,ship 28989,deer 28990,deer 28991,dog 28992,deer 28993,ship 28994,bird 28995,deer 28996,ship 28997,horse 28998,deer 28999,deer 29000,truck 29001,frog 29002,dog 29003,deer 29004,cat 29005,deer 29006,deer 29007,ship 29008,horse 29009,frog 29010,horse 29011,dog 29012,truck 29013,horse 29014,dog 29015,ship 29016,frog 29017,horse 29018,cat 29019,truck 29020,frog 29021,bird 29022,horse 29023,truck 29024,dog 29025,deer 29026,bird 29027,automobile 29028,ship 29029,horse 29030,horse 29031,dog 29032,deer 29033,cat 29034,frog 29035,horse 29036,airplane 29037,cat 29038,cat 29039,bird 29040,frog 29041,cat 29042,truck 29043,dog 29044,bird 29045,cat 29046,cat 29047,automobile 29048,deer 29049,truck 29050,automobile 29051,frog 29052,horse 29053,dog 29054,automobile 29055,ship 29056,deer 29057,truck 29058,ship 29059,deer 29060,ship 29061,horse 29062,bird 29063,ship 29064,cat 29065,deer 29066,horse 29067,deer 29068,bird 29069,truck 29070,dog 29071,ship 29072,truck 29073,truck 29074,truck 29075,ship 29076,cat 29077,cat 29078,automobile 29079,cat 29080,deer 29081,frog 29082,dog 29083,frog 29084,deer 29085,dog 29086,truck 29087,airplane 29088,dog 29089,cat 29090,deer 29091,deer 29092,automobile 29093,dog 29094,frog 29095,bird 29096,automobile 29097,horse 29098,deer 29099,horse 29100,frog 29101,truck 29102,deer 29103,bird 29104,dog 29105,airplane 29106,deer 29107,automobile 29108,frog 29109,bird 29110,bird 29111,deer 29112,cat 29113,automobile 29114,horse 29115,cat 29116,horse 29117,ship 29118,frog 29119,airplane 29120,cat 29121,airplane 29122,horse 29123,horse 29124,truck 29125,truck 29126,airplane 29127,airplane 29128,airplane 29129,truck 29130,frog 29131,truck 29132,dog 29133,horse 29134,deer 29135,deer 29136,automobile 29137,cat 29138,airplane 29139,dog 29140,cat 29141,truck 29142,cat 29143,dog 29144,deer 29145,truck 29146,dog 29147,frog 29148,deer 29149,ship 29150,truck 29151,deer 29152,deer 29153,cat 29154,cat 29155,automobile 29156,frog 29157,horse 29158,horse 29159,truck 29160,airplane 29161,deer 29162,deer 29163,ship 29164,cat 29165,bird 29166,truck 29167,airplane 29168,dog 29169,airplane 29170,cat 29171,airplane 29172,horse 29173,truck 29174,ship 29175,horse 29176,airplane 29177,truck 29178,automobile 29179,truck 29180,cat 29181,bird 29182,cat 29183,automobile 29184,deer 29185,horse 29186,frog 29187,cat 29188,ship 29189,deer 29190,frog 29191,automobile 29192,frog 29193,truck 29194,cat 29195,horse 29196,automobile 29197,deer 29198,bird 29199,horse 29200,frog 29201,truck 29202,horse 29203,frog 29204,horse 29205,automobile 29206,deer 29207,airplane 29208,truck 29209,horse 29210,cat 29211,bird 29212,truck 29213,ship 29214,horse 29215,dog 29216,truck 29217,airplane 29218,bird 29219,bird 29220,frog 29221,frog 29222,horse 29223,frog 29224,cat 29225,automobile 29226,ship 29227,frog 29228,cat 29229,ship 29230,dog 29231,deer 29232,deer 29233,bird 29234,deer 29235,bird 29236,frog 29237,cat 29238,horse 29239,deer 29240,dog 29241,airplane 29242,bird 29243,deer 29244,frog 29245,airplane 29246,ship 29247,cat 29248,horse 29249,dog 29250,horse 29251,dog 29252,truck 29253,automobile 29254,bird 29255,ship 29256,cat 29257,bird 29258,deer 29259,airplane 29260,frog 29261,airplane 29262,bird 29263,bird 29264,dog 29265,cat 29266,dog 29267,airplane 29268,horse 29269,bird 29270,ship 29271,deer 29272,frog 29273,cat 29274,cat 29275,frog 29276,ship 29277,truck 29278,horse 29279,deer 29280,cat 29281,ship 29282,ship 29283,horse 29284,bird 29285,truck 29286,frog 29287,truck 29288,frog 29289,cat 29290,truck 29291,cat 29292,horse 29293,deer 29294,dog 29295,horse 29296,truck 29297,horse 29298,cat 29299,bird 29300,cat 29301,truck 29302,cat 29303,deer 29304,truck 29305,frog 29306,truck 29307,frog 29308,deer 29309,deer 29310,horse 29311,frog 29312,bird 29313,automobile 29314,automobile 29315,dog 29316,ship 29317,horse 29318,bird 29319,cat 29320,deer 29321,deer 29322,automobile 29323,truck 29324,truck 29325,bird 29326,deer 29327,truck 29328,cat 29329,frog 29330,horse 29331,frog 29332,automobile 29333,frog 29334,bird 29335,airplane 29336,truck 29337,frog 29338,automobile 29339,cat 29340,horse 29341,deer 29342,ship 29343,dog 29344,dog 29345,ship 29346,cat 29347,airplane 29348,deer 29349,truck 29350,frog 29351,deer 29352,bird 29353,horse 29354,airplane 29355,automobile 29356,airplane 29357,airplane 29358,cat 29359,horse 29360,bird 29361,bird 29362,dog 29363,deer 29364,truck 29365,truck 29366,truck 29367,frog 29368,cat 29369,dog 29370,frog 29371,deer 29372,horse 29373,ship 29374,truck 29375,horse 29376,deer 29377,dog 29378,frog 29379,bird 29380,horse 29381,dog 29382,truck 29383,truck 29384,dog 29385,airplane 29386,automobile 29387,cat 29388,dog 29389,cat 29390,cat 29391,deer 29392,cat 29393,frog 29394,airplane 29395,cat 29396,deer 29397,truck 29398,ship 29399,frog 29400,deer 29401,frog 29402,ship 29403,dog 29404,bird 29405,ship 29406,deer 29407,automobile 29408,truck 29409,cat 29410,automobile 29411,bird 29412,cat 29413,frog 29414,deer 29415,bird 29416,truck 29417,cat 29418,frog 29419,deer 29420,deer 29421,frog 29422,frog 29423,airplane 29424,frog 29425,dog 29426,frog 29427,deer 29428,frog 29429,frog 29430,frog 29431,bird 29432,automobile 29433,airplane 29434,ship 29435,ship 29436,deer 29437,bird 29438,deer 29439,airplane 29440,bird 29441,truck 29442,frog 29443,dog 29444,truck 29445,deer 29446,deer 29447,airplane 29448,frog 29449,cat 29450,truck 29451,truck 29452,ship 29453,automobile 29454,automobile 29455,deer 29456,frog 29457,frog 29458,truck 29459,horse 29460,bird 29461,dog 29462,cat 29463,dog 29464,deer 29465,automobile 29466,cat 29467,deer 29468,frog 29469,bird 29470,automobile 29471,bird 29472,cat 29473,automobile 29474,deer 29475,ship 29476,dog 29477,ship 29478,horse 29479,deer 29480,truck 29481,ship 29482,truck 29483,dog 29484,airplane 29485,automobile 29486,ship 29487,dog 29488,dog 29489,deer 29490,dog 29491,cat 29492,airplane 29493,truck 29494,frog 29495,truck 29496,dog 29497,horse 29498,airplane 29499,deer 29500,ship 29501,airplane 29502,horse 29503,horse 29504,horse 29505,automobile 29506,deer 29507,truck 29508,frog 29509,bird 29510,frog 29511,horse 29512,deer 29513,airplane 29514,dog 29515,dog 29516,truck 29517,airplane 29518,automobile 29519,dog 29520,dog 29521,horse 29522,cat 29523,dog 29524,ship 29525,horse 29526,airplane 29527,dog 29528,bird 29529,bird 29530,dog 29531,dog 29532,ship 29533,dog 29534,dog 29535,cat 29536,airplane 29537,dog 29538,airplane 29539,dog 29540,bird 29541,cat 29542,deer 29543,ship 29544,frog 29545,frog 29546,automobile 29547,cat 29548,horse 29549,airplane 29550,frog 29551,bird 29552,bird 29553,bird 29554,bird 29555,ship 29556,deer 29557,truck 29558,frog 29559,automobile 29560,horse 29561,ship 29562,cat 29563,ship 29564,truck 29565,horse 29566,airplane 29567,horse 29568,ship 29569,truck 29570,bird 29571,frog 29572,dog 29573,bird 29574,cat 29575,bird 29576,frog 29577,automobile 29578,frog 29579,bird 29580,truck 29581,horse 29582,horse 29583,frog 29584,dog 29585,dog 29586,cat 29587,truck 29588,dog 29589,cat 29590,frog 29591,frog 29592,ship 29593,airplane 29594,dog 29595,horse 29596,automobile 29597,cat 29598,truck 29599,ship 29600,bird 29601,deer 29602,cat 29603,deer 29604,truck 29605,dog 29606,deer 29607,bird 29608,automobile 29609,cat 29610,truck 29611,dog 29612,horse 29613,bird 29614,horse 29615,cat 29616,frog 29617,cat 29618,dog 29619,frog 29620,truck 29621,automobile 29622,dog 29623,cat 29624,truck 29625,cat 29626,cat 29627,deer 29628,airplane 29629,dog 29630,cat 29631,airplane 29632,dog 29633,deer 29634,truck 29635,horse 29636,dog 29637,bird 29638,automobile 29639,bird 29640,cat 29641,frog 29642,frog 29643,airplane 29644,deer 29645,frog 29646,automobile 29647,ship 29648,frog 29649,cat 29650,cat 29651,deer 29652,horse 29653,truck 29654,deer 29655,deer 29656,truck 29657,frog 29658,cat 29659,bird 29660,frog 29661,airplane 29662,dog 29663,frog 29664,truck 29665,ship 29666,bird 29667,airplane 29668,deer 29669,bird 29670,bird 29671,ship 29672,truck 29673,ship 29674,airplane 29675,bird 29676,truck 29677,ship 29678,frog 29679,ship 29680,ship 29681,ship 29682,cat 29683,truck 29684,dog 29685,airplane 29686,deer 29687,ship 29688,ship 29689,cat 29690,cat 29691,truck 29692,deer 29693,deer 29694,frog 29695,cat 29696,truck 29697,bird 29698,dog 29699,dog 29700,deer 29701,horse 29702,cat 29703,horse 29704,frog 29705,airplane 29706,cat 29707,cat 29708,deer 29709,airplane 29710,deer 29711,airplane 29712,horse 29713,truck 29714,deer 29715,horse 29716,automobile 29717,automobile 29718,horse 29719,airplane 29720,airplane 29721,frog 29722,automobile 29723,horse 29724,deer 29725,cat 29726,dog 29727,horse 29728,truck 29729,truck 29730,frog 29731,ship 29732,dog 29733,deer 29734,frog 29735,deer 29736,ship 29737,dog 29738,horse 29739,cat 29740,horse 29741,airplane 29742,ship 29743,cat 29744,deer 29745,deer 29746,automobile 29747,frog 29748,cat 29749,dog 29750,horse 29751,frog 29752,dog 29753,dog 29754,deer 29755,frog 29756,truck 29757,truck 29758,truck 29759,deer 29760,airplane 29761,automobile 29762,ship 29763,deer 29764,airplane 29765,frog 29766,ship 29767,bird 29768,truck 29769,horse 29770,airplane 29771,airplane 29772,deer 29773,dog 29774,airplane 29775,bird 29776,cat 29777,cat 29778,airplane 29779,dog 29780,deer 29781,bird 29782,cat 29783,dog 29784,dog 29785,truck 29786,cat 29787,airplane 29788,truck 29789,truck 29790,automobile 29791,deer 29792,horse 29793,horse 29794,deer 29795,horse 29796,frog 29797,cat 29798,cat 29799,truck 29800,bird 29801,truck 29802,dog 29803,bird 29804,deer 29805,deer 29806,frog 29807,deer 29808,deer 29809,ship 29810,deer 29811,automobile 29812,deer 29813,horse 29814,dog 29815,ship 29816,airplane 29817,dog 29818,horse 29819,cat 29820,truck 29821,ship 29822,automobile 29823,deer 29824,airplane 29825,airplane 29826,frog 29827,truck 29828,automobile 29829,truck 29830,bird 29831,deer 29832,truck 29833,cat 29834,deer 29835,truck 29836,deer 29837,frog 29838,cat 29839,automobile 29840,cat 29841,cat 29842,truck 29843,frog 29844,airplane 29845,airplane 29846,deer 29847,dog 29848,bird 29849,horse 29850,truck 29851,dog 29852,horse 29853,frog 29854,cat 29855,horse 29856,bird 29857,deer 29858,ship 29859,frog 29860,truck 29861,airplane 29862,truck 29863,horse 29864,deer 29865,cat 29866,deer 29867,bird 29868,frog 29869,airplane 29870,ship 29871,deer 29872,deer 29873,horse 29874,cat 29875,bird 29876,deer 29877,bird 29878,frog 29879,cat 29880,airplane 29881,bird 29882,truck 29883,deer 29884,frog 29885,dog 29886,horse 29887,deer 29888,cat 29889,frog 29890,dog 29891,bird 29892,truck 29893,frog 29894,truck 29895,truck 29896,ship 29897,truck 29898,frog 29899,automobile 29900,cat 29901,frog 29902,frog 29903,airplane 29904,airplane 29905,airplane 29906,horse 29907,airplane 29908,horse 29909,cat 29910,frog 29911,cat 29912,deer 29913,truck 29914,bird 29915,automobile 29916,cat 29917,cat 29918,horse 29919,bird 29920,airplane 29921,horse 29922,deer 29923,cat 29924,dog 29925,truck 29926,automobile 29927,frog 29928,deer 29929,cat 29930,ship 29931,deer 29932,horse 29933,automobile 29934,bird 29935,frog 29936,frog 29937,airplane 29938,horse 29939,ship 29940,truck 29941,deer 29942,horse 29943,bird 29944,frog 29945,airplane 29946,frog 29947,cat 29948,cat 29949,truck 29950,cat 29951,airplane 29952,automobile 29953,bird 29954,automobile 29955,dog 29956,deer 29957,truck 29958,bird 29959,deer 29960,frog 29961,frog 29962,dog 29963,bird 29964,airplane 29965,cat 29966,frog 29967,airplane 29968,truck 29969,deer 29970,frog 29971,deer 29972,dog 29973,cat 29974,ship 29975,frog 29976,automobile 29977,deer 29978,dog 29979,dog 29980,automobile 29981,cat 29982,airplane 29983,horse 29984,deer 29985,cat 29986,cat 29987,automobile 29988,cat 29989,automobile 29990,dog 29991,truck 29992,horse 29993,horse 29994,deer 29995,horse 29996,dog 29997,airplane 29998,dog 29999,automobile 30000,airplane 30001,airplane 30002,horse 30003,bird 30004,dog 30005,dog 30006,airplane 30007,bird 30008,bird 30009,frog 30010,frog 30011,cat 30012,bird 30013,automobile 30014,cat 30015,dog 30016,dog 30017,horse 30018,cat 30019,airplane 30020,truck 30021,truck 30022,frog 30023,deer 30024,airplane 30025,cat 30026,dog 30027,deer 30028,cat 30029,automobile 30030,ship 30031,airplane 30032,airplane 30033,dog 30034,truck 30035,airplane 30036,deer 30037,dog 30038,frog 30039,truck 30040,truck 30041,automobile 30042,truck 30043,frog 30044,automobile 30045,bird 30046,airplane 30047,automobile 30048,deer 30049,cat 30050,airplane 30051,deer 30052,frog 30053,deer 30054,frog 30055,cat 30056,horse 30057,truck 30058,automobile 30059,automobile 30060,dog 30061,automobile 30062,ship 30063,cat 30064,bird 30065,frog 30066,deer 30067,bird 30068,deer 30069,frog 30070,frog 30071,bird 30072,cat 30073,ship 30074,deer 30075,cat 30076,dog 30077,dog 30078,airplane 30079,frog 30080,frog 30081,bird 30082,cat 30083,deer 30084,deer 30085,bird 30086,deer 30087,cat 30088,deer 30089,cat 30090,cat 30091,airplane 30092,airplane 30093,automobile 30094,automobile 30095,dog 30096,frog 30097,cat 30098,airplane 30099,deer 30100,frog 30101,bird 30102,truck 30103,ship 30104,bird 30105,truck 30106,ship 30107,ship 30108,cat 30109,horse 30110,automobile 30111,cat 30112,horse 30113,cat 30114,dog 30115,truck 30116,deer 30117,bird 30118,airplane 30119,cat 30120,dog 30121,automobile 30122,ship 30123,deer 30124,bird 30125,deer 30126,airplane 30127,dog 30128,ship 30129,bird 30130,airplane 30131,bird 30132,ship 30133,horse 30134,dog 30135,ship 30136,bird 30137,truck 30138,automobile 30139,horse 30140,bird 30141,frog 30142,deer 30143,cat 30144,frog 30145,bird 30146,bird 30147,frog 30148,airplane 30149,truck 30150,frog 30151,deer 30152,horse 30153,deer 30154,dog 30155,horse 30156,airplane 30157,automobile 30158,airplane 30159,bird 30160,airplane 30161,ship 30162,frog 30163,ship 30164,cat 30165,deer 30166,automobile 30167,bird 30168,frog 30169,ship 30170,truck 30171,deer 30172,automobile 30173,frog 30174,truck 30175,dog 30176,bird 30177,dog 30178,dog 30179,horse 30180,frog 30181,frog 30182,deer 30183,cat 30184,deer 30185,frog 30186,dog 30187,deer 30188,deer 30189,ship 30190,cat 30191,ship 30192,cat 30193,automobile 30194,bird 30195,truck 30196,automobile 30197,dog 30198,dog 30199,bird 30200,frog 30201,dog 30202,bird 30203,airplane 30204,cat 30205,dog 30206,truck 30207,deer 30208,dog 30209,deer 30210,bird 30211,frog 30212,deer 30213,deer 30214,frog 30215,ship 30216,frog 30217,ship 30218,bird 30219,deer 30220,deer 30221,deer 30222,horse 30223,dog 30224,frog 30225,horse 30226,truck 30227,truck 30228,deer 30229,frog 30230,deer 30231,automobile 30232,bird 30233,airplane 30234,ship 30235,frog 30236,automobile 30237,ship 30238,ship 30239,truck 30240,ship 30241,truck 30242,bird 30243,deer 30244,deer 30245,deer 30246,horse 30247,cat 30248,frog 30249,ship 30250,airplane 30251,airplane 30252,horse 30253,ship 30254,cat 30255,automobile 30256,frog 30257,ship 30258,frog 30259,cat 30260,dog 30261,truck 30262,deer 30263,bird 30264,dog 30265,truck 30266,frog 30267,bird 30268,truck 30269,cat 30270,dog 30271,horse 30272,ship 30273,automobile 30274,bird 30275,dog 30276,ship 30277,ship 30278,cat 30279,deer 30280,dog 30281,horse 30282,automobile 30283,frog 30284,dog 30285,deer 30286,frog 30287,cat 30288,ship 30289,frog 30290,bird 30291,ship 30292,dog 30293,truck 30294,truck 30295,cat 30296,deer 30297,airplane 30298,cat 30299,dog 30300,automobile 30301,dog 30302,dog 30303,deer 30304,horse 30305,deer 30306,airplane 30307,deer 30308,airplane 30309,ship 30310,bird 30311,truck 30312,bird 30313,automobile 30314,ship 30315,automobile 30316,automobile 30317,horse 30318,truck 30319,cat 30320,horse 30321,cat 30322,cat 30323,dog 30324,dog 30325,deer 30326,dog 30327,ship 30328,dog 30329,cat 30330,deer 30331,frog 30332,deer 30333,cat 30334,dog 30335,bird 30336,automobile 30337,frog 30338,deer 30339,cat 30340,cat 30341,ship 30342,cat 30343,cat 30344,horse 30345,airplane 30346,deer 30347,frog 30348,automobile 30349,automobile 30350,truck 30351,airplane 30352,dog 30353,airplane 30354,frog 30355,bird 30356,deer 30357,ship 30358,frog 30359,airplane 30360,horse 30361,deer 30362,horse 30363,dog 30364,ship 30365,airplane 30366,deer 30367,ship 30368,automobile 30369,bird 30370,airplane 30371,cat 30372,bird 30373,bird 30374,frog 30375,ship 30376,ship 30377,ship 30378,automobile 30379,automobile 30380,automobile 30381,deer 30382,ship 30383,horse 30384,deer 30385,ship 30386,airplane 30387,ship 30388,automobile 30389,airplane 30390,bird 30391,cat 30392,automobile 30393,truck 30394,ship 30395,frog 30396,cat 30397,dog 30398,automobile 30399,bird 30400,cat 30401,dog 30402,truck 30403,cat 30404,cat 30405,frog 30406,deer 30407,cat 30408,deer 30409,airplane 30410,cat 30411,horse 30412,deer 30413,deer 30414,dog 30415,airplane 30416,deer 30417,automobile 30418,bird 30419,truck 30420,airplane 30421,dog 30422,dog 30423,cat 30424,airplane 30425,airplane 30426,airplane 30427,frog 30428,bird 30429,truck 30430,frog 30431,ship 30432,automobile 30433,truck 30434,airplane 30435,automobile 30436,ship 30437,deer 30438,cat 30439,truck 30440,dog 30441,deer 30442,dog 30443,airplane 30444,ship 30445,cat 30446,airplane 30447,bird 30448,deer 30449,ship 30450,airplane 30451,ship 30452,airplane 30453,frog 30454,frog 30455,airplane 30456,truck 30457,deer 30458,horse 30459,ship 30460,deer 30461,airplane 30462,bird 30463,deer 30464,truck 30465,bird 30466,automobile 30467,truck 30468,automobile 30469,truck 30470,horse 30471,bird 30472,horse 30473,bird 30474,cat 30475,frog 30476,airplane 30477,deer 30478,cat 30479,bird 30480,truck 30481,truck 30482,cat 30483,deer 30484,bird 30485,frog 30486,horse 30487,airplane 30488,horse 30489,bird 30490,automobile 30491,automobile 30492,frog 30493,deer 30494,airplane 30495,truck 30496,deer 30497,cat 30498,dog 30499,dog 30500,automobile 30501,bird 30502,deer 30503,horse 30504,frog 30505,ship 30506,ship 30507,bird 30508,truck 30509,dog 30510,airplane 30511,deer 30512,truck 30513,airplane 30514,horse 30515,deer 30516,ship 30517,deer 30518,truck 30519,deer 30520,airplane 30521,bird 30522,deer 30523,ship 30524,dog 30525,dog 30526,airplane 30527,deer 30528,frog 30529,frog 30530,airplane 30531,truck 30532,horse 30533,dog 30534,truck 30535,dog 30536,truck 30537,ship 30538,dog 30539,horse 30540,airplane 30541,airplane 30542,truck 30543,frog 30544,bird 30545,automobile 30546,horse 30547,bird 30548,dog 30549,truck 30550,cat 30551,cat 30552,horse 30553,bird 30554,frog 30555,truck 30556,horse 30557,horse 30558,ship 30559,dog 30560,cat 30561,automobile 30562,truck 30563,bird 30564,frog 30565,horse 30566,dog 30567,automobile 30568,automobile 30569,horse 30570,cat 30571,cat 30572,airplane 30573,bird 30574,airplane 30575,dog 30576,airplane 30577,airplane 30578,bird 30579,deer 30580,deer 30581,automobile 30582,dog 30583,truck 30584,truck 30585,dog 30586,frog 30587,cat 30588,dog 30589,frog 30590,deer 30591,ship 30592,cat 30593,cat 30594,cat 30595,horse 30596,horse 30597,airplane 30598,frog 30599,bird 30600,dog 30601,airplane 30602,automobile 30603,bird 30604,horse 30605,deer 30606,deer 30607,truck 30608,dog 30609,bird 30610,automobile 30611,airplane 30612,dog 30613,cat 30614,automobile 30615,deer 30616,dog 30617,ship 30618,cat 30619,dog 30620,cat 30621,frog 30622,frog 30623,deer 30624,cat 30625,deer 30626,truck 30627,bird 30628,horse 30629,airplane 30630,truck 30631,automobile 30632,cat 30633,bird 30634,airplane 30635,frog 30636,horse 30637,airplane 30638,bird 30639,deer 30640,frog 30641,deer 30642,deer 30643,horse 30644,deer 30645,automobile 30646,truck 30647,horse 30648,horse 30649,horse 30650,automobile 30651,cat 30652,frog 30653,cat 30654,ship 30655,airplane 30656,cat 30657,bird 30658,ship 30659,deer 30660,dog 30661,bird 30662,dog 30663,dog 30664,cat 30665,airplane 30666,cat 30667,truck 30668,deer 30669,ship 30670,horse 30671,frog 30672,frog 30673,deer 30674,cat 30675,frog 30676,bird 30677,bird 30678,airplane 30679,truck 30680,horse 30681,ship 30682,automobile 30683,truck 30684,truck 30685,deer 30686,ship 30687,automobile 30688,dog 30689,horse 30690,dog 30691,deer 30692,deer 30693,airplane 30694,automobile 30695,deer 30696,deer 30697,horse 30698,dog 30699,airplane 30700,truck 30701,dog 30702,frog 30703,frog 30704,airplane 30705,horse 30706,dog 30707,bird 30708,deer 30709,deer 30710,deer 30711,dog 30712,dog 30713,truck 30714,airplane 30715,deer 30716,automobile 30717,frog 30718,truck 30719,cat 30720,deer 30721,truck 30722,truck 30723,bird 30724,ship 30725,frog 30726,truck 30727,airplane 30728,dog 30729,horse 30730,ship 30731,truck 30732,airplane 30733,truck 30734,deer 30735,frog 30736,bird 30737,bird 30738,automobile 30739,bird 30740,deer 30741,ship 30742,cat 30743,frog 30744,horse 30745,airplane 30746,deer 30747,dog 30748,truck 30749,automobile 30750,cat 30751,frog 30752,bird 30753,ship 30754,automobile 30755,airplane 30756,cat 30757,deer 30758,airplane 30759,airplane 30760,cat 30761,horse 30762,deer 30763,truck 30764,horse 30765,airplane 30766,deer 30767,airplane 30768,airplane 30769,truck 30770,horse 30771,horse 30772,ship 30773,truck 30774,truck 30775,dog 30776,dog 30777,airplane 30778,truck 30779,horse 30780,dog 30781,frog 30782,frog 30783,dog 30784,horse 30785,ship 30786,dog 30787,deer 30788,bird 30789,deer 30790,cat 30791,cat 30792,cat 30793,automobile 30794,deer 30795,airplane 30796,cat 30797,deer 30798,bird 30799,deer 30800,frog 30801,deer 30802,deer 30803,automobile 30804,dog 30805,deer 30806,truck 30807,deer 30808,deer 30809,deer 30810,horse 30811,horse 30812,dog 30813,deer 30814,automobile 30815,ship 30816,deer 30817,automobile 30818,frog 30819,dog 30820,truck 30821,ship 30822,cat 30823,horse 30824,dog 30825,deer 30826,truck 30827,deer 30828,deer 30829,truck 30830,frog 30831,deer 30832,automobile 30833,bird 30834,airplane 30835,horse 30836,deer 30837,ship 30838,bird 30839,frog 30840,airplane 30841,cat 30842,truck 30843,cat 30844,dog 30845,truck 30846,frog 30847,deer 30848,frog 30849,horse 30850,frog 30851,horse 30852,horse 30853,cat 30854,ship 30855,truck 30856,ship 30857,horse 30858,ship 30859,ship 30860,deer 30861,cat 30862,cat 30863,bird 30864,automobile 30865,cat 30866,cat 30867,deer 30868,ship 30869,automobile 30870,ship 30871,ship 30872,airplane 30873,ship 30874,deer 30875,frog 30876,frog 30877,deer 30878,frog 30879,truck 30880,deer 30881,horse 30882,deer 30883,cat 30884,airplane 30885,deer 30886,ship 30887,horse 30888,bird 30889,deer 30890,cat 30891,dog 30892,frog 30893,ship 30894,truck 30895,bird 30896,horse 30897,truck 30898,cat 30899,dog 30900,deer 30901,truck 30902,airplane 30903,cat 30904,cat 30905,ship 30906,bird 30907,dog 30908,airplane 30909,frog 30910,automobile 30911,frog 30912,horse 30913,bird 30914,dog 30915,truck 30916,cat 30917,frog 30918,deer 30919,horse 30920,horse 30921,airplane 30922,ship 30923,horse 30924,truck 30925,cat 30926,frog 30927,frog 30928,deer 30929,airplane 30930,cat 30931,ship 30932,frog 30933,ship 30934,deer 30935,dog 30936,airplane 30937,airplane 30938,bird 30939,truck 30940,dog 30941,frog 30942,frog 30943,dog 30944,airplane 30945,bird 30946,deer 30947,ship 30948,cat 30949,cat 30950,truck 30951,frog 30952,ship 30953,dog 30954,dog 30955,truck 30956,deer 30957,deer 30958,truck 30959,cat 30960,cat 30961,deer 30962,horse 30963,horse 30964,cat 30965,horse 30966,automobile 30967,ship 30968,automobile 30969,cat 30970,dog 30971,deer 30972,bird 30973,ship 30974,ship 30975,ship 30976,cat 30977,truck 30978,cat 30979,deer 30980,automobile 30981,frog 30982,airplane 30983,airplane 30984,truck 30985,cat 30986,frog 30987,automobile 30988,frog 30989,frog 30990,ship 30991,automobile 30992,frog 30993,deer 30994,automobile 30995,cat 30996,truck 30997,frog 30998,cat 30999,automobile 31000,truck 31001,automobile 31002,dog 31003,bird 31004,horse 31005,airplane 31006,airplane 31007,ship 31008,truck 31009,deer 31010,frog 31011,deer 31012,deer 31013,automobile 31014,frog 31015,deer 31016,bird 31017,deer 31018,automobile 31019,deer 31020,bird 31021,airplane 31022,dog 31023,frog 31024,automobile 31025,ship 31026,automobile 31027,cat 31028,bird 31029,ship 31030,dog 31031,deer 31032,cat 31033,bird 31034,horse 31035,frog 31036,horse 31037,truck 31038,bird 31039,deer 31040,truck 31041,cat 31042,bird 31043,airplane 31044,cat 31045,truck 31046,dog 31047,cat 31048,deer 31049,airplane 31050,frog 31051,horse 31052,cat 31053,frog 31054,bird 31055,deer 31056,bird 31057,truck 31058,frog 31059,automobile 31060,bird 31061,bird 31062,horse 31063,horse 31064,ship 31065,cat 31066,truck 31067,deer 31068,frog 31069,airplane 31070,cat 31071,frog 31072,frog 31073,deer 31074,ship 31075,airplane 31076,deer 31077,ship 31078,bird 31079,deer 31080,bird 31081,ship 31082,dog 31083,ship 31084,deer 31085,bird 31086,truck 31087,cat 31088,ship 31089,frog 31090,frog 31091,dog 31092,dog 31093,horse 31094,automobile 31095,horse 31096,cat 31097,bird 31098,automobile 31099,frog 31100,automobile 31101,frog 31102,truck 31103,horse 31104,deer 31105,cat 31106,bird 31107,dog 31108,ship 31109,frog 31110,dog 31111,bird 31112,bird 31113,truck 31114,horse 31115,frog 31116,airplane 31117,cat 31118,frog 31119,truck 31120,bird 31121,automobile 31122,cat 31123,truck 31124,cat 31125,deer 31126,cat 31127,cat 31128,cat 31129,automobile 31130,ship 31131,automobile 31132,automobile 31133,frog 31134,deer 31135,airplane 31136,deer 31137,truck 31138,deer 31139,truck 31140,truck 31141,bird 31142,deer 31143,automobile 31144,deer 31145,cat 31146,deer 31147,deer 31148,cat 31149,cat 31150,truck 31151,deer 31152,bird 31153,deer 31154,deer 31155,dog 31156,dog 31157,airplane 31158,deer 31159,dog 31160,deer 31161,dog 31162,dog 31163,truck 31164,dog 31165,truck 31166,horse 31167,horse 31168,ship 31169,cat 31170,automobile 31171,frog 31172,deer 31173,airplane 31174,frog 31175,bird 31176,cat 31177,dog 31178,dog 31179,cat 31180,dog 31181,deer 31182,airplane 31183,bird 31184,automobile 31185,ship 31186,cat 31187,horse 31188,frog 31189,cat 31190,deer 31191,truck 31192,frog 31193,horse 31194,bird 31195,airplane 31196,bird 31197,deer 31198,frog 31199,deer 31200,bird 31201,truck 31202,truck 31203,bird 31204,frog 31205,truck 31206,horse 31207,dog 31208,truck 31209,frog 31210,deer 31211,ship 31212,automobile 31213,automobile 31214,airplane 31215,ship 31216,ship 31217,airplane 31218,airplane 31219,truck 31220,airplane 31221,ship 31222,bird 31223,frog 31224,bird 31225,dog 31226,cat 31227,automobile 31228,automobile 31229,automobile 31230,deer 31231,horse 31232,cat 31233,truck 31234,deer 31235,frog 31236,ship 31237,bird 31238,bird 31239,dog 31240,frog 31241,bird 31242,truck 31243,truck 31244,dog 31245,cat 31246,automobile 31247,dog 31248,truck 31249,dog 31250,truck 31251,automobile 31252,frog 31253,cat 31254,truck 31255,airplane 31256,ship 31257,truck 31258,deer 31259,airplane 31260,dog 31261,bird 31262,dog 31263,cat 31264,cat 31265,dog 31266,truck 31267,automobile 31268,deer 31269,truck 31270,frog 31271,airplane 31272,ship 31273,frog 31274,deer 31275,ship 31276,airplane 31277,airplane 31278,frog 31279,horse 31280,airplane 31281,deer 31282,automobile 31283,deer 31284,horse 31285,dog 31286,dog 31287,horse 31288,truck 31289,horse 31290,cat 31291,dog 31292,bird 31293,automobile 31294,truck 31295,bird 31296,bird 31297,dog 31298,dog 31299,dog 31300,frog 31301,ship 31302,automobile 31303,truck 31304,horse 31305,bird 31306,deer 31307,truck 31308,cat 31309,frog 31310,frog 31311,deer 31312,ship 31313,dog 31314,dog 31315,cat 31316,ship 31317,deer 31318,airplane 31319,truck 31320,dog 31321,cat 31322,dog 31323,cat 31324,deer 31325,automobile 31326,cat 31327,deer 31328,truck 31329,truck 31330,airplane 31331,frog 31332,airplane 31333,deer 31334,frog 31335,cat 31336,deer 31337,cat 31338,truck 31339,cat 31340,deer 31341,bird 31342,truck 31343,cat 31344,ship 31345,bird 31346,truck 31347,deer 31348,airplane 31349,deer 31350,deer 31351,frog 31352,airplane 31353,dog 31354,horse 31355,bird 31356,cat 31357,airplane 31358,horse 31359,truck 31360,automobile 31361,automobile 31362,frog 31363,deer 31364,bird 31365,dog 31366,deer 31367,automobile 31368,deer 31369,horse 31370,horse 31371,automobile 31372,horse 31373,cat 31374,ship 31375,frog 31376,deer 31377,automobile 31378,deer 31379,dog 31380,cat 31381,horse 31382,cat 31383,airplane 31384,airplane 31385,deer 31386,frog 31387,frog 31388,cat 31389,airplane 31390,cat 31391,bird 31392,airplane 31393,cat 31394,truck 31395,automobile 31396,deer 31397,bird 31398,bird 31399,truck 31400,deer 31401,deer 31402,horse 31403,airplane 31404,truck 31405,ship 31406,automobile 31407,ship 31408,cat 31409,deer 31410,automobile 31411,airplane 31412,frog 31413,bird 31414,frog 31415,automobile 31416,frog 31417,deer 31418,bird 31419,ship 31420,frog 31421,horse 31422,cat 31423,cat 31424,truck 31425,frog 31426,automobile 31427,dog 31428,airplane 31429,cat 31430,automobile 31431,ship 31432,dog 31433,deer 31434,frog 31435,dog 31436,bird 31437,deer 31438,truck 31439,ship 31440,cat 31441,dog 31442,automobile 31443,automobile 31444,airplane 31445,cat 31446,deer 31447,dog 31448,deer 31449,dog 31450,dog 31451,frog 31452,horse 31453,bird 31454,deer 31455,airplane 31456,frog 31457,deer 31458,horse 31459,dog 31460,deer 31461,ship 31462,cat 31463,cat 31464,horse 31465,frog 31466,frog 31467,frog 31468,bird 31469,cat 31470,airplane 31471,truck 31472,frog 31473,frog 31474,dog 31475,ship 31476,truck 31477,truck 31478,deer 31479,automobile 31480,frog 31481,dog 31482,dog 31483,bird 31484,frog 31485,truck 31486,deer 31487,airplane 31488,bird 31489,horse 31490,horse 31491,bird 31492,frog 31493,ship 31494,cat 31495,frog 31496,automobile 31497,truck 31498,truck 31499,dog 31500,bird 31501,ship 31502,automobile 31503,automobile 31504,dog 31505,bird 31506,automobile 31507,cat 31508,truck 31509,airplane 31510,airplane 31511,frog 31512,deer 31513,bird 31514,deer 31515,truck 31516,dog 31517,cat 31518,airplane 31519,cat 31520,frog 31521,horse 31522,cat 31523,bird 31524,dog 31525,airplane 31526,horse 31527,airplane 31528,horse 31529,frog 31530,horse 31531,cat 31532,frog 31533,frog 31534,frog 31535,bird 31536,airplane 31537,dog 31538,horse 31539,bird 31540,ship 31541,dog 31542,dog 31543,frog 31544,airplane 31545,airplane 31546,truck 31547,cat 31548,truck 31549,horse 31550,truck 31551,automobile 31552,airplane 31553,bird 31554,frog 31555,dog 31556,deer 31557,dog 31558,horse 31559,deer 31560,cat 31561,cat 31562,truck 31563,ship 31564,deer 31565,dog 31566,horse 31567,frog 31568,frog 31569,frog 31570,airplane 31571,ship 31572,dog 31573,frog 31574,automobile 31575,ship 31576,horse 31577,horse 31578,automobile 31579,bird 31580,cat 31581,horse 31582,bird 31583,deer 31584,ship 31585,horse 31586,cat 31587,dog 31588,dog 31589,dog 31590,cat 31591,ship 31592,cat 31593,frog 31594,cat 31595,ship 31596,cat 31597,frog 31598,deer 31599,truck 31600,automobile 31601,bird 31602,ship 31603,horse 31604,cat 31605,cat 31606,truck 31607,automobile 31608,cat 31609,ship 31610,ship 31611,frog 31612,ship 31613,horse 31614,horse 31615,dog 31616,dog 31617,truck 31618,dog 31619,bird 31620,truck 31621,cat 31622,airplane 31623,bird 31624,dog 31625,airplane 31626,automobile 31627,frog 31628,cat 31629,deer 31630,airplane 31631,dog 31632,frog 31633,dog 31634,frog 31635,airplane 31636,bird 31637,cat 31638,ship 31639,deer 31640,automobile 31641,cat 31642,horse 31643,bird 31644,horse 31645,ship 31646,cat 31647,cat 31648,deer 31649,frog 31650,deer 31651,automobile 31652,dog 31653,automobile 31654,frog 31655,cat 31656,deer 31657,dog 31658,ship 31659,deer 31660,ship 31661,cat 31662,dog 31663,airplane 31664,dog 31665,horse 31666,deer 31667,cat 31668,automobile 31669,bird 31670,deer 31671,truck 31672,cat 31673,airplane 31674,frog 31675,frog 31676,automobile 31677,deer 31678,ship 31679,deer 31680,deer 31681,cat 31682,cat 31683,cat 31684,automobile 31685,horse 31686,bird 31687,horse 31688,automobile 31689,automobile 31690,frog 31691,ship 31692,dog 31693,truck 31694,frog 31695,horse 31696,airplane 31697,truck 31698,automobile 31699,ship 31700,truck 31701,cat 31702,ship 31703,airplane 31704,bird 31705,horse 31706,deer 31707,airplane 31708,frog 31709,dog 31710,bird 31711,cat 31712,dog 31713,cat 31714,cat 31715,cat 31716,deer 31717,deer 31718,frog 31719,truck 31720,frog 31721,bird 31722,frog 31723,deer 31724,frog 31725,automobile 31726,deer 31727,bird 31728,cat 31729,airplane 31730,frog 31731,dog 31732,cat 31733,frog 31734,dog 31735,cat 31736,cat 31737,dog 31738,cat 31739,automobile 31740,cat 31741,airplane 31742,cat 31743,horse 31744,airplane 31745,frog 31746,deer 31747,automobile 31748,dog 31749,deer 31750,ship 31751,dog 31752,deer 31753,airplane 31754,cat 31755,dog 31756,truck 31757,dog 31758,bird 31759,horse 31760,truck 31761,deer 31762,deer 31763,cat 31764,frog 31765,truck 31766,cat 31767,dog 31768,deer 31769,cat 31770,bird 31771,deer 31772,frog 31773,truck 31774,deer 31775,dog 31776,dog 31777,bird 31778,dog 31779,dog 31780,ship 31781,cat 31782,bird 31783,cat 31784,bird 31785,cat 31786,airplane 31787,airplane 31788,truck 31789,truck 31790,cat 31791,automobile 31792,deer 31793,truck 31794,ship 31795,ship 31796,deer 31797,deer 31798,deer 31799,truck 31800,dog 31801,deer 31802,cat 31803,dog 31804,frog 31805,ship 31806,ship 31807,deer 31808,frog 31809,cat 31810,dog 31811,horse 31812,bird 31813,frog 31814,frog 31815,horse 31816,bird 31817,ship 31818,truck 31819,cat 31820,automobile 31821,deer 31822,automobile 31823,automobile 31824,dog 31825,cat 31826,horse 31827,dog 31828,deer 31829,truck 31830,horse 31831,deer 31832,cat 31833,ship 31834,frog 31835,horse 31836,cat 31837,truck 31838,deer 31839,cat 31840,automobile 31841,deer 31842,truck 31843,deer 31844,cat 31845,frog 31846,bird 31847,ship 31848,frog 31849,ship 31850,truck 31851,dog 31852,deer 31853,bird 31854,cat 31855,truck 31856,ship 31857,truck 31858,automobile 31859,truck 31860,airplane 31861,frog 31862,horse 31863,dog 31864,truck 31865,cat 31866,horse 31867,deer 31868,horse 31869,ship 31870,ship 31871,airplane 31872,airplane 31873,cat 31874,bird 31875,deer 31876,horse 31877,airplane 31878,horse 31879,automobile 31880,dog 31881,automobile 31882,ship 31883,cat 31884,truck 31885,ship 31886,dog 31887,dog 31888,deer 31889,cat 31890,dog 31891,frog 31892,deer 31893,airplane 31894,dog 31895,airplane 31896,automobile 31897,cat 31898,horse 31899,frog 31900,truck 31901,bird 31902,bird 31903,dog 31904,ship 31905,automobile 31906,deer 31907,airplane 31908,deer 31909,truck 31910,deer 31911,dog 31912,airplane 31913,ship 31914,deer 31915,truck 31916,cat 31917,ship 31918,frog 31919,dog 31920,cat 31921,truck 31922,ship 31923,automobile 31924,airplane 31925,frog 31926,truck 31927,cat 31928,deer 31929,truck 31930,dog 31931,frog 31932,deer 31933,automobile 31934,dog 31935,cat 31936,deer 31937,bird 31938,deer 31939,cat 31940,cat 31941,frog 31942,deer 31943,airplane 31944,airplane 31945,truck 31946,deer 31947,airplane 31948,airplane 31949,deer 31950,airplane 31951,frog 31952,dog 31953,dog 31954,airplane 31955,deer 31956,horse 31957,dog 31958,truck 31959,bird 31960,deer 31961,automobile 31962,deer 31963,automobile 31964,deer 31965,frog 31966,deer 31967,ship 31968,truck 31969,bird 31970,airplane 31971,frog 31972,horse 31973,cat 31974,dog 31975,automobile 31976,bird 31977,bird 31978,frog 31979,horse 31980,automobile 31981,dog 31982,bird 31983,ship 31984,cat 31985,airplane 31986,cat 31987,bird 31988,airplane 31989,truck 31990,dog 31991,frog 31992,airplane 31993,deer 31994,truck 31995,horse 31996,airplane 31997,frog 31998,horse 31999,deer 32000,truck 32001,truck 32002,deer 32003,ship 32004,cat 32005,frog 32006,dog 32007,ship 32008,deer 32009,frog 32010,frog 32011,horse 32012,horse 32013,frog 32014,horse 32015,deer 32016,bird 32017,airplane 32018,cat 32019,cat 32020,bird 32021,truck 32022,ship 32023,dog 32024,automobile 32025,cat 32026,deer 32027,cat 32028,frog 32029,deer 32030,ship 32031,deer 32032,frog 32033,deer 32034,horse 32035,ship 32036,deer 32037,bird 32038,frog 32039,bird 32040,frog 32041,dog 32042,deer 32043,ship 32044,deer 32045,cat 32046,frog 32047,dog 32048,bird 32049,horse 32050,horse 32051,ship 32052,frog 32053,airplane 32054,ship 32055,automobile 32056,frog 32057,ship 32058,airplane 32059,deer 32060,frog 32061,airplane 32062,truck 32063,frog 32064,frog 32065,deer 32066,airplane 32067,cat 32068,bird 32069,dog 32070,bird 32071,airplane 32072,deer 32073,horse 32074,bird 32075,cat 32076,truck 32077,bird 32078,deer 32079,truck 32080,frog 32081,truck 32082,frog 32083,frog 32084,airplane 32085,horse 32086,horse 32087,cat 32088,cat 32089,horse 32090,deer 32091,automobile 32092,deer 32093,frog 32094,truck 32095,cat 32096,frog 32097,deer 32098,automobile 32099,airplane 32100,ship 32101,frog 32102,bird 32103,horse 32104,frog 32105,horse 32106,horse 32107,deer 32108,dog 32109,frog 32110,automobile 32111,dog 32112,horse 32113,frog 32114,deer 32115,bird 32116,dog 32117,frog 32118,cat 32119,deer 32120,cat 32121,ship 32122,dog 32123,deer 32124,ship 32125,cat 32126,horse 32127,ship 32128,bird 32129,automobile 32130,frog 32131,cat 32132,deer 32133,bird 32134,cat 32135,horse 32136,cat 32137,cat 32138,automobile 32139,truck 32140,horse 32141,bird 32142,cat 32143,truck 32144,frog 32145,deer 32146,horse 32147,dog 32148,bird 32149,bird 32150,horse 32151,airplane 32152,truck 32153,bird 32154,frog 32155,horse 32156,ship 32157,cat 32158,automobile 32159,automobile 32160,automobile 32161,airplane 32162,bird 32163,ship 32164,automobile 32165,truck 32166,ship 32167,truck 32168,airplane 32169,truck 32170,airplane 32171,bird 32172,ship 32173,automobile 32174,frog 32175,ship 32176,deer 32177,horse 32178,deer 32179,truck 32180,deer 32181,automobile 32182,deer 32183,horse 32184,horse 32185,deer 32186,deer 32187,truck 32188,dog 32189,dog 32190,frog 32191,deer 32192,cat 32193,dog 32194,frog 32195,airplane 32196,cat 32197,truck 32198,cat 32199,truck 32200,bird 32201,airplane 32202,airplane 32203,dog 32204,truck 32205,ship 32206,frog 32207,truck 32208,frog 32209,bird 32210,airplane 32211,cat 32212,airplane 32213,cat 32214,horse 32215,ship 32216,deer 32217,dog 32218,airplane 32219,cat 32220,ship 32221,dog 32222,deer 32223,bird 32224,airplane 32225,dog 32226,airplane 32227,frog 32228,airplane 32229,dog 32230,cat 32231,horse 32232,dog 32233,ship 32234,ship 32235,deer 32236,ship 32237,cat 32238,bird 32239,horse 32240,ship 32241,dog 32242,ship 32243,cat 32244,deer 32245,airplane 32246,airplane 32247,frog 32248,bird 32249,frog 32250,horse 32251,truck 32252,airplane 32253,ship 32254,airplane 32255,deer 32256,cat 32257,deer 32258,horse 32259,bird 32260,truck 32261,dog 32262,deer 32263,ship 32264,horse 32265,deer 32266,horse 32267,cat 32268,frog 32269,deer 32270,cat 32271,automobile 32272,ship 32273,automobile 32274,deer 32275,automobile 32276,horse 32277,dog 32278,bird 32279,truck 32280,bird 32281,cat 32282,bird 32283,truck 32284,deer 32285,bird 32286,bird 32287,airplane 32288,cat 32289,ship 32290,bird 32291,bird 32292,horse 32293,dog 32294,automobile 32295,horse 32296,airplane 32297,dog 32298,cat 32299,ship 32300,cat 32301,automobile 32302,deer 32303,frog 32304,airplane 32305,dog 32306,airplane 32307,deer 32308,truck 32309,cat 32310,ship 32311,automobile 32312,bird 32313,bird 32314,horse 32315,horse 32316,dog 32317,bird 32318,automobile 32319,bird 32320,dog 32321,frog 32322,cat 32323,bird 32324,dog 32325,horse 32326,cat 32327,deer 32328,dog 32329,frog 32330,horse 32331,cat 32332,frog 32333,frog 32334,automobile 32335,airplane 32336,automobile 32337,truck 32338,horse 32339,horse 32340,dog 32341,horse 32342,frog 32343,horse 32344,truck 32345,automobile 32346,bird 32347,deer 32348,truck 32349,horse 32350,cat 32351,ship 32352,frog 32353,ship 32354,horse 32355,deer 32356,deer 32357,ship 32358,truck 32359,cat 32360,horse 32361,airplane 32362,cat 32363,bird 32364,automobile 32365,truck 32366,bird 32367,bird 32368,deer 32369,airplane 32370,bird 32371,cat 32372,cat 32373,truck 32374,truck 32375,dog 32376,ship 32377,bird 32378,truck 32379,horse 32380,deer 32381,automobile 32382,dog 32383,ship 32384,dog 32385,cat 32386,cat 32387,cat 32388,truck 32389,automobile 32390,airplane 32391,cat 32392,automobile 32393,truck 32394,frog 32395,cat 32396,airplane 32397,bird 32398,automobile 32399,horse 32400,truck 32401,deer 32402,cat 32403,cat 32404,automobile 32405,dog 32406,frog 32407,cat 32408,cat 32409,deer 32410,cat 32411,deer 32412,automobile 32413,frog 32414,truck 32415,dog 32416,ship 32417,ship 32418,frog 32419,deer 32420,cat 32421,cat 32422,bird 32423,frog 32424,deer 32425,bird 32426,dog 32427,cat 32428,dog 32429,dog 32430,frog 32431,automobile 32432,dog 32433,dog 32434,cat 32435,frog 32436,frog 32437,automobile 32438,frog 32439,automobile 32440,airplane 32441,cat 32442,ship 32443,dog 32444,horse 32445,frog 32446,cat 32447,automobile 32448,dog 32449,truck 32450,dog 32451,horse 32452,dog 32453,truck 32454,dog 32455,truck 32456,ship 32457,dog 32458,deer 32459,airplane 32460,frog 32461,truck 32462,automobile 32463,deer 32464,frog 32465,ship 32466,dog 32467,airplane 32468,airplane 32469,airplane 32470,ship 32471,dog 32472,dog 32473,horse 32474,cat 32475,cat 32476,frog 32477,automobile 32478,deer 32479,bird 32480,cat 32481,airplane 32482,cat 32483,cat 32484,ship 32485,airplane 32486,deer 32487,dog 32488,horse 32489,airplane 32490,cat 32491,truck 32492,cat 32493,ship 32494,cat 32495,cat 32496,frog 32497,truck 32498,cat 32499,truck 32500,frog 32501,automobile 32502,automobile 32503,airplane 32504,deer 32505,horse 32506,deer 32507,frog 32508,automobile 32509,deer 32510,automobile 32511,bird 32512,truck 32513,dog 32514,cat 32515,airplane 32516,ship 32517,cat 32518,deer 32519,dog 32520,truck 32521,bird 32522,deer 32523,truck 32524,airplane 32525,deer 32526,airplane 32527,cat 32528,bird 32529,horse 32530,deer 32531,ship 32532,ship 32533,bird 32534,airplane 32535,ship 32536,automobile 32537,cat 32538,dog 32539,airplane 32540,dog 32541,deer 32542,bird 32543,truck 32544,deer 32545,bird 32546,dog 32547,deer 32548,cat 32549,automobile 32550,deer 32551,ship 32552,deer 32553,ship 32554,airplane 32555,truck 32556,cat 32557,automobile 32558,frog 32559,ship 32560,bird 32561,horse 32562,airplane 32563,cat 32564,dog 32565,cat 32566,frog 32567,airplane 32568,horse 32569,ship 32570,airplane 32571,airplane 32572,truck 32573,cat 32574,cat 32575,airplane 32576,frog 32577,ship 32578,automobile 32579,deer 32580,dog 32581,airplane 32582,dog 32583,cat 32584,horse 32585,ship 32586,airplane 32587,dog 32588,frog 32589,frog 32590,deer 32591,automobile 32592,dog 32593,ship 32594,cat 32595,deer 32596,cat 32597,airplane 32598,deer 32599,horse 32600,airplane 32601,automobile 32602,dog 32603,frog 32604,frog 32605,frog 32606,ship 32607,deer 32608,deer 32609,airplane 32610,ship 32611,cat 32612,frog 32613,frog 32614,dog 32615,frog 32616,truck 32617,ship 32618,cat 32619,dog 32620,bird 32621,ship 32622,airplane 32623,ship 32624,automobile 32625,ship 32626,truck 32627,horse 32628,deer 32629,bird 32630,deer 32631,dog 32632,truck 32633,automobile 32634,cat 32635,bird 32636,cat 32637,deer 32638,automobile 32639,ship 32640,bird 32641,horse 32642,deer 32643,deer 32644,deer 32645,horse 32646,ship 32647,cat 32648,ship 32649,horse 32650,frog 32651,deer 32652,truck 32653,truck 32654,deer 32655,deer 32656,automobile 32657,cat 32658,deer 32659,frog 32660,horse 32661,frog 32662,horse 32663,truck 32664,ship 32665,truck 32666,cat 32667,ship 32668,horse 32669,airplane 32670,dog 32671,bird 32672,bird 32673,horse 32674,horse 32675,ship 32676,cat 32677,truck 32678,bird 32679,automobile 32680,frog 32681,truck 32682,horse 32683,frog 32684,bird 32685,ship 32686,cat 32687,automobile 32688,dog 32689,ship 32690,dog 32691,truck 32692,horse 32693,truck 32694,ship 32695,cat 32696,deer 32697,deer 32698,cat 32699,cat 32700,horse 32701,ship 32702,dog 32703,bird 32704,dog 32705,truck 32706,deer 32707,frog 32708,horse 32709,automobile 32710,cat 32711,bird 32712,automobile 32713,horse 32714,dog 32715,cat 32716,automobile 32717,airplane 32718,dog 32719,automobile 32720,cat 32721,frog 32722,deer 32723,bird 32724,truck 32725,horse 32726,bird 32727,dog 32728,frog 32729,deer 32730,bird 32731,frog 32732,bird 32733,horse 32734,frog 32735,automobile 32736,cat 32737,airplane 32738,deer 32739,frog 32740,ship 32741,truck 32742,deer 32743,deer 32744,bird 32745,cat 32746,airplane 32747,bird 32748,horse 32749,deer 32750,dog 32751,automobile 32752,horse 32753,horse 32754,ship 32755,cat 32756,ship 32757,deer 32758,cat 32759,automobile 32760,truck 32761,dog 32762,dog 32763,horse 32764,ship 32765,dog 32766,automobile 32767,truck 32768,airplane 32769,ship 32770,cat 32771,automobile 32772,deer 32773,deer 32774,airplane 32775,cat 32776,deer 32777,horse 32778,deer 32779,bird 32780,cat 32781,cat 32782,frog 32783,deer 32784,horse 32785,horse 32786,automobile 32787,frog 32788,bird 32789,dog 32790,bird 32791,truck 32792,ship 32793,frog 32794,frog 32795,frog 32796,airplane 32797,deer 32798,truck 32799,deer 32800,deer 32801,airplane 32802,truck 32803,deer 32804,horse 32805,dog 32806,frog 32807,bird 32808,truck 32809,deer 32810,dog 32811,ship 32812,horse 32813,truck 32814,bird 32815,automobile 32816,truck 32817,horse 32818,cat 32819,airplane 32820,cat 32821,automobile 32822,deer 32823,deer 32824,truck 32825,frog 32826,truck 32827,automobile 32828,dog 32829,bird 32830,ship 32831,deer 32832,bird 32833,deer 32834,airplane 32835,bird 32836,truck 32837,automobile 32838,bird 32839,bird 32840,airplane 32841,automobile 32842,airplane 32843,ship 32844,cat 32845,frog 32846,truck 32847,truck 32848,automobile 32849,airplane 32850,cat 32851,automobile 32852,airplane 32853,cat 32854,deer 32855,deer 32856,bird 32857,automobile 32858,dog 32859,dog 32860,airplane 32861,truck 32862,airplane 32863,airplane 32864,ship 32865,airplane 32866,cat 32867,dog 32868,automobile 32869,dog 32870,frog 32871,truck 32872,horse 32873,horse 32874,airplane 32875,dog 32876,dog 32877,cat 32878,cat 32879,deer 32880,deer 32881,truck 32882,deer 32883,horse 32884,ship 32885,cat 32886,cat 32887,airplane 32888,deer 32889,horse 32890,frog 32891,dog 32892,automobile 32893,cat 32894,dog 32895,frog 32896,deer 32897,dog 32898,cat 32899,truck 32900,automobile 32901,cat 32902,truck 32903,ship 32904,horse 32905,horse 32906,bird 32907,cat 32908,deer 32909,frog 32910,frog 32911,truck 32912,bird 32913,cat 32914,cat 32915,bird 32916,truck 32917,frog 32918,dog 32919,ship 32920,automobile 32921,airplane 32922,automobile 32923,dog 32924,dog 32925,ship 32926,frog 32927,horse 32928,airplane 32929,frog 32930,ship 32931,frog 32932,deer 32933,horse 32934,deer 32935,deer 32936,airplane 32937,horse 32938,deer 32939,deer 32940,deer 32941,bird 32942,automobile 32943,dog 32944,dog 32945,deer 32946,automobile 32947,frog 32948,airplane 32949,frog 32950,cat 32951,truck 32952,frog 32953,frog 32954,ship 32955,bird 32956,ship 32957,cat 32958,frog 32959,horse 32960,frog 32961,deer 32962,bird 32963,truck 32964,bird 32965,dog 32966,cat 32967,bird 32968,airplane 32969,cat 32970,dog 32971,truck 32972,frog 32973,deer 32974,bird 32975,frog 32976,cat 32977,bird 32978,dog 32979,cat 32980,horse 32981,cat 32982,cat 32983,bird 32984,truck 32985,frog 32986,automobile 32987,bird 32988,truck 32989,dog 32990,cat 32991,dog 32992,bird 32993,deer 32994,deer 32995,truck 32996,dog 32997,dog 32998,truck 32999,frog 33000,cat 33001,airplane 33002,dog 33003,dog 33004,airplane 33005,bird 33006,dog 33007,airplane 33008,horse 33009,dog 33010,truck 33011,bird 33012,cat 33013,frog 33014,bird 33015,frog 33016,bird 33017,deer 33018,cat 33019,airplane 33020,truck 33021,cat 33022,ship 33023,deer 33024,bird 33025,cat 33026,dog 33027,automobile 33028,horse 33029,airplane 33030,dog 33031,automobile 33032,horse 33033,frog 33034,deer 33035,dog 33036,airplane 33037,dog 33038,frog 33039,cat 33040,frog 33041,automobile 33042,truck 33043,ship 33044,deer 33045,deer 33046,truck 33047,dog 33048,truck 33049,deer 33050,frog 33051,deer 33052,horse 33053,ship 33054,ship 33055,frog 33056,airplane 33057,horse 33058,ship 33059,automobile 33060,dog 33061,dog 33062,frog 33063,deer 33064,deer 33065,ship 33066,truck 33067,cat 33068,frog 33069,deer 33070,cat 33071,airplane 33072,horse 33073,horse 33074,automobile 33075,horse 33076,automobile 33077,truck 33078,deer 33079,frog 33080,automobile 33081,airplane 33082,bird 33083,automobile 33084,cat 33085,bird 33086,dog 33087,airplane 33088,ship 33089,automobile 33090,bird 33091,horse 33092,frog 33093,ship 33094,deer 33095,truck 33096,deer 33097,automobile 33098,airplane 33099,airplane 33100,horse 33101,bird 33102,frog 33103,airplane 33104,dog 33105,truck 33106,horse 33107,cat 33108,cat 33109,dog 33110,deer 33111,deer 33112,frog 33113,automobile 33114,ship 33115,automobile 33116,deer 33117,bird 33118,automobile 33119,truck 33120,cat 33121,deer 33122,dog 33123,horse 33124,airplane 33125,truck 33126,horse 33127,truck 33128,deer 33129,deer 33130,deer 33131,deer 33132,deer 33133,bird 33134,ship 33135,truck 33136,deer 33137,automobile 33138,frog 33139,cat 33140,bird 33141,dog 33142,truck 33143,airplane 33144,ship 33145,bird 33146,dog 33147,airplane 33148,dog 33149,horse 33150,dog 33151,horse 33152,airplane 33153,frog 33154,automobile 33155,dog 33156,truck 33157,airplane 33158,dog 33159,dog 33160,cat 33161,ship 33162,frog 33163,airplane 33164,frog 33165,horse 33166,bird 33167,frog 33168,frog 33169,horse 33170,truck 33171,cat 33172,deer 33173,airplane 33174,deer 33175,horse 33176,deer 33177,ship 33178,deer 33179,deer 33180,bird 33181,deer 33182,truck 33183,frog 33184,frog 33185,horse 33186,automobile 33187,cat 33188,horse 33189,airplane 33190,cat 33191,automobile 33192,cat 33193,deer 33194,ship 33195,ship 33196,airplane 33197,deer 33198,airplane 33199,frog 33200,dog 33201,airplane 33202,automobile 33203,horse 33204,bird 33205,horse 33206,frog 33207,bird 33208,automobile 33209,cat 33210,bird 33211,airplane 33212,frog 33213,cat 33214,automobile 33215,truck 33216,frog 33217,deer 33218,truck 33219,truck 33220,deer 33221,automobile 33222,truck 33223,dog 33224,deer 33225,bird 33226,truck 33227,deer 33228,dog 33229,deer 33230,cat 33231,cat 33232,automobile 33233,cat 33234,cat 33235,deer 33236,bird 33237,airplane 33238,cat 33239,horse 33240,dog 33241,automobile 33242,truck 33243,horse 33244,ship 33245,deer 33246,frog 33247,cat 33248,dog 33249,ship 33250,automobile 33251,dog 33252,bird 33253,automobile 33254,horse 33255,ship 33256,ship 33257,horse 33258,cat 33259,ship 33260,ship 33261,horse 33262,cat 33263,frog 33264,airplane 33265,airplane 33266,deer 33267,frog 33268,deer 33269,automobile 33270,cat 33271,dog 33272,automobile 33273,ship 33274,frog 33275,dog 33276,deer 33277,automobile 33278,truck 33279,frog 33280,deer 33281,cat 33282,deer 33283,ship 33284,bird 33285,horse 33286,horse 33287,airplane 33288,ship 33289,cat 33290,cat 33291,frog 33292,ship 33293,cat 33294,airplane 33295,automobile 33296,deer 33297,horse 33298,truck 33299,horse 33300,ship 33301,deer 33302,deer 33303,frog 33304,deer 33305,ship 33306,bird 33307,bird 33308,cat 33309,bird 33310,frog 33311,frog 33312,cat 33313,deer 33314,horse 33315,truck 33316,dog 33317,horse 33318,airplane 33319,bird 33320,deer 33321,frog 33322,airplane 33323,cat 33324,automobile 33325,cat 33326,frog 33327,automobile 33328,ship 33329,dog 33330,automobile 33331,horse 33332,airplane 33333,cat 33334,horse 33335,cat 33336,deer 33337,ship 33338,airplane 33339,cat 33340,automobile 33341,airplane 33342,ship 33343,truck 33344,horse 33345,cat 33346,truck 33347,automobile 33348,ship 33349,cat 33350,truck 33351,bird 33352,truck 33353,bird 33354,bird 33355,deer 33356,cat 33357,automobile 33358,ship 33359,truck 33360,horse 33361,cat 33362,truck 33363,cat 33364,cat 33365,deer 33366,horse 33367,ship 33368,truck 33369,airplane 33370,frog 33371,deer 33372,horse 33373,dog 33374,dog 33375,deer 33376,dog 33377,frog 33378,deer 33379,automobile 33380,deer 33381,truck 33382,deer 33383,deer 33384,cat 33385,deer 33386,airplane 33387,cat 33388,horse 33389,deer 33390,horse 33391,deer 33392,bird 33393,cat 33394,ship 33395,dog 33396,ship 33397,airplane 33398,cat 33399,automobile 33400,cat 33401,frog 33402,airplane 33403,truck 33404,horse 33405,horse 33406,deer 33407,truck 33408,cat 33409,deer 33410,bird 33411,bird 33412,deer 33413,horse 33414,truck 33415,cat 33416,truck 33417,cat 33418,dog 33419,frog 33420,airplane 33421,dog 33422,bird 33423,cat 33424,cat 33425,airplane 33426,ship 33427,deer 33428,airplane 33429,dog 33430,bird 33431,airplane 33432,truck 33433,dog 33434,dog 33435,cat 33436,ship 33437,horse 33438,automobile 33439,automobile 33440,cat 33441,truck 33442,truck 33443,truck 33444,deer 33445,airplane 33446,deer 33447,bird 33448,automobile 33449,automobile 33450,deer 33451,horse 33452,cat 33453,horse 33454,automobile 33455,cat 33456,ship 33457,cat 33458,horse 33459,frog 33460,ship 33461,airplane 33462,ship 33463,cat 33464,ship 33465,dog 33466,horse 33467,truck 33468,bird 33469,cat 33470,horse 33471,horse 33472,truck 33473,bird 33474,automobile 33475,truck 33476,cat 33477,truck 33478,airplane 33479,airplane 33480,ship 33481,deer 33482,truck 33483,dog 33484,deer 33485,bird 33486,deer 33487,automobile 33488,bird 33489,truck 33490,dog 33491,ship 33492,truck 33493,frog 33494,bird 33495,bird 33496,deer 33497,horse 33498,truck 33499,deer 33500,frog 33501,automobile 33502,airplane 33503,horse 33504,automobile 33505,cat 33506,deer 33507,deer 33508,dog 33509,horse 33510,deer 33511,automobile 33512,cat 33513,horse 33514,automobile 33515,truck 33516,truck 33517,cat 33518,cat 33519,horse 33520,bird 33521,cat 33522,ship 33523,cat 33524,cat 33525,cat 33526,cat 33527,frog 33528,horse 33529,dog 33530,frog 33531,bird 33532,horse 33533,ship 33534,ship 33535,truck 33536,frog 33537,cat 33538,deer 33539,airplane 33540,deer 33541,horse 33542,frog 33543,ship 33544,cat 33545,bird 33546,bird 33547,horse 33548,bird 33549,ship 33550,cat 33551,horse 33552,deer 33553,dog 33554,cat 33555,deer 33556,truck 33557,dog 33558,deer 33559,cat 33560,dog 33561,ship 33562,horse 33563,deer 33564,automobile 33565,bird 33566,deer 33567,cat 33568,bird 33569,airplane 33570,airplane 33571,automobile 33572,frog 33573,deer 33574,deer 33575,horse 33576,horse 33577,frog 33578,horse 33579,airplane 33580,airplane 33581,cat 33582,truck 33583,deer 33584,frog 33585,automobile 33586,cat 33587,bird 33588,cat 33589,horse 33590,deer 33591,airplane 33592,bird 33593,truck 33594,truck 33595,frog 33596,frog 33597,ship 33598,frog 33599,dog 33600,truck 33601,airplane 33602,frog 33603,dog 33604,automobile 33605,automobile 33606,deer 33607,ship 33608,deer 33609,truck 33610,automobile 33611,ship 33612,deer 33613,frog 33614,deer 33615,horse 33616,truck 33617,deer 33618,airplane 33619,frog 33620,ship 33621,ship 33622,horse 33623,deer 33624,horse 33625,frog 33626,dog 33627,horse 33628,bird 33629,frog 33630,horse 33631,frog 33632,dog 33633,deer 33634,horse 33635,dog 33636,automobile 33637,cat 33638,ship 33639,dog 33640,deer 33641,automobile 33642,airplane 33643,cat 33644,horse 33645,truck 33646,ship 33647,truck 33648,deer 33649,bird 33650,dog 33651,dog 33652,horse 33653,horse 33654,ship 33655,truck 33656,automobile 33657,dog 33658,dog 33659,frog 33660,frog 33661,truck 33662,deer 33663,ship 33664,ship 33665,ship 33666,airplane 33667,deer 33668,truck 33669,frog 33670,deer 33671,deer 33672,airplane 33673,automobile 33674,dog 33675,horse 33676,dog 33677,dog 33678,airplane 33679,automobile 33680,truck 33681,dog 33682,automobile 33683,automobile 33684,ship 33685,cat 33686,frog 33687,cat 33688,dog 33689,bird 33690,bird 33691,truck 33692,deer 33693,frog 33694,airplane 33695,dog 33696,frog 33697,cat 33698,frog 33699,airplane 33700,horse 33701,ship 33702,horse 33703,bird 33704,horse 33705,dog 33706,deer 33707,frog 33708,airplane 33709,frog 33710,airplane 33711,airplane 33712,airplane 33713,truck 33714,frog 33715,deer 33716,truck 33717,truck 33718,truck 33719,bird 33720,horse 33721,truck 33722,ship 33723,deer 33724,cat 33725,horse 33726,bird 33727,deer 33728,truck 33729,deer 33730,bird 33731,cat 33732,bird 33733,cat 33734,bird 33735,airplane 33736,cat 33737,frog 33738,automobile 33739,automobile 33740,dog 33741,airplane 33742,airplane 33743,automobile 33744,cat 33745,automobile 33746,horse 33747,automobile 33748,cat 33749,deer 33750,dog 33751,dog 33752,horse 33753,bird 33754,dog 33755,automobile 33756,dog 33757,ship 33758,truck 33759,cat 33760,deer 33761,cat 33762,frog 33763,bird 33764,ship 33765,airplane 33766,horse 33767,cat 33768,bird 33769,frog 33770,dog 33771,truck 33772,ship 33773,frog 33774,truck 33775,cat 33776,deer 33777,airplane 33778,ship 33779,deer 33780,cat 33781,dog 33782,airplane 33783,ship 33784,cat 33785,truck 33786,bird 33787,bird 33788,frog 33789,ship 33790,horse 33791,ship 33792,dog 33793,bird 33794,bird 33795,deer 33796,airplane 33797,dog 33798,ship 33799,airplane 33800,truck 33801,horse 33802,airplane 33803,horse 33804,bird 33805,frog 33806,horse 33807,dog 33808,dog 33809,bird 33810,cat 33811,horse 33812,cat 33813,frog 33814,ship 33815,horse 33816,deer 33817,automobile 33818,cat 33819,deer 33820,cat 33821,ship 33822,cat 33823,frog 33824,deer 33825,horse 33826,airplane 33827,dog 33828,airplane 33829,dog 33830,dog 33831,frog 33832,automobile 33833,airplane 33834,horse 33835,cat 33836,deer 33837,deer 33838,automobile 33839,bird 33840,horse 33841,horse 33842,horse 33843,horse 33844,airplane 33845,airplane 33846,dog 33847,bird 33848,frog 33849,truck 33850,deer 33851,bird 33852,truck 33853,deer 33854,ship 33855,truck 33856,bird 33857,horse 33858,truck 33859,truck 33860,automobile 33861,deer 33862,bird 33863,truck 33864,horse 33865,automobile 33866,dog 33867,ship 33868,automobile 33869,cat 33870,bird 33871,deer 33872,deer 33873,bird 33874,frog 33875,deer 33876,frog 33877,bird 33878,dog 33879,truck 33880,airplane 33881,dog 33882,horse 33883,automobile 33884,airplane 33885,deer 33886,ship 33887,frog 33888,truck 33889,horse 33890,deer 33891,horse 33892,cat 33893,cat 33894,dog 33895,airplane 33896,cat 33897,bird 33898,ship 33899,horse 33900,cat 33901,frog 33902,horse 33903,deer 33904,cat 33905,airplane 33906,airplane 33907,deer 33908,automobile 33909,horse 33910,cat 33911,automobile 33912,ship 33913,deer 33914,cat 33915,dog 33916,dog 33917,cat 33918,truck 33919,deer 33920,automobile 33921,ship 33922,frog 33923,ship 33924,cat 33925,horse 33926,dog 33927,cat 33928,bird 33929,ship 33930,ship 33931,dog 33932,cat 33933,cat 33934,dog 33935,truck 33936,automobile 33937,cat 33938,dog 33939,airplane 33940,horse 33941,deer 33942,cat 33943,horse 33944,dog 33945,deer 33946,frog 33947,deer 33948,horse 33949,cat 33950,dog 33951,airplane 33952,truck 33953,bird 33954,dog 33955,horse 33956,bird 33957,airplane 33958,ship 33959,ship 33960,deer 33961,deer 33962,dog 33963,dog 33964,frog 33965,cat 33966,airplane 33967,truck 33968,cat 33969,dog 33970,bird 33971,cat 33972,ship 33973,frog 33974,deer 33975,ship 33976,dog 33977,bird 33978,airplane 33979,dog 33980,truck 33981,frog 33982,airplane 33983,frog 33984,airplane 33985,cat 33986,bird 33987,automobile 33988,automobile 33989,automobile 33990,ship 33991,dog 33992,cat 33993,dog 33994,automobile 33995,horse 33996,airplane 33997,deer 33998,ship 33999,horse 34000,truck 34001,deer 34002,truck 34003,cat 34004,airplane 34005,frog 34006,airplane 34007,dog 34008,automobile 34009,truck 34010,horse 34011,deer 34012,dog 34013,automobile 34014,cat 34015,deer 34016,horse 34017,airplane 34018,deer 34019,airplane 34020,cat 34021,automobile 34022,truck 34023,ship 34024,dog 34025,bird 34026,ship 34027,dog 34028,airplane 34029,airplane 34030,automobile 34031,horse 34032,truck 34033,dog 34034,truck 34035,ship 34036,deer 34037,automobile 34038,frog 34039,deer 34040,automobile 34041,deer 34042,ship 34043,horse 34044,ship 34045,dog 34046,truck 34047,cat 34048,bird 34049,frog 34050,airplane 34051,horse 34052,bird 34053,truck 34054,deer 34055,horse 34056,deer 34057,truck 34058,cat 34059,horse 34060,airplane 34061,dog 34062,dog 34063,deer 34064,dog 34065,ship 34066,automobile 34067,cat 34068,truck 34069,dog 34070,bird 34071,dog 34072,frog 34073,automobile 34074,airplane 34075,truck 34076,horse 34077,airplane 34078,deer 34079,ship 34080,dog 34081,cat 34082,frog 34083,frog 34084,cat 34085,deer 34086,airplane 34087,frog 34088,horse 34089,truck 34090,frog 34091,horse 34092,bird 34093,automobile 34094,automobile 34095,cat 34096,airplane 34097,dog 34098,truck 34099,airplane 34100,truck 34101,frog 34102,truck 34103,frog 34104,airplane 34105,ship 34106,truck 34107,airplane 34108,truck 34109,bird 34110,bird 34111,deer 34112,bird 34113,truck 34114,deer 34115,truck 34116,cat 34117,horse 34118,cat 34119,horse 34120,deer 34121,ship 34122,truck 34123,cat 34124,frog 34125,truck 34126,cat 34127,airplane 34128,cat 34129,cat 34130,truck 34131,airplane 34132,cat 34133,horse 34134,frog 34135,deer 34136,deer 34137,bird 34138,truck 34139,dog 34140,truck 34141,cat 34142,cat 34143,horse 34144,bird 34145,horse 34146,frog 34147,deer 34148,frog 34149,automobile 34150,frog 34151,cat 34152,airplane 34153,automobile 34154,deer 34155,deer 34156,ship 34157,truck 34158,bird 34159,ship 34160,ship 34161,bird 34162,frog 34163,truck 34164,deer 34165,frog 34166,deer 34167,horse 34168,horse 34169,bird 34170,dog 34171,dog 34172,cat 34173,ship 34174,automobile 34175,deer 34176,truck 34177,cat 34178,bird 34179,frog 34180,cat 34181,frog 34182,ship 34183,dog 34184,dog 34185,dog 34186,cat 34187,bird 34188,airplane 34189,dog 34190,horse 34191,cat 34192,deer 34193,bird 34194,dog 34195,horse 34196,cat 34197,dog 34198,ship 34199,dog 34200,deer 34201,deer 34202,airplane 34203,airplane 34204,dog 34205,deer 34206,truck 34207,truck 34208,deer 34209,cat 34210,frog 34211,airplane 34212,bird 34213,deer 34214,cat 34215,deer 34216,bird 34217,airplane 34218,dog 34219,deer 34220,cat 34221,cat 34222,airplane 34223,deer 34224,deer 34225,horse 34226,automobile 34227,frog 34228,automobile 34229,truck 34230,horse 34231,cat 34232,cat 34233,cat 34234,truck 34235,dog 34236,deer 34237,deer 34238,horse 34239,frog 34240,cat 34241,dog 34242,bird 34243,frog 34244,truck 34245,deer 34246,cat 34247,airplane 34248,deer 34249,truck 34250,deer 34251,automobile 34252,automobile 34253,automobile 34254,ship 34255,horse 34256,cat 34257,ship 34258,airplane 34259,bird 34260,dog 34261,deer 34262,airplane 34263,ship 34264,bird 34265,truck 34266,frog 34267,frog 34268,deer 34269,truck 34270,horse 34271,truck 34272,truck 34273,deer 34274,truck 34275,bird 34276,dog 34277,ship 34278,ship 34279,ship 34280,airplane 34281,ship 34282,horse 34283,airplane 34284,dog 34285,airplane 34286,ship 34287,frog 34288,truck 34289,airplane 34290,airplane 34291,ship 34292,dog 34293,airplane 34294,cat 34295,horse 34296,ship 34297,dog 34298,bird 34299,deer 34300,horse 34301,deer 34302,airplane 34303,deer 34304,automobile 34305,cat 34306,dog 34307,bird 34308,bird 34309,frog 34310,ship 34311,cat 34312,ship 34313,frog 34314,airplane 34315,airplane 34316,bird 34317,horse 34318,automobile 34319,horse 34320,horse 34321,cat 34322,cat 34323,ship 34324,truck 34325,horse 34326,airplane 34327,truck 34328,deer 34329,horse 34330,bird 34331,bird 34332,bird 34333,bird 34334,airplane 34335,deer 34336,dog 34337,dog 34338,dog 34339,ship 34340,deer 34341,bird 34342,deer 34343,horse 34344,horse 34345,truck 34346,deer 34347,deer 34348,truck 34349,horse 34350,cat 34351,dog 34352,bird 34353,truck 34354,automobile 34355,cat 34356,deer 34357,truck 34358,horse 34359,horse 34360,horse 34361,truck 34362,cat 34363,ship 34364,cat 34365,bird 34366,bird 34367,dog 34368,frog 34369,cat 34370,cat 34371,airplane 34372,frog 34373,deer 34374,horse 34375,automobile 34376,truck 34377,airplane 34378,truck 34379,horse 34380,dog 34381,cat 34382,airplane 34383,frog 34384,cat 34385,frog 34386,airplane 34387,airplane 34388,cat 34389,truck 34390,bird 34391,dog 34392,cat 34393,ship 34394,frog 34395,ship 34396,cat 34397,cat 34398,ship 34399,horse 34400,truck 34401,dog 34402,truck 34403,bird 34404,deer 34405,deer 34406,deer 34407,bird 34408,frog 34409,deer 34410,truck 34411,frog 34412,automobile 34413,ship 34414,ship 34415,frog 34416,ship 34417,cat 34418,frog 34419,deer 34420,bird 34421,airplane 34422,deer 34423,deer 34424,ship 34425,deer 34426,truck 34427,horse 34428,truck 34429,bird 34430,frog 34431,deer 34432,ship 34433,horse 34434,cat 34435,truck 34436,truck 34437,horse 34438,ship 34439,bird 34440,deer 34441,ship 34442,deer 34443,frog 34444,ship 34445,airplane 34446,automobile 34447,horse 34448,dog 34449,truck 34450,bird 34451,deer 34452,cat 34453,truck 34454,automobile 34455,bird 34456,bird 34457,ship 34458,frog 34459,bird 34460,bird 34461,cat 34462,horse 34463,dog 34464,bird 34465,cat 34466,dog 34467,airplane 34468,deer 34469,ship 34470,ship 34471,deer 34472,dog 34473,bird 34474,ship 34475,ship 34476,deer 34477,frog 34478,deer 34479,deer 34480,frog 34481,airplane 34482,frog 34483,airplane 34484,cat 34485,cat 34486,dog 34487,frog 34488,airplane 34489,bird 34490,automobile 34491,airplane 34492,truck 34493,ship 34494,bird 34495,bird 34496,cat 34497,cat 34498,deer 34499,bird 34500,airplane 34501,cat 34502,deer 34503,cat 34504,horse 34505,truck 34506,horse 34507,deer 34508,bird 34509,truck 34510,horse 34511,automobile 34512,deer 34513,ship 34514,bird 34515,deer 34516,deer 34517,automobile 34518,frog 34519,automobile 34520,dog 34521,deer 34522,bird 34523,deer 34524,dog 34525,horse 34526,dog 34527,deer 34528,deer 34529,horse 34530,horse 34531,frog 34532,automobile 34533,frog 34534,ship 34535,bird 34536,truck 34537,frog 34538,deer 34539,horse 34540,deer 34541,bird 34542,deer 34543,deer 34544,automobile 34545,truck 34546,bird 34547,cat 34548,truck 34549,horse 34550,frog 34551,automobile 34552,dog 34553,bird 34554,horse 34555,deer 34556,truck 34557,dog 34558,airplane 34559,cat 34560,deer 34561,dog 34562,frog 34563,cat 34564,deer 34565,deer 34566,cat 34567,deer 34568,horse 34569,horse 34570,truck 34571,airplane 34572,dog 34573,bird 34574,deer 34575,cat 34576,deer 34577,ship 34578,frog 34579,cat 34580,horse 34581,deer 34582,dog 34583,airplane 34584,cat 34585,bird 34586,dog 34587,airplane 34588,bird 34589,automobile 34590,deer 34591,cat 34592,frog 34593,frog 34594,airplane 34595,truck 34596,truck 34597,horse 34598,horse 34599,deer 34600,bird 34601,airplane 34602,bird 34603,cat 34604,automobile 34605,automobile 34606,automobile 34607,frog 34608,horse 34609,automobile 34610,cat 34611,bird 34612,airplane 34613,deer 34614,dog 34615,truck 34616,deer 34617,bird 34618,bird 34619,airplane 34620,cat 34621,truck 34622,frog 34623,ship 34624,horse 34625,dog 34626,truck 34627,cat 34628,cat 34629,deer 34630,automobile 34631,frog 34632,automobile 34633,ship 34634,ship 34635,cat 34636,frog 34637,truck 34638,automobile 34639,frog 34640,ship 34641,automobile 34642,deer 34643,deer 34644,cat 34645,horse 34646,frog 34647,ship 34648,cat 34649,dog 34650,horse 34651,horse 34652,cat 34653,airplane 34654,frog 34655,frog 34656,truck 34657,ship 34658,frog 34659,frog 34660,frog 34661,ship 34662,dog 34663,truck 34664,frog 34665,airplane 34666,bird 34667,frog 34668,airplane 34669,bird 34670,horse 34671,truck 34672,horse 34673,truck 34674,cat 34675,truck 34676,truck 34677,cat 34678,frog 34679,ship 34680,bird 34681,frog 34682,cat 34683,horse 34684,bird 34685,cat 34686,horse 34687,dog 34688,dog 34689,ship 34690,horse 34691,airplane 34692,frog 34693,deer 34694,bird 34695,cat 34696,dog 34697,cat 34698,ship 34699,automobile 34700,truck 34701,deer 34702,ship 34703,automobile 34704,deer 34705,truck 34706,deer 34707,frog 34708,dog 34709,horse 34710,truck 34711,horse 34712,bird 34713,cat 34714,bird 34715,deer 34716,bird 34717,cat 34718,deer 34719,cat 34720,cat 34721,bird 34722,frog 34723,truck 34724,automobile 34725,deer 34726,frog 34727,dog 34728,cat 34729,dog 34730,airplane 34731,truck 34732,frog 34733,bird 34734,truck 34735,horse 34736,horse 34737,dog 34738,dog 34739,dog 34740,deer 34741,deer 34742,automobile 34743,dog 34744,horse 34745,frog 34746,airplane 34747,bird 34748,truck 34749,bird 34750,bird 34751,airplane 34752,bird 34753,automobile 34754,dog 34755,dog 34756,cat 34757,deer 34758,cat 34759,ship 34760,ship 34761,automobile 34762,deer 34763,airplane 34764,airplane 34765,truck 34766,deer 34767,horse 34768,ship 34769,truck 34770,ship 34771,bird 34772,cat 34773,deer 34774,bird 34775,bird 34776,automobile 34777,dog 34778,frog 34779,cat 34780,ship 34781,horse 34782,frog 34783,frog 34784,automobile 34785,deer 34786,deer 34787,deer 34788,cat 34789,deer 34790,horse 34791,automobile 34792,frog 34793,truck 34794,deer 34795,truck 34796,truck 34797,frog 34798,horse 34799,cat 34800,deer 34801,horse 34802,horse 34803,airplane 34804,horse 34805,bird 34806,frog 34807,ship 34808,dog 34809,deer 34810,automobile 34811,dog 34812,ship 34813,deer 34814,airplane 34815,bird 34816,frog 34817,bird 34818,cat 34819,airplane 34820,automobile 34821,airplane 34822,automobile 34823,truck 34824,frog 34825,frog 34826,ship 34827,airplane 34828,cat 34829,truck 34830,cat 34831,frog 34832,deer 34833,horse 34834,truck 34835,automobile 34836,airplane 34837,deer 34838,truck 34839,deer 34840,airplane 34841,frog 34842,bird 34843,truck 34844,truck 34845,ship 34846,deer 34847,airplane 34848,frog 34849,deer 34850,frog 34851,airplane 34852,horse 34853,cat 34854,airplane 34855,bird 34856,ship 34857,ship 34858,cat 34859,dog 34860,deer 34861,bird 34862,horse 34863,frog 34864,bird 34865,automobile 34866,dog 34867,cat 34868,cat 34869,truck 34870,airplane 34871,cat 34872,horse 34873,bird 34874,horse 34875,airplane 34876,dog 34877,truck 34878,cat 34879,truck 34880,deer 34881,automobile 34882,frog 34883,frog 34884,frog 34885,cat 34886,cat 34887,airplane 34888,cat 34889,automobile 34890,ship 34891,deer 34892,cat 34893,dog 34894,deer 34895,cat 34896,frog 34897,automobile 34898,dog 34899,truck 34900,cat 34901,cat 34902,airplane 34903,airplane 34904,frog 34905,frog 34906,horse 34907,deer 34908,dog 34909,cat 34910,ship 34911,bird 34912,dog 34913,frog 34914,airplane 34915,truck 34916,airplane 34917,bird 34918,airplane 34919,ship 34920,ship 34921,truck 34922,cat 34923,horse 34924,cat 34925,cat 34926,truck 34927,bird 34928,bird 34929,airplane 34930,deer 34931,dog 34932,dog 34933,cat 34934,bird 34935,frog 34936,automobile 34937,deer 34938,airplane 34939,dog 34940,deer 34941,automobile 34942,deer 34943,ship 34944,bird 34945,truck 34946,deer 34947,airplane 34948,frog 34949,dog 34950,dog 34951,automobile 34952,frog 34953,frog 34954,bird 34955,frog 34956,horse 34957,cat 34958,ship 34959,cat 34960,deer 34961,frog 34962,dog 34963,bird 34964,frog 34965,cat 34966,horse 34967,cat 34968,airplane 34969,dog 34970,cat 34971,cat 34972,ship 34973,deer 34974,frog 34975,frog 34976,automobile 34977,airplane 34978,cat 34979,frog 34980,automobile 34981,horse 34982,truck 34983,automobile 34984,deer 34985,frog 34986,truck 34987,ship 34988,airplane 34989,cat 34990,frog 34991,dog 34992,dog 34993,dog 34994,frog 34995,truck 34996,frog 34997,deer 34998,horse 34999,ship 35000,airplane 35001,truck 35002,airplane 35003,cat 35004,deer 35005,bird 35006,ship 35007,deer 35008,deer 35009,truck 35010,bird 35011,truck 35012,frog 35013,automobile 35014,frog 35015,truck 35016,truck 35017,cat 35018,truck 35019,cat 35020,dog 35021,automobile 35022,dog 35023,cat 35024,ship 35025,cat 35026,frog 35027,truck 35028,horse 35029,deer 35030,frog 35031,deer 35032,truck 35033,ship 35034,automobile 35035,horse 35036,deer 35037,dog 35038,frog 35039,horse 35040,deer 35041,ship 35042,ship 35043,horse 35044,automobile 35045,deer 35046,dog 35047,frog 35048,bird 35049,cat 35050,deer 35051,ship 35052,bird 35053,cat 35054,cat 35055,bird 35056,dog 35057,airplane 35058,horse 35059,truck 35060,automobile 35061,deer 35062,deer 35063,dog 35064,deer 35065,automobile 35066,dog 35067,deer 35068,cat 35069,dog 35070,airplane 35071,truck 35072,automobile 35073,truck 35074,dog 35075,airplane 35076,dog 35077,frog 35078,horse 35079,airplane 35080,deer 35081,cat 35082,airplane 35083,automobile 35084,horse 35085,airplane 35086,automobile 35087,bird 35088,dog 35089,bird 35090,frog 35091,automobile 35092,cat 35093,airplane 35094,deer 35095,bird 35096,ship 35097,deer 35098,bird 35099,horse 35100,deer 35101,horse 35102,automobile 35103,cat 35104,deer 35105,truck 35106,automobile 35107,dog 35108,frog 35109,automobile 35110,frog 35111,truck 35112,airplane 35113,horse 35114,cat 35115,bird 35116,dog 35117,frog 35118,airplane 35119,frog 35120,frog 35121,dog 35122,truck 35123,airplane 35124,cat 35125,bird 35126,bird 35127,ship 35128,airplane 35129,airplane 35130,airplane 35131,deer 35132,dog 35133,automobile 35134,ship 35135,horse 35136,cat 35137,dog 35138,truck 35139,truck 35140,automobile 35141,frog 35142,deer 35143,bird 35144,airplane 35145,truck 35146,cat 35147,frog 35148,dog 35149,cat 35150,cat 35151,bird 35152,deer 35153,horse 35154,truck 35155,airplane 35156,deer 35157,truck 35158,bird 35159,cat 35160,horse 35161,horse 35162,cat 35163,truck 35164,cat 35165,truck 35166,truck 35167,dog 35168,automobile 35169,bird 35170,cat 35171,cat 35172,airplane 35173,automobile 35174,truck 35175,truck 35176,ship 35177,cat 35178,deer 35179,dog 35180,airplane 35181,ship 35182,deer 35183,cat 35184,truck 35185,cat 35186,deer 35187,ship 35188,truck 35189,airplane 35190,frog 35191,truck 35192,deer 35193,cat 35194,cat 35195,dog 35196,cat 35197,cat 35198,cat 35199,bird 35200,cat 35201,horse 35202,cat 35203,cat 35204,airplane 35205,truck 35206,automobile 35207,airplane 35208,cat 35209,truck 35210,frog 35211,deer 35212,truck 35213,dog 35214,bird 35215,automobile 35216,truck 35217,truck 35218,ship 35219,ship 35220,dog 35221,deer 35222,deer 35223,truck 35224,frog 35225,deer 35226,automobile 35227,cat 35228,automobile 35229,deer 35230,automobile 35231,airplane 35232,ship 35233,dog 35234,dog 35235,cat 35236,truck 35237,dog 35238,cat 35239,horse 35240,deer 35241,ship 35242,bird 35243,ship 35244,bird 35245,frog 35246,bird 35247,automobile 35248,frog 35249,cat 35250,automobile 35251,ship 35252,deer 35253,deer 35254,truck 35255,horse 35256,cat 35257,airplane 35258,ship 35259,horse 35260,deer 35261,deer 35262,frog 35263,frog 35264,horse 35265,deer 35266,dog 35267,frog 35268,deer 35269,truck 35270,bird 35271,deer 35272,cat 35273,ship 35274,cat 35275,horse 35276,cat 35277,truck 35278,horse 35279,airplane 35280,deer 35281,frog 35282,automobile 35283,cat 35284,bird 35285,cat 35286,automobile 35287,cat 35288,cat 35289,frog 35290,deer 35291,cat 35292,truck 35293,bird 35294,automobile 35295,truck 35296,cat 35297,cat 35298,deer 35299,horse 35300,truck 35301,horse 35302,airplane 35303,deer 35304,cat 35305,airplane 35306,dog 35307,frog 35308,horse 35309,deer 35310,airplane 35311,cat 35312,bird 35313,deer 35314,frog 35315,dog 35316,cat 35317,truck 35318,frog 35319,ship 35320,truck 35321,cat 35322,frog 35323,bird 35324,truck 35325,deer 35326,truck 35327,truck 35328,horse 35329,deer 35330,frog 35331,dog 35332,deer 35333,dog 35334,ship 35335,deer 35336,ship 35337,horse 35338,dog 35339,cat 35340,bird 35341,frog 35342,automobile 35343,dog 35344,deer 35345,dog 35346,bird 35347,automobile 35348,deer 35349,truck 35350,bird 35351,bird 35352,bird 35353,deer 35354,truck 35355,bird 35356,airplane 35357,bird 35358,airplane 35359,airplane 35360,truck 35361,cat 35362,deer 35363,airplane 35364,dog 35365,bird 35366,frog 35367,airplane 35368,cat 35369,cat 35370,horse 35371,dog 35372,cat 35373,deer 35374,cat 35375,bird 35376,airplane 35377,bird 35378,dog 35379,truck 35380,truck 35381,deer 35382,ship 35383,frog 35384,truck 35385,ship 35386,airplane 35387,bird 35388,deer 35389,truck 35390,cat 35391,dog 35392,dog 35393,truck 35394,ship 35395,cat 35396,truck 35397,automobile 35398,deer 35399,deer 35400,automobile 35401,truck 35402,truck 35403,automobile 35404,horse 35405,cat 35406,frog 35407,deer 35408,deer 35409,horse 35410,horse 35411,cat 35412,automobile 35413,dog 35414,truck 35415,cat 35416,bird 35417,truck 35418,automobile 35419,frog 35420,deer 35421,horse 35422,cat 35423,cat 35424,frog 35425,dog 35426,horse 35427,cat 35428,automobile 35429,dog 35430,automobile 35431,deer 35432,truck 35433,ship 35434,automobile 35435,cat 35436,ship 35437,truck 35438,deer 35439,airplane 35440,truck 35441,airplane 35442,dog 35443,truck 35444,frog 35445,deer 35446,cat 35447,dog 35448,bird 35449,bird 35450,frog 35451,airplane 35452,deer 35453,horse 35454,bird 35455,cat 35456,ship 35457,ship 35458,truck 35459,horse 35460,deer 35461,ship 35462,truck 35463,horse 35464,truck 35465,horse 35466,deer 35467,horse 35468,horse 35469,automobile 35470,bird 35471,deer 35472,deer 35473,automobile 35474,deer 35475,frog 35476,frog 35477,ship 35478,truck 35479,deer 35480,bird 35481,cat 35482,bird 35483,frog 35484,truck 35485,airplane 35486,deer 35487,automobile 35488,truck 35489,airplane 35490,truck 35491,ship 35492,dog 35493,bird 35494,ship 35495,truck 35496,deer 35497,frog 35498,cat 35499,dog 35500,bird 35501,truck 35502,truck 35503,truck 35504,automobile 35505,frog 35506,dog 35507,airplane 35508,automobile 35509,frog 35510,frog 35511,bird 35512,ship 35513,ship 35514,airplane 35515,ship 35516,cat 35517,airplane 35518,cat 35519,cat 35520,dog 35521,automobile 35522,deer 35523,ship 35524,airplane 35525,frog 35526,bird 35527,truck 35528,ship 35529,bird 35530,cat 35531,airplane 35532,deer 35533,deer 35534,automobile 35535,airplane 35536,deer 35537,airplane 35538,frog 35539,cat 35540,dog 35541,ship 35542,dog 35543,automobile 35544,airplane 35545,cat 35546,truck 35547,dog 35548,cat 35549,ship 35550,frog 35551,airplane 35552,ship 35553,dog 35554,bird 35555,automobile 35556,truck 35557,truck 35558,ship 35559,truck 35560,truck 35561,deer 35562,cat 35563,airplane 35564,horse 35565,deer 35566,frog 35567,horse 35568,horse 35569,deer 35570,ship 35571,horse 35572,bird 35573,truck 35574,cat 35575,truck 35576,airplane 35577,dog 35578,horse 35579,bird 35580,automobile 35581,dog 35582,ship 35583,dog 35584,cat 35585,automobile 35586,truck 35587,cat 35588,truck 35589,truck 35590,truck 35591,ship 35592,bird 35593,dog 35594,airplane 35595,cat 35596,ship 35597,horse 35598,dog 35599,airplane 35600,ship 35601,airplane 35602,automobile 35603,bird 35604,horse 35605,frog 35606,ship 35607,airplane 35608,airplane 35609,airplane 35610,truck 35611,airplane 35612,cat 35613,airplane 35614,dog 35615,automobile 35616,cat 35617,dog 35618,truck 35619,horse 35620,ship 35621,cat 35622,horse 35623,truck 35624,airplane 35625,deer 35626,bird 35627,airplane 35628,ship 35629,dog 35630,cat 35631,frog 35632,ship 35633,deer 35634,horse 35635,horse 35636,bird 35637,deer 35638,cat 35639,dog 35640,automobile 35641,frog 35642,deer 35643,ship 35644,horse 35645,bird 35646,dog 35647,airplane 35648,automobile 35649,dog 35650,horse 35651,deer 35652,deer 35653,truck 35654,frog 35655,horse 35656,automobile 35657,dog 35658,cat 35659,dog 35660,automobile 35661,ship 35662,deer 35663,frog 35664,dog 35665,deer 35666,dog 35667,dog 35668,automobile 35669,dog 35670,cat 35671,airplane 35672,horse 35673,truck 35674,frog 35675,truck 35676,ship 35677,deer 35678,horse 35679,automobile 35680,automobile 35681,truck 35682,truck 35683,deer 35684,bird 35685,airplane 35686,bird 35687,deer 35688,truck 35689,airplane 35690,horse 35691,cat 35692,frog 35693,automobile 35694,ship 35695,frog 35696,automobile 35697,horse 35698,bird 35699,dog 35700,cat 35701,deer 35702,dog 35703,horse 35704,frog 35705,cat 35706,deer 35707,cat 35708,frog 35709,truck 35710,dog 35711,deer 35712,dog 35713,truck 35714,truck 35715,dog 35716,frog 35717,ship 35718,cat 35719,dog 35720,deer 35721,horse 35722,deer 35723,cat 35724,frog 35725,deer 35726,truck 35727,frog 35728,truck 35729,truck 35730,deer 35731,horse 35732,cat 35733,dog 35734,deer 35735,horse 35736,deer 35737,automobile 35738,airplane 35739,bird 35740,cat 35741,deer 35742,truck 35743,frog 35744,dog 35745,truck 35746,airplane 35747,deer 35748,deer 35749,bird 35750,airplane 35751,horse 35752,bird 35753,horse 35754,airplane 35755,deer 35756,frog 35757,frog 35758,bird 35759,cat 35760,truck 35761,cat 35762,truck 35763,truck 35764,automobile 35765,frog 35766,ship 35767,cat 35768,horse 35769,cat 35770,deer 35771,deer 35772,ship 35773,deer 35774,truck 35775,automobile 35776,dog 35777,cat 35778,dog 35779,horse 35780,bird 35781,deer 35782,bird 35783,automobile 35784,truck 35785,ship 35786,bird 35787,ship 35788,horse 35789,ship 35790,cat 35791,frog 35792,dog 35793,dog 35794,deer 35795,deer 35796,frog 35797,horse 35798,cat 35799,frog 35800,deer 35801,deer 35802,truck 35803,ship 35804,frog 35805,airplane 35806,automobile 35807,frog 35808,deer 35809,cat 35810,truck 35811,truck 35812,cat 35813,truck 35814,airplane 35815,automobile 35816,dog 35817,cat 35818,automobile 35819,automobile 35820,frog 35821,frog 35822,cat 35823,bird 35824,frog 35825,automobile 35826,deer 35827,frog 35828,bird 35829,ship 35830,truck 35831,bird 35832,frog 35833,frog 35834,truck 35835,dog 35836,ship 35837,horse 35838,cat 35839,frog 35840,cat 35841,deer 35842,horse 35843,ship 35844,deer 35845,cat 35846,cat 35847,frog 35848,deer 35849,frog 35850,automobile 35851,truck 35852,truck 35853,frog 35854,bird 35855,truck 35856,ship 35857,bird 35858,automobile 35859,dog 35860,cat 35861,frog 35862,truck 35863,ship 35864,cat 35865,dog 35866,horse 35867,ship 35868,dog 35869,dog 35870,dog 35871,cat 35872,automobile 35873,horse 35874,bird 35875,ship 35876,truck 35877,frog 35878,dog 35879,ship 35880,dog 35881,frog 35882,truck 35883,ship 35884,dog 35885,deer 35886,deer 35887,automobile 35888,airplane 35889,automobile 35890,truck 35891,dog 35892,frog 35893,dog 35894,cat 35895,frog 35896,deer 35897,horse 35898,ship 35899,deer 35900,frog 35901,truck 35902,cat 35903,truck 35904,horse 35905,frog 35906,ship 35907,cat 35908,dog 35909,deer 35910,dog 35911,automobile 35912,truck 35913,cat 35914,automobile 35915,automobile 35916,horse 35917,automobile 35918,bird 35919,deer 35920,deer 35921,deer 35922,dog 35923,bird 35924,airplane 35925,frog 35926,ship 35927,deer 35928,deer 35929,truck 35930,truck 35931,cat 35932,deer 35933,airplane 35934,frog 35935,automobile 35936,automobile 35937,automobile 35938,airplane 35939,ship 35940,automobile 35941,truck 35942,bird 35943,automobile 35944,horse 35945,truck 35946,airplane 35947,ship 35948,automobile 35949,dog 35950,bird 35951,truck 35952,automobile 35953,bird 35954,dog 35955,deer 35956,horse 35957,dog 35958,cat 35959,dog 35960,horse 35961,ship 35962,truck 35963,ship 35964,ship 35965,horse 35966,ship 35967,bird 35968,dog 35969,frog 35970,deer 35971,automobile 35972,ship 35973,cat 35974,frog 35975,cat 35976,frog 35977,ship 35978,ship 35979,bird 35980,deer 35981,frog 35982,horse 35983,frog 35984,deer 35985,bird 35986,automobile 35987,ship 35988,truck 35989,deer 35990,dog 35991,ship 35992,automobile 35993,horse 35994,deer 35995,frog 35996,deer 35997,dog 35998,cat 35999,airplane 36000,deer 36001,bird 36002,frog 36003,dog 36004,frog 36005,automobile 36006,truck 36007,cat 36008,dog 36009,ship 36010,truck 36011,deer 36012,deer 36013,frog 36014,cat 36015,bird 36016,bird 36017,horse 36018,deer 36019,dog 36020,cat 36021,cat 36022,airplane 36023,deer 36024,airplane 36025,cat 36026,frog 36027,deer 36028,truck 36029,horse 36030,truck 36031,truck 36032,frog 36033,frog 36034,deer 36035,horse 36036,dog 36037,deer 36038,dog 36039,horse 36040,bird 36041,frog 36042,deer 36043,deer 36044,deer 36045,airplane 36046,truck 36047,ship 36048,horse 36049,deer 36050,cat 36051,bird 36052,ship 36053,ship 36054,airplane 36055,dog 36056,airplane 36057,automobile 36058,automobile 36059,cat 36060,airplane 36061,cat 36062,dog 36063,truck 36064,cat 36065,bird 36066,ship 36067,truck 36068,frog 36069,cat 36070,horse 36071,cat 36072,truck 36073,dog 36074,deer 36075,horse 36076,ship 36077,horse 36078,deer 36079,frog 36080,airplane 36081,frog 36082,ship 36083,truck 36084,deer 36085,frog 36086,cat 36087,horse 36088,bird 36089,ship 36090,frog 36091,dog 36092,bird 36093,cat 36094,bird 36095,horse 36096,bird 36097,bird 36098,ship 36099,ship 36100,cat 36101,ship 36102,airplane 36103,bird 36104,horse 36105,deer 36106,automobile 36107,cat 36108,bird 36109,truck 36110,automobile 36111,truck 36112,deer 36113,bird 36114,cat 36115,dog 36116,automobile 36117,frog 36118,bird 36119,ship 36120,truck 36121,deer 36122,bird 36123,truck 36124,deer 36125,dog 36126,horse 36127,cat 36128,truck 36129,cat 36130,deer 36131,ship 36132,cat 36133,deer 36134,bird 36135,bird 36136,ship 36137,deer 36138,frog 36139,airplane 36140,frog 36141,frog 36142,horse 36143,dog 36144,cat 36145,cat 36146,horse 36147,dog 36148,bird 36149,frog 36150,truck 36151,automobile 36152,bird 36153,truck 36154,cat 36155,airplane 36156,automobile 36157,frog 36158,deer 36159,horse 36160,cat 36161,automobile 36162,automobile 36163,bird 36164,airplane 36165,airplane 36166,ship 36167,bird 36168,deer 36169,deer 36170,deer 36171,dog 36172,ship 36173,frog 36174,ship 36175,airplane 36176,deer 36177,dog 36178,cat 36179,deer 36180,dog 36181,deer 36182,ship 36183,ship 36184,bird 36185,cat 36186,deer 36187,truck 36188,bird 36189,cat 36190,airplane 36191,frog 36192,cat 36193,dog 36194,horse 36195,airplane 36196,truck 36197,truck 36198,truck 36199,frog 36200,frog 36201,deer 36202,deer 36203,automobile 36204,truck 36205,truck 36206,frog 36207,airplane 36208,deer 36209,horse 36210,cat 36211,bird 36212,deer 36213,dog 36214,automobile 36215,ship 36216,ship 36217,bird 36218,ship 36219,automobile 36220,truck 36221,cat 36222,horse 36223,airplane 36224,deer 36225,cat 36226,automobile 36227,airplane 36228,dog 36229,bird 36230,automobile 36231,horse 36232,bird 36233,airplane 36234,deer 36235,ship 36236,horse 36237,automobile 36238,airplane 36239,frog 36240,bird 36241,frog 36242,horse 36243,truck 36244,deer 36245,bird 36246,airplane 36247,dog 36248,frog 36249,bird 36250,dog 36251,ship 36252,automobile 36253,horse 36254,frog 36255,deer 36256,frog 36257,dog 36258,truck 36259,deer 36260,cat 36261,horse 36262,frog 36263,truck 36264,airplane 36265,deer 36266,deer 36267,truck 36268,truck 36269,cat 36270,cat 36271,frog 36272,bird 36273,airplane 36274,automobile 36275,ship 36276,deer 36277,automobile 36278,cat 36279,horse 36280,cat 36281,horse 36282,frog 36283,automobile 36284,deer 36285,dog 36286,deer 36287,dog 36288,frog 36289,truck 36290,horse 36291,ship 36292,dog 36293,horse 36294,ship 36295,automobile 36296,frog 36297,truck 36298,airplane 36299,automobile 36300,cat 36301,deer 36302,deer 36303,deer 36304,ship 36305,horse 36306,cat 36307,horse 36308,cat 36309,automobile 36310,bird 36311,ship 36312,truck 36313,airplane 36314,deer 36315,frog 36316,ship 36317,cat 36318,cat 36319,automobile 36320,bird 36321,dog 36322,bird 36323,cat 36324,cat 36325,horse 36326,automobile 36327,airplane 36328,frog 36329,frog 36330,horse 36331,truck 36332,horse 36333,automobile 36334,frog 36335,truck 36336,airplane 36337,automobile 36338,frog 36339,airplane 36340,cat 36341,cat 36342,bird 36343,dog 36344,cat 36345,dog 36346,deer 36347,frog 36348,frog 36349,deer 36350,truck 36351,dog 36352,dog 36353,automobile 36354,dog 36355,cat 36356,dog 36357,airplane 36358,dog 36359,truck 36360,automobile 36361,horse 36362,cat 36363,horse 36364,airplane 36365,horse 36366,horse 36367,dog 36368,ship 36369,dog 36370,cat 36371,automobile 36372,cat 36373,deer 36374,cat 36375,truck 36376,truck 36377,horse 36378,dog 36379,airplane 36380,automobile 36381,airplane 36382,deer 36383,truck 36384,horse 36385,deer 36386,deer 36387,deer 36388,horse 36389,cat 36390,dog 36391,frog 36392,deer 36393,frog 36394,dog 36395,bird 36396,cat 36397,bird 36398,frog 36399,dog 36400,truck 36401,bird 36402,airplane 36403,ship 36404,truck 36405,bird 36406,ship 36407,dog 36408,airplane 36409,ship 36410,deer 36411,airplane 36412,horse 36413,truck 36414,cat 36415,dog 36416,deer 36417,ship 36418,truck 36419,cat 36420,deer 36421,airplane 36422,horse 36423,frog 36424,ship 36425,truck 36426,deer 36427,horse 36428,deer 36429,truck 36430,cat 36431,frog 36432,frog 36433,ship 36434,frog 36435,deer 36436,ship 36437,horse 36438,frog 36439,ship 36440,truck 36441,airplane 36442,truck 36443,deer 36444,bird 36445,bird 36446,cat 36447,dog 36448,frog 36449,deer 36450,frog 36451,frog 36452,deer 36453,frog 36454,frog 36455,cat 36456,frog 36457,airplane 36458,airplane 36459,horse 36460,cat 36461,horse 36462,deer 36463,deer 36464,airplane 36465,ship 36466,dog 36467,horse 36468,truck 36469,airplane 36470,bird 36471,automobile 36472,cat 36473,cat 36474,dog 36475,ship 36476,frog 36477,cat 36478,cat 36479,frog 36480,horse 36481,automobile 36482,bird 36483,frog 36484,cat 36485,ship 36486,deer 36487,bird 36488,truck 36489,truck 36490,deer 36491,horse 36492,horse 36493,ship 36494,airplane 36495,cat 36496,cat 36497,bird 36498,truck 36499,frog 36500,bird 36501,deer 36502,deer 36503,deer 36504,airplane 36505,cat 36506,automobile 36507,deer 36508,truck 36509,truck 36510,bird 36511,deer 36512,bird 36513,bird 36514,automobile 36515,bird 36516,truck 36517,cat 36518,deer 36519,horse 36520,truck 36521,truck 36522,frog 36523,horse 36524,deer 36525,truck 36526,ship 36527,truck 36528,deer 36529,deer 36530,horse 36531,deer 36532,frog 36533,dog 36534,bird 36535,truck 36536,cat 36537,bird 36538,deer 36539,deer 36540,deer 36541,truck 36542,deer 36543,frog 36544,truck 36545,deer 36546,horse 36547,automobile 36548,horse 36549,deer 36550,cat 36551,frog 36552,bird 36553,automobile 36554,frog 36555,dog 36556,deer 36557,ship 36558,ship 36559,frog 36560,horse 36561,airplane 36562,airplane 36563,horse 36564,cat 36565,airplane 36566,dog 36567,deer 36568,truck 36569,bird 36570,dog 36571,bird 36572,deer 36573,horse 36574,airplane 36575,bird 36576,deer 36577,dog 36578,deer 36579,automobile 36580,ship 36581,bird 36582,truck 36583,ship 36584,truck 36585,deer 36586,deer 36587,truck 36588,airplane 36589,truck 36590,ship 36591,dog 36592,bird 36593,dog 36594,frog 36595,horse 36596,deer 36597,automobile 36598,horse 36599,dog 36600,dog 36601,bird 36602,automobile 36603,ship 36604,bird 36605,cat 36606,truck 36607,ship 36608,deer 36609,deer 36610,airplane 36611,frog 36612,airplane 36613,automobile 36614,dog 36615,horse 36616,ship 36617,cat 36618,cat 36619,airplane 36620,horse 36621,deer 36622,cat 36623,airplane 36624,ship 36625,cat 36626,cat 36627,cat 36628,dog 36629,dog 36630,truck 36631,automobile 36632,bird 36633,truck 36634,truck 36635,deer 36636,automobile 36637,dog 36638,airplane 36639,deer 36640,dog 36641,frog 36642,truck 36643,deer 36644,frog 36645,dog 36646,bird 36647,cat 36648,horse 36649,deer 36650,automobile 36651,deer 36652,cat 36653,truck 36654,deer 36655,automobile 36656,automobile 36657,frog 36658,ship 36659,truck 36660,deer 36661,deer 36662,deer 36663,truck 36664,ship 36665,deer 36666,horse 36667,deer 36668,deer 36669,truck 36670,airplane 36671,truck 36672,deer 36673,deer 36674,frog 36675,frog 36676,cat 36677,cat 36678,truck 36679,dog 36680,airplane 36681,horse 36682,deer 36683,airplane 36684,bird 36685,truck 36686,cat 36687,bird 36688,ship 36689,horse 36690,frog 36691,deer 36692,frog 36693,dog 36694,bird 36695,dog 36696,ship 36697,bird 36698,ship 36699,bird 36700,dog 36701,airplane 36702,cat 36703,dog 36704,ship 36705,ship 36706,cat 36707,ship 36708,horse 36709,truck 36710,cat 36711,dog 36712,automobile 36713,frog 36714,frog 36715,frog 36716,horse 36717,horse 36718,dog 36719,bird 36720,frog 36721,horse 36722,cat 36723,frog 36724,automobile 36725,ship 36726,dog 36727,horse 36728,frog 36729,deer 36730,truck 36731,horse 36732,truck 36733,cat 36734,bird 36735,frog 36736,airplane 36737,ship 36738,truck 36739,ship 36740,dog 36741,frog 36742,airplane 36743,frog 36744,airplane 36745,horse 36746,truck 36747,airplane 36748,airplane 36749,cat 36750,bird 36751,frog 36752,truck 36753,airplane 36754,dog 36755,truck 36756,deer 36757,bird 36758,bird 36759,frog 36760,frog 36761,deer 36762,bird 36763,horse 36764,horse 36765,dog 36766,deer 36767,deer 36768,cat 36769,truck 36770,deer 36771,horse 36772,truck 36773,frog 36774,automobile 36775,deer 36776,bird 36777,deer 36778,frog 36779,ship 36780,dog 36781,frog 36782,ship 36783,frog 36784,airplane 36785,horse 36786,automobile 36787,truck 36788,ship 36789,cat 36790,frog 36791,airplane 36792,dog 36793,dog 36794,airplane 36795,deer 36796,truck 36797,frog 36798,bird 36799,truck 36800,deer 36801,horse 36802,truck 36803,truck 36804,dog 36805,cat 36806,airplane 36807,bird 36808,horse 36809,frog 36810,horse 36811,truck 36812,cat 36813,dog 36814,deer 36815,ship 36816,horse 36817,bird 36818,dog 36819,cat 36820,truck 36821,airplane 36822,bird 36823,airplane 36824,frog 36825,cat 36826,dog 36827,horse 36828,cat 36829,ship 36830,cat 36831,automobile 36832,truck 36833,automobile 36834,ship 36835,automobile 36836,dog 36837,dog 36838,bird 36839,automobile 36840,horse 36841,frog 36842,truck 36843,horse 36844,dog 36845,frog 36846,dog 36847,ship 36848,truck 36849,frog 36850,truck 36851,frog 36852,truck 36853,deer 36854,frog 36855,deer 36856,dog 36857,airplane 36858,frog 36859,dog 36860,frog 36861,deer 36862,bird 36863,automobile 36864,dog 36865,deer 36866,cat 36867,deer 36868,automobile 36869,deer 36870,dog 36871,dog 36872,bird 36873,frog 36874,deer 36875,deer 36876,deer 36877,cat 36878,frog 36879,cat 36880,bird 36881,ship 36882,frog 36883,frog 36884,airplane 36885,deer 36886,truck 36887,airplane 36888,deer 36889,frog 36890,ship 36891,airplane 36892,deer 36893,cat 36894,truck 36895,dog 36896,truck 36897,truck 36898,automobile 36899,deer 36900,truck 36901,airplane 36902,frog 36903,truck 36904,truck 36905,truck 36906,airplane 36907,cat 36908,horse 36909,frog 36910,frog 36911,frog 36912,dog 36913,cat 36914,ship 36915,dog 36916,deer 36917,cat 36918,deer 36919,truck 36920,ship 36921,ship 36922,deer 36923,airplane 36924,airplane 36925,horse 36926,automobile 36927,frog 36928,deer 36929,frog 36930,truck 36931,horse 36932,dog 36933,bird 36934,horse 36935,cat 36936,cat 36937,frog 36938,frog 36939,airplane 36940,deer 36941,frog 36942,cat 36943,frog 36944,cat 36945,cat 36946,deer 36947,bird 36948,deer 36949,bird 36950,ship 36951,ship 36952,deer 36953,frog 36954,bird 36955,dog 36956,deer 36957,deer 36958,bird 36959,dog 36960,cat 36961,deer 36962,cat 36963,dog 36964,horse 36965,dog 36966,automobile 36967,ship 36968,dog 36969,deer 36970,bird 36971,horse 36972,cat 36973,automobile 36974,truck 36975,horse 36976,frog 36977,horse 36978,deer 36979,automobile 36980,ship 36981,airplane 36982,automobile 36983,bird 36984,truck 36985,airplane 36986,truck 36987,dog 36988,bird 36989,frog 36990,frog 36991,cat 36992,cat 36993,automobile 36994,dog 36995,airplane 36996,frog 36997,ship 36998,ship 36999,automobile 37000,airplane 37001,dog 37002,truck 37003,deer 37004,cat 37005,deer 37006,cat 37007,bird 37008,frog 37009,frog 37010,bird 37011,bird 37012,frog 37013,automobile 37014,cat 37015,cat 37016,ship 37017,ship 37018,airplane 37019,automobile 37020,dog 37021,cat 37022,bird 37023,truck 37024,airplane 37025,automobile 37026,frog 37027,automobile 37028,truck 37029,automobile 37030,dog 37031,automobile 37032,truck 37033,frog 37034,dog 37035,deer 37036,frog 37037,truck 37038,frog 37039,deer 37040,frog 37041,frog 37042,truck 37043,airplane 37044,deer 37045,airplane 37046,automobile 37047,airplane 37048,deer 37049,cat 37050,cat 37051,cat 37052,ship 37053,dog 37054,truck 37055,deer 37056,cat 37057,dog 37058,dog 37059,ship 37060,truck 37061,deer 37062,horse 37063,cat 37064,horse 37065,deer 37066,automobile 37067,deer 37068,cat 37069,frog 37070,deer 37071,deer 37072,cat 37073,truck 37074,horse 37075,cat 37076,frog 37077,frog 37078,ship 37079,airplane 37080,truck 37081,horse 37082,bird 37083,truck 37084,deer 37085,ship 37086,horse 37087,cat 37088,ship 37089,dog 37090,cat 37091,ship 37092,airplane 37093,bird 37094,airplane 37095,horse 37096,airplane 37097,frog 37098,cat 37099,truck 37100,truck 37101,horse 37102,deer 37103,cat 37104,horse 37105,deer 37106,dog 37107,dog 37108,ship 37109,automobile 37110,deer 37111,automobile 37112,automobile 37113,ship 37114,frog 37115,ship 37116,automobile 37117,dog 37118,cat 37119,dog 37120,horse 37121,bird 37122,dog 37123,frog 37124,horse 37125,deer 37126,deer 37127,truck 37128,deer 37129,dog 37130,frog 37131,bird 37132,horse 37133,dog 37134,cat 37135,ship 37136,cat 37137,dog 37138,cat 37139,horse 37140,dog 37141,frog 37142,bird 37143,dog 37144,deer 37145,deer 37146,truck 37147,automobile 37148,cat 37149,airplane 37150,bird 37151,frog 37152,frog 37153,deer 37154,truck 37155,cat 37156,bird 37157,deer 37158,truck 37159,cat 37160,automobile 37161,truck 37162,deer 37163,deer 37164,automobile 37165,cat 37166,ship 37167,cat 37168,ship 37169,horse 37170,automobile 37171,cat 37172,bird 37173,dog 37174,airplane 37175,automobile 37176,airplane 37177,airplane 37178,airplane 37179,cat 37180,deer 37181,deer 37182,ship 37183,bird 37184,bird 37185,automobile 37186,airplane 37187,deer 37188,deer 37189,automobile 37190,deer 37191,deer 37192,frog 37193,airplane 37194,ship 37195,ship 37196,deer 37197,deer 37198,deer 37199,cat 37200,deer 37201,cat 37202,automobile 37203,dog 37204,dog 37205,truck 37206,bird 37207,deer 37208,deer 37209,frog 37210,truck 37211,dog 37212,dog 37213,dog 37214,dog 37215,frog 37216,ship 37217,ship 37218,horse 37219,deer 37220,automobile 37221,ship 37222,cat 37223,horse 37224,ship 37225,dog 37226,deer 37227,dog 37228,deer 37229,frog 37230,dog 37231,truck 37232,dog 37233,frog 37234,automobile 37235,automobile 37236,deer 37237,deer 37238,deer 37239,frog 37240,truck 37241,frog 37242,frog 37243,bird 37244,bird 37245,ship 37246,truck 37247,automobile 37248,bird 37249,frog 37250,bird 37251,dog 37252,deer 37253,ship 37254,horse 37255,deer 37256,cat 37257,dog 37258,deer 37259,deer 37260,horse 37261,frog 37262,truck 37263,bird 37264,deer 37265,bird 37266,bird 37267,automobile 37268,cat 37269,cat 37270,cat 37271,truck 37272,dog 37273,airplane 37274,deer 37275,cat 37276,airplane 37277,airplane 37278,truck 37279,deer 37280,frog 37281,frog 37282,truck 37283,truck 37284,dog 37285,frog 37286,frog 37287,frog 37288,deer 37289,cat 37290,bird 37291,deer 37292,bird 37293,airplane 37294,deer 37295,automobile 37296,deer 37297,dog 37298,airplane 37299,dog 37300,deer 37301,bird 37302,bird 37303,dog 37304,automobile 37305,deer 37306,bird 37307,frog 37308,automobile 37309,airplane 37310,cat 37311,deer 37312,automobile 37313,cat 37314,frog 37315,cat 37316,deer 37317,deer 37318,truck 37319,frog 37320,deer 37321,cat 37322,cat 37323,deer 37324,ship 37325,horse 37326,dog 37327,bird 37328,cat 37329,automobile 37330,bird 37331,dog 37332,frog 37333,bird 37334,cat 37335,cat 37336,frog 37337,frog 37338,bird 37339,bird 37340,bird 37341,ship 37342,ship 37343,frog 37344,truck 37345,deer 37346,airplane 37347,bird 37348,frog 37349,horse 37350,cat 37351,frog 37352,deer 37353,horse 37354,truck 37355,cat 37356,airplane 37357,automobile 37358,horse 37359,airplane 37360,deer 37361,frog 37362,frog 37363,deer 37364,horse 37365,frog 37366,cat 37367,frog 37368,cat 37369,truck 37370,frog 37371,horse 37372,horse 37373,airplane 37374,frog 37375,frog 37376,truck 37377,bird 37378,frog 37379,deer 37380,ship 37381,dog 37382,deer 37383,truck 37384,cat 37385,ship 37386,truck 37387,dog 37388,bird 37389,frog 37390,horse 37391,deer 37392,airplane 37393,frog 37394,deer 37395,truck 37396,frog 37397,dog 37398,ship 37399,dog 37400,cat 37401,dog 37402,frog 37403,deer 37404,frog 37405,airplane 37406,frog 37407,cat 37408,dog 37409,ship 37410,automobile 37411,horse 37412,dog 37413,airplane 37414,cat 37415,truck 37416,deer 37417,automobile 37418,bird 37419,ship 37420,automobile 37421,ship 37422,frog 37423,truck 37424,bird 37425,truck 37426,dog 37427,deer 37428,cat 37429,dog 37430,cat 37431,deer 37432,cat 37433,truck 37434,deer 37435,frog 37436,truck 37437,bird 37438,truck 37439,cat 37440,deer 37441,horse 37442,ship 37443,horse 37444,dog 37445,horse 37446,truck 37447,bird 37448,ship 37449,dog 37450,truck 37451,dog 37452,cat 37453,airplane 37454,truck 37455,truck 37456,deer 37457,airplane 37458,airplane 37459,horse 37460,truck 37461,dog 37462,truck 37463,airplane 37464,cat 37465,automobile 37466,cat 37467,ship 37468,automobile 37469,deer 37470,dog 37471,cat 37472,cat 37473,frog 37474,cat 37475,deer 37476,deer 37477,bird 37478,automobile 37479,airplane 37480,dog 37481,ship 37482,dog 37483,frog 37484,cat 37485,frog 37486,airplane 37487,airplane 37488,deer 37489,deer 37490,deer 37491,airplane 37492,frog 37493,truck 37494,deer 37495,cat 37496,deer 37497,truck 37498,deer 37499,truck 37500,truck 37501,bird 37502,ship 37503,frog 37504,cat 37505,bird 37506,horse 37507,automobile 37508,frog 37509,horse 37510,dog 37511,ship 37512,bird 37513,truck 37514,truck 37515,frog 37516,deer 37517,cat 37518,horse 37519,truck 37520,horse 37521,deer 37522,truck 37523,cat 37524,deer 37525,dog 37526,frog 37527,horse 37528,truck 37529,horse 37530,frog 37531,truck 37532,bird 37533,dog 37534,dog 37535,ship 37536,frog 37537,horse 37538,airplane 37539,bird 37540,deer 37541,horse 37542,deer 37543,automobile 37544,horse 37545,deer 37546,automobile 37547,airplane 37548,horse 37549,cat 37550,cat 37551,truck 37552,airplane 37553,dog 37554,cat 37555,deer 37556,ship 37557,ship 37558,cat 37559,frog 37560,airplane 37561,cat 37562,bird 37563,airplane 37564,truck 37565,bird 37566,truck 37567,bird 37568,cat 37569,bird 37570,deer 37571,dog 37572,deer 37573,frog 37574,airplane 37575,deer 37576,bird 37577,cat 37578,deer 37579,bird 37580,bird 37581,ship 37582,deer 37583,bird 37584,truck 37585,frog 37586,ship 37587,frog 37588,cat 37589,deer 37590,cat 37591,automobile 37592,dog 37593,truck 37594,ship 37595,frog 37596,deer 37597,deer 37598,automobile 37599,horse 37600,airplane 37601,cat 37602,deer 37603,cat 37604,dog 37605,cat 37606,automobile 37607,horse 37608,cat 37609,deer 37610,deer 37611,frog 37612,airplane 37613,dog 37614,cat 37615,automobile 37616,frog 37617,deer 37618,bird 37619,deer 37620,cat 37621,truck 37622,cat 37623,cat 37624,airplane 37625,cat 37626,airplane 37627,bird 37628,dog 37629,airplane 37630,automobile 37631,bird 37632,truck 37633,frog 37634,deer 37635,airplane 37636,horse 37637,bird 37638,truck 37639,airplane 37640,bird 37641,cat 37642,deer 37643,dog 37644,cat 37645,frog 37646,frog 37647,deer 37648,ship 37649,ship 37650,horse 37651,airplane 37652,ship 37653,ship 37654,airplane 37655,truck 37656,deer 37657,deer 37658,dog 37659,bird 37660,cat 37661,horse 37662,truck 37663,horse 37664,cat 37665,airplane 37666,cat 37667,truck 37668,airplane 37669,bird 37670,truck 37671,cat 37672,cat 37673,deer 37674,horse 37675,frog 37676,bird 37677,deer 37678,ship 37679,dog 37680,automobile 37681,truck 37682,deer 37683,bird 37684,bird 37685,airplane 37686,airplane 37687,airplane 37688,horse 37689,cat 37690,dog 37691,truck 37692,bird 37693,ship 37694,ship 37695,automobile 37696,airplane 37697,cat 37698,deer 37699,horse 37700,cat 37701,deer 37702,automobile 37703,truck 37704,horse 37705,deer 37706,bird 37707,cat 37708,automobile 37709,dog 37710,ship 37711,cat 37712,automobile 37713,dog 37714,bird 37715,cat 37716,ship 37717,truck 37718,automobile 37719,automobile 37720,ship 37721,bird 37722,ship 37723,ship 37724,bird 37725,deer 37726,cat 37727,airplane 37728,deer 37729,ship 37730,ship 37731,truck 37732,bird 37733,ship 37734,frog 37735,truck 37736,dog 37737,frog 37738,truck 37739,horse 37740,dog 37741,truck 37742,airplane 37743,deer 37744,frog 37745,frog 37746,automobile 37747,horse 37748,cat 37749,bird 37750,truck 37751,dog 37752,cat 37753,horse 37754,dog 37755,dog 37756,ship 37757,bird 37758,truck 37759,frog 37760,cat 37761,truck 37762,cat 37763,frog 37764,frog 37765,horse 37766,automobile 37767,frog 37768,ship 37769,dog 37770,bird 37771,automobile 37772,airplane 37773,dog 37774,horse 37775,truck 37776,ship 37777,cat 37778,cat 37779,cat 37780,deer 37781,deer 37782,cat 37783,truck 37784,truck 37785,bird 37786,dog 37787,frog 37788,dog 37789,frog 37790,frog 37791,airplane 37792,deer 37793,deer 37794,cat 37795,ship 37796,horse 37797,deer 37798,truck 37799,bird 37800,dog 37801,cat 37802,horse 37803,frog 37804,truck 37805,cat 37806,airplane 37807,frog 37808,cat 37809,ship 37810,dog 37811,airplane 37812,deer 37813,truck 37814,horse 37815,deer 37816,horse 37817,airplane 37818,airplane 37819,horse 37820,bird 37821,frog 37822,dog 37823,cat 37824,deer 37825,airplane 37826,horse 37827,ship 37828,truck 37829,deer 37830,horse 37831,dog 37832,ship 37833,truck 37834,frog 37835,automobile 37836,automobile 37837,dog 37838,ship 37839,horse 37840,truck 37841,bird 37842,truck 37843,bird 37844,airplane 37845,deer 37846,cat 37847,dog 37848,cat 37849,deer 37850,automobile 37851,deer 37852,airplane 37853,dog 37854,cat 37855,deer 37856,bird 37857,deer 37858,horse 37859,deer 37860,ship 37861,automobile 37862,cat 37863,truck 37864,deer 37865,airplane 37866,frog 37867,dog 37868,deer 37869,cat 37870,airplane 37871,frog 37872,deer 37873,horse 37874,automobile 37875,horse 37876,deer 37877,automobile 37878,dog 37879,truck 37880,automobile 37881,dog 37882,cat 37883,dog 37884,ship 37885,dog 37886,cat 37887,deer 37888,ship 37889,frog 37890,airplane 37891,frog 37892,cat 37893,deer 37894,airplane 37895,bird 37896,ship 37897,dog 37898,horse 37899,truck 37900,truck 37901,truck 37902,dog 37903,airplane 37904,cat 37905,cat 37906,bird 37907,deer 37908,deer 37909,deer 37910,deer 37911,bird 37912,frog 37913,cat 37914,horse 37915,airplane 37916,bird 37917,cat 37918,frog 37919,dog 37920,bird 37921,dog 37922,ship 37923,ship 37924,ship 37925,deer 37926,dog 37927,airplane 37928,bird 37929,frog 37930,deer 37931,frog 37932,cat 37933,airplane 37934,ship 37935,cat 37936,airplane 37937,truck 37938,dog 37939,frog 37940,airplane 37941,bird 37942,truck 37943,horse 37944,truck 37945,truck 37946,frog 37947,frog 37948,cat 37949,truck 37950,horse 37951,truck 37952,truck 37953,frog 37954,deer 37955,deer 37956,deer 37957,deer 37958,cat 37959,bird 37960,automobile 37961,cat 37962,frog 37963,cat 37964,airplane 37965,deer 37966,dog 37967,dog 37968,truck 37969,bird 37970,dog 37971,deer 37972,bird 37973,dog 37974,automobile 37975,deer 37976,cat 37977,frog 37978,airplane 37979,deer 37980,airplane 37981,deer 37982,ship 37983,automobile 37984,truck 37985,airplane 37986,truck 37987,frog 37988,cat 37989,cat 37990,deer 37991,cat 37992,deer 37993,frog 37994,truck 37995,automobile 37996,dog 37997,cat 37998,horse 37999,truck 38000,bird 38001,horse 38002,dog 38003,airplane 38004,bird 38005,cat 38006,bird 38007,deer 38008,horse 38009,horse 38010,cat 38011,airplane 38012,frog 38013,bird 38014,cat 38015,cat 38016,truck 38017,automobile 38018,airplane 38019,bird 38020,deer 38021,dog 38022,ship 38023,airplane 38024,automobile 38025,truck 38026,cat 38027,ship 38028,dog 38029,horse 38030,automobile 38031,airplane 38032,horse 38033,automobile 38034,horse 38035,automobile 38036,deer 38037,airplane 38038,deer 38039,frog 38040,deer 38041,frog 38042,horse 38043,automobile 38044,airplane 38045,bird 38046,cat 38047,airplane 38048,cat 38049,cat 38050,bird 38051,cat 38052,cat 38053,bird 38054,cat 38055,ship 38056,ship 38057,deer 38058,frog 38059,dog 38060,frog 38061,cat 38062,horse 38063,cat 38064,truck 38065,dog 38066,dog 38067,cat 38068,ship 38069,dog 38070,deer 38071,frog 38072,airplane 38073,bird 38074,frog 38075,deer 38076,frog 38077,truck 38078,deer 38079,cat 38080,bird 38081,truck 38082,horse 38083,cat 38084,airplane 38085,deer 38086,deer 38087,frog 38088,deer 38089,bird 38090,ship 38091,dog 38092,airplane 38093,cat 38094,deer 38095,truck 38096,truck 38097,bird 38098,frog 38099,dog 38100,cat 38101,cat 38102,cat 38103,ship 38104,deer 38105,frog 38106,automobile 38107,deer 38108,cat 38109,truck 38110,horse 38111,bird 38112,dog 38113,dog 38114,deer 38115,dog 38116,automobile 38117,bird 38118,deer 38119,cat 38120,bird 38121,truck 38122,automobile 38123,bird 38124,deer 38125,automobile 38126,ship 38127,frog 38128,airplane 38129,airplane 38130,horse 38131,bird 38132,ship 38133,truck 38134,cat 38135,dog 38136,deer 38137,airplane 38138,ship 38139,cat 38140,ship 38141,ship 38142,bird 38143,deer 38144,dog 38145,dog 38146,truck 38147,frog 38148,cat 38149,truck 38150,dog 38151,automobile 38152,dog 38153,dog 38154,frog 38155,horse 38156,cat 38157,dog 38158,truck 38159,bird 38160,dog 38161,deer 38162,cat 38163,cat 38164,ship 38165,frog 38166,deer 38167,airplane 38168,deer 38169,deer 38170,deer 38171,automobile 38172,cat 38173,ship 38174,truck 38175,truck 38176,deer 38177,dog 38178,dog 38179,dog 38180,automobile 38181,deer 38182,horse 38183,cat 38184,ship 38185,airplane 38186,frog 38187,airplane 38188,cat 38189,bird 38190,truck 38191,dog 38192,bird 38193,airplane 38194,cat 38195,cat 38196,cat 38197,ship 38198,dog 38199,bird 38200,cat 38201,truck 38202,automobile 38203,cat 38204,bird 38205,cat 38206,dog 38207,frog 38208,deer 38209,deer 38210,deer 38211,truck 38212,truck 38213,ship 38214,truck 38215,automobile 38216,dog 38217,dog 38218,dog 38219,airplane 38220,truck 38221,bird 38222,frog 38223,airplane 38224,airplane 38225,frog 38226,cat 38227,bird 38228,dog 38229,deer 38230,automobile 38231,frog 38232,dog 38233,bird 38234,horse 38235,airplane 38236,horse 38237,horse 38238,frog 38239,horse 38240,truck 38241,deer 38242,airplane 38243,automobile 38244,cat 38245,deer 38246,horse 38247,bird 38248,truck 38249,horse 38250,cat 38251,cat 38252,automobile 38253,cat 38254,frog 38255,bird 38256,truck 38257,automobile 38258,truck 38259,truck 38260,airplane 38261,frog 38262,ship 38263,bird 38264,automobile 38265,dog 38266,truck 38267,automobile 38268,deer 38269,deer 38270,cat 38271,bird 38272,frog 38273,airplane 38274,ship 38275,truck 38276,automobile 38277,ship 38278,airplane 38279,airplane 38280,horse 38281,cat 38282,bird 38283,airplane 38284,frog 38285,horse 38286,truck 38287,frog 38288,cat 38289,automobile 38290,horse 38291,automobile 38292,horse 38293,horse 38294,airplane 38295,horse 38296,cat 38297,truck 38298,cat 38299,dog 38300,deer 38301,cat 38302,frog 38303,bird 38304,cat 38305,airplane 38306,deer 38307,deer 38308,horse 38309,dog 38310,automobile 38311,dog 38312,deer 38313,dog 38314,frog 38315,frog 38316,cat 38317,airplane 38318,deer 38319,truck 38320,ship 38321,ship 38322,frog 38323,deer 38324,frog 38325,horse 38326,frog 38327,deer 38328,airplane 38329,bird 38330,truck 38331,horse 38332,bird 38333,horse 38334,dog 38335,airplane 38336,horse 38337,automobile 38338,truck 38339,frog 38340,deer 38341,frog 38342,ship 38343,deer 38344,ship 38345,airplane 38346,truck 38347,airplane 38348,horse 38349,cat 38350,deer 38351,dog 38352,bird 38353,horse 38354,cat 38355,dog 38356,dog 38357,airplane 38358,bird 38359,dog 38360,cat 38361,frog 38362,bird 38363,horse 38364,deer 38365,dog 38366,cat 38367,deer 38368,deer 38369,ship 38370,deer 38371,ship 38372,dog 38373,airplane 38374,automobile 38375,automobile 38376,deer 38377,deer 38378,truck 38379,deer 38380,frog 38381,frog 38382,truck 38383,bird 38384,frog 38385,airplane 38386,automobile 38387,deer 38388,bird 38389,dog 38390,ship 38391,dog 38392,cat 38393,horse 38394,deer 38395,frog 38396,dog 38397,frog 38398,frog 38399,horse 38400,bird 38401,ship 38402,deer 38403,cat 38404,dog 38405,horse 38406,horse 38407,dog 38408,frog 38409,bird 38410,horse 38411,dog 38412,cat 38413,deer 38414,truck 38415,frog 38416,cat 38417,frog 38418,cat 38419,truck 38420,deer 38421,deer 38422,ship 38423,cat 38424,bird 38425,bird 38426,ship 38427,cat 38428,dog 38429,dog 38430,ship 38431,frog 38432,dog 38433,cat 38434,automobile 38435,deer 38436,ship 38437,frog 38438,frog 38439,horse 38440,truck 38441,truck 38442,airplane 38443,deer 38444,automobile 38445,deer 38446,deer 38447,horse 38448,truck 38449,truck 38450,horse 38451,truck 38452,horse 38453,deer 38454,horse 38455,airplane 38456,truck 38457,dog 38458,horse 38459,cat 38460,deer 38461,airplane 38462,deer 38463,dog 38464,horse 38465,truck 38466,truck 38467,deer 38468,cat 38469,automobile 38470,bird 38471,airplane 38472,airplane 38473,ship 38474,deer 38475,horse 38476,ship 38477,ship 38478,horse 38479,ship 38480,frog 38481,deer 38482,ship 38483,dog 38484,horse 38485,frog 38486,dog 38487,dog 38488,truck 38489,ship 38490,deer 38491,automobile 38492,deer 38493,dog 38494,airplane 38495,airplane 38496,cat 38497,deer 38498,horse 38499,dog 38500,deer 38501,frog 38502,truck 38503,ship 38504,truck 38505,cat 38506,airplane 38507,cat 38508,frog 38509,horse 38510,horse 38511,airplane 38512,deer 38513,deer 38514,ship 38515,deer 38516,cat 38517,horse 38518,truck 38519,deer 38520,dog 38521,horse 38522,ship 38523,automobile 38524,deer 38525,truck 38526,horse 38527,bird 38528,frog 38529,ship 38530,frog 38531,cat 38532,horse 38533,bird 38534,truck 38535,truck 38536,horse 38537,dog 38538,airplane 38539,ship 38540,horse 38541,frog 38542,deer 38543,airplane 38544,horse 38545,truck 38546,airplane 38547,horse 38548,frog 38549,airplane 38550,horse 38551,dog 38552,bird 38553,frog 38554,dog 38555,automobile 38556,dog 38557,airplane 38558,frog 38559,airplane 38560,frog 38561,truck 38562,bird 38563,bird 38564,dog 38565,dog 38566,airplane 38567,airplane 38568,deer 38569,bird 38570,dog 38571,cat 38572,cat 38573,automobile 38574,frog 38575,horse 38576,dog 38577,airplane 38578,deer 38579,airplane 38580,deer 38581,horse 38582,cat 38583,cat 38584,cat 38585,frog 38586,airplane 38587,dog 38588,deer 38589,horse 38590,frog 38591,deer 38592,automobile 38593,frog 38594,horse 38595,bird 38596,deer 38597,deer 38598,frog 38599,frog 38600,automobile 38601,deer 38602,truck 38603,deer 38604,horse 38605,bird 38606,airplane 38607,automobile 38608,ship 38609,horse 38610,deer 38611,bird 38612,cat 38613,dog 38614,cat 38615,dog 38616,airplane 38617,frog 38618,truck 38619,bird 38620,automobile 38621,horse 38622,cat 38623,frog 38624,ship 38625,horse 38626,horse 38627,frog 38628,cat 38629,truck 38630,ship 38631,airplane 38632,horse 38633,deer 38634,deer 38635,ship 38636,ship 38637,horse 38638,airplane 38639,deer 38640,airplane 38641,horse 38642,cat 38643,frog 38644,ship 38645,truck 38646,truck 38647,deer 38648,truck 38649,cat 38650,frog 38651,dog 38652,bird 38653,bird 38654,cat 38655,dog 38656,truck 38657,horse 38658,frog 38659,deer 38660,frog 38661,truck 38662,automobile 38663,dog 38664,deer 38665,cat 38666,truck 38667,cat 38668,frog 38669,automobile 38670,truck 38671,bird 38672,truck 38673,bird 38674,automobile 38675,automobile 38676,cat 38677,frog 38678,cat 38679,deer 38680,bird 38681,bird 38682,truck 38683,bird 38684,bird 38685,truck 38686,cat 38687,cat 38688,dog 38689,automobile 38690,horse 38691,cat 38692,airplane 38693,dog 38694,automobile 38695,deer 38696,deer 38697,frog 38698,bird 38699,truck 38700,horse 38701,automobile 38702,bird 38703,frog 38704,automobile 38705,bird 38706,frog 38707,airplane 38708,airplane 38709,airplane 38710,ship 38711,cat 38712,dog 38713,ship 38714,frog 38715,frog 38716,truck 38717,frog 38718,cat 38719,bird 38720,airplane 38721,deer 38722,cat 38723,frog 38724,horse 38725,deer 38726,bird 38727,deer 38728,cat 38729,frog 38730,dog 38731,bird 38732,deer 38733,airplane 38734,cat 38735,ship 38736,bird 38737,deer 38738,deer 38739,deer 38740,frog 38741,cat 38742,automobile 38743,airplane 38744,airplane 38745,dog 38746,cat 38747,automobile 38748,frog 38749,frog 38750,cat 38751,frog 38752,horse 38753,dog 38754,cat 38755,dog 38756,airplane 38757,frog 38758,automobile 38759,airplane 38760,deer 38761,truck 38762,airplane 38763,horse 38764,frog 38765,frog 38766,cat 38767,dog 38768,cat 38769,cat 38770,cat 38771,dog 38772,dog 38773,horse 38774,bird 38775,cat 38776,deer 38777,ship 38778,deer 38779,deer 38780,airplane 38781,deer 38782,truck 38783,automobile 38784,automobile 38785,horse 38786,ship 38787,cat 38788,truck 38789,frog 38790,horse 38791,deer 38792,dog 38793,dog 38794,dog 38795,automobile 38796,automobile 38797,automobile 38798,cat 38799,airplane 38800,frog 38801,horse 38802,ship 38803,deer 38804,cat 38805,ship 38806,deer 38807,airplane 38808,frog 38809,cat 38810,dog 38811,frog 38812,horse 38813,deer 38814,truck 38815,deer 38816,airplane 38817,horse 38818,truck 38819,truck 38820,cat 38821,horse 38822,frog 38823,cat 38824,deer 38825,airplane 38826,frog 38827,bird 38828,bird 38829,deer 38830,bird 38831,dog 38832,cat 38833,automobile 38834,automobile 38835,truck 38836,horse 38837,frog 38838,dog 38839,deer 38840,deer 38841,frog 38842,cat 38843,airplane 38844,bird 38845,cat 38846,bird 38847,cat 38848,cat 38849,ship 38850,truck 38851,frog 38852,deer 38853,frog 38854,bird 38855,dog 38856,bird 38857,truck 38858,deer 38859,ship 38860,cat 38861,deer 38862,dog 38863,deer 38864,dog 38865,deer 38866,bird 38867,horse 38868,automobile 38869,automobile 38870,horse 38871,ship 38872,frog 38873,automobile 38874,airplane 38875,frog 38876,deer 38877,automobile 38878,dog 38879,cat 38880,cat 38881,deer 38882,airplane 38883,frog 38884,frog 38885,horse 38886,cat 38887,horse 38888,horse 38889,ship 38890,airplane 38891,deer 38892,frog 38893,deer 38894,horse 38895,truck 38896,ship 38897,dog 38898,dog 38899,cat 38900,deer 38901,cat 38902,ship 38903,horse 38904,truck 38905,airplane 38906,dog 38907,horse 38908,truck 38909,cat 38910,deer 38911,ship 38912,truck 38913,truck 38914,automobile 38915,truck 38916,cat 38917,cat 38918,horse 38919,horse 38920,horse 38921,deer 38922,frog 38923,frog 38924,horse 38925,ship 38926,automobile 38927,cat 38928,deer 38929,automobile 38930,deer 38931,deer 38932,deer 38933,deer 38934,truck 38935,frog 38936,dog 38937,airplane 38938,deer 38939,cat 38940,frog 38941,truck 38942,frog 38943,frog 38944,cat 38945,deer 38946,frog 38947,ship 38948,frog 38949,deer 38950,frog 38951,truck 38952,bird 38953,cat 38954,frog 38955,horse 38956,ship 38957,deer 38958,truck 38959,deer 38960,ship 38961,horse 38962,cat 38963,dog 38964,cat 38965,automobile 38966,frog 38967,airplane 38968,ship 38969,horse 38970,frog 38971,automobile 38972,truck 38973,horse 38974,airplane 38975,ship 38976,ship 38977,airplane 38978,cat 38979,bird 38980,cat 38981,frog 38982,bird 38983,automobile 38984,truck 38985,deer 38986,automobile 38987,dog 38988,frog 38989,horse 38990,bird 38991,automobile 38992,truck 38993,bird 38994,horse 38995,truck 38996,frog 38997,automobile 38998,ship 38999,airplane 39000,horse 39001,ship 39002,bird 39003,dog 39004,deer 39005,truck 39006,cat 39007,airplane 39008,truck 39009,airplane 39010,dog 39011,frog 39012,dog 39013,frog 39014,bird 39015,deer 39016,truck 39017,dog 39018,horse 39019,deer 39020,cat 39021,horse 39022,deer 39023,automobile 39024,cat 39025,truck 39026,deer 39027,cat 39028,deer 39029,truck 39030,horse 39031,deer 39032,frog 39033,deer 39034,horse 39035,frog 39036,dog 39037,cat 39038,frog 39039,truck 39040,horse 39041,bird 39042,frog 39043,bird 39044,deer 39045,dog 39046,frog 39047,cat 39048,cat 39049,airplane 39050,frog 39051,bird 39052,airplane 39053,horse 39054,truck 39055,cat 39056,frog 39057,cat 39058,horse 39059,bird 39060,cat 39061,frog 39062,ship 39063,horse 39064,cat 39065,horse 39066,frog 39067,cat 39068,truck 39069,automobile 39070,horse 39071,horse 39072,bird 39073,horse 39074,automobile 39075,automobile 39076,cat 39077,automobile 39078,frog 39079,deer 39080,horse 39081,truck 39082,dog 39083,automobile 39084,automobile 39085,dog 39086,ship 39087,frog 39088,automobile 39089,deer 39090,truck 39091,frog 39092,frog 39093,bird 39094,bird 39095,frog 39096,deer 39097,truck 39098,bird 39099,ship 39100,deer 39101,bird 39102,deer 39103,airplane 39104,frog 39105,horse 39106,deer 39107,truck 39108,bird 39109,truck 39110,deer 39111,cat 39112,frog 39113,cat 39114,frog 39115,dog 39116,truck 39117,automobile 39118,dog 39119,cat 39120,horse 39121,ship 39122,bird 39123,truck 39124,airplane 39125,airplane 39126,airplane 39127,bird 39128,bird 39129,ship 39130,airplane 39131,deer 39132,cat 39133,dog 39134,frog 39135,deer 39136,deer 39137,truck 39138,cat 39139,frog 39140,truck 39141,bird 39142,deer 39143,frog 39144,truck 39145,ship 39146,deer 39147,ship 39148,cat 39149,automobile 39150,dog 39151,frog 39152,dog 39153,dog 39154,cat 39155,cat 39156,airplane 39157,dog 39158,horse 39159,cat 39160,horse 39161,cat 39162,cat 39163,deer 39164,ship 39165,cat 39166,ship 39167,bird 39168,frog 39169,horse 39170,ship 39171,frog 39172,airplane 39173,frog 39174,cat 39175,airplane 39176,horse 39177,horse 39178,airplane 39179,ship 39180,bird 39181,ship 39182,frog 39183,deer 39184,horse 39185,horse 39186,ship 39187,truck 39188,horse 39189,deer 39190,dog 39191,cat 39192,deer 39193,truck 39194,cat 39195,horse 39196,deer 39197,deer 39198,ship 39199,frog 39200,truck 39201,cat 39202,bird 39203,cat 39204,dog 39205,cat 39206,dog 39207,ship 39208,automobile 39209,automobile 39210,bird 39211,bird 39212,truck 39213,cat 39214,dog 39215,airplane 39216,dog 39217,ship 39218,cat 39219,dog 39220,cat 39221,ship 39222,frog 39223,frog 39224,ship 39225,horse 39226,ship 39227,horse 39228,deer 39229,cat 39230,dog 39231,deer 39232,bird 39233,cat 39234,deer 39235,cat 39236,dog 39237,cat 39238,truck 39239,truck 39240,cat 39241,airplane 39242,horse 39243,dog 39244,frog 39245,deer 39246,truck 39247,horse 39248,airplane 39249,dog 39250,deer 39251,truck 39252,truck 39253,truck 39254,airplane 39255,frog 39256,frog 39257,ship 39258,ship 39259,bird 39260,horse 39261,deer 39262,automobile 39263,bird 39264,truck 39265,airplane 39266,frog 39267,deer 39268,deer 39269,ship 39270,cat 39271,deer 39272,horse 39273,dog 39274,ship 39275,horse 39276,airplane 39277,truck 39278,truck 39279,frog 39280,ship 39281,bird 39282,cat 39283,frog 39284,horse 39285,cat 39286,deer 39287,truck 39288,frog 39289,truck 39290,airplane 39291,cat 39292,horse 39293,automobile 39294,bird 39295,deer 39296,automobile 39297,deer 39298,cat 39299,automobile 39300,ship 39301,deer 39302,cat 39303,cat 39304,deer 39305,bird 39306,bird 39307,dog 39308,bird 39309,airplane 39310,frog 39311,deer 39312,frog 39313,frog 39314,cat 39315,dog 39316,horse 39317,frog 39318,automobile 39319,frog 39320,bird 39321,ship 39322,ship 39323,airplane 39324,frog 39325,frog 39326,airplane 39327,horse 39328,frog 39329,deer 39330,ship 39331,cat 39332,ship 39333,airplane 39334,airplane 39335,airplane 39336,ship 39337,frog 39338,horse 39339,ship 39340,deer 39341,truck 39342,deer 39343,deer 39344,bird 39345,cat 39346,frog 39347,ship 39348,truck 39349,dog 39350,ship 39351,deer 39352,frog 39353,cat 39354,cat 39355,deer 39356,dog 39357,horse 39358,horse 39359,cat 39360,bird 39361,bird 39362,cat 39363,ship 39364,cat 39365,horse 39366,automobile 39367,truck 39368,cat 39369,truck 39370,dog 39371,automobile 39372,cat 39373,deer 39374,horse 39375,truck 39376,frog 39377,airplane 39378,airplane 39379,airplane 39380,dog 39381,dog 39382,frog 39383,frog 39384,truck 39385,automobile 39386,dog 39387,horse 39388,cat 39389,deer 39390,ship 39391,frog 39392,ship 39393,horse 39394,cat 39395,frog 39396,airplane 39397,dog 39398,cat 39399,bird 39400,frog 39401,dog 39402,bird 39403,truck 39404,frog 39405,automobile 39406,airplane 39407,deer 39408,deer 39409,cat 39410,frog 39411,cat 39412,dog 39413,deer 39414,ship 39415,airplane 39416,truck 39417,frog 39418,frog 39419,frog 39420,truck 39421,deer 39422,cat 39423,truck 39424,bird 39425,deer 39426,frog 39427,bird 39428,truck 39429,automobile 39430,truck 39431,truck 39432,truck 39433,bird 39434,truck 39435,bird 39436,frog 39437,truck 39438,ship 39439,frog 39440,bird 39441,dog 39442,horse 39443,automobile 39444,truck 39445,frog 39446,cat 39447,deer 39448,ship 39449,automobile 39450,frog 39451,frog 39452,automobile 39453,frog 39454,frog 39455,truck 39456,cat 39457,cat 39458,deer 39459,dog 39460,deer 39461,cat 39462,deer 39463,horse 39464,ship 39465,truck 39466,airplane 39467,dog 39468,truck 39469,airplane 39470,deer 39471,dog 39472,airplane 39473,deer 39474,frog 39475,horse 39476,automobile 39477,automobile 39478,horse 39479,automobile 39480,truck 39481,horse 39482,deer 39483,automobile 39484,truck 39485,cat 39486,deer 39487,cat 39488,frog 39489,frog 39490,frog 39491,dog 39492,frog 39493,truck 39494,truck 39495,dog 39496,frog 39497,deer 39498,dog 39499,ship 39500,airplane 39501,deer 39502,cat 39503,cat 39504,horse 39505,automobile 39506,dog 39507,cat 39508,cat 39509,frog 39510,airplane 39511,deer 39512,truck 39513,dog 39514,airplane 39515,frog 39516,automobile 39517,cat 39518,ship 39519,truck 39520,bird 39521,horse 39522,frog 39523,cat 39524,frog 39525,truck 39526,deer 39527,frog 39528,bird 39529,bird 39530,cat 39531,cat 39532,truck 39533,cat 39534,bird 39535,cat 39536,frog 39537,dog 39538,frog 39539,deer 39540,horse 39541,ship 39542,dog 39543,ship 39544,horse 39545,frog 39546,deer 39547,automobile 39548,dog 39549,cat 39550,dog 39551,cat 39552,airplane 39553,bird 39554,dog 39555,dog 39556,cat 39557,frog 39558,deer 39559,deer 39560,horse 39561,dog 39562,truck 39563,frog 39564,horse 39565,bird 39566,bird 39567,bird 39568,cat 39569,airplane 39570,deer 39571,cat 39572,bird 39573,dog 39574,horse 39575,dog 39576,deer 39577,bird 39578,deer 39579,truck 39580,cat 39581,horse 39582,truck 39583,automobile 39584,deer 39585,frog 39586,ship 39587,bird 39588,deer 39589,airplane 39590,truck 39591,cat 39592,dog 39593,bird 39594,horse 39595,frog 39596,bird 39597,truck 39598,truck 39599,horse 39600,truck 39601,truck 39602,deer 39603,airplane 39604,truck 39605,automobile 39606,frog 39607,automobile 39608,frog 39609,bird 39610,dog 39611,ship 39612,cat 39613,airplane 39614,deer 39615,dog 39616,frog 39617,airplane 39618,cat 39619,airplane 39620,airplane 39621,airplane 39622,dog 39623,deer 39624,bird 39625,cat 39626,deer 39627,automobile 39628,cat 39629,frog 39630,truck 39631,dog 39632,automobile 39633,frog 39634,truck 39635,bird 39636,cat 39637,ship 39638,dog 39639,ship 39640,deer 39641,cat 39642,airplane 39643,ship 39644,airplane 39645,bird 39646,dog 39647,truck 39648,dog 39649,airplane 39650,ship 39651,frog 39652,deer 39653,cat 39654,bird 39655,cat 39656,horse 39657,deer 39658,truck 39659,dog 39660,ship 39661,frog 39662,automobile 39663,bird 39664,frog 39665,dog 39666,dog 39667,bird 39668,horse 39669,frog 39670,bird 39671,bird 39672,horse 39673,deer 39674,bird 39675,horse 39676,horse 39677,ship 39678,horse 39679,automobile 39680,cat 39681,frog 39682,ship 39683,truck 39684,ship 39685,cat 39686,deer 39687,cat 39688,ship 39689,ship 39690,airplane 39691,frog 39692,automobile 39693,frog 39694,airplane 39695,frog 39696,horse 39697,deer 39698,truck 39699,ship 39700,airplane 39701,cat 39702,deer 39703,truck 39704,airplane 39705,horse 39706,ship 39707,bird 39708,automobile 39709,dog 39710,truck 39711,dog 39712,cat 39713,frog 39714,frog 39715,airplane 39716,bird 39717,ship 39718,dog 39719,airplane 39720,airplane 39721,bird 39722,bird 39723,deer 39724,airplane 39725,cat 39726,dog 39727,ship 39728,bird 39729,bird 39730,cat 39731,deer 39732,horse 39733,cat 39734,automobile 39735,cat 39736,truck 39737,truck 39738,cat 39739,horse 39740,horse 39741,airplane 39742,automobile 39743,cat 39744,frog 39745,cat 39746,deer 39747,deer 39748,dog 39749,dog 39750,bird 39751,bird 39752,cat 39753,airplane 39754,horse 39755,horse 39756,deer 39757,horse 39758,cat 39759,deer 39760,cat 39761,cat 39762,automobile 39763,truck 39764,bird 39765,cat 39766,deer 39767,airplane 39768,automobile 39769,automobile 39770,dog 39771,airplane 39772,bird 39773,dog 39774,airplane 39775,cat 39776,frog 39777,truck 39778,automobile 39779,frog 39780,bird 39781,deer 39782,truck 39783,frog 39784,truck 39785,deer 39786,truck 39787,dog 39788,truck 39789,airplane 39790,cat 39791,cat 39792,automobile 39793,cat 39794,horse 39795,automobile 39796,truck 39797,frog 39798,airplane 39799,horse 39800,deer 39801,frog 39802,horse 39803,frog 39804,cat 39805,dog 39806,airplane 39807,cat 39808,truck 39809,airplane 39810,airplane 39811,frog 39812,horse 39813,cat 39814,airplane 39815,horse 39816,deer 39817,dog 39818,frog 39819,bird 39820,deer 39821,automobile 39822,airplane 39823,deer 39824,bird 39825,bird 39826,deer 39827,airplane 39828,automobile 39829,ship 39830,deer 39831,cat 39832,airplane 39833,truck 39834,deer 39835,deer 39836,automobile 39837,automobile 39838,bird 39839,cat 39840,frog 39841,dog 39842,bird 39843,horse 39844,deer 39845,automobile 39846,truck 39847,frog 39848,airplane 39849,deer 39850,ship 39851,cat 39852,frog 39853,airplane 39854,cat 39855,truck 39856,cat 39857,automobile 39858,truck 39859,dog 39860,truck 39861,cat 39862,horse 39863,deer 39864,cat 39865,horse 39866,airplane 39867,airplane 39868,bird 39869,cat 39870,automobile 39871,automobile 39872,dog 39873,frog 39874,frog 39875,truck 39876,ship 39877,frog 39878,ship 39879,deer 39880,dog 39881,bird 39882,automobile 39883,dog 39884,deer 39885,dog 39886,horse 39887,truck 39888,cat 39889,airplane 39890,bird 39891,dog 39892,cat 39893,ship 39894,automobile 39895,deer 39896,frog 39897,dog 39898,deer 39899,bird 39900,cat 39901,truck 39902,frog 39903,frog 39904,airplane 39905,bird 39906,bird 39907,automobile 39908,deer 39909,airplane 39910,dog 39911,horse 39912,airplane 39913,dog 39914,cat 39915,truck 39916,deer 39917,horse 39918,automobile 39919,bird 39920,horse 39921,ship 39922,cat 39923,airplane 39924,airplane 39925,truck 39926,airplane 39927,frog 39928,frog 39929,truck 39930,cat 39931,frog 39932,frog 39933,frog 39934,deer 39935,airplane 39936,horse 39937,ship 39938,ship 39939,deer 39940,frog 39941,cat 39942,horse 39943,cat 39944,truck 39945,cat 39946,bird 39947,airplane 39948,frog 39949,horse 39950,automobile 39951,ship 39952,horse 39953,truck 39954,truck 39955,airplane 39956,frog 39957,ship 39958,deer 39959,cat 39960,ship 39961,horse 39962,cat 39963,horse 39964,deer 39965,cat 39966,cat 39967,bird 39968,deer 39969,dog 39970,frog 39971,bird 39972,deer 39973,cat 39974,cat 39975,deer 39976,horse 39977,frog 39978,horse 39979,ship 39980,frog 39981,cat 39982,cat 39983,truck 39984,cat 39985,cat 39986,truck 39987,cat 39988,ship 39989,cat 39990,bird 39991,truck 39992,deer 39993,airplane 39994,dog 39995,ship 39996,cat 39997,horse 39998,horse 39999,automobile 40000,automobile 40001,truck 40002,horse 40003,automobile 40004,automobile 40005,automobile 40006,cat 40007,bird 40008,cat 40009,dog 40010,deer 40011,airplane 40012,deer 40013,bird 40014,deer 40015,airplane 40016,airplane 40017,cat 40018,bird 40019,airplane 40020,truck 40021,deer 40022,ship 40023,deer 40024,horse 40025,horse 40026,frog 40027,cat 40028,dog 40029,horse 40030,horse 40031,cat 40032,airplane 40033,dog 40034,deer 40035,truck 40036,ship 40037,ship 40038,ship 40039,bird 40040,airplane 40041,ship 40042,dog 40043,dog 40044,airplane 40045,bird 40046,frog 40047,horse 40048,frog 40049,horse 40050,dog 40051,cat 40052,airplane 40053,horse 40054,bird 40055,bird 40056,deer 40057,ship 40058,frog 40059,bird 40060,frog 40061,cat 40062,deer 40063,ship 40064,truck 40065,truck 40066,frog 40067,automobile 40068,cat 40069,cat 40070,deer 40071,airplane 40072,airplane 40073,dog 40074,dog 40075,truck 40076,horse 40077,automobile 40078,bird 40079,airplane 40080,deer 40081,cat 40082,cat 40083,deer 40084,bird 40085,horse 40086,horse 40087,bird 40088,dog 40089,cat 40090,airplane 40091,cat 40092,automobile 40093,truck 40094,deer 40095,deer 40096,frog 40097,cat 40098,deer 40099,truck 40100,cat 40101,airplane 40102,dog 40103,cat 40104,bird 40105,frog 40106,airplane 40107,dog 40108,bird 40109,ship 40110,bird 40111,horse 40112,automobile 40113,truck 40114,frog 40115,automobile 40116,airplane 40117,dog 40118,cat 40119,dog 40120,dog 40121,cat 40122,horse 40123,horse 40124,ship 40125,automobile 40126,deer 40127,automobile 40128,dog 40129,deer 40130,frog 40131,truck 40132,deer 40133,deer 40134,frog 40135,cat 40136,cat 40137,cat 40138,dog 40139,horse 40140,cat 40141,truck 40142,frog 40143,truck 40144,deer 40145,truck 40146,dog 40147,horse 40148,bird 40149,automobile 40150,frog 40151,automobile 40152,dog 40153,frog 40154,cat 40155,deer 40156,deer 40157,dog 40158,ship 40159,frog 40160,truck 40161,airplane 40162,frog 40163,cat 40164,airplane 40165,cat 40166,cat 40167,automobile 40168,deer 40169,bird 40170,bird 40171,dog 40172,frog 40173,horse 40174,cat 40175,deer 40176,deer 40177,bird 40178,cat 40179,dog 40180,truck 40181,truck 40182,truck 40183,ship 40184,bird 40185,deer 40186,frog 40187,ship 40188,dog 40189,airplane 40190,truck 40191,bird 40192,horse 40193,automobile 40194,ship 40195,dog 40196,horse 40197,airplane 40198,cat 40199,bird 40200,deer 40201,horse 40202,dog 40203,truck 40204,ship 40205,horse 40206,dog 40207,truck 40208,cat 40209,dog 40210,frog 40211,dog 40212,frog 40213,bird 40214,ship 40215,cat 40216,dog 40217,dog 40218,deer 40219,cat 40220,horse 40221,dog 40222,deer 40223,ship 40224,cat 40225,deer 40226,automobile 40227,dog 40228,ship 40229,deer 40230,truck 40231,cat 40232,bird 40233,frog 40234,deer 40235,frog 40236,airplane 40237,ship 40238,horse 40239,ship 40240,frog 40241,automobile 40242,truck 40243,horse 40244,ship 40245,automobile 40246,truck 40247,automobile 40248,horse 40249,bird 40250,automobile 40251,frog 40252,horse 40253,cat 40254,horse 40255,truck 40256,ship 40257,truck 40258,automobile 40259,truck 40260,bird 40261,dog 40262,cat 40263,horse 40264,frog 40265,deer 40266,automobile 40267,dog 40268,frog 40269,automobile 40270,bird 40271,airplane 40272,dog 40273,cat 40274,cat 40275,horse 40276,frog 40277,ship 40278,frog 40279,bird 40280,horse 40281,bird 40282,dog 40283,cat 40284,truck 40285,frog 40286,truck 40287,automobile 40288,bird 40289,deer 40290,frog 40291,deer 40292,deer 40293,horse 40294,airplane 40295,horse 40296,truck 40297,frog 40298,truck 40299,cat 40300,horse 40301,frog 40302,airplane 40303,airplane 40304,bird 40305,cat 40306,airplane 40307,bird 40308,deer 40309,cat 40310,frog 40311,deer 40312,cat 40313,deer 40314,cat 40315,cat 40316,frog 40317,airplane 40318,dog 40319,airplane 40320,cat 40321,automobile 40322,deer 40323,cat 40324,bird 40325,truck 40326,dog 40327,cat 40328,cat 40329,bird 40330,ship 40331,cat 40332,horse 40333,horse 40334,airplane 40335,truck 40336,bird 40337,frog 40338,truck 40339,automobile 40340,bird 40341,dog 40342,truck 40343,ship 40344,airplane 40345,truck 40346,ship 40347,deer 40348,frog 40349,dog 40350,dog 40351,bird 40352,dog 40353,bird 40354,bird 40355,dog 40356,cat 40357,ship 40358,ship 40359,dog 40360,cat 40361,cat 40362,automobile 40363,airplane 40364,dog 40365,automobile 40366,truck 40367,airplane 40368,horse 40369,ship 40370,cat 40371,bird 40372,frog 40373,airplane 40374,dog 40375,horse 40376,automobile 40377,airplane 40378,frog 40379,truck 40380,dog 40381,cat 40382,frog 40383,ship 40384,ship 40385,horse 40386,frog 40387,truck 40388,horse 40389,bird 40390,ship 40391,deer 40392,ship 40393,deer 40394,airplane 40395,horse 40396,cat 40397,deer 40398,cat 40399,frog 40400,frog 40401,horse 40402,automobile 40403,dog 40404,bird 40405,horse 40406,dog 40407,horse 40408,truck 40409,automobile 40410,frog 40411,horse 40412,truck 40413,truck 40414,airplane 40415,deer 40416,automobile 40417,horse 40418,frog 40419,horse 40420,dog 40421,dog 40422,deer 40423,bird 40424,airplane 40425,horse 40426,automobile 40427,truck 40428,truck 40429,frog 40430,deer 40431,dog 40432,airplane 40433,deer 40434,deer 40435,bird 40436,cat 40437,frog 40438,ship 40439,bird 40440,deer 40441,frog 40442,dog 40443,cat 40444,deer 40445,cat 40446,automobile 40447,automobile 40448,dog 40449,ship 40450,cat 40451,truck 40452,horse 40453,automobile 40454,cat 40455,bird 40456,ship 40457,cat 40458,bird 40459,horse 40460,automobile 40461,bird 40462,horse 40463,bird 40464,dog 40465,ship 40466,bird 40467,deer 40468,horse 40469,cat 40470,frog 40471,cat 40472,cat 40473,deer 40474,frog 40475,truck 40476,dog 40477,airplane 40478,airplane 40479,deer 40480,deer 40481,horse 40482,horse 40483,cat 40484,dog 40485,deer 40486,frog 40487,airplane 40488,truck 40489,truck 40490,truck 40491,bird 40492,automobile 40493,horse 40494,automobile 40495,airplane 40496,horse 40497,bird 40498,deer 40499,bird 40500,bird 40501,horse 40502,cat 40503,ship 40504,cat 40505,bird 40506,deer 40507,frog 40508,deer 40509,airplane 40510,deer 40511,frog 40512,horse 40513,horse 40514,frog 40515,deer 40516,truck 40517,horse 40518,deer 40519,deer 40520,cat 40521,dog 40522,horse 40523,airplane 40524,airplane 40525,deer 40526,cat 40527,horse 40528,automobile 40529,cat 40530,truck 40531,cat 40532,dog 40533,ship 40534,cat 40535,frog 40536,deer 40537,frog 40538,deer 40539,ship 40540,horse 40541,deer 40542,frog 40543,dog 40544,horse 40545,truck 40546,frog 40547,frog 40548,automobile 40549,ship 40550,deer 40551,ship 40552,truck 40553,deer 40554,cat 40555,cat 40556,airplane 40557,bird 40558,horse 40559,deer 40560,truck 40561,horse 40562,dog 40563,bird 40564,deer 40565,automobile 40566,automobile 40567,horse 40568,cat 40569,frog 40570,airplane 40571,bird 40572,bird 40573,truck 40574,dog 40575,cat 40576,bird 40577,deer 40578,ship 40579,deer 40580,deer 40581,ship 40582,cat 40583,horse 40584,ship 40585,truck 40586,dog 40587,truck 40588,frog 40589,airplane 40590,automobile 40591,frog 40592,horse 40593,ship 40594,airplane 40595,truck 40596,deer 40597,dog 40598,automobile 40599,airplane 40600,frog 40601,cat 40602,ship 40603,dog 40604,deer 40605,deer 40606,ship 40607,airplane 40608,frog 40609,airplane 40610,frog 40611,airplane 40612,cat 40613,horse 40614,truck 40615,airplane 40616,deer 40617,frog 40618,automobile 40619,frog 40620,automobile 40621,cat 40622,bird 40623,bird 40624,ship 40625,truck 40626,deer 40627,dog 40628,airplane 40629,deer 40630,truck 40631,deer 40632,dog 40633,deer 40634,truck 40635,truck 40636,ship 40637,truck 40638,bird 40639,truck 40640,ship 40641,dog 40642,cat 40643,airplane 40644,automobile 40645,cat 40646,bird 40647,ship 40648,horse 40649,automobile 40650,automobile 40651,truck 40652,airplane 40653,deer 40654,frog 40655,truck 40656,bird 40657,bird 40658,bird 40659,ship 40660,horse 40661,deer 40662,airplane 40663,dog 40664,horse 40665,automobile 40666,deer 40667,deer 40668,dog 40669,automobile 40670,ship 40671,truck 40672,truck 40673,frog 40674,frog 40675,frog 40676,automobile 40677,ship 40678,deer 40679,ship 40680,airplane 40681,airplane 40682,dog 40683,truck 40684,truck 40685,bird 40686,horse 40687,automobile 40688,horse 40689,truck 40690,horse 40691,truck 40692,horse 40693,airplane 40694,horse 40695,deer 40696,ship 40697,bird 40698,bird 40699,deer 40700,bird 40701,automobile 40702,airplane 40703,deer 40704,cat 40705,cat 40706,cat 40707,deer 40708,dog 40709,automobile 40710,deer 40711,airplane 40712,dog 40713,deer 40714,ship 40715,dog 40716,horse 40717,bird 40718,dog 40719,automobile 40720,dog 40721,horse 40722,deer 40723,deer 40724,frog 40725,cat 40726,airplane 40727,deer 40728,deer 40729,deer 40730,frog 40731,frog 40732,deer 40733,horse 40734,frog 40735,ship 40736,ship 40737,ship 40738,ship 40739,cat 40740,horse 40741,truck 40742,horse 40743,deer 40744,bird 40745,dog 40746,bird 40747,dog 40748,bird 40749,truck 40750,cat 40751,deer 40752,dog 40753,deer 40754,automobile 40755,deer 40756,horse 40757,horse 40758,dog 40759,automobile 40760,frog 40761,automobile 40762,truck 40763,bird 40764,automobile 40765,automobile 40766,frog 40767,bird 40768,airplane 40769,cat 40770,deer 40771,airplane 40772,ship 40773,truck 40774,airplane 40775,truck 40776,automobile 40777,dog 40778,deer 40779,deer 40780,truck 40781,deer 40782,airplane 40783,horse 40784,ship 40785,truck 40786,bird 40787,airplane 40788,airplane 40789,frog 40790,truck 40791,airplane 40792,horse 40793,cat 40794,deer 40795,deer 40796,horse 40797,cat 40798,deer 40799,truck 40800,cat 40801,ship 40802,automobile 40803,horse 40804,frog 40805,horse 40806,cat 40807,truck 40808,truck 40809,ship 40810,horse 40811,cat 40812,automobile 40813,truck 40814,ship 40815,automobile 40816,frog 40817,frog 40818,cat 40819,bird 40820,automobile 40821,deer 40822,horse 40823,truck 40824,frog 40825,airplane 40826,airplane 40827,truck 40828,deer 40829,automobile 40830,frog 40831,airplane 40832,dog 40833,cat 40834,airplane 40835,automobile 40836,deer 40837,horse 40838,automobile 40839,truck 40840,ship 40841,dog 40842,deer 40843,bird 40844,cat 40845,dog 40846,ship 40847,frog 40848,deer 40849,airplane 40850,bird 40851,bird 40852,frog 40853,automobile 40854,frog 40855,truck 40856,cat 40857,airplane 40858,cat 40859,frog 40860,ship 40861,horse 40862,deer 40863,dog 40864,horse 40865,automobile 40866,bird 40867,automobile 40868,truck 40869,truck 40870,deer 40871,cat 40872,automobile 40873,frog 40874,deer 40875,horse 40876,dog 40877,cat 40878,frog 40879,horse 40880,horse 40881,bird 40882,deer 40883,deer 40884,cat 40885,airplane 40886,deer 40887,horse 40888,cat 40889,dog 40890,airplane 40891,horse 40892,deer 40893,truck 40894,deer 40895,bird 40896,bird 40897,truck 40898,dog 40899,deer 40900,deer 40901,dog 40902,cat 40903,horse 40904,bird 40905,horse 40906,deer 40907,bird 40908,deer 40909,truck 40910,bird 40911,dog 40912,automobile 40913,truck 40914,airplane 40915,horse 40916,ship 40917,truck 40918,bird 40919,dog 40920,bird 40921,cat 40922,dog 40923,airplane 40924,airplane 40925,frog 40926,frog 40927,cat 40928,cat 40929,frog 40930,truck 40931,dog 40932,cat 40933,deer 40934,cat 40935,ship 40936,dog 40937,ship 40938,frog 40939,truck 40940,frog 40941,deer 40942,dog 40943,frog 40944,frog 40945,truck 40946,truck 40947,deer 40948,deer 40949,airplane 40950,truck 40951,deer 40952,airplane 40953,cat 40954,truck 40955,airplane 40956,airplane 40957,deer 40958,ship 40959,deer 40960,truck 40961,ship 40962,dog 40963,truck 40964,dog 40965,frog 40966,bird 40967,automobile 40968,deer 40969,bird 40970,deer 40971,horse 40972,bird 40973,deer 40974,frog 40975,airplane 40976,automobile 40977,airplane 40978,truck 40979,dog 40980,frog 40981,deer 40982,truck 40983,frog 40984,frog 40985,automobile 40986,truck 40987,ship 40988,automobile 40989,airplane 40990,automobile 40991,cat 40992,airplane 40993,truck 40994,automobile 40995,horse 40996,frog 40997,horse 40998,bird 40999,deer 41000,bird 41001,airplane 41002,cat 41003,frog 41004,horse 41005,airplane 41006,ship 41007,dog 41008,deer 41009,ship 41010,truck 41011,dog 41012,ship 41013,dog 41014,deer 41015,dog 41016,horse 41017,airplane 41018,cat 41019,truck 41020,airplane 41021,ship 41022,truck 41023,dog 41024,ship 41025,ship 41026,deer 41027,frog 41028,deer 41029,horse 41030,cat 41031,frog 41032,dog 41033,bird 41034,dog 41035,cat 41036,cat 41037,dog 41038,ship 41039,dog 41040,airplane 41041,cat 41042,ship 41043,bird 41044,ship 41045,automobile 41046,truck 41047,frog 41048,cat 41049,dog 41050,dog 41051,truck 41052,deer 41053,truck 41054,horse 41055,automobile 41056,ship 41057,truck 41058,truck 41059,horse 41060,dog 41061,dog 41062,ship 41063,frog 41064,frog 41065,deer 41066,automobile 41067,truck 41068,cat 41069,dog 41070,frog 41071,bird 41072,horse 41073,frog 41074,automobile 41075,automobile 41076,automobile 41077,ship 41078,cat 41079,frog 41080,bird 41081,airplane 41082,ship 41083,truck 41084,ship 41085,bird 41086,deer 41087,airplane 41088,deer 41089,horse 41090,deer 41091,cat 41092,horse 41093,ship 41094,frog 41095,truck 41096,cat 41097,horse 41098,airplane 41099,ship 41100,airplane 41101,dog 41102,deer 41103,bird 41104,truck 41105,truck 41106,dog 41107,cat 41108,deer 41109,deer 41110,cat 41111,airplane 41112,truck 41113,cat 41114,dog 41115,ship 41116,bird 41117,horse 41118,bird 41119,dog 41120,truck 41121,deer 41122,airplane 41123,automobile 41124,deer 41125,automobile 41126,automobile 41127,airplane 41128,cat 41129,deer 41130,automobile 41131,automobile 41132,ship 41133,horse 41134,deer 41135,deer 41136,cat 41137,bird 41138,automobile 41139,truck 41140,ship 41141,frog 41142,truck 41143,horse 41144,dog 41145,dog 41146,ship 41147,truck 41148,truck 41149,automobile 41150,ship 41151,ship 41152,dog 41153,deer 41154,dog 41155,frog 41156,frog 41157,horse 41158,deer 41159,horse 41160,frog 41161,bird 41162,airplane 41163,truck 41164,ship 41165,dog 41166,dog 41167,deer 41168,dog 41169,cat 41170,dog 41171,dog 41172,deer 41173,truck 41174,horse 41175,deer 41176,cat 41177,deer 41178,automobile 41179,deer 41180,frog 41181,dog 41182,cat 41183,deer 41184,bird 41185,bird 41186,horse 41187,dog 41188,cat 41189,bird 41190,automobile 41191,deer 41192,truck 41193,ship 41194,automobile 41195,automobile 41196,cat 41197,bird 41198,horse 41199,bird 41200,frog 41201,cat 41202,ship 41203,truck 41204,airplane 41205,cat 41206,frog 41207,horse 41208,truck 41209,dog 41210,airplane 41211,dog 41212,bird 41213,bird 41214,dog 41215,cat 41216,airplane 41217,airplane 41218,deer 41219,deer 41220,cat 41221,cat 41222,ship 41223,dog 41224,airplane 41225,truck 41226,bird 41227,cat 41228,deer 41229,deer 41230,dog 41231,cat 41232,horse 41233,airplane 41234,frog 41235,truck 41236,truck 41237,cat 41238,horse 41239,dog 41240,deer 41241,horse 41242,horse 41243,ship 41244,horse 41245,dog 41246,airplane 41247,deer 41248,cat 41249,truck 41250,ship 41251,deer 41252,cat 41253,dog 41254,frog 41255,horse 41256,automobile 41257,horse 41258,deer 41259,truck 41260,cat 41261,automobile 41262,truck 41263,ship 41264,airplane 41265,cat 41266,truck 41267,truck 41268,bird 41269,ship 41270,deer 41271,cat 41272,deer 41273,horse 41274,cat 41275,frog 41276,bird 41277,deer 41278,truck 41279,bird 41280,frog 41281,ship 41282,airplane 41283,bird 41284,horse 41285,ship 41286,ship 41287,truck 41288,frog 41289,deer 41290,frog 41291,truck 41292,ship 41293,deer 41294,deer 41295,horse 41296,frog 41297,ship 41298,automobile 41299,truck 41300,airplane 41301,cat 41302,frog 41303,frog 41304,truck 41305,horse 41306,deer 41307,airplane 41308,horse 41309,horse 41310,ship 41311,deer 41312,deer 41313,bird 41314,truck 41315,frog 41316,deer 41317,cat 41318,deer 41319,bird 41320,bird 41321,truck 41322,bird 41323,cat 41324,horse 41325,ship 41326,horse 41327,cat 41328,truck 41329,ship 41330,horse 41331,cat 41332,ship 41333,truck 41334,ship 41335,bird 41336,frog 41337,automobile 41338,airplane 41339,dog 41340,deer 41341,bird 41342,cat 41343,ship 41344,dog 41345,cat 41346,horse 41347,bird 41348,frog 41349,truck 41350,airplane 41351,dog 41352,dog 41353,deer 41354,frog 41355,frog 41356,ship 41357,horse 41358,horse 41359,automobile 41360,airplane 41361,automobile 41362,deer 41363,dog 41364,ship 41365,frog 41366,deer 41367,truck 41368,horse 41369,airplane 41370,automobile 41371,ship 41372,bird 41373,frog 41374,ship 41375,frog 41376,automobile 41377,frog 41378,deer 41379,bird 41380,bird 41381,automobile 41382,truck 41383,truck 41384,deer 41385,horse 41386,airplane 41387,dog 41388,frog 41389,deer 41390,horse 41391,horse 41392,airplane 41393,automobile 41394,ship 41395,truck 41396,bird 41397,bird 41398,frog 41399,truck 41400,ship 41401,deer 41402,ship 41403,horse 41404,automobile 41405,horse 41406,bird 41407,ship 41408,deer 41409,bird 41410,horse 41411,cat 41412,bird 41413,deer 41414,horse 41415,horse 41416,dog 41417,dog 41418,truck 41419,bird 41420,automobile 41421,airplane 41422,airplane 41423,frog 41424,ship 41425,airplane 41426,automobile 41427,truck 41428,airplane 41429,dog 41430,frog 41431,deer 41432,automobile 41433,bird 41434,airplane 41435,cat 41436,horse 41437,airplane 41438,horse 41439,truck 41440,airplane 41441,bird 41442,cat 41443,cat 41444,ship 41445,horse 41446,automobile 41447,ship 41448,cat 41449,horse 41450,ship 41451,truck 41452,airplane 41453,dog 41454,frog 41455,airplane 41456,frog 41457,deer 41458,frog 41459,ship 41460,ship 41461,cat 41462,airplane 41463,dog 41464,deer 41465,automobile 41466,truck 41467,horse 41468,deer 41469,truck 41470,ship 41471,cat 41472,dog 41473,cat 41474,airplane 41475,truck 41476,ship 41477,automobile 41478,automobile 41479,dog 41480,truck 41481,horse 41482,ship 41483,airplane 41484,cat 41485,airplane 41486,horse 41487,automobile 41488,truck 41489,horse 41490,deer 41491,cat 41492,truck 41493,dog 41494,truck 41495,deer 41496,cat 41497,airplane 41498,cat 41499,deer 41500,truck 41501,horse 41502,airplane 41503,cat 41504,dog 41505,cat 41506,ship 41507,dog 41508,ship 41509,bird 41510,ship 41511,truck 41512,frog 41513,dog 41514,dog 41515,dog 41516,bird 41517,horse 41518,airplane 41519,ship 41520,dog 41521,truck 41522,airplane 41523,deer 41524,deer 41525,deer 41526,frog 41527,frog 41528,truck 41529,horse 41530,airplane 41531,dog 41532,dog 41533,horse 41534,ship 41535,automobile 41536,horse 41537,airplane 41538,deer 41539,airplane 41540,deer 41541,horse 41542,deer 41543,automobile 41544,cat 41545,deer 41546,horse 41547,frog 41548,deer 41549,bird 41550,horse 41551,frog 41552,bird 41553,frog 41554,truck 41555,dog 41556,dog 41557,airplane 41558,deer 41559,horse 41560,automobile 41561,frog 41562,automobile 41563,truck 41564,frog 41565,automobile 41566,truck 41567,frog 41568,cat 41569,deer 41570,cat 41571,dog 41572,truck 41573,frog 41574,airplane 41575,deer 41576,truck 41577,cat 41578,bird 41579,dog 41580,bird 41581,airplane 41582,deer 41583,ship 41584,dog 41585,airplane 41586,deer 41587,truck 41588,deer 41589,truck 41590,airplane 41591,cat 41592,horse 41593,ship 41594,ship 41595,bird 41596,automobile 41597,frog 41598,dog 41599,bird 41600,frog 41601,bird 41602,deer 41603,automobile 41604,deer 41605,truck 41606,frog 41607,frog 41608,airplane 41609,automobile 41610,dog 41611,horse 41612,truck 41613,frog 41614,truck 41615,automobile 41616,horse 41617,dog 41618,dog 41619,bird 41620,deer 41621,truck 41622,frog 41623,deer 41624,cat 41625,bird 41626,dog 41627,cat 41628,horse 41629,cat 41630,horse 41631,frog 41632,dog 41633,deer 41634,bird 41635,horse 41636,ship 41637,ship 41638,automobile 41639,automobile 41640,automobile 41641,cat 41642,truck 41643,bird 41644,horse 41645,ship 41646,cat 41647,bird 41648,ship 41649,deer 41650,bird 41651,cat 41652,frog 41653,truck 41654,truck 41655,cat 41656,bird 41657,cat 41658,ship 41659,horse 41660,airplane 41661,dog 41662,truck 41663,truck 41664,airplane 41665,ship 41666,dog 41667,airplane 41668,ship 41669,deer 41670,dog 41671,airplane 41672,horse 41673,horse 41674,cat 41675,deer 41676,truck 41677,truck 41678,horse 41679,horse 41680,cat 41681,deer 41682,frog 41683,automobile 41684,cat 41685,automobile 41686,frog 41687,truck 41688,horse 41689,deer 41690,deer 41691,airplane 41692,deer 41693,truck 41694,cat 41695,truck 41696,automobile 41697,dog 41698,automobile 41699,airplane 41700,airplane 41701,frog 41702,truck 41703,airplane 41704,frog 41705,automobile 41706,frog 41707,cat 41708,automobile 41709,ship 41710,frog 41711,frog 41712,cat 41713,truck 41714,frog 41715,deer 41716,dog 41717,horse 41718,horse 41719,cat 41720,dog 41721,frog 41722,automobile 41723,bird 41724,cat 41725,truck 41726,frog 41727,dog 41728,cat 41729,automobile 41730,airplane 41731,frog 41732,cat 41733,ship 41734,automobile 41735,deer 41736,bird 41737,dog 41738,bird 41739,truck 41740,ship 41741,bird 41742,truck 41743,cat 41744,airplane 41745,bird 41746,bird 41747,airplane 41748,deer 41749,frog 41750,airplane 41751,frog 41752,truck 41753,deer 41754,frog 41755,deer 41756,airplane 41757,horse 41758,frog 41759,deer 41760,dog 41761,truck 41762,deer 41763,dog 41764,frog 41765,ship 41766,cat 41767,truck 41768,horse 41769,deer 41770,bird 41771,truck 41772,ship 41773,horse 41774,horse 41775,deer 41776,frog 41777,airplane 41778,ship 41779,airplane 41780,bird 41781,airplane 41782,ship 41783,frog 41784,frog 41785,horse 41786,automobile 41787,cat 41788,deer 41789,frog 41790,bird 41791,airplane 41792,deer 41793,ship 41794,bird 41795,deer 41796,horse 41797,deer 41798,airplane 41799,dog 41800,frog 41801,frog 41802,bird 41803,cat 41804,deer 41805,deer 41806,frog 41807,deer 41808,bird 41809,deer 41810,deer 41811,automobile 41812,automobile 41813,cat 41814,deer 41815,bird 41816,ship 41817,cat 41818,dog 41819,cat 41820,ship 41821,cat 41822,frog 41823,dog 41824,cat 41825,cat 41826,bird 41827,deer 41828,deer 41829,automobile 41830,deer 41831,horse 41832,airplane 41833,deer 41834,deer 41835,dog 41836,deer 41837,airplane 41838,frog 41839,frog 41840,horse 41841,deer 41842,ship 41843,frog 41844,deer 41845,ship 41846,frog 41847,truck 41848,dog 41849,dog 41850,dog 41851,deer 41852,truck 41853,truck 41854,truck 41855,dog 41856,truck 41857,airplane 41858,cat 41859,ship 41860,bird 41861,frog 41862,cat 41863,horse 41864,horse 41865,cat 41866,frog 41867,ship 41868,deer 41869,cat 41870,truck 41871,airplane 41872,dog 41873,automobile 41874,ship 41875,frog 41876,deer 41877,bird 41878,airplane 41879,cat 41880,horse 41881,dog 41882,dog 41883,cat 41884,cat 41885,deer 41886,deer 41887,truck 41888,ship 41889,frog 41890,ship 41891,truck 41892,frog 41893,horse 41894,deer 41895,deer 41896,cat 41897,frog 41898,ship 41899,horse 41900,cat 41901,dog 41902,airplane 41903,cat 41904,truck 41905,cat 41906,truck 41907,horse 41908,dog 41909,automobile 41910,deer 41911,bird 41912,ship 41913,frog 41914,cat 41915,automobile 41916,automobile 41917,dog 41918,airplane 41919,truck 41920,horse 41921,cat 41922,airplane 41923,automobile 41924,frog 41925,frog 41926,frog 41927,airplane 41928,cat 41929,truck 41930,dog 41931,airplane 41932,deer 41933,ship 41934,deer 41935,deer 41936,dog 41937,bird 41938,truck 41939,cat 41940,horse 41941,deer 41942,frog 41943,airplane 41944,cat 41945,ship 41946,automobile 41947,airplane 41948,truck 41949,horse 41950,deer 41951,frog 41952,ship 41953,automobile 41954,ship 41955,horse 41956,horse 41957,dog 41958,horse 41959,frog 41960,deer 41961,dog 41962,airplane 41963,airplane 41964,bird 41965,airplane 41966,ship 41967,automobile 41968,bird 41969,deer 41970,bird 41971,ship 41972,automobile 41973,frog 41974,truck 41975,ship 41976,deer 41977,truck 41978,cat 41979,deer 41980,airplane 41981,ship 41982,horse 41983,bird 41984,deer 41985,bird 41986,airplane 41987,deer 41988,ship 41989,ship 41990,dog 41991,dog 41992,dog 41993,cat 41994,deer 41995,truck 41996,cat 41997,deer 41998,dog 41999,deer 42000,deer 42001,horse 42002,airplane 42003,deer 42004,horse 42005,dog 42006,airplane 42007,cat 42008,cat 42009,airplane 42010,deer 42011,dog 42012,deer 42013,dog 42014,deer 42015,truck 42016,airplane 42017,airplane 42018,dog 42019,frog 42020,automobile 42021,dog 42022,bird 42023,deer 42024,deer 42025,deer 42026,truck 42027,bird 42028,deer 42029,horse 42030,dog 42031,cat 42032,horse 42033,automobile 42034,airplane 42035,cat 42036,cat 42037,automobile 42038,horse 42039,automobile 42040,cat 42041,airplane 42042,truck 42043,horse 42044,deer 42045,frog 42046,cat 42047,dog 42048,bird 42049,dog 42050,frog 42051,cat 42052,deer 42053,cat 42054,airplane 42055,frog 42056,automobile 42057,dog 42058,frog 42059,cat 42060,automobile 42061,automobile 42062,horse 42063,cat 42064,cat 42065,horse 42066,airplane 42067,truck 42068,horse 42069,deer 42070,deer 42071,deer 42072,cat 42073,truck 42074,dog 42075,airplane 42076,airplane 42077,horse 42078,ship 42079,truck 42080,automobile 42081,horse 42082,deer 42083,airplane 42084,cat 42085,truck 42086,airplane 42087,ship 42088,truck 42089,deer 42090,automobile 42091,horse 42092,automobile 42093,frog 42094,dog 42095,ship 42096,cat 42097,automobile 42098,deer 42099,horse 42100,truck 42101,horse 42102,cat 42103,bird 42104,truck 42105,deer 42106,deer 42107,cat 42108,airplane 42109,bird 42110,horse 42111,automobile 42112,dog 42113,deer 42114,truck 42115,frog 42116,deer 42117,dog 42118,deer 42119,truck 42120,frog 42121,horse 42122,deer 42123,cat 42124,deer 42125,deer 42126,deer 42127,deer 42128,deer 42129,dog 42130,truck 42131,truck 42132,dog 42133,dog 42134,automobile 42135,airplane 42136,dog 42137,bird 42138,bird 42139,horse 42140,airplane 42141,frog 42142,airplane 42143,cat 42144,ship 42145,deer 42146,truck 42147,dog 42148,truck 42149,bird 42150,cat 42151,airplane 42152,airplane 42153,horse 42154,dog 42155,frog 42156,bird 42157,horse 42158,airplane 42159,bird 42160,dog 42161,dog 42162,dog 42163,dog 42164,deer 42165,deer 42166,horse 42167,airplane 42168,ship 42169,bird 42170,horse 42171,ship 42172,dog 42173,cat 42174,ship 42175,bird 42176,dog 42177,horse 42178,dog 42179,dog 42180,airplane 42181,horse 42182,airplane 42183,frog 42184,cat 42185,horse 42186,ship 42187,ship 42188,horse 42189,truck 42190,frog 42191,truck 42192,automobile 42193,cat 42194,truck 42195,ship 42196,horse 42197,truck 42198,automobile 42199,deer 42200,cat 42201,deer 42202,bird 42203,bird 42204,deer 42205,dog 42206,dog 42207,horse 42208,dog 42209,cat 42210,truck 42211,cat 42212,truck 42213,bird 42214,truck 42215,horse 42216,deer 42217,deer 42218,deer 42219,dog 42220,deer 42221,automobile 42222,horse 42223,truck 42224,bird 42225,cat 42226,cat 42227,ship 42228,truck 42229,automobile 42230,frog 42231,automobile 42232,deer 42233,automobile 42234,horse 42235,ship 42236,truck 42237,cat 42238,automobile 42239,horse 42240,bird 42241,frog 42242,deer 42243,truck 42244,horse 42245,cat 42246,ship 42247,deer 42248,ship 42249,ship 42250,frog 42251,cat 42252,ship 42253,cat 42254,deer 42255,cat 42256,bird 42257,cat 42258,cat 42259,ship 42260,horse 42261,frog 42262,deer 42263,dog 42264,frog 42265,frog 42266,dog 42267,deer 42268,cat 42269,dog 42270,horse 42271,cat 42272,deer 42273,truck 42274,airplane 42275,cat 42276,ship 42277,deer 42278,automobile 42279,horse 42280,bird 42281,bird 42282,automobile 42283,cat 42284,horse 42285,truck 42286,horse 42287,frog 42288,cat 42289,truck 42290,automobile 42291,airplane 42292,bird 42293,bird 42294,horse 42295,frog 42296,frog 42297,ship 42298,horse 42299,truck 42300,cat 42301,automobile 42302,frog 42303,truck 42304,bird 42305,horse 42306,cat 42307,cat 42308,dog 42309,ship 42310,cat 42311,ship 42312,deer 42313,dog 42314,automobile 42315,deer 42316,deer 42317,deer 42318,truck 42319,cat 42320,bird 42321,horse 42322,frog 42323,ship 42324,automobile 42325,bird 42326,frog 42327,automobile 42328,horse 42329,horse 42330,bird 42331,dog 42332,horse 42333,dog 42334,horse 42335,frog 42336,horse 42337,dog 42338,deer 42339,frog 42340,bird 42341,truck 42342,bird 42343,deer 42344,airplane 42345,dog 42346,deer 42347,automobile 42348,dog 42349,cat 42350,deer 42351,ship 42352,truck 42353,bird 42354,deer 42355,ship 42356,cat 42357,deer 42358,dog 42359,bird 42360,airplane 42361,frog 42362,airplane 42363,frog 42364,airplane 42365,deer 42366,dog 42367,horse 42368,horse 42369,frog 42370,dog 42371,ship 42372,automobile 42373,automobile 42374,deer 42375,airplane 42376,airplane 42377,bird 42378,frog 42379,airplane 42380,cat 42381,airplane 42382,truck 42383,frog 42384,horse 42385,frog 42386,truck 42387,cat 42388,cat 42389,deer 42390,airplane 42391,truck 42392,cat 42393,ship 42394,frog 42395,cat 42396,frog 42397,cat 42398,ship 42399,deer 42400,airplane 42401,airplane 42402,horse 42403,ship 42404,automobile 42405,frog 42406,bird 42407,deer 42408,cat 42409,dog 42410,ship 42411,frog 42412,automobile 42413,dog 42414,automobile 42415,frog 42416,ship 42417,bird 42418,truck 42419,horse 42420,frog 42421,automobile 42422,frog 42423,frog 42424,bird 42425,airplane 42426,dog 42427,airplane 42428,dog 42429,deer 42430,dog 42431,ship 42432,deer 42433,automobile 42434,ship 42435,ship 42436,deer 42437,cat 42438,cat 42439,frog 42440,automobile 42441,truck 42442,deer 42443,automobile 42444,cat 42445,deer 42446,truck 42447,automobile 42448,frog 42449,bird 42450,airplane 42451,cat 42452,truck 42453,dog 42454,bird 42455,deer 42456,automobile 42457,ship 42458,dog 42459,deer 42460,truck 42461,deer 42462,cat 42463,deer 42464,truck 42465,cat 42466,ship 42467,truck 42468,airplane 42469,airplane 42470,horse 42471,frog 42472,deer 42473,automobile 42474,bird 42475,airplane 42476,truck 42477,deer 42478,cat 42479,bird 42480,cat 42481,bird 42482,dog 42483,dog 42484,dog 42485,dog 42486,cat 42487,deer 42488,dog 42489,deer 42490,truck 42491,deer 42492,frog 42493,deer 42494,deer 42495,airplane 42496,airplane 42497,frog 42498,automobile 42499,bird 42500,deer 42501,ship 42502,deer 42503,automobile 42504,bird 42505,airplane 42506,horse 42507,dog 42508,cat 42509,deer 42510,cat 42511,automobile 42512,frog 42513,deer 42514,dog 42515,deer 42516,airplane 42517,cat 42518,frog 42519,dog 42520,bird 42521,deer 42522,dog 42523,frog 42524,frog 42525,deer 42526,airplane 42527,truck 42528,cat 42529,horse 42530,cat 42531,cat 42532,cat 42533,airplane 42534,frog 42535,deer 42536,ship 42537,bird 42538,frog 42539,horse 42540,truck 42541,truck 42542,ship 42543,cat 42544,bird 42545,dog 42546,frog 42547,truck 42548,bird 42549,deer 42550,deer 42551,frog 42552,deer 42553,bird 42554,dog 42555,ship 42556,airplane 42557,frog 42558,airplane 42559,dog 42560,cat 42561,cat 42562,frog 42563,deer 42564,bird 42565,cat 42566,dog 42567,airplane 42568,ship 42569,deer 42570,horse 42571,bird 42572,truck 42573,bird 42574,dog 42575,cat 42576,cat 42577,truck 42578,dog 42579,cat 42580,dog 42581,cat 42582,truck 42583,cat 42584,deer 42585,deer 42586,ship 42587,automobile 42588,horse 42589,dog 42590,horse 42591,bird 42592,deer 42593,bird 42594,dog 42595,ship 42596,airplane 42597,automobile 42598,bird 42599,dog 42600,horse 42601,cat 42602,dog 42603,frog 42604,frog 42605,airplane 42606,horse 42607,dog 42608,airplane 42609,ship 42610,truck 42611,airplane 42612,cat 42613,cat 42614,truck 42615,dog 42616,horse 42617,deer 42618,horse 42619,ship 42620,deer 42621,dog 42622,dog 42623,automobile 42624,airplane 42625,automobile 42626,airplane 42627,frog 42628,frog 42629,airplane 42630,airplane 42631,cat 42632,airplane 42633,frog 42634,cat 42635,truck 42636,automobile 42637,cat 42638,bird 42639,dog 42640,frog 42641,truck 42642,airplane 42643,frog 42644,deer 42645,deer 42646,deer 42647,bird 42648,frog 42649,truck 42650,deer 42651,frog 42652,truck 42653,horse 42654,airplane 42655,airplane 42656,dog 42657,ship 42658,truck 42659,cat 42660,cat 42661,deer 42662,frog 42663,ship 42664,airplane 42665,ship 42666,ship 42667,horse 42668,deer 42669,dog 42670,bird 42671,truck 42672,frog 42673,truck 42674,automobile 42675,deer 42676,ship 42677,truck 42678,bird 42679,bird 42680,horse 42681,dog 42682,frog 42683,deer 42684,dog 42685,dog 42686,dog 42687,cat 42688,truck 42689,deer 42690,deer 42691,deer 42692,ship 42693,deer 42694,frog 42695,cat 42696,deer 42697,dog 42698,truck 42699,ship 42700,frog 42701,bird 42702,horse 42703,truck 42704,bird 42705,ship 42706,dog 42707,bird 42708,airplane 42709,frog 42710,cat 42711,horse 42712,bird 42713,automobile 42714,dog 42715,cat 42716,airplane 42717,truck 42718,deer 42719,cat 42720,cat 42721,cat 42722,deer 42723,automobile 42724,cat 42725,cat 42726,frog 42727,ship 42728,truck 42729,horse 42730,ship 42731,bird 42732,ship 42733,frog 42734,frog 42735,deer 42736,airplane 42737,automobile 42738,automobile 42739,ship 42740,bird 42741,cat 42742,truck 42743,frog 42744,cat 42745,cat 42746,horse 42747,cat 42748,cat 42749,dog 42750,ship 42751,truck 42752,dog 42753,truck 42754,airplane 42755,ship 42756,cat 42757,horse 42758,frog 42759,automobile 42760,dog 42761,dog 42762,deer 42763,deer 42764,deer 42765,deer 42766,automobile 42767,horse 42768,horse 42769,frog 42770,dog 42771,cat 42772,frog 42773,deer 42774,truck 42775,deer 42776,bird 42777,truck 42778,horse 42779,cat 42780,bird 42781,bird 42782,horse 42783,dog 42784,frog 42785,dog 42786,frog 42787,horse 42788,frog 42789,automobile 42790,airplane 42791,frog 42792,bird 42793,cat 42794,bird 42795,frog 42796,airplane 42797,frog 42798,frog 42799,dog 42800,frog 42801,dog 42802,deer 42803,dog 42804,truck 42805,bird 42806,bird 42807,frog 42808,frog 42809,truck 42810,frog 42811,truck 42812,truck 42813,deer 42814,dog 42815,bird 42816,frog 42817,truck 42818,ship 42819,dog 42820,horse 42821,truck 42822,frog 42823,frog 42824,truck 42825,truck 42826,dog 42827,truck 42828,frog 42829,dog 42830,dog 42831,truck 42832,bird 42833,frog 42834,deer 42835,cat 42836,bird 42837,frog 42838,bird 42839,dog 42840,airplane 42841,airplane 42842,dog 42843,bird 42844,automobile 42845,deer 42846,automobile 42847,frog 42848,dog 42849,truck 42850,horse 42851,automobile 42852,horse 42853,frog 42854,deer 42855,dog 42856,ship 42857,deer 42858,airplane 42859,ship 42860,deer 42861,deer 42862,horse 42863,airplane 42864,dog 42865,cat 42866,horse 42867,horse 42868,airplane 42869,bird 42870,deer 42871,horse 42872,cat 42873,ship 42874,truck 42875,frog 42876,horse 42877,frog 42878,cat 42879,deer 42880,airplane 42881,dog 42882,bird 42883,dog 42884,airplane 42885,deer 42886,horse 42887,ship 42888,dog 42889,ship 42890,dog 42891,frog 42892,frog 42893,frog 42894,ship 42895,truck 42896,truck 42897,bird 42898,ship 42899,cat 42900,automobile 42901,horse 42902,truck 42903,frog 42904,bird 42905,dog 42906,cat 42907,dog 42908,ship 42909,cat 42910,cat 42911,deer 42912,bird 42913,airplane 42914,airplane 42915,cat 42916,cat 42917,frog 42918,automobile 42919,bird 42920,frog 42921,deer 42922,deer 42923,dog 42924,ship 42925,dog 42926,cat 42927,dog 42928,cat 42929,bird 42930,truck 42931,automobile 42932,dog 42933,dog 42934,ship 42935,airplane 42936,bird 42937,frog 42938,deer 42939,deer 42940,frog 42941,dog 42942,cat 42943,automobile 42944,frog 42945,cat 42946,dog 42947,frog 42948,deer 42949,cat 42950,bird 42951,truck 42952,dog 42953,airplane 42954,cat 42955,horse 42956,truck 42957,horse 42958,truck 42959,deer 42960,cat 42961,frog 42962,dog 42963,bird 42964,cat 42965,truck 42966,frog 42967,ship 42968,frog 42969,ship 42970,truck 42971,cat 42972,deer 42973,deer 42974,cat 42975,horse 42976,ship 42977,cat 42978,bird 42979,horse 42980,horse 42981,frog 42982,bird 42983,deer 42984,cat 42985,dog 42986,dog 42987,truck 42988,cat 42989,cat 42990,frog 42991,dog 42992,dog 42993,truck 42994,dog 42995,airplane 42996,horse 42997,cat 42998,frog 42999,cat 43000,truck 43001,frog 43002,deer 43003,airplane 43004,deer 43005,cat 43006,truck 43007,airplane 43008,deer 43009,truck 43010,frog 43011,frog 43012,deer 43013,dog 43014,horse 43015,dog 43016,deer 43017,airplane 43018,bird 43019,cat 43020,frog 43021,truck 43022,cat 43023,horse 43024,automobile 43025,bird 43026,horse 43027,dog 43028,cat 43029,dog 43030,frog 43031,deer 43032,cat 43033,deer 43034,bird 43035,ship 43036,deer 43037,cat 43038,deer 43039,frog 43040,deer 43041,deer 43042,dog 43043,dog 43044,deer 43045,horse 43046,dog 43047,deer 43048,automobile 43049,ship 43050,frog 43051,airplane 43052,truck 43053,cat 43054,deer 43055,cat 43056,automobile 43057,frog 43058,deer 43059,automobile 43060,cat 43061,airplane 43062,cat 43063,frog 43064,horse 43065,frog 43066,horse 43067,dog 43068,horse 43069,truck 43070,ship 43071,dog 43072,ship 43073,deer 43074,airplane 43075,ship 43076,automobile 43077,truck 43078,horse 43079,ship 43080,cat 43081,automobile 43082,horse 43083,airplane 43084,deer 43085,cat 43086,cat 43087,dog 43088,frog 43089,cat 43090,dog 43091,cat 43092,airplane 43093,deer 43094,horse 43095,bird 43096,cat 43097,horse 43098,bird 43099,deer 43100,horse 43101,truck 43102,airplane 43103,horse 43104,horse 43105,bird 43106,horse 43107,truck 43108,frog 43109,deer 43110,truck 43111,frog 43112,bird 43113,frog 43114,frog 43115,bird 43116,ship 43117,dog 43118,automobile 43119,airplane 43120,airplane 43121,deer 43122,deer 43123,truck 43124,airplane 43125,deer 43126,automobile 43127,deer 43128,truck 43129,truck 43130,cat 43131,truck 43132,frog 43133,bird 43134,ship 43135,frog 43136,truck 43137,cat 43138,dog 43139,truck 43140,bird 43141,deer 43142,airplane 43143,deer 43144,bird 43145,ship 43146,ship 43147,truck 43148,deer 43149,bird 43150,deer 43151,airplane 43152,bird 43153,automobile 43154,frog 43155,automobile 43156,horse 43157,cat 43158,frog 43159,frog 43160,truck 43161,airplane 43162,deer 43163,deer 43164,dog 43165,deer 43166,dog 43167,frog 43168,dog 43169,automobile 43170,ship 43171,cat 43172,frog 43173,horse 43174,cat 43175,truck 43176,bird 43177,bird 43178,frog 43179,deer 43180,truck 43181,airplane 43182,cat 43183,cat 43184,ship 43185,cat 43186,dog 43187,horse 43188,cat 43189,dog 43190,cat 43191,deer 43192,frog 43193,deer 43194,truck 43195,airplane 43196,ship 43197,automobile 43198,automobile 43199,ship 43200,automobile 43201,ship 43202,ship 43203,deer 43204,ship 43205,horse 43206,frog 43207,airplane 43208,airplane 43209,dog 43210,automobile 43211,cat 43212,frog 43213,horse 43214,automobile 43215,ship 43216,airplane 43217,deer 43218,truck 43219,airplane 43220,cat 43221,dog 43222,cat 43223,bird 43224,deer 43225,dog 43226,truck 43227,cat 43228,cat 43229,cat 43230,airplane 43231,automobile 43232,horse 43233,cat 43234,dog 43235,frog 43236,bird 43237,airplane 43238,truck 43239,horse 43240,deer 43241,bird 43242,deer 43243,cat 43244,frog 43245,deer 43246,automobile 43247,frog 43248,airplane 43249,deer 43250,cat 43251,truck 43252,deer 43253,cat 43254,ship 43255,horse 43256,cat 43257,dog 43258,deer 43259,frog 43260,horse 43261,horse 43262,automobile 43263,cat 43264,deer 43265,deer 43266,deer 43267,frog 43268,deer 43269,horse 43270,truck 43271,automobile 43272,bird 43273,airplane 43274,truck 43275,deer 43276,horse 43277,bird 43278,ship 43279,horse 43280,ship 43281,ship 43282,frog 43283,ship 43284,bird 43285,bird 43286,bird 43287,cat 43288,bird 43289,ship 43290,dog 43291,dog 43292,truck 43293,truck 43294,ship 43295,deer 43296,ship 43297,ship 43298,truck 43299,horse 43300,deer 43301,frog 43302,airplane 43303,airplane 43304,dog 43305,bird 43306,dog 43307,cat 43308,dog 43309,cat 43310,ship 43311,ship 43312,ship 43313,dog 43314,dog 43315,automobile 43316,cat 43317,dog 43318,airplane 43319,deer 43320,airplane 43321,truck 43322,cat 43323,airplane 43324,frog 43325,frog 43326,deer 43327,cat 43328,dog 43329,truck 43330,dog 43331,frog 43332,horse 43333,cat 43334,ship 43335,truck 43336,ship 43337,horse 43338,frog 43339,dog 43340,ship 43341,dog 43342,cat 43343,dog 43344,frog 43345,bird 43346,deer 43347,airplane 43348,frog 43349,truck 43350,deer 43351,truck 43352,ship 43353,horse 43354,dog 43355,airplane 43356,automobile 43357,bird 43358,bird 43359,airplane 43360,truck 43361,ship 43362,cat 43363,cat 43364,deer 43365,cat 43366,deer 43367,dog 43368,truck 43369,cat 43370,horse 43371,ship 43372,deer 43373,automobile 43374,horse 43375,frog 43376,deer 43377,deer 43378,cat 43379,bird 43380,truck 43381,truck 43382,ship 43383,dog 43384,frog 43385,truck 43386,airplane 43387,automobile 43388,frog 43389,truck 43390,horse 43391,airplane 43392,ship 43393,dog 43394,frog 43395,automobile 43396,automobile 43397,truck 43398,horse 43399,automobile 43400,cat 43401,airplane 43402,bird 43403,ship 43404,frog 43405,cat 43406,dog 43407,horse 43408,horse 43409,ship 43410,bird 43411,ship 43412,deer 43413,ship 43414,bird 43415,cat 43416,bird 43417,truck 43418,horse 43419,airplane 43420,truck 43421,horse 43422,horse 43423,automobile 43424,truck 43425,cat 43426,dog 43427,cat 43428,deer 43429,ship 43430,truck 43431,frog 43432,cat 43433,deer 43434,truck 43435,dog 43436,frog 43437,airplane 43438,deer 43439,airplane 43440,ship 43441,ship 43442,frog 43443,horse 43444,bird 43445,frog 43446,airplane 43447,horse 43448,airplane 43449,dog 43450,frog 43451,deer 43452,bird 43453,bird 43454,frog 43455,automobile 43456,frog 43457,dog 43458,airplane 43459,ship 43460,airplane 43461,cat 43462,horse 43463,ship 43464,horse 43465,cat 43466,frog 43467,deer 43468,frog 43469,truck 43470,deer 43471,cat 43472,ship 43473,cat 43474,deer 43475,dog 43476,horse 43477,deer 43478,bird 43479,deer 43480,horse 43481,dog 43482,bird 43483,automobile 43484,deer 43485,cat 43486,dog 43487,airplane 43488,bird 43489,cat 43490,bird 43491,airplane 43492,airplane 43493,deer 43494,frog 43495,horse 43496,frog 43497,bird 43498,dog 43499,horse 43500,frog 43501,cat 43502,truck 43503,bird 43504,deer 43505,airplane 43506,bird 43507,bird 43508,ship 43509,cat 43510,cat 43511,airplane 43512,airplane 43513,horse 43514,frog 43515,dog 43516,deer 43517,dog 43518,frog 43519,horse 43520,ship 43521,deer 43522,dog 43523,cat 43524,automobile 43525,horse 43526,automobile 43527,cat 43528,ship 43529,dog 43530,cat 43531,airplane 43532,airplane 43533,bird 43534,frog 43535,dog 43536,cat 43537,truck 43538,ship 43539,frog 43540,frog 43541,ship 43542,ship 43543,truck 43544,bird 43545,truck 43546,automobile 43547,truck 43548,deer 43549,frog 43550,truck 43551,deer 43552,airplane 43553,dog 43554,airplane 43555,deer 43556,dog 43557,bird 43558,airplane 43559,ship 43560,deer 43561,cat 43562,automobile 43563,deer 43564,deer 43565,automobile 43566,cat 43567,cat 43568,automobile 43569,horse 43570,truck 43571,deer 43572,cat 43573,automobile 43574,cat 43575,airplane 43576,cat 43577,cat 43578,truck 43579,airplane 43580,dog 43581,dog 43582,deer 43583,horse 43584,airplane 43585,frog 43586,cat 43587,airplane 43588,deer 43589,deer 43590,ship 43591,cat 43592,deer 43593,ship 43594,bird 43595,deer 43596,automobile 43597,cat 43598,cat 43599,truck 43600,horse 43601,deer 43602,dog 43603,dog 43604,cat 43605,automobile 43606,truck 43607,dog 43608,truck 43609,dog 43610,ship 43611,cat 43612,horse 43613,automobile 43614,frog 43615,frog 43616,frog 43617,dog 43618,frog 43619,truck 43620,airplane 43621,bird 43622,frog 43623,dog 43624,bird 43625,frog 43626,automobile 43627,airplane 43628,automobile 43629,automobile 43630,truck 43631,truck 43632,deer 43633,automobile 43634,automobile 43635,truck 43636,cat 43637,bird 43638,bird 43639,cat 43640,deer 43641,deer 43642,cat 43643,dog 43644,truck 43645,dog 43646,horse 43647,bird 43648,frog 43649,frog 43650,horse 43651,deer 43652,frog 43653,airplane 43654,cat 43655,frog 43656,truck 43657,cat 43658,airplane 43659,frog 43660,cat 43661,cat 43662,deer 43663,frog 43664,cat 43665,ship 43666,automobile 43667,deer 43668,automobile 43669,airplane 43670,horse 43671,cat 43672,automobile 43673,cat 43674,automobile 43675,frog 43676,ship 43677,airplane 43678,horse 43679,truck 43680,truck 43681,cat 43682,deer 43683,automobile 43684,frog 43685,truck 43686,horse 43687,ship 43688,truck 43689,cat 43690,cat 43691,cat 43692,bird 43693,horse 43694,cat 43695,dog 43696,bird 43697,horse 43698,horse 43699,cat 43700,truck 43701,dog 43702,cat 43703,automobile 43704,deer 43705,deer 43706,bird 43707,frog 43708,dog 43709,deer 43710,cat 43711,dog 43712,truck 43713,ship 43714,automobile 43715,frog 43716,ship 43717,truck 43718,deer 43719,cat 43720,airplane 43721,horse 43722,airplane 43723,bird 43724,automobile 43725,horse 43726,cat 43727,airplane 43728,bird 43729,dog 43730,bird 43731,ship 43732,cat 43733,horse 43734,horse 43735,truck 43736,deer 43737,dog 43738,deer 43739,bird 43740,truck 43741,bird 43742,dog 43743,frog 43744,dog 43745,bird 43746,truck 43747,airplane 43748,dog 43749,deer 43750,truck 43751,deer 43752,ship 43753,airplane 43754,truck 43755,cat 43756,dog 43757,frog 43758,airplane 43759,dog 43760,ship 43761,horse 43762,airplane 43763,dog 43764,horse 43765,bird 43766,ship 43767,cat 43768,frog 43769,dog 43770,airplane 43771,cat 43772,ship 43773,deer 43774,bird 43775,horse 43776,ship 43777,ship 43778,truck 43779,frog 43780,horse 43781,ship 43782,dog 43783,cat 43784,automobile 43785,bird 43786,cat 43787,airplane 43788,dog 43789,horse 43790,airplane 43791,dog 43792,cat 43793,truck 43794,cat 43795,truck 43796,ship 43797,truck 43798,bird 43799,airplane 43800,ship 43801,bird 43802,deer 43803,truck 43804,cat 43805,airplane 43806,bird 43807,deer 43808,truck 43809,dog 43810,truck 43811,ship 43812,truck 43813,frog 43814,automobile 43815,deer 43816,horse 43817,truck 43818,truck 43819,automobile 43820,horse 43821,truck 43822,ship 43823,dog 43824,cat 43825,airplane 43826,cat 43827,deer 43828,deer 43829,cat 43830,cat 43831,airplane 43832,bird 43833,automobile 43834,frog 43835,deer 43836,airplane 43837,truck 43838,automobile 43839,cat 43840,ship 43841,dog 43842,cat 43843,dog 43844,deer 43845,deer 43846,truck 43847,dog 43848,dog 43849,frog 43850,deer 43851,cat 43852,frog 43853,horse 43854,airplane 43855,truck 43856,horse 43857,cat 43858,automobile 43859,horse 43860,dog 43861,deer 43862,cat 43863,dog 43864,frog 43865,automobile 43866,deer 43867,truck 43868,automobile 43869,ship 43870,truck 43871,airplane 43872,deer 43873,cat 43874,cat 43875,airplane 43876,horse 43877,ship 43878,truck 43879,horse 43880,truck 43881,cat 43882,deer 43883,horse 43884,truck 43885,automobile 43886,cat 43887,frog 43888,frog 43889,cat 43890,deer 43891,ship 43892,frog 43893,airplane 43894,dog 43895,deer 43896,horse 43897,horse 43898,horse 43899,cat 43900,dog 43901,airplane 43902,cat 43903,dog 43904,ship 43905,automobile 43906,deer 43907,dog 43908,deer 43909,ship 43910,deer 43911,horse 43912,deer 43913,bird 43914,ship 43915,bird 43916,airplane 43917,ship 43918,cat 43919,cat 43920,deer 43921,bird 43922,truck 43923,cat 43924,automobile 43925,dog 43926,ship 43927,airplane 43928,bird 43929,deer 43930,horse 43931,frog 43932,truck 43933,cat 43934,frog 43935,deer 43936,horse 43937,truck 43938,bird 43939,deer 43940,horse 43941,deer 43942,automobile 43943,bird 43944,airplane 43945,airplane 43946,ship 43947,automobile 43948,horse 43949,frog 43950,deer 43951,cat 43952,deer 43953,truck 43954,automobile 43955,frog 43956,bird 43957,bird 43958,deer 43959,cat 43960,truck 43961,truck 43962,truck 43963,deer 43964,cat 43965,cat 43966,deer 43967,automobile 43968,horse 43969,dog 43970,cat 43971,bird 43972,horse 43973,truck 43974,automobile 43975,deer 43976,cat 43977,horse 43978,cat 43979,horse 43980,truck 43981,cat 43982,deer 43983,bird 43984,horse 43985,bird 43986,truck 43987,automobile 43988,airplane 43989,horse 43990,automobile 43991,frog 43992,horse 43993,airplane 43994,airplane 43995,dog 43996,frog 43997,frog 43998,cat 43999,cat 44000,airplane 44001,horse 44002,automobile 44003,ship 44004,cat 44005,automobile 44006,frog 44007,cat 44008,truck 44009,cat 44010,dog 44011,truck 44012,ship 44013,horse 44014,cat 44015,airplane 44016,deer 44017,automobile 44018,truck 44019,ship 44020,deer 44021,ship 44022,frog 44023,cat 44024,deer 44025,automobile 44026,ship 44027,frog 44028,airplane 44029,airplane 44030,bird 44031,cat 44032,cat 44033,automobile 44034,airplane 44035,truck 44036,bird 44037,ship 44038,frog 44039,cat 44040,truck 44041,automobile 44042,cat 44043,deer 44044,dog 44045,automobile 44046,truck 44047,deer 44048,ship 44049,deer 44050,horse 44051,deer 44052,dog 44053,deer 44054,cat 44055,truck 44056,bird 44057,truck 44058,automobile 44059,frog 44060,automobile 44061,truck 44062,frog 44063,automobile 44064,dog 44065,ship 44066,horse 44067,dog 44068,deer 44069,airplane 44070,cat 44071,ship 44072,dog 44073,frog 44074,cat 44075,ship 44076,dog 44077,deer 44078,automobile 44079,horse 44080,ship 44081,cat 44082,airplane 44083,deer 44084,frog 44085,truck 44086,cat 44087,ship 44088,truck 44089,truck 44090,deer 44091,dog 44092,truck 44093,truck 44094,deer 44095,ship 44096,automobile 44097,ship 44098,bird 44099,deer 44100,horse 44101,horse 44102,truck 44103,cat 44104,airplane 44105,automobile 44106,truck 44107,bird 44108,truck 44109,dog 44110,airplane 44111,deer 44112,deer 44113,automobile 44114,frog 44115,frog 44116,airplane 44117,truck 44118,dog 44119,automobile 44120,ship 44121,cat 44122,airplane 44123,bird 44124,horse 44125,dog 44126,dog 44127,frog 44128,dog 44129,dog 44130,ship 44131,airplane 44132,cat 44133,horse 44134,automobile 44135,airplane 44136,dog 44137,frog 44138,frog 44139,cat 44140,deer 44141,frog 44142,cat 44143,dog 44144,bird 44145,horse 44146,truck 44147,frog 44148,airplane 44149,frog 44150,truck 44151,truck 44152,automobile 44153,horse 44154,airplane 44155,automobile 44156,deer 44157,bird 44158,dog 44159,truck 44160,horse 44161,frog 44162,cat 44163,airplane 44164,deer 44165,ship 44166,airplane 44167,automobile 44168,truck 44169,bird 44170,deer 44171,ship 44172,frog 44173,dog 44174,horse 44175,bird 44176,truck 44177,ship 44178,dog 44179,dog 44180,cat 44181,dog 44182,airplane 44183,automobile 44184,ship 44185,dog 44186,deer 44187,automobile 44188,ship 44189,ship 44190,deer 44191,cat 44192,cat 44193,cat 44194,dog 44195,frog 44196,automobile 44197,deer 44198,cat 44199,dog 44200,cat 44201,truck 44202,frog 44203,dog 44204,frog 44205,bird 44206,frog 44207,deer 44208,ship 44209,automobile 44210,bird 44211,frog 44212,ship 44213,truck 44214,automobile 44215,deer 44216,cat 44217,horse 44218,bird 44219,ship 44220,frog 44221,horse 44222,dog 44223,dog 44224,dog 44225,bird 44226,cat 44227,dog 44228,cat 44229,cat 44230,ship 44231,frog 44232,truck 44233,cat 44234,truck 44235,cat 44236,bird 44237,airplane 44238,cat 44239,truck 44240,cat 44241,horse 44242,truck 44243,deer 44244,ship 44245,ship 44246,bird 44247,bird 44248,airplane 44249,airplane 44250,ship 44251,deer 44252,truck 44253,cat 44254,bird 44255,frog 44256,frog 44257,airplane 44258,horse 44259,airplane 44260,airplane 44261,dog 44262,ship 44263,deer 44264,cat 44265,cat 44266,deer 44267,dog 44268,dog 44269,cat 44270,bird 44271,automobile 44272,cat 44273,ship 44274,cat 44275,frog 44276,bird 44277,deer 44278,cat 44279,horse 44280,bird 44281,truck 44282,frog 44283,dog 44284,truck 44285,frog 44286,cat 44287,automobile 44288,bird 44289,bird 44290,automobile 44291,bird 44292,cat 44293,dog 44294,frog 44295,frog 44296,frog 44297,horse 44298,cat 44299,automobile 44300,truck 44301,deer 44302,bird 44303,truck 44304,horse 44305,horse 44306,horse 44307,airplane 44308,cat 44309,ship 44310,truck 44311,deer 44312,automobile 44313,ship 44314,bird 44315,dog 44316,horse 44317,ship 44318,bird 44319,ship 44320,airplane 44321,dog 44322,ship 44323,cat 44324,deer 44325,cat 44326,airplane 44327,airplane 44328,truck 44329,frog 44330,frog 44331,dog 44332,cat 44333,frog 44334,cat 44335,cat 44336,bird 44337,deer 44338,truck 44339,ship 44340,frog 44341,ship 44342,truck 44343,deer 44344,dog 44345,frog 44346,bird 44347,bird 44348,cat 44349,deer 44350,frog 44351,deer 44352,bird 44353,cat 44354,bird 44355,horse 44356,cat 44357,horse 44358,truck 44359,cat 44360,horse 44361,horse 44362,frog 44363,deer 44364,truck 44365,deer 44366,horse 44367,cat 44368,bird 44369,deer 44370,frog 44371,frog 44372,airplane 44373,frog 44374,dog 44375,ship 44376,deer 44377,deer 44378,ship 44379,frog 44380,truck 44381,horse 44382,truck 44383,frog 44384,truck 44385,ship 44386,deer 44387,dog 44388,horse 44389,frog 44390,horse 44391,bird 44392,horse 44393,dog 44394,frog 44395,horse 44396,dog 44397,cat 44398,frog 44399,cat 44400,bird 44401,deer 44402,cat 44403,horse 44404,cat 44405,automobile 44406,dog 44407,airplane 44408,ship 44409,bird 44410,horse 44411,dog 44412,airplane 44413,horse 44414,airplane 44415,deer 44416,cat 44417,cat 44418,truck 44419,ship 44420,horse 44421,bird 44422,ship 44423,automobile 44424,cat 44425,ship 44426,truck 44427,bird 44428,cat 44429,truck 44430,frog 44431,automobile 44432,bird 44433,cat 44434,dog 44435,airplane 44436,cat 44437,truck 44438,airplane 44439,ship 44440,dog 44441,bird 44442,truck 44443,cat 44444,truck 44445,deer 44446,horse 44447,frog 44448,deer 44449,truck 44450,horse 44451,horse 44452,bird 44453,frog 44454,deer 44455,truck 44456,ship 44457,frog 44458,dog 44459,automobile 44460,cat 44461,deer 44462,airplane 44463,frog 44464,dog 44465,horse 44466,airplane 44467,airplane 44468,automobile 44469,frog 44470,dog 44471,dog 44472,dog 44473,airplane 44474,horse 44475,airplane 44476,frog 44477,deer 44478,airplane 44479,cat 44480,dog 44481,horse 44482,dog 44483,cat 44484,frog 44485,dog 44486,airplane 44487,airplane 44488,horse 44489,dog 44490,cat 44491,deer 44492,deer 44493,cat 44494,cat 44495,truck 44496,cat 44497,cat 44498,dog 44499,ship 44500,cat 44501,bird 44502,horse 44503,deer 44504,horse 44505,airplane 44506,bird 44507,bird 44508,bird 44509,frog 44510,automobile 44511,deer 44512,frog 44513,ship 44514,cat 44515,deer 44516,truck 44517,horse 44518,frog 44519,dog 44520,ship 44521,ship 44522,deer 44523,deer 44524,dog 44525,truck 44526,airplane 44527,automobile 44528,deer 44529,truck 44530,frog 44531,automobile 44532,deer 44533,automobile 44534,horse 44535,truck 44536,bird 44537,ship 44538,horse 44539,deer 44540,cat 44541,frog 44542,horse 44543,ship 44544,cat 44545,frog 44546,cat 44547,truck 44548,deer 44549,ship 44550,automobile 44551,dog 44552,automobile 44553,airplane 44554,dog 44555,truck 44556,airplane 44557,deer 44558,cat 44559,truck 44560,bird 44561,cat 44562,deer 44563,frog 44564,airplane 44565,cat 44566,bird 44567,automobile 44568,cat 44569,ship 44570,deer 44571,bird 44572,truck 44573,truck 44574,horse 44575,frog 44576,dog 44577,frog 44578,truck 44579,ship 44580,ship 44581,cat 44582,bird 44583,airplane 44584,airplane 44585,cat 44586,cat 44587,dog 44588,frog 44589,dog 44590,bird 44591,dog 44592,bird 44593,horse 44594,deer 44595,horse 44596,truck 44597,bird 44598,deer 44599,airplane 44600,airplane 44601,ship 44602,truck 44603,ship 44604,deer 44605,deer 44606,frog 44607,bird 44608,automobile 44609,automobile 44610,frog 44611,automobile 44612,dog 44613,truck 44614,airplane 44615,truck 44616,cat 44617,deer 44618,airplane 44619,deer 44620,automobile 44621,horse 44622,truck 44623,frog 44624,deer 44625,ship 44626,horse 44627,horse 44628,bird 44629,dog 44630,deer 44631,deer 44632,airplane 44633,deer 44634,airplane 44635,airplane 44636,airplane 44637,truck 44638,horse 44639,dog 44640,frog 44641,horse 44642,truck 44643,bird 44644,automobile 44645,airplane 44646,bird 44647,bird 44648,cat 44649,automobile 44650,truck 44651,truck 44652,deer 44653,truck 44654,frog 44655,airplane 44656,truck 44657,deer 44658,frog 44659,dog 44660,airplane 44661,dog 44662,cat 44663,airplane 44664,ship 44665,horse 44666,dog 44667,dog 44668,truck 44669,frog 44670,airplane 44671,bird 44672,truck 44673,deer 44674,deer 44675,deer 44676,truck 44677,automobile 44678,dog 44679,cat 44680,frog 44681,bird 44682,airplane 44683,deer 44684,deer 44685,cat 44686,deer 44687,frog 44688,horse 44689,dog 44690,airplane 44691,automobile 44692,automobile 44693,deer 44694,deer 44695,deer 44696,horse 44697,dog 44698,cat 44699,cat 44700,frog 44701,ship 44702,deer 44703,deer 44704,horse 44705,truck 44706,deer 44707,frog 44708,dog 44709,bird 44710,dog 44711,horse 44712,truck 44713,horse 44714,deer 44715,deer 44716,ship 44717,cat 44718,deer 44719,deer 44720,deer 44721,bird 44722,horse 44723,deer 44724,cat 44725,cat 44726,horse 44727,dog 44728,deer 44729,frog 44730,dog 44731,dog 44732,frog 44733,cat 44734,ship 44735,cat 44736,frog 44737,ship 44738,dog 44739,truck 44740,truck 44741,ship 44742,frog 44743,frog 44744,frog 44745,automobile 44746,cat 44747,cat 44748,ship 44749,deer 44750,deer 44751,automobile 44752,ship 44753,frog 44754,truck 44755,frog 44756,deer 44757,ship 44758,automobile 44759,cat 44760,truck 44761,dog 44762,deer 44763,frog 44764,horse 44765,automobile 44766,dog 44767,frog 44768,automobile 44769,dog 44770,horse 44771,deer 44772,deer 44773,ship 44774,automobile 44775,automobile 44776,dog 44777,automobile 44778,horse 44779,deer 44780,bird 44781,horse 44782,frog 44783,truck 44784,bird 44785,ship 44786,cat 44787,bird 44788,deer 44789,cat 44790,dog 44791,deer 44792,automobile 44793,airplane 44794,cat 44795,frog 44796,deer 44797,bird 44798,airplane 44799,bird 44800,dog 44801,deer 44802,cat 44803,ship 44804,frog 44805,airplane 44806,bird 44807,frog 44808,truck 44809,truck 44810,airplane 44811,cat 44812,frog 44813,horse 44814,deer 44815,ship 44816,bird 44817,truck 44818,deer 44819,automobile 44820,frog 44821,bird 44822,dog 44823,airplane 44824,truck 44825,ship 44826,airplane 44827,deer 44828,frog 44829,cat 44830,airplane 44831,ship 44832,deer 44833,deer 44834,bird 44835,deer 44836,truck 44837,frog 44838,cat 44839,bird 44840,frog 44841,ship 44842,deer 44843,horse 44844,horse 44845,bird 44846,truck 44847,deer 44848,ship 44849,frog 44850,ship 44851,dog 44852,automobile 44853,ship 44854,cat 44855,airplane 44856,truck 44857,automobile 44858,truck 44859,deer 44860,airplane 44861,dog 44862,airplane 44863,horse 44864,truck 44865,cat 44866,ship 44867,dog 44868,airplane 44869,frog 44870,truck 44871,bird 44872,dog 44873,truck 44874,automobile 44875,cat 44876,deer 44877,truck 44878,truck 44879,deer 44880,cat 44881,horse 44882,deer 44883,horse 44884,dog 44885,truck 44886,ship 44887,cat 44888,ship 44889,horse 44890,frog 44891,deer 44892,cat 44893,deer 44894,bird 44895,dog 44896,deer 44897,cat 44898,bird 44899,horse 44900,automobile 44901,airplane 44902,cat 44903,truck 44904,dog 44905,cat 44906,airplane 44907,automobile 44908,dog 44909,ship 44910,truck 44911,frog 44912,cat 44913,dog 44914,deer 44915,frog 44916,ship 44917,bird 44918,deer 44919,truck 44920,horse 44921,deer 44922,frog 44923,ship 44924,deer 44925,cat 44926,dog 44927,deer 44928,bird 44929,deer 44930,deer 44931,airplane 44932,ship 44933,deer 44934,horse 44935,truck 44936,deer 44937,automobile 44938,airplane 44939,dog 44940,bird 44941,ship 44942,deer 44943,dog 44944,automobile 44945,deer 44946,deer 44947,bird 44948,frog 44949,horse 44950,bird 44951,deer 44952,deer 44953,truck 44954,truck 44955,ship 44956,ship 44957,horse 44958,automobile 44959,frog 44960,automobile 44961,cat 44962,deer 44963,ship 44964,horse 44965,cat 44966,automobile 44967,bird 44968,horse 44969,horse 44970,ship 44971,cat 44972,truck 44973,bird 44974,truck 44975,dog 44976,horse 44977,truck 44978,truck 44979,bird 44980,automobile 44981,frog 44982,cat 44983,deer 44984,horse 44985,deer 44986,automobile 44987,automobile 44988,horse 44989,cat 44990,horse 44991,horse 44992,airplane 44993,cat 44994,bird 44995,frog 44996,cat 44997,frog 44998,frog 44999,horse 45000,dog 45001,bird 45002,horse 45003,dog 45004,deer 45005,automobile 45006,airplane 45007,truck 45008,bird 45009,bird 45010,deer 45011,airplane 45012,cat 45013,bird 45014,airplane 45015,truck 45016,deer 45017,dog 45018,deer 45019,horse 45020,frog 45021,bird 45022,deer 45023,automobile 45024,frog 45025,bird 45026,deer 45027,frog 45028,truck 45029,truck 45030,cat 45031,horse 45032,horse 45033,bird 45034,frog 45035,bird 45036,horse 45037,bird 45038,dog 45039,frog 45040,bird 45041,frog 45042,cat 45043,automobile 45044,horse 45045,deer 45046,cat 45047,deer 45048,dog 45049,truck 45050,cat 45051,deer 45052,airplane 45053,frog 45054,dog 45055,horse 45056,deer 45057,truck 45058,cat 45059,frog 45060,bird 45061,frog 45062,bird 45063,ship 45064,truck 45065,dog 45066,horse 45067,bird 45068,deer 45069,bird 45070,frog 45071,ship 45072,horse 45073,ship 45074,bird 45075,airplane 45076,airplane 45077,horse 45078,truck 45079,horse 45080,horse 45081,deer 45082,airplane 45083,cat 45084,frog 45085,cat 45086,deer 45087,horse 45088,cat 45089,deer 45090,frog 45091,automobile 45092,horse 45093,dog 45094,dog 45095,cat 45096,truck 45097,deer 45098,automobile 45099,ship 45100,horse 45101,cat 45102,frog 45103,horse 45104,horse 45105,bird 45106,deer 45107,ship 45108,automobile 45109,deer 45110,cat 45111,airplane 45112,automobile 45113,deer 45114,ship 45115,frog 45116,cat 45117,bird 45118,frog 45119,frog 45120,frog 45121,dog 45122,automobile 45123,airplane 45124,dog 45125,truck 45126,deer 45127,cat 45128,airplane 45129,automobile 45130,airplane 45131,automobile 45132,deer 45133,bird 45134,horse 45135,deer 45136,cat 45137,dog 45138,bird 45139,cat 45140,airplane 45141,dog 45142,dog 45143,frog 45144,airplane 45145,horse 45146,airplane 45147,cat 45148,airplane 45149,truck 45150,dog 45151,truck 45152,truck 45153,deer 45154,dog 45155,deer 45156,truck 45157,ship 45158,ship 45159,ship 45160,airplane 45161,bird 45162,frog 45163,bird 45164,horse 45165,cat 45166,horse 45167,ship 45168,frog 45169,deer 45170,bird 45171,frog 45172,frog 45173,automobile 45174,ship 45175,deer 45176,horse 45177,horse 45178,frog 45179,bird 45180,deer 45181,deer 45182,bird 45183,airplane 45184,frog 45185,ship 45186,cat 45187,frog 45188,cat 45189,cat 45190,deer 45191,truck 45192,horse 45193,cat 45194,frog 45195,airplane 45196,ship 45197,cat 45198,cat 45199,dog 45200,airplane 45201,frog 45202,airplane 45203,dog 45204,automobile 45205,truck 45206,cat 45207,frog 45208,bird 45209,frog 45210,dog 45211,cat 45212,horse 45213,dog 45214,ship 45215,automobile 45216,cat 45217,truck 45218,frog 45219,automobile 45220,dog 45221,bird 45222,deer 45223,deer 45224,deer 45225,dog 45226,automobile 45227,cat 45228,cat 45229,horse 45230,cat 45231,cat 45232,ship 45233,bird 45234,bird 45235,automobile 45236,automobile 45237,horse 45238,ship 45239,ship 45240,cat 45241,dog 45242,dog 45243,frog 45244,deer 45245,automobile 45246,cat 45247,cat 45248,automobile 45249,frog 45250,cat 45251,dog 45252,ship 45253,dog 45254,cat 45255,airplane 45256,horse 45257,bird 45258,horse 45259,horse 45260,deer 45261,deer 45262,cat 45263,deer 45264,dog 45265,dog 45266,bird 45267,ship 45268,dog 45269,truck 45270,dog 45271,cat 45272,dog 45273,frog 45274,bird 45275,ship 45276,bird 45277,deer 45278,truck 45279,automobile 45280,cat 45281,frog 45282,deer 45283,airplane 45284,cat 45285,horse 45286,truck 45287,automobile 45288,frog 45289,airplane 45290,dog 45291,deer 45292,deer 45293,automobile 45294,cat 45295,airplane 45296,deer 45297,truck 45298,truck 45299,truck 45300,ship 45301,cat 45302,deer 45303,dog 45304,dog 45305,dog 45306,deer 45307,airplane 45308,cat 45309,horse 45310,dog 45311,airplane 45312,truck 45313,truck 45314,deer 45315,truck 45316,airplane 45317,automobile 45318,deer 45319,truck 45320,automobile 45321,airplane 45322,automobile 45323,cat 45324,airplane 45325,airplane 45326,deer 45327,dog 45328,truck 45329,cat 45330,cat 45331,ship 45332,ship 45333,deer 45334,automobile 45335,airplane 45336,airplane 45337,deer 45338,dog 45339,deer 45340,frog 45341,horse 45342,frog 45343,bird 45344,cat 45345,ship 45346,bird 45347,bird 45348,automobile 45349,airplane 45350,bird 45351,deer 45352,truck 45353,automobile 45354,deer 45355,deer 45356,dog 45357,cat 45358,truck 45359,cat 45360,ship 45361,bird 45362,automobile 45363,airplane 45364,cat 45365,horse 45366,deer 45367,deer 45368,horse 45369,deer 45370,automobile 45371,automobile 45372,automobile 45373,cat 45374,cat 45375,ship 45376,dog 45377,cat 45378,automobile 45379,airplane 45380,cat 45381,bird 45382,truck 45383,deer 45384,cat 45385,ship 45386,deer 45387,frog 45388,deer 45389,automobile 45390,horse 45391,dog 45392,horse 45393,frog 45394,truck 45395,deer 45396,ship 45397,cat 45398,ship 45399,bird 45400,airplane 45401,cat 45402,frog 45403,bird 45404,horse 45405,cat 45406,truck 45407,ship 45408,dog 45409,frog 45410,truck 45411,airplane 45412,cat 45413,ship 45414,frog 45415,deer 45416,bird 45417,dog 45418,airplane 45419,dog 45420,horse 45421,automobile 45422,airplane 45423,deer 45424,truck 45425,ship 45426,horse 45427,deer 45428,bird 45429,ship 45430,cat 45431,horse 45432,dog 45433,frog 45434,ship 45435,bird 45436,airplane 45437,deer 45438,dog 45439,deer 45440,truck 45441,dog 45442,truck 45443,frog 45444,deer 45445,dog 45446,truck 45447,ship 45448,cat 45449,frog 45450,frog 45451,ship 45452,truck 45453,dog 45454,airplane 45455,bird 45456,cat 45457,horse 45458,frog 45459,cat 45460,truck 45461,bird 45462,frog 45463,bird 45464,bird 45465,ship 45466,automobile 45467,horse 45468,deer 45469,dog 45470,automobile 45471,cat 45472,deer 45473,cat 45474,cat 45475,truck 45476,cat 45477,horse 45478,frog 45479,bird 45480,deer 45481,deer 45482,ship 45483,truck 45484,bird 45485,horse 45486,bird 45487,bird 45488,airplane 45489,bird 45490,truck 45491,truck 45492,deer 45493,ship 45494,bird 45495,automobile 45496,airplane 45497,airplane 45498,ship 45499,airplane 45500,dog 45501,deer 45502,frog 45503,truck 45504,automobile 45505,airplane 45506,horse 45507,automobile 45508,truck 45509,deer 45510,ship 45511,automobile 45512,truck 45513,dog 45514,bird 45515,automobile 45516,ship 45517,ship 45518,deer 45519,automobile 45520,dog 45521,frog 45522,bird 45523,ship 45524,bird 45525,dog 45526,airplane 45527,bird 45528,truck 45529,deer 45530,ship 45531,truck 45532,airplane 45533,frog 45534,truck 45535,deer 45536,automobile 45537,truck 45538,cat 45539,deer 45540,deer 45541,cat 45542,deer 45543,horse 45544,automobile 45545,airplane 45546,frog 45547,horse 45548,ship 45549,cat 45550,truck 45551,horse 45552,ship 45553,ship 45554,horse 45555,deer 45556,horse 45557,automobile 45558,airplane 45559,dog 45560,horse 45561,deer 45562,airplane 45563,ship 45564,horse 45565,dog 45566,bird 45567,frog 45568,truck 45569,automobile 45570,deer 45571,deer 45572,ship 45573,deer 45574,horse 45575,frog 45576,horse 45577,airplane 45578,truck 45579,deer 45580,cat 45581,dog 45582,airplane 45583,automobile 45584,automobile 45585,dog 45586,airplane 45587,deer 45588,truck 45589,dog 45590,horse 45591,horse 45592,airplane 45593,deer 45594,cat 45595,bird 45596,deer 45597,bird 45598,cat 45599,cat 45600,truck 45601,deer 45602,truck 45603,airplane 45604,truck 45605,horse 45606,horse 45607,frog 45608,airplane 45609,deer 45610,deer 45611,horse 45612,bird 45613,bird 45614,truck 45615,deer 45616,truck 45617,cat 45618,deer 45619,dog 45620,automobile 45621,cat 45622,frog 45623,dog 45624,automobile 45625,frog 45626,ship 45627,deer 45628,deer 45629,truck 45630,ship 45631,horse 45632,dog 45633,frog 45634,airplane 45635,airplane 45636,cat 45637,dog 45638,cat 45639,bird 45640,ship 45641,bird 45642,deer 45643,airplane 45644,automobile 45645,bird 45646,truck 45647,cat 45648,truck 45649,automobile 45650,horse 45651,dog 45652,deer 45653,truck 45654,cat 45655,frog 45656,dog 45657,bird 45658,automobile 45659,dog 45660,airplane 45661,automobile 45662,horse 45663,frog 45664,bird 45665,ship 45666,airplane 45667,airplane 45668,airplane 45669,ship 45670,frog 45671,deer 45672,cat 45673,cat 45674,airplane 45675,bird 45676,cat 45677,frog 45678,cat 45679,deer 45680,frog 45681,dog 45682,truck 45683,airplane 45684,dog 45685,truck 45686,ship 45687,deer 45688,horse 45689,truck 45690,bird 45691,horse 45692,cat 45693,airplane 45694,deer 45695,dog 45696,deer 45697,automobile 45698,airplane 45699,cat 45700,horse 45701,dog 45702,ship 45703,dog 45704,truck 45705,horse 45706,truck 45707,ship 45708,cat 45709,dog 45710,cat 45711,horse 45712,cat 45713,horse 45714,dog 45715,dog 45716,frog 45717,automobile 45718,automobile 45719,cat 45720,frog 45721,cat 45722,cat 45723,bird 45724,ship 45725,horse 45726,truck 45727,ship 45728,horse 45729,frog 45730,horse 45731,dog 45732,horse 45733,horse 45734,truck 45735,bird 45736,frog 45737,truck 45738,dog 45739,horse 45740,frog 45741,frog 45742,ship 45743,ship 45744,truck 45745,deer 45746,horse 45747,deer 45748,airplane 45749,truck 45750,automobile 45751,airplane 45752,airplane 45753,dog 45754,deer 45755,horse 45756,automobile 45757,ship 45758,cat 45759,airplane 45760,bird 45761,dog 45762,cat 45763,airplane 45764,horse 45765,ship 45766,ship 45767,automobile 45768,truck 45769,frog 45770,airplane 45771,deer 45772,ship 45773,cat 45774,automobile 45775,airplane 45776,airplane 45777,cat 45778,truck 45779,deer 45780,deer 45781,deer 45782,horse 45783,truck 45784,ship 45785,dog 45786,dog 45787,bird 45788,ship 45789,deer 45790,dog 45791,horse 45792,dog 45793,automobile 45794,deer 45795,truck 45796,deer 45797,cat 45798,truck 45799,ship 45800,frog 45801,dog 45802,frog 45803,frog 45804,ship 45805,ship 45806,dog 45807,airplane 45808,frog 45809,airplane 45810,horse 45811,ship 45812,frog 45813,deer 45814,truck 45815,deer 45816,deer 45817,horse 45818,cat 45819,truck 45820,dog 45821,dog 45822,frog 45823,deer 45824,ship 45825,truck 45826,deer 45827,horse 45828,horse 45829,dog 45830,deer 45831,deer 45832,frog 45833,cat 45834,deer 45835,automobile 45836,airplane 45837,cat 45838,dog 45839,frog 45840,truck 45841,dog 45842,bird 45843,frog 45844,horse 45845,airplane 45846,ship 45847,automobile 45848,deer 45849,airplane 45850,truck 45851,dog 45852,deer 45853,ship 45854,deer 45855,ship 45856,bird 45857,truck 45858,deer 45859,ship 45860,deer 45861,frog 45862,frog 45863,deer 45864,deer 45865,frog 45866,automobile 45867,cat 45868,bird 45869,frog 45870,bird 45871,deer 45872,bird 45873,airplane 45874,deer 45875,truck 45876,bird 45877,bird 45878,cat 45879,cat 45880,dog 45881,deer 45882,cat 45883,frog 45884,airplane 45885,cat 45886,automobile 45887,airplane 45888,airplane 45889,frog 45890,frog 45891,cat 45892,ship 45893,airplane 45894,automobile 45895,truck 45896,horse 45897,cat 45898,deer 45899,cat 45900,frog 45901,bird 45902,cat 45903,cat 45904,frog 45905,airplane 45906,frog 45907,airplane 45908,frog 45909,automobile 45910,airplane 45911,horse 45912,ship 45913,cat 45914,truck 45915,cat 45916,dog 45917,ship 45918,airplane 45919,cat 45920,deer 45921,dog 45922,ship 45923,ship 45924,deer 45925,cat 45926,horse 45927,deer 45928,ship 45929,truck 45930,deer 45931,airplane 45932,cat 45933,cat 45934,frog 45935,dog 45936,bird 45937,ship 45938,cat 45939,bird 45940,bird 45941,airplane 45942,cat 45943,bird 45944,bird 45945,automobile 45946,bird 45947,cat 45948,horse 45949,ship 45950,dog 45951,bird 45952,airplane 45953,truck 45954,cat 45955,frog 45956,truck 45957,ship 45958,dog 45959,ship 45960,cat 45961,ship 45962,cat 45963,cat 45964,airplane 45965,airplane 45966,bird 45967,truck 45968,airplane 45969,airplane 45970,truck 45971,frog 45972,ship 45973,ship 45974,ship 45975,deer 45976,truck 45977,truck 45978,airplane 45979,cat 45980,airplane 45981,frog 45982,horse 45983,ship 45984,cat 45985,airplane 45986,frog 45987,truck 45988,bird 45989,dog 45990,truck 45991,airplane 45992,dog 45993,automobile 45994,truck 45995,automobile 45996,frog 45997,cat 45998,bird 45999,horse 46000,horse 46001,truck 46002,deer 46003,frog 46004,frog 46005,deer 46006,dog 46007,cat 46008,airplane 46009,dog 46010,dog 46011,deer 46012,truck 46013,bird 46014,cat 46015,truck 46016,airplane 46017,automobile 46018,bird 46019,dog 46020,dog 46021,deer 46022,frog 46023,automobile 46024,ship 46025,frog 46026,bird 46027,airplane 46028,bird 46029,ship 46030,frog 46031,automobile 46032,truck 46033,automobile 46034,automobile 46035,frog 46036,bird 46037,deer 46038,frog 46039,bird 46040,frog 46041,dog 46042,ship 46043,truck 46044,truck 46045,truck 46046,cat 46047,bird 46048,dog 46049,cat 46050,bird 46051,cat 46052,cat 46053,deer 46054,bird 46055,frog 46056,bird 46057,ship 46058,horse 46059,horse 46060,horse 46061,cat 46062,airplane 46063,dog 46064,dog 46065,bird 46066,truck 46067,dog 46068,ship 46069,airplane 46070,frog 46071,cat 46072,frog 46073,frog 46074,truck 46075,bird 46076,frog 46077,bird 46078,frog 46079,cat 46080,automobile 46081,truck 46082,truck 46083,frog 46084,cat 46085,truck 46086,airplane 46087,horse 46088,horse 46089,bird 46090,frog 46091,cat 46092,truck 46093,horse 46094,automobile 46095,airplane 46096,ship 46097,frog 46098,ship 46099,deer 46100,truck 46101,frog 46102,truck 46103,cat 46104,automobile 46105,ship 46106,frog 46107,frog 46108,bird 46109,dog 46110,deer 46111,dog 46112,cat 46113,horse 46114,deer 46115,truck 46116,frog 46117,frog 46118,dog 46119,airplane 46120,frog 46121,cat 46122,truck 46123,horse 46124,truck 46125,dog 46126,truck 46127,airplane 46128,horse 46129,dog 46130,airplane 46131,ship 46132,dog 46133,frog 46134,cat 46135,deer 46136,ship 46137,frog 46138,automobile 46139,bird 46140,airplane 46141,ship 46142,deer 46143,deer 46144,dog 46145,deer 46146,truck 46147,deer 46148,frog 46149,dog 46150,airplane 46151,truck 46152,deer 46153,deer 46154,cat 46155,ship 46156,dog 46157,airplane 46158,dog 46159,automobile 46160,bird 46161,cat 46162,ship 46163,truck 46164,bird 46165,frog 46166,deer 46167,deer 46168,dog 46169,dog 46170,automobile 46171,truck 46172,automobile 46173,airplane 46174,bird 46175,automobile 46176,deer 46177,deer 46178,automobile 46179,horse 46180,dog 46181,airplane 46182,automobile 46183,frog 46184,horse 46185,cat 46186,horse 46187,cat 46188,deer 46189,deer 46190,ship 46191,deer 46192,ship 46193,ship 46194,deer 46195,truck 46196,airplane 46197,airplane 46198,cat 46199,horse 46200,horse 46201,bird 46202,airplane 46203,ship 46204,dog 46205,cat 46206,deer 46207,frog 46208,ship 46209,frog 46210,deer 46211,deer 46212,truck 46213,truck 46214,horse 46215,dog 46216,truck 46217,ship 46218,truck 46219,bird 46220,cat 46221,bird 46222,airplane 46223,deer 46224,automobile 46225,frog 46226,horse 46227,automobile 46228,frog 46229,horse 46230,dog 46231,airplane 46232,horse 46233,airplane 46234,frog 46235,automobile 46236,ship 46237,ship 46238,dog 46239,automobile 46240,deer 46241,automobile 46242,cat 46243,frog 46244,dog 46245,bird 46246,cat 46247,airplane 46248,deer 46249,dog 46250,dog 46251,dog 46252,frog 46253,deer 46254,automobile 46255,frog 46256,automobile 46257,ship 46258,dog 46259,dog 46260,automobile 46261,frog 46262,frog 46263,ship 46264,deer 46265,dog 46266,deer 46267,truck 46268,cat 46269,deer 46270,truck 46271,truck 46272,cat 46273,cat 46274,automobile 46275,ship 46276,bird 46277,frog 46278,dog 46279,airplane 46280,deer 46281,deer 46282,truck 46283,frog 46284,bird 46285,truck 46286,horse 46287,horse 46288,truck 46289,automobile 46290,dog 46291,airplane 46292,horse 46293,bird 46294,frog 46295,cat 46296,deer 46297,cat 46298,automobile 46299,frog 46300,truck 46301,truck 46302,airplane 46303,truck 46304,truck 46305,truck 46306,deer 46307,bird 46308,ship 46309,truck 46310,ship 46311,deer 46312,frog 46313,deer 46314,airplane 46315,truck 46316,dog 46317,deer 46318,deer 46319,cat 46320,horse 46321,cat 46322,ship 46323,frog 46324,bird 46325,deer 46326,deer 46327,truck 46328,truck 46329,dog 46330,frog 46331,horse 46332,deer 46333,deer 46334,bird 46335,frog 46336,airplane 46337,horse 46338,dog 46339,horse 46340,frog 46341,deer 46342,deer 46343,dog 46344,horse 46345,deer 46346,cat 46347,airplane 46348,deer 46349,dog 46350,dog 46351,dog 46352,deer 46353,airplane 46354,airplane 46355,horse 46356,frog 46357,bird 46358,frog 46359,deer 46360,cat 46361,horse 46362,dog 46363,cat 46364,horse 46365,bird 46366,frog 46367,truck 46368,deer 46369,deer 46370,automobile 46371,automobile 46372,truck 46373,horse 46374,deer 46375,airplane 46376,deer 46377,horse 46378,horse 46379,truck 46380,cat 46381,dog 46382,deer 46383,cat 46384,dog 46385,ship 46386,truck 46387,horse 46388,frog 46389,airplane 46390,deer 46391,deer 46392,cat 46393,dog 46394,truck 46395,bird 46396,automobile 46397,airplane 46398,cat 46399,cat 46400,ship 46401,cat 46402,frog 46403,bird 46404,deer 46405,cat 46406,ship 46407,frog 46408,dog 46409,bird 46410,dog 46411,dog 46412,truck 46413,ship 46414,airplane 46415,dog 46416,deer 46417,ship 46418,frog 46419,horse 46420,deer 46421,ship 46422,truck 46423,cat 46424,ship 46425,truck 46426,deer 46427,ship 46428,ship 46429,horse 46430,frog 46431,airplane 46432,frog 46433,horse 46434,ship 46435,dog 46436,bird 46437,horse 46438,cat 46439,airplane 46440,airplane 46441,dog 46442,automobile 46443,cat 46444,dog 46445,horse 46446,horse 46447,cat 46448,ship 46449,frog 46450,deer 46451,deer 46452,truck 46453,dog 46454,dog 46455,truck 46456,cat 46457,bird 46458,deer 46459,deer 46460,dog 46461,horse 46462,deer 46463,horse 46464,ship 46465,cat 46466,airplane 46467,dog 46468,horse 46469,bird 46470,ship 46471,bird 46472,airplane 46473,frog 46474,frog 46475,deer 46476,frog 46477,ship 46478,horse 46479,deer 46480,frog 46481,automobile 46482,frog 46483,horse 46484,deer 46485,horse 46486,bird 46487,airplane 46488,deer 46489,frog 46490,ship 46491,automobile 46492,dog 46493,airplane 46494,dog 46495,truck 46496,automobile 46497,dog 46498,deer 46499,automobile 46500,ship 46501,horse 46502,bird 46503,cat 46504,ship 46505,automobile 46506,deer 46507,horse 46508,bird 46509,frog 46510,automobile 46511,cat 46512,truck 46513,ship 46514,dog 46515,truck 46516,truck 46517,cat 46518,horse 46519,frog 46520,frog 46521,dog 46522,deer 46523,deer 46524,deer 46525,cat 46526,automobile 46527,airplane 46528,automobile 46529,bird 46530,deer 46531,frog 46532,ship 46533,frog 46534,bird 46535,ship 46536,dog 46537,airplane 46538,dog 46539,horse 46540,deer 46541,frog 46542,airplane 46543,frog 46544,frog 46545,frog 46546,airplane 46547,automobile 46548,horse 46549,frog 46550,bird 46551,airplane 46552,truck 46553,horse 46554,deer 46555,airplane 46556,deer 46557,bird 46558,ship 46559,deer 46560,ship 46561,cat 46562,deer 46563,bird 46564,ship 46565,horse 46566,deer 46567,dog 46568,automobile 46569,truck 46570,horse 46571,deer 46572,frog 46573,frog 46574,cat 46575,bird 46576,dog 46577,ship 46578,airplane 46579,frog 46580,frog 46581,bird 46582,dog 46583,cat 46584,frog 46585,ship 46586,horse 46587,airplane 46588,dog 46589,automobile 46590,ship 46591,automobile 46592,ship 46593,truck 46594,automobile 46595,horse 46596,deer 46597,deer 46598,ship 46599,dog 46600,truck 46601,airplane 46602,ship 46603,cat 46604,frog 46605,horse 46606,frog 46607,cat 46608,cat 46609,deer 46610,ship 46611,horse 46612,airplane 46613,bird 46614,bird 46615,dog 46616,frog 46617,airplane 46618,dog 46619,cat 46620,frog 46621,automobile 46622,dog 46623,automobile 46624,deer 46625,frog 46626,frog 46627,automobile 46628,bird 46629,bird 46630,cat 46631,deer 46632,frog 46633,truck 46634,automobile 46635,airplane 46636,deer 46637,automobile 46638,airplane 46639,dog 46640,horse 46641,frog 46642,cat 46643,deer 46644,frog 46645,deer 46646,cat 46647,truck 46648,deer 46649,deer 46650,cat 46651,cat 46652,airplane 46653,dog 46654,airplane 46655,dog 46656,cat 46657,cat 46658,truck 46659,airplane 46660,airplane 46661,bird 46662,bird 46663,cat 46664,airplane 46665,deer 46666,truck 46667,horse 46668,dog 46669,frog 46670,cat 46671,cat 46672,airplane 46673,bird 46674,airplane 46675,cat 46676,frog 46677,horse 46678,deer 46679,airplane 46680,frog 46681,truck 46682,horse 46683,deer 46684,horse 46685,frog 46686,horse 46687,bird 46688,truck 46689,bird 46690,airplane 46691,bird 46692,deer 46693,deer 46694,frog 46695,airplane 46696,cat 46697,frog 46698,truck 46699,horse 46700,bird 46701,bird 46702,airplane 46703,dog 46704,deer 46705,truck 46706,truck 46707,bird 46708,airplane 46709,frog 46710,horse 46711,dog 46712,airplane 46713,ship 46714,deer 46715,cat 46716,horse 46717,cat 46718,ship 46719,cat 46720,frog 46721,bird 46722,horse 46723,truck 46724,deer 46725,airplane 46726,frog 46727,airplane 46728,bird 46729,automobile 46730,airplane 46731,horse 46732,truck 46733,automobile 46734,bird 46735,dog 46736,airplane 46737,horse 46738,horse 46739,bird 46740,cat 46741,deer 46742,dog 46743,cat 46744,automobile 46745,ship 46746,automobile 46747,automobile 46748,ship 46749,bird 46750,horse 46751,truck 46752,bird 46753,deer 46754,truck 46755,bird 46756,automobile 46757,truck 46758,ship 46759,truck 46760,dog 46761,truck 46762,frog 46763,truck 46764,ship 46765,frog 46766,horse 46767,airplane 46768,dog 46769,deer 46770,horse 46771,bird 46772,automobile 46773,deer 46774,deer 46775,cat 46776,cat 46777,bird 46778,deer 46779,cat 46780,frog 46781,cat 46782,cat 46783,airplane 46784,frog 46785,deer 46786,ship 46787,frog 46788,horse 46789,deer 46790,frog 46791,ship 46792,truck 46793,ship 46794,truck 46795,cat 46796,frog 46797,cat 46798,automobile 46799,dog 46800,ship 46801,deer 46802,deer 46803,ship 46804,truck 46805,horse 46806,bird 46807,dog 46808,airplane 46809,deer 46810,bird 46811,cat 46812,cat 46813,truck 46814,automobile 46815,truck 46816,deer 46817,truck 46818,cat 46819,truck 46820,truck 46821,cat 46822,airplane 46823,deer 46824,ship 46825,bird 46826,horse 46827,bird 46828,automobile 46829,automobile 46830,airplane 46831,dog 46832,truck 46833,frog 46834,cat 46835,dog 46836,cat 46837,frog 46838,frog 46839,airplane 46840,truck 46841,cat 46842,truck 46843,deer 46844,automobile 46845,bird 46846,dog 46847,bird 46848,frog 46849,truck 46850,bird 46851,ship 46852,ship 46853,dog 46854,airplane 46855,bird 46856,deer 46857,automobile 46858,horse 46859,truck 46860,airplane 46861,cat 46862,cat 46863,cat 46864,horse 46865,frog 46866,bird 46867,horse 46868,horse 46869,deer 46870,cat 46871,ship 46872,dog 46873,bird 46874,dog 46875,dog 46876,airplane 46877,deer 46878,truck 46879,airplane 46880,cat 46881,horse 46882,frog 46883,cat 46884,bird 46885,cat 46886,deer 46887,truck 46888,airplane 46889,truck 46890,cat 46891,truck 46892,airplane 46893,deer 46894,deer 46895,cat 46896,truck 46897,truck 46898,deer 46899,ship 46900,deer 46901,dog 46902,automobile 46903,ship 46904,automobile 46905,dog 46906,truck 46907,truck 46908,deer 46909,cat 46910,bird 46911,truck 46912,automobile 46913,dog 46914,truck 46915,bird 46916,deer 46917,frog 46918,dog 46919,ship 46920,deer 46921,automobile 46922,deer 46923,deer 46924,cat 46925,dog 46926,deer 46927,cat 46928,automobile 46929,dog 46930,airplane 46931,deer 46932,horse 46933,horse 46934,ship 46935,bird 46936,automobile 46937,deer 46938,dog 46939,dog 46940,horse 46941,cat 46942,cat 46943,horse 46944,dog 46945,cat 46946,cat 46947,deer 46948,deer 46949,deer 46950,airplane 46951,deer 46952,dog 46953,airplane 46954,dog 46955,bird 46956,cat 46957,bird 46958,airplane 46959,cat 46960,dog 46961,cat 46962,deer 46963,deer 46964,frog 46965,dog 46966,automobile 46967,frog 46968,cat 46969,horse 46970,cat 46971,cat 46972,bird 46973,automobile 46974,frog 46975,truck 46976,frog 46977,frog 46978,truck 46979,airplane 46980,dog 46981,dog 46982,truck 46983,airplane 46984,deer 46985,ship 46986,truck 46987,deer 46988,frog 46989,automobile 46990,frog 46991,dog 46992,airplane 46993,ship 46994,cat 46995,truck 46996,deer 46997,cat 46998,cat 46999,truck 47000,deer 47001,airplane 47002,bird 47003,automobile 47004,automobile 47005,frog 47006,dog 47007,horse 47008,ship 47009,frog 47010,horse 47011,ship 47012,automobile 47013,truck 47014,ship 47015,horse 47016,ship 47017,deer 47018,cat 47019,truck 47020,frog 47021,dog 47022,cat 47023,ship 47024,dog 47025,truck 47026,cat 47027,truck 47028,airplane 47029,dog 47030,ship 47031,bird 47032,truck 47033,dog 47034,bird 47035,ship 47036,ship 47037,dog 47038,bird 47039,airplane 47040,automobile 47041,automobile 47042,ship 47043,cat 47044,bird 47045,dog 47046,truck 47047,ship 47048,horse 47049,airplane 47050,ship 47051,truck 47052,frog 47053,cat 47054,cat 47055,cat 47056,dog 47057,horse 47058,ship 47059,frog 47060,automobile 47061,frog 47062,airplane 47063,cat 47064,deer 47065,airplane 47066,bird 47067,airplane 47068,frog 47069,automobile 47070,cat 47071,dog 47072,deer 47073,ship 47074,deer 47075,deer 47076,dog 47077,cat 47078,horse 47079,airplane 47080,dog 47081,bird 47082,bird 47083,cat 47084,frog 47085,dog 47086,bird 47087,ship 47088,cat 47089,truck 47090,horse 47091,deer 47092,bird 47093,bird 47094,dog 47095,airplane 47096,cat 47097,airplane 47098,deer 47099,cat 47100,bird 47101,horse 47102,horse 47103,cat 47104,dog 47105,horse 47106,horse 47107,cat 47108,frog 47109,bird 47110,airplane 47111,automobile 47112,bird 47113,deer 47114,airplane 47115,automobile 47116,automobile 47117,bird 47118,automobile 47119,airplane 47120,truck 47121,deer 47122,horse 47123,airplane 47124,deer 47125,dog 47126,frog 47127,truck 47128,airplane 47129,automobile 47130,frog 47131,frog 47132,frog 47133,airplane 47134,bird 47135,frog 47136,cat 47137,ship 47138,cat 47139,truck 47140,frog 47141,dog 47142,deer 47143,horse 47144,deer 47145,frog 47146,airplane 47147,truck 47148,dog 47149,dog 47150,truck 47151,automobile 47152,deer 47153,cat 47154,automobile 47155,deer 47156,automobile 47157,ship 47158,ship 47159,cat 47160,frog 47161,dog 47162,automobile 47163,airplane 47164,truck 47165,deer 47166,cat 47167,deer 47168,cat 47169,horse 47170,truck 47171,dog 47172,truck 47173,deer 47174,horse 47175,frog 47176,airplane 47177,ship 47178,truck 47179,frog 47180,ship 47181,cat 47182,ship 47183,horse 47184,truck 47185,deer 47186,frog 47187,horse 47188,dog 47189,ship 47190,cat 47191,frog 47192,dog 47193,cat 47194,dog 47195,truck 47196,airplane 47197,airplane 47198,ship 47199,bird 47200,deer 47201,dog 47202,horse 47203,ship 47204,deer 47205,bird 47206,deer 47207,truck 47208,automobile 47209,dog 47210,automobile 47211,cat 47212,bird 47213,airplane 47214,frog 47215,truck 47216,dog 47217,dog 47218,dog 47219,automobile 47220,bird 47221,automobile 47222,bird 47223,dog 47224,cat 47225,truck 47226,ship 47227,frog 47228,dog 47229,ship 47230,frog 47231,deer 47232,dog 47233,truck 47234,truck 47235,deer 47236,dog 47237,deer 47238,deer 47239,frog 47240,cat 47241,cat 47242,dog 47243,cat 47244,ship 47245,automobile 47246,bird 47247,bird 47248,horse 47249,deer 47250,automobile 47251,horse 47252,deer 47253,automobile 47254,horse 47255,cat 47256,horse 47257,horse 47258,horse 47259,cat 47260,frog 47261,truck 47262,dog 47263,truck 47264,deer 47265,cat 47266,cat 47267,horse 47268,airplane 47269,dog 47270,ship 47271,dog 47272,cat 47273,dog 47274,horse 47275,cat 47276,cat 47277,cat 47278,horse 47279,deer 47280,automobile 47281,dog 47282,truck 47283,deer 47284,airplane 47285,horse 47286,dog 47287,airplane 47288,truck 47289,truck 47290,frog 47291,deer 47292,ship 47293,automobile 47294,automobile 47295,bird 47296,frog 47297,truck 47298,cat 47299,horse 47300,cat 47301,ship 47302,cat 47303,deer 47304,ship 47305,dog 47306,dog 47307,airplane 47308,airplane 47309,truck 47310,horse 47311,horse 47312,cat 47313,cat 47314,deer 47315,bird 47316,truck 47317,horse 47318,dog 47319,deer 47320,frog 47321,cat 47322,horse 47323,dog 47324,truck 47325,cat 47326,bird 47327,truck 47328,truck 47329,truck 47330,truck 47331,dog 47332,bird 47333,truck 47334,cat 47335,cat 47336,frog 47337,deer 47338,horse 47339,frog 47340,horse 47341,ship 47342,automobile 47343,dog 47344,automobile 47345,airplane 47346,dog 47347,bird 47348,automobile 47349,deer 47350,truck 47351,dog 47352,cat 47353,deer 47354,horse 47355,cat 47356,deer 47357,frog 47358,dog 47359,airplane 47360,horse 47361,airplane 47362,cat 47363,horse 47364,dog 47365,dog 47366,frog 47367,deer 47368,airplane 47369,truck 47370,bird 47371,bird 47372,dog 47373,cat 47374,truck 47375,airplane 47376,airplane 47377,cat 47378,bird 47379,cat 47380,automobile 47381,airplane 47382,frog 47383,cat 47384,cat 47385,dog 47386,frog 47387,ship 47388,truck 47389,airplane 47390,truck 47391,frog 47392,dog 47393,dog 47394,horse 47395,bird 47396,horse 47397,deer 47398,automobile 47399,deer 47400,frog 47401,bird 47402,cat 47403,deer 47404,ship 47405,truck 47406,truck 47407,deer 47408,dog 47409,cat 47410,airplane 47411,deer 47412,frog 47413,dog 47414,cat 47415,airplane 47416,deer 47417,dog 47418,airplane 47419,ship 47420,airplane 47421,horse 47422,airplane 47423,horse 47424,deer 47425,dog 47426,cat 47427,horse 47428,cat 47429,ship 47430,truck 47431,deer 47432,bird 47433,horse 47434,horse 47435,dog 47436,deer 47437,airplane 47438,bird 47439,bird 47440,truck 47441,cat 47442,horse 47443,truck 47444,frog 47445,frog 47446,horse 47447,automobile 47448,cat 47449,dog 47450,deer 47451,ship 47452,airplane 47453,horse 47454,horse 47455,dog 47456,frog 47457,truck 47458,dog 47459,airplane 47460,bird 47461,cat 47462,cat 47463,cat 47464,deer 47465,cat 47466,airplane 47467,bird 47468,bird 47469,ship 47470,cat 47471,airplane 47472,frog 47473,horse 47474,frog 47475,deer 47476,horse 47477,bird 47478,dog 47479,ship 47480,bird 47481,frog 47482,bird 47483,frog 47484,automobile 47485,ship 47486,horse 47487,bird 47488,airplane 47489,frog 47490,horse 47491,ship 47492,airplane 47493,ship 47494,truck 47495,airplane 47496,automobile 47497,dog 47498,truck 47499,dog 47500,deer 47501,ship 47502,bird 47503,airplane 47504,airplane 47505,deer 47506,dog 47507,bird 47508,automobile 47509,frog 47510,deer 47511,truck 47512,dog 47513,automobile 47514,cat 47515,bird 47516,airplane 47517,deer 47518,cat 47519,frog 47520,deer 47521,deer 47522,cat 47523,deer 47524,deer 47525,frog 47526,airplane 47527,dog 47528,deer 47529,cat 47530,airplane 47531,ship 47532,frog 47533,airplane 47534,truck 47535,airplane 47536,frog 47537,frog 47538,ship 47539,truck 47540,bird 47541,deer 47542,deer 47543,ship 47544,horse 47545,frog 47546,deer 47547,ship 47548,cat 47549,automobile 47550,cat 47551,ship 47552,deer 47553,airplane 47554,deer 47555,cat 47556,horse 47557,cat 47558,truck 47559,dog 47560,airplane 47561,cat 47562,dog 47563,cat 47564,frog 47565,horse 47566,deer 47567,automobile 47568,truck 47569,horse 47570,horse 47571,deer 47572,cat 47573,truck 47574,cat 47575,frog 47576,deer 47577,deer 47578,ship 47579,bird 47580,deer 47581,truck 47582,truck 47583,truck 47584,airplane 47585,cat 47586,deer 47587,deer 47588,horse 47589,cat 47590,truck 47591,ship 47592,airplane 47593,frog 47594,frog 47595,truck 47596,ship 47597,truck 47598,ship 47599,cat 47600,deer 47601,cat 47602,automobile 47603,bird 47604,automobile 47605,bird 47606,truck 47607,bird 47608,dog 47609,truck 47610,ship 47611,dog 47612,cat 47613,frog 47614,truck 47615,cat 47616,automobile 47617,frog 47618,frog 47619,deer 47620,deer 47621,deer 47622,dog 47623,ship 47624,cat 47625,deer 47626,dog 47627,bird 47628,horse 47629,automobile 47630,dog 47631,frog 47632,airplane 47633,truck 47634,deer 47635,truck 47636,deer 47637,cat 47638,truck 47639,deer 47640,airplane 47641,bird 47642,horse 47643,automobile 47644,horse 47645,deer 47646,ship 47647,truck 47648,cat 47649,ship 47650,horse 47651,cat 47652,ship 47653,truck 47654,truck 47655,deer 47656,truck 47657,airplane 47658,bird 47659,deer 47660,dog 47661,cat 47662,dog 47663,ship 47664,deer 47665,airplane 47666,automobile 47667,cat 47668,truck 47669,deer 47670,deer 47671,bird 47672,ship 47673,cat 47674,truck 47675,airplane 47676,horse 47677,dog 47678,deer 47679,dog 47680,horse 47681,airplane 47682,cat 47683,airplane 47684,frog 47685,bird 47686,horse 47687,automobile 47688,ship 47689,dog 47690,deer 47691,airplane 47692,deer 47693,horse 47694,bird 47695,frog 47696,frog 47697,horse 47698,horse 47699,horse 47700,frog 47701,deer 47702,deer 47703,ship 47704,bird 47705,dog 47706,ship 47707,ship 47708,truck 47709,truck 47710,truck 47711,ship 47712,ship 47713,horse 47714,deer 47715,ship 47716,ship 47717,frog 47718,deer 47719,automobile 47720,bird 47721,truck 47722,dog 47723,horse 47724,automobile 47725,automobile 47726,deer 47727,frog 47728,cat 47729,frog 47730,frog 47731,horse 47732,automobile 47733,airplane 47734,dog 47735,bird 47736,truck 47737,cat 47738,deer 47739,dog 47740,horse 47741,frog 47742,automobile 47743,truck 47744,cat 47745,deer 47746,ship 47747,deer 47748,frog 47749,automobile 47750,deer 47751,airplane 47752,deer 47753,cat 47754,ship 47755,bird 47756,cat 47757,automobile 47758,horse 47759,cat 47760,ship 47761,dog 47762,bird 47763,airplane 47764,horse 47765,dog 47766,frog 47767,frog 47768,frog 47769,dog 47770,cat 47771,ship 47772,deer 47773,dog 47774,automobile 47775,cat 47776,automobile 47777,cat 47778,frog 47779,frog 47780,deer 47781,bird 47782,bird 47783,airplane 47784,truck 47785,ship 47786,airplane 47787,bird 47788,cat 47789,dog 47790,deer 47791,automobile 47792,cat 47793,horse 47794,truck 47795,airplane 47796,automobile 47797,ship 47798,automobile 47799,automobile 47800,frog 47801,truck 47802,truck 47803,ship 47804,cat 47805,bird 47806,frog 47807,horse 47808,frog 47809,frog 47810,frog 47811,cat 47812,dog 47813,truck 47814,cat 47815,frog 47816,cat 47817,truck 47818,deer 47819,bird 47820,cat 47821,deer 47822,ship 47823,automobile 47824,truck 47825,airplane 47826,deer 47827,ship 47828,cat 47829,horse 47830,deer 47831,ship 47832,frog 47833,ship 47834,ship 47835,frog 47836,bird 47837,bird 47838,truck 47839,cat 47840,bird 47841,ship 47842,airplane 47843,deer 47844,dog 47845,cat 47846,deer 47847,cat 47848,frog 47849,horse 47850,cat 47851,horse 47852,ship 47853,frog 47854,automobile 47855,frog 47856,ship 47857,cat 47858,ship 47859,deer 47860,truck 47861,cat 47862,truck 47863,frog 47864,automobile 47865,bird 47866,deer 47867,bird 47868,dog 47869,truck 47870,frog 47871,frog 47872,dog 47873,ship 47874,cat 47875,truck 47876,airplane 47877,airplane 47878,airplane 47879,deer 47880,truck 47881,deer 47882,cat 47883,horse 47884,deer 47885,horse 47886,bird 47887,deer 47888,ship 47889,horse 47890,truck 47891,bird 47892,bird 47893,airplane 47894,truck 47895,cat 47896,dog 47897,frog 47898,bird 47899,ship 47900,airplane 47901,truck 47902,dog 47903,deer 47904,truck 47905,frog 47906,bird 47907,frog 47908,cat 47909,deer 47910,frog 47911,airplane 47912,cat 47913,cat 47914,automobile 47915,deer 47916,truck 47917,frog 47918,airplane 47919,ship 47920,horse 47921,ship 47922,dog 47923,airplane 47924,frog 47925,dog 47926,frog 47927,ship 47928,deer 47929,bird 47930,automobile 47931,airplane 47932,cat 47933,horse 47934,truck 47935,cat 47936,automobile 47937,cat 47938,deer 47939,horse 47940,ship 47941,bird 47942,cat 47943,cat 47944,ship 47945,frog 47946,horse 47947,deer 47948,bird 47949,dog 47950,dog 47951,deer 47952,automobile 47953,automobile 47954,cat 47955,deer 47956,horse 47957,ship 47958,horse 47959,truck 47960,horse 47961,frog 47962,automobile 47963,ship 47964,cat 47965,dog 47966,frog 47967,cat 47968,truck 47969,dog 47970,deer 47971,deer 47972,deer 47973,deer 47974,frog 47975,airplane 47976,frog 47977,deer 47978,automobile 47979,automobile 47980,automobile 47981,cat 47982,bird 47983,ship 47984,automobile 47985,deer 47986,automobile 47987,bird 47988,horse 47989,horse 47990,horse 47991,horse 47992,cat 47993,frog 47994,cat 47995,truck 47996,cat 47997,cat 47998,ship 47999,cat 48000,deer 48001,ship 48002,automobile 48003,cat 48004,truck 48005,horse 48006,bird 48007,frog 48008,frog 48009,truck 48010,deer 48011,cat 48012,dog 48013,airplane 48014,cat 48015,horse 48016,frog 48017,frog 48018,frog 48019,truck 48020,ship 48021,bird 48022,dog 48023,deer 48024,dog 48025,airplane 48026,ship 48027,truck 48028,frog 48029,cat 48030,ship 48031,bird 48032,deer 48033,airplane 48034,cat 48035,horse 48036,truck 48037,cat 48038,truck 48039,frog 48040,frog 48041,cat 48042,airplane 48043,dog 48044,ship 48045,dog 48046,dog 48047,dog 48048,deer 48049,horse 48050,bird 48051,bird 48052,deer 48053,truck 48054,dog 48055,deer 48056,automobile 48057,horse 48058,truck 48059,dog 48060,automobile 48061,bird 48062,ship 48063,frog 48064,horse 48065,truck 48066,deer 48067,frog 48068,cat 48069,ship 48070,frog 48071,automobile 48072,bird 48073,horse 48074,horse 48075,ship 48076,dog 48077,dog 48078,frog 48079,horse 48080,dog 48081,dog 48082,automobile 48083,truck 48084,bird 48085,truck 48086,dog 48087,automobile 48088,truck 48089,truck 48090,cat 48091,truck 48092,ship 48093,bird 48094,airplane 48095,frog 48096,bird 48097,cat 48098,horse 48099,truck 48100,frog 48101,truck 48102,cat 48103,dog 48104,automobile 48105,dog 48106,frog 48107,bird 48108,frog 48109,bird 48110,automobile 48111,automobile 48112,ship 48113,deer 48114,airplane 48115,dog 48116,bird 48117,deer 48118,truck 48119,horse 48120,deer 48121,airplane 48122,airplane 48123,dog 48124,cat 48125,cat 48126,horse 48127,truck 48128,airplane 48129,dog 48130,ship 48131,dog 48132,automobile 48133,frog 48134,frog 48135,deer 48136,dog 48137,frog 48138,cat 48139,ship 48140,truck 48141,airplane 48142,horse 48143,dog 48144,horse 48145,automobile 48146,airplane 48147,automobile 48148,truck 48149,truck 48150,deer 48151,frog 48152,cat 48153,bird 48154,horse 48155,airplane 48156,airplane 48157,ship 48158,deer 48159,ship 48160,horse 48161,truck 48162,horse 48163,frog 48164,airplane 48165,truck 48166,frog 48167,deer 48168,cat 48169,automobile 48170,deer 48171,frog 48172,automobile 48173,frog 48174,deer 48175,dog 48176,deer 48177,frog 48178,truck 48179,truck 48180,airplane 48181,ship 48182,airplane 48183,dog 48184,automobile 48185,horse 48186,truck 48187,bird 48188,automobile 48189,deer 48190,dog 48191,airplane 48192,deer 48193,deer 48194,automobile 48195,truck 48196,frog 48197,automobile 48198,frog 48199,dog 48200,frog 48201,deer 48202,frog 48203,deer 48204,deer 48205,ship 48206,bird 48207,deer 48208,airplane 48209,cat 48210,ship 48211,dog 48212,bird 48213,frog 48214,dog 48215,dog 48216,horse 48217,truck 48218,deer 48219,deer 48220,deer 48221,frog 48222,horse 48223,ship 48224,ship 48225,truck 48226,airplane 48227,horse 48228,ship 48229,cat 48230,frog 48231,truck 48232,airplane 48233,airplane 48234,dog 48235,deer 48236,truck 48237,bird 48238,airplane 48239,deer 48240,dog 48241,airplane 48242,dog 48243,truck 48244,frog 48245,automobile 48246,truck 48247,ship 48248,cat 48249,cat 48250,truck 48251,frog 48252,truck 48253,truck 48254,ship 48255,frog 48256,airplane 48257,bird 48258,truck 48259,bird 48260,bird 48261,automobile 48262,dog 48263,airplane 48264,cat 48265,dog 48266,airplane 48267,frog 48268,horse 48269,frog 48270,cat 48271,horse 48272,horse 48273,bird 48274,dog 48275,cat 48276,dog 48277,horse 48278,bird 48279,bird 48280,dog 48281,truck 48282,ship 48283,bird 48284,dog 48285,truck 48286,cat 48287,airplane 48288,dog 48289,automobile 48290,horse 48291,deer 48292,deer 48293,dog 48294,horse 48295,automobile 48296,airplane 48297,deer 48298,truck 48299,cat 48300,dog 48301,frog 48302,ship 48303,frog 48304,frog 48305,cat 48306,horse 48307,bird 48308,airplane 48309,ship 48310,airplane 48311,ship 48312,airplane 48313,bird 48314,truck 48315,bird 48316,frog 48317,bird 48318,automobile 48319,ship 48320,frog 48321,bird 48322,frog 48323,airplane 48324,dog 48325,ship 48326,truck 48327,ship 48328,dog 48329,airplane 48330,deer 48331,truck 48332,frog 48333,dog 48334,cat 48335,cat 48336,deer 48337,frog 48338,bird 48339,automobile 48340,bird 48341,cat 48342,airplane 48343,frog 48344,automobile 48345,airplane 48346,bird 48347,truck 48348,automobile 48349,cat 48350,deer 48351,cat 48352,cat 48353,dog 48354,bird 48355,frog 48356,deer 48357,horse 48358,ship 48359,horse 48360,cat 48361,horse 48362,frog 48363,frog 48364,bird 48365,horse 48366,ship 48367,frog 48368,automobile 48369,frog 48370,dog 48371,deer 48372,horse 48373,frog 48374,frog 48375,ship 48376,dog 48377,horse 48378,cat 48379,cat 48380,deer 48381,frog 48382,horse 48383,deer 48384,deer 48385,airplane 48386,truck 48387,cat 48388,frog 48389,airplane 48390,horse 48391,deer 48392,deer 48393,ship 48394,horse 48395,cat 48396,deer 48397,automobile 48398,truck 48399,cat 48400,cat 48401,automobile 48402,truck 48403,cat 48404,ship 48405,deer 48406,bird 48407,deer 48408,cat 48409,airplane 48410,cat 48411,deer 48412,airplane 48413,deer 48414,airplane 48415,deer 48416,airplane 48417,frog 48418,bird 48419,bird 48420,ship 48421,horse 48422,automobile 48423,airplane 48424,airplane 48425,truck 48426,cat 48427,cat 48428,deer 48429,frog 48430,ship 48431,bird 48432,horse 48433,horse 48434,truck 48435,cat 48436,ship 48437,frog 48438,truck 48439,bird 48440,truck 48441,cat 48442,cat 48443,deer 48444,airplane 48445,cat 48446,deer 48447,airplane 48448,frog 48449,ship 48450,cat 48451,cat 48452,cat 48453,cat 48454,dog 48455,truck 48456,cat 48457,dog 48458,automobile 48459,dog 48460,cat 48461,horse 48462,automobile 48463,cat 48464,airplane 48465,automobile 48466,horse 48467,cat 48468,truck 48469,dog 48470,truck 48471,cat 48472,deer 48473,automobile 48474,bird 48475,airplane 48476,frog 48477,automobile 48478,cat 48479,bird 48480,dog 48481,cat 48482,truck 48483,frog 48484,ship 48485,truck 48486,horse 48487,bird 48488,airplane 48489,horse 48490,cat 48491,truck 48492,truck 48493,bird 48494,automobile 48495,horse 48496,frog 48497,deer 48498,horse 48499,truck 48500,deer 48501,dog 48502,bird 48503,ship 48504,dog 48505,automobile 48506,cat 48507,bird 48508,automobile 48509,dog 48510,bird 48511,horse 48512,deer 48513,frog 48514,horse 48515,dog 48516,airplane 48517,bird 48518,deer 48519,airplane 48520,bird 48521,cat 48522,dog 48523,truck 48524,automobile 48525,frog 48526,cat 48527,deer 48528,ship 48529,airplane 48530,truck 48531,cat 48532,deer 48533,truck 48534,cat 48535,automobile 48536,automobile 48537,ship 48538,horse 48539,ship 48540,bird 48541,bird 48542,ship 48543,deer 48544,horse 48545,cat 48546,deer 48547,ship 48548,ship 48549,automobile 48550,cat 48551,frog 48552,deer 48553,cat 48554,ship 48555,cat 48556,automobile 48557,truck 48558,truck 48559,automobile 48560,deer 48561,deer 48562,truck 48563,airplane 48564,automobile 48565,deer 48566,frog 48567,dog 48568,frog 48569,bird 48570,bird 48571,cat 48572,truck 48573,deer 48574,truck 48575,dog 48576,horse 48577,frog 48578,airplane 48579,horse 48580,cat 48581,cat 48582,automobile 48583,deer 48584,airplane 48585,dog 48586,airplane 48587,dog 48588,cat 48589,horse 48590,cat 48591,truck 48592,truck 48593,deer 48594,airplane 48595,horse 48596,dog 48597,horse 48598,dog 48599,airplane 48600,truck 48601,frog 48602,truck 48603,frog 48604,cat 48605,deer 48606,deer 48607,bird 48608,dog 48609,horse 48610,frog 48611,airplane 48612,frog 48613,airplane 48614,frog 48615,ship 48616,cat 48617,frog 48618,airplane 48619,airplane 48620,truck 48621,truck 48622,frog 48623,cat 48624,dog 48625,frog 48626,deer 48627,horse 48628,deer 48629,ship 48630,bird 48631,dog 48632,horse 48633,truck 48634,airplane 48635,deer 48636,automobile 48637,frog 48638,horse 48639,cat 48640,ship 48641,dog 48642,cat 48643,airplane 48644,truck 48645,frog 48646,bird 48647,deer 48648,bird 48649,airplane 48650,bird 48651,cat 48652,cat 48653,cat 48654,frog 48655,ship 48656,cat 48657,dog 48658,airplane 48659,airplane 48660,deer 48661,frog 48662,deer 48663,frog 48664,cat 48665,frog 48666,airplane 48667,ship 48668,deer 48669,bird 48670,dog 48671,deer 48672,deer 48673,airplane 48674,deer 48675,horse 48676,frog 48677,frog 48678,cat 48679,ship 48680,automobile 48681,truck 48682,bird 48683,dog 48684,airplane 48685,deer 48686,frog 48687,frog 48688,cat 48689,ship 48690,cat 48691,airplane 48692,deer 48693,automobile 48694,dog 48695,frog 48696,cat 48697,truck 48698,dog 48699,truck 48700,truck 48701,truck 48702,bird 48703,horse 48704,frog 48705,horse 48706,truck 48707,horse 48708,frog 48709,cat 48710,horse 48711,cat 48712,cat 48713,frog 48714,bird 48715,cat 48716,cat 48717,cat 48718,bird 48719,bird 48720,truck 48721,deer 48722,horse 48723,airplane 48724,ship 48725,frog 48726,horse 48727,automobile 48728,cat 48729,horse 48730,airplane 48731,cat 48732,frog 48733,frog 48734,ship 48735,deer 48736,automobile 48737,horse 48738,cat 48739,truck 48740,automobile 48741,airplane 48742,bird 48743,airplane 48744,deer 48745,truck 48746,dog 48747,truck 48748,dog 48749,frog 48750,frog 48751,deer 48752,frog 48753,cat 48754,deer 48755,frog 48756,airplane 48757,truck 48758,deer 48759,frog 48760,horse 48761,horse 48762,truck 48763,frog 48764,truck 48765,ship 48766,horse 48767,deer 48768,deer 48769,ship 48770,truck 48771,airplane 48772,cat 48773,airplane 48774,cat 48775,bird 48776,airplane 48777,truck 48778,horse 48779,airplane 48780,deer 48781,automobile 48782,deer 48783,dog 48784,bird 48785,deer 48786,dog 48787,automobile 48788,dog 48789,automobile 48790,truck 48791,dog 48792,cat 48793,frog 48794,automobile 48795,bird 48796,airplane 48797,truck 48798,deer 48799,ship 48800,deer 48801,bird 48802,deer 48803,truck 48804,cat 48805,truck 48806,cat 48807,truck 48808,dog 48809,frog 48810,automobile 48811,ship 48812,horse 48813,horse 48814,bird 48815,automobile 48816,horse 48817,automobile 48818,horse 48819,cat 48820,airplane 48821,frog 48822,horse 48823,truck 48824,cat 48825,bird 48826,ship 48827,horse 48828,horse 48829,horse 48830,frog 48831,horse 48832,truck 48833,deer 48834,deer 48835,dog 48836,cat 48837,airplane 48838,deer 48839,truck 48840,deer 48841,cat 48842,cat 48843,deer 48844,automobile 48845,cat 48846,dog 48847,cat 48848,deer 48849,truck 48850,cat 48851,bird 48852,ship 48853,dog 48854,bird 48855,frog 48856,dog 48857,automobile 48858,truck 48859,frog 48860,bird 48861,dog 48862,bird 48863,truck 48864,truck 48865,cat 48866,bird 48867,ship 48868,deer 48869,dog 48870,deer 48871,frog 48872,ship 48873,bird 48874,ship 48875,bird 48876,horse 48877,horse 48878,deer 48879,dog 48880,airplane 48881,ship 48882,frog 48883,dog 48884,deer 48885,horse 48886,horse 48887,bird 48888,bird 48889,ship 48890,airplane 48891,airplane 48892,truck 48893,deer 48894,frog 48895,truck 48896,ship 48897,dog 48898,bird 48899,dog 48900,truck 48901,truck 48902,bird 48903,dog 48904,horse 48905,deer 48906,bird 48907,automobile 48908,horse 48909,truck 48910,bird 48911,cat 48912,cat 48913,frog 48914,dog 48915,cat 48916,frog 48917,horse 48918,dog 48919,horse 48920,frog 48921,horse 48922,bird 48923,deer 48924,cat 48925,ship 48926,horse 48927,automobile 48928,horse 48929,deer 48930,cat 48931,truck 48932,airplane 48933,cat 48934,truck 48935,airplane 48936,cat 48937,frog 48938,automobile 48939,cat 48940,truck 48941,ship 48942,truck 48943,deer 48944,horse 48945,horse 48946,airplane 48947,dog 48948,bird 48949,frog 48950,frog 48951,dog 48952,deer 48953,cat 48954,dog 48955,bird 48956,bird 48957,dog 48958,dog 48959,horse 48960,bird 48961,dog 48962,airplane 48963,deer 48964,dog 48965,dog 48966,truck 48967,dog 48968,bird 48969,cat 48970,horse 48971,frog 48972,frog 48973,ship 48974,dog 48975,deer 48976,deer 48977,bird 48978,ship 48979,dog 48980,truck 48981,truck 48982,airplane 48983,truck 48984,dog 48985,bird 48986,horse 48987,automobile 48988,frog 48989,ship 48990,automobile 48991,dog 48992,horse 48993,dog 48994,airplane 48995,dog 48996,dog 48997,dog 48998,truck 48999,airplane 49000,airplane 49001,frog 49002,deer 49003,automobile 49004,horse 49005,bird 49006,deer 49007,deer 49008,automobile 49009,dog 49010,dog 49011,cat 49012,automobile 49013,automobile 49014,bird 49015,automobile 49016,truck 49017,frog 49018,cat 49019,bird 49020,frog 49021,airplane 49022,automobile 49023,ship 49024,bird 49025,bird 49026,dog 49027,automobile 49028,deer 49029,ship 49030,automobile 49031,cat 49032,horse 49033,bird 49034,ship 49035,truck 49036,truck 49037,deer 49038,bird 49039,dog 49040,automobile 49041,cat 49042,truck 49043,ship 49044,ship 49045,dog 49046,cat 49047,frog 49048,bird 49049,deer 49050,automobile 49051,truck 49052,truck 49053,ship 49054,frog 49055,airplane 49056,airplane 49057,deer 49058,deer 49059,automobile 49060,cat 49061,frog 49062,cat 49063,horse 49064,dog 49065,deer 49066,bird 49067,frog 49068,horse 49069,frog 49070,dog 49071,bird 49072,horse 49073,ship 49074,deer 49075,cat 49076,bird 49077,cat 49078,bird 49079,automobile 49080,deer 49081,airplane 49082,bird 49083,cat 49084,cat 49085,cat 49086,dog 49087,ship 49088,cat 49089,dog 49090,deer 49091,truck 49092,horse 49093,dog 49094,airplane 49095,deer 49096,deer 49097,frog 49098,bird 49099,dog 49100,dog 49101,dog 49102,dog 49103,automobile 49104,bird 49105,airplane 49106,deer 49107,automobile 49108,deer 49109,automobile 49110,truck 49111,cat 49112,ship 49113,horse 49114,cat 49115,frog 49116,deer 49117,dog 49118,horse 49119,deer 49120,airplane 49121,truck 49122,deer 49123,frog 49124,bird 49125,dog 49126,horse 49127,truck 49128,truck 49129,frog 49130,bird 49131,automobile 49132,cat 49133,bird 49134,automobile 49135,deer 49136,automobile 49137,bird 49138,frog 49139,airplane 49140,cat 49141,automobile 49142,dog 49143,automobile 49144,dog 49145,ship 49146,cat 49147,bird 49148,automobile 49149,frog 49150,automobile 49151,horse 49152,deer 49153,bird 49154,ship 49155,frog 49156,cat 49157,airplane 49158,cat 49159,frog 49160,deer 49161,bird 49162,deer 49163,bird 49164,automobile 49165,horse 49166,frog 49167,ship 49168,frog 49169,dog 49170,deer 49171,horse 49172,airplane 49173,frog 49174,automobile 49175,bird 49176,horse 49177,ship 49178,horse 49179,deer 49180,truck 49181,truck 49182,cat 49183,ship 49184,automobile 49185,dog 49186,deer 49187,dog 49188,bird 49189,automobile 49190,deer 49191,dog 49192,automobile 49193,frog 49194,horse 49195,cat 49196,dog 49197,airplane 49198,cat 49199,frog 49200,dog 49201,bird 49202,bird 49203,frog 49204,ship 49205,ship 49206,dog 49207,cat 49208,deer 49209,cat 49210,bird 49211,horse 49212,airplane 49213,horse 49214,deer 49215,frog 49216,horse 49217,dog 49218,cat 49219,dog 49220,dog 49221,airplane 49222,deer 49223,ship 49224,horse 49225,truck 49226,frog 49227,cat 49228,frog 49229,cat 49230,horse 49231,automobile 49232,frog 49233,frog 49234,cat 49235,airplane 49236,frog 49237,cat 49238,cat 49239,frog 49240,horse 49241,ship 49242,cat 49243,horse 49244,dog 49245,deer 49246,automobile 49247,horse 49248,airplane 49249,deer 49250,truck 49251,frog 49252,bird 49253,automobile 49254,truck 49255,truck 49256,frog 49257,truck 49258,deer 49259,bird 49260,airplane 49261,truck 49262,frog 49263,bird 49264,cat 49265,ship 49266,airplane 49267,cat 49268,deer 49269,airplane 49270,dog 49271,airplane 49272,airplane 49273,truck 49274,horse 49275,ship 49276,bird 49277,bird 49278,cat 49279,horse 49280,automobile 49281,airplane 49282,bird 49283,truck 49284,automobile 49285,cat 49286,ship 49287,ship 49288,bird 49289,ship 49290,deer 49291,truck 49292,airplane 49293,cat 49294,cat 49295,cat 49296,ship 49297,automobile 49298,horse 49299,ship 49300,automobile 49301,ship 49302,cat 49303,bird 49304,cat 49305,cat 49306,deer 49307,airplane 49308,cat 49309,airplane 49310,airplane 49311,frog 49312,cat 49313,frog 49314,bird 49315,horse 49316,frog 49317,truck 49318,bird 49319,truck 49320,deer 49321,cat 49322,airplane 49323,airplane 49324,deer 49325,cat 49326,dog 49327,cat 49328,truck 49329,frog 49330,deer 49331,cat 49332,cat 49333,truck 49334,bird 49335,truck 49336,frog 49337,cat 49338,cat 49339,deer 49340,truck 49341,dog 49342,deer 49343,cat 49344,frog 49345,cat 49346,airplane 49347,horse 49348,deer 49349,deer 49350,dog 49351,horse 49352,horse 49353,dog 49354,cat 49355,truck 49356,cat 49357,bird 49358,cat 49359,ship 49360,deer 49361,cat 49362,airplane 49363,deer 49364,deer 49365,bird 49366,deer 49367,frog 49368,automobile 49369,deer 49370,truck 49371,ship 49372,deer 49373,dog 49374,cat 49375,deer 49376,cat 49377,deer 49378,cat 49379,cat 49380,ship 49381,truck 49382,airplane 49383,truck 49384,truck 49385,ship 49386,ship 49387,truck 49388,horse 49389,dog 49390,frog 49391,automobile 49392,ship 49393,ship 49394,automobile 49395,dog 49396,frog 49397,dog 49398,ship 49399,truck 49400,cat 49401,dog 49402,dog 49403,truck 49404,bird 49405,horse 49406,frog 49407,frog 49408,cat 49409,cat 49410,dog 49411,horse 49412,ship 49413,airplane 49414,automobile 49415,frog 49416,cat 49417,automobile 49418,dog 49419,automobile 49420,ship 49421,bird 49422,frog 49423,deer 49424,horse 49425,airplane 49426,frog 49427,ship 49428,frog 49429,airplane 49430,dog 49431,bird 49432,automobile 49433,frog 49434,dog 49435,deer 49436,truck 49437,deer 49438,truck 49439,airplane 49440,airplane 49441,airplane 49442,dog 49443,airplane 49444,frog 49445,dog 49446,horse 49447,airplane 49448,airplane 49449,deer 49450,frog 49451,cat 49452,truck 49453,dog 49454,deer 49455,airplane 49456,frog 49457,bird 49458,horse 49459,horse 49460,dog 49461,cat 49462,deer 49463,truck 49464,truck 49465,airplane 49466,truck 49467,dog 49468,truck 49469,bird 49470,ship 49471,horse 49472,cat 49473,bird 49474,dog 49475,ship 49476,cat 49477,truck 49478,cat 49479,dog 49480,horse 49481,deer 49482,ship 49483,deer 49484,airplane 49485,cat 49486,dog 49487,deer 49488,deer 49489,automobile 49490,deer 49491,dog 49492,cat 49493,dog 49494,bird 49495,truck 49496,frog 49497,truck 49498,frog 49499,airplane 49500,horse 49501,deer 49502,ship 49503,deer 49504,truck 49505,truck 49506,bird 49507,horse 49508,horse 49509,ship 49510,deer 49511,airplane 49512,frog 49513,ship 49514,horse 49515,ship 49516,dog 49517,horse 49518,ship 49519,frog 49520,truck 49521,horse 49522,cat 49523,horse 49524,dog 49525,ship 49526,deer 49527,ship 49528,frog 49529,deer 49530,dog 49531,horse 49532,truck 49533,dog 49534,truck 49535,airplane 49536,cat 49537,truck 49538,bird 49539,frog 49540,truck 49541,airplane 49542,automobile 49543,horse 49544,deer 49545,cat 49546,airplane 49547,automobile 49548,ship 49549,deer 49550,ship 49551,automobile 49552,frog 49553,horse 49554,bird 49555,cat 49556,deer 49557,cat 49558,horse 49559,automobile 49560,horse 49561,truck 49562,deer 49563,bird 49564,cat 49565,frog 49566,truck 49567,cat 49568,ship 49569,automobile 49570,bird 49571,truck 49572,cat 49573,frog 49574,frog 49575,deer 49576,cat 49577,truck 49578,horse 49579,bird 49580,cat 49581,deer 49582,horse 49583,frog 49584,ship 49585,dog 49586,cat 49587,ship 49588,cat 49589,bird 49590,horse 49591,bird 49592,frog 49593,truck 49594,ship 49595,airplane 49596,deer 49597,frog 49598,deer 49599,deer 49600,automobile 49601,frog 49602,automobile 49603,cat 49604,automobile 49605,dog 49606,frog 49607,deer 49608,frog 49609,cat 49610,dog 49611,cat 49612,horse 49613,horse 49614,frog 49615,truck 49616,deer 49617,bird 49618,frog 49619,frog 49620,dog 49621,automobile 49622,deer 49623,ship 49624,deer 49625,deer 49626,ship 49627,cat 49628,dog 49629,horse 49630,horse 49631,cat 49632,deer 49633,bird 49634,dog 49635,truck 49636,airplane 49637,bird 49638,automobile 49639,cat 49640,horse 49641,frog 49642,horse 49643,ship 49644,deer 49645,dog 49646,bird 49647,airplane 49648,airplane 49649,horse 49650,airplane 49651,horse 49652,automobile 49653,automobile 49654,automobile 49655,frog 49656,truck 49657,deer 49658,frog 49659,truck 49660,automobile 49661,bird 49662,airplane 49663,bird 49664,airplane 49665,automobile 49666,airplane 49667,airplane 49668,bird 49669,airplane 49670,horse 49671,dog 49672,horse 49673,airplane 49674,horse 49675,cat 49676,automobile 49677,horse 49678,horse 49679,cat 49680,deer 49681,deer 49682,truck 49683,horse 49684,bird 49685,frog 49686,dog 49687,deer 49688,deer 49689,cat 49690,deer 49691,dog 49692,frog 49693,frog 49694,frog 49695,frog 49696,deer 49697,ship 49698,dog 49699,ship 49700,dog 49701,dog 49702,airplane 49703,dog 49704,cat 49705,dog 49706,cat 49707,horse 49708,truck 49709,dog 49710,airplane 49711,dog 49712,automobile 49713,truck 49714,ship 49715,deer 49716,cat 49717,truck 49718,deer 49719,automobile 49720,deer 49721,truck 49722,dog 49723,ship 49724,airplane 49725,ship 49726,frog 49727,dog 49728,airplane 49729,bird 49730,horse 49731,cat 49732,horse 49733,cat 49734,frog 49735,cat 49736,deer 49737,bird 49738,bird 49739,cat 49740,automobile 49741,ship 49742,frog 49743,frog 49744,truck 49745,frog 49746,truck 49747,ship 49748,dog 49749,ship 49750,dog 49751,airplane 49752,airplane 49753,truck 49754,deer 49755,dog 49756,horse 49757,bird 49758,truck 49759,deer 49760,ship 49761,automobile 49762,ship 49763,bird 49764,frog 49765,truck 49766,horse 49767,automobile 49768,airplane 49769,deer 49770,airplane 49771,dog 49772,automobile 49773,horse 49774,bird 49775,horse 49776,automobile 49777,truck 49778,automobile 49779,deer 49780,dog 49781,bird 49782,cat 49783,cat 49784,deer 49785,automobile 49786,truck 49787,deer 49788,ship 49789,deer 49790,cat 49791,horse 49792,deer 49793,truck 49794,bird 49795,frog 49796,automobile 49797,ship 49798,deer 49799,truck 49800,automobile 49801,horse 49802,truck 49803,airplane 49804,cat 49805,dog 49806,frog 49807,ship 49808,airplane 49809,truck 49810,deer 49811,deer 49812,airplane 49813,frog 49814,airplane 49815,dog 49816,automobile 49817,cat 49818,horse 49819,cat 49820,dog 49821,frog 49822,ship 49823,dog 49824,deer 49825,bird 49826,bird 49827,bird 49828,automobile 49829,truck 49830,truck 49831,ship 49832,cat 49833,airplane 49834,airplane 49835,automobile 49836,frog 49837,dog 49838,dog 49839,airplane 49840,airplane 49841,horse 49842,deer 49843,horse 49844,truck 49845,truck 49846,deer 49847,dog 49848,deer 49849,deer 49850,truck 49851,truck 49852,airplane 49853,frog 49854,cat 49855,frog 49856,cat 49857,cat 49858,dog 49859,deer 49860,frog 49861,frog 49862,automobile 49863,truck 49864,truck 49865,automobile 49866,bird 49867,cat 49868,ship 49869,dog 49870,truck 49871,deer 49872,airplane 49873,ship 49874,ship 49875,airplane 49876,dog 49877,dog 49878,automobile 49879,frog 49880,bird 49881,cat 49882,airplane 49883,horse 49884,horse 49885,cat 49886,horse 49887,ship 49888,bird 49889,deer 49890,airplane 49891,cat 49892,automobile 49893,automobile 49894,cat 49895,frog 49896,automobile 49897,truck 49898,airplane 49899,dog 49900,frog 49901,frog 49902,horse 49903,dog 49904,dog 49905,horse 49906,airplane 49907,bird 49908,frog 49909,automobile 49910,automobile 49911,truck 49912,cat 49913,automobile 49914,dog 49915,dog 49916,frog 49917,horse 49918,dog 49919,truck 49920,cat 49921,truck 49922,bird 49923,deer 49924,automobile 49925,cat 49926,airplane 49927,bird 49928,deer 49929,airplane 49930,horse 49931,airplane 49932,truck 49933,truck 49934,frog 49935,cat 49936,horse 49937,frog 49938,truck 49939,frog 49940,cat 49941,cat 49942,automobile 49943,airplane 49944,bird 49945,airplane 49946,bird 49947,truck 49948,ship 49949,automobile 49950,deer 49951,airplane 49952,airplane 49953,ship 49954,deer 49955,horse 49956,cat 49957,deer 49958,frog 49959,deer 49960,automobile 49961,automobile 49962,cat 49963,ship 49964,automobile 49965,frog 49966,deer 49967,deer 49968,truck 49969,horse 49970,automobile 49971,deer 49972,cat 49973,bird 49974,cat 49975,deer 49976,horse 49977,deer 49978,airplane 49979,ship 49980,bird 49981,cat 49982,automobile 49983,dog 49984,truck 49985,airplane 49986,dog 49987,deer 49988,bird 49989,ship 49990,frog 49991,truck 49992,deer 49993,airplane 49994,airplane 49995,truck 49996,airplane 49997,deer 49998,ship 49999,truck 50000,airplane 50001,bird 50002,cat 50003,deer 50004,frog 50005,frog 50006,frog 50007,horse 50008,ship 50009,airplane 50010,deer 50011,automobile 50012,airplane 50013,airplane 50014,cat 50015,dog 50016,bird 50017,horse 50018,ship 50019,deer 50020,truck 50021,horse 50022,frog 50023,ship 50024,ship 50025,deer 50026,automobile 50027,cat 50028,bird 50029,truck 50030,cat 50031,horse 50032,deer 50033,deer 50034,ship 50035,cat 50036,dog 50037,ship 50038,frog 50039,dog 50040,deer 50041,horse 50042,deer 50043,automobile 50044,truck 50045,bird 50046,frog 50047,truck 50048,deer 50049,automobile 50050,bird 50051,truck 50052,cat 50053,airplane 50054,airplane 50055,truck 50056,horse 50057,deer 50058,horse 50059,dog 50060,dog 50061,deer 50062,dog 50063,dog 50064,cat 50065,deer 50066,cat 50067,horse 50068,frog 50069,truck 50070,airplane 50071,deer 50072,horse 50073,airplane 50074,dog 50075,ship 50076,frog 50077,horse 50078,ship 50079,dog 50080,bird 50081,automobile 50082,deer 50083,deer 50084,cat 50085,cat 50086,bird 50087,deer 50088,bird 50089,deer 50090,airplane 50091,airplane 50092,cat 50093,horse 50094,bird 50095,deer 50096,ship 50097,automobile 50098,frog 50099,automobile 50100,cat 50101,ship 50102,frog 50103,horse 50104,dog 50105,deer 50106,horse 50107,truck 50108,deer 50109,bird 50110,frog 50111,truck 50112,cat 50113,horse 50114,dog 50115,airplane 50116,ship 50117,frog 50118,dog 50119,ship 50120,cat 50121,cat 50122,cat 50123,automobile 50124,airplane 50125,frog 50126,cat 50127,frog 50128,cat 50129,automobile 50130,dog 50131,automobile 50132,truck 50133,cat 50134,deer 50135,deer 50136,automobile 50137,dog 50138,ship 50139,cat 50140,bird 50141,truck 50142,deer 50143,horse 50144,deer 50145,deer 50146,truck 50147,bird 50148,bird 50149,frog 50150,frog 50151,cat 50152,cat 50153,airplane 50154,cat 50155,deer 50156,horse 50157,automobile 50158,truck 50159,automobile 50160,deer 50161,airplane 50162,horse 50163,deer 50164,deer 50165,ship 50166,dog 50167,bird 50168,dog 50169,frog 50170,dog 50171,truck 50172,frog 50173,frog 50174,dog 50175,deer 50176,frog 50177,truck 50178,airplane 50179,deer 50180,bird 50181,truck 50182,cat 50183,deer 50184,deer 50185,horse 50186,deer 50187,airplane 50188,dog 50189,truck 50190,frog 50191,airplane 50192,deer 50193,automobile 50194,automobile 50195,deer 50196,deer 50197,dog 50198,truck 50199,cat 50200,ship 50201,dog 50202,bird 50203,automobile 50204,frog 50205,dog 50206,truck 50207,deer 50208,deer 50209,airplane 50210,bird 50211,horse 50212,frog 50213,airplane 50214,horse 50215,airplane 50216,deer 50217,cat 50218,bird 50219,deer 50220,truck 50221,cat 50222,ship 50223,dog 50224,bird 50225,truck 50226,truck 50227,airplane 50228,horse 50229,ship 50230,horse 50231,airplane 50232,deer 50233,deer 50234,cat 50235,cat 50236,dog 50237,deer 50238,cat 50239,truck 50240,cat 50241,horse 50242,bird 50243,ship 50244,truck 50245,deer 50246,frog 50247,cat 50248,horse 50249,dog 50250,truck 50251,ship 50252,cat 50253,deer 50254,airplane 50255,horse 50256,cat 50257,dog 50258,cat 50259,ship 50260,cat 50261,truck 50262,ship 50263,airplane 50264,deer 50265,airplane 50266,deer 50267,truck 50268,airplane 50269,airplane 50270,horse 50271,truck 50272,frog 50273,bird 50274,frog 50275,bird 50276,deer 50277,deer 50278,bird 50279,dog 50280,deer 50281,frog 50282,automobile 50283,cat 50284,truck 50285,automobile 50286,airplane 50287,truck 50288,cat 50289,truck 50290,deer 50291,automobile 50292,deer 50293,horse 50294,horse 50295,dog 50296,deer 50297,airplane 50298,bird 50299,automobile 50300,horse 50301,truck 50302,horse 50303,ship 50304,bird 50305,deer 50306,dog 50307,truck 50308,horse 50309,truck 50310,cat 50311,ship 50312,frog 50313,frog 50314,frog 50315,deer 50316,cat 50317,ship 50318,airplane 50319,airplane 50320,cat 50321,ship 50322,dog 50323,airplane 50324,cat 50325,deer 50326,deer 50327,frog 50328,airplane 50329,frog 50330,deer 50331,dog 50332,bird 50333,frog 50334,bird 50335,horse 50336,frog 50337,ship 50338,deer 50339,bird 50340,horse 50341,deer 50342,cat 50343,horse 50344,deer 50345,frog 50346,dog 50347,dog 50348,ship 50349,cat 50350,horse 50351,dog 50352,ship 50353,cat 50354,horse 50355,deer 50356,automobile 50357,automobile 50358,truck 50359,cat 50360,frog 50361,dog 50362,dog 50363,bird 50364,truck 50365,horse 50366,ship 50367,horse 50368,truck 50369,dog 50370,airplane 50371,dog 50372,truck 50373,automobile 50374,dog 50375,ship 50376,frog 50377,horse 50378,ship 50379,deer 50380,automobile 50381,horse 50382,deer 50383,horse 50384,truck 50385,horse 50386,bird 50387,automobile 50388,frog 50389,ship 50390,airplane 50391,horse 50392,ship 50393,bird 50394,truck 50395,deer 50396,dog 50397,truck 50398,airplane 50399,deer 50400,deer 50401,dog 50402,dog 50403,airplane 50404,truck 50405,ship 50406,deer 50407,horse 50408,cat 50409,cat 50410,frog 50411,truck 50412,dog 50413,truck 50414,automobile 50415,cat 50416,airplane 50417,dog 50418,deer 50419,automobile 50420,horse 50421,cat 50422,deer 50423,deer 50424,cat 50425,cat 50426,deer 50427,deer 50428,frog 50429,frog 50430,ship 50431,horse 50432,dog 50433,airplane 50434,dog 50435,ship 50436,ship 50437,dog 50438,horse 50439,dog 50440,automobile 50441,truck 50442,deer 50443,truck 50444,airplane 50445,cat 50446,ship 50447,frog 50448,truck 50449,horse 50450,airplane 50451,frog 50452,dog 50453,frog 50454,deer 50455,frog 50456,cat 50457,ship 50458,cat 50459,frog 50460,deer 50461,cat 50462,deer 50463,automobile 50464,automobile 50465,frog 50466,ship 50467,deer 50468,horse 50469,dog 50470,frog 50471,frog 50472,cat 50473,deer 50474,cat 50475,bird 50476,truck 50477,frog 50478,frog 50479,deer 50480,airplane 50481,frog 50482,ship 50483,dog 50484,dog 50485,automobile 50486,frog 50487,deer 50488,deer 50489,bird 50490,cat 50491,deer 50492,bird 50493,deer 50494,automobile 50495,truck 50496,truck 50497,horse 50498,ship 50499,horse 50500,airplane 50501,deer 50502,truck 50503,ship 50504,ship 50505,ship 50506,dog 50507,airplane 50508,deer 50509,horse 50510,dog 50511,cat 50512,cat 50513,deer 50514,ship 50515,automobile 50516,dog 50517,dog 50518,bird 50519,dog 50520,dog 50521,airplane 50522,truck 50523,automobile 50524,truck 50525,horse 50526,cat 50527,truck 50528,cat 50529,bird 50530,dog 50531,horse 50532,dog 50533,frog 50534,deer 50535,truck 50536,deer 50537,frog 50538,deer 50539,truck 50540,horse 50541,truck 50542,horse 50543,truck 50544,deer 50545,frog 50546,truck 50547,bird 50548,frog 50549,deer 50550,dog 50551,frog 50552,bird 50553,deer 50554,airplane 50555,deer 50556,cat 50557,truck 50558,deer 50559,bird 50560,truck 50561,horse 50562,bird 50563,deer 50564,deer 50565,cat 50566,automobile 50567,truck 50568,horse 50569,dog 50570,bird 50571,deer 50572,airplane 50573,frog 50574,frog 50575,deer 50576,frog 50577,automobile 50578,dog 50579,frog 50580,truck 50581,airplane 50582,bird 50583,horse 50584,frog 50585,truck 50586,dog 50587,deer 50588,horse 50589,dog 50590,deer 50591,dog 50592,bird 50593,bird 50594,deer 50595,dog 50596,frog 50597,ship 50598,frog 50599,airplane 50600,automobile 50601,truck 50602,frog 50603,ship 50604,ship 50605,airplane 50606,airplane 50607,airplane 50608,airplane 50609,truck 50610,cat 50611,frog 50612,bird 50613,ship 50614,ship 50615,bird 50616,cat 50617,dog 50618,cat 50619,ship 50620,ship 50621,ship 50622,ship 50623,ship 50624,automobile 50625,automobile 50626,horse 50627,frog 50628,truck 50629,cat 50630,ship 50631,frog 50632,ship 50633,cat 50634,horse 50635,horse 50636,dog 50637,horse 50638,deer 50639,truck 50640,truck 50641,frog 50642,frog 50643,deer 50644,dog 50645,automobile 50646,frog 50647,airplane 50648,automobile 50649,deer 50650,horse 50651,frog 50652,truck 50653,truck 50654,automobile 50655,airplane 50656,airplane 50657,ship 50658,deer 50659,deer 50660,automobile 50661,frog 50662,dog 50663,bird 50664,cat 50665,ship 50666,truck 50667,ship 50668,automobile 50669,cat 50670,cat 50671,cat 50672,automobile 50673,automobile 50674,ship 50675,cat 50676,truck 50677,frog 50678,deer 50679,horse 50680,frog 50681,automobile 50682,deer 50683,airplane 50684,bird 50685,cat 50686,truck 50687,frog 50688,truck 50689,bird 50690,horse 50691,automobile 50692,deer 50693,dog 50694,dog 50695,automobile 50696,bird 50697,cat 50698,automobile 50699,airplane 50700,horse 50701,horse 50702,dog 50703,ship 50704,horse 50705,automobile 50706,ship 50707,cat 50708,ship 50709,airplane 50710,dog 50711,truck 50712,horse 50713,airplane 50714,automobile 50715,cat 50716,horse 50717,cat 50718,cat 50719,cat 50720,frog 50721,horse 50722,deer 50723,automobile 50724,cat 50725,dog 50726,deer 50727,horse 50728,frog 50729,horse 50730,cat 50731,deer 50732,deer 50733,frog 50734,dog 50735,automobile 50736,bird 50737,frog 50738,truck 50739,bird 50740,frog 50741,automobile 50742,ship 50743,dog 50744,dog 50745,frog 50746,airplane 50747,airplane 50748,dog 50749,dog 50750,dog 50751,truck 50752,ship 50753,deer 50754,dog 50755,airplane 50756,cat 50757,cat 50758,automobile 50759,dog 50760,cat 50761,automobile 50762,dog 50763,ship 50764,horse 50765,ship 50766,cat 50767,airplane 50768,airplane 50769,frog 50770,deer 50771,deer 50772,deer 50773,airplane 50774,dog 50775,airplane 50776,cat 50777,bird 50778,horse 50779,deer 50780,deer 50781,cat 50782,truck 50783,truck 50784,airplane 50785,frog 50786,bird 50787,bird 50788,ship 50789,dog 50790,cat 50791,frog 50792,ship 50793,deer 50794,airplane 50795,truck 50796,dog 50797,deer 50798,cat 50799,airplane 50800,frog 50801,dog 50802,dog 50803,horse 50804,cat 50805,frog 50806,frog 50807,airplane 50808,ship 50809,bird 50810,airplane 50811,deer 50812,truck 50813,deer 50814,automobile 50815,dog 50816,horse 50817,horse 50818,ship 50819,truck 50820,cat 50821,horse 50822,automobile 50823,ship 50824,airplane 50825,cat 50826,bird 50827,truck 50828,cat 50829,truck 50830,deer 50831,horse 50832,bird 50833,cat 50834,cat 50835,cat 50836,cat 50837,cat 50838,bird 50839,automobile 50840,ship 50841,airplane 50842,frog 50843,truck 50844,horse 50845,airplane 50846,truck 50847,ship 50848,ship 50849,airplane 50850,ship 50851,airplane 50852,deer 50853,deer 50854,frog 50855,truck 50856,airplane 50857,horse 50858,deer 50859,automobile 50860,truck 50861,deer 50862,dog 50863,frog 50864,frog 50865,cat 50866,frog 50867,automobile 50868,deer 50869,frog 50870,bird 50871,dog 50872,airplane 50873,cat 50874,truck 50875,dog 50876,dog 50877,bird 50878,automobile 50879,deer 50880,frog 50881,automobile 50882,bird 50883,deer 50884,horse 50885,cat 50886,cat 50887,frog 50888,airplane 50889,frog 50890,dog 50891,bird 50892,horse 50893,ship 50894,deer 50895,airplane 50896,cat 50897,ship 50898,bird 50899,deer 50900,horse 50901,truck 50902,automobile 50903,deer 50904,deer 50905,deer 50906,automobile 50907,bird 50908,deer 50909,bird 50910,horse 50911,deer 50912,truck 50913,cat 50914,automobile 50915,cat 50916,dog 50917,airplane 50918,cat 50919,ship 50920,bird 50921,horse 50922,deer 50923,horse 50924,cat 50925,horse 50926,dog 50927,ship 50928,frog 50929,frog 50930,truck 50931,airplane 50932,horse 50933,truck 50934,airplane 50935,airplane 50936,frog 50937,airplane 50938,dog 50939,ship 50940,truck 50941,deer 50942,cat 50943,frog 50944,bird 50945,deer 50946,cat 50947,ship 50948,deer 50949,horse 50950,airplane 50951,deer 50952,cat 50953,deer 50954,cat 50955,deer 50956,truck 50957,dog 50958,truck 50959,dog 50960,cat 50961,ship 50962,truck 50963,truck 50964,frog 50965,bird 50966,frog 50967,ship 50968,truck 50969,ship 50970,dog 50971,automobile 50972,deer 50973,airplane 50974,automobile 50975,dog 50976,deer 50977,horse 50978,bird 50979,truck 50980,deer 50981,frog 50982,dog 50983,truck 50984,automobile 50985,cat 50986,horse 50987,truck 50988,horse 50989,deer 50990,deer 50991,deer 50992,deer 50993,dog 50994,airplane 50995,horse 50996,truck 50997,bird 50998,horse 50999,bird 51000,bird 51001,horse 51002,horse 51003,automobile 51004,bird 51005,airplane 51006,frog 51007,truck 51008,horse 51009,bird 51010,horse 51011,frog 51012,truck 51013,truck 51014,dog 51015,deer 51016,automobile 51017,cat 51018,ship 51019,dog 51020,dog 51021,dog 51022,bird 51023,truck 51024,dog 51025,automobile 51026,automobile 51027,dog 51028,frog 51029,deer 51030,frog 51031,automobile 51032,airplane 51033,frog 51034,cat 51035,frog 51036,truck 51037,dog 51038,automobile 51039,frog 51040,deer 51041,cat 51042,deer 51043,frog 51044,frog 51045,cat 51046,airplane 51047,deer 51048,frog 51049,bird 51050,deer 51051,airplane 51052,horse 51053,ship 51054,deer 51055,horse 51056,airplane 51057,frog 51058,airplane 51059,airplane 51060,cat 51061,dog 51062,ship 51063,airplane 51064,airplane 51065,airplane 51066,frog 51067,truck 51068,frog 51069,truck 51070,deer 51071,frog 51072,dog 51073,dog 51074,bird 51075,frog 51076,automobile 51077,cat 51078,frog 51079,horse 51080,airplane 51081,truck 51082,truck 51083,dog 51084,truck 51085,cat 51086,deer 51087,airplane 51088,dog 51089,airplane 51090,dog 51091,truck 51092,airplane 51093,horse 51094,bird 51095,ship 51096,dog 51097,deer 51098,dog 51099,bird 51100,dog 51101,horse 51102,deer 51103,automobile 51104,deer 51105,automobile 51106,ship 51107,cat 51108,truck 51109,horse 51110,ship 51111,truck 51112,ship 51113,deer 51114,deer 51115,horse 51116,dog 51117,bird 51118,ship 51119,deer 51120,frog 51121,dog 51122,truck 51123,automobile 51124,dog 51125,deer 51126,airplane 51127,cat 51128,horse 51129,automobile 51130,frog 51131,frog 51132,ship 51133,frog 51134,bird 51135,airplane 51136,deer 51137,ship 51138,airplane 51139,frog 51140,truck 51141,frog 51142,cat 51143,truck 51144,frog 51145,airplane 51146,frog 51147,horse 51148,bird 51149,ship 51150,airplane 51151,automobile 51152,dog 51153,dog 51154,deer 51155,automobile 51156,airplane 51157,cat 51158,truck 51159,truck 51160,airplane 51161,airplane 51162,horse 51163,horse 51164,bird 51165,frog 51166,truck 51167,deer 51168,deer 51169,truck 51170,horse 51171,horse 51172,airplane 51173,dog 51174,horse 51175,cat 51176,dog 51177,frog 51178,cat 51179,airplane 51180,cat 51181,horse 51182,airplane 51183,dog 51184,ship 51185,horse 51186,frog 51187,automobile 51188,bird 51189,frog 51190,deer 51191,truck 51192,ship 51193,deer 51194,automobile 51195,truck 51196,deer 51197,automobile 51198,truck 51199,dog 51200,frog 51201,bird 51202,cat 51203,cat 51204,horse 51205,automobile 51206,bird 51207,cat 51208,automobile 51209,airplane 51210,automobile 51211,ship 51212,dog 51213,dog 51214,automobile 51215,dog 51216,dog 51217,horse 51218,deer 51219,airplane 51220,ship 51221,cat 51222,frog 51223,truck 51224,deer 51225,frog 51226,dog 51227,cat 51228,frog 51229,horse 51230,dog 51231,deer 51232,dog 51233,deer 51234,airplane 51235,truck 51236,frog 51237,cat 51238,ship 51239,bird 51240,horse 51241,ship 51242,ship 51243,truck 51244,frog 51245,truck 51246,ship 51247,frog 51248,truck 51249,horse 51250,bird 51251,ship 51252,automobile 51253,deer 51254,horse 51255,cat 51256,truck 51257,bird 51258,truck 51259,frog 51260,deer 51261,horse 51262,horse 51263,cat 51264,cat 51265,ship 51266,airplane 51267,airplane 51268,truck 51269,airplane 51270,truck 51271,cat 51272,frog 51273,ship 51274,horse 51275,cat 51276,horse 51277,deer 51278,dog 51279,horse 51280,truck 51281,truck 51282,horse 51283,deer 51284,horse 51285,truck 51286,bird 51287,deer 51288,horse 51289,dog 51290,horse 51291,truck 51292,airplane 51293,ship 51294,airplane 51295,cat 51296,ship 51297,horse 51298,airplane 51299,horse 51300,horse 51301,dog 51302,horse 51303,truck 51304,dog 51305,dog 51306,ship 51307,dog 51308,horse 51309,bird 51310,truck 51311,truck 51312,cat 51313,deer 51314,airplane 51315,dog 51316,frog 51317,frog 51318,airplane 51319,deer 51320,automobile 51321,bird 51322,truck 51323,horse 51324,deer 51325,deer 51326,truck 51327,horse 51328,deer 51329,bird 51330,bird 51331,truck 51332,automobile 51333,dog 51334,horse 51335,truck 51336,airplane 51337,truck 51338,bird 51339,cat 51340,truck 51341,frog 51342,dog 51343,horse 51344,truck 51345,frog 51346,automobile 51347,bird 51348,cat 51349,dog 51350,frog 51351,dog 51352,airplane 51353,deer 51354,deer 51355,bird 51356,dog 51357,deer 51358,frog 51359,truck 51360,horse 51361,frog 51362,frog 51363,cat 51364,frog 51365,bird 51366,automobile 51367,deer 51368,dog 51369,cat 51370,deer 51371,frog 51372,airplane 51373,ship 51374,truck 51375,horse 51376,dog 51377,truck 51378,truck 51379,dog 51380,frog 51381,horse 51382,frog 51383,truck 51384,automobile 51385,deer 51386,horse 51387,deer 51388,frog 51389,cat 51390,bird 51391,bird 51392,automobile 51393,frog 51394,ship 51395,horse 51396,dog 51397,deer 51398,ship 51399,frog 51400,deer 51401,deer 51402,truck 51403,deer 51404,dog 51405,truck 51406,airplane 51407,frog 51408,ship 51409,automobile 51410,automobile 51411,airplane 51412,deer 51413,truck 51414,ship 51415,frog 51416,dog 51417,frog 51418,horse 51419,frog 51420,dog 51421,automobile 51422,airplane 51423,deer 51424,deer 51425,deer 51426,automobile 51427,frog 51428,cat 51429,deer 51430,airplane 51431,airplane 51432,dog 51433,horse 51434,horse 51435,dog 51436,ship 51437,truck 51438,cat 51439,horse 51440,deer 51441,ship 51442,frog 51443,deer 51444,horse 51445,automobile 51446,dog 51447,frog 51448,horse 51449,deer 51450,deer 51451,automobile 51452,airplane 51453,horse 51454,airplane 51455,dog 51456,frog 51457,dog 51458,automobile 51459,cat 51460,cat 51461,ship 51462,frog 51463,deer 51464,cat 51465,automobile 51466,frog 51467,deer 51468,horse 51469,airplane 51470,airplane 51471,ship 51472,cat 51473,cat 51474,frog 51475,bird 51476,frog 51477,ship 51478,frog 51479,horse 51480,truck 51481,dog 51482,frog 51483,truck 51484,deer 51485,horse 51486,horse 51487,deer 51488,cat 51489,deer 51490,cat 51491,cat 51492,frog 51493,frog 51494,cat 51495,deer 51496,cat 51497,horse 51498,dog 51499,deer 51500,truck 51501,dog 51502,deer 51503,ship 51504,automobile 51505,deer 51506,truck 51507,airplane 51508,automobile 51509,deer 51510,frog 51511,deer 51512,horse 51513,frog 51514,deer 51515,horse 51516,airplane 51517,horse 51518,horse 51519,cat 51520,horse 51521,ship 51522,ship 51523,airplane 51524,airplane 51525,horse 51526,frog 51527,horse 51528,dog 51529,deer 51530,frog 51531,horse 51532,horse 51533,frog 51534,frog 51535,deer 51536,truck 51537,cat 51538,deer 51539,ship 51540,truck 51541,deer 51542,bird 51543,deer 51544,frog 51545,frog 51546,truck 51547,deer 51548,deer 51549,bird 51550,cat 51551,deer 51552,ship 51553,automobile 51554,bird 51555,automobile 51556,horse 51557,cat 51558,dog 51559,automobile 51560,dog 51561,automobile 51562,bird 51563,frog 51564,horse 51565,horse 51566,truck 51567,frog 51568,airplane 51569,frog 51570,frog 51571,dog 51572,truck 51573,deer 51574,deer 51575,deer 51576,automobile 51577,deer 51578,frog 51579,horse 51580,cat 51581,truck 51582,bird 51583,truck 51584,bird 51585,truck 51586,bird 51587,frog 51588,bird 51589,bird 51590,horse 51591,dog 51592,frog 51593,dog 51594,bird 51595,airplane 51596,bird 51597,airplane 51598,frog 51599,horse 51600,cat 51601,truck 51602,horse 51603,dog 51604,airplane 51605,horse 51606,bird 51607,cat 51608,airplane 51609,cat 51610,airplane 51611,automobile 51612,bird 51613,airplane 51614,automobile 51615,cat 51616,cat 51617,airplane 51618,cat 51619,automobile 51620,dog 51621,frog 51622,truck 51623,bird 51624,frog 51625,frog 51626,truck 51627,deer 51628,truck 51629,frog 51630,frog 51631,cat 51632,airplane 51633,dog 51634,cat 51635,cat 51636,deer 51637,automobile 51638,bird 51639,bird 51640,bird 51641,airplane 51642,horse 51643,deer 51644,cat 51645,frog 51646,truck 51647,horse 51648,dog 51649,horse 51650,bird 51651,frog 51652,horse 51653,truck 51654,truck 51655,horse 51656,dog 51657,deer 51658,deer 51659,truck 51660,ship 51661,truck 51662,truck 51663,cat 51664,horse 51665,deer 51666,automobile 51667,bird 51668,truck 51669,cat 51670,deer 51671,bird 51672,automobile 51673,frog 51674,cat 51675,truck 51676,airplane 51677,horse 51678,frog 51679,cat 51680,frog 51681,dog 51682,automobile 51683,airplane 51684,cat 51685,dog 51686,airplane 51687,truck 51688,bird 51689,deer 51690,ship 51691,cat 51692,truck 51693,deer 51694,bird 51695,cat 51696,dog 51697,dog 51698,ship 51699,frog 51700,bird 51701,truck 51702,dog 51703,horse 51704,horse 51705,bird 51706,frog 51707,deer 51708,bird 51709,frog 51710,deer 51711,truck 51712,automobile 51713,truck 51714,frog 51715,frog 51716,dog 51717,cat 51718,ship 51719,dog 51720,dog 51721,dog 51722,horse 51723,bird 51724,automobile 51725,cat 51726,frog 51727,deer 51728,truck 51729,automobile 51730,frog 51731,horse 51732,bird 51733,frog 51734,deer 51735,frog 51736,airplane 51737,cat 51738,deer 51739,frog 51740,frog 51741,ship 51742,bird 51743,deer 51744,cat 51745,bird 51746,dog 51747,deer 51748,truck 51749,ship 51750,ship 51751,truck 51752,cat 51753,truck 51754,cat 51755,automobile 51756,truck 51757,dog 51758,ship 51759,dog 51760,cat 51761,deer 51762,truck 51763,truck 51764,airplane 51765,truck 51766,deer 51767,automobile 51768,truck 51769,dog 51770,deer 51771,horse 51772,deer 51773,dog 51774,cat 51775,horse 51776,frog 51777,frog 51778,deer 51779,cat 51780,deer 51781,ship 51782,dog 51783,airplane 51784,deer 51785,deer 51786,horse 51787,cat 51788,dog 51789,ship 51790,airplane 51791,deer 51792,horse 51793,automobile 51794,ship 51795,ship 51796,cat 51797,dog 51798,dog 51799,cat 51800,airplane 51801,automobile 51802,ship 51803,bird 51804,cat 51805,cat 51806,bird 51807,cat 51808,frog 51809,frog 51810,cat 51811,airplane 51812,dog 51813,airplane 51814,bird 51815,truck 51816,truck 51817,ship 51818,bird 51819,horse 51820,ship 51821,dog 51822,horse 51823,bird 51824,cat 51825,deer 51826,bird 51827,bird 51828,cat 51829,automobile 51830,frog 51831,ship 51832,horse 51833,automobile 51834,truck 51835,bird 51836,airplane 51837,truck 51838,deer 51839,bird 51840,truck 51841,cat 51842,bird 51843,automobile 51844,ship 51845,dog 51846,bird 51847,dog 51848,airplane 51849,bird 51850,deer 51851,deer 51852,frog 51853,dog 51854,automobile 51855,horse 51856,truck 51857,airplane 51858,dog 51859,deer 51860,horse 51861,dog 51862,automobile 51863,frog 51864,frog 51865,airplane 51866,cat 51867,ship 51868,truck 51869,deer 51870,horse 51871,airplane 51872,dog 51873,cat 51874,horse 51875,dog 51876,truck 51877,deer 51878,dog 51879,dog 51880,frog 51881,horse 51882,truck 51883,frog 51884,automobile 51885,dog 51886,truck 51887,airplane 51888,cat 51889,bird 51890,horse 51891,frog 51892,deer 51893,bird 51894,airplane 51895,deer 51896,horse 51897,frog 51898,ship 51899,cat 51900,cat 51901,airplane 51902,automobile 51903,ship 51904,frog 51905,truck 51906,ship 51907,horse 51908,truck 51909,bird 51910,ship 51911,automobile 51912,frog 51913,truck 51914,horse 51915,bird 51916,bird 51917,ship 51918,horse 51919,bird 51920,ship 51921,airplane 51922,deer 51923,cat 51924,cat 51925,horse 51926,frog 51927,frog 51928,airplane 51929,cat 51930,frog 51931,cat 51932,ship 51933,bird 51934,horse 51935,deer 51936,frog 51937,cat 51938,cat 51939,cat 51940,cat 51941,horse 51942,dog 51943,deer 51944,dog 51945,deer 51946,deer 51947,dog 51948,frog 51949,bird 51950,frog 51951,dog 51952,cat 51953,deer 51954,bird 51955,truck 51956,airplane 51957,horse 51958,horse 51959,ship 51960,deer 51961,horse 51962,automobile 51963,airplane 51964,truck 51965,airplane 51966,deer 51967,deer 51968,bird 51969,ship 51970,ship 51971,frog 51972,horse 51973,horse 51974,deer 51975,deer 51976,ship 51977,deer 51978,dog 51979,airplane 51980,cat 51981,cat 51982,horse 51983,cat 51984,frog 51985,cat 51986,dog 51987,cat 51988,cat 51989,dog 51990,bird 51991,bird 51992,cat 51993,cat 51994,horse 51995,automobile 51996,bird 51997,truck 51998,ship 51999,horse 52000,bird 52001,deer 52002,cat 52003,frog 52004,airplane 52005,automobile 52006,cat 52007,frog 52008,horse 52009,frog 52010,dog 52011,dog 52012,bird 52013,airplane 52014,dog 52015,truck 52016,cat 52017,frog 52018,cat 52019,cat 52020,deer 52021,truck 52022,automobile 52023,ship 52024,airplane 52025,horse 52026,cat 52027,frog 52028,deer 52029,ship 52030,airplane 52031,frog 52032,truck 52033,cat 52034,airplane 52035,frog 52036,truck 52037,airplane 52038,truck 52039,ship 52040,cat 52041,frog 52042,ship 52043,cat 52044,dog 52045,dog 52046,bird 52047,deer 52048,automobile 52049,automobile 52050,frog 52051,cat 52052,bird 52053,bird 52054,frog 52055,truck 52056,bird 52057,automobile 52058,horse 52059,cat 52060,ship 52061,deer 52062,frog 52063,airplane 52064,cat 52065,airplane 52066,cat 52067,cat 52068,deer 52069,horse 52070,bird 52071,cat 52072,dog 52073,automobile 52074,truck 52075,truck 52076,bird 52077,truck 52078,deer 52079,deer 52080,automobile 52081,frog 52082,airplane 52083,dog 52084,ship 52085,horse 52086,cat 52087,cat 52088,cat 52089,automobile 52090,horse 52091,airplane 52092,frog 52093,airplane 52094,dog 52095,deer 52096,deer 52097,ship 52098,frog 52099,horse 52100,frog 52101,frog 52102,deer 52103,automobile 52104,automobile 52105,frog 52106,cat 52107,dog 52108,frog 52109,ship 52110,deer 52111,horse 52112,horse 52113,frog 52114,truck 52115,truck 52116,truck 52117,truck 52118,cat 52119,ship 52120,deer 52121,deer 52122,airplane 52123,deer 52124,deer 52125,truck 52126,bird 52127,ship 52128,automobile 52129,frog 52130,horse 52131,truck 52132,cat 52133,truck 52134,dog 52135,deer 52136,automobile 52137,ship 52138,cat 52139,bird 52140,airplane 52141,bird 52142,deer 52143,frog 52144,bird 52145,dog 52146,truck 52147,frog 52148,automobile 52149,cat 52150,deer 52151,ship 52152,bird 52153,dog 52154,frog 52155,ship 52156,frog 52157,truck 52158,truck 52159,cat 52160,bird 52161,dog 52162,cat 52163,frog 52164,bird 52165,truck 52166,deer 52167,truck 52168,truck 52169,cat 52170,airplane 52171,truck 52172,automobile 52173,horse 52174,cat 52175,cat 52176,horse 52177,truck 52178,ship 52179,airplane 52180,frog 52181,horse 52182,truck 52183,bird 52184,cat 52185,ship 52186,deer 52187,ship 52188,ship 52189,horse 52190,cat 52191,horse 52192,truck 52193,frog 52194,truck 52195,truck 52196,automobile 52197,ship 52198,automobile 52199,airplane 52200,bird 52201,ship 52202,frog 52203,deer 52204,horse 52205,cat 52206,frog 52207,frog 52208,truck 52209,deer 52210,cat 52211,cat 52212,cat 52213,ship 52214,cat 52215,bird 52216,automobile 52217,frog 52218,ship 52219,ship 52220,dog 52221,bird 52222,cat 52223,bird 52224,truck 52225,truck 52226,bird 52227,ship 52228,truck 52229,truck 52230,automobile 52231,automobile 52232,deer 52233,airplane 52234,frog 52235,cat 52236,truck 52237,dog 52238,dog 52239,cat 52240,cat 52241,ship 52242,truck 52243,deer 52244,deer 52245,cat 52246,deer 52247,truck 52248,dog 52249,cat 52250,horse 52251,horse 52252,airplane 52253,bird 52254,cat 52255,airplane 52256,cat 52257,dog 52258,automobile 52259,dog 52260,truck 52261,dog 52262,horse 52263,automobile 52264,horse 52265,cat 52266,airplane 52267,ship 52268,ship 52269,horse 52270,cat 52271,deer 52272,cat 52273,deer 52274,airplane 52275,ship 52276,dog 52277,frog 52278,truck 52279,deer 52280,frog 52281,frog 52282,truck 52283,ship 52284,dog 52285,ship 52286,dog 52287,truck 52288,airplane 52289,truck 52290,truck 52291,horse 52292,deer 52293,automobile 52294,airplane 52295,cat 52296,deer 52297,bird 52298,bird 52299,horse 52300,ship 52301,horse 52302,dog 52303,automobile 52304,dog 52305,deer 52306,automobile 52307,deer 52308,dog 52309,frog 52310,deer 52311,airplane 52312,bird 52313,cat 52314,frog 52315,airplane 52316,automobile 52317,cat 52318,bird 52319,bird 52320,truck 52321,dog 52322,automobile 52323,bird 52324,cat 52325,airplane 52326,cat 52327,dog 52328,airplane 52329,truck 52330,deer 52331,frog 52332,cat 52333,bird 52334,frog 52335,airplane 52336,bird 52337,dog 52338,deer 52339,frog 52340,horse 52341,horse 52342,frog 52343,deer 52344,bird 52345,dog 52346,cat 52347,airplane 52348,frog 52349,truck 52350,dog 52351,frog 52352,deer 52353,dog 52354,cat 52355,deer 52356,ship 52357,frog 52358,bird 52359,horse 52360,dog 52361,bird 52362,cat 52363,ship 52364,cat 52365,truck 52366,cat 52367,cat 52368,bird 52369,automobile 52370,ship 52371,cat 52372,cat 52373,bird 52374,truck 52375,deer 52376,deer 52377,frog 52378,horse 52379,ship 52380,ship 52381,dog 52382,ship 52383,truck 52384,deer 52385,deer 52386,truck 52387,deer 52388,deer 52389,truck 52390,ship 52391,automobile 52392,cat 52393,airplane 52394,airplane 52395,airplane 52396,deer 52397,truck 52398,automobile 52399,frog 52400,dog 52401,frog 52402,truck 52403,frog 52404,cat 52405,truck 52406,horse 52407,frog 52408,airplane 52409,dog 52410,automobile 52411,truck 52412,horse 52413,dog 52414,dog 52415,truck 52416,automobile 52417,dog 52418,ship 52419,deer 52420,ship 52421,automobile 52422,frog 52423,frog 52424,frog 52425,deer 52426,frog 52427,bird 52428,cat 52429,cat 52430,horse 52431,bird 52432,dog 52433,cat 52434,cat 52435,automobile 52436,bird 52437,truck 52438,ship 52439,deer 52440,horse 52441,deer 52442,dog 52443,truck 52444,bird 52445,automobile 52446,truck 52447,deer 52448,cat 52449,horse 52450,airplane 52451,deer 52452,bird 52453,cat 52454,airplane 52455,truck 52456,cat 52457,ship 52458,ship 52459,cat 52460,airplane 52461,airplane 52462,automobile 52463,truck 52464,cat 52465,automobile 52466,dog 52467,bird 52468,horse 52469,cat 52470,deer 52471,ship 52472,truck 52473,ship 52474,dog 52475,airplane 52476,frog 52477,cat 52478,frog 52479,bird 52480,deer 52481,frog 52482,ship 52483,deer 52484,horse 52485,deer 52486,ship 52487,dog 52488,deer 52489,airplane 52490,automobile 52491,deer 52492,horse 52493,airplane 52494,horse 52495,deer 52496,deer 52497,cat 52498,cat 52499,dog 52500,airplane 52501,frog 52502,horse 52503,horse 52504,frog 52505,automobile 52506,automobile 52507,bird 52508,cat 52509,bird 52510,automobile 52511,dog 52512,automobile 52513,horse 52514,deer 52515,airplane 52516,deer 52517,deer 52518,deer 52519,frog 52520,cat 52521,automobile 52522,horse 52523,dog 52524,cat 52525,frog 52526,truck 52527,airplane 52528,truck 52529,dog 52530,ship 52531,dog 52532,dog 52533,automobile 52534,airplane 52535,deer 52536,truck 52537,deer 52538,airplane 52539,airplane 52540,truck 52541,ship 52542,airplane 52543,horse 52544,bird 52545,deer 52546,ship 52547,automobile 52548,automobile 52549,horse 52550,dog 52551,frog 52552,truck 52553,frog 52554,cat 52555,horse 52556,frog 52557,truck 52558,deer 52559,horse 52560,bird 52561,deer 52562,frog 52563,dog 52564,horse 52565,dog 52566,ship 52567,deer 52568,dog 52569,deer 52570,deer 52571,frog 52572,dog 52573,automobile 52574,bird 52575,frog 52576,automobile 52577,frog 52578,truck 52579,deer 52580,dog 52581,bird 52582,ship 52583,deer 52584,truck 52585,horse 52586,ship 52587,deer 52588,ship 52589,frog 52590,truck 52591,frog 52592,automobile 52593,frog 52594,horse 52595,airplane 52596,airplane 52597,truck 52598,airplane 52599,airplane 52600,deer 52601,bird 52602,frog 52603,deer 52604,bird 52605,deer 52606,truck 52607,truck 52608,cat 52609,frog 52610,bird 52611,cat 52612,cat 52613,automobile 52614,frog 52615,cat 52616,deer 52617,dog 52618,truck 52619,cat 52620,ship 52621,dog 52622,airplane 52623,cat 52624,frog 52625,truck 52626,ship 52627,truck 52628,frog 52629,cat 52630,cat 52631,cat 52632,deer 52633,deer 52634,cat 52635,deer 52636,truck 52637,bird 52638,cat 52639,frog 52640,cat 52641,frog 52642,cat 52643,frog 52644,truck 52645,automobile 52646,frog 52647,automobile 52648,frog 52649,cat 52650,bird 52651,ship 52652,ship 52653,automobile 52654,horse 52655,truck 52656,airplane 52657,automobile 52658,dog 52659,ship 52660,dog 52661,deer 52662,bird 52663,bird 52664,bird 52665,cat 52666,frog 52667,deer 52668,ship 52669,truck 52670,dog 52671,frog 52672,cat 52673,horse 52674,cat 52675,ship 52676,deer 52677,automobile 52678,deer 52679,bird 52680,deer 52681,dog 52682,automobile 52683,bird 52684,cat 52685,frog 52686,truck 52687,dog 52688,ship 52689,frog 52690,ship 52691,truck 52692,bird 52693,deer 52694,truck 52695,automobile 52696,cat 52697,cat 52698,dog 52699,truck 52700,ship 52701,airplane 52702,automobile 52703,cat 52704,ship 52705,frog 52706,ship 52707,ship 52708,deer 52709,dog 52710,cat 52711,horse 52712,airplane 52713,frog 52714,bird 52715,cat 52716,cat 52717,frog 52718,frog 52719,frog 52720,horse 52721,deer 52722,dog 52723,dog 52724,cat 52725,bird 52726,ship 52727,deer 52728,dog 52729,deer 52730,frog 52731,airplane 52732,airplane 52733,deer 52734,frog 52735,bird 52736,automobile 52737,bird 52738,bird 52739,horse 52740,truck 52741,frog 52742,truck 52743,ship 52744,automobile 52745,ship 52746,airplane 52747,ship 52748,frog 52749,deer 52750,frog 52751,dog 52752,deer 52753,dog 52754,cat 52755,frog 52756,bird 52757,deer 52758,deer 52759,bird 52760,airplane 52761,cat 52762,bird 52763,dog 52764,airplane 52765,bird 52766,frog 52767,bird 52768,deer 52769,automobile 52770,airplane 52771,airplane 52772,frog 52773,automobile 52774,ship 52775,deer 52776,cat 52777,cat 52778,bird 52779,dog 52780,airplane 52781,dog 52782,horse 52783,automobile 52784,cat 52785,airplane 52786,airplane 52787,deer 52788,frog 52789,truck 52790,automobile 52791,ship 52792,bird 52793,airplane 52794,automobile 52795,airplane 52796,frog 52797,cat 52798,automobile 52799,bird 52800,truck 52801,dog 52802,horse 52803,airplane 52804,cat 52805,deer 52806,cat 52807,cat 52808,frog 52809,cat 52810,horse 52811,truck 52812,bird 52813,frog 52814,deer 52815,bird 52816,cat 52817,automobile 52818,deer 52819,dog 52820,ship 52821,automobile 52822,truck 52823,frog 52824,deer 52825,frog 52826,automobile 52827,cat 52828,deer 52829,ship 52830,ship 52831,ship 52832,bird 52833,deer 52834,automobile 52835,airplane 52836,cat 52837,cat 52838,ship 52839,frog 52840,frog 52841,airplane 52842,deer 52843,bird 52844,ship 52845,airplane 52846,cat 52847,frog 52848,bird 52849,truck 52850,horse 52851,airplane 52852,ship 52853,horse 52854,horse 52855,horse 52856,frog 52857,frog 52858,truck 52859,automobile 52860,truck 52861,deer 52862,horse 52863,bird 52864,frog 52865,ship 52866,frog 52867,automobile 52868,cat 52869,airplane 52870,automobile 52871,cat 52872,frog 52873,deer 52874,horse 52875,deer 52876,ship 52877,airplane 52878,bird 52879,deer 52880,cat 52881,cat 52882,dog 52883,truck 52884,deer 52885,automobile 52886,cat 52887,horse 52888,frog 52889,truck 52890,truck 52891,airplane 52892,frog 52893,automobile 52894,frog 52895,cat 52896,horse 52897,ship 52898,ship 52899,truck 52900,truck 52901,airplane 52902,frog 52903,truck 52904,horse 52905,airplane 52906,cat 52907,cat 52908,truck 52909,bird 52910,bird 52911,horse 52912,deer 52913,ship 52914,frog 52915,automobile 52916,horse 52917,cat 52918,dog 52919,bird 52920,frog 52921,dog 52922,truck 52923,cat 52924,cat 52925,horse 52926,cat 52927,ship 52928,deer 52929,deer 52930,dog 52931,bird 52932,truck 52933,bird 52934,deer 52935,airplane 52936,ship 52937,dog 52938,horse 52939,horse 52940,horse 52941,cat 52942,cat 52943,deer 52944,truck 52945,horse 52946,deer 52947,dog 52948,cat 52949,truck 52950,deer 52951,ship 52952,horse 52953,dog 52954,dog 52955,dog 52956,ship 52957,automobile 52958,horse 52959,frog 52960,deer 52961,ship 52962,dog 52963,frog 52964,dog 52965,automobile 52966,frog 52967,horse 52968,horse 52969,ship 52970,frog 52971,cat 52972,cat 52973,dog 52974,truck 52975,truck 52976,cat 52977,dog 52978,deer 52979,bird 52980,frog 52981,automobile 52982,cat 52983,deer 52984,deer 52985,horse 52986,dog 52987,deer 52988,bird 52989,cat 52990,deer 52991,horse 52992,horse 52993,deer 52994,airplane 52995,airplane 52996,cat 52997,cat 52998,horse 52999,automobile 53000,cat 53001,automobile 53002,frog 53003,bird 53004,ship 53005,cat 53006,deer 53007,horse 53008,cat 53009,frog 53010,horse 53011,frog 53012,frog 53013,cat 53014,truck 53015,dog 53016,deer 53017,airplane 53018,horse 53019,cat 53020,automobile 53021,deer 53022,cat 53023,cat 53024,airplane 53025,horse 53026,truck 53027,dog 53028,dog 53029,airplane 53030,frog 53031,truck 53032,horse 53033,deer 53034,truck 53035,dog 53036,automobile 53037,frog 53038,airplane 53039,truck 53040,deer 53041,automobile 53042,dog 53043,airplane 53044,cat 53045,deer 53046,airplane 53047,frog 53048,cat 53049,horse 53050,truck 53051,ship 53052,truck 53053,airplane 53054,cat 53055,deer 53056,dog 53057,truck 53058,airplane 53059,ship 53060,ship 53061,frog 53062,automobile 53063,cat 53064,ship 53065,deer 53066,deer 53067,deer 53068,deer 53069,deer 53070,horse 53071,bird 53072,ship 53073,cat 53074,dog 53075,cat 53076,horse 53077,cat 53078,bird 53079,frog 53080,bird 53081,horse 53082,deer 53083,frog 53084,automobile 53085,horse 53086,automobile 53087,deer 53088,bird 53089,bird 53090,cat 53091,dog 53092,cat 53093,airplane 53094,airplane 53095,dog 53096,truck 53097,cat 53098,dog 53099,bird 53100,bird 53101,dog 53102,truck 53103,truck 53104,bird 53105,frog 53106,frog 53107,airplane 53108,cat 53109,truck 53110,truck 53111,frog 53112,airplane 53113,ship 53114,airplane 53115,bird 53116,cat 53117,cat 53118,bird 53119,cat 53120,frog 53121,automobile 53122,airplane 53123,cat 53124,cat 53125,ship 53126,bird 53127,cat 53128,frog 53129,truck 53130,frog 53131,bird 53132,deer 53133,frog 53134,automobile 53135,cat 53136,airplane 53137,truck 53138,frog 53139,dog 53140,frog 53141,cat 53142,automobile 53143,frog 53144,airplane 53145,horse 53146,deer 53147,truck 53148,automobile 53149,deer 53150,ship 53151,deer 53152,frog 53153,horse 53154,bird 53155,cat 53156,cat 53157,deer 53158,deer 53159,frog 53160,dog 53161,ship 53162,horse 53163,bird 53164,ship 53165,automobile 53166,deer 53167,truck 53168,ship 53169,deer 53170,ship 53171,frog 53172,bird 53173,automobile 53174,deer 53175,cat 53176,dog 53177,truck 53178,horse 53179,frog 53180,ship 53181,deer 53182,cat 53183,horse 53184,ship 53185,frog 53186,ship 53187,deer 53188,horse 53189,automobile 53190,horse 53191,cat 53192,horse 53193,frog 53194,airplane 53195,dog 53196,cat 53197,deer 53198,cat 53199,truck 53200,horse 53201,horse 53202,frog 53203,airplane 53204,frog 53205,deer 53206,frog 53207,deer 53208,frog 53209,deer 53210,dog 53211,dog 53212,cat 53213,truck 53214,airplane 53215,ship 53216,deer 53217,cat 53218,dog 53219,bird 53220,automobile 53221,cat 53222,airplane 53223,horse 53224,automobile 53225,frog 53226,cat 53227,dog 53228,deer 53229,deer 53230,cat 53231,bird 53232,automobile 53233,cat 53234,dog 53235,frog 53236,truck 53237,deer 53238,automobile 53239,deer 53240,ship 53241,horse 53242,horse 53243,deer 53244,cat 53245,automobile 53246,horse 53247,deer 53248,deer 53249,cat 53250,dog 53251,frog 53252,cat 53253,horse 53254,dog 53255,horse 53256,cat 53257,automobile 53258,truck 53259,cat 53260,bird 53261,deer 53262,ship 53263,truck 53264,bird 53265,horse 53266,airplane 53267,airplane 53268,bird 53269,airplane 53270,horse 53271,horse 53272,airplane 53273,dog 53274,automobile 53275,deer 53276,automobile 53277,cat 53278,dog 53279,ship 53280,cat 53281,horse 53282,horse 53283,frog 53284,dog 53285,ship 53286,cat 53287,bird 53288,horse 53289,ship 53290,dog 53291,cat 53292,dog 53293,cat 53294,dog 53295,cat 53296,bird 53297,horse 53298,cat 53299,deer 53300,airplane 53301,truck 53302,ship 53303,truck 53304,truck 53305,deer 53306,truck 53307,deer 53308,automobile 53309,cat 53310,bird 53311,automobile 53312,truck 53313,automobile 53314,ship 53315,automobile 53316,ship 53317,deer 53318,automobile 53319,frog 53320,frog 53321,automobile 53322,dog 53323,automobile 53324,cat 53325,deer 53326,automobile 53327,truck 53328,ship 53329,cat 53330,dog 53331,automobile 53332,cat 53333,cat 53334,cat 53335,bird 53336,truck 53337,deer 53338,automobile 53339,cat 53340,frog 53341,frog 53342,airplane 53343,frog 53344,cat 53345,truck 53346,truck 53347,horse 53348,deer 53349,truck 53350,horse 53351,truck 53352,bird 53353,ship 53354,horse 53355,airplane 53356,cat 53357,truck 53358,automobile 53359,automobile 53360,dog 53361,bird 53362,cat 53363,frog 53364,bird 53365,cat 53366,ship 53367,frog 53368,cat 53369,airplane 53370,ship 53371,automobile 53372,airplane 53373,truck 53374,cat 53375,horse 53376,horse 53377,truck 53378,deer 53379,ship 53380,frog 53381,bird 53382,horse 53383,cat 53384,horse 53385,deer 53386,automobile 53387,horse 53388,horse 53389,horse 53390,automobile 53391,cat 53392,ship 53393,dog 53394,horse 53395,frog 53396,cat 53397,ship 53398,cat 53399,cat 53400,cat 53401,automobile 53402,automobile 53403,frog 53404,bird 53405,automobile 53406,truck 53407,automobile 53408,cat 53409,truck 53410,deer 53411,airplane 53412,dog 53413,horse 53414,frog 53415,bird 53416,ship 53417,dog 53418,deer 53419,automobile 53420,cat 53421,truck 53422,truck 53423,dog 53424,deer 53425,cat 53426,automobile 53427,automobile 53428,airplane 53429,frog 53430,truck 53431,deer 53432,bird 53433,deer 53434,deer 53435,truck 53436,ship 53437,frog 53438,frog 53439,airplane 53440,dog 53441,bird 53442,bird 53443,truck 53444,truck 53445,truck 53446,ship 53447,airplane 53448,truck 53449,deer 53450,ship 53451,automobile 53452,ship 53453,horse 53454,cat 53455,ship 53456,frog 53457,airplane 53458,deer 53459,bird 53460,frog 53461,ship 53462,cat 53463,cat 53464,bird 53465,deer 53466,automobile 53467,bird 53468,automobile 53469,deer 53470,deer 53471,truck 53472,deer 53473,airplane 53474,truck 53475,deer 53476,frog 53477,airplane 53478,cat 53479,frog 53480,deer 53481,cat 53482,truck 53483,bird 53484,truck 53485,bird 53486,horse 53487,airplane 53488,truck 53489,airplane 53490,horse 53491,airplane 53492,frog 53493,bird 53494,frog 53495,cat 53496,bird 53497,horse 53498,deer 53499,deer 53500,deer 53501,frog 53502,deer 53503,truck 53504,airplane 53505,airplane 53506,truck 53507,cat 53508,bird 53509,horse 53510,deer 53511,ship 53512,horse 53513,bird 53514,cat 53515,automobile 53516,ship 53517,deer 53518,deer 53519,horse 53520,horse 53521,frog 53522,deer 53523,airplane 53524,frog 53525,cat 53526,deer 53527,horse 53528,ship 53529,frog 53530,dog 53531,dog 53532,bird 53533,bird 53534,frog 53535,truck 53536,frog 53537,automobile 53538,dog 53539,frog 53540,deer 53541,ship 53542,bird 53543,deer 53544,automobile 53545,ship 53546,truck 53547,truck 53548,truck 53549,frog 53550,horse 53551,horse 53552,frog 53553,dog 53554,cat 53555,frog 53556,ship 53557,deer 53558,truck 53559,dog 53560,frog 53561,truck 53562,frog 53563,bird 53564,bird 53565,bird 53566,cat 53567,cat 53568,deer 53569,dog 53570,cat 53571,automobile 53572,dog 53573,truck 53574,deer 53575,truck 53576,cat 53577,frog 53578,deer 53579,horse 53580,dog 53581,frog 53582,bird 53583,ship 53584,cat 53585,deer 53586,truck 53587,deer 53588,bird 53589,truck 53590,horse 53591,horse 53592,ship 53593,horse 53594,ship 53595,deer 53596,dog 53597,automobile 53598,bird 53599,bird 53600,truck 53601,truck 53602,airplane 53603,truck 53604,truck 53605,cat 53606,automobile 53607,ship 53608,truck 53609,bird 53610,frog 53611,bird 53612,dog 53613,frog 53614,frog 53615,cat 53616,horse 53617,airplane 53618,frog 53619,bird 53620,horse 53621,frog 53622,truck 53623,bird 53624,dog 53625,airplane 53626,bird 53627,ship 53628,automobile 53629,deer 53630,cat 53631,bird 53632,horse 53633,bird 53634,horse 53635,airplane 53636,automobile 53637,deer 53638,deer 53639,dog 53640,cat 53641,dog 53642,ship 53643,ship 53644,cat 53645,frog 53646,horse 53647,cat 53648,horse 53649,ship 53650,dog 53651,bird 53652,automobile 53653,truck 53654,horse 53655,airplane 53656,horse 53657,deer 53658,bird 53659,dog 53660,truck 53661,bird 53662,cat 53663,automobile 53664,ship 53665,deer 53666,horse 53667,ship 53668,ship 53669,dog 53670,ship 53671,dog 53672,deer 53673,truck 53674,ship 53675,deer 53676,bird 53677,frog 53678,bird 53679,bird 53680,cat 53681,airplane 53682,ship 53683,frog 53684,horse 53685,frog 53686,ship 53687,automobile 53688,bird 53689,bird 53690,truck 53691,cat 53692,frog 53693,horse 53694,cat 53695,deer 53696,frog 53697,frog 53698,dog 53699,dog 53700,bird 53701,bird 53702,dog 53703,frog 53704,airplane 53705,ship 53706,automobile 53707,deer 53708,bird 53709,airplane 53710,frog 53711,frog 53712,frog 53713,deer 53714,frog 53715,airplane 53716,cat 53717,deer 53718,cat 53719,bird 53720,bird 53721,cat 53722,frog 53723,truck 53724,horse 53725,dog 53726,horse 53727,truck 53728,ship 53729,cat 53730,frog 53731,horse 53732,dog 53733,automobile 53734,ship 53735,deer 53736,truck 53737,airplane 53738,airplane 53739,horse 53740,bird 53741,automobile 53742,bird 53743,truck 53744,airplane 53745,automobile 53746,bird 53747,cat 53748,cat 53749,bird 53750,horse 53751,frog 53752,airplane 53753,cat 53754,ship 53755,ship 53756,deer 53757,automobile 53758,deer 53759,deer 53760,dog 53761,ship 53762,dog 53763,frog 53764,deer 53765,deer 53766,horse 53767,cat 53768,automobile 53769,deer 53770,dog 53771,frog 53772,deer 53773,frog 53774,ship 53775,ship 53776,dog 53777,truck 53778,automobile 53779,bird 53780,truck 53781,truck 53782,horse 53783,deer 53784,automobile 53785,dog 53786,cat 53787,airplane 53788,cat 53789,dog 53790,ship 53791,dog 53792,ship 53793,bird 53794,horse 53795,airplane 53796,frog 53797,automobile 53798,dog 53799,deer 53800,bird 53801,frog 53802,dog 53803,dog 53804,truck 53805,frog 53806,truck 53807,truck 53808,frog 53809,frog 53810,truck 53811,truck 53812,bird 53813,frog 53814,horse 53815,dog 53816,airplane 53817,airplane 53818,bird 53819,bird 53820,deer 53821,truck 53822,cat 53823,cat 53824,cat 53825,cat 53826,dog 53827,frog 53828,cat 53829,airplane 53830,frog 53831,automobile 53832,airplane 53833,dog 53834,dog 53835,ship 53836,truck 53837,deer 53838,deer 53839,frog 53840,ship 53841,horse 53842,bird 53843,ship 53844,ship 53845,ship 53846,deer 53847,horse 53848,deer 53849,cat 53850,frog 53851,dog 53852,deer 53853,deer 53854,deer 53855,ship 53856,ship 53857,cat 53858,dog 53859,horse 53860,horse 53861,airplane 53862,truck 53863,deer 53864,frog 53865,deer 53866,automobile 53867,bird 53868,deer 53869,automobile 53870,cat 53871,frog 53872,automobile 53873,horse 53874,frog 53875,truck 53876,frog 53877,automobile 53878,ship 53879,bird 53880,airplane 53881,automobile 53882,truck 53883,frog 53884,cat 53885,bird 53886,deer 53887,frog 53888,automobile 53889,dog 53890,dog 53891,frog 53892,airplane 53893,truck 53894,dog 53895,deer 53896,truck 53897,frog 53898,airplane 53899,bird 53900,dog 53901,ship 53902,deer 53903,frog 53904,ship 53905,bird 53906,bird 53907,horse 53908,frog 53909,automobile 53910,dog 53911,bird 53912,frog 53913,deer 53914,frog 53915,dog 53916,bird 53917,ship 53918,frog 53919,bird 53920,bird 53921,horse 53922,dog 53923,deer 53924,cat 53925,truck 53926,dog 53927,airplane 53928,airplane 53929,deer 53930,deer 53931,truck 53932,dog 53933,deer 53934,cat 53935,deer 53936,deer 53937,dog 53938,deer 53939,ship 53940,horse 53941,bird 53942,airplane 53943,truck 53944,cat 53945,bird 53946,truck 53947,ship 53948,frog 53949,deer 53950,horse 53951,cat 53952,bird 53953,airplane 53954,dog 53955,frog 53956,deer 53957,deer 53958,cat 53959,deer 53960,dog 53961,automobile 53962,cat 53963,bird 53964,dog 53965,deer 53966,airplane 53967,horse 53968,airplane 53969,ship 53970,truck 53971,airplane 53972,horse 53973,frog 53974,deer 53975,dog 53976,cat 53977,cat 53978,ship 53979,automobile 53980,airplane 53981,airplane 53982,frog 53983,ship 53984,deer 53985,horse 53986,deer 53987,airplane 53988,dog 53989,cat 53990,dog 53991,dog 53992,deer 53993,horse 53994,airplane 53995,bird 53996,truck 53997,ship 53998,truck 53999,deer 54000,frog 54001,bird 54002,cat 54003,truck 54004,deer 54005,dog 54006,horse 54007,ship 54008,deer 54009,deer 54010,airplane 54011,frog 54012,cat 54013,bird 54014,dog 54015,deer 54016,cat 54017,automobile 54018,truck 54019,dog 54020,truck 54021,dog 54022,deer 54023,frog 54024,cat 54025,automobile 54026,deer 54027,automobile 54028,airplane 54029,truck 54030,cat 54031,airplane 54032,airplane 54033,automobile 54034,dog 54035,frog 54036,ship 54037,horse 54038,airplane 54039,cat 54040,cat 54041,ship 54042,cat 54043,ship 54044,truck 54045,horse 54046,frog 54047,bird 54048,frog 54049,horse 54050,airplane 54051,truck 54052,truck 54053,deer 54054,truck 54055,horse 54056,frog 54057,dog 54058,cat 54059,bird 54060,dog 54061,cat 54062,cat 54063,airplane 54064,cat 54065,horse 54066,cat 54067,ship 54068,deer 54069,automobile 54070,ship 54071,truck 54072,truck 54073,ship 54074,truck 54075,horse 54076,ship 54077,ship 54078,cat 54079,frog 54080,bird 54081,horse 54082,cat 54083,deer 54084,deer 54085,dog 54086,deer 54087,truck 54088,bird 54089,frog 54090,cat 54091,deer 54092,horse 54093,airplane 54094,dog 54095,ship 54096,truck 54097,automobile 54098,frog 54099,bird 54100,dog 54101,bird 54102,frog 54103,airplane 54104,frog 54105,cat 54106,frog 54107,deer 54108,truck 54109,dog 54110,cat 54111,ship 54112,deer 54113,frog 54114,cat 54115,ship 54116,automobile 54117,ship 54118,deer 54119,cat 54120,ship 54121,automobile 54122,frog 54123,cat 54124,horse 54125,horse 54126,automobile 54127,automobile 54128,truck 54129,ship 54130,dog 54131,horse 54132,dog 54133,deer 54134,cat 54135,frog 54136,dog 54137,airplane 54138,bird 54139,dog 54140,deer 54141,automobile 54142,truck 54143,cat 54144,deer 54145,frog 54146,dog 54147,airplane 54148,deer 54149,dog 54150,frog 54151,frog 54152,horse 54153,frog 54154,cat 54155,horse 54156,dog 54157,horse 54158,ship 54159,cat 54160,frog 54161,dog 54162,bird 54163,horse 54164,deer 54165,bird 54166,frog 54167,automobile 54168,ship 54169,truck 54170,airplane 54171,deer 54172,frog 54173,frog 54174,deer 54175,airplane 54176,cat 54177,frog 54178,airplane 54179,ship 54180,cat 54181,truck 54182,deer 54183,bird 54184,truck 54185,bird 54186,horse 54187,ship 54188,deer 54189,frog 54190,frog 54191,dog 54192,deer 54193,deer 54194,frog 54195,deer 54196,cat 54197,truck 54198,automobile 54199,airplane 54200,dog 54201,truck 54202,ship 54203,deer 54204,ship 54205,airplane 54206,automobile 54207,cat 54208,frog 54209,automobile 54210,cat 54211,bird 54212,horse 54213,cat 54214,frog 54215,horse 54216,frog 54217,truck 54218,deer 54219,cat 54220,airplane 54221,frog 54222,bird 54223,airplane 54224,frog 54225,dog 54226,dog 54227,horse 54228,deer 54229,cat 54230,airplane 54231,automobile 54232,cat 54233,airplane 54234,bird 54235,cat 54236,deer 54237,truck 54238,automobile 54239,frog 54240,cat 54241,deer 54242,dog 54243,deer 54244,ship 54245,bird 54246,frog 54247,deer 54248,frog 54249,truck 54250,airplane 54251,frog 54252,cat 54253,truck 54254,horse 54255,dog 54256,automobile 54257,bird 54258,airplane 54259,cat 54260,frog 54261,bird 54262,truck 54263,frog 54264,dog 54265,truck 54266,bird 54267,bird 54268,deer 54269,deer 54270,ship 54271,horse 54272,deer 54273,ship 54274,frog 54275,horse 54276,frog 54277,automobile 54278,airplane 54279,automobile 54280,deer 54281,bird 54282,dog 54283,ship 54284,ship 54285,horse 54286,dog 54287,bird 54288,deer 54289,frog 54290,ship 54291,cat 54292,truck 54293,ship 54294,frog 54295,airplane 54296,horse 54297,deer 54298,dog 54299,cat 54300,ship 54301,truck 54302,cat 54303,ship 54304,cat 54305,dog 54306,cat 54307,cat 54308,automobile 54309,frog 54310,dog 54311,bird 54312,truck 54313,deer 54314,airplane 54315,ship 54316,deer 54317,airplane 54318,cat 54319,truck 54320,frog 54321,frog 54322,bird 54323,airplane 54324,horse 54325,deer 54326,frog 54327,truck 54328,airplane 54329,automobile 54330,deer 54331,cat 54332,frog 54333,bird 54334,horse 54335,truck 54336,ship 54337,dog 54338,ship 54339,cat 54340,bird 54341,automobile 54342,horse 54343,horse 54344,airplane 54345,cat 54346,cat 54347,deer 54348,bird 54349,airplane 54350,cat 54351,frog 54352,horse 54353,bird 54354,automobile 54355,frog 54356,truck 54357,dog 54358,horse 54359,bird 54360,airplane 54361,ship 54362,bird 54363,cat 54364,ship 54365,dog 54366,cat 54367,dog 54368,airplane 54369,bird 54370,truck 54371,airplane 54372,dog 54373,bird 54374,frog 54375,cat 54376,deer 54377,cat 54378,deer 54379,airplane 54380,ship 54381,cat 54382,truck 54383,airplane 54384,truck 54385,deer 54386,deer 54387,ship 54388,bird 54389,automobile 54390,deer 54391,bird 54392,cat 54393,horse 54394,cat 54395,bird 54396,ship 54397,airplane 54398,bird 54399,deer 54400,cat 54401,cat 54402,airplane 54403,airplane 54404,deer 54405,bird 54406,frog 54407,dog 54408,automobile 54409,automobile 54410,cat 54411,cat 54412,ship 54413,ship 54414,deer 54415,ship 54416,frog 54417,airplane 54418,cat 54419,truck 54420,horse 54421,automobile 54422,ship 54423,frog 54424,ship 54425,deer 54426,cat 54427,automobile 54428,frog 54429,frog 54430,automobile 54431,truck 54432,cat 54433,airplane 54434,automobile 54435,frog 54436,horse 54437,automobile 54438,bird 54439,deer 54440,automobile 54441,cat 54442,ship 54443,frog 54444,airplane 54445,dog 54446,deer 54447,bird 54448,ship 54449,cat 54450,deer 54451,cat 54452,horse 54453,frog 54454,deer 54455,frog 54456,airplane 54457,truck 54458,frog 54459,frog 54460,frog 54461,ship 54462,ship 54463,dog 54464,cat 54465,airplane 54466,cat 54467,ship 54468,airplane 54469,dog 54470,horse 54471,frog 54472,airplane 54473,truck 54474,airplane 54475,frog 54476,cat 54477,airplane 54478,truck 54479,cat 54480,deer 54481,automobile 54482,automobile 54483,deer 54484,deer 54485,horse 54486,ship 54487,bird 54488,horse 54489,horse 54490,airplane 54491,bird 54492,horse 54493,automobile 54494,cat 54495,horse 54496,bird 54497,cat 54498,automobile 54499,truck 54500,deer 54501,frog 54502,automobile 54503,ship 54504,horse 54505,horse 54506,frog 54507,dog 54508,automobile 54509,automobile 54510,ship 54511,automobile 54512,automobile 54513,truck 54514,horse 54515,deer 54516,ship 54517,cat 54518,dog 54519,frog 54520,automobile 54521,automobile 54522,automobile 54523,dog 54524,bird 54525,dog 54526,ship 54527,airplane 54528,frog 54529,truck 54530,cat 54531,frog 54532,cat 54533,dog 54534,airplane 54535,dog 54536,bird 54537,dog 54538,frog 54539,deer 54540,bird 54541,bird 54542,bird 54543,airplane 54544,dog 54545,frog 54546,horse 54547,truck 54548,cat 54549,dog 54550,dog 54551,truck 54552,deer 54553,bird 54554,deer 54555,airplane 54556,dog 54557,frog 54558,horse 54559,truck 54560,dog 54561,cat 54562,automobile 54563,airplane 54564,horse 54565,airplane 54566,ship 54567,horse 54568,frog 54569,ship 54570,automobile 54571,cat 54572,deer 54573,dog 54574,frog 54575,dog 54576,ship 54577,dog 54578,deer 54579,frog 54580,frog 54581,automobile 54582,truck 54583,frog 54584,frog 54585,deer 54586,cat 54587,automobile 54588,dog 54589,truck 54590,dog 54591,dog 54592,dog 54593,dog 54594,truck 54595,bird 54596,cat 54597,automobile 54598,ship 54599,horse 54600,truck 54601,truck 54602,dog 54603,bird 54604,dog 54605,bird 54606,cat 54607,frog 54608,deer 54609,airplane 54610,airplane 54611,dog 54612,automobile 54613,dog 54614,automobile 54615,automobile 54616,dog 54617,frog 54618,frog 54619,deer 54620,airplane 54621,ship 54622,cat 54623,airplane 54624,ship 54625,truck 54626,bird 54627,cat 54628,cat 54629,cat 54630,deer 54631,deer 54632,airplane 54633,frog 54634,deer 54635,horse 54636,deer 54637,horse 54638,bird 54639,bird 54640,deer 54641,truck 54642,airplane 54643,dog 54644,frog 54645,deer 54646,ship 54647,deer 54648,cat 54649,ship 54650,bird 54651,automobile 54652,frog 54653,deer 54654,deer 54655,dog 54656,frog 54657,deer 54658,horse 54659,deer 54660,truck 54661,deer 54662,frog 54663,truck 54664,automobile 54665,bird 54666,frog 54667,frog 54668,frog 54669,truck 54670,dog 54671,truck 54672,cat 54673,automobile 54674,dog 54675,automobile 54676,horse 54677,cat 54678,truck 54679,horse 54680,frog 54681,dog 54682,airplane 54683,bird 54684,truck 54685,truck 54686,deer 54687,truck 54688,bird 54689,ship 54690,ship 54691,dog 54692,airplane 54693,ship 54694,horse 54695,frog 54696,horse 54697,truck 54698,cat 54699,truck 54700,horse 54701,frog 54702,horse 54703,cat 54704,frog 54705,dog 54706,automobile 54707,truck 54708,deer 54709,deer 54710,ship 54711,automobile 54712,cat 54713,horse 54714,dog 54715,bird 54716,bird 54717,cat 54718,automobile 54719,deer 54720,ship 54721,dog 54722,deer 54723,frog 54724,dog 54725,cat 54726,airplane 54727,bird 54728,horse 54729,horse 54730,dog 54731,dog 54732,horse 54733,automobile 54734,deer 54735,truck 54736,deer 54737,frog 54738,deer 54739,bird 54740,airplane 54741,cat 54742,dog 54743,ship 54744,frog 54745,bird 54746,dog 54747,horse 54748,deer 54749,frog 54750,deer 54751,ship 54752,cat 54753,automobile 54754,airplane 54755,frog 54756,deer 54757,truck 54758,deer 54759,ship 54760,dog 54761,deer 54762,dog 54763,dog 54764,cat 54765,horse 54766,truck 54767,frog 54768,airplane 54769,bird 54770,automobile 54771,dog 54772,truck 54773,truck 54774,dog 54775,frog 54776,frog 54777,horse 54778,cat 54779,truck 54780,dog 54781,deer 54782,frog 54783,deer 54784,dog 54785,automobile 54786,truck 54787,frog 54788,cat 54789,frog 54790,horse 54791,cat 54792,frog 54793,airplane 54794,deer 54795,ship 54796,truck 54797,automobile 54798,horse 54799,truck 54800,deer 54801,frog 54802,dog 54803,dog 54804,cat 54805,deer 54806,frog 54807,automobile 54808,deer 54809,horse 54810,cat 54811,ship 54812,deer 54813,airplane 54814,bird 54815,cat 54816,automobile 54817,horse 54818,cat 54819,automobile 54820,deer 54821,cat 54822,ship 54823,truck 54824,bird 54825,airplane 54826,deer 54827,ship 54828,dog 54829,bird 54830,bird 54831,horse 54832,frog 54833,horse 54834,automobile 54835,cat 54836,ship 54837,truck 54838,deer 54839,truck 54840,horse 54841,automobile 54842,deer 54843,horse 54844,cat 54845,automobile 54846,cat 54847,cat 54848,cat 54849,airplane 54850,ship 54851,horse 54852,frog 54853,bird 54854,frog 54855,ship 54856,automobile 54857,truck 54858,dog 54859,horse 54860,frog 54861,horse 54862,cat 54863,truck 54864,frog 54865,frog 54866,cat 54867,truck 54868,deer 54869,frog 54870,truck 54871,automobile 54872,airplane 54873,automobile 54874,bird 54875,cat 54876,truck 54877,cat 54878,dog 54879,deer 54880,deer 54881,truck 54882,automobile 54883,ship 54884,deer 54885,frog 54886,dog 54887,automobile 54888,horse 54889,frog 54890,truck 54891,horse 54892,bird 54893,horse 54894,horse 54895,ship 54896,cat 54897,dog 54898,horse 54899,frog 54900,ship 54901,ship 54902,deer 54903,horse 54904,horse 54905,frog 54906,dog 54907,cat 54908,deer 54909,airplane 54910,cat 54911,automobile 54912,frog 54913,horse 54914,ship 54915,deer 54916,automobile 54917,airplane 54918,horse 54919,bird 54920,automobile 54921,dog 54922,automobile 54923,cat 54924,dog 54925,bird 54926,cat 54927,airplane 54928,truck 54929,horse 54930,frog 54931,deer 54932,cat 54933,dog 54934,deer 54935,frog 54936,automobile 54937,automobile 54938,horse 54939,automobile 54940,frog 54941,automobile 54942,dog 54943,frog 54944,truck 54945,frog 54946,automobile 54947,cat 54948,airplane 54949,dog 54950,frog 54951,deer 54952,dog 54953,airplane 54954,bird 54955,bird 54956,deer 54957,cat 54958,frog 54959,bird 54960,ship 54961,frog 54962,cat 54963,truck 54964,deer 54965,airplane 54966,deer 54967,cat 54968,airplane 54969,frog 54970,bird 54971,deer 54972,frog 54973,dog 54974,ship 54975,horse 54976,horse 54977,deer 54978,dog 54979,airplane 54980,deer 54981,ship 54982,dog 54983,frog 54984,airplane 54985,cat 54986,ship 54987,deer 54988,bird 54989,automobile 54990,frog 54991,dog 54992,horse 54993,horse 54994,truck 54995,bird 54996,cat 54997,truck 54998,deer 54999,airplane 55000,cat 55001,horse 55002,bird 55003,automobile 55004,cat 55005,deer 55006,dog 55007,bird 55008,cat 55009,dog 55010,deer 55011,ship 55012,cat 55013,automobile 55014,dog 55015,truck 55016,automobile 55017,cat 55018,deer 55019,ship 55020,cat 55021,frog 55022,cat 55023,bird 55024,frog 55025,automobile 55026,horse 55027,bird 55028,bird 55029,cat 55030,dog 55031,deer 55032,airplane 55033,cat 55034,bird 55035,cat 55036,bird 55037,bird 55038,frog 55039,dog 55040,deer 55041,bird 55042,horse 55043,cat 55044,cat 55045,automobile 55046,cat 55047,deer 55048,dog 55049,horse 55050,truck 55051,dog 55052,cat 55053,cat 55054,horse 55055,horse 55056,frog 55057,cat 55058,ship 55059,cat 55060,truck 55061,airplane 55062,deer 55063,ship 55064,truck 55065,horse 55066,truck 55067,cat 55068,deer 55069,cat 55070,bird 55071,deer 55072,truck 55073,frog 55074,frog 55075,ship 55076,bird 55077,dog 55078,horse 55079,bird 55080,truck 55081,dog 55082,cat 55083,truck 55084,ship 55085,ship 55086,airplane 55087,dog 55088,horse 55089,cat 55090,dog 55091,truck 55092,dog 55093,frog 55094,horse 55095,ship 55096,truck 55097,truck 55098,automobile 55099,deer 55100,automobile 55101,dog 55102,bird 55103,cat 55104,dog 55105,cat 55106,deer 55107,dog 55108,deer 55109,dog 55110,airplane 55111,cat 55112,cat 55113,truck 55114,truck 55115,cat 55116,automobile 55117,automobile 55118,automobile 55119,bird 55120,dog 55121,cat 55122,dog 55123,deer 55124,dog 55125,truck 55126,airplane 55127,ship 55128,bird 55129,frog 55130,bird 55131,truck 55132,cat 55133,bird 55134,frog 55135,truck 55136,automobile 55137,cat 55138,frog 55139,airplane 55140,frog 55141,ship 55142,cat 55143,frog 55144,automobile 55145,deer 55146,deer 55147,deer 55148,horse 55149,cat 55150,ship 55151,airplane 55152,ship 55153,cat 55154,horse 55155,deer 55156,bird 55157,deer 55158,dog 55159,cat 55160,cat 55161,deer 55162,airplane 55163,truck 55164,automobile 55165,truck 55166,automobile 55167,deer 55168,frog 55169,cat 55170,dog 55171,ship 55172,airplane 55173,truck 55174,cat 55175,deer 55176,frog 55177,cat 55178,frog 55179,airplane 55180,cat 55181,frog 55182,ship 55183,deer 55184,cat 55185,cat 55186,horse 55187,frog 55188,automobile 55189,frog 55190,truck 55191,dog 55192,airplane 55193,airplane 55194,truck 55195,automobile 55196,deer 55197,dog 55198,truck 55199,bird 55200,deer 55201,cat 55202,deer 55203,cat 55204,horse 55205,horse 55206,ship 55207,cat 55208,deer 55209,bird 55210,truck 55211,horse 55212,dog 55213,airplane 55214,airplane 55215,bird 55216,dog 55217,dog 55218,airplane 55219,horse 55220,bird 55221,frog 55222,dog 55223,horse 55224,bird 55225,deer 55226,frog 55227,truck 55228,truck 55229,frog 55230,cat 55231,airplane 55232,automobile 55233,ship 55234,frog 55235,airplane 55236,dog 55237,bird 55238,deer 55239,bird 55240,automobile 55241,dog 55242,airplane 55243,airplane 55244,bird 55245,ship 55246,horse 55247,airplane 55248,cat 55249,frog 55250,airplane 55251,horse 55252,cat 55253,automobile 55254,deer 55255,automobile 55256,bird 55257,bird 55258,bird 55259,dog 55260,frog 55261,ship 55262,deer 55263,deer 55264,deer 55265,deer 55266,horse 55267,cat 55268,airplane 55269,ship 55270,frog 55271,truck 55272,bird 55273,dog 55274,ship 55275,cat 55276,frog 55277,cat 55278,deer 55279,dog 55280,truck 55281,bird 55282,deer 55283,bird 55284,horse 55285,deer 55286,truck 55287,dog 55288,horse 55289,ship 55290,deer 55291,dog 55292,horse 55293,automobile 55294,ship 55295,bird 55296,airplane 55297,ship 55298,bird 55299,dog 55300,dog 55301,bird 55302,truck 55303,airplane 55304,cat 55305,cat 55306,cat 55307,bird 55308,truck 55309,truck 55310,automobile 55311,bird 55312,horse 55313,ship 55314,ship 55315,airplane 55316,frog 55317,deer 55318,frog 55319,cat 55320,horse 55321,horse 55322,horse 55323,automobile 55324,cat 55325,ship 55326,truck 55327,automobile 55328,deer 55329,deer 55330,bird 55331,bird 55332,dog 55333,airplane 55334,cat 55335,bird 55336,deer 55337,automobile 55338,ship 55339,automobile 55340,horse 55341,bird 55342,cat 55343,automobile 55344,ship 55345,horse 55346,airplane 55347,deer 55348,automobile 55349,airplane 55350,ship 55351,horse 55352,automobile 55353,dog 55354,deer 55355,cat 55356,ship 55357,truck 55358,horse 55359,deer 55360,bird 55361,ship 55362,frog 55363,dog 55364,ship 55365,frog 55366,cat 55367,truck 55368,deer 55369,truck 55370,automobile 55371,automobile 55372,truck 55373,cat 55374,frog 55375,frog 55376,automobile 55377,automobile 55378,ship 55379,cat 55380,cat 55381,horse 55382,horse 55383,truck 55384,frog 55385,dog 55386,dog 55387,deer 55388,cat 55389,dog 55390,deer 55391,deer 55392,airplane 55393,dog 55394,dog 55395,frog 55396,automobile 55397,cat 55398,truck 55399,deer 55400,frog 55401,cat 55402,deer 55403,automobile 55404,dog 55405,truck 55406,truck 55407,horse 55408,frog 55409,deer 55410,deer 55411,cat 55412,frog 55413,ship 55414,cat 55415,horse 55416,horse 55417,automobile 55418,deer 55419,bird 55420,ship 55421,truck 55422,truck 55423,horse 55424,bird 55425,frog 55426,deer 55427,airplane 55428,cat 55429,deer 55430,cat 55431,bird 55432,horse 55433,deer 55434,dog 55435,truck 55436,airplane 55437,ship 55438,truck 55439,automobile 55440,deer 55441,dog 55442,dog 55443,ship 55444,dog 55445,frog 55446,dog 55447,cat 55448,frog 55449,horse 55450,frog 55451,automobile 55452,deer 55453,cat 55454,deer 55455,horse 55456,ship 55457,airplane 55458,cat 55459,frog 55460,deer 55461,truck 55462,airplane 55463,truck 55464,automobile 55465,horse 55466,dog 55467,deer 55468,deer 55469,horse 55470,cat 55471,ship 55472,dog 55473,deer 55474,ship 55475,automobile 55476,ship 55477,automobile 55478,bird 55479,cat 55480,horse 55481,truck 55482,dog 55483,truck 55484,deer 55485,automobile 55486,airplane 55487,cat 55488,automobile 55489,cat 55490,frog 55491,horse 55492,truck 55493,cat 55494,ship 55495,frog 55496,deer 55497,bird 55498,cat 55499,truck 55500,truck 55501,automobile 55502,dog 55503,dog 55504,dog 55505,truck 55506,deer 55507,cat 55508,horse 55509,bird 55510,ship 55511,horse 55512,airplane 55513,cat 55514,deer 55515,automobile 55516,deer 55517,frog 55518,frog 55519,ship 55520,dog 55521,deer 55522,frog 55523,bird 55524,bird 55525,frog 55526,dog 55527,automobile 55528,bird 55529,airplane 55530,cat 55531,frog 55532,deer 55533,cat 55534,cat 55535,cat 55536,horse 55537,airplane 55538,cat 55539,ship 55540,frog 55541,horse 55542,frog 55543,bird 55544,airplane 55545,bird 55546,dog 55547,horse 55548,bird 55549,cat 55550,cat 55551,frog 55552,horse 55553,deer 55554,deer 55555,deer 55556,bird 55557,cat 55558,dog 55559,truck 55560,cat 55561,bird 55562,cat 55563,automobile 55564,deer 55565,automobile 55566,airplane 55567,cat 55568,ship 55569,dog 55570,automobile 55571,truck 55572,horse 55573,airplane 55574,ship 55575,dog 55576,cat 55577,bird 55578,ship 55579,airplane 55580,bird 55581,horse 55582,truck 55583,frog 55584,automobile 55585,cat 55586,frog 55587,ship 55588,automobile 55589,cat 55590,cat 55591,truck 55592,cat 55593,cat 55594,airplane 55595,automobile 55596,deer 55597,frog 55598,automobile 55599,frog 55600,frog 55601,horse 55602,horse 55603,frog 55604,ship 55605,cat 55606,deer 55607,horse 55608,dog 55609,cat 55610,frog 55611,bird 55612,cat 55613,frog 55614,frog 55615,dog 55616,automobile 55617,truck 55618,deer 55619,automobile 55620,truck 55621,airplane 55622,horse 55623,frog 55624,dog 55625,cat 55626,frog 55627,airplane 55628,cat 55629,cat 55630,cat 55631,airplane 55632,truck 55633,automobile 55634,frog 55635,bird 55636,ship 55637,frog 55638,bird 55639,airplane 55640,truck 55641,truck 55642,ship 55643,horse 55644,airplane 55645,automobile 55646,frog 55647,deer 55648,deer 55649,ship 55650,deer 55651,deer 55652,cat 55653,deer 55654,automobile 55655,truck 55656,horse 55657,horse 55658,dog 55659,frog 55660,deer 55661,airplane 55662,bird 55663,cat 55664,frog 55665,ship 55666,dog 55667,dog 55668,ship 55669,dog 55670,frog 55671,horse 55672,frog 55673,deer 55674,dog 55675,automobile 55676,ship 55677,frog 55678,truck 55679,truck 55680,truck 55681,cat 55682,deer 55683,cat 55684,deer 55685,truck 55686,frog 55687,deer 55688,cat 55689,automobile 55690,frog 55691,automobile 55692,cat 55693,frog 55694,automobile 55695,cat 55696,automobile 55697,airplane 55698,deer 55699,dog 55700,dog 55701,airplane 55702,truck 55703,dog 55704,horse 55705,frog 55706,cat 55707,deer 55708,deer 55709,deer 55710,frog 55711,airplane 55712,bird 55713,automobile 55714,automobile 55715,frog 55716,bird 55717,bird 55718,airplane 55719,bird 55720,automobile 55721,frog 55722,truck 55723,dog 55724,deer 55725,dog 55726,frog 55727,deer 55728,cat 55729,horse 55730,frog 55731,dog 55732,cat 55733,frog 55734,airplane 55735,deer 55736,dog 55737,cat 55738,cat 55739,automobile 55740,horse 55741,truck 55742,dog 55743,horse 55744,ship 55745,ship 55746,frog 55747,deer 55748,bird 55749,deer 55750,ship 55751,cat 55752,dog 55753,deer 55754,bird 55755,bird 55756,deer 55757,automobile 55758,horse 55759,cat 55760,truck 55761,frog 55762,bird 55763,ship 55764,cat 55765,cat 55766,airplane 55767,deer 55768,airplane 55769,ship 55770,frog 55771,cat 55772,bird 55773,cat 55774,frog 55775,bird 55776,dog 55777,ship 55778,ship 55779,ship 55780,cat 55781,bird 55782,ship 55783,horse 55784,deer 55785,dog 55786,frog 55787,frog 55788,airplane 55789,bird 55790,deer 55791,ship 55792,ship 55793,truck 55794,deer 55795,cat 55796,truck 55797,cat 55798,frog 55799,deer 55800,deer 55801,deer 55802,bird 55803,automobile 55804,cat 55805,truck 55806,horse 55807,airplane 55808,horse 55809,truck 55810,deer 55811,ship 55812,deer 55813,cat 55814,frog 55815,dog 55816,cat 55817,frog 55818,cat 55819,frog 55820,horse 55821,truck 55822,ship 55823,bird 55824,airplane 55825,dog 55826,ship 55827,cat 55828,cat 55829,ship 55830,dog 55831,deer 55832,airplane 55833,horse 55834,dog 55835,ship 55836,airplane 55837,airplane 55838,deer 55839,bird 55840,airplane 55841,frog 55842,bird 55843,horse 55844,bird 55845,frog 55846,bird 55847,horse 55848,cat 55849,ship 55850,automobile 55851,bird 55852,bird 55853,deer 55854,dog 55855,airplane 55856,airplane 55857,frog 55858,truck 55859,automobile 55860,airplane 55861,frog 55862,deer 55863,cat 55864,frog 55865,truck 55866,dog 55867,airplane 55868,airplane 55869,bird 55870,horse 55871,frog 55872,deer 55873,automobile 55874,cat 55875,deer 55876,dog 55877,truck 55878,airplane 55879,bird 55880,truck 55881,deer 55882,frog 55883,ship 55884,ship 55885,horse 55886,deer 55887,frog 55888,horse 55889,frog 55890,horse 55891,truck 55892,automobile 55893,bird 55894,automobile 55895,deer 55896,deer 55897,airplane 55898,bird 55899,frog 55900,bird 55901,frog 55902,deer 55903,deer 55904,truck 55905,deer 55906,deer 55907,bird 55908,deer 55909,airplane 55910,cat 55911,ship 55912,frog 55913,airplane 55914,automobile 55915,frog 55916,cat 55917,deer 55918,truck 55919,dog 55920,frog 55921,deer 55922,cat 55923,dog 55924,dog 55925,automobile 55926,horse 55927,frog 55928,airplane 55929,frog 55930,automobile 55931,automobile 55932,truck 55933,cat 55934,cat 55935,bird 55936,truck 55937,ship 55938,cat 55939,airplane 55940,horse 55941,airplane 55942,frog 55943,cat 55944,ship 55945,cat 55946,frog 55947,deer 55948,automobile 55949,truck 55950,automobile 55951,ship 55952,truck 55953,cat 55954,cat 55955,ship 55956,bird 55957,airplane 55958,cat 55959,airplane 55960,deer 55961,truck 55962,horse 55963,dog 55964,truck 55965,ship 55966,cat 55967,airplane 55968,horse 55969,deer 55970,deer 55971,deer 55972,truck 55973,truck 55974,frog 55975,truck 55976,airplane 55977,horse 55978,airplane 55979,deer 55980,cat 55981,airplane 55982,cat 55983,cat 55984,ship 55985,dog 55986,cat 55987,deer 55988,deer 55989,airplane 55990,airplane 55991,cat 55992,frog 55993,bird 55994,horse 55995,cat 55996,automobile 55997,bird 55998,horse 55999,deer 56000,horse 56001,horse 56002,airplane 56003,airplane 56004,frog 56005,horse 56006,deer 56007,cat 56008,horse 56009,ship 56010,automobile 56011,frog 56012,frog 56013,ship 56014,automobile 56015,automobile 56016,dog 56017,frog 56018,frog 56019,deer 56020,truck 56021,automobile 56022,cat 56023,dog 56024,truck 56025,horse 56026,deer 56027,deer 56028,ship 56029,airplane 56030,bird 56031,frog 56032,automobile 56033,truck 56034,horse 56035,frog 56036,bird 56037,cat 56038,bird 56039,airplane 56040,deer 56041,frog 56042,bird 56043,cat 56044,horse 56045,automobile 56046,cat 56047,truck 56048,ship 56049,automobile 56050,truck 56051,cat 56052,cat 56053,deer 56054,horse 56055,deer 56056,deer 56057,cat 56058,dog 56059,bird 56060,dog 56061,ship 56062,horse 56063,airplane 56064,truck 56065,truck 56066,truck 56067,ship 56068,frog 56069,ship 56070,frog 56071,dog 56072,automobile 56073,frog 56074,frog 56075,truck 56076,dog 56077,horse 56078,frog 56079,dog 56080,automobile 56081,frog 56082,bird 56083,truck 56084,truck 56085,deer 56086,truck 56087,ship 56088,dog 56089,ship 56090,cat 56091,horse 56092,automobile 56093,deer 56094,horse 56095,bird 56096,horse 56097,horse 56098,airplane 56099,airplane 56100,bird 56101,frog 56102,truck 56103,airplane 56104,horse 56105,truck 56106,ship 56107,deer 56108,truck 56109,airplane 56110,truck 56111,ship 56112,horse 56113,automobile 56114,dog 56115,frog 56116,frog 56117,airplane 56118,automobile 56119,truck 56120,deer 56121,ship 56122,dog 56123,deer 56124,bird 56125,deer 56126,dog 56127,cat 56128,truck 56129,deer 56130,ship 56131,dog 56132,horse 56133,ship 56134,airplane 56135,frog 56136,airplane 56137,horse 56138,truck 56139,cat 56140,automobile 56141,dog 56142,deer 56143,bird 56144,deer 56145,deer 56146,horse 56147,horse 56148,cat 56149,cat 56150,dog 56151,bird 56152,dog 56153,frog 56154,airplane 56155,cat 56156,deer 56157,deer 56158,automobile 56159,bird 56160,frog 56161,dog 56162,horse 56163,bird 56164,truck 56165,airplane 56166,cat 56167,ship 56168,dog 56169,airplane 56170,cat 56171,cat 56172,frog 56173,cat 56174,cat 56175,dog 56176,bird 56177,ship 56178,bird 56179,deer 56180,frog 56181,deer 56182,horse 56183,ship 56184,airplane 56185,truck 56186,truck 56187,ship 56188,ship 56189,dog 56190,deer 56191,dog 56192,horse 56193,deer 56194,frog 56195,cat 56196,frog 56197,dog 56198,horse 56199,cat 56200,bird 56201,cat 56202,horse 56203,deer 56204,cat 56205,truck 56206,dog 56207,truck 56208,frog 56209,frog 56210,bird 56211,deer 56212,cat 56213,bird 56214,airplane 56215,truck 56216,airplane 56217,automobile 56218,truck 56219,dog 56220,cat 56221,bird 56222,horse 56223,airplane 56224,deer 56225,automobile 56226,bird 56227,horse 56228,cat 56229,automobile 56230,cat 56231,frog 56232,frog 56233,ship 56234,horse 56235,horse 56236,deer 56237,truck 56238,deer 56239,dog 56240,truck 56241,ship 56242,frog 56243,truck 56244,cat 56245,automobile 56246,cat 56247,horse 56248,airplane 56249,frog 56250,dog 56251,horse 56252,deer 56253,deer 56254,bird 56255,bird 56256,truck 56257,deer 56258,frog 56259,horse 56260,automobile 56261,cat 56262,deer 56263,automobile 56264,ship 56265,frog 56266,ship 56267,dog 56268,frog 56269,frog 56270,deer 56271,horse 56272,dog 56273,bird 56274,deer 56275,dog 56276,ship 56277,cat 56278,deer 56279,automobile 56280,dog 56281,frog 56282,bird 56283,deer 56284,ship 56285,frog 56286,ship 56287,ship 56288,deer 56289,ship 56290,cat 56291,truck 56292,deer 56293,automobile 56294,truck 56295,airplane 56296,airplane 56297,ship 56298,frog 56299,deer 56300,dog 56301,cat 56302,bird 56303,truck 56304,deer 56305,dog 56306,frog 56307,frog 56308,automobile 56309,bird 56310,dog 56311,bird 56312,deer 56313,dog 56314,deer 56315,cat 56316,automobile 56317,frog 56318,frog 56319,frog 56320,dog 56321,frog 56322,bird 56323,dog 56324,truck 56325,deer 56326,cat 56327,bird 56328,truck 56329,deer 56330,dog 56331,frog 56332,frog 56333,deer 56334,cat 56335,deer 56336,bird 56337,dog 56338,truck 56339,ship 56340,truck 56341,automobile 56342,frog 56343,deer 56344,bird 56345,horse 56346,cat 56347,automobile 56348,frog 56349,bird 56350,truck 56351,deer 56352,cat 56353,horse 56354,frog 56355,deer 56356,bird 56357,airplane 56358,automobile 56359,dog 56360,bird 56361,airplane 56362,automobile 56363,cat 56364,automobile 56365,horse 56366,bird 56367,airplane 56368,truck 56369,frog 56370,deer 56371,bird 56372,cat 56373,deer 56374,cat 56375,horse 56376,horse 56377,truck 56378,deer 56379,deer 56380,dog 56381,dog 56382,cat 56383,horse 56384,frog 56385,frog 56386,ship 56387,bird 56388,truck 56389,horse 56390,cat 56391,bird 56392,truck 56393,automobile 56394,airplane 56395,horse 56396,bird 56397,deer 56398,cat 56399,truck 56400,dog 56401,truck 56402,airplane 56403,truck 56404,ship 56405,automobile 56406,airplane 56407,cat 56408,horse 56409,deer 56410,horse 56411,deer 56412,cat 56413,cat 56414,cat 56415,frog 56416,deer 56417,bird 56418,horse 56419,ship 56420,automobile 56421,cat 56422,cat 56423,automobile 56424,dog 56425,bird 56426,bird 56427,frog 56428,horse 56429,bird 56430,cat 56431,frog 56432,bird 56433,deer 56434,dog 56435,dog 56436,cat 56437,cat 56438,frog 56439,dog 56440,truck 56441,frog 56442,dog 56443,airplane 56444,bird 56445,frog 56446,deer 56447,horse 56448,airplane 56449,dog 56450,truck 56451,deer 56452,deer 56453,deer 56454,deer 56455,ship 56456,dog 56457,deer 56458,cat 56459,deer 56460,automobile 56461,horse 56462,deer 56463,automobile 56464,bird 56465,deer 56466,ship 56467,frog 56468,automobile 56469,automobile 56470,deer 56471,cat 56472,horse 56473,cat 56474,frog 56475,deer 56476,frog 56477,horse 56478,horse 56479,horse 56480,dog 56481,dog 56482,airplane 56483,frog 56484,truck 56485,dog 56486,dog 56487,horse 56488,automobile 56489,automobile 56490,deer 56491,frog 56492,horse 56493,airplane 56494,bird 56495,dog 56496,bird 56497,horse 56498,ship 56499,truck 56500,ship 56501,cat 56502,automobile 56503,cat 56504,deer 56505,truck 56506,deer 56507,airplane 56508,ship 56509,dog 56510,deer 56511,cat 56512,dog 56513,deer 56514,truck 56515,frog 56516,cat 56517,bird 56518,deer 56519,deer 56520,frog 56521,dog 56522,truck 56523,bird 56524,deer 56525,deer 56526,bird 56527,ship 56528,dog 56529,automobile 56530,frog 56531,automobile 56532,horse 56533,deer 56534,bird 56535,frog 56536,frog 56537,deer 56538,dog 56539,truck 56540,cat 56541,dog 56542,deer 56543,frog 56544,cat 56545,horse 56546,truck 56547,horse 56548,ship 56549,truck 56550,frog 56551,deer 56552,automobile 56553,ship 56554,frog 56555,horse 56556,cat 56557,cat 56558,truck 56559,airplane 56560,cat 56561,horse 56562,ship 56563,frog 56564,airplane 56565,ship 56566,deer 56567,dog 56568,automobile 56569,dog 56570,frog 56571,deer 56572,automobile 56573,airplane 56574,bird 56575,deer 56576,deer 56577,deer 56578,bird 56579,ship 56580,automobile 56581,airplane 56582,cat 56583,deer 56584,horse 56585,airplane 56586,deer 56587,airplane 56588,ship 56589,horse 56590,frog 56591,horse 56592,frog 56593,airplane 56594,bird 56595,dog 56596,horse 56597,frog 56598,frog 56599,truck 56600,cat 56601,truck 56602,cat 56603,deer 56604,truck 56605,deer 56606,horse 56607,ship 56608,airplane 56609,dog 56610,deer 56611,truck 56612,bird 56613,horse 56614,cat 56615,deer 56616,horse 56617,cat 56618,deer 56619,bird 56620,horse 56621,frog 56622,automobile 56623,bird 56624,deer 56625,cat 56626,truck 56627,horse 56628,ship 56629,airplane 56630,horse 56631,cat 56632,deer 56633,airplane 56634,bird 56635,frog 56636,frog 56637,cat 56638,horse 56639,deer 56640,deer 56641,frog 56642,ship 56643,deer 56644,cat 56645,cat 56646,horse 56647,dog 56648,automobile 56649,ship 56650,airplane 56651,deer 56652,cat 56653,deer 56654,automobile 56655,dog 56656,ship 56657,frog 56658,dog 56659,airplane 56660,cat 56661,airplane 56662,cat 56663,bird 56664,deer 56665,frog 56666,horse 56667,airplane 56668,deer 56669,cat 56670,ship 56671,ship 56672,deer 56673,horse 56674,airplane 56675,horse 56676,truck 56677,dog 56678,automobile 56679,truck 56680,airplane 56681,airplane 56682,truck 56683,frog 56684,automobile 56685,ship 56686,horse 56687,cat 56688,frog 56689,frog 56690,bird 56691,airplane 56692,ship 56693,ship 56694,ship 56695,dog 56696,dog 56697,horse 56698,airplane 56699,deer 56700,automobile 56701,bird 56702,bird 56703,horse 56704,frog 56705,cat 56706,bird 56707,automobile 56708,ship 56709,dog 56710,automobile 56711,airplane 56712,automobile 56713,dog 56714,ship 56715,horse 56716,bird 56717,airplane 56718,automobile 56719,dog 56720,airplane 56721,automobile 56722,dog 56723,deer 56724,cat 56725,frog 56726,frog 56727,airplane 56728,cat 56729,deer 56730,dog 56731,deer 56732,bird 56733,bird 56734,frog 56735,horse 56736,ship 56737,horse 56738,airplane 56739,horse 56740,airplane 56741,deer 56742,horse 56743,dog 56744,airplane 56745,ship 56746,dog 56747,automobile 56748,bird 56749,truck 56750,airplane 56751,bird 56752,ship 56753,horse 56754,airplane 56755,airplane 56756,dog 56757,ship 56758,ship 56759,cat 56760,ship 56761,horse 56762,truck 56763,truck 56764,automobile 56765,automobile 56766,truck 56767,horse 56768,frog 56769,horse 56770,automobile 56771,cat 56772,ship 56773,truck 56774,dog 56775,airplane 56776,deer 56777,ship 56778,ship 56779,automobile 56780,automobile 56781,horse 56782,cat 56783,ship 56784,automobile 56785,bird 56786,truck 56787,dog 56788,dog 56789,bird 56790,frog 56791,frog 56792,dog 56793,cat 56794,dog 56795,frog 56796,horse 56797,bird 56798,truck 56799,truck 56800,cat 56801,deer 56802,dog 56803,frog 56804,truck 56805,deer 56806,dog 56807,ship 56808,dog 56809,ship 56810,horse 56811,truck 56812,airplane 56813,ship 56814,automobile 56815,cat 56816,automobile 56817,frog 56818,bird 56819,cat 56820,airplane 56821,truck 56822,cat 56823,cat 56824,frog 56825,deer 56826,cat 56827,deer 56828,deer 56829,frog 56830,ship 56831,automobile 56832,cat 56833,dog 56834,deer 56835,dog 56836,airplane 56837,cat 56838,horse 56839,dog 56840,dog 56841,ship 56842,cat 56843,horse 56844,horse 56845,horse 56846,dog 56847,dog 56848,bird 56849,frog 56850,automobile 56851,airplane 56852,frog 56853,ship 56854,horse 56855,airplane 56856,dog 56857,frog 56858,cat 56859,cat 56860,dog 56861,ship 56862,deer 56863,frog 56864,horse 56865,deer 56866,ship 56867,horse 56868,automobile 56869,cat 56870,airplane 56871,cat 56872,truck 56873,cat 56874,cat 56875,bird 56876,bird 56877,cat 56878,deer 56879,deer 56880,frog 56881,dog 56882,bird 56883,truck 56884,frog 56885,automobile 56886,bird 56887,deer 56888,dog 56889,deer 56890,cat 56891,deer 56892,airplane 56893,cat 56894,horse 56895,cat 56896,horse 56897,cat 56898,airplane 56899,horse 56900,ship 56901,ship 56902,horse 56903,automobile 56904,ship 56905,automobile 56906,frog 56907,airplane 56908,dog 56909,deer 56910,frog 56911,ship 56912,deer 56913,bird 56914,dog 56915,frog 56916,deer 56917,bird 56918,bird 56919,deer 56920,cat 56921,truck 56922,bird 56923,deer 56924,bird 56925,frog 56926,cat 56927,airplane 56928,horse 56929,automobile 56930,cat 56931,cat 56932,automobile 56933,bird 56934,cat 56935,deer 56936,truck 56937,frog 56938,bird 56939,frog 56940,dog 56941,dog 56942,truck 56943,cat 56944,truck 56945,deer 56946,ship 56947,truck 56948,cat 56949,ship 56950,dog 56951,dog 56952,ship 56953,dog 56954,bird 56955,horse 56956,ship 56957,frog 56958,deer 56959,deer 56960,truck 56961,ship 56962,cat 56963,bird 56964,dog 56965,truck 56966,cat 56967,horse 56968,frog 56969,cat 56970,dog 56971,frog 56972,bird 56973,ship 56974,airplane 56975,frog 56976,truck 56977,frog 56978,cat 56979,truck 56980,bird 56981,bird 56982,ship 56983,deer 56984,truck 56985,ship 56986,automobile 56987,truck 56988,horse 56989,truck 56990,airplane 56991,cat 56992,ship 56993,cat 56994,cat 56995,frog 56996,truck 56997,horse 56998,automobile 56999,airplane 57000,truck 57001,dog 57002,truck 57003,truck 57004,automobile 57005,dog 57006,cat 57007,bird 57008,cat 57009,frog 57010,automobile 57011,deer 57012,truck 57013,airplane 57014,cat 57015,deer 57016,frog 57017,deer 57018,bird 57019,horse 57020,cat 57021,deer 57022,truck 57023,automobile 57024,horse 57025,cat 57026,horse 57027,cat 57028,truck 57029,deer 57030,deer 57031,deer 57032,bird 57033,deer 57034,ship 57035,airplane 57036,truck 57037,truck 57038,horse 57039,cat 57040,horse 57041,deer 57042,cat 57043,deer 57044,deer 57045,truck 57046,airplane 57047,truck 57048,bird 57049,bird 57050,truck 57051,horse 57052,cat 57053,ship 57054,frog 57055,truck 57056,bird 57057,airplane 57058,ship 57059,horse 57060,deer 57061,dog 57062,deer 57063,frog 57064,ship 57065,deer 57066,cat 57067,dog 57068,airplane 57069,ship 57070,airplane 57071,automobile 57072,dog 57073,ship 57074,bird 57075,bird 57076,dog 57077,dog 57078,horse 57079,automobile 57080,automobile 57081,truck 57082,automobile 57083,cat 57084,automobile 57085,dog 57086,horse 57087,horse 57088,ship 57089,dog 57090,truck 57091,dog 57092,frog 57093,truck 57094,automobile 57095,ship 57096,cat 57097,frog 57098,frog 57099,ship 57100,horse 57101,deer 57102,automobile 57103,frog 57104,airplane 57105,bird 57106,deer 57107,truck 57108,cat 57109,bird 57110,cat 57111,frog 57112,deer 57113,cat 57114,dog 57115,bird 57116,truck 57117,deer 57118,ship 57119,bird 57120,horse 57121,deer 57122,dog 57123,frog 57124,airplane 57125,dog 57126,dog 57127,frog 57128,truck 57129,truck 57130,dog 57131,bird 57132,bird 57133,truck 57134,cat 57135,dog 57136,ship 57137,bird 57138,dog 57139,automobile 57140,automobile 57141,frog 57142,automobile 57143,horse 57144,ship 57145,airplane 57146,frog 57147,truck 57148,airplane 57149,truck 57150,dog 57151,frog 57152,cat 57153,frog 57154,deer 57155,airplane 57156,dog 57157,airplane 57158,ship 57159,truck 57160,frog 57161,dog 57162,dog 57163,airplane 57164,bird 57165,horse 57166,frog 57167,ship 57168,cat 57169,truck 57170,deer 57171,dog 57172,horse 57173,horse 57174,dog 57175,truck 57176,airplane 57177,bird 57178,frog 57179,automobile 57180,deer 57181,horse 57182,truck 57183,truck 57184,truck 57185,airplane 57186,truck 57187,bird 57188,frog 57189,deer 57190,cat 57191,frog 57192,deer 57193,horse 57194,dog 57195,frog 57196,truck 57197,airplane 57198,frog 57199,frog 57200,ship 57201,frog 57202,automobile 57203,frog 57204,ship 57205,truck 57206,airplane 57207,bird 57208,airplane 57209,cat 57210,deer 57211,frog 57212,cat 57213,deer 57214,frog 57215,dog 57216,deer 57217,horse 57218,bird 57219,airplane 57220,cat 57221,deer 57222,deer 57223,dog 57224,cat 57225,frog 57226,truck 57227,automobile 57228,deer 57229,ship 57230,ship 57231,automobile 57232,bird 57233,frog 57234,deer 57235,airplane 57236,ship 57237,truck 57238,cat 57239,truck 57240,bird 57241,frog 57242,bird 57243,deer 57244,automobile 57245,cat 57246,truck 57247,frog 57248,truck 57249,truck 57250,deer 57251,ship 57252,frog 57253,airplane 57254,frog 57255,cat 57256,deer 57257,deer 57258,automobile 57259,ship 57260,cat 57261,frog 57262,ship 57263,ship 57264,frog 57265,frog 57266,airplane 57267,truck 57268,truck 57269,ship 57270,dog 57271,cat 57272,truck 57273,dog 57274,deer 57275,cat 57276,truck 57277,frog 57278,frog 57279,frog 57280,cat 57281,horse 57282,horse 57283,dog 57284,deer 57285,dog 57286,bird 57287,deer 57288,airplane 57289,ship 57290,bird 57291,frog 57292,horse 57293,cat 57294,truck 57295,cat 57296,cat 57297,deer 57298,frog 57299,frog 57300,truck 57301,horse 57302,bird 57303,frog 57304,deer 57305,frog 57306,horse 57307,dog 57308,airplane 57309,dog 57310,automobile 57311,ship 57312,frog 57313,cat 57314,dog 57315,horse 57316,deer 57317,deer 57318,automobile 57319,ship 57320,dog 57321,deer 57322,horse 57323,automobile 57324,deer 57325,horse 57326,ship 57327,truck 57328,airplane 57329,truck 57330,truck 57331,deer 57332,frog 57333,cat 57334,airplane 57335,deer 57336,automobile 57337,horse 57338,dog 57339,cat 57340,automobile 57341,bird 57342,bird 57343,automobile 57344,frog 57345,airplane 57346,horse 57347,horse 57348,airplane 57349,frog 57350,ship 57351,airplane 57352,bird 57353,ship 57354,deer 57355,ship 57356,ship 57357,automobile 57358,deer 57359,frog 57360,deer 57361,cat 57362,cat 57363,dog 57364,cat 57365,ship 57366,cat 57367,cat 57368,dog 57369,airplane 57370,cat 57371,truck 57372,frog 57373,dog 57374,deer 57375,deer 57376,deer 57377,bird 57378,cat 57379,ship 57380,cat 57381,bird 57382,bird 57383,bird 57384,automobile 57385,cat 57386,bird 57387,horse 57388,cat 57389,truck 57390,automobile 57391,frog 57392,ship 57393,frog 57394,bird 57395,dog 57396,cat 57397,dog 57398,truck 57399,deer 57400,deer 57401,airplane 57402,airplane 57403,bird 57404,bird 57405,deer 57406,truck 57407,deer 57408,bird 57409,dog 57410,frog 57411,ship 57412,frog 57413,truck 57414,frog 57415,cat 57416,truck 57417,ship 57418,cat 57419,bird 57420,frog 57421,bird 57422,bird 57423,frog 57424,bird 57425,horse 57426,deer 57427,deer 57428,cat 57429,cat 57430,frog 57431,ship 57432,horse 57433,dog 57434,deer 57435,frog 57436,deer 57437,deer 57438,deer 57439,deer 57440,frog 57441,deer 57442,cat 57443,automobile 57444,horse 57445,truck 57446,cat 57447,bird 57448,automobile 57449,airplane 57450,truck 57451,ship 57452,truck 57453,dog 57454,ship 57455,truck 57456,dog 57457,dog 57458,bird 57459,ship 57460,automobile 57461,frog 57462,airplane 57463,airplane 57464,horse 57465,airplane 57466,cat 57467,frog 57468,cat 57469,deer 57470,bird 57471,ship 57472,bird 57473,cat 57474,airplane 57475,truck 57476,cat 57477,dog 57478,frog 57479,deer 57480,ship 57481,frog 57482,bird 57483,frog 57484,horse 57485,deer 57486,deer 57487,horse 57488,dog 57489,cat 57490,horse 57491,automobile 57492,horse 57493,horse 57494,automobile 57495,horse 57496,automobile 57497,truck 57498,ship 57499,automobile 57500,frog 57501,horse 57502,ship 57503,horse 57504,horse 57505,frog 57506,automobile 57507,dog 57508,truck 57509,horse 57510,ship 57511,automobile 57512,automobile 57513,horse 57514,frog 57515,deer 57516,cat 57517,ship 57518,dog 57519,deer 57520,horse 57521,bird 57522,ship 57523,cat 57524,cat 57525,deer 57526,automobile 57527,truck 57528,dog 57529,airplane 57530,dog 57531,frog 57532,truck 57533,cat 57534,horse 57535,cat 57536,truck 57537,bird 57538,automobile 57539,frog 57540,deer 57541,horse 57542,ship 57543,bird 57544,deer 57545,ship 57546,automobile 57547,deer 57548,frog 57549,dog 57550,horse 57551,horse 57552,airplane 57553,frog 57554,frog 57555,ship 57556,horse 57557,ship 57558,airplane 57559,airplane 57560,dog 57561,deer 57562,cat 57563,dog 57564,truck 57565,truck 57566,airplane 57567,truck 57568,automobile 57569,dog 57570,bird 57571,deer 57572,cat 57573,truck 57574,cat 57575,bird 57576,bird 57577,cat 57578,bird 57579,bird 57580,dog 57581,horse 57582,truck 57583,truck 57584,truck 57585,ship 57586,deer 57587,dog 57588,truck 57589,cat 57590,truck 57591,deer 57592,cat 57593,cat 57594,ship 57595,horse 57596,cat 57597,cat 57598,truck 57599,dog 57600,frog 57601,deer 57602,ship 57603,automobile 57604,cat 57605,truck 57606,cat 57607,deer 57608,deer 57609,frog 57610,dog 57611,horse 57612,ship 57613,airplane 57614,frog 57615,frog 57616,frog 57617,bird 57618,ship 57619,bird 57620,horse 57621,horse 57622,frog 57623,deer 57624,airplane 57625,truck 57626,ship 57627,deer 57628,frog 57629,cat 57630,airplane 57631,deer 57632,ship 57633,bird 57634,cat 57635,automobile 57636,deer 57637,automobile 57638,dog 57639,dog 57640,deer 57641,dog 57642,bird 57643,frog 57644,frog 57645,dog 57646,airplane 57647,cat 57648,horse 57649,bird 57650,truck 57651,horse 57652,deer 57653,airplane 57654,deer 57655,dog 57656,deer 57657,automobile 57658,frog 57659,truck 57660,horse 57661,deer 57662,bird 57663,bird 57664,deer 57665,cat 57666,dog 57667,truck 57668,automobile 57669,bird 57670,cat 57671,airplane 57672,automobile 57673,deer 57674,truck 57675,cat 57676,deer 57677,airplane 57678,cat 57679,frog 57680,airplane 57681,frog 57682,bird 57683,automobile 57684,cat 57685,airplane 57686,truck 57687,horse 57688,frog 57689,ship 57690,automobile 57691,airplane 57692,deer 57693,horse 57694,dog 57695,deer 57696,dog 57697,automobile 57698,cat 57699,frog 57700,dog 57701,cat 57702,horse 57703,automobile 57704,cat 57705,airplane 57706,truck 57707,truck 57708,truck 57709,airplane 57710,dog 57711,truck 57712,deer 57713,cat 57714,dog 57715,bird 57716,bird 57717,dog 57718,deer 57719,horse 57720,truck 57721,cat 57722,cat 57723,dog 57724,automobile 57725,truck 57726,cat 57727,automobile 57728,cat 57729,truck 57730,deer 57731,airplane 57732,horse 57733,deer 57734,cat 57735,cat 57736,cat 57737,ship 57738,ship 57739,airplane 57740,bird 57741,truck 57742,airplane 57743,deer 57744,ship 57745,cat 57746,ship 57747,dog 57748,deer 57749,automobile 57750,horse 57751,airplane 57752,ship 57753,ship 57754,truck 57755,dog 57756,horse 57757,deer 57758,airplane 57759,dog 57760,frog 57761,truck 57762,frog 57763,bird 57764,ship 57765,deer 57766,airplane 57767,frog 57768,cat 57769,cat 57770,deer 57771,frog 57772,truck 57773,airplane 57774,automobile 57775,truck 57776,ship 57777,deer 57778,deer 57779,cat 57780,deer 57781,dog 57782,dog 57783,bird 57784,horse 57785,cat 57786,airplane 57787,frog 57788,dog 57789,dog 57790,ship 57791,cat 57792,horse 57793,frog 57794,cat 57795,deer 57796,airplane 57797,cat 57798,truck 57799,dog 57800,cat 57801,cat 57802,dog 57803,airplane 57804,truck 57805,truck 57806,frog 57807,deer 57808,airplane 57809,horse 57810,dog 57811,cat 57812,horse 57813,automobile 57814,deer 57815,ship 57816,ship 57817,automobile 57818,bird 57819,frog 57820,horse 57821,ship 57822,bird 57823,automobile 57824,truck 57825,horse 57826,bird 57827,dog 57828,cat 57829,truck 57830,automobile 57831,airplane 57832,horse 57833,frog 57834,deer 57835,deer 57836,horse 57837,deer 57838,truck 57839,horse 57840,frog 57841,airplane 57842,cat 57843,horse 57844,truck 57845,horse 57846,dog 57847,frog 57848,dog 57849,bird 57850,bird 57851,truck 57852,truck 57853,dog 57854,horse 57855,ship 57856,frog 57857,automobile 57858,horse 57859,horse 57860,frog 57861,frog 57862,horse 57863,bird 57864,cat 57865,airplane 57866,dog 57867,automobile 57868,ship 57869,frog 57870,bird 57871,deer 57872,horse 57873,ship 57874,deer 57875,airplane 57876,cat 57877,dog 57878,cat 57879,horse 57880,frog 57881,airplane 57882,horse 57883,deer 57884,frog 57885,automobile 57886,frog 57887,cat 57888,cat 57889,dog 57890,dog 57891,cat 57892,deer 57893,deer 57894,bird 57895,ship 57896,deer 57897,bird 57898,bird 57899,airplane 57900,horse 57901,cat 57902,airplane 57903,frog 57904,dog 57905,deer 57906,bird 57907,bird 57908,dog 57909,frog 57910,automobile 57911,truck 57912,horse 57913,dog 57914,cat 57915,ship 57916,truck 57917,frog 57918,frog 57919,cat 57920,automobile 57921,airplane 57922,horse 57923,cat 57924,ship 57925,airplane 57926,dog 57927,dog 57928,deer 57929,bird 57930,frog 57931,cat 57932,deer 57933,dog 57934,airplane 57935,horse 57936,cat 57937,ship 57938,automobile 57939,bird 57940,frog 57941,frog 57942,bird 57943,truck 57944,truck 57945,airplane 57946,frog 57947,deer 57948,frog 57949,automobile 57950,ship 57951,ship 57952,bird 57953,airplane 57954,bird 57955,cat 57956,cat 57957,truck 57958,truck 57959,airplane 57960,truck 57961,horse 57962,dog 57963,automobile 57964,airplane 57965,dog 57966,deer 57967,airplane 57968,frog 57969,deer 57970,bird 57971,automobile 57972,cat 57973,deer 57974,frog 57975,horse 57976,dog 57977,airplane 57978,deer 57979,airplane 57980,deer 57981,dog 57982,horse 57983,deer 57984,horse 57985,dog 57986,dog 57987,truck 57988,truck 57989,truck 57990,automobile 57991,horse 57992,ship 57993,cat 57994,bird 57995,truck 57996,deer 57997,airplane 57998,deer 57999,deer 58000,cat 58001,dog 58002,horse 58003,dog 58004,bird 58005,truck 58006,truck 58007,dog 58008,frog 58009,horse 58010,deer 58011,deer 58012,bird 58013,ship 58014,ship 58015,frog 58016,airplane 58017,deer 58018,truck 58019,automobile 58020,airplane 58021,horse 58022,airplane 58023,airplane 58024,cat 58025,bird 58026,ship 58027,truck 58028,dog 58029,deer 58030,deer 58031,deer 58032,frog 58033,horse 58034,automobile 58035,frog 58036,deer 58037,dog 58038,horse 58039,truck 58040,ship 58041,truck 58042,automobile 58043,horse 58044,truck 58045,horse 58046,bird 58047,automobile 58048,horse 58049,bird 58050,truck 58051,truck 58052,bird 58053,horse 58054,deer 58055,automobile 58056,horse 58057,dog 58058,horse 58059,automobile 58060,ship 58061,cat 58062,deer 58063,truck 58064,frog 58065,bird 58066,airplane 58067,truck 58068,horse 58069,deer 58070,ship 58071,automobile 58072,frog 58073,dog 58074,dog 58075,ship 58076,truck 58077,cat 58078,ship 58079,horse 58080,cat 58081,dog 58082,truck 58083,frog 58084,bird 58085,truck 58086,cat 58087,dog 58088,deer 58089,horse 58090,deer 58091,deer 58092,truck 58093,truck 58094,ship 58095,ship 58096,frog 58097,bird 58098,deer 58099,frog 58100,dog 58101,airplane 58102,truck 58103,truck 58104,cat 58105,automobile 58106,ship 58107,deer 58108,dog 58109,ship 58110,airplane 58111,bird 58112,frog 58113,deer 58114,horse 58115,ship 58116,frog 58117,dog 58118,deer 58119,deer 58120,truck 58121,dog 58122,horse 58123,cat 58124,frog 58125,truck 58126,dog 58127,dog 58128,deer 58129,dog 58130,dog 58131,frog 58132,automobile 58133,deer 58134,truck 58135,airplane 58136,ship 58137,cat 58138,frog 58139,ship 58140,dog 58141,bird 58142,bird 58143,deer 58144,cat 58145,dog 58146,frog 58147,deer 58148,frog 58149,deer 58150,deer 58151,airplane 58152,cat 58153,frog 58154,bird 58155,deer 58156,automobile 58157,airplane 58158,dog 58159,automobile 58160,dog 58161,horse 58162,deer 58163,deer 58164,ship 58165,ship 58166,deer 58167,horse 58168,frog 58169,frog 58170,automobile 58171,dog 58172,deer 58173,frog 58174,cat 58175,cat 58176,horse 58177,dog 58178,cat 58179,bird 58180,automobile 58181,airplane 58182,dog 58183,truck 58184,truck 58185,truck 58186,frog 58187,ship 58188,ship 58189,deer 58190,deer 58191,dog 58192,horse 58193,airplane 58194,deer 58195,truck 58196,truck 58197,deer 58198,deer 58199,truck 58200,automobile 58201,dog 58202,dog 58203,dog 58204,airplane 58205,cat 58206,truck 58207,automobile 58208,dog 58209,truck 58210,ship 58211,cat 58212,dog 58213,frog 58214,automobile 58215,bird 58216,frog 58217,deer 58218,truck 58219,horse 58220,horse 58221,bird 58222,horse 58223,frog 58224,frog 58225,deer 58226,deer 58227,deer 58228,automobile 58229,airplane 58230,ship 58231,dog 58232,bird 58233,airplane 58234,dog 58235,frog 58236,cat 58237,ship 58238,bird 58239,frog 58240,frog 58241,deer 58242,dog 58243,frog 58244,cat 58245,automobile 58246,frog 58247,frog 58248,horse 58249,bird 58250,cat 58251,frog 58252,horse 58253,deer 58254,deer 58255,deer 58256,deer 58257,bird 58258,ship 58259,horse 58260,frog 58261,deer 58262,bird 58263,deer 58264,truck 58265,cat 58266,horse 58267,dog 58268,truck 58269,deer 58270,airplane 58271,deer 58272,airplane 58273,truck 58274,frog 58275,horse 58276,deer 58277,deer 58278,deer 58279,dog 58280,automobile 58281,truck 58282,cat 58283,dog 58284,deer 58285,frog 58286,airplane 58287,deer 58288,airplane 58289,truck 58290,horse 58291,ship 58292,dog 58293,airplane 58294,dog 58295,truck 58296,dog 58297,airplane 58298,horse 58299,frog 58300,dog 58301,cat 58302,horse 58303,automobile 58304,truck 58305,airplane 58306,cat 58307,cat 58308,dog 58309,horse 58310,bird 58311,dog 58312,dog 58313,truck 58314,truck 58315,horse 58316,airplane 58317,horse 58318,ship 58319,horse 58320,airplane 58321,deer 58322,ship 58323,truck 58324,deer 58325,truck 58326,dog 58327,automobile 58328,bird 58329,airplane 58330,deer 58331,truck 58332,automobile 58333,horse 58334,truck 58335,airplane 58336,horse 58337,cat 58338,airplane 58339,cat 58340,deer 58341,automobile 58342,horse 58343,deer 58344,ship 58345,deer 58346,dog 58347,airplane 58348,deer 58349,cat 58350,dog 58351,airplane 58352,cat 58353,cat 58354,deer 58355,deer 58356,horse 58357,truck 58358,ship 58359,automobile 58360,cat 58361,frog 58362,cat 58363,airplane 58364,bird 58365,cat 58366,ship 58367,cat 58368,truck 58369,truck 58370,airplane 58371,horse 58372,ship 58373,cat 58374,dog 58375,cat 58376,deer 58377,truck 58378,dog 58379,frog 58380,frog 58381,frog 58382,horse 58383,cat 58384,horse 58385,horse 58386,airplane 58387,deer 58388,ship 58389,ship 58390,bird 58391,dog 58392,bird 58393,bird 58394,truck 58395,airplane 58396,frog 58397,cat 58398,horse 58399,automobile 58400,frog 58401,deer 58402,cat 58403,deer 58404,frog 58405,dog 58406,cat 58407,cat 58408,airplane 58409,frog 58410,automobile 58411,dog 58412,frog 58413,deer 58414,frog 58415,bird 58416,truck 58417,airplane 58418,deer 58419,frog 58420,deer 58421,automobile 58422,deer 58423,frog 58424,deer 58425,horse 58426,ship 58427,airplane 58428,cat 58429,dog 58430,cat 58431,dog 58432,frog 58433,ship 58434,frog 58435,bird 58436,bird 58437,horse 58438,horse 58439,automobile 58440,deer 58441,deer 58442,dog 58443,truck 58444,dog 58445,dog 58446,frog 58447,ship 58448,deer 58449,truck 58450,ship 58451,ship 58452,automobile 58453,deer 58454,horse 58455,deer 58456,cat 58457,deer 58458,frog 58459,airplane 58460,bird 58461,frog 58462,truck 58463,deer 58464,truck 58465,truck 58466,frog 58467,bird 58468,dog 58469,dog 58470,ship 58471,airplane 58472,deer 58473,dog 58474,truck 58475,bird 58476,cat 58477,horse 58478,frog 58479,deer 58480,ship 58481,cat 58482,frog 58483,truck 58484,frog 58485,automobile 58486,ship 58487,bird 58488,deer 58489,ship 58490,cat 58491,horse 58492,truck 58493,deer 58494,cat 58495,cat 58496,truck 58497,frog 58498,cat 58499,cat 58500,deer 58501,automobile 58502,cat 58503,cat 58504,dog 58505,frog 58506,truck 58507,cat 58508,bird 58509,horse 58510,truck 58511,truck 58512,frog 58513,frog 58514,deer 58515,bird 58516,truck 58517,horse 58518,bird 58519,airplane 58520,dog 58521,deer 58522,airplane 58523,automobile 58524,automobile 58525,automobile 58526,deer 58527,frog 58528,dog 58529,deer 58530,bird 58531,ship 58532,ship 58533,bird 58534,airplane 58535,cat 58536,airplane 58537,truck 58538,ship 58539,deer 58540,deer 58541,deer 58542,deer 58543,horse 58544,deer 58545,automobile 58546,ship 58547,truck 58548,deer 58549,horse 58550,frog 58551,horse 58552,dog 58553,bird 58554,dog 58555,bird 58556,truck 58557,automobile 58558,truck 58559,cat 58560,horse 58561,cat 58562,automobile 58563,horse 58564,truck 58565,dog 58566,truck 58567,ship 58568,deer 58569,airplane 58570,cat 58571,frog 58572,deer 58573,ship 58574,truck 58575,cat 58576,cat 58577,frog 58578,dog 58579,ship 58580,bird 58581,horse 58582,dog 58583,horse 58584,horse 58585,deer 58586,ship 58587,frog 58588,cat 58589,truck 58590,frog 58591,dog 58592,truck 58593,ship 58594,bird 58595,airplane 58596,dog 58597,bird 58598,horse 58599,horse 58600,deer 58601,frog 58602,frog 58603,deer 58604,truck 58605,deer 58606,truck 58607,deer 58608,frog 58609,bird 58610,automobile 58611,deer 58612,automobile 58613,frog 58614,bird 58615,bird 58616,truck 58617,airplane 58618,bird 58619,airplane 58620,frog 58621,airplane 58622,cat 58623,deer 58624,dog 58625,bird 58626,deer 58627,airplane 58628,automobile 58629,bird 58630,cat 58631,deer 58632,bird 58633,truck 58634,deer 58635,horse 58636,ship 58637,airplane 58638,horse 58639,truck 58640,truck 58641,bird 58642,ship 58643,truck 58644,bird 58645,cat 58646,frog 58647,cat 58648,automobile 58649,airplane 58650,cat 58651,deer 58652,ship 58653,truck 58654,ship 58655,deer 58656,bird 58657,frog 58658,frog 58659,deer 58660,cat 58661,truck 58662,frog 58663,frog 58664,cat 58665,bird 58666,deer 58667,cat 58668,automobile 58669,airplane 58670,horse 58671,cat 58672,cat 58673,dog 58674,airplane 58675,cat 58676,horse 58677,bird 58678,dog 58679,truck 58680,ship 58681,automobile 58682,dog 58683,truck 58684,ship 58685,deer 58686,airplane 58687,cat 58688,horse 58689,bird 58690,deer 58691,dog 58692,horse 58693,airplane 58694,cat 58695,deer 58696,cat 58697,deer 58698,horse 58699,automobile 58700,deer 58701,airplane 58702,truck 58703,cat 58704,deer 58705,deer 58706,ship 58707,airplane 58708,dog 58709,deer 58710,automobile 58711,frog 58712,bird 58713,cat 58714,automobile 58715,airplane 58716,truck 58717,dog 58718,horse 58719,automobile 58720,dog 58721,horse 58722,cat 58723,bird 58724,bird 58725,airplane 58726,truck 58727,deer 58728,deer 58729,ship 58730,truck 58731,truck 58732,truck 58733,airplane 58734,truck 58735,cat 58736,horse 58737,cat 58738,truck 58739,airplane 58740,deer 58741,frog 58742,bird 58743,automobile 58744,horse 58745,horse 58746,bird 58747,automobile 58748,automobile 58749,frog 58750,deer 58751,cat 58752,automobile 58753,cat 58754,deer 58755,truck 58756,horse 58757,truck 58758,airplane 58759,bird 58760,airplane 58761,deer 58762,frog 58763,frog 58764,airplane 58765,deer 58766,horse 58767,cat 58768,cat 58769,ship 58770,frog 58771,cat 58772,dog 58773,deer 58774,deer 58775,ship 58776,ship 58777,horse 58778,airplane 58779,truck 58780,truck 58781,cat 58782,horse 58783,airplane 58784,cat 58785,ship 58786,truck 58787,dog 58788,airplane 58789,frog 58790,truck 58791,bird 58792,deer 58793,ship 58794,bird 58795,cat 58796,frog 58797,dog 58798,horse 58799,frog 58800,frog 58801,frog 58802,frog 58803,cat 58804,horse 58805,horse 58806,frog 58807,automobile 58808,truck 58809,truck 58810,airplane 58811,truck 58812,frog 58813,truck 58814,dog 58815,deer 58816,dog 58817,automobile 58818,airplane 58819,cat 58820,dog 58821,frog 58822,cat 58823,ship 58824,ship 58825,dog 58826,deer 58827,truck 58828,airplane 58829,truck 58830,airplane 58831,truck 58832,automobile 58833,horse 58834,bird 58835,cat 58836,dog 58837,frog 58838,cat 58839,frog 58840,cat 58841,cat 58842,ship 58843,deer 58844,bird 58845,deer 58846,cat 58847,ship 58848,dog 58849,deer 58850,frog 58851,automobile 58852,dog 58853,deer 58854,deer 58855,ship 58856,ship 58857,deer 58858,truck 58859,frog 58860,automobile 58861,cat 58862,deer 58863,horse 58864,cat 58865,airplane 58866,frog 58867,cat 58868,bird 58869,frog 58870,bird 58871,horse 58872,automobile 58873,dog 58874,automobile 58875,cat 58876,deer 58877,deer 58878,ship 58879,airplane 58880,airplane 58881,frog 58882,ship 58883,truck 58884,cat 58885,automobile 58886,horse 58887,cat 58888,ship 58889,automobile 58890,airplane 58891,airplane 58892,dog 58893,frog 58894,dog 58895,automobile 58896,cat 58897,airplane 58898,horse 58899,cat 58900,airplane 58901,deer 58902,automobile 58903,frog 58904,truck 58905,bird 58906,airplane 58907,truck 58908,dog 58909,horse 58910,frog 58911,frog 58912,truck 58913,horse 58914,deer 58915,bird 58916,frog 58917,frog 58918,ship 58919,cat 58920,dog 58921,deer 58922,frog 58923,cat 58924,cat 58925,deer 58926,airplane 58927,bird 58928,bird 58929,cat 58930,horse 58931,frog 58932,airplane 58933,deer 58934,truck 58935,frog 58936,deer 58937,dog 58938,dog 58939,horse 58940,deer 58941,horse 58942,dog 58943,dog 58944,deer 58945,frog 58946,frog 58947,cat 58948,cat 58949,dog 58950,horse 58951,dog 58952,automobile 58953,bird 58954,bird 58955,dog 58956,horse 58957,truck 58958,frog 58959,horse 58960,cat 58961,truck 58962,dog 58963,bird 58964,frog 58965,cat 58966,horse 58967,deer 58968,horse 58969,airplane 58970,dog 58971,deer 58972,dog 58973,truck 58974,cat 58975,horse 58976,automobile 58977,truck 58978,cat 58979,truck 58980,truck 58981,frog 58982,truck 58983,deer 58984,cat 58985,horse 58986,automobile 58987,airplane 58988,truck 58989,ship 58990,truck 58991,airplane 58992,deer 58993,frog 58994,dog 58995,frog 58996,deer 58997,frog 58998,horse 58999,cat 59000,deer 59001,airplane 59002,dog 59003,frog 59004,cat 59005,bird 59006,ship 59007,cat 59008,cat 59009,frog 59010,truck 59011,automobile 59012,deer 59013,airplane 59014,horse 59015,cat 59016,deer 59017,frog 59018,deer 59019,dog 59020,ship 59021,airplane 59022,cat 59023,truck 59024,deer 59025,airplane 59026,bird 59027,cat 59028,airplane 59029,airplane 59030,frog 59031,frog 59032,bird 59033,ship 59034,horse 59035,ship 59036,ship 59037,automobile 59038,automobile 59039,automobile 59040,deer 59041,frog 59042,frog 59043,cat 59044,automobile 59045,frog 59046,airplane 59047,horse 59048,horse 59049,dog 59050,deer 59051,dog 59052,deer 59053,dog 59054,airplane 59055,frog 59056,truck 59057,deer 59058,dog 59059,ship 59060,truck 59061,truck 59062,cat 59063,automobile 59064,dog 59065,frog 59066,airplane 59067,airplane 59068,truck 59069,deer 59070,truck 59071,truck 59072,horse 59073,ship 59074,truck 59075,frog 59076,airplane 59077,automobile 59078,frog 59079,bird 59080,horse 59081,cat 59082,deer 59083,dog 59084,airplane 59085,bird 59086,airplane 59087,truck 59088,dog 59089,ship 59090,frog 59091,automobile 59092,horse 59093,deer 59094,airplane 59095,bird 59096,dog 59097,ship 59098,automobile 59099,frog 59100,truck 59101,ship 59102,deer 59103,bird 59104,airplane 59105,airplane 59106,airplane 59107,truck 59108,deer 59109,frog 59110,frog 59111,ship 59112,deer 59113,ship 59114,frog 59115,truck 59116,deer 59117,horse 59118,ship 59119,automobile 59120,horse 59121,deer 59122,ship 59123,frog 59124,cat 59125,automobile 59126,dog 59127,frog 59128,frog 59129,airplane 59130,bird 59131,frog 59132,deer 59133,cat 59134,truck 59135,frog 59136,bird 59137,dog 59138,bird 59139,ship 59140,horse 59141,automobile 59142,horse 59143,truck 59144,dog 59145,deer 59146,cat 59147,bird 59148,airplane 59149,truck 59150,cat 59151,truck 59152,dog 59153,truck 59154,horse 59155,frog 59156,automobile 59157,frog 59158,bird 59159,deer 59160,airplane 59161,truck 59162,airplane 59163,frog 59164,truck 59165,cat 59166,horse 59167,bird 59168,automobile 59169,cat 59170,airplane 59171,truck 59172,airplane 59173,airplane 59174,bird 59175,automobile 59176,horse 59177,automobile 59178,deer 59179,ship 59180,horse 59181,truck 59182,horse 59183,dog 59184,horse 59185,deer 59186,horse 59187,ship 59188,dog 59189,bird 59190,ship 59191,ship 59192,truck 59193,cat 59194,deer 59195,dog 59196,airplane 59197,dog 59198,dog 59199,bird 59200,truck 59201,truck 59202,dog 59203,horse 59204,automobile 59205,dog 59206,airplane 59207,horse 59208,automobile 59209,automobile 59210,frog 59211,dog 59212,automobile 59213,deer 59214,frog 59215,ship 59216,truck 59217,airplane 59218,airplane 59219,frog 59220,airplane 59221,airplane 59222,truck 59223,bird 59224,airplane 59225,truck 59226,automobile 59227,truck 59228,airplane 59229,frog 59230,dog 59231,airplane 59232,cat 59233,bird 59234,cat 59235,truck 59236,cat 59237,dog 59238,airplane 59239,horse 59240,deer 59241,frog 59242,dog 59243,truck 59244,ship 59245,frog 59246,airplane 59247,ship 59248,airplane 59249,deer 59250,deer 59251,horse 59252,airplane 59253,ship 59254,frog 59255,ship 59256,horse 59257,dog 59258,automobile 59259,ship 59260,dog 59261,dog 59262,automobile 59263,dog 59264,dog 59265,cat 59266,automobile 59267,frog 59268,frog 59269,airplane 59270,deer 59271,deer 59272,bird 59273,automobile 59274,automobile 59275,dog 59276,truck 59277,frog 59278,frog 59279,bird 59280,horse 59281,bird 59282,frog 59283,ship 59284,cat 59285,cat 59286,cat 59287,deer 59288,truck 59289,deer 59290,automobile 59291,bird 59292,automobile 59293,horse 59294,deer 59295,deer 59296,ship 59297,cat 59298,frog 59299,frog 59300,cat 59301,deer 59302,truck 59303,truck 59304,airplane 59305,cat 59306,bird 59307,cat 59308,deer 59309,dog 59310,truck 59311,ship 59312,truck 59313,cat 59314,airplane 59315,deer 59316,cat 59317,truck 59318,dog 59319,truck 59320,cat 59321,frog 59322,frog 59323,automobile 59324,bird 59325,horse 59326,deer 59327,deer 59328,deer 59329,frog 59330,dog 59331,frog 59332,airplane 59333,frog 59334,ship 59335,automobile 59336,dog 59337,bird 59338,horse 59339,ship 59340,bird 59341,truck 59342,ship 59343,airplane 59344,frog 59345,bird 59346,airplane 59347,airplane 59348,bird 59349,cat 59350,cat 59351,cat 59352,automobile 59353,frog 59354,deer 59355,frog 59356,cat 59357,cat 59358,frog 59359,cat 59360,horse 59361,airplane 59362,frog 59363,cat 59364,deer 59365,frog 59366,cat 59367,automobile 59368,airplane 59369,bird 59370,airplane 59371,dog 59372,deer 59373,truck 59374,truck 59375,horse 59376,dog 59377,cat 59378,airplane 59379,frog 59380,cat 59381,deer 59382,cat 59383,frog 59384,frog 59385,automobile 59386,ship 59387,dog 59388,airplane 59389,deer 59390,horse 59391,ship 59392,dog 59393,dog 59394,dog 59395,bird 59396,deer 59397,airplane 59398,cat 59399,frog 59400,truck 59401,frog 59402,horse 59403,horse 59404,bird 59405,cat 59406,frog 59407,deer 59408,ship 59409,cat 59410,frog 59411,ship 59412,bird 59413,cat 59414,bird 59415,cat 59416,frog 59417,deer 59418,cat 59419,airplane 59420,truck 59421,automobile 59422,dog 59423,ship 59424,automobile 59425,dog 59426,truck 59427,bird 59428,truck 59429,bird 59430,frog 59431,cat 59432,bird 59433,airplane 59434,cat 59435,horse 59436,dog 59437,horse 59438,cat 59439,dog 59440,bird 59441,deer 59442,cat 59443,ship 59444,deer 59445,cat 59446,deer 59447,automobile 59448,horse 59449,cat 59450,ship 59451,bird 59452,airplane 59453,deer 59454,cat 59455,automobile 59456,ship 59457,deer 59458,automobile 59459,deer 59460,ship 59461,cat 59462,cat 59463,deer 59464,truck 59465,dog 59466,dog 59467,dog 59468,cat 59469,deer 59470,dog 59471,deer 59472,truck 59473,ship 59474,deer 59475,bird 59476,horse 59477,airplane 59478,deer 59479,bird 59480,frog 59481,horse 59482,dog 59483,deer 59484,bird 59485,bird 59486,dog 59487,airplane 59488,deer 59489,automobile 59490,frog 59491,dog 59492,cat 59493,truck 59494,cat 59495,truck 59496,frog 59497,dog 59498,truck 59499,frog 59500,airplane 59501,frog 59502,deer 59503,dog 59504,bird 59505,dog 59506,deer 59507,bird 59508,deer 59509,dog 59510,truck 59511,truck 59512,dog 59513,deer 59514,airplane 59515,deer 59516,bird 59517,cat 59518,cat 59519,deer 59520,horse 59521,horse 59522,automobile 59523,airplane 59524,automobile 59525,bird 59526,cat 59527,airplane 59528,frog 59529,deer 59530,airplane 59531,cat 59532,cat 59533,cat 59534,deer 59535,dog 59536,horse 59537,bird 59538,cat 59539,frog 59540,cat 59541,horse 59542,ship 59543,truck 59544,truck 59545,cat 59546,horse 59547,dog 59548,deer 59549,cat 59550,deer 59551,horse 59552,cat 59553,automobile 59554,deer 59555,cat 59556,bird 59557,horse 59558,cat 59559,frog 59560,automobile 59561,deer 59562,automobile 59563,truck 59564,ship 59565,horse 59566,horse 59567,horse 59568,frog 59569,dog 59570,frog 59571,horse 59572,horse 59573,airplane 59574,cat 59575,ship 59576,deer 59577,ship 59578,frog 59579,truck 59580,truck 59581,ship 59582,dog 59583,frog 59584,airplane 59585,automobile 59586,deer 59587,frog 59588,dog 59589,truck 59590,frog 59591,ship 59592,dog 59593,truck 59594,truck 59595,dog 59596,dog 59597,ship 59598,cat 59599,cat 59600,horse 59601,frog 59602,dog 59603,horse 59604,deer 59605,frog 59606,ship 59607,ship 59608,deer 59609,truck 59610,truck 59611,cat 59612,ship 59613,airplane 59614,dog 59615,ship 59616,airplane 59617,truck 59618,airplane 59619,automobile 59620,frog 59621,ship 59622,bird 59623,deer 59624,deer 59625,horse 59626,frog 59627,deer 59628,airplane 59629,bird 59630,deer 59631,airplane 59632,bird 59633,truck 59634,dog 59635,horse 59636,automobile 59637,ship 59638,truck 59639,horse 59640,dog 59641,cat 59642,frog 59643,cat 59644,bird 59645,horse 59646,horse 59647,deer 59648,truck 59649,ship 59650,frog 59651,frog 59652,frog 59653,dog 59654,deer 59655,airplane 59656,cat 59657,frog 59658,deer 59659,frog 59660,automobile 59661,dog 59662,airplane 59663,dog 59664,frog 59665,horse 59666,ship 59667,frog 59668,ship 59669,dog 59670,deer 59671,cat 59672,bird 59673,deer 59674,bird 59675,automobile 59676,cat 59677,deer 59678,automobile 59679,cat 59680,airplane 59681,bird 59682,bird 59683,horse 59684,airplane 59685,dog 59686,deer 59687,airplane 59688,truck 59689,bird 59690,truck 59691,deer 59692,truck 59693,cat 59694,horse 59695,cat 59696,bird 59697,automobile 59698,airplane 59699,dog 59700,ship 59701,horse 59702,deer 59703,dog 59704,dog 59705,deer 59706,truck 59707,ship 59708,ship 59709,deer 59710,truck 59711,horse 59712,frog 59713,bird 59714,bird 59715,truck 59716,automobile 59717,cat 59718,airplane 59719,automobile 59720,dog 59721,dog 59722,truck 59723,dog 59724,cat 59725,automobile 59726,horse 59727,cat 59728,truck 59729,ship 59730,dog 59731,deer 59732,deer 59733,cat 59734,cat 59735,airplane 59736,deer 59737,ship 59738,ship 59739,frog 59740,truck 59741,horse 59742,truck 59743,dog 59744,bird 59745,ship 59746,deer 59747,deer 59748,dog 59749,truck 59750,bird 59751,dog 59752,truck 59753,airplane 59754,airplane 59755,deer 59756,bird 59757,cat 59758,bird 59759,dog 59760,deer 59761,dog 59762,deer 59763,cat 59764,deer 59765,deer 59766,truck 59767,deer 59768,cat 59769,cat 59770,automobile 59771,dog 59772,deer 59773,frog 59774,frog 59775,cat 59776,truck 59777,automobile 59778,frog 59779,dog 59780,frog 59781,frog 59782,truck 59783,automobile 59784,frog 59785,bird 59786,deer 59787,deer 59788,bird 59789,ship 59790,ship 59791,dog 59792,frog 59793,bird 59794,cat 59795,automobile 59796,deer 59797,cat 59798,ship 59799,truck 59800,truck 59801,horse 59802,cat 59803,airplane 59804,bird 59805,bird 59806,cat 59807,truck 59808,horse 59809,ship 59810,truck 59811,deer 59812,ship 59813,frog 59814,cat 59815,truck 59816,frog 59817,deer 59818,ship 59819,dog 59820,frog 59821,frog 59822,automobile 59823,truck 59824,deer 59825,ship 59826,ship 59827,deer 59828,airplane 59829,frog 59830,frog 59831,frog 59832,horse 59833,airplane 59834,truck 59835,cat 59836,horse 59837,cat 59838,horse 59839,airplane 59840,airplane 59841,truck 59842,cat 59843,frog 59844,airplane 59845,dog 59846,dog 59847,ship 59848,frog 59849,dog 59850,deer 59851,airplane 59852,cat 59853,deer 59854,dog 59855,frog 59856,cat 59857,truck 59858,bird 59859,automobile 59860,deer 59861,bird 59862,dog 59863,frog 59864,dog 59865,ship 59866,dog 59867,deer 59868,cat 59869,frog 59870,horse 59871,automobile 59872,deer 59873,frog 59874,automobile 59875,ship 59876,dog 59877,deer 59878,truck 59879,bird 59880,deer 59881,frog 59882,deer 59883,airplane 59884,automobile 59885,ship 59886,deer 59887,horse 59888,ship 59889,horse 59890,frog 59891,frog 59892,frog 59893,automobile 59894,cat 59895,truck 59896,bird 59897,ship 59898,airplane 59899,deer 59900,truck 59901,dog 59902,frog 59903,cat 59904,deer 59905,dog 59906,dog 59907,automobile 59908,dog 59909,ship 59910,cat 59911,automobile 59912,truck 59913,automobile 59914,truck 59915,bird 59916,deer 59917,deer 59918,truck 59919,dog 59920,ship 59921,frog 59922,cat 59923,cat 59924,cat 59925,cat 59926,bird 59927,frog 59928,airplane 59929,dog 59930,ship 59931,horse 59932,automobile 59933,truck 59934,horse 59935,truck 59936,horse 59937,airplane 59938,horse 59939,truck 59940,automobile 59941,deer 59942,frog 59943,airplane 59944,frog 59945,truck 59946,ship 59947,airplane 59948,dog 59949,bird 59950,horse 59951,dog 59952,ship 59953,cat 59954,truck 59955,automobile 59956,bird 59957,ship 59958,bird 59959,ship 59960,frog 59961,deer 59962,deer 59963,cat 59964,airplane 59965,cat 59966,deer 59967,truck 59968,deer 59969,bird 59970,automobile 59971,bird 59972,truck 59973,ship 59974,truck 59975,ship 59976,frog 59977,deer 59978,dog 59979,truck 59980,automobile 59981,frog 59982,truck 59983,deer 59984,airplane 59985,frog 59986,horse 59987,truck 59988,truck 59989,frog 59990,deer 59991,deer 59992,cat 59993,automobile 59994,frog 59995,truck 59996,truck 59997,bird 59998,truck 59999,cat 60000,truck 60001,deer 60002,dog 60003,automobile 60004,frog 60005,automobile 60006,dog 60007,frog 60008,automobile 60009,horse 60010,frog 60011,ship 60012,deer 60013,horse 60014,dog 60015,horse 60016,automobile 60017,bird 60018,frog 60019,deer 60020,deer 60021,bird 60022,airplane 60023,automobile 60024,dog 60025,horse 60026,truck 60027,deer 60028,dog 60029,frog 60030,horse 60031,automobile 60032,airplane 60033,deer 60034,dog 60035,airplane 60036,cat 60037,truck 60038,cat 60039,frog 60040,deer 60041,cat 60042,ship 60043,frog 60044,ship 60045,dog 60046,ship 60047,automobile 60048,frog 60049,truck 60050,airplane 60051,deer 60052,ship 60053,deer 60054,frog 60055,airplane 60056,ship 60057,truck 60058,deer 60059,cat 60060,horse 60061,ship 60062,deer 60063,cat 60064,cat 60065,horse 60066,airplane 60067,cat 60068,dog 60069,cat 60070,horse 60071,truck 60072,frog 60073,horse 60074,automobile 60075,dog 60076,cat 60077,cat 60078,frog 60079,deer 60080,frog 60081,dog 60082,frog 60083,deer 60084,frog 60085,cat 60086,cat 60087,horse 60088,frog 60089,cat 60090,cat 60091,horse 60092,truck 60093,bird 60094,dog 60095,cat 60096,cat 60097,airplane 60098,frog 60099,deer 60100,airplane 60101,deer 60102,dog 60103,deer 60104,frog 60105,cat 60106,cat 60107,truck 60108,cat 60109,cat 60110,dog 60111,frog 60112,deer 60113,dog 60114,ship 60115,truck 60116,bird 60117,ship 60118,automobile 60119,frog 60120,bird 60121,airplane 60122,automobile 60123,cat 60124,cat 60125,frog 60126,frog 60127,cat 60128,frog 60129,cat 60130,bird 60131,bird 60132,deer 60133,airplane 60134,deer 60135,ship 60136,horse 60137,truck 60138,deer 60139,deer 60140,airplane 60141,frog 60142,deer 60143,frog 60144,deer 60145,dog 60146,truck 60147,airplane 60148,ship 60149,frog 60150,truck 60151,cat 60152,airplane 60153,frog 60154,frog 60155,bird 60156,ship 60157,frog 60158,horse 60159,truck 60160,truck 60161,cat 60162,deer 60163,airplane 60164,dog 60165,automobile 60166,dog 60167,frog 60168,cat 60169,horse 60170,automobile 60171,deer 60172,airplane 60173,airplane 60174,ship 60175,frog 60176,deer 60177,deer 60178,bird 60179,frog 60180,horse 60181,frog 60182,ship 60183,deer 60184,horse 60185,truck 60186,bird 60187,automobile 60188,deer 60189,dog 60190,cat 60191,dog 60192,deer 60193,truck 60194,frog 60195,automobile 60196,deer 60197,ship 60198,deer 60199,airplane 60200,truck 60201,dog 60202,airplane 60203,bird 60204,bird 60205,dog 60206,frog 60207,bird 60208,bird 60209,automobile 60210,airplane 60211,automobile 60212,ship 60213,airplane 60214,deer 60215,automobile 60216,automobile 60217,truck 60218,horse 60219,horse 60220,bird 60221,cat 60222,frog 60223,truck 60224,deer 60225,airplane 60226,dog 60227,cat 60228,cat 60229,cat 60230,airplane 60231,cat 60232,airplane 60233,truck 60234,bird 60235,ship 60236,cat 60237,dog 60238,ship 60239,frog 60240,bird 60241,cat 60242,frog 60243,horse 60244,cat 60245,deer 60246,ship 60247,dog 60248,truck 60249,cat 60250,airplane 60251,bird 60252,bird 60253,airplane 60254,horse 60255,cat 60256,cat 60257,bird 60258,ship 60259,deer 60260,dog 60261,automobile 60262,cat 60263,frog 60264,horse 60265,automobile 60266,frog 60267,cat 60268,truck 60269,dog 60270,frog 60271,frog 60272,bird 60273,ship 60274,truck 60275,airplane 60276,bird 60277,cat 60278,deer 60279,ship 60280,automobile 60281,dog 60282,automobile 60283,truck 60284,ship 60285,ship 60286,automobile 60287,automobile 60288,bird 60289,frog 60290,deer 60291,airplane 60292,dog 60293,airplane 60294,deer 60295,deer 60296,horse 60297,cat 60298,truck 60299,truck 60300,cat 60301,dog 60302,truck 60303,deer 60304,deer 60305,cat 60306,frog 60307,cat 60308,dog 60309,horse 60310,airplane 60311,dog 60312,frog 60313,frog 60314,deer 60315,deer 60316,cat 60317,dog 60318,horse 60319,horse 60320,airplane 60321,frog 60322,frog 60323,automobile 60324,ship 60325,automobile 60326,ship 60327,frog 60328,frog 60329,bird 60330,deer 60331,deer 60332,automobile 60333,bird 60334,frog 60335,deer 60336,bird 60337,airplane 60338,deer 60339,airplane 60340,horse 60341,deer 60342,frog 60343,ship 60344,cat 60345,cat 60346,deer 60347,frog 60348,bird 60349,dog 60350,frog 60351,horse 60352,deer 60353,frog 60354,airplane 60355,deer 60356,frog 60357,truck 60358,airplane 60359,cat 60360,cat 60361,frog 60362,frog 60363,horse 60364,truck 60365,cat 60366,ship 60367,cat 60368,truck 60369,dog 60370,cat 60371,deer 60372,cat 60373,ship 60374,deer 60375,truck 60376,bird 60377,truck 60378,deer 60379,deer 60380,airplane 60381,truck 60382,cat 60383,truck 60384,ship 60385,deer 60386,dog 60387,frog 60388,frog 60389,dog 60390,horse 60391,airplane 60392,ship 60393,truck 60394,ship 60395,horse 60396,automobile 60397,deer 60398,frog 60399,bird 60400,airplane 60401,frog 60402,deer 60403,ship 60404,cat 60405,horse 60406,horse 60407,bird 60408,truck 60409,bird 60410,frog 60411,horse 60412,horse 60413,cat 60414,truck 60415,cat 60416,truck 60417,dog 60418,bird 60419,deer 60420,deer 60421,ship 60422,dog 60423,airplane 60424,airplane 60425,automobile 60426,dog 60427,frog 60428,deer 60429,airplane 60430,dog 60431,bird 60432,airplane 60433,cat 60434,cat 60435,frog 60436,truck 60437,frog 60438,ship 60439,dog 60440,bird 60441,dog 60442,bird 60443,airplane 60444,airplane 60445,automobile 60446,airplane 60447,horse 60448,ship 60449,horse 60450,ship 60451,dog 60452,frog 60453,cat 60454,airplane 60455,deer 60456,cat 60457,dog 60458,automobile 60459,airplane 60460,dog 60461,ship 60462,horse 60463,automobile 60464,ship 60465,truck 60466,cat 60467,cat 60468,horse 60469,horse 60470,deer 60471,truck 60472,bird 60473,cat 60474,horse 60475,horse 60476,ship 60477,frog 60478,deer 60479,bird 60480,dog 60481,frog 60482,airplane 60483,airplane 60484,deer 60485,frog 60486,truck 60487,dog 60488,cat 60489,dog 60490,deer 60491,ship 60492,horse 60493,bird 60494,frog 60495,automobile 60496,cat 60497,ship 60498,bird 60499,ship 60500,airplane 60501,dog 60502,automobile 60503,truck 60504,ship 60505,dog 60506,airplane 60507,dog 60508,deer 60509,deer 60510,cat 60511,automobile 60512,cat 60513,truck 60514,dog 60515,ship 60516,cat 60517,automobile 60518,horse 60519,truck 60520,horse 60521,deer 60522,bird 60523,frog 60524,cat 60525,airplane 60526,frog 60527,truck 60528,deer 60529,cat 60530,cat 60531,deer 60532,deer 60533,cat 60534,ship 60535,truck 60536,airplane 60537,frog 60538,automobile 60539,automobile 60540,frog 60541,automobile 60542,airplane 60543,truck 60544,automobile 60545,deer 60546,deer 60547,airplane 60548,cat 60549,cat 60550,deer 60551,airplane 60552,truck 60553,frog 60554,bird 60555,airplane 60556,deer 60557,dog 60558,dog 60559,horse 60560,airplane 60561,truck 60562,truck 60563,cat 60564,truck 60565,frog 60566,frog 60567,truck 60568,bird 60569,cat 60570,frog 60571,deer 60572,truck 60573,truck 60574,cat 60575,deer 60576,bird 60577,ship 60578,automobile 60579,truck 60580,horse 60581,frog 60582,dog 60583,deer 60584,horse 60585,cat 60586,deer 60587,ship 60588,frog 60589,horse 60590,deer 60591,ship 60592,frog 60593,truck 60594,bird 60595,frog 60596,frog 60597,cat 60598,deer 60599,ship 60600,truck 60601,automobile 60602,cat 60603,ship 60604,ship 60605,ship 60606,cat 60607,truck 60608,bird 60609,airplane 60610,bird 60611,frog 60612,cat 60613,frog 60614,deer 60615,frog 60616,frog 60617,truck 60618,cat 60619,ship 60620,dog 60621,cat 60622,ship 60623,cat 60624,ship 60625,cat 60626,bird 60627,horse 60628,dog 60629,truck 60630,deer 60631,automobile 60632,automobile 60633,airplane 60634,dog 60635,cat 60636,frog 60637,deer 60638,dog 60639,horse 60640,dog 60641,horse 60642,automobile 60643,airplane 60644,airplane 60645,dog 60646,frog 60647,deer 60648,frog 60649,dog 60650,cat 60651,dog 60652,ship 60653,dog 60654,frog 60655,frog 60656,automobile 60657,frog 60658,frog 60659,horse 60660,horse 60661,ship 60662,horse 60663,dog 60664,ship 60665,truck 60666,deer 60667,cat 60668,frog 60669,dog 60670,dog 60671,ship 60672,cat 60673,automobile 60674,ship 60675,truck 60676,horse 60677,frog 60678,truck 60679,frog 60680,cat 60681,bird 60682,horse 60683,cat 60684,airplane 60685,bird 60686,automobile 60687,horse 60688,ship 60689,airplane 60690,ship 60691,truck 60692,ship 60693,ship 60694,truck 60695,frog 60696,deer 60697,deer 60698,automobile 60699,bird 60700,ship 60701,deer 60702,ship 60703,bird 60704,frog 60705,frog 60706,frog 60707,cat 60708,bird 60709,bird 60710,dog 60711,bird 60712,dog 60713,bird 60714,truck 60715,horse 60716,cat 60717,truck 60718,bird 60719,truck 60720,horse 60721,frog 60722,cat 60723,horse 60724,deer 60725,frog 60726,airplane 60727,horse 60728,automobile 60729,frog 60730,ship 60731,horse 60732,deer 60733,horse 60734,frog 60735,cat 60736,deer 60737,deer 60738,airplane 60739,frog 60740,bird 60741,cat 60742,cat 60743,airplane 60744,deer 60745,truck 60746,bird 60747,truck 60748,cat 60749,automobile 60750,horse 60751,deer 60752,ship 60753,dog 60754,cat 60755,cat 60756,ship 60757,dog 60758,horse 60759,truck 60760,airplane 60761,frog 60762,horse 60763,truck 60764,automobile 60765,bird 60766,deer 60767,automobile 60768,horse 60769,cat 60770,dog 60771,deer 60772,frog 60773,truck 60774,ship 60775,truck 60776,dog 60777,frog 60778,ship 60779,airplane 60780,horse 60781,automobile 60782,cat 60783,frog 60784,deer 60785,automobile 60786,dog 60787,frog 60788,horse 60789,deer 60790,frog 60791,airplane 60792,cat 60793,truck 60794,deer 60795,dog 60796,frog 60797,frog 60798,deer 60799,deer 60800,bird 60801,dog 60802,dog 60803,cat 60804,deer 60805,horse 60806,truck 60807,frog 60808,frog 60809,bird 60810,cat 60811,horse 60812,cat 60813,cat 60814,bird 60815,truck 60816,dog 60817,horse 60818,horse 60819,deer 60820,airplane 60821,frog 60822,ship 60823,airplane 60824,ship 60825,deer 60826,dog 60827,dog 60828,bird 60829,truck 60830,ship 60831,dog 60832,bird 60833,horse 60834,airplane 60835,automobile 60836,airplane 60837,cat 60838,ship 60839,horse 60840,airplane 60841,horse 60842,frog 60843,dog 60844,deer 60845,horse 60846,horse 60847,bird 60848,automobile 60849,airplane 60850,cat 60851,dog 60852,dog 60853,ship 60854,bird 60855,horse 60856,cat 60857,truck 60858,deer 60859,automobile 60860,bird 60861,airplane 60862,frog 60863,truck 60864,horse 60865,ship 60866,dog 60867,frog 60868,dog 60869,cat 60870,bird 60871,horse 60872,truck 60873,frog 60874,deer 60875,truck 60876,frog 60877,cat 60878,horse 60879,ship 60880,bird 60881,cat 60882,automobile 60883,cat 60884,dog 60885,cat 60886,dog 60887,dog 60888,deer 60889,bird 60890,deer 60891,deer 60892,truck 60893,cat 60894,airplane 60895,automobile 60896,cat 60897,dog 60898,cat 60899,airplane 60900,ship 60901,truck 60902,horse 60903,frog 60904,ship 60905,dog 60906,airplane 60907,ship 60908,cat 60909,truck 60910,bird 60911,frog 60912,dog 60913,airplane 60914,bird 60915,cat 60916,truck 60917,deer 60918,frog 60919,horse 60920,deer 60921,cat 60922,frog 60923,dog 60924,automobile 60925,cat 60926,horse 60927,airplane 60928,automobile 60929,frog 60930,truck 60931,airplane 60932,frog 60933,deer 60934,ship 60935,truck 60936,horse 60937,truck 60938,horse 60939,truck 60940,truck 60941,ship 60942,horse 60943,automobile 60944,cat 60945,horse 60946,dog 60947,frog 60948,cat 60949,horse 60950,dog 60951,frog 60952,deer 60953,deer 60954,horse 60955,dog 60956,bird 60957,bird 60958,horse 60959,cat 60960,bird 60961,automobile 60962,airplane 60963,automobile 60964,cat 60965,horse 60966,deer 60967,frog 60968,ship 60969,airplane 60970,bird 60971,frog 60972,bird 60973,automobile 60974,frog 60975,deer 60976,frog 60977,truck 60978,deer 60979,airplane 60980,deer 60981,airplane 60982,horse 60983,bird 60984,cat 60985,dog 60986,cat 60987,horse 60988,automobile 60989,bird 60990,bird 60991,airplane 60992,airplane 60993,dog 60994,automobile 60995,ship 60996,dog 60997,frog 60998,deer 60999,airplane 61000,airplane 61001,airplane 61002,deer 61003,horse 61004,automobile 61005,frog 61006,horse 61007,deer 61008,bird 61009,dog 61010,truck 61011,deer 61012,airplane 61013,airplane 61014,cat 61015,deer 61016,cat 61017,dog 61018,frog 61019,cat 61020,horse 61021,airplane 61022,cat 61023,dog 61024,automobile 61025,ship 61026,frog 61027,cat 61028,airplane 61029,horse 61030,cat 61031,ship 61032,bird 61033,dog 61034,cat 61035,cat 61036,truck 61037,dog 61038,cat 61039,airplane 61040,frog 61041,bird 61042,automobile 61043,horse 61044,ship 61045,horse 61046,deer 61047,deer 61048,bird 61049,frog 61050,bird 61051,airplane 61052,bird 61053,truck 61054,automobile 61055,deer 61056,airplane 61057,truck 61058,ship 61059,automobile 61060,airplane 61061,bird 61062,dog 61063,cat 61064,airplane 61065,deer 61066,ship 61067,ship 61068,frog 61069,airplane 61070,ship 61071,cat 61072,airplane 61073,ship 61074,ship 61075,deer 61076,cat 61077,bird 61078,airplane 61079,dog 61080,dog 61081,dog 61082,deer 61083,bird 61084,frog 61085,cat 61086,airplane 61087,horse 61088,frog 61089,horse 61090,frog 61091,cat 61092,cat 61093,airplane 61094,frog 61095,cat 61096,bird 61097,deer 61098,horse 61099,bird 61100,deer 61101,bird 61102,truck 61103,dog 61104,deer 61105,frog 61106,truck 61107,deer 61108,frog 61109,bird 61110,cat 61111,deer 61112,horse 61113,ship 61114,frog 61115,frog 61116,airplane 61117,horse 61118,deer 61119,bird 61120,frog 61121,automobile 61122,airplane 61123,deer 61124,cat 61125,horse 61126,deer 61127,dog 61128,deer 61129,deer 61130,bird 61131,airplane 61132,deer 61133,dog 61134,horse 61135,horse 61136,automobile 61137,truck 61138,bird 61139,truck 61140,deer 61141,truck 61142,cat 61143,bird 61144,frog 61145,automobile 61146,frog 61147,dog 61148,automobile 61149,truck 61150,deer 61151,airplane 61152,deer 61153,deer 61154,bird 61155,truck 61156,bird 61157,cat 61158,airplane 61159,frog 61160,ship 61161,cat 61162,dog 61163,bird 61164,bird 61165,ship 61166,dog 61167,dog 61168,horse 61169,truck 61170,cat 61171,cat 61172,cat 61173,deer 61174,cat 61175,deer 61176,horse 61177,airplane 61178,frog 61179,cat 61180,horse 61181,truck 61182,bird 61183,truck 61184,frog 61185,frog 61186,automobile 61187,frog 61188,automobile 61189,frog 61190,truck 61191,horse 61192,frog 61193,ship 61194,frog 61195,frog 61196,dog 61197,horse 61198,deer 61199,ship 61200,bird 61201,airplane 61202,bird 61203,truck 61204,airplane 61205,automobile 61206,cat 61207,cat 61208,bird 61209,bird 61210,dog 61211,airplane 61212,truck 61213,airplane 61214,truck 61215,cat 61216,dog 61217,frog 61218,cat 61219,truck 61220,automobile 61221,cat 61222,ship 61223,bird 61224,dog 61225,dog 61226,airplane 61227,frog 61228,airplane 61229,bird 61230,airplane 61231,automobile 61232,frog 61233,horse 61234,truck 61235,dog 61236,ship 61237,bird 61238,deer 61239,automobile 61240,dog 61241,horse 61242,airplane 61243,cat 61244,airplane 61245,truck 61246,dog 61247,deer 61248,ship 61249,horse 61250,dog 61251,ship 61252,horse 61253,horse 61254,automobile 61255,truck 61256,cat 61257,airplane 61258,frog 61259,airplane 61260,horse 61261,dog 61262,bird 61263,automobile 61264,horse 61265,deer 61266,deer 61267,cat 61268,dog 61269,automobile 61270,deer 61271,airplane 61272,frog 61273,truck 61274,dog 61275,bird 61276,ship 61277,cat 61278,horse 61279,frog 61280,airplane 61281,truck 61282,deer 61283,frog 61284,frog 61285,horse 61286,dog 61287,cat 61288,automobile 61289,horse 61290,airplane 61291,airplane 61292,airplane 61293,cat 61294,truck 61295,airplane 61296,automobile 61297,ship 61298,horse 61299,dog 61300,deer 61301,cat 61302,airplane 61303,truck 61304,cat 61305,ship 61306,truck 61307,automobile 61308,bird 61309,bird 61310,dog 61311,cat 61312,cat 61313,airplane 61314,automobile 61315,horse 61316,ship 61317,horse 61318,bird 61319,frog 61320,deer 61321,frog 61322,horse 61323,frog 61324,automobile 61325,frog 61326,truck 61327,horse 61328,airplane 61329,frog 61330,frog 61331,ship 61332,cat 61333,cat 61334,frog 61335,frog 61336,ship 61337,truck 61338,bird 61339,ship 61340,horse 61341,truck 61342,truck 61343,truck 61344,deer 61345,deer 61346,bird 61347,ship 61348,bird 61349,frog 61350,deer 61351,bird 61352,deer 61353,cat 61354,cat 61355,automobile 61356,truck 61357,frog 61358,dog 61359,deer 61360,dog 61361,dog 61362,deer 61363,cat 61364,frog 61365,airplane 61366,truck 61367,deer 61368,cat 61369,truck 61370,airplane 61371,dog 61372,frog 61373,dog 61374,dog 61375,cat 61376,truck 61377,bird 61378,bird 61379,deer 61380,deer 61381,dog 61382,bird 61383,bird 61384,dog 61385,airplane 61386,horse 61387,cat 61388,truck 61389,ship 61390,horse 61391,cat 61392,truck 61393,deer 61394,bird 61395,truck 61396,horse 61397,automobile 61398,automobile 61399,dog 61400,dog 61401,horse 61402,frog 61403,deer 61404,horse 61405,truck 61406,deer 61407,dog 61408,cat 61409,deer 61410,automobile 61411,airplane 61412,horse 61413,cat 61414,frog 61415,cat 61416,frog 61417,ship 61418,bird 61419,cat 61420,ship 61421,horse 61422,horse 61423,airplane 61424,cat 61425,frog 61426,ship 61427,truck 61428,truck 61429,frog 61430,deer 61431,bird 61432,cat 61433,airplane 61434,frog 61435,dog 61436,cat 61437,bird 61438,airplane 61439,horse 61440,truck 61441,truck 61442,bird 61443,bird 61444,frog 61445,horse 61446,automobile 61447,bird 61448,cat 61449,deer 61450,cat 61451,frog 61452,deer 61453,ship 61454,cat 61455,cat 61456,airplane 61457,horse 61458,airplane 61459,automobile 61460,cat 61461,airplane 61462,deer 61463,deer 61464,deer 61465,truck 61466,frog 61467,cat 61468,airplane 61469,deer 61470,automobile 61471,bird 61472,horse 61473,deer 61474,dog 61475,cat 61476,cat 61477,airplane 61478,deer 61479,dog 61480,bird 61481,deer 61482,automobile 61483,airplane 61484,horse 61485,horse 61486,horse 61487,automobile 61488,cat 61489,airplane 61490,horse 61491,dog 61492,cat 61493,dog 61494,cat 61495,deer 61496,automobile 61497,airplane 61498,deer 61499,ship 61500,dog 61501,ship 61502,dog 61503,bird 61504,bird 61505,cat 61506,frog 61507,automobile 61508,deer 61509,bird 61510,cat 61511,truck 61512,automobile 61513,horse 61514,airplane 61515,horse 61516,deer 61517,ship 61518,truck 61519,airplane 61520,frog 61521,truck 61522,airplane 61523,frog 61524,dog 61525,dog 61526,dog 61527,deer 61528,truck 61529,horse 61530,automobile 61531,airplane 61532,dog 61533,airplane 61534,cat 61535,ship 61536,airplane 61537,frog 61538,cat 61539,ship 61540,automobile 61541,deer 61542,cat 61543,frog 61544,automobile 61545,deer 61546,dog 61547,ship 61548,truck 61549,dog 61550,cat 61551,frog 61552,ship 61553,airplane 61554,truck 61555,deer 61556,deer 61557,dog 61558,dog 61559,deer 61560,dog 61561,bird 61562,cat 61563,frog 61564,frog 61565,automobile 61566,automobile 61567,truck 61568,deer 61569,frog 61570,cat 61571,automobile 61572,ship 61573,deer 61574,dog 61575,dog 61576,cat 61577,horse 61578,frog 61579,cat 61580,horse 61581,deer 61582,cat 61583,deer 61584,cat 61585,ship 61586,bird 61587,deer 61588,dog 61589,truck 61590,bird 61591,truck 61592,frog 61593,deer 61594,deer 61595,bird 61596,cat 61597,airplane 61598,automobile 61599,airplane 61600,airplane 61601,ship 61602,truck 61603,frog 61604,bird 61605,dog 61606,dog 61607,cat 61608,horse 61609,truck 61610,frog 61611,frog 61612,automobile 61613,horse 61614,frog 61615,cat 61616,airplane 61617,dog 61618,ship 61619,dog 61620,horse 61621,automobile 61622,frog 61623,truck 61624,cat 61625,deer 61626,deer 61627,deer 61628,ship 61629,deer 61630,frog 61631,automobile 61632,cat 61633,cat 61634,ship 61635,bird 61636,frog 61637,truck 61638,bird 61639,truck 61640,deer 61641,truck 61642,bird 61643,frog 61644,ship 61645,truck 61646,frog 61647,horse 61648,cat 61649,deer 61650,frog 61651,frog 61652,deer 61653,cat 61654,airplane 61655,truck 61656,bird 61657,frog 61658,bird 61659,airplane 61660,cat 61661,truck 61662,horse 61663,deer 61664,automobile 61665,frog 61666,ship 61667,truck 61668,cat 61669,dog 61670,frog 61671,truck 61672,cat 61673,ship 61674,airplane 61675,airplane 61676,dog 61677,truck 61678,ship 61679,dog 61680,airplane 61681,dog 61682,ship 61683,deer 61684,deer 61685,bird 61686,frog 61687,deer 61688,truck 61689,deer 61690,bird 61691,bird 61692,truck 61693,deer 61694,airplane 61695,ship 61696,airplane 61697,bird 61698,dog 61699,ship 61700,ship 61701,cat 61702,automobile 61703,dog 61704,automobile 61705,cat 61706,dog 61707,truck 61708,cat 61709,airplane 61710,cat 61711,horse 61712,truck 61713,automobile 61714,deer 61715,horse 61716,frog 61717,cat 61718,dog 61719,dog 61720,dog 61721,truck 61722,frog 61723,deer 61724,airplane 61725,ship 61726,truck 61727,frog 61728,deer 61729,horse 61730,airplane 61731,truck 61732,frog 61733,dog 61734,truck 61735,airplane 61736,cat 61737,horse 61738,bird 61739,airplane 61740,deer 61741,deer 61742,horse 61743,automobile 61744,cat 61745,deer 61746,frog 61747,dog 61748,ship 61749,dog 61750,deer 61751,deer 61752,truck 61753,deer 61754,truck 61755,frog 61756,airplane 61757,frog 61758,airplane 61759,automobile 61760,ship 61761,deer 61762,cat 61763,frog 61764,bird 61765,automobile 61766,truck 61767,ship 61768,automobile 61769,horse 61770,automobile 61771,dog 61772,airplane 61773,cat 61774,cat 61775,dog 61776,airplane 61777,horse 61778,truck 61779,horse 61780,horse 61781,horse 61782,dog 61783,truck 61784,dog 61785,ship 61786,deer 61787,deer 61788,dog 61789,frog 61790,frog 61791,dog 61792,deer 61793,frog 61794,truck 61795,ship 61796,automobile 61797,horse 61798,airplane 61799,horse 61800,ship 61801,bird 61802,deer 61803,cat 61804,frog 61805,dog 61806,truck 61807,truck 61808,deer 61809,truck 61810,automobile 61811,deer 61812,frog 61813,ship 61814,bird 61815,horse 61816,deer 61817,frog 61818,cat 61819,cat 61820,dog 61821,horse 61822,deer 61823,automobile 61824,truck 61825,deer 61826,frog 61827,frog 61828,horse 61829,cat 61830,deer 61831,dog 61832,frog 61833,bird 61834,airplane 61835,frog 61836,cat 61837,automobile 61838,frog 61839,airplane 61840,frog 61841,horse 61842,cat 61843,automobile 61844,bird 61845,automobile 61846,airplane 61847,ship 61848,cat 61849,dog 61850,truck 61851,truck 61852,automobile 61853,horse 61854,airplane 61855,cat 61856,frog 61857,truck 61858,bird 61859,deer 61860,ship 61861,ship 61862,truck 61863,cat 61864,automobile 61865,deer 61866,bird 61867,cat 61868,dog 61869,deer 61870,automobile 61871,deer 61872,deer 61873,automobile 61874,deer 61875,bird 61876,automobile 61877,frog 61878,dog 61879,automobile 61880,automobile 61881,dog 61882,cat 61883,airplane 61884,cat 61885,deer 61886,dog 61887,frog 61888,truck 61889,dog 61890,cat 61891,dog 61892,bird 61893,ship 61894,bird 61895,automobile 61896,deer 61897,dog 61898,cat 61899,airplane 61900,automobile 61901,bird 61902,deer 61903,cat 61904,dog 61905,airplane 61906,cat 61907,ship 61908,horse 61909,cat 61910,dog 61911,dog 61912,deer 61913,horse 61914,horse 61915,deer 61916,frog 61917,truck 61918,dog 61919,bird 61920,ship 61921,dog 61922,dog 61923,deer 61924,bird 61925,truck 61926,horse 61927,ship 61928,horse 61929,ship 61930,cat 61931,automobile 61932,ship 61933,truck 61934,dog 61935,cat 61936,bird 61937,frog 61938,airplane 61939,dog 61940,truck 61941,bird 61942,truck 61943,airplane 61944,truck 61945,airplane 61946,dog 61947,horse 61948,truck 61949,cat 61950,cat 61951,airplane 61952,frog 61953,automobile 61954,ship 61955,ship 61956,ship 61957,frog 61958,truck 61959,deer 61960,frog 61961,bird 61962,frog 61963,dog 61964,deer 61965,cat 61966,ship 61967,horse 61968,frog 61969,dog 61970,truck 61971,horse 61972,deer 61973,horse 61974,horse 61975,horse 61976,frog 61977,dog 61978,cat 61979,ship 61980,deer 61981,automobile 61982,cat 61983,airplane 61984,ship 61985,truck 61986,truck 61987,horse 61988,truck 61989,horse 61990,dog 61991,horse 61992,ship 61993,cat 61994,deer 61995,deer 61996,cat 61997,dog 61998,bird 61999,cat 62000,ship 62001,truck 62002,cat 62003,dog 62004,dog 62005,horse 62006,airplane 62007,truck 62008,truck 62009,truck 62010,horse 62011,dog 62012,horse 62013,horse 62014,ship 62015,deer 62016,automobile 62017,truck 62018,frog 62019,cat 62020,horse 62021,bird 62022,bird 62023,ship 62024,frog 62025,dog 62026,airplane 62027,bird 62028,ship 62029,bird 62030,airplane 62031,deer 62032,truck 62033,dog 62034,ship 62035,deer 62036,airplane 62037,deer 62038,frog 62039,bird 62040,dog 62041,horse 62042,deer 62043,horse 62044,horse 62045,frog 62046,ship 62047,frog 62048,cat 62049,deer 62050,automobile 62051,frog 62052,ship 62053,deer 62054,deer 62055,bird 62056,dog 62057,frog 62058,frog 62059,deer 62060,dog 62061,airplane 62062,dog 62063,truck 62064,airplane 62065,deer 62066,deer 62067,ship 62068,frog 62069,bird 62070,dog 62071,dog 62072,bird 62073,deer 62074,dog 62075,bird 62076,cat 62077,truck 62078,cat 62079,bird 62080,truck 62081,deer 62082,deer 62083,horse 62084,horse 62085,horse 62086,frog 62087,ship 62088,bird 62089,ship 62090,dog 62091,truck 62092,ship 62093,airplane 62094,bird 62095,automobile 62096,bird 62097,cat 62098,automobile 62099,deer 62100,deer 62101,ship 62102,deer 62103,cat 62104,bird 62105,truck 62106,airplane 62107,airplane 62108,deer 62109,bird 62110,cat 62111,ship 62112,deer 62113,horse 62114,deer 62115,ship 62116,automobile 62117,cat 62118,truck 62119,horse 62120,truck 62121,truck 62122,ship 62123,dog 62124,truck 62125,airplane 62126,ship 62127,ship 62128,truck 62129,deer 62130,automobile 62131,deer 62132,airplane 62133,truck 62134,deer 62135,cat 62136,airplane 62137,frog 62138,airplane 62139,cat 62140,ship 62141,deer 62142,truck 62143,automobile 62144,frog 62145,truck 62146,dog 62147,cat 62148,cat 62149,cat 62150,horse 62151,airplane 62152,horse 62153,automobile 62154,cat 62155,deer 62156,ship 62157,truck 62158,bird 62159,deer 62160,bird 62161,deer 62162,cat 62163,deer 62164,horse 62165,automobile 62166,frog 62167,horse 62168,frog 62169,cat 62170,deer 62171,dog 62172,deer 62173,automobile 62174,horse 62175,truck 62176,deer 62177,truck 62178,bird 62179,ship 62180,ship 62181,deer 62182,frog 62183,cat 62184,frog 62185,dog 62186,airplane 62187,horse 62188,bird 62189,truck 62190,cat 62191,airplane 62192,deer 62193,deer 62194,ship 62195,cat 62196,deer 62197,dog 62198,bird 62199,truck 62200,automobile 62201,ship 62202,deer 62203,frog 62204,deer 62205,airplane 62206,frog 62207,cat 62208,cat 62209,truck 62210,horse 62211,airplane 62212,truck 62213,automobile 62214,cat 62215,bird 62216,cat 62217,automobile 62218,dog 62219,truck 62220,truck 62221,airplane 62222,frog 62223,cat 62224,truck 62225,horse 62226,horse 62227,airplane 62228,deer 62229,bird 62230,ship 62231,automobile 62232,deer 62233,truck 62234,frog 62235,ship 62236,airplane 62237,dog 62238,horse 62239,frog 62240,truck 62241,ship 62242,truck 62243,cat 62244,deer 62245,cat 62246,ship 62247,bird 62248,dog 62249,horse 62250,ship 62251,cat 62252,frog 62253,frog 62254,horse 62255,cat 62256,airplane 62257,cat 62258,ship 62259,automobile 62260,frog 62261,frog 62262,dog 62263,cat 62264,dog 62265,deer 62266,cat 62267,ship 62268,automobile 62269,frog 62270,bird 62271,dog 62272,automobile 62273,ship 62274,automobile 62275,frog 62276,dog 62277,bird 62278,frog 62279,cat 62280,airplane 62281,bird 62282,dog 62283,ship 62284,deer 62285,deer 62286,deer 62287,frog 62288,frog 62289,truck 62290,truck 62291,airplane 62292,horse 62293,deer 62294,truck 62295,bird 62296,airplane 62297,cat 62298,horse 62299,dog 62300,frog 62301,airplane 62302,ship 62303,automobile 62304,ship 62305,cat 62306,cat 62307,dog 62308,bird 62309,truck 62310,frog 62311,bird 62312,dog 62313,airplane 62314,automobile 62315,frog 62316,frog 62317,cat 62318,horse 62319,frog 62320,airplane 62321,airplane 62322,horse 62323,truck 62324,bird 62325,frog 62326,automobile 62327,airplane 62328,deer 62329,truck 62330,deer 62331,cat 62332,frog 62333,truck 62334,airplane 62335,horse 62336,automobile 62337,bird 62338,ship 62339,dog 62340,frog 62341,truck 62342,dog 62343,truck 62344,bird 62345,ship 62346,bird 62347,frog 62348,airplane 62349,dog 62350,bird 62351,cat 62352,horse 62353,airplane 62354,airplane 62355,truck 62356,cat 62357,bird 62358,deer 62359,deer 62360,cat 62361,deer 62362,frog 62363,truck 62364,frog 62365,frog 62366,cat 62367,automobile 62368,airplane 62369,deer 62370,horse 62371,deer 62372,frog 62373,frog 62374,cat 62375,frog 62376,dog 62377,dog 62378,cat 62379,bird 62380,deer 62381,bird 62382,frog 62383,ship 62384,deer 62385,truck 62386,frog 62387,frog 62388,ship 62389,bird 62390,horse 62391,dog 62392,cat 62393,bird 62394,horse 62395,bird 62396,truck 62397,airplane 62398,deer 62399,deer 62400,frog 62401,airplane 62402,airplane 62403,cat 62404,horse 62405,deer 62406,truck 62407,dog 62408,horse 62409,horse 62410,ship 62411,cat 62412,horse 62413,airplane 62414,horse 62415,deer 62416,deer 62417,cat 62418,frog 62419,horse 62420,airplane 62421,automobile 62422,automobile 62423,frog 62424,cat 62425,dog 62426,truck 62427,airplane 62428,truck 62429,dog 62430,frog 62431,airplane 62432,automobile 62433,deer 62434,deer 62435,cat 62436,cat 62437,truck 62438,deer 62439,cat 62440,truck 62441,ship 62442,truck 62443,airplane 62444,horse 62445,horse 62446,airplane 62447,frog 62448,truck 62449,cat 62450,cat 62451,airplane 62452,airplane 62453,automobile 62454,truck 62455,horse 62456,cat 62457,horse 62458,horse 62459,frog 62460,automobile 62461,airplane 62462,deer 62463,truck 62464,frog 62465,ship 62466,bird 62467,cat 62468,frog 62469,horse 62470,frog 62471,deer 62472,horse 62473,bird 62474,horse 62475,bird 62476,horse 62477,deer 62478,cat 62479,airplane 62480,deer 62481,dog 62482,truck 62483,ship 62484,ship 62485,cat 62486,cat 62487,horse 62488,deer 62489,cat 62490,deer 62491,deer 62492,dog 62493,ship 62494,frog 62495,airplane 62496,deer 62497,ship 62498,dog 62499,airplane 62500,deer 62501,ship 62502,truck 62503,cat 62504,airplane 62505,frog 62506,cat 62507,cat 62508,deer 62509,horse 62510,cat 62511,deer 62512,cat 62513,ship 62514,cat 62515,deer 62516,dog 62517,airplane 62518,airplane 62519,truck 62520,deer 62521,deer 62522,horse 62523,frog 62524,dog 62525,dog 62526,truck 62527,dog 62528,dog 62529,automobile 62530,frog 62531,bird 62532,airplane 62533,dog 62534,ship 62535,dog 62536,deer 62537,cat 62538,deer 62539,cat 62540,cat 62541,frog 62542,horse 62543,horse 62544,horse 62545,dog 62546,deer 62547,cat 62548,frog 62549,ship 62550,horse 62551,ship 62552,truck 62553,dog 62554,deer 62555,automobile 62556,bird 62557,cat 62558,airplane 62559,horse 62560,deer 62561,truck 62562,bird 62563,horse 62564,horse 62565,frog 62566,horse 62567,cat 62568,airplane 62569,cat 62570,ship 62571,deer 62572,airplane 62573,automobile 62574,airplane 62575,deer 62576,frog 62577,cat 62578,ship 62579,cat 62580,deer 62581,dog 62582,bird 62583,ship 62584,deer 62585,dog 62586,horse 62587,airplane 62588,horse 62589,deer 62590,airplane 62591,dog 62592,airplane 62593,automobile 62594,ship 62595,dog 62596,deer 62597,frog 62598,bird 62599,cat 62600,dog 62601,horse 62602,airplane 62603,cat 62604,dog 62605,truck 62606,frog 62607,dog 62608,cat 62609,deer 62610,truck 62611,cat 62612,truck 62613,airplane 62614,deer 62615,cat 62616,truck 62617,bird 62618,automobile 62619,automobile 62620,horse 62621,dog 62622,airplane 62623,bird 62624,cat 62625,dog 62626,frog 62627,frog 62628,dog 62629,horse 62630,deer 62631,deer 62632,airplane 62633,automobile 62634,dog 62635,airplane 62636,cat 62637,frog 62638,ship 62639,cat 62640,horse 62641,horse 62642,frog 62643,truck 62644,airplane 62645,automobile 62646,deer 62647,bird 62648,truck 62649,frog 62650,airplane 62651,frog 62652,deer 62653,truck 62654,airplane 62655,ship 62656,truck 62657,dog 62658,ship 62659,horse 62660,cat 62661,airplane 62662,deer 62663,horse 62664,cat 62665,truck 62666,ship 62667,truck 62668,ship 62669,truck 62670,horse 62671,horse 62672,cat 62673,cat 62674,deer 62675,ship 62676,ship 62677,frog 62678,horse 62679,ship 62680,automobile 62681,airplane 62682,frog 62683,deer 62684,truck 62685,cat 62686,airplane 62687,cat 62688,ship 62689,horse 62690,ship 62691,frog 62692,truck 62693,truck 62694,frog 62695,deer 62696,deer 62697,airplane 62698,ship 62699,ship 62700,truck 62701,bird 62702,frog 62703,truck 62704,cat 62705,airplane 62706,cat 62707,horse 62708,cat 62709,ship 62710,cat 62711,deer 62712,deer 62713,frog 62714,frog 62715,deer 62716,ship 62717,airplane 62718,horse 62719,ship 62720,cat 62721,deer 62722,horse 62723,deer 62724,deer 62725,horse 62726,truck 62727,deer 62728,airplane 62729,ship 62730,dog 62731,horse 62732,horse 62733,dog 62734,frog 62735,dog 62736,airplane 62737,airplane 62738,horse 62739,bird 62740,cat 62741,automobile 62742,dog 62743,truck 62744,deer 62745,automobile 62746,frog 62747,dog 62748,dog 62749,horse 62750,deer 62751,frog 62752,truck 62753,bird 62754,automobile 62755,truck 62756,automobile 62757,airplane 62758,truck 62759,frog 62760,deer 62761,bird 62762,truck 62763,frog 62764,truck 62765,dog 62766,cat 62767,deer 62768,airplane 62769,ship 62770,truck 62771,automobile 62772,cat 62773,automobile 62774,deer 62775,dog 62776,automobile 62777,frog 62778,dog 62779,airplane 62780,horse 62781,truck 62782,deer 62783,cat 62784,deer 62785,ship 62786,truck 62787,cat 62788,dog 62789,airplane 62790,airplane 62791,automobile 62792,truck 62793,cat 62794,ship 62795,frog 62796,truck 62797,cat 62798,automobile 62799,airplane 62800,deer 62801,ship 62802,ship 62803,airplane 62804,deer 62805,cat 62806,airplane 62807,bird 62808,truck 62809,deer 62810,dog 62811,frog 62812,cat 62813,dog 62814,automobile 62815,frog 62816,frog 62817,truck 62818,dog 62819,dog 62820,frog 62821,deer 62822,deer 62823,airplane 62824,dog 62825,deer 62826,deer 62827,horse 62828,frog 62829,cat 62830,ship 62831,dog 62832,frog 62833,automobile 62834,ship 62835,airplane 62836,cat 62837,deer 62838,airplane 62839,truck 62840,dog 62841,truck 62842,horse 62843,ship 62844,dog 62845,truck 62846,truck 62847,horse 62848,deer 62849,ship 62850,automobile 62851,horse 62852,cat 62853,frog 62854,cat 62855,truck 62856,dog 62857,deer 62858,cat 62859,deer 62860,ship 62861,cat 62862,truck 62863,airplane 62864,bird 62865,horse 62866,frog 62867,deer 62868,horse 62869,ship 62870,bird 62871,deer 62872,truck 62873,frog 62874,automobile 62875,frog 62876,ship 62877,deer 62878,deer 62879,truck 62880,ship 62881,frog 62882,frog 62883,cat 62884,truck 62885,horse 62886,horse 62887,horse 62888,deer 62889,deer 62890,bird 62891,cat 62892,cat 62893,deer 62894,frog 62895,cat 62896,ship 62897,dog 62898,frog 62899,truck 62900,deer 62901,ship 62902,cat 62903,cat 62904,deer 62905,ship 62906,ship 62907,cat 62908,cat 62909,airplane 62910,horse 62911,deer 62912,dog 62913,cat 62914,deer 62915,deer 62916,truck 62917,dog 62918,horse 62919,cat 62920,deer 62921,frog 62922,deer 62923,bird 62924,cat 62925,dog 62926,deer 62927,automobile 62928,cat 62929,bird 62930,airplane 62931,dog 62932,airplane 62933,deer 62934,deer 62935,horse 62936,automobile 62937,dog 62938,bird 62939,cat 62940,dog 62941,dog 62942,truck 62943,bird 62944,frog 62945,deer 62946,ship 62947,frog 62948,truck 62949,horse 62950,deer 62951,frog 62952,airplane 62953,bird 62954,bird 62955,horse 62956,bird 62957,cat 62958,dog 62959,frog 62960,frog 62961,cat 62962,airplane 62963,deer 62964,deer 62965,cat 62966,airplane 62967,cat 62968,horse 62969,dog 62970,dog 62971,automobile 62972,dog 62973,dog 62974,truck 62975,automobile 62976,truck 62977,frog 62978,airplane 62979,frog 62980,airplane 62981,horse 62982,deer 62983,cat 62984,truck 62985,airplane 62986,cat 62987,truck 62988,ship 62989,ship 62990,dog 62991,ship 62992,airplane 62993,bird 62994,automobile 62995,automobile 62996,automobile 62997,horse 62998,bird 62999,frog 63000,ship 63001,ship 63002,bird 63003,bird 63004,frog 63005,airplane 63006,cat 63007,frog 63008,automobile 63009,dog 63010,dog 63011,frog 63012,cat 63013,airplane 63014,airplane 63015,truck 63016,frog 63017,dog 63018,deer 63019,dog 63020,ship 63021,ship 63022,ship 63023,deer 63024,cat 63025,airplane 63026,horse 63027,deer 63028,automobile 63029,automobile 63030,deer 63031,ship 63032,truck 63033,automobile 63034,dog 63035,deer 63036,truck 63037,cat 63038,cat 63039,truck 63040,airplane 63041,dog 63042,truck 63043,automobile 63044,automobile 63045,frog 63046,ship 63047,ship 63048,horse 63049,horse 63050,dog 63051,ship 63052,airplane 63053,ship 63054,dog 63055,frog 63056,cat 63057,deer 63058,cat 63059,ship 63060,deer 63061,bird 63062,dog 63063,ship 63064,cat 63065,cat 63066,horse 63067,frog 63068,deer 63069,truck 63070,cat 63071,bird 63072,dog 63073,dog 63074,deer 63075,airplane 63076,automobile 63077,horse 63078,horse 63079,cat 63080,horse 63081,truck 63082,dog 63083,deer 63084,deer 63085,cat 63086,cat 63087,frog 63088,truck 63089,ship 63090,cat 63091,cat 63092,deer 63093,deer 63094,truck 63095,frog 63096,frog 63097,horse 63098,cat 63099,airplane 63100,bird 63101,automobile 63102,airplane 63103,frog 63104,truck 63105,ship 63106,frog 63107,cat 63108,frog 63109,bird 63110,frog 63111,bird 63112,frog 63113,frog 63114,deer 63115,ship 63116,cat 63117,dog 63118,deer 63119,bird 63120,cat 63121,deer 63122,cat 63123,truck 63124,truck 63125,truck 63126,ship 63127,ship 63128,truck 63129,dog 63130,dog 63131,frog 63132,cat 63133,cat 63134,cat 63135,cat 63136,truck 63137,frog 63138,deer 63139,horse 63140,horse 63141,dog 63142,ship 63143,cat 63144,dog 63145,automobile 63146,truck 63147,horse 63148,dog 63149,deer 63150,frog 63151,frog 63152,truck 63153,dog 63154,bird 63155,bird 63156,frog 63157,dog 63158,automobile 63159,deer 63160,dog 63161,dog 63162,cat 63163,deer 63164,deer 63165,bird 63166,deer 63167,ship 63168,deer 63169,dog 63170,horse 63171,deer 63172,horse 63173,truck 63174,horse 63175,deer 63176,cat 63177,airplane 63178,truck 63179,horse 63180,deer 63181,horse 63182,frog 63183,cat 63184,horse 63185,deer 63186,dog 63187,truck 63188,cat 63189,cat 63190,horse 63191,frog 63192,truck 63193,airplane 63194,frog 63195,frog 63196,deer 63197,dog 63198,airplane 63199,dog 63200,horse 63201,cat 63202,truck 63203,dog 63204,dog 63205,bird 63206,cat 63207,automobile 63208,dog 63209,airplane 63210,frog 63211,deer 63212,frog 63213,truck 63214,horse 63215,cat 63216,dog 63217,frog 63218,cat 63219,cat 63220,truck 63221,cat 63222,airplane 63223,airplane 63224,truck 63225,automobile 63226,truck 63227,dog 63228,dog 63229,dog 63230,deer 63231,dog 63232,deer 63233,deer 63234,deer 63235,airplane 63236,airplane 63237,frog 63238,dog 63239,automobile 63240,cat 63241,dog 63242,truck 63243,horse 63244,cat 63245,truck 63246,cat 63247,ship 63248,truck 63249,deer 63250,horse 63251,frog 63252,bird 63253,truck 63254,truck 63255,dog 63256,dog 63257,horse 63258,cat 63259,cat 63260,cat 63261,ship 63262,frog 63263,frog 63264,bird 63265,horse 63266,ship 63267,truck 63268,ship 63269,deer 63270,ship 63271,ship 63272,bird 63273,truck 63274,cat 63275,horse 63276,frog 63277,dog 63278,cat 63279,airplane 63280,deer 63281,cat 63282,cat 63283,airplane 63284,cat 63285,frog 63286,horse 63287,deer 63288,deer 63289,airplane 63290,truck 63291,cat 63292,cat 63293,ship 63294,ship 63295,cat 63296,cat 63297,horse 63298,ship 63299,frog 63300,airplane 63301,automobile 63302,horse 63303,horse 63304,truck 63305,airplane 63306,deer 63307,frog 63308,automobile 63309,truck 63310,frog 63311,truck 63312,deer 63313,deer 63314,deer 63315,deer 63316,truck 63317,frog 63318,dog 63319,deer 63320,airplane 63321,deer 63322,cat 63323,horse 63324,truck 63325,cat 63326,horse 63327,dog 63328,ship 63329,truck 63330,dog 63331,frog 63332,cat 63333,deer 63334,truck 63335,deer 63336,frog 63337,dog 63338,horse 63339,horse 63340,bird 63341,deer 63342,frog 63343,horse 63344,automobile 63345,cat 63346,ship 63347,deer 63348,truck 63349,frog 63350,cat 63351,truck 63352,deer 63353,deer 63354,frog 63355,dog 63356,dog 63357,truck 63358,dog 63359,cat 63360,frog 63361,cat 63362,airplane 63363,airplane 63364,cat 63365,bird 63366,dog 63367,cat 63368,horse 63369,airplane 63370,airplane 63371,dog 63372,truck 63373,frog 63374,cat 63375,truck 63376,frog 63377,cat 63378,frog 63379,truck 63380,dog 63381,automobile 63382,deer 63383,bird 63384,airplane 63385,ship 63386,horse 63387,ship 63388,deer 63389,bird 63390,frog 63391,deer 63392,dog 63393,cat 63394,deer 63395,truck 63396,deer 63397,automobile 63398,ship 63399,dog 63400,automobile 63401,ship 63402,horse 63403,cat 63404,frog 63405,deer 63406,ship 63407,cat 63408,automobile 63409,truck 63410,cat 63411,cat 63412,truck 63413,cat 63414,airplane 63415,deer 63416,horse 63417,dog 63418,frog 63419,ship 63420,horse 63421,automobile 63422,truck 63423,dog 63424,ship 63425,bird 63426,dog 63427,bird 63428,airplane 63429,cat 63430,ship 63431,frog 63432,airplane 63433,dog 63434,dog 63435,deer 63436,horse 63437,frog 63438,frog 63439,dog 63440,truck 63441,truck 63442,deer 63443,frog 63444,automobile 63445,horse 63446,horse 63447,ship 63448,horse 63449,automobile 63450,frog 63451,airplane 63452,cat 63453,cat 63454,cat 63455,horse 63456,frog 63457,airplane 63458,ship 63459,truck 63460,automobile 63461,ship 63462,deer 63463,automobile 63464,frog 63465,cat 63466,bird 63467,airplane 63468,ship 63469,deer 63470,dog 63471,deer 63472,airplane 63473,bird 63474,airplane 63475,dog 63476,dog 63477,dog 63478,dog 63479,horse 63480,dog 63481,deer 63482,deer 63483,horse 63484,ship 63485,truck 63486,horse 63487,bird 63488,horse 63489,frog 63490,ship 63491,frog 63492,airplane 63493,deer 63494,cat 63495,deer 63496,bird 63497,airplane 63498,ship 63499,horse 63500,automobile 63501,horse 63502,automobile 63503,frog 63504,cat 63505,airplane 63506,deer 63507,airplane 63508,deer 63509,airplane 63510,horse 63511,frog 63512,airplane 63513,truck 63514,cat 63515,dog 63516,airplane 63517,frog 63518,bird 63519,dog 63520,bird 63521,dog 63522,frog 63523,bird 63524,dog 63525,frog 63526,truck 63527,truck 63528,bird 63529,dog 63530,dog 63531,automobile 63532,deer 63533,deer 63534,cat 63535,deer 63536,dog 63537,deer 63538,cat 63539,automobile 63540,cat 63541,ship 63542,frog 63543,bird 63544,cat 63545,cat 63546,bird 63547,ship 63548,truck 63549,dog 63550,dog 63551,automobile 63552,frog 63553,frog 63554,dog 63555,cat 63556,frog 63557,frog 63558,ship 63559,bird 63560,ship 63561,cat 63562,truck 63563,bird 63564,bird 63565,deer 63566,dog 63567,deer 63568,frog 63569,ship 63570,deer 63571,ship 63572,ship 63573,truck 63574,deer 63575,airplane 63576,ship 63577,horse 63578,bird 63579,cat 63580,dog 63581,automobile 63582,ship 63583,deer 63584,truck 63585,dog 63586,deer 63587,ship 63588,cat 63589,truck 63590,automobile 63591,deer 63592,horse 63593,dog 63594,deer 63595,bird 63596,deer 63597,deer 63598,frog 63599,dog 63600,truck 63601,bird 63602,dog 63603,ship 63604,frog 63605,dog 63606,cat 63607,dog 63608,airplane 63609,ship 63610,frog 63611,truck 63612,bird 63613,cat 63614,cat 63615,frog 63616,automobile 63617,horse 63618,horse 63619,bird 63620,bird 63621,ship 63622,bird 63623,ship 63624,horse 63625,cat 63626,deer 63627,deer 63628,deer 63629,deer 63630,frog 63631,bird 63632,cat 63633,horse 63634,frog 63635,cat 63636,bird 63637,dog 63638,frog 63639,dog 63640,cat 63641,cat 63642,horse 63643,truck 63644,deer 63645,deer 63646,cat 63647,automobile 63648,horse 63649,airplane 63650,ship 63651,dog 63652,bird 63653,truck 63654,airplane 63655,truck 63656,cat 63657,airplane 63658,ship 63659,cat 63660,ship 63661,airplane 63662,deer 63663,dog 63664,ship 63665,cat 63666,truck 63667,frog 63668,frog 63669,dog 63670,truck 63671,dog 63672,horse 63673,dog 63674,cat 63675,frog 63676,bird 63677,truck 63678,deer 63679,frog 63680,bird 63681,horse 63682,horse 63683,deer 63684,dog 63685,dog 63686,deer 63687,airplane 63688,cat 63689,airplane 63690,automobile 63691,cat 63692,horse 63693,horse 63694,horse 63695,truck 63696,automobile 63697,frog 63698,cat 63699,horse 63700,automobile 63701,automobile 63702,cat 63703,truck 63704,truck 63705,deer 63706,automobile 63707,horse 63708,frog 63709,dog 63710,deer 63711,dog 63712,airplane 63713,horse 63714,airplane 63715,bird 63716,dog 63717,dog 63718,frog 63719,bird 63720,ship 63721,dog 63722,dog 63723,horse 63724,deer 63725,deer 63726,cat 63727,frog 63728,deer 63729,deer 63730,dog 63731,truck 63732,horse 63733,cat 63734,bird 63735,automobile 63736,dog 63737,horse 63738,airplane 63739,truck 63740,truck 63741,horse 63742,cat 63743,frog 63744,airplane 63745,bird 63746,dog 63747,dog 63748,ship 63749,airplane 63750,cat 63751,automobile 63752,truck 63753,ship 63754,airplane 63755,cat 63756,dog 63757,airplane 63758,airplane 63759,cat 63760,cat 63761,frog 63762,cat 63763,truck 63764,bird 63765,dog 63766,deer 63767,truck 63768,airplane 63769,bird 63770,horse 63771,cat 63772,cat 63773,deer 63774,ship 63775,dog 63776,deer 63777,airplane 63778,horse 63779,ship 63780,airplane 63781,cat 63782,airplane 63783,airplane 63784,frog 63785,frog 63786,cat 63787,cat 63788,deer 63789,horse 63790,bird 63791,ship 63792,horse 63793,airplane 63794,cat 63795,dog 63796,airplane 63797,dog 63798,deer 63799,horse 63800,airplane 63801,ship 63802,cat 63803,dog 63804,dog 63805,truck 63806,deer 63807,dog 63808,frog 63809,dog 63810,frog 63811,dog 63812,dog 63813,horse 63814,cat 63815,truck 63816,automobile 63817,cat 63818,airplane 63819,ship 63820,cat 63821,automobile 63822,dog 63823,ship 63824,frog 63825,automobile 63826,horse 63827,deer 63828,truck 63829,ship 63830,frog 63831,bird 63832,horse 63833,dog 63834,ship 63835,cat 63836,cat 63837,truck 63838,deer 63839,truck 63840,deer 63841,automobile 63842,ship 63843,bird 63844,dog 63845,cat 63846,dog 63847,dog 63848,airplane 63849,deer 63850,automobile 63851,truck 63852,dog 63853,frog 63854,airplane 63855,deer 63856,horse 63857,deer 63858,frog 63859,automobile 63860,airplane 63861,cat 63862,ship 63863,deer 63864,bird 63865,airplane 63866,dog 63867,frog 63868,horse 63869,cat 63870,deer 63871,deer 63872,bird 63873,dog 63874,frog 63875,airplane 63876,dog 63877,deer 63878,cat 63879,horse 63880,horse 63881,frog 63882,deer 63883,cat 63884,deer 63885,dog 63886,bird 63887,deer 63888,cat 63889,ship 63890,deer 63891,horse 63892,dog 63893,airplane 63894,cat 63895,deer 63896,horse 63897,bird 63898,bird 63899,deer 63900,cat 63901,automobile 63902,ship 63903,airplane 63904,frog 63905,dog 63906,frog 63907,dog 63908,ship 63909,bird 63910,frog 63911,truck 63912,horse 63913,frog 63914,automobile 63915,dog 63916,deer 63917,truck 63918,truck 63919,dog 63920,automobile 63921,deer 63922,truck 63923,dog 63924,bird 63925,horse 63926,cat 63927,automobile 63928,truck 63929,truck 63930,frog 63931,horse 63932,bird 63933,deer 63934,airplane 63935,frog 63936,airplane 63937,truck 63938,bird 63939,frog 63940,ship 63941,frog 63942,automobile 63943,deer 63944,truck 63945,frog 63946,dog 63947,deer 63948,ship 63949,deer 63950,frog 63951,automobile 63952,ship 63953,airplane 63954,cat 63955,horse 63956,dog 63957,frog 63958,horse 63959,frog 63960,ship 63961,cat 63962,truck 63963,deer 63964,frog 63965,dog 63966,deer 63967,horse 63968,truck 63969,dog 63970,deer 63971,cat 63972,ship 63973,horse 63974,dog 63975,bird 63976,cat 63977,horse 63978,frog 63979,deer 63980,deer 63981,airplane 63982,ship 63983,deer 63984,automobile 63985,cat 63986,cat 63987,ship 63988,dog 63989,cat 63990,cat 63991,airplane 63992,dog 63993,horse 63994,truck 63995,frog 63996,cat 63997,frog 63998,deer 63999,cat 64000,cat 64001,bird 64002,cat 64003,dog 64004,bird 64005,truck 64006,deer 64007,frog 64008,frog 64009,horse 64010,truck 64011,cat 64012,airplane 64013,frog 64014,ship 64015,airplane 64016,deer 64017,cat 64018,airplane 64019,cat 64020,dog 64021,cat 64022,bird 64023,horse 64024,deer 64025,dog 64026,bird 64027,frog 64028,airplane 64029,ship 64030,truck 64031,ship 64032,dog 64033,frog 64034,dog 64035,automobile 64036,dog 64037,horse 64038,bird 64039,dog 64040,dog 64041,cat 64042,horse 64043,deer 64044,bird 64045,bird 64046,deer 64047,cat 64048,frog 64049,deer 64050,bird 64051,truck 64052,dog 64053,horse 64054,truck 64055,deer 64056,horse 64057,automobile 64058,frog 64059,automobile 64060,dog 64061,cat 64062,horse 64063,deer 64064,truck 64065,dog 64066,frog 64067,cat 64068,deer 64069,horse 64070,dog 64071,deer 64072,truck 64073,dog 64074,cat 64075,truck 64076,deer 64077,horse 64078,frog 64079,ship 64080,frog 64081,deer 64082,automobile 64083,horse 64084,truck 64085,frog 64086,airplane 64087,ship 64088,frog 64089,deer 64090,frog 64091,cat 64092,deer 64093,truck 64094,airplane 64095,deer 64096,bird 64097,dog 64098,cat 64099,dog 64100,cat 64101,frog 64102,horse 64103,deer 64104,bird 64105,dog 64106,dog 64107,horse 64108,frog 64109,deer 64110,frog 64111,truck 64112,ship 64113,frog 64114,automobile 64115,deer 64116,truck 64117,cat 64118,deer 64119,automobile 64120,frog 64121,airplane 64122,automobile 64123,horse 64124,frog 64125,cat 64126,airplane 64127,airplane 64128,bird 64129,dog 64130,dog 64131,truck 64132,truck 64133,frog 64134,automobile 64135,dog 64136,deer 64137,truck 64138,truck 64139,frog 64140,cat 64141,frog 64142,horse 64143,dog 64144,cat 64145,cat 64146,automobile 64147,deer 64148,automobile 64149,deer 64150,frog 64151,bird 64152,dog 64153,truck 64154,horse 64155,dog 64156,frog 64157,airplane 64158,cat 64159,dog 64160,truck 64161,cat 64162,deer 64163,bird 64164,frog 64165,automobile 64166,automobile 64167,truck 64168,airplane 64169,ship 64170,deer 64171,deer 64172,airplane 64173,horse 64174,cat 64175,bird 64176,bird 64177,cat 64178,ship 64179,airplane 64180,dog 64181,cat 64182,cat 64183,dog 64184,dog 64185,ship 64186,truck 64187,ship 64188,ship 64189,ship 64190,deer 64191,frog 64192,dog 64193,horse 64194,ship 64195,horse 64196,deer 64197,bird 64198,frog 64199,airplane 64200,deer 64201,ship 64202,cat 64203,cat 64204,bird 64205,deer 64206,automobile 64207,truck 64208,frog 64209,cat 64210,truck 64211,airplane 64212,airplane 64213,horse 64214,truck 64215,ship 64216,airplane 64217,horse 64218,deer 64219,airplane 64220,cat 64221,deer 64222,dog 64223,airplane 64224,cat 64225,airplane 64226,airplane 64227,cat 64228,truck 64229,truck 64230,dog 64231,ship 64232,frog 64233,deer 64234,airplane 64235,frog 64236,airplane 64237,deer 64238,bird 64239,dog 64240,cat 64241,frog 64242,dog 64243,truck 64244,dog 64245,deer 64246,dog 64247,ship 64248,airplane 64249,frog 64250,cat 64251,frog 64252,frog 64253,horse 64254,truck 64255,airplane 64256,deer 64257,bird 64258,dog 64259,automobile 64260,automobile 64261,deer 64262,frog 64263,bird 64264,ship 64265,ship 64266,frog 64267,frog 64268,horse 64269,frog 64270,cat 64271,ship 64272,ship 64273,airplane 64274,bird 64275,automobile 64276,cat 64277,horse 64278,dog 64279,deer 64280,dog 64281,frog 64282,cat 64283,airplane 64284,frog 64285,automobile 64286,ship 64287,bird 64288,bird 64289,automobile 64290,cat 64291,automobile 64292,deer 64293,horse 64294,frog 64295,horse 64296,cat 64297,truck 64298,dog 64299,horse 64300,dog 64301,automobile 64302,dog 64303,cat 64304,frog 64305,ship 64306,ship 64307,dog 64308,ship 64309,cat 64310,airplane 64311,dog 64312,deer 64313,truck 64314,horse 64315,cat 64316,horse 64317,bird 64318,horse 64319,deer 64320,bird 64321,automobile 64322,deer 64323,cat 64324,dog 64325,ship 64326,frog 64327,dog 64328,dog 64329,deer 64330,horse 64331,cat 64332,truck 64333,ship 64334,automobile 64335,dog 64336,deer 64337,cat 64338,ship 64339,cat 64340,cat 64341,deer 64342,deer 64343,automobile 64344,bird 64345,airplane 64346,frog 64347,cat 64348,deer 64349,ship 64350,bird 64351,automobile 64352,deer 64353,bird 64354,frog 64355,frog 64356,horse 64357,horse 64358,bird 64359,truck 64360,frog 64361,truck 64362,automobile 64363,dog 64364,bird 64365,cat 64366,frog 64367,truck 64368,deer 64369,cat 64370,cat 64371,truck 64372,cat 64373,truck 64374,horse 64375,truck 64376,cat 64377,cat 64378,truck 64379,dog 64380,ship 64381,bird 64382,dog 64383,cat 64384,truck 64385,bird 64386,cat 64387,bird 64388,ship 64389,cat 64390,cat 64391,ship 64392,horse 64393,frog 64394,ship 64395,cat 64396,airplane 64397,deer 64398,frog 64399,truck 64400,airplane 64401,cat 64402,airplane 64403,cat 64404,frog 64405,automobile 64406,deer 64407,cat 64408,dog 64409,frog 64410,ship 64411,automobile 64412,cat 64413,frog 64414,deer 64415,frog 64416,frog 64417,truck 64418,truck 64419,bird 64420,bird 64421,deer 64422,dog 64423,horse 64424,cat 64425,truck 64426,automobile 64427,dog 64428,airplane 64429,deer 64430,dog 64431,airplane 64432,frog 64433,deer 64434,airplane 64435,bird 64436,truck 64437,horse 64438,horse 64439,truck 64440,frog 64441,cat 64442,truck 64443,airplane 64444,dog 64445,ship 64446,horse 64447,truck 64448,automobile 64449,truck 64450,bird 64451,frog 64452,deer 64453,truck 64454,cat 64455,horse 64456,deer 64457,ship 64458,truck 64459,truck 64460,frog 64461,frog 64462,truck 64463,ship 64464,cat 64465,horse 64466,ship 64467,frog 64468,automobile 64469,frog 64470,deer 64471,automobile 64472,bird 64473,cat 64474,bird 64475,ship 64476,frog 64477,frog 64478,ship 64479,airplane 64480,horse 64481,automobile 64482,airplane 64483,bird 64484,horse 64485,frog 64486,truck 64487,horse 64488,deer 64489,dog 64490,horse 64491,frog 64492,horse 64493,deer 64494,ship 64495,frog 64496,horse 64497,dog 64498,frog 64499,horse 64500,automobile 64501,cat 64502,deer 64503,bird 64504,deer 64505,automobile 64506,bird 64507,airplane 64508,cat 64509,truck 64510,dog 64511,bird 64512,automobile 64513,bird 64514,dog 64515,automobile 64516,dog 64517,cat 64518,deer 64519,automobile 64520,automobile 64521,cat 64522,automobile 64523,automobile 64524,deer 64525,dog 64526,automobile 64527,dog 64528,deer 64529,frog 64530,truck 64531,automobile 64532,airplane 64533,bird 64534,ship 64535,horse 64536,truck 64537,horse 64538,horse 64539,frog 64540,bird 64541,deer 64542,deer 64543,frog 64544,bird 64545,dog 64546,cat 64547,cat 64548,dog 64549,deer 64550,dog 64551,ship 64552,dog 64553,horse 64554,frog 64555,ship 64556,truck 64557,dog 64558,deer 64559,airplane 64560,dog 64561,truck 64562,ship 64563,deer 64564,horse 64565,bird 64566,frog 64567,airplane 64568,airplane 64569,frog 64570,deer 64571,cat 64572,ship 64573,airplane 64574,cat 64575,deer 64576,ship 64577,dog 64578,cat 64579,bird 64580,frog 64581,truck 64582,automobile 64583,cat 64584,cat 64585,horse 64586,ship 64587,truck 64588,horse 64589,frog 64590,frog 64591,airplane 64592,deer 64593,horse 64594,ship 64595,automobile 64596,airplane 64597,deer 64598,truck 64599,automobile 64600,deer 64601,dog 64602,airplane 64603,bird 64604,horse 64605,bird 64606,truck 64607,deer 64608,dog 64609,truck 64610,ship 64611,airplane 64612,frog 64613,frog 64614,ship 64615,truck 64616,dog 64617,frog 64618,bird 64619,airplane 64620,deer 64621,truck 64622,dog 64623,truck 64624,truck 64625,dog 64626,horse 64627,dog 64628,deer 64629,dog 64630,automobile 64631,dog 64632,truck 64633,dog 64634,truck 64635,dog 64636,truck 64637,ship 64638,ship 64639,automobile 64640,cat 64641,deer 64642,airplane 64643,cat 64644,cat 64645,cat 64646,airplane 64647,automobile 64648,airplane 64649,bird 64650,truck 64651,frog 64652,deer 64653,bird 64654,frog 64655,cat 64656,bird 64657,airplane 64658,bird 64659,cat 64660,truck 64661,frog 64662,airplane 64663,truck 64664,horse 64665,truck 64666,cat 64667,automobile 64668,deer 64669,cat 64670,airplane 64671,cat 64672,airplane 64673,horse 64674,dog 64675,dog 64676,automobile 64677,ship 64678,frog 64679,truck 64680,truck 64681,frog 64682,cat 64683,truck 64684,automobile 64685,frog 64686,deer 64687,airplane 64688,truck 64689,airplane 64690,truck 64691,dog 64692,dog 64693,deer 64694,deer 64695,deer 64696,bird 64697,deer 64698,automobile 64699,horse 64700,dog 64701,airplane 64702,cat 64703,truck 64704,horse 64705,cat 64706,bird 64707,dog 64708,cat 64709,bird 64710,deer 64711,cat 64712,automobile 64713,truck 64714,bird 64715,deer 64716,automobile 64717,frog 64718,airplane 64719,bird 64720,frog 64721,dog 64722,bird 64723,ship 64724,deer 64725,bird 64726,cat 64727,ship 64728,bird 64729,frog 64730,ship 64731,deer 64732,dog 64733,automobile 64734,bird 64735,bird 64736,deer 64737,deer 64738,bird 64739,horse 64740,ship 64741,bird 64742,truck 64743,frog 64744,ship 64745,truck 64746,automobile 64747,dog 64748,truck 64749,horse 64750,cat 64751,dog 64752,horse 64753,airplane 64754,frog 64755,deer 64756,truck 64757,truck 64758,ship 64759,frog 64760,truck 64761,frog 64762,truck 64763,cat 64764,bird 64765,frog 64766,airplane 64767,automobile 64768,cat 64769,ship 64770,ship 64771,bird 64772,cat 64773,frog 64774,truck 64775,deer 64776,deer 64777,deer 64778,deer 64779,horse 64780,ship 64781,bird 64782,deer 64783,horse 64784,bird 64785,horse 64786,horse 64787,horse 64788,frog 64789,automobile 64790,automobile 64791,frog 64792,ship 64793,ship 64794,airplane 64795,bird 64796,airplane 64797,dog 64798,deer 64799,dog 64800,frog 64801,deer 64802,horse 64803,cat 64804,airplane 64805,frog 64806,airplane 64807,cat 64808,frog 64809,frog 64810,deer 64811,deer 64812,horse 64813,cat 64814,truck 64815,airplane 64816,airplane 64817,horse 64818,truck 64819,bird 64820,automobile 64821,cat 64822,horse 64823,horse 64824,frog 64825,horse 64826,cat 64827,bird 64828,frog 64829,dog 64830,airplane 64831,bird 64832,ship 64833,truck 64834,ship 64835,bird 64836,cat 64837,frog 64838,airplane 64839,bird 64840,airplane 64841,cat 64842,deer 64843,automobile 64844,horse 64845,bird 64846,deer 64847,deer 64848,frog 64849,cat 64850,airplane 64851,horse 64852,ship 64853,dog 64854,airplane 64855,deer 64856,horse 64857,dog 64858,cat 64859,cat 64860,cat 64861,deer 64862,deer 64863,deer 64864,airplane 64865,truck 64866,frog 64867,deer 64868,deer 64869,deer 64870,airplane 64871,horse 64872,ship 64873,ship 64874,airplane 64875,frog 64876,deer 64877,cat 64878,ship 64879,airplane 64880,ship 64881,deer 64882,cat 64883,automobile 64884,frog 64885,frog 64886,frog 64887,dog 64888,deer 64889,ship 64890,bird 64891,cat 64892,automobile 64893,airplane 64894,cat 64895,truck 64896,truck 64897,airplane 64898,automobile 64899,horse 64900,cat 64901,airplane 64902,ship 64903,dog 64904,cat 64905,deer 64906,deer 64907,truck 64908,dog 64909,ship 64910,frog 64911,frog 64912,dog 64913,bird 64914,deer 64915,frog 64916,horse 64917,frog 64918,bird 64919,deer 64920,truck 64921,cat 64922,frog 64923,bird 64924,airplane 64925,ship 64926,deer 64927,frog 64928,deer 64929,bird 64930,automobile 64931,frog 64932,automobile 64933,automobile 64934,cat 64935,ship 64936,frog 64937,cat 64938,frog 64939,automobile 64940,truck 64941,dog 64942,frog 64943,truck 64944,horse 64945,dog 64946,ship 64947,truck 64948,cat 64949,cat 64950,horse 64951,bird 64952,cat 64953,airplane 64954,frog 64955,automobile 64956,frog 64957,cat 64958,truck 64959,frog 64960,truck 64961,horse 64962,cat 64963,ship 64964,deer 64965,truck 64966,ship 64967,automobile 64968,deer 64969,airplane 64970,automobile 64971,deer 64972,cat 64973,truck 64974,horse 64975,airplane 64976,dog 64977,bird 64978,cat 64979,bird 64980,frog 64981,frog 64982,horse 64983,dog 64984,deer 64985,bird 64986,dog 64987,horse 64988,airplane 64989,deer 64990,frog 64991,bird 64992,bird 64993,automobile 64994,deer 64995,airplane 64996,airplane 64997,dog 64998,frog 64999,deer 65000,cat 65001,airplane 65002,deer 65003,dog 65004,bird 65005,truck 65006,cat 65007,dog 65008,frog 65009,dog 65010,automobile 65011,cat 65012,ship 65013,dog 65014,dog 65015,cat 65016,truck 65017,horse 65018,airplane 65019,deer 65020,bird 65021,horse 65022,truck 65023,bird 65024,horse 65025,airplane 65026,ship 65027,airplane 65028,frog 65029,airplane 65030,deer 65031,frog 65032,frog 65033,airplane 65034,frog 65035,truck 65036,automobile 65037,horse 65038,cat 65039,truck 65040,frog 65041,truck 65042,cat 65043,cat 65044,deer 65045,cat 65046,automobile 65047,truck 65048,automobile 65049,cat 65050,deer 65051,cat 65052,deer 65053,horse 65054,automobile 65055,frog 65056,horse 65057,deer 65058,ship 65059,dog 65060,ship 65061,automobile 65062,bird 65063,airplane 65064,frog 65065,ship 65066,dog 65067,dog 65068,cat 65069,truck 65070,deer 65071,horse 65072,airplane 65073,bird 65074,bird 65075,deer 65076,cat 65077,dog 65078,deer 65079,frog 65080,dog 65081,airplane 65082,deer 65083,frog 65084,truck 65085,frog 65086,frog 65087,horse 65088,truck 65089,ship 65090,ship 65091,bird 65092,dog 65093,deer 65094,automobile 65095,truck 65096,horse 65097,bird 65098,frog 65099,truck 65100,truck 65101,horse 65102,cat 65103,truck 65104,airplane 65105,airplane 65106,bird 65107,deer 65108,automobile 65109,deer 65110,airplane 65111,airplane 65112,bird 65113,deer 65114,ship 65115,dog 65116,automobile 65117,horse 65118,truck 65119,bird 65120,airplane 65121,airplane 65122,bird 65123,automobile 65124,automobile 65125,cat 65126,bird 65127,bird 65128,frog 65129,truck 65130,truck 65131,frog 65132,cat 65133,dog 65134,cat 65135,automobile 65136,cat 65137,airplane 65138,horse 65139,ship 65140,truck 65141,airplane 65142,automobile 65143,automobile 65144,horse 65145,deer 65146,truck 65147,automobile 65148,frog 65149,cat 65150,airplane 65151,automobile 65152,frog 65153,truck 65154,bird 65155,deer 65156,bird 65157,frog 65158,deer 65159,deer 65160,airplane 65161,truck 65162,frog 65163,ship 65164,ship 65165,airplane 65166,cat 65167,frog 65168,horse 65169,deer 65170,cat 65171,airplane 65172,frog 65173,dog 65174,truck 65175,bird 65176,cat 65177,horse 65178,ship 65179,dog 65180,frog 65181,deer 65182,automobile 65183,frog 65184,airplane 65185,automobile 65186,truck 65187,dog 65188,bird 65189,frog 65190,deer 65191,dog 65192,bird 65193,deer 65194,automobile 65195,cat 65196,ship 65197,dog 65198,dog 65199,deer 65200,dog 65201,automobile 65202,horse 65203,deer 65204,frog 65205,frog 65206,cat 65207,bird 65208,dog 65209,automobile 65210,cat 65211,cat 65212,horse 65213,cat 65214,horse 65215,automobile 65216,cat 65217,frog 65218,dog 65219,automobile 65220,airplane 65221,dog 65222,deer 65223,automobile 65224,frog 65225,cat 65226,airplane 65227,cat 65228,automobile 65229,horse 65230,ship 65231,airplane 65232,deer 65233,dog 65234,frog 65235,airplane 65236,dog 65237,deer 65238,bird 65239,dog 65240,cat 65241,cat 65242,frog 65243,deer 65244,horse 65245,ship 65246,dog 65247,bird 65248,truck 65249,automobile 65250,frog 65251,truck 65252,deer 65253,cat 65254,horse 65255,deer 65256,deer 65257,cat 65258,deer 65259,ship 65260,horse 65261,airplane 65262,horse 65263,dog 65264,bird 65265,deer 65266,deer 65267,ship 65268,automobile 65269,horse 65270,horse 65271,deer 65272,airplane 65273,deer 65274,dog 65275,bird 65276,cat 65277,bird 65278,dog 65279,airplane 65280,horse 65281,frog 65282,bird 65283,dog 65284,airplane 65285,deer 65286,horse 65287,airplane 65288,dog 65289,bird 65290,frog 65291,automobile 65292,dog 65293,deer 65294,cat 65295,cat 65296,airplane 65297,truck 65298,airplane 65299,ship 65300,horse 65301,airplane 65302,dog 65303,cat 65304,truck 65305,truck 65306,bird 65307,truck 65308,horse 65309,frog 65310,ship 65311,horse 65312,frog 65313,frog 65314,horse 65315,cat 65316,automobile 65317,truck 65318,deer 65319,cat 65320,frog 65321,horse 65322,ship 65323,truck 65324,dog 65325,ship 65326,cat 65327,dog 65328,truck 65329,automobile 65330,cat 65331,bird 65332,automobile 65333,automobile 65334,deer 65335,bird 65336,dog 65337,cat 65338,cat 65339,automobile 65340,airplane 65341,horse 65342,dog 65343,bird 65344,horse 65345,automobile 65346,airplane 65347,ship 65348,airplane 65349,deer 65350,cat 65351,horse 65352,frog 65353,dog 65354,frog 65355,cat 65356,truck 65357,frog 65358,cat 65359,bird 65360,cat 65361,horse 65362,cat 65363,dog 65364,truck 65365,frog 65366,frog 65367,truck 65368,cat 65369,bird 65370,dog 65371,airplane 65372,dog 65373,cat 65374,horse 65375,truck 65376,automobile 65377,airplane 65378,dog 65379,cat 65380,horse 65381,frog 65382,dog 65383,dog 65384,cat 65385,horse 65386,frog 65387,cat 65388,ship 65389,automobile 65390,automobile 65391,deer 65392,bird 65393,cat 65394,horse 65395,deer 65396,deer 65397,frog 65398,dog 65399,deer 65400,ship 65401,deer 65402,ship 65403,deer 65404,bird 65405,truck 65406,airplane 65407,automobile 65408,frog 65409,bird 65410,bird 65411,truck 65412,deer 65413,airplane 65414,horse 65415,deer 65416,automobile 65417,cat 65418,automobile 65419,truck 65420,airplane 65421,cat 65422,dog 65423,cat 65424,airplane 65425,truck 65426,cat 65427,ship 65428,cat 65429,horse 65430,truck 65431,automobile 65432,dog 65433,bird 65434,bird 65435,truck 65436,truck 65437,truck 65438,airplane 65439,bird 65440,automobile 65441,cat 65442,deer 65443,automobile 65444,automobile 65445,deer 65446,cat 65447,horse 65448,cat 65449,ship 65450,frog 65451,truck 65452,cat 65453,frog 65454,airplane 65455,deer 65456,ship 65457,horse 65458,ship 65459,frog 65460,horse 65461,truck 65462,truck 65463,ship 65464,deer 65465,ship 65466,ship 65467,frog 65468,bird 65469,frog 65470,dog 65471,horse 65472,bird 65473,frog 65474,dog 65475,horse 65476,frog 65477,airplane 65478,ship 65479,airplane 65480,dog 65481,deer 65482,cat 65483,frog 65484,automobile 65485,cat 65486,automobile 65487,automobile 65488,dog 65489,cat 65490,ship 65491,deer 65492,deer 65493,frog 65494,airplane 65495,truck 65496,horse 65497,ship 65498,bird 65499,cat 65500,deer 65501,ship 65502,automobile 65503,airplane 65504,frog 65505,truck 65506,frog 65507,horse 65508,automobile 65509,deer 65510,cat 65511,horse 65512,deer 65513,airplane 65514,horse 65515,airplane 65516,horse 65517,truck 65518,deer 65519,truck 65520,bird 65521,ship 65522,ship 65523,ship 65524,frog 65525,deer 65526,ship 65527,bird 65528,deer 65529,automobile 65530,airplane 65531,ship 65532,horse 65533,automobile 65534,horse 65535,bird 65536,ship 65537,automobile 65538,deer 65539,dog 65540,bird 65541,airplane 65542,truck 65543,truck 65544,deer 65545,airplane 65546,deer 65547,bird 65548,ship 65549,ship 65550,frog 65551,cat 65552,dog 65553,airplane 65554,cat 65555,truck 65556,dog 65557,bird 65558,deer 65559,bird 65560,horse 65561,horse 65562,airplane 65563,deer 65564,airplane 65565,airplane 65566,automobile 65567,horse 65568,deer 65569,cat 65570,automobile 65571,truck 65572,ship 65573,deer 65574,airplane 65575,cat 65576,automobile 65577,frog 65578,deer 65579,deer 65580,dog 65581,bird 65582,automobile 65583,frog 65584,deer 65585,truck 65586,deer 65587,horse 65588,automobile 65589,cat 65590,bird 65591,truck 65592,deer 65593,deer 65594,bird 65595,truck 65596,dog 65597,deer 65598,deer 65599,deer 65600,deer 65601,bird 65602,frog 65603,ship 65604,ship 65605,deer 65606,horse 65607,airplane 65608,cat 65609,frog 65610,dog 65611,deer 65612,airplane 65613,airplane 65614,bird 65615,horse 65616,dog 65617,cat 65618,horse 65619,automobile 65620,airplane 65621,cat 65622,airplane 65623,dog 65624,deer 65625,cat 65626,airplane 65627,automobile 65628,automobile 65629,ship 65630,horse 65631,cat 65632,automobile 65633,horse 65634,cat 65635,ship 65636,automobile 65637,cat 65638,cat 65639,deer 65640,airplane 65641,bird 65642,frog 65643,frog 65644,airplane 65645,frog 65646,deer 65647,bird 65648,frog 65649,cat 65650,deer 65651,airplane 65652,automobile 65653,automobile 65654,horse 65655,truck 65656,cat 65657,frog 65658,horse 65659,airplane 65660,ship 65661,truck 65662,ship 65663,cat 65664,dog 65665,bird 65666,dog 65667,truck 65668,automobile 65669,deer 65670,cat 65671,bird 65672,airplane 65673,cat 65674,deer 65675,dog 65676,automobile 65677,airplane 65678,horse 65679,airplane 65680,horse 65681,truck 65682,cat 65683,truck 65684,cat 65685,automobile 65686,truck 65687,automobile 65688,deer 65689,frog 65690,horse 65691,horse 65692,cat 65693,ship 65694,frog 65695,deer 65696,bird 65697,bird 65698,deer 65699,horse 65700,horse 65701,horse 65702,airplane 65703,horse 65704,truck 65705,ship 65706,automobile 65707,airplane 65708,truck 65709,frog 65710,cat 65711,dog 65712,ship 65713,deer 65714,airplane 65715,deer 65716,truck 65717,cat 65718,frog 65719,cat 65720,cat 65721,automobile 65722,deer 65723,frog 65724,ship 65725,automobile 65726,automobile 65727,horse 65728,frog 65729,deer 65730,bird 65731,truck 65732,dog 65733,airplane 65734,deer 65735,automobile 65736,horse 65737,automobile 65738,dog 65739,deer 65740,automobile 65741,ship 65742,airplane 65743,cat 65744,airplane 65745,horse 65746,bird 65747,deer 65748,ship 65749,deer 65750,dog 65751,deer 65752,bird 65753,bird 65754,dog 65755,bird 65756,frog 65757,dog 65758,horse 65759,automobile 65760,ship 65761,bird 65762,horse 65763,dog 65764,cat 65765,dog 65766,bird 65767,bird 65768,bird 65769,airplane 65770,frog 65771,deer 65772,bird 65773,automobile 65774,deer 65775,frog 65776,automobile 65777,automobile 65778,cat 65779,truck 65780,deer 65781,cat 65782,horse 65783,deer 65784,truck 65785,cat 65786,truck 65787,dog 65788,truck 65789,truck 65790,airplane 65791,automobile 65792,dog 65793,frog 65794,dog 65795,bird 65796,automobile 65797,bird 65798,automobile 65799,deer 65800,airplane 65801,bird 65802,cat 65803,cat 65804,horse 65805,cat 65806,cat 65807,cat 65808,automobile 65809,horse 65810,truck 65811,deer 65812,ship 65813,ship 65814,ship 65815,cat 65816,deer 65817,bird 65818,bird 65819,automobile 65820,truck 65821,truck 65822,bird 65823,airplane 65824,cat 65825,dog 65826,dog 65827,deer 65828,truck 65829,horse 65830,automobile 65831,dog 65832,horse 65833,ship 65834,ship 65835,deer 65836,deer 65837,bird 65838,frog 65839,ship 65840,cat 65841,cat 65842,automobile 65843,deer 65844,bird 65845,dog 65846,truck 65847,truck 65848,ship 65849,deer 65850,deer 65851,deer 65852,deer 65853,cat 65854,frog 65855,frog 65856,ship 65857,horse 65858,ship 65859,cat 65860,bird 65861,truck 65862,ship 65863,truck 65864,truck 65865,deer 65866,deer 65867,ship 65868,horse 65869,cat 65870,cat 65871,airplane 65872,ship 65873,truck 65874,frog 65875,truck 65876,frog 65877,truck 65878,horse 65879,truck 65880,ship 65881,dog 65882,dog 65883,airplane 65884,cat 65885,cat 65886,deer 65887,dog 65888,horse 65889,deer 65890,airplane 65891,frog 65892,horse 65893,airplane 65894,truck 65895,truck 65896,deer 65897,automobile 65898,ship 65899,cat 65900,dog 65901,frog 65902,bird 65903,truck 65904,truck 65905,frog 65906,truck 65907,deer 65908,dog 65909,deer 65910,truck 65911,cat 65912,dog 65913,deer 65914,frog 65915,deer 65916,automobile 65917,cat 65918,dog 65919,cat 65920,ship 65921,bird 65922,deer 65923,airplane 65924,cat 65925,dog 65926,dog 65927,frog 65928,truck 65929,deer 65930,cat 65931,cat 65932,cat 65933,cat 65934,truck 65935,airplane 65936,ship 65937,truck 65938,bird 65939,deer 65940,bird 65941,deer 65942,cat 65943,truck 65944,cat 65945,ship 65946,dog 65947,truck 65948,airplane 65949,ship 65950,truck 65951,frog 65952,bird 65953,deer 65954,ship 65955,deer 65956,airplane 65957,bird 65958,airplane 65959,dog 65960,cat 65961,deer 65962,dog 65963,cat 65964,horse 65965,truck 65966,frog 65967,ship 65968,truck 65969,deer 65970,ship 65971,frog 65972,dog 65973,ship 65974,dog 65975,frog 65976,deer 65977,cat 65978,deer 65979,bird 65980,deer 65981,dog 65982,cat 65983,deer 65984,bird 65985,automobile 65986,horse 65987,automobile 65988,cat 65989,frog 65990,ship 65991,dog 65992,frog 65993,frog 65994,cat 65995,horse 65996,cat 65997,truck 65998,dog 65999,truck 66000,truck 66001,dog 66002,ship 66003,bird 66004,bird 66005,airplane 66006,cat 66007,automobile 66008,frog 66009,cat 66010,dog 66011,bird 66012,truck 66013,cat 66014,frog 66015,horse 66016,airplane 66017,airplane 66018,bird 66019,airplane 66020,ship 66021,dog 66022,airplane 66023,truck 66024,deer 66025,frog 66026,deer 66027,bird 66028,bird 66029,truck 66030,frog 66031,bird 66032,ship 66033,dog 66034,ship 66035,cat 66036,airplane 66037,automobile 66038,cat 66039,deer 66040,deer 66041,horse 66042,automobile 66043,dog 66044,dog 66045,ship 66046,deer 66047,truck 66048,deer 66049,bird 66050,dog 66051,ship 66052,horse 66053,truck 66054,horse 66055,cat 66056,ship 66057,deer 66058,deer 66059,dog 66060,horse 66061,horse 66062,cat 66063,deer 66064,automobile 66065,bird 66066,cat 66067,ship 66068,airplane 66069,airplane 66070,frog 66071,truck 66072,horse 66073,dog 66074,automobile 66075,cat 66076,automobile 66077,horse 66078,frog 66079,cat 66080,ship 66081,dog 66082,horse 66083,dog 66084,horse 66085,airplane 66086,deer 66087,truck 66088,horse 66089,frog 66090,automobile 66091,dog 66092,deer 66093,bird 66094,dog 66095,bird 66096,cat 66097,frog 66098,truck 66099,truck 66100,dog 66101,truck 66102,airplane 66103,deer 66104,deer 66105,cat 66106,truck 66107,ship 66108,truck 66109,dog 66110,bird 66111,cat 66112,cat 66113,bird 66114,truck 66115,dog 66116,cat 66117,bird 66118,airplane 66119,frog 66120,automobile 66121,bird 66122,bird 66123,truck 66124,deer 66125,horse 66126,horse 66127,ship 66128,dog 66129,deer 66130,automobile 66131,cat 66132,horse 66133,truck 66134,airplane 66135,truck 66136,airplane 66137,bird 66138,automobile 66139,frog 66140,horse 66141,bird 66142,automobile 66143,airplane 66144,bird 66145,dog 66146,airplane 66147,horse 66148,bird 66149,airplane 66150,deer 66151,airplane 66152,frog 66153,cat 66154,truck 66155,cat 66156,frog 66157,deer 66158,deer 66159,bird 66160,frog 66161,cat 66162,airplane 66163,cat 66164,frog 66165,bird 66166,cat 66167,dog 66168,frog 66169,cat 66170,frog 66171,deer 66172,horse 66173,deer 66174,dog 66175,frog 66176,deer 66177,frog 66178,cat 66179,truck 66180,cat 66181,ship 66182,truck 66183,cat 66184,automobile 66185,ship 66186,truck 66187,airplane 66188,truck 66189,deer 66190,horse 66191,bird 66192,cat 66193,frog 66194,automobile 66195,dog 66196,cat 66197,cat 66198,deer 66199,truck 66200,deer 66201,cat 66202,truck 66203,deer 66204,horse 66205,truck 66206,deer 66207,frog 66208,deer 66209,horse 66210,bird 66211,horse 66212,automobile 66213,deer 66214,truck 66215,horse 66216,cat 66217,deer 66218,truck 66219,dog 66220,cat 66221,deer 66222,truck 66223,horse 66224,cat 66225,cat 66226,bird 66227,frog 66228,deer 66229,cat 66230,frog 66231,truck 66232,ship 66233,bird 66234,cat 66235,frog 66236,frog 66237,ship 66238,automobile 66239,truck 66240,dog 66241,cat 66242,deer 66243,truck 66244,cat 66245,ship 66246,airplane 66247,cat 66248,airplane 66249,deer 66250,airplane 66251,deer 66252,dog 66253,cat 66254,cat 66255,deer 66256,horse 66257,automobile 66258,ship 66259,bird 66260,deer 66261,deer 66262,cat 66263,truck 66264,cat 66265,truck 66266,deer 66267,frog 66268,airplane 66269,dog 66270,cat 66271,truck 66272,horse 66273,airplane 66274,airplane 66275,frog 66276,frog 66277,truck 66278,dog 66279,airplane 66280,airplane 66281,deer 66282,cat 66283,dog 66284,ship 66285,dog 66286,deer 66287,bird 66288,deer 66289,cat 66290,frog 66291,frog 66292,horse 66293,ship 66294,airplane 66295,frog 66296,airplane 66297,dog 66298,truck 66299,deer 66300,bird 66301,dog 66302,horse 66303,airplane 66304,bird 66305,bird 66306,bird 66307,deer 66308,airplane 66309,bird 66310,deer 66311,cat 66312,cat 66313,deer 66314,automobile 66315,deer 66316,deer 66317,dog 66318,dog 66319,deer 66320,ship 66321,dog 66322,cat 66323,truck 66324,deer 66325,airplane 66326,dog 66327,frog 66328,dog 66329,airplane 66330,deer 66331,airplane 66332,bird 66333,frog 66334,airplane 66335,truck 66336,ship 66337,cat 66338,dog 66339,ship 66340,cat 66341,dog 66342,deer 66343,horse 66344,cat 66345,dog 66346,frog 66347,deer 66348,bird 66349,frog 66350,truck 66351,frog 66352,deer 66353,horse 66354,horse 66355,airplane 66356,deer 66357,cat 66358,airplane 66359,dog 66360,dog 66361,ship 66362,deer 66363,cat 66364,bird 66365,ship 66366,frog 66367,truck 66368,deer 66369,truck 66370,deer 66371,automobile 66372,dog 66373,dog 66374,airplane 66375,automobile 66376,horse 66377,truck 66378,bird 66379,horse 66380,cat 66381,dog 66382,horse 66383,cat 66384,horse 66385,truck 66386,deer 66387,deer 66388,frog 66389,truck 66390,cat 66391,frog 66392,airplane 66393,frog 66394,automobile 66395,frog 66396,airplane 66397,cat 66398,frog 66399,bird 66400,frog 66401,bird 66402,dog 66403,truck 66404,deer 66405,dog 66406,airplane 66407,airplane 66408,ship 66409,bird 66410,cat 66411,bird 66412,truck 66413,truck 66414,truck 66415,truck 66416,ship 66417,deer 66418,truck 66419,dog 66420,deer 66421,bird 66422,frog 66423,dog 66424,bird 66425,horse 66426,cat 66427,horse 66428,ship 66429,dog 66430,airplane 66431,dog 66432,ship 66433,ship 66434,dog 66435,horse 66436,deer 66437,airplane 66438,frog 66439,automobile 66440,truck 66441,truck 66442,deer 66443,ship 66444,automobile 66445,horse 66446,ship 66447,ship 66448,deer 66449,deer 66450,ship 66451,automobile 66452,cat 66453,cat 66454,automobile 66455,dog 66456,deer 66457,ship 66458,deer 66459,automobile 66460,bird 66461,airplane 66462,deer 66463,automobile 66464,airplane 66465,horse 66466,frog 66467,truck 66468,frog 66469,horse 66470,airplane 66471,cat 66472,ship 66473,horse 66474,ship 66475,bird 66476,automobile 66477,bird 66478,ship 66479,horse 66480,cat 66481,deer 66482,airplane 66483,truck 66484,ship 66485,dog 66486,frog 66487,bird 66488,ship 66489,cat 66490,dog 66491,cat 66492,airplane 66493,cat 66494,bird 66495,frog 66496,deer 66497,ship 66498,automobile 66499,airplane 66500,automobile 66501,bird 66502,cat 66503,truck 66504,deer 66505,ship 66506,ship 66507,deer 66508,bird 66509,automobile 66510,horse 66511,airplane 66512,dog 66513,horse 66514,deer 66515,cat 66516,cat 66517,ship 66518,horse 66519,ship 66520,horse 66521,horse 66522,automobile 66523,deer 66524,airplane 66525,cat 66526,ship 66527,bird 66528,deer 66529,dog 66530,dog 66531,automobile 66532,automobile 66533,horse 66534,cat 66535,airplane 66536,cat 66537,cat 66538,automobile 66539,ship 66540,bird 66541,airplane 66542,horse 66543,dog 66544,truck 66545,truck 66546,frog 66547,automobile 66548,deer 66549,deer 66550,dog 66551,bird 66552,horse 66553,cat 66554,dog 66555,ship 66556,horse 66557,dog 66558,bird 66559,dog 66560,truck 66561,automobile 66562,deer 66563,cat 66564,frog 66565,deer 66566,truck 66567,airplane 66568,dog 66569,deer 66570,ship 66571,truck 66572,frog 66573,cat 66574,cat 66575,truck 66576,horse 66577,dog 66578,frog 66579,horse 66580,dog 66581,airplane 66582,airplane 66583,horse 66584,deer 66585,automobile 66586,truck 66587,deer 66588,truck 66589,deer 66590,truck 66591,cat 66592,bird 66593,horse 66594,bird 66595,deer 66596,deer 66597,frog 66598,ship 66599,horse 66600,bird 66601,deer 66602,airplane 66603,automobile 66604,cat 66605,deer 66606,bird 66607,truck 66608,dog 66609,ship 66610,deer 66611,horse 66612,cat 66613,truck 66614,cat 66615,frog 66616,horse 66617,dog 66618,dog 66619,airplane 66620,automobile 66621,horse 66622,ship 66623,frog 66624,automobile 66625,truck 66626,horse 66627,deer 66628,cat 66629,deer 66630,frog 66631,automobile 66632,frog 66633,airplane 66634,bird 66635,dog 66636,cat 66637,deer 66638,horse 66639,truck 66640,deer 66641,bird 66642,deer 66643,airplane 66644,bird 66645,horse 66646,truck 66647,bird 66648,frog 66649,cat 66650,horse 66651,dog 66652,dog 66653,horse 66654,ship 66655,bird 66656,frog 66657,airplane 66658,frog 66659,airplane 66660,airplane 66661,dog 66662,dog 66663,deer 66664,truck 66665,frog 66666,frog 66667,deer 66668,truck 66669,frog 66670,automobile 66671,airplane 66672,horse 66673,dog 66674,automobile 66675,cat 66676,frog 66677,truck 66678,dog 66679,frog 66680,dog 66681,airplane 66682,ship 66683,cat 66684,horse 66685,cat 66686,dog 66687,horse 66688,truck 66689,cat 66690,airplane 66691,truck 66692,deer 66693,airplane 66694,horse 66695,dog 66696,dog 66697,horse 66698,deer 66699,cat 66700,deer 66701,ship 66702,horse 66703,airplane 66704,cat 66705,airplane 66706,bird 66707,ship 66708,frog 66709,ship 66710,cat 66711,cat 66712,bird 66713,cat 66714,dog 66715,cat 66716,deer 66717,deer 66718,deer 66719,deer 66720,airplane 66721,deer 66722,horse 66723,truck 66724,ship 66725,frog 66726,frog 66727,airplane 66728,dog 66729,cat 66730,deer 66731,frog 66732,cat 66733,deer 66734,automobile 66735,cat 66736,deer 66737,truck 66738,deer 66739,horse 66740,truck 66741,frog 66742,deer 66743,truck 66744,cat 66745,cat 66746,deer 66747,frog 66748,cat 66749,cat 66750,deer 66751,truck 66752,deer 66753,dog 66754,dog 66755,frog 66756,deer 66757,airplane 66758,airplane 66759,bird 66760,horse 66761,airplane 66762,airplane 66763,cat 66764,ship 66765,ship 66766,ship 66767,airplane 66768,truck 66769,cat 66770,bird 66771,frog 66772,deer 66773,cat 66774,bird 66775,deer 66776,airplane 66777,dog 66778,frog 66779,cat 66780,horse 66781,bird 66782,truck 66783,dog 66784,dog 66785,truck 66786,airplane 66787,bird 66788,cat 66789,frog 66790,cat 66791,cat 66792,cat 66793,cat 66794,ship 66795,bird 66796,dog 66797,frog 66798,bird 66799,frog 66800,horse 66801,airplane 66802,frog 66803,truck 66804,horse 66805,truck 66806,horse 66807,horse 66808,frog 66809,truck 66810,horse 66811,airplane 66812,automobile 66813,dog 66814,airplane 66815,ship 66816,deer 66817,airplane 66818,frog 66819,cat 66820,ship 66821,frog 66822,cat 66823,deer 66824,deer 66825,deer 66826,ship 66827,dog 66828,cat 66829,automobile 66830,automobile 66831,cat 66832,dog 66833,truck 66834,frog 66835,deer 66836,deer 66837,deer 66838,ship 66839,bird 66840,dog 66841,deer 66842,ship 66843,ship 66844,frog 66845,ship 66846,horse 66847,frog 66848,frog 66849,truck 66850,automobile 66851,bird 66852,ship 66853,deer 66854,dog 66855,ship 66856,automobile 66857,ship 66858,cat 66859,cat 66860,deer 66861,cat 66862,frog 66863,dog 66864,bird 66865,truck 66866,automobile 66867,deer 66868,automobile 66869,ship 66870,ship 66871,dog 66872,deer 66873,deer 66874,horse 66875,frog 66876,dog 66877,cat 66878,cat 66879,deer 66880,automobile 66881,bird 66882,airplane 66883,deer 66884,truck 66885,ship 66886,bird 66887,airplane 66888,cat 66889,cat 66890,frog 66891,bird 66892,frog 66893,horse 66894,horse 66895,ship 66896,frog 66897,deer 66898,horse 66899,deer 66900,frog 66901,truck 66902,cat 66903,airplane 66904,deer 66905,deer 66906,truck 66907,frog 66908,truck 66909,truck 66910,automobile 66911,horse 66912,deer 66913,horse 66914,cat 66915,bird 66916,horse 66917,ship 66918,deer 66919,automobile 66920,deer 66921,dog 66922,deer 66923,ship 66924,cat 66925,airplane 66926,bird 66927,cat 66928,airplane 66929,bird 66930,dog 66931,airplane 66932,frog 66933,deer 66934,deer 66935,airplane 66936,truck 66937,cat 66938,cat 66939,deer 66940,truck 66941,airplane 66942,horse 66943,bird 66944,airplane 66945,bird 66946,deer 66947,cat 66948,cat 66949,frog 66950,cat 66951,truck 66952,ship 66953,dog 66954,ship 66955,truck 66956,bird 66957,cat 66958,horse 66959,horse 66960,dog 66961,automobile 66962,deer 66963,automobile 66964,cat 66965,ship 66966,deer 66967,cat 66968,airplane 66969,dog 66970,airplane 66971,deer 66972,dog 66973,bird 66974,cat 66975,cat 66976,automobile 66977,ship 66978,dog 66979,deer 66980,airplane 66981,bird 66982,truck 66983,airplane 66984,bird 66985,ship 66986,ship 66987,automobile 66988,automobile 66989,deer 66990,ship 66991,airplane 66992,deer 66993,dog 66994,dog 66995,frog 66996,truck 66997,cat 66998,frog 66999,deer 67000,dog 67001,deer 67002,truck 67003,ship 67004,dog 67005,cat 67006,horse 67007,automobile 67008,airplane 67009,dog 67010,truck 67011,airplane 67012,horse 67013,frog 67014,automobile 67015,truck 67016,airplane 67017,truck 67018,horse 67019,truck 67020,truck 67021,airplane 67022,bird 67023,bird 67024,airplane 67025,horse 67026,cat 67027,airplane 67028,airplane 67029,ship 67030,dog 67031,ship 67032,cat 67033,ship 67034,cat 67035,ship 67036,dog 67037,frog 67038,dog 67039,ship 67040,bird 67041,cat 67042,frog 67043,horse 67044,ship 67045,cat 67046,cat 67047,frog 67048,deer 67049,bird 67050,cat 67051,frog 67052,cat 67053,horse 67054,truck 67055,ship 67056,truck 67057,deer 67058,dog 67059,frog 67060,truck 67061,airplane 67062,frog 67063,ship 67064,dog 67065,horse 67066,dog 67067,bird 67068,deer 67069,bird 67070,cat 67071,dog 67072,horse 67073,ship 67074,deer 67075,truck 67076,deer 67077,horse 67078,deer 67079,deer 67080,cat 67081,dog 67082,truck 67083,frog 67084,frog 67085,dog 67086,airplane 67087,automobile 67088,frog 67089,frog 67090,truck 67091,airplane 67092,horse 67093,ship 67094,deer 67095,ship 67096,truck 67097,cat 67098,cat 67099,bird 67100,airplane 67101,deer 67102,airplane 67103,deer 67104,bird 67105,cat 67106,automobile 67107,airplane 67108,cat 67109,frog 67110,truck 67111,truck 67112,frog 67113,horse 67114,frog 67115,frog 67116,automobile 67117,automobile 67118,deer 67119,horse 67120,bird 67121,bird 67122,dog 67123,dog 67124,dog 67125,frog 67126,bird 67127,deer 67128,airplane 67129,automobile 67130,truck 67131,dog 67132,deer 67133,truck 67134,deer 67135,bird 67136,dog 67137,truck 67138,ship 67139,truck 67140,frog 67141,cat 67142,automobile 67143,truck 67144,frog 67145,dog 67146,automobile 67147,automobile 67148,deer 67149,truck 67150,automobile 67151,frog 67152,deer 67153,horse 67154,frog 67155,dog 67156,cat 67157,horse 67158,airplane 67159,automobile 67160,cat 67161,dog 67162,cat 67163,deer 67164,deer 67165,ship 67166,truck 67167,truck 67168,automobile 67169,ship 67170,airplane 67171,ship 67172,horse 67173,truck 67174,deer 67175,ship 67176,horse 67177,deer 67178,frog 67179,horse 67180,deer 67181,horse 67182,horse 67183,airplane 67184,ship 67185,airplane 67186,truck 67187,dog 67188,horse 67189,deer 67190,dog 67191,ship 67192,deer 67193,airplane 67194,cat 67195,bird 67196,frog 67197,frog 67198,dog 67199,cat 67200,dog 67201,deer 67202,frog 67203,frog 67204,deer 67205,cat 67206,horse 67207,dog 67208,frog 67209,frog 67210,frog 67211,automobile 67212,deer 67213,horse 67214,cat 67215,deer 67216,deer 67217,airplane 67218,bird 67219,deer 67220,dog 67221,cat 67222,automobile 67223,bird 67224,dog 67225,dog 67226,ship 67227,bird 67228,bird 67229,airplane 67230,dog 67231,truck 67232,cat 67233,deer 67234,dog 67235,ship 67236,truck 67237,airplane 67238,automobile 67239,deer 67240,deer 67241,deer 67242,horse 67243,frog 67244,deer 67245,bird 67246,ship 67247,deer 67248,truck 67249,horse 67250,deer 67251,airplane 67252,dog 67253,horse 67254,truck 67255,airplane 67256,automobile 67257,deer 67258,horse 67259,airplane 67260,frog 67261,automobile 67262,ship 67263,cat 67264,truck 67265,bird 67266,horse 67267,automobile 67268,airplane 67269,deer 67270,bird 67271,truck 67272,cat 67273,horse 67274,bird 67275,bird 67276,dog 67277,dog 67278,deer 67279,deer 67280,horse 67281,frog 67282,deer 67283,horse 67284,frog 67285,frog 67286,bird 67287,horse 67288,airplane 67289,dog 67290,horse 67291,truck 67292,cat 67293,bird 67294,horse 67295,ship 67296,frog 67297,truck 67298,truck 67299,horse 67300,frog 67301,dog 67302,frog 67303,automobile 67304,deer 67305,horse 67306,ship 67307,frog 67308,ship 67309,airplane 67310,frog 67311,truck 67312,frog 67313,airplane 67314,frog 67315,automobile 67316,cat 67317,ship 67318,cat 67319,truck 67320,truck 67321,airplane 67322,cat 67323,truck 67324,bird 67325,truck 67326,ship 67327,deer 67328,truck 67329,ship 67330,deer 67331,cat 67332,cat 67333,horse 67334,cat 67335,truck 67336,automobile 67337,truck 67338,deer 67339,horse 67340,airplane 67341,deer 67342,deer 67343,cat 67344,cat 67345,airplane 67346,dog 67347,horse 67348,frog 67349,deer 67350,horse 67351,ship 67352,dog 67353,cat 67354,deer 67355,bird 67356,frog 67357,truck 67358,airplane 67359,automobile 67360,automobile 67361,bird 67362,ship 67363,horse 67364,frog 67365,horse 67366,truck 67367,truck 67368,frog 67369,cat 67370,horse 67371,airplane 67372,frog 67373,horse 67374,dog 67375,airplane 67376,dog 67377,cat 67378,frog 67379,truck 67380,ship 67381,automobile 67382,frog 67383,deer 67384,ship 67385,airplane 67386,horse 67387,deer 67388,dog 67389,frog 67390,airplane 67391,ship 67392,ship 67393,ship 67394,deer 67395,cat 67396,frog 67397,frog 67398,automobile 67399,frog 67400,bird 67401,cat 67402,frog 67403,horse 67404,cat 67405,automobile 67406,truck 67407,airplane 67408,airplane 67409,automobile 67410,automobile 67411,cat 67412,ship 67413,deer 67414,frog 67415,dog 67416,truck 67417,bird 67418,deer 67419,horse 67420,airplane 67421,frog 67422,airplane 67423,cat 67424,automobile 67425,deer 67426,automobile 67427,truck 67428,horse 67429,cat 67430,bird 67431,horse 67432,airplane 67433,cat 67434,dog 67435,bird 67436,deer 67437,automobile 67438,automobile 67439,airplane 67440,airplane 67441,deer 67442,deer 67443,automobile 67444,automobile 67445,horse 67446,cat 67447,automobile 67448,truck 67449,frog 67450,deer 67451,airplane 67452,horse 67453,bird 67454,automobile 67455,ship 67456,bird 67457,cat 67458,cat 67459,deer 67460,horse 67461,automobile 67462,ship 67463,deer 67464,cat 67465,truck 67466,deer 67467,ship 67468,airplane 67469,deer 67470,ship 67471,truck 67472,horse 67473,airplane 67474,truck 67475,dog 67476,cat 67477,bird 67478,dog 67479,bird 67480,truck 67481,truck 67482,horse 67483,frog 67484,dog 67485,airplane 67486,truck 67487,cat 67488,bird 67489,dog 67490,ship 67491,frog 67492,automobile 67493,deer 67494,truck 67495,airplane 67496,deer 67497,frog 67498,cat 67499,deer 67500,ship 67501,bird 67502,deer 67503,deer 67504,bird 67505,horse 67506,airplane 67507,automobile 67508,automobile 67509,dog 67510,cat 67511,deer 67512,deer 67513,deer 67514,bird 67515,automobile 67516,deer 67517,automobile 67518,horse 67519,deer 67520,automobile 67521,truck 67522,deer 67523,bird 67524,ship 67525,bird 67526,frog 67527,automobile 67528,truck 67529,dog 67530,cat 67531,airplane 67532,dog 67533,truck 67534,dog 67535,dog 67536,dog 67537,automobile 67538,cat 67539,deer 67540,cat 67541,horse 67542,frog 67543,truck 67544,horse 67545,dog 67546,horse 67547,automobile 67548,ship 67549,truck 67550,cat 67551,airplane 67552,airplane 67553,truck 67554,deer 67555,frog 67556,dog 67557,frog 67558,automobile 67559,deer 67560,airplane 67561,ship 67562,cat 67563,deer 67564,deer 67565,automobile 67566,cat 67567,ship 67568,truck 67569,truck 67570,truck 67571,deer 67572,cat 67573,horse 67574,cat 67575,horse 67576,airplane 67577,airplane 67578,deer 67579,frog 67580,ship 67581,truck 67582,automobile 67583,cat 67584,ship 67585,horse 67586,frog 67587,bird 67588,airplane 67589,truck 67590,automobile 67591,automobile 67592,cat 67593,frog 67594,truck 67595,frog 67596,cat 67597,frog 67598,airplane 67599,deer 67600,airplane 67601,dog 67602,truck 67603,truck 67604,dog 67605,cat 67606,deer 67607,truck 67608,cat 67609,dog 67610,ship 67611,truck 67612,cat 67613,truck 67614,deer 67615,bird 67616,airplane 67617,bird 67618,cat 67619,automobile 67620,truck 67621,cat 67622,ship 67623,truck 67624,bird 67625,frog 67626,airplane 67627,ship 67628,deer 67629,airplane 67630,truck 67631,ship 67632,deer 67633,truck 67634,ship 67635,cat 67636,truck 67637,dog 67638,dog 67639,bird 67640,horse 67641,deer 67642,dog 67643,dog 67644,automobile 67645,ship 67646,dog 67647,dog 67648,bird 67649,deer 67650,deer 67651,truck 67652,bird 67653,bird 67654,horse 67655,deer 67656,deer 67657,deer 67658,frog 67659,deer 67660,truck 67661,deer 67662,airplane 67663,bird 67664,dog 67665,dog 67666,truck 67667,airplane 67668,airplane 67669,deer 67670,horse 67671,cat 67672,frog 67673,airplane 67674,bird 67675,dog 67676,frog 67677,ship 67678,deer 67679,truck 67680,cat 67681,automobile 67682,automobile 67683,frog 67684,horse 67685,bird 67686,bird 67687,horse 67688,horse 67689,deer 67690,horse 67691,automobile 67692,bird 67693,horse 67694,dog 67695,bird 67696,automobile 67697,ship 67698,deer 67699,frog 67700,dog 67701,dog 67702,deer 67703,airplane 67704,dog 67705,automobile 67706,frog 67707,deer 67708,truck 67709,truck 67710,horse 67711,deer 67712,cat 67713,cat 67714,deer 67715,automobile 67716,horse 67717,truck 67718,airplane 67719,dog 67720,deer 67721,ship 67722,dog 67723,bird 67724,cat 67725,dog 67726,airplane 67727,truck 67728,truck 67729,horse 67730,frog 67731,truck 67732,frog 67733,cat 67734,cat 67735,frog 67736,horse 67737,bird 67738,airplane 67739,dog 67740,automobile 67741,ship 67742,horse 67743,cat 67744,deer 67745,airplane 67746,bird 67747,frog 67748,cat 67749,frog 67750,frog 67751,truck 67752,truck 67753,ship 67754,cat 67755,ship 67756,cat 67757,frog 67758,truck 67759,horse 67760,truck 67761,dog 67762,frog 67763,ship 67764,ship 67765,airplane 67766,deer 67767,deer 67768,bird 67769,truck 67770,cat 67771,ship 67772,frog 67773,ship 67774,deer 67775,airplane 67776,truck 67777,horse 67778,bird 67779,deer 67780,cat 67781,frog 67782,horse 67783,dog 67784,ship 67785,deer 67786,ship 67787,deer 67788,deer 67789,cat 67790,deer 67791,truck 67792,ship 67793,ship 67794,automobile 67795,cat 67796,deer 67797,bird 67798,cat 67799,deer 67800,airplane 67801,cat 67802,cat 67803,deer 67804,horse 67805,horse 67806,horse 67807,automobile 67808,horse 67809,cat 67810,automobile 67811,ship 67812,deer 67813,cat 67814,deer 67815,truck 67816,truck 67817,dog 67818,frog 67819,cat 67820,deer 67821,horse 67822,automobile 67823,dog 67824,automobile 67825,dog 67826,airplane 67827,airplane 67828,ship 67829,horse 67830,dog 67831,dog 67832,cat 67833,horse 67834,ship 67835,bird 67836,ship 67837,bird 67838,cat 67839,cat 67840,horse 67841,horse 67842,airplane 67843,cat 67844,frog 67845,ship 67846,ship 67847,automobile 67848,deer 67849,truck 67850,ship 67851,airplane 67852,frog 67853,cat 67854,dog 67855,frog 67856,truck 67857,cat 67858,deer 67859,horse 67860,horse 67861,truck 67862,dog 67863,deer 67864,airplane 67865,bird 67866,bird 67867,cat 67868,dog 67869,airplane 67870,dog 67871,deer 67872,automobile 67873,dog 67874,airplane 67875,ship 67876,horse 67877,deer 67878,truck 67879,truck 67880,cat 67881,ship 67882,ship 67883,airplane 67884,ship 67885,horse 67886,cat 67887,deer 67888,dog 67889,airplane 67890,ship 67891,horse 67892,frog 67893,airplane 67894,cat 67895,ship 67896,bird 67897,automobile 67898,airplane 67899,truck 67900,cat 67901,ship 67902,horse 67903,ship 67904,deer 67905,frog 67906,bird 67907,automobile 67908,bird 67909,truck 67910,cat 67911,frog 67912,dog 67913,bird 67914,truck 67915,bird 67916,deer 67917,cat 67918,bird 67919,horse 67920,bird 67921,frog 67922,bird 67923,cat 67924,dog 67925,cat 67926,ship 67927,frog 67928,bird 67929,truck 67930,frog 67931,cat 67932,airplane 67933,bird 67934,horse 67935,truck 67936,dog 67937,deer 67938,airplane 67939,cat 67940,airplane 67941,frog 67942,dog 67943,cat 67944,truck 67945,horse 67946,deer 67947,deer 67948,deer 67949,automobile 67950,horse 67951,airplane 67952,dog 67953,automobile 67954,dog 67955,dog 67956,frog 67957,cat 67958,ship 67959,truck 67960,bird 67961,deer 67962,deer 67963,frog 67964,cat 67965,bird 67966,ship 67967,bird 67968,horse 67969,dog 67970,deer 67971,ship 67972,dog 67973,horse 67974,automobile 67975,truck 67976,horse 67977,airplane 67978,deer 67979,cat 67980,dog 67981,dog 67982,deer 67983,horse 67984,frog 67985,frog 67986,frog 67987,deer 67988,ship 67989,horse 67990,bird 67991,horse 67992,cat 67993,deer 67994,deer 67995,cat 67996,ship 67997,truck 67998,dog 67999,horse 68000,deer 68001,ship 68002,truck 68003,truck 68004,truck 68005,airplane 68006,bird 68007,frog 68008,truck 68009,airplane 68010,bird 68011,deer 68012,horse 68013,truck 68014,ship 68015,airplane 68016,automobile 68017,automobile 68018,deer 68019,horse 68020,dog 68021,horse 68022,ship 68023,airplane 68024,dog 68025,airplane 68026,frog 68027,deer 68028,dog 68029,frog 68030,automobile 68031,deer 68032,deer 68033,cat 68034,cat 68035,frog 68036,truck 68037,horse 68038,truck 68039,dog 68040,deer 68041,dog 68042,airplane 68043,ship 68044,dog 68045,truck 68046,ship 68047,dog 68048,cat 68049,cat 68050,horse 68051,dog 68052,cat 68053,frog 68054,deer 68055,cat 68056,deer 68057,dog 68058,cat 68059,deer 68060,automobile 68061,dog 68062,deer 68063,airplane 68064,horse 68065,ship 68066,frog 68067,ship 68068,deer 68069,horse 68070,bird 68071,ship 68072,horse 68073,bird 68074,deer 68075,horse 68076,cat 68077,bird 68078,deer 68079,frog 68080,truck 68081,bird 68082,frog 68083,airplane 68084,deer 68085,bird 68086,horse 68087,ship 68088,automobile 68089,dog 68090,dog 68091,ship 68092,dog 68093,horse 68094,horse 68095,deer 68096,deer 68097,dog 68098,deer 68099,deer 68100,frog 68101,cat 68102,airplane 68103,cat 68104,ship 68105,truck 68106,cat 68107,bird 68108,truck 68109,bird 68110,ship 68111,dog 68112,cat 68113,bird 68114,frog 68115,automobile 68116,bird 68117,airplane 68118,airplane 68119,airplane 68120,truck 68121,dog 68122,airplane 68123,cat 68124,bird 68125,cat 68126,automobile 68127,dog 68128,dog 68129,horse 68130,frog 68131,deer 68132,truck 68133,deer 68134,cat 68135,deer 68136,frog 68137,deer 68138,truck 68139,bird 68140,bird 68141,deer 68142,cat 68143,ship 68144,deer 68145,deer 68146,cat 68147,deer 68148,bird 68149,dog 68150,frog 68151,deer 68152,cat 68153,bird 68154,frog 68155,truck 68156,ship 68157,truck 68158,horse 68159,deer 68160,automobile 68161,airplane 68162,truck 68163,bird 68164,bird 68165,airplane 68166,horse 68167,cat 68168,bird 68169,frog 68170,ship 68171,truck 68172,truck 68173,dog 68174,automobile 68175,horse 68176,cat 68177,cat 68178,airplane 68179,cat 68180,frog 68181,airplane 68182,truck 68183,truck 68184,dog 68185,frog 68186,automobile 68187,deer 68188,deer 68189,frog 68190,deer 68191,cat 68192,cat 68193,ship 68194,ship 68195,ship 68196,frog 68197,ship 68198,cat 68199,ship 68200,deer 68201,truck 68202,cat 68203,airplane 68204,dog 68205,deer 68206,airplane 68207,dog 68208,dog 68209,horse 68210,cat 68211,horse 68212,dog 68213,frog 68214,dog 68215,frog 68216,ship 68217,deer 68218,deer 68219,bird 68220,airplane 68221,airplane 68222,deer 68223,dog 68224,bird 68225,truck 68226,automobile 68227,deer 68228,dog 68229,deer 68230,dog 68231,horse 68232,deer 68233,frog 68234,frog 68235,airplane 68236,deer 68237,cat 68238,frog 68239,automobile 68240,dog 68241,frog 68242,cat 68243,automobile 68244,horse 68245,dog 68246,airplane 68247,cat 68248,frog 68249,cat 68250,cat 68251,horse 68252,airplane 68253,airplane 68254,horse 68255,frog 68256,ship 68257,frog 68258,cat 68259,dog 68260,dog 68261,airplane 68262,dog 68263,dog 68264,frog 68265,deer 68266,bird 68267,deer 68268,cat 68269,dog 68270,truck 68271,airplane 68272,truck 68273,frog 68274,automobile 68275,automobile 68276,bird 68277,dog 68278,bird 68279,automobile 68280,frog 68281,dog 68282,bird 68283,deer 68284,ship 68285,ship 68286,ship 68287,deer 68288,horse 68289,deer 68290,dog 68291,truck 68292,truck 68293,horse 68294,bird 68295,deer 68296,dog 68297,ship 68298,cat 68299,dog 68300,automobile 68301,deer 68302,dog 68303,truck 68304,deer 68305,cat 68306,horse 68307,cat 68308,frog 68309,bird 68310,horse 68311,ship 68312,horse 68313,truck 68314,dog 68315,cat 68316,ship 68317,airplane 68318,ship 68319,deer 68320,bird 68321,truck 68322,horse 68323,airplane 68324,horse 68325,truck 68326,cat 68327,automobile 68328,airplane 68329,dog 68330,cat 68331,truck 68332,deer 68333,airplane 68334,deer 68335,dog 68336,frog 68337,truck 68338,deer 68339,automobile 68340,ship 68341,bird 68342,cat 68343,ship 68344,deer 68345,bird 68346,deer 68347,dog 68348,bird 68349,deer 68350,horse 68351,horse 68352,frog 68353,horse 68354,bird 68355,horse 68356,frog 68357,deer 68358,ship 68359,automobile 68360,frog 68361,bird 68362,airplane 68363,truck 68364,automobile 68365,cat 68366,dog 68367,cat 68368,dog 68369,frog 68370,bird 68371,bird 68372,deer 68373,dog 68374,deer 68375,cat 68376,airplane 68377,deer 68378,cat 68379,dog 68380,dog 68381,dog 68382,truck 68383,dog 68384,cat 68385,deer 68386,frog 68387,horse 68388,deer 68389,frog 68390,automobile 68391,airplane 68392,dog 68393,dog 68394,bird 68395,automobile 68396,cat 68397,deer 68398,airplane 68399,deer 68400,frog 68401,deer 68402,cat 68403,cat 68404,horse 68405,deer 68406,truck 68407,frog 68408,automobile 68409,cat 68410,bird 68411,deer 68412,deer 68413,frog 68414,cat 68415,horse 68416,airplane 68417,airplane 68418,frog 68419,deer 68420,bird 68421,cat 68422,truck 68423,automobile 68424,ship 68425,automobile 68426,horse 68427,deer 68428,truck 68429,ship 68430,bird 68431,ship 68432,cat 68433,airplane 68434,automobile 68435,automobile 68436,horse 68437,automobile 68438,ship 68439,horse 68440,frog 68441,deer 68442,frog 68443,dog 68444,dog 68445,truck 68446,cat 68447,deer 68448,airplane 68449,ship 68450,horse 68451,cat 68452,cat 68453,airplane 68454,horse 68455,automobile 68456,deer 68457,ship 68458,horse 68459,truck 68460,deer 68461,dog 68462,automobile 68463,dog 68464,deer 68465,cat 68466,truck 68467,bird 68468,dog 68469,frog 68470,cat 68471,dog 68472,horse 68473,ship 68474,airplane 68475,dog 68476,automobile 68477,truck 68478,dog 68479,ship 68480,truck 68481,cat 68482,automobile 68483,dog 68484,frog 68485,airplane 68486,automobile 68487,dog 68488,ship 68489,dog 68490,bird 68491,bird 68492,automobile 68493,automobile 68494,frog 68495,airplane 68496,airplane 68497,cat 68498,cat 68499,automobile 68500,dog 68501,bird 68502,horse 68503,deer 68504,truck 68505,cat 68506,deer 68507,ship 68508,bird 68509,airplane 68510,airplane 68511,dog 68512,frog 68513,deer 68514,frog 68515,deer 68516,cat 68517,horse 68518,frog 68519,truck 68520,frog 68521,dog 68522,frog 68523,frog 68524,bird 68525,dog 68526,dog 68527,truck 68528,dog 68529,ship 68530,automobile 68531,truck 68532,bird 68533,truck 68534,horse 68535,cat 68536,bird 68537,frog 68538,horse 68539,deer 68540,automobile 68541,horse 68542,cat 68543,truck 68544,dog 68545,truck 68546,airplane 68547,dog 68548,bird 68549,cat 68550,ship 68551,airplane 68552,truck 68553,deer 68554,bird 68555,airplane 68556,ship 68557,frog 68558,frog 68559,ship 68560,frog 68561,truck 68562,airplane 68563,airplane 68564,frog 68565,truck 68566,deer 68567,deer 68568,bird 68569,frog 68570,truck 68571,cat 68572,horse 68573,automobile 68574,automobile 68575,cat 68576,ship 68577,ship 68578,bird 68579,horse 68580,ship 68581,bird 68582,airplane 68583,cat 68584,bird 68585,deer 68586,automobile 68587,cat 68588,airplane 68589,dog 68590,cat 68591,cat 68592,frog 68593,cat 68594,cat 68595,automobile 68596,truck 68597,dog 68598,horse 68599,automobile 68600,cat 68601,truck 68602,bird 68603,deer 68604,ship 68605,dog 68606,frog 68607,dog 68608,truck 68609,deer 68610,deer 68611,automobile 68612,truck 68613,automobile 68614,frog 68615,automobile 68616,ship 68617,bird 68618,truck 68619,frog 68620,automobile 68621,horse 68622,deer 68623,automobile 68624,ship 68625,bird 68626,airplane 68627,dog 68628,cat 68629,bird 68630,dog 68631,cat 68632,ship 68633,dog 68634,horse 68635,airplane 68636,deer 68637,airplane 68638,automobile 68639,truck 68640,cat 68641,frog 68642,bird 68643,cat 68644,truck 68645,truck 68646,deer 68647,horse 68648,bird 68649,deer 68650,deer 68651,automobile 68652,cat 68653,frog 68654,horse 68655,airplane 68656,horse 68657,automobile 68658,automobile 68659,automobile 68660,cat 68661,cat 68662,airplane 68663,ship 68664,deer 68665,deer 68666,horse 68667,dog 68668,airplane 68669,truck 68670,horse 68671,bird 68672,deer 68673,frog 68674,automobile 68675,deer 68676,cat 68677,frog 68678,automobile 68679,ship 68680,frog 68681,frog 68682,bird 68683,deer 68684,bird 68685,frog 68686,airplane 68687,cat 68688,airplane 68689,truck 68690,dog 68691,truck 68692,deer 68693,ship 68694,bird 68695,frog 68696,horse 68697,truck 68698,airplane 68699,automobile 68700,frog 68701,dog 68702,cat 68703,bird 68704,truck 68705,cat 68706,ship 68707,cat 68708,automobile 68709,truck 68710,automobile 68711,frog 68712,cat 68713,deer 68714,bird 68715,deer 68716,dog 68717,deer 68718,frog 68719,cat 68720,deer 68721,truck 68722,truck 68723,horse 68724,ship 68725,airplane 68726,automobile 68727,automobile 68728,bird 68729,frog 68730,horse 68731,ship 68732,frog 68733,dog 68734,airplane 68735,airplane 68736,bird 68737,deer 68738,deer 68739,horse 68740,cat 68741,deer 68742,deer 68743,ship 68744,cat 68745,dog 68746,bird 68747,truck 68748,dog 68749,horse 68750,dog 68751,frog 68752,dog 68753,automobile 68754,horse 68755,deer 68756,automobile 68757,truck 68758,bird 68759,horse 68760,cat 68761,frog 68762,dog 68763,automobile 68764,cat 68765,cat 68766,truck 68767,dog 68768,truck 68769,cat 68770,dog 68771,horse 68772,horse 68773,automobile 68774,dog 68775,horse 68776,deer 68777,truck 68778,dog 68779,airplane 68780,cat 68781,horse 68782,deer 68783,bird 68784,frog 68785,cat 68786,cat 68787,truck 68788,airplane 68789,frog 68790,airplane 68791,airplane 68792,airplane 68793,automobile 68794,ship 68795,ship 68796,truck 68797,cat 68798,bird 68799,cat 68800,automobile 68801,horse 68802,cat 68803,cat 68804,cat 68805,horse 68806,automobile 68807,dog 68808,dog 68809,deer 68810,cat 68811,horse 68812,frog 68813,cat 68814,deer 68815,cat 68816,deer 68817,airplane 68818,deer 68819,bird 68820,airplane 68821,frog 68822,horse 68823,truck 68824,frog 68825,ship 68826,airplane 68827,bird 68828,deer 68829,horse 68830,deer 68831,cat 68832,automobile 68833,frog 68834,dog 68835,deer 68836,truck 68837,automobile 68838,bird 68839,horse 68840,deer 68841,horse 68842,bird 68843,cat 68844,truck 68845,dog 68846,dog 68847,cat 68848,bird 68849,dog 68850,cat 68851,bird 68852,cat 68853,dog 68854,horse 68855,horse 68856,airplane 68857,bird 68858,frog 68859,horse 68860,dog 68861,airplane 68862,dog 68863,cat 68864,ship 68865,dog 68866,cat 68867,dog 68868,bird 68869,cat 68870,cat 68871,deer 68872,dog 68873,frog 68874,airplane 68875,airplane 68876,bird 68877,bird 68878,automobile 68879,deer 68880,airplane 68881,cat 68882,deer 68883,ship 68884,dog 68885,cat 68886,truck 68887,horse 68888,truck 68889,frog 68890,cat 68891,truck 68892,dog 68893,truck 68894,deer 68895,horse 68896,frog 68897,automobile 68898,deer 68899,bird 68900,automobile 68901,bird 68902,cat 68903,airplane 68904,deer 68905,airplane 68906,airplane 68907,ship 68908,frog 68909,cat 68910,cat 68911,dog 68912,bird 68913,deer 68914,ship 68915,cat 68916,truck 68917,horse 68918,bird 68919,horse 68920,truck 68921,ship 68922,truck 68923,ship 68924,horse 68925,horse 68926,horse 68927,cat 68928,deer 68929,cat 68930,cat 68931,deer 68932,airplane 68933,deer 68934,bird 68935,deer 68936,dog 68937,deer 68938,cat 68939,automobile 68940,truck 68941,airplane 68942,ship 68943,bird 68944,truck 68945,horse 68946,airplane 68947,truck 68948,frog 68949,horse 68950,truck 68951,bird 68952,truck 68953,bird 68954,deer 68955,automobile 68956,automobile 68957,automobile 68958,ship 68959,automobile 68960,airplane 68961,truck 68962,ship 68963,cat 68964,airplane 68965,automobile 68966,ship 68967,frog 68968,dog 68969,dog 68970,ship 68971,cat 68972,deer 68973,cat 68974,dog 68975,cat 68976,horse 68977,horse 68978,ship 68979,airplane 68980,cat 68981,cat 68982,horse 68983,bird 68984,frog 68985,deer 68986,automobile 68987,airplane 68988,cat 68989,dog 68990,airplane 68991,airplane 68992,truck 68993,truck 68994,cat 68995,automobile 68996,bird 68997,bird 68998,horse 68999,bird 69000,frog 69001,truck 69002,horse 69003,frog 69004,ship 69005,cat 69006,automobile 69007,horse 69008,deer 69009,dog 69010,ship 69011,airplane 69012,ship 69013,cat 69014,dog 69015,frog 69016,frog 69017,bird 69018,deer 69019,deer 69020,truck 69021,cat 69022,dog 69023,truck 69024,deer 69025,deer 69026,deer 69027,cat 69028,cat 69029,deer 69030,cat 69031,deer 69032,ship 69033,frog 69034,airplane 69035,horse 69036,frog 69037,horse 69038,deer 69039,ship 69040,dog 69041,truck 69042,truck 69043,cat 69044,horse 69045,dog 69046,dog 69047,deer 69048,cat 69049,airplane 69050,dog 69051,horse 69052,ship 69053,bird 69054,airplane 69055,automobile 69056,frog 69057,dog 69058,ship 69059,truck 69060,cat 69061,dog 69062,truck 69063,automobile 69064,deer 69065,dog 69066,bird 69067,horse 69068,cat 69069,bird 69070,cat 69071,cat 69072,cat 69073,cat 69074,frog 69075,deer 69076,cat 69077,dog 69078,dog 69079,deer 69080,dog 69081,bird 69082,airplane 69083,airplane 69084,bird 69085,deer 69086,airplane 69087,cat 69088,automobile 69089,deer 69090,dog 69091,cat 69092,horse 69093,horse 69094,cat 69095,deer 69096,frog 69097,deer 69098,airplane 69099,dog 69100,horse 69101,truck 69102,bird 69103,cat 69104,bird 69105,truck 69106,ship 69107,cat 69108,ship 69109,frog 69110,automobile 69111,frog 69112,ship 69113,automobile 69114,dog 69115,bird 69116,truck 69117,dog 69118,airplane 69119,airplane 69120,truck 69121,ship 69122,airplane 69123,cat 69124,horse 69125,truck 69126,horse 69127,horse 69128,ship 69129,bird 69130,deer 69131,automobile 69132,cat 69133,truck 69134,bird 69135,ship 69136,truck 69137,bird 69138,airplane 69139,deer 69140,dog 69141,deer 69142,frog 69143,cat 69144,automobile 69145,airplane 69146,dog 69147,horse 69148,horse 69149,airplane 69150,cat 69151,dog 69152,cat 69153,frog 69154,airplane 69155,deer 69156,horse 69157,airplane 69158,deer 69159,frog 69160,automobile 69161,frog 69162,bird 69163,deer 69164,deer 69165,dog 69166,deer 69167,bird 69168,deer 69169,ship 69170,deer 69171,cat 69172,dog 69173,dog 69174,airplane 69175,dog 69176,deer 69177,truck 69178,horse 69179,cat 69180,bird 69181,horse 69182,automobile 69183,truck 69184,dog 69185,cat 69186,automobile 69187,airplane 69188,airplane 69189,dog 69190,horse 69191,bird 69192,cat 69193,frog 69194,truck 69195,deer 69196,frog 69197,dog 69198,bird 69199,airplane 69200,frog 69201,truck 69202,truck 69203,deer 69204,ship 69205,airplane 69206,truck 69207,ship 69208,automobile 69209,cat 69210,truck 69211,automobile 69212,frog 69213,deer 69214,cat 69215,truck 69216,horse 69217,dog 69218,dog 69219,deer 69220,frog 69221,horse 69222,cat 69223,cat 69224,frog 69225,dog 69226,bird 69227,airplane 69228,horse 69229,frog 69230,cat 69231,automobile 69232,deer 69233,deer 69234,deer 69235,deer 69236,cat 69237,dog 69238,cat 69239,deer 69240,dog 69241,airplane 69242,automobile 69243,frog 69244,deer 69245,deer 69246,automobile 69247,truck 69248,bird 69249,frog 69250,bird 69251,ship 69252,cat 69253,truck 69254,dog 69255,truck 69256,dog 69257,deer 69258,truck 69259,frog 69260,bird 69261,automobile 69262,automobile 69263,bird 69264,truck 69265,dog 69266,bird 69267,airplane 69268,cat 69269,cat 69270,frog 69271,ship 69272,cat 69273,horse 69274,automobile 69275,horse 69276,deer 69277,frog 69278,horse 69279,dog 69280,automobile 69281,airplane 69282,truck 69283,cat 69284,dog 69285,bird 69286,deer 69287,frog 69288,cat 69289,airplane 69290,ship 69291,automobile 69292,airplane 69293,deer 69294,dog 69295,airplane 69296,deer 69297,bird 69298,frog 69299,ship 69300,deer 69301,ship 69302,deer 69303,bird 69304,automobile 69305,automobile 69306,dog 69307,bird 69308,horse 69309,frog 69310,airplane 69311,truck 69312,truck 69313,deer 69314,cat 69315,dog 69316,deer 69317,horse 69318,horse 69319,horse 69320,ship 69321,airplane 69322,cat 69323,automobile 69324,dog 69325,cat 69326,airplane 69327,dog 69328,deer 69329,cat 69330,automobile 69331,automobile 69332,airplane 69333,dog 69334,bird 69335,airplane 69336,airplane 69337,frog 69338,airplane 69339,airplane 69340,frog 69341,bird 69342,dog 69343,truck 69344,cat 69345,cat 69346,truck 69347,dog 69348,frog 69349,bird 69350,truck 69351,airplane 69352,cat 69353,automobile 69354,cat 69355,ship 69356,ship 69357,cat 69358,automobile 69359,dog 69360,airplane 69361,horse 69362,cat 69363,cat 69364,dog 69365,bird 69366,ship 69367,truck 69368,frog 69369,cat 69370,automobile 69371,deer 69372,deer 69373,truck 69374,dog 69375,frog 69376,frog 69377,deer 69378,truck 69379,cat 69380,automobile 69381,airplane 69382,cat 69383,cat 69384,deer 69385,ship 69386,bird 69387,deer 69388,bird 69389,cat 69390,frog 69391,frog 69392,dog 69393,horse 69394,dog 69395,deer 69396,airplane 69397,airplane 69398,frog 69399,airplane 69400,bird 69401,truck 69402,horse 69403,frog 69404,bird 69405,frog 69406,truck 69407,truck 69408,ship 69409,bird 69410,automobile 69411,ship 69412,frog 69413,cat 69414,horse 69415,truck 69416,frog 69417,deer 69418,deer 69419,dog 69420,frog 69421,dog 69422,bird 69423,ship 69424,cat 69425,truck 69426,deer 69427,deer 69428,bird 69429,deer 69430,cat 69431,dog 69432,deer 69433,dog 69434,airplane 69435,cat 69436,deer 69437,deer 69438,deer 69439,ship 69440,ship 69441,truck 69442,truck 69443,dog 69444,dog 69445,cat 69446,frog 69447,cat 69448,bird 69449,deer 69450,airplane 69451,frog 69452,deer 69453,truck 69454,automobile 69455,cat 69456,truck 69457,truck 69458,frog 69459,airplane 69460,airplane 69461,cat 69462,deer 69463,frog 69464,horse 69465,horse 69466,deer 69467,automobile 69468,horse 69469,truck 69470,airplane 69471,frog 69472,deer 69473,automobile 69474,cat 69475,cat 69476,deer 69477,ship 69478,cat 69479,cat 69480,horse 69481,bird 69482,truck 69483,horse 69484,truck 69485,dog 69486,frog 69487,dog 69488,automobile 69489,truck 69490,ship 69491,ship 69492,bird 69493,airplane 69494,cat 69495,deer 69496,automobile 69497,airplane 69498,cat 69499,frog 69500,ship 69501,ship 69502,automobile 69503,truck 69504,bird 69505,frog 69506,bird 69507,bird 69508,cat 69509,truck 69510,frog 69511,deer 69512,deer 69513,bird 69514,automobile 69515,cat 69516,ship 69517,cat 69518,dog 69519,deer 69520,horse 69521,truck 69522,dog 69523,truck 69524,cat 69525,deer 69526,airplane 69527,airplane 69528,truck 69529,horse 69530,automobile 69531,automobile 69532,airplane 69533,horse 69534,bird 69535,cat 69536,deer 69537,truck 69538,cat 69539,deer 69540,dog 69541,deer 69542,truck 69543,automobile 69544,deer 69545,horse 69546,frog 69547,truck 69548,deer 69549,frog 69550,deer 69551,bird 69552,cat 69553,horse 69554,dog 69555,dog 69556,cat 69557,automobile 69558,truck 69559,deer 69560,truck 69561,horse 69562,cat 69563,bird 69564,cat 69565,dog 69566,deer 69567,ship 69568,dog 69569,deer 69570,airplane 69571,deer 69572,frog 69573,truck 69574,dog 69575,bird 69576,truck 69577,truck 69578,truck 69579,automobile 69580,dog 69581,deer 69582,truck 69583,truck 69584,horse 69585,deer 69586,deer 69587,automobile 69588,dog 69589,cat 69590,frog 69591,deer 69592,cat 69593,deer 69594,frog 69595,bird 69596,cat 69597,cat 69598,horse 69599,truck 69600,dog 69601,dog 69602,cat 69603,automobile 69604,airplane 69605,deer 69606,ship 69607,truck 69608,truck 69609,truck 69610,horse 69611,ship 69612,automobile 69613,automobile 69614,dog 69615,deer 69616,bird 69617,airplane 69618,cat 69619,horse 69620,truck 69621,automobile 69622,airplane 69623,dog 69624,ship 69625,ship 69626,truck 69627,frog 69628,horse 69629,truck 69630,dog 69631,cat 69632,ship 69633,dog 69634,airplane 69635,cat 69636,dog 69637,frog 69638,cat 69639,ship 69640,horse 69641,truck 69642,horse 69643,horse 69644,bird 69645,frog 69646,airplane 69647,truck 69648,frog 69649,dog 69650,cat 69651,frog 69652,airplane 69653,bird 69654,horse 69655,dog 69656,deer 69657,ship 69658,frog 69659,dog 69660,frog 69661,automobile 69662,ship 69663,truck 69664,cat 69665,cat 69666,bird 69667,cat 69668,dog 69669,ship 69670,frog 69671,horse 69672,truck 69673,cat 69674,ship 69675,cat 69676,frog 69677,ship 69678,cat 69679,deer 69680,frog 69681,airplane 69682,automobile 69683,dog 69684,bird 69685,dog 69686,ship 69687,truck 69688,airplane 69689,deer 69690,deer 69691,deer 69692,deer 69693,horse 69694,frog 69695,frog 69696,truck 69697,ship 69698,cat 69699,dog 69700,cat 69701,truck 69702,cat 69703,airplane 69704,horse 69705,deer 69706,cat 69707,ship 69708,cat 69709,frog 69710,horse 69711,cat 69712,frog 69713,deer 69714,horse 69715,cat 69716,ship 69717,truck 69718,truck 69719,truck 69720,truck 69721,truck 69722,bird 69723,deer 69724,truck 69725,cat 69726,truck 69727,truck 69728,frog 69729,frog 69730,ship 69731,cat 69732,deer 69733,deer 69734,ship 69735,airplane 69736,cat 69737,dog 69738,frog 69739,truck 69740,dog 69741,dog 69742,truck 69743,horse 69744,automobile 69745,dog 69746,frog 69747,airplane 69748,frog 69749,deer 69750,truck 69751,truck 69752,ship 69753,deer 69754,deer 69755,dog 69756,frog 69757,ship 69758,dog 69759,frog 69760,ship 69761,ship 69762,cat 69763,horse 69764,truck 69765,cat 69766,deer 69767,airplane 69768,automobile 69769,deer 69770,cat 69771,automobile 69772,truck 69773,frog 69774,cat 69775,deer 69776,bird 69777,frog 69778,horse 69779,cat 69780,truck 69781,airplane 69782,cat 69783,airplane 69784,dog 69785,frog 69786,truck 69787,deer 69788,deer 69789,horse 69790,frog 69791,dog 69792,deer 69793,airplane 69794,bird 69795,bird 69796,ship 69797,horse 69798,airplane 69799,dog 69800,cat 69801,deer 69802,deer 69803,deer 69804,cat 69805,truck 69806,automobile 69807,deer 69808,cat 69809,horse 69810,horse 69811,frog 69812,cat 69813,cat 69814,deer 69815,frog 69816,frog 69817,bird 69818,cat 69819,truck 69820,truck 69821,frog 69822,automobile 69823,airplane 69824,dog 69825,deer 69826,cat 69827,truck 69828,cat 69829,truck 69830,airplane 69831,cat 69832,bird 69833,airplane 69834,cat 69835,dog 69836,dog 69837,ship 69838,dog 69839,deer 69840,dog 69841,dog 69842,dog 69843,ship 69844,ship 69845,ship 69846,ship 69847,cat 69848,cat 69849,ship 69850,bird 69851,airplane 69852,cat 69853,bird 69854,horse 69855,ship 69856,frog 69857,horse 69858,truck 69859,frog 69860,airplane 69861,airplane 69862,dog 69863,horse 69864,bird 69865,truck 69866,dog 69867,airplane 69868,truck 69869,airplane 69870,horse 69871,airplane 69872,frog 69873,cat 69874,deer 69875,ship 69876,ship 69877,cat 69878,cat 69879,bird 69880,frog 69881,dog 69882,bird 69883,truck 69884,automobile 69885,airplane 69886,horse 69887,deer 69888,cat 69889,deer 69890,truck 69891,dog 69892,frog 69893,frog 69894,ship 69895,dog 69896,frog 69897,ship 69898,cat 69899,bird 69900,automobile 69901,horse 69902,automobile 69903,truck 69904,dog 69905,deer 69906,cat 69907,truck 69908,airplane 69909,cat 69910,automobile 69911,airplane 69912,airplane 69913,automobile 69914,cat 69915,frog 69916,truck 69917,cat 69918,deer 69919,truck 69920,bird 69921,airplane 69922,bird 69923,airplane 69924,deer 69925,frog 69926,frog 69927,automobile 69928,automobile 69929,truck 69930,cat 69931,bird 69932,ship 69933,frog 69934,deer 69935,horse 69936,automobile 69937,airplane 69938,deer 69939,truck 69940,cat 69941,truck 69942,bird 69943,bird 69944,airplane 69945,ship 69946,automobile 69947,truck 69948,dog 69949,cat 69950,cat 69951,cat 69952,cat 69953,frog 69954,deer 69955,frog 69956,truck 69957,truck 69958,cat 69959,truck 69960,cat 69961,horse 69962,horse 69963,cat 69964,dog 69965,automobile 69966,airplane 69967,frog 69968,ship 69969,ship 69970,horse 69971,cat 69972,airplane 69973,automobile 69974,horse 69975,frog 69976,cat 69977,automobile 69978,horse 69979,ship 69980,truck 69981,cat 69982,ship 69983,frog 69984,frog 69985,ship 69986,automobile 69987,bird 69988,deer 69989,dog 69990,deer 69991,truck 69992,bird 69993,frog 69994,frog 69995,bird 69996,cat 69997,cat 69998,deer 69999,frog 70000,frog 70001,deer 70002,automobile 70003,ship 70004,ship 70005,bird 70006,horse 70007,automobile 70008,deer 70009,dog 70010,cat 70011,cat 70012,frog 70013,airplane 70014,deer 70015,cat 70016,dog 70017,truck 70018,deer 70019,frog 70020,cat 70021,bird 70022,bird 70023,frog 70024,truck 70025,frog 70026,deer 70027,frog 70028,deer 70029,airplane 70030,frog 70031,deer 70032,airplane 70033,dog 70034,truck 70035,dog 70036,cat 70037,cat 70038,truck 70039,ship 70040,ship 70041,horse 70042,truck 70043,automobile 70044,airplane 70045,deer 70046,deer 70047,horse 70048,deer 70049,horse 70050,frog 70051,horse 70052,frog 70053,automobile 70054,truck 70055,deer 70056,truck 70057,deer 70058,bird 70059,bird 70060,ship 70061,frog 70062,deer 70063,cat 70064,cat 70065,dog 70066,deer 70067,truck 70068,deer 70069,truck 70070,deer 70071,bird 70072,truck 70073,bird 70074,truck 70075,airplane 70076,bird 70077,automobile 70078,dog 70079,dog 70080,cat 70081,frog 70082,airplane 70083,deer 70084,airplane 70085,frog 70086,horse 70087,automobile 70088,airplane 70089,deer 70090,truck 70091,cat 70092,cat 70093,dog 70094,truck 70095,cat 70096,airplane 70097,cat 70098,dog 70099,airplane 70100,dog 70101,horse 70102,airplane 70103,bird 70104,automobile 70105,airplane 70106,frog 70107,dog 70108,truck 70109,automobile 70110,bird 70111,deer 70112,deer 70113,dog 70114,automobile 70115,ship 70116,truck 70117,truck 70118,bird 70119,automobile 70120,horse 70121,automobile 70122,truck 70123,deer 70124,cat 70125,automobile 70126,frog 70127,dog 70128,horse 70129,truck 70130,airplane 70131,frog 70132,frog 70133,cat 70134,automobile 70135,cat 70136,truck 70137,dog 70138,frog 70139,truck 70140,ship 70141,deer 70142,frog 70143,horse 70144,truck 70145,cat 70146,ship 70147,bird 70148,ship 70149,horse 70150,deer 70151,cat 70152,frog 70153,frog 70154,bird 70155,dog 70156,truck 70157,cat 70158,frog 70159,bird 70160,truck 70161,cat 70162,dog 70163,deer 70164,bird 70165,ship 70166,deer 70167,horse 70168,truck 70169,dog 70170,automobile 70171,cat 70172,frog 70173,airplane 70174,truck 70175,cat 70176,dog 70177,frog 70178,frog 70179,horse 70180,dog 70181,horse 70182,automobile 70183,deer 70184,horse 70185,ship 70186,dog 70187,cat 70188,bird 70189,cat 70190,frog 70191,ship 70192,airplane 70193,truck 70194,dog 70195,airplane 70196,ship 70197,frog 70198,cat 70199,deer 70200,dog 70201,cat 70202,deer 70203,dog 70204,deer 70205,dog 70206,bird 70207,cat 70208,horse 70209,dog 70210,dog 70211,deer 70212,frog 70213,deer 70214,automobile 70215,deer 70216,bird 70217,cat 70218,horse 70219,dog 70220,horse 70221,airplane 70222,cat 70223,bird 70224,deer 70225,deer 70226,cat 70227,dog 70228,bird 70229,airplane 70230,frog 70231,deer 70232,dog 70233,ship 70234,frog 70235,bird 70236,truck 70237,deer 70238,deer 70239,horse 70240,horse 70241,dog 70242,dog 70243,deer 70244,frog 70245,automobile 70246,dog 70247,horse 70248,automobile 70249,automobile 70250,ship 70251,deer 70252,cat 70253,automobile 70254,truck 70255,frog 70256,airplane 70257,dog 70258,horse 70259,automobile 70260,automobile 70261,horse 70262,deer 70263,automobile 70264,automobile 70265,automobile 70266,dog 70267,deer 70268,bird 70269,ship 70270,ship 70271,airplane 70272,dog 70273,cat 70274,automobile 70275,horse 70276,frog 70277,bird 70278,frog 70279,automobile 70280,cat 70281,dog 70282,bird 70283,airplane 70284,deer 70285,airplane 70286,cat 70287,cat 70288,airplane 70289,dog 70290,dog 70291,ship 70292,cat 70293,horse 70294,automobile 70295,airplane 70296,frog 70297,frog 70298,horse 70299,deer 70300,airplane 70301,dog 70302,truck 70303,deer 70304,truck 70305,bird 70306,deer 70307,frog 70308,frog 70309,ship 70310,dog 70311,ship 70312,ship 70313,horse 70314,deer 70315,bird 70316,truck 70317,dog 70318,cat 70319,automobile 70320,airplane 70321,deer 70322,ship 70323,frog 70324,frog 70325,ship 70326,automobile 70327,cat 70328,deer 70329,ship 70330,horse 70331,ship 70332,airplane 70333,frog 70334,ship 70335,truck 70336,automobile 70337,ship 70338,horse 70339,horse 70340,horse 70341,horse 70342,frog 70343,frog 70344,ship 70345,truck 70346,ship 70347,frog 70348,deer 70349,cat 70350,frog 70351,horse 70352,airplane 70353,airplane 70354,truck 70355,airplane 70356,dog 70357,horse 70358,horse 70359,cat 70360,automobile 70361,cat 70362,automobile 70363,airplane 70364,airplane 70365,dog 70366,bird 70367,ship 70368,cat 70369,horse 70370,cat 70371,cat 70372,bird 70373,horse 70374,truck 70375,automobile 70376,automobile 70377,cat 70378,dog 70379,frog 70380,ship 70381,cat 70382,cat 70383,truck 70384,cat 70385,frog 70386,cat 70387,deer 70388,ship 70389,cat 70390,bird 70391,airplane 70392,cat 70393,ship 70394,cat 70395,truck 70396,bird 70397,bird 70398,automobile 70399,truck 70400,dog 70401,deer 70402,deer 70403,horse 70404,automobile 70405,airplane 70406,bird 70407,bird 70408,truck 70409,ship 70410,bird 70411,cat 70412,bird 70413,truck 70414,frog 70415,cat 70416,frog 70417,ship 70418,cat 70419,truck 70420,truck 70421,automobile 70422,ship 70423,frog 70424,truck 70425,ship 70426,automobile 70427,horse 70428,truck 70429,frog 70430,truck 70431,ship 70432,horse 70433,truck 70434,automobile 70435,deer 70436,frog 70437,frog 70438,ship 70439,airplane 70440,cat 70441,dog 70442,truck 70443,frog 70444,bird 70445,cat 70446,horse 70447,airplane 70448,ship 70449,cat 70450,truck 70451,truck 70452,automobile 70453,frog 70454,deer 70455,automobile 70456,truck 70457,frog 70458,airplane 70459,cat 70460,deer 70461,deer 70462,frog 70463,dog 70464,truck 70465,automobile 70466,cat 70467,horse 70468,bird 70469,airplane 70470,frog 70471,airplane 70472,frog 70473,automobile 70474,horse 70475,automobile 70476,frog 70477,horse 70478,frog 70479,dog 70480,cat 70481,horse 70482,truck 70483,cat 70484,ship 70485,cat 70486,bird 70487,horse 70488,dog 70489,bird 70490,frog 70491,frog 70492,deer 70493,deer 70494,deer 70495,dog 70496,truck 70497,deer 70498,automobile 70499,cat 70500,bird 70501,horse 70502,frog 70503,horse 70504,cat 70505,bird 70506,truck 70507,truck 70508,dog 70509,deer 70510,truck 70511,dog 70512,cat 70513,cat 70514,horse 70515,deer 70516,airplane 70517,deer 70518,ship 70519,frog 70520,frog 70521,frog 70522,dog 70523,deer 70524,deer 70525,truck 70526,deer 70527,cat 70528,automobile 70529,deer 70530,deer 70531,automobile 70532,automobile 70533,frog 70534,truck 70535,airplane 70536,deer 70537,ship 70538,deer 70539,deer 70540,frog 70541,horse 70542,ship 70543,deer 70544,cat 70545,cat 70546,deer 70547,frog 70548,automobile 70549,bird 70550,frog 70551,cat 70552,deer 70553,truck 70554,horse 70555,bird 70556,dog 70557,cat 70558,automobile 70559,frog 70560,dog 70561,automobile 70562,frog 70563,ship 70564,horse 70565,horse 70566,horse 70567,frog 70568,bird 70569,deer 70570,airplane 70571,horse 70572,frog 70573,airplane 70574,horse 70575,automobile 70576,automobile 70577,cat 70578,automobile 70579,bird 70580,cat 70581,horse 70582,dog 70583,ship 70584,deer 70585,bird 70586,dog 70587,bird 70588,frog 70589,bird 70590,deer 70591,automobile 70592,cat 70593,horse 70594,horse 70595,airplane 70596,frog 70597,cat 70598,deer 70599,automobile 70600,truck 70601,dog 70602,ship 70603,airplane 70604,dog 70605,truck 70606,frog 70607,automobile 70608,frog 70609,frog 70610,horse 70611,frog 70612,horse 70613,frog 70614,automobile 70615,ship 70616,airplane 70617,deer 70618,deer 70619,truck 70620,dog 70621,ship 70622,ship 70623,horse 70624,frog 70625,cat 70626,automobile 70627,horse 70628,ship 70629,cat 70630,cat 70631,dog 70632,deer 70633,truck 70634,ship 70635,dog 70636,deer 70637,truck 70638,airplane 70639,dog 70640,ship 70641,airplane 70642,deer 70643,bird 70644,deer 70645,deer 70646,ship 70647,cat 70648,cat 70649,dog 70650,horse 70651,frog 70652,truck 70653,deer 70654,cat 70655,automobile 70656,horse 70657,automobile 70658,cat 70659,bird 70660,dog 70661,ship 70662,ship 70663,frog 70664,cat 70665,deer 70666,frog 70667,airplane 70668,automobile 70669,ship 70670,bird 70671,bird 70672,horse 70673,deer 70674,bird 70675,horse 70676,bird 70677,automobile 70678,horse 70679,deer 70680,truck 70681,dog 70682,frog 70683,deer 70684,deer 70685,frog 70686,automobile 70687,frog 70688,deer 70689,dog 70690,deer 70691,bird 70692,truck 70693,bird 70694,dog 70695,ship 70696,truck 70697,horse 70698,deer 70699,horse 70700,frog 70701,dog 70702,horse 70703,dog 70704,frog 70705,automobile 70706,truck 70707,ship 70708,frog 70709,deer 70710,deer 70711,frog 70712,frog 70713,truck 70714,dog 70715,deer 70716,truck 70717,deer 70718,frog 70719,dog 70720,frog 70721,truck 70722,frog 70723,ship 70724,automobile 70725,horse 70726,horse 70727,airplane 70728,cat 70729,bird 70730,deer 70731,truck 70732,automobile 70733,ship 70734,dog 70735,cat 70736,dog 70737,dog 70738,airplane 70739,truck 70740,horse 70741,automobile 70742,frog 70743,ship 70744,deer 70745,ship 70746,dog 70747,deer 70748,ship 70749,frog 70750,cat 70751,deer 70752,dog 70753,horse 70754,deer 70755,dog 70756,truck 70757,cat 70758,horse 70759,ship 70760,bird 70761,frog 70762,deer 70763,truck 70764,cat 70765,ship 70766,airplane 70767,automobile 70768,dog 70769,cat 70770,deer 70771,dog 70772,frog 70773,bird 70774,deer 70775,deer 70776,truck 70777,bird 70778,deer 70779,horse 70780,deer 70781,truck 70782,airplane 70783,cat 70784,deer 70785,airplane 70786,horse 70787,horse 70788,truck 70789,airplane 70790,frog 70791,deer 70792,cat 70793,truck 70794,cat 70795,cat 70796,horse 70797,cat 70798,horse 70799,dog 70800,bird 70801,automobile 70802,horse 70803,airplane 70804,horse 70805,deer 70806,horse 70807,cat 70808,frog 70809,dog 70810,cat 70811,cat 70812,dog 70813,airplane 70814,bird 70815,horse 70816,deer 70817,airplane 70818,deer 70819,dog 70820,bird 70821,airplane 70822,frog 70823,cat 70824,ship 70825,dog 70826,automobile 70827,deer 70828,cat 70829,frog 70830,deer 70831,cat 70832,cat 70833,airplane 70834,cat 70835,airplane 70836,truck 70837,cat 70838,frog 70839,ship 70840,bird 70841,frog 70842,cat 70843,dog 70844,ship 70845,frog 70846,automobile 70847,cat 70848,truck 70849,bird 70850,cat 70851,truck 70852,automobile 70853,deer 70854,cat 70855,horse 70856,bird 70857,ship 70858,bird 70859,airplane 70860,automobile 70861,deer 70862,ship 70863,truck 70864,truck 70865,airplane 70866,dog 70867,ship 70868,bird 70869,truck 70870,frog 70871,bird 70872,cat 70873,airplane 70874,truck 70875,truck 70876,airplane 70877,deer 70878,deer 70879,dog 70880,ship 70881,horse 70882,cat 70883,ship 70884,airplane 70885,deer 70886,automobile 70887,bird 70888,deer 70889,cat 70890,automobile 70891,dog 70892,automobile 70893,airplane 70894,truck 70895,dog 70896,bird 70897,cat 70898,cat 70899,automobile 70900,truck 70901,horse 70902,bird 70903,dog 70904,automobile 70905,frog 70906,horse 70907,horse 70908,deer 70909,ship 70910,cat 70911,automobile 70912,deer 70913,horse 70914,frog 70915,frog 70916,frog 70917,horse 70918,horse 70919,automobile 70920,ship 70921,automobile 70922,cat 70923,deer 70924,airplane 70925,frog 70926,frog 70927,ship 70928,horse 70929,dog 70930,automobile 70931,dog 70932,dog 70933,dog 70934,deer 70935,horse 70936,automobile 70937,frog 70938,horse 70939,bird 70940,bird 70941,truck 70942,automobile 70943,cat 70944,frog 70945,deer 70946,bird 70947,frog 70948,airplane 70949,ship 70950,dog 70951,truck 70952,cat 70953,deer 70954,bird 70955,ship 70956,airplane 70957,horse 70958,deer 70959,truck 70960,cat 70961,automobile 70962,dog 70963,cat 70964,horse 70965,dog 70966,cat 70967,ship 70968,cat 70969,automobile 70970,frog 70971,frog 70972,airplane 70973,truck 70974,deer 70975,cat 70976,truck 70977,deer 70978,deer 70979,frog 70980,truck 70981,cat 70982,dog 70983,deer 70984,deer 70985,ship 70986,cat 70987,airplane 70988,horse 70989,dog 70990,horse 70991,cat 70992,cat 70993,ship 70994,deer 70995,horse 70996,horse 70997,automobile 70998,truck 70999,cat 71000,dog 71001,frog 71002,ship 71003,horse 71004,deer 71005,dog 71006,horse 71007,bird 71008,airplane 71009,cat 71010,airplane 71011,dog 71012,bird 71013,truck 71014,airplane 71015,deer 71016,dog 71017,airplane 71018,deer 71019,airplane 71020,dog 71021,cat 71022,truck 71023,bird 71024,cat 71025,airplane 71026,truck 71027,cat 71028,ship 71029,truck 71030,frog 71031,bird 71032,dog 71033,ship 71034,horse 71035,dog 71036,horse 71037,deer 71038,truck 71039,frog 71040,airplane 71041,deer 71042,automobile 71043,dog 71044,horse 71045,frog 71046,bird 71047,ship 71048,bird 71049,cat 71050,airplane 71051,horse 71052,airplane 71053,deer 71054,frog 71055,dog 71056,bird 71057,cat 71058,deer 71059,frog 71060,airplane 71061,frog 71062,frog 71063,automobile 71064,ship 71065,cat 71066,truck 71067,truck 71068,automobile 71069,ship 71070,horse 71071,frog 71072,dog 71073,bird 71074,horse 71075,dog 71076,frog 71077,cat 71078,cat 71079,deer 71080,dog 71081,cat 71082,cat 71083,automobile 71084,dog 71085,truck 71086,airplane 71087,dog 71088,truck 71089,cat 71090,frog 71091,airplane 71092,dog 71093,truck 71094,horse 71095,bird 71096,deer 71097,deer 71098,bird 71099,deer 71100,dog 71101,airplane 71102,frog 71103,cat 71104,horse 71105,deer 71106,ship 71107,frog 71108,ship 71109,deer 71110,deer 71111,frog 71112,deer 71113,bird 71114,automobile 71115,truck 71116,bird 71117,ship 71118,automobile 71119,bird 71120,automobile 71121,frog 71122,deer 71123,deer 71124,frog 71125,truck 71126,cat 71127,cat 71128,ship 71129,automobile 71130,frog 71131,cat 71132,cat 71133,deer 71134,ship 71135,frog 71136,truck 71137,frog 71138,frog 71139,frog 71140,bird 71141,dog 71142,dog 71143,ship 71144,ship 71145,truck 71146,deer 71147,cat 71148,dog 71149,deer 71150,airplane 71151,deer 71152,airplane 71153,airplane 71154,airplane 71155,bird 71156,truck 71157,ship 71158,deer 71159,bird 71160,truck 71161,frog 71162,horse 71163,bird 71164,cat 71165,cat 71166,bird 71167,automobile 71168,ship 71169,frog 71170,truck 71171,horse 71172,deer 71173,frog 71174,ship 71175,deer 71176,bird 71177,ship 71178,frog 71179,bird 71180,airplane 71181,bird 71182,truck 71183,dog 71184,horse 71185,bird 71186,dog 71187,bird 71188,cat 71189,truck 71190,horse 71191,deer 71192,airplane 71193,dog 71194,dog 71195,deer 71196,airplane 71197,deer 71198,deer 71199,ship 71200,truck 71201,truck 71202,airplane 71203,frog 71204,airplane 71205,airplane 71206,ship 71207,horse 71208,cat 71209,airplane 71210,airplane 71211,frog 71212,truck 71213,airplane 71214,deer 71215,frog 71216,automobile 71217,automobile 71218,deer 71219,airplane 71220,deer 71221,airplane 71222,cat 71223,ship 71224,dog 71225,ship 71226,automobile 71227,truck 71228,cat 71229,deer 71230,airplane 71231,deer 71232,frog 71233,deer 71234,deer 71235,bird 71236,cat 71237,ship 71238,airplane 71239,deer 71240,bird 71241,automobile 71242,dog 71243,bird 71244,bird 71245,truck 71246,deer 71247,horse 71248,truck 71249,bird 71250,bird 71251,cat 71252,deer 71253,truck 71254,deer 71255,cat 71256,deer 71257,airplane 71258,automobile 71259,cat 71260,truck 71261,ship 71262,ship 71263,bird 71264,frog 71265,deer 71266,automobile 71267,automobile 71268,frog 71269,frog 71270,airplane 71271,deer 71272,dog 71273,airplane 71274,truck 71275,cat 71276,automobile 71277,deer 71278,bird 71279,cat 71280,deer 71281,dog 71282,ship 71283,deer 71284,ship 71285,airplane 71286,airplane 71287,deer 71288,cat 71289,truck 71290,horse 71291,bird 71292,automobile 71293,automobile 71294,bird 71295,bird 71296,truck 71297,horse 71298,truck 71299,deer 71300,ship 71301,deer 71302,horse 71303,automobile 71304,frog 71305,cat 71306,airplane 71307,cat 71308,deer 71309,horse 71310,horse 71311,automobile 71312,deer 71313,bird 71314,bird 71315,deer 71316,cat 71317,automobile 71318,cat 71319,horse 71320,horse 71321,dog 71322,bird 71323,cat 71324,horse 71325,deer 71326,cat 71327,deer 71328,airplane 71329,deer 71330,truck 71331,airplane 71332,frog 71333,automobile 71334,horse 71335,frog 71336,airplane 71337,dog 71338,truck 71339,cat 71340,automobile 71341,airplane 71342,dog 71343,airplane 71344,ship 71345,deer 71346,frog 71347,deer 71348,bird 71349,horse 71350,truck 71351,cat 71352,automobile 71353,dog 71354,truck 71355,deer 71356,cat 71357,bird 71358,cat 71359,deer 71360,truck 71361,truck 71362,truck 71363,cat 71364,horse 71365,ship 71366,deer 71367,truck 71368,airplane 71369,deer 71370,deer 71371,cat 71372,horse 71373,cat 71374,horse 71375,bird 71376,automobile 71377,deer 71378,horse 71379,horse 71380,cat 71381,deer 71382,truck 71383,deer 71384,horse 71385,airplane 71386,deer 71387,truck 71388,ship 71389,truck 71390,automobile 71391,airplane 71392,truck 71393,frog 71394,bird 71395,airplane 71396,bird 71397,frog 71398,deer 71399,truck 71400,truck 71401,airplane 71402,truck 71403,frog 71404,cat 71405,frog 71406,cat 71407,automobile 71408,airplane 71409,frog 71410,airplane 71411,ship 71412,deer 71413,horse 71414,dog 71415,cat 71416,ship 71417,airplane 71418,airplane 71419,airplane 71420,cat 71421,frog 71422,deer 71423,cat 71424,cat 71425,frog 71426,deer 71427,automobile 71428,deer 71429,truck 71430,truck 71431,ship 71432,horse 71433,airplane 71434,airplane 71435,cat 71436,cat 71437,bird 71438,bird 71439,horse 71440,cat 71441,deer 71442,dog 71443,deer 71444,truck 71445,cat 71446,horse 71447,truck 71448,airplane 71449,truck 71450,dog 71451,frog 71452,cat 71453,deer 71454,cat 71455,truck 71456,truck 71457,frog 71458,truck 71459,truck 71460,dog 71461,automobile 71462,deer 71463,horse 71464,cat 71465,truck 71466,deer 71467,cat 71468,deer 71469,bird 71470,cat 71471,dog 71472,cat 71473,horse 71474,automobile 71475,horse 71476,deer 71477,frog 71478,bird 71479,cat 71480,dog 71481,ship 71482,frog 71483,dog 71484,airplane 71485,dog 71486,automobile 71487,horse 71488,deer 71489,truck 71490,frog 71491,cat 71492,airplane 71493,bird 71494,cat 71495,deer 71496,truck 71497,bird 71498,frog 71499,horse 71500,cat 71501,truck 71502,airplane 71503,bird 71504,automobile 71505,truck 71506,bird 71507,frog 71508,automobile 71509,automobile 71510,cat 71511,truck 71512,bird 71513,bird 71514,horse 71515,ship 71516,horse 71517,automobile 71518,automobile 71519,dog 71520,airplane 71521,automobile 71522,airplane 71523,deer 71524,frog 71525,frog 71526,truck 71527,dog 71528,bird 71529,deer 71530,bird 71531,airplane 71532,ship 71533,automobile 71534,truck 71535,cat 71536,cat 71537,airplane 71538,bird 71539,cat 71540,cat 71541,horse 71542,dog 71543,ship 71544,airplane 71545,truck 71546,automobile 71547,frog 71548,bird 71549,bird 71550,airplane 71551,automobile 71552,deer 71553,cat 71554,automobile 71555,horse 71556,truck 71557,automobile 71558,horse 71559,automobile 71560,automobile 71561,dog 71562,truck 71563,dog 71564,frog 71565,horse 71566,deer 71567,deer 71568,frog 71569,frog 71570,cat 71571,dog 71572,dog 71573,frog 71574,dog 71575,cat 71576,airplane 71577,airplane 71578,cat 71579,airplane 71580,truck 71581,frog 71582,truck 71583,ship 71584,bird 71585,bird 71586,frog 71587,truck 71588,ship 71589,bird 71590,dog 71591,dog 71592,dog 71593,cat 71594,deer 71595,dog 71596,truck 71597,bird 71598,deer 71599,cat 71600,automobile 71601,dog 71602,frog 71603,airplane 71604,bird 71605,truck 71606,automobile 71607,cat 71608,bird 71609,airplane 71610,cat 71611,automobile 71612,airplane 71613,cat 71614,horse 71615,bird 71616,automobile 71617,cat 71618,frog 71619,truck 71620,airplane 71621,deer 71622,cat 71623,ship 71624,cat 71625,deer 71626,bird 71627,horse 71628,dog 71629,airplane 71630,dog 71631,deer 71632,deer 71633,dog 71634,truck 71635,airplane 71636,truck 71637,deer 71638,bird 71639,frog 71640,frog 71641,horse 71642,bird 71643,bird 71644,deer 71645,horse 71646,automobile 71647,deer 71648,truck 71649,bird 71650,frog 71651,truck 71652,dog 71653,horse 71654,airplane 71655,horse 71656,dog 71657,dog 71658,airplane 71659,airplane 71660,deer 71661,frog 71662,truck 71663,cat 71664,dog 71665,deer 71666,cat 71667,bird 71668,cat 71669,dog 71670,airplane 71671,automobile 71672,bird 71673,automobile 71674,automobile 71675,frog 71676,ship 71677,ship 71678,automobile 71679,automobile 71680,bird 71681,deer 71682,ship 71683,truck 71684,deer 71685,dog 71686,horse 71687,cat 71688,frog 71689,bird 71690,deer 71691,ship 71692,deer 71693,dog 71694,bird 71695,airplane 71696,horse 71697,cat 71698,ship 71699,deer 71700,frog 71701,ship 71702,dog 71703,frog 71704,airplane 71705,airplane 71706,horse 71707,cat 71708,horse 71709,deer 71710,truck 71711,truck 71712,bird 71713,deer 71714,frog 71715,cat 71716,horse 71717,deer 71718,airplane 71719,airplane 71720,dog 71721,ship 71722,frog 71723,frog 71724,cat 71725,ship 71726,deer 71727,deer 71728,deer 71729,horse 71730,deer 71731,cat 71732,bird 71733,dog 71734,cat 71735,cat 71736,dog 71737,horse 71738,deer 71739,automobile 71740,dog 71741,bird 71742,cat 71743,deer 71744,frog 71745,frog 71746,bird 71747,deer 71748,deer 71749,ship 71750,airplane 71751,cat 71752,frog 71753,truck 71754,deer 71755,bird 71756,airplane 71757,bird 71758,automobile 71759,deer 71760,dog 71761,dog 71762,automobile 71763,deer 71764,truck 71765,dog 71766,automobile 71767,dog 71768,horse 71769,dog 71770,ship 71771,dog 71772,automobile 71773,horse 71774,automobile 71775,airplane 71776,truck 71777,dog 71778,cat 71779,airplane 71780,cat 71781,ship 71782,deer 71783,truck 71784,frog 71785,airplane 71786,deer 71787,cat 71788,truck 71789,truck 71790,dog 71791,horse 71792,deer 71793,deer 71794,cat 71795,frog 71796,automobile 71797,truck 71798,ship 71799,airplane 71800,cat 71801,horse 71802,frog 71803,truck 71804,truck 71805,cat 71806,bird 71807,dog 71808,cat 71809,frog 71810,bird 71811,automobile 71812,dog 71813,ship 71814,deer 71815,cat 71816,airplane 71817,horse 71818,cat 71819,automobile 71820,deer 71821,truck 71822,bird 71823,dog 71824,horse 71825,horse 71826,cat 71827,dog 71828,dog 71829,truck 71830,deer 71831,deer 71832,automobile 71833,truck 71834,deer 71835,deer 71836,truck 71837,cat 71838,deer 71839,cat 71840,ship 71841,frog 71842,deer 71843,frog 71844,airplane 71845,truck 71846,frog 71847,deer 71848,horse 71849,deer 71850,frog 71851,automobile 71852,horse 71853,deer 71854,cat 71855,truck 71856,bird 71857,airplane 71858,airplane 71859,frog 71860,airplane 71861,frog 71862,horse 71863,bird 71864,frog 71865,dog 71866,truck 71867,frog 71868,deer 71869,frog 71870,bird 71871,cat 71872,ship 71873,deer 71874,airplane 71875,frog 71876,ship 71877,bird 71878,dog 71879,deer 71880,horse 71881,horse 71882,frog 71883,cat 71884,deer 71885,airplane 71886,truck 71887,deer 71888,cat 71889,frog 71890,bird 71891,frog 71892,truck 71893,deer 71894,truck 71895,frog 71896,ship 71897,deer 71898,deer 71899,dog 71900,ship 71901,airplane 71902,deer 71903,deer 71904,cat 71905,cat 71906,deer 71907,cat 71908,ship 71909,dog 71910,cat 71911,dog 71912,bird 71913,cat 71914,horse 71915,automobile 71916,deer 71917,deer 71918,deer 71919,frog 71920,frog 71921,bird 71922,cat 71923,dog 71924,truck 71925,airplane 71926,deer 71927,truck 71928,dog 71929,truck 71930,dog 71931,cat 71932,truck 71933,cat 71934,frog 71935,bird 71936,horse 71937,horse 71938,deer 71939,bird 71940,deer 71941,frog 71942,horse 71943,cat 71944,bird 71945,airplane 71946,dog 71947,bird 71948,dog 71949,bird 71950,horse 71951,truck 71952,dog 71953,automobile 71954,airplane 71955,truck 71956,frog 71957,ship 71958,deer 71959,cat 71960,bird 71961,deer 71962,truck 71963,ship 71964,horse 71965,frog 71966,bird 71967,dog 71968,truck 71969,deer 71970,ship 71971,cat 71972,frog 71973,horse 71974,dog 71975,automobile 71976,ship 71977,truck 71978,dog 71979,deer 71980,automobile 71981,ship 71982,ship 71983,horse 71984,horse 71985,deer 71986,airplane 71987,dog 71988,bird 71989,deer 71990,frog 71991,cat 71992,cat 71993,cat 71994,cat 71995,frog 71996,deer 71997,bird 71998,horse 71999,truck 72000,deer 72001,automobile 72002,automobile 72003,deer 72004,deer 72005,cat 72006,dog 72007,horse 72008,horse 72009,dog 72010,airplane 72011,truck 72012,frog 72013,bird 72014,automobile 72015,dog 72016,cat 72017,airplane 72018,horse 72019,airplane 72020,bird 72021,deer 72022,truck 72023,airplane 72024,bird 72025,dog 72026,deer 72027,deer 72028,frog 72029,bird 72030,bird 72031,dog 72032,cat 72033,deer 72034,horse 72035,truck 72036,frog 72037,dog 72038,cat 72039,cat 72040,dog 72041,bird 72042,truck 72043,bird 72044,airplane 72045,airplane 72046,ship 72047,deer 72048,ship 72049,deer 72050,frog 72051,truck 72052,bird 72053,ship 72054,dog 72055,ship 72056,dog 72057,deer 72058,airplane 72059,ship 72060,dog 72061,deer 72062,deer 72063,horse 72064,bird 72065,frog 72066,deer 72067,dog 72068,truck 72069,airplane 72070,deer 72071,bird 72072,truck 72073,cat 72074,dog 72075,dog 72076,cat 72077,frog 72078,cat 72079,cat 72080,airplane 72081,cat 72082,bird 72083,ship 72084,bird 72085,automobile 72086,truck 72087,dog 72088,automobile 72089,automobile 72090,automobile 72091,automobile 72092,cat 72093,dog 72094,automobile 72095,automobile 72096,deer 72097,dog 72098,cat 72099,deer 72100,deer 72101,truck 72102,deer 72103,dog 72104,frog 72105,frog 72106,dog 72107,cat 72108,horse 72109,frog 72110,frog 72111,ship 72112,dog 72113,horse 72114,horse 72115,ship 72116,bird 72117,truck 72118,deer 72119,cat 72120,deer 72121,horse 72122,deer 72123,ship 72124,cat 72125,horse 72126,dog 72127,deer 72128,bird 72129,deer 72130,horse 72131,automobile 72132,airplane 72133,frog 72134,horse 72135,ship 72136,deer 72137,deer 72138,deer 72139,dog 72140,ship 72141,frog 72142,automobile 72143,frog 72144,deer 72145,horse 72146,bird 72147,deer 72148,dog 72149,dog 72150,cat 72151,bird 72152,cat 72153,truck 72154,deer 72155,automobile 72156,ship 72157,horse 72158,deer 72159,ship 72160,deer 72161,bird 72162,deer 72163,horse 72164,deer 72165,truck 72166,truck 72167,deer 72168,truck 72169,airplane 72170,deer 72171,deer 72172,frog 72173,airplane 72174,airplane 72175,automobile 72176,horse 72177,ship 72178,frog 72179,deer 72180,airplane 72181,horse 72182,bird 72183,ship 72184,bird 72185,frog 72186,deer 72187,airplane 72188,bird 72189,automobile 72190,deer 72191,bird 72192,deer 72193,automobile 72194,ship 72195,deer 72196,dog 72197,horse 72198,cat 72199,deer 72200,dog 72201,bird 72202,dog 72203,deer 72204,horse 72205,truck 72206,ship 72207,airplane 72208,truck 72209,horse 72210,deer 72211,dog 72212,automobile 72213,horse 72214,automobile 72215,automobile 72216,truck 72217,frog 72218,frog 72219,horse 72220,dog 72221,horse 72222,dog 72223,cat 72224,cat 72225,frog 72226,airplane 72227,cat 72228,dog 72229,deer 72230,automobile 72231,automobile 72232,horse 72233,frog 72234,deer 72235,truck 72236,cat 72237,airplane 72238,automobile 72239,dog 72240,bird 72241,frog 72242,deer 72243,frog 72244,bird 72245,frog 72246,deer 72247,horse 72248,automobile 72249,bird 72250,automobile 72251,frog 72252,deer 72253,horse 72254,horse 72255,cat 72256,deer 72257,truck 72258,airplane 72259,deer 72260,cat 72261,truck 72262,automobile 72263,frog 72264,deer 72265,airplane 72266,frog 72267,deer 72268,frog 72269,airplane 72270,airplane 72271,truck 72272,deer 72273,automobile 72274,frog 72275,horse 72276,dog 72277,frog 72278,cat 72279,horse 72280,deer 72281,dog 72282,cat 72283,truck 72284,deer 72285,deer 72286,truck 72287,cat 72288,deer 72289,ship 72290,frog 72291,automobile 72292,bird 72293,truck 72294,horse 72295,dog 72296,cat 72297,horse 72298,dog 72299,horse 72300,frog 72301,cat 72302,horse 72303,horse 72304,truck 72305,frog 72306,deer 72307,bird 72308,horse 72309,bird 72310,airplane 72311,deer 72312,automobile 72313,ship 72314,horse 72315,deer 72316,ship 72317,deer 72318,cat 72319,ship 72320,frog 72321,automobile 72322,dog 72323,deer 72324,deer 72325,truck 72326,bird 72327,cat 72328,ship 72329,horse 72330,deer 72331,frog 72332,deer 72333,deer 72334,frog 72335,horse 72336,horse 72337,airplane 72338,truck 72339,frog 72340,frog 72341,airplane 72342,ship 72343,cat 72344,ship 72345,ship 72346,truck 72347,airplane 72348,airplane 72349,cat 72350,cat 72351,deer 72352,frog 72353,frog 72354,deer 72355,deer 72356,truck 72357,truck 72358,airplane 72359,ship 72360,ship 72361,dog 72362,dog 72363,dog 72364,truck 72365,truck 72366,frog 72367,truck 72368,deer 72369,dog 72370,cat 72371,frog 72372,truck 72373,frog 72374,frog 72375,deer 72376,dog 72377,deer 72378,frog 72379,truck 72380,horse 72381,bird 72382,dog 72383,horse 72384,dog 72385,cat 72386,deer 72387,truck 72388,dog 72389,horse 72390,ship 72391,horse 72392,cat 72393,truck 72394,dog 72395,truck 72396,dog 72397,horse 72398,dog 72399,frog 72400,truck 72401,bird 72402,dog 72403,frog 72404,deer 72405,automobile 72406,dog 72407,airplane 72408,truck 72409,dog 72410,deer 72411,cat 72412,ship 72413,ship 72414,frog 72415,ship 72416,cat 72417,deer 72418,dog 72419,cat 72420,truck 72421,horse 72422,truck 72423,dog 72424,ship 72425,airplane 72426,deer 72427,deer 72428,cat 72429,bird 72430,frog 72431,cat 72432,frog 72433,deer 72434,deer 72435,truck 72436,truck 72437,dog 72438,ship 72439,truck 72440,truck 72441,frog 72442,deer 72443,bird 72444,dog 72445,horse 72446,bird 72447,deer 72448,dog 72449,cat 72450,dog 72451,frog 72452,automobile 72453,ship 72454,dog 72455,deer 72456,truck 72457,airplane 72458,frog 72459,dog 72460,automobile 72461,frog 72462,deer 72463,horse 72464,automobile 72465,frog 72466,cat 72467,truck 72468,deer 72469,airplane 72470,deer 72471,deer 72472,horse 72473,cat 72474,ship 72475,frog 72476,deer 72477,automobile 72478,cat 72479,frog 72480,ship 72481,horse 72482,bird 72483,truck 72484,airplane 72485,frog 72486,truck 72487,frog 72488,frog 72489,bird 72490,truck 72491,deer 72492,cat 72493,dog 72494,automobile 72495,deer 72496,ship 72497,frog 72498,dog 72499,bird 72500,airplane 72501,airplane 72502,cat 72503,horse 72504,truck 72505,truck 72506,horse 72507,frog 72508,ship 72509,dog 72510,automobile 72511,bird 72512,horse 72513,automobile 72514,bird 72515,airplane 72516,frog 72517,airplane 72518,truck 72519,ship 72520,ship 72521,frog 72522,frog 72523,airplane 72524,truck 72525,frog 72526,bird 72527,ship 72528,dog 72529,truck 72530,automobile 72531,airplane 72532,frog 72533,airplane 72534,airplane 72535,deer 72536,bird 72537,cat 72538,bird 72539,deer 72540,deer 72541,truck 72542,deer 72543,dog 72544,truck 72545,deer 72546,horse 72547,dog 72548,bird 72549,horse 72550,deer 72551,frog 72552,cat 72553,bird 72554,automobile 72555,ship 72556,ship 72557,horse 72558,airplane 72559,dog 72560,automobile 72561,automobile 72562,deer 72563,automobile 72564,bird 72565,horse 72566,cat 72567,cat 72568,horse 72569,bird 72570,bird 72571,deer 72572,horse 72573,cat 72574,bird 72575,cat 72576,cat 72577,dog 72578,automobile 72579,truck 72580,horse 72581,ship 72582,deer 72583,deer 72584,frog 72585,airplane 72586,cat 72587,horse 72588,bird 72589,automobile 72590,airplane 72591,dog 72592,dog 72593,ship 72594,truck 72595,frog 72596,deer 72597,frog 72598,deer 72599,airplane 72600,dog 72601,truck 72602,horse 72603,deer 72604,airplane 72605,cat 72606,automobile 72607,frog 72608,ship 72609,dog 72610,frog 72611,automobile 72612,dog 72613,cat 72614,automobile 72615,cat 72616,dog 72617,truck 72618,airplane 72619,deer 72620,dog 72621,cat 72622,ship 72623,airplane 72624,airplane 72625,horse 72626,deer 72627,truck 72628,cat 72629,dog 72630,cat 72631,horse 72632,airplane 72633,horse 72634,deer 72635,frog 72636,frog 72637,deer 72638,frog 72639,frog 72640,cat 72641,deer 72642,ship 72643,bird 72644,frog 72645,ship 72646,truck 72647,bird 72648,horse 72649,truck 72650,cat 72651,cat 72652,bird 72653,dog 72654,horse 72655,truck 72656,dog 72657,deer 72658,frog 72659,truck 72660,dog 72661,deer 72662,cat 72663,cat 72664,bird 72665,deer 72666,ship 72667,airplane 72668,dog 72669,horse 72670,cat 72671,cat 72672,truck 72673,ship 72674,truck 72675,truck 72676,horse 72677,ship 72678,deer 72679,bird 72680,frog 72681,airplane 72682,deer 72683,automobile 72684,automobile 72685,airplane 72686,dog 72687,truck 72688,ship 72689,cat 72690,automobile 72691,dog 72692,deer 72693,truck 72694,automobile 72695,airplane 72696,horse 72697,deer 72698,airplane 72699,truck 72700,airplane 72701,deer 72702,automobile 72703,dog 72704,airplane 72705,cat 72706,airplane 72707,ship 72708,airplane 72709,dog 72710,airplane 72711,airplane 72712,ship 72713,deer 72714,horse 72715,deer 72716,deer 72717,horse 72718,frog 72719,cat 72720,truck 72721,cat 72722,horse 72723,ship 72724,dog 72725,ship 72726,bird 72727,horse 72728,frog 72729,ship 72730,truck 72731,airplane 72732,cat 72733,bird 72734,frog 72735,dog 72736,horse 72737,bird 72738,deer 72739,automobile 72740,cat 72741,cat 72742,automobile 72743,truck 72744,ship 72745,horse 72746,deer 72747,frog 72748,frog 72749,ship 72750,automobile 72751,airplane 72752,truck 72753,airplane 72754,frog 72755,frog 72756,horse 72757,frog 72758,bird 72759,airplane 72760,truck 72761,bird 72762,dog 72763,bird 72764,bird 72765,horse 72766,ship 72767,airplane 72768,automobile 72769,truck 72770,cat 72771,horse 72772,horse 72773,dog 72774,dog 72775,airplane 72776,bird 72777,truck 72778,truck 72779,deer 72780,dog 72781,airplane 72782,bird 72783,deer 72784,cat 72785,bird 72786,cat 72787,deer 72788,ship 72789,cat 72790,horse 72791,dog 72792,truck 72793,horse 72794,deer 72795,horse 72796,deer 72797,deer 72798,frog 72799,deer 72800,cat 72801,deer 72802,automobile 72803,deer 72804,horse 72805,deer 72806,truck 72807,frog 72808,deer 72809,dog 72810,frog 72811,cat 72812,deer 72813,cat 72814,deer 72815,automobile 72816,cat 72817,airplane 72818,frog 72819,frog 72820,airplane 72821,dog 72822,deer 72823,airplane 72824,deer 72825,truck 72826,horse 72827,bird 72828,automobile 72829,truck 72830,dog 72831,airplane 72832,cat 72833,truck 72834,airplane 72835,cat 72836,cat 72837,deer 72838,dog 72839,dog 72840,bird 72841,truck 72842,bird 72843,deer 72844,frog 72845,bird 72846,ship 72847,truck 72848,truck 72849,bird 72850,airplane 72851,truck 72852,cat 72853,cat 72854,deer 72855,deer 72856,deer 72857,frog 72858,deer 72859,truck 72860,airplane 72861,automobile 72862,truck 72863,frog 72864,dog 72865,dog 72866,cat 72867,deer 72868,dog 72869,horse 72870,deer 72871,truck 72872,cat 72873,dog 72874,dog 72875,cat 72876,deer 72877,frog 72878,automobile 72879,deer 72880,frog 72881,frog 72882,truck 72883,airplane 72884,bird 72885,frog 72886,dog 72887,dog 72888,ship 72889,horse 72890,deer 72891,cat 72892,automobile 72893,horse 72894,cat 72895,truck 72896,truck 72897,horse 72898,horse 72899,truck 72900,automobile 72901,dog 72902,bird 72903,cat 72904,bird 72905,ship 72906,frog 72907,airplane 72908,cat 72909,airplane 72910,bird 72911,airplane 72912,frog 72913,dog 72914,automobile 72915,frog 72916,bird 72917,ship 72918,cat 72919,ship 72920,bird 72921,airplane 72922,bird 72923,cat 72924,truck 72925,cat 72926,deer 72927,frog 72928,frog 72929,cat 72930,deer 72931,truck 72932,truck 72933,truck 72934,deer 72935,horse 72936,ship 72937,airplane 72938,dog 72939,frog 72940,bird 72941,dog 72942,dog 72943,frog 72944,cat 72945,truck 72946,frog 72947,deer 72948,bird 72949,bird 72950,airplane 72951,horse 72952,truck 72953,ship 72954,truck 72955,horse 72956,deer 72957,dog 72958,airplane 72959,horse 72960,horse 72961,bird 72962,ship 72963,deer 72964,truck 72965,frog 72966,truck 72967,ship 72968,horse 72969,truck 72970,frog 72971,deer 72972,airplane 72973,deer 72974,deer 72975,horse 72976,truck 72977,truck 72978,frog 72979,deer 72980,deer 72981,deer 72982,frog 72983,truck 72984,cat 72985,automobile 72986,horse 72987,deer 72988,ship 72989,frog 72990,ship 72991,ship 72992,dog 72993,deer 72994,frog 72995,ship 72996,frog 72997,deer 72998,dog 72999,automobile 73000,truck 73001,ship 73002,horse 73003,automobile 73004,deer 73005,cat 73006,frog 73007,cat 73008,bird 73009,truck 73010,dog 73011,cat 73012,deer 73013,cat 73014,deer 73015,truck 73016,horse 73017,dog 73018,deer 73019,horse 73020,deer 73021,airplane 73022,deer 73023,dog 73024,deer 73025,ship 73026,deer 73027,truck 73028,frog 73029,deer 73030,frog 73031,cat 73032,ship 73033,cat 73034,horse 73035,deer 73036,deer 73037,deer 73038,deer 73039,truck 73040,frog 73041,horse 73042,horse 73043,horse 73044,automobile 73045,airplane 73046,frog 73047,horse 73048,frog 73049,automobile 73050,dog 73051,frog 73052,cat 73053,cat 73054,truck 73055,deer 73056,horse 73057,truck 73058,horse 73059,truck 73060,frog 73061,bird 73062,deer 73063,dog 73064,airplane 73065,dog 73066,dog 73067,horse 73068,horse 73069,deer 73070,cat 73071,dog 73072,dog 73073,automobile 73074,airplane 73075,truck 73076,horse 73077,airplane 73078,ship 73079,frog 73080,automobile 73081,dog 73082,cat 73083,bird 73084,airplane 73085,deer 73086,ship 73087,horse 73088,airplane 73089,airplane 73090,deer 73091,cat 73092,frog 73093,cat 73094,truck 73095,dog 73096,deer 73097,deer 73098,horse 73099,deer 73100,frog 73101,cat 73102,truck 73103,deer 73104,airplane 73105,cat 73106,automobile 73107,deer 73108,horse 73109,airplane 73110,deer 73111,dog 73112,cat 73113,cat 73114,frog 73115,horse 73116,deer 73117,airplane 73118,deer 73119,truck 73120,frog 73121,ship 73122,cat 73123,airplane 73124,dog 73125,deer 73126,cat 73127,deer 73128,truck 73129,truck 73130,horse 73131,airplane 73132,horse 73133,dog 73134,frog 73135,bird 73136,truck 73137,bird 73138,automobile 73139,horse 73140,airplane 73141,cat 73142,airplane 73143,horse 73144,bird 73145,frog 73146,bird 73147,dog 73148,airplane 73149,deer 73150,dog 73151,frog 73152,bird 73153,ship 73154,horse 73155,dog 73156,automobile 73157,bird 73158,dog 73159,deer 73160,dog 73161,deer 73162,bird 73163,truck 73164,automobile 73165,cat 73166,ship 73167,airplane 73168,ship 73169,automobile 73170,frog 73171,horse 73172,bird 73173,automobile 73174,deer 73175,cat 73176,deer 73177,dog 73178,horse 73179,airplane 73180,airplane 73181,horse 73182,bird 73183,frog 73184,cat 73185,frog 73186,airplane 73187,dog 73188,deer 73189,airplane 73190,frog 73191,airplane 73192,deer 73193,automobile 73194,deer 73195,deer 73196,deer 73197,cat 73198,truck 73199,cat 73200,truck 73201,frog 73202,automobile 73203,automobile 73204,bird 73205,deer 73206,cat 73207,ship 73208,bird 73209,deer 73210,automobile 73211,cat 73212,deer 73213,frog 73214,cat 73215,deer 73216,ship 73217,dog 73218,dog 73219,horse 73220,airplane 73221,deer 73222,cat 73223,ship 73224,horse 73225,horse 73226,frog 73227,bird 73228,dog 73229,dog 73230,frog 73231,frog 73232,bird 73233,horse 73234,deer 73235,deer 73236,cat 73237,bird 73238,cat 73239,bird 73240,deer 73241,frog 73242,dog 73243,dog 73244,airplane 73245,cat 73246,horse 73247,dog 73248,dog 73249,frog 73250,deer 73251,deer 73252,horse 73253,ship 73254,horse 73255,automobile 73256,deer 73257,airplane 73258,bird 73259,dog 73260,deer 73261,bird 73262,automobile 73263,horse 73264,cat 73265,frog 73266,truck 73267,truck 73268,cat 73269,cat 73270,bird 73271,dog 73272,horse 73273,truck 73274,ship 73275,cat 73276,dog 73277,bird 73278,deer 73279,ship 73280,cat 73281,dog 73282,deer 73283,deer 73284,deer 73285,deer 73286,truck 73287,automobile 73288,horse 73289,airplane 73290,frog 73291,truck 73292,airplane 73293,dog 73294,airplane 73295,dog 73296,frog 73297,automobile 73298,cat 73299,dog 73300,cat 73301,bird 73302,automobile 73303,truck 73304,dog 73305,automobile 73306,bird 73307,cat 73308,cat 73309,ship 73310,automobile 73311,dog 73312,dog 73313,dog 73314,truck 73315,airplane 73316,horse 73317,deer 73318,dog 73319,deer 73320,dog 73321,frog 73322,cat 73323,frog 73324,truck 73325,bird 73326,deer 73327,frog 73328,dog 73329,dog 73330,airplane 73331,dog 73332,deer 73333,cat 73334,deer 73335,deer 73336,truck 73337,dog 73338,airplane 73339,truck 73340,airplane 73341,horse 73342,cat 73343,ship 73344,cat 73345,horse 73346,frog 73347,automobile 73348,dog 73349,deer 73350,bird 73351,deer 73352,cat 73353,frog 73354,cat 73355,frog 73356,automobile 73357,frog 73358,airplane 73359,frog 73360,horse 73361,dog 73362,cat 73363,cat 73364,deer 73365,frog 73366,deer 73367,frog 73368,deer 73369,deer 73370,deer 73371,horse 73372,frog 73373,dog 73374,horse 73375,ship 73376,airplane 73377,dog 73378,bird 73379,deer 73380,frog 73381,cat 73382,airplane 73383,dog 73384,automobile 73385,cat 73386,dog 73387,bird 73388,airplane 73389,truck 73390,horse 73391,dog 73392,dog 73393,bird 73394,horse 73395,ship 73396,cat 73397,automobile 73398,frog 73399,deer 73400,ship 73401,frog 73402,horse 73403,bird 73404,frog 73405,bird 73406,airplane 73407,frog 73408,deer 73409,airplane 73410,truck 73411,automobile 73412,dog 73413,frog 73414,truck 73415,automobile 73416,cat 73417,dog 73418,bird 73419,horse 73420,horse 73421,automobile 73422,bird 73423,deer 73424,horse 73425,automobile 73426,cat 73427,ship 73428,cat 73429,cat 73430,frog 73431,frog 73432,cat 73433,cat 73434,cat 73435,cat 73436,ship 73437,airplane 73438,truck 73439,cat 73440,bird 73441,airplane 73442,horse 73443,deer 73444,bird 73445,horse 73446,bird 73447,automobile 73448,horse 73449,deer 73450,truck 73451,automobile 73452,horse 73453,airplane 73454,deer 73455,automobile 73456,frog 73457,airplane 73458,horse 73459,dog 73460,deer 73461,cat 73462,deer 73463,bird 73464,frog 73465,cat 73466,automobile 73467,frog 73468,airplane 73469,frog 73470,horse 73471,truck 73472,horse 73473,horse 73474,dog 73475,cat 73476,cat 73477,cat 73478,bird 73479,truck 73480,ship 73481,horse 73482,frog 73483,frog 73484,frog 73485,bird 73486,cat 73487,horse 73488,deer 73489,deer 73490,dog 73491,automobile 73492,horse 73493,truck 73494,cat 73495,deer 73496,deer 73497,frog 73498,deer 73499,horse 73500,horse 73501,dog 73502,automobile 73503,truck 73504,airplane 73505,bird 73506,dog 73507,horse 73508,automobile 73509,deer 73510,deer 73511,automobile 73512,truck 73513,dog 73514,dog 73515,dog 73516,cat 73517,ship 73518,automobile 73519,dog 73520,deer 73521,bird 73522,airplane 73523,automobile 73524,airplane 73525,automobile 73526,deer 73527,bird 73528,cat 73529,deer 73530,truck 73531,deer 73532,cat 73533,cat 73534,horse 73535,dog 73536,dog 73537,bird 73538,cat 73539,frog 73540,cat 73541,deer 73542,automobile 73543,automobile 73544,bird 73545,dog 73546,truck 73547,bird 73548,horse 73549,airplane 73550,airplane 73551,truck 73552,truck 73553,truck 73554,truck 73555,automobile 73556,truck 73557,airplane 73558,airplane 73559,dog 73560,airplane 73561,deer 73562,automobile 73563,truck 73564,deer 73565,truck 73566,frog 73567,dog 73568,truck 73569,horse 73570,ship 73571,frog 73572,automobile 73573,truck 73574,deer 73575,horse 73576,truck 73577,truck 73578,frog 73579,ship 73580,frog 73581,airplane 73582,cat 73583,truck 73584,automobile 73585,frog 73586,horse 73587,deer 73588,frog 73589,truck 73590,frog 73591,horse 73592,cat 73593,ship 73594,frog 73595,frog 73596,deer 73597,cat 73598,dog 73599,deer 73600,cat 73601,dog 73602,dog 73603,automobile 73604,frog 73605,horse 73606,automobile 73607,horse 73608,horse 73609,horse 73610,ship 73611,truck 73612,bird 73613,horse 73614,airplane 73615,automobile 73616,frog 73617,deer 73618,cat 73619,frog 73620,deer 73621,ship 73622,ship 73623,cat 73624,horse 73625,airplane 73626,ship 73627,horse 73628,automobile 73629,ship 73630,dog 73631,deer 73632,automobile 73633,truck 73634,automobile 73635,dog 73636,dog 73637,frog 73638,bird 73639,horse 73640,truck 73641,cat 73642,airplane 73643,frog 73644,truck 73645,automobile 73646,dog 73647,horse 73648,horse 73649,frog 73650,truck 73651,dog 73652,airplane 73653,automobile 73654,automobile 73655,automobile 73656,cat 73657,frog 73658,truck 73659,airplane 73660,horse 73661,truck 73662,deer 73663,frog 73664,deer 73665,cat 73666,horse 73667,bird 73668,horse 73669,deer 73670,horse 73671,dog 73672,frog 73673,truck 73674,deer 73675,airplane 73676,dog 73677,truck 73678,cat 73679,dog 73680,dog 73681,bird 73682,dog 73683,cat 73684,frog 73685,frog 73686,deer 73687,automobile 73688,deer 73689,airplane 73690,cat 73691,cat 73692,frog 73693,airplane 73694,horse 73695,dog 73696,cat 73697,horse 73698,ship 73699,truck 73700,automobile 73701,automobile 73702,horse 73703,airplane 73704,deer 73705,airplane 73706,ship 73707,cat 73708,ship 73709,cat 73710,truck 73711,truck 73712,cat 73713,airplane 73714,horse 73715,frog 73716,frog 73717,deer 73718,truck 73719,cat 73720,automobile 73721,deer 73722,horse 73723,frog 73724,frog 73725,deer 73726,ship 73727,airplane 73728,frog 73729,deer 73730,bird 73731,frog 73732,automobile 73733,frog 73734,airplane 73735,deer 73736,bird 73737,airplane 73738,airplane 73739,deer 73740,automobile 73741,frog 73742,truck 73743,dog 73744,dog 73745,cat 73746,frog 73747,automobile 73748,cat 73749,deer 73750,bird 73751,horse 73752,frog 73753,dog 73754,dog 73755,frog 73756,bird 73757,truck 73758,ship 73759,cat 73760,horse 73761,truck 73762,dog 73763,deer 73764,ship 73765,cat 73766,frog 73767,truck 73768,ship 73769,airplane 73770,deer 73771,cat 73772,ship 73773,frog 73774,deer 73775,deer 73776,automobile 73777,ship 73778,deer 73779,frog 73780,automobile 73781,horse 73782,airplane 73783,horse 73784,cat 73785,dog 73786,dog 73787,airplane 73788,dog 73789,ship 73790,deer 73791,truck 73792,automobile 73793,ship 73794,frog 73795,deer 73796,airplane 73797,frog 73798,truck 73799,dog 73800,cat 73801,ship 73802,cat 73803,horse 73804,deer 73805,bird 73806,truck 73807,dog 73808,deer 73809,cat 73810,airplane 73811,automobile 73812,truck 73813,cat 73814,dog 73815,bird 73816,cat 73817,ship 73818,dog 73819,horse 73820,truck 73821,bird 73822,frog 73823,cat 73824,airplane 73825,dog 73826,dog 73827,truck 73828,deer 73829,ship 73830,dog 73831,airplane 73832,dog 73833,horse 73834,deer 73835,airplane 73836,horse 73837,deer 73838,cat 73839,cat 73840,dog 73841,truck 73842,truck 73843,frog 73844,truck 73845,cat 73846,frog 73847,truck 73848,automobile 73849,horse 73850,frog 73851,frog 73852,frog 73853,airplane 73854,dog 73855,deer 73856,horse 73857,frog 73858,airplane 73859,ship 73860,dog 73861,ship 73862,cat 73863,frog 73864,truck 73865,horse 73866,frog 73867,ship 73868,ship 73869,automobile 73870,bird 73871,ship 73872,bird 73873,dog 73874,dog 73875,ship 73876,truck 73877,cat 73878,truck 73879,horse 73880,ship 73881,cat 73882,bird 73883,airplane 73884,dog 73885,dog 73886,truck 73887,cat 73888,frog 73889,deer 73890,deer 73891,truck 73892,bird 73893,ship 73894,ship 73895,dog 73896,bird 73897,deer 73898,frog 73899,frog 73900,dog 73901,cat 73902,cat 73903,truck 73904,truck 73905,ship 73906,deer 73907,cat 73908,airplane 73909,truck 73910,deer 73911,horse 73912,frog 73913,frog 73914,cat 73915,bird 73916,frog 73917,ship 73918,ship 73919,deer 73920,dog 73921,truck 73922,cat 73923,deer 73924,dog 73925,frog 73926,deer 73927,cat 73928,cat 73929,cat 73930,horse 73931,ship 73932,truck 73933,deer 73934,deer 73935,truck 73936,deer 73937,ship 73938,ship 73939,cat 73940,bird 73941,automobile 73942,frog 73943,frog 73944,horse 73945,airplane 73946,horse 73947,ship 73948,frog 73949,frog 73950,frog 73951,bird 73952,bird 73953,automobile 73954,airplane 73955,bird 73956,cat 73957,truck 73958,frog 73959,truck 73960,ship 73961,deer 73962,truck 73963,bird 73964,deer 73965,cat 73966,ship 73967,airplane 73968,airplane 73969,frog 73970,dog 73971,horse 73972,deer 73973,dog 73974,deer 73975,dog 73976,airplane 73977,deer 73978,bird 73979,ship 73980,ship 73981,ship 73982,airplane 73983,truck 73984,deer 73985,dog 73986,cat 73987,bird 73988,cat 73989,deer 73990,dog 73991,airplane 73992,frog 73993,bird 73994,automobile 73995,deer 73996,bird 73997,automobile 73998,automobile 73999,deer 74000,cat 74001,ship 74002,bird 74003,cat 74004,deer 74005,truck 74006,cat 74007,cat 74008,horse 74009,bird 74010,automobile 74011,dog 74012,ship 74013,dog 74014,cat 74015,ship 74016,cat 74017,airplane 74018,horse 74019,deer 74020,truck 74021,dog 74022,deer 74023,deer 74024,cat 74025,frog 74026,dog 74027,cat 74028,truck 74029,airplane 74030,deer 74031,dog 74032,truck 74033,truck 74034,horse 74035,dog 74036,horse 74037,frog 74038,ship 74039,deer 74040,automobile 74041,truck 74042,cat 74043,frog 74044,dog 74045,automobile 74046,truck 74047,deer 74048,automobile 74049,airplane 74050,dog 74051,frog 74052,dog 74053,truck 74054,cat 74055,automobile 74056,cat 74057,airplane 74058,dog 74059,dog 74060,bird 74061,frog 74062,dog 74063,deer 74064,deer 74065,bird 74066,frog 74067,bird 74068,cat 74069,horse 74070,deer 74071,airplane 74072,deer 74073,frog 74074,dog 74075,cat 74076,deer 74077,frog 74078,cat 74079,bird 74080,ship 74081,deer 74082,bird 74083,frog 74084,automobile 74085,cat 74086,dog 74087,ship 74088,airplane 74089,airplane 74090,cat 74091,ship 74092,frog 74093,deer 74094,frog 74095,truck 74096,deer 74097,horse 74098,bird 74099,bird 74100,automobile 74101,deer 74102,frog 74103,airplane 74104,bird 74105,dog 74106,airplane 74107,truck 74108,truck 74109,automobile 74110,deer 74111,bird 74112,dog 74113,deer 74114,automobile 74115,automobile 74116,airplane 74117,bird 74118,frog 74119,bird 74120,cat 74121,horse 74122,cat 74123,dog 74124,truck 74125,frog 74126,automobile 74127,automobile 74128,deer 74129,horse 74130,dog 74131,dog 74132,truck 74133,deer 74134,ship 74135,horse 74136,cat 74137,airplane 74138,deer 74139,ship 74140,cat 74141,truck 74142,ship 74143,automobile 74144,automobile 74145,cat 74146,ship 74147,frog 74148,truck 74149,dog 74150,deer 74151,cat 74152,deer 74153,frog 74154,airplane 74155,bird 74156,dog 74157,airplane 74158,deer 74159,deer 74160,cat 74161,frog 74162,horse 74163,airplane 74164,deer 74165,airplane 74166,truck 74167,ship 74168,automobile 74169,deer 74170,automobile 74171,horse 74172,deer 74173,frog 74174,frog 74175,horse 74176,truck 74177,horse 74178,bird 74179,automobile 74180,automobile 74181,deer 74182,cat 74183,cat 74184,deer 74185,frog 74186,cat 74187,frog 74188,cat 74189,horse 74190,frog 74191,cat 74192,cat 74193,dog 74194,horse 74195,ship 74196,truck 74197,ship 74198,cat 74199,frog 74200,dog 74201,horse 74202,frog 74203,cat 74204,ship 74205,cat 74206,deer 74207,bird 74208,dog 74209,deer 74210,truck 74211,frog 74212,airplane 74213,bird 74214,automobile 74215,dog 74216,deer 74217,deer 74218,ship 74219,horse 74220,frog 74221,bird 74222,ship 74223,cat 74224,automobile 74225,deer 74226,cat 74227,deer 74228,dog 74229,deer 74230,dog 74231,dog 74232,horse 74233,bird 74234,bird 74235,frog 74236,airplane 74237,deer 74238,cat 74239,airplane 74240,frog 74241,horse 74242,ship 74243,truck 74244,horse 74245,frog 74246,cat 74247,horse 74248,frog 74249,horse 74250,airplane 74251,frog 74252,bird 74253,truck 74254,truck 74255,cat 74256,airplane 74257,horse 74258,automobile 74259,deer 74260,automobile 74261,frog 74262,horse 74263,frog 74264,bird 74265,frog 74266,automobile 74267,deer 74268,cat 74269,cat 74270,dog 74271,ship 74272,dog 74273,deer 74274,bird 74275,airplane 74276,dog 74277,truck 74278,frog 74279,ship 74280,truck 74281,cat 74282,bird 74283,cat 74284,dog 74285,deer 74286,ship 74287,frog 74288,horse 74289,truck 74290,dog 74291,frog 74292,frog 74293,airplane 74294,frog 74295,frog 74296,frog 74297,ship 74298,truck 74299,airplane 74300,cat 74301,ship 74302,bird 74303,ship 74304,horse 74305,cat 74306,cat 74307,frog 74308,dog 74309,automobile 74310,cat 74311,horse 74312,truck 74313,bird 74314,dog 74315,truck 74316,ship 74317,frog 74318,airplane 74319,dog 74320,bird 74321,automobile 74322,automobile 74323,deer 74324,deer 74325,deer 74326,bird 74327,deer 74328,cat 74329,dog 74330,airplane 74331,airplane 74332,ship 74333,frog 74334,airplane 74335,truck 74336,truck 74337,automobile 74338,horse 74339,dog 74340,cat 74341,frog 74342,horse 74343,horse 74344,ship 74345,ship 74346,automobile 74347,ship 74348,truck 74349,horse 74350,automobile 74351,automobile 74352,deer 74353,horse 74354,ship 74355,cat 74356,cat 74357,frog 74358,airplane 74359,cat 74360,truck 74361,frog 74362,deer 74363,cat 74364,dog 74365,dog 74366,frog 74367,deer 74368,truck 74369,truck 74370,frog 74371,bird 74372,cat 74373,truck 74374,frog 74375,ship 74376,dog 74377,ship 74378,cat 74379,cat 74380,dog 74381,truck 74382,horse 74383,horse 74384,dog 74385,airplane 74386,ship 74387,truck 74388,cat 74389,truck 74390,deer 74391,truck 74392,cat 74393,dog 74394,frog 74395,cat 74396,horse 74397,ship 74398,dog 74399,dog 74400,cat 74401,frog 74402,truck 74403,dog 74404,frog 74405,dog 74406,truck 74407,deer 74408,automobile 74409,frog 74410,truck 74411,deer 74412,cat 74413,truck 74414,truck 74415,frog 74416,frog 74417,airplane 74418,deer 74419,dog 74420,airplane 74421,horse 74422,dog 74423,dog 74424,cat 74425,dog 74426,cat 74427,frog 74428,cat 74429,deer 74430,bird 74431,deer 74432,deer 74433,frog 74434,truck 74435,automobile 74436,ship 74437,truck 74438,deer 74439,deer 74440,frog 74441,horse 74442,dog 74443,cat 74444,dog 74445,truck 74446,dog 74447,truck 74448,automobile 74449,horse 74450,deer 74451,bird 74452,deer 74453,ship 74454,deer 74455,deer 74456,dog 74457,ship 74458,frog 74459,deer 74460,cat 74461,frog 74462,truck 74463,dog 74464,horse 74465,deer 74466,bird 74467,cat 74468,deer 74469,airplane 74470,dog 74471,deer 74472,dog 74473,truck 74474,truck 74475,automobile 74476,deer 74477,truck 74478,horse 74479,deer 74480,airplane 74481,cat 74482,horse 74483,frog 74484,horse 74485,bird 74486,horse 74487,truck 74488,deer 74489,horse 74490,deer 74491,dog 74492,ship 74493,ship 74494,frog 74495,frog 74496,dog 74497,ship 74498,dog 74499,deer 74500,airplane 74501,ship 74502,cat 74503,automobile 74504,cat 74505,ship 74506,ship 74507,ship 74508,cat 74509,ship 74510,airplane 74511,horse 74512,deer 74513,frog 74514,frog 74515,airplane 74516,ship 74517,cat 74518,cat 74519,deer 74520,horse 74521,cat 74522,deer 74523,deer 74524,frog 74525,dog 74526,deer 74527,cat 74528,frog 74529,airplane 74530,bird 74531,frog 74532,ship 74533,automobile 74534,frog 74535,automobile 74536,deer 74537,automobile 74538,cat 74539,frog 74540,frog 74541,dog 74542,dog 74543,frog 74544,airplane 74545,truck 74546,frog 74547,ship 74548,truck 74549,truck 74550,dog 74551,automobile 74552,airplane 74553,dog 74554,bird 74555,deer 74556,deer 74557,ship 74558,ship 74559,frog 74560,deer 74561,airplane 74562,ship 74563,airplane 74564,truck 74565,horse 74566,dog 74567,frog 74568,horse 74569,cat 74570,truck 74571,dog 74572,deer 74573,cat 74574,cat 74575,frog 74576,horse 74577,dog 74578,deer 74579,truck 74580,automobile 74581,deer 74582,automobile 74583,cat 74584,deer 74585,ship 74586,bird 74587,cat 74588,ship 74589,bird 74590,deer 74591,truck 74592,frog 74593,dog 74594,deer 74595,deer 74596,cat 74597,frog 74598,airplane 74599,airplane 74600,ship 74601,airplane 74602,frog 74603,frog 74604,deer 74605,dog 74606,airplane 74607,automobile 74608,deer 74609,truck 74610,dog 74611,automobile 74612,dog 74613,horse 74614,truck 74615,dog 74616,bird 74617,automobile 74618,truck 74619,deer 74620,truck 74621,airplane 74622,cat 74623,bird 74624,airplane 74625,automobile 74626,cat 74627,frog 74628,cat 74629,dog 74630,deer 74631,automobile 74632,frog 74633,ship 74634,automobile 74635,truck 74636,cat 74637,bird 74638,cat 74639,truck 74640,airplane 74641,automobile 74642,ship 74643,dog 74644,cat 74645,automobile 74646,cat 74647,automobile 74648,ship 74649,deer 74650,dog 74651,deer 74652,horse 74653,cat 74654,frog 74655,deer 74656,cat 74657,ship 74658,dog 74659,horse 74660,cat 74661,cat 74662,airplane 74663,cat 74664,bird 74665,frog 74666,ship 74667,deer 74668,truck 74669,deer 74670,horse 74671,cat 74672,horse 74673,ship 74674,cat 74675,deer 74676,deer 74677,truck 74678,ship 74679,cat 74680,deer 74681,truck 74682,horse 74683,truck 74684,airplane 74685,truck 74686,truck 74687,dog 74688,deer 74689,dog 74690,ship 74691,bird 74692,ship 74693,frog 74694,frog 74695,deer 74696,deer 74697,automobile 74698,ship 74699,cat 74700,frog 74701,ship 74702,bird 74703,bird 74704,frog 74705,airplane 74706,frog 74707,bird 74708,deer 74709,deer 74710,dog 74711,airplane 74712,dog 74713,bird 74714,airplane 74715,truck 74716,cat 74717,frog 74718,truck 74719,horse 74720,ship 74721,airplane 74722,cat 74723,deer 74724,ship 74725,deer 74726,horse 74727,truck 74728,truck 74729,dog 74730,airplane 74731,deer 74732,ship 74733,bird 74734,cat 74735,frog 74736,cat 74737,bird 74738,horse 74739,automobile 74740,deer 74741,frog 74742,airplane 74743,truck 74744,cat 74745,horse 74746,deer 74747,bird 74748,ship 74749,dog 74750,ship 74751,cat 74752,deer 74753,truck 74754,truck 74755,frog 74756,bird 74757,frog 74758,automobile 74759,frog 74760,horse 74761,automobile 74762,automobile 74763,automobile 74764,horse 74765,truck 74766,deer 74767,airplane 74768,deer 74769,deer 74770,bird 74771,cat 74772,truck 74773,frog 74774,frog 74775,airplane 74776,airplane 74777,horse 74778,horse 74779,ship 74780,truck 74781,frog 74782,truck 74783,dog 74784,ship 74785,airplane 74786,ship 74787,cat 74788,cat 74789,frog 74790,dog 74791,cat 74792,frog 74793,deer 74794,frog 74795,dog 74796,horse 74797,cat 74798,cat 74799,frog 74800,ship 74801,dog 74802,deer 74803,frog 74804,bird 74805,truck 74806,frog 74807,dog 74808,automobile 74809,frog 74810,automobile 74811,airplane 74812,airplane 74813,deer 74814,deer 74815,ship 74816,deer 74817,deer 74818,airplane 74819,horse 74820,deer 74821,horse 74822,automobile 74823,dog 74824,dog 74825,horse 74826,dog 74827,cat 74828,airplane 74829,automobile 74830,bird 74831,deer 74832,horse 74833,dog 74834,ship 74835,cat 74836,dog 74837,truck 74838,horse 74839,dog 74840,bird 74841,deer 74842,cat 74843,cat 74844,frog 74845,ship 74846,ship 74847,airplane 74848,cat 74849,horse 74850,cat 74851,cat 74852,bird 74853,horse 74854,cat 74855,cat 74856,bird 74857,cat 74858,cat 74859,deer 74860,horse 74861,ship 74862,cat 74863,airplane 74864,horse 74865,bird 74866,cat 74867,deer 74868,bird 74869,truck 74870,horse 74871,dog 74872,ship 74873,bird 74874,airplane 74875,deer 74876,deer 74877,cat 74878,deer 74879,automobile 74880,deer 74881,truck 74882,dog 74883,deer 74884,truck 74885,airplane 74886,ship 74887,dog 74888,dog 74889,deer 74890,automobile 74891,dog 74892,bird 74893,bird 74894,dog 74895,ship 74896,ship 74897,cat 74898,dog 74899,truck 74900,cat 74901,dog 74902,airplane 74903,dog 74904,deer 74905,bird 74906,dog 74907,ship 74908,horse 74909,airplane 74910,automobile 74911,truck 74912,horse 74913,dog 74914,horse 74915,airplane 74916,bird 74917,ship 74918,frog 74919,truck 74920,horse 74921,horse 74922,cat 74923,cat 74924,horse 74925,airplane 74926,deer 74927,bird 74928,ship 74929,deer 74930,truck 74931,ship 74932,automobile 74933,cat 74934,truck 74935,ship 74936,cat 74937,deer 74938,horse 74939,deer 74940,truck 74941,airplane 74942,dog 74943,dog 74944,bird 74945,deer 74946,horse 74947,truck 74948,frog 74949,cat 74950,cat 74951,deer 74952,dog 74953,bird 74954,horse 74955,dog 74956,deer 74957,cat 74958,airplane 74959,frog 74960,truck 74961,airplane 74962,truck 74963,horse 74964,bird 74965,truck 74966,bird 74967,truck 74968,cat 74969,bird 74970,frog 74971,horse 74972,bird 74973,cat 74974,cat 74975,deer 74976,cat 74977,cat 74978,dog 74979,deer 74980,frog 74981,ship 74982,deer 74983,horse 74984,ship 74985,cat 74986,truck 74987,frog 74988,dog 74989,automobile 74990,cat 74991,dog 74992,frog 74993,deer 74994,horse 74995,dog 74996,bird 74997,deer 74998,cat 74999,frog 75000,bird 75001,dog 75002,bird 75003,deer 75004,deer 75005,dog 75006,automobile 75007,deer 75008,automobile 75009,ship 75010,ship 75011,bird 75012,truck 75013,frog 75014,deer 75015,airplane 75016,truck 75017,airplane 75018,truck 75019,deer 75020,automobile 75021,automobile 75022,deer 75023,truck 75024,dog 75025,dog 75026,dog 75027,bird 75028,dog 75029,dog 75030,truck 75031,airplane 75032,airplane 75033,cat 75034,frog 75035,deer 75036,dog 75037,horse 75038,airplane 75039,dog 75040,cat 75041,horse 75042,airplane 75043,frog 75044,ship 75045,automobile 75046,cat 75047,truck 75048,bird 75049,deer 75050,automobile 75051,ship 75052,horse 75053,ship 75054,horse 75055,bird 75056,cat 75057,truck 75058,dog 75059,dog 75060,dog 75061,truck 75062,bird 75063,horse 75064,horse 75065,deer 75066,frog 75067,bird 75068,frog 75069,cat 75070,frog 75071,bird 75072,frog 75073,cat 75074,frog 75075,cat 75076,ship 75077,truck 75078,truck 75079,deer 75080,truck 75081,airplane 75082,truck 75083,dog 75084,deer 75085,truck 75086,airplane 75087,airplane 75088,dog 75089,cat 75090,deer 75091,dog 75092,bird 75093,cat 75094,truck 75095,cat 75096,frog 75097,frog 75098,horse 75099,cat 75100,frog 75101,truck 75102,cat 75103,dog 75104,ship 75105,airplane 75106,deer 75107,deer 75108,dog 75109,cat 75110,bird 75111,airplane 75112,frog 75113,frog 75114,cat 75115,horse 75116,deer 75117,cat 75118,ship 75119,frog 75120,deer 75121,dog 75122,ship 75123,ship 75124,deer 75125,truck 75126,cat 75127,dog 75128,deer 75129,truck 75130,automobile 75131,horse 75132,bird 75133,cat 75134,horse 75135,cat 75136,airplane 75137,automobile 75138,frog 75139,airplane 75140,frog 75141,cat 75142,airplane 75143,airplane 75144,truck 75145,deer 75146,cat 75147,dog 75148,automobile 75149,dog 75150,cat 75151,truck 75152,airplane 75153,dog 75154,automobile 75155,ship 75156,frog 75157,frog 75158,cat 75159,automobile 75160,ship 75161,frog 75162,ship 75163,cat 75164,ship 75165,deer 75166,cat 75167,frog 75168,truck 75169,airplane 75170,frog 75171,ship 75172,deer 75173,cat 75174,automobile 75175,cat 75176,dog 75177,horse 75178,dog 75179,ship 75180,horse 75181,truck 75182,cat 75183,frog 75184,automobile 75185,ship 75186,automobile 75187,frog 75188,horse 75189,dog 75190,bird 75191,bird 75192,deer 75193,ship 75194,frog 75195,automobile 75196,ship 75197,airplane 75198,cat 75199,automobile 75200,horse 75201,bird 75202,frog 75203,airplane 75204,deer 75205,deer 75206,deer 75207,dog 75208,cat 75209,cat 75210,ship 75211,deer 75212,cat 75213,deer 75214,cat 75215,bird 75216,horse 75217,horse 75218,cat 75219,dog 75220,deer 75221,frog 75222,airplane 75223,bird 75224,horse 75225,frog 75226,truck 75227,cat 75228,automobile 75229,deer 75230,cat 75231,frog 75232,ship 75233,deer 75234,dog 75235,dog 75236,horse 75237,ship 75238,horse 75239,deer 75240,cat 75241,horse 75242,horse 75243,cat 75244,airplane 75245,cat 75246,cat 75247,deer 75248,truck 75249,ship 75250,frog 75251,cat 75252,cat 75253,bird 75254,ship 75255,bird 75256,dog 75257,truck 75258,dog 75259,airplane 75260,deer 75261,cat 75262,cat 75263,cat 75264,airplane 75265,deer 75266,cat 75267,bird 75268,frog 75269,deer 75270,cat 75271,airplane 75272,dog 75273,dog 75274,cat 75275,horse 75276,ship 75277,frog 75278,automobile 75279,dog 75280,cat 75281,dog 75282,deer 75283,frog 75284,ship 75285,frog 75286,truck 75287,frog 75288,frog 75289,dog 75290,bird 75291,bird 75292,airplane 75293,bird 75294,horse 75295,truck 75296,dog 75297,bird 75298,truck 75299,horse 75300,truck 75301,airplane 75302,bird 75303,cat 75304,dog 75305,airplane 75306,cat 75307,deer 75308,truck 75309,airplane 75310,dog 75311,airplane 75312,cat 75313,airplane 75314,ship 75315,bird 75316,deer 75317,cat 75318,dog 75319,truck 75320,automobile 75321,cat 75322,truck 75323,automobile 75324,ship 75325,frog 75326,cat 75327,dog 75328,dog 75329,airplane 75330,ship 75331,frog 75332,dog 75333,automobile 75334,cat 75335,deer 75336,deer 75337,dog 75338,truck 75339,dog 75340,deer 75341,deer 75342,cat 75343,frog 75344,automobile 75345,deer 75346,bird 75347,frog 75348,horse 75349,horse 75350,dog 75351,dog 75352,truck 75353,bird 75354,automobile 75355,truck 75356,dog 75357,bird 75358,frog 75359,cat 75360,frog 75361,deer 75362,deer 75363,ship 75364,deer 75365,horse 75366,frog 75367,truck 75368,airplane 75369,bird 75370,automobile 75371,cat 75372,truck 75373,dog 75374,bird 75375,truck 75376,truck 75377,dog 75378,automobile 75379,cat 75380,cat 75381,ship 75382,automobile 75383,ship 75384,frog 75385,dog 75386,frog 75387,frog 75388,bird 75389,truck 75390,deer 75391,automobile 75392,truck 75393,cat 75394,ship 75395,deer 75396,horse 75397,automobile 75398,truck 75399,ship 75400,bird 75401,deer 75402,ship 75403,dog 75404,horse 75405,truck 75406,truck 75407,deer 75408,ship 75409,dog 75410,dog 75411,bird 75412,bird 75413,deer 75414,frog 75415,bird 75416,airplane 75417,truck 75418,ship 75419,cat 75420,automobile 75421,horse 75422,airplane 75423,deer 75424,cat 75425,dog 75426,ship 75427,truck 75428,cat 75429,airplane 75430,cat 75431,ship 75432,deer 75433,dog 75434,dog 75435,dog 75436,horse 75437,cat 75438,deer 75439,truck 75440,cat 75441,horse 75442,truck 75443,deer 75444,bird 75445,airplane 75446,frog 75447,dog 75448,frog 75449,deer 75450,automobile 75451,bird 75452,horse 75453,airplane 75454,bird 75455,ship 75456,deer 75457,airplane 75458,truck 75459,deer 75460,ship 75461,automobile 75462,dog 75463,ship 75464,truck 75465,cat 75466,deer 75467,bird 75468,horse 75469,horse 75470,dog 75471,cat 75472,cat 75473,cat 75474,horse 75475,deer 75476,truck 75477,truck 75478,deer 75479,dog 75480,cat 75481,cat 75482,ship 75483,truck 75484,horse 75485,truck 75486,cat 75487,bird 75488,bird 75489,cat 75490,cat 75491,bird 75492,deer 75493,horse 75494,frog 75495,truck 75496,horse 75497,deer 75498,dog 75499,frog 75500,horse 75501,automobile 75502,truck 75503,horse 75504,horse 75505,airplane 75506,cat 75507,deer 75508,frog 75509,airplane 75510,dog 75511,ship 75512,airplane 75513,horse 75514,truck 75515,truck 75516,ship 75517,frog 75518,horse 75519,horse 75520,truck 75521,bird 75522,truck 75523,bird 75524,dog 75525,horse 75526,frog 75527,frog 75528,cat 75529,deer 75530,cat 75531,deer 75532,ship 75533,automobile 75534,horse 75535,truck 75536,dog 75537,deer 75538,bird 75539,frog 75540,ship 75541,cat 75542,bird 75543,ship 75544,bird 75545,automobile 75546,airplane 75547,automobile 75548,bird 75549,ship 75550,airplane 75551,cat 75552,cat 75553,frog 75554,truck 75555,ship 75556,ship 75557,ship 75558,cat 75559,frog 75560,truck 75561,bird 75562,deer 75563,ship 75564,ship 75565,airplane 75566,dog 75567,automobile 75568,truck 75569,airplane 75570,airplane 75571,deer 75572,deer 75573,cat 75574,truck 75575,frog 75576,horse 75577,deer 75578,frog 75579,bird 75580,bird 75581,truck 75582,frog 75583,truck 75584,cat 75585,deer 75586,automobile 75587,cat 75588,airplane 75589,ship 75590,airplane 75591,deer 75592,deer 75593,horse 75594,ship 75595,dog 75596,ship 75597,frog 75598,bird 75599,cat 75600,cat 75601,frog 75602,ship 75603,horse 75604,dog 75605,cat 75606,dog 75607,bird 75608,frog 75609,airplane 75610,airplane 75611,frog 75612,airplane 75613,horse 75614,bird 75615,ship 75616,deer 75617,deer 75618,dog 75619,horse 75620,airplane 75621,frog 75622,ship 75623,frog 75624,truck 75625,bird 75626,horse 75627,truck 75628,horse 75629,horse 75630,bird 75631,dog 75632,truck 75633,deer 75634,frog 75635,cat 75636,dog 75637,ship 75638,bird 75639,bird 75640,horse 75641,ship 75642,deer 75643,automobile 75644,frog 75645,airplane 75646,bird 75647,deer 75648,frog 75649,deer 75650,deer 75651,ship 75652,automobile 75653,frog 75654,deer 75655,truck 75656,dog 75657,automobile 75658,ship 75659,horse 75660,cat 75661,frog 75662,frog 75663,horse 75664,dog 75665,truck 75666,deer 75667,cat 75668,deer 75669,deer 75670,deer 75671,deer 75672,deer 75673,bird 75674,horse 75675,bird 75676,automobile 75677,cat 75678,cat 75679,horse 75680,frog 75681,ship 75682,ship 75683,cat 75684,frog 75685,truck 75686,frog 75687,truck 75688,truck 75689,bird 75690,dog 75691,airplane 75692,cat 75693,cat 75694,truck 75695,bird 75696,truck 75697,cat 75698,ship 75699,truck 75700,deer 75701,truck 75702,automobile 75703,ship 75704,deer 75705,cat 75706,bird 75707,dog 75708,airplane 75709,horse 75710,dog 75711,truck 75712,truck 75713,cat 75714,bird 75715,bird 75716,cat 75717,truck 75718,bird 75719,cat 75720,ship 75721,dog 75722,bird 75723,deer 75724,frog 75725,bird 75726,cat 75727,frog 75728,airplane 75729,deer 75730,ship 75731,deer 75732,deer 75733,automobile 75734,bird 75735,cat 75736,cat 75737,bird 75738,deer 75739,airplane 75740,automobile 75741,truck 75742,dog 75743,dog 75744,dog 75745,horse 75746,truck 75747,automobile 75748,airplane 75749,bird 75750,deer 75751,frog 75752,frog 75753,airplane 75754,ship 75755,truck 75756,cat 75757,cat 75758,truck 75759,frog 75760,horse 75761,automobile 75762,truck 75763,truck 75764,frog 75765,ship 75766,automobile 75767,frog 75768,automobile 75769,dog 75770,ship 75771,horse 75772,ship 75773,dog 75774,truck 75775,deer 75776,cat 75777,cat 75778,frog 75779,dog 75780,cat 75781,cat 75782,cat 75783,cat 75784,deer 75785,bird 75786,ship 75787,automobile 75788,cat 75789,airplane 75790,ship 75791,cat 75792,airplane 75793,bird 75794,deer 75795,automobile 75796,ship 75797,cat 75798,bird 75799,ship 75800,airplane 75801,deer 75802,automobile 75803,cat 75804,frog 75805,ship 75806,airplane 75807,dog 75808,bird 75809,cat 75810,horse 75811,dog 75812,horse 75813,cat 75814,truck 75815,horse 75816,truck 75817,deer 75818,bird 75819,ship 75820,ship 75821,deer 75822,horse 75823,horse 75824,airplane 75825,cat 75826,deer 75827,airplane 75828,cat 75829,ship 75830,deer 75831,bird 75832,horse 75833,frog 75834,cat 75835,automobile 75836,cat 75837,ship 75838,horse 75839,frog 75840,ship 75841,horse 75842,truck 75843,airplane 75844,truck 75845,frog 75846,truck 75847,truck 75848,airplane 75849,deer 75850,truck 75851,horse 75852,truck 75853,airplane 75854,cat 75855,bird 75856,deer 75857,deer 75858,ship 75859,deer 75860,bird 75861,dog 75862,dog 75863,ship 75864,ship 75865,horse 75866,frog 75867,deer 75868,airplane 75869,cat 75870,ship 75871,bird 75872,cat 75873,ship 75874,dog 75875,truck 75876,airplane 75877,frog 75878,truck 75879,automobile 75880,dog 75881,bird 75882,automobile 75883,horse 75884,ship 75885,ship 75886,truck 75887,dog 75888,bird 75889,dog 75890,airplane 75891,airplane 75892,automobile 75893,deer 75894,horse 75895,truck 75896,bird 75897,horse 75898,dog 75899,ship 75900,horse 75901,dog 75902,airplane 75903,deer 75904,deer 75905,bird 75906,cat 75907,ship 75908,cat 75909,frog 75910,dog 75911,dog 75912,truck 75913,automobile 75914,horse 75915,bird 75916,frog 75917,deer 75918,dog 75919,ship 75920,automobile 75921,airplane 75922,cat 75923,truck 75924,bird 75925,frog 75926,dog 75927,bird 75928,ship 75929,ship 75930,horse 75931,dog 75932,airplane 75933,bird 75934,cat 75935,ship 75936,cat 75937,automobile 75938,dog 75939,frog 75940,horse 75941,horse 75942,horse 75943,truck 75944,dog 75945,truck 75946,dog 75947,cat 75948,bird 75949,truck 75950,automobile 75951,automobile 75952,frog 75953,cat 75954,ship 75955,frog 75956,automobile 75957,dog 75958,automobile 75959,bird 75960,cat 75961,automobile 75962,ship 75963,bird 75964,ship 75965,deer 75966,cat 75967,cat 75968,ship 75969,frog 75970,horse 75971,automobile 75972,bird 75973,automobile 75974,ship 75975,cat 75976,frog 75977,deer 75978,bird 75979,truck 75980,bird 75981,dog 75982,deer 75983,ship 75984,deer 75985,truck 75986,bird 75987,frog 75988,truck 75989,frog 75990,frog 75991,automobile 75992,ship 75993,truck 75994,bird 75995,deer 75996,cat 75997,bird 75998,airplane 75999,frog 76000,frog 76001,truck 76002,dog 76003,ship 76004,truck 76005,airplane 76006,automobile 76007,frog 76008,truck 76009,frog 76010,frog 76011,automobile 76012,dog 76013,dog 76014,deer 76015,dog 76016,truck 76017,deer 76018,frog 76019,airplane 76020,cat 76021,deer 76022,automobile 76023,horse 76024,ship 76025,cat 76026,automobile 76027,airplane 76028,deer 76029,ship 76030,bird 76031,dog 76032,bird 76033,airplane 76034,bird 76035,dog 76036,frog 76037,cat 76038,horse 76039,truck 76040,truck 76041,ship 76042,truck 76043,dog 76044,deer 76045,horse 76046,cat 76047,airplane 76048,horse 76049,deer 76050,bird 76051,cat 76052,bird 76053,dog 76054,deer 76055,ship 76056,truck 76057,horse 76058,airplane 76059,frog 76060,deer 76061,frog 76062,horse 76063,frog 76064,frog 76065,ship 76066,dog 76067,cat 76068,dog 76069,cat 76070,cat 76071,horse 76072,automobile 76073,frog 76074,truck 76075,dog 76076,deer 76077,truck 76078,horse 76079,airplane 76080,automobile 76081,horse 76082,cat 76083,horse 76084,cat 76085,truck 76086,frog 76087,frog 76088,horse 76089,horse 76090,deer 76091,ship 76092,frog 76093,airplane 76094,dog 76095,deer 76096,dog 76097,airplane 76098,bird 76099,ship 76100,frog 76101,cat 76102,airplane 76103,cat 76104,bird 76105,airplane 76106,deer 76107,ship 76108,dog 76109,airplane 76110,horse 76111,ship 76112,dog 76113,dog 76114,ship 76115,frog 76116,cat 76117,deer 76118,dog 76119,truck 76120,ship 76121,cat 76122,frog 76123,bird 76124,truck 76125,bird 76126,frog 76127,ship 76128,horse 76129,automobile 76130,cat 76131,cat 76132,deer 76133,frog 76134,dog 76135,frog 76136,dog 76137,dog 76138,ship 76139,bird 76140,horse 76141,frog 76142,bird 76143,airplane 76144,dog 76145,frog 76146,ship 76147,airplane 76148,truck 76149,airplane 76150,ship 76151,airplane 76152,bird 76153,frog 76154,frog 76155,bird 76156,dog 76157,cat 76158,cat 76159,ship 76160,truck 76161,bird 76162,deer 76163,deer 76164,cat 76165,bird 76166,cat 76167,deer 76168,automobile 76169,automobile 76170,cat 76171,deer 76172,truck 76173,truck 76174,deer 76175,frog 76176,deer 76177,bird 76178,ship 76179,cat 76180,bird 76181,deer 76182,horse 76183,deer 76184,cat 76185,horse 76186,deer 76187,truck 76188,cat 76189,horse 76190,horse 76191,airplane 76192,airplane 76193,bird 76194,horse 76195,ship 76196,frog 76197,cat 76198,airplane 76199,dog 76200,deer 76201,cat 76202,automobile 76203,truck 76204,deer 76205,cat 76206,ship 76207,frog 76208,frog 76209,dog 76210,automobile 76211,airplane 76212,ship 76213,cat 76214,frog 76215,dog 76216,automobile 76217,dog 76218,cat 76219,dog 76220,truck 76221,dog 76222,dog 76223,deer 76224,deer 76225,bird 76226,frog 76227,horse 76228,truck 76229,frog 76230,automobile 76231,horse 76232,horse 76233,cat 76234,horse 76235,automobile 76236,dog 76237,frog 76238,cat 76239,bird 76240,frog 76241,deer 76242,bird 76243,frog 76244,cat 76245,frog 76246,frog 76247,cat 76248,deer 76249,truck 76250,horse 76251,cat 76252,cat 76253,cat 76254,cat 76255,deer 76256,dog 76257,deer 76258,truck 76259,ship 76260,airplane 76261,ship 76262,airplane 76263,frog 76264,bird 76265,ship 76266,cat 76267,airplane 76268,frog 76269,deer 76270,horse 76271,automobile 76272,cat 76273,airplane 76274,bird 76275,truck 76276,deer 76277,bird 76278,bird 76279,automobile 76280,bird 76281,bird 76282,frog 76283,ship 76284,horse 76285,airplane 76286,automobile 76287,cat 76288,truck 76289,cat 76290,airplane 76291,frog 76292,bird 76293,cat 76294,bird 76295,deer 76296,cat 76297,deer 76298,deer 76299,cat 76300,dog 76301,frog 76302,automobile 76303,cat 76304,dog 76305,ship 76306,deer 76307,cat 76308,dog 76309,truck 76310,automobile 76311,automobile 76312,automobile 76313,bird 76314,deer 76315,airplane 76316,cat 76317,truck 76318,horse 76319,truck 76320,horse 76321,bird 76322,cat 76323,truck 76324,truck 76325,ship 76326,truck 76327,frog 76328,deer 76329,frog 76330,horse 76331,cat 76332,deer 76333,frog 76334,deer 76335,frog 76336,cat 76337,cat 76338,frog 76339,deer 76340,truck 76341,horse 76342,dog 76343,frog 76344,automobile 76345,airplane 76346,cat 76347,deer 76348,cat 76349,deer 76350,ship 76351,deer 76352,deer 76353,horse 76354,automobile 76355,frog 76356,automobile 76357,horse 76358,airplane 76359,deer 76360,bird 76361,deer 76362,truck 76363,automobile 76364,cat 76365,dog 76366,deer 76367,deer 76368,airplane 76369,deer 76370,automobile 76371,cat 76372,deer 76373,bird 76374,ship 76375,frog 76376,cat 76377,airplane 76378,automobile 76379,cat 76380,horse 76381,deer 76382,horse 76383,ship 76384,cat 76385,deer 76386,dog 76387,deer 76388,cat 76389,automobile 76390,frog 76391,bird 76392,frog 76393,deer 76394,horse 76395,deer 76396,airplane 76397,frog 76398,frog 76399,horse 76400,ship 76401,horse 76402,ship 76403,truck 76404,horse 76405,bird 76406,truck 76407,cat 76408,dog 76409,airplane 76410,frog 76411,horse 76412,horse 76413,deer 76414,deer 76415,cat 76416,truck 76417,automobile 76418,cat 76419,frog 76420,bird 76421,bird 76422,ship 76423,deer 76424,truck 76425,cat 76426,dog 76427,deer 76428,frog 76429,horse 76430,ship 76431,frog 76432,dog 76433,horse 76434,dog 76435,horse 76436,automobile 76437,dog 76438,airplane 76439,bird 76440,automobile 76441,ship 76442,deer 76443,deer 76444,deer 76445,dog 76446,airplane 76447,airplane 76448,ship 76449,airplane 76450,truck 76451,airplane 76452,horse 76453,truck 76454,cat 76455,automobile 76456,automobile 76457,airplane 76458,frog 76459,truck 76460,cat 76461,frog 76462,ship 76463,airplane 76464,dog 76465,frog 76466,frog 76467,bird 76468,dog 76469,cat 76470,airplane 76471,cat 76472,horse 76473,cat 76474,truck 76475,horse 76476,frog 76477,truck 76478,horse 76479,dog 76480,cat 76481,ship 76482,airplane 76483,horse 76484,cat 76485,cat 76486,ship 76487,frog 76488,automobile 76489,horse 76490,ship 76491,deer 76492,ship 76493,truck 76494,frog 76495,airplane 76496,bird 76497,ship 76498,ship 76499,truck 76500,dog 76501,dog 76502,ship 76503,horse 76504,truck 76505,cat 76506,deer 76507,truck 76508,truck 76509,truck 76510,cat 76511,ship 76512,airplane 76513,truck 76514,airplane 76515,airplane 76516,frog 76517,truck 76518,frog 76519,deer 76520,airplane 76521,deer 76522,bird 76523,deer 76524,horse 76525,bird 76526,dog 76527,deer 76528,deer 76529,deer 76530,dog 76531,dog 76532,truck 76533,automobile 76534,ship 76535,automobile 76536,truck 76537,cat 76538,truck 76539,dog 76540,cat 76541,truck 76542,horse 76543,deer 76544,ship 76545,cat 76546,deer 76547,bird 76548,horse 76549,airplane 76550,dog 76551,deer 76552,automobile 76553,truck 76554,frog 76555,ship 76556,frog 76557,bird 76558,ship 76559,ship 76560,airplane 76561,deer 76562,frog 76563,truck 76564,truck 76565,deer 76566,dog 76567,frog 76568,deer 76569,cat 76570,frog 76571,ship 76572,automobile 76573,airplane 76574,deer 76575,dog 76576,frog 76577,deer 76578,deer 76579,dog 76580,deer 76581,automobile 76582,frog 76583,dog 76584,deer 76585,bird 76586,ship 76587,deer 76588,ship 76589,bird 76590,deer 76591,dog 76592,deer 76593,airplane 76594,automobile 76595,cat 76596,automobile 76597,bird 76598,cat 76599,deer 76600,truck 76601,frog 76602,truck 76603,ship 76604,horse 76605,airplane 76606,cat 76607,automobile 76608,ship 76609,horse 76610,horse 76611,deer 76612,deer 76613,ship 76614,horse 76615,airplane 76616,ship 76617,bird 76618,cat 76619,bird 76620,airplane 76621,deer 76622,deer 76623,cat 76624,deer 76625,dog 76626,dog 76627,deer 76628,automobile 76629,deer 76630,airplane 76631,cat 76632,automobile 76633,dog 76634,cat 76635,automobile 76636,deer 76637,deer 76638,dog 76639,bird 76640,truck 76641,dog 76642,truck 76643,automobile 76644,deer 76645,cat 76646,automobile 76647,deer 76648,airplane 76649,frog 76650,cat 76651,frog 76652,frog 76653,frog 76654,deer 76655,truck 76656,airplane 76657,bird 76658,cat 76659,airplane 76660,horse 76661,automobile 76662,frog 76663,dog 76664,horse 76665,automobile 76666,deer 76667,deer 76668,dog 76669,dog 76670,airplane 76671,horse 76672,dog 76673,ship 76674,dog 76675,ship 76676,automobile 76677,deer 76678,deer 76679,deer 76680,deer 76681,bird 76682,deer 76683,truck 76684,cat 76685,deer 76686,frog 76687,horse 76688,bird 76689,deer 76690,deer 76691,frog 76692,cat 76693,airplane 76694,truck 76695,bird 76696,frog 76697,dog 76698,cat 76699,deer 76700,deer 76701,dog 76702,airplane 76703,frog 76704,frog 76705,automobile 76706,dog 76707,frog 76708,dog 76709,truck 76710,deer 76711,horse 76712,frog 76713,cat 76714,dog 76715,ship 76716,frog 76717,cat 76718,frog 76719,airplane 76720,deer 76721,ship 76722,truck 76723,automobile 76724,dog 76725,ship 76726,automobile 76727,dog 76728,cat 76729,horse 76730,cat 76731,cat 76732,automobile 76733,cat 76734,frog 76735,ship 76736,frog 76737,deer 76738,frog 76739,automobile 76740,airplane 76741,cat 76742,truck 76743,horse 76744,cat 76745,airplane 76746,airplane 76747,dog 76748,truck 76749,airplane 76750,cat 76751,truck 76752,cat 76753,truck 76754,deer 76755,ship 76756,ship 76757,frog 76758,deer 76759,automobile 76760,dog 76761,airplane 76762,cat 76763,horse 76764,cat 76765,ship 76766,cat 76767,truck 76768,frog 76769,automobile 76770,bird 76771,cat 76772,horse 76773,cat 76774,dog 76775,bird 76776,dog 76777,truck 76778,horse 76779,cat 76780,automobile 76781,ship 76782,frog 76783,bird 76784,automobile 76785,airplane 76786,deer 76787,bird 76788,ship 76789,truck 76790,deer 76791,automobile 76792,ship 76793,bird 76794,truck 76795,truck 76796,cat 76797,horse 76798,airplane 76799,deer 76800,truck 76801,dog 76802,deer 76803,cat 76804,cat 76805,dog 76806,deer 76807,ship 76808,automobile 76809,frog 76810,dog 76811,horse 76812,bird 76813,cat 76814,ship 76815,bird 76816,dog 76817,automobile 76818,horse 76819,horse 76820,cat 76821,horse 76822,horse 76823,bird 76824,dog 76825,automobile 76826,frog 76827,bird 76828,ship 76829,cat 76830,bird 76831,truck 76832,dog 76833,airplane 76834,automobile 76835,frog 76836,horse 76837,deer 76838,ship 76839,cat 76840,truck 76841,ship 76842,frog 76843,deer 76844,frog 76845,bird 76846,horse 76847,truck 76848,frog 76849,deer 76850,dog 76851,deer 76852,deer 76853,cat 76854,cat 76855,horse 76856,airplane 76857,ship 76858,truck 76859,frog 76860,frog 76861,deer 76862,cat 76863,ship 76864,truck 76865,truck 76866,deer 76867,truck 76868,cat 76869,truck 76870,horse 76871,automobile 76872,airplane 76873,dog 76874,airplane 76875,bird 76876,bird 76877,frog 76878,frog 76879,airplane 76880,frog 76881,truck 76882,deer 76883,horse 76884,deer 76885,cat 76886,dog 76887,airplane 76888,dog 76889,deer 76890,ship 76891,airplane 76892,dog 76893,cat 76894,truck 76895,automobile 76896,airplane 76897,frog 76898,truck 76899,automobile 76900,horse 76901,deer 76902,frog 76903,airplane 76904,horse 76905,cat 76906,truck 76907,ship 76908,ship 76909,horse 76910,frog 76911,cat 76912,cat 76913,deer 76914,deer 76915,horse 76916,frog 76917,airplane 76918,frog 76919,dog 76920,deer 76921,airplane 76922,frog 76923,cat 76924,bird 76925,cat 76926,automobile 76927,truck 76928,automobile 76929,horse 76930,truck 76931,automobile 76932,frog 76933,cat 76934,truck 76935,cat 76936,horse 76937,bird 76938,frog 76939,airplane 76940,airplane 76941,ship 76942,ship 76943,ship 76944,bird 76945,dog 76946,dog 76947,bird 76948,cat 76949,cat 76950,automobile 76951,cat 76952,cat 76953,cat 76954,airplane 76955,truck 76956,truck 76957,airplane 76958,frog 76959,truck 76960,horse 76961,truck 76962,airplane 76963,deer 76964,bird 76965,airplane 76966,dog 76967,horse 76968,bird 76969,horse 76970,frog 76971,deer 76972,airplane 76973,truck 76974,bird 76975,airplane 76976,bird 76977,bird 76978,bird 76979,deer 76980,truck 76981,cat 76982,ship 76983,bird 76984,truck 76985,deer 76986,cat 76987,bird 76988,truck 76989,dog 76990,airplane 76991,dog 76992,ship 76993,airplane 76994,deer 76995,horse 76996,automobile 76997,frog 76998,ship 76999,horse 77000,ship 77001,bird 77002,airplane 77003,dog 77004,cat 77005,frog 77006,bird 77007,frog 77008,bird 77009,dog 77010,dog 77011,dog 77012,ship 77013,cat 77014,deer 77015,deer 77016,airplane 77017,deer 77018,automobile 77019,cat 77020,cat 77021,airplane 77022,dog 77023,bird 77024,truck 77025,deer 77026,truck 77027,ship 77028,frog 77029,frog 77030,dog 77031,frog 77032,deer 77033,truck 77034,automobile 77035,bird 77036,cat 77037,cat 77038,deer 77039,deer 77040,cat 77041,cat 77042,dog 77043,deer 77044,dog 77045,dog 77046,cat 77047,deer 77048,cat 77049,cat 77050,cat 77051,dog 77052,frog 77053,frog 77054,dog 77055,horse 77056,dog 77057,horse 77058,deer 77059,ship 77060,bird 77061,horse 77062,ship 77063,truck 77064,cat 77065,airplane 77066,deer 77067,truck 77068,frog 77069,dog 77070,frog 77071,ship 77072,bird 77073,ship 77074,cat 77075,deer 77076,airplane 77077,dog 77078,airplane 77079,dog 77080,dog 77081,horse 77082,truck 77083,truck 77084,horse 77085,dog 77086,deer 77087,airplane 77088,airplane 77089,truck 77090,horse 77091,frog 77092,automobile 77093,deer 77094,cat 77095,automobile 77096,cat 77097,airplane 77098,airplane 77099,frog 77100,ship 77101,airplane 77102,automobile 77103,airplane 77104,frog 77105,dog 77106,dog 77107,dog 77108,frog 77109,bird 77110,cat 77111,automobile 77112,cat 77113,frog 77114,horse 77115,frog 77116,automobile 77117,truck 77118,ship 77119,airplane 77120,truck 77121,bird 77122,frog 77123,ship 77124,truck 77125,ship 77126,cat 77127,cat 77128,frog 77129,deer 77130,bird 77131,truck 77132,bird 77133,cat 77134,airplane 77135,cat 77136,bird 77137,airplane 77138,truck 77139,frog 77140,cat 77141,horse 77142,deer 77143,automobile 77144,dog 77145,cat 77146,airplane 77147,dog 77148,truck 77149,dog 77150,deer 77151,cat 77152,horse 77153,dog 77154,horse 77155,deer 77156,truck 77157,truck 77158,bird 77159,ship 77160,frog 77161,dog 77162,deer 77163,frog 77164,cat 77165,automobile 77166,deer 77167,horse 77168,truck 77169,ship 77170,airplane 77171,deer 77172,horse 77173,frog 77174,truck 77175,truck 77176,ship 77177,cat 77178,airplane 77179,horse 77180,ship 77181,deer 77182,airplane 77183,cat 77184,ship 77185,cat 77186,deer 77187,ship 77188,deer 77189,deer 77190,cat 77191,dog 77192,bird 77193,dog 77194,ship 77195,truck 77196,deer 77197,automobile 77198,airplane 77199,truck 77200,automobile 77201,dog 77202,cat 77203,automobile 77204,cat 77205,frog 77206,dog 77207,ship 77208,horse 77209,airplane 77210,cat 77211,airplane 77212,ship 77213,dog 77214,airplane 77215,ship 77216,cat 77217,ship 77218,ship 77219,horse 77220,deer 77221,deer 77222,frog 77223,truck 77224,truck 77225,horse 77226,bird 77227,cat 77228,deer 77229,airplane 77230,ship 77231,frog 77232,automobile 77233,frog 77234,cat 77235,truck 77236,bird 77237,ship 77238,dog 77239,bird 77240,deer 77241,cat 77242,airplane 77243,frog 77244,deer 77245,frog 77246,automobile 77247,cat 77248,deer 77249,horse 77250,ship 77251,automobile 77252,truck 77253,dog 77254,deer 77255,automobile 77256,dog 77257,deer 77258,cat 77259,cat 77260,frog 77261,horse 77262,dog 77263,ship 77264,truck 77265,deer 77266,bird 77267,cat 77268,ship 77269,horse 77270,horse 77271,frog 77272,ship 77273,automobile 77274,cat 77275,horse 77276,dog 77277,frog 77278,cat 77279,cat 77280,cat 77281,truck 77282,truck 77283,ship 77284,dog 77285,cat 77286,horse 77287,bird 77288,bird 77289,cat 77290,horse 77291,horse 77292,cat 77293,truck 77294,frog 77295,deer 77296,dog 77297,horse 77298,frog 77299,horse 77300,dog 77301,truck 77302,airplane 77303,bird 77304,cat 77305,airplane 77306,cat 77307,cat 77308,frog 77309,dog 77310,truck 77311,automobile 77312,deer 77313,cat 77314,automobile 77315,deer 77316,dog 77317,frog 77318,ship 77319,horse 77320,dog 77321,deer 77322,horse 77323,cat 77324,bird 77325,dog 77326,frog 77327,deer 77328,cat 77329,deer 77330,airplane 77331,ship 77332,airplane 77333,truck 77334,bird 77335,automobile 77336,truck 77337,airplane 77338,cat 77339,dog 77340,ship 77341,truck 77342,bird 77343,airplane 77344,dog 77345,dog 77346,frog 77347,cat 77348,automobile 77349,bird 77350,horse 77351,cat 77352,airplane 77353,frog 77354,deer 77355,truck 77356,frog 77357,horse 77358,ship 77359,frog 77360,horse 77361,automobile 77362,ship 77363,frog 77364,cat 77365,horse 77366,ship 77367,automobile 77368,ship 77369,cat 77370,cat 77371,frog 77372,horse 77373,bird 77374,bird 77375,automobile 77376,airplane 77377,horse 77378,ship 77379,cat 77380,horse 77381,frog 77382,horse 77383,cat 77384,automobile 77385,cat 77386,horse 77387,dog 77388,frog 77389,ship 77390,deer 77391,ship 77392,dog 77393,dog 77394,truck 77395,ship 77396,bird 77397,truck 77398,cat 77399,frog 77400,bird 77401,bird 77402,airplane 77403,bird 77404,airplane 77405,frog 77406,cat 77407,dog 77408,dog 77409,horse 77410,cat 77411,deer 77412,frog 77413,airplane 77414,automobile 77415,bird 77416,frog 77417,ship 77418,automobile 77419,truck 77420,bird 77421,airplane 77422,truck 77423,horse 77424,airplane 77425,truck 77426,dog 77427,truck 77428,truck 77429,frog 77430,automobile 77431,bird 77432,frog 77433,airplane 77434,frog 77435,deer 77436,cat 77437,bird 77438,deer 77439,truck 77440,frog 77441,deer 77442,horse 77443,frog 77444,horse 77445,dog 77446,cat 77447,truck 77448,frog 77449,bird 77450,frog 77451,truck 77452,cat 77453,horse 77454,deer 77455,airplane 77456,deer 77457,horse 77458,horse 77459,automobile 77460,deer 77461,dog 77462,automobile 77463,bird 77464,ship 77465,ship 77466,horse 77467,cat 77468,cat 77469,airplane 77470,automobile 77471,cat 77472,airplane 77473,ship 77474,bird 77475,deer 77476,truck 77477,dog 77478,automobile 77479,dog 77480,truck 77481,truck 77482,frog 77483,frog 77484,ship 77485,cat 77486,frog 77487,truck 77488,automobile 77489,horse 77490,bird 77491,cat 77492,frog 77493,horse 77494,dog 77495,cat 77496,deer 77497,ship 77498,deer 77499,airplane 77500,truck 77501,airplane 77502,airplane 77503,automobile 77504,bird 77505,dog 77506,frog 77507,frog 77508,horse 77509,dog 77510,dog 77511,horse 77512,ship 77513,automobile 77514,horse 77515,cat 77516,airplane 77517,truck 77518,truck 77519,frog 77520,truck 77521,automobile 77522,dog 77523,truck 77524,truck 77525,truck 77526,cat 77527,cat 77528,deer 77529,automobile 77530,cat 77531,frog 77532,deer 77533,cat 77534,horse 77535,truck 77536,cat 77537,ship 77538,frog 77539,automobile 77540,frog 77541,dog 77542,dog 77543,cat 77544,ship 77545,ship 77546,bird 77547,ship 77548,deer 77549,cat 77550,bird 77551,automobile 77552,cat 77553,airplane 77554,bird 77555,airplane 77556,cat 77557,dog 77558,frog 77559,dog 77560,automobile 77561,horse 77562,frog 77563,horse 77564,truck 77565,horse 77566,automobile 77567,automobile 77568,deer 77569,automobile 77570,airplane 77571,bird 77572,cat 77573,deer 77574,truck 77575,deer 77576,airplane 77577,automobile 77578,cat 77579,deer 77580,cat 77581,airplane 77582,truck 77583,deer 77584,deer 77585,deer 77586,truck 77587,deer 77588,bird 77589,automobile 77590,horse 77591,airplane 77592,bird 77593,frog 77594,bird 77595,airplane 77596,horse 77597,cat 77598,deer 77599,automobile 77600,ship 77601,truck 77602,automobile 77603,bird 77604,deer 77605,cat 77606,frog 77607,deer 77608,bird 77609,cat 77610,automobile 77611,deer 77612,frog 77613,ship 77614,truck 77615,ship 77616,dog 77617,frog 77618,deer 77619,bird 77620,dog 77621,ship 77622,deer 77623,dog 77624,bird 77625,bird 77626,dog 77627,automobile 77628,deer 77629,ship 77630,automobile 77631,horse 77632,deer 77633,truck 77634,deer 77635,airplane 77636,bird 77637,bird 77638,frog 77639,automobile 77640,cat 77641,automobile 77642,frog 77643,airplane 77644,bird 77645,dog 77646,horse 77647,automobile 77648,cat 77649,truck 77650,cat 77651,horse 77652,frog 77653,deer 77654,horse 77655,truck 77656,truck 77657,dog 77658,truck 77659,truck 77660,automobile 77661,cat 77662,horse 77663,dog 77664,ship 77665,truck 77666,horse 77667,cat 77668,airplane 77669,cat 77670,cat 77671,deer 77672,truck 77673,airplane 77674,frog 77675,horse 77676,cat 77677,bird 77678,truck 77679,frog 77680,automobile 77681,cat 77682,deer 77683,deer 77684,deer 77685,dog 77686,dog 77687,horse 77688,airplane 77689,cat 77690,cat 77691,truck 77692,deer 77693,truck 77694,automobile 77695,horse 77696,truck 77697,airplane 77698,cat 77699,truck 77700,ship 77701,cat 77702,bird 77703,dog 77704,cat 77705,horse 77706,airplane 77707,frog 77708,horse 77709,frog 77710,cat 77711,frog 77712,cat 77713,bird 77714,horse 77715,frog 77716,cat 77717,truck 77718,dog 77719,bird 77720,deer 77721,horse 77722,ship 77723,truck 77724,cat 77725,frog 77726,truck 77727,airplane 77728,frog 77729,bird 77730,dog 77731,frog 77732,truck 77733,ship 77734,deer 77735,truck 77736,bird 77737,dog 77738,ship 77739,cat 77740,deer 77741,bird 77742,ship 77743,cat 77744,ship 77745,horse 77746,automobile 77747,airplane 77748,frog 77749,horse 77750,bird 77751,airplane 77752,cat 77753,dog 77754,ship 77755,cat 77756,bird 77757,dog 77758,deer 77759,horse 77760,cat 77761,bird 77762,airplane 77763,dog 77764,deer 77765,cat 77766,truck 77767,dog 77768,airplane 77769,bird 77770,ship 77771,dog 77772,cat 77773,ship 77774,deer 77775,dog 77776,frog 77777,dog 77778,automobile 77779,deer 77780,truck 77781,ship 77782,cat 77783,bird 77784,airplane 77785,dog 77786,horse 77787,ship 77788,deer 77789,frog 77790,truck 77791,dog 77792,deer 77793,bird 77794,deer 77795,deer 77796,truck 77797,automobile 77798,cat 77799,cat 77800,horse 77801,frog 77802,horse 77803,deer 77804,cat 77805,dog 77806,horse 77807,deer 77808,airplane 77809,deer 77810,cat 77811,automobile 77812,bird 77813,horse 77814,automobile 77815,bird 77816,frog 77817,ship 77818,cat 77819,automobile 77820,deer 77821,deer 77822,cat 77823,dog 77824,bird 77825,bird 77826,truck 77827,bird 77828,deer 77829,dog 77830,frog 77831,cat 77832,airplane 77833,cat 77834,automobile 77835,frog 77836,ship 77837,bird 77838,airplane 77839,bird 77840,truck 77841,cat 77842,ship 77843,airplane 77844,automobile 77845,airplane 77846,automobile 77847,deer 77848,automobile 77849,bird 77850,dog 77851,cat 77852,frog 77853,ship 77854,cat 77855,truck 77856,truck 77857,ship 77858,truck 77859,ship 77860,truck 77861,frog 77862,airplane 77863,deer 77864,frog 77865,horse 77866,bird 77867,airplane 77868,airplane 77869,deer 77870,horse 77871,dog 77872,cat 77873,dog 77874,deer 77875,frog 77876,deer 77877,deer 77878,airplane 77879,bird 77880,bird 77881,cat 77882,ship 77883,dog 77884,airplane 77885,horse 77886,horse 77887,automobile 77888,frog 77889,cat 77890,frog 77891,deer 77892,ship 77893,horse 77894,airplane 77895,ship 77896,cat 77897,truck 77898,cat 77899,bird 77900,cat 77901,cat 77902,automobile 77903,dog 77904,bird 77905,bird 77906,bird 77907,ship 77908,dog 77909,horse 77910,frog 77911,airplane 77912,dog 77913,ship 77914,cat 77915,frog 77916,frog 77917,cat 77918,frog 77919,bird 77920,cat 77921,bird 77922,frog 77923,airplane 77924,deer 77925,horse 77926,deer 77927,deer 77928,ship 77929,ship 77930,deer 77931,bird 77932,truck 77933,dog 77934,dog 77935,cat 77936,ship 77937,frog 77938,horse 77939,ship 77940,truck 77941,deer 77942,cat 77943,deer 77944,dog 77945,dog 77946,cat 77947,frog 77948,dog 77949,deer 77950,cat 77951,cat 77952,deer 77953,frog 77954,deer 77955,deer 77956,cat 77957,airplane 77958,ship 77959,truck 77960,frog 77961,automobile 77962,deer 77963,horse 77964,deer 77965,automobile 77966,ship 77967,frog 77968,cat 77969,frog 77970,horse 77971,airplane 77972,deer 77973,airplane 77974,cat 77975,truck 77976,dog 77977,truck 77978,dog 77979,airplane 77980,automobile 77981,ship 77982,truck 77983,ship 77984,automobile 77985,frog 77986,deer 77987,airplane 77988,deer 77989,automobile 77990,deer 77991,ship 77992,cat 77993,bird 77994,frog 77995,bird 77996,deer 77997,automobile 77998,deer 77999,automobile 78000,automobile 78001,deer 78002,frog 78003,dog 78004,airplane 78005,automobile 78006,deer 78007,dog 78008,cat 78009,bird 78010,deer 78011,deer 78012,dog 78013,automobile 78014,cat 78015,frog 78016,automobile 78017,cat 78018,ship 78019,frog 78020,bird 78021,dog 78022,cat 78023,ship 78024,cat 78025,horse 78026,truck 78027,cat 78028,deer 78029,truck 78030,cat 78031,truck 78032,deer 78033,bird 78034,cat 78035,bird 78036,airplane 78037,frog 78038,horse 78039,dog 78040,airplane 78041,frog 78042,dog 78043,horse 78044,automobile 78045,frog 78046,cat 78047,cat 78048,deer 78049,truck 78050,dog 78051,automobile 78052,frog 78053,frog 78054,deer 78055,airplane 78056,ship 78057,airplane 78058,airplane 78059,airplane 78060,cat 78061,airplane 78062,deer 78063,ship 78064,ship 78065,truck 78066,bird 78067,ship 78068,deer 78069,deer 78070,deer 78071,automobile 78072,ship 78073,frog 78074,dog 78075,bird 78076,bird 78077,horse 78078,deer 78079,frog 78080,dog 78081,dog 78082,frog 78083,automobile 78084,truck 78085,deer 78086,deer 78087,bird 78088,deer 78089,deer 78090,bird 78091,dog 78092,frog 78093,dog 78094,horse 78095,cat 78096,truck 78097,deer 78098,deer 78099,ship 78100,truck 78101,ship 78102,horse 78103,bird 78104,truck 78105,horse 78106,airplane 78107,deer 78108,frog 78109,cat 78110,dog 78111,frog 78112,cat 78113,truck 78114,automobile 78115,dog 78116,cat 78117,bird 78118,cat 78119,airplane 78120,deer 78121,dog 78122,ship 78123,dog 78124,cat 78125,bird 78126,deer 78127,ship 78128,frog 78129,deer 78130,cat 78131,truck 78132,horse 78133,airplane 78134,airplane 78135,cat 78136,dog 78137,dog 78138,truck 78139,deer 78140,cat 78141,automobile 78142,frog 78143,airplane 78144,truck 78145,ship 78146,automobile 78147,truck 78148,horse 78149,ship 78150,ship 78151,airplane 78152,cat 78153,airplane 78154,ship 78155,horse 78156,frog 78157,cat 78158,automobile 78159,ship 78160,cat 78161,frog 78162,horse 78163,bird 78164,cat 78165,bird 78166,deer 78167,truck 78168,bird 78169,deer 78170,frog 78171,cat 78172,airplane 78173,truck 78174,deer 78175,automobile 78176,airplane 78177,truck 78178,automobile 78179,frog 78180,truck 78181,dog 78182,ship 78183,ship 78184,deer 78185,automobile 78186,cat 78187,deer 78188,deer 78189,cat 78190,ship 78191,truck 78192,automobile 78193,automobile 78194,dog 78195,dog 78196,deer 78197,airplane 78198,airplane 78199,dog 78200,deer 78201,ship 78202,horse 78203,deer 78204,cat 78205,deer 78206,cat 78207,automobile 78208,horse 78209,truck 78210,airplane 78211,bird 78212,automobile 78213,dog 78214,dog 78215,deer 78216,horse 78217,cat 78218,cat 78219,deer 78220,cat 78221,deer 78222,airplane 78223,dog 78224,horse 78225,bird 78226,airplane 78227,automobile 78228,cat 78229,cat 78230,dog 78231,bird 78232,airplane 78233,horse 78234,cat 78235,ship 78236,cat 78237,cat 78238,bird 78239,truck 78240,cat 78241,horse 78242,bird 78243,frog 78244,cat 78245,truck 78246,automobile 78247,deer 78248,truck 78249,airplane 78250,deer 78251,bird 78252,bird 78253,dog 78254,bird 78255,deer 78256,horse 78257,frog 78258,deer 78259,dog 78260,dog 78261,bird 78262,automobile 78263,horse 78264,horse 78265,airplane 78266,deer 78267,ship 78268,airplane 78269,truck 78270,frog 78271,horse 78272,cat 78273,deer 78274,cat 78275,frog 78276,horse 78277,cat 78278,airplane 78279,frog 78280,deer 78281,truck 78282,deer 78283,ship 78284,deer 78285,airplane 78286,ship 78287,cat 78288,dog 78289,cat 78290,horse 78291,horse 78292,airplane 78293,bird 78294,automobile 78295,frog 78296,deer 78297,cat 78298,automobile 78299,ship 78300,horse 78301,airplane 78302,deer 78303,cat 78304,horse 78305,cat 78306,dog 78307,frog 78308,bird 78309,airplane 78310,horse 78311,cat 78312,deer 78313,bird 78314,deer 78315,cat 78316,horse 78317,truck 78318,horse 78319,truck 78320,truck 78321,truck 78322,airplane 78323,deer 78324,frog 78325,bird 78326,frog 78327,dog 78328,frog 78329,ship 78330,frog 78331,ship 78332,automobile 78333,dog 78334,cat 78335,cat 78336,horse 78337,truck 78338,cat 78339,airplane 78340,horse 78341,bird 78342,frog 78343,cat 78344,deer 78345,bird 78346,cat 78347,bird 78348,horse 78349,frog 78350,bird 78351,horse 78352,horse 78353,ship 78354,deer 78355,dog 78356,frog 78357,horse 78358,frog 78359,truck 78360,automobile 78361,deer 78362,ship 78363,ship 78364,truck 78365,truck 78366,frog 78367,bird 78368,dog 78369,horse 78370,deer 78371,dog 78372,dog 78373,cat 78374,dog 78375,horse 78376,frog 78377,ship 78378,bird 78379,deer 78380,ship 78381,ship 78382,frog 78383,frog 78384,cat 78385,truck 78386,deer 78387,cat 78388,bird 78389,frog 78390,cat 78391,airplane 78392,ship 78393,automobile 78394,truck 78395,frog 78396,horse 78397,cat 78398,truck 78399,automobile 78400,cat 78401,cat 78402,deer 78403,frog 78404,airplane 78405,deer 78406,dog 78407,ship 78408,airplane 78409,bird 78410,deer 78411,deer 78412,truck 78413,truck 78414,dog 78415,frog 78416,frog 78417,airplane 78418,truck 78419,ship 78420,truck 78421,deer 78422,dog 78423,automobile 78424,cat 78425,airplane 78426,horse 78427,bird 78428,airplane 78429,automobile 78430,dog 78431,automobile 78432,airplane 78433,cat 78434,deer 78435,ship 78436,truck 78437,horse 78438,bird 78439,cat 78440,cat 78441,deer 78442,bird 78443,automobile 78444,truck 78445,horse 78446,automobile 78447,cat 78448,deer 78449,truck 78450,deer 78451,deer 78452,truck 78453,automobile 78454,dog 78455,frog 78456,frog 78457,horse 78458,cat 78459,horse 78460,automobile 78461,automobile 78462,truck 78463,horse 78464,truck 78465,automobile 78466,bird 78467,dog 78468,truck 78469,horse 78470,truck 78471,cat 78472,cat 78473,ship 78474,ship 78475,deer 78476,ship 78477,bird 78478,airplane 78479,bird 78480,frog 78481,bird 78482,bird 78483,bird 78484,frog 78485,airplane 78486,airplane 78487,frog 78488,dog 78489,deer 78490,cat 78491,cat 78492,bird 78493,cat 78494,ship 78495,horse 78496,frog 78497,truck 78498,airplane 78499,frog 78500,airplane 78501,deer 78502,deer 78503,cat 78504,bird 78505,deer 78506,cat 78507,deer 78508,automobile 78509,bird 78510,cat 78511,airplane 78512,truck 78513,cat 78514,deer 78515,frog 78516,cat 78517,deer 78518,truck 78519,airplane 78520,bird 78521,frog 78522,deer 78523,deer 78524,ship 78525,frog 78526,truck 78527,dog 78528,truck 78529,horse 78530,dog 78531,frog 78532,truck 78533,cat 78534,horse 78535,ship 78536,ship 78537,cat 78538,airplane 78539,automobile 78540,truck 78541,dog 78542,truck 78543,ship 78544,cat 78545,truck 78546,airplane 78547,dog 78548,truck 78549,airplane 78550,deer 78551,airplane 78552,bird 78553,dog 78554,horse 78555,truck 78556,frog 78557,frog 78558,cat 78559,airplane 78560,deer 78561,deer 78562,cat 78563,truck 78564,truck 78565,dog 78566,airplane 78567,bird 78568,cat 78569,frog 78570,cat 78571,deer 78572,cat 78573,frog 78574,ship 78575,ship 78576,airplane 78577,automobile 78578,deer 78579,deer 78580,horse 78581,bird 78582,deer 78583,ship 78584,dog 78585,frog 78586,airplane 78587,bird 78588,deer 78589,horse 78590,airplane 78591,horse 78592,deer 78593,truck 78594,ship 78595,truck 78596,truck 78597,cat 78598,frog 78599,horse 78600,cat 78601,dog 78602,deer 78603,cat 78604,frog 78605,horse 78606,frog 78607,cat 78608,ship 78609,horse 78610,truck 78611,deer 78612,automobile 78613,bird 78614,cat 78615,dog 78616,automobile 78617,cat 78618,ship 78619,cat 78620,horse 78621,deer 78622,frog 78623,deer 78624,cat 78625,truck 78626,frog 78627,truck 78628,ship 78629,horse 78630,deer 78631,horse 78632,deer 78633,airplane 78634,ship 78635,frog 78636,dog 78637,ship 78638,truck 78639,ship 78640,horse 78641,bird 78642,truck 78643,truck 78644,ship 78645,dog 78646,dog 78647,dog 78648,automobile 78649,truck 78650,deer 78651,airplane 78652,dog 78653,truck 78654,horse 78655,airplane 78656,cat 78657,horse 78658,automobile 78659,frog 78660,automobile 78661,ship 78662,frog 78663,ship 78664,truck 78665,bird 78666,ship 78667,dog 78668,deer 78669,cat 78670,truck 78671,truck 78672,cat 78673,ship 78674,airplane 78675,cat 78676,truck 78677,cat 78678,truck 78679,dog 78680,cat 78681,horse 78682,horse 78683,deer 78684,horse 78685,deer 78686,ship 78687,ship 78688,airplane 78689,deer 78690,truck 78691,ship 78692,truck 78693,truck 78694,dog 78695,frog 78696,deer 78697,deer 78698,cat 78699,dog 78700,frog 78701,frog 78702,airplane 78703,frog 78704,deer 78705,frog 78706,deer 78707,dog 78708,horse 78709,bird 78710,deer 78711,ship 78712,dog 78713,deer 78714,deer 78715,ship 78716,airplane 78717,airplane 78718,ship 78719,deer 78720,deer 78721,airplane 78722,bird 78723,airplane 78724,airplane 78725,frog 78726,cat 78727,cat 78728,horse 78729,ship 78730,dog 78731,horse 78732,truck 78733,dog 78734,truck 78735,dog 78736,cat 78737,truck 78738,cat 78739,bird 78740,frog 78741,automobile 78742,horse 78743,cat 78744,deer 78745,horse 78746,frog 78747,airplane 78748,truck 78749,dog 78750,truck 78751,frog 78752,bird 78753,automobile 78754,truck 78755,ship 78756,dog 78757,ship 78758,frog 78759,cat 78760,frog 78761,frog 78762,automobile 78763,dog 78764,automobile 78765,airplane 78766,deer 78767,truck 78768,cat 78769,bird 78770,automobile 78771,automobile 78772,airplane 78773,truck 78774,cat 78775,dog 78776,ship 78777,ship 78778,bird 78779,deer 78780,frog 78781,automobile 78782,deer 78783,deer 78784,truck 78785,cat 78786,frog 78787,bird 78788,dog 78789,dog 78790,bird 78791,frog 78792,frog 78793,horse 78794,dog 78795,truck 78796,deer 78797,horse 78798,cat 78799,dog 78800,cat 78801,cat 78802,deer 78803,frog 78804,bird 78805,dog 78806,frog 78807,automobile 78808,deer 78809,deer 78810,cat 78811,horse 78812,horse 78813,frog 78814,cat 78815,dog 78816,automobile 78817,ship 78818,automobile 78819,deer 78820,deer 78821,bird 78822,bird 78823,frog 78824,ship 78825,truck 78826,ship 78827,truck 78828,cat 78829,ship 78830,ship 78831,truck 78832,deer 78833,automobile 78834,airplane 78835,dog 78836,cat 78837,cat 78838,bird 78839,dog 78840,dog 78841,cat 78842,dog 78843,frog 78844,cat 78845,frog 78846,ship 78847,deer 78848,bird 78849,automobile 78850,cat 78851,deer 78852,ship 78853,ship 78854,truck 78855,deer 78856,bird 78857,frog 78858,cat 78859,dog 78860,airplane 78861,ship 78862,cat 78863,automobile 78864,ship 78865,bird 78866,airplane 78867,automobile 78868,truck 78869,dog 78870,cat 78871,truck 78872,deer 78873,dog 78874,ship 78875,bird 78876,bird 78877,cat 78878,cat 78879,frog 78880,automobile 78881,airplane 78882,bird 78883,truck 78884,bird 78885,dog 78886,truck 78887,dog 78888,automobile 78889,dog 78890,horse 78891,truck 78892,automobile 78893,ship 78894,cat 78895,horse 78896,ship 78897,truck 78898,airplane 78899,dog 78900,deer 78901,deer 78902,automobile 78903,ship 78904,frog 78905,ship 78906,cat 78907,airplane 78908,cat 78909,horse 78910,horse 78911,frog 78912,ship 78913,bird 78914,airplane 78915,deer 78916,truck 78917,truck 78918,frog 78919,dog 78920,dog 78921,frog 78922,bird 78923,bird 78924,dog 78925,truck 78926,dog 78927,frog 78928,bird 78929,cat 78930,cat 78931,airplane 78932,deer 78933,automobile 78934,deer 78935,deer 78936,deer 78937,automobile 78938,frog 78939,automobile 78940,airplane 78941,airplane 78942,airplane 78943,deer 78944,bird 78945,truck 78946,deer 78947,cat 78948,automobile 78949,ship 78950,ship 78951,bird 78952,horse 78953,cat 78954,horse 78955,cat 78956,bird 78957,ship 78958,cat 78959,cat 78960,frog 78961,bird 78962,cat 78963,frog 78964,dog 78965,cat 78966,automobile 78967,cat 78968,deer 78969,cat 78970,dog 78971,horse 78972,automobile 78973,dog 78974,frog 78975,bird 78976,airplane 78977,bird 78978,horse 78979,dog 78980,automobile 78981,truck 78982,truck 78983,ship 78984,dog 78985,cat 78986,horse 78987,bird 78988,bird 78989,horse 78990,truck 78991,deer 78992,bird 78993,deer 78994,deer 78995,dog 78996,automobile 78997,automobile 78998,truck 78999,ship 79000,ship 79001,frog 79002,bird 79003,airplane 79004,cat 79005,truck 79006,deer 79007,automobile 79008,truck 79009,airplane 79010,airplane 79011,automobile 79012,ship 79013,deer 79014,deer 79015,bird 79016,dog 79017,horse 79018,deer 79019,bird 79020,horse 79021,truck 79022,truck 79023,ship 79024,truck 79025,truck 79026,dog 79027,automobile 79028,deer 79029,truck 79030,frog 79031,deer 79032,cat 79033,bird 79034,airplane 79035,automobile 79036,frog 79037,cat 79038,frog 79039,truck 79040,deer 79041,deer 79042,airplane 79043,dog 79044,truck 79045,deer 79046,airplane 79047,cat 79048,deer 79049,horse 79050,airplane 79051,ship 79052,ship 79053,deer 79054,frog 79055,truck 79056,cat 79057,truck 79058,frog 79059,cat 79060,frog 79061,frog 79062,frog 79063,airplane 79064,bird 79065,ship 79066,automobile 79067,automobile 79068,bird 79069,dog 79070,cat 79071,airplane 79072,airplane 79073,dog 79074,bird 79075,deer 79076,deer 79077,bird 79078,truck 79079,ship 79080,dog 79081,deer 79082,cat 79083,deer 79084,dog 79085,dog 79086,frog 79087,horse 79088,cat 79089,ship 79090,cat 79091,ship 79092,frog 79093,cat 79094,deer 79095,bird 79096,cat 79097,airplane 79098,truck 79099,automobile 79100,bird 79101,bird 79102,frog 79103,ship 79104,horse 79105,horse 79106,bird 79107,frog 79108,deer 79109,dog 79110,airplane 79111,cat 79112,cat 79113,frog 79114,automobile 79115,automobile 79116,deer 79117,deer 79118,automobile 79119,dog 79120,truck 79121,truck 79122,automobile 79123,airplane 79124,dog 79125,ship 79126,deer 79127,dog 79128,frog 79129,ship 79130,ship 79131,horse 79132,frog 79133,cat 79134,airplane 79135,truck 79136,cat 79137,horse 79138,dog 79139,horse 79140,bird 79141,deer 79142,bird 79143,dog 79144,airplane 79145,bird 79146,truck 79147,horse 79148,bird 79149,bird 79150,frog 79151,ship 79152,horse 79153,horse 79154,frog 79155,truck 79156,dog 79157,horse 79158,airplane 79159,truck 79160,dog 79161,automobile 79162,automobile 79163,deer 79164,horse 79165,airplane 79166,frog 79167,automobile 79168,horse 79169,bird 79170,deer 79171,horse 79172,dog 79173,deer 79174,automobile 79175,truck 79176,dog 79177,cat 79178,deer 79179,bird 79180,bird 79181,automobile 79182,truck 79183,ship 79184,truck 79185,automobile 79186,automobile 79187,cat 79188,bird 79189,truck 79190,truck 79191,deer 79192,frog 79193,truck 79194,deer 79195,airplane 79196,cat 79197,frog 79198,airplane 79199,dog 79200,dog 79201,frog 79202,deer 79203,automobile 79204,horse 79205,dog 79206,horse 79207,cat 79208,truck 79209,horse 79210,deer 79211,horse 79212,cat 79213,frog 79214,airplane 79215,deer 79216,automobile 79217,cat 79218,deer 79219,frog 79220,deer 79221,frog 79222,deer 79223,horse 79224,cat 79225,airplane 79226,deer 79227,airplane 79228,cat 79229,bird 79230,deer 79231,airplane 79232,cat 79233,dog 79234,dog 79235,deer 79236,dog 79237,airplane 79238,dog 79239,dog 79240,frog 79241,cat 79242,truck 79243,airplane 79244,frog 79245,truck 79246,truck 79247,automobile 79248,truck 79249,cat 79250,dog 79251,truck 79252,frog 79253,deer 79254,cat 79255,airplane 79256,deer 79257,ship 79258,airplane 79259,deer 79260,cat 79261,truck 79262,horse 79263,automobile 79264,cat 79265,dog 79266,ship 79267,deer 79268,cat 79269,horse 79270,automobile 79271,airplane 79272,deer 79273,automobile 79274,cat 79275,dog 79276,bird 79277,cat 79278,automobile 79279,truck 79280,cat 79281,cat 79282,deer 79283,dog 79284,truck 79285,ship 79286,automobile 79287,cat 79288,horse 79289,frog 79290,horse 79291,ship 79292,cat 79293,bird 79294,dog 79295,cat 79296,frog 79297,deer 79298,bird 79299,bird 79300,deer 79301,cat 79302,ship 79303,automobile 79304,horse 79305,cat 79306,frog 79307,automobile 79308,frog 79309,ship 79310,deer 79311,ship 79312,cat 79313,bird 79314,ship 79315,ship 79316,horse 79317,deer 79318,airplane 79319,horse 79320,frog 79321,automobile 79322,horse 79323,ship 79324,ship 79325,truck 79326,truck 79327,ship 79328,airplane 79329,horse 79330,horse 79331,horse 79332,ship 79333,automobile 79334,horse 79335,ship 79336,deer 79337,cat 79338,cat 79339,frog 79340,bird 79341,truck 79342,cat 79343,bird 79344,truck 79345,cat 79346,airplane 79347,frog 79348,ship 79349,frog 79350,deer 79351,airplane 79352,dog 79353,truck 79354,bird 79355,frog 79356,airplane 79357,bird 79358,cat 79359,ship 79360,bird 79361,truck 79362,cat 79363,frog 79364,ship 79365,truck 79366,automobile 79367,dog 79368,airplane 79369,cat 79370,truck 79371,truck 79372,bird 79373,frog 79374,truck 79375,truck 79376,truck 79377,dog 79378,frog 79379,airplane 79380,frog 79381,truck 79382,truck 79383,deer 79384,airplane 79385,bird 79386,cat 79387,airplane 79388,cat 79389,airplane 79390,deer 79391,dog 79392,deer 79393,automobile 79394,automobile 79395,airplane 79396,dog 79397,truck 79398,frog 79399,deer 79400,horse 79401,deer 79402,automobile 79403,bird 79404,automobile 79405,horse 79406,frog 79407,truck 79408,deer 79409,automobile 79410,horse 79411,deer 79412,airplane 79413,horse 79414,horse 79415,frog 79416,automobile 79417,dog 79418,horse 79419,deer 79420,horse 79421,dog 79422,bird 79423,cat 79424,deer 79425,deer 79426,bird 79427,bird 79428,truck 79429,ship 79430,automobile 79431,dog 79432,horse 79433,ship 79434,cat 79435,cat 79436,frog 79437,cat 79438,deer 79439,ship 79440,deer 79441,frog 79442,automobile 79443,cat 79444,cat 79445,truck 79446,truck 79447,truck 79448,truck 79449,truck 79450,dog 79451,horse 79452,bird 79453,ship 79454,deer 79455,horse 79456,deer 79457,truck 79458,cat 79459,dog 79460,cat 79461,ship 79462,dog 79463,dog 79464,ship 79465,deer 79466,deer 79467,cat 79468,frog 79469,ship 79470,frog 79471,deer 79472,dog 79473,airplane 79474,dog 79475,automobile 79476,airplane 79477,horse 79478,frog 79479,airplane 79480,ship 79481,bird 79482,bird 79483,ship 79484,airplane 79485,deer 79486,deer 79487,horse 79488,bird 79489,truck 79490,deer 79491,bird 79492,airplane 79493,dog 79494,dog 79495,deer 79496,truck 79497,dog 79498,automobile 79499,truck 79500,cat 79501,deer 79502,frog 79503,bird 79504,automobile 79505,airplane 79506,automobile 79507,deer 79508,horse 79509,ship 79510,cat 79511,dog 79512,bird 79513,bird 79514,horse 79515,automobile 79516,airplane 79517,cat 79518,horse 79519,dog 79520,deer 79521,dog 79522,automobile 79523,cat 79524,dog 79525,deer 79526,frog 79527,dog 79528,cat 79529,deer 79530,deer 79531,deer 79532,bird 79533,deer 79534,bird 79535,dog 79536,horse 79537,horse 79538,airplane 79539,horse 79540,ship 79541,horse 79542,frog 79543,frog 79544,frog 79545,dog 79546,frog 79547,cat 79548,bird 79549,horse 79550,cat 79551,dog 79552,airplane 79553,horse 79554,ship 79555,cat 79556,airplane 79557,ship 79558,bird 79559,deer 79560,dog 79561,automobile 79562,ship 79563,horse 79564,deer 79565,frog 79566,deer 79567,bird 79568,frog 79569,dog 79570,frog 79571,horse 79572,airplane 79573,truck 79574,deer 79575,ship 79576,cat 79577,deer 79578,airplane 79579,ship 79580,truck 79581,bird 79582,bird 79583,horse 79584,truck 79585,cat 79586,deer 79587,bird 79588,cat 79589,frog 79590,horse 79591,bird 79592,dog 79593,airplane 79594,bird 79595,deer 79596,deer 79597,deer 79598,cat 79599,bird 79600,frog 79601,frog 79602,truck 79603,truck 79604,frog 79605,dog 79606,ship 79607,airplane 79608,frog 79609,automobile 79610,ship 79611,deer 79612,dog 79613,airplane 79614,horse 79615,horse 79616,deer 79617,airplane 79618,cat 79619,ship 79620,bird 79621,horse 79622,deer 79623,bird 79624,dog 79625,dog 79626,deer 79627,frog 79628,automobile 79629,cat 79630,horse 79631,cat 79632,frog 79633,ship 79634,ship 79635,frog 79636,truck 79637,automobile 79638,airplane 79639,horse 79640,bird 79641,cat 79642,ship 79643,deer 79644,airplane 79645,frog 79646,deer 79647,airplane 79648,dog 79649,truck 79650,airplane 79651,frog 79652,automobile 79653,ship 79654,cat 79655,truck 79656,horse 79657,deer 79658,frog 79659,deer 79660,dog 79661,truck 79662,frog 79663,frog 79664,dog 79665,bird 79666,automobile 79667,ship 79668,frog 79669,automobile 79670,deer 79671,deer 79672,ship 79673,ship 79674,dog 79675,truck 79676,cat 79677,bird 79678,truck 79679,airplane 79680,ship 79681,ship 79682,cat 79683,automobile 79684,ship 79685,deer 79686,cat 79687,airplane 79688,dog 79689,horse 79690,deer 79691,truck 79692,cat 79693,dog 79694,frog 79695,airplane 79696,horse 79697,cat 79698,deer 79699,deer 79700,dog 79701,ship 79702,truck 79703,horse 79704,truck 79705,cat 79706,dog 79707,cat 79708,automobile 79709,cat 79710,airplane 79711,dog 79712,frog 79713,cat 79714,bird 79715,dog 79716,ship 79717,frog 79718,automobile 79719,deer 79720,horse 79721,airplane 79722,airplane 79723,bird 79724,truck 79725,bird 79726,dog 79727,bird 79728,deer 79729,deer 79730,frog 79731,truck 79732,frog 79733,truck 79734,deer 79735,horse 79736,airplane 79737,deer 79738,truck 79739,automobile 79740,dog 79741,horse 79742,bird 79743,automobile 79744,bird 79745,automobile 79746,frog 79747,ship 79748,truck 79749,cat 79750,dog 79751,dog 79752,frog 79753,truck 79754,bird 79755,truck 79756,bird 79757,horse 79758,bird 79759,ship 79760,ship 79761,cat 79762,cat 79763,dog 79764,airplane 79765,frog 79766,ship 79767,ship 79768,truck 79769,dog 79770,truck 79771,airplane 79772,dog 79773,cat 79774,deer 79775,deer 79776,frog 79777,frog 79778,cat 79779,cat 79780,bird 79781,dog 79782,frog 79783,truck 79784,dog 79785,cat 79786,truck 79787,dog 79788,dog 79789,deer 79790,automobile 79791,horse 79792,bird 79793,frog 79794,deer 79795,deer 79796,cat 79797,dog 79798,truck 79799,automobile 79800,automobile 79801,ship 79802,airplane 79803,cat 79804,ship 79805,cat 79806,dog 79807,truck 79808,airplane 79809,horse 79810,truck 79811,airplane 79812,automobile 79813,deer 79814,ship 79815,frog 79816,deer 79817,dog 79818,frog 79819,deer 79820,horse 79821,airplane 79822,bird 79823,truck 79824,dog 79825,airplane 79826,ship 79827,deer 79828,deer 79829,deer 79830,ship 79831,horse 79832,automobile 79833,airplane 79834,automobile 79835,horse 79836,frog 79837,horse 79838,dog 79839,truck 79840,automobile 79841,ship 79842,truck 79843,automobile 79844,airplane 79845,ship 79846,dog 79847,ship 79848,deer 79849,cat 79850,cat 79851,ship 79852,deer 79853,dog 79854,airplane 79855,cat 79856,ship 79857,automobile 79858,dog 79859,frog 79860,truck 79861,deer 79862,horse 79863,airplane 79864,frog 79865,horse 79866,cat 79867,frog 79868,automobile 79869,cat 79870,bird 79871,automobile 79872,truck 79873,ship 79874,truck 79875,dog 79876,frog 79877,deer 79878,truck 79879,horse 79880,truck 79881,cat 79882,airplane 79883,cat 79884,deer 79885,dog 79886,deer 79887,deer 79888,bird 79889,deer 79890,frog 79891,dog 79892,ship 79893,truck 79894,dog 79895,automobile 79896,ship 79897,frog 79898,bird 79899,bird 79900,airplane 79901,deer 79902,airplane 79903,deer 79904,deer 79905,truck 79906,horse 79907,truck 79908,airplane 79909,airplane 79910,airplane 79911,automobile 79912,truck 79913,cat 79914,truck 79915,bird 79916,automobile 79917,frog 79918,truck 79919,ship 79920,truck 79921,airplane 79922,cat 79923,truck 79924,bird 79925,bird 79926,frog 79927,ship 79928,horse 79929,dog 79930,dog 79931,truck 79932,dog 79933,deer 79934,frog 79935,horse 79936,ship 79937,frog 79938,horse 79939,ship 79940,cat 79941,dog 79942,horse 79943,frog 79944,bird 79945,frog 79946,cat 79947,bird 79948,deer 79949,bird 79950,bird 79951,frog 79952,truck 79953,frog 79954,ship 79955,cat 79956,horse 79957,deer 79958,bird 79959,deer 79960,dog 79961,ship 79962,frog 79963,bird 79964,cat 79965,horse 79966,truck 79967,frog 79968,cat 79969,deer 79970,deer 79971,bird 79972,truck 79973,horse 79974,deer 79975,dog 79976,deer 79977,dog 79978,bird 79979,frog 79980,airplane 79981,airplane 79982,dog 79983,airplane 79984,deer 79985,horse 79986,ship 79987,deer 79988,dog 79989,deer 79990,truck 79991,airplane 79992,automobile 79993,bird 79994,horse 79995,airplane 79996,automobile 79997,automobile 79998,airplane 79999,truck 80000,horse 80001,truck 80002,cat 80003,truck 80004,dog 80005,bird 80006,horse 80007,ship 80008,deer 80009,truck 80010,bird 80011,deer 80012,automobile 80013,bird 80014,frog 80015,cat 80016,airplane 80017,dog 80018,horse 80019,horse 80020,dog 80021,automobile 80022,deer 80023,deer 80024,dog 80025,automobile 80026,ship 80027,airplane 80028,horse 80029,airplane 80030,cat 80031,deer 80032,bird 80033,truck 80034,horse 80035,automobile 80036,dog 80037,horse 80038,horse 80039,truck 80040,frog 80041,truck 80042,deer 80043,deer 80044,ship 80045,airplane 80046,deer 80047,truck 80048,airplane 80049,cat 80050,automobile 80051,cat 80052,frog 80053,automobile 80054,frog 80055,automobile 80056,frog 80057,deer 80058,dog 80059,bird 80060,bird 80061,automobile 80062,ship 80063,bird 80064,dog 80065,dog 80066,deer 80067,cat 80068,truck 80069,frog 80070,dog 80071,bird 80072,truck 80073,truck 80074,deer 80075,truck 80076,dog 80077,airplane 80078,bird 80079,dog 80080,bird 80081,cat 80082,horse 80083,bird 80084,frog 80085,airplane 80086,horse 80087,truck 80088,horse 80089,dog 80090,dog 80091,bird 80092,airplane 80093,automobile 80094,ship 80095,deer 80096,bird 80097,horse 80098,frog 80099,bird 80100,horse 80101,dog 80102,automobile 80103,dog 80104,airplane 80105,bird 80106,bird 80107,dog 80108,cat 80109,deer 80110,frog 80111,ship 80112,deer 80113,automobile 80114,bird 80115,automobile 80116,dog 80117,ship 80118,airplane 80119,frog 80120,ship 80121,truck 80122,frog 80123,cat 80124,truck 80125,frog 80126,airplane 80127,bird 80128,deer 80129,dog 80130,frog 80131,bird 80132,frog 80133,horse 80134,truck 80135,cat 80136,horse 80137,deer 80138,automobile 80139,automobile 80140,deer 80141,automobile 80142,deer 80143,airplane 80144,automobile 80145,cat 80146,cat 80147,bird 80148,truck 80149,horse 80150,dog 80151,horse 80152,dog 80153,cat 80154,frog 80155,bird 80156,deer 80157,deer 80158,ship 80159,truck 80160,horse 80161,deer 80162,deer 80163,horse 80164,cat 80165,bird 80166,frog 80167,frog 80168,dog 80169,horse 80170,bird 80171,truck 80172,truck 80173,bird 80174,horse 80175,truck 80176,horse 80177,truck 80178,airplane 80179,dog 80180,airplane 80181,automobile 80182,ship 80183,cat 80184,deer 80185,truck 80186,cat 80187,truck 80188,deer 80189,horse 80190,airplane 80191,frog 80192,dog 80193,deer 80194,deer 80195,ship 80196,bird 80197,airplane 80198,airplane 80199,cat 80200,frog 80201,horse 80202,deer 80203,cat 80204,truck 80205,automobile 80206,ship 80207,deer 80208,frog 80209,automobile 80210,horse 80211,truck 80212,airplane 80213,dog 80214,ship 80215,truck 80216,ship 80217,horse 80218,dog 80219,ship 80220,automobile 80221,ship 80222,cat 80223,ship 80224,airplane 80225,automobile 80226,frog 80227,automobile 80228,horse 80229,dog 80230,frog 80231,airplane 80232,automobile 80233,horse 80234,ship 80235,airplane 80236,automobile 80237,cat 80238,deer 80239,dog 80240,truck 80241,horse 80242,bird 80243,deer 80244,automobile 80245,deer 80246,dog 80247,truck 80248,airplane 80249,cat 80250,cat 80251,cat 80252,bird 80253,truck 80254,frog 80255,dog 80256,dog 80257,deer 80258,frog 80259,frog 80260,truck 80261,cat 80262,cat 80263,bird 80264,horse 80265,frog 80266,deer 80267,frog 80268,airplane 80269,frog 80270,ship 80271,deer 80272,bird 80273,deer 80274,automobile 80275,automobile 80276,automobile 80277,airplane 80278,deer 80279,frog 80280,cat 80281,bird 80282,deer 80283,cat 80284,ship 80285,airplane 80286,bird 80287,automobile 80288,truck 80289,dog 80290,horse 80291,ship 80292,cat 80293,ship 80294,automobile 80295,bird 80296,bird 80297,cat 80298,cat 80299,bird 80300,cat 80301,deer 80302,horse 80303,cat 80304,bird 80305,deer 80306,frog 80307,horse 80308,automobile 80309,deer 80310,automobile 80311,truck 80312,dog 80313,cat 80314,airplane 80315,deer 80316,cat 80317,frog 80318,bird 80319,truck 80320,frog 80321,airplane 80322,deer 80323,ship 80324,dog 80325,horse 80326,airplane 80327,horse 80328,bird 80329,airplane 80330,bird 80331,truck 80332,automobile 80333,truck 80334,dog 80335,deer 80336,ship 80337,dog 80338,cat 80339,automobile 80340,ship 80341,deer 80342,frog 80343,deer 80344,ship 80345,horse 80346,horse 80347,deer 80348,frog 80349,deer 80350,dog 80351,airplane 80352,horse 80353,frog 80354,deer 80355,dog 80356,deer 80357,ship 80358,horse 80359,bird 80360,truck 80361,frog 80362,deer 80363,dog 80364,frog 80365,deer 80366,cat 80367,cat 80368,bird 80369,frog 80370,horse 80371,deer 80372,cat 80373,dog 80374,deer 80375,bird 80376,bird 80377,dog 80378,dog 80379,truck 80380,cat 80381,horse 80382,truck 80383,deer 80384,horse 80385,frog 80386,dog 80387,deer 80388,frog 80389,deer 80390,airplane 80391,truck 80392,deer 80393,deer 80394,bird 80395,horse 80396,airplane 80397,cat 80398,truck 80399,cat 80400,ship 80401,dog 80402,airplane 80403,cat 80404,cat 80405,horse 80406,bird 80407,truck 80408,automobile 80409,cat 80410,automobile 80411,bird 80412,frog 80413,automobile 80414,truck 80415,ship 80416,frog 80417,bird 80418,dog 80419,truck 80420,automobile 80421,automobile 80422,cat 80423,deer 80424,airplane 80425,cat 80426,frog 80427,dog 80428,deer 80429,truck 80430,cat 80431,automobile 80432,deer 80433,airplane 80434,horse 80435,truck 80436,frog 80437,horse 80438,horse 80439,frog 80440,truck 80441,dog 80442,truck 80443,deer 80444,airplane 80445,deer 80446,frog 80447,automobile 80448,horse 80449,ship 80450,ship 80451,dog 80452,ship 80453,ship 80454,deer 80455,cat 80456,deer 80457,automobile 80458,deer 80459,truck 80460,cat 80461,bird 80462,deer 80463,frog 80464,automobile 80465,cat 80466,cat 80467,frog 80468,truck 80469,airplane 80470,cat 80471,horse 80472,dog 80473,airplane 80474,dog 80475,frog 80476,frog 80477,truck 80478,frog 80479,truck 80480,truck 80481,bird 80482,truck 80483,dog 80484,deer 80485,automobile 80486,horse 80487,horse 80488,automobile 80489,frog 80490,cat 80491,airplane 80492,cat 80493,truck 80494,horse 80495,cat 80496,bird 80497,ship 80498,frog 80499,cat 80500,ship 80501,deer 80502,horse 80503,automobile 80504,frog 80505,truck 80506,automobile 80507,deer 80508,horse 80509,airplane 80510,ship 80511,cat 80512,horse 80513,bird 80514,truck 80515,bird 80516,ship 80517,truck 80518,deer 80519,cat 80520,truck 80521,truck 80522,deer 80523,horse 80524,dog 80525,dog 80526,deer 80527,bird 80528,automobile 80529,cat 80530,automobile 80531,truck 80532,bird 80533,automobile 80534,deer 80535,cat 80536,dog 80537,horse 80538,airplane 80539,horse 80540,truck 80541,dog 80542,frog 80543,airplane 80544,airplane 80545,horse 80546,deer 80547,truck 80548,horse 80549,frog 80550,ship 80551,cat 80552,deer 80553,cat 80554,automobile 80555,dog 80556,truck 80557,bird 80558,dog 80559,frog 80560,deer 80561,deer 80562,ship 80563,frog 80564,deer 80565,cat 80566,dog 80567,truck 80568,frog 80569,bird 80570,cat 80571,dog 80572,bird 80573,bird 80574,airplane 80575,truck 80576,cat 80577,bird 80578,dog 80579,ship 80580,dog 80581,cat 80582,dog 80583,deer 80584,frog 80585,ship 80586,dog 80587,bird 80588,airplane 80589,deer 80590,ship 80591,cat 80592,cat 80593,cat 80594,airplane 80595,frog 80596,horse 80597,deer 80598,cat 80599,ship 80600,dog 80601,deer 80602,truck 80603,dog 80604,frog 80605,ship 80606,truck 80607,automobile 80608,airplane 80609,automobile 80610,cat 80611,deer 80612,cat 80613,deer 80614,deer 80615,bird 80616,ship 80617,frog 80618,bird 80619,ship 80620,frog 80621,frog 80622,bird 80623,automobile 80624,truck 80625,cat 80626,bird 80627,airplane 80628,dog 80629,cat 80630,dog 80631,cat 80632,deer 80633,airplane 80634,truck 80635,frog 80636,ship 80637,airplane 80638,bird 80639,cat 80640,airplane 80641,frog 80642,horse 80643,horse 80644,automobile 80645,deer 80646,automobile 80647,cat 80648,frog 80649,ship 80650,frog 80651,cat 80652,bird 80653,frog 80654,dog 80655,horse 80656,ship 80657,ship 80658,frog 80659,cat 80660,frog 80661,bird 80662,truck 80663,dog 80664,cat 80665,deer 80666,frog 80667,frog 80668,deer 80669,deer 80670,airplane 80671,dog 80672,cat 80673,truck 80674,frog 80675,horse 80676,deer 80677,deer 80678,truck 80679,frog 80680,cat 80681,horse 80682,airplane 80683,airplane 80684,horse 80685,bird 80686,horse 80687,truck 80688,cat 80689,dog 80690,truck 80691,airplane 80692,frog 80693,bird 80694,frog 80695,bird 80696,dog 80697,horse 80698,horse 80699,dog 80700,cat 80701,dog 80702,cat 80703,automobile 80704,horse 80705,truck 80706,ship 80707,automobile 80708,horse 80709,cat 80710,deer 80711,bird 80712,frog 80713,truck 80714,frog 80715,truck 80716,automobile 80717,frog 80718,ship 80719,ship 80720,cat 80721,frog 80722,ship 80723,dog 80724,ship 80725,cat 80726,bird 80727,cat 80728,bird 80729,frog 80730,horse 80731,deer 80732,cat 80733,cat 80734,frog 80735,horse 80736,airplane 80737,truck 80738,deer 80739,cat 80740,dog 80741,deer 80742,horse 80743,airplane 80744,airplane 80745,bird 80746,frog 80747,dog 80748,ship 80749,deer 80750,deer 80751,deer 80752,dog 80753,truck 80754,horse 80755,truck 80756,deer 80757,cat 80758,automobile 80759,automobile 80760,automobile 80761,deer 80762,truck 80763,ship 80764,truck 80765,airplane 80766,horse 80767,cat 80768,truck 80769,deer 80770,automobile 80771,truck 80772,horse 80773,frog 80774,cat 80775,frog 80776,cat 80777,deer 80778,bird 80779,frog 80780,cat 80781,automobile 80782,frog 80783,truck 80784,truck 80785,cat 80786,truck 80787,frog 80788,truck 80789,ship 80790,dog 80791,automobile 80792,horse 80793,bird 80794,bird 80795,dog 80796,bird 80797,ship 80798,dog 80799,automobile 80800,cat 80801,airplane 80802,dog 80803,bird 80804,dog 80805,dog 80806,deer 80807,airplane 80808,deer 80809,horse 80810,airplane 80811,dog 80812,horse 80813,horse 80814,automobile 80815,cat 80816,deer 80817,airplane 80818,deer 80819,ship 80820,bird 80821,airplane 80822,cat 80823,truck 80824,cat 80825,deer 80826,deer 80827,ship 80828,frog 80829,deer 80830,ship 80831,frog 80832,deer 80833,deer 80834,cat 80835,ship 80836,airplane 80837,airplane 80838,dog 80839,automobile 80840,automobile 80841,frog 80842,ship 80843,bird 80844,dog 80845,automobile 80846,truck 80847,horse 80848,airplane 80849,ship 80850,cat 80851,airplane 80852,cat 80853,ship 80854,bird 80855,truck 80856,automobile 80857,deer 80858,truck 80859,deer 80860,cat 80861,automobile 80862,ship 80863,deer 80864,ship 80865,frog 80866,cat 80867,airplane 80868,cat 80869,airplane 80870,frog 80871,cat 80872,airplane 80873,cat 80874,automobile 80875,frog 80876,dog 80877,automobile 80878,horse 80879,dog 80880,automobile 80881,cat 80882,cat 80883,deer 80884,horse 80885,airplane 80886,ship 80887,ship 80888,deer 80889,frog 80890,ship 80891,horse 80892,bird 80893,deer 80894,cat 80895,frog 80896,airplane 80897,dog 80898,ship 80899,bird 80900,horse 80901,ship 80902,deer 80903,airplane 80904,bird 80905,airplane 80906,frog 80907,bird 80908,bird 80909,automobile 80910,cat 80911,truck 80912,cat 80913,frog 80914,bird 80915,ship 80916,ship 80917,deer 80918,dog 80919,deer 80920,ship 80921,horse 80922,dog 80923,deer 80924,deer 80925,horse 80926,bird 80927,deer 80928,truck 80929,bird 80930,deer 80931,cat 80932,horse 80933,cat 80934,truck 80935,frog 80936,deer 80937,dog 80938,automobile 80939,horse 80940,dog 80941,frog 80942,cat 80943,deer 80944,airplane 80945,horse 80946,truck 80947,cat 80948,cat 80949,truck 80950,horse 80951,dog 80952,airplane 80953,airplane 80954,dog 80955,truck 80956,frog 80957,frog 80958,airplane 80959,deer 80960,cat 80961,automobile 80962,dog 80963,bird 80964,automobile 80965,automobile 80966,frog 80967,automobile 80968,truck 80969,bird 80970,deer 80971,frog 80972,truck 80973,truck 80974,deer 80975,cat 80976,frog 80977,dog 80978,truck 80979,cat 80980,ship 80981,truck 80982,horse 80983,truck 80984,ship 80985,truck 80986,airplane 80987,deer 80988,frog 80989,bird 80990,automobile 80991,cat 80992,horse 80993,cat 80994,truck 80995,frog 80996,horse 80997,airplane 80998,horse 80999,dog 81000,truck 81001,frog 81002,bird 81003,horse 81004,frog 81005,dog 81006,deer 81007,automobile 81008,deer 81009,horse 81010,dog 81011,truck 81012,ship 81013,frog 81014,truck 81015,bird 81016,automobile 81017,automobile 81018,deer 81019,cat 81020,frog 81021,cat 81022,cat 81023,ship 81024,deer 81025,airplane 81026,deer 81027,truck 81028,automobile 81029,bird 81030,airplane 81031,frog 81032,deer 81033,airplane 81034,frog 81035,deer 81036,airplane 81037,airplane 81038,ship 81039,bird 81040,cat 81041,bird 81042,bird 81043,airplane 81044,frog 81045,deer 81046,truck 81047,cat 81048,frog 81049,ship 81050,truck 81051,truck 81052,truck 81053,cat 81054,frog 81055,deer 81056,frog 81057,truck 81058,truck 81059,frog 81060,cat 81061,truck 81062,cat 81063,truck 81064,airplane 81065,bird 81066,dog 81067,ship 81068,deer 81069,bird 81070,deer 81071,truck 81072,frog 81073,truck 81074,deer 81075,truck 81076,deer 81077,truck 81078,truck 81079,deer 81080,truck 81081,deer 81082,horse 81083,bird 81084,cat 81085,horse 81086,ship 81087,bird 81088,bird 81089,automobile 81090,frog 81091,deer 81092,automobile 81093,deer 81094,frog 81095,ship 81096,cat 81097,truck 81098,cat 81099,deer 81100,deer 81101,truck 81102,dog 81103,cat 81104,deer 81105,horse 81106,ship 81107,horse 81108,cat 81109,bird 81110,cat 81111,horse 81112,automobile 81113,automobile 81114,deer 81115,truck 81116,airplane 81117,deer 81118,truck 81119,ship 81120,truck 81121,cat 81122,cat 81123,dog 81124,airplane 81125,bird 81126,airplane 81127,automobile 81128,ship 81129,cat 81130,bird 81131,ship 81132,truck 81133,ship 81134,frog 81135,ship 81136,cat 81137,bird 81138,dog 81139,frog 81140,frog 81141,bird 81142,truck 81143,dog 81144,deer 81145,cat 81146,deer 81147,ship 81148,cat 81149,horse 81150,airplane 81151,dog 81152,deer 81153,horse 81154,airplane 81155,bird 81156,bird 81157,automobile 81158,ship 81159,frog 81160,truck 81161,dog 81162,airplane 81163,automobile 81164,ship 81165,dog 81166,deer 81167,dog 81168,dog 81169,airplane 81170,ship 81171,airplane 81172,frog 81173,frog 81174,dog 81175,dog 81176,ship 81177,bird 81178,airplane 81179,deer 81180,truck 81181,dog 81182,deer 81183,cat 81184,cat 81185,horse 81186,frog 81187,deer 81188,ship 81189,dog 81190,dog 81191,dog 81192,automobile 81193,airplane 81194,ship 81195,bird 81196,ship 81197,dog 81198,truck 81199,airplane 81200,dog 81201,cat 81202,bird 81203,cat 81204,airplane 81205,horse 81206,deer 81207,frog 81208,cat 81209,deer 81210,deer 81211,deer 81212,frog 81213,cat 81214,frog 81215,cat 81216,cat 81217,frog 81218,ship 81219,deer 81220,ship 81221,horse 81222,automobile 81223,airplane 81224,truck 81225,bird 81226,automobile 81227,ship 81228,bird 81229,bird 81230,cat 81231,dog 81232,horse 81233,airplane 81234,deer 81235,frog 81236,bird 81237,bird 81238,airplane 81239,dog 81240,cat 81241,dog 81242,horse 81243,truck 81244,cat 81245,airplane 81246,truck 81247,cat 81248,ship 81249,cat 81250,cat 81251,horse 81252,truck 81253,frog 81254,frog 81255,frog 81256,airplane 81257,frog 81258,automobile 81259,bird 81260,deer 81261,deer 81262,deer 81263,truck 81264,horse 81265,airplane 81266,cat 81267,dog 81268,horse 81269,bird 81270,bird 81271,bird 81272,horse 81273,deer 81274,airplane 81275,frog 81276,deer 81277,horse 81278,automobile 81279,truck 81280,ship 81281,deer 81282,ship 81283,cat 81284,truck 81285,airplane 81286,truck 81287,horse 81288,dog 81289,bird 81290,cat 81291,deer 81292,deer 81293,truck 81294,airplane 81295,bird 81296,cat 81297,deer 81298,bird 81299,horse 81300,dog 81301,ship 81302,dog 81303,truck 81304,deer 81305,dog 81306,ship 81307,cat 81308,deer 81309,frog 81310,deer 81311,horse 81312,truck 81313,bird 81314,ship 81315,automobile 81316,truck 81317,deer 81318,airplane 81319,dog 81320,ship 81321,frog 81322,airplane 81323,cat 81324,frog 81325,horse 81326,frog 81327,frog 81328,deer 81329,horse 81330,frog 81331,truck 81332,frog 81333,deer 81334,frog 81335,dog 81336,deer 81337,ship 81338,ship 81339,ship 81340,dog 81341,bird 81342,truck 81343,horse 81344,truck 81345,ship 81346,frog 81347,airplane 81348,frog 81349,dog 81350,deer 81351,airplane 81352,frog 81353,deer 81354,deer 81355,cat 81356,frog 81357,deer 81358,airplane 81359,bird 81360,dog 81361,ship 81362,bird 81363,frog 81364,dog 81365,cat 81366,deer 81367,dog 81368,dog 81369,cat 81370,cat 81371,automobile 81372,cat 81373,horse 81374,automobile 81375,automobile 81376,truck 81377,truck 81378,bird 81379,airplane 81380,bird 81381,horse 81382,bird 81383,cat 81384,frog 81385,deer 81386,truck 81387,dog 81388,dog 81389,dog 81390,dog 81391,deer 81392,automobile 81393,frog 81394,cat 81395,cat 81396,airplane 81397,airplane 81398,ship 81399,truck 81400,cat 81401,deer 81402,truck 81403,deer 81404,airplane 81405,truck 81406,frog 81407,frog 81408,airplane 81409,deer 81410,deer 81411,truck 81412,cat 81413,airplane 81414,cat 81415,dog 81416,dog 81417,deer 81418,cat 81419,dog 81420,horse 81421,cat 81422,ship 81423,frog 81424,horse 81425,ship 81426,airplane 81427,cat 81428,truck 81429,automobile 81430,frog 81431,truck 81432,bird 81433,deer 81434,horse 81435,deer 81436,cat 81437,airplane 81438,frog 81439,cat 81440,truck 81441,frog 81442,dog 81443,horse 81444,dog 81445,dog 81446,cat 81447,frog 81448,deer 81449,ship 81450,horse 81451,deer 81452,horse 81453,deer 81454,dog 81455,deer 81456,truck 81457,deer 81458,ship 81459,dog 81460,automobile 81461,horse 81462,bird 81463,airplane 81464,bird 81465,airplane 81466,cat 81467,frog 81468,ship 81469,truck 81470,deer 81471,frog 81472,bird 81473,dog 81474,bird 81475,ship 81476,deer 81477,horse 81478,bird 81479,dog 81480,frog 81481,automobile 81482,deer 81483,truck 81484,ship 81485,frog 81486,ship 81487,automobile 81488,truck 81489,frog 81490,dog 81491,deer 81492,automobile 81493,truck 81494,deer 81495,bird 81496,frog 81497,deer 81498,bird 81499,automobile 81500,deer 81501,frog 81502,dog 81503,truck 81504,horse 81505,ship 81506,ship 81507,frog 81508,dog 81509,truck 81510,automobile 81511,bird 81512,dog 81513,bird 81514,truck 81515,truck 81516,truck 81517,frog 81518,bird 81519,horse 81520,cat 81521,bird 81522,horse 81523,dog 81524,horse 81525,truck 81526,dog 81527,frog 81528,deer 81529,bird 81530,deer 81531,cat 81532,truck 81533,truck 81534,frog 81535,frog 81536,truck 81537,cat 81538,deer 81539,automobile 81540,horse 81541,ship 81542,cat 81543,airplane 81544,frog 81545,horse 81546,airplane 81547,dog 81548,deer 81549,cat 81550,cat 81551,airplane 81552,horse 81553,frog 81554,airplane 81555,deer 81556,truck 81557,airplane 81558,deer 81559,horse 81560,cat 81561,cat 81562,cat 81563,dog 81564,horse 81565,horse 81566,horse 81567,frog 81568,cat 81569,bird 81570,bird 81571,airplane 81572,deer 81573,cat 81574,truck 81575,frog 81576,airplane 81577,airplane 81578,deer 81579,truck 81580,truck 81581,cat 81582,dog 81583,truck 81584,truck 81585,horse 81586,horse 81587,ship 81588,dog 81589,dog 81590,deer 81591,ship 81592,deer 81593,dog 81594,bird 81595,bird 81596,cat 81597,deer 81598,horse 81599,truck 81600,automobile 81601,deer 81602,cat 81603,frog 81604,deer 81605,deer 81606,dog 81607,dog 81608,bird 81609,ship 81610,frog 81611,deer 81612,horse 81613,frog 81614,ship 81615,dog 81616,cat 81617,frog 81618,ship 81619,truck 81620,dog 81621,airplane 81622,automobile 81623,ship 81624,horse 81625,cat 81626,bird 81627,horse 81628,truck 81629,ship 81630,bird 81631,ship 81632,horse 81633,cat 81634,ship 81635,truck 81636,dog 81637,automobile 81638,frog 81639,cat 81640,cat 81641,horse 81642,bird 81643,airplane 81644,bird 81645,dog 81646,frog 81647,truck 81648,ship 81649,horse 81650,truck 81651,dog 81652,deer 81653,frog 81654,truck 81655,automobile 81656,truck 81657,airplane 81658,bird 81659,cat 81660,cat 81661,dog 81662,ship 81663,horse 81664,automobile 81665,horse 81666,ship 81667,airplane 81668,cat 81669,truck 81670,truck 81671,cat 81672,cat 81673,frog 81674,cat 81675,dog 81676,deer 81677,frog 81678,bird 81679,frog 81680,cat 81681,truck 81682,ship 81683,bird 81684,ship 81685,cat 81686,cat 81687,airplane 81688,automobile 81689,bird 81690,dog 81691,cat 81692,airplane 81693,truck 81694,dog 81695,cat 81696,horse 81697,bird 81698,truck 81699,cat 81700,cat 81701,dog 81702,ship 81703,truck 81704,cat 81705,cat 81706,dog 81707,frog 81708,dog 81709,deer 81710,horse 81711,bird 81712,ship 81713,deer 81714,cat 81715,bird 81716,automobile 81717,bird 81718,horse 81719,frog 81720,automobile 81721,cat 81722,automobile 81723,ship 81724,cat 81725,bird 81726,cat 81727,frog 81728,bird 81729,dog 81730,frog 81731,airplane 81732,deer 81733,frog 81734,deer 81735,horse 81736,bird 81737,dog 81738,airplane 81739,frog 81740,dog 81741,cat 81742,airplane 81743,horse 81744,bird 81745,horse 81746,frog 81747,cat 81748,bird 81749,cat 81750,frog 81751,frog 81752,airplane 81753,ship 81754,truck 81755,deer 81756,automobile 81757,horse 81758,deer 81759,ship 81760,dog 81761,horse 81762,cat 81763,frog 81764,cat 81765,deer 81766,deer 81767,deer 81768,deer 81769,truck 81770,deer 81771,automobile 81772,ship 81773,cat 81774,automobile 81775,horse 81776,deer 81777,airplane 81778,cat 81779,dog 81780,dog 81781,frog 81782,airplane 81783,horse 81784,deer 81785,cat 81786,frog 81787,cat 81788,cat 81789,bird 81790,dog 81791,frog 81792,horse 81793,truck 81794,frog 81795,frog 81796,airplane 81797,bird 81798,deer 81799,automobile 81800,deer 81801,ship 81802,frog 81803,dog 81804,frog 81805,ship 81806,airplane 81807,airplane 81808,bird 81809,airplane 81810,deer 81811,ship 81812,deer 81813,bird 81814,horse 81815,deer 81816,ship 81817,dog 81818,dog 81819,truck 81820,cat 81821,ship 81822,cat 81823,cat 81824,dog 81825,dog 81826,deer 81827,cat 81828,dog 81829,cat 81830,horse 81831,airplane 81832,ship 81833,bird 81834,bird 81835,truck 81836,horse 81837,cat 81838,frog 81839,horse 81840,horse 81841,frog 81842,frog 81843,frog 81844,frog 81845,deer 81846,truck 81847,ship 81848,deer 81849,airplane 81850,frog 81851,cat 81852,airplane 81853,horse 81854,cat 81855,automobile 81856,airplane 81857,deer 81858,automobile 81859,airplane 81860,frog 81861,automobile 81862,bird 81863,ship 81864,bird 81865,automobile 81866,deer 81867,deer 81868,airplane 81869,ship 81870,bird 81871,automobile 81872,bird 81873,deer 81874,frog 81875,horse 81876,airplane 81877,truck 81878,cat 81879,dog 81880,deer 81881,truck 81882,automobile 81883,dog 81884,deer 81885,horse 81886,horse 81887,dog 81888,bird 81889,deer 81890,truck 81891,horse 81892,truck 81893,dog 81894,deer 81895,frog 81896,horse 81897,cat 81898,automobile 81899,cat 81900,ship 81901,ship 81902,airplane 81903,deer 81904,frog 81905,airplane 81906,frog 81907,airplane 81908,airplane 81909,cat 81910,dog 81911,deer 81912,horse 81913,airplane 81914,cat 81915,horse 81916,horse 81917,deer 81918,cat 81919,horse 81920,cat 81921,ship 81922,deer 81923,truck 81924,cat 81925,deer 81926,truck 81927,deer 81928,horse 81929,frog 81930,horse 81931,automobile 81932,truck 81933,deer 81934,ship 81935,truck 81936,frog 81937,truck 81938,dog 81939,horse 81940,truck 81941,cat 81942,airplane 81943,automobile 81944,dog 81945,horse 81946,cat 81947,frog 81948,horse 81949,truck 81950,cat 81951,cat 81952,cat 81953,cat 81954,horse 81955,horse 81956,bird 81957,ship 81958,deer 81959,cat 81960,cat 81961,cat 81962,automobile 81963,deer 81964,bird 81965,automobile 81966,dog 81967,horse 81968,deer 81969,dog 81970,horse 81971,horse 81972,deer 81973,dog 81974,cat 81975,ship 81976,airplane 81977,frog 81978,ship 81979,truck 81980,dog 81981,automobile 81982,truck 81983,truck 81984,cat 81985,frog 81986,cat 81987,horse 81988,frog 81989,automobile 81990,cat 81991,truck 81992,bird 81993,airplane 81994,cat 81995,dog 81996,deer 81997,truck 81998,horse 81999,ship 82000,dog 82001,deer 82002,airplane 82003,ship 82004,bird 82005,deer 82006,cat 82007,dog 82008,cat 82009,ship 82010,ship 82011,cat 82012,horse 82013,deer 82014,frog 82015,cat 82016,dog 82017,frog 82018,cat 82019,horse 82020,automobile 82021,deer 82022,frog 82023,deer 82024,cat 82025,frog 82026,truck 82027,deer 82028,automobile 82029,horse 82030,truck 82031,automobile 82032,deer 82033,truck 82034,cat 82035,cat 82036,automobile 82037,automobile 82038,horse 82039,deer 82040,truck 82041,horse 82042,airplane 82043,bird 82044,truck 82045,frog 82046,ship 82047,cat 82048,cat 82049,frog 82050,deer 82051,airplane 82052,cat 82053,deer 82054,airplane 82055,frog 82056,horse 82057,truck 82058,truck 82059,horse 82060,frog 82061,truck 82062,dog 82063,dog 82064,cat 82065,ship 82066,cat 82067,deer 82068,ship 82069,dog 82070,truck 82071,deer 82072,deer 82073,bird 82074,truck 82075,bird 82076,frog 82077,airplane 82078,automobile 82079,airplane 82080,deer 82081,frog 82082,automobile 82083,bird 82084,truck 82085,horse 82086,deer 82087,automobile 82088,bird 82089,truck 82090,deer 82091,deer 82092,deer 82093,bird 82094,deer 82095,frog 82096,airplane 82097,horse 82098,frog 82099,horse 82100,frog 82101,airplane 82102,truck 82103,truck 82104,truck 82105,ship 82106,truck 82107,automobile 82108,bird 82109,cat 82110,dog 82111,horse 82112,truck 82113,cat 82114,ship 82115,frog 82116,cat 82117,cat 82118,airplane 82119,cat 82120,airplane 82121,dog 82122,horse 82123,frog 82124,dog 82125,cat 82126,truck 82127,cat 82128,truck 82129,frog 82130,automobile 82131,deer 82132,dog 82133,cat 82134,cat 82135,ship 82136,frog 82137,automobile 82138,dog 82139,horse 82140,ship 82141,bird 82142,deer 82143,ship 82144,bird 82145,ship 82146,airplane 82147,frog 82148,bird 82149,frog 82150,truck 82151,automobile 82152,airplane 82153,horse 82154,horse 82155,horse 82156,dog 82157,cat 82158,cat 82159,frog 82160,deer 82161,frog 82162,ship 82163,automobile 82164,horse 82165,deer 82166,ship 82167,cat 82168,frog 82169,airplane 82170,airplane 82171,frog 82172,airplane 82173,horse 82174,deer 82175,frog 82176,bird 82177,bird 82178,horse 82179,bird 82180,cat 82181,airplane 82182,dog 82183,ship 82184,dog 82185,horse 82186,airplane 82187,horse 82188,bird 82189,automobile 82190,frog 82191,truck 82192,truck 82193,ship 82194,horse 82195,frog 82196,airplane 82197,automobile 82198,bird 82199,dog 82200,deer 82201,dog 82202,dog 82203,airplane 82204,frog 82205,frog 82206,ship 82207,dog 82208,horse 82209,ship 82210,bird 82211,airplane 82212,deer 82213,cat 82214,cat 82215,automobile 82216,bird 82217,deer 82218,dog 82219,cat 82220,airplane 82221,dog 82222,ship 82223,cat 82224,dog 82225,automobile 82226,deer 82227,dog 82228,bird 82229,truck 82230,truck 82231,truck 82232,bird 82233,cat 82234,ship 82235,airplane 82236,cat 82237,airplane 82238,ship 82239,ship 82240,cat 82241,horse 82242,bird 82243,cat 82244,deer 82245,truck 82246,ship 82247,cat 82248,airplane 82249,dog 82250,truck 82251,airplane 82252,truck 82253,deer 82254,truck 82255,deer 82256,automobile 82257,horse 82258,truck 82259,horse 82260,automobile 82261,cat 82262,cat 82263,frog 82264,truck 82265,airplane 82266,bird 82267,frog 82268,ship 82269,cat 82270,airplane 82271,airplane 82272,truck 82273,ship 82274,deer 82275,horse 82276,deer 82277,deer 82278,cat 82279,frog 82280,deer 82281,horse 82282,bird 82283,airplane 82284,frog 82285,bird 82286,automobile 82287,truck 82288,automobile 82289,airplane 82290,frog 82291,airplane 82292,cat 82293,dog 82294,truck 82295,truck 82296,dog 82297,deer 82298,bird 82299,bird 82300,dog 82301,frog 82302,cat 82303,truck 82304,deer 82305,airplane 82306,frog 82307,horse 82308,ship 82309,ship 82310,frog 82311,cat 82312,bird 82313,truck 82314,cat 82315,automobile 82316,deer 82317,truck 82318,horse 82319,frog 82320,horse 82321,cat 82322,horse 82323,bird 82324,bird 82325,bird 82326,horse 82327,cat 82328,dog 82329,deer 82330,cat 82331,frog 82332,deer 82333,ship 82334,dog 82335,frog 82336,bird 82337,automobile 82338,truck 82339,horse 82340,truck 82341,deer 82342,frog 82343,deer 82344,automobile 82345,ship 82346,bird 82347,deer 82348,deer 82349,ship 82350,frog 82351,frog 82352,cat 82353,airplane 82354,ship 82355,dog 82356,dog 82357,horse 82358,truck 82359,ship 82360,airplane 82361,deer 82362,automobile 82363,bird 82364,dog 82365,airplane 82366,truck 82367,automobile 82368,dog 82369,airplane 82370,cat 82371,truck 82372,airplane 82373,airplane 82374,dog 82375,deer 82376,cat 82377,horse 82378,cat 82379,frog 82380,automobile 82381,airplane 82382,bird 82383,horse 82384,cat 82385,deer 82386,dog 82387,cat 82388,cat 82389,ship 82390,frog 82391,cat 82392,ship 82393,bird 82394,cat 82395,frog 82396,dog 82397,automobile 82398,bird 82399,truck 82400,frog 82401,horse 82402,ship 82403,automobile 82404,frog 82405,bird 82406,cat 82407,ship 82408,deer 82409,ship 82410,horse 82411,dog 82412,dog 82413,automobile 82414,deer 82415,cat 82416,airplane 82417,automobile 82418,deer 82419,frog 82420,horse 82421,cat 82422,cat 82423,horse 82424,bird 82425,truck 82426,cat 82427,frog 82428,dog 82429,horse 82430,dog 82431,dog 82432,ship 82433,truck 82434,airplane 82435,deer 82436,cat 82437,airplane 82438,bird 82439,deer 82440,cat 82441,deer 82442,cat 82443,airplane 82444,bird 82445,automobile 82446,bird 82447,ship 82448,cat 82449,ship 82450,deer 82451,ship 82452,horse 82453,frog 82454,bird 82455,horse 82456,horse 82457,truck 82458,cat 82459,frog 82460,airplane 82461,dog 82462,horse 82463,dog 82464,cat 82465,horse 82466,cat 82467,frog 82468,cat 82469,frog 82470,horse 82471,bird 82472,airplane 82473,dog 82474,airplane 82475,airplane 82476,bird 82477,ship 82478,deer 82479,frog 82480,airplane 82481,frog 82482,dog 82483,horse 82484,bird 82485,airplane 82486,dog 82487,truck 82488,frog 82489,truck 82490,frog 82491,deer 82492,truck 82493,horse 82494,deer 82495,automobile 82496,dog 82497,cat 82498,automobile 82499,frog 82500,cat 82501,cat 82502,bird 82503,ship 82504,horse 82505,frog 82506,frog 82507,frog 82508,bird 82509,cat 82510,airplane 82511,truck 82512,cat 82513,frog 82514,automobile 82515,ship 82516,deer 82517,truck 82518,deer 82519,ship 82520,dog 82521,airplane 82522,deer 82523,horse 82524,airplane 82525,bird 82526,deer 82527,frog 82528,bird 82529,deer 82530,dog 82531,cat 82532,truck 82533,frog 82534,frog 82535,cat 82536,cat 82537,dog 82538,dog 82539,frog 82540,cat 82541,ship 82542,frog 82543,frog 82544,airplane 82545,automobile 82546,frog 82547,frog 82548,truck 82549,horse 82550,airplane 82551,deer 82552,frog 82553,bird 82554,deer 82555,dog 82556,bird 82557,ship 82558,bird 82559,horse 82560,truck 82561,cat 82562,truck 82563,horse 82564,dog 82565,automobile 82566,airplane 82567,dog 82568,deer 82569,deer 82570,deer 82571,truck 82572,frog 82573,dog 82574,bird 82575,dog 82576,dog 82577,truck 82578,bird 82579,truck 82580,airplane 82581,deer 82582,frog 82583,dog 82584,frog 82585,cat 82586,deer 82587,bird 82588,cat 82589,frog 82590,dog 82591,cat 82592,dog 82593,horse 82594,dog 82595,deer 82596,horse 82597,bird 82598,frog 82599,frog 82600,cat 82601,dog 82602,frog 82603,cat 82604,deer 82605,bird 82606,dog 82607,frog 82608,horse 82609,bird 82610,bird 82611,ship 82612,deer 82613,frog 82614,truck 82615,horse 82616,automobile 82617,deer 82618,deer 82619,frog 82620,horse 82621,horse 82622,cat 82623,deer 82624,frog 82625,truck 82626,truck 82627,automobile 82628,deer 82629,deer 82630,truck 82631,airplane 82632,airplane 82633,truck 82634,bird 82635,airplane 82636,deer 82637,cat 82638,frog 82639,ship 82640,cat 82641,truck 82642,deer 82643,cat 82644,ship 82645,cat 82646,cat 82647,ship 82648,frog 82649,deer 82650,dog 82651,airplane 82652,truck 82653,frog 82654,automobile 82655,automobile 82656,automobile 82657,frog 82658,deer 82659,airplane 82660,cat 82661,bird 82662,airplane 82663,frog 82664,cat 82665,horse 82666,dog 82667,airplane 82668,bird 82669,horse 82670,automobile 82671,horse 82672,airplane 82673,airplane 82674,ship 82675,truck 82676,ship 82677,automobile 82678,truck 82679,cat 82680,cat 82681,frog 82682,cat 82683,frog 82684,cat 82685,dog 82686,frog 82687,frog 82688,deer 82689,deer 82690,bird 82691,dog 82692,horse 82693,bird 82694,automobile 82695,dog 82696,frog 82697,ship 82698,ship 82699,horse 82700,ship 82701,ship 82702,horse 82703,airplane 82704,truck 82705,deer 82706,frog 82707,deer 82708,ship 82709,dog 82710,frog 82711,frog 82712,automobile 82713,deer 82714,frog 82715,bird 82716,automobile 82717,cat 82718,dog 82719,dog 82720,truck 82721,cat 82722,bird 82723,cat 82724,automobile 82725,airplane 82726,truck 82727,cat 82728,horse 82729,frog 82730,frog 82731,deer 82732,dog 82733,frog 82734,automobile 82735,frog 82736,dog 82737,dog 82738,deer 82739,frog 82740,airplane 82741,horse 82742,bird 82743,deer 82744,horse 82745,frog 82746,ship 82747,frog 82748,deer 82749,automobile 82750,truck 82751,deer 82752,cat 82753,bird 82754,ship 82755,truck 82756,frog 82757,ship 82758,dog 82759,airplane 82760,deer 82761,frog 82762,horse 82763,dog 82764,airplane 82765,automobile 82766,frog 82767,cat 82768,ship 82769,frog 82770,airplane 82771,automobile 82772,cat 82773,dog 82774,dog 82775,deer 82776,cat 82777,deer 82778,cat 82779,deer 82780,truck 82781,cat 82782,deer 82783,frog 82784,cat 82785,frog 82786,bird 82787,cat 82788,horse 82789,frog 82790,bird 82791,frog 82792,cat 82793,truck 82794,airplane 82795,bird 82796,horse 82797,bird 82798,deer 82799,bird 82800,ship 82801,cat 82802,bird 82803,truck 82804,ship 82805,ship 82806,horse 82807,frog 82808,deer 82809,frog 82810,frog 82811,dog 82812,cat 82813,bird 82814,ship 82815,airplane 82816,automobile 82817,airplane 82818,ship 82819,airplane 82820,dog 82821,dog 82822,deer 82823,deer 82824,dog 82825,ship 82826,dog 82827,dog 82828,deer 82829,automobile 82830,ship 82831,airplane 82832,frog 82833,deer 82834,airplane 82835,airplane 82836,airplane 82837,dog 82838,airplane 82839,airplane 82840,airplane 82841,frog 82842,bird 82843,automobile 82844,airplane 82845,deer 82846,truck 82847,dog 82848,bird 82849,cat 82850,deer 82851,automobile 82852,bird 82853,horse 82854,bird 82855,truck 82856,dog 82857,dog 82858,deer 82859,bird 82860,cat 82861,deer 82862,dog 82863,cat 82864,airplane 82865,dog 82866,cat 82867,deer 82868,horse 82869,cat 82870,frog 82871,deer 82872,horse 82873,cat 82874,horse 82875,deer 82876,frog 82877,deer 82878,cat 82879,dog 82880,ship 82881,ship 82882,cat 82883,dog 82884,deer 82885,ship 82886,cat 82887,deer 82888,truck 82889,automobile 82890,cat 82891,automobile 82892,cat 82893,truck 82894,bird 82895,deer 82896,bird 82897,frog 82898,deer 82899,truck 82900,deer 82901,automobile 82902,dog 82903,dog 82904,bird 82905,dog 82906,airplane 82907,ship 82908,ship 82909,deer 82910,automobile 82911,deer 82912,airplane 82913,frog 82914,automobile 82915,frog 82916,dog 82917,truck 82918,cat 82919,frog 82920,frog 82921,truck 82922,horse 82923,truck 82924,truck 82925,deer 82926,ship 82927,horse 82928,ship 82929,airplane 82930,deer 82931,airplane 82932,airplane 82933,automobile 82934,deer 82935,automobile 82936,horse 82937,frog 82938,deer 82939,automobile 82940,airplane 82941,ship 82942,bird 82943,automobile 82944,cat 82945,frog 82946,horse 82947,horse 82948,truck 82949,cat 82950,cat 82951,automobile 82952,frog 82953,truck 82954,frog 82955,dog 82956,dog 82957,ship 82958,horse 82959,bird 82960,horse 82961,truck 82962,cat 82963,cat 82964,frog 82965,bird 82966,horse 82967,frog 82968,ship 82969,deer 82970,deer 82971,automobile 82972,dog 82973,frog 82974,airplane 82975,airplane 82976,horse 82977,automobile 82978,truck 82979,frog 82980,horse 82981,cat 82982,bird 82983,truck 82984,bird 82985,deer 82986,horse 82987,truck 82988,horse 82989,airplane 82990,dog 82991,bird 82992,dog 82993,dog 82994,bird 82995,deer 82996,frog 82997,dog 82998,horse 82999,horse 83000,ship 83001,dog 83002,frog 83003,dog 83004,ship 83005,frog 83006,dog 83007,bird 83008,horse 83009,horse 83010,ship 83011,cat 83012,cat 83013,cat 83014,deer 83015,deer 83016,dog 83017,truck 83018,cat 83019,frog 83020,horse 83021,deer 83022,airplane 83023,bird 83024,bird 83025,cat 83026,ship 83027,deer 83028,frog 83029,truck 83030,truck 83031,deer 83032,deer 83033,bird 83034,dog 83035,airplane 83036,cat 83037,cat 83038,truck 83039,bird 83040,frog 83041,airplane 83042,frog 83043,cat 83044,truck 83045,automobile 83046,ship 83047,truck 83048,cat 83049,ship 83050,ship 83051,frog 83052,bird 83053,cat 83054,cat 83055,automobile 83056,frog 83057,ship 83058,bird 83059,automobile 83060,cat 83061,bird 83062,horse 83063,automobile 83064,cat 83065,ship 83066,frog 83067,truck 83068,ship 83069,horse 83070,ship 83071,deer 83072,ship 83073,bird 83074,frog 83075,truck 83076,dog 83077,deer 83078,airplane 83079,truck 83080,deer 83081,ship 83082,truck 83083,horse 83084,dog 83085,ship 83086,bird 83087,frog 83088,deer 83089,airplane 83090,deer 83091,ship 83092,automobile 83093,horse 83094,deer 83095,dog 83096,bird 83097,airplane 83098,automobile 83099,cat 83100,truck 83101,airplane 83102,bird 83103,bird 83104,deer 83105,dog 83106,dog 83107,cat 83108,deer 83109,truck 83110,dog 83111,ship 83112,deer 83113,truck 83114,automobile 83115,bird 83116,cat 83117,truck 83118,deer 83119,cat 83120,truck 83121,dog 83122,deer 83123,cat 83124,bird 83125,ship 83126,airplane 83127,ship 83128,truck 83129,ship 83130,horse 83131,automobile 83132,truck 83133,dog 83134,deer 83135,cat 83136,horse 83137,horse 83138,cat 83139,frog 83140,horse 83141,dog 83142,truck 83143,ship 83144,dog 83145,automobile 83146,bird 83147,cat 83148,frog 83149,frog 83150,cat 83151,frog 83152,bird 83153,bird 83154,frog 83155,airplane 83156,ship 83157,horse 83158,cat 83159,dog 83160,deer 83161,cat 83162,bird 83163,truck 83164,frog 83165,deer 83166,deer 83167,cat 83168,truck 83169,bird 83170,deer 83171,deer 83172,dog 83173,deer 83174,dog 83175,dog 83176,dog 83177,horse 83178,horse 83179,dog 83180,truck 83181,ship 83182,deer 83183,frog 83184,deer 83185,truck 83186,deer 83187,airplane 83188,cat 83189,deer 83190,deer 83191,truck 83192,ship 83193,airplane 83194,automobile 83195,truck 83196,bird 83197,truck 83198,horse 83199,truck 83200,airplane 83201,horse 83202,bird 83203,airplane 83204,ship 83205,dog 83206,ship 83207,horse 83208,ship 83209,airplane 83210,dog 83211,deer 83212,frog 83213,airplane 83214,airplane 83215,bird 83216,deer 83217,horse 83218,cat 83219,airplane 83220,cat 83221,ship 83222,cat 83223,truck 83224,cat 83225,deer 83226,automobile 83227,cat 83228,ship 83229,deer 83230,deer 83231,ship 83232,horse 83233,deer 83234,truck 83235,truck 83236,truck 83237,deer 83238,dog 83239,frog 83240,truck 83241,cat 83242,airplane 83243,deer 83244,dog 83245,deer 83246,bird 83247,horse 83248,ship 83249,dog 83250,bird 83251,airplane 83252,dog 83253,dog 83254,cat 83255,airplane 83256,dog 83257,frog 83258,cat 83259,cat 83260,cat 83261,automobile 83262,bird 83263,ship 83264,deer 83265,horse 83266,bird 83267,bird 83268,ship 83269,truck 83270,frog 83271,frog 83272,bird 83273,cat 83274,automobile 83275,ship 83276,truck 83277,dog 83278,deer 83279,frog 83280,airplane 83281,horse 83282,cat 83283,deer 83284,cat 83285,bird 83286,bird 83287,deer 83288,truck 83289,automobile 83290,bird 83291,horse 83292,dog 83293,truck 83294,automobile 83295,dog 83296,cat 83297,frog 83298,airplane 83299,truck 83300,truck 83301,horse 83302,deer 83303,ship 83304,ship 83305,deer 83306,truck 83307,deer 83308,automobile 83309,airplane 83310,horse 83311,airplane 83312,deer 83313,bird 83314,cat 83315,deer 83316,deer 83317,cat 83318,truck 83319,cat 83320,horse 83321,horse 83322,frog 83323,cat 83324,automobile 83325,horse 83326,cat 83327,frog 83328,frog 83329,airplane 83330,frog 83331,dog 83332,bird 83333,deer 83334,dog 83335,bird 83336,ship 83337,automobile 83338,airplane 83339,frog 83340,automobile 83341,dog 83342,bird 83343,deer 83344,truck 83345,horse 83346,deer 83347,ship 83348,truck 83349,frog 83350,automobile 83351,horse 83352,bird 83353,cat 83354,automobile 83355,bird 83356,ship 83357,cat 83358,truck 83359,automobile 83360,horse 83361,dog 83362,frog 83363,cat 83364,ship 83365,cat 83366,frog 83367,truck 83368,cat 83369,ship 83370,airplane 83371,horse 83372,bird 83373,airplane 83374,ship 83375,dog 83376,dog 83377,frog 83378,ship 83379,cat 83380,dog 83381,dog 83382,horse 83383,truck 83384,deer 83385,deer 83386,cat 83387,deer 83388,horse 83389,deer 83390,deer 83391,airplane 83392,dog 83393,ship 83394,truck 83395,bird 83396,cat 83397,automobile 83398,horse 83399,truck 83400,deer 83401,truck 83402,cat 83403,bird 83404,cat 83405,horse 83406,automobile 83407,automobile 83408,cat 83409,frog 83410,automobile 83411,deer 83412,automobile 83413,frog 83414,frog 83415,frog 83416,truck 83417,dog 83418,truck 83419,horse 83420,ship 83421,dog 83422,bird 83423,horse 83424,cat 83425,dog 83426,truck 83427,automobile 83428,cat 83429,ship 83430,cat 83431,horse 83432,deer 83433,cat 83434,dog 83435,dog 83436,deer 83437,cat 83438,ship 83439,truck 83440,truck 83441,horse 83442,deer 83443,cat 83444,automobile 83445,truck 83446,dog 83447,deer 83448,airplane 83449,cat 83450,ship 83451,deer 83452,bird 83453,truck 83454,cat 83455,horse 83456,deer 83457,deer 83458,bird 83459,dog 83460,cat 83461,automobile 83462,horse 83463,cat 83464,frog 83465,deer 83466,truck 83467,deer 83468,truck 83469,truck 83470,frog 83471,dog 83472,truck 83473,truck 83474,cat 83475,truck 83476,automobile 83477,bird 83478,deer 83479,frog 83480,truck 83481,airplane 83482,truck 83483,airplane 83484,bird 83485,cat 83486,cat 83487,cat 83488,airplane 83489,automobile 83490,deer 83491,truck 83492,bird 83493,horse 83494,horse 83495,bird 83496,cat 83497,airplane 83498,automobile 83499,dog 83500,airplane 83501,deer 83502,truck 83503,deer 83504,cat 83505,cat 83506,airplane 83507,dog 83508,horse 83509,airplane 83510,automobile 83511,horse 83512,frog 83513,ship 83514,dog 83515,truck 83516,bird 83517,dog 83518,truck 83519,horse 83520,horse 83521,deer 83522,dog 83523,deer 83524,dog 83525,ship 83526,dog 83527,ship 83528,deer 83529,deer 83530,frog 83531,ship 83532,horse 83533,frog 83534,bird 83535,ship 83536,airplane 83537,cat 83538,deer 83539,bird 83540,ship 83541,truck 83542,automobile 83543,airplane 83544,dog 83545,automobile 83546,bird 83547,ship 83548,ship 83549,automobile 83550,truck 83551,deer 83552,deer 83553,frog 83554,cat 83555,dog 83556,dog 83557,deer 83558,bird 83559,airplane 83560,horse 83561,truck 83562,ship 83563,ship 83564,cat 83565,ship 83566,cat 83567,dog 83568,deer 83569,deer 83570,bird 83571,dog 83572,bird 83573,cat 83574,cat 83575,frog 83576,horse 83577,airplane 83578,dog 83579,truck 83580,automobile 83581,horse 83582,horse 83583,automobile 83584,frog 83585,automobile 83586,bird 83587,deer 83588,frog 83589,cat 83590,deer 83591,cat 83592,cat 83593,truck 83594,automobile 83595,ship 83596,horse 83597,frog 83598,horse 83599,horse 83600,automobile 83601,horse 83602,airplane 83603,dog 83604,airplane 83605,dog 83606,bird 83607,cat 83608,airplane 83609,ship 83610,airplane 83611,bird 83612,ship 83613,automobile 83614,ship 83615,deer 83616,automobile 83617,horse 83618,ship 83619,ship 83620,truck 83621,cat 83622,deer 83623,cat 83624,deer 83625,frog 83626,airplane 83627,deer 83628,bird 83629,frog 83630,ship 83631,truck 83632,frog 83633,bird 83634,frog 83635,truck 83636,airplane 83637,cat 83638,dog 83639,cat 83640,deer 83641,cat 83642,automobile 83643,deer 83644,horse 83645,dog 83646,ship 83647,airplane 83648,deer 83649,automobile 83650,frog 83651,cat 83652,bird 83653,horse 83654,automobile 83655,airplane 83656,ship 83657,ship 83658,truck 83659,truck 83660,dog 83661,deer 83662,truck 83663,ship 83664,airplane 83665,truck 83666,frog 83667,deer 83668,automobile 83669,deer 83670,truck 83671,frog 83672,frog 83673,deer 83674,dog 83675,ship 83676,airplane 83677,airplane 83678,cat 83679,truck 83680,dog 83681,airplane 83682,dog 83683,dog 83684,bird 83685,bird 83686,automobile 83687,horse 83688,automobile 83689,horse 83690,frog 83691,deer 83692,ship 83693,cat 83694,deer 83695,automobile 83696,ship 83697,automobile 83698,horse 83699,deer 83700,bird 83701,frog 83702,cat 83703,horse 83704,cat 83705,truck 83706,frog 83707,automobile 83708,bird 83709,frog 83710,dog 83711,frog 83712,airplane 83713,frog 83714,horse 83715,frog 83716,automobile 83717,truck 83718,horse 83719,cat 83720,horse 83721,frog 83722,horse 83723,bird 83724,horse 83725,deer 83726,airplane 83727,cat 83728,frog 83729,cat 83730,dog 83731,bird 83732,dog 83733,truck 83734,deer 83735,cat 83736,truck 83737,deer 83738,truck 83739,deer 83740,frog 83741,truck 83742,airplane 83743,cat 83744,frog 83745,cat 83746,dog 83747,horse 83748,horse 83749,dog 83750,deer 83751,automobile 83752,cat 83753,automobile 83754,truck 83755,horse 83756,frog 83757,frog 83758,bird 83759,truck 83760,bird 83761,airplane 83762,horse 83763,horse 83764,bird 83765,bird 83766,frog 83767,cat 83768,deer 83769,truck 83770,automobile 83771,dog 83772,truck 83773,truck 83774,bird 83775,frog 83776,automobile 83777,dog 83778,truck 83779,truck 83780,automobile 83781,horse 83782,deer 83783,automobile 83784,automobile 83785,airplane 83786,truck 83787,deer 83788,deer 83789,airplane 83790,ship 83791,dog 83792,airplane 83793,cat 83794,frog 83795,automobile 83796,dog 83797,deer 83798,automobile 83799,bird 83800,ship 83801,airplane 83802,deer 83803,cat 83804,frog 83805,cat 83806,horse 83807,automobile 83808,frog 83809,frog 83810,deer 83811,frog 83812,bird 83813,automobile 83814,horse 83815,automobile 83816,frog 83817,horse 83818,airplane 83819,horse 83820,ship 83821,automobile 83822,frog 83823,frog 83824,horse 83825,airplane 83826,cat 83827,deer 83828,truck 83829,cat 83830,truck 83831,cat 83832,truck 83833,frog 83834,truck 83835,deer 83836,ship 83837,automobile 83838,dog 83839,dog 83840,deer 83841,deer 83842,truck 83843,airplane 83844,cat 83845,horse 83846,cat 83847,frog 83848,dog 83849,truck 83850,automobile 83851,deer 83852,truck 83853,ship 83854,frog 83855,dog 83856,cat 83857,horse 83858,bird 83859,cat 83860,airplane 83861,cat 83862,airplane 83863,truck 83864,bird 83865,cat 83866,dog 83867,cat 83868,cat 83869,automobile 83870,deer 83871,deer 83872,frog 83873,truck 83874,cat 83875,airplane 83876,ship 83877,deer 83878,ship 83879,truck 83880,frog 83881,automobile 83882,ship 83883,dog 83884,frog 83885,airplane 83886,automobile 83887,deer 83888,frog 83889,automobile 83890,truck 83891,frog 83892,ship 83893,frog 83894,deer 83895,airplane 83896,cat 83897,deer 83898,deer 83899,cat 83900,horse 83901,truck 83902,frog 83903,deer 83904,dog 83905,truck 83906,frog 83907,dog 83908,horse 83909,dog 83910,horse 83911,automobile 83912,deer 83913,deer 83914,dog 83915,dog 83916,cat 83917,dog 83918,deer 83919,deer 83920,cat 83921,cat 83922,truck 83923,deer 83924,truck 83925,ship 83926,deer 83927,bird 83928,frog 83929,ship 83930,horse 83931,bird 83932,dog 83933,deer 83934,airplane 83935,cat 83936,dog 83937,horse 83938,frog 83939,bird 83940,frog 83941,truck 83942,dog 83943,cat 83944,deer 83945,deer 83946,automobile 83947,airplane 83948,frog 83949,deer 83950,cat 83951,frog 83952,ship 83953,frog 83954,frog 83955,bird 83956,bird 83957,dog 83958,airplane 83959,dog 83960,truck 83961,dog 83962,horse 83963,ship 83964,frog 83965,deer 83966,cat 83967,ship 83968,bird 83969,ship 83970,dog 83971,cat 83972,airplane 83973,dog 83974,frog 83975,frog 83976,frog 83977,deer 83978,deer 83979,frog 83980,dog 83981,automobile 83982,cat 83983,cat 83984,ship 83985,horse 83986,bird 83987,airplane 83988,horse 83989,truck 83990,cat 83991,bird 83992,dog 83993,truck 83994,cat 83995,deer 83996,truck 83997,truck 83998,automobile 83999,ship 84000,horse 84001,bird 84002,bird 84003,horse 84004,horse 84005,airplane 84006,airplane 84007,bird 84008,truck 84009,deer 84010,automobile 84011,airplane 84012,dog 84013,horse 84014,deer 84015,airplane 84016,cat 84017,truck 84018,horse 84019,frog 84020,airplane 84021,automobile 84022,ship 84023,bird 84024,cat 84025,cat 84026,ship 84027,truck 84028,cat 84029,ship 84030,deer 84031,frog 84032,frog 84033,bird 84034,horse 84035,deer 84036,dog 84037,deer 84038,deer 84039,truck 84040,bird 84041,truck 84042,dog 84043,cat 84044,deer 84045,automobile 84046,cat 84047,deer 84048,dog 84049,cat 84050,frog 84051,airplane 84052,deer 84053,cat 84054,horse 84055,dog 84056,deer 84057,airplane 84058,frog 84059,ship 84060,cat 84061,ship 84062,automobile 84063,deer 84064,frog 84065,cat 84066,cat 84067,frog 84068,frog 84069,automobile 84070,automobile 84071,airplane 84072,deer 84073,bird 84074,frog 84075,bird 84076,dog 84077,dog 84078,bird 84079,frog 84080,frog 84081,ship 84082,horse 84083,airplane 84084,deer 84085,cat 84086,deer 84087,automobile 84088,airplane 84089,bird 84090,cat 84091,dog 84092,automobile 84093,ship 84094,cat 84095,frog 84096,cat 84097,truck 84098,cat 84099,dog 84100,cat 84101,frog 84102,bird 84103,dog 84104,dog 84105,automobile 84106,deer 84107,dog 84108,airplane 84109,airplane 84110,frog 84111,dog 84112,deer 84113,deer 84114,cat 84115,bird 84116,truck 84117,horse 84118,deer 84119,bird 84120,ship 84121,dog 84122,airplane 84123,cat 84124,horse 84125,airplane 84126,dog 84127,horse 84128,dog 84129,dog 84130,horse 84131,dog 84132,bird 84133,frog 84134,dog 84135,automobile 84136,automobile 84137,airplane 84138,frog 84139,cat 84140,horse 84141,deer 84142,truck 84143,ship 84144,horse 84145,automobile 84146,truck 84147,airplane 84148,horse 84149,automobile 84150,ship 84151,truck 84152,bird 84153,ship 84154,frog 84155,cat 84156,truck 84157,deer 84158,deer 84159,airplane 84160,deer 84161,dog 84162,deer 84163,dog 84164,automobile 84165,airplane 84166,frog 84167,truck 84168,dog 84169,deer 84170,frog 84171,cat 84172,automobile 84173,deer 84174,dog 84175,truck 84176,airplane 84177,airplane 84178,horse 84179,bird 84180,dog 84181,cat 84182,horse 84183,horse 84184,automobile 84185,frog 84186,truck 84187,dog 84188,automobile 84189,automobile 84190,ship 84191,dog 84192,airplane 84193,horse 84194,horse 84195,airplane 84196,bird 84197,dog 84198,deer 84199,horse 84200,horse 84201,frog 84202,deer 84203,ship 84204,frog 84205,horse 84206,deer 84207,dog 84208,ship 84209,dog 84210,frog 84211,cat 84212,cat 84213,truck 84214,frog 84215,truck 84216,frog 84217,truck 84218,airplane 84219,truck 84220,dog 84221,horse 84222,horse 84223,cat 84224,bird 84225,frog 84226,dog 84227,dog 84228,deer 84229,cat 84230,bird 84231,bird 84232,airplane 84233,cat 84234,bird 84235,ship 84236,deer 84237,bird 84238,airplane 84239,frog 84240,frog 84241,automobile 84242,bird 84243,frog 84244,automobile 84245,frog 84246,deer 84247,truck 84248,cat 84249,deer 84250,bird 84251,ship 84252,cat 84253,horse 84254,deer 84255,ship 84256,dog 84257,ship 84258,horse 84259,truck 84260,bird 84261,airplane 84262,automobile 84263,cat 84264,dog 84265,frog 84266,horse 84267,horse 84268,truck 84269,dog 84270,dog 84271,deer 84272,cat 84273,deer 84274,truck 84275,cat 84276,frog 84277,frog 84278,dog 84279,automobile 84280,frog 84281,dog 84282,cat 84283,airplane 84284,airplane 84285,frog 84286,bird 84287,horse 84288,truck 84289,dog 84290,ship 84291,cat 84292,horse 84293,deer 84294,horse 84295,frog 84296,frog 84297,airplane 84298,cat 84299,bird 84300,automobile 84301,airplane 84302,truck 84303,bird 84304,cat 84305,airplane 84306,frog 84307,deer 84308,bird 84309,ship 84310,cat 84311,ship 84312,ship 84313,horse 84314,cat 84315,airplane 84316,dog 84317,bird 84318,horse 84319,bird 84320,dog 84321,frog 84322,ship 84323,dog 84324,deer 84325,horse 84326,bird 84327,frog 84328,frog 84329,cat 84330,ship 84331,automobile 84332,frog 84333,horse 84334,airplane 84335,truck 84336,dog 84337,horse 84338,frog 84339,cat 84340,frog 84341,automobile 84342,deer 84343,deer 84344,cat 84345,automobile 84346,bird 84347,cat 84348,bird 84349,cat 84350,deer 84351,bird 84352,cat 84353,deer 84354,bird 84355,dog 84356,horse 84357,bird 84358,cat 84359,dog 84360,horse 84361,ship 84362,dog 84363,cat 84364,dog 84365,cat 84366,cat 84367,truck 84368,ship 84369,truck 84370,bird 84371,deer 84372,horse 84373,frog 84374,ship 84375,cat 84376,deer 84377,airplane 84378,horse 84379,frog 84380,automobile 84381,frog 84382,truck 84383,dog 84384,dog 84385,horse 84386,dog 84387,deer 84388,dog 84389,deer 84390,airplane 84391,ship 84392,automobile 84393,frog 84394,frog 84395,frog 84396,horse 84397,deer 84398,cat 84399,frog 84400,deer 84401,truck 84402,bird 84403,deer 84404,cat 84405,airplane 84406,dog 84407,horse 84408,airplane 84409,dog 84410,deer 84411,cat 84412,bird 84413,ship 84414,cat 84415,frog 84416,ship 84417,frog 84418,dog 84419,cat 84420,ship 84421,airplane 84422,deer 84423,deer 84424,truck 84425,deer 84426,automobile 84427,horse 84428,airplane 84429,frog 84430,dog 84431,truck 84432,airplane 84433,truck 84434,bird 84435,bird 84436,cat 84437,horse 84438,horse 84439,deer 84440,bird 84441,bird 84442,horse 84443,automobile 84444,airplane 84445,cat 84446,frog 84447,frog 84448,bird 84449,bird 84450,truck 84451,cat 84452,cat 84453,ship 84454,frog 84455,truck 84456,dog 84457,airplane 84458,horse 84459,frog 84460,automobile 84461,dog 84462,bird 84463,frog 84464,airplane 84465,airplane 84466,horse 84467,ship 84468,cat 84469,ship 84470,dog 84471,bird 84472,dog 84473,cat 84474,cat 84475,frog 84476,automobile 84477,horse 84478,deer 84479,automobile 84480,cat 84481,ship 84482,cat 84483,dog 84484,ship 84485,automobile 84486,deer 84487,ship 84488,dog 84489,truck 84490,ship 84491,cat 84492,bird 84493,truck 84494,cat 84495,cat 84496,cat 84497,horse 84498,bird 84499,airplane 84500,horse 84501,cat 84502,dog 84503,truck 84504,frog 84505,ship 84506,deer 84507,deer 84508,frog 84509,deer 84510,truck 84511,ship 84512,horse 84513,cat 84514,dog 84515,ship 84516,horse 84517,horse 84518,bird 84519,ship 84520,truck 84521,deer 84522,deer 84523,frog 84524,truck 84525,automobile 84526,horse 84527,truck 84528,airplane 84529,truck 84530,dog 84531,truck 84532,horse 84533,horse 84534,deer 84535,deer 84536,cat 84537,horse 84538,ship 84539,frog 84540,ship 84541,cat 84542,airplane 84543,airplane 84544,airplane 84545,deer 84546,bird 84547,bird 84548,frog 84549,ship 84550,ship 84551,cat 84552,frog 84553,dog 84554,frog 84555,frog 84556,deer 84557,frog 84558,dog 84559,cat 84560,truck 84561,bird 84562,ship 84563,horse 84564,dog 84565,bird 84566,deer 84567,dog 84568,deer 84569,deer 84570,frog 84571,frog 84572,cat 84573,bird 84574,bird 84575,horse 84576,frog 84577,bird 84578,cat 84579,automobile 84580,bird 84581,cat 84582,deer 84583,automobile 84584,frog 84585,ship 84586,cat 84587,airplane 84588,deer 84589,automobile 84590,dog 84591,deer 84592,dog 84593,deer 84594,cat 84595,frog 84596,deer 84597,dog 84598,dog 84599,truck 84600,truck 84601,deer 84602,ship 84603,airplane 84604,automobile 84605,deer 84606,deer 84607,horse 84608,automobile 84609,airplane 84610,cat 84611,frog 84612,horse 84613,automobile 84614,frog 84615,frog 84616,deer 84617,automobile 84618,dog 84619,ship 84620,horse 84621,deer 84622,horse 84623,ship 84624,deer 84625,ship 84626,horse 84627,frog 84628,deer 84629,horse 84630,deer 84631,cat 84632,deer 84633,automobile 84634,frog 84635,horse 84636,dog 84637,airplane 84638,bird 84639,cat 84640,truck 84641,deer 84642,deer 84643,horse 84644,airplane 84645,deer 84646,automobile 84647,bird 84648,horse 84649,dog 84650,cat 84651,truck 84652,cat 84653,horse 84654,horse 84655,frog 84656,horse 84657,cat 84658,horse 84659,horse 84660,frog 84661,cat 84662,horse 84663,cat 84664,frog 84665,frog 84666,cat 84667,deer 84668,deer 84669,truck 84670,frog 84671,frog 84672,cat 84673,automobile 84674,truck 84675,truck 84676,frog 84677,truck 84678,cat 84679,automobile 84680,automobile 84681,airplane 84682,horse 84683,deer 84684,horse 84685,ship 84686,automobile 84687,cat 84688,automobile 84689,truck 84690,cat 84691,airplane 84692,cat 84693,cat 84694,dog 84695,cat 84696,horse 84697,bird 84698,frog 84699,horse 84700,horse 84701,automobile 84702,cat 84703,bird 84704,truck 84705,automobile 84706,horse 84707,truck 84708,truck 84709,automobile 84710,horse 84711,truck 84712,bird 84713,frog 84714,bird 84715,deer 84716,ship 84717,ship 84718,horse 84719,frog 84720,ship 84721,airplane 84722,automobile 84723,bird 84724,bird 84725,cat 84726,ship 84727,truck 84728,ship 84729,deer 84730,deer 84731,deer 84732,airplane 84733,frog 84734,bird 84735,truck 84736,ship 84737,truck 84738,deer 84739,automobile 84740,ship 84741,cat 84742,ship 84743,airplane 84744,bird 84745,cat 84746,deer 84747,ship 84748,dog 84749,frog 84750,ship 84751,airplane 84752,frog 84753,horse 84754,deer 84755,truck 84756,deer 84757,horse 84758,ship 84759,automobile 84760,cat 84761,ship 84762,dog 84763,frog 84764,horse 84765,automobile 84766,frog 84767,horse 84768,cat 84769,automobile 84770,bird 84771,deer 84772,truck 84773,truck 84774,bird 84775,cat 84776,airplane 84777,airplane 84778,airplane 84779,dog 84780,cat 84781,truck 84782,automobile 84783,bird 84784,deer 84785,cat 84786,dog 84787,cat 84788,frog 84789,deer 84790,bird 84791,bird 84792,bird 84793,bird 84794,airplane 84795,bird 84796,cat 84797,automobile 84798,dog 84799,ship 84800,frog 84801,cat 84802,frog 84803,bird 84804,frog 84805,frog 84806,horse 84807,automobile 84808,deer 84809,ship 84810,ship 84811,cat 84812,bird 84813,deer 84814,truck 84815,truck 84816,deer 84817,airplane 84818,ship 84819,bird 84820,horse 84821,bird 84822,automobile 84823,cat 84824,truck 84825,frog 84826,frog 84827,horse 84828,airplane 84829,airplane 84830,frog 84831,truck 84832,deer 84833,deer 84834,ship 84835,ship 84836,cat 84837,deer 84838,horse 84839,deer 84840,airplane 84841,bird 84842,ship 84843,ship 84844,deer 84845,cat 84846,deer 84847,bird 84848,airplane 84849,airplane 84850,ship 84851,frog 84852,deer 84853,airplane 84854,dog 84855,truck 84856,horse 84857,automobile 84858,deer 84859,deer 84860,deer 84861,airplane 84862,dog 84863,bird 84864,automobile 84865,horse 84866,automobile 84867,frog 84868,frog 84869,horse 84870,truck 84871,horse 84872,cat 84873,horse 84874,automobile 84875,cat 84876,automobile 84877,dog 84878,cat 84879,cat 84880,automobile 84881,cat 84882,cat 84883,deer 84884,truck 84885,truck 84886,bird 84887,airplane 84888,automobile 84889,bird 84890,horse 84891,ship 84892,truck 84893,deer 84894,horse 84895,dog 84896,ship 84897,automobile 84898,automobile 84899,airplane 84900,cat 84901,frog 84902,frog 84903,horse 84904,deer 84905,dog 84906,ship 84907,horse 84908,automobile 84909,bird 84910,dog 84911,truck 84912,deer 84913,bird 84914,deer 84915,horse 84916,automobile 84917,automobile 84918,ship 84919,deer 84920,airplane 84921,automobile 84922,deer 84923,airplane 84924,ship 84925,automobile 84926,bird 84927,airplane 84928,cat 84929,cat 84930,deer 84931,ship 84932,frog 84933,deer 84934,horse 84935,dog 84936,bird 84937,horse 84938,horse 84939,airplane 84940,horse 84941,deer 84942,frog 84943,frog 84944,ship 84945,deer 84946,cat 84947,horse 84948,truck 84949,frog 84950,airplane 84951,frog 84952,airplane 84953,truck 84954,cat 84955,cat 84956,cat 84957,horse 84958,horse 84959,truck 84960,frog 84961,ship 84962,frog 84963,deer 84964,cat 84965,bird 84966,deer 84967,deer 84968,bird 84969,frog 84970,cat 84971,deer 84972,cat 84973,frog 84974,truck 84975,horse 84976,deer 84977,airplane 84978,deer 84979,automobile 84980,truck 84981,automobile 84982,automobile 84983,deer 84984,automobile 84985,automobile 84986,airplane 84987,dog 84988,deer 84989,ship 84990,dog 84991,deer 84992,frog 84993,airplane 84994,truck 84995,dog 84996,deer 84997,deer 84998,horse 84999,frog 85000,cat 85001,automobile 85002,horse 85003,deer 85004,cat 85005,ship 85006,automobile 85007,deer 85008,dog 85009,cat 85010,automobile 85011,frog 85012,ship 85013,automobile 85014,dog 85015,deer 85016,deer 85017,truck 85018,dog 85019,bird 85020,automobile 85021,truck 85022,horse 85023,airplane 85024,frog 85025,dog 85026,deer 85027,deer 85028,deer 85029,dog 85030,frog 85031,frog 85032,horse 85033,truck 85034,dog 85035,dog 85036,automobile 85037,bird 85038,dog 85039,deer 85040,automobile 85041,deer 85042,deer 85043,ship 85044,cat 85045,truck 85046,ship 85047,airplane 85048,horse 85049,dog 85050,deer 85051,horse 85052,ship 85053,ship 85054,ship 85055,cat 85056,deer 85057,bird 85058,dog 85059,cat 85060,cat 85061,airplane 85062,horse 85063,horse 85064,automobile 85065,truck 85066,dog 85067,automobile 85068,deer 85069,horse 85070,frog 85071,deer 85072,airplane 85073,cat 85074,automobile 85075,deer 85076,dog 85077,deer 85078,frog 85079,truck 85080,dog 85081,truck 85082,truck 85083,truck 85084,ship 85085,frog 85086,bird 85087,deer 85088,cat 85089,truck 85090,bird 85091,truck 85092,automobile 85093,truck 85094,truck 85095,frog 85096,dog 85097,automobile 85098,cat 85099,deer 85100,cat 85101,truck 85102,horse 85103,airplane 85104,frog 85105,cat 85106,cat 85107,cat 85108,frog 85109,cat 85110,cat 85111,deer 85112,cat 85113,airplane 85114,automobile 85115,dog 85116,cat 85117,frog 85118,dog 85119,horse 85120,cat 85121,horse 85122,ship 85123,bird 85124,cat 85125,bird 85126,bird 85127,cat 85128,horse 85129,deer 85130,cat 85131,truck 85132,horse 85133,automobile 85134,truck 85135,bird 85136,bird 85137,deer 85138,ship 85139,deer 85140,cat 85141,cat 85142,dog 85143,ship 85144,automobile 85145,horse 85146,cat 85147,horse 85148,truck 85149,dog 85150,frog 85151,ship 85152,frog 85153,truck 85154,frog 85155,bird 85156,horse 85157,dog 85158,cat 85159,automobile 85160,frog 85161,cat 85162,airplane 85163,ship 85164,frog 85165,horse 85166,deer 85167,bird 85168,ship 85169,cat 85170,cat 85171,automobile 85172,bird 85173,dog 85174,truck 85175,ship 85176,automobile 85177,dog 85178,cat 85179,frog 85180,bird 85181,cat 85182,bird 85183,frog 85184,cat 85185,horse 85186,frog 85187,horse 85188,airplane 85189,ship 85190,frog 85191,frog 85192,horse 85193,bird 85194,cat 85195,frog 85196,airplane 85197,cat 85198,cat 85199,airplane 85200,dog 85201,dog 85202,automobile 85203,cat 85204,deer 85205,bird 85206,horse 85207,bird 85208,cat 85209,deer 85210,deer 85211,frog 85212,deer 85213,ship 85214,truck 85215,horse 85216,frog 85217,cat 85218,ship 85219,bird 85220,dog 85221,horse 85222,deer 85223,ship 85224,ship 85225,cat 85226,deer 85227,deer 85228,truck 85229,dog 85230,horse 85231,bird 85232,dog 85233,deer 85234,dog 85235,frog 85236,airplane 85237,frog 85238,bird 85239,ship 85240,truck 85241,horse 85242,horse 85243,frog 85244,cat 85245,automobile 85246,cat 85247,dog 85248,horse 85249,truck 85250,dog 85251,bird 85252,automobile 85253,horse 85254,ship 85255,ship 85256,truck 85257,deer 85258,ship 85259,frog 85260,horse 85261,dog 85262,deer 85263,frog 85264,truck 85265,truck 85266,deer 85267,cat 85268,deer 85269,frog 85270,cat 85271,cat 85272,deer 85273,frog 85274,deer 85275,frog 85276,deer 85277,cat 85278,deer 85279,cat 85280,dog 85281,ship 85282,deer 85283,bird 85284,ship 85285,ship 85286,bird 85287,dog 85288,bird 85289,dog 85290,frog 85291,frog 85292,airplane 85293,deer 85294,dog 85295,airplane 85296,dog 85297,frog 85298,deer 85299,horse 85300,cat 85301,bird 85302,horse 85303,frog 85304,automobile 85305,deer 85306,frog 85307,bird 85308,horse 85309,horse 85310,automobile 85311,deer 85312,horse 85313,cat 85314,dog 85315,bird 85316,truck 85317,horse 85318,deer 85319,horse 85320,dog 85321,horse 85322,airplane 85323,airplane 85324,frog 85325,truck 85326,frog 85327,bird 85328,bird 85329,airplane 85330,airplane 85331,horse 85332,bird 85333,dog 85334,frog 85335,airplane 85336,truck 85337,cat 85338,frog 85339,truck 85340,frog 85341,horse 85342,dog 85343,deer 85344,deer 85345,ship 85346,deer 85347,truck 85348,truck 85349,horse 85350,horse 85351,truck 85352,dog 85353,airplane 85354,bird 85355,horse 85356,truck 85357,deer 85358,deer 85359,bird 85360,truck 85361,airplane 85362,frog 85363,airplane 85364,cat 85365,horse 85366,automobile 85367,bird 85368,dog 85369,horse 85370,automobile 85371,airplane 85372,horse 85373,ship 85374,automobile 85375,truck 85376,frog 85377,horse 85378,horse 85379,airplane 85380,airplane 85381,ship 85382,bird 85383,frog 85384,ship 85385,airplane 85386,dog 85387,dog 85388,ship 85389,frog 85390,ship 85391,frog 85392,cat 85393,frog 85394,frog 85395,airplane 85396,frog 85397,airplane 85398,horse 85399,ship 85400,airplane 85401,truck 85402,dog 85403,frog 85404,airplane 85405,truck 85406,deer 85407,deer 85408,automobile 85409,bird 85410,frog 85411,truck 85412,cat 85413,ship 85414,automobile 85415,cat 85416,deer 85417,bird 85418,bird 85419,ship 85420,bird 85421,ship 85422,deer 85423,deer 85424,truck 85425,truck 85426,cat 85427,deer 85428,automobile 85429,truck 85430,truck 85431,frog 85432,bird 85433,truck 85434,frog 85435,automobile 85436,bird 85437,airplane 85438,automobile 85439,frog 85440,horse 85441,deer 85442,horse 85443,deer 85444,ship 85445,airplane 85446,automobile 85447,ship 85448,airplane 85449,bird 85450,cat 85451,deer 85452,deer 85453,deer 85454,frog 85455,deer 85456,deer 85457,dog 85458,deer 85459,dog 85460,deer 85461,cat 85462,deer 85463,deer 85464,automobile 85465,deer 85466,airplane 85467,deer 85468,deer 85469,frog 85470,cat 85471,horse 85472,cat 85473,horse 85474,deer 85475,airplane 85476,automobile 85477,airplane 85478,deer 85479,airplane 85480,bird 85481,bird 85482,deer 85483,deer 85484,truck 85485,deer 85486,frog 85487,deer 85488,cat 85489,cat 85490,cat 85491,frog 85492,horse 85493,dog 85494,truck 85495,truck 85496,cat 85497,airplane 85498,bird 85499,dog 85500,truck 85501,cat 85502,horse 85503,horse 85504,dog 85505,deer 85506,deer 85507,horse 85508,horse 85509,automobile 85510,deer 85511,automobile 85512,horse 85513,deer 85514,ship 85515,deer 85516,airplane 85517,frog 85518,bird 85519,ship 85520,cat 85521,deer 85522,dog 85523,bird 85524,dog 85525,airplane 85526,automobile 85527,cat 85528,ship 85529,deer 85530,cat 85531,airplane 85532,deer 85533,frog 85534,frog 85535,truck 85536,automobile 85537,truck 85538,truck 85539,deer 85540,ship 85541,dog 85542,airplane 85543,frog 85544,frog 85545,cat 85546,horse 85547,horse 85548,bird 85549,horse 85550,automobile 85551,automobile 85552,cat 85553,ship 85554,cat 85555,cat 85556,airplane 85557,deer 85558,bird 85559,cat 85560,dog 85561,automobile 85562,frog 85563,bird 85564,cat 85565,deer 85566,dog 85567,ship 85568,frog 85569,automobile 85570,truck 85571,bird 85572,frog 85573,truck 85574,dog 85575,truck 85576,dog 85577,deer 85578,frog 85579,cat 85580,cat 85581,airplane 85582,automobile 85583,cat 85584,dog 85585,dog 85586,deer 85587,horse 85588,truck 85589,bird 85590,frog 85591,cat 85592,frog 85593,deer 85594,deer 85595,cat 85596,frog 85597,deer 85598,automobile 85599,cat 85600,bird 85601,horse 85602,dog 85603,dog 85604,frog 85605,cat 85606,cat 85607,cat 85608,automobile 85609,cat 85610,cat 85611,frog 85612,dog 85613,frog 85614,frog 85615,cat 85616,automobile 85617,horse 85618,truck 85619,frog 85620,airplane 85621,horse 85622,airplane 85623,truck 85624,ship 85625,cat 85626,cat 85627,deer 85628,bird 85629,ship 85630,deer 85631,automobile 85632,horse 85633,automobile 85634,deer 85635,airplane 85636,deer 85637,deer 85638,horse 85639,truck 85640,airplane 85641,horse 85642,ship 85643,airplane 85644,cat 85645,ship 85646,deer 85647,dog 85648,dog 85649,frog 85650,cat 85651,bird 85652,ship 85653,deer 85654,ship 85655,dog 85656,airplane 85657,truck 85658,truck 85659,airplane 85660,dog 85661,cat 85662,horse 85663,dog 85664,deer 85665,bird 85666,bird 85667,airplane 85668,automobile 85669,truck 85670,cat 85671,airplane 85672,frog 85673,horse 85674,automobile 85675,cat 85676,horse 85677,cat 85678,airplane 85679,truck 85680,frog 85681,dog 85682,frog 85683,frog 85684,deer 85685,deer 85686,truck 85687,dog 85688,horse 85689,ship 85690,cat 85691,cat 85692,cat 85693,dog 85694,horse 85695,frog 85696,deer 85697,frog 85698,frog 85699,dog 85700,ship 85701,frog 85702,airplane 85703,automobile 85704,frog 85705,cat 85706,automobile 85707,dog 85708,truck 85709,deer 85710,airplane 85711,dog 85712,dog 85713,deer 85714,frog 85715,automobile 85716,deer 85717,cat 85718,bird 85719,ship 85720,cat 85721,automobile 85722,automobile 85723,dog 85724,horse 85725,dog 85726,airplane 85727,frog 85728,cat 85729,deer 85730,frog 85731,cat 85732,horse 85733,horse 85734,truck 85735,cat 85736,ship 85737,ship 85738,automobile 85739,horse 85740,cat 85741,deer 85742,cat 85743,deer 85744,airplane 85745,horse 85746,automobile 85747,horse 85748,automobile 85749,deer 85750,truck 85751,frog 85752,horse 85753,frog 85754,deer 85755,automobile 85756,automobile 85757,automobile 85758,cat 85759,bird 85760,bird 85761,truck 85762,frog 85763,dog 85764,ship 85765,frog 85766,ship 85767,frog 85768,horse 85769,automobile 85770,cat 85771,frog 85772,frog 85773,truck 85774,automobile 85775,frog 85776,ship 85777,cat 85778,deer 85779,frog 85780,cat 85781,cat 85782,bird 85783,dog 85784,cat 85785,airplane 85786,dog 85787,horse 85788,horse 85789,deer 85790,airplane 85791,cat 85792,truck 85793,horse 85794,cat 85795,deer 85796,horse 85797,dog 85798,deer 85799,frog 85800,automobile 85801,truck 85802,deer 85803,airplane 85804,automobile 85805,ship 85806,truck 85807,truck 85808,cat 85809,airplane 85810,truck 85811,horse 85812,truck 85813,bird 85814,dog 85815,dog 85816,truck 85817,ship 85818,dog 85819,deer 85820,cat 85821,deer 85822,automobile 85823,dog 85824,cat 85825,frog 85826,horse 85827,dog 85828,horse 85829,horse 85830,cat 85831,dog 85832,horse 85833,frog 85834,frog 85835,truck 85836,deer 85837,deer 85838,frog 85839,deer 85840,deer 85841,ship 85842,truck 85843,frog 85844,truck 85845,dog 85846,airplane 85847,frog 85848,frog 85849,automobile 85850,airplane 85851,ship 85852,automobile 85853,ship 85854,bird 85855,truck 85856,horse 85857,dog 85858,ship 85859,truck 85860,bird 85861,deer 85862,frog 85863,automobile 85864,automobile 85865,truck 85866,truck 85867,frog 85868,truck 85869,dog 85870,automobile 85871,automobile 85872,cat 85873,frog 85874,automobile 85875,truck 85876,cat 85877,bird 85878,deer 85879,deer 85880,truck 85881,deer 85882,cat 85883,deer 85884,deer 85885,cat 85886,cat 85887,frog 85888,dog 85889,cat 85890,dog 85891,bird 85892,deer 85893,deer 85894,automobile 85895,truck 85896,horse 85897,dog 85898,horse 85899,automobile 85900,dog 85901,truck 85902,frog 85903,truck 85904,automobile 85905,bird 85906,airplane 85907,ship 85908,deer 85909,frog 85910,frog 85911,truck 85912,bird 85913,frog 85914,cat 85915,automobile 85916,dog 85917,dog 85918,deer 85919,deer 85920,truck 85921,deer 85922,ship 85923,truck 85924,truck 85925,deer 85926,deer 85927,bird 85928,cat 85929,horse 85930,deer 85931,cat 85932,airplane 85933,cat 85934,cat 85935,truck 85936,dog 85937,truck 85938,cat 85939,cat 85940,bird 85941,deer 85942,automobile 85943,frog 85944,airplane 85945,cat 85946,frog 85947,cat 85948,dog 85949,airplane 85950,frog 85951,deer 85952,deer 85953,horse 85954,horse 85955,bird 85956,automobile 85957,automobile 85958,bird 85959,deer 85960,truck 85961,cat 85962,cat 85963,frog 85964,airplane 85965,cat 85966,airplane 85967,ship 85968,dog 85969,automobile 85970,truck 85971,cat 85972,dog 85973,bird 85974,truck 85975,horse 85976,bird 85977,bird 85978,bird 85979,bird 85980,frog 85981,frog 85982,ship 85983,deer 85984,cat 85985,cat 85986,deer 85987,automobile 85988,dog 85989,frog 85990,cat 85991,automobile 85992,truck 85993,ship 85994,horse 85995,airplane 85996,truck 85997,truck 85998,truck 85999,cat 86000,ship 86001,cat 86002,airplane 86003,deer 86004,cat 86005,dog 86006,deer 86007,truck 86008,truck 86009,dog 86010,automobile 86011,ship 86012,truck 86013,truck 86014,horse 86015,cat 86016,horse 86017,truck 86018,truck 86019,automobile 86020,automobile 86021,airplane 86022,truck 86023,bird 86024,horse 86025,ship 86026,frog 86027,dog 86028,truck 86029,dog 86030,cat 86031,truck 86032,truck 86033,dog 86034,airplane 86035,horse 86036,airplane 86037,ship 86038,horse 86039,truck 86040,frog 86041,dog 86042,cat 86043,bird 86044,bird 86045,frog 86046,deer 86047,airplane 86048,cat 86049,deer 86050,cat 86051,truck 86052,automobile 86053,truck 86054,ship 86055,automobile 86056,automobile 86057,ship 86058,deer 86059,cat 86060,truck 86061,frog 86062,truck 86063,truck 86064,dog 86065,frog 86066,horse 86067,bird 86068,truck 86069,frog 86070,airplane 86071,frog 86072,deer 86073,bird 86074,frog 86075,frog 86076,automobile 86077,airplane 86078,airplane 86079,dog 86080,truck 86081,horse 86082,frog 86083,cat 86084,cat 86085,truck 86086,dog 86087,cat 86088,deer 86089,ship 86090,cat 86091,horse 86092,ship 86093,deer 86094,automobile 86095,airplane 86096,bird 86097,cat 86098,bird 86099,bird 86100,truck 86101,deer 86102,cat 86103,horse 86104,airplane 86105,bird 86106,dog 86107,cat 86108,frog 86109,deer 86110,ship 86111,cat 86112,cat 86113,ship 86114,automobile 86115,cat 86116,frog 86117,horse 86118,cat 86119,airplane 86120,bird 86121,dog 86122,truck 86123,deer 86124,ship 86125,automobile 86126,cat 86127,airplane 86128,cat 86129,ship 86130,cat 86131,truck 86132,ship 86133,frog 86134,deer 86135,truck 86136,frog 86137,bird 86138,cat 86139,ship 86140,bird 86141,automobile 86142,cat 86143,airplane 86144,dog 86145,horse 86146,ship 86147,dog 86148,dog 86149,frog 86150,truck 86151,deer 86152,deer 86153,frog 86154,horse 86155,cat 86156,frog 86157,deer 86158,truck 86159,airplane 86160,dog 86161,frog 86162,bird 86163,airplane 86164,dog 86165,airplane 86166,ship 86167,deer 86168,bird 86169,airplane 86170,airplane 86171,horse 86172,truck 86173,frog 86174,automobile 86175,automobile 86176,deer 86177,truck 86178,bird 86179,cat 86180,airplane 86181,automobile 86182,cat 86183,deer 86184,bird 86185,ship 86186,automobile 86187,cat 86188,cat 86189,airplane 86190,automobile 86191,bird 86192,automobile 86193,ship 86194,cat 86195,truck 86196,frog 86197,bird 86198,dog 86199,automobile 86200,automobile 86201,horse 86202,truck 86203,frog 86204,frog 86205,ship 86206,deer 86207,bird 86208,airplane 86209,truck 86210,cat 86211,dog 86212,frog 86213,horse 86214,dog 86215,truck 86216,truck 86217,dog 86218,truck 86219,deer 86220,dog 86221,deer 86222,cat 86223,airplane 86224,airplane 86225,horse 86226,truck 86227,automobile 86228,ship 86229,dog 86230,deer 86231,frog 86232,dog 86233,dog 86234,bird 86235,cat 86236,dog 86237,deer 86238,bird 86239,airplane 86240,horse 86241,frog 86242,truck 86243,cat 86244,dog 86245,truck 86246,cat 86247,ship 86248,deer 86249,frog 86250,cat 86251,dog 86252,horse 86253,automobile 86254,bird 86255,airplane 86256,horse 86257,dog 86258,cat 86259,bird 86260,frog 86261,deer 86262,bird 86263,truck 86264,airplane 86265,truck 86266,truck 86267,cat 86268,truck 86269,horse 86270,cat 86271,deer 86272,frog 86273,ship 86274,cat 86275,truck 86276,frog 86277,deer 86278,airplane 86279,frog 86280,automobile 86281,horse 86282,airplane 86283,ship 86284,dog 86285,automobile 86286,automobile 86287,airplane 86288,truck 86289,ship 86290,dog 86291,horse 86292,cat 86293,ship 86294,cat 86295,bird 86296,bird 86297,cat 86298,horse 86299,truck 86300,dog 86301,dog 86302,bird 86303,horse 86304,horse 86305,truck 86306,frog 86307,deer 86308,deer 86309,horse 86310,airplane 86311,bird 86312,horse 86313,frog 86314,dog 86315,frog 86316,cat 86317,bird 86318,deer 86319,deer 86320,deer 86321,cat 86322,bird 86323,cat 86324,truck 86325,deer 86326,horse 86327,dog 86328,frog 86329,cat 86330,dog 86331,truck 86332,frog 86333,automobile 86334,horse 86335,dog 86336,deer 86337,ship 86338,cat 86339,airplane 86340,dog 86341,horse 86342,dog 86343,cat 86344,horse 86345,airplane 86346,horse 86347,ship 86348,cat 86349,deer 86350,deer 86351,truck 86352,ship 86353,automobile 86354,horse 86355,bird 86356,airplane 86357,horse 86358,truck 86359,cat 86360,cat 86361,deer 86362,automobile 86363,bird 86364,automobile 86365,horse 86366,deer 86367,cat 86368,cat 86369,cat 86370,deer 86371,deer 86372,dog 86373,truck 86374,horse 86375,bird 86376,bird 86377,cat 86378,bird 86379,deer 86380,truck 86381,cat 86382,deer 86383,deer 86384,horse 86385,airplane 86386,cat 86387,deer 86388,ship 86389,cat 86390,dog 86391,ship 86392,truck 86393,cat 86394,horse 86395,deer 86396,automobile 86397,dog 86398,frog 86399,automobile 86400,frog 86401,dog 86402,truck 86403,dog 86404,bird 86405,truck 86406,horse 86407,dog 86408,cat 86409,truck 86410,airplane 86411,deer 86412,automobile 86413,cat 86414,truck 86415,horse 86416,horse 86417,frog 86418,automobile 86419,airplane 86420,deer 86421,cat 86422,bird 86423,horse 86424,bird 86425,frog 86426,automobile 86427,deer 86428,horse 86429,cat 86430,frog 86431,deer 86432,airplane 86433,deer 86434,dog 86435,horse 86436,cat 86437,dog 86438,horse 86439,dog 86440,truck 86441,airplane 86442,deer 86443,ship 86444,bird 86445,dog 86446,truck 86447,automobile 86448,cat 86449,dog 86450,bird 86451,cat 86452,horse 86453,ship 86454,dog 86455,bird 86456,deer 86457,frog 86458,cat 86459,deer 86460,dog 86461,horse 86462,dog 86463,bird 86464,cat 86465,automobile 86466,cat 86467,airplane 86468,cat 86469,ship 86470,bird 86471,deer 86472,dog 86473,truck 86474,dog 86475,dog 86476,airplane 86477,airplane 86478,horse 86479,frog 86480,truck 86481,frog 86482,horse 86483,frog 86484,bird 86485,automobile 86486,frog 86487,horse 86488,airplane 86489,ship 86490,deer 86491,automobile 86492,ship 86493,truck 86494,horse 86495,dog 86496,ship 86497,ship 86498,horse 86499,automobile 86500,horse 86501,bird 86502,dog 86503,deer 86504,airplane 86505,cat 86506,airplane 86507,ship 86508,deer 86509,truck 86510,truck 86511,cat 86512,bird 86513,frog 86514,deer 86515,frog 86516,truck 86517,ship 86518,truck 86519,deer 86520,deer 86521,airplane 86522,frog 86523,cat 86524,automobile 86525,frog 86526,airplane 86527,ship 86528,cat 86529,horse 86530,cat 86531,bird 86532,airplane 86533,frog 86534,bird 86535,automobile 86536,truck 86537,bird 86538,deer 86539,deer 86540,horse 86541,frog 86542,dog 86543,dog 86544,horse 86545,frog 86546,dog 86547,deer 86548,bird 86549,truck 86550,deer 86551,frog 86552,deer 86553,deer 86554,automobile 86555,dog 86556,automobile 86557,deer 86558,frog 86559,cat 86560,cat 86561,cat 86562,cat 86563,dog 86564,dog 86565,ship 86566,automobile 86567,airplane 86568,airplane 86569,horse 86570,deer 86571,deer 86572,truck 86573,dog 86574,dog 86575,dog 86576,frog 86577,dog 86578,cat 86579,cat 86580,automobile 86581,frog 86582,dog 86583,cat 86584,frog 86585,cat 86586,airplane 86587,automobile 86588,airplane 86589,dog 86590,frog 86591,truck 86592,bird 86593,frog 86594,truck 86595,frog 86596,horse 86597,ship 86598,deer 86599,truck 86600,automobile 86601,deer 86602,deer 86603,truck 86604,cat 86605,cat 86606,frog 86607,bird 86608,truck 86609,automobile 86610,cat 86611,bird 86612,deer 86613,airplane 86614,automobile 86615,automobile 86616,frog 86617,ship 86618,deer 86619,dog 86620,dog 86621,dog 86622,frog 86623,ship 86624,dog 86625,ship 86626,truck 86627,automobile 86628,dog 86629,deer 86630,dog 86631,truck 86632,dog 86633,cat 86634,truck 86635,bird 86636,cat 86637,bird 86638,cat 86639,dog 86640,frog 86641,dog 86642,horse 86643,ship 86644,horse 86645,dog 86646,deer 86647,deer 86648,bird 86649,truck 86650,truck 86651,dog 86652,frog 86653,deer 86654,frog 86655,ship 86656,automobile 86657,automobile 86658,automobile 86659,bird 86660,ship 86661,cat 86662,deer 86663,deer 86664,automobile 86665,airplane 86666,bird 86667,cat 86668,airplane 86669,horse 86670,truck 86671,frog 86672,cat 86673,dog 86674,bird 86675,deer 86676,truck 86677,airplane 86678,frog 86679,dog 86680,bird 86681,horse 86682,deer 86683,frog 86684,cat 86685,frog 86686,bird 86687,frog 86688,automobile 86689,frog 86690,automobile 86691,deer 86692,frog 86693,bird 86694,airplane 86695,bird 86696,cat 86697,automobile 86698,automobile 86699,frog 86700,horse 86701,deer 86702,deer 86703,automobile 86704,truck 86705,truck 86706,bird 86707,deer 86708,deer 86709,ship 86710,ship 86711,horse 86712,frog 86713,ship 86714,automobile 86715,horse 86716,bird 86717,bird 86718,horse 86719,cat 86720,deer 86721,truck 86722,automobile 86723,ship 86724,airplane 86725,horse 86726,bird 86727,ship 86728,dog 86729,airplane 86730,frog 86731,ship 86732,deer 86733,automobile 86734,cat 86735,truck 86736,automobile 86737,deer 86738,horse 86739,dog 86740,deer 86741,cat 86742,dog 86743,deer 86744,frog 86745,airplane 86746,deer 86747,bird 86748,deer 86749,truck 86750,automobile 86751,truck 86752,truck 86753,frog 86754,deer 86755,truck 86756,dog 86757,automobile 86758,cat 86759,frog 86760,truck 86761,cat 86762,truck 86763,dog 86764,horse 86765,frog 86766,truck 86767,frog 86768,frog 86769,frog 86770,truck 86771,cat 86772,frog 86773,horse 86774,ship 86775,horse 86776,airplane 86777,deer 86778,horse 86779,cat 86780,dog 86781,frog 86782,bird 86783,dog 86784,airplane 86785,ship 86786,cat 86787,cat 86788,ship 86789,airplane 86790,airplane 86791,cat 86792,cat 86793,ship 86794,bird 86795,deer 86796,truck 86797,automobile 86798,dog 86799,airplane 86800,ship 86801,frog 86802,dog 86803,cat 86804,airplane 86805,frog 86806,frog 86807,cat 86808,ship 86809,bird 86810,truck 86811,dog 86812,truck 86813,airplane 86814,frog 86815,cat 86816,dog 86817,automobile 86818,deer 86819,deer 86820,airplane 86821,horse 86822,deer 86823,dog 86824,ship 86825,ship 86826,deer 86827,cat 86828,deer 86829,airplane 86830,deer 86831,horse 86832,frog 86833,frog 86834,automobile 86835,truck 86836,deer 86837,ship 86838,automobile 86839,frog 86840,bird 86841,truck 86842,truck 86843,bird 86844,deer 86845,dog 86846,frog 86847,deer 86848,automobile 86849,deer 86850,deer 86851,frog 86852,cat 86853,automobile 86854,airplane 86855,truck 86856,bird 86857,cat 86858,truck 86859,horse 86860,deer 86861,cat 86862,dog 86863,frog 86864,deer 86865,automobile 86866,dog 86867,dog 86868,frog 86869,frog 86870,horse 86871,horse 86872,bird 86873,truck 86874,bird 86875,cat 86876,horse 86877,cat 86878,dog 86879,deer 86880,ship 86881,deer 86882,frog 86883,bird 86884,frog 86885,automobile 86886,cat 86887,frog 86888,dog 86889,automobile 86890,deer 86891,deer 86892,dog 86893,ship 86894,horse 86895,ship 86896,airplane 86897,horse 86898,frog 86899,bird 86900,dog 86901,truck 86902,dog 86903,dog 86904,cat 86905,airplane 86906,automobile 86907,cat 86908,ship 86909,ship 86910,deer 86911,ship 86912,ship 86913,cat 86914,horse 86915,bird 86916,ship 86917,frog 86918,bird 86919,truck 86920,airplane 86921,frog 86922,frog 86923,dog 86924,ship 86925,horse 86926,horse 86927,truck 86928,cat 86929,horse 86930,horse 86931,truck 86932,truck 86933,automobile 86934,truck 86935,frog 86936,automobile 86937,airplane 86938,truck 86939,frog 86940,frog 86941,dog 86942,horse 86943,bird 86944,dog 86945,dog 86946,frog 86947,ship 86948,automobile 86949,deer 86950,automobile 86951,ship 86952,horse 86953,truck 86954,bird 86955,airplane 86956,airplane 86957,dog 86958,dog 86959,horse 86960,dog 86961,ship 86962,frog 86963,truck 86964,frog 86965,dog 86966,deer 86967,deer 86968,horse 86969,frog 86970,horse 86971,automobile 86972,automobile 86973,frog 86974,dog 86975,horse 86976,deer 86977,bird 86978,bird 86979,horse 86980,automobile 86981,dog 86982,truck 86983,cat 86984,frog 86985,frog 86986,deer 86987,ship 86988,deer 86989,dog 86990,automobile 86991,automobile 86992,truck 86993,airplane 86994,cat 86995,cat 86996,airplane 86997,horse 86998,automobile 86999,bird 87000,truck 87001,dog 87002,frog 87003,ship 87004,dog 87005,truck 87006,ship 87007,truck 87008,deer 87009,truck 87010,ship 87011,cat 87012,horse 87013,cat 87014,frog 87015,horse 87016,dog 87017,horse 87018,frog 87019,cat 87020,cat 87021,frog 87022,bird 87023,horse 87024,horse 87025,cat 87026,ship 87027,deer 87028,bird 87029,truck 87030,cat 87031,ship 87032,horse 87033,horse 87034,frog 87035,bird 87036,frog 87037,cat 87038,cat 87039,cat 87040,deer 87041,cat 87042,automobile 87043,horse 87044,cat 87045,truck 87046,cat 87047,automobile 87048,frog 87049,truck 87050,truck 87051,cat 87052,deer 87053,cat 87054,dog 87055,truck 87056,cat 87057,frog 87058,deer 87059,bird 87060,deer 87061,airplane 87062,cat 87063,airplane 87064,dog 87065,airplane 87066,dog 87067,bird 87068,dog 87069,frog 87070,bird 87071,bird 87072,frog 87073,dog 87074,dog 87075,horse 87076,bird 87077,cat 87078,frog 87079,bird 87080,ship 87081,ship 87082,airplane 87083,cat 87084,dog 87085,horse 87086,deer 87087,bird 87088,frog 87089,cat 87090,deer 87091,cat 87092,frog 87093,airplane 87094,horse 87095,bird 87096,dog 87097,automobile 87098,frog 87099,automobile 87100,cat 87101,truck 87102,dog 87103,deer 87104,bird 87105,truck 87106,frog 87107,cat 87108,deer 87109,truck 87110,cat 87111,bird 87112,airplane 87113,ship 87114,horse 87115,cat 87116,truck 87117,horse 87118,deer 87119,airplane 87120,truck 87121,frog 87122,cat 87123,deer 87124,frog 87125,dog 87126,deer 87127,ship 87128,deer 87129,frog 87130,dog 87131,ship 87132,truck 87133,deer 87134,bird 87135,deer 87136,frog 87137,deer 87138,automobile 87139,truck 87140,horse 87141,bird 87142,airplane 87143,ship 87144,automobile 87145,cat 87146,truck 87147,cat 87148,cat 87149,automobile 87150,truck 87151,cat 87152,truck 87153,deer 87154,airplane 87155,truck 87156,truck 87157,horse 87158,ship 87159,airplane 87160,automobile 87161,cat 87162,ship 87163,cat 87164,deer 87165,bird 87166,bird 87167,deer 87168,deer 87169,airplane 87170,airplane 87171,cat 87172,horse 87173,cat 87174,ship 87175,frog 87176,deer 87177,deer 87178,ship 87179,frog 87180,horse 87181,automobile 87182,frog 87183,dog 87184,frog 87185,dog 87186,automobile 87187,deer 87188,frog 87189,frog 87190,frog 87191,horse 87192,bird 87193,deer 87194,airplane 87195,frog 87196,dog 87197,dog 87198,automobile 87199,truck 87200,cat 87201,deer 87202,truck 87203,deer 87204,automobile 87205,horse 87206,dog 87207,deer 87208,deer 87209,dog 87210,dog 87211,cat 87212,deer 87213,truck 87214,dog 87215,frog 87216,deer 87217,frog 87218,bird 87219,deer 87220,frog 87221,ship 87222,deer 87223,frog 87224,airplane 87225,truck 87226,frog 87227,horse 87228,cat 87229,frog 87230,bird 87231,frog 87232,ship 87233,airplane 87234,dog 87235,truck 87236,airplane 87237,airplane 87238,ship 87239,frog 87240,cat 87241,automobile 87242,deer 87243,frog 87244,cat 87245,ship 87246,dog 87247,truck 87248,airplane 87249,cat 87250,deer 87251,truck 87252,deer 87253,horse 87254,cat 87255,airplane 87256,airplane 87257,cat 87258,frog 87259,frog 87260,horse 87261,ship 87262,cat 87263,frog 87264,deer 87265,frog 87266,cat 87267,cat 87268,automobile 87269,deer 87270,truck 87271,frog 87272,truck 87273,deer 87274,frog 87275,ship 87276,frog 87277,cat 87278,dog 87279,airplane 87280,bird 87281,horse 87282,horse 87283,horse 87284,ship 87285,deer 87286,horse 87287,truck 87288,horse 87289,dog 87290,bird 87291,frog 87292,frog 87293,deer 87294,cat 87295,deer 87296,bird 87297,frog 87298,horse 87299,cat 87300,bird 87301,cat 87302,dog 87303,automobile 87304,frog 87305,deer 87306,frog 87307,dog 87308,bird 87309,dog 87310,ship 87311,truck 87312,bird 87313,ship 87314,truck 87315,automobile 87316,ship 87317,cat 87318,horse 87319,bird 87320,frog 87321,truck 87322,cat 87323,dog 87324,cat 87325,airplane 87326,airplane 87327,truck 87328,horse 87329,deer 87330,cat 87331,frog 87332,horse 87333,horse 87334,deer 87335,automobile 87336,ship 87337,cat 87338,frog 87339,bird 87340,horse 87341,truck 87342,cat 87343,cat 87344,deer 87345,frog 87346,cat 87347,automobile 87348,bird 87349,truck 87350,frog 87351,cat 87352,frog 87353,cat 87354,automobile 87355,ship 87356,bird 87357,ship 87358,deer 87359,horse 87360,bird 87361,deer 87362,airplane 87363,cat 87364,ship 87365,cat 87366,automobile 87367,horse 87368,airplane 87369,ship 87370,cat 87371,deer 87372,airplane 87373,horse 87374,frog 87375,airplane 87376,cat 87377,horse 87378,horse 87379,airplane 87380,dog 87381,frog 87382,deer 87383,deer 87384,deer 87385,bird 87386,cat 87387,frog 87388,frog 87389,bird 87390,deer 87391,airplane 87392,bird 87393,deer 87394,ship 87395,truck 87396,frog 87397,airplane 87398,cat 87399,cat 87400,frog 87401,cat 87402,automobile 87403,bird 87404,truck 87405,truck 87406,bird 87407,automobile 87408,airplane 87409,airplane 87410,cat 87411,airplane 87412,deer 87413,dog 87414,bird 87415,ship 87416,deer 87417,cat 87418,airplane 87419,horse 87420,frog 87421,ship 87422,deer 87423,deer 87424,bird 87425,horse 87426,deer 87427,cat 87428,frog 87429,bird 87430,ship 87431,deer 87432,deer 87433,frog 87434,cat 87435,ship 87436,ship 87437,deer 87438,dog 87439,deer 87440,frog 87441,bird 87442,dog 87443,deer 87444,deer 87445,frog 87446,cat 87447,deer 87448,ship 87449,bird 87450,dog 87451,deer 87452,automobile 87453,bird 87454,ship 87455,cat 87456,deer 87457,ship 87458,bird 87459,airplane 87460,ship 87461,cat 87462,truck 87463,dog 87464,deer 87465,deer 87466,airplane 87467,automobile 87468,deer 87469,frog 87470,automobile 87471,cat 87472,cat 87473,deer 87474,cat 87475,truck 87476,dog 87477,dog 87478,cat 87479,truck 87480,cat 87481,deer 87482,truck 87483,frog 87484,deer 87485,dog 87486,bird 87487,airplane 87488,frog 87489,dog 87490,dog 87491,truck 87492,frog 87493,horse 87494,bird 87495,cat 87496,airplane 87497,deer 87498,airplane 87499,truck 87500,truck 87501,deer 87502,deer 87503,deer 87504,airplane 87505,bird 87506,cat 87507,ship 87508,automobile 87509,ship 87510,horse 87511,horse 87512,dog 87513,frog 87514,frog 87515,bird 87516,deer 87517,cat 87518,bird 87519,dog 87520,dog 87521,ship 87522,cat 87523,deer 87524,airplane 87525,dog 87526,deer 87527,cat 87528,ship 87529,horse 87530,dog 87531,bird 87532,dog 87533,horse 87534,airplane 87535,frog 87536,dog 87537,cat 87538,frog 87539,cat 87540,automobile 87541,cat 87542,horse 87543,cat 87544,automobile 87545,dog 87546,frog 87547,truck 87548,automobile 87549,frog 87550,truck 87551,dog 87552,deer 87553,airplane 87554,airplane 87555,deer 87556,bird 87557,dog 87558,cat 87559,airplane 87560,dog 87561,truck 87562,horse 87563,ship 87564,deer 87565,frog 87566,cat 87567,dog 87568,deer 87569,frog 87570,dog 87571,horse 87572,automobile 87573,bird 87574,truck 87575,horse 87576,automobile 87577,horse 87578,cat 87579,horse 87580,dog 87581,dog 87582,deer 87583,horse 87584,cat 87585,deer 87586,dog 87587,truck 87588,horse 87589,horse 87590,automobile 87591,dog 87592,automobile 87593,dog 87594,cat 87595,cat 87596,horse 87597,dog 87598,bird 87599,deer 87600,ship 87601,horse 87602,cat 87603,deer 87604,truck 87605,deer 87606,bird 87607,horse 87608,ship 87609,deer 87610,horse 87611,deer 87612,horse 87613,dog 87614,airplane 87615,horse 87616,automobile 87617,frog 87618,cat 87619,deer 87620,truck 87621,bird 87622,horse 87623,deer 87624,dog 87625,truck 87626,truck 87627,deer 87628,dog 87629,automobile 87630,truck 87631,ship 87632,horse 87633,cat 87634,horse 87635,truck 87636,horse 87637,frog 87638,airplane 87639,ship 87640,dog 87641,automobile 87642,ship 87643,frog 87644,cat 87645,dog 87646,automobile 87647,automobile 87648,frog 87649,deer 87650,airplane 87651,truck 87652,cat 87653,cat 87654,deer 87655,truck 87656,frog 87657,deer 87658,ship 87659,automobile 87660,frog 87661,truck 87662,dog 87663,automobile 87664,cat 87665,deer 87666,automobile 87667,deer 87668,horse 87669,dog 87670,cat 87671,deer 87672,frog 87673,ship 87674,deer 87675,dog 87676,deer 87677,horse 87678,deer 87679,bird 87680,frog 87681,deer 87682,frog 87683,truck 87684,truck 87685,dog 87686,dog 87687,cat 87688,airplane 87689,cat 87690,truck 87691,cat 87692,dog 87693,dog 87694,truck 87695,dog 87696,truck 87697,horse 87698,cat 87699,ship 87700,truck 87701,deer 87702,frog 87703,dog 87704,deer 87705,cat 87706,bird 87707,dog 87708,cat 87709,deer 87710,airplane 87711,deer 87712,frog 87713,bird 87714,cat 87715,airplane 87716,deer 87717,deer 87718,frog 87719,automobile 87720,dog 87721,bird 87722,horse 87723,ship 87724,dog 87725,airplane 87726,deer 87727,bird 87728,cat 87729,horse 87730,deer 87731,automobile 87732,frog 87733,automobile 87734,deer 87735,ship 87736,truck 87737,ship 87738,horse 87739,bird 87740,cat 87741,ship 87742,deer 87743,frog 87744,horse 87745,horse 87746,automobile 87747,bird 87748,cat 87749,deer 87750,dog 87751,horse 87752,horse 87753,bird 87754,frog 87755,deer 87756,automobile 87757,cat 87758,ship 87759,horse 87760,airplane 87761,deer 87762,deer 87763,deer 87764,truck 87765,dog 87766,bird 87767,cat 87768,truck 87769,bird 87770,ship 87771,automobile 87772,cat 87773,airplane 87774,bird 87775,frog 87776,cat 87777,dog 87778,bird 87779,automobile 87780,truck 87781,horse 87782,horse 87783,deer 87784,automobile 87785,truck 87786,deer 87787,airplane 87788,cat 87789,frog 87790,ship 87791,deer 87792,dog 87793,deer 87794,automobile 87795,deer 87796,frog 87797,airplane 87798,airplane 87799,deer 87800,cat 87801,deer 87802,dog 87803,bird 87804,deer 87805,bird 87806,bird 87807,airplane 87808,truck 87809,automobile 87810,airplane 87811,deer 87812,dog 87813,cat 87814,bird 87815,horse 87816,truck 87817,truck 87818,deer 87819,dog 87820,airplane 87821,horse 87822,horse 87823,deer 87824,deer 87825,horse 87826,horse 87827,airplane 87828,deer 87829,automobile 87830,truck 87831,truck 87832,frog 87833,deer 87834,truck 87835,horse 87836,cat 87837,deer 87838,cat 87839,cat 87840,deer 87841,deer 87842,bird 87843,truck 87844,truck 87845,deer 87846,frog 87847,truck 87848,automobile 87849,cat 87850,bird 87851,truck 87852,frog 87853,deer 87854,deer 87855,ship 87856,bird 87857,frog 87858,automobile 87859,horse 87860,automobile 87861,horse 87862,airplane 87863,automobile 87864,dog 87865,deer 87866,cat 87867,deer 87868,dog 87869,frog 87870,ship 87871,ship 87872,truck 87873,deer 87874,cat 87875,truck 87876,cat 87877,ship 87878,truck 87879,dog 87880,automobile 87881,frog 87882,frog 87883,deer 87884,dog 87885,truck 87886,automobile 87887,cat 87888,truck 87889,ship 87890,bird 87891,bird 87892,deer 87893,ship 87894,deer 87895,cat 87896,cat 87897,deer 87898,truck 87899,cat 87900,cat 87901,truck 87902,dog 87903,deer 87904,frog 87905,horse 87906,dog 87907,automobile 87908,automobile 87909,cat 87910,deer 87911,deer 87912,dog 87913,horse 87914,deer 87915,deer 87916,frog 87917,dog 87918,horse 87919,deer 87920,cat 87921,dog 87922,automobile 87923,horse 87924,cat 87925,horse 87926,deer 87927,automobile 87928,horse 87929,ship 87930,ship 87931,bird 87932,cat 87933,automobile 87934,automobile 87935,dog 87936,airplane 87937,dog 87938,deer 87939,automobile 87940,deer 87941,dog 87942,airplane 87943,deer 87944,deer 87945,cat 87946,dog 87947,frog 87948,dog 87949,ship 87950,truck 87951,ship 87952,ship 87953,bird 87954,frog 87955,bird 87956,cat 87957,automobile 87958,truck 87959,airplane 87960,ship 87961,cat 87962,horse 87963,dog 87964,dog 87965,airplane 87966,frog 87967,cat 87968,truck 87969,ship 87970,deer 87971,dog 87972,bird 87973,ship 87974,deer 87975,deer 87976,deer 87977,horse 87978,bird 87979,dog 87980,deer 87981,dog 87982,ship 87983,cat 87984,horse 87985,frog 87986,automobile 87987,bird 87988,deer 87989,truck 87990,deer 87991,deer 87992,frog 87993,dog 87994,airplane 87995,ship 87996,deer 87997,truck 87998,automobile 87999,horse 88000,bird 88001,bird 88002,ship 88003,cat 88004,horse 88005,cat 88006,truck 88007,bird 88008,automobile 88009,horse 88010,horse 88011,truck 88012,horse 88013,horse 88014,cat 88015,bird 88016,cat 88017,cat 88018,horse 88019,frog 88020,bird 88021,horse 88022,ship 88023,deer 88024,ship 88025,bird 88026,automobile 88027,deer 88028,dog 88029,airplane 88030,cat 88031,frog 88032,truck 88033,bird 88034,cat 88035,deer 88036,deer 88037,horse 88038,truck 88039,automobile 88040,cat 88041,cat 88042,airplane 88043,deer 88044,horse 88045,airplane 88046,automobile 88047,deer 88048,bird 88049,horse 88050,cat 88051,airplane 88052,dog 88053,deer 88054,deer 88055,dog 88056,truck 88057,airplane 88058,cat 88059,dog 88060,dog 88061,horse 88062,bird 88063,automobile 88064,frog 88065,frog 88066,dog 88067,cat 88068,truck 88069,frog 88070,deer 88071,deer 88072,deer 88073,cat 88074,dog 88075,deer 88076,frog 88077,truck 88078,frog 88079,horse 88080,truck 88081,deer 88082,frog 88083,airplane 88084,deer 88085,truck 88086,horse 88087,airplane 88088,truck 88089,horse 88090,deer 88091,frog 88092,cat 88093,deer 88094,horse 88095,horse 88096,frog 88097,frog 88098,frog 88099,dog 88100,cat 88101,dog 88102,ship 88103,automobile 88104,deer 88105,horse 88106,deer 88107,cat 88108,cat 88109,horse 88110,frog 88111,ship 88112,cat 88113,frog 88114,truck 88115,deer 88116,cat 88117,airplane 88118,deer 88119,dog 88120,dog 88121,frog 88122,bird 88123,automobile 88124,deer 88125,frog 88126,automobile 88127,airplane 88128,cat 88129,dog 88130,airplane 88131,deer 88132,cat 88133,cat 88134,airplane 88135,cat 88136,dog 88137,cat 88138,cat 88139,bird 88140,automobile 88141,dog 88142,airplane 88143,dog 88144,deer 88145,truck 88146,ship 88147,dog 88148,airplane 88149,cat 88150,automobile 88151,cat 88152,frog 88153,deer 88154,frog 88155,deer 88156,horse 88157,ship 88158,frog 88159,frog 88160,automobile 88161,cat 88162,truck 88163,cat 88164,cat 88165,deer 88166,automobile 88167,cat 88168,frog 88169,deer 88170,cat 88171,automobile 88172,frog 88173,ship 88174,deer 88175,ship 88176,deer 88177,dog 88178,dog 88179,cat 88180,ship 88181,truck 88182,dog 88183,frog 88184,deer 88185,frog 88186,horse 88187,truck 88188,airplane 88189,dog 88190,truck 88191,frog 88192,ship 88193,dog 88194,cat 88195,horse 88196,deer 88197,deer 88198,dog 88199,bird 88200,deer 88201,airplane 88202,ship 88203,truck 88204,frog 88205,frog 88206,frog 88207,truck 88208,deer 88209,truck 88210,deer 88211,cat 88212,dog 88213,frog 88214,automobile 88215,deer 88216,truck 88217,cat 88218,truck 88219,truck 88220,ship 88221,frog 88222,truck 88223,ship 88224,cat 88225,horse 88226,truck 88227,deer 88228,deer 88229,dog 88230,horse 88231,truck 88232,deer 88233,dog 88234,cat 88235,cat 88236,bird 88237,bird 88238,dog 88239,frog 88240,airplane 88241,deer 88242,cat 88243,frog 88244,airplane 88245,airplane 88246,cat 88247,truck 88248,bird 88249,dog 88250,cat 88251,bird 88252,deer 88253,deer 88254,dog 88255,bird 88256,dog 88257,truck 88258,deer 88259,automobile 88260,airplane 88261,airplane 88262,deer 88263,truck 88264,deer 88265,horse 88266,bird 88267,airplane 88268,ship 88269,horse 88270,horse 88271,airplane 88272,frog 88273,airplane 88274,deer 88275,frog 88276,airplane 88277,automobile 88278,frog 88279,frog 88280,horse 88281,automobile 88282,dog 88283,frog 88284,frog 88285,deer 88286,dog 88287,bird 88288,ship 88289,truck 88290,bird 88291,cat 88292,horse 88293,frog 88294,airplane 88295,bird 88296,automobile 88297,cat 88298,frog 88299,horse 88300,deer 88301,deer 88302,cat 88303,automobile 88304,truck 88305,frog 88306,deer 88307,ship 88308,frog 88309,deer 88310,horse 88311,horse 88312,cat 88313,frog 88314,dog 88315,frog 88316,cat 88317,bird 88318,airplane 88319,truck 88320,bird 88321,truck 88322,truck 88323,automobile 88324,ship 88325,airplane 88326,automobile 88327,deer 88328,automobile 88329,ship 88330,deer 88331,horse 88332,horse 88333,frog 88334,ship 88335,deer 88336,truck 88337,truck 88338,cat 88339,automobile 88340,deer 88341,deer 88342,truck 88343,frog 88344,ship 88345,ship 88346,automobile 88347,bird 88348,cat 88349,airplane 88350,frog 88351,airplane 88352,cat 88353,frog 88354,airplane 88355,frog 88356,cat 88357,bird 88358,automobile 88359,cat 88360,deer 88361,cat 88362,automobile 88363,ship 88364,dog 88365,deer 88366,cat 88367,deer 88368,truck 88369,automobile 88370,frog 88371,horse 88372,frog 88373,frog 88374,horse 88375,horse 88376,airplane 88377,ship 88378,deer 88379,deer 88380,deer 88381,dog 88382,truck 88383,automobile 88384,ship 88385,airplane 88386,dog 88387,horse 88388,cat 88389,dog 88390,deer 88391,dog 88392,deer 88393,cat 88394,airplane 88395,ship 88396,frog 88397,cat 88398,truck 88399,deer 88400,ship 88401,horse 88402,bird 88403,airplane 88404,cat 88405,dog 88406,truck 88407,cat 88408,deer 88409,airplane 88410,dog 88411,frog 88412,horse 88413,ship 88414,cat 88415,deer 88416,dog 88417,airplane 88418,automobile 88419,bird 88420,automobile 88421,dog 88422,cat 88423,deer 88424,cat 88425,horse 88426,cat 88427,cat 88428,airplane 88429,truck 88430,cat 88431,bird 88432,frog 88433,deer 88434,dog 88435,truck 88436,frog 88437,dog 88438,cat 88439,airplane 88440,cat 88441,cat 88442,dog 88443,bird 88444,airplane 88445,deer 88446,cat 88447,bird 88448,truck 88449,deer 88450,airplane 88451,dog 88452,deer 88453,cat 88454,frog 88455,airplane 88456,cat 88457,bird 88458,dog 88459,airplane 88460,bird 88461,frog 88462,truck 88463,automobile 88464,ship 88465,dog 88466,dog 88467,dog 88468,frog 88469,airplane 88470,frog 88471,bird 88472,frog 88473,automobile 88474,cat 88475,airplane 88476,cat 88477,ship 88478,frog 88479,cat 88480,automobile 88481,dog 88482,dog 88483,truck 88484,frog 88485,bird 88486,cat 88487,bird 88488,cat 88489,ship 88490,horse 88491,automobile 88492,deer 88493,cat 88494,deer 88495,horse 88496,horse 88497,frog 88498,dog 88499,ship 88500,frog 88501,frog 88502,dog 88503,horse 88504,frog 88505,horse 88506,cat 88507,horse 88508,automobile 88509,frog 88510,cat 88511,horse 88512,truck 88513,cat 88514,truck 88515,airplane 88516,airplane 88517,deer 88518,frog 88519,bird 88520,frog 88521,frog 88522,automobile 88523,cat 88524,bird 88525,automobile 88526,airplane 88527,frog 88528,deer 88529,dog 88530,cat 88531,bird 88532,automobile 88533,deer 88534,deer 88535,horse 88536,cat 88537,cat 88538,frog 88539,cat 88540,frog 88541,ship 88542,frog 88543,deer 88544,ship 88545,automobile 88546,truck 88547,horse 88548,frog 88549,bird 88550,airplane 88551,truck 88552,truck 88553,truck 88554,horse 88555,cat 88556,cat 88557,truck 88558,truck 88559,dog 88560,dog 88561,cat 88562,cat 88563,deer 88564,frog 88565,truck 88566,truck 88567,ship 88568,deer 88569,horse 88570,dog 88571,truck 88572,bird 88573,automobile 88574,airplane 88575,airplane 88576,airplane 88577,horse 88578,airplane 88579,truck 88580,airplane 88581,deer 88582,deer 88583,automobile 88584,frog 88585,cat 88586,airplane 88587,bird 88588,airplane 88589,horse 88590,cat 88591,deer 88592,airplane 88593,ship 88594,dog 88595,dog 88596,airplane 88597,bird 88598,bird 88599,bird 88600,horse 88601,ship 88602,frog 88603,bird 88604,deer 88605,cat 88606,horse 88607,horse 88608,cat 88609,cat 88610,horse 88611,horse 88612,frog 88613,ship 88614,cat 88615,truck 88616,ship 88617,cat 88618,deer 88619,airplane 88620,bird 88621,deer 88622,cat 88623,ship 88624,truck 88625,dog 88626,bird 88627,deer 88628,bird 88629,cat 88630,cat 88631,automobile 88632,deer 88633,horse 88634,frog 88635,dog 88636,deer 88637,airplane 88638,dog 88639,deer 88640,ship 88641,cat 88642,horse 88643,cat 88644,automobile 88645,truck 88646,bird 88647,bird 88648,dog 88649,bird 88650,deer 88651,deer 88652,frog 88653,frog 88654,dog 88655,bird 88656,horse 88657,frog 88658,truck 88659,horse 88660,bird 88661,dog 88662,truck 88663,cat 88664,airplane 88665,deer 88666,bird 88667,cat 88668,ship 88669,bird 88670,automobile 88671,bird 88672,cat 88673,airplane 88674,deer 88675,truck 88676,cat 88677,automobile 88678,cat 88679,airplane 88680,cat 88681,horse 88682,deer 88683,cat 88684,horse 88685,horse 88686,truck 88687,bird 88688,ship 88689,bird 88690,deer 88691,horse 88692,automobile 88693,truck 88694,deer 88695,frog 88696,bird 88697,bird 88698,horse 88699,horse 88700,airplane 88701,bird 88702,deer 88703,deer 88704,bird 88705,airplane 88706,deer 88707,cat 88708,frog 88709,airplane 88710,truck 88711,truck 88712,automobile 88713,airplane 88714,horse 88715,ship 88716,bird 88717,deer 88718,ship 88719,ship 88720,airplane 88721,truck 88722,bird 88723,deer 88724,cat 88725,deer 88726,deer 88727,deer 88728,dog 88729,cat 88730,ship 88731,ship 88732,dog 88733,airplane 88734,frog 88735,bird 88736,bird 88737,deer 88738,truck 88739,deer 88740,bird 88741,airplane 88742,automobile 88743,ship 88744,deer 88745,truck 88746,automobile 88747,truck 88748,frog 88749,horse 88750,cat 88751,deer 88752,dog 88753,cat 88754,frog 88755,bird 88756,ship 88757,truck 88758,cat 88759,horse 88760,cat 88761,truck 88762,automobile 88763,automobile 88764,frog 88765,frog 88766,cat 88767,truck 88768,dog 88769,truck 88770,automobile 88771,airplane 88772,frog 88773,dog 88774,airplane 88775,bird 88776,truck 88777,frog 88778,deer 88779,automobile 88780,cat 88781,ship 88782,automobile 88783,deer 88784,bird 88785,bird 88786,frog 88787,horse 88788,ship 88789,cat 88790,horse 88791,horse 88792,automobile 88793,frog 88794,cat 88795,ship 88796,frog 88797,deer 88798,horse 88799,airplane 88800,truck 88801,airplane 88802,horse 88803,frog 88804,deer 88805,cat 88806,bird 88807,bird 88808,horse 88809,cat 88810,airplane 88811,dog 88812,deer 88813,cat 88814,ship 88815,truck 88816,ship 88817,deer 88818,horse 88819,dog 88820,airplane 88821,automobile 88822,truck 88823,truck 88824,horse 88825,horse 88826,truck 88827,dog 88828,cat 88829,ship 88830,frog 88831,deer 88832,frog 88833,truck 88834,deer 88835,bird 88836,horse 88837,bird 88838,cat 88839,horse 88840,ship 88841,dog 88842,frog 88843,cat 88844,airplane 88845,horse 88846,horse 88847,dog 88848,truck 88849,dog 88850,frog 88851,cat 88852,horse 88853,cat 88854,cat 88855,truck 88856,automobile 88857,truck 88858,cat 88859,deer 88860,cat 88861,deer 88862,frog 88863,deer 88864,deer 88865,horse 88866,deer 88867,truck 88868,horse 88869,dog 88870,airplane 88871,ship 88872,cat 88873,cat 88874,deer 88875,frog 88876,cat 88877,airplane 88878,truck 88879,automobile 88880,frog 88881,cat 88882,airplane 88883,airplane 88884,dog 88885,ship 88886,deer 88887,deer 88888,ship 88889,airplane 88890,cat 88891,horse 88892,dog 88893,deer 88894,ship 88895,airplane 88896,ship 88897,frog 88898,ship 88899,horse 88900,cat 88901,deer 88902,bird 88903,horse 88904,truck 88905,airplane 88906,dog 88907,airplane 88908,cat 88909,ship 88910,truck 88911,cat 88912,frog 88913,dog 88914,ship 88915,horse 88916,bird 88917,ship 88918,airplane 88919,dog 88920,truck 88921,cat 88922,deer 88923,truck 88924,deer 88925,deer 88926,cat 88927,frog 88928,horse 88929,horse 88930,horse 88931,frog 88932,dog 88933,truck 88934,dog 88935,cat 88936,ship 88937,horse 88938,truck 88939,frog 88940,frog 88941,airplane 88942,dog 88943,truck 88944,frog 88945,cat 88946,ship 88947,bird 88948,frog 88949,dog 88950,bird 88951,truck 88952,airplane 88953,cat 88954,frog 88955,deer 88956,frog 88957,ship 88958,automobile 88959,automobile 88960,frog 88961,deer 88962,truck 88963,ship 88964,airplane 88965,frog 88966,dog 88967,airplane 88968,deer 88969,deer 88970,frog 88971,ship 88972,deer 88973,horse 88974,cat 88975,bird 88976,deer 88977,ship 88978,cat 88979,truck 88980,airplane 88981,deer 88982,dog 88983,bird 88984,cat 88985,ship 88986,bird 88987,deer 88988,deer 88989,truck 88990,frog 88991,dog 88992,dog 88993,truck 88994,cat 88995,frog 88996,cat 88997,cat 88998,truck 88999,automobile 89000,truck 89001,automobile 89002,bird 89003,cat 89004,airplane 89005,airplane 89006,automobile 89007,truck 89008,dog 89009,truck 89010,ship 89011,frog 89012,bird 89013,ship 89014,frog 89015,dog 89016,dog 89017,dog 89018,frog 89019,automobile 89020,airplane 89021,truck 89022,bird 89023,frog 89024,ship 89025,horse 89026,frog 89027,airplane 89028,cat 89029,bird 89030,deer 89031,cat 89032,automobile 89033,ship 89034,ship 89035,bird 89036,deer 89037,truck 89038,truck 89039,dog 89040,dog 89041,airplane 89042,automobile 89043,horse 89044,frog 89045,bird 89046,horse 89047,horse 89048,cat 89049,deer 89050,frog 89051,deer 89052,bird 89053,frog 89054,cat 89055,bird 89056,horse 89057,ship 89058,bird 89059,dog 89060,truck 89061,horse 89062,truck 89063,frog 89064,cat 89065,bird 89066,ship 89067,dog 89068,cat 89069,airplane 89070,dog 89071,dog 89072,frog 89073,dog 89074,horse 89075,dog 89076,deer 89077,dog 89078,bird 89079,deer 89080,frog 89081,truck 89082,cat 89083,cat 89084,ship 89085,dog 89086,dog 89087,frog 89088,truck 89089,dog 89090,frog 89091,frog 89092,cat 89093,airplane 89094,horse 89095,automobile 89096,automobile 89097,deer 89098,deer 89099,truck 89100,deer 89101,deer 89102,frog 89103,cat 89104,airplane 89105,truck 89106,deer 89107,airplane 89108,automobile 89109,horse 89110,cat 89111,cat 89112,ship 89113,frog 89114,ship 89115,automobile 89116,deer 89117,ship 89118,horse 89119,bird 89120,airplane 89121,frog 89122,truck 89123,automobile 89124,cat 89125,deer 89126,airplane 89127,dog 89128,ship 89129,deer 89130,ship 89131,airplane 89132,ship 89133,frog 89134,horse 89135,airplane 89136,horse 89137,cat 89138,automobile 89139,frog 89140,cat 89141,bird 89142,dog 89143,dog 89144,automobile 89145,truck 89146,horse 89147,deer 89148,cat 89149,ship 89150,cat 89151,bird 89152,ship 89153,dog 89154,deer 89155,deer 89156,cat 89157,frog 89158,horse 89159,deer 89160,truck 89161,airplane 89162,cat 89163,automobile 89164,bird 89165,dog 89166,cat 89167,dog 89168,horse 89169,deer 89170,dog 89171,deer 89172,ship 89173,cat 89174,frog 89175,frog 89176,dog 89177,dog 89178,horse 89179,truck 89180,dog 89181,deer 89182,frog 89183,ship 89184,cat 89185,ship 89186,truck 89187,frog 89188,dog 89189,automobile 89190,bird 89191,cat 89192,dog 89193,truck 89194,horse 89195,cat 89196,dog 89197,frog 89198,deer 89199,horse 89200,cat 89201,bird 89202,dog 89203,frog 89204,truck 89205,deer 89206,horse 89207,truck 89208,horse 89209,cat 89210,truck 89211,ship 89212,truck 89213,frog 89214,horse 89215,truck 89216,cat 89217,automobile 89218,automobile 89219,truck 89220,deer 89221,deer 89222,frog 89223,dog 89224,dog 89225,bird 89226,bird 89227,frog 89228,frog 89229,dog 89230,bird 89231,deer 89232,horse 89233,airplane 89234,deer 89235,cat 89236,airplane 89237,dog 89238,ship 89239,deer 89240,cat 89241,dog 89242,horse 89243,automobile 89244,dog 89245,deer 89246,dog 89247,horse 89248,dog 89249,bird 89250,airplane 89251,automobile 89252,automobile 89253,deer 89254,horse 89255,truck 89256,frog 89257,frog 89258,deer 89259,cat 89260,horse 89261,cat 89262,dog 89263,horse 89264,cat 89265,airplane 89266,cat 89267,truck 89268,deer 89269,frog 89270,cat 89271,bird 89272,bird 89273,ship 89274,automobile 89275,deer 89276,horse 89277,deer 89278,dog 89279,cat 89280,dog 89281,cat 89282,cat 89283,truck 89284,automobile 89285,cat 89286,cat 89287,ship 89288,cat 89289,horse 89290,dog 89291,horse 89292,frog 89293,bird 89294,truck 89295,frog 89296,cat 89297,ship 89298,deer 89299,frog 89300,dog 89301,frog 89302,truck 89303,airplane 89304,bird 89305,bird 89306,horse 89307,deer 89308,dog 89309,bird 89310,horse 89311,truck 89312,deer 89313,frog 89314,airplane 89315,truck 89316,truck 89317,frog 89318,cat 89319,dog 89320,ship 89321,truck 89322,ship 89323,horse 89324,deer 89325,dog 89326,horse 89327,cat 89328,frog 89329,airplane 89330,dog 89331,cat 89332,cat 89333,bird 89334,dog 89335,bird 89336,truck 89337,dog 89338,automobile 89339,dog 89340,truck 89341,frog 89342,automobile 89343,deer 89344,horse 89345,cat 89346,horse 89347,dog 89348,frog 89349,dog 89350,airplane 89351,frog 89352,automobile 89353,airplane 89354,bird 89355,horse 89356,frog 89357,cat 89358,bird 89359,dog 89360,deer 89361,airplane 89362,horse 89363,truck 89364,frog 89365,truck 89366,deer 89367,cat 89368,horse 89369,airplane 89370,dog 89371,dog 89372,ship 89373,horse 89374,cat 89375,frog 89376,cat 89377,horse 89378,frog 89379,automobile 89380,deer 89381,frog 89382,truck 89383,dog 89384,horse 89385,ship 89386,horse 89387,ship 89388,ship 89389,airplane 89390,bird 89391,dog 89392,frog 89393,cat 89394,deer 89395,horse 89396,deer 89397,deer 89398,horse 89399,cat 89400,deer 89401,horse 89402,horse 89403,bird 89404,frog 89405,frog 89406,frog 89407,frog 89408,automobile 89409,deer 89410,horse 89411,horse 89412,deer 89413,deer 89414,deer 89415,bird 89416,automobile 89417,dog 89418,frog 89419,cat 89420,frog 89421,bird 89422,cat 89423,deer 89424,automobile 89425,deer 89426,dog 89427,bird 89428,horse 89429,airplane 89430,deer 89431,truck 89432,deer 89433,bird 89434,airplane 89435,deer 89436,automobile 89437,bird 89438,frog 89439,deer 89440,ship 89441,cat 89442,deer 89443,automobile 89444,airplane 89445,horse 89446,cat 89447,deer 89448,truck 89449,bird 89450,horse 89451,ship 89452,frog 89453,deer 89454,deer 89455,automobile 89456,frog 89457,cat 89458,deer 89459,cat 89460,dog 89461,bird 89462,automobile 89463,deer 89464,automobile 89465,bird 89466,airplane 89467,horse 89468,dog 89469,ship 89470,airplane 89471,frog 89472,frog 89473,ship 89474,horse 89475,cat 89476,dog 89477,deer 89478,automobile 89479,airplane 89480,ship 89481,airplane 89482,frog 89483,cat 89484,truck 89485,bird 89486,ship 89487,ship 89488,truck 89489,deer 89490,dog 89491,deer 89492,dog 89493,ship 89494,horse 89495,cat 89496,frog 89497,ship 89498,truck 89499,dog 89500,frog 89501,deer 89502,cat 89503,cat 89504,ship 89505,automobile 89506,airplane 89507,horse 89508,bird 89509,truck 89510,horse 89511,automobile 89512,cat 89513,automobile 89514,automobile 89515,horse 89516,truck 89517,airplane 89518,dog 89519,truck 89520,ship 89521,horse 89522,frog 89523,deer 89524,automobile 89525,dog 89526,deer 89527,ship 89528,deer 89529,frog 89530,deer 89531,deer 89532,deer 89533,deer 89534,ship 89535,cat 89536,frog 89537,frog 89538,deer 89539,horse 89540,dog 89541,airplane 89542,dog 89543,automobile 89544,cat 89545,cat 89546,frog 89547,deer 89548,deer 89549,dog 89550,horse 89551,cat 89552,cat 89553,cat 89554,automobile 89555,horse 89556,deer 89557,airplane 89558,bird 89559,cat 89560,ship 89561,truck 89562,dog 89563,horse 89564,deer 89565,ship 89566,frog 89567,deer 89568,bird 89569,dog 89570,bird 89571,dog 89572,horse 89573,deer 89574,horse 89575,airplane 89576,truck 89577,cat 89578,automobile 89579,automobile 89580,bird 89581,deer 89582,deer 89583,ship 89584,frog 89585,cat 89586,bird 89587,deer 89588,ship 89589,airplane 89590,cat 89591,dog 89592,frog 89593,ship 89594,horse 89595,horse 89596,frog 89597,dog 89598,airplane 89599,truck 89600,horse 89601,deer 89602,deer 89603,ship 89604,truck 89605,horse 89606,deer 89607,horse 89608,automobile 89609,cat 89610,deer 89611,dog 89612,ship 89613,airplane 89614,horse 89615,deer 89616,frog 89617,horse 89618,ship 89619,frog 89620,deer 89621,automobile 89622,horse 89623,ship 89624,truck 89625,truck 89626,bird 89627,horse 89628,frog 89629,cat 89630,ship 89631,airplane 89632,dog 89633,bird 89634,cat 89635,frog 89636,deer 89637,airplane 89638,cat 89639,dog 89640,cat 89641,automobile 89642,bird 89643,dog 89644,deer 89645,truck 89646,ship 89647,automobile 89648,airplane 89649,horse 89650,frog 89651,frog 89652,ship 89653,deer 89654,bird 89655,deer 89656,horse 89657,frog 89658,horse 89659,cat 89660,cat 89661,cat 89662,deer 89663,cat 89664,horse 89665,frog 89666,truck 89667,ship 89668,deer 89669,horse 89670,cat 89671,automobile 89672,frog 89673,airplane 89674,deer 89675,automobile 89676,ship 89677,ship 89678,automobile 89679,deer 89680,cat 89681,airplane 89682,frog 89683,cat 89684,bird 89685,frog 89686,bird 89687,automobile 89688,bird 89689,cat 89690,truck 89691,airplane 89692,truck 89693,airplane 89694,airplane 89695,frog 89696,cat 89697,dog 89698,airplane 89699,ship 89700,automobile 89701,bird 89702,truck 89703,frog 89704,deer 89705,horse 89706,bird 89707,bird 89708,dog 89709,dog 89710,frog 89711,cat 89712,horse 89713,frog 89714,deer 89715,automobile 89716,truck 89717,deer 89718,horse 89719,cat 89720,deer 89721,horse 89722,automobile 89723,truck 89724,frog 89725,truck 89726,cat 89727,deer 89728,dog 89729,horse 89730,cat 89731,ship 89732,bird 89733,frog 89734,frog 89735,cat 89736,cat 89737,airplane 89738,ship 89739,deer 89740,ship 89741,horse 89742,horse 89743,bird 89744,ship 89745,truck 89746,dog 89747,dog 89748,horse 89749,automobile 89750,bird 89751,horse 89752,automobile 89753,deer 89754,deer 89755,frog 89756,cat 89757,cat 89758,airplane 89759,bird 89760,ship 89761,cat 89762,truck 89763,deer 89764,frog 89765,automobile 89766,truck 89767,frog 89768,cat 89769,ship 89770,truck 89771,dog 89772,automobile 89773,automobile 89774,automobile 89775,deer 89776,dog 89777,truck 89778,truck 89779,cat 89780,horse 89781,bird 89782,truck 89783,frog 89784,truck 89785,dog 89786,cat 89787,frog 89788,dog 89789,airplane 89790,deer 89791,dog 89792,dog 89793,frog 89794,truck 89795,deer 89796,cat 89797,truck 89798,dog 89799,deer 89800,ship 89801,deer 89802,horse 89803,horse 89804,horse 89805,automobile 89806,automobile 89807,bird 89808,deer 89809,truck 89810,deer 89811,cat 89812,deer 89813,cat 89814,airplane 89815,horse 89816,cat 89817,dog 89818,truck 89819,deer 89820,bird 89821,deer 89822,bird 89823,ship 89824,deer 89825,horse 89826,airplane 89827,cat 89828,truck 89829,frog 89830,ship 89831,frog 89832,cat 89833,deer 89834,dog 89835,deer 89836,bird 89837,dog 89838,truck 89839,automobile 89840,truck 89841,ship 89842,automobile 89843,ship 89844,cat 89845,dog 89846,bird 89847,deer 89848,deer 89849,horse 89850,horse 89851,cat 89852,dog 89853,horse 89854,cat 89855,dog 89856,deer 89857,cat 89858,deer 89859,truck 89860,dog 89861,airplane 89862,deer 89863,dog 89864,airplane 89865,frog 89866,deer 89867,frog 89868,truck 89869,deer 89870,ship 89871,horse 89872,horse 89873,deer 89874,deer 89875,truck 89876,automobile 89877,horse 89878,frog 89879,frog 89880,bird 89881,automobile 89882,ship 89883,cat 89884,truck 89885,bird 89886,airplane 89887,deer 89888,automobile 89889,automobile 89890,truck 89891,ship 89892,bird 89893,deer 89894,ship 89895,cat 89896,cat 89897,airplane 89898,frog 89899,airplane 89900,truck 89901,ship 89902,cat 89903,deer 89904,deer 89905,frog 89906,deer 89907,frog 89908,truck 89909,truck 89910,ship 89911,horse 89912,frog 89913,dog 89914,deer 89915,dog 89916,truck 89917,horse 89918,airplane 89919,cat 89920,bird 89921,bird 89922,dog 89923,frog 89924,cat 89925,deer 89926,dog 89927,cat 89928,ship 89929,ship 89930,airplane 89931,horse 89932,cat 89933,deer 89934,deer 89935,frog 89936,dog 89937,ship 89938,truck 89939,dog 89940,bird 89941,cat 89942,dog 89943,cat 89944,airplane 89945,cat 89946,cat 89947,dog 89948,cat 89949,dog 89950,cat 89951,horse 89952,automobile 89953,dog 89954,frog 89955,dog 89956,dog 89957,airplane 89958,horse 89959,frog 89960,truck 89961,automobile 89962,frog 89963,horse 89964,airplane 89965,airplane 89966,cat 89967,automobile 89968,ship 89969,dog 89970,dog 89971,automobile 89972,dog 89973,horse 89974,horse 89975,ship 89976,truck 89977,ship 89978,automobile 89979,truck 89980,dog 89981,cat 89982,cat 89983,automobile 89984,cat 89985,ship 89986,cat 89987,airplane 89988,deer 89989,deer 89990,horse 89991,automobile 89992,dog 89993,ship 89994,dog 89995,ship 89996,bird 89997,cat 89998,automobile 89999,truck 90000,cat 90001,deer 90002,truck 90003,truck 90004,dog 90005,truck 90006,horse 90007,frog 90008,dog 90009,automobile 90010,automobile 90011,deer 90012,bird 90013,automobile 90014,dog 90015,cat 90016,automobile 90017,deer 90018,deer 90019,ship 90020,automobile 90021,ship 90022,truck 90023,cat 90024,bird 90025,dog 90026,cat 90027,ship 90028,dog 90029,dog 90030,automobile 90031,automobile 90032,automobile 90033,horse 90034,automobile 90035,deer 90036,frog 90037,frog 90038,deer 90039,airplane 90040,cat 90041,cat 90042,truck 90043,bird 90044,bird 90045,frog 90046,truck 90047,bird 90048,dog 90049,automobile 90050,automobile 90051,cat 90052,cat 90053,truck 90054,frog 90055,ship 90056,automobile 90057,frog 90058,horse 90059,bird 90060,frog 90061,truck 90062,cat 90063,deer 90064,truck 90065,frog 90066,airplane 90067,automobile 90068,bird 90069,cat 90070,deer 90071,dog 90072,dog 90073,cat 90074,dog 90075,airplane 90076,deer 90077,frog 90078,horse 90079,ship 90080,bird 90081,bird 90082,cat 90083,cat 90084,bird 90085,horse 90086,cat 90087,bird 90088,truck 90089,airplane 90090,automobile 90091,frog 90092,horse 90093,ship 90094,dog 90095,frog 90096,ship 90097,dog 90098,cat 90099,dog 90100,dog 90101,deer 90102,automobile 90103,bird 90104,deer 90105,automobile 90106,dog 90107,dog 90108,truck 90109,truck 90110,dog 90111,deer 90112,cat 90113,cat 90114,dog 90115,truck 90116,dog 90117,automobile 90118,horse 90119,automobile 90120,cat 90121,dog 90122,frog 90123,automobile 90124,dog 90125,airplane 90126,automobile 90127,dog 90128,automobile 90129,deer 90130,automobile 90131,frog 90132,frog 90133,truck 90134,airplane 90135,frog 90136,frog 90137,deer 90138,cat 90139,deer 90140,airplane 90141,automobile 90142,bird 90143,dog 90144,frog 90145,cat 90146,deer 90147,bird 90148,ship 90149,ship 90150,cat 90151,ship 90152,deer 90153,frog 90154,truck 90155,ship 90156,ship 90157,dog 90158,bird 90159,dog 90160,dog 90161,bird 90162,truck 90163,dog 90164,automobile 90165,dog 90166,deer 90167,dog 90168,dog 90169,truck 90170,deer 90171,deer 90172,horse 90173,ship 90174,dog 90175,cat 90176,automobile 90177,cat 90178,dog 90179,deer 90180,deer 90181,ship 90182,frog 90183,dog 90184,dog 90185,frog 90186,deer 90187,truck 90188,ship 90189,automobile 90190,deer 90191,frog 90192,ship 90193,airplane 90194,cat 90195,truck 90196,truck 90197,cat 90198,bird 90199,cat 90200,ship 90201,truck 90202,ship 90203,horse 90204,cat 90205,horse 90206,cat 90207,cat 90208,ship 90209,airplane 90210,automobile 90211,ship 90212,dog 90213,cat 90214,airplane 90215,cat 90216,deer 90217,truck 90218,deer 90219,truck 90220,frog 90221,cat 90222,horse 90223,horse 90224,truck 90225,deer 90226,airplane 90227,truck 90228,dog 90229,dog 90230,dog 90231,truck 90232,horse 90233,dog 90234,cat 90235,cat 90236,frog 90237,dog 90238,deer 90239,dog 90240,truck 90241,ship 90242,airplane 90243,horse 90244,cat 90245,dog 90246,deer 90247,deer 90248,automobile 90249,dog 90250,dog 90251,horse 90252,horse 90253,airplane 90254,horse 90255,dog 90256,truck 90257,deer 90258,truck 90259,cat 90260,truck 90261,dog 90262,truck 90263,ship 90264,dog 90265,horse 90266,dog 90267,dog 90268,horse 90269,deer 90270,bird 90271,ship 90272,truck 90273,cat 90274,frog 90275,deer 90276,dog 90277,horse 90278,ship 90279,deer 90280,cat 90281,airplane 90282,horse 90283,cat 90284,deer 90285,frog 90286,deer 90287,bird 90288,horse 90289,airplane 90290,dog 90291,ship 90292,dog 90293,horse 90294,cat 90295,airplane 90296,bird 90297,deer 90298,frog 90299,airplane 90300,dog 90301,deer 90302,truck 90303,deer 90304,cat 90305,ship 90306,ship 90307,truck 90308,airplane 90309,frog 90310,ship 90311,dog 90312,deer 90313,truck 90314,airplane 90315,deer 90316,automobile 90317,frog 90318,deer 90319,automobile 90320,ship 90321,bird 90322,ship 90323,frog 90324,deer 90325,airplane 90326,cat 90327,airplane 90328,airplane 90329,deer 90330,airplane 90331,bird 90332,cat 90333,dog 90334,deer 90335,cat 90336,bird 90337,cat 90338,automobile 90339,cat 90340,bird 90341,truck 90342,cat 90343,horse 90344,ship 90345,frog 90346,dog 90347,deer 90348,frog 90349,ship 90350,cat 90351,cat 90352,deer 90353,ship 90354,horse 90355,cat 90356,cat 90357,deer 90358,horse 90359,cat 90360,bird 90361,truck 90362,cat 90363,horse 90364,horse 90365,truck 90366,truck 90367,frog 90368,truck 90369,cat 90370,deer 90371,cat 90372,frog 90373,cat 90374,truck 90375,deer 90376,frog 90377,cat 90378,deer 90379,truck 90380,horse 90381,dog 90382,horse 90383,frog 90384,frog 90385,horse 90386,horse 90387,dog 90388,deer 90389,horse 90390,bird 90391,dog 90392,cat 90393,deer 90394,truck 90395,automobile 90396,horse 90397,airplane 90398,frog 90399,ship 90400,deer 90401,dog 90402,truck 90403,automobile 90404,deer 90405,truck 90406,horse 90407,deer 90408,horse 90409,bird 90410,cat 90411,cat 90412,dog 90413,frog 90414,dog 90415,truck 90416,bird 90417,horse 90418,truck 90419,automobile 90420,dog 90421,frog 90422,ship 90423,deer 90424,airplane 90425,bird 90426,dog 90427,frog 90428,deer 90429,automobile 90430,automobile 90431,truck 90432,ship 90433,frog 90434,ship 90435,truck 90436,automobile 90437,airplane 90438,cat 90439,truck 90440,frog 90441,dog 90442,bird 90443,bird 90444,horse 90445,horse 90446,ship 90447,truck 90448,airplane 90449,automobile 90450,airplane 90451,ship 90452,dog 90453,deer 90454,frog 90455,deer 90456,deer 90457,deer 90458,truck 90459,bird 90460,cat 90461,bird 90462,deer 90463,truck 90464,automobile 90465,cat 90466,frog 90467,deer 90468,deer 90469,horse 90470,bird 90471,cat 90472,bird 90473,frog 90474,ship 90475,automobile 90476,airplane 90477,horse 90478,truck 90479,deer 90480,deer 90481,frog 90482,airplane 90483,horse 90484,ship 90485,deer 90486,cat 90487,cat 90488,airplane 90489,deer 90490,frog 90491,airplane 90492,truck 90493,truck 90494,frog 90495,airplane 90496,cat 90497,truck 90498,horse 90499,cat 90500,bird 90501,dog 90502,truck 90503,frog 90504,deer 90505,bird 90506,cat 90507,frog 90508,bird 90509,airplane 90510,horse 90511,deer 90512,automobile 90513,cat 90514,deer 90515,automobile 90516,horse 90517,truck 90518,cat 90519,airplane 90520,deer 90521,deer 90522,truck 90523,ship 90524,bird 90525,ship 90526,deer 90527,frog 90528,dog 90529,automobile 90530,truck 90531,deer 90532,deer 90533,frog 90534,frog 90535,truck 90536,deer 90537,deer 90538,frog 90539,frog 90540,automobile 90541,horse 90542,airplane 90543,frog 90544,airplane 90545,truck 90546,frog 90547,horse 90548,deer 90549,frog 90550,deer 90551,frog 90552,frog 90553,cat 90554,automobile 90555,horse 90556,frog 90557,deer 90558,frog 90559,truck 90560,horse 90561,dog 90562,horse 90563,bird 90564,dog 90565,airplane 90566,dog 90567,bird 90568,deer 90569,horse 90570,frog 90571,airplane 90572,cat 90573,horse 90574,airplane 90575,bird 90576,ship 90577,cat 90578,airplane 90579,horse 90580,truck 90581,ship 90582,deer 90583,deer 90584,bird 90585,horse 90586,horse 90587,deer 90588,ship 90589,dog 90590,truck 90591,bird 90592,deer 90593,dog 90594,bird 90595,dog 90596,horse 90597,airplane 90598,deer 90599,horse 90600,cat 90601,automobile 90602,airplane 90603,frog 90604,dog 90605,deer 90606,frog 90607,truck 90608,truck 90609,cat 90610,airplane 90611,horse 90612,frog 90613,horse 90614,deer 90615,deer 90616,dog 90617,dog 90618,bird 90619,cat 90620,deer 90621,frog 90622,cat 90623,horse 90624,dog 90625,bird 90626,cat 90627,deer 90628,ship 90629,deer 90630,automobile 90631,automobile 90632,cat 90633,truck 90634,truck 90635,truck 90636,automobile 90637,automobile 90638,ship 90639,truck 90640,horse 90641,horse 90642,truck 90643,truck 90644,frog 90645,cat 90646,horse 90647,airplane 90648,truck 90649,bird 90650,cat 90651,frog 90652,deer 90653,deer 90654,bird 90655,dog 90656,bird 90657,deer 90658,bird 90659,dog 90660,horse 90661,ship 90662,cat 90663,ship 90664,cat 90665,truck 90666,airplane 90667,bird 90668,deer 90669,deer 90670,horse 90671,ship 90672,truck 90673,airplane 90674,frog 90675,cat 90676,horse 90677,airplane 90678,horse 90679,ship 90680,cat 90681,bird 90682,bird 90683,cat 90684,frog 90685,deer 90686,frog 90687,automobile 90688,ship 90689,truck 90690,deer 90691,cat 90692,dog 90693,deer 90694,truck 90695,bird 90696,dog 90697,frog 90698,automobile 90699,bird 90700,ship 90701,deer 90702,dog 90703,airplane 90704,bird 90705,deer 90706,airplane 90707,automobile 90708,airplane 90709,ship 90710,bird 90711,truck 90712,deer 90713,truck 90714,automobile 90715,frog 90716,airplane 90717,ship 90718,automobile 90719,automobile 90720,frog 90721,ship 90722,cat 90723,horse 90724,deer 90725,truck 90726,cat 90727,dog 90728,automobile 90729,cat 90730,deer 90731,automobile 90732,airplane 90733,horse 90734,automobile 90735,deer 90736,frog 90737,truck 90738,automobile 90739,frog 90740,ship 90741,frog 90742,frog 90743,dog 90744,ship 90745,automobile 90746,automobile 90747,truck 90748,truck 90749,dog 90750,frog 90751,truck 90752,cat 90753,dog 90754,horse 90755,deer 90756,automobile 90757,frog 90758,truck 90759,dog 90760,ship 90761,cat 90762,deer 90763,horse 90764,horse 90765,frog 90766,ship 90767,deer 90768,dog 90769,airplane 90770,deer 90771,frog 90772,deer 90773,truck 90774,horse 90775,frog 90776,frog 90777,cat 90778,ship 90779,truck 90780,deer 90781,dog 90782,dog 90783,frog 90784,dog 90785,bird 90786,ship 90787,dog 90788,frog 90789,cat 90790,dog 90791,cat 90792,deer 90793,dog 90794,deer 90795,frog 90796,automobile 90797,bird 90798,deer 90799,ship 90800,frog 90801,automobile 90802,deer 90803,dog 90804,deer 90805,ship 90806,airplane 90807,automobile 90808,deer 90809,bird 90810,cat 90811,dog 90812,horse 90813,horse 90814,ship 90815,deer 90816,bird 90817,bird 90818,frog 90819,horse 90820,airplane 90821,truck 90822,horse 90823,deer 90824,deer 90825,automobile 90826,cat 90827,frog 90828,cat 90829,dog 90830,truck 90831,automobile 90832,automobile 90833,bird 90834,deer 90835,horse 90836,deer 90837,ship 90838,horse 90839,ship 90840,cat 90841,deer 90842,automobile 90843,deer 90844,airplane 90845,deer 90846,deer 90847,bird 90848,cat 90849,cat 90850,ship 90851,dog 90852,dog 90853,truck 90854,deer 90855,frog 90856,automobile 90857,ship 90858,frog 90859,truck 90860,bird 90861,automobile 90862,automobile 90863,frog 90864,truck 90865,ship 90866,automobile 90867,truck 90868,deer 90869,deer 90870,truck 90871,ship 90872,cat 90873,frog 90874,deer 90875,airplane 90876,dog 90877,airplane 90878,deer 90879,airplane 90880,truck 90881,horse 90882,airplane 90883,horse 90884,deer 90885,frog 90886,cat 90887,deer 90888,truck 90889,frog 90890,deer 90891,airplane 90892,airplane 90893,dog 90894,frog 90895,automobile 90896,deer 90897,cat 90898,bird 90899,deer 90900,dog 90901,truck 90902,truck 90903,horse 90904,horse 90905,dog 90906,ship 90907,ship 90908,truck 90909,bird 90910,deer 90911,frog 90912,automobile 90913,airplane 90914,automobile 90915,frog 90916,cat 90917,horse 90918,cat 90919,deer 90920,ship 90921,frog 90922,dog 90923,cat 90924,deer 90925,truck 90926,dog 90927,bird 90928,deer 90929,ship 90930,ship 90931,ship 90932,truck 90933,cat 90934,deer 90935,deer 90936,horse 90937,horse 90938,ship 90939,deer 90940,deer 90941,truck 90942,bird 90943,horse 90944,ship 90945,cat 90946,ship 90947,cat 90948,frog 90949,truck 90950,ship 90951,cat 90952,ship 90953,truck 90954,bird 90955,frog 90956,dog 90957,horse 90958,bird 90959,deer 90960,deer 90961,airplane 90962,cat 90963,dog 90964,frog 90965,horse 90966,ship 90967,cat 90968,dog 90969,bird 90970,deer 90971,horse 90972,horse 90973,bird 90974,deer 90975,dog 90976,deer 90977,deer 90978,horse 90979,airplane 90980,bird 90981,bird 90982,frog 90983,horse 90984,deer 90985,frog 90986,horse 90987,airplane 90988,cat 90989,cat 90990,deer 90991,ship 90992,dog 90993,ship 90994,deer 90995,bird 90996,bird 90997,ship 90998,frog 90999,truck 91000,bird 91001,frog 91002,dog 91003,ship 91004,truck 91005,cat 91006,bird 91007,cat 91008,automobile 91009,dog 91010,airplane 91011,airplane 91012,horse 91013,cat 91014,ship 91015,dog 91016,frog 91017,horse 91018,deer 91019,deer 91020,deer 91021,bird 91022,airplane 91023,bird 91024,bird 91025,cat 91026,deer 91027,deer 91028,frog 91029,bird 91030,deer 91031,ship 91032,automobile 91033,ship 91034,ship 91035,dog 91036,cat 91037,automobile 91038,deer 91039,airplane 91040,dog 91041,frog 91042,ship 91043,frog 91044,horse 91045,frog 91046,airplane 91047,truck 91048,dog 91049,airplane 91050,ship 91051,truck 91052,airplane 91053,deer 91054,truck 91055,deer 91056,bird 91057,ship 91058,cat 91059,airplane 91060,ship 91061,horse 91062,horse 91063,cat 91064,airplane 91065,frog 91066,deer 91067,deer 91068,bird 91069,frog 91070,truck 91071,cat 91072,dog 91073,horse 91074,deer 91075,cat 91076,bird 91077,automobile 91078,automobile 91079,airplane 91080,ship 91081,horse 91082,airplane 91083,horse 91084,deer 91085,deer 91086,deer 91087,ship 91088,horse 91089,bird 91090,bird 91091,dog 91092,cat 91093,airplane 91094,airplane 91095,bird 91096,automobile 91097,frog 91098,cat 91099,cat 91100,truck 91101,automobile 91102,deer 91103,horse 91104,dog 91105,horse 91106,truck 91107,frog 91108,airplane 91109,airplane 91110,deer 91111,deer 91112,airplane 91113,truck 91114,bird 91115,dog 91116,cat 91117,dog 91118,horse 91119,cat 91120,deer 91121,deer 91122,deer 91123,deer 91124,automobile 91125,horse 91126,truck 91127,cat 91128,automobile 91129,deer 91130,deer 91131,cat 91132,cat 91133,frog 91134,frog 91135,bird 91136,dog 91137,bird 91138,frog 91139,cat 91140,airplane 91141,truck 91142,truck 91143,dog 91144,dog 91145,dog 91146,horse 91147,cat 91148,frog 91149,horse 91150,horse 91151,deer 91152,deer 91153,bird 91154,truck 91155,deer 91156,cat 91157,horse 91158,dog 91159,ship 91160,airplane 91161,truck 91162,frog 91163,ship 91164,airplane 91165,dog 91166,deer 91167,cat 91168,horse 91169,deer 91170,frog 91171,automobile 91172,airplane 91173,frog 91174,deer 91175,horse 91176,deer 91177,truck 91178,dog 91179,horse 91180,deer 91181,dog 91182,frog 91183,truck 91184,dog 91185,truck 91186,horse 91187,ship 91188,deer 91189,airplane 91190,bird 91191,cat 91192,bird 91193,deer 91194,deer 91195,frog 91196,airplane 91197,ship 91198,deer 91199,deer 91200,automobile 91201,dog 91202,automobile 91203,dog 91204,deer 91205,cat 91206,frog 91207,dog 91208,airplane 91209,bird 91210,airplane 91211,automobile 91212,dog 91213,bird 91214,cat 91215,frog 91216,cat 91217,deer 91218,ship 91219,ship 91220,bird 91221,deer 91222,deer 91223,airplane 91224,horse 91225,truck 91226,deer 91227,frog 91228,cat 91229,airplane 91230,airplane 91231,horse 91232,deer 91233,cat 91234,horse 91235,horse 91236,airplane 91237,horse 91238,frog 91239,horse 91240,horse 91241,truck 91242,bird 91243,dog 91244,automobile 91245,cat 91246,bird 91247,airplane 91248,airplane 91249,dog 91250,deer 91251,truck 91252,airplane 91253,truck 91254,frog 91255,automobile 91256,cat 91257,truck 91258,airplane 91259,cat 91260,horse 91261,ship 91262,truck 91263,truck 91264,airplane 91265,truck 91266,airplane 91267,frog 91268,deer 91269,deer 91270,dog 91271,truck 91272,dog 91273,deer 91274,deer 91275,truck 91276,frog 91277,truck 91278,frog 91279,ship 91280,frog 91281,truck 91282,truck 91283,horse 91284,automobile 91285,cat 91286,truck 91287,deer 91288,cat 91289,bird 91290,cat 91291,cat 91292,cat 91293,cat 91294,cat 91295,bird 91296,cat 91297,airplane 91298,deer 91299,dog 91300,bird 91301,truck 91302,horse 91303,deer 91304,frog 91305,horse 91306,frog 91307,horse 91308,deer 91309,airplane 91310,ship 91311,automobile 91312,horse 91313,horse 91314,truck 91315,cat 91316,automobile 91317,horse 91318,truck 91319,cat 91320,truck 91321,ship 91322,cat 91323,automobile 91324,truck 91325,truck 91326,deer 91327,automobile 91328,deer 91329,truck 91330,bird 91331,deer 91332,ship 91333,deer 91334,automobile 91335,dog 91336,automobile 91337,automobile 91338,cat 91339,frog 91340,dog 91341,automobile 91342,truck 91343,automobile 91344,airplane 91345,frog 91346,truck 91347,truck 91348,deer 91349,dog 91350,truck 91351,automobile 91352,cat 91353,horse 91354,ship 91355,horse 91356,deer 91357,cat 91358,horse 91359,frog 91360,automobile 91361,deer 91362,deer 91363,truck 91364,cat 91365,truck 91366,ship 91367,frog 91368,truck 91369,cat 91370,frog 91371,deer 91372,truck 91373,deer 91374,deer 91375,deer 91376,frog 91377,airplane 91378,deer 91379,deer 91380,airplane 91381,horse 91382,frog 91383,deer 91384,ship 91385,bird 91386,deer 91387,horse 91388,frog 91389,ship 91390,automobile 91391,truck 91392,truck 91393,deer 91394,deer 91395,horse 91396,dog 91397,truck 91398,bird 91399,deer 91400,dog 91401,deer 91402,ship 91403,deer 91404,automobile 91405,truck 91406,frog 91407,ship 91408,automobile 91409,airplane 91410,frog 91411,automobile 91412,airplane 91413,automobile 91414,frog 91415,frog 91416,automobile 91417,truck 91418,truck 91419,automobile 91420,ship 91421,bird 91422,frog 91423,truck 91424,truck 91425,deer 91426,frog 91427,bird 91428,horse 91429,frog 91430,cat 91431,deer 91432,truck 91433,cat 91434,automobile 91435,horse 91436,cat 91437,truck 91438,deer 91439,truck 91440,bird 91441,truck 91442,deer 91443,deer 91444,dog 91445,horse 91446,truck 91447,horse 91448,deer 91449,automobile 91450,dog 91451,ship 91452,ship 91453,frog 91454,dog 91455,dog 91456,automobile 91457,deer 91458,ship 91459,truck 91460,automobile 91461,cat 91462,deer 91463,dog 91464,bird 91465,deer 91466,deer 91467,ship 91468,frog 91469,automobile 91470,bird 91471,ship 91472,automobile 91473,truck 91474,cat 91475,automobile 91476,frog 91477,frog 91478,bird 91479,ship 91480,cat 91481,horse 91482,deer 91483,frog 91484,horse 91485,ship 91486,dog 91487,horse 91488,horse 91489,frog 91490,cat 91491,ship 91492,truck 91493,airplane 91494,bird 91495,frog 91496,truck 91497,deer 91498,bird 91499,frog 91500,cat 91501,ship 91502,dog 91503,cat 91504,horse 91505,dog 91506,ship 91507,frog 91508,ship 91509,dog 91510,automobile 91511,ship 91512,truck 91513,deer 91514,bird 91515,cat 91516,bird 91517,truck 91518,cat 91519,frog 91520,truck 91521,airplane 91522,dog 91523,airplane 91524,bird 91525,frog 91526,cat 91527,automobile 91528,airplane 91529,automobile 91530,dog 91531,ship 91532,dog 91533,cat 91534,dog 91535,cat 91536,deer 91537,frog 91538,cat 91539,deer 91540,horse 91541,automobile 91542,dog 91543,ship 91544,deer 91545,deer 91546,bird 91547,horse 91548,cat 91549,horse 91550,dog 91551,bird 91552,frog 91553,truck 91554,truck 91555,airplane 91556,frog 91557,dog 91558,ship 91559,airplane 91560,airplane 91561,deer 91562,bird 91563,ship 91564,deer 91565,airplane 91566,airplane 91567,deer 91568,ship 91569,deer 91570,automobile 91571,frog 91572,deer 91573,airplane 91574,airplane 91575,frog 91576,ship 91577,automobile 91578,dog 91579,truck 91580,automobile 91581,truck 91582,deer 91583,truck 91584,deer 91585,cat 91586,automobile 91587,cat 91588,deer 91589,deer 91590,frog 91591,automobile 91592,bird 91593,ship 91594,dog 91595,cat 91596,bird 91597,ship 91598,deer 91599,bird 91600,cat 91601,bird 91602,bird 91603,horse 91604,automobile 91605,airplane 91606,deer 91607,frog 91608,truck 91609,bird 91610,horse 91611,automobile 91612,cat 91613,ship 91614,deer 91615,airplane 91616,truck 91617,deer 91618,bird 91619,airplane 91620,dog 91621,airplane 91622,dog 91623,truck 91624,horse 91625,dog 91626,airplane 91627,cat 91628,deer 91629,truck 91630,horse 91631,airplane 91632,horse 91633,dog 91634,truck 91635,cat 91636,truck 91637,horse 91638,cat 91639,bird 91640,airplane 91641,deer 91642,dog 91643,cat 91644,cat 91645,truck 91646,ship 91647,truck 91648,deer 91649,truck 91650,dog 91651,horse 91652,horse 91653,deer 91654,deer 91655,truck 91656,airplane 91657,deer 91658,bird 91659,truck 91660,dog 91661,automobile 91662,ship 91663,deer 91664,deer 91665,bird 91666,deer 91667,deer 91668,horse 91669,truck 91670,frog 91671,dog 91672,airplane 91673,automobile 91674,airplane 91675,frog 91676,dog 91677,horse 91678,frog 91679,dog 91680,airplane 91681,frog 91682,deer 91683,automobile 91684,deer 91685,deer 91686,horse 91687,cat 91688,dog 91689,dog 91690,deer 91691,airplane 91692,deer 91693,automobile 91694,dog 91695,ship 91696,cat 91697,automobile 91698,automobile 91699,dog 91700,cat 91701,frog 91702,deer 91703,ship 91704,horse 91705,airplane 91706,cat 91707,cat 91708,deer 91709,cat 91710,airplane 91711,airplane 91712,airplane 91713,horse 91714,deer 91715,dog 91716,deer 91717,cat 91718,truck 91719,truck 91720,bird 91721,cat 91722,truck 91723,horse 91724,bird 91725,dog 91726,horse 91727,truck 91728,automobile 91729,airplane 91730,deer 91731,ship 91732,dog 91733,cat 91734,cat 91735,bird 91736,automobile 91737,ship 91738,ship 91739,bird 91740,bird 91741,airplane 91742,ship 91743,ship 91744,cat 91745,cat 91746,frog 91747,deer 91748,frog 91749,deer 91750,dog 91751,airplane 91752,bird 91753,cat 91754,dog 91755,deer 91756,truck 91757,frog 91758,dog 91759,frog 91760,automobile 91761,truck 91762,bird 91763,airplane 91764,automobile 91765,ship 91766,bird 91767,deer 91768,automobile 91769,bird 91770,airplane 91771,frog 91772,bird 91773,airplane 91774,automobile 91775,truck 91776,truck 91777,truck 91778,ship 91779,frog 91780,frog 91781,bird 91782,cat 91783,deer 91784,automobile 91785,frog 91786,deer 91787,ship 91788,truck 91789,truck 91790,horse 91791,ship 91792,automobile 91793,horse 91794,deer 91795,frog 91796,airplane 91797,frog 91798,truck 91799,deer 91800,horse 91801,dog 91802,dog 91803,truck 91804,frog 91805,airplane 91806,deer 91807,truck 91808,frog 91809,ship 91810,cat 91811,horse 91812,frog 91813,bird 91814,frog 91815,deer 91816,automobile 91817,cat 91818,ship 91819,truck 91820,bird 91821,automobile 91822,deer 91823,cat 91824,deer 91825,cat 91826,frog 91827,deer 91828,deer 91829,frog 91830,deer 91831,automobile 91832,airplane 91833,dog 91834,dog 91835,horse 91836,truck 91837,horse 91838,bird 91839,dog 91840,bird 91841,truck 91842,ship 91843,horse 91844,ship 91845,cat 91846,cat 91847,truck 91848,truck 91849,ship 91850,truck 91851,dog 91852,truck 91853,airplane 91854,horse 91855,deer 91856,horse 91857,frog 91858,frog 91859,deer 91860,cat 91861,cat 91862,ship 91863,truck 91864,ship 91865,truck 91866,cat 91867,truck 91868,horse 91869,cat 91870,automobile 91871,cat 91872,cat 91873,horse 91874,bird 91875,bird 91876,horse 91877,cat 91878,dog 91879,dog 91880,deer 91881,ship 91882,airplane 91883,ship 91884,automobile 91885,horse 91886,cat 91887,frog 91888,airplane 91889,cat 91890,frog 91891,bird 91892,ship 91893,airplane 91894,automobile 91895,airplane 91896,horse 91897,bird 91898,truck 91899,cat 91900,deer 91901,cat 91902,frog 91903,horse 91904,bird 91905,dog 91906,automobile 91907,cat 91908,deer 91909,bird 91910,airplane 91911,deer 91912,deer 91913,deer 91914,airplane 91915,cat 91916,bird 91917,bird 91918,cat 91919,ship 91920,airplane 91921,truck 91922,automobile 91923,deer 91924,automobile 91925,horse 91926,truck 91927,frog 91928,bird 91929,deer 91930,deer 91931,horse 91932,deer 91933,ship 91934,deer 91935,airplane 91936,dog 91937,cat 91938,bird 91939,cat 91940,frog 91941,truck 91942,dog 91943,automobile 91944,deer 91945,deer 91946,ship 91947,deer 91948,airplane 91949,bird 91950,frog 91951,horse 91952,dog 91953,airplane 91954,frog 91955,horse 91956,deer 91957,cat 91958,dog 91959,cat 91960,horse 91961,ship 91962,bird 91963,airplane 91964,truck 91965,deer 91966,deer 91967,deer 91968,frog 91969,frog 91970,frog 91971,deer 91972,ship 91973,deer 91974,cat 91975,truck 91976,deer 91977,dog 91978,cat 91979,cat 91980,dog 91981,frog 91982,horse 91983,dog 91984,dog 91985,truck 91986,ship 91987,horse 91988,bird 91989,cat 91990,deer 91991,airplane 91992,horse 91993,airplane 91994,frog 91995,frog 91996,airplane 91997,bird 91998,airplane 91999,ship 92000,bird 92001,frog 92002,frog 92003,automobile 92004,frog 92005,cat 92006,dog 92007,cat 92008,dog 92009,automobile 92010,frog 92011,frog 92012,cat 92013,horse 92014,cat 92015,ship 92016,truck 92017,bird 92018,deer 92019,airplane 92020,cat 92021,horse 92022,cat 92023,cat 92024,truck 92025,horse 92026,truck 92027,deer 92028,automobile 92029,ship 92030,horse 92031,dog 92032,dog 92033,cat 92034,ship 92035,bird 92036,dog 92037,frog 92038,frog 92039,deer 92040,dog 92041,horse 92042,ship 92043,ship 92044,cat 92045,truck 92046,airplane 92047,deer 92048,deer 92049,dog 92050,bird 92051,bird 92052,deer 92053,automobile 92054,airplane 92055,cat 92056,truck 92057,cat 92058,frog 92059,cat 92060,dog 92061,dog 92062,airplane 92063,truck 92064,deer 92065,deer 92066,cat 92067,bird 92068,ship 92069,bird 92070,cat 92071,deer 92072,airplane 92073,cat 92074,deer 92075,frog 92076,bird 92077,truck 92078,frog 92079,dog 92080,deer 92081,frog 92082,frog 92083,cat 92084,bird 92085,horse 92086,deer 92087,horse 92088,airplane 92089,ship 92090,cat 92091,frog 92092,truck 92093,dog 92094,airplane 92095,deer 92096,deer 92097,dog 92098,airplane 92099,cat 92100,automobile 92101,ship 92102,deer 92103,bird 92104,dog 92105,ship 92106,cat 92107,horse 92108,automobile 92109,deer 92110,airplane 92111,cat 92112,frog 92113,bird 92114,bird 92115,frog 92116,airplane 92117,automobile 92118,horse 92119,frog 92120,ship 92121,horse 92122,dog 92123,deer 92124,deer 92125,deer 92126,automobile 92127,frog 92128,airplane 92129,horse 92130,ship 92131,cat 92132,cat 92133,cat 92134,truck 92135,deer 92136,deer 92137,deer 92138,cat 92139,cat 92140,cat 92141,truck 92142,ship 92143,horse 92144,bird 92145,airplane 92146,truck 92147,horse 92148,horse 92149,airplane 92150,cat 92151,dog 92152,ship 92153,deer 92154,dog 92155,bird 92156,deer 92157,frog 92158,dog 92159,horse 92160,frog 92161,deer 92162,ship 92163,bird 92164,bird 92165,ship 92166,ship 92167,dog 92168,airplane 92169,airplane 92170,deer 92171,frog 92172,automobile 92173,deer 92174,cat 92175,deer 92176,frog 92177,automobile 92178,deer 92179,deer 92180,dog 92181,frog 92182,deer 92183,cat 92184,horse 92185,ship 92186,deer 92187,deer 92188,deer 92189,dog 92190,dog 92191,automobile 92192,dog 92193,dog 92194,frog 92195,frog 92196,cat 92197,truck 92198,deer 92199,airplane 92200,deer 92201,dog 92202,dog 92203,truck 92204,frog 92205,cat 92206,deer 92207,automobile 92208,automobile 92209,cat 92210,airplane 92211,deer 92212,frog 92213,deer 92214,deer 92215,horse 92216,frog 92217,deer 92218,bird 92219,automobile 92220,airplane 92221,dog 92222,cat 92223,cat 92224,bird 92225,bird 92226,frog 92227,ship 92228,deer 92229,horse 92230,dog 92231,ship 92232,deer 92233,frog 92234,ship 92235,deer 92236,cat 92237,cat 92238,dog 92239,dog 92240,frog 92241,cat 92242,ship 92243,dog 92244,cat 92245,horse 92246,cat 92247,automobile 92248,dog 92249,frog 92250,frog 92251,ship 92252,automobile 92253,airplane 92254,cat 92255,horse 92256,airplane 92257,frog 92258,ship 92259,deer 92260,bird 92261,bird 92262,deer 92263,airplane 92264,automobile 92265,ship 92266,automobile 92267,dog 92268,automobile 92269,frog 92270,airplane 92271,dog 92272,bird 92273,horse 92274,deer 92275,dog 92276,bird 92277,truck 92278,airplane 92279,frog 92280,bird 92281,dog 92282,cat 92283,airplane 92284,cat 92285,frog 92286,frog 92287,cat 92288,cat 92289,automobile 92290,frog 92291,truck 92292,deer 92293,frog 92294,deer 92295,ship 92296,cat 92297,horse 92298,airplane 92299,ship 92300,frog 92301,horse 92302,cat 92303,horse 92304,frog 92305,frog 92306,horse 92307,frog 92308,airplane 92309,airplane 92310,cat 92311,ship 92312,airplane 92313,bird 92314,bird 92315,bird 92316,automobile 92317,deer 92318,frog 92319,bird 92320,automobile 92321,cat 92322,airplane 92323,dog 92324,horse 92325,horse 92326,deer 92327,frog 92328,cat 92329,dog 92330,horse 92331,deer 92332,airplane 92333,frog 92334,cat 92335,dog 92336,frog 92337,dog 92338,truck 92339,dog 92340,deer 92341,cat 92342,cat 92343,frog 92344,horse 92345,frog 92346,dog 92347,automobile 92348,frog 92349,airplane 92350,dog 92351,horse 92352,deer 92353,ship 92354,automobile 92355,frog 92356,dog 92357,bird 92358,cat 92359,horse 92360,truck 92361,cat 92362,automobile 92363,cat 92364,automobile 92365,deer 92366,truck 92367,deer 92368,cat 92369,dog 92370,dog 92371,horse 92372,cat 92373,airplane 92374,ship 92375,truck 92376,truck 92377,bird 92378,automobile 92379,deer 92380,truck 92381,deer 92382,truck 92383,cat 92384,dog 92385,frog 92386,airplane 92387,cat 92388,airplane 92389,horse 92390,cat 92391,ship 92392,horse 92393,frog 92394,automobile 92395,dog 92396,automobile 92397,horse 92398,ship 92399,cat 92400,automobile 92401,frog 92402,truck 92403,ship 92404,deer 92405,ship 92406,frog 92407,bird 92408,horse 92409,dog 92410,deer 92411,frog 92412,frog 92413,truck 92414,automobile 92415,truck 92416,deer 92417,automobile 92418,frog 92419,bird 92420,airplane 92421,horse 92422,airplane 92423,deer 92424,automobile 92425,ship 92426,frog 92427,airplane 92428,ship 92429,bird 92430,horse 92431,frog 92432,deer 92433,cat 92434,automobile 92435,horse 92436,bird 92437,bird 92438,truck 92439,deer 92440,airplane 92441,truck 92442,ship 92443,deer 92444,ship 92445,deer 92446,deer 92447,dog 92448,cat 92449,ship 92450,airplane 92451,deer 92452,automobile 92453,cat 92454,horse 92455,horse 92456,truck 92457,ship 92458,bird 92459,horse 92460,truck 92461,deer 92462,horse 92463,frog 92464,automobile 92465,cat 92466,truck 92467,frog 92468,deer 92469,bird 92470,cat 92471,airplane 92472,automobile 92473,cat 92474,dog 92475,dog 92476,horse 92477,automobile 92478,dog 92479,cat 92480,cat 92481,automobile 92482,airplane 92483,horse 92484,automobile 92485,automobile 92486,cat 92487,cat 92488,frog 92489,automobile 92490,ship 92491,airplane 92492,airplane 92493,truck 92494,cat 92495,bird 92496,frog 92497,bird 92498,automobile 92499,truck 92500,dog 92501,cat 92502,ship 92503,frog 92504,horse 92505,frog 92506,deer 92507,dog 92508,deer 92509,truck 92510,deer 92511,automobile 92512,cat 92513,truck 92514,bird 92515,bird 92516,horse 92517,frog 92518,cat 92519,deer 92520,horse 92521,truck 92522,automobile 92523,deer 92524,horse 92525,dog 92526,bird 92527,automobile 92528,cat 92529,frog 92530,dog 92531,ship 92532,ship 92533,truck 92534,frog 92535,horse 92536,automobile 92537,ship 92538,frog 92539,cat 92540,dog 92541,truck 92542,cat 92543,frog 92544,frog 92545,horse 92546,bird 92547,deer 92548,cat 92549,bird 92550,automobile 92551,airplane 92552,cat 92553,horse 92554,deer 92555,cat 92556,truck 92557,frog 92558,frog 92559,automobile 92560,truck 92561,deer 92562,frog 92563,ship 92564,cat 92565,cat 92566,truck 92567,ship 92568,ship 92569,airplane 92570,airplane 92571,frog 92572,bird 92573,cat 92574,ship 92575,dog 92576,dog 92577,deer 92578,airplane 92579,dog 92580,cat 92581,airplane 92582,horse 92583,truck 92584,horse 92585,horse 92586,cat 92587,frog 92588,automobile 92589,deer 92590,bird 92591,cat 92592,automobile 92593,frog 92594,horse 92595,truck 92596,ship 92597,airplane 92598,bird 92599,airplane 92600,airplane 92601,truck 92602,frog 92603,cat 92604,ship 92605,bird 92606,frog 92607,deer 92608,truck 92609,dog 92610,horse 92611,horse 92612,dog 92613,dog 92614,dog 92615,deer 92616,automobile 92617,horse 92618,airplane 92619,frog 92620,cat 92621,frog 92622,cat 92623,airplane 92624,automobile 92625,airplane 92626,deer 92627,cat 92628,frog 92629,dog 92630,automobile 92631,horse 92632,deer 92633,automobile 92634,horse 92635,ship 92636,ship 92637,frog 92638,airplane 92639,airplane 92640,frog 92641,airplane 92642,deer 92643,horse 92644,airplane 92645,deer 92646,automobile 92647,frog 92648,automobile 92649,dog 92650,dog 92651,deer 92652,airplane 92653,deer 92654,truck 92655,frog 92656,frog 92657,bird 92658,frog 92659,ship 92660,cat 92661,cat 92662,airplane 92663,cat 92664,bird 92665,cat 92666,deer 92667,cat 92668,cat 92669,ship 92670,cat 92671,truck 92672,airplane 92673,airplane 92674,deer 92675,deer 92676,cat 92677,airplane 92678,truck 92679,ship 92680,horse 92681,frog 92682,deer 92683,bird 92684,automobile 92685,dog 92686,frog 92687,ship 92688,ship 92689,dog 92690,ship 92691,deer 92692,dog 92693,cat 92694,truck 92695,truck 92696,airplane 92697,horse 92698,cat 92699,automobile 92700,truck 92701,truck 92702,frog 92703,deer 92704,frog 92705,cat 92706,airplane 92707,dog 92708,deer 92709,frog 92710,cat 92711,airplane 92712,frog 92713,cat 92714,bird 92715,frog 92716,frog 92717,airplane 92718,truck 92719,ship 92720,horse 92721,ship 92722,frog 92723,airplane 92724,airplane 92725,deer 92726,airplane 92727,dog 92728,cat 92729,truck 92730,automobile 92731,ship 92732,horse 92733,cat 92734,deer 92735,dog 92736,bird 92737,cat 92738,bird 92739,automobile 92740,automobile 92741,ship 92742,horse 92743,airplane 92744,ship 92745,horse 92746,cat 92747,airplane 92748,ship 92749,frog 92750,automobile 92751,airplane 92752,deer 92753,airplane 92754,cat 92755,dog 92756,deer 92757,frog 92758,airplane 92759,ship 92760,ship 92761,frog 92762,horse 92763,cat 92764,bird 92765,dog 92766,truck 92767,truck 92768,horse 92769,cat 92770,truck 92771,bird 92772,ship 92773,dog 92774,ship 92775,frog 92776,deer 92777,deer 92778,airplane 92779,truck 92780,ship 92781,frog 92782,frog 92783,frog 92784,automobile 92785,frog 92786,bird 92787,deer 92788,cat 92789,bird 92790,airplane 92791,dog 92792,frog 92793,truck 92794,frog 92795,ship 92796,airplane 92797,truck 92798,ship 92799,cat 92800,truck 92801,frog 92802,truck 92803,bird 92804,truck 92805,cat 92806,dog 92807,truck 92808,deer 92809,bird 92810,dog 92811,horse 92812,truck 92813,frog 92814,horse 92815,automobile 92816,airplane 92817,bird 92818,cat 92819,airplane 92820,dog 92821,deer 92822,dog 92823,horse 92824,horse 92825,dog 92826,dog 92827,bird 92828,automobile 92829,deer 92830,horse 92831,bird 92832,horse 92833,frog 92834,truck 92835,automobile 92836,bird 92837,dog 92838,horse 92839,ship 92840,cat 92841,deer 92842,horse 92843,dog 92844,deer 92845,dog 92846,deer 92847,dog 92848,ship 92849,airplane 92850,frog 92851,cat 92852,ship 92853,automobile 92854,ship 92855,automobile 92856,dog 92857,truck 92858,airplane 92859,horse 92860,dog 92861,dog 92862,airplane 92863,ship 92864,deer 92865,frog 92866,dog 92867,cat 92868,automobile 92869,airplane 92870,deer 92871,truck 92872,cat 92873,truck 92874,horse 92875,dog 92876,frog 92877,truck 92878,airplane 92879,ship 92880,horse 92881,cat 92882,frog 92883,bird 92884,bird 92885,truck 92886,ship 92887,truck 92888,horse 92889,cat 92890,frog 92891,airplane 92892,cat 92893,dog 92894,automobile 92895,airplane 92896,deer 92897,bird 92898,deer 92899,dog 92900,dog 92901,deer 92902,dog 92903,dog 92904,truck 92905,bird 92906,cat 92907,airplane 92908,truck 92909,dog 92910,cat 92911,cat 92912,truck 92913,deer 92914,automobile 92915,truck 92916,deer 92917,deer 92918,cat 92919,cat 92920,ship 92921,truck 92922,deer 92923,airplane 92924,dog 92925,deer 92926,dog 92927,airplane 92928,automobile 92929,deer 92930,airplane 92931,deer 92932,dog 92933,airplane 92934,frog 92935,horse 92936,dog 92937,bird 92938,dog 92939,frog 92940,cat 92941,bird 92942,deer 92943,cat 92944,cat 92945,frog 92946,automobile 92947,cat 92948,automobile 92949,cat 92950,ship 92951,dog 92952,bird 92953,deer 92954,airplane 92955,bird 92956,ship 92957,frog 92958,horse 92959,cat 92960,dog 92961,dog 92962,airplane 92963,cat 92964,bird 92965,ship 92966,ship 92967,truck 92968,horse 92969,frog 92970,frog 92971,cat 92972,horse 92973,bird 92974,horse 92975,horse 92976,bird 92977,frog 92978,dog 92979,truck 92980,deer 92981,ship 92982,cat 92983,frog 92984,bird 92985,automobile 92986,dog 92987,bird 92988,horse 92989,horse 92990,truck 92991,automobile 92992,cat 92993,cat 92994,frog 92995,automobile 92996,automobile 92997,truck 92998,cat 92999,airplane 93000,cat 93001,horse 93002,cat 93003,dog 93004,dog 93005,automobile 93006,deer 93007,automobile 93008,cat 93009,automobile 93010,frog 93011,truck 93012,deer 93013,automobile 93014,horse 93015,airplane 93016,truck 93017,truck 93018,cat 93019,frog 93020,bird 93021,ship 93022,deer 93023,airplane 93024,deer 93025,horse 93026,frog 93027,cat 93028,bird 93029,bird 93030,horse 93031,cat 93032,truck 93033,deer 93034,cat 93035,dog 93036,cat 93037,cat 93038,frog 93039,dog 93040,cat 93041,cat 93042,cat 93043,horse 93044,dog 93045,deer 93046,truck 93047,cat 93048,dog 93049,frog 93050,ship 93051,horse 93052,bird 93053,deer 93054,cat 93055,dog 93056,ship 93057,dog 93058,deer 93059,cat 93060,ship 93061,ship 93062,frog 93063,horse 93064,airplane 93065,ship 93066,airplane 93067,horse 93068,deer 93069,deer 93070,cat 93071,airplane 93072,deer 93073,bird 93074,deer 93075,deer 93076,horse 93077,airplane 93078,horse 93079,horse 93080,bird 93081,ship 93082,automobile 93083,automobile 93084,airplane 93085,ship 93086,ship 93087,automobile 93088,automobile 93089,horse 93090,automobile 93091,dog 93092,cat 93093,bird 93094,cat 93095,frog 93096,horse 93097,dog 93098,cat 93099,truck 93100,airplane 93101,truck 93102,cat 93103,truck 93104,deer 93105,airplane 93106,frog 93107,automobile 93108,bird 93109,truck 93110,airplane 93111,ship 93112,truck 93113,cat 93114,cat 93115,dog 93116,deer 93117,horse 93118,bird 93119,automobile 93120,frog 93121,ship 93122,deer 93123,truck 93124,deer 93125,truck 93126,airplane 93127,frog 93128,bird 93129,cat 93130,dog 93131,frog 93132,cat 93133,truck 93134,cat 93135,deer 93136,frog 93137,deer 93138,horse 93139,airplane 93140,truck 93141,airplane 93142,airplane 93143,airplane 93144,cat 93145,ship 93146,automobile 93147,truck 93148,automobile 93149,ship 93150,dog 93151,cat 93152,ship 93153,frog 93154,truck 93155,truck 93156,airplane 93157,dog 93158,dog 93159,automobile 93160,dog 93161,airplane 93162,ship 93163,dog 93164,deer 93165,bird 93166,cat 93167,cat 93168,bird 93169,cat 93170,dog 93171,bird 93172,airplane 93173,cat 93174,bird 93175,cat 93176,truck 93177,ship 93178,cat 93179,cat 93180,horse 93181,bird 93182,automobile 93183,cat 93184,frog 93185,cat 93186,frog 93187,airplane 93188,cat 93189,airplane 93190,ship 93191,horse 93192,cat 93193,deer 93194,bird 93195,horse 93196,cat 93197,cat 93198,airplane 93199,airplane 93200,truck 93201,dog 93202,bird 93203,cat 93204,truck 93205,dog 93206,deer 93207,truck 93208,deer 93209,deer 93210,dog 93211,airplane 93212,cat 93213,horse 93214,automobile 93215,deer 93216,cat 93217,bird 93218,airplane 93219,horse 93220,truck 93221,dog 93222,dog 93223,deer 93224,deer 93225,dog 93226,ship 93227,cat 93228,cat 93229,cat 93230,dog 93231,airplane 93232,deer 93233,cat 93234,dog 93235,ship 93236,dog 93237,dog 93238,automobile 93239,dog 93240,cat 93241,frog 93242,cat 93243,horse 93244,truck 93245,automobile 93246,automobile 93247,cat 93248,bird 93249,ship 93250,automobile 93251,horse 93252,frog 93253,bird 93254,deer 93255,truck 93256,horse 93257,deer 93258,horse 93259,dog 93260,frog 93261,airplane 93262,deer 93263,automobile 93264,bird 93265,automobile 93266,ship 93267,frog 93268,deer 93269,horse 93270,horse 93271,deer 93272,cat 93273,horse 93274,ship 93275,dog 93276,deer 93277,horse 93278,frog 93279,ship 93280,automobile 93281,truck 93282,airplane 93283,cat 93284,ship 93285,cat 93286,deer 93287,automobile 93288,ship 93289,truck 93290,ship 93291,airplane 93292,frog 93293,dog 93294,airplane 93295,truck 93296,automobile 93297,truck 93298,deer 93299,airplane 93300,frog 93301,deer 93302,truck 93303,airplane 93304,horse 93305,deer 93306,airplane 93307,deer 93308,deer 93309,deer 93310,dog 93311,dog 93312,bird 93313,truck 93314,bird 93315,horse 93316,cat 93317,cat 93318,bird 93319,dog 93320,frog 93321,horse 93322,cat 93323,deer 93324,truck 93325,deer 93326,cat 93327,horse 93328,horse 93329,ship 93330,truck 93331,frog 93332,automobile 93333,frog 93334,cat 93335,ship 93336,truck 93337,horse 93338,bird 93339,automobile 93340,deer 93341,airplane 93342,cat 93343,automobile 93344,horse 93345,ship 93346,automobile 93347,deer 93348,frog 93349,automobile 93350,dog 93351,cat 93352,ship 93353,cat 93354,ship 93355,horse 93356,dog 93357,truck 93358,bird 93359,truck 93360,bird 93361,frog 93362,truck 93363,dog 93364,truck 93365,dog 93366,ship 93367,airplane 93368,airplane 93369,airplane 93370,cat 93371,frog 93372,horse 93373,truck 93374,bird 93375,dog 93376,frog 93377,truck 93378,horse 93379,truck 93380,dog 93381,truck 93382,truck 93383,dog 93384,ship 93385,ship 93386,airplane 93387,dog 93388,airplane 93389,frog 93390,airplane 93391,horse 93392,deer 93393,bird 93394,automobile 93395,ship 93396,airplane 93397,deer 93398,cat 93399,truck 93400,deer 93401,deer 93402,truck 93403,bird 93404,deer 93405,automobile 93406,deer 93407,deer 93408,frog 93409,deer 93410,frog 93411,ship 93412,airplane 93413,automobile 93414,ship 93415,deer 93416,cat 93417,cat 93418,ship 93419,airplane 93420,dog 93421,truck 93422,ship 93423,ship 93424,automobile 93425,horse 93426,cat 93427,bird 93428,horse 93429,cat 93430,deer 93431,cat 93432,deer 93433,horse 93434,automobile 93435,truck 93436,cat 93437,automobile 93438,horse 93439,dog 93440,airplane 93441,frog 93442,airplane 93443,deer 93444,deer 93445,bird 93446,cat 93447,airplane 93448,truck 93449,dog 93450,ship 93451,dog 93452,frog 93453,horse 93454,cat 93455,deer 93456,ship 93457,bird 93458,cat 93459,cat 93460,deer 93461,frog 93462,cat 93463,airplane 93464,automobile 93465,deer 93466,ship 93467,cat 93468,deer 93469,dog 93470,airplane 93471,truck 93472,dog 93473,airplane 93474,automobile 93475,cat 93476,horse 93477,horse 93478,horse 93479,deer 93480,frog 93481,deer 93482,cat 93483,cat 93484,bird 93485,cat 93486,horse 93487,ship 93488,cat 93489,truck 93490,cat 93491,horse 93492,dog 93493,frog 93494,truck 93495,cat 93496,airplane 93497,frog 93498,cat 93499,airplane 93500,bird 93501,horse 93502,automobile 93503,automobile 93504,deer 93505,cat 93506,cat 93507,truck 93508,horse 93509,truck 93510,dog 93511,horse 93512,airplane 93513,frog 93514,deer 93515,bird 93516,bird 93517,frog 93518,truck 93519,bird 93520,truck 93521,dog 93522,airplane 93523,bird 93524,bird 93525,deer 93526,horse 93527,automobile 93528,automobile 93529,frog 93530,deer 93531,horse 93532,bird 93533,dog 93534,bird 93535,bird 93536,bird 93537,ship 93538,airplane 93539,ship 93540,automobile 93541,deer 93542,automobile 93543,dog 93544,automobile 93545,airplane 93546,frog 93547,truck 93548,truck 93549,frog 93550,truck 93551,truck 93552,frog 93553,cat 93554,automobile 93555,deer 93556,cat 93557,airplane 93558,truck 93559,ship 93560,deer 93561,airplane 93562,horse 93563,automobile 93564,horse 93565,ship 93566,ship 93567,horse 93568,airplane 93569,dog 93570,frog 93571,ship 93572,deer 93573,deer 93574,horse 93575,airplane 93576,cat 93577,deer 93578,horse 93579,bird 93580,frog 93581,horse 93582,horse 93583,frog 93584,frog 93585,deer 93586,bird 93587,truck 93588,cat 93589,cat 93590,truck 93591,dog 93592,cat 93593,bird 93594,truck 93595,frog 93596,frog 93597,truck 93598,horse 93599,deer 93600,frog 93601,bird 93602,ship 93603,cat 93604,dog 93605,truck 93606,truck 93607,airplane 93608,dog 93609,dog 93610,automobile 93611,bird 93612,frog 93613,truck 93614,airplane 93615,truck 93616,cat 93617,airplane 93618,horse 93619,deer 93620,ship 93621,frog 93622,deer 93623,dog 93624,ship 93625,airplane 93626,bird 93627,deer 93628,cat 93629,bird 93630,frog 93631,airplane 93632,deer 93633,frog 93634,cat 93635,automobile 93636,automobile 93637,ship 93638,dog 93639,bird 93640,truck 93641,horse 93642,deer 93643,deer 93644,deer 93645,bird 93646,cat 93647,cat 93648,automobile 93649,ship 93650,frog 93651,dog 93652,dog 93653,dog 93654,cat 93655,horse 93656,truck 93657,cat 93658,horse 93659,dog 93660,horse 93661,dog 93662,airplane 93663,cat 93664,cat 93665,horse 93666,dog 93667,deer 93668,cat 93669,automobile 93670,deer 93671,cat 93672,frog 93673,ship 93674,automobile 93675,automobile 93676,airplane 93677,horse 93678,ship 93679,cat 93680,cat 93681,bird 93682,frog 93683,bird 93684,cat 93685,ship 93686,ship 93687,automobile 93688,frog 93689,frog 93690,truck 93691,ship 93692,truck 93693,cat 93694,deer 93695,ship 93696,deer 93697,dog 93698,horse 93699,cat 93700,deer 93701,frog 93702,cat 93703,bird 93704,horse 93705,dog 93706,horse 93707,airplane 93708,frog 93709,frog 93710,cat 93711,airplane 93712,deer 93713,automobile 93714,deer 93715,horse 93716,automobile 93717,frog 93718,dog 93719,horse 93720,frog 93721,deer 93722,ship 93723,dog 93724,frog 93725,airplane 93726,frog 93727,horse 93728,frog 93729,truck 93730,dog 93731,cat 93732,dog 93733,bird 93734,automobile 93735,ship 93736,cat 93737,ship 93738,automobile 93739,deer 93740,horse 93741,frog 93742,cat 93743,bird 93744,truck 93745,deer 93746,cat 93747,automobile 93748,deer 93749,airplane 93750,automobile 93751,deer 93752,airplane 93753,deer 93754,automobile 93755,truck 93756,dog 93757,bird 93758,deer 93759,airplane 93760,frog 93761,cat 93762,ship 93763,ship 93764,deer 93765,horse 93766,automobile 93767,truck 93768,horse 93769,cat 93770,horse 93771,airplane 93772,horse 93773,ship 93774,deer 93775,deer 93776,deer 93777,cat 93778,cat 93779,dog 93780,ship 93781,truck 93782,frog 93783,frog 93784,airplane 93785,frog 93786,bird 93787,automobile 93788,horse 93789,frog 93790,automobile 93791,ship 93792,truck 93793,automobile 93794,cat 93795,frog 93796,automobile 93797,truck 93798,truck 93799,cat 93800,frog 93801,truck 93802,airplane 93803,cat 93804,deer 93805,automobile 93806,frog 93807,cat 93808,airplane 93809,horse 93810,truck 93811,dog 93812,horse 93813,truck 93814,airplane 93815,automobile 93816,automobile 93817,airplane 93818,dog 93819,deer 93820,ship 93821,bird 93822,cat 93823,frog 93824,frog 93825,truck 93826,horse 93827,ship 93828,automobile 93829,truck 93830,truck 93831,cat 93832,bird 93833,ship 93834,horse 93835,ship 93836,truck 93837,cat 93838,frog 93839,automobile 93840,horse 93841,deer 93842,frog 93843,airplane 93844,automobile 93845,ship 93846,automobile 93847,truck 93848,dog 93849,deer 93850,dog 93851,deer 93852,frog 93853,truck 93854,bird 93855,cat 93856,airplane 93857,ship 93858,ship 93859,ship 93860,ship 93861,ship 93862,ship 93863,cat 93864,truck 93865,frog 93866,automobile 93867,bird 93868,bird 93869,truck 93870,deer 93871,deer 93872,frog 93873,dog 93874,truck 93875,truck 93876,bird 93877,deer 93878,frog 93879,cat 93880,ship 93881,deer 93882,automobile 93883,truck 93884,truck 93885,deer 93886,cat 93887,cat 93888,airplane 93889,cat 93890,deer 93891,automobile 93892,ship 93893,horse 93894,dog 93895,automobile 93896,frog 93897,truck 93898,deer 93899,bird 93900,frog 93901,horse 93902,cat 93903,horse 93904,automobile 93905,deer 93906,horse 93907,dog 93908,ship 93909,automobile 93910,bird 93911,frog 93912,airplane 93913,dog 93914,bird 93915,airplane 93916,deer 93917,ship 93918,bird 93919,bird 93920,dog 93921,bird 93922,frog 93923,cat 93924,deer 93925,ship 93926,deer 93927,cat 93928,deer 93929,truck 93930,ship 93931,automobile 93932,horse 93933,deer 93934,frog 93935,horse 93936,horse 93937,bird 93938,truck 93939,horse 93940,deer 93941,automobile 93942,automobile 93943,ship 93944,frog 93945,dog 93946,airplane 93947,airplane 93948,truck 93949,bird 93950,truck 93951,frog 93952,ship 93953,dog 93954,frog 93955,deer 93956,deer 93957,frog 93958,automobile 93959,frog 93960,automobile 93961,bird 93962,frog 93963,automobile 93964,deer 93965,cat 93966,bird 93967,airplane 93968,deer 93969,horse 93970,ship 93971,deer 93972,airplane 93973,automobile 93974,cat 93975,airplane 93976,airplane 93977,deer 93978,frog 93979,truck 93980,cat 93981,horse 93982,cat 93983,horse 93984,horse 93985,cat 93986,deer 93987,bird 93988,dog 93989,cat 93990,bird 93991,automobile 93992,truck 93993,ship 93994,deer 93995,frog 93996,deer 93997,truck 93998,airplane 93999,ship 94000,cat 94001,dog 94002,cat 94003,cat 94004,frog 94005,truck 94006,deer 94007,airplane 94008,frog 94009,frog 94010,dog 94011,bird 94012,ship 94013,frog 94014,bird 94015,deer 94016,bird 94017,cat 94018,frog 94019,cat 94020,cat 94021,dog 94022,ship 94023,dog 94024,cat 94025,airplane 94026,frog 94027,truck 94028,truck 94029,ship 94030,cat 94031,deer 94032,dog 94033,automobile 94034,frog 94035,automobile 94036,dog 94037,deer 94038,frog 94039,automobile 94040,automobile 94041,horse 94042,horse 94043,truck 94044,dog 94045,cat 94046,cat 94047,cat 94048,automobile 94049,airplane 94050,automobile 94051,airplane 94052,dog 94053,ship 94054,truck 94055,bird 94056,cat 94057,frog 94058,airplane 94059,truck 94060,airplane 94061,truck 94062,truck 94063,ship 94064,cat 94065,truck 94066,bird 94067,airplane 94068,frog 94069,airplane 94070,frog 94071,deer 94072,dog 94073,horse 94074,automobile 94075,automobile 94076,horse 94077,cat 94078,truck 94079,deer 94080,deer 94081,bird 94082,automobile 94083,bird 94084,cat 94085,airplane 94086,airplane 94087,airplane 94088,airplane 94089,dog 94090,frog 94091,airplane 94092,airplane 94093,cat 94094,automobile 94095,cat 94096,airplane 94097,cat 94098,horse 94099,bird 94100,cat 94101,deer 94102,ship 94103,automobile 94104,automobile 94105,deer 94106,frog 94107,bird 94108,cat 94109,ship 94110,horse 94111,deer 94112,automobile 94113,cat 94114,truck 94115,deer 94116,deer 94117,truck 94118,horse 94119,automobile 94120,deer 94121,horse 94122,cat 94123,cat 94124,cat 94125,frog 94126,horse 94127,truck 94128,automobile 94129,frog 94130,truck 94131,frog 94132,deer 94133,truck 94134,deer 94135,bird 94136,dog 94137,truck 94138,frog 94139,deer 94140,deer 94141,airplane 94142,bird 94143,frog 94144,deer 94145,horse 94146,airplane 94147,ship 94148,frog 94149,dog 94150,cat 94151,deer 94152,ship 94153,airplane 94154,ship 94155,truck 94156,cat 94157,frog 94158,horse 94159,deer 94160,deer 94161,dog 94162,deer 94163,horse 94164,frog 94165,deer 94166,frog 94167,cat 94168,airplane 94169,airplane 94170,cat 94171,horse 94172,bird 94173,horse 94174,deer 94175,dog 94176,horse 94177,cat 94178,deer 94179,truck 94180,bird 94181,automobile 94182,bird 94183,truck 94184,bird 94185,cat 94186,bird 94187,cat 94188,frog 94189,deer 94190,deer 94191,cat 94192,cat 94193,deer 94194,truck 94195,ship 94196,dog 94197,automobile 94198,bird 94199,horse 94200,truck 94201,frog 94202,bird 94203,horse 94204,dog 94205,frog 94206,horse 94207,frog 94208,ship 94209,cat 94210,deer 94211,truck 94212,deer 94213,deer 94214,ship 94215,cat 94216,airplane 94217,dog 94218,cat 94219,deer 94220,frog 94221,automobile 94222,cat 94223,ship 94224,horse 94225,horse 94226,ship 94227,cat 94228,bird 94229,cat 94230,frog 94231,automobile 94232,deer 94233,frog 94234,dog 94235,cat 94236,airplane 94237,bird 94238,deer 94239,cat 94240,cat 94241,bird 94242,airplane 94243,ship 94244,horse 94245,deer 94246,cat 94247,dog 94248,truck 94249,deer 94250,dog 94251,horse 94252,automobile 94253,ship 94254,frog 94255,cat 94256,cat 94257,airplane 94258,frog 94259,cat 94260,horse 94261,dog 94262,deer 94263,airplane 94264,truck 94265,dog 94266,horse 94267,deer 94268,truck 94269,dog 94270,bird 94271,deer 94272,automobile 94273,ship 94274,dog 94275,deer 94276,bird 94277,horse 94278,deer 94279,deer 94280,bird 94281,airplane 94282,automobile 94283,automobile 94284,truck 94285,truck 94286,cat 94287,airplane 94288,cat 94289,ship 94290,deer 94291,horse 94292,automobile 94293,deer 94294,horse 94295,bird 94296,horse 94297,ship 94298,bird 94299,frog 94300,frog 94301,automobile 94302,bird 94303,frog 94304,ship 94305,bird 94306,truck 94307,horse 94308,horse 94309,deer 94310,frog 94311,truck 94312,airplane 94313,deer 94314,deer 94315,dog 94316,truck 94317,frog 94318,ship 94319,ship 94320,bird 94321,ship 94322,automobile 94323,bird 94324,cat 94325,bird 94326,automobile 94327,frog 94328,ship 94329,dog 94330,ship 94331,truck 94332,frog 94333,horse 94334,airplane 94335,airplane 94336,cat 94337,ship 94338,airplane 94339,airplane 94340,deer 94341,deer 94342,dog 94343,frog 94344,airplane 94345,bird 94346,frog 94347,cat 94348,deer 94349,bird 94350,truck 94351,airplane 94352,airplane 94353,deer 94354,cat 94355,frog 94356,ship 94357,dog 94358,automobile 94359,dog 94360,truck 94361,horse 94362,cat 94363,frog 94364,airplane 94365,frog 94366,horse 94367,cat 94368,horse 94369,truck 94370,dog 94371,frog 94372,automobile 94373,airplane 94374,bird 94375,bird 94376,deer 94377,cat 94378,horse 94379,horse 94380,cat 94381,ship 94382,deer 94383,deer 94384,deer 94385,cat 94386,truck 94387,truck 94388,horse 94389,frog 94390,automobile 94391,deer 94392,cat 94393,cat 94394,automobile 94395,dog 94396,dog 94397,cat 94398,truck 94399,cat 94400,bird 94401,frog 94402,deer 94403,cat 94404,cat 94405,frog 94406,horse 94407,deer 94408,bird 94409,airplane 94410,cat 94411,bird 94412,ship 94413,cat 94414,cat 94415,deer 94416,dog 94417,horse 94418,truck 94419,cat 94420,cat 94421,dog 94422,horse 94423,truck 94424,dog 94425,dog 94426,dog 94427,cat 94428,airplane 94429,airplane 94430,deer 94431,frog 94432,frog 94433,frog 94434,truck 94435,automobile 94436,truck 94437,ship 94438,cat 94439,deer 94440,cat 94441,deer 94442,frog 94443,deer 94444,automobile 94445,deer 94446,frog 94447,cat 94448,truck 94449,ship 94450,cat 94451,horse 94452,airplane 94453,airplane 94454,dog 94455,ship 94456,deer 94457,airplane 94458,deer 94459,airplane 94460,bird 94461,ship 94462,frog 94463,dog 94464,cat 94465,dog 94466,deer 94467,airplane 94468,deer 94469,ship 94470,bird 94471,dog 94472,horse 94473,truck 94474,horse 94475,deer 94476,ship 94477,ship 94478,cat 94479,truck 94480,frog 94481,ship 94482,airplane 94483,bird 94484,deer 94485,ship 94486,deer 94487,deer 94488,truck 94489,horse 94490,deer 94491,bird 94492,deer 94493,automobile 94494,frog 94495,frog 94496,dog 94497,horse 94498,dog 94499,airplane 94500,deer 94501,automobile 94502,truck 94503,ship 94504,dog 94505,bird 94506,frog 94507,bird 94508,automobile 94509,truck 94510,bird 94511,cat 94512,airplane 94513,deer 94514,bird 94515,truck 94516,deer 94517,deer 94518,cat 94519,horse 94520,truck 94521,automobile 94522,truck 94523,deer 94524,airplane 94525,dog 94526,truck 94527,cat 94528,truck 94529,frog 94530,cat 94531,deer 94532,horse 94533,ship 94534,deer 94535,deer 94536,automobile 94537,frog 94538,dog 94539,airplane 94540,horse 94541,frog 94542,cat 94543,horse 94544,horse 94545,automobile 94546,dog 94547,truck 94548,deer 94549,deer 94550,cat 94551,automobile 94552,cat 94553,frog 94554,truck 94555,frog 94556,cat 94557,dog 94558,truck 94559,bird 94560,deer 94561,airplane 94562,bird 94563,deer 94564,cat 94565,deer 94566,cat 94567,airplane 94568,automobile 94569,deer 94570,cat 94571,bird 94572,truck 94573,horse 94574,cat 94575,ship 94576,cat 94577,truck 94578,horse 94579,truck 94580,bird 94581,truck 94582,deer 94583,truck 94584,dog 94585,truck 94586,ship 94587,ship 94588,dog 94589,automobile 94590,dog 94591,dog 94592,automobile 94593,airplane 94594,cat 94595,frog 94596,horse 94597,bird 94598,truck 94599,ship 94600,truck 94601,cat 94602,frog 94603,deer 94604,airplane 94605,airplane 94606,truck 94607,truck 94608,bird 94609,deer 94610,horse 94611,deer 94612,airplane 94613,bird 94614,horse 94615,deer 94616,frog 94617,deer 94618,airplane 94619,frog 94620,cat 94621,frog 94622,automobile 94623,dog 94624,truck 94625,bird 94626,cat 94627,dog 94628,bird 94629,truck 94630,truck 94631,truck 94632,bird 94633,deer 94634,truck 94635,horse 94636,frog 94637,deer 94638,deer 94639,frog 94640,dog 94641,dog 94642,cat 94643,bird 94644,bird 94645,cat 94646,airplane 94647,ship 94648,automobile 94649,frog 94650,frog 94651,airplane 94652,bird 94653,automobile 94654,horse 94655,dog 94656,deer 94657,frog 94658,deer 94659,horse 94660,cat 94661,deer 94662,horse 94663,cat 94664,ship 94665,dog 94666,airplane 94667,truck 94668,truck 94669,cat 94670,dog 94671,frog 94672,frog 94673,deer 94674,airplane 94675,horse 94676,dog 94677,frog 94678,horse 94679,dog 94680,truck 94681,cat 94682,horse 94683,dog 94684,deer 94685,airplane 94686,truck 94687,truck 94688,dog 94689,cat 94690,horse 94691,ship 94692,cat 94693,ship 94694,horse 94695,frog 94696,cat 94697,automobile 94698,ship 94699,ship 94700,bird 94701,deer 94702,airplane 94703,frog 94704,cat 94705,horse 94706,dog 94707,dog 94708,truck 94709,ship 94710,automobile 94711,truck 94712,cat 94713,bird 94714,bird 94715,frog 94716,airplane 94717,bird 94718,deer 94719,dog 94720,ship 94721,truck 94722,cat 94723,cat 94724,automobile 94725,truck 94726,bird 94727,truck 94728,cat 94729,dog 94730,deer 94731,ship 94732,deer 94733,cat 94734,horse 94735,deer 94736,truck 94737,truck 94738,airplane 94739,deer 94740,horse 94741,truck 94742,airplane 94743,cat 94744,bird 94745,ship 94746,cat 94747,cat 94748,dog 94749,deer 94750,ship 94751,automobile 94752,airplane 94753,bird 94754,bird 94755,bird 94756,cat 94757,dog 94758,ship 94759,automobile 94760,automobile 94761,cat 94762,horse 94763,dog 94764,horse 94765,truck 94766,bird 94767,ship 94768,deer 94769,cat 94770,cat 94771,deer 94772,dog 94773,deer 94774,horse 94775,frog 94776,dog 94777,deer 94778,horse 94779,bird 94780,truck 94781,horse 94782,ship 94783,frog 94784,cat 94785,cat 94786,cat 94787,horse 94788,cat 94789,bird 94790,deer 94791,cat 94792,ship 94793,horse 94794,horse 94795,truck 94796,cat 94797,cat 94798,dog 94799,frog 94800,truck 94801,truck 94802,dog 94803,airplane 94804,dog 94805,bird 94806,ship 94807,deer 94808,frog 94809,cat 94810,horse 94811,ship 94812,bird 94813,ship 94814,deer 94815,automobile 94816,automobile 94817,ship 94818,bird 94819,cat 94820,deer 94821,ship 94822,frog 94823,frog 94824,frog 94825,horse 94826,automobile 94827,truck 94828,horse 94829,airplane 94830,ship 94831,frog 94832,deer 94833,deer 94834,bird 94835,automobile 94836,automobile 94837,cat 94838,airplane 94839,deer 94840,automobile 94841,automobile 94842,horse 94843,bird 94844,frog 94845,bird 94846,ship 94847,bird 94848,deer 94849,cat 94850,deer 94851,frog 94852,dog 94853,truck 94854,ship 94855,bird 94856,truck 94857,deer 94858,frog 94859,truck 94860,cat 94861,ship 94862,bird 94863,cat 94864,automobile 94865,truck 94866,cat 94867,frog 94868,airplane 94869,cat 94870,deer 94871,airplane 94872,dog 94873,automobile 94874,horse 94875,deer 94876,horse 94877,truck 94878,cat 94879,cat 94880,bird 94881,bird 94882,ship 94883,airplane 94884,frog 94885,truck 94886,horse 94887,horse 94888,deer 94889,cat 94890,airplane 94891,cat 94892,deer 94893,ship 94894,bird 94895,cat 94896,bird 94897,cat 94898,cat 94899,deer 94900,cat 94901,horse 94902,bird 94903,frog 94904,horse 94905,horse 94906,dog 94907,horse 94908,ship 94909,frog 94910,automobile 94911,ship 94912,dog 94913,automobile 94914,bird 94915,deer 94916,dog 94917,automobile 94918,cat 94919,bird 94920,bird 94921,deer 94922,ship 94923,airplane 94924,automobile 94925,airplane 94926,dog 94927,frog 94928,truck 94929,deer 94930,airplane 94931,bird 94932,cat 94933,ship 94934,deer 94935,frog 94936,truck 94937,automobile 94938,truck 94939,cat 94940,ship 94941,bird 94942,bird 94943,dog 94944,truck 94945,horse 94946,airplane 94947,truck 94948,truck 94949,frog 94950,bird 94951,frog 94952,deer 94953,cat 94954,automobile 94955,automobile 94956,truck 94957,horse 94958,automobile 94959,truck 94960,deer 94961,ship 94962,automobile 94963,automobile 94964,airplane 94965,truck 94966,frog 94967,airplane 94968,bird 94969,dog 94970,cat 94971,horse 94972,airplane 94973,cat 94974,bird 94975,cat 94976,horse 94977,cat 94978,ship 94979,frog 94980,horse 94981,deer 94982,ship 94983,cat 94984,frog 94985,truck 94986,automobile 94987,ship 94988,frog 94989,deer 94990,horse 94991,bird 94992,cat 94993,truck 94994,dog 94995,ship 94996,cat 94997,horse 94998,frog 94999,frog 95000,cat 95001,automobile 95002,ship 95003,horse 95004,ship 95005,cat 95006,cat 95007,truck 95008,dog 95009,horse 95010,deer 95011,airplane 95012,bird 95013,dog 95014,deer 95015,cat 95016,ship 95017,truck 95018,cat 95019,frog 95020,automobile 95021,ship 95022,bird 95023,dog 95024,truck 95025,bird 95026,cat 95027,airplane 95028,truck 95029,horse 95030,frog 95031,airplane 95032,deer 95033,ship 95034,horse 95035,deer 95036,horse 95037,horse 95038,airplane 95039,automobile 95040,cat 95041,dog 95042,cat 95043,dog 95044,deer 95045,truck 95046,horse 95047,horse 95048,deer 95049,truck 95050,frog 95051,airplane 95052,cat 95053,deer 95054,frog 95055,ship 95056,truck 95057,cat 95058,frog 95059,bird 95060,horse 95061,horse 95062,frog 95063,frog 95064,deer 95065,airplane 95066,truck 95067,airplane 95068,dog 95069,cat 95070,airplane 95071,horse 95072,automobile 95073,horse 95074,dog 95075,airplane 95076,frog 95077,truck 95078,cat 95079,truck 95080,airplane 95081,frog 95082,deer 95083,deer 95084,bird 95085,cat 95086,horse 95087,automobile 95088,deer 95089,airplane 95090,automobile 95091,truck 95092,airplane 95093,cat 95094,cat 95095,bird 95096,automobile 95097,cat 95098,bird 95099,ship 95100,horse 95101,cat 95102,bird 95103,deer 95104,cat 95105,ship 95106,bird 95107,ship 95108,bird 95109,horse 95110,ship 95111,ship 95112,horse 95113,bird 95114,frog 95115,cat 95116,cat 95117,cat 95118,frog 95119,bird 95120,deer 95121,dog 95122,ship 95123,frog 95124,ship 95125,deer 95126,deer 95127,deer 95128,deer 95129,cat 95130,horse 95131,bird 95132,truck 95133,automobile 95134,bird 95135,frog 95136,ship 95137,truck 95138,cat 95139,horse 95140,dog 95141,automobile 95142,truck 95143,airplane 95144,horse 95145,cat 95146,airplane 95147,deer 95148,cat 95149,airplane 95150,automobile 95151,truck 95152,ship 95153,deer 95154,deer 95155,frog 95156,dog 95157,horse 95158,bird 95159,dog 95160,automobile 95161,airplane 95162,frog 95163,automobile 95164,airplane 95165,deer 95166,automobile 95167,automobile 95168,cat 95169,dog 95170,truck 95171,airplane 95172,truck 95173,horse 95174,automobile 95175,frog 95176,airplane 95177,truck 95178,bird 95179,ship 95180,automobile 95181,airplane 95182,horse 95183,horse 95184,automobile 95185,ship 95186,truck 95187,automobile 95188,deer 95189,dog 95190,ship 95191,automobile 95192,dog 95193,frog 95194,airplane 95195,frog 95196,deer 95197,cat 95198,cat 95199,frog 95200,horse 95201,bird 95202,airplane 95203,bird 95204,deer 95205,automobile 95206,automobile 95207,deer 95208,ship 95209,dog 95210,truck 95211,cat 95212,truck 95213,frog 95214,cat 95215,dog 95216,automobile 95217,deer 95218,frog 95219,airplane 95220,horse 95221,truck 95222,frog 95223,horse 95224,automobile 95225,ship 95226,ship 95227,dog 95228,deer 95229,ship 95230,frog 95231,cat 95232,bird 95233,airplane 95234,airplane 95235,frog 95236,automobile 95237,ship 95238,cat 95239,horse 95240,bird 95241,cat 95242,dog 95243,bird 95244,cat 95245,ship 95246,bird 95247,cat 95248,dog 95249,dog 95250,horse 95251,bird 95252,horse 95253,deer 95254,horse 95255,deer 95256,truck 95257,dog 95258,cat 95259,truck 95260,deer 95261,bird 95262,dog 95263,truck 95264,automobile 95265,dog 95266,automobile 95267,airplane 95268,cat 95269,bird 95270,bird 95271,airplane 95272,deer 95273,bird 95274,cat 95275,automobile 95276,cat 95277,automobile 95278,truck 95279,dog 95280,horse 95281,ship 95282,horse 95283,truck 95284,dog 95285,truck 95286,horse 95287,dog 95288,deer 95289,airplane 95290,deer 95291,dog 95292,cat 95293,airplane 95294,dog 95295,ship 95296,horse 95297,dog 95298,dog 95299,frog 95300,automobile 95301,ship 95302,bird 95303,deer 95304,bird 95305,airplane 95306,automobile 95307,dog 95308,dog 95309,cat 95310,cat 95311,cat 95312,airplane 95313,ship 95314,frog 95315,cat 95316,deer 95317,truck 95318,deer 95319,cat 95320,horse 95321,deer 95322,deer 95323,automobile 95324,bird 95325,deer 95326,deer 95327,horse 95328,horse 95329,truck 95330,cat 95331,frog 95332,horse 95333,cat 95334,deer 95335,automobile 95336,horse 95337,frog 95338,frog 95339,cat 95340,truck 95341,deer 95342,ship 95343,bird 95344,truck 95345,airplane 95346,bird 95347,dog 95348,airplane 95349,truck 95350,cat 95351,dog 95352,frog 95353,cat 95354,cat 95355,truck 95356,airplane 95357,deer 95358,cat 95359,ship 95360,deer 95361,frog 95362,deer 95363,deer 95364,frog 95365,airplane 95366,horse 95367,airplane 95368,frog 95369,cat 95370,cat 95371,airplane 95372,truck 95373,truck 95374,deer 95375,horse 95376,deer 95377,horse 95378,automobile 95379,horse 95380,truck 95381,bird 95382,frog 95383,deer 95384,dog 95385,bird 95386,cat 95387,airplane 95388,frog 95389,cat 95390,cat 95391,deer 95392,deer 95393,cat 95394,horse 95395,frog 95396,automobile 95397,ship 95398,truck 95399,ship 95400,deer 95401,airplane 95402,dog 95403,truck 95404,cat 95405,bird 95406,frog 95407,horse 95408,deer 95409,dog 95410,frog 95411,deer 95412,airplane 95413,truck 95414,airplane 95415,dog 95416,dog 95417,airplane 95418,frog 95419,horse 95420,ship 95421,deer 95422,frog 95423,horse 95424,deer 95425,bird 95426,ship 95427,bird 95428,truck 95429,horse 95430,truck 95431,airplane 95432,truck 95433,automobile 95434,dog 95435,cat 95436,truck 95437,airplane 95438,horse 95439,frog 95440,ship 95441,ship 95442,bird 95443,horse 95444,automobile 95445,automobile 95446,bird 95447,dog 95448,ship 95449,airplane 95450,horse 95451,cat 95452,frog 95453,frog 95454,cat 95455,cat 95456,dog 95457,frog 95458,deer 95459,horse 95460,cat 95461,truck 95462,horse 95463,dog 95464,dog 95465,dog 95466,cat 95467,horse 95468,horse 95469,cat 95470,airplane 95471,ship 95472,truck 95473,cat 95474,horse 95475,automobile 95476,airplane 95477,truck 95478,horse 95479,horse 95480,bird 95481,cat 95482,dog 95483,cat 95484,truck 95485,cat 95486,automobile 95487,bird 95488,cat 95489,cat 95490,frog 95491,deer 95492,frog 95493,truck 95494,automobile 95495,dog 95496,ship 95497,automobile 95498,dog 95499,cat 95500,frog 95501,truck 95502,deer 95503,cat 95504,dog 95505,cat 95506,cat 95507,deer 95508,horse 95509,truck 95510,deer 95511,truck 95512,bird 95513,deer 95514,deer 95515,airplane 95516,cat 95517,cat 95518,truck 95519,cat 95520,cat 95521,frog 95522,airplane 95523,ship 95524,truck 95525,horse 95526,dog 95527,cat 95528,dog 95529,dog 95530,frog 95531,truck 95532,airplane 95533,automobile 95534,frog 95535,ship 95536,airplane 95537,dog 95538,cat 95539,airplane 95540,truck 95541,horse 95542,cat 95543,truck 95544,horse 95545,truck 95546,airplane 95547,frog 95548,cat 95549,cat 95550,airplane 95551,dog 95552,truck 95553,cat 95554,airplane 95555,horse 95556,dog 95557,truck 95558,truck 95559,truck 95560,truck 95561,airplane 95562,bird 95563,deer 95564,automobile 95565,dog 95566,deer 95567,deer 95568,automobile 95569,deer 95570,frog 95571,automobile 95572,horse 95573,truck 95574,truck 95575,horse 95576,horse 95577,airplane 95578,dog 95579,automobile 95580,horse 95581,ship 95582,deer 95583,ship 95584,bird 95585,bird 95586,truck 95587,ship 95588,automobile 95589,frog 95590,deer 95591,frog 95592,bird 95593,dog 95594,ship 95595,airplane 95596,deer 95597,frog 95598,cat 95599,frog 95600,ship 95601,airplane 95602,bird 95603,bird 95604,frog 95605,frog 95606,cat 95607,cat 95608,deer 95609,frog 95610,horse 95611,horse 95612,horse 95613,cat 95614,dog 95615,frog 95616,deer 95617,ship 95618,airplane 95619,deer 95620,cat 95621,truck 95622,automobile 95623,ship 95624,bird 95625,bird 95626,bird 95627,bird 95628,cat 95629,frog 95630,dog 95631,bird 95632,frog 95633,horse 95634,cat 95635,airplane 95636,cat 95637,frog 95638,horse 95639,automobile 95640,deer 95641,automobile 95642,deer 95643,cat 95644,bird 95645,cat 95646,cat 95647,airplane 95648,frog 95649,horse 95650,bird 95651,dog 95652,ship 95653,airplane 95654,deer 95655,truck 95656,truck 95657,horse 95658,cat 95659,horse 95660,deer 95661,automobile 95662,dog 95663,deer 95664,airplane 95665,ship 95666,truck 95667,ship 95668,truck 95669,deer 95670,bird 95671,dog 95672,deer 95673,horse 95674,deer 95675,dog 95676,dog 95677,truck 95678,bird 95679,truck 95680,horse 95681,airplane 95682,truck 95683,deer 95684,truck 95685,ship 95686,airplane 95687,frog 95688,horse 95689,bird 95690,frog 95691,automobile 95692,deer 95693,airplane 95694,deer 95695,dog 95696,cat 95697,automobile 95698,frog 95699,frog 95700,airplane 95701,horse 95702,truck 95703,truck 95704,bird 95705,bird 95706,dog 95707,truck 95708,automobile 95709,deer 95710,truck 95711,cat 95712,airplane 95713,deer 95714,frog 95715,deer 95716,deer 95717,dog 95718,deer 95719,automobile 95720,cat 95721,ship 95722,cat 95723,truck 95724,truck 95725,airplane 95726,deer 95727,dog 95728,truck 95729,cat 95730,cat 95731,frog 95732,frog 95733,cat 95734,truck 95735,horse 95736,deer 95737,horse 95738,bird 95739,horse 95740,dog 95741,cat 95742,horse 95743,cat 95744,truck 95745,truck 95746,horse 95747,bird 95748,cat 95749,frog 95750,cat 95751,cat 95752,truck 95753,ship 95754,cat 95755,airplane 95756,cat 95757,deer 95758,deer 95759,dog 95760,ship 95761,frog 95762,airplane 95763,cat 95764,deer 95765,deer 95766,cat 95767,deer 95768,cat 95769,cat 95770,horse 95771,automobile 95772,airplane 95773,deer 95774,ship 95775,cat 95776,airplane 95777,ship 95778,cat 95779,deer 95780,bird 95781,cat 95782,dog 95783,truck 95784,automobile 95785,horse 95786,dog 95787,deer 95788,airplane 95789,horse 95790,ship 95791,frog 95792,automobile 95793,horse 95794,deer 95795,dog 95796,automobile 95797,frog 95798,dog 95799,deer 95800,automobile 95801,frog 95802,dog 95803,dog 95804,bird 95805,frog 95806,cat 95807,bird 95808,cat 95809,truck 95810,dog 95811,frog 95812,horse 95813,deer 95814,bird 95815,airplane 95816,deer 95817,ship 95818,frog 95819,dog 95820,horse 95821,cat 95822,airplane 95823,airplane 95824,cat 95825,cat 95826,bird 95827,horse 95828,frog 95829,frog 95830,deer 95831,bird 95832,dog 95833,horse 95834,frog 95835,airplane 95836,horse 95837,frog 95838,truck 95839,truck 95840,airplane 95841,truck 95842,truck 95843,automobile 95844,airplane 95845,cat 95846,frog 95847,airplane 95848,cat 95849,bird 95850,horse 95851,cat 95852,frog 95853,ship 95854,airplane 95855,horse 95856,horse 95857,cat 95858,bird 95859,frog 95860,airplane 95861,automobile 95862,bird 95863,deer 95864,dog 95865,automobile 95866,frog 95867,frog 95868,cat 95869,bird 95870,airplane 95871,deer 95872,airplane 95873,dog 95874,cat 95875,dog 95876,cat 95877,deer 95878,horse 95879,frog 95880,dog 95881,deer 95882,horse 95883,truck 95884,cat 95885,airplane 95886,dog 95887,airplane 95888,frog 95889,cat 95890,truck 95891,dog 95892,deer 95893,deer 95894,truck 95895,bird 95896,ship 95897,bird 95898,bird 95899,frog 95900,dog 95901,airplane 95902,truck 95903,frog 95904,bird 95905,airplane 95906,dog 95907,bird 95908,deer 95909,cat 95910,ship 95911,airplane 95912,horse 95913,horse 95914,deer 95915,dog 95916,dog 95917,frog 95918,dog 95919,automobile 95920,bird 95921,truck 95922,horse 95923,frog 95924,cat 95925,deer 95926,frog 95927,deer 95928,frog 95929,horse 95930,airplane 95931,frog 95932,ship 95933,horse 95934,truck 95935,airplane 95936,automobile 95937,airplane 95938,bird 95939,automobile 95940,horse 95941,automobile 95942,horse 95943,truck 95944,deer 95945,cat 95946,deer 95947,automobile 95948,automobile 95949,dog 95950,deer 95951,frog 95952,horse 95953,bird 95954,horse 95955,ship 95956,deer 95957,frog 95958,truck 95959,dog 95960,frog 95961,airplane 95962,airplane 95963,airplane 95964,automobile 95965,bird 95966,automobile 95967,frog 95968,dog 95969,ship 95970,deer 95971,dog 95972,dog 95973,horse 95974,cat 95975,cat 95976,deer 95977,bird 95978,horse 95979,dog 95980,airplane 95981,truck 95982,horse 95983,horse 95984,cat 95985,frog 95986,cat 95987,truck 95988,airplane 95989,cat 95990,dog 95991,cat 95992,deer 95993,horse 95994,deer 95995,airplane 95996,cat 95997,frog 95998,cat 95999,dog 96000,frog 96001,cat 96002,automobile 96003,deer 96004,airplane 96005,cat 96006,truck 96007,deer 96008,truck 96009,airplane 96010,deer 96011,truck 96012,ship 96013,deer 96014,automobile 96015,deer 96016,frog 96017,airplane 96018,dog 96019,truck 96020,cat 96021,automobile 96022,bird 96023,truck 96024,cat 96025,deer 96026,deer 96027,deer 96028,airplane 96029,deer 96030,deer 96031,deer 96032,frog 96033,horse 96034,airplane 96035,frog 96036,ship 96037,truck 96038,bird 96039,truck 96040,automobile 96041,cat 96042,horse 96043,deer 96044,ship 96045,bird 96046,cat 96047,bird 96048,horse 96049,deer 96050,horse 96051,ship 96052,airplane 96053,ship 96054,deer 96055,truck 96056,truck 96057,deer 96058,cat 96059,automobile 96060,bird 96061,horse 96062,frog 96063,truck 96064,dog 96065,cat 96066,horse 96067,dog 96068,truck 96069,ship 96070,ship 96071,deer 96072,truck 96073,dog 96074,dog 96075,airplane 96076,cat 96077,frog 96078,deer 96079,frog 96080,deer 96081,automobile 96082,deer 96083,dog 96084,truck 96085,cat 96086,truck 96087,cat 96088,frog 96089,dog 96090,dog 96091,deer 96092,dog 96093,automobile 96094,dog 96095,dog 96096,cat 96097,bird 96098,horse 96099,deer 96100,horse 96101,bird 96102,airplane 96103,frog 96104,frog 96105,horse 96106,automobile 96107,airplane 96108,bird 96109,dog 96110,frog 96111,horse 96112,bird 96113,dog 96114,truck 96115,deer 96116,dog 96117,cat 96118,truck 96119,dog 96120,frog 96121,automobile 96122,cat 96123,deer 96124,cat 96125,ship 96126,horse 96127,bird 96128,truck 96129,bird 96130,dog 96131,automobile 96132,dog 96133,automobile 96134,bird 96135,bird 96136,airplane 96137,deer 96138,automobile 96139,frog 96140,cat 96141,ship 96142,truck 96143,ship 96144,deer 96145,deer 96146,ship 96147,cat 96148,automobile 96149,dog 96150,airplane 96151,frog 96152,horse 96153,deer 96154,dog 96155,ship 96156,dog 96157,bird 96158,cat 96159,cat 96160,bird 96161,dog 96162,frog 96163,truck 96164,horse 96165,deer 96166,horse 96167,deer 96168,frog 96169,ship 96170,automobile 96171,truck 96172,cat 96173,cat 96174,frog 96175,airplane 96176,bird 96177,bird 96178,deer 96179,truck 96180,airplane 96181,cat 96182,horse 96183,truck 96184,truck 96185,dog 96186,deer 96187,airplane 96188,truck 96189,cat 96190,cat 96191,truck 96192,frog 96193,dog 96194,ship 96195,truck 96196,frog 96197,airplane 96198,deer 96199,truck 96200,horse 96201,truck 96202,dog 96203,cat 96204,bird 96205,airplane 96206,cat 96207,cat 96208,airplane 96209,dog 96210,bird 96211,deer 96212,dog 96213,dog 96214,dog 96215,cat 96216,airplane 96217,dog 96218,bird 96219,truck 96220,cat 96221,frog 96222,bird 96223,bird 96224,horse 96225,dog 96226,ship 96227,airplane 96228,dog 96229,dog 96230,bird 96231,dog 96232,bird 96233,bird 96234,bird 96235,deer 96236,frog 96237,ship 96238,deer 96239,bird 96240,bird 96241,dog 96242,automobile 96243,frog 96244,deer 96245,bird 96246,airplane 96247,horse 96248,bird 96249,deer 96250,deer 96251,dog 96252,bird 96253,cat 96254,automobile 96255,dog 96256,truck 96257,airplane 96258,automobile 96259,automobile 96260,deer 96261,deer 96262,bird 96263,horse 96264,truck 96265,deer 96266,bird 96267,deer 96268,dog 96269,cat 96270,bird 96271,horse 96272,ship 96273,frog 96274,cat 96275,truck 96276,truck 96277,bird 96278,horse 96279,cat 96280,cat 96281,ship 96282,dog 96283,bird 96284,airplane 96285,ship 96286,automobile 96287,dog 96288,ship 96289,bird 96290,frog 96291,deer 96292,airplane 96293,cat 96294,frog 96295,dog 96296,cat 96297,airplane 96298,frog 96299,frog 96300,dog 96301,airplane 96302,ship 96303,deer 96304,ship 96305,airplane 96306,truck 96307,airplane 96308,bird 96309,frog 96310,airplane 96311,truck 96312,frog 96313,dog 96314,ship 96315,deer 96316,ship 96317,ship 96318,horse 96319,bird 96320,cat 96321,ship 96322,ship 96323,horse 96324,deer 96325,ship 96326,deer 96327,airplane 96328,deer 96329,frog 96330,truck 96331,ship 96332,cat 96333,cat 96334,airplane 96335,ship 96336,automobile 96337,cat 96338,frog 96339,frog 96340,dog 96341,cat 96342,truck 96343,airplane 96344,cat 96345,cat 96346,deer 96347,ship 96348,frog 96349,deer 96350,horse 96351,frog 96352,automobile 96353,deer 96354,frog 96355,frog 96356,dog 96357,truck 96358,airplane 96359,truck 96360,deer 96361,frog 96362,airplane 96363,horse 96364,ship 96365,truck 96366,cat 96367,airplane 96368,dog 96369,horse 96370,cat 96371,dog 96372,ship 96373,truck 96374,frog 96375,frog 96376,truck 96377,bird 96378,truck 96379,bird 96380,deer 96381,deer 96382,deer 96383,deer 96384,deer 96385,deer 96386,frog 96387,cat 96388,cat 96389,bird 96390,automobile 96391,ship 96392,cat 96393,ship 96394,bird 96395,ship 96396,horse 96397,automobile 96398,deer 96399,frog 96400,cat 96401,dog 96402,ship 96403,frog 96404,deer 96405,airplane 96406,truck 96407,horse 96408,airplane 96409,truck 96410,horse 96411,ship 96412,airplane 96413,bird 96414,truck 96415,airplane 96416,cat 96417,bird 96418,cat 96419,airplane 96420,bird 96421,frog 96422,airplane 96423,ship 96424,ship 96425,horse 96426,cat 96427,ship 96428,bird 96429,frog 96430,bird 96431,deer 96432,frog 96433,truck 96434,horse 96435,automobile 96436,airplane 96437,deer 96438,truck 96439,automobile 96440,truck 96441,bird 96442,automobile 96443,automobile 96444,ship 96445,horse 96446,horse 96447,cat 96448,truck 96449,automobile 96450,truck 96451,truck 96452,airplane 96453,bird 96454,truck 96455,horse 96456,truck 96457,frog 96458,dog 96459,automobile 96460,frog 96461,frog 96462,automobile 96463,horse 96464,truck 96465,dog 96466,deer 96467,bird 96468,frog 96469,ship 96470,airplane 96471,horse 96472,deer 96473,cat 96474,cat 96475,dog 96476,truck 96477,dog 96478,automobile 96479,horse 96480,horse 96481,airplane 96482,cat 96483,automobile 96484,cat 96485,frog 96486,truck 96487,cat 96488,frog 96489,horse 96490,automobile 96491,automobile 96492,automobile 96493,truck 96494,ship 96495,bird 96496,frog 96497,horse 96498,bird 96499,bird 96500,cat 96501,airplane 96502,frog 96503,deer 96504,truck 96505,ship 96506,deer 96507,cat 96508,cat 96509,bird 96510,truck 96511,airplane 96512,horse 96513,cat 96514,cat 96515,automobile 96516,truck 96517,ship 96518,airplane 96519,dog 96520,dog 96521,horse 96522,dog 96523,bird 96524,deer 96525,dog 96526,horse 96527,deer 96528,automobile 96529,dog 96530,truck 96531,deer 96532,cat 96533,truck 96534,deer 96535,dog 96536,cat 96537,bird 96538,ship 96539,horse 96540,bird 96541,horse 96542,cat 96543,deer 96544,cat 96545,frog 96546,truck 96547,deer 96548,cat 96549,bird 96550,frog 96551,dog 96552,automobile 96553,truck 96554,frog 96555,bird 96556,dog 96557,ship 96558,automobile 96559,cat 96560,airplane 96561,truck 96562,deer 96563,cat 96564,dog 96565,deer 96566,horse 96567,automobile 96568,dog 96569,truck 96570,frog 96571,airplane 96572,truck 96573,truck 96574,frog 96575,cat 96576,horse 96577,automobile 96578,ship 96579,cat 96580,horse 96581,horse 96582,truck 96583,dog 96584,deer 96585,truck 96586,deer 96587,frog 96588,airplane 96589,deer 96590,dog 96591,airplane 96592,automobile 96593,horse 96594,frog 96595,bird 96596,frog 96597,horse 96598,frog 96599,airplane 96600,cat 96601,dog 96602,truck 96603,deer 96604,cat 96605,cat 96606,automobile 96607,horse 96608,cat 96609,bird 96610,horse 96611,frog 96612,automobile 96613,dog 96614,truck 96615,truck 96616,dog 96617,airplane 96618,dog 96619,ship 96620,automobile 96621,frog 96622,cat 96623,truck 96624,deer 96625,deer 96626,bird 96627,automobile 96628,cat 96629,horse 96630,frog 96631,airplane 96632,horse 96633,bird 96634,cat 96635,bird 96636,cat 96637,truck 96638,deer 96639,frog 96640,dog 96641,truck 96642,automobile 96643,ship 96644,automobile 96645,horse 96646,deer 96647,bird 96648,truck 96649,automobile 96650,truck 96651,deer 96652,frog 96653,truck 96654,dog 96655,deer 96656,automobile 96657,deer 96658,cat 96659,dog 96660,frog 96661,deer 96662,automobile 96663,airplane 96664,cat 96665,bird 96666,ship 96667,deer 96668,truck 96669,truck 96670,ship 96671,dog 96672,truck 96673,deer 96674,automobile 96675,dog 96676,horse 96677,airplane 96678,ship 96679,deer 96680,horse 96681,frog 96682,frog 96683,ship 96684,ship 96685,horse 96686,deer 96687,dog 96688,deer 96689,automobile 96690,truck 96691,ship 96692,deer 96693,dog 96694,frog 96695,dog 96696,bird 96697,automobile 96698,airplane 96699,bird 96700,cat 96701,cat 96702,automobile 96703,horse 96704,automobile 96705,cat 96706,truck 96707,ship 96708,truck 96709,dog 96710,horse 96711,ship 96712,deer 96713,truck 96714,ship 96715,truck 96716,ship 96717,ship 96718,truck 96719,automobile 96720,deer 96721,bird 96722,truck 96723,deer 96724,dog 96725,deer 96726,airplane 96727,truck 96728,dog 96729,cat 96730,ship 96731,cat 96732,frog 96733,frog 96734,cat 96735,airplane 96736,ship 96737,frog 96738,cat 96739,cat 96740,bird 96741,deer 96742,truck 96743,ship 96744,dog 96745,cat 96746,ship 96747,frog 96748,frog 96749,airplane 96750,deer 96751,automobile 96752,automobile 96753,dog 96754,deer 96755,airplane 96756,cat 96757,truck 96758,cat 96759,deer 96760,deer 96761,deer 96762,deer 96763,frog 96764,ship 96765,horse 96766,dog 96767,horse 96768,airplane 96769,cat 96770,dog 96771,frog 96772,ship 96773,dog 96774,ship 96775,frog 96776,dog 96777,frog 96778,deer 96779,automobile 96780,dog 96781,bird 96782,truck 96783,deer 96784,automobile 96785,automobile 96786,airplane 96787,airplane 96788,horse 96789,frog 96790,frog 96791,frog 96792,truck 96793,ship 96794,ship 96795,automobile 96796,bird 96797,cat 96798,dog 96799,cat 96800,ship 96801,truck 96802,horse 96803,cat 96804,truck 96805,ship 96806,frog 96807,deer 96808,horse 96809,bird 96810,airplane 96811,deer 96812,truck 96813,deer 96814,deer 96815,dog 96816,truck 96817,cat 96818,frog 96819,cat 96820,dog 96821,deer 96822,dog 96823,truck 96824,airplane 96825,airplane 96826,truck 96827,airplane 96828,horse 96829,ship 96830,airplane 96831,cat 96832,frog 96833,deer 96834,dog 96835,frog 96836,horse 96837,dog 96838,airplane 96839,truck 96840,truck 96841,cat 96842,bird 96843,cat 96844,airplane 96845,cat 96846,cat 96847,dog 96848,ship 96849,bird 96850,cat 96851,truck 96852,truck 96853,truck 96854,bird 96855,deer 96856,cat 96857,cat 96858,cat 96859,frog 96860,frog 96861,horse 96862,truck 96863,dog 96864,airplane 96865,cat 96866,deer 96867,airplane 96868,bird 96869,frog 96870,cat 96871,bird 96872,cat 96873,frog 96874,ship 96875,frog 96876,truck 96877,deer 96878,frog 96879,automobile 96880,ship 96881,bird 96882,frog 96883,bird 96884,dog 96885,dog 96886,dog 96887,bird 96888,frog 96889,frog 96890,frog 96891,airplane 96892,frog 96893,frog 96894,truck 96895,automobile 96896,cat 96897,horse 96898,frog 96899,truck 96900,airplane 96901,frog 96902,truck 96903,airplane 96904,automobile 96905,bird 96906,frog 96907,truck 96908,cat 96909,bird 96910,ship 96911,cat 96912,frog 96913,frog 96914,truck 96915,automobile 96916,horse 96917,frog 96918,bird 96919,ship 96920,dog 96921,horse 96922,truck 96923,truck 96924,cat 96925,deer 96926,deer 96927,automobile 96928,frog 96929,horse 96930,ship 96931,dog 96932,ship 96933,dog 96934,automobile 96935,cat 96936,ship 96937,frog 96938,ship 96939,automobile 96940,frog 96941,horse 96942,frog 96943,deer 96944,truck 96945,truck 96946,frog 96947,ship 96948,truck 96949,cat 96950,ship 96951,cat 96952,deer 96953,horse 96954,automobile 96955,dog 96956,frog 96957,automobile 96958,dog 96959,horse 96960,cat 96961,truck 96962,ship 96963,deer 96964,ship 96965,bird 96966,bird 96967,truck 96968,airplane 96969,truck 96970,airplane 96971,airplane 96972,automobile 96973,ship 96974,bird 96975,dog 96976,ship 96977,airplane 96978,bird 96979,ship 96980,deer 96981,deer 96982,airplane 96983,bird 96984,ship 96985,frog 96986,deer 96987,deer 96988,deer 96989,deer 96990,frog 96991,automobile 96992,automobile 96993,deer 96994,ship 96995,horse 96996,frog 96997,ship 96998,deer 96999,horse 97000,truck 97001,deer 97002,horse 97003,deer 97004,airplane 97005,horse 97006,deer 97007,airplane 97008,truck 97009,bird 97010,ship 97011,bird 97012,horse 97013,dog 97014,bird 97015,deer 97016,bird 97017,horse 97018,frog 97019,bird 97020,frog 97021,cat 97022,deer 97023,automobile 97024,truck 97025,bird 97026,dog 97027,dog 97028,automobile 97029,cat 97030,horse 97031,cat 97032,deer 97033,cat 97034,dog 97035,horse 97036,airplane 97037,dog 97038,cat 97039,dog 97040,automobile 97041,dog 97042,horse 97043,truck 97044,automobile 97045,bird 97046,frog 97047,airplane 97048,ship 97049,cat 97050,airplane 97051,dog 97052,bird 97053,cat 97054,dog 97055,cat 97056,frog 97057,horse 97058,airplane 97059,truck 97060,airplane 97061,cat 97062,cat 97063,dog 97064,dog 97065,dog 97066,bird 97067,dog 97068,horse 97069,airplane 97070,deer 97071,horse 97072,airplane 97073,ship 97074,deer 97075,horse 97076,cat 97077,automobile 97078,automobile 97079,deer 97080,bird 97081,bird 97082,frog 97083,cat 97084,frog 97085,airplane 97086,automobile 97087,truck 97088,dog 97089,horse 97090,horse 97091,horse 97092,automobile 97093,airplane 97094,bird 97095,bird 97096,automobile 97097,ship 97098,dog 97099,cat 97100,airplane 97101,dog 97102,frog 97103,cat 97104,deer 97105,frog 97106,truck 97107,bird 97108,deer 97109,frog 97110,horse 97111,dog 97112,frog 97113,deer 97114,truck 97115,airplane 97116,frog 97117,deer 97118,automobile 97119,dog 97120,frog 97121,deer 97122,deer 97123,cat 97124,dog 97125,airplane 97126,bird 97127,ship 97128,cat 97129,frog 97130,cat 97131,bird 97132,dog 97133,frog 97134,automobile 97135,cat 97136,horse 97137,horse 97138,deer 97139,horse 97140,bird 97141,truck 97142,deer 97143,bird 97144,automobile 97145,truck 97146,truck 97147,cat 97148,cat 97149,airplane 97150,deer 97151,automobile 97152,horse 97153,horse 97154,cat 97155,frog 97156,bird 97157,dog 97158,dog 97159,ship 97160,horse 97161,horse 97162,airplane 97163,frog 97164,deer 97165,airplane 97166,dog 97167,frog 97168,truck 97169,bird 97170,bird 97171,truck 97172,airplane 97173,airplane 97174,deer 97175,ship 97176,dog 97177,truck 97178,cat 97179,deer 97180,ship 97181,airplane 97182,bird 97183,deer 97184,cat 97185,frog 97186,ship 97187,ship 97188,ship 97189,ship 97190,deer 97191,dog 97192,deer 97193,deer 97194,horse 97195,bird 97196,cat 97197,ship 97198,frog 97199,airplane 97200,bird 97201,horse 97202,dog 97203,truck 97204,deer 97205,cat 97206,ship 97207,frog 97208,airplane 97209,truck 97210,truck 97211,truck 97212,automobile 97213,bird 97214,ship 97215,frog 97216,cat 97217,deer 97218,horse 97219,cat 97220,horse 97221,cat 97222,airplane 97223,truck 97224,bird 97225,horse 97226,bird 97227,frog 97228,airplane 97229,cat 97230,deer 97231,deer 97232,automobile 97233,ship 97234,truck 97235,frog 97236,frog 97237,dog 97238,horse 97239,frog 97240,ship 97241,cat 97242,ship 97243,deer 97244,truck 97245,truck 97246,bird 97247,deer 97248,airplane 97249,automobile 97250,deer 97251,deer 97252,bird 97253,dog 97254,cat 97255,horse 97256,frog 97257,airplane 97258,deer 97259,ship 97260,deer 97261,cat 97262,deer 97263,truck 97264,cat 97265,airplane 97266,frog 97267,cat 97268,frog 97269,cat 97270,horse 97271,frog 97272,airplane 97273,bird 97274,deer 97275,truck 97276,dog 97277,dog 97278,frog 97279,frog 97280,ship 97281,frog 97282,cat 97283,bird 97284,frog 97285,ship 97286,deer 97287,airplane 97288,bird 97289,dog 97290,truck 97291,ship 97292,frog 97293,dog 97294,automobile 97295,automobile 97296,automobile 97297,automobile 97298,deer 97299,truck 97300,dog 97301,bird 97302,dog 97303,truck 97304,frog 97305,dog 97306,bird 97307,dog 97308,truck 97309,cat 97310,cat 97311,truck 97312,truck 97313,horse 97314,cat 97315,truck 97316,cat 97317,ship 97318,ship 97319,bird 97320,cat 97321,automobile 97322,cat 97323,deer 97324,cat 97325,bird 97326,frog 97327,cat 97328,airplane 97329,airplane 97330,cat 97331,deer 97332,frog 97333,deer 97334,horse 97335,cat 97336,automobile 97337,automobile 97338,ship 97339,truck 97340,dog 97341,automobile 97342,truck 97343,horse 97344,bird 97345,frog 97346,cat 97347,dog 97348,airplane 97349,automobile 97350,bird 97351,frog 97352,automobile 97353,frog 97354,automobile 97355,dog 97356,dog 97357,bird 97358,deer 97359,dog 97360,cat 97361,automobile 97362,truck 97363,deer 97364,automobile 97365,cat 97366,truck 97367,truck 97368,deer 97369,cat 97370,cat 97371,bird 97372,airplane 97373,truck 97374,horse 97375,frog 97376,airplane 97377,airplane 97378,cat 97379,horse 97380,bird 97381,airplane 97382,frog 97383,deer 97384,bird 97385,dog 97386,automobile 97387,frog 97388,dog 97389,frog 97390,cat 97391,bird 97392,frog 97393,dog 97394,automobile 97395,frog 97396,bird 97397,dog 97398,dog 97399,ship 97400,automobile 97401,bird 97402,cat 97403,ship 97404,deer 97405,horse 97406,horse 97407,cat 97408,truck 97409,deer 97410,deer 97411,bird 97412,bird 97413,deer 97414,horse 97415,automobile 97416,airplane 97417,cat 97418,deer 97419,dog 97420,airplane 97421,dog 97422,airplane 97423,dog 97424,horse 97425,dog 97426,ship 97427,truck 97428,cat 97429,airplane 97430,automobile 97431,frog 97432,frog 97433,deer 97434,deer 97435,truck 97436,horse 97437,automobile 97438,deer 97439,horse 97440,frog 97441,automobile 97442,horse 97443,horse 97444,frog 97445,airplane 97446,airplane 97447,truck 97448,truck 97449,ship 97450,dog 97451,cat 97452,dog 97453,bird 97454,automobile 97455,truck 97456,frog 97457,deer 97458,frog 97459,cat 97460,truck 97461,ship 97462,ship 97463,bird 97464,automobile 97465,cat 97466,ship 97467,bird 97468,dog 97469,deer 97470,dog 97471,deer 97472,frog 97473,cat 97474,frog 97475,automobile 97476,bird 97477,frog 97478,cat 97479,bird 97480,dog 97481,deer 97482,cat 97483,cat 97484,frog 97485,frog 97486,horse 97487,ship 97488,bird 97489,automobile 97490,bird 97491,bird 97492,deer 97493,deer 97494,horse 97495,bird 97496,frog 97497,horse 97498,dog 97499,frog 97500,frog 97501,horse 97502,dog 97503,deer 97504,truck 97505,ship 97506,truck 97507,cat 97508,deer 97509,dog 97510,ship 97511,airplane 97512,bird 97513,cat 97514,airplane 97515,automobile 97516,truck 97517,horse 97518,cat 97519,deer 97520,frog 97521,cat 97522,dog 97523,bird 97524,airplane 97525,cat 97526,airplane 97527,dog 97528,dog 97529,cat 97530,cat 97531,deer 97532,bird 97533,airplane 97534,horse 97535,truck 97536,bird 97537,deer 97538,horse 97539,airplane 97540,dog 97541,cat 97542,truck 97543,deer 97544,automobile 97545,horse 97546,ship 97547,frog 97548,cat 97549,bird 97550,bird 97551,dog 97552,truck 97553,bird 97554,frog 97555,frog 97556,frog 97557,airplane 97558,deer 97559,horse 97560,deer 97561,deer 97562,ship 97563,truck 97564,bird 97565,deer 97566,bird 97567,frog 97568,frog 97569,automobile 97570,horse 97571,ship 97572,horse 97573,ship 97574,automobile 97575,horse 97576,frog 97577,truck 97578,horse 97579,deer 97580,bird 97581,truck 97582,frog 97583,horse 97584,ship 97585,automobile 97586,deer 97587,cat 97588,ship 97589,airplane 97590,deer 97591,deer 97592,automobile 97593,deer 97594,horse 97595,cat 97596,deer 97597,frog 97598,bird 97599,frog 97600,cat 97601,cat 97602,frog 97603,frog 97604,truck 97605,truck 97606,ship 97607,truck 97608,bird 97609,cat 97610,frog 97611,cat 97612,truck 97613,frog 97614,truck 97615,automobile 97616,bird 97617,airplane 97618,airplane 97619,airplane 97620,cat 97621,airplane 97622,airplane 97623,deer 97624,bird 97625,bird 97626,horse 97627,horse 97628,deer 97629,automobile 97630,horse 97631,truck 97632,truck 97633,ship 97634,ship 97635,automobile 97636,automobile 97637,truck 97638,bird 97639,horse 97640,cat 97641,horse 97642,cat 97643,airplane 97644,bird 97645,frog 97646,deer 97647,cat 97648,cat 97649,cat 97650,truck 97651,bird 97652,automobile 97653,truck 97654,ship 97655,cat 97656,deer 97657,deer 97658,deer 97659,bird 97660,automobile 97661,frog 97662,airplane 97663,frog 97664,airplane 97665,cat 97666,cat 97667,automobile 97668,deer 97669,horse 97670,deer 97671,truck 97672,ship 97673,ship 97674,cat 97675,horse 97676,deer 97677,airplane 97678,bird 97679,horse 97680,cat 97681,frog 97682,cat 97683,deer 97684,bird 97685,bird 97686,truck 97687,deer 97688,cat 97689,dog 97690,truck 97691,truck 97692,cat 97693,dog 97694,horse 97695,ship 97696,cat 97697,deer 97698,cat 97699,cat 97700,horse 97701,dog 97702,frog 97703,horse 97704,horse 97705,deer 97706,ship 97707,horse 97708,bird 97709,horse 97710,airplane 97711,horse 97712,cat 97713,truck 97714,deer 97715,dog 97716,automobile 97717,dog 97718,dog 97719,ship 97720,dog 97721,truck 97722,airplane 97723,cat 97724,cat 97725,cat 97726,airplane 97727,horse 97728,ship 97729,airplane 97730,frog 97731,dog 97732,horse 97733,airplane 97734,bird 97735,bird 97736,airplane 97737,deer 97738,truck 97739,dog 97740,dog 97741,deer 97742,bird 97743,frog 97744,airplane 97745,cat 97746,deer 97747,ship 97748,dog 97749,automobile 97750,frog 97751,airplane 97752,dog 97753,truck 97754,cat 97755,ship 97756,frog 97757,ship 97758,horse 97759,bird 97760,dog 97761,cat 97762,horse 97763,airplane 97764,frog 97765,horse 97766,cat 97767,deer 97768,frog 97769,deer 97770,ship 97771,frog 97772,cat 97773,dog 97774,airplane 97775,deer 97776,horse 97777,airplane 97778,cat 97779,dog 97780,frog 97781,frog 97782,airplane 97783,frog 97784,ship 97785,horse 97786,dog 97787,horse 97788,horse 97789,automobile 97790,cat 97791,horse 97792,automobile 97793,automobile 97794,frog 97795,dog 97796,dog 97797,truck 97798,frog 97799,horse 97800,airplane 97801,horse 97802,automobile 97803,dog 97804,ship 97805,horse 97806,cat 97807,bird 97808,deer 97809,airplane 97810,automobile 97811,cat 97812,dog 97813,truck 97814,bird 97815,frog 97816,ship 97817,frog 97818,truck 97819,ship 97820,truck 97821,dog 97822,automobile 97823,deer 97824,dog 97825,bird 97826,truck 97827,deer 97828,deer 97829,cat 97830,cat 97831,airplane 97832,truck 97833,deer 97834,truck 97835,deer 97836,frog 97837,ship 97838,airplane 97839,airplane 97840,ship 97841,cat 97842,dog 97843,truck 97844,deer 97845,frog 97846,airplane 97847,dog 97848,frog 97849,cat 97850,dog 97851,frog 97852,dog 97853,bird 97854,deer 97855,automobile 97856,deer 97857,bird 97858,bird 97859,dog 97860,cat 97861,deer 97862,bird 97863,horse 97864,deer 97865,deer 97866,cat 97867,dog 97868,cat 97869,dog 97870,automobile 97871,dog 97872,horse 97873,horse 97874,horse 97875,bird 97876,frog 97877,truck 97878,truck 97879,ship 97880,frog 97881,airplane 97882,truck 97883,bird 97884,bird 97885,truck 97886,deer 97887,cat 97888,truck 97889,automobile 97890,dog 97891,ship 97892,automobile 97893,deer 97894,truck 97895,ship 97896,deer 97897,cat 97898,truck 97899,horse 97900,airplane 97901,cat 97902,frog 97903,automobile 97904,deer 97905,cat 97906,horse 97907,automobile 97908,deer 97909,frog 97910,deer 97911,automobile 97912,frog 97913,truck 97914,frog 97915,truck 97916,airplane 97917,airplane 97918,bird 97919,deer 97920,cat 97921,truck 97922,dog 97923,truck 97924,horse 97925,bird 97926,deer 97927,ship 97928,frog 97929,cat 97930,truck 97931,cat 97932,dog 97933,dog 97934,ship 97935,cat 97936,deer 97937,cat 97938,bird 97939,horse 97940,bird 97941,dog 97942,horse 97943,truck 97944,cat 97945,horse 97946,dog 97947,frog 97948,truck 97949,frog 97950,automobile 97951,horse 97952,horse 97953,bird 97954,frog 97955,horse 97956,frog 97957,cat 97958,deer 97959,deer 97960,airplane 97961,horse 97962,dog 97963,frog 97964,airplane 97965,dog 97966,truck 97967,cat 97968,horse 97969,airplane 97970,truck 97971,dog 97972,horse 97973,truck 97974,deer 97975,horse 97976,dog 97977,deer 97978,dog 97979,truck 97980,deer 97981,frog 97982,cat 97983,dog 97984,horse 97985,frog 97986,ship 97987,horse 97988,bird 97989,cat 97990,frog 97991,dog 97992,automobile 97993,bird 97994,horse 97995,frog 97996,horse 97997,dog 97998,ship 97999,deer 98000,horse 98001,cat 98002,deer 98003,deer 98004,cat 98005,deer 98006,horse 98007,airplane 98008,truck 98009,truck 98010,deer 98011,bird 98012,automobile 98013,automobile 98014,deer 98015,bird 98016,deer 98017,ship 98018,cat 98019,bird 98020,cat 98021,deer 98022,frog 98023,automobile 98024,deer 98025,dog 98026,dog 98027,ship 98028,cat 98029,airplane 98030,deer 98031,truck 98032,deer 98033,bird 98034,dog 98035,cat 98036,bird 98037,automobile 98038,ship 98039,truck 98040,deer 98041,frog 98042,horse 98043,airplane 98044,dog 98045,automobile 98046,frog 98047,bird 98048,deer 98049,horse 98050,horse 98051,ship 98052,bird 98053,truck 98054,automobile 98055,horse 98056,frog 98057,automobile 98058,airplane 98059,deer 98060,frog 98061,bird 98062,airplane 98063,ship 98064,cat 98065,ship 98066,dog 98067,ship 98068,automobile 98069,dog 98070,automobile 98071,horse 98072,dog 98073,ship 98074,ship 98075,horse 98076,truck 98077,automobile 98078,airplane 98079,bird 98080,cat 98081,ship 98082,airplane 98083,truck 98084,bird 98085,deer 98086,horse 98087,dog 98088,cat 98089,airplane 98090,bird 98091,bird 98092,horse 98093,bird 98094,frog 98095,truck 98096,truck 98097,frog 98098,cat 98099,frog 98100,ship 98101,ship 98102,cat 98103,cat 98104,deer 98105,deer 98106,frog 98107,cat 98108,cat 98109,frog 98110,bird 98111,airplane 98112,deer 98113,truck 98114,dog 98115,cat 98116,cat 98117,dog 98118,frog 98119,horse 98120,frog 98121,deer 98122,horse 98123,automobile 98124,frog 98125,ship 98126,cat 98127,truck 98128,automobile 98129,horse 98130,frog 98131,truck 98132,cat 98133,cat 98134,deer 98135,horse 98136,deer 98137,ship 98138,truck 98139,bird 98140,bird 98141,bird 98142,dog 98143,dog 98144,horse 98145,horse 98146,frog 98147,airplane 98148,truck 98149,deer 98150,cat 98151,dog 98152,deer 98153,airplane 98154,dog 98155,frog 98156,deer 98157,cat 98158,deer 98159,automobile 98160,automobile 98161,horse 98162,dog 98163,cat 98164,deer 98165,cat 98166,automobile 98167,truck 98168,dog 98169,truck 98170,automobile 98171,bird 98172,deer 98173,horse 98174,horse 98175,deer 98176,truck 98177,deer 98178,cat 98179,airplane 98180,horse 98181,automobile 98182,automobile 98183,bird 98184,ship 98185,frog 98186,automobile 98187,cat 98188,airplane 98189,frog 98190,deer 98191,ship 98192,deer 98193,frog 98194,ship 98195,cat 98196,horse 98197,dog 98198,truck 98199,horse 98200,automobile 98201,frog 98202,frog 98203,horse 98204,deer 98205,deer 98206,truck 98207,frog 98208,cat 98209,ship 98210,ship 98211,horse 98212,cat 98213,truck 98214,horse 98215,cat 98216,horse 98217,frog 98218,ship 98219,bird 98220,dog 98221,dog 98222,deer 98223,truck 98224,airplane 98225,truck 98226,truck 98227,deer 98228,horse 98229,truck 98230,deer 98231,truck 98232,dog 98233,dog 98234,horse 98235,truck 98236,truck 98237,cat 98238,frog 98239,cat 98240,ship 98241,horse 98242,airplane 98243,ship 98244,cat 98245,cat 98246,ship 98247,truck 98248,cat 98249,automobile 98250,horse 98251,deer 98252,deer 98253,deer 98254,dog 98255,ship 98256,dog 98257,ship 98258,deer 98259,ship 98260,automobile 98261,bird 98262,cat 98263,cat 98264,airplane 98265,cat 98266,dog 98267,dog 98268,deer 98269,automobile 98270,bird 98271,cat 98272,cat 98273,deer 98274,airplane 98275,ship 98276,frog 98277,ship 98278,truck 98279,ship 98280,deer 98281,cat 98282,bird 98283,frog 98284,dog 98285,ship 98286,horse 98287,deer 98288,airplane 98289,airplane 98290,ship 98291,cat 98292,automobile 98293,automobile 98294,ship 98295,ship 98296,cat 98297,cat 98298,ship 98299,dog 98300,cat 98301,horse 98302,truck 98303,frog 98304,airplane 98305,automobile 98306,ship 98307,bird 98308,cat 98309,deer 98310,truck 98311,frog 98312,frog 98313,cat 98314,truck 98315,dog 98316,ship 98317,airplane 98318,deer 98319,deer 98320,truck 98321,dog 98322,truck 98323,automobile 98324,bird 98325,dog 98326,ship 98327,cat 98328,deer 98329,horse 98330,automobile 98331,horse 98332,bird 98333,ship 98334,ship 98335,ship 98336,ship 98337,dog 98338,airplane 98339,dog 98340,airplane 98341,bird 98342,airplane 98343,deer 98344,frog 98345,frog 98346,airplane 98347,deer 98348,cat 98349,bird 98350,dog 98351,bird 98352,airplane 98353,bird 98354,frog 98355,deer 98356,frog 98357,dog 98358,ship 98359,automobile 98360,deer 98361,frog 98362,airplane 98363,airplane 98364,cat 98365,dog 98366,ship 98367,truck 98368,cat 98369,dog 98370,deer 98371,deer 98372,frog 98373,airplane 98374,frog 98375,automobile 98376,horse 98377,bird 98378,cat 98379,frog 98380,cat 98381,frog 98382,deer 98383,truck 98384,truck 98385,cat 98386,dog 98387,deer 98388,horse 98389,cat 98390,dog 98391,dog 98392,deer 98393,frog 98394,bird 98395,deer 98396,truck 98397,truck 98398,ship 98399,cat 98400,ship 98401,bird 98402,airplane 98403,truck 98404,airplane 98405,cat 98406,frog 98407,horse 98408,frog 98409,frog 98410,deer 98411,deer 98412,dog 98413,horse 98414,ship 98415,bird 98416,airplane 98417,frog 98418,bird 98419,ship 98420,cat 98421,ship 98422,automobile 98423,cat 98424,airplane 98425,horse 98426,deer 98427,horse 98428,deer 98429,truck 98430,cat 98431,airplane 98432,horse 98433,ship 98434,truck 98435,frog 98436,horse 98437,deer 98438,ship 98439,horse 98440,frog 98441,cat 98442,deer 98443,deer 98444,deer 98445,ship 98446,airplane 98447,ship 98448,cat 98449,dog 98450,truck 98451,ship 98452,cat 98453,cat 98454,automobile 98455,frog 98456,automobile 98457,dog 98458,frog 98459,deer 98460,airplane 98461,airplane 98462,deer 98463,deer 98464,cat 98465,airplane 98466,cat 98467,dog 98468,cat 98469,frog 98470,deer 98471,cat 98472,bird 98473,frog 98474,ship 98475,bird 98476,automobile 98477,horse 98478,deer 98479,bird 98480,deer 98481,deer 98482,airplane 98483,cat 98484,automobile 98485,cat 98486,deer 98487,deer 98488,cat 98489,truck 98490,truck 98491,bird 98492,deer 98493,frog 98494,frog 98495,frog 98496,bird 98497,horse 98498,horse 98499,dog 98500,bird 98501,ship 98502,horse 98503,cat 98504,frog 98505,cat 98506,cat 98507,truck 98508,horse 98509,bird 98510,bird 98511,airplane 98512,airplane 98513,dog 98514,truck 98515,horse 98516,horse 98517,truck 98518,bird 98519,bird 98520,automobile 98521,deer 98522,deer 98523,deer 98524,bird 98525,horse 98526,bird 98527,ship 98528,bird 98529,dog 98530,dog 98531,deer 98532,ship 98533,frog 98534,cat 98535,bird 98536,ship 98537,airplane 98538,automobile 98539,truck 98540,frog 98541,airplane 98542,truck 98543,deer 98544,ship 98545,truck 98546,cat 98547,deer 98548,dog 98549,bird 98550,truck 98551,automobile 98552,ship 98553,automobile 98554,horse 98555,dog 98556,automobile 98557,truck 98558,cat 98559,bird 98560,bird 98561,ship 98562,truck 98563,deer 98564,horse 98565,airplane 98566,frog 98567,cat 98568,ship 98569,deer 98570,airplane 98571,ship 98572,dog 98573,cat 98574,dog 98575,horse 98576,dog 98577,bird 98578,dog 98579,airplane 98580,dog 98581,frog 98582,airplane 98583,airplane 98584,cat 98585,deer 98586,horse 98587,bird 98588,truck 98589,truck 98590,horse 98591,ship 98592,airplane 98593,truck 98594,frog 98595,frog 98596,frog 98597,automobile 98598,airplane 98599,ship 98600,dog 98601,truck 98602,bird 98603,airplane 98604,automobile 98605,truck 98606,automobile 98607,frog 98608,deer 98609,frog 98610,frog 98611,ship 98612,horse 98613,cat 98614,truck 98615,airplane 98616,airplane 98617,frog 98618,deer 98619,horse 98620,dog 98621,horse 98622,deer 98623,automobile 98624,truck 98625,deer 98626,dog 98627,bird 98628,dog 98629,frog 98630,automobile 98631,cat 98632,deer 98633,dog 98634,frog 98635,horse 98636,horse 98637,cat 98638,automobile 98639,cat 98640,bird 98641,frog 98642,frog 98643,cat 98644,automobile 98645,horse 98646,airplane 98647,deer 98648,deer 98649,deer 98650,dog 98651,truck 98652,cat 98653,deer 98654,frog 98655,ship 98656,cat 98657,ship 98658,bird 98659,cat 98660,dog 98661,deer 98662,cat 98663,truck 98664,bird 98665,horse 98666,ship 98667,bird 98668,truck 98669,deer 98670,frog 98671,dog 98672,horse 98673,ship 98674,frog 98675,truck 98676,deer 98677,ship 98678,horse 98679,frog 98680,truck 98681,cat 98682,airplane 98683,horse 98684,automobile 98685,ship 98686,truck 98687,dog 98688,horse 98689,ship 98690,dog 98691,deer 98692,cat 98693,dog 98694,airplane 98695,frog 98696,horse 98697,cat 98698,ship 98699,dog 98700,automobile 98701,automobile 98702,truck 98703,airplane 98704,frog 98705,automobile 98706,frog 98707,bird 98708,ship 98709,airplane 98710,cat 98711,truck 98712,ship 98713,dog 98714,deer 98715,ship 98716,ship 98717,horse 98718,cat 98719,ship 98720,dog 98721,deer 98722,cat 98723,cat 98724,bird 98725,frog 98726,dog 98727,dog 98728,truck 98729,frog 98730,automobile 98731,cat 98732,dog 98733,cat 98734,frog 98735,deer 98736,deer 98737,truck 98738,airplane 98739,dog 98740,cat 98741,frog 98742,ship 98743,cat 98744,cat 98745,dog 98746,ship 98747,frog 98748,automobile 98749,deer 98750,ship 98751,deer 98752,frog 98753,deer 98754,ship 98755,truck 98756,cat 98757,truck 98758,airplane 98759,cat 98760,cat 98761,horse 98762,dog 98763,truck 98764,deer 98765,horse 98766,dog 98767,horse 98768,airplane 98769,horse 98770,dog 98771,automobile 98772,frog 98773,deer 98774,cat 98775,horse 98776,frog 98777,automobile 98778,airplane 98779,airplane 98780,horse 98781,frog 98782,truck 98783,dog 98784,deer 98785,cat 98786,frog 98787,airplane 98788,truck 98789,cat 98790,cat 98791,bird 98792,frog 98793,bird 98794,truck 98795,horse 98796,truck 98797,dog 98798,cat 98799,bird 98800,dog 98801,ship 98802,airplane 98803,dog 98804,automobile 98805,cat 98806,horse 98807,deer 98808,deer 98809,airplane 98810,cat 98811,deer 98812,frog 98813,automobile 98814,ship 98815,truck 98816,frog 98817,deer 98818,truck 98819,horse 98820,ship 98821,cat 98822,deer 98823,truck 98824,airplane 98825,bird 98826,bird 98827,deer 98828,cat 98829,cat 98830,dog 98831,truck 98832,airplane 98833,horse 98834,frog 98835,cat 98836,dog 98837,dog 98838,deer 98839,dog 98840,automobile 98841,dog 98842,bird 98843,dog 98844,dog 98845,dog 98846,cat 98847,frog 98848,cat 98849,cat 98850,deer 98851,dog 98852,cat 98853,horse 98854,automobile 98855,deer 98856,dog 98857,frog 98858,horse 98859,truck 98860,dog 98861,truck 98862,truck 98863,truck 98864,frog 98865,cat 98866,cat 98867,dog 98868,automobile 98869,cat 98870,frog 98871,bird 98872,bird 98873,bird 98874,ship 98875,cat 98876,dog 98877,truck 98878,airplane 98879,cat 98880,bird 98881,bird 98882,deer 98883,horse 98884,airplane 98885,cat 98886,frog 98887,airplane 98888,cat 98889,frog 98890,dog 98891,deer 98892,truck 98893,horse 98894,truck 98895,cat 98896,frog 98897,automobile 98898,frog 98899,truck 98900,deer 98901,frog 98902,bird 98903,automobile 98904,ship 98905,dog 98906,cat 98907,deer 98908,horse 98909,cat 98910,cat 98911,horse 98912,airplane 98913,horse 98914,automobile 98915,cat 98916,ship 98917,cat 98918,dog 98919,truck 98920,frog 98921,frog 98922,horse 98923,truck 98924,dog 98925,horse 98926,airplane 98927,cat 98928,airplane 98929,horse 98930,truck 98931,cat 98932,ship 98933,frog 98934,ship 98935,deer 98936,ship 98937,horse 98938,dog 98939,automobile 98940,cat 98941,deer 98942,dog 98943,ship 98944,dog 98945,dog 98946,truck 98947,dog 98948,deer 98949,cat 98950,cat 98951,cat 98952,horse 98953,dog 98954,dog 98955,truck 98956,deer 98957,automobile 98958,airplane 98959,frog 98960,cat 98961,airplane 98962,ship 98963,deer 98964,deer 98965,ship 98966,frog 98967,horse 98968,bird 98969,frog 98970,bird 98971,automobile 98972,dog 98973,horse 98974,bird 98975,airplane 98976,airplane 98977,horse 98978,bird 98979,ship 98980,deer 98981,horse 98982,frog 98983,dog 98984,airplane 98985,frog 98986,dog 98987,airplane 98988,cat 98989,cat 98990,bird 98991,airplane 98992,deer 98993,airplane 98994,airplane 98995,cat 98996,airplane 98997,ship 98998,horse 98999,ship 99000,deer 99001,bird 99002,ship 99003,automobile 99004,truck 99005,truck 99006,deer 99007,cat 99008,dog 99009,truck 99010,automobile 99011,automobile 99012,horse 99013,ship 99014,cat 99015,deer 99016,truck 99017,horse 99018,ship 99019,truck 99020,dog 99021,bird 99022,truck 99023,deer 99024,dog 99025,deer 99026,dog 99027,cat 99028,airplane 99029,horse 99030,deer 99031,deer 99032,airplane 99033,truck 99034,automobile 99035,deer 99036,deer 99037,automobile 99038,truck 99039,deer 99040,deer 99041,ship 99042,horse 99043,cat 99044,automobile 99045,frog 99046,dog 99047,horse 99048,frog 99049,cat 99050,automobile 99051,dog 99052,bird 99053,deer 99054,dog 99055,horse 99056,cat 99057,frog 99058,bird 99059,cat 99060,dog 99061,ship 99062,airplane 99063,automobile 99064,bird 99065,airplane 99066,truck 99067,deer 99068,automobile 99069,dog 99070,ship 99071,automobile 99072,ship 99073,frog 99074,ship 99075,horse 99076,cat 99077,deer 99078,ship 99079,horse 99080,bird 99081,dog 99082,frog 99083,airplane 99084,horse 99085,airplane 99086,bird 99087,ship 99088,bird 99089,frog 99090,dog 99091,deer 99092,bird 99093,airplane 99094,deer 99095,dog 99096,dog 99097,horse 99098,ship 99099,frog 99100,frog 99101,bird 99102,dog 99103,truck 99104,horse 99105,horse 99106,automobile 99107,frog 99108,airplane 99109,airplane 99110,bird 99111,dog 99112,frog 99113,bird 99114,airplane 99115,ship 99116,cat 99117,frog 99118,horse 99119,deer 99120,airplane 99121,cat 99122,frog 99123,automobile 99124,airplane 99125,deer 99126,bird 99127,bird 99128,truck 99129,frog 99130,cat 99131,deer 99132,bird 99133,frog 99134,airplane 99135,ship 99136,cat 99137,ship 99138,ship 99139,frog 99140,truck 99141,airplane 99142,truck 99143,dog 99144,deer 99145,bird 99146,bird 99147,truck 99148,deer 99149,dog 99150,truck 99151,deer 99152,automobile 99153,truck 99154,dog 99155,deer 99156,deer 99157,truck 99158,cat 99159,airplane 99160,frog 99161,dog 99162,cat 99163,truck 99164,cat 99165,cat 99166,frog 99167,automobile 99168,automobile 99169,deer 99170,cat 99171,frog 99172,dog 99173,airplane 99174,ship 99175,ship 99176,dog 99177,airplane 99178,automobile 99179,bird 99180,deer 99181,bird 99182,frog 99183,deer 99184,airplane 99185,deer 99186,bird 99187,ship 99188,automobile 99189,ship 99190,dog 99191,frog 99192,truck 99193,truck 99194,truck 99195,frog 99196,horse 99197,bird 99198,deer 99199,bird 99200,cat 99201,dog 99202,dog 99203,horse 99204,dog 99205,horse 99206,dog 99207,ship 99208,deer 99209,frog 99210,automobile 99211,deer 99212,truck 99213,cat 99214,cat 99215,horse 99216,cat 99217,deer 99218,truck 99219,airplane 99220,automobile 99221,truck 99222,horse 99223,cat 99224,frog 99225,automobile 99226,cat 99227,automobile 99228,ship 99229,deer 99230,ship 99231,airplane 99232,airplane 99233,cat 99234,ship 99235,airplane 99236,truck 99237,deer 99238,horse 99239,dog 99240,ship 99241,frog 99242,cat 99243,ship 99244,horse 99245,bird 99246,bird 99247,deer 99248,cat 99249,truck 99250,frog 99251,cat 99252,cat 99253,dog 99254,airplane 99255,airplane 99256,truck 99257,deer 99258,bird 99259,cat 99260,frog 99261,frog 99262,truck 99263,airplane 99264,cat 99265,dog 99266,cat 99267,deer 99268,deer 99269,bird 99270,cat 99271,airplane 99272,airplane 99273,automobile 99274,dog 99275,automobile 99276,truck 99277,automobile 99278,ship 99279,truck 99280,dog 99281,cat 99282,ship 99283,frog 99284,cat 99285,airplane 99286,cat 99287,deer 99288,frog 99289,cat 99290,horse 99291,airplane 99292,bird 99293,frog 99294,ship 99295,ship 99296,automobile 99297,frog 99298,ship 99299,frog 99300,horse 99301,bird 99302,deer 99303,frog 99304,deer 99305,airplane 99306,ship 99307,dog 99308,truck 99309,ship 99310,truck 99311,deer 99312,deer 99313,frog 99314,cat 99315,cat 99316,horse 99317,frog 99318,dog 99319,frog 99320,bird 99321,frog 99322,dog 99323,bird 99324,bird 99325,automobile 99326,frog 99327,automobile 99328,airplane 99329,deer 99330,ship 99331,airplane 99332,cat 99333,cat 99334,automobile 99335,bird 99336,deer 99337,horse 99338,frog 99339,horse 99340,cat 99341,cat 99342,cat 99343,airplane 99344,horse 99345,bird 99346,airplane 99347,horse 99348,truck 99349,deer 99350,cat 99351,frog 99352,horse 99353,airplane 99354,horse 99355,ship 99356,cat 99357,frog 99358,bird 99359,frog 99360,horse 99361,frog 99362,airplane 99363,deer 99364,horse 99365,dog 99366,deer 99367,airplane 99368,dog 99369,dog 99370,cat 99371,horse 99372,dog 99373,airplane 99374,cat 99375,ship 99376,frog 99377,airplane 99378,bird 99379,bird 99380,bird 99381,frog 99382,dog 99383,bird 99384,bird 99385,cat 99386,automobile 99387,deer 99388,dog 99389,cat 99390,cat 99391,frog 99392,bird 99393,horse 99394,frog 99395,deer 99396,deer 99397,dog 99398,dog 99399,truck 99400,cat 99401,deer 99402,frog 99403,cat 99404,ship 99405,ship 99406,truck 99407,horse 99408,deer 99409,dog 99410,horse 99411,truck 99412,horse 99413,cat 99414,automobile 99415,deer 99416,ship 99417,cat 99418,dog 99419,truck 99420,bird 99421,dog 99422,airplane 99423,cat 99424,cat 99425,cat 99426,automobile 99427,cat 99428,truck 99429,bird 99430,airplane 99431,ship 99432,airplane 99433,automobile 99434,deer 99435,deer 99436,airplane 99437,truck 99438,bird 99439,ship 99440,bird 99441,horse 99442,cat 99443,ship 99444,frog 99445,dog 99446,cat 99447,truck 99448,cat 99449,horse 99450,dog 99451,ship 99452,truck 99453,airplane 99454,deer 99455,truck 99456,truck 99457,deer 99458,airplane 99459,automobile 99460,truck 99461,airplane 99462,deer 99463,cat 99464,truck 99465,deer 99466,deer 99467,horse 99468,truck 99469,ship 99470,dog 99471,deer 99472,cat 99473,frog 99474,truck 99475,automobile 99476,truck 99477,ship 99478,truck 99479,deer 99480,ship 99481,automobile 99482,deer 99483,deer 99484,deer 99485,deer 99486,frog 99487,horse 99488,ship 99489,bird 99490,automobile 99491,ship 99492,ship 99493,deer 99494,truck 99495,horse 99496,frog 99497,truck 99498,bird 99499,airplane 99500,automobile 99501,airplane 99502,deer 99503,dog 99504,truck 99505,airplane 99506,dog 99507,truck 99508,dog 99509,bird 99510,airplane 99511,deer 99512,deer 99513,horse 99514,truck 99515,airplane 99516,automobile 99517,airplane 99518,airplane 99519,bird 99520,deer 99521,dog 99522,deer 99523,frog 99524,cat 99525,bird 99526,automobile 99527,ship 99528,deer 99529,bird 99530,bird 99531,truck 99532,dog 99533,truck 99534,truck 99535,bird 99536,truck 99537,deer 99538,automobile 99539,bird 99540,airplane 99541,cat 99542,dog 99543,airplane 99544,bird 99545,ship 99546,dog 99547,dog 99548,frog 99549,cat 99550,bird 99551,bird 99552,horse 99553,cat 99554,automobile 99555,dog 99556,airplane 99557,truck 99558,frog 99559,cat 99560,ship 99561,dog 99562,frog 99563,ship 99564,ship 99565,cat 99566,cat 99567,horse 99568,automobile 99569,cat 99570,automobile 99571,deer 99572,cat 99573,frog 99574,automobile 99575,airplane 99576,horse 99577,frog 99578,dog 99579,bird 99580,dog 99581,airplane 99582,airplane 99583,frog 99584,ship 99585,deer 99586,horse 99587,horse 99588,automobile 99589,deer 99590,airplane 99591,dog 99592,frog 99593,horse 99594,bird 99595,frog 99596,cat 99597,truck 99598,ship 99599,horse 99600,automobile 99601,deer 99602,bird 99603,ship 99604,cat 99605,cat 99606,horse 99607,cat 99608,truck 99609,deer 99610,deer 99611,bird 99612,cat 99613,deer 99614,truck 99615,frog 99616,truck 99617,horse 99618,frog 99619,truck 99620,bird 99621,automobile 99622,dog 99623,frog 99624,horse 99625,truck 99626,horse 99627,cat 99628,deer 99629,deer 99630,truck 99631,frog 99632,automobile 99633,dog 99634,airplane 99635,cat 99636,airplane 99637,deer 99638,dog 99639,horse 99640,airplane 99641,bird 99642,cat 99643,cat 99644,deer 99645,deer 99646,bird 99647,deer 99648,deer 99649,ship 99650,automobile 99651,horse 99652,dog 99653,horse 99654,truck 99655,truck 99656,truck 99657,ship 99658,ship 99659,ship 99660,airplane 99661,cat 99662,deer 99663,automobile 99664,truck 99665,ship 99666,horse 99667,horse 99668,deer 99669,truck 99670,bird 99671,horse 99672,horse 99673,truck 99674,bird 99675,airplane 99676,bird 99677,airplane 99678,dog 99679,bird 99680,frog 99681,automobile 99682,ship 99683,horse 99684,dog 99685,airplane 99686,frog 99687,dog 99688,horse 99689,automobile 99690,airplane 99691,dog 99692,truck 99693,cat 99694,automobile 99695,deer 99696,truck 99697,cat 99698,dog 99699,dog 99700,airplane 99701,airplane 99702,airplane 99703,deer 99704,dog 99705,automobile 99706,bird 99707,frog 99708,dog 99709,truck 99710,frog 99711,airplane 99712,cat 99713,bird 99714,airplane 99715,horse 99716,bird 99717,deer 99718,ship 99719,automobile 99720,deer 99721,cat 99722,horse 99723,airplane 99724,airplane 99725,truck 99726,airplane 99727,truck 99728,truck 99729,frog 99730,dog 99731,ship 99732,frog 99733,horse 99734,cat 99735,cat 99736,cat 99737,horse 99738,deer 99739,frog 99740,frog 99741,horse 99742,horse 99743,truck 99744,airplane 99745,horse 99746,horse 99747,ship 99748,automobile 99749,dog 99750,deer 99751,bird 99752,bird 99753,automobile 99754,truck 99755,dog 99756,cat 99757,cat 99758,horse 99759,horse 99760,cat 99761,ship 99762,truck 99763,ship 99764,airplane 99765,frog 99766,automobile 99767,deer 99768,automobile 99769,deer 99770,airplane 99771,ship 99772,dog 99773,deer 99774,automobile 99775,truck 99776,truck 99777,horse 99778,deer 99779,bird 99780,automobile 99781,cat 99782,truck 99783,ship 99784,frog 99785,airplane 99786,deer 99787,deer 99788,automobile 99789,truck 99790,ship 99791,horse 99792,airplane 99793,deer 99794,horse 99795,frog 99796,bird 99797,truck 99798,dog 99799,automobile 99800,dog 99801,deer 99802,deer 99803,horse 99804,horse 99805,deer 99806,deer 99807,deer 99808,deer 99809,frog 99810,bird 99811,truck 99812,bird 99813,truck 99814,automobile 99815,cat 99816,automobile 99817,cat 99818,ship 99819,cat 99820,deer 99821,dog 99822,truck 99823,automobile 99824,horse 99825,horse 99826,horse 99827,cat 99828,frog 99829,bird 99830,airplane 99831,deer 99832,ship 99833,airplane 99834,horse 99835,cat 99836,automobile 99837,ship 99838,cat 99839,automobile 99840,horse 99841,deer 99842,ship 99843,dog 99844,bird 99845,automobile 99846,frog 99847,automobile 99848,dog 99849,deer 99850,bird 99851,ship 99852,bird 99853,frog 99854,deer 99855,automobile 99856,cat 99857,dog 99858,airplane 99859,frog 99860,truck 99861,truck 99862,truck 99863,automobile 99864,horse 99865,automobile 99866,horse 99867,deer 99868,bird 99869,dog 99870,truck 99871,automobile 99872,cat 99873,cat 99874,truck 99875,airplane 99876,deer 99877,airplane 99878,bird 99879,deer 99880,ship 99881,ship 99882,frog 99883,truck 99884,deer 99885,bird 99886,frog 99887,horse 99888,cat 99889,horse 99890,frog 99891,deer 99892,horse 99893,deer 99894,deer 99895,ship 99896,ship 99897,ship 99898,dog 99899,horse 99900,horse 99901,deer 99902,frog 99903,automobile 99904,cat 99905,automobile 99906,truck 99907,automobile 99908,ship 99909,dog 99910,airplane 99911,frog 99912,dog 99913,ship 99914,airplane 99915,airplane 99916,ship 99917,horse 99918,dog 99919,cat 99920,deer 99921,bird 99922,horse 99923,dog 99924,deer 99925,dog 99926,horse 99927,deer 99928,bird 99929,horse 99930,airplane 99931,cat 99932,ship 99933,deer 99934,airplane 99935,frog 99936,ship 99937,dog 99938,airplane 99939,frog 99940,cat 99941,deer 99942,dog 99943,frog 99944,frog 99945,cat 99946,automobile 99947,horse 99948,deer 99949,ship 99950,bird 99951,frog 99952,frog 99953,bird 99954,frog 99955,cat 99956,frog 99957,dog 99958,frog 99959,bird 99960,airplane 99961,dog 99962,cat 99963,automobile 99964,dog 99965,truck 99966,airplane 99967,horse 99968,horse 99969,cat 99970,deer 99971,frog 99972,dog 99973,automobile 99974,dog 99975,airplane 99976,ship 99977,cat 99978,truck 99979,dog 99980,airplane 99981,bird 99982,frog 99983,deer 99984,cat 99985,bird 99986,cat 99987,cat 99988,deer 99989,cat 99990,cat 99991,frog 99992,horse 99993,frog 99994,truck 99995,cat 99996,cat 99997,dog 99998,dog 99999,deer 100000,bird 100001,deer 100002,deer 100003,deer 100004,automobile 100005,frog 100006,automobile 100007,cat 100008,airplane 100009,truck 100010,horse 100011,cat 100012,truck 100013,airplane 100014,cat 100015,ship 100016,deer 100017,automobile 100018,truck 100019,cat 100020,cat 100021,bird 100022,ship 100023,automobile 100024,automobile 100025,truck 100026,deer 100027,frog 100028,automobile 100029,cat 100030,dog 100031,frog 100032,bird 100033,frog 100034,airplane 100035,deer 100036,cat 100037,deer 100038,dog 100039,bird 100040,bird 100041,deer 100042,dog 100043,dog 100044,ship 100045,dog 100046,deer 100047,cat 100048,frog 100049,bird 100050,cat 100051,cat 100052,deer 100053,truck 100054,automobile 100055,truck 100056,dog 100057,cat 100058,frog 100059,bird 100060,deer 100061,ship 100062,horse 100063,ship 100064,deer 100065,airplane 100066,ship 100067,cat 100068,truck 100069,horse 100070,ship 100071,automobile 100072,bird 100073,dog 100074,frog 100075,horse 100076,automobile 100077,cat 100078,dog 100079,frog 100080,ship 100081,airplane 100082,dog 100083,automobile 100084,cat 100085,frog 100086,automobile 100087,deer 100088,horse 100089,frog 100090,automobile 100091,cat 100092,cat 100093,frog 100094,bird 100095,airplane 100096,cat 100097,cat 100098,frog 100099,truck 100100,dog 100101,horse 100102,truck 100103,automobile 100104,airplane 100105,bird 100106,cat 100107,cat 100108,cat 100109,airplane 100110,airplane 100111,automobile 100112,cat 100113,cat 100114,frog 100115,dog 100116,automobile 100117,airplane 100118,dog 100119,bird 100120,dog 100121,deer 100122,ship 100123,bird 100124,deer 100125,truck 100126,cat 100127,cat 100128,deer 100129,truck 100130,dog 100131,airplane 100132,frog 100133,deer 100134,cat 100135,cat 100136,dog 100137,bird 100138,frog 100139,airplane 100140,airplane 100141,automobile 100142,dog 100143,frog 100144,ship 100145,dog 100146,truck 100147,ship 100148,frog 100149,deer 100150,automobile 100151,frog 100152,deer 100153,deer 100154,truck 100155,deer 100156,airplane 100157,horse 100158,deer 100159,ship 100160,cat 100161,dog 100162,airplane 100163,deer 100164,cat 100165,dog 100166,cat 100167,automobile 100168,deer 100169,ship 100170,horse 100171,cat 100172,truck 100173,truck 100174,airplane 100175,ship 100176,dog 100177,cat 100178,bird 100179,automobile 100180,truck 100181,truck 100182,horse 100183,deer 100184,dog 100185,deer 100186,cat 100187,airplane 100188,airplane 100189,ship 100190,deer 100191,truck 100192,airplane 100193,bird 100194,frog 100195,frog 100196,cat 100197,dog 100198,horse 100199,bird 100200,dog 100201,ship 100202,ship 100203,frog 100204,cat 100205,bird 100206,cat 100207,deer 100208,dog 100209,dog 100210,cat 100211,frog 100212,airplane 100213,cat 100214,dog 100215,frog 100216,truck 100217,truck 100218,deer 100219,ship 100220,bird 100221,horse 100222,truck 100223,automobile 100224,truck 100225,deer 100226,frog 100227,cat 100228,dog 100229,dog 100230,dog 100231,cat 100232,deer 100233,airplane 100234,airplane 100235,dog 100236,airplane 100237,truck 100238,deer 100239,deer 100240,airplane 100241,cat 100242,airplane 100243,truck 100244,frog 100245,frog 100246,cat 100247,frog 100248,truck 100249,bird 100250,airplane 100251,deer 100252,airplane 100253,dog 100254,truck 100255,ship 100256,airplane 100257,airplane 100258,frog 100259,bird 100260,bird 100261,cat 100262,truck 100263,automobile 100264,airplane 100265,deer 100266,ship 100267,airplane 100268,truck 100269,bird 100270,frog 100271,dog 100272,airplane 100273,deer 100274,truck 100275,truck 100276,bird 100277,frog 100278,cat 100279,dog 100280,frog 100281,truck 100282,airplane 100283,deer 100284,dog 100285,automobile 100286,ship 100287,airplane 100288,automobile 100289,deer 100290,truck 100291,truck 100292,truck 100293,airplane 100294,ship 100295,deer 100296,horse 100297,cat 100298,cat 100299,ship 100300,horse 100301,frog 100302,deer 100303,cat 100304,horse 100305,ship 100306,dog 100307,truck 100308,frog 100309,truck 100310,deer 100311,frog 100312,deer 100313,ship 100314,automobile 100315,truck 100316,frog 100317,deer 100318,truck 100319,cat 100320,deer 100321,dog 100322,frog 100323,horse 100324,horse 100325,cat 100326,truck 100327,frog 100328,frog 100329,cat 100330,ship 100331,cat 100332,airplane 100333,deer 100334,automobile 100335,automobile 100336,ship 100337,bird 100338,cat 100339,deer 100340,automobile 100341,cat 100342,horse 100343,dog 100344,automobile 100345,bird 100346,dog 100347,frog 100348,automobile 100349,deer 100350,deer 100351,frog 100352,bird 100353,frog 100354,deer 100355,airplane 100356,truck 100357,frog 100358,airplane 100359,deer 100360,truck 100361,truck 100362,deer 100363,horse 100364,deer 100365,horse 100366,horse 100367,bird 100368,horse 100369,airplane 100370,cat 100371,truck 100372,frog 100373,ship 100374,cat 100375,automobile 100376,automobile 100377,cat 100378,deer 100379,truck 100380,cat 100381,horse 100382,deer 100383,frog 100384,cat 100385,truck 100386,truck 100387,truck 100388,cat 100389,horse 100390,airplane 100391,frog 100392,frog 100393,cat 100394,airplane 100395,deer 100396,airplane 100397,ship 100398,horse 100399,frog 100400,airplane 100401,airplane 100402,truck 100403,frog 100404,deer 100405,ship 100406,bird 100407,deer 100408,truck 100409,cat 100410,frog 100411,truck 100412,bird 100413,horse 100414,bird 100415,deer 100416,truck 100417,ship 100418,frog 100419,bird 100420,truck 100421,horse 100422,cat 100423,frog 100424,cat 100425,deer 100426,ship 100427,deer 100428,automobile 100429,ship 100430,cat 100431,frog 100432,automobile 100433,truck 100434,ship 100435,airplane 100436,horse 100437,ship 100438,ship 100439,deer 100440,airplane 100441,deer 100442,dog 100443,deer 100444,horse 100445,automobile 100446,airplane 100447,deer 100448,airplane 100449,truck 100450,horse 100451,bird 100452,frog 100453,bird 100454,horse 100455,airplane 100456,deer 100457,truck 100458,deer 100459,bird 100460,ship 100461,cat 100462,deer 100463,dog 100464,truck 100465,dog 100466,bird 100467,horse 100468,cat 100469,truck 100470,bird 100471,ship 100472,truck 100473,bird 100474,horse 100475,deer 100476,ship 100477,deer 100478,automobile 100479,cat 100480,horse 100481,deer 100482,dog 100483,airplane 100484,automobile 100485,dog 100486,horse 100487,deer 100488,frog 100489,cat 100490,automobile 100491,deer 100492,cat 100493,cat 100494,frog 100495,cat 100496,airplane 100497,cat 100498,cat 100499,frog 100500,airplane 100501,horse 100502,truck 100503,ship 100504,cat 100505,cat 100506,cat 100507,cat 100508,airplane 100509,dog 100510,cat 100511,dog 100512,cat 100513,cat 100514,ship 100515,airplane 100516,deer 100517,frog 100518,frog 100519,ship 100520,deer 100521,airplane 100522,deer 100523,truck 100524,cat 100525,airplane 100526,automobile 100527,horse 100528,dog 100529,horse 100530,cat 100531,ship 100532,ship 100533,bird 100534,frog 100535,truck 100536,dog 100537,airplane 100538,ship 100539,bird 100540,ship 100541,dog 100542,cat 100543,airplane 100544,dog 100545,dog 100546,automobile 100547,ship 100548,cat 100549,deer 100550,cat 100551,deer 100552,cat 100553,horse 100554,deer 100555,bird 100556,deer 100557,airplane 100558,horse 100559,dog 100560,frog 100561,automobile 100562,cat 100563,horse 100564,truck 100565,bird 100566,airplane 100567,frog 100568,ship 100569,deer 100570,deer 100571,automobile 100572,truck 100573,frog 100574,airplane 100575,ship 100576,dog 100577,frog 100578,frog 100579,frog 100580,deer 100581,horse 100582,horse 100583,deer 100584,ship 100585,dog 100586,frog 100587,airplane 100588,automobile 100589,ship 100590,cat 100591,deer 100592,automobile 100593,automobile 100594,truck 100595,dog 100596,airplane 100597,deer 100598,bird 100599,deer 100600,horse 100601,frog 100602,cat 100603,horse 100604,airplane 100605,bird 100606,horse 100607,frog 100608,ship 100609,truck 100610,dog 100611,cat 100612,cat 100613,ship 100614,automobile 100615,automobile 100616,deer 100617,truck 100618,truck 100619,frog 100620,deer 100621,horse 100622,truck 100623,airplane 100624,airplane 100625,automobile 100626,dog 100627,frog 100628,cat 100629,truck 100630,horse 100631,deer 100632,airplane 100633,truck 100634,automobile 100635,dog 100636,airplane 100637,truck 100638,horse 100639,cat 100640,truck 100641,deer 100642,cat 100643,cat 100644,airplane 100645,cat 100646,frog 100647,dog 100648,frog 100649,automobile 100650,ship 100651,dog 100652,ship 100653,horse 100654,dog 100655,dog 100656,airplane 100657,cat 100658,horse 100659,bird 100660,frog 100661,cat 100662,bird 100663,airplane 100664,frog 100665,deer 100666,cat 100667,cat 100668,horse 100669,cat 100670,ship 100671,frog 100672,frog 100673,horse 100674,deer 100675,frog 100676,horse 100677,frog 100678,bird 100679,dog 100680,bird 100681,dog 100682,deer 100683,frog 100684,frog 100685,truck 100686,truck 100687,frog 100688,truck 100689,airplane 100690,frog 100691,horse 100692,truck 100693,cat 100694,deer 100695,frog 100696,cat 100697,ship 100698,cat 100699,frog 100700,cat 100701,cat 100702,airplane 100703,cat 100704,airplane 100705,cat 100706,dog 100707,dog 100708,horse 100709,cat 100710,deer 100711,automobile 100712,dog 100713,cat 100714,frog 100715,bird 100716,horse 100717,truck 100718,horse 100719,deer 100720,airplane 100721,ship 100722,airplane 100723,frog 100724,frog 100725,frog 100726,truck 100727,automobile 100728,frog 100729,deer 100730,airplane 100731,dog 100732,horse 100733,dog 100734,automobile 100735,frog 100736,cat 100737,deer 100738,frog 100739,automobile 100740,dog 100741,dog 100742,bird 100743,deer 100744,automobile 100745,ship 100746,bird 100747,truck 100748,automobile 100749,cat 100750,cat 100751,ship 100752,cat 100753,airplane 100754,cat 100755,automobile 100756,dog 100757,horse 100758,cat 100759,frog 100760,airplane 100761,dog 100762,deer 100763,bird 100764,dog 100765,dog 100766,truck 100767,truck 100768,deer 100769,dog 100770,dog 100771,ship 100772,ship 100773,deer 100774,deer 100775,dog 100776,bird 100777,bird 100778,truck 100779,ship 100780,horse 100781,dog 100782,horse 100783,truck 100784,ship 100785,deer 100786,bird 100787,bird 100788,frog 100789,horse 100790,bird 100791,frog 100792,frog 100793,automobile 100794,truck 100795,deer 100796,ship 100797,dog 100798,truck 100799,dog 100800,ship 100801,frog 100802,bird 100803,deer 100804,bird 100805,deer 100806,horse 100807,frog 100808,deer 100809,frog 100810,cat 100811,truck 100812,airplane 100813,airplane 100814,frog 100815,deer 100816,dog 100817,dog 100818,automobile 100819,cat 100820,dog 100821,airplane 100822,truck 100823,bird 100824,frog 100825,horse 100826,bird 100827,cat 100828,dog 100829,dog 100830,horse 100831,cat 100832,frog 100833,dog 100834,deer 100835,dog 100836,dog 100837,cat 100838,airplane 100839,ship 100840,truck 100841,deer 100842,bird 100843,horse 100844,dog 100845,airplane 100846,airplane 100847,frog 100848,frog 100849,bird 100850,frog 100851,airplane 100852,bird 100853,dog 100854,truck 100855,deer 100856,dog 100857,cat 100858,ship 100859,deer 100860,bird 100861,bird 100862,deer 100863,frog 100864,cat 100865,horse 100866,deer 100867,horse 100868,horse 100869,truck 100870,truck 100871,horse 100872,horse 100873,cat 100874,airplane 100875,horse 100876,cat 100877,cat 100878,deer 100879,truck 100880,deer 100881,cat 100882,automobile 100883,truck 100884,frog 100885,cat 100886,deer 100887,cat 100888,ship 100889,automobile 100890,deer 100891,cat 100892,cat 100893,automobile 100894,frog 100895,cat 100896,cat 100897,cat 100898,bird 100899,truck 100900,ship 100901,dog 100902,dog 100903,frog 100904,bird 100905,bird 100906,bird 100907,truck 100908,bird 100909,bird 100910,airplane 100911,frog 100912,bird 100913,bird 100914,dog 100915,dog 100916,cat 100917,truck 100918,bird 100919,dog 100920,horse 100921,horse 100922,ship 100923,airplane 100924,bird 100925,cat 100926,airplane 100927,cat 100928,cat 100929,ship 100930,frog 100931,cat 100932,truck 100933,ship 100934,airplane 100935,bird 100936,horse 100937,horse 100938,automobile 100939,horse 100940,horse 100941,automobile 100942,horse 100943,automobile 100944,automobile 100945,truck 100946,truck 100947,cat 100948,deer 100949,airplane 100950,airplane 100951,automobile 100952,automobile 100953,airplane 100954,airplane 100955,bird 100956,frog 100957,horse 100958,frog 100959,frog 100960,horse 100961,frog 100962,cat 100963,truck 100964,deer 100965,airplane 100966,deer 100967,frog 100968,ship 100969,horse 100970,ship 100971,ship 100972,dog 100973,bird 100974,bird 100975,cat 100976,ship 100977,frog 100978,automobile 100979,automobile 100980,truck 100981,airplane 100982,truck 100983,bird 100984,horse 100985,automobile 100986,deer 100987,automobile 100988,bird 100989,horse 100990,deer 100991,ship 100992,truck 100993,bird 100994,automobile 100995,truck 100996,bird 100997,dog 100998,horse 100999,airplane 101000,dog 101001,bird 101002,truck 101003,automobile 101004,bird 101005,horse 101006,automobile 101007,dog 101008,bird 101009,deer 101010,ship 101011,bird 101012,horse 101013,bird 101014,horse 101015,bird 101016,ship 101017,truck 101018,horse 101019,bird 101020,dog 101021,automobile 101022,truck 101023,cat 101024,deer 101025,bird 101026,horse 101027,airplane 101028,dog 101029,truck 101030,dog 101031,airplane 101032,cat 101033,deer 101034,horse 101035,truck 101036,bird 101037,deer 101038,dog 101039,bird 101040,cat 101041,truck 101042,cat 101043,automobile 101044,dog 101045,truck 101046,cat 101047,truck 101048,horse 101049,deer 101050,bird 101051,dog 101052,frog 101053,bird 101054,dog 101055,deer 101056,bird 101057,airplane 101058,dog 101059,cat 101060,truck 101061,frog 101062,frog 101063,deer 101064,deer 101065,bird 101066,cat 101067,cat 101068,ship 101069,airplane 101070,bird 101071,cat 101072,truck 101073,frog 101074,frog 101075,truck 101076,airplane 101077,truck 101078,frog 101079,horse 101080,cat 101081,frog 101082,deer 101083,truck 101084,frog 101085,deer 101086,cat 101087,frog 101088,frog 101089,frog 101090,horse 101091,ship 101092,dog 101093,bird 101094,cat 101095,frog 101096,dog 101097,cat 101098,dog 101099,ship 101100,automobile 101101,automobile 101102,dog 101103,truck 101104,horse 101105,airplane 101106,ship 101107,cat 101108,dog 101109,ship 101110,frog 101111,cat 101112,frog 101113,horse 101114,frog 101115,horse 101116,horse 101117,frog 101118,airplane 101119,ship 101120,truck 101121,deer 101122,bird 101123,horse 101124,cat 101125,frog 101126,horse 101127,automobile 101128,deer 101129,bird 101130,bird 101131,dog 101132,dog 101133,bird 101134,frog 101135,dog 101136,truck 101137,truck 101138,frog 101139,cat 101140,airplane 101141,dog 101142,cat 101143,horse 101144,dog 101145,ship 101146,dog 101147,dog 101148,deer 101149,deer 101150,cat 101151,cat 101152,airplane 101153,frog 101154,automobile 101155,frog 101156,bird 101157,dog 101158,truck 101159,horse 101160,deer 101161,airplane 101162,ship 101163,ship 101164,deer 101165,truck 101166,deer 101167,frog 101168,truck 101169,automobile 101170,dog 101171,automobile 101172,truck 101173,deer 101174,frog 101175,deer 101176,deer 101177,dog 101178,truck 101179,cat 101180,ship 101181,deer 101182,cat 101183,horse 101184,ship 101185,cat 101186,ship 101187,automobile 101188,frog 101189,bird 101190,truck 101191,cat 101192,bird 101193,cat 101194,truck 101195,airplane 101196,dog 101197,ship 101198,deer 101199,dog 101200,truck 101201,truck 101202,ship 101203,cat 101204,ship 101205,airplane 101206,horse 101207,deer 101208,airplane 101209,cat 101210,dog 101211,airplane 101212,truck 101213,automobile 101214,bird 101215,dog 101216,truck 101217,truck 101218,frog 101219,cat 101220,frog 101221,airplane 101222,deer 101223,truck 101224,airplane 101225,ship 101226,deer 101227,bird 101228,deer 101229,deer 101230,dog 101231,truck 101232,truck 101233,frog 101234,truck 101235,frog 101236,deer 101237,frog 101238,cat 101239,bird 101240,deer 101241,dog 101242,ship 101243,horse 101244,dog 101245,frog 101246,deer 101247,dog 101248,deer 101249,deer 101250,cat 101251,cat 101252,deer 101253,cat 101254,ship 101255,airplane 101256,automobile 101257,cat 101258,automobile 101259,dog 101260,horse 101261,bird 101262,frog 101263,cat 101264,dog 101265,frog 101266,frog 101267,frog 101268,horse 101269,truck 101270,cat 101271,horse 101272,airplane 101273,bird 101274,truck 101275,automobile 101276,dog 101277,cat 101278,cat 101279,bird 101280,truck 101281,deer 101282,airplane 101283,frog 101284,airplane 101285,truck 101286,bird 101287,frog 101288,dog 101289,dog 101290,frog 101291,truck 101292,bird 101293,horse 101294,cat 101295,deer 101296,deer 101297,cat 101298,horse 101299,bird 101300,dog 101301,frog 101302,frog 101303,bird 101304,airplane 101305,cat 101306,ship 101307,cat 101308,deer 101309,bird 101310,dog 101311,truck 101312,cat 101313,ship 101314,ship 101315,horse 101316,airplane 101317,cat 101318,automobile 101319,deer 101320,truck 101321,deer 101322,automobile 101323,deer 101324,deer 101325,airplane 101326,cat 101327,dog 101328,ship 101329,frog 101330,cat 101331,automobile 101332,dog 101333,cat 101334,cat 101335,ship 101336,frog 101337,deer 101338,bird 101339,cat 101340,automobile 101341,deer 101342,cat 101343,cat 101344,deer 101345,automobile 101346,horse 101347,ship 101348,ship 101349,dog 101350,bird 101351,truck 101352,dog 101353,deer 101354,deer 101355,airplane 101356,bird 101357,ship 101358,truck 101359,cat 101360,dog 101361,dog 101362,deer 101363,dog 101364,cat 101365,cat 101366,truck 101367,frog 101368,cat 101369,airplane 101370,cat 101371,airplane 101372,dog 101373,ship 101374,cat 101375,ship 101376,truck 101377,airplane 101378,ship 101379,dog 101380,cat 101381,cat 101382,ship 101383,cat 101384,deer 101385,cat 101386,bird 101387,frog 101388,deer 101389,ship 101390,deer 101391,automobile 101392,deer 101393,truck 101394,deer 101395,cat 101396,horse 101397,ship 101398,cat 101399,deer 101400,airplane 101401,bird 101402,cat 101403,cat 101404,deer 101405,horse 101406,dog 101407,ship 101408,horse 101409,deer 101410,ship 101411,frog 101412,airplane 101413,automobile 101414,dog 101415,dog 101416,cat 101417,horse 101418,horse 101419,ship 101420,automobile 101421,truck 101422,cat 101423,cat 101424,automobile 101425,dog 101426,horse 101427,deer 101428,bird 101429,bird 101430,airplane 101431,frog 101432,dog 101433,truck 101434,deer 101435,truck 101436,horse 101437,bird 101438,airplane 101439,cat 101440,automobile 101441,airplane 101442,cat 101443,ship 101444,frog 101445,cat 101446,truck 101447,ship 101448,ship 101449,ship 101450,cat 101451,truck 101452,dog 101453,airplane 101454,frog 101455,horse 101456,automobile 101457,ship 101458,ship 101459,cat 101460,automobile 101461,deer 101462,ship 101463,automobile 101464,bird 101465,horse 101466,deer 101467,cat 101468,cat 101469,cat 101470,truck 101471,deer 101472,frog 101473,airplane 101474,horse 101475,dog 101476,ship 101477,ship 101478,bird 101479,cat 101480,frog 101481,ship 101482,cat 101483,frog 101484,cat 101485,dog 101486,dog 101487,ship 101488,horse 101489,frog 101490,bird 101491,airplane 101492,dog 101493,deer 101494,horse 101495,cat 101496,cat 101497,deer 101498,airplane 101499,deer 101500,deer 101501,ship 101502,dog 101503,horse 101504,airplane 101505,automobile 101506,frog 101507,bird 101508,truck 101509,dog 101510,horse 101511,frog 101512,truck 101513,cat 101514,dog 101515,bird 101516,horse 101517,horse 101518,frog 101519,frog 101520,ship 101521,horse 101522,airplane 101523,ship 101524,horse 101525,truck 101526,frog 101527,frog 101528,dog 101529,cat 101530,deer 101531,automobile 101532,automobile 101533,deer 101534,deer 101535,truck 101536,frog 101537,cat 101538,automobile 101539,deer 101540,deer 101541,truck 101542,ship 101543,airplane 101544,automobile 101545,automobile 101546,automobile 101547,dog 101548,dog 101549,truck 101550,deer 101551,deer 101552,dog 101553,horse 101554,ship 101555,deer 101556,frog 101557,deer 101558,airplane 101559,airplane 101560,truck 101561,frog 101562,frog 101563,truck 101564,cat 101565,automobile 101566,frog 101567,cat 101568,automobile 101569,bird 101570,dog 101571,deer 101572,deer 101573,bird 101574,airplane 101575,cat 101576,cat 101577,airplane 101578,bird 101579,deer 101580,truck 101581,dog 101582,deer 101583,truck 101584,automobile 101585,frog 101586,deer 101587,frog 101588,deer 101589,cat 101590,automobile 101591,horse 101592,airplane 101593,truck 101594,truck 101595,cat 101596,frog 101597,airplane 101598,cat 101599,bird 101600,cat 101601,truck 101602,bird 101603,dog 101604,frog 101605,dog 101606,ship 101607,deer 101608,frog 101609,frog 101610,automobile 101611,frog 101612,ship 101613,bird 101614,deer 101615,ship 101616,frog 101617,ship 101618,horse 101619,airplane 101620,dog 101621,truck 101622,deer 101623,cat 101624,ship 101625,airplane 101626,frog 101627,dog 101628,truck 101629,truck 101630,ship 101631,airplane 101632,airplane 101633,horse 101634,truck 101635,automobile 101636,horse 101637,deer 101638,bird 101639,bird 101640,frog 101641,horse 101642,automobile 101643,bird 101644,cat 101645,airplane 101646,truck 101647,automobile 101648,airplane 101649,airplane 101650,truck 101651,airplane 101652,airplane 101653,cat 101654,truck 101655,automobile 101656,ship 101657,horse 101658,horse 101659,dog 101660,automobile 101661,dog 101662,dog 101663,horse 101664,dog 101665,airplane 101666,frog 101667,truck 101668,dog 101669,frog 101670,deer 101671,frog 101672,airplane 101673,deer 101674,cat 101675,truck 101676,deer 101677,deer 101678,bird 101679,bird 101680,dog 101681,dog 101682,ship 101683,automobile 101684,ship 101685,airplane 101686,frog 101687,frog 101688,horse 101689,automobile 101690,automobile 101691,frog 101692,horse 101693,ship 101694,automobile 101695,truck 101696,frog 101697,bird 101698,cat 101699,deer 101700,dog 101701,deer 101702,automobile 101703,frog 101704,deer 101705,dog 101706,horse 101707,truck 101708,cat 101709,automobile 101710,cat 101711,ship 101712,deer 101713,truck 101714,horse 101715,bird 101716,horse 101717,cat 101718,bird 101719,horse 101720,bird 101721,horse 101722,cat 101723,dog 101724,dog 101725,ship 101726,airplane 101727,cat 101728,cat 101729,truck 101730,airplane 101731,truck 101732,deer 101733,ship 101734,dog 101735,dog 101736,automobile 101737,automobile 101738,bird 101739,horse 101740,truck 101741,frog 101742,bird 101743,cat 101744,dog 101745,airplane 101746,automobile 101747,deer 101748,cat 101749,automobile 101750,deer 101751,frog 101752,cat 101753,automobile 101754,airplane 101755,bird 101756,airplane 101757,horse 101758,ship 101759,cat 101760,dog 101761,cat 101762,frog 101763,horse 101764,truck 101765,horse 101766,truck 101767,deer 101768,ship 101769,horse 101770,cat 101771,deer 101772,deer 101773,automobile 101774,deer 101775,airplane 101776,truck 101777,bird 101778,ship 101779,bird 101780,airplane 101781,bird 101782,ship 101783,truck 101784,deer 101785,horse 101786,truck 101787,automobile 101788,truck 101789,horse 101790,frog 101791,cat 101792,truck 101793,horse 101794,deer 101795,airplane 101796,deer 101797,cat 101798,deer 101799,horse 101800,ship 101801,dog 101802,airplane 101803,horse 101804,frog 101805,bird 101806,dog 101807,truck 101808,ship 101809,truck 101810,truck 101811,deer 101812,automobile 101813,truck 101814,deer 101815,dog 101816,frog 101817,horse 101818,airplane 101819,dog 101820,cat 101821,ship 101822,deer 101823,frog 101824,truck 101825,horse 101826,automobile 101827,bird 101828,airplane 101829,dog 101830,deer 101831,deer 101832,automobile 101833,airplane 101834,airplane 101835,dog 101836,truck 101837,cat 101838,dog 101839,horse 101840,horse 101841,truck 101842,truck 101843,frog 101844,cat 101845,frog 101846,ship 101847,automobile 101848,truck 101849,ship 101850,cat 101851,frog 101852,horse 101853,frog 101854,cat 101855,deer 101856,dog 101857,airplane 101858,bird 101859,truck 101860,frog 101861,dog 101862,deer 101863,horse 101864,airplane 101865,cat 101866,truck 101867,dog 101868,bird 101869,airplane 101870,deer 101871,frog 101872,frog 101873,bird 101874,deer 101875,truck 101876,airplane 101877,dog 101878,truck 101879,bird 101880,dog 101881,cat 101882,deer 101883,airplane 101884,automobile 101885,bird 101886,airplane 101887,truck 101888,cat 101889,deer 101890,deer 101891,airplane 101892,ship 101893,automobile 101894,truck 101895,frog 101896,frog 101897,frog 101898,frog 101899,cat 101900,deer 101901,ship 101902,horse 101903,horse 101904,truck 101905,automobile 101906,ship 101907,bird 101908,frog 101909,deer 101910,frog 101911,horse 101912,dog 101913,truck 101914,cat 101915,cat 101916,airplane 101917,dog 101918,bird 101919,deer 101920,deer 101921,ship 101922,dog 101923,bird 101924,automobile 101925,horse 101926,cat 101927,frog 101928,truck 101929,ship 101930,dog 101931,horse 101932,cat 101933,automobile 101934,truck 101935,horse 101936,airplane 101937,automobile 101938,bird 101939,automobile 101940,ship 101941,automobile 101942,automobile 101943,horse 101944,truck 101945,automobile 101946,truck 101947,horse 101948,deer 101949,frog 101950,cat 101951,automobile 101952,frog 101953,ship 101954,airplane 101955,automobile 101956,dog 101957,deer 101958,horse 101959,truck 101960,dog 101961,deer 101962,cat 101963,ship 101964,ship 101965,dog 101966,cat 101967,automobile 101968,cat 101969,bird 101970,dog 101971,automobile 101972,deer 101973,cat 101974,deer 101975,cat 101976,deer 101977,frog 101978,horse 101979,airplane 101980,cat 101981,frog 101982,horse 101983,deer 101984,automobile 101985,dog 101986,cat 101987,deer 101988,cat 101989,cat 101990,deer 101991,airplane 101992,automobile 101993,ship 101994,horse 101995,horse 101996,dog 101997,dog 101998,automobile 101999,dog 102000,ship 102001,cat 102002,cat 102003,deer 102004,automobile 102005,automobile 102006,cat 102007,frog 102008,frog 102009,bird 102010,dog 102011,ship 102012,deer 102013,cat 102014,frog 102015,deer 102016,frog 102017,horse 102018,horse 102019,deer 102020,deer 102021,horse 102022,cat 102023,automobile 102024,frog 102025,deer 102026,horse 102027,automobile 102028,dog 102029,truck 102030,frog 102031,automobile 102032,frog 102033,cat 102034,dog 102035,dog 102036,airplane 102037,automobile 102038,truck 102039,truck 102040,dog 102041,horse 102042,truck 102043,automobile 102044,horse 102045,bird 102046,cat 102047,truck 102048,airplane 102049,dog 102050,cat 102051,cat 102052,automobile 102053,dog 102054,truck 102055,ship 102056,deer 102057,horse 102058,truck 102059,dog 102060,frog 102061,bird 102062,cat 102063,airplane 102064,deer 102065,deer 102066,deer 102067,frog 102068,truck 102069,airplane 102070,dog 102071,horse 102072,horse 102073,automobile 102074,dog 102075,cat 102076,deer 102077,truck 102078,bird 102079,cat 102080,frog 102081,bird 102082,deer 102083,cat 102084,deer 102085,cat 102086,truck 102087,frog 102088,dog 102089,airplane 102090,horse 102091,frog 102092,cat 102093,deer 102094,truck 102095,ship 102096,dog 102097,automobile 102098,deer 102099,frog 102100,truck 102101,cat 102102,cat 102103,automobile 102104,dog 102105,automobile 102106,bird 102107,dog 102108,automobile 102109,bird 102110,dog 102111,frog 102112,cat 102113,deer 102114,bird 102115,frog 102116,horse 102117,horse 102118,cat 102119,bird 102120,deer 102121,frog 102122,dog 102123,frog 102124,dog 102125,cat 102126,truck 102127,ship 102128,truck 102129,frog 102130,airplane 102131,cat 102132,cat 102133,frog 102134,airplane 102135,bird 102136,deer 102137,deer 102138,deer 102139,frog 102140,bird 102141,cat 102142,dog 102143,truck 102144,airplane 102145,airplane 102146,frog 102147,airplane 102148,horse 102149,automobile 102150,automobile 102151,horse 102152,horse 102153,airplane 102154,deer 102155,truck 102156,deer 102157,truck 102158,frog 102159,deer 102160,frog 102161,deer 102162,bird 102163,ship 102164,bird 102165,truck 102166,bird 102167,deer 102168,horse 102169,horse 102170,truck 102171,cat 102172,automobile 102173,airplane 102174,automobile 102175,dog 102176,cat 102177,cat 102178,bird 102179,horse 102180,cat 102181,automobile 102182,frog 102183,bird 102184,truck 102185,frog 102186,bird 102187,cat 102188,truck 102189,automobile 102190,dog 102191,deer 102192,horse 102193,cat 102194,automobile 102195,deer 102196,cat 102197,deer 102198,frog 102199,deer 102200,deer 102201,ship 102202,horse 102203,dog 102204,airplane 102205,frog 102206,deer 102207,ship 102208,cat 102209,automobile 102210,automobile 102211,cat 102212,dog 102213,frog 102214,truck 102215,deer 102216,automobile 102217,airplane 102218,frog 102219,frog 102220,deer 102221,ship 102222,automobile 102223,truck 102224,bird 102225,bird 102226,frog 102227,cat 102228,automobile 102229,cat 102230,ship 102231,truck 102232,frog 102233,frog 102234,cat 102235,cat 102236,bird 102237,dog 102238,dog 102239,bird 102240,bird 102241,cat 102242,deer 102243,dog 102244,cat 102245,cat 102246,frog 102247,airplane 102248,airplane 102249,deer 102250,deer 102251,deer 102252,automobile 102253,frog 102254,automobile 102255,frog 102256,bird 102257,automobile 102258,deer 102259,truck 102260,horse 102261,truck 102262,dog 102263,dog 102264,dog 102265,ship 102266,frog 102267,airplane 102268,dog 102269,airplane 102270,bird 102271,bird 102272,airplane 102273,frog 102274,frog 102275,airplane 102276,bird 102277,ship 102278,cat 102279,bird 102280,deer 102281,bird 102282,ship 102283,deer 102284,truck 102285,cat 102286,dog 102287,cat 102288,cat 102289,cat 102290,dog 102291,automobile 102292,truck 102293,automobile 102294,automobile 102295,dog 102296,ship 102297,horse 102298,truck 102299,frog 102300,bird 102301,dog 102302,ship 102303,cat 102304,bird 102305,frog 102306,truck 102307,airplane 102308,automobile 102309,horse 102310,bird 102311,dog 102312,frog 102313,bird 102314,ship 102315,truck 102316,cat 102317,deer 102318,horse 102319,deer 102320,dog 102321,cat 102322,cat 102323,horse 102324,ship 102325,bird 102326,airplane 102327,bird 102328,truck 102329,truck 102330,airplane 102331,horse 102332,automobile 102333,frog 102334,truck 102335,ship 102336,truck 102337,truck 102338,bird 102339,deer 102340,airplane 102341,truck 102342,automobile 102343,frog 102344,airplane 102345,automobile 102346,cat 102347,truck 102348,horse 102349,ship 102350,horse 102351,ship 102352,deer 102353,bird 102354,ship 102355,ship 102356,dog 102357,deer 102358,ship 102359,dog 102360,deer 102361,ship 102362,airplane 102363,cat 102364,ship 102365,cat 102366,ship 102367,airplane 102368,dog 102369,deer 102370,horse 102371,truck 102372,ship 102373,cat 102374,automobile 102375,ship 102376,dog 102377,frog 102378,airplane 102379,frog 102380,automobile 102381,ship 102382,frog 102383,frog 102384,airplane 102385,bird 102386,automobile 102387,deer 102388,automobile 102389,ship 102390,truck 102391,horse 102392,deer 102393,cat 102394,truck 102395,horse 102396,truck 102397,deer 102398,ship 102399,bird 102400,deer 102401,cat 102402,airplane 102403,frog 102404,frog 102405,deer 102406,horse 102407,bird 102408,dog 102409,deer 102410,truck 102411,truck 102412,cat 102413,cat 102414,cat 102415,dog 102416,horse 102417,deer 102418,cat 102419,airplane 102420,deer 102421,automobile 102422,truck 102423,dog 102424,deer 102425,cat 102426,truck 102427,airplane 102428,deer 102429,horse 102430,ship 102431,airplane 102432,dog 102433,cat 102434,frog 102435,deer 102436,bird 102437,frog 102438,cat 102439,deer 102440,airplane 102441,airplane 102442,frog 102443,ship 102444,ship 102445,deer 102446,ship 102447,frog 102448,cat 102449,deer 102450,dog 102451,deer 102452,truck 102453,dog 102454,deer 102455,ship 102456,truck 102457,truck 102458,ship 102459,bird 102460,truck 102461,bird 102462,frog 102463,frog 102464,automobile 102465,cat 102466,dog 102467,bird 102468,bird 102469,cat 102470,deer 102471,horse 102472,dog 102473,frog 102474,cat 102475,ship 102476,dog 102477,horse 102478,frog 102479,automobile 102480,deer 102481,cat 102482,cat 102483,ship 102484,bird 102485,airplane 102486,airplane 102487,horse 102488,cat 102489,deer 102490,dog 102491,bird 102492,cat 102493,horse 102494,ship 102495,horse 102496,horse 102497,horse 102498,deer 102499,cat 102500,deer 102501,deer 102502,frog 102503,horse 102504,frog 102505,horse 102506,bird 102507,cat 102508,cat 102509,bird 102510,cat 102511,deer 102512,deer 102513,airplane 102514,truck 102515,frog 102516,bird 102517,bird 102518,cat 102519,automobile 102520,automobile 102521,cat 102522,bird 102523,horse 102524,airplane 102525,airplane 102526,automobile 102527,ship 102528,horse 102529,frog 102530,dog 102531,frog 102532,truck 102533,ship 102534,airplane 102535,airplane 102536,truck 102537,ship 102538,frog 102539,deer 102540,dog 102541,cat 102542,dog 102543,cat 102544,frog 102545,deer 102546,dog 102547,deer 102548,automobile 102549,deer 102550,airplane 102551,truck 102552,truck 102553,ship 102554,deer 102555,airplane 102556,deer 102557,truck 102558,truck 102559,airplane 102560,frog 102561,deer 102562,cat 102563,cat 102564,ship 102565,dog 102566,truck 102567,frog 102568,cat 102569,truck 102570,truck 102571,horse 102572,frog 102573,automobile 102574,deer 102575,airplane 102576,frog 102577,dog 102578,deer 102579,dog 102580,ship 102581,dog 102582,truck 102583,ship 102584,cat 102585,bird 102586,dog 102587,cat 102588,dog 102589,automobile 102590,deer 102591,horse 102592,frog 102593,ship 102594,truck 102595,dog 102596,deer 102597,dog 102598,deer 102599,ship 102600,bird 102601,ship 102602,truck 102603,automobile 102604,dog 102605,frog 102606,cat 102607,automobile 102608,bird 102609,automobile 102610,truck 102611,truck 102612,bird 102613,horse 102614,dog 102615,deer 102616,bird 102617,ship 102618,airplane 102619,horse 102620,airplane 102621,ship 102622,horse 102623,truck 102624,horse 102625,airplane 102626,ship 102627,frog 102628,bird 102629,frog 102630,automobile 102631,cat 102632,cat 102633,ship 102634,deer 102635,cat 102636,truck 102637,cat 102638,cat 102639,truck 102640,deer 102641,deer 102642,automobile 102643,cat 102644,ship 102645,frog 102646,airplane 102647,truck 102648,truck 102649,airplane 102650,ship 102651,frog 102652,cat 102653,cat 102654,cat 102655,dog 102656,bird 102657,horse 102658,frog 102659,dog 102660,truck 102661,frog 102662,truck 102663,dog 102664,cat 102665,cat 102666,frog 102667,cat 102668,deer 102669,automobile 102670,cat 102671,horse 102672,truck 102673,deer 102674,cat 102675,cat 102676,frog 102677,dog 102678,dog 102679,horse 102680,cat 102681,deer 102682,horse 102683,horse 102684,bird 102685,truck 102686,truck 102687,airplane 102688,frog 102689,airplane 102690,frog 102691,airplane 102692,horse 102693,cat 102694,frog 102695,ship 102696,frog 102697,horse 102698,deer 102699,deer 102700,cat 102701,horse 102702,horse 102703,deer 102704,dog 102705,bird 102706,cat 102707,cat 102708,truck 102709,frog 102710,airplane 102711,cat 102712,dog 102713,airplane 102714,truck 102715,frog 102716,cat 102717,dog 102718,cat 102719,deer 102720,truck 102721,horse 102722,deer 102723,automobile 102724,bird 102725,horse 102726,truck 102727,deer 102728,airplane 102729,automobile 102730,airplane 102731,cat 102732,horse 102733,bird 102734,cat 102735,cat 102736,deer 102737,cat 102738,cat 102739,frog 102740,cat 102741,frog 102742,horse 102743,truck 102744,frog 102745,automobile 102746,frog 102747,frog 102748,frog 102749,bird 102750,ship 102751,dog 102752,frog 102753,deer 102754,truck 102755,cat 102756,truck 102757,truck 102758,deer 102759,frog 102760,truck 102761,deer 102762,dog 102763,horse 102764,deer 102765,bird 102766,horse 102767,horse 102768,bird 102769,airplane 102770,dog 102771,dog 102772,horse 102773,truck 102774,automobile 102775,ship 102776,airplane 102777,automobile 102778,dog 102779,bird 102780,deer 102781,cat 102782,bird 102783,ship 102784,ship 102785,cat 102786,bird 102787,truck 102788,bird 102789,frog 102790,truck 102791,deer 102792,dog 102793,truck 102794,horse 102795,frog 102796,bird 102797,frog 102798,airplane 102799,automobile 102800,horse 102801,horse 102802,automobile 102803,truck 102804,automobile 102805,ship 102806,frog 102807,bird 102808,deer 102809,horse 102810,dog 102811,cat 102812,dog 102813,horse 102814,horse 102815,cat 102816,truck 102817,truck 102818,dog 102819,cat 102820,deer 102821,deer 102822,truck 102823,ship 102824,bird 102825,ship 102826,deer 102827,automobile 102828,deer 102829,cat 102830,horse 102831,dog 102832,deer 102833,automobile 102834,truck 102835,dog 102836,deer 102837,deer 102838,ship 102839,bird 102840,airplane 102841,airplane 102842,dog 102843,truck 102844,bird 102845,truck 102846,bird 102847,truck 102848,horse 102849,dog 102850,bird 102851,airplane 102852,deer 102853,cat 102854,ship 102855,automobile 102856,bird 102857,deer 102858,airplane 102859,bird 102860,deer 102861,frog 102862,deer 102863,airplane 102864,truck 102865,automobile 102866,bird 102867,ship 102868,ship 102869,bird 102870,deer 102871,frog 102872,dog 102873,automobile 102874,dog 102875,cat 102876,frog 102877,dog 102878,airplane 102879,deer 102880,dog 102881,airplane 102882,deer 102883,ship 102884,airplane 102885,deer 102886,ship 102887,deer 102888,cat 102889,dog 102890,deer 102891,frog 102892,automobile 102893,ship 102894,truck 102895,cat 102896,cat 102897,truck 102898,airplane 102899,airplane 102900,airplane 102901,frog 102902,airplane 102903,airplane 102904,dog 102905,dog 102906,ship 102907,frog 102908,airplane 102909,horse 102910,deer 102911,dog 102912,airplane 102913,airplane 102914,deer 102915,deer 102916,ship 102917,airplane 102918,ship 102919,horse 102920,dog 102921,bird 102922,deer 102923,horse 102924,frog 102925,ship 102926,bird 102927,cat 102928,bird 102929,ship 102930,bird 102931,truck 102932,automobile 102933,ship 102934,airplane 102935,cat 102936,truck 102937,horse 102938,horse 102939,ship 102940,cat 102941,cat 102942,frog 102943,ship 102944,deer 102945,cat 102946,truck 102947,bird 102948,truck 102949,dog 102950,ship 102951,cat 102952,truck 102953,automobile 102954,dog 102955,horse 102956,frog 102957,horse 102958,frog 102959,frog 102960,cat 102961,ship 102962,horse 102963,bird 102964,dog 102965,cat 102966,dog 102967,deer 102968,truck 102969,horse 102970,ship 102971,truck 102972,bird 102973,horse 102974,frog 102975,cat 102976,deer 102977,frog 102978,horse 102979,truck 102980,deer 102981,airplane 102982,horse 102983,deer 102984,truck 102985,truck 102986,automobile 102987,deer 102988,dog 102989,deer 102990,ship 102991,bird 102992,bird 102993,truck 102994,cat 102995,cat 102996,dog 102997,horse 102998,deer 102999,deer 103000,automobile 103001,truck 103002,deer 103003,ship 103004,airplane 103005,dog 103006,frog 103007,bird 103008,deer 103009,frog 103010,bird 103011,ship 103012,deer 103013,horse 103014,automobile 103015,truck 103016,cat 103017,airplane 103018,frog 103019,horse 103020,ship 103021,truck 103022,airplane 103023,automobile 103024,dog 103025,truck 103026,automobile 103027,airplane 103028,ship 103029,dog 103030,frog 103031,dog 103032,frog 103033,horse 103034,truck 103035,horse 103036,horse 103037,truck 103038,truck 103039,horse 103040,airplane 103041,ship 103042,dog 103043,cat 103044,cat 103045,frog 103046,cat 103047,truck 103048,horse 103049,horse 103050,truck 103051,truck 103052,horse 103053,bird 103054,frog 103055,bird 103056,cat 103057,cat 103058,dog 103059,frog 103060,automobile 103061,deer 103062,airplane 103063,deer 103064,cat 103065,cat 103066,frog 103067,frog 103068,ship 103069,frog 103070,bird 103071,ship 103072,airplane 103073,deer 103074,cat 103075,truck 103076,dog 103077,automobile 103078,frog 103079,airplane 103080,ship 103081,cat 103082,ship 103083,automobile 103084,airplane 103085,deer 103086,frog 103087,ship 103088,cat 103089,airplane 103090,deer 103091,ship 103092,cat 103093,cat 103094,cat 103095,ship 103096,dog 103097,cat 103098,truck 103099,automobile 103100,automobile 103101,truck 103102,cat 103103,automobile 103104,airplane 103105,cat 103106,frog 103107,deer 103108,horse 103109,airplane 103110,airplane 103111,deer 103112,truck 103113,deer 103114,truck 103115,ship 103116,deer 103117,horse 103118,cat 103119,dog 103120,frog 103121,automobile 103122,truck 103123,truck 103124,frog 103125,dog 103126,truck 103127,deer 103128,deer 103129,deer 103130,bird 103131,deer 103132,dog 103133,automobile 103134,deer 103135,horse 103136,cat 103137,ship 103138,cat 103139,airplane 103140,frog 103141,frog 103142,airplane 103143,dog 103144,truck 103145,dog 103146,cat 103147,bird 103148,truck 103149,frog 103150,deer 103151,dog 103152,truck 103153,ship 103154,airplane 103155,horse 103156,dog 103157,cat 103158,dog 103159,bird 103160,dog 103161,bird 103162,deer 103163,deer 103164,cat 103165,ship 103166,truck 103167,dog 103168,frog 103169,truck 103170,truck 103171,deer 103172,automobile 103173,frog 103174,bird 103175,bird 103176,truck 103177,deer 103178,ship 103179,deer 103180,deer 103181,ship 103182,cat 103183,airplane 103184,deer 103185,frog 103186,horse 103187,truck 103188,frog 103189,cat 103190,airplane 103191,truck 103192,automobile 103193,bird 103194,bird 103195,deer 103196,ship 103197,ship 103198,airplane 103199,deer 103200,ship 103201,automobile 103202,cat 103203,truck 103204,ship 103205,ship 103206,ship 103207,dog 103208,ship 103209,cat 103210,truck 103211,truck 103212,ship 103213,dog 103214,frog 103215,horse 103216,horse 103217,ship 103218,truck 103219,truck 103220,deer 103221,automobile 103222,bird 103223,bird 103224,ship 103225,bird 103226,truck 103227,deer 103228,horse 103229,dog 103230,frog 103231,frog 103232,ship 103233,dog 103234,deer 103235,cat 103236,deer 103237,horse 103238,bird 103239,frog 103240,truck 103241,cat 103242,automobile 103243,truck 103244,dog 103245,airplane 103246,truck 103247,dog 103248,automobile 103249,truck 103250,ship 103251,horse 103252,frog 103253,automobile 103254,cat 103255,bird 103256,horse 103257,airplane 103258,deer 103259,horse 103260,bird 103261,horse 103262,airplane 103263,dog 103264,cat 103265,cat 103266,ship 103267,bird 103268,cat 103269,airplane 103270,cat 103271,automobile 103272,dog 103273,frog 103274,truck 103275,automobile 103276,horse 103277,ship 103278,bird 103279,horse 103280,horse 103281,deer 103282,cat 103283,frog 103284,truck 103285,horse 103286,cat 103287,horse 103288,cat 103289,horse 103290,horse 103291,cat 103292,automobile 103293,dog 103294,deer 103295,automobile 103296,bird 103297,cat 103298,cat 103299,frog 103300,ship 103301,frog 103302,automobile 103303,ship 103304,airplane 103305,horse 103306,ship 103307,horse 103308,airplane 103309,truck 103310,cat 103311,dog 103312,dog 103313,frog 103314,dog 103315,frog 103316,deer 103317,horse 103318,dog 103319,truck 103320,cat 103321,frog 103322,horse 103323,horse 103324,bird 103325,truck 103326,dog 103327,automobile 103328,cat 103329,deer 103330,frog 103331,deer 103332,dog 103333,cat 103334,airplane 103335,frog 103336,airplane 103337,cat 103338,bird 103339,cat 103340,automobile 103341,deer 103342,truck 103343,truck 103344,ship 103345,truck 103346,deer 103347,dog 103348,dog 103349,dog 103350,deer 103351,dog 103352,horse 103353,deer 103354,ship 103355,bird 103356,bird 103357,automobile 103358,horse 103359,bird 103360,dog 103361,cat 103362,airplane 103363,frog 103364,truck 103365,dog 103366,automobile 103367,frog 103368,deer 103369,truck 103370,cat 103371,frog 103372,truck 103373,truck 103374,cat 103375,deer 103376,airplane 103377,bird 103378,cat 103379,cat 103380,cat 103381,cat 103382,ship 103383,bird 103384,dog 103385,horse 103386,deer 103387,truck 103388,ship 103389,deer 103390,deer 103391,horse 103392,frog 103393,cat 103394,frog 103395,deer 103396,cat 103397,truck 103398,dog 103399,horse 103400,automobile 103401,deer 103402,airplane 103403,automobile 103404,airplane 103405,bird 103406,ship 103407,dog 103408,ship 103409,dog 103410,bird 103411,deer 103412,dog 103413,horse 103414,automobile 103415,dog 103416,dog 103417,automobile 103418,deer 103419,truck 103420,deer 103421,deer 103422,dog 103423,cat 103424,truck 103425,automobile 103426,airplane 103427,cat 103428,ship 103429,frog 103430,ship 103431,cat 103432,automobile 103433,airplane 103434,dog 103435,dog 103436,dog 103437,dog 103438,deer 103439,horse 103440,deer 103441,automobile 103442,deer 103443,bird 103444,truck 103445,dog 103446,deer 103447,horse 103448,cat 103449,cat 103450,dog 103451,frog 103452,truck 103453,deer 103454,cat 103455,deer 103456,dog 103457,cat 103458,dog 103459,frog 103460,airplane 103461,frog 103462,deer 103463,automobile 103464,dog 103465,cat 103466,frog 103467,deer 103468,horse 103469,cat 103470,automobile 103471,deer 103472,cat 103473,bird 103474,ship 103475,frog 103476,truck 103477,deer 103478,airplane 103479,deer 103480,frog 103481,frog 103482,dog 103483,airplane 103484,frog 103485,automobile 103486,frog 103487,frog 103488,cat 103489,bird 103490,horse 103491,automobile 103492,deer 103493,cat 103494,cat 103495,bird 103496,airplane 103497,ship 103498,bird 103499,airplane 103500,horse 103501,cat 103502,deer 103503,automobile 103504,automobile 103505,deer 103506,ship 103507,ship 103508,horse 103509,deer 103510,truck 103511,deer 103512,airplane 103513,ship 103514,dog 103515,ship 103516,truck 103517,bird 103518,automobile 103519,horse 103520,horse 103521,frog 103522,cat 103523,deer 103524,airplane 103525,automobile 103526,truck 103527,automobile 103528,horse 103529,truck 103530,ship 103531,airplane 103532,truck 103533,cat 103534,truck 103535,cat 103536,frog 103537,airplane 103538,horse 103539,horse 103540,horse 103541,bird 103542,airplane 103543,cat 103544,deer 103545,bird 103546,horse 103547,horse 103548,cat 103549,airplane 103550,automobile 103551,horse 103552,airplane 103553,dog 103554,frog 103555,frog 103556,ship 103557,ship 103558,truck 103559,deer 103560,dog 103561,deer 103562,dog 103563,cat 103564,ship 103565,deer 103566,horse 103567,horse 103568,frog 103569,cat 103570,cat 103571,automobile 103572,cat 103573,deer 103574,ship 103575,airplane 103576,dog 103577,bird 103578,bird 103579,airplane 103580,bird 103581,ship 103582,horse 103583,cat 103584,frog 103585,airplane 103586,dog 103587,horse 103588,horse 103589,deer 103590,dog 103591,cat 103592,cat 103593,bird 103594,horse 103595,cat 103596,cat 103597,truck 103598,cat 103599,frog 103600,horse 103601,automobile 103602,deer 103603,frog 103604,horse 103605,deer 103606,ship 103607,dog 103608,frog 103609,cat 103610,cat 103611,frog 103612,truck 103613,frog 103614,bird 103615,cat 103616,frog 103617,automobile 103618,deer 103619,truck 103620,ship 103621,truck 103622,deer 103623,ship 103624,horse 103625,dog 103626,deer 103627,deer 103628,airplane 103629,airplane 103630,truck 103631,horse 103632,airplane 103633,cat 103634,horse 103635,deer 103636,automobile 103637,horse 103638,deer 103639,horse 103640,dog 103641,automobile 103642,cat 103643,truck 103644,dog 103645,bird 103646,frog 103647,horse 103648,automobile 103649,horse 103650,frog 103651,airplane 103652,cat 103653,airplane 103654,bird 103655,deer 103656,ship 103657,dog 103658,cat 103659,automobile 103660,ship 103661,bird 103662,ship 103663,dog 103664,airplane 103665,horse 103666,deer 103667,airplane 103668,deer 103669,cat 103670,frog 103671,horse 103672,dog 103673,deer 103674,airplane 103675,truck 103676,bird 103677,airplane 103678,truck 103679,deer 103680,dog 103681,dog 103682,frog 103683,horse 103684,ship 103685,airplane 103686,cat 103687,bird 103688,bird 103689,frog 103690,automobile 103691,automobile 103692,airplane 103693,automobile 103694,dog 103695,automobile 103696,airplane 103697,truck 103698,dog 103699,truck 103700,horse 103701,deer 103702,horse 103703,deer 103704,cat 103705,ship 103706,cat 103707,cat 103708,airplane 103709,airplane 103710,cat 103711,cat 103712,dog 103713,dog 103714,bird 103715,dog 103716,dog 103717,frog 103718,horse 103719,frog 103720,deer 103721,dog 103722,airplane 103723,truck 103724,frog 103725,frog 103726,frog 103727,bird 103728,dog 103729,deer 103730,horse 103731,horse 103732,deer 103733,deer 103734,automobile 103735,automobile 103736,bird 103737,ship 103738,cat 103739,frog 103740,dog 103741,bird 103742,truck 103743,deer 103744,bird 103745,cat 103746,bird 103747,ship 103748,cat 103749,cat 103750,deer 103751,cat 103752,deer 103753,frog 103754,cat 103755,cat 103756,deer 103757,airplane 103758,cat 103759,airplane 103760,automobile 103761,ship 103762,airplane 103763,truck 103764,airplane 103765,deer 103766,frog 103767,frog 103768,truck 103769,airplane 103770,bird 103771,deer 103772,horse 103773,deer 103774,ship 103775,automobile 103776,truck 103777,bird 103778,deer 103779,ship 103780,cat 103781,deer 103782,deer 103783,deer 103784,ship 103785,dog 103786,deer 103787,deer 103788,deer 103789,dog 103790,cat 103791,bird 103792,frog 103793,truck 103794,cat 103795,horse 103796,deer 103797,ship 103798,truck 103799,airplane 103800,cat 103801,airplane 103802,deer 103803,airplane 103804,dog 103805,horse 103806,deer 103807,dog 103808,automobile 103809,truck 103810,dog 103811,bird 103812,cat 103813,bird 103814,automobile 103815,cat 103816,cat 103817,cat 103818,cat 103819,dog 103820,frog 103821,airplane 103822,airplane 103823,deer 103824,cat 103825,frog 103826,ship 103827,automobile 103828,dog 103829,bird 103830,horse 103831,cat 103832,deer 103833,truck 103834,airplane 103835,horse 103836,bird 103837,deer 103838,cat 103839,cat 103840,horse 103841,deer 103842,airplane 103843,truck 103844,airplane 103845,bird 103846,automobile 103847,deer 103848,horse 103849,cat 103850,bird 103851,dog 103852,automobile 103853,horse 103854,bird 103855,bird 103856,bird 103857,deer 103858,cat 103859,airplane 103860,deer 103861,cat 103862,frog 103863,frog 103864,truck 103865,horse 103866,deer 103867,dog 103868,horse 103869,ship 103870,dog 103871,automobile 103872,dog 103873,cat 103874,horse 103875,truck 103876,bird 103877,horse 103878,cat 103879,airplane 103880,deer 103881,bird 103882,automobile 103883,horse 103884,truck 103885,cat 103886,ship 103887,horse 103888,deer 103889,airplane 103890,automobile 103891,cat 103892,horse 103893,dog 103894,automobile 103895,cat 103896,cat 103897,truck 103898,horse 103899,cat 103900,truck 103901,dog 103902,bird 103903,dog 103904,automobile 103905,automobile 103906,horse 103907,ship 103908,airplane 103909,truck 103910,deer 103911,dog 103912,horse 103913,deer 103914,ship 103915,horse 103916,cat 103917,frog 103918,airplane 103919,automobile 103920,deer 103921,deer 103922,ship 103923,deer 103924,dog 103925,deer 103926,ship 103927,dog 103928,airplane 103929,bird 103930,dog 103931,dog 103932,frog 103933,dog 103934,dog 103935,airplane 103936,ship 103937,airplane 103938,airplane 103939,truck 103940,frog 103941,ship 103942,horse 103943,frog 103944,ship 103945,frog 103946,airplane 103947,frog 103948,dog 103949,ship 103950,cat 103951,truck 103952,deer 103953,truck 103954,ship 103955,cat 103956,dog 103957,ship 103958,cat 103959,horse 103960,airplane 103961,cat 103962,cat 103963,deer 103964,dog 103965,bird 103966,cat 103967,ship 103968,dog 103969,deer 103970,deer 103971,automobile 103972,automobile 103973,horse 103974,cat 103975,deer 103976,truck 103977,frog 103978,frog 103979,horse 103980,dog 103981,cat 103982,dog 103983,deer 103984,dog 103985,automobile 103986,dog 103987,automobile 103988,frog 103989,horse 103990,dog 103991,cat 103992,automobile 103993,horse 103994,automobile 103995,cat 103996,automobile 103997,bird 103998,cat 103999,dog 104000,ship 104001,dog 104002,cat 104003,truck 104004,cat 104005,airplane 104006,automobile 104007,dog 104008,automobile 104009,ship 104010,airplane 104011,dog 104012,truck 104013,bird 104014,bird 104015,dog 104016,frog 104017,deer 104018,bird 104019,truck 104020,cat 104021,dog 104022,dog 104023,deer 104024,horse 104025,horse 104026,deer 104027,horse 104028,cat 104029,truck 104030,ship 104031,bird 104032,cat 104033,frog 104034,truck 104035,cat 104036,cat 104037,frog 104038,bird 104039,truck 104040,horse 104041,bird 104042,bird 104043,truck 104044,bird 104045,frog 104046,deer 104047,ship 104048,bird 104049,truck 104050,dog 104051,horse 104052,dog 104053,horse 104054,airplane 104055,deer 104056,horse 104057,bird 104058,dog 104059,cat 104060,deer 104061,airplane 104062,dog 104063,truck 104064,truck 104065,ship 104066,frog 104067,truck 104068,deer 104069,bird 104070,truck 104071,cat 104072,dog 104073,horse 104074,bird 104075,ship 104076,frog 104077,cat 104078,ship 104079,deer 104080,frog 104081,truck 104082,bird 104083,cat 104084,airplane 104085,frog 104086,dog 104087,frog 104088,airplane 104089,deer 104090,horse 104091,bird 104092,horse 104093,horse 104094,horse 104095,deer 104096,bird 104097,deer 104098,cat 104099,cat 104100,automobile 104101,dog 104102,truck 104103,deer 104104,automobile 104105,horse 104106,dog 104107,airplane 104108,dog 104109,deer 104110,dog 104111,bird 104112,deer 104113,automobile 104114,dog 104115,frog 104116,deer 104117,ship 104118,deer 104119,dog 104120,deer 104121,dog 104122,horse 104123,dog 104124,truck 104125,truck 104126,deer 104127,truck 104128,frog 104129,frog 104130,ship 104131,horse 104132,cat 104133,dog 104134,airplane 104135,automobile 104136,truck 104137,deer 104138,ship 104139,deer 104140,cat 104141,deer 104142,horse 104143,airplane 104144,cat 104145,bird 104146,cat 104147,automobile 104148,cat 104149,deer 104150,bird 104151,frog 104152,airplane 104153,frog 104154,dog 104155,deer 104156,automobile 104157,horse 104158,horse 104159,deer 104160,frog 104161,ship 104162,deer 104163,truck 104164,dog 104165,horse 104166,automobile 104167,automobile 104168,cat 104169,dog 104170,dog 104171,ship 104172,cat 104173,horse 104174,cat 104175,automobile 104176,airplane 104177,bird 104178,cat 104179,deer 104180,deer 104181,bird 104182,automobile 104183,bird 104184,truck 104185,frog 104186,automobile 104187,dog 104188,frog 104189,automobile 104190,horse 104191,frog 104192,frog 104193,deer 104194,bird 104195,frog 104196,dog 104197,horse 104198,horse 104199,ship 104200,frog 104201,cat 104202,frog 104203,automobile 104204,ship 104205,cat 104206,cat 104207,frog 104208,ship 104209,automobile 104210,dog 104211,bird 104212,frog 104213,cat 104214,dog 104215,cat 104216,truck 104217,automobile 104218,cat 104219,dog 104220,horse 104221,automobile 104222,dog 104223,horse 104224,dog 104225,frog 104226,dog 104227,dog 104228,cat 104229,ship 104230,cat 104231,automobile 104232,cat 104233,cat 104234,deer 104235,airplane 104236,bird 104237,truck 104238,truck 104239,cat 104240,deer 104241,ship 104242,deer 104243,truck 104244,truck 104245,airplane 104246,airplane 104247,dog 104248,bird 104249,bird 104250,truck 104251,cat 104252,bird 104253,horse 104254,dog 104255,airplane 104256,frog 104257,frog 104258,horse 104259,truck 104260,dog 104261,horse 104262,automobile 104263,horse 104264,truck 104265,airplane 104266,cat 104267,ship 104268,cat 104269,truck 104270,automobile 104271,dog 104272,frog 104273,deer 104274,truck 104275,ship 104276,ship 104277,deer 104278,truck 104279,frog 104280,deer 104281,bird 104282,bird 104283,dog 104284,cat 104285,automobile 104286,ship 104287,dog 104288,ship 104289,deer 104290,deer 104291,deer 104292,automobile 104293,horse 104294,deer 104295,deer 104296,cat 104297,bird 104298,deer 104299,horse 104300,deer 104301,ship 104302,dog 104303,cat 104304,dog 104305,automobile 104306,dog 104307,horse 104308,cat 104309,frog 104310,deer 104311,deer 104312,bird 104313,bird 104314,dog 104315,ship 104316,dog 104317,horse 104318,bird 104319,truck 104320,frog 104321,airplane 104322,ship 104323,ship 104324,bird 104325,horse 104326,deer 104327,airplane 104328,frog 104329,cat 104330,airplane 104331,cat 104332,automobile 104333,bird 104334,cat 104335,truck 104336,horse 104337,automobile 104338,bird 104339,frog 104340,bird 104341,airplane 104342,airplane 104343,ship 104344,frog 104345,truck 104346,cat 104347,airplane 104348,automobile 104349,truck 104350,truck 104351,cat 104352,truck 104353,truck 104354,cat 104355,dog 104356,airplane 104357,horse 104358,frog 104359,dog 104360,dog 104361,frog 104362,automobile 104363,cat 104364,bird 104365,deer 104366,deer 104367,truck 104368,deer 104369,cat 104370,horse 104371,frog 104372,cat 104373,deer 104374,bird 104375,truck 104376,dog 104377,ship 104378,horse 104379,ship 104380,frog 104381,cat 104382,dog 104383,dog 104384,frog 104385,bird 104386,bird 104387,ship 104388,cat 104389,truck 104390,bird 104391,airplane 104392,ship 104393,ship 104394,truck 104395,cat 104396,cat 104397,airplane 104398,airplane 104399,automobile 104400,cat 104401,dog 104402,cat 104403,horse 104404,deer 104405,horse 104406,horse 104407,cat 104408,cat 104409,cat 104410,ship 104411,horse 104412,ship 104413,cat 104414,cat 104415,horse 104416,frog 104417,cat 104418,dog 104419,ship 104420,deer 104421,ship 104422,cat 104423,cat 104424,horse 104425,cat 104426,dog 104427,ship 104428,frog 104429,dog 104430,deer 104431,cat 104432,deer 104433,bird 104434,deer 104435,cat 104436,horse 104437,airplane 104438,bird 104439,deer 104440,frog 104441,airplane 104442,deer 104443,cat 104444,automobile 104445,deer 104446,automobile 104447,cat 104448,truck 104449,horse 104450,dog 104451,ship 104452,automobile 104453,ship 104454,dog 104455,horse 104456,bird 104457,airplane 104458,deer 104459,dog 104460,horse 104461,automobile 104462,deer 104463,deer 104464,dog 104465,bird 104466,airplane 104467,automobile 104468,automobile 104469,ship 104470,dog 104471,automobile 104472,dog 104473,frog 104474,truck 104475,automobile 104476,cat 104477,dog 104478,automobile 104479,deer 104480,ship 104481,frog 104482,airplane 104483,deer 104484,deer 104485,frog 104486,dog 104487,ship 104488,cat 104489,deer 104490,dog 104491,dog 104492,dog 104493,frog 104494,deer 104495,deer 104496,deer 104497,bird 104498,horse 104499,horse 104500,deer 104501,deer 104502,deer 104503,ship 104504,truck 104505,truck 104506,horse 104507,cat 104508,frog 104509,truck 104510,airplane 104511,frog 104512,frog 104513,deer 104514,cat 104515,cat 104516,automobile 104517,frog 104518,cat 104519,deer 104520,frog 104521,ship 104522,frog 104523,horse 104524,horse 104525,airplane 104526,bird 104527,automobile 104528,dog 104529,deer 104530,frog 104531,bird 104532,automobile 104533,frog 104534,frog 104535,truck 104536,cat 104537,automobile 104538,cat 104539,truck 104540,cat 104541,truck 104542,bird 104543,dog 104544,dog 104545,airplane 104546,truck 104547,horse 104548,automobile 104549,frog 104550,ship 104551,truck 104552,airplane 104553,bird 104554,cat 104555,dog 104556,airplane 104557,automobile 104558,dog 104559,cat 104560,deer 104561,automobile 104562,horse 104563,truck 104564,cat 104565,cat 104566,cat 104567,cat 104568,bird 104569,cat 104570,deer 104571,truck 104572,automobile 104573,frog 104574,ship 104575,bird 104576,dog 104577,frog 104578,dog 104579,bird 104580,horse 104581,airplane 104582,truck 104583,cat 104584,cat 104585,bird 104586,bird 104587,bird 104588,bird 104589,frog 104590,truck 104591,deer 104592,horse 104593,airplane 104594,cat 104595,automobile 104596,frog 104597,truck 104598,ship 104599,truck 104600,frog 104601,deer 104602,automobile 104603,deer 104604,airplane 104605,dog 104606,bird 104607,ship 104608,deer 104609,ship 104610,airplane 104611,ship 104612,frog 104613,airplane 104614,dog 104615,cat 104616,automobile 104617,dog 104618,automobile 104619,dog 104620,bird 104621,airplane 104622,truck 104623,dog 104624,cat 104625,horse 104626,ship 104627,cat 104628,frog 104629,ship 104630,deer 104631,automobile 104632,truck 104633,bird 104634,truck 104635,frog 104636,horse 104637,cat 104638,airplane 104639,deer 104640,bird 104641,automobile 104642,truck 104643,truck 104644,airplane 104645,cat 104646,automobile 104647,cat 104648,automobile 104649,bird 104650,ship 104651,deer 104652,airplane 104653,airplane 104654,dog 104655,deer 104656,truck 104657,frog 104658,automobile 104659,horse 104660,cat 104661,horse 104662,truck 104663,deer 104664,bird 104665,cat 104666,dog 104667,cat 104668,bird 104669,frog 104670,frog 104671,truck 104672,dog 104673,dog 104674,frog 104675,truck 104676,deer 104677,deer 104678,airplane 104679,bird 104680,frog 104681,airplane 104682,deer 104683,truck 104684,dog 104685,bird 104686,deer 104687,truck 104688,deer 104689,airplane 104690,cat 104691,automobile 104692,frog 104693,deer 104694,cat 104695,bird 104696,cat 104697,cat 104698,dog 104699,cat 104700,bird 104701,horse 104702,frog 104703,truck 104704,ship 104705,horse 104706,ship 104707,cat 104708,automobile 104709,automobile 104710,frog 104711,cat 104712,automobile 104713,horse 104714,frog 104715,airplane 104716,ship 104717,truck 104718,deer 104719,horse 104720,dog 104721,bird 104722,ship 104723,deer 104724,airplane 104725,deer 104726,frog 104727,cat 104728,ship 104729,dog 104730,automobile 104731,airplane 104732,deer 104733,frog 104734,truck 104735,truck 104736,dog 104737,cat 104738,truck 104739,frog 104740,truck 104741,horse 104742,horse 104743,bird 104744,horse 104745,dog 104746,deer 104747,airplane 104748,airplane 104749,bird 104750,truck 104751,horse 104752,bird 104753,truck 104754,dog 104755,bird 104756,ship 104757,airplane 104758,frog 104759,frog 104760,deer 104761,dog 104762,deer 104763,automobile 104764,dog 104765,automobile 104766,cat 104767,truck 104768,frog 104769,cat 104770,truck 104771,cat 104772,truck 104773,deer 104774,truck 104775,truck 104776,truck 104777,deer 104778,dog 104779,frog 104780,cat 104781,bird 104782,deer 104783,bird 104784,cat 104785,dog 104786,ship 104787,frog 104788,automobile 104789,bird 104790,deer 104791,cat 104792,bird 104793,bird 104794,truck 104795,cat 104796,bird 104797,truck 104798,bird 104799,airplane 104800,truck 104801,frog 104802,horse 104803,truck 104804,dog 104805,truck 104806,deer 104807,deer 104808,ship 104809,frog 104810,truck 104811,frog 104812,horse 104813,airplane 104814,dog 104815,truck 104816,dog 104817,dog 104818,automobile 104819,bird 104820,deer 104821,bird 104822,cat 104823,deer 104824,frog 104825,automobile 104826,automobile 104827,horse 104828,deer 104829,automobile 104830,truck 104831,cat 104832,automobile 104833,truck 104834,frog 104835,horse 104836,ship 104837,deer 104838,deer 104839,airplane 104840,cat 104841,airplane 104842,deer 104843,bird 104844,bird 104845,horse 104846,automobile 104847,frog 104848,dog 104849,bird 104850,airplane 104851,airplane 104852,automobile 104853,horse 104854,cat 104855,horse 104856,deer 104857,deer 104858,dog 104859,frog 104860,frog 104861,cat 104862,truck 104863,truck 104864,truck 104865,deer 104866,dog 104867,ship 104868,horse 104869,deer 104870,truck 104871,bird 104872,automobile 104873,horse 104874,frog 104875,cat 104876,deer 104877,deer 104878,deer 104879,deer 104880,truck 104881,bird 104882,deer 104883,dog 104884,dog 104885,frog 104886,bird 104887,horse 104888,bird 104889,dog 104890,horse 104891,cat 104892,dog 104893,automobile 104894,cat 104895,cat 104896,truck 104897,cat 104898,bird 104899,frog 104900,automobile 104901,automobile 104902,truck 104903,deer 104904,deer 104905,horse 104906,cat 104907,frog 104908,ship 104909,dog 104910,dog 104911,truck 104912,automobile 104913,airplane 104914,deer 104915,cat 104916,deer 104917,horse 104918,deer 104919,horse 104920,automobile 104921,cat 104922,dog 104923,deer 104924,airplane 104925,horse 104926,frog 104927,deer 104928,horse 104929,ship 104930,truck 104931,frog 104932,truck 104933,horse 104934,dog 104935,automobile 104936,airplane 104937,truck 104938,deer 104939,dog 104940,bird 104941,cat 104942,truck 104943,truck 104944,frog 104945,airplane 104946,frog 104947,frog 104948,bird 104949,ship 104950,cat 104951,airplane 104952,truck 104953,horse 104954,airplane 104955,airplane 104956,automobile 104957,deer 104958,cat 104959,airplane 104960,deer 104961,bird 104962,airplane 104963,frog 104964,frog 104965,frog 104966,frog 104967,airplane 104968,truck 104969,deer 104970,frog 104971,airplane 104972,truck 104973,cat 104974,ship 104975,airplane 104976,ship 104977,bird 104978,truck 104979,frog 104980,truck 104981,deer 104982,airplane 104983,airplane 104984,frog 104985,horse 104986,bird 104987,ship 104988,cat 104989,bird 104990,dog 104991,deer 104992,horse 104993,frog 104994,automobile 104995,truck 104996,dog 104997,frog 104998,bird 104999,dog 105000,frog 105001,truck 105002,dog 105003,bird 105004,horse 105005,horse 105006,frog 105007,truck 105008,cat 105009,frog 105010,deer 105011,dog 105012,horse 105013,dog 105014,deer 105015,deer 105016,frog 105017,deer 105018,frog 105019,cat 105020,cat 105021,ship 105022,dog 105023,deer 105024,airplane 105025,cat 105026,deer 105027,horse 105028,horse 105029,horse 105030,cat 105031,deer 105032,airplane 105033,automobile 105034,cat 105035,horse 105036,horse 105037,airplane 105038,frog 105039,dog 105040,frog 105041,horse 105042,ship 105043,deer 105044,horse 105045,truck 105046,frog 105047,cat 105048,cat 105049,airplane 105050,automobile 105051,bird 105052,bird 105053,bird 105054,frog 105055,frog 105056,deer 105057,frog 105058,ship 105059,deer 105060,bird 105061,cat 105062,deer 105063,frog 105064,horse 105065,horse 105066,frog 105067,cat 105068,truck 105069,truck 105070,automobile 105071,ship 105072,bird 105073,cat 105074,airplane 105075,ship 105076,deer 105077,dog 105078,frog 105079,horse 105080,automobile 105081,horse 105082,deer 105083,truck 105084,ship 105085,frog 105086,truck 105087,cat 105088,deer 105089,truck 105090,frog 105091,airplane 105092,truck 105093,bird 105094,automobile 105095,dog 105096,truck 105097,cat 105098,bird 105099,ship 105100,dog 105101,frog 105102,deer 105103,dog 105104,truck 105105,deer 105106,deer 105107,truck 105108,dog 105109,deer 105110,deer 105111,ship 105112,truck 105113,automobile 105114,dog 105115,dog 105116,truck 105117,bird 105118,automobile 105119,horse 105120,truck 105121,frog 105122,deer 105123,truck 105124,truck 105125,automobile 105126,bird 105127,cat 105128,horse 105129,cat 105130,cat 105131,cat 105132,deer 105133,frog 105134,horse 105135,truck 105136,truck 105137,horse 105138,truck 105139,automobile 105140,horse 105141,automobile 105142,frog 105143,truck 105144,horse 105145,bird 105146,horse 105147,truck 105148,automobile 105149,truck 105150,dog 105151,cat 105152,bird 105153,dog 105154,truck 105155,horse 105156,frog 105157,horse 105158,cat 105159,frog 105160,deer 105161,ship 105162,automobile 105163,cat 105164,automobile 105165,automobile 105166,dog 105167,deer 105168,deer 105169,dog 105170,deer 105171,bird 105172,cat 105173,horse 105174,airplane 105175,automobile 105176,ship 105177,dog 105178,cat 105179,deer 105180,frog 105181,dog 105182,airplane 105183,bird 105184,bird 105185,cat 105186,bird 105187,dog 105188,deer 105189,automobile 105190,truck 105191,ship 105192,deer 105193,deer 105194,bird 105195,cat 105196,horse 105197,frog 105198,bird 105199,bird 105200,horse 105201,bird 105202,dog 105203,dog 105204,dog 105205,automobile 105206,airplane 105207,horse 105208,deer 105209,cat 105210,bird 105211,deer 105212,frog 105213,airplane 105214,truck 105215,automobile 105216,deer 105217,cat 105218,automobile 105219,ship 105220,ship 105221,deer 105222,cat 105223,dog 105224,automobile 105225,truck 105226,ship 105227,deer 105228,frog 105229,cat 105230,horse 105231,automobile 105232,truck 105233,cat 105234,cat 105235,horse 105236,frog 105237,bird 105238,frog 105239,deer 105240,deer 105241,bird 105242,cat 105243,deer 105244,frog 105245,ship 105246,deer 105247,ship 105248,cat 105249,airplane 105250,dog 105251,bird 105252,deer 105253,bird 105254,ship 105255,horse 105256,deer 105257,bird 105258,truck 105259,truck 105260,deer 105261,deer 105262,frog 105263,frog 105264,horse 105265,automobile 105266,ship 105267,ship 105268,cat 105269,truck 105270,automobile 105271,ship 105272,deer 105273,deer 105274,deer 105275,frog 105276,frog 105277,bird 105278,truck 105279,dog 105280,automobile 105281,cat 105282,deer 105283,cat 105284,horse 105285,cat 105286,ship 105287,cat 105288,airplane 105289,frog 105290,deer 105291,cat 105292,horse 105293,dog 105294,deer 105295,truck 105296,ship 105297,dog 105298,bird 105299,truck 105300,dog 105301,deer 105302,deer 105303,ship 105304,truck 105305,frog 105306,automobile 105307,deer 105308,dog 105309,horse 105310,bird 105311,automobile 105312,cat 105313,deer 105314,deer 105315,deer 105316,horse 105317,frog 105318,ship 105319,bird 105320,cat 105321,horse 105322,truck 105323,truck 105324,cat 105325,frog 105326,ship 105327,truck 105328,truck 105329,horse 105330,deer 105331,deer 105332,dog 105333,bird 105334,deer 105335,automobile 105336,bird 105337,ship 105338,frog 105339,bird 105340,ship 105341,airplane 105342,deer 105343,truck 105344,cat 105345,horse 105346,truck 105347,horse 105348,dog 105349,deer 105350,truck 105351,dog 105352,truck 105353,airplane 105354,dog 105355,ship 105356,truck 105357,cat 105358,cat 105359,cat 105360,airplane 105361,horse 105362,dog 105363,truck 105364,automobile 105365,deer 105366,dog 105367,cat 105368,airplane 105369,horse 105370,cat 105371,dog 105372,horse 105373,deer 105374,frog 105375,truck 105376,cat 105377,dog 105378,deer 105379,bird 105380,cat 105381,ship 105382,frog 105383,truck 105384,deer 105385,bird 105386,bird 105387,airplane 105388,frog 105389,bird 105390,deer 105391,truck 105392,frog 105393,airplane 105394,deer 105395,deer 105396,airplane 105397,deer 105398,ship 105399,cat 105400,ship 105401,airplane 105402,bird 105403,horse 105404,automobile 105405,truck 105406,frog 105407,automobile 105408,ship 105409,horse 105410,deer 105411,bird 105412,horse 105413,automobile 105414,deer 105415,deer 105416,deer 105417,cat 105418,dog 105419,truck 105420,bird 105421,frog 105422,deer 105423,cat 105424,horse 105425,truck 105426,dog 105427,frog 105428,frog 105429,truck 105430,cat 105431,horse 105432,frog 105433,cat 105434,truck 105435,cat 105436,truck 105437,deer 105438,horse 105439,frog 105440,dog 105441,ship 105442,dog 105443,bird 105444,ship 105445,truck 105446,ship 105447,cat 105448,dog 105449,frog 105450,truck 105451,airplane 105452,bird 105453,frog 105454,airplane 105455,horse 105456,ship 105457,frog 105458,horse 105459,horse 105460,frog 105461,airplane 105462,automobile 105463,airplane 105464,ship 105465,dog 105466,cat 105467,bird 105468,airplane 105469,frog 105470,cat 105471,truck 105472,automobile 105473,bird 105474,bird 105475,dog 105476,dog 105477,cat 105478,cat 105479,bird 105480,frog 105481,ship 105482,cat 105483,cat 105484,automobile 105485,automobile 105486,truck 105487,deer 105488,frog 105489,deer 105490,deer 105491,ship 105492,deer 105493,frog 105494,cat 105495,automobile 105496,dog 105497,cat 105498,bird 105499,cat 105500,bird 105501,dog 105502,ship 105503,frog 105504,truck 105505,deer 105506,deer 105507,horse 105508,frog 105509,horse 105510,airplane 105511,horse 105512,horse 105513,bird 105514,airplane 105515,truck 105516,automobile 105517,airplane 105518,bird 105519,truck 105520,frog 105521,horse 105522,dog 105523,airplane 105524,frog 105525,airplane 105526,ship 105527,cat 105528,airplane 105529,deer 105530,ship 105531,deer 105532,dog 105533,cat 105534,ship 105535,cat 105536,deer 105537,deer 105538,ship 105539,horse 105540,horse 105541,truck 105542,deer 105543,horse 105544,dog 105545,cat 105546,horse 105547,deer 105548,cat 105549,cat 105550,automobile 105551,cat 105552,automobile 105553,cat 105554,ship 105555,bird 105556,ship 105557,airplane 105558,deer 105559,frog 105560,deer 105561,bird 105562,bird 105563,truck 105564,cat 105565,airplane 105566,deer 105567,airplane 105568,deer 105569,cat 105570,cat 105571,ship 105572,dog 105573,truck 105574,truck 105575,cat 105576,horse 105577,truck 105578,dog 105579,cat 105580,airplane 105581,deer 105582,airplane 105583,bird 105584,cat 105585,ship 105586,ship 105587,automobile 105588,automobile 105589,deer 105590,ship 105591,frog 105592,cat 105593,automobile 105594,truck 105595,ship 105596,truck 105597,cat 105598,ship 105599,deer 105600,cat 105601,frog 105602,truck 105603,frog 105604,cat 105605,frog 105606,bird 105607,horse 105608,automobile 105609,ship 105610,frog 105611,bird 105612,ship 105613,deer 105614,deer 105615,truck 105616,ship 105617,deer 105618,frog 105619,airplane 105620,airplane 105621,frog 105622,horse 105623,ship 105624,ship 105625,truck 105626,ship 105627,dog 105628,truck 105629,bird 105630,bird 105631,frog 105632,dog 105633,cat 105634,cat 105635,truck 105636,cat 105637,cat 105638,cat 105639,airplane 105640,deer 105641,truck 105642,deer 105643,cat 105644,frog 105645,deer 105646,frog 105647,truck 105648,automobile 105649,bird 105650,airplane 105651,deer 105652,airplane 105653,dog 105654,automobile 105655,truck 105656,horse 105657,dog 105658,horse 105659,ship 105660,cat 105661,cat 105662,frog 105663,deer 105664,bird 105665,bird 105666,bird 105667,dog 105668,truck 105669,deer 105670,cat 105671,cat 105672,ship 105673,truck 105674,frog 105675,deer 105676,automobile 105677,bird 105678,truck 105679,airplane 105680,truck 105681,ship 105682,dog 105683,horse 105684,frog 105685,automobile 105686,frog 105687,frog 105688,cat 105689,dog 105690,truck 105691,ship 105692,frog 105693,bird 105694,cat 105695,dog 105696,bird 105697,ship 105698,frog 105699,cat 105700,truck 105701,dog 105702,truck 105703,cat 105704,deer 105705,frog 105706,bird 105707,frog 105708,dog 105709,cat 105710,truck 105711,deer 105712,horse 105713,frog 105714,frog 105715,truck 105716,ship 105717,deer 105718,ship 105719,bird 105720,automobile 105721,airplane 105722,automobile 105723,bird 105724,dog 105725,cat 105726,airplane 105727,cat 105728,horse 105729,dog 105730,deer 105731,airplane 105732,cat 105733,cat 105734,deer 105735,bird 105736,ship 105737,cat 105738,cat 105739,deer 105740,dog 105741,ship 105742,automobile 105743,deer 105744,frog 105745,airplane 105746,truck 105747,bird 105748,cat 105749,frog 105750,ship 105751,frog 105752,bird 105753,airplane 105754,frog 105755,frog 105756,bird 105757,dog 105758,deer 105759,ship 105760,bird 105761,automobile 105762,cat 105763,automobile 105764,dog 105765,deer 105766,cat 105767,frog 105768,dog 105769,horse 105770,bird 105771,frog 105772,cat 105773,horse 105774,dog 105775,truck 105776,airplane 105777,truck 105778,automobile 105779,dog 105780,horse 105781,frog 105782,ship 105783,deer 105784,truck 105785,dog 105786,dog 105787,horse 105788,airplane 105789,airplane 105790,automobile 105791,ship 105792,cat 105793,truck 105794,truck 105795,deer 105796,cat 105797,deer 105798,cat 105799,cat 105800,dog 105801,truck 105802,frog 105803,truck 105804,horse 105805,horse 105806,truck 105807,cat 105808,truck 105809,horse 105810,truck 105811,truck 105812,automobile 105813,cat 105814,deer 105815,frog 105816,automobile 105817,automobile 105818,automobile 105819,cat 105820,ship 105821,ship 105822,airplane 105823,truck 105824,frog 105825,automobile 105826,automobile 105827,bird 105828,horse 105829,ship 105830,dog 105831,frog 105832,airplane 105833,bird 105834,truck 105835,truck 105836,bird 105837,frog 105838,deer 105839,airplane 105840,horse 105841,frog 105842,bird 105843,ship 105844,dog 105845,truck 105846,cat 105847,ship 105848,airplane 105849,bird 105850,dog 105851,ship 105852,frog 105853,deer 105854,airplane 105855,frog 105856,dog 105857,truck 105858,horse 105859,ship 105860,automobile 105861,cat 105862,airplane 105863,cat 105864,cat 105865,cat 105866,airplane 105867,airplane 105868,ship 105869,ship 105870,airplane 105871,truck 105872,frog 105873,frog 105874,automobile 105875,ship 105876,horse 105877,automobile 105878,cat 105879,cat 105880,bird 105881,airplane 105882,airplane 105883,deer 105884,bird 105885,bird 105886,deer 105887,airplane 105888,automobile 105889,cat 105890,frog 105891,automobile 105892,bird 105893,dog 105894,deer 105895,cat 105896,frog 105897,horse 105898,airplane 105899,horse 105900,dog 105901,dog 105902,deer 105903,dog 105904,dog 105905,truck 105906,cat 105907,horse 105908,automobile 105909,frog 105910,ship 105911,horse 105912,deer 105913,horse 105914,bird 105915,ship 105916,horse 105917,dog 105918,deer 105919,deer 105920,airplane 105921,truck 105922,cat 105923,horse 105924,cat 105925,horse 105926,airplane 105927,airplane 105928,dog 105929,deer 105930,ship 105931,automobile 105932,cat 105933,deer 105934,dog 105935,horse 105936,horse 105937,deer 105938,bird 105939,horse 105940,cat 105941,frog 105942,cat 105943,ship 105944,ship 105945,automobile 105946,cat 105947,deer 105948,cat 105949,cat 105950,cat 105951,automobile 105952,deer 105953,horse 105954,cat 105955,frog 105956,deer 105957,truck 105958,ship 105959,airplane 105960,truck 105961,automobile 105962,airplane 105963,deer 105964,dog 105965,frog 105966,dog 105967,frog 105968,automobile 105969,frog 105970,ship 105971,bird 105972,frog 105973,airplane 105974,cat 105975,dog 105976,horse 105977,cat 105978,horse 105979,cat 105980,frog 105981,airplane 105982,cat 105983,dog 105984,ship 105985,airplane 105986,dog 105987,ship 105988,frog 105989,horse 105990,automobile 105991,horse 105992,ship 105993,dog 105994,dog 105995,horse 105996,frog 105997,dog 105998,ship 105999,frog 106000,bird 106001,cat 106002,automobile 106003,dog 106004,airplane 106005,frog 106006,frog 106007,truck 106008,airplane 106009,cat 106010,bird 106011,cat 106012,cat 106013,bird 106014,frog 106015,deer 106016,dog 106017,automobile 106018,frog 106019,airplane 106020,dog 106021,automobile 106022,dog 106023,cat 106024,deer 106025,frog 106026,frog 106027,airplane 106028,truck 106029,horse 106030,ship 106031,truck 106032,deer 106033,horse 106034,frog 106035,deer 106036,deer 106037,cat 106038,bird 106039,frog 106040,horse 106041,frog 106042,frog 106043,deer 106044,airplane 106045,automobile 106046,ship 106047,deer 106048,deer 106049,deer 106050,automobile 106051,horse 106052,bird 106053,frog 106054,deer 106055,bird 106056,truck 106057,automobile 106058,horse 106059,bird 106060,bird 106061,truck 106062,horse 106063,truck 106064,dog 106065,dog 106066,truck 106067,frog 106068,deer 106069,frog 106070,automobile 106071,ship 106072,dog 106073,horse 106074,truck 106075,deer 106076,truck 106077,deer 106078,airplane 106079,bird 106080,dog 106081,ship 106082,bird 106083,airplane 106084,automobile 106085,automobile 106086,truck 106087,deer 106088,cat 106089,automobile 106090,horse 106091,horse 106092,truck 106093,deer 106094,bird 106095,horse 106096,deer 106097,deer 106098,deer 106099,frog 106100,dog 106101,deer 106102,ship 106103,cat 106104,horse 106105,airplane 106106,automobile 106107,ship 106108,dog 106109,horse 106110,dog 106111,horse 106112,bird 106113,dog 106114,horse 106115,truck 106116,bird 106117,dog 106118,automobile 106119,truck 106120,truck 106121,deer 106122,deer 106123,dog 106124,cat 106125,cat 106126,deer 106127,automobile 106128,deer 106129,bird 106130,bird 106131,ship 106132,dog 106133,bird 106134,automobile 106135,horse 106136,horse 106137,cat 106138,airplane 106139,deer 106140,dog 106141,ship 106142,horse 106143,truck 106144,deer 106145,truck 106146,bird 106147,cat 106148,truck 106149,airplane 106150,automobile 106151,deer 106152,airplane 106153,frog 106154,automobile 106155,dog 106156,bird 106157,dog 106158,ship 106159,horse 106160,frog 106161,automobile 106162,deer 106163,automobile 106164,truck 106165,cat 106166,frog 106167,airplane 106168,bird 106169,dog 106170,frog 106171,bird 106172,horse 106173,airplane 106174,dog 106175,frog 106176,ship 106177,dog 106178,horse 106179,dog 106180,cat 106181,horse 106182,airplane 106183,frog 106184,truck 106185,truck 106186,deer 106187,ship 106188,ship 106189,ship 106190,horse 106191,airplane 106192,cat 106193,airplane 106194,deer 106195,automobile 106196,cat 106197,cat 106198,frog 106199,automobile 106200,cat 106201,cat 106202,deer 106203,cat 106204,truck 106205,dog 106206,bird 106207,ship 106208,bird 106209,dog 106210,horse 106211,frog 106212,airplane 106213,frog 106214,ship 106215,dog 106216,horse 106217,cat 106218,horse 106219,horse 106220,automobile 106221,ship 106222,deer 106223,airplane 106224,dog 106225,deer 106226,deer 106227,dog 106228,ship 106229,airplane 106230,automobile 106231,frog 106232,cat 106233,airplane 106234,ship 106235,airplane 106236,deer 106237,horse 106238,frog 106239,truck 106240,cat 106241,cat 106242,dog 106243,horse 106244,ship 106245,ship 106246,deer 106247,cat 106248,cat 106249,frog 106250,frog 106251,horse 106252,dog 106253,horse 106254,cat 106255,deer 106256,truck 106257,airplane 106258,cat 106259,frog 106260,ship 106261,bird 106262,cat 106263,cat 106264,frog 106265,bird 106266,dog 106267,bird 106268,bird 106269,ship 106270,deer 106271,cat 106272,frog 106273,automobile 106274,frog 106275,cat 106276,truck 106277,bird 106278,cat 106279,horse 106280,deer 106281,cat 106282,ship 106283,frog 106284,airplane 106285,cat 106286,frog 106287,cat 106288,truck 106289,truck 106290,deer 106291,frog 106292,cat 106293,dog 106294,automobile 106295,ship 106296,bird 106297,deer 106298,bird 106299,frog 106300,cat 106301,frog 106302,ship 106303,dog 106304,dog 106305,frog 106306,frog 106307,truck 106308,deer 106309,horse 106310,frog 106311,airplane 106312,cat 106313,bird 106314,deer 106315,deer 106316,airplane 106317,deer 106318,frog 106319,ship 106320,dog 106321,dog 106322,dog 106323,deer 106324,automobile 106325,horse 106326,deer 106327,truck 106328,airplane 106329,dog 106330,horse 106331,frog 106332,frog 106333,dog 106334,frog 106335,truck 106336,dog 106337,ship 106338,frog 106339,ship 106340,deer 106341,frog 106342,frog 106343,truck 106344,truck 106345,airplane 106346,horse 106347,cat 106348,cat 106349,deer 106350,deer 106351,bird 106352,truck 106353,frog 106354,deer 106355,deer 106356,bird 106357,deer 106358,cat 106359,automobile 106360,frog 106361,frog 106362,horse 106363,ship 106364,deer 106365,dog 106366,dog 106367,bird 106368,ship 106369,frog 106370,dog 106371,cat 106372,truck 106373,truck 106374,dog 106375,horse 106376,horse 106377,ship 106378,deer 106379,deer 106380,cat 106381,deer 106382,frog 106383,deer 106384,cat 106385,cat 106386,automobile 106387,truck 106388,ship 106389,bird 106390,horse 106391,cat 106392,bird 106393,horse 106394,airplane 106395,bird 106396,bird 106397,dog 106398,dog 106399,bird 106400,horse 106401,automobile 106402,airplane 106403,deer 106404,horse 106405,truck 106406,dog 106407,cat 106408,dog 106409,frog 106410,deer 106411,dog 106412,ship 106413,horse 106414,ship 106415,deer 106416,automobile 106417,automobile 106418,deer 106419,cat 106420,truck 106421,deer 106422,horse 106423,airplane 106424,frog 106425,deer 106426,horse 106427,dog 106428,truck 106429,ship 106430,bird 106431,automobile 106432,automobile 106433,truck 106434,truck 106435,cat 106436,deer 106437,frog 106438,truck 106439,cat 106440,cat 106441,frog 106442,airplane 106443,horse 106444,airplane 106445,deer 106446,deer 106447,horse 106448,truck 106449,horse 106450,automobile 106451,horse 106452,deer 106453,bird 106454,deer 106455,frog 106456,deer 106457,dog 106458,horse 106459,automobile 106460,truck 106461,dog 106462,horse 106463,cat 106464,truck 106465,dog 106466,deer 106467,deer 106468,dog 106469,ship 106470,horse 106471,dog 106472,truck 106473,frog 106474,ship 106475,deer 106476,frog 106477,truck 106478,bird 106479,cat 106480,automobile 106481,horse 106482,automobile 106483,deer 106484,frog 106485,automobile 106486,bird 106487,dog 106488,truck 106489,deer 106490,automobile 106491,horse 106492,cat 106493,bird 106494,bird 106495,truck 106496,horse 106497,cat 106498,airplane 106499,horse 106500,frog 106501,dog 106502,frog 106503,horse 106504,automobile 106505,cat 106506,ship 106507,ship 106508,deer 106509,automobile 106510,truck 106511,automobile 106512,frog 106513,horse 106514,cat 106515,ship 106516,automobile 106517,deer 106518,deer 106519,frog 106520,bird 106521,horse 106522,automobile 106523,deer 106524,cat 106525,airplane 106526,deer 106527,dog 106528,truck 106529,deer 106530,truck 106531,deer 106532,dog 106533,cat 106534,frog 106535,truck 106536,automobile 106537,cat 106538,frog 106539,cat 106540,cat 106541,frog 106542,horse 106543,deer 106544,ship 106545,truck 106546,dog 106547,automobile 106548,deer 106549,truck 106550,truck 106551,frog 106552,deer 106553,cat 106554,truck 106555,frog 106556,frog 106557,ship 106558,horse 106559,ship 106560,horse 106561,horse 106562,cat 106563,cat 106564,cat 106565,deer 106566,cat 106567,horse 106568,cat 106569,frog 106570,horse 106571,horse 106572,frog 106573,deer 106574,ship 106575,airplane 106576,deer 106577,deer 106578,airplane 106579,ship 106580,cat 106581,deer 106582,cat 106583,deer 106584,truck 106585,frog 106586,automobile 106587,cat 106588,cat 106589,deer 106590,cat 106591,horse 106592,airplane 106593,deer 106594,bird 106595,truck 106596,truck 106597,horse 106598,frog 106599,ship 106600,bird 106601,deer 106602,cat 106603,airplane 106604,automobile 106605,ship 106606,automobile 106607,ship 106608,truck 106609,bird 106610,dog 106611,dog 106612,bird 106613,horse 106614,bird 106615,cat 106616,cat 106617,ship 106618,deer 106619,frog 106620,horse 106621,automobile 106622,dog 106623,dog 106624,horse 106625,cat 106626,cat 106627,cat 106628,cat 106629,truck 106630,horse 106631,truck 106632,horse 106633,dog 106634,cat 106635,truck 106636,airplane 106637,horse 106638,deer 106639,truck 106640,automobile 106641,frog 106642,automobile 106643,automobile 106644,deer 106645,automobile 106646,automobile 106647,frog 106648,horse 106649,horse 106650,deer 106651,ship 106652,automobile 106653,horse 106654,horse 106655,ship 106656,airplane 106657,bird 106658,bird 106659,frog 106660,bird 106661,ship 106662,bird 106663,ship 106664,horse 106665,horse 106666,truck 106667,bird 106668,ship 106669,automobile 106670,deer 106671,frog 106672,cat 106673,deer 106674,ship 106675,cat 106676,truck 106677,deer 106678,airplane 106679,dog 106680,dog 106681,cat 106682,truck 106683,cat 106684,horse 106685,bird 106686,frog 106687,horse 106688,frog 106689,deer 106690,horse 106691,airplane 106692,bird 106693,deer 106694,bird 106695,bird 106696,bird 106697,airplane 106698,horse 106699,deer 106700,horse 106701,horse 106702,dog 106703,airplane 106704,frog 106705,deer 106706,truck 106707,dog 106708,truck 106709,automobile 106710,bird 106711,cat 106712,dog 106713,horse 106714,truck 106715,frog 106716,deer 106717,truck 106718,frog 106719,ship 106720,cat 106721,dog 106722,cat 106723,automobile 106724,deer 106725,bird 106726,cat 106727,truck 106728,automobile 106729,dog 106730,cat 106731,frog 106732,cat 106733,deer 106734,deer 106735,frog 106736,airplane 106737,automobile 106738,airplane 106739,truck 106740,ship 106741,frog 106742,horse 106743,deer 106744,dog 106745,deer 106746,cat 106747,bird 106748,truck 106749,frog 106750,truck 106751,bird 106752,truck 106753,ship 106754,cat 106755,truck 106756,deer 106757,bird 106758,cat 106759,airplane 106760,frog 106761,airplane 106762,truck 106763,cat 106764,truck 106765,horse 106766,truck 106767,automobile 106768,cat 106769,bird 106770,automobile 106771,automobile 106772,dog 106773,deer 106774,deer 106775,deer 106776,truck 106777,truck 106778,truck 106779,truck 106780,ship 106781,dog 106782,dog 106783,truck 106784,deer 106785,cat 106786,ship 106787,cat 106788,airplane 106789,bird 106790,airplane 106791,airplane 106792,deer 106793,bird 106794,ship 106795,horse 106796,cat 106797,cat 106798,horse 106799,automobile 106800,cat 106801,ship 106802,frog 106803,horse 106804,dog 106805,dog 106806,frog 106807,airplane 106808,bird 106809,cat 106810,frog 106811,frog 106812,truck 106813,deer 106814,ship 106815,cat 106816,airplane 106817,cat 106818,ship 106819,horse 106820,frog 106821,dog 106822,deer 106823,airplane 106824,cat 106825,cat 106826,airplane 106827,truck 106828,frog 106829,bird 106830,horse 106831,dog 106832,deer 106833,automobile 106834,deer 106835,ship 106836,bird 106837,frog 106838,deer 106839,bird 106840,deer 106841,deer 106842,deer 106843,frog 106844,cat 106845,frog 106846,horse 106847,frog 106848,automobile 106849,bird 106850,bird 106851,bird 106852,frog 106853,ship 106854,frog 106855,ship 106856,cat 106857,horse 106858,frog 106859,deer 106860,cat 106861,ship 106862,horse 106863,automobile 106864,cat 106865,ship 106866,truck 106867,frog 106868,dog 106869,cat 106870,ship 106871,frog 106872,horse 106873,frog 106874,horse 106875,horse 106876,dog 106877,bird 106878,deer 106879,dog 106880,airplane 106881,bird 106882,frog 106883,horse 106884,frog 106885,truck 106886,truck 106887,frog 106888,deer 106889,airplane 106890,truck 106891,deer 106892,cat 106893,truck 106894,deer 106895,ship 106896,dog 106897,frog 106898,automobile 106899,truck 106900,deer 106901,frog 106902,dog 106903,cat 106904,airplane 106905,automobile 106906,airplane 106907,automobile 106908,cat 106909,cat 106910,deer 106911,airplane 106912,horse 106913,dog 106914,cat 106915,bird 106916,frog 106917,deer 106918,dog 106919,truck 106920,dog 106921,deer 106922,deer 106923,bird 106924,automobile 106925,dog 106926,bird 106927,frog 106928,deer 106929,horse 106930,dog 106931,dog 106932,automobile 106933,frog 106934,frog 106935,frog 106936,bird 106937,frog 106938,frog 106939,airplane 106940,horse 106941,truck 106942,cat 106943,bird 106944,ship 106945,cat 106946,horse 106947,dog 106948,horse 106949,airplane 106950,dog 106951,frog 106952,automobile 106953,frog 106954,bird 106955,cat 106956,ship 106957,frog 106958,deer 106959,truck 106960,dog 106961,deer 106962,airplane 106963,frog 106964,horse 106965,deer 106966,horse 106967,deer 106968,bird 106969,deer 106970,deer 106971,bird 106972,airplane 106973,ship 106974,deer 106975,deer 106976,airplane 106977,frog 106978,cat 106979,ship 106980,cat 106981,bird 106982,airplane 106983,airplane 106984,frog 106985,deer 106986,automobile 106987,airplane 106988,truck 106989,cat 106990,deer 106991,dog 106992,cat 106993,dog 106994,airplane 106995,automobile 106996,frog 106997,frog 106998,deer 106999,ship 107000,cat 107001,ship 107002,frog 107003,frog 107004,deer 107005,cat 107006,horse 107007,truck 107008,deer 107009,frog 107010,airplane 107011,airplane 107012,cat 107013,dog 107014,truck 107015,ship 107016,truck 107017,frog 107018,ship 107019,deer 107020,airplane 107021,ship 107022,cat 107023,cat 107024,bird 107025,airplane 107026,ship 107027,truck 107028,dog 107029,horse 107030,dog 107031,truck 107032,bird 107033,horse 107034,frog 107035,cat 107036,frog 107037,automobile 107038,bird 107039,airplane 107040,airplane 107041,cat 107042,dog 107043,frog 107044,dog 107045,deer 107046,airplane 107047,truck 107048,airplane 107049,deer 107050,frog 107051,automobile 107052,dog 107053,horse 107054,dog 107055,truck 107056,deer 107057,ship 107058,ship 107059,truck 107060,dog 107061,airplane 107062,frog 107063,deer 107064,deer 107065,cat 107066,horse 107067,bird 107068,deer 107069,horse 107070,horse 107071,truck 107072,cat 107073,deer 107074,deer 107075,ship 107076,cat 107077,deer 107078,frog 107079,cat 107080,horse 107081,deer 107082,dog 107083,dog 107084,ship 107085,frog 107086,truck 107087,dog 107088,truck 107089,dog 107090,airplane 107091,truck 107092,airplane 107093,deer 107094,truck 107095,frog 107096,horse 107097,bird 107098,ship 107099,airplane 107100,truck 107101,horse 107102,bird 107103,ship 107104,deer 107105,horse 107106,ship 107107,bird 107108,truck 107109,truck 107110,ship 107111,cat 107112,truck 107113,truck 107114,automobile 107115,airplane 107116,horse 107117,ship 107118,truck 107119,airplane 107120,dog 107121,dog 107122,frog 107123,truck 107124,bird 107125,frog 107126,horse 107127,frog 107128,horse 107129,frog 107130,horse 107131,cat 107132,horse 107133,ship 107134,dog 107135,automobile 107136,dog 107137,bird 107138,horse 107139,deer 107140,cat 107141,deer 107142,truck 107143,truck 107144,truck 107145,airplane 107146,deer 107147,truck 107148,truck 107149,cat 107150,horse 107151,automobile 107152,horse 107153,horse 107154,truck 107155,dog 107156,dog 107157,truck 107158,dog 107159,deer 107160,cat 107161,bird 107162,truck 107163,ship 107164,truck 107165,horse 107166,ship 107167,cat 107168,deer 107169,dog 107170,airplane 107171,ship 107172,truck 107173,cat 107174,truck 107175,automobile 107176,cat 107177,ship 107178,truck 107179,dog 107180,airplane 107181,frog 107182,deer 107183,frog 107184,cat 107185,cat 107186,dog 107187,airplane 107188,ship 107189,automobile 107190,airplane 107191,automobile 107192,airplane 107193,dog 107194,automobile 107195,truck 107196,deer 107197,airplane 107198,airplane 107199,airplane 107200,frog 107201,cat 107202,frog 107203,bird 107204,horse 107205,ship 107206,automobile 107207,truck 107208,truck 107209,deer 107210,ship 107211,frog 107212,truck 107213,cat 107214,dog 107215,horse 107216,horse 107217,frog 107218,horse 107219,dog 107220,cat 107221,cat 107222,automobile 107223,cat 107224,dog 107225,dog 107226,truck 107227,horse 107228,frog 107229,cat 107230,dog 107231,automobile 107232,frog 107233,airplane 107234,frog 107235,cat 107236,truck 107237,bird 107238,cat 107239,cat 107240,automobile 107241,truck 107242,cat 107243,deer 107244,deer 107245,bird 107246,dog 107247,truck 107248,ship 107249,cat 107250,bird 107251,cat 107252,automobile 107253,deer 107254,deer 107255,truck 107256,cat 107257,deer 107258,airplane 107259,deer 107260,truck 107261,cat 107262,ship 107263,deer 107264,ship 107265,dog 107266,deer 107267,automobile 107268,frog 107269,airplane 107270,cat 107271,deer 107272,dog 107273,automobile 107274,deer 107275,cat 107276,deer 107277,truck 107278,ship 107279,frog 107280,deer 107281,cat 107282,ship 107283,frog 107284,airplane 107285,truck 107286,frog 107287,ship 107288,bird 107289,cat 107290,cat 107291,cat 107292,ship 107293,dog 107294,cat 107295,ship 107296,horse 107297,bird 107298,frog 107299,frog 107300,bird 107301,cat 107302,horse 107303,horse 107304,airplane 107305,deer 107306,frog 107307,frog 107308,frog 107309,bird 107310,dog 107311,ship 107312,ship 107313,automobile 107314,cat 107315,dog 107316,automobile 107317,ship 107318,automobile 107319,ship 107320,frog 107321,ship 107322,truck 107323,cat 107324,deer 107325,truck 107326,dog 107327,automobile 107328,truck 107329,horse 107330,deer 107331,frog 107332,frog 107333,automobile 107334,truck 107335,airplane 107336,deer 107337,frog 107338,truck 107339,truck 107340,automobile 107341,automobile 107342,truck 107343,truck 107344,deer 107345,cat 107346,frog 107347,ship 107348,airplane 107349,dog 107350,horse 107351,truck 107352,cat 107353,horse 107354,deer 107355,automobile 107356,ship 107357,automobile 107358,airplane 107359,horse 107360,frog 107361,dog 107362,bird 107363,bird 107364,truck 107365,deer 107366,frog 107367,dog 107368,frog 107369,deer 107370,cat 107371,cat 107372,deer 107373,deer 107374,bird 107375,cat 107376,horse 107377,deer 107378,truck 107379,frog 107380,bird 107381,deer 107382,horse 107383,horse 107384,frog 107385,deer 107386,airplane 107387,bird 107388,ship 107389,cat 107390,frog 107391,cat 107392,bird 107393,ship 107394,dog 107395,frog 107396,cat 107397,cat 107398,dog 107399,cat 107400,deer 107401,horse 107402,deer 107403,airplane 107404,horse 107405,frog 107406,airplane 107407,deer 107408,automobile 107409,cat 107410,deer 107411,ship 107412,dog 107413,cat 107414,bird 107415,bird 107416,truck 107417,cat 107418,bird 107419,automobile 107420,horse 107421,automobile 107422,dog 107423,dog 107424,dog 107425,dog 107426,deer 107427,deer 107428,truck 107429,horse 107430,horse 107431,ship 107432,airplane 107433,truck 107434,frog 107435,frog 107436,cat 107437,truck 107438,horse 107439,truck 107440,truck 107441,cat 107442,dog 107443,bird 107444,deer 107445,cat 107446,frog 107447,airplane 107448,horse 107449,truck 107450,ship 107451,cat 107452,deer 107453,airplane 107454,automobile 107455,horse 107456,frog 107457,ship 107458,horse 107459,truck 107460,cat 107461,frog 107462,airplane 107463,frog 107464,airplane 107465,automobile 107466,frog 107467,deer 107468,cat 107469,cat 107470,horse 107471,airplane 107472,frog 107473,truck 107474,ship 107475,deer 107476,ship 107477,cat 107478,frog 107479,horse 107480,automobile 107481,ship 107482,truck 107483,cat 107484,airplane 107485,airplane 107486,automobile 107487,horse 107488,automobile 107489,airplane 107490,ship 107491,frog 107492,cat 107493,deer 107494,ship 107495,cat 107496,cat 107497,dog 107498,deer 107499,dog 107500,deer 107501,frog 107502,truck 107503,airplane 107504,deer 107505,dog 107506,frog 107507,frog 107508,cat 107509,dog 107510,horse 107511,deer 107512,deer 107513,ship 107514,ship 107515,automobile 107516,horse 107517,horse 107518,truck 107519,truck 107520,horse 107521,truck 107522,deer 107523,horse 107524,dog 107525,truck 107526,horse 107527,bird 107528,truck 107529,horse 107530,ship 107531,bird 107532,dog 107533,automobile 107534,cat 107535,ship 107536,truck 107537,airplane 107538,cat 107539,cat 107540,horse 107541,bird 107542,airplane 107543,ship 107544,automobile 107545,cat 107546,frog 107547,frog 107548,frog 107549,cat 107550,cat 107551,frog 107552,dog 107553,dog 107554,dog 107555,truck 107556,cat 107557,cat 107558,automobile 107559,frog 107560,truck 107561,frog 107562,truck 107563,airplane 107564,ship 107565,deer 107566,dog 107567,truck 107568,deer 107569,deer 107570,dog 107571,deer 107572,bird 107573,ship 107574,dog 107575,dog 107576,deer 107577,frog 107578,truck 107579,horse 107580,automobile 107581,deer 107582,frog 107583,deer 107584,frog 107585,horse 107586,deer 107587,dog 107588,truck 107589,airplane 107590,deer 107591,dog 107592,cat 107593,cat 107594,deer 107595,truck 107596,dog 107597,deer 107598,truck 107599,truck 107600,deer 107601,bird 107602,truck 107603,truck 107604,cat 107605,airplane 107606,dog 107607,horse 107608,ship 107609,automobile 107610,deer 107611,frog 107612,bird 107613,dog 107614,truck 107615,deer 107616,truck 107617,dog 107618,ship 107619,cat 107620,frog 107621,deer 107622,airplane 107623,frog 107624,horse 107625,ship 107626,automobile 107627,horse 107628,horse 107629,airplane 107630,horse 107631,cat 107632,cat 107633,truck 107634,ship 107635,frog 107636,dog 107637,dog 107638,horse 107639,dog 107640,horse 107641,airplane 107642,cat 107643,ship 107644,frog 107645,dog 107646,truck 107647,horse 107648,cat 107649,airplane 107650,airplane 107651,cat 107652,airplane 107653,automobile 107654,horse 107655,airplane 107656,ship 107657,frog 107658,airplane 107659,deer 107660,airplane 107661,airplane 107662,dog 107663,frog 107664,deer 107665,ship 107666,ship 107667,horse 107668,ship 107669,ship 107670,frog 107671,automobile 107672,horse 107673,frog 107674,deer 107675,airplane 107676,horse 107677,cat 107678,frog 107679,bird 107680,automobile 107681,dog 107682,deer 107683,dog 107684,deer 107685,cat 107686,automobile 107687,ship 107688,truck 107689,horse 107690,horse 107691,deer 107692,deer 107693,deer 107694,ship 107695,bird 107696,horse 107697,dog 107698,truck 107699,cat 107700,horse 107701,deer 107702,automobile 107703,cat 107704,airplane 107705,frog 107706,ship 107707,cat 107708,truck 107709,horse 107710,horse 107711,truck 107712,deer 107713,cat 107714,deer 107715,cat 107716,automobile 107717,horse 107718,frog 107719,cat 107720,horse 107721,truck 107722,horse 107723,deer 107724,airplane 107725,truck 107726,truck 107727,automobile 107728,deer 107729,cat 107730,dog 107731,dog 107732,ship 107733,deer 107734,airplane 107735,cat 107736,bird 107737,airplane 107738,deer 107739,bird 107740,deer 107741,airplane 107742,airplane 107743,airplane 107744,horse 107745,frog 107746,dog 107747,dog 107748,automobile 107749,deer 107750,airplane 107751,cat 107752,cat 107753,dog 107754,bird 107755,ship 107756,bird 107757,dog 107758,ship 107759,horse 107760,bird 107761,ship 107762,cat 107763,dog 107764,dog 107765,automobile 107766,automobile 107767,frog 107768,cat 107769,ship 107770,dog 107771,deer 107772,frog 107773,frog 107774,ship 107775,bird 107776,truck 107777,dog 107778,truck 107779,truck 107780,dog 107781,truck 107782,airplane 107783,deer 107784,horse 107785,deer 107786,ship 107787,ship 107788,automobile 107789,airplane 107790,truck 107791,bird 107792,frog 107793,dog 107794,cat 107795,bird 107796,frog 107797,airplane 107798,truck 107799,airplane 107800,ship 107801,deer 107802,automobile 107803,truck 107804,ship 107805,deer 107806,frog 107807,ship 107808,cat 107809,ship 107810,airplane 107811,truck 107812,deer 107813,dog 107814,airplane 107815,bird 107816,cat 107817,horse 107818,ship 107819,truck 107820,truck 107821,horse 107822,frog 107823,automobile 107824,frog 107825,horse 107826,ship 107827,cat 107828,frog 107829,bird 107830,deer 107831,automobile 107832,airplane 107833,bird 107834,bird 107835,deer 107836,truck 107837,dog 107838,truck 107839,cat 107840,deer 107841,bird 107842,dog 107843,truck 107844,ship 107845,deer 107846,automobile 107847,deer 107848,deer 107849,frog 107850,deer 107851,horse 107852,truck 107853,frog 107854,cat 107855,frog 107856,cat 107857,cat 107858,cat 107859,dog 107860,deer 107861,airplane 107862,truck 107863,airplane 107864,automobile 107865,ship 107866,deer 107867,bird 107868,bird 107869,frog 107870,airplane 107871,horse 107872,bird 107873,bird 107874,ship 107875,horse 107876,truck 107877,deer 107878,ship 107879,automobile 107880,airplane 107881,frog 107882,bird 107883,truck 107884,frog 107885,deer 107886,dog 107887,ship 107888,frog 107889,frog 107890,cat 107891,frog 107892,truck 107893,deer 107894,horse 107895,frog 107896,horse 107897,cat 107898,truck 107899,deer 107900,dog 107901,bird 107902,horse 107903,horse 107904,horse 107905,bird 107906,ship 107907,frog 107908,frog 107909,deer 107910,airplane 107911,horse 107912,horse 107913,dog 107914,cat 107915,cat 107916,dog 107917,truck 107918,truck 107919,truck 107920,airplane 107921,dog 107922,frog 107923,deer 107924,truck 107925,truck 107926,truck 107927,ship 107928,cat 107929,truck 107930,frog 107931,cat 107932,bird 107933,truck 107934,dog 107935,automobile 107936,frog 107937,bird 107938,frog 107939,dog 107940,ship 107941,truck 107942,cat 107943,cat 107944,horse 107945,automobile 107946,deer 107947,ship 107948,automobile 107949,deer 107950,truck 107951,horse 107952,deer 107953,truck 107954,frog 107955,deer 107956,deer 107957,bird 107958,ship 107959,deer 107960,frog 107961,truck 107962,frog 107963,ship 107964,horse 107965,dog 107966,horse 107967,horse 107968,automobile 107969,dog 107970,truck 107971,frog 107972,dog 107973,dog 107974,horse 107975,dog 107976,truck 107977,horse 107978,deer 107979,frog 107980,ship 107981,truck 107982,ship 107983,ship 107984,automobile 107985,automobile 107986,automobile 107987,cat 107988,cat 107989,horse 107990,bird 107991,bird 107992,cat 107993,deer 107994,airplane 107995,frog 107996,airplane 107997,cat 107998,airplane 107999,airplane 108000,ship 108001,airplane 108002,airplane 108003,truck 108004,deer 108005,horse 108006,deer 108007,dog 108008,deer 108009,airplane 108010,ship 108011,truck 108012,cat 108013,deer 108014,deer 108015,dog 108016,dog 108017,horse 108018,deer 108019,deer 108020,ship 108021,deer 108022,bird 108023,frog 108024,dog 108025,truck 108026,cat 108027,automobile 108028,cat 108029,cat 108030,dog 108031,ship 108032,frog 108033,ship 108034,truck 108035,deer 108036,frog 108037,frog 108038,dog 108039,horse 108040,deer 108041,horse 108042,deer 108043,deer 108044,ship 108045,bird 108046,bird 108047,dog 108048,truck 108049,ship 108050,bird 108051,bird 108052,frog 108053,dog 108054,dog 108055,deer 108056,deer 108057,truck 108058,horse 108059,ship 108060,truck 108061,bird 108062,deer 108063,airplane 108064,horse 108065,frog 108066,automobile 108067,frog 108068,automobile 108069,deer 108070,horse 108071,dog 108072,bird 108073,bird 108074,truck 108075,ship 108076,deer 108077,horse 108078,deer 108079,frog 108080,deer 108081,airplane 108082,cat 108083,dog 108084,horse 108085,ship 108086,bird 108087,frog 108088,cat 108089,deer 108090,automobile 108091,airplane 108092,ship 108093,dog 108094,dog 108095,dog 108096,deer 108097,cat 108098,cat 108099,dog 108100,ship 108101,frog 108102,airplane 108103,ship 108104,ship 108105,deer 108106,ship 108107,dog 108108,ship 108109,bird 108110,frog 108111,truck 108112,deer 108113,cat 108114,cat 108115,bird 108116,cat 108117,bird 108118,bird 108119,bird 108120,dog 108121,automobile 108122,ship 108123,truck 108124,frog 108125,deer 108126,deer 108127,horse 108128,truck 108129,bird 108130,horse 108131,ship 108132,deer 108133,bird 108134,cat 108135,deer 108136,truck 108137,frog 108138,cat 108139,dog 108140,airplane 108141,deer 108142,deer 108143,truck 108144,ship 108145,ship 108146,cat 108147,truck 108148,bird 108149,horse 108150,cat 108151,airplane 108152,cat 108153,deer 108154,horse 108155,bird 108156,horse 108157,deer 108158,bird 108159,airplane 108160,automobile 108161,cat 108162,truck 108163,truck 108164,automobile 108165,truck 108166,ship 108167,automobile 108168,automobile 108169,automobile 108170,frog 108171,frog 108172,frog 108173,truck 108174,bird 108175,frog 108176,cat 108177,deer 108178,deer 108179,dog 108180,dog 108181,cat 108182,ship 108183,bird 108184,bird 108185,truck 108186,bird 108187,horse 108188,deer 108189,dog 108190,deer 108191,cat 108192,frog 108193,airplane 108194,cat 108195,frog 108196,deer 108197,horse 108198,deer 108199,bird 108200,deer 108201,cat 108202,dog 108203,dog 108204,cat 108205,automobile 108206,truck 108207,cat 108208,dog 108209,deer 108210,airplane 108211,cat 108212,bird 108213,deer 108214,dog 108215,ship 108216,automobile 108217,airplane 108218,truck 108219,bird 108220,deer 108221,deer 108222,ship 108223,dog 108224,frog 108225,bird 108226,ship 108227,cat 108228,bird 108229,deer 108230,ship 108231,dog 108232,automobile 108233,airplane 108234,deer 108235,automobile 108236,cat 108237,deer 108238,ship 108239,cat 108240,automobile 108241,automobile 108242,cat 108243,cat 108244,truck 108245,horse 108246,cat 108247,horse 108248,cat 108249,ship 108250,horse 108251,dog 108252,truck 108253,deer 108254,airplane 108255,frog 108256,dog 108257,dog 108258,deer 108259,airplane 108260,cat 108261,truck 108262,deer 108263,dog 108264,deer 108265,dog 108266,horse 108267,airplane 108268,cat 108269,bird 108270,cat 108271,cat 108272,automobile 108273,cat 108274,airplane 108275,bird 108276,airplane 108277,airplane 108278,horse 108279,automobile 108280,bird 108281,cat 108282,bird 108283,horse 108284,horse 108285,bird 108286,ship 108287,truck 108288,truck 108289,dog 108290,bird 108291,deer 108292,truck 108293,deer 108294,frog 108295,horse 108296,dog 108297,cat 108298,bird 108299,bird 108300,bird 108301,dog 108302,cat 108303,deer 108304,bird 108305,dog 108306,truck 108307,bird 108308,cat 108309,airplane 108310,automobile 108311,bird 108312,ship 108313,horse 108314,bird 108315,ship 108316,horse 108317,frog 108318,ship 108319,frog 108320,cat 108321,cat 108322,dog 108323,ship 108324,dog 108325,frog 108326,frog 108327,deer 108328,truck 108329,airplane 108330,horse 108331,automobile 108332,truck 108333,automobile 108334,automobile 108335,dog 108336,horse 108337,cat 108338,cat 108339,automobile 108340,bird 108341,truck 108342,cat 108343,truck 108344,horse 108345,automobile 108346,dog 108347,horse 108348,frog 108349,frog 108350,ship 108351,dog 108352,ship 108353,cat 108354,horse 108355,frog 108356,deer 108357,horse 108358,horse 108359,ship 108360,deer 108361,truck 108362,airplane 108363,bird 108364,cat 108365,horse 108366,frog 108367,horse 108368,deer 108369,deer 108370,airplane 108371,frog 108372,truck 108373,horse 108374,deer 108375,cat 108376,dog 108377,horse 108378,horse 108379,bird 108380,cat 108381,truck 108382,frog 108383,bird 108384,airplane 108385,ship 108386,ship 108387,cat 108388,truck 108389,dog 108390,deer 108391,horse 108392,dog 108393,dog 108394,cat 108395,automobile 108396,automobile 108397,automobile 108398,ship 108399,dog 108400,dog 108401,automobile 108402,truck 108403,truck 108404,deer 108405,horse 108406,frog 108407,airplane 108408,frog 108409,truck 108410,ship 108411,cat 108412,truck 108413,airplane 108414,truck 108415,deer 108416,airplane 108417,bird 108418,dog 108419,deer 108420,frog 108421,dog 108422,deer 108423,deer 108424,dog 108425,cat 108426,horse 108427,deer 108428,cat 108429,airplane 108430,automobile 108431,automobile 108432,ship 108433,bird 108434,deer 108435,horse 108436,cat 108437,cat 108438,truck 108439,airplane 108440,horse 108441,cat 108442,ship 108443,dog 108444,bird 108445,dog 108446,cat 108447,bird 108448,dog 108449,ship 108450,frog 108451,truck 108452,truck 108453,horse 108454,horse 108455,cat 108456,airplane 108457,automobile 108458,truck 108459,dog 108460,airplane 108461,bird 108462,cat 108463,frog 108464,deer 108465,automobile 108466,deer 108467,deer 108468,horse 108469,deer 108470,airplane 108471,truck 108472,frog 108473,cat 108474,horse 108475,horse 108476,airplane 108477,bird 108478,ship 108479,automobile 108480,deer 108481,bird 108482,ship 108483,horse 108484,bird 108485,deer 108486,horse 108487,cat 108488,airplane 108489,dog 108490,bird 108491,frog 108492,deer 108493,truck 108494,ship 108495,dog 108496,automobile 108497,bird 108498,ship 108499,truck 108500,frog 108501,cat 108502,ship 108503,deer 108504,horse 108505,frog 108506,frog 108507,horse 108508,dog 108509,deer 108510,bird 108511,cat 108512,airplane 108513,cat 108514,frog 108515,truck 108516,horse 108517,frog 108518,cat 108519,deer 108520,truck 108521,airplane 108522,frog 108523,ship 108524,frog 108525,frog 108526,deer 108527,horse 108528,cat 108529,deer 108530,ship 108531,deer 108532,horse 108533,automobile 108534,horse 108535,deer 108536,bird 108537,frog 108538,ship 108539,airplane 108540,frog 108541,deer 108542,cat 108543,cat 108544,truck 108545,ship 108546,cat 108547,ship 108548,automobile 108549,cat 108550,frog 108551,frog 108552,frog 108553,dog 108554,horse 108555,dog 108556,cat 108557,deer 108558,deer 108559,bird 108560,cat 108561,cat 108562,horse 108563,truck 108564,bird 108565,dog 108566,deer 108567,dog 108568,airplane 108569,frog 108570,horse 108571,truck 108572,truck 108573,frog 108574,cat 108575,frog 108576,automobile 108577,bird 108578,automobile 108579,ship 108580,frog 108581,bird 108582,automobile 108583,cat 108584,deer 108585,airplane 108586,ship 108587,airplane 108588,dog 108589,horse 108590,frog 108591,deer 108592,horse 108593,deer 108594,bird 108595,dog 108596,horse 108597,truck 108598,automobile 108599,frog 108600,horse 108601,cat 108602,horse 108603,airplane 108604,dog 108605,deer 108606,airplane 108607,bird 108608,dog 108609,dog 108610,deer 108611,cat 108612,dog 108613,deer 108614,automobile 108615,cat 108616,deer 108617,truck 108618,bird 108619,bird 108620,deer 108621,horse 108622,dog 108623,truck 108624,dog 108625,airplane 108626,truck 108627,deer 108628,deer 108629,dog 108630,truck 108631,airplane 108632,bird 108633,truck 108634,horse 108635,deer 108636,cat 108637,deer 108638,frog 108639,truck 108640,frog 108641,dog 108642,truck 108643,frog 108644,frog 108645,frog 108646,frog 108647,airplane 108648,automobile 108649,cat 108650,ship 108651,deer 108652,frog 108653,bird 108654,cat 108655,ship 108656,truck 108657,dog 108658,truck 108659,cat 108660,automobile 108661,bird 108662,ship 108663,ship 108664,cat 108665,airplane 108666,automobile 108667,automobile 108668,ship 108669,dog 108670,automobile 108671,truck 108672,frog 108673,cat 108674,cat 108675,ship 108676,airplane 108677,ship 108678,cat 108679,frog 108680,airplane 108681,ship 108682,bird 108683,frog 108684,frog 108685,deer 108686,truck 108687,truck 108688,dog 108689,dog 108690,dog 108691,horse 108692,ship 108693,cat 108694,airplane 108695,airplane 108696,airplane 108697,deer 108698,cat 108699,deer 108700,deer 108701,deer 108702,airplane 108703,deer 108704,truck 108705,truck 108706,airplane 108707,deer 108708,automobile 108709,truck 108710,frog 108711,dog 108712,ship 108713,ship 108714,automobile 108715,dog 108716,frog 108717,dog 108718,horse 108719,cat 108720,ship 108721,bird 108722,ship 108723,dog 108724,truck 108725,ship 108726,cat 108727,truck 108728,automobile 108729,truck 108730,automobile 108731,truck 108732,dog 108733,horse 108734,deer 108735,airplane 108736,horse 108737,cat 108738,deer 108739,automobile 108740,cat 108741,cat 108742,deer 108743,bird 108744,cat 108745,cat 108746,dog 108747,automobile 108748,deer 108749,frog 108750,automobile 108751,frog 108752,airplane 108753,frog 108754,airplane 108755,frog 108756,truck 108757,bird 108758,truck 108759,frog 108760,bird 108761,deer 108762,frog 108763,ship 108764,horse 108765,frog 108766,automobile 108767,ship 108768,frog 108769,deer 108770,ship 108771,automobile 108772,truck 108773,frog 108774,deer 108775,ship 108776,horse 108777,truck 108778,truck 108779,cat 108780,airplane 108781,deer 108782,frog 108783,frog 108784,automobile 108785,cat 108786,dog 108787,cat 108788,dog 108789,cat 108790,frog 108791,automobile 108792,deer 108793,cat 108794,horse 108795,horse 108796,airplane 108797,cat 108798,cat 108799,airplane 108800,airplane 108801,cat 108802,frog 108803,deer 108804,dog 108805,airplane 108806,deer 108807,automobile 108808,deer 108809,cat 108810,automobile 108811,frog 108812,truck 108813,dog 108814,airplane 108815,dog 108816,deer 108817,deer 108818,bird 108819,ship 108820,truck 108821,airplane 108822,frog 108823,deer 108824,horse 108825,bird 108826,airplane 108827,truck 108828,dog 108829,cat 108830,bird 108831,bird 108832,frog 108833,cat 108834,horse 108835,truck 108836,automobile 108837,bird 108838,bird 108839,horse 108840,deer 108841,horse 108842,truck 108843,ship 108844,horse 108845,dog 108846,horse 108847,deer 108848,truck 108849,automobile 108850,truck 108851,truck 108852,dog 108853,airplane 108854,dog 108855,airplane 108856,cat 108857,airplane 108858,truck 108859,deer 108860,bird 108861,cat 108862,frog 108863,truck 108864,dog 108865,dog 108866,cat 108867,dog 108868,frog 108869,automobile 108870,dog 108871,cat 108872,horse 108873,bird 108874,automobile 108875,truck 108876,deer 108877,horse 108878,truck 108879,deer 108880,airplane 108881,deer 108882,cat 108883,airplane 108884,horse 108885,airplane 108886,deer 108887,dog 108888,dog 108889,horse 108890,ship 108891,bird 108892,frog 108893,automobile 108894,bird 108895,horse 108896,ship 108897,horse 108898,truck 108899,frog 108900,deer 108901,automobile 108902,ship 108903,truck 108904,airplane 108905,ship 108906,bird 108907,ship 108908,horse 108909,frog 108910,cat 108911,ship 108912,bird 108913,deer 108914,frog 108915,dog 108916,deer 108917,ship 108918,truck 108919,ship 108920,ship 108921,airplane 108922,airplane 108923,horse 108924,truck 108925,automobile 108926,cat 108927,ship 108928,cat 108929,truck 108930,ship 108931,airplane 108932,frog 108933,ship 108934,airplane 108935,deer 108936,truck 108937,airplane 108938,cat 108939,airplane 108940,dog 108941,cat 108942,ship 108943,bird 108944,truck 108945,deer 108946,deer 108947,horse 108948,cat 108949,ship 108950,horse 108951,deer 108952,frog 108953,bird 108954,bird 108955,cat 108956,bird 108957,automobile 108958,dog 108959,horse 108960,cat 108961,ship 108962,truck 108963,ship 108964,ship 108965,truck 108966,frog 108967,horse 108968,airplane 108969,cat 108970,airplane 108971,horse 108972,frog 108973,deer 108974,truck 108975,horse 108976,horse 108977,cat 108978,cat 108979,deer 108980,automobile 108981,dog 108982,cat 108983,frog 108984,bird 108985,dog 108986,cat 108987,bird 108988,cat 108989,cat 108990,deer 108991,cat 108992,truck 108993,truck 108994,frog 108995,automobile 108996,deer 108997,dog 108998,truck 108999,deer 109000,truck 109001,dog 109002,horse 109003,dog 109004,cat 109005,dog 109006,horse 109007,dog 109008,deer 109009,ship 109010,frog 109011,deer 109012,truck 109013,frog 109014,truck 109015,deer 109016,bird 109017,dog 109018,deer 109019,dog 109020,bird 109021,deer 109022,airplane 109023,cat 109024,dog 109025,cat 109026,automobile 109027,automobile 109028,airplane 109029,airplane 109030,frog 109031,airplane 109032,deer 109033,cat 109034,dog 109035,airplane 109036,deer 109037,ship 109038,deer 109039,frog 109040,truck 109041,frog 109042,bird 109043,ship 109044,deer 109045,automobile 109046,cat 109047,cat 109048,frog 109049,deer 109050,horse 109051,truck 109052,automobile 109053,truck 109054,bird 109055,truck 109056,ship 109057,bird 109058,cat 109059,horse 109060,bird 109061,frog 109062,deer 109063,cat 109064,automobile 109065,deer 109066,cat 109067,cat 109068,airplane 109069,truck 109070,cat 109071,frog 109072,deer 109073,truck 109074,truck 109075,horse 109076,frog 109077,ship 109078,automobile 109079,dog 109080,airplane 109081,horse 109082,truck 109083,cat 109084,deer 109085,deer 109086,deer 109087,airplane 109088,deer 109089,truck 109090,cat 109091,bird 109092,truck 109093,deer 109094,airplane 109095,horse 109096,truck 109097,airplane 109098,dog 109099,horse 109100,bird 109101,airplane 109102,horse 109103,frog 109104,cat 109105,deer 109106,cat 109107,bird 109108,deer 109109,ship 109110,frog 109111,deer 109112,deer 109113,cat 109114,automobile 109115,cat 109116,cat 109117,bird 109118,cat 109119,horse 109120,horse 109121,dog 109122,frog 109123,ship 109124,dog 109125,airplane 109126,deer 109127,truck 109128,deer 109129,automobile 109130,deer 109131,deer 109132,deer 109133,airplane 109134,airplane 109135,ship 109136,frog 109137,deer 109138,deer 109139,truck 109140,cat 109141,deer 109142,ship 109143,airplane 109144,deer 109145,dog 109146,airplane 109147,automobile 109148,airplane 109149,frog 109150,cat 109151,cat 109152,airplane 109153,frog 109154,truck 109155,deer 109156,cat 109157,truck 109158,frog 109159,automobile 109160,cat 109161,bird 109162,deer 109163,frog 109164,frog 109165,ship 109166,bird 109167,airplane 109168,deer 109169,ship 109170,deer 109171,horse 109172,frog 109173,frog 109174,bird 109175,dog 109176,truck 109177,dog 109178,airplane 109179,truck 109180,deer 109181,dog 109182,dog 109183,cat 109184,ship 109185,frog 109186,deer 109187,horse 109188,ship 109189,cat 109190,bird 109191,truck 109192,bird 109193,frog 109194,horse 109195,deer 109196,ship 109197,frog 109198,airplane 109199,airplane 109200,automobile 109201,automobile 109202,horse 109203,automobile 109204,cat 109205,cat 109206,frog 109207,deer 109208,automobile 109209,frog 109210,airplane 109211,ship 109212,truck 109213,ship 109214,cat 109215,ship 109216,deer 109217,ship 109218,airplane 109219,horse 109220,frog 109221,cat 109222,frog 109223,bird 109224,truck 109225,horse 109226,automobile 109227,bird 109228,airplane 109229,airplane 109230,airplane 109231,dog 109232,deer 109233,truck 109234,horse 109235,dog 109236,airplane 109237,cat 109238,airplane 109239,dog 109240,horse 109241,airplane 109242,bird 109243,bird 109244,truck 109245,deer 109246,truck 109247,bird 109248,deer 109249,dog 109250,deer 109251,deer 109252,horse 109253,ship 109254,dog 109255,ship 109256,bird 109257,dog 109258,automobile 109259,deer 109260,automobile 109261,deer 109262,airplane 109263,dog 109264,deer 109265,cat 109266,frog 109267,cat 109268,bird 109269,cat 109270,horse 109271,cat 109272,ship 109273,deer 109274,deer 109275,horse 109276,truck 109277,truck 109278,horse 109279,automobile 109280,deer 109281,automobile 109282,horse 109283,frog 109284,airplane 109285,automobile 109286,deer 109287,deer 109288,deer 109289,cat 109290,deer 109291,cat 109292,automobile 109293,frog 109294,dog 109295,deer 109296,horse 109297,airplane 109298,cat 109299,horse 109300,deer 109301,truck 109302,airplane 109303,cat 109304,frog 109305,bird 109306,deer 109307,deer 109308,airplane 109309,cat 109310,deer 109311,horse 109312,cat 109313,deer 109314,ship 109315,dog 109316,ship 109317,dog 109318,cat 109319,truck 109320,cat 109321,dog 109322,bird 109323,deer 109324,truck 109325,cat 109326,horse 109327,truck 109328,airplane 109329,horse 109330,ship 109331,deer 109332,ship 109333,deer 109334,automobile 109335,frog 109336,truck 109337,cat 109338,ship 109339,truck 109340,horse 109341,dog 109342,automobile 109343,dog 109344,dog 109345,cat 109346,automobile 109347,deer 109348,bird 109349,airplane 109350,truck 109351,bird 109352,horse 109353,truck 109354,truck 109355,ship 109356,cat 109357,ship 109358,deer 109359,cat 109360,bird 109361,frog 109362,deer 109363,frog 109364,dog 109365,automobile 109366,bird 109367,airplane 109368,dog 109369,automobile 109370,frog 109371,cat 109372,deer 109373,cat 109374,horse 109375,horse 109376,dog 109377,bird 109378,automobile 109379,automobile 109380,ship 109381,dog 109382,airplane 109383,airplane 109384,cat 109385,deer 109386,automobile 109387,horse 109388,horse 109389,horse 109390,dog 109391,deer 109392,truck 109393,frog 109394,dog 109395,deer 109396,automobile 109397,frog 109398,frog 109399,truck 109400,airplane 109401,deer 109402,horse 109403,horse 109404,truck 109405,bird 109406,ship 109407,truck 109408,truck 109409,airplane 109410,dog 109411,bird 109412,deer 109413,horse 109414,deer 109415,dog 109416,cat 109417,cat 109418,bird 109419,horse 109420,frog 109421,truck 109422,truck 109423,horse 109424,cat 109425,dog 109426,cat 109427,bird 109428,truck 109429,dog 109430,dog 109431,ship 109432,horse 109433,dog 109434,frog 109435,cat 109436,deer 109437,bird 109438,deer 109439,deer 109440,deer 109441,frog 109442,cat 109443,ship 109444,cat 109445,cat 109446,airplane 109447,frog 109448,automobile 109449,cat 109450,automobile 109451,frog 109452,cat 109453,automobile 109454,frog 109455,ship 109456,truck 109457,cat 109458,airplane 109459,deer 109460,frog 109461,frog 109462,truck 109463,dog 109464,automobile 109465,deer 109466,horse 109467,airplane 109468,cat 109469,ship 109470,ship 109471,bird 109472,truck 109473,cat 109474,truck 109475,deer 109476,bird 109477,horse 109478,ship 109479,frog 109480,deer 109481,frog 109482,truck 109483,airplane 109484,horse 109485,frog 109486,bird 109487,truck 109488,frog 109489,frog 109490,cat 109491,automobile 109492,dog 109493,airplane 109494,deer 109495,frog 109496,ship 109497,horse 109498,cat 109499,horse 109500,deer 109501,cat 109502,dog 109503,airplane 109504,horse 109505,truck 109506,horse 109507,horse 109508,ship 109509,cat 109510,frog 109511,cat 109512,truck 109513,airplane 109514,cat 109515,cat 109516,cat 109517,frog 109518,cat 109519,truck 109520,frog 109521,cat 109522,frog 109523,dog 109524,automobile 109525,automobile 109526,horse 109527,dog 109528,ship 109529,cat 109530,deer 109531,dog 109532,ship 109533,deer 109534,airplane 109535,deer 109536,ship 109537,cat 109538,dog 109539,cat 109540,horse 109541,cat 109542,deer 109543,bird 109544,deer 109545,ship 109546,horse 109547,truck 109548,frog 109549,airplane 109550,deer 109551,automobile 109552,airplane 109553,automobile 109554,automobile 109555,deer 109556,cat 109557,frog 109558,airplane 109559,frog 109560,bird 109561,frog 109562,ship 109563,dog 109564,deer 109565,frog 109566,truck 109567,frog 109568,automobile 109569,deer 109570,deer 109571,truck 109572,automobile 109573,cat 109574,bird 109575,truck 109576,deer 109577,cat 109578,deer 109579,ship 109580,airplane 109581,truck 109582,frog 109583,cat 109584,horse 109585,cat 109586,airplane 109587,dog 109588,airplane 109589,horse 109590,bird 109591,cat 109592,dog 109593,cat 109594,dog 109595,frog 109596,frog 109597,frog 109598,truck 109599,deer 109600,dog 109601,airplane 109602,bird 109603,automobile 109604,cat 109605,airplane 109606,airplane 109607,deer 109608,dog 109609,truck 109610,ship 109611,deer 109612,deer 109613,dog 109614,dog 109615,horse 109616,dog 109617,bird 109618,bird 109619,cat 109620,automobile 109621,dog 109622,dog 109623,cat 109624,automobile 109625,dog 109626,frog 109627,cat 109628,ship 109629,deer 109630,deer 109631,horse 109632,automobile 109633,automobile 109634,airplane 109635,horse 109636,truck 109637,automobile 109638,horse 109639,airplane 109640,airplane 109641,bird 109642,airplane 109643,ship 109644,truck 109645,deer 109646,bird 109647,ship 109648,truck 109649,deer 109650,bird 109651,airplane 109652,cat 109653,cat 109654,ship 109655,airplane 109656,truck 109657,airplane 109658,ship 109659,bird 109660,deer 109661,airplane 109662,bird 109663,horse 109664,frog 109665,frog 109666,automobile 109667,bird 109668,cat 109669,truck 109670,dog 109671,frog 109672,airplane 109673,automobile 109674,deer 109675,ship 109676,horse 109677,cat 109678,bird 109679,horse 109680,airplane 109681,frog 109682,bird 109683,automobile 109684,bird 109685,horse 109686,cat 109687,cat 109688,bird 109689,cat 109690,horse 109691,bird 109692,automobile 109693,frog 109694,cat 109695,ship 109696,truck 109697,cat 109698,horse 109699,deer 109700,frog 109701,ship 109702,bird 109703,truck 109704,ship 109705,ship 109706,airplane 109707,deer 109708,frog 109709,cat 109710,dog 109711,truck 109712,automobile 109713,ship 109714,cat 109715,deer 109716,horse 109717,airplane 109718,cat 109719,frog 109720,horse 109721,frog 109722,frog 109723,frog 109724,cat 109725,automobile 109726,airplane 109727,ship 109728,deer 109729,airplane 109730,deer 109731,horse 109732,dog 109733,horse 109734,cat 109735,frog 109736,deer 109737,bird 109738,dog 109739,cat 109740,deer 109741,deer 109742,ship 109743,dog 109744,horse 109745,truck 109746,cat 109747,airplane 109748,deer 109749,bird 109750,deer 109751,frog 109752,cat 109753,deer 109754,airplane 109755,automobile 109756,automobile 109757,bird 109758,automobile 109759,airplane 109760,deer 109761,ship 109762,frog 109763,cat 109764,truck 109765,automobile 109766,ship 109767,dog 109768,cat 109769,automobile 109770,deer 109771,cat 109772,horse 109773,automobile 109774,truck 109775,cat 109776,airplane 109777,frog 109778,dog 109779,dog 109780,deer 109781,dog 109782,frog 109783,dog 109784,ship 109785,horse 109786,dog 109787,frog 109788,truck 109789,deer 109790,bird 109791,horse 109792,ship 109793,ship 109794,frog 109795,horse 109796,dog 109797,deer 109798,airplane 109799,dog 109800,frog 109801,dog 109802,truck 109803,dog 109804,deer 109805,cat 109806,dog 109807,dog 109808,cat 109809,airplane 109810,frog 109811,horse 109812,horse 109813,deer 109814,frog 109815,truck 109816,dog 109817,airplane 109818,cat 109819,horse 109820,truck 109821,truck 109822,airplane 109823,deer 109824,ship 109825,ship 109826,airplane 109827,airplane 109828,automobile 109829,ship 109830,truck 109831,ship 109832,automobile 109833,frog 109834,cat 109835,truck 109836,bird 109837,ship 109838,deer 109839,frog 109840,bird 109841,bird 109842,frog 109843,cat 109844,cat 109845,deer 109846,frog 109847,deer 109848,automobile 109849,ship 109850,automobile 109851,ship 109852,cat 109853,ship 109854,frog 109855,airplane 109856,truck 109857,truck 109858,bird 109859,dog 109860,airplane 109861,horse 109862,truck 109863,bird 109864,cat 109865,frog 109866,deer 109867,bird 109868,horse 109869,deer 109870,frog 109871,horse 109872,automobile 109873,truck 109874,cat 109875,automobile 109876,dog 109877,cat 109878,deer 109879,cat 109880,frog 109881,frog 109882,deer 109883,truck 109884,horse 109885,cat 109886,deer 109887,dog 109888,dog 109889,bird 109890,ship 109891,automobile 109892,truck 109893,ship 109894,frog 109895,dog 109896,bird 109897,cat 109898,bird 109899,cat 109900,horse 109901,dog 109902,automobile 109903,horse 109904,frog 109905,cat 109906,cat 109907,truck 109908,cat 109909,horse 109910,truck 109911,ship 109912,frog 109913,ship 109914,bird 109915,frog 109916,bird 109917,deer 109918,automobile 109919,bird 109920,horse 109921,horse 109922,cat 109923,bird 109924,ship 109925,cat 109926,cat 109927,bird 109928,dog 109929,deer 109930,deer 109931,deer 109932,airplane 109933,frog 109934,horse 109935,frog 109936,frog 109937,airplane 109938,deer 109939,cat 109940,truck 109941,deer 109942,dog 109943,cat 109944,deer 109945,horse 109946,horse 109947,dog 109948,automobile 109949,truck 109950,airplane 109951,bird 109952,bird 109953,cat 109954,truck 109955,frog 109956,frog 109957,deer 109958,airplane 109959,airplane 109960,airplane 109961,frog 109962,cat 109963,airplane 109964,cat 109965,deer 109966,deer 109967,cat 109968,dog 109969,bird 109970,frog 109971,truck 109972,dog 109973,airplane 109974,frog 109975,airplane 109976,truck 109977,bird 109978,deer 109979,frog 109980,ship 109981,bird 109982,airplane 109983,deer 109984,deer 109985,cat 109986,airplane 109987,truck 109988,frog 109989,frog 109990,frog 109991,frog 109992,ship 109993,truck 109994,deer 109995,airplane 109996,horse 109997,dog 109998,deer 109999,airplane 110000,deer 110001,cat 110002,deer 110003,bird 110004,airplane 110005,cat 110006,frog 110007,truck 110008,horse 110009,frog 110010,deer 110011,dog 110012,truck 110013,ship 110014,automobile 110015,frog 110016,frog 110017,frog 110018,deer 110019,deer 110020,ship 110021,deer 110022,cat 110023,frog 110024,dog 110025,ship 110026,cat 110027,dog 110028,horse 110029,automobile 110030,bird 110031,frog 110032,bird 110033,frog 110034,ship 110035,cat 110036,deer 110037,deer 110038,bird 110039,cat 110040,bird 110041,bird 110042,dog 110043,frog 110044,deer 110045,dog 110046,automobile 110047,deer 110048,dog 110049,truck 110050,dog 110051,automobile 110052,dog 110053,deer 110054,automobile 110055,truck 110056,automobile 110057,ship 110058,cat 110059,airplane 110060,horse 110061,ship 110062,horse 110063,cat 110064,horse 110065,horse 110066,automobile 110067,cat 110068,dog 110069,cat 110070,cat 110071,cat 110072,deer 110073,dog 110074,deer 110075,horse 110076,frog 110077,frog 110078,automobile 110079,frog 110080,airplane 110081,bird 110082,cat 110083,dog 110084,ship 110085,truck 110086,horse 110087,dog 110088,cat 110089,frog 110090,dog 110091,automobile 110092,ship 110093,deer 110094,ship 110095,airplane 110096,cat 110097,horse 110098,ship 110099,airplane 110100,bird 110101,frog 110102,automobile 110103,deer 110104,truck 110105,horse 110106,horse 110107,deer 110108,dog 110109,dog 110110,dog 110111,ship 110112,deer 110113,airplane 110114,truck 110115,cat 110116,dog 110117,airplane 110118,ship 110119,automobile 110120,truck 110121,bird 110122,automobile 110123,cat 110124,horse 110125,deer 110126,bird 110127,deer 110128,airplane 110129,horse 110130,airplane 110131,cat 110132,truck 110133,automobile 110134,horse 110135,frog 110136,automobile 110137,airplane 110138,truck 110139,deer 110140,bird 110141,truck 110142,frog 110143,frog 110144,dog 110145,bird 110146,frog 110147,deer 110148,ship 110149,deer 110150,deer 110151,truck 110152,airplane 110153,truck 110154,frog 110155,bird 110156,ship 110157,cat 110158,deer 110159,horse 110160,automobile 110161,frog 110162,horse 110163,cat 110164,deer 110165,airplane 110166,dog 110167,bird 110168,deer 110169,horse 110170,frog 110171,automobile 110172,cat 110173,truck 110174,deer 110175,automobile 110176,airplane 110177,bird 110178,ship 110179,automobile 110180,dog 110181,bird 110182,automobile 110183,dog 110184,cat 110185,deer 110186,deer 110187,deer 110188,ship 110189,frog 110190,bird 110191,deer 110192,dog 110193,ship 110194,ship 110195,cat 110196,automobile 110197,deer 110198,dog 110199,ship 110200,ship 110201,horse 110202,horse 110203,automobile 110204,frog 110205,deer 110206,ship 110207,automobile 110208,automobile 110209,frog 110210,horse 110211,truck 110212,airplane 110213,automobile 110214,truck 110215,deer 110216,deer 110217,cat 110218,frog 110219,automobile 110220,ship 110221,deer 110222,ship 110223,bird 110224,dog 110225,truck 110226,bird 110227,cat 110228,automobile 110229,frog 110230,automobile 110231,frog 110232,frog 110233,airplane 110234,airplane 110235,deer 110236,dog 110237,bird 110238,dog 110239,deer 110240,cat 110241,dog 110242,dog 110243,cat 110244,horse 110245,frog 110246,deer 110247,bird 110248,automobile 110249,automobile 110250,horse 110251,frog 110252,cat 110253,deer 110254,horse 110255,truck 110256,automobile 110257,cat 110258,bird 110259,truck 110260,dog 110261,frog 110262,deer 110263,deer 110264,truck 110265,deer 110266,cat 110267,deer 110268,frog 110269,frog 110270,truck 110271,cat 110272,bird 110273,horse 110274,bird 110275,truck 110276,cat 110277,cat 110278,truck 110279,bird 110280,deer 110281,dog 110282,frog 110283,bird 110284,bird 110285,truck 110286,horse 110287,automobile 110288,deer 110289,truck 110290,bird 110291,truck 110292,automobile 110293,deer 110294,bird 110295,deer 110296,automobile 110297,truck 110298,ship 110299,ship 110300,deer 110301,cat 110302,ship 110303,frog 110304,ship 110305,truck 110306,truck 110307,cat 110308,bird 110309,frog 110310,bird 110311,frog 110312,bird 110313,truck 110314,cat 110315,cat 110316,cat 110317,bird 110318,cat 110319,horse 110320,cat 110321,cat 110322,frog 110323,bird 110324,bird 110325,frog 110326,dog 110327,cat 110328,ship 110329,dog 110330,bird 110331,deer 110332,cat 110333,cat 110334,frog 110335,deer 110336,deer 110337,cat 110338,horse 110339,deer 110340,cat 110341,cat 110342,automobile 110343,deer 110344,dog 110345,cat 110346,bird 110347,frog 110348,deer 110349,dog 110350,deer 110351,bird 110352,frog 110353,dog 110354,airplane 110355,deer 110356,dog 110357,frog 110358,automobile 110359,airplane 110360,frog 110361,dog 110362,automobile 110363,bird 110364,automobile 110365,bird 110366,frog 110367,frog 110368,automobile 110369,horse 110370,frog 110371,automobile 110372,truck 110373,frog 110374,cat 110375,frog 110376,bird 110377,bird 110378,cat 110379,cat 110380,automobile 110381,cat 110382,dog 110383,ship 110384,deer 110385,automobile 110386,deer 110387,dog 110388,frog 110389,bird 110390,cat 110391,dog 110392,frog 110393,airplane 110394,deer 110395,dog 110396,cat 110397,horse 110398,ship 110399,frog 110400,automobile 110401,deer 110402,frog 110403,bird 110404,horse 110405,deer 110406,truck 110407,cat 110408,airplane 110409,automobile 110410,airplane 110411,airplane 110412,cat 110413,deer 110414,deer 110415,truck 110416,truck 110417,horse 110418,horse 110419,deer 110420,truck 110421,deer 110422,ship 110423,frog 110424,truck 110425,ship 110426,automobile 110427,truck 110428,frog 110429,truck 110430,cat 110431,horse 110432,cat 110433,airplane 110434,automobile 110435,dog 110436,horse 110437,truck 110438,ship 110439,frog 110440,airplane 110441,horse 110442,deer 110443,ship 110444,dog 110445,horse 110446,cat 110447,automobile 110448,cat 110449,cat 110450,frog 110451,bird 110452,airplane 110453,automobile 110454,airplane 110455,bird 110456,cat 110457,airplane 110458,deer 110459,airplane 110460,cat 110461,cat 110462,ship 110463,cat 110464,airplane 110465,bird 110466,bird 110467,frog 110468,ship 110469,cat 110470,automobile 110471,automobile 110472,deer 110473,cat 110474,airplane 110475,horse 110476,horse 110477,truck 110478,frog 110479,frog 110480,dog 110481,truck 110482,dog 110483,airplane 110484,horse 110485,automobile 110486,ship 110487,ship 110488,truck 110489,dog 110490,deer 110491,airplane 110492,automobile 110493,cat 110494,dog 110495,cat 110496,bird 110497,deer 110498,cat 110499,dog 110500,automobile 110501,deer 110502,frog 110503,deer 110504,deer 110505,deer 110506,cat 110507,truck 110508,horse 110509,horse 110510,airplane 110511,ship 110512,bird 110513,bird 110514,cat 110515,dog 110516,airplane 110517,frog 110518,frog 110519,cat 110520,ship 110521,horse 110522,bird 110523,cat 110524,ship 110525,ship 110526,automobile 110527,airplane 110528,airplane 110529,deer 110530,horse 110531,ship 110532,dog 110533,deer 110534,bird 110535,truck 110536,automobile 110537,deer 110538,deer 110539,deer 110540,cat 110541,truck 110542,cat 110543,dog 110544,cat 110545,frog 110546,bird 110547,ship 110548,horse 110549,horse 110550,truck 110551,frog 110552,bird 110553,horse 110554,automobile 110555,dog 110556,bird 110557,frog 110558,cat 110559,horse 110560,deer 110561,horse 110562,deer 110563,frog 110564,truck 110565,airplane 110566,automobile 110567,bird 110568,bird 110569,deer 110570,cat 110571,automobile 110572,bird 110573,cat 110574,cat 110575,ship 110576,truck 110577,horse 110578,cat 110579,dog 110580,truck 110581,frog 110582,ship 110583,cat 110584,deer 110585,ship 110586,horse 110587,truck 110588,airplane 110589,cat 110590,airplane 110591,bird 110592,truck 110593,ship 110594,deer 110595,bird 110596,horse 110597,cat 110598,automobile 110599,bird 110600,dog 110601,automobile 110602,cat 110603,deer 110604,dog 110605,automobile 110606,frog 110607,automobile 110608,deer 110609,dog 110610,airplane 110611,cat 110612,horse 110613,bird 110614,frog 110615,frog 110616,deer 110617,automobile 110618,frog 110619,automobile 110620,frog 110621,truck 110622,dog 110623,truck 110624,automobile 110625,deer 110626,automobile 110627,truck 110628,frog 110629,dog 110630,ship 110631,frog 110632,deer 110633,cat 110634,truck 110635,truck 110636,frog 110637,bird 110638,horse 110639,ship 110640,truck 110641,ship 110642,dog 110643,truck 110644,horse 110645,frog 110646,airplane 110647,ship 110648,ship 110649,frog 110650,automobile 110651,ship 110652,ship 110653,horse 110654,deer 110655,frog 110656,cat 110657,horse 110658,cat 110659,dog 110660,cat 110661,deer 110662,cat 110663,deer 110664,cat 110665,dog 110666,airplane 110667,deer 110668,deer 110669,cat 110670,truck 110671,automobile 110672,automobile 110673,cat 110674,bird 110675,deer 110676,airplane 110677,frog 110678,frog 110679,dog 110680,automobile 110681,frog 110682,bird 110683,cat 110684,truck 110685,bird 110686,dog 110687,airplane 110688,dog 110689,bird 110690,cat 110691,ship 110692,deer 110693,frog 110694,deer 110695,frog 110696,ship 110697,truck 110698,cat 110699,horse 110700,horse 110701,truck 110702,deer 110703,frog 110704,deer 110705,bird 110706,airplane 110707,deer 110708,dog 110709,ship 110710,dog 110711,cat 110712,deer 110713,airplane 110714,horse 110715,automobile 110716,frog 110717,deer 110718,deer 110719,automobile 110720,horse 110721,cat 110722,deer 110723,deer 110724,dog 110725,automobile 110726,ship 110727,bird 110728,dog 110729,ship 110730,cat 110731,bird 110732,dog 110733,horse 110734,truck 110735,ship 110736,cat 110737,deer 110738,dog 110739,ship 110740,automobile 110741,frog 110742,cat 110743,airplane 110744,deer 110745,deer 110746,frog 110747,bird 110748,bird 110749,frog 110750,truck 110751,horse 110752,deer 110753,airplane 110754,deer 110755,cat 110756,deer 110757,deer 110758,frog 110759,automobile 110760,ship 110761,cat 110762,deer 110763,ship 110764,ship 110765,cat 110766,horse 110767,deer 110768,deer 110769,airplane 110770,horse 110771,deer 110772,automobile 110773,cat 110774,airplane 110775,airplane 110776,deer 110777,ship 110778,cat 110779,deer 110780,bird 110781,airplane 110782,dog 110783,bird 110784,truck 110785,deer 110786,dog 110787,truck 110788,bird 110789,cat 110790,horse 110791,horse 110792,truck 110793,horse 110794,cat 110795,cat 110796,airplane 110797,horse 110798,frog 110799,deer 110800,bird 110801,airplane 110802,dog 110803,frog 110804,ship 110805,frog 110806,truck 110807,cat 110808,horse 110809,truck 110810,dog 110811,cat 110812,cat 110813,cat 110814,deer 110815,cat 110816,ship 110817,horse 110818,deer 110819,dog 110820,cat 110821,bird 110822,deer 110823,dog 110824,dog 110825,dog 110826,horse 110827,automobile 110828,cat 110829,bird 110830,bird 110831,bird 110832,automobile 110833,truck 110834,deer 110835,horse 110836,dog 110837,cat 110838,cat 110839,airplane 110840,horse 110841,cat 110842,horse 110843,horse 110844,truck 110845,automobile 110846,airplane 110847,ship 110848,dog 110849,automobile 110850,bird 110851,truck 110852,dog 110853,airplane 110854,deer 110855,airplane 110856,bird 110857,automobile 110858,dog 110859,bird 110860,dog 110861,automobile 110862,dog 110863,ship 110864,horse 110865,ship 110866,bird 110867,ship 110868,truck 110869,dog 110870,horse 110871,horse 110872,cat 110873,bird 110874,airplane 110875,bird 110876,cat 110877,horse 110878,deer 110879,horse 110880,frog 110881,cat 110882,ship 110883,bird 110884,cat 110885,dog 110886,frog 110887,bird 110888,truck 110889,horse 110890,airplane 110891,automobile 110892,deer 110893,bird 110894,airplane 110895,truck 110896,truck 110897,frog 110898,airplane 110899,ship 110900,cat 110901,truck 110902,frog 110903,frog 110904,dog 110905,frog 110906,truck 110907,bird 110908,truck 110909,airplane 110910,bird 110911,frog 110912,horse 110913,airplane 110914,frog 110915,frog 110916,airplane 110917,dog 110918,dog 110919,airplane 110920,frog 110921,truck 110922,ship 110923,frog 110924,truck 110925,dog 110926,automobile 110927,airplane 110928,horse 110929,cat 110930,automobile 110931,airplane 110932,horse 110933,frog 110934,frog 110935,truck 110936,automobile 110937,cat 110938,deer 110939,bird 110940,dog 110941,dog 110942,automobile 110943,deer 110944,deer 110945,truck 110946,truck 110947,automobile 110948,ship 110949,cat 110950,truck 110951,cat 110952,deer 110953,horse 110954,bird 110955,ship 110956,dog 110957,automobile 110958,automobile 110959,automobile 110960,bird 110961,airplane 110962,dog 110963,truck 110964,cat 110965,deer 110966,truck 110967,truck 110968,deer 110969,ship 110970,truck 110971,frog 110972,horse 110973,airplane 110974,ship 110975,dog 110976,cat 110977,deer 110978,airplane 110979,dog 110980,frog 110981,deer 110982,truck 110983,cat 110984,ship 110985,deer 110986,cat 110987,cat 110988,dog 110989,ship 110990,dog 110991,frog 110992,truck 110993,ship 110994,automobile 110995,deer 110996,automobile 110997,deer 110998,dog 110999,dog 111000,truck 111001,automobile 111002,frog 111003,ship 111004,airplane 111005,truck 111006,horse 111007,deer 111008,frog 111009,deer 111010,automobile 111011,ship 111012,ship 111013,truck 111014,horse 111015,cat 111016,ship 111017,ship 111018,cat 111019,cat 111020,airplane 111021,bird 111022,truck 111023,cat 111024,truck 111025,cat 111026,deer 111027,frog 111028,cat 111029,horse 111030,airplane 111031,automobile 111032,dog 111033,airplane 111034,frog 111035,cat 111036,dog 111037,bird 111038,deer 111039,airplane 111040,deer 111041,horse 111042,truck 111043,ship 111044,horse 111045,horse 111046,cat 111047,deer 111048,cat 111049,automobile 111050,airplane 111051,ship 111052,cat 111053,truck 111054,frog 111055,deer 111056,cat 111057,ship 111058,ship 111059,horse 111060,bird 111061,airplane 111062,airplane 111063,automobile 111064,bird 111065,dog 111066,dog 111067,truck 111068,automobile 111069,airplane 111070,bird 111071,cat 111072,truck 111073,bird 111074,airplane 111075,airplane 111076,deer 111077,cat 111078,cat 111079,ship 111080,deer 111081,bird 111082,deer 111083,frog 111084,deer 111085,deer 111086,airplane 111087,truck 111088,cat 111089,airplane 111090,bird 111091,truck 111092,dog 111093,frog 111094,deer 111095,cat 111096,cat 111097,horse 111098,deer 111099,truck 111100,ship 111101,bird 111102,dog 111103,horse 111104,bird 111105,deer 111106,ship 111107,truck 111108,airplane 111109,bird 111110,cat 111111,frog 111112,horse 111113,automobile 111114,frog 111115,dog 111116,frog 111117,deer 111118,cat 111119,truck 111120,horse 111121,automobile 111122,dog 111123,truck 111124,deer 111125,deer 111126,frog 111127,truck 111128,bird 111129,truck 111130,cat 111131,horse 111132,dog 111133,frog 111134,cat 111135,automobile 111136,deer 111137,horse 111138,frog 111139,ship 111140,deer 111141,frog 111142,cat 111143,deer 111144,airplane 111145,ship 111146,dog 111147,deer 111148,frog 111149,dog 111150,ship 111151,horse 111152,horse 111153,dog 111154,cat 111155,frog 111156,deer 111157,cat 111158,horse 111159,bird 111160,cat 111161,bird 111162,cat 111163,dog 111164,bird 111165,ship 111166,horse 111167,dog 111168,ship 111169,ship 111170,dog 111171,truck 111172,bird 111173,automobile 111174,deer 111175,dog 111176,deer 111177,truck 111178,truck 111179,ship 111180,horse 111181,airplane 111182,ship 111183,horse 111184,truck 111185,bird 111186,cat 111187,bird 111188,deer 111189,ship 111190,truck 111191,frog 111192,airplane 111193,frog 111194,frog 111195,frog 111196,deer 111197,frog 111198,bird 111199,deer 111200,frog 111201,airplane 111202,deer 111203,cat 111204,frog 111205,airplane 111206,airplane 111207,deer 111208,bird 111209,cat 111210,truck 111211,cat 111212,truck 111213,truck 111214,ship 111215,horse 111216,truck 111217,frog 111218,airplane 111219,airplane 111220,cat 111221,horse 111222,ship 111223,cat 111224,deer 111225,frog 111226,frog 111227,deer 111228,cat 111229,frog 111230,deer 111231,deer 111232,horse 111233,truck 111234,deer 111235,frog 111236,dog 111237,horse 111238,deer 111239,cat 111240,horse 111241,frog 111242,deer 111243,bird 111244,truck 111245,deer 111246,dog 111247,deer 111248,deer 111249,cat 111250,deer 111251,deer 111252,automobile 111253,ship 111254,horse 111255,dog 111256,horse 111257,frog 111258,bird 111259,dog 111260,automobile 111261,deer 111262,automobile 111263,frog 111264,automobile 111265,deer 111266,ship 111267,ship 111268,frog 111269,horse 111270,deer 111271,dog 111272,deer 111273,horse 111274,airplane 111275,deer 111276,cat 111277,frog 111278,cat 111279,automobile 111280,automobile 111281,cat 111282,ship 111283,deer 111284,airplane 111285,truck 111286,airplane 111287,frog 111288,horse 111289,horse 111290,ship 111291,cat 111292,horse 111293,deer 111294,deer 111295,ship 111296,automobile 111297,frog 111298,automobile 111299,ship 111300,deer 111301,bird 111302,dog 111303,deer 111304,frog 111305,frog 111306,airplane 111307,airplane 111308,ship 111309,ship 111310,frog 111311,deer 111312,truck 111313,dog 111314,frog 111315,automobile 111316,cat 111317,cat 111318,airplane 111319,dog 111320,deer 111321,airplane 111322,horse 111323,ship 111324,deer 111325,deer 111326,deer 111327,cat 111328,automobile 111329,bird 111330,airplane 111331,cat 111332,truck 111333,deer 111334,dog 111335,frog 111336,cat 111337,horse 111338,deer 111339,bird 111340,airplane 111341,horse 111342,deer 111343,ship 111344,frog 111345,frog 111346,truck 111347,horse 111348,deer 111349,airplane 111350,deer 111351,deer 111352,cat 111353,frog 111354,truck 111355,cat 111356,horse 111357,cat 111358,airplane 111359,bird 111360,bird 111361,deer 111362,truck 111363,cat 111364,bird 111365,bird 111366,frog 111367,automobile 111368,bird 111369,horse 111370,deer 111371,deer 111372,horse 111373,cat 111374,frog 111375,frog 111376,cat 111377,deer 111378,airplane 111379,deer 111380,cat 111381,ship 111382,dog 111383,ship 111384,horse 111385,deer 111386,horse 111387,deer 111388,deer 111389,bird 111390,horse 111391,ship 111392,airplane 111393,cat 111394,truck 111395,truck 111396,bird 111397,automobile 111398,deer 111399,airplane 111400,ship 111401,frog 111402,horse 111403,automobile 111404,deer 111405,bird 111406,cat 111407,deer 111408,dog 111409,ship 111410,dog 111411,deer 111412,bird 111413,airplane 111414,bird 111415,ship 111416,airplane 111417,horse 111418,deer 111419,truck 111420,dog 111421,dog 111422,truck 111423,truck 111424,airplane 111425,automobile 111426,deer 111427,horse 111428,dog 111429,deer 111430,horse 111431,airplane 111432,airplane 111433,bird 111434,deer 111435,dog 111436,bird 111437,horse 111438,dog 111439,truck 111440,dog 111441,airplane 111442,dog 111443,deer 111444,cat 111445,ship 111446,deer 111447,dog 111448,horse 111449,cat 111450,truck 111451,deer 111452,dog 111453,cat 111454,cat 111455,cat 111456,airplane 111457,cat 111458,frog 111459,horse 111460,automobile 111461,deer 111462,dog 111463,cat 111464,truck 111465,airplane 111466,frog 111467,automobile 111468,airplane 111469,automobile 111470,frog 111471,dog 111472,automobile 111473,deer 111474,deer 111475,airplane 111476,cat 111477,frog 111478,horse 111479,deer 111480,bird 111481,cat 111482,cat 111483,cat 111484,truck 111485,frog 111486,cat 111487,dog 111488,frog 111489,dog 111490,airplane 111491,dog 111492,cat 111493,bird 111494,cat 111495,bird 111496,truck 111497,deer 111498,cat 111499,deer 111500,airplane 111501,automobile 111502,dog 111503,deer 111504,bird 111505,dog 111506,truck 111507,airplane 111508,deer 111509,ship 111510,deer 111511,horse 111512,deer 111513,automobile 111514,frog 111515,truck 111516,frog 111517,deer 111518,deer 111519,airplane 111520,deer 111521,truck 111522,automobile 111523,deer 111524,cat 111525,cat 111526,cat 111527,deer 111528,bird 111529,dog 111530,frog 111531,truck 111532,cat 111533,horse 111534,horse 111535,deer 111536,cat 111537,truck 111538,deer 111539,deer 111540,bird 111541,horse 111542,frog 111543,frog 111544,bird 111545,bird 111546,dog 111547,truck 111548,deer 111549,horse 111550,dog 111551,deer 111552,airplane 111553,dog 111554,cat 111555,frog 111556,frog 111557,horse 111558,truck 111559,horse 111560,automobile 111561,frog 111562,automobile 111563,deer 111564,cat 111565,airplane 111566,automobile 111567,horse 111568,deer 111569,bird 111570,airplane 111571,deer 111572,dog 111573,cat 111574,deer 111575,frog 111576,ship 111577,horse 111578,bird 111579,automobile 111580,cat 111581,frog 111582,dog 111583,frog 111584,automobile 111585,dog 111586,bird 111587,automobile 111588,horse 111589,automobile 111590,frog 111591,dog 111592,frog 111593,automobile 111594,cat 111595,ship 111596,truck 111597,frog 111598,cat 111599,automobile 111600,horse 111601,horse 111602,frog 111603,bird 111604,dog 111605,ship 111606,bird 111607,deer 111608,horse 111609,cat 111610,automobile 111611,horse 111612,truck 111613,deer 111614,frog 111615,deer 111616,dog 111617,cat 111618,ship 111619,dog 111620,airplane 111621,truck 111622,cat 111623,deer 111624,horse 111625,ship 111626,automobile 111627,frog 111628,cat 111629,airplane 111630,horse 111631,airplane 111632,airplane 111633,dog 111634,frog 111635,bird 111636,dog 111637,bird 111638,truck 111639,horse 111640,frog 111641,cat 111642,deer 111643,dog 111644,airplane 111645,deer 111646,airplane 111647,deer 111648,deer 111649,ship 111650,cat 111651,deer 111652,truck 111653,dog 111654,frog 111655,truck 111656,automobile 111657,frog 111658,frog 111659,airplane 111660,airplane 111661,bird 111662,deer 111663,deer 111664,airplane 111665,ship 111666,frog 111667,cat 111668,automobile 111669,cat 111670,airplane 111671,airplane 111672,frog 111673,ship 111674,truck 111675,truck 111676,airplane 111677,automobile 111678,truck 111679,truck 111680,frog 111681,truck 111682,bird 111683,horse 111684,airplane 111685,deer 111686,truck 111687,horse 111688,ship 111689,automobile 111690,automobile 111691,cat 111692,deer 111693,dog 111694,deer 111695,ship 111696,ship 111697,deer 111698,frog 111699,dog 111700,truck 111701,automobile 111702,dog 111703,cat 111704,frog 111705,deer 111706,automobile 111707,dog 111708,horse 111709,cat 111710,cat 111711,frog 111712,frog 111713,truck 111714,cat 111715,deer 111716,frog 111717,ship 111718,cat 111719,deer 111720,deer 111721,deer 111722,dog 111723,frog 111724,dog 111725,bird 111726,horse 111727,ship 111728,truck 111729,cat 111730,dog 111731,airplane 111732,cat 111733,deer 111734,bird 111735,airplane 111736,ship 111737,dog 111738,dog 111739,ship 111740,cat 111741,horse 111742,truck 111743,cat 111744,frog 111745,deer 111746,ship 111747,cat 111748,airplane 111749,automobile 111750,ship 111751,ship 111752,cat 111753,dog 111754,automobile 111755,bird 111756,airplane 111757,ship 111758,horse 111759,dog 111760,dog 111761,airplane 111762,dog 111763,frog 111764,deer 111765,horse 111766,bird 111767,deer 111768,truck 111769,bird 111770,deer 111771,frog 111772,ship 111773,frog 111774,cat 111775,frog 111776,truck 111777,bird 111778,horse 111779,truck 111780,deer 111781,cat 111782,dog 111783,deer 111784,frog 111785,cat 111786,airplane 111787,deer 111788,airplane 111789,deer 111790,dog 111791,frog 111792,truck 111793,frog 111794,dog 111795,dog 111796,airplane 111797,cat 111798,cat 111799,deer 111800,airplane 111801,bird 111802,bird 111803,horse 111804,truck 111805,airplane 111806,dog 111807,automobile 111808,deer 111809,bird 111810,cat 111811,frog 111812,airplane 111813,truck 111814,automobile 111815,dog 111816,ship 111817,dog 111818,frog 111819,airplane 111820,bird 111821,horse 111822,ship 111823,frog 111824,dog 111825,cat 111826,frog 111827,ship 111828,frog 111829,truck 111830,dog 111831,dog 111832,cat 111833,dog 111834,ship 111835,ship 111836,ship 111837,deer 111838,deer 111839,ship 111840,horse 111841,frog 111842,ship 111843,dog 111844,horse 111845,automobile 111846,cat 111847,cat 111848,dog 111849,cat 111850,deer 111851,deer 111852,frog 111853,deer 111854,automobile 111855,bird 111856,bird 111857,frog 111858,ship 111859,deer 111860,cat 111861,deer 111862,frog 111863,frog 111864,cat 111865,bird 111866,truck 111867,ship 111868,automobile 111869,automobile 111870,automobile 111871,bird 111872,deer 111873,horse 111874,dog 111875,horse 111876,frog 111877,horse 111878,cat 111879,frog 111880,horse 111881,truck 111882,ship 111883,frog 111884,horse 111885,deer 111886,airplane 111887,frog 111888,frog 111889,deer 111890,truck 111891,airplane 111892,deer 111893,bird 111894,automobile 111895,deer 111896,airplane 111897,dog 111898,horse 111899,deer 111900,dog 111901,bird 111902,bird 111903,cat 111904,deer 111905,horse 111906,cat 111907,frog 111908,horse 111909,truck 111910,airplane 111911,dog 111912,bird 111913,automobile 111914,ship 111915,frog 111916,truck 111917,deer 111918,airplane 111919,deer 111920,deer 111921,frog 111922,cat 111923,frog 111924,dog 111925,automobile 111926,automobile 111927,ship 111928,cat 111929,cat 111930,frog 111931,cat 111932,truck 111933,airplane 111934,airplane 111935,bird 111936,dog 111937,bird 111938,truck 111939,bird 111940,truck 111941,deer 111942,horse 111943,deer 111944,dog 111945,cat 111946,deer 111947,ship 111948,dog 111949,airplane 111950,truck 111951,horse 111952,truck 111953,dog 111954,ship 111955,cat 111956,deer 111957,horse 111958,bird 111959,truck 111960,truck 111961,ship 111962,deer 111963,automobile 111964,cat 111965,dog 111966,cat 111967,bird 111968,cat 111969,horse 111970,ship 111971,deer 111972,deer 111973,horse 111974,ship 111975,ship 111976,airplane 111977,automobile 111978,deer 111979,deer 111980,dog 111981,frog 111982,bird 111983,truck 111984,horse 111985,airplane 111986,deer 111987,truck 111988,horse 111989,horse 111990,truck 111991,cat 111992,cat 111993,cat 111994,cat 111995,ship 111996,airplane 111997,frog 111998,truck 111999,frog 112000,truck 112001,ship 112002,airplane 112003,deer 112004,truck 112005,cat 112006,truck 112007,truck 112008,deer 112009,cat 112010,cat 112011,truck 112012,automobile 112013,horse 112014,cat 112015,airplane 112016,automobile 112017,bird 112018,bird 112019,deer 112020,frog 112021,frog 112022,airplane 112023,deer 112024,dog 112025,frog 112026,automobile 112027,frog 112028,bird 112029,frog 112030,cat 112031,frog 112032,dog 112033,cat 112034,automobile 112035,deer 112036,deer 112037,bird 112038,dog 112039,frog 112040,ship 112041,ship 112042,bird 112043,bird 112044,airplane 112045,frog 112046,airplane 112047,cat 112048,frog 112049,frog 112050,frog 112051,horse 112052,dog 112053,bird 112054,horse 112055,truck 112056,automobile 112057,horse 112058,frog 112059,dog 112060,horse 112061,dog 112062,deer 112063,ship 112064,automobile 112065,automobile 112066,cat 112067,frog 112068,frog 112069,airplane 112070,truck 112071,automobile 112072,automobile 112073,airplane 112074,horse 112075,cat 112076,ship 112077,ship 112078,dog 112079,dog 112080,dog 112081,deer 112082,frog 112083,bird 112084,frog 112085,frog 112086,cat 112087,truck 112088,dog 112089,bird 112090,frog 112091,airplane 112092,cat 112093,dog 112094,frog 112095,cat 112096,cat 112097,truck 112098,bird 112099,ship 112100,truck 112101,airplane 112102,truck 112103,bird 112104,airplane 112105,airplane 112106,frog 112107,truck 112108,automobile 112109,truck 112110,cat 112111,dog 112112,bird 112113,frog 112114,deer 112115,deer 112116,truck 112117,frog 112118,truck 112119,bird 112120,cat 112121,cat 112122,cat 112123,dog 112124,dog 112125,deer 112126,cat 112127,deer 112128,frog 112129,ship 112130,deer 112131,deer 112132,horse 112133,bird 112134,truck 112135,deer 112136,truck 112137,airplane 112138,cat 112139,automobile 112140,truck 112141,cat 112142,dog 112143,dog 112144,bird 112145,truck 112146,truck 112147,deer 112148,bird 112149,truck 112150,deer 112151,bird 112152,deer 112153,cat 112154,automobile 112155,dog 112156,dog 112157,bird 112158,airplane 112159,frog 112160,truck 112161,frog 112162,bird 112163,deer 112164,truck 112165,automobile 112166,dog 112167,cat 112168,deer 112169,deer 112170,frog 112171,horse 112172,frog 112173,ship 112174,horse 112175,automobile 112176,deer 112177,deer 112178,frog 112179,dog 112180,deer 112181,dog 112182,deer 112183,cat 112184,dog 112185,cat 112186,dog 112187,ship 112188,deer 112189,automobile 112190,dog 112191,frog 112192,airplane 112193,airplane 112194,automobile 112195,frog 112196,deer 112197,cat 112198,horse 112199,truck 112200,frog 112201,cat 112202,dog 112203,horse 112204,dog 112205,automobile 112206,ship 112207,frog 112208,frog 112209,cat 112210,automobile 112211,airplane 112212,frog 112213,truck 112214,automobile 112215,truck 112216,ship 112217,truck 112218,cat 112219,dog 112220,cat 112221,airplane 112222,dog 112223,cat 112224,horse 112225,truck 112226,frog 112227,horse 112228,bird 112229,deer 112230,horse 112231,horse 112232,deer 112233,cat 112234,automobile 112235,dog 112236,truck 112237,bird 112238,automobile 112239,deer 112240,ship 112241,airplane 112242,truck 112243,horse 112244,frog 112245,airplane 112246,truck 112247,ship 112248,dog 112249,deer 112250,cat 112251,dog 112252,ship 112253,frog 112254,deer 112255,horse 112256,horse 112257,deer 112258,deer 112259,frog 112260,deer 112261,bird 112262,bird 112263,airplane 112264,automobile 112265,ship 112266,truck 112267,airplane 112268,horse 112269,frog 112270,frog 112271,deer 112272,dog 112273,airplane 112274,deer 112275,bird 112276,airplane 112277,airplane 112278,horse 112279,cat 112280,automobile 112281,deer 112282,bird 112283,cat 112284,cat 112285,frog 112286,deer 112287,airplane 112288,truck 112289,ship 112290,truck 112291,frog 112292,cat 112293,deer 112294,horse 112295,frog 112296,horse 112297,airplane 112298,deer 112299,truck 112300,airplane 112301,frog 112302,cat 112303,automobile 112304,dog 112305,horse 112306,bird 112307,ship 112308,frog 112309,frog 112310,deer 112311,airplane 112312,dog 112313,cat 112314,truck 112315,horse 112316,bird 112317,deer 112318,horse 112319,ship 112320,frog 112321,frog 112322,cat 112323,deer 112324,truck 112325,truck 112326,frog 112327,bird 112328,bird 112329,airplane 112330,airplane 112331,frog 112332,cat 112333,bird 112334,truck 112335,cat 112336,automobile 112337,truck 112338,cat 112339,deer 112340,frog 112341,ship 112342,horse 112343,dog 112344,automobile 112345,deer 112346,deer 112347,airplane 112348,frog 112349,bird 112350,truck 112351,deer 112352,frog 112353,ship 112354,frog 112355,dog 112356,cat 112357,frog 112358,deer 112359,cat 112360,automobile 112361,dog 112362,deer 112363,cat 112364,deer 112365,bird 112366,airplane 112367,airplane 112368,ship 112369,deer 112370,airplane 112371,horse 112372,dog 112373,bird 112374,ship 112375,cat 112376,airplane 112377,horse 112378,ship 112379,bird 112380,frog 112381,deer 112382,airplane 112383,ship 112384,airplane 112385,deer 112386,ship 112387,frog 112388,horse 112389,dog 112390,cat 112391,frog 112392,dog 112393,truck 112394,bird 112395,airplane 112396,truck 112397,ship 112398,deer 112399,ship 112400,airplane 112401,horse 112402,dog 112403,truck 112404,deer 112405,airplane 112406,airplane 112407,automobile 112408,automobile 112409,dog 112410,truck 112411,ship 112412,bird 112413,frog 112414,cat 112415,frog 112416,bird 112417,horse 112418,frog 112419,dog 112420,deer 112421,deer 112422,dog 112423,truck 112424,truck 112425,truck 112426,ship 112427,horse 112428,cat 112429,frog 112430,truck 112431,cat 112432,horse 112433,automobile 112434,cat 112435,cat 112436,frog 112437,bird 112438,deer 112439,deer 112440,horse 112441,deer 112442,deer 112443,horse 112444,ship 112445,bird 112446,dog 112447,truck 112448,deer 112449,frog 112450,deer 112451,truck 112452,deer 112453,automobile 112454,horse 112455,frog 112456,automobile 112457,horse 112458,cat 112459,ship 112460,airplane 112461,horse 112462,truck 112463,deer 112464,automobile 112465,cat 112466,deer 112467,dog 112468,bird 112469,truck 112470,bird 112471,horse 112472,airplane 112473,ship 112474,deer 112475,dog 112476,horse 112477,airplane 112478,deer 112479,airplane 112480,truck 112481,automobile 112482,ship 112483,bird 112484,cat 112485,ship 112486,airplane 112487,frog 112488,bird 112489,deer 112490,deer 112491,frog 112492,truck 112493,deer 112494,dog 112495,truck 112496,deer 112497,deer 112498,bird 112499,frog 112500,truck 112501,cat 112502,cat 112503,ship 112504,bird 112505,horse 112506,bird 112507,deer 112508,horse 112509,deer 112510,bird 112511,cat 112512,airplane 112513,airplane 112514,cat 112515,airplane 112516,bird 112517,airplane 112518,bird 112519,frog 112520,ship 112521,frog 112522,horse 112523,truck 112524,frog 112525,deer 112526,bird 112527,frog 112528,bird 112529,automobile 112530,cat 112531,ship 112532,frog 112533,bird 112534,ship 112535,deer 112536,deer 112537,cat 112538,bird 112539,cat 112540,dog 112541,deer 112542,ship 112543,deer 112544,cat 112545,frog 112546,horse 112547,frog 112548,truck 112549,cat 112550,automobile 112551,deer 112552,cat 112553,deer 112554,frog 112555,truck 112556,airplane 112557,automobile 112558,airplane 112559,airplane 112560,frog 112561,ship 112562,truck 112563,truck 112564,horse 112565,frog 112566,cat 112567,horse 112568,truck 112569,dog 112570,airplane 112571,horse 112572,bird 112573,dog 112574,frog 112575,automobile 112576,automobile 112577,dog 112578,automobile 112579,truck 112580,frog 112581,airplane 112582,frog 112583,truck 112584,horse 112585,dog 112586,bird 112587,bird 112588,deer 112589,deer 112590,cat 112591,cat 112592,frog 112593,ship 112594,cat 112595,deer 112596,frog 112597,automobile 112598,horse 112599,horse 112600,horse 112601,airplane 112602,deer 112603,airplane 112604,cat 112605,ship 112606,airplane 112607,deer 112608,horse 112609,deer 112610,dog 112611,dog 112612,truck 112613,cat 112614,horse 112615,deer 112616,automobile 112617,ship 112618,dog 112619,cat 112620,horse 112621,bird 112622,deer 112623,horse 112624,deer 112625,cat 112626,automobile 112627,deer 112628,frog 112629,dog 112630,dog 112631,deer 112632,automobile 112633,deer 112634,deer 112635,bird 112636,ship 112637,cat 112638,horse 112639,frog 112640,deer 112641,deer 112642,deer 112643,bird 112644,truck 112645,horse 112646,automobile 112647,automobile 112648,deer 112649,frog 112650,truck 112651,truck 112652,dog 112653,frog 112654,ship 112655,horse 112656,cat 112657,dog 112658,dog 112659,automobile 112660,dog 112661,deer 112662,horse 112663,horse 112664,bird 112665,cat 112666,truck 112667,bird 112668,deer 112669,ship 112670,airplane 112671,dog 112672,ship 112673,ship 112674,cat 112675,airplane 112676,dog 112677,automobile 112678,deer 112679,cat 112680,horse 112681,deer 112682,frog 112683,dog 112684,deer 112685,airplane 112686,horse 112687,ship 112688,bird 112689,deer 112690,bird 112691,ship 112692,horse 112693,automobile 112694,airplane 112695,horse 112696,truck 112697,cat 112698,bird 112699,dog 112700,cat 112701,frog 112702,frog 112703,truck 112704,dog 112705,bird 112706,truck 112707,truck 112708,cat 112709,airplane 112710,automobile 112711,airplane 112712,frog 112713,automobile 112714,truck 112715,truck 112716,deer 112717,cat 112718,truck 112719,dog 112720,deer 112721,automobile 112722,deer 112723,bird 112724,truck 112725,truck 112726,truck 112727,deer 112728,deer 112729,truck 112730,deer 112731,deer 112732,bird 112733,truck 112734,deer 112735,truck 112736,bird 112737,airplane 112738,bird 112739,ship 112740,frog 112741,cat 112742,automobile 112743,ship 112744,bird 112745,cat 112746,horse 112747,horse 112748,frog 112749,deer 112750,deer 112751,automobile 112752,cat 112753,ship 112754,bird 112755,truck 112756,cat 112757,frog 112758,deer 112759,airplane 112760,horse 112761,deer 112762,deer 112763,cat 112764,ship 112765,bird 112766,dog 112767,frog 112768,truck 112769,automobile 112770,frog 112771,airplane 112772,dog 112773,horse 112774,deer 112775,ship 112776,ship 112777,frog 112778,airplane 112779,deer 112780,automobile 112781,truck 112782,dog 112783,frog 112784,frog 112785,dog 112786,frog 112787,horse 112788,horse 112789,horse 112790,frog 112791,airplane 112792,deer 112793,cat 112794,frog 112795,cat 112796,automobile 112797,cat 112798,frog 112799,truck 112800,truck 112801,bird 112802,dog 112803,airplane 112804,cat 112805,airplane 112806,automobile 112807,cat 112808,bird 112809,dog 112810,airplane 112811,truck 112812,cat 112813,frog 112814,cat 112815,cat 112816,automobile 112817,dog 112818,truck 112819,cat 112820,automobile 112821,dog 112822,ship 112823,dog 112824,dog 112825,frog 112826,frog 112827,ship 112828,cat 112829,ship 112830,cat 112831,automobile 112832,ship 112833,cat 112834,automobile 112835,airplane 112836,truck 112837,deer 112838,frog 112839,airplane 112840,truck 112841,horse 112842,cat 112843,truck 112844,cat 112845,cat 112846,cat 112847,horse 112848,horse 112849,horse 112850,bird 112851,deer 112852,horse 112853,horse 112854,airplane 112855,automobile 112856,frog 112857,horse 112858,frog 112859,automobile 112860,automobile 112861,horse 112862,horse 112863,dog 112864,dog 112865,horse 112866,bird 112867,cat 112868,truck 112869,bird 112870,cat 112871,truck 112872,truck 112873,dog 112874,cat 112875,bird 112876,frog 112877,cat 112878,automobile 112879,cat 112880,deer 112881,frog 112882,cat 112883,airplane 112884,cat 112885,airplane 112886,ship 112887,truck 112888,truck 112889,airplane 112890,deer 112891,horse 112892,deer 112893,deer 112894,horse 112895,frog 112896,truck 112897,dog 112898,deer 112899,horse 112900,frog 112901,truck 112902,truck 112903,truck 112904,frog 112905,deer 112906,cat 112907,airplane 112908,truck 112909,bird 112910,ship 112911,deer 112912,cat 112913,airplane 112914,ship 112915,dog 112916,cat 112917,cat 112918,bird 112919,airplane 112920,frog 112921,deer 112922,cat 112923,horse 112924,deer 112925,deer 112926,dog 112927,dog 112928,deer 112929,cat 112930,truck 112931,airplane 112932,frog 112933,deer 112934,truck 112935,truck 112936,dog 112937,frog 112938,truck 112939,ship 112940,cat 112941,cat 112942,ship 112943,deer 112944,ship 112945,dog 112946,automobile 112947,cat 112948,dog 112949,deer 112950,automobile 112951,cat 112952,bird 112953,deer 112954,cat 112955,frog 112956,deer 112957,bird 112958,frog 112959,automobile 112960,dog 112961,dog 112962,cat 112963,cat 112964,airplane 112965,frog 112966,truck 112967,airplane 112968,cat 112969,bird 112970,horse 112971,horse 112972,cat 112973,airplane 112974,bird 112975,bird 112976,bird 112977,cat 112978,cat 112979,ship 112980,automobile 112981,frog 112982,truck 112983,dog 112984,bird 112985,truck 112986,automobile 112987,airplane 112988,deer 112989,airplane 112990,frog 112991,cat 112992,deer 112993,airplane 112994,deer 112995,ship 112996,automobile 112997,frog 112998,automobile 112999,frog 113000,frog 113001,frog 113002,bird 113003,truck 113004,horse 113005,truck 113006,ship 113007,truck 113008,bird 113009,ship 113010,ship 113011,deer 113012,bird 113013,frog 113014,bird 113015,truck 113016,airplane 113017,ship 113018,cat 113019,deer 113020,cat 113021,deer 113022,bird 113023,frog 113024,dog 113025,ship 113026,airplane 113027,cat 113028,ship 113029,ship 113030,airplane 113031,frog 113032,horse 113033,cat 113034,dog 113035,frog 113036,ship 113037,cat 113038,horse 113039,airplane 113040,automobile 113041,frog 113042,truck 113043,horse 113044,frog 113045,cat 113046,frog 113047,deer 113048,dog 113049,horse 113050,horse 113051,ship 113052,deer 113053,automobile 113054,cat 113055,bird 113056,bird 113057,bird 113058,horse 113059,airplane 113060,truck 113061,automobile 113062,deer 113063,frog 113064,cat 113065,automobile 113066,dog 113067,frog 113068,bird 113069,frog 113070,cat 113071,deer 113072,frog 113073,ship 113074,cat 113075,truck 113076,dog 113077,ship 113078,ship 113079,frog 113080,cat 113081,cat 113082,cat 113083,cat 113084,frog 113085,truck 113086,ship 113087,cat 113088,bird 113089,airplane 113090,cat 113091,dog 113092,airplane 113093,cat 113094,deer 113095,horse 113096,frog 113097,frog 113098,airplane 113099,ship 113100,horse 113101,horse 113102,cat 113103,deer 113104,frog 113105,airplane 113106,deer 113107,airplane 113108,dog 113109,frog 113110,deer 113111,ship 113112,airplane 113113,ship 113114,automobile 113115,cat 113116,horse 113117,airplane 113118,truck 113119,ship 113120,frog 113121,cat 113122,bird 113123,automobile 113124,dog 113125,dog 113126,truck 113127,horse 113128,deer 113129,ship 113130,cat 113131,truck 113132,deer 113133,deer 113134,ship 113135,horse 113136,truck 113137,cat 113138,dog 113139,truck 113140,airplane 113141,truck 113142,ship 113143,horse 113144,dog 113145,cat 113146,truck 113147,ship 113148,airplane 113149,dog 113150,airplane 113151,automobile 113152,automobile 113153,automobile 113154,horse 113155,bird 113156,dog 113157,bird 113158,cat 113159,truck 113160,ship 113161,deer 113162,cat 113163,cat 113164,airplane 113165,frog 113166,dog 113167,truck 113168,automobile 113169,cat 113170,frog 113171,truck 113172,cat 113173,bird 113174,dog 113175,truck 113176,cat 113177,horse 113178,bird 113179,bird 113180,horse 113181,deer 113182,deer 113183,frog 113184,frog 113185,truck 113186,airplane 113187,dog 113188,frog 113189,airplane 113190,cat 113191,frog 113192,cat 113193,ship 113194,frog 113195,ship 113196,cat 113197,deer 113198,deer 113199,cat 113200,dog 113201,horse 113202,deer 113203,horse 113204,airplane 113205,airplane 113206,airplane 113207,deer 113208,truck 113209,cat 113210,automobile 113211,truck 113212,deer 113213,airplane 113214,frog 113215,ship 113216,frog 113217,frog 113218,bird 113219,dog 113220,bird 113221,horse 113222,automobile 113223,cat 113224,horse 113225,ship 113226,frog 113227,deer 113228,deer 113229,deer 113230,frog 113231,cat 113232,truck 113233,cat 113234,truck 113235,dog 113236,cat 113237,frog 113238,horse 113239,automobile 113240,ship 113241,deer 113242,deer 113243,cat 113244,deer 113245,dog 113246,deer 113247,dog 113248,bird 113249,horse 113250,horse 113251,horse 113252,truck 113253,frog 113254,ship 113255,cat 113256,truck 113257,cat 113258,airplane 113259,horse 113260,bird 113261,dog 113262,truck 113263,horse 113264,deer 113265,deer 113266,truck 113267,deer 113268,cat 113269,truck 113270,cat 113271,deer 113272,bird 113273,dog 113274,automobile 113275,automobile 113276,dog 113277,automobile 113278,cat 113279,ship 113280,cat 113281,cat 113282,deer 113283,truck 113284,cat 113285,frog 113286,truck 113287,deer 113288,horse 113289,dog 113290,horse 113291,bird 113292,horse 113293,frog 113294,automobile 113295,automobile 113296,horse 113297,frog 113298,cat 113299,dog 113300,dog 113301,deer 113302,automobile 113303,automobile 113304,deer 113305,cat 113306,horse 113307,ship 113308,airplane 113309,airplane 113310,horse 113311,airplane 113312,horse 113313,dog 113314,cat 113315,airplane 113316,cat 113317,automobile 113318,deer 113319,deer 113320,airplane 113321,horse 113322,cat 113323,frog 113324,horse 113325,truck 113326,ship 113327,frog 113328,horse 113329,airplane 113330,cat 113331,bird 113332,bird 113333,bird 113334,horse 113335,cat 113336,horse 113337,airplane 113338,bird 113339,dog 113340,ship 113341,airplane 113342,airplane 113343,dog 113344,deer 113345,cat 113346,truck 113347,truck 113348,cat 113349,deer 113350,horse 113351,cat 113352,horse 113353,deer 113354,deer 113355,horse 113356,horse 113357,deer 113358,automobile 113359,cat 113360,airplane 113361,airplane 113362,airplane 113363,airplane 113364,bird 113365,automobile 113366,airplane 113367,deer 113368,horse 113369,deer 113370,cat 113371,cat 113372,truck 113373,dog 113374,automobile 113375,truck 113376,deer 113377,cat 113378,truck 113379,cat 113380,horse 113381,deer 113382,airplane 113383,bird 113384,automobile 113385,dog 113386,cat 113387,cat 113388,cat 113389,ship 113390,airplane 113391,airplane 113392,bird 113393,ship 113394,frog 113395,cat 113396,automobile 113397,frog 113398,dog 113399,automobile 113400,dog 113401,airplane 113402,airplane 113403,ship 113404,bird 113405,cat 113406,ship 113407,automobile 113408,frog 113409,horse 113410,airplane 113411,truck 113412,truck 113413,horse 113414,horse 113415,deer 113416,cat 113417,airplane 113418,deer 113419,truck 113420,horse 113421,ship 113422,truck 113423,ship 113424,truck 113425,dog 113426,truck 113427,bird 113428,cat 113429,cat 113430,frog 113431,truck 113432,frog 113433,truck 113434,truck 113435,dog 113436,bird 113437,frog 113438,deer 113439,deer 113440,cat 113441,cat 113442,horse 113443,deer 113444,dog 113445,airplane 113446,dog 113447,truck 113448,cat 113449,airplane 113450,cat 113451,horse 113452,horse 113453,frog 113454,airplane 113455,ship 113456,cat 113457,cat 113458,cat 113459,frog 113460,frog 113461,bird 113462,cat 113463,airplane 113464,automobile 113465,frog 113466,cat 113467,ship 113468,frog 113469,automobile 113470,cat 113471,dog 113472,frog 113473,horse 113474,truck 113475,deer 113476,frog 113477,bird 113478,bird 113479,frog 113480,ship 113481,deer 113482,cat 113483,truck 113484,ship 113485,dog 113486,cat 113487,dog 113488,deer 113489,ship 113490,cat 113491,deer 113492,horse 113493,bird 113494,deer 113495,cat 113496,bird 113497,automobile 113498,dog 113499,ship 113500,cat 113501,dog 113502,frog 113503,frog 113504,deer 113505,deer 113506,ship 113507,horse 113508,frog 113509,deer 113510,cat 113511,deer 113512,cat 113513,automobile 113514,ship 113515,cat 113516,deer 113517,dog 113518,ship 113519,cat 113520,frog 113521,cat 113522,ship 113523,ship 113524,bird 113525,frog 113526,dog 113527,deer 113528,ship 113529,horse 113530,horse 113531,truck 113532,cat 113533,automobile 113534,automobile 113535,dog 113536,cat 113537,deer 113538,deer 113539,cat 113540,ship 113541,dog 113542,horse 113543,automobile 113544,frog 113545,bird 113546,automobile 113547,bird 113548,frog 113549,airplane 113550,ship 113551,ship 113552,bird 113553,cat 113554,bird 113555,automobile 113556,airplane 113557,dog 113558,airplane 113559,deer 113560,frog 113561,cat 113562,ship 113563,automobile 113564,bird 113565,bird 113566,ship 113567,horse 113568,dog 113569,automobile 113570,airplane 113571,horse 113572,deer 113573,deer 113574,horse 113575,airplane 113576,airplane 113577,automobile 113578,airplane 113579,truck 113580,deer 113581,ship 113582,ship 113583,ship 113584,deer 113585,deer 113586,cat 113587,frog 113588,horse 113589,deer 113590,deer 113591,bird 113592,truck 113593,ship 113594,ship 113595,deer 113596,horse 113597,frog 113598,cat 113599,dog 113600,deer 113601,dog 113602,frog 113603,automobile 113604,frog 113605,airplane 113606,automobile 113607,airplane 113608,ship 113609,dog 113610,truck 113611,truck 113612,bird 113613,automobile 113614,ship 113615,frog 113616,frog 113617,truck 113618,deer 113619,deer 113620,bird 113621,frog 113622,horse 113623,horse 113624,horse 113625,horse 113626,dog 113627,deer 113628,frog 113629,frog 113630,ship 113631,frog 113632,cat 113633,ship 113634,frog 113635,frog 113636,horse 113637,deer 113638,deer 113639,ship 113640,dog 113641,truck 113642,dog 113643,truck 113644,cat 113645,frog 113646,horse 113647,ship 113648,horse 113649,horse 113650,airplane 113651,dog 113652,bird 113653,horse 113654,deer 113655,cat 113656,ship 113657,ship 113658,airplane 113659,cat 113660,airplane 113661,ship 113662,ship 113663,truck 113664,automobile 113665,bird 113666,deer 113667,truck 113668,airplane 113669,deer 113670,cat 113671,horse 113672,horse 113673,airplane 113674,horse 113675,airplane 113676,dog 113677,deer 113678,airplane 113679,deer 113680,automobile 113681,horse 113682,horse 113683,airplane 113684,deer 113685,dog 113686,horse 113687,bird 113688,truck 113689,dog 113690,frog 113691,dog 113692,deer 113693,truck 113694,bird 113695,frog 113696,frog 113697,ship 113698,deer 113699,dog 113700,automobile 113701,frog 113702,airplane 113703,horse 113704,deer 113705,frog 113706,automobile 113707,dog 113708,truck 113709,cat 113710,bird 113711,ship 113712,dog 113713,airplane 113714,automobile 113715,truck 113716,truck 113717,cat 113718,airplane 113719,cat 113720,horse 113721,bird 113722,bird 113723,dog 113724,bird 113725,frog 113726,horse 113727,ship 113728,truck 113729,frog 113730,deer 113731,frog 113732,deer 113733,bird 113734,cat 113735,airplane 113736,frog 113737,deer 113738,dog 113739,truck 113740,dog 113741,deer 113742,frog 113743,ship 113744,dog 113745,dog 113746,cat 113747,frog 113748,frog 113749,deer 113750,bird 113751,horse 113752,horse 113753,ship 113754,horse 113755,deer 113756,dog 113757,dog 113758,dog 113759,cat 113760,ship 113761,horse 113762,deer 113763,cat 113764,cat 113765,horse 113766,deer 113767,automobile 113768,automobile 113769,bird 113770,dog 113771,bird 113772,cat 113773,cat 113774,ship 113775,ship 113776,deer 113777,horse 113778,ship 113779,bird 113780,ship 113781,frog 113782,deer 113783,ship 113784,frog 113785,frog 113786,frog 113787,frog 113788,airplane 113789,cat 113790,dog 113791,cat 113792,dog 113793,frog 113794,deer 113795,automobile 113796,truck 113797,dog 113798,deer 113799,ship 113800,bird 113801,truck 113802,cat 113803,horse 113804,frog 113805,automobile 113806,deer 113807,deer 113808,dog 113809,cat 113810,ship 113811,cat 113812,horse 113813,horse 113814,dog 113815,ship 113816,frog 113817,horse 113818,deer 113819,deer 113820,frog 113821,cat 113822,truck 113823,frog 113824,truck 113825,deer 113826,automobile 113827,deer 113828,horse 113829,dog 113830,horse 113831,cat 113832,deer 113833,horse 113834,cat 113835,ship 113836,ship 113837,horse 113838,deer 113839,ship 113840,deer 113841,ship 113842,deer 113843,cat 113844,truck 113845,cat 113846,horse 113847,ship 113848,airplane 113849,horse 113850,cat 113851,deer 113852,cat 113853,truck 113854,truck 113855,horse 113856,horse 113857,airplane 113858,dog 113859,airplane 113860,horse 113861,deer 113862,deer 113863,dog 113864,truck 113865,truck 113866,truck 113867,automobile 113868,airplane 113869,frog 113870,cat 113871,ship 113872,bird 113873,automobile 113874,bird 113875,deer 113876,airplane 113877,cat 113878,frog 113879,deer 113880,deer 113881,truck 113882,truck 113883,cat 113884,dog 113885,ship 113886,automobile 113887,frog 113888,airplane 113889,airplane 113890,cat 113891,automobile 113892,bird 113893,dog 113894,ship 113895,bird 113896,bird 113897,dog 113898,airplane 113899,truck 113900,truck 113901,ship 113902,deer 113903,deer 113904,frog 113905,dog 113906,deer 113907,cat 113908,cat 113909,bird 113910,airplane 113911,bird 113912,deer 113913,ship 113914,ship 113915,automobile 113916,horse 113917,airplane 113918,cat 113919,automobile 113920,frog 113921,truck 113922,dog 113923,ship 113924,cat 113925,ship 113926,horse 113927,truck 113928,cat 113929,horse 113930,deer 113931,airplane 113932,horse 113933,dog 113934,cat 113935,truck 113936,bird 113937,cat 113938,deer 113939,cat 113940,frog 113941,ship 113942,automobile 113943,dog 113944,truck 113945,horse 113946,deer 113947,cat 113948,truck 113949,truck 113950,bird 113951,bird 113952,truck 113953,deer 113954,bird 113955,cat 113956,dog 113957,ship 113958,bird 113959,airplane 113960,dog 113961,deer 113962,cat 113963,cat 113964,horse 113965,truck 113966,cat 113967,deer 113968,dog 113969,frog 113970,deer 113971,ship 113972,frog 113973,horse 113974,ship 113975,cat 113976,deer 113977,frog 113978,cat 113979,deer 113980,automobile 113981,deer 113982,deer 113983,cat 113984,dog 113985,airplane 113986,frog 113987,horse 113988,bird 113989,airplane 113990,cat 113991,cat 113992,dog 113993,cat 113994,airplane 113995,automobile 113996,dog 113997,deer 113998,horse 113999,airplane 114000,cat 114001,horse 114002,bird 114003,deer 114004,deer 114005,horse 114006,automobile 114007,deer 114008,ship 114009,cat 114010,deer 114011,bird 114012,dog 114013,truck 114014,ship 114015,frog 114016,automobile 114017,dog 114018,truck 114019,cat 114020,cat 114021,ship 114022,airplane 114023,horse 114024,cat 114025,frog 114026,automobile 114027,truck 114028,deer 114029,ship 114030,dog 114031,cat 114032,ship 114033,dog 114034,airplane 114035,ship 114036,bird 114037,cat 114038,horse 114039,horse 114040,bird 114041,frog 114042,truck 114043,truck 114044,cat 114045,frog 114046,frog 114047,airplane 114048,ship 114049,horse 114050,dog 114051,airplane 114052,ship 114053,deer 114054,airplane 114055,horse 114056,frog 114057,truck 114058,airplane 114059,airplane 114060,dog 114061,frog 114062,cat 114063,deer 114064,automobile 114065,airplane 114066,dog 114067,cat 114068,deer 114069,airplane 114070,dog 114071,cat 114072,automobile 114073,deer 114074,frog 114075,deer 114076,bird 114077,deer 114078,bird 114079,cat 114080,ship 114081,frog 114082,dog 114083,automobile 114084,deer 114085,cat 114086,truck 114087,dog 114088,airplane 114089,bird 114090,airplane 114091,automobile 114092,airplane 114093,frog 114094,ship 114095,truck 114096,airplane 114097,truck 114098,dog 114099,cat 114100,cat 114101,horse 114102,dog 114103,deer 114104,airplane 114105,cat 114106,dog 114107,automobile 114108,truck 114109,frog 114110,deer 114111,automobile 114112,bird 114113,airplane 114114,cat 114115,cat 114116,frog 114117,truck 114118,truck 114119,cat 114120,bird 114121,frog 114122,automobile 114123,frog 114124,deer 114125,deer 114126,frog 114127,horse 114128,truck 114129,truck 114130,automobile 114131,bird 114132,deer 114133,truck 114134,dog 114135,truck 114136,cat 114137,airplane 114138,ship 114139,cat 114140,bird 114141,airplane 114142,deer 114143,deer 114144,automobile 114145,ship 114146,ship 114147,bird 114148,horse 114149,deer 114150,deer 114151,truck 114152,frog 114153,cat 114154,ship 114155,frog 114156,automobile 114157,ship 114158,cat 114159,bird 114160,dog 114161,frog 114162,horse 114163,cat 114164,bird 114165,frog 114166,cat 114167,bird 114168,dog 114169,truck 114170,ship 114171,deer 114172,automobile 114173,bird 114174,deer 114175,cat 114176,frog 114177,deer 114178,truck 114179,frog 114180,horse 114181,ship 114182,truck 114183,ship 114184,horse 114185,dog 114186,automobile 114187,dog 114188,deer 114189,dog 114190,cat 114191,ship 114192,truck 114193,deer 114194,dog 114195,cat 114196,bird 114197,deer 114198,automobile 114199,truck 114200,horse 114201,deer 114202,automobile 114203,horse 114204,automobile 114205,bird 114206,horse 114207,cat 114208,airplane 114209,cat 114210,truck 114211,ship 114212,bird 114213,dog 114214,horse 114215,cat 114216,frog 114217,cat 114218,bird 114219,truck 114220,bird 114221,horse 114222,horse 114223,deer 114224,frog 114225,cat 114226,ship 114227,ship 114228,deer 114229,ship 114230,truck 114231,dog 114232,automobile 114233,airplane 114234,dog 114235,automobile 114236,cat 114237,bird 114238,deer 114239,dog 114240,ship 114241,cat 114242,truck 114243,frog 114244,ship 114245,ship 114246,dog 114247,dog 114248,truck 114249,ship 114250,ship 114251,bird 114252,horse 114253,ship 114254,dog 114255,horse 114256,ship 114257,ship 114258,automobile 114259,airplane 114260,frog 114261,deer 114262,dog 114263,truck 114264,truck 114265,airplane 114266,cat 114267,airplane 114268,cat 114269,frog 114270,ship 114271,deer 114272,horse 114273,deer 114274,frog 114275,frog 114276,dog 114277,ship 114278,ship 114279,horse 114280,automobile 114281,cat 114282,cat 114283,horse 114284,automobile 114285,airplane 114286,bird 114287,frog 114288,ship 114289,truck 114290,horse 114291,airplane 114292,automobile 114293,dog 114294,truck 114295,automobile 114296,horse 114297,ship 114298,cat 114299,dog 114300,deer 114301,airplane 114302,truck 114303,frog 114304,cat 114305,cat 114306,deer 114307,cat 114308,deer 114309,horse 114310,horse 114311,horse 114312,frog 114313,ship 114314,deer 114315,cat 114316,airplane 114317,bird 114318,cat 114319,truck 114320,automobile 114321,automobile 114322,deer 114323,horse 114324,dog 114325,bird 114326,truck 114327,airplane 114328,truck 114329,frog 114330,horse 114331,horse 114332,truck 114333,horse 114334,deer 114335,frog 114336,deer 114337,cat 114338,deer 114339,truck 114340,deer 114341,deer 114342,automobile 114343,ship 114344,frog 114345,frog 114346,dog 114347,dog 114348,bird 114349,bird 114350,horse 114351,cat 114352,frog 114353,frog 114354,bird 114355,frog 114356,dog 114357,deer 114358,frog 114359,automobile 114360,airplane 114361,ship 114362,horse 114363,frog 114364,dog 114365,horse 114366,airplane 114367,airplane 114368,cat 114369,truck 114370,automobile 114371,deer 114372,truck 114373,ship 114374,ship 114375,truck 114376,horse 114377,truck 114378,deer 114379,cat 114380,deer 114381,deer 114382,ship 114383,bird 114384,truck 114385,deer 114386,truck 114387,cat 114388,ship 114389,airplane 114390,airplane 114391,frog 114392,frog 114393,horse 114394,deer 114395,horse 114396,frog 114397,ship 114398,deer 114399,airplane 114400,truck 114401,cat 114402,horse 114403,deer 114404,deer 114405,frog 114406,horse 114407,automobile 114408,bird 114409,bird 114410,truck 114411,ship 114412,horse 114413,horse 114414,airplane 114415,truck 114416,dog 114417,dog 114418,airplane 114419,cat 114420,deer 114421,bird 114422,dog 114423,truck 114424,cat 114425,cat 114426,dog 114427,cat 114428,frog 114429,deer 114430,horse 114431,bird 114432,cat 114433,cat 114434,cat 114435,cat 114436,truck 114437,frog 114438,horse 114439,bird 114440,automobile 114441,cat 114442,frog 114443,bird 114444,truck 114445,dog 114446,frog 114447,frog 114448,deer 114449,deer 114450,ship 114451,frog 114452,ship 114453,automobile 114454,dog 114455,frog 114456,airplane 114457,frog 114458,truck 114459,deer 114460,truck 114461,horse 114462,automobile 114463,frog 114464,dog 114465,cat 114466,dog 114467,deer 114468,dog 114469,truck 114470,ship 114471,ship 114472,dog 114473,frog 114474,horse 114475,cat 114476,airplane 114477,cat 114478,dog 114479,horse 114480,bird 114481,cat 114482,frog 114483,airplane 114484,dog 114485,automobile 114486,cat 114487,automobile 114488,dog 114489,frog 114490,horse 114491,truck 114492,dog 114493,truck 114494,truck 114495,airplane 114496,deer 114497,frog 114498,deer 114499,deer 114500,bird 114501,bird 114502,cat 114503,airplane 114504,dog 114505,truck 114506,bird 114507,dog 114508,airplane 114509,cat 114510,horse 114511,cat 114512,dog 114513,deer 114514,automobile 114515,frog 114516,deer 114517,truck 114518,deer 114519,deer 114520,frog 114521,airplane 114522,airplane 114523,dog 114524,truck 114525,cat 114526,horse 114527,horse 114528,bird 114529,truck 114530,automobile 114531,airplane 114532,automobile 114533,deer 114534,truck 114535,truck 114536,cat 114537,bird 114538,airplane 114539,horse 114540,frog 114541,automobile 114542,truck 114543,deer 114544,airplane 114545,frog 114546,horse 114547,dog 114548,automobile 114549,frog 114550,ship 114551,horse 114552,horse 114553,airplane 114554,airplane 114555,cat 114556,bird 114557,horse 114558,horse 114559,deer 114560,horse 114561,deer 114562,ship 114563,truck 114564,ship 114565,dog 114566,airplane 114567,horse 114568,truck 114569,frog 114570,bird 114571,truck 114572,frog 114573,dog 114574,ship 114575,truck 114576,airplane 114577,ship 114578,bird 114579,dog 114580,airplane 114581,airplane 114582,deer 114583,deer 114584,frog 114585,cat 114586,cat 114587,dog 114588,truck 114589,cat 114590,deer 114591,truck 114592,airplane 114593,horse 114594,deer 114595,cat 114596,ship 114597,airplane 114598,airplane 114599,deer 114600,cat 114601,ship 114602,deer 114603,cat 114604,ship 114605,cat 114606,automobile 114607,truck 114608,truck 114609,truck 114610,ship 114611,truck 114612,deer 114613,automobile 114614,deer 114615,deer 114616,airplane 114617,dog 114618,automobile 114619,cat 114620,cat 114621,deer 114622,horse 114623,cat 114624,cat 114625,cat 114626,deer 114627,bird 114628,ship 114629,horse 114630,automobile 114631,horse 114632,bird 114633,cat 114634,deer 114635,airplane 114636,cat 114637,airplane 114638,ship 114639,dog 114640,horse 114641,truck 114642,horse 114643,airplane 114644,truck 114645,cat 114646,dog 114647,automobile 114648,cat 114649,automobile 114650,bird 114651,automobile 114652,deer 114653,dog 114654,truck 114655,automobile 114656,automobile 114657,cat 114658,horse 114659,automobile 114660,deer 114661,automobile 114662,deer 114663,frog 114664,automobile 114665,ship 114666,automobile 114667,ship 114668,frog 114669,dog 114670,bird 114671,automobile 114672,deer 114673,deer 114674,truck 114675,dog 114676,deer 114677,cat 114678,truck 114679,cat 114680,horse 114681,frog 114682,frog 114683,truck 114684,deer 114685,dog 114686,deer 114687,airplane 114688,airplane 114689,deer 114690,frog 114691,horse 114692,cat 114693,cat 114694,bird 114695,cat 114696,airplane 114697,automobile 114698,deer 114699,automobile 114700,deer 114701,bird 114702,airplane 114703,ship 114704,airplane 114705,bird 114706,ship 114707,ship 114708,deer 114709,frog 114710,automobile 114711,bird 114712,deer 114713,cat 114714,horse 114715,ship 114716,deer 114717,automobile 114718,frog 114719,deer 114720,deer 114721,bird 114722,dog 114723,airplane 114724,dog 114725,cat 114726,deer 114727,frog 114728,dog 114729,frog 114730,dog 114731,cat 114732,truck 114733,truck 114734,frog 114735,dog 114736,deer 114737,deer 114738,airplane 114739,truck 114740,bird 114741,airplane 114742,frog 114743,horse 114744,deer 114745,bird 114746,cat 114747,automobile 114748,frog 114749,deer 114750,airplane 114751,horse 114752,truck 114753,deer 114754,dog 114755,cat 114756,frog 114757,deer 114758,deer 114759,airplane 114760,horse 114761,truck 114762,deer 114763,cat 114764,dog 114765,dog 114766,airplane 114767,ship 114768,automobile 114769,airplane 114770,horse 114771,dog 114772,dog 114773,frog 114774,bird 114775,bird 114776,truck 114777,frog 114778,bird 114779,dog 114780,ship 114781,deer 114782,automobile 114783,automobile 114784,frog 114785,deer 114786,dog 114787,airplane 114788,deer 114789,bird 114790,bird 114791,dog 114792,truck 114793,deer 114794,cat 114795,cat 114796,deer 114797,deer 114798,horse 114799,bird 114800,horse 114801,cat 114802,automobile 114803,frog 114804,deer 114805,bird 114806,deer 114807,deer 114808,horse 114809,deer 114810,ship 114811,airplane 114812,dog 114813,airplane 114814,dog 114815,cat 114816,bird 114817,dog 114818,dog 114819,automobile 114820,deer 114821,frog 114822,deer 114823,deer 114824,deer 114825,horse 114826,frog 114827,airplane 114828,frog 114829,horse 114830,ship 114831,airplane 114832,airplane 114833,frog 114834,cat 114835,cat 114836,horse 114837,deer 114838,cat 114839,airplane 114840,cat 114841,airplane 114842,deer 114843,frog 114844,frog 114845,cat 114846,dog 114847,horse 114848,automobile 114849,bird 114850,ship 114851,bird 114852,automobile 114853,airplane 114854,cat 114855,cat 114856,dog 114857,cat 114858,bird 114859,cat 114860,automobile 114861,frog 114862,bird 114863,automobile 114864,cat 114865,horse 114866,deer 114867,dog 114868,deer 114869,deer 114870,frog 114871,horse 114872,truck 114873,horse 114874,bird 114875,airplane 114876,bird 114877,airplane 114878,deer 114879,cat 114880,deer 114881,dog 114882,bird 114883,deer 114884,bird 114885,deer 114886,horse 114887,airplane 114888,bird 114889,deer 114890,truck 114891,bird 114892,deer 114893,airplane 114894,frog 114895,bird 114896,frog 114897,ship 114898,ship 114899,truck 114900,bird 114901,cat 114902,automobile 114903,cat 114904,cat 114905,dog 114906,cat 114907,cat 114908,dog 114909,ship 114910,deer 114911,dog 114912,frog 114913,deer 114914,airplane 114915,cat 114916,dog 114917,frog 114918,truck 114919,dog 114920,deer 114921,truck 114922,frog 114923,truck 114924,dog 114925,automobile 114926,bird 114927,cat 114928,truck 114929,cat 114930,dog 114931,ship 114932,truck 114933,frog 114934,ship 114935,truck 114936,automobile 114937,deer 114938,cat 114939,frog 114940,deer 114941,frog 114942,deer 114943,ship 114944,deer 114945,truck 114946,frog 114947,cat 114948,ship 114949,dog 114950,truck 114951,bird 114952,cat 114953,truck 114954,horse 114955,automobile 114956,ship 114957,horse 114958,dog 114959,frog 114960,airplane 114961,horse 114962,dog 114963,airplane 114964,cat 114965,dog 114966,ship 114967,truck 114968,ship 114969,cat 114970,bird 114971,bird 114972,bird 114973,horse 114974,frog 114975,airplane 114976,deer 114977,deer 114978,cat 114979,dog 114980,deer 114981,cat 114982,bird 114983,ship 114984,automobile 114985,cat 114986,automobile 114987,ship 114988,ship 114989,ship 114990,dog 114991,cat 114992,airplane 114993,airplane 114994,deer 114995,deer 114996,deer 114997,dog 114998,airplane 114999,horse 115000,dog 115001,deer 115002,deer 115003,frog 115004,bird 115005,truck 115006,frog 115007,dog 115008,airplane 115009,frog 115010,automobile 115011,frog 115012,cat 115013,ship 115014,frog 115015,truck 115016,cat 115017,ship 115018,dog 115019,deer 115020,truck 115021,airplane 115022,cat 115023,automobile 115024,bird 115025,ship 115026,horse 115027,horse 115028,ship 115029,cat 115030,truck 115031,horse 115032,frog 115033,frog 115034,cat 115035,airplane 115036,frog 115037,cat 115038,horse 115039,bird 115040,ship 115041,frog 115042,automobile 115043,automobile 115044,cat 115045,truck 115046,automobile 115047,truck 115048,horse 115049,deer 115050,bird 115051,automobile 115052,deer 115053,cat 115054,deer 115055,dog 115056,deer 115057,airplane 115058,truck 115059,frog 115060,deer 115061,truck 115062,deer 115063,automobile 115064,bird 115065,truck 115066,bird 115067,horse 115068,cat 115069,cat 115070,automobile 115071,cat 115072,frog 115073,horse 115074,airplane 115075,dog 115076,bird 115077,deer 115078,airplane 115079,frog 115080,bird 115081,horse 115082,cat 115083,airplane 115084,cat 115085,airplane 115086,truck 115087,cat 115088,frog 115089,cat 115090,horse 115091,frog 115092,truck 115093,bird 115094,automobile 115095,cat 115096,frog 115097,ship 115098,deer 115099,airplane 115100,deer 115101,deer 115102,frog 115103,horse 115104,deer 115105,frog 115106,airplane 115107,frog 115108,ship 115109,dog 115110,automobile 115111,airplane 115112,deer 115113,cat 115114,deer 115115,bird 115116,horse 115117,ship 115118,truck 115119,bird 115120,truck 115121,airplane 115122,frog 115123,ship 115124,dog 115125,cat 115126,horse 115127,cat 115128,frog 115129,ship 115130,cat 115131,horse 115132,frog 115133,frog 115134,bird 115135,bird 115136,deer 115137,deer 115138,truck 115139,deer 115140,frog 115141,cat 115142,deer 115143,cat 115144,deer 115145,frog 115146,deer 115147,deer 115148,frog 115149,cat 115150,frog 115151,cat 115152,horse 115153,deer 115154,truck 115155,automobile 115156,ship 115157,dog 115158,cat 115159,cat 115160,cat 115161,deer 115162,deer 115163,deer 115164,deer 115165,frog 115166,airplane 115167,dog 115168,horse 115169,ship 115170,cat 115171,deer 115172,cat 115173,frog 115174,dog 115175,horse 115176,bird 115177,ship 115178,horse 115179,truck 115180,airplane 115181,ship 115182,automobile 115183,truck 115184,truck 115185,automobile 115186,deer 115187,cat 115188,bird 115189,dog 115190,dog 115191,truck 115192,frog 115193,truck 115194,airplane 115195,cat 115196,frog 115197,bird 115198,deer 115199,deer 115200,automobile 115201,dog 115202,bird 115203,deer 115204,truck 115205,airplane 115206,bird 115207,dog 115208,dog 115209,truck 115210,cat 115211,deer 115212,automobile 115213,cat 115214,airplane 115215,frog 115216,frog 115217,truck 115218,dog 115219,frog 115220,horse 115221,cat 115222,airplane 115223,airplane 115224,deer 115225,deer 115226,automobile 115227,bird 115228,dog 115229,dog 115230,deer 115231,bird 115232,frog 115233,bird 115234,dog 115235,airplane 115236,cat 115237,airplane 115238,frog 115239,bird 115240,horse 115241,dog 115242,bird 115243,airplane 115244,bird 115245,frog 115246,airplane 115247,deer 115248,automobile 115249,bird 115250,dog 115251,automobile 115252,deer 115253,frog 115254,automobile 115255,airplane 115256,dog 115257,cat 115258,truck 115259,dog 115260,automobile 115261,frog 115262,airplane 115263,frog 115264,cat 115265,ship 115266,airplane 115267,automobile 115268,dog 115269,dog 115270,bird 115271,cat 115272,truck 115273,ship 115274,bird 115275,deer 115276,frog 115277,dog 115278,ship 115279,deer 115280,airplane 115281,frog 115282,airplane 115283,horse 115284,cat 115285,frog 115286,bird 115287,dog 115288,horse 115289,ship 115290,horse 115291,airplane 115292,dog 115293,bird 115294,bird 115295,truck 115296,deer 115297,horse 115298,cat 115299,cat 115300,dog 115301,dog 115302,airplane 115303,airplane 115304,truck 115305,deer 115306,airplane 115307,frog 115308,airplane 115309,horse 115310,cat 115311,automobile 115312,truck 115313,cat 115314,bird 115315,bird 115316,ship 115317,dog 115318,ship 115319,ship 115320,horse 115321,dog 115322,bird 115323,automobile 115324,dog 115325,truck 115326,horse 115327,deer 115328,truck 115329,dog 115330,automobile 115331,bird 115332,dog 115333,ship 115334,cat 115335,deer 115336,cat 115337,automobile 115338,cat 115339,airplane 115340,cat 115341,truck 115342,cat 115343,deer 115344,cat 115345,deer 115346,automobile 115347,ship 115348,horse 115349,horse 115350,truck 115351,cat 115352,cat 115353,ship 115354,airplane 115355,truck 115356,ship 115357,airplane 115358,airplane 115359,truck 115360,horse 115361,cat 115362,ship 115363,horse 115364,deer 115365,airplane 115366,truck 115367,automobile 115368,automobile 115369,cat 115370,ship 115371,ship 115372,ship 115373,automobile 115374,deer 115375,dog 115376,dog 115377,automobile 115378,ship 115379,cat 115380,truck 115381,truck 115382,horse 115383,dog 115384,truck 115385,frog 115386,deer 115387,dog 115388,frog 115389,horse 115390,dog 115391,deer 115392,airplane 115393,automobile 115394,ship 115395,ship 115396,truck 115397,frog 115398,ship 115399,cat 115400,bird 115401,frog 115402,truck 115403,deer 115404,deer 115405,deer 115406,dog 115407,truck 115408,frog 115409,airplane 115410,airplane 115411,truck 115412,ship 115413,truck 115414,truck 115415,truck 115416,deer 115417,automobile 115418,frog 115419,frog 115420,frog 115421,cat 115422,airplane 115423,horse 115424,cat 115425,cat 115426,bird 115427,airplane 115428,automobile 115429,horse 115430,horse 115431,ship 115432,cat 115433,automobile 115434,cat 115435,automobile 115436,automobile 115437,frog 115438,deer 115439,horse 115440,horse 115441,deer 115442,horse 115443,truck 115444,ship 115445,ship 115446,automobile 115447,truck 115448,horse 115449,cat 115450,automobile 115451,frog 115452,frog 115453,bird 115454,cat 115455,cat 115456,dog 115457,bird 115458,ship 115459,truck 115460,truck 115461,frog 115462,ship 115463,horse 115464,horse 115465,cat 115466,deer 115467,deer 115468,ship 115469,truck 115470,dog 115471,horse 115472,frog 115473,truck 115474,airplane 115475,deer 115476,automobile 115477,truck 115478,deer 115479,automobile 115480,ship 115481,automobile 115482,airplane 115483,automobile 115484,truck 115485,frog 115486,deer 115487,dog 115488,horse 115489,airplane 115490,horse 115491,bird 115492,truck 115493,automobile 115494,automobile 115495,horse 115496,ship 115497,dog 115498,cat 115499,truck 115500,cat 115501,airplane 115502,truck 115503,deer 115504,airplane 115505,automobile 115506,frog 115507,automobile 115508,dog 115509,automobile 115510,cat 115511,deer 115512,cat 115513,bird 115514,frog 115515,deer 115516,deer 115517,ship 115518,dog 115519,horse 115520,dog 115521,automobile 115522,truck 115523,horse 115524,deer 115525,cat 115526,truck 115527,deer 115528,horse 115529,frog 115530,horse 115531,dog 115532,ship 115533,automobile 115534,bird 115535,bird 115536,truck 115537,ship 115538,deer 115539,deer 115540,cat 115541,automobile 115542,frog 115543,deer 115544,automobile 115545,horse 115546,cat 115547,cat 115548,frog 115549,deer 115550,cat 115551,cat 115552,bird 115553,deer 115554,truck 115555,cat 115556,cat 115557,frog 115558,dog 115559,frog 115560,truck 115561,frog 115562,cat 115563,airplane 115564,automobile 115565,cat 115566,bird 115567,frog 115568,horse 115569,ship 115570,ship 115571,airplane 115572,horse 115573,ship 115574,truck 115575,dog 115576,airplane 115577,deer 115578,truck 115579,dog 115580,truck 115581,automobile 115582,frog 115583,ship 115584,frog 115585,horse 115586,cat 115587,dog 115588,cat 115589,deer 115590,horse 115591,dog 115592,airplane 115593,truck 115594,bird 115595,deer 115596,dog 115597,truck 115598,cat 115599,truck 115600,cat 115601,dog 115602,automobile 115603,cat 115604,frog 115605,deer 115606,horse 115607,truck 115608,ship 115609,frog 115610,deer 115611,dog 115612,ship 115613,deer 115614,horse 115615,deer 115616,bird 115617,automobile 115618,bird 115619,frog 115620,automobile 115621,deer 115622,truck 115623,ship 115624,deer 115625,airplane 115626,ship 115627,truck 115628,horse 115629,cat 115630,truck 115631,deer 115632,cat 115633,cat 115634,frog 115635,truck 115636,ship 115637,cat 115638,horse 115639,frog 115640,automobile 115641,deer 115642,dog 115643,cat 115644,bird 115645,deer 115646,airplane 115647,deer 115648,truck 115649,truck 115650,ship 115651,frog 115652,dog 115653,horse 115654,deer 115655,automobile 115656,deer 115657,dog 115658,cat 115659,ship 115660,bird 115661,horse 115662,frog 115663,deer 115664,truck 115665,horse 115666,ship 115667,airplane 115668,truck 115669,deer 115670,frog 115671,deer 115672,cat 115673,dog 115674,bird 115675,airplane 115676,ship 115677,frog 115678,truck 115679,frog 115680,dog 115681,airplane 115682,deer 115683,airplane 115684,horse 115685,deer 115686,airplane 115687,cat 115688,deer 115689,ship 115690,horse 115691,ship 115692,truck 115693,cat 115694,airplane 115695,cat 115696,bird 115697,airplane 115698,cat 115699,dog 115700,frog 115701,frog 115702,dog 115703,automobile 115704,frog 115705,frog 115706,automobile 115707,truck 115708,ship 115709,dog 115710,deer 115711,ship 115712,frog 115713,deer 115714,truck 115715,dog 115716,horse 115717,cat 115718,cat 115719,airplane 115720,deer 115721,cat 115722,truck 115723,deer 115724,automobile 115725,truck 115726,airplane 115727,ship 115728,cat 115729,airplane 115730,bird 115731,horse 115732,cat 115733,airplane 115734,cat 115735,truck 115736,bird 115737,horse 115738,ship 115739,cat 115740,ship 115741,frog 115742,airplane 115743,dog 115744,frog 115745,dog 115746,airplane 115747,deer 115748,deer 115749,dog 115750,ship 115751,cat 115752,dog 115753,bird 115754,truck 115755,bird 115756,automobile 115757,airplane 115758,frog 115759,automobile 115760,ship 115761,ship 115762,deer 115763,truck 115764,frog 115765,deer 115766,frog 115767,cat 115768,deer 115769,dog 115770,bird 115771,dog 115772,deer 115773,cat 115774,frog 115775,bird 115776,ship 115777,automobile 115778,deer 115779,deer 115780,ship 115781,cat 115782,cat 115783,cat 115784,dog 115785,automobile 115786,dog 115787,airplane 115788,deer 115789,horse 115790,cat 115791,deer 115792,ship 115793,automobile 115794,automobile 115795,deer 115796,deer 115797,automobile 115798,frog 115799,truck 115800,automobile 115801,deer 115802,horse 115803,cat 115804,frog 115805,airplane 115806,horse 115807,automobile 115808,deer 115809,cat 115810,automobile 115811,ship 115812,truck 115813,dog 115814,airplane 115815,cat 115816,automobile 115817,deer 115818,deer 115819,horse 115820,horse 115821,truck 115822,ship 115823,truck 115824,ship 115825,ship 115826,ship 115827,truck 115828,frog 115829,truck 115830,frog 115831,automobile 115832,truck 115833,deer 115834,airplane 115835,dog 115836,airplane 115837,bird 115838,cat 115839,ship 115840,ship 115841,horse 115842,cat 115843,automobile 115844,deer 115845,ship 115846,dog 115847,bird 115848,bird 115849,automobile 115850,deer 115851,horse 115852,dog 115853,deer 115854,bird 115855,horse 115856,cat 115857,deer 115858,horse 115859,dog 115860,frog 115861,frog 115862,dog 115863,dog 115864,dog 115865,airplane 115866,dog 115867,ship 115868,truck 115869,ship 115870,ship 115871,truck 115872,bird 115873,bird 115874,deer 115875,bird 115876,dog 115877,bird 115878,deer 115879,deer 115880,truck 115881,airplane 115882,deer 115883,dog 115884,cat 115885,frog 115886,cat 115887,bird 115888,cat 115889,ship 115890,ship 115891,deer 115892,ship 115893,horse 115894,automobile 115895,airplane 115896,ship 115897,cat 115898,airplane 115899,frog 115900,cat 115901,truck 115902,cat 115903,cat 115904,frog 115905,deer 115906,horse 115907,truck 115908,ship 115909,frog 115910,deer 115911,frog 115912,bird 115913,automobile 115914,ship 115915,cat 115916,truck 115917,bird 115918,automobile 115919,ship 115920,frog 115921,deer 115922,ship 115923,dog 115924,dog 115925,deer 115926,ship 115927,cat 115928,frog 115929,airplane 115930,airplane 115931,automobile 115932,cat 115933,dog 115934,truck 115935,deer 115936,horse 115937,ship 115938,dog 115939,dog 115940,cat 115941,dog 115942,horse 115943,airplane 115944,cat 115945,deer 115946,truck 115947,dog 115948,cat 115949,horse 115950,automobile 115951,horse 115952,cat 115953,truck 115954,bird 115955,horse 115956,deer 115957,truck 115958,airplane 115959,dog 115960,frog 115961,dog 115962,bird 115963,deer 115964,deer 115965,cat 115966,horse 115967,airplane 115968,ship 115969,truck 115970,dog 115971,deer 115972,dog 115973,deer 115974,horse 115975,frog 115976,ship 115977,ship 115978,horse 115979,automobile 115980,truck 115981,truck 115982,airplane 115983,truck 115984,bird 115985,deer 115986,deer 115987,bird 115988,dog 115989,ship 115990,horse 115991,cat 115992,deer 115993,airplane 115994,airplane 115995,cat 115996,dog 115997,horse 115998,deer 115999,truck 116000,deer 116001,airplane 116002,automobile 116003,cat 116004,dog 116005,deer 116006,ship 116007,deer 116008,cat 116009,airplane 116010,deer 116011,airplane 116012,bird 116013,deer 116014,deer 116015,dog 116016,frog 116017,deer 116018,dog 116019,frog 116020,frog 116021,bird 116022,horse 116023,frog 116024,frog 116025,bird 116026,deer 116027,automobile 116028,frog 116029,horse 116030,horse 116031,truck 116032,horse 116033,horse 116034,cat 116035,deer 116036,truck 116037,deer 116038,horse 116039,cat 116040,dog 116041,automobile 116042,cat 116043,deer 116044,dog 116045,airplane 116046,frog 116047,truck 116048,automobile 116049,automobile 116050,frog 116051,deer 116052,automobile 116053,bird 116054,frog 116055,dog 116056,deer 116057,deer 116058,horse 116059,frog 116060,cat 116061,dog 116062,bird 116063,ship 116064,dog 116065,frog 116066,deer 116067,automobile 116068,deer 116069,dog 116070,ship 116071,frog 116072,bird 116073,deer 116074,horse 116075,frog 116076,dog 116077,frog 116078,horse 116079,airplane 116080,dog 116081,airplane 116082,truck 116083,automobile 116084,dog 116085,cat 116086,automobile 116087,frog 116088,airplane 116089,dog 116090,automobile 116091,horse 116092,horse 116093,deer 116094,dog 116095,deer 116096,dog 116097,deer 116098,automobile 116099,airplane 116100,ship 116101,ship 116102,horse 116103,bird 116104,cat 116105,cat 116106,bird 116107,airplane 116108,truck 116109,frog 116110,airplane 116111,frog 116112,bird 116113,automobile 116114,automobile 116115,frog 116116,cat 116117,cat 116118,frog 116119,horse 116120,truck 116121,frog 116122,deer 116123,automobile 116124,frog 116125,dog 116126,horse 116127,ship 116128,ship 116129,frog 116130,deer 116131,bird 116132,truck 116133,cat 116134,horse 116135,deer 116136,ship 116137,truck 116138,truck 116139,frog 116140,deer 116141,ship 116142,dog 116143,horse 116144,truck 116145,frog 116146,automobile 116147,truck 116148,airplane 116149,automobile 116150,frog 116151,airplane 116152,airplane 116153,truck 116154,dog 116155,ship 116156,bird 116157,ship 116158,dog 116159,airplane 116160,deer 116161,cat 116162,deer 116163,horse 116164,truck 116165,horse 116166,bird 116167,horse 116168,automobile 116169,ship 116170,horse 116171,deer 116172,airplane 116173,ship 116174,airplane 116175,bird 116176,truck 116177,cat 116178,truck 116179,horse 116180,cat 116181,horse 116182,horse 116183,automobile 116184,frog 116185,cat 116186,automobile 116187,automobile 116188,truck 116189,frog 116190,airplane 116191,ship 116192,frog 116193,dog 116194,ship 116195,cat 116196,deer 116197,horse 116198,dog 116199,airplane 116200,automobile 116201,automobile 116202,airplane 116203,cat 116204,dog 116205,frog 116206,truck 116207,cat 116208,dog 116209,deer 116210,deer 116211,bird 116212,frog 116213,deer 116214,ship 116215,horse 116216,airplane 116217,automobile 116218,deer 116219,frog 116220,bird 116221,cat 116222,cat 116223,frog 116224,ship 116225,horse 116226,truck 116227,deer 116228,horse 116229,automobile 116230,dog 116231,horse 116232,ship 116233,ship 116234,ship 116235,deer 116236,ship 116237,bird 116238,ship 116239,truck 116240,horse 116241,automobile 116242,frog 116243,truck 116244,cat 116245,airplane 116246,deer 116247,automobile 116248,automobile 116249,frog 116250,horse 116251,ship 116252,frog 116253,airplane 116254,horse 116255,bird 116256,dog 116257,automobile 116258,airplane 116259,automobile 116260,deer 116261,airplane 116262,automobile 116263,airplane 116264,deer 116265,automobile 116266,horse 116267,automobile 116268,cat 116269,frog 116270,frog 116271,frog 116272,dog 116273,deer 116274,cat 116275,automobile 116276,automobile 116277,deer 116278,airplane 116279,airplane 116280,ship 116281,bird 116282,bird 116283,airplane 116284,ship 116285,airplane 116286,deer 116287,cat 116288,frog 116289,cat 116290,automobile 116291,ship 116292,cat 116293,deer 116294,truck 116295,airplane 116296,deer 116297,dog 116298,deer 116299,frog 116300,dog 116301,bird 116302,frog 116303,horse 116304,truck 116305,airplane 116306,dog 116307,dog 116308,truck 116309,airplane 116310,dog 116311,bird 116312,automobile 116313,frog 116314,airplane 116315,dog 116316,airplane 116317,dog 116318,cat 116319,automobile 116320,bird 116321,horse 116322,horse 116323,bird 116324,automobile 116325,truck 116326,deer 116327,airplane 116328,deer 116329,ship 116330,horse 116331,dog 116332,frog 116333,horse 116334,horse 116335,deer 116336,ship 116337,automobile 116338,bird 116339,bird 116340,frog 116341,cat 116342,cat 116343,bird 116344,dog 116345,horse 116346,airplane 116347,frog 116348,automobile 116349,cat 116350,horse 116351,truck 116352,airplane 116353,ship 116354,frog 116355,ship 116356,horse 116357,airplane 116358,frog 116359,deer 116360,horse 116361,truck 116362,horse 116363,deer 116364,airplane 116365,frog 116366,horse 116367,cat 116368,deer 116369,dog 116370,bird 116371,bird 116372,truck 116373,airplane 116374,deer 116375,deer 116376,automobile 116377,ship 116378,deer 116379,deer 116380,truck 116381,frog 116382,cat 116383,airplane 116384,horse 116385,automobile 116386,ship 116387,dog 116388,dog 116389,truck 116390,ship 116391,truck 116392,airplane 116393,deer 116394,deer 116395,frog 116396,bird 116397,frog 116398,ship 116399,truck 116400,ship 116401,horse 116402,dog 116403,cat 116404,horse 116405,cat 116406,cat 116407,truck 116408,frog 116409,truck 116410,bird 116411,dog 116412,deer 116413,frog 116414,airplane 116415,bird 116416,automobile 116417,airplane 116418,airplane 116419,truck 116420,horse 116421,truck 116422,deer 116423,truck 116424,airplane 116425,ship 116426,bird 116427,dog 116428,deer 116429,airplane 116430,bird 116431,cat 116432,frog 116433,ship 116434,airplane 116435,airplane 116436,frog 116437,frog 116438,truck 116439,deer 116440,deer 116441,horse 116442,dog 116443,airplane 116444,bird 116445,deer 116446,frog 116447,airplane 116448,bird 116449,frog 116450,frog 116451,horse 116452,airplane 116453,airplane 116454,bird 116455,cat 116456,frog 116457,frog 116458,deer 116459,horse 116460,airplane 116461,ship 116462,automobile 116463,truck 116464,automobile 116465,truck 116466,dog 116467,frog 116468,cat 116469,deer 116470,deer 116471,deer 116472,automobile 116473,frog 116474,bird 116475,bird 116476,truck 116477,deer 116478,truck 116479,horse 116480,dog 116481,cat 116482,deer 116483,cat 116484,cat 116485,horse 116486,cat 116487,deer 116488,frog 116489,deer 116490,truck 116491,airplane 116492,automobile 116493,deer 116494,cat 116495,horse 116496,cat 116497,deer 116498,automobile 116499,cat 116500,automobile 116501,deer 116502,cat 116503,ship 116504,ship 116505,deer 116506,frog 116507,frog 116508,deer 116509,horse 116510,cat 116511,deer 116512,deer 116513,truck 116514,dog 116515,truck 116516,cat 116517,frog 116518,dog 116519,cat 116520,cat 116521,bird 116522,bird 116523,ship 116524,deer 116525,bird 116526,horse 116527,automobile 116528,frog 116529,dog 116530,dog 116531,cat 116532,deer 116533,deer 116534,deer 116535,airplane 116536,airplane 116537,ship 116538,airplane 116539,cat 116540,cat 116541,cat 116542,frog 116543,airplane 116544,deer 116545,horse 116546,bird 116547,dog 116548,cat 116549,automobile 116550,airplane 116551,deer 116552,bird 116553,truck 116554,airplane 116555,ship 116556,truck 116557,deer 116558,dog 116559,dog 116560,frog 116561,automobile 116562,airplane 116563,dog 116564,horse 116565,horse 116566,truck 116567,dog 116568,bird 116569,bird 116570,bird 116571,horse 116572,automobile 116573,truck 116574,deer 116575,airplane 116576,dog 116577,ship 116578,ship 116579,automobile 116580,cat 116581,dog 116582,cat 116583,ship 116584,horse 116585,frog 116586,dog 116587,frog 116588,deer 116589,frog 116590,dog 116591,cat 116592,frog 116593,horse 116594,dog 116595,frog 116596,deer 116597,bird 116598,truck 116599,frog 116600,dog 116601,cat 116602,deer 116603,automobile 116604,ship 116605,ship 116606,automobile 116607,ship 116608,ship 116609,deer 116610,truck 116611,truck 116612,frog 116613,horse 116614,cat 116615,dog 116616,deer 116617,frog 116618,cat 116619,bird 116620,bird 116621,dog 116622,ship 116623,deer 116624,dog 116625,bird 116626,frog 116627,cat 116628,cat 116629,automobile 116630,dog 116631,truck 116632,frog 116633,horse 116634,bird 116635,frog 116636,deer 116637,automobile 116638,deer 116639,horse 116640,deer 116641,truck 116642,deer 116643,dog 116644,cat 116645,cat 116646,truck 116647,automobile 116648,cat 116649,automobile 116650,frog 116651,bird 116652,cat 116653,ship 116654,cat 116655,frog 116656,automobile 116657,cat 116658,cat 116659,bird 116660,cat 116661,frog 116662,automobile 116663,cat 116664,horse 116665,deer 116666,cat 116667,frog 116668,truck 116669,deer 116670,cat 116671,cat 116672,truck 116673,ship 116674,horse 116675,deer 116676,frog 116677,frog 116678,automobile 116679,truck 116680,dog 116681,dog 116682,dog 116683,frog 116684,airplane 116685,truck 116686,deer 116687,dog 116688,bird 116689,truck 116690,ship 116691,ship 116692,cat 116693,airplane 116694,truck 116695,deer 116696,deer 116697,truck 116698,automobile 116699,frog 116700,cat 116701,deer 116702,truck 116703,deer 116704,horse 116705,truck 116706,bird 116707,truck 116708,horse 116709,horse 116710,deer 116711,deer 116712,airplane 116713,cat 116714,dog 116715,ship 116716,deer 116717,cat 116718,cat 116719,dog 116720,deer 116721,automobile 116722,airplane 116723,bird 116724,frog 116725,deer 116726,bird 116727,airplane 116728,deer 116729,deer 116730,bird 116731,truck 116732,dog 116733,frog 116734,cat 116735,deer 116736,airplane 116737,deer 116738,ship 116739,airplane 116740,horse 116741,frog 116742,horse 116743,bird 116744,automobile 116745,horse 116746,ship 116747,ship 116748,automobile 116749,automobile 116750,dog 116751,frog 116752,bird 116753,horse 116754,deer 116755,frog 116756,bird 116757,dog 116758,cat 116759,bird 116760,cat 116761,bird 116762,truck 116763,automobile 116764,deer 116765,horse 116766,deer 116767,truck 116768,truck 116769,deer 116770,cat 116771,ship 116772,horse 116773,horse 116774,cat 116775,ship 116776,bird 116777,deer 116778,automobile 116779,deer 116780,bird 116781,cat 116782,dog 116783,dog 116784,cat 116785,frog 116786,airplane 116787,airplane 116788,horse 116789,automobile 116790,bird 116791,deer 116792,deer 116793,airplane 116794,truck 116795,dog 116796,dog 116797,dog 116798,horse 116799,bird 116800,airplane 116801,frog 116802,deer 116803,frog 116804,truck 116805,horse 116806,frog 116807,truck 116808,deer 116809,dog 116810,airplane 116811,bird 116812,truck 116813,deer 116814,automobile 116815,cat 116816,cat 116817,horse 116818,truck 116819,deer 116820,bird 116821,bird 116822,airplane 116823,deer 116824,horse 116825,cat 116826,airplane 116827,airplane 116828,automobile 116829,cat 116830,deer 116831,truck 116832,cat 116833,deer 116834,horse 116835,frog 116836,truck 116837,airplane 116838,frog 116839,ship 116840,automobile 116841,dog 116842,horse 116843,truck 116844,cat 116845,automobile 116846,truck 116847,airplane 116848,truck 116849,airplane 116850,dog 116851,bird 116852,deer 116853,cat 116854,ship 116855,deer 116856,cat 116857,cat 116858,horse 116859,cat 116860,frog 116861,deer 116862,truck 116863,horse 116864,ship 116865,horse 116866,dog 116867,cat 116868,dog 116869,deer 116870,bird 116871,automobile 116872,dog 116873,airplane 116874,deer 116875,dog 116876,deer 116877,automobile 116878,deer 116879,cat 116880,bird 116881,cat 116882,airplane 116883,deer 116884,horse 116885,ship 116886,airplane 116887,frog 116888,frog 116889,frog 116890,ship 116891,airplane 116892,automobile 116893,cat 116894,ship 116895,automobile 116896,frog 116897,dog 116898,frog 116899,deer 116900,cat 116901,frog 116902,cat 116903,frog 116904,ship 116905,dog 116906,automobile 116907,airplane 116908,cat 116909,automobile 116910,airplane 116911,deer 116912,horse 116913,horse 116914,deer 116915,bird 116916,truck 116917,bird 116918,horse 116919,automobile 116920,frog 116921,airplane 116922,cat 116923,horse 116924,ship 116925,horse 116926,ship 116927,airplane 116928,horse 116929,deer 116930,bird 116931,bird 116932,ship 116933,dog 116934,cat 116935,bird 116936,deer 116937,bird 116938,airplane 116939,automobile 116940,automobile 116941,airplane 116942,truck 116943,frog 116944,horse 116945,deer 116946,truck 116947,truck 116948,deer 116949,deer 116950,horse 116951,cat 116952,frog 116953,cat 116954,airplane 116955,deer 116956,airplane 116957,bird 116958,automobile 116959,ship 116960,cat 116961,deer 116962,truck 116963,automobile 116964,frog 116965,cat 116966,airplane 116967,truck 116968,bird 116969,horse 116970,truck 116971,horse 116972,ship 116973,dog 116974,ship 116975,horse 116976,bird 116977,dog 116978,truck 116979,airplane 116980,bird 116981,cat 116982,bird 116983,ship 116984,airplane 116985,truck 116986,cat 116987,frog 116988,cat 116989,airplane 116990,horse 116991,horse 116992,truck 116993,cat 116994,dog 116995,deer 116996,deer 116997,frog 116998,dog 116999,cat 117000,bird 117001,automobile 117002,horse 117003,truck 117004,cat 117005,airplane 117006,truck 117007,cat 117008,deer 117009,airplane 117010,deer 117011,ship 117012,cat 117013,dog 117014,horse 117015,ship 117016,cat 117017,frog 117018,dog 117019,deer 117020,truck 117021,dog 117022,deer 117023,airplane 117024,horse 117025,deer 117026,truck 117027,dog 117028,airplane 117029,airplane 117030,frog 117031,dog 117032,airplane 117033,dog 117034,deer 117035,horse 117036,horse 117037,deer 117038,frog 117039,dog 117040,automobile 117041,ship 117042,automobile 117043,frog 117044,airplane 117045,cat 117046,airplane 117047,deer 117048,airplane 117049,ship 117050,frog 117051,deer 117052,automobile 117053,bird 117054,horse 117055,cat 117056,airplane 117057,frog 117058,horse 117059,dog 117060,bird 117061,horse 117062,cat 117063,bird 117064,ship 117065,deer 117066,truck 117067,horse 117068,ship 117069,truck 117070,horse 117071,automobile 117072,frog 117073,truck 117074,ship 117075,horse 117076,deer 117077,bird 117078,cat 117079,frog 117080,automobile 117081,ship 117082,dog 117083,truck 117084,frog 117085,bird 117086,automobile 117087,airplane 117088,cat 117089,frog 117090,horse 117091,deer 117092,truck 117093,truck 117094,deer 117095,ship 117096,frog 117097,deer 117098,bird 117099,airplane 117100,horse 117101,bird 117102,deer 117103,deer 117104,deer 117105,dog 117106,horse 117107,dog 117108,ship 117109,horse 117110,automobile 117111,cat 117112,cat 117113,airplane 117114,frog 117115,bird 117116,bird 117117,truck 117118,truck 117119,truck 117120,dog 117121,deer 117122,deer 117123,cat 117124,deer 117125,ship 117126,truck 117127,frog 117128,frog 117129,dog 117130,frog 117131,airplane 117132,airplane 117133,truck 117134,deer 117135,bird 117136,ship 117137,airplane 117138,cat 117139,airplane 117140,dog 117141,ship 117142,deer 117143,horse 117144,frog 117145,ship 117146,ship 117147,truck 117148,truck 117149,dog 117150,dog 117151,frog 117152,horse 117153,horse 117154,deer 117155,truck 117156,horse 117157,dog 117158,horse 117159,cat 117160,airplane 117161,bird 117162,dog 117163,dog 117164,dog 117165,ship 117166,dog 117167,bird 117168,cat 117169,truck 117170,bird 117171,deer 117172,frog 117173,cat 117174,frog 117175,horse 117176,automobile 117177,dog 117178,airplane 117179,cat 117180,ship 117181,deer 117182,truck 117183,bird 117184,ship 117185,cat 117186,ship 117187,dog 117188,automobile 117189,dog 117190,dog 117191,frog 117192,frog 117193,frog 117194,frog 117195,dog 117196,frog 117197,airplane 117198,ship 117199,horse 117200,deer 117201,frog 117202,bird 117203,deer 117204,truck 117205,cat 117206,ship 117207,frog 117208,automobile 117209,airplane 117210,automobile 117211,cat 117212,dog 117213,automobile 117214,deer 117215,cat 117216,ship 117217,cat 117218,bird 117219,frog 117220,bird 117221,cat 117222,horse 117223,truck 117224,deer 117225,deer 117226,deer 117227,horse 117228,horse 117229,dog 117230,ship 117231,frog 117232,horse 117233,bird 117234,cat 117235,cat 117236,automobile 117237,cat 117238,truck 117239,dog 117240,horse 117241,airplane 117242,cat 117243,cat 117244,horse 117245,cat 117246,deer 117247,horse 117248,airplane 117249,truck 117250,deer 117251,automobile 117252,bird 117253,ship 117254,cat 117255,bird 117256,dog 117257,cat 117258,deer 117259,deer 117260,horse 117261,frog 117262,truck 117263,horse 117264,truck 117265,truck 117266,ship 117267,dog 117268,dog 117269,bird 117270,cat 117271,horse 117272,horse 117273,truck 117274,dog 117275,truck 117276,frog 117277,deer 117278,automobile 117279,deer 117280,automobile 117281,frog 117282,horse 117283,airplane 117284,cat 117285,horse 117286,cat 117287,dog 117288,airplane 117289,bird 117290,deer 117291,cat 117292,bird 117293,deer 117294,truck 117295,ship 117296,horse 117297,cat 117298,airplane 117299,ship 117300,airplane 117301,cat 117302,bird 117303,cat 117304,automobile 117305,frog 117306,bird 117307,cat 117308,cat 117309,automobile 117310,automobile 117311,automobile 117312,bird 117313,deer 117314,deer 117315,cat 117316,frog 117317,truck 117318,dog 117319,frog 117320,horse 117321,airplane 117322,deer 117323,deer 117324,horse 117325,automobile 117326,truck 117327,automobile 117328,airplane 117329,deer 117330,truck 117331,truck 117332,horse 117333,ship 117334,automobile 117335,frog 117336,bird 117337,ship 117338,airplane 117339,horse 117340,truck 117341,automobile 117342,truck 117343,deer 117344,cat 117345,ship 117346,dog 117347,deer 117348,frog 117349,deer 117350,ship 117351,cat 117352,frog 117353,truck 117354,truck 117355,ship 117356,airplane 117357,automobile 117358,truck 117359,deer 117360,airplane 117361,ship 117362,airplane 117363,ship 117364,automobile 117365,truck 117366,truck 117367,deer 117368,bird 117369,bird 117370,truck 117371,ship 117372,truck 117373,ship 117374,automobile 117375,airplane 117376,cat 117377,airplane 117378,ship 117379,frog 117380,deer 117381,truck 117382,frog 117383,dog 117384,cat 117385,automobile 117386,truck 117387,airplane 117388,bird 117389,automobile 117390,horse 117391,frog 117392,airplane 117393,automobile 117394,bird 117395,horse 117396,bird 117397,dog 117398,truck 117399,horse 117400,frog 117401,deer 117402,airplane 117403,automobile 117404,cat 117405,cat 117406,deer 117407,bird 117408,deer 117409,dog 117410,deer 117411,truck 117412,bird 117413,horse 117414,bird 117415,horse 117416,deer 117417,frog 117418,dog 117419,horse 117420,cat 117421,cat 117422,frog 117423,dog 117424,ship 117425,bird 117426,frog 117427,airplane 117428,deer 117429,automobile 117430,bird 117431,cat 117432,ship 117433,dog 117434,automobile 117435,bird 117436,automobile 117437,bird 117438,frog 117439,frog 117440,dog 117441,deer 117442,truck 117443,truck 117444,automobile 117445,bird 117446,dog 117447,bird 117448,automobile 117449,dog 117450,truck 117451,bird 117452,horse 117453,airplane 117454,ship 117455,deer 117456,cat 117457,dog 117458,truck 117459,frog 117460,truck 117461,automobile 117462,deer 117463,cat 117464,automobile 117465,deer 117466,frog 117467,airplane 117468,bird 117469,dog 117470,truck 117471,deer 117472,dog 117473,deer 117474,bird 117475,deer 117476,airplane 117477,truck 117478,frog 117479,dog 117480,automobile 117481,automobile 117482,ship 117483,deer 117484,automobile 117485,automobile 117486,airplane 117487,horse 117488,truck 117489,bird 117490,horse 117491,automobile 117492,dog 117493,cat 117494,cat 117495,horse 117496,frog 117497,airplane 117498,automobile 117499,frog 117500,horse 117501,cat 117502,deer 117503,cat 117504,frog 117505,frog 117506,horse 117507,ship 117508,deer 117509,cat 117510,frog 117511,horse 117512,frog 117513,bird 117514,truck 117515,frog 117516,automobile 117517,dog 117518,dog 117519,ship 117520,frog 117521,horse 117522,airplane 117523,truck 117524,ship 117525,deer 117526,ship 117527,frog 117528,bird 117529,bird 117530,dog 117531,truck 117532,cat 117533,horse 117534,bird 117535,frog 117536,cat 117537,dog 117538,dog 117539,dog 117540,deer 117541,horse 117542,airplane 117543,dog 117544,cat 117545,truck 117546,truck 117547,dog 117548,deer 117549,truck 117550,dog 117551,cat 117552,cat 117553,airplane 117554,frog 117555,bird 117556,dog 117557,truck 117558,deer 117559,deer 117560,truck 117561,horse 117562,truck 117563,horse 117564,truck 117565,airplane 117566,cat 117567,airplane 117568,bird 117569,automobile 117570,truck 117571,horse 117572,deer 117573,frog 117574,bird 117575,cat 117576,frog 117577,deer 117578,deer 117579,frog 117580,truck 117581,horse 117582,ship 117583,airplane 117584,ship 117585,frog 117586,cat 117587,truck 117588,horse 117589,ship 117590,bird 117591,cat 117592,airplane 117593,bird 117594,deer 117595,airplane 117596,frog 117597,ship 117598,truck 117599,deer 117600,automobile 117601,ship 117602,deer 117603,airplane 117604,automobile 117605,horse 117606,automobile 117607,automobile 117608,airplane 117609,dog 117610,airplane 117611,airplane 117612,horse 117613,dog 117614,airplane 117615,automobile 117616,truck 117617,automobile 117618,automobile 117619,truck 117620,truck 117621,cat 117622,truck 117623,truck 117624,truck 117625,deer 117626,cat 117627,deer 117628,deer 117629,truck 117630,frog 117631,cat 117632,cat 117633,deer 117634,ship 117635,airplane 117636,bird 117637,frog 117638,horse 117639,airplane 117640,airplane 117641,truck 117642,ship 117643,truck 117644,frog 117645,ship 117646,automobile 117647,frog 117648,deer 117649,cat 117650,automobile 117651,dog 117652,truck 117653,automobile 117654,airplane 117655,airplane 117656,airplane 117657,cat 117658,automobile 117659,frog 117660,cat 117661,dog 117662,dog 117663,dog 117664,dog 117665,horse 117666,deer 117667,deer 117668,cat 117669,truck 117670,automobile 117671,frog 117672,ship 117673,automobile 117674,airplane 117675,dog 117676,deer 117677,bird 117678,airplane 117679,ship 117680,ship 117681,automobile 117682,horse 117683,dog 117684,deer 117685,airplane 117686,truck 117687,deer 117688,bird 117689,bird 117690,frog 117691,deer 117692,ship 117693,deer 117694,cat 117695,truck 117696,cat 117697,deer 117698,deer 117699,frog 117700,dog 117701,deer 117702,dog 117703,cat 117704,dog 117705,deer 117706,horse 117707,frog 117708,cat 117709,truck 117710,truck 117711,bird 117712,horse 117713,frog 117714,dog 117715,horse 117716,frog 117717,horse 117718,truck 117719,deer 117720,airplane 117721,deer 117722,automobile 117723,bird 117724,automobile 117725,cat 117726,deer 117727,ship 117728,cat 117729,frog 117730,airplane 117731,ship 117732,bird 117733,cat 117734,truck 117735,bird 117736,deer 117737,cat 117738,frog 117739,airplane 117740,truck 117741,ship 117742,airplane 117743,dog 117744,cat 117745,cat 117746,automobile 117747,frog 117748,automobile 117749,deer 117750,dog 117751,ship 117752,deer 117753,cat 117754,bird 117755,frog 117756,truck 117757,frog 117758,horse 117759,deer 117760,deer 117761,ship 117762,airplane 117763,truck 117764,deer 117765,automobile 117766,deer 117767,frog 117768,bird 117769,deer 117770,horse 117771,dog 117772,deer 117773,dog 117774,frog 117775,truck 117776,truck 117777,cat 117778,airplane 117779,airplane 117780,dog 117781,dog 117782,deer 117783,horse 117784,truck 117785,horse 117786,automobile 117787,truck 117788,cat 117789,horse 117790,frog 117791,deer 117792,ship 117793,dog 117794,automobile 117795,dog 117796,automobile 117797,deer 117798,dog 117799,deer 117800,frog 117801,deer 117802,frog 117803,ship 117804,deer 117805,truck 117806,bird 117807,deer 117808,horse 117809,dog 117810,dog 117811,horse 117812,horse 117813,deer 117814,cat 117815,truck 117816,frog 117817,bird 117818,frog 117819,deer 117820,horse 117821,airplane 117822,airplane 117823,bird 117824,bird 117825,airplane 117826,ship 117827,automobile 117828,bird 117829,airplane 117830,dog 117831,bird 117832,deer 117833,deer 117834,dog 117835,dog 117836,horse 117837,truck 117838,horse 117839,deer 117840,deer 117841,truck 117842,bird 117843,ship 117844,deer 117845,deer 117846,dog 117847,automobile 117848,truck 117849,horse 117850,airplane 117851,bird 117852,frog 117853,frog 117854,ship 117855,ship 117856,airplane 117857,bird 117858,automobile 117859,cat 117860,frog 117861,airplane 117862,bird 117863,airplane 117864,bird 117865,cat 117866,airplane 117867,truck 117868,cat 117869,deer 117870,airplane 117871,airplane 117872,cat 117873,airplane 117874,cat 117875,horse 117876,bird 117877,truck 117878,frog 117879,cat 117880,cat 117881,frog 117882,truck 117883,cat 117884,deer 117885,dog 117886,deer 117887,frog 117888,bird 117889,cat 117890,horse 117891,deer 117892,dog 117893,dog 117894,ship 117895,ship 117896,truck 117897,deer 117898,truck 117899,cat 117900,deer 117901,bird 117902,truck 117903,dog 117904,cat 117905,dog 117906,truck 117907,bird 117908,cat 117909,horse 117910,frog 117911,frog 117912,truck 117913,frog 117914,cat 117915,horse 117916,truck 117917,dog 117918,bird 117919,frog 117920,airplane 117921,automobile 117922,bird 117923,automobile 117924,truck 117925,ship 117926,deer 117927,bird 117928,frog 117929,cat 117930,truck 117931,automobile 117932,truck 117933,airplane 117934,horse 117935,deer 117936,ship 117937,dog 117938,cat 117939,frog 117940,truck 117941,horse 117942,automobile 117943,frog 117944,cat 117945,bird 117946,truck 117947,cat 117948,cat 117949,frog 117950,deer 117951,deer 117952,deer 117953,deer 117954,bird 117955,automobile 117956,truck 117957,truck 117958,automobile 117959,cat 117960,deer 117961,ship 117962,deer 117963,cat 117964,deer 117965,dog 117966,cat 117967,deer 117968,truck 117969,automobile 117970,airplane 117971,dog 117972,dog 117973,bird 117974,bird 117975,frog 117976,frog 117977,cat 117978,bird 117979,cat 117980,airplane 117981,frog 117982,cat 117983,cat 117984,deer 117985,deer 117986,horse 117987,ship 117988,dog 117989,frog 117990,airplane 117991,cat 117992,dog 117993,cat 117994,dog 117995,ship 117996,truck 117997,truck 117998,ship 117999,cat 118000,ship 118001,truck 118002,automobile 118003,airplane 118004,ship 118005,deer 118006,automobile 118007,deer 118008,deer 118009,dog 118010,airplane 118011,airplane 118012,cat 118013,bird 118014,automobile 118015,dog 118016,airplane 118017,frog 118018,truck 118019,cat 118020,ship 118021,cat 118022,automobile 118023,dog 118024,cat 118025,dog 118026,deer 118027,cat 118028,bird 118029,dog 118030,automobile 118031,automobile 118032,frog 118033,dog 118034,dog 118035,truck 118036,bird 118037,bird 118038,cat 118039,ship 118040,airplane 118041,bird 118042,deer 118043,horse 118044,horse 118045,automobile 118046,deer 118047,cat 118048,deer 118049,dog 118050,dog 118051,cat 118052,frog 118053,ship 118054,ship 118055,deer 118056,cat 118057,cat 118058,cat 118059,deer 118060,airplane 118061,automobile 118062,horse 118063,frog 118064,dog 118065,bird 118066,airplane 118067,airplane 118068,horse 118069,dog 118070,truck 118071,bird 118072,airplane 118073,horse 118074,deer 118075,cat 118076,truck 118077,airplane 118078,cat 118079,frog 118080,truck 118081,cat 118082,horse 118083,cat 118084,cat 118085,airplane 118086,cat 118087,airplane 118088,truck 118089,truck 118090,cat 118091,cat 118092,horse 118093,deer 118094,dog 118095,frog 118096,dog 118097,horse 118098,cat 118099,horse 118100,horse 118101,deer 118102,truck 118103,horse 118104,horse 118105,truck 118106,cat 118107,deer 118108,airplane 118109,frog 118110,bird 118111,airplane 118112,cat 118113,ship 118114,horse 118115,automobile 118116,horse 118117,truck 118118,dog 118119,bird 118120,airplane 118121,horse 118122,truck 118123,bird 118124,frog 118125,ship 118126,truck 118127,horse 118128,frog 118129,bird 118130,truck 118131,ship 118132,frog 118133,horse 118134,airplane 118135,airplane 118136,dog 118137,cat 118138,cat 118139,cat 118140,frog 118141,dog 118142,horse 118143,deer 118144,airplane 118145,truck 118146,dog 118147,bird 118148,bird 118149,deer 118150,cat 118151,bird 118152,horse 118153,deer 118154,cat 118155,cat 118156,bird 118157,automobile 118158,horse 118159,frog 118160,cat 118161,deer 118162,automobile 118163,ship 118164,frog 118165,cat 118166,truck 118167,dog 118168,cat 118169,truck 118170,horse 118171,ship 118172,airplane 118173,horse 118174,bird 118175,airplane 118176,horse 118177,dog 118178,deer 118179,truck 118180,frog 118181,bird 118182,truck 118183,cat 118184,airplane 118185,deer 118186,horse 118187,deer 118188,horse 118189,deer 118190,truck 118191,cat 118192,airplane 118193,automobile 118194,dog 118195,airplane 118196,horse 118197,truck 118198,cat 118199,airplane 118200,automobile 118201,frog 118202,cat 118203,deer 118204,dog 118205,airplane 118206,bird 118207,dog 118208,airplane 118209,truck 118210,airplane 118211,bird 118212,cat 118213,deer 118214,deer 118215,dog 118216,frog 118217,bird 118218,truck 118219,truck 118220,cat 118221,dog 118222,frog 118223,bird 118224,cat 118225,automobile 118226,deer 118227,deer 118228,horse 118229,airplane 118230,frog 118231,deer 118232,airplane 118233,horse 118234,cat 118235,deer 118236,cat 118237,bird 118238,frog 118239,horse 118240,horse 118241,truck 118242,horse 118243,horse 118244,cat 118245,automobile 118246,frog 118247,horse 118248,cat 118249,automobile 118250,cat 118251,frog 118252,truck 118253,deer 118254,airplane 118255,dog 118256,airplane 118257,horse 118258,ship 118259,horse 118260,ship 118261,ship 118262,frog 118263,automobile 118264,cat 118265,ship 118266,ship 118267,deer 118268,truck 118269,cat 118270,deer 118271,cat 118272,dog 118273,frog 118274,horse 118275,deer 118276,frog 118277,truck 118278,truck 118279,frog 118280,cat 118281,truck 118282,airplane 118283,deer 118284,truck 118285,bird 118286,dog 118287,dog 118288,airplane 118289,airplane 118290,ship 118291,frog 118292,cat 118293,bird 118294,automobile 118295,horse 118296,frog 118297,deer 118298,dog 118299,dog 118300,dog 118301,airplane 118302,truck 118303,deer 118304,frog 118305,deer 118306,bird 118307,deer 118308,automobile 118309,bird 118310,dog 118311,dog 118312,cat 118313,deer 118314,frog 118315,automobile 118316,ship 118317,ship 118318,airplane 118319,automobile 118320,dog 118321,truck 118322,frog 118323,ship 118324,truck 118325,airplane 118326,frog 118327,bird 118328,dog 118329,deer 118330,cat 118331,dog 118332,cat 118333,airplane 118334,deer 118335,automobile 118336,frog 118337,deer 118338,cat 118339,deer 118340,horse 118341,cat 118342,horse 118343,airplane 118344,bird 118345,dog 118346,frog 118347,frog 118348,frog 118349,frog 118350,truck 118351,deer 118352,frog 118353,ship 118354,dog 118355,bird 118356,bird 118357,bird 118358,frog 118359,deer 118360,ship 118361,automobile 118362,deer 118363,frog 118364,deer 118365,bird 118366,airplane 118367,bird 118368,frog 118369,horse 118370,truck 118371,airplane 118372,cat 118373,deer 118374,horse 118375,cat 118376,frog 118377,airplane 118378,bird 118379,airplane 118380,cat 118381,airplane 118382,dog 118383,automobile 118384,truck 118385,cat 118386,frog 118387,cat 118388,frog 118389,bird 118390,ship 118391,ship 118392,cat 118393,cat 118394,cat 118395,horse 118396,cat 118397,automobile 118398,horse 118399,cat 118400,airplane 118401,ship 118402,automobile 118403,cat 118404,deer 118405,automobile 118406,dog 118407,dog 118408,automobile 118409,horse 118410,frog 118411,frog 118412,deer 118413,bird 118414,bird 118415,dog 118416,ship 118417,horse 118418,horse 118419,frog 118420,bird 118421,airplane 118422,horse 118423,airplane 118424,automobile 118425,ship 118426,cat 118427,ship 118428,automobile 118429,ship 118430,frog 118431,ship 118432,ship 118433,bird 118434,ship 118435,dog 118436,frog 118437,truck 118438,bird 118439,cat 118440,deer 118441,horse 118442,truck 118443,ship 118444,airplane 118445,truck 118446,truck 118447,bird 118448,truck 118449,cat 118450,airplane 118451,dog 118452,truck 118453,frog 118454,frog 118455,truck 118456,deer 118457,frog 118458,airplane 118459,truck 118460,ship 118461,ship 118462,dog 118463,cat 118464,ship 118465,automobile 118466,deer 118467,frog 118468,airplane 118469,frog 118470,horse 118471,ship 118472,frog 118473,airplane 118474,deer 118475,ship 118476,truck 118477,deer 118478,deer 118479,truck 118480,cat 118481,ship 118482,automobile 118483,ship 118484,frog 118485,bird 118486,horse 118487,airplane 118488,bird 118489,airplane 118490,bird 118491,frog 118492,ship 118493,deer 118494,ship 118495,bird 118496,airplane 118497,automobile 118498,dog 118499,ship 118500,truck 118501,cat 118502,dog 118503,cat 118504,truck 118505,automobile 118506,ship 118507,cat 118508,horse 118509,dog 118510,dog 118511,deer 118512,truck 118513,cat 118514,cat 118515,ship 118516,dog 118517,cat 118518,dog 118519,truck 118520,frog 118521,frog 118522,deer 118523,truck 118524,horse 118525,deer 118526,ship 118527,deer 118528,horse 118529,airplane 118530,truck 118531,truck 118532,airplane 118533,airplane 118534,horse 118535,horse 118536,cat 118537,automobile 118538,cat 118539,dog 118540,airplane 118541,truck 118542,bird 118543,truck 118544,bird 118545,bird 118546,cat 118547,deer 118548,cat 118549,horse 118550,truck 118551,airplane 118552,cat 118553,horse 118554,bird 118555,truck 118556,airplane 118557,truck 118558,truck 118559,truck 118560,dog 118561,ship 118562,automobile 118563,truck 118564,cat 118565,dog 118566,frog 118567,bird 118568,bird 118569,bird 118570,cat 118571,deer 118572,truck 118573,automobile 118574,airplane 118575,horse 118576,deer 118577,automobile 118578,horse 118579,automobile 118580,frog 118581,dog 118582,ship 118583,cat 118584,dog 118585,dog 118586,truck 118587,dog 118588,truck 118589,deer 118590,horse 118591,horse 118592,truck 118593,dog 118594,airplane 118595,ship 118596,deer 118597,automobile 118598,frog 118599,horse 118600,cat 118601,dog 118602,airplane 118603,cat 118604,frog 118605,horse 118606,frog 118607,truck 118608,dog 118609,dog 118610,dog 118611,truck 118612,dog 118613,cat 118614,dog 118615,cat 118616,frog 118617,truck 118618,frog 118619,dog 118620,frog 118621,dog 118622,automobile 118623,cat 118624,cat 118625,deer 118626,truck 118627,horse 118628,deer 118629,cat 118630,cat 118631,bird 118632,deer 118633,horse 118634,truck 118635,airplane 118636,truck 118637,dog 118638,deer 118639,airplane 118640,ship 118641,airplane 118642,frog 118643,automobile 118644,bird 118645,airplane 118646,bird 118647,truck 118648,dog 118649,dog 118650,ship 118651,frog 118652,automobile 118653,cat 118654,horse 118655,dog 118656,deer 118657,cat 118658,truck 118659,airplane 118660,bird 118661,bird 118662,deer 118663,ship 118664,cat 118665,airplane 118666,deer 118667,horse 118668,dog 118669,horse 118670,horse 118671,deer 118672,cat 118673,airplane 118674,dog 118675,ship 118676,automobile 118677,cat 118678,ship 118679,dog 118680,frog 118681,bird 118682,ship 118683,automobile 118684,horse 118685,automobile 118686,dog 118687,truck 118688,cat 118689,airplane 118690,horse 118691,bird 118692,bird 118693,dog 118694,dog 118695,bird 118696,truck 118697,airplane 118698,ship 118699,cat 118700,deer 118701,truck 118702,automobile 118703,ship 118704,horse 118705,deer 118706,bird 118707,bird 118708,truck 118709,deer 118710,deer 118711,bird 118712,cat 118713,bird 118714,deer 118715,airplane 118716,airplane 118717,airplane 118718,airplane 118719,deer 118720,cat 118721,truck 118722,horse 118723,truck 118724,deer 118725,bird 118726,truck 118727,airplane 118728,dog 118729,deer 118730,truck 118731,horse 118732,cat 118733,horse 118734,ship 118735,automobile 118736,ship 118737,automobile 118738,frog 118739,frog 118740,frog 118741,cat 118742,cat 118743,horse 118744,horse 118745,dog 118746,frog 118747,dog 118748,truck 118749,ship 118750,frog 118751,airplane 118752,ship 118753,deer 118754,bird 118755,ship 118756,ship 118757,horse 118758,horse 118759,deer 118760,horse 118761,airplane 118762,cat 118763,cat 118764,ship 118765,truck 118766,horse 118767,bird 118768,dog 118769,automobile 118770,bird 118771,airplane 118772,truck 118773,frog 118774,frog 118775,dog 118776,automobile 118777,airplane 118778,deer 118779,automobile 118780,automobile 118781,automobile 118782,automobile 118783,bird 118784,airplane 118785,frog 118786,airplane 118787,cat 118788,horse 118789,ship 118790,airplane 118791,horse 118792,ship 118793,airplane 118794,horse 118795,airplane 118796,truck 118797,horse 118798,cat 118799,automobile 118800,dog 118801,cat 118802,dog 118803,horse 118804,automobile 118805,cat 118806,cat 118807,automobile 118808,cat 118809,airplane 118810,frog 118811,truck 118812,automobile 118813,cat 118814,airplane 118815,truck 118816,ship 118817,cat 118818,frog 118819,frog 118820,cat 118821,frog 118822,deer 118823,horse 118824,horse 118825,cat 118826,frog 118827,ship 118828,frog 118829,airplane 118830,airplane 118831,deer 118832,deer 118833,frog 118834,deer 118835,airplane 118836,deer 118837,dog 118838,ship 118839,deer 118840,deer 118841,automobile 118842,truck 118843,dog 118844,deer 118845,frog 118846,automobile 118847,truck 118848,cat 118849,dog 118850,airplane 118851,truck 118852,ship 118853,automobile 118854,deer 118855,dog 118856,frog 118857,deer 118858,automobile 118859,truck 118860,bird 118861,bird 118862,horse 118863,frog 118864,frog 118865,frog 118866,truck 118867,cat 118868,cat 118869,bird 118870,horse 118871,dog 118872,deer 118873,truck 118874,horse 118875,frog 118876,bird 118877,horse 118878,automobile 118879,deer 118880,deer 118881,truck 118882,cat 118883,cat 118884,cat 118885,truck 118886,airplane 118887,frog 118888,bird 118889,automobile 118890,deer 118891,bird 118892,horse 118893,truck 118894,deer 118895,dog 118896,dog 118897,dog 118898,deer 118899,ship 118900,cat 118901,frog 118902,frog 118903,deer 118904,truck 118905,cat 118906,automobile 118907,deer 118908,cat 118909,frog 118910,ship 118911,truck 118912,ship 118913,ship 118914,airplane 118915,truck 118916,ship 118917,airplane 118918,dog 118919,deer 118920,truck 118921,cat 118922,truck 118923,automobile 118924,bird 118925,truck 118926,deer 118927,cat 118928,horse 118929,frog 118930,frog 118931,airplane 118932,truck 118933,truck 118934,cat 118935,truck 118936,truck 118937,dog 118938,bird 118939,truck 118940,cat 118941,horse 118942,automobile 118943,truck 118944,ship 118945,ship 118946,dog 118947,dog 118948,horse 118949,airplane 118950,ship 118951,cat 118952,truck 118953,horse 118954,horse 118955,frog 118956,ship 118957,cat 118958,horse 118959,frog 118960,bird 118961,bird 118962,cat 118963,horse 118964,dog 118965,automobile 118966,ship 118967,frog 118968,deer 118969,automobile 118970,ship 118971,horse 118972,deer 118973,ship 118974,airplane 118975,truck 118976,horse 118977,frog 118978,dog 118979,frog 118980,deer 118981,deer 118982,ship 118983,bird 118984,deer 118985,dog 118986,bird 118987,frog 118988,deer 118989,frog 118990,truck 118991,cat 118992,truck 118993,horse 118994,frog 118995,deer 118996,horse 118997,truck 118998,frog 118999,dog 119000,airplane 119001,deer 119002,frog 119003,cat 119004,horse 119005,truck 119006,bird 119007,ship 119008,automobile 119009,automobile 119010,dog 119011,cat 119012,cat 119013,ship 119014,automobile 119015,truck 119016,airplane 119017,dog 119018,cat 119019,deer 119020,cat 119021,truck 119022,bird 119023,frog 119024,airplane 119025,automobile 119026,truck 119027,automobile 119028,truck 119029,deer 119030,truck 119031,automobile 119032,automobile 119033,truck 119034,frog 119035,dog 119036,frog 119037,ship 119038,cat 119039,dog 119040,dog 119041,bird 119042,horse 119043,horse 119044,truck 119045,bird 119046,cat 119047,truck 119048,frog 119049,truck 119050,truck 119051,truck 119052,truck 119053,truck 119054,cat 119055,deer 119056,deer 119057,deer 119058,horse 119059,airplane 119060,horse 119061,ship 119062,cat 119063,cat 119064,automobile 119065,automobile 119066,dog 119067,cat 119068,airplane 119069,frog 119070,frog 119071,cat 119072,bird 119073,ship 119074,automobile 119075,ship 119076,dog 119077,deer 119078,truck 119079,cat 119080,horse 119081,horse 119082,automobile 119083,frog 119084,frog 119085,ship 119086,deer 119087,airplane 119088,frog 119089,automobile 119090,horse 119091,airplane 119092,truck 119093,horse 119094,deer 119095,frog 119096,truck 119097,airplane 119098,horse 119099,deer 119100,horse 119101,frog 119102,automobile 119103,ship 119104,automobile 119105,automobile 119106,airplane 119107,truck 119108,automobile 119109,deer 119110,frog 119111,frog 119112,frog 119113,horse 119114,airplane 119115,horse 119116,automobile 119117,dog 119118,dog 119119,deer 119120,frog 119121,bird 119122,dog 119123,automobile 119124,ship 119125,deer 119126,deer 119127,deer 119128,automobile 119129,airplane 119130,airplane 119131,ship 119132,airplane 119133,cat 119134,dog 119135,cat 119136,frog 119137,frog 119138,deer 119139,horse 119140,frog 119141,dog 119142,automobile 119143,automobile 119144,airplane 119145,cat 119146,cat 119147,airplane 119148,bird 119149,frog 119150,bird 119151,dog 119152,bird 119153,deer 119154,horse 119155,horse 119156,frog 119157,dog 119158,cat 119159,ship 119160,cat 119161,bird 119162,bird 119163,deer 119164,automobile 119165,frog 119166,automobile 119167,deer 119168,airplane 119169,dog 119170,truck 119171,horse 119172,cat 119173,bird 119174,truck 119175,deer 119176,bird 119177,bird 119178,deer 119179,frog 119180,deer 119181,dog 119182,dog 119183,dog 119184,deer 119185,airplane 119186,deer 119187,deer 119188,deer 119189,truck 119190,frog 119191,airplane 119192,truck 119193,horse 119194,cat 119195,deer 119196,ship 119197,horse 119198,cat 119199,ship 119200,frog 119201,frog 119202,deer 119203,bird 119204,dog 119205,frog 119206,frog 119207,airplane 119208,frog 119209,truck 119210,dog 119211,dog 119212,automobile 119213,airplane 119214,deer 119215,horse 119216,truck 119217,bird 119218,airplane 119219,airplane 119220,dog 119221,horse 119222,dog 119223,airplane 119224,truck 119225,deer 119226,bird 119227,deer 119228,dog 119229,airplane 119230,truck 119231,horse 119232,deer 119233,truck 119234,truck 119235,airplane 119236,bird 119237,frog 119238,deer 119239,ship 119240,cat 119241,deer 119242,deer 119243,deer 119244,truck 119245,truck 119246,airplane 119247,bird 119248,dog 119249,deer 119250,ship 119251,ship 119252,truck 119253,deer 119254,bird 119255,airplane 119256,airplane 119257,deer 119258,deer 119259,airplane 119260,dog 119261,ship 119262,dog 119263,ship 119264,automobile 119265,truck 119266,frog 119267,dog 119268,ship 119269,automobile 119270,deer 119271,ship 119272,frog 119273,horse 119274,dog 119275,truck 119276,deer 119277,ship 119278,cat 119279,deer 119280,cat 119281,bird 119282,bird 119283,ship 119284,cat 119285,truck 119286,deer 119287,ship 119288,deer 119289,deer 119290,cat 119291,ship 119292,airplane 119293,horse 119294,truck 119295,airplane 119296,airplane 119297,horse 119298,dog 119299,horse 119300,frog 119301,dog 119302,frog 119303,deer 119304,airplane 119305,cat 119306,dog 119307,truck 119308,ship 119309,cat 119310,automobile 119311,deer 119312,dog 119313,dog 119314,dog 119315,truck 119316,horse 119317,automobile 119318,deer 119319,truck 119320,bird 119321,frog 119322,bird 119323,deer 119324,truck 119325,frog 119326,dog 119327,airplane 119328,truck 119329,dog 119330,dog 119331,frog 119332,frog 119333,deer 119334,truck 119335,automobile 119336,cat 119337,deer 119338,truck 119339,dog 119340,ship 119341,automobile 119342,automobile 119343,horse 119344,airplane 119345,deer 119346,deer 119347,cat 119348,horse 119349,dog 119350,cat 119351,deer 119352,cat 119353,deer 119354,dog 119355,horse 119356,automobile 119357,deer 119358,ship 119359,airplane 119360,deer 119361,deer 119362,bird 119363,deer 119364,bird 119365,dog 119366,airplane 119367,truck 119368,dog 119369,automobile 119370,airplane 119371,cat 119372,bird 119373,dog 119374,cat 119375,truck 119376,ship 119377,deer 119378,truck 119379,cat 119380,bird 119381,deer 119382,bird 119383,dog 119384,frog 119385,deer 119386,airplane 119387,deer 119388,horse 119389,frog 119390,deer 119391,cat 119392,dog 119393,truck 119394,airplane 119395,deer 119396,cat 119397,deer 119398,automobile 119399,truck 119400,bird 119401,bird 119402,cat 119403,horse 119404,airplane 119405,truck 119406,dog 119407,truck 119408,airplane 119409,automobile 119410,dog 119411,dog 119412,horse 119413,cat 119414,horse 119415,truck 119416,truck 119417,airplane 119418,deer 119419,horse 119420,horse 119421,horse 119422,bird 119423,truck 119424,frog 119425,airplane 119426,ship 119427,horse 119428,bird 119429,deer 119430,horse 119431,cat 119432,horse 119433,truck 119434,horse 119435,automobile 119436,cat 119437,deer 119438,truck 119439,automobile 119440,horse 119441,ship 119442,frog 119443,horse 119444,bird 119445,horse 119446,truck 119447,cat 119448,bird 119449,cat 119450,automobile 119451,horse 119452,horse 119453,cat 119454,airplane 119455,ship 119456,dog 119457,horse 119458,dog 119459,bird 119460,cat 119461,airplane 119462,bird 119463,automobile 119464,frog 119465,truck 119466,airplane 119467,cat 119468,cat 119469,truck 119470,airplane 119471,cat 119472,horse 119473,ship 119474,automobile 119475,bird 119476,automobile 119477,frog 119478,frog 119479,frog 119480,frog 119481,bird 119482,frog 119483,frog 119484,airplane 119485,dog 119486,truck 119487,horse 119488,dog 119489,deer 119490,ship 119491,horse 119492,automobile 119493,ship 119494,frog 119495,horse 119496,dog 119497,cat 119498,dog 119499,automobile 119500,horse 119501,frog 119502,horse 119503,truck 119504,dog 119505,truck 119506,cat 119507,truck 119508,truck 119509,bird 119510,ship 119511,truck 119512,bird 119513,cat 119514,ship 119515,cat 119516,truck 119517,airplane 119518,bird 119519,horse 119520,truck 119521,horse 119522,bird 119523,bird 119524,frog 119525,airplane 119526,truck 119527,horse 119528,bird 119529,frog 119530,cat 119531,ship 119532,bird 119533,ship 119534,cat 119535,dog 119536,cat 119537,dog 119538,horse 119539,truck 119540,cat 119541,horse 119542,cat 119543,horse 119544,automobile 119545,cat 119546,horse 119547,bird 119548,airplane 119549,frog 119550,cat 119551,horse 119552,truck 119553,horse 119554,horse 119555,horse 119556,airplane 119557,dog 119558,ship 119559,horse 119560,cat 119561,frog 119562,truck 119563,deer 119564,deer 119565,frog 119566,frog 119567,dog 119568,cat 119569,airplane 119570,automobile 119571,airplane 119572,frog 119573,frog 119574,automobile 119575,cat 119576,frog 119577,frog 119578,automobile 119579,deer 119580,frog 119581,frog 119582,bird 119583,truck 119584,dog 119585,frog 119586,cat 119587,airplane 119588,dog 119589,dog 119590,bird 119591,dog 119592,automobile 119593,horse 119594,airplane 119595,ship 119596,deer 119597,deer 119598,horse 119599,truck 119600,ship 119601,frog 119602,bird 119603,horse 119604,cat 119605,cat 119606,horse 119607,airplane 119608,cat 119609,airplane 119610,dog 119611,ship 119612,cat 119613,airplane 119614,ship 119615,cat 119616,deer 119617,frog 119618,cat 119619,truck 119620,truck 119621,dog 119622,airplane 119623,ship 119624,ship 119625,dog 119626,dog 119627,deer 119628,horse 119629,frog 119630,deer 119631,frog 119632,deer 119633,bird 119634,deer 119635,truck 119636,frog 119637,cat 119638,truck 119639,horse 119640,truck 119641,bird 119642,truck 119643,horse 119644,dog 119645,automobile 119646,automobile 119647,horse 119648,automobile 119649,dog 119650,frog 119651,dog 119652,cat 119653,frog 119654,dog 119655,airplane 119656,frog 119657,truck 119658,horse 119659,frog 119660,automobile 119661,automobile 119662,deer 119663,horse 119664,cat 119665,horse 119666,cat 119667,truck 119668,dog 119669,deer 119670,airplane 119671,ship 119672,airplane 119673,airplane 119674,cat 119675,deer 119676,frog 119677,bird 119678,automobile 119679,deer 119680,automobile 119681,bird 119682,dog 119683,frog 119684,bird 119685,horse 119686,dog 119687,truck 119688,cat 119689,frog 119690,frog 119691,truck 119692,dog 119693,deer 119694,frog 119695,ship 119696,dog 119697,dog 119698,deer 119699,truck 119700,truck 119701,cat 119702,airplane 119703,dog 119704,bird 119705,ship 119706,horse 119707,horse 119708,dog 119709,ship 119710,airplane 119711,automobile 119712,bird 119713,dog 119714,ship 119715,cat 119716,frog 119717,deer 119718,frog 119719,bird 119720,frog 119721,dog 119722,frog 119723,horse 119724,automobile 119725,dog 119726,dog 119727,frog 119728,frog 119729,ship 119730,frog 119731,cat 119732,dog 119733,bird 119734,horse 119735,deer 119736,deer 119737,airplane 119738,cat 119739,dog 119740,truck 119741,cat 119742,truck 119743,ship 119744,airplane 119745,truck 119746,truck 119747,frog 119748,deer 119749,automobile 119750,bird 119751,deer 119752,cat 119753,bird 119754,bird 119755,truck 119756,dog 119757,deer 119758,airplane 119759,frog 119760,frog 119761,truck 119762,deer 119763,truck 119764,deer 119765,frog 119766,frog 119767,cat 119768,airplane 119769,cat 119770,truck 119771,bird 119772,horse 119773,frog 119774,airplane 119775,airplane 119776,horse 119777,frog 119778,airplane 119779,bird 119780,ship 119781,frog 119782,truck 119783,dog 119784,frog 119785,bird 119786,dog 119787,ship 119788,frog 119789,deer 119790,truck 119791,dog 119792,dog 119793,truck 119794,automobile 119795,automobile 119796,airplane 119797,automobile 119798,automobile 119799,airplane 119800,dog 119801,dog 119802,deer 119803,bird 119804,cat 119805,cat 119806,bird 119807,ship 119808,ship 119809,frog 119810,ship 119811,cat 119812,ship 119813,bird 119814,deer 119815,cat 119816,horse 119817,automobile 119818,cat 119819,horse 119820,bird 119821,deer 119822,cat 119823,dog 119824,airplane 119825,horse 119826,deer 119827,airplane 119828,airplane 119829,frog 119830,horse 119831,horse 119832,bird 119833,automobile 119834,dog 119835,ship 119836,automobile 119837,dog 119838,deer 119839,dog 119840,horse 119841,ship 119842,frog 119843,dog 119844,truck 119845,airplane 119846,horse 119847,cat 119848,bird 119849,deer 119850,frog 119851,bird 119852,deer 119853,airplane 119854,bird 119855,ship 119856,horse 119857,horse 119858,deer 119859,bird 119860,frog 119861,bird 119862,frog 119863,horse 119864,cat 119865,frog 119866,airplane 119867,deer 119868,deer 119869,bird 119870,frog 119871,horse 119872,frog 119873,dog 119874,dog 119875,ship 119876,deer 119877,truck 119878,deer 119879,automobile 119880,truck 119881,deer 119882,airplane 119883,bird 119884,dog 119885,truck 119886,horse 119887,deer 119888,frog 119889,deer 119890,dog 119891,horse 119892,airplane 119893,cat 119894,ship 119895,bird 119896,bird 119897,ship 119898,deer 119899,dog 119900,ship 119901,deer 119902,airplane 119903,dog 119904,cat 119905,truck 119906,dog 119907,dog 119908,frog 119909,ship 119910,ship 119911,frog 119912,truck 119913,horse 119914,horse 119915,deer 119916,deer 119917,dog 119918,ship 119919,deer 119920,frog 119921,deer 119922,cat 119923,horse 119924,horse 119925,cat 119926,frog 119927,truck 119928,dog 119929,cat 119930,cat 119931,horse 119932,cat 119933,cat 119934,truck 119935,deer 119936,airplane 119937,deer 119938,bird 119939,ship 119940,truck 119941,cat 119942,deer 119943,cat 119944,dog 119945,airplane 119946,dog 119947,truck 119948,frog 119949,frog 119950,airplane 119951,automobile 119952,airplane 119953,cat 119954,automobile 119955,frog 119956,frog 119957,ship 119958,dog 119959,deer 119960,automobile 119961,dog 119962,dog 119963,airplane 119964,ship 119965,airplane 119966,truck 119967,frog 119968,airplane 119969,deer 119970,cat 119971,automobile 119972,dog 119973,frog 119974,automobile 119975,truck 119976,dog 119977,frog 119978,cat 119979,bird 119980,frog 119981,ship 119982,cat 119983,truck 119984,truck 119985,horse 119986,cat 119987,cat 119988,frog 119989,airplane 119990,dog 119991,bird 119992,deer 119993,bird 119994,dog 119995,ship 119996,deer 119997,deer 119998,bird 119999,truck 120000,deer 120001,automobile 120002,automobile 120003,cat 120004,truck 120005,bird 120006,cat 120007,bird 120008,truck 120009,deer 120010,deer 120011,cat 120012,dog 120013,automobile 120014,airplane 120015,airplane 120016,horse 120017,truck 120018,truck 120019,frog 120020,cat 120021,bird 120022,horse 120023,airplane 120024,dog 120025,deer 120026,automobile 120027,frog 120028,frog 120029,truck 120030,truck 120031,airplane 120032,deer 120033,automobile 120034,cat 120035,truck 120036,cat 120037,horse 120038,bird 120039,deer 120040,truck 120041,frog 120042,dog 120043,cat 120044,deer 120045,ship 120046,cat 120047,airplane 120048,cat 120049,automobile 120050,dog 120051,airplane 120052,bird 120053,dog 120054,truck 120055,dog 120056,deer 120057,truck 120058,frog 120059,truck 120060,cat 120061,deer 120062,airplane 120063,deer 120064,truck 120065,automobile 120066,frog 120067,dog 120068,deer 120069,ship 120070,dog 120071,airplane 120072,deer 120073,cat 120074,airplane 120075,deer 120076,dog 120077,truck 120078,horse 120079,frog 120080,horse 120081,bird 120082,cat 120083,airplane 120084,dog 120085,cat 120086,cat 120087,dog 120088,deer 120089,ship 120090,ship 120091,frog 120092,frog 120093,frog 120094,truck 120095,bird 120096,frog 120097,cat 120098,truck 120099,frog 120100,truck 120101,automobile 120102,bird 120103,ship 120104,bird 120105,airplane 120106,deer 120107,frog 120108,truck 120109,deer 120110,deer 120111,cat 120112,dog 120113,bird 120114,horse 120115,deer 120116,frog 120117,airplane 120118,cat 120119,automobile 120120,deer 120121,automobile 120122,ship 120123,deer 120124,bird 120125,horse 120126,deer 120127,truck 120128,dog 120129,bird 120130,airplane 120131,dog 120132,deer 120133,horse 120134,cat 120135,frog 120136,horse 120137,cat 120138,frog 120139,deer 120140,frog 120141,deer 120142,frog 120143,airplane 120144,airplane 120145,cat 120146,deer 120147,ship 120148,automobile 120149,cat 120150,frog 120151,horse 120152,ship 120153,cat 120154,horse 120155,deer 120156,cat 120157,cat 120158,frog 120159,deer 120160,dog 120161,deer 120162,bird 120163,horse 120164,frog 120165,deer 120166,bird 120167,automobile 120168,deer 120169,cat 120170,dog 120171,cat 120172,cat 120173,truck 120174,truck 120175,deer 120176,frog 120177,dog 120178,automobile 120179,truck 120180,automobile 120181,cat 120182,dog 120183,horse 120184,cat 120185,dog 120186,automobile 120187,dog 120188,dog 120189,frog 120190,automobile 120191,horse 120192,truck 120193,bird 120194,frog 120195,deer 120196,bird 120197,airplane 120198,frog 120199,horse 120200,automobile 120201,bird 120202,automobile 120203,horse 120204,automobile 120205,truck 120206,dog 120207,bird 120208,frog 120209,cat 120210,deer 120211,truck 120212,frog 120213,frog 120214,dog 120215,deer 120216,deer 120217,airplane 120218,dog 120219,bird 120220,truck 120221,frog 120222,ship 120223,truck 120224,frog 120225,airplane 120226,airplane 120227,automobile 120228,cat 120229,horse 120230,bird 120231,truck 120232,bird 120233,automobile 120234,deer 120235,cat 120236,frog 120237,cat 120238,truck 120239,ship 120240,deer 120241,deer 120242,dog 120243,horse 120244,ship 120245,airplane 120246,cat 120247,frog 120248,frog 120249,airplane 120250,ship 120251,airplane 120252,cat 120253,horse 120254,bird 120255,cat 120256,deer 120257,cat 120258,horse 120259,truck 120260,dog 120261,automobile 120262,deer 120263,bird 120264,cat 120265,dog 120266,cat 120267,horse 120268,truck 120269,ship 120270,dog 120271,truck 120272,ship 120273,dog 120274,cat 120275,ship 120276,airplane 120277,truck 120278,truck 120279,airplane 120280,ship 120281,frog 120282,automobile 120283,horse 120284,deer 120285,cat 120286,ship 120287,frog 120288,dog 120289,bird 120290,frog 120291,bird 120292,cat 120293,truck 120294,airplane 120295,dog 120296,horse 120297,cat 120298,frog 120299,airplane 120300,frog 120301,ship 120302,bird 120303,airplane 120304,bird 120305,truck 120306,deer 120307,airplane 120308,truck 120309,cat 120310,truck 120311,truck 120312,cat 120313,horse 120314,airplane 120315,truck 120316,ship 120317,truck 120318,frog 120319,dog 120320,automobile 120321,ship 120322,truck 120323,bird 120324,ship 120325,deer 120326,deer 120327,ship 120328,dog 120329,airplane 120330,frog 120331,deer 120332,airplane 120333,bird 120334,cat 120335,truck 120336,automobile 120337,horse 120338,dog 120339,deer 120340,deer 120341,cat 120342,cat 120343,cat 120344,cat 120345,dog 120346,airplane 120347,automobile 120348,horse 120349,automobile 120350,airplane 120351,deer 120352,cat 120353,frog 120354,frog 120355,automobile 120356,deer 120357,horse 120358,truck 120359,horse 120360,airplane 120361,airplane 120362,horse 120363,deer 120364,horse 120365,dog 120366,frog 120367,cat 120368,cat 120369,ship 120370,horse 120371,cat 120372,automobile 120373,horse 120374,cat 120375,dog 120376,truck 120377,cat 120378,frog 120379,airplane 120380,bird 120381,horse 120382,truck 120383,dog 120384,ship 120385,deer 120386,cat 120387,horse 120388,horse 120389,deer 120390,cat 120391,dog 120392,cat 120393,dog 120394,dog 120395,airplane 120396,dog 120397,airplane 120398,deer 120399,cat 120400,deer 120401,airplane 120402,automobile 120403,deer 120404,truck 120405,cat 120406,truck 120407,ship 120408,bird 120409,frog 120410,automobile 120411,horse 120412,airplane 120413,airplane 120414,ship 120415,horse 120416,cat 120417,airplane 120418,horse 120419,ship 120420,deer 120421,truck 120422,automobile 120423,ship 120424,horse 120425,cat 120426,deer 120427,dog 120428,truck 120429,bird 120430,cat 120431,truck 120432,truck 120433,deer 120434,automobile 120435,automobile 120436,horse 120437,ship 120438,frog 120439,frog 120440,frog 120441,truck 120442,deer 120443,frog 120444,bird 120445,deer 120446,dog 120447,dog 120448,cat 120449,frog 120450,dog 120451,automobile 120452,automobile 120453,frog 120454,ship 120455,truck 120456,cat 120457,deer 120458,cat 120459,cat 120460,dog 120461,horse 120462,dog 120463,cat 120464,horse 120465,dog 120466,horse 120467,airplane 120468,dog 120469,deer 120470,ship 120471,horse 120472,horse 120473,frog 120474,airplane 120475,airplane 120476,frog 120477,horse 120478,cat 120479,bird 120480,dog 120481,automobile 120482,deer 120483,airplane 120484,truck 120485,truck 120486,horse 120487,automobile 120488,cat 120489,bird 120490,airplane 120491,ship 120492,dog 120493,frog 120494,bird 120495,dog 120496,cat 120497,ship 120498,bird 120499,truck 120500,frog 120501,cat 120502,frog 120503,ship 120504,bird 120505,frog 120506,deer 120507,deer 120508,ship 120509,cat 120510,cat 120511,frog 120512,bird 120513,dog 120514,frog 120515,horse 120516,truck 120517,ship 120518,cat 120519,automobile 120520,truck 120521,cat 120522,frog 120523,airplane 120524,truck 120525,horse 120526,dog 120527,dog 120528,bird 120529,frog 120530,truck 120531,deer 120532,frog 120533,airplane 120534,cat 120535,dog 120536,bird 120537,horse 120538,automobile 120539,frog 120540,cat 120541,automobile 120542,automobile 120543,deer 120544,deer 120545,deer 120546,automobile 120547,cat 120548,airplane 120549,cat 120550,deer 120551,deer 120552,airplane 120553,airplane 120554,automobile 120555,automobile 120556,ship 120557,dog 120558,airplane 120559,dog 120560,frog 120561,deer 120562,horse 120563,dog 120564,airplane 120565,airplane 120566,cat 120567,cat 120568,dog 120569,cat 120570,ship 120571,dog 120572,truck 120573,truck 120574,deer 120575,ship 120576,cat 120577,deer 120578,frog 120579,frog 120580,dog 120581,truck 120582,horse 120583,cat 120584,automobile 120585,truck 120586,dog 120587,dog 120588,deer 120589,horse 120590,deer 120591,truck 120592,bird 120593,cat 120594,automobile 120595,horse 120596,dog 120597,deer 120598,ship 120599,frog 120600,bird 120601,dog 120602,bird 120603,dog 120604,cat 120605,airplane 120606,deer 120607,frog 120608,airplane 120609,automobile 120610,horse 120611,airplane 120612,dog 120613,frog 120614,cat 120615,deer 120616,truck 120617,truck 120618,horse 120619,horse 120620,deer 120621,deer 120622,dog 120623,deer 120624,cat 120625,dog 120626,automobile 120627,cat 120628,frog 120629,frog 120630,cat 120631,cat 120632,automobile 120633,cat 120634,cat 120635,ship 120636,truck 120637,automobile 120638,airplane 120639,cat 120640,frog 120641,dog 120642,frog 120643,frog 120644,automobile 120645,dog 120646,truck 120647,automobile 120648,automobile 120649,frog 120650,horse 120651,automobile 120652,deer 120653,deer 120654,deer 120655,bird 120656,horse 120657,truck 120658,horse 120659,cat 120660,dog 120661,frog 120662,automobile 120663,dog 120664,cat 120665,frog 120666,automobile 120667,bird 120668,deer 120669,dog 120670,horse 120671,airplane 120672,dog 120673,horse 120674,cat 120675,ship 120676,ship 120677,truck 120678,cat 120679,deer 120680,deer 120681,bird 120682,truck 120683,bird 120684,truck 120685,dog 120686,ship 120687,cat 120688,airplane 120689,dog 120690,cat 120691,deer 120692,frog 120693,frog 120694,automobile 120695,deer 120696,dog 120697,cat 120698,automobile 120699,truck 120700,truck 120701,airplane 120702,frog 120703,horse 120704,bird 120705,automobile 120706,truck 120707,bird 120708,airplane 120709,ship 120710,horse 120711,truck 120712,truck 120713,frog 120714,horse 120715,dog 120716,airplane 120717,ship 120718,truck 120719,dog 120720,truck 120721,cat 120722,bird 120723,cat 120724,dog 120725,dog 120726,airplane 120727,horse 120728,airplane 120729,dog 120730,truck 120731,dog 120732,deer 120733,cat 120734,deer 120735,airplane 120736,airplane 120737,dog 120738,frog 120739,truck 120740,horse 120741,ship 120742,cat 120743,cat 120744,automobile 120745,bird 120746,truck 120747,dog 120748,horse 120749,cat 120750,frog 120751,horse 120752,dog 120753,truck 120754,deer 120755,truck 120756,deer 120757,frog 120758,airplane 120759,truck 120760,deer 120761,cat 120762,bird 120763,horse 120764,airplane 120765,cat 120766,automobile 120767,dog 120768,dog 120769,deer 120770,horse 120771,airplane 120772,bird 120773,frog 120774,frog 120775,airplane 120776,deer 120777,deer 120778,airplane 120779,horse 120780,ship 120781,cat 120782,truck 120783,truck 120784,airplane 120785,ship 120786,cat 120787,cat 120788,deer 120789,automobile 120790,deer 120791,airplane 120792,ship 120793,airplane 120794,deer 120795,bird 120796,bird 120797,deer 120798,deer 120799,truck 120800,deer 120801,horse 120802,dog 120803,ship 120804,bird 120805,truck 120806,ship 120807,truck 120808,deer 120809,horse 120810,cat 120811,horse 120812,ship 120813,automobile 120814,deer 120815,ship 120816,truck 120817,frog 120818,deer 120819,cat 120820,cat 120821,truck 120822,horse 120823,frog 120824,frog 120825,dog 120826,horse 120827,automobile 120828,automobile 120829,ship 120830,ship 120831,automobile 120832,dog 120833,cat 120834,horse 120835,bird 120836,frog 120837,automobile 120838,ship 120839,bird 120840,automobile 120841,cat 120842,cat 120843,automobile 120844,deer 120845,bird 120846,dog 120847,automobile 120848,airplane 120849,deer 120850,dog 120851,dog 120852,airplane 120853,airplane 120854,dog 120855,horse 120856,frog 120857,bird 120858,frog 120859,horse 120860,cat 120861,truck 120862,airplane 120863,automobile 120864,automobile 120865,cat 120866,dog 120867,frog 120868,ship 120869,ship 120870,dog 120871,airplane 120872,deer 120873,cat 120874,frog 120875,cat 120876,deer 120877,frog 120878,ship 120879,frog 120880,ship 120881,ship 120882,dog 120883,frog 120884,bird 120885,ship 120886,cat 120887,truck 120888,cat 120889,horse 120890,automobile 120891,dog 120892,dog 120893,ship 120894,cat 120895,airplane 120896,airplane 120897,frog 120898,cat 120899,horse 120900,deer 120901,horse 120902,frog 120903,bird 120904,ship 120905,dog 120906,dog 120907,ship 120908,frog 120909,frog 120910,cat 120911,horse 120912,cat 120913,bird 120914,bird 120915,deer 120916,horse 120917,dog 120918,dog 120919,dog 120920,airplane 120921,dog 120922,frog 120923,deer 120924,truck 120925,cat 120926,deer 120927,cat 120928,dog 120929,ship 120930,truck 120931,frog 120932,frog 120933,truck 120934,cat 120935,frog 120936,bird 120937,bird 120938,horse 120939,airplane 120940,automobile 120941,truck 120942,cat 120943,frog 120944,horse 120945,cat 120946,airplane 120947,ship 120948,frog 120949,bird 120950,dog 120951,cat 120952,dog 120953,cat 120954,bird 120955,horse 120956,deer 120957,horse 120958,horse 120959,cat 120960,frog 120961,deer 120962,deer 120963,ship 120964,dog 120965,deer 120966,bird 120967,dog 120968,airplane 120969,bird 120970,bird 120971,ship 120972,frog 120973,airplane 120974,airplane 120975,deer 120976,truck 120977,frog 120978,airplane 120979,frog 120980,ship 120981,frog 120982,deer 120983,ship 120984,frog 120985,ship 120986,automobile 120987,horse 120988,frog 120989,truck 120990,deer 120991,frog 120992,cat 120993,cat 120994,dog 120995,airplane 120996,automobile 120997,deer 120998,bird 120999,frog 121000,truck 121001,frog 121002,dog 121003,frog 121004,horse 121005,cat 121006,dog 121007,truck 121008,ship 121009,horse 121010,automobile 121011,deer 121012,truck 121013,bird 121014,frog 121015,dog 121016,bird 121017,deer 121018,airplane 121019,airplane 121020,horse 121021,truck 121022,ship 121023,airplane 121024,dog 121025,cat 121026,ship 121027,deer 121028,dog 121029,horse 121030,horse 121031,airplane 121032,horse 121033,horse 121034,truck 121035,ship 121036,frog 121037,deer 121038,cat 121039,ship 121040,horse 121041,automobile 121042,bird 121043,frog 121044,dog 121045,airplane 121046,airplane 121047,deer 121048,truck 121049,truck 121050,dog 121051,dog 121052,airplane 121053,dog 121054,airplane 121055,ship 121056,bird 121057,bird 121058,truck 121059,truck 121060,airplane 121061,frog 121062,horse 121063,cat 121064,ship 121065,automobile 121066,horse 121067,bird 121068,truck 121069,deer 121070,frog 121071,deer 121072,truck 121073,frog 121074,frog 121075,deer 121076,airplane 121077,frog 121078,frog 121079,frog 121080,horse 121081,cat 121082,horse 121083,airplane 121084,dog 121085,cat 121086,bird 121087,bird 121088,deer 121089,cat 121090,horse 121091,dog 121092,bird 121093,bird 121094,ship 121095,automobile 121096,deer 121097,ship 121098,horse 121099,frog 121100,cat 121101,ship 121102,bird 121103,airplane 121104,ship 121105,automobile 121106,automobile 121107,horse 121108,truck 121109,frog 121110,frog 121111,cat 121112,horse 121113,deer 121114,airplane 121115,airplane 121116,dog 121117,truck 121118,deer 121119,truck 121120,truck 121121,frog 121122,automobile 121123,truck 121124,airplane 121125,truck 121126,truck 121127,ship 121128,horse 121129,bird 121130,horse 121131,horse 121132,frog 121133,cat 121134,truck 121135,horse 121136,airplane 121137,airplane 121138,ship 121139,frog 121140,horse 121141,truck 121142,deer 121143,cat 121144,cat 121145,horse 121146,dog 121147,truck 121148,frog 121149,dog 121150,ship 121151,cat 121152,truck 121153,airplane 121154,dog 121155,frog 121156,dog 121157,truck 121158,airplane 121159,bird 121160,truck 121161,airplane 121162,ship 121163,ship 121164,horse 121165,bird 121166,cat 121167,truck 121168,dog 121169,dog 121170,airplane 121171,automobile 121172,truck 121173,frog 121174,frog 121175,ship 121176,deer 121177,deer 121178,ship 121179,bird 121180,deer 121181,deer 121182,deer 121183,bird 121184,truck 121185,bird 121186,truck 121187,cat 121188,frog 121189,dog 121190,dog 121191,horse 121192,bird 121193,frog 121194,deer 121195,dog 121196,truck 121197,dog 121198,automobile 121199,frog 121200,cat 121201,truck 121202,deer 121203,bird 121204,deer 121205,deer 121206,truck 121207,dog 121208,ship 121209,deer 121210,dog 121211,dog 121212,deer 121213,ship 121214,truck 121215,deer 121216,dog 121217,cat 121218,bird 121219,ship 121220,bird 121221,dog 121222,horse 121223,truck 121224,airplane 121225,airplane 121226,frog 121227,deer 121228,ship 121229,cat 121230,bird 121231,cat 121232,automobile 121233,airplane 121234,cat 121235,airplane 121236,bird 121237,bird 121238,airplane 121239,cat 121240,frog 121241,automobile 121242,deer 121243,dog 121244,horse 121245,cat 121246,truck 121247,frog 121248,frog 121249,cat 121250,horse 121251,airplane 121252,truck 121253,ship 121254,frog 121255,deer 121256,truck 121257,deer 121258,deer 121259,truck 121260,dog 121261,bird 121262,airplane 121263,truck 121264,automobile 121265,cat 121266,frog 121267,cat 121268,cat 121269,automobile 121270,horse 121271,truck 121272,deer 121273,truck 121274,truck 121275,horse 121276,ship 121277,horse 121278,deer 121279,cat 121280,airplane 121281,ship 121282,ship 121283,cat 121284,deer 121285,airplane 121286,frog 121287,dog 121288,deer 121289,ship 121290,airplane 121291,cat 121292,frog 121293,dog 121294,ship 121295,airplane 121296,bird 121297,deer 121298,deer 121299,deer 121300,airplane 121301,airplane 121302,cat 121303,automobile 121304,cat 121305,cat 121306,deer 121307,dog 121308,truck 121309,frog 121310,truck 121311,horse 121312,deer 121313,frog 121314,truck 121315,dog 121316,automobile 121317,ship 121318,cat 121319,cat 121320,ship 121321,cat 121322,automobile 121323,dog 121324,deer 121325,cat 121326,truck 121327,dog 121328,frog 121329,ship 121330,airplane 121331,truck 121332,frog 121333,truck 121334,dog 121335,frog 121336,ship 121337,bird 121338,automobile 121339,ship 121340,frog 121341,cat 121342,bird 121343,automobile 121344,cat 121345,truck 121346,deer 121347,dog 121348,bird 121349,cat 121350,deer 121351,horse 121352,cat 121353,truck 121354,automobile 121355,dog 121356,automobile 121357,horse 121358,airplane 121359,horse 121360,ship 121361,truck 121362,frog 121363,frog 121364,cat 121365,deer 121366,deer 121367,truck 121368,cat 121369,dog 121370,bird 121371,cat 121372,horse 121373,deer 121374,cat 121375,truck 121376,truck 121377,airplane 121378,frog 121379,dog 121380,cat 121381,automobile 121382,truck 121383,frog 121384,cat 121385,deer 121386,cat 121387,deer 121388,ship 121389,dog 121390,cat 121391,bird 121392,frog 121393,frog 121394,deer 121395,horse 121396,airplane 121397,airplane 121398,truck 121399,horse 121400,frog 121401,ship 121402,deer 121403,deer 121404,bird 121405,frog 121406,bird 121407,deer 121408,ship 121409,cat 121410,bird 121411,dog 121412,deer 121413,frog 121414,truck 121415,frog 121416,horse 121417,airplane 121418,deer 121419,airplane 121420,frog 121421,airplane 121422,ship 121423,ship 121424,cat 121425,horse 121426,horse 121427,bird 121428,dog 121429,deer 121430,deer 121431,frog 121432,ship 121433,frog 121434,horse 121435,bird 121436,horse 121437,truck 121438,ship 121439,ship 121440,bird 121441,truck 121442,dog 121443,ship 121444,horse 121445,frog 121446,cat 121447,frog 121448,horse 121449,deer 121450,automobile 121451,dog 121452,frog 121453,horse 121454,cat 121455,frog 121456,dog 121457,dog 121458,cat 121459,deer 121460,deer 121461,bird 121462,frog 121463,frog 121464,cat 121465,cat 121466,horse 121467,cat 121468,bird 121469,truck 121470,horse 121471,frog 121472,cat 121473,ship 121474,bird 121475,bird 121476,deer 121477,horse 121478,frog 121479,truck 121480,deer 121481,bird 121482,horse 121483,dog 121484,deer 121485,cat 121486,truck 121487,truck 121488,horse 121489,airplane 121490,ship 121491,horse 121492,horse 121493,airplane 121494,cat 121495,dog 121496,dog 121497,automobile 121498,bird 121499,cat 121500,bird 121501,frog 121502,dog 121503,ship 121504,horse 121505,truck 121506,ship 121507,bird 121508,cat 121509,horse 121510,deer 121511,cat 121512,deer 121513,horse 121514,bird 121515,truck 121516,deer 121517,automobile 121518,ship 121519,deer 121520,airplane 121521,frog 121522,deer 121523,horse 121524,horse 121525,bird 121526,bird 121527,frog 121528,deer 121529,deer 121530,ship 121531,bird 121532,automobile 121533,truck 121534,frog 121535,bird 121536,ship 121537,cat 121538,horse 121539,truck 121540,cat 121541,cat 121542,cat 121543,frog 121544,truck 121545,truck 121546,airplane 121547,airplane 121548,cat 121549,dog 121550,deer 121551,ship 121552,deer 121553,bird 121554,frog 121555,cat 121556,horse 121557,frog 121558,frog 121559,cat 121560,ship 121561,dog 121562,ship 121563,truck 121564,truck 121565,truck 121566,deer 121567,deer 121568,airplane 121569,horse 121570,frog 121571,cat 121572,bird 121573,cat 121574,dog 121575,horse 121576,deer 121577,horse 121578,dog 121579,airplane 121580,automobile 121581,dog 121582,frog 121583,airplane 121584,deer 121585,frog 121586,bird 121587,deer 121588,horse 121589,bird 121590,airplane 121591,dog 121592,horse 121593,cat 121594,horse 121595,cat 121596,bird 121597,dog 121598,ship 121599,airplane 121600,frog 121601,horse 121602,airplane 121603,cat 121604,cat 121605,truck 121606,frog 121607,cat 121608,deer 121609,ship 121610,cat 121611,frog 121612,dog 121613,dog 121614,automobile 121615,truck 121616,bird 121617,deer 121618,horse 121619,airplane 121620,dog 121621,automobile 121622,ship 121623,automobile 121624,horse 121625,ship 121626,airplane 121627,truck 121628,airplane 121629,frog 121630,deer 121631,cat 121632,frog 121633,ship 121634,deer 121635,automobile 121636,deer 121637,truck 121638,cat 121639,airplane 121640,airplane 121641,truck 121642,airplane 121643,bird 121644,cat 121645,frog 121646,ship 121647,frog 121648,truck 121649,cat 121650,cat 121651,airplane 121652,automobile 121653,frog 121654,horse 121655,truck 121656,automobile 121657,deer 121658,dog 121659,frog 121660,automobile 121661,automobile 121662,bird 121663,automobile 121664,deer 121665,truck 121666,deer 121667,airplane 121668,dog 121669,frog 121670,bird 121671,cat 121672,airplane 121673,truck 121674,truck 121675,bird 121676,bird 121677,dog 121678,automobile 121679,ship 121680,bird 121681,airplane 121682,cat 121683,cat 121684,bird 121685,frog 121686,truck 121687,horse 121688,horse 121689,dog 121690,ship 121691,cat 121692,truck 121693,cat 121694,cat 121695,bird 121696,automobile 121697,truck 121698,dog 121699,ship 121700,automobile 121701,dog 121702,deer 121703,truck 121704,horse 121705,horse 121706,deer 121707,cat 121708,frog 121709,ship 121710,airplane 121711,truck 121712,bird 121713,ship 121714,horse 121715,horse 121716,deer 121717,automobile 121718,deer 121719,deer 121720,automobile 121721,cat 121722,cat 121723,deer 121724,frog 121725,cat 121726,deer 121727,horse 121728,cat 121729,truck 121730,cat 121731,deer 121732,frog 121733,deer 121734,deer 121735,frog 121736,airplane 121737,cat 121738,bird 121739,horse 121740,truck 121741,frog 121742,airplane 121743,truck 121744,truck 121745,dog 121746,cat 121747,frog 121748,dog 121749,frog 121750,cat 121751,horse 121752,automobile 121753,truck 121754,horse 121755,automobile 121756,dog 121757,dog 121758,bird 121759,ship 121760,cat 121761,cat 121762,automobile 121763,horse 121764,cat 121765,cat 121766,horse 121767,deer 121768,horse 121769,horse 121770,automobile 121771,cat 121772,dog 121773,deer 121774,dog 121775,dog 121776,cat 121777,deer 121778,truck 121779,horse 121780,cat 121781,ship 121782,bird 121783,truck 121784,automobile 121785,cat 121786,dog 121787,cat 121788,airplane 121789,ship 121790,deer 121791,dog 121792,airplane 121793,truck 121794,truck 121795,truck 121796,frog 121797,horse 121798,horse 121799,frog 121800,horse 121801,airplane 121802,truck 121803,cat 121804,dog 121805,horse 121806,deer 121807,truck 121808,bird 121809,bird 121810,bird 121811,horse 121812,airplane 121813,truck 121814,ship 121815,airplane 121816,deer 121817,cat 121818,airplane 121819,dog 121820,automobile 121821,airplane 121822,truck 121823,deer 121824,automobile 121825,cat 121826,deer 121827,cat 121828,horse 121829,truck 121830,airplane 121831,deer 121832,bird 121833,airplane 121834,truck 121835,frog 121836,horse 121837,cat 121838,bird 121839,deer 121840,ship 121841,dog 121842,automobile 121843,horse 121844,deer 121845,cat 121846,frog 121847,dog 121848,airplane 121849,bird 121850,truck 121851,dog 121852,bird 121853,ship 121854,bird 121855,automobile 121856,dog 121857,airplane 121858,airplane 121859,dog 121860,deer 121861,ship 121862,bird 121863,dog 121864,deer 121865,dog 121866,deer 121867,frog 121868,cat 121869,cat 121870,airplane 121871,bird 121872,truck 121873,horse 121874,cat 121875,deer 121876,cat 121877,truck 121878,deer 121879,cat 121880,dog 121881,horse 121882,horse 121883,dog 121884,dog 121885,truck 121886,bird 121887,frog 121888,bird 121889,deer 121890,truck 121891,truck 121892,bird 121893,deer 121894,bird 121895,deer 121896,dog 121897,truck 121898,dog 121899,deer 121900,deer 121901,cat 121902,dog 121903,dog 121904,deer 121905,dog 121906,cat 121907,horse 121908,cat 121909,deer 121910,airplane 121911,airplane 121912,bird 121913,dog 121914,truck 121915,ship 121916,deer 121917,deer 121918,ship 121919,deer 121920,airplane 121921,truck 121922,deer 121923,cat 121924,truck 121925,dog 121926,automobile 121927,bird 121928,ship 121929,truck 121930,bird 121931,cat 121932,cat 121933,dog 121934,cat 121935,ship 121936,cat 121937,frog 121938,airplane 121939,cat 121940,frog 121941,deer 121942,dog 121943,dog 121944,truck 121945,truck 121946,deer 121947,automobile 121948,bird 121949,frog 121950,ship 121951,dog 121952,horse 121953,cat 121954,deer 121955,frog 121956,cat 121957,truck 121958,dog 121959,deer 121960,truck 121961,deer 121962,horse 121963,truck 121964,deer 121965,truck 121966,cat 121967,truck 121968,automobile 121969,dog 121970,horse 121971,bird 121972,truck 121973,bird 121974,horse 121975,truck 121976,horse 121977,airplane 121978,dog 121979,cat 121980,cat 121981,deer 121982,ship 121983,automobile 121984,frog 121985,deer 121986,automobile 121987,dog 121988,airplane 121989,cat 121990,truck 121991,dog 121992,deer 121993,horse 121994,frog 121995,bird 121996,automobile 121997,frog 121998,cat 121999,dog 122000,cat 122001,truck 122002,truck 122003,airplane 122004,dog 122005,cat 122006,automobile 122007,cat 122008,frog 122009,automobile 122010,airplane 122011,airplane 122012,horse 122013,automobile 122014,horse 122015,automobile 122016,airplane 122017,bird 122018,deer 122019,deer 122020,frog 122021,frog 122022,cat 122023,bird 122024,ship 122025,frog 122026,frog 122027,automobile 122028,dog 122029,cat 122030,cat 122031,ship 122032,deer 122033,frog 122034,cat 122035,frog 122036,dog 122037,bird 122038,frog 122039,automobile 122040,horse 122041,ship 122042,deer 122043,deer 122044,bird 122045,cat 122046,frog 122047,cat 122048,bird 122049,deer 122050,deer 122051,bird 122052,cat 122053,cat 122054,dog 122055,dog 122056,ship 122057,airplane 122058,dog 122059,dog 122060,truck 122061,airplane 122062,deer 122063,airplane 122064,horse 122065,ship 122066,airplane 122067,deer 122068,frog 122069,automobile 122070,frog 122071,horse 122072,dog 122073,deer 122074,dog 122075,deer 122076,airplane 122077,truck 122078,frog 122079,cat 122080,cat 122081,cat 122082,cat 122083,deer 122084,airplane 122085,dog 122086,truck 122087,dog 122088,dog 122089,truck 122090,cat 122091,truck 122092,dog 122093,cat 122094,airplane 122095,truck 122096,automobile 122097,cat 122098,horse 122099,deer 122100,airplane 122101,dog 122102,cat 122103,cat 122104,frog 122105,deer 122106,deer 122107,airplane 122108,cat 122109,horse 122110,horse 122111,bird 122112,ship 122113,ship 122114,dog 122115,cat 122116,frog 122117,automobile 122118,deer 122119,horse 122120,deer 122121,deer 122122,ship 122123,deer 122124,automobile 122125,cat 122126,automobile 122127,truck 122128,airplane 122129,automobile 122130,truck 122131,airplane 122132,deer 122133,deer 122134,horse 122135,bird 122136,horse 122137,ship 122138,ship 122139,cat 122140,dog 122141,automobile 122142,ship 122143,ship 122144,automobile 122145,bird 122146,airplane 122147,ship 122148,dog 122149,cat 122150,automobile 122151,airplane 122152,truck 122153,frog 122154,ship 122155,bird 122156,truck 122157,bird 122158,cat 122159,frog 122160,bird 122161,horse 122162,horse 122163,deer 122164,cat 122165,dog 122166,frog 122167,bird 122168,frog 122169,deer 122170,bird 122171,deer 122172,dog 122173,ship 122174,horse 122175,bird 122176,truck 122177,dog 122178,truck 122179,bird 122180,automobile 122181,ship 122182,dog 122183,deer 122184,deer 122185,frog 122186,horse 122187,dog 122188,horse 122189,airplane 122190,frog 122191,deer 122192,bird 122193,frog 122194,horse 122195,airplane 122196,frog 122197,airplane 122198,bird 122199,cat 122200,bird 122201,cat 122202,truck 122203,dog 122204,truck 122205,cat 122206,frog 122207,dog 122208,dog 122209,deer 122210,automobile 122211,airplane 122212,deer 122213,frog 122214,truck 122215,dog 122216,dog 122217,airplane 122218,dog 122219,deer 122220,frog 122221,deer 122222,automobile 122223,truck 122224,truck 122225,automobile 122226,horse 122227,airplane 122228,automobile 122229,horse 122230,ship 122231,airplane 122232,dog 122233,horse 122234,airplane 122235,frog 122236,automobile 122237,deer 122238,frog 122239,deer 122240,truck 122241,airplane 122242,dog 122243,horse 122244,bird 122245,frog 122246,airplane 122247,automobile 122248,truck 122249,bird 122250,deer 122251,dog 122252,frog 122253,airplane 122254,horse 122255,frog 122256,horse 122257,cat 122258,horse 122259,cat 122260,airplane 122261,dog 122262,frog 122263,dog 122264,dog 122265,dog 122266,automobile 122267,bird 122268,truck 122269,bird 122270,dog 122271,truck 122272,deer 122273,frog 122274,frog 122275,automobile 122276,frog 122277,airplane 122278,cat 122279,horse 122280,truck 122281,ship 122282,frog 122283,dog 122284,truck 122285,dog 122286,deer 122287,dog 122288,automobile 122289,cat 122290,frog 122291,dog 122292,horse 122293,deer 122294,frog 122295,deer 122296,automobile 122297,bird 122298,bird 122299,bird 122300,cat 122301,deer 122302,frog 122303,deer 122304,frog 122305,frog 122306,dog 122307,frog 122308,dog 122309,truck 122310,deer 122311,deer 122312,cat 122313,deer 122314,cat 122315,frog 122316,dog 122317,airplane 122318,automobile 122319,deer 122320,horse 122321,deer 122322,dog 122323,deer 122324,automobile 122325,deer 122326,dog 122327,ship 122328,frog 122329,horse 122330,cat 122331,bird 122332,bird 122333,truck 122334,deer 122335,horse 122336,dog 122337,frog 122338,cat 122339,cat 122340,ship 122341,deer 122342,deer 122343,airplane 122344,frog 122345,deer 122346,truck 122347,frog 122348,cat 122349,frog 122350,ship 122351,truck 122352,ship 122353,cat 122354,dog 122355,ship 122356,dog 122357,airplane 122358,airplane 122359,truck 122360,deer 122361,deer 122362,dog 122363,airplane 122364,cat 122365,horse 122366,frog 122367,automobile 122368,airplane 122369,airplane 122370,cat 122371,dog 122372,bird 122373,truck 122374,frog 122375,dog 122376,airplane 122377,horse 122378,airplane 122379,bird 122380,truck 122381,bird 122382,cat 122383,cat 122384,ship 122385,deer 122386,truck 122387,cat 122388,automobile 122389,deer 122390,deer 122391,cat 122392,horse 122393,cat 122394,bird 122395,airplane 122396,cat 122397,dog 122398,airplane 122399,horse 122400,horse 122401,horse 122402,cat 122403,bird 122404,deer 122405,deer 122406,frog 122407,horse 122408,deer 122409,deer 122410,automobile 122411,horse 122412,deer 122413,automobile 122414,deer 122415,automobile 122416,deer 122417,bird 122418,cat 122419,dog 122420,dog 122421,horse 122422,frog 122423,dog 122424,cat 122425,truck 122426,cat 122427,ship 122428,frog 122429,ship 122430,ship 122431,horse 122432,bird 122433,frog 122434,dog 122435,airplane 122436,horse 122437,bird 122438,ship 122439,deer 122440,frog 122441,deer 122442,bird 122443,cat 122444,automobile 122445,cat 122446,cat 122447,airplane 122448,truck 122449,frog 122450,truck 122451,airplane 122452,truck 122453,frog 122454,deer 122455,frog 122456,cat 122457,dog 122458,bird 122459,dog 122460,ship 122461,dog 122462,airplane 122463,bird 122464,airplane 122465,ship 122466,deer 122467,frog 122468,dog 122469,airplane 122470,airplane 122471,bird 122472,cat 122473,frog 122474,truck 122475,truck 122476,horse 122477,ship 122478,dog 122479,airplane 122480,deer 122481,airplane 122482,ship 122483,bird 122484,frog 122485,horse 122486,frog 122487,deer 122488,dog 122489,dog 122490,bird 122491,bird 122492,deer 122493,dog 122494,airplane 122495,dog 122496,dog 122497,truck 122498,truck 122499,bird 122500,airplane 122501,ship 122502,truck 122503,frog 122504,deer 122505,horse 122506,bird 122507,airplane 122508,deer 122509,dog 122510,cat 122511,cat 122512,frog 122513,truck 122514,deer 122515,deer 122516,cat 122517,airplane 122518,bird 122519,deer 122520,bird 122521,bird 122522,bird 122523,ship 122524,deer 122525,truck 122526,deer 122527,airplane 122528,truck 122529,truck 122530,frog 122531,cat 122532,frog 122533,dog 122534,cat 122535,airplane 122536,cat 122537,automobile 122538,truck 122539,truck 122540,horse 122541,airplane 122542,cat 122543,ship 122544,cat 122545,airplane 122546,bird 122547,horse 122548,deer 122549,truck 122550,horse 122551,deer 122552,horse 122553,frog 122554,automobile 122555,automobile 122556,horse 122557,deer 122558,automobile 122559,cat 122560,airplane 122561,truck 122562,truck 122563,bird 122564,automobile 122565,truck 122566,ship 122567,horse 122568,airplane 122569,airplane 122570,truck 122571,cat 122572,ship 122573,cat 122574,ship 122575,frog 122576,bird 122577,airplane 122578,airplane 122579,airplane 122580,deer 122581,truck 122582,dog 122583,dog 122584,bird 122585,horse 122586,frog 122587,frog 122588,truck 122589,airplane 122590,ship 122591,cat 122592,dog 122593,frog 122594,cat 122595,ship 122596,dog 122597,truck 122598,horse 122599,cat 122600,truck 122601,horse 122602,deer 122603,bird 122604,truck 122605,truck 122606,dog 122607,deer 122608,truck 122609,horse 122610,cat 122611,horse 122612,airplane 122613,frog 122614,ship 122615,airplane 122616,horse 122617,ship 122618,truck 122619,deer 122620,airplane 122621,deer 122622,frog 122623,frog 122624,dog 122625,horse 122626,horse 122627,truck 122628,cat 122629,deer 122630,deer 122631,horse 122632,dog 122633,dog 122634,deer 122635,ship 122636,horse 122637,horse 122638,truck 122639,automobile 122640,dog 122641,cat 122642,dog 122643,truck 122644,bird 122645,dog 122646,airplane 122647,horse 122648,bird 122649,truck 122650,horse 122651,automobile 122652,cat 122653,bird 122654,airplane 122655,frog 122656,horse 122657,cat 122658,truck 122659,deer 122660,deer 122661,cat 122662,truck 122663,automobile 122664,horse 122665,ship 122666,horse 122667,cat 122668,deer 122669,truck 122670,dog 122671,horse 122672,horse 122673,horse 122674,airplane 122675,dog 122676,truck 122677,horse 122678,deer 122679,bird 122680,horse 122681,frog 122682,airplane 122683,truck 122684,bird 122685,deer 122686,dog 122687,dog 122688,automobile 122689,deer 122690,cat 122691,airplane 122692,cat 122693,deer 122694,ship 122695,dog 122696,automobile 122697,automobile 122698,truck 122699,dog 122700,cat 122701,ship 122702,automobile 122703,cat 122704,cat 122705,cat 122706,frog 122707,horse 122708,frog 122709,cat 122710,ship 122711,deer 122712,dog 122713,truck 122714,automobile 122715,frog 122716,deer 122717,dog 122718,bird 122719,frog 122720,automobile 122721,bird 122722,airplane 122723,cat 122724,dog 122725,bird 122726,bird 122727,ship 122728,bird 122729,deer 122730,deer 122731,truck 122732,dog 122733,frog 122734,automobile 122735,horse 122736,horse 122737,frog 122738,cat 122739,frog 122740,truck 122741,horse 122742,cat 122743,frog 122744,airplane 122745,automobile 122746,bird 122747,airplane 122748,deer 122749,deer 122750,frog 122751,bird 122752,dog 122753,horse 122754,horse 122755,deer 122756,ship 122757,dog 122758,bird 122759,deer 122760,bird 122761,dog 122762,horse 122763,truck 122764,dog 122765,deer 122766,deer 122767,frog 122768,truck 122769,frog 122770,cat 122771,horse 122772,deer 122773,dog 122774,dog 122775,horse 122776,dog 122777,frog 122778,truck 122779,ship 122780,bird 122781,cat 122782,cat 122783,ship 122784,frog 122785,dog 122786,frog 122787,bird 122788,ship 122789,ship 122790,truck 122791,automobile 122792,automobile 122793,deer 122794,bird 122795,airplane 122796,truck 122797,frog 122798,cat 122799,bird 122800,deer 122801,truck 122802,horse 122803,deer 122804,automobile 122805,horse 122806,truck 122807,cat 122808,deer 122809,deer 122810,bird 122811,automobile 122812,cat 122813,airplane 122814,horse 122815,deer 122816,dog 122817,bird 122818,frog 122819,deer 122820,ship 122821,deer 122822,airplane 122823,bird 122824,bird 122825,cat 122826,cat 122827,deer 122828,airplane 122829,airplane 122830,bird 122831,ship 122832,frog 122833,truck 122834,horse 122835,frog 122836,automobile 122837,truck 122838,airplane 122839,airplane 122840,frog 122841,bird 122842,truck 122843,bird 122844,airplane 122845,cat 122846,cat 122847,frog 122848,horse 122849,ship 122850,dog 122851,bird 122852,cat 122853,frog 122854,deer 122855,airplane 122856,automobile 122857,ship 122858,horse 122859,dog 122860,cat 122861,cat 122862,bird 122863,airplane 122864,truck 122865,horse 122866,ship 122867,truck 122868,deer 122869,frog 122870,truck 122871,bird 122872,deer 122873,truck 122874,frog 122875,frog 122876,frog 122877,cat 122878,ship 122879,automobile 122880,frog 122881,cat 122882,truck 122883,automobile 122884,dog 122885,dog 122886,airplane 122887,airplane 122888,airplane 122889,cat 122890,bird 122891,airplane 122892,cat 122893,bird 122894,truck 122895,automobile 122896,dog 122897,deer 122898,cat 122899,horse 122900,dog 122901,ship 122902,frog 122903,dog 122904,frog 122905,ship 122906,deer 122907,truck 122908,cat 122909,deer 122910,frog 122911,truck 122912,cat 122913,ship 122914,automobile 122915,cat 122916,cat 122917,bird 122918,truck 122919,truck 122920,bird 122921,cat 122922,horse 122923,frog 122924,truck 122925,deer 122926,deer 122927,horse 122928,bird 122929,frog 122930,ship 122931,cat 122932,truck 122933,dog 122934,horse 122935,ship 122936,cat 122937,truck 122938,automobile 122939,truck 122940,ship 122941,ship 122942,automobile 122943,frog 122944,horse 122945,cat 122946,deer 122947,frog 122948,frog 122949,truck 122950,airplane 122951,deer 122952,automobile 122953,deer 122954,bird 122955,airplane 122956,deer 122957,horse 122958,horse 122959,dog 122960,deer 122961,truck 122962,ship 122963,deer 122964,frog 122965,automobile 122966,ship 122967,frog 122968,automobile 122969,bird 122970,deer 122971,cat 122972,automobile 122973,bird 122974,automobile 122975,truck 122976,ship 122977,cat 122978,frog 122979,frog 122980,bird 122981,cat 122982,bird 122983,automobile 122984,dog 122985,bird 122986,deer 122987,bird 122988,frog 122989,deer 122990,airplane 122991,frog 122992,cat 122993,bird 122994,deer 122995,deer 122996,ship 122997,frog 122998,cat 122999,bird 123000,airplane 123001,horse 123002,dog 123003,horse 123004,automobile 123005,deer 123006,bird 123007,cat 123008,automobile 123009,deer 123010,dog 123011,bird 123012,bird 123013,cat 123014,cat 123015,horse 123016,airplane 123017,ship 123018,cat 123019,horse 123020,truck 123021,horse 123022,deer 123023,automobile 123024,cat 123025,frog 123026,horse 123027,frog 123028,bird 123029,horse 123030,ship 123031,truck 123032,airplane 123033,truck 123034,cat 123035,cat 123036,deer 123037,frog 123038,frog 123039,frog 123040,truck 123041,horse 123042,airplane 123043,cat 123044,bird 123045,dog 123046,cat 123047,dog 123048,cat 123049,dog 123050,deer 123051,dog 123052,automobile 123053,cat 123054,bird 123055,ship 123056,automobile 123057,dog 123058,truck 123059,bird 123060,truck 123061,frog 123062,dog 123063,cat 123064,airplane 123065,truck 123066,ship 123067,deer 123068,frog 123069,bird 123070,dog 123071,cat 123072,bird 123073,dog 123074,deer 123075,frog 123076,deer 123077,deer 123078,dog 123079,horse 123080,horse 123081,cat 123082,airplane 123083,truck 123084,automobile 123085,frog 123086,airplane 123087,cat 123088,truck 123089,airplane 123090,ship 123091,automobile 123092,truck 123093,ship 123094,airplane 123095,bird 123096,ship 123097,airplane 123098,ship 123099,horse 123100,ship 123101,cat 123102,horse 123103,dog 123104,horse 123105,cat 123106,deer 123107,frog 123108,deer 123109,dog 123110,bird 123111,truck 123112,bird 123113,automobile 123114,cat 123115,ship 123116,cat 123117,truck 123118,cat 123119,bird 123120,automobile 123121,truck 123122,cat 123123,truck 123124,ship 123125,truck 123126,deer 123127,dog 123128,automobile 123129,horse 123130,cat 123131,cat 123132,dog 123133,deer 123134,cat 123135,automobile 123136,truck 123137,airplane 123138,airplane 123139,dog 123140,automobile 123141,truck 123142,frog 123143,dog 123144,automobile 123145,ship 123146,truck 123147,truck 123148,airplane 123149,frog 123150,horse 123151,ship 123152,airplane 123153,truck 123154,truck 123155,dog 123156,deer 123157,bird 123158,deer 123159,horse 123160,airplane 123161,deer 123162,truck 123163,cat 123164,horse 123165,horse 123166,ship 123167,bird 123168,horse 123169,deer 123170,deer 123171,dog 123172,horse 123173,dog 123174,dog 123175,bird 123176,automobile 123177,airplane 123178,airplane 123179,cat 123180,dog 123181,frog 123182,ship 123183,ship 123184,deer 123185,automobile 123186,horse 123187,airplane 123188,automobile 123189,deer 123190,truck 123191,horse 123192,dog 123193,cat 123194,horse 123195,horse 123196,dog 123197,deer 123198,automobile 123199,bird 123200,automobile 123201,frog 123202,deer 123203,truck 123204,bird 123205,airplane 123206,ship 123207,bird 123208,horse 123209,deer 123210,dog 123211,frog 123212,bird 123213,cat 123214,cat 123215,cat 123216,dog 123217,bird 123218,ship 123219,ship 123220,dog 123221,bird 123222,bird 123223,cat 123224,automobile 123225,cat 123226,ship 123227,deer 123228,cat 123229,deer 123230,truck 123231,ship 123232,deer 123233,cat 123234,dog 123235,airplane 123236,deer 123237,truck 123238,horse 123239,truck 123240,deer 123241,bird 123242,cat 123243,deer 123244,airplane 123245,cat 123246,bird 123247,automobile 123248,truck 123249,cat 123250,dog 123251,deer 123252,cat 123253,frog 123254,deer 123255,dog 123256,bird 123257,automobile 123258,automobile 123259,frog 123260,bird 123261,ship 123262,ship 123263,airplane 123264,deer 123265,deer 123266,dog 123267,frog 123268,frog 123269,automobile 123270,automobile 123271,horse 123272,frog 123273,ship 123274,truck 123275,deer 123276,truck 123277,cat 123278,automobile 123279,airplane 123280,cat 123281,deer 123282,airplane 123283,airplane 123284,dog 123285,automobile 123286,dog 123287,frog 123288,horse 123289,dog 123290,airplane 123291,horse 123292,dog 123293,dog 123294,deer 123295,cat 123296,automobile 123297,deer 123298,truck 123299,automobile 123300,ship 123301,ship 123302,deer 123303,horse 123304,bird 123305,bird 123306,cat 123307,truck 123308,bird 123309,cat 123310,truck 123311,dog 123312,truck 123313,airplane 123314,bird 123315,deer 123316,deer 123317,cat 123318,airplane 123319,automobile 123320,deer 123321,frog 123322,bird 123323,cat 123324,truck 123325,bird 123326,truck 123327,frog 123328,bird 123329,truck 123330,frog 123331,truck 123332,cat 123333,cat 123334,frog 123335,truck 123336,ship 123337,ship 123338,airplane 123339,dog 123340,frog 123341,ship 123342,frog 123343,truck 123344,horse 123345,truck 123346,frog 123347,airplane 123348,horse 123349,bird 123350,deer 123351,horse 123352,automobile 123353,horse 123354,cat 123355,ship 123356,airplane 123357,deer 123358,horse 123359,horse 123360,deer 123361,bird 123362,deer 123363,deer 123364,automobile 123365,frog 123366,truck 123367,airplane 123368,horse 123369,cat 123370,dog 123371,automobile 123372,automobile 123373,cat 123374,dog 123375,airplane 123376,truck 123377,ship 123378,dog 123379,automobile 123380,horse 123381,cat 123382,frog 123383,airplane 123384,deer 123385,deer 123386,deer 123387,airplane 123388,ship 123389,deer 123390,airplane 123391,cat 123392,deer 123393,automobile 123394,cat 123395,automobile 123396,deer 123397,ship 123398,dog 123399,airplane 123400,deer 123401,deer 123402,bird 123403,airplane 123404,dog 123405,dog 123406,truck 123407,truck 123408,airplane 123409,truck 123410,ship 123411,frog 123412,bird 123413,bird 123414,dog 123415,dog 123416,bird 123417,cat 123418,deer 123419,truck 123420,automobile 123421,truck 123422,cat 123423,dog 123424,airplane 123425,airplane 123426,cat 123427,cat 123428,frog 123429,cat 123430,ship 123431,dog 123432,airplane 123433,dog 123434,cat 123435,deer 123436,dog 123437,airplane 123438,cat 123439,automobile 123440,bird 123441,frog 123442,horse 123443,bird 123444,truck 123445,deer 123446,truck 123447,frog 123448,frog 123449,automobile 123450,bird 123451,deer 123452,frog 123453,ship 123454,frog 123455,horse 123456,airplane 123457,horse 123458,horse 123459,airplane 123460,frog 123461,horse 123462,automobile 123463,cat 123464,automobile 123465,automobile 123466,deer 123467,truck 123468,frog 123469,horse 123470,deer 123471,frog 123472,truck 123473,horse 123474,horse 123475,bird 123476,truck 123477,ship 123478,cat 123479,cat 123480,truck 123481,truck 123482,bird 123483,frog 123484,cat 123485,horse 123486,deer 123487,deer 123488,automobile 123489,automobile 123490,dog 123491,dog 123492,bird 123493,airplane 123494,deer 123495,ship 123496,dog 123497,frog 123498,deer 123499,bird 123500,cat 123501,frog 123502,deer 123503,truck 123504,dog 123505,automobile 123506,bird 123507,truck 123508,automobile 123509,ship 123510,ship 123511,truck 123512,deer 123513,dog 123514,automobile 123515,ship 123516,truck 123517,frog 123518,truck 123519,ship 123520,automobile 123521,deer 123522,deer 123523,deer 123524,frog 123525,dog 123526,deer 123527,dog 123528,automobile 123529,frog 123530,bird 123531,airplane 123532,frog 123533,frog 123534,horse 123535,truck 123536,dog 123537,cat 123538,deer 123539,deer 123540,dog 123541,deer 123542,truck 123543,automobile 123544,frog 123545,ship 123546,bird 123547,horse 123548,deer 123549,ship 123550,ship 123551,deer 123552,truck 123553,ship 123554,truck 123555,cat 123556,cat 123557,truck 123558,bird 123559,frog 123560,cat 123561,dog 123562,cat 123563,bird 123564,automobile 123565,deer 123566,cat 123567,cat 123568,frog 123569,airplane 123570,bird 123571,truck 123572,airplane 123573,bird 123574,deer 123575,bird 123576,automobile 123577,frog 123578,dog 123579,deer 123580,truck 123581,bird 123582,horse 123583,truck 123584,deer 123585,automobile 123586,cat 123587,automobile 123588,horse 123589,cat 123590,airplane 123591,frog 123592,ship 123593,frog 123594,bird 123595,bird 123596,truck 123597,airplane 123598,frog 123599,frog 123600,cat 123601,deer 123602,ship 123603,automobile 123604,cat 123605,truck 123606,dog 123607,dog 123608,bird 123609,automobile 123610,cat 123611,dog 123612,cat 123613,bird 123614,airplane 123615,frog 123616,frog 123617,ship 123618,deer 123619,cat 123620,truck 123621,bird 123622,frog 123623,ship 123624,deer 123625,cat 123626,dog 123627,ship 123628,ship 123629,deer 123630,dog 123631,dog 123632,bird 123633,ship 123634,airplane 123635,deer 123636,ship 123637,horse 123638,frog 123639,dog 123640,cat 123641,truck 123642,dog 123643,horse 123644,horse 123645,ship 123646,cat 123647,dog 123648,truck 123649,cat 123650,horse 123651,frog 123652,cat 123653,deer 123654,deer 123655,automobile 123656,deer 123657,horse 123658,deer 123659,dog 123660,cat 123661,automobile 123662,automobile 123663,bird 123664,airplane 123665,airplane 123666,deer 123667,frog 123668,cat 123669,bird 123670,dog 123671,dog 123672,cat 123673,ship 123674,frog 123675,ship 123676,truck 123677,cat 123678,bird 123679,truck 123680,airplane 123681,truck 123682,cat 123683,frog 123684,automobile 123685,dog 123686,deer 123687,deer 123688,deer 123689,cat 123690,ship 123691,automobile 123692,dog 123693,cat 123694,truck 123695,deer 123696,bird 123697,deer 123698,ship 123699,deer 123700,truck 123701,airplane 123702,dog 123703,cat 123704,cat 123705,cat 123706,horse 123707,bird 123708,deer 123709,automobile 123710,horse 123711,cat 123712,bird 123713,deer 123714,automobile 123715,dog 123716,deer 123717,horse 123718,deer 123719,deer 123720,deer 123721,deer 123722,bird 123723,deer 123724,truck 123725,cat 123726,bird 123727,bird 123728,horse 123729,truck 123730,airplane 123731,automobile 123732,airplane 123733,deer 123734,frog 123735,deer 123736,ship 123737,deer 123738,truck 123739,cat 123740,truck 123741,airplane 123742,horse 123743,deer 123744,automobile 123745,horse 123746,dog 123747,deer 123748,automobile 123749,ship 123750,cat 123751,frog 123752,horse 123753,frog 123754,deer 123755,deer 123756,dog 123757,automobile 123758,frog 123759,truck 123760,airplane 123761,frog 123762,automobile 123763,dog 123764,dog 123765,dog 123766,ship 123767,dog 123768,automobile 123769,cat 123770,frog 123771,truck 123772,truck 123773,deer 123774,frog 123775,horse 123776,airplane 123777,truck 123778,cat 123779,bird 123780,airplane 123781,automobile 123782,airplane 123783,frog 123784,bird 123785,deer 123786,cat 123787,ship 123788,bird 123789,frog 123790,deer 123791,airplane 123792,airplane 123793,truck 123794,cat 123795,airplane 123796,truck 123797,ship 123798,automobile 123799,airplane 123800,frog 123801,bird 123802,dog 123803,dog 123804,dog 123805,dog 123806,automobile 123807,truck 123808,truck 123809,frog 123810,frog 123811,bird 123812,bird 123813,cat 123814,horse 123815,bird 123816,dog 123817,horse 123818,horse 123819,deer 123820,horse 123821,frog 123822,airplane 123823,horse 123824,horse 123825,airplane 123826,airplane 123827,frog 123828,dog 123829,ship 123830,truck 123831,deer 123832,automobile 123833,bird 123834,deer 123835,bird 123836,cat 123837,airplane 123838,deer 123839,cat 123840,airplane 123841,horse 123842,frog 123843,airplane 123844,truck 123845,airplane 123846,frog 123847,truck 123848,automobile 123849,cat 123850,cat 123851,ship 123852,dog 123853,airplane 123854,ship 123855,dog 123856,frog 123857,frog 123858,cat 123859,automobile 123860,bird 123861,dog 123862,cat 123863,horse 123864,airplane 123865,bird 123866,dog 123867,airplane 123868,frog 123869,automobile 123870,bird 123871,ship 123872,automobile 123873,cat 123874,truck 123875,bird 123876,deer 123877,automobile 123878,horse 123879,truck 123880,cat 123881,deer 123882,deer 123883,cat 123884,horse 123885,truck 123886,horse 123887,cat 123888,dog 123889,bird 123890,deer 123891,airplane 123892,bird 123893,horse 123894,deer 123895,horse 123896,bird 123897,horse 123898,deer 123899,automobile 123900,airplane 123901,cat 123902,deer 123903,dog 123904,bird 123905,dog 123906,ship 123907,cat 123908,frog 123909,airplane 123910,automobile 123911,deer 123912,horse 123913,deer 123914,cat 123915,automobile 123916,airplane 123917,airplane 123918,deer 123919,horse 123920,truck 123921,frog 123922,deer 123923,automobile 123924,frog 123925,dog 123926,dog 123927,truck 123928,cat 123929,airplane 123930,dog 123931,deer 123932,deer 123933,dog 123934,dog 123935,horse 123936,dog 123937,airplane 123938,dog 123939,deer 123940,deer 123941,automobile 123942,dog 123943,dog 123944,deer 123945,frog 123946,ship 123947,ship 123948,automobile 123949,bird 123950,horse 123951,horse 123952,deer 123953,frog 123954,bird 123955,bird 123956,horse 123957,dog 123958,truck 123959,truck 123960,truck 123961,automobile 123962,cat 123963,frog 123964,dog 123965,cat 123966,cat 123967,airplane 123968,horse 123969,ship 123970,deer 123971,truck 123972,cat 123973,horse 123974,deer 123975,airplane 123976,airplane 123977,airplane 123978,truck 123979,frog 123980,bird 123981,dog 123982,automobile 123983,frog 123984,airplane 123985,bird 123986,dog 123987,deer 123988,deer 123989,cat 123990,horse 123991,bird 123992,deer 123993,horse 123994,horse 123995,dog 123996,horse 123997,horse 123998,bird 123999,truck 124000,deer 124001,deer 124002,horse 124003,horse 124004,cat 124005,deer 124006,truck 124007,bird 124008,airplane 124009,horse 124010,frog 124011,cat 124012,airplane 124013,truck 124014,truck 124015,frog 124016,ship 124017,deer 124018,bird 124019,cat 124020,truck 124021,deer 124022,bird 124023,deer 124024,truck 124025,frog 124026,deer 124027,dog 124028,deer 124029,automobile 124030,automobile 124031,truck 124032,cat 124033,horse 124034,frog 124035,horse 124036,horse 124037,horse 124038,frog 124039,truck 124040,cat 124041,ship 124042,cat 124043,deer 124044,cat 124045,airplane 124046,airplane 124047,frog 124048,truck 124049,ship 124050,horse 124051,ship 124052,deer 124053,cat 124054,airplane 124055,automobile 124056,truck 124057,bird 124058,frog 124059,dog 124060,deer 124061,frog 124062,ship 124063,truck 124064,truck 124065,deer 124066,cat 124067,automobile 124068,dog 124069,truck 124070,deer 124071,frog 124072,bird 124073,frog 124074,truck 124075,frog 124076,frog 124077,horse 124078,bird 124079,bird 124080,deer 124081,deer 124082,horse 124083,dog 124084,dog 124085,cat 124086,deer 124087,dog 124088,deer 124089,horse 124090,truck 124091,dog 124092,automobile 124093,airplane 124094,deer 124095,deer 124096,dog 124097,automobile 124098,truck 124099,cat 124100,cat 124101,deer 124102,automobile 124103,frog 124104,dog 124105,bird 124106,dog 124107,bird 124108,deer 124109,cat 124110,ship 124111,ship 124112,deer 124113,bird 124114,cat 124115,airplane 124116,truck 124117,cat 124118,frog 124119,frog 124120,deer 124121,deer 124122,cat 124123,cat 124124,cat 124125,airplane 124126,bird 124127,automobile 124128,dog 124129,automobile 124130,airplane 124131,deer 124132,bird 124133,truck 124134,frog 124135,truck 124136,deer 124137,bird 124138,automobile 124139,deer 124140,airplane 124141,cat 124142,truck 124143,horse 124144,dog 124145,deer 124146,truck 124147,bird 124148,cat 124149,horse 124150,deer 124151,horse 124152,bird 124153,cat 124154,airplane 124155,frog 124156,airplane 124157,cat 124158,cat 124159,bird 124160,dog 124161,cat 124162,airplane 124163,deer 124164,frog 124165,automobile 124166,frog 124167,deer 124168,cat 124169,frog 124170,automobile 124171,ship 124172,frog 124173,truck 124174,automobile 124175,deer 124176,cat 124177,automobile 124178,bird 124179,automobile 124180,automobile 124181,bird 124182,deer 124183,frog 124184,frog 124185,dog 124186,dog 124187,frog 124188,horse 124189,cat 124190,dog 124191,cat 124192,dog 124193,airplane 124194,deer 124195,truck 124196,horse 124197,cat 124198,automobile 124199,dog 124200,frog 124201,deer 124202,deer 124203,dog 124204,cat 124205,truck 124206,cat 124207,cat 124208,cat 124209,bird 124210,frog 124211,dog 124212,automobile 124213,ship 124214,frog 124215,truck 124216,truck 124217,bird 124218,bird 124219,frog 124220,frog 124221,truck 124222,airplane 124223,automobile 124224,truck 124225,frog 124226,truck 124227,frog 124228,frog 124229,horse 124230,bird 124231,dog 124232,truck 124233,ship 124234,deer 124235,frog 124236,truck 124237,dog 124238,deer 124239,airplane 124240,automobile 124241,horse 124242,deer 124243,deer 124244,deer 124245,frog 124246,bird 124247,deer 124248,automobile 124249,automobile 124250,cat 124251,ship 124252,deer 124253,deer 124254,dog 124255,frog 124256,frog 124257,truck 124258,deer 124259,horse 124260,cat 124261,dog 124262,truck 124263,truck 124264,deer 124265,horse 124266,horse 124267,automobile 124268,cat 124269,airplane 124270,truck 124271,deer 124272,airplane 124273,deer 124274,airplane 124275,truck 124276,horse 124277,truck 124278,cat 124279,airplane 124280,horse 124281,bird 124282,truck 124283,truck 124284,automobile 124285,cat 124286,frog 124287,horse 124288,frog 124289,deer 124290,horse 124291,horse 124292,deer 124293,truck 124294,automobile 124295,dog 124296,bird 124297,ship 124298,airplane 124299,deer 124300,cat 124301,dog 124302,truck 124303,cat 124304,cat 124305,dog 124306,deer 124307,automobile 124308,dog 124309,automobile 124310,frog 124311,dog 124312,cat 124313,frog 124314,horse 124315,horse 124316,ship 124317,horse 124318,ship 124319,deer 124320,frog 124321,truck 124322,frog 124323,cat 124324,horse 124325,deer 124326,truck 124327,deer 124328,dog 124329,horse 124330,horse 124331,deer 124332,dog 124333,airplane 124334,cat 124335,cat 124336,ship 124337,frog 124338,deer 124339,automobile 124340,frog 124341,airplane 124342,horse 124343,automobile 124344,horse 124345,cat 124346,automobile 124347,airplane 124348,bird 124349,automobile 124350,ship 124351,airplane 124352,deer 124353,automobile 124354,horse 124355,deer 124356,ship 124357,ship 124358,frog 124359,horse 124360,dog 124361,truck 124362,cat 124363,deer 124364,horse 124365,bird 124366,deer 124367,dog 124368,airplane 124369,automobile 124370,deer 124371,deer 124372,airplane 124373,airplane 124374,ship 124375,ship 124376,cat 124377,truck 124378,frog 124379,truck 124380,automobile 124381,horse 124382,airplane 124383,truck 124384,airplane 124385,airplane 124386,truck 124387,automobile 124388,truck 124389,airplane 124390,frog 124391,deer 124392,ship 124393,cat 124394,deer 124395,automobile 124396,bird 124397,horse 124398,automobile 124399,cat 124400,bird 124401,horse 124402,horse 124403,bird 124404,cat 124405,bird 124406,deer 124407,deer 124408,deer 124409,cat 124410,airplane 124411,frog 124412,bird 124413,deer 124414,horse 124415,ship 124416,automobile 124417,frog 124418,horse 124419,dog 124420,dog 124421,dog 124422,bird 124423,bird 124424,dog 124425,dog 124426,bird 124427,automobile 124428,cat 124429,bird 124430,truck 124431,horse 124432,airplane 124433,frog 124434,horse 124435,frog 124436,deer 124437,deer 124438,truck 124439,cat 124440,ship 124441,frog 124442,deer 124443,dog 124444,airplane 124445,cat 124446,truck 124447,frog 124448,airplane 124449,automobile 124450,frog 124451,deer 124452,airplane 124453,deer 124454,airplane 124455,horse 124456,frog 124457,frog 124458,horse 124459,frog 124460,truck 124461,dog 124462,horse 124463,horse 124464,cat 124465,ship 124466,dog 124467,automobile 124468,dog 124469,dog 124470,airplane 124471,cat 124472,horse 124473,cat 124474,cat 124475,deer 124476,frog 124477,frog 124478,dog 124479,ship 124480,horse 124481,airplane 124482,horse 124483,automobile 124484,horse 124485,dog 124486,truck 124487,dog 124488,ship 124489,deer 124490,truck 124491,horse 124492,cat 124493,cat 124494,airplane 124495,automobile 124496,deer 124497,airplane 124498,automobile 124499,horse 124500,frog 124501,bird 124502,airplane 124503,frog 124504,automobile 124505,frog 124506,bird 124507,cat 124508,dog 124509,airplane 124510,frog 124511,bird 124512,dog 124513,ship 124514,dog 124515,cat 124516,deer 124517,frog 124518,deer 124519,cat 124520,truck 124521,ship 124522,deer 124523,deer 124524,horse 124525,cat 124526,cat 124527,frog 124528,cat 124529,cat 124530,frog 124531,deer 124532,deer 124533,horse 124534,cat 124535,dog 124536,dog 124537,frog 124538,dog 124539,ship 124540,truck 124541,cat 124542,horse 124543,airplane 124544,dog 124545,deer 124546,deer 124547,truck 124548,cat 124549,cat 124550,airplane 124551,frog 124552,deer 124553,deer 124554,deer 124555,bird 124556,dog 124557,truck 124558,frog 124559,truck 124560,cat 124561,cat 124562,airplane 124563,automobile 124564,cat 124565,dog 124566,horse 124567,airplane 124568,cat 124569,horse 124570,cat 124571,airplane 124572,ship 124573,cat 124574,frog 124575,airplane 124576,dog 124577,airplane 124578,deer 124579,automobile 124580,frog 124581,frog 124582,deer 124583,cat 124584,truck 124585,cat 124586,cat 124587,truck 124588,truck 124589,ship 124590,deer 124591,airplane 124592,truck 124593,ship 124594,ship 124595,automobile 124596,ship 124597,truck 124598,deer 124599,deer 124600,bird 124601,dog 124602,ship 124603,cat 124604,automobile 124605,automobile 124606,cat 124607,horse 124608,automobile 124609,cat 124610,truck 124611,bird 124612,bird 124613,cat 124614,deer 124615,airplane 124616,airplane 124617,bird 124618,ship 124619,deer 124620,deer 124621,deer 124622,horse 124623,dog 124624,cat 124625,truck 124626,deer 124627,dog 124628,cat 124629,frog 124630,truck 124631,deer 124632,bird 124633,cat 124634,frog 124635,automobile 124636,horse 124637,frog 124638,cat 124639,truck 124640,cat 124641,cat 124642,horse 124643,frog 124644,horse 124645,deer 124646,ship 124647,dog 124648,truck 124649,airplane 124650,ship 124651,dog 124652,airplane 124653,horse 124654,deer 124655,dog 124656,cat 124657,bird 124658,horse 124659,deer 124660,dog 124661,deer 124662,truck 124663,airplane 124664,dog 124665,horse 124666,frog 124667,bird 124668,airplane 124669,dog 124670,dog 124671,frog 124672,cat 124673,airplane 124674,horse 124675,cat 124676,truck 124677,horse 124678,frog 124679,ship 124680,horse 124681,horse 124682,airplane 124683,horse 124684,cat 124685,frog 124686,truck 124687,bird 124688,horse 124689,dog 124690,airplane 124691,ship 124692,automobile 124693,airplane 124694,bird 124695,dog 124696,deer 124697,truck 124698,airplane 124699,bird 124700,automobile 124701,automobile 124702,frog 124703,airplane 124704,automobile 124705,horse 124706,airplane 124707,truck 124708,airplane 124709,cat 124710,automobile 124711,airplane 124712,truck 124713,cat 124714,horse 124715,deer 124716,bird 124717,truck 124718,ship 124719,deer 124720,horse 124721,ship 124722,truck 124723,frog 124724,automobile 124725,deer 124726,bird 124727,frog 124728,dog 124729,ship 124730,deer 124731,ship 124732,cat 124733,deer 124734,horse 124735,truck 124736,cat 124737,airplane 124738,truck 124739,deer 124740,automobile 124741,frog 124742,ship 124743,ship 124744,horse 124745,frog 124746,ship 124747,cat 124748,dog 124749,cat 124750,frog 124751,automobile 124752,cat 124753,horse 124754,truck 124755,airplane 124756,dog 124757,horse 124758,deer 124759,truck 124760,airplane 124761,horse 124762,dog 124763,truck 124764,dog 124765,deer 124766,truck 124767,horse 124768,bird 124769,bird 124770,cat 124771,ship 124772,dog 124773,horse 124774,truck 124775,ship 124776,automobile 124777,truck 124778,airplane 124779,airplane 124780,dog 124781,automobile 124782,truck 124783,airplane 124784,automobile 124785,airplane 124786,frog 124787,frog 124788,horse 124789,horse 124790,deer 124791,deer 124792,horse 124793,automobile 124794,truck 124795,truck 124796,automobile 124797,bird 124798,frog 124799,deer 124800,dog 124801,cat 124802,deer 124803,frog 124804,truck 124805,deer 124806,dog 124807,frog 124808,ship 124809,truck 124810,truck 124811,deer 124812,airplane 124813,airplane 124814,horse 124815,horse 124816,horse 124817,truck 124818,frog 124819,deer 124820,horse 124821,truck 124822,frog 124823,dog 124824,horse 124825,horse 124826,cat 124827,bird 124828,dog 124829,ship 124830,truck 124831,frog 124832,ship 124833,automobile 124834,airplane 124835,horse 124836,airplane 124837,dog 124838,bird 124839,truck 124840,bird 124841,cat 124842,frog 124843,bird 124844,frog 124845,horse 124846,deer 124847,frog 124848,deer 124849,cat 124850,ship 124851,cat 124852,dog 124853,dog 124854,bird 124855,truck 124856,cat 124857,deer 124858,automobile 124859,frog 124860,dog 124861,ship 124862,cat 124863,cat 124864,cat 124865,deer 124866,cat 124867,automobile 124868,airplane 124869,dog 124870,dog 124871,bird 124872,cat 124873,cat 124874,dog 124875,airplane 124876,ship 124877,bird 124878,frog 124879,horse 124880,dog 124881,bird 124882,deer 124883,dog 124884,truck 124885,frog 124886,bird 124887,bird 124888,cat 124889,frog 124890,frog 124891,airplane 124892,cat 124893,automobile 124894,dog 124895,dog 124896,frog 124897,deer 124898,airplane 124899,frog 124900,airplane 124901,frog 124902,horse 124903,truck 124904,ship 124905,horse 124906,deer 124907,truck 124908,dog 124909,airplane 124910,frog 124911,dog 124912,airplane 124913,truck 124914,automobile 124915,ship 124916,deer 124917,dog 124918,ship 124919,airplane 124920,bird 124921,deer 124922,deer 124923,bird 124924,cat 124925,deer 124926,airplane 124927,frog 124928,deer 124929,cat 124930,frog 124931,airplane 124932,frog 124933,dog 124934,truck 124935,frog 124936,frog 124937,airplane 124938,airplane 124939,truck 124940,frog 124941,frog 124942,dog 124943,bird 124944,automobile 124945,deer 124946,ship 124947,dog 124948,dog 124949,bird 124950,deer 124951,ship 124952,dog 124953,horse 124954,ship 124955,horse 124956,dog 124957,frog 124958,dog 124959,dog 124960,bird 124961,cat 124962,cat 124963,bird 124964,airplane 124965,deer 124966,deer 124967,ship 124968,bird 124969,bird 124970,ship 124971,airplane 124972,frog 124973,deer 124974,cat 124975,ship 124976,truck 124977,deer 124978,automobile 124979,frog 124980,truck 124981,airplane 124982,automobile 124983,cat 124984,airplane 124985,cat 124986,deer 124987,truck 124988,dog 124989,frog 124990,dog 124991,truck 124992,deer 124993,ship 124994,frog 124995,cat 124996,ship 124997,airplane 124998,dog 124999,automobile 125000,cat 125001,airplane 125002,dog 125003,truck 125004,dog 125005,cat 125006,truck 125007,automobile 125008,ship 125009,truck 125010,bird 125011,cat 125012,horse 125013,horse 125014,airplane 125015,deer 125016,frog 125017,deer 125018,frog 125019,deer 125020,dog 125021,horse 125022,frog 125023,automobile 125024,ship 125025,horse 125026,cat 125027,deer 125028,horse 125029,airplane 125030,frog 125031,truck 125032,truck 125033,dog 125034,horse 125035,cat 125036,deer 125037,deer 125038,bird 125039,dog 125040,deer 125041,frog 125042,bird 125043,cat 125044,deer 125045,cat 125046,frog 125047,frog 125048,bird 125049,ship 125050,dog 125051,horse 125052,cat 125053,truck 125054,truck 125055,cat 125056,airplane 125057,ship 125058,truck 125059,truck 125060,deer 125061,dog 125062,truck 125063,deer 125064,ship 125065,truck 125066,horse 125067,cat 125068,ship 125069,bird 125070,truck 125071,bird 125072,frog 125073,dog 125074,cat 125075,frog 125076,horse 125077,bird 125078,deer 125079,truck 125080,dog 125081,deer 125082,cat 125083,airplane 125084,bird 125085,truck 125086,horse 125087,ship 125088,truck 125089,deer 125090,frog 125091,truck 125092,truck 125093,frog 125094,frog 125095,bird 125096,deer 125097,frog 125098,deer 125099,airplane 125100,frog 125101,ship 125102,cat 125103,dog 125104,deer 125105,ship 125106,airplane 125107,automobile 125108,frog 125109,deer 125110,bird 125111,airplane 125112,cat 125113,horse 125114,cat 125115,horse 125116,dog 125117,horse 125118,dog 125119,truck 125120,dog 125121,cat 125122,automobile 125123,horse 125124,airplane 125125,automobile 125126,bird 125127,deer 125128,frog 125129,truck 125130,frog 125131,frog 125132,dog 125133,frog 125134,frog 125135,frog 125136,truck 125137,frog 125138,dog 125139,dog 125140,ship 125141,truck 125142,bird 125143,dog 125144,bird 125145,bird 125146,deer 125147,ship 125148,truck 125149,airplane 125150,ship 125151,ship 125152,deer 125153,truck 125154,deer 125155,ship 125156,automobile 125157,automobile 125158,automobile 125159,deer 125160,horse 125161,deer 125162,ship 125163,frog 125164,bird 125165,deer 125166,horse 125167,frog 125168,deer 125169,bird 125170,deer 125171,frog 125172,deer 125173,deer 125174,automobile 125175,automobile 125176,dog 125177,deer 125178,airplane 125179,ship 125180,deer 125181,cat 125182,cat 125183,deer 125184,airplane 125185,horse 125186,automobile 125187,frog 125188,dog 125189,airplane 125190,cat 125191,cat 125192,bird 125193,airplane 125194,frog 125195,automobile 125196,deer 125197,airplane 125198,cat 125199,horse 125200,automobile 125201,truck 125202,automobile 125203,cat 125204,dog 125205,cat 125206,dog 125207,deer 125208,airplane 125209,bird 125210,cat 125211,dog 125212,cat 125213,frog 125214,horse 125215,frog 125216,frog 125217,ship 125218,bird 125219,frog 125220,bird 125221,dog 125222,bird 125223,truck 125224,frog 125225,airplane 125226,ship 125227,horse 125228,bird 125229,deer 125230,deer 125231,automobile 125232,horse 125233,airplane 125234,cat 125235,frog 125236,airplane 125237,cat 125238,dog 125239,ship 125240,ship 125241,deer 125242,horse 125243,bird 125244,deer 125245,frog 125246,dog 125247,horse 125248,deer 125249,cat 125250,bird 125251,dog 125252,dog 125253,frog 125254,bird 125255,horse 125256,deer 125257,deer 125258,frog 125259,deer 125260,automobile 125261,bird 125262,cat 125263,truck 125264,cat 125265,horse 125266,dog 125267,ship 125268,horse 125269,dog 125270,dog 125271,frog 125272,automobile 125273,horse 125274,automobile 125275,ship 125276,deer 125277,frog 125278,cat 125279,deer 125280,truck 125281,horse 125282,cat 125283,dog 125284,dog 125285,horse 125286,cat 125287,cat 125288,dog 125289,airplane 125290,horse 125291,deer 125292,airplane 125293,horse 125294,deer 125295,dog 125296,deer 125297,frog 125298,cat 125299,frog 125300,truck 125301,cat 125302,cat 125303,deer 125304,truck 125305,deer 125306,bird 125307,ship 125308,dog 125309,dog 125310,cat 125311,truck 125312,ship 125313,dog 125314,dog 125315,truck 125316,airplane 125317,cat 125318,bird 125319,airplane 125320,horse 125321,automobile 125322,horse 125323,frog 125324,ship 125325,bird 125326,cat 125327,automobile 125328,dog 125329,frog 125330,frog 125331,cat 125332,horse 125333,truck 125334,frog 125335,automobile 125336,truck 125337,airplane 125338,deer 125339,horse 125340,dog 125341,airplane 125342,deer 125343,deer 125344,cat 125345,dog 125346,automobile 125347,automobile 125348,horse 125349,ship 125350,bird 125351,ship 125352,ship 125353,automobile 125354,automobile 125355,airplane 125356,truck 125357,bird 125358,cat 125359,truck 125360,dog 125361,dog 125362,airplane 125363,cat 125364,cat 125365,bird 125366,truck 125367,frog 125368,deer 125369,ship 125370,deer 125371,bird 125372,deer 125373,horse 125374,deer 125375,airplane 125376,frog 125377,airplane 125378,deer 125379,cat 125380,bird 125381,ship 125382,automobile 125383,automobile 125384,dog 125385,dog 125386,airplane 125387,deer 125388,automobile 125389,dog 125390,frog 125391,automobile 125392,bird 125393,automobile 125394,truck 125395,cat 125396,frog 125397,deer 125398,deer 125399,ship 125400,truck 125401,automobile 125402,horse 125403,cat 125404,airplane 125405,bird 125406,horse 125407,frog 125408,cat 125409,horse 125410,airplane 125411,dog 125412,airplane 125413,horse 125414,bird 125415,truck 125416,truck 125417,frog 125418,cat 125419,dog 125420,airplane 125421,ship 125422,airplane 125423,deer 125424,deer 125425,frog 125426,deer 125427,cat 125428,dog 125429,horse 125430,cat 125431,dog 125432,ship 125433,ship 125434,cat 125435,deer 125436,ship 125437,cat 125438,automobile 125439,automobile 125440,automobile 125441,horse 125442,deer 125443,horse 125444,ship 125445,truck 125446,horse 125447,bird 125448,dog 125449,airplane 125450,automobile 125451,dog 125452,airplane 125453,bird 125454,dog 125455,cat 125456,ship 125457,cat 125458,truck 125459,dog 125460,cat 125461,frog 125462,horse 125463,airplane 125464,cat 125465,ship 125466,cat 125467,dog 125468,cat 125469,truck 125470,bird 125471,bird 125472,frog 125473,bird 125474,truck 125475,horse 125476,bird 125477,bird 125478,frog 125479,dog 125480,cat 125481,frog 125482,truck 125483,bird 125484,airplane 125485,airplane 125486,deer 125487,automobile 125488,deer 125489,dog 125490,horse 125491,ship 125492,dog 125493,cat 125494,cat 125495,airplane 125496,horse 125497,horse 125498,ship 125499,frog 125500,ship 125501,ship 125502,cat 125503,ship 125504,truck 125505,ship 125506,airplane 125507,cat 125508,cat 125509,truck 125510,horse 125511,dog 125512,dog 125513,airplane 125514,truck 125515,airplane 125516,cat 125517,airplane 125518,ship 125519,deer 125520,truck 125521,dog 125522,horse 125523,truck 125524,automobile 125525,deer 125526,deer 125527,dog 125528,deer 125529,bird 125530,horse 125531,airplane 125532,truck 125533,horse 125534,frog 125535,truck 125536,deer 125537,deer 125538,horse 125539,bird 125540,bird 125541,deer 125542,frog 125543,automobile 125544,automobile 125545,dog 125546,horse 125547,cat 125548,bird 125549,truck 125550,truck 125551,deer 125552,frog 125553,horse 125554,cat 125555,frog 125556,frog 125557,bird 125558,dog 125559,bird 125560,cat 125561,frog 125562,cat 125563,ship 125564,dog 125565,cat 125566,automobile 125567,dog 125568,ship 125569,ship 125570,automobile 125571,dog 125572,cat 125573,cat 125574,airplane 125575,airplane 125576,horse 125577,frog 125578,truck 125579,ship 125580,deer 125581,truck 125582,bird 125583,ship 125584,bird 125585,ship 125586,horse 125587,deer 125588,horse 125589,cat 125590,truck 125591,ship 125592,deer 125593,frog 125594,horse 125595,frog 125596,horse 125597,cat 125598,truck 125599,dog 125600,cat 125601,ship 125602,cat 125603,automobile 125604,deer 125605,bird 125606,automobile 125607,bird 125608,frog 125609,deer 125610,horse 125611,bird 125612,horse 125613,dog 125614,deer 125615,deer 125616,horse 125617,dog 125618,truck 125619,horse 125620,truck 125621,ship 125622,airplane 125623,deer 125624,deer 125625,cat 125626,ship 125627,airplane 125628,airplane 125629,truck 125630,airplane 125631,dog 125632,automobile 125633,truck 125634,deer 125635,bird 125636,frog 125637,deer 125638,automobile 125639,frog 125640,bird 125641,frog 125642,cat 125643,cat 125644,deer 125645,dog 125646,automobile 125647,bird 125648,truck 125649,truck 125650,cat 125651,deer 125652,truck 125653,frog 125654,cat 125655,frog 125656,frog 125657,airplane 125658,deer 125659,horse 125660,bird 125661,automobile 125662,frog 125663,ship 125664,cat 125665,airplane 125666,horse 125667,bird 125668,deer 125669,dog 125670,deer 125671,truck 125672,dog 125673,truck 125674,airplane 125675,truck 125676,frog 125677,dog 125678,cat 125679,automobile 125680,truck 125681,cat 125682,airplane 125683,ship 125684,bird 125685,cat 125686,dog 125687,frog 125688,cat 125689,deer 125690,dog 125691,bird 125692,deer 125693,bird 125694,deer 125695,airplane 125696,horse 125697,cat 125698,dog 125699,cat 125700,automobile 125701,horse 125702,frog 125703,deer 125704,automobile 125705,horse 125706,frog 125707,cat 125708,horse 125709,frog 125710,deer 125711,horse 125712,horse 125713,cat 125714,bird 125715,frog 125716,airplane 125717,bird 125718,frog 125719,truck 125720,bird 125721,horse 125722,cat 125723,truck 125724,truck 125725,deer 125726,airplane 125727,truck 125728,ship 125729,deer 125730,frog 125731,cat 125732,cat 125733,frog 125734,horse 125735,truck 125736,dog 125737,deer 125738,cat 125739,bird 125740,cat 125741,truck 125742,dog 125743,deer 125744,bird 125745,truck 125746,deer 125747,dog 125748,cat 125749,frog 125750,ship 125751,cat 125752,ship 125753,horse 125754,automobile 125755,ship 125756,bird 125757,horse 125758,dog 125759,horse 125760,airplane 125761,cat 125762,horse 125763,bird 125764,deer 125765,dog 125766,truck 125767,truck 125768,automobile 125769,deer 125770,frog 125771,ship 125772,deer 125773,cat 125774,dog 125775,airplane 125776,automobile 125777,airplane 125778,airplane 125779,truck 125780,dog 125781,cat 125782,ship 125783,truck 125784,cat 125785,deer 125786,truck 125787,ship 125788,cat 125789,dog 125790,deer 125791,horse 125792,ship 125793,cat 125794,cat 125795,deer 125796,truck 125797,ship 125798,bird 125799,truck 125800,airplane 125801,deer 125802,automobile 125803,cat 125804,bird 125805,frog 125806,dog 125807,ship 125808,frog 125809,truck 125810,truck 125811,airplane 125812,truck 125813,deer 125814,cat 125815,truck 125816,horse 125817,automobile 125818,deer 125819,airplane 125820,bird 125821,automobile 125822,cat 125823,horse 125824,cat 125825,automobile 125826,automobile 125827,deer 125828,bird 125829,dog 125830,automobile 125831,horse 125832,frog 125833,ship 125834,dog 125835,dog 125836,truck 125837,frog 125838,cat 125839,cat 125840,horse 125841,truck 125842,frog 125843,ship 125844,truck 125845,deer 125846,bird 125847,cat 125848,dog 125849,bird 125850,frog 125851,truck 125852,frog 125853,deer 125854,bird 125855,cat 125856,airplane 125857,dog 125858,automobile 125859,cat 125860,cat 125861,deer 125862,frog 125863,cat 125864,horse 125865,horse 125866,frog 125867,deer 125868,dog 125869,cat 125870,bird 125871,ship 125872,frog 125873,horse 125874,bird 125875,airplane 125876,deer 125877,cat 125878,automobile 125879,cat 125880,deer 125881,dog 125882,truck 125883,truck 125884,frog 125885,frog 125886,automobile 125887,bird 125888,horse 125889,truck 125890,truck 125891,cat 125892,horse 125893,bird 125894,deer 125895,ship 125896,airplane 125897,ship 125898,cat 125899,automobile 125900,truck 125901,horse 125902,bird 125903,cat 125904,frog 125905,bird 125906,truck 125907,horse 125908,truck 125909,deer 125910,deer 125911,deer 125912,dog 125913,dog 125914,deer 125915,truck 125916,truck 125917,cat 125918,cat 125919,bird 125920,cat 125921,dog 125922,truck 125923,airplane 125924,frog 125925,automobile 125926,truck 125927,bird 125928,deer 125929,deer 125930,bird 125931,deer 125932,automobile 125933,deer 125934,truck 125935,dog 125936,deer 125937,deer 125938,cat 125939,horse 125940,dog 125941,frog 125942,truck 125943,deer 125944,ship 125945,bird 125946,bird 125947,airplane 125948,automobile 125949,ship 125950,automobile 125951,bird 125952,horse 125953,frog 125954,dog 125955,frog 125956,dog 125957,cat 125958,deer 125959,horse 125960,dog 125961,horse 125962,automobile 125963,frog 125964,ship 125965,deer 125966,truck 125967,truck 125968,deer 125969,deer 125970,ship 125971,frog 125972,automobile 125973,frog 125974,truck 125975,truck 125976,horse 125977,dog 125978,deer 125979,frog 125980,dog 125981,bird 125982,bird 125983,bird 125984,deer 125985,frog 125986,deer 125987,deer 125988,ship 125989,automobile 125990,truck 125991,dog 125992,frog 125993,dog 125994,deer 125995,bird 125996,bird 125997,ship 125998,airplane 125999,deer 126000,frog 126001,automobile 126002,horse 126003,dog 126004,truck 126005,cat 126006,frog 126007,frog 126008,airplane 126009,frog 126010,airplane 126011,horse 126012,truck 126013,horse 126014,deer 126015,deer 126016,cat 126017,bird 126018,horse 126019,horse 126020,dog 126021,airplane 126022,horse 126023,airplane 126024,deer 126025,bird 126026,bird 126027,automobile 126028,airplane 126029,dog 126030,truck 126031,horse 126032,cat 126033,deer 126034,ship 126035,cat 126036,deer 126037,deer 126038,truck 126039,dog 126040,horse 126041,cat 126042,airplane 126043,airplane 126044,cat 126045,deer 126046,cat 126047,cat 126048,dog 126049,truck 126050,horse 126051,deer 126052,bird 126053,automobile 126054,cat 126055,automobile 126056,frog 126057,frog 126058,cat 126059,truck 126060,dog 126061,cat 126062,frog 126063,ship 126064,cat 126065,frog 126066,dog 126067,horse 126068,automobile 126069,truck 126070,bird 126071,deer 126072,horse 126073,bird 126074,automobile 126075,truck 126076,frog 126077,horse 126078,ship 126079,bird 126080,ship 126081,deer 126082,ship 126083,horse 126084,cat 126085,frog 126086,airplane 126087,automobile 126088,cat 126089,horse 126090,bird 126091,frog 126092,horse 126093,deer 126094,cat 126095,horse 126096,dog 126097,cat 126098,ship 126099,deer 126100,airplane 126101,cat 126102,deer 126103,deer 126104,automobile 126105,cat 126106,automobile 126107,automobile 126108,ship 126109,ship 126110,bird 126111,frog 126112,airplane 126113,bird 126114,frog 126115,deer 126116,horse 126117,truck 126118,dog 126119,horse 126120,truck 126121,dog 126122,horse 126123,horse 126124,ship 126125,airplane 126126,deer 126127,cat 126128,horse 126129,deer 126130,frog 126131,horse 126132,truck 126133,airplane 126134,deer 126135,automobile 126136,frog 126137,horse 126138,truck 126139,automobile 126140,airplane 126141,dog 126142,cat 126143,bird 126144,frog 126145,horse 126146,horse 126147,deer 126148,horse 126149,truck 126150,ship 126151,truck 126152,deer 126153,frog 126154,truck 126155,bird 126156,deer 126157,truck 126158,dog 126159,cat 126160,truck 126161,dog 126162,ship 126163,airplane 126164,dog 126165,deer 126166,airplane 126167,bird 126168,truck 126169,airplane 126170,frog 126171,frog 126172,ship 126173,deer 126174,frog 126175,truck 126176,frog 126177,deer 126178,frog 126179,cat 126180,frog 126181,automobile 126182,cat 126183,dog 126184,ship 126185,cat 126186,horse 126187,deer 126188,cat 126189,cat 126190,frog 126191,automobile 126192,ship 126193,bird 126194,deer 126195,ship 126196,deer 126197,cat 126198,bird 126199,bird 126200,truck 126201,horse 126202,cat 126203,deer 126204,automobile 126205,bird 126206,bird 126207,dog 126208,ship 126209,cat 126210,horse 126211,cat 126212,airplane 126213,horse 126214,automobile 126215,airplane 126216,truck 126217,frog 126218,bird 126219,deer 126220,frog 126221,airplane 126222,deer 126223,dog 126224,deer 126225,automobile 126226,deer 126227,airplane 126228,automobile 126229,horse 126230,bird 126231,horse 126232,deer 126233,automobile 126234,airplane 126235,horse 126236,dog 126237,bird 126238,deer 126239,truck 126240,deer 126241,cat 126242,automobile 126243,ship 126244,deer 126245,dog 126246,horse 126247,frog 126248,bird 126249,truck 126250,dog 126251,deer 126252,deer 126253,horse 126254,cat 126255,bird 126256,truck 126257,dog 126258,frog 126259,automobile 126260,frog 126261,truck 126262,deer 126263,airplane 126264,automobile 126265,horse 126266,cat 126267,airplane 126268,deer 126269,cat 126270,cat 126271,frog 126272,truck 126273,deer 126274,cat 126275,airplane 126276,cat 126277,ship 126278,frog 126279,horse 126280,frog 126281,horse 126282,bird 126283,cat 126284,airplane 126285,bird 126286,cat 126287,cat 126288,automobile 126289,frog 126290,cat 126291,frog 126292,automobile 126293,automobile 126294,frog 126295,dog 126296,deer 126297,cat 126298,truck 126299,airplane 126300,ship 126301,bird 126302,ship 126303,truck 126304,bird 126305,deer 126306,automobile 126307,ship 126308,ship 126309,truck 126310,dog 126311,dog 126312,deer 126313,truck 126314,truck 126315,frog 126316,airplane 126317,horse 126318,bird 126319,bird 126320,deer 126321,horse 126322,deer 126323,horse 126324,frog 126325,dog 126326,automobile 126327,airplane 126328,deer 126329,truck 126330,dog 126331,deer 126332,truck 126333,horse 126334,bird 126335,bird 126336,horse 126337,deer 126338,horse 126339,frog 126340,truck 126341,bird 126342,horse 126343,ship 126344,ship 126345,truck 126346,bird 126347,truck 126348,ship 126349,cat 126350,truck 126351,bird 126352,deer 126353,cat 126354,frog 126355,deer 126356,truck 126357,frog 126358,airplane 126359,bird 126360,ship 126361,dog 126362,horse 126363,airplane 126364,airplane 126365,deer 126366,frog 126367,ship 126368,horse 126369,frog 126370,dog 126371,frog 126372,cat 126373,deer 126374,deer 126375,airplane 126376,dog 126377,deer 126378,horse 126379,horse 126380,ship 126381,bird 126382,deer 126383,cat 126384,cat 126385,cat 126386,deer 126387,cat 126388,deer 126389,ship 126390,airplane 126391,bird 126392,cat 126393,horse 126394,automobile 126395,dog 126396,bird 126397,ship 126398,airplane 126399,automobile 126400,cat 126401,horse 126402,truck 126403,truck 126404,bird 126405,truck 126406,bird 126407,ship 126408,truck 126409,cat 126410,frog 126411,bird 126412,airplane 126413,airplane 126414,truck 126415,ship 126416,cat 126417,frog 126418,dog 126419,deer 126420,deer 126421,bird 126422,horse 126423,cat 126424,automobile 126425,dog 126426,horse 126427,horse 126428,deer 126429,ship 126430,horse 126431,airplane 126432,horse 126433,automobile 126434,cat 126435,truck 126436,horse 126437,cat 126438,cat 126439,bird 126440,frog 126441,truck 126442,frog 126443,frog 126444,frog 126445,frog 126446,cat 126447,deer 126448,horse 126449,truck 126450,ship 126451,dog 126452,ship 126453,deer 126454,cat 126455,horse 126456,deer 126457,ship 126458,bird 126459,frog 126460,frog 126461,bird 126462,dog 126463,cat 126464,frog 126465,deer 126466,deer 126467,deer 126468,ship 126469,airplane 126470,automobile 126471,deer 126472,deer 126473,truck 126474,dog 126475,cat 126476,truck 126477,truck 126478,automobile 126479,cat 126480,deer 126481,deer 126482,bird 126483,frog 126484,horse 126485,truck 126486,deer 126487,deer 126488,truck 126489,ship 126490,frog 126491,cat 126492,deer 126493,ship 126494,frog 126495,deer 126496,cat 126497,truck 126498,frog 126499,bird 126500,frog 126501,airplane 126502,horse 126503,ship 126504,bird 126505,cat 126506,dog 126507,truck 126508,frog 126509,deer 126510,cat 126511,deer 126512,bird 126513,truck 126514,cat 126515,bird 126516,cat 126517,ship 126518,truck 126519,truck 126520,truck 126521,cat 126522,truck 126523,airplane 126524,frog 126525,dog 126526,airplane 126527,truck 126528,frog 126529,dog 126530,truck 126531,automobile 126532,dog 126533,cat 126534,ship 126535,cat 126536,truck 126537,frog 126538,automobile 126539,frog 126540,cat 126541,cat 126542,automobile 126543,frog 126544,dog 126545,horse 126546,deer 126547,dog 126548,deer 126549,bird 126550,cat 126551,ship 126552,deer 126553,airplane 126554,deer 126555,airplane 126556,deer 126557,dog 126558,dog 126559,horse 126560,automobile 126561,frog 126562,dog 126563,automobile 126564,airplane 126565,frog 126566,deer 126567,truck 126568,truck 126569,deer 126570,frog 126571,deer 126572,cat 126573,cat 126574,dog 126575,horse 126576,deer 126577,cat 126578,dog 126579,ship 126580,bird 126581,cat 126582,truck 126583,horse 126584,airplane 126585,deer 126586,dog 126587,dog 126588,automobile 126589,dog 126590,truck 126591,bird 126592,cat 126593,bird 126594,horse 126595,frog 126596,deer 126597,ship 126598,airplane 126599,dog 126600,frog 126601,cat 126602,automobile 126603,automobile 126604,cat 126605,automobile 126606,deer 126607,horse 126608,horse 126609,frog 126610,dog 126611,truck 126612,airplane 126613,truck 126614,cat 126615,bird 126616,dog 126617,ship 126618,cat 126619,bird 126620,cat 126621,truck 126622,deer 126623,dog 126624,deer 126625,automobile 126626,frog 126627,bird 126628,truck 126629,bird 126630,truck 126631,dog 126632,airplane 126633,truck 126634,frog 126635,deer 126636,truck 126637,ship 126638,frog 126639,truck 126640,bird 126641,bird 126642,bird 126643,frog 126644,cat 126645,automobile 126646,automobile 126647,airplane 126648,cat 126649,ship 126650,airplane 126651,truck 126652,bird 126653,airplane 126654,horse 126655,frog 126656,dog 126657,ship 126658,dog 126659,dog 126660,frog 126661,bird 126662,deer 126663,airplane 126664,dog 126665,cat 126666,dog 126667,truck 126668,truck 126669,horse 126670,cat 126671,cat 126672,truck 126673,cat 126674,airplane 126675,deer 126676,dog 126677,cat 126678,deer 126679,dog 126680,cat 126681,ship 126682,dog 126683,airplane 126684,automobile 126685,dog 126686,frog 126687,truck 126688,bird 126689,ship 126690,horse 126691,horse 126692,dog 126693,deer 126694,ship 126695,truck 126696,ship 126697,deer 126698,airplane 126699,horse 126700,deer 126701,deer 126702,frog 126703,frog 126704,automobile 126705,dog 126706,cat 126707,automobile 126708,deer 126709,deer 126710,truck 126711,automobile 126712,truck 126713,truck 126714,dog 126715,automobile 126716,deer 126717,ship 126718,frog 126719,truck 126720,truck 126721,frog 126722,automobile 126723,airplane 126724,deer 126725,frog 126726,cat 126727,truck 126728,cat 126729,deer 126730,automobile 126731,dog 126732,deer 126733,cat 126734,cat 126735,dog 126736,deer 126737,frog 126738,dog 126739,truck 126740,deer 126741,airplane 126742,horse 126743,airplane 126744,airplane 126745,frog 126746,frog 126747,ship 126748,airplane 126749,automobile 126750,deer 126751,dog 126752,dog 126753,airplane 126754,ship 126755,horse 126756,frog 126757,airplane 126758,horse 126759,airplane 126760,truck 126761,deer 126762,frog 126763,cat 126764,automobile 126765,bird 126766,bird 126767,frog 126768,cat 126769,ship 126770,ship 126771,deer 126772,airplane 126773,horse 126774,cat 126775,bird 126776,truck 126777,cat 126778,ship 126779,automobile 126780,frog 126781,dog 126782,frog 126783,frog 126784,frog 126785,automobile 126786,truck 126787,cat 126788,cat 126789,truck 126790,bird 126791,deer 126792,truck 126793,airplane 126794,automobile 126795,bird 126796,deer 126797,horse 126798,horse 126799,truck 126800,ship 126801,deer 126802,horse 126803,deer 126804,cat 126805,frog 126806,bird 126807,airplane 126808,horse 126809,dog 126810,ship 126811,dog 126812,truck 126813,automobile 126814,cat 126815,cat 126816,deer 126817,automobile 126818,cat 126819,truck 126820,bird 126821,dog 126822,ship 126823,cat 126824,truck 126825,automobile 126826,automobile 126827,cat 126828,deer 126829,airplane 126830,frog 126831,airplane 126832,cat 126833,bird 126834,bird 126835,truck 126836,truck 126837,cat 126838,horse 126839,cat 126840,truck 126841,horse 126842,ship 126843,frog 126844,cat 126845,airplane 126846,deer 126847,frog 126848,truck 126849,cat 126850,bird 126851,frog 126852,cat 126853,ship 126854,truck 126855,bird 126856,automobile 126857,bird 126858,bird 126859,frog 126860,deer 126861,cat 126862,horse 126863,frog 126864,automobile 126865,truck 126866,automobile 126867,horse 126868,truck 126869,bird 126870,truck 126871,bird 126872,truck 126873,dog 126874,frog 126875,cat 126876,airplane 126877,horse 126878,automobile 126879,truck 126880,bird 126881,horse 126882,ship 126883,deer 126884,ship 126885,truck 126886,bird 126887,bird 126888,airplane 126889,cat 126890,bird 126891,dog 126892,dog 126893,frog 126894,dog 126895,dog 126896,deer 126897,airplane 126898,frog 126899,deer 126900,frog 126901,ship 126902,automobile 126903,horse 126904,deer 126905,automobile 126906,ship 126907,dog 126908,automobile 126909,deer 126910,truck 126911,ship 126912,cat 126913,truck 126914,automobile 126915,cat 126916,deer 126917,airplane 126918,dog 126919,airplane 126920,airplane 126921,automobile 126922,bird 126923,cat 126924,horse 126925,truck 126926,cat 126927,deer 126928,horse 126929,automobile 126930,ship 126931,airplane 126932,bird 126933,cat 126934,deer 126935,airplane 126936,horse 126937,bird 126938,frog 126939,truck 126940,deer 126941,frog 126942,airplane 126943,cat 126944,dog 126945,horse 126946,cat 126947,horse 126948,cat 126949,cat 126950,ship 126951,horse 126952,deer 126953,ship 126954,airplane 126955,cat 126956,bird 126957,ship 126958,deer 126959,cat 126960,frog 126961,truck 126962,cat 126963,dog 126964,airplane 126965,cat 126966,horse 126967,truck 126968,deer 126969,deer 126970,cat 126971,ship 126972,airplane 126973,frog 126974,horse 126975,cat 126976,deer 126977,bird 126978,automobile 126979,ship 126980,airplane 126981,bird 126982,deer 126983,deer 126984,ship 126985,dog 126986,truck 126987,frog 126988,airplane 126989,ship 126990,ship 126991,deer 126992,deer 126993,frog 126994,dog 126995,bird 126996,cat 126997,deer 126998,ship 126999,dog 127000,frog 127001,ship 127002,frog 127003,frog 127004,horse 127005,bird 127006,truck 127007,cat 127008,truck 127009,cat 127010,dog 127011,ship 127012,cat 127013,cat 127014,dog 127015,frog 127016,horse 127017,cat 127018,automobile 127019,automobile 127020,cat 127021,frog 127022,cat 127023,airplane 127024,airplane 127025,airplane 127026,automobile 127027,frog 127028,ship 127029,cat 127030,horse 127031,ship 127032,deer 127033,cat 127034,automobile 127035,deer 127036,frog 127037,deer 127038,bird 127039,cat 127040,ship 127041,frog 127042,truck 127043,bird 127044,deer 127045,airplane 127046,deer 127047,truck 127048,deer 127049,airplane 127050,truck 127051,truck 127052,cat 127053,cat 127054,bird 127055,ship 127056,deer 127057,truck 127058,truck 127059,dog 127060,cat 127061,bird 127062,bird 127063,cat 127064,cat 127065,dog 127066,frog 127067,cat 127068,bird 127069,ship 127070,deer 127071,ship 127072,cat 127073,bird 127074,deer 127075,automobile 127076,cat 127077,horse 127078,airplane 127079,automobile 127080,deer 127081,bird 127082,truck 127083,truck 127084,automobile 127085,airplane 127086,automobile 127087,truck 127088,horse 127089,deer 127090,cat 127091,cat 127092,ship 127093,horse 127094,frog 127095,deer 127096,cat 127097,airplane 127098,cat 127099,airplane 127100,deer 127101,ship 127102,frog 127103,deer 127104,horse 127105,dog 127106,dog 127107,bird 127108,cat 127109,truck 127110,automobile 127111,deer 127112,frog 127113,horse 127114,bird 127115,dog 127116,deer 127117,truck 127118,dog 127119,airplane 127120,cat 127121,cat 127122,frog 127123,frog 127124,ship 127125,automobile 127126,frog 127127,cat 127128,ship 127129,dog 127130,airplane 127131,cat 127132,ship 127133,bird 127134,deer 127135,ship 127136,airplane 127137,cat 127138,automobile 127139,cat 127140,cat 127141,deer 127142,deer 127143,horse 127144,automobile 127145,horse 127146,cat 127147,horse 127148,horse 127149,airplane 127150,cat 127151,truck 127152,deer 127153,horse 127154,cat 127155,deer 127156,dog 127157,ship 127158,frog 127159,truck 127160,cat 127161,ship 127162,deer 127163,airplane 127164,cat 127165,bird 127166,cat 127167,cat 127168,bird 127169,automobile 127170,cat 127171,dog 127172,deer 127173,ship 127174,deer 127175,ship 127176,deer 127177,frog 127178,dog 127179,airplane 127180,frog 127181,cat 127182,airplane 127183,frog 127184,cat 127185,dog 127186,cat 127187,airplane 127188,ship 127189,truck 127190,airplane 127191,truck 127192,ship 127193,bird 127194,frog 127195,ship 127196,cat 127197,cat 127198,horse 127199,ship 127200,deer 127201,airplane 127202,truck 127203,frog 127204,truck 127205,dog 127206,truck 127207,bird 127208,bird 127209,truck 127210,ship 127211,frog 127212,deer 127213,airplane 127214,ship 127215,frog 127216,deer 127217,airplane 127218,frog 127219,dog 127220,deer 127221,cat 127222,bird 127223,airplane 127224,frog 127225,horse 127226,deer 127227,horse 127228,ship 127229,ship 127230,bird 127231,deer 127232,truck 127233,horse 127234,deer 127235,frog 127236,frog 127237,truck 127238,cat 127239,bird 127240,dog 127241,dog 127242,bird 127243,frog 127244,bird 127245,truck 127246,deer 127247,automobile 127248,airplane 127249,bird 127250,frog 127251,horse 127252,bird 127253,automobile 127254,cat 127255,dog 127256,deer 127257,automobile 127258,frog 127259,dog 127260,bird 127261,cat 127262,horse 127263,dog 127264,cat 127265,airplane 127266,airplane 127267,airplane 127268,dog 127269,automobile 127270,cat 127271,cat 127272,airplane 127273,automobile 127274,airplane 127275,truck 127276,frog 127277,truck 127278,bird 127279,cat 127280,truck 127281,frog 127282,truck 127283,frog 127284,cat 127285,horse 127286,truck 127287,dog 127288,frog 127289,dog 127290,cat 127291,deer 127292,horse 127293,deer 127294,cat 127295,dog 127296,bird 127297,cat 127298,truck 127299,horse 127300,ship 127301,cat 127302,truck 127303,deer 127304,airplane 127305,cat 127306,airplane 127307,dog 127308,deer 127309,ship 127310,horse 127311,ship 127312,ship 127313,deer 127314,cat 127315,horse 127316,bird 127317,deer 127318,cat 127319,cat 127320,deer 127321,ship 127322,airplane 127323,deer 127324,cat 127325,airplane 127326,dog 127327,automobile 127328,horse 127329,airplane 127330,dog 127331,automobile 127332,frog 127333,bird 127334,frog 127335,automobile 127336,truck 127337,airplane 127338,horse 127339,horse 127340,ship 127341,horse 127342,horse 127343,truck 127344,horse 127345,cat 127346,cat 127347,frog 127348,automobile 127349,horse 127350,bird 127351,frog 127352,ship 127353,bird 127354,deer 127355,bird 127356,frog 127357,deer 127358,cat 127359,ship 127360,bird 127361,airplane 127362,frog 127363,deer 127364,deer 127365,cat 127366,airplane 127367,cat 127368,dog 127369,bird 127370,bird 127371,horse 127372,truck 127373,dog 127374,horse 127375,truck 127376,dog 127377,cat 127378,frog 127379,deer 127380,frog 127381,truck 127382,bird 127383,bird 127384,ship 127385,truck 127386,cat 127387,truck 127388,airplane 127389,cat 127390,deer 127391,frog 127392,dog 127393,airplane 127394,horse 127395,frog 127396,frog 127397,automobile 127398,deer 127399,truck 127400,truck 127401,automobile 127402,deer 127403,cat 127404,frog 127405,truck 127406,automobile 127407,cat 127408,truck 127409,airplane 127410,truck 127411,airplane 127412,truck 127413,truck 127414,dog 127415,deer 127416,cat 127417,bird 127418,frog 127419,automobile 127420,dog 127421,horse 127422,bird 127423,automobile 127424,deer 127425,deer 127426,horse 127427,dog 127428,horse 127429,airplane 127430,bird 127431,frog 127432,cat 127433,automobile 127434,automobile 127435,frog 127436,horse 127437,truck 127438,ship 127439,deer 127440,automobile 127441,airplane 127442,bird 127443,deer 127444,ship 127445,frog 127446,horse 127447,cat 127448,ship 127449,horse 127450,cat 127451,truck 127452,frog 127453,frog 127454,automobile 127455,bird 127456,deer 127457,deer 127458,horse 127459,truck 127460,deer 127461,horse 127462,dog 127463,truck 127464,frog 127465,cat 127466,bird 127467,cat 127468,deer 127469,cat 127470,deer 127471,ship 127472,frog 127473,automobile 127474,automobile 127475,ship 127476,dog 127477,deer 127478,automobile 127479,horse 127480,ship 127481,truck 127482,frog 127483,airplane 127484,cat 127485,horse 127486,frog 127487,airplane 127488,deer 127489,bird 127490,deer 127491,bird 127492,cat 127493,ship 127494,ship 127495,cat 127496,frog 127497,cat 127498,cat 127499,deer 127500,truck 127501,cat 127502,cat 127503,airplane 127504,truck 127505,ship 127506,cat 127507,deer 127508,automobile 127509,frog 127510,ship 127511,ship 127512,bird 127513,horse 127514,truck 127515,ship 127516,cat 127517,horse 127518,truck 127519,horse 127520,frog 127521,cat 127522,horse 127523,airplane 127524,ship 127525,dog 127526,truck 127527,horse 127528,truck 127529,automobile 127530,horse 127531,automobile 127532,automobile 127533,cat 127534,bird 127535,cat 127536,automobile 127537,frog 127538,horse 127539,cat 127540,dog 127541,ship 127542,airplane 127543,frog 127544,ship 127545,dog 127546,frog 127547,deer 127548,deer 127549,frog 127550,bird 127551,truck 127552,truck 127553,deer 127554,ship 127555,ship 127556,dog 127557,truck 127558,cat 127559,deer 127560,bird 127561,automobile 127562,horse 127563,horse 127564,frog 127565,horse 127566,dog 127567,horse 127568,cat 127569,cat 127570,deer 127571,automobile 127572,cat 127573,deer 127574,airplane 127575,dog 127576,deer 127577,airplane 127578,dog 127579,horse 127580,frog 127581,cat 127582,automobile 127583,cat 127584,frog 127585,deer 127586,bird 127587,deer 127588,frog 127589,airplane 127590,cat 127591,truck 127592,horse 127593,cat 127594,ship 127595,airplane 127596,airplane 127597,airplane 127598,truck 127599,truck 127600,deer 127601,bird 127602,cat 127603,frog 127604,bird 127605,bird 127606,deer 127607,automobile 127608,truck 127609,dog 127610,horse 127611,dog 127612,cat 127613,truck 127614,horse 127615,frog 127616,frog 127617,truck 127618,bird 127619,automobile 127620,truck 127621,airplane 127622,automobile 127623,airplane 127624,airplane 127625,deer 127626,frog 127627,deer 127628,frog 127629,horse 127630,cat 127631,dog 127632,frog 127633,cat 127634,cat 127635,airplane 127636,bird 127637,horse 127638,horse 127639,truck 127640,bird 127641,deer 127642,airplane 127643,truck 127644,bird 127645,truck 127646,deer 127647,dog 127648,frog 127649,dog 127650,frog 127651,automobile 127652,bird 127653,dog 127654,bird 127655,frog 127656,ship 127657,deer 127658,deer 127659,bird 127660,dog 127661,cat 127662,dog 127663,ship 127664,cat 127665,dog 127666,ship 127667,cat 127668,deer 127669,cat 127670,deer 127671,cat 127672,airplane 127673,deer 127674,cat 127675,deer 127676,cat 127677,frog 127678,airplane 127679,truck 127680,airplane 127681,truck 127682,dog 127683,truck 127684,ship 127685,horse 127686,automobile 127687,automobile 127688,automobile 127689,bird 127690,frog 127691,cat 127692,truck 127693,dog 127694,cat 127695,dog 127696,deer 127697,bird 127698,deer 127699,frog 127700,dog 127701,automobile 127702,automobile 127703,ship 127704,deer 127705,airplane 127706,cat 127707,truck 127708,horse 127709,airplane 127710,cat 127711,dog 127712,frog 127713,truck 127714,bird 127715,airplane 127716,dog 127717,automobile 127718,horse 127719,cat 127720,cat 127721,horse 127722,frog 127723,airplane 127724,ship 127725,cat 127726,cat 127727,automobile 127728,frog 127729,truck 127730,horse 127731,dog 127732,truck 127733,deer 127734,dog 127735,truck 127736,bird 127737,horse 127738,cat 127739,ship 127740,deer 127741,cat 127742,horse 127743,automobile 127744,airplane 127745,cat 127746,frog 127747,cat 127748,ship 127749,ship 127750,horse 127751,airplane 127752,airplane 127753,cat 127754,automobile 127755,cat 127756,cat 127757,deer 127758,bird 127759,airplane 127760,bird 127761,airplane 127762,cat 127763,truck 127764,horse 127765,deer 127766,cat 127767,frog 127768,deer 127769,frog 127770,automobile 127771,horse 127772,bird 127773,truck 127774,bird 127775,frog 127776,frog 127777,bird 127778,dog 127779,ship 127780,automobile 127781,ship 127782,horse 127783,deer 127784,ship 127785,ship 127786,cat 127787,cat 127788,deer 127789,truck 127790,bird 127791,cat 127792,truck 127793,deer 127794,bird 127795,automobile 127796,airplane 127797,airplane 127798,cat 127799,cat 127800,automobile 127801,cat 127802,automobile 127803,frog 127804,ship 127805,dog 127806,horse 127807,deer 127808,bird 127809,ship 127810,dog 127811,frog 127812,ship 127813,cat 127814,deer 127815,dog 127816,bird 127817,deer 127818,cat 127819,deer 127820,bird 127821,deer 127822,automobile 127823,airplane 127824,frog 127825,deer 127826,airplane 127827,frog 127828,automobile 127829,airplane 127830,cat 127831,horse 127832,automobile 127833,airplane 127834,frog 127835,frog 127836,automobile 127837,frog 127838,truck 127839,horse 127840,frog 127841,dog 127842,ship 127843,horse 127844,ship 127845,deer 127846,deer 127847,cat 127848,deer 127849,frog 127850,bird 127851,deer 127852,cat 127853,bird 127854,truck 127855,frog 127856,airplane 127857,airplane 127858,dog 127859,airplane 127860,horse 127861,horse 127862,bird 127863,airplane 127864,airplane 127865,frog 127866,dog 127867,automobile 127868,automobile 127869,bird 127870,bird 127871,ship 127872,cat 127873,bird 127874,cat 127875,horse 127876,bird 127877,cat 127878,dog 127879,horse 127880,airplane 127881,bird 127882,deer 127883,deer 127884,horse 127885,airplane 127886,frog 127887,deer 127888,horse 127889,horse 127890,frog 127891,dog 127892,cat 127893,deer 127894,dog 127895,bird 127896,frog 127897,cat 127898,truck 127899,airplane 127900,cat 127901,airplane 127902,dog 127903,dog 127904,horse 127905,truck 127906,automobile 127907,frog 127908,frog 127909,truck 127910,frog 127911,deer 127912,dog 127913,horse 127914,cat 127915,horse 127916,ship 127917,airplane 127918,frog 127919,dog 127920,deer 127921,bird 127922,bird 127923,dog 127924,ship 127925,automobile 127926,truck 127927,ship 127928,cat 127929,ship 127930,truck 127931,cat 127932,frog 127933,dog 127934,airplane 127935,ship 127936,dog 127937,automobile 127938,deer 127939,frog 127940,dog 127941,automobile 127942,dog 127943,deer 127944,deer 127945,airplane 127946,frog 127947,deer 127948,deer 127949,frog 127950,dog 127951,horse 127952,frog 127953,cat 127954,ship 127955,automobile 127956,truck 127957,dog 127958,airplane 127959,deer 127960,bird 127961,airplane 127962,horse 127963,dog 127964,deer 127965,frog 127966,automobile 127967,cat 127968,cat 127969,automobile 127970,deer 127971,frog 127972,horse 127973,bird 127974,truck 127975,frog 127976,bird 127977,deer 127978,dog 127979,cat 127980,ship 127981,cat 127982,dog 127983,bird 127984,frog 127985,ship 127986,frog 127987,ship 127988,frog 127989,frog 127990,frog 127991,ship 127992,frog 127993,cat 127994,horse 127995,ship 127996,cat 127997,deer 127998,truck 127999,cat 128000,truck 128001,automobile 128002,ship 128003,ship 128004,horse 128005,automobile 128006,cat 128007,truck 128008,dog 128009,truck 128010,dog 128011,frog 128012,dog 128013,dog 128014,horse 128015,cat 128016,truck 128017,frog 128018,dog 128019,frog 128020,automobile 128021,truck 128022,dog 128023,dog 128024,bird 128025,airplane 128026,truck 128027,frog 128028,airplane 128029,horse 128030,airplane 128031,deer 128032,frog 128033,cat 128034,cat 128035,truck 128036,deer 128037,deer 128038,deer 128039,truck 128040,cat 128041,cat 128042,ship 128043,automobile 128044,horse 128045,horse 128046,cat 128047,truck 128048,cat 128049,bird 128050,cat 128051,frog 128052,cat 128053,deer 128054,airplane 128055,automobile 128056,cat 128057,deer 128058,truck 128059,deer 128060,deer 128061,dog 128062,automobile 128063,horse 128064,bird 128065,cat 128066,dog 128067,ship 128068,frog 128069,airplane 128070,horse 128071,airplane 128072,airplane 128073,automobile 128074,airplane 128075,horse 128076,dog 128077,frog 128078,automobile 128079,cat 128080,cat 128081,bird 128082,horse 128083,cat 128084,automobile 128085,cat 128086,cat 128087,automobile 128088,truck 128089,cat 128090,frog 128091,frog 128092,frog 128093,truck 128094,deer 128095,cat 128096,frog 128097,cat 128098,ship 128099,cat 128100,horse 128101,ship 128102,horse 128103,airplane 128104,deer 128105,airplane 128106,ship 128107,bird 128108,bird 128109,horse 128110,automobile 128111,deer 128112,dog 128113,deer 128114,deer 128115,cat 128116,cat 128117,bird 128118,bird 128119,cat 128120,dog 128121,deer 128122,frog 128123,frog 128124,airplane 128125,truck 128126,deer 128127,cat 128128,deer 128129,frog 128130,ship 128131,frog 128132,airplane 128133,dog 128134,airplane 128135,cat 128136,bird 128137,deer 128138,horse 128139,automobile 128140,bird 128141,ship 128142,cat 128143,cat 128144,cat 128145,truck 128146,airplane 128147,automobile 128148,dog 128149,cat 128150,automobile 128151,dog 128152,airplane 128153,frog 128154,ship 128155,cat 128156,horse 128157,automobile 128158,frog 128159,cat 128160,cat 128161,horse 128162,automobile 128163,truck 128164,truck 128165,cat 128166,bird 128167,dog 128168,airplane 128169,deer 128170,deer 128171,truck 128172,truck 128173,bird 128174,automobile 128175,dog 128176,deer 128177,deer 128178,bird 128179,airplane 128180,dog 128181,airplane 128182,dog 128183,truck 128184,airplane 128185,ship 128186,airplane 128187,deer 128188,bird 128189,ship 128190,deer 128191,deer 128192,cat 128193,airplane 128194,bird 128195,automobile 128196,frog 128197,bird 128198,bird 128199,automobile 128200,dog 128201,truck 128202,cat 128203,frog 128204,bird 128205,bird 128206,bird 128207,frog 128208,airplane 128209,ship 128210,horse 128211,automobile 128212,ship 128213,truck 128214,deer 128215,truck 128216,truck 128217,truck 128218,automobile 128219,frog 128220,frog 128221,deer 128222,deer 128223,horse 128224,cat 128225,frog 128226,airplane 128227,frog 128228,ship 128229,frog 128230,deer 128231,deer 128232,deer 128233,horse 128234,frog 128235,deer 128236,frog 128237,ship 128238,frog 128239,dog 128240,dog 128241,horse 128242,deer 128243,horse 128244,cat 128245,truck 128246,airplane 128247,cat 128248,bird 128249,cat 128250,deer 128251,cat 128252,automobile 128253,truck 128254,frog 128255,airplane 128256,frog 128257,truck 128258,dog 128259,automobile 128260,truck 128261,airplane 128262,automobile 128263,dog 128264,horse 128265,cat 128266,frog 128267,frog 128268,deer 128269,ship 128270,cat 128271,deer 128272,frog 128273,airplane 128274,horse 128275,bird 128276,horse 128277,deer 128278,cat 128279,cat 128280,frog 128281,ship 128282,horse 128283,cat 128284,automobile 128285,deer 128286,ship 128287,horse 128288,cat 128289,automobile 128290,truck 128291,frog 128292,ship 128293,deer 128294,frog 128295,bird 128296,bird 128297,cat 128298,deer 128299,horse 128300,airplane 128301,horse 128302,deer 128303,horse 128304,dog 128305,truck 128306,cat 128307,truck 128308,airplane 128309,truck 128310,deer 128311,frog 128312,frog 128313,deer 128314,frog 128315,bird 128316,frog 128317,automobile 128318,automobile 128319,truck 128320,bird 128321,dog 128322,frog 128323,dog 128324,cat 128325,automobile 128326,horse 128327,ship 128328,cat 128329,dog 128330,truck 128331,truck 128332,bird 128333,horse 128334,truck 128335,dog 128336,dog 128337,truck 128338,dog 128339,dog 128340,frog 128341,dog 128342,horse 128343,cat 128344,cat 128345,deer 128346,ship 128347,cat 128348,dog 128349,bird 128350,horse 128351,frog 128352,bird 128353,cat 128354,automobile 128355,airplane 128356,cat 128357,ship 128358,bird 128359,horse 128360,bird 128361,airplane 128362,deer 128363,truck 128364,truck 128365,horse 128366,deer 128367,truck 128368,horse 128369,deer 128370,ship 128371,deer 128372,horse 128373,truck 128374,dog 128375,truck 128376,automobile 128377,frog 128378,truck 128379,airplane 128380,horse 128381,truck 128382,deer 128383,dog 128384,truck 128385,bird 128386,bird 128387,deer 128388,deer 128389,truck 128390,dog 128391,airplane 128392,deer 128393,automobile 128394,deer 128395,cat 128396,truck 128397,deer 128398,bird 128399,automobile 128400,deer 128401,horse 128402,frog 128403,truck 128404,ship 128405,airplane 128406,horse 128407,automobile 128408,truck 128409,frog 128410,truck 128411,automobile 128412,ship 128413,deer 128414,truck 128415,ship 128416,bird 128417,cat 128418,deer 128419,cat 128420,horse 128421,ship 128422,ship 128423,horse 128424,airplane 128425,frog 128426,deer 128427,horse 128428,dog 128429,cat 128430,truck 128431,automobile 128432,frog 128433,frog 128434,airplane 128435,airplane 128436,deer 128437,dog 128438,deer 128439,bird 128440,truck 128441,bird 128442,cat 128443,horse 128444,horse 128445,cat 128446,frog 128447,deer 128448,truck 128449,ship 128450,truck 128451,ship 128452,frog 128453,bird 128454,dog 128455,cat 128456,horse 128457,horse 128458,cat 128459,airplane 128460,dog 128461,airplane 128462,horse 128463,frog 128464,dog 128465,horse 128466,cat 128467,automobile 128468,cat 128469,ship 128470,deer 128471,dog 128472,automobile 128473,horse 128474,truck 128475,deer 128476,airplane 128477,airplane 128478,deer 128479,deer 128480,frog 128481,dog 128482,frog 128483,horse 128484,bird 128485,ship 128486,deer 128487,bird 128488,bird 128489,bird 128490,dog 128491,airplane 128492,deer 128493,airplane 128494,bird 128495,deer 128496,cat 128497,airplane 128498,cat 128499,cat 128500,airplane 128501,deer 128502,deer 128503,horse 128504,deer 128505,airplane 128506,airplane 128507,truck 128508,airplane 128509,horse 128510,bird 128511,truck 128512,horse 128513,frog 128514,horse 128515,truck 128516,horse 128517,dog 128518,cat 128519,airplane 128520,deer 128521,deer 128522,dog 128523,bird 128524,ship 128525,deer 128526,horse 128527,ship 128528,frog 128529,deer 128530,deer 128531,bird 128532,horse 128533,cat 128534,truck 128535,ship 128536,bird 128537,cat 128538,airplane 128539,deer 128540,automobile 128541,ship 128542,truck 128543,airplane 128544,truck 128545,cat 128546,frog 128547,frog 128548,truck 128549,automobile 128550,dog 128551,frog 128552,automobile 128553,frog 128554,horse 128555,cat 128556,bird 128557,horse 128558,truck 128559,truck 128560,automobile 128561,horse 128562,dog 128563,dog 128564,horse 128565,frog 128566,deer 128567,horse 128568,frog 128569,deer 128570,horse 128571,truck 128572,frog 128573,truck 128574,ship 128575,automobile 128576,deer 128577,ship 128578,truck 128579,cat 128580,horse 128581,horse 128582,bird 128583,cat 128584,cat 128585,automobile 128586,frog 128587,deer 128588,deer 128589,horse 128590,truck 128591,bird 128592,airplane 128593,automobile 128594,dog 128595,horse 128596,bird 128597,dog 128598,frog 128599,cat 128600,cat 128601,ship 128602,airplane 128603,dog 128604,dog 128605,frog 128606,airplane 128607,cat 128608,automobile 128609,bird 128610,ship 128611,frog 128612,frog 128613,dog 128614,deer 128615,ship 128616,deer 128617,airplane 128618,truck 128619,cat 128620,deer 128621,automobile 128622,cat 128623,frog 128624,frog 128625,truck 128626,cat 128627,cat 128628,frog 128629,frog 128630,deer 128631,truck 128632,deer 128633,frog 128634,frog 128635,cat 128636,automobile 128637,deer 128638,horse 128639,ship 128640,cat 128641,ship 128642,airplane 128643,dog 128644,airplane 128645,cat 128646,airplane 128647,frog 128648,cat 128649,cat 128650,cat 128651,ship 128652,airplane 128653,deer 128654,truck 128655,horse 128656,dog 128657,horse 128658,truck 128659,frog 128660,dog 128661,deer 128662,bird 128663,dog 128664,cat 128665,ship 128666,ship 128667,cat 128668,deer 128669,deer 128670,deer 128671,bird 128672,deer 128673,cat 128674,ship 128675,frog 128676,truck 128677,dog 128678,deer 128679,horse 128680,ship 128681,airplane 128682,truck 128683,truck 128684,ship 128685,dog 128686,airplane 128687,frog 128688,bird 128689,ship 128690,frog 128691,ship 128692,airplane 128693,cat 128694,cat 128695,frog 128696,automobile 128697,deer 128698,horse 128699,airplane 128700,truck 128701,airplane 128702,horse 128703,frog 128704,deer 128705,deer 128706,truck 128707,horse 128708,deer 128709,deer 128710,dog 128711,horse 128712,automobile 128713,cat 128714,frog 128715,horse 128716,ship 128717,cat 128718,horse 128719,bird 128720,frog 128721,airplane 128722,frog 128723,airplane 128724,frog 128725,truck 128726,truck 128727,bird 128728,dog 128729,bird 128730,frog 128731,dog 128732,dog 128733,frog 128734,deer 128735,horse 128736,cat 128737,cat 128738,horse 128739,bird 128740,truck 128741,airplane 128742,airplane 128743,frog 128744,truck 128745,bird 128746,truck 128747,deer 128748,horse 128749,truck 128750,dog 128751,automobile 128752,automobile 128753,dog 128754,horse 128755,cat 128756,dog 128757,horse 128758,frog 128759,truck 128760,bird 128761,automobile 128762,cat 128763,bird 128764,airplane 128765,deer 128766,horse 128767,bird 128768,frog 128769,cat 128770,deer 128771,airplane 128772,horse 128773,truck 128774,cat 128775,deer 128776,airplane 128777,cat 128778,automobile 128779,bird 128780,dog 128781,bird 128782,frog 128783,airplane 128784,horse 128785,airplane 128786,cat 128787,cat 128788,ship 128789,truck 128790,airplane 128791,truck 128792,bird 128793,bird 128794,dog 128795,frog 128796,ship 128797,dog 128798,horse 128799,deer 128800,bird 128801,bird 128802,ship 128803,bird 128804,dog 128805,bird 128806,automobile 128807,dog 128808,airplane 128809,airplane 128810,ship 128811,horse 128812,frog 128813,truck 128814,dog 128815,truck 128816,airplane 128817,cat 128818,cat 128819,deer 128820,dog 128821,cat 128822,ship 128823,bird 128824,frog 128825,truck 128826,automobile 128827,deer 128828,bird 128829,cat 128830,deer 128831,bird 128832,automobile 128833,dog 128834,bird 128835,frog 128836,bird 128837,truck 128838,dog 128839,cat 128840,cat 128841,dog 128842,ship 128843,truck 128844,automobile 128845,bird 128846,airplane 128847,dog 128848,dog 128849,automobile 128850,dog 128851,deer 128852,horse 128853,cat 128854,airplane 128855,dog 128856,horse 128857,automobile 128858,bird 128859,airplane 128860,ship 128861,ship 128862,dog 128863,deer 128864,horse 128865,horse 128866,airplane 128867,deer 128868,truck 128869,truck 128870,frog 128871,frog 128872,airplane 128873,deer 128874,deer 128875,airplane 128876,bird 128877,frog 128878,dog 128879,automobile 128880,ship 128881,deer 128882,bird 128883,dog 128884,deer 128885,truck 128886,frog 128887,deer 128888,ship 128889,dog 128890,bird 128891,deer 128892,automobile 128893,dog 128894,ship 128895,ship 128896,ship 128897,airplane 128898,airplane 128899,ship 128900,deer 128901,airplane 128902,ship 128903,frog 128904,cat 128905,frog 128906,bird 128907,deer 128908,frog 128909,dog 128910,automobile 128911,frog 128912,dog 128913,bird 128914,ship 128915,horse 128916,airplane 128917,horse 128918,frog 128919,truck 128920,deer 128921,deer 128922,truck 128923,cat 128924,truck 128925,airplane 128926,truck 128927,airplane 128928,bird 128929,truck 128930,bird 128931,dog 128932,horse 128933,truck 128934,ship 128935,ship 128936,cat 128937,airplane 128938,airplane 128939,deer 128940,ship 128941,dog 128942,cat 128943,dog 128944,frog 128945,deer 128946,truck 128947,ship 128948,deer 128949,horse 128950,horse 128951,ship 128952,horse 128953,truck 128954,frog 128955,horse 128956,truck 128957,ship 128958,frog 128959,frog 128960,horse 128961,truck 128962,frog 128963,cat 128964,deer 128965,bird 128966,automobile 128967,cat 128968,frog 128969,frog 128970,frog 128971,cat 128972,cat 128973,airplane 128974,deer 128975,ship 128976,deer 128977,automobile 128978,truck 128979,truck 128980,horse 128981,deer 128982,horse 128983,airplane 128984,dog 128985,frog 128986,deer 128987,truck 128988,dog 128989,horse 128990,automobile 128991,airplane 128992,dog 128993,deer 128994,bird 128995,automobile 128996,airplane 128997,deer 128998,horse 128999,automobile 129000,frog 129001,horse 129002,horse 129003,frog 129004,horse 129005,cat 129006,horse 129007,bird 129008,truck 129009,bird 129010,cat 129011,horse 129012,truck 129013,airplane 129014,cat 129015,cat 129016,ship 129017,frog 129018,airplane 129019,bird 129020,truck 129021,truck 129022,automobile 129023,truck 129024,deer 129025,bird 129026,bird 129027,truck 129028,airplane 129029,deer 129030,cat 129031,deer 129032,automobile 129033,deer 129034,ship 129035,horse 129036,ship 129037,airplane 129038,horse 129039,cat 129040,deer 129041,truck 129042,dog 129043,cat 129044,deer 129045,frog 129046,airplane 129047,ship 129048,horse 129049,truck 129050,ship 129051,cat 129052,airplane 129053,frog 129054,deer 129055,ship 129056,ship 129057,deer 129058,truck 129059,bird 129060,airplane 129061,cat 129062,horse 129063,airplane 129064,airplane 129065,deer 129066,airplane 129067,truck 129068,airplane 129069,truck 129070,airplane 129071,truck 129072,cat 129073,frog 129074,truck 129075,horse 129076,airplane 129077,airplane 129078,bird 129079,cat 129080,cat 129081,automobile 129082,ship 129083,dog 129084,frog 129085,deer 129086,airplane 129087,airplane 129088,deer 129089,dog 129090,airplane 129091,truck 129092,ship 129093,ship 129094,automobile 129095,truck 129096,airplane 129097,airplane 129098,horse 129099,horse 129100,airplane 129101,cat 129102,truck 129103,airplane 129104,frog 129105,deer 129106,airplane 129107,truck 129108,automobile 129109,dog 129110,deer 129111,cat 129112,truck 129113,cat 129114,truck 129115,deer 129116,deer 129117,frog 129118,horse 129119,cat 129120,airplane 129121,dog 129122,deer 129123,automobile 129124,ship 129125,ship 129126,truck 129127,horse 129128,deer 129129,deer 129130,frog 129131,horse 129132,horse 129133,deer 129134,deer 129135,horse 129136,deer 129137,truck 129138,truck 129139,cat 129140,cat 129141,deer 129142,deer 129143,dog 129144,automobile 129145,cat 129146,bird 129147,ship 129148,automobile 129149,frog 129150,truck 129151,truck 129152,ship 129153,deer 129154,automobile 129155,dog 129156,frog 129157,frog 129158,deer 129159,frog 129160,automobile 129161,truck 129162,frog 129163,airplane 129164,airplane 129165,deer 129166,bird 129167,deer 129168,horse 129169,frog 129170,ship 129171,ship 129172,frog 129173,automobile 129174,truck 129175,deer 129176,frog 129177,truck 129178,dog 129179,cat 129180,cat 129181,frog 129182,horse 129183,horse 129184,frog 129185,ship 129186,cat 129187,horse 129188,deer 129189,bird 129190,automobile 129191,horse 129192,deer 129193,bird 129194,horse 129195,deer 129196,frog 129197,truck 129198,cat 129199,cat 129200,dog 129201,deer 129202,cat 129203,frog 129204,horse 129205,dog 129206,horse 129207,horse 129208,cat 129209,automobile 129210,deer 129211,airplane 129212,frog 129213,airplane 129214,airplane 129215,dog 129216,bird 129217,truck 129218,cat 129219,airplane 129220,frog 129221,cat 129222,airplane 129223,deer 129224,horse 129225,frog 129226,ship 129227,dog 129228,automobile 129229,truck 129230,airplane 129231,airplane 129232,frog 129233,cat 129234,cat 129235,frog 129236,ship 129237,deer 129238,dog 129239,airplane 129240,truck 129241,truck 129242,bird 129243,cat 129244,frog 129245,bird 129246,ship 129247,cat 129248,bird 129249,frog 129250,frog 129251,bird 129252,deer 129253,bird 129254,horse 129255,cat 129256,horse 129257,truck 129258,deer 129259,ship 129260,dog 129261,frog 129262,horse 129263,truck 129264,deer 129265,deer 129266,truck 129267,dog 129268,frog 129269,ship 129270,dog 129271,cat 129272,airplane 129273,dog 129274,deer 129275,dog 129276,bird 129277,truck 129278,automobile 129279,dog 129280,bird 129281,cat 129282,cat 129283,frog 129284,frog 129285,cat 129286,bird 129287,horse 129288,truck 129289,automobile 129290,truck 129291,dog 129292,truck 129293,frog 129294,deer 129295,truck 129296,horse 129297,cat 129298,airplane 129299,deer 129300,deer 129301,cat 129302,frog 129303,ship 129304,deer 129305,horse 129306,truck 129307,frog 129308,cat 129309,bird 129310,bird 129311,frog 129312,airplane 129313,frog 129314,deer 129315,truck 129316,frog 129317,truck 129318,truck 129319,bird 129320,bird 129321,airplane 129322,truck 129323,dog 129324,automobile 129325,frog 129326,truck 129327,truck 129328,frog 129329,bird 129330,deer 129331,deer 129332,frog 129333,bird 129334,airplane 129335,airplane 129336,dog 129337,frog 129338,dog 129339,bird 129340,bird 129341,ship 129342,bird 129343,airplane 129344,deer 129345,deer 129346,truck 129347,truck 129348,bird 129349,deer 129350,deer 129351,horse 129352,horse 129353,bird 129354,cat 129355,cat 129356,airplane 129357,dog 129358,automobile 129359,deer 129360,deer 129361,deer 129362,ship 129363,truck 129364,bird 129365,dog 129366,bird 129367,deer 129368,deer 129369,bird 129370,ship 129371,automobile 129372,frog 129373,horse 129374,bird 129375,bird 129376,truck 129377,ship 129378,dog 129379,bird 129380,automobile 129381,truck 129382,deer 129383,dog 129384,deer 129385,frog 129386,truck 129387,dog 129388,deer 129389,deer 129390,truck 129391,cat 129392,cat 129393,horse 129394,cat 129395,cat 129396,cat 129397,frog 129398,deer 129399,deer 129400,frog 129401,horse 129402,airplane 129403,airplane 129404,cat 129405,deer 129406,airplane 129407,airplane 129408,truck 129409,airplane 129410,horse 129411,truck 129412,ship 129413,bird 129414,truck 129415,cat 129416,deer 129417,dog 129418,cat 129419,ship 129420,frog 129421,deer 129422,automobile 129423,ship 129424,airplane 129425,deer 129426,horse 129427,frog 129428,dog 129429,cat 129430,truck 129431,dog 129432,cat 129433,dog 129434,dog 129435,horse 129436,frog 129437,horse 129438,cat 129439,cat 129440,ship 129441,dog 129442,bird 129443,frog 129444,truck 129445,bird 129446,deer 129447,airplane 129448,dog 129449,cat 129450,deer 129451,cat 129452,horse 129453,deer 129454,dog 129455,dog 129456,dog 129457,airplane 129458,deer 129459,deer 129460,deer 129461,horse 129462,bird 129463,bird 129464,deer 129465,bird 129466,bird 129467,truck 129468,automobile 129469,cat 129470,frog 129471,airplane 129472,dog 129473,bird 129474,airplane 129475,deer 129476,dog 129477,dog 129478,automobile 129479,ship 129480,airplane 129481,automobile 129482,frog 129483,cat 129484,horse 129485,cat 129486,deer 129487,frog 129488,cat 129489,ship 129490,dog 129491,dog 129492,airplane 129493,cat 129494,frog 129495,bird 129496,deer 129497,cat 129498,deer 129499,truck 129500,ship 129501,ship 129502,horse 129503,horse 129504,horse 129505,cat 129506,automobile 129507,cat 129508,automobile 129509,cat 129510,deer 129511,frog 129512,ship 129513,airplane 129514,airplane 129515,cat 129516,frog 129517,airplane 129518,frog 129519,ship 129520,frog 129521,truck 129522,truck 129523,bird 129524,dog 129525,airplane 129526,cat 129527,horse 129528,bird 129529,truck 129530,truck 129531,ship 129532,airplane 129533,cat 129534,airplane 129535,airplane 129536,dog 129537,cat 129538,ship 129539,truck 129540,deer 129541,ship 129542,horse 129543,bird 129544,airplane 129545,dog 129546,frog 129547,bird 129548,cat 129549,dog 129550,ship 129551,deer 129552,bird 129553,dog 129554,ship 129555,deer 129556,bird 129557,truck 129558,horse 129559,frog 129560,truck 129561,frog 129562,horse 129563,automobile 129564,deer 129565,deer 129566,dog 129567,ship 129568,cat 129569,frog 129570,frog 129571,horse 129572,truck 129573,horse 129574,deer 129575,deer 129576,cat 129577,dog 129578,deer 129579,automobile 129580,automobile 129581,frog 129582,deer 129583,dog 129584,cat 129585,cat 129586,bird 129587,truck 129588,horse 129589,cat 129590,ship 129591,automobile 129592,cat 129593,horse 129594,ship 129595,dog 129596,bird 129597,dog 129598,truck 129599,airplane 129600,frog 129601,bird 129602,ship 129603,horse 129604,bird 129605,cat 129606,bird 129607,ship 129608,deer 129609,cat 129610,automobile 129611,horse 129612,deer 129613,bird 129614,deer 129615,truck 129616,bird 129617,airplane 129618,airplane 129619,airplane 129620,horse 129621,horse 129622,dog 129623,horse 129624,ship 129625,deer 129626,automobile 129627,dog 129628,dog 129629,truck 129630,airplane 129631,automobile 129632,deer 129633,horse 129634,ship 129635,truck 129636,ship 129637,frog 129638,bird 129639,cat 129640,deer 129641,frog 129642,automobile 129643,cat 129644,horse 129645,ship 129646,ship 129647,deer 129648,cat 129649,dog 129650,horse 129651,horse 129652,bird 129653,dog 129654,dog 129655,airplane 129656,frog 129657,horse 129658,ship 129659,cat 129660,dog 129661,cat 129662,horse 129663,airplane 129664,dog 129665,ship 129666,dog 129667,truck 129668,dog 129669,bird 129670,horse 129671,horse 129672,dog 129673,bird 129674,dog 129675,bird 129676,ship 129677,frog 129678,horse 129679,cat 129680,dog 129681,cat 129682,bird 129683,airplane 129684,truck 129685,deer 129686,cat 129687,cat 129688,dog 129689,cat 129690,horse 129691,frog 129692,ship 129693,bird 129694,cat 129695,horse 129696,airplane 129697,frog 129698,dog 129699,horse 129700,dog 129701,horse 129702,bird 129703,truck 129704,deer 129705,horse 129706,bird 129707,truck 129708,dog 129709,dog 129710,airplane 129711,bird 129712,airplane 129713,dog 129714,bird 129715,truck 129716,cat 129717,truck 129718,cat 129719,bird 129720,truck 129721,cat 129722,bird 129723,airplane 129724,deer 129725,deer 129726,truck 129727,automobile 129728,airplane 129729,truck 129730,cat 129731,automobile 129732,cat 129733,horse 129734,dog 129735,dog 129736,horse 129737,bird 129738,dog 129739,deer 129740,dog 129741,dog 129742,deer 129743,frog 129744,ship 129745,frog 129746,bird 129747,deer 129748,frog 129749,dog 129750,truck 129751,frog 129752,frog 129753,ship 129754,dog 129755,truck 129756,truck 129757,truck 129758,deer 129759,truck 129760,bird 129761,bird 129762,airplane 129763,cat 129764,cat 129765,deer 129766,deer 129767,airplane 129768,bird 129769,deer 129770,horse 129771,bird 129772,ship 129773,automobile 129774,automobile 129775,frog 129776,frog 129777,deer 129778,deer 129779,truck 129780,frog 129781,truck 129782,airplane 129783,ship 129784,truck 129785,frog 129786,ship 129787,deer 129788,deer 129789,dog 129790,truck 129791,deer 129792,automobile 129793,frog 129794,deer 129795,truck 129796,truck 129797,cat 129798,frog 129799,deer 129800,dog 129801,airplane 129802,deer 129803,airplane 129804,truck 129805,deer 129806,automobile 129807,horse 129808,frog 129809,dog 129810,ship 129811,truck 129812,frog 129813,horse 129814,dog 129815,truck 129816,frog 129817,ship 129818,deer 129819,horse 129820,cat 129821,frog 129822,deer 129823,automobile 129824,cat 129825,horse 129826,frog 129827,frog 129828,airplane 129829,bird 129830,bird 129831,dog 129832,cat 129833,cat 129834,horse 129835,bird 129836,airplane 129837,deer 129838,automobile 129839,cat 129840,dog 129841,truck 129842,airplane 129843,cat 129844,horse 129845,frog 129846,cat 129847,automobile 129848,truck 129849,horse 129850,deer 129851,frog 129852,deer 129853,deer 129854,airplane 129855,deer 129856,bird 129857,airplane 129858,truck 129859,ship 129860,bird 129861,horse 129862,horse 129863,truck 129864,frog 129865,horse 129866,deer 129867,truck 129868,dog 129869,dog 129870,cat 129871,truck 129872,airplane 129873,ship 129874,bird 129875,truck 129876,dog 129877,ship 129878,cat 129879,automobile 129880,airplane 129881,dog 129882,airplane 129883,frog 129884,bird 129885,airplane 129886,automobile 129887,airplane 129888,deer 129889,deer 129890,ship 129891,dog 129892,truck 129893,cat 129894,airplane 129895,ship 129896,cat 129897,truck 129898,deer 129899,truck 129900,dog 129901,cat 129902,frog 129903,horse 129904,deer 129905,deer 129906,airplane 129907,bird 129908,frog 129909,horse 129910,horse 129911,cat 129912,horse 129913,dog 129914,dog 129915,dog 129916,horse 129917,deer 129918,cat 129919,horse 129920,truck 129921,bird 129922,deer 129923,ship 129924,truck 129925,ship 129926,dog 129927,dog 129928,frog 129929,cat 129930,truck 129931,cat 129932,airplane 129933,cat 129934,frog 129935,frog 129936,bird 129937,frog 129938,bird 129939,truck 129940,horse 129941,ship 129942,truck 129943,dog 129944,cat 129945,truck 129946,horse 129947,dog 129948,dog 129949,dog 129950,truck 129951,deer 129952,dog 129953,horse 129954,dog 129955,deer 129956,dog 129957,truck 129958,truck 129959,dog 129960,dog 129961,deer 129962,frog 129963,bird 129964,cat 129965,cat 129966,automobile 129967,horse 129968,bird 129969,deer 129970,ship 129971,truck 129972,automobile 129973,dog 129974,cat 129975,cat 129976,bird 129977,truck 129978,automobile 129979,frog 129980,automobile 129981,frog 129982,horse 129983,dog 129984,dog 129985,bird 129986,dog 129987,airplane 129988,ship 129989,dog 129990,automobile 129991,automobile 129992,bird 129993,deer 129994,automobile 129995,frog 129996,frog 129997,frog 129998,dog 129999,frog 130000,horse 130001,automobile 130002,horse 130003,airplane 130004,airplane 130005,deer 130006,cat 130007,bird 130008,bird 130009,automobile 130010,bird 130011,dog 130012,airplane 130013,truck 130014,automobile 130015,dog 130016,airplane 130017,ship 130018,truck 130019,bird 130020,truck 130021,automobile 130022,ship 130023,dog 130024,truck 130025,truck 130026,deer 130027,cat 130028,bird 130029,airplane 130030,frog 130031,automobile 130032,frog 130033,bird 130034,horse 130035,bird 130036,frog 130037,frog 130038,cat 130039,deer 130040,frog 130041,frog 130042,dog 130043,deer 130044,frog 130045,automobile 130046,bird 130047,frog 130048,horse 130049,truck 130050,horse 130051,deer 130052,horse 130053,bird 130054,cat 130055,truck 130056,truck 130057,airplane 130058,truck 130059,truck 130060,airplane 130061,dog 130062,bird 130063,bird 130064,truck 130065,deer 130066,horse 130067,truck 130068,dog 130069,cat 130070,horse 130071,horse 130072,ship 130073,bird 130074,ship 130075,deer 130076,airplane 130077,dog 130078,cat 130079,truck 130080,airplane 130081,deer 130082,dog 130083,ship 130084,bird 130085,truck 130086,deer 130087,deer 130088,ship 130089,airplane 130090,dog 130091,horse 130092,ship 130093,bird 130094,horse 130095,horse 130096,deer 130097,truck 130098,automobile 130099,airplane 130100,airplane 130101,bird 130102,bird 130103,deer 130104,frog 130105,cat 130106,cat 130107,ship 130108,horse 130109,bird 130110,dog 130111,bird 130112,deer 130113,truck 130114,airplane 130115,ship 130116,cat 130117,truck 130118,deer 130119,cat 130120,airplane 130121,horse 130122,ship 130123,frog 130124,dog 130125,airplane 130126,bird 130127,truck 130128,truck 130129,deer 130130,deer 130131,ship 130132,automobile 130133,dog 130134,airplane 130135,deer 130136,dog 130137,bird 130138,automobile 130139,dog 130140,dog 130141,ship 130142,frog 130143,frog 130144,bird 130145,automobile 130146,automobile 130147,cat 130148,deer 130149,deer 130150,deer 130151,deer 130152,cat 130153,cat 130154,horse 130155,dog 130156,deer 130157,truck 130158,airplane 130159,deer 130160,frog 130161,cat 130162,truck 130163,airplane 130164,horse 130165,truck 130166,airplane 130167,horse 130168,horse 130169,dog 130170,automobile 130171,dog 130172,bird 130173,dog 130174,frog 130175,dog 130176,cat 130177,horse 130178,ship 130179,cat 130180,bird 130181,cat 130182,cat 130183,frog 130184,dog 130185,ship 130186,dog 130187,cat 130188,ship 130189,cat 130190,dog 130191,dog 130192,deer 130193,deer 130194,truck 130195,dog 130196,deer 130197,truck 130198,airplane 130199,automobile 130200,airplane 130201,frog 130202,dog 130203,bird 130204,bird 130205,truck 130206,dog 130207,dog 130208,horse 130209,frog 130210,ship 130211,truck 130212,deer 130213,cat 130214,dog 130215,bird 130216,ship 130217,truck 130218,bird 130219,horse 130220,cat 130221,bird 130222,ship 130223,dog 130224,dog 130225,ship 130226,horse 130227,cat 130228,cat 130229,dog 130230,dog 130231,ship 130232,deer 130233,horse 130234,cat 130235,ship 130236,cat 130237,horse 130238,truck 130239,dog 130240,ship 130241,horse 130242,deer 130243,dog 130244,airplane 130245,bird 130246,deer 130247,frog 130248,cat 130249,horse 130250,dog 130251,horse 130252,truck 130253,cat 130254,horse 130255,ship 130256,truck 130257,automobile 130258,automobile 130259,truck 130260,frog 130261,bird 130262,deer 130263,frog 130264,ship 130265,automobile 130266,cat 130267,deer 130268,dog 130269,frog 130270,deer 130271,dog 130272,dog 130273,deer 130274,automobile 130275,frog 130276,cat 130277,cat 130278,truck 130279,deer 130280,horse 130281,cat 130282,dog 130283,airplane 130284,cat 130285,truck 130286,deer 130287,automobile 130288,truck 130289,dog 130290,frog 130291,deer 130292,ship 130293,truck 130294,ship 130295,bird 130296,ship 130297,frog 130298,cat 130299,automobile 130300,horse 130301,frog 130302,cat 130303,automobile 130304,cat 130305,airplane 130306,dog 130307,frog 130308,truck 130309,frog 130310,cat 130311,cat 130312,ship 130313,automobile 130314,truck 130315,bird 130316,horse 130317,ship 130318,cat 130319,cat 130320,frog 130321,horse 130322,frog 130323,truck 130324,horse 130325,automobile 130326,frog 130327,frog 130328,dog 130329,ship 130330,dog 130331,cat 130332,deer 130333,truck 130334,ship 130335,airplane 130336,dog 130337,cat 130338,truck 130339,truck 130340,bird 130341,deer 130342,bird 130343,dog 130344,bird 130345,truck 130346,frog 130347,horse 130348,truck 130349,frog 130350,horse 130351,ship 130352,deer 130353,bird 130354,cat 130355,deer 130356,airplane 130357,frog 130358,dog 130359,dog 130360,truck 130361,frog 130362,automobile 130363,bird 130364,airplane 130365,frog 130366,cat 130367,deer 130368,horse 130369,truck 130370,airplane 130371,automobile 130372,horse 130373,bird 130374,ship 130375,deer 130376,horse 130377,cat 130378,cat 130379,airplane 130380,ship 130381,deer 130382,airplane 130383,cat 130384,automobile 130385,horse 130386,cat 130387,bird 130388,cat 130389,airplane 130390,truck 130391,bird 130392,bird 130393,frog 130394,deer 130395,airplane 130396,deer 130397,dog 130398,dog 130399,deer 130400,automobile 130401,airplane 130402,frog 130403,airplane 130404,cat 130405,deer 130406,cat 130407,horse 130408,bird 130409,truck 130410,automobile 130411,horse 130412,truck 130413,deer 130414,truck 130415,cat 130416,ship 130417,airplane 130418,cat 130419,ship 130420,deer 130421,ship 130422,deer 130423,bird 130424,truck 130425,truck 130426,bird 130427,bird 130428,frog 130429,bird 130430,cat 130431,deer 130432,horse 130433,cat 130434,deer 130435,automobile 130436,cat 130437,dog 130438,automobile 130439,horse 130440,ship 130441,airplane 130442,truck 130443,horse 130444,dog 130445,ship 130446,horse 130447,airplane 130448,airplane 130449,truck 130450,bird 130451,cat 130452,frog 130453,deer 130454,dog 130455,ship 130456,deer 130457,deer 130458,truck 130459,automobile 130460,cat 130461,automobile 130462,dog 130463,automobile 130464,frog 130465,ship 130466,dog 130467,dog 130468,cat 130469,airplane 130470,ship 130471,bird 130472,frog 130473,frog 130474,cat 130475,ship 130476,frog 130477,deer 130478,horse 130479,automobile 130480,dog 130481,airplane 130482,truck 130483,ship 130484,horse 130485,horse 130486,bird 130487,ship 130488,automobile 130489,frog 130490,cat 130491,horse 130492,cat 130493,bird 130494,horse 130495,airplane 130496,ship 130497,deer 130498,truck 130499,frog 130500,dog 130501,ship 130502,frog 130503,cat 130504,truck 130505,horse 130506,ship 130507,frog 130508,deer 130509,frog 130510,automobile 130511,deer 130512,cat 130513,ship 130514,frog 130515,bird 130516,cat 130517,cat 130518,ship 130519,horse 130520,airplane 130521,dog 130522,deer 130523,deer 130524,bird 130525,cat 130526,cat 130527,truck 130528,cat 130529,deer 130530,cat 130531,cat 130532,truck 130533,cat 130534,truck 130535,cat 130536,cat 130537,ship 130538,deer 130539,airplane 130540,automobile 130541,frog 130542,bird 130543,frog 130544,frog 130545,ship 130546,horse 130547,frog 130548,cat 130549,frog 130550,automobile 130551,deer 130552,dog 130553,frog 130554,airplane 130555,horse 130556,bird 130557,horse 130558,frog 130559,deer 130560,bird 130561,horse 130562,bird 130563,dog 130564,ship 130565,truck 130566,horse 130567,automobile 130568,automobile 130569,truck 130570,horse 130571,horse 130572,ship 130573,deer 130574,airplane 130575,deer 130576,truck 130577,frog 130578,deer 130579,frog 130580,automobile 130581,airplane 130582,bird 130583,bird 130584,cat 130585,bird 130586,truck 130587,airplane 130588,frog 130589,horse 130590,dog 130591,dog 130592,bird 130593,cat 130594,ship 130595,horse 130596,automobile 130597,deer 130598,bird 130599,cat 130600,cat 130601,deer 130602,truck 130603,airplane 130604,frog 130605,cat 130606,deer 130607,ship 130608,automobile 130609,deer 130610,airplane 130611,airplane 130612,cat 130613,dog 130614,automobile 130615,airplane 130616,dog 130617,frog 130618,automobile 130619,automobile 130620,airplane 130621,deer 130622,deer 130623,bird 130624,frog 130625,truck 130626,cat 130627,cat 130628,frog 130629,frog 130630,ship 130631,truck 130632,cat 130633,deer 130634,frog 130635,deer 130636,horse 130637,bird 130638,deer 130639,frog 130640,deer 130641,ship 130642,cat 130643,deer 130644,bird 130645,deer 130646,airplane 130647,frog 130648,deer 130649,horse 130650,deer 130651,bird 130652,airplane 130653,cat 130654,bird 130655,cat 130656,deer 130657,horse 130658,truck 130659,airplane 130660,airplane 130661,truck 130662,truck 130663,horse 130664,deer 130665,automobile 130666,deer 130667,truck 130668,frog 130669,ship 130670,bird 130671,truck 130672,cat 130673,truck 130674,truck 130675,airplane 130676,ship 130677,ship 130678,automobile 130679,bird 130680,cat 130681,ship 130682,horse 130683,horse 130684,airplane 130685,truck 130686,dog 130687,deer 130688,deer 130689,frog 130690,cat 130691,airplane 130692,deer 130693,dog 130694,bird 130695,airplane 130696,frog 130697,ship 130698,airplane 130699,truck 130700,dog 130701,bird 130702,ship 130703,frog 130704,airplane 130705,truck 130706,deer 130707,deer 130708,deer 130709,airplane 130710,frog 130711,truck 130712,frog 130713,deer 130714,dog 130715,airplane 130716,dog 130717,frog 130718,truck 130719,cat 130720,deer 130721,ship 130722,deer 130723,cat 130724,automobile 130725,dog 130726,bird 130727,truck 130728,horse 130729,dog 130730,airplane 130731,horse 130732,ship 130733,truck 130734,cat 130735,airplane 130736,dog 130737,frog 130738,dog 130739,bird 130740,frog 130741,frog 130742,automobile 130743,frog 130744,horse 130745,dog 130746,horse 130747,automobile 130748,dog 130749,deer 130750,automobile 130751,automobile 130752,airplane 130753,dog 130754,frog 130755,automobile 130756,bird 130757,horse 130758,truck 130759,deer 130760,ship 130761,ship 130762,airplane 130763,ship 130764,bird 130765,frog 130766,dog 130767,deer 130768,deer 130769,bird 130770,truck 130771,deer 130772,frog 130773,truck 130774,ship 130775,dog 130776,frog 130777,bird 130778,horse 130779,truck 130780,truck 130781,dog 130782,deer 130783,deer 130784,frog 130785,truck 130786,automobile 130787,cat 130788,ship 130789,airplane 130790,airplane 130791,airplane 130792,airplane 130793,airplane 130794,horse 130795,truck 130796,automobile 130797,cat 130798,automobile 130799,automobile 130800,deer 130801,cat 130802,frog 130803,automobile 130804,cat 130805,airplane 130806,cat 130807,ship 130808,dog 130809,horse 130810,ship 130811,ship 130812,automobile 130813,frog 130814,frog 130815,airplane 130816,frog 130817,airplane 130818,deer 130819,frog 130820,deer 130821,dog 130822,airplane 130823,dog 130824,bird 130825,dog 130826,bird 130827,dog 130828,airplane 130829,deer 130830,truck 130831,deer 130832,cat 130833,truck 130834,cat 130835,frog 130836,ship 130837,automobile 130838,cat 130839,bird 130840,automobile 130841,airplane 130842,bird 130843,ship 130844,horse 130845,deer 130846,truck 130847,frog 130848,frog 130849,frog 130850,airplane 130851,frog 130852,dog 130853,ship 130854,cat 130855,frog 130856,ship 130857,frog 130858,truck 130859,frog 130860,dog 130861,dog 130862,truck 130863,ship 130864,truck 130865,deer 130866,dog 130867,airplane 130868,dog 130869,ship 130870,bird 130871,truck 130872,deer 130873,ship 130874,dog 130875,frog 130876,automobile 130877,cat 130878,horse 130879,frog 130880,frog 130881,deer 130882,airplane 130883,bird 130884,dog 130885,ship 130886,airplane 130887,horse 130888,deer 130889,truck 130890,cat 130891,cat 130892,horse 130893,frog 130894,deer 130895,airplane 130896,bird 130897,cat 130898,bird 130899,bird 130900,horse 130901,cat 130902,dog 130903,horse 130904,ship 130905,frog 130906,frog 130907,airplane 130908,bird 130909,cat 130910,cat 130911,bird 130912,airplane 130913,cat 130914,cat 130915,horse 130916,deer 130917,horse 130918,automobile 130919,dog 130920,deer 130921,cat 130922,bird 130923,truck 130924,truck 130925,frog 130926,cat 130927,cat 130928,truck 130929,ship 130930,horse 130931,truck 130932,cat 130933,bird 130934,automobile 130935,cat 130936,frog 130937,bird 130938,horse 130939,automobile 130940,ship 130941,deer 130942,ship 130943,truck 130944,airplane 130945,ship 130946,dog 130947,bird 130948,truck 130949,deer 130950,deer 130951,horse 130952,frog 130953,frog 130954,bird 130955,ship 130956,deer 130957,frog 130958,airplane 130959,frog 130960,deer 130961,horse 130962,airplane 130963,deer 130964,dog 130965,frog 130966,frog 130967,horse 130968,automobile 130969,truck 130970,frog 130971,airplane 130972,dog 130973,cat 130974,bird 130975,deer 130976,ship 130977,dog 130978,horse 130979,dog 130980,ship 130981,cat 130982,cat 130983,horse 130984,dog 130985,dog 130986,automobile 130987,truck 130988,cat 130989,truck 130990,horse 130991,frog 130992,horse 130993,deer 130994,dog 130995,ship 130996,ship 130997,frog 130998,deer 130999,deer 131000,deer 131001,horse 131002,automobile 131003,horse 131004,deer 131005,bird 131006,truck 131007,ship 131008,automobile 131009,dog 131010,deer 131011,airplane 131012,cat 131013,frog 131014,ship 131015,airplane 131016,ship 131017,airplane 131018,deer 131019,frog 131020,ship 131021,deer 131022,airplane 131023,deer 131024,cat 131025,truck 131026,dog 131027,ship 131028,frog 131029,bird 131030,frog 131031,dog 131032,frog 131033,frog 131034,airplane 131035,truck 131036,deer 131037,deer 131038,deer 131039,horse 131040,automobile 131041,bird 131042,cat 131043,bird 131044,truck 131045,bird 131046,deer 131047,truck 131048,truck 131049,frog 131050,airplane 131051,deer 131052,frog 131053,dog 131054,automobile 131055,dog 131056,horse 131057,horse 131058,frog 131059,cat 131060,frog 131061,deer 131062,deer 131063,airplane 131064,automobile 131065,automobile 131066,truck 131067,deer 131068,deer 131069,frog 131070,airplane 131071,dog 131072,ship 131073,frog 131074,airplane 131075,deer 131076,automobile 131077,deer 131078,cat 131079,dog 131080,bird 131081,bird 131082,truck 131083,bird 131084,frog 131085,dog 131086,dog 131087,deer 131088,automobile 131089,cat 131090,dog 131091,horse 131092,dog 131093,horse 131094,dog 131095,truck 131096,dog 131097,airplane 131098,bird 131099,bird 131100,airplane 131101,dog 131102,ship 131103,deer 131104,bird 131105,frog 131106,airplane 131107,deer 131108,automobile 131109,cat 131110,horse 131111,horse 131112,cat 131113,bird 131114,cat 131115,bird 131116,frog 131117,ship 131118,airplane 131119,dog 131120,ship 131121,cat 131122,horse 131123,horse 131124,dog 131125,bird 131126,ship 131127,deer 131128,truck 131129,cat 131130,frog 131131,truck 131132,cat 131133,truck 131134,frog 131135,dog 131136,automobile 131137,ship 131138,truck 131139,automobile 131140,airplane 131141,deer 131142,cat 131143,automobile 131144,airplane 131145,dog 131146,dog 131147,deer 131148,horse 131149,dog 131150,airplane 131151,dog 131152,ship 131153,airplane 131154,airplane 131155,horse 131156,bird 131157,frog 131158,truck 131159,bird 131160,truck 131161,ship 131162,deer 131163,deer 131164,deer 131165,dog 131166,airplane 131167,airplane 131168,truck 131169,airplane 131170,deer 131171,horse 131172,dog 131173,frog 131174,dog 131175,airplane 131176,automobile 131177,deer 131178,horse 131179,bird 131180,deer 131181,dog 131182,cat 131183,horse 131184,horse 131185,frog 131186,airplane 131187,cat 131188,horse 131189,automobile 131190,truck 131191,cat 131192,dog 131193,dog 131194,deer 131195,horse 131196,frog 131197,bird 131198,cat 131199,frog 131200,frog 131201,bird 131202,horse 131203,dog 131204,horse 131205,airplane 131206,airplane 131207,frog 131208,horse 131209,frog 131210,cat 131211,dog 131212,truck 131213,truck 131214,dog 131215,dog 131216,horse 131217,automobile 131218,truck 131219,deer 131220,horse 131221,truck 131222,dog 131223,deer 131224,bird 131225,truck 131226,cat 131227,horse 131228,frog 131229,bird 131230,bird 131231,airplane 131232,bird 131233,cat 131234,frog 131235,bird 131236,ship 131237,deer 131238,airplane 131239,ship 131240,cat 131241,horse 131242,frog 131243,automobile 131244,ship 131245,ship 131246,deer 131247,deer 131248,cat 131249,cat 131250,horse 131251,airplane 131252,horse 131253,truck 131254,frog 131255,ship 131256,deer 131257,automobile 131258,frog 131259,bird 131260,cat 131261,frog 131262,bird 131263,cat 131264,frog 131265,frog 131266,frog 131267,bird 131268,cat 131269,deer 131270,bird 131271,frog 131272,horse 131273,cat 131274,ship 131275,frog 131276,frog 131277,dog 131278,dog 131279,truck 131280,horse 131281,bird 131282,automobile 131283,automobile 131284,truck 131285,automobile 131286,dog 131287,frog 131288,ship 131289,deer 131290,horse 131291,bird 131292,frog 131293,ship 131294,truck 131295,dog 131296,truck 131297,truck 131298,truck 131299,deer 131300,truck 131301,frog 131302,automobile 131303,horse 131304,bird 131305,truck 131306,cat 131307,dog 131308,frog 131309,deer 131310,airplane 131311,truck 131312,cat 131313,horse 131314,ship 131315,bird 131316,automobile 131317,cat 131318,horse 131319,horse 131320,airplane 131321,deer 131322,horse 131323,frog 131324,frog 131325,airplane 131326,truck 131327,deer 131328,truck 131329,bird 131330,truck 131331,horse 131332,dog 131333,dog 131334,dog 131335,dog 131336,automobile 131337,airplane 131338,deer 131339,horse 131340,deer 131341,frog 131342,dog 131343,deer 131344,truck 131345,frog 131346,frog 131347,truck 131348,horse 131349,horse 131350,truck 131351,bird 131352,cat 131353,bird 131354,frog 131355,ship 131356,dog 131357,airplane 131358,bird 131359,cat 131360,dog 131361,horse 131362,deer 131363,cat 131364,cat 131365,horse 131366,deer 131367,truck 131368,airplane 131369,truck 131370,bird 131371,bird 131372,cat 131373,airplane 131374,horse 131375,horse 131376,airplane 131377,deer 131378,truck 131379,cat 131380,cat 131381,airplane 131382,frog 131383,airplane 131384,ship 131385,horse 131386,airplane 131387,horse 131388,horse 131389,cat 131390,airplane 131391,cat 131392,deer 131393,frog 131394,dog 131395,horse 131396,dog 131397,airplane 131398,deer 131399,frog 131400,cat 131401,dog 131402,frog 131403,dog 131404,bird 131405,deer 131406,dog 131407,dog 131408,frog 131409,truck 131410,cat 131411,dog 131412,horse 131413,truck 131414,cat 131415,cat 131416,deer 131417,bird 131418,deer 131419,automobile 131420,automobile 131421,frog 131422,cat 131423,horse 131424,horse 131425,bird 131426,truck 131427,deer 131428,frog 131429,ship 131430,horse 131431,ship 131432,ship 131433,cat 131434,horse 131435,airplane 131436,dog 131437,horse 131438,dog 131439,frog 131440,cat 131441,frog 131442,automobile 131443,automobile 131444,automobile 131445,cat 131446,frog 131447,automobile 131448,truck 131449,horse 131450,automobile 131451,truck 131452,cat 131453,horse 131454,bird 131455,ship 131456,automobile 131457,ship 131458,deer 131459,dog 131460,horse 131461,horse 131462,deer 131463,horse 131464,dog 131465,deer 131466,bird 131467,deer 131468,cat 131469,cat 131470,frog 131471,cat 131472,horse 131473,airplane 131474,dog 131475,horse 131476,truck 131477,cat 131478,dog 131479,frog 131480,deer 131481,frog 131482,cat 131483,horse 131484,bird 131485,cat 131486,horse 131487,truck 131488,ship 131489,horse 131490,ship 131491,bird 131492,deer 131493,deer 131494,horse 131495,horse 131496,airplane 131497,truck 131498,truck 131499,cat 131500,frog 131501,dog 131502,deer 131503,cat 131504,deer 131505,airplane 131506,bird 131507,frog 131508,truck 131509,frog 131510,frog 131511,deer 131512,ship 131513,airplane 131514,truck 131515,deer 131516,ship 131517,truck 131518,airplane 131519,deer 131520,frog 131521,ship 131522,cat 131523,truck 131524,deer 131525,dog 131526,ship 131527,horse 131528,deer 131529,truck 131530,ship 131531,dog 131532,bird 131533,truck 131534,truck 131535,cat 131536,bird 131537,deer 131538,cat 131539,truck 131540,dog 131541,frog 131542,frog 131543,truck 131544,truck 131545,airplane 131546,deer 131547,truck 131548,horse 131549,truck 131550,deer 131551,truck 131552,bird 131553,ship 131554,deer 131555,airplane 131556,automobile 131557,dog 131558,ship 131559,ship 131560,automobile 131561,frog 131562,automobile 131563,horse 131564,frog 131565,dog 131566,airplane 131567,horse 131568,truck 131569,deer 131570,ship 131571,frog 131572,deer 131573,frog 131574,automobile 131575,cat 131576,truck 131577,deer 131578,deer 131579,automobile 131580,horse 131581,cat 131582,cat 131583,frog 131584,airplane 131585,dog 131586,deer 131587,horse 131588,deer 131589,automobile 131590,ship 131591,dog 131592,cat 131593,deer 131594,dog 131595,frog 131596,deer 131597,horse 131598,truck 131599,frog 131600,bird 131601,deer 131602,deer 131603,dog 131604,horse 131605,cat 131606,ship 131607,ship 131608,deer 131609,frog 131610,bird 131611,cat 131612,dog 131613,dog 131614,automobile 131615,frog 131616,deer 131617,truck 131618,deer 131619,automobile 131620,cat 131621,horse 131622,cat 131623,deer 131624,airplane 131625,dog 131626,horse 131627,truck 131628,automobile 131629,truck 131630,deer 131631,dog 131632,truck 131633,dog 131634,bird 131635,bird 131636,ship 131637,deer 131638,airplane 131639,ship 131640,cat 131641,cat 131642,horse 131643,frog 131644,ship 131645,truck 131646,horse 131647,frog 131648,truck 131649,truck 131650,horse 131651,automobile 131652,cat 131653,airplane 131654,deer 131655,deer 131656,horse 131657,deer 131658,deer 131659,airplane 131660,dog 131661,truck 131662,dog 131663,cat 131664,cat 131665,cat 131666,truck 131667,deer 131668,deer 131669,deer 131670,airplane 131671,horse 131672,deer 131673,frog 131674,deer 131675,frog 131676,deer 131677,dog 131678,dog 131679,horse 131680,frog 131681,airplane 131682,horse 131683,cat 131684,horse 131685,truck 131686,cat 131687,cat 131688,deer 131689,airplane 131690,horse 131691,dog 131692,bird 131693,airplane 131694,frog 131695,cat 131696,ship 131697,cat 131698,truck 131699,ship 131700,frog 131701,bird 131702,truck 131703,ship 131704,frog 131705,bird 131706,truck 131707,deer 131708,airplane 131709,horse 131710,truck 131711,bird 131712,deer 131713,bird 131714,bird 131715,bird 131716,dog 131717,truck 131718,airplane 131719,truck 131720,bird 131721,cat 131722,airplane 131723,frog 131724,cat 131725,frog 131726,deer 131727,deer 131728,deer 131729,cat 131730,truck 131731,frog 131732,cat 131733,truck 131734,airplane 131735,cat 131736,horse 131737,ship 131738,cat 131739,frog 131740,cat 131741,horse 131742,bird 131743,truck 131744,automobile 131745,bird 131746,cat 131747,deer 131748,deer 131749,horse 131750,bird 131751,cat 131752,truck 131753,deer 131754,truck 131755,truck 131756,deer 131757,deer 131758,cat 131759,airplane 131760,frog 131761,bird 131762,deer 131763,automobile 131764,horse 131765,truck 131766,airplane 131767,cat 131768,frog 131769,frog 131770,ship 131771,deer 131772,ship 131773,bird 131774,deer 131775,dog 131776,horse 131777,deer 131778,truck 131779,airplane 131780,ship 131781,dog 131782,ship 131783,deer 131784,horse 131785,bird 131786,frog 131787,bird 131788,dog 131789,airplane 131790,bird 131791,horse 131792,frog 131793,airplane 131794,frog 131795,cat 131796,automobile 131797,dog 131798,cat 131799,airplane 131800,bird 131801,deer 131802,airplane 131803,dog 131804,cat 131805,airplane 131806,frog 131807,deer 131808,deer 131809,ship 131810,bird 131811,ship 131812,truck 131813,horse 131814,airplane 131815,bird 131816,deer 131817,deer 131818,frog 131819,dog 131820,cat 131821,airplane 131822,automobile 131823,deer 131824,dog 131825,dog 131826,deer 131827,deer 131828,bird 131829,deer 131830,deer 131831,bird 131832,ship 131833,truck 131834,truck 131835,deer 131836,deer 131837,deer 131838,frog 131839,bird 131840,deer 131841,deer 131842,cat 131843,horse 131844,deer 131845,cat 131846,dog 131847,automobile 131848,ship 131849,truck 131850,dog 131851,truck 131852,truck 131853,cat 131854,cat 131855,bird 131856,deer 131857,horse 131858,cat 131859,automobile 131860,airplane 131861,dog 131862,horse 131863,bird 131864,bird 131865,dog 131866,deer 131867,deer 131868,dog 131869,dog 131870,dog 131871,ship 131872,horse 131873,deer 131874,automobile 131875,bird 131876,frog 131877,deer 131878,deer 131879,deer 131880,deer 131881,deer 131882,horse 131883,deer 131884,dog 131885,deer 131886,airplane 131887,deer 131888,bird 131889,cat 131890,dog 131891,bird 131892,truck 131893,ship 131894,truck 131895,airplane 131896,cat 131897,airplane 131898,deer 131899,frog 131900,deer 131901,truck 131902,automobile 131903,deer 131904,dog 131905,cat 131906,airplane 131907,deer 131908,automobile 131909,airplane 131910,deer 131911,frog 131912,deer 131913,ship 131914,airplane 131915,bird 131916,cat 131917,airplane 131918,dog 131919,automobile 131920,ship 131921,deer 131922,airplane 131923,cat 131924,truck 131925,airplane 131926,deer 131927,bird 131928,frog 131929,cat 131930,horse 131931,deer 131932,horse 131933,frog 131934,deer 131935,cat 131936,ship 131937,automobile 131938,cat 131939,ship 131940,frog 131941,cat 131942,truck 131943,frog 131944,cat 131945,truck 131946,ship 131947,frog 131948,automobile 131949,airplane 131950,horse 131951,frog 131952,airplane 131953,airplane 131954,airplane 131955,horse 131956,frog 131957,deer 131958,ship 131959,truck 131960,ship 131961,ship 131962,horse 131963,deer 131964,airplane 131965,cat 131966,airplane 131967,dog 131968,truck 131969,dog 131970,frog 131971,ship 131972,bird 131973,frog 131974,bird 131975,cat 131976,bird 131977,automobile 131978,truck 131979,horse 131980,frog 131981,dog 131982,airplane 131983,cat 131984,cat 131985,horse 131986,horse 131987,cat 131988,cat 131989,automobile 131990,airplane 131991,deer 131992,horse 131993,truck 131994,deer 131995,ship 131996,bird 131997,dog 131998,airplane 131999,bird 132000,frog 132001,horse 132002,horse 132003,deer 132004,frog 132005,automobile 132006,bird 132007,cat 132008,deer 132009,dog 132010,horse 132011,horse 132012,frog 132013,ship 132014,airplane 132015,dog 132016,horse 132017,truck 132018,bird 132019,deer 132020,frog 132021,deer 132022,deer 132023,deer 132024,cat 132025,cat 132026,deer 132027,cat 132028,cat 132029,dog 132030,truck 132031,automobile 132032,dog 132033,frog 132034,ship 132035,cat 132036,automobile 132037,frog 132038,cat 132039,airplane 132040,truck 132041,deer 132042,frog 132043,deer 132044,ship 132045,ship 132046,automobile 132047,dog 132048,frog 132049,frog 132050,automobile 132051,cat 132052,dog 132053,automobile 132054,ship 132055,ship 132056,horse 132057,cat 132058,truck 132059,truck 132060,bird 132061,horse 132062,horse 132063,deer 132064,horse 132065,truck 132066,airplane 132067,frog 132068,truck 132069,deer 132070,truck 132071,truck 132072,automobile 132073,dog 132074,automobile 132075,horse 132076,deer 132077,horse 132078,deer 132079,frog 132080,horse 132081,cat 132082,bird 132083,bird 132084,truck 132085,bird 132086,horse 132087,horse 132088,cat 132089,truck 132090,bird 132091,bird 132092,cat 132093,horse 132094,truck 132095,airplane 132096,deer 132097,airplane 132098,deer 132099,ship 132100,ship 132101,frog 132102,ship 132103,ship 132104,deer 132105,deer 132106,bird 132107,deer 132108,truck 132109,dog 132110,truck 132111,horse 132112,truck 132113,deer 132114,truck 132115,dog 132116,cat 132117,airplane 132118,bird 132119,airplane 132120,horse 132121,airplane 132122,bird 132123,airplane 132124,ship 132125,truck 132126,dog 132127,truck 132128,frog 132129,truck 132130,airplane 132131,truck 132132,airplane 132133,truck 132134,frog 132135,truck 132136,automobile 132137,ship 132138,ship 132139,cat 132140,deer 132141,horse 132142,truck 132143,horse 132144,bird 132145,cat 132146,deer 132147,bird 132148,dog 132149,deer 132150,automobile 132151,cat 132152,horse 132153,dog 132154,cat 132155,airplane 132156,horse 132157,ship 132158,dog 132159,frog 132160,deer 132161,ship 132162,frog 132163,dog 132164,deer 132165,frog 132166,deer 132167,deer 132168,dog 132169,frog 132170,cat 132171,frog 132172,airplane 132173,truck 132174,truck 132175,ship 132176,frog 132177,deer 132178,airplane 132179,frog 132180,deer 132181,cat 132182,cat 132183,deer 132184,automobile 132185,deer 132186,bird 132187,horse 132188,cat 132189,horse 132190,cat 132191,truck 132192,airplane 132193,cat 132194,airplane 132195,deer 132196,cat 132197,bird 132198,automobile 132199,ship 132200,frog 132201,automobile 132202,cat 132203,bird 132204,deer 132205,dog 132206,bird 132207,truck 132208,deer 132209,ship 132210,cat 132211,dog 132212,deer 132213,frog 132214,ship 132215,frog 132216,airplane 132217,deer 132218,frog 132219,bird 132220,automobile 132221,cat 132222,dog 132223,bird 132224,deer 132225,frog 132226,frog 132227,truck 132228,cat 132229,horse 132230,dog 132231,bird 132232,automobile 132233,frog 132234,bird 132235,horse 132236,dog 132237,airplane 132238,horse 132239,airplane 132240,truck 132241,frog 132242,deer 132243,deer 132244,dog 132245,deer 132246,ship 132247,deer 132248,bird 132249,frog 132250,horse 132251,ship 132252,horse 132253,cat 132254,truck 132255,ship 132256,dog 132257,bird 132258,automobile 132259,horse 132260,deer 132261,ship 132262,truck 132263,dog 132264,frog 132265,bird 132266,bird 132267,bird 132268,horse 132269,deer 132270,dog 132271,horse 132272,automobile 132273,airplane 132274,truck 132275,deer 132276,ship 132277,truck 132278,cat 132279,dog 132280,airplane 132281,frog 132282,horse 132283,automobile 132284,deer 132285,horse 132286,cat 132287,horse 132288,bird 132289,bird 132290,truck 132291,dog 132292,frog 132293,frog 132294,cat 132295,dog 132296,dog 132297,frog 132298,deer 132299,truck 132300,dog 132301,bird 132302,dog 132303,airplane 132304,automobile 132305,cat 132306,airplane 132307,horse 132308,horse 132309,frog 132310,deer 132311,ship 132312,dog 132313,truck 132314,airplane 132315,deer 132316,cat 132317,bird 132318,ship 132319,horse 132320,dog 132321,cat 132322,bird 132323,airplane 132324,bird 132325,bird 132326,deer 132327,truck 132328,deer 132329,horse 132330,truck 132331,automobile 132332,deer 132333,deer 132334,frog 132335,airplane 132336,horse 132337,truck 132338,ship 132339,automobile 132340,deer 132341,frog 132342,airplane 132343,horse 132344,deer 132345,ship 132346,cat 132347,bird 132348,frog 132349,frog 132350,horse 132351,automobile 132352,horse 132353,truck 132354,cat 132355,bird 132356,horse 132357,cat 132358,airplane 132359,deer 132360,horse 132361,airplane 132362,horse 132363,airplane 132364,truck 132365,ship 132366,cat 132367,dog 132368,truck 132369,horse 132370,truck 132371,dog 132372,frog 132373,truck 132374,horse 132375,deer 132376,bird 132377,ship 132378,deer 132379,bird 132380,truck 132381,truck 132382,cat 132383,automobile 132384,deer 132385,truck 132386,deer 132387,dog 132388,deer 132389,automobile 132390,cat 132391,bird 132392,ship 132393,truck 132394,airplane 132395,dog 132396,dog 132397,airplane 132398,truck 132399,truck 132400,truck 132401,frog 132402,airplane 132403,dog 132404,cat 132405,ship 132406,bird 132407,bird 132408,deer 132409,deer 132410,truck 132411,deer 132412,truck 132413,deer 132414,frog 132415,frog 132416,airplane 132417,automobile 132418,cat 132419,cat 132420,horse 132421,frog 132422,deer 132423,automobile 132424,deer 132425,bird 132426,frog 132427,horse 132428,horse 132429,cat 132430,dog 132431,ship 132432,deer 132433,automobile 132434,cat 132435,truck 132436,bird 132437,truck 132438,truck 132439,deer 132440,automobile 132441,horse 132442,dog 132443,cat 132444,dog 132445,deer 132446,cat 132447,deer 132448,airplane 132449,horse 132450,dog 132451,truck 132452,airplane 132453,airplane 132454,automobile 132455,cat 132456,horse 132457,airplane 132458,cat 132459,airplane 132460,deer 132461,cat 132462,cat 132463,cat 132464,airplane 132465,cat 132466,ship 132467,cat 132468,deer 132469,cat 132470,horse 132471,deer 132472,horse 132473,bird 132474,bird 132475,frog 132476,dog 132477,bird 132478,truck 132479,dog 132480,deer 132481,automobile 132482,automobile 132483,horse 132484,horse 132485,airplane 132486,bird 132487,deer 132488,automobile 132489,frog 132490,ship 132491,cat 132492,bird 132493,horse 132494,truck 132495,truck 132496,deer 132497,bird 132498,deer 132499,horse 132500,frog 132501,dog 132502,truck 132503,deer 132504,automobile 132505,bird 132506,dog 132507,ship 132508,ship 132509,frog 132510,cat 132511,airplane 132512,truck 132513,horse 132514,truck 132515,dog 132516,ship 132517,cat 132518,deer 132519,dog 132520,truck 132521,horse 132522,deer 132523,bird 132524,cat 132525,truck 132526,cat 132527,horse 132528,truck 132529,frog 132530,cat 132531,ship 132532,bird 132533,airplane 132534,bird 132535,frog 132536,airplane 132537,deer 132538,airplane 132539,horse 132540,frog 132541,dog 132542,automobile 132543,dog 132544,cat 132545,airplane 132546,frog 132547,horse 132548,cat 132549,truck 132550,deer 132551,airplane 132552,bird 132553,frog 132554,bird 132555,automobile 132556,horse 132557,airplane 132558,bird 132559,dog 132560,frog 132561,bird 132562,automobile 132563,cat 132564,truck 132565,deer 132566,deer 132567,frog 132568,dog 132569,ship 132570,frog 132571,horse 132572,dog 132573,ship 132574,automobile 132575,bird 132576,cat 132577,ship 132578,ship 132579,truck 132580,truck 132581,deer 132582,ship 132583,cat 132584,automobile 132585,bird 132586,bird 132587,horse 132588,horse 132589,ship 132590,horse 132591,horse 132592,cat 132593,ship 132594,deer 132595,horse 132596,cat 132597,dog 132598,bird 132599,airplane 132600,cat 132601,bird 132602,airplane 132603,ship 132604,truck 132605,automobile 132606,airplane 132607,automobile 132608,truck 132609,airplane 132610,ship 132611,truck 132612,dog 132613,dog 132614,deer 132615,airplane 132616,dog 132617,ship 132618,bird 132619,deer 132620,horse 132621,cat 132622,horse 132623,frog 132624,ship 132625,dog 132626,airplane 132627,dog 132628,bird 132629,deer 132630,truck 132631,airplane 132632,bird 132633,horse 132634,airplane 132635,dog 132636,bird 132637,horse 132638,deer 132639,ship 132640,deer 132641,truck 132642,truck 132643,bird 132644,cat 132645,frog 132646,ship 132647,dog 132648,bird 132649,cat 132650,truck 132651,deer 132652,ship 132653,cat 132654,bird 132655,deer 132656,dog 132657,horse 132658,cat 132659,automobile 132660,dog 132661,horse 132662,frog 132663,frog 132664,truck 132665,ship 132666,horse 132667,dog 132668,cat 132669,bird 132670,airplane 132671,bird 132672,dog 132673,horse 132674,truck 132675,truck 132676,ship 132677,dog 132678,deer 132679,dog 132680,frog 132681,bird 132682,ship 132683,airplane 132684,bird 132685,airplane 132686,frog 132687,cat 132688,cat 132689,automobile 132690,truck 132691,automobile 132692,frog 132693,ship 132694,horse 132695,automobile 132696,dog 132697,airplane 132698,cat 132699,truck 132700,airplane 132701,deer 132702,dog 132703,bird 132704,automobile 132705,deer 132706,cat 132707,horse 132708,horse 132709,horse 132710,deer 132711,bird 132712,airplane 132713,horse 132714,horse 132715,frog 132716,bird 132717,deer 132718,automobile 132719,cat 132720,airplane 132721,deer 132722,deer 132723,truck 132724,dog 132725,frog 132726,dog 132727,dog 132728,cat 132729,frog 132730,frog 132731,airplane 132732,automobile 132733,horse 132734,truck 132735,cat 132736,bird 132737,truck 132738,horse 132739,horse 132740,deer 132741,bird 132742,bird 132743,dog 132744,frog 132745,ship 132746,truck 132747,bird 132748,ship 132749,frog 132750,cat 132751,deer 132752,horse 132753,bird 132754,ship 132755,frog 132756,horse 132757,dog 132758,deer 132759,frog 132760,deer 132761,deer 132762,truck 132763,cat 132764,bird 132765,airplane 132766,automobile 132767,ship 132768,truck 132769,truck 132770,truck 132771,cat 132772,cat 132773,automobile 132774,dog 132775,bird 132776,frog 132777,airplane 132778,deer 132779,airplane 132780,horse 132781,deer 132782,cat 132783,bird 132784,airplane 132785,automobile 132786,airplane 132787,airplane 132788,airplane 132789,dog 132790,deer 132791,cat 132792,deer 132793,ship 132794,automobile 132795,bird 132796,horse 132797,cat 132798,frog 132799,dog 132800,horse 132801,airplane 132802,bird 132803,ship 132804,ship 132805,truck 132806,horse 132807,airplane 132808,ship 132809,truck 132810,automobile 132811,airplane 132812,cat 132813,airplane 132814,frog 132815,truck 132816,cat 132817,frog 132818,truck 132819,deer 132820,truck 132821,bird 132822,airplane 132823,cat 132824,dog 132825,bird 132826,frog 132827,dog 132828,cat 132829,frog 132830,cat 132831,cat 132832,ship 132833,ship 132834,cat 132835,frog 132836,frog 132837,truck 132838,bird 132839,truck 132840,cat 132841,bird 132842,truck 132843,automobile 132844,airplane 132845,bird 132846,bird 132847,frog 132848,horse 132849,airplane 132850,horse 132851,deer 132852,cat 132853,truck 132854,automobile 132855,deer 132856,deer 132857,ship 132858,ship 132859,airplane 132860,truck 132861,cat 132862,cat 132863,deer 132864,bird 132865,ship 132866,frog 132867,truck 132868,automobile 132869,frog 132870,bird 132871,dog 132872,frog 132873,dog 132874,automobile 132875,ship 132876,automobile 132877,dog 132878,dog 132879,truck 132880,airplane 132881,truck 132882,deer 132883,horse 132884,truck 132885,horse 132886,ship 132887,horse 132888,automobile 132889,truck 132890,bird 132891,dog 132892,truck 132893,cat 132894,airplane 132895,deer 132896,frog 132897,cat 132898,airplane 132899,dog 132900,ship 132901,truck 132902,cat 132903,cat 132904,deer 132905,automobile 132906,ship 132907,horse 132908,horse 132909,deer 132910,bird 132911,frog 132912,automobile 132913,cat 132914,dog 132915,deer 132916,ship 132917,deer 132918,dog 132919,frog 132920,ship 132921,deer 132922,dog 132923,ship 132924,cat 132925,deer 132926,airplane 132927,deer 132928,cat 132929,dog 132930,dog 132931,horse 132932,ship 132933,airplane 132934,ship 132935,bird 132936,dog 132937,ship 132938,bird 132939,ship 132940,cat 132941,cat 132942,cat 132943,horse 132944,bird 132945,dog 132946,bird 132947,deer 132948,airplane 132949,horse 132950,automobile 132951,cat 132952,cat 132953,cat 132954,dog 132955,horse 132956,cat 132957,cat 132958,truck 132959,dog 132960,truck 132961,dog 132962,automobile 132963,cat 132964,frog 132965,horse 132966,cat 132967,frog 132968,deer 132969,horse 132970,deer 132971,ship 132972,dog 132973,frog 132974,truck 132975,ship 132976,airplane 132977,deer 132978,deer 132979,dog 132980,frog 132981,deer 132982,cat 132983,dog 132984,horse 132985,horse 132986,bird 132987,deer 132988,dog 132989,horse 132990,bird 132991,deer 132992,airplane 132993,truck 132994,bird 132995,airplane 132996,deer 132997,cat 132998,truck 132999,dog 133000,automobile 133001,horse 133002,frog 133003,airplane 133004,airplane 133005,deer 133006,truck 133007,horse 133008,automobile 133009,deer 133010,truck 133011,deer 133012,ship 133013,cat 133014,ship 133015,frog 133016,cat 133017,truck 133018,ship 133019,automobile 133020,truck 133021,cat 133022,ship 133023,deer 133024,deer 133025,dog 133026,airplane 133027,dog 133028,cat 133029,bird 133030,frog 133031,cat 133032,truck 133033,deer 133034,cat 133035,frog 133036,cat 133037,horse 133038,automobile 133039,dog 133040,deer 133041,cat 133042,bird 133043,cat 133044,deer 133045,bird 133046,dog 133047,dog 133048,deer 133049,truck 133050,bird 133051,airplane 133052,automobile 133053,frog 133054,ship 133055,cat 133056,bird 133057,bird 133058,airplane 133059,horse 133060,ship 133061,deer 133062,truck 133063,frog 133064,horse 133065,ship 133066,cat 133067,horse 133068,cat 133069,truck 133070,horse 133071,automobile 133072,deer 133073,automobile 133074,horse 133075,cat 133076,bird 133077,ship 133078,dog 133079,ship 133080,automobile 133081,truck 133082,ship 133083,automobile 133084,horse 133085,dog 133086,frog 133087,cat 133088,bird 133089,dog 133090,truck 133091,truck 133092,dog 133093,truck 133094,truck 133095,bird 133096,bird 133097,dog 133098,truck 133099,automobile 133100,cat 133101,dog 133102,dog 133103,deer 133104,horse 133105,ship 133106,bird 133107,dog 133108,cat 133109,airplane 133110,cat 133111,horse 133112,horse 133113,horse 133114,cat 133115,airplane 133116,frog 133117,dog 133118,cat 133119,bird 133120,cat 133121,automobile 133122,deer 133123,dog 133124,airplane 133125,dog 133126,dog 133127,truck 133128,truck 133129,bird 133130,horse 133131,cat 133132,ship 133133,deer 133134,automobile 133135,ship 133136,truck 133137,cat 133138,bird 133139,airplane 133140,automobile 133141,frog 133142,airplane 133143,cat 133144,horse 133145,dog 133146,dog 133147,cat 133148,airplane 133149,deer 133150,dog 133151,deer 133152,dog 133153,airplane 133154,cat 133155,airplane 133156,airplane 133157,bird 133158,horse 133159,airplane 133160,dog 133161,airplane 133162,airplane 133163,automobile 133164,deer 133165,truck 133166,horse 133167,airplane 133168,deer 133169,bird 133170,bird 133171,truck 133172,bird 133173,truck 133174,horse 133175,frog 133176,bird 133177,deer 133178,frog 133179,dog 133180,horse 133181,frog 133182,bird 133183,truck 133184,frog 133185,frog 133186,horse 133187,ship 133188,cat 133189,truck 133190,ship 133191,horse 133192,frog 133193,horse 133194,truck 133195,automobile 133196,horse 133197,bird 133198,airplane 133199,dog 133200,frog 133201,deer 133202,horse 133203,cat 133204,truck 133205,bird 133206,airplane 133207,bird 133208,horse 133209,frog 133210,bird 133211,ship 133212,horse 133213,horse 133214,deer 133215,dog 133216,truck 133217,bird 133218,bird 133219,automobile 133220,bird 133221,bird 133222,cat 133223,dog 133224,cat 133225,airplane 133226,dog 133227,frog 133228,horse 133229,truck 133230,truck 133231,deer 133232,deer 133233,cat 133234,ship 133235,deer 133236,dog 133237,deer 133238,dog 133239,ship 133240,frog 133241,bird 133242,ship 133243,truck 133244,airplane 133245,ship 133246,frog 133247,deer 133248,cat 133249,truck 133250,dog 133251,cat 133252,cat 133253,cat 133254,automobile 133255,cat 133256,frog 133257,dog 133258,truck 133259,airplane 133260,bird 133261,cat 133262,truck 133263,bird 133264,bird 133265,truck 133266,deer 133267,airplane 133268,dog 133269,frog 133270,ship 133271,deer 133272,frog 133273,deer 133274,deer 133275,ship 133276,airplane 133277,deer 133278,airplane 133279,frog 133280,horse 133281,deer 133282,cat 133283,dog 133284,dog 133285,horse 133286,dog 133287,dog 133288,dog 133289,truck 133290,airplane 133291,automobile 133292,deer 133293,ship 133294,automobile 133295,frog 133296,dog 133297,deer 133298,horse 133299,ship 133300,bird 133301,cat 133302,ship 133303,horse 133304,automobile 133305,frog 133306,ship 133307,truck 133308,horse 133309,bird 133310,airplane 133311,deer 133312,automobile 133313,dog 133314,automobile 133315,automobile 133316,frog 133317,ship 133318,frog 133319,deer 133320,bird 133321,deer 133322,dog 133323,dog 133324,horse 133325,ship 133326,horse 133327,dog 133328,frog 133329,automobile 133330,frog 133331,dog 133332,horse 133333,airplane 133334,automobile 133335,ship 133336,automobile 133337,ship 133338,deer 133339,cat 133340,ship 133341,bird 133342,automobile 133343,frog 133344,automobile 133345,cat 133346,ship 133347,cat 133348,deer 133349,truck 133350,bird 133351,automobile 133352,cat 133353,cat 133354,horse 133355,ship 133356,horse 133357,truck 133358,deer 133359,cat 133360,horse 133361,truck 133362,dog 133363,dog 133364,airplane 133365,deer 133366,truck 133367,airplane 133368,truck 133369,automobile 133370,dog 133371,ship 133372,frog 133373,horse 133374,deer 133375,frog 133376,ship 133377,automobile 133378,deer 133379,cat 133380,dog 133381,automobile 133382,truck 133383,bird 133384,ship 133385,deer 133386,cat 133387,ship 133388,bird 133389,frog 133390,cat 133391,bird 133392,horse 133393,cat 133394,deer 133395,airplane 133396,truck 133397,truck 133398,ship 133399,ship 133400,bird 133401,horse 133402,cat 133403,airplane 133404,automobile 133405,automobile 133406,bird 133407,truck 133408,truck 133409,frog 133410,dog 133411,bird 133412,deer 133413,airplane 133414,dog 133415,frog 133416,bird 133417,automobile 133418,automobile 133419,bird 133420,bird 133421,ship 133422,ship 133423,deer 133424,dog 133425,dog 133426,bird 133427,horse 133428,frog 133429,airplane 133430,horse 133431,ship 133432,horse 133433,horse 133434,airplane 133435,cat 133436,automobile 133437,deer 133438,frog 133439,frog 133440,cat 133441,airplane 133442,ship 133443,dog 133444,bird 133445,truck 133446,truck 133447,cat 133448,airplane 133449,bird 133450,frog 133451,dog 133452,dog 133453,truck 133454,airplane 133455,cat 133456,deer 133457,deer 133458,automobile 133459,cat 133460,horse 133461,truck 133462,frog 133463,truck 133464,truck 133465,frog 133466,horse 133467,deer 133468,truck 133469,ship 133470,cat 133471,bird 133472,dog 133473,horse 133474,truck 133475,deer 133476,ship 133477,airplane 133478,truck 133479,bird 133480,truck 133481,truck 133482,horse 133483,truck 133484,ship 133485,ship 133486,dog 133487,cat 133488,ship 133489,cat 133490,deer 133491,airplane 133492,dog 133493,ship 133494,cat 133495,bird 133496,cat 133497,bird 133498,horse 133499,automobile 133500,cat 133501,cat 133502,airplane 133503,ship 133504,deer 133505,dog 133506,cat 133507,deer 133508,cat 133509,frog 133510,horse 133511,bird 133512,cat 133513,truck 133514,truck 133515,airplane 133516,deer 133517,dog 133518,cat 133519,bird 133520,automobile 133521,frog 133522,horse 133523,deer 133524,deer 133525,horse 133526,deer 133527,ship 133528,dog 133529,deer 133530,cat 133531,cat 133532,bird 133533,deer 133534,frog 133535,horse 133536,dog 133537,horse 133538,cat 133539,airplane 133540,deer 133541,cat 133542,deer 133543,deer 133544,horse 133545,cat 133546,cat 133547,bird 133548,cat 133549,dog 133550,frog 133551,deer 133552,frog 133553,airplane 133554,dog 133555,airplane 133556,dog 133557,airplane 133558,automobile 133559,horse 133560,automobile 133561,dog 133562,dog 133563,deer 133564,airplane 133565,dog 133566,truck 133567,deer 133568,truck 133569,truck 133570,ship 133571,horse 133572,automobile 133573,ship 133574,frog 133575,airplane 133576,ship 133577,dog 133578,dog 133579,frog 133580,airplane 133581,airplane 133582,dog 133583,airplane 133584,truck 133585,airplane 133586,horse 133587,airplane 133588,deer 133589,deer 133590,airplane 133591,ship 133592,ship 133593,frog 133594,horse 133595,deer 133596,ship 133597,horse 133598,cat 133599,dog 133600,automobile 133601,frog 133602,horse 133603,frog 133604,airplane 133605,deer 133606,dog 133607,deer 133608,bird 133609,horse 133610,automobile 133611,truck 133612,airplane 133613,bird 133614,bird 133615,truck 133616,dog 133617,dog 133618,ship 133619,cat 133620,frog 133621,airplane 133622,frog 133623,horse 133624,truck 133625,horse 133626,dog 133627,bird 133628,dog 133629,deer 133630,bird 133631,airplane 133632,frog 133633,truck 133634,deer 133635,cat 133636,cat 133637,bird 133638,frog 133639,deer 133640,frog 133641,cat 133642,frog 133643,frog 133644,bird 133645,cat 133646,cat 133647,frog 133648,automobile 133649,frog 133650,truck 133651,cat 133652,automobile 133653,dog 133654,bird 133655,truck 133656,bird 133657,cat 133658,deer 133659,truck 133660,cat 133661,deer 133662,cat 133663,deer 133664,cat 133665,cat 133666,automobile 133667,frog 133668,deer 133669,dog 133670,dog 133671,dog 133672,horse 133673,ship 133674,horse 133675,deer 133676,frog 133677,deer 133678,truck 133679,frog 133680,dog 133681,bird 133682,automobile 133683,ship 133684,automobile 133685,ship 133686,bird 133687,cat 133688,dog 133689,truck 133690,airplane 133691,ship 133692,frog 133693,frog 133694,bird 133695,truck 133696,deer 133697,bird 133698,frog 133699,frog 133700,cat 133701,airplane 133702,automobile 133703,frog 133704,ship 133705,airplane 133706,cat 133707,dog 133708,bird 133709,cat 133710,cat 133711,deer 133712,dog 133713,cat 133714,automobile 133715,truck 133716,dog 133717,bird 133718,dog 133719,deer 133720,cat 133721,dog 133722,cat 133723,airplane 133724,deer 133725,cat 133726,cat 133727,bird 133728,ship 133729,airplane 133730,ship 133731,airplane 133732,bird 133733,ship 133734,ship 133735,deer 133736,truck 133737,cat 133738,airplane 133739,cat 133740,deer 133741,airplane 133742,cat 133743,deer 133744,cat 133745,frog 133746,frog 133747,dog 133748,deer 133749,ship 133750,airplane 133751,airplane 133752,cat 133753,deer 133754,cat 133755,cat 133756,airplane 133757,cat 133758,frog 133759,deer 133760,dog 133761,cat 133762,cat 133763,airplane 133764,automobile 133765,bird 133766,deer 133767,horse 133768,ship 133769,automobile 133770,cat 133771,cat 133772,frog 133773,ship 133774,automobile 133775,deer 133776,bird 133777,airplane 133778,frog 133779,deer 133780,deer 133781,dog 133782,frog 133783,frog 133784,truck 133785,deer 133786,frog 133787,cat 133788,ship 133789,deer 133790,cat 133791,bird 133792,airplane 133793,airplane 133794,dog 133795,airplane 133796,dog 133797,cat 133798,horse 133799,airplane 133800,bird 133801,frog 133802,deer 133803,horse 133804,cat 133805,deer 133806,frog 133807,truck 133808,ship 133809,cat 133810,deer 133811,horse 133812,frog 133813,cat 133814,dog 133815,ship 133816,truck 133817,deer 133818,deer 133819,cat 133820,deer 133821,airplane 133822,ship 133823,automobile 133824,cat 133825,cat 133826,airplane 133827,horse 133828,dog 133829,truck 133830,airplane 133831,ship 133832,deer 133833,cat 133834,horse 133835,deer 133836,deer 133837,ship 133838,automobile 133839,horse 133840,bird 133841,cat 133842,frog 133843,deer 133844,dog 133845,truck 133846,ship 133847,automobile 133848,dog 133849,bird 133850,bird 133851,dog 133852,cat 133853,frog 133854,cat 133855,horse 133856,airplane 133857,ship 133858,bird 133859,ship 133860,truck 133861,ship 133862,deer 133863,airplane 133864,deer 133865,frog 133866,ship 133867,frog 133868,cat 133869,dog 133870,horse 133871,frog 133872,truck 133873,automobile 133874,dog 133875,truck 133876,automobile 133877,frog 133878,automobile 133879,horse 133880,horse 133881,automobile 133882,frog 133883,cat 133884,cat 133885,truck 133886,airplane 133887,bird 133888,frog 133889,automobile 133890,bird 133891,deer 133892,frog 133893,bird 133894,dog 133895,dog 133896,truck 133897,horse 133898,bird 133899,automobile 133900,airplane 133901,automobile 133902,frog 133903,cat 133904,truck 133905,horse 133906,automobile 133907,airplane 133908,deer 133909,automobile 133910,cat 133911,ship 133912,horse 133913,dog 133914,frog 133915,deer 133916,horse 133917,dog 133918,ship 133919,truck 133920,ship 133921,automobile 133922,frog 133923,cat 133924,dog 133925,automobile 133926,dog 133927,cat 133928,deer 133929,deer 133930,truck 133931,frog 133932,cat 133933,deer 133934,deer 133935,deer 133936,deer 133937,ship 133938,cat 133939,cat 133940,cat 133941,bird 133942,horse 133943,truck 133944,cat 133945,horse 133946,cat 133947,frog 133948,automobile 133949,frog 133950,airplane 133951,bird 133952,airplane 133953,truck 133954,cat 133955,airplane 133956,frog 133957,horse 133958,frog 133959,horse 133960,horse 133961,bird 133962,bird 133963,deer 133964,cat 133965,deer 133966,horse 133967,automobile 133968,dog 133969,frog 133970,horse 133971,ship 133972,truck 133973,truck 133974,truck 133975,truck 133976,bird 133977,airplane 133978,deer 133979,frog 133980,bird 133981,cat 133982,cat 133983,bird 133984,bird 133985,ship 133986,horse 133987,dog 133988,truck 133989,airplane 133990,cat 133991,frog 133992,truck 133993,ship 133994,bird 133995,ship 133996,dog 133997,deer 133998,cat 133999,horse 134000,dog 134001,truck 134002,deer 134003,airplane 134004,truck 134005,airplane 134006,cat 134007,dog 134008,automobile 134009,ship 134010,bird 134011,dog 134012,horse 134013,truck 134014,truck 134015,deer 134016,automobile 134017,horse 134018,frog 134019,deer 134020,automobile 134021,ship 134022,cat 134023,ship 134024,automobile 134025,deer 134026,airplane 134027,ship 134028,cat 134029,airplane 134030,deer 134031,frog 134032,dog 134033,cat 134034,deer 134035,cat 134036,dog 134037,cat 134038,airplane 134039,airplane 134040,bird 134041,truck 134042,horse 134043,horse 134044,ship 134045,horse 134046,airplane 134047,cat 134048,ship 134049,frog 134050,airplane 134051,horse 134052,airplane 134053,dog 134054,airplane 134055,cat 134056,deer 134057,dog 134058,cat 134059,bird 134060,automobile 134061,horse 134062,horse 134063,airplane 134064,dog 134065,deer 134066,airplane 134067,cat 134068,deer 134069,dog 134070,automobile 134071,airplane 134072,deer 134073,airplane 134074,airplane 134075,horse 134076,airplane 134077,deer 134078,deer 134079,truck 134080,horse 134081,bird 134082,dog 134083,truck 134084,cat 134085,deer 134086,deer 134087,dog 134088,dog 134089,cat 134090,airplane 134091,deer 134092,bird 134093,dog 134094,deer 134095,deer 134096,ship 134097,ship 134098,truck 134099,dog 134100,horse 134101,cat 134102,frog 134103,ship 134104,frog 134105,deer 134106,bird 134107,horse 134108,deer 134109,frog 134110,truck 134111,frog 134112,truck 134113,frog 134114,horse 134115,frog 134116,cat 134117,bird 134118,truck 134119,horse 134120,cat 134121,cat 134122,ship 134123,dog 134124,truck 134125,dog 134126,airplane 134127,cat 134128,deer 134129,bird 134130,bird 134131,dog 134132,cat 134133,ship 134134,deer 134135,horse 134136,frog 134137,cat 134138,cat 134139,horse 134140,bird 134141,horse 134142,dog 134143,cat 134144,airplane 134145,ship 134146,cat 134147,frog 134148,cat 134149,airplane 134150,dog 134151,horse 134152,ship 134153,airplane 134154,truck 134155,automobile 134156,horse 134157,truck 134158,dog 134159,deer 134160,truck 134161,frog 134162,truck 134163,airplane 134164,cat 134165,horse 134166,airplane 134167,frog 134168,bird 134169,airplane 134170,truck 134171,airplane 134172,dog 134173,airplane 134174,horse 134175,horse 134176,deer 134177,dog 134178,truck 134179,ship 134180,deer 134181,dog 134182,airplane 134183,dog 134184,truck 134185,truck 134186,horse 134187,cat 134188,automobile 134189,frog 134190,frog 134191,dog 134192,deer 134193,cat 134194,horse 134195,horse 134196,deer 134197,dog 134198,bird 134199,cat 134200,deer 134201,dog 134202,frog 134203,cat 134204,frog 134205,horse 134206,airplane 134207,cat 134208,deer 134209,cat 134210,horse 134211,ship 134212,horse 134213,automobile 134214,cat 134215,dog 134216,airplane 134217,truck 134218,dog 134219,automobile 134220,horse 134221,ship 134222,truck 134223,airplane 134224,deer 134225,cat 134226,airplane 134227,frog 134228,automobile 134229,cat 134230,ship 134231,truck 134232,frog 134233,frog 134234,airplane 134235,cat 134236,frog 134237,automobile 134238,ship 134239,dog 134240,cat 134241,bird 134242,truck 134243,deer 134244,airplane 134245,horse 134246,deer 134247,airplane 134248,truck 134249,dog 134250,dog 134251,truck 134252,cat 134253,horse 134254,deer 134255,deer 134256,bird 134257,horse 134258,airplane 134259,automobile 134260,deer 134261,dog 134262,automobile 134263,airplane 134264,dog 134265,dog 134266,deer 134267,deer 134268,ship 134269,airplane 134270,automobile 134271,frog 134272,truck 134273,cat 134274,frog 134275,bird 134276,horse 134277,deer 134278,automobile 134279,airplane 134280,automobile 134281,cat 134282,deer 134283,dog 134284,ship 134285,deer 134286,frog 134287,frog 134288,deer 134289,ship 134290,dog 134291,automobile 134292,frog 134293,horse 134294,deer 134295,truck 134296,cat 134297,horse 134298,automobile 134299,automobile 134300,horse 134301,airplane 134302,truck 134303,horse 134304,bird 134305,cat 134306,dog 134307,airplane 134308,frog 134309,ship 134310,bird 134311,dog 134312,airplane 134313,dog 134314,ship 134315,cat 134316,bird 134317,airplane 134318,automobile 134319,dog 134320,deer 134321,frog 134322,truck 134323,airplane 134324,automobile 134325,dog 134326,dog 134327,automobile 134328,airplane 134329,deer 134330,truck 134331,ship 134332,cat 134333,bird 134334,frog 134335,bird 134336,airplane 134337,deer 134338,bird 134339,airplane 134340,cat 134341,airplane 134342,airplane 134343,airplane 134344,deer 134345,ship 134346,deer 134347,deer 134348,dog 134349,frog 134350,deer 134351,automobile 134352,frog 134353,deer 134354,dog 134355,deer 134356,dog 134357,horse 134358,horse 134359,truck 134360,cat 134361,horse 134362,automobile 134363,dog 134364,bird 134365,dog 134366,truck 134367,airplane 134368,airplane 134369,dog 134370,deer 134371,dog 134372,deer 134373,frog 134374,automobile 134375,ship 134376,truck 134377,truck 134378,horse 134379,cat 134380,horse 134381,truck 134382,automobile 134383,truck 134384,airplane 134385,automobile 134386,bird 134387,automobile 134388,deer 134389,bird 134390,airplane 134391,bird 134392,truck 134393,frog 134394,deer 134395,truck 134396,deer 134397,frog 134398,ship 134399,automobile 134400,deer 134401,airplane 134402,bird 134403,frog 134404,deer 134405,ship 134406,bird 134407,cat 134408,truck 134409,horse 134410,ship 134411,ship 134412,horse 134413,truck 134414,airplane 134415,dog 134416,bird 134417,ship 134418,frog 134419,cat 134420,ship 134421,truck 134422,airplane 134423,deer 134424,dog 134425,horse 134426,cat 134427,deer 134428,frog 134429,airplane 134430,deer 134431,frog 134432,frog 134433,bird 134434,horse 134435,airplane 134436,automobile 134437,cat 134438,deer 134439,truck 134440,horse 134441,truck 134442,bird 134443,bird 134444,cat 134445,bird 134446,horse 134447,airplane 134448,frog 134449,frog 134450,horse 134451,cat 134452,truck 134453,deer 134454,deer 134455,truck 134456,automobile 134457,airplane 134458,frog 134459,horse 134460,dog 134461,airplane 134462,ship 134463,frog 134464,cat 134465,truck 134466,airplane 134467,bird 134468,frog 134469,bird 134470,truck 134471,deer 134472,deer 134473,horse 134474,dog 134475,truck 134476,horse 134477,cat 134478,dog 134479,deer 134480,frog 134481,frog 134482,horse 134483,frog 134484,automobile 134485,ship 134486,horse 134487,deer 134488,frog 134489,truck 134490,airplane 134491,cat 134492,deer 134493,cat 134494,airplane 134495,bird 134496,cat 134497,deer 134498,deer 134499,dog 134500,automobile 134501,cat 134502,dog 134503,deer 134504,ship 134505,deer 134506,horse 134507,ship 134508,dog 134509,deer 134510,cat 134511,automobile 134512,cat 134513,horse 134514,truck 134515,dog 134516,horse 134517,frog 134518,airplane 134519,automobile 134520,cat 134521,deer 134522,deer 134523,cat 134524,cat 134525,airplane 134526,airplane 134527,cat 134528,airplane 134529,deer 134530,ship 134531,ship 134532,dog 134533,frog 134534,frog 134535,horse 134536,deer 134537,frog 134538,horse 134539,truck 134540,dog 134541,truck 134542,automobile 134543,dog 134544,automobile 134545,bird 134546,ship 134547,cat 134548,truck 134549,dog 134550,truck 134551,ship 134552,airplane 134553,truck 134554,horse 134555,deer 134556,horse 134557,dog 134558,frog 134559,ship 134560,frog 134561,dog 134562,cat 134563,airplane 134564,bird 134565,ship 134566,bird 134567,ship 134568,deer 134569,cat 134570,horse 134571,airplane 134572,frog 134573,deer 134574,ship 134575,frog 134576,airplane 134577,truck 134578,horse 134579,ship 134580,horse 134581,horse 134582,truck 134583,airplane 134584,deer 134585,dog 134586,truck 134587,automobile 134588,truck 134589,cat 134590,dog 134591,automobile 134592,cat 134593,deer 134594,frog 134595,ship 134596,frog 134597,airplane 134598,cat 134599,ship 134600,bird 134601,horse 134602,frog 134603,horse 134604,airplane 134605,frog 134606,horse 134607,bird 134608,airplane 134609,bird 134610,bird 134611,frog 134612,bird 134613,bird 134614,ship 134615,horse 134616,bird 134617,cat 134618,deer 134619,cat 134620,automobile 134621,truck 134622,cat 134623,frog 134624,ship 134625,automobile 134626,automobile 134627,deer 134628,deer 134629,truck 134630,frog 134631,cat 134632,deer 134633,bird 134634,automobile 134635,frog 134636,frog 134637,truck 134638,frog 134639,bird 134640,horse 134641,deer 134642,frog 134643,deer 134644,ship 134645,deer 134646,horse 134647,frog 134648,airplane 134649,ship 134650,automobile 134651,truck 134652,frog 134653,ship 134654,truck 134655,deer 134656,cat 134657,bird 134658,horse 134659,cat 134660,dog 134661,deer 134662,cat 134663,bird 134664,ship 134665,airplane 134666,cat 134667,truck 134668,cat 134669,deer 134670,horse 134671,frog 134672,ship 134673,dog 134674,bird 134675,deer 134676,bird 134677,bird 134678,automobile 134679,frog 134680,airplane 134681,bird 134682,horse 134683,cat 134684,automobile 134685,airplane 134686,ship 134687,cat 134688,deer 134689,frog 134690,deer 134691,dog 134692,cat 134693,airplane 134694,dog 134695,dog 134696,deer 134697,dog 134698,truck 134699,truck 134700,deer 134701,dog 134702,truck 134703,automobile 134704,horse 134705,frog 134706,cat 134707,frog 134708,cat 134709,bird 134710,horse 134711,dog 134712,deer 134713,cat 134714,airplane 134715,deer 134716,dog 134717,dog 134718,bird 134719,truck 134720,automobile 134721,dog 134722,frog 134723,horse 134724,deer 134725,frog 134726,frog 134727,bird 134728,dog 134729,dog 134730,automobile 134731,ship 134732,bird 134733,dog 134734,airplane 134735,bird 134736,truck 134737,dog 134738,truck 134739,airplane 134740,horse 134741,truck 134742,frog 134743,cat 134744,ship 134745,deer 134746,ship 134747,dog 134748,dog 134749,bird 134750,dog 134751,deer 134752,dog 134753,frog 134754,deer 134755,truck 134756,dog 134757,ship 134758,horse 134759,cat 134760,frog 134761,cat 134762,frog 134763,horse 134764,frog 134765,bird 134766,deer 134767,bird 134768,deer 134769,dog 134770,cat 134771,cat 134772,airplane 134773,bird 134774,ship 134775,deer 134776,cat 134777,automobile 134778,dog 134779,frog 134780,airplane 134781,horse 134782,ship 134783,cat 134784,truck 134785,deer 134786,horse 134787,dog 134788,airplane 134789,cat 134790,frog 134791,cat 134792,automobile 134793,truck 134794,cat 134795,dog 134796,truck 134797,horse 134798,airplane 134799,deer 134800,truck 134801,airplane 134802,automobile 134803,horse 134804,ship 134805,horse 134806,cat 134807,deer 134808,deer 134809,truck 134810,airplane 134811,dog 134812,ship 134813,deer 134814,frog 134815,cat 134816,automobile 134817,deer 134818,dog 134819,dog 134820,airplane 134821,deer 134822,deer 134823,dog 134824,truck 134825,horse 134826,frog 134827,deer 134828,dog 134829,frog 134830,automobile 134831,deer 134832,dog 134833,cat 134834,truck 134835,frog 134836,truck 134837,frog 134838,deer 134839,airplane 134840,bird 134841,dog 134842,truck 134843,ship 134844,dog 134845,cat 134846,frog 134847,automobile 134848,ship 134849,cat 134850,horse 134851,automobile 134852,cat 134853,deer 134854,horse 134855,frog 134856,bird 134857,horse 134858,automobile 134859,airplane 134860,automobile 134861,ship 134862,deer 134863,cat 134864,ship 134865,bird 134866,airplane 134867,bird 134868,airplane 134869,airplane 134870,ship 134871,ship 134872,bird 134873,deer 134874,deer 134875,cat 134876,deer 134877,dog 134878,deer 134879,cat 134880,bird 134881,ship 134882,dog 134883,deer 134884,bird 134885,frog 134886,cat 134887,frog 134888,cat 134889,horse 134890,bird 134891,cat 134892,airplane 134893,horse 134894,airplane 134895,bird 134896,frog 134897,dog 134898,deer 134899,deer 134900,horse 134901,cat 134902,deer 134903,frog 134904,airplane 134905,cat 134906,deer 134907,airplane 134908,airplane 134909,deer 134910,ship 134911,airplane 134912,frog 134913,bird 134914,dog 134915,frog 134916,automobile 134917,airplane 134918,ship 134919,cat 134920,deer 134921,ship 134922,truck 134923,cat 134924,cat 134925,cat 134926,truck 134927,dog 134928,dog 134929,automobile 134930,dog 134931,horse 134932,dog 134933,bird 134934,truck 134935,deer 134936,bird 134937,frog 134938,automobile 134939,deer 134940,frog 134941,deer 134942,ship 134943,frog 134944,deer 134945,automobile 134946,dog 134947,truck 134948,automobile 134949,automobile 134950,truck 134951,ship 134952,cat 134953,deer 134954,deer 134955,truck 134956,truck 134957,bird 134958,cat 134959,automobile 134960,deer 134961,automobile 134962,automobile 134963,deer 134964,truck 134965,truck 134966,deer 134967,deer 134968,deer 134969,deer 134970,truck 134971,frog 134972,ship 134973,ship 134974,horse 134975,automobile 134976,truck 134977,dog 134978,frog 134979,truck 134980,truck 134981,dog 134982,dog 134983,horse 134984,ship 134985,truck 134986,frog 134987,deer 134988,deer 134989,deer 134990,cat 134991,airplane 134992,deer 134993,cat 134994,airplane 134995,deer 134996,cat 134997,airplane 134998,deer 134999,ship 135000,horse 135001,deer 135002,dog 135003,bird 135004,ship 135005,airplane 135006,truck 135007,frog 135008,dog 135009,cat 135010,truck 135011,horse 135012,deer 135013,deer 135014,ship 135015,cat 135016,cat 135017,bird 135018,bird 135019,deer 135020,truck 135021,dog 135022,dog 135023,truck 135024,deer 135025,bird 135026,ship 135027,deer 135028,cat 135029,truck 135030,truck 135031,cat 135032,deer 135033,truck 135034,frog 135035,truck 135036,truck 135037,truck 135038,truck 135039,bird 135040,frog 135041,dog 135042,frog 135043,deer 135044,frog 135045,ship 135046,ship 135047,cat 135048,truck 135049,frog 135050,automobile 135051,automobile 135052,ship 135053,airplane 135054,cat 135055,cat 135056,bird 135057,airplane 135058,cat 135059,frog 135060,truck 135061,automobile 135062,deer 135063,automobile 135064,deer 135065,frog 135066,truck 135067,horse 135068,dog 135069,horse 135070,dog 135071,frog 135072,dog 135073,horse 135074,ship 135075,bird 135076,dog 135077,bird 135078,cat 135079,deer 135080,ship 135081,deer 135082,airplane 135083,frog 135084,automobile 135085,bird 135086,dog 135087,cat 135088,dog 135089,truck 135090,frog 135091,dog 135092,deer 135093,horse 135094,cat 135095,frog 135096,horse 135097,cat 135098,airplane 135099,automobile 135100,automobile 135101,cat 135102,cat 135103,dog 135104,frog 135105,truck 135106,horse 135107,truck 135108,dog 135109,truck 135110,ship 135111,deer 135112,airplane 135113,bird 135114,truck 135115,deer 135116,dog 135117,bird 135118,ship 135119,cat 135120,frog 135121,cat 135122,frog 135123,cat 135124,dog 135125,frog 135126,airplane 135127,frog 135128,truck 135129,ship 135130,cat 135131,automobile 135132,automobile 135133,bird 135134,truck 135135,dog 135136,dog 135137,cat 135138,ship 135139,dog 135140,automobile 135141,bird 135142,cat 135143,truck 135144,cat 135145,bird 135146,deer 135147,deer 135148,deer 135149,frog 135150,ship 135151,dog 135152,cat 135153,automobile 135154,dog 135155,deer 135156,dog 135157,horse 135158,horse 135159,dog 135160,bird 135161,cat 135162,cat 135163,deer 135164,dog 135165,truck 135166,frog 135167,horse 135168,bird 135169,deer 135170,dog 135171,cat 135172,frog 135173,deer 135174,dog 135175,cat 135176,dog 135177,horse 135178,truck 135179,bird 135180,dog 135181,truck 135182,ship 135183,airplane 135184,airplane 135185,airplane 135186,automobile 135187,airplane 135188,horse 135189,dog 135190,automobile 135191,deer 135192,frog 135193,ship 135194,truck 135195,frog 135196,dog 135197,cat 135198,bird 135199,horse 135200,deer 135201,truck 135202,truck 135203,airplane 135204,cat 135205,deer 135206,cat 135207,frog 135208,ship 135209,cat 135210,dog 135211,horse 135212,ship 135213,frog 135214,airplane 135215,frog 135216,frog 135217,truck 135218,cat 135219,bird 135220,truck 135221,automobile 135222,bird 135223,frog 135224,frog 135225,bird 135226,ship 135227,truck 135228,airplane 135229,automobile 135230,airplane 135231,cat 135232,automobile 135233,truck 135234,horse 135235,automobile 135236,deer 135237,deer 135238,frog 135239,truck 135240,frog 135241,airplane 135242,airplane 135243,frog 135244,ship 135245,horse 135246,truck 135247,horse 135248,cat 135249,frog 135250,deer 135251,bird 135252,cat 135253,frog 135254,deer 135255,bird 135256,horse 135257,cat 135258,horse 135259,deer 135260,dog 135261,frog 135262,horse 135263,deer 135264,cat 135265,truck 135266,frog 135267,airplane 135268,truck 135269,bird 135270,frog 135271,ship 135272,deer 135273,truck 135274,bird 135275,cat 135276,automobile 135277,frog 135278,deer 135279,truck 135280,automobile 135281,cat 135282,cat 135283,airplane 135284,deer 135285,deer 135286,truck 135287,cat 135288,cat 135289,deer 135290,dog 135291,automobile 135292,bird 135293,frog 135294,frog 135295,deer 135296,horse 135297,cat 135298,cat 135299,bird 135300,cat 135301,ship 135302,deer 135303,ship 135304,truck 135305,horse 135306,truck 135307,deer 135308,automobile 135309,truck 135310,cat 135311,deer 135312,airplane 135313,bird 135314,cat 135315,frog 135316,dog 135317,ship 135318,ship 135319,dog 135320,frog 135321,ship 135322,automobile 135323,frog 135324,cat 135325,truck 135326,deer 135327,dog 135328,airplane 135329,cat 135330,cat 135331,deer 135332,frog 135333,frog 135334,frog 135335,ship 135336,airplane 135337,cat 135338,truck 135339,bird 135340,ship 135341,truck 135342,automobile 135343,airplane 135344,deer 135345,frog 135346,dog 135347,bird 135348,ship 135349,horse 135350,airplane 135351,automobile 135352,dog 135353,cat 135354,deer 135355,frog 135356,dog 135357,automobile 135358,truck 135359,automobile 135360,dog 135361,deer 135362,truck 135363,deer 135364,bird 135365,ship 135366,deer 135367,automobile 135368,bird 135369,horse 135370,dog 135371,cat 135372,bird 135373,airplane 135374,dog 135375,cat 135376,ship 135377,deer 135378,cat 135379,frog 135380,truck 135381,frog 135382,deer 135383,truck 135384,bird 135385,dog 135386,automobile 135387,deer 135388,horse 135389,cat 135390,frog 135391,truck 135392,frog 135393,horse 135394,cat 135395,frog 135396,automobile 135397,truck 135398,bird 135399,automobile 135400,deer 135401,horse 135402,deer 135403,frog 135404,dog 135405,airplane 135406,airplane 135407,truck 135408,deer 135409,horse 135410,cat 135411,horse 135412,truck 135413,cat 135414,airplane 135415,bird 135416,cat 135417,airplane 135418,airplane 135419,bird 135420,airplane 135421,frog 135422,frog 135423,bird 135424,frog 135425,airplane 135426,airplane 135427,dog 135428,cat 135429,truck 135430,frog 135431,truck 135432,horse 135433,bird 135434,bird 135435,frog 135436,ship 135437,frog 135438,truck 135439,automobile 135440,airplane 135441,dog 135442,frog 135443,ship 135444,airplane 135445,cat 135446,truck 135447,cat 135448,truck 135449,airplane 135450,truck 135451,ship 135452,bird 135453,dog 135454,airplane 135455,automobile 135456,truck 135457,truck 135458,cat 135459,frog 135460,cat 135461,dog 135462,truck 135463,frog 135464,frog 135465,automobile 135466,deer 135467,dog 135468,cat 135469,horse 135470,bird 135471,horse 135472,deer 135473,frog 135474,frog 135475,bird 135476,cat 135477,cat 135478,frog 135479,bird 135480,dog 135481,airplane 135482,dog 135483,automobile 135484,truck 135485,deer 135486,truck 135487,frog 135488,horse 135489,cat 135490,cat 135491,deer 135492,airplane 135493,frog 135494,automobile 135495,bird 135496,airplane 135497,horse 135498,dog 135499,airplane 135500,cat 135501,truck 135502,horse 135503,cat 135504,frog 135505,airplane 135506,truck 135507,frog 135508,frog 135509,frog 135510,automobile 135511,automobile 135512,bird 135513,bird 135514,deer 135515,deer 135516,cat 135517,automobile 135518,automobile 135519,deer 135520,dog 135521,cat 135522,truck 135523,cat 135524,deer 135525,cat 135526,airplane 135527,airplane 135528,automobile 135529,cat 135530,cat 135531,deer 135532,bird 135533,ship 135534,automobile 135535,deer 135536,frog 135537,frog 135538,automobile 135539,truck 135540,ship 135541,bird 135542,ship 135543,deer 135544,cat 135545,deer 135546,horse 135547,cat 135548,horse 135549,cat 135550,truck 135551,horse 135552,airplane 135553,airplane 135554,deer 135555,bird 135556,cat 135557,dog 135558,cat 135559,automobile 135560,frog 135561,truck 135562,automobile 135563,truck 135564,bird 135565,horse 135566,bird 135567,deer 135568,deer 135569,frog 135570,truck 135571,automobile 135572,cat 135573,airplane 135574,automobile 135575,truck 135576,frog 135577,frog 135578,truck 135579,cat 135580,cat 135581,dog 135582,cat 135583,automobile 135584,horse 135585,horse 135586,dog 135587,ship 135588,airplane 135589,deer 135590,frog 135591,dog 135592,dog 135593,truck 135594,horse 135595,cat 135596,truck 135597,frog 135598,truck 135599,frog 135600,frog 135601,dog 135602,frog 135603,deer 135604,deer 135605,automobile 135606,horse 135607,dog 135608,cat 135609,airplane 135610,cat 135611,cat 135612,dog 135613,dog 135614,deer 135615,airplane 135616,ship 135617,cat 135618,cat 135619,airplane 135620,ship 135621,dog 135622,dog 135623,dog 135624,automobile 135625,airplane 135626,ship 135627,deer 135628,cat 135629,dog 135630,cat 135631,ship 135632,automobile 135633,truck 135634,deer 135635,bird 135636,automobile 135637,automobile 135638,truck 135639,bird 135640,airplane 135641,automobile 135642,airplane 135643,cat 135644,dog 135645,cat 135646,frog 135647,cat 135648,airplane 135649,frog 135650,dog 135651,cat 135652,truck 135653,truck 135654,deer 135655,dog 135656,cat 135657,truck 135658,deer 135659,cat 135660,ship 135661,cat 135662,deer 135663,truck 135664,cat 135665,airplane 135666,cat 135667,deer 135668,cat 135669,cat 135670,cat 135671,frog 135672,cat 135673,truck 135674,dog 135675,cat 135676,horse 135677,cat 135678,deer 135679,ship 135680,frog 135681,deer 135682,airplane 135683,truck 135684,airplane 135685,deer 135686,cat 135687,automobile 135688,cat 135689,truck 135690,deer 135691,horse 135692,ship 135693,automobile 135694,truck 135695,dog 135696,dog 135697,dog 135698,dog 135699,cat 135700,horse 135701,bird 135702,deer 135703,ship 135704,dog 135705,truck 135706,cat 135707,truck 135708,frog 135709,truck 135710,automobile 135711,horse 135712,truck 135713,deer 135714,truck 135715,automobile 135716,truck 135717,automobile 135718,deer 135719,airplane 135720,bird 135721,automobile 135722,truck 135723,ship 135724,deer 135725,frog 135726,deer 135727,cat 135728,airplane 135729,cat 135730,airplane 135731,deer 135732,truck 135733,bird 135734,bird 135735,ship 135736,cat 135737,horse 135738,truck 135739,horse 135740,truck 135741,dog 135742,deer 135743,frog 135744,dog 135745,airplane 135746,horse 135747,ship 135748,automobile 135749,automobile 135750,frog 135751,cat 135752,deer 135753,cat 135754,frog 135755,frog 135756,horse 135757,horse 135758,deer 135759,automobile 135760,automobile 135761,dog 135762,automobile 135763,cat 135764,truck 135765,deer 135766,truck 135767,bird 135768,airplane 135769,cat 135770,dog 135771,dog 135772,deer 135773,cat 135774,dog 135775,truck 135776,bird 135777,frog 135778,cat 135779,deer 135780,frog 135781,cat 135782,truck 135783,cat 135784,dog 135785,airplane 135786,frog 135787,deer 135788,dog 135789,dog 135790,horse 135791,cat 135792,bird 135793,horse 135794,frog 135795,bird 135796,airplane 135797,deer 135798,airplane 135799,bird 135800,horse 135801,ship 135802,deer 135803,cat 135804,automobile 135805,dog 135806,frog 135807,ship 135808,deer 135809,dog 135810,dog 135811,automobile 135812,deer 135813,horse 135814,bird 135815,truck 135816,truck 135817,automobile 135818,airplane 135819,ship 135820,airplane 135821,ship 135822,dog 135823,dog 135824,bird 135825,airplane 135826,horse 135827,frog 135828,bird 135829,bird 135830,deer 135831,cat 135832,frog 135833,ship 135834,frog 135835,deer 135836,frog 135837,cat 135838,automobile 135839,automobile 135840,horse 135841,ship 135842,airplane 135843,deer 135844,ship 135845,truck 135846,automobile 135847,cat 135848,cat 135849,cat 135850,ship 135851,deer 135852,bird 135853,deer 135854,deer 135855,automobile 135856,deer 135857,cat 135858,airplane 135859,horse 135860,cat 135861,automobile 135862,truck 135863,dog 135864,truck 135865,truck 135866,frog 135867,dog 135868,ship 135869,truck 135870,bird 135871,deer 135872,cat 135873,airplane 135874,frog 135875,cat 135876,cat 135877,deer 135878,frog 135879,frog 135880,horse 135881,automobile 135882,cat 135883,airplane 135884,deer 135885,ship 135886,bird 135887,deer 135888,cat 135889,automobile 135890,deer 135891,bird 135892,deer 135893,frog 135894,cat 135895,cat 135896,truck 135897,frog 135898,dog 135899,ship 135900,cat 135901,cat 135902,horse 135903,truck 135904,deer 135905,dog 135906,dog 135907,frog 135908,deer 135909,ship 135910,frog 135911,deer 135912,dog 135913,frog 135914,ship 135915,airplane 135916,deer 135917,dog 135918,deer 135919,frog 135920,deer 135921,automobile 135922,deer 135923,cat 135924,deer 135925,ship 135926,deer 135927,deer 135928,cat 135929,frog 135930,airplane 135931,frog 135932,ship 135933,airplane 135934,bird 135935,cat 135936,horse 135937,horse 135938,cat 135939,bird 135940,deer 135941,airplane 135942,cat 135943,cat 135944,deer 135945,frog 135946,truck 135947,frog 135948,frog 135949,airplane 135950,dog 135951,cat 135952,deer 135953,deer 135954,airplane 135955,frog 135956,horse 135957,cat 135958,frog 135959,airplane 135960,cat 135961,cat 135962,deer 135963,frog 135964,automobile 135965,deer 135966,dog 135967,dog 135968,ship 135969,dog 135970,dog 135971,automobile 135972,horse 135973,truck 135974,frog 135975,airplane 135976,automobile 135977,deer 135978,cat 135979,automobile 135980,airplane 135981,horse 135982,horse 135983,dog 135984,deer 135985,deer 135986,cat 135987,truck 135988,dog 135989,cat 135990,truck 135991,truck 135992,airplane 135993,ship 135994,horse 135995,deer 135996,frog 135997,deer 135998,frog 135999,horse 136000,ship 136001,horse 136002,bird 136003,automobile 136004,cat 136005,cat 136006,truck 136007,truck 136008,cat 136009,bird 136010,frog 136011,bird 136012,dog 136013,airplane 136014,horse 136015,airplane 136016,horse 136017,bird 136018,cat 136019,truck 136020,airplane 136021,ship 136022,airplane 136023,deer 136024,frog 136025,truck 136026,truck 136027,frog 136028,bird 136029,truck 136030,horse 136031,dog 136032,horse 136033,deer 136034,frog 136035,cat 136036,airplane 136037,truck 136038,bird 136039,deer 136040,horse 136041,bird 136042,truck 136043,ship 136044,horse 136045,automobile 136046,bird 136047,dog 136048,truck 136049,cat 136050,horse 136051,bird 136052,horse 136053,dog 136054,deer 136055,horse 136056,bird 136057,cat 136058,truck 136059,frog 136060,cat 136061,ship 136062,bird 136063,ship 136064,dog 136065,frog 136066,dog 136067,dog 136068,bird 136069,truck 136070,dog 136071,airplane 136072,ship 136073,airplane 136074,deer 136075,dog 136076,dog 136077,airplane 136078,horse 136079,cat 136080,cat 136081,horse 136082,automobile 136083,automobile 136084,airplane 136085,ship 136086,frog 136087,truck 136088,cat 136089,frog 136090,airplane 136091,bird 136092,ship 136093,cat 136094,airplane 136095,airplane 136096,airplane 136097,bird 136098,dog 136099,truck 136100,automobile 136101,ship 136102,frog 136103,frog 136104,cat 136105,deer 136106,ship 136107,cat 136108,truck 136109,horse 136110,frog 136111,truck 136112,horse 136113,dog 136114,airplane 136115,automobile 136116,frog 136117,truck 136118,dog 136119,automobile 136120,horse 136121,frog 136122,dog 136123,frog 136124,ship 136125,automobile 136126,horse 136127,deer 136128,ship 136129,ship 136130,frog 136131,bird 136132,dog 136133,airplane 136134,bird 136135,airplane 136136,deer 136137,dog 136138,deer 136139,dog 136140,deer 136141,deer 136142,bird 136143,ship 136144,frog 136145,cat 136146,ship 136147,deer 136148,automobile 136149,deer 136150,dog 136151,bird 136152,deer 136153,truck 136154,cat 136155,bird 136156,dog 136157,deer 136158,dog 136159,horse 136160,ship 136161,ship 136162,horse 136163,deer 136164,bird 136165,ship 136166,automobile 136167,frog 136168,frog 136169,automobile 136170,dog 136171,deer 136172,airplane 136173,truck 136174,truck 136175,bird 136176,bird 136177,horse 136178,deer 136179,deer 136180,horse 136181,ship 136182,automobile 136183,bird 136184,dog 136185,dog 136186,frog 136187,frog 136188,horse 136189,ship 136190,truck 136191,horse 136192,frog 136193,automobile 136194,truck 136195,horse 136196,deer 136197,dog 136198,dog 136199,ship 136200,cat 136201,automobile 136202,deer 136203,deer 136204,frog 136205,deer 136206,airplane 136207,deer 136208,bird 136209,deer 136210,cat 136211,truck 136212,deer 136213,bird 136214,horse 136215,cat 136216,automobile 136217,airplane 136218,airplane 136219,deer 136220,airplane 136221,frog 136222,dog 136223,bird 136224,cat 136225,deer 136226,cat 136227,ship 136228,deer 136229,cat 136230,ship 136231,airplane 136232,automobile 136233,cat 136234,ship 136235,cat 136236,dog 136237,bird 136238,horse 136239,automobile 136240,ship 136241,truck 136242,dog 136243,deer 136244,deer 136245,airplane 136246,bird 136247,truck 136248,dog 136249,deer 136250,truck 136251,dog 136252,airplane 136253,airplane 136254,horse 136255,automobile 136256,truck 136257,frog 136258,dog 136259,frog 136260,truck 136261,deer 136262,dog 136263,dog 136264,horse 136265,frog 136266,automobile 136267,horse 136268,frog 136269,dog 136270,horse 136271,deer 136272,frog 136273,truck 136274,ship 136275,bird 136276,cat 136277,cat 136278,ship 136279,truck 136280,deer 136281,horse 136282,bird 136283,bird 136284,airplane 136285,ship 136286,bird 136287,cat 136288,horse 136289,cat 136290,dog 136291,dog 136292,bird 136293,deer 136294,truck 136295,cat 136296,ship 136297,horse 136298,frog 136299,automobile 136300,dog 136301,bird 136302,truck 136303,frog 136304,automobile 136305,automobile 136306,bird 136307,automobile 136308,deer 136309,horse 136310,automobile 136311,ship 136312,automobile 136313,cat 136314,dog 136315,deer 136316,cat 136317,ship 136318,airplane 136319,airplane 136320,frog 136321,automobile 136322,airplane 136323,frog 136324,truck 136325,deer 136326,ship 136327,cat 136328,ship 136329,truck 136330,cat 136331,deer 136332,deer 136333,dog 136334,cat 136335,automobile 136336,frog 136337,dog 136338,airplane 136339,bird 136340,airplane 136341,cat 136342,truck 136343,deer 136344,ship 136345,deer 136346,truck 136347,frog 136348,automobile 136349,truck 136350,frog 136351,horse 136352,frog 136353,truck 136354,airplane 136355,airplane 136356,frog 136357,dog 136358,dog 136359,horse 136360,horse 136361,frog 136362,deer 136363,airplane 136364,deer 136365,automobile 136366,dog 136367,cat 136368,frog 136369,dog 136370,automobile 136371,bird 136372,ship 136373,automobile 136374,bird 136375,automobile 136376,frog 136377,truck 136378,deer 136379,ship 136380,bird 136381,bird 136382,airplane 136383,airplane 136384,ship 136385,airplane 136386,cat 136387,dog 136388,airplane 136389,automobile 136390,horse 136391,dog 136392,automobile 136393,dog 136394,frog 136395,airplane 136396,cat 136397,airplane 136398,ship 136399,deer 136400,cat 136401,truck 136402,frog 136403,ship 136404,airplane 136405,deer 136406,cat 136407,airplane 136408,horse 136409,automobile 136410,deer 136411,ship 136412,deer 136413,truck 136414,truck 136415,truck 136416,frog 136417,airplane 136418,ship 136419,ship 136420,automobile 136421,truck 136422,truck 136423,cat 136424,truck 136425,frog 136426,deer 136427,bird 136428,truck 136429,ship 136430,dog 136431,deer 136432,truck 136433,automobile 136434,truck 136435,horse 136436,airplane 136437,ship 136438,deer 136439,horse 136440,frog 136441,frog 136442,ship 136443,cat 136444,automobile 136445,truck 136446,truck 136447,truck 136448,airplane 136449,dog 136450,truck 136451,dog 136452,frog 136453,deer 136454,cat 136455,deer 136456,dog 136457,deer 136458,ship 136459,airplane 136460,ship 136461,frog 136462,airplane 136463,horse 136464,airplane 136465,horse 136466,cat 136467,frog 136468,dog 136469,horse 136470,truck 136471,frog 136472,bird 136473,frog 136474,horse 136475,frog 136476,ship 136477,airplane 136478,horse 136479,bird 136480,horse 136481,truck 136482,horse 136483,bird 136484,bird 136485,frog 136486,automobile 136487,bird 136488,deer 136489,deer 136490,bird 136491,bird 136492,airplane 136493,truck 136494,cat 136495,bird 136496,bird 136497,cat 136498,dog 136499,cat 136500,airplane 136501,deer 136502,frog 136503,dog 136504,deer 136505,deer 136506,bird 136507,horse 136508,deer 136509,cat 136510,cat 136511,frog 136512,dog 136513,frog 136514,cat 136515,airplane 136516,frog 136517,cat 136518,airplane 136519,automobile 136520,automobile 136521,horse 136522,dog 136523,automobile 136524,cat 136525,bird 136526,deer 136527,deer 136528,frog 136529,automobile 136530,cat 136531,bird 136532,truck 136533,horse 136534,frog 136535,frog 136536,horse 136537,ship 136538,frog 136539,automobile 136540,truck 136541,cat 136542,automobile 136543,bird 136544,deer 136545,truck 136546,truck 136547,frog 136548,cat 136549,bird 136550,automobile 136551,frog 136552,truck 136553,deer 136554,cat 136555,deer 136556,airplane 136557,deer 136558,cat 136559,frog 136560,truck 136561,truck 136562,dog 136563,deer 136564,ship 136565,dog 136566,bird 136567,automobile 136568,airplane 136569,cat 136570,truck 136571,frog 136572,truck 136573,frog 136574,automobile 136575,truck 136576,cat 136577,dog 136578,bird 136579,bird 136580,cat 136581,deer 136582,deer 136583,truck 136584,frog 136585,deer 136586,automobile 136587,ship 136588,frog 136589,dog 136590,ship 136591,cat 136592,deer 136593,truck 136594,bird 136595,horse 136596,truck 136597,horse 136598,deer 136599,airplane 136600,dog 136601,dog 136602,ship 136603,cat 136604,dog 136605,dog 136606,airplane 136607,frog 136608,cat 136609,automobile 136610,truck 136611,cat 136612,deer 136613,truck 136614,deer 136615,horse 136616,dog 136617,bird 136618,horse 136619,bird 136620,frog 136621,truck 136622,airplane 136623,bird 136624,horse 136625,cat 136626,dog 136627,deer 136628,dog 136629,airplane 136630,truck 136631,airplane 136632,bird 136633,deer 136634,bird 136635,truck 136636,airplane 136637,horse 136638,cat 136639,airplane 136640,cat 136641,frog 136642,airplane 136643,bird 136644,bird 136645,dog 136646,truck 136647,ship 136648,horse 136649,dog 136650,dog 136651,cat 136652,airplane 136653,truck 136654,cat 136655,horse 136656,cat 136657,airplane 136658,frog 136659,automobile 136660,cat 136661,horse 136662,deer 136663,deer 136664,bird 136665,deer 136666,deer 136667,horse 136668,frog 136669,airplane 136670,truck 136671,horse 136672,airplane 136673,deer 136674,ship 136675,frog 136676,bird 136677,truck 136678,deer 136679,truck 136680,ship 136681,truck 136682,truck 136683,bird 136684,airplane 136685,horse 136686,airplane 136687,frog 136688,cat 136689,truck 136690,horse 136691,ship 136692,truck 136693,truck 136694,cat 136695,dog 136696,dog 136697,ship 136698,deer 136699,dog 136700,automobile 136701,automobile 136702,cat 136703,deer 136704,frog 136705,dog 136706,airplane 136707,truck 136708,truck 136709,truck 136710,cat 136711,deer 136712,cat 136713,ship 136714,deer 136715,automobile 136716,dog 136717,frog 136718,automobile 136719,ship 136720,deer 136721,bird 136722,bird 136723,deer 136724,truck 136725,ship 136726,cat 136727,deer 136728,frog 136729,dog 136730,deer 136731,dog 136732,frog 136733,cat 136734,horse 136735,deer 136736,ship 136737,horse 136738,cat 136739,deer 136740,deer 136741,airplane 136742,truck 136743,truck 136744,dog 136745,truck 136746,ship 136747,deer 136748,deer 136749,cat 136750,airplane 136751,deer 136752,bird 136753,cat 136754,ship 136755,horse 136756,cat 136757,cat 136758,airplane 136759,airplane 136760,truck 136761,truck 136762,deer 136763,cat 136764,dog 136765,cat 136766,deer 136767,frog 136768,bird 136769,frog 136770,dog 136771,deer 136772,cat 136773,cat 136774,cat 136775,truck 136776,bird 136777,cat 136778,deer 136779,airplane 136780,automobile 136781,cat 136782,bird 136783,automobile 136784,deer 136785,truck 136786,dog 136787,dog 136788,dog 136789,horse 136790,airplane 136791,deer 136792,deer 136793,ship 136794,deer 136795,deer 136796,ship 136797,airplane 136798,frog 136799,dog 136800,airplane 136801,truck 136802,horse 136803,airplane 136804,truck 136805,automobile 136806,frog 136807,cat 136808,airplane 136809,bird 136810,frog 136811,ship 136812,truck 136813,dog 136814,cat 136815,truck 136816,airplane 136817,horse 136818,dog 136819,frog 136820,ship 136821,cat 136822,truck 136823,airplane 136824,deer 136825,bird 136826,frog 136827,automobile 136828,ship 136829,frog 136830,frog 136831,frog 136832,cat 136833,bird 136834,deer 136835,automobile 136836,frog 136837,bird 136838,deer 136839,horse 136840,truck 136841,dog 136842,cat 136843,horse 136844,automobile 136845,automobile 136846,deer 136847,bird 136848,bird 136849,bird 136850,dog 136851,truck 136852,automobile 136853,deer 136854,cat 136855,cat 136856,dog 136857,automobile 136858,automobile 136859,horse 136860,truck 136861,horse 136862,ship 136863,cat 136864,ship 136865,truck 136866,frog 136867,frog 136868,dog 136869,ship 136870,cat 136871,ship 136872,dog 136873,deer 136874,ship 136875,cat 136876,truck 136877,frog 136878,cat 136879,dog 136880,deer 136881,cat 136882,deer 136883,deer 136884,dog 136885,bird 136886,dog 136887,horse 136888,ship 136889,automobile 136890,horse 136891,deer 136892,truck 136893,truck 136894,deer 136895,bird 136896,horse 136897,horse 136898,horse 136899,dog 136900,bird 136901,cat 136902,cat 136903,dog 136904,ship 136905,deer 136906,horse 136907,horse 136908,deer 136909,cat 136910,dog 136911,deer 136912,truck 136913,airplane 136914,ship 136915,deer 136916,cat 136917,truck 136918,frog 136919,automobile 136920,dog 136921,dog 136922,ship 136923,cat 136924,dog 136925,automobile 136926,ship 136927,horse 136928,automobile 136929,frog 136930,frog 136931,deer 136932,cat 136933,ship 136934,bird 136935,deer 136936,deer 136937,truck 136938,ship 136939,truck 136940,ship 136941,bird 136942,frog 136943,automobile 136944,bird 136945,deer 136946,horse 136947,dog 136948,bird 136949,frog 136950,automobile 136951,horse 136952,deer 136953,deer 136954,bird 136955,bird 136956,dog 136957,truck 136958,frog 136959,airplane 136960,frog 136961,horse 136962,airplane 136963,frog 136964,bird 136965,frog 136966,frog 136967,frog 136968,dog 136969,frog 136970,cat 136971,deer 136972,horse 136973,horse 136974,truck 136975,automobile 136976,horse 136977,deer 136978,bird 136979,truck 136980,automobile 136981,deer 136982,cat 136983,horse 136984,airplane 136985,deer 136986,horse 136987,automobile 136988,dog 136989,airplane 136990,truck 136991,ship 136992,cat 136993,bird 136994,horse 136995,bird 136996,horse 136997,cat 136998,truck 136999,cat 137000,airplane 137001,horse 137002,cat 137003,dog 137004,deer 137005,dog 137006,frog 137007,dog 137008,cat 137009,horse 137010,horse 137011,horse 137012,frog 137013,cat 137014,cat 137015,truck 137016,dog 137017,airplane 137018,dog 137019,cat 137020,automobile 137021,cat 137022,deer 137023,frog 137024,ship 137025,deer 137026,horse 137027,automobile 137028,frog 137029,ship 137030,horse 137031,truck 137032,truck 137033,horse 137034,cat 137035,truck 137036,frog 137037,dog 137038,horse 137039,deer 137040,frog 137041,deer 137042,truck 137043,deer 137044,deer 137045,automobile 137046,airplane 137047,automobile 137048,horse 137049,bird 137050,horse 137051,dog 137052,ship 137053,deer 137054,ship 137055,cat 137056,airplane 137057,dog 137058,truck 137059,deer 137060,truck 137061,cat 137062,dog 137063,truck 137064,automobile 137065,bird 137066,horse 137067,dog 137068,horse 137069,frog 137070,cat 137071,cat 137072,automobile 137073,deer 137074,deer 137075,cat 137076,cat 137077,frog 137078,cat 137079,automobile 137080,frog 137081,airplane 137082,bird 137083,cat 137084,automobile 137085,deer 137086,automobile 137087,dog 137088,bird 137089,deer 137090,truck 137091,airplane 137092,ship 137093,airplane 137094,horse 137095,bird 137096,horse 137097,automobile 137098,horse 137099,bird 137100,horse 137101,ship 137102,horse 137103,automobile 137104,truck 137105,truck 137106,cat 137107,dog 137108,deer 137109,deer 137110,ship 137111,frog 137112,bird 137113,deer 137114,horse 137115,cat 137116,horse 137117,automobile 137118,automobile 137119,airplane 137120,deer 137121,cat 137122,dog 137123,bird 137124,cat 137125,cat 137126,dog 137127,horse 137128,ship 137129,cat 137130,ship 137131,horse 137132,horse 137133,truck 137134,frog 137135,automobile 137136,frog 137137,horse 137138,bird 137139,frog 137140,dog 137141,airplane 137142,deer 137143,deer 137144,cat 137145,cat 137146,dog 137147,cat 137148,truck 137149,automobile 137150,deer 137151,airplane 137152,deer 137153,frog 137154,deer 137155,airplane 137156,bird 137157,deer 137158,ship 137159,truck 137160,deer 137161,dog 137162,airplane 137163,dog 137164,airplane 137165,automobile 137166,cat 137167,bird 137168,deer 137169,dog 137170,horse 137171,cat 137172,cat 137173,frog 137174,truck 137175,bird 137176,dog 137177,dog 137178,dog 137179,ship 137180,frog 137181,deer 137182,frog 137183,cat 137184,truck 137185,deer 137186,cat 137187,cat 137188,bird 137189,frog 137190,airplane 137191,horse 137192,airplane 137193,cat 137194,dog 137195,deer 137196,frog 137197,ship 137198,truck 137199,bird 137200,automobile 137201,dog 137202,cat 137203,cat 137204,truck 137205,deer 137206,dog 137207,airplane 137208,cat 137209,dog 137210,airplane 137211,horse 137212,truck 137213,deer 137214,horse 137215,horse 137216,horse 137217,cat 137218,cat 137219,deer 137220,airplane 137221,airplane 137222,truck 137223,deer 137224,frog 137225,truck 137226,ship 137227,deer 137228,horse 137229,airplane 137230,truck 137231,cat 137232,horse 137233,horse 137234,ship 137235,truck 137236,cat 137237,airplane 137238,airplane 137239,truck 137240,deer 137241,horse 137242,cat 137243,dog 137244,ship 137245,bird 137246,truck 137247,deer 137248,deer 137249,frog 137250,airplane 137251,dog 137252,deer 137253,dog 137254,frog 137255,dog 137256,truck 137257,airplane 137258,deer 137259,frog 137260,bird 137261,cat 137262,cat 137263,bird 137264,deer 137265,dog 137266,cat 137267,deer 137268,bird 137269,horse 137270,automobile 137271,ship 137272,deer 137273,horse 137274,dog 137275,truck 137276,airplane 137277,automobile 137278,truck 137279,dog 137280,frog 137281,automobile 137282,ship 137283,bird 137284,deer 137285,deer 137286,airplane 137287,horse 137288,deer 137289,deer 137290,airplane 137291,frog 137292,airplane 137293,ship 137294,bird 137295,ship 137296,deer 137297,deer 137298,truck 137299,airplane 137300,dog 137301,deer 137302,deer 137303,automobile 137304,airplane 137305,truck 137306,bird 137307,airplane 137308,dog 137309,dog 137310,cat 137311,cat 137312,horse 137313,cat 137314,cat 137315,bird 137316,deer 137317,airplane 137318,dog 137319,dog 137320,airplane 137321,horse 137322,dog 137323,deer 137324,automobile 137325,bird 137326,airplane 137327,dog 137328,cat 137329,truck 137330,truck 137331,bird 137332,cat 137333,deer 137334,deer 137335,dog 137336,truck 137337,deer 137338,frog 137339,automobile 137340,automobile 137341,truck 137342,truck 137343,bird 137344,cat 137345,airplane 137346,bird 137347,horse 137348,deer 137349,dog 137350,cat 137351,truck 137352,truck 137353,truck 137354,deer 137355,ship 137356,airplane 137357,airplane 137358,truck 137359,airplane 137360,airplane 137361,deer 137362,dog 137363,truck 137364,airplane 137365,ship 137366,frog 137367,bird 137368,truck 137369,horse 137370,cat 137371,automobile 137372,dog 137373,deer 137374,frog 137375,horse 137376,cat 137377,bird 137378,truck 137379,ship 137380,cat 137381,deer 137382,dog 137383,dog 137384,truck 137385,airplane 137386,airplane 137387,horse 137388,frog 137389,cat 137390,truck 137391,deer 137392,horse 137393,horse 137394,bird 137395,cat 137396,bird 137397,bird 137398,dog 137399,ship 137400,airplane 137401,automobile 137402,truck 137403,cat 137404,deer 137405,horse 137406,cat 137407,horse 137408,frog 137409,deer 137410,cat 137411,deer 137412,frog 137413,airplane 137414,cat 137415,cat 137416,horse 137417,ship 137418,dog 137419,frog 137420,deer 137421,frog 137422,deer 137423,cat 137424,horse 137425,horse 137426,cat 137427,horse 137428,airplane 137429,bird 137430,bird 137431,deer 137432,bird 137433,dog 137434,frog 137435,cat 137436,cat 137437,cat 137438,cat 137439,deer 137440,automobile 137441,airplane 137442,frog 137443,deer 137444,truck 137445,frog 137446,airplane 137447,frog 137448,truck 137449,frog 137450,airplane 137451,cat 137452,cat 137453,horse 137454,deer 137455,bird 137456,dog 137457,frog 137458,horse 137459,ship 137460,truck 137461,deer 137462,airplane 137463,dog 137464,deer 137465,frog 137466,airplane 137467,deer 137468,frog 137469,frog 137470,truck 137471,truck 137472,truck 137473,cat 137474,dog 137475,dog 137476,ship 137477,frog 137478,ship 137479,cat 137480,deer 137481,airplane 137482,horse 137483,dog 137484,airplane 137485,cat 137486,frog 137487,frog 137488,airplane 137489,dog 137490,horse 137491,cat 137492,cat 137493,airplane 137494,cat 137495,airplane 137496,frog 137497,deer 137498,ship 137499,dog 137500,cat 137501,cat 137502,ship 137503,dog 137504,deer 137505,horse 137506,airplane 137507,frog 137508,ship 137509,dog 137510,dog 137511,bird 137512,cat 137513,ship 137514,cat 137515,dog 137516,automobile 137517,horse 137518,horse 137519,automobile 137520,dog 137521,ship 137522,truck 137523,dog 137524,airplane 137525,horse 137526,cat 137527,truck 137528,deer 137529,dog 137530,deer 137531,airplane 137532,automobile 137533,horse 137534,horse 137535,cat 137536,cat 137537,horse 137538,frog 137539,horse 137540,automobile 137541,deer 137542,dog 137543,dog 137544,dog 137545,bird 137546,truck 137547,cat 137548,deer 137549,airplane 137550,cat 137551,airplane 137552,automobile 137553,horse 137554,truck 137555,deer 137556,horse 137557,dog 137558,dog 137559,frog 137560,ship 137561,deer 137562,dog 137563,truck 137564,horse 137565,deer 137566,truck 137567,cat 137568,cat 137569,dog 137570,cat 137571,horse 137572,ship 137573,cat 137574,airplane 137575,frog 137576,bird 137577,frog 137578,frog 137579,frog 137580,bird 137581,truck 137582,frog 137583,cat 137584,ship 137585,dog 137586,frog 137587,frog 137588,horse 137589,deer 137590,dog 137591,horse 137592,deer 137593,bird 137594,deer 137595,deer 137596,cat 137597,truck 137598,ship 137599,truck 137600,deer 137601,bird 137602,truck 137603,deer 137604,deer 137605,airplane 137606,bird 137607,dog 137608,ship 137609,dog 137610,dog 137611,truck 137612,dog 137613,frog 137614,truck 137615,bird 137616,deer 137617,airplane 137618,dog 137619,horse 137620,dog 137621,airplane 137622,frog 137623,cat 137624,dog 137625,frog 137626,deer 137627,airplane 137628,horse 137629,dog 137630,airplane 137631,automobile 137632,dog 137633,frog 137634,cat 137635,truck 137636,bird 137637,cat 137638,bird 137639,automobile 137640,deer 137641,bird 137642,cat 137643,truck 137644,horse 137645,bird 137646,dog 137647,airplane 137648,cat 137649,cat 137650,cat 137651,dog 137652,deer 137653,cat 137654,cat 137655,dog 137656,bird 137657,frog 137658,truck 137659,dog 137660,bird 137661,frog 137662,cat 137663,cat 137664,dog 137665,deer 137666,horse 137667,truck 137668,airplane 137669,cat 137670,truck 137671,dog 137672,airplane 137673,bird 137674,bird 137675,deer 137676,bird 137677,ship 137678,dog 137679,dog 137680,cat 137681,automobile 137682,airplane 137683,deer 137684,frog 137685,automobile 137686,frog 137687,horse 137688,frog 137689,frog 137690,cat 137691,bird 137692,deer 137693,cat 137694,deer 137695,horse 137696,horse 137697,cat 137698,frog 137699,dog 137700,dog 137701,dog 137702,cat 137703,truck 137704,bird 137705,cat 137706,bird 137707,frog 137708,airplane 137709,bird 137710,ship 137711,truck 137712,frog 137713,cat 137714,bird 137715,bird 137716,horse 137717,automobile 137718,airplane 137719,dog 137720,truck 137721,automobile 137722,truck 137723,horse 137724,dog 137725,frog 137726,deer 137727,horse 137728,dog 137729,frog 137730,deer 137731,dog 137732,deer 137733,frog 137734,automobile 137735,horse 137736,airplane 137737,deer 137738,bird 137739,ship 137740,frog 137741,horse 137742,bird 137743,frog 137744,deer 137745,frog 137746,dog 137747,deer 137748,horse 137749,cat 137750,deer 137751,truck 137752,cat 137753,automobile 137754,dog 137755,frog 137756,airplane 137757,horse 137758,truck 137759,cat 137760,deer 137761,automobile 137762,automobile 137763,truck 137764,automobile 137765,horse 137766,bird 137767,deer 137768,bird 137769,automobile 137770,ship 137771,cat 137772,truck 137773,frog 137774,horse 137775,horse 137776,dog 137777,cat 137778,bird 137779,deer 137780,airplane 137781,automobile 137782,deer 137783,bird 137784,truck 137785,airplane 137786,dog 137787,truck 137788,dog 137789,cat 137790,truck 137791,dog 137792,deer 137793,airplane 137794,cat 137795,ship 137796,deer 137797,airplane 137798,dog 137799,bird 137800,truck 137801,truck 137802,bird 137803,frog 137804,automobile 137805,airplane 137806,truck 137807,dog 137808,cat 137809,bird 137810,ship 137811,automobile 137812,truck 137813,frog 137814,ship 137815,dog 137816,horse 137817,deer 137818,deer 137819,truck 137820,ship 137821,airplane 137822,horse 137823,frog 137824,frog 137825,cat 137826,ship 137827,bird 137828,horse 137829,automobile 137830,horse 137831,horse 137832,ship 137833,horse 137834,deer 137835,automobile 137836,airplane 137837,automobile 137838,horse 137839,cat 137840,ship 137841,frog 137842,airplane 137843,deer 137844,truck 137845,airplane 137846,ship 137847,bird 137848,airplane 137849,truck 137850,ship 137851,horse 137852,dog 137853,cat 137854,dog 137855,deer 137856,ship 137857,truck 137858,airplane 137859,airplane 137860,bird 137861,ship 137862,airplane 137863,horse 137864,automobile 137865,cat 137866,frog 137867,frog 137868,dog 137869,cat 137870,ship 137871,frog 137872,frog 137873,airplane 137874,frog 137875,frog 137876,truck 137877,horse 137878,bird 137879,dog 137880,deer 137881,deer 137882,dog 137883,automobile 137884,cat 137885,truck 137886,automobile 137887,deer 137888,airplane 137889,dog 137890,cat 137891,truck 137892,bird 137893,bird 137894,horse 137895,frog 137896,frog 137897,horse 137898,truck 137899,frog 137900,automobile 137901,truck 137902,cat 137903,cat 137904,horse 137905,automobile 137906,airplane 137907,bird 137908,bird 137909,frog 137910,deer 137911,dog 137912,bird 137913,bird 137914,airplane 137915,ship 137916,cat 137917,truck 137918,cat 137919,frog 137920,cat 137921,deer 137922,truck 137923,truck 137924,bird 137925,ship 137926,dog 137927,frog 137928,bird 137929,horse 137930,airplane 137931,horse 137932,deer 137933,cat 137934,ship 137935,automobile 137936,airplane 137937,airplane 137938,deer 137939,deer 137940,deer 137941,airplane 137942,deer 137943,horse 137944,frog 137945,frog 137946,cat 137947,dog 137948,cat 137949,deer 137950,horse 137951,truck 137952,horse 137953,frog 137954,bird 137955,bird 137956,horse 137957,airplane 137958,dog 137959,dog 137960,dog 137961,bird 137962,truck 137963,ship 137964,deer 137965,cat 137966,deer 137967,frog 137968,frog 137969,bird 137970,bird 137971,dog 137972,bird 137973,cat 137974,bird 137975,frog 137976,frog 137977,frog 137978,bird 137979,truck 137980,airplane 137981,automobile 137982,bird 137983,automobile 137984,cat 137985,horse 137986,bird 137987,horse 137988,dog 137989,automobile 137990,horse 137991,deer 137992,truck 137993,bird 137994,cat 137995,deer 137996,truck 137997,frog 137998,frog 137999,deer 138000,truck 138001,deer 138002,deer 138003,bird 138004,cat 138005,ship 138006,automobile 138007,horse 138008,dog 138009,deer 138010,dog 138011,ship 138012,dog 138013,airplane 138014,bird 138015,frog 138016,bird 138017,truck 138018,truck 138019,deer 138020,truck 138021,bird 138022,frog 138023,cat 138024,deer 138025,deer 138026,frog 138027,deer 138028,horse 138029,ship 138030,truck 138031,horse 138032,frog 138033,airplane 138034,horse 138035,deer 138036,cat 138037,truck 138038,bird 138039,airplane 138040,ship 138041,deer 138042,automobile 138043,frog 138044,dog 138045,truck 138046,airplane 138047,airplane 138048,deer 138049,dog 138050,airplane 138051,automobile 138052,dog 138053,truck 138054,truck 138055,horse 138056,deer 138057,dog 138058,horse 138059,automobile 138060,dog 138061,deer 138062,cat 138063,deer 138064,frog 138065,deer 138066,automobile 138067,automobile 138068,frog 138069,automobile 138070,cat 138071,ship 138072,ship 138073,truck 138074,frog 138075,dog 138076,truck 138077,cat 138078,ship 138079,deer 138080,horse 138081,horse 138082,airplane 138083,frog 138084,truck 138085,cat 138086,cat 138087,airplane 138088,cat 138089,cat 138090,horse 138091,frog 138092,horse 138093,airplane 138094,horse 138095,airplane 138096,ship 138097,dog 138098,dog 138099,ship 138100,dog 138101,deer 138102,horse 138103,deer 138104,horse 138105,deer 138106,automobile 138107,horse 138108,dog 138109,frog 138110,bird 138111,bird 138112,frog 138113,automobile 138114,automobile 138115,truck 138116,horse 138117,dog 138118,frog 138119,automobile 138120,airplane 138121,dog 138122,deer 138123,deer 138124,automobile 138125,dog 138126,truck 138127,ship 138128,airplane 138129,cat 138130,airplane 138131,automobile 138132,truck 138133,horse 138134,horse 138135,bird 138136,ship 138137,automobile 138138,cat 138139,frog 138140,automobile 138141,horse 138142,horse 138143,dog 138144,airplane 138145,horse 138146,ship 138147,truck 138148,truck 138149,cat 138150,cat 138151,airplane 138152,cat 138153,frog 138154,truck 138155,dog 138156,truck 138157,ship 138158,horse 138159,frog 138160,airplane 138161,dog 138162,ship 138163,cat 138164,deer 138165,truck 138166,truck 138167,bird 138168,horse 138169,frog 138170,horse 138171,airplane 138172,ship 138173,frog 138174,cat 138175,truck 138176,horse 138177,horse 138178,bird 138179,ship 138180,cat 138181,cat 138182,cat 138183,automobile 138184,ship 138185,automobile 138186,deer 138187,automobile 138188,deer 138189,ship 138190,deer 138191,truck 138192,dog 138193,frog 138194,dog 138195,horse 138196,truck 138197,truck 138198,frog 138199,automobile 138200,deer 138201,bird 138202,truck 138203,frog 138204,ship 138205,frog 138206,cat 138207,ship 138208,ship 138209,ship 138210,bird 138211,automobile 138212,frog 138213,ship 138214,automobile 138215,dog 138216,cat 138217,cat 138218,ship 138219,horse 138220,ship 138221,cat 138222,truck 138223,automobile 138224,automobile 138225,ship 138226,horse 138227,frog 138228,dog 138229,bird 138230,truck 138231,truck 138232,bird 138233,bird 138234,cat 138235,frog 138236,frog 138237,dog 138238,cat 138239,automobile 138240,bird 138241,airplane 138242,frog 138243,dog 138244,horse 138245,dog 138246,dog 138247,deer 138248,cat 138249,airplane 138250,deer 138251,airplane 138252,ship 138253,truck 138254,truck 138255,ship 138256,airplane 138257,deer 138258,automobile 138259,airplane 138260,deer 138261,ship 138262,cat 138263,deer 138264,horse 138265,truck 138266,bird 138267,deer 138268,dog 138269,deer 138270,cat 138271,dog 138272,dog 138273,cat 138274,airplane 138275,dog 138276,bird 138277,dog 138278,truck 138279,deer 138280,deer 138281,horse 138282,truck 138283,cat 138284,cat 138285,cat 138286,bird 138287,cat 138288,deer 138289,truck 138290,dog 138291,cat 138292,deer 138293,deer 138294,automobile 138295,deer 138296,truck 138297,truck 138298,cat 138299,deer 138300,frog 138301,cat 138302,cat 138303,cat 138304,airplane 138305,frog 138306,automobile 138307,frog 138308,bird 138309,truck 138310,deer 138311,horse 138312,dog 138313,cat 138314,ship 138315,deer 138316,truck 138317,automobile 138318,dog 138319,bird 138320,automobile 138321,bird 138322,bird 138323,horse 138324,ship 138325,dog 138326,cat 138327,automobile 138328,frog 138329,airplane 138330,deer 138331,airplane 138332,frog 138333,automobile 138334,cat 138335,bird 138336,dog 138337,cat 138338,ship 138339,deer 138340,truck 138341,frog 138342,frog 138343,airplane 138344,cat 138345,bird 138346,truck 138347,dog 138348,automobile 138349,ship 138350,deer 138351,deer 138352,airplane 138353,deer 138354,automobile 138355,airplane 138356,automobile 138357,horse 138358,deer 138359,ship 138360,frog 138361,cat 138362,frog 138363,frog 138364,deer 138365,cat 138366,dog 138367,truck 138368,truck 138369,cat 138370,truck 138371,horse 138372,automobile 138373,ship 138374,bird 138375,frog 138376,truck 138377,bird 138378,bird 138379,bird 138380,automobile 138381,horse 138382,frog 138383,cat 138384,airplane 138385,airplane 138386,bird 138387,ship 138388,truck 138389,truck 138390,truck 138391,airplane 138392,deer 138393,cat 138394,airplane 138395,truck 138396,deer 138397,truck 138398,frog 138399,bird 138400,dog 138401,airplane 138402,bird 138403,airplane 138404,frog 138405,bird 138406,ship 138407,ship 138408,truck 138409,deer 138410,airplane 138411,dog 138412,cat 138413,bird 138414,ship 138415,frog 138416,frog 138417,frog 138418,bird 138419,airplane 138420,cat 138421,deer 138422,airplane 138423,airplane 138424,automobile 138425,cat 138426,deer 138427,truck 138428,airplane 138429,automobile 138430,automobile 138431,frog 138432,automobile 138433,deer 138434,bird 138435,horse 138436,bird 138437,dog 138438,horse 138439,deer 138440,airplane 138441,frog 138442,automobile 138443,deer 138444,automobile 138445,cat 138446,cat 138447,deer 138448,dog 138449,frog 138450,dog 138451,deer 138452,dog 138453,frog 138454,truck 138455,truck 138456,airplane 138457,horse 138458,deer 138459,deer 138460,horse 138461,automobile 138462,ship 138463,truck 138464,bird 138465,truck 138466,dog 138467,horse 138468,airplane 138469,truck 138470,cat 138471,cat 138472,truck 138473,deer 138474,ship 138475,deer 138476,automobile 138477,truck 138478,horse 138479,bird 138480,ship 138481,bird 138482,horse 138483,bird 138484,bird 138485,airplane 138486,deer 138487,cat 138488,automobile 138489,ship 138490,dog 138491,deer 138492,horse 138493,deer 138494,automobile 138495,airplane 138496,cat 138497,bird 138498,horse 138499,horse 138500,deer 138501,automobile 138502,horse 138503,ship 138504,horse 138505,bird 138506,cat 138507,ship 138508,ship 138509,cat 138510,bird 138511,frog 138512,horse 138513,frog 138514,frog 138515,automobile 138516,deer 138517,cat 138518,ship 138519,deer 138520,deer 138521,bird 138522,horse 138523,cat 138524,bird 138525,dog 138526,dog 138527,airplane 138528,cat 138529,ship 138530,horse 138531,automobile 138532,horse 138533,deer 138534,deer 138535,horse 138536,frog 138537,dog 138538,dog 138539,bird 138540,deer 138541,truck 138542,truck 138543,horse 138544,horse 138545,airplane 138546,truck 138547,frog 138548,automobile 138549,deer 138550,automobile 138551,horse 138552,bird 138553,truck 138554,deer 138555,cat 138556,cat 138557,horse 138558,dog 138559,airplane 138560,airplane 138561,deer 138562,horse 138563,cat 138564,frog 138565,automobile 138566,deer 138567,airplane 138568,horse 138569,frog 138570,dog 138571,truck 138572,automobile 138573,dog 138574,ship 138575,bird 138576,dog 138577,airplane 138578,ship 138579,truck 138580,ship 138581,automobile 138582,dog 138583,ship 138584,horse 138585,horse 138586,cat 138587,frog 138588,dog 138589,horse 138590,dog 138591,cat 138592,horse 138593,airplane 138594,cat 138595,airplane 138596,frog 138597,dog 138598,airplane 138599,cat 138600,bird 138601,truck 138602,automobile 138603,dog 138604,dog 138605,automobile 138606,cat 138607,ship 138608,cat 138609,deer 138610,dog 138611,frog 138612,frog 138613,deer 138614,dog 138615,frog 138616,deer 138617,airplane 138618,dog 138619,bird 138620,bird 138621,horse 138622,frog 138623,horse 138624,deer 138625,ship 138626,automobile 138627,horse 138628,deer 138629,ship 138630,deer 138631,dog 138632,airplane 138633,frog 138634,dog 138635,dog 138636,cat 138637,cat 138638,bird 138639,truck 138640,cat 138641,frog 138642,airplane 138643,cat 138644,deer 138645,frog 138646,bird 138647,bird 138648,truck 138649,frog 138650,frog 138651,dog 138652,dog 138653,automobile 138654,deer 138655,deer 138656,truck 138657,dog 138658,bird 138659,deer 138660,ship 138661,bird 138662,dog 138663,airplane 138664,bird 138665,automobile 138666,automobile 138667,airplane 138668,ship 138669,deer 138670,frog 138671,horse 138672,bird 138673,frog 138674,airplane 138675,ship 138676,airplane 138677,deer 138678,dog 138679,bird 138680,deer 138681,frog 138682,frog 138683,horse 138684,cat 138685,cat 138686,dog 138687,automobile 138688,deer 138689,ship 138690,airplane 138691,deer 138692,deer 138693,frog 138694,horse 138695,automobile 138696,dog 138697,airplane 138698,deer 138699,ship 138700,horse 138701,dog 138702,bird 138703,ship 138704,cat 138705,deer 138706,dog 138707,ship 138708,cat 138709,horse 138710,airplane 138711,dog 138712,airplane 138713,dog 138714,dog 138715,dog 138716,dog 138717,deer 138718,deer 138719,frog 138720,horse 138721,frog 138722,airplane 138723,airplane 138724,bird 138725,truck 138726,cat 138727,cat 138728,frog 138729,automobile 138730,bird 138731,frog 138732,cat 138733,truck 138734,cat 138735,ship 138736,truck 138737,deer 138738,bird 138739,cat 138740,bird 138741,deer 138742,automobile 138743,cat 138744,cat 138745,automobile 138746,horse 138747,horse 138748,frog 138749,dog 138750,frog 138751,automobile 138752,dog 138753,truck 138754,dog 138755,cat 138756,cat 138757,dog 138758,frog 138759,cat 138760,horse 138761,frog 138762,dog 138763,truck 138764,dog 138765,dog 138766,deer 138767,deer 138768,automobile 138769,deer 138770,airplane 138771,ship 138772,cat 138773,frog 138774,horse 138775,horse 138776,dog 138777,frog 138778,automobile 138779,bird 138780,dog 138781,cat 138782,ship 138783,deer 138784,dog 138785,frog 138786,bird 138787,frog 138788,automobile 138789,dog 138790,dog 138791,airplane 138792,dog 138793,cat 138794,automobile 138795,deer 138796,cat 138797,airplane 138798,deer 138799,dog 138800,frog 138801,bird 138802,frog 138803,cat 138804,horse 138805,truck 138806,dog 138807,truck 138808,frog 138809,horse 138810,bird 138811,airplane 138812,deer 138813,deer 138814,cat 138815,automobile 138816,deer 138817,horse 138818,cat 138819,horse 138820,cat 138821,bird 138822,airplane 138823,frog 138824,deer 138825,frog 138826,dog 138827,frog 138828,horse 138829,horse 138830,cat 138831,deer 138832,automobile 138833,deer 138834,airplane 138835,airplane 138836,frog 138837,truck 138838,cat 138839,dog 138840,truck 138841,horse 138842,ship 138843,automobile 138844,frog 138845,cat 138846,deer 138847,cat 138848,deer 138849,deer 138850,cat 138851,frog 138852,horse 138853,truck 138854,bird 138855,dog 138856,dog 138857,horse 138858,cat 138859,bird 138860,automobile 138861,truck 138862,horse 138863,truck 138864,airplane 138865,cat 138866,ship 138867,ship 138868,truck 138869,dog 138870,frog 138871,cat 138872,deer 138873,frog 138874,dog 138875,truck 138876,airplane 138877,truck 138878,dog 138879,deer 138880,cat 138881,cat 138882,deer 138883,deer 138884,bird 138885,dog 138886,automobile 138887,airplane 138888,ship 138889,horse 138890,cat 138891,horse 138892,ship 138893,automobile 138894,bird 138895,cat 138896,deer 138897,horse 138898,truck 138899,dog 138900,airplane 138901,dog 138902,cat 138903,ship 138904,horse 138905,bird 138906,ship 138907,bird 138908,horse 138909,bird 138910,dog 138911,bird 138912,cat 138913,cat 138914,cat 138915,bird 138916,dog 138917,truck 138918,horse 138919,ship 138920,bird 138921,cat 138922,airplane 138923,airplane 138924,truck 138925,frog 138926,bird 138927,cat 138928,ship 138929,frog 138930,frog 138931,deer 138932,cat 138933,dog 138934,deer 138935,ship 138936,automobile 138937,deer 138938,dog 138939,airplane 138940,frog 138941,deer 138942,cat 138943,cat 138944,truck 138945,bird 138946,cat 138947,airplane 138948,deer 138949,horse 138950,cat 138951,automobile 138952,deer 138953,truck 138954,truck 138955,deer 138956,airplane 138957,deer 138958,cat 138959,horse 138960,deer 138961,deer 138962,horse 138963,horse 138964,automobile 138965,truck 138966,airplane 138967,bird 138968,dog 138969,dog 138970,airplane 138971,horse 138972,automobile 138973,frog 138974,dog 138975,frog 138976,truck 138977,truck 138978,horse 138979,cat 138980,frog 138981,dog 138982,dog 138983,deer 138984,frog 138985,dog 138986,ship 138987,dog 138988,horse 138989,bird 138990,deer 138991,airplane 138992,deer 138993,airplane 138994,bird 138995,cat 138996,cat 138997,automobile 138998,bird 138999,ship 139000,cat 139001,truck 139002,cat 139003,airplane 139004,deer 139005,bird 139006,horse 139007,bird 139008,deer 139009,airplane 139010,frog 139011,airplane 139012,cat 139013,bird 139014,dog 139015,bird 139016,frog 139017,deer 139018,truck 139019,airplane 139020,airplane 139021,deer 139022,truck 139023,horse 139024,truck 139025,automobile 139026,cat 139027,horse 139028,ship 139029,bird 139030,ship 139031,ship 139032,truck 139033,frog 139034,horse 139035,deer 139036,airplane 139037,automobile 139038,deer 139039,frog 139040,airplane 139041,cat 139042,ship 139043,horse 139044,ship 139045,automobile 139046,frog 139047,truck 139048,cat 139049,automobile 139050,horse 139051,frog 139052,dog 139053,cat 139054,horse 139055,horse 139056,deer 139057,frog 139058,airplane 139059,horse 139060,ship 139061,dog 139062,dog 139063,automobile 139064,deer 139065,cat 139066,automobile 139067,cat 139068,frog 139069,bird 139070,automobile 139071,horse 139072,cat 139073,automobile 139074,deer 139075,airplane 139076,deer 139077,truck 139078,cat 139079,truck 139080,frog 139081,truck 139082,deer 139083,cat 139084,bird 139085,airplane 139086,frog 139087,frog 139088,automobile 139089,airplane 139090,cat 139091,airplane 139092,ship 139093,frog 139094,automobile 139095,bird 139096,bird 139097,airplane 139098,deer 139099,cat 139100,cat 139101,truck 139102,dog 139103,horse 139104,frog 139105,horse 139106,deer 139107,bird 139108,deer 139109,automobile 139110,truck 139111,cat 139112,deer 139113,truck 139114,truck 139115,frog 139116,bird 139117,truck 139118,truck 139119,horse 139120,frog 139121,deer 139122,airplane 139123,truck 139124,cat 139125,automobile 139126,automobile 139127,ship 139128,dog 139129,airplane 139130,dog 139131,airplane 139132,automobile 139133,truck 139134,dog 139135,horse 139136,frog 139137,automobile 139138,truck 139139,deer 139140,truck 139141,frog 139142,dog 139143,ship 139144,airplane 139145,dog 139146,automobile 139147,frog 139148,deer 139149,bird 139150,frog 139151,deer 139152,frog 139153,airplane 139154,airplane 139155,airplane 139156,cat 139157,deer 139158,dog 139159,ship 139160,automobile 139161,deer 139162,airplane 139163,cat 139164,ship 139165,cat 139166,truck 139167,deer 139168,bird 139169,deer 139170,airplane 139171,deer 139172,ship 139173,truck 139174,cat 139175,bird 139176,cat 139177,horse 139178,truck 139179,truck 139180,frog 139181,deer 139182,bird 139183,dog 139184,automobile 139185,bird 139186,ship 139187,deer 139188,horse 139189,truck 139190,airplane 139191,horse 139192,horse 139193,automobile 139194,truck 139195,deer 139196,cat 139197,deer 139198,horse 139199,cat 139200,airplane 139201,truck 139202,deer 139203,cat 139204,cat 139205,airplane 139206,ship 139207,horse 139208,airplane 139209,horse 139210,truck 139211,deer 139212,ship 139213,bird 139214,airplane 139215,cat 139216,horse 139217,ship 139218,frog 139219,bird 139220,cat 139221,frog 139222,ship 139223,deer 139224,frog 139225,deer 139226,airplane 139227,frog 139228,truck 139229,ship 139230,horse 139231,horse 139232,truck 139233,horse 139234,deer 139235,frog 139236,automobile 139237,bird 139238,ship 139239,deer 139240,deer 139241,bird 139242,deer 139243,airplane 139244,cat 139245,truck 139246,deer 139247,truck 139248,bird 139249,airplane 139250,deer 139251,frog 139252,airplane 139253,dog 139254,frog 139255,deer 139256,truck 139257,frog 139258,bird 139259,airplane 139260,truck 139261,deer 139262,horse 139263,frog 139264,dog 139265,frog 139266,airplane 139267,cat 139268,frog 139269,ship 139270,airplane 139271,bird 139272,automobile 139273,cat 139274,deer 139275,deer 139276,deer 139277,airplane 139278,truck 139279,horse 139280,bird 139281,airplane 139282,automobile 139283,deer 139284,cat 139285,automobile 139286,dog 139287,deer 139288,dog 139289,frog 139290,deer 139291,automobile 139292,cat 139293,dog 139294,dog 139295,bird 139296,dog 139297,horse 139298,ship 139299,airplane 139300,cat 139301,airplane 139302,dog 139303,airplane 139304,horse 139305,ship 139306,horse 139307,ship 139308,deer 139309,airplane 139310,dog 139311,airplane 139312,automobile 139313,frog 139314,dog 139315,horse 139316,bird 139317,dog 139318,deer 139319,bird 139320,airplane 139321,cat 139322,deer 139323,frog 139324,bird 139325,dog 139326,deer 139327,airplane 139328,horse 139329,deer 139330,frog 139331,automobile 139332,horse 139333,horse 139334,horse 139335,dog 139336,deer 139337,truck 139338,automobile 139339,automobile 139340,dog 139341,horse 139342,dog 139343,cat 139344,cat 139345,automobile 139346,frog 139347,frog 139348,dog 139349,frog 139350,ship 139351,cat 139352,bird 139353,ship 139354,dog 139355,dog 139356,horse 139357,airplane 139358,dog 139359,horse 139360,cat 139361,truck 139362,deer 139363,truck 139364,bird 139365,dog 139366,airplane 139367,cat 139368,horse 139369,deer 139370,airplane 139371,horse 139372,truck 139373,truck 139374,bird 139375,deer 139376,airplane 139377,horse 139378,deer 139379,horse 139380,frog 139381,airplane 139382,dog 139383,frog 139384,truck 139385,cat 139386,frog 139387,ship 139388,ship 139389,deer 139390,dog 139391,automobile 139392,ship 139393,deer 139394,truck 139395,ship 139396,horse 139397,dog 139398,deer 139399,deer 139400,automobile 139401,truck 139402,dog 139403,deer 139404,deer 139405,airplane 139406,dog 139407,horse 139408,automobile 139409,cat 139410,airplane 139411,deer 139412,truck 139413,truck 139414,frog 139415,bird 139416,horse 139417,bird 139418,deer 139419,deer 139420,airplane 139421,horse 139422,cat 139423,horse 139424,ship 139425,deer 139426,deer 139427,deer 139428,horse 139429,frog 139430,frog 139431,bird 139432,deer 139433,deer 139434,ship 139435,cat 139436,truck 139437,frog 139438,dog 139439,truck 139440,horse 139441,frog 139442,ship 139443,frog 139444,cat 139445,truck 139446,cat 139447,deer 139448,truck 139449,automobile 139450,cat 139451,deer 139452,deer 139453,frog 139454,deer 139455,automobile 139456,automobile 139457,bird 139458,automobile 139459,automobile 139460,truck 139461,automobile 139462,horse 139463,horse 139464,dog 139465,horse 139466,frog 139467,deer 139468,horse 139469,horse 139470,ship 139471,dog 139472,deer 139473,airplane 139474,deer 139475,deer 139476,deer 139477,dog 139478,frog 139479,cat 139480,bird 139481,truck 139482,cat 139483,truck 139484,airplane 139485,truck 139486,frog 139487,bird 139488,cat 139489,horse 139490,automobile 139491,truck 139492,cat 139493,horse 139494,airplane 139495,frog 139496,ship 139497,cat 139498,horse 139499,dog 139500,deer 139501,cat 139502,ship 139503,frog 139504,truck 139505,bird 139506,cat 139507,horse 139508,deer 139509,airplane 139510,airplane 139511,cat 139512,dog 139513,cat 139514,bird 139515,ship 139516,truck 139517,truck 139518,ship 139519,deer 139520,frog 139521,deer 139522,airplane 139523,frog 139524,horse 139525,dog 139526,cat 139527,truck 139528,cat 139529,frog 139530,bird 139531,automobile 139532,dog 139533,horse 139534,truck 139535,frog 139536,dog 139537,airplane 139538,horse 139539,airplane 139540,airplane 139541,bird 139542,deer 139543,airplane 139544,frog 139545,cat 139546,truck 139547,frog 139548,bird 139549,truck 139550,deer 139551,bird 139552,automobile 139553,bird 139554,airplane 139555,dog 139556,bird 139557,horse 139558,cat 139559,cat 139560,horse 139561,ship 139562,deer 139563,cat 139564,dog 139565,truck 139566,deer 139567,frog 139568,cat 139569,frog 139570,bird 139571,bird 139572,deer 139573,cat 139574,deer 139575,deer 139576,horse 139577,deer 139578,cat 139579,dog 139580,deer 139581,horse 139582,cat 139583,automobile 139584,automobile 139585,bird 139586,airplane 139587,cat 139588,deer 139589,dog 139590,automobile 139591,cat 139592,dog 139593,deer 139594,deer 139595,airplane 139596,truck 139597,horse 139598,airplane 139599,frog 139600,horse 139601,cat 139602,airplane 139603,airplane 139604,ship 139605,deer 139606,automobile 139607,frog 139608,airplane 139609,truck 139610,dog 139611,bird 139612,cat 139613,automobile 139614,truck 139615,horse 139616,frog 139617,dog 139618,horse 139619,bird 139620,ship 139621,dog 139622,bird 139623,cat 139624,deer 139625,cat 139626,automobile 139627,deer 139628,automobile 139629,truck 139630,dog 139631,ship 139632,dog 139633,automobile 139634,frog 139635,truck 139636,horse 139637,cat 139638,horse 139639,bird 139640,bird 139641,dog 139642,horse 139643,truck 139644,bird 139645,ship 139646,frog 139647,dog 139648,ship 139649,dog 139650,ship 139651,bird 139652,ship 139653,frog 139654,dog 139655,horse 139656,deer 139657,bird 139658,horse 139659,automobile 139660,dog 139661,deer 139662,horse 139663,airplane 139664,truck 139665,ship 139666,ship 139667,deer 139668,truck 139669,deer 139670,frog 139671,automobile 139672,dog 139673,horse 139674,automobile 139675,cat 139676,truck 139677,horse 139678,truck 139679,truck 139680,cat 139681,horse 139682,automobile 139683,horse 139684,bird 139685,automobile 139686,truck 139687,bird 139688,ship 139689,deer 139690,cat 139691,bird 139692,bird 139693,bird 139694,horse 139695,automobile 139696,airplane 139697,frog 139698,cat 139699,horse 139700,automobile 139701,dog 139702,bird 139703,frog 139704,frog 139705,horse 139706,ship 139707,horse 139708,truck 139709,frog 139710,truck 139711,ship 139712,ship 139713,deer 139714,cat 139715,airplane 139716,truck 139717,truck 139718,airplane 139719,truck 139720,airplane 139721,dog 139722,deer 139723,horse 139724,horse 139725,horse 139726,ship 139727,truck 139728,bird 139729,frog 139730,deer 139731,cat 139732,cat 139733,airplane 139734,cat 139735,deer 139736,deer 139737,deer 139738,cat 139739,bird 139740,truck 139741,deer 139742,deer 139743,bird 139744,deer 139745,ship 139746,dog 139747,horse 139748,deer 139749,dog 139750,frog 139751,frog 139752,automobile 139753,dog 139754,bird 139755,dog 139756,deer 139757,frog 139758,cat 139759,deer 139760,horse 139761,frog 139762,deer 139763,ship 139764,frog 139765,deer 139766,horse 139767,truck 139768,ship 139769,dog 139770,deer 139771,dog 139772,horse 139773,automobile 139774,automobile 139775,dog 139776,deer 139777,cat 139778,bird 139779,frog 139780,cat 139781,cat 139782,dog 139783,deer 139784,horse 139785,deer 139786,truck 139787,dog 139788,airplane 139789,dog 139790,ship 139791,dog 139792,deer 139793,airplane 139794,airplane 139795,ship 139796,deer 139797,horse 139798,frog 139799,automobile 139800,deer 139801,horse 139802,deer 139803,automobile 139804,cat 139805,ship 139806,deer 139807,dog 139808,dog 139809,dog 139810,automobile 139811,frog 139812,horse 139813,deer 139814,truck 139815,airplane 139816,dog 139817,horse 139818,deer 139819,frog 139820,dog 139821,truck 139822,cat 139823,cat 139824,horse 139825,frog 139826,cat 139827,deer 139828,truck 139829,horse 139830,frog 139831,dog 139832,truck 139833,truck 139834,airplane 139835,cat 139836,truck 139837,dog 139838,ship 139839,airplane 139840,ship 139841,truck 139842,cat 139843,ship 139844,ship 139845,deer 139846,bird 139847,ship 139848,frog 139849,horse 139850,deer 139851,truck 139852,cat 139853,truck 139854,truck 139855,automobile 139856,bird 139857,deer 139858,ship 139859,bird 139860,bird 139861,ship 139862,ship 139863,deer 139864,deer 139865,dog 139866,bird 139867,ship 139868,deer 139869,airplane 139870,deer 139871,truck 139872,ship 139873,truck 139874,frog 139875,frog 139876,airplane 139877,truck 139878,cat 139879,horse 139880,dog 139881,horse 139882,cat 139883,ship 139884,airplane 139885,airplane 139886,deer 139887,horse 139888,ship 139889,dog 139890,deer 139891,cat 139892,frog 139893,frog 139894,airplane 139895,airplane 139896,bird 139897,automobile 139898,deer 139899,frog 139900,bird 139901,ship 139902,horse 139903,deer 139904,cat 139905,frog 139906,ship 139907,automobile 139908,horse 139909,truck 139910,bird 139911,bird 139912,bird 139913,dog 139914,cat 139915,ship 139916,automobile 139917,airplane 139918,ship 139919,bird 139920,truck 139921,dog 139922,deer 139923,dog 139924,cat 139925,frog 139926,cat 139927,cat 139928,horse 139929,frog 139930,automobile 139931,bird 139932,dog 139933,truck 139934,frog 139935,horse 139936,bird 139937,bird 139938,cat 139939,ship 139940,airplane 139941,cat 139942,cat 139943,frog 139944,deer 139945,bird 139946,deer 139947,horse 139948,automobile 139949,frog 139950,truck 139951,frog 139952,airplane 139953,horse 139954,deer 139955,frog 139956,frog 139957,deer 139958,automobile 139959,ship 139960,ship 139961,airplane 139962,cat 139963,cat 139964,airplane 139965,cat 139966,ship 139967,frog 139968,deer 139969,truck 139970,cat 139971,truck 139972,airplane 139973,dog 139974,dog 139975,bird 139976,horse 139977,automobile 139978,horse 139979,cat 139980,automobile 139981,bird 139982,deer 139983,truck 139984,cat 139985,dog 139986,ship 139987,frog 139988,horse 139989,ship 139990,deer 139991,horse 139992,bird 139993,dog 139994,cat 139995,ship 139996,horse 139997,horse 139998,frog 139999,bird 140000,deer 140001,automobile 140002,automobile 140003,dog 140004,dog 140005,automobile 140006,deer 140007,ship 140008,cat 140009,frog 140010,deer 140011,deer 140012,deer 140013,dog 140014,automobile 140015,frog 140016,horse 140017,deer 140018,automobile 140019,deer 140020,bird 140021,cat 140022,truck 140023,truck 140024,airplane 140025,dog 140026,dog 140027,bird 140028,airplane 140029,dog 140030,cat 140031,ship 140032,ship 140033,horse 140034,horse 140035,horse 140036,cat 140037,truck 140038,deer 140039,ship 140040,dog 140041,airplane 140042,cat 140043,truck 140044,airplane 140045,frog 140046,dog 140047,horse 140048,dog 140049,cat 140050,bird 140051,dog 140052,dog 140053,airplane 140054,frog 140055,deer 140056,cat 140057,deer 140058,frog 140059,truck 140060,deer 140061,dog 140062,cat 140063,deer 140064,horse 140065,horse 140066,deer 140067,deer 140068,truck 140069,truck 140070,automobile 140071,dog 140072,horse 140073,cat 140074,airplane 140075,horse 140076,bird 140077,horse 140078,cat 140079,ship 140080,automobile 140081,horse 140082,dog 140083,ship 140084,deer 140085,ship 140086,ship 140087,dog 140088,deer 140089,ship 140090,dog 140091,frog 140092,truck 140093,dog 140094,frog 140095,deer 140096,bird 140097,bird 140098,bird 140099,horse 140100,automobile 140101,airplane 140102,automobile 140103,automobile 140104,truck 140105,truck 140106,dog 140107,cat 140108,airplane 140109,ship 140110,frog 140111,truck 140112,cat 140113,cat 140114,frog 140115,cat 140116,frog 140117,truck 140118,truck 140119,dog 140120,deer 140121,deer 140122,automobile 140123,horse 140124,frog 140125,deer 140126,bird 140127,deer 140128,airplane 140129,cat 140130,deer 140131,cat 140132,truck 140133,truck 140134,automobile 140135,truck 140136,cat 140137,frog 140138,horse 140139,dog 140140,bird 140141,frog 140142,automobile 140143,cat 140144,cat 140145,truck 140146,bird 140147,automobile 140148,cat 140149,frog 140150,cat 140151,dog 140152,ship 140153,frog 140154,airplane 140155,deer 140156,horse 140157,ship 140158,dog 140159,frog 140160,truck 140161,frog 140162,ship 140163,frog 140164,automobile 140165,horse 140166,bird 140167,truck 140168,ship 140169,cat 140170,horse 140171,cat 140172,bird 140173,cat 140174,deer 140175,automobile 140176,frog 140177,deer 140178,ship 140179,airplane 140180,frog 140181,bird 140182,ship 140183,automobile 140184,ship 140185,bird 140186,frog 140187,frog 140188,frog 140189,horse 140190,dog 140191,frog 140192,dog 140193,frog 140194,automobile 140195,ship 140196,automobile 140197,cat 140198,automobile 140199,horse 140200,cat 140201,cat 140202,cat 140203,bird 140204,automobile 140205,truck 140206,airplane 140207,horse 140208,bird 140209,truck 140210,horse 140211,automobile 140212,dog 140213,cat 140214,cat 140215,truck 140216,cat 140217,dog 140218,dog 140219,ship 140220,bird 140221,deer 140222,dog 140223,cat 140224,cat 140225,ship 140226,deer 140227,deer 140228,cat 140229,frog 140230,automobile 140231,truck 140232,deer 140233,airplane 140234,automobile 140235,deer 140236,frog 140237,frog 140238,deer 140239,airplane 140240,dog 140241,frog 140242,ship 140243,ship 140244,cat 140245,dog 140246,airplane 140247,frog 140248,cat 140249,deer 140250,deer 140251,automobile 140252,ship 140253,horse 140254,cat 140255,dog 140256,ship 140257,bird 140258,dog 140259,cat 140260,deer 140261,cat 140262,horse 140263,dog 140264,automobile 140265,truck 140266,cat 140267,frog 140268,horse 140269,automobile 140270,deer 140271,horse 140272,dog 140273,deer 140274,airplane 140275,automobile 140276,ship 140277,bird 140278,cat 140279,automobile 140280,cat 140281,bird 140282,dog 140283,dog 140284,horse 140285,ship 140286,bird 140287,deer 140288,deer 140289,deer 140290,airplane 140291,frog 140292,frog 140293,cat 140294,deer 140295,frog 140296,dog 140297,bird 140298,bird 140299,cat 140300,automobile 140301,truck 140302,truck 140303,horse 140304,deer 140305,frog 140306,ship 140307,cat 140308,airplane 140309,deer 140310,bird 140311,frog 140312,truck 140313,deer 140314,truck 140315,frog 140316,airplane 140317,airplane 140318,horse 140319,airplane 140320,truck 140321,frog 140322,automobile 140323,bird 140324,deer 140325,truck 140326,airplane 140327,airplane 140328,truck 140329,truck 140330,bird 140331,bird 140332,automobile 140333,dog 140334,cat 140335,bird 140336,cat 140337,horse 140338,cat 140339,bird 140340,automobile 140341,frog 140342,truck 140343,ship 140344,ship 140345,ship 140346,truck 140347,horse 140348,horse 140349,dog 140350,cat 140351,deer 140352,bird 140353,cat 140354,deer 140355,frog 140356,cat 140357,automobile 140358,frog 140359,horse 140360,truck 140361,horse 140362,truck 140363,deer 140364,cat 140365,horse 140366,dog 140367,deer 140368,horse 140369,frog 140370,frog 140371,cat 140372,truck 140373,ship 140374,automobile 140375,ship 140376,bird 140377,deer 140378,airplane 140379,airplane 140380,horse 140381,deer 140382,horse 140383,frog 140384,ship 140385,truck 140386,ship 140387,deer 140388,airplane 140389,truck 140390,ship 140391,frog 140392,bird 140393,frog 140394,airplane 140395,deer 140396,automobile 140397,cat 140398,ship 140399,dog 140400,frog 140401,horse 140402,dog 140403,horse 140404,frog 140405,truck 140406,dog 140407,bird 140408,horse 140409,frog 140410,ship 140411,frog 140412,truck 140413,cat 140414,horse 140415,cat 140416,bird 140417,deer 140418,cat 140419,deer 140420,horse 140421,frog 140422,bird 140423,deer 140424,airplane 140425,truck 140426,deer 140427,deer 140428,horse 140429,frog 140430,cat 140431,horse 140432,bird 140433,cat 140434,cat 140435,deer 140436,cat 140437,cat 140438,cat 140439,frog 140440,airplane 140441,cat 140442,truck 140443,horse 140444,cat 140445,dog 140446,cat 140447,frog 140448,horse 140449,dog 140450,deer 140451,cat 140452,dog 140453,automobile 140454,dog 140455,truck 140456,deer 140457,truck 140458,horse 140459,automobile 140460,cat 140461,ship 140462,airplane 140463,horse 140464,airplane 140465,bird 140466,horse 140467,dog 140468,cat 140469,horse 140470,automobile 140471,truck 140472,truck 140473,horse 140474,deer 140475,frog 140476,truck 140477,bird 140478,frog 140479,bird 140480,dog 140481,frog 140482,dog 140483,horse 140484,automobile 140485,truck 140486,truck 140487,airplane 140488,ship 140489,frog 140490,truck 140491,automobile 140492,cat 140493,ship 140494,bird 140495,horse 140496,airplane 140497,cat 140498,bird 140499,bird 140500,dog 140501,automobile 140502,cat 140503,truck 140504,deer 140505,ship 140506,truck 140507,deer 140508,truck 140509,ship 140510,truck 140511,dog 140512,ship 140513,deer 140514,cat 140515,ship 140516,bird 140517,ship 140518,bird 140519,ship 140520,automobile 140521,deer 140522,ship 140523,horse 140524,horse 140525,dog 140526,truck 140527,automobile 140528,dog 140529,deer 140530,deer 140531,deer 140532,deer 140533,frog 140534,truck 140535,horse 140536,dog 140537,cat 140538,automobile 140539,cat 140540,horse 140541,truck 140542,truck 140543,deer 140544,frog 140545,cat 140546,frog 140547,airplane 140548,bird 140549,ship 140550,automobile 140551,horse 140552,bird 140553,deer 140554,deer 140555,dog 140556,bird 140557,truck 140558,airplane 140559,airplane 140560,cat 140561,cat 140562,airplane 140563,bird 140564,frog 140565,dog 140566,deer 140567,horse 140568,cat 140569,frog 140570,ship 140571,horse 140572,deer 140573,ship 140574,bird 140575,airplane 140576,airplane 140577,frog 140578,bird 140579,truck 140580,deer 140581,deer 140582,bird 140583,dog 140584,deer 140585,ship 140586,frog 140587,dog 140588,truck 140589,frog 140590,horse 140591,bird 140592,bird 140593,dog 140594,automobile 140595,dog 140596,frog 140597,ship 140598,cat 140599,ship 140600,horse 140601,frog 140602,truck 140603,deer 140604,automobile 140605,automobile 140606,truck 140607,bird 140608,deer 140609,cat 140610,cat 140611,horse 140612,cat 140613,ship 140614,frog 140615,deer 140616,cat 140617,truck 140618,bird 140619,deer 140620,truck 140621,cat 140622,frog 140623,deer 140624,automobile 140625,automobile 140626,deer 140627,bird 140628,horse 140629,horse 140630,ship 140631,cat 140632,airplane 140633,airplane 140634,ship 140635,deer 140636,bird 140637,bird 140638,frog 140639,cat 140640,cat 140641,cat 140642,deer 140643,cat 140644,dog 140645,deer 140646,cat 140647,horse 140648,cat 140649,automobile 140650,deer 140651,deer 140652,deer 140653,cat 140654,truck 140655,frog 140656,airplane 140657,automobile 140658,ship 140659,dog 140660,cat 140661,ship 140662,airplane 140663,bird 140664,frog 140665,frog 140666,horse 140667,horse 140668,airplane 140669,dog 140670,horse 140671,horse 140672,truck 140673,bird 140674,frog 140675,truck 140676,deer 140677,cat 140678,ship 140679,automobile 140680,airplane 140681,automobile 140682,deer 140683,deer 140684,cat 140685,bird 140686,truck 140687,truck 140688,deer 140689,airplane 140690,automobile 140691,airplane 140692,deer 140693,deer 140694,truck 140695,frog 140696,frog 140697,automobile 140698,frog 140699,automobile 140700,cat 140701,automobile 140702,ship 140703,horse 140704,airplane 140705,airplane 140706,frog 140707,frog 140708,frog 140709,cat 140710,deer 140711,ship 140712,cat 140713,automobile 140714,deer 140715,dog 140716,cat 140717,truck 140718,automobile 140719,ship 140720,cat 140721,horse 140722,frog 140723,cat 140724,airplane 140725,frog 140726,frog 140727,ship 140728,truck 140729,ship 140730,deer 140731,airplane 140732,ship 140733,horse 140734,bird 140735,airplane 140736,automobile 140737,cat 140738,horse 140739,frog 140740,frog 140741,horse 140742,frog 140743,frog 140744,truck 140745,airplane 140746,truck 140747,bird 140748,dog 140749,automobile 140750,dog 140751,deer 140752,frog 140753,frog 140754,horse 140755,cat 140756,horse 140757,automobile 140758,dog 140759,cat 140760,bird 140761,ship 140762,airplane 140763,ship 140764,deer 140765,cat 140766,airplane 140767,dog 140768,deer 140769,automobile 140770,deer 140771,truck 140772,automobile 140773,truck 140774,bird 140775,automobile 140776,dog 140777,frog 140778,truck 140779,deer 140780,airplane 140781,dog 140782,cat 140783,frog 140784,frog 140785,cat 140786,cat 140787,bird 140788,frog 140789,horse 140790,automobile 140791,dog 140792,deer 140793,bird 140794,dog 140795,dog 140796,dog 140797,dog 140798,ship 140799,truck 140800,bird 140801,frog 140802,horse 140803,ship 140804,truck 140805,deer 140806,truck 140807,bird 140808,cat 140809,airplane 140810,frog 140811,frog 140812,truck 140813,deer 140814,deer 140815,deer 140816,deer 140817,truck 140818,frog 140819,horse 140820,bird 140821,truck 140822,horse 140823,deer 140824,automobile 140825,dog 140826,ship 140827,ship 140828,dog 140829,truck 140830,automobile 140831,bird 140832,bird 140833,cat 140834,horse 140835,automobile 140836,deer 140837,deer 140838,horse 140839,horse 140840,bird 140841,airplane 140842,deer 140843,dog 140844,deer 140845,airplane 140846,frog 140847,truck 140848,cat 140849,bird 140850,bird 140851,airplane 140852,truck 140853,truck 140854,deer 140855,cat 140856,deer 140857,deer 140858,dog 140859,horse 140860,frog 140861,deer 140862,cat 140863,automobile 140864,cat 140865,dog 140866,truck 140867,automobile 140868,automobile 140869,bird 140870,truck 140871,horse 140872,bird 140873,airplane 140874,truck 140875,automobile 140876,deer 140877,frog 140878,bird 140879,horse 140880,truck 140881,bird 140882,horse 140883,dog 140884,airplane 140885,cat 140886,cat 140887,bird 140888,dog 140889,horse 140890,automobile 140891,dog 140892,deer 140893,deer 140894,frog 140895,truck 140896,dog 140897,truck 140898,automobile 140899,cat 140900,deer 140901,truck 140902,truck 140903,horse 140904,horse 140905,dog 140906,automobile 140907,automobile 140908,deer 140909,automobile 140910,airplane 140911,airplane 140912,cat 140913,truck 140914,cat 140915,dog 140916,frog 140917,cat 140918,dog 140919,frog 140920,airplane 140921,truck 140922,ship 140923,ship 140924,dog 140925,horse 140926,cat 140927,frog 140928,ship 140929,deer 140930,deer 140931,frog 140932,deer 140933,cat 140934,frog 140935,bird 140936,cat 140937,truck 140938,bird 140939,truck 140940,truck 140941,airplane 140942,airplane 140943,truck 140944,cat 140945,bird 140946,deer 140947,bird 140948,deer 140949,frog 140950,horse 140951,truck 140952,deer 140953,bird 140954,deer 140955,dog 140956,deer 140957,airplane 140958,horse 140959,deer 140960,dog 140961,frog 140962,frog 140963,horse 140964,deer 140965,ship 140966,deer 140967,automobile 140968,cat 140969,horse 140970,bird 140971,ship 140972,bird 140973,truck 140974,automobile 140975,bird 140976,dog 140977,automobile 140978,truck 140979,horse 140980,frog 140981,deer 140982,horse 140983,ship 140984,frog 140985,truck 140986,deer 140987,bird 140988,horse 140989,deer 140990,deer 140991,frog 140992,bird 140993,ship 140994,automobile 140995,cat 140996,frog 140997,cat 140998,automobile 140999,frog 141000,airplane 141001,cat 141002,truck 141003,airplane 141004,dog 141005,dog 141006,truck 141007,horse 141008,truck 141009,cat 141010,automobile 141011,cat 141012,cat 141013,bird 141014,bird 141015,bird 141016,ship 141017,cat 141018,deer 141019,dog 141020,frog 141021,deer 141022,truck 141023,truck 141024,deer 141025,bird 141026,cat 141027,cat 141028,frog 141029,truck 141030,airplane 141031,frog 141032,horse 141033,deer 141034,frog 141035,dog 141036,airplane 141037,ship 141038,truck 141039,horse 141040,airplane 141041,automobile 141042,cat 141043,automobile 141044,truck 141045,bird 141046,truck 141047,bird 141048,deer 141049,automobile 141050,deer 141051,frog 141052,deer 141053,dog 141054,frog 141055,airplane 141056,airplane 141057,cat 141058,airplane 141059,ship 141060,truck 141061,frog 141062,horse 141063,frog 141064,ship 141065,airplane 141066,truck 141067,deer 141068,horse 141069,airplane 141070,deer 141071,frog 141072,airplane 141073,frog 141074,automobile 141075,truck 141076,cat 141077,airplane 141078,frog 141079,dog 141080,automobile 141081,cat 141082,ship 141083,deer 141084,dog 141085,bird 141086,deer 141087,dog 141088,cat 141089,cat 141090,bird 141091,cat 141092,truck 141093,frog 141094,deer 141095,frog 141096,bird 141097,automobile 141098,frog 141099,automobile 141100,frog 141101,bird 141102,frog 141103,cat 141104,cat 141105,airplane 141106,frog 141107,airplane 141108,cat 141109,automobile 141110,ship 141111,dog 141112,cat 141113,cat 141114,frog 141115,automobile 141116,deer 141117,frog 141118,cat 141119,ship 141120,horse 141121,horse 141122,cat 141123,bird 141124,ship 141125,dog 141126,deer 141127,ship 141128,cat 141129,horse 141130,automobile 141131,airplane 141132,airplane 141133,deer 141134,truck 141135,bird 141136,bird 141137,truck 141138,frog 141139,bird 141140,cat 141141,truck 141142,dog 141143,horse 141144,ship 141145,truck 141146,automobile 141147,automobile 141148,deer 141149,cat 141150,frog 141151,frog 141152,dog 141153,cat 141154,airplane 141155,cat 141156,frog 141157,truck 141158,cat 141159,airplane 141160,dog 141161,dog 141162,automobile 141163,cat 141164,deer 141165,dog 141166,deer 141167,frog 141168,horse 141169,deer 141170,dog 141171,truck 141172,ship 141173,truck 141174,horse 141175,horse 141176,truck 141177,truck 141178,horse 141179,airplane 141180,dog 141181,cat 141182,horse 141183,cat 141184,horse 141185,airplane 141186,dog 141187,cat 141188,horse 141189,bird 141190,ship 141191,dog 141192,dog 141193,cat 141194,horse 141195,ship 141196,horse 141197,airplane 141198,ship 141199,cat 141200,ship 141201,airplane 141202,frog 141203,cat 141204,airplane 141205,airplane 141206,ship 141207,horse 141208,automobile 141209,truck 141210,dog 141211,truck 141212,deer 141213,airplane 141214,ship 141215,frog 141216,truck 141217,bird 141218,automobile 141219,ship 141220,deer 141221,deer 141222,airplane 141223,deer 141224,horse 141225,truck 141226,truck 141227,dog 141228,automobile 141229,cat 141230,ship 141231,cat 141232,bird 141233,airplane 141234,dog 141235,deer 141236,frog 141237,horse 141238,bird 141239,ship 141240,deer 141241,frog 141242,truck 141243,airplane 141244,ship 141245,truck 141246,bird 141247,deer 141248,automobile 141249,ship 141250,horse 141251,horse 141252,deer 141253,bird 141254,bird 141255,truck 141256,frog 141257,ship 141258,ship 141259,bird 141260,cat 141261,truck 141262,dog 141263,automobile 141264,deer 141265,automobile 141266,bird 141267,airplane 141268,frog 141269,bird 141270,frog 141271,cat 141272,truck 141273,cat 141274,cat 141275,cat 141276,truck 141277,airplane 141278,airplane 141279,airplane 141280,automobile 141281,bird 141282,cat 141283,automobile 141284,cat 141285,cat 141286,horse 141287,automobile 141288,frog 141289,dog 141290,airplane 141291,bird 141292,ship 141293,deer 141294,truck 141295,bird 141296,frog 141297,frog 141298,cat 141299,automobile 141300,truck 141301,frog 141302,automobile 141303,ship 141304,airplane 141305,deer 141306,deer 141307,airplane 141308,truck 141309,truck 141310,airplane 141311,horse 141312,frog 141313,bird 141314,automobile 141315,ship 141316,cat 141317,dog 141318,ship 141319,ship 141320,cat 141321,deer 141322,dog 141323,truck 141324,cat 141325,dog 141326,ship 141327,truck 141328,cat 141329,dog 141330,deer 141331,airplane 141332,deer 141333,dog 141334,dog 141335,deer 141336,deer 141337,frog 141338,truck 141339,deer 141340,cat 141341,deer 141342,bird 141343,airplane 141344,ship 141345,airplane 141346,truck 141347,dog 141348,airplane 141349,dog 141350,dog 141351,dog 141352,truck 141353,dog 141354,cat 141355,truck 141356,frog 141357,bird 141358,automobile 141359,bird 141360,ship 141361,dog 141362,dog 141363,horse 141364,bird 141365,airplane 141366,automobile 141367,horse 141368,horse 141369,deer 141370,deer 141371,horse 141372,cat 141373,automobile 141374,deer 141375,automobile 141376,horse 141377,automobile 141378,deer 141379,automobile 141380,airplane 141381,bird 141382,ship 141383,truck 141384,ship 141385,ship 141386,frog 141387,truck 141388,horse 141389,ship 141390,horse 141391,truck 141392,airplane 141393,frog 141394,ship 141395,automobile 141396,bird 141397,dog 141398,deer 141399,truck 141400,horse 141401,bird 141402,dog 141403,ship 141404,deer 141405,airplane 141406,truck 141407,truck 141408,automobile 141409,frog 141410,airplane 141411,deer 141412,truck 141413,ship 141414,truck 141415,cat 141416,cat 141417,horse 141418,dog 141419,deer 141420,horse 141421,truck 141422,cat 141423,bird 141424,truck 141425,frog 141426,ship 141427,truck 141428,deer 141429,horse 141430,cat 141431,ship 141432,airplane 141433,bird 141434,horse 141435,deer 141436,truck 141437,horse 141438,deer 141439,frog 141440,cat 141441,frog 141442,truck 141443,truck 141444,bird 141445,truck 141446,horse 141447,dog 141448,dog 141449,automobile 141450,bird 141451,bird 141452,airplane 141453,horse 141454,bird 141455,airplane 141456,cat 141457,cat 141458,horse 141459,ship 141460,airplane 141461,bird 141462,frog 141463,cat 141464,dog 141465,truck 141466,bird 141467,deer 141468,deer 141469,automobile 141470,bird 141471,ship 141472,cat 141473,dog 141474,bird 141475,deer 141476,cat 141477,frog 141478,truck 141479,deer 141480,deer 141481,frog 141482,automobile 141483,airplane 141484,dog 141485,ship 141486,dog 141487,horse 141488,ship 141489,bird 141490,bird 141491,frog 141492,ship 141493,airplane 141494,horse 141495,dog 141496,bird 141497,ship 141498,automobile 141499,ship 141500,airplane 141501,bird 141502,automobile 141503,horse 141504,frog 141505,truck 141506,ship 141507,deer 141508,dog 141509,horse 141510,ship 141511,frog 141512,dog 141513,bird 141514,cat 141515,truck 141516,bird 141517,cat 141518,automobile 141519,frog 141520,frog 141521,truck 141522,airplane 141523,deer 141524,automobile 141525,frog 141526,cat 141527,bird 141528,automobile 141529,dog 141530,dog 141531,deer 141532,truck 141533,frog 141534,horse 141535,bird 141536,cat 141537,airplane 141538,horse 141539,cat 141540,bird 141541,airplane 141542,ship 141543,deer 141544,horse 141545,bird 141546,truck 141547,bird 141548,deer 141549,truck 141550,bird 141551,bird 141552,dog 141553,dog 141554,bird 141555,automobile 141556,cat 141557,bird 141558,deer 141559,bird 141560,deer 141561,cat 141562,truck 141563,truck 141564,deer 141565,bird 141566,airplane 141567,ship 141568,airplane 141569,bird 141570,ship 141571,deer 141572,bird 141573,dog 141574,ship 141575,deer 141576,cat 141577,ship 141578,deer 141579,frog 141580,airplane 141581,cat 141582,deer 141583,cat 141584,bird 141585,truck 141586,bird 141587,horse 141588,bird 141589,ship 141590,dog 141591,truck 141592,cat 141593,frog 141594,cat 141595,deer 141596,ship 141597,deer 141598,dog 141599,ship 141600,horse 141601,cat 141602,frog 141603,truck 141604,frog 141605,frog 141606,airplane 141607,dog 141608,deer 141609,deer 141610,frog 141611,ship 141612,cat 141613,airplane 141614,horse 141615,truck 141616,airplane 141617,truck 141618,dog 141619,dog 141620,deer 141621,frog 141622,horse 141623,ship 141624,horse 141625,dog 141626,frog 141627,ship 141628,cat 141629,bird 141630,cat 141631,airplane 141632,truck 141633,deer 141634,ship 141635,deer 141636,airplane 141637,bird 141638,deer 141639,automobile 141640,dog 141641,horse 141642,truck 141643,truck 141644,ship 141645,cat 141646,cat 141647,dog 141648,deer 141649,automobile 141650,frog 141651,truck 141652,ship 141653,frog 141654,ship 141655,cat 141656,bird 141657,horse 141658,horse 141659,horse 141660,dog 141661,horse 141662,truck 141663,dog 141664,horse 141665,cat 141666,airplane 141667,cat 141668,deer 141669,airplane 141670,frog 141671,ship 141672,cat 141673,ship 141674,horse 141675,cat 141676,bird 141677,truck 141678,deer 141679,automobile 141680,airplane 141681,deer 141682,automobile 141683,horse 141684,airplane 141685,deer 141686,cat 141687,cat 141688,truck 141689,horse 141690,ship 141691,bird 141692,deer 141693,frog 141694,deer 141695,frog 141696,bird 141697,truck 141698,bird 141699,ship 141700,truck 141701,bird 141702,automobile 141703,bird 141704,ship 141705,cat 141706,bird 141707,dog 141708,ship 141709,dog 141710,horse 141711,bird 141712,automobile 141713,cat 141714,frog 141715,automobile 141716,automobile 141717,horse 141718,deer 141719,frog 141720,airplane 141721,deer 141722,horse 141723,cat 141724,bird 141725,frog 141726,bird 141727,bird 141728,frog 141729,truck 141730,frog 141731,deer 141732,truck 141733,airplane 141734,truck 141735,horse 141736,horse 141737,cat 141738,frog 141739,frog 141740,truck 141741,truck 141742,horse 141743,airplane 141744,dog 141745,frog 141746,frog 141747,dog 141748,ship 141749,deer 141750,airplane 141751,ship 141752,dog 141753,airplane 141754,horse 141755,deer 141756,cat 141757,cat 141758,airplane 141759,ship 141760,truck 141761,frog 141762,truck 141763,bird 141764,bird 141765,airplane 141766,automobile 141767,deer 141768,cat 141769,bird 141770,truck 141771,dog 141772,airplane 141773,truck 141774,ship 141775,cat 141776,deer 141777,deer 141778,truck 141779,truck 141780,dog 141781,truck 141782,frog 141783,truck 141784,cat 141785,dog 141786,frog 141787,frog 141788,horse 141789,bird 141790,ship 141791,cat 141792,truck 141793,airplane 141794,airplane 141795,frog 141796,truck 141797,frog 141798,airplane 141799,airplane 141800,airplane 141801,horse 141802,airplane 141803,cat 141804,cat 141805,cat 141806,airplane 141807,truck 141808,frog 141809,dog 141810,horse 141811,truck 141812,horse 141813,truck 141814,horse 141815,truck 141816,horse 141817,bird 141818,truck 141819,frog 141820,truck 141821,cat 141822,bird 141823,truck 141824,deer 141825,bird 141826,dog 141827,truck 141828,bird 141829,airplane 141830,horse 141831,cat 141832,frog 141833,horse 141834,deer 141835,dog 141836,truck 141837,frog 141838,deer 141839,airplane 141840,deer 141841,truck 141842,bird 141843,truck 141844,horse 141845,cat 141846,automobile 141847,frog 141848,cat 141849,airplane 141850,horse 141851,deer 141852,deer 141853,horse 141854,dog 141855,dog 141856,dog 141857,bird 141858,ship 141859,bird 141860,deer 141861,frog 141862,automobile 141863,horse 141864,horse 141865,frog 141866,deer 141867,dog 141868,deer 141869,airplane 141870,ship 141871,frog 141872,truck 141873,truck 141874,deer 141875,truck 141876,deer 141877,frog 141878,deer 141879,ship 141880,deer 141881,airplane 141882,dog 141883,cat 141884,automobile 141885,bird 141886,dog 141887,horse 141888,frog 141889,truck 141890,bird 141891,dog 141892,deer 141893,automobile 141894,horse 141895,frog 141896,cat 141897,automobile 141898,ship 141899,dog 141900,automobile 141901,deer 141902,truck 141903,cat 141904,deer 141905,deer 141906,cat 141907,dog 141908,cat 141909,bird 141910,airplane 141911,airplane 141912,frog 141913,truck 141914,bird 141915,ship 141916,bird 141917,horse 141918,ship 141919,ship 141920,dog 141921,automobile 141922,airplane 141923,horse 141924,airplane 141925,bird 141926,deer 141927,deer 141928,frog 141929,truck 141930,frog 141931,horse 141932,frog 141933,horse 141934,cat 141935,cat 141936,frog 141937,cat 141938,airplane 141939,airplane 141940,horse 141941,horse 141942,deer 141943,dog 141944,frog 141945,bird 141946,frog 141947,ship 141948,dog 141949,dog 141950,horse 141951,frog 141952,frog 141953,truck 141954,truck 141955,dog 141956,automobile 141957,dog 141958,cat 141959,automobile 141960,horse 141961,automobile 141962,ship 141963,horse 141964,truck 141965,cat 141966,airplane 141967,deer 141968,deer 141969,cat 141970,horse 141971,deer 141972,deer 141973,bird 141974,horse 141975,cat 141976,frog 141977,deer 141978,dog 141979,airplane 141980,truck 141981,deer 141982,deer 141983,truck 141984,dog 141985,automobile 141986,horse 141987,airplane 141988,cat 141989,frog 141990,cat 141991,ship 141992,ship 141993,automobile 141994,dog 141995,truck 141996,horse 141997,dog 141998,automobile 141999,frog 142000,airplane 142001,deer 142002,frog 142003,ship 142004,deer 142005,dog 142006,automobile 142007,bird 142008,automobile 142009,horse 142010,deer 142011,horse 142012,dog 142013,horse 142014,ship 142015,deer 142016,frog 142017,dog 142018,automobile 142019,deer 142020,truck 142021,cat 142022,dog 142023,deer 142024,cat 142025,cat 142026,dog 142027,deer 142028,frog 142029,cat 142030,deer 142031,horse 142032,truck 142033,truck 142034,horse 142035,deer 142036,cat 142037,deer 142038,frog 142039,ship 142040,airplane 142041,automobile 142042,truck 142043,cat 142044,dog 142045,airplane 142046,automobile 142047,automobile 142048,deer 142049,truck 142050,cat 142051,truck 142052,deer 142053,deer 142054,truck 142055,deer 142056,deer 142057,ship 142058,airplane 142059,deer 142060,airplane 142061,truck 142062,ship 142063,frog 142064,automobile 142065,dog 142066,dog 142067,truck 142068,bird 142069,deer 142070,ship 142071,deer 142072,deer 142073,dog 142074,cat 142075,deer 142076,deer 142077,horse 142078,frog 142079,truck 142080,frog 142081,cat 142082,automobile 142083,frog 142084,truck 142085,ship 142086,airplane 142087,dog 142088,cat 142089,automobile 142090,cat 142091,airplane 142092,ship 142093,cat 142094,dog 142095,bird 142096,frog 142097,bird 142098,truck 142099,horse 142100,airplane 142101,horse 142102,cat 142103,automobile 142104,cat 142105,ship 142106,airplane 142107,dog 142108,dog 142109,frog 142110,deer 142111,horse 142112,cat 142113,deer 142114,horse 142115,frog 142116,truck 142117,bird 142118,airplane 142119,deer 142120,bird 142121,frog 142122,airplane 142123,truck 142124,frog 142125,ship 142126,airplane 142127,horse 142128,ship 142129,cat 142130,frog 142131,frog 142132,airplane 142133,airplane 142134,cat 142135,cat 142136,cat 142137,bird 142138,frog 142139,automobile 142140,cat 142141,airplane 142142,frog 142143,truck 142144,horse 142145,truck 142146,ship 142147,automobile 142148,frog 142149,bird 142150,cat 142151,ship 142152,dog 142153,deer 142154,deer 142155,deer 142156,deer 142157,truck 142158,cat 142159,cat 142160,truck 142161,cat 142162,dog 142163,deer 142164,dog 142165,cat 142166,truck 142167,frog 142168,deer 142169,deer 142170,cat 142171,cat 142172,truck 142173,bird 142174,horse 142175,cat 142176,dog 142177,cat 142178,ship 142179,automobile 142180,automobile 142181,ship 142182,bird 142183,truck 142184,bird 142185,airplane 142186,truck 142187,bird 142188,cat 142189,cat 142190,deer 142191,truck 142192,ship 142193,frog 142194,truck 142195,ship 142196,deer 142197,airplane 142198,dog 142199,cat 142200,automobile 142201,frog 142202,dog 142203,dog 142204,ship 142205,cat 142206,airplane 142207,bird 142208,bird 142209,airplane 142210,cat 142211,frog 142212,deer 142213,bird 142214,airplane 142215,deer 142216,truck 142217,automobile 142218,frog 142219,airplane 142220,horse 142221,frog 142222,ship 142223,deer 142224,horse 142225,airplane 142226,cat 142227,bird 142228,cat 142229,frog 142230,bird 142231,deer 142232,bird 142233,cat 142234,dog 142235,bird 142236,cat 142237,cat 142238,truck 142239,frog 142240,ship 142241,dog 142242,cat 142243,bird 142244,dog 142245,frog 142246,ship 142247,bird 142248,frog 142249,dog 142250,bird 142251,frog 142252,deer 142253,truck 142254,frog 142255,cat 142256,bird 142257,truck 142258,dog 142259,ship 142260,bird 142261,deer 142262,ship 142263,deer 142264,horse 142265,cat 142266,dog 142267,airplane 142268,ship 142269,airplane 142270,deer 142271,frog 142272,automobile 142273,airplane 142274,deer 142275,airplane 142276,frog 142277,deer 142278,cat 142279,deer 142280,bird 142281,frog 142282,horse 142283,airplane 142284,deer 142285,horse 142286,frog 142287,horse 142288,ship 142289,cat 142290,frog 142291,cat 142292,cat 142293,cat 142294,frog 142295,truck 142296,deer 142297,cat 142298,cat 142299,airplane 142300,ship 142301,truck 142302,frog 142303,cat 142304,airplane 142305,ship 142306,automobile 142307,automobile 142308,deer 142309,truck 142310,deer 142311,cat 142312,frog 142313,deer 142314,airplane 142315,cat 142316,bird 142317,frog 142318,automobile 142319,airplane 142320,horse 142321,truck 142322,automobile 142323,dog 142324,horse 142325,airplane 142326,bird 142327,frog 142328,automobile 142329,frog 142330,horse 142331,airplane 142332,deer 142333,truck 142334,cat 142335,truck 142336,ship 142337,horse 142338,dog 142339,bird 142340,frog 142341,airplane 142342,cat 142343,deer 142344,airplane 142345,bird 142346,dog 142347,ship 142348,airplane 142349,truck 142350,automobile 142351,frog 142352,cat 142353,bird 142354,truck 142355,ship 142356,horse 142357,deer 142358,deer 142359,dog 142360,horse 142361,ship 142362,deer 142363,frog 142364,frog 142365,horse 142366,ship 142367,cat 142368,bird 142369,bird 142370,frog 142371,horse 142372,frog 142373,frog 142374,cat 142375,frog 142376,deer 142377,truck 142378,dog 142379,truck 142380,truck 142381,truck 142382,bird 142383,deer 142384,automobile 142385,ship 142386,bird 142387,airplane 142388,truck 142389,frog 142390,bird 142391,deer 142392,truck 142393,deer 142394,deer 142395,frog 142396,frog 142397,cat 142398,automobile 142399,deer 142400,airplane 142401,airplane 142402,truck 142403,horse 142404,truck 142405,frog 142406,airplane 142407,automobile 142408,ship 142409,bird 142410,horse 142411,dog 142412,deer 142413,deer 142414,cat 142415,truck 142416,deer 142417,bird 142418,dog 142419,deer 142420,deer 142421,frog 142422,horse 142423,dog 142424,deer 142425,truck 142426,cat 142427,frog 142428,bird 142429,dog 142430,cat 142431,dog 142432,cat 142433,airplane 142434,airplane 142435,frog 142436,cat 142437,truck 142438,cat 142439,frog 142440,automobile 142441,truck 142442,cat 142443,bird 142444,automobile 142445,truck 142446,airplane 142447,deer 142448,deer 142449,truck 142450,deer 142451,frog 142452,cat 142453,airplane 142454,frog 142455,cat 142456,frog 142457,cat 142458,ship 142459,cat 142460,deer 142461,automobile 142462,horse 142463,dog 142464,ship 142465,truck 142466,cat 142467,dog 142468,horse 142469,cat 142470,cat 142471,frog 142472,horse 142473,deer 142474,horse 142475,cat 142476,frog 142477,dog 142478,horse 142479,deer 142480,cat 142481,dog 142482,deer 142483,truck 142484,deer 142485,horse 142486,horse 142487,dog 142488,automobile 142489,truck 142490,bird 142491,truck 142492,dog 142493,automobile 142494,cat 142495,cat 142496,airplane 142497,deer 142498,deer 142499,ship 142500,cat 142501,deer 142502,horse 142503,cat 142504,frog 142505,bird 142506,airplane 142507,truck 142508,bird 142509,bird 142510,automobile 142511,deer 142512,cat 142513,horse 142514,truck 142515,horse 142516,truck 142517,dog 142518,ship 142519,frog 142520,automobile 142521,frog 142522,airplane 142523,cat 142524,cat 142525,deer 142526,frog 142527,frog 142528,dog 142529,frog 142530,horse 142531,ship 142532,horse 142533,ship 142534,airplane 142535,frog 142536,frog 142537,deer 142538,airplane 142539,automobile 142540,deer 142541,automobile 142542,horse 142543,cat 142544,automobile 142545,bird 142546,cat 142547,dog 142548,cat 142549,deer 142550,cat 142551,truck 142552,airplane 142553,truck 142554,dog 142555,frog 142556,dog 142557,frog 142558,frog 142559,ship 142560,deer 142561,airplane 142562,truck 142563,cat 142564,frog 142565,dog 142566,airplane 142567,cat 142568,deer 142569,horse 142570,automobile 142571,horse 142572,airplane 142573,dog 142574,ship 142575,frog 142576,airplane 142577,dog 142578,dog 142579,cat 142580,deer 142581,deer 142582,deer 142583,cat 142584,truck 142585,dog 142586,bird 142587,cat 142588,automobile 142589,cat 142590,automobile 142591,airplane 142592,automobile 142593,airplane 142594,frog 142595,deer 142596,ship 142597,automobile 142598,frog 142599,horse 142600,dog 142601,automobile 142602,airplane 142603,truck 142604,deer 142605,ship 142606,truck 142607,frog 142608,deer 142609,truck 142610,frog 142611,horse 142612,bird 142613,automobile 142614,deer 142615,cat 142616,deer 142617,ship 142618,deer 142619,automobile 142620,frog 142621,truck 142622,cat 142623,deer 142624,deer 142625,truck 142626,cat 142627,deer 142628,frog 142629,bird 142630,truck 142631,horse 142632,horse 142633,automobile 142634,truck 142635,deer 142636,frog 142637,ship 142638,bird 142639,automobile 142640,truck 142641,cat 142642,ship 142643,cat 142644,ship 142645,deer 142646,horse 142647,frog 142648,ship 142649,airplane 142650,ship 142651,truck 142652,frog 142653,truck 142654,horse 142655,deer 142656,airplane 142657,airplane 142658,truck 142659,automobile 142660,cat 142661,horse 142662,horse 142663,automobile 142664,horse 142665,airplane 142666,automobile 142667,cat 142668,horse 142669,deer 142670,deer 142671,cat 142672,ship 142673,frog 142674,automobile 142675,deer 142676,dog 142677,frog 142678,horse 142679,frog 142680,ship 142681,dog 142682,horse 142683,frog 142684,truck 142685,truck 142686,ship 142687,deer 142688,automobile 142689,cat 142690,frog 142691,ship 142692,frog 142693,automobile 142694,dog 142695,deer 142696,cat 142697,horse 142698,frog 142699,dog 142700,airplane 142701,horse 142702,dog 142703,truck 142704,airplane 142705,dog 142706,deer 142707,deer 142708,frog 142709,deer 142710,truck 142711,deer 142712,dog 142713,deer 142714,frog 142715,bird 142716,horse 142717,dog 142718,ship 142719,airplane 142720,truck 142721,truck 142722,deer 142723,ship 142724,horse 142725,deer 142726,horse 142727,deer 142728,truck 142729,horse 142730,deer 142731,frog 142732,airplane 142733,dog 142734,automobile 142735,deer 142736,horse 142737,airplane 142738,ship 142739,cat 142740,cat 142741,ship 142742,airplane 142743,horse 142744,dog 142745,frog 142746,ship 142747,deer 142748,cat 142749,automobile 142750,automobile 142751,deer 142752,truck 142753,bird 142754,deer 142755,frog 142756,dog 142757,airplane 142758,ship 142759,airplane 142760,frog 142761,deer 142762,cat 142763,airplane 142764,airplane 142765,cat 142766,frog 142767,ship 142768,dog 142769,cat 142770,bird 142771,automobile 142772,deer 142773,bird 142774,frog 142775,ship 142776,airplane 142777,horse 142778,dog 142779,truck 142780,dog 142781,frog 142782,horse 142783,ship 142784,bird 142785,airplane 142786,dog 142787,airplane 142788,frog 142789,truck 142790,cat 142791,horse 142792,cat 142793,horse 142794,dog 142795,automobile 142796,horse 142797,ship 142798,airplane 142799,bird 142800,truck 142801,ship 142802,cat 142803,cat 142804,deer 142805,frog 142806,airplane 142807,cat 142808,deer 142809,deer 142810,cat 142811,airplane 142812,deer 142813,frog 142814,ship 142815,dog 142816,ship 142817,cat 142818,cat 142819,airplane 142820,dog 142821,frog 142822,automobile 142823,cat 142824,ship 142825,ship 142826,truck 142827,dog 142828,dog 142829,deer 142830,horse 142831,dog 142832,deer 142833,airplane 142834,frog 142835,truck 142836,airplane 142837,frog 142838,dog 142839,deer 142840,deer 142841,bird 142842,dog 142843,deer 142844,horse 142845,truck 142846,dog 142847,cat 142848,ship 142849,deer 142850,deer 142851,deer 142852,horse 142853,airplane 142854,bird 142855,horse 142856,frog 142857,horse 142858,frog 142859,frog 142860,deer 142861,frog 142862,frog 142863,airplane 142864,truck 142865,bird 142866,horse 142867,deer 142868,bird 142869,horse 142870,automobile 142871,frog 142872,truck 142873,cat 142874,airplane 142875,horse 142876,automobile 142877,airplane 142878,automobile 142879,horse 142880,truck 142881,bird 142882,dog 142883,ship 142884,truck 142885,truck 142886,cat 142887,frog 142888,dog 142889,bird 142890,airplane 142891,truck 142892,horse 142893,automobile 142894,cat 142895,airplane 142896,frog 142897,ship 142898,deer 142899,automobile 142900,automobile 142901,horse 142902,frog 142903,airplane 142904,dog 142905,bird 142906,dog 142907,bird 142908,cat 142909,bird 142910,truck 142911,airplane 142912,frog 142913,deer 142914,automobile 142915,automobile 142916,frog 142917,deer 142918,frog 142919,deer 142920,dog 142921,frog 142922,frog 142923,dog 142924,truck 142925,truck 142926,truck 142927,cat 142928,cat 142929,dog 142930,dog 142931,frog 142932,bird 142933,dog 142934,cat 142935,cat 142936,bird 142937,dog 142938,horse 142939,ship 142940,automobile 142941,ship 142942,ship 142943,automobile 142944,dog 142945,frog 142946,airplane 142947,frog 142948,frog 142949,horse 142950,airplane 142951,ship 142952,deer 142953,cat 142954,truck 142955,cat 142956,horse 142957,horse 142958,truck 142959,dog 142960,truck 142961,dog 142962,automobile 142963,horse 142964,airplane 142965,cat 142966,deer 142967,deer 142968,cat 142969,dog 142970,automobile 142971,bird 142972,truck 142973,deer 142974,dog 142975,automobile 142976,dog 142977,cat 142978,frog 142979,ship 142980,dog 142981,automobile 142982,frog 142983,truck 142984,horse 142985,truck 142986,dog 142987,truck 142988,automobile 142989,frog 142990,dog 142991,cat 142992,frog 142993,airplane 142994,dog 142995,dog 142996,automobile 142997,bird 142998,airplane 142999,airplane 143000,frog 143001,ship 143002,cat 143003,cat 143004,horse 143005,ship 143006,horse 143007,ship 143008,automobile 143009,ship 143010,truck 143011,bird 143012,truck 143013,bird 143014,ship 143015,deer 143016,automobile 143017,dog 143018,ship 143019,airplane 143020,truck 143021,horse 143022,ship 143023,deer 143024,deer 143025,automobile 143026,airplane 143027,automobile 143028,ship 143029,horse 143030,truck 143031,frog 143032,ship 143033,deer 143034,horse 143035,cat 143036,frog 143037,dog 143038,bird 143039,dog 143040,frog 143041,ship 143042,cat 143043,truck 143044,frog 143045,bird 143046,ship 143047,dog 143048,airplane 143049,cat 143050,dog 143051,truck 143052,frog 143053,cat 143054,horse 143055,ship 143056,deer 143057,horse 143058,truck 143059,cat 143060,frog 143061,airplane 143062,deer 143063,deer 143064,dog 143065,ship 143066,deer 143067,deer 143068,airplane 143069,cat 143070,deer 143071,airplane 143072,cat 143073,airplane 143074,cat 143075,ship 143076,deer 143077,cat 143078,automobile 143079,cat 143080,dog 143081,bird 143082,ship 143083,truck 143084,airplane 143085,deer 143086,airplane 143087,deer 143088,deer 143089,frog 143090,deer 143091,bird 143092,deer 143093,frog 143094,bird 143095,cat 143096,cat 143097,bird 143098,frog 143099,bird 143100,horse 143101,airplane 143102,frog 143103,truck 143104,dog 143105,bird 143106,deer 143107,airplane 143108,dog 143109,deer 143110,frog 143111,cat 143112,dog 143113,ship 143114,frog 143115,automobile 143116,deer 143117,frog 143118,automobile 143119,ship 143120,truck 143121,truck 143122,deer 143123,cat 143124,frog 143125,horse 143126,automobile 143127,cat 143128,dog 143129,airplane 143130,ship 143131,bird 143132,truck 143133,cat 143134,deer 143135,deer 143136,airplane 143137,frog 143138,automobile 143139,airplane 143140,frog 143141,dog 143142,frog 143143,bird 143144,frog 143145,frog 143146,deer 143147,cat 143148,automobile 143149,cat 143150,cat 143151,deer 143152,horse 143153,cat 143154,cat 143155,horse 143156,deer 143157,automobile 143158,bird 143159,cat 143160,dog 143161,truck 143162,frog 143163,cat 143164,bird 143165,truck 143166,cat 143167,automobile 143168,cat 143169,horse 143170,ship 143171,bird 143172,horse 143173,frog 143174,deer 143175,frog 143176,ship 143177,cat 143178,cat 143179,frog 143180,cat 143181,dog 143182,dog 143183,cat 143184,airplane 143185,cat 143186,truck 143187,horse 143188,dog 143189,horse 143190,airplane 143191,cat 143192,bird 143193,deer 143194,automobile 143195,horse 143196,airplane 143197,cat 143198,cat 143199,dog 143200,cat 143201,bird 143202,frog 143203,frog 143204,dog 143205,automobile 143206,deer 143207,horse 143208,bird 143209,automobile 143210,frog 143211,automobile 143212,frog 143213,deer 143214,bird 143215,cat 143216,frog 143217,deer 143218,deer 143219,horse 143220,automobile 143221,deer 143222,airplane 143223,truck 143224,deer 143225,truck 143226,cat 143227,cat 143228,horse 143229,airplane 143230,airplane 143231,deer 143232,ship 143233,truck 143234,bird 143235,bird 143236,cat 143237,automobile 143238,dog 143239,bird 143240,deer 143241,automobile 143242,ship 143243,automobile 143244,bird 143245,ship 143246,cat 143247,deer 143248,bird 143249,ship 143250,bird 143251,frog 143252,cat 143253,airplane 143254,frog 143255,deer 143256,deer 143257,bird 143258,cat 143259,frog 143260,frog 143261,frog 143262,bird 143263,deer 143264,airplane 143265,bird 143266,frog 143267,deer 143268,cat 143269,frog 143270,ship 143271,ship 143272,frog 143273,dog 143274,deer 143275,ship 143276,automobile 143277,dog 143278,deer 143279,airplane 143280,bird 143281,dog 143282,dog 143283,deer 143284,truck 143285,ship 143286,cat 143287,truck 143288,frog 143289,airplane 143290,truck 143291,cat 143292,automobile 143293,automobile 143294,automobile 143295,automobile 143296,ship 143297,automobile 143298,airplane 143299,dog 143300,horse 143301,airplane 143302,bird 143303,cat 143304,horse 143305,cat 143306,deer 143307,cat 143308,cat 143309,deer 143310,ship 143311,ship 143312,deer 143313,truck 143314,horse 143315,bird 143316,airplane 143317,frog 143318,cat 143319,bird 143320,truck 143321,airplane 143322,frog 143323,cat 143324,bird 143325,cat 143326,cat 143327,deer 143328,deer 143329,dog 143330,truck 143331,frog 143332,bird 143333,deer 143334,cat 143335,cat 143336,automobile 143337,cat 143338,cat 143339,automobile 143340,frog 143341,cat 143342,cat 143343,ship 143344,automobile 143345,cat 143346,ship 143347,automobile 143348,frog 143349,ship 143350,deer 143351,cat 143352,dog 143353,dog 143354,horse 143355,cat 143356,bird 143357,dog 143358,deer 143359,deer 143360,deer 143361,horse 143362,automobile 143363,bird 143364,cat 143365,automobile 143366,horse 143367,frog 143368,deer 143369,horse 143370,truck 143371,deer 143372,horse 143373,horse 143374,cat 143375,truck 143376,airplane 143377,bird 143378,truck 143379,truck 143380,truck 143381,cat 143382,horse 143383,cat 143384,deer 143385,cat 143386,dog 143387,ship 143388,ship 143389,cat 143390,ship 143391,bird 143392,cat 143393,deer 143394,dog 143395,horse 143396,dog 143397,deer 143398,frog 143399,airplane 143400,cat 143401,frog 143402,truck 143403,ship 143404,truck 143405,deer 143406,truck 143407,bird 143408,truck 143409,horse 143410,frog 143411,horse 143412,deer 143413,deer 143414,cat 143415,automobile 143416,bird 143417,deer 143418,bird 143419,automobile 143420,truck 143421,horse 143422,truck 143423,dog 143424,frog 143425,bird 143426,bird 143427,horse 143428,automobile 143429,ship 143430,bird 143431,bird 143432,cat 143433,ship 143434,cat 143435,dog 143436,bird 143437,truck 143438,deer 143439,horse 143440,deer 143441,truck 143442,dog 143443,frog 143444,deer 143445,deer 143446,deer 143447,airplane 143448,frog 143449,cat 143450,truck 143451,dog 143452,horse 143453,ship 143454,dog 143455,horse 143456,bird 143457,frog 143458,horse 143459,deer 143460,deer 143461,bird 143462,truck 143463,frog 143464,ship 143465,dog 143466,frog 143467,bird 143468,dog 143469,automobile 143470,automobile 143471,horse 143472,bird 143473,horse 143474,deer 143475,ship 143476,deer 143477,dog 143478,frog 143479,frog 143480,deer 143481,truck 143482,bird 143483,dog 143484,frog 143485,frog 143486,dog 143487,dog 143488,bird 143489,truck 143490,automobile 143491,cat 143492,horse 143493,truck 143494,dog 143495,automobile 143496,ship 143497,frog 143498,ship 143499,cat 143500,dog 143501,dog 143502,deer 143503,deer 143504,frog 143505,horse 143506,truck 143507,frog 143508,airplane 143509,dog 143510,deer 143511,horse 143512,truck 143513,deer 143514,dog 143515,dog 143516,ship 143517,ship 143518,dog 143519,frog 143520,ship 143521,automobile 143522,deer 143523,cat 143524,dog 143525,horse 143526,ship 143527,bird 143528,bird 143529,automobile 143530,automobile 143531,ship 143532,airplane 143533,airplane 143534,deer 143535,cat 143536,dog 143537,horse 143538,airplane 143539,truck 143540,ship 143541,dog 143542,automobile 143543,automobile 143544,dog 143545,truck 143546,horse 143547,cat 143548,horse 143549,deer 143550,deer 143551,automobile 143552,automobile 143553,cat 143554,ship 143555,truck 143556,deer 143557,deer 143558,airplane 143559,deer 143560,ship 143561,cat 143562,airplane 143563,deer 143564,bird 143565,horse 143566,bird 143567,cat 143568,dog 143569,deer 143570,airplane 143571,truck 143572,frog 143573,ship 143574,dog 143575,deer 143576,automobile 143577,cat 143578,deer 143579,frog 143580,deer 143581,horse 143582,bird 143583,cat 143584,bird 143585,bird 143586,frog 143587,cat 143588,airplane 143589,airplane 143590,horse 143591,frog 143592,deer 143593,cat 143594,frog 143595,cat 143596,deer 143597,cat 143598,cat 143599,ship 143600,horse 143601,bird 143602,ship 143603,truck 143604,bird 143605,truck 143606,bird 143607,deer 143608,horse 143609,ship 143610,bird 143611,truck 143612,cat 143613,dog 143614,airplane 143615,deer 143616,truck 143617,horse 143618,bird 143619,deer 143620,dog 143621,airplane 143622,bird 143623,horse 143624,deer 143625,frog 143626,airplane 143627,cat 143628,frog 143629,deer 143630,truck 143631,deer 143632,bird 143633,dog 143634,cat 143635,deer 143636,horse 143637,dog 143638,deer 143639,deer 143640,dog 143641,truck 143642,automobile 143643,cat 143644,bird 143645,frog 143646,cat 143647,cat 143648,automobile 143649,frog 143650,dog 143651,deer 143652,bird 143653,truck 143654,cat 143655,dog 143656,dog 143657,bird 143658,truck 143659,horse 143660,airplane 143661,frog 143662,frog 143663,bird 143664,dog 143665,truck 143666,cat 143667,cat 143668,deer 143669,deer 143670,airplane 143671,automobile 143672,cat 143673,cat 143674,ship 143675,horse 143676,horse 143677,airplane 143678,cat 143679,automobile 143680,dog 143681,frog 143682,frog 143683,horse 143684,cat 143685,dog 143686,bird 143687,horse 143688,horse 143689,automobile 143690,truck 143691,ship 143692,truck 143693,dog 143694,frog 143695,bird 143696,automobile 143697,automobile 143698,frog 143699,airplane 143700,cat 143701,cat 143702,automobile 143703,horse 143704,airplane 143705,automobile 143706,horse 143707,dog 143708,cat 143709,dog 143710,airplane 143711,dog 143712,automobile 143713,dog 143714,automobile 143715,deer 143716,cat 143717,cat 143718,airplane 143719,frog 143720,dog 143721,deer 143722,frog 143723,horse 143724,truck 143725,cat 143726,horse 143727,bird 143728,airplane 143729,cat 143730,dog 143731,dog 143732,cat 143733,truck 143734,deer 143735,bird 143736,horse 143737,bird 143738,cat 143739,automobile 143740,frog 143741,deer 143742,deer 143743,frog 143744,bird 143745,horse 143746,frog 143747,airplane 143748,ship 143749,bird 143750,dog 143751,horse 143752,frog 143753,deer 143754,cat 143755,horse 143756,bird 143757,automobile 143758,frog 143759,horse 143760,automobile 143761,cat 143762,truck 143763,ship 143764,truck 143765,airplane 143766,airplane 143767,frog 143768,frog 143769,ship 143770,cat 143771,automobile 143772,bird 143773,automobile 143774,bird 143775,horse 143776,cat 143777,deer 143778,ship 143779,ship 143780,truck 143781,dog 143782,deer 143783,cat 143784,dog 143785,ship 143786,cat 143787,ship 143788,cat 143789,bird 143790,deer 143791,ship 143792,bird 143793,ship 143794,frog 143795,truck 143796,dog 143797,frog 143798,horse 143799,frog 143800,dog 143801,horse 143802,dog 143803,cat 143804,frog 143805,truck 143806,bird 143807,dog 143808,cat 143809,dog 143810,deer 143811,dog 143812,cat 143813,automobile 143814,horse 143815,airplane 143816,deer 143817,horse 143818,bird 143819,truck 143820,deer 143821,dog 143822,horse 143823,frog 143824,bird 143825,frog 143826,bird 143827,horse 143828,automobile 143829,ship 143830,frog 143831,dog 143832,frog 143833,truck 143834,deer 143835,ship 143836,dog 143837,deer 143838,horse 143839,horse 143840,cat 143841,bird 143842,ship 143843,ship 143844,dog 143845,dog 143846,horse 143847,truck 143848,cat 143849,dog 143850,horse 143851,dog 143852,dog 143853,bird 143854,deer 143855,bird 143856,cat 143857,airplane 143858,horse 143859,horse 143860,frog 143861,frog 143862,deer 143863,ship 143864,automobile 143865,airplane 143866,frog 143867,horse 143868,dog 143869,dog 143870,dog 143871,frog 143872,airplane 143873,horse 143874,cat 143875,deer 143876,dog 143877,bird 143878,frog 143879,dog 143880,dog 143881,cat 143882,horse 143883,cat 143884,automobile 143885,deer 143886,truck 143887,ship 143888,ship 143889,horse 143890,ship 143891,ship 143892,bird 143893,airplane 143894,dog 143895,cat 143896,deer 143897,bird 143898,bird 143899,cat 143900,bird 143901,airplane 143902,ship 143903,deer 143904,deer 143905,bird 143906,truck 143907,automobile 143908,truck 143909,ship 143910,cat 143911,horse 143912,dog 143913,bird 143914,deer 143915,horse 143916,airplane 143917,automobile 143918,cat 143919,horse 143920,horse 143921,airplane 143922,horse 143923,automobile 143924,airplane 143925,truck 143926,bird 143927,airplane 143928,bird 143929,cat 143930,deer 143931,ship 143932,bird 143933,horse 143934,deer 143935,horse 143936,deer 143937,cat 143938,deer 143939,bird 143940,airplane 143941,frog 143942,deer 143943,automobile 143944,automobile 143945,horse 143946,cat 143947,frog 143948,bird 143949,airplane 143950,airplane 143951,ship 143952,truck 143953,frog 143954,frog 143955,deer 143956,cat 143957,horse 143958,automobile 143959,deer 143960,horse 143961,horse 143962,deer 143963,deer 143964,truck 143965,dog 143966,airplane 143967,dog 143968,cat 143969,bird 143970,horse 143971,bird 143972,horse 143973,horse 143974,cat 143975,dog 143976,deer 143977,horse 143978,automobile 143979,cat 143980,horse 143981,airplane 143982,bird 143983,dog 143984,airplane 143985,bird 143986,airplane 143987,cat 143988,deer 143989,bird 143990,bird 143991,dog 143992,dog 143993,deer 143994,airplane 143995,frog 143996,dog 143997,airplane 143998,airplane 143999,deer 144000,cat 144001,deer 144002,horse 144003,cat 144004,automobile 144005,cat 144006,cat 144007,frog 144008,cat 144009,horse 144010,frog 144011,frog 144012,horse 144013,airplane 144014,bird 144015,truck 144016,horse 144017,dog 144018,automobile 144019,ship 144020,dog 144021,deer 144022,truck 144023,deer 144024,ship 144025,bird 144026,frog 144027,ship 144028,frog 144029,dog 144030,ship 144031,truck 144032,deer 144033,automobile 144034,frog 144035,truck 144036,airplane 144037,dog 144038,airplane 144039,airplane 144040,dog 144041,deer 144042,horse 144043,airplane 144044,horse 144045,automobile 144046,cat 144047,automobile 144048,dog 144049,airplane 144050,frog 144051,deer 144052,automobile 144053,bird 144054,airplane 144055,airplane 144056,cat 144057,ship 144058,dog 144059,cat 144060,airplane 144061,bird 144062,airplane 144063,dog 144064,ship 144065,bird 144066,horse 144067,frog 144068,ship 144069,truck 144070,automobile 144071,frog 144072,deer 144073,horse 144074,airplane 144075,cat 144076,deer 144077,bird 144078,truck 144079,cat 144080,ship 144081,automobile 144082,frog 144083,horse 144084,airplane 144085,ship 144086,dog 144087,automobile 144088,deer 144089,frog 144090,dog 144091,cat 144092,cat 144093,automobile 144094,deer 144095,dog 144096,deer 144097,truck 144098,horse 144099,airplane 144100,cat 144101,deer 144102,automobile 144103,dog 144104,airplane 144105,dog 144106,bird 144107,truck 144108,truck 144109,dog 144110,cat 144111,horse 144112,deer 144113,horse 144114,truck 144115,truck 144116,cat 144117,frog 144118,ship 144119,frog 144120,frog 144121,deer 144122,deer 144123,ship 144124,horse 144125,dog 144126,automobile 144127,cat 144128,airplane 144129,cat 144130,horse 144131,deer 144132,ship 144133,ship 144134,deer 144135,frog 144136,frog 144137,cat 144138,truck 144139,frog 144140,automobile 144141,frog 144142,deer 144143,dog 144144,dog 144145,dog 144146,cat 144147,bird 144148,truck 144149,airplane 144150,bird 144151,horse 144152,horse 144153,truck 144154,frog 144155,airplane 144156,cat 144157,horse 144158,automobile 144159,frog 144160,bird 144161,cat 144162,bird 144163,deer 144164,bird 144165,airplane 144166,dog 144167,dog 144168,cat 144169,ship 144170,cat 144171,airplane 144172,deer 144173,bird 144174,automobile 144175,dog 144176,ship 144177,automobile 144178,deer 144179,bird 144180,bird 144181,ship 144182,deer 144183,deer 144184,horse 144185,cat 144186,ship 144187,cat 144188,cat 144189,bird 144190,frog 144191,deer 144192,deer 144193,horse 144194,bird 144195,frog 144196,cat 144197,bird 144198,cat 144199,bird 144200,ship 144201,dog 144202,ship 144203,bird 144204,horse 144205,horse 144206,dog 144207,automobile 144208,ship 144209,dog 144210,cat 144211,truck 144212,truck 144213,ship 144214,automobile 144215,airplane 144216,truck 144217,ship 144218,airplane 144219,dog 144220,deer 144221,ship 144222,cat 144223,cat 144224,bird 144225,airplane 144226,truck 144227,bird 144228,bird 144229,deer 144230,ship 144231,bird 144232,deer 144233,automobile 144234,cat 144235,ship 144236,bird 144237,ship 144238,horse 144239,horse 144240,deer 144241,frog 144242,cat 144243,cat 144244,cat 144245,horse 144246,dog 144247,bird 144248,cat 144249,horse 144250,horse 144251,bird 144252,dog 144253,truck 144254,deer 144255,airplane 144256,bird 144257,automobile 144258,deer 144259,horse 144260,frog 144261,dog 144262,frog 144263,dog 144264,deer 144265,truck 144266,truck 144267,bird 144268,truck 144269,deer 144270,horse 144271,horse 144272,automobile 144273,frog 144274,airplane 144275,cat 144276,cat 144277,truck 144278,horse 144279,deer 144280,deer 144281,automobile 144282,dog 144283,truck 144284,bird 144285,deer 144286,ship 144287,truck 144288,horse 144289,horse 144290,dog 144291,cat 144292,bird 144293,cat 144294,deer 144295,bird 144296,cat 144297,deer 144298,truck 144299,truck 144300,truck 144301,cat 144302,horse 144303,airplane 144304,dog 144305,horse 144306,deer 144307,cat 144308,horse 144309,dog 144310,deer 144311,deer 144312,airplane 144313,bird 144314,truck 144315,deer 144316,truck 144317,frog 144318,dog 144319,deer 144320,dog 144321,horse 144322,cat 144323,automobile 144324,dog 144325,airplane 144326,cat 144327,frog 144328,truck 144329,airplane 144330,dog 144331,cat 144332,ship 144333,frog 144334,bird 144335,deer 144336,truck 144337,horse 144338,horse 144339,horse 144340,horse 144341,bird 144342,truck 144343,frog 144344,deer 144345,deer 144346,automobile 144347,deer 144348,airplane 144349,deer 144350,ship 144351,deer 144352,automobile 144353,horse 144354,frog 144355,dog 144356,cat 144357,frog 144358,ship 144359,deer 144360,cat 144361,automobile 144362,truck 144363,cat 144364,frog 144365,frog 144366,bird 144367,cat 144368,deer 144369,airplane 144370,ship 144371,airplane 144372,dog 144373,dog 144374,truck 144375,automobile 144376,dog 144377,bird 144378,dog 144379,bird 144380,horse 144381,ship 144382,bird 144383,automobile 144384,automobile 144385,cat 144386,automobile 144387,cat 144388,deer 144389,horse 144390,dog 144391,dog 144392,airplane 144393,cat 144394,automobile 144395,deer 144396,bird 144397,airplane 144398,truck 144399,airplane 144400,horse 144401,bird 144402,horse 144403,dog 144404,deer 144405,frog 144406,cat 144407,airplane 144408,airplane 144409,ship 144410,airplane 144411,deer 144412,dog 144413,automobile 144414,frog 144415,frog 144416,cat 144417,truck 144418,dog 144419,horse 144420,dog 144421,cat 144422,frog 144423,truck 144424,ship 144425,horse 144426,ship 144427,dog 144428,ship 144429,frog 144430,automobile 144431,deer 144432,cat 144433,bird 144434,truck 144435,bird 144436,automobile 144437,frog 144438,horse 144439,airplane 144440,deer 144441,dog 144442,horse 144443,bird 144444,truck 144445,truck 144446,frog 144447,truck 144448,horse 144449,frog 144450,truck 144451,deer 144452,cat 144453,airplane 144454,cat 144455,automobile 144456,deer 144457,bird 144458,cat 144459,airplane 144460,frog 144461,airplane 144462,dog 144463,truck 144464,dog 144465,frog 144466,dog 144467,airplane 144468,horse 144469,truck 144470,dog 144471,deer 144472,deer 144473,cat 144474,deer 144475,frog 144476,bird 144477,frog 144478,automobile 144479,deer 144480,dog 144481,deer 144482,ship 144483,truck 144484,dog 144485,automobile 144486,automobile 144487,automobile 144488,dog 144489,horse 144490,cat 144491,dog 144492,dog 144493,dog 144494,cat 144495,bird 144496,frog 144497,cat 144498,airplane 144499,cat 144500,cat 144501,horse 144502,truck 144503,dog 144504,deer 144505,horse 144506,dog 144507,cat 144508,ship 144509,airplane 144510,truck 144511,airplane 144512,deer 144513,ship 144514,horse 144515,bird 144516,dog 144517,truck 144518,airplane 144519,airplane 144520,cat 144521,frog 144522,cat 144523,deer 144524,cat 144525,dog 144526,truck 144527,automobile 144528,dog 144529,frog 144530,frog 144531,truck 144532,deer 144533,truck 144534,bird 144535,cat 144536,horse 144537,deer 144538,cat 144539,horse 144540,dog 144541,deer 144542,horse 144543,deer 144544,deer 144545,cat 144546,airplane 144547,ship 144548,frog 144549,truck 144550,deer 144551,ship 144552,bird 144553,cat 144554,frog 144555,cat 144556,deer 144557,truck 144558,ship 144559,bird 144560,cat 144561,cat 144562,automobile 144563,frog 144564,frog 144565,cat 144566,cat 144567,automobile 144568,dog 144569,truck 144570,truck 144571,deer 144572,frog 144573,ship 144574,truck 144575,deer 144576,dog 144577,horse 144578,deer 144579,deer 144580,cat 144581,automobile 144582,ship 144583,frog 144584,truck 144585,dog 144586,airplane 144587,cat 144588,truck 144589,deer 144590,deer 144591,dog 144592,deer 144593,automobile 144594,truck 144595,truck 144596,frog 144597,frog 144598,bird 144599,cat 144600,horse 144601,bird 144602,dog 144603,airplane 144604,airplane 144605,airplane 144606,horse 144607,bird 144608,airplane 144609,horse 144610,truck 144611,deer 144612,horse 144613,deer 144614,frog 144615,frog 144616,automobile 144617,automobile 144618,bird 144619,automobile 144620,deer 144621,truck 144622,bird 144623,deer 144624,automobile 144625,airplane 144626,truck 144627,bird 144628,dog 144629,frog 144630,dog 144631,airplane 144632,deer 144633,airplane 144634,deer 144635,airplane 144636,ship 144637,cat 144638,horse 144639,truck 144640,deer 144641,cat 144642,cat 144643,cat 144644,bird 144645,truck 144646,truck 144647,deer 144648,bird 144649,horse 144650,deer 144651,deer 144652,cat 144653,frog 144654,deer 144655,truck 144656,cat 144657,automobile 144658,truck 144659,frog 144660,airplane 144661,automobile 144662,horse 144663,deer 144664,horse 144665,bird 144666,frog 144667,airplane 144668,horse 144669,ship 144670,truck 144671,dog 144672,dog 144673,ship 144674,frog 144675,ship 144676,dog 144677,airplane 144678,cat 144679,bird 144680,automobile 144681,bird 144682,truck 144683,dog 144684,airplane 144685,horse 144686,ship 144687,ship 144688,ship 144689,dog 144690,frog 144691,ship 144692,ship 144693,cat 144694,airplane 144695,deer 144696,truck 144697,frog 144698,cat 144699,airplane 144700,horse 144701,automobile 144702,ship 144703,bird 144704,bird 144705,frog 144706,airplane 144707,frog 144708,frog 144709,frog 144710,automobile 144711,airplane 144712,deer 144713,horse 144714,cat 144715,cat 144716,truck 144717,frog 144718,frog 144719,dog 144720,frog 144721,deer 144722,ship 144723,ship 144724,truck 144725,horse 144726,frog 144727,frog 144728,dog 144729,bird 144730,ship 144731,cat 144732,truck 144733,horse 144734,automobile 144735,dog 144736,truck 144737,ship 144738,dog 144739,airplane 144740,horse 144741,horse 144742,bird 144743,dog 144744,airplane 144745,dog 144746,cat 144747,frog 144748,bird 144749,deer 144750,ship 144751,bird 144752,frog 144753,airplane 144754,horse 144755,deer 144756,deer 144757,frog 144758,ship 144759,dog 144760,deer 144761,dog 144762,horse 144763,truck 144764,frog 144765,automobile 144766,cat 144767,truck 144768,deer 144769,frog 144770,dog 144771,cat 144772,frog 144773,truck 144774,automobile 144775,frog 144776,airplane 144777,deer 144778,ship 144779,horse 144780,cat 144781,cat 144782,airplane 144783,truck 144784,deer 144785,automobile 144786,horse 144787,truck 144788,frog 144789,deer 144790,automobile 144791,truck 144792,deer 144793,frog 144794,airplane 144795,deer 144796,truck 144797,horse 144798,horse 144799,deer 144800,automobile 144801,ship 144802,ship 144803,dog 144804,cat 144805,truck 144806,automobile 144807,bird 144808,deer 144809,bird 144810,frog 144811,horse 144812,truck 144813,automobile 144814,deer 144815,horse 144816,airplane 144817,automobile 144818,airplane 144819,bird 144820,ship 144821,frog 144822,automobile 144823,bird 144824,bird 144825,truck 144826,bird 144827,cat 144828,horse 144829,bird 144830,deer 144831,cat 144832,dog 144833,horse 144834,dog 144835,automobile 144836,airplane 144837,frog 144838,frog 144839,ship 144840,cat 144841,airplane 144842,dog 144843,cat 144844,airplane 144845,frog 144846,frog 144847,automobile 144848,automobile 144849,dog 144850,truck 144851,horse 144852,bird 144853,truck 144854,horse 144855,dog 144856,ship 144857,automobile 144858,cat 144859,dog 144860,automobile 144861,truck 144862,horse 144863,automobile 144864,deer 144865,deer 144866,bird 144867,frog 144868,horse 144869,dog 144870,automobile 144871,automobile 144872,dog 144873,bird 144874,truck 144875,ship 144876,dog 144877,horse 144878,bird 144879,dog 144880,ship 144881,dog 144882,deer 144883,frog 144884,horse 144885,bird 144886,bird 144887,deer 144888,cat 144889,cat 144890,cat 144891,cat 144892,ship 144893,automobile 144894,cat 144895,dog 144896,automobile 144897,cat 144898,deer 144899,ship 144900,cat 144901,dog 144902,ship 144903,truck 144904,truck 144905,horse 144906,deer 144907,airplane 144908,frog 144909,bird 144910,cat 144911,cat 144912,horse 144913,frog 144914,airplane 144915,dog 144916,airplane 144917,deer 144918,cat 144919,deer 144920,cat 144921,bird 144922,cat 144923,cat 144924,bird 144925,frog 144926,airplane 144927,truck 144928,airplane 144929,dog 144930,deer 144931,truck 144932,airplane 144933,dog 144934,horse 144935,dog 144936,horse 144937,airplane 144938,cat 144939,cat 144940,automobile 144941,bird 144942,truck 144943,cat 144944,deer 144945,cat 144946,cat 144947,horse 144948,automobile 144949,cat 144950,frog 144951,frog 144952,horse 144953,truck 144954,cat 144955,dog 144956,automobile 144957,frog 144958,deer 144959,automobile 144960,airplane 144961,bird 144962,ship 144963,frog 144964,deer 144965,cat 144966,truck 144967,frog 144968,horse 144969,bird 144970,ship 144971,horse 144972,airplane 144973,deer 144974,truck 144975,frog 144976,frog 144977,horse 144978,dog 144979,bird 144980,truck 144981,frog 144982,deer 144983,frog 144984,deer 144985,bird 144986,cat 144987,frog 144988,deer 144989,frog 144990,bird 144991,truck 144992,dog 144993,airplane 144994,deer 144995,truck 144996,airplane 144997,deer 144998,dog 144999,airplane 145000,deer 145001,automobile 145002,frog 145003,airplane 145004,automobile 145005,dog 145006,automobile 145007,automobile 145008,deer 145009,airplane 145010,ship 145011,truck 145012,deer 145013,cat 145014,frog 145015,bird 145016,airplane 145017,deer 145018,airplane 145019,truck 145020,automobile 145021,deer 145022,dog 145023,horse 145024,frog 145025,deer 145026,deer 145027,dog 145028,truck 145029,deer 145030,dog 145031,truck 145032,airplane 145033,truck 145034,automobile 145035,frog 145036,bird 145037,automobile 145038,frog 145039,automobile 145040,deer 145041,cat 145042,deer 145043,dog 145044,truck 145045,cat 145046,frog 145047,ship 145048,cat 145049,frog 145050,horse 145051,dog 145052,cat 145053,dog 145054,deer 145055,cat 145056,bird 145057,airplane 145058,horse 145059,cat 145060,horse 145061,dog 145062,truck 145063,cat 145064,cat 145065,frog 145066,truck 145067,truck 145068,deer 145069,dog 145070,dog 145071,cat 145072,dog 145073,automobile 145074,ship 145075,truck 145076,truck 145077,deer 145078,deer 145079,horse 145080,cat 145081,dog 145082,automobile 145083,automobile 145084,horse 145085,cat 145086,truck 145087,horse 145088,deer 145089,horse 145090,bird 145091,horse 145092,horse 145093,cat 145094,cat 145095,bird 145096,automobile 145097,deer 145098,horse 145099,deer 145100,bird 145101,frog 145102,horse 145103,airplane 145104,dog 145105,airplane 145106,bird 145107,truck 145108,deer 145109,deer 145110,airplane 145111,automobile 145112,bird 145113,horse 145114,deer 145115,truck 145116,horse 145117,deer 145118,airplane 145119,automobile 145120,frog 145121,truck 145122,bird 145123,bird 145124,cat 145125,truck 145126,bird 145127,deer 145128,truck 145129,frog 145130,horse 145131,truck 145132,bird 145133,deer 145134,automobile 145135,cat 145136,cat 145137,cat 145138,horse 145139,cat 145140,truck 145141,cat 145142,frog 145143,horse 145144,frog 145145,deer 145146,ship 145147,truck 145148,automobile 145149,frog 145150,frog 145151,truck 145152,ship 145153,deer 145154,truck 145155,dog 145156,airplane 145157,airplane 145158,frog 145159,deer 145160,deer 145161,frog 145162,truck 145163,cat 145164,ship 145165,truck 145166,deer 145167,bird 145168,dog 145169,bird 145170,bird 145171,airplane 145172,frog 145173,horse 145174,dog 145175,horse 145176,truck 145177,deer 145178,horse 145179,frog 145180,frog 145181,frog 145182,deer 145183,dog 145184,cat 145185,deer 145186,truck 145187,cat 145188,deer 145189,automobile 145190,deer 145191,truck 145192,dog 145193,deer 145194,automobile 145195,cat 145196,cat 145197,frog 145198,ship 145199,automobile 145200,horse 145201,airplane 145202,automobile 145203,dog 145204,frog 145205,cat 145206,bird 145207,cat 145208,truck 145209,horse 145210,bird 145211,horse 145212,cat 145213,deer 145214,horse 145215,airplane 145216,truck 145217,cat 145218,bird 145219,truck 145220,deer 145221,frog 145222,frog 145223,cat 145224,deer 145225,ship 145226,frog 145227,ship 145228,bird 145229,automobile 145230,dog 145231,ship 145232,horse 145233,cat 145234,automobile 145235,deer 145236,frog 145237,frog 145238,dog 145239,airplane 145240,cat 145241,dog 145242,bird 145243,horse 145244,dog 145245,cat 145246,truck 145247,automobile 145248,frog 145249,horse 145250,dog 145251,dog 145252,truck 145253,cat 145254,deer 145255,ship 145256,ship 145257,dog 145258,truck 145259,ship 145260,automobile 145261,ship 145262,cat 145263,dog 145264,automobile 145265,cat 145266,dog 145267,airplane 145268,airplane 145269,horse 145270,truck 145271,cat 145272,deer 145273,ship 145274,airplane 145275,cat 145276,deer 145277,bird 145278,frog 145279,dog 145280,airplane 145281,frog 145282,cat 145283,frog 145284,ship 145285,cat 145286,ship 145287,horse 145288,truck 145289,cat 145290,airplane 145291,horse 145292,horse 145293,cat 145294,cat 145295,truck 145296,airplane 145297,airplane 145298,dog 145299,horse 145300,bird 145301,dog 145302,airplane 145303,airplane 145304,horse 145305,cat 145306,cat 145307,frog 145308,cat 145309,deer 145310,truck 145311,ship 145312,truck 145313,horse 145314,dog 145315,dog 145316,airplane 145317,cat 145318,frog 145319,bird 145320,cat 145321,frog 145322,deer 145323,deer 145324,truck 145325,dog 145326,cat 145327,airplane 145328,bird 145329,frog 145330,truck 145331,dog 145332,cat 145333,cat 145334,airplane 145335,truck 145336,automobile 145337,dog 145338,frog 145339,airplane 145340,airplane 145341,cat 145342,truck 145343,horse 145344,truck 145345,ship 145346,deer 145347,automobile 145348,horse 145349,deer 145350,bird 145351,automobile 145352,cat 145353,horse 145354,airplane 145355,horse 145356,frog 145357,frog 145358,automobile 145359,truck 145360,airplane 145361,dog 145362,deer 145363,frog 145364,dog 145365,airplane 145366,automobile 145367,frog 145368,horse 145369,airplane 145370,deer 145371,frog 145372,horse 145373,horse 145374,cat 145375,bird 145376,deer 145377,automobile 145378,deer 145379,deer 145380,airplane 145381,truck 145382,truck 145383,dog 145384,frog 145385,airplane 145386,ship 145387,frog 145388,dog 145389,deer 145390,cat 145391,horse 145392,frog 145393,deer 145394,automobile 145395,automobile 145396,bird 145397,cat 145398,cat 145399,airplane 145400,truck 145401,frog 145402,truck 145403,dog 145404,deer 145405,ship 145406,frog 145407,bird 145408,deer 145409,ship 145410,airplane 145411,horse 145412,horse 145413,truck 145414,deer 145415,horse 145416,dog 145417,truck 145418,deer 145419,dog 145420,automobile 145421,ship 145422,airplane 145423,ship 145424,horse 145425,cat 145426,truck 145427,automobile 145428,deer 145429,cat 145430,cat 145431,frog 145432,frog 145433,horse 145434,airplane 145435,dog 145436,bird 145437,cat 145438,ship 145439,dog 145440,deer 145441,airplane 145442,truck 145443,deer 145444,frog 145445,bird 145446,cat 145447,horse 145448,truck 145449,truck 145450,truck 145451,truck 145452,deer 145453,airplane 145454,bird 145455,frog 145456,frog 145457,automobile 145458,automobile 145459,dog 145460,dog 145461,horse 145462,truck 145463,deer 145464,truck 145465,airplane 145466,truck 145467,frog 145468,horse 145469,deer 145470,cat 145471,dog 145472,frog 145473,airplane 145474,dog 145475,deer 145476,airplane 145477,horse 145478,horse 145479,automobile 145480,cat 145481,airplane 145482,horse 145483,frog 145484,bird 145485,horse 145486,truck 145487,ship 145488,deer 145489,deer 145490,cat 145491,dog 145492,horse 145493,cat 145494,dog 145495,cat 145496,automobile 145497,dog 145498,ship 145499,frog 145500,bird 145501,truck 145502,automobile 145503,frog 145504,automobile 145505,cat 145506,deer 145507,frog 145508,truck 145509,horse 145510,deer 145511,ship 145512,horse 145513,deer 145514,cat 145515,dog 145516,truck 145517,deer 145518,bird 145519,dog 145520,horse 145521,frog 145522,deer 145523,airplane 145524,automobile 145525,truck 145526,horse 145527,dog 145528,horse 145529,ship 145530,cat 145531,airplane 145532,frog 145533,automobile 145534,automobile 145535,bird 145536,automobile 145537,truck 145538,frog 145539,deer 145540,truck 145541,deer 145542,frog 145543,deer 145544,airplane 145545,frog 145546,automobile 145547,automobile 145548,truck 145549,airplane 145550,bird 145551,ship 145552,automobile 145553,ship 145554,airplane 145555,dog 145556,deer 145557,airplane 145558,dog 145559,bird 145560,bird 145561,dog 145562,ship 145563,ship 145564,dog 145565,cat 145566,deer 145567,automobile 145568,dog 145569,automobile 145570,deer 145571,airplane 145572,deer 145573,frog 145574,truck 145575,horse 145576,automobile 145577,automobile 145578,horse 145579,frog 145580,airplane 145581,horse 145582,cat 145583,cat 145584,automobile 145585,frog 145586,frog 145587,horse 145588,bird 145589,airplane 145590,bird 145591,truck 145592,deer 145593,deer 145594,frog 145595,dog 145596,bird 145597,airplane 145598,dog 145599,frog 145600,truck 145601,bird 145602,horse 145603,deer 145604,horse 145605,horse 145606,truck 145607,bird 145608,automobile 145609,frog 145610,frog 145611,truck 145612,dog 145613,cat 145614,deer 145615,frog 145616,dog 145617,deer 145618,frog 145619,airplane 145620,deer 145621,truck 145622,frog 145623,dog 145624,ship 145625,automobile 145626,ship 145627,cat 145628,frog 145629,cat 145630,horse 145631,frog 145632,deer 145633,ship 145634,deer 145635,ship 145636,truck 145637,horse 145638,airplane 145639,frog 145640,horse 145641,dog 145642,deer 145643,truck 145644,horse 145645,dog 145646,ship 145647,bird 145648,cat 145649,horse 145650,horse 145651,deer 145652,frog 145653,frog 145654,airplane 145655,frog 145656,cat 145657,truck 145658,dog 145659,ship 145660,automobile 145661,truck 145662,truck 145663,cat 145664,automobile 145665,horse 145666,horse 145667,deer 145668,truck 145669,bird 145670,airplane 145671,truck 145672,frog 145673,truck 145674,automobile 145675,frog 145676,frog 145677,frog 145678,cat 145679,deer 145680,horse 145681,truck 145682,truck 145683,horse 145684,frog 145685,cat 145686,horse 145687,airplane 145688,frog 145689,airplane 145690,frog 145691,deer 145692,horse 145693,automobile 145694,frog 145695,dog 145696,deer 145697,frog 145698,dog 145699,frog 145700,horse 145701,automobile 145702,frog 145703,ship 145704,frog 145705,airplane 145706,dog 145707,automobile 145708,deer 145709,horse 145710,dog 145711,cat 145712,automobile 145713,automobile 145714,cat 145715,deer 145716,cat 145717,horse 145718,deer 145719,automobile 145720,truck 145721,cat 145722,ship 145723,frog 145724,truck 145725,horse 145726,frog 145727,airplane 145728,deer 145729,cat 145730,bird 145731,frog 145732,airplane 145733,deer 145734,airplane 145735,ship 145736,horse 145737,cat 145738,deer 145739,cat 145740,truck 145741,airplane 145742,truck 145743,bird 145744,airplane 145745,truck 145746,dog 145747,truck 145748,cat 145749,deer 145750,automobile 145751,truck 145752,automobile 145753,deer 145754,airplane 145755,horse 145756,frog 145757,truck 145758,truck 145759,horse 145760,automobile 145761,horse 145762,truck 145763,ship 145764,airplane 145765,ship 145766,deer 145767,airplane 145768,automobile 145769,ship 145770,frog 145771,frog 145772,automobile 145773,deer 145774,deer 145775,deer 145776,cat 145777,truck 145778,frog 145779,cat 145780,deer 145781,deer 145782,horse 145783,horse 145784,cat 145785,frog 145786,frog 145787,deer 145788,ship 145789,bird 145790,automobile 145791,frog 145792,airplane 145793,cat 145794,ship 145795,bird 145796,cat 145797,cat 145798,ship 145799,bird 145800,airplane 145801,automobile 145802,horse 145803,dog 145804,ship 145805,frog 145806,frog 145807,airplane 145808,cat 145809,horse 145810,dog 145811,ship 145812,bird 145813,deer 145814,frog 145815,airplane 145816,cat 145817,frog 145818,dog 145819,frog 145820,automobile 145821,cat 145822,cat 145823,ship 145824,deer 145825,cat 145826,truck 145827,deer 145828,cat 145829,frog 145830,horse 145831,frog 145832,airplane 145833,cat 145834,cat 145835,airplane 145836,horse 145837,dog 145838,dog 145839,ship 145840,cat 145841,frog 145842,cat 145843,airplane 145844,deer 145845,airplane 145846,truck 145847,truck 145848,frog 145849,ship 145850,cat 145851,truck 145852,deer 145853,airplane 145854,cat 145855,horse 145856,frog 145857,deer 145858,automobile 145859,frog 145860,deer 145861,cat 145862,frog 145863,horse 145864,frog 145865,deer 145866,bird 145867,cat 145868,horse 145869,airplane 145870,dog 145871,frog 145872,airplane 145873,airplane 145874,truck 145875,dog 145876,bird 145877,airplane 145878,truck 145879,bird 145880,cat 145881,deer 145882,deer 145883,frog 145884,cat 145885,dog 145886,horse 145887,deer 145888,deer 145889,deer 145890,truck 145891,frog 145892,truck 145893,deer 145894,bird 145895,cat 145896,ship 145897,deer 145898,cat 145899,horse 145900,truck 145901,automobile 145902,bird 145903,dog 145904,horse 145905,frog 145906,deer 145907,dog 145908,dog 145909,airplane 145910,cat 145911,truck 145912,cat 145913,deer 145914,cat 145915,deer 145916,automobile 145917,automobile 145918,airplane 145919,cat 145920,frog 145921,dog 145922,dog 145923,dog 145924,truck 145925,frog 145926,bird 145927,automobile 145928,truck 145929,deer 145930,dog 145931,dog 145932,horse 145933,deer 145934,truck 145935,frog 145936,cat 145937,dog 145938,cat 145939,ship 145940,automobile 145941,bird 145942,deer 145943,frog 145944,dog 145945,deer 145946,frog 145947,deer 145948,deer 145949,horse 145950,horse 145951,horse 145952,ship 145953,truck 145954,deer 145955,horse 145956,dog 145957,horse 145958,deer 145959,bird 145960,truck 145961,deer 145962,frog 145963,frog 145964,bird 145965,frog 145966,truck 145967,deer 145968,dog 145969,bird 145970,horse 145971,truck 145972,deer 145973,truck 145974,cat 145975,bird 145976,frog 145977,airplane 145978,frog 145979,airplane 145980,dog 145981,horse 145982,ship 145983,airplane 145984,deer 145985,ship 145986,deer 145987,ship 145988,airplane 145989,frog 145990,bird 145991,bird 145992,dog 145993,deer 145994,cat 145995,frog 145996,deer 145997,bird 145998,automobile 145999,truck 146000,automobile 146001,frog 146002,truck 146003,automobile 146004,bird 146005,bird 146006,airplane 146007,cat 146008,cat 146009,truck 146010,bird 146011,automobile 146012,dog 146013,frog 146014,deer 146015,ship 146016,bird 146017,deer 146018,airplane 146019,deer 146020,automobile 146021,truck 146022,horse 146023,deer 146024,deer 146025,cat 146026,ship 146027,truck 146028,deer 146029,deer 146030,deer 146031,dog 146032,ship 146033,deer 146034,deer 146035,dog 146036,ship 146037,cat 146038,frog 146039,horse 146040,cat 146041,cat 146042,cat 146043,cat 146044,deer 146045,deer 146046,cat 146047,dog 146048,frog 146049,cat 146050,dog 146051,truck 146052,horse 146053,ship 146054,truck 146055,frog 146056,ship 146057,bird 146058,truck 146059,dog 146060,truck 146061,truck 146062,dog 146063,airplane 146064,automobile 146065,dog 146066,cat 146067,cat 146068,frog 146069,dog 146070,truck 146071,deer 146072,ship 146073,truck 146074,deer 146075,deer 146076,deer 146077,bird 146078,cat 146079,deer 146080,truck 146081,dog 146082,ship 146083,dog 146084,frog 146085,frog 146086,dog 146087,airplane 146088,ship 146089,dog 146090,deer 146091,truck 146092,deer 146093,bird 146094,deer 146095,airplane 146096,cat 146097,frog 146098,dog 146099,frog 146100,ship 146101,truck 146102,bird 146103,deer 146104,cat 146105,frog 146106,frog 146107,bird 146108,deer 146109,automobile 146110,deer 146111,frog 146112,dog 146113,frog 146114,deer 146115,frog 146116,dog 146117,truck 146118,deer 146119,deer 146120,airplane 146121,bird 146122,truck 146123,dog 146124,cat 146125,horse 146126,horse 146127,automobile 146128,ship 146129,horse 146130,truck 146131,cat 146132,airplane 146133,bird 146134,automobile 146135,ship 146136,cat 146137,dog 146138,dog 146139,automobile 146140,truck 146141,ship 146142,frog 146143,truck 146144,ship 146145,frog 146146,airplane 146147,horse 146148,ship 146149,cat 146150,truck 146151,automobile 146152,ship 146153,dog 146154,ship 146155,dog 146156,cat 146157,horse 146158,airplane 146159,deer 146160,bird 146161,truck 146162,frog 146163,ship 146164,horse 146165,bird 146166,bird 146167,horse 146168,horse 146169,truck 146170,horse 146171,truck 146172,horse 146173,frog 146174,deer 146175,automobile 146176,dog 146177,bird 146178,bird 146179,ship 146180,deer 146181,deer 146182,deer 146183,cat 146184,cat 146185,airplane 146186,automobile 146187,deer 146188,horse 146189,airplane 146190,horse 146191,airplane 146192,airplane 146193,airplane 146194,automobile 146195,ship 146196,deer 146197,truck 146198,cat 146199,dog 146200,cat 146201,dog 146202,frog 146203,cat 146204,automobile 146205,horse 146206,frog 146207,deer 146208,airplane 146209,horse 146210,ship 146211,dog 146212,airplane 146213,horse 146214,deer 146215,dog 146216,automobile 146217,ship 146218,cat 146219,horse 146220,truck 146221,frog 146222,dog 146223,automobile 146224,cat 146225,cat 146226,dog 146227,cat 146228,dog 146229,cat 146230,frog 146231,frog 146232,truck 146233,frog 146234,frog 146235,frog 146236,automobile 146237,dog 146238,frog 146239,frog 146240,cat 146241,cat 146242,cat 146243,horse 146244,deer 146245,ship 146246,bird 146247,cat 146248,deer 146249,cat 146250,deer 146251,horse 146252,automobile 146253,dog 146254,cat 146255,dog 146256,automobile 146257,truck 146258,cat 146259,deer 146260,deer 146261,bird 146262,deer 146263,bird 146264,bird 146265,ship 146266,airplane 146267,horse 146268,frog 146269,airplane 146270,bird 146271,airplane 146272,bird 146273,horse 146274,cat 146275,horse 146276,deer 146277,bird 146278,airplane 146279,airplane 146280,horse 146281,cat 146282,truck 146283,frog 146284,truck 146285,truck 146286,airplane 146287,dog 146288,dog 146289,truck 146290,horse 146291,cat 146292,cat 146293,deer 146294,ship 146295,airplane 146296,truck 146297,frog 146298,horse 146299,deer 146300,cat 146301,cat 146302,deer 146303,airplane 146304,cat 146305,deer 146306,dog 146307,airplane 146308,frog 146309,frog 146310,bird 146311,bird 146312,cat 146313,airplane 146314,horse 146315,truck 146316,dog 146317,cat 146318,automobile 146319,deer 146320,dog 146321,horse 146322,dog 146323,horse 146324,frog 146325,truck 146326,dog 146327,horse 146328,airplane 146329,horse 146330,automobile 146331,ship 146332,frog 146333,truck 146334,dog 146335,dog 146336,airplane 146337,dog 146338,airplane 146339,bird 146340,automobile 146341,bird 146342,airplane 146343,airplane 146344,airplane 146345,bird 146346,airplane 146347,truck 146348,cat 146349,frog 146350,horse 146351,deer 146352,deer 146353,horse 146354,airplane 146355,bird 146356,cat 146357,horse 146358,automobile 146359,deer 146360,dog 146361,cat 146362,dog 146363,horse 146364,deer 146365,deer 146366,cat 146367,bird 146368,truck 146369,cat 146370,airplane 146371,automobile 146372,ship 146373,cat 146374,dog 146375,horse 146376,cat 146377,cat 146378,horse 146379,horse 146380,airplane 146381,dog 146382,horse 146383,ship 146384,cat 146385,dog 146386,horse 146387,cat 146388,deer 146389,truck 146390,automobile 146391,truck 146392,truck 146393,frog 146394,frog 146395,frog 146396,dog 146397,airplane 146398,frog 146399,bird 146400,bird 146401,ship 146402,cat 146403,cat 146404,bird 146405,bird 146406,bird 146407,automobile 146408,frog 146409,deer 146410,deer 146411,horse 146412,frog 146413,dog 146414,truck 146415,bird 146416,horse 146417,airplane 146418,dog 146419,bird 146420,airplane 146421,airplane 146422,cat 146423,bird 146424,deer 146425,truck 146426,automobile 146427,airplane 146428,frog 146429,dog 146430,ship 146431,bird 146432,truck 146433,horse 146434,horse 146435,dog 146436,frog 146437,truck 146438,deer 146439,truck 146440,frog 146441,horse 146442,airplane 146443,airplane 146444,airplane 146445,deer 146446,horse 146447,truck 146448,deer 146449,frog 146450,cat 146451,bird 146452,dog 146453,deer 146454,deer 146455,dog 146456,airplane 146457,automobile 146458,deer 146459,frog 146460,ship 146461,airplane 146462,deer 146463,truck 146464,dog 146465,dog 146466,cat 146467,ship 146468,horse 146469,horse 146470,airplane 146471,horse 146472,bird 146473,deer 146474,deer 146475,frog 146476,cat 146477,frog 146478,airplane 146479,deer 146480,deer 146481,automobile 146482,ship 146483,cat 146484,horse 146485,horse 146486,horse 146487,cat 146488,dog 146489,bird 146490,automobile 146491,horse 146492,frog 146493,horse 146494,frog 146495,truck 146496,dog 146497,cat 146498,dog 146499,deer 146500,bird 146501,bird 146502,dog 146503,airplane 146504,bird 146505,cat 146506,airplane 146507,dog 146508,frog 146509,ship 146510,dog 146511,dog 146512,dog 146513,dog 146514,deer 146515,airplane 146516,ship 146517,deer 146518,cat 146519,truck 146520,dog 146521,bird 146522,dog 146523,airplane 146524,bird 146525,automobile 146526,deer 146527,cat 146528,automobile 146529,deer 146530,frog 146531,horse 146532,deer 146533,cat 146534,horse 146535,deer 146536,bird 146537,automobile 146538,truck 146539,automobile 146540,airplane 146541,ship 146542,airplane 146543,cat 146544,bird 146545,frog 146546,deer 146547,cat 146548,cat 146549,truck 146550,frog 146551,cat 146552,dog 146553,automobile 146554,bird 146555,frog 146556,frog 146557,bird 146558,bird 146559,airplane 146560,automobile 146561,horse 146562,ship 146563,dog 146564,frog 146565,horse 146566,deer 146567,cat 146568,truck 146569,deer 146570,airplane 146571,ship 146572,cat 146573,bird 146574,frog 146575,cat 146576,automobile 146577,cat 146578,ship 146579,dog 146580,deer 146581,automobile 146582,cat 146583,airplane 146584,bird 146585,frog 146586,deer 146587,frog 146588,dog 146589,deer 146590,ship 146591,truck 146592,deer 146593,truck 146594,cat 146595,cat 146596,frog 146597,truck 146598,airplane 146599,ship 146600,bird 146601,horse 146602,deer 146603,frog 146604,frog 146605,frog 146606,horse 146607,ship 146608,dog 146609,airplane 146610,frog 146611,dog 146612,deer 146613,cat 146614,ship 146615,bird 146616,horse 146617,deer 146618,ship 146619,truck 146620,frog 146621,frog 146622,automobile 146623,frog 146624,dog 146625,truck 146626,cat 146627,bird 146628,deer 146629,frog 146630,cat 146631,bird 146632,horse 146633,dog 146634,ship 146635,ship 146636,cat 146637,airplane 146638,airplane 146639,frog 146640,frog 146641,ship 146642,truck 146643,bird 146644,horse 146645,frog 146646,horse 146647,deer 146648,ship 146649,dog 146650,ship 146651,cat 146652,deer 146653,horse 146654,airplane 146655,dog 146656,deer 146657,truck 146658,bird 146659,dog 146660,dog 146661,ship 146662,airplane 146663,deer 146664,truck 146665,frog 146666,dog 146667,deer 146668,truck 146669,frog 146670,horse 146671,bird 146672,dog 146673,dog 146674,bird 146675,airplane 146676,cat 146677,bird 146678,frog 146679,dog 146680,horse 146681,frog 146682,dog 146683,truck 146684,cat 146685,ship 146686,bird 146687,cat 146688,frog 146689,frog 146690,cat 146691,dog 146692,truck 146693,dog 146694,deer 146695,horse 146696,bird 146697,deer 146698,truck 146699,truck 146700,ship 146701,truck 146702,horse 146703,frog 146704,deer 146705,frog 146706,frog 146707,horse 146708,airplane 146709,cat 146710,cat 146711,horse 146712,frog 146713,frog 146714,truck 146715,deer 146716,dog 146717,deer 146718,horse 146719,deer 146720,cat 146721,deer 146722,airplane 146723,ship 146724,horse 146725,horse 146726,frog 146727,ship 146728,automobile 146729,frog 146730,automobile 146731,automobile 146732,cat 146733,automobile 146734,cat 146735,deer 146736,truck 146737,cat 146738,horse 146739,deer 146740,frog 146741,cat 146742,airplane 146743,dog 146744,automobile 146745,cat 146746,ship 146747,cat 146748,truck 146749,ship 146750,cat 146751,dog 146752,bird 146753,airplane 146754,automobile 146755,deer 146756,deer 146757,deer 146758,dog 146759,ship 146760,deer 146761,ship 146762,horse 146763,frog 146764,bird 146765,bird 146766,airplane 146767,frog 146768,ship 146769,cat 146770,dog 146771,automobile 146772,deer 146773,horse 146774,deer 146775,airplane 146776,deer 146777,truck 146778,deer 146779,ship 146780,truck 146781,bird 146782,horse 146783,dog 146784,ship 146785,frog 146786,airplane 146787,frog 146788,ship 146789,ship 146790,airplane 146791,deer 146792,bird 146793,dog 146794,deer 146795,automobile 146796,dog 146797,truck 146798,dog 146799,truck 146800,cat 146801,dog 146802,dog 146803,deer 146804,truck 146805,ship 146806,deer 146807,bird 146808,automobile 146809,dog 146810,horse 146811,deer 146812,truck 146813,truck 146814,cat 146815,dog 146816,frog 146817,dog 146818,ship 146819,deer 146820,bird 146821,frog 146822,truck 146823,bird 146824,cat 146825,deer 146826,automobile 146827,dog 146828,deer 146829,truck 146830,dog 146831,ship 146832,deer 146833,automobile 146834,horse 146835,dog 146836,bird 146837,cat 146838,frog 146839,deer 146840,cat 146841,deer 146842,horse 146843,bird 146844,ship 146845,horse 146846,ship 146847,truck 146848,cat 146849,frog 146850,truck 146851,automobile 146852,cat 146853,deer 146854,horse 146855,ship 146856,bird 146857,bird 146858,truck 146859,dog 146860,automobile 146861,airplane 146862,dog 146863,dog 146864,deer 146865,ship 146866,deer 146867,cat 146868,cat 146869,ship 146870,horse 146871,frog 146872,deer 146873,deer 146874,deer 146875,automobile 146876,bird 146877,horse 146878,bird 146879,airplane 146880,deer 146881,dog 146882,automobile 146883,airplane 146884,cat 146885,cat 146886,automobile 146887,frog 146888,bird 146889,automobile 146890,cat 146891,airplane 146892,horse 146893,airplane 146894,cat 146895,truck 146896,horse 146897,automobile 146898,deer 146899,horse 146900,frog 146901,deer 146902,dog 146903,horse 146904,cat 146905,deer 146906,airplane 146907,deer 146908,dog 146909,automobile 146910,automobile 146911,cat 146912,cat 146913,truck 146914,bird 146915,airplane 146916,deer 146917,cat 146918,cat 146919,deer 146920,dog 146921,horse 146922,truck 146923,bird 146924,frog 146925,ship 146926,horse 146927,truck 146928,frog 146929,cat 146930,frog 146931,ship 146932,deer 146933,bird 146934,truck 146935,ship 146936,cat 146937,cat 146938,dog 146939,cat 146940,deer 146941,deer 146942,airplane 146943,dog 146944,cat 146945,bird 146946,deer 146947,frog 146948,frog 146949,ship 146950,horse 146951,bird 146952,airplane 146953,deer 146954,horse 146955,airplane 146956,deer 146957,horse 146958,automobile 146959,ship 146960,dog 146961,ship 146962,dog 146963,cat 146964,bird 146965,dog 146966,bird 146967,bird 146968,horse 146969,ship 146970,cat 146971,ship 146972,airplane 146973,bird 146974,dog 146975,frog 146976,frog 146977,frog 146978,dog 146979,dog 146980,airplane 146981,ship 146982,deer 146983,frog 146984,truck 146985,deer 146986,deer 146987,dog 146988,horse 146989,truck 146990,dog 146991,deer 146992,dog 146993,ship 146994,bird 146995,dog 146996,truck 146997,airplane 146998,horse 146999,airplane 147000,bird 147001,dog 147002,horse 147003,cat 147004,deer 147005,automobile 147006,dog 147007,dog 147008,truck 147009,deer 147010,bird 147011,deer 147012,automobile 147013,deer 147014,horse 147015,airplane 147016,ship 147017,ship 147018,dog 147019,airplane 147020,cat 147021,bird 147022,frog 147023,horse 147024,dog 147025,frog 147026,automobile 147027,ship 147028,deer 147029,bird 147030,airplane 147031,deer 147032,bird 147033,airplane 147034,automobile 147035,ship 147036,deer 147037,dog 147038,airplane 147039,deer 147040,bird 147041,bird 147042,airplane 147043,horse 147044,cat 147045,ship 147046,frog 147047,dog 147048,bird 147049,ship 147050,deer 147051,dog 147052,dog 147053,bird 147054,dog 147055,cat 147056,cat 147057,deer 147058,automobile 147059,automobile 147060,automobile 147061,ship 147062,dog 147063,bird 147064,dog 147065,frog 147066,horse 147067,automobile 147068,automobile 147069,horse 147070,frog 147071,bird 147072,horse 147073,dog 147074,deer 147075,dog 147076,frog 147077,deer 147078,deer 147079,dog 147080,frog 147081,frog 147082,deer 147083,airplane 147084,ship 147085,cat 147086,bird 147087,airplane 147088,truck 147089,airplane 147090,horse 147091,ship 147092,dog 147093,dog 147094,dog 147095,airplane 147096,bird 147097,automobile 147098,horse 147099,bird 147100,deer 147101,dog 147102,horse 147103,automobile 147104,frog 147105,dog 147106,cat 147107,truck 147108,automobile 147109,deer 147110,deer 147111,ship 147112,cat 147113,automobile 147114,dog 147115,dog 147116,ship 147117,cat 147118,truck 147119,horse 147120,horse 147121,ship 147122,horse 147123,airplane 147124,dog 147125,deer 147126,truck 147127,truck 147128,frog 147129,ship 147130,horse 147131,ship 147132,airplane 147133,airplane 147134,cat 147135,truck 147136,ship 147137,ship 147138,bird 147139,bird 147140,cat 147141,ship 147142,cat 147143,deer 147144,cat 147145,cat 147146,deer 147147,cat 147148,deer 147149,ship 147150,dog 147151,deer 147152,deer 147153,deer 147154,frog 147155,frog 147156,automobile 147157,airplane 147158,automobile 147159,deer 147160,ship 147161,truck 147162,bird 147163,automobile 147164,deer 147165,frog 147166,dog 147167,frog 147168,horse 147169,dog 147170,dog 147171,automobile 147172,dog 147173,horse 147174,ship 147175,cat 147176,dog 147177,frog 147178,deer 147179,truck 147180,truck 147181,bird 147182,truck 147183,frog 147184,truck 147185,automobile 147186,cat 147187,dog 147188,horse 147189,dog 147190,cat 147191,ship 147192,frog 147193,dog 147194,dog 147195,dog 147196,cat 147197,ship 147198,deer 147199,bird 147200,horse 147201,frog 147202,airplane 147203,airplane 147204,frog 147205,cat 147206,airplane 147207,frog 147208,dog 147209,deer 147210,horse 147211,horse 147212,horse 147213,truck 147214,cat 147215,airplane 147216,airplane 147217,automobile 147218,automobile 147219,horse 147220,dog 147221,cat 147222,bird 147223,ship 147224,cat 147225,truck 147226,deer 147227,automobile 147228,airplane 147229,cat 147230,truck 147231,frog 147232,dog 147233,horse 147234,automobile 147235,airplane 147236,deer 147237,frog 147238,bird 147239,bird 147240,cat 147241,airplane 147242,dog 147243,ship 147244,bird 147245,frog 147246,dog 147247,cat 147248,airplane 147249,deer 147250,airplane 147251,horse 147252,cat 147253,bird 147254,horse 147255,deer 147256,bird 147257,cat 147258,automobile 147259,deer 147260,ship 147261,truck 147262,cat 147263,bird 147264,frog 147265,automobile 147266,bird 147267,dog 147268,horse 147269,cat 147270,dog 147271,truck 147272,automobile 147273,deer 147274,frog 147275,dog 147276,horse 147277,automobile 147278,automobile 147279,deer 147280,cat 147281,frog 147282,airplane 147283,truck 147284,bird 147285,frog 147286,airplane 147287,bird 147288,truck 147289,airplane 147290,dog 147291,frog 147292,horse 147293,deer 147294,truck 147295,cat 147296,dog 147297,horse 147298,ship 147299,ship 147300,cat 147301,truck 147302,truck 147303,airplane 147304,cat 147305,dog 147306,truck 147307,bird 147308,truck 147309,bird 147310,frog 147311,ship 147312,bird 147313,bird 147314,dog 147315,deer 147316,bird 147317,bird 147318,horse 147319,airplane 147320,airplane 147321,frog 147322,automobile 147323,cat 147324,automobile 147325,horse 147326,bird 147327,dog 147328,deer 147329,deer 147330,dog 147331,frog 147332,deer 147333,frog 147334,truck 147335,horse 147336,horse 147337,automobile 147338,deer 147339,bird 147340,horse 147341,frog 147342,deer 147343,frog 147344,frog 147345,ship 147346,truck 147347,deer 147348,dog 147349,dog 147350,deer 147351,bird 147352,frog 147353,bird 147354,automobile 147355,airplane 147356,deer 147357,airplane 147358,bird 147359,truck 147360,horse 147361,dog 147362,ship 147363,truck 147364,frog 147365,dog 147366,truck 147367,bird 147368,cat 147369,automobile 147370,cat 147371,ship 147372,frog 147373,dog 147374,deer 147375,dog 147376,airplane 147377,airplane 147378,horse 147379,deer 147380,truck 147381,airplane 147382,automobile 147383,frog 147384,deer 147385,bird 147386,bird 147387,airplane 147388,airplane 147389,frog 147390,horse 147391,cat 147392,dog 147393,frog 147394,dog 147395,deer 147396,horse 147397,deer 147398,ship 147399,horse 147400,frog 147401,deer 147402,ship 147403,truck 147404,cat 147405,horse 147406,automobile 147407,bird 147408,dog 147409,frog 147410,bird 147411,dog 147412,frog 147413,cat 147414,truck 147415,deer 147416,truck 147417,bird 147418,horse 147419,deer 147420,truck 147421,deer 147422,dog 147423,frog 147424,airplane 147425,dog 147426,dog 147427,dog 147428,deer 147429,dog 147430,deer 147431,airplane 147432,ship 147433,ship 147434,truck 147435,airplane 147436,ship 147437,dog 147438,dog 147439,deer 147440,airplane 147441,automobile 147442,automobile 147443,dog 147444,cat 147445,automobile 147446,deer 147447,truck 147448,bird 147449,deer 147450,ship 147451,deer 147452,ship 147453,frog 147454,deer 147455,cat 147456,deer 147457,bird 147458,cat 147459,truck 147460,automobile 147461,ship 147462,deer 147463,ship 147464,horse 147465,ship 147466,horse 147467,cat 147468,horse 147469,airplane 147470,airplane 147471,cat 147472,truck 147473,frog 147474,cat 147475,deer 147476,frog 147477,truck 147478,airplane 147479,bird 147480,frog 147481,deer 147482,horse 147483,frog 147484,frog 147485,horse 147486,bird 147487,frog 147488,dog 147489,frog 147490,bird 147491,airplane 147492,ship 147493,deer 147494,horse 147495,deer 147496,dog 147497,deer 147498,bird 147499,truck 147500,deer 147501,ship 147502,bird 147503,deer 147504,dog 147505,ship 147506,deer 147507,ship 147508,bird 147509,cat 147510,cat 147511,bird 147512,ship 147513,truck 147514,truck 147515,truck 147516,cat 147517,cat 147518,automobile 147519,bird 147520,deer 147521,dog 147522,frog 147523,horse 147524,airplane 147525,frog 147526,cat 147527,frog 147528,deer 147529,bird 147530,automobile 147531,dog 147532,truck 147533,horse 147534,horse 147535,cat 147536,frog 147537,bird 147538,airplane 147539,frog 147540,automobile 147541,automobile 147542,airplane 147543,airplane 147544,frog 147545,cat 147546,horse 147547,airplane 147548,bird 147549,horse 147550,truck 147551,airplane 147552,cat 147553,dog 147554,automobile 147555,airplane 147556,dog 147557,deer 147558,frog 147559,airplane 147560,truck 147561,airplane 147562,airplane 147563,truck 147564,frog 147565,deer 147566,frog 147567,truck 147568,deer 147569,deer 147570,cat 147571,truck 147572,truck 147573,automobile 147574,frog 147575,ship 147576,airplane 147577,automobile 147578,cat 147579,dog 147580,automobile 147581,deer 147582,deer 147583,cat 147584,frog 147585,bird 147586,bird 147587,dog 147588,truck 147589,frog 147590,deer 147591,dog 147592,cat 147593,dog 147594,cat 147595,airplane 147596,cat 147597,airplane 147598,ship 147599,truck 147600,deer 147601,airplane 147602,deer 147603,bird 147604,cat 147605,horse 147606,ship 147607,cat 147608,deer 147609,dog 147610,automobile 147611,bird 147612,dog 147613,horse 147614,cat 147615,dog 147616,deer 147617,truck 147618,deer 147619,deer 147620,dog 147621,deer 147622,cat 147623,ship 147624,cat 147625,dog 147626,bird 147627,cat 147628,deer 147629,frog 147630,deer 147631,automobile 147632,deer 147633,airplane 147634,ship 147635,frog 147636,bird 147637,cat 147638,cat 147639,airplane 147640,truck 147641,dog 147642,bird 147643,airplane 147644,cat 147645,bird 147646,truck 147647,truck 147648,frog 147649,ship 147650,cat 147651,ship 147652,automobile 147653,truck 147654,automobile 147655,ship 147656,truck 147657,dog 147658,dog 147659,truck 147660,truck 147661,horse 147662,bird 147663,truck 147664,horse 147665,bird 147666,cat 147667,bird 147668,deer 147669,truck 147670,airplane 147671,deer 147672,bird 147673,ship 147674,cat 147675,cat 147676,bird 147677,truck 147678,horse 147679,horse 147680,automobile 147681,deer 147682,cat 147683,cat 147684,dog 147685,airplane 147686,cat 147687,frog 147688,truck 147689,deer 147690,dog 147691,truck 147692,horse 147693,automobile 147694,airplane 147695,airplane 147696,dog 147697,frog 147698,horse 147699,horse 147700,dog 147701,truck 147702,frog 147703,cat 147704,airplane 147705,horse 147706,bird 147707,cat 147708,airplane 147709,bird 147710,dog 147711,truck 147712,cat 147713,airplane 147714,cat 147715,truck 147716,airplane 147717,deer 147718,airplane 147719,cat 147720,bird 147721,horse 147722,horse 147723,truck 147724,horse 147725,frog 147726,airplane 147727,frog 147728,bird 147729,cat 147730,bird 147731,bird 147732,frog 147733,airplane 147734,truck 147735,deer 147736,ship 147737,horse 147738,dog 147739,automobile 147740,ship 147741,deer 147742,dog 147743,deer 147744,cat 147745,airplane 147746,ship 147747,frog 147748,dog 147749,airplane 147750,horse 147751,bird 147752,ship 147753,dog 147754,truck 147755,ship 147756,frog 147757,dog 147758,dog 147759,dog 147760,frog 147761,truck 147762,frog 147763,airplane 147764,horse 147765,horse 147766,bird 147767,bird 147768,ship 147769,bird 147770,ship 147771,dog 147772,cat 147773,deer 147774,ship 147775,airplane 147776,dog 147777,cat 147778,cat 147779,airplane 147780,cat 147781,horse 147782,truck 147783,cat 147784,truck 147785,cat 147786,bird 147787,dog 147788,automobile 147789,airplane 147790,deer 147791,automobile 147792,horse 147793,bird 147794,ship 147795,dog 147796,horse 147797,cat 147798,airplane 147799,cat 147800,horse 147801,horse 147802,frog 147803,frog 147804,deer 147805,deer 147806,frog 147807,deer 147808,frog 147809,frog 147810,truck 147811,bird 147812,truck 147813,ship 147814,deer 147815,deer 147816,airplane 147817,truck 147818,deer 147819,horse 147820,airplane 147821,airplane 147822,cat 147823,dog 147824,truck 147825,bird 147826,bird 147827,deer 147828,truck 147829,frog 147830,deer 147831,cat 147832,frog 147833,horse 147834,frog 147835,bird 147836,horse 147837,frog 147838,dog 147839,truck 147840,deer 147841,frog 147842,deer 147843,deer 147844,truck 147845,horse 147846,deer 147847,truck 147848,deer 147849,airplane 147850,bird 147851,horse 147852,frog 147853,frog 147854,cat 147855,deer 147856,truck 147857,bird 147858,truck 147859,cat 147860,ship 147861,automobile 147862,truck 147863,cat 147864,bird 147865,bird 147866,ship 147867,deer 147868,truck 147869,bird 147870,frog 147871,cat 147872,dog 147873,ship 147874,automobile 147875,truck 147876,deer 147877,bird 147878,truck 147879,bird 147880,airplane 147881,ship 147882,bird 147883,deer 147884,automobile 147885,ship 147886,horse 147887,truck 147888,frog 147889,cat 147890,cat 147891,airplane 147892,horse 147893,dog 147894,deer 147895,bird 147896,cat 147897,truck 147898,cat 147899,automobile 147900,cat 147901,frog 147902,deer 147903,bird 147904,deer 147905,airplane 147906,horse 147907,automobile 147908,dog 147909,deer 147910,frog 147911,cat 147912,frog 147913,frog 147914,horse 147915,horse 147916,horse 147917,airplane 147918,cat 147919,deer 147920,ship 147921,bird 147922,deer 147923,automobile 147924,bird 147925,bird 147926,bird 147927,truck 147928,bird 147929,airplane 147930,automobile 147931,ship 147932,cat 147933,cat 147934,automobile 147935,dog 147936,deer 147937,cat 147938,dog 147939,airplane 147940,cat 147941,airplane 147942,truck 147943,frog 147944,bird 147945,truck 147946,frog 147947,deer 147948,automobile 147949,deer 147950,automobile 147951,dog 147952,truck 147953,dog 147954,frog 147955,cat 147956,truck 147957,frog 147958,truck 147959,dog 147960,automobile 147961,deer 147962,horse 147963,bird 147964,ship 147965,airplane 147966,frog 147967,cat 147968,frog 147969,dog 147970,cat 147971,dog 147972,deer 147973,dog 147974,bird 147975,dog 147976,airplane 147977,dog 147978,airplane 147979,truck 147980,dog 147981,airplane 147982,frog 147983,cat 147984,airplane 147985,airplane 147986,frog 147987,frog 147988,truck 147989,dog 147990,cat 147991,deer 147992,dog 147993,cat 147994,automobile 147995,cat 147996,horse 147997,deer 147998,bird 147999,dog 148000,cat 148001,dog 148002,deer 148003,truck 148004,truck 148005,cat 148006,horse 148007,automobile 148008,deer 148009,frog 148010,frog 148011,dog 148012,horse 148013,deer 148014,automobile 148015,automobile 148016,dog 148017,deer 148018,ship 148019,airplane 148020,cat 148021,horse 148022,deer 148023,airplane 148024,ship 148025,horse 148026,truck 148027,cat 148028,truck 148029,bird 148030,automobile 148031,airplane 148032,bird 148033,airplane 148034,truck 148035,cat 148036,dog 148037,truck 148038,airplane 148039,cat 148040,bird 148041,horse 148042,automobile 148043,cat 148044,bird 148045,ship 148046,truck 148047,airplane 148048,airplane 148049,deer 148050,cat 148051,bird 148052,deer 148053,truck 148054,dog 148055,frog 148056,deer 148057,truck 148058,cat 148059,automobile 148060,bird 148061,automobile 148062,horse 148063,airplane 148064,automobile 148065,frog 148066,bird 148067,horse 148068,automobile 148069,bird 148070,horse 148071,deer 148072,deer 148073,cat 148074,dog 148075,deer 148076,dog 148077,truck 148078,dog 148079,airplane 148080,bird 148081,bird 148082,ship 148083,truck 148084,cat 148085,airplane 148086,deer 148087,truck 148088,cat 148089,truck 148090,airplane 148091,deer 148092,frog 148093,automobile 148094,cat 148095,cat 148096,frog 148097,deer 148098,cat 148099,bird 148100,dog 148101,horse 148102,cat 148103,horse 148104,cat 148105,cat 148106,deer 148107,deer 148108,ship 148109,dog 148110,dog 148111,deer 148112,deer 148113,deer 148114,frog 148115,airplane 148116,ship 148117,airplane 148118,truck 148119,truck 148120,dog 148121,horse 148122,cat 148123,deer 148124,frog 148125,deer 148126,automobile 148127,cat 148128,deer 148129,ship 148130,automobile 148131,ship 148132,truck 148133,deer 148134,horse 148135,deer 148136,frog 148137,frog 148138,airplane 148139,cat 148140,ship 148141,horse 148142,automobile 148143,horse 148144,cat 148145,deer 148146,dog 148147,dog 148148,dog 148149,horse 148150,truck 148151,bird 148152,ship 148153,dog 148154,dog 148155,deer 148156,deer 148157,cat 148158,bird 148159,bird 148160,dog 148161,deer 148162,frog 148163,truck 148164,dog 148165,automobile 148166,truck 148167,airplane 148168,frog 148169,automobile 148170,bird 148171,dog 148172,dog 148173,airplane 148174,frog 148175,bird 148176,airplane 148177,dog 148178,deer 148179,automobile 148180,airplane 148181,dog 148182,automobile 148183,ship 148184,frog 148185,truck 148186,cat 148187,automobile 148188,cat 148189,horse 148190,bird 148191,cat 148192,frog 148193,dog 148194,cat 148195,frog 148196,ship 148197,dog 148198,deer 148199,frog 148200,cat 148201,deer 148202,cat 148203,ship 148204,bird 148205,dog 148206,bird 148207,cat 148208,cat 148209,horse 148210,airplane 148211,frog 148212,deer 148213,cat 148214,cat 148215,ship 148216,deer 148217,truck 148218,deer 148219,frog 148220,ship 148221,deer 148222,truck 148223,cat 148224,truck 148225,airplane 148226,automobile 148227,cat 148228,bird 148229,dog 148230,frog 148231,dog 148232,cat 148233,frog 148234,ship 148235,truck 148236,deer 148237,frog 148238,airplane 148239,bird 148240,truck 148241,ship 148242,airplane 148243,bird 148244,bird 148245,frog 148246,horse 148247,airplane 148248,frog 148249,deer 148250,deer 148251,truck 148252,ship 148253,deer 148254,bird 148255,cat 148256,automobile 148257,bird 148258,bird 148259,airplane 148260,airplane 148261,horse 148262,truck 148263,truck 148264,cat 148265,deer 148266,deer 148267,frog 148268,bird 148269,bird 148270,deer 148271,deer 148272,deer 148273,frog 148274,truck 148275,horse 148276,cat 148277,horse 148278,frog 148279,ship 148280,deer 148281,ship 148282,airplane 148283,deer 148284,bird 148285,frog 148286,deer 148287,cat 148288,ship 148289,airplane 148290,cat 148291,horse 148292,dog 148293,horse 148294,deer 148295,frog 148296,frog 148297,automobile 148298,automobile 148299,horse 148300,deer 148301,cat 148302,deer 148303,ship 148304,deer 148305,cat 148306,deer 148307,horse 148308,frog 148309,dog 148310,dog 148311,airplane 148312,deer 148313,cat 148314,ship 148315,deer 148316,frog 148317,deer 148318,truck 148319,ship 148320,ship 148321,horse 148322,deer 148323,ship 148324,cat 148325,bird 148326,horse 148327,airplane 148328,truck 148329,deer 148330,truck 148331,frog 148332,horse 148333,horse 148334,frog 148335,ship 148336,ship 148337,cat 148338,frog 148339,frog 148340,bird 148341,truck 148342,horse 148343,cat 148344,deer 148345,truck 148346,ship 148347,bird 148348,cat 148349,truck 148350,deer 148351,airplane 148352,truck 148353,automobile 148354,ship 148355,bird 148356,deer 148357,cat 148358,airplane 148359,dog 148360,dog 148361,bird 148362,frog 148363,dog 148364,cat 148365,horse 148366,deer 148367,deer 148368,bird 148369,frog 148370,deer 148371,ship 148372,dog 148373,dog 148374,bird 148375,dog 148376,airplane 148377,automobile 148378,bird 148379,frog 148380,cat 148381,airplane 148382,ship 148383,frog 148384,horse 148385,deer 148386,cat 148387,airplane 148388,cat 148389,deer 148390,horse 148391,deer 148392,bird 148393,dog 148394,automobile 148395,truck 148396,deer 148397,dog 148398,dog 148399,deer 148400,truck 148401,cat 148402,cat 148403,truck 148404,deer 148405,cat 148406,deer 148407,frog 148408,dog 148409,horse 148410,ship 148411,bird 148412,dog 148413,dog 148414,truck 148415,frog 148416,truck 148417,truck 148418,dog 148419,horse 148420,bird 148421,deer 148422,deer 148423,cat 148424,airplane 148425,dog 148426,deer 148427,dog 148428,cat 148429,dog 148430,horse 148431,truck 148432,horse 148433,cat 148434,bird 148435,frog 148436,dog 148437,cat 148438,deer 148439,airplane 148440,deer 148441,cat 148442,airplane 148443,automobile 148444,cat 148445,horse 148446,truck 148447,frog 148448,automobile 148449,horse 148450,ship 148451,deer 148452,deer 148453,bird 148454,deer 148455,airplane 148456,dog 148457,dog 148458,frog 148459,frog 148460,frog 148461,bird 148462,deer 148463,bird 148464,cat 148465,frog 148466,cat 148467,truck 148468,airplane 148469,airplane 148470,ship 148471,deer 148472,cat 148473,ship 148474,airplane 148475,deer 148476,frog 148477,frog 148478,airplane 148479,automobile 148480,deer 148481,bird 148482,dog 148483,deer 148484,ship 148485,ship 148486,airplane 148487,dog 148488,dog 148489,ship 148490,cat 148491,dog 148492,bird 148493,deer 148494,horse 148495,airplane 148496,horse 148497,deer 148498,deer 148499,airplane 148500,deer 148501,dog 148502,dog 148503,truck 148504,dog 148505,airplane 148506,deer 148507,deer 148508,bird 148509,ship 148510,dog 148511,automobile 148512,deer 148513,frog 148514,deer 148515,horse 148516,frog 148517,horse 148518,horse 148519,horse 148520,bird 148521,dog 148522,frog 148523,bird 148524,automobile 148525,frog 148526,dog 148527,deer 148528,airplane 148529,cat 148530,frog 148531,dog 148532,frog 148533,airplane 148534,dog 148535,automobile 148536,airplane 148537,horse 148538,ship 148539,horse 148540,truck 148541,frog 148542,dog 148543,deer 148544,cat 148545,deer 148546,dog 148547,deer 148548,cat 148549,ship 148550,automobile 148551,airplane 148552,bird 148553,airplane 148554,automobile 148555,frog 148556,deer 148557,bird 148558,ship 148559,horse 148560,airplane 148561,cat 148562,cat 148563,dog 148564,horse 148565,dog 148566,airplane 148567,automobile 148568,automobile 148569,automobile 148570,automobile 148571,airplane 148572,cat 148573,dog 148574,airplane 148575,ship 148576,frog 148577,cat 148578,frog 148579,deer 148580,frog 148581,cat 148582,ship 148583,ship 148584,bird 148585,dog 148586,truck 148587,bird 148588,bird 148589,deer 148590,automobile 148591,cat 148592,horse 148593,airplane 148594,frog 148595,cat 148596,bird 148597,dog 148598,truck 148599,cat 148600,airplane 148601,dog 148602,frog 148603,dog 148604,automobile 148605,horse 148606,automobile 148607,truck 148608,frog 148609,horse 148610,frog 148611,horse 148612,frog 148613,truck 148614,deer 148615,dog 148616,truck 148617,truck 148618,bird 148619,airplane 148620,cat 148621,bird 148622,automobile 148623,truck 148624,dog 148625,bird 148626,truck 148627,deer 148628,cat 148629,deer 148630,airplane 148631,dog 148632,bird 148633,dog 148634,automobile 148635,frog 148636,ship 148637,truck 148638,cat 148639,deer 148640,bird 148641,automobile 148642,cat 148643,ship 148644,frog 148645,deer 148646,ship 148647,truck 148648,cat 148649,horse 148650,airplane 148651,cat 148652,truck 148653,airplane 148654,airplane 148655,frog 148656,cat 148657,truck 148658,horse 148659,horse 148660,bird 148661,frog 148662,horse 148663,dog 148664,cat 148665,cat 148666,cat 148667,bird 148668,cat 148669,horse 148670,cat 148671,truck 148672,cat 148673,frog 148674,frog 148675,deer 148676,deer 148677,frog 148678,frog 148679,airplane 148680,deer 148681,bird 148682,bird 148683,frog 148684,airplane 148685,ship 148686,dog 148687,frog 148688,airplane 148689,frog 148690,deer 148691,bird 148692,truck 148693,frog 148694,dog 148695,dog 148696,automobile 148697,dog 148698,dog 148699,frog 148700,dog 148701,automobile 148702,bird 148703,deer 148704,horse 148705,ship 148706,airplane 148707,dog 148708,airplane 148709,horse 148710,horse 148711,horse 148712,cat 148713,automobile 148714,deer 148715,bird 148716,bird 148717,dog 148718,horse 148719,horse 148720,cat 148721,horse 148722,automobile 148723,cat 148724,horse 148725,ship 148726,airplane 148727,dog 148728,deer 148729,frog 148730,truck 148731,deer 148732,cat 148733,horse 148734,deer 148735,cat 148736,airplane 148737,truck 148738,cat 148739,deer 148740,truck 148741,cat 148742,frog 148743,deer 148744,deer 148745,dog 148746,truck 148747,frog 148748,dog 148749,cat 148750,dog 148751,frog 148752,ship 148753,deer 148754,ship 148755,horse 148756,deer 148757,deer 148758,bird 148759,frog 148760,horse 148761,dog 148762,ship 148763,horse 148764,deer 148765,horse 148766,ship 148767,airplane 148768,horse 148769,deer 148770,deer 148771,frog 148772,automobile 148773,cat 148774,automobile 148775,dog 148776,truck 148777,deer 148778,cat 148779,deer 148780,deer 148781,horse 148782,automobile 148783,automobile 148784,dog 148785,ship 148786,horse 148787,ship 148788,truck 148789,deer 148790,ship 148791,frog 148792,dog 148793,cat 148794,deer 148795,dog 148796,bird 148797,cat 148798,dog 148799,truck 148800,truck 148801,frog 148802,ship 148803,truck 148804,bird 148805,horse 148806,deer 148807,cat 148808,frog 148809,ship 148810,airplane 148811,cat 148812,dog 148813,horse 148814,cat 148815,cat 148816,airplane 148817,dog 148818,horse 148819,deer 148820,truck 148821,ship 148822,bird 148823,horse 148824,frog 148825,airplane 148826,truck 148827,frog 148828,truck 148829,truck 148830,cat 148831,dog 148832,automobile 148833,truck 148834,cat 148835,automobile 148836,airplane 148837,horse 148838,airplane 148839,ship 148840,cat 148841,cat 148842,horse 148843,ship 148844,bird 148845,cat 148846,deer 148847,deer 148848,bird 148849,truck 148850,deer 148851,horse 148852,dog 148853,dog 148854,dog 148855,horse 148856,deer 148857,automobile 148858,dog 148859,deer 148860,cat 148861,automobile 148862,airplane 148863,truck 148864,dog 148865,truck 148866,deer 148867,deer 148868,deer 148869,bird 148870,cat 148871,deer 148872,dog 148873,ship 148874,ship 148875,frog 148876,cat 148877,deer 148878,cat 148879,automobile 148880,automobile 148881,ship 148882,frog 148883,cat 148884,airplane 148885,bird 148886,ship 148887,deer 148888,truck 148889,truck 148890,airplane 148891,cat 148892,horse 148893,cat 148894,cat 148895,cat 148896,truck 148897,airplane 148898,truck 148899,dog 148900,cat 148901,cat 148902,bird 148903,frog 148904,bird 148905,horse 148906,cat 148907,ship 148908,ship 148909,cat 148910,truck 148911,dog 148912,truck 148913,ship 148914,ship 148915,truck 148916,bird 148917,horse 148918,dog 148919,truck 148920,ship 148921,dog 148922,cat 148923,horse 148924,automobile 148925,deer 148926,frog 148927,airplane 148928,truck 148929,ship 148930,deer 148931,dog 148932,frog 148933,frog 148934,horse 148935,automobile 148936,cat 148937,airplane 148938,cat 148939,frog 148940,automobile 148941,automobile 148942,dog 148943,deer 148944,bird 148945,truck 148946,dog 148947,frog 148948,horse 148949,cat 148950,automobile 148951,cat 148952,cat 148953,automobile 148954,deer 148955,cat 148956,frog 148957,automobile 148958,automobile 148959,ship 148960,horse 148961,bird 148962,ship 148963,truck 148964,frog 148965,airplane 148966,automobile 148967,truck 148968,truck 148969,frog 148970,truck 148971,horse 148972,truck 148973,frog 148974,automobile 148975,frog 148976,dog 148977,horse 148978,truck 148979,ship 148980,airplane 148981,frog 148982,automobile 148983,truck 148984,horse 148985,dog 148986,frog 148987,truck 148988,truck 148989,deer 148990,ship 148991,horse 148992,airplane 148993,airplane 148994,deer 148995,truck 148996,ship 148997,cat 148998,airplane 148999,dog 149000,deer 149001,ship 149002,cat 149003,frog 149004,cat 149005,bird 149006,automobile 149007,automobile 149008,dog 149009,airplane 149010,cat 149011,deer 149012,truck 149013,frog 149014,deer 149015,truck 149016,airplane 149017,cat 149018,horse 149019,frog 149020,deer 149021,bird 149022,deer 149023,frog 149024,airplane 149025,dog 149026,airplane 149027,automobile 149028,airplane 149029,automobile 149030,deer 149031,dog 149032,cat 149033,automobile 149034,truck 149035,frog 149036,deer 149037,bird 149038,airplane 149039,deer 149040,deer 149041,horse 149042,truck 149043,dog 149044,cat 149045,deer 149046,cat 149047,deer 149048,airplane 149049,automobile 149050,dog 149051,frog 149052,deer 149053,automobile 149054,frog 149055,bird 149056,dog 149057,dog 149058,deer 149059,horse 149060,deer 149061,airplane 149062,cat 149063,deer 149064,airplane 149065,truck 149066,deer 149067,cat 149068,bird 149069,ship 149070,ship 149071,ship 149072,cat 149073,airplane 149074,bird 149075,bird 149076,dog 149077,dog 149078,dog 149079,truck 149080,airplane 149081,deer 149082,bird 149083,deer 149084,truck 149085,truck 149086,truck 149087,bird 149088,truck 149089,bird 149090,dog 149091,frog 149092,airplane 149093,horse 149094,deer 149095,frog 149096,airplane 149097,deer 149098,dog 149099,cat 149100,dog 149101,frog 149102,bird 149103,frog 149104,dog 149105,truck 149106,deer 149107,bird 149108,deer 149109,ship 149110,horse 149111,airplane 149112,cat 149113,bird 149114,cat 149115,truck 149116,bird 149117,cat 149118,cat 149119,cat 149120,cat 149121,truck 149122,bird 149123,horse 149124,frog 149125,automobile 149126,truck 149127,airplane 149128,ship 149129,deer 149130,cat 149131,deer 149132,bird 149133,bird 149134,ship 149135,dog 149136,automobile 149137,dog 149138,truck 149139,frog 149140,cat 149141,airplane 149142,frog 149143,frog 149144,deer 149145,dog 149146,dog 149147,frog 149148,deer 149149,bird 149150,truck 149151,deer 149152,automobile 149153,automobile 149154,frog 149155,cat 149156,ship 149157,cat 149158,truck 149159,truck 149160,frog 149161,deer 149162,cat 149163,truck 149164,automobile 149165,bird 149166,airplane 149167,ship 149168,horse 149169,ship 149170,dog 149171,deer 149172,bird 149173,frog 149174,automobile 149175,cat 149176,truck 149177,truck 149178,frog 149179,ship 149180,ship 149181,cat 149182,airplane 149183,deer 149184,automobile 149185,deer 149186,truck 149187,deer 149188,horse 149189,horse 149190,automobile 149191,cat 149192,truck 149193,deer 149194,bird 149195,deer 149196,ship 149197,truck 149198,dog 149199,cat 149200,dog 149201,airplane 149202,truck 149203,ship 149204,frog 149205,ship 149206,airplane 149207,truck 149208,horse 149209,horse 149210,truck 149211,dog 149212,frog 149213,truck 149214,deer 149215,dog 149216,cat 149217,truck 149218,cat 149219,cat 149220,truck 149221,airplane 149222,truck 149223,ship 149224,airplane 149225,automobile 149226,cat 149227,automobile 149228,bird 149229,deer 149230,cat 149231,frog 149232,deer 149233,dog 149234,deer 149235,cat 149236,deer 149237,bird 149238,frog 149239,automobile 149240,bird 149241,airplane 149242,deer 149243,ship 149244,ship 149245,truck 149246,truck 149247,horse 149248,frog 149249,bird 149250,cat 149251,airplane 149252,cat 149253,cat 149254,deer 149255,deer 149256,frog 149257,frog 149258,truck 149259,bird 149260,automobile 149261,horse 149262,horse 149263,truck 149264,cat 149265,airplane 149266,frog 149267,truck 149268,ship 149269,horse 149270,dog 149271,horse 149272,ship 149273,bird 149274,ship 149275,horse 149276,bird 149277,bird 149278,deer 149279,automobile 149280,automobile 149281,dog 149282,automobile 149283,cat 149284,dog 149285,deer 149286,dog 149287,dog 149288,cat 149289,truck 149290,truck 149291,cat 149292,horse 149293,deer 149294,cat 149295,deer 149296,cat 149297,cat 149298,frog 149299,ship 149300,bird 149301,dog 149302,horse 149303,frog 149304,bird 149305,horse 149306,truck 149307,airplane 149308,deer 149309,automobile 149310,ship 149311,automobile 149312,airplane 149313,deer 149314,cat 149315,airplane 149316,deer 149317,frog 149318,automobile 149319,airplane 149320,automobile 149321,truck 149322,ship 149323,bird 149324,horse 149325,bird 149326,horse 149327,horse 149328,ship 149329,frog 149330,frog 149331,cat 149332,horse 149333,truck 149334,truck 149335,frog 149336,horse 149337,truck 149338,horse 149339,airplane 149340,ship 149341,dog 149342,horse 149343,frog 149344,horse 149345,frog 149346,truck 149347,truck 149348,cat 149349,ship 149350,airplane 149351,truck 149352,deer 149353,horse 149354,dog 149355,dog 149356,frog 149357,dog 149358,ship 149359,airplane 149360,frog 149361,ship 149362,ship 149363,deer 149364,frog 149365,cat 149366,airplane 149367,truck 149368,dog 149369,horse 149370,dog 149371,ship 149372,horse 149373,horse 149374,airplane 149375,ship 149376,horse 149377,deer 149378,bird 149379,airplane 149380,deer 149381,ship 149382,cat 149383,deer 149384,bird 149385,ship 149386,cat 149387,deer 149388,frog 149389,dog 149390,airplane 149391,airplane 149392,ship 149393,airplane 149394,cat 149395,ship 149396,ship 149397,frog 149398,frog 149399,deer 149400,dog 149401,deer 149402,frog 149403,cat 149404,bird 149405,dog 149406,truck 149407,bird 149408,frog 149409,dog 149410,airplane 149411,horse 149412,airplane 149413,deer 149414,horse 149415,horse 149416,truck 149417,deer 149418,deer 149419,automobile 149420,truck 149421,deer 149422,frog 149423,truck 149424,cat 149425,cat 149426,cat 149427,airplane 149428,cat 149429,frog 149430,dog 149431,frog 149432,bird 149433,frog 149434,frog 149435,frog 149436,airplane 149437,airplane 149438,horse 149439,dog 149440,ship 149441,ship 149442,dog 149443,frog 149444,airplane 149445,cat 149446,airplane 149447,airplane 149448,dog 149449,dog 149450,airplane 149451,frog 149452,bird 149453,deer 149454,frog 149455,airplane 149456,deer 149457,dog 149458,deer 149459,cat 149460,truck 149461,automobile 149462,truck 149463,dog 149464,airplane 149465,frog 149466,airplane 149467,automobile 149468,frog 149469,dog 149470,airplane 149471,automobile 149472,frog 149473,automobile 149474,frog 149475,ship 149476,dog 149477,frog 149478,deer 149479,truck 149480,frog 149481,horse 149482,cat 149483,ship 149484,airplane 149485,bird 149486,deer 149487,automobile 149488,dog 149489,cat 149490,frog 149491,deer 149492,cat 149493,frog 149494,truck 149495,frog 149496,ship 149497,deer 149498,automobile 149499,dog 149500,automobile 149501,dog 149502,cat 149503,ship 149504,cat 149505,frog 149506,deer 149507,deer 149508,dog 149509,ship 149510,cat 149511,cat 149512,cat 149513,horse 149514,deer 149515,frog 149516,cat 149517,cat 149518,frog 149519,truck 149520,dog 149521,frog 149522,frog 149523,frog 149524,frog 149525,deer 149526,bird 149527,bird 149528,truck 149529,dog 149530,cat 149531,cat 149532,horse 149533,deer 149534,bird 149535,truck 149536,cat 149537,horse 149538,ship 149539,deer 149540,truck 149541,horse 149542,cat 149543,dog 149544,cat 149545,deer 149546,deer 149547,horse 149548,truck 149549,horse 149550,horse 149551,dog 149552,frog 149553,bird 149554,bird 149555,ship 149556,frog 149557,dog 149558,cat 149559,bird 149560,airplane 149561,deer 149562,airplane 149563,dog 149564,deer 149565,cat 149566,automobile 149567,automobile 149568,bird 149569,airplane 149570,bird 149571,cat 149572,ship 149573,frog 149574,ship 149575,cat 149576,truck 149577,horse 149578,cat 149579,frog 149580,bird 149581,cat 149582,cat 149583,deer 149584,bird 149585,truck 149586,airplane 149587,frog 149588,deer 149589,truck 149590,airplane 149591,horse 149592,cat 149593,deer 149594,cat 149595,bird 149596,cat 149597,horse 149598,frog 149599,frog 149600,deer 149601,frog 149602,cat 149603,bird 149604,deer 149605,cat 149606,bird 149607,dog 149608,dog 149609,frog 149610,cat 149611,cat 149612,truck 149613,cat 149614,ship 149615,deer 149616,airplane 149617,cat 149618,dog 149619,horse 149620,cat 149621,automobile 149622,deer 149623,cat 149624,automobile 149625,automobile 149626,truck 149627,frog 149628,truck 149629,cat 149630,deer 149631,airplane 149632,ship 149633,deer 149634,bird 149635,ship 149636,truck 149637,airplane 149638,bird 149639,airplane 149640,airplane 149641,truck 149642,deer 149643,airplane 149644,bird 149645,airplane 149646,bird 149647,dog 149648,dog 149649,cat 149650,airplane 149651,horse 149652,bird 149653,dog 149654,truck 149655,automobile 149656,airplane 149657,airplane 149658,horse 149659,truck 149660,ship 149661,truck 149662,cat 149663,deer 149664,horse 149665,cat 149666,deer 149667,ship 149668,horse 149669,ship 149670,automobile 149671,horse 149672,cat 149673,automobile 149674,bird 149675,dog 149676,deer 149677,truck 149678,ship 149679,frog 149680,dog 149681,cat 149682,cat 149683,ship 149684,frog 149685,truck 149686,horse 149687,deer 149688,bird 149689,horse 149690,automobile 149691,bird 149692,dog 149693,frog 149694,cat 149695,cat 149696,horse 149697,ship 149698,horse 149699,deer 149700,frog 149701,frog 149702,dog 149703,dog 149704,cat 149705,cat 149706,ship 149707,bird 149708,frog 149709,frog 149710,deer 149711,airplane 149712,cat 149713,horse 149714,horse 149715,airplane 149716,ship 149717,horse 149718,cat 149719,truck 149720,ship 149721,cat 149722,cat 149723,deer 149724,ship 149725,cat 149726,cat 149727,deer 149728,cat 149729,deer 149730,horse 149731,deer 149732,dog 149733,horse 149734,airplane 149735,deer 149736,ship 149737,airplane 149738,ship 149739,cat 149740,bird 149741,bird 149742,airplane 149743,deer 149744,frog 149745,truck 149746,truck 149747,ship 149748,dog 149749,frog 149750,frog 149751,dog 149752,truck 149753,dog 149754,deer 149755,deer 149756,dog 149757,automobile 149758,cat 149759,bird 149760,deer 149761,ship 149762,bird 149763,truck 149764,airplane 149765,bird 149766,bird 149767,ship 149768,deer 149769,airplane 149770,frog 149771,bird 149772,bird 149773,ship 149774,ship 149775,cat 149776,airplane 149777,bird 149778,ship 149779,truck 149780,frog 149781,dog 149782,dog 149783,dog 149784,deer 149785,bird 149786,dog 149787,deer 149788,cat 149789,frog 149790,truck 149791,bird 149792,truck 149793,dog 149794,bird 149795,frog 149796,cat 149797,frog 149798,cat 149799,airplane 149800,cat 149801,cat 149802,horse 149803,frog 149804,truck 149805,truck 149806,horse 149807,airplane 149808,bird 149809,cat 149810,bird 149811,horse 149812,automobile 149813,bird 149814,ship 149815,cat 149816,bird 149817,horse 149818,bird 149819,horse 149820,airplane 149821,deer 149822,automobile 149823,deer 149824,automobile 149825,truck 149826,cat 149827,frog 149828,dog 149829,bird 149830,deer 149831,bird 149832,cat 149833,ship 149834,airplane 149835,airplane 149836,airplane 149837,truck 149838,frog 149839,airplane 149840,frog 149841,automobile 149842,cat 149843,ship 149844,automobile 149845,horse 149846,frog 149847,horse 149848,horse 149849,horse 149850,bird 149851,horse 149852,horse 149853,deer 149854,automobile 149855,truck 149856,deer 149857,dog 149858,dog 149859,cat 149860,frog 149861,frog 149862,ship 149863,deer 149864,frog 149865,horse 149866,airplane 149867,bird 149868,deer 149869,dog 149870,truck 149871,deer 149872,horse 149873,cat 149874,truck 149875,deer 149876,ship 149877,truck 149878,frog 149879,cat 149880,bird 149881,frog 149882,truck 149883,airplane 149884,truck 149885,frog 149886,ship 149887,cat 149888,cat 149889,bird 149890,horse 149891,truck 149892,cat 149893,frog 149894,deer 149895,truck 149896,automobile 149897,ship 149898,frog 149899,automobile 149900,horse 149901,dog 149902,frog 149903,dog 149904,airplane 149905,deer 149906,truck 149907,deer 149908,bird 149909,ship 149910,deer 149911,bird 149912,frog 149913,horse 149914,deer 149915,deer 149916,ship 149917,dog 149918,truck 149919,truck 149920,truck 149921,cat 149922,dog 149923,airplane 149924,airplane 149925,airplane 149926,truck 149927,dog 149928,frog 149929,cat 149930,truck 149931,deer 149932,automobile 149933,bird 149934,horse 149935,automobile 149936,deer 149937,ship 149938,deer 149939,cat 149940,cat 149941,cat 149942,horse 149943,dog 149944,cat 149945,dog 149946,airplane 149947,horse 149948,truck 149949,airplane 149950,frog 149951,ship 149952,cat 149953,dog 149954,cat 149955,airplane 149956,horse 149957,deer 149958,cat 149959,ship 149960,deer 149961,dog 149962,automobile 149963,deer 149964,automobile 149965,ship 149966,horse 149967,ship 149968,frog 149969,dog 149970,horse 149971,deer 149972,horse 149973,dog 149974,deer 149975,dog 149976,bird 149977,cat 149978,airplane 149979,bird 149980,airplane 149981,bird 149982,horse 149983,horse 149984,airplane 149985,deer 149986,frog 149987,deer 149988,cat 149989,automobile 149990,bird 149991,ship 149992,horse 149993,ship 149994,automobile 149995,ship 149996,cat 149997,automobile 149998,frog 149999,deer 150000,cat 150001,truck 150002,dog 150003,horse 150004,ship 150005,deer 150006,truck 150007,dog 150008,horse 150009,horse 150010,automobile 150011,ship 150012,dog 150013,frog 150014,cat 150015,dog 150016,airplane 150017,bird 150018,horse 150019,airplane 150020,bird 150021,horse 150022,deer 150023,dog 150024,cat 150025,automobile 150026,deer 150027,deer 150028,horse 150029,ship 150030,frog 150031,ship 150032,airplane 150033,dog 150034,deer 150035,deer 150036,dog 150037,deer 150038,dog 150039,frog 150040,deer 150041,horse 150042,airplane 150043,deer 150044,airplane 150045,frog 150046,automobile 150047,bird 150048,bird 150049,truck 150050,ship 150051,truck 150052,truck 150053,frog 150054,cat 150055,airplane 150056,automobile 150057,bird 150058,deer 150059,truck 150060,deer 150061,deer 150062,frog 150063,bird 150064,deer 150065,frog 150066,cat 150067,horse 150068,cat 150069,truck 150070,dog 150071,bird 150072,deer 150073,dog 150074,ship 150075,bird 150076,dog 150077,bird 150078,cat 150079,horse 150080,deer 150081,airplane 150082,dog 150083,deer 150084,dog 150085,dog 150086,cat 150087,frog 150088,ship 150089,horse 150090,dog 150091,airplane 150092,bird 150093,truck 150094,cat 150095,deer 150096,horse 150097,ship 150098,airplane 150099,truck 150100,deer 150101,airplane 150102,bird 150103,automobile 150104,truck 150105,horse 150106,truck 150107,airplane 150108,automobile 150109,bird 150110,automobile 150111,airplane 150112,bird 150113,frog 150114,cat 150115,ship 150116,deer 150117,horse 150118,deer 150119,ship 150120,truck 150121,horse 150122,deer 150123,ship 150124,dog 150125,automobile 150126,automobile 150127,horse 150128,deer 150129,ship 150130,deer 150131,deer 150132,deer 150133,ship 150134,truck 150135,deer 150136,horse 150137,automobile 150138,bird 150139,automobile 150140,truck 150141,bird 150142,dog 150143,deer 150144,frog 150145,horse 150146,horse 150147,frog 150148,dog 150149,dog 150150,truck 150151,ship 150152,frog 150153,frog 150154,cat 150155,airplane 150156,deer 150157,automobile 150158,ship 150159,dog 150160,cat 150161,dog 150162,deer 150163,ship 150164,cat 150165,automobile 150166,dog 150167,horse 150168,truck 150169,horse 150170,truck 150171,automobile 150172,cat 150173,ship 150174,frog 150175,ship 150176,truck 150177,deer 150178,airplane 150179,frog 150180,automobile 150181,dog 150182,airplane 150183,cat 150184,horse 150185,dog 150186,deer 150187,horse 150188,cat 150189,horse 150190,cat 150191,airplane 150192,horse 150193,automobile 150194,horse 150195,cat 150196,bird 150197,automobile 150198,ship 150199,truck 150200,truck 150201,dog 150202,cat 150203,frog 150204,deer 150205,cat 150206,airplane 150207,dog 150208,cat 150209,truck 150210,bird 150211,automobile 150212,deer 150213,dog 150214,ship 150215,cat 150216,automobile 150217,truck 150218,horse 150219,cat 150220,cat 150221,ship 150222,frog 150223,automobile 150224,truck 150225,truck 150226,dog 150227,truck 150228,frog 150229,dog 150230,cat 150231,automobile 150232,cat 150233,airplane 150234,frog 150235,dog 150236,deer 150237,airplane 150238,dog 150239,automobile 150240,horse 150241,truck 150242,ship 150243,frog 150244,automobile 150245,bird 150246,dog 150247,cat 150248,dog 150249,dog 150250,cat 150251,airplane 150252,cat 150253,cat 150254,truck 150255,truck 150256,cat 150257,automobile 150258,deer 150259,dog 150260,truck 150261,cat 150262,truck 150263,truck 150264,truck 150265,truck 150266,truck 150267,truck 150268,automobile 150269,cat 150270,bird 150271,truck 150272,deer 150273,automobile 150274,airplane 150275,truck 150276,airplane 150277,automobile 150278,bird 150279,cat 150280,ship 150281,truck 150282,dog 150283,dog 150284,deer 150285,frog 150286,ship 150287,cat 150288,ship 150289,cat 150290,truck 150291,truck 150292,cat 150293,cat 150294,ship 150295,horse 150296,frog 150297,deer 150298,deer 150299,horse 150300,bird 150301,horse 150302,cat 150303,dog 150304,frog 150305,frog 150306,cat 150307,airplane 150308,ship 150309,frog 150310,airplane 150311,frog 150312,airplane 150313,frog 150314,ship 150315,frog 150316,cat 150317,dog 150318,airplane 150319,dog 150320,deer 150321,frog 150322,frog 150323,dog 150324,deer 150325,dog 150326,cat 150327,truck 150328,automobile 150329,ship 150330,horse 150331,dog 150332,cat 150333,ship 150334,bird 150335,ship 150336,airplane 150337,ship 150338,deer 150339,cat 150340,frog 150341,horse 150342,cat 150343,deer 150344,frog 150345,deer 150346,deer 150347,dog 150348,truck 150349,horse 150350,dog 150351,dog 150352,truck 150353,cat 150354,cat 150355,truck 150356,deer 150357,automobile 150358,dog 150359,dog 150360,truck 150361,bird 150362,bird 150363,cat 150364,automobile 150365,dog 150366,frog 150367,truck 150368,deer 150369,truck 150370,deer 150371,ship 150372,frog 150373,truck 150374,horse 150375,cat 150376,truck 150377,frog 150378,truck 150379,automobile 150380,dog 150381,dog 150382,frog 150383,deer 150384,airplane 150385,deer 150386,frog 150387,bird 150388,deer 150389,truck 150390,deer 150391,airplane 150392,automobile 150393,horse 150394,truck 150395,truck 150396,airplane 150397,frog 150398,cat 150399,frog 150400,cat 150401,cat 150402,bird 150403,bird 150404,deer 150405,automobile 150406,cat 150407,dog 150408,automobile 150409,automobile 150410,truck 150411,cat 150412,bird 150413,frog 150414,cat 150415,cat 150416,airplane 150417,dog 150418,ship 150419,airplane 150420,deer 150421,deer 150422,cat 150423,deer 150424,frog 150425,bird 150426,deer 150427,deer 150428,deer 150429,truck 150430,ship 150431,bird 150432,deer 150433,airplane 150434,airplane 150435,truck 150436,horse 150437,frog 150438,cat 150439,bird 150440,dog 150441,deer 150442,automobile 150443,cat 150444,dog 150445,deer 150446,dog 150447,deer 150448,automobile 150449,frog 150450,ship 150451,dog 150452,bird 150453,frog 150454,deer 150455,ship 150456,ship 150457,deer 150458,frog 150459,airplane 150460,dog 150461,cat 150462,dog 150463,ship 150464,cat 150465,bird 150466,cat 150467,airplane 150468,horse 150469,horse 150470,truck 150471,frog 150472,cat 150473,frog 150474,frog 150475,ship 150476,frog 150477,truck 150478,cat 150479,cat 150480,bird 150481,cat 150482,deer 150483,airplane 150484,cat 150485,dog 150486,truck 150487,cat 150488,cat 150489,deer 150490,horse 150491,horse 150492,ship 150493,ship 150494,truck 150495,cat 150496,ship 150497,bird 150498,ship 150499,frog 150500,deer 150501,truck 150502,cat 150503,ship 150504,truck 150505,cat 150506,ship 150507,dog 150508,deer 150509,frog 150510,cat 150511,truck 150512,frog 150513,truck 150514,ship 150515,truck 150516,deer 150517,ship 150518,airplane 150519,cat 150520,ship 150521,bird 150522,airplane 150523,frog 150524,cat 150525,cat 150526,bird 150527,ship 150528,deer 150529,cat 150530,horse 150531,dog 150532,truck 150533,cat 150534,bird 150535,automobile 150536,frog 150537,airplane 150538,bird 150539,ship 150540,cat 150541,truck 150542,dog 150543,cat 150544,automobile 150545,dog 150546,dog 150547,dog 150548,deer 150549,airplane 150550,ship 150551,truck 150552,cat 150553,ship 150554,bird 150555,cat 150556,deer 150557,dog 150558,dog 150559,bird 150560,truck 150561,cat 150562,dog 150563,dog 150564,automobile 150565,frog 150566,frog 150567,ship 150568,dog 150569,deer 150570,bird 150571,cat 150572,airplane 150573,automobile 150574,deer 150575,deer 150576,truck 150577,deer 150578,airplane 150579,airplane 150580,airplane 150581,truck 150582,dog 150583,cat 150584,cat 150585,dog 150586,dog 150587,dog 150588,cat 150589,automobile 150590,ship 150591,cat 150592,bird 150593,deer 150594,cat 150595,ship 150596,horse 150597,deer 150598,truck 150599,airplane 150600,frog 150601,dog 150602,truck 150603,frog 150604,horse 150605,airplane 150606,cat 150607,deer 150608,horse 150609,truck 150610,horse 150611,bird 150612,ship 150613,truck 150614,truck 150615,automobile 150616,airplane 150617,bird 150618,horse 150619,ship 150620,horse 150621,horse 150622,cat 150623,bird 150624,dog 150625,automobile 150626,cat 150627,automobile 150628,airplane 150629,truck 150630,frog 150631,truck 150632,bird 150633,deer 150634,cat 150635,horse 150636,truck 150637,horse 150638,cat 150639,frog 150640,bird 150641,ship 150642,frog 150643,ship 150644,ship 150645,deer 150646,ship 150647,ship 150648,airplane 150649,dog 150650,ship 150651,airplane 150652,cat 150653,ship 150654,deer 150655,frog 150656,dog 150657,frog 150658,horse 150659,airplane 150660,horse 150661,airplane 150662,ship 150663,airplane 150664,ship 150665,deer 150666,horse 150667,dog 150668,bird 150669,horse 150670,deer 150671,bird 150672,ship 150673,bird 150674,airplane 150675,dog 150676,dog 150677,horse 150678,automobile 150679,deer 150680,airplane 150681,automobile 150682,dog 150683,airplane 150684,dog 150685,frog 150686,truck 150687,airplane 150688,frog 150689,frog 150690,dog 150691,dog 150692,frog 150693,ship 150694,cat 150695,horse 150696,deer 150697,dog 150698,automobile 150699,truck 150700,frog 150701,horse 150702,automobile 150703,deer 150704,dog 150705,dog 150706,horse 150707,deer 150708,airplane 150709,frog 150710,cat 150711,dog 150712,truck 150713,horse 150714,deer 150715,airplane 150716,automobile 150717,deer 150718,dog 150719,horse 150720,horse 150721,automobile 150722,deer 150723,ship 150724,dog 150725,cat 150726,cat 150727,truck 150728,truck 150729,horse 150730,truck 150731,truck 150732,cat 150733,truck 150734,bird 150735,deer 150736,automobile 150737,automobile 150738,cat 150739,automobile 150740,airplane 150741,truck 150742,frog 150743,airplane 150744,frog 150745,automobile 150746,deer 150747,deer 150748,airplane 150749,automobile 150750,horse 150751,cat 150752,ship 150753,dog 150754,automobile 150755,deer 150756,cat 150757,cat 150758,bird 150759,ship 150760,bird 150761,deer 150762,airplane 150763,airplane 150764,truck 150765,ship 150766,airplane 150767,frog 150768,dog 150769,cat 150770,truck 150771,cat 150772,automobile 150773,bird 150774,airplane 150775,frog 150776,frog 150777,frog 150778,cat 150779,cat 150780,bird 150781,horse 150782,truck 150783,automobile 150784,dog 150785,airplane 150786,frog 150787,horse 150788,dog 150789,deer 150790,ship 150791,deer 150792,deer 150793,cat 150794,bird 150795,cat 150796,automobile 150797,horse 150798,frog 150799,dog 150800,ship 150801,truck 150802,frog 150803,dog 150804,frog 150805,bird 150806,deer 150807,deer 150808,cat 150809,frog 150810,deer 150811,cat 150812,airplane 150813,airplane 150814,truck 150815,dog 150816,ship 150817,frog 150818,bird 150819,dog 150820,frog 150821,bird 150822,frog 150823,airplane 150824,frog 150825,frog 150826,frog 150827,dog 150828,bird 150829,horse 150830,deer 150831,airplane 150832,dog 150833,frog 150834,truck 150835,cat 150836,deer 150837,bird 150838,dog 150839,automobile 150840,airplane 150841,ship 150842,cat 150843,bird 150844,frog 150845,truck 150846,deer 150847,bird 150848,frog 150849,horse 150850,truck 150851,cat 150852,cat 150853,dog 150854,horse 150855,dog 150856,cat 150857,dog 150858,cat 150859,cat 150860,deer 150861,deer 150862,horse 150863,automobile 150864,airplane 150865,deer 150866,airplane 150867,dog 150868,cat 150869,cat 150870,ship 150871,dog 150872,horse 150873,cat 150874,truck 150875,truck 150876,deer 150877,cat 150878,frog 150879,dog 150880,bird 150881,cat 150882,cat 150883,cat 150884,dog 150885,ship 150886,ship 150887,truck 150888,dog 150889,automobile 150890,cat 150891,cat 150892,airplane 150893,automobile 150894,airplane 150895,bird 150896,cat 150897,dog 150898,automobile 150899,cat 150900,dog 150901,ship 150902,frog 150903,cat 150904,frog 150905,horse 150906,cat 150907,frog 150908,dog 150909,ship 150910,frog 150911,ship 150912,cat 150913,bird 150914,cat 150915,airplane 150916,airplane 150917,truck 150918,airplane 150919,dog 150920,bird 150921,horse 150922,ship 150923,horse 150924,dog 150925,deer 150926,dog 150927,frog 150928,deer 150929,deer 150930,frog 150931,bird 150932,cat 150933,frog 150934,ship 150935,frog 150936,truck 150937,automobile 150938,horse 150939,bird 150940,horse 150941,airplane 150942,deer 150943,cat 150944,airplane 150945,bird 150946,horse 150947,truck 150948,horse 150949,cat 150950,automobile 150951,airplane 150952,frog 150953,airplane 150954,automobile 150955,ship 150956,frog 150957,horse 150958,bird 150959,frog 150960,dog 150961,horse 150962,ship 150963,deer 150964,ship 150965,ship 150966,dog 150967,airplane 150968,deer 150969,cat 150970,cat 150971,horse 150972,horse 150973,bird 150974,automobile 150975,truck 150976,frog 150977,frog 150978,airplane 150979,automobile 150980,automobile 150981,ship 150982,automobile 150983,deer 150984,ship 150985,airplane 150986,deer 150987,cat 150988,cat 150989,truck 150990,truck 150991,bird 150992,dog 150993,bird 150994,truck 150995,bird 150996,frog 150997,deer 150998,horse 150999,dog 151000,truck 151001,automobile 151002,cat 151003,horse 151004,cat 151005,truck 151006,cat 151007,cat 151008,ship 151009,dog 151010,bird 151011,dog 151012,ship 151013,frog 151014,automobile 151015,truck 151016,frog 151017,automobile 151018,deer 151019,horse 151020,truck 151021,horse 151022,deer 151023,frog 151024,airplane 151025,automobile 151026,cat 151027,ship 151028,truck 151029,deer 151030,truck 151031,frog 151032,deer 151033,dog 151034,cat 151035,deer 151036,truck 151037,dog 151038,deer 151039,frog 151040,airplane 151041,frog 151042,deer 151043,automobile 151044,bird 151045,frog 151046,automobile 151047,deer 151048,bird 151049,bird 151050,cat 151051,deer 151052,cat 151053,frog 151054,truck 151055,deer 151056,truck 151057,truck 151058,automobile 151059,horse 151060,horse 151061,truck 151062,airplane 151063,truck 151064,bird 151065,deer 151066,dog 151067,frog 151068,bird 151069,frog 151070,frog 151071,deer 151072,frog 151073,automobile 151074,horse 151075,frog 151076,deer 151077,bird 151078,cat 151079,cat 151080,deer 151081,frog 151082,frog 151083,cat 151084,automobile 151085,truck 151086,horse 151087,frog 151088,bird 151089,deer 151090,frog 151091,airplane 151092,dog 151093,horse 151094,airplane 151095,frog 151096,deer 151097,airplane 151098,cat 151099,frog 151100,deer 151101,truck 151102,automobile 151103,airplane 151104,dog 151105,cat 151106,truck 151107,bird 151108,cat 151109,airplane 151110,truck 151111,bird 151112,truck 151113,airplane 151114,cat 151115,cat 151116,airplane 151117,deer 151118,cat 151119,truck 151120,airplane 151121,ship 151122,bird 151123,deer 151124,deer 151125,bird 151126,frog 151127,dog 151128,deer 151129,ship 151130,ship 151131,airplane 151132,frog 151133,bird 151134,bird 151135,bird 151136,frog 151137,truck 151138,cat 151139,ship 151140,truck 151141,ship 151142,truck 151143,bird 151144,ship 151145,bird 151146,bird 151147,frog 151148,frog 151149,deer 151150,frog 151151,bird 151152,bird 151153,airplane 151154,dog 151155,airplane 151156,automobile 151157,truck 151158,dog 151159,cat 151160,dog 151161,dog 151162,frog 151163,ship 151164,frog 151165,deer 151166,dog 151167,frog 151168,dog 151169,dog 151170,cat 151171,horse 151172,bird 151173,bird 151174,deer 151175,ship 151176,cat 151177,deer 151178,cat 151179,truck 151180,deer 151181,frog 151182,truck 151183,truck 151184,cat 151185,automobile 151186,frog 151187,ship 151188,frog 151189,bird 151190,bird 151191,cat 151192,ship 151193,automobile 151194,frog 151195,frog 151196,ship 151197,cat 151198,ship 151199,horse 151200,airplane 151201,frog 151202,ship 151203,ship 151204,cat 151205,cat 151206,deer 151207,cat 151208,frog 151209,deer 151210,frog 151211,cat 151212,deer 151213,ship 151214,deer 151215,deer 151216,cat 151217,dog 151218,horse 151219,horse 151220,horse 151221,horse 151222,cat 151223,deer 151224,dog 151225,deer 151226,deer 151227,truck 151228,ship 151229,truck 151230,automobile 151231,horse 151232,frog 151233,horse 151234,frog 151235,cat 151236,automobile 151237,truck 151238,truck 151239,bird 151240,ship 151241,truck 151242,bird 151243,deer 151244,cat 151245,automobile 151246,cat 151247,bird 151248,bird 151249,airplane 151250,cat 151251,horse 151252,cat 151253,cat 151254,deer 151255,frog 151256,dog 151257,deer 151258,cat 151259,truck 151260,deer 151261,deer 151262,dog 151263,deer 151264,truck 151265,horse 151266,horse 151267,truck 151268,dog 151269,dog 151270,bird 151271,airplane 151272,deer 151273,dog 151274,horse 151275,truck 151276,truck 151277,dog 151278,automobile 151279,truck 151280,frog 151281,dog 151282,deer 151283,dog 151284,deer 151285,deer 151286,bird 151287,deer 151288,deer 151289,horse 151290,horse 151291,cat 151292,cat 151293,dog 151294,automobile 151295,dog 151296,horse 151297,cat 151298,ship 151299,deer 151300,frog 151301,bird 151302,deer 151303,automobile 151304,truck 151305,deer 151306,horse 151307,frog 151308,airplane 151309,horse 151310,airplane 151311,bird 151312,automobile 151313,cat 151314,automobile 151315,automobile 151316,deer 151317,automobile 151318,automobile 151319,truck 151320,truck 151321,cat 151322,automobile 151323,automobile 151324,frog 151325,truck 151326,cat 151327,deer 151328,bird 151329,deer 151330,deer 151331,horse 151332,bird 151333,truck 151334,cat 151335,deer 151336,frog 151337,cat 151338,deer 151339,horse 151340,truck 151341,airplane 151342,deer 151343,bird 151344,cat 151345,ship 151346,dog 151347,bird 151348,deer 151349,deer 151350,dog 151351,deer 151352,airplane 151353,automobile 151354,horse 151355,horse 151356,truck 151357,deer 151358,frog 151359,deer 151360,bird 151361,automobile 151362,airplane 151363,dog 151364,frog 151365,dog 151366,truck 151367,dog 151368,airplane 151369,ship 151370,deer 151371,ship 151372,cat 151373,frog 151374,airplane 151375,frog 151376,ship 151377,airplane 151378,frog 151379,frog 151380,deer 151381,horse 151382,ship 151383,deer 151384,bird 151385,cat 151386,frog 151387,frog 151388,truck 151389,ship 151390,airplane 151391,frog 151392,ship 151393,deer 151394,truck 151395,automobile 151396,frog 151397,ship 151398,deer 151399,truck 151400,cat 151401,cat 151402,cat 151403,deer 151404,ship 151405,airplane 151406,bird 151407,deer 151408,frog 151409,frog 151410,deer 151411,horse 151412,cat 151413,automobile 151414,truck 151415,deer 151416,deer 151417,frog 151418,automobile 151419,truck 151420,airplane 151421,truck 151422,cat 151423,cat 151424,cat 151425,airplane 151426,frog 151427,airplane 151428,cat 151429,automobile 151430,dog 151431,cat 151432,dog 151433,horse 151434,airplane 151435,cat 151436,dog 151437,frog 151438,frog 151439,truck 151440,horse 151441,ship 151442,dog 151443,cat 151444,airplane 151445,frog 151446,cat 151447,cat 151448,airplane 151449,frog 151450,airplane 151451,ship 151452,dog 151453,dog 151454,cat 151455,airplane 151456,automobile 151457,bird 151458,frog 151459,ship 151460,dog 151461,truck 151462,automobile 151463,truck 151464,cat 151465,horse 151466,dog 151467,deer 151468,dog 151469,ship 151470,horse 151471,bird 151472,automobile 151473,horse 151474,dog 151475,cat 151476,horse 151477,cat 151478,horse 151479,deer 151480,horse 151481,airplane 151482,ship 151483,cat 151484,truck 151485,airplane 151486,ship 151487,cat 151488,horse 151489,horse 151490,bird 151491,cat 151492,dog 151493,cat 151494,bird 151495,automobile 151496,dog 151497,dog 151498,deer 151499,truck 151500,truck 151501,cat 151502,deer 151503,cat 151504,airplane 151505,cat 151506,airplane 151507,horse 151508,deer 151509,ship 151510,deer 151511,airplane 151512,frog 151513,horse 151514,airplane 151515,dog 151516,cat 151517,automobile 151518,automobile 151519,automobile 151520,bird 151521,frog 151522,horse 151523,airplane 151524,cat 151525,deer 151526,cat 151527,ship 151528,frog 151529,truck 151530,truck 151531,horse 151532,truck 151533,truck 151534,horse 151535,deer 151536,ship 151537,ship 151538,frog 151539,dog 151540,airplane 151541,horse 151542,automobile 151543,horse 151544,cat 151545,bird 151546,cat 151547,cat 151548,bird 151549,ship 151550,deer 151551,ship 151552,bird 151553,bird 151554,frog 151555,airplane 151556,frog 151557,truck 151558,frog 151559,horse 151560,frog 151561,airplane 151562,dog 151563,airplane 151564,ship 151565,automobile 151566,ship 151567,deer 151568,ship 151569,automobile 151570,ship 151571,dog 151572,truck 151573,cat 151574,deer 151575,cat 151576,cat 151577,truck 151578,frog 151579,truck 151580,deer 151581,bird 151582,deer 151583,bird 151584,truck 151585,frog 151586,ship 151587,horse 151588,automobile 151589,bird 151590,dog 151591,frog 151592,deer 151593,dog 151594,cat 151595,frog 151596,bird 151597,truck 151598,truck 151599,truck 151600,truck 151601,ship 151602,cat 151603,automobile 151604,frog 151605,cat 151606,cat 151607,automobile 151608,bird 151609,automobile 151610,deer 151611,airplane 151612,dog 151613,frog 151614,horse 151615,horse 151616,automobile 151617,truck 151618,automobile 151619,cat 151620,dog 151621,horse 151622,airplane 151623,airplane 151624,horse 151625,ship 151626,cat 151627,deer 151628,dog 151629,frog 151630,cat 151631,automobile 151632,automobile 151633,ship 151634,horse 151635,deer 151636,ship 151637,automobile 151638,bird 151639,horse 151640,bird 151641,horse 151642,airplane 151643,truck 151644,deer 151645,deer 151646,deer 151647,airplane 151648,horse 151649,dog 151650,automobile 151651,airplane 151652,deer 151653,frog 151654,dog 151655,airplane 151656,cat 151657,deer 151658,deer 151659,ship 151660,dog 151661,frog 151662,ship 151663,cat 151664,airplane 151665,horse 151666,horse 151667,horse 151668,bird 151669,horse 151670,airplane 151671,deer 151672,dog 151673,cat 151674,deer 151675,horse 151676,airplane 151677,automobile 151678,truck 151679,automobile 151680,deer 151681,bird 151682,deer 151683,airplane 151684,cat 151685,bird 151686,deer 151687,cat 151688,dog 151689,truck 151690,automobile 151691,cat 151692,dog 151693,cat 151694,cat 151695,horse 151696,cat 151697,cat 151698,cat 151699,truck 151700,automobile 151701,deer 151702,frog 151703,truck 151704,dog 151705,deer 151706,deer 151707,ship 151708,bird 151709,cat 151710,cat 151711,cat 151712,ship 151713,dog 151714,airplane 151715,frog 151716,dog 151717,frog 151718,ship 151719,horse 151720,truck 151721,dog 151722,frog 151723,automobile 151724,deer 151725,dog 151726,ship 151727,ship 151728,ship 151729,horse 151730,automobile 151731,ship 151732,cat 151733,automobile 151734,dog 151735,truck 151736,dog 151737,horse 151738,bird 151739,truck 151740,cat 151741,dog 151742,frog 151743,horse 151744,horse 151745,cat 151746,automobile 151747,cat 151748,airplane 151749,dog 151750,dog 151751,deer 151752,deer 151753,truck 151754,frog 151755,frog 151756,dog 151757,airplane 151758,dog 151759,deer 151760,bird 151761,horse 151762,bird 151763,ship 151764,dog 151765,ship 151766,automobile 151767,truck 151768,automobile 151769,horse 151770,truck 151771,frog 151772,automobile 151773,cat 151774,automobile 151775,airplane 151776,cat 151777,dog 151778,dog 151779,truck 151780,dog 151781,frog 151782,automobile 151783,horse 151784,deer 151785,frog 151786,deer 151787,automobile 151788,deer 151789,truck 151790,deer 151791,bird 151792,frog 151793,deer 151794,bird 151795,dog 151796,automobile 151797,cat 151798,truck 151799,deer 151800,bird 151801,dog 151802,frog 151803,automobile 151804,bird 151805,cat 151806,deer 151807,horse 151808,automobile 151809,bird 151810,automobile 151811,horse 151812,airplane 151813,airplane 151814,cat 151815,ship 151816,cat 151817,dog 151818,cat 151819,cat 151820,truck 151821,ship 151822,truck 151823,ship 151824,ship 151825,deer 151826,dog 151827,bird 151828,airplane 151829,truck 151830,cat 151831,cat 151832,cat 151833,dog 151834,airplane 151835,truck 151836,deer 151837,cat 151838,dog 151839,dog 151840,ship 151841,automobile 151842,cat 151843,horse 151844,automobile 151845,horse 151846,truck 151847,airplane 151848,frog 151849,horse 151850,dog 151851,frog 151852,ship 151853,bird 151854,airplane 151855,cat 151856,cat 151857,dog 151858,bird 151859,bird 151860,deer 151861,ship 151862,deer 151863,bird 151864,horse 151865,automobile 151866,deer 151867,airplane 151868,frog 151869,horse 151870,deer 151871,horse 151872,bird 151873,horse 151874,frog 151875,deer 151876,dog 151877,automobile 151878,airplane 151879,deer 151880,ship 151881,automobile 151882,deer 151883,deer 151884,frog 151885,dog 151886,automobile 151887,deer 151888,deer 151889,automobile 151890,horse 151891,cat 151892,truck 151893,horse 151894,horse 151895,airplane 151896,truck 151897,frog 151898,bird 151899,horse 151900,bird 151901,frog 151902,automobile 151903,ship 151904,deer 151905,airplane 151906,ship 151907,horse 151908,deer 151909,airplane 151910,truck 151911,ship 151912,ship 151913,horse 151914,automobile 151915,cat 151916,truck 151917,dog 151918,dog 151919,horse 151920,deer 151921,deer 151922,cat 151923,deer 151924,truck 151925,frog 151926,frog 151927,horse 151928,dog 151929,frog 151930,deer 151931,truck 151932,automobile 151933,dog 151934,cat 151935,airplane 151936,automobile 151937,airplane 151938,frog 151939,cat 151940,frog 151941,bird 151942,bird 151943,horse 151944,horse 151945,airplane 151946,deer 151947,dog 151948,frog 151949,bird 151950,airplane 151951,bird 151952,automobile 151953,truck 151954,frog 151955,frog 151956,dog 151957,horse 151958,truck 151959,airplane 151960,automobile 151961,automobile 151962,deer 151963,dog 151964,horse 151965,horse 151966,ship 151967,ship 151968,horse 151969,horse 151970,automobile 151971,dog 151972,bird 151973,truck 151974,deer 151975,ship 151976,cat 151977,dog 151978,cat 151979,airplane 151980,airplane 151981,frog 151982,ship 151983,cat 151984,cat 151985,cat 151986,airplane 151987,automobile 151988,cat 151989,bird 151990,horse 151991,deer 151992,cat 151993,truck 151994,horse 151995,ship 151996,bird 151997,frog 151998,automobile 151999,horse 152000,deer 152001,frog 152002,bird 152003,airplane 152004,bird 152005,horse 152006,ship 152007,bird 152008,frog 152009,truck 152010,automobile 152011,dog 152012,cat 152013,frog 152014,deer 152015,truck 152016,ship 152017,automobile 152018,dog 152019,airplane 152020,dog 152021,bird 152022,dog 152023,deer 152024,ship 152025,frog 152026,horse 152027,frog 152028,deer 152029,ship 152030,deer 152031,cat 152032,dog 152033,truck 152034,truck 152035,horse 152036,dog 152037,deer 152038,airplane 152039,frog 152040,ship 152041,airplane 152042,automobile 152043,cat 152044,airplane 152045,cat 152046,automobile 152047,truck 152048,airplane 152049,truck 152050,airplane 152051,cat 152052,frog 152053,frog 152054,horse 152055,deer 152056,airplane 152057,ship 152058,horse 152059,deer 152060,deer 152061,cat 152062,bird 152063,truck 152064,automobile 152065,horse 152066,truck 152067,dog 152068,ship 152069,truck 152070,automobile 152071,bird 152072,airplane 152073,automobile 152074,truck 152075,automobile 152076,deer 152077,deer 152078,deer 152079,truck 152080,deer 152081,horse 152082,automobile 152083,automobile 152084,airplane 152085,truck 152086,horse 152087,frog 152088,deer 152089,airplane 152090,ship 152091,airplane 152092,frog 152093,bird 152094,bird 152095,deer 152096,cat 152097,airplane 152098,horse 152099,automobile 152100,ship 152101,horse 152102,dog 152103,bird 152104,dog 152105,truck 152106,truck 152107,dog 152108,horse 152109,automobile 152110,bird 152111,ship 152112,deer 152113,automobile 152114,truck 152115,cat 152116,truck 152117,airplane 152118,ship 152119,deer 152120,dog 152121,truck 152122,frog 152123,bird 152124,cat 152125,truck 152126,deer 152127,deer 152128,airplane 152129,frog 152130,truck 152131,cat 152132,horse 152133,horse 152134,deer 152135,cat 152136,cat 152137,ship 152138,ship 152139,airplane 152140,horse 152141,cat 152142,cat 152143,frog 152144,cat 152145,dog 152146,dog 152147,deer 152148,dog 152149,airplane 152150,frog 152151,horse 152152,automobile 152153,bird 152154,deer 152155,frog 152156,cat 152157,horse 152158,frog 152159,dog 152160,horse 152161,airplane 152162,bird 152163,automobile 152164,automobile 152165,horse 152166,truck 152167,deer 152168,horse 152169,airplane 152170,dog 152171,dog 152172,horse 152173,truck 152174,bird 152175,dog 152176,deer 152177,automobile 152178,automobile 152179,deer 152180,deer 152181,ship 152182,airplane 152183,frog 152184,frog 152185,ship 152186,bird 152187,deer 152188,frog 152189,dog 152190,dog 152191,truck 152192,frog 152193,bird 152194,bird 152195,frog 152196,deer 152197,truck 152198,frog 152199,frog 152200,deer 152201,cat 152202,dog 152203,ship 152204,dog 152205,airplane 152206,horse 152207,ship 152208,deer 152209,cat 152210,dog 152211,horse 152212,automobile 152213,ship 152214,ship 152215,horse 152216,cat 152217,horse 152218,airplane 152219,cat 152220,frog 152221,truck 152222,airplane 152223,deer 152224,horse 152225,deer 152226,frog 152227,deer 152228,horse 152229,bird 152230,truck 152231,bird 152232,ship 152233,frog 152234,cat 152235,automobile 152236,ship 152237,ship 152238,airplane 152239,truck 152240,deer 152241,truck 152242,deer 152243,dog 152244,deer 152245,airplane 152246,ship 152247,cat 152248,dog 152249,automobile 152250,frog 152251,truck 152252,frog 152253,dog 152254,deer 152255,frog 152256,deer 152257,dog 152258,ship 152259,cat 152260,truck 152261,ship 152262,deer 152263,airplane 152264,cat 152265,cat 152266,cat 152267,bird 152268,deer 152269,truck 152270,dog 152271,cat 152272,frog 152273,cat 152274,cat 152275,automobile 152276,ship 152277,ship 152278,horse 152279,airplane 152280,dog 152281,truck 152282,bird 152283,cat 152284,cat 152285,bird 152286,automobile 152287,truck 152288,dog 152289,ship 152290,truck 152291,frog 152292,frog 152293,truck 152294,deer 152295,bird 152296,cat 152297,ship 152298,airplane 152299,dog 152300,cat 152301,horse 152302,deer 152303,cat 152304,horse 152305,cat 152306,bird 152307,ship 152308,horse 152309,automobile 152310,frog 152311,airplane 152312,dog 152313,deer 152314,airplane 152315,cat 152316,truck 152317,frog 152318,dog 152319,bird 152320,deer 152321,frog 152322,horse 152323,bird 152324,horse 152325,dog 152326,automobile 152327,deer 152328,airplane 152329,frog 152330,deer 152331,deer 152332,horse 152333,ship 152334,horse 152335,ship 152336,dog 152337,truck 152338,bird 152339,cat 152340,dog 152341,truck 152342,deer 152343,automobile 152344,cat 152345,airplane 152346,dog 152347,truck 152348,horse 152349,deer 152350,frog 152351,dog 152352,frog 152353,dog 152354,truck 152355,horse 152356,ship 152357,ship 152358,dog 152359,truck 152360,truck 152361,cat 152362,frog 152363,ship 152364,truck 152365,airplane 152366,truck 152367,airplane 152368,deer 152369,bird 152370,airplane 152371,ship 152372,dog 152373,automobile 152374,cat 152375,truck 152376,frog 152377,deer 152378,cat 152379,frog 152380,deer 152381,ship 152382,bird 152383,deer 152384,deer 152385,frog 152386,truck 152387,ship 152388,cat 152389,truck 152390,automobile 152391,airplane 152392,deer 152393,airplane 152394,cat 152395,frog 152396,deer 152397,dog 152398,dog 152399,truck 152400,horse 152401,dog 152402,airplane 152403,truck 152404,deer 152405,deer 152406,bird 152407,airplane 152408,deer 152409,airplane 152410,ship 152411,frog 152412,deer 152413,horse 152414,frog 152415,horse 152416,truck 152417,frog 152418,automobile 152419,truck 152420,airplane 152421,ship 152422,ship 152423,truck 152424,cat 152425,ship 152426,deer 152427,truck 152428,deer 152429,cat 152430,truck 152431,horse 152432,truck 152433,automobile 152434,airplane 152435,airplane 152436,automobile 152437,airplane 152438,frog 152439,deer 152440,frog 152441,ship 152442,deer 152443,ship 152444,frog 152445,cat 152446,cat 152447,airplane 152448,horse 152449,dog 152450,horse 152451,automobile 152452,cat 152453,deer 152454,horse 152455,dog 152456,ship 152457,ship 152458,frog 152459,deer 152460,dog 152461,frog 152462,automobile 152463,truck 152464,truck 152465,frog 152466,deer 152467,ship 152468,dog 152469,ship 152470,bird 152471,horse 152472,dog 152473,airplane 152474,automobile 152475,ship 152476,frog 152477,horse 152478,dog 152479,dog 152480,bird 152481,frog 152482,ship 152483,dog 152484,truck 152485,horse 152486,frog 152487,bird 152488,automobile 152489,cat 152490,frog 152491,airplane 152492,frog 152493,cat 152494,automobile 152495,dog 152496,airplane 152497,automobile 152498,deer 152499,cat 152500,dog 152501,ship 152502,bird 152503,truck 152504,automobile 152505,frog 152506,frog 152507,airplane 152508,deer 152509,deer 152510,cat 152511,ship 152512,automobile 152513,dog 152514,horse 152515,frog 152516,cat 152517,automobile 152518,frog 152519,bird 152520,deer 152521,cat 152522,frog 152523,cat 152524,deer 152525,frog 152526,automobile 152527,frog 152528,horse 152529,truck 152530,deer 152531,truck 152532,airplane 152533,ship 152534,truck 152535,deer 152536,truck 152537,bird 152538,bird 152539,truck 152540,deer 152541,bird 152542,bird 152543,frog 152544,deer 152545,cat 152546,truck 152547,frog 152548,airplane 152549,airplane 152550,automobile 152551,cat 152552,cat 152553,cat 152554,cat 152555,bird 152556,dog 152557,horse 152558,frog 152559,airplane 152560,ship 152561,airplane 152562,frog 152563,airplane 152564,deer 152565,deer 152566,airplane 152567,deer 152568,automobile 152569,deer 152570,bird 152571,dog 152572,truck 152573,deer 152574,airplane 152575,frog 152576,bird 152577,bird 152578,cat 152579,bird 152580,frog 152581,cat 152582,ship 152583,automobile 152584,truck 152585,ship 152586,horse 152587,truck 152588,bird 152589,airplane 152590,deer 152591,dog 152592,airplane 152593,dog 152594,dog 152595,frog 152596,horse 152597,cat 152598,automobile 152599,deer 152600,cat 152601,cat 152602,ship 152603,horse 152604,truck 152605,dog 152606,horse 152607,frog 152608,airplane 152609,dog 152610,truck 152611,cat 152612,deer 152613,cat 152614,bird 152615,horse 152616,horse 152617,horse 152618,cat 152619,frog 152620,dog 152621,horse 152622,cat 152623,deer 152624,deer 152625,airplane 152626,dog 152627,horse 152628,bird 152629,deer 152630,truck 152631,dog 152632,horse 152633,airplane 152634,ship 152635,dog 152636,truck 152637,horse 152638,dog 152639,dog 152640,dog 152641,dog 152642,bird 152643,truck 152644,dog 152645,bird 152646,horse 152647,deer 152648,truck 152649,horse 152650,airplane 152651,deer 152652,bird 152653,cat 152654,dog 152655,horse 152656,dog 152657,cat 152658,airplane 152659,horse 152660,dog 152661,automobile 152662,deer 152663,automobile 152664,dog 152665,horse 152666,truck 152667,cat 152668,frog 152669,horse 152670,bird 152671,cat 152672,cat 152673,horse 152674,dog 152675,ship 152676,dog 152677,automobile 152678,dog 152679,deer 152680,frog 152681,airplane 152682,truck 152683,cat 152684,frog 152685,bird 152686,bird 152687,deer 152688,cat 152689,cat 152690,deer 152691,frog 152692,frog 152693,cat 152694,airplane 152695,bird 152696,cat 152697,airplane 152698,airplane 152699,cat 152700,airplane 152701,truck 152702,dog 152703,dog 152704,cat 152705,truck 152706,automobile 152707,dog 152708,bird 152709,cat 152710,bird 152711,airplane 152712,dog 152713,dog 152714,cat 152715,automobile 152716,dog 152717,bird 152718,airplane 152719,dog 152720,automobile 152721,cat 152722,frog 152723,truck 152724,cat 152725,airplane 152726,ship 152727,frog 152728,ship 152729,frog 152730,frog 152731,dog 152732,ship 152733,airplane 152734,truck 152735,ship 152736,airplane 152737,frog 152738,ship 152739,cat 152740,airplane 152741,truck 152742,automobile 152743,horse 152744,truck 152745,dog 152746,frog 152747,dog 152748,airplane 152749,frog 152750,airplane 152751,horse 152752,frog 152753,automobile 152754,horse 152755,horse 152756,dog 152757,frog 152758,cat 152759,truck 152760,cat 152761,cat 152762,airplane 152763,bird 152764,frog 152765,truck 152766,deer 152767,frog 152768,deer 152769,truck 152770,ship 152771,cat 152772,automobile 152773,frog 152774,deer 152775,ship 152776,deer 152777,cat 152778,truck 152779,deer 152780,airplane 152781,ship 152782,frog 152783,cat 152784,ship 152785,bird 152786,bird 152787,deer 152788,frog 152789,deer 152790,horse 152791,bird 152792,dog 152793,airplane 152794,deer 152795,airplane 152796,horse 152797,dog 152798,cat 152799,frog 152800,airplane 152801,automobile 152802,truck 152803,cat 152804,truck 152805,frog 152806,frog 152807,airplane 152808,truck 152809,ship 152810,cat 152811,automobile 152812,bird 152813,cat 152814,frog 152815,frog 152816,dog 152817,deer 152818,bird 152819,airplane 152820,cat 152821,truck 152822,ship 152823,ship 152824,ship 152825,cat 152826,cat 152827,airplane 152828,frog 152829,frog 152830,truck 152831,bird 152832,truck 152833,ship 152834,cat 152835,cat 152836,frog 152837,automobile 152838,bird 152839,deer 152840,airplane 152841,cat 152842,automobile 152843,truck 152844,frog 152845,airplane 152846,deer 152847,cat 152848,deer 152849,frog 152850,automobile 152851,deer 152852,truck 152853,ship 152854,horse 152855,deer 152856,airplane 152857,ship 152858,airplane 152859,bird 152860,bird 152861,cat 152862,automobile 152863,truck 152864,automobile 152865,cat 152866,dog 152867,frog 152868,deer 152869,horse 152870,deer 152871,dog 152872,automobile 152873,automobile 152874,dog 152875,deer 152876,frog 152877,cat 152878,bird 152879,cat 152880,frog 152881,cat 152882,cat 152883,airplane 152884,horse 152885,bird 152886,cat 152887,bird 152888,frog 152889,dog 152890,bird 152891,cat 152892,truck 152893,deer 152894,bird 152895,frog 152896,deer 152897,cat 152898,automobile 152899,automobile 152900,horse 152901,dog 152902,deer 152903,frog 152904,ship 152905,deer 152906,truck 152907,airplane 152908,airplane 152909,cat 152910,truck 152911,airplane 152912,cat 152913,ship 152914,airplane 152915,automobile 152916,horse 152917,frog 152918,dog 152919,deer 152920,deer 152921,truck 152922,horse 152923,horse 152924,bird 152925,cat 152926,frog 152927,frog 152928,dog 152929,truck 152930,airplane 152931,bird 152932,deer 152933,horse 152934,ship 152935,horse 152936,deer 152937,automobile 152938,truck 152939,cat 152940,frog 152941,bird 152942,cat 152943,cat 152944,automobile 152945,frog 152946,truck 152947,bird 152948,bird 152949,automobile 152950,horse 152951,frog 152952,bird 152953,horse 152954,cat 152955,horse 152956,horse 152957,bird 152958,dog 152959,airplane 152960,automobile 152961,airplane 152962,horse 152963,cat 152964,ship 152965,deer 152966,ship 152967,ship 152968,deer 152969,deer 152970,frog 152971,dog 152972,ship 152973,bird 152974,airplane 152975,truck 152976,ship 152977,frog 152978,airplane 152979,automobile 152980,cat 152981,bird 152982,deer 152983,ship 152984,bird 152985,dog 152986,dog 152987,horse 152988,airplane 152989,truck 152990,horse 152991,truck 152992,cat 152993,deer 152994,frog 152995,dog 152996,horse 152997,ship 152998,airplane 152999,ship 153000,horse 153001,dog 153002,frog 153003,airplane 153004,frog 153005,cat 153006,deer 153007,cat 153008,truck 153009,airplane 153010,deer 153011,deer 153012,dog 153013,horse 153014,airplane 153015,truck 153016,ship 153017,dog 153018,ship 153019,horse 153020,horse 153021,airplane 153022,deer 153023,horse 153024,frog 153025,bird 153026,truck 153027,frog 153028,frog 153029,horse 153030,bird 153031,deer 153032,cat 153033,cat 153034,dog 153035,truck 153036,bird 153037,deer 153038,airplane 153039,automobile 153040,deer 153041,truck 153042,deer 153043,cat 153044,bird 153045,airplane 153046,truck 153047,horse 153048,dog 153049,deer 153050,truck 153051,dog 153052,cat 153053,cat 153054,ship 153055,automobile 153056,frog 153057,ship 153058,dog 153059,horse 153060,deer 153061,airplane 153062,deer 153063,ship 153064,dog 153065,horse 153066,bird 153067,ship 153068,cat 153069,ship 153070,truck 153071,dog 153072,deer 153073,automobile 153074,deer 153075,dog 153076,frog 153077,truck 153078,cat 153079,horse 153080,cat 153081,horse 153082,dog 153083,airplane 153084,airplane 153085,truck 153086,horse 153087,dog 153088,bird 153089,frog 153090,frog 153091,horse 153092,automobile 153093,dog 153094,truck 153095,cat 153096,truck 153097,horse 153098,dog 153099,airplane 153100,bird 153101,airplane 153102,truck 153103,airplane 153104,frog 153105,horse 153106,truck 153107,cat 153108,truck 153109,dog 153110,dog 153111,cat 153112,automobile 153113,deer 153114,ship 153115,frog 153116,horse 153117,automobile 153118,horse 153119,ship 153120,bird 153121,automobile 153122,truck 153123,dog 153124,bird 153125,truck 153126,dog 153127,ship 153128,airplane 153129,horse 153130,cat 153131,dog 153132,truck 153133,airplane 153134,horse 153135,truck 153136,frog 153137,deer 153138,deer 153139,dog 153140,frog 153141,automobile 153142,deer 153143,deer 153144,ship 153145,frog 153146,ship 153147,airplane 153148,bird 153149,airplane 153150,horse 153151,ship 153152,automobile 153153,frog 153154,frog 153155,horse 153156,ship 153157,deer 153158,truck 153159,cat 153160,bird 153161,frog 153162,dog 153163,cat 153164,cat 153165,deer 153166,deer 153167,deer 153168,horse 153169,cat 153170,automobile 153171,truck 153172,ship 153173,cat 153174,dog 153175,airplane 153176,automobile 153177,automobile 153178,truck 153179,dog 153180,bird 153181,dog 153182,bird 153183,dog 153184,frog 153185,deer 153186,ship 153187,horse 153188,frog 153189,deer 153190,cat 153191,automobile 153192,automobile 153193,bird 153194,horse 153195,frog 153196,deer 153197,automobile 153198,cat 153199,deer 153200,airplane 153201,automobile 153202,deer 153203,deer 153204,deer 153205,deer 153206,ship 153207,truck 153208,deer 153209,cat 153210,bird 153211,truck 153212,deer 153213,deer 153214,truck 153215,ship 153216,frog 153217,bird 153218,cat 153219,automobile 153220,deer 153221,frog 153222,horse 153223,dog 153224,deer 153225,ship 153226,deer 153227,deer 153228,dog 153229,automobile 153230,dog 153231,frog 153232,frog 153233,horse 153234,cat 153235,dog 153236,automobile 153237,automobile 153238,cat 153239,frog 153240,automobile 153241,truck 153242,truck 153243,deer 153244,ship 153245,deer 153246,dog 153247,frog 153248,truck 153249,frog 153250,deer 153251,automobile 153252,deer 153253,frog 153254,ship 153255,airplane 153256,horse 153257,horse 153258,frog 153259,cat 153260,ship 153261,horse 153262,dog 153263,horse 153264,automobile 153265,dog 153266,airplane 153267,ship 153268,deer 153269,deer 153270,frog 153271,deer 153272,deer 153273,ship 153274,automobile 153275,cat 153276,bird 153277,dog 153278,ship 153279,bird 153280,dog 153281,automobile 153282,truck 153283,airplane 153284,deer 153285,deer 153286,dog 153287,ship 153288,horse 153289,cat 153290,ship 153291,dog 153292,cat 153293,dog 153294,deer 153295,automobile 153296,cat 153297,frog 153298,cat 153299,ship 153300,deer 153301,truck 153302,truck 153303,automobile 153304,automobile 153305,airplane 153306,frog 153307,deer 153308,cat 153309,ship 153310,frog 153311,bird 153312,bird 153313,dog 153314,horse 153315,deer 153316,frog 153317,truck 153318,horse 153319,horse 153320,ship 153321,frog 153322,bird 153323,dog 153324,truck 153325,truck 153326,airplane 153327,cat 153328,dog 153329,frog 153330,horse 153331,ship 153332,deer 153333,frog 153334,truck 153335,airplane 153336,truck 153337,airplane 153338,bird 153339,frog 153340,airplane 153341,dog 153342,cat 153343,truck 153344,automobile 153345,cat 153346,frog 153347,ship 153348,horse 153349,deer 153350,bird 153351,airplane 153352,deer 153353,deer 153354,airplane 153355,ship 153356,bird 153357,truck 153358,cat 153359,automobile 153360,horse 153361,cat 153362,bird 153363,horse 153364,frog 153365,dog 153366,airplane 153367,cat 153368,dog 153369,bird 153370,frog 153371,truck 153372,horse 153373,automobile 153374,bird 153375,dog 153376,cat 153377,bird 153378,cat 153379,deer 153380,frog 153381,cat 153382,deer 153383,frog 153384,dog 153385,dog 153386,bird 153387,cat 153388,automobile 153389,deer 153390,truck 153391,frog 153392,truck 153393,horse 153394,frog 153395,truck 153396,deer 153397,frog 153398,cat 153399,automobile 153400,cat 153401,dog 153402,ship 153403,deer 153404,automobile 153405,dog 153406,dog 153407,cat 153408,truck 153409,cat 153410,dog 153411,deer 153412,cat 153413,frog 153414,dog 153415,airplane 153416,dog 153417,cat 153418,ship 153419,deer 153420,dog 153421,truck 153422,frog 153423,cat 153424,frog 153425,dog 153426,frog 153427,dog 153428,ship 153429,deer 153430,frog 153431,automobile 153432,frog 153433,deer 153434,deer 153435,deer 153436,bird 153437,automobile 153438,airplane 153439,automobile 153440,bird 153441,frog 153442,automobile 153443,cat 153444,horse 153445,cat 153446,frog 153447,frog 153448,automobile 153449,deer 153450,deer 153451,frog 153452,frog 153453,dog 153454,horse 153455,airplane 153456,truck 153457,truck 153458,cat 153459,airplane 153460,truck 153461,ship 153462,dog 153463,deer 153464,deer 153465,deer 153466,dog 153467,truck 153468,frog 153469,dog 153470,cat 153471,airplane 153472,airplane 153473,cat 153474,ship 153475,dog 153476,bird 153477,truck 153478,truck 153479,deer 153480,cat 153481,deer 153482,dog 153483,dog 153484,deer 153485,cat 153486,frog 153487,horse 153488,cat 153489,horse 153490,bird 153491,deer 153492,truck 153493,bird 153494,horse 153495,bird 153496,deer 153497,automobile 153498,dog 153499,dog 153500,cat 153501,ship 153502,ship 153503,automobile 153504,cat 153505,ship 153506,deer 153507,dog 153508,airplane 153509,deer 153510,airplane 153511,airplane 153512,truck 153513,ship 153514,horse 153515,airplane 153516,ship 153517,frog 153518,frog 153519,deer 153520,ship 153521,horse 153522,ship 153523,horse 153524,ship 153525,airplane 153526,truck 153527,horse 153528,airplane 153529,bird 153530,deer 153531,cat 153532,ship 153533,cat 153534,airplane 153535,frog 153536,horse 153537,frog 153538,frog 153539,dog 153540,horse 153541,automobile 153542,truck 153543,truck 153544,airplane 153545,cat 153546,cat 153547,bird 153548,deer 153549,cat 153550,truck 153551,frog 153552,frog 153553,truck 153554,dog 153555,frog 153556,airplane 153557,deer 153558,bird 153559,frog 153560,truck 153561,airplane 153562,airplane 153563,cat 153564,deer 153565,truck 153566,airplane 153567,truck 153568,dog 153569,truck 153570,bird 153571,truck 153572,frog 153573,bird 153574,deer 153575,deer 153576,deer 153577,deer 153578,ship 153579,bird 153580,cat 153581,horse 153582,automobile 153583,deer 153584,bird 153585,truck 153586,cat 153587,frog 153588,deer 153589,ship 153590,deer 153591,bird 153592,cat 153593,truck 153594,deer 153595,airplane 153596,frog 153597,deer 153598,horse 153599,dog 153600,ship 153601,horse 153602,cat 153603,bird 153604,bird 153605,horse 153606,cat 153607,automobile 153608,horse 153609,horse 153610,automobile 153611,cat 153612,bird 153613,automobile 153614,ship 153615,frog 153616,horse 153617,ship 153618,cat 153619,bird 153620,dog 153621,cat 153622,ship 153623,truck 153624,bird 153625,ship 153626,truck 153627,airplane 153628,truck 153629,frog 153630,cat 153631,dog 153632,truck 153633,frog 153634,airplane 153635,deer 153636,automobile 153637,automobile 153638,horse 153639,deer 153640,cat 153641,automobile 153642,horse 153643,automobile 153644,horse 153645,bird 153646,frog 153647,ship 153648,automobile 153649,truck 153650,frog 153651,frog 153652,horse 153653,cat 153654,ship 153655,bird 153656,cat 153657,ship 153658,airplane 153659,frog 153660,horse 153661,cat 153662,cat 153663,dog 153664,truck 153665,airplane 153666,ship 153667,ship 153668,airplane 153669,automobile 153670,truck 153671,deer 153672,cat 153673,frog 153674,frog 153675,deer 153676,airplane 153677,horse 153678,frog 153679,automobile 153680,truck 153681,deer 153682,deer 153683,truck 153684,airplane 153685,dog 153686,truck 153687,deer 153688,cat 153689,bird 153690,horse 153691,airplane 153692,dog 153693,ship 153694,automobile 153695,ship 153696,deer 153697,airplane 153698,cat 153699,deer 153700,bird 153701,airplane 153702,ship 153703,deer 153704,horse 153705,frog 153706,airplane 153707,bird 153708,bird 153709,bird 153710,cat 153711,dog 153712,horse 153713,truck 153714,deer 153715,frog 153716,cat 153717,cat 153718,deer 153719,cat 153720,truck 153721,cat 153722,automobile 153723,ship 153724,bird 153725,frog 153726,horse 153727,deer 153728,deer 153729,airplane 153730,ship 153731,bird 153732,truck 153733,automobile 153734,airplane 153735,ship 153736,deer 153737,cat 153738,dog 153739,truck 153740,bird 153741,airplane 153742,dog 153743,horse 153744,frog 153745,deer 153746,automobile 153747,truck 153748,frog 153749,cat 153750,cat 153751,deer 153752,ship 153753,cat 153754,dog 153755,automobile 153756,airplane 153757,deer 153758,airplane 153759,deer 153760,automobile 153761,ship 153762,truck 153763,ship 153764,deer 153765,frog 153766,airplane 153767,cat 153768,deer 153769,horse 153770,truck 153771,cat 153772,deer 153773,truck 153774,dog 153775,deer 153776,dog 153777,deer 153778,bird 153779,deer 153780,dog 153781,ship 153782,cat 153783,horse 153784,cat 153785,bird 153786,cat 153787,bird 153788,frog 153789,deer 153790,truck 153791,horse 153792,truck 153793,cat 153794,horse 153795,ship 153796,truck 153797,dog 153798,deer 153799,frog 153800,horse 153801,dog 153802,truck 153803,frog 153804,dog 153805,cat 153806,dog 153807,cat 153808,deer 153809,frog 153810,horse 153811,automobile 153812,horse 153813,ship 153814,deer 153815,bird 153816,horse 153817,frog 153818,dog 153819,frog 153820,bird 153821,cat 153822,horse 153823,frog 153824,horse 153825,bird 153826,frog 153827,bird 153828,dog 153829,automobile 153830,horse 153831,horse 153832,ship 153833,dog 153834,deer 153835,cat 153836,frog 153837,automobile 153838,ship 153839,frog 153840,frog 153841,frog 153842,dog 153843,frog 153844,ship 153845,frog 153846,horse 153847,ship 153848,airplane 153849,deer 153850,dog 153851,deer 153852,dog 153853,dog 153854,horse 153855,automobile 153856,airplane 153857,horse 153858,horse 153859,bird 153860,deer 153861,automobile 153862,cat 153863,dog 153864,ship 153865,truck 153866,cat 153867,bird 153868,deer 153869,bird 153870,dog 153871,automobile 153872,frog 153873,dog 153874,ship 153875,dog 153876,truck 153877,horse 153878,dog 153879,dog 153880,cat 153881,cat 153882,ship 153883,automobile 153884,airplane 153885,frog 153886,bird 153887,bird 153888,dog 153889,truck 153890,frog 153891,cat 153892,horse 153893,bird 153894,ship 153895,cat 153896,bird 153897,horse 153898,airplane 153899,frog 153900,horse 153901,frog 153902,deer 153903,cat 153904,horse 153905,frog 153906,cat 153907,automobile 153908,frog 153909,frog 153910,dog 153911,ship 153912,airplane 153913,dog 153914,deer 153915,ship 153916,frog 153917,frog 153918,airplane 153919,deer 153920,airplane 153921,deer 153922,deer 153923,horse 153924,frog 153925,automobile 153926,bird 153927,dog 153928,automobile 153929,deer 153930,airplane 153931,horse 153932,frog 153933,ship 153934,automobile 153935,automobile 153936,bird 153937,automobile 153938,dog 153939,automobile 153940,deer 153941,deer 153942,automobile 153943,frog 153944,horse 153945,ship 153946,dog 153947,bird 153948,truck 153949,ship 153950,frog 153951,cat 153952,truck 153953,horse 153954,dog 153955,truck 153956,airplane 153957,dog 153958,ship 153959,horse 153960,horse 153961,truck 153962,dog 153963,frog 153964,frog 153965,cat 153966,ship 153967,deer 153968,ship 153969,cat 153970,automobile 153971,deer 153972,cat 153973,deer 153974,horse 153975,truck 153976,frog 153977,horse 153978,cat 153979,truck 153980,automobile 153981,deer 153982,truck 153983,frog 153984,dog 153985,horse 153986,horse 153987,truck 153988,truck 153989,bird 153990,dog 153991,cat 153992,horse 153993,cat 153994,cat 153995,frog 153996,bird 153997,truck 153998,horse 153999,ship 154000,truck 154001,airplane 154002,horse 154003,frog 154004,dog 154005,dog 154006,frog 154007,automobile 154008,airplane 154009,truck 154010,airplane 154011,cat 154012,horse 154013,airplane 154014,cat 154015,truck 154016,horse 154017,cat 154018,bird 154019,airplane 154020,bird 154021,cat 154022,bird 154023,truck 154024,cat 154025,frog 154026,deer 154027,horse 154028,deer 154029,frog 154030,deer 154031,deer 154032,horse 154033,dog 154034,dog 154035,airplane 154036,airplane 154037,truck 154038,bird 154039,truck 154040,cat 154041,airplane 154042,deer 154043,dog 154044,airplane 154045,cat 154046,horse 154047,ship 154048,deer 154049,horse 154050,cat 154051,automobile 154052,horse 154053,bird 154054,bird 154055,truck 154056,truck 154057,cat 154058,cat 154059,dog 154060,deer 154061,frog 154062,bird 154063,dog 154064,frog 154065,bird 154066,frog 154067,dog 154068,deer 154069,frog 154070,frog 154071,bird 154072,automobile 154073,deer 154074,bird 154075,frog 154076,deer 154077,bird 154078,automobile 154079,truck 154080,horse 154081,cat 154082,frog 154083,horse 154084,deer 154085,truck 154086,frog 154087,ship 154088,dog 154089,deer 154090,frog 154091,dog 154092,automobile 154093,deer 154094,bird 154095,truck 154096,ship 154097,truck 154098,dog 154099,airplane 154100,cat 154101,dog 154102,bird 154103,truck 154104,dog 154105,automobile 154106,deer 154107,truck 154108,bird 154109,deer 154110,frog 154111,bird 154112,bird 154113,horse 154114,airplane 154115,automobile 154116,truck 154117,airplane 154118,automobile 154119,frog 154120,frog 154121,ship 154122,automobile 154123,dog 154124,cat 154125,ship 154126,automobile 154127,ship 154128,airplane 154129,deer 154130,horse 154131,truck 154132,truck 154133,truck 154134,dog 154135,airplane 154136,cat 154137,airplane 154138,bird 154139,dog 154140,cat 154141,bird 154142,truck 154143,truck 154144,cat 154145,dog 154146,frog 154147,deer 154148,frog 154149,dog 154150,dog 154151,horse 154152,horse 154153,automobile 154154,frog 154155,frog 154156,ship 154157,automobile 154158,horse 154159,cat 154160,deer 154161,truck 154162,deer 154163,automobile 154164,truck 154165,deer 154166,airplane 154167,horse 154168,dog 154169,airplane 154170,cat 154171,cat 154172,airplane 154173,bird 154174,horse 154175,horse 154176,truck 154177,cat 154178,horse 154179,bird 154180,frog 154181,truck 154182,airplane 154183,cat 154184,bird 154185,frog 154186,ship 154187,cat 154188,dog 154189,horse 154190,deer 154191,truck 154192,ship 154193,frog 154194,cat 154195,truck 154196,bird 154197,truck 154198,horse 154199,frog 154200,bird 154201,cat 154202,airplane 154203,deer 154204,dog 154205,automobile 154206,cat 154207,deer 154208,truck 154209,truck 154210,dog 154211,deer 154212,truck 154213,deer 154214,bird 154215,cat 154216,ship 154217,cat 154218,deer 154219,horse 154220,cat 154221,frog 154222,frog 154223,airplane 154224,frog 154225,ship 154226,ship 154227,frog 154228,frog 154229,cat 154230,bird 154231,deer 154232,automobile 154233,cat 154234,airplane 154235,cat 154236,dog 154237,automobile 154238,dog 154239,frog 154240,airplane 154241,automobile 154242,airplane 154243,truck 154244,dog 154245,dog 154246,cat 154247,dog 154248,truck 154249,truck 154250,frog 154251,frog 154252,deer 154253,airplane 154254,truck 154255,automobile 154256,dog 154257,airplane 154258,deer 154259,frog 154260,airplane 154261,bird 154262,bird 154263,deer 154264,automobile 154265,deer 154266,automobile 154267,bird 154268,frog 154269,truck 154270,automobile 154271,ship 154272,horse 154273,horse 154274,cat 154275,truck 154276,truck 154277,deer 154278,dog 154279,horse 154280,truck 154281,horse 154282,airplane 154283,bird 154284,bird 154285,cat 154286,airplane 154287,bird 154288,dog 154289,frog 154290,automobile 154291,dog 154292,airplane 154293,frog 154294,dog 154295,deer 154296,frog 154297,dog 154298,bird 154299,ship 154300,ship 154301,frog 154302,deer 154303,airplane 154304,cat 154305,ship 154306,horse 154307,truck 154308,truck 154309,bird 154310,automobile 154311,ship 154312,deer 154313,frog 154314,airplane 154315,cat 154316,dog 154317,truck 154318,frog 154319,cat 154320,dog 154321,dog 154322,cat 154323,truck 154324,cat 154325,cat 154326,airplane 154327,truck 154328,cat 154329,bird 154330,automobile 154331,truck 154332,frog 154333,bird 154334,truck 154335,frog 154336,cat 154337,dog 154338,deer 154339,deer 154340,deer 154341,frog 154342,horse 154343,cat 154344,bird 154345,deer 154346,cat 154347,automobile 154348,frog 154349,bird 154350,horse 154351,dog 154352,cat 154353,bird 154354,automobile 154355,truck 154356,bird 154357,frog 154358,airplane 154359,truck 154360,airplane 154361,truck 154362,airplane 154363,deer 154364,frog 154365,automobile 154366,horse 154367,cat 154368,airplane 154369,dog 154370,deer 154371,automobile 154372,automobile 154373,bird 154374,ship 154375,horse 154376,dog 154377,ship 154378,frog 154379,ship 154380,frog 154381,ship 154382,bird 154383,frog 154384,ship 154385,dog 154386,cat 154387,bird 154388,deer 154389,frog 154390,airplane 154391,ship 154392,bird 154393,frog 154394,deer 154395,dog 154396,truck 154397,dog 154398,frog 154399,bird 154400,frog 154401,truck 154402,horse 154403,horse 154404,frog 154405,dog 154406,automobile 154407,dog 154408,deer 154409,cat 154410,frog 154411,deer 154412,automobile 154413,automobile 154414,horse 154415,cat 154416,ship 154417,dog 154418,deer 154419,ship 154420,horse 154421,truck 154422,automobile 154423,frog 154424,automobile 154425,horse 154426,cat 154427,automobile 154428,truck 154429,cat 154430,horse 154431,cat 154432,dog 154433,frog 154434,cat 154435,airplane 154436,airplane 154437,frog 154438,bird 154439,airplane 154440,dog 154441,cat 154442,dog 154443,cat 154444,deer 154445,automobile 154446,frog 154447,frog 154448,ship 154449,dog 154450,truck 154451,cat 154452,airplane 154453,airplane 154454,horse 154455,airplane 154456,frog 154457,ship 154458,dog 154459,airplane 154460,ship 154461,horse 154462,ship 154463,cat 154464,airplane 154465,deer 154466,frog 154467,cat 154468,deer 154469,frog 154470,deer 154471,ship 154472,deer 154473,airplane 154474,cat 154475,horse 154476,frog 154477,automobile 154478,frog 154479,airplane 154480,truck 154481,automobile 154482,truck 154483,dog 154484,bird 154485,bird 154486,horse 154487,cat 154488,dog 154489,dog 154490,cat 154491,deer 154492,ship 154493,truck 154494,airplane 154495,deer 154496,frog 154497,horse 154498,deer 154499,airplane 154500,deer 154501,frog 154502,bird 154503,ship 154504,automobile 154505,automobile 154506,cat 154507,ship 154508,ship 154509,airplane 154510,dog 154511,deer 154512,dog 154513,deer 154514,deer 154515,deer 154516,dog 154517,deer 154518,airplane 154519,ship 154520,frog 154521,truck 154522,dog 154523,cat 154524,airplane 154525,deer 154526,frog 154527,deer 154528,deer 154529,airplane 154530,dog 154531,deer 154532,cat 154533,cat 154534,dog 154535,cat 154536,truck 154537,ship 154538,bird 154539,bird 154540,ship 154541,ship 154542,frog 154543,frog 154544,deer 154545,deer 154546,airplane 154547,deer 154548,frog 154549,automobile 154550,deer 154551,deer 154552,airplane 154553,cat 154554,airplane 154555,truck 154556,cat 154557,deer 154558,deer 154559,truck 154560,dog 154561,frog 154562,frog 154563,frog 154564,bird 154565,deer 154566,cat 154567,ship 154568,ship 154569,airplane 154570,frog 154571,bird 154572,horse 154573,truck 154574,frog 154575,cat 154576,deer 154577,truck 154578,frog 154579,dog 154580,automobile 154581,deer 154582,dog 154583,truck 154584,truck 154585,deer 154586,ship 154587,cat 154588,horse 154589,cat 154590,frog 154591,cat 154592,cat 154593,deer 154594,ship 154595,automobile 154596,dog 154597,truck 154598,truck 154599,dog 154600,automobile 154601,deer 154602,deer 154603,ship 154604,frog 154605,truck 154606,deer 154607,truck 154608,truck 154609,horse 154610,truck 154611,ship 154612,airplane 154613,bird 154614,cat 154615,horse 154616,truck 154617,truck 154618,deer 154619,dog 154620,deer 154621,ship 154622,horse 154623,airplane 154624,bird 154625,bird 154626,airplane 154627,cat 154628,deer 154629,frog 154630,horse 154631,horse 154632,cat 154633,truck 154634,frog 154635,automobile 154636,cat 154637,frog 154638,cat 154639,deer 154640,frog 154641,automobile 154642,cat 154643,dog 154644,airplane 154645,dog 154646,horse 154647,automobile 154648,dog 154649,cat 154650,truck 154651,frog 154652,frog 154653,deer 154654,deer 154655,deer 154656,deer 154657,dog 154658,frog 154659,dog 154660,dog 154661,frog 154662,ship 154663,deer 154664,dog 154665,deer 154666,bird 154667,frog 154668,airplane 154669,horse 154670,truck 154671,horse 154672,cat 154673,bird 154674,bird 154675,frog 154676,dog 154677,ship 154678,deer 154679,ship 154680,dog 154681,truck 154682,cat 154683,frog 154684,airplane 154685,truck 154686,deer 154687,automobile 154688,airplane 154689,truck 154690,frog 154691,truck 154692,cat 154693,horse 154694,cat 154695,cat 154696,airplane 154697,cat 154698,deer 154699,cat 154700,airplane 154701,ship 154702,horse 154703,automobile 154704,deer 154705,horse 154706,frog 154707,airplane 154708,truck 154709,cat 154710,deer 154711,airplane 154712,ship 154713,frog 154714,cat 154715,bird 154716,automobile 154717,truck 154718,dog 154719,ship 154720,cat 154721,deer 154722,truck 154723,airplane 154724,dog 154725,automobile 154726,truck 154727,ship 154728,frog 154729,frog 154730,truck 154731,horse 154732,dog 154733,frog 154734,frog 154735,dog 154736,ship 154737,cat 154738,truck 154739,truck 154740,deer 154741,horse 154742,airplane 154743,automobile 154744,horse 154745,dog 154746,deer 154747,truck 154748,truck 154749,frog 154750,frog 154751,cat 154752,dog 154753,deer 154754,truck 154755,airplane 154756,deer 154757,cat 154758,airplane 154759,deer 154760,truck 154761,bird 154762,truck 154763,deer 154764,ship 154765,bird 154766,truck 154767,truck 154768,horse 154769,airplane 154770,automobile 154771,frog 154772,automobile 154773,automobile 154774,bird 154775,automobile 154776,deer 154777,frog 154778,airplane 154779,bird 154780,bird 154781,bird 154782,airplane 154783,dog 154784,truck 154785,deer 154786,truck 154787,horse 154788,cat 154789,deer 154790,automobile 154791,dog 154792,dog 154793,dog 154794,dog 154795,truck 154796,airplane 154797,frog 154798,frog 154799,dog 154800,ship 154801,deer 154802,ship 154803,cat 154804,truck 154805,horse 154806,deer 154807,frog 154808,cat 154809,dog 154810,automobile 154811,deer 154812,deer 154813,automobile 154814,truck 154815,horse 154816,cat 154817,truck 154818,frog 154819,airplane 154820,ship 154821,automobile 154822,ship 154823,ship 154824,truck 154825,bird 154826,frog 154827,bird 154828,cat 154829,frog 154830,cat 154831,truck 154832,deer 154833,bird 154834,cat 154835,truck 154836,truck 154837,deer 154838,automobile 154839,ship 154840,cat 154841,cat 154842,frog 154843,dog 154844,dog 154845,truck 154846,truck 154847,horse 154848,ship 154849,bird 154850,frog 154851,frog 154852,dog 154853,ship 154854,airplane 154855,airplane 154856,truck 154857,airplane 154858,dog 154859,bird 154860,deer 154861,cat 154862,deer 154863,bird 154864,airplane 154865,frog 154866,deer 154867,deer 154868,truck 154869,truck 154870,deer 154871,airplane 154872,ship 154873,cat 154874,deer 154875,frog 154876,cat 154877,cat 154878,cat 154879,deer 154880,frog 154881,cat 154882,automobile 154883,ship 154884,truck 154885,deer 154886,bird 154887,bird 154888,frog 154889,automobile 154890,ship 154891,frog 154892,cat 154893,deer 154894,airplane 154895,bird 154896,bird 154897,truck 154898,truck 154899,horse 154900,ship 154901,cat 154902,cat 154903,ship 154904,bird 154905,deer 154906,horse 154907,truck 154908,dog 154909,deer 154910,frog 154911,truck 154912,horse 154913,cat 154914,frog 154915,frog 154916,truck 154917,horse 154918,dog 154919,bird 154920,frog 154921,truck 154922,automobile 154923,horse 154924,deer 154925,truck 154926,cat 154927,bird 154928,bird 154929,bird 154930,cat 154931,frog 154932,horse 154933,deer 154934,horse 154935,airplane 154936,horse 154937,airplane 154938,automobile 154939,truck 154940,bird 154941,airplane 154942,ship 154943,bird 154944,bird 154945,horse 154946,ship 154947,cat 154948,airplane 154949,ship 154950,deer 154951,cat 154952,horse 154953,ship 154954,bird 154955,bird 154956,dog 154957,bird 154958,horse 154959,dog 154960,bird 154961,deer 154962,automobile 154963,frog 154964,frog 154965,horse 154966,ship 154967,horse 154968,automobile 154969,horse 154970,dog 154971,truck 154972,deer 154973,frog 154974,cat 154975,deer 154976,truck 154977,bird 154978,dog 154979,ship 154980,deer 154981,cat 154982,dog 154983,truck 154984,deer 154985,frog 154986,bird 154987,cat 154988,dog 154989,horse 154990,bird 154991,horse 154992,horse 154993,airplane 154994,frog 154995,bird 154996,cat 154997,ship 154998,truck 154999,airplane 155000,bird 155001,cat 155002,deer 155003,cat 155004,frog 155005,frog 155006,cat 155007,cat 155008,horse 155009,cat 155010,bird 155011,bird 155012,frog 155013,cat 155014,bird 155015,cat 155016,ship 155017,bird 155018,horse 155019,cat 155020,cat 155021,deer 155022,frog 155023,deer 155024,airplane 155025,frog 155026,cat 155027,frog 155028,horse 155029,deer 155030,dog 155031,ship 155032,deer 155033,airplane 155034,horse 155035,horse 155036,airplane 155037,dog 155038,ship 155039,deer 155040,deer 155041,ship 155042,dog 155043,deer 155044,bird 155045,horse 155046,horse 155047,automobile 155048,airplane 155049,cat 155050,dog 155051,bird 155052,dog 155053,dog 155054,deer 155055,truck 155056,automobile 155057,deer 155058,truck 155059,automobile 155060,deer 155061,cat 155062,cat 155063,airplane 155064,cat 155065,frog 155066,horse 155067,ship 155068,cat 155069,automobile 155070,cat 155071,cat 155072,dog 155073,automobile 155074,horse 155075,ship 155076,cat 155077,dog 155078,deer 155079,dog 155080,cat 155081,bird 155082,airplane 155083,bird 155084,ship 155085,dog 155086,deer 155087,truck 155088,truck 155089,frog 155090,deer 155091,deer 155092,ship 155093,truck 155094,horse 155095,bird 155096,truck 155097,deer 155098,horse 155099,frog 155100,frog 155101,frog 155102,automobile 155103,airplane 155104,automobile 155105,truck 155106,horse 155107,cat 155108,bird 155109,frog 155110,deer 155111,dog 155112,bird 155113,deer 155114,truck 155115,automobile 155116,ship 155117,dog 155118,dog 155119,deer 155120,horse 155121,airplane 155122,dog 155123,truck 155124,airplane 155125,truck 155126,truck 155127,cat 155128,cat 155129,deer 155130,frog 155131,frog 155132,airplane 155133,bird 155134,dog 155135,horse 155136,horse 155137,horse 155138,dog 155139,ship 155140,cat 155141,dog 155142,deer 155143,dog 155144,deer 155145,frog 155146,cat 155147,frog 155148,ship 155149,airplane 155150,frog 155151,horse 155152,dog 155153,cat 155154,frog 155155,airplane 155156,truck 155157,cat 155158,dog 155159,cat 155160,airplane 155161,bird 155162,airplane 155163,deer 155164,bird 155165,deer 155166,ship 155167,dog 155168,dog 155169,truck 155170,ship 155171,airplane 155172,truck 155173,frog 155174,airplane 155175,deer 155176,cat 155177,dog 155178,cat 155179,deer 155180,dog 155181,cat 155182,deer 155183,deer 155184,frog 155185,automobile 155186,bird 155187,airplane 155188,frog 155189,dog 155190,frog 155191,ship 155192,cat 155193,horse 155194,horse 155195,bird 155196,airplane 155197,horse 155198,dog 155199,frog 155200,ship 155201,cat 155202,cat 155203,airplane 155204,bird 155205,ship 155206,bird 155207,bird 155208,deer 155209,cat 155210,dog 155211,automobile 155212,truck 155213,airplane 155214,airplane 155215,dog 155216,dog 155217,cat 155218,dog 155219,dog 155220,cat 155221,truck 155222,horse 155223,airplane 155224,horse 155225,automobile 155226,bird 155227,airplane 155228,truck 155229,bird 155230,frog 155231,cat 155232,dog 155233,automobile 155234,deer 155235,deer 155236,horse 155237,frog 155238,ship 155239,truck 155240,horse 155241,dog 155242,dog 155243,frog 155244,truck 155245,frog 155246,dog 155247,deer 155248,automobile 155249,deer 155250,deer 155251,cat 155252,cat 155253,frog 155254,ship 155255,horse 155256,deer 155257,dog 155258,airplane 155259,airplane 155260,dog 155261,deer 155262,bird 155263,ship 155264,deer 155265,ship 155266,frog 155267,cat 155268,dog 155269,ship 155270,frog 155271,frog 155272,horse 155273,bird 155274,truck 155275,dog 155276,airplane 155277,deer 155278,cat 155279,bird 155280,automobile 155281,automobile 155282,cat 155283,cat 155284,truck 155285,deer 155286,airplane 155287,truck 155288,ship 155289,bird 155290,cat 155291,horse 155292,bird 155293,frog 155294,cat 155295,airplane 155296,deer 155297,frog 155298,frog 155299,deer 155300,ship 155301,dog 155302,deer 155303,dog 155304,airplane 155305,dog 155306,ship 155307,truck 155308,ship 155309,horse 155310,truck 155311,automobile 155312,horse 155313,horse 155314,deer 155315,airplane 155316,horse 155317,bird 155318,frog 155319,cat 155320,frog 155321,frog 155322,dog 155323,frog 155324,cat 155325,horse 155326,bird 155327,airplane 155328,deer 155329,deer 155330,horse 155331,cat 155332,truck 155333,horse 155334,cat 155335,cat 155336,ship 155337,truck 155338,cat 155339,bird 155340,frog 155341,cat 155342,dog 155343,cat 155344,horse 155345,horse 155346,ship 155347,frog 155348,horse 155349,ship 155350,deer 155351,frog 155352,cat 155353,automobile 155354,automobile 155355,horse 155356,horse 155357,dog 155358,cat 155359,dog 155360,airplane 155361,dog 155362,ship 155363,ship 155364,dog 155365,airplane 155366,frog 155367,bird 155368,ship 155369,frog 155370,bird 155371,deer 155372,deer 155373,dog 155374,airplane 155375,airplane 155376,automobile 155377,cat 155378,horse 155379,truck 155380,horse 155381,bird 155382,bird 155383,frog 155384,frog 155385,bird 155386,ship 155387,deer 155388,cat 155389,frog 155390,bird 155391,ship 155392,cat 155393,frog 155394,cat 155395,airplane 155396,airplane 155397,cat 155398,horse 155399,dog 155400,airplane 155401,cat 155402,frog 155403,frog 155404,frog 155405,horse 155406,bird 155407,dog 155408,frog 155409,dog 155410,dog 155411,truck 155412,deer 155413,airplane 155414,cat 155415,cat 155416,automobile 155417,deer 155418,deer 155419,dog 155420,horse 155421,truck 155422,bird 155423,cat 155424,airplane 155425,dog 155426,cat 155427,truck 155428,truck 155429,horse 155430,horse 155431,airplane 155432,bird 155433,deer 155434,truck 155435,horse 155436,truck 155437,automobile 155438,horse 155439,automobile 155440,cat 155441,truck 155442,horse 155443,ship 155444,frog 155445,deer 155446,cat 155447,frog 155448,frog 155449,truck 155450,automobile 155451,frog 155452,automobile 155453,dog 155454,deer 155455,truck 155456,airplane 155457,dog 155458,ship 155459,deer 155460,deer 155461,truck 155462,ship 155463,horse 155464,frog 155465,airplane 155466,horse 155467,deer 155468,dog 155469,frog 155470,ship 155471,truck 155472,cat 155473,cat 155474,cat 155475,deer 155476,cat 155477,deer 155478,frog 155479,horse 155480,cat 155481,horse 155482,horse 155483,truck 155484,cat 155485,airplane 155486,airplane 155487,truck 155488,deer 155489,frog 155490,deer 155491,dog 155492,truck 155493,bird 155494,bird 155495,airplane 155496,dog 155497,cat 155498,truck 155499,cat 155500,cat 155501,ship 155502,frog 155503,frog 155504,deer 155505,deer 155506,ship 155507,horse 155508,frog 155509,horse 155510,ship 155511,bird 155512,automobile 155513,frog 155514,truck 155515,frog 155516,dog 155517,truck 155518,deer 155519,truck 155520,deer 155521,deer 155522,ship 155523,deer 155524,frog 155525,ship 155526,horse 155527,automobile 155528,frog 155529,cat 155530,bird 155531,deer 155532,dog 155533,automobile 155534,frog 155535,dog 155536,bird 155537,cat 155538,dog 155539,airplane 155540,cat 155541,horse 155542,cat 155543,horse 155544,frog 155545,horse 155546,truck 155547,cat 155548,truck 155549,cat 155550,cat 155551,truck 155552,bird 155553,frog 155554,bird 155555,truck 155556,cat 155557,horse 155558,airplane 155559,truck 155560,automobile 155561,deer 155562,cat 155563,frog 155564,ship 155565,frog 155566,deer 155567,deer 155568,cat 155569,bird 155570,ship 155571,horse 155572,deer 155573,automobile 155574,deer 155575,deer 155576,deer 155577,truck 155578,frog 155579,airplane 155580,dog 155581,frog 155582,truck 155583,ship 155584,dog 155585,deer 155586,cat 155587,cat 155588,deer 155589,cat 155590,airplane 155591,truck 155592,cat 155593,truck 155594,dog 155595,deer 155596,dog 155597,deer 155598,automobile 155599,ship 155600,bird 155601,truck 155602,automobile 155603,airplane 155604,ship 155605,bird 155606,frog 155607,bird 155608,cat 155609,dog 155610,frog 155611,bird 155612,truck 155613,horse 155614,airplane 155615,ship 155616,truck 155617,frog 155618,ship 155619,ship 155620,airplane 155621,truck 155622,bird 155623,horse 155624,deer 155625,bird 155626,truck 155627,automobile 155628,frog 155629,automobile 155630,truck 155631,horse 155632,deer 155633,truck 155634,frog 155635,cat 155636,frog 155637,bird 155638,airplane 155639,deer 155640,horse 155641,truck 155642,horse 155643,deer 155644,cat 155645,deer 155646,bird 155647,truck 155648,dog 155649,deer 155650,dog 155651,frog 155652,cat 155653,deer 155654,frog 155655,deer 155656,truck 155657,deer 155658,cat 155659,frog 155660,cat 155661,frog 155662,dog 155663,airplane 155664,dog 155665,bird 155666,airplane 155667,bird 155668,cat 155669,dog 155670,truck 155671,ship 155672,frog 155673,airplane 155674,automobile 155675,ship 155676,truck 155677,ship 155678,horse 155679,dog 155680,horse 155681,deer 155682,ship 155683,bird 155684,ship 155685,frog 155686,truck 155687,cat 155688,automobile 155689,cat 155690,truck 155691,automobile 155692,ship 155693,cat 155694,frog 155695,deer 155696,deer 155697,cat 155698,cat 155699,ship 155700,ship 155701,deer 155702,truck 155703,frog 155704,ship 155705,cat 155706,deer 155707,horse 155708,deer 155709,dog 155710,ship 155711,airplane 155712,ship 155713,ship 155714,cat 155715,ship 155716,cat 155717,truck 155718,deer 155719,frog 155720,frog 155721,horse 155722,horse 155723,cat 155724,truck 155725,deer 155726,airplane 155727,deer 155728,deer 155729,bird 155730,cat 155731,frog 155732,ship 155733,dog 155734,bird 155735,cat 155736,ship 155737,frog 155738,automobile 155739,horse 155740,automobile 155741,frog 155742,dog 155743,horse 155744,horse 155745,ship 155746,truck 155747,truck 155748,bird 155749,bird 155750,dog 155751,dog 155752,airplane 155753,bird 155754,deer 155755,cat 155756,automobile 155757,truck 155758,truck 155759,ship 155760,automobile 155761,deer 155762,cat 155763,frog 155764,deer 155765,bird 155766,deer 155767,airplane 155768,deer 155769,truck 155770,airplane 155771,horse 155772,deer 155773,dog 155774,airplane 155775,airplane 155776,ship 155777,bird 155778,dog 155779,frog 155780,deer 155781,dog 155782,airplane 155783,truck 155784,bird 155785,cat 155786,truck 155787,bird 155788,dog 155789,truck 155790,automobile 155791,cat 155792,airplane 155793,frog 155794,ship 155795,cat 155796,frog 155797,frog 155798,horse 155799,frog 155800,cat 155801,dog 155802,truck 155803,truck 155804,dog 155805,automobile 155806,deer 155807,cat 155808,horse 155809,truck 155810,automobile 155811,ship 155812,deer 155813,airplane 155814,bird 155815,automobile 155816,deer 155817,horse 155818,frog 155819,frog 155820,deer 155821,cat 155822,horse 155823,horse 155824,cat 155825,cat 155826,cat 155827,frog 155828,horse 155829,dog 155830,horse 155831,dog 155832,horse 155833,cat 155834,horse 155835,deer 155836,dog 155837,ship 155838,horse 155839,cat 155840,horse 155841,horse 155842,truck 155843,deer 155844,cat 155845,deer 155846,cat 155847,dog 155848,dog 155849,ship 155850,deer 155851,frog 155852,deer 155853,airplane 155854,automobile 155855,cat 155856,bird 155857,deer 155858,frog 155859,bird 155860,deer 155861,truck 155862,deer 155863,cat 155864,deer 155865,bird 155866,truck 155867,cat 155868,cat 155869,horse 155870,horse 155871,airplane 155872,automobile 155873,dog 155874,airplane 155875,horse 155876,airplane 155877,dog 155878,deer 155879,automobile 155880,cat 155881,truck 155882,deer 155883,dog 155884,frog 155885,dog 155886,cat 155887,cat 155888,ship 155889,deer 155890,horse 155891,cat 155892,deer 155893,airplane 155894,truck 155895,dog 155896,dog 155897,airplane 155898,truck 155899,truck 155900,frog 155901,cat 155902,deer 155903,airplane 155904,bird 155905,cat 155906,airplane 155907,automobile 155908,airplane 155909,cat 155910,deer 155911,dog 155912,dog 155913,cat 155914,dog 155915,ship 155916,cat 155917,deer 155918,automobile 155919,bird 155920,frog 155921,truck 155922,automobile 155923,bird 155924,horse 155925,cat 155926,dog 155927,automobile 155928,deer 155929,automobile 155930,truck 155931,cat 155932,airplane 155933,ship 155934,horse 155935,frog 155936,dog 155937,airplane 155938,cat 155939,cat 155940,dog 155941,airplane 155942,truck 155943,deer 155944,cat 155945,ship 155946,deer 155947,deer 155948,automobile 155949,automobile 155950,automobile 155951,bird 155952,deer 155953,airplane 155954,airplane 155955,truck 155956,horse 155957,frog 155958,ship 155959,frog 155960,deer 155961,deer 155962,ship 155963,bird 155964,deer 155965,cat 155966,horse 155967,frog 155968,cat 155969,automobile 155970,automobile 155971,truck 155972,bird 155973,automobile 155974,automobile 155975,airplane 155976,airplane 155977,cat 155978,cat 155979,deer 155980,airplane 155981,ship 155982,airplane 155983,bird 155984,automobile 155985,cat 155986,cat 155987,frog 155988,cat 155989,dog 155990,deer 155991,truck 155992,horse 155993,dog 155994,truck 155995,frog 155996,cat 155997,truck 155998,deer 155999,bird 156000,truck 156001,airplane 156002,horse 156003,airplane 156004,automobile 156005,airplane 156006,frog 156007,horse 156008,deer 156009,horse 156010,deer 156011,ship 156012,cat 156013,automobile 156014,airplane 156015,airplane 156016,frog 156017,truck 156018,cat 156019,frog 156020,frog 156021,automobile 156022,dog 156023,frog 156024,dog 156025,deer 156026,ship 156027,deer 156028,airplane 156029,frog 156030,horse 156031,bird 156032,airplane 156033,dog 156034,dog 156035,ship 156036,cat 156037,ship 156038,deer 156039,cat 156040,frog 156041,horse 156042,ship 156043,horse 156044,dog 156045,airplane 156046,automobile 156047,deer 156048,truck 156049,automobile 156050,deer 156051,bird 156052,dog 156053,frog 156054,truck 156055,horse 156056,deer 156057,horse 156058,deer 156059,cat 156060,automobile 156061,truck 156062,truck 156063,dog 156064,cat 156065,horse 156066,bird 156067,deer 156068,ship 156069,ship 156070,dog 156071,ship 156072,cat 156073,horse 156074,cat 156075,bird 156076,deer 156077,horse 156078,dog 156079,cat 156080,deer 156081,truck 156082,cat 156083,cat 156084,deer 156085,airplane 156086,dog 156087,cat 156088,automobile 156089,airplane 156090,deer 156091,ship 156092,horse 156093,automobile 156094,deer 156095,truck 156096,truck 156097,cat 156098,ship 156099,truck 156100,airplane 156101,dog 156102,frog 156103,automobile 156104,bird 156105,frog 156106,bird 156107,truck 156108,dog 156109,dog 156110,ship 156111,deer 156112,truck 156113,dog 156114,automobile 156115,frog 156116,dog 156117,airplane 156118,ship 156119,truck 156120,truck 156121,truck 156122,truck 156123,deer 156124,dog 156125,dog 156126,horse 156127,horse 156128,truck 156129,truck 156130,airplane 156131,dog 156132,frog 156133,automobile 156134,truck 156135,truck 156136,frog 156137,truck 156138,dog 156139,dog 156140,deer 156141,truck 156142,cat 156143,bird 156144,ship 156145,deer 156146,horse 156147,automobile 156148,cat 156149,dog 156150,cat 156151,dog 156152,truck 156153,automobile 156154,dog 156155,cat 156156,ship 156157,ship 156158,airplane 156159,frog 156160,cat 156161,deer 156162,frog 156163,horse 156164,deer 156165,deer 156166,automobile 156167,frog 156168,truck 156169,truck 156170,horse 156171,ship 156172,ship 156173,truck 156174,frog 156175,frog 156176,ship 156177,ship 156178,frog 156179,deer 156180,horse 156181,cat 156182,truck 156183,airplane 156184,airplane 156185,ship 156186,frog 156187,dog 156188,truck 156189,deer 156190,frog 156191,cat 156192,truck 156193,frog 156194,horse 156195,frog 156196,truck 156197,cat 156198,ship 156199,cat 156200,airplane 156201,automobile 156202,deer 156203,frog 156204,ship 156205,airplane 156206,bird 156207,automobile 156208,bird 156209,deer 156210,airplane 156211,truck 156212,automobile 156213,frog 156214,airplane 156215,cat 156216,bird 156217,ship 156218,cat 156219,ship 156220,frog 156221,horse 156222,dog 156223,dog 156224,ship 156225,dog 156226,frog 156227,dog 156228,dog 156229,deer 156230,bird 156231,dog 156232,bird 156233,deer 156234,truck 156235,bird 156236,automobile 156237,deer 156238,bird 156239,horse 156240,airplane 156241,deer 156242,cat 156243,bird 156244,dog 156245,dog 156246,deer 156247,dog 156248,ship 156249,ship 156250,automobile 156251,automobile 156252,deer 156253,deer 156254,deer 156255,deer 156256,bird 156257,frog 156258,truck 156259,bird 156260,deer 156261,truck 156262,frog 156263,airplane 156264,horse 156265,horse 156266,truck 156267,dog 156268,frog 156269,dog 156270,truck 156271,horse 156272,frog 156273,dog 156274,ship 156275,frog 156276,bird 156277,dog 156278,cat 156279,bird 156280,truck 156281,deer 156282,deer 156283,bird 156284,horse 156285,truck 156286,dog 156287,deer 156288,deer 156289,horse 156290,deer 156291,horse 156292,bird 156293,frog 156294,dog 156295,truck 156296,automobile 156297,deer 156298,horse 156299,deer 156300,horse 156301,deer 156302,ship 156303,truck 156304,cat 156305,horse 156306,cat 156307,ship 156308,dog 156309,dog 156310,ship 156311,airplane 156312,truck 156313,cat 156314,airplane 156315,frog 156316,cat 156317,dog 156318,horse 156319,deer 156320,airplane 156321,automobile 156322,airplane 156323,truck 156324,cat 156325,ship 156326,truck 156327,deer 156328,deer 156329,dog 156330,cat 156331,airplane 156332,deer 156333,cat 156334,horse 156335,dog 156336,airplane 156337,horse 156338,cat 156339,horse 156340,dog 156341,deer 156342,airplane 156343,deer 156344,bird 156345,dog 156346,ship 156347,deer 156348,frog 156349,frog 156350,truck 156351,automobile 156352,automobile 156353,deer 156354,ship 156355,ship 156356,horse 156357,truck 156358,bird 156359,automobile 156360,cat 156361,bird 156362,horse 156363,bird 156364,deer 156365,frog 156366,truck 156367,truck 156368,deer 156369,deer 156370,bird 156371,bird 156372,airplane 156373,deer 156374,frog 156375,horse 156376,dog 156377,airplane 156378,horse 156379,bird 156380,bird 156381,frog 156382,truck 156383,airplane 156384,dog 156385,airplane 156386,frog 156387,cat 156388,dog 156389,truck 156390,dog 156391,dog 156392,ship 156393,cat 156394,bird 156395,automobile 156396,truck 156397,deer 156398,ship 156399,airplane 156400,dog 156401,frog 156402,horse 156403,cat 156404,ship 156405,ship 156406,dog 156407,airplane 156408,deer 156409,frog 156410,cat 156411,frog 156412,cat 156413,airplane 156414,cat 156415,dog 156416,deer 156417,bird 156418,cat 156419,airplane 156420,airplane 156421,deer 156422,ship 156423,cat 156424,automobile 156425,airplane 156426,deer 156427,deer 156428,cat 156429,dog 156430,automobile 156431,frog 156432,bird 156433,cat 156434,deer 156435,airplane 156436,cat 156437,cat 156438,deer 156439,horse 156440,dog 156441,horse 156442,truck 156443,bird 156444,dog 156445,horse 156446,dog 156447,deer 156448,bird 156449,automobile 156450,horse 156451,deer 156452,dog 156453,dog 156454,horse 156455,truck 156456,dog 156457,dog 156458,bird 156459,frog 156460,ship 156461,airplane 156462,automobile 156463,horse 156464,dog 156465,bird 156466,frog 156467,ship 156468,automobile 156469,deer 156470,cat 156471,frog 156472,ship 156473,horse 156474,dog 156475,cat 156476,bird 156477,horse 156478,deer 156479,airplane 156480,bird 156481,cat 156482,dog 156483,bird 156484,dog 156485,deer 156486,cat 156487,cat 156488,airplane 156489,horse 156490,bird 156491,dog 156492,bird 156493,bird 156494,frog 156495,dog 156496,cat 156497,automobile 156498,deer 156499,cat 156500,airplane 156501,horse 156502,bird 156503,frog 156504,dog 156505,bird 156506,truck 156507,deer 156508,cat 156509,automobile 156510,ship 156511,ship 156512,frog 156513,cat 156514,deer 156515,automobile 156516,cat 156517,automobile 156518,airplane 156519,cat 156520,cat 156521,airplane 156522,deer 156523,horse 156524,cat 156525,frog 156526,ship 156527,airplane 156528,ship 156529,deer 156530,airplane 156531,airplane 156532,cat 156533,cat 156534,deer 156535,frog 156536,deer 156537,truck 156538,bird 156539,horse 156540,frog 156541,dog 156542,automobile 156543,frog 156544,frog 156545,horse 156546,horse 156547,ship 156548,truck 156549,truck 156550,deer 156551,cat 156552,horse 156553,frog 156554,bird 156555,automobile 156556,truck 156557,dog 156558,truck 156559,cat 156560,airplane 156561,deer 156562,cat 156563,frog 156564,dog 156565,ship 156566,automobile 156567,deer 156568,frog 156569,deer 156570,deer 156571,cat 156572,deer 156573,frog 156574,airplane 156575,airplane 156576,cat 156577,deer 156578,ship 156579,cat 156580,deer 156581,bird 156582,truck 156583,deer 156584,horse 156585,deer 156586,bird 156587,horse 156588,dog 156589,bird 156590,dog 156591,cat 156592,deer 156593,horse 156594,deer 156595,dog 156596,cat 156597,dog 156598,cat 156599,dog 156600,truck 156601,frog 156602,dog 156603,bird 156604,automobile 156605,bird 156606,bird 156607,cat 156608,deer 156609,automobile 156610,airplane 156611,airplane 156612,dog 156613,cat 156614,deer 156615,airplane 156616,automobile 156617,cat 156618,bird 156619,dog 156620,ship 156621,cat 156622,bird 156623,truck 156624,cat 156625,horse 156626,dog 156627,ship 156628,horse 156629,truck 156630,truck 156631,horse 156632,airplane 156633,deer 156634,horse 156635,horse 156636,cat 156637,automobile 156638,airplane 156639,airplane 156640,cat 156641,dog 156642,airplane 156643,truck 156644,deer 156645,horse 156646,cat 156647,truck 156648,deer 156649,bird 156650,airplane 156651,frog 156652,deer 156653,frog 156654,truck 156655,deer 156656,dog 156657,airplane 156658,frog 156659,ship 156660,dog 156661,airplane 156662,truck 156663,dog 156664,frog 156665,horse 156666,deer 156667,truck 156668,deer 156669,ship 156670,automobile 156671,cat 156672,deer 156673,dog 156674,dog 156675,airplane 156676,bird 156677,dog 156678,horse 156679,deer 156680,truck 156681,horse 156682,automobile 156683,bird 156684,cat 156685,cat 156686,deer 156687,dog 156688,deer 156689,cat 156690,ship 156691,deer 156692,dog 156693,bird 156694,horse 156695,cat 156696,ship 156697,automobile 156698,bird 156699,bird 156700,automobile 156701,cat 156702,dog 156703,truck 156704,dog 156705,automobile 156706,cat 156707,dog 156708,frog 156709,bird 156710,ship 156711,truck 156712,horse 156713,deer 156714,truck 156715,frog 156716,horse 156717,dog 156718,automobile 156719,ship 156720,deer 156721,cat 156722,cat 156723,frog 156724,automobile 156725,deer 156726,ship 156727,cat 156728,bird 156729,deer 156730,truck 156731,truck 156732,truck 156733,frog 156734,dog 156735,cat 156736,ship 156737,automobile 156738,truck 156739,cat 156740,frog 156741,dog 156742,cat 156743,bird 156744,bird 156745,airplane 156746,cat 156747,cat 156748,horse 156749,automobile 156750,ship 156751,deer 156752,truck 156753,deer 156754,deer 156755,truck 156756,airplane 156757,airplane 156758,dog 156759,automobile 156760,horse 156761,bird 156762,cat 156763,deer 156764,ship 156765,truck 156766,automobile 156767,cat 156768,dog 156769,bird 156770,truck 156771,ship 156772,bird 156773,dog 156774,frog 156775,cat 156776,dog 156777,ship 156778,frog 156779,deer 156780,ship 156781,dog 156782,truck 156783,cat 156784,airplane 156785,airplane 156786,frog 156787,automobile 156788,cat 156789,automobile 156790,truck 156791,automobile 156792,deer 156793,dog 156794,dog 156795,truck 156796,bird 156797,deer 156798,airplane 156799,airplane 156800,cat 156801,horse 156802,horse 156803,truck 156804,ship 156805,bird 156806,cat 156807,cat 156808,airplane 156809,horse 156810,truck 156811,frog 156812,bird 156813,dog 156814,deer 156815,cat 156816,ship 156817,airplane 156818,ship 156819,automobile 156820,bird 156821,deer 156822,cat 156823,dog 156824,bird 156825,bird 156826,airplane 156827,automobile 156828,dog 156829,dog 156830,bird 156831,airplane 156832,airplane 156833,dog 156834,automobile 156835,automobile 156836,dog 156837,cat 156838,deer 156839,deer 156840,frog 156841,cat 156842,ship 156843,cat 156844,horse 156845,ship 156846,airplane 156847,deer 156848,cat 156849,truck 156850,dog 156851,horse 156852,frog 156853,airplane 156854,bird 156855,automobile 156856,dog 156857,deer 156858,ship 156859,bird 156860,ship 156861,bird 156862,ship 156863,cat 156864,ship 156865,truck 156866,bird 156867,horse 156868,frog 156869,bird 156870,frog 156871,dog 156872,frog 156873,automobile 156874,dog 156875,cat 156876,frog 156877,automobile 156878,frog 156879,ship 156880,bird 156881,automobile 156882,cat 156883,dog 156884,automobile 156885,frog 156886,dog 156887,truck 156888,bird 156889,ship 156890,truck 156891,frog 156892,automobile 156893,dog 156894,cat 156895,deer 156896,ship 156897,airplane 156898,horse 156899,automobile 156900,automobile 156901,cat 156902,cat 156903,dog 156904,airplane 156905,dog 156906,airplane 156907,horse 156908,deer 156909,cat 156910,horse 156911,dog 156912,dog 156913,automobile 156914,deer 156915,cat 156916,dog 156917,bird 156918,deer 156919,truck 156920,frog 156921,cat 156922,ship 156923,airplane 156924,dog 156925,ship 156926,dog 156927,dog 156928,bird 156929,dog 156930,ship 156931,dog 156932,bird 156933,automobile 156934,bird 156935,ship 156936,cat 156937,truck 156938,horse 156939,airplane 156940,frog 156941,bird 156942,horse 156943,deer 156944,airplane 156945,automobile 156946,cat 156947,dog 156948,cat 156949,bird 156950,truck 156951,dog 156952,deer 156953,horse 156954,bird 156955,deer 156956,airplane 156957,dog 156958,frog 156959,horse 156960,deer 156961,dog 156962,bird 156963,deer 156964,deer 156965,frog 156966,bird 156967,horse 156968,horse 156969,truck 156970,ship 156971,automobile 156972,airplane 156973,deer 156974,ship 156975,dog 156976,frog 156977,dog 156978,frog 156979,bird 156980,bird 156981,deer 156982,truck 156983,deer 156984,frog 156985,deer 156986,dog 156987,frog 156988,horse 156989,airplane 156990,horse 156991,dog 156992,horse 156993,cat 156994,dog 156995,ship 156996,bird 156997,bird 156998,ship 156999,cat 157000,deer 157001,airplane 157002,cat 157003,cat 157004,truck 157005,deer 157006,deer 157007,dog 157008,cat 157009,deer 157010,airplane 157011,truck 157012,deer 157013,cat 157014,truck 157015,frog 157016,cat 157017,airplane 157018,dog 157019,horse 157020,cat 157021,truck 157022,automobile 157023,truck 157024,automobile 157025,airplane 157026,dog 157027,bird 157028,ship 157029,airplane 157030,dog 157031,airplane 157032,horse 157033,deer 157034,deer 157035,frog 157036,airplane 157037,airplane 157038,frog 157039,truck 157040,deer 157041,bird 157042,cat 157043,deer 157044,cat 157045,dog 157046,cat 157047,automobile 157048,horse 157049,cat 157050,cat 157051,deer 157052,deer 157053,dog 157054,frog 157055,automobile 157056,frog 157057,deer 157058,airplane 157059,horse 157060,automobile 157061,horse 157062,ship 157063,frog 157064,horse 157065,airplane 157066,airplane 157067,deer 157068,automobile 157069,bird 157070,horse 157071,frog 157072,bird 157073,horse 157074,dog 157075,cat 157076,automobile 157077,frog 157078,frog 157079,dog 157080,dog 157081,bird 157082,bird 157083,truck 157084,frog 157085,horse 157086,truck 157087,airplane 157088,cat 157089,truck 157090,automobile 157091,automobile 157092,ship 157093,ship 157094,cat 157095,horse 157096,bird 157097,cat 157098,horse 157099,truck 157100,automobile 157101,airplane 157102,dog 157103,truck 157104,horse 157105,cat 157106,bird 157107,cat 157108,cat 157109,automobile 157110,automobile 157111,bird 157112,airplane 157113,ship 157114,automobile 157115,airplane 157116,horse 157117,horse 157118,cat 157119,automobile 157120,ship 157121,horse 157122,cat 157123,truck 157124,ship 157125,automobile 157126,horse 157127,automobile 157128,deer 157129,dog 157130,horse 157131,deer 157132,airplane 157133,horse 157134,ship 157135,deer 157136,truck 157137,deer 157138,cat 157139,dog 157140,horse 157141,deer 157142,frog 157143,horse 157144,bird 157145,dog 157146,dog 157147,ship 157148,bird 157149,deer 157150,automobile 157151,airplane 157152,deer 157153,cat 157154,frog 157155,dog 157156,frog 157157,deer 157158,horse 157159,automobile 157160,dog 157161,automobile 157162,ship 157163,deer 157164,airplane 157165,horse 157166,deer 157167,deer 157168,airplane 157169,airplane 157170,airplane 157171,deer 157172,frog 157173,truck 157174,automobile 157175,dog 157176,frog 157177,automobile 157178,deer 157179,horse 157180,automobile 157181,bird 157182,dog 157183,cat 157184,deer 157185,airplane 157186,dog 157187,cat 157188,automobile 157189,horse 157190,frog 157191,bird 157192,deer 157193,deer 157194,deer 157195,deer 157196,airplane 157197,frog 157198,truck 157199,horse 157200,airplane 157201,truck 157202,automobile 157203,truck 157204,truck 157205,ship 157206,cat 157207,frog 157208,dog 157209,truck 157210,dog 157211,horse 157212,dog 157213,airplane 157214,horse 157215,truck 157216,automobile 157217,horse 157218,frog 157219,truck 157220,deer 157221,truck 157222,frog 157223,frog 157224,deer 157225,cat 157226,automobile 157227,dog 157228,automobile 157229,cat 157230,dog 157231,truck 157232,truck 157233,airplane 157234,ship 157235,frog 157236,airplane 157237,truck 157238,deer 157239,deer 157240,frog 157241,deer 157242,airplane 157243,airplane 157244,cat 157245,frog 157246,horse 157247,dog 157248,truck 157249,cat 157250,automobile 157251,truck 157252,airplane 157253,dog 157254,airplane 157255,truck 157256,bird 157257,horse 157258,airplane 157259,deer 157260,horse 157261,bird 157262,dog 157263,bird 157264,deer 157265,dog 157266,airplane 157267,dog 157268,airplane 157269,dog 157270,deer 157271,cat 157272,frog 157273,cat 157274,bird 157275,deer 157276,ship 157277,ship 157278,airplane 157279,automobile 157280,automobile 157281,dog 157282,automobile 157283,bird 157284,deer 157285,frog 157286,truck 157287,cat 157288,dog 157289,deer 157290,deer 157291,horse 157292,deer 157293,bird 157294,frog 157295,deer 157296,cat 157297,ship 157298,airplane 157299,airplane 157300,dog 157301,horse 157302,deer 157303,cat 157304,bird 157305,automobile 157306,frog 157307,truck 157308,airplane 157309,horse 157310,deer 157311,deer 157312,deer 157313,cat 157314,bird 157315,deer 157316,deer 157317,truck 157318,deer 157319,horse 157320,automobile 157321,truck 157322,bird 157323,horse 157324,horse 157325,automobile 157326,cat 157327,horse 157328,dog 157329,frog 157330,dog 157331,deer 157332,truck 157333,automobile 157334,dog 157335,cat 157336,cat 157337,deer 157338,horse 157339,dog 157340,automobile 157341,cat 157342,frog 157343,airplane 157344,horse 157345,cat 157346,frog 157347,bird 157348,horse 157349,deer 157350,cat 157351,bird 157352,airplane 157353,cat 157354,frog 157355,automobile 157356,horse 157357,truck 157358,bird 157359,dog 157360,frog 157361,frog 157362,frog 157363,bird 157364,truck 157365,cat 157366,dog 157367,horse 157368,airplane 157369,dog 157370,horse 157371,ship 157372,cat 157373,deer 157374,truck 157375,deer 157376,deer 157377,truck 157378,bird 157379,automobile 157380,horse 157381,horse 157382,airplane 157383,bird 157384,truck 157385,truck 157386,airplane 157387,cat 157388,airplane 157389,deer 157390,frog 157391,cat 157392,frog 157393,frog 157394,horse 157395,horse 157396,cat 157397,dog 157398,deer 157399,bird 157400,deer 157401,ship 157402,frog 157403,bird 157404,dog 157405,bird 157406,frog 157407,cat 157408,dog 157409,deer 157410,bird 157411,automobile 157412,horse 157413,frog 157414,cat 157415,automobile 157416,frog 157417,deer 157418,airplane 157419,deer 157420,airplane 157421,automobile 157422,airplane 157423,horse 157424,cat 157425,horse 157426,truck 157427,cat 157428,deer 157429,deer 157430,dog 157431,airplane 157432,bird 157433,horse 157434,deer 157435,horse 157436,bird 157437,airplane 157438,horse 157439,truck 157440,deer 157441,deer 157442,frog 157443,horse 157444,deer 157445,automobile 157446,airplane 157447,deer 157448,airplane 157449,bird 157450,horse 157451,deer 157452,truck 157453,dog 157454,ship 157455,cat 157456,truck 157457,ship 157458,deer 157459,dog 157460,truck 157461,bird 157462,horse 157463,horse 157464,truck 157465,cat 157466,cat 157467,horse 157468,bird 157469,frog 157470,truck 157471,deer 157472,deer 157473,truck 157474,frog 157475,horse 157476,bird 157477,airplane 157478,dog 157479,deer 157480,bird 157481,ship 157482,frog 157483,dog 157484,deer 157485,frog 157486,dog 157487,horse 157488,ship 157489,cat 157490,cat 157491,ship 157492,airplane 157493,cat 157494,airplane 157495,dog 157496,bird 157497,dog 157498,automobile 157499,cat 157500,frog 157501,dog 157502,airplane 157503,horse 157504,airplane 157505,deer 157506,ship 157507,frog 157508,frog 157509,truck 157510,ship 157511,dog 157512,deer 157513,dog 157514,airplane 157515,frog 157516,airplane 157517,automobile 157518,truck 157519,horse 157520,dog 157521,deer 157522,frog 157523,airplane 157524,truck 157525,dog 157526,dog 157527,frog 157528,deer 157529,deer 157530,airplane 157531,automobile 157532,dog 157533,ship 157534,airplane 157535,bird 157536,airplane 157537,airplane 157538,frog 157539,truck 157540,airplane 157541,truck 157542,automobile 157543,ship 157544,horse 157545,frog 157546,dog 157547,automobile 157548,horse 157549,airplane 157550,deer 157551,bird 157552,deer 157553,bird 157554,automobile 157555,automobile 157556,automobile 157557,bird 157558,truck 157559,airplane 157560,bird 157561,frog 157562,horse 157563,airplane 157564,bird 157565,dog 157566,airplane 157567,airplane 157568,frog 157569,dog 157570,automobile 157571,frog 157572,cat 157573,deer 157574,automobile 157575,cat 157576,truck 157577,dog 157578,deer 157579,truck 157580,airplane 157581,deer 157582,automobile 157583,airplane 157584,ship 157585,deer 157586,dog 157587,deer 157588,deer 157589,frog 157590,frog 157591,cat 157592,ship 157593,frog 157594,horse 157595,cat 157596,cat 157597,automobile 157598,deer 157599,frog 157600,horse 157601,deer 157602,ship 157603,cat 157604,horse 157605,horse 157606,truck 157607,airplane 157608,deer 157609,truck 157610,deer 157611,bird 157612,horse 157613,cat 157614,cat 157615,truck 157616,truck 157617,bird 157618,deer 157619,automobile 157620,ship 157621,automobile 157622,truck 157623,horse 157624,cat 157625,bird 157626,automobile 157627,cat 157628,cat 157629,deer 157630,deer 157631,airplane 157632,frog 157633,cat 157634,frog 157635,deer 157636,automobile 157637,ship 157638,truck 157639,truck 157640,frog 157641,airplane 157642,truck 157643,frog 157644,deer 157645,horse 157646,airplane 157647,bird 157648,deer 157649,deer 157650,horse 157651,cat 157652,truck 157653,horse 157654,frog 157655,automobile 157656,dog 157657,cat 157658,cat 157659,cat 157660,bird 157661,truck 157662,automobile 157663,cat 157664,dog 157665,dog 157666,horse 157667,airplane 157668,horse 157669,automobile 157670,deer 157671,bird 157672,truck 157673,deer 157674,dog 157675,deer 157676,frog 157677,dog 157678,horse 157679,horse 157680,truck 157681,cat 157682,frog 157683,frog 157684,frog 157685,cat 157686,truck 157687,deer 157688,cat 157689,deer 157690,dog 157691,cat 157692,automobile 157693,automobile 157694,cat 157695,deer 157696,truck 157697,dog 157698,horse 157699,deer 157700,airplane 157701,airplane 157702,cat 157703,frog 157704,frog 157705,airplane 157706,horse 157707,cat 157708,frog 157709,cat 157710,deer 157711,deer 157712,bird 157713,cat 157714,truck 157715,cat 157716,truck 157717,deer 157718,dog 157719,truck 157720,ship 157721,frog 157722,bird 157723,ship 157724,ship 157725,airplane 157726,dog 157727,ship 157728,cat 157729,horse 157730,frog 157731,cat 157732,deer 157733,truck 157734,dog 157735,bird 157736,truck 157737,deer 157738,truck 157739,dog 157740,ship 157741,ship 157742,deer 157743,frog 157744,deer 157745,frog 157746,truck 157747,cat 157748,deer 157749,bird 157750,frog 157751,ship 157752,cat 157753,cat 157754,airplane 157755,cat 157756,airplane 157757,cat 157758,dog 157759,cat 157760,cat 157761,dog 157762,bird 157763,airplane 157764,frog 157765,cat 157766,bird 157767,truck 157768,deer 157769,automobile 157770,frog 157771,frog 157772,airplane 157773,dog 157774,bird 157775,automobile 157776,cat 157777,cat 157778,truck 157779,automobile 157780,airplane 157781,deer 157782,dog 157783,ship 157784,horse 157785,ship 157786,frog 157787,automobile 157788,frog 157789,automobile 157790,bird 157791,cat 157792,horse 157793,deer 157794,horse 157795,deer 157796,deer 157797,cat 157798,automobile 157799,airplane 157800,ship 157801,cat 157802,dog 157803,airplane 157804,bird 157805,horse 157806,bird 157807,truck 157808,cat 157809,frog 157810,deer 157811,ship 157812,cat 157813,truck 157814,horse 157815,cat 157816,dog 157817,cat 157818,airplane 157819,bird 157820,cat 157821,frog 157822,deer 157823,deer 157824,truck 157825,frog 157826,ship 157827,cat 157828,horse 157829,frog 157830,deer 157831,deer 157832,deer 157833,cat 157834,ship 157835,truck 157836,airplane 157837,ship 157838,cat 157839,airplane 157840,truck 157841,airplane 157842,frog 157843,ship 157844,deer 157845,deer 157846,cat 157847,dog 157848,ship 157849,cat 157850,truck 157851,frog 157852,cat 157853,ship 157854,cat 157855,truck 157856,truck 157857,cat 157858,deer 157859,truck 157860,truck 157861,deer 157862,bird 157863,ship 157864,dog 157865,airplane 157866,automobile 157867,automobile 157868,bird 157869,deer 157870,frog 157871,cat 157872,automobile 157873,deer 157874,bird 157875,deer 157876,deer 157877,truck 157878,truck 157879,horse 157880,ship 157881,dog 157882,frog 157883,truck 157884,bird 157885,frog 157886,airplane 157887,dog 157888,dog 157889,frog 157890,deer 157891,deer 157892,cat 157893,frog 157894,airplane 157895,airplane 157896,truck 157897,ship 157898,horse 157899,horse 157900,cat 157901,dog 157902,bird 157903,dog 157904,ship 157905,ship 157906,dog 157907,horse 157908,dog 157909,ship 157910,airplane 157911,horse 157912,automobile 157913,truck 157914,bird 157915,deer 157916,airplane 157917,dog 157918,ship 157919,ship 157920,cat 157921,horse 157922,cat 157923,airplane 157924,deer 157925,cat 157926,ship 157927,frog 157928,horse 157929,dog 157930,dog 157931,dog 157932,deer 157933,airplane 157934,bird 157935,truck 157936,bird 157937,deer 157938,ship 157939,dog 157940,automobile 157941,airplane 157942,horse 157943,airplane 157944,airplane 157945,deer 157946,cat 157947,truck 157948,ship 157949,dog 157950,dog 157951,cat 157952,deer 157953,horse 157954,dog 157955,frog 157956,truck 157957,airplane 157958,automobile 157959,automobile 157960,cat 157961,truck 157962,cat 157963,deer 157964,frog 157965,dog 157966,ship 157967,deer 157968,cat 157969,bird 157970,airplane 157971,dog 157972,ship 157973,horse 157974,ship 157975,airplane 157976,airplane 157977,dog 157978,frog 157979,cat 157980,horse 157981,ship 157982,ship 157983,horse 157984,truck 157985,deer 157986,dog 157987,horse 157988,truck 157989,cat 157990,airplane 157991,dog 157992,dog 157993,automobile 157994,ship 157995,cat 157996,automobile 157997,horse 157998,frog 157999,dog 158000,horse 158001,ship 158002,ship 158003,truck 158004,cat 158005,frog 158006,ship 158007,deer 158008,bird 158009,truck 158010,horse 158011,deer 158012,deer 158013,dog 158014,airplane 158015,cat 158016,deer 158017,deer 158018,horse 158019,frog 158020,bird 158021,frog 158022,automobile 158023,airplane 158024,frog 158025,ship 158026,dog 158027,truck 158028,deer 158029,truck 158030,truck 158031,bird 158032,horse 158033,dog 158034,horse 158035,bird 158036,deer 158037,ship 158038,bird 158039,truck 158040,frog 158041,horse 158042,airplane 158043,deer 158044,dog 158045,bird 158046,airplane 158047,frog 158048,airplane 158049,airplane 158050,horse 158051,ship 158052,frog 158053,airplane 158054,ship 158055,deer 158056,frog 158057,frog 158058,dog 158059,ship 158060,ship 158061,dog 158062,frog 158063,automobile 158064,bird 158065,cat 158066,airplane 158067,deer 158068,dog 158069,deer 158070,cat 158071,horse 158072,cat 158073,frog 158074,horse 158075,dog 158076,bird 158077,deer 158078,cat 158079,deer 158080,bird 158081,frog 158082,horse 158083,bird 158084,automobile 158085,cat 158086,bird 158087,cat 158088,frog 158089,cat 158090,ship 158091,automobile 158092,truck 158093,frog 158094,airplane 158095,airplane 158096,frog 158097,cat 158098,cat 158099,deer 158100,deer 158101,cat 158102,frog 158103,ship 158104,truck 158105,dog 158106,dog 158107,bird 158108,airplane 158109,horse 158110,truck 158111,airplane 158112,bird 158113,horse 158114,ship 158115,dog 158116,cat 158117,automobile 158118,deer 158119,deer 158120,cat 158121,dog 158122,airplane 158123,frog 158124,truck 158125,airplane 158126,frog 158127,ship 158128,deer 158129,dog 158130,deer 158131,ship 158132,bird 158133,airplane 158134,ship 158135,cat 158136,truck 158137,cat 158138,airplane 158139,truck 158140,cat 158141,dog 158142,horse 158143,frog 158144,airplane 158145,automobile 158146,truck 158147,bird 158148,horse 158149,ship 158150,deer 158151,horse 158152,truck 158153,deer 158154,airplane 158155,cat 158156,truck 158157,automobile 158158,ship 158159,airplane 158160,bird 158161,airplane 158162,bird 158163,deer 158164,truck 158165,ship 158166,horse 158167,deer 158168,bird 158169,truck 158170,cat 158171,cat 158172,automobile 158173,bird 158174,deer 158175,deer 158176,truck 158177,cat 158178,frog 158179,ship 158180,deer 158181,deer 158182,airplane 158183,bird 158184,airplane 158185,airplane 158186,horse 158187,frog 158188,automobile 158189,deer 158190,automobile 158191,cat 158192,truck 158193,cat 158194,truck 158195,horse 158196,horse 158197,frog 158198,bird 158199,horse 158200,bird 158201,ship 158202,truck 158203,frog 158204,ship 158205,airplane 158206,cat 158207,dog 158208,ship 158209,cat 158210,cat 158211,cat 158212,cat 158213,automobile 158214,automobile 158215,bird 158216,ship 158217,airplane 158218,horse 158219,horse 158220,deer 158221,frog 158222,bird 158223,truck 158224,bird 158225,horse 158226,frog 158227,truck 158228,cat 158229,dog 158230,ship 158231,cat 158232,dog 158233,deer 158234,dog 158235,cat 158236,deer 158237,dog 158238,automobile 158239,frog 158240,frog 158241,cat 158242,frog 158243,dog 158244,cat 158245,frog 158246,horse 158247,deer 158248,cat 158249,frog 158250,deer 158251,bird 158252,ship 158253,horse 158254,dog 158255,ship 158256,truck 158257,truck 158258,cat 158259,horse 158260,cat 158261,automobile 158262,horse 158263,deer 158264,automobile 158265,frog 158266,deer 158267,airplane 158268,frog 158269,cat 158270,automobile 158271,truck 158272,deer 158273,frog 158274,frog 158275,deer 158276,deer 158277,cat 158278,bird 158279,airplane 158280,truck 158281,ship 158282,cat 158283,truck 158284,dog 158285,horse 158286,cat 158287,dog 158288,frog 158289,truck 158290,horse 158291,frog 158292,bird 158293,deer 158294,horse 158295,automobile 158296,horse 158297,automobile 158298,ship 158299,bird 158300,frog 158301,cat 158302,deer 158303,truck 158304,deer 158305,horse 158306,deer 158307,bird 158308,ship 158309,horse 158310,automobile 158311,bird 158312,cat 158313,dog 158314,dog 158315,cat 158316,cat 158317,horse 158318,ship 158319,frog 158320,deer 158321,deer 158322,cat 158323,airplane 158324,frog 158325,airplane 158326,cat 158327,deer 158328,airplane 158329,deer 158330,airplane 158331,ship 158332,truck 158333,automobile 158334,cat 158335,truck 158336,truck 158337,automobile 158338,bird 158339,deer 158340,deer 158341,ship 158342,truck 158343,cat 158344,cat 158345,ship 158346,truck 158347,bird 158348,ship 158349,ship 158350,cat 158351,horse 158352,truck 158353,dog 158354,cat 158355,truck 158356,ship 158357,airplane 158358,dog 158359,truck 158360,automobile 158361,airplane 158362,cat 158363,cat 158364,ship 158365,dog 158366,frog 158367,truck 158368,frog 158369,frog 158370,ship 158371,horse 158372,truck 158373,airplane 158374,automobile 158375,bird 158376,cat 158377,cat 158378,dog 158379,dog 158380,frog 158381,bird 158382,deer 158383,horse 158384,frog 158385,cat 158386,truck 158387,horse 158388,dog 158389,dog 158390,deer 158391,bird 158392,automobile 158393,frog 158394,deer 158395,frog 158396,horse 158397,horse 158398,ship 158399,bird 158400,airplane 158401,frog 158402,frog 158403,frog 158404,horse 158405,horse 158406,automobile 158407,horse 158408,deer 158409,truck 158410,automobile 158411,ship 158412,frog 158413,cat 158414,horse 158415,cat 158416,cat 158417,airplane 158418,airplane 158419,deer 158420,truck 158421,ship 158422,automobile 158423,truck 158424,horse 158425,airplane 158426,cat 158427,airplane 158428,airplane 158429,automobile 158430,deer 158431,ship 158432,cat 158433,deer 158434,dog 158435,airplane 158436,airplane 158437,deer 158438,truck 158439,dog 158440,dog 158441,frog 158442,airplane 158443,deer 158444,cat 158445,horse 158446,frog 158447,deer 158448,dog 158449,cat 158450,deer 158451,deer 158452,truck 158453,horse 158454,truck 158455,airplane 158456,frog 158457,deer 158458,horse 158459,truck 158460,bird 158461,horse 158462,truck 158463,horse 158464,deer 158465,horse 158466,frog 158467,bird 158468,bird 158469,horse 158470,cat 158471,cat 158472,dog 158473,automobile 158474,cat 158475,truck 158476,automobile 158477,ship 158478,dog 158479,deer 158480,deer 158481,bird 158482,ship 158483,deer 158484,truck 158485,ship 158486,truck 158487,bird 158488,dog 158489,airplane 158490,frog 158491,truck 158492,truck 158493,horse 158494,airplane 158495,airplane 158496,truck 158497,dog 158498,horse 158499,ship 158500,horse 158501,automobile 158502,deer 158503,deer 158504,frog 158505,dog 158506,dog 158507,horse 158508,deer 158509,frog 158510,frog 158511,deer 158512,dog 158513,airplane 158514,deer 158515,dog 158516,deer 158517,automobile 158518,airplane 158519,deer 158520,automobile 158521,cat 158522,cat 158523,cat 158524,cat 158525,bird 158526,horse 158527,horse 158528,bird 158529,horse 158530,horse 158531,horse 158532,dog 158533,truck 158534,deer 158535,truck 158536,deer 158537,bird 158538,frog 158539,deer 158540,frog 158541,cat 158542,frog 158543,truck 158544,deer 158545,airplane 158546,truck 158547,frog 158548,airplane 158549,airplane 158550,cat 158551,ship 158552,horse 158553,dog 158554,deer 158555,truck 158556,ship 158557,automobile 158558,deer 158559,cat 158560,deer 158561,horse 158562,frog 158563,horse 158564,bird 158565,cat 158566,dog 158567,deer 158568,horse 158569,deer 158570,deer 158571,deer 158572,deer 158573,frog 158574,truck 158575,deer 158576,automobile 158577,cat 158578,cat 158579,horse 158580,ship 158581,cat 158582,bird 158583,frog 158584,cat 158585,frog 158586,airplane 158587,truck 158588,deer 158589,cat 158590,airplane 158591,truck 158592,deer 158593,cat 158594,dog 158595,cat 158596,airplane 158597,cat 158598,deer 158599,deer 158600,cat 158601,airplane 158602,frog 158603,horse 158604,truck 158605,cat 158606,horse 158607,horse 158608,cat 158609,dog 158610,automobile 158611,ship 158612,horse 158613,frog 158614,horse 158615,cat 158616,cat 158617,deer 158618,cat 158619,horse 158620,horse 158621,deer 158622,bird 158623,dog 158624,dog 158625,airplane 158626,airplane 158627,cat 158628,deer 158629,deer 158630,horse 158631,automobile 158632,automobile 158633,dog 158634,ship 158635,truck 158636,airplane 158637,horse 158638,deer 158639,bird 158640,dog 158641,automobile 158642,ship 158643,airplane 158644,bird 158645,bird 158646,cat 158647,frog 158648,truck 158649,automobile 158650,deer 158651,truck 158652,cat 158653,airplane 158654,dog 158655,truck 158656,deer 158657,cat 158658,horse 158659,truck 158660,automobile 158661,deer 158662,deer 158663,horse 158664,dog 158665,truck 158666,ship 158667,deer 158668,airplane 158669,ship 158670,dog 158671,airplane 158672,horse 158673,truck 158674,truck 158675,cat 158676,deer 158677,truck 158678,airplane 158679,dog 158680,cat 158681,frog 158682,cat 158683,cat 158684,cat 158685,dog 158686,bird 158687,horse 158688,frog 158689,airplane 158690,deer 158691,deer 158692,airplane 158693,truck 158694,cat 158695,ship 158696,ship 158697,bird 158698,airplane 158699,frog 158700,automobile 158701,dog 158702,automobile 158703,ship 158704,dog 158705,automobile 158706,cat 158707,horse 158708,frog 158709,frog 158710,ship 158711,deer 158712,ship 158713,deer 158714,truck 158715,cat 158716,frog 158717,horse 158718,automobile 158719,deer 158720,dog 158721,horse 158722,airplane 158723,truck 158724,bird 158725,ship 158726,horse 158727,horse 158728,horse 158729,cat 158730,dog 158731,truck 158732,automobile 158733,cat 158734,deer 158735,frog 158736,cat 158737,horse 158738,cat 158739,bird 158740,frog 158741,cat 158742,ship 158743,airplane 158744,deer 158745,airplane 158746,cat 158747,frog 158748,ship 158749,truck 158750,horse 158751,truck 158752,deer 158753,automobile 158754,dog 158755,cat 158756,deer 158757,deer 158758,deer 158759,dog 158760,dog 158761,ship 158762,dog 158763,airplane 158764,deer 158765,truck 158766,horse 158767,frog 158768,airplane 158769,deer 158770,deer 158771,cat 158772,dog 158773,airplane 158774,dog 158775,cat 158776,airplane 158777,airplane 158778,dog 158779,truck 158780,cat 158781,automobile 158782,cat 158783,frog 158784,bird 158785,frog 158786,truck 158787,truck 158788,airplane 158789,deer 158790,cat 158791,bird 158792,truck 158793,ship 158794,ship 158795,dog 158796,ship 158797,cat 158798,deer 158799,deer 158800,automobile 158801,frog 158802,ship 158803,horse 158804,ship 158805,cat 158806,deer 158807,airplane 158808,bird 158809,dog 158810,truck 158811,truck 158812,bird 158813,horse 158814,horse 158815,cat 158816,horse 158817,airplane 158818,dog 158819,ship 158820,bird 158821,truck 158822,frog 158823,dog 158824,airplane 158825,truck 158826,truck 158827,airplane 158828,automobile 158829,cat 158830,frog 158831,deer 158832,dog 158833,horse 158834,truck 158835,dog 158836,deer 158837,bird 158838,ship 158839,bird 158840,cat 158841,truck 158842,automobile 158843,automobile 158844,dog 158845,bird 158846,dog 158847,cat 158848,dog 158849,dog 158850,airplane 158851,deer 158852,ship 158853,truck 158854,horse 158855,bird 158856,truck 158857,airplane 158858,bird 158859,dog 158860,truck 158861,airplane 158862,frog 158863,dog 158864,ship 158865,cat 158866,truck 158867,deer 158868,truck 158869,cat 158870,deer 158871,airplane 158872,automobile 158873,deer 158874,automobile 158875,frog 158876,truck 158877,airplane 158878,horse 158879,airplane 158880,automobile 158881,dog 158882,ship 158883,cat 158884,deer 158885,automobile 158886,ship 158887,deer 158888,truck 158889,dog 158890,bird 158891,horse 158892,cat 158893,frog 158894,deer 158895,dog 158896,horse 158897,truck 158898,horse 158899,cat 158900,deer 158901,truck 158902,airplane 158903,airplane 158904,frog 158905,cat 158906,truck 158907,automobile 158908,automobile 158909,deer 158910,horse 158911,truck 158912,dog 158913,horse 158914,truck 158915,deer 158916,truck 158917,frog 158918,automobile 158919,dog 158920,automobile 158921,automobile 158922,automobile 158923,frog 158924,automobile 158925,frog 158926,horse 158927,dog 158928,truck 158929,frog 158930,cat 158931,deer 158932,cat 158933,cat 158934,truck 158935,truck 158936,truck 158937,frog 158938,deer 158939,ship 158940,deer 158941,deer 158942,cat 158943,dog 158944,cat 158945,automobile 158946,frog 158947,ship 158948,airplane 158949,horse 158950,horse 158951,deer 158952,ship 158953,cat 158954,deer 158955,bird 158956,bird 158957,dog 158958,cat 158959,deer 158960,dog 158961,horse 158962,automobile 158963,frog 158964,airplane 158965,frog 158966,frog 158967,automobile 158968,frog 158969,ship 158970,frog 158971,truck 158972,dog 158973,ship 158974,ship 158975,airplane 158976,deer 158977,deer 158978,cat 158979,bird 158980,frog 158981,deer 158982,deer 158983,bird 158984,ship 158985,ship 158986,horse 158987,dog 158988,frog 158989,cat 158990,dog 158991,cat 158992,deer 158993,cat 158994,bird 158995,frog 158996,truck 158997,frog 158998,frog 158999,frog 159000,frog 159001,bird 159002,deer 159003,cat 159004,horse 159005,deer 159006,automobile 159007,bird 159008,horse 159009,ship 159010,airplane 159011,dog 159012,ship 159013,ship 159014,airplane 159015,airplane 159016,horse 159017,cat 159018,deer 159019,frog 159020,frog 159021,cat 159022,automobile 159023,bird 159024,airplane 159025,bird 159026,deer 159027,dog 159028,frog 159029,horse 159030,cat 159031,deer 159032,truck 159033,frog 159034,dog 159035,bird 159036,truck 159037,ship 159038,ship 159039,dog 159040,ship 159041,truck 159042,cat 159043,cat 159044,frog 159045,bird 159046,truck 159047,airplane 159048,truck 159049,dog 159050,ship 159051,ship 159052,deer 159053,frog 159054,ship 159055,frog 159056,airplane 159057,automobile 159058,automobile 159059,deer 159060,frog 159061,frog 159062,dog 159063,bird 159064,dog 159065,dog 159066,airplane 159067,bird 159068,deer 159069,dog 159070,truck 159071,horse 159072,dog 159073,dog 159074,truck 159075,horse 159076,airplane 159077,deer 159078,airplane 159079,deer 159080,airplane 159081,bird 159082,airplane 159083,deer 159084,bird 159085,deer 159086,cat 159087,ship 159088,cat 159089,cat 159090,cat 159091,bird 159092,automobile 159093,cat 159094,frog 159095,frog 159096,airplane 159097,horse 159098,frog 159099,automobile 159100,cat 159101,cat 159102,dog 159103,automobile 159104,cat 159105,dog 159106,dog 159107,airplane 159108,airplane 159109,horse 159110,truck 159111,automobile 159112,horse 159113,deer 159114,bird 159115,cat 159116,airplane 159117,cat 159118,ship 159119,deer 159120,frog 159121,deer 159122,cat 159123,dog 159124,automobile 159125,airplane 159126,deer 159127,frog 159128,automobile 159129,cat 159130,horse 159131,deer 159132,truck 159133,cat 159134,truck 159135,frog 159136,dog 159137,deer 159138,truck 159139,dog 159140,airplane 159141,deer 159142,cat 159143,bird 159144,bird 159145,cat 159146,cat 159147,truck 159148,horse 159149,cat 159150,deer 159151,deer 159152,dog 159153,horse 159154,horse 159155,horse 159156,deer 159157,dog 159158,truck 159159,horse 159160,deer 159161,automobile 159162,cat 159163,automobile 159164,truck 159165,bird 159166,truck 159167,cat 159168,deer 159169,frog 159170,deer 159171,cat 159172,bird 159173,cat 159174,airplane 159175,cat 159176,truck 159177,cat 159178,deer 159179,ship 159180,dog 159181,horse 159182,frog 159183,frog 159184,automobile 159185,ship 159186,deer 159187,frog 159188,horse 159189,ship 159190,automobile 159191,cat 159192,frog 159193,cat 159194,deer 159195,truck 159196,automobile 159197,truck 159198,automobile 159199,ship 159200,bird 159201,cat 159202,truck 159203,airplane 159204,cat 159205,deer 159206,dog 159207,dog 159208,truck 159209,deer 159210,airplane 159211,horse 159212,horse 159213,horse 159214,cat 159215,deer 159216,dog 159217,automobile 159218,dog 159219,deer 159220,cat 159221,deer 159222,frog 159223,dog 159224,dog 159225,ship 159226,frog 159227,horse 159228,bird 159229,truck 159230,cat 159231,ship 159232,ship 159233,dog 159234,automobile 159235,deer 159236,ship 159237,truck 159238,cat 159239,frog 159240,dog 159241,ship 159242,cat 159243,deer 159244,horse 159245,automobile 159246,dog 159247,frog 159248,deer 159249,frog 159250,frog 159251,horse 159252,cat 159253,ship 159254,cat 159255,frog 159256,truck 159257,truck 159258,frog 159259,automobile 159260,horse 159261,horse 159262,deer 159263,cat 159264,deer 159265,cat 159266,airplane 159267,ship 159268,cat 159269,ship 159270,truck 159271,cat 159272,bird 159273,cat 159274,ship 159275,automobile 159276,cat 159277,cat 159278,dog 159279,automobile 159280,deer 159281,deer 159282,deer 159283,dog 159284,deer 159285,deer 159286,frog 159287,frog 159288,bird 159289,cat 159290,ship 159291,truck 159292,bird 159293,horse 159294,cat 159295,horse 159296,frog 159297,dog 159298,cat 159299,dog 159300,airplane 159301,horse 159302,bird 159303,airplane 159304,deer 159305,horse 159306,frog 159307,deer 159308,frog 159309,ship 159310,dog 159311,frog 159312,truck 159313,airplane 159314,airplane 159315,bird 159316,dog 159317,cat 159318,frog 159319,truck 159320,horse 159321,dog 159322,bird 159323,dog 159324,truck 159325,truck 159326,automobile 159327,ship 159328,cat 159329,ship 159330,frog 159331,dog 159332,deer 159333,horse 159334,dog 159335,horse 159336,ship 159337,frog 159338,ship 159339,cat 159340,automobile 159341,ship 159342,frog 159343,frog 159344,cat 159345,airplane 159346,horse 159347,cat 159348,cat 159349,horse 159350,dog 159351,cat 159352,deer 159353,bird 159354,dog 159355,automobile 159356,horse 159357,dog 159358,airplane 159359,bird 159360,dog 159361,automobile 159362,horse 159363,deer 159364,frog 159365,cat 159366,ship 159367,frog 159368,ship 159369,deer 159370,deer 159371,deer 159372,ship 159373,frog 159374,cat 159375,bird 159376,cat 159377,automobile 159378,cat 159379,truck 159380,dog 159381,truck 159382,frog 159383,frog 159384,dog 159385,airplane 159386,automobile 159387,airplane 159388,horse 159389,cat 159390,ship 159391,dog 159392,dog 159393,ship 159394,cat 159395,automobile 159396,dog 159397,frog 159398,airplane 159399,frog 159400,cat 159401,ship 159402,dog 159403,truck 159404,cat 159405,airplane 159406,frog 159407,horse 159408,frog 159409,truck 159410,cat 159411,horse 159412,airplane 159413,airplane 159414,horse 159415,bird 159416,horse 159417,horse 159418,truck 159419,horse 159420,dog 159421,deer 159422,deer 159423,dog 159424,cat 159425,frog 159426,truck 159427,truck 159428,automobile 159429,dog 159430,deer 159431,airplane 159432,truck 159433,ship 159434,automobile 159435,bird 159436,bird 159437,ship 159438,cat 159439,airplane 159440,truck 159441,cat 159442,automobile 159443,horse 159444,frog 159445,airplane 159446,dog 159447,horse 159448,ship 159449,cat 159450,frog 159451,cat 159452,cat 159453,frog 159454,truck 159455,automobile 159456,cat 159457,bird 159458,ship 159459,dog 159460,truck 159461,automobile 159462,deer 159463,bird 159464,cat 159465,deer 159466,ship 159467,frog 159468,ship 159469,truck 159470,truck 159471,deer 159472,truck 159473,frog 159474,horse 159475,deer 159476,cat 159477,cat 159478,bird 159479,truck 159480,cat 159481,cat 159482,automobile 159483,deer 159484,dog 159485,cat 159486,deer 159487,frog 159488,cat 159489,horse 159490,truck 159491,ship 159492,truck 159493,truck 159494,deer 159495,truck 159496,cat 159497,cat 159498,cat 159499,truck 159500,automobile 159501,automobile 159502,dog 159503,cat 159504,airplane 159505,deer 159506,truck 159507,ship 159508,bird 159509,airplane 159510,frog 159511,bird 159512,cat 159513,dog 159514,automobile 159515,frog 159516,dog 159517,frog 159518,deer 159519,frog 159520,horse 159521,horse 159522,truck 159523,deer 159524,frog 159525,ship 159526,deer 159527,horse 159528,frog 159529,airplane 159530,frog 159531,ship 159532,deer 159533,bird 159534,airplane 159535,cat 159536,deer 159537,airplane 159538,frog 159539,ship 159540,truck 159541,dog 159542,truck 159543,cat 159544,truck 159545,cat 159546,automobile 159547,cat 159548,truck 159549,dog 159550,ship 159551,truck 159552,frog 159553,cat 159554,ship 159555,bird 159556,airplane 159557,cat 159558,bird 159559,dog 159560,dog 159561,ship 159562,deer 159563,airplane 159564,frog 159565,bird 159566,truck 159567,cat 159568,dog 159569,airplane 159570,truck 159571,deer 159572,dog 159573,deer 159574,automobile 159575,airplane 159576,airplane 159577,ship 159578,ship 159579,horse 159580,ship 159581,airplane 159582,dog 159583,dog 159584,bird 159585,frog 159586,airplane 159587,cat 159588,cat 159589,automobile 159590,dog 159591,deer 159592,truck 159593,truck 159594,dog 159595,truck 159596,horse 159597,automobile 159598,horse 159599,ship 159600,cat 159601,truck 159602,cat 159603,cat 159604,airplane 159605,bird 159606,bird 159607,frog 159608,airplane 159609,airplane 159610,cat 159611,ship 159612,truck 159613,cat 159614,airplane 159615,cat 159616,cat 159617,dog 159618,horse 159619,automobile 159620,bird 159621,ship 159622,ship 159623,ship 159624,dog 159625,deer 159626,bird 159627,truck 159628,frog 159629,bird 159630,truck 159631,airplane 159632,frog 159633,automobile 159634,deer 159635,airplane 159636,dog 159637,horse 159638,ship 159639,ship 159640,deer 159641,truck 159642,truck 159643,ship 159644,dog 159645,cat 159646,truck 159647,truck 159648,automobile 159649,horse 159650,bird 159651,frog 159652,horse 159653,deer 159654,ship 159655,truck 159656,frog 159657,horse 159658,bird 159659,ship 159660,dog 159661,bird 159662,ship 159663,truck 159664,automobile 159665,cat 159666,dog 159667,ship 159668,horse 159669,frog 159670,dog 159671,cat 159672,bird 159673,deer 159674,ship 159675,airplane 159676,automobile 159677,truck 159678,dog 159679,frog 159680,deer 159681,truck 159682,horse 159683,automobile 159684,horse 159685,airplane 159686,cat 159687,frog 159688,cat 159689,truck 159690,ship 159691,frog 159692,ship 159693,horse 159694,bird 159695,dog 159696,airplane 159697,cat 159698,ship 159699,airplane 159700,deer 159701,horse 159702,truck 159703,horse 159704,horse 159705,horse 159706,deer 159707,frog 159708,dog 159709,dog 159710,cat 159711,dog 159712,cat 159713,deer 159714,bird 159715,deer 159716,cat 159717,horse 159718,automobile 159719,dog 159720,deer 159721,cat 159722,deer 159723,deer 159724,cat 159725,horse 159726,frog 159727,automobile 159728,deer 159729,deer 159730,automobile 159731,horse 159732,horse 159733,frog 159734,deer 159735,frog 159736,dog 159737,ship 159738,cat 159739,deer 159740,deer 159741,horse 159742,frog 159743,truck 159744,deer 159745,dog 159746,cat 159747,frog 159748,deer 159749,deer 159750,ship 159751,truck 159752,airplane 159753,deer 159754,frog 159755,ship 159756,airplane 159757,dog 159758,frog 159759,truck 159760,bird 159761,cat 159762,deer 159763,frog 159764,deer 159765,truck 159766,automobile 159767,bird 159768,cat 159769,deer 159770,frog 159771,bird 159772,truck 159773,deer 159774,airplane 159775,frog 159776,bird 159777,cat 159778,deer 159779,cat 159780,truck 159781,dog 159782,deer 159783,horse 159784,cat 159785,cat 159786,automobile 159787,airplane 159788,frog 159789,bird 159790,truck 159791,automobile 159792,truck 159793,dog 159794,frog 159795,deer 159796,ship 159797,ship 159798,deer 159799,deer 159800,cat 159801,dog 159802,bird 159803,automobile 159804,cat 159805,airplane 159806,ship 159807,airplane 159808,cat 159809,dog 159810,airplane 159811,airplane 159812,ship 159813,horse 159814,airplane 159815,frog 159816,automobile 159817,frog 159818,truck 159819,frog 159820,deer 159821,frog 159822,automobile 159823,cat 159824,horse 159825,frog 159826,deer 159827,cat 159828,horse 159829,airplane 159830,frog 159831,cat 159832,truck 159833,deer 159834,frog 159835,cat 159836,bird 159837,bird 159838,cat 159839,bird 159840,automobile 159841,deer 159842,cat 159843,bird 159844,cat 159845,cat 159846,dog 159847,bird 159848,horse 159849,bird 159850,bird 159851,dog 159852,dog 159853,deer 159854,deer 159855,deer 159856,bird 159857,cat 159858,automobile 159859,cat 159860,ship 159861,airplane 159862,frog 159863,cat 159864,dog 159865,horse 159866,frog 159867,cat 159868,bird 159869,truck 159870,dog 159871,automobile 159872,dog 159873,horse 159874,dog 159875,deer 159876,dog 159877,horse 159878,cat 159879,frog 159880,bird 159881,bird 159882,horse 159883,deer 159884,frog 159885,airplane 159886,deer 159887,bird 159888,truck 159889,deer 159890,dog 159891,ship 159892,horse 159893,automobile 159894,deer 159895,airplane 159896,ship 159897,cat 159898,deer 159899,airplane 159900,horse 159901,ship 159902,truck 159903,cat 159904,frog 159905,airplane 159906,ship 159907,ship 159908,dog 159909,airplane 159910,airplane 159911,bird 159912,dog 159913,truck 159914,airplane 159915,airplane 159916,automobile 159917,truck 159918,horse 159919,bird 159920,dog 159921,dog 159922,truck 159923,truck 159924,deer 159925,frog 159926,airplane 159927,ship 159928,horse 159929,dog 159930,airplane 159931,bird 159932,deer 159933,frog 159934,truck 159935,horse 159936,horse 159937,cat 159938,bird 159939,truck 159940,cat 159941,bird 159942,cat 159943,deer 159944,ship 159945,deer 159946,bird 159947,ship 159948,cat 159949,cat 159950,horse 159951,airplane 159952,deer 159953,bird 159954,bird 159955,truck 159956,cat 159957,cat 159958,airplane 159959,horse 159960,automobile 159961,cat 159962,horse 159963,truck 159964,automobile 159965,dog 159966,bird 159967,bird 159968,cat 159969,automobile 159970,bird 159971,cat 159972,truck 159973,truck 159974,frog 159975,truck 159976,airplane 159977,cat 159978,horse 159979,horse 159980,frog 159981,frog 159982,truck 159983,horse 159984,deer 159985,airplane 159986,cat 159987,dog 159988,deer 159989,truck 159990,ship 159991,airplane 159992,ship 159993,cat 159994,frog 159995,horse 159996,dog 159997,horse 159998,cat 159999,dog 160000,cat 160001,horse 160002,airplane 160003,airplane 160004,cat 160005,cat 160006,airplane 160007,frog 160008,airplane 160009,frog 160010,deer 160011,airplane 160012,deer 160013,deer 160014,ship 160015,automobile 160016,dog 160017,cat 160018,deer 160019,bird 160020,cat 160021,deer 160022,cat 160023,deer 160024,truck 160025,bird 160026,ship 160027,truck 160028,cat 160029,truck 160030,horse 160031,horse 160032,automobile 160033,truck 160034,dog 160035,ship 160036,frog 160037,deer 160038,dog 160039,dog 160040,airplane 160041,ship 160042,airplane 160043,cat 160044,airplane 160045,deer 160046,deer 160047,bird 160048,ship 160049,frog 160050,dog 160051,horse 160052,deer 160053,dog 160054,horse 160055,deer 160056,frog 160057,ship 160058,cat 160059,deer 160060,deer 160061,cat 160062,cat 160063,frog 160064,frog 160065,frog 160066,automobile 160067,horse 160068,automobile 160069,bird 160070,frog 160071,cat 160072,bird 160073,horse 160074,ship 160075,airplane 160076,bird 160077,bird 160078,automobile 160079,bird 160080,bird 160081,automobile 160082,cat 160083,automobile 160084,horse 160085,airplane 160086,ship 160087,bird 160088,cat 160089,automobile 160090,ship 160091,horse 160092,automobile 160093,automobile 160094,bird 160095,cat 160096,deer 160097,airplane 160098,truck 160099,frog 160100,horse 160101,frog 160102,frog 160103,automobile 160104,horse 160105,deer 160106,cat 160107,frog 160108,truck 160109,ship 160110,horse 160111,frog 160112,ship 160113,airplane 160114,dog 160115,truck 160116,cat 160117,frog 160118,airplane 160119,bird 160120,automobile 160121,bird 160122,ship 160123,deer 160124,bird 160125,frog 160126,dog 160127,automobile 160128,deer 160129,ship 160130,airplane 160131,airplane 160132,ship 160133,deer 160134,truck 160135,bird 160136,dog 160137,deer 160138,airplane 160139,dog 160140,automobile 160141,airplane 160142,frog 160143,dog 160144,deer 160145,ship 160146,airplane 160147,frog 160148,truck 160149,dog 160150,deer 160151,cat 160152,ship 160153,deer 160154,automobile 160155,truck 160156,truck 160157,deer 160158,cat 160159,frog 160160,frog 160161,horse 160162,horse 160163,horse 160164,ship 160165,bird 160166,bird 160167,cat 160168,horse 160169,bird 160170,deer 160171,ship 160172,dog 160173,bird 160174,truck 160175,bird 160176,frog 160177,airplane 160178,horse 160179,dog 160180,cat 160181,horse 160182,airplane 160183,frog 160184,truck 160185,truck 160186,horse 160187,airplane 160188,ship 160189,truck 160190,horse 160191,frog 160192,cat 160193,deer 160194,horse 160195,deer 160196,horse 160197,deer 160198,cat 160199,frog 160200,horse 160201,dog 160202,truck 160203,deer 160204,automobile 160205,deer 160206,frog 160207,dog 160208,deer 160209,automobile 160210,frog 160211,cat 160212,frog 160213,deer 160214,frog 160215,ship 160216,cat 160217,frog 160218,cat 160219,deer 160220,deer 160221,automobile 160222,frog 160223,truck 160224,deer 160225,frog 160226,cat 160227,frog 160228,airplane 160229,dog 160230,ship 160231,horse 160232,airplane 160233,bird 160234,frog 160235,bird 160236,truck 160237,ship 160238,frog 160239,cat 160240,truck 160241,airplane 160242,truck 160243,frog 160244,cat 160245,airplane 160246,cat 160247,dog 160248,dog 160249,bird 160250,ship 160251,airplane 160252,truck 160253,bird 160254,deer 160255,truck 160256,cat 160257,deer 160258,airplane 160259,truck 160260,bird 160261,deer 160262,frog 160263,truck 160264,deer 160265,airplane 160266,dog 160267,ship 160268,deer 160269,cat 160270,dog 160271,deer 160272,deer 160273,frog 160274,airplane 160275,frog 160276,automobile 160277,deer 160278,cat 160279,truck 160280,cat 160281,bird 160282,horse 160283,horse 160284,truck 160285,ship 160286,horse 160287,frog 160288,dog 160289,frog 160290,airplane 160291,ship 160292,cat 160293,bird 160294,bird 160295,frog 160296,automobile 160297,ship 160298,cat 160299,dog 160300,cat 160301,horse 160302,ship 160303,truck 160304,dog 160305,airplane 160306,deer 160307,cat 160308,ship 160309,truck 160310,airplane 160311,truck 160312,automobile 160313,dog 160314,frog 160315,bird 160316,frog 160317,truck 160318,bird 160319,frog 160320,frog 160321,dog 160322,cat 160323,ship 160324,airplane 160325,horse 160326,cat 160327,cat 160328,cat 160329,cat 160330,cat 160331,ship 160332,frog 160333,frog 160334,bird 160335,deer 160336,frog 160337,dog 160338,automobile 160339,deer 160340,automobile 160341,frog 160342,frog 160343,dog 160344,horse 160345,airplane 160346,frog 160347,dog 160348,dog 160349,dog 160350,bird 160351,ship 160352,horse 160353,dog 160354,dog 160355,cat 160356,dog 160357,ship 160358,frog 160359,truck 160360,dog 160361,truck 160362,bird 160363,ship 160364,bird 160365,truck 160366,automobile 160367,airplane 160368,cat 160369,frog 160370,airplane 160371,deer 160372,frog 160373,cat 160374,airplane 160375,deer 160376,truck 160377,horse 160378,horse 160379,horse 160380,frog 160381,airplane 160382,deer 160383,dog 160384,ship 160385,airplane 160386,bird 160387,frog 160388,dog 160389,dog 160390,cat 160391,horse 160392,ship 160393,cat 160394,airplane 160395,cat 160396,cat 160397,horse 160398,cat 160399,truck 160400,airplane 160401,bird 160402,truck 160403,dog 160404,airplane 160405,bird 160406,frog 160407,deer 160408,cat 160409,dog 160410,dog 160411,dog 160412,horse 160413,bird 160414,dog 160415,automobile 160416,cat 160417,frog 160418,truck 160419,horse 160420,dog 160421,truck 160422,deer 160423,deer 160424,frog 160425,dog 160426,frog 160427,truck 160428,horse 160429,ship 160430,ship 160431,dog 160432,deer 160433,frog 160434,frog 160435,airplane 160436,frog 160437,dog 160438,frog 160439,deer 160440,truck 160441,ship 160442,dog 160443,bird 160444,airplane 160445,frog 160446,truck 160447,airplane 160448,automobile 160449,automobile 160450,cat 160451,frog 160452,truck 160453,cat 160454,bird 160455,bird 160456,frog 160457,horse 160458,cat 160459,horse 160460,dog 160461,ship 160462,frog 160463,ship 160464,horse 160465,bird 160466,frog 160467,bird 160468,cat 160469,automobile 160470,cat 160471,truck 160472,automobile 160473,truck 160474,cat 160475,truck 160476,deer 160477,deer 160478,bird 160479,dog 160480,frog 160481,frog 160482,frog 160483,frog 160484,cat 160485,automobile 160486,deer 160487,airplane 160488,frog 160489,airplane 160490,frog 160491,truck 160492,dog 160493,cat 160494,dog 160495,frog 160496,dog 160497,airplane 160498,deer 160499,cat 160500,deer 160501,deer 160502,bird 160503,frog 160504,airplane 160505,airplane 160506,deer 160507,horse 160508,horse 160509,automobile 160510,cat 160511,airplane 160512,truck 160513,automobile 160514,automobile 160515,cat 160516,ship 160517,deer 160518,horse 160519,frog 160520,truck 160521,dog 160522,truck 160523,truck 160524,automobile 160525,horse 160526,automobile 160527,cat 160528,airplane 160529,deer 160530,deer 160531,automobile 160532,dog 160533,deer 160534,frog 160535,dog 160536,ship 160537,dog 160538,ship 160539,truck 160540,dog 160541,airplane 160542,cat 160543,automobile 160544,bird 160545,horse 160546,bird 160547,truck 160548,airplane 160549,dog 160550,frog 160551,cat 160552,truck 160553,bird 160554,bird 160555,horse 160556,frog 160557,frog 160558,deer 160559,truck 160560,deer 160561,automobile 160562,cat 160563,cat 160564,frog 160565,horse 160566,ship 160567,cat 160568,airplane 160569,cat 160570,horse 160571,cat 160572,truck 160573,ship 160574,cat 160575,ship 160576,truck 160577,frog 160578,truck 160579,automobile 160580,frog 160581,ship 160582,ship 160583,dog 160584,frog 160585,ship 160586,deer 160587,cat 160588,deer 160589,frog 160590,bird 160591,deer 160592,airplane 160593,deer 160594,bird 160595,ship 160596,airplane 160597,dog 160598,cat 160599,deer 160600,deer 160601,deer 160602,automobile 160603,horse 160604,airplane 160605,truck 160606,frog 160607,deer 160608,truck 160609,truck 160610,dog 160611,horse 160612,dog 160613,bird 160614,frog 160615,horse 160616,dog 160617,dog 160618,truck 160619,dog 160620,truck 160621,deer 160622,airplane 160623,horse 160624,deer 160625,frog 160626,bird 160627,truck 160628,deer 160629,frog 160630,bird 160631,truck 160632,bird 160633,frog 160634,cat 160635,ship 160636,horse 160637,dog 160638,truck 160639,truck 160640,dog 160641,truck 160642,frog 160643,deer 160644,ship 160645,horse 160646,frog 160647,deer 160648,bird 160649,airplane 160650,deer 160651,ship 160652,truck 160653,truck 160654,deer 160655,horse 160656,frog 160657,deer 160658,cat 160659,dog 160660,truck 160661,truck 160662,automobile 160663,automobile 160664,dog 160665,dog 160666,automobile 160667,deer 160668,ship 160669,airplane 160670,horse 160671,cat 160672,cat 160673,airplane 160674,horse 160675,truck 160676,cat 160677,truck 160678,frog 160679,frog 160680,frog 160681,dog 160682,frog 160683,cat 160684,horse 160685,deer 160686,truck 160687,deer 160688,ship 160689,airplane 160690,bird 160691,cat 160692,automobile 160693,frog 160694,automobile 160695,dog 160696,ship 160697,deer 160698,bird 160699,ship 160700,truck 160701,horse 160702,dog 160703,dog 160704,deer 160705,bird 160706,cat 160707,truck 160708,ship 160709,cat 160710,dog 160711,automobile 160712,airplane 160713,truck 160714,bird 160715,ship 160716,dog 160717,automobile 160718,automobile 160719,ship 160720,truck 160721,airplane 160722,frog 160723,horse 160724,bird 160725,automobile 160726,deer 160727,horse 160728,horse 160729,cat 160730,truck 160731,truck 160732,frog 160733,frog 160734,cat 160735,dog 160736,truck 160737,truck 160738,bird 160739,cat 160740,cat 160741,airplane 160742,bird 160743,horse 160744,cat 160745,horse 160746,truck 160747,automobile 160748,cat 160749,horse 160750,frog 160751,frog 160752,truck 160753,horse 160754,ship 160755,cat 160756,bird 160757,automobile 160758,automobile 160759,deer 160760,bird 160761,frog 160762,ship 160763,deer 160764,horse 160765,cat 160766,automobile 160767,frog 160768,bird 160769,ship 160770,bird 160771,deer 160772,horse 160773,frog 160774,cat 160775,frog 160776,truck 160777,dog 160778,truck 160779,cat 160780,truck 160781,truck 160782,deer 160783,horse 160784,frog 160785,truck 160786,automobile 160787,airplane 160788,ship 160789,airplane 160790,frog 160791,deer 160792,automobile 160793,horse 160794,airplane 160795,truck 160796,frog 160797,automobile 160798,dog 160799,deer 160800,cat 160801,deer 160802,horse 160803,truck 160804,airplane 160805,frog 160806,frog 160807,bird 160808,dog 160809,cat 160810,frog 160811,dog 160812,cat 160813,airplane 160814,frog 160815,cat 160816,deer 160817,ship 160818,deer 160819,horse 160820,automobile 160821,cat 160822,deer 160823,deer 160824,dog 160825,deer 160826,dog 160827,truck 160828,truck 160829,deer 160830,cat 160831,dog 160832,dog 160833,automobile 160834,cat 160835,bird 160836,airplane 160837,airplane 160838,deer 160839,deer 160840,truck 160841,cat 160842,frog 160843,horse 160844,automobile 160845,frog 160846,bird 160847,deer 160848,cat 160849,cat 160850,frog 160851,bird 160852,frog 160853,horse 160854,automobile 160855,dog 160856,frog 160857,ship 160858,bird 160859,deer 160860,deer 160861,ship 160862,ship 160863,airplane 160864,automobile 160865,cat 160866,cat 160867,frog 160868,automobile 160869,ship 160870,bird 160871,airplane 160872,cat 160873,automobile 160874,frog 160875,bird 160876,dog 160877,bird 160878,frog 160879,dog 160880,truck 160881,horse 160882,truck 160883,ship 160884,airplane 160885,deer 160886,truck 160887,cat 160888,truck 160889,horse 160890,deer 160891,automobile 160892,automobile 160893,truck 160894,automobile 160895,truck 160896,cat 160897,ship 160898,ship 160899,horse 160900,deer 160901,truck 160902,dog 160903,frog 160904,deer 160905,cat 160906,automobile 160907,ship 160908,airplane 160909,bird 160910,dog 160911,cat 160912,horse 160913,airplane 160914,cat 160915,ship 160916,deer 160917,truck 160918,truck 160919,cat 160920,horse 160921,cat 160922,automobile 160923,dog 160924,dog 160925,dog 160926,horse 160927,bird 160928,airplane 160929,ship 160930,deer 160931,airplane 160932,deer 160933,airplane 160934,cat 160935,truck 160936,cat 160937,cat 160938,deer 160939,ship 160940,truck 160941,airplane 160942,ship 160943,deer 160944,cat 160945,truck 160946,deer 160947,truck 160948,deer 160949,ship 160950,horse 160951,automobile 160952,bird 160953,automobile 160954,bird 160955,cat 160956,frog 160957,deer 160958,airplane 160959,truck 160960,horse 160961,deer 160962,frog 160963,horse 160964,horse 160965,dog 160966,deer 160967,automobile 160968,bird 160969,truck 160970,cat 160971,frog 160972,ship 160973,dog 160974,dog 160975,dog 160976,frog 160977,cat 160978,truck 160979,airplane 160980,horse 160981,deer 160982,deer 160983,cat 160984,deer 160985,truck 160986,cat 160987,ship 160988,horse 160989,deer 160990,deer 160991,deer 160992,frog 160993,dog 160994,frog 160995,deer 160996,truck 160997,frog 160998,dog 160999,cat 161000,cat 161001,airplane 161002,cat 161003,bird 161004,truck 161005,horse 161006,cat 161007,ship 161008,dog 161009,horse 161010,frog 161011,truck 161012,horse 161013,ship 161014,cat 161015,frog 161016,horse 161017,airplane 161018,cat 161019,bird 161020,horse 161021,cat 161022,dog 161023,airplane 161024,airplane 161025,dog 161026,deer 161027,cat 161028,deer 161029,ship 161030,cat 161031,automobile 161032,automobile 161033,frog 161034,automobile 161035,bird 161036,frog 161037,deer 161038,dog 161039,deer 161040,ship 161041,cat 161042,truck 161043,cat 161044,deer 161045,deer 161046,frog 161047,ship 161048,dog 161049,bird 161050,bird 161051,horse 161052,bird 161053,automobile 161054,truck 161055,cat 161056,automobile 161057,bird 161058,deer 161059,airplane 161060,horse 161061,cat 161062,ship 161063,bird 161064,truck 161065,dog 161066,dog 161067,horse 161068,cat 161069,ship 161070,cat 161071,cat 161072,airplane 161073,cat 161074,deer 161075,ship 161076,cat 161077,automobile 161078,bird 161079,horse 161080,ship 161081,dog 161082,frog 161083,ship 161084,frog 161085,dog 161086,deer 161087,dog 161088,deer 161089,automobile 161090,ship 161091,bird 161092,deer 161093,frog 161094,frog 161095,bird 161096,dog 161097,truck 161098,cat 161099,bird 161100,automobile 161101,cat 161102,bird 161103,cat 161104,cat 161105,airplane 161106,cat 161107,deer 161108,ship 161109,cat 161110,bird 161111,cat 161112,truck 161113,ship 161114,truck 161115,airplane 161116,frog 161117,deer 161118,deer 161119,truck 161120,airplane 161121,airplane 161122,bird 161123,cat 161124,automobile 161125,ship 161126,dog 161127,automobile 161128,truck 161129,dog 161130,horse 161131,automobile 161132,bird 161133,truck 161134,deer 161135,cat 161136,dog 161137,bird 161138,bird 161139,bird 161140,horse 161141,deer 161142,frog 161143,bird 161144,horse 161145,cat 161146,horse 161147,cat 161148,frog 161149,dog 161150,horse 161151,frog 161152,cat 161153,deer 161154,dog 161155,airplane 161156,cat 161157,dog 161158,horse 161159,frog 161160,bird 161161,ship 161162,frog 161163,bird 161164,airplane 161165,bird 161166,automobile 161167,horse 161168,frog 161169,bird 161170,frog 161171,bird 161172,ship 161173,airplane 161174,dog 161175,truck 161176,deer 161177,deer 161178,deer 161179,cat 161180,cat 161181,bird 161182,truck 161183,cat 161184,horse 161185,bird 161186,dog 161187,deer 161188,frog 161189,ship 161190,dog 161191,deer 161192,deer 161193,dog 161194,cat 161195,truck 161196,airplane 161197,horse 161198,horse 161199,airplane 161200,deer 161201,horse 161202,cat 161203,truck 161204,horse 161205,dog 161206,bird 161207,airplane 161208,truck 161209,truck 161210,horse 161211,dog 161212,airplane 161213,cat 161214,airplane 161215,frog 161216,cat 161217,ship 161218,bird 161219,ship 161220,truck 161221,ship 161222,airplane 161223,truck 161224,cat 161225,horse 161226,cat 161227,automobile 161228,automobile 161229,deer 161230,cat 161231,airplane 161232,deer 161233,dog 161234,deer 161235,truck 161236,frog 161237,deer 161238,frog 161239,dog 161240,truck 161241,frog 161242,airplane 161243,truck 161244,airplane 161245,bird 161246,airplane 161247,cat 161248,cat 161249,airplane 161250,horse 161251,horse 161252,dog 161253,ship 161254,dog 161255,dog 161256,bird 161257,cat 161258,dog 161259,dog 161260,cat 161261,bird 161262,deer 161263,ship 161264,cat 161265,truck 161266,cat 161267,cat 161268,dog 161269,frog 161270,dog 161271,cat 161272,ship 161273,cat 161274,automobile 161275,automobile 161276,airplane 161277,cat 161278,cat 161279,frog 161280,bird 161281,deer 161282,airplane 161283,cat 161284,cat 161285,bird 161286,cat 161287,bird 161288,deer 161289,frog 161290,automobile 161291,dog 161292,airplane 161293,frog 161294,ship 161295,bird 161296,cat 161297,cat 161298,frog 161299,cat 161300,frog 161301,horse 161302,horse 161303,frog 161304,frog 161305,dog 161306,dog 161307,truck 161308,horse 161309,deer 161310,deer 161311,ship 161312,frog 161313,bird 161314,horse 161315,frog 161316,dog 161317,truck 161318,cat 161319,airplane 161320,bird 161321,frog 161322,deer 161323,ship 161324,bird 161325,horse 161326,ship 161327,truck 161328,bird 161329,airplane 161330,airplane 161331,automobile 161332,truck 161333,ship 161334,bird 161335,frog 161336,bird 161337,airplane 161338,cat 161339,airplane 161340,bird 161341,deer 161342,ship 161343,horse 161344,airplane 161345,ship 161346,ship 161347,dog 161348,automobile 161349,frog 161350,horse 161351,dog 161352,horse 161353,automobile 161354,horse 161355,deer 161356,frog 161357,frog 161358,deer 161359,airplane 161360,horse 161361,cat 161362,ship 161363,frog 161364,automobile 161365,deer 161366,cat 161367,cat 161368,ship 161369,cat 161370,airplane 161371,cat 161372,frog 161373,frog 161374,deer 161375,frog 161376,horse 161377,dog 161378,airplane 161379,deer 161380,dog 161381,bird 161382,horse 161383,frog 161384,automobile 161385,ship 161386,bird 161387,truck 161388,truck 161389,dog 161390,airplane 161391,bird 161392,cat 161393,automobile 161394,deer 161395,bird 161396,horse 161397,ship 161398,truck 161399,bird 161400,ship 161401,deer 161402,cat 161403,horse 161404,dog 161405,dog 161406,airplane 161407,deer 161408,truck 161409,deer 161410,automobile 161411,deer 161412,horse 161413,airplane 161414,ship 161415,cat 161416,airplane 161417,cat 161418,horse 161419,horse 161420,cat 161421,dog 161422,truck 161423,truck 161424,dog 161425,bird 161426,ship 161427,bird 161428,airplane 161429,truck 161430,airplane 161431,frog 161432,frog 161433,frog 161434,ship 161435,horse 161436,frog 161437,frog 161438,horse 161439,deer 161440,ship 161441,dog 161442,truck 161443,truck 161444,truck 161445,airplane 161446,automobile 161447,bird 161448,deer 161449,bird 161450,frog 161451,frog 161452,airplane 161453,ship 161454,automobile 161455,cat 161456,airplane 161457,dog 161458,cat 161459,deer 161460,airplane 161461,frog 161462,ship 161463,truck 161464,bird 161465,bird 161466,frog 161467,horse 161468,deer 161469,dog 161470,bird 161471,ship 161472,truck 161473,horse 161474,airplane 161475,automobile 161476,deer 161477,cat 161478,frog 161479,airplane 161480,bird 161481,horse 161482,cat 161483,deer 161484,ship 161485,deer 161486,truck 161487,airplane 161488,automobile 161489,cat 161490,truck 161491,truck 161492,dog 161493,horse 161494,ship 161495,frog 161496,horse 161497,deer 161498,ship 161499,ship 161500,cat 161501,truck 161502,cat 161503,truck 161504,deer 161505,bird 161506,frog 161507,cat 161508,dog 161509,cat 161510,frog 161511,frog 161512,airplane 161513,deer 161514,deer 161515,dog 161516,bird 161517,airplane 161518,bird 161519,horse 161520,truck 161521,cat 161522,deer 161523,dog 161524,horse 161525,truck 161526,cat 161527,ship 161528,airplane 161529,cat 161530,automobile 161531,truck 161532,deer 161533,cat 161534,bird 161535,deer 161536,dog 161537,frog 161538,truck 161539,truck 161540,cat 161541,cat 161542,cat 161543,cat 161544,airplane 161545,cat 161546,dog 161547,airplane 161548,dog 161549,cat 161550,ship 161551,deer 161552,ship 161553,frog 161554,deer 161555,deer 161556,ship 161557,truck 161558,bird 161559,dog 161560,bird 161561,horse 161562,deer 161563,deer 161564,truck 161565,truck 161566,horse 161567,dog 161568,automobile 161569,deer 161570,frog 161571,ship 161572,ship 161573,ship 161574,automobile 161575,dog 161576,frog 161577,horse 161578,horse 161579,bird 161580,frog 161581,truck 161582,airplane 161583,airplane 161584,dog 161585,dog 161586,truck 161587,bird 161588,frog 161589,deer 161590,truck 161591,bird 161592,ship 161593,cat 161594,truck 161595,truck 161596,airplane 161597,truck 161598,bird 161599,automobile 161600,airplane 161601,ship 161602,horse 161603,dog 161604,deer 161605,dog 161606,deer 161607,ship 161608,ship 161609,dog 161610,bird 161611,deer 161612,frog 161613,cat 161614,truck 161615,bird 161616,cat 161617,bird 161618,ship 161619,dog 161620,frog 161621,ship 161622,deer 161623,automobile 161624,truck 161625,dog 161626,ship 161627,bird 161628,cat 161629,ship 161630,bird 161631,bird 161632,deer 161633,cat 161634,dog 161635,frog 161636,deer 161637,frog 161638,dog 161639,ship 161640,truck 161641,frog 161642,cat 161643,cat 161644,cat 161645,dog 161646,ship 161647,horse 161648,deer 161649,frog 161650,bird 161651,ship 161652,bird 161653,truck 161654,cat 161655,dog 161656,bird 161657,airplane 161658,horse 161659,truck 161660,deer 161661,automobile 161662,automobile 161663,deer 161664,truck 161665,truck 161666,airplane 161667,deer 161668,deer 161669,truck 161670,frog 161671,dog 161672,ship 161673,deer 161674,deer 161675,ship 161676,dog 161677,airplane 161678,horse 161679,automobile 161680,ship 161681,cat 161682,cat 161683,truck 161684,cat 161685,frog 161686,bird 161687,truck 161688,horse 161689,airplane 161690,cat 161691,dog 161692,automobile 161693,dog 161694,automobile 161695,horse 161696,automobile 161697,frog 161698,dog 161699,truck 161700,frog 161701,dog 161702,automobile 161703,cat 161704,dog 161705,cat 161706,horse 161707,airplane 161708,automobile 161709,ship 161710,dog 161711,airplane 161712,bird 161713,deer 161714,ship 161715,automobile 161716,truck 161717,frog 161718,bird 161719,deer 161720,horse 161721,horse 161722,airplane 161723,deer 161724,bird 161725,horse 161726,bird 161727,cat 161728,ship 161729,truck 161730,cat 161731,airplane 161732,cat 161733,dog 161734,ship 161735,ship 161736,frog 161737,horse 161738,automobile 161739,cat 161740,deer 161741,horse 161742,frog 161743,bird 161744,frog 161745,horse 161746,deer 161747,ship 161748,truck 161749,bird 161750,truck 161751,frog 161752,frog 161753,bird 161754,horse 161755,deer 161756,frog 161757,truck 161758,cat 161759,automobile 161760,ship 161761,truck 161762,automobile 161763,frog 161764,frog 161765,deer 161766,frog 161767,deer 161768,frog 161769,automobile 161770,automobile 161771,automobile 161772,frog 161773,airplane 161774,deer 161775,bird 161776,automobile 161777,horse 161778,cat 161779,cat 161780,deer 161781,airplane 161782,deer 161783,ship 161784,horse 161785,ship 161786,truck 161787,dog 161788,deer 161789,automobile 161790,cat 161791,deer 161792,airplane 161793,ship 161794,airplane 161795,automobile 161796,frog 161797,airplane 161798,dog 161799,frog 161800,ship 161801,deer 161802,deer 161803,airplane 161804,bird 161805,frog 161806,deer 161807,frog 161808,horse 161809,dog 161810,cat 161811,truck 161812,cat 161813,frog 161814,frog 161815,ship 161816,horse 161817,automobile 161818,cat 161819,truck 161820,automobile 161821,airplane 161822,frog 161823,airplane 161824,horse 161825,dog 161826,deer 161827,deer 161828,dog 161829,horse 161830,dog 161831,dog 161832,cat 161833,ship 161834,truck 161835,cat 161836,bird 161837,horse 161838,frog 161839,frog 161840,cat 161841,ship 161842,horse 161843,deer 161844,airplane 161845,horse 161846,horse 161847,truck 161848,deer 161849,dog 161850,airplane 161851,airplane 161852,deer 161853,deer 161854,cat 161855,truck 161856,horse 161857,cat 161858,automobile 161859,deer 161860,deer 161861,airplane 161862,ship 161863,dog 161864,airplane 161865,airplane 161866,frog 161867,horse 161868,airplane 161869,truck 161870,ship 161871,dog 161872,automobile 161873,frog 161874,bird 161875,bird 161876,truck 161877,deer 161878,frog 161879,ship 161880,frog 161881,deer 161882,frog 161883,truck 161884,deer 161885,airplane 161886,frog 161887,horse 161888,cat 161889,airplane 161890,frog 161891,bird 161892,deer 161893,bird 161894,deer 161895,horse 161896,frog 161897,bird 161898,truck 161899,cat 161900,ship 161901,automobile 161902,dog 161903,automobile 161904,cat 161905,automobile 161906,dog 161907,bird 161908,dog 161909,deer 161910,ship 161911,truck 161912,airplane 161913,truck 161914,truck 161915,horse 161916,frog 161917,bird 161918,bird 161919,truck 161920,frog 161921,airplane 161922,truck 161923,automobile 161924,deer 161925,horse 161926,ship 161927,ship 161928,bird 161929,deer 161930,automobile 161931,deer 161932,ship 161933,bird 161934,frog 161935,truck 161936,horse 161937,automobile 161938,frog 161939,cat 161940,bird 161941,cat 161942,automobile 161943,airplane 161944,horse 161945,deer 161946,truck 161947,automobile 161948,dog 161949,dog 161950,dog 161951,dog 161952,deer 161953,cat 161954,ship 161955,frog 161956,automobile 161957,airplane 161958,ship 161959,frog 161960,bird 161961,truck 161962,ship 161963,truck 161964,cat 161965,bird 161966,horse 161967,cat 161968,airplane 161969,truck 161970,frog 161971,deer 161972,deer 161973,horse 161974,deer 161975,dog 161976,cat 161977,horse 161978,horse 161979,dog 161980,cat 161981,dog 161982,cat 161983,truck 161984,deer 161985,automobile 161986,dog 161987,deer 161988,deer 161989,dog 161990,dog 161991,truck 161992,dog 161993,truck 161994,deer 161995,airplane 161996,deer 161997,deer 161998,automobile 161999,bird 162000,truck 162001,ship 162002,dog 162003,deer 162004,frog 162005,truck 162006,bird 162007,cat 162008,horse 162009,ship 162010,ship 162011,cat 162012,horse 162013,horse 162014,truck 162015,dog 162016,ship 162017,deer 162018,ship 162019,ship 162020,horse 162021,bird 162022,airplane 162023,frog 162024,truck 162025,frog 162026,airplane 162027,ship 162028,horse 162029,airplane 162030,dog 162031,ship 162032,cat 162033,horse 162034,bird 162035,deer 162036,horse 162037,frog 162038,airplane 162039,deer 162040,deer 162041,deer 162042,frog 162043,dog 162044,truck 162045,horse 162046,truck 162047,cat 162048,dog 162049,ship 162050,frog 162051,dog 162052,airplane 162053,airplane 162054,cat 162055,deer 162056,automobile 162057,frog 162058,airplane 162059,truck 162060,automobile 162061,cat 162062,cat 162063,ship 162064,frog 162065,truck 162066,bird 162067,deer 162068,horse 162069,cat 162070,airplane 162071,ship 162072,cat 162073,deer 162074,horse 162075,frog 162076,automobile 162077,bird 162078,bird 162079,frog 162080,airplane 162081,ship 162082,cat 162083,deer 162084,frog 162085,cat 162086,truck 162087,deer 162088,horse 162089,deer 162090,cat 162091,horse 162092,horse 162093,truck 162094,deer 162095,automobile 162096,truck 162097,horse 162098,dog 162099,deer 162100,bird 162101,deer 162102,frog 162103,airplane 162104,truck 162105,frog 162106,deer 162107,frog 162108,truck 162109,bird 162110,cat 162111,horse 162112,cat 162113,dog 162114,automobile 162115,deer 162116,airplane 162117,bird 162118,bird 162119,deer 162120,dog 162121,automobile 162122,bird 162123,horse 162124,deer 162125,frog 162126,airplane 162127,cat 162128,truck 162129,automobile 162130,airplane 162131,airplane 162132,deer 162133,deer 162134,truck 162135,airplane 162136,cat 162137,horse 162138,truck 162139,frog 162140,automobile 162141,truck 162142,frog 162143,deer 162144,cat 162145,automobile 162146,deer 162147,airplane 162148,airplane 162149,truck 162150,dog 162151,ship 162152,horse 162153,frog 162154,frog 162155,airplane 162156,truck 162157,horse 162158,ship 162159,bird 162160,deer 162161,deer 162162,deer 162163,cat 162164,deer 162165,dog 162166,dog 162167,horse 162168,dog 162169,automobile 162170,ship 162171,dog 162172,cat 162173,ship 162174,frog 162175,cat 162176,horse 162177,automobile 162178,truck 162179,bird 162180,cat 162181,frog 162182,dog 162183,automobile 162184,airplane 162185,truck 162186,frog 162187,frog 162188,frog 162189,cat 162190,horse 162191,horse 162192,deer 162193,dog 162194,ship 162195,truck 162196,ship 162197,dog 162198,bird 162199,deer 162200,dog 162201,truck 162202,ship 162203,ship 162204,truck 162205,cat 162206,ship 162207,horse 162208,bird 162209,bird 162210,dog 162211,ship 162212,ship 162213,deer 162214,truck 162215,frog 162216,automobile 162217,bird 162218,dog 162219,dog 162220,truck 162221,cat 162222,deer 162223,cat 162224,frog 162225,deer 162226,deer 162227,deer 162228,cat 162229,horse 162230,deer 162231,truck 162232,ship 162233,truck 162234,automobile 162235,truck 162236,frog 162237,automobile 162238,bird 162239,frog 162240,truck 162241,cat 162242,airplane 162243,bird 162244,horse 162245,cat 162246,ship 162247,cat 162248,automobile 162249,ship 162250,deer 162251,horse 162252,airplane 162253,cat 162254,horse 162255,horse 162256,frog 162257,deer 162258,cat 162259,cat 162260,dog 162261,ship 162262,cat 162263,automobile 162264,dog 162265,truck 162266,horse 162267,cat 162268,dog 162269,truck 162270,automobile 162271,horse 162272,deer 162273,cat 162274,bird 162275,horse 162276,deer 162277,cat 162278,cat 162279,bird 162280,cat 162281,automobile 162282,airplane 162283,deer 162284,cat 162285,cat 162286,cat 162287,bird 162288,airplane 162289,ship 162290,airplane 162291,horse 162292,cat 162293,dog 162294,deer 162295,cat 162296,frog 162297,deer 162298,bird 162299,deer 162300,airplane 162301,ship 162302,truck 162303,ship 162304,truck 162305,ship 162306,automobile 162307,deer 162308,frog 162309,deer 162310,frog 162311,horse 162312,horse 162313,frog 162314,horse 162315,deer 162316,frog 162317,deer 162318,cat 162319,ship 162320,deer 162321,airplane 162322,airplane 162323,horse 162324,truck 162325,truck 162326,dog 162327,bird 162328,cat 162329,dog 162330,frog 162331,deer 162332,deer 162333,cat 162334,cat 162335,frog 162336,frog 162337,ship 162338,ship 162339,automobile 162340,ship 162341,truck 162342,airplane 162343,automobile 162344,dog 162345,bird 162346,bird 162347,deer 162348,dog 162349,bird 162350,horse 162351,bird 162352,frog 162353,deer 162354,deer 162355,deer 162356,cat 162357,horse 162358,bird 162359,ship 162360,horse 162361,deer 162362,deer 162363,deer 162364,deer 162365,bird 162366,truck 162367,deer 162368,cat 162369,truck 162370,deer 162371,horse 162372,bird 162373,cat 162374,deer 162375,dog 162376,dog 162377,cat 162378,frog 162379,bird 162380,ship 162381,frog 162382,cat 162383,cat 162384,ship 162385,dog 162386,ship 162387,cat 162388,frog 162389,automobile 162390,cat 162391,dog 162392,horse 162393,bird 162394,bird 162395,truck 162396,deer 162397,ship 162398,deer 162399,horse 162400,airplane 162401,ship 162402,truck 162403,deer 162404,airplane 162405,truck 162406,frog 162407,deer 162408,frog 162409,frog 162410,automobile 162411,horse 162412,ship 162413,dog 162414,horse 162415,bird 162416,airplane 162417,bird 162418,dog 162419,deer 162420,frog 162421,bird 162422,horse 162423,frog 162424,deer 162425,deer 162426,cat 162427,deer 162428,airplane 162429,horse 162430,dog 162431,deer 162432,deer 162433,ship 162434,dog 162435,airplane 162436,frog 162437,frog 162438,ship 162439,horse 162440,frog 162441,cat 162442,deer 162443,frog 162444,cat 162445,airplane 162446,frog 162447,deer 162448,truck 162449,frog 162450,automobile 162451,airplane 162452,horse 162453,dog 162454,airplane 162455,horse 162456,truck 162457,horse 162458,cat 162459,frog 162460,ship 162461,bird 162462,deer 162463,truck 162464,ship 162465,truck 162466,frog 162467,deer 162468,horse 162469,deer 162470,truck 162471,cat 162472,automobile 162473,deer 162474,dog 162475,frog 162476,truck 162477,ship 162478,bird 162479,deer 162480,deer 162481,dog 162482,dog 162483,dog 162484,automobile 162485,truck 162486,bird 162487,cat 162488,ship 162489,horse 162490,airplane 162491,frog 162492,ship 162493,dog 162494,deer 162495,deer 162496,deer 162497,bird 162498,deer 162499,frog 162500,ship 162501,frog 162502,cat 162503,ship 162504,airplane 162505,deer 162506,frog 162507,ship 162508,cat 162509,frog 162510,dog 162511,frog 162512,ship 162513,dog 162514,deer 162515,ship 162516,deer 162517,truck 162518,ship 162519,cat 162520,deer 162521,horse 162522,ship 162523,automobile 162524,frog 162525,horse 162526,frog 162527,truck 162528,bird 162529,ship 162530,bird 162531,deer 162532,cat 162533,truck 162534,frog 162535,deer 162536,automobile 162537,airplane 162538,automobile 162539,truck 162540,deer 162541,dog 162542,horse 162543,horse 162544,dog 162545,dog 162546,truck 162547,deer 162548,cat 162549,dog 162550,airplane 162551,frog 162552,truck 162553,truck 162554,ship 162555,cat 162556,dog 162557,deer 162558,truck 162559,frog 162560,cat 162561,cat 162562,deer 162563,ship 162564,deer 162565,frog 162566,airplane 162567,frog 162568,truck 162569,ship 162570,airplane 162571,cat 162572,truck 162573,dog 162574,automobile 162575,automobile 162576,cat 162577,dog 162578,ship 162579,cat 162580,bird 162581,deer 162582,dog 162583,deer 162584,dog 162585,deer 162586,dog 162587,cat 162588,bird 162589,automobile 162590,horse 162591,dog 162592,horse 162593,truck 162594,airplane 162595,cat 162596,horse 162597,airplane 162598,horse 162599,truck 162600,cat 162601,truck 162602,bird 162603,dog 162604,truck 162605,bird 162606,truck 162607,bird 162608,dog 162609,truck 162610,truck 162611,deer 162612,frog 162613,ship 162614,frog 162615,deer 162616,frog 162617,bird 162618,deer 162619,airplane 162620,ship 162621,dog 162622,ship 162623,cat 162624,ship 162625,cat 162626,truck 162627,dog 162628,horse 162629,deer 162630,ship 162631,bird 162632,horse 162633,frog 162634,bird 162635,deer 162636,cat 162637,truck 162638,bird 162639,ship 162640,bird 162641,deer 162642,ship 162643,airplane 162644,bird 162645,truck 162646,cat 162647,dog 162648,deer 162649,frog 162650,frog 162651,bird 162652,automobile 162653,dog 162654,cat 162655,ship 162656,deer 162657,frog 162658,bird 162659,deer 162660,ship 162661,cat 162662,deer 162663,truck 162664,truck 162665,horse 162666,deer 162667,cat 162668,horse 162669,truck 162670,automobile 162671,deer 162672,cat 162673,automobile 162674,deer 162675,cat 162676,cat 162677,cat 162678,frog 162679,frog 162680,airplane 162681,horse 162682,airplane 162683,cat 162684,bird 162685,automobile 162686,automobile 162687,deer 162688,horse 162689,deer 162690,horse 162691,dog 162692,bird 162693,cat 162694,ship 162695,deer 162696,automobile 162697,dog 162698,cat 162699,cat 162700,horse 162701,frog 162702,ship 162703,frog 162704,ship 162705,frog 162706,bird 162707,ship 162708,cat 162709,airplane 162710,ship 162711,ship 162712,deer 162713,dog 162714,frog 162715,truck 162716,deer 162717,ship 162718,bird 162719,deer 162720,cat 162721,bird 162722,truck 162723,dog 162724,dog 162725,frog 162726,horse 162727,frog 162728,automobile 162729,truck 162730,frog 162731,dog 162732,deer 162733,cat 162734,deer 162735,truck 162736,truck 162737,automobile 162738,truck 162739,horse 162740,truck 162741,frog 162742,horse 162743,bird 162744,frog 162745,dog 162746,truck 162747,dog 162748,horse 162749,horse 162750,deer 162751,horse 162752,frog 162753,deer 162754,dog 162755,dog 162756,frog 162757,deer 162758,horse 162759,truck 162760,ship 162761,airplane 162762,deer 162763,airplane 162764,truck 162765,frog 162766,horse 162767,automobile 162768,truck 162769,deer 162770,cat 162771,horse 162772,deer 162773,horse 162774,bird 162775,cat 162776,bird 162777,horse 162778,automobile 162779,horse 162780,horse 162781,truck 162782,bird 162783,deer 162784,truck 162785,horse 162786,cat 162787,truck 162788,airplane 162789,deer 162790,bird 162791,airplane 162792,horse 162793,deer 162794,deer 162795,automobile 162796,ship 162797,truck 162798,deer 162799,cat 162800,cat 162801,dog 162802,cat 162803,deer 162804,dog 162805,truck 162806,frog 162807,deer 162808,horse 162809,deer 162810,horse 162811,deer 162812,cat 162813,automobile 162814,airplane 162815,ship 162816,truck 162817,cat 162818,automobile 162819,deer 162820,automobile 162821,bird 162822,dog 162823,frog 162824,frog 162825,frog 162826,truck 162827,horse 162828,truck 162829,ship 162830,deer 162831,bird 162832,bird 162833,frog 162834,truck 162835,frog 162836,automobile 162837,dog 162838,frog 162839,horse 162840,truck 162841,dog 162842,truck 162843,deer 162844,automobile 162845,cat 162846,automobile 162847,frog 162848,cat 162849,bird 162850,cat 162851,horse 162852,truck 162853,ship 162854,dog 162855,ship 162856,horse 162857,truck 162858,dog 162859,truck 162860,airplane 162861,cat 162862,automobile 162863,cat 162864,frog 162865,bird 162866,ship 162867,frog 162868,deer 162869,horse 162870,horse 162871,deer 162872,deer 162873,cat 162874,truck 162875,automobile 162876,dog 162877,truck 162878,frog 162879,deer 162880,truck 162881,bird 162882,bird 162883,horse 162884,bird 162885,horse 162886,horse 162887,airplane 162888,automobile 162889,airplane 162890,bird 162891,horse 162892,airplane 162893,bird 162894,bird 162895,ship 162896,ship 162897,bird 162898,ship 162899,bird 162900,automobile 162901,horse 162902,dog 162903,cat 162904,automobile 162905,cat 162906,ship 162907,horse 162908,horse 162909,truck 162910,horse 162911,frog 162912,frog 162913,dog 162914,horse 162915,bird 162916,airplane 162917,cat 162918,truck 162919,deer 162920,dog 162921,bird 162922,frog 162923,ship 162924,frog 162925,cat 162926,airplane 162927,horse 162928,ship 162929,frog 162930,airplane 162931,frog 162932,dog 162933,deer 162934,automobile 162935,frog 162936,frog 162937,dog 162938,cat 162939,automobile 162940,dog 162941,deer 162942,horse 162943,frog 162944,frog 162945,horse 162946,deer 162947,cat 162948,deer 162949,automobile 162950,automobile 162951,frog 162952,horse 162953,deer 162954,deer 162955,deer 162956,cat 162957,deer 162958,airplane 162959,automobile 162960,bird 162961,dog 162962,airplane 162963,deer 162964,horse 162965,bird 162966,dog 162967,frog 162968,cat 162969,airplane 162970,dog 162971,deer 162972,bird 162973,frog 162974,automobile 162975,automobile 162976,ship 162977,ship 162978,deer 162979,cat 162980,horse 162981,ship 162982,frog 162983,bird 162984,deer 162985,truck 162986,airplane 162987,deer 162988,frog 162989,truck 162990,cat 162991,cat 162992,bird 162993,dog 162994,frog 162995,bird 162996,cat 162997,dog 162998,cat 162999,bird 163000,truck 163001,truck 163002,deer 163003,dog 163004,cat 163005,cat 163006,cat 163007,dog 163008,frog 163009,dog 163010,cat 163011,horse 163012,frog 163013,airplane 163014,horse 163015,horse 163016,airplane 163017,horse 163018,dog 163019,horse 163020,cat 163021,automobile 163022,frog 163023,dog 163024,horse 163025,bird 163026,airplane 163027,airplane 163028,deer 163029,horse 163030,truck 163031,airplane 163032,dog 163033,frog 163034,bird 163035,truck 163036,cat 163037,deer 163038,frog 163039,bird 163040,dog 163041,dog 163042,cat 163043,airplane 163044,dog 163045,cat 163046,airplane 163047,truck 163048,ship 163049,bird 163050,cat 163051,dog 163052,bird 163053,deer 163054,airplane 163055,deer 163056,airplane 163057,deer 163058,deer 163059,truck 163060,horse 163061,cat 163062,frog 163063,airplane 163064,deer 163065,deer 163066,cat 163067,truck 163068,bird 163069,dog 163070,deer 163071,truck 163072,bird 163073,airplane 163074,automobile 163075,deer 163076,ship 163077,deer 163078,dog 163079,bird 163080,dog 163081,bird 163082,horse 163083,frog 163084,deer 163085,dog 163086,cat 163087,automobile 163088,bird 163089,cat 163090,cat 163091,dog 163092,truck 163093,dog 163094,cat 163095,cat 163096,bird 163097,dog 163098,dog 163099,truck 163100,horse 163101,bird 163102,bird 163103,automobile 163104,airplane 163105,automobile 163106,horse 163107,dog 163108,automobile 163109,automobile 163110,horse 163111,cat 163112,cat 163113,truck 163114,cat 163115,automobile 163116,cat 163117,ship 163118,bird 163119,cat 163120,frog 163121,cat 163122,airplane 163123,dog 163124,bird 163125,bird 163126,cat 163127,airplane 163128,airplane 163129,cat 163130,horse 163131,cat 163132,frog 163133,deer 163134,dog 163135,bird 163136,deer 163137,deer 163138,frog 163139,cat 163140,cat 163141,frog 163142,cat 163143,automobile 163144,bird 163145,cat 163146,horse 163147,frog 163148,cat 163149,truck 163150,horse 163151,cat 163152,bird 163153,cat 163154,horse 163155,bird 163156,truck 163157,deer 163158,horse 163159,frog 163160,deer 163161,horse 163162,deer 163163,ship 163164,frog 163165,dog 163166,horse 163167,deer 163168,automobile 163169,deer 163170,dog 163171,truck 163172,frog 163173,airplane 163174,frog 163175,horse 163176,truck 163177,dog 163178,frog 163179,truck 163180,automobile 163181,bird 163182,ship 163183,frog 163184,truck 163185,cat 163186,deer 163187,automobile 163188,truck 163189,bird 163190,cat 163191,truck 163192,airplane 163193,dog 163194,cat 163195,dog 163196,automobile 163197,dog 163198,deer 163199,deer 163200,bird 163201,cat 163202,deer 163203,frog 163204,dog 163205,dog 163206,dog 163207,cat 163208,dog 163209,deer 163210,deer 163211,frog 163212,horse 163213,horse 163214,frog 163215,bird 163216,cat 163217,frog 163218,airplane 163219,airplane 163220,airplane 163221,cat 163222,deer 163223,frog 163224,frog 163225,bird 163226,deer 163227,dog 163228,cat 163229,automobile 163230,horse 163231,ship 163232,deer 163233,truck 163234,bird 163235,bird 163236,cat 163237,deer 163238,cat 163239,airplane 163240,deer 163241,deer 163242,ship 163243,automobile 163244,deer 163245,horse 163246,horse 163247,deer 163248,bird 163249,automobile 163250,bird 163251,frog 163252,truck 163253,cat 163254,deer 163255,horse 163256,dog 163257,truck 163258,deer 163259,deer 163260,frog 163261,cat 163262,truck 163263,cat 163264,frog 163265,cat 163266,truck 163267,automobile 163268,cat 163269,airplane 163270,bird 163271,cat 163272,airplane 163273,truck 163274,cat 163275,deer 163276,bird 163277,truck 163278,cat 163279,cat 163280,deer 163281,horse 163282,cat 163283,cat 163284,ship 163285,automobile 163286,frog 163287,frog 163288,horse 163289,horse 163290,deer 163291,deer 163292,horse 163293,cat 163294,deer 163295,cat 163296,frog 163297,dog 163298,horse 163299,dog 163300,bird 163301,frog 163302,frog 163303,deer 163304,deer 163305,deer 163306,horse 163307,ship 163308,bird 163309,truck 163310,cat 163311,dog 163312,deer 163313,deer 163314,ship 163315,deer 163316,dog 163317,airplane 163318,dog 163319,automobile 163320,deer 163321,automobile 163322,horse 163323,frog 163324,deer 163325,ship 163326,cat 163327,airplane 163328,cat 163329,dog 163330,horse 163331,cat 163332,airplane 163333,airplane 163334,ship 163335,bird 163336,deer 163337,truck 163338,airplane 163339,frog 163340,cat 163341,cat 163342,cat 163343,airplane 163344,automobile 163345,bird 163346,ship 163347,truck 163348,frog 163349,ship 163350,automobile 163351,deer 163352,horse 163353,automobile 163354,deer 163355,dog 163356,frog 163357,airplane 163358,deer 163359,frog 163360,horse 163361,deer 163362,frog 163363,bird 163364,deer 163365,truck 163366,bird 163367,cat 163368,cat 163369,airplane 163370,frog 163371,frog 163372,automobile 163373,airplane 163374,bird 163375,cat 163376,automobile 163377,automobile 163378,frog 163379,automobile 163380,frog 163381,frog 163382,deer 163383,airplane 163384,airplane 163385,deer 163386,horse 163387,deer 163388,dog 163389,truck 163390,ship 163391,deer 163392,horse 163393,bird 163394,deer 163395,airplane 163396,ship 163397,airplane 163398,automobile 163399,horse 163400,bird 163401,ship 163402,deer 163403,airplane 163404,horse 163405,frog 163406,cat 163407,ship 163408,frog 163409,bird 163410,horse 163411,deer 163412,frog 163413,horse 163414,ship 163415,ship 163416,cat 163417,automobile 163418,horse 163419,bird 163420,frog 163421,truck 163422,cat 163423,airplane 163424,cat 163425,cat 163426,automobile 163427,deer 163428,cat 163429,bird 163430,bird 163431,deer 163432,ship 163433,airplane 163434,horse 163435,airplane 163436,deer 163437,cat 163438,airplane 163439,truck 163440,airplane 163441,cat 163442,cat 163443,dog 163444,automobile 163445,frog 163446,frog 163447,horse 163448,deer 163449,airplane 163450,frog 163451,ship 163452,horse 163453,deer 163454,frog 163455,ship 163456,airplane 163457,horse 163458,bird 163459,truck 163460,dog 163461,deer 163462,airplane 163463,bird 163464,cat 163465,truck 163466,bird 163467,dog 163468,frog 163469,dog 163470,frog 163471,horse 163472,automobile 163473,frog 163474,frog 163475,truck 163476,cat 163477,horse 163478,deer 163479,deer 163480,automobile 163481,horse 163482,deer 163483,ship 163484,dog 163485,cat 163486,dog 163487,frog 163488,deer 163489,airplane 163490,deer 163491,deer 163492,automobile 163493,airplane 163494,bird 163495,frog 163496,dog 163497,bird 163498,cat 163499,airplane 163500,truck 163501,dog 163502,cat 163503,airplane 163504,bird 163505,bird 163506,ship 163507,ship 163508,automobile 163509,deer 163510,ship 163511,cat 163512,truck 163513,frog 163514,deer 163515,horse 163516,horse 163517,horse 163518,deer 163519,ship 163520,automobile 163521,deer 163522,cat 163523,automobile 163524,airplane 163525,truck 163526,cat 163527,airplane 163528,deer 163529,cat 163530,airplane 163531,bird 163532,cat 163533,automobile 163534,deer 163535,airplane 163536,deer 163537,frog 163538,horse 163539,deer 163540,dog 163541,dog 163542,automobile 163543,truck 163544,cat 163545,truck 163546,cat 163547,airplane 163548,deer 163549,frog 163550,airplane 163551,bird 163552,deer 163553,frog 163554,frog 163555,horse 163556,truck 163557,deer 163558,cat 163559,dog 163560,frog 163561,dog 163562,ship 163563,frog 163564,ship 163565,truck 163566,cat 163567,airplane 163568,frog 163569,dog 163570,frog 163571,truck 163572,cat 163573,airplane 163574,ship 163575,horse 163576,truck 163577,dog 163578,truck 163579,horse 163580,automobile 163581,automobile 163582,bird 163583,deer 163584,bird 163585,automobile 163586,deer 163587,deer 163588,cat 163589,ship 163590,dog 163591,cat 163592,dog 163593,automobile 163594,horse 163595,ship 163596,cat 163597,cat 163598,truck 163599,ship 163600,cat 163601,truck 163602,bird 163603,dog 163604,automobile 163605,automobile 163606,cat 163607,bird 163608,cat 163609,truck 163610,truck 163611,horse 163612,truck 163613,truck 163614,dog 163615,airplane 163616,dog 163617,frog 163618,bird 163619,cat 163620,ship 163621,frog 163622,horse 163623,ship 163624,bird 163625,deer 163626,frog 163627,cat 163628,deer 163629,ship 163630,deer 163631,dog 163632,horse 163633,deer 163634,frog 163635,deer 163636,dog 163637,cat 163638,cat 163639,truck 163640,automobile 163641,frog 163642,deer 163643,deer 163644,ship 163645,deer 163646,cat 163647,bird 163648,cat 163649,bird 163650,frog 163651,dog 163652,horse 163653,automobile 163654,ship 163655,cat 163656,bird 163657,cat 163658,ship 163659,bird 163660,truck 163661,cat 163662,automobile 163663,truck 163664,frog 163665,airplane 163666,frog 163667,automobile 163668,horse 163669,automobile 163670,frog 163671,horse 163672,dog 163673,automobile 163674,deer 163675,bird 163676,ship 163677,horse 163678,truck 163679,horse 163680,frog 163681,cat 163682,dog 163683,deer 163684,dog 163685,automobile 163686,truck 163687,frog 163688,dog 163689,bird 163690,truck 163691,horse 163692,ship 163693,bird 163694,horse 163695,horse 163696,frog 163697,airplane 163698,automobile 163699,horse 163700,cat 163701,cat 163702,deer 163703,airplane 163704,automobile 163705,dog 163706,airplane 163707,cat 163708,deer 163709,horse 163710,dog 163711,airplane 163712,bird 163713,cat 163714,deer 163715,ship 163716,ship 163717,automobile 163718,deer 163719,dog 163720,airplane 163721,airplane 163722,deer 163723,ship 163724,dog 163725,deer 163726,deer 163727,cat 163728,airplane 163729,truck 163730,bird 163731,truck 163732,automobile 163733,airplane 163734,deer 163735,bird 163736,cat 163737,dog 163738,frog 163739,bird 163740,dog 163741,airplane 163742,airplane 163743,ship 163744,automobile 163745,deer 163746,frog 163747,deer 163748,ship 163749,frog 163750,deer 163751,dog 163752,deer 163753,truck 163754,frog 163755,ship 163756,horse 163757,horse 163758,bird 163759,truck 163760,frog 163761,bird 163762,ship 163763,ship 163764,airplane 163765,airplane 163766,truck 163767,automobile 163768,cat 163769,dog 163770,deer 163771,deer 163772,cat 163773,ship 163774,frog 163775,cat 163776,frog 163777,frog 163778,truck 163779,bird 163780,airplane 163781,horse 163782,ship 163783,frog 163784,truck 163785,horse 163786,ship 163787,airplane 163788,horse 163789,ship 163790,truck 163791,deer 163792,cat 163793,airplane 163794,deer 163795,frog 163796,ship 163797,truck 163798,airplane 163799,deer 163800,cat 163801,bird 163802,automobile 163803,truck 163804,automobile 163805,dog 163806,automobile 163807,horse 163808,deer 163809,dog 163810,deer 163811,dog 163812,frog 163813,frog 163814,cat 163815,cat 163816,horse 163817,frog 163818,bird 163819,deer 163820,deer 163821,frog 163822,horse 163823,ship 163824,bird 163825,automobile 163826,dog 163827,automobile 163828,deer 163829,frog 163830,automobile 163831,dog 163832,frog 163833,automobile 163834,dog 163835,frog 163836,automobile 163837,frog 163838,truck 163839,airplane 163840,ship 163841,dog 163842,dog 163843,automobile 163844,truck 163845,frog 163846,truck 163847,ship 163848,cat 163849,truck 163850,truck 163851,deer 163852,bird 163853,ship 163854,cat 163855,ship 163856,horse 163857,frog 163858,dog 163859,airplane 163860,airplane 163861,cat 163862,deer 163863,airplane 163864,ship 163865,truck 163866,bird 163867,automobile 163868,ship 163869,cat 163870,ship 163871,bird 163872,dog 163873,frog 163874,bird 163875,bird 163876,cat 163877,ship 163878,horse 163879,cat 163880,airplane 163881,airplane 163882,truck 163883,deer 163884,cat 163885,deer 163886,truck 163887,dog 163888,frog 163889,airplane 163890,bird 163891,dog 163892,airplane 163893,horse 163894,truck 163895,dog 163896,deer 163897,dog 163898,dog 163899,frog 163900,truck 163901,frog 163902,cat 163903,deer 163904,ship 163905,dog 163906,truck 163907,deer 163908,truck 163909,deer 163910,horse 163911,deer 163912,automobile 163913,frog 163914,truck 163915,truck 163916,automobile 163917,deer 163918,airplane 163919,dog 163920,frog 163921,airplane 163922,cat 163923,cat 163924,truck 163925,airplane 163926,frog 163927,truck 163928,horse 163929,cat 163930,ship 163931,ship 163932,horse 163933,deer 163934,dog 163935,cat 163936,cat 163937,horse 163938,airplane 163939,cat 163940,cat 163941,ship 163942,automobile 163943,horse 163944,frog 163945,bird 163946,dog 163947,cat 163948,cat 163949,automobile 163950,frog 163951,automobile 163952,deer 163953,airplane 163954,dog 163955,dog 163956,bird 163957,deer 163958,airplane 163959,ship 163960,horse 163961,automobile 163962,horse 163963,frog 163964,automobile 163965,horse 163966,horse 163967,horse 163968,automobile 163969,horse 163970,frog 163971,automobile 163972,frog 163973,ship 163974,cat 163975,ship 163976,truck 163977,airplane 163978,bird 163979,frog 163980,ship 163981,airplane 163982,truck 163983,frog 163984,horse 163985,deer 163986,airplane 163987,horse 163988,ship 163989,bird 163990,deer 163991,dog 163992,deer 163993,bird 163994,cat 163995,deer 163996,horse 163997,deer 163998,truck 163999,frog 164000,deer 164001,bird 164002,bird 164003,cat 164004,bird 164005,automobile 164006,automobile 164007,cat 164008,dog 164009,frog 164010,ship 164011,ship 164012,horse 164013,ship 164014,cat 164015,horse 164016,deer 164017,frog 164018,deer 164019,bird 164020,dog 164021,cat 164022,dog 164023,truck 164024,cat 164025,dog 164026,ship 164027,horse 164028,bird 164029,horse 164030,dog 164031,truck 164032,airplane 164033,automobile 164034,ship 164035,automobile 164036,deer 164037,automobile 164038,airplane 164039,bird 164040,cat 164041,ship 164042,cat 164043,airplane 164044,truck 164045,airplane 164046,bird 164047,airplane 164048,cat 164049,frog 164050,horse 164051,horse 164052,deer 164053,truck 164054,deer 164055,truck 164056,horse 164057,airplane 164058,automobile 164059,airplane 164060,deer 164061,bird 164062,deer 164063,ship 164064,truck 164065,deer 164066,deer 164067,automobile 164068,cat 164069,frog 164070,horse 164071,horse 164072,bird 164073,cat 164074,deer 164075,airplane 164076,truck 164077,truck 164078,dog 164079,frog 164080,frog 164081,airplane 164082,deer 164083,dog 164084,bird 164085,automobile 164086,frog 164087,automobile 164088,truck 164089,cat 164090,horse 164091,truck 164092,frog 164093,frog 164094,deer 164095,frog 164096,truck 164097,dog 164098,cat 164099,cat 164100,bird 164101,dog 164102,airplane 164103,dog 164104,frog 164105,truck 164106,dog 164107,horse 164108,truck 164109,deer 164110,cat 164111,dog 164112,horse 164113,deer 164114,truck 164115,horse 164116,horse 164117,truck 164118,bird 164119,horse 164120,frog 164121,dog 164122,horse 164123,cat 164124,truck 164125,truck 164126,frog 164127,airplane 164128,horse 164129,deer 164130,dog 164131,cat 164132,automobile 164133,truck 164134,bird 164135,ship 164136,frog 164137,deer 164138,ship 164139,ship 164140,bird 164141,cat 164142,ship 164143,truck 164144,frog 164145,airplane 164146,dog 164147,bird 164148,truck 164149,cat 164150,frog 164151,airplane 164152,airplane 164153,bird 164154,deer 164155,cat 164156,deer 164157,deer 164158,deer 164159,automobile 164160,horse 164161,deer 164162,deer 164163,dog 164164,bird 164165,dog 164166,bird 164167,airplane 164168,cat 164169,bird 164170,ship 164171,dog 164172,deer 164173,airplane 164174,frog 164175,dog 164176,ship 164177,deer 164178,cat 164179,cat 164180,automobile 164181,frog 164182,dog 164183,dog 164184,truck 164185,airplane 164186,airplane 164187,truck 164188,bird 164189,airplane 164190,bird 164191,ship 164192,dog 164193,automobile 164194,deer 164195,dog 164196,dog 164197,dog 164198,cat 164199,cat 164200,horse 164201,cat 164202,cat 164203,horse 164204,deer 164205,deer 164206,frog 164207,deer 164208,automobile 164209,deer 164210,truck 164211,deer 164212,horse 164213,horse 164214,truck 164215,airplane 164216,deer 164217,airplane 164218,deer 164219,ship 164220,ship 164221,deer 164222,truck 164223,truck 164224,deer 164225,ship 164226,deer 164227,deer 164228,horse 164229,frog 164230,bird 164231,dog 164232,automobile 164233,deer 164234,truck 164235,dog 164236,deer 164237,cat 164238,truck 164239,cat 164240,frog 164241,cat 164242,ship 164243,cat 164244,truck 164245,automobile 164246,frog 164247,frog 164248,ship 164249,cat 164250,cat 164251,bird 164252,dog 164253,deer 164254,ship 164255,frog 164256,dog 164257,cat 164258,automobile 164259,truck 164260,horse 164261,frog 164262,truck 164263,airplane 164264,deer 164265,deer 164266,truck 164267,horse 164268,truck 164269,bird 164270,deer 164271,horse 164272,deer 164273,deer 164274,horse 164275,automobile 164276,dog 164277,truck 164278,frog 164279,truck 164280,horse 164281,deer 164282,airplane 164283,frog 164284,airplane 164285,automobile 164286,cat 164287,airplane 164288,bird 164289,deer 164290,cat 164291,horse 164292,dog 164293,frog 164294,frog 164295,frog 164296,airplane 164297,frog 164298,frog 164299,deer 164300,truck 164301,frog 164302,bird 164303,bird 164304,truck 164305,cat 164306,deer 164307,automobile 164308,dog 164309,truck 164310,airplane 164311,ship 164312,horse 164313,frog 164314,cat 164315,deer 164316,cat 164317,dog 164318,deer 164319,cat 164320,cat 164321,ship 164322,airplane 164323,airplane 164324,horse 164325,horse 164326,horse 164327,frog 164328,cat 164329,truck 164330,frog 164331,automobile 164332,truck 164333,bird 164334,frog 164335,bird 164336,horse 164337,ship 164338,airplane 164339,automobile 164340,horse 164341,horse 164342,horse 164343,cat 164344,horse 164345,deer 164346,dog 164347,deer 164348,horse 164349,bird 164350,deer 164351,bird 164352,cat 164353,ship 164354,cat 164355,horse 164356,dog 164357,truck 164358,cat 164359,airplane 164360,deer 164361,truck 164362,bird 164363,airplane 164364,truck 164365,cat 164366,deer 164367,ship 164368,truck 164369,bird 164370,ship 164371,dog 164372,horse 164373,bird 164374,ship 164375,cat 164376,automobile 164377,truck 164378,cat 164379,frog 164380,cat 164381,horse 164382,deer 164383,airplane 164384,bird 164385,ship 164386,bird 164387,cat 164388,ship 164389,automobile 164390,dog 164391,airplane 164392,deer 164393,horse 164394,ship 164395,dog 164396,bird 164397,deer 164398,airplane 164399,truck 164400,truck 164401,truck 164402,airplane 164403,dog 164404,airplane 164405,truck 164406,cat 164407,deer 164408,truck 164409,ship 164410,bird 164411,ship 164412,ship 164413,truck 164414,cat 164415,cat 164416,ship 164417,airplane 164418,cat 164419,automobile 164420,cat 164421,airplane 164422,ship 164423,bird 164424,cat 164425,deer 164426,truck 164427,ship 164428,ship 164429,ship 164430,bird 164431,ship 164432,deer 164433,horse 164434,truck 164435,truck 164436,frog 164437,truck 164438,deer 164439,airplane 164440,bird 164441,deer 164442,cat 164443,dog 164444,bird 164445,ship 164446,cat 164447,truck 164448,horse 164449,deer 164450,horse 164451,horse 164452,cat 164453,bird 164454,bird 164455,frog 164456,deer 164457,cat 164458,frog 164459,cat 164460,airplane 164461,frog 164462,dog 164463,airplane 164464,deer 164465,deer 164466,cat 164467,frog 164468,airplane 164469,cat 164470,cat 164471,frog 164472,horse 164473,ship 164474,truck 164475,ship 164476,ship 164477,dog 164478,dog 164479,cat 164480,airplane 164481,horse 164482,dog 164483,truck 164484,cat 164485,frog 164486,ship 164487,frog 164488,cat 164489,deer 164490,bird 164491,bird 164492,truck 164493,frog 164494,dog 164495,deer 164496,ship 164497,dog 164498,deer 164499,deer 164500,deer 164501,horse 164502,airplane 164503,ship 164504,cat 164505,deer 164506,dog 164507,horse 164508,ship 164509,ship 164510,truck 164511,automobile 164512,truck 164513,horse 164514,deer 164515,frog 164516,cat 164517,ship 164518,cat 164519,truck 164520,horse 164521,dog 164522,deer 164523,dog 164524,horse 164525,bird 164526,frog 164527,frog 164528,frog 164529,airplane 164530,bird 164531,horse 164532,truck 164533,deer 164534,cat 164535,frog 164536,bird 164537,ship 164538,dog 164539,truck 164540,dog 164541,bird 164542,bird 164543,deer 164544,dog 164545,bird 164546,deer 164547,deer 164548,bird 164549,cat 164550,deer 164551,horse 164552,cat 164553,horse 164554,bird 164555,frog 164556,cat 164557,airplane 164558,automobile 164559,deer 164560,airplane 164561,truck 164562,frog 164563,cat 164564,horse 164565,ship 164566,frog 164567,airplane 164568,ship 164569,bird 164570,dog 164571,airplane 164572,deer 164573,truck 164574,bird 164575,deer 164576,horse 164577,cat 164578,horse 164579,cat 164580,cat 164581,deer 164582,truck 164583,horse 164584,cat 164585,frog 164586,cat 164587,truck 164588,dog 164589,frog 164590,dog 164591,cat 164592,ship 164593,truck 164594,truck 164595,horse 164596,cat 164597,dog 164598,truck 164599,horse 164600,automobile 164601,dog 164602,truck 164603,cat 164604,airplane 164605,truck 164606,horse 164607,horse 164608,truck 164609,deer 164610,airplane 164611,horse 164612,truck 164613,frog 164614,horse 164615,airplane 164616,truck 164617,automobile 164618,truck 164619,deer 164620,truck 164621,ship 164622,horse 164623,bird 164624,frog 164625,horse 164626,frog 164627,deer 164628,deer 164629,horse 164630,bird 164631,deer 164632,deer 164633,airplane 164634,truck 164635,frog 164636,cat 164637,airplane 164638,frog 164639,truck 164640,automobile 164641,horse 164642,bird 164643,cat 164644,bird 164645,automobile 164646,truck 164647,dog 164648,automobile 164649,automobile 164650,truck 164651,cat 164652,horse 164653,deer 164654,ship 164655,cat 164656,cat 164657,truck 164658,deer 164659,airplane 164660,truck 164661,cat 164662,automobile 164663,dog 164664,dog 164665,truck 164666,deer 164667,deer 164668,ship 164669,airplane 164670,automobile 164671,airplane 164672,dog 164673,dog 164674,cat 164675,bird 164676,horse 164677,bird 164678,bird 164679,cat 164680,ship 164681,frog 164682,cat 164683,deer 164684,dog 164685,cat 164686,ship 164687,deer 164688,cat 164689,ship 164690,bird 164691,deer 164692,dog 164693,truck 164694,bird 164695,ship 164696,dog 164697,horse 164698,ship 164699,deer 164700,cat 164701,airplane 164702,bird 164703,horse 164704,horse 164705,dog 164706,horse 164707,airplane 164708,cat 164709,airplane 164710,automobile 164711,dog 164712,horse 164713,dog 164714,truck 164715,frog 164716,deer 164717,automobile 164718,automobile 164719,deer 164720,ship 164721,truck 164722,truck 164723,truck 164724,automobile 164725,airplane 164726,truck 164727,cat 164728,dog 164729,ship 164730,horse 164731,horse 164732,cat 164733,automobile 164734,ship 164735,horse 164736,dog 164737,horse 164738,cat 164739,airplane 164740,frog 164741,truck 164742,automobile 164743,airplane 164744,horse 164745,horse 164746,deer 164747,deer 164748,truck 164749,deer 164750,cat 164751,dog 164752,bird 164753,frog 164754,horse 164755,airplane 164756,automobile 164757,bird 164758,automobile 164759,horse 164760,airplane 164761,ship 164762,airplane 164763,ship 164764,automobile 164765,deer 164766,dog 164767,bird 164768,frog 164769,bird 164770,dog 164771,horse 164772,deer 164773,deer 164774,cat 164775,cat 164776,automobile 164777,truck 164778,frog 164779,deer 164780,dog 164781,dog 164782,deer 164783,bird 164784,deer 164785,dog 164786,dog 164787,ship 164788,cat 164789,automobile 164790,bird 164791,horse 164792,ship 164793,cat 164794,horse 164795,frog 164796,frog 164797,dog 164798,cat 164799,cat 164800,truck 164801,ship 164802,bird 164803,ship 164804,frog 164805,bird 164806,frog 164807,automobile 164808,bird 164809,deer 164810,truck 164811,truck 164812,cat 164813,truck 164814,frog 164815,deer 164816,cat 164817,bird 164818,deer 164819,dog 164820,bird 164821,frog 164822,cat 164823,frog 164824,frog 164825,truck 164826,deer 164827,airplane 164828,cat 164829,airplane 164830,bird 164831,bird 164832,dog 164833,cat 164834,bird 164835,frog 164836,bird 164837,deer 164838,truck 164839,automobile 164840,automobile 164841,deer 164842,frog 164843,ship 164844,frog 164845,bird 164846,airplane 164847,deer 164848,dog 164849,frog 164850,airplane 164851,ship 164852,bird 164853,automobile 164854,frog 164855,horse 164856,airplane 164857,truck 164858,dog 164859,deer 164860,automobile 164861,ship 164862,bird 164863,frog 164864,airplane 164865,bird 164866,deer 164867,deer 164868,cat 164869,deer 164870,automobile 164871,horse 164872,ship 164873,frog 164874,cat 164875,bird 164876,bird 164877,deer 164878,truck 164879,airplane 164880,dog 164881,deer 164882,dog 164883,dog 164884,cat 164885,airplane 164886,truck 164887,airplane 164888,ship 164889,airplane 164890,deer 164891,airplane 164892,frog 164893,cat 164894,bird 164895,cat 164896,cat 164897,truck 164898,bird 164899,deer 164900,dog 164901,deer 164902,ship 164903,truck 164904,truck 164905,dog 164906,automobile 164907,deer 164908,airplane 164909,automobile 164910,ship 164911,deer 164912,truck 164913,truck 164914,truck 164915,ship 164916,truck 164917,airplane 164918,deer 164919,deer 164920,deer 164921,frog 164922,bird 164923,dog 164924,cat 164925,truck 164926,deer 164927,dog 164928,ship 164929,dog 164930,cat 164931,frog 164932,deer 164933,airplane 164934,automobile 164935,deer 164936,dog 164937,dog 164938,dog 164939,deer 164940,horse 164941,airplane 164942,cat 164943,ship 164944,frog 164945,deer 164946,deer 164947,ship 164948,horse 164949,ship 164950,airplane 164951,cat 164952,ship 164953,airplane 164954,airplane 164955,ship 164956,deer 164957,deer 164958,frog 164959,dog 164960,cat 164961,bird 164962,automobile 164963,dog 164964,horse 164965,deer 164966,cat 164967,deer 164968,frog 164969,cat 164970,deer 164971,deer 164972,frog 164973,truck 164974,airplane 164975,ship 164976,truck 164977,ship 164978,deer 164979,airplane 164980,airplane 164981,airplane 164982,bird 164983,horse 164984,deer 164985,frog 164986,horse 164987,bird 164988,automobile 164989,frog 164990,dog 164991,horse 164992,deer 164993,automobile 164994,dog 164995,frog 164996,dog 164997,dog 164998,frog 164999,frog 165000,cat 165001,frog 165002,dog 165003,automobile 165004,frog 165005,cat 165006,bird 165007,dog 165008,truck 165009,cat 165010,airplane 165011,airplane 165012,cat 165013,frog 165014,deer 165015,cat 165016,ship 165017,bird 165018,automobile 165019,cat 165020,automobile 165021,airplane 165022,airplane 165023,dog 165024,truck 165025,truck 165026,bird 165027,horse 165028,deer 165029,ship 165030,automobile 165031,deer 165032,truck 165033,cat 165034,bird 165035,automobile 165036,frog 165037,cat 165038,cat 165039,automobile 165040,deer 165041,frog 165042,cat 165043,airplane 165044,frog 165045,frog 165046,cat 165047,frog 165048,bird 165049,cat 165050,cat 165051,bird 165052,frog 165053,dog 165054,deer 165055,automobile 165056,cat 165057,truck 165058,cat 165059,horse 165060,automobile 165061,horse 165062,dog 165063,frog 165064,deer 165065,truck 165066,deer 165067,dog 165068,deer 165069,horse 165070,cat 165071,cat 165072,frog 165073,ship 165074,truck 165075,frog 165076,frog 165077,airplane 165078,ship 165079,dog 165080,horse 165081,deer 165082,ship 165083,airplane 165084,automobile 165085,truck 165086,ship 165087,bird 165088,truck 165089,ship 165090,frog 165091,dog 165092,frog 165093,dog 165094,dog 165095,airplane 165096,horse 165097,deer 165098,cat 165099,frog 165100,airplane 165101,horse 165102,horse 165103,dog 165104,truck 165105,ship 165106,ship 165107,dog 165108,horse 165109,dog 165110,frog 165111,deer 165112,horse 165113,deer 165114,automobile 165115,automobile 165116,airplane 165117,ship 165118,cat 165119,airplane 165120,ship 165121,ship 165122,truck 165123,deer 165124,ship 165125,horse 165126,truck 165127,cat 165128,frog 165129,cat 165130,deer 165131,deer 165132,horse 165133,automobile 165134,ship 165135,ship 165136,cat 165137,cat 165138,horse 165139,cat 165140,horse 165141,deer 165142,truck 165143,horse 165144,frog 165145,deer 165146,airplane 165147,deer 165148,cat 165149,ship 165150,automobile 165151,airplane 165152,airplane 165153,bird 165154,cat 165155,frog 165156,cat 165157,frog 165158,automobile 165159,cat 165160,deer 165161,horse 165162,airplane 165163,truck 165164,deer 165165,frog 165166,cat 165167,truck 165168,airplane 165169,automobile 165170,truck 165171,bird 165172,dog 165173,ship 165174,truck 165175,dog 165176,cat 165177,cat 165178,airplane 165179,airplane 165180,automobile 165181,horse 165182,airplane 165183,truck 165184,bird 165185,horse 165186,ship 165187,bird 165188,deer 165189,airplane 165190,deer 165191,cat 165192,frog 165193,bird 165194,horse 165195,horse 165196,deer 165197,frog 165198,cat 165199,dog 165200,ship 165201,horse 165202,frog 165203,deer 165204,automobile 165205,ship 165206,ship 165207,automobile 165208,horse 165209,horse 165210,cat 165211,airplane 165212,horse 165213,cat 165214,frog 165215,cat 165216,cat 165217,deer 165218,cat 165219,cat 165220,cat 165221,airplane 165222,dog 165223,automobile 165224,deer 165225,frog 165226,horse 165227,deer 165228,deer 165229,frog 165230,automobile 165231,airplane 165232,frog 165233,airplane 165234,deer 165235,cat 165236,frog 165237,airplane 165238,dog 165239,dog 165240,deer 165241,airplane 165242,frog 165243,frog 165244,deer 165245,cat 165246,automobile 165247,truck 165248,truck 165249,ship 165250,cat 165251,cat 165252,ship 165253,horse 165254,airplane 165255,frog 165256,deer 165257,deer 165258,horse 165259,cat 165260,frog 165261,bird 165262,dog 165263,airplane 165264,truck 165265,ship 165266,cat 165267,airplane 165268,deer 165269,ship 165270,airplane 165271,airplane 165272,cat 165273,truck 165274,dog 165275,horse 165276,cat 165277,cat 165278,frog 165279,deer 165280,automobile 165281,frog 165282,bird 165283,automobile 165284,dog 165285,cat 165286,horse 165287,truck 165288,truck 165289,dog 165290,dog 165291,airplane 165292,truck 165293,horse 165294,cat 165295,dog 165296,deer 165297,truck 165298,cat 165299,deer 165300,airplane 165301,dog 165302,frog 165303,horse 165304,cat 165305,horse 165306,deer 165307,truck 165308,deer 165309,horse 165310,ship 165311,deer 165312,cat 165313,dog 165314,horse 165315,deer 165316,ship 165317,frog 165318,automobile 165319,dog 165320,truck 165321,bird 165322,deer 165323,horse 165324,frog 165325,ship 165326,dog 165327,airplane 165328,bird 165329,dog 165330,ship 165331,deer 165332,airplane 165333,cat 165334,cat 165335,ship 165336,bird 165337,dog 165338,automobile 165339,bird 165340,deer 165341,automobile 165342,cat 165343,cat 165344,airplane 165345,frog 165346,deer 165347,automobile 165348,deer 165349,horse 165350,dog 165351,frog 165352,frog 165353,dog 165354,automobile 165355,horse 165356,deer 165357,horse 165358,ship 165359,horse 165360,ship 165361,deer 165362,automobile 165363,bird 165364,airplane 165365,airplane 165366,deer 165367,dog 165368,horse 165369,bird 165370,cat 165371,airplane 165372,frog 165373,cat 165374,dog 165375,cat 165376,horse 165377,deer 165378,horse 165379,deer 165380,airplane 165381,bird 165382,cat 165383,dog 165384,bird 165385,truck 165386,horse 165387,airplane 165388,deer 165389,truck 165390,frog 165391,cat 165392,cat 165393,ship 165394,automobile 165395,deer 165396,bird 165397,airplane 165398,cat 165399,truck 165400,frog 165401,horse 165402,dog 165403,airplane 165404,bird 165405,ship 165406,airplane 165407,deer 165408,deer 165409,truck 165410,cat 165411,airplane 165412,ship 165413,ship 165414,airplane 165415,bird 165416,bird 165417,airplane 165418,truck 165419,airplane 165420,bird 165421,cat 165422,airplane 165423,horse 165424,cat 165425,cat 165426,horse 165427,deer 165428,horse 165429,frog 165430,deer 165431,cat 165432,dog 165433,dog 165434,truck 165435,deer 165436,cat 165437,cat 165438,horse 165439,bird 165440,airplane 165441,airplane 165442,cat 165443,cat 165444,horse 165445,dog 165446,truck 165447,frog 165448,ship 165449,airplane 165450,dog 165451,horse 165452,ship 165453,cat 165454,deer 165455,truck 165456,automobile 165457,deer 165458,frog 165459,cat 165460,airplane 165461,airplane 165462,cat 165463,dog 165464,automobile 165465,horse 165466,truck 165467,deer 165468,frog 165469,dog 165470,bird 165471,ship 165472,dog 165473,dog 165474,deer 165475,horse 165476,deer 165477,airplane 165478,cat 165479,horse 165480,bird 165481,ship 165482,deer 165483,truck 165484,horse 165485,ship 165486,ship 165487,truck 165488,frog 165489,deer 165490,ship 165491,cat 165492,cat 165493,automobile 165494,ship 165495,bird 165496,horse 165497,dog 165498,cat 165499,frog 165500,airplane 165501,airplane 165502,automobile 165503,horse 165504,bird 165505,deer 165506,deer 165507,dog 165508,cat 165509,automobile 165510,bird 165511,horse 165512,cat 165513,frog 165514,ship 165515,frog 165516,airplane 165517,cat 165518,cat 165519,bird 165520,airplane 165521,cat 165522,ship 165523,dog 165524,horse 165525,horse 165526,deer 165527,cat 165528,truck 165529,deer 165530,dog 165531,frog 165532,airplane 165533,truck 165534,cat 165535,ship 165536,bird 165537,dog 165538,dog 165539,deer 165540,cat 165541,ship 165542,cat 165543,dog 165544,frog 165545,airplane 165546,truck 165547,horse 165548,deer 165549,automobile 165550,dog 165551,airplane 165552,dog 165553,dog 165554,truck 165555,cat 165556,ship 165557,deer 165558,frog 165559,deer 165560,deer 165561,dog 165562,cat 165563,truck 165564,dog 165565,ship 165566,frog 165567,horse 165568,airplane 165569,horse 165570,dog 165571,airplane 165572,dog 165573,bird 165574,bird 165575,deer 165576,deer 165577,dog 165578,deer 165579,ship 165580,cat 165581,cat 165582,dog 165583,automobile 165584,cat 165585,dog 165586,ship 165587,deer 165588,airplane 165589,deer 165590,truck 165591,airplane 165592,airplane 165593,truck 165594,cat 165595,automobile 165596,airplane 165597,cat 165598,deer 165599,dog 165600,deer 165601,deer 165602,horse 165603,truck 165604,horse 165605,automobile 165606,dog 165607,bird 165608,horse 165609,cat 165610,ship 165611,automobile 165612,cat 165613,dog 165614,horse 165615,frog 165616,ship 165617,deer 165618,automobile 165619,frog 165620,bird 165621,bird 165622,automobile 165623,bird 165624,truck 165625,cat 165626,frog 165627,dog 165628,automobile 165629,airplane 165630,cat 165631,frog 165632,frog 165633,truck 165634,dog 165635,horse 165636,cat 165637,automobile 165638,cat 165639,truck 165640,cat 165641,dog 165642,ship 165643,truck 165644,bird 165645,airplane 165646,deer 165647,dog 165648,dog 165649,deer 165650,automobile 165651,ship 165652,cat 165653,automobile 165654,dog 165655,deer 165656,cat 165657,deer 165658,dog 165659,horse 165660,horse 165661,automobile 165662,cat 165663,cat 165664,deer 165665,deer 165666,cat 165667,deer 165668,dog 165669,automobile 165670,deer 165671,bird 165672,ship 165673,automobile 165674,ship 165675,frog 165676,truck 165677,truck 165678,frog 165679,dog 165680,bird 165681,frog 165682,dog 165683,deer 165684,cat 165685,airplane 165686,deer 165687,deer 165688,automobile 165689,cat 165690,deer 165691,cat 165692,truck 165693,dog 165694,cat 165695,bird 165696,airplane 165697,dog 165698,truck 165699,ship 165700,frog 165701,truck 165702,horse 165703,horse 165704,deer 165705,cat 165706,automobile 165707,ship 165708,truck 165709,airplane 165710,airplane 165711,dog 165712,bird 165713,frog 165714,cat 165715,airplane 165716,automobile 165717,cat 165718,automobile 165719,truck 165720,truck 165721,cat 165722,frog 165723,bird 165724,horse 165725,frog 165726,truck 165727,automobile 165728,airplane 165729,frog 165730,ship 165731,frog 165732,automobile 165733,cat 165734,automobile 165735,horse 165736,truck 165737,bird 165738,dog 165739,ship 165740,cat 165741,ship 165742,automobile 165743,ship 165744,cat 165745,dog 165746,deer 165747,automobile 165748,bird 165749,airplane 165750,cat 165751,horse 165752,ship 165753,frog 165754,airplane 165755,ship 165756,automobile 165757,ship 165758,frog 165759,cat 165760,cat 165761,deer 165762,automobile 165763,truck 165764,cat 165765,horse 165766,bird 165767,automobile 165768,deer 165769,deer 165770,horse 165771,deer 165772,ship 165773,frog 165774,truck 165775,truck 165776,cat 165777,frog 165778,airplane 165779,frog 165780,cat 165781,frog 165782,truck 165783,truck 165784,ship 165785,dog 165786,ship 165787,horse 165788,bird 165789,dog 165790,bird 165791,cat 165792,dog 165793,bird 165794,deer 165795,bird 165796,cat 165797,cat 165798,truck 165799,cat 165800,ship 165801,airplane 165802,dog 165803,truck 165804,truck 165805,horse 165806,ship 165807,truck 165808,cat 165809,ship 165810,bird 165811,frog 165812,frog 165813,cat 165814,deer 165815,automobile 165816,dog 165817,frog 165818,truck 165819,horse 165820,ship 165821,frog 165822,deer 165823,deer 165824,airplane 165825,truck 165826,frog 165827,airplane 165828,frog 165829,horse 165830,deer 165831,cat 165832,cat 165833,frog 165834,bird 165835,airplane 165836,dog 165837,cat 165838,horse 165839,automobile 165840,horse 165841,airplane 165842,horse 165843,cat 165844,cat 165845,frog 165846,deer 165847,automobile 165848,cat 165849,airplane 165850,deer 165851,horse 165852,ship 165853,frog 165854,cat 165855,dog 165856,cat 165857,deer 165858,dog 165859,automobile 165860,horse 165861,frog 165862,truck 165863,frog 165864,cat 165865,truck 165866,ship 165867,horse 165868,automobile 165869,cat 165870,airplane 165871,automobile 165872,automobile 165873,airplane 165874,deer 165875,bird 165876,automobile 165877,horse 165878,horse 165879,frog 165880,cat 165881,dog 165882,frog 165883,frog 165884,ship 165885,cat 165886,cat 165887,dog 165888,automobile 165889,airplane 165890,ship 165891,deer 165892,dog 165893,bird 165894,frog 165895,frog 165896,frog 165897,horse 165898,dog 165899,deer 165900,automobile 165901,ship 165902,bird 165903,cat 165904,truck 165905,dog 165906,truck 165907,bird 165908,horse 165909,frog 165910,bird 165911,truck 165912,cat 165913,deer 165914,horse 165915,dog 165916,ship 165917,horse 165918,ship 165919,frog 165920,truck 165921,frog 165922,truck 165923,airplane 165924,automobile 165925,horse 165926,dog 165927,deer 165928,automobile 165929,truck 165930,bird 165931,horse 165932,airplane 165933,frog 165934,automobile 165935,cat 165936,deer 165937,dog 165938,cat 165939,deer 165940,cat 165941,ship 165942,cat 165943,dog 165944,deer 165945,airplane 165946,automobile 165947,dog 165948,automobile 165949,truck 165950,bird 165951,frog 165952,ship 165953,bird 165954,truck 165955,automobile 165956,dog 165957,truck 165958,dog 165959,automobile 165960,deer 165961,cat 165962,cat 165963,dog 165964,airplane 165965,bird 165966,frog 165967,deer 165968,truck 165969,horse 165970,bird 165971,deer 165972,deer 165973,cat 165974,deer 165975,dog 165976,frog 165977,deer 165978,automobile 165979,ship 165980,ship 165981,frog 165982,cat 165983,bird 165984,dog 165985,cat 165986,automobile 165987,cat 165988,frog 165989,truck 165990,cat 165991,airplane 165992,truck 165993,truck 165994,automobile 165995,horse 165996,cat 165997,frog 165998,horse 165999,bird 166000,frog 166001,dog 166002,automobile 166003,deer 166004,horse 166005,dog 166006,airplane 166007,truck 166008,automobile 166009,deer 166010,horse 166011,cat 166012,deer 166013,dog 166014,bird 166015,ship 166016,frog 166017,cat 166018,airplane 166019,frog 166020,deer 166021,cat 166022,ship 166023,truck 166024,bird 166025,bird 166026,cat 166027,cat 166028,cat 166029,deer 166030,frog 166031,horse 166032,airplane 166033,airplane 166034,deer 166035,frog 166036,horse 166037,deer 166038,bird 166039,dog 166040,frog 166041,truck 166042,cat 166043,horse 166044,horse 166045,horse 166046,bird 166047,bird 166048,ship 166049,ship 166050,ship 166051,deer 166052,horse 166053,airplane 166054,airplane 166055,automobile 166056,cat 166057,automobile 166058,cat 166059,horse 166060,cat 166061,automobile 166062,automobile 166063,frog 166064,cat 166065,automobile 166066,cat 166067,deer 166068,deer 166069,ship 166070,cat 166071,cat 166072,horse 166073,horse 166074,frog 166075,cat 166076,deer 166077,truck 166078,automobile 166079,frog 166080,ship 166081,horse 166082,automobile 166083,cat 166084,frog 166085,cat 166086,dog 166087,frog 166088,horse 166089,automobile 166090,deer 166091,frog 166092,frog 166093,bird 166094,dog 166095,deer 166096,automobile 166097,bird 166098,automobile 166099,cat 166100,deer 166101,airplane 166102,bird 166103,dog 166104,deer 166105,frog 166106,ship 166107,cat 166108,deer 166109,horse 166110,deer 166111,truck 166112,ship 166113,airplane 166114,deer 166115,dog 166116,horse 166117,cat 166118,ship 166119,horse 166120,cat 166121,automobile 166122,automobile 166123,deer 166124,deer 166125,truck 166126,cat 166127,frog 166128,dog 166129,bird 166130,ship 166131,truck 166132,cat 166133,horse 166134,truck 166135,deer 166136,bird 166137,dog 166138,bird 166139,deer 166140,frog 166141,frog 166142,horse 166143,truck 166144,truck 166145,horse 166146,automobile 166147,bird 166148,ship 166149,horse 166150,dog 166151,bird 166152,frog 166153,truck 166154,truck 166155,dog 166156,dog 166157,cat 166158,ship 166159,dog 166160,dog 166161,truck 166162,cat 166163,dog 166164,frog 166165,horse 166166,dog 166167,truck 166168,truck 166169,airplane 166170,airplane 166171,frog 166172,airplane 166173,truck 166174,ship 166175,cat 166176,bird 166177,dog 166178,airplane 166179,cat 166180,cat 166181,bird 166182,cat 166183,airplane 166184,truck 166185,truck 166186,ship 166187,ship 166188,cat 166189,airplane 166190,dog 166191,dog 166192,horse 166193,airplane 166194,airplane 166195,horse 166196,truck 166197,dog 166198,automobile 166199,deer 166200,airplane 166201,dog 166202,deer 166203,airplane 166204,automobile 166205,truck 166206,frog 166207,horse 166208,dog 166209,airplane 166210,horse 166211,dog 166212,dog 166213,airplane 166214,truck 166215,truck 166216,bird 166217,deer 166218,airplane 166219,cat 166220,airplane 166221,bird 166222,truck 166223,ship 166224,frog 166225,cat 166226,truck 166227,airplane 166228,cat 166229,deer 166230,ship 166231,frog 166232,truck 166233,horse 166234,bird 166235,frog 166236,truck 166237,cat 166238,ship 166239,bird 166240,horse 166241,truck 166242,truck 166243,dog 166244,cat 166245,automobile 166246,deer 166247,cat 166248,airplane 166249,airplane 166250,horse 166251,cat 166252,bird 166253,truck 166254,ship 166255,frog 166256,bird 166257,frog 166258,cat 166259,dog 166260,truck 166261,automobile 166262,dog 166263,cat 166264,dog 166265,frog 166266,airplane 166267,bird 166268,horse 166269,automobile 166270,truck 166271,dog 166272,horse 166273,airplane 166274,horse 166275,horse 166276,airplane 166277,deer 166278,truck 166279,truck 166280,horse 166281,dog 166282,cat 166283,frog 166284,automobile 166285,airplane 166286,bird 166287,truck 166288,frog 166289,ship 166290,truck 166291,cat 166292,cat 166293,deer 166294,bird 166295,horse 166296,deer 166297,horse 166298,cat 166299,deer 166300,deer 166301,bird 166302,horse 166303,deer 166304,frog 166305,airplane 166306,ship 166307,bird 166308,deer 166309,deer 166310,cat 166311,cat 166312,deer 166313,frog 166314,truck 166315,automobile 166316,frog 166317,airplane 166318,truck 166319,dog 166320,truck 166321,truck 166322,truck 166323,deer 166324,ship 166325,truck 166326,truck 166327,deer 166328,horse 166329,dog 166330,cat 166331,cat 166332,deer 166333,automobile 166334,dog 166335,dog 166336,dog 166337,automobile 166338,automobile 166339,bird 166340,truck 166341,cat 166342,deer 166343,bird 166344,bird 166345,cat 166346,bird 166347,frog 166348,deer 166349,dog 166350,horse 166351,deer 166352,bird 166353,deer 166354,ship 166355,airplane 166356,airplane 166357,deer 166358,bird 166359,ship 166360,dog 166361,deer 166362,frog 166363,frog 166364,cat 166365,frog 166366,dog 166367,truck 166368,deer 166369,bird 166370,bird 166371,deer 166372,cat 166373,cat 166374,horse 166375,deer 166376,frog 166377,deer 166378,bird 166379,deer 166380,automobile 166381,dog 166382,truck 166383,bird 166384,dog 166385,bird 166386,bird 166387,dog 166388,bird 166389,bird 166390,deer 166391,frog 166392,ship 166393,cat 166394,horse 166395,frog 166396,ship 166397,frog 166398,automobile 166399,automobile 166400,bird 166401,horse 166402,ship 166403,truck 166404,ship 166405,cat 166406,truck 166407,dog 166408,frog 166409,cat 166410,dog 166411,cat 166412,truck 166413,dog 166414,frog 166415,cat 166416,dog 166417,frog 166418,frog 166419,ship 166420,deer 166421,horse 166422,bird 166423,ship 166424,deer 166425,horse 166426,deer 166427,truck 166428,dog 166429,automobile 166430,airplane 166431,airplane 166432,deer 166433,deer 166434,cat 166435,bird 166436,bird 166437,ship 166438,cat 166439,deer 166440,airplane 166441,airplane 166442,automobile 166443,deer 166444,deer 166445,dog 166446,ship 166447,bird 166448,dog 166449,frog 166450,cat 166451,ship 166452,horse 166453,deer 166454,bird 166455,airplane 166456,deer 166457,frog 166458,bird 166459,ship 166460,automobile 166461,cat 166462,ship 166463,airplane 166464,airplane 166465,deer 166466,automobile 166467,cat 166468,dog 166469,cat 166470,frog 166471,horse 166472,dog 166473,truck 166474,ship 166475,deer 166476,bird 166477,bird 166478,automobile 166479,ship 166480,deer 166481,frog 166482,cat 166483,frog 166484,airplane 166485,deer 166486,truck 166487,bird 166488,truck 166489,truck 166490,airplane 166491,frog 166492,dog 166493,frog 166494,deer 166495,automobile 166496,deer 166497,ship 166498,deer 166499,dog 166500,deer 166501,cat 166502,deer 166503,horse 166504,horse 166505,deer 166506,cat 166507,deer 166508,deer 166509,bird 166510,automobile 166511,truck 166512,truck 166513,cat 166514,airplane 166515,cat 166516,bird 166517,cat 166518,truck 166519,dog 166520,dog 166521,cat 166522,cat 166523,deer 166524,automobile 166525,automobile 166526,deer 166527,airplane 166528,frog 166529,dog 166530,deer 166531,truck 166532,dog 166533,deer 166534,cat 166535,bird 166536,dog 166537,airplane 166538,deer 166539,cat 166540,truck 166541,horse 166542,bird 166543,cat 166544,dog 166545,automobile 166546,airplane 166547,cat 166548,deer 166549,truck 166550,cat 166551,dog 166552,horse 166553,truck 166554,deer 166555,ship 166556,cat 166557,frog 166558,bird 166559,airplane 166560,frog 166561,ship 166562,dog 166563,automobile 166564,horse 166565,frog 166566,ship 166567,automobile 166568,deer 166569,truck 166570,truck 166571,airplane 166572,frog 166573,automobile 166574,truck 166575,ship 166576,truck 166577,dog 166578,frog 166579,bird 166580,bird 166581,airplane 166582,horse 166583,ship 166584,dog 166585,airplane 166586,truck 166587,bird 166588,truck 166589,airplane 166590,cat 166591,cat 166592,horse 166593,cat 166594,dog 166595,automobile 166596,horse 166597,airplane 166598,ship 166599,bird 166600,dog 166601,bird 166602,cat 166603,frog 166604,truck 166605,cat 166606,cat 166607,deer 166608,deer 166609,truck 166610,dog 166611,dog 166612,ship 166613,dog 166614,cat 166615,frog 166616,cat 166617,airplane 166618,deer 166619,horse 166620,bird 166621,deer 166622,cat 166623,truck 166624,truck 166625,truck 166626,frog 166627,truck 166628,bird 166629,bird 166630,deer 166631,dog 166632,cat 166633,truck 166634,deer 166635,airplane 166636,deer 166637,bird 166638,airplane 166639,cat 166640,frog 166641,horse 166642,automobile 166643,bird 166644,deer 166645,frog 166646,horse 166647,cat 166648,airplane 166649,ship 166650,deer 166651,dog 166652,automobile 166653,frog 166654,cat 166655,truck 166656,horse 166657,airplane 166658,frog 166659,dog 166660,deer 166661,ship 166662,dog 166663,cat 166664,airplane 166665,deer 166666,frog 166667,frog 166668,dog 166669,bird 166670,frog 166671,deer 166672,ship 166673,bird 166674,truck 166675,frog 166676,deer 166677,automobile 166678,airplane 166679,bird 166680,frog 166681,truck 166682,airplane 166683,bird 166684,horse 166685,truck 166686,frog 166687,dog 166688,automobile 166689,deer 166690,frog 166691,truck 166692,bird 166693,deer 166694,automobile 166695,airplane 166696,automobile 166697,bird 166698,ship 166699,automobile 166700,truck 166701,cat 166702,horse 166703,cat 166704,dog 166705,deer 166706,deer 166707,frog 166708,airplane 166709,cat 166710,deer 166711,horse 166712,dog 166713,frog 166714,dog 166715,deer 166716,cat 166717,bird 166718,deer 166719,frog 166720,dog 166721,bird 166722,cat 166723,automobile 166724,dog 166725,truck 166726,truck 166727,horse 166728,airplane 166729,bird 166730,frog 166731,cat 166732,truck 166733,deer 166734,automobile 166735,horse 166736,airplane 166737,airplane 166738,truck 166739,dog 166740,dog 166741,airplane 166742,cat 166743,deer 166744,horse 166745,dog 166746,bird 166747,deer 166748,frog 166749,bird 166750,horse 166751,deer 166752,deer 166753,ship 166754,dog 166755,frog 166756,bird 166757,truck 166758,airplane 166759,frog 166760,frog 166761,cat 166762,frog 166763,deer 166764,cat 166765,cat 166766,dog 166767,horse 166768,truck 166769,automobile 166770,airplane 166771,cat 166772,frog 166773,cat 166774,horse 166775,ship 166776,frog 166777,frog 166778,frog 166779,deer 166780,truck 166781,dog 166782,ship 166783,bird 166784,airplane 166785,deer 166786,truck 166787,cat 166788,dog 166789,airplane 166790,ship 166791,dog 166792,ship 166793,bird 166794,dog 166795,deer 166796,cat 166797,deer 166798,deer 166799,deer 166800,dog 166801,deer 166802,automobile 166803,frog 166804,frog 166805,dog 166806,airplane 166807,dog 166808,deer 166809,automobile 166810,truck 166811,bird 166812,truck 166813,truck 166814,truck 166815,truck 166816,deer 166817,ship 166818,truck 166819,ship 166820,bird 166821,dog 166822,cat 166823,truck 166824,deer 166825,airplane 166826,truck 166827,bird 166828,automobile 166829,cat 166830,frog 166831,cat 166832,bird 166833,automobile 166834,deer 166835,bird 166836,frog 166837,deer 166838,truck 166839,dog 166840,frog 166841,cat 166842,frog 166843,ship 166844,airplane 166845,automobile 166846,truck 166847,horse 166848,ship 166849,frog 166850,deer 166851,cat 166852,deer 166853,deer 166854,horse 166855,bird 166856,automobile 166857,airplane 166858,cat 166859,cat 166860,dog 166861,truck 166862,deer 166863,horse 166864,dog 166865,dog 166866,ship 166867,deer 166868,dog 166869,frog 166870,frog 166871,airplane 166872,cat 166873,ship 166874,truck 166875,ship 166876,horse 166877,ship 166878,dog 166879,bird 166880,bird 166881,frog 166882,truck 166883,bird 166884,cat 166885,horse 166886,truck 166887,cat 166888,airplane 166889,dog 166890,horse 166891,deer 166892,dog 166893,cat 166894,automobile 166895,automobile 166896,horse 166897,dog 166898,deer 166899,ship 166900,dog 166901,deer 166902,airplane 166903,truck 166904,airplane 166905,frog 166906,ship 166907,truck 166908,automobile 166909,ship 166910,bird 166911,cat 166912,bird 166913,airplane 166914,bird 166915,truck 166916,truck 166917,automobile 166918,deer 166919,ship 166920,horse 166921,bird 166922,frog 166923,automobile 166924,truck 166925,dog 166926,truck 166927,cat 166928,airplane 166929,bird 166930,horse 166931,frog 166932,ship 166933,airplane 166934,automobile 166935,frog 166936,automobile 166937,frog 166938,frog 166939,frog 166940,ship 166941,frog 166942,dog 166943,horse 166944,horse 166945,ship 166946,cat 166947,bird 166948,cat 166949,cat 166950,truck 166951,deer 166952,horse 166953,frog 166954,cat 166955,frog 166956,truck 166957,automobile 166958,automobile 166959,frog 166960,truck 166961,deer 166962,cat 166963,cat 166964,cat 166965,deer 166966,horse 166967,dog 166968,frog 166969,dog 166970,cat 166971,automobile 166972,horse 166973,truck 166974,cat 166975,bird 166976,deer 166977,truck 166978,horse 166979,truck 166980,dog 166981,automobile 166982,frog 166983,airplane 166984,airplane 166985,automobile 166986,truck 166987,cat 166988,horse 166989,frog 166990,frog 166991,airplane 166992,ship 166993,airplane 166994,bird 166995,ship 166996,truck 166997,dog 166998,frog 166999,automobile 167000,truck 167001,airplane 167002,airplane 167003,ship 167004,truck 167005,truck 167006,deer 167007,ship 167008,bird 167009,frog 167010,airplane 167011,airplane 167012,cat 167013,dog 167014,cat 167015,frog 167016,deer 167017,deer 167018,bird 167019,deer 167020,deer 167021,deer 167022,frog 167023,cat 167024,airplane 167025,deer 167026,bird 167027,frog 167028,truck 167029,bird 167030,truck 167031,deer 167032,frog 167033,deer 167034,frog 167035,dog 167036,deer 167037,deer 167038,dog 167039,deer 167040,horse 167041,airplane 167042,frog 167043,ship 167044,ship 167045,truck 167046,cat 167047,truck 167048,frog 167049,deer 167050,horse 167051,cat 167052,automobile 167053,frog 167054,deer 167055,automobile 167056,bird 167057,cat 167058,deer 167059,truck 167060,truck 167061,deer 167062,truck 167063,airplane 167064,frog 167065,deer 167066,deer 167067,horse 167068,bird 167069,cat 167070,truck 167071,ship 167072,deer 167073,ship 167074,deer 167075,truck 167076,frog 167077,truck 167078,airplane 167079,horse 167080,dog 167081,cat 167082,frog 167083,ship 167084,horse 167085,airplane 167086,cat 167087,airplane 167088,automobile 167089,automobile 167090,dog 167091,truck 167092,cat 167093,horse 167094,truck 167095,cat 167096,frog 167097,cat 167098,truck 167099,bird 167100,bird 167101,automobile 167102,ship 167103,bird 167104,cat 167105,bird 167106,dog 167107,automobile 167108,frog 167109,deer 167110,deer 167111,automobile 167112,deer 167113,automobile 167114,automobile 167115,airplane 167116,cat 167117,deer 167118,frog 167119,airplane 167120,horse 167121,airplane 167122,horse 167123,truck 167124,horse 167125,ship 167126,frog 167127,airplane 167128,horse 167129,dog 167130,truck 167131,horse 167132,bird 167133,cat 167134,dog 167135,automobile 167136,truck 167137,frog 167138,ship 167139,frog 167140,automobile 167141,cat 167142,truck 167143,cat 167144,ship 167145,frog 167146,truck 167147,cat 167148,cat 167149,dog 167150,truck 167151,horse 167152,airplane 167153,deer 167154,truck 167155,truck 167156,dog 167157,deer 167158,cat 167159,truck 167160,horse 167161,deer 167162,horse 167163,cat 167164,cat 167165,frog 167166,frog 167167,dog 167168,airplane 167169,truck 167170,truck 167171,dog 167172,deer 167173,horse 167174,automobile 167175,cat 167176,truck 167177,dog 167178,horse 167179,horse 167180,frog 167181,deer 167182,horse 167183,bird 167184,bird 167185,ship 167186,deer 167187,truck 167188,cat 167189,airplane 167190,automobile 167191,bird 167192,bird 167193,bird 167194,ship 167195,airplane 167196,dog 167197,dog 167198,frog 167199,cat 167200,horse 167201,bird 167202,automobile 167203,airplane 167204,automobile 167205,horse 167206,frog 167207,cat 167208,truck 167209,truck 167210,deer 167211,airplane 167212,automobile 167213,horse 167214,deer 167215,dog 167216,truck 167217,airplane 167218,cat 167219,horse 167220,deer 167221,frog 167222,deer 167223,cat 167224,bird 167225,cat 167226,cat 167227,deer 167228,cat 167229,automobile 167230,truck 167231,deer 167232,automobile 167233,cat 167234,cat 167235,airplane 167236,cat 167237,truck 167238,truck 167239,horse 167240,dog 167241,truck 167242,dog 167243,cat 167244,ship 167245,truck 167246,airplane 167247,ship 167248,ship 167249,ship 167250,dog 167251,ship 167252,ship 167253,deer 167254,frog 167255,ship 167256,cat 167257,bird 167258,bird 167259,deer 167260,airplane 167261,frog 167262,airplane 167263,frog 167264,airplane 167265,truck 167266,dog 167267,cat 167268,deer 167269,ship 167270,truck 167271,frog 167272,automobile 167273,bird 167274,cat 167275,dog 167276,cat 167277,cat 167278,horse 167279,frog 167280,frog 167281,cat 167282,bird 167283,horse 167284,frog 167285,ship 167286,bird 167287,automobile 167288,cat 167289,automobile 167290,automobile 167291,deer 167292,frog 167293,airplane 167294,truck 167295,horse 167296,truck 167297,horse 167298,deer 167299,deer 167300,deer 167301,frog 167302,dog 167303,frog 167304,dog 167305,cat 167306,deer 167307,truck 167308,cat 167309,ship 167310,ship 167311,ship 167312,ship 167313,cat 167314,ship 167315,truck 167316,frog 167317,deer 167318,deer 167319,horse 167320,horse 167321,frog 167322,cat 167323,airplane 167324,deer 167325,airplane 167326,truck 167327,deer 167328,dog 167329,ship 167330,deer 167331,dog 167332,dog 167333,automobile 167334,cat 167335,ship 167336,frog 167337,airplane 167338,horse 167339,horse 167340,frog 167341,automobile 167342,deer 167343,cat 167344,automobile 167345,cat 167346,bird 167347,dog 167348,truck 167349,ship 167350,airplane 167351,truck 167352,truck 167353,deer 167354,airplane 167355,automobile 167356,horse 167357,horse 167358,truck 167359,cat 167360,ship 167361,airplane 167362,dog 167363,dog 167364,deer 167365,horse 167366,bird 167367,deer 167368,deer 167369,truck 167370,dog 167371,horse 167372,deer 167373,frog 167374,cat 167375,deer 167376,ship 167377,airplane 167378,horse 167379,ship 167380,automobile 167381,horse 167382,cat 167383,deer 167384,deer 167385,ship 167386,deer 167387,frog 167388,cat 167389,frog 167390,frog 167391,bird 167392,truck 167393,truck 167394,horse 167395,ship 167396,cat 167397,ship 167398,horse 167399,ship 167400,ship 167401,truck 167402,truck 167403,automobile 167404,deer 167405,automobile 167406,horse 167407,truck 167408,airplane 167409,cat 167410,airplane 167411,truck 167412,cat 167413,truck 167414,truck 167415,deer 167416,horse 167417,deer 167418,truck 167419,frog 167420,bird 167421,cat 167422,dog 167423,dog 167424,airplane 167425,ship 167426,bird 167427,frog 167428,frog 167429,automobile 167430,bird 167431,ship 167432,ship 167433,horse 167434,ship 167435,frog 167436,automobile 167437,frog 167438,deer 167439,dog 167440,deer 167441,deer 167442,ship 167443,automobile 167444,cat 167445,truck 167446,bird 167447,deer 167448,truck 167449,cat 167450,deer 167451,bird 167452,ship 167453,ship 167454,automobile 167455,frog 167456,truck 167457,dog 167458,automobile 167459,airplane 167460,dog 167461,cat 167462,airplane 167463,deer 167464,dog 167465,deer 167466,frog 167467,bird 167468,truck 167469,truck 167470,deer 167471,ship 167472,ship 167473,bird 167474,dog 167475,cat 167476,deer 167477,cat 167478,dog 167479,cat 167480,automobile 167481,deer 167482,bird 167483,deer 167484,automobile 167485,truck 167486,truck 167487,ship 167488,horse 167489,dog 167490,deer 167491,frog 167492,frog 167493,truck 167494,deer 167495,cat 167496,deer 167497,dog 167498,horse 167499,frog 167500,cat 167501,horse 167502,cat 167503,deer 167504,automobile 167505,cat 167506,truck 167507,frog 167508,truck 167509,bird 167510,horse 167511,bird 167512,frog 167513,ship 167514,truck 167515,deer 167516,cat 167517,horse 167518,horse 167519,cat 167520,cat 167521,horse 167522,automobile 167523,airplane 167524,truck 167525,deer 167526,ship 167527,deer 167528,frog 167529,deer 167530,frog 167531,deer 167532,frog 167533,ship 167534,horse 167535,automobile 167536,airplane 167537,bird 167538,deer 167539,horse 167540,deer 167541,bird 167542,deer 167543,dog 167544,deer 167545,deer 167546,automobile 167547,dog 167548,cat 167549,dog 167550,airplane 167551,frog 167552,deer 167553,ship 167554,frog 167555,truck 167556,truck 167557,cat 167558,automobile 167559,bird 167560,deer 167561,ship 167562,dog 167563,bird 167564,cat 167565,bird 167566,dog 167567,horse 167568,dog 167569,truck 167570,deer 167571,ship 167572,automobile 167573,ship 167574,automobile 167575,horse 167576,automobile 167577,dog 167578,dog 167579,ship 167580,automobile 167581,dog 167582,ship 167583,dog 167584,horse 167585,frog 167586,cat 167587,horse 167588,cat 167589,frog 167590,horse 167591,deer 167592,frog 167593,frog 167594,dog 167595,dog 167596,truck 167597,ship 167598,frog 167599,truck 167600,horse 167601,automobile 167602,airplane 167603,cat 167604,cat 167605,cat 167606,truck 167607,dog 167608,airplane 167609,horse 167610,dog 167611,ship 167612,horse 167613,frog 167614,horse 167615,cat 167616,airplane 167617,bird 167618,deer 167619,airplane 167620,truck 167621,ship 167622,bird 167623,bird 167624,horse 167625,frog 167626,deer 167627,horse 167628,cat 167629,bird 167630,horse 167631,frog 167632,frog 167633,frog 167634,airplane 167635,truck 167636,ship 167637,deer 167638,ship 167639,airplane 167640,horse 167641,automobile 167642,deer 167643,frog 167644,deer 167645,automobile 167646,automobile 167647,horse 167648,truck 167649,dog 167650,truck 167651,dog 167652,truck 167653,deer 167654,deer 167655,deer 167656,frog 167657,ship 167658,deer 167659,cat 167660,ship 167661,airplane 167662,deer 167663,truck 167664,airplane 167665,truck 167666,cat 167667,cat 167668,deer 167669,dog 167670,deer 167671,truck 167672,cat 167673,deer 167674,cat 167675,ship 167676,cat 167677,cat 167678,automobile 167679,bird 167680,cat 167681,truck 167682,cat 167683,frog 167684,horse 167685,dog 167686,cat 167687,dog 167688,deer 167689,frog 167690,dog 167691,ship 167692,frog 167693,horse 167694,horse 167695,airplane 167696,cat 167697,dog 167698,frog 167699,frog 167700,deer 167701,deer 167702,cat 167703,bird 167704,frog 167705,ship 167706,frog 167707,bird 167708,airplane 167709,bird 167710,bird 167711,airplane 167712,cat 167713,bird 167714,deer 167715,airplane 167716,frog 167717,bird 167718,truck 167719,frog 167720,deer 167721,bird 167722,automobile 167723,automobile 167724,deer 167725,automobile 167726,deer 167727,airplane 167728,frog 167729,frog 167730,ship 167731,ship 167732,truck 167733,bird 167734,deer 167735,deer 167736,airplane 167737,automobile 167738,deer 167739,frog 167740,dog 167741,automobile 167742,horse 167743,deer 167744,ship 167745,horse 167746,horse 167747,airplane 167748,ship 167749,frog 167750,ship 167751,deer 167752,cat 167753,automobile 167754,bird 167755,frog 167756,horse 167757,ship 167758,cat 167759,frog 167760,truck 167761,cat 167762,frog 167763,cat 167764,truck 167765,dog 167766,frog 167767,dog 167768,truck 167769,dog 167770,ship 167771,frog 167772,deer 167773,deer 167774,truck 167775,dog 167776,automobile 167777,ship 167778,truck 167779,automobile 167780,automobile 167781,automobile 167782,bird 167783,dog 167784,deer 167785,dog 167786,bird 167787,ship 167788,ship 167789,dog 167790,ship 167791,dog 167792,horse 167793,deer 167794,dog 167795,cat 167796,frog 167797,cat 167798,deer 167799,deer 167800,truck 167801,frog 167802,bird 167803,dog 167804,deer 167805,ship 167806,cat 167807,cat 167808,deer 167809,cat 167810,bird 167811,ship 167812,ship 167813,airplane 167814,horse 167815,dog 167816,deer 167817,airplane 167818,bird 167819,bird 167820,frog 167821,airplane 167822,automobile 167823,cat 167824,cat 167825,dog 167826,cat 167827,cat 167828,dog 167829,deer 167830,deer 167831,ship 167832,bird 167833,frog 167834,dog 167835,dog 167836,frog 167837,airplane 167838,deer 167839,dog 167840,truck 167841,dog 167842,airplane 167843,bird 167844,airplane 167845,deer 167846,frog 167847,cat 167848,dog 167849,automobile 167850,cat 167851,frog 167852,truck 167853,automobile 167854,dog 167855,airplane 167856,frog 167857,deer 167858,airplane 167859,truck 167860,dog 167861,frog 167862,cat 167863,truck 167864,ship 167865,ship 167866,deer 167867,truck 167868,bird 167869,bird 167870,frog 167871,deer 167872,truck 167873,cat 167874,horse 167875,deer 167876,horse 167877,cat 167878,truck 167879,cat 167880,deer 167881,airplane 167882,cat 167883,airplane 167884,horse 167885,horse 167886,airplane 167887,horse 167888,horse 167889,horse 167890,airplane 167891,bird 167892,dog 167893,dog 167894,deer 167895,airplane 167896,truck 167897,deer 167898,cat 167899,horse 167900,cat 167901,cat 167902,bird 167903,ship 167904,automobile 167905,automobile 167906,frog 167907,frog 167908,truck 167909,ship 167910,cat 167911,horse 167912,cat 167913,horse 167914,bird 167915,cat 167916,deer 167917,cat 167918,deer 167919,deer 167920,cat 167921,bird 167922,ship 167923,automobile 167924,airplane 167925,cat 167926,frog 167927,horse 167928,dog 167929,bird 167930,truck 167931,horse 167932,cat 167933,ship 167934,frog 167935,frog 167936,airplane 167937,cat 167938,deer 167939,dog 167940,dog 167941,bird 167942,deer 167943,horse 167944,deer 167945,frog 167946,ship 167947,frog 167948,truck 167949,cat 167950,horse 167951,frog 167952,automobile 167953,cat 167954,dog 167955,frog 167956,airplane 167957,dog 167958,bird 167959,frog 167960,deer 167961,airplane 167962,dog 167963,deer 167964,automobile 167965,deer 167966,deer 167967,truck 167968,dog 167969,airplane 167970,cat 167971,dog 167972,automobile 167973,deer 167974,airplane 167975,horse 167976,automobile 167977,horse 167978,automobile 167979,frog 167980,horse 167981,cat 167982,automobile 167983,dog 167984,frog 167985,dog 167986,cat 167987,bird 167988,deer 167989,dog 167990,cat 167991,dog 167992,cat 167993,ship 167994,airplane 167995,cat 167996,cat 167997,deer 167998,airplane 167999,airplane 168000,deer 168001,airplane 168002,deer 168003,deer 168004,ship 168005,ship 168006,ship 168007,airplane 168008,deer 168009,bird 168010,airplane 168011,horse 168012,horse 168013,ship 168014,frog 168015,deer 168016,cat 168017,airplane 168018,bird 168019,bird 168020,horse 168021,airplane 168022,horse 168023,deer 168024,bird 168025,deer 168026,frog 168027,bird 168028,bird 168029,automobile 168030,frog 168031,horse 168032,deer 168033,deer 168034,ship 168035,cat 168036,horse 168037,dog 168038,automobile 168039,deer 168040,truck 168041,bird 168042,horse 168043,bird 168044,airplane 168045,ship 168046,airplane 168047,frog 168048,horse 168049,ship 168050,ship 168051,ship 168052,airplane 168053,cat 168054,horse 168055,ship 168056,horse 168057,truck 168058,deer 168059,frog 168060,airplane 168061,cat 168062,dog 168063,truck 168064,deer 168065,horse 168066,deer 168067,dog 168068,airplane 168069,airplane 168070,cat 168071,dog 168072,ship 168073,horse 168074,frog 168075,cat 168076,deer 168077,truck 168078,frog 168079,automobile 168080,horse 168081,bird 168082,horse 168083,frog 168084,truck 168085,frog 168086,deer 168087,automobile 168088,horse 168089,dog 168090,frog 168091,horse 168092,truck 168093,deer 168094,frog 168095,bird 168096,frog 168097,truck 168098,airplane 168099,deer 168100,cat 168101,airplane 168102,dog 168103,truck 168104,cat 168105,ship 168106,horse 168107,dog 168108,deer 168109,automobile 168110,frog 168111,frog 168112,horse 168113,deer 168114,horse 168115,truck 168116,truck 168117,bird 168118,frog 168119,truck 168120,dog 168121,cat 168122,truck 168123,horse 168124,frog 168125,deer 168126,automobile 168127,automobile 168128,deer 168129,truck 168130,automobile 168131,truck 168132,bird 168133,cat 168134,frog 168135,ship 168136,bird 168137,dog 168138,airplane 168139,automobile 168140,truck 168141,cat 168142,dog 168143,automobile 168144,horse 168145,horse 168146,automobile 168147,frog 168148,ship 168149,dog 168150,deer 168151,deer 168152,airplane 168153,horse 168154,dog 168155,frog 168156,truck 168157,cat 168158,automobile 168159,horse 168160,frog 168161,truck 168162,airplane 168163,horse 168164,deer 168165,horse 168166,horse 168167,dog 168168,truck 168169,deer 168170,cat 168171,automobile 168172,cat 168173,dog 168174,dog 168175,cat 168176,frog 168177,automobile 168178,deer 168179,deer 168180,horse 168181,automobile 168182,cat 168183,deer 168184,airplane 168185,deer 168186,frog 168187,horse 168188,automobile 168189,bird 168190,dog 168191,cat 168192,horse 168193,horse 168194,frog 168195,dog 168196,automobile 168197,cat 168198,bird 168199,ship 168200,bird 168201,horse 168202,ship 168203,truck 168204,truck 168205,frog 168206,dog 168207,airplane 168208,cat 168209,frog 168210,horse 168211,dog 168212,frog 168213,airplane 168214,dog 168215,deer 168216,horse 168217,deer 168218,frog 168219,horse 168220,deer 168221,deer 168222,horse 168223,automobile 168224,deer 168225,ship 168226,cat 168227,ship 168228,automobile 168229,dog 168230,frog 168231,bird 168232,ship 168233,bird 168234,ship 168235,automobile 168236,deer 168237,deer 168238,ship 168239,dog 168240,cat 168241,bird 168242,dog 168243,deer 168244,cat 168245,ship 168246,cat 168247,cat 168248,automobile 168249,bird 168250,frog 168251,frog 168252,horse 168253,cat 168254,frog 168255,truck 168256,cat 168257,deer 168258,frog 168259,deer 168260,truck 168261,cat 168262,airplane 168263,frog 168264,automobile 168265,airplane 168266,cat 168267,frog 168268,dog 168269,frog 168270,cat 168271,cat 168272,frog 168273,dog 168274,cat 168275,cat 168276,bird 168277,ship 168278,horse 168279,dog 168280,ship 168281,airplane 168282,frog 168283,horse 168284,truck 168285,frog 168286,truck 168287,airplane 168288,truck 168289,cat 168290,deer 168291,truck 168292,dog 168293,frog 168294,dog 168295,dog 168296,deer 168297,cat 168298,truck 168299,ship 168300,ship 168301,ship 168302,dog 168303,airplane 168304,deer 168305,ship 168306,cat 168307,deer 168308,horse 168309,deer 168310,cat 168311,dog 168312,frog 168313,deer 168314,truck 168315,frog 168316,airplane 168317,airplane 168318,horse 168319,cat 168320,truck 168321,ship 168322,truck 168323,horse 168324,horse 168325,airplane 168326,truck 168327,horse 168328,airplane 168329,horse 168330,frog 168331,frog 168332,cat 168333,deer 168334,frog 168335,cat 168336,deer 168337,airplane 168338,dog 168339,deer 168340,airplane 168341,deer 168342,airplane 168343,airplane 168344,truck 168345,airplane 168346,deer 168347,cat 168348,horse 168349,dog 168350,bird 168351,bird 168352,horse 168353,airplane 168354,ship 168355,dog 168356,deer 168357,automobile 168358,ship 168359,frog 168360,airplane 168361,bird 168362,cat 168363,dog 168364,automobile 168365,cat 168366,truck 168367,dog 168368,bird 168369,frog 168370,bird 168371,cat 168372,ship 168373,deer 168374,truck 168375,automobile 168376,dog 168377,truck 168378,bird 168379,airplane 168380,deer 168381,frog 168382,truck 168383,cat 168384,cat 168385,ship 168386,frog 168387,horse 168388,bird 168389,cat 168390,cat 168391,bird 168392,horse 168393,horse 168394,deer 168395,frog 168396,frog 168397,airplane 168398,deer 168399,airplane 168400,dog 168401,horse 168402,automobile 168403,horse 168404,deer 168405,ship 168406,bird 168407,frog 168408,dog 168409,bird 168410,frog 168411,deer 168412,horse 168413,cat 168414,deer 168415,frog 168416,cat 168417,ship 168418,truck 168419,frog 168420,automobile 168421,dog 168422,cat 168423,truck 168424,dog 168425,deer 168426,deer 168427,horse 168428,frog 168429,dog 168430,dog 168431,frog 168432,airplane 168433,bird 168434,frog 168435,frog 168436,deer 168437,airplane 168438,frog 168439,cat 168440,bird 168441,dog 168442,automobile 168443,cat 168444,horse 168445,truck 168446,cat 168447,airplane 168448,frog 168449,truck 168450,automobile 168451,deer 168452,deer 168453,cat 168454,automobile 168455,horse 168456,ship 168457,horse 168458,deer 168459,frog 168460,frog 168461,bird 168462,deer 168463,airplane 168464,frog 168465,bird 168466,bird 168467,frog 168468,dog 168469,truck 168470,deer 168471,truck 168472,deer 168473,airplane 168474,cat 168475,deer 168476,dog 168477,truck 168478,dog 168479,truck 168480,cat 168481,frog 168482,automobile 168483,bird 168484,automobile 168485,dog 168486,cat 168487,cat 168488,airplane 168489,dog 168490,dog 168491,frog 168492,deer 168493,deer 168494,airplane 168495,cat 168496,bird 168497,cat 168498,airplane 168499,airplane 168500,dog 168501,cat 168502,horse 168503,deer 168504,bird 168505,cat 168506,bird 168507,horse 168508,truck 168509,horse 168510,ship 168511,deer 168512,horse 168513,cat 168514,ship 168515,truck 168516,frog 168517,truck 168518,horse 168519,truck 168520,deer 168521,airplane 168522,bird 168523,deer 168524,truck 168525,bird 168526,frog 168527,horse 168528,automobile 168529,truck 168530,horse 168531,cat 168532,frog 168533,deer 168534,dog 168535,bird 168536,dog 168537,automobile 168538,dog 168539,airplane 168540,truck 168541,dog 168542,truck 168543,deer 168544,deer 168545,frog 168546,horse 168547,frog 168548,truck 168549,deer 168550,bird 168551,cat 168552,automobile 168553,horse 168554,deer 168555,deer 168556,airplane 168557,deer 168558,deer 168559,airplane 168560,truck 168561,dog 168562,bird 168563,truck 168564,deer 168565,dog 168566,dog 168567,dog 168568,truck 168569,horse 168570,frog 168571,cat 168572,cat 168573,ship 168574,deer 168575,dog 168576,bird 168577,frog 168578,deer 168579,ship 168580,airplane 168581,automobile 168582,airplane 168583,bird 168584,airplane 168585,horse 168586,frog 168587,deer 168588,truck 168589,dog 168590,truck 168591,truck 168592,ship 168593,ship 168594,deer 168595,cat 168596,deer 168597,truck 168598,airplane 168599,truck 168600,deer 168601,truck 168602,bird 168603,deer 168604,frog 168605,truck 168606,dog 168607,deer 168608,deer 168609,truck 168610,cat 168611,cat 168612,cat 168613,ship 168614,airplane 168615,truck 168616,horse 168617,horse 168618,cat 168619,automobile 168620,automobile 168621,truck 168622,truck 168623,bird 168624,deer 168625,ship 168626,truck 168627,dog 168628,horse 168629,bird 168630,truck 168631,truck 168632,truck 168633,ship 168634,cat 168635,horse 168636,horse 168637,dog 168638,cat 168639,deer 168640,horse 168641,frog 168642,deer 168643,bird 168644,truck 168645,bird 168646,cat 168647,dog 168648,frog 168649,ship 168650,bird 168651,deer 168652,dog 168653,cat 168654,bird 168655,frog 168656,truck 168657,cat 168658,dog 168659,horse 168660,cat 168661,deer 168662,automobile 168663,frog 168664,deer 168665,truck 168666,horse 168667,horse 168668,cat 168669,airplane 168670,airplane 168671,dog 168672,horse 168673,cat 168674,frog 168675,airplane 168676,bird 168677,bird 168678,bird 168679,dog 168680,automobile 168681,horse 168682,deer 168683,deer 168684,dog 168685,frog 168686,deer 168687,dog 168688,deer 168689,airplane 168690,airplane 168691,deer 168692,bird 168693,dog 168694,horse 168695,deer 168696,automobile 168697,airplane 168698,ship 168699,truck 168700,ship 168701,dog 168702,truck 168703,airplane 168704,cat 168705,truck 168706,ship 168707,dog 168708,dog 168709,cat 168710,horse 168711,bird 168712,deer 168713,deer 168714,frog 168715,bird 168716,cat 168717,horse 168718,airplane 168719,truck 168720,dog 168721,truck 168722,cat 168723,deer 168724,frog 168725,bird 168726,truck 168727,cat 168728,ship 168729,airplane 168730,airplane 168731,airplane 168732,horse 168733,dog 168734,bird 168735,dog 168736,deer 168737,bird 168738,cat 168739,ship 168740,truck 168741,cat 168742,truck 168743,cat 168744,bird 168745,frog 168746,dog 168747,deer 168748,ship 168749,airplane 168750,frog 168751,horse 168752,automobile 168753,horse 168754,horse 168755,deer 168756,dog 168757,automobile 168758,dog 168759,deer 168760,cat 168761,dog 168762,deer 168763,ship 168764,frog 168765,ship 168766,horse 168767,automobile 168768,deer 168769,automobile 168770,ship 168771,cat 168772,horse 168773,deer 168774,truck 168775,horse 168776,dog 168777,truck 168778,truck 168779,dog 168780,bird 168781,ship 168782,frog 168783,bird 168784,automobile 168785,bird 168786,airplane 168787,frog 168788,ship 168789,deer 168790,airplane 168791,cat 168792,horse 168793,airplane 168794,ship 168795,bird 168796,truck 168797,horse 168798,cat 168799,truck 168800,dog 168801,dog 168802,bird 168803,cat 168804,dog 168805,dog 168806,airplane 168807,frog 168808,frog 168809,truck 168810,truck 168811,deer 168812,cat 168813,cat 168814,deer 168815,automobile 168816,automobile 168817,frog 168818,dog 168819,cat 168820,bird 168821,frog 168822,dog 168823,dog 168824,dog 168825,frog 168826,frog 168827,airplane 168828,truck 168829,airplane 168830,dog 168831,horse 168832,truck 168833,cat 168834,ship 168835,dog 168836,dog 168837,deer 168838,automobile 168839,deer 168840,horse 168841,ship 168842,deer 168843,cat 168844,truck 168845,bird 168846,cat 168847,horse 168848,deer 168849,ship 168850,airplane 168851,frog 168852,ship 168853,bird 168854,cat 168855,deer 168856,ship 168857,airplane 168858,ship 168859,cat 168860,cat 168861,bird 168862,frog 168863,airplane 168864,truck 168865,airplane 168866,automobile 168867,frog 168868,airplane 168869,horse 168870,bird 168871,truck 168872,horse 168873,horse 168874,frog 168875,airplane 168876,frog 168877,airplane 168878,horse 168879,airplane 168880,frog 168881,bird 168882,cat 168883,dog 168884,airplane 168885,bird 168886,automobile 168887,frog 168888,ship 168889,ship 168890,horse 168891,cat 168892,deer 168893,cat 168894,airplane 168895,airplane 168896,dog 168897,airplane 168898,automobile 168899,bird 168900,deer 168901,airplane 168902,horse 168903,deer 168904,airplane 168905,frog 168906,truck 168907,deer 168908,bird 168909,cat 168910,dog 168911,frog 168912,horse 168913,deer 168914,bird 168915,truck 168916,frog 168917,dog 168918,frog 168919,deer 168920,dog 168921,horse 168922,deer 168923,cat 168924,truck 168925,deer 168926,truck 168927,dog 168928,bird 168929,frog 168930,dog 168931,automobile 168932,ship 168933,cat 168934,deer 168935,truck 168936,truck 168937,deer 168938,automobile 168939,bird 168940,dog 168941,bird 168942,frog 168943,deer 168944,airplane 168945,dog 168946,dog 168947,dog 168948,cat 168949,horse 168950,ship 168951,truck 168952,cat 168953,truck 168954,deer 168955,deer 168956,automobile 168957,cat 168958,automobile 168959,deer 168960,truck 168961,cat 168962,cat 168963,bird 168964,deer 168965,airplane 168966,ship 168967,automobile 168968,truck 168969,deer 168970,truck 168971,ship 168972,cat 168973,cat 168974,horse 168975,bird 168976,truck 168977,horse 168978,deer 168979,dog 168980,cat 168981,truck 168982,cat 168983,automobile 168984,frog 168985,deer 168986,dog 168987,truck 168988,truck 168989,truck 168990,airplane 168991,horse 168992,dog 168993,ship 168994,deer 168995,bird 168996,bird 168997,automobile 168998,horse 168999,cat 169000,cat 169001,horse 169002,horse 169003,airplane 169004,frog 169005,dog 169006,cat 169007,ship 169008,truck 169009,cat 169010,frog 169011,dog 169012,frog 169013,ship 169014,horse 169015,cat 169016,ship 169017,bird 169018,dog 169019,cat 169020,bird 169021,bird 169022,cat 169023,truck 169024,automobile 169025,cat 169026,cat 169027,deer 169028,bird 169029,cat 169030,bird 169031,cat 169032,airplane 169033,cat 169034,automobile 169035,horse 169036,bird 169037,deer 169038,truck 169039,airplane 169040,airplane 169041,dog 169042,horse 169043,horse 169044,truck 169045,horse 169046,bird 169047,dog 169048,ship 169049,airplane 169050,deer 169051,automobile 169052,bird 169053,truck 169054,horse 169055,frog 169056,automobile 169057,automobile 169058,truck 169059,deer 169060,ship 169061,cat 169062,frog 169063,ship 169064,truck 169065,bird 169066,cat 169067,dog 169068,dog 169069,dog 169070,cat 169071,ship 169072,dog 169073,automobile 169074,ship 169075,bird 169076,horse 169077,bird 169078,horse 169079,truck 169080,truck 169081,automobile 169082,truck 169083,dog 169084,deer 169085,automobile 169086,deer 169087,dog 169088,truck 169089,truck 169090,airplane 169091,bird 169092,deer 169093,frog 169094,truck 169095,airplane 169096,bird 169097,truck 169098,horse 169099,deer 169100,airplane 169101,ship 169102,cat 169103,ship 169104,truck 169105,frog 169106,cat 169107,airplane 169108,cat 169109,frog 169110,deer 169111,dog 169112,cat 169113,automobile 169114,horse 169115,cat 169116,truck 169117,dog 169118,deer 169119,deer 169120,dog 169121,deer 169122,deer 169123,deer 169124,frog 169125,deer 169126,frog 169127,frog 169128,dog 169129,deer 169130,frog 169131,airplane 169132,deer 169133,automobile 169134,horse 169135,cat 169136,cat 169137,deer 169138,deer 169139,cat 169140,truck 169141,deer 169142,truck 169143,frog 169144,cat 169145,cat 169146,deer 169147,horse 169148,bird 169149,horse 169150,cat 169151,deer 169152,frog 169153,deer 169154,ship 169155,dog 169156,deer 169157,cat 169158,automobile 169159,bird 169160,airplane 169161,truck 169162,truck 169163,truck 169164,deer 169165,bird 169166,deer 169167,dog 169168,deer 169169,automobile 169170,frog 169171,airplane 169172,deer 169173,dog 169174,cat 169175,frog 169176,cat 169177,frog 169178,deer 169179,cat 169180,truck 169181,horse 169182,ship 169183,deer 169184,deer 169185,frog 169186,truck 169187,horse 169188,truck 169189,cat 169190,deer 169191,bird 169192,dog 169193,cat 169194,airplane 169195,ship 169196,ship 169197,deer 169198,ship 169199,dog 169200,cat 169201,airplane 169202,dog 169203,cat 169204,bird 169205,frog 169206,deer 169207,frog 169208,airplane 169209,automobile 169210,dog 169211,dog 169212,airplane 169213,truck 169214,dog 169215,horse 169216,cat 169217,deer 169218,horse 169219,deer 169220,frog 169221,airplane 169222,airplane 169223,horse 169224,frog 169225,bird 169226,truck 169227,horse 169228,automobile 169229,bird 169230,cat 169231,deer 169232,ship 169233,cat 169234,truck 169235,deer 169236,truck 169237,bird 169238,automobile 169239,airplane 169240,horse 169241,airplane 169242,horse 169243,deer 169244,deer 169245,automobile 169246,ship 169247,frog 169248,bird 169249,cat 169250,deer 169251,ship 169252,dog 169253,horse 169254,bird 169255,cat 169256,truck 169257,deer 169258,deer 169259,airplane 169260,deer 169261,truck 169262,frog 169263,cat 169264,cat 169265,truck 169266,deer 169267,bird 169268,deer 169269,airplane 169270,deer 169271,ship 169272,deer 169273,truck 169274,automobile 169275,airplane 169276,truck 169277,frog 169278,dog 169279,airplane 169280,truck 169281,deer 169282,deer 169283,automobile 169284,bird 169285,ship 169286,horse 169287,airplane 169288,dog 169289,automobile 169290,truck 169291,frog 169292,truck 169293,frog 169294,dog 169295,truck 169296,cat 169297,cat 169298,airplane 169299,bird 169300,deer 169301,truck 169302,truck 169303,truck 169304,horse 169305,airplane 169306,airplane 169307,automobile 169308,cat 169309,frog 169310,cat 169311,frog 169312,automobile 169313,airplane 169314,cat 169315,truck 169316,cat 169317,horse 169318,deer 169319,bird 169320,cat 169321,bird 169322,cat 169323,cat 169324,horse 169325,truck 169326,ship 169327,dog 169328,deer 169329,bird 169330,bird 169331,deer 169332,deer 169333,cat 169334,cat 169335,truck 169336,cat 169337,truck 169338,truck 169339,cat 169340,deer 169341,deer 169342,frog 169343,deer 169344,deer 169345,dog 169346,deer 169347,bird 169348,deer 169349,dog 169350,deer 169351,bird 169352,deer 169353,dog 169354,bird 169355,bird 169356,cat 169357,automobile 169358,bird 169359,horse 169360,frog 169361,deer 169362,airplane 169363,truck 169364,ship 169365,truck 169366,bird 169367,airplane 169368,dog 169369,ship 169370,truck 169371,airplane 169372,deer 169373,horse 169374,automobile 169375,frog 169376,cat 169377,truck 169378,deer 169379,automobile 169380,frog 169381,airplane 169382,truck 169383,deer 169384,frog 169385,cat 169386,horse 169387,cat 169388,cat 169389,dog 169390,dog 169391,deer 169392,cat 169393,truck 169394,ship 169395,ship 169396,ship 169397,frog 169398,cat 169399,frog 169400,ship 169401,cat 169402,airplane 169403,cat 169404,deer 169405,frog 169406,frog 169407,truck 169408,truck 169409,bird 169410,bird 169411,horse 169412,bird 169413,automobile 169414,dog 169415,cat 169416,ship 169417,horse 169418,airplane 169419,frog 169420,bird 169421,airplane 169422,frog 169423,deer 169424,cat 169425,deer 169426,dog 169427,truck 169428,cat 169429,automobile 169430,airplane 169431,bird 169432,dog 169433,automobile 169434,airplane 169435,horse 169436,truck 169437,cat 169438,cat 169439,truck 169440,airplane 169441,deer 169442,automobile 169443,dog 169444,airplane 169445,frog 169446,ship 169447,cat 169448,automobile 169449,truck 169450,truck 169451,truck 169452,dog 169453,cat 169454,deer 169455,deer 169456,bird 169457,truck 169458,airplane 169459,automobile 169460,dog 169461,deer 169462,dog 169463,ship 169464,dog 169465,automobile 169466,deer 169467,automobile 169468,automobile 169469,dog 169470,frog 169471,cat 169472,frog 169473,automobile 169474,automobile 169475,bird 169476,horse 169477,automobile 169478,frog 169479,truck 169480,frog 169481,deer 169482,truck 169483,automobile 169484,deer 169485,bird 169486,frog 169487,cat 169488,bird 169489,horse 169490,deer 169491,bird 169492,frog 169493,truck 169494,truck 169495,deer 169496,bird 169497,ship 169498,frog 169499,truck 169500,cat 169501,airplane 169502,automobile 169503,airplane 169504,dog 169505,deer 169506,truck 169507,bird 169508,ship 169509,airplane 169510,frog 169511,frog 169512,cat 169513,deer 169514,horse 169515,truck 169516,deer 169517,frog 169518,horse 169519,deer 169520,horse 169521,airplane 169522,frog 169523,bird 169524,dog 169525,deer 169526,truck 169527,automobile 169528,airplane 169529,cat 169530,truck 169531,cat 169532,frog 169533,automobile 169534,bird 169535,frog 169536,automobile 169537,dog 169538,frog 169539,bird 169540,cat 169541,airplane 169542,bird 169543,frog 169544,truck 169545,cat 169546,horse 169547,cat 169548,deer 169549,deer 169550,frog 169551,ship 169552,truck 169553,bird 169554,horse 169555,airplane 169556,cat 169557,truck 169558,automobile 169559,bird 169560,frog 169561,horse 169562,airplane 169563,automobile 169564,cat 169565,cat 169566,cat 169567,cat 169568,airplane 169569,truck 169570,automobile 169571,frog 169572,cat 169573,automobile 169574,truck 169575,bird 169576,ship 169577,cat 169578,ship 169579,airplane 169580,cat 169581,frog 169582,frog 169583,dog 169584,bird 169585,horse 169586,bird 169587,dog 169588,dog 169589,truck 169590,deer 169591,cat 169592,automobile 169593,bird 169594,frog 169595,deer 169596,truck 169597,horse 169598,deer 169599,frog 169600,cat 169601,ship 169602,deer 169603,dog 169604,deer 169605,truck 169606,dog 169607,deer 169608,horse 169609,horse 169610,horse 169611,deer 169612,automobile 169613,ship 169614,cat 169615,truck 169616,horse 169617,dog 169618,deer 169619,horse 169620,automobile 169621,frog 169622,bird 169623,dog 169624,ship 169625,frog 169626,cat 169627,bird 169628,cat 169629,bird 169630,dog 169631,deer 169632,bird 169633,deer 169634,airplane 169635,bird 169636,bird 169637,cat 169638,frog 169639,cat 169640,frog 169641,horse 169642,airplane 169643,automobile 169644,cat 169645,airplane 169646,automobile 169647,deer 169648,horse 169649,ship 169650,dog 169651,cat 169652,ship 169653,dog 169654,bird 169655,automobile 169656,deer 169657,frog 169658,cat 169659,bird 169660,dog 169661,bird 169662,airplane 169663,frog 169664,deer 169665,deer 169666,dog 169667,cat 169668,dog 169669,frog 169670,horse 169671,truck 169672,frog 169673,airplane 169674,frog 169675,automobile 169676,automobile 169677,deer 169678,horse 169679,truck 169680,frog 169681,deer 169682,deer 169683,automobile 169684,bird 169685,dog 169686,airplane 169687,ship 169688,cat 169689,dog 169690,frog 169691,ship 169692,deer 169693,bird 169694,horse 169695,frog 169696,ship 169697,deer 169698,horse 169699,cat 169700,deer 169701,truck 169702,truck 169703,cat 169704,deer 169705,automobile 169706,horse 169707,bird 169708,frog 169709,truck 169710,horse 169711,deer 169712,deer 169713,cat 169714,deer 169715,ship 169716,dog 169717,cat 169718,truck 169719,deer 169720,dog 169721,automobile 169722,frog 169723,ship 169724,frog 169725,deer 169726,dog 169727,truck 169728,truck 169729,cat 169730,cat 169731,truck 169732,truck 169733,frog 169734,airplane 169735,deer 169736,deer 169737,bird 169738,deer 169739,horse 169740,deer 169741,deer 169742,cat 169743,ship 169744,airplane 169745,truck 169746,deer 169747,ship 169748,horse 169749,frog 169750,deer 169751,automobile 169752,bird 169753,dog 169754,dog 169755,horse 169756,horse 169757,deer 169758,deer 169759,truck 169760,horse 169761,airplane 169762,cat 169763,airplane 169764,frog 169765,horse 169766,ship 169767,dog 169768,frog 169769,cat 169770,ship 169771,dog 169772,dog 169773,deer 169774,truck 169775,bird 169776,truck 169777,airplane 169778,deer 169779,frog 169780,cat 169781,ship 169782,deer 169783,frog 169784,frog 169785,deer 169786,cat 169787,horse 169788,bird 169789,airplane 169790,horse 169791,cat 169792,dog 169793,frog 169794,frog 169795,dog 169796,deer 169797,cat 169798,horse 169799,bird 169800,dog 169801,ship 169802,cat 169803,truck 169804,frog 169805,bird 169806,truck 169807,automobile 169808,automobile 169809,frog 169810,truck 169811,ship 169812,truck 169813,horse 169814,cat 169815,ship 169816,dog 169817,bird 169818,horse 169819,cat 169820,horse 169821,automobile 169822,dog 169823,airplane 169824,bird 169825,airplane 169826,truck 169827,airplane 169828,horse 169829,airplane 169830,horse 169831,frog 169832,frog 169833,deer 169834,ship 169835,ship 169836,airplane 169837,deer 169838,automobile 169839,deer 169840,airplane 169841,truck 169842,dog 169843,automobile 169844,frog 169845,airplane 169846,cat 169847,airplane 169848,truck 169849,ship 169850,cat 169851,cat 169852,bird 169853,frog 169854,bird 169855,truck 169856,ship 169857,cat 169858,dog 169859,horse 169860,ship 169861,dog 169862,dog 169863,truck 169864,cat 169865,automobile 169866,dog 169867,horse 169868,airplane 169869,deer 169870,deer 169871,dog 169872,deer 169873,frog 169874,frog 169875,airplane 169876,frog 169877,horse 169878,frog 169879,ship 169880,airplane 169881,horse 169882,cat 169883,bird 169884,frog 169885,deer 169886,frog 169887,cat 169888,airplane 169889,cat 169890,truck 169891,bird 169892,frog 169893,dog 169894,deer 169895,dog 169896,truck 169897,cat 169898,deer 169899,frog 169900,automobile 169901,ship 169902,frog 169903,dog 169904,truck 169905,ship 169906,dog 169907,automobile 169908,frog 169909,dog 169910,bird 169911,airplane 169912,cat 169913,truck 169914,airplane 169915,bird 169916,frog 169917,ship 169918,cat 169919,horse 169920,cat 169921,horse 169922,airplane 169923,frog 169924,horse 169925,ship 169926,frog 169927,airplane 169928,ship 169929,dog 169930,frog 169931,ship 169932,bird 169933,frog 169934,cat 169935,frog 169936,automobile 169937,dog 169938,dog 169939,horse 169940,cat 169941,deer 169942,dog 169943,deer 169944,truck 169945,bird 169946,deer 169947,dog 169948,truck 169949,bird 169950,cat 169951,bird 169952,cat 169953,cat 169954,cat 169955,ship 169956,ship 169957,deer 169958,dog 169959,bird 169960,airplane 169961,cat 169962,truck 169963,ship 169964,cat 169965,horse 169966,airplane 169967,airplane 169968,bird 169969,deer 169970,truck 169971,ship 169972,truck 169973,cat 169974,frog 169975,cat 169976,horse 169977,ship 169978,automobile 169979,frog 169980,horse 169981,airplane 169982,deer 169983,deer 169984,dog 169985,horse 169986,bird 169987,truck 169988,cat 169989,automobile 169990,airplane 169991,frog 169992,frog 169993,automobile 169994,cat 169995,dog 169996,ship 169997,cat 169998,truck 169999,deer 170000,frog 170001,cat 170002,automobile 170003,cat 170004,horse 170005,horse 170006,deer 170007,ship 170008,cat 170009,automobile 170010,frog 170011,dog 170012,bird 170013,truck 170014,ship 170015,bird 170016,frog 170017,dog 170018,horse 170019,deer 170020,deer 170021,bird 170022,frog 170023,horse 170024,horse 170025,bird 170026,ship 170027,truck 170028,automobile 170029,horse 170030,cat 170031,cat 170032,deer 170033,truck 170034,frog 170035,ship 170036,airplane 170037,automobile 170038,cat 170039,frog 170040,cat 170041,bird 170042,bird 170043,airplane 170044,truck 170045,deer 170046,horse 170047,automobile 170048,airplane 170049,truck 170050,truck 170051,bird 170052,horse 170053,bird 170054,frog 170055,ship 170056,horse 170057,ship 170058,dog 170059,airplane 170060,frog 170061,truck 170062,airplane 170063,frog 170064,truck 170065,frog 170066,airplane 170067,horse 170068,dog 170069,automobile 170070,frog 170071,frog 170072,bird 170073,truck 170074,horse 170075,deer 170076,cat 170077,bird 170078,frog 170079,truck 170080,truck 170081,horse 170082,bird 170083,cat 170084,airplane 170085,truck 170086,dog 170087,cat 170088,ship 170089,bird 170090,airplane 170091,deer 170092,cat 170093,truck 170094,bird 170095,ship 170096,cat 170097,bird 170098,bird 170099,bird 170100,cat 170101,airplane 170102,truck 170103,frog 170104,ship 170105,bird 170106,deer 170107,frog 170108,bird 170109,airplane 170110,truck 170111,bird 170112,airplane 170113,horse 170114,horse 170115,dog 170116,cat 170117,frog 170118,ship 170119,truck 170120,cat 170121,frog 170122,truck 170123,frog 170124,automobile 170125,cat 170126,frog 170127,cat 170128,deer 170129,ship 170130,frog 170131,deer 170132,automobile 170133,deer 170134,dog 170135,deer 170136,cat 170137,bird 170138,bird 170139,dog 170140,cat 170141,deer 170142,truck 170143,dog 170144,bird 170145,truck 170146,ship 170147,automobile 170148,truck 170149,bird 170150,frog 170151,dog 170152,automobile 170153,airplane 170154,airplane 170155,dog 170156,bird 170157,cat 170158,truck 170159,dog 170160,airplane 170161,airplane 170162,deer 170163,dog 170164,deer 170165,dog 170166,dog 170167,frog 170168,ship 170169,airplane 170170,airplane 170171,truck 170172,airplane 170173,horse 170174,dog 170175,dog 170176,airplane 170177,dog 170178,cat 170179,frog 170180,truck 170181,horse 170182,truck 170183,frog 170184,dog 170185,frog 170186,truck 170187,deer 170188,dog 170189,airplane 170190,airplane 170191,bird 170192,horse 170193,dog 170194,automobile 170195,dog 170196,dog 170197,frog 170198,truck 170199,frog 170200,frog 170201,truck 170202,horse 170203,deer 170204,bird 170205,bird 170206,deer 170207,truck 170208,automobile 170209,truck 170210,frog 170211,frog 170212,airplane 170213,ship 170214,dog 170215,airplane 170216,dog 170217,cat 170218,bird 170219,dog 170220,ship 170221,airplane 170222,horse 170223,dog 170224,airplane 170225,ship 170226,cat 170227,airplane 170228,dog 170229,truck 170230,deer 170231,frog 170232,ship 170233,cat 170234,horse 170235,automobile 170236,deer 170237,automobile 170238,truck 170239,cat 170240,airplane 170241,bird 170242,frog 170243,horse 170244,deer 170245,dog 170246,airplane 170247,truck 170248,ship 170249,deer 170250,cat 170251,ship 170252,truck 170253,bird 170254,bird 170255,cat 170256,frog 170257,frog 170258,truck 170259,cat 170260,horse 170261,truck 170262,airplane 170263,frog 170264,airplane 170265,dog 170266,airplane 170267,deer 170268,cat 170269,truck 170270,bird 170271,frog 170272,dog 170273,airplane 170274,cat 170275,truck 170276,frog 170277,automobile 170278,frog 170279,airplane 170280,horse 170281,bird 170282,dog 170283,ship 170284,cat 170285,dog 170286,truck 170287,truck 170288,horse 170289,ship 170290,cat 170291,horse 170292,bird 170293,deer 170294,cat 170295,bird 170296,deer 170297,truck 170298,frog 170299,deer 170300,automobile 170301,cat 170302,deer 170303,deer 170304,horse 170305,deer 170306,frog 170307,automobile 170308,ship 170309,airplane 170310,deer 170311,truck 170312,truck 170313,bird 170314,frog 170315,bird 170316,frog 170317,deer 170318,ship 170319,cat 170320,cat 170321,dog 170322,dog 170323,bird 170324,dog 170325,bird 170326,truck 170327,dog 170328,dog 170329,frog 170330,dog 170331,automobile 170332,automobile 170333,deer 170334,ship 170335,dog 170336,deer 170337,frog 170338,airplane 170339,dog 170340,airplane 170341,frog 170342,ship 170343,cat 170344,deer 170345,ship 170346,dog 170347,horse 170348,bird 170349,automobile 170350,truck 170351,truck 170352,truck 170353,truck 170354,truck 170355,truck 170356,automobile 170357,cat 170358,frog 170359,frog 170360,automobile 170361,horse 170362,horse 170363,deer 170364,airplane 170365,truck 170366,horse 170367,cat 170368,truck 170369,bird 170370,dog 170371,bird 170372,horse 170373,bird 170374,bird 170375,truck 170376,deer 170377,dog 170378,cat 170379,bird 170380,frog 170381,truck 170382,truck 170383,cat 170384,deer 170385,automobile 170386,truck 170387,bird 170388,automobile 170389,truck 170390,airplane 170391,cat 170392,cat 170393,airplane 170394,bird 170395,ship 170396,truck 170397,automobile 170398,ship 170399,airplane 170400,cat 170401,airplane 170402,horse 170403,cat 170404,cat 170405,cat 170406,frog 170407,deer 170408,cat 170409,deer 170410,bird 170411,cat 170412,truck 170413,bird 170414,airplane 170415,frog 170416,dog 170417,truck 170418,frog 170419,dog 170420,automobile 170421,ship 170422,frog 170423,horse 170424,truck 170425,airplane 170426,bird 170427,horse 170428,automobile 170429,truck 170430,automobile 170431,dog 170432,deer 170433,frog 170434,ship 170435,dog 170436,dog 170437,cat 170438,automobile 170439,cat 170440,deer 170441,deer 170442,deer 170443,automobile 170444,bird 170445,truck 170446,airplane 170447,deer 170448,ship 170449,cat 170450,truck 170451,bird 170452,truck 170453,frog 170454,truck 170455,automobile 170456,deer 170457,bird 170458,deer 170459,deer 170460,horse 170461,ship 170462,ship 170463,truck 170464,airplane 170465,bird 170466,automobile 170467,horse 170468,cat 170469,deer 170470,deer 170471,cat 170472,frog 170473,cat 170474,deer 170475,bird 170476,deer 170477,horse 170478,cat 170479,automobile 170480,dog 170481,cat 170482,airplane 170483,airplane 170484,truck 170485,dog 170486,horse 170487,automobile 170488,ship 170489,dog 170490,deer 170491,dog 170492,bird 170493,truck 170494,bird 170495,automobile 170496,cat 170497,dog 170498,truck 170499,deer 170500,automobile 170501,deer 170502,dog 170503,horse 170504,ship 170505,frog 170506,airplane 170507,ship 170508,deer 170509,frog 170510,deer 170511,truck 170512,horse 170513,dog 170514,airplane 170515,ship 170516,truck 170517,deer 170518,bird 170519,deer 170520,airplane 170521,horse 170522,airplane 170523,bird 170524,truck 170525,cat 170526,truck 170527,airplane 170528,frog 170529,frog 170530,cat 170531,deer 170532,dog 170533,deer 170534,cat 170535,cat 170536,frog 170537,truck 170538,frog 170539,deer 170540,deer 170541,ship 170542,airplane 170543,deer 170544,airplane 170545,horse 170546,frog 170547,frog 170548,cat 170549,dog 170550,frog 170551,dog 170552,airplane 170553,cat 170554,ship 170555,ship 170556,cat 170557,deer 170558,deer 170559,ship 170560,horse 170561,airplane 170562,cat 170563,horse 170564,horse 170565,cat 170566,bird 170567,horse 170568,horse 170569,truck 170570,horse 170571,horse 170572,frog 170573,deer 170574,bird 170575,deer 170576,bird 170577,ship 170578,bird 170579,deer 170580,bird 170581,horse 170582,cat 170583,airplane 170584,truck 170585,cat 170586,horse 170587,frog 170588,truck 170589,horse 170590,deer 170591,truck 170592,frog 170593,ship 170594,frog 170595,automobile 170596,horse 170597,frog 170598,deer 170599,horse 170600,dog 170601,bird 170602,automobile 170603,cat 170604,horse 170605,deer 170606,cat 170607,truck 170608,bird 170609,frog 170610,cat 170611,cat 170612,truck 170613,bird 170614,bird 170615,ship 170616,bird 170617,dog 170618,truck 170619,ship 170620,deer 170621,airplane 170622,dog 170623,horse 170624,deer 170625,frog 170626,deer 170627,frog 170628,cat 170629,truck 170630,ship 170631,cat 170632,bird 170633,truck 170634,cat 170635,ship 170636,automobile 170637,cat 170638,airplane 170639,dog 170640,cat 170641,frog 170642,horse 170643,cat 170644,automobile 170645,ship 170646,dog 170647,automobile 170648,cat 170649,truck 170650,horse 170651,truck 170652,dog 170653,truck 170654,ship 170655,truck 170656,horse 170657,deer 170658,bird 170659,deer 170660,frog 170661,cat 170662,deer 170663,deer 170664,airplane 170665,cat 170666,frog 170667,cat 170668,cat 170669,dog 170670,ship 170671,deer 170672,truck 170673,truck 170674,frog 170675,dog 170676,frog 170677,bird 170678,dog 170679,deer 170680,dog 170681,airplane 170682,airplane 170683,truck 170684,truck 170685,truck 170686,truck 170687,horse 170688,bird 170689,cat 170690,deer 170691,ship 170692,cat 170693,deer 170694,ship 170695,airplane 170696,horse 170697,frog 170698,frog 170699,bird 170700,airplane 170701,frog 170702,bird 170703,deer 170704,horse 170705,truck 170706,cat 170707,bird 170708,truck 170709,ship 170710,deer 170711,frog 170712,ship 170713,deer 170714,ship 170715,frog 170716,frog 170717,automobile 170718,horse 170719,cat 170720,deer 170721,truck 170722,dog 170723,deer 170724,dog 170725,horse 170726,cat 170727,dog 170728,dog 170729,dog 170730,horse 170731,cat 170732,airplane 170733,dog 170734,frog 170735,dog 170736,dog 170737,cat 170738,dog 170739,ship 170740,frog 170741,bird 170742,ship 170743,bird 170744,dog 170745,deer 170746,cat 170747,horse 170748,frog 170749,airplane 170750,frog 170751,deer 170752,cat 170753,truck 170754,airplane 170755,deer 170756,horse 170757,horse 170758,truck 170759,airplane 170760,deer 170761,cat 170762,deer 170763,truck 170764,cat 170765,deer 170766,deer 170767,deer 170768,frog 170769,bird 170770,horse 170771,ship 170772,airplane 170773,cat 170774,ship 170775,deer 170776,truck 170777,airplane 170778,automobile 170779,horse 170780,dog 170781,frog 170782,truck 170783,cat 170784,truck 170785,deer 170786,horse 170787,airplane 170788,ship 170789,horse 170790,frog 170791,dog 170792,dog 170793,horse 170794,horse 170795,deer 170796,cat 170797,automobile 170798,deer 170799,deer 170800,deer 170801,deer 170802,cat 170803,frog 170804,cat 170805,deer 170806,bird 170807,bird 170808,frog 170809,cat 170810,horse 170811,bird 170812,deer 170813,frog 170814,cat 170815,bird 170816,horse 170817,deer 170818,dog 170819,airplane 170820,frog 170821,horse 170822,cat 170823,frog 170824,bird 170825,frog 170826,horse 170827,cat 170828,deer 170829,ship 170830,deer 170831,airplane 170832,deer 170833,cat 170834,cat 170835,airplane 170836,frog 170837,cat 170838,ship 170839,cat 170840,truck 170841,cat 170842,horse 170843,horse 170844,dog 170845,cat 170846,cat 170847,horse 170848,automobile 170849,airplane 170850,frog 170851,airplane 170852,frog 170853,airplane 170854,bird 170855,ship 170856,deer 170857,horse 170858,airplane 170859,cat 170860,frog 170861,bird 170862,dog 170863,truck 170864,deer 170865,ship 170866,dog 170867,deer 170868,deer 170869,cat 170870,dog 170871,dog 170872,horse 170873,horse 170874,truck 170875,horse 170876,automobile 170877,airplane 170878,frog 170879,truck 170880,truck 170881,truck 170882,bird 170883,bird 170884,deer 170885,dog 170886,deer 170887,cat 170888,deer 170889,frog 170890,horse 170891,deer 170892,deer 170893,airplane 170894,cat 170895,bird 170896,deer 170897,dog 170898,frog 170899,deer 170900,frog 170901,cat 170902,cat 170903,truck 170904,bird 170905,deer 170906,frog 170907,airplane 170908,automobile 170909,frog 170910,bird 170911,horse 170912,truck 170913,truck 170914,ship 170915,bird 170916,horse 170917,dog 170918,horse 170919,horse 170920,ship 170921,dog 170922,airplane 170923,deer 170924,ship 170925,deer 170926,horse 170927,ship 170928,frog 170929,deer 170930,dog 170931,bird 170932,airplane 170933,bird 170934,frog 170935,cat 170936,automobile 170937,automobile 170938,bird 170939,cat 170940,ship 170941,dog 170942,cat 170943,frog 170944,frog 170945,deer 170946,ship 170947,ship 170948,cat 170949,frog 170950,horse 170951,cat 170952,deer 170953,cat 170954,cat 170955,automobile 170956,frog 170957,cat 170958,bird 170959,frog 170960,deer 170961,cat 170962,deer 170963,dog 170964,ship 170965,horse 170966,truck 170967,airplane 170968,frog 170969,deer 170970,cat 170971,deer 170972,truck 170973,automobile 170974,airplane 170975,truck 170976,bird 170977,bird 170978,deer 170979,truck 170980,frog 170981,cat 170982,dog 170983,dog 170984,cat 170985,dog 170986,truck 170987,cat 170988,truck 170989,bird 170990,deer 170991,dog 170992,dog 170993,cat 170994,ship 170995,truck 170996,cat 170997,cat 170998,dog 170999,dog 171000,deer 171001,cat 171002,frog 171003,horse 171004,deer 171005,ship 171006,automobile 171007,deer 171008,deer 171009,deer 171010,dog 171011,cat 171012,bird 171013,airplane 171014,frog 171015,bird 171016,bird 171017,ship 171018,deer 171019,automobile 171020,cat 171021,cat 171022,automobile 171023,bird 171024,ship 171025,automobile 171026,bird 171027,cat 171028,bird 171029,deer 171030,deer 171031,dog 171032,deer 171033,deer 171034,cat 171035,truck 171036,deer 171037,frog 171038,cat 171039,bird 171040,horse 171041,cat 171042,horse 171043,truck 171044,deer 171045,airplane 171046,horse 171047,airplane 171048,truck 171049,dog 171050,automobile 171051,dog 171052,horse 171053,airplane 171054,bird 171055,frog 171056,airplane 171057,cat 171058,truck 171059,airplane 171060,automobile 171061,dog 171062,ship 171063,frog 171064,horse 171065,deer 171066,bird 171067,frog 171068,airplane 171069,truck 171070,horse 171071,truck 171072,deer 171073,horse 171074,deer 171075,automobile 171076,airplane 171077,truck 171078,horse 171079,truck 171080,dog 171081,truck 171082,dog 171083,horse 171084,horse 171085,dog 171086,bird 171087,deer 171088,frog 171089,bird 171090,cat 171091,dog 171092,deer 171093,horse 171094,frog 171095,truck 171096,frog 171097,truck 171098,deer 171099,automobile 171100,cat 171101,frog 171102,dog 171103,airplane 171104,airplane 171105,dog 171106,dog 171107,truck 171108,frog 171109,bird 171110,ship 171111,truck 171112,bird 171113,airplane 171114,horse 171115,dog 171116,truck 171117,bird 171118,bird 171119,airplane 171120,truck 171121,frog 171122,cat 171123,truck 171124,ship 171125,horse 171126,truck 171127,ship 171128,airplane 171129,deer 171130,bird 171131,cat 171132,cat 171133,deer 171134,truck 171135,frog 171136,horse 171137,airplane 171138,deer 171139,dog 171140,ship 171141,dog 171142,bird 171143,cat 171144,deer 171145,ship 171146,airplane 171147,ship 171148,horse 171149,dog 171150,frog 171151,dog 171152,cat 171153,cat 171154,truck 171155,bird 171156,cat 171157,cat 171158,truck 171159,horse 171160,airplane 171161,deer 171162,bird 171163,horse 171164,truck 171165,dog 171166,cat 171167,deer 171168,truck 171169,automobile 171170,frog 171171,ship 171172,frog 171173,deer 171174,horse 171175,deer 171176,deer 171177,horse 171178,airplane 171179,deer 171180,dog 171181,cat 171182,horse 171183,airplane 171184,truck 171185,cat 171186,cat 171187,frog 171188,bird 171189,dog 171190,deer 171191,deer 171192,deer 171193,cat 171194,airplane 171195,automobile 171196,dog 171197,frog 171198,bird 171199,ship 171200,bird 171201,horse 171202,frog 171203,truck 171204,bird 171205,frog 171206,deer 171207,horse 171208,airplane 171209,deer 171210,bird 171211,ship 171212,horse 171213,ship 171214,cat 171215,frog 171216,automobile 171217,horse 171218,frog 171219,truck 171220,cat 171221,automobile 171222,dog 171223,horse 171224,ship 171225,truck 171226,deer 171227,truck 171228,truck 171229,deer 171230,truck 171231,cat 171232,cat 171233,ship 171234,deer 171235,bird 171236,deer 171237,truck 171238,dog 171239,dog 171240,bird 171241,bird 171242,deer 171243,ship 171244,cat 171245,truck 171246,automobile 171247,deer 171248,bird 171249,deer 171250,ship 171251,deer 171252,airplane 171253,truck 171254,automobile 171255,cat 171256,automobile 171257,truck 171258,dog 171259,dog 171260,bird 171261,automobile 171262,automobile 171263,truck 171264,deer 171265,deer 171266,dog 171267,cat 171268,cat 171269,horse 171270,bird 171271,deer 171272,automobile 171273,truck 171274,automobile 171275,horse 171276,airplane 171277,automobile 171278,bird 171279,horse 171280,cat 171281,bird 171282,airplane 171283,airplane 171284,cat 171285,frog 171286,frog 171287,truck 171288,deer 171289,horse 171290,dog 171291,truck 171292,truck 171293,airplane 171294,truck 171295,cat 171296,airplane 171297,horse 171298,truck 171299,deer 171300,airplane 171301,truck 171302,cat 171303,cat 171304,cat 171305,dog 171306,ship 171307,frog 171308,cat 171309,deer 171310,frog 171311,cat 171312,deer 171313,automobile 171314,cat 171315,ship 171316,truck 171317,dog 171318,ship 171319,frog 171320,dog 171321,bird 171322,horse 171323,cat 171324,truck 171325,automobile 171326,deer 171327,bird 171328,deer 171329,dog 171330,frog 171331,cat 171332,deer 171333,dog 171334,automobile 171335,deer 171336,dog 171337,ship 171338,cat 171339,deer 171340,automobile 171341,automobile 171342,cat 171343,ship 171344,frog 171345,dog 171346,deer 171347,bird 171348,frog 171349,horse 171350,truck 171351,airplane 171352,frog 171353,horse 171354,ship 171355,frog 171356,cat 171357,bird 171358,cat 171359,ship 171360,dog 171361,automobile 171362,truck 171363,truck 171364,cat 171365,truck 171366,automobile 171367,ship 171368,dog 171369,bird 171370,cat 171371,cat 171372,ship 171373,automobile 171374,dog 171375,airplane 171376,bird 171377,dog 171378,airplane 171379,airplane 171380,cat 171381,airplane 171382,airplane 171383,dog 171384,frog 171385,cat 171386,truck 171387,horse 171388,deer 171389,ship 171390,cat 171391,cat 171392,cat 171393,deer 171394,bird 171395,deer 171396,deer 171397,frog 171398,horse 171399,cat 171400,automobile 171401,dog 171402,deer 171403,cat 171404,cat 171405,dog 171406,cat 171407,dog 171408,cat 171409,cat 171410,dog 171411,ship 171412,truck 171413,frog 171414,deer 171415,frog 171416,horse 171417,automobile 171418,frog 171419,ship 171420,truck 171421,horse 171422,truck 171423,airplane 171424,bird 171425,horse 171426,automobile 171427,bird 171428,horse 171429,cat 171430,cat 171431,horse 171432,frog 171433,cat 171434,bird 171435,bird 171436,truck 171437,automobile 171438,deer 171439,dog 171440,deer 171441,airplane 171442,ship 171443,bird 171444,horse 171445,horse 171446,cat 171447,cat 171448,truck 171449,truck 171450,truck 171451,airplane 171452,airplane 171453,automobile 171454,ship 171455,airplane 171456,truck 171457,automobile 171458,bird 171459,dog 171460,bird 171461,dog 171462,cat 171463,automobile 171464,truck 171465,frog 171466,dog 171467,automobile 171468,dog 171469,truck 171470,truck 171471,ship 171472,cat 171473,frog 171474,frog 171475,deer 171476,horse 171477,airplane 171478,bird 171479,airplane 171480,horse 171481,airplane 171482,cat 171483,frog 171484,dog 171485,cat 171486,automobile 171487,automobile 171488,deer 171489,dog 171490,airplane 171491,truck 171492,truck 171493,deer 171494,automobile 171495,deer 171496,frog 171497,frog 171498,airplane 171499,cat 171500,frog 171501,deer 171502,deer 171503,cat 171504,deer 171505,dog 171506,horse 171507,bird 171508,deer 171509,bird 171510,truck 171511,horse 171512,bird 171513,deer 171514,frog 171515,truck 171516,cat 171517,ship 171518,cat 171519,frog 171520,truck 171521,truck 171522,cat 171523,deer 171524,cat 171525,bird 171526,cat 171527,truck 171528,truck 171529,truck 171530,automobile 171531,dog 171532,airplane 171533,deer 171534,truck 171535,frog 171536,truck 171537,deer 171538,frog 171539,dog 171540,bird 171541,horse 171542,cat 171543,airplane 171544,horse 171545,deer 171546,bird 171547,ship 171548,automobile 171549,bird 171550,dog 171551,dog 171552,frog 171553,ship 171554,truck 171555,cat 171556,ship 171557,deer 171558,bird 171559,dog 171560,deer 171561,ship 171562,frog 171563,airplane 171564,cat 171565,frog 171566,airplane 171567,deer 171568,deer 171569,bird 171570,truck 171571,dog 171572,horse 171573,deer 171574,ship 171575,airplane 171576,deer 171577,deer 171578,dog 171579,frog 171580,truck 171581,dog 171582,frog 171583,automobile 171584,dog 171585,ship 171586,bird 171587,dog 171588,frog 171589,deer 171590,frog 171591,truck 171592,ship 171593,ship 171594,bird 171595,truck 171596,truck 171597,deer 171598,frog 171599,airplane 171600,airplane 171601,ship 171602,airplane 171603,dog 171604,dog 171605,bird 171606,ship 171607,ship 171608,automobile 171609,horse 171610,truck 171611,frog 171612,cat 171613,dog 171614,ship 171615,truck 171616,frog 171617,horse 171618,truck 171619,horse 171620,dog 171621,automobile 171622,deer 171623,ship 171624,ship 171625,truck 171626,automobile 171627,horse 171628,cat 171629,deer 171630,airplane 171631,airplane 171632,cat 171633,automobile 171634,airplane 171635,deer 171636,bird 171637,dog 171638,horse 171639,horse 171640,ship 171641,bird 171642,cat 171643,cat 171644,airplane 171645,bird 171646,deer 171647,cat 171648,automobile 171649,truck 171650,cat 171651,airplane 171652,ship 171653,cat 171654,frog 171655,frog 171656,dog 171657,horse 171658,frog 171659,truck 171660,bird 171661,frog 171662,automobile 171663,bird 171664,frog 171665,horse 171666,airplane 171667,airplane 171668,horse 171669,cat 171670,cat 171671,dog 171672,frog 171673,deer 171674,frog 171675,horse 171676,horse 171677,horse 171678,airplane 171679,airplane 171680,frog 171681,ship 171682,frog 171683,ship 171684,deer 171685,bird 171686,frog 171687,dog 171688,airplane 171689,cat 171690,deer 171691,bird 171692,cat 171693,dog 171694,bird 171695,dog 171696,frog 171697,truck 171698,airplane 171699,truck 171700,horse 171701,ship 171702,frog 171703,automobile 171704,airplane 171705,cat 171706,dog 171707,frog 171708,airplane 171709,truck 171710,dog 171711,cat 171712,dog 171713,cat 171714,cat 171715,horse 171716,deer 171717,horse 171718,deer 171719,airplane 171720,ship 171721,dog 171722,ship 171723,truck 171724,dog 171725,truck 171726,cat 171727,frog 171728,deer 171729,airplane 171730,bird 171731,frog 171732,cat 171733,automobile 171734,deer 171735,cat 171736,bird 171737,dog 171738,bird 171739,dog 171740,cat 171741,deer 171742,horse 171743,cat 171744,ship 171745,automobile 171746,automobile 171747,deer 171748,horse 171749,frog 171750,bird 171751,truck 171752,automobile 171753,cat 171754,truck 171755,bird 171756,deer 171757,bird 171758,ship 171759,airplane 171760,deer 171761,bird 171762,automobile 171763,airplane 171764,frog 171765,horse 171766,automobile 171767,deer 171768,cat 171769,automobile 171770,bird 171771,automobile 171772,truck 171773,cat 171774,cat 171775,truck 171776,frog 171777,horse 171778,deer 171779,frog 171780,dog 171781,dog 171782,dog 171783,truck 171784,bird 171785,airplane 171786,automobile 171787,automobile 171788,dog 171789,deer 171790,truck 171791,frog 171792,dog 171793,bird 171794,bird 171795,ship 171796,truck 171797,automobile 171798,automobile 171799,horse 171800,automobile 171801,bird 171802,truck 171803,truck 171804,bird 171805,airplane 171806,frog 171807,frog 171808,airplane 171809,bird 171810,frog 171811,cat 171812,ship 171813,bird 171814,frog 171815,cat 171816,deer 171817,truck 171818,cat 171819,airplane 171820,bird 171821,deer 171822,deer 171823,automobile 171824,bird 171825,cat 171826,dog 171827,automobile 171828,dog 171829,deer 171830,ship 171831,airplane 171832,deer 171833,airplane 171834,cat 171835,truck 171836,dog 171837,frog 171838,airplane 171839,airplane 171840,bird 171841,automobile 171842,truck 171843,airplane 171844,automobile 171845,truck 171846,dog 171847,cat 171848,cat 171849,automobile 171850,airplane 171851,cat 171852,deer 171853,automobile 171854,cat 171855,automobile 171856,automobile 171857,truck 171858,bird 171859,automobile 171860,cat 171861,deer 171862,frog 171863,airplane 171864,cat 171865,horse 171866,horse 171867,airplane 171868,truck 171869,frog 171870,deer 171871,cat 171872,deer 171873,frog 171874,truck 171875,frog 171876,frog 171877,dog 171878,airplane 171879,ship 171880,frog 171881,cat 171882,deer 171883,airplane 171884,deer 171885,bird 171886,cat 171887,airplane 171888,ship 171889,horse 171890,deer 171891,horse 171892,bird 171893,cat 171894,automobile 171895,frog 171896,automobile 171897,dog 171898,horse 171899,deer 171900,horse 171901,cat 171902,airplane 171903,cat 171904,bird 171905,bird 171906,airplane 171907,bird 171908,horse 171909,deer 171910,dog 171911,bird 171912,truck 171913,truck 171914,dog 171915,frog 171916,automobile 171917,ship 171918,bird 171919,dog 171920,frog 171921,airplane 171922,frog 171923,horse 171924,horse 171925,deer 171926,dog 171927,deer 171928,deer 171929,automobile 171930,bird 171931,dog 171932,truck 171933,truck 171934,cat 171935,horse 171936,frog 171937,horse 171938,frog 171939,truck 171940,automobile 171941,truck 171942,cat 171943,cat 171944,ship 171945,automobile 171946,dog 171947,deer 171948,deer 171949,cat 171950,ship 171951,deer 171952,deer 171953,horse 171954,bird 171955,horse 171956,dog 171957,deer 171958,automobile 171959,cat 171960,frog 171961,cat 171962,truck 171963,cat 171964,truck 171965,automobile 171966,horse 171967,cat 171968,ship 171969,deer 171970,cat 171971,bird 171972,ship 171973,bird 171974,deer 171975,airplane 171976,ship 171977,truck 171978,ship 171979,airplane 171980,dog 171981,deer 171982,automobile 171983,cat 171984,dog 171985,ship 171986,dog 171987,horse 171988,frog 171989,bird 171990,automobile 171991,airplane 171992,cat 171993,cat 171994,dog 171995,deer 171996,ship 171997,deer 171998,frog 171999,deer 172000,airplane 172001,truck 172002,automobile 172003,airplane 172004,deer 172005,deer 172006,deer 172007,cat 172008,ship 172009,truck 172010,dog 172011,horse 172012,deer 172013,deer 172014,deer 172015,truck 172016,airplane 172017,cat 172018,dog 172019,cat 172020,truck 172021,deer 172022,frog 172023,bird 172024,ship 172025,dog 172026,frog 172027,deer 172028,deer 172029,truck 172030,ship 172031,deer 172032,dog 172033,frog 172034,airplane 172035,deer 172036,cat 172037,cat 172038,automobile 172039,truck 172040,airplane 172041,truck 172042,airplane 172043,truck 172044,cat 172045,deer 172046,frog 172047,deer 172048,deer 172049,truck 172050,cat 172051,bird 172052,bird 172053,frog 172054,cat 172055,horse 172056,frog 172057,truck 172058,cat 172059,dog 172060,dog 172061,airplane 172062,automobile 172063,frog 172064,deer 172065,bird 172066,bird 172067,frog 172068,cat 172069,deer 172070,horse 172071,airplane 172072,deer 172073,cat 172074,horse 172075,deer 172076,dog 172077,bird 172078,horse 172079,bird 172080,ship 172081,bird 172082,automobile 172083,frog 172084,horse 172085,deer 172086,cat 172087,horse 172088,horse 172089,automobile 172090,deer 172091,dog 172092,dog 172093,truck 172094,airplane 172095,deer 172096,cat 172097,horse 172098,deer 172099,bird 172100,bird 172101,bird 172102,dog 172103,cat 172104,deer 172105,deer 172106,deer 172107,horse 172108,frog 172109,cat 172110,bird 172111,bird 172112,cat 172113,bird 172114,bird 172115,frog 172116,dog 172117,cat 172118,cat 172119,bird 172120,truck 172121,deer 172122,deer 172123,truck 172124,deer 172125,ship 172126,horse 172127,horse 172128,truck 172129,deer 172130,truck 172131,truck 172132,frog 172133,truck 172134,ship 172135,cat 172136,deer 172137,horse 172138,airplane 172139,airplane 172140,ship 172141,deer 172142,deer 172143,dog 172144,deer 172145,airplane 172146,deer 172147,airplane 172148,ship 172149,cat 172150,automobile 172151,horse 172152,frog 172153,horse 172154,automobile 172155,cat 172156,deer 172157,frog 172158,truck 172159,frog 172160,frog 172161,deer 172162,frog 172163,airplane 172164,horse 172165,cat 172166,ship 172167,dog 172168,ship 172169,frog 172170,automobile 172171,truck 172172,bird 172173,frog 172174,airplane 172175,cat 172176,dog 172177,frog 172178,airplane 172179,cat 172180,deer 172181,dog 172182,truck 172183,airplane 172184,frog 172185,cat 172186,cat 172187,ship 172188,airplane 172189,dog 172190,dog 172191,frog 172192,frog 172193,cat 172194,airplane 172195,deer 172196,deer 172197,truck 172198,deer 172199,cat 172200,cat 172201,cat 172202,truck 172203,bird 172204,automobile 172205,horse 172206,ship 172207,truck 172208,cat 172209,frog 172210,automobile 172211,cat 172212,frog 172213,frog 172214,airplane 172215,frog 172216,truck 172217,frog 172218,automobile 172219,truck 172220,cat 172221,deer 172222,airplane 172223,bird 172224,frog 172225,dog 172226,dog 172227,bird 172228,deer 172229,cat 172230,dog 172231,horse 172232,frog 172233,bird 172234,horse 172235,cat 172236,horse 172237,dog 172238,truck 172239,bird 172240,horse 172241,truck 172242,bird 172243,truck 172244,deer 172245,dog 172246,deer 172247,cat 172248,bird 172249,cat 172250,automobile 172251,ship 172252,automobile 172253,frog 172254,deer 172255,cat 172256,deer 172257,frog 172258,ship 172259,bird 172260,bird 172261,horse 172262,horse 172263,deer 172264,deer 172265,cat 172266,automobile 172267,frog 172268,horse 172269,frog 172270,airplane 172271,automobile 172272,cat 172273,truck 172274,ship 172275,airplane 172276,horse 172277,truck 172278,deer 172279,horse 172280,ship 172281,ship 172282,deer 172283,ship 172284,cat 172285,horse 172286,dog 172287,deer 172288,frog 172289,dog 172290,horse 172291,airplane 172292,deer 172293,frog 172294,truck 172295,dog 172296,ship 172297,automobile 172298,cat 172299,airplane 172300,cat 172301,deer 172302,bird 172303,frog 172304,truck 172305,truck 172306,cat 172307,horse 172308,frog 172309,airplane 172310,bird 172311,horse 172312,truck 172313,automobile 172314,airplane 172315,ship 172316,frog 172317,dog 172318,truck 172319,truck 172320,cat 172321,truck 172322,truck 172323,frog 172324,cat 172325,frog 172326,cat 172327,dog 172328,frog 172329,cat 172330,deer 172331,cat 172332,truck 172333,frog 172334,frog 172335,ship 172336,dog 172337,horse 172338,dog 172339,cat 172340,automobile 172341,horse 172342,airplane 172343,truck 172344,deer 172345,ship 172346,frog 172347,cat 172348,automobile 172349,horse 172350,horse 172351,deer 172352,deer 172353,cat 172354,bird 172355,frog 172356,horse 172357,truck 172358,deer 172359,bird 172360,truck 172361,bird 172362,automobile 172363,ship 172364,truck 172365,cat 172366,cat 172367,truck 172368,dog 172369,dog 172370,deer 172371,cat 172372,dog 172373,bird 172374,truck 172375,cat 172376,truck 172377,airplane 172378,deer 172379,ship 172380,airplane 172381,truck 172382,horse 172383,automobile 172384,truck 172385,bird 172386,truck 172387,ship 172388,automobile 172389,automobile 172390,airplane 172391,deer 172392,dog 172393,dog 172394,bird 172395,automobile 172396,frog 172397,dog 172398,horse 172399,ship 172400,bird 172401,frog 172402,dog 172403,frog 172404,automobile 172405,horse 172406,bird 172407,horse 172408,horse 172409,horse 172410,automobile 172411,cat 172412,deer 172413,airplane 172414,cat 172415,ship 172416,cat 172417,deer 172418,dog 172419,ship 172420,cat 172421,dog 172422,airplane 172423,deer 172424,truck 172425,dog 172426,frog 172427,cat 172428,cat 172429,truck 172430,bird 172431,truck 172432,deer 172433,horse 172434,bird 172435,truck 172436,cat 172437,deer 172438,automobile 172439,cat 172440,frog 172441,frog 172442,automobile 172443,cat 172444,truck 172445,cat 172446,deer 172447,dog 172448,truck 172449,ship 172450,deer 172451,frog 172452,deer 172453,deer 172454,cat 172455,truck 172456,cat 172457,ship 172458,bird 172459,bird 172460,cat 172461,dog 172462,deer 172463,ship 172464,deer 172465,cat 172466,dog 172467,automobile 172468,deer 172469,truck 172470,dog 172471,deer 172472,horse 172473,frog 172474,bird 172475,automobile 172476,deer 172477,cat 172478,frog 172479,ship 172480,deer 172481,deer 172482,dog 172483,automobile 172484,deer 172485,deer 172486,cat 172487,cat 172488,frog 172489,deer 172490,frog 172491,deer 172492,bird 172493,truck 172494,deer 172495,bird 172496,frog 172497,ship 172498,bird 172499,cat 172500,cat 172501,deer 172502,truck 172503,airplane 172504,ship 172505,deer 172506,deer 172507,deer 172508,frog 172509,automobile 172510,automobile 172511,dog 172512,automobile 172513,deer 172514,ship 172515,deer 172516,horse 172517,airplane 172518,deer 172519,deer 172520,truck 172521,deer 172522,deer 172523,truck 172524,deer 172525,ship 172526,ship 172527,ship 172528,cat 172529,cat 172530,cat 172531,deer 172532,dog 172533,deer 172534,automobile 172535,ship 172536,frog 172537,deer 172538,deer 172539,deer 172540,airplane 172541,dog 172542,deer 172543,airplane 172544,truck 172545,cat 172546,truck 172547,deer 172548,bird 172549,cat 172550,truck 172551,truck 172552,horse 172553,dog 172554,airplane 172555,cat 172556,bird 172557,truck 172558,frog 172559,bird 172560,horse 172561,automobile 172562,airplane 172563,cat 172564,deer 172565,horse 172566,truck 172567,airplane 172568,deer 172569,automobile 172570,deer 172571,frog 172572,airplane 172573,cat 172574,airplane 172575,bird 172576,airplane 172577,ship 172578,deer 172579,deer 172580,ship 172581,frog 172582,deer 172583,ship 172584,frog 172585,cat 172586,airplane 172587,frog 172588,cat 172589,dog 172590,bird 172591,bird 172592,dog 172593,deer 172594,truck 172595,bird 172596,horse 172597,deer 172598,truck 172599,ship 172600,truck 172601,airplane 172602,bird 172603,truck 172604,truck 172605,truck 172606,automobile 172607,horse 172608,ship 172609,truck 172610,cat 172611,bird 172612,horse 172613,frog 172614,dog 172615,airplane 172616,airplane 172617,cat 172618,dog 172619,airplane 172620,airplane 172621,cat 172622,airplane 172623,deer 172624,truck 172625,dog 172626,airplane 172627,automobile 172628,bird 172629,automobile 172630,ship 172631,ship 172632,truck 172633,automobile 172634,truck 172635,cat 172636,frog 172637,dog 172638,frog 172639,horse 172640,deer 172641,deer 172642,cat 172643,truck 172644,dog 172645,deer 172646,horse 172647,ship 172648,dog 172649,automobile 172650,deer 172651,airplane 172652,cat 172653,deer 172654,cat 172655,automobile 172656,horse 172657,horse 172658,cat 172659,frog 172660,frog 172661,cat 172662,frog 172663,cat 172664,truck 172665,ship 172666,frog 172667,dog 172668,ship 172669,frog 172670,bird 172671,cat 172672,airplane 172673,cat 172674,airplane 172675,airplane 172676,cat 172677,deer 172678,deer 172679,dog 172680,automobile 172681,ship 172682,truck 172683,ship 172684,deer 172685,airplane 172686,dog 172687,horse 172688,automobile 172689,bird 172690,frog 172691,horse 172692,bird 172693,automobile 172694,cat 172695,truck 172696,deer 172697,cat 172698,cat 172699,automobile 172700,horse 172701,cat 172702,frog 172703,ship 172704,truck 172705,horse 172706,deer 172707,bird 172708,dog 172709,deer 172710,bird 172711,bird 172712,bird 172713,frog 172714,ship 172715,truck 172716,bird 172717,horse 172718,ship 172719,automobile 172720,frog 172721,truck 172722,deer 172723,deer 172724,automobile 172725,deer 172726,ship 172727,frog 172728,ship 172729,airplane 172730,frog 172731,deer 172732,truck 172733,horse 172734,deer 172735,dog 172736,truck 172737,bird 172738,cat 172739,cat 172740,ship 172741,horse 172742,automobile 172743,bird 172744,airplane 172745,horse 172746,truck 172747,bird 172748,airplane 172749,dog 172750,cat 172751,truck 172752,bird 172753,deer 172754,truck 172755,cat 172756,frog 172757,frog 172758,airplane 172759,cat 172760,airplane 172761,cat 172762,dog 172763,ship 172764,truck 172765,cat 172766,airplane 172767,deer 172768,airplane 172769,bird 172770,ship 172771,frog 172772,dog 172773,cat 172774,deer 172775,frog 172776,cat 172777,cat 172778,cat 172779,cat 172780,cat 172781,deer 172782,truck 172783,automobile 172784,cat 172785,bird 172786,cat 172787,truck 172788,deer 172789,cat 172790,deer 172791,truck 172792,truck 172793,dog 172794,ship 172795,horse 172796,frog 172797,truck 172798,dog 172799,airplane 172800,automobile 172801,deer 172802,dog 172803,deer 172804,horse 172805,cat 172806,deer 172807,frog 172808,deer 172809,ship 172810,dog 172811,ship 172812,bird 172813,deer 172814,cat 172815,ship 172816,automobile 172817,cat 172818,dog 172819,dog 172820,bird 172821,automobile 172822,bird 172823,ship 172824,bird 172825,automobile 172826,deer 172827,frog 172828,deer 172829,truck 172830,automobile 172831,ship 172832,dog 172833,ship 172834,deer 172835,automobile 172836,automobile 172837,frog 172838,cat 172839,dog 172840,automobile 172841,frog 172842,ship 172843,ship 172844,deer 172845,horse 172846,frog 172847,bird 172848,deer 172849,dog 172850,frog 172851,ship 172852,horse 172853,cat 172854,bird 172855,deer 172856,ship 172857,ship 172858,deer 172859,frog 172860,dog 172861,deer 172862,bird 172863,dog 172864,cat 172865,dog 172866,horse 172867,bird 172868,dog 172869,bird 172870,deer 172871,cat 172872,truck 172873,cat 172874,dog 172875,horse 172876,automobile 172877,automobile 172878,horse 172879,ship 172880,truck 172881,truck 172882,frog 172883,frog 172884,dog 172885,cat 172886,truck 172887,deer 172888,horse 172889,bird 172890,ship 172891,ship 172892,horse 172893,frog 172894,bird 172895,bird 172896,automobile 172897,deer 172898,airplane 172899,dog 172900,truck 172901,frog 172902,horse 172903,truck 172904,automobile 172905,frog 172906,deer 172907,automobile 172908,frog 172909,frog 172910,bird 172911,truck 172912,frog 172913,dog 172914,horse 172915,bird 172916,deer 172917,automobile 172918,airplane 172919,frog 172920,ship 172921,frog 172922,deer 172923,horse 172924,truck 172925,airplane 172926,cat 172927,bird 172928,ship 172929,horse 172930,frog 172931,horse 172932,airplane 172933,dog 172934,frog 172935,cat 172936,airplane 172937,truck 172938,frog 172939,dog 172940,ship 172941,cat 172942,deer 172943,frog 172944,deer 172945,deer 172946,frog 172947,dog 172948,automobile 172949,frog 172950,dog 172951,truck 172952,cat 172953,frog 172954,dog 172955,dog 172956,horse 172957,automobile 172958,cat 172959,truck 172960,frog 172961,ship 172962,bird 172963,deer 172964,cat 172965,deer 172966,frog 172967,dog 172968,frog 172969,dog 172970,deer 172971,ship 172972,truck 172973,cat 172974,frog 172975,ship 172976,ship 172977,bird 172978,dog 172979,frog 172980,bird 172981,cat 172982,frog 172983,cat 172984,deer 172985,horse 172986,deer 172987,horse 172988,airplane 172989,ship 172990,cat 172991,bird 172992,frog 172993,bird 172994,airplane 172995,cat 172996,truck 172997,cat 172998,deer 172999,truck 173000,ship 173001,automobile 173002,truck 173003,airplane 173004,airplane 173005,horse 173006,truck 173007,dog 173008,frog 173009,bird 173010,airplane 173011,automobile 173012,bird 173013,cat 173014,deer 173015,bird 173016,cat 173017,truck 173018,deer 173019,deer 173020,cat 173021,cat 173022,cat 173023,bird 173024,frog 173025,cat 173026,dog 173027,frog 173028,automobile 173029,frog 173030,ship 173031,cat 173032,ship 173033,deer 173034,bird 173035,cat 173036,deer 173037,cat 173038,bird 173039,deer 173040,horse 173041,truck 173042,airplane 173043,cat 173044,dog 173045,automobile 173046,automobile 173047,frog 173048,truck 173049,automobile 173050,bird 173051,automobile 173052,truck 173053,ship 173054,horse 173055,automobile 173056,ship 173057,deer 173058,truck 173059,bird 173060,deer 173061,bird 173062,ship 173063,ship 173064,horse 173065,horse 173066,cat 173067,deer 173068,dog 173069,bird 173070,bird 173071,horse 173072,automobile 173073,automobile 173074,frog 173075,truck 173076,dog 173077,bird 173078,cat 173079,deer 173080,deer 173081,dog 173082,bird 173083,frog 173084,automobile 173085,automobile 173086,horse 173087,bird 173088,cat 173089,horse 173090,bird 173091,ship 173092,dog 173093,bird 173094,deer 173095,deer 173096,frog 173097,truck 173098,ship 173099,ship 173100,bird 173101,horse 173102,automobile 173103,bird 173104,bird 173105,airplane 173106,cat 173107,cat 173108,truck 173109,frog 173110,frog 173111,dog 173112,cat 173113,automobile 173114,bird 173115,horse 173116,horse 173117,deer 173118,airplane 173119,automobile 173120,bird 173121,dog 173122,truck 173123,ship 173124,ship 173125,truck 173126,frog 173127,bird 173128,horse 173129,dog 173130,airplane 173131,airplane 173132,bird 173133,deer 173134,bird 173135,dog 173136,automobile 173137,ship 173138,truck 173139,cat 173140,ship 173141,airplane 173142,horse 173143,truck 173144,truck 173145,cat 173146,frog 173147,cat 173148,truck 173149,truck 173150,cat 173151,dog 173152,frog 173153,deer 173154,bird 173155,dog 173156,deer 173157,dog 173158,truck 173159,airplane 173160,deer 173161,deer 173162,dog 173163,bird 173164,deer 173165,bird 173166,automobile 173167,cat 173168,bird 173169,dog 173170,airplane 173171,bird 173172,airplane 173173,deer 173174,bird 173175,frog 173176,dog 173177,cat 173178,automobile 173179,deer 173180,deer 173181,bird 173182,truck 173183,cat 173184,bird 173185,cat 173186,bird 173187,cat 173188,truck 173189,cat 173190,horse 173191,airplane 173192,airplane 173193,dog 173194,dog 173195,automobile 173196,deer 173197,deer 173198,truck 173199,horse 173200,horse 173201,ship 173202,horse 173203,automobile 173204,truck 173205,deer 173206,deer 173207,truck 173208,truck 173209,truck 173210,ship 173211,horse 173212,cat 173213,frog 173214,automobile 173215,airplane 173216,cat 173217,ship 173218,deer 173219,bird 173220,bird 173221,automobile 173222,horse 173223,cat 173224,truck 173225,ship 173226,airplane 173227,cat 173228,frog 173229,bird 173230,bird 173231,horse 173232,airplane 173233,airplane 173234,frog 173235,horse 173236,airplane 173237,airplane 173238,bird 173239,frog 173240,truck 173241,cat 173242,deer 173243,frog 173244,dog 173245,truck 173246,cat 173247,horse 173248,truck 173249,ship 173250,airplane 173251,frog 173252,bird 173253,truck 173254,deer 173255,horse 173256,automobile 173257,bird 173258,deer 173259,airplane 173260,horse 173261,cat 173262,cat 173263,frog 173264,deer 173265,automobile 173266,cat 173267,truck 173268,truck 173269,horse 173270,airplane 173271,truck 173272,horse 173273,automobile 173274,bird 173275,airplane 173276,horse 173277,truck 173278,deer 173279,truck 173280,horse 173281,automobile 173282,cat 173283,automobile 173284,truck 173285,horse 173286,bird 173287,dog 173288,dog 173289,cat 173290,truck 173291,bird 173292,horse 173293,frog 173294,truck 173295,horse 173296,airplane 173297,deer 173298,dog 173299,automobile 173300,deer 173301,horse 173302,deer 173303,cat 173304,airplane 173305,bird 173306,airplane 173307,deer 173308,cat 173309,automobile 173310,dog 173311,horse 173312,dog 173313,deer 173314,airplane 173315,horse 173316,horse 173317,deer 173318,truck 173319,cat 173320,frog 173321,frog 173322,truck 173323,cat 173324,dog 173325,cat 173326,cat 173327,cat 173328,airplane 173329,cat 173330,automobile 173331,deer 173332,truck 173333,frog 173334,frog 173335,deer 173336,deer 173337,cat 173338,airplane 173339,ship 173340,horse 173341,bird 173342,cat 173343,dog 173344,truck 173345,airplane 173346,bird 173347,airplane 173348,airplane 173349,deer 173350,truck 173351,deer 173352,cat 173353,automobile 173354,bird 173355,deer 173356,airplane 173357,ship 173358,automobile 173359,truck 173360,automobile 173361,automobile 173362,bird 173363,truck 173364,ship 173365,automobile 173366,airplane 173367,dog 173368,frog 173369,deer 173370,horse 173371,bird 173372,truck 173373,frog 173374,deer 173375,cat 173376,deer 173377,dog 173378,horse 173379,ship 173380,bird 173381,deer 173382,dog 173383,bird 173384,airplane 173385,deer 173386,ship 173387,airplane 173388,automobile 173389,truck 173390,dog 173391,dog 173392,cat 173393,ship 173394,horse 173395,bird 173396,airplane 173397,airplane 173398,dog 173399,deer 173400,cat 173401,ship 173402,truck 173403,ship 173404,automobile 173405,automobile 173406,bird 173407,frog 173408,cat 173409,deer 173410,deer 173411,automobile 173412,deer 173413,cat 173414,frog 173415,automobile 173416,horse 173417,cat 173418,truck 173419,airplane 173420,cat 173421,airplane 173422,deer 173423,frog 173424,cat 173425,dog 173426,airplane 173427,dog 173428,frog 173429,cat 173430,frog 173431,cat 173432,deer 173433,dog 173434,airplane 173435,bird 173436,dog 173437,frog 173438,bird 173439,airplane 173440,cat 173441,bird 173442,cat 173443,truck 173444,airplane 173445,frog 173446,airplane 173447,cat 173448,truck 173449,ship 173450,cat 173451,ship 173452,airplane 173453,bird 173454,bird 173455,deer 173456,frog 173457,dog 173458,automobile 173459,airplane 173460,deer 173461,airplane 173462,airplane 173463,truck 173464,airplane 173465,deer 173466,cat 173467,deer 173468,ship 173469,dog 173470,frog 173471,horse 173472,ship 173473,frog 173474,dog 173475,ship 173476,deer 173477,deer 173478,cat 173479,bird 173480,dog 173481,dog 173482,dog 173483,airplane 173484,dog 173485,dog 173486,airplane 173487,cat 173488,deer 173489,horse 173490,deer 173491,dog 173492,frog 173493,deer 173494,frog 173495,truck 173496,deer 173497,airplane 173498,horse 173499,cat 173500,truck 173501,ship 173502,horse 173503,truck 173504,dog 173505,deer 173506,truck 173507,frog 173508,bird 173509,deer 173510,dog 173511,deer 173512,cat 173513,dog 173514,frog 173515,deer 173516,automobile 173517,ship 173518,automobile 173519,frog 173520,cat 173521,deer 173522,cat 173523,airplane 173524,truck 173525,truck 173526,truck 173527,truck 173528,ship 173529,deer 173530,cat 173531,ship 173532,cat 173533,bird 173534,deer 173535,deer 173536,deer 173537,ship 173538,automobile 173539,dog 173540,bird 173541,frog 173542,deer 173543,horse 173544,frog 173545,deer 173546,automobile 173547,bird 173548,deer 173549,horse 173550,deer 173551,cat 173552,deer 173553,truck 173554,deer 173555,cat 173556,cat 173557,frog 173558,dog 173559,cat 173560,airplane 173561,horse 173562,dog 173563,truck 173564,deer 173565,deer 173566,automobile 173567,dog 173568,dog 173569,deer 173570,truck 173571,deer 173572,ship 173573,frog 173574,deer 173575,dog 173576,deer 173577,ship 173578,automobile 173579,cat 173580,bird 173581,airplane 173582,automobile 173583,dog 173584,dog 173585,frog 173586,airplane 173587,dog 173588,dog 173589,automobile 173590,deer 173591,deer 173592,truck 173593,truck 173594,horse 173595,truck 173596,horse 173597,cat 173598,horse 173599,dog 173600,horse 173601,dog 173602,horse 173603,deer 173604,cat 173605,deer 173606,ship 173607,dog 173608,cat 173609,bird 173610,truck 173611,ship 173612,truck 173613,dog 173614,dog 173615,frog 173616,dog 173617,truck 173618,dog 173619,frog 173620,truck 173621,deer 173622,automobile 173623,cat 173624,cat 173625,horse 173626,horse 173627,horse 173628,deer 173629,airplane 173630,bird 173631,cat 173632,horse 173633,airplane 173634,horse 173635,truck 173636,deer 173637,frog 173638,airplane 173639,cat 173640,deer 173641,cat 173642,truck 173643,cat 173644,frog 173645,cat 173646,deer 173647,horse 173648,bird 173649,cat 173650,cat 173651,cat 173652,truck 173653,truck 173654,deer 173655,bird 173656,automobile 173657,airplane 173658,automobile 173659,deer 173660,airplane 173661,bird 173662,bird 173663,frog 173664,deer 173665,frog 173666,cat 173667,truck 173668,frog 173669,deer 173670,dog 173671,frog 173672,ship 173673,dog 173674,frog 173675,cat 173676,ship 173677,dog 173678,dog 173679,horse 173680,deer 173681,bird 173682,frog 173683,horse 173684,ship 173685,horse 173686,bird 173687,dog 173688,horse 173689,frog 173690,automobile 173691,truck 173692,cat 173693,dog 173694,cat 173695,automobile 173696,ship 173697,dog 173698,airplane 173699,automobile 173700,bird 173701,airplane 173702,cat 173703,horse 173704,horse 173705,dog 173706,dog 173707,frog 173708,bird 173709,ship 173710,frog 173711,deer 173712,truck 173713,horse 173714,bird 173715,deer 173716,cat 173717,automobile 173718,deer 173719,dog 173720,deer 173721,deer 173722,ship 173723,frog 173724,frog 173725,cat 173726,deer 173727,frog 173728,airplane 173729,deer 173730,dog 173731,deer 173732,bird 173733,dog 173734,horse 173735,truck 173736,frog 173737,ship 173738,dog 173739,truck 173740,ship 173741,airplane 173742,cat 173743,deer 173744,bird 173745,cat 173746,airplane 173747,bird 173748,airplane 173749,airplane 173750,frog 173751,frog 173752,cat 173753,deer 173754,automobile 173755,deer 173756,cat 173757,airplane 173758,ship 173759,bird 173760,bird 173761,ship 173762,bird 173763,dog 173764,cat 173765,bird 173766,truck 173767,airplane 173768,cat 173769,cat 173770,deer 173771,cat 173772,cat 173773,bird 173774,deer 173775,cat 173776,truck 173777,ship 173778,airplane 173779,dog 173780,cat 173781,automobile 173782,horse 173783,horse 173784,horse 173785,bird 173786,horse 173787,horse 173788,cat 173789,horse 173790,truck 173791,cat 173792,dog 173793,horse 173794,frog 173795,frog 173796,ship 173797,cat 173798,dog 173799,ship 173800,dog 173801,frog 173802,ship 173803,horse 173804,frog 173805,cat 173806,ship 173807,deer 173808,bird 173809,dog 173810,horse 173811,bird 173812,automobile 173813,truck 173814,bird 173815,cat 173816,deer 173817,horse 173818,truck 173819,cat 173820,ship 173821,truck 173822,automobile 173823,horse 173824,dog 173825,automobile 173826,cat 173827,truck 173828,automobile 173829,dog 173830,automobile 173831,cat 173832,truck 173833,bird 173834,bird 173835,horse 173836,deer 173837,airplane 173838,dog 173839,cat 173840,horse 173841,cat 173842,frog 173843,dog 173844,cat 173845,automobile 173846,deer 173847,deer 173848,dog 173849,dog 173850,frog 173851,bird 173852,dog 173853,truck 173854,deer 173855,frog 173856,frog 173857,horse 173858,deer 173859,automobile 173860,automobile 173861,bird 173862,deer 173863,ship 173864,truck 173865,cat 173866,bird 173867,automobile 173868,horse 173869,horse 173870,dog 173871,frog 173872,horse 173873,dog 173874,deer 173875,deer 173876,cat 173877,truck 173878,cat 173879,airplane 173880,horse 173881,truck 173882,dog 173883,bird 173884,deer 173885,automobile 173886,deer 173887,automobile 173888,truck 173889,ship 173890,frog 173891,ship 173892,bird 173893,ship 173894,airplane 173895,horse 173896,cat 173897,frog 173898,bird 173899,bird 173900,dog 173901,frog 173902,frog 173903,horse 173904,cat 173905,ship 173906,horse 173907,airplane 173908,frog 173909,horse 173910,horse 173911,automobile 173912,bird 173913,bird 173914,deer 173915,ship 173916,deer 173917,dog 173918,deer 173919,deer 173920,deer 173921,horse 173922,cat 173923,truck 173924,airplane 173925,bird 173926,truck 173927,bird 173928,deer 173929,frog 173930,airplane 173931,dog 173932,dog 173933,dog 173934,frog 173935,ship 173936,bird 173937,truck 173938,deer 173939,frog 173940,airplane 173941,frog 173942,bird 173943,frog 173944,dog 173945,airplane 173946,automobile 173947,ship 173948,ship 173949,automobile 173950,ship 173951,cat 173952,truck 173953,frog 173954,airplane 173955,deer 173956,horse 173957,automobile 173958,truck 173959,ship 173960,deer 173961,deer 173962,bird 173963,frog 173964,cat 173965,automobile 173966,airplane 173967,horse 173968,cat 173969,automobile 173970,frog 173971,truck 173972,frog 173973,horse 173974,automobile 173975,dog 173976,horse 173977,deer 173978,bird 173979,horse 173980,frog 173981,truck 173982,cat 173983,horse 173984,dog 173985,deer 173986,horse 173987,horse 173988,dog 173989,horse 173990,automobile 173991,frog 173992,dog 173993,automobile 173994,airplane 173995,frog 173996,dog 173997,cat 173998,ship 173999,deer 174000,ship 174001,horse 174002,ship 174003,ship 174004,ship 174005,horse 174006,dog 174007,horse 174008,automobile 174009,horse 174010,truck 174011,deer 174012,ship 174013,cat 174014,truck 174015,deer 174016,bird 174017,truck 174018,automobile 174019,automobile 174020,ship 174021,deer 174022,cat 174023,automobile 174024,dog 174025,cat 174026,horse 174027,deer 174028,deer 174029,deer 174030,automobile 174031,ship 174032,deer 174033,automobile 174034,frog 174035,frog 174036,frog 174037,bird 174038,dog 174039,cat 174040,horse 174041,dog 174042,truck 174043,truck 174044,ship 174045,cat 174046,deer 174047,ship 174048,horse 174049,horse 174050,automobile 174051,ship 174052,cat 174053,cat 174054,frog 174055,cat 174056,dog 174057,deer 174058,cat 174059,horse 174060,dog 174061,dog 174062,frog 174063,truck 174064,deer 174065,dog 174066,frog 174067,automobile 174068,cat 174069,deer 174070,ship 174071,frog 174072,deer 174073,deer 174074,automobile 174075,frog 174076,bird 174077,frog 174078,frog 174079,bird 174080,airplane 174081,dog 174082,frog 174083,deer 174084,bird 174085,truck 174086,horse 174087,frog 174088,ship 174089,truck 174090,deer 174091,deer 174092,horse 174093,cat 174094,horse 174095,ship 174096,airplane 174097,dog 174098,cat 174099,bird 174100,deer 174101,frog 174102,deer 174103,cat 174104,deer 174105,bird 174106,ship 174107,airplane 174108,horse 174109,ship 174110,cat 174111,ship 174112,truck 174113,dog 174114,deer 174115,deer 174116,horse 174117,airplane 174118,ship 174119,automobile 174120,bird 174121,truck 174122,cat 174123,deer 174124,cat 174125,cat 174126,deer 174127,dog 174128,ship 174129,horse 174130,cat 174131,deer 174132,dog 174133,ship 174134,airplane 174135,airplane 174136,frog 174137,frog 174138,dog 174139,horse 174140,airplane 174141,cat 174142,horse 174143,bird 174144,dog 174145,deer 174146,cat 174147,horse 174148,frog 174149,deer 174150,airplane 174151,frog 174152,airplane 174153,dog 174154,horse 174155,cat 174156,dog 174157,cat 174158,truck 174159,frog 174160,truck 174161,ship 174162,ship 174163,automobile 174164,dog 174165,bird 174166,airplane 174167,cat 174168,deer 174169,frog 174170,automobile 174171,cat 174172,bird 174173,frog 174174,deer 174175,horse 174176,cat 174177,deer 174178,truck 174179,dog 174180,dog 174181,dog 174182,airplane 174183,truck 174184,deer 174185,truck 174186,deer 174187,deer 174188,bird 174189,automobile 174190,dog 174191,airplane 174192,deer 174193,bird 174194,truck 174195,deer 174196,ship 174197,ship 174198,ship 174199,frog 174200,frog 174201,frog 174202,dog 174203,cat 174204,frog 174205,horse 174206,cat 174207,airplane 174208,automobile 174209,cat 174210,dog 174211,deer 174212,horse 174213,frog 174214,deer 174215,ship 174216,bird 174217,deer 174218,cat 174219,cat 174220,bird 174221,dog 174222,truck 174223,truck 174224,horse 174225,frog 174226,airplane 174227,deer 174228,deer 174229,truck 174230,deer 174231,deer 174232,deer 174233,ship 174234,dog 174235,frog 174236,bird 174237,truck 174238,dog 174239,frog 174240,horse 174241,deer 174242,bird 174243,automobile 174244,bird 174245,automobile 174246,bird 174247,horse 174248,bird 174249,horse 174250,truck 174251,deer 174252,ship 174253,truck 174254,horse 174255,truck 174256,ship 174257,frog 174258,deer 174259,frog 174260,frog 174261,cat 174262,dog 174263,cat 174264,deer 174265,truck 174266,cat 174267,dog 174268,automobile 174269,deer 174270,airplane 174271,cat 174272,cat 174273,truck 174274,cat 174275,truck 174276,frog 174277,deer 174278,airplane 174279,deer 174280,automobile 174281,automobile 174282,cat 174283,automobile 174284,deer 174285,deer 174286,cat 174287,deer 174288,dog 174289,deer 174290,truck 174291,horse 174292,cat 174293,truck 174294,truck 174295,truck 174296,horse 174297,dog 174298,ship 174299,cat 174300,horse 174301,frog 174302,automobile 174303,horse 174304,frog 174305,frog 174306,cat 174307,cat 174308,frog 174309,automobile 174310,cat 174311,cat 174312,airplane 174313,frog 174314,frog 174315,cat 174316,cat 174317,automobile 174318,horse 174319,frog 174320,horse 174321,truck 174322,dog 174323,bird 174324,horse 174325,deer 174326,horse 174327,deer 174328,truck 174329,automobile 174330,horse 174331,frog 174332,truck 174333,dog 174334,bird 174335,truck 174336,automobile 174337,ship 174338,dog 174339,dog 174340,deer 174341,truck 174342,cat 174343,frog 174344,cat 174345,automobile 174346,ship 174347,airplane 174348,frog 174349,dog 174350,truck 174351,ship 174352,cat 174353,airplane 174354,bird 174355,dog 174356,cat 174357,deer 174358,automobile 174359,bird 174360,dog 174361,deer 174362,dog 174363,deer 174364,cat 174365,truck 174366,truck 174367,truck 174368,frog 174369,frog 174370,frog 174371,truck 174372,truck 174373,airplane 174374,horse 174375,dog 174376,deer 174377,deer 174378,bird 174379,automobile 174380,deer 174381,deer 174382,horse 174383,airplane 174384,ship 174385,frog 174386,cat 174387,dog 174388,truck 174389,cat 174390,frog 174391,dog 174392,frog 174393,dog 174394,dog 174395,deer 174396,bird 174397,airplane 174398,truck 174399,bird 174400,airplane 174401,bird 174402,horse 174403,deer 174404,bird 174405,automobile 174406,frog 174407,airplane 174408,airplane 174409,frog 174410,deer 174411,cat 174412,deer 174413,automobile 174414,frog 174415,deer 174416,deer 174417,ship 174418,frog 174419,truck 174420,cat 174421,cat 174422,horse 174423,deer 174424,cat 174425,truck 174426,dog 174427,airplane 174428,truck 174429,dog 174430,frog 174431,ship 174432,deer 174433,airplane 174434,dog 174435,dog 174436,deer 174437,bird 174438,airplane 174439,horse 174440,airplane 174441,ship 174442,frog 174443,bird 174444,frog 174445,frog 174446,ship 174447,ship 174448,dog 174449,frog 174450,deer 174451,automobile 174452,airplane 174453,dog 174454,bird 174455,frog 174456,horse 174457,ship 174458,truck 174459,horse 174460,dog 174461,deer 174462,deer 174463,cat 174464,dog 174465,frog 174466,deer 174467,automobile 174468,deer 174469,frog 174470,truck 174471,bird 174472,truck 174473,dog 174474,frog 174475,horse 174476,ship 174477,frog 174478,cat 174479,deer 174480,cat 174481,deer 174482,frog 174483,truck 174484,bird 174485,horse 174486,truck 174487,bird 174488,deer 174489,frog 174490,truck 174491,ship 174492,airplane 174493,deer 174494,cat 174495,frog 174496,bird 174497,frog 174498,airplane 174499,dog 174500,dog 174501,dog 174502,truck 174503,bird 174504,frog 174505,frog 174506,cat 174507,deer 174508,deer 174509,deer 174510,deer 174511,ship 174512,bird 174513,automobile 174514,cat 174515,horse 174516,truck 174517,truck 174518,cat 174519,bird 174520,airplane 174521,horse 174522,cat 174523,deer 174524,truck 174525,deer 174526,horse 174527,dog 174528,deer 174529,deer 174530,deer 174531,airplane 174532,airplane 174533,horse 174534,automobile 174535,dog 174536,deer 174537,cat 174538,truck 174539,horse 174540,deer 174541,frog 174542,ship 174543,truck 174544,ship 174545,airplane 174546,cat 174547,deer 174548,horse 174549,deer 174550,dog 174551,dog 174552,deer 174553,deer 174554,frog 174555,automobile 174556,bird 174557,cat 174558,cat 174559,airplane 174560,frog 174561,horse 174562,deer 174563,frog 174564,truck 174565,horse 174566,airplane 174567,deer 174568,bird 174569,dog 174570,cat 174571,truck 174572,cat 174573,airplane 174574,truck 174575,cat 174576,dog 174577,dog 174578,cat 174579,dog 174580,horse 174581,bird 174582,bird 174583,bird 174584,ship 174585,bird 174586,cat 174587,cat 174588,deer 174589,deer 174590,horse 174591,horse 174592,automobile 174593,horse 174594,bird 174595,truck 174596,deer 174597,frog 174598,dog 174599,cat 174600,automobile 174601,cat 174602,deer 174603,bird 174604,deer 174605,deer 174606,horse 174607,cat 174608,deer 174609,deer 174610,automobile 174611,frog 174612,automobile 174613,bird 174614,bird 174615,horse 174616,frog 174617,truck 174618,cat 174619,deer 174620,truck 174621,horse 174622,dog 174623,truck 174624,cat 174625,airplane 174626,frog 174627,truck 174628,ship 174629,bird 174630,horse 174631,dog 174632,horse 174633,airplane 174634,airplane 174635,horse 174636,horse 174637,dog 174638,airplane 174639,airplane 174640,cat 174641,automobile 174642,airplane 174643,truck 174644,deer 174645,frog 174646,horse 174647,ship 174648,cat 174649,bird 174650,horse 174651,automobile 174652,frog 174653,dog 174654,truck 174655,truck 174656,truck 174657,automobile 174658,deer 174659,truck 174660,dog 174661,frog 174662,dog 174663,airplane 174664,airplane 174665,truck 174666,deer 174667,deer 174668,ship 174669,airplane 174670,airplane 174671,cat 174672,cat 174673,cat 174674,truck 174675,bird 174676,cat 174677,cat 174678,horse 174679,cat 174680,cat 174681,airplane 174682,deer 174683,bird 174684,automobile 174685,horse 174686,dog 174687,bird 174688,deer 174689,frog 174690,cat 174691,automobile 174692,deer 174693,cat 174694,bird 174695,dog 174696,bird 174697,automobile 174698,deer 174699,horse 174700,dog 174701,horse 174702,automobile 174703,truck 174704,ship 174705,airplane 174706,automobile 174707,deer 174708,airplane 174709,truck 174710,dog 174711,cat 174712,truck 174713,bird 174714,frog 174715,truck 174716,truck 174717,deer 174718,frog 174719,deer 174720,horse 174721,frog 174722,horse 174723,cat 174724,ship 174725,bird 174726,frog 174727,horse 174728,dog 174729,deer 174730,automobile 174731,cat 174732,horse 174733,frog 174734,ship 174735,cat 174736,dog 174737,truck 174738,horse 174739,cat 174740,frog 174741,cat 174742,cat 174743,dog 174744,deer 174745,cat 174746,truck 174747,bird 174748,cat 174749,frog 174750,automobile 174751,truck 174752,dog 174753,ship 174754,automobile 174755,ship 174756,dog 174757,dog 174758,airplane 174759,horse 174760,dog 174761,ship 174762,ship 174763,ship 174764,truck 174765,truck 174766,bird 174767,truck 174768,deer 174769,ship 174770,ship 174771,deer 174772,cat 174773,cat 174774,truck 174775,horse 174776,bird 174777,horse 174778,automobile 174779,automobile 174780,truck 174781,truck 174782,bird 174783,ship 174784,deer 174785,cat 174786,ship 174787,bird 174788,airplane 174789,deer 174790,horse 174791,cat 174792,automobile 174793,automobile 174794,airplane 174795,frog 174796,deer 174797,ship 174798,airplane 174799,frog 174800,bird 174801,airplane 174802,frog 174803,cat 174804,deer 174805,bird 174806,horse 174807,dog 174808,horse 174809,ship 174810,horse 174811,frog 174812,automobile 174813,cat 174814,truck 174815,ship 174816,frog 174817,frog 174818,cat 174819,dog 174820,automobile 174821,deer 174822,bird 174823,horse 174824,truck 174825,deer 174826,cat 174827,deer 174828,automobile 174829,automobile 174830,dog 174831,airplane 174832,bird 174833,cat 174834,horse 174835,dog 174836,deer 174837,automobile 174838,truck 174839,airplane 174840,cat 174841,automobile 174842,frog 174843,ship 174844,horse 174845,deer 174846,horse 174847,cat 174848,horse 174849,automobile 174850,deer 174851,frog 174852,truck 174853,horse 174854,deer 174855,dog 174856,cat 174857,truck 174858,automobile 174859,ship 174860,ship 174861,dog 174862,truck 174863,bird 174864,deer 174865,bird 174866,ship 174867,dog 174868,airplane 174869,ship 174870,truck 174871,deer 174872,truck 174873,airplane 174874,automobile 174875,ship 174876,horse 174877,frog 174878,airplane 174879,bird 174880,frog 174881,airplane 174882,frog 174883,bird 174884,ship 174885,airplane 174886,automobile 174887,deer 174888,automobile 174889,airplane 174890,airplane 174891,dog 174892,dog 174893,horse 174894,cat 174895,airplane 174896,dog 174897,frog 174898,bird 174899,horse 174900,ship 174901,cat 174902,bird 174903,deer 174904,cat 174905,deer 174906,automobile 174907,frog 174908,cat 174909,cat 174910,cat 174911,dog 174912,airplane 174913,deer 174914,horse 174915,automobile 174916,ship 174917,dog 174918,cat 174919,deer 174920,deer 174921,airplane 174922,deer 174923,truck 174924,automobile 174925,automobile 174926,dog 174927,horse 174928,airplane 174929,deer 174930,deer 174931,cat 174932,cat 174933,cat 174934,horse 174935,deer 174936,airplane 174937,deer 174938,automobile 174939,horse 174940,airplane 174941,cat 174942,cat 174943,horse 174944,dog 174945,deer 174946,deer 174947,dog 174948,truck 174949,dog 174950,airplane 174951,automobile 174952,airplane 174953,horse 174954,airplane 174955,cat 174956,bird 174957,cat 174958,deer 174959,dog 174960,cat 174961,automobile 174962,cat 174963,automobile 174964,truck 174965,dog 174966,cat 174967,ship 174968,deer 174969,frog 174970,frog 174971,truck 174972,dog 174973,airplane 174974,frog 174975,deer 174976,ship 174977,ship 174978,frog 174979,frog 174980,ship 174981,bird 174982,truck 174983,cat 174984,deer 174985,dog 174986,deer 174987,dog 174988,horse 174989,cat 174990,bird 174991,airplane 174992,deer 174993,cat 174994,horse 174995,airplane 174996,bird 174997,ship 174998,bird 174999,horse 175000,dog 175001,bird 175002,horse 175003,cat 175004,deer 175005,ship 175006,deer 175007,bird 175008,bird 175009,dog 175010,ship 175011,bird 175012,cat 175013,truck 175014,automobile 175015,truck 175016,ship 175017,bird 175018,horse 175019,truck 175020,dog 175021,deer 175022,truck 175023,truck 175024,cat 175025,deer 175026,automobile 175027,bird 175028,ship 175029,frog 175030,cat 175031,truck 175032,dog 175033,deer 175034,bird 175035,cat 175036,ship 175037,deer 175038,cat 175039,bird 175040,deer 175041,dog 175042,ship 175043,deer 175044,deer 175045,cat 175046,dog 175047,deer 175048,automobile 175049,dog 175050,airplane 175051,dog 175052,automobile 175053,horse 175054,deer 175055,airplane 175056,cat 175057,automobile 175058,deer 175059,truck 175060,automobile 175061,cat 175062,frog 175063,bird 175064,dog 175065,cat 175066,cat 175067,dog 175068,airplane 175069,dog 175070,cat 175071,automobile 175072,bird 175073,bird 175074,cat 175075,bird 175076,horse 175077,automobile 175078,airplane 175079,ship 175080,deer 175081,bird 175082,truck 175083,frog 175084,cat 175085,bird 175086,airplane 175087,airplane 175088,ship 175089,ship 175090,deer 175091,dog 175092,ship 175093,automobile 175094,dog 175095,horse 175096,cat 175097,frog 175098,dog 175099,horse 175100,airplane 175101,airplane 175102,ship 175103,horse 175104,truck 175105,deer 175106,dog 175107,ship 175108,cat 175109,automobile 175110,automobile 175111,truck 175112,ship 175113,automobile 175114,ship 175115,ship 175116,deer 175117,cat 175118,truck 175119,cat 175120,dog 175121,horse 175122,automobile 175123,dog 175124,dog 175125,airplane 175126,automobile 175127,horse 175128,cat 175129,frog 175130,airplane 175131,automobile 175132,deer 175133,truck 175134,bird 175135,deer 175136,deer 175137,horse 175138,dog 175139,dog 175140,bird 175141,truck 175142,frog 175143,deer 175144,bird 175145,airplane 175146,truck 175147,truck 175148,frog 175149,airplane 175150,bird 175151,deer 175152,horse 175153,horse 175154,frog 175155,dog 175156,deer 175157,frog 175158,deer 175159,bird 175160,automobile 175161,automobile 175162,frog 175163,deer 175164,ship 175165,cat 175166,ship 175167,horse 175168,dog 175169,dog 175170,dog 175171,deer 175172,airplane 175173,airplane 175174,deer 175175,frog 175176,bird 175177,airplane 175178,ship 175179,automobile 175180,airplane 175181,airplane 175182,dog 175183,ship 175184,deer 175185,airplane 175186,cat 175187,truck 175188,frog 175189,cat 175190,bird 175191,ship 175192,ship 175193,deer 175194,frog 175195,deer 175196,bird 175197,frog 175198,bird 175199,cat 175200,horse 175201,frog 175202,cat 175203,frog 175204,frog 175205,cat 175206,dog 175207,deer 175208,deer 175209,cat 175210,frog 175211,deer 175212,deer 175213,deer 175214,bird 175215,bird 175216,automobile 175217,cat 175218,truck 175219,dog 175220,truck 175221,deer 175222,ship 175223,automobile 175224,ship 175225,deer 175226,frog 175227,airplane 175228,horse 175229,automobile 175230,frog 175231,bird 175232,frog 175233,truck 175234,frog 175235,cat 175236,horse 175237,automobile 175238,ship 175239,dog 175240,bird 175241,dog 175242,automobile 175243,cat 175244,bird 175245,airplane 175246,deer 175247,horse 175248,bird 175249,cat 175250,deer 175251,automobile 175252,deer 175253,dog 175254,airplane 175255,dog 175256,airplane 175257,horse 175258,bird 175259,cat 175260,dog 175261,deer 175262,deer 175263,frog 175264,ship 175265,horse 175266,truck 175267,dog 175268,truck 175269,airplane 175270,automobile 175271,deer 175272,bird 175273,ship 175274,truck 175275,dog 175276,truck 175277,dog 175278,horse 175279,frog 175280,cat 175281,automobile 175282,cat 175283,airplane 175284,ship 175285,cat 175286,horse 175287,frog 175288,dog 175289,airplane 175290,airplane 175291,ship 175292,frog 175293,automobile 175294,automobile 175295,automobile 175296,deer 175297,airplane 175298,deer 175299,cat 175300,cat 175301,bird 175302,cat 175303,deer 175304,truck 175305,ship 175306,bird 175307,truck 175308,frog 175309,automobile 175310,ship 175311,dog 175312,frog 175313,dog 175314,cat 175315,dog 175316,cat 175317,truck 175318,ship 175319,cat 175320,truck 175321,frog 175322,deer 175323,truck 175324,horse 175325,horse 175326,automobile 175327,frog 175328,deer 175329,dog 175330,cat 175331,dog 175332,ship 175333,bird 175334,truck 175335,bird 175336,frog 175337,automobile 175338,cat 175339,truck 175340,ship 175341,automobile 175342,airplane 175343,deer 175344,truck 175345,airplane 175346,horse 175347,ship 175348,horse 175349,horse 175350,truck 175351,automobile 175352,deer 175353,horse 175354,cat 175355,airplane 175356,cat 175357,ship 175358,truck 175359,horse 175360,frog 175361,horse 175362,bird 175363,deer 175364,automobile 175365,airplane 175366,dog 175367,deer 175368,bird 175369,frog 175370,deer 175371,dog 175372,bird 175373,dog 175374,ship 175375,dog 175376,frog 175377,cat 175378,airplane 175379,truck 175380,deer 175381,automobile 175382,automobile 175383,ship 175384,bird 175385,truck 175386,deer 175387,truck 175388,automobile 175389,deer 175390,frog 175391,bird 175392,dog 175393,horse 175394,dog 175395,truck 175396,truck 175397,horse 175398,dog 175399,cat 175400,ship 175401,horse 175402,airplane 175403,airplane 175404,deer 175405,bird 175406,deer 175407,dog 175408,horse 175409,frog 175410,cat 175411,horse 175412,deer 175413,frog 175414,horse 175415,deer 175416,horse 175417,dog 175418,airplane 175419,dog 175420,dog 175421,airplane 175422,frog 175423,horse 175424,cat 175425,frog 175426,truck 175427,truck 175428,deer 175429,bird 175430,bird 175431,airplane 175432,ship 175433,cat 175434,dog 175435,bird 175436,automobile 175437,deer 175438,dog 175439,frog 175440,ship 175441,airplane 175442,frog 175443,dog 175444,frog 175445,dog 175446,frog 175447,horse 175448,frog 175449,airplane 175450,ship 175451,ship 175452,bird 175453,truck 175454,frog 175455,dog 175456,truck 175457,deer 175458,dog 175459,automobile 175460,truck 175461,frog 175462,deer 175463,automobile 175464,horse 175465,deer 175466,deer 175467,cat 175468,dog 175469,frog 175470,truck 175471,dog 175472,bird 175473,deer 175474,cat 175475,deer 175476,horse 175477,bird 175478,truck 175479,truck 175480,bird 175481,frog 175482,deer 175483,horse 175484,bird 175485,dog 175486,horse 175487,automobile 175488,truck 175489,horse 175490,cat 175491,dog 175492,deer 175493,dog 175494,airplane 175495,bird 175496,automobile 175497,horse 175498,ship 175499,cat 175500,deer 175501,frog 175502,cat 175503,bird 175504,horse 175505,frog 175506,frog 175507,horse 175508,frog 175509,frog 175510,frog 175511,cat 175512,frog 175513,deer 175514,bird 175515,airplane 175516,deer 175517,frog 175518,cat 175519,automobile 175520,airplane 175521,cat 175522,deer 175523,horse 175524,dog 175525,cat 175526,airplane 175527,ship 175528,automobile 175529,horse 175530,deer 175531,cat 175532,automobile 175533,dog 175534,cat 175535,dog 175536,deer 175537,ship 175538,deer 175539,cat 175540,deer 175541,airplane 175542,truck 175543,deer 175544,bird 175545,automobile 175546,deer 175547,truck 175548,airplane 175549,cat 175550,deer 175551,deer 175552,airplane 175553,deer 175554,bird 175555,bird 175556,truck 175557,deer 175558,cat 175559,horse 175560,bird 175561,frog 175562,cat 175563,automobile 175564,truck 175565,bird 175566,bird 175567,frog 175568,cat 175569,bird 175570,truck 175571,cat 175572,horse 175573,bird 175574,ship 175575,dog 175576,horse 175577,airplane 175578,ship 175579,horse 175580,cat 175581,cat 175582,airplane 175583,frog 175584,horse 175585,truck 175586,truck 175587,airplane 175588,dog 175589,cat 175590,deer 175591,cat 175592,horse 175593,deer 175594,horse 175595,truck 175596,automobile 175597,airplane 175598,horse 175599,bird 175600,airplane 175601,truck 175602,airplane 175603,deer 175604,horse 175605,cat 175606,ship 175607,airplane 175608,cat 175609,deer 175610,airplane 175611,automobile 175612,horse 175613,bird 175614,horse 175615,airplane 175616,frog 175617,horse 175618,frog 175619,bird 175620,frog 175621,dog 175622,cat 175623,deer 175624,horse 175625,horse 175626,deer 175627,ship 175628,truck 175629,airplane 175630,deer 175631,bird 175632,deer 175633,bird 175634,horse 175635,automobile 175636,horse 175637,frog 175638,cat 175639,frog 175640,horse 175641,truck 175642,dog 175643,truck 175644,truck 175645,airplane 175646,automobile 175647,bird 175648,airplane 175649,horse 175650,truck 175651,cat 175652,frog 175653,cat 175654,horse 175655,airplane 175656,frog 175657,deer 175658,truck 175659,airplane 175660,bird 175661,bird 175662,dog 175663,horse 175664,airplane 175665,ship 175666,automobile 175667,dog 175668,automobile 175669,horse 175670,deer 175671,deer 175672,dog 175673,bird 175674,bird 175675,horse 175676,truck 175677,airplane 175678,airplane 175679,cat 175680,cat 175681,truck 175682,bird 175683,bird 175684,deer 175685,deer 175686,automobile 175687,horse 175688,ship 175689,cat 175690,deer 175691,truck 175692,cat 175693,airplane 175694,cat 175695,airplane 175696,horse 175697,dog 175698,deer 175699,frog 175700,airplane 175701,bird 175702,dog 175703,dog 175704,airplane 175705,deer 175706,bird 175707,deer 175708,frog 175709,cat 175710,automobile 175711,bird 175712,deer 175713,automobile 175714,dog 175715,automobile 175716,cat 175717,ship 175718,frog 175719,dog 175720,dog 175721,automobile 175722,deer 175723,cat 175724,bird 175725,ship 175726,airplane 175727,airplane 175728,airplane 175729,horse 175730,horse 175731,cat 175732,horse 175733,horse 175734,ship 175735,cat 175736,bird 175737,dog 175738,bird 175739,deer 175740,truck 175741,cat 175742,dog 175743,horse 175744,cat 175745,deer 175746,dog 175747,airplane 175748,dog 175749,horse 175750,frog 175751,dog 175752,horse 175753,deer 175754,frog 175755,automobile 175756,ship 175757,bird 175758,frog 175759,dog 175760,cat 175761,horse 175762,dog 175763,cat 175764,truck 175765,deer 175766,horse 175767,bird 175768,airplane 175769,automobile 175770,cat 175771,horse 175772,bird 175773,horse 175774,dog 175775,bird 175776,automobile 175777,cat 175778,bird 175779,truck 175780,airplane 175781,ship 175782,automobile 175783,automobile 175784,automobile 175785,deer 175786,cat 175787,horse 175788,dog 175789,deer 175790,truck 175791,horse 175792,automobile 175793,airplane 175794,airplane 175795,cat 175796,horse 175797,cat 175798,truck 175799,bird 175800,truck 175801,frog 175802,horse 175803,ship 175804,airplane 175805,bird 175806,horse 175807,cat 175808,bird 175809,ship 175810,truck 175811,ship 175812,automobile 175813,truck 175814,cat 175815,airplane 175816,truck 175817,frog 175818,dog 175819,deer 175820,truck 175821,bird 175822,automobile 175823,cat 175824,deer 175825,airplane 175826,ship 175827,deer 175828,ship 175829,ship 175830,truck 175831,truck 175832,cat 175833,truck 175834,ship 175835,truck 175836,deer 175837,bird 175838,bird 175839,frog 175840,ship 175841,automobile 175842,cat 175843,frog 175844,cat 175845,truck 175846,dog 175847,horse 175848,frog 175849,automobile 175850,ship 175851,ship 175852,deer 175853,truck 175854,truck 175855,frog 175856,truck 175857,bird 175858,ship 175859,deer 175860,dog 175861,cat 175862,deer 175863,automobile 175864,dog 175865,deer 175866,deer 175867,horse 175868,frog 175869,airplane 175870,airplane 175871,cat 175872,bird 175873,truck 175874,truck 175875,dog 175876,automobile 175877,automobile 175878,deer 175879,horse 175880,frog 175881,deer 175882,ship 175883,ship 175884,horse 175885,truck 175886,airplane 175887,bird 175888,truck 175889,frog 175890,deer 175891,cat 175892,cat 175893,bird 175894,dog 175895,automobile 175896,truck 175897,dog 175898,airplane 175899,dog 175900,ship 175901,frog 175902,frog 175903,bird 175904,ship 175905,ship 175906,deer 175907,bird 175908,horse 175909,airplane 175910,cat 175911,deer 175912,dog 175913,truck 175914,deer 175915,airplane 175916,cat 175917,cat 175918,airplane 175919,frog 175920,bird 175921,airplane 175922,airplane 175923,dog 175924,horse 175925,bird 175926,truck 175927,deer 175928,bird 175929,dog 175930,ship 175931,automobile 175932,dog 175933,cat 175934,deer 175935,truck 175936,bird 175937,airplane 175938,dog 175939,frog 175940,cat 175941,airplane 175942,cat 175943,bird 175944,deer 175945,bird 175946,truck 175947,bird 175948,truck 175949,frog 175950,cat 175951,truck 175952,ship 175953,airplane 175954,truck 175955,dog 175956,bird 175957,deer 175958,cat 175959,ship 175960,deer 175961,deer 175962,frog 175963,cat 175964,horse 175965,airplane 175966,truck 175967,frog 175968,ship 175969,truck 175970,frog 175971,airplane 175972,deer 175973,cat 175974,horse 175975,airplane 175976,dog 175977,deer 175978,automobile 175979,airplane 175980,cat 175981,cat 175982,cat 175983,bird 175984,frog 175985,truck 175986,ship 175987,airplane 175988,truck 175989,airplane 175990,dog 175991,cat 175992,dog 175993,horse 175994,cat 175995,horse 175996,automobile 175997,deer 175998,ship 175999,deer 176000,deer 176001,automobile 176002,ship 176003,automobile 176004,airplane 176005,frog 176006,ship 176007,deer 176008,airplane 176009,automobile 176010,bird 176011,cat 176012,airplane 176013,truck 176014,bird 176015,cat 176016,cat 176017,dog 176018,frog 176019,cat 176020,frog 176021,cat 176022,truck 176023,frog 176024,deer 176025,horse 176026,dog 176027,frog 176028,dog 176029,deer 176030,automobile 176031,automobile 176032,ship 176033,deer 176034,cat 176035,horse 176036,ship 176037,airplane 176038,horse 176039,deer 176040,ship 176041,frog 176042,truck 176043,dog 176044,cat 176045,dog 176046,truck 176047,ship 176048,bird 176049,dog 176050,ship 176051,deer 176052,deer 176053,ship 176054,cat 176055,automobile 176056,truck 176057,dog 176058,bird 176059,deer 176060,truck 176061,bird 176062,horse 176063,airplane 176064,cat 176065,dog 176066,dog 176067,cat 176068,bird 176069,deer 176070,cat 176071,airplane 176072,dog 176073,ship 176074,ship 176075,deer 176076,airplane 176077,truck 176078,automobile 176079,truck 176080,bird 176081,cat 176082,automobile 176083,bird 176084,dog 176085,ship 176086,horse 176087,horse 176088,bird 176089,bird 176090,truck 176091,deer 176092,ship 176093,cat 176094,truck 176095,ship 176096,truck 176097,deer 176098,ship 176099,airplane 176100,dog 176101,truck 176102,frog 176103,cat 176104,automobile 176105,ship 176106,dog 176107,frog 176108,cat 176109,bird 176110,cat 176111,dog 176112,cat 176113,deer 176114,frog 176115,cat 176116,ship 176117,dog 176118,frog 176119,cat 176120,deer 176121,frog 176122,dog 176123,automobile 176124,deer 176125,frog 176126,deer 176127,airplane 176128,cat 176129,cat 176130,deer 176131,truck 176132,deer 176133,bird 176134,bird 176135,cat 176136,truck 176137,airplane 176138,horse 176139,deer 176140,horse 176141,bird 176142,frog 176143,horse 176144,deer 176145,automobile 176146,automobile 176147,cat 176148,truck 176149,deer 176150,cat 176151,horse 176152,bird 176153,dog 176154,deer 176155,truck 176156,horse 176157,dog 176158,automobile 176159,dog 176160,frog 176161,deer 176162,ship 176163,deer 176164,airplane 176165,deer 176166,cat 176167,cat 176168,cat 176169,frog 176170,horse 176171,automobile 176172,horse 176173,bird 176174,bird 176175,frog 176176,truck 176177,truck 176178,ship 176179,airplane 176180,automobile 176181,dog 176182,frog 176183,truck 176184,cat 176185,truck 176186,truck 176187,deer 176188,airplane 176189,airplane 176190,frog 176191,truck 176192,cat 176193,airplane 176194,frog 176195,horse 176196,automobile 176197,bird 176198,horse 176199,airplane 176200,deer 176201,truck 176202,bird 176203,airplane 176204,airplane 176205,deer 176206,deer 176207,airplane 176208,cat 176209,truck 176210,frog 176211,frog 176212,deer 176213,deer 176214,frog 176215,automobile 176216,deer 176217,deer 176218,frog 176219,truck 176220,ship 176221,dog 176222,airplane 176223,cat 176224,bird 176225,truck 176226,truck 176227,horse 176228,bird 176229,horse 176230,ship 176231,horse 176232,truck 176233,cat 176234,dog 176235,cat 176236,deer 176237,bird 176238,cat 176239,truck 176240,truck 176241,bird 176242,airplane 176243,frog 176244,automobile 176245,ship 176246,cat 176247,deer 176248,dog 176249,airplane 176250,frog 176251,ship 176252,horse 176253,dog 176254,horse 176255,automobile 176256,truck 176257,automobile 176258,ship 176259,deer 176260,horse 176261,airplane 176262,truck 176263,dog 176264,truck 176265,horse 176266,truck 176267,airplane 176268,frog 176269,automobile 176270,dog 176271,deer 176272,horse 176273,dog 176274,dog 176275,truck 176276,bird 176277,truck 176278,truck 176279,frog 176280,cat 176281,deer 176282,truck 176283,dog 176284,deer 176285,frog 176286,bird 176287,frog 176288,truck 176289,frog 176290,automobile 176291,dog 176292,frog 176293,truck 176294,horse 176295,bird 176296,airplane 176297,deer 176298,bird 176299,truck 176300,automobile 176301,truck 176302,automobile 176303,airplane 176304,frog 176305,dog 176306,dog 176307,dog 176308,cat 176309,ship 176310,automobile 176311,frog 176312,dog 176313,ship 176314,airplane 176315,dog 176316,airplane 176317,dog 176318,bird 176319,horse 176320,frog 176321,truck 176322,frog 176323,cat 176324,truck 176325,horse 176326,cat 176327,horse 176328,airplane 176329,truck 176330,deer 176331,horse 176332,ship 176333,deer 176334,cat 176335,automobile 176336,deer 176337,airplane 176338,horse 176339,ship 176340,dog 176341,deer 176342,automobile 176343,airplane 176344,airplane 176345,ship 176346,airplane 176347,cat 176348,deer 176349,frog 176350,deer 176351,airplane 176352,deer 176353,truck 176354,ship 176355,automobile 176356,bird 176357,frog 176358,cat 176359,dog 176360,bird 176361,truck 176362,cat 176363,cat 176364,frog 176365,dog 176366,truck 176367,bird 176368,airplane 176369,bird 176370,truck 176371,automobile 176372,automobile 176373,bird 176374,horse 176375,automobile 176376,deer 176377,automobile 176378,cat 176379,airplane 176380,deer 176381,frog 176382,ship 176383,cat 176384,frog 176385,airplane 176386,deer 176387,bird 176388,bird 176389,ship 176390,deer 176391,airplane 176392,airplane 176393,airplane 176394,bird 176395,horse 176396,cat 176397,frog 176398,truck 176399,horse 176400,dog 176401,frog 176402,horse 176403,automobile 176404,bird 176405,cat 176406,truck 176407,ship 176408,ship 176409,deer 176410,airplane 176411,frog 176412,deer 176413,frog 176414,horse 176415,truck 176416,dog 176417,deer 176418,deer 176419,deer 176420,deer 176421,ship 176422,dog 176423,frog 176424,truck 176425,horse 176426,cat 176427,frog 176428,ship 176429,bird 176430,truck 176431,cat 176432,cat 176433,horse 176434,horse 176435,dog 176436,truck 176437,cat 176438,ship 176439,deer 176440,horse 176441,truck 176442,airplane 176443,truck 176444,airplane 176445,frog 176446,horse 176447,deer 176448,dog 176449,deer 176450,cat 176451,cat 176452,dog 176453,truck 176454,horse 176455,dog 176456,frog 176457,cat 176458,bird 176459,frog 176460,dog 176461,frog 176462,cat 176463,ship 176464,deer 176465,deer 176466,bird 176467,dog 176468,horse 176469,horse 176470,airplane 176471,ship 176472,dog 176473,horse 176474,cat 176475,truck 176476,airplane 176477,deer 176478,airplane 176479,cat 176480,deer 176481,truck 176482,automobile 176483,dog 176484,dog 176485,horse 176486,dog 176487,truck 176488,truck 176489,deer 176490,dog 176491,deer 176492,ship 176493,deer 176494,cat 176495,truck 176496,cat 176497,bird 176498,truck 176499,deer 176500,airplane 176501,dog 176502,airplane 176503,dog 176504,bird 176505,bird 176506,automobile 176507,horse 176508,bird 176509,truck 176510,bird 176511,dog 176512,automobile 176513,deer 176514,deer 176515,dog 176516,dog 176517,bird 176518,ship 176519,dog 176520,deer 176521,bird 176522,dog 176523,automobile 176524,frog 176525,cat 176526,horse 176527,frog 176528,truck 176529,frog 176530,bird 176531,horse 176532,cat 176533,frog 176534,frog 176535,truck 176536,ship 176537,deer 176538,cat 176539,airplane 176540,truck 176541,horse 176542,ship 176543,truck 176544,frog 176545,automobile 176546,airplane 176547,deer 176548,horse 176549,automobile 176550,ship 176551,ship 176552,dog 176553,deer 176554,ship 176555,cat 176556,horse 176557,horse 176558,airplane 176559,dog 176560,deer 176561,bird 176562,ship 176563,frog 176564,horse 176565,dog 176566,horse 176567,horse 176568,truck 176569,dog 176570,airplane 176571,deer 176572,deer 176573,deer 176574,deer 176575,ship 176576,frog 176577,bird 176578,cat 176579,dog 176580,dog 176581,cat 176582,horse 176583,frog 176584,frog 176585,bird 176586,horse 176587,automobile 176588,truck 176589,deer 176590,deer 176591,frog 176592,airplane 176593,frog 176594,automobile 176595,truck 176596,dog 176597,cat 176598,truck 176599,ship 176600,horse 176601,bird 176602,horse 176603,horse 176604,frog 176605,frog 176606,cat 176607,bird 176608,dog 176609,horse 176610,cat 176611,horse 176612,airplane 176613,horse 176614,ship 176615,cat 176616,frog 176617,bird 176618,dog 176619,deer 176620,deer 176621,bird 176622,deer 176623,truck 176624,cat 176625,frog 176626,bird 176627,horse 176628,cat 176629,deer 176630,deer 176631,cat 176632,ship 176633,dog 176634,dog 176635,airplane 176636,deer 176637,frog 176638,frog 176639,dog 176640,bird 176641,deer 176642,dog 176643,frog 176644,automobile 176645,automobile 176646,deer 176647,ship 176648,airplane 176649,deer 176650,truck 176651,frog 176652,automobile 176653,airplane 176654,cat 176655,ship 176656,automobile 176657,horse 176658,ship 176659,ship 176660,deer 176661,deer 176662,frog 176663,airplane 176664,dog 176665,frog 176666,cat 176667,cat 176668,frog 176669,horse 176670,automobile 176671,frog 176672,airplane 176673,truck 176674,horse 176675,frog 176676,dog 176677,horse 176678,cat 176679,dog 176680,ship 176681,frog 176682,horse 176683,truck 176684,deer 176685,ship 176686,airplane 176687,airplane 176688,bird 176689,dog 176690,dog 176691,truck 176692,airplane 176693,deer 176694,truck 176695,airplane 176696,dog 176697,ship 176698,airplane 176699,bird 176700,cat 176701,ship 176702,bird 176703,ship 176704,cat 176705,frog 176706,automobile 176707,dog 176708,horse 176709,ship 176710,deer 176711,truck 176712,ship 176713,ship 176714,airplane 176715,ship 176716,frog 176717,cat 176718,frog 176719,horse 176720,horse 176721,frog 176722,bird 176723,frog 176724,airplane 176725,cat 176726,automobile 176727,cat 176728,deer 176729,cat 176730,deer 176731,dog 176732,deer 176733,bird 176734,airplane 176735,frog 176736,bird 176737,deer 176738,ship 176739,automobile 176740,ship 176741,airplane 176742,truck 176743,bird 176744,truck 176745,bird 176746,bird 176747,truck 176748,cat 176749,airplane 176750,deer 176751,truck 176752,automobile 176753,bird 176754,frog 176755,automobile 176756,bird 176757,cat 176758,truck 176759,deer 176760,truck 176761,dog 176762,truck 176763,airplane 176764,cat 176765,bird 176766,truck 176767,automobile 176768,automobile 176769,deer 176770,bird 176771,truck 176772,truck 176773,cat 176774,automobile 176775,airplane 176776,truck 176777,cat 176778,truck 176779,ship 176780,frog 176781,bird 176782,truck 176783,frog 176784,frog 176785,horse 176786,horse 176787,deer 176788,horse 176789,truck 176790,deer 176791,horse 176792,dog 176793,deer 176794,cat 176795,ship 176796,frog 176797,airplane 176798,dog 176799,deer 176800,ship 176801,dog 176802,dog 176803,airplane 176804,dog 176805,ship 176806,cat 176807,deer 176808,cat 176809,deer 176810,deer 176811,ship 176812,deer 176813,frog 176814,deer 176815,cat 176816,bird 176817,deer 176818,horse 176819,automobile 176820,bird 176821,horse 176822,truck 176823,cat 176824,horse 176825,cat 176826,frog 176827,cat 176828,frog 176829,dog 176830,airplane 176831,horse 176832,dog 176833,bird 176834,deer 176835,bird 176836,horse 176837,truck 176838,automobile 176839,bird 176840,horse 176841,deer 176842,frog 176843,deer 176844,cat 176845,cat 176846,horse 176847,truck 176848,automobile 176849,cat 176850,dog 176851,dog 176852,airplane 176853,horse 176854,cat 176855,bird 176856,frog 176857,dog 176858,ship 176859,cat 176860,horse 176861,automobile 176862,horse 176863,frog 176864,dog 176865,dog 176866,cat 176867,cat 176868,horse 176869,ship 176870,horse 176871,frog 176872,dog 176873,bird 176874,dog 176875,airplane 176876,truck 176877,frog 176878,ship 176879,bird 176880,frog 176881,airplane 176882,ship 176883,truck 176884,bird 176885,horse 176886,ship 176887,airplane 176888,cat 176889,dog 176890,ship 176891,frog 176892,cat 176893,dog 176894,ship 176895,cat 176896,dog 176897,frog 176898,bird 176899,cat 176900,frog 176901,horse 176902,cat 176903,deer 176904,automobile 176905,automobile 176906,dog 176907,deer 176908,automobile 176909,ship 176910,dog 176911,bird 176912,truck 176913,airplane 176914,bird 176915,truck 176916,deer 176917,deer 176918,truck 176919,ship 176920,frog 176921,cat 176922,cat 176923,bird 176924,ship 176925,deer 176926,horse 176927,frog 176928,cat 176929,bird 176930,automobile 176931,cat 176932,truck 176933,dog 176934,frog 176935,deer 176936,bird 176937,deer 176938,airplane 176939,bird 176940,horse 176941,bird 176942,cat 176943,horse 176944,truck 176945,airplane 176946,deer 176947,ship 176948,horse 176949,deer 176950,airplane 176951,frog 176952,frog 176953,airplane 176954,frog 176955,bird 176956,bird 176957,cat 176958,horse 176959,truck 176960,automobile 176961,bird 176962,horse 176963,automobile 176964,cat 176965,ship 176966,dog 176967,bird 176968,bird 176969,deer 176970,deer 176971,deer 176972,dog 176973,horse 176974,frog 176975,automobile 176976,ship 176977,cat 176978,truck 176979,deer 176980,ship 176981,airplane 176982,airplane 176983,truck 176984,dog 176985,bird 176986,airplane 176987,cat 176988,airplane 176989,airplane 176990,frog 176991,dog 176992,horse 176993,cat 176994,deer 176995,truck 176996,dog 176997,deer 176998,dog 176999,truck 177000,ship 177001,bird 177002,deer 177003,horse 177004,truck 177005,frog 177006,airplane 177007,automobile 177008,airplane 177009,dog 177010,cat 177011,bird 177012,ship 177013,truck 177014,frog 177015,airplane 177016,airplane 177017,cat 177018,deer 177019,horse 177020,cat 177021,deer 177022,airplane 177023,dog 177024,bird 177025,airplane 177026,truck 177027,deer 177028,ship 177029,deer 177030,deer 177031,deer 177032,bird 177033,automobile 177034,automobile 177035,deer 177036,bird 177037,ship 177038,automobile 177039,frog 177040,automobile 177041,ship 177042,airplane 177043,frog 177044,automobile 177045,frog 177046,automobile 177047,cat 177048,truck 177049,dog 177050,horse 177051,truck 177052,frog 177053,deer 177054,deer 177055,cat 177056,horse 177057,dog 177058,automobile 177059,automobile 177060,frog 177061,bird 177062,truck 177063,ship 177064,bird 177065,truck 177066,airplane 177067,bird 177068,dog 177069,airplane 177070,frog 177071,ship 177072,cat 177073,frog 177074,cat 177075,automobile 177076,airplane 177077,airplane 177078,automobile 177079,horse 177080,airplane 177081,bird 177082,airplane 177083,frog 177084,truck 177085,bird 177086,airplane 177087,frog 177088,cat 177089,frog 177090,deer 177091,cat 177092,automobile 177093,dog 177094,ship 177095,cat 177096,ship 177097,ship 177098,cat 177099,dog 177100,ship 177101,dog 177102,ship 177103,horse 177104,deer 177105,frog 177106,cat 177107,deer 177108,airplane 177109,frog 177110,ship 177111,cat 177112,truck 177113,cat 177114,horse 177115,cat 177116,ship 177117,dog 177118,truck 177119,bird 177120,ship 177121,dog 177122,dog 177123,airplane 177124,airplane 177125,ship 177126,frog 177127,automobile 177128,ship 177129,deer 177130,frog 177131,deer 177132,dog 177133,airplane 177134,airplane 177135,bird 177136,cat 177137,cat 177138,bird 177139,ship 177140,bird 177141,ship 177142,deer 177143,airplane 177144,frog 177145,bird 177146,airplane 177147,cat 177148,ship 177149,deer 177150,truck 177151,horse 177152,frog 177153,deer 177154,airplane 177155,truck 177156,automobile 177157,frog 177158,horse 177159,frog 177160,cat 177161,cat 177162,bird 177163,ship 177164,dog 177165,cat 177166,deer 177167,airplane 177168,dog 177169,bird 177170,truck 177171,horse 177172,cat 177173,airplane 177174,horse 177175,deer 177176,deer 177177,automobile 177178,cat 177179,horse 177180,cat 177181,horse 177182,dog 177183,deer 177184,automobile 177185,bird 177186,frog 177187,deer 177188,frog 177189,truck 177190,airplane 177191,deer 177192,dog 177193,airplane 177194,deer 177195,cat 177196,frog 177197,horse 177198,deer 177199,dog 177200,frog 177201,frog 177202,frog 177203,ship 177204,cat 177205,airplane 177206,horse 177207,dog 177208,horse 177209,bird 177210,ship 177211,truck 177212,cat 177213,bird 177214,cat 177215,deer 177216,airplane 177217,frog 177218,horse 177219,cat 177220,automobile 177221,cat 177222,bird 177223,deer 177224,automobile 177225,truck 177226,frog 177227,deer 177228,airplane 177229,deer 177230,deer 177231,ship 177232,frog 177233,cat 177234,horse 177235,deer 177236,cat 177237,dog 177238,airplane 177239,truck 177240,ship 177241,truck 177242,automobile 177243,bird 177244,deer 177245,ship 177246,deer 177247,deer 177248,truck 177249,cat 177250,airplane 177251,cat 177252,frog 177253,truck 177254,deer 177255,frog 177256,dog 177257,truck 177258,cat 177259,airplane 177260,truck 177261,automobile 177262,cat 177263,airplane 177264,truck 177265,ship 177266,horse 177267,bird 177268,dog 177269,cat 177270,cat 177271,dog 177272,dog 177273,dog 177274,ship 177275,airplane 177276,truck 177277,horse 177278,horse 177279,ship 177280,horse 177281,airplane 177282,cat 177283,airplane 177284,ship 177285,dog 177286,truck 177287,cat 177288,frog 177289,deer 177290,ship 177291,truck 177292,ship 177293,cat 177294,dog 177295,truck 177296,airplane 177297,deer 177298,deer 177299,airplane 177300,airplane 177301,ship 177302,dog 177303,frog 177304,bird 177305,dog 177306,dog 177307,automobile 177308,dog 177309,bird 177310,airplane 177311,dog 177312,automobile 177313,dog 177314,dog 177315,deer 177316,truck 177317,airplane 177318,dog 177319,deer 177320,ship 177321,deer 177322,horse 177323,truck 177324,cat 177325,dog 177326,truck 177327,horse 177328,airplane 177329,airplane 177330,airplane 177331,cat 177332,dog 177333,automobile 177334,cat 177335,bird 177336,truck 177337,airplane 177338,horse 177339,horse 177340,truck 177341,ship 177342,airplane 177343,horse 177344,deer 177345,ship 177346,deer 177347,dog 177348,truck 177349,dog 177350,automobile 177351,dog 177352,truck 177353,bird 177354,deer 177355,dog 177356,airplane 177357,truck 177358,frog 177359,cat 177360,ship 177361,deer 177362,airplane 177363,truck 177364,cat 177365,ship 177366,truck 177367,truck 177368,bird 177369,frog 177370,deer 177371,frog 177372,ship 177373,dog 177374,deer 177375,airplane 177376,ship 177377,automobile 177378,bird 177379,automobile 177380,frog 177381,truck 177382,automobile 177383,bird 177384,cat 177385,horse 177386,automobile 177387,truck 177388,ship 177389,frog 177390,frog 177391,truck 177392,airplane 177393,cat 177394,automobile 177395,frog 177396,airplane 177397,cat 177398,horse 177399,truck 177400,cat 177401,automobile 177402,deer 177403,ship 177404,deer 177405,truck 177406,deer 177407,truck 177408,ship 177409,dog 177410,cat 177411,horse 177412,dog 177413,truck 177414,truck 177415,deer 177416,horse 177417,deer 177418,deer 177419,cat 177420,truck 177421,deer 177422,ship 177423,cat 177424,truck 177425,bird 177426,automobile 177427,truck 177428,dog 177429,cat 177430,deer 177431,bird 177432,ship 177433,deer 177434,dog 177435,automobile 177436,automobile 177437,truck 177438,airplane 177439,cat 177440,airplane 177441,frog 177442,airplane 177443,ship 177444,automobile 177445,horse 177446,bird 177447,bird 177448,frog 177449,bird 177450,cat 177451,bird 177452,ship 177453,automobile 177454,cat 177455,automobile 177456,truck 177457,ship 177458,truck 177459,dog 177460,frog 177461,deer 177462,ship 177463,automobile 177464,airplane 177465,frog 177466,truck 177467,dog 177468,airplane 177469,cat 177470,frog 177471,cat 177472,ship 177473,airplane 177474,bird 177475,ship 177476,ship 177477,cat 177478,cat 177479,dog 177480,deer 177481,automobile 177482,deer 177483,deer 177484,horse 177485,deer 177486,airplane 177487,horse 177488,deer 177489,automobile 177490,deer 177491,dog 177492,deer 177493,airplane 177494,deer 177495,dog 177496,deer 177497,dog 177498,truck 177499,horse 177500,dog 177501,automobile 177502,frog 177503,cat 177504,ship 177505,truck 177506,horse 177507,frog 177508,frog 177509,deer 177510,truck 177511,horse 177512,ship 177513,bird 177514,frog 177515,frog 177516,ship 177517,deer 177518,cat 177519,automobile 177520,truck 177521,cat 177522,airplane 177523,horse 177524,airplane 177525,truck 177526,ship 177527,automobile 177528,deer 177529,truck 177530,frog 177531,truck 177532,dog 177533,frog 177534,ship 177535,frog 177536,truck 177537,ship 177538,truck 177539,truck 177540,cat 177541,deer 177542,cat 177543,deer 177544,deer 177545,dog 177546,airplane 177547,dog 177548,truck 177549,truck 177550,ship 177551,truck 177552,automobile 177553,deer 177554,dog 177555,horse 177556,ship 177557,automobile 177558,cat 177559,frog 177560,truck 177561,horse 177562,horse 177563,frog 177564,ship 177565,frog 177566,cat 177567,frog 177568,deer 177569,ship 177570,cat 177571,deer 177572,ship 177573,bird 177574,cat 177575,cat 177576,airplane 177577,dog 177578,ship 177579,deer 177580,cat 177581,deer 177582,bird 177583,frog 177584,deer 177585,horse 177586,cat 177587,deer 177588,truck 177589,automobile 177590,deer 177591,horse 177592,deer 177593,cat 177594,ship 177595,deer 177596,truck 177597,dog 177598,deer 177599,bird 177600,ship 177601,horse 177602,truck 177603,cat 177604,frog 177605,airplane 177606,frog 177607,bird 177608,airplane 177609,cat 177610,horse 177611,deer 177612,airplane 177613,dog 177614,airplane 177615,frog 177616,frog 177617,cat 177618,dog 177619,bird 177620,truck 177621,horse 177622,truck 177623,automobile 177624,frog 177625,truck 177626,cat 177627,deer 177628,automobile 177629,deer 177630,truck 177631,bird 177632,deer 177633,frog 177634,frog 177635,ship 177636,airplane 177637,frog 177638,deer 177639,automobile 177640,deer 177641,frog 177642,bird 177643,truck 177644,bird 177645,automobile 177646,deer 177647,frog 177648,frog 177649,truck 177650,horse 177651,airplane 177652,dog 177653,cat 177654,deer 177655,horse 177656,cat 177657,truck 177658,deer 177659,cat 177660,airplane 177661,cat 177662,horse 177663,truck 177664,ship 177665,frog 177666,frog 177667,deer 177668,truck 177669,frog 177670,dog 177671,cat 177672,deer 177673,automobile 177674,dog 177675,ship 177676,horse 177677,truck 177678,airplane 177679,airplane 177680,bird 177681,frog 177682,frog 177683,horse 177684,frog 177685,bird 177686,cat 177687,deer 177688,dog 177689,airplane 177690,ship 177691,bird 177692,deer 177693,dog 177694,automobile 177695,bird 177696,dog 177697,deer 177698,automobile 177699,cat 177700,cat 177701,cat 177702,horse 177703,dog 177704,airplane 177705,truck 177706,cat 177707,truck 177708,automobile 177709,cat 177710,truck 177711,horse 177712,horse 177713,frog 177714,truck 177715,deer 177716,ship 177717,dog 177718,bird 177719,bird 177720,deer 177721,airplane 177722,deer 177723,ship 177724,airplane 177725,cat 177726,ship 177727,dog 177728,airplane 177729,automobile 177730,truck 177731,truck 177732,dog 177733,frog 177734,dog 177735,bird 177736,cat 177737,deer 177738,truck 177739,deer 177740,horse 177741,horse 177742,ship 177743,automobile 177744,truck 177745,ship 177746,automobile 177747,truck 177748,deer 177749,frog 177750,automobile 177751,horse 177752,dog 177753,frog 177754,dog 177755,deer 177756,automobile 177757,cat 177758,automobile 177759,truck 177760,airplane 177761,automobile 177762,automobile 177763,dog 177764,bird 177765,airplane 177766,automobile 177767,deer 177768,dog 177769,dog 177770,deer 177771,truck 177772,dog 177773,ship 177774,deer 177775,dog 177776,horse 177777,frog 177778,cat 177779,cat 177780,airplane 177781,frog 177782,airplane 177783,truck 177784,deer 177785,frog 177786,bird 177787,frog 177788,horse 177789,airplane 177790,deer 177791,cat 177792,bird 177793,frog 177794,deer 177795,ship 177796,frog 177797,ship 177798,automobile 177799,airplane 177800,deer 177801,ship 177802,deer 177803,frog 177804,horse 177805,bird 177806,cat 177807,cat 177808,frog 177809,frog 177810,dog 177811,bird 177812,deer 177813,deer 177814,dog 177815,frog 177816,frog 177817,deer 177818,bird 177819,frog 177820,truck 177821,cat 177822,frog 177823,cat 177824,cat 177825,deer 177826,automobile 177827,ship 177828,horse 177829,cat 177830,airplane 177831,deer 177832,cat 177833,cat 177834,horse 177835,cat 177836,frog 177837,deer 177838,dog 177839,truck 177840,bird 177841,frog 177842,airplane 177843,horse 177844,automobile 177845,truck 177846,bird 177847,automobile 177848,airplane 177849,deer 177850,cat 177851,truck 177852,ship 177853,automobile 177854,deer 177855,truck 177856,truck 177857,truck 177858,bird 177859,deer 177860,truck 177861,frog 177862,dog 177863,cat 177864,bird 177865,cat 177866,bird 177867,deer 177868,frog 177869,cat 177870,dog 177871,cat 177872,frog 177873,automobile 177874,deer 177875,dog 177876,dog 177877,deer 177878,automobile 177879,bird 177880,cat 177881,truck 177882,frog 177883,cat 177884,dog 177885,deer 177886,deer 177887,cat 177888,truck 177889,horse 177890,bird 177891,truck 177892,truck 177893,ship 177894,frog 177895,frog 177896,dog 177897,ship 177898,frog 177899,frog 177900,cat 177901,airplane 177902,horse 177903,truck 177904,frog 177905,airplane 177906,frog 177907,dog 177908,deer 177909,bird 177910,bird 177911,horse 177912,deer 177913,deer 177914,bird 177915,airplane 177916,horse 177917,truck 177918,airplane 177919,horse 177920,ship 177921,deer 177922,airplane 177923,truck 177924,airplane 177925,ship 177926,bird 177927,deer 177928,airplane 177929,horse 177930,frog 177931,dog 177932,frog 177933,horse 177934,bird 177935,dog 177936,cat 177937,ship 177938,ship 177939,airplane 177940,truck 177941,dog 177942,horse 177943,deer 177944,automobile 177945,airplane 177946,bird 177947,airplane 177948,ship 177949,cat 177950,deer 177951,automobile 177952,airplane 177953,dog 177954,truck 177955,cat 177956,deer 177957,cat 177958,frog 177959,dog 177960,horse 177961,airplane 177962,dog 177963,automobile 177964,dog 177965,cat 177966,horse 177967,deer 177968,deer 177969,frog 177970,airplane 177971,horse 177972,frog 177973,truck 177974,frog 177975,automobile 177976,dog 177977,bird 177978,horse 177979,frog 177980,horse 177981,cat 177982,deer 177983,frog 177984,ship 177985,ship 177986,cat 177987,bird 177988,ship 177989,airplane 177990,dog 177991,frog 177992,truck 177993,automobile 177994,horse 177995,truck 177996,deer 177997,dog 177998,cat 177999,frog 178000,ship 178001,truck 178002,ship 178003,frog 178004,cat 178005,deer 178006,truck 178007,deer 178008,dog 178009,cat 178010,cat 178011,dog 178012,ship 178013,ship 178014,ship 178015,airplane 178016,frog 178017,horse 178018,airplane 178019,truck 178020,automobile 178021,dog 178022,truck 178023,cat 178024,automobile 178025,truck 178026,bird 178027,deer 178028,deer 178029,cat 178030,airplane 178031,truck 178032,truck 178033,deer 178034,ship 178035,cat 178036,deer 178037,airplane 178038,ship 178039,deer 178040,dog 178041,truck 178042,cat 178043,horse 178044,deer 178045,frog 178046,bird 178047,deer 178048,cat 178049,bird 178050,truck 178051,frog 178052,frog 178053,bird 178054,deer 178055,frog 178056,cat 178057,dog 178058,bird 178059,cat 178060,cat 178061,ship 178062,automobile 178063,ship 178064,deer 178065,horse 178066,bird 178067,bird 178068,ship 178069,ship 178070,dog 178071,airplane 178072,dog 178073,horse 178074,truck 178075,ship 178076,truck 178077,automobile 178078,bird 178079,bird 178080,horse 178081,cat 178082,dog 178083,dog 178084,cat 178085,frog 178086,deer 178087,deer 178088,frog 178089,airplane 178090,airplane 178091,airplane 178092,airplane 178093,automobile 178094,horse 178095,bird 178096,horse 178097,horse 178098,cat 178099,bird 178100,cat 178101,dog 178102,airplane 178103,ship 178104,frog 178105,truck 178106,automobile 178107,bird 178108,bird 178109,bird 178110,truck 178111,truck 178112,cat 178113,frog 178114,truck 178115,bird 178116,horse 178117,frog 178118,cat 178119,bird 178120,cat 178121,dog 178122,cat 178123,cat 178124,cat 178125,deer 178126,horse 178127,deer 178128,horse 178129,ship 178130,frog 178131,bird 178132,bird 178133,frog 178134,dog 178135,frog 178136,bird 178137,dog 178138,bird 178139,horse 178140,automobile 178141,deer 178142,automobile 178143,bird 178144,truck 178145,cat 178146,bird 178147,deer 178148,airplane 178149,bird 178150,cat 178151,horse 178152,horse 178153,ship 178154,cat 178155,truck 178156,cat 178157,horse 178158,dog 178159,bird 178160,cat 178161,cat 178162,horse 178163,automobile 178164,deer 178165,ship 178166,airplane 178167,cat 178168,cat 178169,airplane 178170,horse 178171,dog 178172,dog 178173,deer 178174,ship 178175,truck 178176,airplane 178177,truck 178178,deer 178179,horse 178180,deer 178181,automobile 178182,horse 178183,bird 178184,deer 178185,frog 178186,automobile 178187,ship 178188,dog 178189,deer 178190,bird 178191,dog 178192,cat 178193,dog 178194,bird 178195,airplane 178196,truck 178197,frog 178198,airplane 178199,frog 178200,ship 178201,cat 178202,automobile 178203,horse 178204,truck 178205,dog 178206,airplane 178207,frog 178208,frog 178209,horse 178210,ship 178211,dog 178212,automobile 178213,dog 178214,cat 178215,bird 178216,bird 178217,ship 178218,deer 178219,airplane 178220,horse 178221,bird 178222,ship 178223,frog 178224,horse 178225,dog 178226,dog 178227,horse 178228,automobile 178229,deer 178230,automobile 178231,cat 178232,frog 178233,cat 178234,bird 178235,bird 178236,deer 178237,horse 178238,cat 178239,deer 178240,horse 178241,airplane 178242,frog 178243,cat 178244,horse 178245,dog 178246,frog 178247,ship 178248,automobile 178249,truck 178250,cat 178251,deer 178252,deer 178253,airplane 178254,cat 178255,frog 178256,horse 178257,airplane 178258,ship 178259,horse 178260,frog 178261,truck 178262,dog 178263,truck 178264,automobile 178265,bird 178266,horse 178267,dog 178268,truck 178269,dog 178270,dog 178271,truck 178272,deer 178273,ship 178274,deer 178275,horse 178276,automobile 178277,cat 178278,dog 178279,automobile 178280,dog 178281,deer 178282,dog 178283,horse 178284,deer 178285,airplane 178286,truck 178287,horse 178288,airplane 178289,automobile 178290,horse 178291,cat 178292,bird 178293,dog 178294,ship 178295,deer 178296,ship 178297,truck 178298,airplane 178299,dog 178300,bird 178301,truck 178302,dog 178303,airplane 178304,deer 178305,cat 178306,frog 178307,truck 178308,frog 178309,ship 178310,horse 178311,deer 178312,dog 178313,ship 178314,automobile 178315,ship 178316,frog 178317,truck 178318,ship 178319,truck 178320,ship 178321,dog 178322,deer 178323,automobile 178324,truck 178325,horse 178326,airplane 178327,cat 178328,deer 178329,airplane 178330,airplane 178331,automobile 178332,cat 178333,cat 178334,horse 178335,truck 178336,cat 178337,airplane 178338,truck 178339,truck 178340,frog 178341,cat 178342,frog 178343,horse 178344,frog 178345,deer 178346,truck 178347,ship 178348,deer 178349,frog 178350,truck 178351,frog 178352,dog 178353,cat 178354,deer 178355,dog 178356,horse 178357,truck 178358,deer 178359,horse 178360,truck 178361,bird 178362,bird 178363,cat 178364,deer 178365,frog 178366,bird 178367,airplane 178368,ship 178369,ship 178370,airplane 178371,deer 178372,frog 178373,truck 178374,frog 178375,cat 178376,deer 178377,truck 178378,ship 178379,ship 178380,airplane 178381,dog 178382,deer 178383,cat 178384,deer 178385,frog 178386,truck 178387,deer 178388,ship 178389,cat 178390,horse 178391,truck 178392,truck 178393,frog 178394,airplane 178395,dog 178396,dog 178397,deer 178398,airplane 178399,dog 178400,deer 178401,airplane 178402,cat 178403,deer 178404,horse 178405,cat 178406,horse 178407,dog 178408,truck 178409,frog 178410,ship 178411,bird 178412,cat 178413,deer 178414,bird 178415,bird 178416,frog 178417,cat 178418,airplane 178419,cat 178420,frog 178421,ship 178422,cat 178423,truck 178424,deer 178425,cat 178426,bird 178427,truck 178428,automobile 178429,cat 178430,horse 178431,deer 178432,deer 178433,horse 178434,deer 178435,deer 178436,bird 178437,horse 178438,deer 178439,deer 178440,frog 178441,airplane 178442,frog 178443,deer 178444,frog 178445,dog 178446,bird 178447,frog 178448,dog 178449,bird 178450,deer 178451,bird 178452,bird 178453,frog 178454,ship 178455,deer 178456,horse 178457,frog 178458,frog 178459,deer 178460,cat 178461,dog 178462,dog 178463,deer 178464,automobile 178465,dog 178466,cat 178467,cat 178468,truck 178469,dog 178470,deer 178471,bird 178472,frog 178473,bird 178474,cat 178475,ship 178476,dog 178477,bird 178478,automobile 178479,automobile 178480,cat 178481,ship 178482,bird 178483,cat 178484,dog 178485,frog 178486,automobile 178487,airplane 178488,ship 178489,bird 178490,bird 178491,bird 178492,truck 178493,horse 178494,airplane 178495,truck 178496,ship 178497,horse 178498,cat 178499,frog 178500,automobile 178501,horse 178502,automobile 178503,frog 178504,cat 178505,automobile 178506,ship 178507,truck 178508,frog 178509,horse 178510,deer 178511,cat 178512,frog 178513,horse 178514,automobile 178515,frog 178516,airplane 178517,truck 178518,frog 178519,automobile 178520,frog 178521,horse 178522,frog 178523,deer 178524,cat 178525,deer 178526,automobile 178527,automobile 178528,cat 178529,frog 178530,bird 178531,cat 178532,deer 178533,frog 178534,frog 178535,airplane 178536,horse 178537,truck 178538,bird 178539,truck 178540,truck 178541,ship 178542,deer 178543,deer 178544,dog 178545,cat 178546,deer 178547,cat 178548,truck 178549,automobile 178550,horse 178551,bird 178552,ship 178553,deer 178554,ship 178555,frog 178556,cat 178557,horse 178558,automobile 178559,horse 178560,dog 178561,frog 178562,deer 178563,bird 178564,airplane 178565,airplane 178566,frog 178567,dog 178568,deer 178569,dog 178570,cat 178571,dog 178572,dog 178573,dog 178574,cat 178575,ship 178576,horse 178577,horse 178578,truck 178579,ship 178580,frog 178581,dog 178582,airplane 178583,cat 178584,truck 178585,ship 178586,cat 178587,truck 178588,horse 178589,deer 178590,deer 178591,frog 178592,cat 178593,airplane 178594,automobile 178595,dog 178596,frog 178597,cat 178598,truck 178599,cat 178600,automobile 178601,dog 178602,bird 178603,bird 178604,airplane 178605,dog 178606,truck 178607,frog 178608,cat 178609,horse 178610,frog 178611,cat 178612,bird 178613,ship 178614,horse 178615,ship 178616,truck 178617,airplane 178618,bird 178619,truck 178620,deer 178621,automobile 178622,truck 178623,frog 178624,horse 178625,airplane 178626,truck 178627,airplane 178628,bird 178629,dog 178630,deer 178631,automobile 178632,dog 178633,dog 178634,ship 178635,horse 178636,horse 178637,truck 178638,horse 178639,cat 178640,frog 178641,deer 178642,ship 178643,deer 178644,automobile 178645,deer 178646,deer 178647,bird 178648,automobile 178649,dog 178650,airplane 178651,airplane 178652,dog 178653,horse 178654,cat 178655,airplane 178656,ship 178657,dog 178658,automobile 178659,frog 178660,truck 178661,airplane 178662,cat 178663,frog 178664,airplane 178665,horse 178666,truck 178667,deer 178668,bird 178669,deer 178670,deer 178671,cat 178672,frog 178673,frog 178674,automobile 178675,truck 178676,airplane 178677,ship 178678,dog 178679,frog 178680,deer 178681,dog 178682,horse 178683,dog 178684,dog 178685,cat 178686,ship 178687,bird 178688,deer 178689,deer 178690,cat 178691,frog 178692,horse 178693,airplane 178694,airplane 178695,cat 178696,frog 178697,airplane 178698,ship 178699,ship 178700,frog 178701,airplane 178702,dog 178703,deer 178704,dog 178705,dog 178706,dog 178707,frog 178708,deer 178709,dog 178710,ship 178711,dog 178712,ship 178713,frog 178714,bird 178715,truck 178716,airplane 178717,automobile 178718,bird 178719,bird 178720,truck 178721,automobile 178722,horse 178723,automobile 178724,automobile 178725,frog 178726,frog 178727,bird 178728,airplane 178729,truck 178730,ship 178731,horse 178732,airplane 178733,deer 178734,dog 178735,cat 178736,airplane 178737,ship 178738,airplane 178739,frog 178740,frog 178741,bird 178742,deer 178743,airplane 178744,frog 178745,cat 178746,cat 178747,automobile 178748,frog 178749,deer 178750,truck 178751,airplane 178752,deer 178753,airplane 178754,frog 178755,deer 178756,horse 178757,dog 178758,bird 178759,bird 178760,bird 178761,ship 178762,ship 178763,airplane 178764,airplane 178765,frog 178766,truck 178767,cat 178768,cat 178769,truck 178770,truck 178771,deer 178772,cat 178773,airplane 178774,horse 178775,frog 178776,deer 178777,deer 178778,cat 178779,dog 178780,airplane 178781,bird 178782,deer 178783,truck 178784,cat 178785,truck 178786,deer 178787,cat 178788,deer 178789,truck 178790,frog 178791,frog 178792,deer 178793,truck 178794,cat 178795,frog 178796,dog 178797,dog 178798,horse 178799,airplane 178800,bird 178801,ship 178802,deer 178803,bird 178804,horse 178805,deer 178806,dog 178807,ship 178808,deer 178809,deer 178810,deer 178811,deer 178812,airplane 178813,deer 178814,cat 178815,frog 178816,airplane 178817,ship 178818,cat 178819,frog 178820,dog 178821,bird 178822,deer 178823,airplane 178824,frog 178825,cat 178826,frog 178827,deer 178828,cat 178829,frog 178830,automobile 178831,frog 178832,ship 178833,dog 178834,bird 178835,frog 178836,frog 178837,horse 178838,cat 178839,truck 178840,cat 178841,bird 178842,bird 178843,dog 178844,cat 178845,frog 178846,cat 178847,airplane 178848,truck 178849,ship 178850,truck 178851,horse 178852,dog 178853,frog 178854,airplane 178855,ship 178856,horse 178857,ship 178858,truck 178859,ship 178860,airplane 178861,automobile 178862,dog 178863,ship 178864,deer 178865,truck 178866,deer 178867,ship 178868,truck 178869,dog 178870,truck 178871,deer 178872,automobile 178873,bird 178874,automobile 178875,truck 178876,cat 178877,ship 178878,deer 178879,truck 178880,dog 178881,ship 178882,deer 178883,ship 178884,horse 178885,dog 178886,deer 178887,bird 178888,airplane 178889,bird 178890,cat 178891,frog 178892,dog 178893,bird 178894,horse 178895,dog 178896,dog 178897,airplane 178898,deer 178899,truck 178900,cat 178901,deer 178902,bird 178903,bird 178904,dog 178905,truck 178906,truck 178907,truck 178908,airplane 178909,bird 178910,deer 178911,deer 178912,truck 178913,deer 178914,deer 178915,truck 178916,truck 178917,frog 178918,cat 178919,horse 178920,frog 178921,cat 178922,truck 178923,cat 178924,truck 178925,ship 178926,frog 178927,frog 178928,ship 178929,cat 178930,ship 178931,dog 178932,ship 178933,cat 178934,airplane 178935,frog 178936,deer 178937,deer 178938,dog 178939,dog 178940,cat 178941,deer 178942,frog 178943,bird 178944,frog 178945,ship 178946,ship 178947,dog 178948,truck 178949,ship 178950,cat 178951,bird 178952,horse 178953,deer 178954,horse 178955,dog 178956,automobile 178957,truck 178958,truck 178959,truck 178960,dog 178961,dog 178962,truck 178963,airplane 178964,automobile 178965,cat 178966,deer 178967,frog 178968,truck 178969,bird 178970,dog 178971,truck 178972,ship 178973,automobile 178974,deer 178975,deer 178976,truck 178977,frog 178978,bird 178979,truck 178980,truck 178981,ship 178982,frog 178983,cat 178984,airplane 178985,cat 178986,automobile 178987,deer 178988,dog 178989,horse 178990,deer 178991,airplane 178992,cat 178993,ship 178994,horse 178995,deer 178996,cat 178997,dog 178998,deer 178999,truck 179000,ship 179001,cat 179002,deer 179003,cat 179004,horse 179005,frog 179006,bird 179007,automobile 179008,ship 179009,automobile 179010,dog 179011,cat 179012,frog 179013,deer 179014,airplane 179015,deer 179016,bird 179017,horse 179018,horse 179019,cat 179020,automobile 179021,horse 179022,automobile 179023,cat 179024,automobile 179025,airplane 179026,frog 179027,dog 179028,truck 179029,automobile 179030,bird 179031,cat 179032,horse 179033,dog 179034,dog 179035,horse 179036,automobile 179037,ship 179038,frog 179039,horse 179040,deer 179041,frog 179042,airplane 179043,truck 179044,horse 179045,truck 179046,cat 179047,cat 179048,frog 179049,frog 179050,truck 179051,deer 179052,horse 179053,dog 179054,truck 179055,frog 179056,automobile 179057,ship 179058,cat 179059,horse 179060,cat 179061,airplane 179062,automobile 179063,deer 179064,automobile 179065,cat 179066,cat 179067,dog 179068,dog 179069,bird 179070,truck 179071,dog 179072,horse 179073,airplane 179074,dog 179075,frog 179076,ship 179077,dog 179078,dog 179079,deer 179080,deer 179081,horse 179082,airplane 179083,dog 179084,frog 179085,automobile 179086,deer 179087,frog 179088,truck 179089,cat 179090,truck 179091,dog 179092,dog 179093,horse 179094,automobile 179095,truck 179096,automobile 179097,deer 179098,cat 179099,cat 179100,horse 179101,truck 179102,horse 179103,bird 179104,airplane 179105,ship 179106,deer 179107,cat 179108,bird 179109,ship 179110,ship 179111,dog 179112,airplane 179113,bird 179114,automobile 179115,cat 179116,horse 179117,cat 179118,horse 179119,dog 179120,frog 179121,frog 179122,automobile 179123,bird 179124,ship 179125,truck 179126,horse 179127,dog 179128,horse 179129,frog 179130,truck 179131,bird 179132,ship 179133,cat 179134,ship 179135,cat 179136,frog 179137,airplane 179138,airplane 179139,dog 179140,truck 179141,truck 179142,horse 179143,dog 179144,cat 179145,bird 179146,automobile 179147,truck 179148,deer 179149,dog 179150,automobile 179151,truck 179152,dog 179153,bird 179154,bird 179155,deer 179156,dog 179157,frog 179158,frog 179159,frog 179160,bird 179161,deer 179162,bird 179163,airplane 179164,bird 179165,airplane 179166,horse 179167,deer 179168,horse 179169,airplane 179170,cat 179171,deer 179172,truck 179173,dog 179174,deer 179175,airplane 179176,ship 179177,cat 179178,truck 179179,frog 179180,frog 179181,airplane 179182,dog 179183,horse 179184,deer 179185,frog 179186,deer 179187,airplane 179188,cat 179189,automobile 179190,automobile 179191,airplane 179192,truck 179193,deer 179194,deer 179195,truck 179196,bird 179197,deer 179198,cat 179199,horse 179200,truck 179201,truck 179202,cat 179203,cat 179204,ship 179205,frog 179206,dog 179207,frog 179208,frog 179209,horse 179210,airplane 179211,airplane 179212,cat 179213,truck 179214,airplane 179215,dog 179216,dog 179217,automobile 179218,automobile 179219,ship 179220,bird 179221,bird 179222,ship 179223,airplane 179224,automobile 179225,deer 179226,horse 179227,ship 179228,deer 179229,airplane 179230,ship 179231,automobile 179232,ship 179233,cat 179234,deer 179235,horse 179236,cat 179237,deer 179238,bird 179239,deer 179240,truck 179241,cat 179242,horse 179243,truck 179244,cat 179245,horse 179246,deer 179247,horse 179248,dog 179249,deer 179250,truck 179251,truck 179252,horse 179253,ship 179254,bird 179255,truck 179256,deer 179257,deer 179258,frog 179259,bird 179260,airplane 179261,dog 179262,airplane 179263,deer 179264,ship 179265,frog 179266,ship 179267,dog 179268,frog 179269,bird 179270,dog 179271,automobile 179272,dog 179273,cat 179274,bird 179275,airplane 179276,deer 179277,frog 179278,cat 179279,truck 179280,ship 179281,ship 179282,horse 179283,bird 179284,deer 179285,cat 179286,airplane 179287,airplane 179288,deer 179289,frog 179290,bird 179291,deer 179292,truck 179293,dog 179294,frog 179295,dog 179296,truck 179297,bird 179298,frog 179299,bird 179300,truck 179301,cat 179302,deer 179303,ship 179304,bird 179305,bird 179306,automobile 179307,truck 179308,bird 179309,airplane 179310,frog 179311,deer 179312,frog 179313,deer 179314,horse 179315,automobile 179316,airplane 179317,airplane 179318,horse 179319,automobile 179320,automobile 179321,frog 179322,dog 179323,automobile 179324,horse 179325,cat 179326,ship 179327,cat 179328,frog 179329,automobile 179330,cat 179331,horse 179332,dog 179333,bird 179334,cat 179335,deer 179336,frog 179337,deer 179338,automobile 179339,ship 179340,airplane 179341,deer 179342,ship 179343,airplane 179344,cat 179345,dog 179346,ship 179347,automobile 179348,cat 179349,airplane 179350,horse 179351,cat 179352,ship 179353,airplane 179354,truck 179355,horse 179356,cat 179357,truck 179358,truck 179359,dog 179360,cat 179361,airplane 179362,frog 179363,bird 179364,automobile 179365,cat 179366,horse 179367,dog 179368,horse 179369,frog 179370,airplane 179371,horse 179372,automobile 179373,truck 179374,horse 179375,ship 179376,dog 179377,cat 179378,horse 179379,bird 179380,airplane 179381,cat 179382,deer 179383,truck 179384,deer 179385,automobile 179386,dog 179387,truck 179388,horse 179389,frog 179390,airplane 179391,ship 179392,truck 179393,cat 179394,frog 179395,ship 179396,bird 179397,frog 179398,truck 179399,bird 179400,truck 179401,bird 179402,horse 179403,horse 179404,ship 179405,horse 179406,deer 179407,automobile 179408,cat 179409,truck 179410,truck 179411,truck 179412,frog 179413,dog 179414,automobile 179415,automobile 179416,truck 179417,horse 179418,ship 179419,frog 179420,deer 179421,truck 179422,horse 179423,dog 179424,truck 179425,dog 179426,frog 179427,dog 179428,cat 179429,airplane 179430,dog 179431,cat 179432,dog 179433,cat 179434,dog 179435,dog 179436,dog 179437,airplane 179438,bird 179439,ship 179440,bird 179441,airplane 179442,deer 179443,cat 179444,dog 179445,automobile 179446,deer 179447,cat 179448,frog 179449,horse 179450,deer 179451,deer 179452,automobile 179453,frog 179454,bird 179455,automobile 179456,cat 179457,automobile 179458,horse 179459,horse 179460,cat 179461,ship 179462,frog 179463,automobile 179464,truck 179465,bird 179466,dog 179467,horse 179468,cat 179469,bird 179470,dog 179471,frog 179472,automobile 179473,airplane 179474,automobile 179475,frog 179476,frog 179477,airplane 179478,deer 179479,deer 179480,truck 179481,horse 179482,truck 179483,frog 179484,truck 179485,frog 179486,ship 179487,truck 179488,dog 179489,deer 179490,frog 179491,dog 179492,frog 179493,horse 179494,frog 179495,cat 179496,cat 179497,cat 179498,cat 179499,dog 179500,bird 179501,dog 179502,cat 179503,horse 179504,deer 179505,bird 179506,frog 179507,airplane 179508,dog 179509,automobile 179510,dog 179511,dog 179512,horse 179513,dog 179514,frog 179515,dog 179516,ship 179517,automobile 179518,cat 179519,automobile 179520,cat 179521,bird 179522,ship 179523,deer 179524,frog 179525,frog 179526,deer 179527,automobile 179528,horse 179529,bird 179530,frog 179531,frog 179532,dog 179533,cat 179534,ship 179535,truck 179536,cat 179537,truck 179538,dog 179539,frog 179540,truck 179541,automobile 179542,dog 179543,ship 179544,truck 179545,airplane 179546,deer 179547,ship 179548,ship 179549,airplane 179550,automobile 179551,airplane 179552,deer 179553,truck 179554,airplane 179555,frog 179556,frog 179557,bird 179558,ship 179559,deer 179560,horse 179561,frog 179562,frog 179563,truck 179564,frog 179565,automobile 179566,automobile 179567,deer 179568,automobile 179569,dog 179570,bird 179571,truck 179572,horse 179573,ship 179574,horse 179575,deer 179576,cat 179577,automobile 179578,deer 179579,dog 179580,deer 179581,horse 179582,bird 179583,ship 179584,truck 179585,automobile 179586,bird 179587,ship 179588,bird 179589,horse 179590,deer 179591,truck 179592,horse 179593,deer 179594,truck 179595,cat 179596,cat 179597,automobile 179598,frog 179599,airplane 179600,bird 179601,ship 179602,frog 179603,truck 179604,truck 179605,dog 179606,frog 179607,frog 179608,automobile 179609,deer 179610,airplane 179611,airplane 179612,dog 179613,deer 179614,dog 179615,cat 179616,automobile 179617,airplane 179618,horse 179619,bird 179620,deer 179621,horse 179622,frog 179623,horse 179624,frog 179625,horse 179626,deer 179627,automobile 179628,cat 179629,horse 179630,horse 179631,cat 179632,cat 179633,bird 179634,horse 179635,truck 179636,frog 179637,deer 179638,frog 179639,horse 179640,deer 179641,automobile 179642,ship 179643,truck 179644,airplane 179645,horse 179646,ship 179647,dog 179648,airplane 179649,deer 179650,deer 179651,horse 179652,automobile 179653,airplane 179654,ship 179655,frog 179656,deer 179657,automobile 179658,automobile 179659,frog 179660,frog 179661,horse 179662,bird 179663,bird 179664,automobile 179665,horse 179666,horse 179667,frog 179668,dog 179669,deer 179670,truck 179671,automobile 179672,dog 179673,truck 179674,deer 179675,deer 179676,automobile 179677,cat 179678,truck 179679,cat 179680,bird 179681,frog 179682,cat 179683,truck 179684,cat 179685,airplane 179686,truck 179687,automobile 179688,dog 179689,ship 179690,cat 179691,airplane 179692,frog 179693,truck 179694,deer 179695,frog 179696,frog 179697,deer 179698,ship 179699,airplane 179700,ship 179701,horse 179702,airplane 179703,deer 179704,horse 179705,frog 179706,cat 179707,truck 179708,frog 179709,bird 179710,deer 179711,ship 179712,truck 179713,truck 179714,dog 179715,ship 179716,frog 179717,bird 179718,truck 179719,dog 179720,ship 179721,truck 179722,truck 179723,horse 179724,cat 179725,horse 179726,bird 179727,bird 179728,deer 179729,horse 179730,frog 179731,bird 179732,dog 179733,horse 179734,truck 179735,truck 179736,truck 179737,dog 179738,horse 179739,automobile 179740,airplane 179741,dog 179742,airplane 179743,deer 179744,truck 179745,truck 179746,automobile 179747,horse 179748,dog 179749,deer 179750,airplane 179751,bird 179752,ship 179753,cat 179754,airplane 179755,bird 179756,frog 179757,automobile 179758,bird 179759,ship 179760,truck 179761,deer 179762,dog 179763,airplane 179764,automobile 179765,horse 179766,cat 179767,automobile 179768,cat 179769,automobile 179770,truck 179771,deer 179772,dog 179773,horse 179774,airplane 179775,automobile 179776,deer 179777,deer 179778,bird 179779,horse 179780,deer 179781,frog 179782,dog 179783,deer 179784,dog 179785,dog 179786,dog 179787,cat 179788,horse 179789,dog 179790,truck 179791,truck 179792,truck 179793,cat 179794,dog 179795,bird 179796,truck 179797,frog 179798,truck 179799,automobile 179800,frog 179801,dog 179802,frog 179803,deer 179804,deer 179805,cat 179806,frog 179807,frog 179808,bird 179809,horse 179810,cat 179811,horse 179812,truck 179813,deer 179814,truck 179815,dog 179816,cat 179817,deer 179818,airplane 179819,deer 179820,frog 179821,bird 179822,deer 179823,dog 179824,truck 179825,ship 179826,bird 179827,deer 179828,horse 179829,automobile 179830,airplane 179831,cat 179832,dog 179833,dog 179834,airplane 179835,bird 179836,deer 179837,dog 179838,dog 179839,horse 179840,bird 179841,ship 179842,ship 179843,horse 179844,airplane 179845,dog 179846,frog 179847,dog 179848,bird 179849,dog 179850,truck 179851,airplane 179852,truck 179853,horse 179854,frog 179855,horse 179856,truck 179857,automobile 179858,dog 179859,deer 179860,dog 179861,truck 179862,ship 179863,horse 179864,automobile 179865,airplane 179866,dog 179867,horse 179868,cat 179869,deer 179870,automobile 179871,truck 179872,truck 179873,bird 179874,frog 179875,truck 179876,frog 179877,deer 179878,truck 179879,horse 179880,bird 179881,horse 179882,bird 179883,deer 179884,ship 179885,deer 179886,dog 179887,ship 179888,frog 179889,frog 179890,airplane 179891,deer 179892,dog 179893,truck 179894,frog 179895,frog 179896,horse 179897,truck 179898,frog 179899,deer 179900,ship 179901,truck 179902,bird 179903,deer 179904,airplane 179905,dog 179906,truck 179907,dog 179908,frog 179909,truck 179910,ship 179911,bird 179912,truck 179913,deer 179914,frog 179915,truck 179916,deer 179917,horse 179918,ship 179919,automobile 179920,deer 179921,frog 179922,automobile 179923,horse 179924,frog 179925,truck 179926,dog 179927,frog 179928,truck 179929,frog 179930,frog 179931,deer 179932,horse 179933,deer 179934,truck 179935,cat 179936,cat 179937,deer 179938,bird 179939,ship 179940,cat 179941,deer 179942,horse 179943,horse 179944,ship 179945,bird 179946,bird 179947,bird 179948,deer 179949,airplane 179950,bird 179951,deer 179952,frog 179953,ship 179954,cat 179955,frog 179956,cat 179957,bird 179958,deer 179959,truck 179960,bird 179961,cat 179962,automobile 179963,frog 179964,horse 179965,dog 179966,bird 179967,horse 179968,bird 179969,truck 179970,ship 179971,frog 179972,cat 179973,deer 179974,cat 179975,bird 179976,horse 179977,horse 179978,deer 179979,bird 179980,airplane 179981,truck 179982,airplane 179983,cat 179984,dog 179985,horse 179986,cat 179987,deer 179988,frog 179989,airplane 179990,deer 179991,bird 179992,deer 179993,deer 179994,horse 179995,horse 179996,horse 179997,cat 179998,deer 179999,bird 180000,automobile 180001,horse 180002,airplane 180003,truck 180004,cat 180005,horse 180006,bird 180007,cat 180008,deer 180009,truck 180010,horse 180011,deer 180012,bird 180013,ship 180014,dog 180015,bird 180016,truck 180017,dog 180018,automobile 180019,horse 180020,frog 180021,airplane 180022,deer 180023,frog 180024,truck 180025,horse 180026,cat 180027,cat 180028,frog 180029,airplane 180030,deer 180031,automobile 180032,ship 180033,airplane 180034,deer 180035,cat 180036,bird 180037,truck 180038,horse 180039,deer 180040,bird 180041,truck 180042,automobile 180043,dog 180044,ship 180045,airplane 180046,automobile 180047,frog 180048,truck 180049,truck 180050,bird 180051,cat 180052,dog 180053,ship 180054,ship 180055,horse 180056,ship 180057,truck 180058,cat 180059,deer 180060,automobile 180061,cat 180062,cat 180063,truck 180064,frog 180065,deer 180066,bird 180067,cat 180068,deer 180069,deer 180070,ship 180071,deer 180072,frog 180073,deer 180074,dog 180075,cat 180076,dog 180077,cat 180078,airplane 180079,frog 180080,horse 180081,cat 180082,truck 180083,ship 180084,truck 180085,horse 180086,dog 180087,truck 180088,horse 180089,frog 180090,truck 180091,frog 180092,bird 180093,airplane 180094,cat 180095,bird 180096,automobile 180097,automobile 180098,frog 180099,dog 180100,cat 180101,frog 180102,dog 180103,bird 180104,automobile 180105,ship 180106,deer 180107,deer 180108,cat 180109,airplane 180110,deer 180111,bird 180112,deer 180113,truck 180114,horse 180115,horse 180116,cat 180117,truck 180118,cat 180119,deer 180120,deer 180121,bird 180122,automobile 180123,truck 180124,airplane 180125,deer 180126,deer 180127,truck 180128,cat 180129,cat 180130,frog 180131,truck 180132,ship 180133,cat 180134,dog 180135,dog 180136,frog 180137,ship 180138,horse 180139,horse 180140,horse 180141,bird 180142,dog 180143,truck 180144,truck 180145,horse 180146,bird 180147,airplane 180148,automobile 180149,frog 180150,truck 180151,airplane 180152,cat 180153,horse 180154,dog 180155,deer 180156,truck 180157,deer 180158,truck 180159,deer 180160,ship 180161,horse 180162,automobile 180163,frog 180164,airplane 180165,horse 180166,dog 180167,ship 180168,deer 180169,deer 180170,horse 180171,truck 180172,cat 180173,dog 180174,airplane 180175,cat 180176,truck 180177,bird 180178,dog 180179,frog 180180,dog 180181,cat 180182,truck 180183,truck 180184,frog 180185,airplane 180186,horse 180187,horse 180188,frog 180189,airplane 180190,cat 180191,airplane 180192,deer 180193,frog 180194,cat 180195,automobile 180196,cat 180197,dog 180198,automobile 180199,airplane 180200,horse 180201,deer 180202,dog 180203,cat 180204,horse 180205,deer 180206,dog 180207,dog 180208,frog 180209,airplane 180210,cat 180211,horse 180212,deer 180213,truck 180214,cat 180215,truck 180216,deer 180217,horse 180218,horse 180219,cat 180220,frog 180221,automobile 180222,bird 180223,truck 180224,cat 180225,ship 180226,frog 180227,horse 180228,airplane 180229,frog 180230,cat 180231,dog 180232,deer 180233,cat 180234,bird 180235,dog 180236,cat 180237,deer 180238,deer 180239,truck 180240,dog 180241,horse 180242,dog 180243,horse 180244,dog 180245,bird 180246,frog 180247,horse 180248,dog 180249,cat 180250,ship 180251,cat 180252,airplane 180253,ship 180254,horse 180255,dog 180256,frog 180257,cat 180258,deer 180259,automobile 180260,ship 180261,automobile 180262,cat 180263,cat 180264,airplane 180265,frog 180266,ship 180267,automobile 180268,cat 180269,frog 180270,truck 180271,automobile 180272,deer 180273,truck 180274,ship 180275,deer 180276,cat 180277,deer 180278,dog 180279,frog 180280,cat 180281,cat 180282,deer 180283,deer 180284,cat 180285,bird 180286,cat 180287,cat 180288,bird 180289,frog 180290,cat 180291,deer 180292,truck 180293,frog 180294,deer 180295,deer 180296,cat 180297,cat 180298,ship 180299,deer 180300,deer 180301,airplane 180302,dog 180303,airplane 180304,frog 180305,truck 180306,bird 180307,truck 180308,dog 180309,automobile 180310,cat 180311,deer 180312,truck 180313,deer 180314,deer 180315,bird 180316,automobile 180317,dog 180318,bird 180319,dog 180320,bird 180321,truck 180322,airplane 180323,truck 180324,horse 180325,deer 180326,dog 180327,ship 180328,automobile 180329,bird 180330,frog 180331,deer 180332,ship 180333,frog 180334,frog 180335,deer 180336,deer 180337,bird 180338,frog 180339,horse 180340,bird 180341,truck 180342,cat 180343,airplane 180344,cat 180345,cat 180346,horse 180347,automobile 180348,dog 180349,cat 180350,automobile 180351,bird 180352,dog 180353,deer 180354,bird 180355,frog 180356,horse 180357,truck 180358,bird 180359,automobile 180360,frog 180361,airplane 180362,bird 180363,bird 180364,frog 180365,bird 180366,dog 180367,truck 180368,ship 180369,cat 180370,airplane 180371,frog 180372,frog 180373,cat 180374,deer 180375,bird 180376,deer 180377,truck 180378,airplane 180379,dog 180380,ship 180381,dog 180382,truck 180383,dog 180384,horse 180385,airplane 180386,frog 180387,airplane 180388,cat 180389,truck 180390,truck 180391,automobile 180392,automobile 180393,airplane 180394,cat 180395,frog 180396,truck 180397,cat 180398,horse 180399,automobile 180400,frog 180401,frog 180402,bird 180403,truck 180404,cat 180405,frog 180406,cat 180407,bird 180408,ship 180409,deer 180410,deer 180411,automobile 180412,dog 180413,airplane 180414,bird 180415,deer 180416,airplane 180417,ship 180418,dog 180419,dog 180420,bird 180421,frog 180422,cat 180423,dog 180424,dog 180425,airplane 180426,bird 180427,bird 180428,truck 180429,automobile 180430,dog 180431,truck 180432,deer 180433,deer 180434,dog 180435,cat 180436,deer 180437,dog 180438,cat 180439,deer 180440,ship 180441,horse 180442,truck 180443,deer 180444,cat 180445,airplane 180446,automobile 180447,frog 180448,deer 180449,bird 180450,bird 180451,automobile 180452,dog 180453,dog 180454,deer 180455,frog 180456,deer 180457,deer 180458,deer 180459,dog 180460,frog 180461,bird 180462,airplane 180463,horse 180464,truck 180465,dog 180466,horse 180467,airplane 180468,deer 180469,ship 180470,horse 180471,frog 180472,airplane 180473,truck 180474,airplane 180475,frog 180476,airplane 180477,cat 180478,cat 180479,dog 180480,horse 180481,frog 180482,horse 180483,frog 180484,cat 180485,automobile 180486,dog 180487,airplane 180488,airplane 180489,bird 180490,cat 180491,truck 180492,truck 180493,truck 180494,bird 180495,dog 180496,ship 180497,horse 180498,deer 180499,frog 180500,deer 180501,deer 180502,deer 180503,bird 180504,truck 180505,frog 180506,bird 180507,truck 180508,automobile 180509,airplane 180510,bird 180511,deer 180512,deer 180513,bird 180514,ship 180515,cat 180516,truck 180517,horse 180518,cat 180519,bird 180520,deer 180521,ship 180522,cat 180523,cat 180524,truck 180525,horse 180526,ship 180527,dog 180528,frog 180529,truck 180530,deer 180531,bird 180532,airplane 180533,bird 180534,truck 180535,cat 180536,deer 180537,bird 180538,ship 180539,horse 180540,horse 180541,cat 180542,bird 180543,cat 180544,deer 180545,cat 180546,deer 180547,deer 180548,cat 180549,ship 180550,frog 180551,frog 180552,frog 180553,bird 180554,horse 180555,dog 180556,frog 180557,dog 180558,frog 180559,horse 180560,cat 180561,cat 180562,dog 180563,truck 180564,cat 180565,dog 180566,ship 180567,cat 180568,dog 180569,frog 180570,cat 180571,dog 180572,horse 180573,dog 180574,airplane 180575,automobile 180576,cat 180577,horse 180578,cat 180579,cat 180580,ship 180581,cat 180582,ship 180583,deer 180584,cat 180585,ship 180586,deer 180587,frog 180588,airplane 180589,horse 180590,cat 180591,truck 180592,bird 180593,bird 180594,cat 180595,deer 180596,horse 180597,airplane 180598,dog 180599,airplane 180600,frog 180601,deer 180602,horse 180603,automobile 180604,dog 180605,truck 180606,dog 180607,airplane 180608,frog 180609,cat 180610,horse 180611,cat 180612,deer 180613,cat 180614,bird 180615,deer 180616,deer 180617,truck 180618,automobile 180619,ship 180620,truck 180621,cat 180622,horse 180623,ship 180624,ship 180625,frog 180626,bird 180627,bird 180628,horse 180629,cat 180630,truck 180631,ship 180632,bird 180633,horse 180634,dog 180635,airplane 180636,automobile 180637,cat 180638,ship 180639,airplane 180640,truck 180641,cat 180642,cat 180643,airplane 180644,cat 180645,frog 180646,deer 180647,dog 180648,automobile 180649,horse 180650,deer 180651,dog 180652,frog 180653,deer 180654,airplane 180655,automobile 180656,truck 180657,ship 180658,airplane 180659,automobile 180660,horse 180661,frog 180662,bird 180663,deer 180664,airplane 180665,bird 180666,truck 180667,deer 180668,cat 180669,deer 180670,cat 180671,cat 180672,truck 180673,deer 180674,deer 180675,bird 180676,dog 180677,dog 180678,frog 180679,bird 180680,frog 180681,automobile 180682,ship 180683,automobile 180684,truck 180685,airplane 180686,frog 180687,deer 180688,truck 180689,cat 180690,ship 180691,automobile 180692,bird 180693,cat 180694,dog 180695,deer 180696,frog 180697,cat 180698,frog 180699,deer 180700,frog 180701,airplane 180702,ship 180703,deer 180704,horse 180705,deer 180706,deer 180707,cat 180708,airplane 180709,frog 180710,horse 180711,bird 180712,ship 180713,truck 180714,cat 180715,bird 180716,cat 180717,frog 180718,dog 180719,airplane 180720,bird 180721,bird 180722,bird 180723,dog 180724,dog 180725,deer 180726,deer 180727,airplane 180728,dog 180729,airplane 180730,bird 180731,ship 180732,automobile 180733,deer 180734,truck 180735,truck 180736,airplane 180737,bird 180738,bird 180739,deer 180740,deer 180741,truck 180742,deer 180743,ship 180744,cat 180745,automobile 180746,bird 180747,automobile 180748,deer 180749,airplane 180750,cat 180751,bird 180752,frog 180753,deer 180754,automobile 180755,frog 180756,deer 180757,dog 180758,horse 180759,cat 180760,frog 180761,frog 180762,truck 180763,dog 180764,airplane 180765,dog 180766,frog 180767,automobile 180768,automobile 180769,airplane 180770,truck 180771,deer 180772,dog 180773,deer 180774,cat 180775,bird 180776,dog 180777,frog 180778,dog 180779,deer 180780,deer 180781,horse 180782,bird 180783,bird 180784,cat 180785,bird 180786,frog 180787,ship 180788,ship 180789,dog 180790,automobile 180791,deer 180792,automobile 180793,deer 180794,deer 180795,horse 180796,bird 180797,deer 180798,horse 180799,airplane 180800,airplane 180801,ship 180802,airplane 180803,frog 180804,automobile 180805,airplane 180806,cat 180807,cat 180808,cat 180809,cat 180810,ship 180811,truck 180812,airplane 180813,ship 180814,automobile 180815,dog 180816,dog 180817,horse 180818,horse 180819,cat 180820,truck 180821,deer 180822,dog 180823,deer 180824,horse 180825,ship 180826,deer 180827,cat 180828,deer 180829,truck 180830,cat 180831,automobile 180832,deer 180833,bird 180834,cat 180835,bird 180836,frog 180837,dog 180838,automobile 180839,bird 180840,cat 180841,ship 180842,frog 180843,frog 180844,cat 180845,ship 180846,dog 180847,airplane 180848,truck 180849,cat 180850,truck 180851,bird 180852,truck 180853,dog 180854,frog 180855,dog 180856,airplane 180857,horse 180858,horse 180859,frog 180860,cat 180861,truck 180862,cat 180863,cat 180864,frog 180865,deer 180866,horse 180867,bird 180868,dog 180869,horse 180870,cat 180871,frog 180872,bird 180873,airplane 180874,dog 180875,frog 180876,cat 180877,horse 180878,dog 180879,cat 180880,truck 180881,truck 180882,ship 180883,ship 180884,dog 180885,frog 180886,bird 180887,frog 180888,automobile 180889,dog 180890,horse 180891,airplane 180892,deer 180893,truck 180894,deer 180895,cat 180896,ship 180897,cat 180898,bird 180899,deer 180900,truck 180901,deer 180902,cat 180903,deer 180904,deer 180905,horse 180906,airplane 180907,dog 180908,horse 180909,cat 180910,automobile 180911,dog 180912,automobile 180913,ship 180914,horse 180915,airplane 180916,airplane 180917,automobile 180918,airplane 180919,airplane 180920,airplane 180921,deer 180922,horse 180923,truck 180924,ship 180925,horse 180926,dog 180927,horse 180928,bird 180929,horse 180930,airplane 180931,cat 180932,airplane 180933,dog 180934,cat 180935,frog 180936,dog 180937,cat 180938,deer 180939,dog 180940,bird 180941,deer 180942,bird 180943,dog 180944,ship 180945,airplane 180946,cat 180947,frog 180948,frog 180949,horse 180950,cat 180951,dog 180952,airplane 180953,horse 180954,frog 180955,airplane 180956,airplane 180957,dog 180958,cat 180959,deer 180960,frog 180961,truck 180962,airplane 180963,horse 180964,truck 180965,horse 180966,dog 180967,cat 180968,ship 180969,frog 180970,dog 180971,truck 180972,dog 180973,horse 180974,bird 180975,cat 180976,dog 180977,deer 180978,dog 180979,horse 180980,truck 180981,bird 180982,truck 180983,horse 180984,deer 180985,deer 180986,automobile 180987,ship 180988,bird 180989,bird 180990,deer 180991,truck 180992,automobile 180993,automobile 180994,automobile 180995,frog 180996,cat 180997,dog 180998,cat 180999,ship 181000,bird 181001,truck 181002,airplane 181003,ship 181004,deer 181005,frog 181006,deer 181007,frog 181008,ship 181009,deer 181010,frog 181011,airplane 181012,ship 181013,horse 181014,ship 181015,airplane 181016,frog 181017,automobile 181018,frog 181019,frog 181020,truck 181021,airplane 181022,dog 181023,cat 181024,automobile 181025,horse 181026,dog 181027,bird 181028,airplane 181029,frog 181030,frog 181031,frog 181032,bird 181033,deer 181034,cat 181035,deer 181036,deer 181037,bird 181038,dog 181039,automobile 181040,bird 181041,deer 181042,cat 181043,horse 181044,automobile 181045,cat 181046,frog 181047,bird 181048,bird 181049,horse 181050,cat 181051,truck 181052,truck 181053,automobile 181054,airplane 181055,cat 181056,automobile 181057,frog 181058,frog 181059,airplane 181060,ship 181061,ship 181062,airplane 181063,truck 181064,cat 181065,automobile 181066,bird 181067,bird 181068,horse 181069,ship 181070,cat 181071,horse 181072,cat 181073,bird 181074,horse 181075,horse 181076,bird 181077,frog 181078,cat 181079,cat 181080,airplane 181081,airplane 181082,ship 181083,automobile 181084,ship 181085,truck 181086,deer 181087,truck 181088,airplane 181089,cat 181090,dog 181091,deer 181092,cat 181093,automobile 181094,dog 181095,deer 181096,ship 181097,frog 181098,dog 181099,deer 181100,automobile 181101,airplane 181102,bird 181103,dog 181104,ship 181105,bird 181106,ship 181107,airplane 181108,horse 181109,deer 181110,ship 181111,ship 181112,truck 181113,airplane 181114,dog 181115,airplane 181116,truck 181117,deer 181118,ship 181119,ship 181120,bird 181121,frog 181122,frog 181123,dog 181124,deer 181125,deer 181126,horse 181127,dog 181128,dog 181129,dog 181130,horse 181131,bird 181132,deer 181133,horse 181134,deer 181135,horse 181136,automobile 181137,deer 181138,deer 181139,dog 181140,dog 181141,airplane 181142,ship 181143,frog 181144,deer 181145,cat 181146,dog 181147,bird 181148,dog 181149,airplane 181150,ship 181151,frog 181152,bird 181153,deer 181154,frog 181155,bird 181156,truck 181157,truck 181158,cat 181159,deer 181160,cat 181161,deer 181162,bird 181163,truck 181164,dog 181165,dog 181166,cat 181167,airplane 181168,airplane 181169,dog 181170,airplane 181171,ship 181172,cat 181173,deer 181174,automobile 181175,cat 181176,dog 181177,airplane 181178,deer 181179,horse 181180,truck 181181,ship 181182,airplane 181183,truck 181184,ship 181185,frog 181186,bird 181187,horse 181188,horse 181189,cat 181190,horse 181191,frog 181192,deer 181193,dog 181194,cat 181195,ship 181196,dog 181197,bird 181198,frog 181199,airplane 181200,automobile 181201,frog 181202,airplane 181203,bird 181204,airplane 181205,truck 181206,truck 181207,airplane 181208,truck 181209,deer 181210,airplane 181211,ship 181212,airplane 181213,ship 181214,truck 181215,truck 181216,horse 181217,deer 181218,horse 181219,deer 181220,dog 181221,frog 181222,airplane 181223,deer 181224,dog 181225,horse 181226,dog 181227,airplane 181228,automobile 181229,deer 181230,dog 181231,cat 181232,dog 181233,automobile 181234,automobile 181235,airplane 181236,cat 181237,airplane 181238,automobile 181239,frog 181240,airplane 181241,dog 181242,automobile 181243,automobile 181244,truck 181245,truck 181246,deer 181247,cat 181248,cat 181249,frog 181250,airplane 181251,frog 181252,deer 181253,cat 181254,bird 181255,cat 181256,frog 181257,truck 181258,horse 181259,ship 181260,frog 181261,cat 181262,ship 181263,dog 181264,deer 181265,frog 181266,ship 181267,truck 181268,ship 181269,deer 181270,airplane 181271,bird 181272,ship 181273,deer 181274,frog 181275,dog 181276,deer 181277,deer 181278,dog 181279,deer 181280,ship 181281,truck 181282,deer 181283,automobile 181284,dog 181285,horse 181286,truck 181287,ship 181288,ship 181289,cat 181290,cat 181291,bird 181292,cat 181293,truck 181294,bird 181295,automobile 181296,frog 181297,dog 181298,airplane 181299,bird 181300,bird 181301,ship 181302,deer 181303,ship 181304,horse 181305,deer 181306,truck 181307,horse 181308,truck 181309,horse 181310,truck 181311,deer 181312,airplane 181313,frog 181314,dog 181315,ship 181316,deer 181317,truck 181318,bird 181319,airplane 181320,cat 181321,frog 181322,frog 181323,automobile 181324,horse 181325,truck 181326,horse 181327,automobile 181328,cat 181329,dog 181330,ship 181331,truck 181332,dog 181333,truck 181334,ship 181335,bird 181336,horse 181337,deer 181338,automobile 181339,cat 181340,cat 181341,bird 181342,truck 181343,ship 181344,deer 181345,truck 181346,dog 181347,cat 181348,frog 181349,airplane 181350,deer 181351,ship 181352,dog 181353,deer 181354,deer 181355,ship 181356,airplane 181357,deer 181358,dog 181359,deer 181360,frog 181361,horse 181362,truck 181363,bird 181364,horse 181365,truck 181366,dog 181367,horse 181368,dog 181369,dog 181370,horse 181371,horse 181372,automobile 181373,cat 181374,horse 181375,deer 181376,dog 181377,airplane 181378,cat 181379,frog 181380,bird 181381,airplane 181382,cat 181383,cat 181384,cat 181385,bird 181386,deer 181387,frog 181388,deer 181389,frog 181390,frog 181391,automobile 181392,airplane 181393,airplane 181394,bird 181395,truck 181396,ship 181397,cat 181398,bird 181399,deer 181400,automobile 181401,automobile 181402,deer 181403,airplane 181404,horse 181405,ship 181406,airplane 181407,truck 181408,airplane 181409,cat 181410,frog 181411,airplane 181412,truck 181413,bird 181414,frog 181415,frog 181416,cat 181417,cat 181418,frog 181419,deer 181420,cat 181421,deer 181422,dog 181423,frog 181424,ship 181425,deer 181426,cat 181427,deer 181428,cat 181429,frog 181430,cat 181431,truck 181432,truck 181433,airplane 181434,automobile 181435,cat 181436,ship 181437,cat 181438,horse 181439,truck 181440,deer 181441,cat 181442,deer 181443,ship 181444,ship 181445,ship 181446,truck 181447,truck 181448,automobile 181449,dog 181450,bird 181451,dog 181452,horse 181453,truck 181454,horse 181455,frog 181456,cat 181457,truck 181458,truck 181459,automobile 181460,ship 181461,truck 181462,frog 181463,deer 181464,dog 181465,bird 181466,airplane 181467,deer 181468,deer 181469,airplane 181470,cat 181471,bird 181472,ship 181473,horse 181474,dog 181475,dog 181476,truck 181477,frog 181478,ship 181479,cat 181480,deer 181481,cat 181482,bird 181483,ship 181484,bird 181485,automobile 181486,airplane 181487,deer 181488,deer 181489,bird 181490,airplane 181491,cat 181492,frog 181493,frog 181494,bird 181495,cat 181496,cat 181497,truck 181498,truck 181499,deer 181500,horse 181501,deer 181502,truck 181503,frog 181504,dog 181505,dog 181506,cat 181507,airplane 181508,bird 181509,truck 181510,frog 181511,cat 181512,horse 181513,deer 181514,bird 181515,horse 181516,deer 181517,frog 181518,dog 181519,frog 181520,deer 181521,dog 181522,airplane 181523,deer 181524,cat 181525,airplane 181526,horse 181527,ship 181528,frog 181529,deer 181530,cat 181531,frog 181532,bird 181533,dog 181534,automobile 181535,cat 181536,automobile 181537,ship 181538,horse 181539,horse 181540,airplane 181541,bird 181542,deer 181543,horse 181544,ship 181545,automobile 181546,truck 181547,cat 181548,deer 181549,deer 181550,truck 181551,automobile 181552,horse 181553,truck 181554,automobile 181555,cat 181556,dog 181557,dog 181558,horse 181559,ship 181560,airplane 181561,cat 181562,cat 181563,horse 181564,dog 181565,bird 181566,frog 181567,ship 181568,bird 181569,dog 181570,bird 181571,ship 181572,cat 181573,horse 181574,frog 181575,frog 181576,horse 181577,airplane 181578,bird 181579,bird 181580,ship 181581,deer 181582,truck 181583,dog 181584,deer 181585,automobile 181586,dog 181587,horse 181588,frog 181589,deer 181590,truck 181591,frog 181592,deer 181593,ship 181594,truck 181595,deer 181596,cat 181597,automobile 181598,dog 181599,ship 181600,horse 181601,dog 181602,dog 181603,bird 181604,frog 181605,bird 181606,horse 181607,dog 181608,horse 181609,bird 181610,truck 181611,truck 181612,dog 181613,cat 181614,ship 181615,frog 181616,airplane 181617,cat 181618,horse 181619,truck 181620,automobile 181621,airplane 181622,horse 181623,deer 181624,frog 181625,deer 181626,dog 181627,dog 181628,bird 181629,airplane 181630,truck 181631,deer 181632,frog 181633,truck 181634,dog 181635,airplane 181636,airplane 181637,frog 181638,deer 181639,truck 181640,airplane 181641,cat 181642,deer 181643,frog 181644,cat 181645,dog 181646,ship 181647,horse 181648,airplane 181649,truck 181650,deer 181651,cat 181652,ship 181653,bird 181654,deer 181655,automobile 181656,dog 181657,airplane 181658,frog 181659,deer 181660,horse 181661,frog 181662,truck 181663,cat 181664,cat 181665,frog 181666,cat 181667,dog 181668,deer 181669,dog 181670,automobile 181671,frog 181672,truck 181673,deer 181674,deer 181675,truck 181676,frog 181677,cat 181678,horse 181679,cat 181680,frog 181681,deer 181682,automobile 181683,airplane 181684,airplane 181685,dog 181686,horse 181687,dog 181688,horse 181689,cat 181690,automobile 181691,frog 181692,deer 181693,bird 181694,frog 181695,ship 181696,bird 181697,deer 181698,bird 181699,truck 181700,dog 181701,automobile 181702,automobile 181703,deer 181704,ship 181705,deer 181706,horse 181707,bird 181708,frog 181709,automobile 181710,automobile 181711,deer 181712,ship 181713,dog 181714,automobile 181715,cat 181716,dog 181717,frog 181718,airplane 181719,cat 181720,truck 181721,automobile 181722,truck 181723,deer 181724,truck 181725,airplane 181726,horse 181727,deer 181728,deer 181729,horse 181730,bird 181731,truck 181732,airplane 181733,automobile 181734,horse 181735,cat 181736,automobile 181737,dog 181738,horse 181739,truck 181740,frog 181741,horse 181742,airplane 181743,deer 181744,automobile 181745,frog 181746,truck 181747,bird 181748,truck 181749,dog 181750,ship 181751,ship 181752,cat 181753,ship 181754,horse 181755,dog 181756,airplane 181757,frog 181758,ship 181759,cat 181760,airplane 181761,bird 181762,frog 181763,truck 181764,ship 181765,airplane 181766,automobile 181767,truck 181768,airplane 181769,truck 181770,cat 181771,cat 181772,deer 181773,ship 181774,frog 181775,ship 181776,frog 181777,frog 181778,bird 181779,deer 181780,dog 181781,cat 181782,ship 181783,airplane 181784,bird 181785,bird 181786,frog 181787,airplane 181788,dog 181789,dog 181790,cat 181791,truck 181792,ship 181793,horse 181794,deer 181795,deer 181796,deer 181797,frog 181798,cat 181799,truck 181800,airplane 181801,horse 181802,deer 181803,airplane 181804,frog 181805,deer 181806,horse 181807,ship 181808,ship 181809,automobile 181810,ship 181811,truck 181812,frog 181813,cat 181814,automobile 181815,frog 181816,cat 181817,dog 181818,cat 181819,dog 181820,cat 181821,dog 181822,deer 181823,dog 181824,bird 181825,truck 181826,horse 181827,truck 181828,cat 181829,horse 181830,automobile 181831,dog 181832,truck 181833,frog 181834,horse 181835,bird 181836,deer 181837,cat 181838,bird 181839,horse 181840,frog 181841,airplane 181842,cat 181843,automobile 181844,airplane 181845,cat 181846,frog 181847,automobile 181848,dog 181849,ship 181850,horse 181851,dog 181852,horse 181853,deer 181854,dog 181855,airplane 181856,frog 181857,truck 181858,cat 181859,ship 181860,cat 181861,truck 181862,bird 181863,ship 181864,dog 181865,cat 181866,frog 181867,frog 181868,dog 181869,automobile 181870,bird 181871,truck 181872,cat 181873,deer 181874,ship 181875,cat 181876,cat 181877,automobile 181878,cat 181879,automobile 181880,frog 181881,deer 181882,truck 181883,ship 181884,automobile 181885,dog 181886,dog 181887,automobile 181888,cat 181889,frog 181890,cat 181891,ship 181892,ship 181893,dog 181894,airplane 181895,deer 181896,airplane 181897,cat 181898,cat 181899,bird 181900,airplane 181901,bird 181902,truck 181903,deer 181904,ship 181905,bird 181906,cat 181907,cat 181908,dog 181909,dog 181910,deer 181911,deer 181912,horse 181913,cat 181914,frog 181915,deer 181916,dog 181917,ship 181918,cat 181919,airplane 181920,dog 181921,deer 181922,airplane 181923,bird 181924,bird 181925,airplane 181926,truck 181927,deer 181928,ship 181929,deer 181930,ship 181931,airplane 181932,truck 181933,bird 181934,horse 181935,airplane 181936,cat 181937,horse 181938,cat 181939,frog 181940,frog 181941,frog 181942,dog 181943,dog 181944,automobile 181945,bird 181946,airplane 181947,horse 181948,cat 181949,automobile 181950,truck 181951,dog 181952,bird 181953,ship 181954,cat 181955,airplane 181956,airplane 181957,frog 181958,bird 181959,frog 181960,dog 181961,automobile 181962,deer 181963,truck 181964,cat 181965,cat 181966,dog 181967,bird 181968,cat 181969,bird 181970,cat 181971,dog 181972,horse 181973,frog 181974,airplane 181975,frog 181976,cat 181977,dog 181978,ship 181979,ship 181980,ship 181981,cat 181982,ship 181983,bird 181984,horse 181985,bird 181986,dog 181987,dog 181988,frog 181989,airplane 181990,frog 181991,bird 181992,horse 181993,airplane 181994,cat 181995,frog 181996,truck 181997,horse 181998,horse 181999,automobile 182000,frog 182001,truck 182002,horse 182003,horse 182004,truck 182005,frog 182006,cat 182007,bird 182008,deer 182009,truck 182010,airplane 182011,dog 182012,cat 182013,ship 182014,bird 182015,bird 182016,truck 182017,truck 182018,airplane 182019,cat 182020,airplane 182021,ship 182022,cat 182023,truck 182024,truck 182025,ship 182026,ship 182027,dog 182028,airplane 182029,frog 182030,horse 182031,automobile 182032,cat 182033,deer 182034,frog 182035,ship 182036,ship 182037,ship 182038,cat 182039,airplane 182040,truck 182041,frog 182042,automobile 182043,cat 182044,bird 182045,horse 182046,cat 182047,dog 182048,cat 182049,frog 182050,dog 182051,airplane 182052,deer 182053,deer 182054,frog 182055,ship 182056,horse 182057,ship 182058,bird 182059,airplane 182060,bird 182061,horse 182062,deer 182063,horse 182064,dog 182065,deer 182066,cat 182067,bird 182068,airplane 182069,frog 182070,cat 182071,cat 182072,truck 182073,frog 182074,automobile 182075,horse 182076,airplane 182077,bird 182078,deer 182079,airplane 182080,airplane 182081,deer 182082,dog 182083,truck 182084,airplane 182085,horse 182086,frog 182087,cat 182088,ship 182089,dog 182090,airplane 182091,automobile 182092,frog 182093,ship 182094,deer 182095,dog 182096,dog 182097,dog 182098,deer 182099,truck 182100,cat 182101,cat 182102,airplane 182103,frog 182104,deer 182105,airplane 182106,cat 182107,deer 182108,ship 182109,frog 182110,automobile 182111,frog 182112,frog 182113,frog 182114,airplane 182115,bird 182116,airplane 182117,airplane 182118,deer 182119,cat 182120,dog 182121,cat 182122,ship 182123,truck 182124,deer 182125,bird 182126,frog 182127,airplane 182128,dog 182129,airplane 182130,automobile 182131,horse 182132,airplane 182133,cat 182134,bird 182135,deer 182136,dog 182137,automobile 182138,dog 182139,deer 182140,truck 182141,frog 182142,automobile 182143,cat 182144,cat 182145,frog 182146,truck 182147,dog 182148,cat 182149,horse 182150,horse 182151,deer 182152,horse 182153,automobile 182154,cat 182155,frog 182156,horse 182157,deer 182158,dog 182159,airplane 182160,ship 182161,airplane 182162,dog 182163,deer 182164,horse 182165,frog 182166,automobile 182167,frog 182168,horse 182169,horse 182170,bird 182171,deer 182172,airplane 182173,airplane 182174,truck 182175,frog 182176,cat 182177,automobile 182178,dog 182179,frog 182180,ship 182181,frog 182182,deer 182183,ship 182184,cat 182185,cat 182186,bird 182187,bird 182188,automobile 182189,deer 182190,frog 182191,airplane 182192,frog 182193,truck 182194,automobile 182195,bird 182196,cat 182197,deer 182198,dog 182199,ship 182200,airplane 182201,cat 182202,automobile 182203,cat 182204,horse 182205,frog 182206,horse 182207,frog 182208,cat 182209,deer 182210,horse 182211,dog 182212,cat 182213,automobile 182214,frog 182215,deer 182216,ship 182217,frog 182218,bird 182219,cat 182220,horse 182221,cat 182222,horse 182223,deer 182224,deer 182225,airplane 182226,horse 182227,truck 182228,horse 182229,ship 182230,bird 182231,airplane 182232,dog 182233,deer 182234,ship 182235,deer 182236,frog 182237,deer 182238,horse 182239,horse 182240,deer 182241,bird 182242,airplane 182243,deer 182244,airplane 182245,cat 182246,horse 182247,dog 182248,bird 182249,frog 182250,ship 182251,cat 182252,truck 182253,airplane 182254,bird 182255,bird 182256,cat 182257,bird 182258,cat 182259,ship 182260,dog 182261,deer 182262,dog 182263,automobile 182264,automobile 182265,truck 182266,cat 182267,airplane 182268,horse 182269,frog 182270,automobile 182271,deer 182272,deer 182273,bird 182274,automobile 182275,dog 182276,cat 182277,frog 182278,airplane 182279,deer 182280,dog 182281,deer 182282,frog 182283,deer 182284,cat 182285,bird 182286,frog 182287,deer 182288,frog 182289,deer 182290,ship 182291,cat 182292,bird 182293,cat 182294,horse 182295,truck 182296,airplane 182297,dog 182298,airplane 182299,deer 182300,automobile 182301,airplane 182302,dog 182303,deer 182304,deer 182305,frog 182306,horse 182307,dog 182308,horse 182309,automobile 182310,automobile 182311,airplane 182312,automobile 182313,bird 182314,dog 182315,frog 182316,deer 182317,dog 182318,truck 182319,cat 182320,bird 182321,truck 182322,deer 182323,dog 182324,dog 182325,cat 182326,horse 182327,horse 182328,bird 182329,frog 182330,truck 182331,deer 182332,horse 182333,frog 182334,truck 182335,bird 182336,frog 182337,deer 182338,dog 182339,frog 182340,frog 182341,bird 182342,truck 182343,bird 182344,truck 182345,frog 182346,ship 182347,airplane 182348,frog 182349,ship 182350,deer 182351,cat 182352,deer 182353,deer 182354,airplane 182355,deer 182356,cat 182357,cat 182358,cat 182359,deer 182360,ship 182361,truck 182362,cat 182363,dog 182364,airplane 182365,ship 182366,cat 182367,airplane 182368,deer 182369,truck 182370,dog 182371,deer 182372,truck 182373,truck 182374,frog 182375,deer 182376,dog 182377,cat 182378,truck 182379,airplane 182380,airplane 182381,frog 182382,airplane 182383,deer 182384,ship 182385,airplane 182386,automobile 182387,automobile 182388,deer 182389,airplane 182390,ship 182391,dog 182392,frog 182393,cat 182394,bird 182395,bird 182396,horse 182397,cat 182398,frog 182399,ship 182400,ship 182401,truck 182402,dog 182403,bird 182404,dog 182405,dog 182406,horse 182407,ship 182408,bird 182409,deer 182410,horse 182411,truck 182412,deer 182413,frog 182414,ship 182415,bird 182416,truck 182417,deer 182418,cat 182419,dog 182420,cat 182421,bird 182422,ship 182423,cat 182424,cat 182425,bird 182426,dog 182427,frog 182428,cat 182429,truck 182430,dog 182431,ship 182432,bird 182433,frog 182434,airplane 182435,automobile 182436,dog 182437,truck 182438,horse 182439,deer 182440,horse 182441,deer 182442,horse 182443,truck 182444,bird 182445,deer 182446,bird 182447,deer 182448,cat 182449,cat 182450,truck 182451,frog 182452,frog 182453,bird 182454,deer 182455,cat 182456,deer 182457,frog 182458,cat 182459,cat 182460,truck 182461,airplane 182462,frog 182463,dog 182464,dog 182465,cat 182466,frog 182467,automobile 182468,frog 182469,dog 182470,frog 182471,truck 182472,horse 182473,deer 182474,horse 182475,dog 182476,frog 182477,frog 182478,horse 182479,cat 182480,frog 182481,deer 182482,cat 182483,deer 182484,automobile 182485,bird 182486,cat 182487,truck 182488,airplane 182489,automobile 182490,automobile 182491,cat 182492,automobile 182493,cat 182494,airplane 182495,deer 182496,automobile 182497,truck 182498,frog 182499,deer 182500,truck 182501,deer 182502,cat 182503,dog 182504,truck 182505,truck 182506,bird 182507,ship 182508,frog 182509,dog 182510,horse 182511,cat 182512,frog 182513,ship 182514,frog 182515,truck 182516,frog 182517,frog 182518,dog 182519,cat 182520,horse 182521,truck 182522,horse 182523,horse 182524,cat 182525,deer 182526,truck 182527,ship 182528,cat 182529,bird 182530,frog 182531,frog 182532,deer 182533,dog 182534,cat 182535,airplane 182536,automobile 182537,cat 182538,deer 182539,horse 182540,horse 182541,horse 182542,horse 182543,frog 182544,ship 182545,dog 182546,ship 182547,ship 182548,cat 182549,bird 182550,dog 182551,frog 182552,bird 182553,cat 182554,automobile 182555,airplane 182556,dog 182557,truck 182558,automobile 182559,bird 182560,deer 182561,deer 182562,dog 182563,automobile 182564,frog 182565,frog 182566,frog 182567,horse 182568,cat 182569,airplane 182570,cat 182571,airplane 182572,truck 182573,frog 182574,truck 182575,bird 182576,horse 182577,cat 182578,dog 182579,cat 182580,truck 182581,deer 182582,automobile 182583,bird 182584,frog 182585,dog 182586,bird 182587,bird 182588,airplane 182589,frog 182590,ship 182591,ship 182592,bird 182593,cat 182594,cat 182595,airplane 182596,bird 182597,truck 182598,deer 182599,cat 182600,cat 182601,automobile 182602,truck 182603,truck 182604,deer 182605,dog 182606,frog 182607,deer 182608,deer 182609,horse 182610,airplane 182611,horse 182612,bird 182613,ship 182614,ship 182615,truck 182616,airplane 182617,airplane 182618,truck 182619,airplane 182620,cat 182621,bird 182622,automobile 182623,deer 182624,automobile 182625,airplane 182626,ship 182627,automobile 182628,horse 182629,dog 182630,cat 182631,airplane 182632,airplane 182633,bird 182634,cat 182635,truck 182636,deer 182637,bird 182638,ship 182639,ship 182640,frog 182641,cat 182642,ship 182643,ship 182644,airplane 182645,airplane 182646,truck 182647,bird 182648,ship 182649,dog 182650,horse 182651,dog 182652,ship 182653,ship 182654,bird 182655,cat 182656,truck 182657,truck 182658,truck 182659,truck 182660,dog 182661,truck 182662,ship 182663,truck 182664,bird 182665,cat 182666,frog 182667,truck 182668,frog 182669,truck 182670,automobile 182671,airplane 182672,bird 182673,deer 182674,bird 182675,horse 182676,cat 182677,dog 182678,deer 182679,automobile 182680,ship 182681,bird 182682,horse 182683,airplane 182684,horse 182685,truck 182686,airplane 182687,frog 182688,airplane 182689,deer 182690,horse 182691,truck 182692,cat 182693,automobile 182694,airplane 182695,dog 182696,ship 182697,deer 182698,deer 182699,deer 182700,automobile 182701,horse 182702,automobile 182703,deer 182704,frog 182705,ship 182706,bird 182707,truck 182708,bird 182709,deer 182710,automobile 182711,dog 182712,bird 182713,dog 182714,bird 182715,ship 182716,dog 182717,dog 182718,bird 182719,horse 182720,ship 182721,cat 182722,deer 182723,truck 182724,bird 182725,truck 182726,deer 182727,bird 182728,dog 182729,cat 182730,bird 182731,frog 182732,frog 182733,truck 182734,airplane 182735,deer 182736,bird 182737,dog 182738,dog 182739,cat 182740,cat 182741,deer 182742,bird 182743,deer 182744,airplane 182745,horse 182746,automobile 182747,ship 182748,horse 182749,truck 182750,horse 182751,ship 182752,deer 182753,frog 182754,cat 182755,truck 182756,cat 182757,cat 182758,ship 182759,truck 182760,deer 182761,horse 182762,deer 182763,bird 182764,cat 182765,frog 182766,cat 182767,frog 182768,deer 182769,deer 182770,deer 182771,truck 182772,deer 182773,frog 182774,automobile 182775,cat 182776,frog 182777,airplane 182778,horse 182779,cat 182780,horse 182781,cat 182782,airplane 182783,horse 182784,automobile 182785,ship 182786,airplane 182787,dog 182788,frog 182789,deer 182790,deer 182791,cat 182792,bird 182793,frog 182794,bird 182795,airplane 182796,cat 182797,frog 182798,airplane 182799,cat 182800,truck 182801,automobile 182802,ship 182803,truck 182804,horse 182805,airplane 182806,airplane 182807,deer 182808,frog 182809,deer 182810,bird 182811,deer 182812,horse 182813,truck 182814,airplane 182815,horse 182816,bird 182817,deer 182818,truck 182819,frog 182820,horse 182821,truck 182822,horse 182823,bird 182824,cat 182825,airplane 182826,cat 182827,deer 182828,bird 182829,deer 182830,deer 182831,bird 182832,automobile 182833,airplane 182834,frog 182835,truck 182836,horse 182837,ship 182838,automobile 182839,deer 182840,bird 182841,automobile 182842,deer 182843,horse 182844,cat 182845,cat 182846,frog 182847,bird 182848,frog 182849,frog 182850,cat 182851,cat 182852,cat 182853,dog 182854,deer 182855,airplane 182856,truck 182857,ship 182858,ship 182859,cat 182860,cat 182861,dog 182862,bird 182863,frog 182864,ship 182865,airplane 182866,frog 182867,dog 182868,dog 182869,cat 182870,deer 182871,truck 182872,cat 182873,bird 182874,deer 182875,cat 182876,cat 182877,cat 182878,horse 182879,automobile 182880,dog 182881,airplane 182882,automobile 182883,cat 182884,ship 182885,horse 182886,dog 182887,truck 182888,bird 182889,airplane 182890,ship 182891,dog 182892,bird 182893,cat 182894,deer 182895,ship 182896,truck 182897,cat 182898,bird 182899,dog 182900,bird 182901,airplane 182902,automobile 182903,frog 182904,truck 182905,horse 182906,airplane 182907,airplane 182908,dog 182909,cat 182910,cat 182911,airplane 182912,bird 182913,deer 182914,ship 182915,airplane 182916,frog 182917,deer 182918,frog 182919,cat 182920,horse 182921,bird 182922,airplane 182923,horse 182924,dog 182925,horse 182926,automobile 182927,ship 182928,ship 182929,frog 182930,horse 182931,automobile 182932,dog 182933,frog 182934,bird 182935,cat 182936,truck 182937,ship 182938,cat 182939,dog 182940,dog 182941,cat 182942,cat 182943,frog 182944,deer 182945,horse 182946,dog 182947,bird 182948,automobile 182949,dog 182950,deer 182951,horse 182952,deer 182953,cat 182954,frog 182955,cat 182956,deer 182957,bird 182958,airplane 182959,truck 182960,horse 182961,cat 182962,deer 182963,cat 182964,cat 182965,frog 182966,airplane 182967,automobile 182968,frog 182969,frog 182970,frog 182971,truck 182972,deer 182973,deer 182974,automobile 182975,airplane 182976,automobile 182977,frog 182978,cat 182979,cat 182980,truck 182981,airplane 182982,frog 182983,cat 182984,deer 182985,cat 182986,ship 182987,dog 182988,cat 182989,dog 182990,frog 182991,automobile 182992,truck 182993,dog 182994,cat 182995,deer 182996,truck 182997,horse 182998,horse 182999,horse 183000,horse 183001,deer 183002,automobile 183003,deer 183004,ship 183005,cat 183006,frog 183007,cat 183008,deer 183009,automobile 183010,cat 183011,cat 183012,cat 183013,truck 183014,deer 183015,horse 183016,automobile 183017,deer 183018,bird 183019,deer 183020,cat 183021,deer 183022,cat 183023,dog 183024,truck 183025,horse 183026,dog 183027,bird 183028,frog 183029,automobile 183030,dog 183031,cat 183032,frog 183033,cat 183034,bird 183035,horse 183036,horse 183037,bird 183038,dog 183039,horse 183040,dog 183041,truck 183042,ship 183043,bird 183044,bird 183045,ship 183046,deer 183047,frog 183048,frog 183049,cat 183050,dog 183051,horse 183052,truck 183053,dog 183054,ship 183055,cat 183056,frog 183057,truck 183058,truck 183059,deer 183060,bird 183061,deer 183062,cat 183063,horse 183064,dog 183065,deer 183066,truck 183067,horse 183068,cat 183069,airplane 183070,deer 183071,cat 183072,ship 183073,deer 183074,deer 183075,ship 183076,automobile 183077,automobile 183078,frog 183079,truck 183080,deer 183081,frog 183082,horse 183083,bird 183084,dog 183085,cat 183086,horse 183087,deer 183088,frog 183089,horse 183090,dog 183091,truck 183092,automobile 183093,truck 183094,truck 183095,frog 183096,horse 183097,deer 183098,automobile 183099,airplane 183100,truck 183101,deer 183102,truck 183103,deer 183104,dog 183105,cat 183106,frog 183107,automobile 183108,truck 183109,cat 183110,bird 183111,dog 183112,frog 183113,deer 183114,deer 183115,ship 183116,ship 183117,deer 183118,deer 183119,airplane 183120,truck 183121,cat 183122,airplane 183123,horse 183124,automobile 183125,ship 183126,frog 183127,dog 183128,horse 183129,dog 183130,cat 183131,truck 183132,automobile 183133,horse 183134,deer 183135,horse 183136,ship 183137,deer 183138,frog 183139,dog 183140,truck 183141,frog 183142,cat 183143,truck 183144,dog 183145,dog 183146,ship 183147,frog 183148,ship 183149,bird 183150,deer 183151,cat 183152,bird 183153,horse 183154,bird 183155,deer 183156,cat 183157,cat 183158,truck 183159,ship 183160,horse 183161,dog 183162,cat 183163,truck 183164,cat 183165,frog 183166,dog 183167,ship 183168,frog 183169,frog 183170,truck 183171,automobile 183172,horse 183173,horse 183174,dog 183175,truck 183176,bird 183177,horse 183178,truck 183179,horse 183180,deer 183181,airplane 183182,airplane 183183,automobile 183184,horse 183185,frog 183186,truck 183187,cat 183188,automobile 183189,frog 183190,dog 183191,frog 183192,dog 183193,cat 183194,horse 183195,deer 183196,frog 183197,deer 183198,dog 183199,cat 183200,truck 183201,truck 183202,horse 183203,frog 183204,truck 183205,dog 183206,airplane 183207,truck 183208,cat 183209,frog 183210,horse 183211,frog 183212,ship 183213,bird 183214,deer 183215,frog 183216,automobile 183217,horse 183218,airplane 183219,deer 183220,bird 183221,horse 183222,airplane 183223,horse 183224,automobile 183225,frog 183226,frog 183227,automobile 183228,dog 183229,deer 183230,deer 183231,cat 183232,frog 183233,frog 183234,bird 183235,dog 183236,deer 183237,deer 183238,frog 183239,horse 183240,automobile 183241,deer 183242,deer 183243,dog 183244,truck 183245,truck 183246,ship 183247,airplane 183248,bird 183249,deer 183250,bird 183251,truck 183252,bird 183253,truck 183254,airplane 183255,frog 183256,ship 183257,dog 183258,horse 183259,deer 183260,frog 183261,frog 183262,cat 183263,horse 183264,frog 183265,truck 183266,bird 183267,deer 183268,deer 183269,bird 183270,ship 183271,horse 183272,ship 183273,ship 183274,automobile 183275,deer 183276,automobile 183277,cat 183278,frog 183279,dog 183280,dog 183281,frog 183282,truck 183283,dog 183284,ship 183285,automobile 183286,airplane 183287,truck 183288,cat 183289,bird 183290,automobile 183291,cat 183292,dog 183293,cat 183294,cat 183295,dog 183296,truck 183297,dog 183298,deer 183299,cat 183300,automobile 183301,cat 183302,truck 183303,automobile 183304,horse 183305,dog 183306,ship 183307,airplane 183308,truck 183309,horse 183310,dog 183311,cat 183312,frog 183313,cat 183314,airplane 183315,bird 183316,bird 183317,cat 183318,horse 183319,dog 183320,automobile 183321,frog 183322,airplane 183323,airplane 183324,truck 183325,truck 183326,automobile 183327,deer 183328,automobile 183329,cat 183330,airplane 183331,airplane 183332,horse 183333,frog 183334,truck 183335,truck 183336,ship 183337,automobile 183338,dog 183339,frog 183340,horse 183341,horse 183342,bird 183343,truck 183344,deer 183345,airplane 183346,truck 183347,truck 183348,frog 183349,deer 183350,truck 183351,frog 183352,horse 183353,bird 183354,airplane 183355,truck 183356,dog 183357,bird 183358,truck 183359,bird 183360,horse 183361,frog 183362,dog 183363,truck 183364,dog 183365,bird 183366,automobile 183367,bird 183368,airplane 183369,cat 183370,automobile 183371,frog 183372,dog 183373,bird 183374,horse 183375,cat 183376,deer 183377,deer 183378,automobile 183379,truck 183380,truck 183381,bird 183382,airplane 183383,horse 183384,deer 183385,dog 183386,airplane 183387,dog 183388,airplane 183389,bird 183390,frog 183391,deer 183392,horse 183393,cat 183394,deer 183395,bird 183396,frog 183397,ship 183398,automobile 183399,cat 183400,horse 183401,ship 183402,airplane 183403,ship 183404,truck 183405,ship 183406,cat 183407,airplane 183408,cat 183409,bird 183410,horse 183411,ship 183412,automobile 183413,bird 183414,truck 183415,horse 183416,airplane 183417,ship 183418,ship 183419,bird 183420,truck 183421,deer 183422,frog 183423,airplane 183424,automobile 183425,airplane 183426,automobile 183427,automobile 183428,airplane 183429,horse 183430,dog 183431,horse 183432,deer 183433,cat 183434,airplane 183435,deer 183436,truck 183437,cat 183438,cat 183439,horse 183440,frog 183441,horse 183442,ship 183443,airplane 183444,cat 183445,airplane 183446,deer 183447,cat 183448,truck 183449,truck 183450,cat 183451,deer 183452,deer 183453,ship 183454,deer 183455,automobile 183456,dog 183457,deer 183458,deer 183459,truck 183460,truck 183461,cat 183462,deer 183463,dog 183464,deer 183465,cat 183466,dog 183467,frog 183468,bird 183469,bird 183470,frog 183471,truck 183472,automobile 183473,ship 183474,cat 183475,cat 183476,dog 183477,deer 183478,ship 183479,ship 183480,deer 183481,airplane 183482,cat 183483,cat 183484,bird 183485,airplane 183486,ship 183487,deer 183488,dog 183489,dog 183490,horse 183491,dog 183492,bird 183493,truck 183494,airplane 183495,truck 183496,frog 183497,horse 183498,ship 183499,cat 183500,deer 183501,ship 183502,ship 183503,dog 183504,frog 183505,automobile 183506,truck 183507,dog 183508,airplane 183509,bird 183510,frog 183511,truck 183512,deer 183513,deer 183514,truck 183515,bird 183516,deer 183517,deer 183518,bird 183519,airplane 183520,airplane 183521,dog 183522,airplane 183523,cat 183524,truck 183525,cat 183526,bird 183527,cat 183528,cat 183529,deer 183530,deer 183531,airplane 183532,deer 183533,frog 183534,truck 183535,cat 183536,frog 183537,automobile 183538,horse 183539,deer 183540,truck 183541,cat 183542,cat 183543,horse 183544,dog 183545,ship 183546,frog 183547,deer 183548,deer 183549,dog 183550,bird 183551,dog 183552,truck 183553,dog 183554,bird 183555,deer 183556,airplane 183557,ship 183558,horse 183559,airplane 183560,airplane 183561,deer 183562,horse 183563,airplane 183564,cat 183565,airplane 183566,deer 183567,bird 183568,cat 183569,truck 183570,bird 183571,horse 183572,airplane 183573,ship 183574,deer 183575,truck 183576,automobile 183577,truck 183578,bird 183579,cat 183580,frog 183581,ship 183582,airplane 183583,frog 183584,dog 183585,ship 183586,dog 183587,frog 183588,cat 183589,deer 183590,ship 183591,bird 183592,cat 183593,bird 183594,bird 183595,bird 183596,cat 183597,airplane 183598,horse 183599,cat 183600,ship 183601,horse 183602,truck 183603,airplane 183604,deer 183605,horse 183606,truck 183607,airplane 183608,automobile 183609,deer 183610,ship 183611,horse 183612,cat 183613,bird 183614,cat 183615,horse 183616,automobile 183617,frog 183618,deer 183619,cat 183620,horse 183621,truck 183622,deer 183623,airplane 183624,dog 183625,bird 183626,cat 183627,deer 183628,frog 183629,truck 183630,dog 183631,ship 183632,deer 183633,airplane 183634,horse 183635,bird 183636,frog 183637,deer 183638,frog 183639,frog 183640,dog 183641,horse 183642,ship 183643,deer 183644,automobile 183645,cat 183646,cat 183647,truck 183648,truck 183649,ship 183650,frog 183651,cat 183652,truck 183653,deer 183654,dog 183655,frog 183656,bird 183657,horse 183658,cat 183659,horse 183660,frog 183661,frog 183662,bird 183663,automobile 183664,cat 183665,bird 183666,frog 183667,dog 183668,dog 183669,horse 183670,dog 183671,cat 183672,cat 183673,frog 183674,ship 183675,frog 183676,horse 183677,cat 183678,deer 183679,airplane 183680,deer 183681,deer 183682,dog 183683,horse 183684,automobile 183685,dog 183686,ship 183687,cat 183688,airplane 183689,horse 183690,dog 183691,bird 183692,deer 183693,automobile 183694,airplane 183695,frog 183696,dog 183697,airplane 183698,cat 183699,bird 183700,dog 183701,horse 183702,ship 183703,frog 183704,cat 183705,bird 183706,frog 183707,deer 183708,truck 183709,frog 183710,deer 183711,ship 183712,airplane 183713,cat 183714,bird 183715,bird 183716,cat 183717,deer 183718,dog 183719,cat 183720,frog 183721,ship 183722,cat 183723,ship 183724,dog 183725,truck 183726,horse 183727,ship 183728,bird 183729,frog 183730,truck 183731,horse 183732,airplane 183733,dog 183734,frog 183735,bird 183736,bird 183737,airplane 183738,horse 183739,deer 183740,cat 183741,horse 183742,truck 183743,airplane 183744,airplane 183745,ship 183746,deer 183747,automobile 183748,dog 183749,ship 183750,automobile 183751,horse 183752,deer 183753,frog 183754,ship 183755,bird 183756,airplane 183757,deer 183758,airplane 183759,ship 183760,frog 183761,horse 183762,automobile 183763,dog 183764,bird 183765,airplane 183766,truck 183767,frog 183768,bird 183769,frog 183770,cat 183771,ship 183772,deer 183773,frog 183774,frog 183775,frog 183776,horse 183777,automobile 183778,bird 183779,horse 183780,automobile 183781,bird 183782,dog 183783,deer 183784,cat 183785,truck 183786,horse 183787,automobile 183788,automobile 183789,automobile 183790,bird 183791,bird 183792,bird 183793,ship 183794,frog 183795,bird 183796,cat 183797,truck 183798,bird 183799,automobile 183800,frog 183801,deer 183802,truck 183803,deer 183804,deer 183805,automobile 183806,horse 183807,frog 183808,truck 183809,dog 183810,cat 183811,airplane 183812,truck 183813,automobile 183814,cat 183815,dog 183816,deer 183817,truck 183818,cat 183819,deer 183820,airplane 183821,bird 183822,dog 183823,cat 183824,dog 183825,truck 183826,dog 183827,frog 183828,automobile 183829,bird 183830,dog 183831,airplane 183832,frog 183833,deer 183834,ship 183835,horse 183836,automobile 183837,dog 183838,dog 183839,dog 183840,airplane 183841,truck 183842,ship 183843,horse 183844,dog 183845,dog 183846,dog 183847,dog 183848,airplane 183849,bird 183850,ship 183851,airplane 183852,automobile 183853,horse 183854,deer 183855,airplane 183856,bird 183857,automobile 183858,bird 183859,ship 183860,ship 183861,frog 183862,bird 183863,ship 183864,truck 183865,frog 183866,ship 183867,cat 183868,ship 183869,truck 183870,airplane 183871,airplane 183872,frog 183873,horse 183874,deer 183875,truck 183876,automobile 183877,cat 183878,deer 183879,cat 183880,ship 183881,truck 183882,bird 183883,cat 183884,horse 183885,airplane 183886,dog 183887,automobile 183888,deer 183889,deer 183890,frog 183891,automobile 183892,horse 183893,automobile 183894,dog 183895,ship 183896,deer 183897,ship 183898,cat 183899,deer 183900,automobile 183901,frog 183902,bird 183903,dog 183904,automobile 183905,deer 183906,ship 183907,frog 183908,truck 183909,bird 183910,horse 183911,deer 183912,truck 183913,horse 183914,dog 183915,horse 183916,deer 183917,deer 183918,cat 183919,cat 183920,dog 183921,ship 183922,cat 183923,deer 183924,cat 183925,truck 183926,airplane 183927,ship 183928,deer 183929,horse 183930,horse 183931,horse 183932,cat 183933,ship 183934,deer 183935,horse 183936,horse 183937,frog 183938,cat 183939,dog 183940,frog 183941,automobile 183942,frog 183943,dog 183944,bird 183945,airplane 183946,dog 183947,deer 183948,airplane 183949,bird 183950,deer 183951,deer 183952,cat 183953,deer 183954,cat 183955,dog 183956,ship 183957,cat 183958,cat 183959,bird 183960,frog 183961,ship 183962,frog 183963,deer 183964,airplane 183965,bird 183966,dog 183967,frog 183968,dog 183969,deer 183970,dog 183971,horse 183972,bird 183973,deer 183974,truck 183975,deer 183976,ship 183977,deer 183978,cat 183979,airplane 183980,airplane 183981,automobile 183982,frog 183983,cat 183984,bird 183985,frog 183986,automobile 183987,deer 183988,deer 183989,deer 183990,frog 183991,bird 183992,truck 183993,bird 183994,dog 183995,ship 183996,truck 183997,ship 183998,deer 183999,horse 184000,dog 184001,frog 184002,bird 184003,truck 184004,bird 184005,deer 184006,deer 184007,ship 184008,airplane 184009,ship 184010,deer 184011,horse 184012,dog 184013,bird 184014,dog 184015,ship 184016,truck 184017,bird 184018,dog 184019,cat 184020,ship 184021,truck 184022,airplane 184023,deer 184024,dog 184025,frog 184026,cat 184027,automobile 184028,bird 184029,dog 184030,bird 184031,deer 184032,cat 184033,cat 184034,horse 184035,frog 184036,cat 184037,bird 184038,cat 184039,dog 184040,deer 184041,horse 184042,airplane 184043,automobile 184044,dog 184045,ship 184046,airplane 184047,bird 184048,cat 184049,horse 184050,automobile 184051,frog 184052,horse 184053,automobile 184054,cat 184055,truck 184056,ship 184057,dog 184058,automobile 184059,dog 184060,ship 184061,truck 184062,cat 184063,dog 184064,deer 184065,horse 184066,dog 184067,horse 184068,frog 184069,deer 184070,ship 184071,dog 184072,ship 184073,cat 184074,deer 184075,frog 184076,deer 184077,bird 184078,deer 184079,cat 184080,dog 184081,deer 184082,automobile 184083,frog 184084,cat 184085,airplane 184086,dog 184087,cat 184088,horse 184089,horse 184090,horse 184091,automobile 184092,bird 184093,deer 184094,airplane 184095,truck 184096,truck 184097,ship 184098,automobile 184099,deer 184100,dog 184101,automobile 184102,horse 184103,bird 184104,truck 184105,bird 184106,dog 184107,truck 184108,truck 184109,cat 184110,truck 184111,horse 184112,deer 184113,airplane 184114,cat 184115,cat 184116,cat 184117,deer 184118,airplane 184119,airplane 184120,deer 184121,deer 184122,airplane 184123,ship 184124,ship 184125,cat 184126,automobile 184127,airplane 184128,horse 184129,dog 184130,deer 184131,dog 184132,deer 184133,horse 184134,cat 184135,dog 184136,bird 184137,truck 184138,airplane 184139,deer 184140,bird 184141,deer 184142,frog 184143,dog 184144,truck 184145,dog 184146,frog 184147,airplane 184148,ship 184149,deer 184150,cat 184151,cat 184152,dog 184153,bird 184154,airplane 184155,cat 184156,horse 184157,deer 184158,automobile 184159,frog 184160,ship 184161,frog 184162,frog 184163,horse 184164,airplane 184165,truck 184166,ship 184167,automobile 184168,cat 184169,airplane 184170,horse 184171,airplane 184172,frog 184173,deer 184174,airplane 184175,cat 184176,truck 184177,truck 184178,horse 184179,frog 184180,truck 184181,ship 184182,frog 184183,deer 184184,frog 184185,truck 184186,deer 184187,cat 184188,truck 184189,ship 184190,deer 184191,automobile 184192,frog 184193,truck 184194,frog 184195,automobile 184196,deer 184197,ship 184198,bird 184199,dog 184200,dog 184201,cat 184202,bird 184203,cat 184204,frog 184205,deer 184206,ship 184207,frog 184208,dog 184209,truck 184210,deer 184211,deer 184212,ship 184213,dog 184214,cat 184215,truck 184216,bird 184217,ship 184218,dog 184219,frog 184220,airplane 184221,truck 184222,deer 184223,truck 184224,ship 184225,frog 184226,deer 184227,truck 184228,deer 184229,airplane 184230,ship 184231,airplane 184232,bird 184233,deer 184234,airplane 184235,deer 184236,deer 184237,airplane 184238,dog 184239,cat 184240,truck 184241,horse 184242,airplane 184243,deer 184244,cat 184245,bird 184246,automobile 184247,horse 184248,truck 184249,ship 184250,frog 184251,bird 184252,horse 184253,cat 184254,deer 184255,automobile 184256,truck 184257,automobile 184258,deer 184259,horse 184260,cat 184261,airplane 184262,bird 184263,ship 184264,automobile 184265,deer 184266,cat 184267,cat 184268,dog 184269,ship 184270,frog 184271,dog 184272,horse 184273,truck 184274,horse 184275,cat 184276,automobile 184277,deer 184278,dog 184279,airplane 184280,dog 184281,truck 184282,cat 184283,ship 184284,cat 184285,horse 184286,automobile 184287,frog 184288,cat 184289,automobile 184290,truck 184291,horse 184292,bird 184293,dog 184294,ship 184295,airplane 184296,truck 184297,truck 184298,horse 184299,truck 184300,horse 184301,horse 184302,bird 184303,frog 184304,ship 184305,dog 184306,airplane 184307,truck 184308,ship 184309,automobile 184310,bird 184311,deer 184312,cat 184313,ship 184314,deer 184315,truck 184316,deer 184317,airplane 184318,airplane 184319,deer 184320,bird 184321,dog 184322,frog 184323,deer 184324,truck 184325,frog 184326,ship 184327,frog 184328,truck 184329,deer 184330,bird 184331,deer 184332,dog 184333,horse 184334,horse 184335,bird 184336,truck 184337,automobile 184338,truck 184339,ship 184340,automobile 184341,deer 184342,bird 184343,deer 184344,airplane 184345,cat 184346,truck 184347,frog 184348,frog 184349,ship 184350,truck 184351,cat 184352,airplane 184353,horse 184354,dog 184355,frog 184356,ship 184357,ship 184358,ship 184359,truck 184360,frog 184361,automobile 184362,airplane 184363,frog 184364,truck 184365,truck 184366,horse 184367,dog 184368,airplane 184369,truck 184370,truck 184371,ship 184372,dog 184373,ship 184374,ship 184375,bird 184376,horse 184377,dog 184378,horse 184379,truck 184380,truck 184381,truck 184382,truck 184383,truck 184384,cat 184385,automobile 184386,deer 184387,automobile 184388,dog 184389,automobile 184390,airplane 184391,airplane 184392,automobile 184393,cat 184394,horse 184395,automobile 184396,dog 184397,airplane 184398,cat 184399,ship 184400,cat 184401,bird 184402,horse 184403,airplane 184404,deer 184405,truck 184406,cat 184407,ship 184408,cat 184409,horse 184410,frog 184411,bird 184412,cat 184413,truck 184414,deer 184415,bird 184416,dog 184417,horse 184418,frog 184419,ship 184420,horse 184421,deer 184422,horse 184423,airplane 184424,bird 184425,bird 184426,horse 184427,deer 184428,cat 184429,cat 184430,airplane 184431,dog 184432,bird 184433,airplane 184434,frog 184435,airplane 184436,cat 184437,cat 184438,horse 184439,bird 184440,cat 184441,automobile 184442,deer 184443,ship 184444,horse 184445,ship 184446,dog 184447,automobile 184448,frog 184449,frog 184450,horse 184451,airplane 184452,horse 184453,deer 184454,bird 184455,automobile 184456,truck 184457,automobile 184458,bird 184459,deer 184460,cat 184461,airplane 184462,bird 184463,horse 184464,ship 184465,deer 184466,horse 184467,ship 184468,deer 184469,deer 184470,frog 184471,deer 184472,deer 184473,cat 184474,frog 184475,dog 184476,automobile 184477,horse 184478,cat 184479,deer 184480,cat 184481,dog 184482,dog 184483,horse 184484,cat 184485,cat 184486,deer 184487,cat 184488,dog 184489,deer 184490,frog 184491,ship 184492,cat 184493,horse 184494,frog 184495,horse 184496,deer 184497,horse 184498,frog 184499,ship 184500,deer 184501,dog 184502,deer 184503,horse 184504,dog 184505,airplane 184506,frog 184507,cat 184508,airplane 184509,bird 184510,horse 184511,dog 184512,dog 184513,cat 184514,truck 184515,truck 184516,frog 184517,truck 184518,ship 184519,automobile 184520,ship 184521,dog 184522,frog 184523,bird 184524,horse 184525,ship 184526,truck 184527,airplane 184528,truck 184529,cat 184530,horse 184531,truck 184532,deer 184533,horse 184534,horse 184535,truck 184536,cat 184537,truck 184538,truck 184539,airplane 184540,deer 184541,cat 184542,cat 184543,bird 184544,dog 184545,cat 184546,deer 184547,cat 184548,cat 184549,dog 184550,deer 184551,cat 184552,deer 184553,airplane 184554,ship 184555,truck 184556,airplane 184557,cat 184558,horse 184559,cat 184560,deer 184561,automobile 184562,cat 184563,truck 184564,dog 184565,horse 184566,deer 184567,frog 184568,dog 184569,dog 184570,frog 184571,ship 184572,frog 184573,truck 184574,cat 184575,truck 184576,ship 184577,dog 184578,dog 184579,truck 184580,deer 184581,deer 184582,deer 184583,frog 184584,bird 184585,automobile 184586,cat 184587,deer 184588,airplane 184589,automobile 184590,frog 184591,automobile 184592,bird 184593,cat 184594,automobile 184595,cat 184596,horse 184597,horse 184598,dog 184599,ship 184600,deer 184601,horse 184602,cat 184603,automobile 184604,dog 184605,cat 184606,ship 184607,truck 184608,deer 184609,cat 184610,frog 184611,frog 184612,dog 184613,cat 184614,deer 184615,cat 184616,ship 184617,ship 184618,airplane 184619,horse 184620,deer 184621,ship 184622,airplane 184623,dog 184624,bird 184625,truck 184626,ship 184627,dog 184628,cat 184629,horse 184630,deer 184631,deer 184632,cat 184633,ship 184634,dog 184635,cat 184636,frog 184637,airplane 184638,airplane 184639,frog 184640,cat 184641,bird 184642,frog 184643,truck 184644,automobile 184645,truck 184646,horse 184647,cat 184648,airplane 184649,cat 184650,cat 184651,dog 184652,automobile 184653,bird 184654,cat 184655,airplane 184656,horse 184657,bird 184658,cat 184659,ship 184660,dog 184661,cat 184662,horse 184663,automobile 184664,automobile 184665,deer 184666,deer 184667,frog 184668,cat 184669,horse 184670,cat 184671,ship 184672,cat 184673,frog 184674,bird 184675,dog 184676,horse 184677,cat 184678,bird 184679,truck 184680,dog 184681,horse 184682,cat 184683,airplane 184684,deer 184685,ship 184686,horse 184687,truck 184688,ship 184689,bird 184690,dog 184691,cat 184692,horse 184693,dog 184694,airplane 184695,deer 184696,cat 184697,truck 184698,cat 184699,dog 184700,horse 184701,automobile 184702,frog 184703,bird 184704,horse 184705,horse 184706,dog 184707,airplane 184708,cat 184709,cat 184710,cat 184711,horse 184712,deer 184713,horse 184714,truck 184715,truck 184716,automobile 184717,dog 184718,automobile 184719,horse 184720,truck 184721,frog 184722,ship 184723,automobile 184724,cat 184725,airplane 184726,ship 184727,deer 184728,airplane 184729,deer 184730,cat 184731,ship 184732,horse 184733,ship 184734,airplane 184735,deer 184736,dog 184737,dog 184738,ship 184739,dog 184740,deer 184741,deer 184742,dog 184743,deer 184744,frog 184745,airplane 184746,horse 184747,deer 184748,deer 184749,airplane 184750,horse 184751,airplane 184752,horse 184753,automobile 184754,bird 184755,dog 184756,bird 184757,bird 184758,airplane 184759,dog 184760,automobile 184761,truck 184762,truck 184763,ship 184764,ship 184765,dog 184766,truck 184767,dog 184768,deer 184769,airplane 184770,airplane 184771,truck 184772,horse 184773,airplane 184774,dog 184775,cat 184776,frog 184777,cat 184778,frog 184779,dog 184780,truck 184781,cat 184782,truck 184783,automobile 184784,bird 184785,bird 184786,horse 184787,truck 184788,frog 184789,bird 184790,ship 184791,automobile 184792,ship 184793,bird 184794,truck 184795,horse 184796,cat 184797,dog 184798,dog 184799,cat 184800,frog 184801,cat 184802,automobile 184803,dog 184804,deer 184805,airplane 184806,automobile 184807,truck 184808,cat 184809,airplane 184810,automobile 184811,horse 184812,dog 184813,automobile 184814,airplane 184815,cat 184816,deer 184817,airplane 184818,frog 184819,ship 184820,automobile 184821,automobile 184822,cat 184823,horse 184824,cat 184825,deer 184826,airplane 184827,airplane 184828,cat 184829,bird 184830,deer 184831,frog 184832,truck 184833,airplane 184834,deer 184835,deer 184836,cat 184837,truck 184838,truck 184839,bird 184840,ship 184841,bird 184842,deer 184843,deer 184844,ship 184845,horse 184846,bird 184847,horse 184848,dog 184849,ship 184850,deer 184851,frog 184852,deer 184853,cat 184854,deer 184855,frog 184856,dog 184857,dog 184858,ship 184859,airplane 184860,dog 184861,truck 184862,cat 184863,deer 184864,truck 184865,frog 184866,bird 184867,automobile 184868,airplane 184869,frog 184870,cat 184871,bird 184872,ship 184873,horse 184874,dog 184875,deer 184876,dog 184877,airplane 184878,bird 184879,frog 184880,horse 184881,cat 184882,frog 184883,airplane 184884,frog 184885,ship 184886,truck 184887,deer 184888,automobile 184889,deer 184890,truck 184891,frog 184892,ship 184893,deer 184894,truck 184895,ship 184896,bird 184897,cat 184898,frog 184899,bird 184900,truck 184901,dog 184902,ship 184903,dog 184904,horse 184905,horse 184906,deer 184907,cat 184908,deer 184909,dog 184910,deer 184911,horse 184912,deer 184913,ship 184914,airplane 184915,truck 184916,ship 184917,frog 184918,horse 184919,cat 184920,frog 184921,deer 184922,deer 184923,bird 184924,deer 184925,horse 184926,cat 184927,truck 184928,automobile 184929,deer 184930,airplane 184931,ship 184932,bird 184933,truck 184934,automobile 184935,automobile 184936,horse 184937,deer 184938,ship 184939,airplane 184940,airplane 184941,deer 184942,cat 184943,frog 184944,deer 184945,deer 184946,deer 184947,dog 184948,cat 184949,dog 184950,truck 184951,bird 184952,cat 184953,horse 184954,dog 184955,airplane 184956,automobile 184957,bird 184958,ship 184959,cat 184960,horse 184961,truck 184962,deer 184963,frog 184964,airplane 184965,frog 184966,bird 184967,deer 184968,airplane 184969,bird 184970,frog 184971,horse 184972,truck 184973,dog 184974,truck 184975,bird 184976,truck 184977,deer 184978,deer 184979,deer 184980,ship 184981,horse 184982,cat 184983,frog 184984,dog 184985,truck 184986,dog 184987,deer 184988,airplane 184989,bird 184990,horse 184991,airplane 184992,truck 184993,airplane 184994,ship 184995,cat 184996,frog 184997,automobile 184998,deer 184999,truck 185000,deer 185001,horse 185002,dog 185003,horse 185004,frog 185005,automobile 185006,truck 185007,automobile 185008,frog 185009,frog 185010,ship 185011,deer 185012,cat 185013,deer 185014,cat 185015,frog 185016,airplane 185017,cat 185018,deer 185019,dog 185020,truck 185021,horse 185022,bird 185023,dog 185024,horse 185025,truck 185026,airplane 185027,cat 185028,airplane 185029,cat 185030,truck 185031,horse 185032,horse 185033,deer 185034,cat 185035,cat 185036,frog 185037,deer 185038,automobile 185039,truck 185040,automobile 185041,frog 185042,frog 185043,horse 185044,cat 185045,horse 185046,ship 185047,deer 185048,deer 185049,cat 185050,horse 185051,automobile 185052,automobile 185053,cat 185054,deer 185055,frog 185056,truck 185057,frog 185058,horse 185059,bird 185060,frog 185061,deer 185062,bird 185063,bird 185064,frog 185065,dog 185066,deer 185067,horse 185068,truck 185069,deer 185070,frog 185071,bird 185072,bird 185073,deer 185074,deer 185075,horse 185076,dog 185077,airplane 185078,deer 185079,truck 185080,cat 185081,automobile 185082,truck 185083,truck 185084,ship 185085,airplane 185086,dog 185087,deer 185088,bird 185089,truck 185090,deer 185091,horse 185092,automobile 185093,bird 185094,frog 185095,deer 185096,deer 185097,truck 185098,bird 185099,deer 185100,deer 185101,airplane 185102,deer 185103,truck 185104,truck 185105,horse 185106,horse 185107,ship 185108,truck 185109,airplane 185110,deer 185111,airplane 185112,bird 185113,airplane 185114,frog 185115,deer 185116,cat 185117,dog 185118,cat 185119,cat 185120,horse 185121,automobile 185122,truck 185123,dog 185124,cat 185125,horse 185126,ship 185127,airplane 185128,truck 185129,bird 185130,airplane 185131,deer 185132,airplane 185133,dog 185134,dog 185135,ship 185136,airplane 185137,deer 185138,airplane 185139,frog 185140,deer 185141,truck 185142,dog 185143,airplane 185144,automobile 185145,horse 185146,truck 185147,bird 185148,frog 185149,frog 185150,airplane 185151,truck 185152,automobile 185153,ship 185154,ship 185155,bird 185156,cat 185157,dog 185158,deer 185159,truck 185160,truck 185161,dog 185162,airplane 185163,cat 185164,deer 185165,deer 185166,ship 185167,cat 185168,dog 185169,cat 185170,bird 185171,horse 185172,cat 185173,automobile 185174,bird 185175,truck 185176,frog 185177,dog 185178,frog 185179,dog 185180,horse 185181,horse 185182,deer 185183,horse 185184,bird 185185,bird 185186,deer 185187,horse 185188,dog 185189,truck 185190,deer 185191,frog 185192,dog 185193,ship 185194,dog 185195,deer 185196,horse 185197,deer 185198,automobile 185199,dog 185200,automobile 185201,airplane 185202,deer 185203,horse 185204,frog 185205,airplane 185206,deer 185207,truck 185208,automobile 185209,airplane 185210,bird 185211,cat 185212,truck 185213,deer 185214,airplane 185215,deer 185216,cat 185217,bird 185218,dog 185219,airplane 185220,dog 185221,truck 185222,frog 185223,automobile 185224,truck 185225,airplane 185226,bird 185227,automobile 185228,truck 185229,dog 185230,dog 185231,horse 185232,horse 185233,frog 185234,bird 185235,ship 185236,deer 185237,ship 185238,deer 185239,ship 185240,dog 185241,dog 185242,truck 185243,frog 185244,bird 185245,dog 185246,ship 185247,frog 185248,ship 185249,airplane 185250,horse 185251,cat 185252,ship 185253,deer 185254,cat 185255,deer 185256,cat 185257,ship 185258,automobile 185259,deer 185260,truck 185261,horse 185262,frog 185263,bird 185264,deer 185265,deer 185266,ship 185267,dog 185268,deer 185269,frog 185270,horse 185271,deer 185272,bird 185273,truck 185274,cat 185275,deer 185276,dog 185277,truck 185278,ship 185279,frog 185280,airplane 185281,ship 185282,truck 185283,bird 185284,frog 185285,frog 185286,automobile 185287,cat 185288,bird 185289,deer 185290,cat 185291,dog 185292,airplane 185293,frog 185294,ship 185295,bird 185296,cat 185297,ship 185298,frog 185299,ship 185300,truck 185301,dog 185302,cat 185303,cat 185304,deer 185305,horse 185306,dog 185307,cat 185308,cat 185309,deer 185310,automobile 185311,truck 185312,deer 185313,airplane 185314,horse 185315,truck 185316,bird 185317,bird 185318,bird 185319,horse 185320,airplane 185321,dog 185322,truck 185323,horse 185324,bird 185325,frog 185326,bird 185327,airplane 185328,bird 185329,automobile 185330,cat 185331,cat 185332,deer 185333,frog 185334,automobile 185335,deer 185336,frog 185337,dog 185338,bird 185339,dog 185340,airplane 185341,truck 185342,cat 185343,deer 185344,deer 185345,horse 185346,deer 185347,bird 185348,dog 185349,cat 185350,truck 185351,deer 185352,ship 185353,frog 185354,ship 185355,airplane 185356,ship 185357,cat 185358,dog 185359,dog 185360,frog 185361,frog 185362,deer 185363,deer 185364,cat 185365,horse 185366,automobile 185367,cat 185368,dog 185369,horse 185370,horse 185371,truck 185372,dog 185373,ship 185374,dog 185375,frog 185376,ship 185377,cat 185378,dog 185379,automobile 185380,cat 185381,ship 185382,truck 185383,horse 185384,horse 185385,cat 185386,cat 185387,dog 185388,deer 185389,deer 185390,frog 185391,ship 185392,ship 185393,frog 185394,ship 185395,truck 185396,deer 185397,deer 185398,deer 185399,cat 185400,horse 185401,truck 185402,cat 185403,truck 185404,frog 185405,ship 185406,bird 185407,truck 185408,airplane 185409,cat 185410,horse 185411,airplane 185412,deer 185413,horse 185414,ship 185415,dog 185416,horse 185417,deer 185418,truck 185419,bird 185420,dog 185421,frog 185422,deer 185423,bird 185424,ship 185425,bird 185426,airplane 185427,horse 185428,horse 185429,cat 185430,airplane 185431,airplane 185432,dog 185433,horse 185434,bird 185435,bird 185436,airplane 185437,ship 185438,cat 185439,truck 185440,deer 185441,dog 185442,bird 185443,horse 185444,frog 185445,horse 185446,truck 185447,airplane 185448,bird 185449,ship 185450,dog 185451,horse 185452,ship 185453,airplane 185454,automobile 185455,deer 185456,horse 185457,cat 185458,truck 185459,bird 185460,cat 185461,cat 185462,cat 185463,horse 185464,automobile 185465,deer 185466,bird 185467,airplane 185468,airplane 185469,deer 185470,truck 185471,dog 185472,deer 185473,automobile 185474,horse 185475,truck 185476,bird 185477,cat 185478,horse 185479,cat 185480,horse 185481,cat 185482,airplane 185483,bird 185484,ship 185485,bird 185486,frog 185487,frog 185488,automobile 185489,ship 185490,dog 185491,dog 185492,bird 185493,automobile 185494,airplane 185495,truck 185496,bird 185497,ship 185498,airplane 185499,deer 185500,frog 185501,ship 185502,automobile 185503,dog 185504,dog 185505,frog 185506,cat 185507,frog 185508,deer 185509,dog 185510,ship 185511,bird 185512,dog 185513,horse 185514,bird 185515,airplane 185516,horse 185517,ship 185518,deer 185519,frog 185520,ship 185521,cat 185522,deer 185523,frog 185524,truck 185525,truck 185526,horse 185527,horse 185528,cat 185529,horse 185530,truck 185531,automobile 185532,bird 185533,dog 185534,dog 185535,airplane 185536,deer 185537,automobile 185538,ship 185539,truck 185540,airplane 185541,cat 185542,airplane 185543,truck 185544,cat 185545,cat 185546,horse 185547,deer 185548,ship 185549,automobile 185550,airplane 185551,truck 185552,deer 185553,bird 185554,truck 185555,cat 185556,horse 185557,deer 185558,frog 185559,frog 185560,horse 185561,cat 185562,bird 185563,automobile 185564,cat 185565,cat 185566,deer 185567,deer 185568,bird 185569,automobile 185570,automobile 185571,bird 185572,truck 185573,bird 185574,dog 185575,horse 185576,cat 185577,truck 185578,airplane 185579,airplane 185580,airplane 185581,ship 185582,cat 185583,cat 185584,truck 185585,cat 185586,ship 185587,frog 185588,automobile 185589,frog 185590,dog 185591,cat 185592,cat 185593,dog 185594,cat 185595,automobile 185596,dog 185597,cat 185598,truck 185599,cat 185600,bird 185601,frog 185602,cat 185603,dog 185604,deer 185605,automobile 185606,horse 185607,frog 185608,truck 185609,horse 185610,ship 185611,automobile 185612,automobile 185613,bird 185614,truck 185615,deer 185616,truck 185617,horse 185618,automobile 185619,dog 185620,frog 185621,airplane 185622,bird 185623,airplane 185624,cat 185625,frog 185626,airplane 185627,cat 185628,dog 185629,cat 185630,deer 185631,frog 185632,deer 185633,cat 185634,deer 185635,airplane 185636,frog 185637,automobile 185638,cat 185639,horse 185640,deer 185641,truck 185642,frog 185643,frog 185644,dog 185645,cat 185646,deer 185647,horse 185648,cat 185649,airplane 185650,automobile 185651,ship 185652,deer 185653,dog 185654,ship 185655,frog 185656,horse 185657,truck 185658,frog 185659,horse 185660,cat 185661,ship 185662,automobile 185663,frog 185664,frog 185665,ship 185666,bird 185667,ship 185668,airplane 185669,cat 185670,frog 185671,deer 185672,deer 185673,deer 185674,airplane 185675,dog 185676,bird 185677,deer 185678,ship 185679,dog 185680,bird 185681,horse 185682,dog 185683,airplane 185684,cat 185685,airplane 185686,bird 185687,frog 185688,frog 185689,frog 185690,frog 185691,frog 185692,horse 185693,ship 185694,horse 185695,dog 185696,automobile 185697,cat 185698,cat 185699,frog 185700,frog 185701,dog 185702,truck 185703,deer 185704,ship 185705,cat 185706,frog 185707,truck 185708,cat 185709,truck 185710,horse 185711,bird 185712,ship 185713,deer 185714,automobile 185715,truck 185716,frog 185717,horse 185718,deer 185719,bird 185720,deer 185721,airplane 185722,cat 185723,ship 185724,truck 185725,airplane 185726,cat 185727,dog 185728,automobile 185729,airplane 185730,cat 185731,automobile 185732,frog 185733,deer 185734,dog 185735,horse 185736,frog 185737,frog 185738,cat 185739,airplane 185740,deer 185741,horse 185742,deer 185743,airplane 185744,frog 185745,dog 185746,deer 185747,frog 185748,horse 185749,deer 185750,ship 185751,truck 185752,truck 185753,bird 185754,horse 185755,frog 185756,deer 185757,frog 185758,ship 185759,cat 185760,deer 185761,frog 185762,dog 185763,truck 185764,truck 185765,bird 185766,airplane 185767,bird 185768,ship 185769,truck 185770,horse 185771,dog 185772,horse 185773,deer 185774,frog 185775,cat 185776,cat 185777,cat 185778,dog 185779,horse 185780,ship 185781,horse 185782,dog 185783,cat 185784,frog 185785,dog 185786,airplane 185787,ship 185788,cat 185789,automobile 185790,bird 185791,horse 185792,horse 185793,horse 185794,deer 185795,dog 185796,ship 185797,dog 185798,airplane 185799,airplane 185800,cat 185801,bird 185802,horse 185803,dog 185804,frog 185805,ship 185806,frog 185807,horse 185808,frog 185809,deer 185810,cat 185811,airplane 185812,automobile 185813,cat 185814,frog 185815,horse 185816,deer 185817,cat 185818,deer 185819,ship 185820,horse 185821,cat 185822,truck 185823,dog 185824,airplane 185825,cat 185826,dog 185827,automobile 185828,ship 185829,ship 185830,ship 185831,ship 185832,deer 185833,airplane 185834,dog 185835,dog 185836,truck 185837,dog 185838,frog 185839,bird 185840,cat 185841,ship 185842,cat 185843,airplane 185844,frog 185845,dog 185846,truck 185847,truck 185848,frog 185849,dog 185850,horse 185851,bird 185852,dog 185853,frog 185854,bird 185855,deer 185856,ship 185857,bird 185858,ship 185859,horse 185860,dog 185861,truck 185862,dog 185863,deer 185864,dog 185865,bird 185866,truck 185867,ship 185868,dog 185869,dog 185870,cat 185871,horse 185872,ship 185873,dog 185874,ship 185875,ship 185876,cat 185877,deer 185878,truck 185879,frog 185880,ship 185881,frog 185882,ship 185883,deer 185884,airplane 185885,cat 185886,horse 185887,dog 185888,cat 185889,ship 185890,frog 185891,airplane 185892,ship 185893,horse 185894,frog 185895,ship 185896,automobile 185897,automobile 185898,frog 185899,cat 185900,horse 185901,truck 185902,dog 185903,truck 185904,truck 185905,truck 185906,dog 185907,automobile 185908,deer 185909,dog 185910,dog 185911,automobile 185912,airplane 185913,truck 185914,bird 185915,deer 185916,truck 185917,dog 185918,airplane 185919,frog 185920,bird 185921,dog 185922,cat 185923,deer 185924,cat 185925,truck 185926,airplane 185927,ship 185928,bird 185929,horse 185930,deer 185931,deer 185932,dog 185933,dog 185934,cat 185935,airplane 185936,automobile 185937,horse 185938,frog 185939,cat 185940,truck 185941,horse 185942,cat 185943,horse 185944,deer 185945,truck 185946,deer 185947,bird 185948,dog 185949,horse 185950,ship 185951,frog 185952,deer 185953,dog 185954,deer 185955,deer 185956,horse 185957,dog 185958,horse 185959,frog 185960,ship 185961,bird 185962,dog 185963,ship 185964,airplane 185965,airplane 185966,ship 185967,bird 185968,airplane 185969,deer 185970,automobile 185971,deer 185972,truck 185973,deer 185974,bird 185975,deer 185976,airplane 185977,bird 185978,airplane 185979,truck 185980,cat 185981,frog 185982,truck 185983,airplane 185984,dog 185985,automobile 185986,truck 185987,automobile 185988,frog 185989,bird 185990,airplane 185991,deer 185992,ship 185993,bird 185994,horse 185995,automobile 185996,dog 185997,bird 185998,dog 185999,deer 186000,truck 186001,dog 186002,deer 186003,horse 186004,frog 186005,automobile 186006,frog 186007,cat 186008,cat 186009,truck 186010,airplane 186011,cat 186012,frog 186013,dog 186014,horse 186015,frog 186016,cat 186017,dog 186018,truck 186019,airplane 186020,horse 186021,truck 186022,frog 186023,frog 186024,automobile 186025,dog 186026,ship 186027,frog 186028,deer 186029,cat 186030,dog 186031,airplane 186032,frog 186033,ship 186034,horse 186035,airplane 186036,deer 186037,ship 186038,cat 186039,frog 186040,cat 186041,bird 186042,dog 186043,deer 186044,dog 186045,horse 186046,frog 186047,automobile 186048,horse 186049,frog 186050,cat 186051,ship 186052,deer 186053,airplane 186054,frog 186055,cat 186056,truck 186057,dog 186058,dog 186059,cat 186060,bird 186061,horse 186062,automobile 186063,cat 186064,bird 186065,deer 186066,deer 186067,bird 186068,deer 186069,deer 186070,ship 186071,horse 186072,airplane 186073,airplane 186074,deer 186075,airplane 186076,cat 186077,automobile 186078,cat 186079,frog 186080,bird 186081,horse 186082,cat 186083,ship 186084,bird 186085,frog 186086,cat 186087,cat 186088,frog 186089,frog 186090,frog 186091,cat 186092,deer 186093,dog 186094,horse 186095,cat 186096,frog 186097,frog 186098,bird 186099,automobile 186100,dog 186101,bird 186102,ship 186103,frog 186104,ship 186105,horse 186106,automobile 186107,dog 186108,truck 186109,ship 186110,deer 186111,airplane 186112,horse 186113,deer 186114,horse 186115,cat 186116,horse 186117,cat 186118,frog 186119,automobile 186120,dog 186121,deer 186122,horse 186123,automobile 186124,frog 186125,ship 186126,automobile 186127,ship 186128,automobile 186129,cat 186130,automobile 186131,bird 186132,deer 186133,horse 186134,horse 186135,cat 186136,airplane 186137,deer 186138,truck 186139,bird 186140,deer 186141,ship 186142,ship 186143,truck 186144,bird 186145,ship 186146,horse 186147,deer 186148,automobile 186149,horse 186150,deer 186151,airplane 186152,automobile 186153,ship 186154,horse 186155,truck 186156,ship 186157,airplane 186158,dog 186159,airplane 186160,bird 186161,cat 186162,truck 186163,bird 186164,truck 186165,bird 186166,cat 186167,dog 186168,cat 186169,automobile 186170,airplane 186171,airplane 186172,dog 186173,horse 186174,cat 186175,frog 186176,bird 186177,truck 186178,horse 186179,dog 186180,deer 186181,truck 186182,horse 186183,frog 186184,deer 186185,truck 186186,bird 186187,horse 186188,deer 186189,truck 186190,bird 186191,airplane 186192,automobile 186193,airplane 186194,deer 186195,frog 186196,airplane 186197,frog 186198,bird 186199,deer 186200,truck 186201,dog 186202,horse 186203,deer 186204,deer 186205,cat 186206,airplane 186207,deer 186208,truck 186209,deer 186210,horse 186211,bird 186212,truck 186213,cat 186214,cat 186215,horse 186216,dog 186217,deer 186218,airplane 186219,cat 186220,frog 186221,frog 186222,deer 186223,automobile 186224,bird 186225,deer 186226,ship 186227,dog 186228,cat 186229,ship 186230,truck 186231,deer 186232,airplane 186233,automobile 186234,dog 186235,bird 186236,horse 186237,bird 186238,ship 186239,frog 186240,deer 186241,dog 186242,cat 186243,ship 186244,airplane 186245,horse 186246,deer 186247,cat 186248,cat 186249,automobile 186250,airplane 186251,horse 186252,horse 186253,dog 186254,frog 186255,horse 186256,bird 186257,frog 186258,ship 186259,truck 186260,horse 186261,airplane 186262,deer 186263,frog 186264,cat 186265,airplane 186266,ship 186267,bird 186268,truck 186269,ship 186270,airplane 186271,frog 186272,frog 186273,cat 186274,dog 186275,ship 186276,airplane 186277,truck 186278,airplane 186279,deer 186280,frog 186281,truck 186282,deer 186283,cat 186284,horse 186285,horse 186286,ship 186287,airplane 186288,deer 186289,deer 186290,bird 186291,deer 186292,frog 186293,bird 186294,frog 186295,horse 186296,cat 186297,automobile 186298,automobile 186299,airplane 186300,ship 186301,airplane 186302,automobile 186303,airplane 186304,cat 186305,frog 186306,truck 186307,frog 186308,ship 186309,truck 186310,automobile 186311,cat 186312,truck 186313,ship 186314,truck 186315,horse 186316,truck 186317,truck 186318,bird 186319,ship 186320,horse 186321,cat 186322,deer 186323,frog 186324,deer 186325,deer 186326,truck 186327,ship 186328,airplane 186329,horse 186330,frog 186331,deer 186332,cat 186333,automobile 186334,dog 186335,deer 186336,deer 186337,horse 186338,deer 186339,dog 186340,dog 186341,airplane 186342,truck 186343,deer 186344,horse 186345,truck 186346,deer 186347,deer 186348,horse 186349,cat 186350,ship 186351,airplane 186352,automobile 186353,airplane 186354,dog 186355,horse 186356,deer 186357,airplane 186358,horse 186359,truck 186360,horse 186361,truck 186362,dog 186363,airplane 186364,frog 186365,deer 186366,deer 186367,airplane 186368,frog 186369,dog 186370,horse 186371,frog 186372,automobile 186373,deer 186374,cat 186375,ship 186376,horse 186377,airplane 186378,truck 186379,truck 186380,bird 186381,dog 186382,airplane 186383,dog 186384,dog 186385,horse 186386,frog 186387,cat 186388,deer 186389,automobile 186390,bird 186391,ship 186392,airplane 186393,automobile 186394,bird 186395,automobile 186396,airplane 186397,deer 186398,cat 186399,ship 186400,bird 186401,automobile 186402,airplane 186403,frog 186404,horse 186405,bird 186406,deer 186407,cat 186408,airplane 186409,truck 186410,automobile 186411,ship 186412,ship 186413,horse 186414,horse 186415,deer 186416,truck 186417,truck 186418,airplane 186419,bird 186420,cat 186421,bird 186422,horse 186423,deer 186424,dog 186425,frog 186426,cat 186427,dog 186428,ship 186429,ship 186430,cat 186431,cat 186432,frog 186433,ship 186434,airplane 186435,frog 186436,cat 186437,horse 186438,deer 186439,automobile 186440,deer 186441,ship 186442,deer 186443,ship 186444,cat 186445,horse 186446,automobile 186447,airplane 186448,deer 186449,cat 186450,truck 186451,truck 186452,frog 186453,deer 186454,truck 186455,deer 186456,deer 186457,airplane 186458,frog 186459,airplane 186460,automobile 186461,bird 186462,cat 186463,truck 186464,cat 186465,airplane 186466,airplane 186467,ship 186468,ship 186469,cat 186470,truck 186471,ship 186472,deer 186473,cat 186474,cat 186475,deer 186476,ship 186477,airplane 186478,frog 186479,cat 186480,bird 186481,dog 186482,cat 186483,frog 186484,horse 186485,deer 186486,automobile 186487,truck 186488,cat 186489,deer 186490,cat 186491,frog 186492,deer 186493,horse 186494,frog 186495,cat 186496,dog 186497,horse 186498,deer 186499,dog 186500,horse 186501,horse 186502,automobile 186503,dog 186504,deer 186505,dog 186506,ship 186507,airplane 186508,deer 186509,deer 186510,truck 186511,ship 186512,airplane 186513,deer 186514,truck 186515,truck 186516,cat 186517,ship 186518,cat 186519,truck 186520,cat 186521,horse 186522,deer 186523,horse 186524,cat 186525,deer 186526,automobile 186527,deer 186528,truck 186529,frog 186530,airplane 186531,ship 186532,deer 186533,deer 186534,airplane 186535,cat 186536,deer 186537,automobile 186538,ship 186539,automobile 186540,ship 186541,ship 186542,airplane 186543,deer 186544,truck 186545,bird 186546,ship 186547,ship 186548,truck 186549,bird 186550,dog 186551,deer 186552,truck 186553,dog 186554,truck 186555,airplane 186556,horse 186557,ship 186558,automobile 186559,airplane 186560,dog 186561,bird 186562,frog 186563,automobile 186564,bird 186565,horse 186566,bird 186567,dog 186568,truck 186569,horse 186570,frog 186571,dog 186572,automobile 186573,deer 186574,airplane 186575,airplane 186576,automobile 186577,airplane 186578,deer 186579,airplane 186580,horse 186581,cat 186582,dog 186583,deer 186584,truck 186585,frog 186586,cat 186587,deer 186588,automobile 186589,frog 186590,dog 186591,horse 186592,dog 186593,ship 186594,automobile 186595,frog 186596,airplane 186597,cat 186598,airplane 186599,horse 186600,bird 186601,deer 186602,bird 186603,horse 186604,frog 186605,automobile 186606,truck 186607,deer 186608,bird 186609,frog 186610,ship 186611,deer 186612,truck 186613,airplane 186614,frog 186615,frog 186616,dog 186617,deer 186618,frog 186619,horse 186620,deer 186621,bird 186622,horse 186623,bird 186624,truck 186625,frog 186626,dog 186627,horse 186628,deer 186629,horse 186630,automobile 186631,deer 186632,frog 186633,deer 186634,horse 186635,deer 186636,frog 186637,horse 186638,frog 186639,airplane 186640,horse 186641,truck 186642,horse 186643,cat 186644,ship 186645,deer 186646,cat 186647,bird 186648,ship 186649,cat 186650,frog 186651,frog 186652,dog 186653,ship 186654,frog 186655,truck 186656,deer 186657,ship 186658,deer 186659,ship 186660,automobile 186661,truck 186662,automobile 186663,dog 186664,horse 186665,truck 186666,frog 186667,frog 186668,truck 186669,automobile 186670,truck 186671,airplane 186672,airplane 186673,horse 186674,automobile 186675,airplane 186676,frog 186677,frog 186678,frog 186679,truck 186680,ship 186681,dog 186682,frog 186683,dog 186684,deer 186685,cat 186686,airplane 186687,airplane 186688,ship 186689,frog 186690,truck 186691,dog 186692,horse 186693,dog 186694,automobile 186695,bird 186696,dog 186697,frog 186698,horse 186699,cat 186700,cat 186701,airplane 186702,deer 186703,cat 186704,cat 186705,ship 186706,automobile 186707,frog 186708,airplane 186709,frog 186710,airplane 186711,deer 186712,ship 186713,truck 186714,airplane 186715,cat 186716,deer 186717,frog 186718,truck 186719,horse 186720,horse 186721,deer 186722,frog 186723,cat 186724,deer 186725,bird 186726,frog 186727,truck 186728,dog 186729,bird 186730,airplane 186731,cat 186732,horse 186733,frog 186734,dog 186735,cat 186736,ship 186737,frog 186738,dog 186739,ship 186740,deer 186741,dog 186742,deer 186743,automobile 186744,airplane 186745,truck 186746,ship 186747,cat 186748,bird 186749,automobile 186750,dog 186751,deer 186752,bird 186753,ship 186754,horse 186755,dog 186756,truck 186757,airplane 186758,horse 186759,bird 186760,ship 186761,deer 186762,automobile 186763,dog 186764,airplane 186765,truck 186766,horse 186767,automobile 186768,dog 186769,truck 186770,bird 186771,frog 186772,airplane 186773,airplane 186774,dog 186775,horse 186776,horse 186777,horse 186778,dog 186779,dog 186780,frog 186781,airplane 186782,automobile 186783,truck 186784,deer 186785,dog 186786,automobile 186787,frog 186788,cat 186789,dog 186790,bird 186791,horse 186792,bird 186793,bird 186794,truck 186795,truck 186796,frog 186797,deer 186798,cat 186799,horse 186800,deer 186801,horse 186802,cat 186803,deer 186804,bird 186805,horse 186806,deer 186807,dog 186808,automobile 186809,ship 186810,dog 186811,horse 186812,truck 186813,horse 186814,horse 186815,dog 186816,deer 186817,dog 186818,automobile 186819,cat 186820,bird 186821,automobile 186822,horse 186823,deer 186824,cat 186825,frog 186826,ship 186827,cat 186828,cat 186829,ship 186830,airplane 186831,cat 186832,ship 186833,cat 186834,truck 186835,airplane 186836,horse 186837,truck 186838,airplane 186839,cat 186840,ship 186841,automobile 186842,dog 186843,deer 186844,airplane 186845,truck 186846,automobile 186847,bird 186848,truck 186849,truck 186850,truck 186851,automobile 186852,cat 186853,truck 186854,dog 186855,deer 186856,dog 186857,frog 186858,airplane 186859,deer 186860,automobile 186861,cat 186862,dog 186863,dog 186864,cat 186865,bird 186866,truck 186867,ship 186868,horse 186869,airplane 186870,airplane 186871,automobile 186872,truck 186873,ship 186874,deer 186875,truck 186876,deer 186877,frog 186878,airplane 186879,truck 186880,horse 186881,airplane 186882,truck 186883,truck 186884,frog 186885,dog 186886,cat 186887,frog 186888,deer 186889,automobile 186890,truck 186891,dog 186892,ship 186893,truck 186894,airplane 186895,automobile 186896,horse 186897,deer 186898,truck 186899,cat 186900,cat 186901,truck 186902,airplane 186903,ship 186904,horse 186905,cat 186906,truck 186907,frog 186908,horse 186909,cat 186910,horse 186911,cat 186912,automobile 186913,cat 186914,frog 186915,ship 186916,truck 186917,deer 186918,truck 186919,ship 186920,cat 186921,ship 186922,bird 186923,deer 186924,dog 186925,deer 186926,deer 186927,airplane 186928,frog 186929,deer 186930,bird 186931,frog 186932,bird 186933,horse 186934,frog 186935,horse 186936,horse 186937,ship 186938,deer 186939,truck 186940,truck 186941,truck 186942,cat 186943,deer 186944,ship 186945,horse 186946,dog 186947,cat 186948,horse 186949,deer 186950,airplane 186951,dog 186952,frog 186953,airplane 186954,dog 186955,horse 186956,horse 186957,horse 186958,ship 186959,deer 186960,dog 186961,dog 186962,cat 186963,bird 186964,truck 186965,dog 186966,airplane 186967,truck 186968,truck 186969,cat 186970,truck 186971,deer 186972,ship 186973,truck 186974,airplane 186975,deer 186976,frog 186977,cat 186978,frog 186979,airplane 186980,cat 186981,cat 186982,cat 186983,deer 186984,cat 186985,truck 186986,cat 186987,truck 186988,automobile 186989,frog 186990,deer 186991,ship 186992,ship 186993,deer 186994,cat 186995,frog 186996,bird 186997,truck 186998,airplane 186999,dog 187000,bird 187001,horse 187002,truck 187003,cat 187004,airplane 187005,automobile 187006,ship 187007,cat 187008,truck 187009,airplane 187010,airplane 187011,airplane 187012,automobile 187013,cat 187014,horse 187015,ship 187016,ship 187017,horse 187018,dog 187019,horse 187020,airplane 187021,bird 187022,airplane 187023,ship 187024,cat 187025,airplane 187026,dog 187027,airplane 187028,ship 187029,deer 187030,truck 187031,cat 187032,cat 187033,ship 187034,bird 187035,cat 187036,automobile 187037,automobile 187038,frog 187039,bird 187040,airplane 187041,truck 187042,cat 187043,ship 187044,ship 187045,truck 187046,horse 187047,automobile 187048,horse 187049,truck 187050,horse 187051,frog 187052,automobile 187053,bird 187054,frog 187055,deer 187056,dog 187057,automobile 187058,horse 187059,horse 187060,bird 187061,ship 187062,cat 187063,bird 187064,horse 187065,cat 187066,cat 187067,deer 187068,ship 187069,cat 187070,cat 187071,deer 187072,airplane 187073,frog 187074,bird 187075,dog 187076,cat 187077,ship 187078,deer 187079,dog 187080,automobile 187081,bird 187082,truck 187083,cat 187084,truck 187085,airplane 187086,ship 187087,ship 187088,ship 187089,bird 187090,cat 187091,deer 187092,ship 187093,truck 187094,airplane 187095,horse 187096,bird 187097,truck 187098,truck 187099,frog 187100,horse 187101,truck 187102,truck 187103,dog 187104,automobile 187105,cat 187106,truck 187107,truck 187108,bird 187109,bird 187110,deer 187111,airplane 187112,automobile 187113,horse 187114,horse 187115,dog 187116,cat 187117,bird 187118,airplane 187119,deer 187120,deer 187121,bird 187122,cat 187123,bird 187124,horse 187125,dog 187126,cat 187127,frog 187128,deer 187129,cat 187130,deer 187131,bird 187132,horse 187133,cat 187134,cat 187135,dog 187136,deer 187137,airplane 187138,truck 187139,frog 187140,deer 187141,deer 187142,cat 187143,bird 187144,deer 187145,frog 187146,truck 187147,ship 187148,bird 187149,bird 187150,frog 187151,airplane 187152,frog 187153,horse 187154,ship 187155,horse 187156,deer 187157,dog 187158,deer 187159,deer 187160,airplane 187161,airplane 187162,deer 187163,deer 187164,horse 187165,horse 187166,dog 187167,ship 187168,ship 187169,truck 187170,deer 187171,dog 187172,cat 187173,frog 187174,ship 187175,cat 187176,truck 187177,cat 187178,cat 187179,truck 187180,frog 187181,deer 187182,cat 187183,deer 187184,bird 187185,cat 187186,dog 187187,deer 187188,frog 187189,deer 187190,cat 187191,frog 187192,automobile 187193,cat 187194,frog 187195,frog 187196,deer 187197,horse 187198,deer 187199,dog 187200,deer 187201,horse 187202,cat 187203,dog 187204,cat 187205,deer 187206,airplane 187207,automobile 187208,horse 187209,airplane 187210,airplane 187211,horse 187212,horse 187213,horse 187214,dog 187215,cat 187216,airplane 187217,bird 187218,truck 187219,bird 187220,horse 187221,truck 187222,deer 187223,cat 187224,airplane 187225,automobile 187226,dog 187227,dog 187228,automobile 187229,bird 187230,cat 187231,frog 187232,automobile 187233,automobile 187234,deer 187235,deer 187236,cat 187237,horse 187238,automobile 187239,truck 187240,cat 187241,cat 187242,cat 187243,horse 187244,dog 187245,frog 187246,deer 187247,automobile 187248,horse 187249,horse 187250,frog 187251,frog 187252,horse 187253,ship 187254,ship 187255,frog 187256,horse 187257,airplane 187258,deer 187259,dog 187260,horse 187261,deer 187262,deer 187263,horse 187264,automobile 187265,bird 187266,ship 187267,truck 187268,deer 187269,frog 187270,automobile 187271,airplane 187272,frog 187273,truck 187274,cat 187275,horse 187276,deer 187277,frog 187278,frog 187279,dog 187280,cat 187281,truck 187282,cat 187283,bird 187284,automobile 187285,horse 187286,automobile 187287,airplane 187288,deer 187289,dog 187290,frog 187291,deer 187292,dog 187293,deer 187294,truck 187295,dog 187296,cat 187297,truck 187298,bird 187299,deer 187300,deer 187301,bird 187302,dog 187303,dog 187304,horse 187305,ship 187306,horse 187307,dog 187308,airplane 187309,cat 187310,airplane 187311,frog 187312,truck 187313,frog 187314,deer 187315,ship 187316,frog 187317,ship 187318,truck 187319,ship 187320,airplane 187321,horse 187322,deer 187323,frog 187324,ship 187325,cat 187326,deer 187327,deer 187328,truck 187329,ship 187330,bird 187331,deer 187332,bird 187333,deer 187334,deer 187335,frog 187336,bird 187337,bird 187338,bird 187339,frog 187340,horse 187341,bird 187342,frog 187343,deer 187344,deer 187345,horse 187346,horse 187347,bird 187348,cat 187349,dog 187350,deer 187351,automobile 187352,horse 187353,airplane 187354,deer 187355,deer 187356,deer 187357,deer 187358,cat 187359,cat 187360,deer 187361,ship 187362,dog 187363,bird 187364,frog 187365,deer 187366,horse 187367,dog 187368,frog 187369,horse 187370,horse 187371,bird 187372,automobile 187373,dog 187374,ship 187375,automobile 187376,truck 187377,truck 187378,dog 187379,truck 187380,cat 187381,airplane 187382,deer 187383,frog 187384,frog 187385,airplane 187386,dog 187387,dog 187388,deer 187389,deer 187390,truck 187391,horse 187392,airplane 187393,frog 187394,bird 187395,horse 187396,truck 187397,dog 187398,frog 187399,ship 187400,deer 187401,truck 187402,dog 187403,truck 187404,dog 187405,ship 187406,cat 187407,cat 187408,ship 187409,cat 187410,deer 187411,frog 187412,bird 187413,deer 187414,automobile 187415,deer 187416,dog 187417,horse 187418,frog 187419,cat 187420,automobile 187421,bird 187422,ship 187423,bird 187424,horse 187425,ship 187426,ship 187427,truck 187428,cat 187429,truck 187430,deer 187431,frog 187432,dog 187433,cat 187434,horse 187435,airplane 187436,horse 187437,dog 187438,automobile 187439,deer 187440,frog 187441,ship 187442,ship 187443,deer 187444,ship 187445,horse 187446,cat 187447,bird 187448,cat 187449,dog 187450,frog 187451,deer 187452,horse 187453,ship 187454,truck 187455,cat 187456,automobile 187457,truck 187458,cat 187459,dog 187460,cat 187461,cat 187462,cat 187463,ship 187464,cat 187465,frog 187466,cat 187467,deer 187468,dog 187469,airplane 187470,horse 187471,automobile 187472,airplane 187473,ship 187474,deer 187475,frog 187476,deer 187477,deer 187478,ship 187479,airplane 187480,frog 187481,dog 187482,bird 187483,frog 187484,deer 187485,deer 187486,ship 187487,automobile 187488,automobile 187489,deer 187490,cat 187491,horse 187492,truck 187493,bird 187494,bird 187495,horse 187496,deer 187497,horse 187498,truck 187499,automobile 187500,automobile 187501,frog 187502,cat 187503,ship 187504,airplane 187505,horse 187506,airplane 187507,airplane 187508,horse 187509,deer 187510,airplane 187511,cat 187512,airplane 187513,frog 187514,truck 187515,deer 187516,cat 187517,bird 187518,deer 187519,dog 187520,automobile 187521,cat 187522,deer 187523,horse 187524,truck 187525,airplane 187526,truck 187527,truck 187528,horse 187529,frog 187530,cat 187531,deer 187532,airplane 187533,bird 187534,cat 187535,bird 187536,airplane 187537,ship 187538,cat 187539,automobile 187540,cat 187541,frog 187542,horse 187543,dog 187544,dog 187545,ship 187546,cat 187547,cat 187548,dog 187549,ship 187550,frog 187551,cat 187552,bird 187553,horse 187554,truck 187555,deer 187556,horse 187557,automobile 187558,airplane 187559,deer 187560,cat 187561,airplane 187562,airplane 187563,deer 187564,cat 187565,deer 187566,frog 187567,frog 187568,deer 187569,cat 187570,deer 187571,truck 187572,deer 187573,bird 187574,bird 187575,horse 187576,airplane 187577,cat 187578,dog 187579,deer 187580,bird 187581,deer 187582,cat 187583,cat 187584,airplane 187585,dog 187586,bird 187587,deer 187588,horse 187589,bird 187590,frog 187591,cat 187592,deer 187593,automobile 187594,automobile 187595,horse 187596,truck 187597,deer 187598,bird 187599,airplane 187600,ship 187601,ship 187602,truck 187603,automobile 187604,cat 187605,ship 187606,deer 187607,frog 187608,truck 187609,deer 187610,horse 187611,bird 187612,dog 187613,bird 187614,frog 187615,deer 187616,horse 187617,bird 187618,dog 187619,airplane 187620,truck 187621,horse 187622,automobile 187623,bird 187624,deer 187625,airplane 187626,truck 187627,ship 187628,horse 187629,deer 187630,deer 187631,frog 187632,frog 187633,ship 187634,ship 187635,cat 187636,cat 187637,horse 187638,horse 187639,automobile 187640,cat 187641,dog 187642,bird 187643,frog 187644,dog 187645,cat 187646,deer 187647,frog 187648,automobile 187649,deer 187650,dog 187651,deer 187652,truck 187653,deer 187654,automobile 187655,frog 187656,dog 187657,bird 187658,truck 187659,ship 187660,cat 187661,automobile 187662,dog 187663,truck 187664,bird 187665,deer 187666,dog 187667,dog 187668,frog 187669,truck 187670,frog 187671,frog 187672,truck 187673,cat 187674,truck 187675,frog 187676,horse 187677,airplane 187678,cat 187679,truck 187680,cat 187681,cat 187682,dog 187683,deer 187684,bird 187685,bird 187686,deer 187687,cat 187688,bird 187689,cat 187690,horse 187691,dog 187692,frog 187693,horse 187694,frog 187695,truck 187696,horse 187697,bird 187698,bird 187699,airplane 187700,automobile 187701,ship 187702,truck 187703,dog 187704,dog 187705,ship 187706,horse 187707,airplane 187708,cat 187709,truck 187710,ship 187711,ship 187712,dog 187713,deer 187714,ship 187715,automobile 187716,frog 187717,frog 187718,dog 187719,truck 187720,frog 187721,horse 187722,horse 187723,ship 187724,deer 187725,airplane 187726,ship 187727,ship 187728,cat 187729,bird 187730,deer 187731,cat 187732,frog 187733,truck 187734,horse 187735,ship 187736,truck 187737,horse 187738,truck 187739,ship 187740,frog 187741,cat 187742,automobile 187743,ship 187744,airplane 187745,dog 187746,airplane 187747,truck 187748,deer 187749,horse 187750,deer 187751,cat 187752,deer 187753,horse 187754,automobile 187755,cat 187756,truck 187757,frog 187758,dog 187759,horse 187760,ship 187761,horse 187762,automobile 187763,bird 187764,dog 187765,airplane 187766,ship 187767,airplane 187768,dog 187769,truck 187770,cat 187771,ship 187772,deer 187773,airplane 187774,bird 187775,cat 187776,horse 187777,frog 187778,automobile 187779,deer 187780,bird 187781,bird 187782,truck 187783,horse 187784,ship 187785,cat 187786,airplane 187787,truck 187788,automobile 187789,cat 187790,truck 187791,automobile 187792,cat 187793,truck 187794,bird 187795,truck 187796,bird 187797,truck 187798,dog 187799,horse 187800,frog 187801,airplane 187802,cat 187803,dog 187804,ship 187805,bird 187806,deer 187807,cat 187808,ship 187809,truck 187810,automobile 187811,airplane 187812,cat 187813,dog 187814,cat 187815,truck 187816,automobile 187817,airplane 187818,automobile 187819,ship 187820,deer 187821,horse 187822,airplane 187823,bird 187824,cat 187825,dog 187826,ship 187827,cat 187828,dog 187829,horse 187830,horse 187831,automobile 187832,horse 187833,cat 187834,deer 187835,dog 187836,horse 187837,truck 187838,airplane 187839,horse 187840,deer 187841,airplane 187842,horse 187843,ship 187844,truck 187845,frog 187846,cat 187847,deer 187848,frog 187849,horse 187850,truck 187851,airplane 187852,frog 187853,bird 187854,horse 187855,truck 187856,bird 187857,dog 187858,dog 187859,frog 187860,dog 187861,frog 187862,cat 187863,bird 187864,horse 187865,truck 187866,bird 187867,deer 187868,airplane 187869,frog 187870,deer 187871,airplane 187872,dog 187873,deer 187874,horse 187875,airplane 187876,deer 187877,airplane 187878,frog 187879,airplane 187880,truck 187881,dog 187882,airplane 187883,frog 187884,frog 187885,airplane 187886,cat 187887,truck 187888,horse 187889,dog 187890,truck 187891,automobile 187892,automobile 187893,ship 187894,automobile 187895,dog 187896,truck 187897,horse 187898,airplane 187899,horse 187900,truck 187901,frog 187902,horse 187903,airplane 187904,cat 187905,horse 187906,ship 187907,frog 187908,cat 187909,deer 187910,ship 187911,truck 187912,cat 187913,cat 187914,horse 187915,truck 187916,truck 187917,airplane 187918,frog 187919,cat 187920,horse 187921,truck 187922,truck 187923,frog 187924,truck 187925,cat 187926,deer 187927,deer 187928,truck 187929,truck 187930,cat 187931,automobile 187932,cat 187933,ship 187934,horse 187935,ship 187936,truck 187937,truck 187938,horse 187939,truck 187940,cat 187941,cat 187942,cat 187943,automobile 187944,frog 187945,frog 187946,bird 187947,bird 187948,dog 187949,cat 187950,airplane 187951,frog 187952,truck 187953,cat 187954,truck 187955,automobile 187956,cat 187957,deer 187958,truck 187959,deer 187960,ship 187961,dog 187962,horse 187963,bird 187964,bird 187965,deer 187966,deer 187967,dog 187968,cat 187969,airplane 187970,airplane 187971,dog 187972,frog 187973,dog 187974,horse 187975,bird 187976,deer 187977,frog 187978,airplane 187979,ship 187980,bird 187981,frog 187982,dog 187983,cat 187984,dog 187985,cat 187986,ship 187987,cat 187988,automobile 187989,ship 187990,frog 187991,deer 187992,truck 187993,cat 187994,ship 187995,ship 187996,deer 187997,cat 187998,horse 187999,frog 188000,horse 188001,cat 188002,horse 188003,ship 188004,truck 188005,automobile 188006,frog 188007,automobile 188008,dog 188009,horse 188010,deer 188011,frog 188012,dog 188013,bird 188014,dog 188015,bird 188016,truck 188017,bird 188018,bird 188019,dog 188020,airplane 188021,ship 188022,deer 188023,truck 188024,dog 188025,ship 188026,cat 188027,bird 188028,horse 188029,truck 188030,deer 188031,frog 188032,cat 188033,deer 188034,deer 188035,ship 188036,truck 188037,frog 188038,truck 188039,dog 188040,dog 188041,airplane 188042,ship 188043,dog 188044,airplane 188045,horse 188046,horse 188047,deer 188048,deer 188049,truck 188050,cat 188051,ship 188052,airplane 188053,bird 188054,automobile 188055,cat 188056,dog 188057,cat 188058,bird 188059,deer 188060,automobile 188061,deer 188062,deer 188063,bird 188064,truck 188065,ship 188066,truck 188067,horse 188068,horse 188069,ship 188070,truck 188071,airplane 188072,deer 188073,horse 188074,airplane 188075,truck 188076,truck 188077,automobile 188078,bird 188079,frog 188080,cat 188081,frog 188082,automobile 188083,automobile 188084,airplane 188085,cat 188086,truck 188087,deer 188088,ship 188089,dog 188090,airplane 188091,deer 188092,cat 188093,bird 188094,airplane 188095,truck 188096,airplane 188097,bird 188098,cat 188099,cat 188100,horse 188101,truck 188102,automobile 188103,cat 188104,dog 188105,frog 188106,horse 188107,dog 188108,cat 188109,dog 188110,frog 188111,bird 188112,airplane 188113,truck 188114,bird 188115,deer 188116,automobile 188117,horse 188118,horse 188119,deer 188120,frog 188121,cat 188122,frog 188123,frog 188124,dog 188125,horse 188126,dog 188127,deer 188128,cat 188129,deer 188130,cat 188131,truck 188132,horse 188133,horse 188134,airplane 188135,bird 188136,truck 188137,ship 188138,deer 188139,airplane 188140,deer 188141,dog 188142,truck 188143,frog 188144,cat 188145,truck 188146,dog 188147,bird 188148,cat 188149,airplane 188150,cat 188151,deer 188152,horse 188153,frog 188154,cat 188155,ship 188156,horse 188157,frog 188158,dog 188159,automobile 188160,ship 188161,airplane 188162,dog 188163,truck 188164,frog 188165,deer 188166,horse 188167,truck 188168,ship 188169,automobile 188170,frog 188171,ship 188172,truck 188173,deer 188174,bird 188175,ship 188176,horse 188177,dog 188178,ship 188179,bird 188180,airplane 188181,horse 188182,horse 188183,cat 188184,cat 188185,horse 188186,airplane 188187,deer 188188,truck 188189,deer 188190,cat 188191,frog 188192,bird 188193,bird 188194,frog 188195,automobile 188196,deer 188197,dog 188198,cat 188199,deer 188200,ship 188201,deer 188202,ship 188203,dog 188204,deer 188205,deer 188206,cat 188207,cat 188208,deer 188209,automobile 188210,frog 188211,airplane 188212,bird 188213,cat 188214,dog 188215,frog 188216,horse 188217,airplane 188218,ship 188219,cat 188220,dog 188221,bird 188222,bird 188223,bird 188224,truck 188225,frog 188226,dog 188227,cat 188228,frog 188229,horse 188230,dog 188231,cat 188232,deer 188233,frog 188234,cat 188235,airplane 188236,automobile 188237,horse 188238,bird 188239,truck 188240,frog 188241,automobile 188242,automobile 188243,truck 188244,automobile 188245,deer 188246,deer 188247,automobile 188248,dog 188249,frog 188250,cat 188251,cat 188252,airplane 188253,deer 188254,dog 188255,cat 188256,automobile 188257,horse 188258,deer 188259,cat 188260,airplane 188261,deer 188262,deer 188263,dog 188264,horse 188265,deer 188266,airplane 188267,bird 188268,automobile 188269,dog 188270,dog 188271,deer 188272,bird 188273,horse 188274,airplane 188275,frog 188276,frog 188277,airplane 188278,truck 188279,horse 188280,ship 188281,bird 188282,horse 188283,truck 188284,cat 188285,ship 188286,horse 188287,cat 188288,truck 188289,bird 188290,dog 188291,bird 188292,frog 188293,bird 188294,frog 188295,ship 188296,frog 188297,deer 188298,frog 188299,dog 188300,ship 188301,frog 188302,dog 188303,deer 188304,dog 188305,dog 188306,bird 188307,ship 188308,bird 188309,ship 188310,horse 188311,cat 188312,cat 188313,automobile 188314,cat 188315,truck 188316,horse 188317,truck 188318,cat 188319,airplane 188320,frog 188321,frog 188322,deer 188323,ship 188324,airplane 188325,horse 188326,deer 188327,dog 188328,automobile 188329,dog 188330,deer 188331,truck 188332,cat 188333,frog 188334,dog 188335,horse 188336,frog 188337,airplane 188338,airplane 188339,cat 188340,bird 188341,dog 188342,deer 188343,frog 188344,truck 188345,frog 188346,truck 188347,truck 188348,truck 188349,bird 188350,bird 188351,airplane 188352,dog 188353,automobile 188354,ship 188355,deer 188356,bird 188357,deer 188358,truck 188359,deer 188360,horse 188361,ship 188362,dog 188363,horse 188364,dog 188365,deer 188366,automobile 188367,dog 188368,dog 188369,bird 188370,frog 188371,dog 188372,automobile 188373,truck 188374,deer 188375,deer 188376,automobile 188377,dog 188378,horse 188379,truck 188380,cat 188381,deer 188382,deer 188383,horse 188384,deer 188385,frog 188386,bird 188387,horse 188388,dog 188389,frog 188390,truck 188391,ship 188392,ship 188393,horse 188394,frog 188395,airplane 188396,truck 188397,deer 188398,truck 188399,frog 188400,deer 188401,dog 188402,ship 188403,cat 188404,ship 188405,truck 188406,cat 188407,ship 188408,automobile 188409,deer 188410,cat 188411,automobile 188412,horse 188413,horse 188414,frog 188415,automobile 188416,dog 188417,cat 188418,bird 188419,frog 188420,deer 188421,frog 188422,dog 188423,cat 188424,deer 188425,ship 188426,frog 188427,airplane 188428,dog 188429,bird 188430,airplane 188431,truck 188432,frog 188433,frog 188434,deer 188435,ship 188436,dog 188437,cat 188438,bird 188439,horse 188440,bird 188441,cat 188442,dog 188443,frog 188444,frog 188445,frog 188446,dog 188447,deer 188448,ship 188449,horse 188450,cat 188451,truck 188452,bird 188453,bird 188454,horse 188455,automobile 188456,deer 188457,deer 188458,dog 188459,cat 188460,ship 188461,airplane 188462,automobile 188463,cat 188464,truck 188465,cat 188466,dog 188467,automobile 188468,frog 188469,frog 188470,horse 188471,deer 188472,truck 188473,bird 188474,frog 188475,truck 188476,truck 188477,automobile 188478,truck 188479,horse 188480,truck 188481,cat 188482,truck 188483,cat 188484,ship 188485,horse 188486,truck 188487,deer 188488,truck 188489,dog 188490,deer 188491,dog 188492,ship 188493,horse 188494,frog 188495,airplane 188496,dog 188497,bird 188498,horse 188499,truck 188500,frog 188501,ship 188502,dog 188503,dog 188504,truck 188505,deer 188506,deer 188507,truck 188508,deer 188509,airplane 188510,deer 188511,deer 188512,bird 188513,automobile 188514,cat 188515,truck 188516,bird 188517,airplane 188518,automobile 188519,deer 188520,frog 188521,horse 188522,deer 188523,deer 188524,cat 188525,truck 188526,truck 188527,cat 188528,bird 188529,frog 188530,deer 188531,automobile 188532,truck 188533,dog 188534,dog 188535,deer 188536,airplane 188537,frog 188538,frog 188539,cat 188540,cat 188541,ship 188542,truck 188543,airplane 188544,automobile 188545,horse 188546,horse 188547,deer 188548,bird 188549,deer 188550,horse 188551,frog 188552,automobile 188553,deer 188554,deer 188555,automobile 188556,cat 188557,frog 188558,deer 188559,airplane 188560,bird 188561,dog 188562,airplane 188563,ship 188564,deer 188565,airplane 188566,deer 188567,airplane 188568,truck 188569,frog 188570,airplane 188571,frog 188572,horse 188573,cat 188574,horse 188575,dog 188576,deer 188577,frog 188578,horse 188579,frog 188580,automobile 188581,truck 188582,horse 188583,truck 188584,dog 188585,bird 188586,deer 188587,frog 188588,frog 188589,bird 188590,dog 188591,airplane 188592,dog 188593,ship 188594,truck 188595,frog 188596,automobile 188597,frog 188598,cat 188599,cat 188600,automobile 188601,deer 188602,ship 188603,automobile 188604,frog 188605,cat 188606,airplane 188607,horse 188608,ship 188609,dog 188610,frog 188611,deer 188612,deer 188613,horse 188614,deer 188615,truck 188616,ship 188617,bird 188618,ship 188619,horse 188620,airplane 188621,dog 188622,ship 188623,deer 188624,deer 188625,bird 188626,dog 188627,bird 188628,horse 188629,frog 188630,dog 188631,cat 188632,ship 188633,truck 188634,automobile 188635,dog 188636,truck 188637,automobile 188638,airplane 188639,frog 188640,airplane 188641,bird 188642,truck 188643,deer 188644,truck 188645,dog 188646,bird 188647,truck 188648,airplane 188649,automobile 188650,cat 188651,horse 188652,automobile 188653,dog 188654,truck 188655,frog 188656,deer 188657,cat 188658,cat 188659,cat 188660,cat 188661,deer 188662,airplane 188663,truck 188664,frog 188665,dog 188666,dog 188667,airplane 188668,truck 188669,deer 188670,deer 188671,deer 188672,automobile 188673,automobile 188674,bird 188675,ship 188676,horse 188677,ship 188678,cat 188679,automobile 188680,ship 188681,deer 188682,deer 188683,truck 188684,bird 188685,truck 188686,truck 188687,cat 188688,horse 188689,bird 188690,truck 188691,frog 188692,airplane 188693,horse 188694,ship 188695,dog 188696,bird 188697,horse 188698,frog 188699,bird 188700,horse 188701,horse 188702,airplane 188703,bird 188704,ship 188705,ship 188706,frog 188707,ship 188708,ship 188709,automobile 188710,dog 188711,truck 188712,deer 188713,bird 188714,frog 188715,frog 188716,horse 188717,airplane 188718,ship 188719,dog 188720,dog 188721,dog 188722,bird 188723,airplane 188724,truck 188725,automobile 188726,cat 188727,cat 188728,automobile 188729,dog 188730,truck 188731,truck 188732,frog 188733,cat 188734,deer 188735,dog 188736,horse 188737,ship 188738,airplane 188739,horse 188740,dog 188741,frog 188742,deer 188743,deer 188744,cat 188745,dog 188746,truck 188747,deer 188748,ship 188749,deer 188750,airplane 188751,horse 188752,horse 188753,automobile 188754,truck 188755,horse 188756,ship 188757,airplane 188758,truck 188759,airplane 188760,ship 188761,bird 188762,automobile 188763,cat 188764,cat 188765,truck 188766,deer 188767,deer 188768,automobile 188769,truck 188770,airplane 188771,deer 188772,horse 188773,automobile 188774,horse 188775,dog 188776,deer 188777,airplane 188778,airplane 188779,frog 188780,deer 188781,truck 188782,deer 188783,bird 188784,automobile 188785,frog 188786,horse 188787,frog 188788,horse 188789,airplane 188790,cat 188791,frog 188792,automobile 188793,truck 188794,deer 188795,airplane 188796,truck 188797,frog 188798,truck 188799,horse 188800,horse 188801,horse 188802,bird 188803,frog 188804,cat 188805,dog 188806,dog 188807,truck 188808,cat 188809,deer 188810,dog 188811,airplane 188812,dog 188813,bird 188814,deer 188815,cat 188816,horse 188817,horse 188818,airplane 188819,airplane 188820,deer 188821,frog 188822,deer 188823,bird 188824,dog 188825,deer 188826,cat 188827,deer 188828,deer 188829,bird 188830,automobile 188831,frog 188832,ship 188833,bird 188834,truck 188835,cat 188836,cat 188837,deer 188838,frog 188839,ship 188840,ship 188841,frog 188842,horse 188843,horse 188844,airplane 188845,cat 188846,dog 188847,dog 188848,airplane 188849,horse 188850,cat 188851,truck 188852,dog 188853,frog 188854,cat 188855,truck 188856,deer 188857,airplane 188858,automobile 188859,truck 188860,cat 188861,cat 188862,bird 188863,truck 188864,bird 188865,dog 188866,dog 188867,cat 188868,truck 188869,ship 188870,frog 188871,automobile 188872,truck 188873,dog 188874,deer 188875,airplane 188876,cat 188877,truck 188878,bird 188879,dog 188880,deer 188881,ship 188882,airplane 188883,deer 188884,deer 188885,horse 188886,dog 188887,frog 188888,deer 188889,cat 188890,cat 188891,ship 188892,deer 188893,bird 188894,truck 188895,deer 188896,airplane 188897,deer 188898,deer 188899,frog 188900,truck 188901,dog 188902,deer 188903,cat 188904,horse 188905,truck 188906,truck 188907,frog 188908,ship 188909,dog 188910,horse 188911,deer 188912,truck 188913,ship 188914,dog 188915,deer 188916,deer 188917,automobile 188918,automobile 188919,dog 188920,bird 188921,ship 188922,airplane 188923,frog 188924,horse 188925,cat 188926,truck 188927,bird 188928,truck 188929,horse 188930,frog 188931,truck 188932,dog 188933,bird 188934,dog 188935,bird 188936,frog 188937,horse 188938,dog 188939,cat 188940,truck 188941,bird 188942,horse 188943,truck 188944,deer 188945,truck 188946,deer 188947,horse 188948,airplane 188949,bird 188950,deer 188951,horse 188952,deer 188953,cat 188954,truck 188955,deer 188956,ship 188957,truck 188958,dog 188959,deer 188960,truck 188961,cat 188962,cat 188963,bird 188964,automobile 188965,horse 188966,automobile 188967,cat 188968,bird 188969,horse 188970,horse 188971,cat 188972,frog 188973,ship 188974,horse 188975,airplane 188976,bird 188977,automobile 188978,deer 188979,truck 188980,frog 188981,airplane 188982,truck 188983,ship 188984,airplane 188985,dog 188986,deer 188987,ship 188988,ship 188989,frog 188990,ship 188991,horse 188992,ship 188993,dog 188994,automobile 188995,deer 188996,dog 188997,dog 188998,automobile 188999,dog 189000,deer 189001,cat 189002,truck 189003,truck 189004,deer 189005,bird 189006,horse 189007,cat 189008,bird 189009,deer 189010,truck 189011,dog 189012,ship 189013,deer 189014,deer 189015,ship 189016,frog 189017,cat 189018,dog 189019,dog 189020,automobile 189021,cat 189022,cat 189023,cat 189024,ship 189025,automobile 189026,horse 189027,airplane 189028,ship 189029,deer 189030,automobile 189031,truck 189032,bird 189033,deer 189034,cat 189035,airplane 189036,dog 189037,ship 189038,horse 189039,deer 189040,truck 189041,airplane 189042,automobile 189043,automobile 189044,truck 189045,dog 189046,bird 189047,deer 189048,frog 189049,truck 189050,cat 189051,cat 189052,deer 189053,cat 189054,dog 189055,ship 189056,truck 189057,ship 189058,deer 189059,dog 189060,cat 189061,frog 189062,automobile 189063,cat 189064,deer 189065,cat 189066,truck 189067,automobile 189068,horse 189069,frog 189070,dog 189071,truck 189072,frog 189073,airplane 189074,dog 189075,horse 189076,ship 189077,airplane 189078,horse 189079,deer 189080,frog 189081,airplane 189082,automobile 189083,horse 189084,truck 189085,cat 189086,airplane 189087,horse 189088,truck 189089,frog 189090,deer 189091,deer 189092,dog 189093,horse 189094,dog 189095,horse 189096,bird 189097,airplane 189098,bird 189099,airplane 189100,truck 189101,deer 189102,airplane 189103,horse 189104,truck 189105,horse 189106,cat 189107,bird 189108,cat 189109,bird 189110,cat 189111,horse 189112,frog 189113,cat 189114,cat 189115,deer 189116,dog 189117,bird 189118,airplane 189119,bird 189120,bird 189121,cat 189122,dog 189123,truck 189124,truck 189125,cat 189126,cat 189127,airplane 189128,truck 189129,bird 189130,bird 189131,deer 189132,dog 189133,deer 189134,horse 189135,cat 189136,automobile 189137,frog 189138,horse 189139,cat 189140,ship 189141,truck 189142,truck 189143,dog 189144,bird 189145,ship 189146,ship 189147,airplane 189148,truck 189149,deer 189150,dog 189151,deer 189152,automobile 189153,horse 189154,bird 189155,airplane 189156,frog 189157,cat 189158,dog 189159,deer 189160,airplane 189161,dog 189162,frog 189163,automobile 189164,horse 189165,frog 189166,horse 189167,bird 189168,airplane 189169,bird 189170,truck 189171,cat 189172,ship 189173,ship 189174,truck 189175,truck 189176,cat 189177,frog 189178,automobile 189179,dog 189180,horse 189181,automobile 189182,airplane 189183,deer 189184,frog 189185,frog 189186,airplane 189187,airplane 189188,frog 189189,truck 189190,horse 189191,truck 189192,horse 189193,horse 189194,dog 189195,automobile 189196,cat 189197,cat 189198,cat 189199,deer 189200,horse 189201,bird 189202,deer 189203,dog 189204,horse 189205,automobile 189206,bird 189207,dog 189208,horse 189209,airplane 189210,horse 189211,deer 189212,deer 189213,truck 189214,cat 189215,horse 189216,airplane 189217,ship 189218,cat 189219,airplane 189220,bird 189221,bird 189222,cat 189223,dog 189224,bird 189225,automobile 189226,dog 189227,deer 189228,deer 189229,dog 189230,dog 189231,cat 189232,frog 189233,cat 189234,cat 189235,deer 189236,truck 189237,cat 189238,ship 189239,frog 189240,ship 189241,frog 189242,frog 189243,automobile 189244,deer 189245,horse 189246,bird 189247,cat 189248,airplane 189249,frog 189250,deer 189251,automobile 189252,dog 189253,ship 189254,cat 189255,cat 189256,dog 189257,bird 189258,truck 189259,dog 189260,frog 189261,frog 189262,cat 189263,airplane 189264,truck 189265,deer 189266,automobile 189267,truck 189268,ship 189269,cat 189270,truck 189271,deer 189272,bird 189273,cat 189274,horse 189275,horse 189276,cat 189277,dog 189278,dog 189279,horse 189280,deer 189281,cat 189282,airplane 189283,deer 189284,dog 189285,cat 189286,deer 189287,deer 189288,deer 189289,deer 189290,frog 189291,deer 189292,horse 189293,automobile 189294,horse 189295,ship 189296,cat 189297,ship 189298,truck 189299,ship 189300,dog 189301,truck 189302,bird 189303,airplane 189304,cat 189305,airplane 189306,cat 189307,horse 189308,deer 189309,deer 189310,automobile 189311,cat 189312,cat 189313,deer 189314,deer 189315,frog 189316,deer 189317,truck 189318,cat 189319,cat 189320,airplane 189321,cat 189322,cat 189323,frog 189324,bird 189325,bird 189326,dog 189327,deer 189328,truck 189329,frog 189330,ship 189331,airplane 189332,deer 189333,ship 189334,dog 189335,bird 189336,truck 189337,horse 189338,ship 189339,frog 189340,deer 189341,cat 189342,automobile 189343,truck 189344,truck 189345,truck 189346,cat 189347,frog 189348,horse 189349,deer 189350,horse 189351,airplane 189352,horse 189353,truck 189354,automobile 189355,dog 189356,truck 189357,frog 189358,horse 189359,frog 189360,automobile 189361,automobile 189362,frog 189363,deer 189364,dog 189365,airplane 189366,horse 189367,automobile 189368,cat 189369,automobile 189370,horse 189371,automobile 189372,frog 189373,automobile 189374,deer 189375,airplane 189376,ship 189377,airplane 189378,bird 189379,airplane 189380,airplane 189381,frog 189382,truck 189383,airplane 189384,frog 189385,cat 189386,deer 189387,bird 189388,cat 189389,truck 189390,truck 189391,bird 189392,airplane 189393,airplane 189394,frog 189395,bird 189396,automobile 189397,bird 189398,bird 189399,frog 189400,cat 189401,bird 189402,deer 189403,frog 189404,cat 189405,deer 189406,truck 189407,frog 189408,cat 189409,cat 189410,ship 189411,bird 189412,horse 189413,bird 189414,dog 189415,airplane 189416,automobile 189417,truck 189418,truck 189419,cat 189420,deer 189421,cat 189422,cat 189423,airplane 189424,frog 189425,cat 189426,airplane 189427,deer 189428,frog 189429,ship 189430,airplane 189431,bird 189432,automobile 189433,cat 189434,cat 189435,truck 189436,deer 189437,bird 189438,automobile 189439,ship 189440,ship 189441,bird 189442,airplane 189443,cat 189444,ship 189445,deer 189446,frog 189447,deer 189448,cat 189449,bird 189450,frog 189451,horse 189452,truck 189453,deer 189454,horse 189455,cat 189456,frog 189457,frog 189458,ship 189459,frog 189460,deer 189461,cat 189462,frog 189463,truck 189464,airplane 189465,deer 189466,dog 189467,automobile 189468,airplane 189469,ship 189470,ship 189471,horse 189472,airplane 189473,frog 189474,horse 189475,deer 189476,automobile 189477,frog 189478,frog 189479,cat 189480,truck 189481,truck 189482,truck 189483,airplane 189484,cat 189485,cat 189486,frog 189487,airplane 189488,ship 189489,cat 189490,dog 189491,airplane 189492,airplane 189493,truck 189494,deer 189495,airplane 189496,cat 189497,deer 189498,bird 189499,deer 189500,automobile 189501,airplane 189502,dog 189503,deer 189504,airplane 189505,deer 189506,horse 189507,ship 189508,bird 189509,frog 189510,dog 189511,deer 189512,ship 189513,ship 189514,bird 189515,deer 189516,bird 189517,horse 189518,deer 189519,bird 189520,ship 189521,airplane 189522,deer 189523,horse 189524,horse 189525,automobile 189526,frog 189527,frog 189528,automobile 189529,cat 189530,cat 189531,automobile 189532,dog 189533,bird 189534,bird 189535,deer 189536,cat 189537,dog 189538,ship 189539,horse 189540,cat 189541,dog 189542,cat 189543,cat 189544,dog 189545,deer 189546,deer 189547,cat 189548,frog 189549,dog 189550,cat 189551,automobile 189552,bird 189553,cat 189554,bird 189555,automobile 189556,truck 189557,automobile 189558,ship 189559,frog 189560,horse 189561,airplane 189562,ship 189563,deer 189564,dog 189565,frog 189566,deer 189567,truck 189568,dog 189569,bird 189570,frog 189571,deer 189572,frog 189573,horse 189574,cat 189575,deer 189576,truck 189577,bird 189578,dog 189579,truck 189580,airplane 189581,deer 189582,truck 189583,truck 189584,truck 189585,dog 189586,bird 189587,deer 189588,bird 189589,truck 189590,bird 189591,cat 189592,deer 189593,frog 189594,frog 189595,cat 189596,horse 189597,horse 189598,automobile 189599,cat 189600,airplane 189601,deer 189602,truck 189603,truck 189604,cat 189605,deer 189606,automobile 189607,horse 189608,cat 189609,horse 189610,bird 189611,airplane 189612,bird 189613,automobile 189614,airplane 189615,horse 189616,dog 189617,bird 189618,deer 189619,cat 189620,horse 189621,ship 189622,bird 189623,deer 189624,horse 189625,ship 189626,deer 189627,automobile 189628,deer 189629,horse 189630,dog 189631,frog 189632,ship 189633,deer 189634,dog 189635,cat 189636,dog 189637,dog 189638,horse 189639,frog 189640,bird 189641,automobile 189642,truck 189643,bird 189644,automobile 189645,horse 189646,automobile 189647,cat 189648,ship 189649,automobile 189650,automobile 189651,truck 189652,automobile 189653,deer 189654,bird 189655,truck 189656,airplane 189657,bird 189658,automobile 189659,horse 189660,airplane 189661,truck 189662,bird 189663,ship 189664,truck 189665,airplane 189666,deer 189667,dog 189668,automobile 189669,frog 189670,truck 189671,bird 189672,bird 189673,dog 189674,deer 189675,truck 189676,automobile 189677,bird 189678,cat 189679,cat 189680,cat 189681,frog 189682,truck 189683,cat 189684,deer 189685,automobile 189686,horse 189687,airplane 189688,bird 189689,cat 189690,cat 189691,airplane 189692,dog 189693,bird 189694,cat 189695,dog 189696,airplane 189697,truck 189698,deer 189699,deer 189700,truck 189701,cat 189702,deer 189703,cat 189704,cat 189705,deer 189706,deer 189707,truck 189708,bird 189709,frog 189710,cat 189711,truck 189712,bird 189713,airplane 189714,airplane 189715,truck 189716,frog 189717,airplane 189718,deer 189719,deer 189720,frog 189721,ship 189722,bird 189723,deer 189724,ship 189725,horse 189726,deer 189727,truck 189728,truck 189729,cat 189730,horse 189731,deer 189732,airplane 189733,bird 189734,airplane 189735,automobile 189736,deer 189737,frog 189738,truck 189739,ship 189740,dog 189741,cat 189742,cat 189743,bird 189744,cat 189745,truck 189746,frog 189747,deer 189748,bird 189749,dog 189750,frog 189751,deer 189752,deer 189753,cat 189754,bird 189755,cat 189756,ship 189757,dog 189758,automobile 189759,deer 189760,truck 189761,automobile 189762,frog 189763,automobile 189764,frog 189765,automobile 189766,dog 189767,deer 189768,ship 189769,dog 189770,airplane 189771,horse 189772,automobile 189773,airplane 189774,frog 189775,frog 189776,airplane 189777,airplane 189778,bird 189779,frog 189780,truck 189781,cat 189782,truck 189783,dog 189784,truck 189785,frog 189786,dog 189787,frog 189788,automobile 189789,frog 189790,horse 189791,automobile 189792,automobile 189793,frog 189794,horse 189795,bird 189796,cat 189797,automobile 189798,frog 189799,bird 189800,automobile 189801,frog 189802,bird 189803,horse 189804,automobile 189805,dog 189806,bird 189807,truck 189808,deer 189809,bird 189810,automobile 189811,cat 189812,airplane 189813,airplane 189814,deer 189815,bird 189816,horse 189817,frog 189818,horse 189819,bird 189820,cat 189821,ship 189822,frog 189823,deer 189824,frog 189825,truck 189826,truck 189827,truck 189828,deer 189829,dog 189830,deer 189831,bird 189832,airplane 189833,cat 189834,deer 189835,automobile 189836,deer 189837,dog 189838,dog 189839,cat 189840,cat 189841,bird 189842,deer 189843,deer 189844,dog 189845,automobile 189846,deer 189847,horse 189848,truck 189849,deer 189850,ship 189851,frog 189852,dog 189853,deer 189854,bird 189855,cat 189856,frog 189857,automobile 189858,airplane 189859,automobile 189860,automobile 189861,bird 189862,dog 189863,deer 189864,dog 189865,frog 189866,frog 189867,bird 189868,ship 189869,deer 189870,deer 189871,deer 189872,horse 189873,deer 189874,dog 189875,horse 189876,deer 189877,cat 189878,airplane 189879,truck 189880,truck 189881,cat 189882,cat 189883,cat 189884,airplane 189885,ship 189886,airplane 189887,automobile 189888,ship 189889,frog 189890,truck 189891,cat 189892,truck 189893,automobile 189894,bird 189895,horse 189896,deer 189897,horse 189898,dog 189899,deer 189900,dog 189901,frog 189902,deer 189903,cat 189904,frog 189905,bird 189906,cat 189907,horse 189908,ship 189909,deer 189910,frog 189911,frog 189912,bird 189913,dog 189914,dog 189915,cat 189916,bird 189917,frog 189918,cat 189919,ship 189920,dog 189921,horse 189922,ship 189923,frog 189924,airplane 189925,cat 189926,deer 189927,deer 189928,bird 189929,cat 189930,dog 189931,airplane 189932,frog 189933,truck 189934,dog 189935,cat 189936,cat 189937,truck 189938,ship 189939,deer 189940,truck 189941,frog 189942,frog 189943,frog 189944,truck 189945,ship 189946,dog 189947,horse 189948,deer 189949,truck 189950,truck 189951,frog 189952,dog 189953,deer 189954,frog 189955,frog 189956,truck 189957,deer 189958,ship 189959,ship 189960,frog 189961,airplane 189962,deer 189963,frog 189964,truck 189965,deer 189966,frog 189967,automobile 189968,horse 189969,horse 189970,airplane 189971,cat 189972,automobile 189973,horse 189974,frog 189975,horse 189976,cat 189977,truck 189978,frog 189979,bird 189980,deer 189981,cat 189982,airplane 189983,dog 189984,horse 189985,automobile 189986,frog 189987,airplane 189988,airplane 189989,dog 189990,deer 189991,truck 189992,dog 189993,ship 189994,truck 189995,automobile 189996,dog 189997,airplane 189998,ship 189999,truck 190000,deer 190001,automobile 190002,dog 190003,cat 190004,cat 190005,horse 190006,frog 190007,airplane 190008,automobile 190009,deer 190010,automobile 190011,cat 190012,airplane 190013,cat 190014,airplane 190015,bird 190016,frog 190017,truck 190018,ship 190019,ship 190020,ship 190021,frog 190022,airplane 190023,dog 190024,dog 190025,dog 190026,dog 190027,cat 190028,deer 190029,bird 190030,truck 190031,ship 190032,ship 190033,frog 190034,airplane 190035,bird 190036,automobile 190037,deer 190038,frog 190039,horse 190040,airplane 190041,truck 190042,automobile 190043,dog 190044,frog 190045,frog 190046,horse 190047,truck 190048,cat 190049,truck 190050,frog 190051,frog 190052,cat 190053,airplane 190054,ship 190055,dog 190056,deer 190057,horse 190058,frog 190059,dog 190060,ship 190061,cat 190062,ship 190063,automobile 190064,deer 190065,truck 190066,airplane 190067,horse 190068,automobile 190069,automobile 190070,frog 190071,airplane 190072,ship 190073,cat 190074,airplane 190075,deer 190076,truck 190077,bird 190078,frog 190079,frog 190080,deer 190081,cat 190082,dog 190083,dog 190084,frog 190085,dog 190086,frog 190087,cat 190088,automobile 190089,cat 190090,frog 190091,deer 190092,horse 190093,airplane 190094,horse 190095,dog 190096,dog 190097,airplane 190098,frog 190099,horse 190100,cat 190101,bird 190102,deer 190103,airplane 190104,horse 190105,deer 190106,airplane 190107,airplane 190108,airplane 190109,deer 190110,frog 190111,truck 190112,cat 190113,frog 190114,deer 190115,dog 190116,airplane 190117,automobile 190118,cat 190119,cat 190120,truck 190121,dog 190122,truck 190123,airplane 190124,bird 190125,cat 190126,cat 190127,dog 190128,bird 190129,frog 190130,ship 190131,deer 190132,bird 190133,bird 190134,dog 190135,cat 190136,cat 190137,horse 190138,frog 190139,bird 190140,horse 190141,dog 190142,truck 190143,airplane 190144,cat 190145,deer 190146,dog 190147,ship 190148,horse 190149,cat 190150,ship 190151,cat 190152,cat 190153,frog 190154,deer 190155,frog 190156,automobile 190157,truck 190158,automobile 190159,horse 190160,truck 190161,airplane 190162,horse 190163,cat 190164,horse 190165,dog 190166,automobile 190167,deer 190168,cat 190169,truck 190170,ship 190171,ship 190172,deer 190173,cat 190174,dog 190175,cat 190176,ship 190177,truck 190178,ship 190179,airplane 190180,truck 190181,dog 190182,bird 190183,bird 190184,ship 190185,automobile 190186,airplane 190187,bird 190188,bird 190189,cat 190190,deer 190191,ship 190192,frog 190193,bird 190194,cat 190195,deer 190196,cat 190197,airplane 190198,deer 190199,ship 190200,cat 190201,horse 190202,bird 190203,truck 190204,deer 190205,frog 190206,ship 190207,cat 190208,airplane 190209,frog 190210,horse 190211,airplane 190212,truck 190213,cat 190214,truck 190215,deer 190216,horse 190217,dog 190218,frog 190219,automobile 190220,dog 190221,horse 190222,bird 190223,dog 190224,truck 190225,automobile 190226,airplane 190227,truck 190228,cat 190229,deer 190230,cat 190231,deer 190232,dog 190233,frog 190234,automobile 190235,deer 190236,horse 190237,airplane 190238,deer 190239,airplane 190240,ship 190241,deer 190242,automobile 190243,airplane 190244,bird 190245,frog 190246,truck 190247,dog 190248,bird 190249,truck 190250,cat 190251,cat 190252,airplane 190253,ship 190254,bird 190255,deer 190256,automobile 190257,airplane 190258,truck 190259,bird 190260,deer 190261,cat 190262,ship 190263,airplane 190264,ship 190265,truck 190266,bird 190267,airplane 190268,bird 190269,airplane 190270,dog 190271,automobile 190272,truck 190273,horse 190274,bird 190275,bird 190276,dog 190277,bird 190278,frog 190279,deer 190280,ship 190281,cat 190282,frog 190283,cat 190284,ship 190285,truck 190286,automobile 190287,airplane 190288,frog 190289,cat 190290,truck 190291,dog 190292,cat 190293,airplane 190294,cat 190295,deer 190296,cat 190297,deer 190298,deer 190299,ship 190300,cat 190301,dog 190302,frog 190303,horse 190304,bird 190305,bird 190306,bird 190307,frog 190308,dog 190309,cat 190310,dog 190311,truck 190312,frog 190313,truck 190314,airplane 190315,cat 190316,automobile 190317,airplane 190318,bird 190319,airplane 190320,ship 190321,deer 190322,deer 190323,frog 190324,frog 190325,deer 190326,deer 190327,cat 190328,automobile 190329,cat 190330,cat 190331,cat 190332,ship 190333,airplane 190334,truck 190335,deer 190336,airplane 190337,deer 190338,bird 190339,frog 190340,automobile 190341,bird 190342,frog 190343,airplane 190344,dog 190345,horse 190346,frog 190347,cat 190348,bird 190349,frog 190350,bird 190351,dog 190352,cat 190353,frog 190354,cat 190355,horse 190356,frog 190357,cat 190358,dog 190359,airplane 190360,frog 190361,bird 190362,cat 190363,automobile 190364,bird 190365,cat 190366,cat 190367,cat 190368,frog 190369,frog 190370,automobile 190371,deer 190372,horse 190373,automobile 190374,truck 190375,automobile 190376,cat 190377,airplane 190378,deer 190379,frog 190380,dog 190381,automobile 190382,bird 190383,airplane 190384,cat 190385,truck 190386,airplane 190387,airplane 190388,airplane 190389,deer 190390,horse 190391,airplane 190392,horse 190393,frog 190394,automobile 190395,deer 190396,horse 190397,deer 190398,dog 190399,cat 190400,cat 190401,airplane 190402,ship 190403,horse 190404,automobile 190405,airplane 190406,dog 190407,bird 190408,automobile 190409,frog 190410,horse 190411,automobile 190412,truck 190413,airplane 190414,deer 190415,automobile 190416,dog 190417,bird 190418,ship 190419,airplane 190420,frog 190421,cat 190422,frog 190423,airplane 190424,automobile 190425,cat 190426,deer 190427,frog 190428,truck 190429,ship 190430,dog 190431,airplane 190432,horse 190433,deer 190434,airplane 190435,dog 190436,truck 190437,truck 190438,bird 190439,frog 190440,cat 190441,truck 190442,ship 190443,frog 190444,frog 190445,truck 190446,automobile 190447,frog 190448,truck 190449,horse 190450,ship 190451,bird 190452,truck 190453,deer 190454,cat 190455,truck 190456,ship 190457,ship 190458,truck 190459,automobile 190460,bird 190461,cat 190462,airplane 190463,horse 190464,frog 190465,truck 190466,truck 190467,truck 190468,bird 190469,airplane 190470,ship 190471,frog 190472,cat 190473,dog 190474,airplane 190475,horse 190476,truck 190477,truck 190478,dog 190479,horse 190480,deer 190481,dog 190482,horse 190483,airplane 190484,deer 190485,deer 190486,cat 190487,truck 190488,automobile 190489,frog 190490,bird 190491,deer 190492,frog 190493,airplane 190494,automobile 190495,ship 190496,frog 190497,ship 190498,deer 190499,ship 190500,dog 190501,dog 190502,dog 190503,automobile 190504,horse 190505,deer 190506,truck 190507,cat 190508,dog 190509,frog 190510,automobile 190511,automobile 190512,bird 190513,bird 190514,horse 190515,airplane 190516,airplane 190517,deer 190518,truck 190519,bird 190520,ship 190521,frog 190522,horse 190523,horse 190524,frog 190525,bird 190526,cat 190527,airplane 190528,deer 190529,ship 190530,cat 190531,dog 190532,ship 190533,airplane 190534,dog 190535,dog 190536,truck 190537,bird 190538,deer 190539,automobile 190540,horse 190541,automobile 190542,cat 190543,ship 190544,horse 190545,deer 190546,dog 190547,frog 190548,airplane 190549,dog 190550,frog 190551,horse 190552,automobile 190553,frog 190554,dog 190555,truck 190556,cat 190557,dog 190558,deer 190559,horse 190560,horse 190561,bird 190562,truck 190563,bird 190564,cat 190565,dog 190566,dog 190567,automobile 190568,deer 190569,truck 190570,airplane 190571,dog 190572,cat 190573,deer 190574,deer 190575,horse 190576,bird 190577,ship 190578,frog 190579,dog 190580,cat 190581,bird 190582,automobile 190583,truck 190584,truck 190585,bird 190586,cat 190587,dog 190588,cat 190589,frog 190590,dog 190591,truck 190592,automobile 190593,ship 190594,airplane 190595,automobile 190596,cat 190597,airplane 190598,horse 190599,ship 190600,frog 190601,horse 190602,deer 190603,frog 190604,horse 190605,dog 190606,bird 190607,cat 190608,horse 190609,automobile 190610,dog 190611,automobile 190612,truck 190613,frog 190614,ship 190615,frog 190616,cat 190617,bird 190618,frog 190619,deer 190620,ship 190621,horse 190622,cat 190623,cat 190624,frog 190625,frog 190626,truck 190627,bird 190628,deer 190629,automobile 190630,dog 190631,bird 190632,bird 190633,automobile 190634,cat 190635,ship 190636,horse 190637,airplane 190638,cat 190639,deer 190640,cat 190641,frog 190642,frog 190643,frog 190644,dog 190645,automobile 190646,ship 190647,bird 190648,deer 190649,cat 190650,horse 190651,deer 190652,bird 190653,dog 190654,truck 190655,ship 190656,truck 190657,deer 190658,dog 190659,bird 190660,ship 190661,airplane 190662,frog 190663,cat 190664,truck 190665,frog 190666,horse 190667,frog 190668,bird 190669,truck 190670,cat 190671,deer 190672,ship 190673,cat 190674,cat 190675,cat 190676,horse 190677,dog 190678,frog 190679,cat 190680,deer 190681,truck 190682,automobile 190683,truck 190684,dog 190685,airplane 190686,airplane 190687,airplane 190688,cat 190689,horse 190690,horse 190691,frog 190692,horse 190693,airplane 190694,ship 190695,automobile 190696,airplane 190697,truck 190698,dog 190699,airplane 190700,automobile 190701,deer 190702,frog 190703,dog 190704,deer 190705,frog 190706,automobile 190707,dog 190708,deer 190709,horse 190710,frog 190711,deer 190712,deer 190713,airplane 190714,frog 190715,deer 190716,deer 190717,frog 190718,dog 190719,dog 190720,deer 190721,automobile 190722,frog 190723,ship 190724,frog 190725,ship 190726,dog 190727,bird 190728,dog 190729,truck 190730,deer 190731,deer 190732,truck 190733,deer 190734,ship 190735,bird 190736,automobile 190737,automobile 190738,deer 190739,dog 190740,horse 190741,deer 190742,ship 190743,ship 190744,cat 190745,airplane 190746,horse 190747,horse 190748,truck 190749,cat 190750,frog 190751,ship 190752,horse 190753,horse 190754,deer 190755,cat 190756,frog 190757,bird 190758,bird 190759,frog 190760,truck 190761,automobile 190762,dog 190763,dog 190764,dog 190765,truck 190766,airplane 190767,frog 190768,frog 190769,airplane 190770,truck 190771,dog 190772,deer 190773,airplane 190774,frog 190775,ship 190776,deer 190777,airplane 190778,cat 190779,deer 190780,automobile 190781,truck 190782,ship 190783,ship 190784,automobile 190785,airplane 190786,cat 190787,airplane 190788,bird 190789,bird 190790,dog 190791,dog 190792,ship 190793,truck 190794,deer 190795,automobile 190796,airplane 190797,horse 190798,ship 190799,cat 190800,truck 190801,airplane 190802,airplane 190803,frog 190804,frog 190805,deer 190806,ship 190807,horse 190808,dog 190809,bird 190810,deer 190811,airplane 190812,dog 190813,automobile 190814,automobile 190815,dog 190816,frog 190817,bird 190818,dog 190819,dog 190820,dog 190821,bird 190822,automobile 190823,bird 190824,airplane 190825,horse 190826,dog 190827,automobile 190828,bird 190829,bird 190830,frog 190831,deer 190832,ship 190833,frog 190834,airplane 190835,automobile 190836,dog 190837,airplane 190838,truck 190839,cat 190840,cat 190841,airplane 190842,automobile 190843,truck 190844,dog 190845,horse 190846,dog 190847,cat 190848,airplane 190849,dog 190850,frog 190851,ship 190852,horse 190853,frog 190854,truck 190855,frog 190856,horse 190857,automobile 190858,bird 190859,cat 190860,frog 190861,ship 190862,frog 190863,horse 190864,cat 190865,horse 190866,deer 190867,truck 190868,airplane 190869,deer 190870,horse 190871,deer 190872,deer 190873,automobile 190874,dog 190875,automobile 190876,automobile 190877,cat 190878,deer 190879,cat 190880,airplane 190881,horse 190882,horse 190883,horse 190884,deer 190885,frog 190886,deer 190887,ship 190888,truck 190889,dog 190890,deer 190891,cat 190892,horse 190893,bird 190894,dog 190895,bird 190896,dog 190897,cat 190898,deer 190899,airplane 190900,deer 190901,truck 190902,horse 190903,bird 190904,truck 190905,deer 190906,truck 190907,horse 190908,bird 190909,cat 190910,deer 190911,horse 190912,bird 190913,dog 190914,cat 190915,ship 190916,dog 190917,deer 190918,deer 190919,frog 190920,bird 190921,bird 190922,deer 190923,deer 190924,deer 190925,cat 190926,cat 190927,cat 190928,frog 190929,airplane 190930,frog 190931,deer 190932,ship 190933,deer 190934,deer 190935,frog 190936,horse 190937,deer 190938,airplane 190939,automobile 190940,frog 190941,cat 190942,dog 190943,frog 190944,truck 190945,horse 190946,cat 190947,cat 190948,frog 190949,frog 190950,horse 190951,airplane 190952,horse 190953,cat 190954,horse 190955,horse 190956,ship 190957,truck 190958,ship 190959,cat 190960,dog 190961,automobile 190962,dog 190963,horse 190964,truck 190965,dog 190966,horse 190967,airplane 190968,horse 190969,ship 190970,bird 190971,frog 190972,cat 190973,bird 190974,frog 190975,frog 190976,deer 190977,horse 190978,bird 190979,automobile 190980,automobile 190981,frog 190982,ship 190983,automobile 190984,deer 190985,truck 190986,dog 190987,airplane 190988,airplane 190989,automobile 190990,frog 190991,horse 190992,frog 190993,deer 190994,truck 190995,dog 190996,dog 190997,ship 190998,deer 190999,deer 191000,horse 191001,airplane 191002,cat 191003,truck 191004,airplane 191005,deer 191006,deer 191007,truck 191008,bird 191009,automobile 191010,horse 191011,ship 191012,airplane 191013,automobile 191014,cat 191015,automobile 191016,horse 191017,frog 191018,frog 191019,frog 191020,ship 191021,ship 191022,airplane 191023,cat 191024,bird 191025,ship 191026,cat 191027,horse 191028,deer 191029,bird 191030,deer 191031,cat 191032,deer 191033,dog 191034,horse 191035,horse 191036,airplane 191037,truck 191038,bird 191039,horse 191040,airplane 191041,horse 191042,horse 191043,airplane 191044,dog 191045,ship 191046,frog 191047,deer 191048,horse 191049,cat 191050,bird 191051,automobile 191052,truck 191053,cat 191054,cat 191055,cat 191056,bird 191057,airplane 191058,frog 191059,dog 191060,ship 191061,deer 191062,horse 191063,deer 191064,dog 191065,airplane 191066,frog 191067,automobile 191068,bird 191069,horse 191070,cat 191071,cat 191072,dog 191073,dog 191074,truck 191075,cat 191076,deer 191077,cat 191078,frog 191079,cat 191080,airplane 191081,truck 191082,frog 191083,horse 191084,deer 191085,deer 191086,deer 191087,ship 191088,cat 191089,horse 191090,airplane 191091,frog 191092,dog 191093,cat 191094,truck 191095,cat 191096,truck 191097,horse 191098,frog 191099,truck 191100,bird 191101,frog 191102,truck 191103,automobile 191104,deer 191105,deer 191106,truck 191107,truck 191108,cat 191109,cat 191110,ship 191111,deer 191112,cat 191113,automobile 191114,dog 191115,cat 191116,cat 191117,cat 191118,deer 191119,cat 191120,airplane 191121,dog 191122,automobile 191123,dog 191124,bird 191125,ship 191126,automobile 191127,truck 191128,horse 191129,horse 191130,deer 191131,truck 191132,dog 191133,ship 191134,ship 191135,deer 191136,airplane 191137,airplane 191138,deer 191139,automobile 191140,deer 191141,truck 191142,truck 191143,automobile 191144,bird 191145,horse 191146,bird 191147,deer 191148,ship 191149,frog 191150,automobile 191151,horse 191152,bird 191153,dog 191154,deer 191155,bird 191156,dog 191157,horse 191158,airplane 191159,airplane 191160,truck 191161,horse 191162,automobile 191163,bird 191164,frog 191165,truck 191166,bird 191167,cat 191168,ship 191169,horse 191170,ship 191171,truck 191172,deer 191173,deer 191174,dog 191175,deer 191176,dog 191177,deer 191178,ship 191179,dog 191180,bird 191181,cat 191182,automobile 191183,frog 191184,airplane 191185,ship 191186,dog 191187,bird 191188,deer 191189,deer 191190,truck 191191,cat 191192,deer 191193,frog 191194,frog 191195,airplane 191196,truck 191197,deer 191198,deer 191199,horse 191200,automobile 191201,horse 191202,truck 191203,airplane 191204,deer 191205,truck 191206,automobile 191207,truck 191208,truck 191209,frog 191210,frog 191211,horse 191212,dog 191213,deer 191214,ship 191215,automobile 191216,deer 191217,automobile 191218,bird 191219,deer 191220,truck 191221,deer 191222,frog 191223,horse 191224,automobile 191225,horse 191226,airplane 191227,deer 191228,frog 191229,airplane 191230,dog 191231,deer 191232,bird 191233,deer 191234,ship 191235,deer 191236,ship 191237,airplane 191238,cat 191239,airplane 191240,deer 191241,dog 191242,automobile 191243,bird 191244,ship 191245,horse 191246,truck 191247,frog 191248,bird 191249,frog 191250,cat 191251,truck 191252,airplane 191253,dog 191254,ship 191255,deer 191256,automobile 191257,dog 191258,automobile 191259,ship 191260,automobile 191261,deer 191262,frog 191263,ship 191264,airplane 191265,airplane 191266,frog 191267,truck 191268,automobile 191269,bird 191270,deer 191271,bird 191272,automobile 191273,cat 191274,bird 191275,automobile 191276,horse 191277,automobile 191278,airplane 191279,automobile 191280,deer 191281,deer 191282,dog 191283,truck 191284,truck 191285,horse 191286,automobile 191287,deer 191288,cat 191289,deer 191290,frog 191291,deer 191292,airplane 191293,cat 191294,ship 191295,frog 191296,truck 191297,deer 191298,horse 191299,frog 191300,automobile 191301,bird 191302,airplane 191303,cat 191304,frog 191305,airplane 191306,ship 191307,horse 191308,truck 191309,truck 191310,truck 191311,deer 191312,deer 191313,dog 191314,airplane 191315,deer 191316,automobile 191317,bird 191318,deer 191319,bird 191320,ship 191321,truck 191322,horse 191323,dog 191324,truck 191325,automobile 191326,airplane 191327,airplane 191328,truck 191329,airplane 191330,airplane 191331,bird 191332,airplane 191333,airplane 191334,dog 191335,airplane 191336,dog 191337,frog 191338,truck 191339,deer 191340,frog 191341,truck 191342,cat 191343,deer 191344,dog 191345,horse 191346,frog 191347,horse 191348,horse 191349,deer 191350,bird 191351,deer 191352,airplane 191353,frog 191354,horse 191355,truck 191356,deer 191357,deer 191358,dog 191359,bird 191360,dog 191361,deer 191362,deer 191363,frog 191364,horse 191365,cat 191366,ship 191367,airplane 191368,deer 191369,frog 191370,truck 191371,horse 191372,frog 191373,dog 191374,truck 191375,deer 191376,cat 191377,automobile 191378,ship 191379,frog 191380,deer 191381,truck 191382,cat 191383,deer 191384,frog 191385,airplane 191386,deer 191387,ship 191388,airplane 191389,airplane 191390,deer 191391,bird 191392,frog 191393,deer 191394,automobile 191395,bird 191396,frog 191397,automobile 191398,bird 191399,truck 191400,dog 191401,cat 191402,airplane 191403,airplane 191404,truck 191405,deer 191406,airplane 191407,truck 191408,bird 191409,cat 191410,ship 191411,cat 191412,bird 191413,automobile 191414,dog 191415,bird 191416,horse 191417,frog 191418,automobile 191419,deer 191420,frog 191421,airplane 191422,frog 191423,frog 191424,cat 191425,truck 191426,ship 191427,automobile 191428,deer 191429,truck 191430,bird 191431,frog 191432,deer 191433,automobile 191434,cat 191435,truck 191436,dog 191437,automobile 191438,horse 191439,ship 191440,horse 191441,cat 191442,ship 191443,truck 191444,dog 191445,deer 191446,cat 191447,ship 191448,automobile 191449,cat 191450,frog 191451,deer 191452,dog 191453,frog 191454,dog 191455,airplane 191456,truck 191457,deer 191458,horse 191459,ship 191460,horse 191461,frog 191462,deer 191463,dog 191464,cat 191465,automobile 191466,deer 191467,truck 191468,bird 191469,deer 191470,truck 191471,automobile 191472,automobile 191473,ship 191474,cat 191475,bird 191476,airplane 191477,truck 191478,truck 191479,bird 191480,deer 191481,bird 191482,deer 191483,horse 191484,dog 191485,frog 191486,cat 191487,frog 191488,cat 191489,cat 191490,frog 191491,airplane 191492,horse 191493,frog 191494,bird 191495,deer 191496,truck 191497,automobile 191498,airplane 191499,ship 191500,dog 191501,cat 191502,bird 191503,frog 191504,frog 191505,cat 191506,cat 191507,bird 191508,cat 191509,frog 191510,truck 191511,horse 191512,deer 191513,automobile 191514,cat 191515,ship 191516,airplane 191517,cat 191518,frog 191519,ship 191520,ship 191521,horse 191522,dog 191523,truck 191524,airplane 191525,dog 191526,truck 191527,frog 191528,dog 191529,automobile 191530,dog 191531,automobile 191532,truck 191533,deer 191534,cat 191535,deer 191536,truck 191537,ship 191538,bird 191539,truck 191540,airplane 191541,automobile 191542,ship 191543,airplane 191544,dog 191545,ship 191546,automobile 191547,frog 191548,frog 191549,dog 191550,bird 191551,automobile 191552,horse 191553,airplane 191554,bird 191555,bird 191556,dog 191557,dog 191558,frog 191559,deer 191560,airplane 191561,truck 191562,truck 191563,frog 191564,automobile 191565,frog 191566,horse 191567,ship 191568,truck 191569,bird 191570,dog 191571,frog 191572,deer 191573,automobile 191574,bird 191575,ship 191576,truck 191577,automobile 191578,horse 191579,horse 191580,cat 191581,deer 191582,deer 191583,bird 191584,automobile 191585,truck 191586,frog 191587,horse 191588,bird 191589,automobile 191590,frog 191591,deer 191592,cat 191593,automobile 191594,automobile 191595,airplane 191596,frog 191597,cat 191598,deer 191599,bird 191600,dog 191601,horse 191602,bird 191603,deer 191604,dog 191605,automobile 191606,automobile 191607,frog 191608,bird 191609,automobile 191610,horse 191611,dog 191612,deer 191613,truck 191614,frog 191615,deer 191616,bird 191617,dog 191618,cat 191619,ship 191620,cat 191621,automobile 191622,deer 191623,deer 191624,cat 191625,deer 191626,cat 191627,bird 191628,deer 191629,frog 191630,deer 191631,ship 191632,airplane 191633,dog 191634,airplane 191635,bird 191636,dog 191637,automobile 191638,horse 191639,deer 191640,bird 191641,deer 191642,horse 191643,frog 191644,truck 191645,automobile 191646,airplane 191647,cat 191648,deer 191649,ship 191650,deer 191651,cat 191652,horse 191653,cat 191654,frog 191655,cat 191656,dog 191657,dog 191658,ship 191659,deer 191660,frog 191661,airplane 191662,bird 191663,frog 191664,deer 191665,cat 191666,cat 191667,ship 191668,cat 191669,cat 191670,bird 191671,frog 191672,horse 191673,truck 191674,ship 191675,deer 191676,dog 191677,cat 191678,deer 191679,cat 191680,cat 191681,dog 191682,horse 191683,ship 191684,dog 191685,cat 191686,frog 191687,truck 191688,automobile 191689,deer 191690,cat 191691,airplane 191692,cat 191693,bird 191694,deer 191695,frog 191696,bird 191697,deer 191698,deer 191699,automobile 191700,airplane 191701,cat 191702,truck 191703,cat 191704,deer 191705,ship 191706,automobile 191707,airplane 191708,bird 191709,airplane 191710,truck 191711,ship 191712,truck 191713,horse 191714,bird 191715,dog 191716,truck 191717,bird 191718,cat 191719,airplane 191720,automobile 191721,deer 191722,deer 191723,airplane 191724,frog 191725,bird 191726,dog 191727,dog 191728,dog 191729,truck 191730,airplane 191731,bird 191732,deer 191733,truck 191734,cat 191735,automobile 191736,horse 191737,bird 191738,truck 191739,bird 191740,truck 191741,cat 191742,truck 191743,truck 191744,frog 191745,frog 191746,truck 191747,dog 191748,airplane 191749,truck 191750,ship 191751,dog 191752,frog 191753,ship 191754,deer 191755,cat 191756,airplane 191757,deer 191758,horse 191759,cat 191760,cat 191761,truck 191762,cat 191763,truck 191764,frog 191765,ship 191766,dog 191767,automobile 191768,truck 191769,horse 191770,cat 191771,frog 191772,deer 191773,automobile 191774,airplane 191775,dog 191776,airplane 191777,dog 191778,dog 191779,cat 191780,airplane 191781,airplane 191782,horse 191783,deer 191784,ship 191785,cat 191786,cat 191787,airplane 191788,horse 191789,automobile 191790,deer 191791,cat 191792,automobile 191793,cat 191794,cat 191795,cat 191796,truck 191797,frog 191798,cat 191799,airplane 191800,cat 191801,deer 191802,airplane 191803,ship 191804,cat 191805,automobile 191806,truck 191807,dog 191808,automobile 191809,dog 191810,dog 191811,ship 191812,truck 191813,dog 191814,automobile 191815,cat 191816,frog 191817,horse 191818,deer 191819,truck 191820,frog 191821,ship 191822,cat 191823,frog 191824,dog 191825,truck 191826,truck 191827,airplane 191828,dog 191829,ship 191830,bird 191831,airplane 191832,dog 191833,ship 191834,frog 191835,dog 191836,cat 191837,airplane 191838,deer 191839,airplane 191840,truck 191841,bird 191842,cat 191843,truck 191844,automobile 191845,truck 191846,airplane 191847,frog 191848,cat 191849,deer 191850,deer 191851,truck 191852,ship 191853,bird 191854,truck 191855,cat 191856,deer 191857,horse 191858,frog 191859,truck 191860,frog 191861,ship 191862,dog 191863,horse 191864,ship 191865,bird 191866,deer 191867,horse 191868,cat 191869,frog 191870,deer 191871,truck 191872,deer 191873,airplane 191874,ship 191875,horse 191876,deer 191877,frog 191878,dog 191879,truck 191880,horse 191881,ship 191882,airplane 191883,bird 191884,automobile 191885,automobile 191886,cat 191887,deer 191888,truck 191889,truck 191890,truck 191891,truck 191892,ship 191893,deer 191894,ship 191895,frog 191896,ship 191897,ship 191898,bird 191899,frog 191900,airplane 191901,automobile 191902,airplane 191903,airplane 191904,ship 191905,truck 191906,deer 191907,ship 191908,bird 191909,airplane 191910,ship 191911,airplane 191912,frog 191913,ship 191914,deer 191915,horse 191916,horse 191917,deer 191918,bird 191919,deer 191920,horse 191921,truck 191922,dog 191923,truck 191924,bird 191925,deer 191926,frog 191927,truck 191928,deer 191929,bird 191930,ship 191931,horse 191932,dog 191933,frog 191934,frog 191935,cat 191936,frog 191937,horse 191938,airplane 191939,bird 191940,airplane 191941,airplane 191942,truck 191943,cat 191944,airplane 191945,cat 191946,dog 191947,bird 191948,cat 191949,horse 191950,ship 191951,ship 191952,truck 191953,frog 191954,truck 191955,deer 191956,automobile 191957,cat 191958,bird 191959,airplane 191960,frog 191961,truck 191962,automobile 191963,truck 191964,cat 191965,automobile 191966,ship 191967,ship 191968,horse 191969,frog 191970,dog 191971,cat 191972,frog 191973,automobile 191974,frog 191975,truck 191976,dog 191977,dog 191978,deer 191979,airplane 191980,ship 191981,airplane 191982,horse 191983,frog 191984,automobile 191985,truck 191986,bird 191987,airplane 191988,ship 191989,horse 191990,ship 191991,airplane 191992,bird 191993,truck 191994,ship 191995,automobile 191996,truck 191997,deer 191998,bird 191999,dog 192000,horse 192001,ship 192002,frog 192003,deer 192004,deer 192005,frog 192006,frog 192007,horse 192008,automobile 192009,cat 192010,truck 192011,dog 192012,truck 192013,frog 192014,truck 192015,truck 192016,airplane 192017,truck 192018,bird 192019,bird 192020,horse 192021,truck 192022,frog 192023,ship 192024,truck 192025,cat 192026,truck 192027,horse 192028,bird 192029,airplane 192030,horse 192031,horse 192032,dog 192033,truck 192034,bird 192035,ship 192036,deer 192037,frog 192038,deer 192039,bird 192040,automobile 192041,automobile 192042,truck 192043,cat 192044,ship 192045,cat 192046,cat 192047,horse 192048,dog 192049,deer 192050,frog 192051,cat 192052,dog 192053,truck 192054,deer 192055,horse 192056,truck 192057,dog 192058,deer 192059,deer 192060,frog 192061,frog 192062,cat 192063,bird 192064,cat 192065,horse 192066,bird 192067,cat 192068,dog 192069,dog 192070,horse 192071,bird 192072,airplane 192073,truck 192074,dog 192075,deer 192076,dog 192077,deer 192078,cat 192079,dog 192080,dog 192081,dog 192082,frog 192083,horse 192084,automobile 192085,bird 192086,cat 192087,frog 192088,automobile 192089,airplane 192090,dog 192091,horse 192092,horse 192093,ship 192094,deer 192095,truck 192096,dog 192097,cat 192098,horse 192099,horse 192100,horse 192101,bird 192102,truck 192103,cat 192104,deer 192105,horse 192106,bird 192107,airplane 192108,bird 192109,cat 192110,horse 192111,dog 192112,horse 192113,truck 192114,ship 192115,deer 192116,frog 192117,airplane 192118,cat 192119,ship 192120,deer 192121,bird 192122,horse 192123,cat 192124,truck 192125,deer 192126,deer 192127,horse 192128,cat 192129,deer 192130,cat 192131,deer 192132,airplane 192133,automobile 192134,bird 192135,frog 192136,horse 192137,cat 192138,cat 192139,ship 192140,frog 192141,dog 192142,ship 192143,cat 192144,cat 192145,frog 192146,truck 192147,cat 192148,airplane 192149,deer 192150,deer 192151,airplane 192152,truck 192153,airplane 192154,automobile 192155,cat 192156,truck 192157,automobile 192158,dog 192159,cat 192160,truck 192161,bird 192162,cat 192163,bird 192164,horse 192165,airplane 192166,horse 192167,frog 192168,bird 192169,deer 192170,horse 192171,airplane 192172,frog 192173,truck 192174,bird 192175,dog 192176,frog 192177,truck 192178,airplane 192179,truck 192180,dog 192181,airplane 192182,truck 192183,deer 192184,bird 192185,bird 192186,bird 192187,truck 192188,ship 192189,bird 192190,truck 192191,deer 192192,automobile 192193,automobile 192194,airplane 192195,frog 192196,cat 192197,bird 192198,frog 192199,dog 192200,cat 192201,deer 192202,horse 192203,ship 192204,automobile 192205,ship 192206,frog 192207,truck 192208,cat 192209,deer 192210,bird 192211,automobile 192212,frog 192213,frog 192214,dog 192215,truck 192216,dog 192217,frog 192218,ship 192219,ship 192220,frog 192221,horse 192222,dog 192223,frog 192224,frog 192225,frog 192226,ship 192227,automobile 192228,airplane 192229,bird 192230,horse 192231,ship 192232,truck 192233,truck 192234,dog 192235,dog 192236,deer 192237,airplane 192238,frog 192239,bird 192240,airplane 192241,deer 192242,cat 192243,horse 192244,truck 192245,frog 192246,deer 192247,automobile 192248,horse 192249,frog 192250,airplane 192251,cat 192252,horse 192253,automobile 192254,automobile 192255,frog 192256,dog 192257,ship 192258,frog 192259,deer 192260,truck 192261,truck 192262,bird 192263,deer 192264,ship 192265,cat 192266,deer 192267,horse 192268,cat 192269,frog 192270,frog 192271,cat 192272,deer 192273,horse 192274,horse 192275,truck 192276,automobile 192277,horse 192278,deer 192279,cat 192280,dog 192281,deer 192282,cat 192283,cat 192284,dog 192285,deer 192286,airplane 192287,truck 192288,cat 192289,truck 192290,dog 192291,bird 192292,airplane 192293,ship 192294,dog 192295,horse 192296,bird 192297,automobile 192298,cat 192299,cat 192300,dog 192301,dog 192302,deer 192303,dog 192304,deer 192305,dog 192306,automobile 192307,bird 192308,deer 192309,ship 192310,horse 192311,dog 192312,horse 192313,deer 192314,cat 192315,frog 192316,horse 192317,bird 192318,deer 192319,dog 192320,deer 192321,automobile 192322,cat 192323,deer 192324,automobile 192325,truck 192326,dog 192327,deer 192328,frog 192329,bird 192330,dog 192331,dog 192332,deer 192333,ship 192334,bird 192335,cat 192336,deer 192337,cat 192338,ship 192339,cat 192340,airplane 192341,ship 192342,automobile 192343,airplane 192344,dog 192345,cat 192346,dog 192347,deer 192348,horse 192349,cat 192350,deer 192351,frog 192352,frog 192353,airplane 192354,truck 192355,bird 192356,truck 192357,dog 192358,horse 192359,deer 192360,deer 192361,truck 192362,ship 192363,airplane 192364,airplane 192365,truck 192366,automobile 192367,frog 192368,bird 192369,cat 192370,deer 192371,frog 192372,ship 192373,cat 192374,automobile 192375,ship 192376,airplane 192377,deer 192378,frog 192379,bird 192380,horse 192381,cat 192382,bird 192383,bird 192384,frog 192385,bird 192386,airplane 192387,horse 192388,truck 192389,automobile 192390,airplane 192391,ship 192392,dog 192393,ship 192394,cat 192395,truck 192396,cat 192397,automobile 192398,deer 192399,ship 192400,bird 192401,deer 192402,frog 192403,deer 192404,ship 192405,horse 192406,cat 192407,automobile 192408,bird 192409,horse 192410,automobile 192411,bird 192412,ship 192413,dog 192414,airplane 192415,cat 192416,bird 192417,deer 192418,automobile 192419,airplane 192420,truck 192421,automobile 192422,dog 192423,truck 192424,deer 192425,ship 192426,deer 192427,horse 192428,frog 192429,automobile 192430,cat 192431,airplane 192432,dog 192433,bird 192434,truck 192435,ship 192436,horse 192437,dog 192438,airplane 192439,truck 192440,cat 192441,dog 192442,ship 192443,frog 192444,airplane 192445,dog 192446,frog 192447,dog 192448,airplane 192449,truck 192450,cat 192451,horse 192452,horse 192453,frog 192454,deer 192455,horse 192456,airplane 192457,horse 192458,cat 192459,automobile 192460,frog 192461,cat 192462,bird 192463,dog 192464,truck 192465,horse 192466,dog 192467,bird 192468,bird 192469,dog 192470,dog 192471,dog 192472,deer 192473,automobile 192474,truck 192475,ship 192476,horse 192477,cat 192478,deer 192479,frog 192480,deer 192481,frog 192482,cat 192483,dog 192484,bird 192485,cat 192486,horse 192487,truck 192488,cat 192489,airplane 192490,cat 192491,frog 192492,deer 192493,automobile 192494,deer 192495,frog 192496,truck 192497,truck 192498,truck 192499,truck 192500,dog 192501,automobile 192502,cat 192503,airplane 192504,deer 192505,frog 192506,cat 192507,automobile 192508,truck 192509,horse 192510,dog 192511,cat 192512,deer 192513,cat 192514,deer 192515,ship 192516,horse 192517,dog 192518,frog 192519,airplane 192520,horse 192521,deer 192522,frog 192523,dog 192524,cat 192525,frog 192526,cat 192527,horse 192528,truck 192529,frog 192530,cat 192531,dog 192532,dog 192533,horse 192534,truck 192535,cat 192536,deer 192537,cat 192538,bird 192539,horse 192540,frog 192541,ship 192542,cat 192543,frog 192544,cat 192545,bird 192546,cat 192547,ship 192548,dog 192549,automobile 192550,deer 192551,deer 192552,cat 192553,deer 192554,airplane 192555,dog 192556,frog 192557,airplane 192558,ship 192559,cat 192560,truck 192561,truck 192562,deer 192563,frog 192564,ship 192565,frog 192566,horse 192567,frog 192568,deer 192569,deer 192570,frog 192571,cat 192572,frog 192573,dog 192574,truck 192575,airplane 192576,cat 192577,horse 192578,dog 192579,bird 192580,deer 192581,horse 192582,airplane 192583,truck 192584,bird 192585,frog 192586,automobile 192587,dog 192588,dog 192589,airplane 192590,horse 192591,ship 192592,ship 192593,dog 192594,cat 192595,dog 192596,horse 192597,truck 192598,deer 192599,ship 192600,deer 192601,deer 192602,dog 192603,deer 192604,automobile 192605,deer 192606,deer 192607,airplane 192608,horse 192609,truck 192610,deer 192611,deer 192612,airplane 192613,horse 192614,automobile 192615,deer 192616,automobile 192617,truck 192618,airplane 192619,deer 192620,deer 192621,frog 192622,deer 192623,airplane 192624,bird 192625,ship 192626,airplane 192627,ship 192628,deer 192629,ship 192630,frog 192631,airplane 192632,cat 192633,frog 192634,horse 192635,cat 192636,deer 192637,automobile 192638,horse 192639,bird 192640,cat 192641,truck 192642,airplane 192643,truck 192644,frog 192645,frog 192646,airplane 192647,automobile 192648,cat 192649,truck 192650,cat 192651,cat 192652,deer 192653,cat 192654,cat 192655,bird 192656,automobile 192657,cat 192658,dog 192659,dog 192660,frog 192661,bird 192662,airplane 192663,frog 192664,cat 192665,automobile 192666,ship 192667,truck 192668,dog 192669,truck 192670,horse 192671,airplane 192672,deer 192673,ship 192674,truck 192675,dog 192676,deer 192677,deer 192678,truck 192679,truck 192680,dog 192681,ship 192682,airplane 192683,deer 192684,bird 192685,cat 192686,deer 192687,horse 192688,bird 192689,frog 192690,cat 192691,dog 192692,frog 192693,horse 192694,airplane 192695,airplane 192696,cat 192697,automobile 192698,automobile 192699,deer 192700,ship 192701,cat 192702,cat 192703,deer 192704,truck 192705,ship 192706,dog 192707,automobile 192708,deer 192709,truck 192710,cat 192711,bird 192712,dog 192713,deer 192714,airplane 192715,bird 192716,dog 192717,deer 192718,dog 192719,airplane 192720,cat 192721,automobile 192722,frog 192723,horse 192724,truck 192725,automobile 192726,airplane 192727,cat 192728,airplane 192729,airplane 192730,deer 192731,airplane 192732,automobile 192733,cat 192734,deer 192735,cat 192736,deer 192737,deer 192738,truck 192739,ship 192740,truck 192741,deer 192742,ship 192743,bird 192744,deer 192745,frog 192746,airplane 192747,deer 192748,cat 192749,dog 192750,horse 192751,deer 192752,truck 192753,truck 192754,deer 192755,bird 192756,cat 192757,truck 192758,horse 192759,dog 192760,horse 192761,cat 192762,bird 192763,ship 192764,horse 192765,truck 192766,cat 192767,bird 192768,ship 192769,deer 192770,horse 192771,automobile 192772,deer 192773,frog 192774,bird 192775,dog 192776,frog 192777,dog 192778,horse 192779,deer 192780,airplane 192781,cat 192782,cat 192783,truck 192784,ship 192785,ship 192786,bird 192787,horse 192788,ship 192789,cat 192790,cat 192791,deer 192792,truck 192793,ship 192794,truck 192795,deer 192796,automobile 192797,automobile 192798,horse 192799,dog 192800,frog 192801,deer 192802,deer 192803,truck 192804,horse 192805,truck 192806,dog 192807,cat 192808,deer 192809,airplane 192810,cat 192811,bird 192812,horse 192813,automobile 192814,truck 192815,truck 192816,truck 192817,bird 192818,horse 192819,airplane 192820,frog 192821,ship 192822,frog 192823,ship 192824,dog 192825,horse 192826,airplane 192827,airplane 192828,ship 192829,dog 192830,deer 192831,cat 192832,ship 192833,dog 192834,horse 192835,truck 192836,frog 192837,frog 192838,deer 192839,horse 192840,horse 192841,airplane 192842,dog 192843,truck 192844,ship 192845,ship 192846,ship 192847,dog 192848,bird 192849,deer 192850,deer 192851,ship 192852,deer 192853,frog 192854,horse 192855,deer 192856,frog 192857,automobile 192858,bird 192859,frog 192860,horse 192861,deer 192862,cat 192863,dog 192864,deer 192865,bird 192866,automobile 192867,deer 192868,truck 192869,cat 192870,ship 192871,bird 192872,deer 192873,truck 192874,dog 192875,frog 192876,ship 192877,automobile 192878,cat 192879,ship 192880,dog 192881,dog 192882,airplane 192883,automobile 192884,airplane 192885,dog 192886,truck 192887,truck 192888,ship 192889,cat 192890,cat 192891,horse 192892,automobile 192893,ship 192894,dog 192895,cat 192896,frog 192897,cat 192898,dog 192899,cat 192900,cat 192901,airplane 192902,frog 192903,ship 192904,bird 192905,frog 192906,cat 192907,airplane 192908,automobile 192909,cat 192910,deer 192911,truck 192912,bird 192913,dog 192914,deer 192915,deer 192916,horse 192917,cat 192918,truck 192919,frog 192920,ship 192921,airplane 192922,cat 192923,bird 192924,frog 192925,bird 192926,airplane 192927,bird 192928,cat 192929,automobile 192930,truck 192931,cat 192932,frog 192933,deer 192934,truck 192935,dog 192936,ship 192937,automobile 192938,horse 192939,airplane 192940,cat 192941,deer 192942,horse 192943,truck 192944,bird 192945,bird 192946,dog 192947,truck 192948,bird 192949,bird 192950,truck 192951,cat 192952,dog 192953,frog 192954,dog 192955,cat 192956,cat 192957,deer 192958,airplane 192959,airplane 192960,truck 192961,truck 192962,horse 192963,truck 192964,bird 192965,bird 192966,frog 192967,deer 192968,cat 192969,airplane 192970,truck 192971,frog 192972,deer 192973,truck 192974,bird 192975,ship 192976,dog 192977,cat 192978,airplane 192979,cat 192980,cat 192981,bird 192982,cat 192983,deer 192984,frog 192985,frog 192986,bird 192987,airplane 192988,ship 192989,frog 192990,truck 192991,dog 192992,horse 192993,cat 192994,ship 192995,automobile 192996,bird 192997,automobile 192998,automobile 192999,deer 193000,airplane 193001,cat 193002,dog 193003,bird 193004,airplane 193005,cat 193006,truck 193007,airplane 193008,automobile 193009,cat 193010,bird 193011,deer 193012,frog 193013,deer 193014,frog 193015,truck 193016,frog 193017,bird 193018,deer 193019,airplane 193020,horse 193021,cat 193022,cat 193023,horse 193024,frog 193025,ship 193026,deer 193027,truck 193028,airplane 193029,horse 193030,frog 193031,deer 193032,airplane 193033,deer 193034,bird 193035,bird 193036,dog 193037,deer 193038,truck 193039,automobile 193040,ship 193041,horse 193042,frog 193043,deer 193044,automobile 193045,horse 193046,truck 193047,automobile 193048,horse 193049,ship 193050,truck 193051,bird 193052,automobile 193053,frog 193054,frog 193055,cat 193056,horse 193057,horse 193058,cat 193059,frog 193060,automobile 193061,airplane 193062,deer 193063,ship 193064,automobile 193065,truck 193066,truck 193067,ship 193068,airplane 193069,truck 193070,automobile 193071,dog 193072,frog 193073,horse 193074,bird 193075,horse 193076,deer 193077,horse 193078,airplane 193079,horse 193080,bird 193081,horse 193082,dog 193083,deer 193084,ship 193085,frog 193086,cat 193087,truck 193088,truck 193089,cat 193090,ship 193091,ship 193092,horse 193093,deer 193094,deer 193095,frog 193096,frog 193097,dog 193098,deer 193099,bird 193100,airplane 193101,airplane 193102,deer 193103,frog 193104,bird 193105,ship 193106,deer 193107,cat 193108,deer 193109,dog 193110,horse 193111,automobile 193112,bird 193113,horse 193114,airplane 193115,cat 193116,truck 193117,frog 193118,truck 193119,deer 193120,airplane 193121,dog 193122,airplane 193123,airplane 193124,bird 193125,bird 193126,deer 193127,airplane 193128,deer 193129,horse 193130,frog 193131,airplane 193132,automobile 193133,cat 193134,frog 193135,deer 193136,airplane 193137,airplane 193138,automobile 193139,horse 193140,bird 193141,deer 193142,ship 193143,bird 193144,cat 193145,frog 193146,ship 193147,truck 193148,horse 193149,automobile 193150,airplane 193151,deer 193152,deer 193153,automobile 193154,truck 193155,deer 193156,frog 193157,airplane 193158,frog 193159,bird 193160,horse 193161,truck 193162,horse 193163,dog 193164,frog 193165,airplane 193166,deer 193167,ship 193168,airplane 193169,airplane 193170,dog 193171,deer 193172,ship 193173,ship 193174,horse 193175,dog 193176,bird 193177,horse 193178,horse 193179,horse 193180,ship 193181,automobile 193182,truck 193183,automobile 193184,deer 193185,dog 193186,cat 193187,horse 193188,truck 193189,dog 193190,bird 193191,truck 193192,frog 193193,frog 193194,ship 193195,truck 193196,airplane 193197,airplane 193198,horse 193199,horse 193200,bird 193201,truck 193202,horse 193203,frog 193204,automobile 193205,automobile 193206,cat 193207,deer 193208,horse 193209,deer 193210,dog 193211,cat 193212,dog 193213,automobile 193214,airplane 193215,dog 193216,deer 193217,dog 193218,deer 193219,deer 193220,automobile 193221,dog 193222,deer 193223,bird 193224,bird 193225,bird 193226,airplane 193227,airplane 193228,deer 193229,deer 193230,dog 193231,truck 193232,cat 193233,frog 193234,horse 193235,truck 193236,cat 193237,ship 193238,frog 193239,deer 193240,horse 193241,bird 193242,cat 193243,bird 193244,bird 193245,dog 193246,deer 193247,frog 193248,airplane 193249,bird 193250,deer 193251,horse 193252,truck 193253,deer 193254,cat 193255,cat 193256,deer 193257,dog 193258,truck 193259,airplane 193260,frog 193261,truck 193262,cat 193263,airplane 193264,dog 193265,bird 193266,horse 193267,frog 193268,deer 193269,airplane 193270,airplane 193271,frog 193272,horse 193273,dog 193274,cat 193275,dog 193276,horse 193277,automobile 193278,cat 193279,airplane 193280,airplane 193281,dog 193282,automobile 193283,frog 193284,horse 193285,dog 193286,ship 193287,cat 193288,bird 193289,automobile 193290,deer 193291,airplane 193292,frog 193293,deer 193294,cat 193295,truck 193296,frog 193297,bird 193298,frog 193299,deer 193300,deer 193301,cat 193302,cat 193303,truck 193304,truck 193305,dog 193306,truck 193307,truck 193308,bird 193309,frog 193310,cat 193311,airplane 193312,automobile 193313,deer 193314,truck 193315,deer 193316,cat 193317,dog 193318,truck 193319,dog 193320,cat 193321,frog 193322,frog 193323,horse 193324,truck 193325,deer 193326,horse 193327,horse 193328,bird 193329,dog 193330,dog 193331,automobile 193332,horse 193333,automobile 193334,airplane 193335,airplane 193336,horse 193337,ship 193338,dog 193339,automobile 193340,automobile 193341,horse 193342,dog 193343,dog 193344,automobile 193345,bird 193346,frog 193347,airplane 193348,horse 193349,bird 193350,automobile 193351,cat 193352,dog 193353,cat 193354,truck 193355,ship 193356,automobile 193357,cat 193358,frog 193359,frog 193360,truck 193361,dog 193362,bird 193363,truck 193364,cat 193365,cat 193366,cat 193367,frog 193368,deer 193369,horse 193370,bird 193371,automobile 193372,automobile 193373,horse 193374,deer 193375,frog 193376,frog 193377,deer 193378,deer 193379,deer 193380,frog 193381,frog 193382,cat 193383,cat 193384,dog 193385,deer 193386,airplane 193387,airplane 193388,ship 193389,frog 193390,cat 193391,frog 193392,automobile 193393,deer 193394,frog 193395,automobile 193396,airplane 193397,cat 193398,bird 193399,ship 193400,deer 193401,horse 193402,ship 193403,cat 193404,dog 193405,deer 193406,bird 193407,ship 193408,airplane 193409,dog 193410,frog 193411,bird 193412,automobile 193413,automobile 193414,deer 193415,frog 193416,horse 193417,horse 193418,deer 193419,automobile 193420,ship 193421,dog 193422,truck 193423,bird 193424,cat 193425,airplane 193426,dog 193427,horse 193428,truck 193429,dog 193430,cat 193431,dog 193432,truck 193433,truck 193434,bird 193435,cat 193436,dog 193437,ship 193438,truck 193439,dog 193440,dog 193441,deer 193442,ship 193443,ship 193444,automobile 193445,airplane 193446,ship 193447,ship 193448,dog 193449,ship 193450,deer 193451,cat 193452,cat 193453,deer 193454,deer 193455,dog 193456,frog 193457,automobile 193458,frog 193459,cat 193460,bird 193461,airplane 193462,deer 193463,deer 193464,cat 193465,dog 193466,cat 193467,frog 193468,ship 193469,dog 193470,frog 193471,bird 193472,truck 193473,truck 193474,dog 193475,horse 193476,automobile 193477,airplane 193478,truck 193479,horse 193480,truck 193481,automobile 193482,bird 193483,cat 193484,deer 193485,ship 193486,ship 193487,airplane 193488,dog 193489,dog 193490,airplane 193491,cat 193492,frog 193493,ship 193494,ship 193495,cat 193496,horse 193497,dog 193498,frog 193499,dog 193500,airplane 193501,airplane 193502,cat 193503,cat 193504,horse 193505,deer 193506,dog 193507,airplane 193508,cat 193509,airplane 193510,deer 193511,automobile 193512,truck 193513,cat 193514,bird 193515,dog 193516,dog 193517,truck 193518,horse 193519,deer 193520,automobile 193521,bird 193522,airplane 193523,airplane 193524,deer 193525,bird 193526,bird 193527,truck 193528,frog 193529,automobile 193530,horse 193531,airplane 193532,frog 193533,deer 193534,truck 193535,cat 193536,frog 193537,airplane 193538,airplane 193539,bird 193540,dog 193541,horse 193542,frog 193543,bird 193544,cat 193545,airplane 193546,automobile 193547,deer 193548,truck 193549,deer 193550,automobile 193551,dog 193552,horse 193553,automobile 193554,ship 193555,dog 193556,bird 193557,horse 193558,ship 193559,airplane 193560,dog 193561,truck 193562,bird 193563,airplane 193564,automobile 193565,frog 193566,cat 193567,airplane 193568,bird 193569,airplane 193570,airplane 193571,bird 193572,cat 193573,ship 193574,airplane 193575,dog 193576,deer 193577,truck 193578,cat 193579,deer 193580,horse 193581,frog 193582,deer 193583,automobile 193584,horse 193585,horse 193586,deer 193587,frog 193588,ship 193589,frog 193590,frog 193591,frog 193592,horse 193593,cat 193594,automobile 193595,truck 193596,frog 193597,deer 193598,frog 193599,ship 193600,horse 193601,ship 193602,cat 193603,horse 193604,airplane 193605,horse 193606,frog 193607,ship 193608,cat 193609,horse 193610,dog 193611,frog 193612,ship 193613,bird 193614,bird 193615,cat 193616,cat 193617,ship 193618,dog 193619,cat 193620,dog 193621,cat 193622,dog 193623,cat 193624,ship 193625,horse 193626,cat 193627,frog 193628,bird 193629,dog 193630,truck 193631,ship 193632,horse 193633,horse 193634,airplane 193635,dog 193636,truck 193637,deer 193638,automobile 193639,horse 193640,horse 193641,cat 193642,deer 193643,ship 193644,ship 193645,cat 193646,ship 193647,ship 193648,frog 193649,cat 193650,bird 193651,ship 193652,cat 193653,deer 193654,ship 193655,airplane 193656,frog 193657,bird 193658,bird 193659,automobile 193660,cat 193661,ship 193662,truck 193663,frog 193664,bird 193665,horse 193666,truck 193667,frog 193668,airplane 193669,horse 193670,airplane 193671,dog 193672,horse 193673,ship 193674,bird 193675,deer 193676,truck 193677,deer 193678,frog 193679,bird 193680,automobile 193681,horse 193682,bird 193683,cat 193684,frog 193685,automobile 193686,frog 193687,ship 193688,truck 193689,truck 193690,horse 193691,truck 193692,truck 193693,cat 193694,dog 193695,cat 193696,truck 193697,frog 193698,ship 193699,frog 193700,bird 193701,dog 193702,deer 193703,frog 193704,cat 193705,horse 193706,cat 193707,frog 193708,bird 193709,horse 193710,ship 193711,truck 193712,deer 193713,airplane 193714,truck 193715,horse 193716,horse 193717,truck 193718,frog 193719,deer 193720,deer 193721,deer 193722,frog 193723,bird 193724,ship 193725,bird 193726,horse 193727,frog 193728,deer 193729,frog 193730,cat 193731,cat 193732,cat 193733,dog 193734,truck 193735,deer 193736,horse 193737,deer 193738,automobile 193739,horse 193740,dog 193741,frog 193742,truck 193743,ship 193744,deer 193745,deer 193746,frog 193747,cat 193748,truck 193749,deer 193750,dog 193751,deer 193752,horse 193753,horse 193754,cat 193755,deer 193756,frog 193757,frog 193758,truck 193759,ship 193760,cat 193761,airplane 193762,truck 193763,ship 193764,deer 193765,deer 193766,horse 193767,bird 193768,frog 193769,horse 193770,dog 193771,truck 193772,automobile 193773,ship 193774,deer 193775,cat 193776,bird 193777,truck 193778,dog 193779,automobile 193780,cat 193781,dog 193782,ship 193783,cat 193784,horse 193785,airplane 193786,deer 193787,dog 193788,deer 193789,deer 193790,deer 193791,cat 193792,dog 193793,deer 193794,ship 193795,ship 193796,truck 193797,dog 193798,ship 193799,truck 193800,frog 193801,airplane 193802,deer 193803,cat 193804,ship 193805,automobile 193806,automobile 193807,deer 193808,automobile 193809,airplane 193810,ship 193811,airplane 193812,dog 193813,ship 193814,frog 193815,deer 193816,deer 193817,dog 193818,truck 193819,frog 193820,truck 193821,automobile 193822,dog 193823,airplane 193824,airplane 193825,dog 193826,airplane 193827,ship 193828,cat 193829,deer 193830,bird 193831,dog 193832,horse 193833,bird 193834,cat 193835,deer 193836,automobile 193837,dog 193838,frog 193839,ship 193840,bird 193841,cat 193842,truck 193843,automobile 193844,dog 193845,ship 193846,ship 193847,airplane 193848,bird 193849,dog 193850,deer 193851,airplane 193852,horse 193853,cat 193854,bird 193855,dog 193856,cat 193857,deer 193858,cat 193859,frog 193860,frog 193861,horse 193862,dog 193863,deer 193864,dog 193865,horse 193866,cat 193867,horse 193868,automobile 193869,ship 193870,frog 193871,deer 193872,frog 193873,truck 193874,cat 193875,automobile 193876,ship 193877,frog 193878,bird 193879,dog 193880,truck 193881,cat 193882,automobile 193883,dog 193884,ship 193885,ship 193886,deer 193887,frog 193888,automobile 193889,truck 193890,deer 193891,ship 193892,frog 193893,horse 193894,horse 193895,truck 193896,horse 193897,truck 193898,horse 193899,dog 193900,bird 193901,horse 193902,ship 193903,automobile 193904,cat 193905,bird 193906,frog 193907,airplane 193908,bird 193909,airplane 193910,frog 193911,airplane 193912,airplane 193913,automobile 193914,frog 193915,automobile 193916,deer 193917,airplane 193918,frog 193919,airplane 193920,automobile 193921,truck 193922,automobile 193923,truck 193924,airplane 193925,truck 193926,dog 193927,dog 193928,bird 193929,dog 193930,horse 193931,deer 193932,bird 193933,truck 193934,bird 193935,cat 193936,dog 193937,deer 193938,frog 193939,ship 193940,horse 193941,automobile 193942,dog 193943,deer 193944,airplane 193945,frog 193946,airplane 193947,deer 193948,bird 193949,automobile 193950,deer 193951,dog 193952,deer 193953,truck 193954,automobile 193955,horse 193956,frog 193957,dog 193958,frog 193959,horse 193960,airplane 193961,cat 193962,bird 193963,ship 193964,horse 193965,ship 193966,horse 193967,automobile 193968,automobile 193969,cat 193970,deer 193971,dog 193972,ship 193973,dog 193974,dog 193975,deer 193976,cat 193977,cat 193978,truck 193979,frog 193980,deer 193981,horse 193982,deer 193983,automobile 193984,dog 193985,cat 193986,airplane 193987,cat 193988,truck 193989,truck 193990,dog 193991,deer 193992,cat 193993,dog 193994,automobile 193995,dog 193996,cat 193997,deer 193998,ship 193999,truck 194000,deer 194001,deer 194002,horse 194003,bird 194004,automobile 194005,horse 194006,deer 194007,truck 194008,cat 194009,dog 194010,automobile 194011,dog 194012,frog 194013,airplane 194014,frog 194015,automobile 194016,dog 194017,deer 194018,horse 194019,dog 194020,automobile 194021,deer 194022,automobile 194023,deer 194024,deer 194025,frog 194026,ship 194027,bird 194028,automobile 194029,cat 194030,airplane 194031,truck 194032,bird 194033,truck 194034,horse 194035,dog 194036,bird 194037,dog 194038,ship 194039,cat 194040,ship 194041,truck 194042,bird 194043,truck 194044,ship 194045,automobile 194046,dog 194047,ship 194048,airplane 194049,cat 194050,truck 194051,airplane 194052,horse 194053,frog 194054,bird 194055,dog 194056,cat 194057,truck 194058,frog 194059,ship 194060,airplane 194061,cat 194062,deer 194063,cat 194064,horse 194065,bird 194066,dog 194067,truck 194068,horse 194069,cat 194070,ship 194071,ship 194072,truck 194073,bird 194074,horse 194075,bird 194076,truck 194077,automobile 194078,automobile 194079,frog 194080,cat 194081,horse 194082,deer 194083,frog 194084,bird 194085,deer 194086,airplane 194087,deer 194088,airplane 194089,dog 194090,truck 194091,dog 194092,horse 194093,dog 194094,frog 194095,frog 194096,deer 194097,truck 194098,horse 194099,airplane 194100,truck 194101,deer 194102,frog 194103,dog 194104,ship 194105,dog 194106,automobile 194107,cat 194108,bird 194109,cat 194110,horse 194111,automobile 194112,horse 194113,dog 194114,deer 194115,cat 194116,horse 194117,bird 194118,truck 194119,dog 194120,ship 194121,horse 194122,dog 194123,dog 194124,dog 194125,ship 194126,deer 194127,frog 194128,ship 194129,horse 194130,horse 194131,truck 194132,deer 194133,bird 194134,deer 194135,bird 194136,deer 194137,deer 194138,deer 194139,ship 194140,cat 194141,horse 194142,bird 194143,ship 194144,cat 194145,horse 194146,airplane 194147,bird 194148,deer 194149,deer 194150,cat 194151,frog 194152,deer 194153,horse 194154,automobile 194155,truck 194156,ship 194157,cat 194158,automobile 194159,cat 194160,automobile 194161,ship 194162,airplane 194163,deer 194164,dog 194165,airplane 194166,dog 194167,deer 194168,frog 194169,dog 194170,truck 194171,cat 194172,ship 194173,frog 194174,frog 194175,airplane 194176,deer 194177,bird 194178,dog 194179,automobile 194180,cat 194181,bird 194182,cat 194183,cat 194184,horse 194185,ship 194186,frog 194187,deer 194188,horse 194189,deer 194190,truck 194191,airplane 194192,dog 194193,automobile 194194,truck 194195,ship 194196,truck 194197,bird 194198,frog 194199,ship 194200,horse 194201,automobile 194202,frog 194203,deer 194204,frog 194205,frog 194206,ship 194207,cat 194208,cat 194209,frog 194210,automobile 194211,frog 194212,dog 194213,deer 194214,bird 194215,automobile 194216,ship 194217,truck 194218,airplane 194219,bird 194220,dog 194221,airplane 194222,deer 194223,deer 194224,bird 194225,horse 194226,airplane 194227,cat 194228,frog 194229,automobile 194230,ship 194231,deer 194232,ship 194233,dog 194234,frog 194235,deer 194236,horse 194237,ship 194238,cat 194239,automobile 194240,ship 194241,ship 194242,frog 194243,frog 194244,truck 194245,horse 194246,ship 194247,deer 194248,dog 194249,bird 194250,bird 194251,airplane 194252,truck 194253,truck 194254,frog 194255,frog 194256,horse 194257,cat 194258,bird 194259,automobile 194260,ship 194261,deer 194262,horse 194263,deer 194264,bird 194265,frog 194266,dog 194267,horse 194268,deer 194269,horse 194270,deer 194271,deer 194272,dog 194273,bird 194274,bird 194275,truck 194276,truck 194277,deer 194278,horse 194279,ship 194280,frog 194281,cat 194282,airplane 194283,cat 194284,truck 194285,deer 194286,automobile 194287,dog 194288,deer 194289,truck 194290,ship 194291,bird 194292,truck 194293,cat 194294,deer 194295,airplane 194296,deer 194297,airplane 194298,automobile 194299,deer 194300,horse 194301,automobile 194302,cat 194303,truck 194304,ship 194305,dog 194306,truck 194307,bird 194308,deer 194309,dog 194310,airplane 194311,bird 194312,deer 194313,truck 194314,bird 194315,deer 194316,bird 194317,frog 194318,horse 194319,deer 194320,airplane 194321,deer 194322,truck 194323,deer 194324,automobile 194325,truck 194326,automobile 194327,frog 194328,cat 194329,truck 194330,deer 194331,cat 194332,frog 194333,frog 194334,dog 194335,automobile 194336,ship 194337,horse 194338,bird 194339,horse 194340,deer 194341,ship 194342,horse 194343,deer 194344,deer 194345,horse 194346,frog 194347,deer 194348,deer 194349,automobile 194350,cat 194351,deer 194352,frog 194353,automobile 194354,truck 194355,automobile 194356,deer 194357,bird 194358,airplane 194359,airplane 194360,airplane 194361,bird 194362,deer 194363,deer 194364,deer 194365,automobile 194366,horse 194367,truck 194368,airplane 194369,cat 194370,deer 194371,ship 194372,frog 194373,frog 194374,automobile 194375,dog 194376,ship 194377,airplane 194378,horse 194379,dog 194380,deer 194381,frog 194382,airplane 194383,ship 194384,deer 194385,cat 194386,dog 194387,horse 194388,deer 194389,deer 194390,bird 194391,cat 194392,deer 194393,ship 194394,deer 194395,bird 194396,deer 194397,cat 194398,horse 194399,frog 194400,dog 194401,bird 194402,automobile 194403,deer 194404,horse 194405,truck 194406,horse 194407,deer 194408,bird 194409,dog 194410,cat 194411,dog 194412,dog 194413,frog 194414,cat 194415,deer 194416,frog 194417,cat 194418,deer 194419,airplane 194420,ship 194421,airplane 194422,dog 194423,truck 194424,horse 194425,truck 194426,cat 194427,airplane 194428,dog 194429,deer 194430,truck 194431,airplane 194432,frog 194433,bird 194434,airplane 194435,bird 194436,truck 194437,horse 194438,ship 194439,airplane 194440,airplane 194441,dog 194442,bird 194443,deer 194444,automobile 194445,dog 194446,cat 194447,airplane 194448,cat 194449,deer 194450,ship 194451,airplane 194452,automobile 194453,dog 194454,airplane 194455,horse 194456,airplane 194457,cat 194458,deer 194459,deer 194460,frog 194461,ship 194462,cat 194463,horse 194464,automobile 194465,truck 194466,cat 194467,deer 194468,deer 194469,deer 194470,cat 194471,bird 194472,truck 194473,horse 194474,truck 194475,truck 194476,truck 194477,automobile 194478,bird 194479,deer 194480,airplane 194481,horse 194482,dog 194483,truck 194484,deer 194485,horse 194486,truck 194487,automobile 194488,airplane 194489,airplane 194490,bird 194491,cat 194492,horse 194493,horse 194494,bird 194495,automobile 194496,airplane 194497,truck 194498,deer 194499,truck 194500,deer 194501,airplane 194502,horse 194503,cat 194504,deer 194505,automobile 194506,airplane 194507,bird 194508,horse 194509,frog 194510,deer 194511,horse 194512,frog 194513,automobile 194514,dog 194515,bird 194516,frog 194517,deer 194518,ship 194519,ship 194520,ship 194521,frog 194522,automobile 194523,ship 194524,truck 194525,frog 194526,frog 194527,frog 194528,bird 194529,horse 194530,dog 194531,frog 194532,dog 194533,bird 194534,bird 194535,truck 194536,dog 194537,airplane 194538,bird 194539,horse 194540,truck 194541,horse 194542,frog 194543,truck 194544,airplane 194545,frog 194546,ship 194547,truck 194548,cat 194549,horse 194550,airplane 194551,bird 194552,cat 194553,airplane 194554,automobile 194555,truck 194556,deer 194557,bird 194558,ship 194559,airplane 194560,frog 194561,horse 194562,dog 194563,dog 194564,truck 194565,ship 194566,cat 194567,cat 194568,cat 194569,cat 194570,ship 194571,horse 194572,bird 194573,bird 194574,horse 194575,cat 194576,dog 194577,bird 194578,ship 194579,truck 194580,deer 194581,frog 194582,frog 194583,dog 194584,deer 194585,deer 194586,frog 194587,truck 194588,ship 194589,frog 194590,cat 194591,dog 194592,deer 194593,horse 194594,horse 194595,bird 194596,dog 194597,frog 194598,deer 194599,truck 194600,deer 194601,bird 194602,bird 194603,horse 194604,cat 194605,airplane 194606,horse 194607,horse 194608,automobile 194609,automobile 194610,ship 194611,deer 194612,ship 194613,truck 194614,cat 194615,truck 194616,cat 194617,frog 194618,horse 194619,horse 194620,dog 194621,cat 194622,cat 194623,deer 194624,bird 194625,airplane 194626,frog 194627,airplane 194628,horse 194629,truck 194630,ship 194631,deer 194632,deer 194633,truck 194634,horse 194635,horse 194636,automobile 194637,bird 194638,airplane 194639,deer 194640,deer 194641,ship 194642,ship 194643,ship 194644,frog 194645,horse 194646,automobile 194647,dog 194648,truck 194649,horse 194650,cat 194651,bird 194652,airplane 194653,automobile 194654,ship 194655,airplane 194656,cat 194657,dog 194658,deer 194659,truck 194660,bird 194661,frog 194662,deer 194663,horse 194664,airplane 194665,deer 194666,cat 194667,bird 194668,ship 194669,frog 194670,deer 194671,cat 194672,frog 194673,horse 194674,frog 194675,airplane 194676,frog 194677,truck 194678,bird 194679,deer 194680,airplane 194681,dog 194682,bird 194683,bird 194684,cat 194685,deer 194686,automobile 194687,truck 194688,cat 194689,dog 194690,cat 194691,frog 194692,ship 194693,airplane 194694,cat 194695,cat 194696,dog 194697,cat 194698,dog 194699,truck 194700,dog 194701,bird 194702,horse 194703,bird 194704,horse 194705,automobile 194706,ship 194707,airplane 194708,deer 194709,bird 194710,deer 194711,automobile 194712,cat 194713,deer 194714,truck 194715,ship 194716,dog 194717,frog 194718,deer 194719,dog 194720,horse 194721,deer 194722,cat 194723,frog 194724,deer 194725,horse 194726,cat 194727,bird 194728,cat 194729,deer 194730,airplane 194731,truck 194732,automobile 194733,dog 194734,cat 194735,airplane 194736,dog 194737,cat 194738,cat 194739,frog 194740,truck 194741,dog 194742,cat 194743,horse 194744,dog 194745,airplane 194746,dog 194747,cat 194748,cat 194749,airplane 194750,automobile 194751,ship 194752,frog 194753,frog 194754,frog 194755,cat 194756,horse 194757,deer 194758,airplane 194759,cat 194760,deer 194761,cat 194762,bird 194763,dog 194764,cat 194765,deer 194766,frog 194767,automobile 194768,horse 194769,ship 194770,deer 194771,horse 194772,frog 194773,cat 194774,horse 194775,horse 194776,frog 194777,dog 194778,horse 194779,airplane 194780,dog 194781,dog 194782,horse 194783,horse 194784,frog 194785,bird 194786,frog 194787,deer 194788,dog 194789,bird 194790,deer 194791,horse 194792,ship 194793,cat 194794,frog 194795,cat 194796,truck 194797,cat 194798,deer 194799,deer 194800,deer 194801,deer 194802,ship 194803,ship 194804,deer 194805,dog 194806,airplane 194807,cat 194808,truck 194809,truck 194810,automobile 194811,ship 194812,airplane 194813,horse 194814,ship 194815,deer 194816,cat 194817,horse 194818,truck 194819,truck 194820,airplane 194821,automobile 194822,bird 194823,cat 194824,automobile 194825,cat 194826,dog 194827,horse 194828,deer 194829,horse 194830,horse 194831,horse 194832,ship 194833,horse 194834,dog 194835,cat 194836,cat 194837,deer 194838,automobile 194839,airplane 194840,deer 194841,deer 194842,airplane 194843,deer 194844,dog 194845,deer 194846,deer 194847,dog 194848,truck 194849,deer 194850,frog 194851,dog 194852,frog 194853,deer 194854,ship 194855,cat 194856,cat 194857,dog 194858,truck 194859,deer 194860,ship 194861,deer 194862,horse 194863,cat 194864,truck 194865,cat 194866,deer 194867,frog 194868,bird 194869,truck 194870,frog 194871,bird 194872,airplane 194873,cat 194874,frog 194875,ship 194876,horse 194877,frog 194878,dog 194879,airplane 194880,truck 194881,horse 194882,cat 194883,cat 194884,airplane 194885,deer 194886,cat 194887,automobile 194888,dog 194889,frog 194890,horse 194891,airplane 194892,cat 194893,deer 194894,automobile 194895,dog 194896,dog 194897,deer 194898,bird 194899,cat 194900,truck 194901,cat 194902,ship 194903,deer 194904,deer 194905,horse 194906,automobile 194907,automobile 194908,truck 194909,deer 194910,airplane 194911,frog 194912,frog 194913,bird 194914,dog 194915,ship 194916,dog 194917,truck 194918,automobile 194919,bird 194920,frog 194921,bird 194922,cat 194923,deer 194924,dog 194925,automobile 194926,cat 194927,truck 194928,frog 194929,dog 194930,cat 194931,bird 194932,airplane 194933,cat 194934,truck 194935,dog 194936,bird 194937,cat 194938,cat 194939,deer 194940,truck 194941,automobile 194942,horse 194943,bird 194944,frog 194945,airplane 194946,frog 194947,automobile 194948,airplane 194949,frog 194950,frog 194951,truck 194952,cat 194953,truck 194954,horse 194955,horse 194956,truck 194957,dog 194958,horse 194959,dog 194960,deer 194961,deer 194962,frog 194963,deer 194964,bird 194965,horse 194966,horse 194967,truck 194968,bird 194969,airplane 194970,cat 194971,horse 194972,bird 194973,frog 194974,frog 194975,dog 194976,bird 194977,automobile 194978,frog 194979,frog 194980,truck 194981,airplane 194982,airplane 194983,horse 194984,cat 194985,bird 194986,cat 194987,frog 194988,ship 194989,ship 194990,frog 194991,cat 194992,bird 194993,dog 194994,bird 194995,horse 194996,cat 194997,truck 194998,bird 194999,deer 195000,frog 195001,truck 195002,dog 195003,automobile 195004,ship 195005,dog 195006,deer 195007,cat 195008,dog 195009,dog 195010,deer 195011,cat 195012,automobile 195013,deer 195014,horse 195015,dog 195016,frog 195017,dog 195018,horse 195019,bird 195020,automobile 195021,airplane 195022,automobile 195023,cat 195024,ship 195025,truck 195026,deer 195027,bird 195028,cat 195029,truck 195030,dog 195031,truck 195032,automobile 195033,bird 195034,cat 195035,frog 195036,truck 195037,truck 195038,bird 195039,truck 195040,truck 195041,deer 195042,cat 195043,horse 195044,dog 195045,truck 195046,horse 195047,cat 195048,ship 195049,deer 195050,automobile 195051,deer 195052,ship 195053,deer 195054,dog 195055,ship 195056,dog 195057,dog 195058,ship 195059,horse 195060,cat 195061,automobile 195062,truck 195063,airplane 195064,deer 195065,frog 195066,cat 195067,cat 195068,ship 195069,cat 195070,bird 195071,frog 195072,horse 195073,dog 195074,deer 195075,ship 195076,dog 195077,airplane 195078,truck 195079,deer 195080,cat 195081,truck 195082,airplane 195083,bird 195084,truck 195085,automobile 195086,truck 195087,horse 195088,ship 195089,bird 195090,automobile 195091,deer 195092,deer 195093,horse 195094,cat 195095,automobile 195096,frog 195097,dog 195098,ship 195099,frog 195100,horse 195101,deer 195102,truck 195103,horse 195104,horse 195105,truck 195106,dog 195107,deer 195108,cat 195109,automobile 195110,truck 195111,frog 195112,deer 195113,bird 195114,cat 195115,bird 195116,truck 195117,ship 195118,deer 195119,deer 195120,bird 195121,deer 195122,frog 195123,frog 195124,automobile 195125,horse 195126,bird 195127,horse 195128,horse 195129,horse 195130,cat 195131,ship 195132,bird 195133,automobile 195134,horse 195135,dog 195136,deer 195137,deer 195138,frog 195139,horse 195140,cat 195141,dog 195142,deer 195143,truck 195144,horse 195145,cat 195146,ship 195147,automobile 195148,automobile 195149,frog 195150,horse 195151,horse 195152,deer 195153,automobile 195154,airplane 195155,horse 195156,bird 195157,airplane 195158,horse 195159,airplane 195160,deer 195161,deer 195162,deer 195163,deer 195164,truck 195165,frog 195166,ship 195167,truck 195168,horse 195169,horse 195170,deer 195171,bird 195172,deer 195173,frog 195174,deer 195175,dog 195176,dog 195177,cat 195178,airplane 195179,truck 195180,frog 195181,airplane 195182,bird 195183,airplane 195184,frog 195185,frog 195186,deer 195187,cat 195188,airplane 195189,automobile 195190,horse 195191,horse 195192,cat 195193,horse 195194,cat 195195,airplane 195196,bird 195197,truck 195198,frog 195199,truck 195200,truck 195201,automobile 195202,horse 195203,dog 195204,airplane 195205,cat 195206,cat 195207,truck 195208,dog 195209,frog 195210,airplane 195211,automobile 195212,dog 195213,automobile 195214,dog 195215,frog 195216,ship 195217,horse 195218,dog 195219,horse 195220,bird 195221,frog 195222,horse 195223,bird 195224,ship 195225,frog 195226,truck 195227,bird 195228,bird 195229,horse 195230,bird 195231,truck 195232,truck 195233,deer 195234,deer 195235,cat 195236,bird 195237,horse 195238,frog 195239,airplane 195240,frog 195241,frog 195242,dog 195243,ship 195244,truck 195245,deer 195246,bird 195247,bird 195248,automobile 195249,frog 195250,cat 195251,cat 195252,horse 195253,automobile 195254,frog 195255,horse 195256,frog 195257,deer 195258,horse 195259,automobile 195260,ship 195261,cat 195262,cat 195263,dog 195264,bird 195265,truck 195266,horse 195267,dog 195268,bird 195269,ship 195270,frog 195271,deer 195272,truck 195273,frog 195274,bird 195275,dog 195276,airplane 195277,airplane 195278,truck 195279,airplane 195280,ship 195281,deer 195282,cat 195283,truck 195284,ship 195285,airplane 195286,truck 195287,automobile 195288,ship 195289,frog 195290,airplane 195291,bird 195292,cat 195293,frog 195294,horse 195295,cat 195296,cat 195297,dog 195298,cat 195299,cat 195300,automobile 195301,horse 195302,ship 195303,deer 195304,airplane 195305,truck 195306,deer 195307,bird 195308,dog 195309,horse 195310,deer 195311,frog 195312,cat 195313,airplane 195314,dog 195315,frog 195316,truck 195317,truck 195318,frog 195319,dog 195320,truck 195321,frog 195322,truck 195323,truck 195324,airplane 195325,truck 195326,dog 195327,frog 195328,horse 195329,truck 195330,deer 195331,truck 195332,frog 195333,frog 195334,truck 195335,deer 195336,cat 195337,frog 195338,horse 195339,ship 195340,ship 195341,frog 195342,deer 195343,deer 195344,bird 195345,cat 195346,frog 195347,bird 195348,deer 195349,deer 195350,ship 195351,automobile 195352,cat 195353,frog 195354,frog 195355,deer 195356,truck 195357,airplane 195358,bird 195359,ship 195360,dog 195361,deer 195362,cat 195363,bird 195364,frog 195365,frog 195366,deer 195367,bird 195368,ship 195369,ship 195370,airplane 195371,cat 195372,frog 195373,ship 195374,deer 195375,horse 195376,airplane 195377,ship 195378,frog 195379,cat 195380,ship 195381,bird 195382,airplane 195383,cat 195384,dog 195385,dog 195386,airplane 195387,automobile 195388,deer 195389,automobile 195390,frog 195391,automobile 195392,dog 195393,cat 195394,cat 195395,frog 195396,horse 195397,bird 195398,bird 195399,truck 195400,dog 195401,bird 195402,automobile 195403,frog 195404,cat 195405,horse 195406,deer 195407,cat 195408,truck 195409,horse 195410,truck 195411,cat 195412,truck 195413,frog 195414,bird 195415,frog 195416,truck 195417,deer 195418,automobile 195419,automobile 195420,frog 195421,truck 195422,horse 195423,deer 195424,deer 195425,deer 195426,airplane 195427,cat 195428,cat 195429,bird 195430,truck 195431,cat 195432,deer 195433,horse 195434,bird 195435,airplane 195436,dog 195437,truck 195438,bird 195439,horse 195440,horse 195441,horse 195442,ship 195443,truck 195444,cat 195445,dog 195446,cat 195447,truck 195448,dog 195449,truck 195450,horse 195451,dog 195452,automobile 195453,frog 195454,horse 195455,bird 195456,dog 195457,airplane 195458,horse 195459,dog 195460,frog 195461,horse 195462,horse 195463,dog 195464,dog 195465,deer 195466,bird 195467,dog 195468,automobile 195469,horse 195470,frog 195471,cat 195472,deer 195473,frog 195474,frog 195475,truck 195476,cat 195477,truck 195478,bird 195479,cat 195480,cat 195481,frog 195482,truck 195483,frog 195484,deer 195485,cat 195486,horse 195487,cat 195488,automobile 195489,deer 195490,horse 195491,frog 195492,automobile 195493,dog 195494,dog 195495,cat 195496,ship 195497,cat 195498,frog 195499,deer 195500,airplane 195501,dog 195502,bird 195503,dog 195504,cat 195505,bird 195506,automobile 195507,horse 195508,automobile 195509,cat 195510,bird 195511,automobile 195512,ship 195513,truck 195514,ship 195515,cat 195516,automobile 195517,cat 195518,airplane 195519,deer 195520,truck 195521,cat 195522,ship 195523,automobile 195524,bird 195525,bird 195526,ship 195527,ship 195528,dog 195529,cat 195530,truck 195531,airplane 195532,deer 195533,dog 195534,cat 195535,bird 195536,cat 195537,ship 195538,bird 195539,horse 195540,airplane 195541,truck 195542,dog 195543,horse 195544,deer 195545,cat 195546,horse 195547,horse 195548,deer 195549,cat 195550,ship 195551,truck 195552,deer 195553,horse 195554,bird 195555,horse 195556,horse 195557,dog 195558,horse 195559,airplane 195560,frog 195561,deer 195562,automobile 195563,cat 195564,ship 195565,automobile 195566,bird 195567,horse 195568,cat 195569,deer 195570,bird 195571,dog 195572,cat 195573,frog 195574,airplane 195575,cat 195576,truck 195577,airplane 195578,deer 195579,ship 195580,airplane 195581,cat 195582,frog 195583,horse 195584,cat 195585,automobile 195586,dog 195587,automobile 195588,deer 195589,bird 195590,dog 195591,airplane 195592,deer 195593,bird 195594,cat 195595,deer 195596,airplane 195597,airplane 195598,automobile 195599,airplane 195600,automobile 195601,frog 195602,cat 195603,dog 195604,dog 195605,airplane 195606,horse 195607,cat 195608,dog 195609,truck 195610,airplane 195611,horse 195612,ship 195613,truck 195614,dog 195615,horse 195616,ship 195617,ship 195618,truck 195619,deer 195620,horse 195621,bird 195622,truck 195623,horse 195624,cat 195625,bird 195626,deer 195627,bird 195628,frog 195629,cat 195630,ship 195631,ship 195632,bird 195633,frog 195634,cat 195635,horse 195636,horse 195637,deer 195638,dog 195639,dog 195640,truck 195641,truck 195642,horse 195643,bird 195644,horse 195645,frog 195646,bird 195647,truck 195648,deer 195649,dog 195650,automobile 195651,dog 195652,frog 195653,cat 195654,frog 195655,frog 195656,cat 195657,cat 195658,horse 195659,frog 195660,dog 195661,bird 195662,ship 195663,airplane 195664,horse 195665,ship 195666,airplane 195667,dog 195668,truck 195669,horse 195670,automobile 195671,bird 195672,horse 195673,deer 195674,ship 195675,truck 195676,horse 195677,bird 195678,frog 195679,truck 195680,dog 195681,airplane 195682,horse 195683,airplane 195684,ship 195685,ship 195686,truck 195687,frog 195688,bird 195689,automobile 195690,frog 195691,horse 195692,frog 195693,airplane 195694,airplane 195695,bird 195696,horse 195697,horse 195698,frog 195699,truck 195700,truck 195701,truck 195702,horse 195703,frog 195704,truck 195705,frog 195706,automobile 195707,airplane 195708,truck 195709,ship 195710,truck 195711,horse 195712,deer 195713,automobile 195714,bird 195715,ship 195716,cat 195717,ship 195718,cat 195719,cat 195720,frog 195721,cat 195722,truck 195723,deer 195724,airplane 195725,truck 195726,airplane 195727,horse 195728,deer 195729,cat 195730,bird 195731,frog 195732,deer 195733,airplane 195734,airplane 195735,truck 195736,truck 195737,ship 195738,deer 195739,ship 195740,automobile 195741,dog 195742,dog 195743,cat 195744,bird 195745,horse 195746,dog 195747,bird 195748,truck 195749,frog 195750,deer 195751,horse 195752,frog 195753,bird 195754,deer 195755,ship 195756,dog 195757,deer 195758,horse 195759,deer 195760,truck 195761,horse 195762,horse 195763,deer 195764,horse 195765,deer 195766,airplane 195767,frog 195768,dog 195769,dog 195770,cat 195771,ship 195772,dog 195773,ship 195774,deer 195775,bird 195776,deer 195777,dog 195778,truck 195779,airplane 195780,deer 195781,cat 195782,bird 195783,deer 195784,automobile 195785,frog 195786,deer 195787,frog 195788,horse 195789,bird 195790,cat 195791,ship 195792,bird 195793,ship 195794,dog 195795,ship 195796,cat 195797,bird 195798,deer 195799,deer 195800,automobile 195801,deer 195802,automobile 195803,dog 195804,horse 195805,bird 195806,airplane 195807,horse 195808,ship 195809,deer 195810,automobile 195811,truck 195812,dog 195813,dog 195814,airplane 195815,deer 195816,airplane 195817,ship 195818,deer 195819,deer 195820,deer 195821,frog 195822,horse 195823,ship 195824,dog 195825,ship 195826,horse 195827,dog 195828,truck 195829,automobile 195830,deer 195831,airplane 195832,bird 195833,cat 195834,frog 195835,deer 195836,frog 195837,truck 195838,frog 195839,bird 195840,frog 195841,deer 195842,ship 195843,truck 195844,automobile 195845,ship 195846,cat 195847,cat 195848,airplane 195849,deer 195850,bird 195851,frog 195852,deer 195853,deer 195854,deer 195855,cat 195856,automobile 195857,dog 195858,airplane 195859,deer 195860,airplane 195861,cat 195862,cat 195863,deer 195864,frog 195865,frog 195866,frog 195867,truck 195868,ship 195869,airplane 195870,deer 195871,truck 195872,cat 195873,deer 195874,frog 195875,deer 195876,deer 195877,cat 195878,airplane 195879,airplane 195880,dog 195881,cat 195882,deer 195883,automobile 195884,automobile 195885,cat 195886,horse 195887,airplane 195888,bird 195889,horse 195890,airplane 195891,cat 195892,airplane 195893,bird 195894,ship 195895,deer 195896,deer 195897,airplane 195898,dog 195899,ship 195900,airplane 195901,airplane 195902,frog 195903,ship 195904,ship 195905,horse 195906,cat 195907,horse 195908,horse 195909,truck 195910,automobile 195911,deer 195912,horse 195913,frog 195914,cat 195915,horse 195916,bird 195917,frog 195918,deer 195919,ship 195920,deer 195921,truck 195922,frog 195923,deer 195924,cat 195925,cat 195926,truck 195927,truck 195928,bird 195929,bird 195930,deer 195931,cat 195932,ship 195933,automobile 195934,dog 195935,horse 195936,truck 195937,truck 195938,frog 195939,truck 195940,truck 195941,frog 195942,cat 195943,deer 195944,frog 195945,automobile 195946,frog 195947,frog 195948,deer 195949,truck 195950,cat 195951,airplane 195952,frog 195953,deer 195954,dog 195955,cat 195956,automobile 195957,horse 195958,horse 195959,horse 195960,airplane 195961,automobile 195962,dog 195963,truck 195964,truck 195965,deer 195966,ship 195967,dog 195968,dog 195969,airplane 195970,cat 195971,dog 195972,horse 195973,truck 195974,truck 195975,bird 195976,frog 195977,cat 195978,cat 195979,frog 195980,automobile 195981,dog 195982,frog 195983,dog 195984,deer 195985,dog 195986,ship 195987,deer 195988,ship 195989,dog 195990,truck 195991,airplane 195992,deer 195993,frog 195994,horse 195995,automobile 195996,dog 195997,cat 195998,frog 195999,dog 196000,airplane 196001,frog 196002,dog 196003,airplane 196004,cat 196005,truck 196006,deer 196007,truck 196008,horse 196009,dog 196010,horse 196011,cat 196012,truck 196013,deer 196014,cat 196015,bird 196016,ship 196017,frog 196018,cat 196019,airplane 196020,cat 196021,ship 196022,cat 196023,ship 196024,airplane 196025,deer 196026,bird 196027,horse 196028,ship 196029,dog 196030,truck 196031,deer 196032,horse 196033,dog 196034,cat 196035,automobile 196036,deer 196037,deer 196038,dog 196039,horse 196040,frog 196041,automobile 196042,dog 196043,frog 196044,horse 196045,dog 196046,frog 196047,cat 196048,deer 196049,frog 196050,deer 196051,deer 196052,truck 196053,airplane 196054,truck 196055,horse 196056,cat 196057,truck 196058,ship 196059,cat 196060,frog 196061,cat 196062,frog 196063,frog 196064,airplane 196065,horse 196066,deer 196067,deer 196068,cat 196069,automobile 196070,truck 196071,automobile 196072,dog 196073,airplane 196074,cat 196075,frog 196076,bird 196077,bird 196078,cat 196079,horse 196080,horse 196081,cat 196082,horse 196083,frog 196084,airplane 196085,horse 196086,deer 196087,frog 196088,bird 196089,ship 196090,ship 196091,truck 196092,frog 196093,airplane 196094,bird 196095,frog 196096,horse 196097,cat 196098,frog 196099,dog 196100,truck 196101,truck 196102,frog 196103,horse 196104,deer 196105,bird 196106,cat 196107,truck 196108,horse 196109,airplane 196110,truck 196111,deer 196112,truck 196113,airplane 196114,cat 196115,ship 196116,frog 196117,truck 196118,dog 196119,dog 196120,horse 196121,bird 196122,airplane 196123,automobile 196124,automobile 196125,bird 196126,deer 196127,dog 196128,bird 196129,dog 196130,dog 196131,dog 196132,deer 196133,dog 196134,horse 196135,dog 196136,automobile 196137,horse 196138,frog 196139,airplane 196140,deer 196141,bird 196142,automobile 196143,horse 196144,automobile 196145,automobile 196146,deer 196147,ship 196148,cat 196149,ship 196150,ship 196151,airplane 196152,dog 196153,frog 196154,automobile 196155,cat 196156,bird 196157,horse 196158,bird 196159,cat 196160,truck 196161,automobile 196162,deer 196163,dog 196164,bird 196165,frog 196166,truck 196167,deer 196168,airplane 196169,deer 196170,ship 196171,ship 196172,cat 196173,truck 196174,deer 196175,horse 196176,airplane 196177,frog 196178,truck 196179,airplane 196180,ship 196181,ship 196182,dog 196183,ship 196184,horse 196185,cat 196186,bird 196187,horse 196188,automobile 196189,truck 196190,truck 196191,horse 196192,ship 196193,dog 196194,deer 196195,airplane 196196,deer 196197,ship 196198,ship 196199,deer 196200,dog 196201,deer 196202,ship 196203,frog 196204,ship 196205,bird 196206,ship 196207,truck 196208,deer 196209,deer 196210,deer 196211,airplane 196212,cat 196213,bird 196214,cat 196215,deer 196216,truck 196217,frog 196218,bird 196219,frog 196220,dog 196221,deer 196222,frog 196223,deer 196224,airplane 196225,airplane 196226,horse 196227,ship 196228,airplane 196229,truck 196230,dog 196231,frog 196232,cat 196233,frog 196234,truck 196235,ship 196236,horse 196237,airplane 196238,truck 196239,airplane 196240,automobile 196241,bird 196242,dog 196243,bird 196244,bird 196245,deer 196246,cat 196247,cat 196248,truck 196249,automobile 196250,airplane 196251,deer 196252,frog 196253,automobile 196254,truck 196255,truck 196256,cat 196257,ship 196258,horse 196259,deer 196260,automobile 196261,frog 196262,cat 196263,dog 196264,truck 196265,frog 196266,automobile 196267,cat 196268,dog 196269,horse 196270,frog 196271,ship 196272,airplane 196273,deer 196274,horse 196275,dog 196276,truck 196277,deer 196278,ship 196279,frog 196280,ship 196281,dog 196282,bird 196283,automobile 196284,cat 196285,truck 196286,truck 196287,deer 196288,airplane 196289,bird 196290,frog 196291,deer 196292,airplane 196293,truck 196294,airplane 196295,deer 196296,dog 196297,frog 196298,deer 196299,ship 196300,horse 196301,frog 196302,airplane 196303,airplane 196304,cat 196305,ship 196306,horse 196307,automobile 196308,airplane 196309,frog 196310,horse 196311,horse 196312,dog 196313,airplane 196314,dog 196315,frog 196316,truck 196317,ship 196318,airplane 196319,horse 196320,horse 196321,horse 196322,cat 196323,cat 196324,frog 196325,frog 196326,automobile 196327,ship 196328,truck 196329,automobile 196330,airplane 196331,ship 196332,dog 196333,dog 196334,airplane 196335,dog 196336,horse 196337,airplane 196338,ship 196339,horse 196340,frog 196341,horse 196342,horse 196343,frog 196344,frog 196345,airplane 196346,bird 196347,deer 196348,cat 196349,deer 196350,bird 196351,frog 196352,dog 196353,ship 196354,cat 196355,bird 196356,bird 196357,horse 196358,ship 196359,automobile 196360,truck 196361,truck 196362,dog 196363,horse 196364,dog 196365,ship 196366,horse 196367,airplane 196368,frog 196369,bird 196370,deer 196371,frog 196372,truck 196373,cat 196374,deer 196375,ship 196376,horse 196377,frog 196378,horse 196379,deer 196380,cat 196381,frog 196382,bird 196383,frog 196384,cat 196385,automobile 196386,airplane 196387,deer 196388,dog 196389,deer 196390,cat 196391,truck 196392,dog 196393,truck 196394,truck 196395,cat 196396,deer 196397,frog 196398,frog 196399,truck 196400,deer 196401,deer 196402,airplane 196403,horse 196404,cat 196405,airplane 196406,ship 196407,cat 196408,dog 196409,truck 196410,ship 196411,dog 196412,airplane 196413,deer 196414,automobile 196415,frog 196416,cat 196417,frog 196418,truck 196419,airplane 196420,cat 196421,truck 196422,cat 196423,cat 196424,cat 196425,airplane 196426,frog 196427,airplane 196428,horse 196429,deer 196430,automobile 196431,airplane 196432,automobile 196433,deer 196434,airplane 196435,dog 196436,cat 196437,ship 196438,deer 196439,deer 196440,deer 196441,airplane 196442,horse 196443,deer 196444,deer 196445,truck 196446,dog 196447,cat 196448,cat 196449,ship 196450,dog 196451,dog 196452,deer 196453,ship 196454,frog 196455,cat 196456,horse 196457,frog 196458,frog 196459,deer 196460,dog 196461,airplane 196462,ship 196463,deer 196464,airplane 196465,dog 196466,horse 196467,truck 196468,deer 196469,ship 196470,horse 196471,dog 196472,horse 196473,horse 196474,airplane 196475,bird 196476,horse 196477,truck 196478,frog 196479,frog 196480,bird 196481,horse 196482,deer 196483,ship 196484,horse 196485,truck 196486,truck 196487,horse 196488,horse 196489,bird 196490,dog 196491,deer 196492,ship 196493,frog 196494,deer 196495,cat 196496,deer 196497,truck 196498,dog 196499,bird 196500,bird 196501,bird 196502,frog 196503,horse 196504,dog 196505,dog 196506,horse 196507,truck 196508,horse 196509,cat 196510,cat 196511,bird 196512,frog 196513,dog 196514,horse 196515,deer 196516,deer 196517,automobile 196518,deer 196519,truck 196520,cat 196521,frog 196522,truck 196523,truck 196524,deer 196525,truck 196526,cat 196527,automobile 196528,deer 196529,frog 196530,cat 196531,ship 196532,airplane 196533,frog 196534,cat 196535,airplane 196536,frog 196537,dog 196538,truck 196539,deer 196540,truck 196541,frog 196542,deer 196543,bird 196544,horse 196545,truck 196546,truck 196547,truck 196548,frog 196549,airplane 196550,bird 196551,ship 196552,truck 196553,dog 196554,ship 196555,bird 196556,bird 196557,deer 196558,deer 196559,airplane 196560,deer 196561,frog 196562,horse 196563,automobile 196564,bird 196565,bird 196566,dog 196567,horse 196568,ship 196569,airplane 196570,truck 196571,bird 196572,bird 196573,airplane 196574,bird 196575,frog 196576,horse 196577,ship 196578,horse 196579,cat 196580,cat 196581,frog 196582,dog 196583,cat 196584,automobile 196585,horse 196586,automobile 196587,horse 196588,bird 196589,cat 196590,cat 196591,truck 196592,airplane 196593,truck 196594,frog 196595,horse 196596,deer 196597,bird 196598,ship 196599,ship 196600,ship 196601,truck 196602,ship 196603,automobile 196604,airplane 196605,automobile 196606,deer 196607,frog 196608,deer 196609,bird 196610,cat 196611,cat 196612,horse 196613,frog 196614,frog 196615,cat 196616,frog 196617,airplane 196618,frog 196619,ship 196620,automobile 196621,dog 196622,bird 196623,dog 196624,dog 196625,airplane 196626,truck 196627,ship 196628,truck 196629,dog 196630,bird 196631,horse 196632,truck 196633,ship 196634,truck 196635,cat 196636,deer 196637,deer 196638,deer 196639,dog 196640,horse 196641,dog 196642,automobile 196643,cat 196644,deer 196645,cat 196646,truck 196647,airplane 196648,horse 196649,truck 196650,frog 196651,frog 196652,airplane 196653,deer 196654,cat 196655,airplane 196656,dog 196657,automobile 196658,dog 196659,deer 196660,cat 196661,horse 196662,dog 196663,truck 196664,automobile 196665,airplane 196666,cat 196667,deer 196668,airplane 196669,dog 196670,deer 196671,deer 196672,ship 196673,automobile 196674,frog 196675,cat 196676,cat 196677,ship 196678,frog 196679,ship 196680,truck 196681,frog 196682,automobile 196683,automobile 196684,cat 196685,frog 196686,truck 196687,horse 196688,frog 196689,ship 196690,ship 196691,horse 196692,dog 196693,airplane 196694,truck 196695,ship 196696,cat 196697,frog 196698,truck 196699,dog 196700,frog 196701,ship 196702,deer 196703,horse 196704,bird 196705,frog 196706,frog 196707,frog 196708,cat 196709,cat 196710,horse 196711,cat 196712,truck 196713,truck 196714,deer 196715,airplane 196716,cat 196717,deer 196718,deer 196719,frog 196720,deer 196721,frog 196722,truck 196723,cat 196724,horse 196725,cat 196726,horse 196727,truck 196728,airplane 196729,cat 196730,dog 196731,cat 196732,frog 196733,truck 196734,cat 196735,airplane 196736,horse 196737,truck 196738,dog 196739,frog 196740,cat 196741,frog 196742,truck 196743,ship 196744,cat 196745,deer 196746,truck 196747,cat 196748,bird 196749,dog 196750,truck 196751,deer 196752,dog 196753,frog 196754,truck 196755,automobile 196756,cat 196757,airplane 196758,cat 196759,airplane 196760,cat 196761,frog 196762,airplane 196763,deer 196764,deer 196765,dog 196766,airplane 196767,frog 196768,deer 196769,dog 196770,deer 196771,cat 196772,frog 196773,deer 196774,horse 196775,cat 196776,frog 196777,frog 196778,ship 196779,truck 196780,truck 196781,bird 196782,horse 196783,deer 196784,truck 196785,ship 196786,deer 196787,deer 196788,deer 196789,truck 196790,truck 196791,bird 196792,cat 196793,airplane 196794,truck 196795,deer 196796,truck 196797,frog 196798,dog 196799,airplane 196800,automobile 196801,deer 196802,cat 196803,horse 196804,airplane 196805,cat 196806,ship 196807,deer 196808,truck 196809,cat 196810,dog 196811,dog 196812,automobile 196813,truck 196814,bird 196815,cat 196816,deer 196817,automobile 196818,truck 196819,dog 196820,airplane 196821,airplane 196822,dog 196823,bird 196824,truck 196825,bird 196826,truck 196827,airplane 196828,truck 196829,bird 196830,dog 196831,airplane 196832,horse 196833,deer 196834,deer 196835,ship 196836,truck 196837,cat 196838,truck 196839,frog 196840,truck 196841,dog 196842,bird 196843,dog 196844,dog 196845,frog 196846,airplane 196847,automobile 196848,bird 196849,deer 196850,truck 196851,deer 196852,deer 196853,cat 196854,dog 196855,dog 196856,cat 196857,deer 196858,dog 196859,automobile 196860,frog 196861,cat 196862,cat 196863,frog 196864,airplane 196865,truck 196866,horse 196867,airplane 196868,deer 196869,frog 196870,truck 196871,cat 196872,ship 196873,ship 196874,cat 196875,automobile 196876,airplane 196877,deer 196878,deer 196879,cat 196880,frog 196881,frog 196882,dog 196883,cat 196884,ship 196885,truck 196886,bird 196887,truck 196888,dog 196889,bird 196890,truck 196891,automobile 196892,airplane 196893,horse 196894,cat 196895,frog 196896,dog 196897,airplane 196898,airplane 196899,dog 196900,deer 196901,frog 196902,dog 196903,horse 196904,automobile 196905,dog 196906,cat 196907,dog 196908,bird 196909,dog 196910,truck 196911,frog 196912,bird 196913,frog 196914,bird 196915,cat 196916,frog 196917,dog 196918,cat 196919,frog 196920,bird 196921,deer 196922,deer 196923,frog 196924,automobile 196925,airplane 196926,truck 196927,automobile 196928,frog 196929,horse 196930,airplane 196931,cat 196932,truck 196933,deer 196934,ship 196935,dog 196936,deer 196937,truck 196938,cat 196939,bird 196940,automobile 196941,airplane 196942,bird 196943,dog 196944,truck 196945,airplane 196946,bird 196947,airplane 196948,deer 196949,truck 196950,dog 196951,dog 196952,cat 196953,deer 196954,deer 196955,deer 196956,deer 196957,deer 196958,cat 196959,dog 196960,bird 196961,dog 196962,deer 196963,automobile 196964,ship 196965,truck 196966,ship 196967,deer 196968,airplane 196969,airplane 196970,horse 196971,horse 196972,frog 196973,airplane 196974,frog 196975,automobile 196976,frog 196977,horse 196978,frog 196979,cat 196980,frog 196981,bird 196982,deer 196983,truck 196984,dog 196985,cat 196986,cat 196987,deer 196988,bird 196989,horse 196990,horse 196991,bird 196992,horse 196993,truck 196994,frog 196995,automobile 196996,frog 196997,truck 196998,airplane 196999,airplane 197000,frog 197001,cat 197002,cat 197003,cat 197004,ship 197005,bird 197006,truck 197007,cat 197008,truck 197009,deer 197010,frog 197011,cat 197012,bird 197013,truck 197014,horse 197015,cat 197016,horse 197017,horse 197018,frog 197019,dog 197020,deer 197021,airplane 197022,deer 197023,horse 197024,ship 197025,dog 197026,frog 197027,frog 197028,automobile 197029,bird 197030,horse 197031,dog 197032,truck 197033,cat 197034,dog 197035,frog 197036,dog 197037,horse 197038,bird 197039,automobile 197040,frog 197041,dog 197042,ship 197043,automobile 197044,cat 197045,truck 197046,deer 197047,automobile 197048,frog 197049,horse 197050,dog 197051,bird 197052,airplane 197053,bird 197054,airplane 197055,horse 197056,deer 197057,cat 197058,bird 197059,airplane 197060,airplane 197061,automobile 197062,truck 197063,airplane 197064,ship 197065,dog 197066,horse 197067,airplane 197068,deer 197069,truck 197070,ship 197071,bird 197072,bird 197073,bird 197074,horse 197075,deer 197076,cat 197077,cat 197078,dog 197079,cat 197080,truck 197081,deer 197082,truck 197083,cat 197084,truck 197085,truck 197086,ship 197087,airplane 197088,frog 197089,bird 197090,airplane 197091,cat 197092,dog 197093,cat 197094,deer 197095,frog 197096,deer 197097,deer 197098,ship 197099,cat 197100,airplane 197101,truck 197102,automobile 197103,airplane 197104,airplane 197105,cat 197106,truck 197107,frog 197108,cat 197109,dog 197110,deer 197111,dog 197112,dog 197113,ship 197114,ship 197115,deer 197116,bird 197117,dog 197118,bird 197119,frog 197120,dog 197121,deer 197122,ship 197123,automobile 197124,airplane 197125,airplane 197126,automobile 197127,automobile 197128,airplane 197129,ship 197130,automobile 197131,dog 197132,frog 197133,bird 197134,deer 197135,dog 197136,horse 197137,frog 197138,ship 197139,deer 197140,deer 197141,ship 197142,deer 197143,truck 197144,cat 197145,cat 197146,deer 197147,horse 197148,airplane 197149,dog 197150,deer 197151,bird 197152,bird 197153,horse 197154,deer 197155,dog 197156,frog 197157,bird 197158,deer 197159,horse 197160,dog 197161,deer 197162,truck 197163,frog 197164,truck 197165,automobile 197166,truck 197167,ship 197168,deer 197169,horse 197170,cat 197171,truck 197172,frog 197173,automobile 197174,frog 197175,horse 197176,deer 197177,cat 197178,horse 197179,deer 197180,airplane 197181,dog 197182,cat 197183,deer 197184,airplane 197185,deer 197186,horse 197187,horse 197188,dog 197189,frog 197190,truck 197191,dog 197192,deer 197193,dog 197194,frog 197195,frog 197196,bird 197197,deer 197198,airplane 197199,frog 197200,deer 197201,deer 197202,cat 197203,automobile 197204,bird 197205,deer 197206,truck 197207,truck 197208,bird 197209,deer 197210,truck 197211,ship 197212,truck 197213,deer 197214,ship 197215,ship 197216,dog 197217,truck 197218,bird 197219,dog 197220,frog 197221,frog 197222,cat 197223,frog 197224,cat 197225,airplane 197226,cat 197227,automobile 197228,bird 197229,deer 197230,horse 197231,horse 197232,airplane 197233,deer 197234,bird 197235,bird 197236,ship 197237,truck 197238,horse 197239,bird 197240,truck 197241,deer 197242,automobile 197243,horse 197244,ship 197245,deer 197246,bird 197247,deer 197248,truck 197249,automobile 197250,frog 197251,deer 197252,automobile 197253,deer 197254,truck 197255,airplane 197256,truck 197257,dog 197258,bird 197259,bird 197260,truck 197261,horse 197262,bird 197263,deer 197264,automobile 197265,cat 197266,horse 197267,bird 197268,airplane 197269,dog 197270,cat 197271,automobile 197272,truck 197273,horse 197274,automobile 197275,ship 197276,ship 197277,frog 197278,deer 197279,cat 197280,truck 197281,deer 197282,airplane 197283,frog 197284,bird 197285,cat 197286,bird 197287,airplane 197288,bird 197289,truck 197290,cat 197291,dog 197292,deer 197293,cat 197294,airplane 197295,horse 197296,automobile 197297,ship 197298,ship 197299,ship 197300,airplane 197301,truck 197302,airplane 197303,airplane 197304,bird 197305,ship 197306,dog 197307,deer 197308,cat 197309,horse 197310,horse 197311,truck 197312,ship 197313,cat 197314,ship 197315,deer 197316,airplane 197317,automobile 197318,deer 197319,airplane 197320,truck 197321,horse 197322,deer 197323,dog 197324,cat 197325,cat 197326,ship 197327,horse 197328,bird 197329,dog 197330,dog 197331,frog 197332,bird 197333,deer 197334,dog 197335,frog 197336,airplane 197337,horse 197338,bird 197339,deer 197340,horse 197341,automobile 197342,dog 197343,deer 197344,horse 197345,deer 197346,deer 197347,truck 197348,cat 197349,cat 197350,automobile 197351,frog 197352,deer 197353,truck 197354,bird 197355,cat 197356,cat 197357,dog 197358,truck 197359,frog 197360,dog 197361,cat 197362,truck 197363,airplane 197364,ship 197365,frog 197366,ship 197367,deer 197368,frog 197369,airplane 197370,dog 197371,bird 197372,bird 197373,bird 197374,deer 197375,dog 197376,deer 197377,frog 197378,ship 197379,horse 197380,cat 197381,deer 197382,dog 197383,deer 197384,dog 197385,cat 197386,horse 197387,dog 197388,deer 197389,bird 197390,ship 197391,cat 197392,horse 197393,bird 197394,deer 197395,deer 197396,ship 197397,bird 197398,deer 197399,ship 197400,frog 197401,horse 197402,automobile 197403,deer 197404,truck 197405,horse 197406,bird 197407,deer 197408,cat 197409,cat 197410,cat 197411,deer 197412,cat 197413,automobile 197414,deer 197415,dog 197416,cat 197417,frog 197418,bird 197419,cat 197420,airplane 197421,cat 197422,deer 197423,cat 197424,dog 197425,deer 197426,bird 197427,ship 197428,horse 197429,bird 197430,bird 197431,truck 197432,deer 197433,deer 197434,cat 197435,horse 197436,frog 197437,bird 197438,horse 197439,deer 197440,ship 197441,automobile 197442,cat 197443,truck 197444,frog 197445,cat 197446,dog 197447,deer 197448,automobile 197449,horse 197450,truck 197451,bird 197452,airplane 197453,airplane 197454,cat 197455,deer 197456,ship 197457,dog 197458,truck 197459,cat 197460,airplane 197461,ship 197462,cat 197463,dog 197464,automobile 197465,bird 197466,horse 197467,ship 197468,frog 197469,deer 197470,dog 197471,bird 197472,frog 197473,truck 197474,dog 197475,bird 197476,frog 197477,airplane 197478,bird 197479,deer 197480,truck 197481,ship 197482,cat 197483,deer 197484,frog 197485,cat 197486,dog 197487,cat 197488,automobile 197489,cat 197490,frog 197491,ship 197492,horse 197493,airplane 197494,ship 197495,deer 197496,ship 197497,deer 197498,bird 197499,deer 197500,airplane 197501,ship 197502,cat 197503,horse 197504,dog 197505,frog 197506,cat 197507,truck 197508,bird 197509,ship 197510,horse 197511,horse 197512,deer 197513,deer 197514,frog 197515,bird 197516,automobile 197517,ship 197518,truck 197519,cat 197520,deer 197521,deer 197522,deer 197523,dog 197524,automobile 197525,airplane 197526,deer 197527,bird 197528,deer 197529,horse 197530,truck 197531,horse 197532,bird 197533,cat 197534,ship 197535,deer 197536,automobile 197537,frog 197538,ship 197539,horse 197540,frog 197541,dog 197542,ship 197543,truck 197544,cat 197545,cat 197546,frog 197547,deer 197548,deer 197549,frog 197550,truck 197551,horse 197552,airplane 197553,cat 197554,dog 197555,truck 197556,deer 197557,frog 197558,truck 197559,frog 197560,frog 197561,automobile 197562,deer 197563,deer 197564,horse 197565,horse 197566,automobile 197567,airplane 197568,cat 197569,ship 197570,bird 197571,bird 197572,airplane 197573,cat 197574,frog 197575,frog 197576,truck 197577,frog 197578,frog 197579,automobile 197580,deer 197581,deer 197582,frog 197583,frog 197584,truck 197585,horse 197586,truck 197587,deer 197588,deer 197589,deer 197590,deer 197591,truck 197592,deer 197593,airplane 197594,horse 197595,bird 197596,bird 197597,dog 197598,deer 197599,bird 197600,ship 197601,deer 197602,ship 197603,horse 197604,frog 197605,automobile 197606,truck 197607,dog 197608,frog 197609,airplane 197610,automobile 197611,truck 197612,automobile 197613,deer 197614,bird 197615,bird 197616,airplane 197617,deer 197618,frog 197619,bird 197620,airplane 197621,frog 197622,bird 197623,dog 197624,dog 197625,deer 197626,deer 197627,dog 197628,cat 197629,bird 197630,truck 197631,airplane 197632,frog 197633,truck 197634,ship 197635,automobile 197636,automobile 197637,cat 197638,cat 197639,dog 197640,horse 197641,horse 197642,cat 197643,ship 197644,deer 197645,frog 197646,cat 197647,automobile 197648,frog 197649,automobile 197650,frog 197651,truck 197652,truck 197653,automobile 197654,cat 197655,frog 197656,dog 197657,airplane 197658,truck 197659,cat 197660,truck 197661,cat 197662,airplane 197663,automobile 197664,airplane 197665,horse 197666,automobile 197667,horse 197668,dog 197669,cat 197670,ship 197671,deer 197672,frog 197673,dog 197674,airplane 197675,airplane 197676,automobile 197677,airplane 197678,cat 197679,frog 197680,truck 197681,frog 197682,bird 197683,dog 197684,truck 197685,frog 197686,automobile 197687,deer 197688,automobile 197689,ship 197690,bird 197691,frog 197692,dog 197693,horse 197694,automobile 197695,automobile 197696,automobile 197697,deer 197698,frog 197699,airplane 197700,horse 197701,airplane 197702,dog 197703,cat 197704,horse 197705,ship 197706,frog 197707,dog 197708,cat 197709,bird 197710,truck 197711,automobile 197712,airplane 197713,ship 197714,frog 197715,dog 197716,deer 197717,horse 197718,bird 197719,cat 197720,deer 197721,airplane 197722,deer 197723,ship 197724,horse 197725,automobile 197726,truck 197727,ship 197728,cat 197729,ship 197730,deer 197731,dog 197732,dog 197733,frog 197734,cat 197735,deer 197736,dog 197737,horse 197738,frog 197739,dog 197740,automobile 197741,bird 197742,bird 197743,frog 197744,cat 197745,horse 197746,horse 197747,airplane 197748,cat 197749,bird 197750,dog 197751,dog 197752,bird 197753,deer 197754,truck 197755,horse 197756,dog 197757,frog 197758,ship 197759,deer 197760,ship 197761,dog 197762,airplane 197763,ship 197764,horse 197765,automobile 197766,horse 197767,cat 197768,horse 197769,deer 197770,deer 197771,airplane 197772,truck 197773,ship 197774,deer 197775,ship 197776,cat 197777,cat 197778,horse 197779,automobile 197780,deer 197781,automobile 197782,automobile 197783,dog 197784,automobile 197785,deer 197786,frog 197787,frog 197788,dog 197789,bird 197790,ship 197791,truck 197792,deer 197793,truck 197794,deer 197795,cat 197796,deer 197797,deer 197798,dog 197799,horse 197800,dog 197801,frog 197802,airplane 197803,ship 197804,horse 197805,cat 197806,automobile 197807,dog 197808,airplane 197809,ship 197810,truck 197811,automobile 197812,cat 197813,bird 197814,ship 197815,ship 197816,cat 197817,dog 197818,horse 197819,dog 197820,horse 197821,horse 197822,horse 197823,airplane 197824,dog 197825,ship 197826,dog 197827,deer 197828,automobile 197829,dog 197830,dog 197831,deer 197832,airplane 197833,automobile 197834,deer 197835,horse 197836,horse 197837,cat 197838,horse 197839,horse 197840,cat 197841,dog 197842,cat 197843,cat 197844,frog 197845,ship 197846,bird 197847,deer 197848,deer 197849,dog 197850,cat 197851,bird 197852,cat 197853,deer 197854,ship 197855,frog 197856,horse 197857,bird 197858,dog 197859,truck 197860,dog 197861,deer 197862,deer 197863,horse 197864,cat 197865,dog 197866,deer 197867,frog 197868,airplane 197869,frog 197870,airplane 197871,horse 197872,ship 197873,frog 197874,frog 197875,horse 197876,dog 197877,truck 197878,horse 197879,automobile 197880,bird 197881,airplane 197882,dog 197883,airplane 197884,cat 197885,ship 197886,frog 197887,airplane 197888,ship 197889,ship 197890,frog 197891,airplane 197892,deer 197893,truck 197894,deer 197895,cat 197896,frog 197897,cat 197898,truck 197899,dog 197900,bird 197901,dog 197902,deer 197903,truck 197904,truck 197905,deer 197906,truck 197907,cat 197908,bird 197909,truck 197910,frog 197911,truck 197912,dog 197913,truck 197914,horse 197915,cat 197916,ship 197917,ship 197918,cat 197919,horse 197920,deer 197921,truck 197922,frog 197923,deer 197924,ship 197925,bird 197926,deer 197927,airplane 197928,airplane 197929,cat 197930,truck 197931,cat 197932,horse 197933,cat 197934,horse 197935,horse 197936,deer 197937,airplane 197938,cat 197939,deer 197940,cat 197941,airplane 197942,dog 197943,dog 197944,cat 197945,ship 197946,airplane 197947,airplane 197948,cat 197949,deer 197950,frog 197951,horse 197952,deer 197953,airplane 197954,automobile 197955,bird 197956,dog 197957,horse 197958,dog 197959,bird 197960,truck 197961,deer 197962,frog 197963,truck 197964,dog 197965,airplane 197966,deer 197967,ship 197968,automobile 197969,airplane 197970,deer 197971,airplane 197972,deer 197973,cat 197974,dog 197975,deer 197976,bird 197977,truck 197978,automobile 197979,bird 197980,automobile 197981,truck 197982,airplane 197983,deer 197984,cat 197985,dog 197986,deer 197987,frog 197988,deer 197989,truck 197990,horse 197991,dog 197992,deer 197993,ship 197994,truck 197995,horse 197996,cat 197997,dog 197998,airplane 197999,horse 198000,cat 198001,frog 198002,ship 198003,horse 198004,deer 198005,frog 198006,deer 198007,deer 198008,bird 198009,horse 198010,bird 198011,horse 198012,cat 198013,frog 198014,ship 198015,truck 198016,frog 198017,frog 198018,frog 198019,truck 198020,automobile 198021,automobile 198022,dog 198023,deer 198024,ship 198025,bird 198026,deer 198027,dog 198028,deer 198029,automobile 198030,frog 198031,bird 198032,horse 198033,frog 198034,frog 198035,ship 198036,horse 198037,dog 198038,truck 198039,frog 198040,deer 198041,ship 198042,ship 198043,truck 198044,airplane 198045,bird 198046,cat 198047,deer 198048,automobile 198049,cat 198050,frog 198051,deer 198052,automobile 198053,frog 198054,deer 198055,cat 198056,cat 198057,airplane 198058,truck 198059,dog 198060,ship 198061,deer 198062,bird 198063,truck 198064,ship 198065,bird 198066,bird 198067,frog 198068,airplane 198069,frog 198070,dog 198071,automobile 198072,truck 198073,horse 198074,airplane 198075,truck 198076,bird 198077,frog 198078,deer 198079,horse 198080,ship 198081,automobile 198082,truck 198083,truck 198084,truck 198085,frog 198086,frog 198087,frog 198088,horse 198089,dog 198090,dog 198091,cat 198092,horse 198093,deer 198094,deer 198095,ship 198096,truck 198097,truck 198098,bird 198099,horse 198100,automobile 198101,airplane 198102,airplane 198103,horse 198104,deer 198105,dog 198106,cat 198107,dog 198108,cat 198109,bird 198110,automobile 198111,dog 198112,automobile 198113,automobile 198114,cat 198115,truck 198116,deer 198117,deer 198118,truck 198119,horse 198120,automobile 198121,horse 198122,bird 198123,cat 198124,automobile 198125,ship 198126,bird 198127,deer 198128,truck 198129,automobile 198130,truck 198131,ship 198132,ship 198133,dog 198134,bird 198135,airplane 198136,horse 198137,horse 198138,automobile 198139,deer 198140,bird 198141,cat 198142,dog 198143,automobile 198144,ship 198145,truck 198146,dog 198147,ship 198148,horse 198149,horse 198150,cat 198151,horse 198152,cat 198153,cat 198154,automobile 198155,deer 198156,dog 198157,cat 198158,truck 198159,airplane 198160,dog 198161,automobile 198162,automobile 198163,frog 198164,bird 198165,dog 198166,deer 198167,dog 198168,truck 198169,cat 198170,automobile 198171,airplane 198172,deer 198173,ship 198174,automobile 198175,ship 198176,frog 198177,airplane 198178,cat 198179,automobile 198180,bird 198181,cat 198182,automobile 198183,deer 198184,dog 198185,ship 198186,horse 198187,airplane 198188,ship 198189,deer 198190,automobile 198191,bird 198192,deer 198193,frog 198194,truck 198195,cat 198196,horse 198197,ship 198198,deer 198199,ship 198200,deer 198201,airplane 198202,horse 198203,cat 198204,deer 198205,bird 198206,ship 198207,deer 198208,bird 198209,horse 198210,airplane 198211,truck 198212,bird 198213,frog 198214,dog 198215,deer 198216,truck 198217,deer 198218,ship 198219,ship 198220,dog 198221,truck 198222,frog 198223,cat 198224,deer 198225,ship 198226,truck 198227,ship 198228,dog 198229,frog 198230,dog 198231,dog 198232,horse 198233,deer 198234,truck 198235,horse 198236,ship 198237,airplane 198238,bird 198239,airplane 198240,truck 198241,automobile 198242,ship 198243,airplane 198244,frog 198245,ship 198246,ship 198247,cat 198248,ship 198249,ship 198250,horse 198251,deer 198252,bird 198253,deer 198254,truck 198255,horse 198256,dog 198257,frog 198258,truck 198259,ship 198260,cat 198261,bird 198262,bird 198263,cat 198264,horse 198265,deer 198266,deer 198267,frog 198268,airplane 198269,dog 198270,frog 198271,ship 198272,airplane 198273,truck 198274,automobile 198275,frog 198276,horse 198277,ship 198278,deer 198279,truck 198280,deer 198281,bird 198282,deer 198283,truck 198284,horse 198285,cat 198286,horse 198287,ship 198288,frog 198289,airplane 198290,cat 198291,dog 198292,cat 198293,bird 198294,horse 198295,deer 198296,airplane 198297,dog 198298,cat 198299,ship 198300,cat 198301,horse 198302,deer 198303,cat 198304,horse 198305,truck 198306,truck 198307,airplane 198308,deer 198309,truck 198310,horse 198311,dog 198312,cat 198313,bird 198314,deer 198315,truck 198316,frog 198317,bird 198318,bird 198319,airplane 198320,horse 198321,automobile 198322,truck 198323,cat 198324,truck 198325,horse 198326,deer 198327,automobile 198328,horse 198329,cat 198330,horse 198331,ship 198332,cat 198333,airplane 198334,bird 198335,airplane 198336,frog 198337,ship 198338,ship 198339,dog 198340,frog 198341,ship 198342,frog 198343,automobile 198344,truck 198345,cat 198346,dog 198347,cat 198348,deer 198349,cat 198350,bird 198351,truck 198352,horse 198353,cat 198354,deer 198355,dog 198356,deer 198357,airplane 198358,deer 198359,bird 198360,truck 198361,frog 198362,deer 198363,automobile 198364,cat 198365,cat 198366,airplane 198367,bird 198368,dog 198369,frog 198370,dog 198371,airplane 198372,dog 198373,frog 198374,automobile 198375,deer 198376,frog 198377,cat 198378,ship 198379,airplane 198380,deer 198381,horse 198382,bird 198383,automobile 198384,dog 198385,cat 198386,automobile 198387,ship 198388,airplane 198389,frog 198390,cat 198391,deer 198392,frog 198393,horse 198394,cat 198395,cat 198396,horse 198397,bird 198398,automobile 198399,ship 198400,frog 198401,horse 198402,cat 198403,truck 198404,airplane 198405,cat 198406,truck 198407,cat 198408,deer 198409,bird 198410,horse 198411,ship 198412,frog 198413,dog 198414,deer 198415,truck 198416,bird 198417,airplane 198418,deer 198419,cat 198420,frog 198421,horse 198422,bird 198423,airplane 198424,bird 198425,bird 198426,airplane 198427,frog 198428,cat 198429,frog 198430,bird 198431,bird 198432,ship 198433,frog 198434,frog 198435,truck 198436,horse 198437,truck 198438,horse 198439,frog 198440,airplane 198441,deer 198442,airplane 198443,airplane 198444,frog 198445,bird 198446,dog 198447,airplane 198448,dog 198449,truck 198450,horse 198451,cat 198452,bird 198453,horse 198454,deer 198455,truck 198456,horse 198457,airplane 198458,dog 198459,cat 198460,truck 198461,cat 198462,deer 198463,ship 198464,ship 198465,ship 198466,frog 198467,frog 198468,truck 198469,bird 198470,cat 198471,frog 198472,bird 198473,dog 198474,ship 198475,frog 198476,deer 198477,automobile 198478,frog 198479,airplane 198480,airplane 198481,ship 198482,dog 198483,cat 198484,frog 198485,airplane 198486,ship 198487,airplane 198488,horse 198489,cat 198490,airplane 198491,deer 198492,deer 198493,bird 198494,horse 198495,dog 198496,frog 198497,automobile 198498,dog 198499,truck 198500,ship 198501,frog 198502,automobile 198503,cat 198504,dog 198505,truck 198506,cat 198507,airplane 198508,horse 198509,ship 198510,truck 198511,truck 198512,bird 198513,airplane 198514,automobile 198515,horse 198516,horse 198517,horse 198518,ship 198519,automobile 198520,frog 198521,frog 198522,truck 198523,bird 198524,dog 198525,ship 198526,dog 198527,horse 198528,ship 198529,ship 198530,truck 198531,truck 198532,cat 198533,horse 198534,frog 198535,dog 198536,dog 198537,ship 198538,cat 198539,dog 198540,horse 198541,cat 198542,airplane 198543,ship 198544,deer 198545,deer 198546,bird 198547,truck 198548,bird 198549,deer 198550,cat 198551,truck 198552,frog 198553,airplane 198554,truck 198555,deer 198556,deer 198557,airplane 198558,horse 198559,cat 198560,deer 198561,automobile 198562,truck 198563,frog 198564,deer 198565,bird 198566,automobile 198567,bird 198568,horse 198569,horse 198570,horse 198571,cat 198572,dog 198573,cat 198574,bird 198575,truck 198576,deer 198577,dog 198578,bird 198579,cat 198580,frog 198581,dog 198582,bird 198583,dog 198584,cat 198585,ship 198586,horse 198587,airplane 198588,automobile 198589,deer 198590,truck 198591,automobile 198592,cat 198593,dog 198594,frog 198595,cat 198596,truck 198597,deer 198598,ship 198599,airplane 198600,horse 198601,frog 198602,automobile 198603,bird 198604,airplane 198605,frog 198606,dog 198607,dog 198608,dog 198609,bird 198610,ship 198611,horse 198612,frog 198613,cat 198614,dog 198615,deer 198616,dog 198617,deer 198618,bird 198619,dog 198620,airplane 198621,dog 198622,cat 198623,truck 198624,frog 198625,horse 198626,dog 198627,horse 198628,dog 198629,airplane 198630,airplane 198631,bird 198632,cat 198633,dog 198634,cat 198635,airplane 198636,airplane 198637,dog 198638,frog 198639,bird 198640,frog 198641,truck 198642,cat 198643,airplane 198644,bird 198645,deer 198646,deer 198647,automobile 198648,frog 198649,frog 198650,horse 198651,cat 198652,truck 198653,cat 198654,cat 198655,horse 198656,dog 198657,dog 198658,truck 198659,cat 198660,cat 198661,horse 198662,dog 198663,bird 198664,automobile 198665,ship 198666,bird 198667,airplane 198668,bird 198669,frog 198670,cat 198671,deer 198672,horse 198673,truck 198674,horse 198675,airplane 198676,bird 198677,deer 198678,airplane 198679,deer 198680,cat 198681,deer 198682,ship 198683,dog 198684,deer 198685,deer 198686,dog 198687,dog 198688,horse 198689,cat 198690,frog 198691,frog 198692,airplane 198693,truck 198694,frog 198695,truck 198696,deer 198697,cat 198698,deer 198699,deer 198700,truck 198701,ship 198702,bird 198703,deer 198704,automobile 198705,bird 198706,dog 198707,frog 198708,airplane 198709,frog 198710,bird 198711,airplane 198712,bird 198713,truck 198714,ship 198715,airplane 198716,bird 198717,bird 198718,dog 198719,automobile 198720,deer 198721,automobile 198722,truck 198723,dog 198724,deer 198725,truck 198726,deer 198727,ship 198728,cat 198729,frog 198730,deer 198731,deer 198732,cat 198733,automobile 198734,cat 198735,deer 198736,bird 198737,cat 198738,automobile 198739,airplane 198740,cat 198741,dog 198742,deer 198743,frog 198744,deer 198745,truck 198746,dog 198747,bird 198748,automobile 198749,ship 198750,truck 198751,deer 198752,airplane 198753,dog 198754,truck 198755,bird 198756,truck 198757,deer 198758,deer 198759,frog 198760,frog 198761,cat 198762,deer 198763,truck 198764,airplane 198765,cat 198766,dog 198767,deer 198768,automobile 198769,truck 198770,dog 198771,frog 198772,dog 198773,deer 198774,deer 198775,truck 198776,deer 198777,frog 198778,ship 198779,dog 198780,frog 198781,deer 198782,automobile 198783,horse 198784,frog 198785,truck 198786,truck 198787,horse 198788,frog 198789,cat 198790,cat 198791,ship 198792,automobile 198793,dog 198794,deer 198795,ship 198796,truck 198797,frog 198798,airplane 198799,frog 198800,dog 198801,frog 198802,truck 198803,dog 198804,ship 198805,automobile 198806,ship 198807,dog 198808,truck 198809,truck 198810,frog 198811,horse 198812,horse 198813,bird 198814,dog 198815,dog 198816,truck 198817,deer 198818,horse 198819,truck 198820,dog 198821,horse 198822,horse 198823,cat 198824,bird 198825,dog 198826,bird 198827,horse 198828,dog 198829,frog 198830,horse 198831,dog 198832,horse 198833,cat 198834,cat 198835,dog 198836,dog 198837,cat 198838,deer 198839,dog 198840,bird 198841,airplane 198842,airplane 198843,automobile 198844,cat 198845,horse 198846,truck 198847,automobile 198848,horse 198849,airplane 198850,ship 198851,airplane 198852,airplane 198853,bird 198854,horse 198855,deer 198856,cat 198857,airplane 198858,frog 198859,horse 198860,deer 198861,frog 198862,airplane 198863,cat 198864,deer 198865,cat 198866,frog 198867,truck 198868,dog 198869,deer 198870,frog 198871,airplane 198872,bird 198873,ship 198874,truck 198875,cat 198876,horse 198877,ship 198878,frog 198879,airplane 198880,ship 198881,horse 198882,deer 198883,frog 198884,ship 198885,truck 198886,truck 198887,deer 198888,frog 198889,frog 198890,horse 198891,frog 198892,airplane 198893,horse 198894,ship 198895,cat 198896,frog 198897,deer 198898,horse 198899,bird 198900,dog 198901,dog 198902,truck 198903,airplane 198904,deer 198905,truck 198906,airplane 198907,bird 198908,cat 198909,deer 198910,frog 198911,frog 198912,ship 198913,deer 198914,dog 198915,bird 198916,bird 198917,airplane 198918,cat 198919,frog 198920,truck 198921,cat 198922,airplane 198923,frog 198924,truck 198925,dog 198926,deer 198927,airplane 198928,truck 198929,frog 198930,bird 198931,frog 198932,dog 198933,horse 198934,automobile 198935,bird 198936,frog 198937,horse 198938,cat 198939,deer 198940,dog 198941,automobile 198942,bird 198943,bird 198944,frog 198945,cat 198946,automobile 198947,truck 198948,deer 198949,bird 198950,cat 198951,horse 198952,deer 198953,ship 198954,ship 198955,horse 198956,deer 198957,dog 198958,bird 198959,truck 198960,dog 198961,horse 198962,cat 198963,bird 198964,automobile 198965,truck 198966,airplane 198967,dog 198968,ship 198969,ship 198970,deer 198971,frog 198972,cat 198973,bird 198974,horse 198975,dog 198976,dog 198977,airplane 198978,cat 198979,deer 198980,horse 198981,ship 198982,frog 198983,ship 198984,deer 198985,dog 198986,ship 198987,truck 198988,truck 198989,bird 198990,frog 198991,horse 198992,frog 198993,truck 198994,cat 198995,dog 198996,airplane 198997,airplane 198998,automobile 198999,airplane 199000,ship 199001,truck 199002,dog 199003,dog 199004,horse 199005,truck 199006,ship 199007,truck 199008,frog 199009,truck 199010,cat 199011,cat 199012,automobile 199013,ship 199014,airplane 199015,truck 199016,airplane 199017,horse 199018,horse 199019,frog 199020,automobile 199021,cat 199022,truck 199023,frog 199024,automobile 199025,ship 199026,automobile 199027,truck 199028,deer 199029,horse 199030,cat 199031,frog 199032,truck 199033,horse 199034,ship 199035,horse 199036,deer 199037,bird 199038,dog 199039,horse 199040,frog 199041,ship 199042,dog 199043,dog 199044,bird 199045,ship 199046,truck 199047,bird 199048,cat 199049,bird 199050,frog 199051,horse 199052,automobile 199053,horse 199054,deer 199055,frog 199056,cat 199057,dog 199058,frog 199059,bird 199060,truck 199061,truck 199062,frog 199063,cat 199064,deer 199065,dog 199066,cat 199067,truck 199068,bird 199069,cat 199070,cat 199071,bird 199072,dog 199073,bird 199074,deer 199075,airplane 199076,horse 199077,horse 199078,truck 199079,airplane 199080,frog 199081,automobile 199082,deer 199083,automobile 199084,dog 199085,dog 199086,frog 199087,ship 199088,airplane 199089,dog 199090,cat 199091,frog 199092,dog 199093,bird 199094,ship 199095,truck 199096,automobile 199097,frog 199098,deer 199099,frog 199100,horse 199101,airplane 199102,frog 199103,dog 199104,deer 199105,ship 199106,cat 199107,deer 199108,ship 199109,truck 199110,bird 199111,frog 199112,horse 199113,frog 199114,deer 199115,dog 199116,cat 199117,dog 199118,airplane 199119,ship 199120,ship 199121,airplane 199122,horse 199123,truck 199124,automobile 199125,cat 199126,frog 199127,airplane 199128,airplane 199129,deer 199130,deer 199131,cat 199132,cat 199133,truck 199134,deer 199135,deer 199136,deer 199137,airplane 199138,bird 199139,horse 199140,horse 199141,deer 199142,dog 199143,bird 199144,horse 199145,cat 199146,truck 199147,frog 199148,bird 199149,deer 199150,horse 199151,dog 199152,dog 199153,deer 199154,frog 199155,truck 199156,dog 199157,airplane 199158,truck 199159,automobile 199160,bird 199161,ship 199162,cat 199163,cat 199164,airplane 199165,frog 199166,cat 199167,truck 199168,deer 199169,bird 199170,cat 199171,deer 199172,bird 199173,cat 199174,cat 199175,frog 199176,horse 199177,airplane 199178,airplane 199179,dog 199180,deer 199181,cat 199182,airplane 199183,truck 199184,frog 199185,airplane 199186,airplane 199187,airplane 199188,airplane 199189,cat 199190,truck 199191,ship 199192,bird 199193,deer 199194,dog 199195,deer 199196,truck 199197,frog 199198,frog 199199,airplane 199200,deer 199201,deer 199202,horse 199203,cat 199204,frog 199205,airplane 199206,deer 199207,automobile 199208,dog 199209,truck 199210,deer 199211,horse 199212,deer 199213,frog 199214,dog 199215,truck 199216,truck 199217,dog 199218,deer 199219,bird 199220,dog 199221,frog 199222,cat 199223,airplane 199224,dog 199225,frog 199226,airplane 199227,frog 199228,cat 199229,cat 199230,horse 199231,horse 199232,deer 199233,airplane 199234,deer 199235,truck 199236,ship 199237,bird 199238,dog 199239,airplane 199240,deer 199241,cat 199242,truck 199243,truck 199244,cat 199245,truck 199246,bird 199247,horse 199248,truck 199249,deer 199250,airplane 199251,automobile 199252,truck 199253,deer 199254,dog 199255,bird 199256,truck 199257,frog 199258,automobile 199259,dog 199260,bird 199261,cat 199262,ship 199263,truck 199264,automobile 199265,cat 199266,deer 199267,automobile 199268,bird 199269,frog 199270,dog 199271,deer 199272,deer 199273,truck 199274,airplane 199275,horse 199276,automobile 199277,ship 199278,bird 199279,bird 199280,ship 199281,cat 199282,truck 199283,horse 199284,frog 199285,cat 199286,frog 199287,horse 199288,ship 199289,airplane 199290,frog 199291,deer 199292,airplane 199293,airplane 199294,airplane 199295,ship 199296,deer 199297,cat 199298,dog 199299,ship 199300,ship 199301,horse 199302,ship 199303,cat 199304,bird 199305,cat 199306,bird 199307,frog 199308,airplane 199309,bird 199310,automobile 199311,bird 199312,truck 199313,frog 199314,dog 199315,deer 199316,dog 199317,cat 199318,cat 199319,cat 199320,deer 199321,cat 199322,cat 199323,cat 199324,airplane 199325,horse 199326,ship 199327,dog 199328,cat 199329,cat 199330,deer 199331,dog 199332,dog 199333,frog 199334,frog 199335,ship 199336,bird 199337,bird 199338,automobile 199339,horse 199340,truck 199341,horse 199342,frog 199343,ship 199344,deer 199345,frog 199346,dog 199347,automobile 199348,deer 199349,deer 199350,deer 199351,ship 199352,cat 199353,truck 199354,horse 199355,frog 199356,horse 199357,truck 199358,cat 199359,deer 199360,frog 199361,cat 199362,automobile 199363,truck 199364,ship 199365,horse 199366,dog 199367,truck 199368,ship 199369,horse 199370,cat 199371,horse 199372,truck 199373,cat 199374,deer 199375,automobile 199376,bird 199377,cat 199378,truck 199379,automobile 199380,deer 199381,horse 199382,deer 199383,frog 199384,truck 199385,truck 199386,dog 199387,airplane 199388,bird 199389,truck 199390,ship 199391,truck 199392,deer 199393,dog 199394,cat 199395,bird 199396,frog 199397,dog 199398,dog 199399,airplane 199400,ship 199401,airplane 199402,truck 199403,airplane 199404,automobile 199405,horse 199406,truck 199407,frog 199408,automobile 199409,deer 199410,airplane 199411,airplane 199412,horse 199413,truck 199414,horse 199415,ship 199416,deer 199417,truck 199418,frog 199419,cat 199420,truck 199421,truck 199422,bird 199423,bird 199424,airplane 199425,frog 199426,truck 199427,cat 199428,ship 199429,cat 199430,automobile 199431,ship 199432,airplane 199433,horse 199434,horse 199435,frog 199436,airplane 199437,bird 199438,frog 199439,deer 199440,deer 199441,dog 199442,bird 199443,frog 199444,cat 199445,automobile 199446,dog 199447,cat 199448,frog 199449,frog 199450,truck 199451,ship 199452,deer 199453,automobile 199454,dog 199455,cat 199456,dog 199457,ship 199458,airplane 199459,cat 199460,ship 199461,bird 199462,cat 199463,dog 199464,automobile 199465,horse 199466,frog 199467,automobile 199468,horse 199469,truck 199470,bird 199471,bird 199472,dog 199473,ship 199474,ship 199475,dog 199476,frog 199477,automobile 199478,airplane 199479,horse 199480,bird 199481,ship 199482,airplane 199483,deer 199484,airplane 199485,deer 199486,deer 199487,frog 199488,dog 199489,dog 199490,cat 199491,cat 199492,frog 199493,airplane 199494,bird 199495,cat 199496,cat 199497,deer 199498,bird 199499,airplane 199500,cat 199501,deer 199502,airplane 199503,horse 199504,airplane 199505,truck 199506,cat 199507,ship 199508,frog 199509,truck 199510,airplane 199511,truck 199512,ship 199513,deer 199514,truck 199515,bird 199516,airplane 199517,frog 199518,cat 199519,frog 199520,airplane 199521,horse 199522,dog 199523,automobile 199524,airplane 199525,deer 199526,deer 199527,frog 199528,cat 199529,dog 199530,bird 199531,ship 199532,bird 199533,bird 199534,cat 199535,deer 199536,deer 199537,bird 199538,frog 199539,dog 199540,dog 199541,airplane 199542,deer 199543,frog 199544,truck 199545,deer 199546,cat 199547,deer 199548,frog 199549,horse 199550,cat 199551,truck 199552,cat 199553,cat 199554,deer 199555,truck 199556,airplane 199557,horse 199558,truck 199559,deer 199560,frog 199561,frog 199562,ship 199563,cat 199564,automobile 199565,bird 199566,cat 199567,frog 199568,frog 199569,horse 199570,cat 199571,airplane 199572,bird 199573,airplane 199574,airplane 199575,automobile 199576,ship 199577,frog 199578,frog 199579,airplane 199580,automobile 199581,airplane 199582,frog 199583,deer 199584,ship 199585,deer 199586,deer 199587,frog 199588,ship 199589,dog 199590,frog 199591,bird 199592,cat 199593,truck 199594,frog 199595,deer 199596,airplane 199597,bird 199598,ship 199599,horse 199600,bird 199601,bird 199602,horse 199603,dog 199604,airplane 199605,cat 199606,deer 199607,airplane 199608,airplane 199609,bird 199610,automobile 199611,frog 199612,horse 199613,bird 199614,horse 199615,bird 199616,horse 199617,airplane 199618,automobile 199619,cat 199620,deer 199621,truck 199622,airplane 199623,bird 199624,cat 199625,dog 199626,horse 199627,dog 199628,automobile 199629,frog 199630,airplane 199631,cat 199632,bird 199633,cat 199634,deer 199635,cat 199636,ship 199637,ship 199638,deer 199639,bird 199640,cat 199641,cat 199642,horse 199643,automobile 199644,frog 199645,ship 199646,frog 199647,cat 199648,frog 199649,bird 199650,cat 199651,deer 199652,truck 199653,frog 199654,deer 199655,bird 199656,horse 199657,horse 199658,cat 199659,bird 199660,cat 199661,deer 199662,horse 199663,frog 199664,frog 199665,truck 199666,bird 199667,bird 199668,ship 199669,cat 199670,deer 199671,ship 199672,horse 199673,truck 199674,deer 199675,cat 199676,cat 199677,truck 199678,cat 199679,horse 199680,frog 199681,bird 199682,horse 199683,frog 199684,cat 199685,bird 199686,cat 199687,truck 199688,frog 199689,frog 199690,bird 199691,truck 199692,frog 199693,automobile 199694,cat 199695,horse 199696,ship 199697,horse 199698,horse 199699,ship 199700,automobile 199701,automobile 199702,horse 199703,frog 199704,airplane 199705,cat 199706,dog 199707,frog 199708,frog 199709,deer 199710,cat 199711,bird 199712,automobile 199713,horse 199714,deer 199715,cat 199716,airplane 199717,horse 199718,truck 199719,frog 199720,airplane 199721,frog 199722,ship 199723,truck 199724,dog 199725,bird 199726,horse 199727,horse 199728,deer 199729,bird 199730,truck 199731,deer 199732,airplane 199733,cat 199734,frog 199735,dog 199736,dog 199737,cat 199738,dog 199739,automobile 199740,automobile 199741,horse 199742,deer 199743,bird 199744,deer 199745,airplane 199746,deer 199747,frog 199748,deer 199749,dog 199750,cat 199751,horse 199752,horse 199753,frog 199754,dog 199755,frog 199756,airplane 199757,deer 199758,bird 199759,deer 199760,truck 199761,bird 199762,cat 199763,ship 199764,cat 199765,automobile 199766,horse 199767,truck 199768,automobile 199769,frog 199770,ship 199771,horse 199772,automobile 199773,truck 199774,deer 199775,deer 199776,deer 199777,truck 199778,cat 199779,cat 199780,cat 199781,frog 199782,frog 199783,airplane 199784,airplane 199785,deer 199786,ship 199787,frog 199788,airplane 199789,bird 199790,airplane 199791,bird 199792,dog 199793,cat 199794,dog 199795,cat 199796,cat 199797,frog 199798,cat 199799,dog 199800,dog 199801,horse 199802,airplane 199803,frog 199804,horse 199805,cat 199806,automobile 199807,horse 199808,dog 199809,airplane 199810,automobile 199811,airplane 199812,frog 199813,ship 199814,truck 199815,deer 199816,ship 199817,horse 199818,frog 199819,bird 199820,ship 199821,airplane 199822,frog 199823,ship 199824,airplane 199825,cat 199826,horse 199827,automobile 199828,deer 199829,deer 199830,truck 199831,cat 199832,airplane 199833,truck 199834,ship 199835,truck 199836,truck 199837,horse 199838,truck 199839,deer 199840,truck 199841,horse 199842,horse 199843,deer 199844,deer 199845,airplane 199846,automobile 199847,deer 199848,automobile 199849,dog 199850,automobile 199851,ship 199852,dog 199853,bird 199854,airplane 199855,dog 199856,automobile 199857,airplane 199858,truck 199859,ship 199860,deer 199861,automobile 199862,truck 199863,horse 199864,cat 199865,bird 199866,truck 199867,cat 199868,automobile 199869,frog 199870,cat 199871,frog 199872,automobile 199873,frog 199874,automobile 199875,deer 199876,bird 199877,airplane 199878,bird 199879,truck 199880,dog 199881,truck 199882,cat 199883,truck 199884,dog 199885,cat 199886,ship 199887,automobile 199888,dog 199889,automobile 199890,deer 199891,deer 199892,deer 199893,deer 199894,truck 199895,dog 199896,deer 199897,horse 199898,horse 199899,airplane 199900,cat 199901,dog 199902,bird 199903,ship 199904,horse 199905,airplane 199906,cat 199907,deer 199908,horse 199909,cat 199910,dog 199911,airplane 199912,horse 199913,deer 199914,dog 199915,horse 199916,dog 199917,airplane 199918,deer 199919,truck 199920,bird 199921,cat 199922,truck 199923,bird 199924,ship 199925,dog 199926,horse 199927,deer 199928,cat 199929,truck 199930,bird 199931,dog 199932,cat 199933,horse 199934,deer 199935,truck 199936,automobile 199937,cat 199938,deer 199939,dog 199940,horse 199941,dog 199942,bird 199943,bird 199944,cat 199945,bird 199946,cat 199947,ship 199948,dog 199949,horse 199950,bird 199951,horse 199952,ship 199953,truck 199954,cat 199955,airplane 199956,dog 199957,deer 199958,cat 199959,horse 199960,ship 199961,deer 199962,truck 199963,automobile 199964,dog 199965,truck 199966,frog 199967,deer 199968,deer 199969,ship 199970,ship 199971,deer 199972,airplane 199973,bird 199974,cat 199975,cat 199976,truck 199977,frog 199978,horse 199979,truck 199980,ship 199981,cat 199982,ship 199983,deer 199984,dog 199985,automobile 199986,cat 199987,cat 199988,deer 199989,cat 199990,truck 199991,bird 199992,dog 199993,frog 199994,deer 199995,horse 199996,cat 199997,truck 199998,bird 199999,dog 200000,horse 200001,horse 200002,truck 200003,automobile 200004,dog 200005,automobile 200006,ship 200007,cat 200008,deer 200009,frog 200010,dog 200011,cat 200012,truck 200013,ship 200014,ship 200015,horse 200016,deer 200017,bird 200018,cat 200019,deer 200020,truck 200021,automobile 200022,deer 200023,truck 200024,horse 200025,cat 200026,cat 200027,frog 200028,horse 200029,bird 200030,ship 200031,automobile 200032,dog 200033,horse 200034,horse 200035,ship 200036,dog 200037,deer 200038,frog 200039,dog 200040,deer 200041,frog 200042,airplane 200043,airplane 200044,bird 200045,dog 200046,deer 200047,truck 200048,dog 200049,frog 200050,deer 200051,truck 200052,bird 200053,ship 200054,bird 200055,dog 200056,dog 200057,frog 200058,deer 200059,cat 200060,truck 200061,airplane 200062,horse 200063,automobile 200064,automobile 200065,deer 200066,deer 200067,frog 200068,frog 200069,deer 200070,ship 200071,frog 200072,cat 200073,airplane 200074,ship 200075,frog 200076,horse 200077,truck 200078,ship 200079,horse 200080,deer 200081,cat 200082,cat 200083,cat 200084,cat 200085,frog 200086,dog 200087,airplane 200088,frog 200089,cat 200090,frog 200091,deer 200092,bird 200093,frog 200094,truck 200095,cat 200096,airplane 200097,dog 200098,dog 200099,truck 200100,frog 200101,frog 200102,deer 200103,ship 200104,bird 200105,automobile 200106,horse 200107,cat 200108,truck 200109,airplane 200110,truck 200111,cat 200112,frog 200113,automobile 200114,dog 200115,cat 200116,deer 200117,horse 200118,dog 200119,deer 200120,horse 200121,cat 200122,frog 200123,horse 200124,frog 200125,bird 200126,deer 200127,deer 200128,truck 200129,truck 200130,ship 200131,dog 200132,automobile 200133,deer 200134,automobile 200135,bird 200136,cat 200137,cat 200138,dog 200139,horse 200140,automobile 200141,frog 200142,frog 200143,deer 200144,deer 200145,automobile 200146,ship 200147,ship 200148,automobile 200149,horse 200150,deer 200151,airplane 200152,cat 200153,bird 200154,airplane 200155,dog 200156,airplane 200157,ship 200158,ship 200159,bird 200160,deer 200161,ship 200162,cat 200163,automobile 200164,horse 200165,truck 200166,dog 200167,airplane 200168,ship 200169,dog 200170,deer 200171,bird 200172,truck 200173,truck 200174,ship 200175,ship 200176,deer 200177,bird 200178,cat 200179,bird 200180,bird 200181,cat 200182,ship 200183,horse 200184,dog 200185,horse 200186,truck 200187,dog 200188,horse 200189,airplane 200190,automobile 200191,frog 200192,bird 200193,truck 200194,ship 200195,dog 200196,dog 200197,cat 200198,airplane 200199,horse 200200,frog 200201,frog 200202,horse 200203,frog 200204,frog 200205,truck 200206,truck 200207,dog 200208,deer 200209,ship 200210,bird 200211,frog 200212,ship 200213,bird 200214,automobile 200215,frog 200216,airplane 200217,automobile 200218,horse 200219,truck 200220,airplane 200221,horse 200222,frog 200223,horse 200224,airplane 200225,deer 200226,horse 200227,cat 200228,frog 200229,dog 200230,airplane 200231,airplane 200232,cat 200233,frog 200234,airplane 200235,horse 200236,cat 200237,deer 200238,horse 200239,deer 200240,deer 200241,cat 200242,deer 200243,automobile 200244,frog 200245,airplane 200246,ship 200247,automobile 200248,ship 200249,truck 200250,automobile 200251,automobile 200252,dog 200253,dog 200254,deer 200255,deer 200256,cat 200257,bird 200258,automobile 200259,deer 200260,automobile 200261,horse 200262,automobile 200263,ship 200264,cat 200265,horse 200266,deer 200267,ship 200268,dog 200269,automobile 200270,dog 200271,airplane 200272,deer 200273,automobile 200274,truck 200275,truck 200276,cat 200277,horse 200278,frog 200279,bird 200280,horse 200281,bird 200282,airplane 200283,cat 200284,cat 200285,deer 200286,automobile 200287,ship 200288,frog 200289,frog 200290,frog 200291,frog 200292,dog 200293,horse 200294,cat 200295,frog 200296,cat 200297,deer 200298,cat 200299,automobile 200300,cat 200301,horse 200302,horse 200303,dog 200304,deer 200305,cat 200306,bird 200307,automobile 200308,truck 200309,horse 200310,cat 200311,automobile 200312,automobile 200313,deer 200314,automobile 200315,frog 200316,cat 200317,deer 200318,cat 200319,airplane 200320,frog 200321,dog 200322,deer 200323,frog 200324,deer 200325,dog 200326,dog 200327,deer 200328,airplane 200329,deer 200330,horse 200331,frog 200332,horse 200333,horse 200334,cat 200335,horse 200336,truck 200337,cat 200338,dog 200339,frog 200340,deer 200341,cat 200342,airplane 200343,frog 200344,cat 200345,cat 200346,truck 200347,deer 200348,dog 200349,frog 200350,horse 200351,dog 200352,frog 200353,bird 200354,truck 200355,deer 200356,truck 200357,cat 200358,deer 200359,deer 200360,frog 200361,truck 200362,bird 200363,deer 200364,cat 200365,deer 200366,deer 200367,airplane 200368,frog 200369,frog 200370,ship 200371,horse 200372,bird 200373,cat 200374,cat 200375,frog 200376,cat 200377,bird 200378,horse 200379,deer 200380,cat 200381,deer 200382,dog 200383,airplane 200384,ship 200385,dog 200386,bird 200387,bird 200388,horse 200389,deer 200390,cat 200391,truck 200392,cat 200393,deer 200394,horse 200395,deer 200396,bird 200397,deer 200398,bird 200399,dog 200400,horse 200401,bird 200402,cat 200403,horse 200404,airplane 200405,horse 200406,deer 200407,truck 200408,airplane 200409,bird 200410,frog 200411,horse 200412,ship 200413,dog 200414,truck 200415,horse 200416,horse 200417,cat 200418,truck 200419,automobile 200420,deer 200421,bird 200422,truck 200423,dog 200424,bird 200425,automobile 200426,truck 200427,horse 200428,dog 200429,ship 200430,bird 200431,frog 200432,frog 200433,horse 200434,horse 200435,ship 200436,horse 200437,deer 200438,bird 200439,bird 200440,cat 200441,airplane 200442,frog 200443,ship 200444,truck 200445,cat 200446,airplane 200447,deer 200448,ship 200449,frog 200450,truck 200451,deer 200452,cat 200453,deer 200454,deer 200455,deer 200456,horse 200457,truck 200458,airplane 200459,airplane 200460,frog 200461,dog 200462,frog 200463,cat 200464,horse 200465,dog 200466,deer 200467,deer 200468,ship 200469,horse 200470,truck 200471,truck 200472,cat 200473,automobile 200474,deer 200475,horse 200476,dog 200477,truck 200478,dog 200479,dog 200480,deer 200481,frog 200482,automobile 200483,cat 200484,cat 200485,bird 200486,cat 200487,deer 200488,cat 200489,cat 200490,ship 200491,bird 200492,ship 200493,horse 200494,automobile 200495,frog 200496,cat 200497,cat 200498,airplane 200499,horse 200500,frog 200501,truck 200502,frog 200503,cat 200504,dog 200505,truck 200506,ship 200507,bird 200508,truck 200509,deer 200510,bird 200511,frog 200512,bird 200513,deer 200514,bird 200515,cat 200516,ship 200517,deer 200518,bird 200519,horse 200520,horse 200521,automobile 200522,deer 200523,cat 200524,ship 200525,automobile 200526,bird 200527,bird 200528,airplane 200529,airplane 200530,cat 200531,deer 200532,airplane 200533,truck 200534,bird 200535,horse 200536,cat 200537,bird 200538,frog 200539,dog 200540,deer 200541,ship 200542,cat 200543,frog 200544,frog 200545,ship 200546,frog 200547,cat 200548,horse 200549,ship 200550,bird 200551,automobile 200552,deer 200553,ship 200554,automobile 200555,deer 200556,deer 200557,deer 200558,horse 200559,cat 200560,deer 200561,deer 200562,deer 200563,airplane 200564,bird 200565,truck 200566,automobile 200567,airplane 200568,frog 200569,frog 200570,deer 200571,deer 200572,automobile 200573,frog 200574,dog 200575,dog 200576,ship 200577,cat 200578,horse 200579,automobile 200580,cat 200581,bird 200582,ship 200583,deer 200584,airplane 200585,deer 200586,deer 200587,bird 200588,frog 200589,airplane 200590,frog 200591,airplane 200592,deer 200593,deer 200594,ship 200595,horse 200596,dog 200597,deer 200598,ship 200599,airplane 200600,cat 200601,dog 200602,frog 200603,horse 200604,dog 200605,truck 200606,automobile 200607,horse 200608,frog 200609,dog 200610,bird 200611,bird 200612,cat 200613,bird 200614,ship 200615,deer 200616,frog 200617,airplane 200618,truck 200619,bird 200620,deer 200621,deer 200622,ship 200623,deer 200624,airplane 200625,airplane 200626,frog 200627,airplane 200628,bird 200629,truck 200630,truck 200631,cat 200632,frog 200633,horse 200634,dog 200635,airplane 200636,frog 200637,horse 200638,deer 200639,deer 200640,airplane 200641,automobile 200642,horse 200643,automobile 200644,automobile 200645,airplane 200646,bird 200647,frog 200648,automobile 200649,automobile 200650,automobile 200651,horse 200652,cat 200653,deer 200654,truck 200655,dog 200656,dog 200657,ship 200658,dog 200659,airplane 200660,frog 200661,truck 200662,truck 200663,dog 200664,airplane 200665,deer 200666,dog 200667,automobile 200668,ship 200669,airplane 200670,bird 200671,cat 200672,airplane 200673,deer 200674,automobile 200675,frog 200676,deer 200677,deer 200678,deer 200679,deer 200680,frog 200681,cat 200682,deer 200683,truck 200684,frog 200685,dog 200686,deer 200687,dog 200688,horse 200689,frog 200690,ship 200691,horse 200692,frog 200693,cat 200694,deer 200695,automobile 200696,deer 200697,deer 200698,airplane 200699,airplane 200700,frog 200701,automobile 200702,airplane 200703,horse 200704,ship 200705,bird 200706,frog 200707,horse 200708,truck 200709,horse 200710,ship 200711,truck 200712,bird 200713,truck 200714,frog 200715,truck 200716,airplane 200717,deer 200718,cat 200719,frog 200720,cat 200721,dog 200722,dog 200723,cat 200724,horse 200725,automobile 200726,horse 200727,truck 200728,dog 200729,dog 200730,horse 200731,truck 200732,truck 200733,horse 200734,frog 200735,truck 200736,dog 200737,cat 200738,cat 200739,bird 200740,frog 200741,bird 200742,horse 200743,dog 200744,deer 200745,automobile 200746,cat 200747,deer 200748,cat 200749,horse 200750,deer 200751,truck 200752,cat 200753,airplane 200754,dog 200755,truck 200756,ship 200757,airplane 200758,airplane 200759,automobile 200760,bird 200761,airplane 200762,frog 200763,deer 200764,deer 200765,deer 200766,automobile 200767,bird 200768,deer 200769,truck 200770,horse 200771,horse 200772,dog 200773,automobile 200774,horse 200775,automobile 200776,dog 200777,cat 200778,cat 200779,airplane 200780,frog 200781,dog 200782,bird 200783,airplane 200784,deer 200785,cat 200786,dog 200787,horse 200788,cat 200789,cat 200790,frog 200791,truck 200792,truck 200793,cat 200794,airplane 200795,frog 200796,deer 200797,cat 200798,truck 200799,deer 200800,automobile 200801,airplane 200802,bird 200803,deer 200804,frog 200805,frog 200806,cat 200807,ship 200808,horse 200809,dog 200810,frog 200811,deer 200812,bird 200813,truck 200814,cat 200815,horse 200816,horse 200817,bird 200818,deer 200819,automobile 200820,deer 200821,frog 200822,truck 200823,truck 200824,bird 200825,airplane 200826,deer 200827,deer 200828,horse 200829,truck 200830,deer 200831,dog 200832,dog 200833,automobile 200834,bird 200835,bird 200836,ship 200837,cat 200838,airplane 200839,airplane 200840,dog 200841,airplane 200842,deer 200843,truck 200844,truck 200845,horse 200846,deer 200847,horse 200848,frog 200849,cat 200850,cat 200851,truck 200852,frog 200853,truck 200854,frog 200855,truck 200856,airplane 200857,cat 200858,deer 200859,horse 200860,deer 200861,ship 200862,dog 200863,frog 200864,dog 200865,deer 200866,automobile 200867,airplane 200868,bird 200869,horse 200870,airplane 200871,ship 200872,frog 200873,bird 200874,ship 200875,airplane 200876,horse 200877,dog 200878,horse 200879,dog 200880,bird 200881,truck 200882,cat 200883,ship 200884,cat 200885,truck 200886,frog 200887,ship 200888,dog 200889,cat 200890,cat 200891,horse 200892,truck 200893,horse 200894,deer 200895,bird 200896,frog 200897,truck 200898,bird 200899,deer 200900,deer 200901,ship 200902,bird 200903,ship 200904,ship 200905,bird 200906,deer 200907,airplane 200908,airplane 200909,deer 200910,dog 200911,bird 200912,bird 200913,horse 200914,cat 200915,frog 200916,frog 200917,deer 200918,cat 200919,cat 200920,frog 200921,dog 200922,horse 200923,deer 200924,bird 200925,dog 200926,truck 200927,airplane 200928,deer 200929,frog 200930,airplane 200931,airplane 200932,cat 200933,bird 200934,horse 200935,automobile 200936,truck 200937,frog 200938,horse 200939,cat 200940,bird 200941,bird 200942,automobile 200943,airplane 200944,dog 200945,cat 200946,airplane 200947,horse 200948,ship 200949,ship 200950,dog 200951,truck 200952,truck 200953,ship 200954,airplane 200955,bird 200956,frog 200957,ship 200958,frog 200959,cat 200960,airplane 200961,bird 200962,cat 200963,automobile 200964,dog 200965,truck 200966,horse 200967,horse 200968,truck 200969,ship 200970,cat 200971,deer 200972,cat 200973,dog 200974,frog 200975,frog 200976,automobile 200977,truck 200978,deer 200979,deer 200980,dog 200981,frog 200982,horse 200983,bird 200984,airplane 200985,deer 200986,horse 200987,ship 200988,cat 200989,ship 200990,ship 200991,cat 200992,automobile 200993,automobile 200994,deer 200995,frog 200996,truck 200997,cat 200998,dog 200999,ship 201000,dog 201001,horse 201002,cat 201003,dog 201004,automobile 201005,automobile 201006,airplane 201007,cat 201008,cat 201009,horse 201010,airplane 201011,truck 201012,cat 201013,truck 201014,cat 201015,dog 201016,horse 201017,automobile 201018,truck 201019,bird 201020,frog 201021,horse 201022,deer 201023,deer 201024,frog 201025,ship 201026,dog 201027,dog 201028,truck 201029,cat 201030,truck 201031,truck 201032,cat 201033,truck 201034,bird 201035,cat 201036,ship 201037,frog 201038,truck 201039,truck 201040,bird 201041,ship 201042,horse 201043,ship 201044,frog 201045,automobile 201046,cat 201047,ship 201048,deer 201049,truck 201050,automobile 201051,bird 201052,ship 201053,dog 201054,deer 201055,dog 201056,airplane 201057,airplane 201058,cat 201059,cat 201060,cat 201061,horse 201062,frog 201063,ship 201064,truck 201065,dog 201066,frog 201067,cat 201068,horse 201069,bird 201070,automobile 201071,cat 201072,airplane 201073,airplane 201074,airplane 201075,dog 201076,deer 201077,frog 201078,bird 201079,deer 201080,bird 201081,truck 201082,ship 201083,truck 201084,deer 201085,frog 201086,frog 201087,bird 201088,truck 201089,dog 201090,cat 201091,ship 201092,automobile 201093,frog 201094,bird 201095,frog 201096,automobile 201097,ship 201098,cat 201099,cat 201100,deer 201101,horse 201102,dog 201103,bird 201104,airplane 201105,deer 201106,bird 201107,deer 201108,deer 201109,deer 201110,airplane 201111,frog 201112,truck 201113,truck 201114,bird 201115,frog 201116,dog 201117,cat 201118,airplane 201119,truck 201120,bird 201121,horse 201122,ship 201123,bird 201124,dog 201125,automobile 201126,horse 201127,deer 201128,horse 201129,deer 201130,dog 201131,ship 201132,airplane 201133,frog 201134,frog 201135,automobile 201136,dog 201137,bird 201138,airplane 201139,cat 201140,dog 201141,horse 201142,cat 201143,truck 201144,horse 201145,frog 201146,ship 201147,horse 201148,cat 201149,automobile 201150,frog 201151,airplane 201152,deer 201153,airplane 201154,horse 201155,deer 201156,deer 201157,dog 201158,frog 201159,airplane 201160,dog 201161,ship 201162,bird 201163,dog 201164,automobile 201165,dog 201166,airplane 201167,bird 201168,bird 201169,ship 201170,dog 201171,ship 201172,frog 201173,deer 201174,cat 201175,cat 201176,frog 201177,truck 201178,dog 201179,truck 201180,horse 201181,deer 201182,deer 201183,airplane 201184,airplane 201185,dog 201186,horse 201187,truck 201188,truck 201189,cat 201190,frog 201191,deer 201192,automobile 201193,deer 201194,ship 201195,airplane 201196,horse 201197,ship 201198,cat 201199,bird 201200,dog 201201,frog 201202,airplane 201203,frog 201204,horse 201205,deer 201206,deer 201207,bird 201208,deer 201209,dog 201210,cat 201211,automobile 201212,deer 201213,automobile 201214,bird 201215,cat 201216,automobile 201217,horse 201218,deer 201219,ship 201220,ship 201221,ship 201222,automobile 201223,deer 201224,airplane 201225,deer 201226,cat 201227,dog 201228,deer 201229,deer 201230,truck 201231,dog 201232,frog 201233,cat 201234,horse 201235,deer 201236,horse 201237,dog 201238,dog 201239,truck 201240,horse 201241,dog 201242,airplane 201243,cat 201244,truck 201245,truck 201246,dog 201247,cat 201248,truck 201249,automobile 201250,cat 201251,ship 201252,frog 201253,deer 201254,deer 201255,dog 201256,deer 201257,truck 201258,ship 201259,dog 201260,deer 201261,dog 201262,truck 201263,truck 201264,horse 201265,truck 201266,cat 201267,truck 201268,dog 201269,horse 201270,deer 201271,frog 201272,cat 201273,bird 201274,bird 201275,horse 201276,automobile 201277,truck 201278,dog 201279,truck 201280,deer 201281,automobile 201282,ship 201283,bird 201284,cat 201285,horse 201286,deer 201287,automobile 201288,horse 201289,cat 201290,frog 201291,ship 201292,airplane 201293,truck 201294,deer 201295,truck 201296,cat 201297,cat 201298,cat 201299,frog 201300,dog 201301,airplane 201302,cat 201303,deer 201304,horse 201305,dog 201306,airplane 201307,truck 201308,horse 201309,ship 201310,truck 201311,airplane 201312,ship 201313,horse 201314,truck 201315,airplane 201316,airplane 201317,airplane 201318,truck 201319,frog 201320,automobile 201321,deer 201322,truck 201323,horse 201324,truck 201325,truck 201326,deer 201327,dog 201328,horse 201329,cat 201330,dog 201331,dog 201332,deer 201333,cat 201334,frog 201335,bird 201336,deer 201337,automobile 201338,horse 201339,bird 201340,bird 201341,horse 201342,bird 201343,ship 201344,cat 201345,dog 201346,deer 201347,dog 201348,dog 201349,bird 201350,dog 201351,frog 201352,deer 201353,cat 201354,bird 201355,frog 201356,horse 201357,truck 201358,truck 201359,deer 201360,cat 201361,ship 201362,cat 201363,truck 201364,airplane 201365,dog 201366,horse 201367,horse 201368,horse 201369,bird 201370,bird 201371,bird 201372,airplane 201373,frog 201374,truck 201375,cat 201376,deer 201377,frog 201378,bird 201379,ship 201380,deer 201381,horse 201382,automobile 201383,dog 201384,cat 201385,airplane 201386,deer 201387,dog 201388,truck 201389,truck 201390,bird 201391,dog 201392,frog 201393,cat 201394,truck 201395,bird 201396,bird 201397,horse 201398,automobile 201399,horse 201400,frog 201401,ship 201402,frog 201403,truck 201404,bird 201405,bird 201406,ship 201407,frog 201408,deer 201409,dog 201410,dog 201411,horse 201412,airplane 201413,ship 201414,automobile 201415,cat 201416,bird 201417,automobile 201418,frog 201419,ship 201420,deer 201421,frog 201422,deer 201423,bird 201424,airplane 201425,truck 201426,automobile 201427,frog 201428,bird 201429,deer 201430,truck 201431,ship 201432,dog 201433,automobile 201434,cat 201435,deer 201436,dog 201437,truck 201438,airplane 201439,horse 201440,deer 201441,bird 201442,dog 201443,bird 201444,truck 201445,truck 201446,dog 201447,dog 201448,horse 201449,truck 201450,bird 201451,cat 201452,truck 201453,bird 201454,deer 201455,airplane 201456,cat 201457,frog 201458,ship 201459,truck 201460,bird 201461,ship 201462,horse 201463,horse 201464,automobile 201465,cat 201466,ship 201467,truck 201468,dog 201469,deer 201470,deer 201471,ship 201472,horse 201473,horse 201474,frog 201475,deer 201476,truck 201477,cat 201478,cat 201479,deer 201480,automobile 201481,bird 201482,dog 201483,deer 201484,cat 201485,ship 201486,automobile 201487,ship 201488,horse 201489,bird 201490,dog 201491,automobile 201492,truck 201493,automobile 201494,horse 201495,deer 201496,cat 201497,deer 201498,cat 201499,bird 201500,truck 201501,cat 201502,truck 201503,dog 201504,cat 201505,cat 201506,dog 201507,bird 201508,dog 201509,airplane 201510,truck 201511,horse 201512,frog 201513,frog 201514,dog 201515,frog 201516,deer 201517,horse 201518,truck 201519,dog 201520,deer 201521,horse 201522,dog 201523,deer 201524,bird 201525,automobile 201526,cat 201527,truck 201528,ship 201529,ship 201530,ship 201531,deer 201532,automobile 201533,cat 201534,truck 201535,frog 201536,ship 201537,horse 201538,frog 201539,horse 201540,deer 201541,automobile 201542,cat 201543,truck 201544,horse 201545,automobile 201546,frog 201547,frog 201548,cat 201549,ship 201550,horse 201551,bird 201552,cat 201553,deer 201554,airplane 201555,deer 201556,deer 201557,cat 201558,bird 201559,automobile 201560,deer 201561,dog 201562,frog 201563,ship 201564,cat 201565,deer 201566,airplane 201567,cat 201568,deer 201569,horse 201570,cat 201571,automobile 201572,truck 201573,dog 201574,deer 201575,deer 201576,deer 201577,deer 201578,horse 201579,cat 201580,horse 201581,automobile 201582,ship 201583,airplane 201584,dog 201585,ship 201586,frog 201587,frog 201588,airplane 201589,cat 201590,dog 201591,automobile 201592,cat 201593,bird 201594,dog 201595,horse 201596,cat 201597,frog 201598,airplane 201599,truck 201600,truck 201601,bird 201602,truck 201603,bird 201604,airplane 201605,dog 201606,horse 201607,cat 201608,airplane 201609,deer 201610,frog 201611,automobile 201612,bird 201613,deer 201614,ship 201615,frog 201616,dog 201617,cat 201618,cat 201619,deer 201620,dog 201621,deer 201622,truck 201623,deer 201624,bird 201625,ship 201626,frog 201627,automobile 201628,cat 201629,truck 201630,dog 201631,cat 201632,airplane 201633,ship 201634,deer 201635,truck 201636,deer 201637,ship 201638,deer 201639,ship 201640,airplane 201641,ship 201642,airplane 201643,deer 201644,deer 201645,deer 201646,truck 201647,horse 201648,dog 201649,cat 201650,cat 201651,bird 201652,bird 201653,truck 201654,automobile 201655,horse 201656,truck 201657,bird 201658,ship 201659,cat 201660,frog 201661,airplane 201662,horse 201663,deer 201664,dog 201665,horse 201666,airplane 201667,deer 201668,deer 201669,deer 201670,dog 201671,automobile 201672,dog 201673,cat 201674,truck 201675,automobile 201676,automobile 201677,bird 201678,truck 201679,dog 201680,automobile 201681,deer 201682,cat 201683,airplane 201684,deer 201685,truck 201686,automobile 201687,frog 201688,dog 201689,truck 201690,automobile 201691,truck 201692,dog 201693,cat 201694,frog 201695,dog 201696,bird 201697,dog 201698,frog 201699,dog 201700,truck 201701,frog 201702,dog 201703,ship 201704,automobile 201705,truck 201706,cat 201707,automobile 201708,frog 201709,airplane 201710,deer 201711,dog 201712,frog 201713,deer 201714,horse 201715,horse 201716,truck 201717,frog 201718,automobile 201719,bird 201720,automobile 201721,ship 201722,bird 201723,cat 201724,dog 201725,truck 201726,truck 201727,dog 201728,truck 201729,deer 201730,frog 201731,cat 201732,frog 201733,dog 201734,deer 201735,automobile 201736,ship 201737,truck 201738,horse 201739,truck 201740,horse 201741,dog 201742,bird 201743,cat 201744,cat 201745,airplane 201746,bird 201747,frog 201748,airplane 201749,horse 201750,dog 201751,deer 201752,deer 201753,frog 201754,cat 201755,cat 201756,bird 201757,truck 201758,horse 201759,frog 201760,ship 201761,dog 201762,frog 201763,bird 201764,truck 201765,cat 201766,dog 201767,frog 201768,cat 201769,automobile 201770,bird 201771,frog 201772,frog 201773,deer 201774,bird 201775,frog 201776,deer 201777,deer 201778,ship 201779,truck 201780,frog 201781,truck 201782,dog 201783,ship 201784,deer 201785,cat 201786,truck 201787,cat 201788,deer 201789,automobile 201790,cat 201791,horse 201792,truck 201793,frog 201794,ship 201795,cat 201796,truck 201797,truck 201798,automobile 201799,cat 201800,horse 201801,truck 201802,automobile 201803,truck 201804,ship 201805,horse 201806,dog 201807,truck 201808,ship 201809,cat 201810,ship 201811,cat 201812,horse 201813,deer 201814,dog 201815,frog 201816,bird 201817,truck 201818,dog 201819,ship 201820,deer 201821,airplane 201822,truck 201823,ship 201824,bird 201825,horse 201826,horse 201827,dog 201828,horse 201829,frog 201830,truck 201831,cat 201832,cat 201833,cat 201834,dog 201835,airplane 201836,dog 201837,ship 201838,cat 201839,frog 201840,truck 201841,deer 201842,truck 201843,horse 201844,truck 201845,horse 201846,dog 201847,horse 201848,dog 201849,cat 201850,truck 201851,bird 201852,dog 201853,ship 201854,airplane 201855,dog 201856,cat 201857,airplane 201858,dog 201859,dog 201860,deer 201861,dog 201862,cat 201863,deer 201864,dog 201865,frog 201866,deer 201867,cat 201868,bird 201869,frog 201870,ship 201871,truck 201872,cat 201873,airplane 201874,dog 201875,ship 201876,deer 201877,cat 201878,frog 201879,automobile 201880,cat 201881,deer 201882,cat 201883,deer 201884,horse 201885,dog 201886,frog 201887,frog 201888,deer 201889,truck 201890,dog 201891,cat 201892,deer 201893,truck 201894,cat 201895,ship 201896,dog 201897,airplane 201898,dog 201899,frog 201900,cat 201901,frog 201902,cat 201903,cat 201904,automobile 201905,cat 201906,cat 201907,automobile 201908,airplane 201909,frog 201910,cat 201911,horse 201912,horse 201913,ship 201914,ship 201915,deer 201916,ship 201917,dog 201918,ship 201919,airplane 201920,bird 201921,frog 201922,horse 201923,horse 201924,truck 201925,cat 201926,dog 201927,deer 201928,deer 201929,truck 201930,dog 201931,automobile 201932,ship 201933,deer 201934,deer 201935,truck 201936,deer 201937,dog 201938,deer 201939,cat 201940,frog 201941,frog 201942,deer 201943,cat 201944,horse 201945,horse 201946,horse 201947,dog 201948,ship 201949,frog 201950,horse 201951,dog 201952,frog 201953,horse 201954,cat 201955,horse 201956,dog 201957,automobile 201958,bird 201959,deer 201960,bird 201961,ship 201962,truck 201963,truck 201964,frog 201965,dog 201966,ship 201967,airplane 201968,cat 201969,dog 201970,bird 201971,horse 201972,cat 201973,horse 201974,airplane 201975,deer 201976,cat 201977,airplane 201978,cat 201979,deer 201980,deer 201981,deer 201982,deer 201983,deer 201984,deer 201985,truck 201986,truck 201987,frog 201988,deer 201989,deer 201990,cat 201991,horse 201992,truck 201993,bird 201994,airplane 201995,deer 201996,deer 201997,deer 201998,truck 201999,deer 202000,automobile 202001,truck 202002,ship 202003,cat 202004,bird 202005,cat 202006,horse 202007,ship 202008,cat 202009,truck 202010,deer 202011,deer 202012,truck 202013,truck 202014,frog 202015,bird 202016,cat 202017,horse 202018,horse 202019,horse 202020,deer 202021,dog 202022,horse 202023,dog 202024,ship 202025,cat 202026,ship 202027,frog 202028,cat 202029,horse 202030,cat 202031,horse 202032,bird 202033,frog 202034,frog 202035,automobile 202036,frog 202037,airplane 202038,truck 202039,deer 202040,frog 202041,automobile 202042,automobile 202043,dog 202044,truck 202045,horse 202046,frog 202047,truck 202048,bird 202049,automobile 202050,automobile 202051,ship 202052,dog 202053,automobile 202054,bird 202055,cat 202056,cat 202057,horse 202058,cat 202059,frog 202060,airplane 202061,frog 202062,deer 202063,dog 202064,frog 202065,bird 202066,horse 202067,airplane 202068,dog 202069,deer 202070,horse 202071,dog 202072,ship 202073,ship 202074,automobile 202075,deer 202076,bird 202077,frog 202078,deer 202079,horse 202080,dog 202081,dog 202082,truck 202083,cat 202084,automobile 202085,ship 202086,dog 202087,bird 202088,cat 202089,truck 202090,frog 202091,cat 202092,dog 202093,ship 202094,frog 202095,bird 202096,deer 202097,airplane 202098,bird 202099,dog 202100,truck 202101,cat 202102,deer 202103,horse 202104,ship 202105,bird 202106,frog 202107,truck 202108,truck 202109,bird 202110,horse 202111,truck 202112,automobile 202113,bird 202114,dog 202115,truck 202116,automobile 202117,frog 202118,automobile 202119,frog 202120,automobile 202121,truck 202122,ship 202123,dog 202124,bird 202125,deer 202126,automobile 202127,automobile 202128,frog 202129,truck 202130,frog 202131,frog 202132,airplane 202133,bird 202134,airplane 202135,horse 202136,horse 202137,cat 202138,truck 202139,dog 202140,automobile 202141,automobile 202142,bird 202143,airplane 202144,dog 202145,frog 202146,ship 202147,bird 202148,automobile 202149,horse 202150,frog 202151,frog 202152,frog 202153,dog 202154,truck 202155,airplane 202156,cat 202157,deer 202158,automobile 202159,dog 202160,horse 202161,frog 202162,airplane 202163,deer 202164,deer 202165,automobile 202166,dog 202167,deer 202168,deer 202169,airplane 202170,deer 202171,bird 202172,frog 202173,horse 202174,bird 202175,dog 202176,automobile 202177,frog 202178,dog 202179,horse 202180,truck 202181,cat 202182,frog 202183,ship 202184,cat 202185,ship 202186,deer 202187,horse 202188,cat 202189,dog 202190,automobile 202191,frog 202192,frog 202193,cat 202194,ship 202195,cat 202196,frog 202197,automobile 202198,bird 202199,frog 202200,cat 202201,dog 202202,deer 202203,deer 202204,dog 202205,bird 202206,cat 202207,frog 202208,truck 202209,dog 202210,cat 202211,cat 202212,cat 202213,bird 202214,truck 202215,frog 202216,airplane 202217,truck 202218,automobile 202219,dog 202220,horse 202221,bird 202222,bird 202223,deer 202224,horse 202225,frog 202226,bird 202227,automobile 202228,truck 202229,frog 202230,frog 202231,deer 202232,deer 202233,deer 202234,truck 202235,truck 202236,deer 202237,ship 202238,airplane 202239,dog 202240,ship 202241,truck 202242,horse 202243,horse 202244,truck 202245,cat 202246,ship 202247,cat 202248,deer 202249,dog 202250,frog 202251,cat 202252,deer 202253,frog 202254,deer 202255,frog 202256,truck 202257,ship 202258,ship 202259,deer 202260,dog 202261,truck 202262,airplane 202263,deer 202264,bird 202265,deer 202266,horse 202267,truck 202268,frog 202269,ship 202270,frog 202271,frog 202272,frog 202273,cat 202274,truck 202275,ship 202276,truck 202277,dog 202278,frog 202279,frog 202280,frog 202281,dog 202282,dog 202283,cat 202284,horse 202285,airplane 202286,frog 202287,deer 202288,cat 202289,deer 202290,cat 202291,automobile 202292,horse 202293,cat 202294,deer 202295,cat 202296,frog 202297,dog 202298,frog 202299,frog 202300,dog 202301,airplane 202302,deer 202303,truck 202304,airplane 202305,deer 202306,frog 202307,horse 202308,frog 202309,frog 202310,truck 202311,truck 202312,cat 202313,bird 202314,airplane 202315,dog 202316,cat 202317,frog 202318,cat 202319,dog 202320,truck 202321,ship 202322,frog 202323,cat 202324,frog 202325,truck 202326,ship 202327,horse 202328,truck 202329,automobile 202330,dog 202331,bird 202332,airplane 202333,dog 202334,frog 202335,frog 202336,ship 202337,dog 202338,frog 202339,ship 202340,truck 202341,frog 202342,dog 202343,cat 202344,truck 202345,ship 202346,horse 202347,frog 202348,airplane 202349,deer 202350,truck 202351,deer 202352,truck 202353,truck 202354,ship 202355,airplane 202356,frog 202357,deer 202358,bird 202359,horse 202360,airplane 202361,frog 202362,dog 202363,cat 202364,bird 202365,horse 202366,truck 202367,bird 202368,truck 202369,dog 202370,automobile 202371,airplane 202372,horse 202373,deer 202374,dog 202375,horse 202376,truck 202377,airplane 202378,deer 202379,automobile 202380,frog 202381,truck 202382,frog 202383,airplane 202384,airplane 202385,ship 202386,cat 202387,dog 202388,deer 202389,horse 202390,frog 202391,truck 202392,horse 202393,cat 202394,horse 202395,deer 202396,horse 202397,ship 202398,dog 202399,automobile 202400,frog 202401,cat 202402,truck 202403,frog 202404,dog 202405,dog 202406,ship 202407,deer 202408,truck 202409,frog 202410,bird 202411,cat 202412,deer 202413,horse 202414,deer 202415,dog 202416,bird 202417,automobile 202418,deer 202419,cat 202420,deer 202421,truck 202422,deer 202423,ship 202424,dog 202425,truck 202426,ship 202427,bird 202428,bird 202429,airplane 202430,airplane 202431,bird 202432,bird 202433,dog 202434,dog 202435,ship 202436,cat 202437,cat 202438,cat 202439,horse 202440,dog 202441,frog 202442,airplane 202443,truck 202444,airplane 202445,frog 202446,automobile 202447,bird 202448,cat 202449,horse 202450,cat 202451,frog 202452,frog 202453,cat 202454,dog 202455,cat 202456,dog 202457,horse 202458,bird 202459,deer 202460,truck 202461,truck 202462,horse 202463,dog 202464,cat 202465,truck 202466,airplane 202467,deer 202468,bird 202469,deer 202470,airplane 202471,deer 202472,cat 202473,frog 202474,bird 202475,cat 202476,horse 202477,deer 202478,dog 202479,frog 202480,dog 202481,horse 202482,airplane 202483,cat 202484,horse 202485,cat 202486,cat 202487,truck 202488,ship 202489,dog 202490,cat 202491,bird 202492,ship 202493,deer 202494,truck 202495,horse 202496,airplane 202497,truck 202498,deer 202499,ship 202500,bird 202501,cat 202502,ship 202503,airplane 202504,frog 202505,deer 202506,cat 202507,deer 202508,dog 202509,bird 202510,airplane 202511,truck 202512,deer 202513,cat 202514,dog 202515,automobile 202516,dog 202517,bird 202518,cat 202519,frog 202520,dog 202521,horse 202522,deer 202523,deer 202524,frog 202525,cat 202526,dog 202527,horse 202528,airplane 202529,frog 202530,truck 202531,truck 202532,truck 202533,truck 202534,ship 202535,deer 202536,automobile 202537,frog 202538,frog 202539,cat 202540,deer 202541,frog 202542,horse 202543,cat 202544,deer 202545,truck 202546,bird 202547,frog 202548,truck 202549,airplane 202550,frog 202551,dog 202552,truck 202553,truck 202554,dog 202555,deer 202556,deer 202557,ship 202558,bird 202559,airplane 202560,ship 202561,horse 202562,dog 202563,frog 202564,deer 202565,ship 202566,cat 202567,truck 202568,horse 202569,horse 202570,bird 202571,bird 202572,cat 202573,deer 202574,bird 202575,airplane 202576,horse 202577,deer 202578,airplane 202579,dog 202580,frog 202581,automobile 202582,automobile 202583,airplane 202584,truck 202585,airplane 202586,airplane 202587,deer 202588,frog 202589,bird 202590,cat 202591,dog 202592,horse 202593,dog 202594,deer 202595,dog 202596,horse 202597,bird 202598,bird 202599,truck 202600,dog 202601,dog 202602,cat 202603,frog 202604,truck 202605,cat 202606,truck 202607,dog 202608,cat 202609,truck 202610,deer 202611,deer 202612,cat 202613,cat 202614,horse 202615,automobile 202616,cat 202617,horse 202618,cat 202619,airplane 202620,dog 202621,automobile 202622,horse 202623,horse 202624,automobile 202625,automobile 202626,automobile 202627,airplane 202628,ship 202629,automobile 202630,bird 202631,airplane 202632,automobile 202633,cat 202634,bird 202635,truck 202636,bird 202637,airplane 202638,horse 202639,cat 202640,bird 202641,horse 202642,frog 202643,ship 202644,airplane 202645,truck 202646,bird 202647,automobile 202648,deer 202649,frog 202650,frog 202651,bird 202652,cat 202653,frog 202654,automobile 202655,horse 202656,cat 202657,automobile 202658,horse 202659,dog 202660,automobile 202661,frog 202662,frog 202663,truck 202664,truck 202665,horse 202666,ship 202667,frog 202668,deer 202669,ship 202670,deer 202671,deer 202672,horse 202673,airplane 202674,horse 202675,bird 202676,airplane 202677,dog 202678,ship 202679,ship 202680,truck 202681,frog 202682,ship 202683,frog 202684,frog 202685,airplane 202686,ship 202687,horse 202688,frog 202689,dog 202690,automobile 202691,deer 202692,airplane 202693,bird 202694,dog 202695,cat 202696,truck 202697,truck 202698,dog 202699,cat 202700,horse 202701,bird 202702,cat 202703,bird 202704,dog 202705,truck 202706,deer 202707,cat 202708,deer 202709,dog 202710,cat 202711,dog 202712,ship 202713,bird 202714,cat 202715,ship 202716,airplane 202717,cat 202718,deer 202719,frog 202720,ship 202721,frog 202722,truck 202723,cat 202724,horse 202725,dog 202726,ship 202727,automobile 202728,bird 202729,cat 202730,truck 202731,deer 202732,cat 202733,horse 202734,automobile 202735,airplane 202736,airplane 202737,deer 202738,dog 202739,frog 202740,horse 202741,bird 202742,deer 202743,horse 202744,truck 202745,airplane 202746,dog 202747,cat 202748,automobile 202749,bird 202750,ship 202751,automobile 202752,automobile 202753,automobile 202754,bird 202755,dog 202756,dog 202757,cat 202758,airplane 202759,automobile 202760,truck 202761,ship 202762,cat 202763,ship 202764,airplane 202765,deer 202766,cat 202767,dog 202768,airplane 202769,cat 202770,deer 202771,frog 202772,automobile 202773,deer 202774,frog 202775,dog 202776,truck 202777,deer 202778,ship 202779,bird 202780,horse 202781,cat 202782,truck 202783,cat 202784,truck 202785,horse 202786,horse 202787,dog 202788,deer 202789,airplane 202790,dog 202791,bird 202792,bird 202793,horse 202794,dog 202795,deer 202796,truck 202797,truck 202798,dog 202799,frog 202800,ship 202801,horse 202802,automobile 202803,frog 202804,dog 202805,ship 202806,frog 202807,horse 202808,horse 202809,horse 202810,frog 202811,automobile 202812,deer 202813,truck 202814,deer 202815,horse 202816,dog 202817,truck 202818,automobile 202819,bird 202820,dog 202821,dog 202822,cat 202823,deer 202824,truck 202825,frog 202826,automobile 202827,horse 202828,cat 202829,frog 202830,cat 202831,ship 202832,frog 202833,frog 202834,dog 202835,ship 202836,cat 202837,automobile 202838,automobile 202839,automobile 202840,truck 202841,frog 202842,cat 202843,bird 202844,ship 202845,cat 202846,frog 202847,airplane 202848,cat 202849,truck 202850,frog 202851,cat 202852,deer 202853,airplane 202854,dog 202855,ship 202856,bird 202857,frog 202858,dog 202859,frog 202860,automobile 202861,ship 202862,bird 202863,cat 202864,deer 202865,frog 202866,horse 202867,dog 202868,bird 202869,frog 202870,truck 202871,truck 202872,cat 202873,ship 202874,dog 202875,automobile 202876,deer 202877,bird 202878,dog 202879,frog 202880,cat 202881,frog 202882,dog 202883,dog 202884,horse 202885,ship 202886,dog 202887,automobile 202888,deer 202889,cat 202890,deer 202891,dog 202892,airplane 202893,airplane 202894,frog 202895,ship 202896,deer 202897,cat 202898,deer 202899,cat 202900,dog 202901,dog 202902,truck 202903,cat 202904,ship 202905,frog 202906,truck 202907,cat 202908,automobile 202909,horse 202910,deer 202911,dog 202912,deer 202913,dog 202914,frog 202915,deer 202916,cat 202917,airplane 202918,airplane 202919,frog 202920,cat 202921,deer 202922,deer 202923,frog 202924,frog 202925,deer 202926,deer 202927,deer 202928,horse 202929,truck 202930,ship 202931,deer 202932,deer 202933,frog 202934,bird 202935,dog 202936,horse 202937,airplane 202938,deer 202939,horse 202940,horse 202941,truck 202942,dog 202943,airplane 202944,ship 202945,deer 202946,deer 202947,frog 202948,truck 202949,horse 202950,dog 202951,deer 202952,cat 202953,deer 202954,deer 202955,dog 202956,frog 202957,deer 202958,cat 202959,frog 202960,airplane 202961,cat 202962,deer 202963,cat 202964,frog 202965,deer 202966,airplane 202967,frog 202968,ship 202969,frog 202970,frog 202971,truck 202972,frog 202973,dog 202974,automobile 202975,deer 202976,truck 202977,truck 202978,cat 202979,horse 202980,cat 202981,deer 202982,deer 202983,cat 202984,frog 202985,cat 202986,horse 202987,bird 202988,truck 202989,deer 202990,cat 202991,airplane 202992,frog 202993,cat 202994,bird 202995,bird 202996,deer 202997,bird 202998,horse 202999,dog 203000,automobile 203001,airplane 203002,frog 203003,horse 203004,horse 203005,deer 203006,truck 203007,ship 203008,cat 203009,truck 203010,deer 203011,horse 203012,truck 203013,deer 203014,cat 203015,bird 203016,truck 203017,frog 203018,ship 203019,deer 203020,ship 203021,automobile 203022,bird 203023,truck 203024,truck 203025,airplane 203026,airplane 203027,truck 203028,horse 203029,bird 203030,cat 203031,bird 203032,deer 203033,horse 203034,cat 203035,cat 203036,frog 203037,horse 203038,deer 203039,cat 203040,automobile 203041,truck 203042,deer 203043,cat 203044,dog 203045,frog 203046,truck 203047,dog 203048,truck 203049,deer 203050,dog 203051,bird 203052,frog 203053,dog 203054,truck 203055,automobile 203056,bird 203057,cat 203058,frog 203059,truck 203060,dog 203061,horse 203062,frog 203063,frog 203064,cat 203065,truck 203066,ship 203067,dog 203068,cat 203069,bird 203070,dog 203071,ship 203072,frog 203073,horse 203074,airplane 203075,airplane 203076,ship 203077,dog 203078,cat 203079,horse 203080,cat 203081,dog 203082,ship 203083,dog 203084,deer 203085,truck 203086,truck 203087,cat 203088,deer 203089,bird 203090,frog 203091,cat 203092,frog 203093,dog 203094,dog 203095,cat 203096,airplane 203097,deer 203098,cat 203099,truck 203100,horse 203101,bird 203102,deer 203103,frog 203104,frog 203105,bird 203106,ship 203107,automobile 203108,dog 203109,cat 203110,horse 203111,horse 203112,dog 203113,frog 203114,bird 203115,automobile 203116,frog 203117,frog 203118,frog 203119,frog 203120,frog 203121,deer 203122,dog 203123,deer 203124,ship 203125,airplane 203126,deer 203127,deer 203128,ship 203129,deer 203130,truck 203131,airplane 203132,frog 203133,dog 203134,bird 203135,truck 203136,automobile 203137,automobile 203138,cat 203139,horse 203140,ship 203141,automobile 203142,dog 203143,dog 203144,deer 203145,automobile 203146,cat 203147,deer 203148,horse 203149,cat 203150,automobile 203151,bird 203152,airplane 203153,deer 203154,ship 203155,dog 203156,automobile 203157,frog 203158,horse 203159,truck 203160,bird 203161,airplane 203162,airplane 203163,truck 203164,airplane 203165,cat 203166,automobile 203167,truck 203168,airplane 203169,airplane 203170,truck 203171,dog 203172,frog 203173,cat 203174,truck 203175,truck 203176,horse 203177,ship 203178,frog 203179,dog 203180,airplane 203181,automobile 203182,ship 203183,deer 203184,automobile 203185,deer 203186,cat 203187,cat 203188,cat 203189,automobile 203190,dog 203191,bird 203192,horse 203193,ship 203194,truck 203195,horse 203196,frog 203197,horse 203198,dog 203199,truck 203200,bird 203201,dog 203202,frog 203203,airplane 203204,deer 203205,airplane 203206,dog 203207,truck 203208,airplane 203209,ship 203210,cat 203211,deer 203212,truck 203213,automobile 203214,automobile 203215,frog 203216,airplane 203217,deer 203218,automobile 203219,cat 203220,horse 203221,dog 203222,horse 203223,ship 203224,horse 203225,automobile 203226,ship 203227,bird 203228,deer 203229,dog 203230,ship 203231,ship 203232,cat 203233,deer 203234,ship 203235,ship 203236,frog 203237,airplane 203238,bird 203239,ship 203240,deer 203241,dog 203242,ship 203243,bird 203244,bird 203245,deer 203246,frog 203247,dog 203248,automobile 203249,deer 203250,truck 203251,bird 203252,cat 203253,horse 203254,truck 203255,ship 203256,airplane 203257,truck 203258,ship 203259,airplane 203260,horse 203261,deer 203262,cat 203263,deer 203264,frog 203265,truck 203266,truck 203267,frog 203268,airplane 203269,airplane 203270,automobile 203271,airplane 203272,ship 203273,cat 203274,airplane 203275,dog 203276,automobile 203277,frog 203278,cat 203279,cat 203280,frog 203281,cat 203282,dog 203283,cat 203284,deer 203285,cat 203286,bird 203287,bird 203288,deer 203289,automobile 203290,frog 203291,airplane 203292,frog 203293,bird 203294,automobile 203295,truck 203296,cat 203297,truck 203298,horse 203299,ship 203300,horse 203301,truck 203302,airplane 203303,airplane 203304,automobile 203305,bird 203306,dog 203307,frog 203308,cat 203309,deer 203310,horse 203311,airplane 203312,frog 203313,deer 203314,automobile 203315,dog 203316,airplane 203317,deer 203318,cat 203319,deer 203320,airplane 203321,bird 203322,bird 203323,horse 203324,truck 203325,dog 203326,deer 203327,dog 203328,ship 203329,deer 203330,ship 203331,frog 203332,bird 203333,automobile 203334,ship 203335,ship 203336,ship 203337,bird 203338,cat 203339,bird 203340,horse 203341,cat 203342,airplane 203343,deer 203344,bird 203345,horse 203346,airplane 203347,horse 203348,ship 203349,frog 203350,truck 203351,bird 203352,deer 203353,bird 203354,truck 203355,frog 203356,dog 203357,horse 203358,cat 203359,cat 203360,deer 203361,horse 203362,dog 203363,frog 203364,horse 203365,ship 203366,airplane 203367,automobile 203368,truck 203369,ship 203370,deer 203371,cat 203372,frog 203373,truck 203374,deer 203375,deer 203376,bird 203377,frog 203378,frog 203379,bird 203380,bird 203381,automobile 203382,automobile 203383,airplane 203384,deer 203385,ship 203386,airplane 203387,bird 203388,horse 203389,automobile 203390,truck 203391,ship 203392,dog 203393,dog 203394,horse 203395,bird 203396,frog 203397,automobile 203398,airplane 203399,dog 203400,truck 203401,bird 203402,cat 203403,dog 203404,bird 203405,ship 203406,cat 203407,dog 203408,deer 203409,frog 203410,automobile 203411,cat 203412,horse 203413,automobile 203414,frog 203415,automobile 203416,ship 203417,dog 203418,cat 203419,airplane 203420,airplane 203421,bird 203422,horse 203423,deer 203424,ship 203425,airplane 203426,bird 203427,cat 203428,frog 203429,cat 203430,cat 203431,deer 203432,dog 203433,bird 203434,truck 203435,airplane 203436,bird 203437,bird 203438,frog 203439,deer 203440,frog 203441,deer 203442,dog 203443,automobile 203444,ship 203445,frog 203446,cat 203447,airplane 203448,horse 203449,cat 203450,automobile 203451,cat 203452,cat 203453,ship 203454,truck 203455,automobile 203456,cat 203457,bird 203458,dog 203459,horse 203460,cat 203461,horse 203462,dog 203463,cat 203464,automobile 203465,frog 203466,deer 203467,frog 203468,dog 203469,frog 203470,frog 203471,dog 203472,cat 203473,cat 203474,automobile 203475,ship 203476,deer 203477,cat 203478,dog 203479,cat 203480,cat 203481,horse 203482,frog 203483,dog 203484,automobile 203485,bird 203486,cat 203487,airplane 203488,automobile 203489,truck 203490,dog 203491,truck 203492,deer 203493,airplane 203494,deer 203495,deer 203496,cat 203497,truck 203498,bird 203499,ship 203500,deer 203501,cat 203502,cat 203503,automobile 203504,ship 203505,automobile 203506,automobile 203507,dog 203508,bird 203509,dog 203510,cat 203511,frog 203512,horse 203513,frog 203514,horse 203515,cat 203516,horse 203517,truck 203518,dog 203519,airplane 203520,bird 203521,truck 203522,frog 203523,horse 203524,cat 203525,bird 203526,horse 203527,truck 203528,dog 203529,cat 203530,cat 203531,deer 203532,ship 203533,deer 203534,bird 203535,dog 203536,truck 203537,frog 203538,truck 203539,bird 203540,dog 203541,bird 203542,bird 203543,horse 203544,cat 203545,deer 203546,cat 203547,horse 203548,truck 203549,automobile 203550,cat 203551,cat 203552,horse 203553,truck 203554,frog 203555,cat 203556,bird 203557,frog 203558,truck 203559,cat 203560,dog 203561,deer 203562,truck 203563,truck 203564,dog 203565,bird 203566,dog 203567,truck 203568,frog 203569,bird 203570,cat 203571,deer 203572,cat 203573,dog 203574,airplane 203575,ship 203576,truck 203577,dog 203578,airplane 203579,horse 203580,deer 203581,automobile 203582,frog 203583,ship 203584,cat 203585,horse 203586,deer 203587,ship 203588,truck 203589,horse 203590,cat 203591,ship 203592,cat 203593,bird 203594,horse 203595,automobile 203596,truck 203597,ship 203598,dog 203599,frog 203600,deer 203601,deer 203602,cat 203603,cat 203604,airplane 203605,deer 203606,dog 203607,dog 203608,airplane 203609,truck 203610,deer 203611,ship 203612,cat 203613,bird 203614,cat 203615,dog 203616,dog 203617,automobile 203618,truck 203619,bird 203620,frog 203621,ship 203622,truck 203623,dog 203624,bird 203625,airplane 203626,horse 203627,horse 203628,deer 203629,frog 203630,deer 203631,airplane 203632,frog 203633,automobile 203634,ship 203635,deer 203636,bird 203637,truck 203638,truck 203639,cat 203640,horse 203641,ship 203642,cat 203643,bird 203644,deer 203645,deer 203646,cat 203647,horse 203648,airplane 203649,airplane 203650,horse 203651,deer 203652,airplane 203653,truck 203654,deer 203655,bird 203656,dog 203657,dog 203658,dog 203659,airplane 203660,airplane 203661,deer 203662,automobile 203663,dog 203664,bird 203665,cat 203666,cat 203667,airplane 203668,truck 203669,frog 203670,deer 203671,ship 203672,truck 203673,airplane 203674,bird 203675,cat 203676,dog 203677,dog 203678,cat 203679,truck 203680,ship 203681,ship 203682,deer 203683,bird 203684,truck 203685,dog 203686,deer 203687,truck 203688,ship 203689,cat 203690,dog 203691,horse 203692,ship 203693,cat 203694,cat 203695,dog 203696,airplane 203697,dog 203698,deer 203699,horse 203700,frog 203701,cat 203702,deer 203703,airplane 203704,automobile 203705,horse 203706,bird 203707,deer 203708,bird 203709,dog 203710,frog 203711,dog 203712,cat 203713,deer 203714,cat 203715,automobile 203716,ship 203717,airplane 203718,deer 203719,frog 203720,frog 203721,frog 203722,deer 203723,dog 203724,truck 203725,frog 203726,ship 203727,deer 203728,truck 203729,deer 203730,automobile 203731,automobile 203732,ship 203733,dog 203734,horse 203735,bird 203736,cat 203737,truck 203738,dog 203739,ship 203740,frog 203741,bird 203742,cat 203743,ship 203744,dog 203745,dog 203746,deer 203747,ship 203748,horse 203749,ship 203750,truck 203751,truck 203752,airplane 203753,truck 203754,dog 203755,automobile 203756,deer 203757,deer 203758,deer 203759,automobile 203760,bird 203761,horse 203762,frog 203763,airplane 203764,cat 203765,deer 203766,horse 203767,airplane 203768,deer 203769,bird 203770,automobile 203771,frog 203772,deer 203773,truck 203774,airplane 203775,truck 203776,dog 203777,frog 203778,cat 203779,ship 203780,frog 203781,ship 203782,ship 203783,ship 203784,frog 203785,deer 203786,cat 203787,automobile 203788,frog 203789,frog 203790,cat 203791,bird 203792,deer 203793,truck 203794,horse 203795,truck 203796,dog 203797,airplane 203798,ship 203799,deer 203800,frog 203801,automobile 203802,deer 203803,cat 203804,airplane 203805,airplane 203806,cat 203807,cat 203808,dog 203809,frog 203810,automobile 203811,truck 203812,automobile 203813,automobile 203814,frog 203815,deer 203816,ship 203817,frog 203818,deer 203819,ship 203820,automobile 203821,ship 203822,horse 203823,horse 203824,horse 203825,ship 203826,ship 203827,horse 203828,truck 203829,bird 203830,dog 203831,automobile 203832,airplane 203833,cat 203834,deer 203835,automobile 203836,cat 203837,dog 203838,deer 203839,cat 203840,airplane 203841,airplane 203842,bird 203843,deer 203844,frog 203845,airplane 203846,deer 203847,truck 203848,deer 203849,airplane 203850,horse 203851,truck 203852,bird 203853,truck 203854,cat 203855,deer 203856,airplane 203857,ship 203858,horse 203859,frog 203860,automobile 203861,bird 203862,deer 203863,horse 203864,bird 203865,dog 203866,airplane 203867,horse 203868,automobile 203869,frog 203870,bird 203871,bird 203872,ship 203873,ship 203874,frog 203875,automobile 203876,dog 203877,automobile 203878,ship 203879,frog 203880,automobile 203881,cat 203882,dog 203883,cat 203884,horse 203885,airplane 203886,deer 203887,automobile 203888,frog 203889,cat 203890,bird 203891,frog 203892,automobile 203893,cat 203894,dog 203895,ship 203896,truck 203897,deer 203898,airplane 203899,airplane 203900,bird 203901,dog 203902,ship 203903,dog 203904,truck 203905,airplane 203906,frog 203907,cat 203908,bird 203909,bird 203910,cat 203911,bird 203912,horse 203913,frog 203914,truck 203915,horse 203916,airplane 203917,horse 203918,truck 203919,airplane 203920,truck 203921,horse 203922,automobile 203923,deer 203924,cat 203925,cat 203926,airplane 203927,cat 203928,truck 203929,automobile 203930,automobile 203931,deer 203932,horse 203933,bird 203934,horse 203935,deer 203936,deer 203937,bird 203938,dog 203939,bird 203940,cat 203941,dog 203942,truck 203943,automobile 203944,frog 203945,frog 203946,truck 203947,bird 203948,cat 203949,ship 203950,bird 203951,automobile 203952,airplane 203953,dog 203954,frog 203955,deer 203956,deer 203957,cat 203958,cat 203959,truck 203960,deer 203961,cat 203962,airplane 203963,airplane 203964,horse 203965,automobile 203966,truck 203967,cat 203968,truck 203969,dog 203970,cat 203971,dog 203972,dog 203973,ship 203974,cat 203975,bird 203976,dog 203977,frog 203978,frog 203979,truck 203980,bird 203981,airplane 203982,bird 203983,bird 203984,deer 203985,ship 203986,cat 203987,dog 203988,deer 203989,airplane 203990,ship 203991,ship 203992,dog 203993,deer 203994,frog 203995,cat 203996,airplane 203997,truck 203998,frog 203999,ship 204000,deer 204001,bird 204002,airplane 204003,cat 204004,cat 204005,deer 204006,bird 204007,airplane 204008,horse 204009,bird 204010,airplane 204011,frog 204012,automobile 204013,cat 204014,dog 204015,dog 204016,horse 204017,cat 204018,automobile 204019,horse 204020,automobile 204021,deer 204022,cat 204023,deer 204024,deer 204025,deer 204026,dog 204027,dog 204028,frog 204029,ship 204030,bird 204031,horse 204032,frog 204033,cat 204034,cat 204035,frog 204036,truck 204037,frog 204038,bird 204039,horse 204040,airplane 204041,cat 204042,frog 204043,truck 204044,airplane 204045,frog 204046,truck 204047,cat 204048,cat 204049,cat 204050,frog 204051,frog 204052,cat 204053,airplane 204054,ship 204055,dog 204056,deer 204057,bird 204058,frog 204059,bird 204060,dog 204061,frog 204062,cat 204063,truck 204064,bird 204065,truck 204066,cat 204067,bird 204068,cat 204069,horse 204070,deer 204071,airplane 204072,ship 204073,truck 204074,cat 204075,truck 204076,truck 204077,deer 204078,cat 204079,deer 204080,deer 204081,ship 204082,ship 204083,automobile 204084,truck 204085,frog 204086,dog 204087,dog 204088,deer 204089,ship 204090,automobile 204091,truck 204092,horse 204093,dog 204094,bird 204095,frog 204096,dog 204097,truck 204098,frog 204099,cat 204100,frog 204101,truck 204102,airplane 204103,deer 204104,frog 204105,truck 204106,dog 204107,horse 204108,ship 204109,deer 204110,ship 204111,frog 204112,deer 204113,cat 204114,frog 204115,horse 204116,frog 204117,truck 204118,dog 204119,cat 204120,truck 204121,dog 204122,automobile 204123,bird 204124,ship 204125,dog 204126,dog 204127,dog 204128,frog 204129,airplane 204130,truck 204131,bird 204132,horse 204133,cat 204134,horse 204135,airplane 204136,cat 204137,truck 204138,dog 204139,deer 204140,truck 204141,bird 204142,dog 204143,automobile 204144,automobile 204145,horse 204146,frog 204147,bird 204148,bird 204149,cat 204150,deer 204151,airplane 204152,bird 204153,frog 204154,ship 204155,frog 204156,dog 204157,cat 204158,dog 204159,cat 204160,dog 204161,airplane 204162,truck 204163,frog 204164,automobile 204165,dog 204166,frog 204167,bird 204168,cat 204169,automobile 204170,airplane 204171,airplane 204172,cat 204173,cat 204174,deer 204175,frog 204176,cat 204177,dog 204178,airplane 204179,ship 204180,cat 204181,horse 204182,dog 204183,bird 204184,bird 204185,frog 204186,deer 204187,cat 204188,truck 204189,airplane 204190,ship 204191,truck 204192,bird 204193,bird 204194,deer 204195,automobile 204196,frog 204197,truck 204198,dog 204199,airplane 204200,automobile 204201,truck 204202,truck 204203,airplane 204204,deer 204205,bird 204206,automobile 204207,deer 204208,deer 204209,airplane 204210,airplane 204211,airplane 204212,frog 204213,bird 204214,horse 204215,automobile 204216,deer 204217,bird 204218,deer 204219,truck 204220,ship 204221,bird 204222,dog 204223,horse 204224,airplane 204225,airplane 204226,horse 204227,dog 204228,frog 204229,frog 204230,dog 204231,ship 204232,ship 204233,cat 204234,cat 204235,horse 204236,truck 204237,cat 204238,cat 204239,bird 204240,truck 204241,deer 204242,airplane 204243,airplane 204244,automobile 204245,ship 204246,cat 204247,bird 204248,automobile 204249,cat 204250,airplane 204251,airplane 204252,airplane 204253,truck 204254,airplane 204255,cat 204256,deer 204257,airplane 204258,deer 204259,cat 204260,dog 204261,cat 204262,automobile 204263,bird 204264,dog 204265,horse 204266,automobile 204267,dog 204268,truck 204269,bird 204270,horse 204271,cat 204272,frog 204273,frog 204274,frog 204275,frog 204276,cat 204277,bird 204278,bird 204279,deer 204280,bird 204281,bird 204282,deer 204283,dog 204284,horse 204285,dog 204286,truck 204287,ship 204288,frog 204289,truck 204290,horse 204291,deer 204292,bird 204293,cat 204294,dog 204295,dog 204296,deer 204297,truck 204298,cat 204299,cat 204300,cat 204301,truck 204302,horse 204303,horse 204304,dog 204305,truck 204306,truck 204307,airplane 204308,bird 204309,cat 204310,deer 204311,dog 204312,bird 204313,frog 204314,cat 204315,horse 204316,frog 204317,airplane 204318,cat 204319,airplane 204320,bird 204321,automobile 204322,horse 204323,airplane 204324,bird 204325,dog 204326,cat 204327,deer 204328,airplane 204329,frog 204330,horse 204331,automobile 204332,horse 204333,automobile 204334,horse 204335,bird 204336,cat 204337,deer 204338,frog 204339,bird 204340,airplane 204341,ship 204342,deer 204343,airplane 204344,dog 204345,ship 204346,bird 204347,ship 204348,automobile 204349,deer 204350,ship 204351,cat 204352,dog 204353,frog 204354,truck 204355,frog 204356,cat 204357,ship 204358,truck 204359,truck 204360,cat 204361,dog 204362,bird 204363,truck 204364,automobile 204365,airplane 204366,ship 204367,truck 204368,bird 204369,ship 204370,ship 204371,truck 204372,bird 204373,deer 204374,truck 204375,cat 204376,frog 204377,frog 204378,horse 204379,deer 204380,truck 204381,bird 204382,automobile 204383,dog 204384,airplane 204385,automobile 204386,automobile 204387,frog 204388,bird 204389,bird 204390,horse 204391,truck 204392,cat 204393,cat 204394,cat 204395,frog 204396,cat 204397,horse 204398,airplane 204399,truck 204400,horse 204401,deer 204402,dog 204403,airplane 204404,airplane 204405,truck 204406,ship 204407,bird 204408,deer 204409,automobile 204410,truck 204411,frog 204412,automobile 204413,horse 204414,frog 204415,cat 204416,dog 204417,ship 204418,cat 204419,ship 204420,deer 204421,horse 204422,bird 204423,deer 204424,dog 204425,frog 204426,airplane 204427,cat 204428,horse 204429,dog 204430,truck 204431,automobile 204432,frog 204433,truck 204434,airplane 204435,frog 204436,bird 204437,frog 204438,horse 204439,automobile 204440,deer 204441,horse 204442,deer 204443,horse 204444,cat 204445,cat 204446,cat 204447,dog 204448,deer 204449,cat 204450,bird 204451,cat 204452,automobile 204453,deer 204454,ship 204455,airplane 204456,cat 204457,cat 204458,cat 204459,frog 204460,bird 204461,frog 204462,ship 204463,horse 204464,deer 204465,ship 204466,dog 204467,truck 204468,deer 204469,cat 204470,bird 204471,ship 204472,dog 204473,automobile 204474,truck 204475,frog 204476,cat 204477,deer 204478,frog 204479,bird 204480,deer 204481,truck 204482,deer 204483,frog 204484,automobile 204485,cat 204486,deer 204487,bird 204488,truck 204489,automobile 204490,bird 204491,deer 204492,deer 204493,dog 204494,ship 204495,bird 204496,horse 204497,frog 204498,deer 204499,horse 204500,truck 204501,dog 204502,deer 204503,dog 204504,horse 204505,horse 204506,truck 204507,dog 204508,deer 204509,airplane 204510,truck 204511,horse 204512,frog 204513,dog 204514,dog 204515,airplane 204516,ship 204517,truck 204518,frog 204519,cat 204520,ship 204521,ship 204522,horse 204523,deer 204524,deer 204525,cat 204526,bird 204527,cat 204528,ship 204529,truck 204530,horse 204531,dog 204532,truck 204533,frog 204534,dog 204535,cat 204536,dog 204537,ship 204538,horse 204539,automobile 204540,bird 204541,truck 204542,bird 204543,cat 204544,frog 204545,truck 204546,cat 204547,frog 204548,bird 204549,deer 204550,ship 204551,truck 204552,truck 204553,ship 204554,airplane 204555,automobile 204556,dog 204557,airplane 204558,dog 204559,frog 204560,dog 204561,dog 204562,ship 204563,airplane 204564,bird 204565,truck 204566,frog 204567,ship 204568,bird 204569,frog 204570,frog 204571,truck 204572,airplane 204573,automobile 204574,truck 204575,dog 204576,airplane 204577,truck 204578,bird 204579,airplane 204580,automobile 204581,cat 204582,dog 204583,bird 204584,airplane 204585,deer 204586,ship 204587,frog 204588,frog 204589,automobile 204590,dog 204591,frog 204592,cat 204593,ship 204594,cat 204595,cat 204596,bird 204597,deer 204598,deer 204599,horse 204600,deer 204601,truck 204602,deer 204603,airplane 204604,airplane 204605,deer 204606,automobile 204607,frog 204608,frog 204609,frog 204610,truck 204611,frog 204612,truck 204613,horse 204614,frog 204615,bird 204616,ship 204617,bird 204618,horse 204619,automobile 204620,dog 204621,horse 204622,horse 204623,ship 204624,bird 204625,deer 204626,bird 204627,deer 204628,deer 204629,horse 204630,cat 204631,frog 204632,dog 204633,bird 204634,bird 204635,dog 204636,cat 204637,deer 204638,bird 204639,frog 204640,horse 204641,ship 204642,truck 204643,cat 204644,truck 204645,dog 204646,cat 204647,frog 204648,frog 204649,frog 204650,horse 204651,dog 204652,truck 204653,deer 204654,dog 204655,horse 204656,deer 204657,horse 204658,cat 204659,automobile 204660,frog 204661,truck 204662,horse 204663,automobile 204664,automobile 204665,automobile 204666,dog 204667,dog 204668,frog 204669,airplane 204670,horse 204671,dog 204672,cat 204673,dog 204674,deer 204675,cat 204676,cat 204677,frog 204678,automobile 204679,ship 204680,ship 204681,dog 204682,frog 204683,cat 204684,dog 204685,truck 204686,ship 204687,cat 204688,deer 204689,frog 204690,truck 204691,frog 204692,frog 204693,cat 204694,frog 204695,dog 204696,truck 204697,dog 204698,bird 204699,frog 204700,airplane 204701,bird 204702,cat 204703,automobile 204704,bird 204705,frog 204706,frog 204707,bird 204708,frog 204709,cat 204710,airplane 204711,ship 204712,cat 204713,ship 204714,truck 204715,dog 204716,airplane 204717,automobile 204718,dog 204719,bird 204720,frog 204721,automobile 204722,dog 204723,ship 204724,dog 204725,deer 204726,cat 204727,bird 204728,frog 204729,frog 204730,frog 204731,airplane 204732,deer 204733,dog 204734,frog 204735,frog 204736,cat 204737,deer 204738,cat 204739,cat 204740,bird 204741,deer 204742,cat 204743,airplane 204744,horse 204745,dog 204746,cat 204747,deer 204748,cat 204749,automobile 204750,frog 204751,airplane 204752,bird 204753,bird 204754,airplane 204755,ship 204756,cat 204757,automobile 204758,ship 204759,frog 204760,airplane 204761,cat 204762,bird 204763,dog 204764,horse 204765,ship 204766,deer 204767,truck 204768,automobile 204769,bird 204770,deer 204771,ship 204772,horse 204773,automobile 204774,truck 204775,bird 204776,automobile 204777,airplane 204778,frog 204779,ship 204780,bird 204781,dog 204782,dog 204783,airplane 204784,ship 204785,truck 204786,dog 204787,dog 204788,bird 204789,deer 204790,deer 204791,deer 204792,frog 204793,truck 204794,horse 204795,dog 204796,bird 204797,truck 204798,cat 204799,deer 204800,bird 204801,frog 204802,frog 204803,dog 204804,deer 204805,truck 204806,ship 204807,horse 204808,dog 204809,deer 204810,horse 204811,deer 204812,ship 204813,bird 204814,frog 204815,ship 204816,horse 204817,frog 204818,frog 204819,airplane 204820,ship 204821,ship 204822,airplane 204823,truck 204824,bird 204825,automobile 204826,cat 204827,automobile 204828,cat 204829,dog 204830,cat 204831,dog 204832,ship 204833,truck 204834,horse 204835,automobile 204836,airplane 204837,bird 204838,deer 204839,deer 204840,cat 204841,deer 204842,airplane 204843,horse 204844,deer 204845,truck 204846,dog 204847,horse 204848,bird 204849,ship 204850,ship 204851,deer 204852,bird 204853,truck 204854,automobile 204855,cat 204856,deer 204857,bird 204858,horse 204859,frog 204860,frog 204861,truck 204862,dog 204863,deer 204864,horse 204865,truck 204866,cat 204867,dog 204868,truck 204869,frog 204870,truck 204871,deer 204872,automobile 204873,horse 204874,deer 204875,bird 204876,cat 204877,automobile 204878,truck 204879,bird 204880,dog 204881,truck 204882,airplane 204883,deer 204884,bird 204885,dog 204886,deer 204887,airplane 204888,deer 204889,cat 204890,cat 204891,deer 204892,ship 204893,deer 204894,truck 204895,deer 204896,automobile 204897,cat 204898,frog 204899,bird 204900,cat 204901,horse 204902,dog 204903,ship 204904,dog 204905,bird 204906,airplane 204907,frog 204908,cat 204909,deer 204910,frog 204911,airplane 204912,truck 204913,horse 204914,airplane 204915,ship 204916,automobile 204917,deer 204918,horse 204919,truck 204920,airplane 204921,automobile 204922,ship 204923,airplane 204924,bird 204925,deer 204926,deer 204927,bird 204928,automobile 204929,dog 204930,dog 204931,deer 204932,truck 204933,cat 204934,cat 204935,ship 204936,airplane 204937,automobile 204938,frog 204939,truck 204940,horse 204941,dog 204942,ship 204943,frog 204944,horse 204945,dog 204946,ship 204947,dog 204948,deer 204949,bird 204950,truck 204951,cat 204952,bird 204953,dog 204954,deer 204955,deer 204956,airplane 204957,frog 204958,bird 204959,cat 204960,dog 204961,deer 204962,dog 204963,deer 204964,dog 204965,deer 204966,horse 204967,bird 204968,ship 204969,deer 204970,automobile 204971,deer 204972,frog 204973,frog 204974,airplane 204975,airplane 204976,cat 204977,dog 204978,horse 204979,cat 204980,automobile 204981,dog 204982,automobile 204983,deer 204984,cat 204985,frog 204986,cat 204987,cat 204988,frog 204989,deer 204990,automobile 204991,bird 204992,frog 204993,frog 204994,bird 204995,cat 204996,airplane 204997,dog 204998,dog 204999,cat 205000,ship 205001,frog 205002,cat 205003,horse 205004,airplane 205005,dog 205006,frog 205007,frog 205008,truck 205009,deer 205010,ship 205011,horse 205012,frog 205013,cat 205014,horse 205015,deer 205016,deer 205017,automobile 205018,horse 205019,deer 205020,dog 205021,deer 205022,bird 205023,automobile 205024,cat 205025,frog 205026,airplane 205027,dog 205028,airplane 205029,cat 205030,dog 205031,truck 205032,deer 205033,truck 205034,ship 205035,ship 205036,frog 205037,horse 205038,dog 205039,truck 205040,frog 205041,airplane 205042,dog 205043,truck 205044,frog 205045,dog 205046,frog 205047,ship 205048,deer 205049,deer 205050,automobile 205051,frog 205052,dog 205053,frog 205054,horse 205055,bird 205056,dog 205057,horse 205058,automobile 205059,automobile 205060,automobile 205061,ship 205062,deer 205063,horse 205064,frog 205065,bird 205066,deer 205067,airplane 205068,cat 205069,dog 205070,deer 205071,frog 205072,bird 205073,airplane 205074,truck 205075,airplane 205076,dog 205077,ship 205078,bird 205079,cat 205080,horse 205081,dog 205082,horse 205083,airplane 205084,deer 205085,deer 205086,airplane 205087,cat 205088,dog 205089,deer 205090,horse 205091,ship 205092,truck 205093,dog 205094,automobile 205095,bird 205096,cat 205097,airplane 205098,horse 205099,cat 205100,truck 205101,bird 205102,ship 205103,horse 205104,dog 205105,cat 205106,truck 205107,airplane 205108,automobile 205109,horse 205110,horse 205111,bird 205112,cat 205113,horse 205114,airplane 205115,horse 205116,horse 205117,bird 205118,deer 205119,bird 205120,dog 205121,horse 205122,horse 205123,bird 205124,airplane 205125,dog 205126,ship 205127,bird 205128,bird 205129,automobile 205130,airplane 205131,deer 205132,truck 205133,truck 205134,airplane 205135,cat 205136,horse 205137,airplane 205138,cat 205139,truck 205140,truck 205141,deer 205142,bird 205143,dog 205144,frog 205145,cat 205146,cat 205147,deer 205148,automobile 205149,deer 205150,deer 205151,bird 205152,cat 205153,dog 205154,ship 205155,deer 205156,ship 205157,deer 205158,bird 205159,truck 205160,truck 205161,airplane 205162,frog 205163,automobile 205164,airplane 205165,truck 205166,ship 205167,deer 205168,deer 205169,cat 205170,deer 205171,dog 205172,cat 205173,cat 205174,automobile 205175,deer 205176,truck 205177,frog 205178,deer 205179,dog 205180,bird 205181,frog 205182,frog 205183,ship 205184,deer 205185,horse 205186,dog 205187,airplane 205188,horse 205189,frog 205190,dog 205191,deer 205192,deer 205193,horse 205194,deer 205195,dog 205196,automobile 205197,ship 205198,airplane 205199,automobile 205200,deer 205201,cat 205202,airplane 205203,frog 205204,airplane 205205,airplane 205206,automobile 205207,bird 205208,dog 205209,deer 205210,cat 205211,airplane 205212,automobile 205213,horse 205214,truck 205215,ship 205216,dog 205217,truck 205218,cat 205219,horse 205220,frog 205221,frog 205222,automobile 205223,horse 205224,bird 205225,airplane 205226,dog 205227,airplane 205228,automobile 205229,frog 205230,frog 205231,frog 205232,frog 205233,automobile 205234,truck 205235,airplane 205236,bird 205237,cat 205238,dog 205239,bird 205240,airplane 205241,frog 205242,cat 205243,ship 205244,airplane 205245,cat 205246,airplane 205247,horse 205248,truck 205249,airplane 205250,truck 205251,deer 205252,horse 205253,cat 205254,bird 205255,frog 205256,cat 205257,frog 205258,cat 205259,dog 205260,truck 205261,bird 205262,deer 205263,airplane 205264,cat 205265,bird 205266,deer 205267,deer 205268,dog 205269,deer 205270,ship 205271,airplane 205272,cat 205273,airplane 205274,airplane 205275,truck 205276,dog 205277,airplane 205278,deer 205279,ship 205280,bird 205281,horse 205282,truck 205283,dog 205284,ship 205285,airplane 205286,truck 205287,truck 205288,dog 205289,deer 205290,truck 205291,deer 205292,dog 205293,automobile 205294,bird 205295,automobile 205296,horse 205297,cat 205298,deer 205299,ship 205300,truck 205301,airplane 205302,truck 205303,cat 205304,automobile 205305,deer 205306,dog 205307,cat 205308,horse 205309,deer 205310,airplane 205311,ship 205312,cat 205313,frog 205314,automobile 205315,dog 205316,frog 205317,deer 205318,dog 205319,automobile 205320,automobile 205321,truck 205322,automobile 205323,ship 205324,horse 205325,cat 205326,airplane 205327,dog 205328,cat 205329,deer 205330,truck 205331,dog 205332,truck 205333,cat 205334,bird 205335,dog 205336,deer 205337,automobile 205338,frog 205339,dog 205340,ship 205341,deer 205342,deer 205343,deer 205344,ship 205345,deer 205346,frog 205347,dog 205348,cat 205349,deer 205350,dog 205351,automobile 205352,truck 205353,frog 205354,automobile 205355,bird 205356,dog 205357,dog 205358,deer 205359,frog 205360,bird 205361,truck 205362,cat 205363,airplane 205364,frog 205365,deer 205366,airplane 205367,deer 205368,deer 205369,deer 205370,horse 205371,bird 205372,dog 205373,automobile 205374,automobile 205375,automobile 205376,airplane 205377,dog 205378,frog 205379,truck 205380,truck 205381,deer 205382,cat 205383,truck 205384,bird 205385,airplane 205386,frog 205387,deer 205388,bird 205389,frog 205390,airplane 205391,cat 205392,horse 205393,deer 205394,frog 205395,truck 205396,cat 205397,deer 205398,deer 205399,dog 205400,frog 205401,cat 205402,bird 205403,frog 205404,deer 205405,truck 205406,airplane 205407,horse 205408,bird 205409,ship 205410,horse 205411,ship 205412,frog 205413,bird 205414,deer 205415,bird 205416,dog 205417,frog 205418,truck 205419,airplane 205420,truck 205421,truck 205422,dog 205423,frog 205424,ship 205425,cat 205426,cat 205427,bird 205428,cat 205429,dog 205430,automobile 205431,airplane 205432,deer 205433,bird 205434,frog 205435,deer 205436,airplane 205437,deer 205438,deer 205439,airplane 205440,cat 205441,airplane 205442,deer 205443,frog 205444,automobile 205445,truck 205446,truck 205447,horse 205448,deer 205449,truck 205450,frog 205451,deer 205452,frog 205453,deer 205454,dog 205455,deer 205456,frog 205457,bird 205458,airplane 205459,truck 205460,ship 205461,frog 205462,horse 205463,dog 205464,horse 205465,frog 205466,airplane 205467,frog 205468,truck 205469,deer 205470,cat 205471,automobile 205472,deer 205473,dog 205474,cat 205475,horse 205476,ship 205477,bird 205478,bird 205479,automobile 205480,horse 205481,airplane 205482,dog 205483,frog 205484,dog 205485,deer 205486,dog 205487,automobile 205488,cat 205489,truck 205490,automobile 205491,deer 205492,cat 205493,dog 205494,airplane 205495,frog 205496,deer 205497,ship 205498,cat 205499,frog 205500,deer 205501,cat 205502,bird 205503,horse 205504,frog 205505,horse 205506,automobile 205507,deer 205508,frog 205509,ship 205510,truck 205511,frog 205512,ship 205513,deer 205514,automobile 205515,deer 205516,automobile 205517,truck 205518,bird 205519,dog 205520,frog 205521,automobile 205522,dog 205523,automobile 205524,cat 205525,frog 205526,frog 205527,frog 205528,cat 205529,horse 205530,truck 205531,bird 205532,deer 205533,ship 205534,ship 205535,deer 205536,truck 205537,dog 205538,truck 205539,deer 205540,airplane 205541,frog 205542,bird 205543,airplane 205544,deer 205545,airplane 205546,frog 205547,truck 205548,truck 205549,deer 205550,airplane 205551,truck 205552,deer 205553,ship 205554,cat 205555,ship 205556,horse 205557,deer 205558,automobile 205559,frog 205560,ship 205561,airplane 205562,horse 205563,dog 205564,frog 205565,bird 205566,bird 205567,ship 205568,dog 205569,horse 205570,automobile 205571,bird 205572,dog 205573,ship 205574,cat 205575,bird 205576,airplane 205577,dog 205578,horse 205579,deer 205580,dog 205581,frog 205582,frog 205583,dog 205584,ship 205585,frog 205586,deer 205587,automobile 205588,horse 205589,deer 205590,horse 205591,frog 205592,frog 205593,frog 205594,dog 205595,deer 205596,automobile 205597,cat 205598,deer 205599,frog 205600,automobile 205601,bird 205602,bird 205603,bird 205604,cat 205605,horse 205606,automobile 205607,dog 205608,truck 205609,truck 205610,frog 205611,frog 205612,truck 205613,cat 205614,airplane 205615,horse 205616,airplane 205617,bird 205618,frog 205619,deer 205620,deer 205621,cat 205622,truck 205623,ship 205624,ship 205625,cat 205626,horse 205627,ship 205628,frog 205629,horse 205630,airplane 205631,automobile 205632,frog 205633,dog 205634,airplane 205635,cat 205636,cat 205637,bird 205638,automobile 205639,frog 205640,frog 205641,deer 205642,ship 205643,dog 205644,ship 205645,deer 205646,frog 205647,bird 205648,deer 205649,frog 205650,horse 205651,horse 205652,automobile 205653,cat 205654,horse 205655,automobile 205656,deer 205657,bird 205658,ship 205659,dog 205660,deer 205661,dog 205662,airplane 205663,cat 205664,cat 205665,truck 205666,frog 205667,truck 205668,dog 205669,truck 205670,horse 205671,horse 205672,ship 205673,frog 205674,airplane 205675,horse 205676,ship 205677,frog 205678,automobile 205679,deer 205680,truck 205681,ship 205682,truck 205683,dog 205684,horse 205685,cat 205686,horse 205687,cat 205688,truck 205689,airplane 205690,cat 205691,ship 205692,cat 205693,automobile 205694,bird 205695,frog 205696,horse 205697,deer 205698,airplane 205699,truck 205700,cat 205701,dog 205702,horse 205703,frog 205704,truck 205705,cat 205706,frog 205707,cat 205708,dog 205709,frog 205710,bird 205711,cat 205712,deer 205713,ship 205714,dog 205715,frog 205716,ship 205717,dog 205718,truck 205719,horse 205720,airplane 205721,ship 205722,frog 205723,truck 205724,cat 205725,deer 205726,automobile 205727,cat 205728,deer 205729,frog 205730,truck 205731,bird 205732,deer 205733,truck 205734,dog 205735,bird 205736,automobile 205737,dog 205738,ship 205739,deer 205740,horse 205741,ship 205742,dog 205743,airplane 205744,dog 205745,deer 205746,bird 205747,ship 205748,cat 205749,truck 205750,deer 205751,airplane 205752,bird 205753,deer 205754,deer 205755,frog 205756,airplane 205757,bird 205758,cat 205759,truck 205760,deer 205761,airplane 205762,deer 205763,dog 205764,deer 205765,horse 205766,dog 205767,truck 205768,cat 205769,cat 205770,deer 205771,bird 205772,bird 205773,frog 205774,truck 205775,horse 205776,deer 205777,ship 205778,truck 205779,ship 205780,cat 205781,frog 205782,bird 205783,deer 205784,horse 205785,cat 205786,bird 205787,airplane 205788,truck 205789,deer 205790,frog 205791,dog 205792,dog 205793,automobile 205794,truck 205795,bird 205796,airplane 205797,truck 205798,frog 205799,cat 205800,cat 205801,bird 205802,cat 205803,dog 205804,cat 205805,frog 205806,dog 205807,horse 205808,horse 205809,dog 205810,cat 205811,bird 205812,frog 205813,bird 205814,horse 205815,dog 205816,airplane 205817,frog 205818,cat 205819,truck 205820,automobile 205821,deer 205822,airplane 205823,truck 205824,horse 205825,horse 205826,ship 205827,frog 205828,bird 205829,deer 205830,frog 205831,automobile 205832,cat 205833,truck 205834,cat 205835,horse 205836,frog 205837,airplane 205838,horse 205839,dog 205840,bird 205841,deer 205842,cat 205843,frog 205844,frog 205845,automobile 205846,bird 205847,cat 205848,airplane 205849,cat 205850,deer 205851,truck 205852,deer 205853,deer 205854,airplane 205855,horse 205856,dog 205857,frog 205858,truck 205859,cat 205860,dog 205861,airplane 205862,truck 205863,airplane 205864,horse 205865,airplane 205866,frog 205867,bird 205868,truck 205869,dog 205870,dog 205871,bird 205872,deer 205873,cat 205874,horse 205875,deer 205876,horse 205877,truck 205878,airplane 205879,cat 205880,ship 205881,horse 205882,dog 205883,automobile 205884,automobile 205885,horse 205886,cat 205887,ship 205888,dog 205889,frog 205890,truck 205891,cat 205892,airplane 205893,frog 205894,frog 205895,dog 205896,bird 205897,frog 205898,horse 205899,dog 205900,cat 205901,cat 205902,deer 205903,ship 205904,frog 205905,airplane 205906,dog 205907,dog 205908,automobile 205909,bird 205910,horse 205911,deer 205912,airplane 205913,horse 205914,horse 205915,cat 205916,frog 205917,frog 205918,frog 205919,cat 205920,airplane 205921,ship 205922,horse 205923,airplane 205924,deer 205925,deer 205926,horse 205927,airplane 205928,frog 205929,deer 205930,cat 205931,automobile 205932,cat 205933,horse 205934,deer 205935,truck 205936,frog 205937,deer 205938,deer 205939,deer 205940,cat 205941,truck 205942,automobile 205943,truck 205944,dog 205945,deer 205946,cat 205947,bird 205948,truck 205949,automobile 205950,cat 205951,truck 205952,truck 205953,deer 205954,dog 205955,deer 205956,truck 205957,deer 205958,deer 205959,dog 205960,cat 205961,deer 205962,automobile 205963,bird 205964,truck 205965,truck 205966,ship 205967,airplane 205968,deer 205969,deer 205970,dog 205971,deer 205972,cat 205973,airplane 205974,cat 205975,horse 205976,cat 205977,horse 205978,horse 205979,frog 205980,bird 205981,airplane 205982,cat 205983,dog 205984,truck 205985,deer 205986,horse 205987,dog 205988,cat 205989,cat 205990,ship 205991,deer 205992,truck 205993,frog 205994,automobile 205995,bird 205996,ship 205997,ship 205998,deer 205999,bird 206000,dog 206001,airplane 206002,frog 206003,dog 206004,ship 206005,ship 206006,bird 206007,dog 206008,frog 206009,cat 206010,truck 206011,frog 206012,truck 206013,cat 206014,ship 206015,bird 206016,dog 206017,frog 206018,frog 206019,airplane 206020,truck 206021,ship 206022,truck 206023,truck 206024,dog 206025,dog 206026,ship 206027,frog 206028,frog 206029,ship 206030,truck 206031,airplane 206032,cat 206033,dog 206034,deer 206035,automobile 206036,cat 206037,frog 206038,bird 206039,cat 206040,dog 206041,deer 206042,airplane 206043,automobile 206044,truck 206045,airplane 206046,cat 206047,dog 206048,horse 206049,dog 206050,cat 206051,horse 206052,ship 206053,dog 206054,frog 206055,horse 206056,deer 206057,cat 206058,horse 206059,frog 206060,deer 206061,horse 206062,bird 206063,cat 206064,deer 206065,airplane 206066,automobile 206067,airplane 206068,automobile 206069,cat 206070,cat 206071,dog 206072,frog 206073,automobile 206074,airplane 206075,deer 206076,dog 206077,dog 206078,cat 206079,bird 206080,bird 206081,cat 206082,cat 206083,frog 206084,automobile 206085,dog 206086,deer 206087,ship 206088,truck 206089,airplane 206090,deer 206091,truck 206092,bird 206093,dog 206094,deer 206095,bird 206096,deer 206097,frog 206098,airplane 206099,truck 206100,cat 206101,cat 206102,deer 206103,deer 206104,airplane 206105,ship 206106,cat 206107,ship 206108,frog 206109,airplane 206110,airplane 206111,cat 206112,ship 206113,bird 206114,ship 206115,horse 206116,airplane 206117,airplane 206118,automobile 206119,dog 206120,truck 206121,horse 206122,ship 206123,airplane 206124,automobile 206125,dog 206126,ship 206127,truck 206128,ship 206129,automobile 206130,airplane 206131,horse 206132,bird 206133,deer 206134,cat 206135,ship 206136,airplane 206137,truck 206138,ship 206139,automobile 206140,frog 206141,airplane 206142,cat 206143,frog 206144,deer 206145,airplane 206146,cat 206147,deer 206148,airplane 206149,bird 206150,ship 206151,cat 206152,horse 206153,airplane 206154,airplane 206155,deer 206156,cat 206157,bird 206158,bird 206159,frog 206160,deer 206161,frog 206162,cat 206163,bird 206164,automobile 206165,horse 206166,ship 206167,bird 206168,horse 206169,truck 206170,cat 206171,deer 206172,frog 206173,cat 206174,frog 206175,truck 206176,ship 206177,frog 206178,automobile 206179,dog 206180,dog 206181,cat 206182,frog 206183,airplane 206184,cat 206185,automobile 206186,horse 206187,ship 206188,truck 206189,cat 206190,cat 206191,truck 206192,truck 206193,airplane 206194,automobile 206195,deer 206196,frog 206197,dog 206198,frog 206199,deer 206200,dog 206201,horse 206202,cat 206203,deer 206204,truck 206205,ship 206206,deer 206207,frog 206208,horse 206209,bird 206210,cat 206211,truck 206212,horse 206213,bird 206214,cat 206215,cat 206216,horse 206217,truck 206218,deer 206219,airplane 206220,truck 206221,truck 206222,ship 206223,automobile 206224,horse 206225,cat 206226,cat 206227,automobile 206228,horse 206229,airplane 206230,deer 206231,cat 206232,automobile 206233,automobile 206234,deer 206235,bird 206236,cat 206237,cat 206238,deer 206239,frog 206240,frog 206241,frog 206242,cat 206243,cat 206244,bird 206245,dog 206246,airplane 206247,bird 206248,cat 206249,dog 206250,frog 206251,cat 206252,truck 206253,frog 206254,deer 206255,bird 206256,frog 206257,deer 206258,bird 206259,frog 206260,horse 206261,deer 206262,bird 206263,deer 206264,dog 206265,airplane 206266,frog 206267,cat 206268,automobile 206269,ship 206270,cat 206271,cat 206272,ship 206273,cat 206274,deer 206275,ship 206276,ship 206277,deer 206278,ship 206279,airplane 206280,truck 206281,cat 206282,airplane 206283,horse 206284,automobile 206285,dog 206286,cat 206287,truck 206288,airplane 206289,dog 206290,airplane 206291,ship 206292,frog 206293,dog 206294,deer 206295,airplane 206296,deer 206297,bird 206298,frog 206299,frog 206300,automobile 206301,airplane 206302,frog 206303,dog 206304,cat 206305,frog 206306,horse 206307,dog 206308,ship 206309,bird 206310,automobile 206311,cat 206312,truck 206313,bird 206314,ship 206315,ship 206316,deer 206317,cat 206318,automobile 206319,deer 206320,dog 206321,cat 206322,cat 206323,bird 206324,bird 206325,truck 206326,cat 206327,ship 206328,dog 206329,cat 206330,frog 206331,deer 206332,bird 206333,cat 206334,ship 206335,dog 206336,deer 206337,horse 206338,ship 206339,bird 206340,frog 206341,cat 206342,horse 206343,automobile 206344,dog 206345,cat 206346,cat 206347,ship 206348,ship 206349,truck 206350,frog 206351,deer 206352,horse 206353,airplane 206354,dog 206355,horse 206356,ship 206357,horse 206358,bird 206359,automobile 206360,cat 206361,automobile 206362,cat 206363,cat 206364,truck 206365,cat 206366,deer 206367,airplane 206368,horse 206369,airplane 206370,automobile 206371,automobile 206372,deer 206373,cat 206374,horse 206375,dog 206376,airplane 206377,dog 206378,dog 206379,horse 206380,bird 206381,dog 206382,cat 206383,bird 206384,bird 206385,airplane 206386,truck 206387,ship 206388,dog 206389,ship 206390,horse 206391,deer 206392,bird 206393,bird 206394,airplane 206395,truck 206396,horse 206397,dog 206398,cat 206399,ship 206400,bird 206401,truck 206402,deer 206403,horse 206404,automobile 206405,cat 206406,frog 206407,airplane 206408,frog 206409,horse 206410,automobile 206411,deer 206412,frog 206413,airplane 206414,dog 206415,automobile 206416,horse 206417,airplane 206418,bird 206419,cat 206420,horse 206421,cat 206422,automobile 206423,truck 206424,ship 206425,cat 206426,airplane 206427,frog 206428,frog 206429,ship 206430,truck 206431,deer 206432,horse 206433,automobile 206434,airplane 206435,dog 206436,horse 206437,deer 206438,automobile 206439,automobile 206440,deer 206441,frog 206442,truck 206443,truck 206444,airplane 206445,bird 206446,horse 206447,horse 206448,ship 206449,cat 206450,airplane 206451,horse 206452,cat 206453,airplane 206454,ship 206455,frog 206456,cat 206457,deer 206458,deer 206459,deer 206460,frog 206461,dog 206462,horse 206463,frog 206464,truck 206465,frog 206466,truck 206467,cat 206468,bird 206469,airplane 206470,automobile 206471,bird 206472,bird 206473,automobile 206474,dog 206475,automobile 206476,automobile 206477,automobile 206478,ship 206479,cat 206480,airplane 206481,truck 206482,bird 206483,truck 206484,truck 206485,truck 206486,frog 206487,airplane 206488,airplane 206489,deer 206490,cat 206491,cat 206492,frog 206493,truck 206494,airplane 206495,dog 206496,dog 206497,dog 206498,dog 206499,truck 206500,frog 206501,cat 206502,bird 206503,cat 206504,cat 206505,automobile 206506,automobile 206507,frog 206508,automobile 206509,ship 206510,bird 206511,automobile 206512,dog 206513,horse 206514,airplane 206515,cat 206516,cat 206517,horse 206518,truck 206519,dog 206520,truck 206521,truck 206522,deer 206523,deer 206524,deer 206525,deer 206526,automobile 206527,frog 206528,airplane 206529,automobile 206530,deer 206531,deer 206532,ship 206533,bird 206534,dog 206535,cat 206536,ship 206537,cat 206538,airplane 206539,deer 206540,horse 206541,bird 206542,cat 206543,cat 206544,deer 206545,deer 206546,horse 206547,automobile 206548,deer 206549,horse 206550,airplane 206551,horse 206552,horse 206553,ship 206554,bird 206555,truck 206556,airplane 206557,cat 206558,truck 206559,airplane 206560,dog 206561,horse 206562,deer 206563,cat 206564,frog 206565,deer 206566,airplane 206567,automobile 206568,dog 206569,frog 206570,cat 206571,truck 206572,ship 206573,airplane 206574,automobile 206575,automobile 206576,bird 206577,dog 206578,airplane 206579,automobile 206580,cat 206581,ship 206582,bird 206583,airplane 206584,bird 206585,horse 206586,airplane 206587,deer 206588,truck 206589,ship 206590,deer 206591,cat 206592,cat 206593,cat 206594,airplane 206595,horse 206596,cat 206597,airplane 206598,cat 206599,frog 206600,bird 206601,automobile 206602,dog 206603,deer 206604,bird 206605,deer 206606,truck 206607,horse 206608,deer 206609,horse 206610,automobile 206611,horse 206612,bird 206613,horse 206614,cat 206615,airplane 206616,dog 206617,dog 206618,frog 206619,cat 206620,deer 206621,bird 206622,cat 206623,automobile 206624,ship 206625,deer 206626,cat 206627,deer 206628,truck 206629,bird 206630,automobile 206631,deer 206632,dog 206633,airplane 206634,ship 206635,frog 206636,horse 206637,cat 206638,airplane 206639,horse 206640,automobile 206641,deer 206642,truck 206643,deer 206644,horse 206645,truck 206646,cat 206647,airplane 206648,cat 206649,horse 206650,bird 206651,cat 206652,dog 206653,frog 206654,airplane 206655,horse 206656,cat 206657,truck 206658,cat 206659,dog 206660,cat 206661,truck 206662,deer 206663,cat 206664,cat 206665,cat 206666,truck 206667,cat 206668,airplane 206669,automobile 206670,deer 206671,dog 206672,ship 206673,horse 206674,dog 206675,bird 206676,truck 206677,horse 206678,deer 206679,bird 206680,cat 206681,frog 206682,dog 206683,horse 206684,deer 206685,dog 206686,truck 206687,cat 206688,cat 206689,ship 206690,truck 206691,cat 206692,airplane 206693,frog 206694,horse 206695,horse 206696,horse 206697,dog 206698,dog 206699,airplane 206700,dog 206701,automobile 206702,truck 206703,horse 206704,deer 206705,horse 206706,horse 206707,frog 206708,bird 206709,ship 206710,airplane 206711,frog 206712,automobile 206713,dog 206714,dog 206715,dog 206716,deer 206717,frog 206718,deer 206719,deer 206720,truck 206721,cat 206722,horse 206723,frog 206724,cat 206725,deer 206726,airplane 206727,truck 206728,cat 206729,horse 206730,bird 206731,frog 206732,deer 206733,bird 206734,cat 206735,horse 206736,dog 206737,cat 206738,automobile 206739,horse 206740,bird 206741,horse 206742,automobile 206743,horse 206744,airplane 206745,cat 206746,dog 206747,deer 206748,bird 206749,bird 206750,bird 206751,airplane 206752,deer 206753,bird 206754,frog 206755,deer 206756,cat 206757,deer 206758,cat 206759,horse 206760,dog 206761,truck 206762,cat 206763,cat 206764,bird 206765,deer 206766,cat 206767,deer 206768,cat 206769,dog 206770,bird 206771,ship 206772,automobile 206773,airplane 206774,dog 206775,airplane 206776,horse 206777,cat 206778,frog 206779,horse 206780,horse 206781,bird 206782,frog 206783,airplane 206784,frog 206785,dog 206786,automobile 206787,deer 206788,automobile 206789,truck 206790,cat 206791,ship 206792,truck 206793,frog 206794,ship 206795,airplane 206796,dog 206797,truck 206798,dog 206799,deer 206800,dog 206801,cat 206802,dog 206803,dog 206804,truck 206805,deer 206806,frog 206807,frog 206808,frog 206809,ship 206810,airplane 206811,automobile 206812,bird 206813,automobile 206814,frog 206815,cat 206816,horse 206817,bird 206818,ship 206819,bird 206820,ship 206821,automobile 206822,horse 206823,bird 206824,horse 206825,truck 206826,deer 206827,frog 206828,airplane 206829,truck 206830,cat 206831,automobile 206832,automobile 206833,ship 206834,cat 206835,truck 206836,bird 206837,frog 206838,horse 206839,dog 206840,airplane 206841,frog 206842,deer 206843,bird 206844,cat 206845,horse 206846,horse 206847,frog 206848,ship 206849,ship 206850,frog 206851,airplane 206852,frog 206853,automobile 206854,cat 206855,deer 206856,frog 206857,bird 206858,ship 206859,cat 206860,airplane 206861,automobile 206862,frog 206863,automobile 206864,cat 206865,truck 206866,automobile 206867,truck 206868,ship 206869,frog 206870,automobile 206871,deer 206872,bird 206873,frog 206874,truck 206875,frog 206876,frog 206877,truck 206878,ship 206879,airplane 206880,truck 206881,ship 206882,airplane 206883,cat 206884,deer 206885,bird 206886,automobile 206887,frog 206888,bird 206889,ship 206890,truck 206891,truck 206892,ship 206893,ship 206894,airplane 206895,horse 206896,frog 206897,deer 206898,ship 206899,ship 206900,cat 206901,bird 206902,horse 206903,airplane 206904,frog 206905,dog 206906,truck 206907,truck 206908,truck 206909,ship 206910,automobile 206911,airplane 206912,horse 206913,deer 206914,dog 206915,dog 206916,dog 206917,ship 206918,ship 206919,automobile 206920,bird 206921,bird 206922,horse 206923,deer 206924,bird 206925,bird 206926,bird 206927,bird 206928,bird 206929,cat 206930,frog 206931,airplane 206932,cat 206933,deer 206934,airplane 206935,bird 206936,deer 206937,cat 206938,frog 206939,ship 206940,airplane 206941,deer 206942,bird 206943,dog 206944,frog 206945,cat 206946,bird 206947,ship 206948,cat 206949,frog 206950,cat 206951,cat 206952,cat 206953,automobile 206954,dog 206955,ship 206956,automobile 206957,deer 206958,dog 206959,bird 206960,cat 206961,cat 206962,bird 206963,bird 206964,truck 206965,bird 206966,automobile 206967,truck 206968,airplane 206969,horse 206970,bird 206971,dog 206972,ship 206973,bird 206974,airplane 206975,deer 206976,frog 206977,frog 206978,bird 206979,dog 206980,ship 206981,truck 206982,deer 206983,truck 206984,truck 206985,deer 206986,dog 206987,horse 206988,horse 206989,bird 206990,horse 206991,airplane 206992,horse 206993,dog 206994,horse 206995,dog 206996,cat 206997,frog 206998,dog 206999,dog 207000,cat 207001,truck 207002,deer 207003,cat 207004,frog 207005,airplane 207006,airplane 207007,airplane 207008,deer 207009,airplane 207010,dog 207011,ship 207012,automobile 207013,deer 207014,automobile 207015,truck 207016,deer 207017,cat 207018,airplane 207019,frog 207020,deer 207021,deer 207022,frog 207023,airplane 207024,truck 207025,bird 207026,truck 207027,cat 207028,airplane 207029,airplane 207030,airplane 207031,horse 207032,ship 207033,dog 207034,dog 207035,frog 207036,automobile 207037,horse 207038,horse 207039,cat 207040,cat 207041,horse 207042,airplane 207043,deer 207044,horse 207045,ship 207046,ship 207047,frog 207048,airplane 207049,ship 207050,cat 207051,airplane 207052,automobile 207053,horse 207054,deer 207055,deer 207056,truck 207057,deer 207058,ship 207059,bird 207060,horse 207061,deer 207062,dog 207063,bird 207064,horse 207065,frog 207066,frog 207067,cat 207068,airplane 207069,cat 207070,truck 207071,cat 207072,cat 207073,frog 207074,frog 207075,truck 207076,frog 207077,deer 207078,dog 207079,deer 207080,truck 207081,bird 207082,automobile 207083,automobile 207084,airplane 207085,ship 207086,dog 207087,bird 207088,frog 207089,automobile 207090,ship 207091,bird 207092,automobile 207093,truck 207094,dog 207095,ship 207096,cat 207097,cat 207098,truck 207099,deer 207100,dog 207101,automobile 207102,deer 207103,frog 207104,dog 207105,horse 207106,bird 207107,bird 207108,dog 207109,ship 207110,horse 207111,dog 207112,airplane 207113,truck 207114,horse 207115,dog 207116,deer 207117,ship 207118,automobile 207119,deer 207120,frog 207121,horse 207122,ship 207123,truck 207124,bird 207125,horse 207126,cat 207127,truck 207128,frog 207129,deer 207130,dog 207131,dog 207132,airplane 207133,airplane 207134,frog 207135,airplane 207136,cat 207137,deer 207138,truck 207139,automobile 207140,bird 207141,deer 207142,deer 207143,frog 207144,automobile 207145,frog 207146,deer 207147,frog 207148,truck 207149,deer 207150,horse 207151,bird 207152,frog 207153,deer 207154,frog 207155,ship 207156,deer 207157,cat 207158,deer 207159,horse 207160,dog 207161,dog 207162,dog 207163,truck 207164,ship 207165,dog 207166,dog 207167,deer 207168,horse 207169,dog 207170,airplane 207171,deer 207172,automobile 207173,truck 207174,airplane 207175,truck 207176,dog 207177,dog 207178,deer 207179,cat 207180,deer 207181,truck 207182,automobile 207183,truck 207184,dog 207185,cat 207186,horse 207187,airplane 207188,bird 207189,truck 207190,cat 207191,automobile 207192,deer 207193,automobile 207194,horse 207195,cat 207196,frog 207197,airplane 207198,frog 207199,bird 207200,frog 207201,truck 207202,truck 207203,frog 207204,bird 207205,frog 207206,airplane 207207,automobile 207208,horse 207209,bird 207210,ship 207211,cat 207212,truck 207213,ship 207214,dog 207215,airplane 207216,horse 207217,dog 207218,deer 207219,airplane 207220,dog 207221,frog 207222,cat 207223,horse 207224,airplane 207225,truck 207226,frog 207227,bird 207228,dog 207229,truck 207230,cat 207231,truck 207232,cat 207233,frog 207234,automobile 207235,deer 207236,frog 207237,deer 207238,cat 207239,truck 207240,truck 207241,dog 207242,deer 207243,airplane 207244,truck 207245,cat 207246,cat 207247,deer 207248,truck 207249,automobile 207250,truck 207251,bird 207252,frog 207253,deer 207254,automobile 207255,frog 207256,cat 207257,bird 207258,deer 207259,dog 207260,truck 207261,cat 207262,cat 207263,automobile 207264,frog 207265,frog 207266,bird 207267,automobile 207268,dog 207269,ship 207270,ship 207271,truck 207272,automobile 207273,truck 207274,deer 207275,cat 207276,horse 207277,frog 207278,cat 207279,horse 207280,deer 207281,cat 207282,dog 207283,frog 207284,ship 207285,cat 207286,deer 207287,horse 207288,deer 207289,truck 207290,cat 207291,horse 207292,cat 207293,ship 207294,dog 207295,cat 207296,frog 207297,truck 207298,truck 207299,truck 207300,automobile 207301,deer 207302,cat 207303,frog 207304,airplane 207305,truck 207306,deer 207307,frog 207308,truck 207309,dog 207310,dog 207311,automobile 207312,deer 207313,deer 207314,ship 207315,horse 207316,frog 207317,horse 207318,bird 207319,deer 207320,deer 207321,ship 207322,cat 207323,cat 207324,ship 207325,dog 207326,bird 207327,cat 207328,automobile 207329,truck 207330,bird 207331,airplane 207332,frog 207333,dog 207334,dog 207335,cat 207336,truck 207337,truck 207338,dog 207339,airplane 207340,horse 207341,horse 207342,deer 207343,automobile 207344,dog 207345,deer 207346,horse 207347,automobile 207348,automobile 207349,automobile 207350,deer 207351,ship 207352,bird 207353,deer 207354,cat 207355,deer 207356,truck 207357,truck 207358,frog 207359,horse 207360,airplane 207361,automobile 207362,frog 207363,frog 207364,dog 207365,deer 207366,airplane 207367,bird 207368,cat 207369,dog 207370,cat 207371,dog 207372,cat 207373,cat 207374,truck 207375,ship 207376,dog 207377,frog 207378,deer 207379,airplane 207380,automobile 207381,truck 207382,frog 207383,bird 207384,ship 207385,deer 207386,truck 207387,cat 207388,dog 207389,cat 207390,dog 207391,dog 207392,frog 207393,frog 207394,ship 207395,bird 207396,dog 207397,frog 207398,bird 207399,deer 207400,dog 207401,frog 207402,airplane 207403,bird 207404,cat 207405,cat 207406,cat 207407,bird 207408,ship 207409,airplane 207410,frog 207411,truck 207412,frog 207413,cat 207414,frog 207415,ship 207416,cat 207417,dog 207418,horse 207419,airplane 207420,frog 207421,bird 207422,airplane 207423,dog 207424,dog 207425,ship 207426,cat 207427,deer 207428,horse 207429,deer 207430,airplane 207431,frog 207432,frog 207433,frog 207434,airplane 207435,cat 207436,bird 207437,horse 207438,dog 207439,automobile 207440,dog 207441,frog 207442,automobile 207443,automobile 207444,automobile 207445,cat 207446,airplane 207447,automobile 207448,dog 207449,truck 207450,horse 207451,horse 207452,automobile 207453,ship 207454,ship 207455,dog 207456,frog 207457,bird 207458,airplane 207459,dog 207460,deer 207461,cat 207462,truck 207463,airplane 207464,truck 207465,cat 207466,horse 207467,automobile 207468,deer 207469,deer 207470,dog 207471,horse 207472,horse 207473,airplane 207474,ship 207475,cat 207476,deer 207477,deer 207478,cat 207479,airplane 207480,airplane 207481,truck 207482,truck 207483,horse 207484,frog 207485,automobile 207486,bird 207487,dog 207488,deer 207489,frog 207490,airplane 207491,ship 207492,cat 207493,deer 207494,deer 207495,bird 207496,ship 207497,bird 207498,truck 207499,airplane 207500,cat 207501,airplane 207502,horse 207503,deer 207504,truck 207505,truck 207506,horse 207507,ship 207508,ship 207509,deer 207510,truck 207511,bird 207512,deer 207513,truck 207514,cat 207515,horse 207516,bird 207517,truck 207518,cat 207519,truck 207520,horse 207521,deer 207522,frog 207523,deer 207524,ship 207525,dog 207526,dog 207527,horse 207528,dog 207529,cat 207530,truck 207531,truck 207532,ship 207533,cat 207534,ship 207535,frog 207536,ship 207537,airplane 207538,bird 207539,cat 207540,cat 207541,cat 207542,deer 207543,dog 207544,airplane 207545,truck 207546,cat 207547,truck 207548,airplane 207549,ship 207550,deer 207551,cat 207552,airplane 207553,truck 207554,ship 207555,truck 207556,truck 207557,automobile 207558,airplane 207559,bird 207560,bird 207561,frog 207562,deer 207563,automobile 207564,bird 207565,ship 207566,frog 207567,bird 207568,automobile 207569,truck 207570,deer 207571,frog 207572,bird 207573,airplane 207574,cat 207575,ship 207576,bird 207577,dog 207578,dog 207579,bird 207580,horse 207581,truck 207582,deer 207583,cat 207584,dog 207585,frog 207586,deer 207587,deer 207588,cat 207589,dog 207590,deer 207591,ship 207592,ship 207593,airplane 207594,dog 207595,deer 207596,frog 207597,deer 207598,deer 207599,ship 207600,deer 207601,deer 207602,bird 207603,cat 207604,automobile 207605,truck 207606,ship 207607,deer 207608,dog 207609,bird 207610,ship 207611,airplane 207612,truck 207613,ship 207614,airplane 207615,horse 207616,frog 207617,deer 207618,ship 207619,deer 207620,dog 207621,automobile 207622,deer 207623,frog 207624,automobile 207625,deer 207626,deer 207627,truck 207628,cat 207629,deer 207630,deer 207631,dog 207632,ship 207633,horse 207634,deer 207635,bird 207636,bird 207637,automobile 207638,horse 207639,airplane 207640,cat 207641,deer 207642,automobile 207643,ship 207644,deer 207645,cat 207646,ship 207647,dog 207648,airplane 207649,frog 207650,horse 207651,truck 207652,frog 207653,bird 207654,horse 207655,airplane 207656,horse 207657,cat 207658,airplane 207659,frog 207660,airplane 207661,ship 207662,deer 207663,cat 207664,cat 207665,truck 207666,airplane 207667,frog 207668,cat 207669,ship 207670,cat 207671,automobile 207672,horse 207673,deer 207674,ship 207675,deer 207676,ship 207677,truck 207678,frog 207679,ship 207680,ship 207681,airplane 207682,cat 207683,automobile 207684,cat 207685,deer 207686,frog 207687,automobile 207688,deer 207689,deer 207690,frog 207691,deer 207692,airplane 207693,airplane 207694,airplane 207695,dog 207696,frog 207697,automobile 207698,cat 207699,dog 207700,horse 207701,deer 207702,bird 207703,automobile 207704,deer 207705,frog 207706,deer 207707,automobile 207708,truck 207709,bird 207710,ship 207711,bird 207712,ship 207713,cat 207714,bird 207715,cat 207716,frog 207717,deer 207718,cat 207719,bird 207720,airplane 207721,cat 207722,ship 207723,cat 207724,frog 207725,cat 207726,deer 207727,bird 207728,automobile 207729,bird 207730,airplane 207731,automobile 207732,deer 207733,truck 207734,airplane 207735,deer 207736,truck 207737,cat 207738,frog 207739,ship 207740,frog 207741,cat 207742,cat 207743,airplane 207744,horse 207745,horse 207746,truck 207747,bird 207748,cat 207749,cat 207750,automobile 207751,cat 207752,deer 207753,frog 207754,frog 207755,dog 207756,cat 207757,frog 207758,deer 207759,airplane 207760,truck 207761,automobile 207762,deer 207763,dog 207764,horse 207765,dog 207766,truck 207767,automobile 207768,dog 207769,frog 207770,cat 207771,horse 207772,bird 207773,frog 207774,deer 207775,ship 207776,dog 207777,deer 207778,dog 207779,horse 207780,cat 207781,frog 207782,truck 207783,cat 207784,truck 207785,frog 207786,frog 207787,deer 207788,truck 207789,dog 207790,bird 207791,automobile 207792,cat 207793,bird 207794,horse 207795,cat 207796,dog 207797,frog 207798,ship 207799,ship 207800,frog 207801,cat 207802,automobile 207803,airplane 207804,automobile 207805,bird 207806,ship 207807,frog 207808,cat 207809,deer 207810,cat 207811,horse 207812,dog 207813,airplane 207814,cat 207815,dog 207816,deer 207817,cat 207818,frog 207819,horse 207820,automobile 207821,horse 207822,bird 207823,frog 207824,cat 207825,automobile 207826,horse 207827,horse 207828,horse 207829,frog 207830,bird 207831,cat 207832,deer 207833,ship 207834,truck 207835,truck 207836,bird 207837,deer 207838,ship 207839,deer 207840,deer 207841,dog 207842,deer 207843,airplane 207844,automobile 207845,horse 207846,frog 207847,dog 207848,dog 207849,bird 207850,truck 207851,cat 207852,cat 207853,truck 207854,truck 207855,truck 207856,dog 207857,cat 207858,horse 207859,horse 207860,deer 207861,airplane 207862,cat 207863,ship 207864,cat 207865,horse 207866,bird 207867,horse 207868,cat 207869,horse 207870,deer 207871,bird 207872,automobile 207873,truck 207874,horse 207875,bird 207876,ship 207877,cat 207878,truck 207879,horse 207880,cat 207881,ship 207882,ship 207883,horse 207884,frog 207885,bird 207886,cat 207887,airplane 207888,ship 207889,dog 207890,airplane 207891,frog 207892,truck 207893,dog 207894,bird 207895,cat 207896,airplane 207897,deer 207898,frog 207899,airplane 207900,dog 207901,dog 207902,frog 207903,cat 207904,cat 207905,cat 207906,bird 207907,frog 207908,airplane 207909,frog 207910,airplane 207911,ship 207912,cat 207913,bird 207914,frog 207915,automobile 207916,dog 207917,frog 207918,automobile 207919,horse 207920,horse 207921,dog 207922,bird 207923,dog 207924,cat 207925,airplane 207926,truck 207927,deer 207928,automobile 207929,dog 207930,cat 207931,cat 207932,cat 207933,cat 207934,dog 207935,deer 207936,automobile 207937,deer 207938,cat 207939,cat 207940,airplane 207941,automobile 207942,airplane 207943,deer 207944,frog 207945,bird 207946,cat 207947,bird 207948,bird 207949,truck 207950,deer 207951,horse 207952,ship 207953,horse 207954,horse 207955,automobile 207956,automobile 207957,cat 207958,ship 207959,deer 207960,cat 207961,deer 207962,ship 207963,deer 207964,bird 207965,deer 207966,deer 207967,truck 207968,deer 207969,deer 207970,dog 207971,dog 207972,automobile 207973,dog 207974,airplane 207975,cat 207976,deer 207977,deer 207978,automobile 207979,cat 207980,dog 207981,truck 207982,automobile 207983,ship 207984,horse 207985,bird 207986,automobile 207987,frog 207988,ship 207989,deer 207990,cat 207991,truck 207992,bird 207993,cat 207994,automobile 207995,airplane 207996,frog 207997,truck 207998,deer 207999,cat 208000,automobile 208001,truck 208002,automobile 208003,frog 208004,truck 208005,cat 208006,deer 208007,horse 208008,airplane 208009,cat 208010,dog 208011,bird 208012,cat 208013,frog 208014,ship 208015,horse 208016,bird 208017,dog 208018,dog 208019,deer 208020,bird 208021,cat 208022,ship 208023,automobile 208024,deer 208025,truck 208026,cat 208027,dog 208028,dog 208029,airplane 208030,bird 208031,deer 208032,horse 208033,truck 208034,frog 208035,deer 208036,cat 208037,deer 208038,truck 208039,bird 208040,deer 208041,bird 208042,bird 208043,dog 208044,truck 208045,dog 208046,ship 208047,frog 208048,horse 208049,cat 208050,dog 208051,deer 208052,horse 208053,truck 208054,airplane 208055,deer 208056,truck 208057,deer 208058,bird 208059,automobile 208060,bird 208061,ship 208062,ship 208063,ship 208064,truck 208065,frog 208066,horse 208067,cat 208068,truck 208069,cat 208070,frog 208071,frog 208072,airplane 208073,airplane 208074,deer 208075,deer 208076,airplane 208077,ship 208078,bird 208079,dog 208080,frog 208081,truck 208082,cat 208083,cat 208084,cat 208085,truck 208086,truck 208087,horse 208088,ship 208089,bird 208090,truck 208091,dog 208092,cat 208093,dog 208094,cat 208095,truck 208096,ship 208097,frog 208098,automobile 208099,airplane 208100,airplane 208101,deer 208102,deer 208103,horse 208104,dog 208105,deer 208106,bird 208107,cat 208108,dog 208109,dog 208110,frog 208111,truck 208112,airplane 208113,truck 208114,airplane 208115,cat 208116,bird 208117,deer 208118,truck 208119,dog 208120,deer 208121,cat 208122,ship 208123,truck 208124,cat 208125,truck 208126,dog 208127,horse 208128,deer 208129,horse 208130,bird 208131,bird 208132,automobile 208133,automobile 208134,deer 208135,airplane 208136,frog 208137,airplane 208138,deer 208139,cat 208140,horse 208141,dog 208142,bird 208143,bird 208144,horse 208145,bird 208146,cat 208147,ship 208148,bird 208149,cat 208150,truck 208151,frog 208152,deer 208153,frog 208154,horse 208155,dog 208156,dog 208157,dog 208158,dog 208159,automobile 208160,cat 208161,cat 208162,ship 208163,dog 208164,dog 208165,frog 208166,truck 208167,horse 208168,deer 208169,horse 208170,dog 208171,truck 208172,frog 208173,dog 208174,cat 208175,automobile 208176,deer 208177,airplane 208178,dog 208179,deer 208180,dog 208181,horse 208182,ship 208183,horse 208184,deer 208185,cat 208186,ship 208187,dog 208188,frog 208189,cat 208190,dog 208191,horse 208192,deer 208193,deer 208194,horse 208195,dog 208196,automobile 208197,deer 208198,dog 208199,bird 208200,dog 208201,airplane 208202,cat 208203,cat 208204,bird 208205,bird 208206,frog 208207,automobile 208208,dog 208209,truck 208210,frog 208211,truck 208212,bird 208213,airplane 208214,cat 208215,deer 208216,bird 208217,horse 208218,deer 208219,airplane 208220,dog 208221,ship 208222,frog 208223,frog 208224,airplane 208225,automobile 208226,bird 208227,deer 208228,cat 208229,cat 208230,cat 208231,ship 208232,truck 208233,cat 208234,cat 208235,deer 208236,ship 208237,cat 208238,frog 208239,airplane 208240,cat 208241,dog 208242,horse 208243,horse 208244,truck 208245,deer 208246,dog 208247,cat 208248,dog 208249,dog 208250,bird 208251,truck 208252,deer 208253,deer 208254,automobile 208255,horse 208256,cat 208257,ship 208258,truck 208259,cat 208260,cat 208261,ship 208262,cat 208263,cat 208264,dog 208265,bird 208266,frog 208267,truck 208268,automobile 208269,airplane 208270,automobile 208271,dog 208272,cat 208273,dog 208274,horse 208275,frog 208276,automobile 208277,bird 208278,dog 208279,frog 208280,deer 208281,airplane 208282,frog 208283,deer 208284,ship 208285,frog 208286,ship 208287,horse 208288,automobile 208289,deer 208290,dog 208291,truck 208292,horse 208293,deer 208294,horse 208295,bird 208296,automobile 208297,automobile 208298,frog 208299,ship 208300,deer 208301,horse 208302,truck 208303,frog 208304,dog 208305,airplane 208306,horse 208307,bird 208308,deer 208309,ship 208310,deer 208311,deer 208312,dog 208313,horse 208314,truck 208315,deer 208316,deer 208317,frog 208318,horse 208319,frog 208320,truck 208321,deer 208322,dog 208323,bird 208324,cat 208325,cat 208326,cat 208327,bird 208328,frog 208329,automobile 208330,bird 208331,automobile 208332,truck 208333,deer 208334,airplane 208335,deer 208336,dog 208337,deer 208338,horse 208339,automobile 208340,cat 208341,horse 208342,airplane 208343,deer 208344,cat 208345,cat 208346,bird 208347,cat 208348,airplane 208349,airplane 208350,horse 208351,truck 208352,horse 208353,bird 208354,deer 208355,airplane 208356,horse 208357,truck 208358,cat 208359,bird 208360,bird 208361,frog 208362,bird 208363,frog 208364,bird 208365,frog 208366,horse 208367,horse 208368,frog 208369,deer 208370,dog 208371,frog 208372,frog 208373,airplane 208374,airplane 208375,cat 208376,bird 208377,deer 208378,bird 208379,bird 208380,cat 208381,dog 208382,dog 208383,cat 208384,ship 208385,truck 208386,deer 208387,automobile 208388,automobile 208389,airplane 208390,horse 208391,truck 208392,truck 208393,horse 208394,dog 208395,truck 208396,cat 208397,cat 208398,horse 208399,horse 208400,truck 208401,dog 208402,ship 208403,dog 208404,frog 208405,cat 208406,truck 208407,bird 208408,dog 208409,airplane 208410,horse 208411,frog 208412,deer 208413,frog 208414,truck 208415,automobile 208416,automobile 208417,horse 208418,ship 208419,truck 208420,truck 208421,airplane 208422,deer 208423,cat 208424,cat 208425,dog 208426,automobile 208427,dog 208428,truck 208429,horse 208430,cat 208431,horse 208432,dog 208433,dog 208434,bird 208435,frog 208436,automobile 208437,ship 208438,cat 208439,deer 208440,deer 208441,automobile 208442,truck 208443,ship 208444,dog 208445,truck 208446,automobile 208447,dog 208448,cat 208449,cat 208450,horse 208451,bird 208452,truck 208453,deer 208454,cat 208455,cat 208456,airplane 208457,truck 208458,bird 208459,cat 208460,ship 208461,automobile 208462,dog 208463,horse 208464,cat 208465,airplane 208466,truck 208467,ship 208468,truck 208469,bird 208470,ship 208471,frog 208472,deer 208473,horse 208474,frog 208475,cat 208476,dog 208477,airplane 208478,cat 208479,truck 208480,truck 208481,deer 208482,cat 208483,deer 208484,ship 208485,cat 208486,truck 208487,frog 208488,automobile 208489,airplane 208490,cat 208491,dog 208492,horse 208493,horse 208494,ship 208495,ship 208496,bird 208497,bird 208498,frog 208499,horse 208500,ship 208501,dog 208502,airplane 208503,truck 208504,airplane 208505,deer 208506,deer 208507,cat 208508,airplane 208509,deer 208510,automobile 208511,dog 208512,deer 208513,deer 208514,airplane 208515,ship 208516,cat 208517,frog 208518,cat 208519,airplane 208520,deer 208521,frog 208522,cat 208523,deer 208524,frog 208525,airplane 208526,dog 208527,deer 208528,dog 208529,bird 208530,airplane 208531,horse 208532,cat 208533,deer 208534,cat 208535,frog 208536,horse 208537,truck 208538,truck 208539,cat 208540,horse 208541,bird 208542,airplane 208543,cat 208544,automobile 208545,frog 208546,truck 208547,cat 208548,horse 208549,automobile 208550,cat 208551,ship 208552,horse 208553,bird 208554,dog 208555,automobile 208556,deer 208557,automobile 208558,bird 208559,cat 208560,frog 208561,deer 208562,truck 208563,airplane 208564,airplane 208565,airplane 208566,deer 208567,deer 208568,cat 208569,cat 208570,deer 208571,airplane 208572,deer 208573,dog 208574,dog 208575,bird 208576,cat 208577,cat 208578,airplane 208579,cat 208580,dog 208581,deer 208582,dog 208583,frog 208584,airplane 208585,deer 208586,deer 208587,frog 208588,automobile 208589,cat 208590,deer 208591,bird 208592,truck 208593,horse 208594,frog 208595,ship 208596,deer 208597,deer 208598,cat 208599,truck 208600,dog 208601,frog 208602,frog 208603,truck 208604,cat 208605,airplane 208606,automobile 208607,dog 208608,dog 208609,ship 208610,airplane 208611,dog 208612,horse 208613,ship 208614,airplane 208615,cat 208616,airplane 208617,airplane 208618,dog 208619,cat 208620,deer 208621,dog 208622,truck 208623,frog 208624,airplane 208625,deer 208626,frog 208627,deer 208628,airplane 208629,frog 208630,horse 208631,airplane 208632,cat 208633,bird 208634,frog 208635,airplane 208636,airplane 208637,frog 208638,dog 208639,frog 208640,deer 208641,truck 208642,deer 208643,cat 208644,truck 208645,deer 208646,deer 208647,deer 208648,frog 208649,ship 208650,automobile 208651,cat 208652,truck 208653,frog 208654,bird 208655,deer 208656,cat 208657,deer 208658,truck 208659,frog 208660,bird 208661,deer 208662,bird 208663,truck 208664,truck 208665,cat 208666,dog 208667,horse 208668,deer 208669,horse 208670,automobile 208671,dog 208672,dog 208673,horse 208674,deer 208675,cat 208676,cat 208677,deer 208678,bird 208679,automobile 208680,frog 208681,cat 208682,frog 208683,dog 208684,frog 208685,cat 208686,bird 208687,truck 208688,dog 208689,automobile 208690,bird 208691,airplane 208692,frog 208693,automobile 208694,deer 208695,dog 208696,horse 208697,airplane 208698,truck 208699,bird 208700,bird 208701,frog 208702,ship 208703,ship 208704,cat 208705,deer 208706,frog 208707,dog 208708,bird 208709,frog 208710,deer 208711,horse 208712,frog 208713,cat 208714,truck 208715,dog 208716,cat 208717,frog 208718,frog 208719,dog 208720,deer 208721,ship 208722,airplane 208723,deer 208724,frog 208725,ship 208726,truck 208727,deer 208728,deer 208729,ship 208730,cat 208731,bird 208732,deer 208733,deer 208734,automobile 208735,cat 208736,airplane 208737,frog 208738,dog 208739,cat 208740,dog 208741,cat 208742,cat 208743,deer 208744,frog 208745,ship 208746,truck 208747,automobile 208748,ship 208749,automobile 208750,cat 208751,frog 208752,deer 208753,bird 208754,dog 208755,airplane 208756,automobile 208757,automobile 208758,truck 208759,frog 208760,bird 208761,frog 208762,airplane 208763,bird 208764,cat 208765,dog 208766,horse 208767,deer 208768,automobile 208769,automobile 208770,frog 208771,deer 208772,dog 208773,automobile 208774,deer 208775,ship 208776,airplane 208777,cat 208778,deer 208779,bird 208780,dog 208781,ship 208782,frog 208783,frog 208784,airplane 208785,frog 208786,bird 208787,ship 208788,cat 208789,automobile 208790,truck 208791,bird 208792,horse 208793,cat 208794,frog 208795,automobile 208796,frog 208797,dog 208798,airplane 208799,automobile 208800,truck 208801,frog 208802,airplane 208803,dog 208804,cat 208805,dog 208806,bird 208807,airplane 208808,horse 208809,ship 208810,frog 208811,automobile 208812,bird 208813,deer 208814,airplane 208815,deer 208816,truck 208817,ship 208818,horse 208819,frog 208820,frog 208821,bird 208822,frog 208823,automobile 208824,bird 208825,airplane 208826,dog 208827,ship 208828,dog 208829,ship 208830,cat 208831,ship 208832,automobile 208833,cat 208834,bird 208835,automobile 208836,cat 208837,truck 208838,deer 208839,bird 208840,dog 208841,deer 208842,frog 208843,horse 208844,deer 208845,cat 208846,cat 208847,frog 208848,dog 208849,deer 208850,horse 208851,truck 208852,deer 208853,airplane 208854,deer 208855,deer 208856,cat 208857,truck 208858,dog 208859,deer 208860,airplane 208861,deer 208862,dog 208863,dog 208864,truck 208865,cat 208866,frog 208867,deer 208868,cat 208869,bird 208870,automobile 208871,dog 208872,cat 208873,ship 208874,airplane 208875,horse 208876,airplane 208877,bird 208878,ship 208879,cat 208880,deer 208881,bird 208882,dog 208883,cat 208884,frog 208885,frog 208886,horse 208887,bird 208888,deer 208889,dog 208890,cat 208891,bird 208892,cat 208893,deer 208894,cat 208895,cat 208896,frog 208897,truck 208898,ship 208899,dog 208900,frog 208901,truck 208902,truck 208903,frog 208904,cat 208905,airplane 208906,ship 208907,cat 208908,dog 208909,automobile 208910,deer 208911,deer 208912,dog 208913,bird 208914,ship 208915,ship 208916,dog 208917,cat 208918,cat 208919,deer 208920,horse 208921,truck 208922,deer 208923,bird 208924,bird 208925,frog 208926,horse 208927,frog 208928,frog 208929,frog 208930,frog 208931,truck 208932,bird 208933,frog 208934,horse 208935,truck 208936,deer 208937,airplane 208938,automobile 208939,truck 208940,cat 208941,dog 208942,horse 208943,automobile 208944,frog 208945,dog 208946,automobile 208947,deer 208948,bird 208949,frog 208950,ship 208951,airplane 208952,deer 208953,dog 208954,cat 208955,cat 208956,deer 208957,cat 208958,deer 208959,frog 208960,cat 208961,bird 208962,bird 208963,dog 208964,dog 208965,airplane 208966,bird 208967,horse 208968,dog 208969,truck 208970,truck 208971,ship 208972,horse 208973,deer 208974,bird 208975,airplane 208976,bird 208977,dog 208978,airplane 208979,dog 208980,bird 208981,airplane 208982,deer 208983,frog 208984,horse 208985,frog 208986,horse 208987,horse 208988,cat 208989,cat 208990,cat 208991,deer 208992,dog 208993,truck 208994,cat 208995,airplane 208996,automobile 208997,airplane 208998,frog 208999,cat 209000,deer 209001,frog 209002,cat 209003,cat 209004,deer 209005,horse 209006,frog 209007,frog 209008,truck 209009,frog 209010,deer 209011,cat 209012,automobile 209013,horse 209014,bird 209015,cat 209016,deer 209017,truck 209018,ship 209019,horse 209020,bird 209021,horse 209022,frog 209023,frog 209024,bird 209025,dog 209026,automobile 209027,frog 209028,dog 209029,cat 209030,cat 209031,frog 209032,deer 209033,cat 209034,horse 209035,ship 209036,truck 209037,airplane 209038,automobile 209039,bird 209040,airplane 209041,cat 209042,horse 209043,truck 209044,dog 209045,truck 209046,cat 209047,truck 209048,deer 209049,horse 209050,truck 209051,cat 209052,airplane 209053,ship 209054,automobile 209055,dog 209056,horse 209057,frog 209058,truck 209059,airplane 209060,horse 209061,dog 209062,cat 209063,deer 209064,airplane 209065,deer 209066,frog 209067,deer 209068,deer 209069,automobile 209070,airplane 209071,bird 209072,deer 209073,automobile 209074,dog 209075,deer 209076,dog 209077,horse 209078,cat 209079,ship 209080,frog 209081,automobile 209082,bird 209083,automobile 209084,automobile 209085,horse 209086,truck 209087,horse 209088,horse 209089,ship 209090,dog 209091,cat 209092,ship 209093,truck 209094,automobile 209095,frog 209096,truck 209097,automobile 209098,deer 209099,dog 209100,frog 209101,dog 209102,deer 209103,deer 209104,frog 209105,frog 209106,deer 209107,dog 209108,deer 209109,deer 209110,dog 209111,truck 209112,dog 209113,frog 209114,dog 209115,ship 209116,deer 209117,automobile 209118,bird 209119,automobile 209120,automobile 209121,airplane 209122,automobile 209123,horse 209124,frog 209125,cat 209126,cat 209127,truck 209128,deer 209129,bird 209130,horse 209131,ship 209132,truck 209133,dog 209134,horse 209135,ship 209136,truck 209137,truck 209138,cat 209139,automobile 209140,dog 209141,bird 209142,dog 209143,airplane 209144,horse 209145,frog 209146,truck 209147,frog 209148,deer 209149,dog 209150,horse 209151,cat 209152,automobile 209153,frog 209154,ship 209155,cat 209156,bird 209157,frog 209158,horse 209159,truck 209160,truck 209161,cat 209162,cat 209163,cat 209164,cat 209165,frog 209166,deer 209167,deer 209168,horse 209169,frog 209170,dog 209171,automobile 209172,deer 209173,horse 209174,dog 209175,dog 209176,frog 209177,frog 209178,deer 209179,deer 209180,ship 209181,ship 209182,truck 209183,deer 209184,airplane 209185,frog 209186,frog 209187,dog 209188,airplane 209189,frog 209190,horse 209191,cat 209192,cat 209193,dog 209194,bird 209195,truck 209196,ship 209197,deer 209198,automobile 209199,horse 209200,cat 209201,bird 209202,bird 209203,cat 209204,bird 209205,airplane 209206,automobile 209207,cat 209208,deer 209209,cat 209210,dog 209211,dog 209212,cat 209213,cat 209214,horse 209215,frog 209216,automobile 209217,horse 209218,deer 209219,airplane 209220,horse 209221,truck 209222,horse 209223,deer 209224,airplane 209225,dog 209226,airplane 209227,cat 209228,cat 209229,ship 209230,airplane 209231,deer 209232,frog 209233,frog 209234,dog 209235,dog 209236,horse 209237,dog 209238,bird 209239,frog 209240,dog 209241,dog 209242,bird 209243,dog 209244,horse 209245,frog 209246,cat 209247,cat 209248,deer 209249,automobile 209250,airplane 209251,cat 209252,frog 209253,airplane 209254,truck 209255,cat 209256,truck 209257,frog 209258,cat 209259,cat 209260,dog 209261,truck 209262,deer 209263,truck 209264,truck 209265,deer 209266,truck 209267,horse 209268,horse 209269,truck 209270,automobile 209271,airplane 209272,truck 209273,truck 209274,airplane 209275,horse 209276,deer 209277,cat 209278,truck 209279,frog 209280,truck 209281,cat 209282,cat 209283,dog 209284,airplane 209285,bird 209286,deer 209287,cat 209288,airplane 209289,truck 209290,ship 209291,truck 209292,truck 209293,bird 209294,frog 209295,deer 209296,frog 209297,deer 209298,deer 209299,horse 209300,ship 209301,dog 209302,cat 209303,ship 209304,deer 209305,deer 209306,horse 209307,automobile 209308,dog 209309,bird 209310,ship 209311,truck 209312,bird 209313,cat 209314,dog 209315,bird 209316,automobile 209317,dog 209318,automobile 209319,frog 209320,cat 209321,automobile 209322,cat 209323,dog 209324,dog 209325,airplane 209326,truck 209327,horse 209328,horse 209329,bird 209330,ship 209331,dog 209332,truck 209333,cat 209334,deer 209335,dog 209336,frog 209337,cat 209338,bird 209339,frog 209340,deer 209341,truck 209342,truck 209343,ship 209344,cat 209345,deer 209346,airplane 209347,cat 209348,bird 209349,airplane 209350,bird 209351,deer 209352,airplane 209353,airplane 209354,cat 209355,dog 209356,truck 209357,cat 209358,horse 209359,airplane 209360,automobile 209361,bird 209362,airplane 209363,deer 209364,truck 209365,deer 209366,bird 209367,truck 209368,dog 209369,horse 209370,airplane 209371,dog 209372,deer 209373,deer 209374,ship 209375,frog 209376,horse 209377,frog 209378,dog 209379,airplane 209380,bird 209381,automobile 209382,deer 209383,bird 209384,cat 209385,ship 209386,automobile 209387,deer 209388,deer 209389,dog 209390,cat 209391,bird 209392,deer 209393,ship 209394,ship 209395,truck 209396,cat 209397,dog 209398,dog 209399,horse 209400,ship 209401,cat 209402,airplane 209403,deer 209404,deer 209405,cat 209406,horse 209407,horse 209408,cat 209409,ship 209410,dog 209411,airplane 209412,deer 209413,ship 209414,cat 209415,horse 209416,automobile 209417,deer 209418,deer 209419,frog 209420,cat 209421,ship 209422,airplane 209423,cat 209424,ship 209425,bird 209426,automobile 209427,deer 209428,cat 209429,dog 209430,automobile 209431,cat 209432,bird 209433,dog 209434,truck 209435,horse 209436,deer 209437,deer 209438,truck 209439,cat 209440,bird 209441,ship 209442,frog 209443,bird 209444,truck 209445,cat 209446,frog 209447,frog 209448,airplane 209449,deer 209450,airplane 209451,bird 209452,dog 209453,frog 209454,dog 209455,truck 209456,ship 209457,airplane 209458,deer 209459,deer 209460,automobile 209461,airplane 209462,deer 209463,truck 209464,ship 209465,frog 209466,cat 209467,bird 209468,ship 209469,cat 209470,ship 209471,deer 209472,cat 209473,dog 209474,dog 209475,deer 209476,ship 209477,frog 209478,deer 209479,horse 209480,frog 209481,deer 209482,airplane 209483,frog 209484,dog 209485,dog 209486,deer 209487,ship 209488,horse 209489,frog 209490,airplane 209491,cat 209492,airplane 209493,dog 209494,dog 209495,horse 209496,truck 209497,airplane 209498,truck 209499,cat 209500,truck 209501,dog 209502,frog 209503,automobile 209504,deer 209505,dog 209506,cat 209507,dog 209508,deer 209509,frog 209510,ship 209511,cat 209512,bird 209513,deer 209514,dog 209515,horse 209516,frog 209517,horse 209518,bird 209519,dog 209520,cat 209521,automobile 209522,cat 209523,deer 209524,ship 209525,deer 209526,deer 209527,cat 209528,airplane 209529,airplane 209530,dog 209531,truck 209532,deer 209533,horse 209534,cat 209535,cat 209536,frog 209537,horse 209538,horse 209539,bird 209540,deer 209541,horse 209542,deer 209543,ship 209544,dog 209545,frog 209546,cat 209547,frog 209548,frog 209549,ship 209550,airplane 209551,airplane 209552,truck 209553,deer 209554,dog 209555,truck 209556,deer 209557,cat 209558,airplane 209559,horse 209560,airplane 209561,horse 209562,cat 209563,automobile 209564,bird 209565,dog 209566,deer 209567,frog 209568,truck 209569,dog 209570,cat 209571,deer 209572,frog 209573,frog 209574,deer 209575,truck 209576,dog 209577,ship 209578,cat 209579,frog 209580,truck 209581,airplane 209582,dog 209583,cat 209584,truck 209585,deer 209586,cat 209587,deer 209588,dog 209589,truck 209590,horse 209591,cat 209592,ship 209593,truck 209594,frog 209595,automobile 209596,dog 209597,cat 209598,automobile 209599,truck 209600,bird 209601,truck 209602,ship 209603,automobile 209604,cat 209605,frog 209606,ship 209607,truck 209608,horse 209609,frog 209610,deer 209611,dog 209612,cat 209613,ship 209614,airplane 209615,cat 209616,dog 209617,dog 209618,horse 209619,automobile 209620,dog 209621,deer 209622,deer 209623,dog 209624,ship 209625,deer 209626,dog 209627,airplane 209628,cat 209629,ship 209630,automobile 209631,dog 209632,airplane 209633,horse 209634,airplane 209635,frog 209636,horse 209637,dog 209638,cat 209639,deer 209640,truck 209641,truck 209642,bird 209643,dog 209644,dog 209645,ship 209646,airplane 209647,truck 209648,horse 209649,truck 209650,bird 209651,horse 209652,airplane 209653,deer 209654,truck 209655,cat 209656,cat 209657,deer 209658,truck 209659,automobile 209660,deer 209661,ship 209662,ship 209663,dog 209664,frog 209665,frog 209666,horse 209667,ship 209668,cat 209669,airplane 209670,airplane 209671,horse 209672,cat 209673,deer 209674,airplane 209675,ship 209676,frog 209677,frog 209678,deer 209679,deer 209680,horse 209681,deer 209682,deer 209683,airplane 209684,dog 209685,truck 209686,truck 209687,airplane 209688,dog 209689,frog 209690,ship 209691,horse 209692,airplane 209693,automobile 209694,deer 209695,automobile 209696,cat 209697,frog 209698,airplane 209699,horse 209700,airplane 209701,cat 209702,ship 209703,airplane 209704,ship 209705,frog 209706,deer 209707,truck 209708,bird 209709,horse 209710,ship 209711,cat 209712,cat 209713,truck 209714,horse 209715,truck 209716,dog 209717,deer 209718,airplane 209719,horse 209720,cat 209721,bird 209722,horse 209723,bird 209724,dog 209725,dog 209726,frog 209727,dog 209728,ship 209729,cat 209730,airplane 209731,deer 209732,bird 209733,dog 209734,ship 209735,cat 209736,truck 209737,ship 209738,bird 209739,frog 209740,horse 209741,airplane 209742,frog 209743,ship 209744,ship 209745,cat 209746,dog 209747,ship 209748,dog 209749,truck 209750,truck 209751,cat 209752,deer 209753,horse 209754,deer 209755,cat 209756,dog 209757,horse 209758,cat 209759,cat 209760,automobile 209761,frog 209762,airplane 209763,truck 209764,cat 209765,horse 209766,bird 209767,truck 209768,automobile 209769,truck 209770,cat 209771,frog 209772,horse 209773,cat 209774,frog 209775,dog 209776,automobile 209777,cat 209778,deer 209779,truck 209780,frog 209781,cat 209782,cat 209783,horse 209784,deer 209785,truck 209786,dog 209787,frog 209788,truck 209789,airplane 209790,dog 209791,truck 209792,frog 209793,deer 209794,truck 209795,deer 209796,frog 209797,airplane 209798,ship 209799,horse 209800,truck 209801,ship 209802,automobile 209803,bird 209804,frog 209805,deer 209806,frog 209807,dog 209808,frog 209809,ship 209810,frog 209811,cat 209812,horse 209813,truck 209814,truck 209815,deer 209816,automobile 209817,bird 209818,cat 209819,bird 209820,automobile 209821,bird 209822,cat 209823,automobile 209824,deer 209825,ship 209826,ship 209827,bird 209828,cat 209829,frog 209830,deer 209831,cat 209832,airplane 209833,dog 209834,frog 209835,deer 209836,cat 209837,ship 209838,deer 209839,bird 209840,deer 209841,bird 209842,dog 209843,cat 209844,bird 209845,horse 209846,bird 209847,ship 209848,airplane 209849,dog 209850,ship 209851,truck 209852,bird 209853,cat 209854,frog 209855,frog 209856,deer 209857,frog 209858,horse 209859,truck 209860,horse 209861,bird 209862,ship 209863,horse 209864,deer 209865,frog 209866,automobile 209867,horse 209868,airplane 209869,ship 209870,bird 209871,frog 209872,truck 209873,dog 209874,dog 209875,deer 209876,horse 209877,truck 209878,horse 209879,truck 209880,horse 209881,horse 209882,horse 209883,ship 209884,cat 209885,cat 209886,bird 209887,horse 209888,cat 209889,bird 209890,cat 209891,truck 209892,deer 209893,ship 209894,dog 209895,ship 209896,horse 209897,horse 209898,deer 209899,automobile 209900,airplane 209901,horse 209902,deer 209903,cat 209904,ship 209905,bird 209906,truck 209907,airplane 209908,cat 209909,frog 209910,cat 209911,ship 209912,automobile 209913,cat 209914,horse 209915,airplane 209916,automobile 209917,ship 209918,frog 209919,horse 209920,dog 209921,cat 209922,frog 209923,bird 209924,bird 209925,cat 209926,automobile 209927,horse 209928,deer 209929,bird 209930,frog 209931,frog 209932,horse 209933,deer 209934,dog 209935,horse 209936,bird 209937,bird 209938,dog 209939,cat 209940,deer 209941,deer 209942,automobile 209943,horse 209944,airplane 209945,ship 209946,horse 209947,cat 209948,frog 209949,truck 209950,horse 209951,deer 209952,airplane 209953,automobile 209954,horse 209955,deer 209956,cat 209957,truck 209958,horse 209959,horse 209960,automobile 209961,cat 209962,cat 209963,horse 209964,frog 209965,frog 209966,bird 209967,cat 209968,frog 209969,deer 209970,automobile 209971,horse 209972,horse 209973,cat 209974,dog 209975,automobile 209976,horse 209977,automobile 209978,truck 209979,automobile 209980,ship 209981,dog 209982,cat 209983,frog 209984,deer 209985,dog 209986,bird 209987,deer 209988,deer 209989,deer 209990,frog 209991,horse 209992,dog 209993,ship 209994,automobile 209995,horse 209996,dog 209997,truck 209998,dog 209999,cat 210000,airplane 210001,bird 210002,bird 210003,bird 210004,automobile 210005,truck 210006,dog 210007,frog 210008,deer 210009,dog 210010,cat 210011,cat 210012,dog 210013,airplane 210014,deer 210015,dog 210016,deer 210017,dog 210018,automobile 210019,deer 210020,dog 210021,ship 210022,deer 210023,ship 210024,bird 210025,airplane 210026,ship 210027,deer 210028,frog 210029,horse 210030,airplane 210031,bird 210032,cat 210033,airplane 210034,dog 210035,airplane 210036,cat 210037,deer 210038,frog 210039,deer 210040,frog 210041,horse 210042,cat 210043,ship 210044,frog 210045,dog 210046,deer 210047,deer 210048,deer 210049,frog 210050,horse 210051,ship 210052,deer 210053,ship 210054,deer 210055,horse 210056,bird 210057,truck 210058,deer 210059,airplane 210060,deer 210061,bird 210062,truck 210063,deer 210064,deer 210065,cat 210066,dog 210067,deer 210068,deer 210069,bird 210070,horse 210071,cat 210072,automobile 210073,truck 210074,automobile 210075,deer 210076,automobile 210077,frog 210078,horse 210079,ship 210080,dog 210081,horse 210082,bird 210083,dog 210084,deer 210085,cat 210086,bird 210087,airplane 210088,bird 210089,deer 210090,airplane 210091,ship 210092,frog 210093,automobile 210094,deer 210095,frog 210096,deer 210097,truck 210098,deer 210099,dog 210100,airplane 210101,frog 210102,deer 210103,horse 210104,deer 210105,automobile 210106,cat 210107,truck 210108,airplane 210109,frog 210110,frog 210111,truck 210112,bird 210113,frog 210114,deer 210115,truck 210116,bird 210117,bird 210118,ship 210119,truck 210120,truck 210121,ship 210122,frog 210123,airplane 210124,ship 210125,cat 210126,frog 210127,automobile 210128,automobile 210129,airplane 210130,deer 210131,airplane 210132,horse 210133,truck 210134,truck 210135,horse 210136,deer 210137,horse 210138,airplane 210139,dog 210140,deer 210141,airplane 210142,ship 210143,dog 210144,horse 210145,truck 210146,bird 210147,horse 210148,airplane 210149,frog 210150,dog 210151,frog 210152,frog 210153,horse 210154,ship 210155,cat 210156,ship 210157,truck 210158,ship 210159,bird 210160,automobile 210161,bird 210162,deer 210163,deer 210164,dog 210165,ship 210166,ship 210167,frog 210168,airplane 210169,horse 210170,cat 210171,bird 210172,airplane 210173,dog 210174,cat 210175,frog 210176,ship 210177,deer 210178,ship 210179,horse 210180,cat 210181,automobile 210182,truck 210183,deer 210184,frog 210185,airplane 210186,cat 210187,truck 210188,truck 210189,ship 210190,horse 210191,bird 210192,airplane 210193,cat 210194,airplane 210195,truck 210196,deer 210197,cat 210198,deer 210199,frog 210200,truck 210201,cat 210202,truck 210203,frog 210204,cat 210205,horse 210206,truck 210207,cat 210208,cat 210209,airplane 210210,horse 210211,cat 210212,bird 210213,horse 210214,bird 210215,ship 210216,cat 210217,deer 210218,truck 210219,dog 210220,bird 210221,horse 210222,ship 210223,frog 210224,deer 210225,ship 210226,frog 210227,horse 210228,cat 210229,horse 210230,airplane 210231,airplane 210232,truck 210233,deer 210234,frog 210235,deer 210236,ship 210237,dog 210238,ship 210239,airplane 210240,horse 210241,deer 210242,bird 210243,frog 210244,airplane 210245,dog 210246,cat 210247,ship 210248,airplane 210249,truck 210250,airplane 210251,cat 210252,truck 210253,frog 210254,bird 210255,frog 210256,horse 210257,frog 210258,deer 210259,horse 210260,truck 210261,deer 210262,automobile 210263,dog 210264,bird 210265,airplane 210266,deer 210267,horse 210268,dog 210269,horse 210270,ship 210271,airplane 210272,airplane 210273,bird 210274,bird 210275,horse 210276,cat 210277,dog 210278,automobile 210279,horse 210280,cat 210281,bird 210282,dog 210283,airplane 210284,airplane 210285,ship 210286,bird 210287,bird 210288,truck 210289,deer 210290,truck 210291,airplane 210292,dog 210293,frog 210294,frog 210295,dog 210296,ship 210297,cat 210298,cat 210299,bird 210300,automobile 210301,frog 210302,cat 210303,automobile 210304,deer 210305,truck 210306,ship 210307,bird 210308,truck 210309,cat 210310,deer 210311,dog 210312,frog 210313,ship 210314,bird 210315,deer 210316,deer 210317,airplane 210318,airplane 210319,automobile 210320,dog 210321,truck 210322,frog 210323,ship 210324,deer 210325,deer 210326,airplane 210327,truck 210328,dog 210329,bird 210330,bird 210331,truck 210332,truck 210333,truck 210334,dog 210335,deer 210336,cat 210337,truck 210338,deer 210339,bird 210340,horse 210341,frog 210342,dog 210343,airplane 210344,cat 210345,truck 210346,bird 210347,bird 210348,cat 210349,horse 210350,automobile 210351,deer 210352,deer 210353,frog 210354,horse 210355,frog 210356,automobile 210357,dog 210358,automobile 210359,ship 210360,frog 210361,truck 210362,horse 210363,automobile 210364,automobile 210365,airplane 210366,cat 210367,cat 210368,dog 210369,ship 210370,dog 210371,ship 210372,bird 210373,truck 210374,truck 210375,deer 210376,bird 210377,deer 210378,dog 210379,cat 210380,deer 210381,ship 210382,dog 210383,automobile 210384,horse 210385,bird 210386,horse 210387,frog 210388,bird 210389,dog 210390,airplane 210391,bird 210392,dog 210393,deer 210394,dog 210395,deer 210396,airplane 210397,deer 210398,automobile 210399,truck 210400,airplane 210401,ship 210402,airplane 210403,truck 210404,deer 210405,bird 210406,frog 210407,horse 210408,ship 210409,cat 210410,truck 210411,automobile 210412,ship 210413,ship 210414,truck 210415,automobile 210416,frog 210417,deer 210418,frog 210419,horse 210420,ship 210421,dog 210422,truck 210423,airplane 210424,bird 210425,dog 210426,horse 210427,frog 210428,horse 210429,dog 210430,bird 210431,bird 210432,airplane 210433,truck 210434,dog 210435,truck 210436,airplane 210437,horse 210438,cat 210439,truck 210440,airplane 210441,cat 210442,cat 210443,dog 210444,deer 210445,dog 210446,dog 210447,cat 210448,truck 210449,bird 210450,bird 210451,deer 210452,dog 210453,airplane 210454,deer 210455,airplane 210456,automobile 210457,dog 210458,bird 210459,automobile 210460,truck 210461,ship 210462,automobile 210463,deer 210464,horse 210465,automobile 210466,dog 210467,truck 210468,dog 210469,airplane 210470,deer 210471,truck 210472,frog 210473,airplane 210474,deer 210475,truck 210476,horse 210477,frog 210478,dog 210479,cat 210480,bird 210481,bird 210482,automobile 210483,frog 210484,cat 210485,truck 210486,truck 210487,horse 210488,ship 210489,automobile 210490,airplane 210491,truck 210492,horse 210493,deer 210494,deer 210495,deer 210496,horse 210497,deer 210498,deer 210499,bird 210500,frog 210501,cat 210502,deer 210503,frog 210504,frog 210505,automobile 210506,horse 210507,airplane 210508,ship 210509,cat 210510,horse 210511,automobile 210512,cat 210513,cat 210514,horse 210515,deer 210516,frog 210517,airplane 210518,bird 210519,horse 210520,deer 210521,truck 210522,cat 210523,ship 210524,cat 210525,truck 210526,cat 210527,dog 210528,ship 210529,automobile 210530,airplane 210531,truck 210532,bird 210533,dog 210534,deer 210535,frog 210536,horse 210537,airplane 210538,frog 210539,truck 210540,truck 210541,truck 210542,cat 210543,airplane 210544,airplane 210545,truck 210546,cat 210547,airplane 210548,truck 210549,truck 210550,bird 210551,bird 210552,dog 210553,horse 210554,horse 210555,truck 210556,ship 210557,cat 210558,deer 210559,bird 210560,cat 210561,truck 210562,ship 210563,ship 210564,cat 210565,horse 210566,dog 210567,ship 210568,dog 210569,deer 210570,frog 210571,cat 210572,truck 210573,airplane 210574,deer 210575,deer 210576,airplane 210577,bird 210578,airplane 210579,dog 210580,bird 210581,airplane 210582,cat 210583,automobile 210584,horse 210585,bird 210586,frog 210587,truck 210588,frog 210589,deer 210590,bird 210591,truck 210592,frog 210593,truck 210594,automobile 210595,dog 210596,cat 210597,dog 210598,cat 210599,horse 210600,airplane 210601,automobile 210602,bird 210603,cat 210604,frog 210605,deer 210606,cat 210607,horse 210608,ship 210609,frog 210610,deer 210611,horse 210612,truck 210613,bird 210614,deer 210615,ship 210616,frog 210617,horse 210618,deer 210619,bird 210620,ship 210621,deer 210622,ship 210623,automobile 210624,ship 210625,deer 210626,truck 210627,cat 210628,deer 210629,frog 210630,deer 210631,dog 210632,ship 210633,frog 210634,ship 210635,frog 210636,airplane 210637,cat 210638,truck 210639,horse 210640,frog 210641,dog 210642,horse 210643,cat 210644,frog 210645,truck 210646,ship 210647,ship 210648,ship 210649,cat 210650,deer 210651,cat 210652,truck 210653,ship 210654,truck 210655,bird 210656,truck 210657,dog 210658,frog 210659,dog 210660,ship 210661,truck 210662,bird 210663,airplane 210664,dog 210665,truck 210666,dog 210667,bird 210668,dog 210669,bird 210670,deer 210671,truck 210672,horse 210673,frog 210674,automobile 210675,frog 210676,cat 210677,dog 210678,frog 210679,ship 210680,frog 210681,deer 210682,ship 210683,truck 210684,automobile 210685,dog 210686,bird 210687,airplane 210688,dog 210689,deer 210690,dog 210691,cat 210692,frog 210693,horse 210694,deer 210695,airplane 210696,dog 210697,deer 210698,ship 210699,airplane 210700,frog 210701,cat 210702,dog 210703,automobile 210704,cat 210705,dog 210706,deer 210707,ship 210708,cat 210709,frog 210710,dog 210711,automobile 210712,cat 210713,frog 210714,cat 210715,frog 210716,automobile 210717,horse 210718,automobile 210719,ship 210720,airplane 210721,deer 210722,bird 210723,cat 210724,frog 210725,bird 210726,cat 210727,horse 210728,ship 210729,cat 210730,dog 210731,cat 210732,frog 210733,automobile 210734,automobile 210735,deer 210736,truck 210737,horse 210738,deer 210739,frog 210740,horse 210741,frog 210742,airplane 210743,frog 210744,truck 210745,ship 210746,horse 210747,truck 210748,frog 210749,airplane 210750,horse 210751,cat 210752,deer 210753,dog 210754,airplane 210755,ship 210756,horse 210757,dog 210758,truck 210759,automobile 210760,bird 210761,bird 210762,airplane 210763,cat 210764,horse 210765,cat 210766,horse 210767,horse 210768,horse 210769,deer 210770,airplane 210771,horse 210772,bird 210773,deer 210774,truck 210775,airplane 210776,automobile 210777,ship 210778,cat 210779,frog 210780,dog 210781,dog 210782,deer 210783,cat 210784,cat 210785,ship 210786,cat 210787,deer 210788,truck 210789,cat 210790,automobile 210791,airplane 210792,truck 210793,frog 210794,cat 210795,ship 210796,frog 210797,airplane 210798,deer 210799,truck 210800,dog 210801,horse 210802,frog 210803,cat 210804,automobile 210805,cat 210806,frog 210807,cat 210808,ship 210809,horse 210810,truck 210811,frog 210812,deer 210813,cat 210814,bird 210815,cat 210816,bird 210817,frog 210818,frog 210819,cat 210820,deer 210821,horse 210822,deer 210823,airplane 210824,cat 210825,truck 210826,ship 210827,bird 210828,frog 210829,bird 210830,horse 210831,dog 210832,automobile 210833,cat 210834,cat 210835,automobile 210836,truck 210837,cat 210838,deer 210839,automobile 210840,truck 210841,airplane 210842,deer 210843,airplane 210844,cat 210845,frog 210846,automobile 210847,horse 210848,bird 210849,cat 210850,bird 210851,cat 210852,cat 210853,deer 210854,automobile 210855,airplane 210856,ship 210857,cat 210858,horse 210859,dog 210860,truck 210861,frog 210862,deer 210863,frog 210864,automobile 210865,horse 210866,deer 210867,truck 210868,truck 210869,cat 210870,truck 210871,dog 210872,automobile 210873,airplane 210874,frog 210875,horse 210876,frog 210877,dog 210878,horse 210879,truck 210880,bird 210881,cat 210882,deer 210883,airplane 210884,dog 210885,deer 210886,airplane 210887,ship 210888,cat 210889,truck 210890,ship 210891,horse 210892,deer 210893,dog 210894,horse 210895,cat 210896,truck 210897,deer 210898,cat 210899,cat 210900,dog 210901,bird 210902,airplane 210903,frog 210904,truck 210905,horse 210906,airplane 210907,frog 210908,airplane 210909,deer 210910,truck 210911,bird 210912,frog 210913,frog 210914,frog 210915,horse 210916,dog 210917,ship 210918,truck 210919,horse 210920,truck 210921,frog 210922,cat 210923,ship 210924,automobile 210925,dog 210926,truck 210927,automobile 210928,ship 210929,dog 210930,truck 210931,automobile 210932,cat 210933,bird 210934,cat 210935,deer 210936,cat 210937,horse 210938,deer 210939,truck 210940,frog 210941,automobile 210942,deer 210943,frog 210944,dog 210945,frog 210946,horse 210947,dog 210948,bird 210949,automobile 210950,automobile 210951,truck 210952,truck 210953,deer 210954,deer 210955,horse 210956,ship 210957,horse 210958,frog 210959,ship 210960,automobile 210961,deer 210962,airplane 210963,ship 210964,airplane 210965,cat 210966,frog 210967,frog 210968,truck 210969,ship 210970,cat 210971,airplane 210972,horse 210973,horse 210974,horse 210975,bird 210976,frog 210977,cat 210978,airplane 210979,frog 210980,ship 210981,automobile 210982,airplane 210983,dog 210984,frog 210985,dog 210986,automobile 210987,frog 210988,truck 210989,automobile 210990,truck 210991,ship 210992,cat 210993,bird 210994,cat 210995,automobile 210996,frog 210997,bird 210998,deer 210999,automobile 211000,horse 211001,frog 211002,truck 211003,airplane 211004,dog 211005,deer 211006,cat 211007,cat 211008,bird 211009,cat 211010,automobile 211011,ship 211012,horse 211013,cat 211014,dog 211015,frog 211016,bird 211017,bird 211018,frog 211019,truck 211020,deer 211021,deer 211022,ship 211023,airplane 211024,frog 211025,dog 211026,truck 211027,horse 211028,deer 211029,truck 211030,cat 211031,horse 211032,truck 211033,deer 211034,automobile 211035,automobile 211036,ship 211037,horse 211038,frog 211039,deer 211040,truck 211041,deer 211042,cat 211043,cat 211044,deer 211045,cat 211046,horse 211047,frog 211048,bird 211049,bird 211050,truck 211051,dog 211052,airplane 211053,bird 211054,deer 211055,dog 211056,ship 211057,truck 211058,horse 211059,dog 211060,ship 211061,horse 211062,airplane 211063,truck 211064,frog 211065,deer 211066,bird 211067,bird 211068,frog 211069,ship 211070,ship 211071,horse 211072,deer 211073,dog 211074,bird 211075,cat 211076,deer 211077,dog 211078,cat 211079,frog 211080,cat 211081,cat 211082,horse 211083,ship 211084,deer 211085,airplane 211086,dog 211087,deer 211088,frog 211089,airplane 211090,deer 211091,deer 211092,cat 211093,cat 211094,truck 211095,dog 211096,dog 211097,bird 211098,bird 211099,frog 211100,ship 211101,ship 211102,truck 211103,cat 211104,bird 211105,frog 211106,deer 211107,bird 211108,cat 211109,cat 211110,horse 211111,cat 211112,frog 211113,dog 211114,cat 211115,airplane 211116,cat 211117,cat 211118,horse 211119,frog 211120,dog 211121,airplane 211122,frog 211123,horse 211124,horse 211125,horse 211126,cat 211127,dog 211128,dog 211129,frog 211130,frog 211131,horse 211132,airplane 211133,horse 211134,frog 211135,deer 211136,airplane 211137,frog 211138,bird 211139,horse 211140,deer 211141,frog 211142,bird 211143,truck 211144,frog 211145,dog 211146,ship 211147,dog 211148,frog 211149,deer 211150,deer 211151,horse 211152,horse 211153,horse 211154,truck 211155,horse 211156,horse 211157,cat 211158,automobile 211159,truck 211160,truck 211161,airplane 211162,truck 211163,ship 211164,deer 211165,airplane 211166,truck 211167,dog 211168,ship 211169,dog 211170,airplane 211171,automobile 211172,airplane 211173,bird 211174,truck 211175,cat 211176,bird 211177,deer 211178,truck 211179,cat 211180,automobile 211181,airplane 211182,automobile 211183,frog 211184,frog 211185,horse 211186,ship 211187,dog 211188,cat 211189,ship 211190,deer 211191,truck 211192,cat 211193,cat 211194,cat 211195,bird 211196,horse 211197,deer 211198,frog 211199,horse 211200,cat 211201,dog 211202,frog 211203,frog 211204,bird 211205,frog 211206,dog 211207,cat 211208,frog 211209,frog 211210,deer 211211,frog 211212,bird 211213,horse 211214,horse 211215,deer 211216,frog 211217,deer 211218,truck 211219,horse 211220,dog 211221,horse 211222,cat 211223,horse 211224,dog 211225,automobile 211226,truck 211227,truck 211228,horse 211229,airplane 211230,dog 211231,bird 211232,deer 211233,dog 211234,deer 211235,bird 211236,bird 211237,horse 211238,horse 211239,cat 211240,airplane 211241,automobile 211242,automobile 211243,airplane 211244,frog 211245,deer 211246,airplane 211247,ship 211248,truck 211249,airplane 211250,truck 211251,frog 211252,bird 211253,dog 211254,deer 211255,truck 211256,horse 211257,horse 211258,airplane 211259,bird 211260,cat 211261,ship 211262,truck 211263,cat 211264,truck 211265,automobile 211266,bird 211267,cat 211268,truck 211269,bird 211270,deer 211271,dog 211272,airplane 211273,ship 211274,frog 211275,truck 211276,deer 211277,bird 211278,frog 211279,horse 211280,airplane 211281,bird 211282,airplane 211283,deer 211284,airplane 211285,ship 211286,automobile 211287,horse 211288,horse 211289,cat 211290,deer 211291,truck 211292,frog 211293,ship 211294,frog 211295,deer 211296,deer 211297,automobile 211298,deer 211299,airplane 211300,dog 211301,horse 211302,airplane 211303,deer 211304,truck 211305,automobile 211306,horse 211307,cat 211308,deer 211309,ship 211310,truck 211311,frog 211312,ship 211313,ship 211314,truck 211315,frog 211316,ship 211317,automobile 211318,ship 211319,airplane 211320,horse 211321,dog 211322,horse 211323,airplane 211324,cat 211325,airplane 211326,frog 211327,airplane 211328,ship 211329,airplane 211330,deer 211331,horse 211332,horse 211333,truck 211334,frog 211335,ship 211336,bird 211337,airplane 211338,dog 211339,frog 211340,dog 211341,cat 211342,truck 211343,frog 211344,deer 211345,truck 211346,frog 211347,truck 211348,horse 211349,cat 211350,frog 211351,cat 211352,airplane 211353,deer 211354,frog 211355,dog 211356,bird 211357,frog 211358,airplane 211359,deer 211360,ship 211361,deer 211362,airplane 211363,deer 211364,cat 211365,frog 211366,truck 211367,deer 211368,airplane 211369,automobile 211370,airplane 211371,truck 211372,horse 211373,deer 211374,bird 211375,frog 211376,truck 211377,deer 211378,airplane 211379,cat 211380,automobile 211381,deer 211382,frog 211383,automobile 211384,deer 211385,cat 211386,airplane 211387,horse 211388,automobile 211389,deer 211390,horse 211391,ship 211392,truck 211393,airplane 211394,deer 211395,ship 211396,cat 211397,cat 211398,ship 211399,cat 211400,cat 211401,truck 211402,cat 211403,frog 211404,horse 211405,frog 211406,truck 211407,automobile 211408,airplane 211409,deer 211410,dog 211411,automobile 211412,deer 211413,truck 211414,horse 211415,airplane 211416,frog 211417,ship 211418,cat 211419,dog 211420,ship 211421,frog 211422,cat 211423,automobile 211424,frog 211425,horse 211426,cat 211427,airplane 211428,deer 211429,horse 211430,horse 211431,automobile 211432,deer 211433,deer 211434,cat 211435,dog 211436,automobile 211437,frog 211438,ship 211439,deer 211440,dog 211441,ship 211442,cat 211443,bird 211444,automobile 211445,truck 211446,frog 211447,dog 211448,truck 211449,ship 211450,airplane 211451,deer 211452,frog 211453,truck 211454,frog 211455,horse 211456,horse 211457,dog 211458,horse 211459,dog 211460,bird 211461,deer 211462,cat 211463,dog 211464,truck 211465,automobile 211466,truck 211467,bird 211468,horse 211469,truck 211470,bird 211471,deer 211472,deer 211473,horse 211474,ship 211475,dog 211476,deer 211477,truck 211478,horse 211479,airplane 211480,frog 211481,deer 211482,dog 211483,truck 211484,airplane 211485,frog 211486,frog 211487,automobile 211488,bird 211489,dog 211490,airplane 211491,cat 211492,deer 211493,airplane 211494,automobile 211495,ship 211496,dog 211497,horse 211498,cat 211499,frog 211500,horse 211501,automobile 211502,deer 211503,airplane 211504,deer 211505,deer 211506,automobile 211507,airplane 211508,cat 211509,automobile 211510,truck 211511,cat 211512,deer 211513,deer 211514,automobile 211515,deer 211516,horse 211517,frog 211518,automobile 211519,cat 211520,bird 211521,truck 211522,frog 211523,deer 211524,horse 211525,airplane 211526,automobile 211527,airplane 211528,deer 211529,cat 211530,ship 211531,deer 211532,cat 211533,dog 211534,airplane 211535,ship 211536,cat 211537,cat 211538,bird 211539,horse 211540,automobile 211541,cat 211542,cat 211543,automobile 211544,cat 211545,deer 211546,automobile 211547,cat 211548,deer 211549,airplane 211550,automobile 211551,deer 211552,dog 211553,ship 211554,ship 211555,horse 211556,truck 211557,ship 211558,cat 211559,airplane 211560,airplane 211561,dog 211562,deer 211563,dog 211564,frog 211565,truck 211566,dog 211567,horse 211568,cat 211569,truck 211570,automobile 211571,deer 211572,bird 211573,truck 211574,deer 211575,airplane 211576,cat 211577,deer 211578,deer 211579,bird 211580,truck 211581,horse 211582,truck 211583,airplane 211584,cat 211585,automobile 211586,deer 211587,deer 211588,cat 211589,ship 211590,bird 211591,dog 211592,deer 211593,cat 211594,truck 211595,ship 211596,ship 211597,dog 211598,deer 211599,horse 211600,horse 211601,ship 211602,frog 211603,deer 211604,truck 211605,automobile 211606,truck 211607,bird 211608,cat 211609,horse 211610,frog 211611,deer 211612,deer 211613,truck 211614,truck 211615,horse 211616,ship 211617,bird 211618,automobile 211619,deer 211620,dog 211621,bird 211622,deer 211623,frog 211624,dog 211625,deer 211626,ship 211627,cat 211628,deer 211629,deer 211630,deer 211631,deer 211632,bird 211633,horse 211634,deer 211635,bird 211636,deer 211637,bird 211638,automobile 211639,automobile 211640,automobile 211641,bird 211642,horse 211643,deer 211644,bird 211645,bird 211646,cat 211647,ship 211648,frog 211649,automobile 211650,horse 211651,frog 211652,deer 211653,horse 211654,airplane 211655,horse 211656,horse 211657,horse 211658,horse 211659,deer 211660,truck 211661,cat 211662,automobile 211663,truck 211664,truck 211665,dog 211666,deer 211667,bird 211668,cat 211669,airplane 211670,dog 211671,bird 211672,frog 211673,deer 211674,truck 211675,dog 211676,airplane 211677,frog 211678,ship 211679,horse 211680,airplane 211681,dog 211682,automobile 211683,cat 211684,horse 211685,dog 211686,airplane 211687,truck 211688,deer 211689,airplane 211690,deer 211691,dog 211692,airplane 211693,airplane 211694,truck 211695,ship 211696,dog 211697,deer 211698,truck 211699,dog 211700,horse 211701,dog 211702,cat 211703,cat 211704,frog 211705,dog 211706,truck 211707,cat 211708,bird 211709,dog 211710,horse 211711,ship 211712,bird 211713,dog 211714,automobile 211715,ship 211716,airplane 211717,automobile 211718,cat 211719,dog 211720,truck 211721,ship 211722,bird 211723,airplane 211724,dog 211725,dog 211726,frog 211727,frog 211728,bird 211729,frog 211730,truck 211731,deer 211732,cat 211733,frog 211734,cat 211735,dog 211736,deer 211737,dog 211738,automobile 211739,cat 211740,ship 211741,truck 211742,frog 211743,cat 211744,cat 211745,bird 211746,airplane 211747,horse 211748,cat 211749,bird 211750,frog 211751,cat 211752,dog 211753,frog 211754,deer 211755,cat 211756,frog 211757,automobile 211758,deer 211759,truck 211760,frog 211761,cat 211762,deer 211763,dog 211764,deer 211765,horse 211766,ship 211767,horse 211768,deer 211769,bird 211770,truck 211771,cat 211772,deer 211773,deer 211774,bird 211775,horse 211776,cat 211777,deer 211778,ship 211779,airplane 211780,cat 211781,ship 211782,horse 211783,truck 211784,deer 211785,horse 211786,frog 211787,ship 211788,horse 211789,airplane 211790,frog 211791,cat 211792,ship 211793,dog 211794,deer 211795,cat 211796,cat 211797,cat 211798,automobile 211799,frog 211800,ship 211801,airplane 211802,cat 211803,dog 211804,cat 211805,truck 211806,cat 211807,automobile 211808,automobile 211809,ship 211810,frog 211811,dog 211812,airplane 211813,ship 211814,cat 211815,deer 211816,automobile 211817,truck 211818,automobile 211819,frog 211820,cat 211821,dog 211822,dog 211823,horse 211824,deer 211825,truck 211826,dog 211827,automobile 211828,ship 211829,frog 211830,cat 211831,dog 211832,automobile 211833,truck 211834,truck 211835,horse 211836,frog 211837,frog 211838,automobile 211839,bird 211840,cat 211841,deer 211842,bird 211843,ship 211844,dog 211845,deer 211846,deer 211847,deer 211848,deer 211849,automobile 211850,ship 211851,automobile 211852,deer 211853,bird 211854,deer 211855,truck 211856,airplane 211857,horse 211858,cat 211859,cat 211860,horse 211861,truck 211862,horse 211863,horse 211864,dog 211865,ship 211866,truck 211867,ship 211868,airplane 211869,cat 211870,frog 211871,automobile 211872,truck 211873,horse 211874,airplane 211875,horse 211876,truck 211877,deer 211878,airplane 211879,deer 211880,deer 211881,truck 211882,deer 211883,airplane 211884,truck 211885,deer 211886,bird 211887,cat 211888,deer 211889,bird 211890,frog 211891,automobile 211892,truck 211893,frog 211894,truck 211895,deer 211896,deer 211897,dog 211898,dog 211899,frog 211900,airplane 211901,airplane 211902,airplane 211903,frog 211904,deer 211905,deer 211906,deer 211907,airplane 211908,cat 211909,truck 211910,deer 211911,cat 211912,automobile 211913,automobile 211914,cat 211915,truck 211916,frog 211917,dog 211918,dog 211919,automobile 211920,airplane 211921,frog 211922,dog 211923,airplane 211924,airplane 211925,frog 211926,horse 211927,dog 211928,airplane 211929,cat 211930,automobile 211931,automobile 211932,deer 211933,bird 211934,bird 211935,deer 211936,deer 211937,ship 211938,ship 211939,cat 211940,horse 211941,deer 211942,cat 211943,deer 211944,cat 211945,deer 211946,deer 211947,horse 211948,deer 211949,bird 211950,truck 211951,bird 211952,dog 211953,horse 211954,truck 211955,horse 211956,deer 211957,automobile 211958,ship 211959,deer 211960,dog 211961,automobile 211962,truck 211963,deer 211964,dog 211965,ship 211966,ship 211967,deer 211968,deer 211969,dog 211970,cat 211971,dog 211972,airplane 211973,frog 211974,bird 211975,bird 211976,ship 211977,ship 211978,deer 211979,automobile 211980,frog 211981,deer 211982,automobile 211983,cat 211984,truck 211985,frog 211986,ship 211987,frog 211988,deer 211989,truck 211990,airplane 211991,dog 211992,truck 211993,cat 211994,bird 211995,cat 211996,cat 211997,deer 211998,truck 211999,deer 212000,truck 212001,frog 212002,airplane 212003,dog 212004,deer 212005,frog 212006,cat 212007,dog 212008,bird 212009,ship 212010,automobile 212011,airplane 212012,cat 212013,frog 212014,deer 212015,airplane 212016,deer 212017,cat 212018,ship 212019,bird 212020,dog 212021,frog 212022,dog 212023,bird 212024,airplane 212025,bird 212026,horse 212027,horse 212028,cat 212029,airplane 212030,bird 212031,bird 212032,horse 212033,bird 212034,cat 212035,truck 212036,frog 212037,dog 212038,bird 212039,truck 212040,bird 212041,bird 212042,horse 212043,cat 212044,cat 212045,bird 212046,bird 212047,automobile 212048,truck 212049,airplane 212050,horse 212051,dog 212052,automobile 212053,cat 212054,ship 212055,horse 212056,deer 212057,frog 212058,automobile 212059,dog 212060,bird 212061,deer 212062,cat 212063,dog 212064,truck 212065,cat 212066,cat 212067,dog 212068,deer 212069,cat 212070,frog 212071,truck 212072,cat 212073,truck 212074,dog 212075,automobile 212076,cat 212077,airplane 212078,dog 212079,automobile 212080,deer 212081,airplane 212082,cat 212083,ship 212084,truck 212085,dog 212086,deer 212087,ship 212088,horse 212089,horse 212090,dog 212091,frog 212092,horse 212093,deer 212094,dog 212095,frog 212096,airplane 212097,airplane 212098,dog 212099,cat 212100,automobile 212101,truck 212102,frog 212103,dog 212104,deer 212105,deer 212106,ship 212107,bird 212108,frog 212109,cat 212110,horse 212111,dog 212112,ship 212113,ship 212114,airplane 212115,deer 212116,automobile 212117,horse 212118,bird 212119,ship 212120,airplane 212121,bird 212122,horse 212123,ship 212124,cat 212125,deer 212126,bird 212127,dog 212128,cat 212129,airplane 212130,airplane 212131,cat 212132,truck 212133,horse 212134,cat 212135,horse 212136,dog 212137,airplane 212138,truck 212139,cat 212140,dog 212141,dog 212142,bird 212143,frog 212144,automobile 212145,cat 212146,cat 212147,deer 212148,automobile 212149,horse 212150,ship 212151,dog 212152,cat 212153,frog 212154,horse 212155,dog 212156,ship 212157,airplane 212158,airplane 212159,bird 212160,airplane 212161,horse 212162,dog 212163,horse 212164,ship 212165,truck 212166,cat 212167,horse 212168,airplane 212169,truck 212170,truck 212171,ship 212172,bird 212173,airplane 212174,dog 212175,deer 212176,airplane 212177,frog 212178,cat 212179,dog 212180,horse 212181,deer 212182,cat 212183,automobile 212184,truck 212185,ship 212186,dog 212187,airplane 212188,airplane 212189,truck 212190,cat 212191,deer 212192,deer 212193,deer 212194,cat 212195,cat 212196,truck 212197,automobile 212198,automobile 212199,automobile 212200,truck 212201,deer 212202,dog 212203,ship 212204,deer 212205,cat 212206,bird 212207,bird 212208,frog 212209,deer 212210,deer 212211,truck 212212,frog 212213,cat 212214,ship 212215,airplane 212216,airplane 212217,airplane 212218,airplane 212219,deer 212220,ship 212221,ship 212222,automobile 212223,airplane 212224,dog 212225,truck 212226,bird 212227,cat 212228,bird 212229,dog 212230,ship 212231,cat 212232,cat 212233,ship 212234,horse 212235,deer 212236,dog 212237,cat 212238,cat 212239,deer 212240,frog 212241,bird 212242,deer 212243,truck 212244,frog 212245,ship 212246,dog 212247,horse 212248,frog 212249,ship 212250,frog 212251,automobile 212252,deer 212253,automobile 212254,automobile 212255,deer 212256,ship 212257,horse 212258,ship 212259,airplane 212260,dog 212261,airplane 212262,cat 212263,frog 212264,truck 212265,airplane 212266,dog 212267,cat 212268,truck 212269,airplane 212270,truck 212271,automobile 212272,airplane 212273,cat 212274,cat 212275,automobile 212276,horse 212277,bird 212278,frog 212279,deer 212280,cat 212281,cat 212282,ship 212283,ship 212284,truck 212285,cat 212286,frog 212287,horse 212288,cat 212289,bird 212290,cat 212291,cat 212292,ship 212293,dog 212294,truck 212295,horse 212296,deer 212297,bird 212298,cat 212299,ship 212300,frog 212301,horse 212302,horse 212303,truck 212304,airplane 212305,airplane 212306,ship 212307,cat 212308,cat 212309,dog 212310,deer 212311,ship 212312,deer 212313,deer 212314,dog 212315,frog 212316,frog 212317,frog 212318,deer 212319,bird 212320,frog 212321,cat 212322,automobile 212323,ship 212324,horse 212325,airplane 212326,ship 212327,ship 212328,automobile 212329,cat 212330,deer 212331,bird 212332,dog 212333,ship 212334,truck 212335,truck 212336,cat 212337,automobile 212338,horse 212339,dog 212340,ship 212341,ship 212342,horse 212343,deer 212344,frog 212345,bird 212346,bird 212347,dog 212348,horse 212349,ship 212350,ship 212351,airplane 212352,bird 212353,ship 212354,truck 212355,ship 212356,ship 212357,horse 212358,truck 212359,truck 212360,horse 212361,dog 212362,frog 212363,frog 212364,truck 212365,airplane 212366,truck 212367,truck 212368,cat 212369,ship 212370,deer 212371,horse 212372,airplane 212373,cat 212374,automobile 212375,dog 212376,frog 212377,horse 212378,ship 212379,cat 212380,automobile 212381,frog 212382,frog 212383,cat 212384,truck 212385,horse 212386,frog 212387,bird 212388,automobile 212389,cat 212390,cat 212391,bird 212392,truck 212393,frog 212394,ship 212395,deer 212396,cat 212397,frog 212398,bird 212399,truck 212400,cat 212401,frog 212402,truck 212403,automobile 212404,ship 212405,bird 212406,frog 212407,deer 212408,deer 212409,ship 212410,deer 212411,dog 212412,ship 212413,cat 212414,dog 212415,cat 212416,deer 212417,dog 212418,deer 212419,bird 212420,frog 212421,airplane 212422,ship 212423,bird 212424,ship 212425,bird 212426,bird 212427,truck 212428,frog 212429,airplane 212430,bird 212431,dog 212432,truck 212433,automobile 212434,deer 212435,deer 212436,deer 212437,deer 212438,cat 212439,deer 212440,deer 212441,frog 212442,horse 212443,dog 212444,truck 212445,cat 212446,airplane 212447,cat 212448,dog 212449,cat 212450,cat 212451,dog 212452,ship 212453,horse 212454,deer 212455,automobile 212456,frog 212457,frog 212458,bird 212459,cat 212460,horse 212461,truck 212462,frog 212463,cat 212464,truck 212465,airplane 212466,dog 212467,bird 212468,horse 212469,deer 212470,truck 212471,cat 212472,dog 212473,ship 212474,cat 212475,airplane 212476,cat 212477,truck 212478,truck 212479,dog 212480,automobile 212481,horse 212482,deer 212483,dog 212484,frog 212485,ship 212486,horse 212487,bird 212488,bird 212489,frog 212490,dog 212491,truck 212492,frog 212493,frog 212494,horse 212495,deer 212496,cat 212497,bird 212498,frog 212499,truck 212500,frog 212501,dog 212502,deer 212503,deer 212504,airplane 212505,horse 212506,deer 212507,truck 212508,dog 212509,horse 212510,deer 212511,ship 212512,frog 212513,frog 212514,frog 212515,ship 212516,dog 212517,ship 212518,truck 212519,deer 212520,truck 212521,horse 212522,ship 212523,dog 212524,automobile 212525,automobile 212526,truck 212527,deer 212528,deer 212529,truck 212530,truck 212531,ship 212532,truck 212533,cat 212534,bird 212535,truck 212536,ship 212537,truck 212538,truck 212539,cat 212540,frog 212541,cat 212542,horse 212543,airplane 212544,deer 212545,frog 212546,frog 212547,deer 212548,cat 212549,frog 212550,automobile 212551,deer 212552,cat 212553,airplane 212554,automobile 212555,cat 212556,cat 212557,horse 212558,ship 212559,truck 212560,bird 212561,horse 212562,dog 212563,frog 212564,deer 212565,cat 212566,bird 212567,bird 212568,bird 212569,dog 212570,airplane 212571,frog 212572,cat 212573,frog 212574,truck 212575,bird 212576,truck 212577,frog 212578,frog 212579,deer 212580,airplane 212581,frog 212582,horse 212583,bird 212584,truck 212585,frog 212586,frog 212587,automobile 212588,deer 212589,cat 212590,bird 212591,automobile 212592,cat 212593,ship 212594,horse 212595,deer 212596,deer 212597,truck 212598,truck 212599,cat 212600,dog 212601,horse 212602,cat 212603,deer 212604,truck 212605,bird 212606,deer 212607,bird 212608,frog 212609,dog 212610,truck 212611,airplane 212612,deer 212613,automobile 212614,truck 212615,cat 212616,ship 212617,cat 212618,airplane 212619,airplane 212620,deer 212621,truck 212622,frog 212623,frog 212624,deer 212625,dog 212626,horse 212627,truck 212628,ship 212629,ship 212630,bird 212631,deer 212632,frog 212633,frog 212634,horse 212635,airplane 212636,automobile 212637,ship 212638,deer 212639,ship 212640,truck 212641,automobile 212642,bird 212643,dog 212644,cat 212645,ship 212646,cat 212647,horse 212648,automobile 212649,airplane 212650,ship 212651,bird 212652,truck 212653,deer 212654,frog 212655,automobile 212656,truck 212657,deer 212658,airplane 212659,frog 212660,truck 212661,deer 212662,ship 212663,deer 212664,horse 212665,ship 212666,frog 212667,truck 212668,bird 212669,truck 212670,deer 212671,cat 212672,horse 212673,cat 212674,deer 212675,ship 212676,bird 212677,deer 212678,airplane 212679,dog 212680,frog 212681,automobile 212682,horse 212683,automobile 212684,automobile 212685,cat 212686,bird 212687,truck 212688,automobile 212689,ship 212690,dog 212691,deer 212692,dog 212693,cat 212694,airplane 212695,automobile 212696,airplane 212697,bird 212698,horse 212699,bird 212700,bird 212701,airplane 212702,deer 212703,horse 212704,dog 212705,ship 212706,truck 212707,truck 212708,frog 212709,bird 212710,deer 212711,cat 212712,cat 212713,deer 212714,cat 212715,airplane 212716,cat 212717,dog 212718,frog 212719,automobile 212720,airplane 212721,dog 212722,frog 212723,automobile 212724,dog 212725,airplane 212726,deer 212727,automobile 212728,airplane 212729,airplane 212730,ship 212731,airplane 212732,dog 212733,dog 212734,horse 212735,cat 212736,cat 212737,deer 212738,dog 212739,cat 212740,cat 212741,horse 212742,horse 212743,frog 212744,bird 212745,deer 212746,dog 212747,frog 212748,deer 212749,automobile 212750,ship 212751,dog 212752,frog 212753,cat 212754,cat 212755,dog 212756,truck 212757,horse 212758,dog 212759,frog 212760,ship 212761,dog 212762,deer 212763,deer 212764,bird 212765,deer 212766,deer 212767,truck 212768,ship 212769,frog 212770,frog 212771,deer 212772,dog 212773,ship 212774,bird 212775,dog 212776,truck 212777,deer 212778,horse 212779,truck 212780,bird 212781,bird 212782,cat 212783,airplane 212784,cat 212785,deer 212786,deer 212787,dog 212788,horse 212789,dog 212790,horse 212791,dog 212792,dog 212793,dog 212794,dog 212795,dog 212796,deer 212797,cat 212798,horse 212799,bird 212800,dog 212801,bird 212802,bird 212803,deer 212804,bird 212805,horse 212806,deer 212807,bird 212808,ship 212809,cat 212810,automobile 212811,automobile 212812,frog 212813,deer 212814,deer 212815,cat 212816,automobile 212817,ship 212818,deer 212819,cat 212820,ship 212821,frog 212822,frog 212823,deer 212824,dog 212825,cat 212826,automobile 212827,cat 212828,airplane 212829,bird 212830,cat 212831,frog 212832,cat 212833,deer 212834,ship 212835,horse 212836,airplane 212837,dog 212838,frog 212839,truck 212840,frog 212841,cat 212842,bird 212843,horse 212844,deer 212845,truck 212846,dog 212847,bird 212848,dog 212849,automobile 212850,ship 212851,cat 212852,deer 212853,deer 212854,frog 212855,airplane 212856,cat 212857,deer 212858,frog 212859,cat 212860,cat 212861,truck 212862,horse 212863,deer 212864,cat 212865,bird 212866,ship 212867,automobile 212868,frog 212869,airplane 212870,airplane 212871,deer 212872,deer 212873,truck 212874,bird 212875,frog 212876,bird 212877,bird 212878,deer 212879,horse 212880,ship 212881,horse 212882,deer 212883,cat 212884,bird 212885,frog 212886,truck 212887,dog 212888,cat 212889,bird 212890,frog 212891,horse 212892,horse 212893,bird 212894,horse 212895,deer 212896,dog 212897,bird 212898,dog 212899,bird 212900,cat 212901,frog 212902,bird 212903,bird 212904,frog 212905,truck 212906,frog 212907,truck 212908,deer 212909,automobile 212910,horse 212911,truck 212912,ship 212913,dog 212914,cat 212915,automobile 212916,deer 212917,cat 212918,frog 212919,cat 212920,truck 212921,ship 212922,frog 212923,airplane 212924,frog 212925,horse 212926,cat 212927,frog 212928,horse 212929,ship 212930,automobile 212931,deer 212932,airplane 212933,cat 212934,dog 212935,frog 212936,truck 212937,bird 212938,airplane 212939,deer 212940,cat 212941,bird 212942,deer 212943,deer 212944,truck 212945,automobile 212946,automobile 212947,truck 212948,deer 212949,airplane 212950,dog 212951,horse 212952,truck 212953,truck 212954,dog 212955,deer 212956,ship 212957,bird 212958,horse 212959,bird 212960,truck 212961,ship 212962,horse 212963,dog 212964,bird 212965,deer 212966,deer 212967,bird 212968,frog 212969,frog 212970,frog 212971,cat 212972,deer 212973,deer 212974,truck 212975,truck 212976,ship 212977,dog 212978,truck 212979,automobile 212980,truck 212981,cat 212982,truck 212983,ship 212984,frog 212985,deer 212986,deer 212987,frog 212988,automobile 212989,airplane 212990,airplane 212991,frog 212992,cat 212993,airplane 212994,cat 212995,horse 212996,deer 212997,deer 212998,ship 212999,deer 213000,deer 213001,ship 213002,horse 213003,airplane 213004,deer 213005,horse 213006,dog 213007,cat 213008,horse 213009,truck 213010,ship 213011,frog 213012,deer 213013,dog 213014,deer 213015,frog 213016,frog 213017,airplane 213018,airplane 213019,truck 213020,cat 213021,deer 213022,horse 213023,deer 213024,horse 213025,automobile 213026,truck 213027,cat 213028,ship 213029,cat 213030,truck 213031,ship 213032,dog 213033,airplane 213034,frog 213035,ship 213036,dog 213037,truck 213038,bird 213039,automobile 213040,frog 213041,truck 213042,airplane 213043,cat 213044,bird 213045,truck 213046,bird 213047,ship 213048,dog 213049,airplane 213050,deer 213051,deer 213052,deer 213053,horse 213054,deer 213055,cat 213056,ship 213057,ship 213058,truck 213059,deer 213060,cat 213061,ship 213062,deer 213063,truck 213064,deer 213065,deer 213066,automobile 213067,deer 213068,dog 213069,horse 213070,deer 213071,deer 213072,cat 213073,horse 213074,horse 213075,bird 213076,frog 213077,deer 213078,airplane 213079,frog 213080,dog 213081,frog 213082,frog 213083,automobile 213084,truck 213085,cat 213086,frog 213087,horse 213088,ship 213089,automobile 213090,deer 213091,airplane 213092,ship 213093,cat 213094,dog 213095,deer 213096,cat 213097,airplane 213098,dog 213099,horse 213100,ship 213101,truck 213102,frog 213103,airplane 213104,truck 213105,ship 213106,airplane 213107,airplane 213108,bird 213109,cat 213110,frog 213111,truck 213112,truck 213113,horse 213114,ship 213115,horse 213116,cat 213117,airplane 213118,frog 213119,truck 213120,deer 213121,truck 213122,cat 213123,deer 213124,bird 213125,truck 213126,horse 213127,automobile 213128,frog 213129,cat 213130,horse 213131,deer 213132,ship 213133,truck 213134,horse 213135,horse 213136,frog 213137,cat 213138,horse 213139,bird 213140,cat 213141,airplane 213142,ship 213143,bird 213144,truck 213145,cat 213146,deer 213147,deer 213148,truck 213149,ship 213150,automobile 213151,truck 213152,horse 213153,dog 213154,airplane 213155,dog 213156,bird 213157,airplane 213158,automobile 213159,frog 213160,deer 213161,airplane 213162,airplane 213163,automobile 213164,cat 213165,truck 213166,airplane 213167,ship 213168,automobile 213169,bird 213170,deer 213171,dog 213172,dog 213173,bird 213174,frog 213175,horse 213176,horse 213177,deer 213178,frog 213179,frog 213180,frog 213181,cat 213182,automobile 213183,horse 213184,automobile 213185,airplane 213186,cat 213187,deer 213188,bird 213189,cat 213190,ship 213191,ship 213192,frog 213193,deer 213194,deer 213195,truck 213196,frog 213197,bird 213198,frog 213199,dog 213200,cat 213201,frog 213202,horse 213203,deer 213204,truck 213205,deer 213206,dog 213207,bird 213208,automobile 213209,frog 213210,frog 213211,frog 213212,truck 213213,bird 213214,ship 213215,cat 213216,dog 213217,frog 213218,airplane 213219,airplane 213220,horse 213221,cat 213222,deer 213223,deer 213224,cat 213225,frog 213226,airplane 213227,automobile 213228,automobile 213229,dog 213230,deer 213231,dog 213232,frog 213233,bird 213234,cat 213235,ship 213236,frog 213237,deer 213238,horse 213239,cat 213240,bird 213241,horse 213242,dog 213243,horse 213244,horse 213245,airplane 213246,dog 213247,automobile 213248,truck 213249,ship 213250,automobile 213251,frog 213252,deer 213253,cat 213254,cat 213255,deer 213256,bird 213257,dog 213258,dog 213259,airplane 213260,deer 213261,horse 213262,ship 213263,frog 213264,cat 213265,cat 213266,airplane 213267,ship 213268,ship 213269,airplane 213270,truck 213271,frog 213272,bird 213273,truck 213274,cat 213275,truck 213276,automobile 213277,deer 213278,deer 213279,cat 213280,cat 213281,frog 213282,cat 213283,deer 213284,airplane 213285,deer 213286,airplane 213287,horse 213288,cat 213289,truck 213290,cat 213291,horse 213292,bird 213293,dog 213294,dog 213295,deer 213296,dog 213297,frog 213298,cat 213299,dog 213300,dog 213301,deer 213302,airplane 213303,cat 213304,automobile 213305,ship 213306,cat 213307,truck 213308,deer 213309,dog 213310,automobile 213311,frog 213312,truck 213313,airplane 213314,automobile 213315,cat 213316,deer 213317,ship 213318,cat 213319,deer 213320,frog 213321,deer 213322,dog 213323,dog 213324,horse 213325,automobile 213326,dog 213327,deer 213328,deer 213329,deer 213330,truck 213331,deer 213332,deer 213333,cat 213334,truck 213335,automobile 213336,bird 213337,dog 213338,airplane 213339,ship 213340,ship 213341,automobile 213342,automobile 213343,airplane 213344,dog 213345,ship 213346,deer 213347,dog 213348,truck 213349,cat 213350,airplane 213351,airplane 213352,truck 213353,automobile 213354,automobile 213355,cat 213356,deer 213357,bird 213358,ship 213359,frog 213360,horse 213361,airplane 213362,bird 213363,ship 213364,truck 213365,bird 213366,frog 213367,deer 213368,bird 213369,frog 213370,truck 213371,ship 213372,dog 213373,cat 213374,cat 213375,frog 213376,dog 213377,deer 213378,truck 213379,horse 213380,ship 213381,bird 213382,frog 213383,cat 213384,dog 213385,cat 213386,frog 213387,airplane 213388,truck 213389,ship 213390,automobile 213391,frog 213392,frog 213393,horse 213394,frog 213395,automobile 213396,dog 213397,cat 213398,bird 213399,truck 213400,bird 213401,automobile 213402,bird 213403,bird 213404,horse 213405,truck 213406,cat 213407,dog 213408,ship 213409,deer 213410,airplane 213411,bird 213412,horse 213413,truck 213414,deer 213415,cat 213416,frog 213417,bird 213418,ship 213419,dog 213420,truck 213421,truck 213422,truck 213423,horse 213424,truck 213425,bird 213426,deer 213427,dog 213428,cat 213429,horse 213430,cat 213431,horse 213432,dog 213433,ship 213434,automobile 213435,cat 213436,automobile 213437,deer 213438,truck 213439,bird 213440,deer 213441,truck 213442,cat 213443,horse 213444,truck 213445,frog 213446,truck 213447,truck 213448,deer 213449,deer 213450,horse 213451,deer 213452,horse 213453,deer 213454,horse 213455,automobile 213456,cat 213457,frog 213458,dog 213459,horse 213460,dog 213461,airplane 213462,ship 213463,bird 213464,automobile 213465,deer 213466,frog 213467,bird 213468,truck 213469,deer 213470,bird 213471,ship 213472,truck 213473,ship 213474,cat 213475,automobile 213476,bird 213477,horse 213478,truck 213479,truck 213480,airplane 213481,truck 213482,ship 213483,dog 213484,truck 213485,truck 213486,frog 213487,horse 213488,deer 213489,deer 213490,deer 213491,truck 213492,frog 213493,bird 213494,truck 213495,frog 213496,frog 213497,truck 213498,ship 213499,airplane 213500,frog 213501,horse 213502,dog 213503,dog 213504,cat 213505,frog 213506,truck 213507,dog 213508,frog 213509,cat 213510,automobile 213511,bird 213512,dog 213513,airplane 213514,cat 213515,frog 213516,horse 213517,frog 213518,bird 213519,cat 213520,deer 213521,horse 213522,horse 213523,cat 213524,frog 213525,automobile 213526,automobile 213527,horse 213528,frog 213529,dog 213530,deer 213531,horse 213532,deer 213533,airplane 213534,automobile 213535,truck 213536,bird 213537,ship 213538,ship 213539,truck 213540,truck 213541,truck 213542,bird 213543,deer 213544,dog 213545,truck 213546,frog 213547,airplane 213548,automobile 213549,ship 213550,ship 213551,automobile 213552,horse 213553,ship 213554,dog 213555,truck 213556,bird 213557,ship 213558,truck 213559,frog 213560,deer 213561,ship 213562,dog 213563,cat 213564,airplane 213565,ship 213566,deer 213567,deer 213568,deer 213569,dog 213570,bird 213571,deer 213572,bird 213573,horse 213574,truck 213575,deer 213576,automobile 213577,bird 213578,frog 213579,ship 213580,cat 213581,deer 213582,frog 213583,truck 213584,frog 213585,truck 213586,frog 213587,frog 213588,ship 213589,truck 213590,truck 213591,automobile 213592,ship 213593,truck 213594,bird 213595,airplane 213596,dog 213597,cat 213598,bird 213599,horse 213600,dog 213601,bird 213602,truck 213603,frog 213604,deer 213605,airplane 213606,dog 213607,truck 213608,dog 213609,frog 213610,deer 213611,automobile 213612,frog 213613,cat 213614,deer 213615,dog 213616,truck 213617,horse 213618,frog 213619,horse 213620,truck 213621,horse 213622,frog 213623,truck 213624,horse 213625,cat 213626,deer 213627,deer 213628,airplane 213629,airplane 213630,cat 213631,bird 213632,deer 213633,automobile 213634,ship 213635,ship 213636,bird 213637,cat 213638,truck 213639,truck 213640,ship 213641,airplane 213642,dog 213643,ship 213644,frog 213645,airplane 213646,deer 213647,cat 213648,dog 213649,horse 213650,deer 213651,dog 213652,airplane 213653,bird 213654,frog 213655,cat 213656,deer 213657,bird 213658,bird 213659,airplane 213660,truck 213661,cat 213662,bird 213663,deer 213664,horse 213665,truck 213666,deer 213667,automobile 213668,cat 213669,automobile 213670,deer 213671,truck 213672,dog 213673,horse 213674,deer 213675,bird 213676,deer 213677,airplane 213678,bird 213679,bird 213680,frog 213681,bird 213682,frog 213683,deer 213684,cat 213685,bird 213686,deer 213687,bird 213688,truck 213689,automobile 213690,deer 213691,ship 213692,ship 213693,bird 213694,ship 213695,bird 213696,frog 213697,truck 213698,truck 213699,truck 213700,cat 213701,cat 213702,horse 213703,bird 213704,deer 213705,horse 213706,cat 213707,frog 213708,dog 213709,deer 213710,frog 213711,frog 213712,truck 213713,deer 213714,automobile 213715,deer 213716,dog 213717,cat 213718,cat 213719,automobile 213720,truck 213721,dog 213722,dog 213723,dog 213724,airplane 213725,truck 213726,dog 213727,bird 213728,deer 213729,dog 213730,frog 213731,airplane 213732,cat 213733,automobile 213734,airplane 213735,horse 213736,cat 213737,airplane 213738,horse 213739,deer 213740,cat 213741,cat 213742,cat 213743,ship 213744,truck 213745,truck 213746,frog 213747,airplane 213748,bird 213749,deer 213750,cat 213751,horse 213752,cat 213753,truck 213754,ship 213755,bird 213756,cat 213757,frog 213758,cat 213759,dog 213760,frog 213761,bird 213762,deer 213763,dog 213764,deer 213765,cat 213766,deer 213767,frog 213768,horse 213769,cat 213770,bird 213771,airplane 213772,dog 213773,bird 213774,dog 213775,airplane 213776,bird 213777,frog 213778,truck 213779,cat 213780,automobile 213781,dog 213782,cat 213783,deer 213784,automobile 213785,dog 213786,truck 213787,ship 213788,automobile 213789,frog 213790,bird 213791,dog 213792,automobile 213793,dog 213794,deer 213795,bird 213796,deer 213797,cat 213798,truck 213799,dog 213800,airplane 213801,automobile 213802,truck 213803,ship 213804,truck 213805,automobile 213806,frog 213807,dog 213808,automobile 213809,deer 213810,dog 213811,deer 213812,deer 213813,horse 213814,dog 213815,dog 213816,deer 213817,dog 213818,horse 213819,horse 213820,automobile 213821,dog 213822,airplane 213823,automobile 213824,cat 213825,cat 213826,dog 213827,horse 213828,ship 213829,truck 213830,deer 213831,frog 213832,airplane 213833,bird 213834,ship 213835,dog 213836,frog 213837,deer 213838,deer 213839,frog 213840,truck 213841,frog 213842,bird 213843,bird 213844,dog 213845,dog 213846,frog 213847,dog 213848,dog 213849,horse 213850,truck 213851,cat 213852,truck 213853,ship 213854,deer 213855,dog 213856,ship 213857,ship 213858,deer 213859,truck 213860,dog 213861,truck 213862,cat 213863,horse 213864,bird 213865,truck 213866,automobile 213867,airplane 213868,frog 213869,truck 213870,cat 213871,truck 213872,truck 213873,truck 213874,automobile 213875,truck 213876,horse 213877,deer 213878,airplane 213879,airplane 213880,ship 213881,deer 213882,automobile 213883,horse 213884,deer 213885,dog 213886,cat 213887,ship 213888,cat 213889,bird 213890,frog 213891,horse 213892,ship 213893,ship 213894,frog 213895,ship 213896,automobile 213897,bird 213898,dog 213899,bird 213900,deer 213901,bird 213902,dog 213903,deer 213904,deer 213905,dog 213906,frog 213907,frog 213908,deer 213909,deer 213910,deer 213911,airplane 213912,airplane 213913,cat 213914,horse 213915,cat 213916,cat 213917,horse 213918,airplane 213919,automobile 213920,ship 213921,ship 213922,dog 213923,cat 213924,horse 213925,dog 213926,truck 213927,deer 213928,cat 213929,bird 213930,deer 213931,airplane 213932,cat 213933,bird 213934,truck 213935,cat 213936,truck 213937,dog 213938,airplane 213939,frog 213940,automobile 213941,frog 213942,frog 213943,bird 213944,horse 213945,cat 213946,truck 213947,truck 213948,airplane 213949,dog 213950,truck 213951,cat 213952,bird 213953,frog 213954,automobile 213955,cat 213956,cat 213957,cat 213958,cat 213959,deer 213960,deer 213961,truck 213962,truck 213963,frog 213964,frog 213965,bird 213966,bird 213967,dog 213968,deer 213969,deer 213970,ship 213971,frog 213972,cat 213973,automobile 213974,cat 213975,deer 213976,horse 213977,frog 213978,cat 213979,airplane 213980,deer 213981,bird 213982,ship 213983,automobile 213984,bird 213985,truck 213986,automobile 213987,bird 213988,deer 213989,ship 213990,airplane 213991,bird 213992,deer 213993,cat 213994,ship 213995,frog 213996,truck 213997,ship 213998,dog 213999,bird 214000,airplane 214001,dog 214002,frog 214003,automobile 214004,cat 214005,truck 214006,deer 214007,cat 214008,ship 214009,deer 214010,cat 214011,truck 214012,deer 214013,dog 214014,deer 214015,frog 214016,horse 214017,frog 214018,deer 214019,cat 214020,cat 214021,truck 214022,truck 214023,truck 214024,bird 214025,dog 214026,truck 214027,frog 214028,horse 214029,airplane 214030,dog 214031,frog 214032,ship 214033,bird 214034,ship 214035,dog 214036,cat 214037,frog 214038,truck 214039,cat 214040,airplane 214041,cat 214042,frog 214043,frog 214044,ship 214045,dog 214046,airplane 214047,bird 214048,bird 214049,horse 214050,airplane 214051,deer 214052,deer 214053,frog 214054,automobile 214055,airplane 214056,bird 214057,automobile 214058,truck 214059,truck 214060,deer 214061,cat 214062,horse 214063,deer 214064,cat 214065,truck 214066,horse 214067,truck 214068,bird 214069,deer 214070,automobile 214071,cat 214072,cat 214073,ship 214074,automobile 214075,automobile 214076,deer 214077,horse 214078,bird 214079,dog 214080,horse 214081,truck 214082,deer 214083,frog 214084,frog 214085,deer 214086,deer 214087,horse 214088,cat 214089,frog 214090,automobile 214091,automobile 214092,airplane 214093,airplane 214094,bird 214095,cat 214096,horse 214097,automobile 214098,horse 214099,frog 214100,horse 214101,automobile 214102,dog 214103,automobile 214104,frog 214105,deer 214106,deer 214107,airplane 214108,airplane 214109,truck 214110,horse 214111,cat 214112,bird 214113,airplane 214114,airplane 214115,airplane 214116,deer 214117,ship 214118,horse 214119,airplane 214120,truck 214121,ship 214122,truck 214123,airplane 214124,truck 214125,airplane 214126,truck 214127,dog 214128,truck 214129,horse 214130,horse 214131,automobile 214132,bird 214133,truck 214134,airplane 214135,truck 214136,frog 214137,bird 214138,horse 214139,cat 214140,truck 214141,ship 214142,truck 214143,deer 214144,frog 214145,truck 214146,deer 214147,truck 214148,dog 214149,ship 214150,ship 214151,bird 214152,truck 214153,cat 214154,frog 214155,ship 214156,ship 214157,ship 214158,dog 214159,airplane 214160,frog 214161,ship 214162,cat 214163,cat 214164,dog 214165,automobile 214166,automobile 214167,ship 214168,dog 214169,ship 214170,truck 214171,airplane 214172,truck 214173,deer 214174,dog 214175,dog 214176,dog 214177,dog 214178,truck 214179,frog 214180,dog 214181,airplane 214182,bird 214183,cat 214184,airplane 214185,bird 214186,dog 214187,cat 214188,deer 214189,frog 214190,ship 214191,bird 214192,ship 214193,frog 214194,airplane 214195,dog 214196,bird 214197,automobile 214198,ship 214199,horse 214200,dog 214201,cat 214202,airplane 214203,truck 214204,bird 214205,deer 214206,dog 214207,airplane 214208,ship 214209,airplane 214210,frog 214211,horse 214212,truck 214213,truck 214214,truck 214215,horse 214216,deer 214217,dog 214218,ship 214219,deer 214220,airplane 214221,frog 214222,frog 214223,horse 214224,automobile 214225,bird 214226,cat 214227,dog 214228,horse 214229,frog 214230,automobile 214231,dog 214232,ship 214233,automobile 214234,dog 214235,automobile 214236,deer 214237,deer 214238,ship 214239,deer 214240,frog 214241,dog 214242,frog 214243,deer 214244,ship 214245,dog 214246,deer 214247,horse 214248,cat 214249,dog 214250,frog 214251,bird 214252,dog 214253,airplane 214254,automobile 214255,automobile 214256,deer 214257,deer 214258,horse 214259,deer 214260,ship 214261,ship 214262,cat 214263,deer 214264,dog 214265,horse 214266,airplane 214267,frog 214268,frog 214269,deer 214270,cat 214271,deer 214272,truck 214273,bird 214274,truck 214275,deer 214276,dog 214277,cat 214278,cat 214279,ship 214280,horse 214281,bird 214282,ship 214283,truck 214284,automobile 214285,cat 214286,deer 214287,ship 214288,bird 214289,frog 214290,cat 214291,airplane 214292,airplane 214293,ship 214294,bird 214295,deer 214296,cat 214297,horse 214298,automobile 214299,cat 214300,cat 214301,deer 214302,airplane 214303,automobile 214304,horse 214305,automobile 214306,deer 214307,frog 214308,dog 214309,horse 214310,dog 214311,dog 214312,airplane 214313,bird 214314,bird 214315,airplane 214316,deer 214317,cat 214318,bird 214319,deer 214320,frog 214321,cat 214322,automobile 214323,deer 214324,deer 214325,automobile 214326,automobile 214327,deer 214328,frog 214329,frog 214330,deer 214331,dog 214332,truck 214333,deer 214334,truck 214335,frog 214336,ship 214337,airplane 214338,cat 214339,frog 214340,cat 214341,dog 214342,bird 214343,horse 214344,horse 214345,deer 214346,ship 214347,automobile 214348,dog 214349,horse 214350,frog 214351,dog 214352,bird 214353,deer 214354,airplane 214355,cat 214356,ship 214357,ship 214358,airplane 214359,truck 214360,deer 214361,frog 214362,airplane 214363,truck 214364,ship 214365,dog 214366,horse 214367,dog 214368,cat 214369,ship 214370,ship 214371,truck 214372,deer 214373,airplane 214374,deer 214375,horse 214376,bird 214377,truck 214378,deer 214379,automobile 214380,ship 214381,frog 214382,deer 214383,automobile 214384,frog 214385,horse 214386,deer 214387,deer 214388,deer 214389,dog 214390,frog 214391,horse 214392,bird 214393,dog 214394,truck 214395,horse 214396,cat 214397,truck 214398,deer 214399,dog 214400,automobile 214401,deer 214402,bird 214403,ship 214404,ship 214405,cat 214406,ship 214407,truck 214408,deer 214409,airplane 214410,frog 214411,automobile 214412,airplane 214413,dog 214414,bird 214415,ship 214416,horse 214417,deer 214418,bird 214419,deer 214420,truck 214421,frog 214422,automobile 214423,cat 214424,dog 214425,bird 214426,frog 214427,bird 214428,ship 214429,automobile 214430,airplane 214431,automobile 214432,dog 214433,deer 214434,ship 214435,bird 214436,horse 214437,deer 214438,ship 214439,cat 214440,bird 214441,cat 214442,ship 214443,deer 214444,deer 214445,horse 214446,horse 214447,dog 214448,deer 214449,ship 214450,deer 214451,frog 214452,automobile 214453,frog 214454,bird 214455,horse 214456,frog 214457,deer 214458,cat 214459,cat 214460,automobile 214461,cat 214462,bird 214463,horse 214464,automobile 214465,cat 214466,truck 214467,bird 214468,frog 214469,airplane 214470,cat 214471,ship 214472,airplane 214473,ship 214474,dog 214475,deer 214476,deer 214477,bird 214478,frog 214479,horse 214480,automobile 214481,automobile 214482,airplane 214483,horse 214484,cat 214485,frog 214486,deer 214487,truck 214488,deer 214489,horse 214490,cat 214491,truck 214492,horse 214493,dog 214494,frog 214495,frog 214496,frog 214497,airplane 214498,frog 214499,dog 214500,bird 214501,deer 214502,deer 214503,airplane 214504,automobile 214505,automobile 214506,deer 214507,dog 214508,frog 214509,ship 214510,horse 214511,horse 214512,bird 214513,truck 214514,deer 214515,truck 214516,bird 214517,frog 214518,truck 214519,bird 214520,automobile 214521,truck 214522,truck 214523,bird 214524,ship 214525,frog 214526,cat 214527,truck 214528,airplane 214529,truck 214530,airplane 214531,horse 214532,automobile 214533,dog 214534,dog 214535,deer 214536,truck 214537,ship 214538,deer 214539,deer 214540,ship 214541,ship 214542,bird 214543,cat 214544,dog 214545,cat 214546,dog 214547,deer 214548,frog 214549,cat 214550,frog 214551,frog 214552,automobile 214553,horse 214554,horse 214555,truck 214556,bird 214557,bird 214558,truck 214559,bird 214560,ship 214561,cat 214562,horse 214563,horse 214564,ship 214565,deer 214566,horse 214567,automobile 214568,truck 214569,ship 214570,dog 214571,dog 214572,airplane 214573,deer 214574,frog 214575,cat 214576,deer 214577,horse 214578,deer 214579,dog 214580,cat 214581,deer 214582,cat 214583,airplane 214584,frog 214585,deer 214586,dog 214587,frog 214588,bird 214589,deer 214590,ship 214591,deer 214592,dog 214593,airplane 214594,ship 214595,deer 214596,deer 214597,truck 214598,cat 214599,airplane 214600,airplane 214601,bird 214602,deer 214603,ship 214604,bird 214605,airplane 214606,frog 214607,truck 214608,dog 214609,cat 214610,cat 214611,airplane 214612,airplane 214613,dog 214614,deer 214615,automobile 214616,frog 214617,frog 214618,horse 214619,cat 214620,deer 214621,truck 214622,truck 214623,dog 214624,bird 214625,airplane 214626,dog 214627,cat 214628,automobile 214629,deer 214630,cat 214631,cat 214632,cat 214633,cat 214634,automobile 214635,truck 214636,cat 214637,deer 214638,dog 214639,bird 214640,truck 214641,horse 214642,cat 214643,frog 214644,dog 214645,airplane 214646,airplane 214647,deer 214648,airplane 214649,automobile 214650,ship 214651,airplane 214652,cat 214653,cat 214654,frog 214655,airplane 214656,truck 214657,frog 214658,deer 214659,airplane 214660,deer 214661,cat 214662,deer 214663,frog 214664,truck 214665,dog 214666,truck 214667,horse 214668,frog 214669,dog 214670,frog 214671,cat 214672,horse 214673,deer 214674,deer 214675,frog 214676,cat 214677,airplane 214678,airplane 214679,horse 214680,frog 214681,dog 214682,bird 214683,frog 214684,deer 214685,dog 214686,truck 214687,cat 214688,dog 214689,ship 214690,deer 214691,bird 214692,deer 214693,truck 214694,deer 214695,automobile 214696,dog 214697,ship 214698,airplane 214699,truck 214700,automobile 214701,bird 214702,cat 214703,airplane 214704,truck 214705,dog 214706,cat 214707,truck 214708,automobile 214709,horse 214710,bird 214711,frog 214712,frog 214713,automobile 214714,airplane 214715,frog 214716,deer 214717,frog 214718,bird 214719,ship 214720,dog 214721,deer 214722,frog 214723,ship 214724,frog 214725,bird 214726,truck 214727,truck 214728,frog 214729,cat 214730,bird 214731,frog 214732,ship 214733,dog 214734,bird 214735,deer 214736,automobile 214737,airplane 214738,horse 214739,cat 214740,bird 214741,deer 214742,frog 214743,dog 214744,horse 214745,horse 214746,automobile 214747,ship 214748,deer 214749,truck 214750,truck 214751,deer 214752,cat 214753,bird 214754,deer 214755,horse 214756,deer 214757,airplane 214758,horse 214759,airplane 214760,horse 214761,truck 214762,deer 214763,truck 214764,dog 214765,cat 214766,deer 214767,deer 214768,airplane 214769,horse 214770,automobile 214771,ship 214772,dog 214773,truck 214774,airplane 214775,truck 214776,dog 214777,deer 214778,horse 214779,ship 214780,bird 214781,cat 214782,horse 214783,horse 214784,bird 214785,ship 214786,deer 214787,horse 214788,automobile 214789,automobile 214790,deer 214791,dog 214792,cat 214793,cat 214794,automobile 214795,deer 214796,airplane 214797,horse 214798,frog 214799,cat 214800,horse 214801,deer 214802,cat 214803,horse 214804,deer 214805,frog 214806,truck 214807,deer 214808,deer 214809,truck 214810,dog 214811,automobile 214812,dog 214813,airplane 214814,ship 214815,deer 214816,automobile 214817,bird 214818,truck 214819,cat 214820,cat 214821,dog 214822,deer 214823,dog 214824,truck 214825,deer 214826,deer 214827,cat 214828,deer 214829,truck 214830,dog 214831,deer 214832,bird 214833,truck 214834,truck 214835,bird 214836,horse 214837,cat 214838,truck 214839,cat 214840,automobile 214841,ship 214842,deer 214843,frog 214844,cat 214845,truck 214846,deer 214847,deer 214848,ship 214849,frog 214850,truck 214851,automobile 214852,cat 214853,frog 214854,truck 214855,cat 214856,cat 214857,dog 214858,horse 214859,frog 214860,truck 214861,horse 214862,ship 214863,airplane 214864,dog 214865,airplane 214866,deer 214867,bird 214868,deer 214869,horse 214870,cat 214871,bird 214872,ship 214873,cat 214874,bird 214875,cat 214876,ship 214877,deer 214878,deer 214879,deer 214880,frog 214881,truck 214882,ship 214883,frog 214884,cat 214885,dog 214886,automobile 214887,truck 214888,airplane 214889,truck 214890,horse 214891,bird 214892,deer 214893,frog 214894,dog 214895,dog 214896,horse 214897,cat 214898,deer 214899,automobile 214900,frog 214901,frog 214902,automobile 214903,airplane 214904,horse 214905,truck 214906,airplane 214907,dog 214908,deer 214909,bird 214910,deer 214911,dog 214912,bird 214913,bird 214914,bird 214915,horse 214916,automobile 214917,cat 214918,horse 214919,airplane 214920,deer 214921,dog 214922,horse 214923,cat 214924,airplane 214925,ship 214926,cat 214927,bird 214928,horse 214929,truck 214930,deer 214931,frog 214932,cat 214933,automobile 214934,bird 214935,bird 214936,automobile 214937,cat 214938,airplane 214939,ship 214940,horse 214941,airplane 214942,frog 214943,ship 214944,cat 214945,truck 214946,automobile 214947,frog 214948,frog 214949,frog 214950,bird 214951,truck 214952,airplane 214953,automobile 214954,frog 214955,frog 214956,horse 214957,cat 214958,automobile 214959,cat 214960,cat 214961,frog 214962,horse 214963,automobile 214964,airplane 214965,truck 214966,frog 214967,horse 214968,cat 214969,cat 214970,ship 214971,truck 214972,truck 214973,airplane 214974,frog 214975,deer 214976,frog 214977,cat 214978,frog 214979,bird 214980,airplane 214981,dog 214982,bird 214983,cat 214984,cat 214985,automobile 214986,horse 214987,frog 214988,deer 214989,truck 214990,horse 214991,ship 214992,automobile 214993,automobile 214994,cat 214995,airplane 214996,frog 214997,dog 214998,cat 214999,bird 215000,airplane 215001,cat 215002,deer 215003,dog 215004,bird 215005,truck 215006,truck 215007,horse 215008,frog 215009,frog 215010,bird 215011,horse 215012,horse 215013,horse 215014,truck 215015,bird 215016,frog 215017,bird 215018,deer 215019,frog 215020,airplane 215021,deer 215022,frog 215023,airplane 215024,cat 215025,frog 215026,cat 215027,deer 215028,frog 215029,dog 215030,deer 215031,dog 215032,truck 215033,airplane 215034,horse 215035,truck 215036,cat 215037,airplane 215038,horse 215039,frog 215040,horse 215041,deer 215042,horse 215043,deer 215044,truck 215045,cat 215046,deer 215047,truck 215048,deer 215049,ship 215050,truck 215051,frog 215052,cat 215053,deer 215054,automobile 215055,automobile 215056,automobile 215057,automobile 215058,airplane 215059,cat 215060,horse 215061,deer 215062,cat 215063,airplane 215064,airplane 215065,truck 215066,cat 215067,airplane 215068,dog 215069,ship 215070,airplane 215071,deer 215072,airplane 215073,truck 215074,dog 215075,horse 215076,bird 215077,deer 215078,bird 215079,airplane 215080,deer 215081,ship 215082,horse 215083,truck 215084,frog 215085,horse 215086,airplane 215087,ship 215088,deer 215089,cat 215090,ship 215091,frog 215092,cat 215093,airplane 215094,truck 215095,truck 215096,bird 215097,bird 215098,automobile 215099,horse 215100,horse 215101,cat 215102,cat 215103,airplane 215104,ship 215105,deer 215106,truck 215107,bird 215108,frog 215109,bird 215110,dog 215111,frog 215112,deer 215113,airplane 215114,deer 215115,airplane 215116,deer 215117,deer 215118,horse 215119,automobile 215120,deer 215121,deer 215122,deer 215123,frog 215124,frog 215125,frog 215126,cat 215127,automobile 215128,frog 215129,automobile 215130,airplane 215131,truck 215132,truck 215133,dog 215134,frog 215135,airplane 215136,frog 215137,airplane 215138,frog 215139,deer 215140,dog 215141,cat 215142,ship 215143,frog 215144,horse 215145,dog 215146,deer 215147,truck 215148,ship 215149,deer 215150,deer 215151,dog 215152,dog 215153,ship 215154,ship 215155,automobile 215156,truck 215157,truck 215158,cat 215159,dog 215160,deer 215161,truck 215162,bird 215163,dog 215164,horse 215165,horse 215166,airplane 215167,cat 215168,deer 215169,truck 215170,horse 215171,horse 215172,bird 215173,frog 215174,truck 215175,horse 215176,ship 215177,automobile 215178,frog 215179,cat 215180,bird 215181,truck 215182,cat 215183,horse 215184,horse 215185,airplane 215186,automobile 215187,automobile 215188,airplane 215189,airplane 215190,airplane 215191,truck 215192,dog 215193,cat 215194,horse 215195,cat 215196,automobile 215197,automobile 215198,truck 215199,deer 215200,horse 215201,frog 215202,dog 215203,dog 215204,bird 215205,airplane 215206,deer 215207,automobile 215208,truck 215209,bird 215210,truck 215211,bird 215212,dog 215213,dog 215214,dog 215215,airplane 215216,dog 215217,deer 215218,truck 215219,deer 215220,dog 215221,dog 215222,dog 215223,automobile 215224,bird 215225,truck 215226,cat 215227,deer 215228,automobile 215229,horse 215230,truck 215231,truck 215232,frog 215233,cat 215234,deer 215235,horse 215236,airplane 215237,frog 215238,automobile 215239,dog 215240,horse 215241,frog 215242,airplane 215243,deer 215244,bird 215245,frog 215246,airplane 215247,ship 215248,horse 215249,frog 215250,bird 215251,frog 215252,cat 215253,truck 215254,bird 215255,dog 215256,cat 215257,truck 215258,truck 215259,airplane 215260,frog 215261,cat 215262,horse 215263,horse 215264,cat 215265,cat 215266,automobile 215267,deer 215268,ship 215269,airplane 215270,frog 215271,ship 215272,cat 215273,automobile 215274,ship 215275,truck 215276,deer 215277,dog 215278,frog 215279,ship 215280,truck 215281,deer 215282,airplane 215283,ship 215284,horse 215285,ship 215286,deer 215287,frog 215288,dog 215289,automobile 215290,dog 215291,truck 215292,deer 215293,dog 215294,deer 215295,dog 215296,cat 215297,deer 215298,frog 215299,deer 215300,truck 215301,airplane 215302,truck 215303,dog 215304,ship 215305,deer 215306,dog 215307,deer 215308,frog 215309,ship 215310,horse 215311,dog 215312,truck 215313,frog 215314,deer 215315,dog 215316,bird 215317,ship 215318,frog 215319,cat 215320,bird 215321,dog 215322,cat 215323,frog 215324,deer 215325,frog 215326,ship 215327,cat 215328,deer 215329,cat 215330,dog 215331,frog 215332,airplane 215333,truck 215334,airplane 215335,bird 215336,frog 215337,horse 215338,frog 215339,truck 215340,deer 215341,bird 215342,airplane 215343,dog 215344,frog 215345,truck 215346,horse 215347,bird 215348,cat 215349,truck 215350,cat 215351,cat 215352,dog 215353,airplane 215354,bird 215355,automobile 215356,ship 215357,horse 215358,deer 215359,automobile 215360,ship 215361,ship 215362,frog 215363,deer 215364,horse 215365,horse 215366,frog 215367,horse 215368,bird 215369,horse 215370,dog 215371,automobile 215372,airplane 215373,dog 215374,deer 215375,dog 215376,bird 215377,deer 215378,truck 215379,bird 215380,ship 215381,deer 215382,deer 215383,bird 215384,cat 215385,ship 215386,frog 215387,cat 215388,deer 215389,dog 215390,deer 215391,dog 215392,automobile 215393,cat 215394,deer 215395,cat 215396,ship 215397,deer 215398,cat 215399,deer 215400,horse 215401,horse 215402,bird 215403,frog 215404,frog 215405,deer 215406,frog 215407,horse 215408,deer 215409,airplane 215410,deer 215411,airplane 215412,cat 215413,dog 215414,bird 215415,bird 215416,frog 215417,cat 215418,deer 215419,frog 215420,automobile 215421,ship 215422,deer 215423,ship 215424,dog 215425,horse 215426,dog 215427,dog 215428,bird 215429,deer 215430,cat 215431,automobile 215432,airplane 215433,automobile 215434,bird 215435,automobile 215436,ship 215437,dog 215438,dog 215439,bird 215440,airplane 215441,horse 215442,automobile 215443,airplane 215444,airplane 215445,horse 215446,deer 215447,deer 215448,horse 215449,ship 215450,ship 215451,dog 215452,ship 215453,airplane 215454,frog 215455,truck 215456,deer 215457,truck 215458,truck 215459,deer 215460,deer 215461,ship 215462,airplane 215463,cat 215464,deer 215465,ship 215466,automobile 215467,horse 215468,cat 215469,cat 215470,cat 215471,cat 215472,deer 215473,truck 215474,cat 215475,deer 215476,deer 215477,deer 215478,bird 215479,horse 215480,cat 215481,deer 215482,truck 215483,cat 215484,bird 215485,cat 215486,deer 215487,deer 215488,horse 215489,horse 215490,frog 215491,automobile 215492,truck 215493,horse 215494,truck 215495,horse 215496,deer 215497,cat 215498,deer 215499,cat 215500,frog 215501,cat 215502,deer 215503,deer 215504,automobile 215505,truck 215506,cat 215507,dog 215508,dog 215509,ship 215510,ship 215511,dog 215512,airplane 215513,truck 215514,frog 215515,frog 215516,automobile 215517,frog 215518,truck 215519,truck 215520,airplane 215521,dog 215522,airplane 215523,ship 215524,cat 215525,dog 215526,dog 215527,cat 215528,dog 215529,dog 215530,horse 215531,cat 215532,horse 215533,deer 215534,dog 215535,airplane 215536,cat 215537,deer 215538,airplane 215539,airplane 215540,bird 215541,dog 215542,cat 215543,cat 215544,horse 215545,truck 215546,truck 215547,ship 215548,ship 215549,horse 215550,frog 215551,deer 215552,ship 215553,airplane 215554,horse 215555,deer 215556,cat 215557,frog 215558,cat 215559,ship 215560,horse 215561,deer 215562,cat 215563,airplane 215564,dog 215565,truck 215566,frog 215567,deer 215568,cat 215569,automobile 215570,cat 215571,airplane 215572,deer 215573,ship 215574,ship 215575,dog 215576,dog 215577,deer 215578,dog 215579,truck 215580,dog 215581,deer 215582,airplane 215583,airplane 215584,dog 215585,deer 215586,bird 215587,truck 215588,deer 215589,ship 215590,ship 215591,automobile 215592,bird 215593,dog 215594,horse 215595,truck 215596,truck 215597,horse 215598,horse 215599,dog 215600,bird 215601,frog 215602,automobile 215603,truck 215604,dog 215605,cat 215606,airplane 215607,deer 215608,deer 215609,automobile 215610,deer 215611,bird 215612,bird 215613,automobile 215614,bird 215615,frog 215616,deer 215617,ship 215618,automobile 215619,airplane 215620,dog 215621,deer 215622,deer 215623,ship 215624,cat 215625,airplane 215626,frog 215627,airplane 215628,deer 215629,airplane 215630,airplane 215631,truck 215632,dog 215633,ship 215634,horse 215635,ship 215636,dog 215637,cat 215638,deer 215639,frog 215640,airplane 215641,bird 215642,bird 215643,bird 215644,ship 215645,ship 215646,dog 215647,deer 215648,automobile 215649,dog 215650,bird 215651,bird 215652,airplane 215653,dog 215654,cat 215655,automobile 215656,cat 215657,deer 215658,deer 215659,truck 215660,cat 215661,deer 215662,cat 215663,horse 215664,horse 215665,dog 215666,deer 215667,deer 215668,truck 215669,automobile 215670,frog 215671,deer 215672,truck 215673,ship 215674,cat 215675,frog 215676,bird 215677,horse 215678,horse 215679,horse 215680,truck 215681,ship 215682,truck 215683,frog 215684,deer 215685,dog 215686,bird 215687,deer 215688,frog 215689,truck 215690,deer 215691,truck 215692,deer 215693,ship 215694,bird 215695,deer 215696,ship 215697,dog 215698,ship 215699,deer 215700,airplane 215701,automobile 215702,deer 215703,airplane 215704,frog 215705,deer 215706,ship 215707,frog 215708,frog 215709,cat 215710,truck 215711,frog 215712,truck 215713,dog 215714,deer 215715,deer 215716,airplane 215717,dog 215718,deer 215719,bird 215720,deer 215721,cat 215722,ship 215723,dog 215724,horse 215725,horse 215726,cat 215727,deer 215728,ship 215729,truck 215730,cat 215731,horse 215732,cat 215733,cat 215734,dog 215735,automobile 215736,truck 215737,truck 215738,truck 215739,frog 215740,deer 215741,truck 215742,frog 215743,horse 215744,bird 215745,frog 215746,truck 215747,truck 215748,cat 215749,bird 215750,deer 215751,deer 215752,deer 215753,cat 215754,horse 215755,frog 215756,cat 215757,airplane 215758,cat 215759,ship 215760,dog 215761,ship 215762,deer 215763,bird 215764,bird 215765,ship 215766,airplane 215767,ship 215768,airplane 215769,bird 215770,cat 215771,deer 215772,airplane 215773,cat 215774,horse 215775,horse 215776,truck 215777,automobile 215778,dog 215779,airplane 215780,horse 215781,airplane 215782,ship 215783,dog 215784,horse 215785,deer 215786,ship 215787,cat 215788,cat 215789,cat 215790,truck 215791,ship 215792,airplane 215793,cat 215794,cat 215795,truck 215796,horse 215797,cat 215798,truck 215799,dog 215800,dog 215801,bird 215802,deer 215803,truck 215804,truck 215805,deer 215806,deer 215807,frog 215808,deer 215809,airplane 215810,dog 215811,ship 215812,airplane 215813,truck 215814,automobile 215815,ship 215816,deer 215817,automobile 215818,frog 215819,ship 215820,automobile 215821,frog 215822,bird 215823,ship 215824,horse 215825,frog 215826,cat 215827,deer 215828,cat 215829,automobile 215830,automobile 215831,deer 215832,ship 215833,bird 215834,frog 215835,truck 215836,horse 215837,ship 215838,deer 215839,ship 215840,airplane 215841,bird 215842,cat 215843,bird 215844,horse 215845,airplane 215846,ship 215847,ship 215848,bird 215849,deer 215850,horse 215851,cat 215852,airplane 215853,airplane 215854,frog 215855,deer 215856,dog 215857,automobile 215858,deer 215859,deer 215860,airplane 215861,deer 215862,bird 215863,cat 215864,ship 215865,ship 215866,deer 215867,deer 215868,frog 215869,cat 215870,bird 215871,horse 215872,dog 215873,frog 215874,horse 215875,airplane 215876,airplane 215877,airplane 215878,deer 215879,deer 215880,airplane 215881,automobile 215882,deer 215883,horse 215884,truck 215885,dog 215886,cat 215887,horse 215888,frog 215889,truck 215890,deer 215891,deer 215892,frog 215893,cat 215894,dog 215895,ship 215896,truck 215897,airplane 215898,horse 215899,ship 215900,truck 215901,dog 215902,truck 215903,airplane 215904,ship 215905,truck 215906,cat 215907,automobile 215908,truck 215909,automobile 215910,horse 215911,bird 215912,airplane 215913,truck 215914,frog 215915,dog 215916,frog 215917,frog 215918,cat 215919,deer 215920,dog 215921,truck 215922,automobile 215923,cat 215924,truck 215925,automobile 215926,truck 215927,bird 215928,deer 215929,deer 215930,dog 215931,airplane 215932,horse 215933,cat 215934,truck 215935,truck 215936,deer 215937,frog 215938,frog 215939,horse 215940,bird 215941,frog 215942,frog 215943,airplane 215944,cat 215945,dog 215946,bird 215947,horse 215948,cat 215949,deer 215950,ship 215951,cat 215952,airplane 215953,bird 215954,dog 215955,deer 215956,truck 215957,truck 215958,cat 215959,airplane 215960,deer 215961,cat 215962,airplane 215963,frog 215964,airplane 215965,frog 215966,horse 215967,automobile 215968,frog 215969,bird 215970,bird 215971,cat 215972,frog 215973,frog 215974,dog 215975,deer 215976,truck 215977,dog 215978,truck 215979,frog 215980,truck 215981,frog 215982,dog 215983,cat 215984,cat 215985,dog 215986,horse 215987,cat 215988,automobile 215989,cat 215990,airplane 215991,frog 215992,automobile 215993,deer 215994,ship 215995,frog 215996,deer 215997,bird 215998,deer 215999,frog 216000,dog 216001,horse 216002,automobile 216003,automobile 216004,frog 216005,cat 216006,dog 216007,frog 216008,dog 216009,deer 216010,truck 216011,cat 216012,horse 216013,frog 216014,dog 216015,ship 216016,ship 216017,cat 216018,truck 216019,cat 216020,bird 216021,horse 216022,cat 216023,ship 216024,dog 216025,truck 216026,automobile 216027,cat 216028,automobile 216029,frog 216030,dog 216031,cat 216032,frog 216033,cat 216034,dog 216035,cat 216036,deer 216037,cat 216038,cat 216039,cat 216040,bird 216041,ship 216042,frog 216043,horse 216044,truck 216045,truck 216046,cat 216047,truck 216048,dog 216049,horse 216050,truck 216051,bird 216052,horse 216053,horse 216054,bird 216055,horse 216056,airplane 216057,truck 216058,dog 216059,frog 216060,automobile 216061,truck 216062,ship 216063,ship 216064,frog 216065,dog 216066,bird 216067,horse 216068,deer 216069,airplane 216070,cat 216071,deer 216072,truck 216073,truck 216074,bird 216075,frog 216076,truck 216077,deer 216078,frog 216079,dog 216080,cat 216081,airplane 216082,airplane 216083,dog 216084,cat 216085,airplane 216086,ship 216087,deer 216088,airplane 216089,ship 216090,ship 216091,ship 216092,horse 216093,horse 216094,frog 216095,truck 216096,ship 216097,cat 216098,automobile 216099,dog 216100,horse 216101,deer 216102,frog 216103,cat 216104,bird 216105,ship 216106,cat 216107,automobile 216108,bird 216109,deer 216110,dog 216111,automobile 216112,deer 216113,cat 216114,dog 216115,dog 216116,dog 216117,ship 216118,bird 216119,horse 216120,automobile 216121,deer 216122,truck 216123,deer 216124,truck 216125,dog 216126,dog 216127,dog 216128,frog 216129,dog 216130,horse 216131,bird 216132,cat 216133,dog 216134,deer 216135,cat 216136,cat 216137,frog 216138,bird 216139,dog 216140,frog 216141,bird 216142,deer 216143,frog 216144,cat 216145,airplane 216146,dog 216147,truck 216148,truck 216149,deer 216150,dog 216151,cat 216152,frog 216153,automobile 216154,bird 216155,dog 216156,deer 216157,truck 216158,horse 216159,dog 216160,frog 216161,truck 216162,cat 216163,automobile 216164,airplane 216165,truck 216166,cat 216167,airplane 216168,horse 216169,dog 216170,dog 216171,deer 216172,deer 216173,airplane 216174,dog 216175,frog 216176,truck 216177,deer 216178,truck 216179,horse 216180,automobile 216181,deer 216182,cat 216183,dog 216184,horse 216185,deer 216186,bird 216187,cat 216188,automobile 216189,truck 216190,frog 216191,bird 216192,horse 216193,automobile 216194,truck 216195,automobile 216196,cat 216197,frog 216198,deer 216199,dog 216200,bird 216201,truck 216202,truck 216203,airplane 216204,bird 216205,truck 216206,bird 216207,cat 216208,airplane 216209,dog 216210,airplane 216211,horse 216212,automobile 216213,frog 216214,airplane 216215,deer 216216,cat 216217,frog 216218,horse 216219,automobile 216220,cat 216221,frog 216222,truck 216223,deer 216224,cat 216225,frog 216226,airplane 216227,bird 216228,cat 216229,bird 216230,bird 216231,deer 216232,deer 216233,horse 216234,automobile 216235,airplane 216236,horse 216237,frog 216238,bird 216239,frog 216240,cat 216241,cat 216242,automobile 216243,airplane 216244,horse 216245,dog 216246,horse 216247,ship 216248,airplane 216249,cat 216250,truck 216251,cat 216252,dog 216253,cat 216254,airplane 216255,dog 216256,frog 216257,deer 216258,airplane 216259,truck 216260,airplane 216261,ship 216262,cat 216263,dog 216264,dog 216265,deer 216266,horse 216267,cat 216268,ship 216269,cat 216270,cat 216271,dog 216272,deer 216273,horse 216274,ship 216275,cat 216276,frog 216277,ship 216278,truck 216279,truck 216280,cat 216281,frog 216282,cat 216283,airplane 216284,cat 216285,ship 216286,deer 216287,truck 216288,horse 216289,truck 216290,ship 216291,deer 216292,bird 216293,ship 216294,deer 216295,dog 216296,horse 216297,bird 216298,airplane 216299,airplane 216300,deer 216301,deer 216302,deer 216303,ship 216304,automobile 216305,cat 216306,cat 216307,deer 216308,horse 216309,frog 216310,airplane 216311,bird 216312,dog 216313,bird 216314,frog 216315,airplane 216316,truck 216317,automobile 216318,frog 216319,automobile 216320,deer 216321,horse 216322,airplane 216323,automobile 216324,deer 216325,airplane 216326,automobile 216327,dog 216328,dog 216329,airplane 216330,deer 216331,ship 216332,truck 216333,bird 216334,deer 216335,truck 216336,truck 216337,frog 216338,airplane 216339,ship 216340,truck 216341,dog 216342,horse 216343,automobile 216344,frog 216345,cat 216346,horse 216347,cat 216348,airplane 216349,truck 216350,truck 216351,bird 216352,cat 216353,deer 216354,bird 216355,bird 216356,bird 216357,deer 216358,deer 216359,airplane 216360,cat 216361,horse 216362,truck 216363,truck 216364,frog 216365,deer 216366,bird 216367,automobile 216368,dog 216369,horse 216370,horse 216371,deer 216372,bird 216373,bird 216374,deer 216375,automobile 216376,bird 216377,dog 216378,ship 216379,cat 216380,dog 216381,truck 216382,frog 216383,frog 216384,truck 216385,cat 216386,deer 216387,dog 216388,airplane 216389,horse 216390,dog 216391,deer 216392,frog 216393,airplane 216394,deer 216395,airplane 216396,ship 216397,airplane 216398,deer 216399,cat 216400,horse 216401,cat 216402,frog 216403,dog 216404,dog 216405,horse 216406,bird 216407,bird 216408,bird 216409,truck 216410,deer 216411,frog 216412,bird 216413,airplane 216414,airplane 216415,cat 216416,dog 216417,horse 216418,dog 216419,dog 216420,truck 216421,horse 216422,frog 216423,deer 216424,frog 216425,frog 216426,bird 216427,airplane 216428,truck 216429,frog 216430,cat 216431,horse 216432,dog 216433,ship 216434,truck 216435,airplane 216436,bird 216437,truck 216438,cat 216439,deer 216440,cat 216441,deer 216442,frog 216443,bird 216444,airplane 216445,airplane 216446,bird 216447,deer 216448,horse 216449,deer 216450,airplane 216451,deer 216452,automobile 216453,cat 216454,truck 216455,cat 216456,deer 216457,deer 216458,truck 216459,bird 216460,cat 216461,truck 216462,airplane 216463,bird 216464,deer 216465,ship 216466,bird 216467,truck 216468,truck 216469,bird 216470,cat 216471,deer 216472,ship 216473,bird 216474,cat 216475,horse 216476,dog 216477,deer 216478,automobile 216479,horse 216480,bird 216481,horse 216482,airplane 216483,airplane 216484,automobile 216485,automobile 216486,cat 216487,cat 216488,horse 216489,dog 216490,ship 216491,ship 216492,automobile 216493,frog 216494,truck 216495,deer 216496,cat 216497,horse 216498,frog 216499,airplane 216500,deer 216501,horse 216502,frog 216503,frog 216504,frog 216505,deer 216506,dog 216507,bird 216508,deer 216509,automobile 216510,horse 216511,dog 216512,bird 216513,horse 216514,frog 216515,frog 216516,frog 216517,frog 216518,truck 216519,horse 216520,ship 216521,bird 216522,airplane 216523,frog 216524,cat 216525,dog 216526,truck 216527,frog 216528,cat 216529,airplane 216530,airplane 216531,truck 216532,bird 216533,automobile 216534,bird 216535,deer 216536,frog 216537,automobile 216538,truck 216539,cat 216540,cat 216541,deer 216542,horse 216543,automobile 216544,dog 216545,cat 216546,ship 216547,cat 216548,truck 216549,dog 216550,automobile 216551,truck 216552,dog 216553,ship 216554,automobile 216555,deer 216556,truck 216557,frog 216558,frog 216559,dog 216560,horse 216561,truck 216562,automobile 216563,horse 216564,cat 216565,cat 216566,frog 216567,truck 216568,cat 216569,ship 216570,bird 216571,frog 216572,automobile 216573,ship 216574,frog 216575,airplane 216576,cat 216577,airplane 216578,cat 216579,bird 216580,automobile 216581,truck 216582,deer 216583,bird 216584,ship 216585,ship 216586,frog 216587,airplane 216588,cat 216589,cat 216590,automobile 216591,dog 216592,cat 216593,dog 216594,truck 216595,automobile 216596,horse 216597,ship 216598,cat 216599,deer 216600,truck 216601,cat 216602,frog 216603,horse 216604,cat 216605,cat 216606,ship 216607,cat 216608,bird 216609,automobile 216610,airplane 216611,deer 216612,deer 216613,frog 216614,airplane 216615,dog 216616,truck 216617,truck 216618,airplane 216619,bird 216620,frog 216621,truck 216622,automobile 216623,ship 216624,frog 216625,frog 216626,truck 216627,bird 216628,frog 216629,dog 216630,bird 216631,automobile 216632,cat 216633,bird 216634,deer 216635,truck 216636,frog 216637,cat 216638,horse 216639,bird 216640,deer 216641,cat 216642,dog 216643,deer 216644,dog 216645,truck 216646,dog 216647,cat 216648,frog 216649,horse 216650,airplane 216651,deer 216652,dog 216653,frog 216654,bird 216655,truck 216656,cat 216657,bird 216658,deer 216659,horse 216660,automobile 216661,deer 216662,deer 216663,bird 216664,deer 216665,automobile 216666,deer 216667,bird 216668,cat 216669,frog 216670,airplane 216671,airplane 216672,frog 216673,cat 216674,truck 216675,ship 216676,cat 216677,dog 216678,frog 216679,airplane 216680,frog 216681,horse 216682,ship 216683,bird 216684,automobile 216685,bird 216686,dog 216687,horse 216688,dog 216689,airplane 216690,horse 216691,cat 216692,airplane 216693,frog 216694,deer 216695,bird 216696,horse 216697,cat 216698,automobile 216699,dog 216700,truck 216701,horse 216702,automobile 216703,cat 216704,truck 216705,airplane 216706,dog 216707,horse 216708,ship 216709,dog 216710,ship 216711,deer 216712,airplane 216713,deer 216714,cat 216715,truck 216716,deer 216717,truck 216718,dog 216719,dog 216720,airplane 216721,deer 216722,bird 216723,cat 216724,frog 216725,frog 216726,airplane 216727,airplane 216728,truck 216729,dog 216730,horse 216731,ship 216732,dog 216733,deer 216734,ship 216735,deer 216736,dog 216737,frog 216738,frog 216739,truck 216740,cat 216741,dog 216742,automobile 216743,horse 216744,airplane 216745,deer 216746,dog 216747,truck 216748,bird 216749,horse 216750,dog 216751,deer 216752,deer 216753,horse 216754,truck 216755,deer 216756,frog 216757,frog 216758,ship 216759,automobile 216760,dog 216761,truck 216762,airplane 216763,cat 216764,deer 216765,deer 216766,bird 216767,frog 216768,automobile 216769,ship 216770,cat 216771,dog 216772,truck 216773,horse 216774,frog 216775,bird 216776,deer 216777,ship 216778,cat 216779,dog 216780,automobile 216781,dog 216782,horse 216783,horse 216784,horse 216785,airplane 216786,cat 216787,cat 216788,truck 216789,horse 216790,frog 216791,deer 216792,horse 216793,ship 216794,truck 216795,ship 216796,cat 216797,frog 216798,ship 216799,deer 216800,airplane 216801,dog 216802,ship 216803,truck 216804,airplane 216805,cat 216806,truck 216807,bird 216808,cat 216809,automobile 216810,deer 216811,cat 216812,cat 216813,frog 216814,truck 216815,automobile 216816,airplane 216817,ship 216818,ship 216819,automobile 216820,airplane 216821,cat 216822,bird 216823,ship 216824,bird 216825,cat 216826,dog 216827,deer 216828,truck 216829,ship 216830,dog 216831,bird 216832,airplane 216833,horse 216834,bird 216835,dog 216836,deer 216837,horse 216838,horse 216839,horse 216840,dog 216841,dog 216842,automobile 216843,truck 216844,deer 216845,automobile 216846,deer 216847,truck 216848,deer 216849,deer 216850,deer 216851,airplane 216852,horse 216853,airplane 216854,airplane 216855,dog 216856,horse 216857,bird 216858,ship 216859,truck 216860,truck 216861,horse 216862,dog 216863,truck 216864,ship 216865,cat 216866,bird 216867,airplane 216868,bird 216869,bird 216870,dog 216871,truck 216872,deer 216873,dog 216874,automobile 216875,cat 216876,bird 216877,automobile 216878,truck 216879,bird 216880,frog 216881,frog 216882,deer 216883,ship 216884,truck 216885,deer 216886,horse 216887,dog 216888,deer 216889,bird 216890,cat 216891,frog 216892,frog 216893,cat 216894,truck 216895,truck 216896,horse 216897,airplane 216898,deer 216899,horse 216900,horse 216901,airplane 216902,automobile 216903,horse 216904,truck 216905,dog 216906,ship 216907,dog 216908,truck 216909,dog 216910,truck 216911,deer 216912,frog 216913,deer 216914,deer 216915,deer 216916,deer 216917,ship 216918,horse 216919,cat 216920,dog 216921,cat 216922,horse 216923,horse 216924,dog 216925,horse 216926,truck 216927,frog 216928,dog 216929,automobile 216930,automobile 216931,deer 216932,horse 216933,cat 216934,ship 216935,horse 216936,ship 216937,bird 216938,frog 216939,dog 216940,cat 216941,frog 216942,truck 216943,dog 216944,deer 216945,airplane 216946,frog 216947,frog 216948,automobile 216949,truck 216950,airplane 216951,cat 216952,deer 216953,cat 216954,horse 216955,frog 216956,cat 216957,bird 216958,automobile 216959,bird 216960,frog 216961,deer 216962,deer 216963,cat 216964,horse 216965,horse 216966,cat 216967,dog 216968,deer 216969,deer 216970,deer 216971,dog 216972,frog 216973,frog 216974,bird 216975,bird 216976,horse 216977,truck 216978,bird 216979,dog 216980,airplane 216981,frog 216982,deer 216983,deer 216984,frog 216985,cat 216986,truck 216987,automobile 216988,deer 216989,cat 216990,dog 216991,cat 216992,truck 216993,ship 216994,deer 216995,horse 216996,horse 216997,cat 216998,bird 216999,airplane 217000,frog 217001,cat 217002,truck 217003,ship 217004,dog 217005,frog 217006,cat 217007,frog 217008,horse 217009,frog 217010,truck 217011,airplane 217012,frog 217013,cat 217014,cat 217015,ship 217016,truck 217017,frog 217018,frog 217019,ship 217020,horse 217021,deer 217022,deer 217023,automobile 217024,truck 217025,airplane 217026,horse 217027,ship 217028,cat 217029,deer 217030,deer 217031,truck 217032,deer 217033,cat 217034,dog 217035,ship 217036,deer 217037,horse 217038,deer 217039,horse 217040,deer 217041,dog 217042,deer 217043,truck 217044,frog 217045,frog 217046,dog 217047,truck 217048,cat 217049,cat 217050,deer 217051,frog 217052,automobile 217053,airplane 217054,automobile 217055,frog 217056,horse 217057,truck 217058,horse 217059,cat 217060,horse 217061,dog 217062,horse 217063,frog 217064,deer 217065,deer 217066,dog 217067,truck 217068,truck 217069,bird 217070,truck 217071,automobile 217072,airplane 217073,cat 217074,cat 217075,deer 217076,deer 217077,truck 217078,deer 217079,deer 217080,cat 217081,automobile 217082,ship 217083,automobile 217084,airplane 217085,frog 217086,truck 217087,dog 217088,airplane 217089,frog 217090,automobile 217091,deer 217092,ship 217093,dog 217094,ship 217095,horse 217096,horse 217097,ship 217098,airplane 217099,dog 217100,automobile 217101,automobile 217102,deer 217103,airplane 217104,deer 217105,dog 217106,truck 217107,cat 217108,frog 217109,ship 217110,deer 217111,horse 217112,cat 217113,automobile 217114,truck 217115,dog 217116,dog 217117,dog 217118,ship 217119,dog 217120,automobile 217121,deer 217122,automobile 217123,truck 217124,dog 217125,deer 217126,bird 217127,frog 217128,ship 217129,frog 217130,dog 217131,automobile 217132,dog 217133,bird 217134,airplane 217135,cat 217136,automobile 217137,cat 217138,bird 217139,horse 217140,horse 217141,horse 217142,deer 217143,cat 217144,horse 217145,dog 217146,horse 217147,automobile 217148,frog 217149,horse 217150,cat 217151,cat 217152,ship 217153,cat 217154,dog 217155,horse 217156,truck 217157,automobile 217158,deer 217159,deer 217160,ship 217161,deer 217162,deer 217163,deer 217164,deer 217165,ship 217166,frog 217167,bird 217168,dog 217169,deer 217170,cat 217171,automobile 217172,ship 217173,horse 217174,airplane 217175,frog 217176,deer 217177,frog 217178,airplane 217179,frog 217180,horse 217181,dog 217182,dog 217183,automobile 217184,frog 217185,cat 217186,truck 217187,cat 217188,dog 217189,bird 217190,frog 217191,truck 217192,ship 217193,truck 217194,dog 217195,bird 217196,bird 217197,deer 217198,automobile 217199,frog 217200,cat 217201,ship 217202,truck 217203,ship 217204,horse 217205,deer 217206,deer 217207,airplane 217208,deer 217209,cat 217210,horse 217211,deer 217212,cat 217213,bird 217214,bird 217215,frog 217216,cat 217217,truck 217218,bird 217219,dog 217220,ship 217221,frog 217222,bird 217223,bird 217224,truck 217225,cat 217226,cat 217227,cat 217228,bird 217229,truck 217230,cat 217231,bird 217232,dog 217233,deer 217234,ship 217235,deer 217236,truck 217237,airplane 217238,horse 217239,bird 217240,bird 217241,truck 217242,frog 217243,frog 217244,dog 217245,ship 217246,bird 217247,cat 217248,truck 217249,frog 217250,bird 217251,dog 217252,cat 217253,deer 217254,truck 217255,truck 217256,dog 217257,dog 217258,automobile 217259,ship 217260,airplane 217261,frog 217262,ship 217263,bird 217264,bird 217265,dog 217266,deer 217267,deer 217268,automobile 217269,frog 217270,frog 217271,deer 217272,frog 217273,airplane 217274,ship 217275,automobile 217276,deer 217277,truck 217278,airplane 217279,dog 217280,horse 217281,automobile 217282,bird 217283,automobile 217284,truck 217285,cat 217286,automobile 217287,airplane 217288,deer 217289,frog 217290,automobile 217291,deer 217292,dog 217293,cat 217294,ship 217295,ship 217296,dog 217297,bird 217298,bird 217299,airplane 217300,dog 217301,frog 217302,deer 217303,truck 217304,dog 217305,frog 217306,bird 217307,deer 217308,airplane 217309,dog 217310,deer 217311,deer 217312,deer 217313,airplane 217314,ship 217315,frog 217316,airplane 217317,horse 217318,cat 217319,airplane 217320,airplane 217321,ship 217322,cat 217323,horse 217324,ship 217325,automobile 217326,cat 217327,automobile 217328,bird 217329,horse 217330,truck 217331,horse 217332,horse 217333,frog 217334,ship 217335,horse 217336,frog 217337,ship 217338,frog 217339,ship 217340,horse 217341,bird 217342,truck 217343,airplane 217344,deer 217345,deer 217346,bird 217347,deer 217348,horse 217349,cat 217350,cat 217351,cat 217352,cat 217353,truck 217354,horse 217355,airplane 217356,deer 217357,airplane 217358,deer 217359,dog 217360,truck 217361,automobile 217362,deer 217363,airplane 217364,frog 217365,airplane 217366,ship 217367,dog 217368,deer 217369,ship 217370,bird 217371,automobile 217372,frog 217373,dog 217374,airplane 217375,frog 217376,truck 217377,airplane 217378,dog 217379,frog 217380,deer 217381,frog 217382,cat 217383,truck 217384,airplane 217385,cat 217386,frog 217387,deer 217388,bird 217389,cat 217390,airplane 217391,deer 217392,dog 217393,dog 217394,frog 217395,bird 217396,bird 217397,truck 217398,cat 217399,cat 217400,ship 217401,truck 217402,frog 217403,deer 217404,frog 217405,truck 217406,horse 217407,airplane 217408,bird 217409,frog 217410,dog 217411,bird 217412,dog 217413,frog 217414,automobile 217415,ship 217416,horse 217417,ship 217418,ship 217419,dog 217420,airplane 217421,automobile 217422,cat 217423,automobile 217424,dog 217425,airplane 217426,horse 217427,automobile 217428,airplane 217429,truck 217430,deer 217431,horse 217432,frog 217433,automobile 217434,horse 217435,bird 217436,truck 217437,frog 217438,automobile 217439,cat 217440,cat 217441,horse 217442,horse 217443,automobile 217444,dog 217445,cat 217446,ship 217447,bird 217448,deer 217449,bird 217450,airplane 217451,frog 217452,truck 217453,dog 217454,automobile 217455,deer 217456,truck 217457,deer 217458,ship 217459,truck 217460,cat 217461,truck 217462,cat 217463,deer 217464,dog 217465,bird 217466,truck 217467,airplane 217468,truck 217469,ship 217470,bird 217471,deer 217472,truck 217473,frog 217474,cat 217475,deer 217476,truck 217477,airplane 217478,airplane 217479,frog 217480,cat 217481,deer 217482,cat 217483,deer 217484,deer 217485,cat 217486,ship 217487,dog 217488,deer 217489,deer 217490,horse 217491,deer 217492,deer 217493,frog 217494,ship 217495,cat 217496,airplane 217497,frog 217498,deer 217499,horse 217500,ship 217501,frog 217502,cat 217503,cat 217504,deer 217505,automobile 217506,truck 217507,dog 217508,automobile 217509,deer 217510,deer 217511,dog 217512,bird 217513,cat 217514,truck 217515,deer 217516,automobile 217517,truck 217518,automobile 217519,airplane 217520,automobile 217521,truck 217522,cat 217523,dog 217524,airplane 217525,airplane 217526,cat 217527,horse 217528,bird 217529,deer 217530,deer 217531,frog 217532,frog 217533,bird 217534,bird 217535,truck 217536,ship 217537,dog 217538,deer 217539,deer 217540,cat 217541,truck 217542,horse 217543,bird 217544,ship 217545,cat 217546,truck 217547,ship 217548,frog 217549,ship 217550,deer 217551,horse 217552,bird 217553,frog 217554,truck 217555,bird 217556,airplane 217557,airplane 217558,airplane 217559,dog 217560,dog 217561,frog 217562,automobile 217563,cat 217564,automobile 217565,airplane 217566,cat 217567,frog 217568,dog 217569,horse 217570,airplane 217571,cat 217572,airplane 217573,bird 217574,dog 217575,deer 217576,truck 217577,ship 217578,horse 217579,deer 217580,truck 217581,automobile 217582,dog 217583,dog 217584,cat 217585,frog 217586,bird 217587,deer 217588,airplane 217589,cat 217590,horse 217591,dog 217592,deer 217593,frog 217594,deer 217595,frog 217596,horse 217597,truck 217598,deer 217599,dog 217600,ship 217601,cat 217602,bird 217603,frog 217604,truck 217605,deer 217606,frog 217607,dog 217608,automobile 217609,frog 217610,truck 217611,deer 217612,horse 217613,dog 217614,deer 217615,automobile 217616,dog 217617,dog 217618,dog 217619,frog 217620,deer 217621,ship 217622,frog 217623,ship 217624,horse 217625,cat 217626,automobile 217627,dog 217628,horse 217629,truck 217630,deer 217631,cat 217632,dog 217633,airplane 217634,ship 217635,deer 217636,deer 217637,dog 217638,horse 217639,truck 217640,deer 217641,automobile 217642,truck 217643,airplane 217644,dog 217645,truck 217646,horse 217647,automobile 217648,dog 217649,deer 217650,automobile 217651,truck 217652,deer 217653,cat 217654,bird 217655,horse 217656,horse 217657,cat 217658,airplane 217659,deer 217660,ship 217661,deer 217662,frog 217663,cat 217664,dog 217665,truck 217666,cat 217667,cat 217668,bird 217669,cat 217670,cat 217671,deer 217672,airplane 217673,automobile 217674,horse 217675,dog 217676,automobile 217677,deer 217678,deer 217679,automobile 217680,deer 217681,automobile 217682,cat 217683,deer 217684,automobile 217685,horse 217686,cat 217687,ship 217688,deer 217689,deer 217690,automobile 217691,frog 217692,deer 217693,truck 217694,cat 217695,deer 217696,truck 217697,truck 217698,dog 217699,deer 217700,horse 217701,cat 217702,horse 217703,deer 217704,horse 217705,deer 217706,frog 217707,cat 217708,frog 217709,frog 217710,horse 217711,truck 217712,frog 217713,truck 217714,deer 217715,ship 217716,truck 217717,cat 217718,frog 217719,airplane 217720,truck 217721,cat 217722,automobile 217723,horse 217724,deer 217725,frog 217726,bird 217727,deer 217728,bird 217729,horse 217730,ship 217731,truck 217732,automobile 217733,ship 217734,truck 217735,truck 217736,bird 217737,deer 217738,airplane 217739,airplane 217740,airplane 217741,truck 217742,bird 217743,cat 217744,ship 217745,bird 217746,airplane 217747,truck 217748,frog 217749,dog 217750,dog 217751,horse 217752,airplane 217753,ship 217754,deer 217755,frog 217756,deer 217757,cat 217758,horse 217759,horse 217760,horse 217761,bird 217762,horse 217763,bird 217764,truck 217765,ship 217766,dog 217767,truck 217768,bird 217769,horse 217770,deer 217771,frog 217772,horse 217773,bird 217774,automobile 217775,truck 217776,frog 217777,frog 217778,deer 217779,truck 217780,ship 217781,dog 217782,horse 217783,dog 217784,frog 217785,deer 217786,dog 217787,bird 217788,frog 217789,deer 217790,ship 217791,cat 217792,airplane 217793,automobile 217794,truck 217795,cat 217796,airplane 217797,horse 217798,dog 217799,horse 217800,bird 217801,ship 217802,bird 217803,cat 217804,truck 217805,airplane 217806,dog 217807,automobile 217808,airplane 217809,dog 217810,airplane 217811,horse 217812,airplane 217813,bird 217814,deer 217815,deer 217816,airplane 217817,horse 217818,frog 217819,truck 217820,bird 217821,bird 217822,automobile 217823,dog 217824,dog 217825,truck 217826,truck 217827,ship 217828,deer 217829,truck 217830,bird 217831,bird 217832,truck 217833,airplane 217834,horse 217835,horse 217836,cat 217837,cat 217838,truck 217839,automobile 217840,bird 217841,bird 217842,frog 217843,dog 217844,frog 217845,frog 217846,ship 217847,dog 217848,horse 217849,horse 217850,horse 217851,cat 217852,truck 217853,horse 217854,frog 217855,frog 217856,airplane 217857,bird 217858,deer 217859,horse 217860,dog 217861,deer 217862,truck 217863,cat 217864,automobile 217865,cat 217866,truck 217867,horse 217868,cat 217869,cat 217870,deer 217871,bird 217872,truck 217873,dog 217874,airplane 217875,deer 217876,truck 217877,ship 217878,cat 217879,deer 217880,dog 217881,horse 217882,frog 217883,deer 217884,horse 217885,cat 217886,cat 217887,dog 217888,horse 217889,ship 217890,deer 217891,bird 217892,bird 217893,horse 217894,ship 217895,dog 217896,deer 217897,cat 217898,airplane 217899,airplane 217900,deer 217901,airplane 217902,airplane 217903,cat 217904,bird 217905,frog 217906,cat 217907,ship 217908,automobile 217909,bird 217910,airplane 217911,horse 217912,bird 217913,deer 217914,frog 217915,horse 217916,automobile 217917,dog 217918,cat 217919,truck 217920,bird 217921,ship 217922,ship 217923,airplane 217924,frog 217925,bird 217926,truck 217927,frog 217928,frog 217929,frog 217930,cat 217931,deer 217932,ship 217933,truck 217934,deer 217935,dog 217936,automobile 217937,frog 217938,frog 217939,deer 217940,frog 217941,ship 217942,ship 217943,bird 217944,automobile 217945,frog 217946,deer 217947,truck 217948,truck 217949,ship 217950,dog 217951,airplane 217952,dog 217953,dog 217954,truck 217955,frog 217956,ship 217957,horse 217958,truck 217959,cat 217960,horse 217961,cat 217962,cat 217963,airplane 217964,dog 217965,ship 217966,airplane 217967,frog 217968,truck 217969,airplane 217970,deer 217971,bird 217972,horse 217973,ship 217974,truck 217975,frog 217976,deer 217977,airplane 217978,horse 217979,truck 217980,deer 217981,deer 217982,frog 217983,ship 217984,frog 217985,deer 217986,truck 217987,cat 217988,dog 217989,ship 217990,deer 217991,dog 217992,cat 217993,bird 217994,airplane 217995,truck 217996,cat 217997,ship 217998,horse 217999,deer 218000,horse 218001,truck 218002,airplane 218003,cat 218004,deer 218005,airplane 218006,ship 218007,ship 218008,frog 218009,deer 218010,deer 218011,deer 218012,truck 218013,ship 218014,cat 218015,horse 218016,horse 218017,cat 218018,airplane 218019,cat 218020,frog 218021,truck 218022,bird 218023,bird 218024,ship 218025,airplane 218026,horse 218027,deer 218028,horse 218029,deer 218030,cat 218031,ship 218032,truck 218033,deer 218034,bird 218035,deer 218036,cat 218037,airplane 218038,automobile 218039,bird 218040,ship 218041,ship 218042,cat 218043,cat 218044,horse 218045,deer 218046,horse 218047,dog 218048,bird 218049,horse 218050,frog 218051,bird 218052,ship 218053,dog 218054,airplane 218055,dog 218056,cat 218057,dog 218058,ship 218059,deer 218060,cat 218061,ship 218062,deer 218063,horse 218064,truck 218065,automobile 218066,frog 218067,airplane 218068,deer 218069,deer 218070,truck 218071,ship 218072,deer 218073,truck 218074,cat 218075,frog 218076,frog 218077,frog 218078,frog 218079,deer 218080,bird 218081,cat 218082,automobile 218083,horse 218084,horse 218085,horse 218086,horse 218087,deer 218088,bird 218089,airplane 218090,airplane 218091,dog 218092,truck 218093,automobile 218094,dog 218095,dog 218096,airplane 218097,bird 218098,dog 218099,cat 218100,deer 218101,dog 218102,bird 218103,airplane 218104,airplane 218105,bird 218106,deer 218107,frog 218108,bird 218109,deer 218110,horse 218111,bird 218112,horse 218113,cat 218114,ship 218115,airplane 218116,ship 218117,cat 218118,automobile 218119,ship 218120,dog 218121,horse 218122,dog 218123,frog 218124,dog 218125,truck 218126,cat 218127,cat 218128,deer 218129,deer 218130,truck 218131,dog 218132,truck 218133,truck 218134,bird 218135,bird 218136,ship 218137,bird 218138,bird 218139,deer 218140,bird 218141,truck 218142,frog 218143,bird 218144,dog 218145,airplane 218146,airplane 218147,airplane 218148,deer 218149,bird 218150,automobile 218151,dog 218152,deer 218153,airplane 218154,deer 218155,bird 218156,bird 218157,deer 218158,airplane 218159,dog 218160,deer 218161,cat 218162,deer 218163,airplane 218164,deer 218165,bird 218166,dog 218167,ship 218168,horse 218169,dog 218170,ship 218171,deer 218172,dog 218173,cat 218174,deer 218175,dog 218176,automobile 218177,cat 218178,bird 218179,cat 218180,bird 218181,truck 218182,cat 218183,airplane 218184,dog 218185,bird 218186,airplane 218187,cat 218188,cat 218189,deer 218190,horse 218191,truck 218192,deer 218193,cat 218194,airplane 218195,horse 218196,horse 218197,deer 218198,horse 218199,bird 218200,deer 218201,truck 218202,automobile 218203,cat 218204,frog 218205,truck 218206,ship 218207,airplane 218208,dog 218209,dog 218210,airplane 218211,bird 218212,bird 218213,cat 218214,deer 218215,horse 218216,automobile 218217,dog 218218,horse 218219,bird 218220,truck 218221,dog 218222,ship 218223,airplane 218224,truck 218225,cat 218226,ship 218227,truck 218228,airplane 218229,frog 218230,airplane 218231,automobile 218232,automobile 218233,horse 218234,cat 218235,cat 218236,truck 218237,dog 218238,deer 218239,bird 218240,bird 218241,bird 218242,ship 218243,bird 218244,truck 218245,dog 218246,truck 218247,cat 218248,deer 218249,frog 218250,dog 218251,ship 218252,dog 218253,airplane 218254,ship 218255,deer 218256,dog 218257,deer 218258,ship 218259,airplane 218260,horse 218261,airplane 218262,frog 218263,deer 218264,horse 218265,ship 218266,ship 218267,airplane 218268,dog 218269,frog 218270,cat 218271,bird 218272,cat 218273,dog 218274,ship 218275,truck 218276,automobile 218277,horse 218278,horse 218279,frog 218280,frog 218281,frog 218282,cat 218283,ship 218284,cat 218285,dog 218286,airplane 218287,frog 218288,frog 218289,deer 218290,truck 218291,automobile 218292,airplane 218293,truck 218294,bird 218295,frog 218296,cat 218297,deer 218298,deer 218299,bird 218300,airplane 218301,cat 218302,frog 218303,truck 218304,frog 218305,airplane 218306,deer 218307,dog 218308,deer 218309,frog 218310,truck 218311,frog 218312,airplane 218313,cat 218314,bird 218315,deer 218316,ship 218317,dog 218318,ship 218319,deer 218320,airplane 218321,frog 218322,truck 218323,cat 218324,cat 218325,truck 218326,bird 218327,horse 218328,ship 218329,truck 218330,cat 218331,frog 218332,ship 218333,deer 218334,airplane 218335,deer 218336,frog 218337,airplane 218338,deer 218339,frog 218340,automobile 218341,cat 218342,horse 218343,bird 218344,ship 218345,truck 218346,automobile 218347,deer 218348,automobile 218349,ship 218350,deer 218351,cat 218352,dog 218353,deer 218354,cat 218355,cat 218356,truck 218357,truck 218358,horse 218359,truck 218360,frog 218361,cat 218362,deer 218363,automobile 218364,truck 218365,deer 218366,dog 218367,cat 218368,frog 218369,airplane 218370,bird 218371,frog 218372,dog 218373,deer 218374,truck 218375,truck 218376,bird 218377,frog 218378,truck 218379,dog 218380,dog 218381,cat 218382,automobile 218383,dog 218384,bird 218385,truck 218386,automobile 218387,truck 218388,airplane 218389,frog 218390,airplane 218391,frog 218392,deer 218393,frog 218394,automobile 218395,horse 218396,deer 218397,horse 218398,deer 218399,deer 218400,airplane 218401,cat 218402,bird 218403,truck 218404,frog 218405,deer 218406,ship 218407,automobile 218408,truck 218409,truck 218410,horse 218411,ship 218412,airplane 218413,frog 218414,cat 218415,cat 218416,deer 218417,ship 218418,truck 218419,dog 218420,cat 218421,bird 218422,frog 218423,dog 218424,deer 218425,frog 218426,automobile 218427,dog 218428,cat 218429,ship 218430,bird 218431,dog 218432,cat 218433,horse 218434,cat 218435,frog 218436,airplane 218437,frog 218438,cat 218439,horse 218440,airplane 218441,airplane 218442,frog 218443,bird 218444,horse 218445,cat 218446,truck 218447,bird 218448,ship 218449,horse 218450,deer 218451,dog 218452,horse 218453,airplane 218454,automobile 218455,cat 218456,bird 218457,truck 218458,deer 218459,deer 218460,cat 218461,truck 218462,deer 218463,airplane 218464,frog 218465,horse 218466,truck 218467,airplane 218468,deer 218469,cat 218470,cat 218471,cat 218472,deer 218473,bird 218474,truck 218475,deer 218476,cat 218477,ship 218478,automobile 218479,bird 218480,truck 218481,dog 218482,airplane 218483,frog 218484,dog 218485,automobile 218486,dog 218487,horse 218488,automobile 218489,dog 218490,ship 218491,horse 218492,deer 218493,horse 218494,frog 218495,bird 218496,deer 218497,cat 218498,horse 218499,truck 218500,automobile 218501,frog 218502,frog 218503,airplane 218504,truck 218505,bird 218506,dog 218507,dog 218508,truck 218509,ship 218510,cat 218511,cat 218512,frog 218513,truck 218514,frog 218515,deer 218516,dog 218517,truck 218518,frog 218519,automobile 218520,deer 218521,cat 218522,dog 218523,cat 218524,frog 218525,cat 218526,dog 218527,cat 218528,bird 218529,cat 218530,cat 218531,bird 218532,dog 218533,deer 218534,dog 218535,bird 218536,truck 218537,frog 218538,ship 218539,truck 218540,automobile 218541,airplane 218542,ship 218543,horse 218544,bird 218545,deer 218546,deer 218547,cat 218548,airplane 218549,truck 218550,horse 218551,bird 218552,deer 218553,ship 218554,horse 218555,airplane 218556,horse 218557,airplane 218558,bird 218559,bird 218560,frog 218561,cat 218562,cat 218563,bird 218564,bird 218565,truck 218566,dog 218567,dog 218568,deer 218569,truck 218570,ship 218571,airplane 218572,bird 218573,ship 218574,dog 218575,dog 218576,dog 218577,cat 218578,airplane 218579,horse 218580,horse 218581,deer 218582,dog 218583,airplane 218584,deer 218585,bird 218586,cat 218587,dog 218588,dog 218589,deer 218590,truck 218591,horse 218592,cat 218593,deer 218594,ship 218595,cat 218596,deer 218597,airplane 218598,dog 218599,frog 218600,automobile 218601,frog 218602,ship 218603,bird 218604,horse 218605,ship 218606,horse 218607,cat 218608,deer 218609,airplane 218610,deer 218611,frog 218612,truck 218613,deer 218614,deer 218615,automobile 218616,deer 218617,frog 218618,dog 218619,dog 218620,frog 218621,deer 218622,deer 218623,horse 218624,dog 218625,ship 218626,horse 218627,bird 218628,deer 218629,dog 218630,airplane 218631,automobile 218632,dog 218633,cat 218634,cat 218635,horse 218636,cat 218637,horse 218638,ship 218639,horse 218640,frog 218641,dog 218642,airplane 218643,airplane 218644,bird 218645,cat 218646,frog 218647,frog 218648,cat 218649,ship 218650,dog 218651,truck 218652,automobile 218653,frog 218654,dog 218655,airplane 218656,airplane 218657,truck 218658,truck 218659,truck 218660,frog 218661,automobile 218662,truck 218663,deer 218664,frog 218665,cat 218666,automobile 218667,cat 218668,airplane 218669,frog 218670,deer 218671,cat 218672,dog 218673,cat 218674,frog 218675,dog 218676,dog 218677,deer 218678,deer 218679,bird 218680,cat 218681,truck 218682,dog 218683,ship 218684,frog 218685,ship 218686,bird 218687,cat 218688,deer 218689,deer 218690,ship 218691,airplane 218692,horse 218693,bird 218694,truck 218695,bird 218696,horse 218697,horse 218698,truck 218699,horse 218700,airplane 218701,airplane 218702,automobile 218703,cat 218704,cat 218705,dog 218706,deer 218707,dog 218708,horse 218709,airplane 218710,bird 218711,ship 218712,deer 218713,frog 218714,bird 218715,truck 218716,deer 218717,automobile 218718,ship 218719,deer 218720,cat 218721,ship 218722,deer 218723,dog 218724,deer 218725,deer 218726,frog 218727,deer 218728,cat 218729,ship 218730,bird 218731,deer 218732,automobile 218733,automobile 218734,cat 218735,dog 218736,deer 218737,horse 218738,dog 218739,horse 218740,deer 218741,horse 218742,truck 218743,cat 218744,automobile 218745,automobile 218746,truck 218747,truck 218748,horse 218749,ship 218750,automobile 218751,horse 218752,ship 218753,frog 218754,horse 218755,automobile 218756,cat 218757,cat 218758,horse 218759,frog 218760,deer 218761,deer 218762,truck 218763,deer 218764,frog 218765,ship 218766,bird 218767,airplane 218768,ship 218769,dog 218770,truck 218771,dog 218772,ship 218773,horse 218774,airplane 218775,horse 218776,cat 218777,automobile 218778,dog 218779,cat 218780,truck 218781,bird 218782,cat 218783,deer 218784,deer 218785,deer 218786,cat 218787,cat 218788,airplane 218789,cat 218790,deer 218791,truck 218792,frog 218793,cat 218794,cat 218795,bird 218796,airplane 218797,frog 218798,bird 218799,dog 218800,cat 218801,airplane 218802,truck 218803,horse 218804,deer 218805,deer 218806,frog 218807,deer 218808,airplane 218809,deer 218810,frog 218811,cat 218812,airplane 218813,ship 218814,deer 218815,frog 218816,cat 218817,airplane 218818,truck 218819,deer 218820,truck 218821,bird 218822,dog 218823,bird 218824,airplane 218825,deer 218826,cat 218827,frog 218828,dog 218829,frog 218830,dog 218831,truck 218832,dog 218833,deer 218834,bird 218835,ship 218836,frog 218837,truck 218838,frog 218839,airplane 218840,airplane 218841,bird 218842,frog 218843,bird 218844,cat 218845,frog 218846,bird 218847,ship 218848,ship 218849,cat 218850,deer 218851,frog 218852,horse 218853,deer 218854,airplane 218855,dog 218856,airplane 218857,frog 218858,bird 218859,deer 218860,deer 218861,deer 218862,automobile 218863,ship 218864,dog 218865,deer 218866,deer 218867,bird 218868,frog 218869,automobile 218870,frog 218871,deer 218872,deer 218873,cat 218874,airplane 218875,deer 218876,bird 218877,frog 218878,frog 218879,cat 218880,bird 218881,deer 218882,cat 218883,airplane 218884,deer 218885,bird 218886,horse 218887,truck 218888,deer 218889,deer 218890,frog 218891,ship 218892,deer 218893,cat 218894,bird 218895,dog 218896,frog 218897,cat 218898,ship 218899,airplane 218900,deer 218901,horse 218902,dog 218903,cat 218904,cat 218905,ship 218906,airplane 218907,horse 218908,bird 218909,deer 218910,dog 218911,horse 218912,ship 218913,deer 218914,dog 218915,frog 218916,bird 218917,airplane 218918,horse 218919,frog 218920,ship 218921,truck 218922,automobile 218923,bird 218924,truck 218925,truck 218926,truck 218927,frog 218928,cat 218929,dog 218930,frog 218931,deer 218932,cat 218933,cat 218934,deer 218935,ship 218936,frog 218937,frog 218938,ship 218939,dog 218940,frog 218941,ship 218942,truck 218943,horse 218944,truck 218945,ship 218946,horse 218947,frog 218948,automobile 218949,automobile 218950,frog 218951,bird 218952,deer 218953,bird 218954,cat 218955,bird 218956,frog 218957,airplane 218958,ship 218959,truck 218960,bird 218961,truck 218962,horse 218963,bird 218964,dog 218965,dog 218966,deer 218967,airplane 218968,dog 218969,dog 218970,frog 218971,ship 218972,deer 218973,dog 218974,cat 218975,deer 218976,automobile 218977,cat 218978,dog 218979,frog 218980,frog 218981,cat 218982,bird 218983,frog 218984,truck 218985,truck 218986,ship 218987,horse 218988,truck 218989,airplane 218990,airplane 218991,airplane 218992,deer 218993,horse 218994,frog 218995,frog 218996,airplane 218997,cat 218998,deer 218999,automobile 219000,truck 219001,ship 219002,cat 219003,cat 219004,ship 219005,automobile 219006,dog 219007,cat 219008,deer 219009,deer 219010,frog 219011,ship 219012,airplane 219013,dog 219014,cat 219015,ship 219016,horse 219017,frog 219018,dog 219019,bird 219020,ship 219021,dog 219022,dog 219023,airplane 219024,truck 219025,cat 219026,frog 219027,bird 219028,frog 219029,dog 219030,truck 219031,ship 219032,truck 219033,truck 219034,cat 219035,deer 219036,truck 219037,dog 219038,bird 219039,deer 219040,truck 219041,horse 219042,bird 219043,deer 219044,airplane 219045,ship 219046,truck 219047,airplane 219048,dog 219049,cat 219050,airplane 219051,frog 219052,deer 219053,airplane 219054,horse 219055,frog 219056,cat 219057,dog 219058,automobile 219059,ship 219060,bird 219061,cat 219062,horse 219063,automobile 219064,cat 219065,automobile 219066,cat 219067,ship 219068,deer 219069,horse 219070,ship 219071,bird 219072,cat 219073,deer 219074,deer 219075,truck 219076,airplane 219077,horse 219078,horse 219079,truck 219080,dog 219081,deer 219082,truck 219083,deer 219084,cat 219085,airplane 219086,cat 219087,airplane 219088,airplane 219089,frog 219090,deer 219091,frog 219092,horse 219093,frog 219094,cat 219095,dog 219096,ship 219097,bird 219098,cat 219099,dog 219100,airplane 219101,frog 219102,automobile 219103,bird 219104,dog 219105,horse 219106,bird 219107,cat 219108,automobile 219109,dog 219110,airplane 219111,bird 219112,dog 219113,truck 219114,automobile 219115,deer 219116,airplane 219117,ship 219118,cat 219119,ship 219120,cat 219121,airplane 219122,frog 219123,airplane 219124,deer 219125,dog 219126,cat 219127,frog 219128,ship 219129,ship 219130,horse 219131,deer 219132,ship 219133,bird 219134,ship 219135,dog 219136,dog 219137,horse 219138,deer 219139,deer 219140,truck 219141,cat 219142,horse 219143,dog 219144,ship 219145,deer 219146,bird 219147,automobile 219148,automobile 219149,truck 219150,deer 219151,deer 219152,dog 219153,truck 219154,cat 219155,frog 219156,horse 219157,cat 219158,frog 219159,horse 219160,airplane 219161,deer 219162,bird 219163,bird 219164,ship 219165,frog 219166,truck 219167,deer 219168,deer 219169,dog 219170,truck 219171,horse 219172,horse 219173,frog 219174,deer 219175,bird 219176,bird 219177,cat 219178,automobile 219179,ship 219180,bird 219181,truck 219182,airplane 219183,deer 219184,ship 219185,deer 219186,deer 219187,deer 219188,bird 219189,horse 219190,bird 219191,cat 219192,bird 219193,truck 219194,bird 219195,deer 219196,cat 219197,truck 219198,truck 219199,bird 219200,cat 219201,truck 219202,deer 219203,airplane 219204,deer 219205,bird 219206,deer 219207,horse 219208,horse 219209,cat 219210,truck 219211,horse 219212,bird 219213,truck 219214,ship 219215,deer 219216,bird 219217,deer 219218,frog 219219,dog 219220,frog 219221,horse 219222,cat 219223,ship 219224,truck 219225,cat 219226,dog 219227,cat 219228,automobile 219229,cat 219230,dog 219231,bird 219232,dog 219233,cat 219234,deer 219235,deer 219236,cat 219237,ship 219238,dog 219239,dog 219240,airplane 219241,dog 219242,cat 219243,horse 219244,dog 219245,cat 219246,airplane 219247,horse 219248,truck 219249,ship 219250,ship 219251,airplane 219252,cat 219253,cat 219254,cat 219255,airplane 219256,horse 219257,deer 219258,ship 219259,deer 219260,deer 219261,ship 219262,cat 219263,truck 219264,ship 219265,automobile 219266,cat 219267,bird 219268,cat 219269,cat 219270,ship 219271,automobile 219272,ship 219273,frog 219274,dog 219275,bird 219276,cat 219277,automobile 219278,cat 219279,airplane 219280,horse 219281,cat 219282,bird 219283,frog 219284,automobile 219285,deer 219286,automobile 219287,dog 219288,frog 219289,airplane 219290,frog 219291,truck 219292,airplane 219293,truck 219294,frog 219295,dog 219296,cat 219297,horse 219298,truck 219299,cat 219300,dog 219301,airplane 219302,cat 219303,airplane 219304,dog 219305,bird 219306,airplane 219307,cat 219308,cat 219309,ship 219310,dog 219311,airplane 219312,deer 219313,dog 219314,cat 219315,ship 219316,cat 219317,horse 219318,ship 219319,dog 219320,dog 219321,cat 219322,deer 219323,airplane 219324,deer 219325,cat 219326,airplane 219327,airplane 219328,bird 219329,horse 219330,truck 219331,ship 219332,dog 219333,deer 219334,frog 219335,horse 219336,airplane 219337,airplane 219338,ship 219339,automobile 219340,dog 219341,cat 219342,cat 219343,truck 219344,frog 219345,truck 219346,ship 219347,automobile 219348,deer 219349,dog 219350,truck 219351,frog 219352,deer 219353,airplane 219354,airplane 219355,horse 219356,deer 219357,deer 219358,dog 219359,bird 219360,cat 219361,dog 219362,airplane 219363,deer 219364,automobile 219365,airplane 219366,dog 219367,horse 219368,deer 219369,horse 219370,truck 219371,bird 219372,truck 219373,ship 219374,horse 219375,truck 219376,horse 219377,automobile 219378,cat 219379,frog 219380,deer 219381,bird 219382,cat 219383,cat 219384,automobile 219385,truck 219386,dog 219387,deer 219388,ship 219389,horse 219390,truck 219391,automobile 219392,cat 219393,deer 219394,truck 219395,dog 219396,horse 219397,cat 219398,frog 219399,airplane 219400,bird 219401,deer 219402,horse 219403,cat 219404,dog 219405,frog 219406,cat 219407,truck 219408,horse 219409,automobile 219410,dog 219411,cat 219412,horse 219413,deer 219414,horse 219415,airplane 219416,deer 219417,horse 219418,cat 219419,truck 219420,bird 219421,cat 219422,dog 219423,deer 219424,cat 219425,frog 219426,cat 219427,dog 219428,horse 219429,dog 219430,airplane 219431,frog 219432,horse 219433,cat 219434,cat 219435,frog 219436,airplane 219437,dog 219438,cat 219439,airplane 219440,dog 219441,dog 219442,dog 219443,cat 219444,airplane 219445,ship 219446,ship 219447,frog 219448,cat 219449,automobile 219450,cat 219451,automobile 219452,frog 219453,truck 219454,dog 219455,dog 219456,truck 219457,frog 219458,truck 219459,frog 219460,horse 219461,truck 219462,deer 219463,automobile 219464,cat 219465,frog 219466,horse 219467,deer 219468,ship 219469,airplane 219470,frog 219471,automobile 219472,deer 219473,ship 219474,cat 219475,cat 219476,dog 219477,bird 219478,bird 219479,automobile 219480,airplane 219481,cat 219482,airplane 219483,horse 219484,airplane 219485,truck 219486,bird 219487,ship 219488,cat 219489,truck 219490,dog 219491,cat 219492,horse 219493,cat 219494,cat 219495,cat 219496,frog 219497,cat 219498,deer 219499,ship 219500,deer 219501,horse 219502,bird 219503,bird 219504,truck 219505,automobile 219506,cat 219507,ship 219508,cat 219509,horse 219510,dog 219511,deer 219512,airplane 219513,horse 219514,cat 219515,automobile 219516,deer 219517,cat 219518,cat 219519,automobile 219520,cat 219521,frog 219522,frog 219523,cat 219524,horse 219525,horse 219526,bird 219527,deer 219528,bird 219529,deer 219530,truck 219531,truck 219532,deer 219533,cat 219534,cat 219535,bird 219536,cat 219537,deer 219538,frog 219539,truck 219540,cat 219541,cat 219542,bird 219543,airplane 219544,airplane 219545,deer 219546,airplane 219547,dog 219548,truck 219549,horse 219550,dog 219551,frog 219552,frog 219553,truck 219554,airplane 219555,truck 219556,frog 219557,automobile 219558,ship 219559,ship 219560,automobile 219561,frog 219562,airplane 219563,deer 219564,horse 219565,cat 219566,cat 219567,ship 219568,frog 219569,airplane 219570,ship 219571,cat 219572,dog 219573,horse 219574,automobile 219575,horse 219576,dog 219577,frog 219578,horse 219579,cat 219580,dog 219581,dog 219582,deer 219583,ship 219584,cat 219585,bird 219586,frog 219587,airplane 219588,deer 219589,automobile 219590,deer 219591,cat 219592,truck 219593,frog 219594,horse 219595,frog 219596,airplane 219597,deer 219598,truck 219599,airplane 219600,airplane 219601,truck 219602,deer 219603,cat 219604,truck 219605,ship 219606,bird 219607,horse 219608,deer 219609,cat 219610,cat 219611,truck 219612,dog 219613,deer 219614,dog 219615,frog 219616,frog 219617,airplane 219618,deer 219619,bird 219620,airplane 219621,ship 219622,frog 219623,cat 219624,automobile 219625,horse 219626,frog 219627,horse 219628,airplane 219629,deer 219630,airplane 219631,dog 219632,horse 219633,truck 219634,deer 219635,bird 219636,airplane 219637,cat 219638,dog 219639,deer 219640,deer 219641,truck 219642,deer 219643,bird 219644,automobile 219645,bird 219646,ship 219647,horse 219648,bird 219649,deer 219650,frog 219651,deer 219652,frog 219653,deer 219654,horse 219655,deer 219656,truck 219657,ship 219658,airplane 219659,airplane 219660,frog 219661,dog 219662,ship 219663,bird 219664,dog 219665,deer 219666,dog 219667,bird 219668,ship 219669,frog 219670,ship 219671,dog 219672,airplane 219673,cat 219674,deer 219675,bird 219676,bird 219677,cat 219678,dog 219679,dog 219680,truck 219681,ship 219682,automobile 219683,airplane 219684,ship 219685,automobile 219686,automobile 219687,frog 219688,frog 219689,frog 219690,bird 219691,airplane 219692,airplane 219693,bird 219694,truck 219695,truck 219696,deer 219697,bird 219698,airplane 219699,deer 219700,deer 219701,truck 219702,cat 219703,frog 219704,ship 219705,airplane 219706,truck 219707,cat 219708,ship 219709,truck 219710,truck 219711,automobile 219712,deer 219713,truck 219714,airplane 219715,ship 219716,frog 219717,bird 219718,horse 219719,airplane 219720,dog 219721,dog 219722,horse 219723,dog 219724,frog 219725,airplane 219726,airplane 219727,truck 219728,deer 219729,airplane 219730,cat 219731,bird 219732,horse 219733,automobile 219734,dog 219735,truck 219736,frog 219737,frog 219738,dog 219739,airplane 219740,frog 219741,horse 219742,horse 219743,dog 219744,airplane 219745,truck 219746,horse 219747,airplane 219748,dog 219749,bird 219750,dog 219751,truck 219752,cat 219753,frog 219754,deer 219755,horse 219756,horse 219757,airplane 219758,automobile 219759,deer 219760,cat 219761,frog 219762,deer 219763,cat 219764,dog 219765,ship 219766,deer 219767,ship 219768,ship 219769,truck 219770,airplane 219771,frog 219772,truck 219773,truck 219774,truck 219775,deer 219776,cat 219777,airplane 219778,ship 219779,deer 219780,ship 219781,deer 219782,cat 219783,truck 219784,automobile 219785,frog 219786,dog 219787,cat 219788,ship 219789,dog 219790,cat 219791,automobile 219792,automobile 219793,deer 219794,deer 219795,dog 219796,deer 219797,airplane 219798,cat 219799,ship 219800,automobile 219801,frog 219802,dog 219803,truck 219804,truck 219805,dog 219806,horse 219807,bird 219808,bird 219809,cat 219810,cat 219811,airplane 219812,airplane 219813,deer 219814,frog 219815,horse 219816,automobile 219817,automobile 219818,airplane 219819,ship 219820,frog 219821,frog 219822,frog 219823,deer 219824,airplane 219825,bird 219826,automobile 219827,bird 219828,dog 219829,automobile 219830,dog 219831,truck 219832,truck 219833,automobile 219834,truck 219835,cat 219836,airplane 219837,frog 219838,airplane 219839,cat 219840,frog 219841,dog 219842,bird 219843,cat 219844,airplane 219845,airplane 219846,dog 219847,cat 219848,ship 219849,truck 219850,frog 219851,horse 219852,bird 219853,cat 219854,deer 219855,truck 219856,cat 219857,dog 219858,airplane 219859,deer 219860,bird 219861,frog 219862,horse 219863,automobile 219864,cat 219865,cat 219866,bird 219867,cat 219868,automobile 219869,ship 219870,ship 219871,frog 219872,deer 219873,frog 219874,deer 219875,deer 219876,deer 219877,deer 219878,deer 219879,horse 219880,cat 219881,truck 219882,deer 219883,ship 219884,truck 219885,horse 219886,bird 219887,cat 219888,deer 219889,frog 219890,airplane 219891,deer 219892,ship 219893,ship 219894,frog 219895,bird 219896,frog 219897,automobile 219898,horse 219899,automobile 219900,dog 219901,cat 219902,ship 219903,bird 219904,bird 219905,frog 219906,cat 219907,dog 219908,airplane 219909,dog 219910,bird 219911,deer 219912,truck 219913,frog 219914,dog 219915,horse 219916,dog 219917,bird 219918,horse 219919,frog 219920,frog 219921,truck 219922,airplane 219923,dog 219924,frog 219925,airplane 219926,truck 219927,deer 219928,airplane 219929,truck 219930,truck 219931,dog 219932,deer 219933,automobile 219934,airplane 219935,bird 219936,truck 219937,dog 219938,airplane 219939,dog 219940,airplane 219941,dog 219942,deer 219943,cat 219944,bird 219945,frog 219946,horse 219947,deer 219948,frog 219949,horse 219950,ship 219951,dog 219952,truck 219953,horse 219954,deer 219955,deer 219956,ship 219957,deer 219958,cat 219959,frog 219960,cat 219961,airplane 219962,automobile 219963,dog 219964,frog 219965,deer 219966,cat 219967,automobile 219968,ship 219969,ship 219970,bird 219971,ship 219972,frog 219973,dog 219974,cat 219975,dog 219976,airplane 219977,ship 219978,dog 219979,bird 219980,frog 219981,dog 219982,horse 219983,cat 219984,horse 219985,deer 219986,airplane 219987,cat 219988,airplane 219989,cat 219990,automobile 219991,bird 219992,ship 219993,dog 219994,automobile 219995,horse 219996,frog 219997,airplane 219998,horse 219999,deer 220000,dog 220001,frog 220002,automobile 220003,bird 220004,truck 220005,ship 220006,cat 220007,ship 220008,horse 220009,dog 220010,frog 220011,automobile 220012,automobile 220013,cat 220014,cat 220015,deer 220016,bird 220017,dog 220018,truck 220019,ship 220020,airplane 220021,deer 220022,bird 220023,deer 220024,ship 220025,ship 220026,bird 220027,truck 220028,cat 220029,airplane 220030,automobile 220031,airplane 220032,truck 220033,cat 220034,deer 220035,truck 220036,dog 220037,cat 220038,truck 220039,bird 220040,deer 220041,frog 220042,ship 220043,horse 220044,horse 220045,cat 220046,automobile 220047,truck 220048,cat 220049,dog 220050,deer 220051,truck 220052,dog 220053,cat 220054,frog 220055,deer 220056,truck 220057,airplane 220058,dog 220059,truck 220060,ship 220061,airplane 220062,horse 220063,horse 220064,cat 220065,dog 220066,ship 220067,automobile 220068,airplane 220069,deer 220070,deer 220071,automobile 220072,truck 220073,cat 220074,deer 220075,deer 220076,horse 220077,truck 220078,cat 220079,airplane 220080,bird 220081,cat 220082,deer 220083,bird 220084,deer 220085,airplane 220086,deer 220087,deer 220088,ship 220089,dog 220090,ship 220091,airplane 220092,airplane 220093,automobile 220094,frog 220095,deer 220096,cat 220097,automobile 220098,automobile 220099,cat 220100,deer 220101,horse 220102,horse 220103,cat 220104,bird 220105,dog 220106,bird 220107,automobile 220108,truck 220109,dog 220110,horse 220111,ship 220112,cat 220113,deer 220114,frog 220115,cat 220116,frog 220117,frog 220118,deer 220119,dog 220120,deer 220121,cat 220122,horse 220123,dog 220124,cat 220125,horse 220126,horse 220127,cat 220128,dog 220129,truck 220130,deer 220131,horse 220132,deer 220133,dog 220134,deer 220135,truck 220136,truck 220137,truck 220138,frog 220139,frog 220140,truck 220141,frog 220142,ship 220143,automobile 220144,cat 220145,dog 220146,cat 220147,deer 220148,truck 220149,dog 220150,cat 220151,frog 220152,cat 220153,cat 220154,cat 220155,bird 220156,ship 220157,frog 220158,frog 220159,frog 220160,horse 220161,frog 220162,bird 220163,ship 220164,deer 220165,cat 220166,truck 220167,frog 220168,automobile 220169,truck 220170,dog 220171,frog 220172,automobile 220173,airplane 220174,dog 220175,horse 220176,dog 220177,cat 220178,frog 220179,dog 220180,frog 220181,dog 220182,truck 220183,cat 220184,horse 220185,dog 220186,ship 220187,horse 220188,automobile 220189,cat 220190,bird 220191,dog 220192,truck 220193,frog 220194,automobile 220195,dog 220196,cat 220197,ship 220198,frog 220199,horse 220200,truck 220201,airplane 220202,cat 220203,cat 220204,deer 220205,bird 220206,airplane 220207,dog 220208,deer 220209,truck 220210,horse 220211,airplane 220212,ship 220213,deer 220214,cat 220215,bird 220216,cat 220217,automobile 220218,bird 220219,horse 220220,frog 220221,truck 220222,bird 220223,frog 220224,automobile 220225,automobile 220226,airplane 220227,dog 220228,cat 220229,automobile 220230,frog 220231,airplane 220232,deer 220233,ship 220234,deer 220235,cat 220236,dog 220237,horse 220238,airplane 220239,deer 220240,cat 220241,deer 220242,bird 220243,cat 220244,bird 220245,dog 220246,airplane 220247,dog 220248,truck 220249,bird 220250,bird 220251,deer 220252,ship 220253,ship 220254,deer 220255,truck 220256,airplane 220257,deer 220258,airplane 220259,dog 220260,frog 220261,cat 220262,automobile 220263,horse 220264,automobile 220265,dog 220266,deer 220267,horse 220268,bird 220269,automobile 220270,automobile 220271,horse 220272,ship 220273,ship 220274,bird 220275,dog 220276,deer 220277,truck 220278,frog 220279,deer 220280,deer 220281,automobile 220282,automobile 220283,horse 220284,dog 220285,horse 220286,truck 220287,frog 220288,automobile 220289,dog 220290,frog 220291,airplane 220292,dog 220293,deer 220294,dog 220295,horse 220296,deer 220297,airplane 220298,bird 220299,cat 220300,automobile 220301,deer 220302,horse 220303,airplane 220304,deer 220305,dog 220306,cat 220307,automobile 220308,bird 220309,bird 220310,airplane 220311,bird 220312,frog 220313,horse 220314,dog 220315,frog 220316,deer 220317,dog 220318,horse 220319,horse 220320,bird 220321,horse 220322,deer 220323,automobile 220324,automobile 220325,cat 220326,ship 220327,cat 220328,bird 220329,horse 220330,cat 220331,cat 220332,airplane 220333,automobile 220334,frog 220335,automobile 220336,frog 220337,airplane 220338,bird 220339,horse 220340,horse 220341,cat 220342,frog 220343,truck 220344,cat 220345,truck 220346,bird 220347,airplane 220348,cat 220349,ship 220350,deer 220351,ship 220352,horse 220353,frog 220354,frog 220355,horse 220356,deer 220357,cat 220358,frog 220359,cat 220360,truck 220361,truck 220362,bird 220363,horse 220364,horse 220365,airplane 220366,truck 220367,cat 220368,bird 220369,deer 220370,ship 220371,bird 220372,cat 220373,frog 220374,horse 220375,deer 220376,deer 220377,frog 220378,deer 220379,horse 220380,cat 220381,airplane 220382,ship 220383,deer 220384,ship 220385,horse 220386,cat 220387,frog 220388,cat 220389,ship 220390,cat 220391,airplane 220392,bird 220393,deer 220394,horse 220395,bird 220396,truck 220397,horse 220398,dog 220399,horse 220400,ship 220401,truck 220402,horse 220403,automobile 220404,frog 220405,automobile 220406,bird 220407,truck 220408,deer 220409,cat 220410,deer 220411,truck 220412,bird 220413,horse 220414,automobile 220415,truck 220416,frog 220417,horse 220418,automobile 220419,frog 220420,automobile 220421,bird 220422,cat 220423,deer 220424,deer 220425,frog 220426,horse 220427,bird 220428,bird 220429,bird 220430,bird 220431,truck 220432,horse 220433,truck 220434,ship 220435,deer 220436,dog 220437,bird 220438,cat 220439,cat 220440,bird 220441,truck 220442,cat 220443,cat 220444,automobile 220445,dog 220446,cat 220447,ship 220448,airplane 220449,truck 220450,deer 220451,dog 220452,truck 220453,deer 220454,deer 220455,bird 220456,deer 220457,dog 220458,cat 220459,automobile 220460,ship 220461,truck 220462,truck 220463,truck 220464,frog 220465,frog 220466,bird 220467,cat 220468,frog 220469,bird 220470,deer 220471,deer 220472,deer 220473,truck 220474,deer 220475,airplane 220476,cat 220477,airplane 220478,dog 220479,deer 220480,automobile 220481,frog 220482,dog 220483,deer 220484,frog 220485,frog 220486,deer 220487,frog 220488,dog 220489,cat 220490,truck 220491,dog 220492,horse 220493,automobile 220494,dog 220495,deer 220496,bird 220497,ship 220498,horse 220499,automobile 220500,automobile 220501,truck 220502,automobile 220503,deer 220504,truck 220505,ship 220506,frog 220507,horse 220508,cat 220509,bird 220510,dog 220511,cat 220512,ship 220513,bird 220514,airplane 220515,frog 220516,dog 220517,truck 220518,dog 220519,frog 220520,truck 220521,dog 220522,frog 220523,dog 220524,dog 220525,deer 220526,bird 220527,frog 220528,airplane 220529,deer 220530,bird 220531,deer 220532,bird 220533,horse 220534,frog 220535,dog 220536,frog 220537,frog 220538,horse 220539,truck 220540,frog 220541,cat 220542,bird 220543,dog 220544,deer 220545,dog 220546,frog 220547,frog 220548,cat 220549,truck 220550,bird 220551,dog 220552,frog 220553,truck 220554,frog 220555,cat 220556,bird 220557,frog 220558,horse 220559,cat 220560,ship 220561,airplane 220562,bird 220563,truck 220564,ship 220565,truck 220566,truck 220567,cat 220568,dog 220569,airplane 220570,airplane 220571,dog 220572,bird 220573,truck 220574,cat 220575,horse 220576,frog 220577,cat 220578,automobile 220579,dog 220580,cat 220581,airplane 220582,bird 220583,horse 220584,deer 220585,automobile 220586,automobile 220587,frog 220588,dog 220589,truck 220590,airplane 220591,ship 220592,truck 220593,horse 220594,automobile 220595,cat 220596,ship 220597,dog 220598,bird 220599,deer 220600,deer 220601,ship 220602,frog 220603,automobile 220604,cat 220605,ship 220606,bird 220607,ship 220608,airplane 220609,cat 220610,deer 220611,automobile 220612,deer 220613,frog 220614,frog 220615,truck 220616,cat 220617,cat 220618,dog 220619,deer 220620,airplane 220621,horse 220622,dog 220623,cat 220624,ship 220625,bird 220626,horse 220627,frog 220628,horse 220629,frog 220630,ship 220631,deer 220632,bird 220633,airplane 220634,airplane 220635,truck 220636,ship 220637,airplane 220638,frog 220639,cat 220640,bird 220641,horse 220642,bird 220643,airplane 220644,bird 220645,truck 220646,horse 220647,ship 220648,truck 220649,automobile 220650,cat 220651,frog 220652,cat 220653,deer 220654,deer 220655,truck 220656,horse 220657,horse 220658,cat 220659,cat 220660,frog 220661,cat 220662,cat 220663,horse 220664,cat 220665,airplane 220666,ship 220667,deer 220668,cat 220669,ship 220670,frog 220671,airplane 220672,horse 220673,bird 220674,airplane 220675,frog 220676,frog 220677,deer 220678,automobile 220679,frog 220680,bird 220681,airplane 220682,ship 220683,airplane 220684,bird 220685,horse 220686,bird 220687,cat 220688,ship 220689,cat 220690,automobile 220691,airplane 220692,ship 220693,cat 220694,deer 220695,cat 220696,frog 220697,horse 220698,ship 220699,deer 220700,horse 220701,automobile 220702,automobile 220703,cat 220704,dog 220705,cat 220706,cat 220707,dog 220708,truck 220709,dog 220710,deer 220711,dog 220712,horse 220713,deer 220714,horse 220715,dog 220716,deer 220717,horse 220718,dog 220719,airplane 220720,dog 220721,truck 220722,ship 220723,frog 220724,frog 220725,ship 220726,horse 220727,airplane 220728,ship 220729,cat 220730,cat 220731,truck 220732,truck 220733,cat 220734,bird 220735,automobile 220736,bird 220737,frog 220738,bird 220739,frog 220740,truck 220741,deer 220742,ship 220743,horse 220744,airplane 220745,cat 220746,deer 220747,automobile 220748,bird 220749,horse 220750,bird 220751,truck 220752,truck 220753,airplane 220754,deer 220755,horse 220756,automobile 220757,truck 220758,horse 220759,airplane 220760,horse 220761,cat 220762,automobile 220763,automobile 220764,ship 220765,ship 220766,horse 220767,deer 220768,dog 220769,bird 220770,truck 220771,airplane 220772,horse 220773,truck 220774,airplane 220775,cat 220776,horse 220777,airplane 220778,frog 220779,dog 220780,cat 220781,ship 220782,bird 220783,deer 220784,truck 220785,deer 220786,bird 220787,dog 220788,horse 220789,ship 220790,dog 220791,cat 220792,cat 220793,airplane 220794,airplane 220795,horse 220796,cat 220797,ship 220798,automobile 220799,ship 220800,ship 220801,airplane 220802,dog 220803,cat 220804,horse 220805,frog 220806,dog 220807,deer 220808,automobile 220809,deer 220810,truck 220811,dog 220812,airplane 220813,cat 220814,dog 220815,ship 220816,truck 220817,horse 220818,deer 220819,bird 220820,ship 220821,airplane 220822,airplane 220823,horse 220824,cat 220825,horse 220826,dog 220827,truck 220828,dog 220829,bird 220830,deer 220831,frog 220832,horse 220833,horse 220834,deer 220835,automobile 220836,deer 220837,bird 220838,airplane 220839,cat 220840,deer 220841,airplane 220842,frog 220843,airplane 220844,horse 220845,deer 220846,automobile 220847,airplane 220848,cat 220849,deer 220850,ship 220851,automobile 220852,automobile 220853,deer 220854,cat 220855,dog 220856,cat 220857,horse 220858,frog 220859,cat 220860,truck 220861,frog 220862,bird 220863,automobile 220864,ship 220865,cat 220866,dog 220867,cat 220868,airplane 220869,bird 220870,dog 220871,deer 220872,cat 220873,horse 220874,dog 220875,automobile 220876,cat 220877,bird 220878,ship 220879,bird 220880,automobile 220881,deer 220882,horse 220883,automobile 220884,cat 220885,deer 220886,dog 220887,frog 220888,deer 220889,ship 220890,truck 220891,truck 220892,airplane 220893,ship 220894,automobile 220895,dog 220896,automobile 220897,truck 220898,dog 220899,frog 220900,frog 220901,cat 220902,deer 220903,deer 220904,cat 220905,dog 220906,ship 220907,frog 220908,airplane 220909,automobile 220910,frog 220911,dog 220912,truck 220913,bird 220914,deer 220915,ship 220916,airplane 220917,bird 220918,truck 220919,airplane 220920,airplane 220921,bird 220922,frog 220923,automobile 220924,bird 220925,horse 220926,cat 220927,horse 220928,deer 220929,frog 220930,ship 220931,truck 220932,deer 220933,airplane 220934,truck 220935,airplane 220936,cat 220937,horse 220938,deer 220939,horse 220940,dog 220941,deer 220942,airplane 220943,deer 220944,horse 220945,frog 220946,airplane 220947,deer 220948,cat 220949,cat 220950,dog 220951,deer 220952,horse 220953,ship 220954,ship 220955,horse 220956,dog 220957,cat 220958,airplane 220959,truck 220960,automobile 220961,horse 220962,deer 220963,horse 220964,horse 220965,horse 220966,cat 220967,cat 220968,horse 220969,truck 220970,deer 220971,truck 220972,deer 220973,dog 220974,cat 220975,bird 220976,cat 220977,dog 220978,bird 220979,automobile 220980,horse 220981,deer 220982,automobile 220983,airplane 220984,deer 220985,cat 220986,bird 220987,deer 220988,cat 220989,horse 220990,airplane 220991,ship 220992,ship 220993,truck 220994,deer 220995,deer 220996,deer 220997,horse 220998,cat 220999,dog 221000,horse 221001,airplane 221002,dog 221003,truck 221004,deer 221005,dog 221006,automobile 221007,deer 221008,truck 221009,frog 221010,dog 221011,dog 221012,airplane 221013,deer 221014,bird 221015,automobile 221016,deer 221017,automobile 221018,cat 221019,cat 221020,airplane 221021,horse 221022,horse 221023,airplane 221024,deer 221025,automobile 221026,airplane 221027,ship 221028,frog 221029,dog 221030,horse 221031,dog 221032,truck 221033,dog 221034,frog 221035,bird 221036,dog 221037,truck 221038,deer 221039,ship 221040,ship 221041,deer 221042,automobile 221043,dog 221044,horse 221045,bird 221046,bird 221047,deer 221048,truck 221049,horse 221050,ship 221051,bird 221052,ship 221053,deer 221054,deer 221055,bird 221056,truck 221057,bird 221058,bird 221059,dog 221060,airplane 221061,deer 221062,frog 221063,automobile 221064,frog 221065,ship 221066,ship 221067,bird 221068,cat 221069,truck 221070,bird 221071,airplane 221072,airplane 221073,cat 221074,cat 221075,frog 221076,deer 221077,cat 221078,bird 221079,horse 221080,dog 221081,ship 221082,deer 221083,ship 221084,ship 221085,frog 221086,truck 221087,deer 221088,frog 221089,ship 221090,horse 221091,horse 221092,bird 221093,deer 221094,cat 221095,deer 221096,ship 221097,ship 221098,dog 221099,airplane 221100,deer 221101,cat 221102,bird 221103,horse 221104,dog 221105,horse 221106,truck 221107,automobile 221108,automobile 221109,dog 221110,truck 221111,bird 221112,cat 221113,horse 221114,cat 221115,frog 221116,bird 221117,cat 221118,deer 221119,cat 221120,deer 221121,dog 221122,airplane 221123,cat 221124,airplane 221125,horse 221126,dog 221127,deer 221128,cat 221129,truck 221130,cat 221131,bird 221132,frog 221133,frog 221134,truck 221135,cat 221136,automobile 221137,dog 221138,airplane 221139,deer 221140,truck 221141,airplane 221142,airplane 221143,horse 221144,deer 221145,deer 221146,horse 221147,horse 221148,horse 221149,deer 221150,frog 221151,bird 221152,ship 221153,automobile 221154,cat 221155,horse 221156,horse 221157,frog 221158,automobile 221159,frog 221160,airplane 221161,dog 221162,cat 221163,deer 221164,deer 221165,deer 221166,frog 221167,bird 221168,cat 221169,dog 221170,dog 221171,dog 221172,horse 221173,airplane 221174,deer 221175,dog 221176,cat 221177,cat 221178,cat 221179,automobile 221180,deer 221181,deer 221182,truck 221183,deer 221184,truck 221185,ship 221186,airplane 221187,automobile 221188,dog 221189,bird 221190,truck 221191,ship 221192,dog 221193,dog 221194,ship 221195,truck 221196,airplane 221197,deer 221198,automobile 221199,cat 221200,horse 221201,horse 221202,airplane 221203,airplane 221204,dog 221205,deer 221206,deer 221207,deer 221208,dog 221209,airplane 221210,frog 221211,frog 221212,airplane 221213,horse 221214,bird 221215,bird 221216,bird 221217,frog 221218,cat 221219,airplane 221220,horse 221221,truck 221222,cat 221223,cat 221224,bird 221225,horse 221226,ship 221227,cat 221228,bird 221229,cat 221230,dog 221231,horse 221232,ship 221233,dog 221234,truck 221235,dog 221236,deer 221237,cat 221238,truck 221239,airplane 221240,horse 221241,truck 221242,cat 221243,cat 221244,ship 221245,airplane 221246,frog 221247,airplane 221248,bird 221249,ship 221250,automobile 221251,airplane 221252,frog 221253,truck 221254,horse 221255,truck 221256,airplane 221257,ship 221258,automobile 221259,ship 221260,airplane 221261,bird 221262,deer 221263,dog 221264,truck 221265,cat 221266,airplane 221267,horse 221268,dog 221269,deer 221270,automobile 221271,deer 221272,ship 221273,bird 221274,bird 221275,deer 221276,deer 221277,cat 221278,deer 221279,dog 221280,cat 221281,airplane 221282,dog 221283,truck 221284,deer 221285,cat 221286,frog 221287,automobile 221288,airplane 221289,cat 221290,deer 221291,deer 221292,cat 221293,frog 221294,airplane 221295,bird 221296,airplane 221297,bird 221298,deer 221299,ship 221300,truck 221301,bird 221302,frog 221303,automobile 221304,bird 221305,frog 221306,bird 221307,truck 221308,deer 221309,dog 221310,truck 221311,ship 221312,horse 221313,deer 221314,frog 221315,ship 221316,ship 221317,deer 221318,cat 221319,truck 221320,automobile 221321,automobile 221322,ship 221323,horse 221324,airplane 221325,cat 221326,ship 221327,airplane 221328,frog 221329,horse 221330,truck 221331,dog 221332,truck 221333,cat 221334,frog 221335,airplane 221336,cat 221337,cat 221338,frog 221339,bird 221340,horse 221341,truck 221342,frog 221343,automobile 221344,bird 221345,horse 221346,horse 221347,horse 221348,cat 221349,dog 221350,dog 221351,ship 221352,truck 221353,bird 221354,ship 221355,horse 221356,dog 221357,cat 221358,cat 221359,deer 221360,frog 221361,ship 221362,ship 221363,cat 221364,ship 221365,ship 221366,automobile 221367,horse 221368,airplane 221369,frog 221370,dog 221371,cat 221372,truck 221373,dog 221374,airplane 221375,cat 221376,automobile 221377,bird 221378,airplane 221379,truck 221380,dog 221381,automobile 221382,horse 221383,bird 221384,automobile 221385,truck 221386,ship 221387,cat 221388,horse 221389,airplane 221390,deer 221391,airplane 221392,deer 221393,ship 221394,deer 221395,cat 221396,dog 221397,deer 221398,deer 221399,deer 221400,automobile 221401,airplane 221402,horse 221403,bird 221404,deer 221405,frog 221406,airplane 221407,truck 221408,truck 221409,frog 221410,ship 221411,automobile 221412,automobile 221413,dog 221414,ship 221415,automobile 221416,frog 221417,automobile 221418,deer 221419,dog 221420,airplane 221421,airplane 221422,cat 221423,bird 221424,deer 221425,dog 221426,bird 221427,bird 221428,deer 221429,airplane 221430,bird 221431,bird 221432,bird 221433,airplane 221434,dog 221435,ship 221436,automobile 221437,frog 221438,automobile 221439,dog 221440,dog 221441,airplane 221442,deer 221443,deer 221444,deer 221445,ship 221446,frog 221447,deer 221448,horse 221449,ship 221450,deer 221451,airplane 221452,frog 221453,truck 221454,deer 221455,automobile 221456,truck 221457,truck 221458,deer 221459,airplane 221460,bird 221461,deer 221462,truck 221463,frog 221464,dog 221465,truck 221466,frog 221467,deer 221468,truck 221469,airplane 221470,bird 221471,bird 221472,cat 221473,automobile 221474,deer 221475,horse 221476,bird 221477,horse 221478,bird 221479,bird 221480,cat 221481,deer 221482,bird 221483,truck 221484,bird 221485,deer 221486,cat 221487,bird 221488,horse 221489,horse 221490,dog 221491,cat 221492,cat 221493,automobile 221494,deer 221495,cat 221496,dog 221497,airplane 221498,airplane 221499,ship 221500,automobile 221501,cat 221502,dog 221503,bird 221504,airplane 221505,automobile 221506,cat 221507,dog 221508,bird 221509,cat 221510,deer 221511,cat 221512,automobile 221513,airplane 221514,frog 221515,bird 221516,automobile 221517,dog 221518,horse 221519,airplane 221520,cat 221521,horse 221522,horse 221523,dog 221524,frog 221525,ship 221526,cat 221527,automobile 221528,horse 221529,automobile 221530,deer 221531,dog 221532,cat 221533,deer 221534,truck 221535,airplane 221536,truck 221537,cat 221538,deer 221539,bird 221540,airplane 221541,ship 221542,automobile 221543,horse 221544,airplane 221545,horse 221546,truck 221547,horse 221548,deer 221549,horse 221550,cat 221551,cat 221552,deer 221553,airplane 221554,deer 221555,cat 221556,deer 221557,horse 221558,frog 221559,dog 221560,ship 221561,bird 221562,ship 221563,truck 221564,automobile 221565,truck 221566,cat 221567,truck 221568,deer 221569,dog 221570,automobile 221571,dog 221572,frog 221573,cat 221574,frog 221575,dog 221576,airplane 221577,dog 221578,horse 221579,airplane 221580,frog 221581,frog 221582,ship 221583,bird 221584,cat 221585,deer 221586,dog 221587,cat 221588,cat 221589,cat 221590,cat 221591,frog 221592,dog 221593,frog 221594,bird 221595,dog 221596,cat 221597,automobile 221598,airplane 221599,airplane 221600,frog 221601,bird 221602,frog 221603,horse 221604,automobile 221605,truck 221606,truck 221607,deer 221608,cat 221609,horse 221610,horse 221611,airplane 221612,dog 221613,deer 221614,cat 221615,horse 221616,cat 221617,horse 221618,frog 221619,frog 221620,airplane 221621,cat 221622,cat 221623,cat 221624,automobile 221625,dog 221626,dog 221627,cat 221628,automobile 221629,truck 221630,dog 221631,truck 221632,deer 221633,cat 221634,cat 221635,automobile 221636,ship 221637,bird 221638,dog 221639,frog 221640,cat 221641,dog 221642,bird 221643,cat 221644,bird 221645,frog 221646,deer 221647,cat 221648,cat 221649,airplane 221650,frog 221651,truck 221652,frog 221653,cat 221654,cat 221655,cat 221656,frog 221657,horse 221658,frog 221659,automobile 221660,airplane 221661,ship 221662,truck 221663,bird 221664,deer 221665,automobile 221666,deer 221667,deer 221668,deer 221669,horse 221670,dog 221671,bird 221672,bird 221673,deer 221674,frog 221675,horse 221676,ship 221677,ship 221678,horse 221679,ship 221680,airplane 221681,cat 221682,automobile 221683,automobile 221684,dog 221685,airplane 221686,deer 221687,frog 221688,deer 221689,dog 221690,dog 221691,cat 221692,deer 221693,truck 221694,frog 221695,airplane 221696,airplane 221697,frog 221698,frog 221699,cat 221700,frog 221701,bird 221702,deer 221703,cat 221704,bird 221705,airplane 221706,cat 221707,bird 221708,deer 221709,cat 221710,deer 221711,automobile 221712,deer 221713,cat 221714,automobile 221715,horse 221716,automobile 221717,frog 221718,deer 221719,automobile 221720,truck 221721,horse 221722,frog 221723,airplane 221724,automobile 221725,horse 221726,frog 221727,truck 221728,bird 221729,horse 221730,truck 221731,automobile 221732,cat 221733,cat 221734,bird 221735,dog 221736,deer 221737,ship 221738,airplane 221739,cat 221740,horse 221741,cat 221742,ship 221743,horse 221744,truck 221745,frog 221746,automobile 221747,airplane 221748,deer 221749,dog 221750,frog 221751,airplane 221752,ship 221753,cat 221754,cat 221755,truck 221756,bird 221757,truck 221758,dog 221759,ship 221760,deer 221761,automobile 221762,truck 221763,deer 221764,deer 221765,ship 221766,deer 221767,truck 221768,truck 221769,bird 221770,ship 221771,deer 221772,ship 221773,dog 221774,dog 221775,truck 221776,ship 221777,dog 221778,deer 221779,deer 221780,deer 221781,frog 221782,truck 221783,frog 221784,ship 221785,horse 221786,frog 221787,ship 221788,frog 221789,deer 221790,cat 221791,automobile 221792,cat 221793,bird 221794,horse 221795,cat 221796,horse 221797,airplane 221798,cat 221799,truck 221800,frog 221801,deer 221802,airplane 221803,frog 221804,deer 221805,bird 221806,truck 221807,ship 221808,deer 221809,bird 221810,dog 221811,truck 221812,truck 221813,frog 221814,deer 221815,truck 221816,deer 221817,airplane 221818,ship 221819,frog 221820,dog 221821,horse 221822,bird 221823,truck 221824,deer 221825,horse 221826,ship 221827,bird 221828,cat 221829,ship 221830,cat 221831,cat 221832,dog 221833,truck 221834,dog 221835,deer 221836,truck 221837,airplane 221838,truck 221839,ship 221840,deer 221841,cat 221842,horse 221843,truck 221844,bird 221845,airplane 221846,truck 221847,cat 221848,automobile 221849,deer 221850,cat 221851,airplane 221852,airplane 221853,cat 221854,horse 221855,dog 221856,dog 221857,airplane 221858,deer 221859,truck 221860,cat 221861,dog 221862,deer 221863,cat 221864,cat 221865,automobile 221866,horse 221867,frog 221868,horse 221869,horse 221870,airplane 221871,dog 221872,ship 221873,deer 221874,truck 221875,deer 221876,airplane 221877,deer 221878,cat 221879,bird 221880,cat 221881,dog 221882,automobile 221883,bird 221884,automobile 221885,bird 221886,dog 221887,bird 221888,airplane 221889,truck 221890,automobile 221891,deer 221892,horse 221893,truck 221894,horse 221895,deer 221896,ship 221897,automobile 221898,truck 221899,automobile 221900,frog 221901,frog 221902,truck 221903,deer 221904,truck 221905,horse 221906,dog 221907,airplane 221908,frog 221909,automobile 221910,frog 221911,deer 221912,cat 221913,dog 221914,horse 221915,deer 221916,airplane 221917,bird 221918,deer 221919,ship 221920,deer 221921,horse 221922,automobile 221923,airplane 221924,deer 221925,horse 221926,frog 221927,bird 221928,horse 221929,automobile 221930,deer 221931,bird 221932,truck 221933,automobile 221934,deer 221935,cat 221936,dog 221937,bird 221938,cat 221939,frog 221940,truck 221941,frog 221942,airplane 221943,cat 221944,truck 221945,airplane 221946,ship 221947,bird 221948,ship 221949,cat 221950,automobile 221951,dog 221952,airplane 221953,bird 221954,automobile 221955,bird 221956,cat 221957,ship 221958,cat 221959,truck 221960,truck 221961,ship 221962,deer 221963,frog 221964,bird 221965,cat 221966,truck 221967,dog 221968,cat 221969,frog 221970,truck 221971,airplane 221972,ship 221973,frog 221974,dog 221975,cat 221976,bird 221977,automobile 221978,automobile 221979,ship 221980,horse 221981,ship 221982,cat 221983,airplane 221984,ship 221985,horse 221986,cat 221987,truck 221988,airplane 221989,truck 221990,automobile 221991,truck 221992,automobile 221993,dog 221994,bird 221995,frog 221996,deer 221997,dog 221998,frog 221999,horse 222000,truck 222001,truck 222002,deer 222003,ship 222004,airplane 222005,horse 222006,deer 222007,bird 222008,frog 222009,cat 222010,bird 222011,bird 222012,truck 222013,cat 222014,dog 222015,airplane 222016,dog 222017,truck 222018,truck 222019,airplane 222020,deer 222021,truck 222022,cat 222023,bird 222024,cat 222025,horse 222026,dog 222027,horse 222028,dog 222029,frog 222030,dog 222031,truck 222032,horse 222033,airplane 222034,cat 222035,truck 222036,dog 222037,airplane 222038,cat 222039,cat 222040,bird 222041,dog 222042,cat 222043,frog 222044,cat 222045,truck 222046,bird 222047,cat 222048,horse 222049,airplane 222050,cat 222051,bird 222052,deer 222053,frog 222054,cat 222055,cat 222056,airplane 222057,truck 222058,automobile 222059,airplane 222060,dog 222061,bird 222062,deer 222063,ship 222064,airplane 222065,truck 222066,ship 222067,airplane 222068,bird 222069,deer 222070,ship 222071,frog 222072,airplane 222073,automobile 222074,deer 222075,horse 222076,airplane 222077,horse 222078,cat 222079,bird 222080,horse 222081,deer 222082,deer 222083,bird 222084,frog 222085,deer 222086,horse 222087,truck 222088,automobile 222089,horse 222090,deer 222091,dog 222092,deer 222093,dog 222094,frog 222095,deer 222096,deer 222097,airplane 222098,cat 222099,automobile 222100,deer 222101,horse 222102,cat 222103,frog 222104,frog 222105,deer 222106,frog 222107,cat 222108,cat 222109,cat 222110,ship 222111,cat 222112,cat 222113,deer 222114,truck 222115,deer 222116,truck 222117,truck 222118,truck 222119,bird 222120,cat 222121,cat 222122,cat 222123,frog 222124,deer 222125,airplane 222126,cat 222127,truck 222128,ship 222129,cat 222130,automobile 222131,truck 222132,frog 222133,horse 222134,bird 222135,truck 222136,horse 222137,deer 222138,truck 222139,cat 222140,bird 222141,horse 222142,airplane 222143,deer 222144,deer 222145,bird 222146,horse 222147,ship 222148,truck 222149,horse 222150,dog 222151,frog 222152,deer 222153,frog 222154,truck 222155,dog 222156,horse 222157,deer 222158,dog 222159,ship 222160,airplane 222161,truck 222162,dog 222163,frog 222164,ship 222165,airplane 222166,automobile 222167,dog 222168,dog 222169,dog 222170,bird 222171,cat 222172,frog 222173,horse 222174,frog 222175,deer 222176,ship 222177,horse 222178,frog 222179,dog 222180,deer 222181,ship 222182,frog 222183,airplane 222184,ship 222185,truck 222186,dog 222187,truck 222188,horse 222189,horse 222190,cat 222191,frog 222192,airplane 222193,truck 222194,bird 222195,bird 222196,bird 222197,bird 222198,frog 222199,automobile 222200,dog 222201,deer 222202,frog 222203,horse 222204,airplane 222205,cat 222206,truck 222207,cat 222208,airplane 222209,deer 222210,cat 222211,dog 222212,automobile 222213,deer 222214,deer 222215,bird 222216,automobile 222217,truck 222218,horse 222219,airplane 222220,horse 222221,dog 222222,cat 222223,dog 222224,horse 222225,frog 222226,horse 222227,automobile 222228,dog 222229,cat 222230,horse 222231,airplane 222232,truck 222233,deer 222234,truck 222235,frog 222236,frog 222237,automobile 222238,horse 222239,truck 222240,truck 222241,bird 222242,automobile 222243,frog 222244,horse 222245,airplane 222246,bird 222247,deer 222248,horse 222249,deer 222250,airplane 222251,dog 222252,cat 222253,truck 222254,dog 222255,cat 222256,automobile 222257,dog 222258,frog 222259,dog 222260,frog 222261,truck 222262,dog 222263,cat 222264,deer 222265,truck 222266,airplane 222267,bird 222268,deer 222269,truck 222270,cat 222271,bird 222272,cat 222273,airplane 222274,horse 222275,ship 222276,bird 222277,deer 222278,dog 222279,horse 222280,deer 222281,horse 222282,frog 222283,frog 222284,cat 222285,frog 222286,ship 222287,deer 222288,truck 222289,cat 222290,cat 222291,bird 222292,cat 222293,dog 222294,airplane 222295,frog 222296,truck 222297,bird 222298,ship 222299,automobile 222300,dog 222301,airplane 222302,truck 222303,dog 222304,dog 222305,truck 222306,automobile 222307,deer 222308,truck 222309,cat 222310,automobile 222311,automobile 222312,horse 222313,airplane 222314,truck 222315,bird 222316,bird 222317,airplane 222318,horse 222319,automobile 222320,truck 222321,truck 222322,horse 222323,automobile 222324,cat 222325,deer 222326,deer 222327,truck 222328,truck 222329,horse 222330,horse 222331,bird 222332,deer 222333,airplane 222334,bird 222335,dog 222336,cat 222337,airplane 222338,cat 222339,dog 222340,airplane 222341,frog 222342,ship 222343,deer 222344,horse 222345,deer 222346,truck 222347,dog 222348,airplane 222349,airplane 222350,cat 222351,deer 222352,deer 222353,bird 222354,cat 222355,truck 222356,ship 222357,horse 222358,deer 222359,ship 222360,dog 222361,ship 222362,frog 222363,horse 222364,cat 222365,dog 222366,truck 222367,dog 222368,truck 222369,truck 222370,airplane 222371,bird 222372,cat 222373,cat 222374,automobile 222375,dog 222376,airplane 222377,bird 222378,horse 222379,cat 222380,deer 222381,dog 222382,horse 222383,cat 222384,deer 222385,deer 222386,truck 222387,bird 222388,bird 222389,cat 222390,deer 222391,cat 222392,frog 222393,cat 222394,cat 222395,deer 222396,bird 222397,cat 222398,cat 222399,dog 222400,horse 222401,frog 222402,deer 222403,ship 222404,frog 222405,dog 222406,dog 222407,bird 222408,horse 222409,dog 222410,truck 222411,automobile 222412,bird 222413,dog 222414,bird 222415,automobile 222416,frog 222417,cat 222418,deer 222419,frog 222420,ship 222421,cat 222422,frog 222423,truck 222424,cat 222425,horse 222426,bird 222427,frog 222428,bird 222429,automobile 222430,horse 222431,airplane 222432,cat 222433,ship 222434,airplane 222435,horse 222436,horse 222437,cat 222438,deer 222439,truck 222440,deer 222441,deer 222442,cat 222443,frog 222444,cat 222445,cat 222446,horse 222447,frog 222448,deer 222449,cat 222450,airplane 222451,horse 222452,bird 222453,horse 222454,airplane 222455,bird 222456,cat 222457,cat 222458,airplane 222459,truck 222460,truck 222461,cat 222462,cat 222463,dog 222464,automobile 222465,bird 222466,cat 222467,frog 222468,bird 222469,airplane 222470,horse 222471,airplane 222472,airplane 222473,cat 222474,cat 222475,deer 222476,ship 222477,dog 222478,deer 222479,deer 222480,deer 222481,horse 222482,dog 222483,truck 222484,airplane 222485,airplane 222486,deer 222487,truck 222488,automobile 222489,frog 222490,truck 222491,bird 222492,horse 222493,truck 222494,dog 222495,dog 222496,truck 222497,automobile 222498,deer 222499,cat 222500,horse 222501,dog 222502,deer 222503,bird 222504,deer 222505,cat 222506,ship 222507,deer 222508,truck 222509,frog 222510,dog 222511,ship 222512,horse 222513,truck 222514,horse 222515,truck 222516,dog 222517,ship 222518,frog 222519,dog 222520,horse 222521,automobile 222522,dog 222523,ship 222524,truck 222525,ship 222526,horse 222527,dog 222528,automobile 222529,frog 222530,frog 222531,ship 222532,dog 222533,horse 222534,deer 222535,cat 222536,dog 222537,bird 222538,bird 222539,horse 222540,automobile 222541,deer 222542,ship 222543,ship 222544,truck 222545,truck 222546,frog 222547,airplane 222548,deer 222549,deer 222550,dog 222551,bird 222552,horse 222553,deer 222554,deer 222555,airplane 222556,dog 222557,frog 222558,dog 222559,horse 222560,cat 222561,dog 222562,cat 222563,automobile 222564,horse 222565,deer 222566,truck 222567,deer 222568,cat 222569,cat 222570,frog 222571,truck 222572,cat 222573,bird 222574,dog 222575,truck 222576,truck 222577,automobile 222578,bird 222579,horse 222580,cat 222581,dog 222582,frog 222583,cat 222584,horse 222585,cat 222586,dog 222587,airplane 222588,deer 222589,truck 222590,frog 222591,truck 222592,deer 222593,frog 222594,horse 222595,truck 222596,dog 222597,cat 222598,frog 222599,automobile 222600,deer 222601,horse 222602,ship 222603,deer 222604,bird 222605,deer 222606,frog 222607,cat 222608,airplane 222609,horse 222610,airplane 222611,horse 222612,frog 222613,frog 222614,horse 222615,airplane 222616,frog 222617,ship 222618,frog 222619,ship 222620,frog 222621,frog 222622,frog 222623,dog 222624,dog 222625,frog 222626,deer 222627,automobile 222628,dog 222629,automobile 222630,horse 222631,automobile 222632,deer 222633,airplane 222634,cat 222635,dog 222636,automobile 222637,ship 222638,cat 222639,horse 222640,truck 222641,airplane 222642,deer 222643,horse 222644,ship 222645,dog 222646,bird 222647,automobile 222648,truck 222649,deer 222650,airplane 222651,truck 222652,deer 222653,airplane 222654,frog 222655,dog 222656,airplane 222657,frog 222658,horse 222659,truck 222660,truck 222661,dog 222662,ship 222663,ship 222664,deer 222665,ship 222666,bird 222667,automobile 222668,airplane 222669,frog 222670,horse 222671,truck 222672,automobile 222673,cat 222674,deer 222675,deer 222676,bird 222677,deer 222678,horse 222679,deer 222680,ship 222681,horse 222682,truck 222683,truck 222684,truck 222685,cat 222686,dog 222687,bird 222688,airplane 222689,horse 222690,ship 222691,cat 222692,cat 222693,cat 222694,deer 222695,deer 222696,bird 222697,truck 222698,automobile 222699,bird 222700,frog 222701,dog 222702,cat 222703,horse 222704,bird 222705,truck 222706,bird 222707,automobile 222708,deer 222709,cat 222710,airplane 222711,horse 222712,cat 222713,deer 222714,horse 222715,deer 222716,automobile 222717,deer 222718,frog 222719,horse 222720,deer 222721,automobile 222722,deer 222723,truck 222724,airplane 222725,horse 222726,automobile 222727,airplane 222728,cat 222729,automobile 222730,frog 222731,truck 222732,frog 222733,deer 222734,horse 222735,truck 222736,truck 222737,deer 222738,frog 222739,cat 222740,frog 222741,bird 222742,cat 222743,dog 222744,deer 222745,dog 222746,cat 222747,ship 222748,deer 222749,bird 222750,frog 222751,cat 222752,frog 222753,bird 222754,cat 222755,frog 222756,cat 222757,truck 222758,deer 222759,ship 222760,dog 222761,cat 222762,dog 222763,deer 222764,frog 222765,airplane 222766,cat 222767,ship 222768,cat 222769,dog 222770,deer 222771,dog 222772,bird 222773,automobile 222774,truck 222775,cat 222776,cat 222777,truck 222778,bird 222779,horse 222780,deer 222781,dog 222782,airplane 222783,bird 222784,airplane 222785,deer 222786,deer 222787,ship 222788,cat 222789,truck 222790,frog 222791,dog 222792,dog 222793,deer 222794,automobile 222795,deer 222796,deer 222797,deer 222798,bird 222799,ship 222800,ship 222801,deer 222802,cat 222803,airplane 222804,deer 222805,truck 222806,deer 222807,truck 222808,airplane 222809,cat 222810,deer 222811,bird 222812,bird 222813,ship 222814,deer 222815,dog 222816,frog 222817,frog 222818,ship 222819,dog 222820,automobile 222821,dog 222822,frog 222823,truck 222824,deer 222825,dog 222826,truck 222827,deer 222828,airplane 222829,horse 222830,frog 222831,ship 222832,truck 222833,ship 222834,cat 222835,truck 222836,truck 222837,bird 222838,airplane 222839,deer 222840,dog 222841,horse 222842,cat 222843,automobile 222844,horse 222845,truck 222846,automobile 222847,ship 222848,frog 222849,truck 222850,dog 222851,dog 222852,ship 222853,truck 222854,deer 222855,deer 222856,horse 222857,cat 222858,ship 222859,truck 222860,ship 222861,deer 222862,dog 222863,frog 222864,dog 222865,horse 222866,deer 222867,cat 222868,airplane 222869,deer 222870,frog 222871,frog 222872,dog 222873,ship 222874,deer 222875,bird 222876,deer 222877,bird 222878,frog 222879,dog 222880,deer 222881,bird 222882,horse 222883,cat 222884,frog 222885,airplane 222886,deer 222887,frog 222888,ship 222889,cat 222890,deer 222891,dog 222892,cat 222893,truck 222894,deer 222895,truck 222896,cat 222897,ship 222898,frog 222899,bird 222900,horse 222901,automobile 222902,dog 222903,frog 222904,bird 222905,cat 222906,bird 222907,automobile 222908,truck 222909,dog 222910,horse 222911,truck 222912,automobile 222913,bird 222914,airplane 222915,horse 222916,truck 222917,ship 222918,cat 222919,frog 222920,frog 222921,horse 222922,frog 222923,automobile 222924,truck 222925,truck 222926,deer 222927,dog 222928,cat 222929,truck 222930,dog 222931,ship 222932,deer 222933,deer 222934,cat 222935,automobile 222936,frog 222937,ship 222938,automobile 222939,automobile 222940,ship 222941,cat 222942,truck 222943,dog 222944,cat 222945,frog 222946,ship 222947,cat 222948,deer 222949,horse 222950,cat 222951,horse 222952,frog 222953,cat 222954,cat 222955,truck 222956,ship 222957,deer 222958,truck 222959,frog 222960,truck 222961,cat 222962,ship 222963,cat 222964,horse 222965,dog 222966,cat 222967,airplane 222968,cat 222969,bird 222970,dog 222971,dog 222972,bird 222973,bird 222974,frog 222975,bird 222976,cat 222977,automobile 222978,frog 222979,frog 222980,automobile 222981,deer 222982,ship 222983,horse 222984,dog 222985,cat 222986,truck 222987,cat 222988,cat 222989,truck 222990,deer 222991,ship 222992,dog 222993,dog 222994,cat 222995,cat 222996,airplane 222997,ship 222998,deer 222999,cat 223000,frog 223001,cat 223002,horse 223003,ship 223004,automobile 223005,bird 223006,bird 223007,truck 223008,cat 223009,dog 223010,automobile 223011,deer 223012,cat 223013,deer 223014,airplane 223015,deer 223016,dog 223017,truck 223018,cat 223019,dog 223020,dog 223021,bird 223022,dog 223023,cat 223024,automobile 223025,ship 223026,deer 223027,deer 223028,truck 223029,horse 223030,truck 223031,dog 223032,cat 223033,deer 223034,cat 223035,bird 223036,cat 223037,ship 223038,airplane 223039,automobile 223040,dog 223041,deer 223042,deer 223043,ship 223044,horse 223045,bird 223046,cat 223047,airplane 223048,bird 223049,bird 223050,horse 223051,bird 223052,cat 223053,cat 223054,truck 223055,truck 223056,dog 223057,automobile 223058,dog 223059,bird 223060,automobile 223061,automobile 223062,horse 223063,ship 223064,deer 223065,ship 223066,horse 223067,ship 223068,dog 223069,cat 223070,bird 223071,truck 223072,bird 223073,ship 223074,airplane 223075,deer 223076,cat 223077,cat 223078,frog 223079,cat 223080,frog 223081,deer 223082,deer 223083,horse 223084,ship 223085,deer 223086,deer 223087,automobile 223088,frog 223089,ship 223090,truck 223091,truck 223092,truck 223093,airplane 223094,ship 223095,airplane 223096,dog 223097,ship 223098,deer 223099,airplane 223100,cat 223101,deer 223102,dog 223103,ship 223104,deer 223105,automobile 223106,bird 223107,deer 223108,airplane 223109,automobile 223110,truck 223111,bird 223112,deer 223113,cat 223114,frog 223115,ship 223116,horse 223117,bird 223118,dog 223119,frog 223120,horse 223121,bird 223122,horse 223123,deer 223124,automobile 223125,cat 223126,cat 223127,deer 223128,bird 223129,deer 223130,frog 223131,truck 223132,ship 223133,truck 223134,horse 223135,deer 223136,frog 223137,airplane 223138,cat 223139,cat 223140,automobile 223141,dog 223142,deer 223143,deer 223144,deer 223145,ship 223146,bird 223147,cat 223148,dog 223149,cat 223150,airplane 223151,deer 223152,cat 223153,deer 223154,bird 223155,dog 223156,airplane 223157,bird 223158,cat 223159,airplane 223160,cat 223161,deer 223162,frog 223163,bird 223164,airplane 223165,truck 223166,frog 223167,truck 223168,cat 223169,bird 223170,airplane 223171,truck 223172,dog 223173,frog 223174,deer 223175,horse 223176,cat 223177,cat 223178,deer 223179,dog 223180,automobile 223181,dog 223182,truck 223183,deer 223184,ship 223185,airplane 223186,cat 223187,cat 223188,cat 223189,frog 223190,horse 223191,ship 223192,ship 223193,frog 223194,dog 223195,airplane 223196,cat 223197,horse 223198,cat 223199,ship 223200,horse 223201,automobile 223202,cat 223203,cat 223204,bird 223205,automobile 223206,frog 223207,bird 223208,dog 223209,dog 223210,bird 223211,dog 223212,deer 223213,automobile 223214,automobile 223215,horse 223216,truck 223217,deer 223218,airplane 223219,cat 223220,bird 223221,ship 223222,frog 223223,cat 223224,bird 223225,frog 223226,airplane 223227,bird 223228,airplane 223229,automobile 223230,bird 223231,cat 223232,frog 223233,frog 223234,airplane 223235,horse 223236,automobile 223237,dog 223238,bird 223239,cat 223240,cat 223241,deer 223242,horse 223243,dog 223244,truck 223245,cat 223246,bird 223247,deer 223248,frog 223249,cat 223250,dog 223251,ship 223252,dog 223253,cat 223254,deer 223255,cat 223256,automobile 223257,automobile 223258,ship 223259,deer 223260,frog 223261,deer 223262,automobile 223263,frog 223264,bird 223265,truck 223266,cat 223267,truck 223268,ship 223269,frog 223270,ship 223271,truck 223272,cat 223273,frog 223274,dog 223275,airplane 223276,dog 223277,deer 223278,frog 223279,cat 223280,airplane 223281,horse 223282,dog 223283,bird 223284,airplane 223285,bird 223286,cat 223287,dog 223288,frog 223289,airplane 223290,deer 223291,frog 223292,airplane 223293,deer 223294,bird 223295,frog 223296,deer 223297,cat 223298,dog 223299,automobile 223300,airplane 223301,deer 223302,bird 223303,bird 223304,airplane 223305,deer 223306,automobile 223307,truck 223308,frog 223309,airplane 223310,bird 223311,cat 223312,truck 223313,deer 223314,horse 223315,cat 223316,bird 223317,truck 223318,automobile 223319,frog 223320,airplane 223321,cat 223322,ship 223323,ship 223324,truck 223325,cat 223326,dog 223327,horse 223328,ship 223329,cat 223330,deer 223331,truck 223332,deer 223333,deer 223334,airplane 223335,deer 223336,dog 223337,frog 223338,cat 223339,ship 223340,truck 223341,deer 223342,horse 223343,horse 223344,deer 223345,dog 223346,truck 223347,deer 223348,truck 223349,deer 223350,truck 223351,cat 223352,automobile 223353,ship 223354,deer 223355,horse 223356,truck 223357,horse 223358,truck 223359,horse 223360,truck 223361,ship 223362,ship 223363,frog 223364,truck 223365,cat 223366,deer 223367,frog 223368,horse 223369,deer 223370,horse 223371,airplane 223372,dog 223373,cat 223374,dog 223375,frog 223376,ship 223377,ship 223378,frog 223379,truck 223380,cat 223381,dog 223382,cat 223383,cat 223384,dog 223385,frog 223386,deer 223387,frog 223388,dog 223389,horse 223390,airplane 223391,ship 223392,airplane 223393,deer 223394,cat 223395,automobile 223396,cat 223397,cat 223398,truck 223399,horse 223400,automobile 223401,horse 223402,airplane 223403,airplane 223404,truck 223405,dog 223406,dog 223407,truck 223408,horse 223409,bird 223410,bird 223411,dog 223412,frog 223413,dog 223414,deer 223415,truck 223416,deer 223417,bird 223418,ship 223419,horse 223420,frog 223421,cat 223422,frog 223423,bird 223424,horse 223425,truck 223426,horse 223427,horse 223428,deer 223429,truck 223430,bird 223431,bird 223432,truck 223433,truck 223434,cat 223435,bird 223436,airplane 223437,truck 223438,airplane 223439,dog 223440,ship 223441,dog 223442,bird 223443,frog 223444,truck 223445,frog 223446,dog 223447,cat 223448,ship 223449,ship 223450,cat 223451,bird 223452,cat 223453,deer 223454,deer 223455,deer 223456,cat 223457,cat 223458,truck 223459,cat 223460,automobile 223461,frog 223462,truck 223463,airplane 223464,frog 223465,bird 223466,airplane 223467,ship 223468,frog 223469,automobile 223470,horse 223471,frog 223472,deer 223473,ship 223474,bird 223475,truck 223476,deer 223477,bird 223478,cat 223479,ship 223480,frog 223481,automobile 223482,frog 223483,airplane 223484,cat 223485,deer 223486,bird 223487,truck 223488,horse 223489,airplane 223490,airplane 223491,dog 223492,automobile 223493,frog 223494,frog 223495,bird 223496,horse 223497,frog 223498,bird 223499,horse 223500,frog 223501,frog 223502,cat 223503,frog 223504,horse 223505,truck 223506,frog 223507,frog 223508,frog 223509,horse 223510,airplane 223511,truck 223512,ship 223513,horse 223514,ship 223515,horse 223516,bird 223517,ship 223518,horse 223519,dog 223520,dog 223521,ship 223522,deer 223523,bird 223524,cat 223525,cat 223526,horse 223527,ship 223528,deer 223529,airplane 223530,deer 223531,bird 223532,frog 223533,horse 223534,bird 223535,airplane 223536,horse 223537,cat 223538,airplane 223539,bird 223540,deer 223541,truck 223542,truck 223543,truck 223544,frog 223545,frog 223546,ship 223547,dog 223548,cat 223549,horse 223550,automobile 223551,cat 223552,truck 223553,automobile 223554,horse 223555,airplane 223556,automobile 223557,ship 223558,deer 223559,ship 223560,deer 223561,dog 223562,horse 223563,deer 223564,frog 223565,horse 223566,automobile 223567,deer 223568,airplane 223569,cat 223570,deer 223571,cat 223572,dog 223573,bird 223574,bird 223575,cat 223576,cat 223577,frog 223578,ship 223579,dog 223580,bird 223581,ship 223582,automobile 223583,horse 223584,ship 223585,deer 223586,dog 223587,cat 223588,bird 223589,cat 223590,ship 223591,frog 223592,airplane 223593,truck 223594,bird 223595,cat 223596,airplane 223597,cat 223598,horse 223599,ship 223600,airplane 223601,deer 223602,ship 223603,cat 223604,frog 223605,automobile 223606,deer 223607,frog 223608,bird 223609,truck 223610,bird 223611,cat 223612,dog 223613,airplane 223614,ship 223615,cat 223616,horse 223617,cat 223618,cat 223619,truck 223620,automobile 223621,frog 223622,airplane 223623,cat 223624,cat 223625,cat 223626,ship 223627,horse 223628,dog 223629,automobile 223630,truck 223631,deer 223632,horse 223633,bird 223634,truck 223635,cat 223636,bird 223637,cat 223638,frog 223639,cat 223640,cat 223641,airplane 223642,bird 223643,cat 223644,automobile 223645,cat 223646,airplane 223647,horse 223648,dog 223649,automobile 223650,horse 223651,ship 223652,airplane 223653,automobile 223654,bird 223655,airplane 223656,deer 223657,dog 223658,horse 223659,truck 223660,deer 223661,cat 223662,airplane 223663,truck 223664,cat 223665,horse 223666,cat 223667,truck 223668,dog 223669,airplane 223670,airplane 223671,automobile 223672,automobile 223673,truck 223674,bird 223675,truck 223676,bird 223677,deer 223678,airplane 223679,airplane 223680,cat 223681,automobile 223682,cat 223683,truck 223684,dog 223685,deer 223686,bird 223687,deer 223688,frog 223689,horse 223690,truck 223691,bird 223692,deer 223693,dog 223694,frog 223695,bird 223696,deer 223697,automobile 223698,bird 223699,cat 223700,truck 223701,deer 223702,dog 223703,dog 223704,truck 223705,bird 223706,bird 223707,bird 223708,truck 223709,airplane 223710,horse 223711,frog 223712,cat 223713,airplane 223714,airplane 223715,deer 223716,automobile 223717,truck 223718,airplane 223719,cat 223720,airplane 223721,frog 223722,cat 223723,frog 223724,deer 223725,horse 223726,bird 223727,frog 223728,dog 223729,deer 223730,cat 223731,deer 223732,cat 223733,frog 223734,ship 223735,bird 223736,airplane 223737,deer 223738,cat 223739,deer 223740,dog 223741,frog 223742,cat 223743,bird 223744,dog 223745,deer 223746,bird 223747,horse 223748,horse 223749,truck 223750,frog 223751,horse 223752,dog 223753,truck 223754,automobile 223755,horse 223756,automobile 223757,truck 223758,horse 223759,dog 223760,airplane 223761,deer 223762,frog 223763,dog 223764,airplane 223765,bird 223766,automobile 223767,airplane 223768,automobile 223769,bird 223770,horse 223771,truck 223772,cat 223773,cat 223774,bird 223775,horse 223776,deer 223777,automobile 223778,dog 223779,deer 223780,frog 223781,truck 223782,automobile 223783,horse 223784,horse 223785,dog 223786,dog 223787,frog 223788,airplane 223789,automobile 223790,bird 223791,bird 223792,deer 223793,truck 223794,bird 223795,automobile 223796,ship 223797,horse 223798,dog 223799,deer 223800,dog 223801,bird 223802,frog 223803,deer 223804,cat 223805,cat 223806,truck 223807,truck 223808,cat 223809,automobile 223810,frog 223811,frog 223812,deer 223813,ship 223814,cat 223815,truck 223816,ship 223817,horse 223818,automobile 223819,bird 223820,horse 223821,cat 223822,horse 223823,truck 223824,frog 223825,cat 223826,deer 223827,truck 223828,truck 223829,airplane 223830,bird 223831,airplane 223832,cat 223833,truck 223834,airplane 223835,dog 223836,cat 223837,airplane 223838,ship 223839,horse 223840,cat 223841,airplane 223842,horse 223843,airplane 223844,cat 223845,bird 223846,dog 223847,truck 223848,horse 223849,truck 223850,cat 223851,deer 223852,cat 223853,frog 223854,truck 223855,bird 223856,cat 223857,cat 223858,automobile 223859,deer 223860,cat 223861,automobile 223862,horse 223863,cat 223864,truck 223865,horse 223866,dog 223867,airplane 223868,truck 223869,bird 223870,truck 223871,deer 223872,automobile 223873,airplane 223874,ship 223875,airplane 223876,airplane 223877,frog 223878,frog 223879,deer 223880,deer 223881,cat 223882,deer 223883,frog 223884,frog 223885,dog 223886,ship 223887,cat 223888,deer 223889,bird 223890,horse 223891,ship 223892,bird 223893,truck 223894,frog 223895,deer 223896,truck 223897,cat 223898,frog 223899,deer 223900,cat 223901,deer 223902,deer 223903,airplane 223904,cat 223905,ship 223906,airplane 223907,bird 223908,dog 223909,automobile 223910,automobile 223911,deer 223912,deer 223913,bird 223914,airplane 223915,cat 223916,airplane 223917,deer 223918,deer 223919,horse 223920,airplane 223921,frog 223922,ship 223923,cat 223924,frog 223925,horse 223926,dog 223927,deer 223928,cat 223929,cat 223930,truck 223931,bird 223932,deer 223933,truck 223934,deer 223935,bird 223936,airplane 223937,airplane 223938,deer 223939,deer 223940,dog 223941,deer 223942,horse 223943,airplane 223944,bird 223945,frog 223946,horse 223947,automobile 223948,automobile 223949,dog 223950,cat 223951,truck 223952,airplane 223953,horse 223954,airplane 223955,horse 223956,frog 223957,truck 223958,frog 223959,ship 223960,airplane 223961,deer 223962,dog 223963,frog 223964,dog 223965,dog 223966,deer 223967,cat 223968,airplane 223969,cat 223970,deer 223971,frog 223972,deer 223973,frog 223974,bird 223975,truck 223976,cat 223977,bird 223978,truck 223979,automobile 223980,automobile 223981,bird 223982,deer 223983,truck 223984,truck 223985,dog 223986,truck 223987,dog 223988,airplane 223989,cat 223990,deer 223991,truck 223992,bird 223993,horse 223994,dog 223995,frog 223996,truck 223997,bird 223998,automobile 223999,ship 224000,horse 224001,truck 224002,cat 224003,dog 224004,deer 224005,airplane 224006,ship 224007,truck 224008,ship 224009,truck 224010,deer 224011,ship 224012,frog 224013,ship 224014,truck 224015,dog 224016,frog 224017,horse 224018,ship 224019,dog 224020,cat 224021,truck 224022,frog 224023,ship 224024,bird 224025,dog 224026,bird 224027,cat 224028,truck 224029,frog 224030,frog 224031,truck 224032,truck 224033,horse 224034,dog 224035,frog 224036,horse 224037,deer 224038,frog 224039,truck 224040,cat 224041,frog 224042,horse 224043,ship 224044,cat 224045,ship 224046,deer 224047,deer 224048,dog 224049,dog 224050,ship 224051,deer 224052,automobile 224053,bird 224054,frog 224055,automobile 224056,deer 224057,deer 224058,dog 224059,frog 224060,bird 224061,ship 224062,deer 224063,dog 224064,deer 224065,bird 224066,cat 224067,horse 224068,deer 224069,truck 224070,automobile 224071,frog 224072,cat 224073,deer 224074,deer 224075,truck 224076,deer 224077,cat 224078,horse 224079,horse 224080,deer 224081,truck 224082,cat 224083,cat 224084,deer 224085,truck 224086,ship 224087,ship 224088,cat 224089,ship 224090,cat 224091,dog 224092,frog 224093,horse 224094,airplane 224095,cat 224096,frog 224097,bird 224098,bird 224099,truck 224100,deer 224101,cat 224102,deer 224103,deer 224104,automobile 224105,cat 224106,truck 224107,truck 224108,cat 224109,truck 224110,horse 224111,airplane 224112,deer 224113,deer 224114,frog 224115,truck 224116,ship 224117,automobile 224118,dog 224119,truck 224120,bird 224121,airplane 224122,dog 224123,automobile 224124,frog 224125,horse 224126,dog 224127,automobile 224128,horse 224129,bird 224130,frog 224131,deer 224132,automobile 224133,deer 224134,airplane 224135,truck 224136,ship 224137,deer 224138,cat 224139,dog 224140,cat 224141,frog 224142,automobile 224143,horse 224144,airplane 224145,frog 224146,truck 224147,cat 224148,horse 224149,deer 224150,deer 224151,horse 224152,airplane 224153,dog 224154,truck 224155,dog 224156,deer 224157,cat 224158,frog 224159,airplane 224160,automobile 224161,cat 224162,bird 224163,airplane 224164,deer 224165,frog 224166,frog 224167,deer 224168,bird 224169,cat 224170,airplane 224171,deer 224172,deer 224173,deer 224174,automobile 224175,deer 224176,airplane 224177,truck 224178,airplane 224179,deer 224180,ship 224181,cat 224182,horse 224183,ship 224184,deer 224185,ship 224186,dog 224187,frog 224188,horse 224189,frog 224190,airplane 224191,horse 224192,automobile 224193,horse 224194,frog 224195,airplane 224196,automobile 224197,horse 224198,truck 224199,truck 224200,automobile 224201,truck 224202,ship 224203,ship 224204,ship 224205,automobile 224206,ship 224207,deer 224208,horse 224209,cat 224210,frog 224211,bird 224212,truck 224213,ship 224214,frog 224215,automobile 224216,dog 224217,automobile 224218,truck 224219,frog 224220,cat 224221,frog 224222,cat 224223,deer 224224,airplane 224225,truck 224226,airplane 224227,horse 224228,bird 224229,airplane 224230,cat 224231,automobile 224232,bird 224233,bird 224234,deer 224235,frog 224236,cat 224237,dog 224238,frog 224239,airplane 224240,deer 224241,deer 224242,cat 224243,deer 224244,airplane 224245,dog 224246,bird 224247,deer 224248,truck 224249,deer 224250,truck 224251,ship 224252,airplane 224253,dog 224254,frog 224255,airplane 224256,ship 224257,ship 224258,bird 224259,truck 224260,truck 224261,truck 224262,truck 224263,airplane 224264,deer 224265,dog 224266,cat 224267,horse 224268,truck 224269,automobile 224270,frog 224271,truck 224272,frog 224273,bird 224274,automobile 224275,truck 224276,cat 224277,bird 224278,truck 224279,deer 224280,horse 224281,deer 224282,deer 224283,horse 224284,dog 224285,automobile 224286,horse 224287,dog 224288,bird 224289,deer 224290,horse 224291,truck 224292,bird 224293,automobile 224294,bird 224295,cat 224296,bird 224297,bird 224298,dog 224299,airplane 224300,dog 224301,truck 224302,horse 224303,automobile 224304,dog 224305,cat 224306,ship 224307,deer 224308,dog 224309,ship 224310,deer 224311,deer 224312,automobile 224313,deer 224314,frog 224315,airplane 224316,horse 224317,cat 224318,ship 224319,horse 224320,cat 224321,deer 224322,dog 224323,truck 224324,dog 224325,frog 224326,automobile 224327,dog 224328,deer 224329,airplane 224330,truck 224331,deer 224332,deer 224333,truck 224334,automobile 224335,bird 224336,deer 224337,truck 224338,cat 224339,cat 224340,deer 224341,cat 224342,truck 224343,truck 224344,bird 224345,truck 224346,horse 224347,ship 224348,horse 224349,dog 224350,cat 224351,airplane 224352,dog 224353,airplane 224354,airplane 224355,automobile 224356,cat 224357,ship 224358,dog 224359,truck 224360,deer 224361,frog 224362,airplane 224363,horse 224364,truck 224365,airplane 224366,truck 224367,dog 224368,airplane 224369,deer 224370,frog 224371,airplane 224372,truck 224373,cat 224374,cat 224375,deer 224376,deer 224377,dog 224378,bird 224379,deer 224380,horse 224381,airplane 224382,cat 224383,cat 224384,truck 224385,automobile 224386,dog 224387,deer 224388,truck 224389,frog 224390,horse 224391,automobile 224392,deer 224393,cat 224394,deer 224395,cat 224396,automobile 224397,automobile 224398,frog 224399,horse 224400,cat 224401,ship 224402,cat 224403,dog 224404,cat 224405,dog 224406,dog 224407,automobile 224408,frog 224409,horse 224410,deer 224411,frog 224412,deer 224413,frog 224414,dog 224415,ship 224416,truck 224417,deer 224418,truck 224419,ship 224420,deer 224421,dog 224422,automobile 224423,truck 224424,deer 224425,airplane 224426,bird 224427,horse 224428,automobile 224429,deer 224430,ship 224431,ship 224432,cat 224433,deer 224434,deer 224435,horse 224436,horse 224437,cat 224438,horse 224439,ship 224440,deer 224441,dog 224442,bird 224443,automobile 224444,horse 224445,deer 224446,bird 224447,cat 224448,frog 224449,airplane 224450,deer 224451,cat 224452,truck 224453,truck 224454,airplane 224455,horse 224456,bird 224457,frog 224458,deer 224459,ship 224460,automobile 224461,cat 224462,dog 224463,ship 224464,airplane 224465,bird 224466,deer 224467,bird 224468,horse 224469,horse 224470,airplane 224471,ship 224472,airplane 224473,ship 224474,airplane 224475,frog 224476,frog 224477,cat 224478,automobile 224479,dog 224480,cat 224481,airplane 224482,frog 224483,horse 224484,frog 224485,airplane 224486,truck 224487,deer 224488,truck 224489,ship 224490,ship 224491,truck 224492,airplane 224493,deer 224494,horse 224495,cat 224496,deer 224497,dog 224498,bird 224499,automobile 224500,deer 224501,frog 224502,cat 224503,dog 224504,dog 224505,horse 224506,deer 224507,automobile 224508,dog 224509,bird 224510,frog 224511,automobile 224512,frog 224513,truck 224514,horse 224515,frog 224516,deer 224517,truck 224518,ship 224519,dog 224520,automobile 224521,dog 224522,truck 224523,deer 224524,bird 224525,airplane 224526,deer 224527,deer 224528,cat 224529,deer 224530,airplane 224531,deer 224532,bird 224533,cat 224534,horse 224535,bird 224536,dog 224537,frog 224538,truck 224539,frog 224540,horse 224541,bird 224542,truck 224543,truck 224544,deer 224545,cat 224546,deer 224547,automobile 224548,frog 224549,ship 224550,deer 224551,frog 224552,airplane 224553,cat 224554,ship 224555,automobile 224556,dog 224557,cat 224558,ship 224559,frog 224560,airplane 224561,truck 224562,cat 224563,bird 224564,automobile 224565,cat 224566,cat 224567,horse 224568,ship 224569,horse 224570,deer 224571,ship 224572,deer 224573,deer 224574,truck 224575,automobile 224576,deer 224577,dog 224578,automobile 224579,horse 224580,horse 224581,deer 224582,cat 224583,deer 224584,deer 224585,automobile 224586,automobile 224587,frog 224588,frog 224589,cat 224590,cat 224591,cat 224592,cat 224593,ship 224594,automobile 224595,bird 224596,deer 224597,deer 224598,bird 224599,horse 224600,truck 224601,airplane 224602,cat 224603,ship 224604,airplane 224605,cat 224606,cat 224607,horse 224608,horse 224609,dog 224610,deer 224611,frog 224612,deer 224613,deer 224614,cat 224615,automobile 224616,automobile 224617,cat 224618,truck 224619,bird 224620,cat 224621,airplane 224622,dog 224623,bird 224624,deer 224625,deer 224626,horse 224627,dog 224628,dog 224629,ship 224630,cat 224631,dog 224632,horse 224633,deer 224634,ship 224635,dog 224636,horse 224637,horse 224638,automobile 224639,dog 224640,deer 224641,dog 224642,truck 224643,deer 224644,frog 224645,ship 224646,automobile 224647,cat 224648,bird 224649,dog 224650,cat 224651,automobile 224652,dog 224653,truck 224654,airplane 224655,horse 224656,airplane 224657,horse 224658,deer 224659,truck 224660,dog 224661,dog 224662,ship 224663,deer 224664,truck 224665,cat 224666,airplane 224667,dog 224668,bird 224669,airplane 224670,horse 224671,frog 224672,deer 224673,bird 224674,cat 224675,airplane 224676,deer 224677,deer 224678,deer 224679,bird 224680,truck 224681,airplane 224682,bird 224683,bird 224684,automobile 224685,deer 224686,frog 224687,deer 224688,bird 224689,bird 224690,automobile 224691,dog 224692,truck 224693,automobile 224694,truck 224695,truck 224696,deer 224697,frog 224698,bird 224699,airplane 224700,deer 224701,automobile 224702,truck 224703,truck 224704,dog 224705,airplane 224706,cat 224707,airplane 224708,automobile 224709,dog 224710,automobile 224711,cat 224712,cat 224713,automobile 224714,deer 224715,horse 224716,horse 224717,deer 224718,frog 224719,frog 224720,bird 224721,automobile 224722,cat 224723,deer 224724,ship 224725,horse 224726,horse 224727,dog 224728,airplane 224729,truck 224730,airplane 224731,deer 224732,cat 224733,automobile 224734,deer 224735,dog 224736,truck 224737,ship 224738,airplane 224739,automobile 224740,dog 224741,cat 224742,dog 224743,bird 224744,cat 224745,frog 224746,airplane 224747,ship 224748,cat 224749,ship 224750,cat 224751,airplane 224752,airplane 224753,frog 224754,automobile 224755,cat 224756,horse 224757,airplane 224758,frog 224759,ship 224760,ship 224761,bird 224762,frog 224763,airplane 224764,cat 224765,ship 224766,bird 224767,deer 224768,frog 224769,ship 224770,cat 224771,cat 224772,bird 224773,automobile 224774,cat 224775,bird 224776,truck 224777,deer 224778,frog 224779,horse 224780,frog 224781,ship 224782,deer 224783,cat 224784,dog 224785,bird 224786,horse 224787,automobile 224788,frog 224789,truck 224790,airplane 224791,dog 224792,horse 224793,deer 224794,airplane 224795,bird 224796,airplane 224797,cat 224798,frog 224799,cat 224800,deer 224801,deer 224802,dog 224803,cat 224804,bird 224805,airplane 224806,truck 224807,frog 224808,horse 224809,truck 224810,cat 224811,frog 224812,bird 224813,automobile 224814,deer 224815,horse 224816,deer 224817,horse 224818,cat 224819,deer 224820,truck 224821,automobile 224822,horse 224823,dog 224824,dog 224825,cat 224826,ship 224827,dog 224828,ship 224829,cat 224830,automobile 224831,airplane 224832,truck 224833,ship 224834,cat 224835,cat 224836,horse 224837,automobile 224838,horse 224839,airplane 224840,deer 224841,deer 224842,dog 224843,horse 224844,truck 224845,frog 224846,automobile 224847,cat 224848,dog 224849,cat 224850,ship 224851,frog 224852,cat 224853,truck 224854,frog 224855,truck 224856,airplane 224857,truck 224858,airplane 224859,airplane 224860,airplane 224861,horse 224862,frog 224863,bird 224864,bird 224865,deer 224866,horse 224867,bird 224868,airplane 224869,frog 224870,truck 224871,airplane 224872,dog 224873,deer 224874,dog 224875,automobile 224876,bird 224877,airplane 224878,airplane 224879,truck 224880,dog 224881,frog 224882,automobile 224883,deer 224884,frog 224885,truck 224886,airplane 224887,deer 224888,horse 224889,frog 224890,ship 224891,truck 224892,deer 224893,ship 224894,deer 224895,ship 224896,deer 224897,cat 224898,horse 224899,dog 224900,truck 224901,frog 224902,deer 224903,cat 224904,ship 224905,cat 224906,horse 224907,deer 224908,cat 224909,frog 224910,ship 224911,dog 224912,ship 224913,deer 224914,truck 224915,cat 224916,frog 224917,cat 224918,automobile 224919,ship 224920,truck 224921,deer 224922,frog 224923,frog 224924,horse 224925,airplane 224926,frog 224927,horse 224928,deer 224929,truck 224930,truck 224931,horse 224932,bird 224933,airplane 224934,truck 224935,frog 224936,deer 224937,dog 224938,horse 224939,dog 224940,horse 224941,ship 224942,automobile 224943,ship 224944,ship 224945,dog 224946,deer 224947,horse 224948,bird 224949,airplane 224950,cat 224951,automobile 224952,bird 224953,dog 224954,truck 224955,horse 224956,airplane 224957,deer 224958,bird 224959,horse 224960,ship 224961,airplane 224962,deer 224963,airplane 224964,truck 224965,bird 224966,cat 224967,horse 224968,dog 224969,deer 224970,truck 224971,truck 224972,truck 224973,horse 224974,frog 224975,bird 224976,frog 224977,horse 224978,ship 224979,ship 224980,horse 224981,airplane 224982,deer 224983,truck 224984,frog 224985,frog 224986,truck 224987,ship 224988,bird 224989,airplane 224990,cat 224991,automobile 224992,frog 224993,cat 224994,frog 224995,bird 224996,ship 224997,horse 224998,deer 224999,ship 225000,dog 225001,horse 225002,airplane 225003,cat 225004,truck 225005,dog 225006,bird 225007,dog 225008,ship 225009,horse 225010,bird 225011,automobile 225012,frog 225013,ship 225014,airplane 225015,ship 225016,bird 225017,automobile 225018,cat 225019,airplane 225020,horse 225021,cat 225022,horse 225023,dog 225024,deer 225025,ship 225026,dog 225027,frog 225028,frog 225029,bird 225030,dog 225031,horse 225032,automobile 225033,frog 225034,deer 225035,cat 225036,airplane 225037,frog 225038,dog 225039,deer 225040,bird 225041,deer 225042,airplane 225043,deer 225044,dog 225045,bird 225046,frog 225047,frog 225048,deer 225049,cat 225050,cat 225051,bird 225052,frog 225053,bird 225054,airplane 225055,deer 225056,bird 225057,ship 225058,bird 225059,airplane 225060,dog 225061,truck 225062,cat 225063,truck 225064,airplane 225065,bird 225066,truck 225067,frog 225068,cat 225069,frog 225070,cat 225071,deer 225072,deer 225073,horse 225074,bird 225075,airplane 225076,deer 225077,cat 225078,bird 225079,ship 225080,airplane 225081,frog 225082,horse 225083,airplane 225084,bird 225085,dog 225086,cat 225087,dog 225088,horse 225089,truck 225090,frog 225091,dog 225092,airplane 225093,deer 225094,frog 225095,airplane 225096,bird 225097,airplane 225098,cat 225099,ship 225100,ship 225101,truck 225102,cat 225103,cat 225104,dog 225105,airplane 225106,truck 225107,horse 225108,airplane 225109,airplane 225110,dog 225111,frog 225112,deer 225113,horse 225114,deer 225115,frog 225116,truck 225117,frog 225118,bird 225119,dog 225120,truck 225121,frog 225122,frog 225123,airplane 225124,deer 225125,truck 225126,bird 225127,deer 225128,dog 225129,horse 225130,airplane 225131,airplane 225132,airplane 225133,cat 225134,deer 225135,frog 225136,deer 225137,dog 225138,ship 225139,bird 225140,horse 225141,horse 225142,truck 225143,horse 225144,ship 225145,frog 225146,truck 225147,deer 225148,truck 225149,automobile 225150,frog 225151,truck 225152,deer 225153,horse 225154,deer 225155,cat 225156,ship 225157,dog 225158,truck 225159,frog 225160,truck 225161,bird 225162,bird 225163,cat 225164,horse 225165,airplane 225166,truck 225167,dog 225168,bird 225169,cat 225170,airplane 225171,horse 225172,frog 225173,frog 225174,automobile 225175,automobile 225176,cat 225177,dog 225178,automobile 225179,cat 225180,frog 225181,automobile 225182,horse 225183,truck 225184,truck 225185,frog 225186,cat 225187,horse 225188,truck 225189,ship 225190,deer 225191,airplane 225192,frog 225193,bird 225194,automobile 225195,horse 225196,horse 225197,cat 225198,horse 225199,dog 225200,dog 225201,deer 225202,automobile 225203,cat 225204,truck 225205,deer 225206,deer 225207,ship 225208,deer 225209,automobile 225210,dog 225211,dog 225212,airplane 225213,horse 225214,dog 225215,deer 225216,deer 225217,truck 225218,airplane 225219,frog 225220,truck 225221,bird 225222,truck 225223,cat 225224,cat 225225,cat 225226,ship 225227,airplane 225228,frog 225229,dog 225230,deer 225231,deer 225232,cat 225233,airplane 225234,bird 225235,airplane 225236,truck 225237,airplane 225238,truck 225239,automobile 225240,airplane 225241,frog 225242,truck 225243,dog 225244,truck 225245,ship 225246,dog 225247,deer 225248,bird 225249,cat 225250,dog 225251,ship 225252,airplane 225253,dog 225254,cat 225255,airplane 225256,frog 225257,cat 225258,cat 225259,frog 225260,deer 225261,cat 225262,bird 225263,airplane 225264,frog 225265,horse 225266,ship 225267,automobile 225268,deer 225269,truck 225270,bird 225271,ship 225272,horse 225273,truck 225274,bird 225275,deer 225276,truck 225277,frog 225278,ship 225279,deer 225280,automobile 225281,ship 225282,cat 225283,horse 225284,ship 225285,dog 225286,automobile 225287,airplane 225288,bird 225289,cat 225290,cat 225291,dog 225292,cat 225293,horse 225294,bird 225295,cat 225296,airplane 225297,dog 225298,horse 225299,bird 225300,dog 225301,deer 225302,cat 225303,cat 225304,dog 225305,airplane 225306,bird 225307,horse 225308,deer 225309,bird 225310,bird 225311,frog 225312,truck 225313,bird 225314,deer 225315,cat 225316,bird 225317,deer 225318,cat 225319,horse 225320,automobile 225321,bird 225322,frog 225323,horse 225324,truck 225325,bird 225326,deer 225327,truck 225328,cat 225329,deer 225330,deer 225331,airplane 225332,frog 225333,cat 225334,dog 225335,deer 225336,bird 225337,horse 225338,deer 225339,truck 225340,deer 225341,truck 225342,airplane 225343,deer 225344,airplane 225345,dog 225346,frog 225347,frog 225348,automobile 225349,dog 225350,cat 225351,airplane 225352,truck 225353,horse 225354,truck 225355,dog 225356,automobile 225357,dog 225358,ship 225359,airplane 225360,truck 225361,airplane 225362,deer 225363,bird 225364,cat 225365,automobile 225366,bird 225367,deer 225368,horse 225369,dog 225370,frog 225371,deer 225372,bird 225373,deer 225374,truck 225375,ship 225376,deer 225377,airplane 225378,deer 225379,bird 225380,deer 225381,airplane 225382,horse 225383,frog 225384,bird 225385,cat 225386,dog 225387,deer 225388,airplane 225389,truck 225390,cat 225391,truck 225392,deer 225393,dog 225394,dog 225395,automobile 225396,deer 225397,dog 225398,horse 225399,bird 225400,bird 225401,cat 225402,airplane 225403,deer 225404,cat 225405,horse 225406,deer 225407,airplane 225408,cat 225409,cat 225410,automobile 225411,horse 225412,automobile 225413,deer 225414,bird 225415,frog 225416,cat 225417,automobile 225418,automobile 225419,bird 225420,ship 225421,bird 225422,cat 225423,cat 225424,bird 225425,ship 225426,deer 225427,deer 225428,dog 225429,frog 225430,automobile 225431,frog 225432,truck 225433,ship 225434,airplane 225435,cat 225436,cat 225437,airplane 225438,horse 225439,automobile 225440,dog 225441,bird 225442,cat 225443,truck 225444,airplane 225445,cat 225446,automobile 225447,dog 225448,truck 225449,airplane 225450,deer 225451,ship 225452,truck 225453,cat 225454,cat 225455,frog 225456,ship 225457,truck 225458,airplane 225459,cat 225460,frog 225461,truck 225462,horse 225463,horse 225464,dog 225465,dog 225466,ship 225467,horse 225468,cat 225469,ship 225470,ship 225471,deer 225472,horse 225473,frog 225474,airplane 225475,cat 225476,frog 225477,deer 225478,dog 225479,deer 225480,frog 225481,truck 225482,horse 225483,deer 225484,ship 225485,bird 225486,airplane 225487,truck 225488,truck 225489,cat 225490,truck 225491,ship 225492,horse 225493,deer 225494,frog 225495,deer 225496,cat 225497,airplane 225498,dog 225499,automobile 225500,ship 225501,horse 225502,horse 225503,dog 225504,bird 225505,deer 225506,cat 225507,airplane 225508,ship 225509,cat 225510,dog 225511,bird 225512,dog 225513,horse 225514,truck 225515,horse 225516,automobile 225517,automobile 225518,truck 225519,frog 225520,bird 225521,cat 225522,airplane 225523,airplane 225524,dog 225525,frog 225526,dog 225527,deer 225528,dog 225529,dog 225530,truck 225531,horse 225532,frog 225533,truck 225534,airplane 225535,deer 225536,cat 225537,dog 225538,frog 225539,dog 225540,cat 225541,truck 225542,automobile 225543,deer 225544,dog 225545,truck 225546,airplane 225547,ship 225548,frog 225549,dog 225550,truck 225551,dog 225552,horse 225553,automobile 225554,truck 225555,automobile 225556,frog 225557,airplane 225558,bird 225559,automobile 225560,truck 225561,deer 225562,airplane 225563,ship 225564,deer 225565,automobile 225566,cat 225567,bird 225568,horse 225569,deer 225570,horse 225571,truck 225572,deer 225573,cat 225574,bird 225575,dog 225576,deer 225577,deer 225578,cat 225579,deer 225580,cat 225581,bird 225582,bird 225583,frog 225584,dog 225585,cat 225586,cat 225587,airplane 225588,bird 225589,automobile 225590,cat 225591,cat 225592,truck 225593,dog 225594,truck 225595,frog 225596,deer 225597,ship 225598,truck 225599,truck 225600,truck 225601,deer 225602,dog 225603,airplane 225604,bird 225605,truck 225606,dog 225607,frog 225608,cat 225609,deer 225610,cat 225611,bird 225612,cat 225613,truck 225614,cat 225615,airplane 225616,cat 225617,airplane 225618,frog 225619,deer 225620,horse 225621,airplane 225622,frog 225623,airplane 225624,ship 225625,bird 225626,deer 225627,ship 225628,ship 225629,airplane 225630,ship 225631,frog 225632,truck 225633,horse 225634,horse 225635,frog 225636,cat 225637,airplane 225638,ship 225639,ship 225640,truck 225641,bird 225642,horse 225643,horse 225644,frog 225645,airplane 225646,dog 225647,dog 225648,horse 225649,automobile 225650,bird 225651,dog 225652,airplane 225653,truck 225654,horse 225655,dog 225656,ship 225657,ship 225658,ship 225659,automobile 225660,dog 225661,cat 225662,ship 225663,truck 225664,bird 225665,deer 225666,frog 225667,bird 225668,cat 225669,cat 225670,airplane 225671,horse 225672,automobile 225673,deer 225674,dog 225675,dog 225676,truck 225677,bird 225678,dog 225679,dog 225680,automobile 225681,bird 225682,deer 225683,horse 225684,dog 225685,dog 225686,airplane 225687,truck 225688,horse 225689,frog 225690,truck 225691,truck 225692,automobile 225693,truck 225694,horse 225695,deer 225696,truck 225697,cat 225698,cat 225699,frog 225700,automobile 225701,deer 225702,truck 225703,deer 225704,bird 225705,deer 225706,airplane 225707,airplane 225708,bird 225709,deer 225710,deer 225711,horse 225712,cat 225713,dog 225714,cat 225715,dog 225716,truck 225717,frog 225718,airplane 225719,cat 225720,dog 225721,cat 225722,dog 225723,airplane 225724,horse 225725,automobile 225726,automobile 225727,truck 225728,dog 225729,bird 225730,frog 225731,dog 225732,frog 225733,deer 225734,cat 225735,cat 225736,airplane 225737,deer 225738,automobile 225739,deer 225740,bird 225741,cat 225742,airplane 225743,truck 225744,airplane 225745,horse 225746,deer 225747,ship 225748,bird 225749,automobile 225750,cat 225751,frog 225752,automobile 225753,ship 225754,dog 225755,deer 225756,dog 225757,ship 225758,airplane 225759,airplane 225760,truck 225761,frog 225762,cat 225763,frog 225764,horse 225765,frog 225766,airplane 225767,deer 225768,bird 225769,bird 225770,cat 225771,bird 225772,dog 225773,truck 225774,frog 225775,automobile 225776,deer 225777,truck 225778,frog 225779,dog 225780,dog 225781,dog 225782,dog 225783,frog 225784,horse 225785,cat 225786,deer 225787,deer 225788,deer 225789,dog 225790,dog 225791,bird 225792,horse 225793,cat 225794,bird 225795,horse 225796,horse 225797,bird 225798,frog 225799,cat 225800,dog 225801,truck 225802,bird 225803,bird 225804,dog 225805,frog 225806,automobile 225807,cat 225808,airplane 225809,bird 225810,horse 225811,cat 225812,bird 225813,truck 225814,automobile 225815,deer 225816,automobile 225817,horse 225818,deer 225819,bird 225820,cat 225821,horse 225822,horse 225823,automobile 225824,bird 225825,airplane 225826,horse 225827,bird 225828,deer 225829,dog 225830,ship 225831,bird 225832,horse 225833,frog 225834,airplane 225835,deer 225836,frog 225837,bird 225838,airplane 225839,frog 225840,frog 225841,airplane 225842,frog 225843,dog 225844,frog 225845,airplane 225846,frog 225847,bird 225848,dog 225849,automobile 225850,cat 225851,bird 225852,truck 225853,cat 225854,ship 225855,frog 225856,automobile 225857,horse 225858,dog 225859,truck 225860,dog 225861,ship 225862,deer 225863,horse 225864,deer 225865,dog 225866,automobile 225867,cat 225868,cat 225869,airplane 225870,cat 225871,dog 225872,frog 225873,horse 225874,cat 225875,bird 225876,horse 225877,deer 225878,deer 225879,cat 225880,automobile 225881,truck 225882,dog 225883,cat 225884,cat 225885,truck 225886,automobile 225887,horse 225888,dog 225889,cat 225890,frog 225891,horse 225892,truck 225893,deer 225894,truck 225895,ship 225896,cat 225897,ship 225898,deer 225899,airplane 225900,truck 225901,airplane 225902,deer 225903,cat 225904,frog 225905,cat 225906,truck 225907,automobile 225908,deer 225909,frog 225910,deer 225911,dog 225912,bird 225913,deer 225914,deer 225915,cat 225916,cat 225917,cat 225918,truck 225919,deer 225920,truck 225921,bird 225922,deer 225923,ship 225924,deer 225925,automobile 225926,dog 225927,dog 225928,cat 225929,truck 225930,cat 225931,horse 225932,airplane 225933,truck 225934,cat 225935,cat 225936,automobile 225937,horse 225938,bird 225939,truck 225940,deer 225941,dog 225942,airplane 225943,ship 225944,bird 225945,truck 225946,dog 225947,cat 225948,frog 225949,deer 225950,deer 225951,horse 225952,truck 225953,cat 225954,airplane 225955,frog 225956,frog 225957,frog 225958,airplane 225959,frog 225960,bird 225961,frog 225962,truck 225963,truck 225964,frog 225965,cat 225966,automobile 225967,automobile 225968,horse 225969,ship 225970,horse 225971,truck 225972,cat 225973,airplane 225974,dog 225975,bird 225976,cat 225977,airplane 225978,horse 225979,bird 225980,cat 225981,horse 225982,frog 225983,ship 225984,horse 225985,cat 225986,truck 225987,automobile 225988,airplane 225989,horse 225990,horse 225991,dog 225992,truck 225993,truck 225994,deer 225995,deer 225996,cat 225997,ship 225998,truck 225999,airplane 226000,airplane 226001,airplane 226002,bird 226003,bird 226004,ship 226005,automobile 226006,frog 226007,ship 226008,automobile 226009,dog 226010,cat 226011,cat 226012,dog 226013,dog 226014,deer 226015,dog 226016,automobile 226017,ship 226018,truck 226019,ship 226020,dog 226021,cat 226022,automobile 226023,airplane 226024,dog 226025,dog 226026,frog 226027,airplane 226028,bird 226029,horse 226030,bird 226031,frog 226032,cat 226033,bird 226034,cat 226035,bird 226036,deer 226037,cat 226038,bird 226039,ship 226040,ship 226041,cat 226042,dog 226043,cat 226044,airplane 226045,deer 226046,bird 226047,horse 226048,horse 226049,bird 226050,frog 226051,deer 226052,automobile 226053,horse 226054,bird 226055,airplane 226056,ship 226057,bird 226058,truck 226059,deer 226060,truck 226061,bird 226062,dog 226063,airplane 226064,dog 226065,frog 226066,cat 226067,airplane 226068,dog 226069,dog 226070,frog 226071,ship 226072,horse 226073,deer 226074,automobile 226075,ship 226076,airplane 226077,ship 226078,frog 226079,truck 226080,horse 226081,cat 226082,dog 226083,deer 226084,truck 226085,cat 226086,cat 226087,cat 226088,ship 226089,cat 226090,ship 226091,airplane 226092,frog 226093,horse 226094,airplane 226095,bird 226096,bird 226097,airplane 226098,truck 226099,automobile 226100,deer 226101,cat 226102,truck 226103,airplane 226104,deer 226105,truck 226106,horse 226107,ship 226108,truck 226109,airplane 226110,cat 226111,cat 226112,dog 226113,cat 226114,automobile 226115,cat 226116,truck 226117,frog 226118,cat 226119,deer 226120,cat 226121,airplane 226122,deer 226123,dog 226124,dog 226125,airplane 226126,dog 226127,dog 226128,horse 226129,deer 226130,frog 226131,frog 226132,dog 226133,horse 226134,deer 226135,ship 226136,frog 226137,airplane 226138,airplane 226139,ship 226140,cat 226141,truck 226142,dog 226143,deer 226144,deer 226145,frog 226146,frog 226147,airplane 226148,automobile 226149,ship 226150,deer 226151,deer 226152,cat 226153,cat 226154,bird 226155,deer 226156,horse 226157,horse 226158,deer 226159,ship 226160,deer 226161,cat 226162,ship 226163,cat 226164,bird 226165,frog 226166,deer 226167,horse 226168,frog 226169,deer 226170,dog 226171,horse 226172,dog 226173,deer 226174,dog 226175,frog 226176,airplane 226177,cat 226178,frog 226179,dog 226180,cat 226181,dog 226182,horse 226183,automobile 226184,airplane 226185,deer 226186,frog 226187,cat 226188,cat 226189,frog 226190,horse 226191,cat 226192,bird 226193,deer 226194,deer 226195,horse 226196,frog 226197,cat 226198,airplane 226199,airplane 226200,truck 226201,frog 226202,frog 226203,dog 226204,bird 226205,ship 226206,horse 226207,bird 226208,airplane 226209,cat 226210,cat 226211,deer 226212,horse 226213,cat 226214,deer 226215,dog 226216,deer 226217,airplane 226218,horse 226219,frog 226220,dog 226221,deer 226222,cat 226223,bird 226224,airplane 226225,frog 226226,airplane 226227,truck 226228,automobile 226229,horse 226230,automobile 226231,truck 226232,frog 226233,cat 226234,horse 226235,cat 226236,frog 226237,cat 226238,deer 226239,frog 226240,cat 226241,bird 226242,horse 226243,airplane 226244,cat 226245,cat 226246,deer 226247,frog 226248,bird 226249,bird 226250,airplane 226251,horse 226252,cat 226253,ship 226254,horse 226255,airplane 226256,airplane 226257,frog 226258,bird 226259,ship 226260,horse 226261,airplane 226262,frog 226263,horse 226264,dog 226265,horse 226266,frog 226267,horse 226268,automobile 226269,horse 226270,airplane 226271,horse 226272,frog 226273,airplane 226274,truck 226275,cat 226276,cat 226277,bird 226278,automobile 226279,frog 226280,deer 226281,frog 226282,airplane 226283,cat 226284,deer 226285,dog 226286,ship 226287,deer 226288,airplane 226289,truck 226290,horse 226291,truck 226292,automobile 226293,frog 226294,airplane 226295,frog 226296,cat 226297,airplane 226298,deer 226299,deer 226300,horse 226301,deer 226302,truck 226303,automobile 226304,deer 226305,cat 226306,frog 226307,frog 226308,airplane 226309,deer 226310,automobile 226311,frog 226312,horse 226313,truck 226314,truck 226315,deer 226316,automobile 226317,bird 226318,horse 226319,dog 226320,truck 226321,frog 226322,frog 226323,automobile 226324,deer 226325,frog 226326,ship 226327,bird 226328,horse 226329,frog 226330,dog 226331,cat 226332,bird 226333,ship 226334,horse 226335,truck 226336,airplane 226337,truck 226338,airplane 226339,deer 226340,dog 226341,cat 226342,horse 226343,automobile 226344,deer 226345,deer 226346,deer 226347,deer 226348,ship 226349,bird 226350,horse 226351,frog 226352,ship 226353,automobile 226354,frog 226355,horse 226356,ship 226357,cat 226358,deer 226359,deer 226360,frog 226361,automobile 226362,deer 226363,airplane 226364,horse 226365,horse 226366,bird 226367,deer 226368,ship 226369,deer 226370,dog 226371,bird 226372,cat 226373,frog 226374,dog 226375,horse 226376,cat 226377,ship 226378,truck 226379,deer 226380,deer 226381,cat 226382,horse 226383,truck 226384,truck 226385,deer 226386,cat 226387,frog 226388,frog 226389,deer 226390,airplane 226391,cat 226392,airplane 226393,frog 226394,truck 226395,bird 226396,airplane 226397,airplane 226398,frog 226399,bird 226400,deer 226401,bird 226402,truck 226403,bird 226404,automobile 226405,automobile 226406,horse 226407,dog 226408,cat 226409,truck 226410,dog 226411,bird 226412,frog 226413,deer 226414,airplane 226415,ship 226416,airplane 226417,deer 226418,cat 226419,deer 226420,bird 226421,airplane 226422,cat 226423,ship 226424,dog 226425,dog 226426,horse 226427,dog 226428,bird 226429,cat 226430,cat 226431,truck 226432,horse 226433,bird 226434,truck 226435,horse 226436,bird 226437,truck 226438,automobile 226439,frog 226440,airplane 226441,frog 226442,ship 226443,automobile 226444,automobile 226445,cat 226446,truck 226447,cat 226448,horse 226449,ship 226450,deer 226451,cat 226452,ship 226453,dog 226454,ship 226455,horse 226456,frog 226457,truck 226458,deer 226459,bird 226460,dog 226461,automobile 226462,frog 226463,cat 226464,bird 226465,cat 226466,cat 226467,frog 226468,bird 226469,truck 226470,dog 226471,truck 226472,horse 226473,bird 226474,deer 226475,frog 226476,dog 226477,bird 226478,deer 226479,bird 226480,ship 226481,deer 226482,cat 226483,bird 226484,cat 226485,automobile 226486,bird 226487,cat 226488,automobile 226489,frog 226490,airplane 226491,dog 226492,cat 226493,frog 226494,bird 226495,bird 226496,dog 226497,dog 226498,truck 226499,airplane 226500,cat 226501,deer 226502,frog 226503,airplane 226504,horse 226505,ship 226506,ship 226507,ship 226508,dog 226509,cat 226510,ship 226511,horse 226512,frog 226513,horse 226514,deer 226515,deer 226516,frog 226517,airplane 226518,frog 226519,bird 226520,dog 226521,automobile 226522,bird 226523,cat 226524,deer 226525,bird 226526,cat 226527,airplane 226528,ship 226529,cat 226530,frog 226531,ship 226532,truck 226533,airplane 226534,ship 226535,deer 226536,deer 226537,deer 226538,cat 226539,automobile 226540,ship 226541,horse 226542,deer 226543,truck 226544,bird 226545,truck 226546,cat 226547,dog 226548,dog 226549,cat 226550,dog 226551,dog 226552,horse 226553,ship 226554,horse 226555,bird 226556,truck 226557,dog 226558,truck 226559,truck 226560,dog 226561,automobile 226562,horse 226563,deer 226564,truck 226565,ship 226566,cat 226567,frog 226568,truck 226569,dog 226570,cat 226571,deer 226572,ship 226573,deer 226574,deer 226575,automobile 226576,horse 226577,dog 226578,dog 226579,frog 226580,cat 226581,deer 226582,bird 226583,deer 226584,dog 226585,frog 226586,automobile 226587,bird 226588,horse 226589,horse 226590,deer 226591,horse 226592,bird 226593,bird 226594,automobile 226595,bird 226596,truck 226597,deer 226598,frog 226599,airplane 226600,deer 226601,cat 226602,frog 226603,airplane 226604,truck 226605,frog 226606,dog 226607,truck 226608,ship 226609,horse 226610,truck 226611,ship 226612,dog 226613,horse 226614,cat 226615,frog 226616,truck 226617,automobile 226618,truck 226619,deer 226620,bird 226621,bird 226622,horse 226623,cat 226624,bird 226625,airplane 226626,dog 226627,horse 226628,frog 226629,frog 226630,truck 226631,truck 226632,deer 226633,cat 226634,airplane 226635,dog 226636,truck 226637,deer 226638,frog 226639,ship 226640,ship 226641,deer 226642,deer 226643,frog 226644,deer 226645,airplane 226646,deer 226647,deer 226648,frog 226649,horse 226650,dog 226651,horse 226652,cat 226653,horse 226654,deer 226655,dog 226656,airplane 226657,horse 226658,automobile 226659,cat 226660,ship 226661,deer 226662,horse 226663,dog 226664,airplane 226665,dog 226666,ship 226667,deer 226668,bird 226669,cat 226670,horse 226671,cat 226672,truck 226673,airplane 226674,airplane 226675,dog 226676,cat 226677,deer 226678,frog 226679,airplane 226680,ship 226681,horse 226682,cat 226683,ship 226684,deer 226685,airplane 226686,truck 226687,deer 226688,horse 226689,cat 226690,frog 226691,automobile 226692,dog 226693,bird 226694,cat 226695,ship 226696,dog 226697,truck 226698,horse 226699,cat 226700,truck 226701,airplane 226702,automobile 226703,airplane 226704,bird 226705,dog 226706,truck 226707,horse 226708,ship 226709,horse 226710,horse 226711,cat 226712,cat 226713,deer 226714,automobile 226715,truck 226716,cat 226717,horse 226718,deer 226719,truck 226720,airplane 226721,cat 226722,ship 226723,deer 226724,frog 226725,ship 226726,bird 226727,horse 226728,truck 226729,dog 226730,airplane 226731,horse 226732,horse 226733,frog 226734,airplane 226735,cat 226736,horse 226737,cat 226738,ship 226739,airplane 226740,deer 226741,airplane 226742,airplane 226743,airplane 226744,deer 226745,cat 226746,dog 226747,dog 226748,cat 226749,cat 226750,bird 226751,horse 226752,cat 226753,cat 226754,frog 226755,cat 226756,dog 226757,bird 226758,dog 226759,bird 226760,deer 226761,deer 226762,deer 226763,frog 226764,truck 226765,airplane 226766,deer 226767,airplane 226768,airplane 226769,deer 226770,airplane 226771,bird 226772,ship 226773,bird 226774,frog 226775,horse 226776,cat 226777,truck 226778,truck 226779,cat 226780,dog 226781,airplane 226782,ship 226783,cat 226784,cat 226785,bird 226786,ship 226787,ship 226788,dog 226789,truck 226790,airplane 226791,truck 226792,cat 226793,frog 226794,dog 226795,frog 226796,dog 226797,cat 226798,cat 226799,cat 226800,deer 226801,deer 226802,horse 226803,truck 226804,airplane 226805,frog 226806,truck 226807,horse 226808,frog 226809,horse 226810,deer 226811,truck 226812,cat 226813,truck 226814,frog 226815,cat 226816,truck 226817,bird 226818,truck 226819,ship 226820,horse 226821,frog 226822,ship 226823,ship 226824,truck 226825,dog 226826,frog 226827,cat 226828,cat 226829,dog 226830,deer 226831,deer 226832,automobile 226833,deer 226834,bird 226835,cat 226836,deer 226837,airplane 226838,horse 226839,automobile 226840,truck 226841,ship 226842,horse 226843,frog 226844,bird 226845,airplane 226846,cat 226847,frog 226848,airplane 226849,dog 226850,bird 226851,bird 226852,airplane 226853,deer 226854,dog 226855,deer 226856,dog 226857,dog 226858,cat 226859,airplane 226860,cat 226861,dog 226862,bird 226863,airplane 226864,ship 226865,airplane 226866,dog 226867,deer 226868,airplane 226869,automobile 226870,cat 226871,dog 226872,cat 226873,bird 226874,frog 226875,deer 226876,bird 226877,deer 226878,frog 226879,bird 226880,dog 226881,deer 226882,airplane 226883,cat 226884,automobile 226885,bird 226886,dog 226887,dog 226888,cat 226889,automobile 226890,truck 226891,airplane 226892,frog 226893,bird 226894,deer 226895,truck 226896,automobile 226897,cat 226898,deer 226899,dog 226900,bird 226901,bird 226902,deer 226903,dog 226904,frog 226905,cat 226906,deer 226907,truck 226908,deer 226909,cat 226910,deer 226911,deer 226912,horse 226913,horse 226914,ship 226915,frog 226916,horse 226917,airplane 226918,airplane 226919,deer 226920,ship 226921,automobile 226922,deer 226923,cat 226924,truck 226925,horse 226926,airplane 226927,deer 226928,horse 226929,deer 226930,cat 226931,bird 226932,deer 226933,dog 226934,bird 226935,frog 226936,deer 226937,deer 226938,frog 226939,cat 226940,dog 226941,deer 226942,truck 226943,truck 226944,horse 226945,cat 226946,deer 226947,dog 226948,dog 226949,airplane 226950,cat 226951,automobile 226952,bird 226953,deer 226954,airplane 226955,cat 226956,deer 226957,cat 226958,deer 226959,deer 226960,cat 226961,bird 226962,cat 226963,frog 226964,frog 226965,truck 226966,horse 226967,cat 226968,bird 226969,bird 226970,ship 226971,airplane 226972,deer 226973,cat 226974,cat 226975,dog 226976,dog 226977,ship 226978,truck 226979,horse 226980,dog 226981,bird 226982,dog 226983,frog 226984,frog 226985,truck 226986,automobile 226987,ship 226988,horse 226989,bird 226990,cat 226991,cat 226992,ship 226993,dog 226994,cat 226995,horse 226996,truck 226997,truck 226998,deer 226999,deer 227000,truck 227001,cat 227002,truck 227003,truck 227004,frog 227005,horse 227006,dog 227007,cat 227008,airplane 227009,ship 227010,horse 227011,deer 227012,horse 227013,airplane 227014,truck 227015,cat 227016,airplane 227017,deer 227018,horse 227019,horse 227020,deer 227021,dog 227022,airplane 227023,cat 227024,airplane 227025,bird 227026,ship 227027,cat 227028,frog 227029,horse 227030,ship 227031,cat 227032,bird 227033,frog 227034,cat 227035,ship 227036,automobile 227037,horse 227038,deer 227039,bird 227040,dog 227041,cat 227042,airplane 227043,dog 227044,dog 227045,horse 227046,deer 227047,frog 227048,horse 227049,deer 227050,deer 227051,bird 227052,truck 227053,automobile 227054,dog 227055,deer 227056,horse 227057,truck 227058,airplane 227059,cat 227060,airplane 227061,horse 227062,cat 227063,airplane 227064,cat 227065,airplane 227066,truck 227067,ship 227068,airplane 227069,automobile 227070,ship 227071,deer 227072,airplane 227073,horse 227074,bird 227075,cat 227076,cat 227077,airplane 227078,cat 227079,frog 227080,automobile 227081,cat 227082,truck 227083,cat 227084,airplane 227085,frog 227086,bird 227087,frog 227088,frog 227089,horse 227090,cat 227091,bird 227092,horse 227093,horse 227094,dog 227095,bird 227096,automobile 227097,dog 227098,automobile 227099,deer 227100,frog 227101,bird 227102,truck 227103,cat 227104,bird 227105,deer 227106,bird 227107,horse 227108,horse 227109,frog 227110,cat 227111,automobile 227112,frog 227113,dog 227114,horse 227115,frog 227116,deer 227117,dog 227118,airplane 227119,truck 227120,frog 227121,ship 227122,horse 227123,frog 227124,horse 227125,bird 227126,truck 227127,ship 227128,deer 227129,truck 227130,frog 227131,frog 227132,cat 227133,dog 227134,horse 227135,ship 227136,truck 227137,cat 227138,dog 227139,ship 227140,dog 227141,automobile 227142,airplane 227143,deer 227144,bird 227145,cat 227146,deer 227147,ship 227148,automobile 227149,frog 227150,horse 227151,deer 227152,bird 227153,bird 227154,truck 227155,truck 227156,automobile 227157,deer 227158,dog 227159,ship 227160,bird 227161,automobile 227162,truck 227163,truck 227164,frog 227165,frog 227166,horse 227167,deer 227168,truck 227169,cat 227170,dog 227171,cat 227172,deer 227173,horse 227174,automobile 227175,airplane 227176,ship 227177,bird 227178,dog 227179,horse 227180,ship 227181,cat 227182,dog 227183,horse 227184,airplane 227185,automobile 227186,horse 227187,dog 227188,deer 227189,deer 227190,dog 227191,cat 227192,dog 227193,frog 227194,truck 227195,horse 227196,ship 227197,frog 227198,truck 227199,airplane 227200,deer 227201,deer 227202,horse 227203,automobile 227204,deer 227205,airplane 227206,cat 227207,ship 227208,deer 227209,deer 227210,ship 227211,ship 227212,ship 227213,cat 227214,deer 227215,airplane 227216,deer 227217,frog 227218,cat 227219,airplane 227220,frog 227221,horse 227222,horse 227223,dog 227224,truck 227225,cat 227226,dog 227227,truck 227228,deer 227229,truck 227230,bird 227231,dog 227232,dog 227233,truck 227234,frog 227235,bird 227236,cat 227237,truck 227238,airplane 227239,horse 227240,horse 227241,automobile 227242,horse 227243,bird 227244,airplane 227245,horse 227246,deer 227247,airplane 227248,airplane 227249,dog 227250,dog 227251,truck 227252,cat 227253,airplane 227254,dog 227255,dog 227256,truck 227257,horse 227258,deer 227259,cat 227260,truck 227261,dog 227262,automobile 227263,airplane 227264,dog 227265,automobile 227266,deer 227267,horse 227268,cat 227269,automobile 227270,dog 227271,cat 227272,frog 227273,airplane 227274,deer 227275,truck 227276,airplane 227277,ship 227278,truck 227279,truck 227280,frog 227281,ship 227282,bird 227283,cat 227284,frog 227285,truck 227286,cat 227287,bird 227288,ship 227289,frog 227290,dog 227291,automobile 227292,cat 227293,ship 227294,frog 227295,airplane 227296,cat 227297,airplane 227298,truck 227299,frog 227300,bird 227301,horse 227302,cat 227303,deer 227304,deer 227305,horse 227306,frog 227307,dog 227308,truck 227309,deer 227310,deer 227311,airplane 227312,horse 227313,bird 227314,bird 227315,frog 227316,ship 227317,deer 227318,truck 227319,bird 227320,dog 227321,deer 227322,horse 227323,deer 227324,horse 227325,cat 227326,truck 227327,dog 227328,truck 227329,horse 227330,truck 227331,frog 227332,deer 227333,cat 227334,cat 227335,deer 227336,cat 227337,truck 227338,cat 227339,bird 227340,cat 227341,horse 227342,bird 227343,horse 227344,deer 227345,automobile 227346,horse 227347,dog 227348,automobile 227349,truck 227350,horse 227351,bird 227352,automobile 227353,horse 227354,cat 227355,automobile 227356,ship 227357,bird 227358,truck 227359,ship 227360,deer 227361,truck 227362,bird 227363,deer 227364,automobile 227365,dog 227366,truck 227367,dog 227368,cat 227369,cat 227370,frog 227371,deer 227372,airplane 227373,cat 227374,cat 227375,cat 227376,frog 227377,horse 227378,dog 227379,frog 227380,ship 227381,cat 227382,dog 227383,frog 227384,deer 227385,dog 227386,ship 227387,horse 227388,cat 227389,truck 227390,airplane 227391,horse 227392,cat 227393,deer 227394,airplane 227395,ship 227396,deer 227397,deer 227398,deer 227399,deer 227400,dog 227401,horse 227402,cat 227403,airplane 227404,dog 227405,truck 227406,frog 227407,dog 227408,airplane 227409,frog 227410,frog 227411,frog 227412,automobile 227413,airplane 227414,horse 227415,frog 227416,airplane 227417,airplane 227418,truck 227419,cat 227420,ship 227421,bird 227422,ship 227423,automobile 227424,deer 227425,frog 227426,truck 227427,deer 227428,dog 227429,airplane 227430,frog 227431,frog 227432,bird 227433,cat 227434,truck 227435,deer 227436,frog 227437,frog 227438,dog 227439,deer 227440,horse 227441,cat 227442,truck 227443,automobile 227444,horse 227445,truck 227446,dog 227447,ship 227448,automobile 227449,deer 227450,horse 227451,frog 227452,cat 227453,bird 227454,deer 227455,deer 227456,dog 227457,bird 227458,airplane 227459,deer 227460,dog 227461,truck 227462,cat 227463,deer 227464,bird 227465,horse 227466,airplane 227467,deer 227468,deer 227469,dog 227470,horse 227471,frog 227472,horse 227473,airplane 227474,airplane 227475,automobile 227476,deer 227477,cat 227478,truck 227479,deer 227480,bird 227481,ship 227482,airplane 227483,cat 227484,truck 227485,truck 227486,frog 227487,ship 227488,truck 227489,automobile 227490,cat 227491,cat 227492,horse 227493,airplane 227494,frog 227495,horse 227496,truck 227497,automobile 227498,dog 227499,automobile 227500,ship 227501,dog 227502,automobile 227503,cat 227504,airplane 227505,deer 227506,airplane 227507,horse 227508,cat 227509,bird 227510,deer 227511,horse 227512,bird 227513,truck 227514,airplane 227515,bird 227516,dog 227517,cat 227518,horse 227519,airplane 227520,frog 227521,ship 227522,frog 227523,dog 227524,cat 227525,dog 227526,bird 227527,deer 227528,dog 227529,airplane 227530,bird 227531,truck 227532,cat 227533,cat 227534,truck 227535,truck 227536,airplane 227537,cat 227538,truck 227539,bird 227540,truck 227541,dog 227542,horse 227543,dog 227544,bird 227545,truck 227546,bird 227547,deer 227548,airplane 227549,cat 227550,cat 227551,ship 227552,cat 227553,truck 227554,cat 227555,dog 227556,bird 227557,ship 227558,airplane 227559,dog 227560,frog 227561,dog 227562,dog 227563,cat 227564,airplane 227565,dog 227566,cat 227567,deer 227568,airplane 227569,horse 227570,dog 227571,deer 227572,frog 227573,deer 227574,truck 227575,dog 227576,truck 227577,ship 227578,automobile 227579,truck 227580,horse 227581,deer 227582,cat 227583,automobile 227584,dog 227585,bird 227586,bird 227587,ship 227588,horse 227589,airplane 227590,frog 227591,deer 227592,deer 227593,dog 227594,truck 227595,horse 227596,cat 227597,deer 227598,deer 227599,dog 227600,cat 227601,deer 227602,ship 227603,truck 227604,bird 227605,deer 227606,frog 227607,dog 227608,horse 227609,cat 227610,dog 227611,horse 227612,dog 227613,deer 227614,cat 227615,dog 227616,deer 227617,automobile 227618,dog 227619,ship 227620,deer 227621,truck 227622,bird 227623,truck 227624,truck 227625,frog 227626,bird 227627,ship 227628,frog 227629,deer 227630,ship 227631,horse 227632,ship 227633,bird 227634,cat 227635,horse 227636,automobile 227637,dog 227638,truck 227639,ship 227640,bird 227641,airplane 227642,cat 227643,ship 227644,dog 227645,frog 227646,deer 227647,bird 227648,cat 227649,ship 227650,bird 227651,bird 227652,automobile 227653,cat 227654,automobile 227655,horse 227656,airplane 227657,airplane 227658,airplane 227659,ship 227660,horse 227661,deer 227662,dog 227663,ship 227664,frog 227665,horse 227666,horse 227667,cat 227668,cat 227669,airplane 227670,dog 227671,frog 227672,ship 227673,frog 227674,airplane 227675,airplane 227676,cat 227677,horse 227678,airplane 227679,deer 227680,dog 227681,frog 227682,dog 227683,ship 227684,frog 227685,frog 227686,cat 227687,bird 227688,cat 227689,dog 227690,cat 227691,automobile 227692,deer 227693,deer 227694,frog 227695,dog 227696,deer 227697,deer 227698,cat 227699,bird 227700,dog 227701,cat 227702,dog 227703,deer 227704,truck 227705,deer 227706,cat 227707,deer 227708,bird 227709,deer 227710,deer 227711,cat 227712,truck 227713,deer 227714,truck 227715,deer 227716,cat 227717,truck 227718,truck 227719,bird 227720,deer 227721,truck 227722,deer 227723,dog 227724,bird 227725,truck 227726,dog 227727,deer 227728,bird 227729,cat 227730,horse 227731,truck 227732,truck 227733,horse 227734,ship 227735,bird 227736,cat 227737,frog 227738,cat 227739,bird 227740,truck 227741,airplane 227742,airplane 227743,horse 227744,deer 227745,frog 227746,dog 227747,cat 227748,bird 227749,horse 227750,airplane 227751,airplane 227752,frog 227753,automobile 227754,airplane 227755,cat 227756,ship 227757,automobile 227758,cat 227759,horse 227760,dog 227761,cat 227762,bird 227763,bird 227764,automobile 227765,horse 227766,deer 227767,deer 227768,bird 227769,truck 227770,truck 227771,ship 227772,airplane 227773,frog 227774,automobile 227775,frog 227776,cat 227777,horse 227778,deer 227779,truck 227780,frog 227781,bird 227782,dog 227783,deer 227784,truck 227785,deer 227786,cat 227787,dog 227788,automobile 227789,cat 227790,ship 227791,truck 227792,bird 227793,cat 227794,deer 227795,horse 227796,bird 227797,deer 227798,deer 227799,cat 227800,frog 227801,cat 227802,dog 227803,bird 227804,cat 227805,automobile 227806,bird 227807,dog 227808,truck 227809,cat 227810,airplane 227811,deer 227812,cat 227813,horse 227814,dog 227815,cat 227816,truck 227817,horse 227818,horse 227819,dog 227820,automobile 227821,deer 227822,truck 227823,cat 227824,truck 227825,frog 227826,dog 227827,ship 227828,frog 227829,frog 227830,frog 227831,airplane 227832,truck 227833,frog 227834,deer 227835,truck 227836,bird 227837,horse 227838,ship 227839,frog 227840,deer 227841,horse 227842,cat 227843,deer 227844,automobile 227845,frog 227846,deer 227847,horse 227848,truck 227849,deer 227850,cat 227851,bird 227852,deer 227853,automobile 227854,deer 227855,frog 227856,bird 227857,airplane 227858,automobile 227859,horse 227860,cat 227861,airplane 227862,frog 227863,ship 227864,truck 227865,ship 227866,bird 227867,horse 227868,horse 227869,dog 227870,dog 227871,cat 227872,airplane 227873,horse 227874,cat 227875,bird 227876,airplane 227877,ship 227878,truck 227879,airplane 227880,bird 227881,airplane 227882,ship 227883,truck 227884,frog 227885,airplane 227886,bird 227887,truck 227888,horse 227889,truck 227890,horse 227891,deer 227892,frog 227893,bird 227894,truck 227895,automobile 227896,dog 227897,cat 227898,deer 227899,automobile 227900,dog 227901,dog 227902,cat 227903,cat 227904,horse 227905,truck 227906,bird 227907,horse 227908,bird 227909,cat 227910,horse 227911,cat 227912,truck 227913,dog 227914,frog 227915,cat 227916,truck 227917,deer 227918,horse 227919,horse 227920,ship 227921,deer 227922,airplane 227923,horse 227924,cat 227925,cat 227926,automobile 227927,bird 227928,deer 227929,automobile 227930,deer 227931,cat 227932,automobile 227933,airplane 227934,automobile 227935,truck 227936,frog 227937,dog 227938,truck 227939,automobile 227940,bird 227941,airplane 227942,dog 227943,deer 227944,deer 227945,deer 227946,horse 227947,ship 227948,truck 227949,airplane 227950,dog 227951,dog 227952,cat 227953,truck 227954,truck 227955,cat 227956,truck 227957,bird 227958,frog 227959,horse 227960,horse 227961,automobile 227962,horse 227963,ship 227964,bird 227965,truck 227966,airplane 227967,dog 227968,truck 227969,cat 227970,truck 227971,truck 227972,ship 227973,frog 227974,horse 227975,cat 227976,deer 227977,bird 227978,frog 227979,cat 227980,truck 227981,bird 227982,deer 227983,automobile 227984,dog 227985,bird 227986,truck 227987,horse 227988,automobile 227989,frog 227990,ship 227991,ship 227992,horse 227993,truck 227994,automobile 227995,deer 227996,truck 227997,bird 227998,truck 227999,frog 228000,dog 228001,truck 228002,bird 228003,cat 228004,deer 228005,ship 228006,truck 228007,horse 228008,bird 228009,truck 228010,truck 228011,truck 228012,deer 228013,automobile 228014,deer 228015,dog 228016,ship 228017,horse 228018,bird 228019,cat 228020,truck 228021,truck 228022,truck 228023,automobile 228024,frog 228025,frog 228026,frog 228027,deer 228028,horse 228029,deer 228030,cat 228031,cat 228032,dog 228033,cat 228034,frog 228035,dog 228036,deer 228037,bird 228038,deer 228039,frog 228040,truck 228041,dog 228042,airplane 228043,truck 228044,ship 228045,dog 228046,ship 228047,deer 228048,cat 228049,ship 228050,dog 228051,deer 228052,airplane 228053,dog 228054,dog 228055,frog 228056,truck 228057,cat 228058,cat 228059,horse 228060,ship 228061,cat 228062,ship 228063,dog 228064,frog 228065,frog 228066,dog 228067,cat 228068,automobile 228069,frog 228070,frog 228071,ship 228072,truck 228073,airplane 228074,truck 228075,horse 228076,automobile 228077,bird 228078,dog 228079,airplane 228080,horse 228081,dog 228082,horse 228083,horse 228084,deer 228085,automobile 228086,airplane 228087,ship 228088,airplane 228089,deer 228090,truck 228091,cat 228092,airplane 228093,bird 228094,deer 228095,airplane 228096,ship 228097,frog 228098,deer 228099,frog 228100,horse 228101,horse 228102,truck 228103,truck 228104,bird 228105,dog 228106,truck 228107,horse 228108,bird 228109,cat 228110,frog 228111,automobile 228112,truck 228113,airplane 228114,horse 228115,frog 228116,ship 228117,truck 228118,cat 228119,dog 228120,airplane 228121,deer 228122,cat 228123,airplane 228124,automobile 228125,cat 228126,automobile 228127,deer 228128,deer 228129,automobile 228130,frog 228131,automobile 228132,cat 228133,deer 228134,automobile 228135,horse 228136,automobile 228137,deer 228138,cat 228139,bird 228140,horse 228141,deer 228142,deer 228143,cat 228144,deer 228145,horse 228146,horse 228147,cat 228148,dog 228149,bird 228150,airplane 228151,deer 228152,airplane 228153,airplane 228154,dog 228155,cat 228156,ship 228157,bird 228158,deer 228159,truck 228160,airplane 228161,cat 228162,deer 228163,cat 228164,horse 228165,horse 228166,dog 228167,frog 228168,truck 228169,cat 228170,airplane 228171,airplane 228172,cat 228173,cat 228174,ship 228175,frog 228176,frog 228177,frog 228178,frog 228179,ship 228180,ship 228181,deer 228182,cat 228183,deer 228184,bird 228185,frog 228186,airplane 228187,frog 228188,cat 228189,automobile 228190,deer 228191,deer 228192,cat 228193,horse 228194,cat 228195,frog 228196,deer 228197,automobile 228198,ship 228199,truck 228200,horse 228201,dog 228202,airplane 228203,deer 228204,frog 228205,cat 228206,frog 228207,frog 228208,cat 228209,truck 228210,automobile 228211,dog 228212,cat 228213,dog 228214,deer 228215,ship 228216,deer 228217,bird 228218,frog 228219,ship 228220,horse 228221,truck 228222,deer 228223,frog 228224,dog 228225,airplane 228226,dog 228227,horse 228228,horse 228229,cat 228230,horse 228231,cat 228232,horse 228233,airplane 228234,automobile 228235,truck 228236,cat 228237,airplane 228238,ship 228239,airplane 228240,frog 228241,frog 228242,frog 228243,deer 228244,cat 228245,bird 228246,ship 228247,cat 228248,ship 228249,dog 228250,truck 228251,bird 228252,deer 228253,automobile 228254,deer 228255,horse 228256,automobile 228257,deer 228258,deer 228259,cat 228260,dog 228261,airplane 228262,dog 228263,dog 228264,ship 228265,deer 228266,frog 228267,automobile 228268,cat 228269,frog 228270,cat 228271,frog 228272,dog 228273,airplane 228274,deer 228275,dog 228276,horse 228277,frog 228278,cat 228279,automobile 228280,horse 228281,bird 228282,dog 228283,cat 228284,bird 228285,ship 228286,deer 228287,truck 228288,frog 228289,frog 228290,cat 228291,horse 228292,airplane 228293,truck 228294,automobile 228295,automobile 228296,deer 228297,horse 228298,bird 228299,automobile 228300,dog 228301,dog 228302,automobile 228303,truck 228304,horse 228305,frog 228306,deer 228307,cat 228308,ship 228309,deer 228310,truck 228311,truck 228312,horse 228313,airplane 228314,horse 228315,automobile 228316,frog 228317,cat 228318,airplane 228319,bird 228320,dog 228321,truck 228322,airplane 228323,bird 228324,bird 228325,deer 228326,automobile 228327,horse 228328,deer 228329,deer 228330,ship 228331,ship 228332,truck 228333,cat 228334,dog 228335,frog 228336,automobile 228337,dog 228338,horse 228339,truck 228340,automobile 228341,cat 228342,frog 228343,truck 228344,automobile 228345,bird 228346,ship 228347,horse 228348,frog 228349,cat 228350,horse 228351,airplane 228352,deer 228353,horse 228354,cat 228355,horse 228356,ship 228357,truck 228358,cat 228359,dog 228360,airplane 228361,truck 228362,frog 228363,dog 228364,dog 228365,automobile 228366,cat 228367,airplane 228368,truck 228369,dog 228370,ship 228371,airplane 228372,horse 228373,bird 228374,frog 228375,automobile 228376,cat 228377,horse 228378,automobile 228379,ship 228380,frog 228381,deer 228382,horse 228383,deer 228384,horse 228385,automobile 228386,cat 228387,automobile 228388,cat 228389,bird 228390,automobile 228391,deer 228392,cat 228393,cat 228394,deer 228395,deer 228396,truck 228397,cat 228398,truck 228399,frog 228400,airplane 228401,deer 228402,bird 228403,horse 228404,bird 228405,cat 228406,bird 228407,bird 228408,frog 228409,dog 228410,deer 228411,cat 228412,bird 228413,frog 228414,frog 228415,frog 228416,dog 228417,ship 228418,cat 228419,frog 228420,truck 228421,bird 228422,frog 228423,truck 228424,ship 228425,dog 228426,frog 228427,truck 228428,horse 228429,cat 228430,truck 228431,deer 228432,frog 228433,automobile 228434,airplane 228435,cat 228436,automobile 228437,airplane 228438,airplane 228439,bird 228440,frog 228441,truck 228442,truck 228443,deer 228444,truck 228445,truck 228446,horse 228447,horse 228448,deer 228449,cat 228450,cat 228451,truck 228452,cat 228453,ship 228454,ship 228455,airplane 228456,bird 228457,deer 228458,dog 228459,horse 228460,airplane 228461,automobile 228462,frog 228463,truck 228464,dog 228465,horse 228466,airplane 228467,truck 228468,truck 228469,frog 228470,bird 228471,frog 228472,automobile 228473,cat 228474,truck 228475,horse 228476,airplane 228477,airplane 228478,cat 228479,dog 228480,horse 228481,frog 228482,dog 228483,frog 228484,automobile 228485,deer 228486,bird 228487,deer 228488,cat 228489,dog 228490,deer 228491,dog 228492,frog 228493,automobile 228494,automobile 228495,ship 228496,cat 228497,ship 228498,ship 228499,automobile 228500,bird 228501,airplane 228502,dog 228503,bird 228504,cat 228505,dog 228506,automobile 228507,bird 228508,airplane 228509,truck 228510,dog 228511,airplane 228512,automobile 228513,deer 228514,bird 228515,ship 228516,cat 228517,deer 228518,truck 228519,bird 228520,cat 228521,cat 228522,horse 228523,automobile 228524,automobile 228525,dog 228526,dog 228527,bird 228528,bird 228529,cat 228530,cat 228531,ship 228532,bird 228533,airplane 228534,cat 228535,deer 228536,horse 228537,cat 228538,cat 228539,dog 228540,deer 228541,horse 228542,ship 228543,airplane 228544,ship 228545,dog 228546,cat 228547,automobile 228548,airplane 228549,deer 228550,truck 228551,automobile 228552,horse 228553,deer 228554,automobile 228555,airplane 228556,deer 228557,dog 228558,dog 228559,frog 228560,airplane 228561,airplane 228562,bird 228563,horse 228564,ship 228565,ship 228566,cat 228567,frog 228568,truck 228569,bird 228570,ship 228571,cat 228572,ship 228573,deer 228574,automobile 228575,ship 228576,horse 228577,automobile 228578,cat 228579,deer 228580,horse 228581,horse 228582,deer 228583,truck 228584,cat 228585,airplane 228586,truck 228587,truck 228588,bird 228589,truck 228590,cat 228591,horse 228592,truck 228593,dog 228594,truck 228595,cat 228596,dog 228597,automobile 228598,dog 228599,horse 228600,frog 228601,cat 228602,airplane 228603,automobile 228604,ship 228605,frog 228606,bird 228607,deer 228608,truck 228609,ship 228610,horse 228611,bird 228612,frog 228613,cat 228614,truck 228615,truck 228616,frog 228617,dog 228618,truck 228619,bird 228620,ship 228621,deer 228622,ship 228623,cat 228624,cat 228625,airplane 228626,frog 228627,frog 228628,deer 228629,frog 228630,bird 228631,horse 228632,automobile 228633,cat 228634,bird 228635,frog 228636,horse 228637,airplane 228638,dog 228639,ship 228640,frog 228641,bird 228642,cat 228643,automobile 228644,frog 228645,deer 228646,airplane 228647,cat 228648,cat 228649,bird 228650,cat 228651,dog 228652,bird 228653,ship 228654,deer 228655,frog 228656,bird 228657,ship 228658,truck 228659,horse 228660,horse 228661,truck 228662,dog 228663,automobile 228664,airplane 228665,bird 228666,bird 228667,truck 228668,cat 228669,dog 228670,deer 228671,automobile 228672,automobile 228673,truck 228674,airplane 228675,frog 228676,frog 228677,horse 228678,automobile 228679,ship 228680,cat 228681,automobile 228682,dog 228683,truck 228684,frog 228685,cat 228686,deer 228687,ship 228688,bird 228689,truck 228690,deer 228691,deer 228692,dog 228693,airplane 228694,truck 228695,frog 228696,horse 228697,cat 228698,airplane 228699,cat 228700,ship 228701,dog 228702,truck 228703,horse 228704,deer 228705,deer 228706,horse 228707,ship 228708,cat 228709,airplane 228710,frog 228711,ship 228712,truck 228713,dog 228714,bird 228715,ship 228716,deer 228717,dog 228718,cat 228719,truck 228720,deer 228721,cat 228722,automobile 228723,cat 228724,dog 228725,airplane 228726,frog 228727,automobile 228728,airplane 228729,frog 228730,bird 228731,cat 228732,truck 228733,truck 228734,cat 228735,deer 228736,cat 228737,automobile 228738,cat 228739,dog 228740,bird 228741,deer 228742,dog 228743,ship 228744,airplane 228745,cat 228746,deer 228747,frog 228748,truck 228749,truck 228750,truck 228751,dog 228752,bird 228753,airplane 228754,cat 228755,automobile 228756,airplane 228757,airplane 228758,cat 228759,truck 228760,ship 228761,cat 228762,dog 228763,dog 228764,frog 228765,deer 228766,airplane 228767,airplane 228768,truck 228769,automobile 228770,bird 228771,truck 228772,automobile 228773,truck 228774,automobile 228775,dog 228776,deer 228777,deer 228778,dog 228779,airplane 228780,frog 228781,cat 228782,automobile 228783,horse 228784,horse 228785,dog 228786,cat 228787,dog 228788,ship 228789,frog 228790,dog 228791,truck 228792,automobile 228793,bird 228794,frog 228795,horse 228796,truck 228797,ship 228798,cat 228799,deer 228800,frog 228801,dog 228802,automobile 228803,cat 228804,dog 228805,cat 228806,airplane 228807,truck 228808,automobile 228809,airplane 228810,truck 228811,frog 228812,frog 228813,deer 228814,ship 228815,automobile 228816,cat 228817,dog 228818,deer 228819,cat 228820,horse 228821,frog 228822,truck 228823,automobile 228824,deer 228825,deer 228826,automobile 228827,cat 228828,airplane 228829,cat 228830,cat 228831,deer 228832,truck 228833,frog 228834,frog 228835,bird 228836,deer 228837,cat 228838,dog 228839,horse 228840,cat 228841,deer 228842,cat 228843,cat 228844,truck 228845,bird 228846,frog 228847,airplane 228848,automobile 228849,bird 228850,bird 228851,bird 228852,horse 228853,truck 228854,automobile 228855,frog 228856,cat 228857,frog 228858,deer 228859,truck 228860,horse 228861,ship 228862,truck 228863,deer 228864,dog 228865,airplane 228866,cat 228867,airplane 228868,cat 228869,ship 228870,cat 228871,deer 228872,airplane 228873,deer 228874,truck 228875,automobile 228876,bird 228877,deer 228878,dog 228879,dog 228880,dog 228881,bird 228882,automobile 228883,cat 228884,automobile 228885,deer 228886,airplane 228887,automobile 228888,bird 228889,deer 228890,airplane 228891,truck 228892,automobile 228893,bird 228894,deer 228895,automobile 228896,cat 228897,deer 228898,automobile 228899,automobile 228900,cat 228901,airplane 228902,airplane 228903,automobile 228904,deer 228905,automobile 228906,bird 228907,truck 228908,truck 228909,truck 228910,deer 228911,cat 228912,frog 228913,truck 228914,airplane 228915,truck 228916,frog 228917,dog 228918,dog 228919,deer 228920,horse 228921,bird 228922,deer 228923,cat 228924,truck 228925,airplane 228926,deer 228927,dog 228928,horse 228929,airplane 228930,frog 228931,truck 228932,bird 228933,cat 228934,frog 228935,frog 228936,frog 228937,horse 228938,ship 228939,cat 228940,dog 228941,ship 228942,frog 228943,truck 228944,frog 228945,dog 228946,frog 228947,ship 228948,dog 228949,cat 228950,deer 228951,bird 228952,horse 228953,frog 228954,frog 228955,deer 228956,automobile 228957,truck 228958,bird 228959,ship 228960,cat 228961,dog 228962,ship 228963,horse 228964,horse 228965,ship 228966,deer 228967,cat 228968,cat 228969,truck 228970,deer 228971,deer 228972,ship 228973,frog 228974,truck 228975,cat 228976,frog 228977,cat 228978,truck 228979,airplane 228980,automobile 228981,truck 228982,cat 228983,ship 228984,dog 228985,horse 228986,deer 228987,cat 228988,airplane 228989,deer 228990,airplane 228991,cat 228992,cat 228993,deer 228994,frog 228995,bird 228996,automobile 228997,deer 228998,cat 228999,airplane 229000,horse 229001,frog 229002,airplane 229003,airplane 229004,dog 229005,dog 229006,bird 229007,deer 229008,horse 229009,bird 229010,ship 229011,airplane 229012,dog 229013,ship 229014,truck 229015,horse 229016,ship 229017,horse 229018,dog 229019,deer 229020,cat 229021,cat 229022,horse 229023,frog 229024,dog 229025,horse 229026,dog 229027,truck 229028,bird 229029,ship 229030,cat 229031,deer 229032,deer 229033,cat 229034,deer 229035,airplane 229036,deer 229037,airplane 229038,cat 229039,bird 229040,truck 229041,automobile 229042,cat 229043,airplane 229044,cat 229045,cat 229046,airplane 229047,ship 229048,horse 229049,truck 229050,dog 229051,airplane 229052,dog 229053,frog 229054,truck 229055,horse 229056,cat 229057,bird 229058,dog 229059,cat 229060,horse 229061,dog 229062,cat 229063,truck 229064,ship 229065,truck 229066,frog 229067,bird 229068,horse 229069,frog 229070,cat 229071,airplane 229072,bird 229073,deer 229074,cat 229075,ship 229076,truck 229077,automobile 229078,frog 229079,ship 229080,truck 229081,cat 229082,frog 229083,automobile 229084,cat 229085,ship 229086,deer 229087,dog 229088,bird 229089,ship 229090,cat 229091,ship 229092,dog 229093,horse 229094,cat 229095,cat 229096,deer 229097,cat 229098,truck 229099,bird 229100,dog 229101,bird 229102,frog 229103,dog 229104,frog 229105,dog 229106,dog 229107,cat 229108,frog 229109,dog 229110,frog 229111,cat 229112,airplane 229113,dog 229114,deer 229115,deer 229116,cat 229117,cat 229118,airplane 229119,automobile 229120,truck 229121,bird 229122,frog 229123,frog 229124,frog 229125,dog 229126,bird 229127,cat 229128,frog 229129,dog 229130,airplane 229131,bird 229132,ship 229133,dog 229134,frog 229135,horse 229136,deer 229137,automobile 229138,bird 229139,dog 229140,truck 229141,horse 229142,deer 229143,cat 229144,deer 229145,deer 229146,deer 229147,truck 229148,horse 229149,automobile 229150,truck 229151,frog 229152,horse 229153,deer 229154,ship 229155,dog 229156,frog 229157,ship 229158,frog 229159,frog 229160,cat 229161,ship 229162,dog 229163,ship 229164,automobile 229165,dog 229166,deer 229167,ship 229168,frog 229169,truck 229170,dog 229171,dog 229172,bird 229173,ship 229174,truck 229175,deer 229176,frog 229177,bird 229178,horse 229179,dog 229180,bird 229181,horse 229182,horse 229183,truck 229184,cat 229185,ship 229186,cat 229187,frog 229188,truck 229189,deer 229190,ship 229191,deer 229192,deer 229193,ship 229194,cat 229195,airplane 229196,deer 229197,deer 229198,horse 229199,cat 229200,bird 229201,horse 229202,automobile 229203,truck 229204,ship 229205,truck 229206,horse 229207,dog 229208,cat 229209,automobile 229210,deer 229211,dog 229212,truck 229213,cat 229214,frog 229215,cat 229216,cat 229217,deer 229218,deer 229219,frog 229220,deer 229221,ship 229222,ship 229223,truck 229224,ship 229225,dog 229226,cat 229227,truck 229228,frog 229229,cat 229230,airplane 229231,deer 229232,frog 229233,automobile 229234,airplane 229235,frog 229236,automobile 229237,cat 229238,cat 229239,deer 229240,horse 229241,deer 229242,cat 229243,cat 229244,airplane 229245,horse 229246,cat 229247,dog 229248,airplane 229249,dog 229250,deer 229251,frog 229252,truck 229253,horse 229254,frog 229255,horse 229256,horse 229257,bird 229258,dog 229259,frog 229260,dog 229261,frog 229262,cat 229263,horse 229264,bird 229265,horse 229266,dog 229267,truck 229268,frog 229269,cat 229270,deer 229271,horse 229272,bird 229273,frog 229274,truck 229275,cat 229276,truck 229277,airplane 229278,truck 229279,deer 229280,frog 229281,ship 229282,deer 229283,cat 229284,cat 229285,bird 229286,airplane 229287,deer 229288,deer 229289,deer 229290,bird 229291,automobile 229292,truck 229293,truck 229294,truck 229295,frog 229296,cat 229297,truck 229298,automobile 229299,automobile 229300,bird 229301,cat 229302,automobile 229303,automobile 229304,truck 229305,cat 229306,cat 229307,truck 229308,ship 229309,dog 229310,cat 229311,frog 229312,cat 229313,truck 229314,automobile 229315,frog 229316,deer 229317,horse 229318,airplane 229319,automobile 229320,ship 229321,deer 229322,frog 229323,cat 229324,frog 229325,dog 229326,deer 229327,cat 229328,airplane 229329,bird 229330,frog 229331,bird 229332,cat 229333,cat 229334,horse 229335,automobile 229336,frog 229337,frog 229338,automobile 229339,automobile 229340,dog 229341,truck 229342,horse 229343,truck 229344,frog 229345,automobile 229346,dog 229347,frog 229348,automobile 229349,frog 229350,truck 229351,frog 229352,cat 229353,deer 229354,cat 229355,airplane 229356,automobile 229357,truck 229358,airplane 229359,frog 229360,cat 229361,airplane 229362,dog 229363,deer 229364,cat 229365,deer 229366,horse 229367,truck 229368,deer 229369,bird 229370,frog 229371,airplane 229372,frog 229373,horse 229374,airplane 229375,cat 229376,deer 229377,airplane 229378,deer 229379,ship 229380,truck 229381,truck 229382,deer 229383,cat 229384,deer 229385,horse 229386,frog 229387,bird 229388,dog 229389,ship 229390,deer 229391,cat 229392,truck 229393,airplane 229394,cat 229395,automobile 229396,airplane 229397,deer 229398,deer 229399,ship 229400,airplane 229401,bird 229402,cat 229403,frog 229404,horse 229405,truck 229406,frog 229407,automobile 229408,frog 229409,ship 229410,airplane 229411,cat 229412,deer 229413,dog 229414,dog 229415,truck 229416,frog 229417,truck 229418,horse 229419,bird 229420,deer 229421,ship 229422,horse 229423,frog 229424,automobile 229425,dog 229426,frog 229427,cat 229428,automobile 229429,bird 229430,deer 229431,truck 229432,frog 229433,bird 229434,truck 229435,frog 229436,deer 229437,deer 229438,deer 229439,dog 229440,deer 229441,automobile 229442,automobile 229443,cat 229444,truck 229445,dog 229446,truck 229447,truck 229448,cat 229449,deer 229450,deer 229451,automobile 229452,horse 229453,dog 229454,truck 229455,truck 229456,truck 229457,deer 229458,ship 229459,dog 229460,frog 229461,truck 229462,frog 229463,cat 229464,ship 229465,frog 229466,cat 229467,deer 229468,bird 229469,airplane 229470,truck 229471,horse 229472,deer 229473,frog 229474,horse 229475,ship 229476,airplane 229477,frog 229478,bird 229479,frog 229480,truck 229481,truck 229482,airplane 229483,deer 229484,cat 229485,bird 229486,truck 229487,airplane 229488,dog 229489,frog 229490,truck 229491,airplane 229492,frog 229493,deer 229494,frog 229495,ship 229496,cat 229497,horse 229498,ship 229499,cat 229500,horse 229501,cat 229502,truck 229503,bird 229504,horse 229505,airplane 229506,deer 229507,automobile 229508,airplane 229509,deer 229510,dog 229511,cat 229512,ship 229513,truck 229514,frog 229515,frog 229516,airplane 229517,frog 229518,deer 229519,dog 229520,frog 229521,horse 229522,dog 229523,deer 229524,deer 229525,horse 229526,horse 229527,cat 229528,cat 229529,dog 229530,frog 229531,cat 229532,truck 229533,deer 229534,cat 229535,truck 229536,deer 229537,deer 229538,airplane 229539,airplane 229540,bird 229541,bird 229542,truck 229543,airplane 229544,dog 229545,automobile 229546,truck 229547,airplane 229548,cat 229549,dog 229550,cat 229551,bird 229552,ship 229553,frog 229554,cat 229555,cat 229556,truck 229557,bird 229558,dog 229559,cat 229560,airplane 229561,deer 229562,airplane 229563,ship 229564,deer 229565,horse 229566,dog 229567,bird 229568,truck 229569,frog 229570,truck 229571,truck 229572,airplane 229573,deer 229574,ship 229575,dog 229576,frog 229577,frog 229578,cat 229579,bird 229580,deer 229581,cat 229582,cat 229583,airplane 229584,deer 229585,ship 229586,dog 229587,deer 229588,dog 229589,deer 229590,automobile 229591,truck 229592,cat 229593,horse 229594,cat 229595,dog 229596,truck 229597,deer 229598,truck 229599,ship 229600,frog 229601,dog 229602,deer 229603,frog 229604,dog 229605,horse 229606,bird 229607,bird 229608,cat 229609,frog 229610,horse 229611,truck 229612,bird 229613,airplane 229614,truck 229615,cat 229616,ship 229617,frog 229618,deer 229619,cat 229620,deer 229621,cat 229622,automobile 229623,deer 229624,cat 229625,automobile 229626,bird 229627,cat 229628,frog 229629,airplane 229630,truck 229631,bird 229632,cat 229633,horse 229634,airplane 229635,ship 229636,horse 229637,truck 229638,bird 229639,frog 229640,airplane 229641,truck 229642,cat 229643,truck 229644,airplane 229645,truck 229646,frog 229647,frog 229648,horse 229649,horse 229650,frog 229651,frog 229652,truck 229653,cat 229654,ship 229655,dog 229656,bird 229657,cat 229658,cat 229659,dog 229660,dog 229661,truck 229662,deer 229663,dog 229664,deer 229665,frog 229666,bird 229667,ship 229668,airplane 229669,dog 229670,bird 229671,dog 229672,horse 229673,dog 229674,airplane 229675,cat 229676,horse 229677,automobile 229678,dog 229679,airplane 229680,dog 229681,deer 229682,frog 229683,airplane 229684,truck 229685,truck 229686,airplane 229687,cat 229688,frog 229689,truck 229690,deer 229691,truck 229692,airplane 229693,automobile 229694,automobile 229695,horse 229696,airplane 229697,bird 229698,horse 229699,cat 229700,bird 229701,horse 229702,ship 229703,dog 229704,truck 229705,dog 229706,frog 229707,dog 229708,deer 229709,deer 229710,cat 229711,horse 229712,ship 229713,dog 229714,ship 229715,deer 229716,cat 229717,bird 229718,deer 229719,frog 229720,deer 229721,frog 229722,dog 229723,deer 229724,airplane 229725,ship 229726,ship 229727,horse 229728,bird 229729,cat 229730,dog 229731,horse 229732,airplane 229733,horse 229734,automobile 229735,truck 229736,frog 229737,bird 229738,bird 229739,bird 229740,airplane 229741,truck 229742,ship 229743,horse 229744,truck 229745,airplane 229746,airplane 229747,cat 229748,dog 229749,deer 229750,frog 229751,automobile 229752,cat 229753,dog 229754,bird 229755,truck 229756,bird 229757,airplane 229758,bird 229759,cat 229760,cat 229761,cat 229762,frog 229763,bird 229764,frog 229765,truck 229766,truck 229767,cat 229768,bird 229769,horse 229770,dog 229771,deer 229772,dog 229773,frog 229774,horse 229775,bird 229776,deer 229777,truck 229778,cat 229779,frog 229780,deer 229781,horse 229782,deer 229783,cat 229784,bird 229785,horse 229786,truck 229787,frog 229788,airplane 229789,cat 229790,automobile 229791,bird 229792,ship 229793,frog 229794,ship 229795,bird 229796,frog 229797,automobile 229798,deer 229799,bird 229800,ship 229801,bird 229802,airplane 229803,airplane 229804,ship 229805,horse 229806,deer 229807,truck 229808,bird 229809,truck 229810,dog 229811,deer 229812,horse 229813,truck 229814,horse 229815,cat 229816,ship 229817,airplane 229818,deer 229819,frog 229820,deer 229821,truck 229822,airplane 229823,deer 229824,cat 229825,cat 229826,deer 229827,automobile 229828,dog 229829,automobile 229830,airplane 229831,horse 229832,bird 229833,dog 229834,bird 229835,horse 229836,horse 229837,ship 229838,cat 229839,frog 229840,truck 229841,truck 229842,airplane 229843,deer 229844,dog 229845,deer 229846,cat 229847,airplane 229848,frog 229849,frog 229850,cat 229851,dog 229852,deer 229853,frog 229854,bird 229855,ship 229856,cat 229857,deer 229858,dog 229859,truck 229860,bird 229861,truck 229862,truck 229863,truck 229864,frog 229865,airplane 229866,deer 229867,frog 229868,cat 229869,horse 229870,truck 229871,cat 229872,deer 229873,airplane 229874,horse 229875,airplane 229876,cat 229877,dog 229878,truck 229879,deer 229880,dog 229881,airplane 229882,bird 229883,bird 229884,cat 229885,deer 229886,cat 229887,airplane 229888,bird 229889,frog 229890,cat 229891,deer 229892,ship 229893,frog 229894,bird 229895,horse 229896,frog 229897,horse 229898,automobile 229899,frog 229900,frog 229901,bird 229902,deer 229903,horse 229904,automobile 229905,ship 229906,cat 229907,ship 229908,frog 229909,truck 229910,ship 229911,ship 229912,horse 229913,cat 229914,deer 229915,horse 229916,bird 229917,frog 229918,truck 229919,deer 229920,cat 229921,truck 229922,dog 229923,bird 229924,truck 229925,frog 229926,airplane 229927,horse 229928,horse 229929,frog 229930,truck 229931,cat 229932,airplane 229933,automobile 229934,airplane 229935,automobile 229936,truck 229937,deer 229938,frog 229939,deer 229940,dog 229941,deer 229942,horse 229943,cat 229944,dog 229945,deer 229946,horse 229947,airplane 229948,frog 229949,cat 229950,automobile 229951,truck 229952,deer 229953,frog 229954,airplane 229955,airplane 229956,deer 229957,airplane 229958,dog 229959,cat 229960,ship 229961,horse 229962,bird 229963,bird 229964,frog 229965,frog 229966,truck 229967,airplane 229968,dog 229969,automobile 229970,deer 229971,frog 229972,deer 229973,cat 229974,ship 229975,dog 229976,airplane 229977,deer 229978,frog 229979,truck 229980,deer 229981,dog 229982,ship 229983,frog 229984,frog 229985,frog 229986,dog 229987,automobile 229988,deer 229989,cat 229990,automobile 229991,truck 229992,horse 229993,dog 229994,dog 229995,deer 229996,deer 229997,cat 229998,cat 229999,bird 230000,bird 230001,bird 230002,deer 230003,deer 230004,frog 230005,horse 230006,truck 230007,airplane 230008,deer 230009,airplane 230010,dog 230011,horse 230012,truck 230013,deer 230014,frog 230015,horse 230016,automobile 230017,bird 230018,frog 230019,frog 230020,horse 230021,horse 230022,cat 230023,frog 230024,deer 230025,frog 230026,horse 230027,cat 230028,dog 230029,cat 230030,frog 230031,horse 230032,cat 230033,ship 230034,deer 230035,bird 230036,automobile 230037,frog 230038,automobile 230039,dog 230040,horse 230041,ship 230042,cat 230043,deer 230044,frog 230045,ship 230046,frog 230047,horse 230048,automobile 230049,frog 230050,deer 230051,ship 230052,ship 230053,deer 230054,truck 230055,deer 230056,dog 230057,ship 230058,airplane 230059,truck 230060,ship 230061,deer 230062,truck 230063,deer 230064,frog 230065,dog 230066,automobile 230067,cat 230068,automobile 230069,cat 230070,horse 230071,truck 230072,automobile 230073,airplane 230074,ship 230075,ship 230076,horse 230077,truck 230078,truck 230079,ship 230080,ship 230081,airplane 230082,automobile 230083,deer 230084,airplane 230085,cat 230086,airplane 230087,frog 230088,airplane 230089,frog 230090,ship 230091,frog 230092,deer 230093,cat 230094,horse 230095,frog 230096,horse 230097,horse 230098,automobile 230099,frog 230100,horse 230101,cat 230102,horse 230103,airplane 230104,truck 230105,ship 230106,cat 230107,ship 230108,deer 230109,deer 230110,horse 230111,airplane 230112,automobile 230113,ship 230114,cat 230115,ship 230116,truck 230117,horse 230118,deer 230119,ship 230120,dog 230121,truck 230122,bird 230123,frog 230124,dog 230125,cat 230126,bird 230127,deer 230128,cat 230129,frog 230130,bird 230131,deer 230132,horse 230133,dog 230134,automobile 230135,ship 230136,bird 230137,ship 230138,deer 230139,deer 230140,airplane 230141,bird 230142,bird 230143,deer 230144,cat 230145,bird 230146,truck 230147,deer 230148,bird 230149,ship 230150,horse 230151,ship 230152,truck 230153,cat 230154,airplane 230155,deer 230156,cat 230157,truck 230158,automobile 230159,dog 230160,truck 230161,dog 230162,airplane 230163,deer 230164,truck 230165,horse 230166,horse 230167,truck 230168,cat 230169,dog 230170,dog 230171,frog 230172,frog 230173,dog 230174,frog 230175,dog 230176,ship 230177,deer 230178,deer 230179,cat 230180,automobile 230181,frog 230182,ship 230183,ship 230184,bird 230185,frog 230186,bird 230187,deer 230188,deer 230189,truck 230190,horse 230191,truck 230192,airplane 230193,truck 230194,automobile 230195,deer 230196,ship 230197,horse 230198,cat 230199,cat 230200,airplane 230201,airplane 230202,truck 230203,truck 230204,frog 230205,truck 230206,horse 230207,cat 230208,truck 230209,cat 230210,truck 230211,bird 230212,horse 230213,airplane 230214,dog 230215,deer 230216,deer 230217,dog 230218,airplane 230219,deer 230220,cat 230221,frog 230222,airplane 230223,automobile 230224,cat 230225,deer 230226,dog 230227,dog 230228,dog 230229,deer 230230,automobile 230231,horse 230232,horse 230233,truck 230234,airplane 230235,frog 230236,deer 230237,dog 230238,horse 230239,frog 230240,dog 230241,dog 230242,ship 230243,frog 230244,airplane 230245,deer 230246,ship 230247,dog 230248,automobile 230249,truck 230250,cat 230251,airplane 230252,frog 230253,ship 230254,dog 230255,deer 230256,deer 230257,ship 230258,deer 230259,truck 230260,deer 230261,ship 230262,truck 230263,automobile 230264,automobile 230265,horse 230266,bird 230267,ship 230268,automobile 230269,dog 230270,horse 230271,deer 230272,truck 230273,cat 230274,airplane 230275,deer 230276,bird 230277,bird 230278,airplane 230279,cat 230280,frog 230281,deer 230282,truck 230283,truck 230284,deer 230285,ship 230286,airplane 230287,airplane 230288,frog 230289,frog 230290,cat 230291,truck 230292,deer 230293,dog 230294,deer 230295,deer 230296,bird 230297,horse 230298,cat 230299,cat 230300,frog 230301,frog 230302,deer 230303,deer 230304,bird 230305,deer 230306,airplane 230307,dog 230308,deer 230309,dog 230310,automobile 230311,bird 230312,automobile 230313,cat 230314,horse 230315,bird 230316,cat 230317,airplane 230318,truck 230319,frog 230320,bird 230321,frog 230322,cat 230323,bird 230324,automobile 230325,horse 230326,airplane 230327,dog 230328,automobile 230329,cat 230330,truck 230331,truck 230332,bird 230333,horse 230334,horse 230335,cat 230336,automobile 230337,frog 230338,deer 230339,ship 230340,frog 230341,frog 230342,truck 230343,ship 230344,dog 230345,deer 230346,dog 230347,truck 230348,dog 230349,frog 230350,bird 230351,cat 230352,frog 230353,frog 230354,bird 230355,cat 230356,airplane 230357,horse 230358,automobile 230359,truck 230360,deer 230361,ship 230362,truck 230363,airplane 230364,deer 230365,dog 230366,horse 230367,deer 230368,airplane 230369,horse 230370,horse 230371,dog 230372,ship 230373,ship 230374,truck 230375,frog 230376,horse 230377,truck 230378,truck 230379,frog 230380,deer 230381,frog 230382,horse 230383,automobile 230384,bird 230385,deer 230386,deer 230387,ship 230388,cat 230389,frog 230390,cat 230391,bird 230392,cat 230393,automobile 230394,cat 230395,bird 230396,automobile 230397,cat 230398,cat 230399,deer 230400,ship 230401,frog 230402,airplane 230403,dog 230404,deer 230405,dog 230406,truck 230407,horse 230408,horse 230409,frog 230410,horse 230411,bird 230412,horse 230413,truck 230414,airplane 230415,deer 230416,dog 230417,truck 230418,automobile 230419,truck 230420,dog 230421,cat 230422,cat 230423,horse 230424,cat 230425,ship 230426,cat 230427,ship 230428,horse 230429,dog 230430,truck 230431,cat 230432,frog 230433,truck 230434,automobile 230435,deer 230436,automobile 230437,deer 230438,cat 230439,bird 230440,frog 230441,deer 230442,dog 230443,deer 230444,airplane 230445,dog 230446,ship 230447,ship 230448,deer 230449,automobile 230450,airplane 230451,deer 230452,bird 230453,cat 230454,automobile 230455,truck 230456,dog 230457,airplane 230458,horse 230459,frog 230460,airplane 230461,frog 230462,cat 230463,bird 230464,cat 230465,dog 230466,bird 230467,ship 230468,cat 230469,deer 230470,frog 230471,deer 230472,ship 230473,automobile 230474,automobile 230475,deer 230476,frog 230477,ship 230478,bird 230479,cat 230480,ship 230481,frog 230482,deer 230483,airplane 230484,truck 230485,bird 230486,frog 230487,automobile 230488,deer 230489,airplane 230490,deer 230491,dog 230492,horse 230493,frog 230494,frog 230495,cat 230496,frog 230497,horse 230498,frog 230499,bird 230500,frog 230501,deer 230502,frog 230503,ship 230504,deer 230505,bird 230506,automobile 230507,airplane 230508,cat 230509,truck 230510,cat 230511,frog 230512,deer 230513,ship 230514,airplane 230515,cat 230516,frog 230517,ship 230518,truck 230519,frog 230520,bird 230521,bird 230522,truck 230523,cat 230524,cat 230525,cat 230526,deer 230527,deer 230528,deer 230529,automobile 230530,cat 230531,deer 230532,horse 230533,truck 230534,deer 230535,deer 230536,deer 230537,cat 230538,deer 230539,cat 230540,frog 230541,automobile 230542,frog 230543,dog 230544,horse 230545,deer 230546,deer 230547,automobile 230548,cat 230549,frog 230550,truck 230551,bird 230552,ship 230553,deer 230554,ship 230555,bird 230556,airplane 230557,frog 230558,airplane 230559,automobile 230560,ship 230561,frog 230562,deer 230563,cat 230564,truck 230565,airplane 230566,ship 230567,bird 230568,bird 230569,frog 230570,frog 230571,dog 230572,cat 230573,truck 230574,deer 230575,dog 230576,ship 230577,truck 230578,cat 230579,cat 230580,airplane 230581,deer 230582,bird 230583,horse 230584,automobile 230585,frog 230586,cat 230587,cat 230588,deer 230589,automobile 230590,airplane 230591,cat 230592,automobile 230593,truck 230594,dog 230595,horse 230596,automobile 230597,horse 230598,frog 230599,bird 230600,airplane 230601,airplane 230602,cat 230603,deer 230604,automobile 230605,truck 230606,airplane 230607,bird 230608,frog 230609,horse 230610,truck 230611,truck 230612,frog 230613,frog 230614,dog 230615,horse 230616,horse 230617,dog 230618,cat 230619,cat 230620,cat 230621,truck 230622,dog 230623,ship 230624,horse 230625,airplane 230626,frog 230627,truck 230628,frog 230629,dog 230630,deer 230631,horse 230632,deer 230633,horse 230634,automobile 230635,bird 230636,airplane 230637,dog 230638,truck 230639,dog 230640,dog 230641,frog 230642,dog 230643,truck 230644,airplane 230645,horse 230646,bird 230647,dog 230648,dog 230649,dog 230650,truck 230651,airplane 230652,truck 230653,truck 230654,frog 230655,deer 230656,deer 230657,deer 230658,automobile 230659,cat 230660,ship 230661,truck 230662,truck 230663,ship 230664,truck 230665,horse 230666,truck 230667,bird 230668,automobile 230669,horse 230670,bird 230671,deer 230672,dog 230673,deer 230674,cat 230675,dog 230676,dog 230677,frog 230678,bird 230679,bird 230680,airplane 230681,cat 230682,frog 230683,bird 230684,bird 230685,cat 230686,bird 230687,ship 230688,airplane 230689,bird 230690,frog 230691,airplane 230692,truck 230693,airplane 230694,truck 230695,ship 230696,horse 230697,bird 230698,deer 230699,frog 230700,truck 230701,frog 230702,bird 230703,dog 230704,horse 230705,deer 230706,bird 230707,frog 230708,truck 230709,ship 230710,bird 230711,frog 230712,dog 230713,frog 230714,bird 230715,truck 230716,cat 230717,horse 230718,frog 230719,cat 230720,cat 230721,cat 230722,horse 230723,airplane 230724,bird 230725,ship 230726,ship 230727,deer 230728,cat 230729,frog 230730,truck 230731,dog 230732,cat 230733,deer 230734,truck 230735,dog 230736,deer 230737,deer 230738,airplane 230739,frog 230740,automobile 230741,horse 230742,cat 230743,deer 230744,deer 230745,airplane 230746,dog 230747,truck 230748,horse 230749,ship 230750,truck 230751,frog 230752,horse 230753,cat 230754,bird 230755,ship 230756,automobile 230757,bird 230758,ship 230759,cat 230760,airplane 230761,truck 230762,deer 230763,cat 230764,horse 230765,deer 230766,automobile 230767,bird 230768,bird 230769,horse 230770,truck 230771,bird 230772,ship 230773,automobile 230774,truck 230775,dog 230776,truck 230777,bird 230778,bird 230779,deer 230780,truck 230781,airplane 230782,horse 230783,truck 230784,deer 230785,truck 230786,cat 230787,cat 230788,cat 230789,bird 230790,deer 230791,truck 230792,automobile 230793,horse 230794,airplane 230795,deer 230796,dog 230797,airplane 230798,bird 230799,truck 230800,frog 230801,automobile 230802,deer 230803,horse 230804,dog 230805,bird 230806,dog 230807,dog 230808,truck 230809,horse 230810,bird 230811,deer 230812,deer 230813,dog 230814,airplane 230815,ship 230816,truck 230817,deer 230818,frog 230819,cat 230820,bird 230821,dog 230822,airplane 230823,airplane 230824,dog 230825,deer 230826,truck 230827,automobile 230828,frog 230829,horse 230830,frog 230831,frog 230832,frog 230833,dog 230834,horse 230835,deer 230836,deer 230837,truck 230838,cat 230839,cat 230840,truck 230841,automobile 230842,dog 230843,dog 230844,truck 230845,deer 230846,automobile 230847,truck 230848,ship 230849,deer 230850,automobile 230851,frog 230852,cat 230853,truck 230854,automobile 230855,horse 230856,truck 230857,dog 230858,cat 230859,cat 230860,cat 230861,automobile 230862,bird 230863,frog 230864,horse 230865,dog 230866,cat 230867,frog 230868,cat 230869,cat 230870,deer 230871,airplane 230872,frog 230873,bird 230874,horse 230875,deer 230876,horse 230877,airplane 230878,horse 230879,ship 230880,cat 230881,airplane 230882,truck 230883,deer 230884,cat 230885,automobile 230886,deer 230887,automobile 230888,cat 230889,deer 230890,dog 230891,frog 230892,airplane 230893,deer 230894,deer 230895,frog 230896,horse 230897,truck 230898,cat 230899,dog 230900,frog 230901,ship 230902,truck 230903,cat 230904,bird 230905,ship 230906,horse 230907,automobile 230908,deer 230909,horse 230910,cat 230911,truck 230912,deer 230913,dog 230914,horse 230915,ship 230916,frog 230917,deer 230918,automobile 230919,frog 230920,dog 230921,frog 230922,automobile 230923,airplane 230924,frog 230925,automobile 230926,dog 230927,deer 230928,airplane 230929,airplane 230930,horse 230931,dog 230932,airplane 230933,dog 230934,ship 230935,truck 230936,truck 230937,dog 230938,frog 230939,ship 230940,frog 230941,ship 230942,cat 230943,deer 230944,frog 230945,bird 230946,truck 230947,deer 230948,deer 230949,horse 230950,frog 230951,deer 230952,dog 230953,cat 230954,bird 230955,ship 230956,dog 230957,airplane 230958,automobile 230959,truck 230960,bird 230961,ship 230962,airplane 230963,deer 230964,bird 230965,cat 230966,bird 230967,horse 230968,bird 230969,deer 230970,deer 230971,automobile 230972,frog 230973,dog 230974,horse 230975,ship 230976,frog 230977,deer 230978,deer 230979,airplane 230980,automobile 230981,dog 230982,dog 230983,deer 230984,truck 230985,deer 230986,frog 230987,bird 230988,airplane 230989,ship 230990,ship 230991,airplane 230992,automobile 230993,deer 230994,truck 230995,airplane 230996,bird 230997,dog 230998,ship 230999,truck 231000,dog 231001,frog 231002,automobile 231003,bird 231004,automobile 231005,horse 231006,dog 231007,dog 231008,horse 231009,ship 231010,automobile 231011,automobile 231012,deer 231013,airplane 231014,ship 231015,deer 231016,frog 231017,airplane 231018,frog 231019,bird 231020,deer 231021,deer 231022,horse 231023,ship 231024,deer 231025,horse 231026,airplane 231027,bird 231028,dog 231029,frog 231030,dog 231031,cat 231032,bird 231033,automobile 231034,airplane 231035,dog 231036,airplane 231037,frog 231038,deer 231039,automobile 231040,horse 231041,ship 231042,bird 231043,horse 231044,deer 231045,ship 231046,cat 231047,dog 231048,dog 231049,bird 231050,deer 231051,horse 231052,frog 231053,truck 231054,ship 231055,cat 231056,ship 231057,automobile 231058,dog 231059,truck 231060,deer 231061,deer 231062,cat 231063,cat 231064,dog 231065,truck 231066,airplane 231067,truck 231068,ship 231069,cat 231070,deer 231071,cat 231072,dog 231073,frog 231074,deer 231075,airplane 231076,airplane 231077,truck 231078,cat 231079,horse 231080,bird 231081,automobile 231082,truck 231083,dog 231084,truck 231085,airplane 231086,deer 231087,horse 231088,cat 231089,horse 231090,deer 231091,cat 231092,bird 231093,horse 231094,bird 231095,bird 231096,cat 231097,cat 231098,horse 231099,truck 231100,cat 231101,airplane 231102,truck 231103,frog 231104,automobile 231105,deer 231106,frog 231107,dog 231108,deer 231109,bird 231110,horse 231111,cat 231112,bird 231113,cat 231114,ship 231115,bird 231116,cat 231117,bird 231118,deer 231119,deer 231120,dog 231121,truck 231122,horse 231123,frog 231124,horse 231125,truck 231126,frog 231127,cat 231128,dog 231129,cat 231130,airplane 231131,deer 231132,automobile 231133,airplane 231134,deer 231135,frog 231136,deer 231137,deer 231138,ship 231139,frog 231140,dog 231141,automobile 231142,horse 231143,cat 231144,deer 231145,automobile 231146,cat 231147,horse 231148,cat 231149,frog 231150,ship 231151,deer 231152,deer 231153,dog 231154,cat 231155,horse 231156,ship 231157,frog 231158,deer 231159,bird 231160,cat 231161,airplane 231162,frog 231163,deer 231164,truck 231165,cat 231166,deer 231167,bird 231168,automobile 231169,deer 231170,dog 231171,deer 231172,automobile 231173,horse 231174,horse 231175,horse 231176,automobile 231177,airplane 231178,frog 231179,deer 231180,ship 231181,horse 231182,horse 231183,deer 231184,bird 231185,cat 231186,frog 231187,deer 231188,ship 231189,bird 231190,automobile 231191,deer 231192,airplane 231193,airplane 231194,deer 231195,cat 231196,ship 231197,automobile 231198,horse 231199,deer 231200,cat 231201,automobile 231202,frog 231203,airplane 231204,truck 231205,horse 231206,ship 231207,frog 231208,airplane 231209,bird 231210,horse 231211,bird 231212,horse 231213,cat 231214,deer 231215,dog 231216,airplane 231217,bird 231218,frog 231219,automobile 231220,ship 231221,deer 231222,truck 231223,deer 231224,deer 231225,airplane 231226,ship 231227,truck 231228,cat 231229,bird 231230,deer 231231,truck 231232,dog 231233,truck 231234,dog 231235,deer 231236,ship 231237,dog 231238,deer 231239,deer 231240,cat 231241,ship 231242,airplane 231243,deer 231244,deer 231245,frog 231246,frog 231247,bird 231248,automobile 231249,automobile 231250,deer 231251,ship 231252,cat 231253,deer 231254,horse 231255,deer 231256,ship 231257,horse 231258,cat 231259,ship 231260,cat 231261,ship 231262,automobile 231263,automobile 231264,horse 231265,airplane 231266,frog 231267,cat 231268,deer 231269,horse 231270,cat 231271,ship 231272,horse 231273,airplane 231274,airplane 231275,deer 231276,deer 231277,deer 231278,frog 231279,frog 231280,cat 231281,deer 231282,dog 231283,airplane 231284,automobile 231285,automobile 231286,horse 231287,cat 231288,dog 231289,airplane 231290,frog 231291,cat 231292,frog 231293,deer 231294,deer 231295,bird 231296,dog 231297,deer 231298,cat 231299,dog 231300,deer 231301,airplane 231302,automobile 231303,cat 231304,deer 231305,frog 231306,cat 231307,dog 231308,bird 231309,ship 231310,deer 231311,bird 231312,truck 231313,cat 231314,bird 231315,deer 231316,airplane 231317,cat 231318,bird 231319,airplane 231320,cat 231321,deer 231322,airplane 231323,horse 231324,ship 231325,dog 231326,ship 231327,cat 231328,deer 231329,cat 231330,airplane 231331,horse 231332,ship 231333,automobile 231334,deer 231335,automobile 231336,ship 231337,airplane 231338,frog 231339,deer 231340,bird 231341,ship 231342,deer 231343,bird 231344,truck 231345,bird 231346,airplane 231347,horse 231348,automobile 231349,dog 231350,airplane 231351,truck 231352,horse 231353,frog 231354,frog 231355,deer 231356,bird 231357,ship 231358,dog 231359,frog 231360,automobile 231361,airplane 231362,automobile 231363,frog 231364,automobile 231365,cat 231366,deer 231367,cat 231368,horse 231369,frog 231370,horse 231371,bird 231372,airplane 231373,cat 231374,dog 231375,airplane 231376,deer 231377,deer 231378,automobile 231379,truck 231380,bird 231381,automobile 231382,cat 231383,bird 231384,truck 231385,cat 231386,frog 231387,bird 231388,ship 231389,airplane 231390,airplane 231391,deer 231392,airplane 231393,horse 231394,ship 231395,horse 231396,truck 231397,cat 231398,deer 231399,airplane 231400,frog 231401,dog 231402,bird 231403,cat 231404,frog 231405,deer 231406,automobile 231407,deer 231408,bird 231409,bird 231410,ship 231411,bird 231412,deer 231413,bird 231414,dog 231415,deer 231416,deer 231417,ship 231418,horse 231419,cat 231420,deer 231421,horse 231422,cat 231423,dog 231424,cat 231425,truck 231426,ship 231427,horse 231428,airplane 231429,frog 231430,horse 231431,truck 231432,deer 231433,airplane 231434,ship 231435,airplane 231436,airplane 231437,frog 231438,automobile 231439,horse 231440,bird 231441,airplane 231442,horse 231443,truck 231444,cat 231445,truck 231446,frog 231447,frog 231448,horse 231449,automobile 231450,truck 231451,airplane 231452,horse 231453,horse 231454,ship 231455,cat 231456,cat 231457,dog 231458,airplane 231459,truck 231460,ship 231461,horse 231462,frog 231463,airplane 231464,horse 231465,dog 231466,bird 231467,cat 231468,horse 231469,truck 231470,automobile 231471,airplane 231472,automobile 231473,truck 231474,horse 231475,automobile 231476,airplane 231477,truck 231478,cat 231479,dog 231480,horse 231481,bird 231482,ship 231483,frog 231484,bird 231485,truck 231486,deer 231487,frog 231488,bird 231489,deer 231490,airplane 231491,deer 231492,cat 231493,deer 231494,truck 231495,truck 231496,frog 231497,horse 231498,bird 231499,ship 231500,truck 231501,ship 231502,dog 231503,cat 231504,airplane 231505,automobile 231506,bird 231507,deer 231508,ship 231509,automobile 231510,deer 231511,deer 231512,dog 231513,bird 231514,airplane 231515,ship 231516,truck 231517,ship 231518,dog 231519,frog 231520,cat 231521,truck 231522,airplane 231523,airplane 231524,cat 231525,frog 231526,deer 231527,ship 231528,deer 231529,horse 231530,ship 231531,truck 231532,truck 231533,deer 231534,ship 231535,ship 231536,airplane 231537,cat 231538,ship 231539,horse 231540,airplane 231541,automobile 231542,ship 231543,frog 231544,dog 231545,horse 231546,dog 231547,cat 231548,bird 231549,cat 231550,ship 231551,airplane 231552,frog 231553,dog 231554,horse 231555,bird 231556,bird 231557,horse 231558,truck 231559,cat 231560,cat 231561,ship 231562,deer 231563,airplane 231564,airplane 231565,deer 231566,ship 231567,cat 231568,frog 231569,frog 231570,airplane 231571,automobile 231572,airplane 231573,deer 231574,truck 231575,cat 231576,horse 231577,frog 231578,dog 231579,frog 231580,deer 231581,automobile 231582,bird 231583,bird 231584,dog 231585,horse 231586,cat 231587,deer 231588,frog 231589,dog 231590,dog 231591,truck 231592,truck 231593,bird 231594,deer 231595,frog 231596,horse 231597,frog 231598,dog 231599,cat 231600,truck 231601,horse 231602,frog 231603,automobile 231604,cat 231605,deer 231606,airplane 231607,deer 231608,ship 231609,deer 231610,airplane 231611,horse 231612,dog 231613,airplane 231614,frog 231615,deer 231616,dog 231617,deer 231618,truck 231619,deer 231620,dog 231621,truck 231622,truck 231623,ship 231624,deer 231625,deer 231626,airplane 231627,cat 231628,frog 231629,bird 231630,frog 231631,frog 231632,automobile 231633,cat 231634,horse 231635,frog 231636,horse 231637,truck 231638,automobile 231639,frog 231640,bird 231641,airplane 231642,automobile 231643,deer 231644,airplane 231645,deer 231646,ship 231647,truck 231648,horse 231649,airplane 231650,cat 231651,ship 231652,ship 231653,ship 231654,deer 231655,dog 231656,dog 231657,deer 231658,automobile 231659,dog 231660,frog 231661,bird 231662,ship 231663,deer 231664,dog 231665,deer 231666,ship 231667,cat 231668,automobile 231669,frog 231670,cat 231671,horse 231672,cat 231673,bird 231674,frog 231675,dog 231676,bird 231677,bird 231678,automobile 231679,ship 231680,horse 231681,dog 231682,frog 231683,automobile 231684,ship 231685,deer 231686,automobile 231687,dog 231688,horse 231689,cat 231690,ship 231691,dog 231692,ship 231693,horse 231694,bird 231695,automobile 231696,deer 231697,truck 231698,dog 231699,automobile 231700,cat 231701,cat 231702,frog 231703,frog 231704,truck 231705,frog 231706,frog 231707,truck 231708,frog 231709,dog 231710,cat 231711,dog 231712,dog 231713,ship 231714,frog 231715,frog 231716,automobile 231717,bird 231718,frog 231719,ship 231720,airplane 231721,airplane 231722,cat 231723,truck 231724,ship 231725,horse 231726,deer 231727,airplane 231728,deer 231729,dog 231730,dog 231731,deer 231732,cat 231733,horse 231734,truck 231735,deer 231736,automobile 231737,automobile 231738,dog 231739,deer 231740,dog 231741,deer 231742,automobile 231743,bird 231744,deer 231745,frog 231746,deer 231747,frog 231748,cat 231749,horse 231750,deer 231751,ship 231752,airplane 231753,horse 231754,dog 231755,truck 231756,ship 231757,cat 231758,airplane 231759,automobile 231760,dog 231761,ship 231762,automobile 231763,ship 231764,truck 231765,horse 231766,deer 231767,airplane 231768,bird 231769,deer 231770,airplane 231771,truck 231772,deer 231773,cat 231774,frog 231775,deer 231776,airplane 231777,dog 231778,cat 231779,cat 231780,frog 231781,deer 231782,cat 231783,automobile 231784,truck 231785,dog 231786,bird 231787,horse 231788,deer 231789,deer 231790,horse 231791,automobile 231792,automobile 231793,automobile 231794,deer 231795,automobile 231796,horse 231797,ship 231798,deer 231799,automobile 231800,horse 231801,horse 231802,bird 231803,horse 231804,horse 231805,horse 231806,truck 231807,truck 231808,horse 231809,airplane 231810,bird 231811,truck 231812,ship 231813,airplane 231814,dog 231815,airplane 231816,cat 231817,deer 231818,airplane 231819,horse 231820,horse 231821,frog 231822,airplane 231823,horse 231824,truck 231825,horse 231826,dog 231827,horse 231828,deer 231829,bird 231830,automobile 231831,cat 231832,ship 231833,cat 231834,cat 231835,truck 231836,horse 231837,deer 231838,airplane 231839,cat 231840,automobile 231841,horse 231842,frog 231843,automobile 231844,dog 231845,frog 231846,dog 231847,deer 231848,truck 231849,horse 231850,truck 231851,airplane 231852,cat 231853,automobile 231854,horse 231855,airplane 231856,deer 231857,airplane 231858,airplane 231859,ship 231860,truck 231861,automobile 231862,frog 231863,horse 231864,cat 231865,horse 231866,frog 231867,horse 231868,bird 231869,ship 231870,deer 231871,frog 231872,bird 231873,truck 231874,automobile 231875,automobile 231876,ship 231877,frog 231878,frog 231879,airplane 231880,automobile 231881,dog 231882,cat 231883,dog 231884,airplane 231885,deer 231886,deer 231887,cat 231888,cat 231889,cat 231890,dog 231891,bird 231892,horse 231893,horse 231894,automobile 231895,frog 231896,dog 231897,dog 231898,frog 231899,deer 231900,frog 231901,ship 231902,airplane 231903,cat 231904,horse 231905,automobile 231906,automobile 231907,automobile 231908,airplane 231909,airplane 231910,ship 231911,truck 231912,truck 231913,frog 231914,deer 231915,horse 231916,dog 231917,truck 231918,cat 231919,truck 231920,frog 231921,ship 231922,dog 231923,airplane 231924,airplane 231925,dog 231926,horse 231927,automobile 231928,airplane 231929,truck 231930,dog 231931,automobile 231932,truck 231933,cat 231934,horse 231935,truck 231936,automobile 231937,bird 231938,deer 231939,deer 231940,automobile 231941,cat 231942,frog 231943,bird 231944,automobile 231945,cat 231946,airplane 231947,frog 231948,truck 231949,automobile 231950,truck 231951,cat 231952,truck 231953,airplane 231954,truck 231955,airplane 231956,truck 231957,cat 231958,automobile 231959,dog 231960,ship 231961,cat 231962,deer 231963,cat 231964,cat 231965,horse 231966,ship 231967,automobile 231968,deer 231969,automobile 231970,automobile 231971,frog 231972,frog 231973,bird 231974,truck 231975,cat 231976,deer 231977,ship 231978,horse 231979,cat 231980,dog 231981,bird 231982,dog 231983,ship 231984,ship 231985,cat 231986,airplane 231987,horse 231988,deer 231989,cat 231990,cat 231991,deer 231992,truck 231993,bird 231994,dog 231995,horse 231996,truck 231997,dog 231998,cat 231999,deer 232000,horse 232001,ship 232002,cat 232003,truck 232004,cat 232005,deer 232006,cat 232007,frog 232008,horse 232009,automobile 232010,bird 232011,cat 232012,frog 232013,frog 232014,truck 232015,frog 232016,ship 232017,frog 232018,automobile 232019,truck 232020,deer 232021,deer 232022,dog 232023,cat 232024,horse 232025,cat 232026,automobile 232027,truck 232028,horse 232029,airplane 232030,horse 232031,horse 232032,truck 232033,horse 232034,bird 232035,horse 232036,frog 232037,horse 232038,horse 232039,cat 232040,dog 232041,dog 232042,truck 232043,automobile 232044,frog 232045,frog 232046,dog 232047,deer 232048,deer 232049,deer 232050,horse 232051,truck 232052,ship 232053,bird 232054,horse 232055,frog 232056,dog 232057,horse 232058,dog 232059,dog 232060,horse 232061,cat 232062,bird 232063,frog 232064,airplane 232065,airplane 232066,deer 232067,dog 232068,cat 232069,dog 232070,automobile 232071,cat 232072,dog 232073,truck 232074,ship 232075,cat 232076,bird 232077,cat 232078,dog 232079,dog 232080,airplane 232081,truck 232082,ship 232083,automobile 232084,deer 232085,automobile 232086,cat 232087,truck 232088,dog 232089,ship 232090,bird 232091,ship 232092,cat 232093,horse 232094,deer 232095,deer 232096,dog 232097,truck 232098,dog 232099,horse 232100,cat 232101,truck 232102,deer 232103,bird 232104,airplane 232105,airplane 232106,truck 232107,horse 232108,truck 232109,truck 232110,truck 232111,frog 232112,cat 232113,frog 232114,airplane 232115,dog 232116,truck 232117,bird 232118,deer 232119,truck 232120,dog 232121,truck 232122,cat 232123,ship 232124,bird 232125,automobile 232126,dog 232127,truck 232128,deer 232129,frog 232130,ship 232131,automobile 232132,dog 232133,truck 232134,dog 232135,deer 232136,airplane 232137,horse 232138,cat 232139,cat 232140,truck 232141,truck 232142,frog 232143,bird 232144,deer 232145,frog 232146,dog 232147,horse 232148,dog 232149,bird 232150,automobile 232151,truck 232152,cat 232153,deer 232154,automobile 232155,horse 232156,deer 232157,airplane 232158,bird 232159,airplane 232160,horse 232161,deer 232162,dog 232163,deer 232164,ship 232165,ship 232166,frog 232167,truck 232168,automobile 232169,horse 232170,ship 232171,ship 232172,truck 232173,frog 232174,automobile 232175,ship 232176,deer 232177,horse 232178,airplane 232179,cat 232180,truck 232181,automobile 232182,truck 232183,frog 232184,cat 232185,airplane 232186,dog 232187,horse 232188,dog 232189,bird 232190,airplane 232191,horse 232192,cat 232193,frog 232194,ship 232195,deer 232196,deer 232197,truck 232198,ship 232199,airplane 232200,bird 232201,cat 232202,deer 232203,dog 232204,ship 232205,deer 232206,truck 232207,airplane 232208,deer 232209,cat 232210,ship 232211,bird 232212,dog 232213,dog 232214,bird 232215,horse 232216,horse 232217,airplane 232218,ship 232219,frog 232220,dog 232221,deer 232222,bird 232223,ship 232224,horse 232225,horse 232226,deer 232227,truck 232228,truck 232229,deer 232230,horse 232231,truck 232232,frog 232233,cat 232234,truck 232235,dog 232236,deer 232237,dog 232238,bird 232239,airplane 232240,deer 232241,deer 232242,frog 232243,truck 232244,airplane 232245,airplane 232246,dog 232247,airplane 232248,frog 232249,bird 232250,bird 232251,horse 232252,truck 232253,dog 232254,automobile 232255,truck 232256,cat 232257,cat 232258,dog 232259,dog 232260,cat 232261,dog 232262,frog 232263,bird 232264,automobile 232265,airplane 232266,dog 232267,airplane 232268,bird 232269,deer 232270,deer 232271,truck 232272,frog 232273,frog 232274,deer 232275,truck 232276,deer 232277,dog 232278,frog 232279,deer 232280,airplane 232281,frog 232282,ship 232283,cat 232284,airplane 232285,cat 232286,dog 232287,ship 232288,ship 232289,horse 232290,cat 232291,truck 232292,deer 232293,automobile 232294,frog 232295,airplane 232296,truck 232297,horse 232298,frog 232299,truck 232300,frog 232301,truck 232302,horse 232303,truck 232304,bird 232305,automobile 232306,airplane 232307,dog 232308,deer 232309,truck 232310,dog 232311,automobile 232312,deer 232313,deer 232314,automobile 232315,horse 232316,airplane 232317,cat 232318,deer 232319,frog 232320,ship 232321,dog 232322,horse 232323,cat 232324,frog 232325,frog 232326,horse 232327,cat 232328,bird 232329,truck 232330,cat 232331,deer 232332,ship 232333,bird 232334,airplane 232335,bird 232336,horse 232337,ship 232338,airplane 232339,dog 232340,bird 232341,cat 232342,cat 232343,bird 232344,frog 232345,horse 232346,airplane 232347,deer 232348,frog 232349,deer 232350,bird 232351,cat 232352,automobile 232353,truck 232354,airplane 232355,automobile 232356,airplane 232357,airplane 232358,horse 232359,horse 232360,deer 232361,frog 232362,truck 232363,ship 232364,automobile 232365,frog 232366,deer 232367,dog 232368,airplane 232369,deer 232370,frog 232371,bird 232372,automobile 232373,dog 232374,cat 232375,deer 232376,automobile 232377,frog 232378,cat 232379,deer 232380,cat 232381,deer 232382,frog 232383,truck 232384,deer 232385,deer 232386,automobile 232387,frog 232388,dog 232389,airplane 232390,dog 232391,frog 232392,bird 232393,horse 232394,cat 232395,airplane 232396,frog 232397,horse 232398,automobile 232399,cat 232400,bird 232401,truck 232402,bird 232403,cat 232404,cat 232405,cat 232406,frog 232407,bird 232408,dog 232409,frog 232410,truck 232411,bird 232412,dog 232413,truck 232414,horse 232415,horse 232416,deer 232417,automobile 232418,horse 232419,deer 232420,truck 232421,automobile 232422,cat 232423,horse 232424,frog 232425,bird 232426,bird 232427,ship 232428,dog 232429,bird 232430,ship 232431,bird 232432,airplane 232433,dog 232434,frog 232435,horse 232436,deer 232437,frog 232438,bird 232439,ship 232440,deer 232441,horse 232442,dog 232443,ship 232444,ship 232445,airplane 232446,ship 232447,ship 232448,cat 232449,dog 232450,bird 232451,ship 232452,truck 232453,horse 232454,bird 232455,truck 232456,truck 232457,dog 232458,dog 232459,cat 232460,deer 232461,bird 232462,airplane 232463,cat 232464,cat 232465,horse 232466,cat 232467,truck 232468,horse 232469,dog 232470,horse 232471,cat 232472,deer 232473,horse 232474,dog 232475,ship 232476,airplane 232477,truck 232478,horse 232479,airplane 232480,automobile 232481,bird 232482,bird 232483,cat 232484,deer 232485,bird 232486,ship 232487,truck 232488,bird 232489,truck 232490,bird 232491,bird 232492,frog 232493,dog 232494,horse 232495,dog 232496,frog 232497,cat 232498,dog 232499,frog 232500,bird 232501,deer 232502,bird 232503,truck 232504,truck 232505,bird 232506,horse 232507,automobile 232508,dog 232509,horse 232510,bird 232511,frog 232512,deer 232513,bird 232514,bird 232515,deer 232516,bird 232517,airplane 232518,deer 232519,deer 232520,dog 232521,airplane 232522,truck 232523,cat 232524,bird 232525,truck 232526,dog 232527,ship 232528,dog 232529,horse 232530,truck 232531,ship 232532,cat 232533,deer 232534,bird 232535,airplane 232536,deer 232537,truck 232538,deer 232539,automobile 232540,dog 232541,horse 232542,automobile 232543,dog 232544,horse 232545,truck 232546,ship 232547,frog 232548,deer 232549,cat 232550,airplane 232551,horse 232552,truck 232553,cat 232554,horse 232555,truck 232556,truck 232557,frog 232558,frog 232559,dog 232560,airplane 232561,ship 232562,airplane 232563,bird 232564,bird 232565,bird 232566,truck 232567,dog 232568,cat 232569,frog 232570,ship 232571,horse 232572,deer 232573,frog 232574,frog 232575,frog 232576,cat 232577,deer 232578,horse 232579,ship 232580,truck 232581,bird 232582,cat 232583,ship 232584,cat 232585,automobile 232586,frog 232587,deer 232588,automobile 232589,horse 232590,truck 232591,cat 232592,ship 232593,ship 232594,frog 232595,horse 232596,dog 232597,frog 232598,dog 232599,truck 232600,airplane 232601,cat 232602,frog 232603,bird 232604,dog 232605,frog 232606,cat 232607,dog 232608,truck 232609,cat 232610,cat 232611,truck 232612,deer 232613,airplane 232614,airplane 232615,cat 232616,cat 232617,horse 232618,bird 232619,dog 232620,ship 232621,horse 232622,bird 232623,airplane 232624,bird 232625,automobile 232626,deer 232627,deer 232628,deer 232629,cat 232630,truck 232631,bird 232632,cat 232633,dog 232634,automobile 232635,deer 232636,horse 232637,frog 232638,cat 232639,cat 232640,truck 232641,airplane 232642,dog 232643,frog 232644,dog 232645,horse 232646,airplane 232647,truck 232648,ship 232649,horse 232650,frog 232651,automobile 232652,cat 232653,truck 232654,dog 232655,automobile 232656,cat 232657,truck 232658,bird 232659,cat 232660,deer 232661,horse 232662,deer 232663,airplane 232664,airplane 232665,frog 232666,deer 232667,bird 232668,automobile 232669,airplane 232670,bird 232671,truck 232672,cat 232673,truck 232674,deer 232675,dog 232676,automobile 232677,automobile 232678,ship 232679,truck 232680,truck 232681,automobile 232682,horse 232683,horse 232684,dog 232685,deer 232686,dog 232687,frog 232688,frog 232689,truck 232690,airplane 232691,truck 232692,dog 232693,dog 232694,truck 232695,deer 232696,dog 232697,bird 232698,horse 232699,airplane 232700,horse 232701,deer 232702,automobile 232703,deer 232704,frog 232705,frog 232706,airplane 232707,dog 232708,automobile 232709,deer 232710,horse 232711,dog 232712,deer 232713,truck 232714,airplane 232715,dog 232716,frog 232717,cat 232718,automobile 232719,bird 232720,horse 232721,automobile 232722,frog 232723,ship 232724,truck 232725,horse 232726,bird 232727,truck 232728,deer 232729,ship 232730,cat 232731,horse 232732,dog 232733,ship 232734,ship 232735,airplane 232736,dog 232737,airplane 232738,bird 232739,truck 232740,horse 232741,automobile 232742,deer 232743,cat 232744,deer 232745,cat 232746,horse 232747,airplane 232748,automobile 232749,bird 232750,horse 232751,cat 232752,airplane 232753,dog 232754,cat 232755,cat 232756,dog 232757,dog 232758,bird 232759,automobile 232760,horse 232761,ship 232762,ship 232763,cat 232764,horse 232765,deer 232766,bird 232767,cat 232768,truck 232769,cat 232770,cat 232771,automobile 232772,deer 232773,dog 232774,horse 232775,truck 232776,ship 232777,horse 232778,cat 232779,cat 232780,cat 232781,airplane 232782,frog 232783,frog 232784,automobile 232785,horse 232786,truck 232787,dog 232788,bird 232789,deer 232790,cat 232791,automobile 232792,dog 232793,airplane 232794,automobile 232795,deer 232796,deer 232797,dog 232798,deer 232799,cat 232800,deer 232801,deer 232802,horse 232803,deer 232804,automobile 232805,truck 232806,horse 232807,cat 232808,deer 232809,cat 232810,frog 232811,bird 232812,automobile 232813,airplane 232814,deer 232815,frog 232816,frog 232817,frog 232818,automobile 232819,ship 232820,deer 232821,dog 232822,cat 232823,bird 232824,cat 232825,dog 232826,automobile 232827,horse 232828,horse 232829,bird 232830,horse 232831,deer 232832,cat 232833,airplane 232834,deer 232835,bird 232836,dog 232837,dog 232838,cat 232839,cat 232840,horse 232841,frog 232842,horse 232843,cat 232844,deer 232845,cat 232846,dog 232847,dog 232848,deer 232849,frog 232850,truck 232851,deer 232852,dog 232853,bird 232854,airplane 232855,ship 232856,deer 232857,horse 232858,truck 232859,ship 232860,airplane 232861,frog 232862,deer 232863,truck 232864,frog 232865,horse 232866,dog 232867,frog 232868,ship 232869,ship 232870,truck 232871,cat 232872,dog 232873,automobile 232874,deer 232875,bird 232876,automobile 232877,bird 232878,truck 232879,truck 232880,cat 232881,dog 232882,deer 232883,cat 232884,automobile 232885,deer 232886,horse 232887,automobile 232888,bird 232889,deer 232890,automobile 232891,truck 232892,truck 232893,airplane 232894,deer 232895,airplane 232896,bird 232897,frog 232898,deer 232899,dog 232900,truck 232901,deer 232902,cat 232903,truck 232904,ship 232905,horse 232906,cat 232907,ship 232908,cat 232909,frog 232910,ship 232911,ship 232912,deer 232913,bird 232914,dog 232915,frog 232916,deer 232917,bird 232918,airplane 232919,cat 232920,dog 232921,dog 232922,frog 232923,dog 232924,airplane 232925,cat 232926,airplane 232927,horse 232928,frog 232929,airplane 232930,cat 232931,automobile 232932,horse 232933,automobile 232934,cat 232935,cat 232936,dog 232937,cat 232938,cat 232939,automobile 232940,dog 232941,bird 232942,airplane 232943,deer 232944,automobile 232945,truck 232946,truck 232947,automobile 232948,deer 232949,deer 232950,dog 232951,frog 232952,bird 232953,airplane 232954,ship 232955,airplane 232956,cat 232957,bird 232958,truck 232959,cat 232960,truck 232961,truck 232962,airplane 232963,deer 232964,horse 232965,ship 232966,dog 232967,automobile 232968,horse 232969,bird 232970,horse 232971,truck 232972,bird 232973,deer 232974,frog 232975,truck 232976,airplane 232977,frog 232978,frog 232979,truck 232980,cat 232981,dog 232982,cat 232983,horse 232984,cat 232985,truck 232986,deer 232987,frog 232988,airplane 232989,airplane 232990,frog 232991,airplane 232992,cat 232993,horse 232994,bird 232995,dog 232996,bird 232997,airplane 232998,bird 232999,frog 233000,horse 233001,bird 233002,frog 233003,cat 233004,dog 233005,cat 233006,automobile 233007,deer 233008,cat 233009,truck 233010,deer 233011,deer 233012,frog 233013,automobile 233014,dog 233015,cat 233016,cat 233017,cat 233018,bird 233019,ship 233020,automobile 233021,dog 233022,airplane 233023,frog 233024,truck 233025,cat 233026,automobile 233027,truck 233028,frog 233029,horse 233030,bird 233031,bird 233032,airplane 233033,airplane 233034,automobile 233035,bird 233036,airplane 233037,horse 233038,horse 233039,automobile 233040,cat 233041,frog 233042,cat 233043,dog 233044,cat 233045,horse 233046,airplane 233047,horse 233048,frog 233049,truck 233050,ship 233051,truck 233052,cat 233053,horse 233054,dog 233055,frog 233056,automobile 233057,airplane 233058,frog 233059,dog 233060,automobile 233061,airplane 233062,truck 233063,frog 233064,ship 233065,deer 233066,deer 233067,deer 233068,airplane 233069,dog 233070,cat 233071,airplane 233072,frog 233073,truck 233074,cat 233075,bird 233076,truck 233077,deer 233078,deer 233079,ship 233080,dog 233081,truck 233082,horse 233083,bird 233084,truck 233085,frog 233086,cat 233087,airplane 233088,airplane 233089,frog 233090,frog 233091,truck 233092,truck 233093,automobile 233094,dog 233095,truck 233096,airplane 233097,frog 233098,ship 233099,deer 233100,bird 233101,airplane 233102,cat 233103,airplane 233104,deer 233105,deer 233106,dog 233107,automobile 233108,deer 233109,cat 233110,ship 233111,airplane 233112,deer 233113,dog 233114,frog 233115,deer 233116,truck 233117,cat 233118,bird 233119,automobile 233120,frog 233121,cat 233122,deer 233123,ship 233124,cat 233125,frog 233126,deer 233127,dog 233128,cat 233129,airplane 233130,cat 233131,deer 233132,frog 233133,cat 233134,frog 233135,deer 233136,horse 233137,cat 233138,bird 233139,frog 233140,dog 233141,cat 233142,airplane 233143,ship 233144,ship 233145,deer 233146,dog 233147,airplane 233148,truck 233149,airplane 233150,ship 233151,dog 233152,frog 233153,deer 233154,airplane 233155,bird 233156,truck 233157,automobile 233158,airplane 233159,frog 233160,cat 233161,automobile 233162,dog 233163,truck 233164,horse 233165,truck 233166,deer 233167,truck 233168,horse 233169,deer 233170,cat 233171,airplane 233172,frog 233173,automobile 233174,bird 233175,cat 233176,dog 233177,truck 233178,deer 233179,bird 233180,deer 233181,automobile 233182,bird 233183,frog 233184,dog 233185,frog 233186,dog 233187,deer 233188,bird 233189,bird 233190,dog 233191,cat 233192,truck 233193,airplane 233194,truck 233195,truck 233196,horse 233197,dog 233198,truck 233199,dog 233200,ship 233201,ship 233202,bird 233203,automobile 233204,dog 233205,cat 233206,ship 233207,dog 233208,airplane 233209,airplane 233210,cat 233211,airplane 233212,cat 233213,bird 233214,dog 233215,cat 233216,truck 233217,airplane 233218,horse 233219,bird 233220,automobile 233221,horse 233222,truck 233223,deer 233224,ship 233225,truck 233226,deer 233227,bird 233228,automobile 233229,deer 233230,airplane 233231,cat 233232,ship 233233,frog 233234,ship 233235,deer 233236,automobile 233237,automobile 233238,dog 233239,horse 233240,frog 233241,truck 233242,deer 233243,automobile 233244,ship 233245,frog 233246,deer 233247,frog 233248,cat 233249,cat 233250,cat 233251,ship 233252,frog 233253,deer 233254,horse 233255,ship 233256,airplane 233257,cat 233258,automobile 233259,ship 233260,bird 233261,automobile 233262,deer 233263,bird 233264,bird 233265,deer 233266,ship 233267,truck 233268,cat 233269,bird 233270,automobile 233271,deer 233272,dog 233273,truck 233274,truck 233275,horse 233276,horse 233277,airplane 233278,dog 233279,dog 233280,dog 233281,truck 233282,automobile 233283,dog 233284,ship 233285,automobile 233286,automobile 233287,frog 233288,cat 233289,cat 233290,dog 233291,cat 233292,automobile 233293,truck 233294,airplane 233295,bird 233296,cat 233297,truck 233298,cat 233299,horse 233300,horse 233301,bird 233302,horse 233303,truck 233304,cat 233305,automobile 233306,truck 233307,frog 233308,airplane 233309,bird 233310,cat 233311,cat 233312,deer 233313,horse 233314,cat 233315,frog 233316,deer 233317,deer 233318,dog 233319,cat 233320,frog 233321,frog 233322,truck 233323,frog 233324,cat 233325,bird 233326,deer 233327,airplane 233328,dog 233329,dog 233330,ship 233331,ship 233332,horse 233333,airplane 233334,ship 233335,frog 233336,frog 233337,cat 233338,frog 233339,deer 233340,cat 233341,deer 233342,bird 233343,ship 233344,frog 233345,truck 233346,frog 233347,automobile 233348,dog 233349,cat 233350,truck 233351,automobile 233352,cat 233353,automobile 233354,dog 233355,frog 233356,frog 233357,cat 233358,cat 233359,frog 233360,horse 233361,dog 233362,ship 233363,airplane 233364,deer 233365,truck 233366,deer 233367,ship 233368,airplane 233369,deer 233370,automobile 233371,dog 233372,bird 233373,dog 233374,cat 233375,bird 233376,cat 233377,automobile 233378,bird 233379,deer 233380,bird 233381,dog 233382,dog 233383,automobile 233384,frog 233385,dog 233386,deer 233387,bird 233388,frog 233389,dog 233390,horse 233391,dog 233392,airplane 233393,deer 233394,ship 233395,dog 233396,deer 233397,automobile 233398,ship 233399,ship 233400,frog 233401,bird 233402,bird 233403,truck 233404,airplane 233405,dog 233406,airplane 233407,airplane 233408,truck 233409,horse 233410,automobile 233411,cat 233412,automobile 233413,frog 233414,deer 233415,deer 233416,cat 233417,airplane 233418,horse 233419,bird 233420,automobile 233421,frog 233422,cat 233423,ship 233424,truck 233425,airplane 233426,automobile 233427,deer 233428,truck 233429,dog 233430,dog 233431,frog 233432,airplane 233433,bird 233434,deer 233435,bird 233436,airplane 233437,deer 233438,bird 233439,automobile 233440,dog 233441,horse 233442,truck 233443,ship 233444,automobile 233445,frog 233446,truck 233447,truck 233448,ship 233449,bird 233450,ship 233451,bird 233452,ship 233453,dog 233454,bird 233455,deer 233456,cat 233457,truck 233458,dog 233459,deer 233460,cat 233461,horse 233462,ship 233463,dog 233464,automobile 233465,horse 233466,horse 233467,deer 233468,bird 233469,ship 233470,deer 233471,truck 233472,cat 233473,bird 233474,dog 233475,truck 233476,cat 233477,deer 233478,cat 233479,dog 233480,bird 233481,automobile 233482,dog 233483,truck 233484,truck 233485,airplane 233486,ship 233487,deer 233488,truck 233489,airplane 233490,dog 233491,airplane 233492,cat 233493,cat 233494,airplane 233495,deer 233496,truck 233497,bird 233498,ship 233499,bird 233500,bird 233501,deer 233502,dog 233503,frog 233504,frog 233505,ship 233506,automobile 233507,truck 233508,frog 233509,truck 233510,frog 233511,automobile 233512,ship 233513,deer 233514,dog 233515,airplane 233516,automobile 233517,frog 233518,deer 233519,automobile 233520,truck 233521,truck 233522,deer 233523,airplane 233524,deer 233525,truck 233526,dog 233527,dog 233528,deer 233529,horse 233530,deer 233531,ship 233532,ship 233533,truck 233534,ship 233535,dog 233536,deer 233537,bird 233538,cat 233539,cat 233540,horse 233541,frog 233542,horse 233543,deer 233544,bird 233545,truck 233546,truck 233547,frog 233548,deer 233549,automobile 233550,ship 233551,horse 233552,cat 233553,dog 233554,dog 233555,cat 233556,dog 233557,cat 233558,ship 233559,deer 233560,cat 233561,horse 233562,deer 233563,deer 233564,dog 233565,frog 233566,automobile 233567,ship 233568,airplane 233569,truck 233570,frog 233571,ship 233572,deer 233573,horse 233574,deer 233575,airplane 233576,airplane 233577,deer 233578,deer 233579,deer 233580,truck 233581,airplane 233582,bird 233583,bird 233584,airplane 233585,horse 233586,horse 233587,frog 233588,ship 233589,cat 233590,frog 233591,dog 233592,deer 233593,automobile 233594,automobile 233595,bird 233596,ship 233597,horse 233598,airplane 233599,truck 233600,bird 233601,automobile 233602,automobile 233603,ship 233604,cat 233605,automobile 233606,airplane 233607,airplane 233608,bird 233609,horse 233610,automobile 233611,bird 233612,horse 233613,airplane 233614,frog 233615,truck 233616,deer 233617,airplane 233618,cat 233619,deer 233620,bird 233621,horse 233622,ship 233623,bird 233624,deer 233625,horse 233626,cat 233627,dog 233628,airplane 233629,bird 233630,cat 233631,cat 233632,bird 233633,ship 233634,horse 233635,deer 233636,truck 233637,ship 233638,cat 233639,ship 233640,truck 233641,cat 233642,airplane 233643,horse 233644,automobile 233645,truck 233646,cat 233647,cat 233648,airplane 233649,horse 233650,ship 233651,truck 233652,airplane 233653,automobile 233654,truck 233655,ship 233656,frog 233657,airplane 233658,bird 233659,airplane 233660,cat 233661,ship 233662,cat 233663,airplane 233664,bird 233665,ship 233666,bird 233667,horse 233668,horse 233669,deer 233670,deer 233671,ship 233672,truck 233673,cat 233674,automobile 233675,bird 233676,truck 233677,airplane 233678,truck 233679,dog 233680,truck 233681,frog 233682,automobile 233683,cat 233684,cat 233685,automobile 233686,frog 233687,horse 233688,airplane 233689,cat 233690,bird 233691,horse 233692,cat 233693,horse 233694,airplane 233695,deer 233696,ship 233697,automobile 233698,bird 233699,truck 233700,deer 233701,truck 233702,frog 233703,automobile 233704,bird 233705,cat 233706,cat 233707,ship 233708,ship 233709,truck 233710,cat 233711,automobile 233712,automobile 233713,bird 233714,deer 233715,automobile 233716,cat 233717,horse 233718,automobile 233719,deer 233720,deer 233721,automobile 233722,dog 233723,dog 233724,automobile 233725,frog 233726,ship 233727,dog 233728,airplane 233729,ship 233730,cat 233731,ship 233732,truck 233733,deer 233734,bird 233735,dog 233736,dog 233737,ship 233738,horse 233739,deer 233740,airplane 233741,dog 233742,deer 233743,deer 233744,frog 233745,deer 233746,truck 233747,horse 233748,automobile 233749,horse 233750,horse 233751,automobile 233752,dog 233753,frog 233754,deer 233755,dog 233756,ship 233757,frog 233758,dog 233759,frog 233760,truck 233761,cat 233762,cat 233763,bird 233764,bird 233765,ship 233766,dog 233767,automobile 233768,truck 233769,airplane 233770,deer 233771,dog 233772,airplane 233773,deer 233774,cat 233775,deer 233776,automobile 233777,horse 233778,truck 233779,horse 233780,deer 233781,airplane 233782,ship 233783,bird 233784,frog 233785,truck 233786,automobile 233787,horse 233788,airplane 233789,frog 233790,cat 233791,cat 233792,deer 233793,horse 233794,airplane 233795,ship 233796,deer 233797,cat 233798,airplane 233799,truck 233800,ship 233801,horse 233802,cat 233803,deer 233804,airplane 233805,deer 233806,horse 233807,horse 233808,dog 233809,cat 233810,airplane 233811,bird 233812,deer 233813,deer 233814,truck 233815,cat 233816,deer 233817,horse 233818,bird 233819,truck 233820,deer 233821,truck 233822,horse 233823,ship 233824,ship 233825,truck 233826,automobile 233827,frog 233828,bird 233829,deer 233830,truck 233831,deer 233832,deer 233833,horse 233834,airplane 233835,dog 233836,horse 233837,horse 233838,deer 233839,deer 233840,cat 233841,automobile 233842,airplane 233843,bird 233844,frog 233845,ship 233846,deer 233847,bird 233848,dog 233849,bird 233850,cat 233851,deer 233852,horse 233853,dog 233854,airplane 233855,bird 233856,frog 233857,deer 233858,deer 233859,ship 233860,truck 233861,deer 233862,cat 233863,frog 233864,frog 233865,deer 233866,frog 233867,horse 233868,frog 233869,automobile 233870,cat 233871,horse 233872,truck 233873,frog 233874,deer 233875,airplane 233876,cat 233877,frog 233878,airplane 233879,automobile 233880,deer 233881,truck 233882,deer 233883,horse 233884,frog 233885,bird 233886,truck 233887,cat 233888,deer 233889,truck 233890,cat 233891,frog 233892,deer 233893,truck 233894,truck 233895,cat 233896,airplane 233897,airplane 233898,airplane 233899,automobile 233900,airplane 233901,automobile 233902,truck 233903,frog 233904,truck 233905,truck 233906,dog 233907,truck 233908,bird 233909,deer 233910,horse 233911,deer 233912,ship 233913,horse 233914,deer 233915,frog 233916,horse 233917,frog 233918,bird 233919,cat 233920,automobile 233921,cat 233922,dog 233923,truck 233924,deer 233925,ship 233926,dog 233927,cat 233928,automobile 233929,automobile 233930,frog 233931,truck 233932,horse 233933,airplane 233934,frog 233935,cat 233936,horse 233937,horse 233938,automobile 233939,cat 233940,dog 233941,deer 233942,dog 233943,bird 233944,bird 233945,airplane 233946,deer 233947,frog 233948,cat 233949,horse 233950,airplane 233951,cat 233952,truck 233953,bird 233954,horse 233955,truck 233956,frog 233957,cat 233958,ship 233959,deer 233960,dog 233961,automobile 233962,truck 233963,automobile 233964,bird 233965,frog 233966,airplane 233967,automobile 233968,truck 233969,airplane 233970,cat 233971,horse 233972,airplane 233973,truck 233974,deer 233975,dog 233976,ship 233977,deer 233978,frog 233979,dog 233980,airplane 233981,horse 233982,truck 233983,truck 233984,ship 233985,deer 233986,airplane 233987,deer 233988,frog 233989,cat 233990,horse 233991,ship 233992,bird 233993,dog 233994,cat 233995,automobile 233996,dog 233997,truck 233998,dog 233999,deer 234000,horse 234001,deer 234002,truck 234003,ship 234004,deer 234005,bird 234006,horse 234007,truck 234008,ship 234009,horse 234010,cat 234011,deer 234012,bird 234013,deer 234014,truck 234015,airplane 234016,truck 234017,deer 234018,bird 234019,dog 234020,deer 234021,ship 234022,ship 234023,frog 234024,automobile 234025,frog 234026,cat 234027,frog 234028,truck 234029,bird 234030,frog 234031,cat 234032,automobile 234033,horse 234034,cat 234035,airplane 234036,truck 234037,horse 234038,frog 234039,deer 234040,truck 234041,dog 234042,frog 234043,deer 234044,airplane 234045,ship 234046,cat 234047,automobile 234048,frog 234049,deer 234050,frog 234051,frog 234052,cat 234053,cat 234054,airplane 234055,truck 234056,truck 234057,ship 234058,truck 234059,deer 234060,cat 234061,deer 234062,deer 234063,truck 234064,deer 234065,cat 234066,cat 234067,airplane 234068,automobile 234069,truck 234070,horse 234071,deer 234072,bird 234073,truck 234074,deer 234075,cat 234076,bird 234077,dog 234078,cat 234079,frog 234080,airplane 234081,airplane 234082,bird 234083,deer 234084,ship 234085,cat 234086,horse 234087,horse 234088,airplane 234089,deer 234090,frog 234091,bird 234092,deer 234093,truck 234094,dog 234095,cat 234096,automobile 234097,horse 234098,cat 234099,deer 234100,frog 234101,automobile 234102,airplane 234103,airplane 234104,deer 234105,cat 234106,dog 234107,cat 234108,airplane 234109,frog 234110,truck 234111,horse 234112,truck 234113,truck 234114,airplane 234115,horse 234116,truck 234117,airplane 234118,dog 234119,dog 234120,dog 234121,frog 234122,deer 234123,deer 234124,deer 234125,airplane 234126,ship 234127,frog 234128,horse 234129,dog 234130,automobile 234131,horse 234132,ship 234133,truck 234134,deer 234135,frog 234136,frog 234137,frog 234138,truck 234139,automobile 234140,ship 234141,truck 234142,cat 234143,deer 234144,deer 234145,ship 234146,deer 234147,deer 234148,frog 234149,airplane 234150,bird 234151,dog 234152,deer 234153,deer 234154,bird 234155,cat 234156,deer 234157,dog 234158,bird 234159,horse 234160,horse 234161,deer 234162,truck 234163,dog 234164,bird 234165,deer 234166,horse 234167,cat 234168,automobile 234169,airplane 234170,cat 234171,ship 234172,frog 234173,automobile 234174,airplane 234175,cat 234176,deer 234177,dog 234178,frog 234179,frog 234180,deer 234181,cat 234182,dog 234183,deer 234184,frog 234185,deer 234186,deer 234187,ship 234188,bird 234189,dog 234190,dog 234191,cat 234192,truck 234193,frog 234194,horse 234195,dog 234196,dog 234197,deer 234198,dog 234199,ship 234200,airplane 234201,horse 234202,frog 234203,automobile 234204,cat 234205,frog 234206,airplane 234207,cat 234208,cat 234209,airplane 234210,cat 234211,frog 234212,automobile 234213,ship 234214,ship 234215,deer 234216,bird 234217,cat 234218,dog 234219,dog 234220,airplane 234221,cat 234222,deer 234223,truck 234224,airplane 234225,cat 234226,ship 234227,cat 234228,dog 234229,bird 234230,cat 234231,dog 234232,truck 234233,deer 234234,automobile 234235,truck 234236,bird 234237,dog 234238,truck 234239,frog 234240,truck 234241,cat 234242,dog 234243,truck 234244,cat 234245,deer 234246,truck 234247,automobile 234248,automobile 234249,frog 234250,horse 234251,bird 234252,automobile 234253,ship 234254,airplane 234255,horse 234256,deer 234257,dog 234258,airplane 234259,frog 234260,frog 234261,bird 234262,truck 234263,airplane 234264,cat 234265,dog 234266,frog 234267,horse 234268,deer 234269,bird 234270,automobile 234271,bird 234272,frog 234273,dog 234274,airplane 234275,dog 234276,automobile 234277,bird 234278,frog 234279,horse 234280,bird 234281,deer 234282,cat 234283,ship 234284,frog 234285,cat 234286,ship 234287,deer 234288,deer 234289,deer 234290,ship 234291,horse 234292,deer 234293,dog 234294,cat 234295,frog 234296,deer 234297,deer 234298,bird 234299,ship 234300,deer 234301,truck 234302,frog 234303,airplane 234304,dog 234305,airplane 234306,deer 234307,automobile 234308,horse 234309,truck 234310,deer 234311,airplane 234312,airplane 234313,ship 234314,cat 234315,cat 234316,frog 234317,airplane 234318,automobile 234319,dog 234320,horse 234321,deer 234322,deer 234323,horse 234324,dog 234325,automobile 234326,frog 234327,automobile 234328,truck 234329,horse 234330,cat 234331,bird 234332,truck 234333,airplane 234334,airplane 234335,dog 234336,cat 234337,deer 234338,airplane 234339,truck 234340,bird 234341,ship 234342,truck 234343,frog 234344,cat 234345,frog 234346,truck 234347,deer 234348,horse 234349,bird 234350,horse 234351,truck 234352,ship 234353,horse 234354,automobile 234355,dog 234356,airplane 234357,frog 234358,cat 234359,horse 234360,horse 234361,cat 234362,ship 234363,frog 234364,truck 234365,deer 234366,horse 234367,airplane 234368,dog 234369,dog 234370,airplane 234371,frog 234372,horse 234373,bird 234374,deer 234375,dog 234376,deer 234377,bird 234378,frog 234379,cat 234380,cat 234381,cat 234382,ship 234383,truck 234384,ship 234385,frog 234386,truck 234387,bird 234388,bird 234389,automobile 234390,frog 234391,truck 234392,cat 234393,horse 234394,ship 234395,deer 234396,ship 234397,ship 234398,truck 234399,dog 234400,bird 234401,automobile 234402,bird 234403,truck 234404,deer 234405,truck 234406,truck 234407,deer 234408,truck 234409,automobile 234410,cat 234411,bird 234412,cat 234413,frog 234414,bird 234415,automobile 234416,airplane 234417,frog 234418,airplane 234419,deer 234420,dog 234421,cat 234422,deer 234423,frog 234424,airplane 234425,cat 234426,deer 234427,airplane 234428,dog 234429,dog 234430,dog 234431,airplane 234432,airplane 234433,frog 234434,deer 234435,dog 234436,deer 234437,truck 234438,horse 234439,bird 234440,airplane 234441,frog 234442,cat 234443,frog 234444,deer 234445,bird 234446,airplane 234447,dog 234448,deer 234449,automobile 234450,frog 234451,frog 234452,dog 234453,deer 234454,deer 234455,ship 234456,dog 234457,airplane 234458,cat 234459,automobile 234460,cat 234461,bird 234462,automobile 234463,horse 234464,cat 234465,horse 234466,frog 234467,bird 234468,frog 234469,automobile 234470,horse 234471,dog 234472,cat 234473,horse 234474,truck 234475,horse 234476,dog 234477,horse 234478,frog 234479,deer 234480,deer 234481,frog 234482,automobile 234483,ship 234484,deer 234485,ship 234486,truck 234487,horse 234488,airplane 234489,truck 234490,bird 234491,cat 234492,truck 234493,frog 234494,truck 234495,automobile 234496,deer 234497,bird 234498,horse 234499,deer 234500,bird 234501,automobile 234502,automobile 234503,cat 234504,truck 234505,frog 234506,airplane 234507,dog 234508,frog 234509,automobile 234510,frog 234511,truck 234512,frog 234513,deer 234514,bird 234515,ship 234516,cat 234517,horse 234518,frog 234519,automobile 234520,airplane 234521,ship 234522,automobile 234523,cat 234524,ship 234525,cat 234526,dog 234527,bird 234528,deer 234529,deer 234530,cat 234531,bird 234532,cat 234533,cat 234534,deer 234535,cat 234536,deer 234537,frog 234538,dog 234539,ship 234540,dog 234541,truck 234542,cat 234543,cat 234544,truck 234545,deer 234546,horse 234547,bird 234548,truck 234549,airplane 234550,truck 234551,dog 234552,automobile 234553,frog 234554,truck 234555,bird 234556,bird 234557,frog 234558,dog 234559,cat 234560,bird 234561,airplane 234562,deer 234563,bird 234564,cat 234565,truck 234566,automobile 234567,frog 234568,frog 234569,horse 234570,frog 234571,truck 234572,deer 234573,dog 234574,automobile 234575,deer 234576,dog 234577,ship 234578,cat 234579,dog 234580,automobile 234581,airplane 234582,airplane 234583,cat 234584,cat 234585,deer 234586,ship 234587,dog 234588,deer 234589,truck 234590,automobile 234591,frog 234592,horse 234593,frog 234594,cat 234595,cat 234596,airplane 234597,dog 234598,frog 234599,horse 234600,truck 234601,truck 234602,horse 234603,frog 234604,dog 234605,automobile 234606,ship 234607,bird 234608,bird 234609,dog 234610,automobile 234611,truck 234612,truck 234613,truck 234614,truck 234615,truck 234616,automobile 234617,truck 234618,dog 234619,deer 234620,deer 234621,horse 234622,frog 234623,deer 234624,horse 234625,bird 234626,dog 234627,frog 234628,horse 234629,deer 234630,truck 234631,truck 234632,frog 234633,automobile 234634,ship 234635,horse 234636,automobile 234637,deer 234638,truck 234639,automobile 234640,cat 234641,cat 234642,truck 234643,truck 234644,dog 234645,cat 234646,horse 234647,bird 234648,cat 234649,frog 234650,horse 234651,airplane 234652,horse 234653,bird 234654,truck 234655,horse 234656,cat 234657,automobile 234658,cat 234659,automobile 234660,truck 234661,frog 234662,dog 234663,frog 234664,cat 234665,cat 234666,frog 234667,ship 234668,deer 234669,horse 234670,dog 234671,cat 234672,automobile 234673,deer 234674,deer 234675,automobile 234676,horse 234677,bird 234678,airplane 234679,automobile 234680,frog 234681,automobile 234682,deer 234683,deer 234684,deer 234685,frog 234686,ship 234687,ship 234688,cat 234689,automobile 234690,dog 234691,automobile 234692,frog 234693,truck 234694,automobile 234695,deer 234696,deer 234697,dog 234698,airplane 234699,dog 234700,truck 234701,automobile 234702,deer 234703,deer 234704,frog 234705,horse 234706,cat 234707,bird 234708,bird 234709,airplane 234710,cat 234711,frog 234712,truck 234713,cat 234714,automobile 234715,deer 234716,horse 234717,horse 234718,truck 234719,truck 234720,deer 234721,airplane 234722,deer 234723,horse 234724,bird 234725,deer 234726,horse 234727,bird 234728,ship 234729,ship 234730,deer 234731,bird 234732,frog 234733,truck 234734,bird 234735,ship 234736,dog 234737,dog 234738,cat 234739,cat 234740,automobile 234741,deer 234742,automobile 234743,dog 234744,truck 234745,truck 234746,dog 234747,deer 234748,frog 234749,truck 234750,bird 234751,truck 234752,airplane 234753,dog 234754,truck 234755,airplane 234756,cat 234757,dog 234758,cat 234759,deer 234760,deer 234761,cat 234762,deer 234763,bird 234764,frog 234765,frog 234766,cat 234767,automobile 234768,truck 234769,deer 234770,ship 234771,bird 234772,bird 234773,bird 234774,frog 234775,horse 234776,ship 234777,truck 234778,automobile 234779,cat 234780,airplane 234781,automobile 234782,airplane 234783,truck 234784,airplane 234785,airplane 234786,ship 234787,cat 234788,dog 234789,automobile 234790,deer 234791,horse 234792,cat 234793,airplane 234794,frog 234795,ship 234796,horse 234797,dog 234798,cat 234799,automobile 234800,truck 234801,frog 234802,dog 234803,frog 234804,truck 234805,cat 234806,horse 234807,horse 234808,truck 234809,ship 234810,truck 234811,truck 234812,cat 234813,deer 234814,deer 234815,truck 234816,frog 234817,automobile 234818,deer 234819,deer 234820,frog 234821,frog 234822,truck 234823,frog 234824,deer 234825,automobile 234826,frog 234827,ship 234828,automobile 234829,airplane 234830,cat 234831,bird 234832,dog 234833,horse 234834,deer 234835,deer 234836,deer 234837,automobile 234838,cat 234839,bird 234840,bird 234841,bird 234842,horse 234843,ship 234844,airplane 234845,frog 234846,truck 234847,ship 234848,horse 234849,truck 234850,automobile 234851,airplane 234852,deer 234853,horse 234854,dog 234855,cat 234856,automobile 234857,cat 234858,frog 234859,truck 234860,airplane 234861,cat 234862,truck 234863,bird 234864,automobile 234865,deer 234866,cat 234867,airplane 234868,ship 234869,frog 234870,dog 234871,automobile 234872,automobile 234873,dog 234874,truck 234875,truck 234876,truck 234877,truck 234878,horse 234879,deer 234880,frog 234881,frog 234882,deer 234883,truck 234884,deer 234885,bird 234886,ship 234887,horse 234888,cat 234889,truck 234890,bird 234891,deer 234892,airplane 234893,truck 234894,bird 234895,deer 234896,deer 234897,airplane 234898,dog 234899,truck 234900,cat 234901,bird 234902,horse 234903,airplane 234904,dog 234905,horse 234906,ship 234907,truck 234908,automobile 234909,dog 234910,dog 234911,deer 234912,truck 234913,dog 234914,automobile 234915,dog 234916,horse 234917,frog 234918,airplane 234919,automobile 234920,frog 234921,horse 234922,automobile 234923,horse 234924,frog 234925,deer 234926,cat 234927,frog 234928,ship 234929,horse 234930,ship 234931,airplane 234932,ship 234933,airplane 234934,dog 234935,bird 234936,cat 234937,dog 234938,dog 234939,automobile 234940,cat 234941,frog 234942,airplane 234943,ship 234944,airplane 234945,horse 234946,ship 234947,frog 234948,frog 234949,cat 234950,automobile 234951,truck 234952,deer 234953,truck 234954,truck 234955,dog 234956,frog 234957,frog 234958,ship 234959,dog 234960,dog 234961,airplane 234962,horse 234963,deer 234964,frog 234965,bird 234966,truck 234967,automobile 234968,horse 234969,bird 234970,horse 234971,dog 234972,automobile 234973,ship 234974,deer 234975,bird 234976,airplane 234977,deer 234978,horse 234979,truck 234980,airplane 234981,truck 234982,deer 234983,horse 234984,ship 234985,dog 234986,airplane 234987,automobile 234988,bird 234989,cat 234990,cat 234991,cat 234992,ship 234993,frog 234994,frog 234995,automobile 234996,ship 234997,cat 234998,horse 234999,deer 235000,horse 235001,bird 235002,bird 235003,ship 235004,cat 235005,frog 235006,frog 235007,automobile 235008,truck 235009,horse 235010,frog 235011,airplane 235012,automobile 235013,truck 235014,deer 235015,cat 235016,cat 235017,frog 235018,cat 235019,airplane 235020,automobile 235021,horse 235022,bird 235023,cat 235024,horse 235025,automobile 235026,horse 235027,cat 235028,automobile 235029,ship 235030,frog 235031,airplane 235032,horse 235033,bird 235034,airplane 235035,cat 235036,automobile 235037,ship 235038,deer 235039,cat 235040,frog 235041,dog 235042,horse 235043,frog 235044,truck 235045,cat 235046,airplane 235047,truck 235048,cat 235049,frog 235050,truck 235051,truck 235052,truck 235053,cat 235054,frog 235055,airplane 235056,bird 235057,airplane 235058,deer 235059,truck 235060,frog 235061,cat 235062,truck 235063,deer 235064,ship 235065,airplane 235066,deer 235067,airplane 235068,frog 235069,ship 235070,automobile 235071,truck 235072,truck 235073,airplane 235074,horse 235075,truck 235076,deer 235077,airplane 235078,dog 235079,deer 235080,deer 235081,cat 235082,dog 235083,truck 235084,airplane 235085,cat 235086,dog 235087,airplane 235088,deer 235089,horse 235090,dog 235091,horse 235092,frog 235093,deer 235094,ship 235095,automobile 235096,automobile 235097,truck 235098,bird 235099,cat 235100,ship 235101,dog 235102,bird 235103,frog 235104,deer 235105,dog 235106,truck 235107,cat 235108,airplane 235109,cat 235110,deer 235111,deer 235112,bird 235113,airplane 235114,automobile 235115,horse 235116,deer 235117,deer 235118,cat 235119,truck 235120,ship 235121,frog 235122,frog 235123,truck 235124,cat 235125,cat 235126,deer 235127,cat 235128,automobile 235129,ship 235130,deer 235131,airplane 235132,automobile 235133,horse 235134,deer 235135,truck 235136,frog 235137,airplane 235138,deer 235139,airplane 235140,bird 235141,frog 235142,deer 235143,dog 235144,frog 235145,horse 235146,automobile 235147,automobile 235148,airplane 235149,deer 235150,cat 235151,cat 235152,ship 235153,deer 235154,airplane 235155,truck 235156,frog 235157,dog 235158,deer 235159,airplane 235160,airplane 235161,dog 235162,airplane 235163,cat 235164,cat 235165,airplane 235166,truck 235167,deer 235168,truck 235169,airplane 235170,frog 235171,truck 235172,airplane 235173,deer 235174,truck 235175,truck 235176,airplane 235177,bird 235178,truck 235179,cat 235180,bird 235181,frog 235182,ship 235183,cat 235184,airplane 235185,truck 235186,cat 235187,ship 235188,bird 235189,airplane 235190,cat 235191,automobile 235192,horse 235193,airplane 235194,ship 235195,horse 235196,truck 235197,horse 235198,deer 235199,frog 235200,cat 235201,cat 235202,deer 235203,bird 235204,airplane 235205,bird 235206,truck 235207,ship 235208,automobile 235209,deer 235210,horse 235211,bird 235212,dog 235213,ship 235214,truck 235215,dog 235216,airplane 235217,airplane 235218,frog 235219,truck 235220,bird 235221,truck 235222,frog 235223,deer 235224,airplane 235225,frog 235226,frog 235227,truck 235228,cat 235229,truck 235230,deer 235231,automobile 235232,horse 235233,cat 235234,airplane 235235,airplane 235236,automobile 235237,frog 235238,horse 235239,bird 235240,airplane 235241,bird 235242,airplane 235243,horse 235244,frog 235245,bird 235246,horse 235247,deer 235248,bird 235249,airplane 235250,bird 235251,dog 235252,ship 235253,automobile 235254,ship 235255,truck 235256,automobile 235257,cat 235258,ship 235259,airplane 235260,frog 235261,cat 235262,dog 235263,deer 235264,truck 235265,ship 235266,truck 235267,cat 235268,deer 235269,deer 235270,bird 235271,dog 235272,airplane 235273,dog 235274,deer 235275,bird 235276,deer 235277,ship 235278,horse 235279,bird 235280,dog 235281,frog 235282,truck 235283,ship 235284,cat 235285,deer 235286,ship 235287,deer 235288,dog 235289,truck 235290,frog 235291,cat 235292,truck 235293,frog 235294,dog 235295,dog 235296,deer 235297,ship 235298,airplane 235299,deer 235300,horse 235301,deer 235302,frog 235303,automobile 235304,horse 235305,automobile 235306,bird 235307,horse 235308,ship 235309,deer 235310,automobile 235311,deer 235312,deer 235313,frog 235314,horse 235315,deer 235316,airplane 235317,deer 235318,ship 235319,ship 235320,frog 235321,horse 235322,automobile 235323,bird 235324,automobile 235325,horse 235326,airplane 235327,dog 235328,frog 235329,ship 235330,cat 235331,bird 235332,frog 235333,bird 235334,ship 235335,frog 235336,truck 235337,ship 235338,deer 235339,frog 235340,cat 235341,ship 235342,frog 235343,bird 235344,airplane 235345,deer 235346,cat 235347,bird 235348,dog 235349,truck 235350,truck 235351,automobile 235352,truck 235353,bird 235354,deer 235355,horse 235356,airplane 235357,deer 235358,dog 235359,horse 235360,dog 235361,horse 235362,cat 235363,bird 235364,dog 235365,deer 235366,dog 235367,truck 235368,truck 235369,airplane 235370,frog 235371,truck 235372,dog 235373,truck 235374,horse 235375,ship 235376,deer 235377,deer 235378,cat 235379,airplane 235380,bird 235381,cat 235382,truck 235383,horse 235384,automobile 235385,bird 235386,bird 235387,ship 235388,deer 235389,dog 235390,frog 235391,deer 235392,deer 235393,horse 235394,bird 235395,cat 235396,airplane 235397,dog 235398,bird 235399,frog 235400,horse 235401,deer 235402,deer 235403,cat 235404,cat 235405,dog 235406,airplane 235407,cat 235408,deer 235409,horse 235410,deer 235411,airplane 235412,dog 235413,horse 235414,automobile 235415,frog 235416,frog 235417,horse 235418,frog 235419,frog 235420,frog 235421,horse 235422,dog 235423,truck 235424,dog 235425,dog 235426,automobile 235427,cat 235428,automobile 235429,ship 235430,automobile 235431,deer 235432,cat 235433,ship 235434,horse 235435,cat 235436,truck 235437,dog 235438,frog 235439,truck 235440,automobile 235441,ship 235442,automobile 235443,deer 235444,horse 235445,bird 235446,dog 235447,bird 235448,dog 235449,cat 235450,ship 235451,cat 235452,cat 235453,deer 235454,deer 235455,truck 235456,deer 235457,airplane 235458,horse 235459,ship 235460,truck 235461,deer 235462,truck 235463,cat 235464,truck 235465,deer 235466,bird 235467,deer 235468,frog 235469,automobile 235470,automobile 235471,cat 235472,bird 235473,cat 235474,automobile 235475,automobile 235476,bird 235477,airplane 235478,truck 235479,truck 235480,truck 235481,truck 235482,deer 235483,bird 235484,bird 235485,cat 235486,bird 235487,deer 235488,deer 235489,horse 235490,truck 235491,cat 235492,airplane 235493,horse 235494,deer 235495,automobile 235496,truck 235497,deer 235498,dog 235499,airplane 235500,airplane 235501,frog 235502,dog 235503,deer 235504,cat 235505,frog 235506,automobile 235507,frog 235508,cat 235509,dog 235510,airplane 235511,airplane 235512,bird 235513,frog 235514,dog 235515,deer 235516,dog 235517,deer 235518,deer 235519,ship 235520,ship 235521,ship 235522,automobile 235523,ship 235524,cat 235525,truck 235526,horse 235527,frog 235528,automobile 235529,truck 235530,frog 235531,truck 235532,cat 235533,airplane 235534,horse 235535,deer 235536,bird 235537,deer 235538,bird 235539,cat 235540,cat 235541,airplane 235542,airplane 235543,cat 235544,airplane 235545,dog 235546,cat 235547,frog 235548,horse 235549,airplane 235550,cat 235551,automobile 235552,bird 235553,dog 235554,deer 235555,bird 235556,deer 235557,cat 235558,airplane 235559,dog 235560,deer 235561,truck 235562,deer 235563,horse 235564,horse 235565,truck 235566,dog 235567,frog 235568,cat 235569,deer 235570,dog 235571,cat 235572,frog 235573,dog 235574,automobile 235575,dog 235576,dog 235577,horse 235578,bird 235579,frog 235580,ship 235581,frog 235582,deer 235583,automobile 235584,horse 235585,dog 235586,airplane 235587,horse 235588,dog 235589,truck 235590,horse 235591,ship 235592,deer 235593,ship 235594,bird 235595,ship 235596,cat 235597,deer 235598,ship 235599,truck 235600,airplane 235601,bird 235602,ship 235603,deer 235604,cat 235605,dog 235606,cat 235607,dog 235608,truck 235609,horse 235610,deer 235611,frog 235612,cat 235613,bird 235614,deer 235615,deer 235616,deer 235617,cat 235618,frog 235619,frog 235620,airplane 235621,frog 235622,dog 235623,bird 235624,frog 235625,frog 235626,airplane 235627,frog 235628,cat 235629,cat 235630,frog 235631,horse 235632,frog 235633,frog 235634,ship 235635,airplane 235636,cat 235637,frog 235638,cat 235639,ship 235640,truck 235641,truck 235642,deer 235643,airplane 235644,horse 235645,airplane 235646,cat 235647,dog 235648,horse 235649,horse 235650,truck 235651,deer 235652,ship 235653,ship 235654,cat 235655,frog 235656,automobile 235657,truck 235658,bird 235659,horse 235660,airplane 235661,frog 235662,bird 235663,deer 235664,deer 235665,airplane 235666,horse 235667,bird 235668,frog 235669,frog 235670,truck 235671,truck 235672,automobile 235673,frog 235674,deer 235675,bird 235676,ship 235677,airplane 235678,automobile 235679,ship 235680,truck 235681,horse 235682,ship 235683,airplane 235684,cat 235685,cat 235686,bird 235687,horse 235688,ship 235689,airplane 235690,horse 235691,automobile 235692,frog 235693,deer 235694,dog 235695,deer 235696,frog 235697,ship 235698,dog 235699,airplane 235700,dog 235701,horse 235702,dog 235703,automobile 235704,bird 235705,airplane 235706,automobile 235707,dog 235708,deer 235709,frog 235710,deer 235711,dog 235712,deer 235713,truck 235714,horse 235715,horse 235716,horse 235717,truck 235718,horse 235719,deer 235720,automobile 235721,dog 235722,horse 235723,airplane 235724,ship 235725,automobile 235726,cat 235727,deer 235728,airplane 235729,dog 235730,ship 235731,airplane 235732,dog 235733,cat 235734,dog 235735,horse 235736,automobile 235737,truck 235738,automobile 235739,cat 235740,deer 235741,truck 235742,automobile 235743,cat 235744,cat 235745,cat 235746,dog 235747,cat 235748,cat 235749,truck 235750,truck 235751,frog 235752,truck 235753,dog 235754,horse 235755,deer 235756,cat 235757,frog 235758,bird 235759,airplane 235760,deer 235761,ship 235762,dog 235763,airplane 235764,horse 235765,automobile 235766,bird 235767,deer 235768,dog 235769,truck 235770,frog 235771,frog 235772,dog 235773,truck 235774,bird 235775,cat 235776,bird 235777,frog 235778,frog 235779,ship 235780,airplane 235781,airplane 235782,horse 235783,truck 235784,horse 235785,horse 235786,frog 235787,cat 235788,horse 235789,automobile 235790,bird 235791,frog 235792,ship 235793,cat 235794,airplane 235795,frog 235796,truck 235797,truck 235798,ship 235799,bird 235800,cat 235801,automobile 235802,ship 235803,horse 235804,dog 235805,horse 235806,airplane 235807,cat 235808,ship 235809,ship 235810,deer 235811,deer 235812,bird 235813,truck 235814,ship 235815,truck 235816,bird 235817,deer 235818,deer 235819,bird 235820,frog 235821,frog 235822,dog 235823,automobile 235824,cat 235825,truck 235826,airplane 235827,bird 235828,bird 235829,dog 235830,truck 235831,cat 235832,dog 235833,cat 235834,bird 235835,truck 235836,truck 235837,horse 235838,truck 235839,cat 235840,horse 235841,dog 235842,automobile 235843,automobile 235844,deer 235845,bird 235846,deer 235847,automobile 235848,bird 235849,cat 235850,ship 235851,automobile 235852,horse 235853,bird 235854,frog 235855,automobile 235856,bird 235857,cat 235858,bird 235859,cat 235860,ship 235861,automobile 235862,deer 235863,ship 235864,frog 235865,cat 235866,bird 235867,bird 235868,truck 235869,dog 235870,horse 235871,deer 235872,ship 235873,dog 235874,dog 235875,truck 235876,cat 235877,deer 235878,cat 235879,cat 235880,automobile 235881,horse 235882,truck 235883,truck 235884,deer 235885,bird 235886,automobile 235887,dog 235888,bird 235889,frog 235890,ship 235891,truck 235892,airplane 235893,dog 235894,truck 235895,airplane 235896,horse 235897,automobile 235898,dog 235899,automobile 235900,airplane 235901,cat 235902,horse 235903,bird 235904,cat 235905,airplane 235906,frog 235907,bird 235908,horse 235909,truck 235910,dog 235911,horse 235912,airplane 235913,deer 235914,deer 235915,dog 235916,cat 235917,horse 235918,frog 235919,automobile 235920,bird 235921,deer 235922,airplane 235923,cat 235924,cat 235925,dog 235926,truck 235927,frog 235928,horse 235929,deer 235930,dog 235931,automobile 235932,truck 235933,airplane 235934,horse 235935,automobile 235936,horse 235937,airplane 235938,dog 235939,truck 235940,deer 235941,deer 235942,dog 235943,horse 235944,ship 235945,horse 235946,automobile 235947,deer 235948,horse 235949,dog 235950,deer 235951,dog 235952,automobile 235953,deer 235954,truck 235955,deer 235956,truck 235957,dog 235958,cat 235959,cat 235960,cat 235961,deer 235962,deer 235963,cat 235964,cat 235965,cat 235966,frog 235967,frog 235968,horse 235969,frog 235970,horse 235971,ship 235972,cat 235973,cat 235974,bird 235975,horse 235976,frog 235977,automobile 235978,frog 235979,cat 235980,ship 235981,horse 235982,truck 235983,truck 235984,cat 235985,deer 235986,frog 235987,airplane 235988,dog 235989,airplane 235990,cat 235991,airplane 235992,horse 235993,bird 235994,truck 235995,truck 235996,cat 235997,ship 235998,bird 235999,bird 236000,frog 236001,automobile 236002,dog 236003,deer 236004,deer 236005,deer 236006,cat 236007,truck 236008,cat 236009,truck 236010,horse 236011,bird 236012,airplane 236013,frog 236014,automobile 236015,truck 236016,airplane 236017,automobile 236018,horse 236019,bird 236020,dog 236021,bird 236022,deer 236023,dog 236024,horse 236025,horse 236026,deer 236027,dog 236028,deer 236029,deer 236030,dog 236031,dog 236032,deer 236033,deer 236034,dog 236035,ship 236036,deer 236037,dog 236038,horse 236039,deer 236040,dog 236041,deer 236042,automobile 236043,airplane 236044,airplane 236045,truck 236046,airplane 236047,automobile 236048,airplane 236049,ship 236050,cat 236051,deer 236052,airplane 236053,airplane 236054,deer 236055,horse 236056,cat 236057,automobile 236058,cat 236059,horse 236060,dog 236061,bird 236062,deer 236063,automobile 236064,dog 236065,horse 236066,airplane 236067,ship 236068,airplane 236069,bird 236070,airplane 236071,deer 236072,dog 236073,horse 236074,ship 236075,cat 236076,horse 236077,airplane 236078,bird 236079,horse 236080,airplane 236081,cat 236082,ship 236083,truck 236084,deer 236085,frog 236086,automobile 236087,automobile 236088,horse 236089,horse 236090,frog 236091,frog 236092,ship 236093,truck 236094,cat 236095,horse 236096,truck 236097,deer 236098,cat 236099,frog 236100,cat 236101,horse 236102,horse 236103,frog 236104,horse 236105,ship 236106,cat 236107,bird 236108,horse 236109,frog 236110,deer 236111,dog 236112,horse 236113,dog 236114,bird 236115,airplane 236116,bird 236117,truck 236118,truck 236119,airplane 236120,dog 236121,cat 236122,horse 236123,dog 236124,bird 236125,deer 236126,dog 236127,truck 236128,frog 236129,ship 236130,cat 236131,dog 236132,horse 236133,truck 236134,bird 236135,truck 236136,cat 236137,frog 236138,truck 236139,truck 236140,bird 236141,horse 236142,deer 236143,truck 236144,truck 236145,cat 236146,automobile 236147,cat 236148,ship 236149,automobile 236150,bird 236151,frog 236152,frog 236153,automobile 236154,cat 236155,ship 236156,dog 236157,horse 236158,bird 236159,truck 236160,horse 236161,airplane 236162,deer 236163,airplane 236164,deer 236165,horse 236166,deer 236167,horse 236168,ship 236169,deer 236170,horse 236171,truck 236172,deer 236173,cat 236174,airplane 236175,frog 236176,cat 236177,deer 236178,bird 236179,ship 236180,truck 236181,truck 236182,airplane 236183,dog 236184,horse 236185,horse 236186,horse 236187,horse 236188,frog 236189,airplane 236190,airplane 236191,deer 236192,deer 236193,ship 236194,truck 236195,dog 236196,ship 236197,bird 236198,automobile 236199,truck 236200,airplane 236201,ship 236202,deer 236203,truck 236204,dog 236205,truck 236206,horse 236207,deer 236208,ship 236209,horse 236210,truck 236211,deer 236212,automobile 236213,frog 236214,deer 236215,airplane 236216,horse 236217,bird 236218,cat 236219,bird 236220,horse 236221,frog 236222,horse 236223,ship 236224,automobile 236225,airplane 236226,truck 236227,automobile 236228,airplane 236229,bird 236230,frog 236231,horse 236232,bird 236233,ship 236234,bird 236235,truck 236236,cat 236237,cat 236238,dog 236239,dog 236240,cat 236241,horse 236242,ship 236243,bird 236244,frog 236245,airplane 236246,dog 236247,deer 236248,cat 236249,horse 236250,dog 236251,truck 236252,truck 236253,frog 236254,horse 236255,automobile 236256,airplane 236257,horse 236258,bird 236259,cat 236260,frog 236261,frog 236262,dog 236263,deer 236264,horse 236265,frog 236266,frog 236267,horse 236268,bird 236269,dog 236270,deer 236271,truck 236272,frog 236273,horse 236274,deer 236275,truck 236276,deer 236277,dog 236278,frog 236279,ship 236280,bird 236281,truck 236282,deer 236283,truck 236284,bird 236285,automobile 236286,ship 236287,ship 236288,airplane 236289,cat 236290,truck 236291,truck 236292,airplane 236293,dog 236294,truck 236295,dog 236296,bird 236297,frog 236298,horse 236299,ship 236300,automobile 236301,truck 236302,truck 236303,truck 236304,horse 236305,airplane 236306,dog 236307,bird 236308,dog 236309,dog 236310,ship 236311,bird 236312,horse 236313,truck 236314,truck 236315,bird 236316,frog 236317,airplane 236318,ship 236319,horse 236320,deer 236321,frog 236322,cat 236323,truck 236324,dog 236325,cat 236326,truck 236327,frog 236328,deer 236329,horse 236330,truck 236331,frog 236332,deer 236333,dog 236334,deer 236335,bird 236336,dog 236337,automobile 236338,dog 236339,cat 236340,truck 236341,automobile 236342,horse 236343,horse 236344,cat 236345,airplane 236346,dog 236347,frog 236348,deer 236349,dog 236350,horse 236351,truck 236352,dog 236353,cat 236354,bird 236355,horse 236356,cat 236357,automobile 236358,deer 236359,airplane 236360,dog 236361,dog 236362,cat 236363,truck 236364,cat 236365,horse 236366,deer 236367,cat 236368,automobile 236369,truck 236370,bird 236371,frog 236372,cat 236373,truck 236374,cat 236375,ship 236376,bird 236377,cat 236378,frog 236379,frog 236380,cat 236381,dog 236382,deer 236383,horse 236384,dog 236385,cat 236386,ship 236387,frog 236388,bird 236389,airplane 236390,bird 236391,truck 236392,airplane 236393,frog 236394,truck 236395,deer 236396,deer 236397,frog 236398,automobile 236399,cat 236400,airplane 236401,cat 236402,horse 236403,bird 236404,deer 236405,deer 236406,cat 236407,dog 236408,dog 236409,cat 236410,cat 236411,deer 236412,deer 236413,frog 236414,cat 236415,ship 236416,automobile 236417,bird 236418,deer 236419,frog 236420,bird 236421,dog 236422,airplane 236423,horse 236424,frog 236425,bird 236426,horse 236427,dog 236428,deer 236429,ship 236430,cat 236431,airplane 236432,truck 236433,frog 236434,dog 236435,bird 236436,deer 236437,automobile 236438,dog 236439,truck 236440,frog 236441,cat 236442,truck 236443,truck 236444,horse 236445,cat 236446,automobile 236447,airplane 236448,frog 236449,bird 236450,airplane 236451,dog 236452,cat 236453,dog 236454,airplane 236455,automobile 236456,cat 236457,bird 236458,cat 236459,horse 236460,automobile 236461,truck 236462,deer 236463,truck 236464,deer 236465,cat 236466,truck 236467,bird 236468,truck 236469,airplane 236470,dog 236471,cat 236472,frog 236473,deer 236474,deer 236475,dog 236476,horse 236477,frog 236478,airplane 236479,cat 236480,cat 236481,truck 236482,truck 236483,deer 236484,automobile 236485,ship 236486,deer 236487,horse 236488,horse 236489,deer 236490,automobile 236491,deer 236492,deer 236493,cat 236494,frog 236495,automobile 236496,bird 236497,dog 236498,airplane 236499,cat 236500,automobile 236501,cat 236502,deer 236503,bird 236504,dog 236505,deer 236506,ship 236507,ship 236508,dog 236509,bird 236510,truck 236511,cat 236512,ship 236513,automobile 236514,deer 236515,horse 236516,dog 236517,automobile 236518,ship 236519,horse 236520,frog 236521,truck 236522,ship 236523,dog 236524,deer 236525,horse 236526,dog 236527,dog 236528,ship 236529,horse 236530,airplane 236531,bird 236532,horse 236533,truck 236534,bird 236535,cat 236536,bird 236537,airplane 236538,deer 236539,automobile 236540,frog 236541,truck 236542,horse 236543,cat 236544,dog 236545,horse 236546,airplane 236547,cat 236548,airplane 236549,frog 236550,frog 236551,frog 236552,horse 236553,frog 236554,cat 236555,frog 236556,airplane 236557,bird 236558,ship 236559,airplane 236560,ship 236561,ship 236562,frog 236563,cat 236564,horse 236565,deer 236566,frog 236567,bird 236568,cat 236569,automobile 236570,horse 236571,ship 236572,frog 236573,cat 236574,dog 236575,dog 236576,deer 236577,deer 236578,frog 236579,deer 236580,truck 236581,frog 236582,horse 236583,frog 236584,cat 236585,ship 236586,ship 236587,deer 236588,deer 236589,airplane 236590,cat 236591,airplane 236592,horse 236593,cat 236594,cat 236595,truck 236596,cat 236597,cat 236598,bird 236599,cat 236600,dog 236601,airplane 236602,frog 236603,frog 236604,deer 236605,bird 236606,dog 236607,bird 236608,truck 236609,frog 236610,automobile 236611,deer 236612,truck 236613,horse 236614,cat 236615,horse 236616,automobile 236617,horse 236618,horse 236619,airplane 236620,dog 236621,cat 236622,bird 236623,horse 236624,dog 236625,truck 236626,deer 236627,deer 236628,deer 236629,frog 236630,ship 236631,cat 236632,airplane 236633,cat 236634,ship 236635,dog 236636,deer 236637,deer 236638,bird 236639,frog 236640,airplane 236641,deer 236642,frog 236643,frog 236644,truck 236645,dog 236646,ship 236647,bird 236648,horse 236649,deer 236650,dog 236651,horse 236652,truck 236653,dog 236654,airplane 236655,frog 236656,bird 236657,horse 236658,bird 236659,dog 236660,cat 236661,bird 236662,ship 236663,ship 236664,ship 236665,airplane 236666,frog 236667,airplane 236668,cat 236669,deer 236670,airplane 236671,airplane 236672,ship 236673,dog 236674,cat 236675,automobile 236676,ship 236677,horse 236678,frog 236679,horse 236680,frog 236681,deer 236682,truck 236683,airplane 236684,cat 236685,cat 236686,bird 236687,truck 236688,deer 236689,ship 236690,dog 236691,airplane 236692,dog 236693,truck 236694,frog 236695,automobile 236696,frog 236697,truck 236698,frog 236699,dog 236700,cat 236701,airplane 236702,automobile 236703,cat 236704,ship 236705,ship 236706,truck 236707,horse 236708,dog 236709,deer 236710,automobile 236711,truck 236712,cat 236713,bird 236714,horse 236715,automobile 236716,frog 236717,frog 236718,horse 236719,deer 236720,airplane 236721,horse 236722,truck 236723,ship 236724,deer 236725,frog 236726,horse 236727,automobile 236728,ship 236729,deer 236730,horse 236731,frog 236732,cat 236733,truck 236734,cat 236735,dog 236736,frog 236737,cat 236738,ship 236739,dog 236740,deer 236741,truck 236742,cat 236743,deer 236744,truck 236745,ship 236746,horse 236747,horse 236748,truck 236749,deer 236750,truck 236751,truck 236752,deer 236753,cat 236754,horse 236755,ship 236756,cat 236757,automobile 236758,ship 236759,horse 236760,automobile 236761,truck 236762,truck 236763,frog 236764,cat 236765,cat 236766,deer 236767,ship 236768,dog 236769,truck 236770,frog 236771,horse 236772,bird 236773,dog 236774,horse 236775,airplane 236776,automobile 236777,ship 236778,truck 236779,airplane 236780,bird 236781,cat 236782,airplane 236783,truck 236784,deer 236785,horse 236786,horse 236787,deer 236788,truck 236789,dog 236790,horse 236791,horse 236792,automobile 236793,bird 236794,dog 236795,deer 236796,deer 236797,airplane 236798,deer 236799,deer 236800,bird 236801,truck 236802,cat 236803,deer 236804,dog 236805,frog 236806,airplane 236807,truck 236808,deer 236809,truck 236810,frog 236811,bird 236812,horse 236813,horse 236814,ship 236815,deer 236816,deer 236817,bird 236818,cat 236819,bird 236820,automobile 236821,ship 236822,frog 236823,horse 236824,truck 236825,horse 236826,horse 236827,frog 236828,automobile 236829,horse 236830,horse 236831,deer 236832,truck 236833,automobile 236834,cat 236835,ship 236836,dog 236837,cat 236838,horse 236839,automobile 236840,truck 236841,cat 236842,truck 236843,airplane 236844,deer 236845,automobile 236846,airplane 236847,deer 236848,ship 236849,bird 236850,bird 236851,cat 236852,ship 236853,horse 236854,truck 236855,deer 236856,bird 236857,automobile 236858,deer 236859,automobile 236860,cat 236861,deer 236862,automobile 236863,deer 236864,ship 236865,frog 236866,horse 236867,horse 236868,horse 236869,ship 236870,horse 236871,airplane 236872,dog 236873,frog 236874,automobile 236875,bird 236876,cat 236877,deer 236878,horse 236879,automobile 236880,bird 236881,bird 236882,automobile 236883,horse 236884,horse 236885,airplane 236886,frog 236887,frog 236888,dog 236889,airplane 236890,automobile 236891,airplane 236892,airplane 236893,bird 236894,dog 236895,automobile 236896,cat 236897,airplane 236898,truck 236899,horse 236900,truck 236901,cat 236902,automobile 236903,frog 236904,frog 236905,ship 236906,ship 236907,cat 236908,deer 236909,truck 236910,cat 236911,truck 236912,ship 236913,truck 236914,dog 236915,deer 236916,truck 236917,dog 236918,dog 236919,dog 236920,ship 236921,bird 236922,ship 236923,automobile 236924,cat 236925,dog 236926,cat 236927,bird 236928,horse 236929,dog 236930,horse 236931,horse 236932,airplane 236933,frog 236934,frog 236935,automobile 236936,cat 236937,cat 236938,deer 236939,bird 236940,cat 236941,dog 236942,deer 236943,cat 236944,ship 236945,automobile 236946,cat 236947,truck 236948,truck 236949,deer 236950,dog 236951,truck 236952,cat 236953,frog 236954,horse 236955,frog 236956,dog 236957,truck 236958,bird 236959,cat 236960,truck 236961,horse 236962,ship 236963,bird 236964,horse 236965,horse 236966,cat 236967,cat 236968,automobile 236969,frog 236970,automobile 236971,deer 236972,cat 236973,cat 236974,frog 236975,frog 236976,dog 236977,dog 236978,automobile 236979,bird 236980,deer 236981,dog 236982,horse 236983,deer 236984,horse 236985,deer 236986,truck 236987,truck 236988,bird 236989,cat 236990,dog 236991,truck 236992,deer 236993,cat 236994,horse 236995,horse 236996,truck 236997,truck 236998,frog 236999,deer 237000,dog 237001,dog 237002,deer 237003,deer 237004,bird 237005,deer 237006,airplane 237007,frog 237008,automobile 237009,cat 237010,airplane 237011,ship 237012,automobile 237013,deer 237014,truck 237015,cat 237016,deer 237017,ship 237018,ship 237019,automobile 237020,airplane 237021,ship 237022,frog 237023,truck 237024,truck 237025,horse 237026,cat 237027,dog 237028,cat 237029,bird 237030,dog 237031,frog 237032,frog 237033,truck 237034,frog 237035,horse 237036,horse 237037,truck 237038,frog 237039,airplane 237040,airplane 237041,dog 237042,automobile 237043,bird 237044,ship 237045,horse 237046,frog 237047,cat 237048,cat 237049,automobile 237050,frog 237051,airplane 237052,truck 237053,automobile 237054,dog 237055,cat 237056,bird 237057,dog 237058,bird 237059,ship 237060,cat 237061,frog 237062,horse 237063,horse 237064,bird 237065,dog 237066,cat 237067,automobile 237068,deer 237069,frog 237070,deer 237071,automobile 237072,horse 237073,bird 237074,automobile 237075,cat 237076,dog 237077,cat 237078,automobile 237079,automobile 237080,deer 237081,airplane 237082,automobile 237083,horse 237084,bird 237085,airplane 237086,airplane 237087,bird 237088,automobile 237089,horse 237090,horse 237091,horse 237092,dog 237093,truck 237094,automobile 237095,bird 237096,dog 237097,cat 237098,cat 237099,deer 237100,dog 237101,cat 237102,cat 237103,ship 237104,cat 237105,automobile 237106,horse 237107,dog 237108,bird 237109,dog 237110,deer 237111,automobile 237112,horse 237113,deer 237114,dog 237115,frog 237116,frog 237117,ship 237118,automobile 237119,horse 237120,dog 237121,dog 237122,truck 237123,bird 237124,truck 237125,airplane 237126,dog 237127,frog 237128,deer 237129,automobile 237130,airplane 237131,frog 237132,dog 237133,horse 237134,deer 237135,truck 237136,ship 237137,bird 237138,airplane 237139,bird 237140,cat 237141,truck 237142,dog 237143,deer 237144,dog 237145,bird 237146,deer 237147,bird 237148,automobile 237149,airplane 237150,bird 237151,automobile 237152,ship 237153,frog 237154,horse 237155,dog 237156,ship 237157,deer 237158,ship 237159,deer 237160,automobile 237161,truck 237162,ship 237163,deer 237164,airplane 237165,cat 237166,ship 237167,truck 237168,automobile 237169,truck 237170,cat 237171,deer 237172,truck 237173,cat 237174,frog 237175,horse 237176,deer 237177,ship 237178,ship 237179,frog 237180,truck 237181,frog 237182,dog 237183,truck 237184,cat 237185,cat 237186,horse 237187,deer 237188,bird 237189,frog 237190,bird 237191,frog 237192,cat 237193,horse 237194,dog 237195,ship 237196,bird 237197,airplane 237198,automobile 237199,airplane 237200,frog 237201,airplane 237202,cat 237203,truck 237204,deer 237205,cat 237206,bird 237207,ship 237208,ship 237209,cat 237210,bird 237211,deer 237212,dog 237213,deer 237214,airplane 237215,frog 237216,bird 237217,truck 237218,truck 237219,automobile 237220,cat 237221,dog 237222,cat 237223,truck 237224,horse 237225,cat 237226,deer 237227,bird 237228,frog 237229,bird 237230,frog 237231,dog 237232,truck 237233,automobile 237234,airplane 237235,bird 237236,bird 237237,dog 237238,dog 237239,truck 237240,ship 237241,frog 237242,truck 237243,ship 237244,frog 237245,cat 237246,deer 237247,automobile 237248,automobile 237249,deer 237250,automobile 237251,truck 237252,ship 237253,deer 237254,deer 237255,automobile 237256,automobile 237257,truck 237258,frog 237259,truck 237260,truck 237261,frog 237262,truck 237263,bird 237264,airplane 237265,airplane 237266,automobile 237267,deer 237268,airplane 237269,bird 237270,bird 237271,deer 237272,cat 237273,truck 237274,frog 237275,horse 237276,bird 237277,deer 237278,bird 237279,ship 237280,airplane 237281,frog 237282,ship 237283,frog 237284,automobile 237285,automobile 237286,frog 237287,cat 237288,airplane 237289,cat 237290,truck 237291,frog 237292,airplane 237293,cat 237294,deer 237295,horse 237296,dog 237297,truck 237298,deer 237299,truck 237300,cat 237301,frog 237302,frog 237303,bird 237304,ship 237305,dog 237306,dog 237307,truck 237308,dog 237309,airplane 237310,deer 237311,automobile 237312,automobile 237313,dog 237314,horse 237315,airplane 237316,dog 237317,horse 237318,frog 237319,ship 237320,dog 237321,ship 237322,dog 237323,deer 237324,frog 237325,frog 237326,bird 237327,horse 237328,airplane 237329,cat 237330,automobile 237331,automobile 237332,automobile 237333,horse 237334,horse 237335,dog 237336,ship 237337,automobile 237338,truck 237339,bird 237340,ship 237341,frog 237342,ship 237343,cat 237344,dog 237345,automobile 237346,dog 237347,dog 237348,horse 237349,deer 237350,truck 237351,horse 237352,automobile 237353,frog 237354,deer 237355,horse 237356,airplane 237357,deer 237358,bird 237359,dog 237360,ship 237361,deer 237362,deer 237363,ship 237364,bird 237365,horse 237366,truck 237367,dog 237368,horse 237369,ship 237370,bird 237371,ship 237372,frog 237373,horse 237374,bird 237375,deer 237376,frog 237377,automobile 237378,deer 237379,deer 237380,deer 237381,deer 237382,frog 237383,cat 237384,horse 237385,deer 237386,deer 237387,deer 237388,bird 237389,ship 237390,frog 237391,dog 237392,frog 237393,dog 237394,ship 237395,dog 237396,ship 237397,dog 237398,horse 237399,cat 237400,cat 237401,deer 237402,ship 237403,bird 237404,cat 237405,horse 237406,dog 237407,deer 237408,deer 237409,cat 237410,cat 237411,ship 237412,frog 237413,deer 237414,airplane 237415,airplane 237416,dog 237417,airplane 237418,airplane 237419,dog 237420,horse 237421,cat 237422,ship 237423,dog 237424,automobile 237425,airplane 237426,cat 237427,cat 237428,frog 237429,airplane 237430,frog 237431,truck 237432,airplane 237433,frog 237434,ship 237435,ship 237436,deer 237437,truck 237438,horse 237439,horse 237440,horse 237441,horse 237442,dog 237443,ship 237444,frog 237445,bird 237446,airplane 237447,ship 237448,deer 237449,airplane 237450,truck 237451,bird 237452,cat 237453,ship 237454,truck 237455,airplane 237456,cat 237457,deer 237458,frog 237459,airplane 237460,frog 237461,truck 237462,bird 237463,bird 237464,frog 237465,automobile 237466,cat 237467,frog 237468,automobile 237469,frog 237470,truck 237471,airplane 237472,horse 237473,bird 237474,frog 237475,truck 237476,deer 237477,dog 237478,deer 237479,airplane 237480,dog 237481,frog 237482,bird 237483,dog 237484,truck 237485,airplane 237486,dog 237487,bird 237488,ship 237489,ship 237490,airplane 237491,automobile 237492,ship 237493,deer 237494,bird 237495,frog 237496,ship 237497,airplane 237498,automobile 237499,airplane 237500,bird 237501,deer 237502,deer 237503,airplane 237504,horse 237505,deer 237506,deer 237507,deer 237508,truck 237509,bird 237510,cat 237511,ship 237512,dog 237513,truck 237514,frog 237515,dog 237516,horse 237517,frog 237518,truck 237519,dog 237520,horse 237521,cat 237522,bird 237523,truck 237524,horse 237525,cat 237526,horse 237527,bird 237528,automobile 237529,automobile 237530,automobile 237531,ship 237532,frog 237533,dog 237534,airplane 237535,deer 237536,cat 237537,horse 237538,truck 237539,ship 237540,deer 237541,deer 237542,airplane 237543,horse 237544,cat 237545,deer 237546,cat 237547,frog 237548,bird 237549,ship 237550,horse 237551,airplane 237552,deer 237553,automobile 237554,truck 237555,automobile 237556,automobile 237557,ship 237558,dog 237559,cat 237560,airplane 237561,deer 237562,horse 237563,horse 237564,truck 237565,deer 237566,automobile 237567,airplane 237568,frog 237569,airplane 237570,airplane 237571,frog 237572,frog 237573,airplane 237574,frog 237575,horse 237576,horse 237577,horse 237578,automobile 237579,automobile 237580,deer 237581,cat 237582,ship 237583,deer 237584,dog 237585,frog 237586,frog 237587,horse 237588,frog 237589,dog 237590,bird 237591,deer 237592,frog 237593,truck 237594,dog 237595,dog 237596,truck 237597,ship 237598,bird 237599,truck 237600,automobile 237601,deer 237602,horse 237603,automobile 237604,frog 237605,cat 237606,truck 237607,deer 237608,frog 237609,cat 237610,dog 237611,airplane 237612,frog 237613,dog 237614,automobile 237615,dog 237616,truck 237617,deer 237618,deer 237619,airplane 237620,ship 237621,frog 237622,horse 237623,dog 237624,frog 237625,dog 237626,bird 237627,airplane 237628,horse 237629,horse 237630,dog 237631,deer 237632,cat 237633,horse 237634,airplane 237635,truck 237636,horse 237637,truck 237638,automobile 237639,deer 237640,frog 237641,dog 237642,truck 237643,truck 237644,dog 237645,airplane 237646,dog 237647,cat 237648,frog 237649,truck 237650,automobile 237651,deer 237652,frog 237653,automobile 237654,truck 237655,horse 237656,bird 237657,ship 237658,frog 237659,horse 237660,dog 237661,cat 237662,deer 237663,ship 237664,bird 237665,automobile 237666,ship 237667,cat 237668,frog 237669,dog 237670,frog 237671,truck 237672,cat 237673,truck 237674,horse 237675,cat 237676,airplane 237677,horse 237678,automobile 237679,horse 237680,deer 237681,cat 237682,deer 237683,frog 237684,deer 237685,ship 237686,dog 237687,dog 237688,cat 237689,ship 237690,bird 237691,frog 237692,bird 237693,horse 237694,automobile 237695,truck 237696,frog 237697,cat 237698,horse 237699,automobile 237700,horse 237701,frog 237702,automobile 237703,deer 237704,airplane 237705,cat 237706,deer 237707,horse 237708,bird 237709,deer 237710,truck 237711,bird 237712,frog 237713,bird 237714,truck 237715,horse 237716,bird 237717,deer 237718,cat 237719,cat 237720,truck 237721,airplane 237722,bird 237723,deer 237724,truck 237725,ship 237726,automobile 237727,deer 237728,airplane 237729,frog 237730,bird 237731,deer 237732,ship 237733,cat 237734,deer 237735,frog 237736,frog 237737,automobile 237738,truck 237739,automobile 237740,deer 237741,automobile 237742,horse 237743,deer 237744,horse 237745,horse 237746,cat 237747,frog 237748,truck 237749,airplane 237750,truck 237751,truck 237752,frog 237753,bird 237754,horse 237755,horse 237756,cat 237757,cat 237758,cat 237759,automobile 237760,ship 237761,bird 237762,frog 237763,horse 237764,bird 237765,airplane 237766,ship 237767,cat 237768,frog 237769,automobile 237770,airplane 237771,deer 237772,dog 237773,truck 237774,deer 237775,deer 237776,truck 237777,cat 237778,frog 237779,airplane 237780,deer 237781,deer 237782,dog 237783,truck 237784,bird 237785,ship 237786,airplane 237787,dog 237788,dog 237789,dog 237790,cat 237791,automobile 237792,cat 237793,cat 237794,ship 237795,automobile 237796,frog 237797,frog 237798,deer 237799,frog 237800,horse 237801,bird 237802,bird 237803,deer 237804,horse 237805,horse 237806,dog 237807,bird 237808,ship 237809,truck 237810,automobile 237811,truck 237812,automobile 237813,horse 237814,truck 237815,deer 237816,truck 237817,horse 237818,deer 237819,cat 237820,dog 237821,cat 237822,deer 237823,cat 237824,cat 237825,ship 237826,airplane 237827,horse 237828,deer 237829,truck 237830,horse 237831,automobile 237832,cat 237833,deer 237834,cat 237835,bird 237836,ship 237837,horse 237838,ship 237839,frog 237840,automobile 237841,cat 237842,truck 237843,truck 237844,bird 237845,deer 237846,cat 237847,dog 237848,airplane 237849,cat 237850,cat 237851,bird 237852,horse 237853,bird 237854,frog 237855,ship 237856,bird 237857,automobile 237858,truck 237859,horse 237860,horse 237861,bird 237862,bird 237863,deer 237864,dog 237865,truck 237866,airplane 237867,deer 237868,horse 237869,dog 237870,automobile 237871,frog 237872,deer 237873,deer 237874,deer 237875,dog 237876,automobile 237877,deer 237878,deer 237879,ship 237880,dog 237881,dog 237882,cat 237883,cat 237884,ship 237885,bird 237886,ship 237887,deer 237888,dog 237889,truck 237890,bird 237891,truck 237892,automobile 237893,dog 237894,automobile 237895,dog 237896,horse 237897,frog 237898,cat 237899,dog 237900,deer 237901,frog 237902,airplane 237903,automobile 237904,bird 237905,horse 237906,horse 237907,ship 237908,bird 237909,frog 237910,automobile 237911,cat 237912,cat 237913,automobile 237914,deer 237915,ship 237916,deer 237917,bird 237918,cat 237919,horse 237920,airplane 237921,dog 237922,dog 237923,airplane 237924,cat 237925,bird 237926,cat 237927,deer 237928,automobile 237929,airplane 237930,horse 237931,bird 237932,airplane 237933,automobile 237934,horse 237935,cat 237936,bird 237937,airplane 237938,cat 237939,deer 237940,bird 237941,airplane 237942,airplane 237943,ship 237944,bird 237945,frog 237946,ship 237947,automobile 237948,truck 237949,deer 237950,deer 237951,truck 237952,ship 237953,deer 237954,bird 237955,bird 237956,deer 237957,dog 237958,ship 237959,airplane 237960,deer 237961,automobile 237962,frog 237963,dog 237964,dog 237965,cat 237966,airplane 237967,frog 237968,truck 237969,frog 237970,deer 237971,cat 237972,dog 237973,cat 237974,ship 237975,cat 237976,bird 237977,deer 237978,airplane 237979,deer 237980,truck 237981,frog 237982,dog 237983,deer 237984,cat 237985,cat 237986,horse 237987,automobile 237988,automobile 237989,ship 237990,frog 237991,truck 237992,horse 237993,bird 237994,automobile 237995,frog 237996,frog 237997,automobile 237998,bird 237999,airplane 238000,horse 238001,frog 238002,truck 238003,dog 238004,dog 238005,cat 238006,cat 238007,ship 238008,deer 238009,cat 238010,ship 238011,truck 238012,ship 238013,airplane 238014,truck 238015,deer 238016,bird 238017,horse 238018,bird 238019,airplane 238020,ship 238021,automobile 238022,dog 238023,bird 238024,horse 238025,airplane 238026,bird 238027,bird 238028,bird 238029,deer 238030,automobile 238031,ship 238032,deer 238033,airplane 238034,cat 238035,ship 238036,ship 238037,horse 238038,frog 238039,deer 238040,dog 238041,bird 238042,truck 238043,deer 238044,automobile 238045,deer 238046,dog 238047,bird 238048,automobile 238049,horse 238050,frog 238051,truck 238052,horse 238053,airplane 238054,automobile 238055,deer 238056,automobile 238057,deer 238058,cat 238059,dog 238060,dog 238061,dog 238062,frog 238063,horse 238064,horse 238065,cat 238066,bird 238067,deer 238068,bird 238069,automobile 238070,dog 238071,horse 238072,airplane 238073,ship 238074,horse 238075,horse 238076,automobile 238077,cat 238078,deer 238079,frog 238080,bird 238081,cat 238082,truck 238083,deer 238084,cat 238085,airplane 238086,deer 238087,horse 238088,cat 238089,automobile 238090,automobile 238091,bird 238092,automobile 238093,horse 238094,cat 238095,truck 238096,automobile 238097,airplane 238098,airplane 238099,truck 238100,airplane 238101,frog 238102,ship 238103,deer 238104,airplane 238105,dog 238106,dog 238107,ship 238108,airplane 238109,ship 238110,horse 238111,airplane 238112,deer 238113,dog 238114,deer 238115,automobile 238116,horse 238117,deer 238118,deer 238119,cat 238120,horse 238121,deer 238122,automobile 238123,ship 238124,dog 238125,truck 238126,cat 238127,horse 238128,bird 238129,deer 238130,dog 238131,ship 238132,cat 238133,bird 238134,bird 238135,deer 238136,airplane 238137,cat 238138,deer 238139,automobile 238140,airplane 238141,bird 238142,cat 238143,dog 238144,ship 238145,airplane 238146,deer 238147,deer 238148,cat 238149,bird 238150,frog 238151,dog 238152,truck 238153,deer 238154,bird 238155,horse 238156,cat 238157,frog 238158,dog 238159,cat 238160,dog 238161,cat 238162,horse 238163,cat 238164,bird 238165,automobile 238166,deer 238167,deer 238168,truck 238169,ship 238170,ship 238171,airplane 238172,ship 238173,truck 238174,truck 238175,cat 238176,frog 238177,frog 238178,truck 238179,cat 238180,bird 238181,deer 238182,cat 238183,dog 238184,cat 238185,frog 238186,ship 238187,horse 238188,bird 238189,ship 238190,truck 238191,bird 238192,airplane 238193,truck 238194,ship 238195,truck 238196,airplane 238197,horse 238198,bird 238199,bird 238200,bird 238201,airplane 238202,horse 238203,dog 238204,deer 238205,horse 238206,dog 238207,cat 238208,truck 238209,cat 238210,horse 238211,ship 238212,deer 238213,truck 238214,bird 238215,deer 238216,dog 238217,deer 238218,deer 238219,truck 238220,horse 238221,frog 238222,frog 238223,automobile 238224,deer 238225,horse 238226,truck 238227,cat 238228,automobile 238229,frog 238230,truck 238231,deer 238232,deer 238233,frog 238234,horse 238235,deer 238236,truck 238237,dog 238238,bird 238239,truck 238240,frog 238241,ship 238242,truck 238243,bird 238244,airplane 238245,bird 238246,dog 238247,airplane 238248,dog 238249,truck 238250,automobile 238251,frog 238252,cat 238253,bird 238254,dog 238255,deer 238256,airplane 238257,airplane 238258,frog 238259,horse 238260,cat 238261,truck 238262,airplane 238263,automobile 238264,truck 238265,automobile 238266,horse 238267,ship 238268,deer 238269,automobile 238270,ship 238271,deer 238272,cat 238273,deer 238274,cat 238275,truck 238276,deer 238277,deer 238278,cat 238279,truck 238280,deer 238281,frog 238282,frog 238283,frog 238284,bird 238285,bird 238286,frog 238287,airplane 238288,airplane 238289,automobile 238290,airplane 238291,cat 238292,cat 238293,ship 238294,bird 238295,dog 238296,horse 238297,frog 238298,deer 238299,truck 238300,frog 238301,deer 238302,deer 238303,ship 238304,dog 238305,airplane 238306,truck 238307,truck 238308,bird 238309,horse 238310,deer 238311,frog 238312,deer 238313,cat 238314,frog 238315,cat 238316,cat 238317,ship 238318,truck 238319,dog 238320,dog 238321,bird 238322,horse 238323,bird 238324,horse 238325,dog 238326,frog 238327,automobile 238328,cat 238329,frog 238330,bird 238331,truck 238332,deer 238333,dog 238334,cat 238335,automobile 238336,frog 238337,deer 238338,deer 238339,frog 238340,horse 238341,frog 238342,frog 238343,truck 238344,deer 238345,ship 238346,frog 238347,dog 238348,truck 238349,horse 238350,cat 238351,airplane 238352,bird 238353,dog 238354,ship 238355,horse 238356,bird 238357,frog 238358,airplane 238359,horse 238360,deer 238361,dog 238362,bird 238363,dog 238364,truck 238365,horse 238366,deer 238367,horse 238368,truck 238369,cat 238370,ship 238371,truck 238372,automobile 238373,cat 238374,airplane 238375,automobile 238376,cat 238377,deer 238378,bird 238379,cat 238380,ship 238381,automobile 238382,ship 238383,cat 238384,bird 238385,truck 238386,cat 238387,automobile 238388,frog 238389,horse 238390,deer 238391,frog 238392,dog 238393,frog 238394,deer 238395,bird 238396,deer 238397,airplane 238398,airplane 238399,bird 238400,horse 238401,horse 238402,truck 238403,truck 238404,truck 238405,deer 238406,cat 238407,truck 238408,deer 238409,dog 238410,truck 238411,dog 238412,dog 238413,cat 238414,cat 238415,cat 238416,deer 238417,truck 238418,airplane 238419,cat 238420,airplane 238421,horse 238422,bird 238423,ship 238424,dog 238425,airplane 238426,horse 238427,frog 238428,horse 238429,airplane 238430,cat 238431,dog 238432,airplane 238433,automobile 238434,airplane 238435,dog 238436,bird 238437,horse 238438,cat 238439,automobile 238440,automobile 238441,horse 238442,automobile 238443,automobile 238444,ship 238445,ship 238446,bird 238447,horse 238448,ship 238449,deer 238450,truck 238451,horse 238452,horse 238453,horse 238454,horse 238455,bird 238456,dog 238457,ship 238458,dog 238459,deer 238460,automobile 238461,cat 238462,deer 238463,frog 238464,horse 238465,airplane 238466,airplane 238467,horse 238468,dog 238469,bird 238470,ship 238471,deer 238472,ship 238473,deer 238474,dog 238475,cat 238476,airplane 238477,cat 238478,airplane 238479,ship 238480,automobile 238481,airplane 238482,automobile 238483,ship 238484,ship 238485,frog 238486,ship 238487,automobile 238488,bird 238489,frog 238490,airplane 238491,frog 238492,horse 238493,ship 238494,cat 238495,deer 238496,airplane 238497,airplane 238498,automobile 238499,airplane 238500,cat 238501,truck 238502,airplane 238503,bird 238504,horse 238505,cat 238506,frog 238507,horse 238508,cat 238509,frog 238510,truck 238511,truck 238512,ship 238513,deer 238514,deer 238515,automobile 238516,truck 238517,deer 238518,airplane 238519,frog 238520,deer 238521,ship 238522,frog 238523,ship 238524,cat 238525,cat 238526,automobile 238527,truck 238528,bird 238529,deer 238530,dog 238531,deer 238532,automobile 238533,horse 238534,bird 238535,cat 238536,frog 238537,cat 238538,airplane 238539,truck 238540,cat 238541,deer 238542,bird 238543,bird 238544,deer 238545,dog 238546,truck 238547,dog 238548,horse 238549,horse 238550,truck 238551,dog 238552,horse 238553,ship 238554,horse 238555,horse 238556,cat 238557,frog 238558,deer 238559,ship 238560,cat 238561,bird 238562,deer 238563,truck 238564,bird 238565,bird 238566,deer 238567,ship 238568,deer 238569,truck 238570,airplane 238571,bird 238572,deer 238573,cat 238574,cat 238575,truck 238576,dog 238577,cat 238578,frog 238579,deer 238580,truck 238581,automobile 238582,deer 238583,frog 238584,airplane 238585,cat 238586,cat 238587,cat 238588,truck 238589,truck 238590,truck 238591,bird 238592,deer 238593,cat 238594,bird 238595,deer 238596,deer 238597,airplane 238598,dog 238599,truck 238600,deer 238601,dog 238602,horse 238603,deer 238604,deer 238605,frog 238606,automobile 238607,cat 238608,horse 238609,horse 238610,frog 238611,airplane 238612,dog 238613,ship 238614,cat 238615,deer 238616,deer 238617,horse 238618,ship 238619,horse 238620,cat 238621,deer 238622,automobile 238623,truck 238624,ship 238625,horse 238626,automobile 238627,deer 238628,airplane 238629,cat 238630,automobile 238631,frog 238632,automobile 238633,frog 238634,cat 238635,dog 238636,frog 238637,frog 238638,cat 238639,airplane 238640,deer 238641,deer 238642,frog 238643,cat 238644,truck 238645,ship 238646,deer 238647,airplane 238648,truck 238649,automobile 238650,cat 238651,deer 238652,bird 238653,cat 238654,cat 238655,deer 238656,ship 238657,truck 238658,bird 238659,cat 238660,airplane 238661,dog 238662,airplane 238663,horse 238664,automobile 238665,frog 238666,horse 238667,truck 238668,frog 238669,cat 238670,dog 238671,cat 238672,horse 238673,truck 238674,ship 238675,cat 238676,deer 238677,horse 238678,truck 238679,cat 238680,frog 238681,bird 238682,cat 238683,cat 238684,deer 238685,dog 238686,dog 238687,frog 238688,dog 238689,airplane 238690,frog 238691,cat 238692,cat 238693,automobile 238694,cat 238695,ship 238696,airplane 238697,dog 238698,truck 238699,horse 238700,airplane 238701,horse 238702,frog 238703,cat 238704,frog 238705,truck 238706,automobile 238707,dog 238708,horse 238709,ship 238710,frog 238711,frog 238712,truck 238713,airplane 238714,deer 238715,deer 238716,cat 238717,automobile 238718,cat 238719,dog 238720,horse 238721,cat 238722,bird 238723,truck 238724,cat 238725,cat 238726,truck 238727,airplane 238728,cat 238729,bird 238730,airplane 238731,bird 238732,cat 238733,bird 238734,frog 238735,cat 238736,frog 238737,truck 238738,ship 238739,deer 238740,dog 238741,automobile 238742,dog 238743,frog 238744,cat 238745,deer 238746,frog 238747,cat 238748,deer 238749,ship 238750,airplane 238751,bird 238752,deer 238753,frog 238754,horse 238755,frog 238756,automobile 238757,dog 238758,dog 238759,deer 238760,horse 238761,dog 238762,bird 238763,deer 238764,ship 238765,deer 238766,truck 238767,deer 238768,cat 238769,deer 238770,automobile 238771,automobile 238772,frog 238773,horse 238774,dog 238775,frog 238776,airplane 238777,airplane 238778,frog 238779,cat 238780,automobile 238781,dog 238782,frog 238783,deer 238784,bird 238785,deer 238786,cat 238787,cat 238788,bird 238789,ship 238790,ship 238791,frog 238792,automobile 238793,dog 238794,ship 238795,airplane 238796,deer 238797,automobile 238798,automobile 238799,frog 238800,horse 238801,automobile 238802,dog 238803,truck 238804,dog 238805,truck 238806,horse 238807,frog 238808,frog 238809,horse 238810,frog 238811,airplane 238812,horse 238813,automobile 238814,frog 238815,ship 238816,deer 238817,dog 238818,horse 238819,horse 238820,dog 238821,deer 238822,ship 238823,dog 238824,deer 238825,ship 238826,airplane 238827,dog 238828,frog 238829,ship 238830,deer 238831,deer 238832,automobile 238833,cat 238834,cat 238835,cat 238836,cat 238837,ship 238838,truck 238839,horse 238840,airplane 238841,bird 238842,dog 238843,automobile 238844,deer 238845,horse 238846,truck 238847,frog 238848,truck 238849,horse 238850,cat 238851,frog 238852,horse 238853,bird 238854,cat 238855,truck 238856,truck 238857,horse 238858,automobile 238859,deer 238860,deer 238861,cat 238862,horse 238863,cat 238864,truck 238865,cat 238866,ship 238867,truck 238868,dog 238869,deer 238870,ship 238871,ship 238872,airplane 238873,bird 238874,ship 238875,frog 238876,airplane 238877,truck 238878,automobile 238879,automobile 238880,dog 238881,cat 238882,cat 238883,deer 238884,cat 238885,deer 238886,bird 238887,airplane 238888,dog 238889,bird 238890,cat 238891,bird 238892,horse 238893,cat 238894,horse 238895,ship 238896,truck 238897,ship 238898,cat 238899,truck 238900,automobile 238901,horse 238902,cat 238903,dog 238904,bird 238905,dog 238906,dog 238907,ship 238908,horse 238909,truck 238910,deer 238911,deer 238912,ship 238913,deer 238914,deer 238915,cat 238916,dog 238917,horse 238918,frog 238919,automobile 238920,deer 238921,deer 238922,cat 238923,truck 238924,ship 238925,truck 238926,horse 238927,bird 238928,truck 238929,truck 238930,airplane 238931,airplane 238932,dog 238933,deer 238934,dog 238935,frog 238936,automobile 238937,bird 238938,deer 238939,frog 238940,bird 238941,truck 238942,automobile 238943,airplane 238944,frog 238945,ship 238946,dog 238947,truck 238948,cat 238949,deer 238950,truck 238951,airplane 238952,deer 238953,deer 238954,frog 238955,frog 238956,truck 238957,cat 238958,deer 238959,frog 238960,frog 238961,cat 238962,truck 238963,ship 238964,cat 238965,truck 238966,deer 238967,horse 238968,bird 238969,deer 238970,truck 238971,horse 238972,horse 238973,frog 238974,dog 238975,truck 238976,deer 238977,frog 238978,automobile 238979,dog 238980,deer 238981,dog 238982,deer 238983,ship 238984,dog 238985,cat 238986,deer 238987,ship 238988,frog 238989,horse 238990,cat 238991,bird 238992,bird 238993,airplane 238994,cat 238995,frog 238996,cat 238997,cat 238998,automobile 238999,ship 239000,cat 239001,deer 239002,truck 239003,dog 239004,truck 239005,horse 239006,ship 239007,ship 239008,cat 239009,truck 239010,horse 239011,truck 239012,cat 239013,frog 239014,deer 239015,airplane 239016,truck 239017,cat 239018,ship 239019,frog 239020,cat 239021,bird 239022,automobile 239023,dog 239024,ship 239025,frog 239026,horse 239027,automobile 239028,automobile 239029,cat 239030,cat 239031,cat 239032,truck 239033,automobile 239034,ship 239035,deer 239036,deer 239037,dog 239038,cat 239039,automobile 239040,cat 239041,cat 239042,airplane 239043,automobile 239044,ship 239045,frog 239046,horse 239047,ship 239048,truck 239049,deer 239050,airplane 239051,cat 239052,ship 239053,airplane 239054,frog 239055,cat 239056,cat 239057,airplane 239058,deer 239059,cat 239060,truck 239061,cat 239062,cat 239063,bird 239064,airplane 239065,horse 239066,ship 239067,bird 239068,dog 239069,deer 239070,cat 239071,airplane 239072,horse 239073,horse 239074,frog 239075,truck 239076,automobile 239077,deer 239078,bird 239079,automobile 239080,bird 239081,bird 239082,horse 239083,airplane 239084,horse 239085,deer 239086,dog 239087,horse 239088,truck 239089,dog 239090,airplane 239091,bird 239092,bird 239093,cat 239094,truck 239095,deer 239096,automobile 239097,truck 239098,frog 239099,horse 239100,cat 239101,frog 239102,frog 239103,horse 239104,cat 239105,cat 239106,horse 239107,automobile 239108,truck 239109,deer 239110,bird 239111,horse 239112,dog 239113,frog 239114,deer 239115,ship 239116,airplane 239117,deer 239118,bird 239119,truck 239120,dog 239121,dog 239122,cat 239123,bird 239124,dog 239125,frog 239126,airplane 239127,deer 239128,airplane 239129,frog 239130,bird 239131,bird 239132,truck 239133,airplane 239134,deer 239135,automobile 239136,automobile 239137,dog 239138,cat 239139,deer 239140,bird 239141,airplane 239142,dog 239143,truck 239144,ship 239145,ship 239146,truck 239147,horse 239148,bird 239149,airplane 239150,horse 239151,frog 239152,cat 239153,dog 239154,automobile 239155,frog 239156,dog 239157,frog 239158,airplane 239159,frog 239160,automobile 239161,cat 239162,automobile 239163,cat 239164,deer 239165,airplane 239166,bird 239167,frog 239168,ship 239169,horse 239170,frog 239171,cat 239172,frog 239173,horse 239174,frog 239175,frog 239176,automobile 239177,automobile 239178,bird 239179,cat 239180,ship 239181,deer 239182,deer 239183,ship 239184,cat 239185,dog 239186,frog 239187,frog 239188,bird 239189,dog 239190,bird 239191,automobile 239192,frog 239193,frog 239194,bird 239195,truck 239196,dog 239197,ship 239198,cat 239199,cat 239200,frog 239201,airplane 239202,dog 239203,ship 239204,ship 239205,ship 239206,deer 239207,airplane 239208,frog 239209,ship 239210,dog 239211,cat 239212,deer 239213,bird 239214,deer 239215,truck 239216,dog 239217,frog 239218,deer 239219,deer 239220,bird 239221,cat 239222,horse 239223,horse 239224,truck 239225,ship 239226,bird 239227,frog 239228,bird 239229,frog 239230,bird 239231,dog 239232,horse 239233,deer 239234,ship 239235,airplane 239236,horse 239237,frog 239238,cat 239239,truck 239240,cat 239241,deer 239242,deer 239243,deer 239244,horse 239245,deer 239246,deer 239247,bird 239248,cat 239249,ship 239250,automobile 239251,horse 239252,automobile 239253,dog 239254,deer 239255,bird 239256,truck 239257,cat 239258,cat 239259,dog 239260,airplane 239261,dog 239262,frog 239263,dog 239264,cat 239265,airplane 239266,deer 239267,cat 239268,automobile 239269,cat 239270,horse 239271,ship 239272,truck 239273,frog 239274,bird 239275,horse 239276,ship 239277,bird 239278,cat 239279,cat 239280,horse 239281,deer 239282,horse 239283,deer 239284,automobile 239285,airplane 239286,cat 239287,dog 239288,horse 239289,airplane 239290,horse 239291,truck 239292,truck 239293,cat 239294,deer 239295,horse 239296,deer 239297,truck 239298,frog 239299,automobile 239300,horse 239301,truck 239302,airplane 239303,horse 239304,frog 239305,cat 239306,cat 239307,bird 239308,cat 239309,frog 239310,horse 239311,automobile 239312,bird 239313,automobile 239314,truck 239315,deer 239316,frog 239317,dog 239318,bird 239319,horse 239320,horse 239321,airplane 239322,cat 239323,frog 239324,horse 239325,deer 239326,cat 239327,bird 239328,ship 239329,deer 239330,horse 239331,frog 239332,deer 239333,ship 239334,cat 239335,deer 239336,airplane 239337,frog 239338,horse 239339,horse 239340,frog 239341,cat 239342,deer 239343,frog 239344,dog 239345,horse 239346,cat 239347,ship 239348,deer 239349,dog 239350,airplane 239351,frog 239352,airplane 239353,cat 239354,cat 239355,frog 239356,ship 239357,horse 239358,truck 239359,cat 239360,cat 239361,cat 239362,dog 239363,bird 239364,dog 239365,deer 239366,bird 239367,frog 239368,bird 239369,dog 239370,ship 239371,bird 239372,bird 239373,ship 239374,horse 239375,bird 239376,ship 239377,ship 239378,deer 239379,automobile 239380,horse 239381,frog 239382,truck 239383,bird 239384,automobile 239385,ship 239386,frog 239387,truck 239388,deer 239389,automobile 239390,automobile 239391,automobile 239392,deer 239393,ship 239394,airplane 239395,airplane 239396,dog 239397,horse 239398,deer 239399,truck 239400,ship 239401,cat 239402,cat 239403,bird 239404,cat 239405,dog 239406,horse 239407,bird 239408,ship 239409,horse 239410,horse 239411,airplane 239412,dog 239413,ship 239414,automobile 239415,frog 239416,airplane 239417,frog 239418,horse 239419,frog 239420,dog 239421,automobile 239422,bird 239423,cat 239424,deer 239425,dog 239426,truck 239427,bird 239428,truck 239429,airplane 239430,cat 239431,bird 239432,horse 239433,frog 239434,deer 239435,truck 239436,cat 239437,airplane 239438,bird 239439,frog 239440,horse 239441,dog 239442,airplane 239443,deer 239444,dog 239445,horse 239446,dog 239447,deer 239448,truck 239449,airplane 239450,cat 239451,cat 239452,cat 239453,horse 239454,airplane 239455,cat 239456,dog 239457,airplane 239458,airplane 239459,cat 239460,frog 239461,automobile 239462,bird 239463,truck 239464,bird 239465,airplane 239466,truck 239467,cat 239468,horse 239469,ship 239470,automobile 239471,frog 239472,deer 239473,airplane 239474,cat 239475,deer 239476,truck 239477,airplane 239478,deer 239479,cat 239480,dog 239481,automobile 239482,ship 239483,deer 239484,automobile 239485,cat 239486,cat 239487,ship 239488,cat 239489,bird 239490,dog 239491,truck 239492,frog 239493,dog 239494,truck 239495,deer 239496,frog 239497,bird 239498,frog 239499,frog 239500,deer 239501,automobile 239502,dog 239503,deer 239504,ship 239505,truck 239506,cat 239507,truck 239508,truck 239509,deer 239510,deer 239511,truck 239512,cat 239513,deer 239514,deer 239515,dog 239516,dog 239517,automobile 239518,airplane 239519,frog 239520,deer 239521,airplane 239522,horse 239523,cat 239524,automobile 239525,cat 239526,truck 239527,cat 239528,automobile 239529,dog 239530,cat 239531,truck 239532,horse 239533,bird 239534,cat 239535,frog 239536,horse 239537,horse 239538,ship 239539,dog 239540,deer 239541,deer 239542,frog 239543,horse 239544,dog 239545,deer 239546,deer 239547,airplane 239548,bird 239549,frog 239550,ship 239551,cat 239552,frog 239553,truck 239554,horse 239555,horse 239556,cat 239557,deer 239558,cat 239559,ship 239560,deer 239561,bird 239562,airplane 239563,deer 239564,deer 239565,frog 239566,deer 239567,dog 239568,dog 239569,bird 239570,deer 239571,automobile 239572,bird 239573,dog 239574,ship 239575,truck 239576,deer 239577,horse 239578,dog 239579,dog 239580,airplane 239581,cat 239582,truck 239583,frog 239584,dog 239585,ship 239586,horse 239587,horse 239588,bird 239589,airplane 239590,airplane 239591,airplane 239592,automobile 239593,truck 239594,horse 239595,cat 239596,ship 239597,deer 239598,deer 239599,frog 239600,ship 239601,bird 239602,cat 239603,dog 239604,horse 239605,bird 239606,ship 239607,automobile 239608,truck 239609,truck 239610,cat 239611,dog 239612,truck 239613,deer 239614,bird 239615,airplane 239616,frog 239617,dog 239618,bird 239619,dog 239620,truck 239621,dog 239622,deer 239623,dog 239624,airplane 239625,deer 239626,bird 239627,truck 239628,cat 239629,airplane 239630,automobile 239631,ship 239632,deer 239633,deer 239634,horse 239635,ship 239636,deer 239637,frog 239638,ship 239639,frog 239640,cat 239641,horse 239642,deer 239643,deer 239644,horse 239645,bird 239646,bird 239647,airplane 239648,dog 239649,cat 239650,bird 239651,cat 239652,dog 239653,ship 239654,ship 239655,airplane 239656,automobile 239657,dog 239658,cat 239659,airplane 239660,ship 239661,truck 239662,ship 239663,deer 239664,automobile 239665,dog 239666,bird 239667,truck 239668,bird 239669,cat 239670,ship 239671,deer 239672,bird 239673,dog 239674,bird 239675,deer 239676,automobile 239677,frog 239678,deer 239679,frog 239680,deer 239681,deer 239682,deer 239683,cat 239684,dog 239685,cat 239686,frog 239687,cat 239688,airplane 239689,bird 239690,ship 239691,ship 239692,frog 239693,frog 239694,ship 239695,truck 239696,bird 239697,bird 239698,frog 239699,deer 239700,cat 239701,bird 239702,horse 239703,horse 239704,ship 239705,deer 239706,cat 239707,airplane 239708,horse 239709,horse 239710,automobile 239711,frog 239712,deer 239713,ship 239714,cat 239715,truck 239716,truck 239717,airplane 239718,deer 239719,ship 239720,automobile 239721,ship 239722,cat 239723,bird 239724,ship 239725,airplane 239726,ship 239727,airplane 239728,frog 239729,frog 239730,dog 239731,automobile 239732,frog 239733,airplane 239734,ship 239735,horse 239736,horse 239737,truck 239738,truck 239739,cat 239740,truck 239741,cat 239742,truck 239743,deer 239744,cat 239745,truck 239746,airplane 239747,horse 239748,deer 239749,horse 239750,airplane 239751,ship 239752,ship 239753,cat 239754,ship 239755,bird 239756,deer 239757,airplane 239758,bird 239759,ship 239760,horse 239761,deer 239762,automobile 239763,horse 239764,automobile 239765,deer 239766,dog 239767,frog 239768,truck 239769,dog 239770,ship 239771,truck 239772,truck 239773,airplane 239774,deer 239775,automobile 239776,automobile 239777,deer 239778,frog 239779,truck 239780,horse 239781,horse 239782,deer 239783,dog 239784,truck 239785,ship 239786,dog 239787,ship 239788,automobile 239789,airplane 239790,automobile 239791,truck 239792,ship 239793,dog 239794,airplane 239795,automobile 239796,cat 239797,cat 239798,cat 239799,cat 239800,truck 239801,frog 239802,bird 239803,automobile 239804,airplane 239805,deer 239806,deer 239807,cat 239808,bird 239809,airplane 239810,cat 239811,horse 239812,cat 239813,cat 239814,truck 239815,automobile 239816,frog 239817,horse 239818,cat 239819,truck 239820,horse 239821,bird 239822,horse 239823,deer 239824,horse 239825,bird 239826,ship 239827,cat 239828,frog 239829,bird 239830,truck 239831,deer 239832,deer 239833,bird 239834,horse 239835,ship 239836,airplane 239837,ship 239838,bird 239839,ship 239840,ship 239841,bird 239842,ship 239843,frog 239844,bird 239845,dog 239846,bird 239847,truck 239848,dog 239849,ship 239850,bird 239851,horse 239852,dog 239853,frog 239854,truck 239855,truck 239856,cat 239857,frog 239858,ship 239859,horse 239860,frog 239861,bird 239862,frog 239863,dog 239864,deer 239865,cat 239866,horse 239867,ship 239868,cat 239869,automobile 239870,cat 239871,dog 239872,horse 239873,bird 239874,airplane 239875,truck 239876,truck 239877,deer 239878,truck 239879,truck 239880,dog 239881,horse 239882,deer 239883,automobile 239884,bird 239885,deer 239886,bird 239887,horse 239888,automobile 239889,frog 239890,horse 239891,bird 239892,automobile 239893,horse 239894,deer 239895,deer 239896,horse 239897,cat 239898,bird 239899,airplane 239900,truck 239901,automobile 239902,deer 239903,cat 239904,automobile 239905,cat 239906,deer 239907,airplane 239908,deer 239909,horse 239910,frog 239911,dog 239912,dog 239913,frog 239914,deer 239915,airplane 239916,frog 239917,frog 239918,horse 239919,automobile 239920,cat 239921,dog 239922,horse 239923,cat 239924,deer 239925,airplane 239926,frog 239927,horse 239928,truck 239929,cat 239930,airplane 239931,ship 239932,dog 239933,bird 239934,horse 239935,horse 239936,cat 239937,deer 239938,dog 239939,dog 239940,deer 239941,ship 239942,truck 239943,frog 239944,horse 239945,truck 239946,automobile 239947,ship 239948,airplane 239949,cat 239950,cat 239951,automobile 239952,frog 239953,frog 239954,deer 239955,cat 239956,airplane 239957,horse 239958,deer 239959,deer 239960,frog 239961,cat 239962,airplane 239963,truck 239964,cat 239965,cat 239966,deer 239967,bird 239968,ship 239969,automobile 239970,bird 239971,truck 239972,horse 239973,truck 239974,horse 239975,dog 239976,deer 239977,bird 239978,dog 239979,dog 239980,bird 239981,deer 239982,horse 239983,dog 239984,cat 239985,deer 239986,truck 239987,automobile 239988,truck 239989,bird 239990,automobile 239991,cat 239992,bird 239993,truck 239994,automobile 239995,truck 239996,cat 239997,deer 239998,bird 239999,dog 240000,airplane 240001,deer 240002,horse 240003,dog 240004,deer 240005,cat 240006,ship 240007,horse 240008,truck 240009,ship 240010,dog 240011,cat 240012,deer 240013,horse 240014,cat 240015,bird 240016,bird 240017,dog 240018,truck 240019,ship 240020,bird 240021,deer 240022,automobile 240023,truck 240024,horse 240025,airplane 240026,frog 240027,truck 240028,deer 240029,horse 240030,airplane 240031,bird 240032,truck 240033,automobile 240034,deer 240035,dog 240036,cat 240037,ship 240038,truck 240039,cat 240040,truck 240041,frog 240042,frog 240043,horse 240044,deer 240045,horse 240046,dog 240047,bird 240048,dog 240049,automobile 240050,dog 240051,ship 240052,ship 240053,horse 240054,airplane 240055,cat 240056,dog 240057,airplane 240058,truck 240059,deer 240060,dog 240061,dog 240062,truck 240063,cat 240064,cat 240065,ship 240066,cat 240067,cat 240068,dog 240069,truck 240070,truck 240071,deer 240072,bird 240073,airplane 240074,dog 240075,deer 240076,dog 240077,cat 240078,automobile 240079,truck 240080,automobile 240081,automobile 240082,cat 240083,frog 240084,airplane 240085,truck 240086,deer 240087,frog 240088,ship 240089,cat 240090,airplane 240091,ship 240092,dog 240093,ship 240094,ship 240095,cat 240096,dog 240097,automobile 240098,horse 240099,cat 240100,deer 240101,deer 240102,cat 240103,horse 240104,deer 240105,horse 240106,cat 240107,cat 240108,horse 240109,cat 240110,ship 240111,cat 240112,horse 240113,bird 240114,horse 240115,ship 240116,frog 240117,frog 240118,airplane 240119,horse 240120,deer 240121,airplane 240122,cat 240123,frog 240124,dog 240125,airplane 240126,deer 240127,bird 240128,ship 240129,airplane 240130,bird 240131,bird 240132,horse 240133,dog 240134,cat 240135,truck 240136,cat 240137,truck 240138,horse 240139,horse 240140,frog 240141,truck 240142,airplane 240143,deer 240144,deer 240145,horse 240146,bird 240147,horse 240148,horse 240149,dog 240150,dog 240151,frog 240152,deer 240153,horse 240154,frog 240155,cat 240156,airplane 240157,deer 240158,bird 240159,cat 240160,dog 240161,bird 240162,deer 240163,airplane 240164,automobile 240165,horse 240166,airplane 240167,frog 240168,bird 240169,frog 240170,dog 240171,automobile 240172,dog 240173,cat 240174,truck 240175,horse 240176,frog 240177,airplane 240178,ship 240179,airplane 240180,deer 240181,deer 240182,airplane 240183,automobile 240184,truck 240185,horse 240186,frog 240187,truck 240188,airplane 240189,dog 240190,truck 240191,frog 240192,ship 240193,dog 240194,frog 240195,deer 240196,frog 240197,deer 240198,cat 240199,frog 240200,bird 240201,deer 240202,automobile 240203,deer 240204,dog 240205,truck 240206,deer 240207,ship 240208,horse 240209,automobile 240210,truck 240211,horse 240212,cat 240213,automobile 240214,ship 240215,cat 240216,frog 240217,bird 240218,deer 240219,truck 240220,bird 240221,frog 240222,frog 240223,deer 240224,deer 240225,bird 240226,horse 240227,airplane 240228,dog 240229,truck 240230,automobile 240231,horse 240232,cat 240233,truck 240234,dog 240235,truck 240236,airplane 240237,ship 240238,deer 240239,frog 240240,truck 240241,cat 240242,frog 240243,ship 240244,ship 240245,automobile 240246,horse 240247,ship 240248,dog 240249,airplane 240250,cat 240251,truck 240252,deer 240253,cat 240254,bird 240255,frog 240256,deer 240257,dog 240258,bird 240259,frog 240260,horse 240261,cat 240262,frog 240263,frog 240264,cat 240265,automobile 240266,cat 240267,cat 240268,deer 240269,horse 240270,frog 240271,frog 240272,truck 240273,deer 240274,cat 240275,airplane 240276,bird 240277,frog 240278,cat 240279,deer 240280,airplane 240281,truck 240282,frog 240283,bird 240284,frog 240285,dog 240286,automobile 240287,ship 240288,deer 240289,ship 240290,cat 240291,deer 240292,cat 240293,dog 240294,automobile 240295,automobile 240296,dog 240297,dog 240298,deer 240299,frog 240300,automobile 240301,ship 240302,bird 240303,bird 240304,truck 240305,airplane 240306,frog 240307,ship 240308,ship 240309,truck 240310,dog 240311,dog 240312,automobile 240313,deer 240314,dog 240315,truck 240316,horse 240317,deer 240318,airplane 240319,cat 240320,automobile 240321,truck 240322,ship 240323,horse 240324,bird 240325,truck 240326,deer 240327,deer 240328,automobile 240329,bird 240330,automobile 240331,ship 240332,frog 240333,deer 240334,dog 240335,horse 240336,frog 240337,airplane 240338,bird 240339,truck 240340,truck 240341,bird 240342,cat 240343,frog 240344,ship 240345,cat 240346,deer 240347,truck 240348,ship 240349,ship 240350,deer 240351,frog 240352,dog 240353,horse 240354,truck 240355,cat 240356,truck 240357,bird 240358,horse 240359,cat 240360,cat 240361,automobile 240362,truck 240363,cat 240364,frog 240365,automobile 240366,frog 240367,horse 240368,cat 240369,deer 240370,truck 240371,cat 240372,deer 240373,truck 240374,bird 240375,dog 240376,cat 240377,automobile 240378,cat 240379,deer 240380,bird 240381,cat 240382,automobile 240383,dog 240384,cat 240385,frog 240386,bird 240387,dog 240388,truck 240389,truck 240390,frog 240391,automobile 240392,deer 240393,truck 240394,deer 240395,airplane 240396,frog 240397,ship 240398,truck 240399,dog 240400,horse 240401,horse 240402,dog 240403,automobile 240404,dog 240405,dog 240406,cat 240407,ship 240408,truck 240409,bird 240410,frog 240411,cat 240412,cat 240413,airplane 240414,deer 240415,bird 240416,deer 240417,dog 240418,truck 240419,automobile 240420,frog 240421,dog 240422,deer 240423,cat 240424,airplane 240425,automobile 240426,bird 240427,frog 240428,deer 240429,ship 240430,horse 240431,cat 240432,ship 240433,frog 240434,ship 240435,frog 240436,frog 240437,bird 240438,deer 240439,cat 240440,cat 240441,bird 240442,bird 240443,automobile 240444,ship 240445,cat 240446,dog 240447,truck 240448,deer 240449,automobile 240450,airplane 240451,dog 240452,frog 240453,horse 240454,horse 240455,automobile 240456,automobile 240457,frog 240458,cat 240459,truck 240460,automobile 240461,deer 240462,deer 240463,bird 240464,deer 240465,deer 240466,deer 240467,ship 240468,dog 240469,deer 240470,horse 240471,bird 240472,frog 240473,frog 240474,deer 240475,automobile 240476,airplane 240477,horse 240478,truck 240479,deer 240480,bird 240481,horse 240482,frog 240483,deer 240484,frog 240485,horse 240486,airplane 240487,dog 240488,dog 240489,truck 240490,automobile 240491,dog 240492,bird 240493,airplane 240494,dog 240495,cat 240496,dog 240497,airplane 240498,dog 240499,cat 240500,cat 240501,bird 240502,deer 240503,truck 240504,frog 240505,automobile 240506,cat 240507,cat 240508,truck 240509,dog 240510,bird 240511,automobile 240512,airplane 240513,deer 240514,horse 240515,horse 240516,deer 240517,automobile 240518,truck 240519,automobile 240520,automobile 240521,automobile 240522,deer 240523,frog 240524,dog 240525,dog 240526,dog 240527,cat 240528,airplane 240529,deer 240530,horse 240531,bird 240532,airplane 240533,cat 240534,frog 240535,airplane 240536,bird 240537,frog 240538,deer 240539,ship 240540,dog 240541,automobile 240542,frog 240543,deer 240544,airplane 240545,cat 240546,airplane 240547,bird 240548,truck 240549,cat 240550,airplane 240551,deer 240552,airplane 240553,ship 240554,deer 240555,truck 240556,dog 240557,deer 240558,truck 240559,bird 240560,ship 240561,frog 240562,automobile 240563,deer 240564,horse 240565,dog 240566,bird 240567,airplane 240568,frog 240569,airplane 240570,deer 240571,airplane 240572,horse 240573,ship 240574,deer 240575,truck 240576,frog 240577,cat 240578,horse 240579,deer 240580,automobile 240581,bird 240582,deer 240583,automobile 240584,deer 240585,deer 240586,bird 240587,frog 240588,horse 240589,frog 240590,ship 240591,truck 240592,deer 240593,cat 240594,ship 240595,bird 240596,dog 240597,ship 240598,cat 240599,horse 240600,frog 240601,frog 240602,truck 240603,bird 240604,automobile 240605,bird 240606,frog 240607,airplane 240608,truck 240609,truck 240610,horse 240611,deer 240612,dog 240613,cat 240614,automobile 240615,bird 240616,deer 240617,cat 240618,frog 240619,airplane 240620,automobile 240621,truck 240622,dog 240623,horse 240624,cat 240625,horse 240626,frog 240627,horse 240628,bird 240629,deer 240630,deer 240631,cat 240632,truck 240633,ship 240634,ship 240635,deer 240636,cat 240637,cat 240638,deer 240639,dog 240640,truck 240641,airplane 240642,deer 240643,deer 240644,cat 240645,frog 240646,deer 240647,cat 240648,deer 240649,truck 240650,truck 240651,airplane 240652,horse 240653,cat 240654,cat 240655,automobile 240656,dog 240657,dog 240658,ship 240659,horse 240660,ship 240661,deer 240662,ship 240663,horse 240664,frog 240665,dog 240666,airplane 240667,horse 240668,cat 240669,cat 240670,deer 240671,airplane 240672,deer 240673,frog 240674,cat 240675,automobile 240676,truck 240677,dog 240678,frog 240679,deer 240680,dog 240681,truck 240682,ship 240683,deer 240684,cat 240685,dog 240686,cat 240687,frog 240688,automobile 240689,truck 240690,cat 240691,frog 240692,bird 240693,truck 240694,bird 240695,cat 240696,horse 240697,ship 240698,deer 240699,ship 240700,cat 240701,cat 240702,deer 240703,bird 240704,bird 240705,cat 240706,horse 240707,ship 240708,frog 240709,deer 240710,bird 240711,ship 240712,airplane 240713,ship 240714,cat 240715,dog 240716,bird 240717,cat 240718,bird 240719,horse 240720,deer 240721,truck 240722,truck 240723,bird 240724,ship 240725,frog 240726,ship 240727,truck 240728,horse 240729,deer 240730,airplane 240731,bird 240732,airplane 240733,frog 240734,frog 240735,ship 240736,ship 240737,frog 240738,ship 240739,airplane 240740,dog 240741,horse 240742,horse 240743,automobile 240744,truck 240745,deer 240746,deer 240747,deer 240748,ship 240749,airplane 240750,airplane 240751,deer 240752,frog 240753,airplane 240754,horse 240755,automobile 240756,airplane 240757,bird 240758,deer 240759,dog 240760,deer 240761,horse 240762,frog 240763,truck 240764,automobile 240765,frog 240766,bird 240767,horse 240768,bird 240769,deer 240770,horse 240771,cat 240772,bird 240773,frog 240774,automobile 240775,horse 240776,cat 240777,dog 240778,automobile 240779,automobile 240780,frog 240781,ship 240782,automobile 240783,frog 240784,frog 240785,horse 240786,horse 240787,dog 240788,bird 240789,cat 240790,ship 240791,ship 240792,automobile 240793,deer 240794,automobile 240795,frog 240796,ship 240797,airplane 240798,truck 240799,frog 240800,frog 240801,cat 240802,deer 240803,dog 240804,automobile 240805,airplane 240806,truck 240807,deer 240808,frog 240809,cat 240810,airplane 240811,frog 240812,deer 240813,frog 240814,automobile 240815,dog 240816,ship 240817,frog 240818,cat 240819,truck 240820,horse 240821,deer 240822,dog 240823,dog 240824,deer 240825,ship 240826,dog 240827,cat 240828,cat 240829,ship 240830,truck 240831,frog 240832,horse 240833,dog 240834,horse 240835,bird 240836,bird 240837,frog 240838,cat 240839,deer 240840,deer 240841,dog 240842,horse 240843,cat 240844,cat 240845,dog 240846,airplane 240847,frog 240848,cat 240849,bird 240850,truck 240851,ship 240852,deer 240853,airplane 240854,airplane 240855,automobile 240856,truck 240857,airplane 240858,frog 240859,ship 240860,cat 240861,horse 240862,truck 240863,bird 240864,truck 240865,dog 240866,airplane 240867,cat 240868,truck 240869,horse 240870,dog 240871,truck 240872,dog 240873,cat 240874,airplane 240875,dog 240876,horse 240877,frog 240878,horse 240879,deer 240880,ship 240881,horse 240882,truck 240883,horse 240884,dog 240885,truck 240886,cat 240887,frog 240888,automobile 240889,ship 240890,deer 240891,bird 240892,airplane 240893,airplane 240894,frog 240895,cat 240896,bird 240897,horse 240898,truck 240899,truck 240900,cat 240901,bird 240902,truck 240903,deer 240904,deer 240905,airplane 240906,cat 240907,frog 240908,deer 240909,deer 240910,deer 240911,dog 240912,bird 240913,automobile 240914,ship 240915,truck 240916,cat 240917,airplane 240918,deer 240919,cat 240920,deer 240921,horse 240922,deer 240923,airplane 240924,horse 240925,horse 240926,truck 240927,truck 240928,horse 240929,deer 240930,horse 240931,ship 240932,horse 240933,automobile 240934,deer 240935,bird 240936,horse 240937,truck 240938,horse 240939,airplane 240940,automobile 240941,truck 240942,deer 240943,deer 240944,frog 240945,ship 240946,automobile 240947,truck 240948,dog 240949,frog 240950,frog 240951,cat 240952,automobile 240953,horse 240954,frog 240955,cat 240956,deer 240957,automobile 240958,frog 240959,deer 240960,horse 240961,deer 240962,automobile 240963,airplane 240964,bird 240965,truck 240966,deer 240967,truck 240968,dog 240969,truck 240970,automobile 240971,airplane 240972,cat 240973,automobile 240974,frog 240975,dog 240976,ship 240977,horse 240978,automobile 240979,horse 240980,automobile 240981,deer 240982,truck 240983,dog 240984,deer 240985,bird 240986,frog 240987,deer 240988,horse 240989,bird 240990,horse 240991,deer 240992,horse 240993,airplane 240994,cat 240995,deer 240996,ship 240997,horse 240998,deer 240999,automobile 241000,automobile 241001,horse 241002,deer 241003,automobile 241004,deer 241005,deer 241006,truck 241007,frog 241008,airplane 241009,horse 241010,cat 241011,airplane 241012,automobile 241013,ship 241014,ship 241015,dog 241016,ship 241017,cat 241018,airplane 241019,dog 241020,airplane 241021,horse 241022,cat 241023,truck 241024,frog 241025,bird 241026,truck 241027,cat 241028,truck 241029,ship 241030,horse 241031,cat 241032,deer 241033,deer 241034,cat 241035,airplane 241036,deer 241037,truck 241038,deer 241039,deer 241040,cat 241041,ship 241042,cat 241043,bird 241044,horse 241045,frog 241046,ship 241047,automobile 241048,bird 241049,cat 241050,airplane 241051,frog 241052,horse 241053,truck 241054,airplane 241055,automobile 241056,cat 241057,cat 241058,cat 241059,ship 241060,frog 241061,bird 241062,ship 241063,horse 241064,frog 241065,frog 241066,dog 241067,automobile 241068,bird 241069,automobile 241070,automobile 241071,frog 241072,bird 241073,frog 241074,deer 241075,automobile 241076,airplane 241077,deer 241078,bird 241079,cat 241080,truck 241081,ship 241082,dog 241083,airplane 241084,frog 241085,dog 241086,automobile 241087,horse 241088,cat 241089,ship 241090,ship 241091,ship 241092,bird 241093,deer 241094,cat 241095,airplane 241096,cat 241097,bird 241098,deer 241099,dog 241100,dog 241101,truck 241102,automobile 241103,horse 241104,frog 241105,bird 241106,deer 241107,deer 241108,bird 241109,dog 241110,ship 241111,frog 241112,deer 241113,deer 241114,dog 241115,dog 241116,deer 241117,automobile 241118,cat 241119,frog 241120,cat 241121,ship 241122,automobile 241123,deer 241124,cat 241125,ship 241126,automobile 241127,deer 241128,cat 241129,cat 241130,truck 241131,bird 241132,truck 241133,truck 241134,deer 241135,bird 241136,airplane 241137,deer 241138,bird 241139,cat 241140,cat 241141,truck 241142,frog 241143,bird 241144,airplane 241145,dog 241146,deer 241147,dog 241148,automobile 241149,cat 241150,automobile 241151,frog 241152,deer 241153,airplane 241154,truck 241155,truck 241156,cat 241157,bird 241158,deer 241159,truck 241160,dog 241161,airplane 241162,ship 241163,airplane 241164,dog 241165,horse 241166,horse 241167,bird 241168,truck 241169,horse 241170,dog 241171,horse 241172,truck 241173,dog 241174,frog 241175,ship 241176,deer 241177,airplane 241178,horse 241179,bird 241180,cat 241181,cat 241182,deer 241183,dog 241184,truck 241185,cat 241186,bird 241187,truck 241188,deer 241189,dog 241190,frog 241191,frog 241192,horse 241193,cat 241194,bird 241195,dog 241196,frog 241197,dog 241198,airplane 241199,automobile 241200,horse 241201,deer 241202,airplane 241203,frog 241204,frog 241205,truck 241206,truck 241207,frog 241208,ship 241209,automobile 241210,ship 241211,frog 241212,dog 241213,dog 241214,frog 241215,bird 241216,horse 241217,airplane 241218,automobile 241219,frog 241220,frog 241221,airplane 241222,cat 241223,frog 241224,deer 241225,bird 241226,horse 241227,dog 241228,dog 241229,horse 241230,frog 241231,horse 241232,dog 241233,ship 241234,ship 241235,dog 241236,deer 241237,truck 241238,truck 241239,airplane 241240,ship 241241,horse 241242,bird 241243,dog 241244,deer 241245,cat 241246,truck 241247,airplane 241248,horse 241249,deer 241250,horse 241251,bird 241252,airplane 241253,truck 241254,airplane 241255,frog 241256,deer 241257,deer 241258,horse 241259,truck 241260,truck 241261,horse 241262,truck 241263,truck 241264,cat 241265,truck 241266,ship 241267,cat 241268,deer 241269,automobile 241270,truck 241271,truck 241272,dog 241273,horse 241274,horse 241275,cat 241276,truck 241277,truck 241278,horse 241279,truck 241280,dog 241281,frog 241282,bird 241283,frog 241284,deer 241285,cat 241286,dog 241287,frog 241288,horse 241289,bird 241290,truck 241291,deer 241292,frog 241293,cat 241294,truck 241295,cat 241296,truck 241297,dog 241298,cat 241299,automobile 241300,cat 241301,frog 241302,cat 241303,airplane 241304,bird 241305,deer 241306,ship 241307,frog 241308,truck 241309,automobile 241310,truck 241311,bird 241312,deer 241313,horse 241314,automobile 241315,horse 241316,deer 241317,frog 241318,deer 241319,dog 241320,cat 241321,frog 241322,horse 241323,ship 241324,airplane 241325,cat 241326,ship 241327,deer 241328,frog 241329,dog 241330,frog 241331,truck 241332,truck 241333,frog 241334,truck 241335,airplane 241336,cat 241337,dog 241338,frog 241339,dog 241340,horse 241341,frog 241342,truck 241343,truck 241344,horse 241345,truck 241346,cat 241347,deer 241348,frog 241349,truck 241350,bird 241351,automobile 241352,bird 241353,frog 241354,cat 241355,truck 241356,cat 241357,automobile 241358,frog 241359,frog 241360,dog 241361,deer 241362,cat 241363,deer 241364,deer 241365,bird 241366,dog 241367,cat 241368,dog 241369,deer 241370,bird 241371,truck 241372,dog 241373,horse 241374,horse 241375,horse 241376,ship 241377,frog 241378,cat 241379,ship 241380,ship 241381,airplane 241382,cat 241383,deer 241384,deer 241385,truck 241386,truck 241387,deer 241388,dog 241389,truck 241390,bird 241391,automobile 241392,horse 241393,airplane 241394,dog 241395,dog 241396,frog 241397,automobile 241398,cat 241399,truck 241400,horse 241401,truck 241402,frog 241403,dog 241404,dog 241405,truck 241406,frog 241407,airplane 241408,truck 241409,automobile 241410,dog 241411,airplane 241412,ship 241413,truck 241414,dog 241415,deer 241416,airplane 241417,airplane 241418,bird 241419,cat 241420,airplane 241421,frog 241422,bird 241423,deer 241424,truck 241425,airplane 241426,frog 241427,truck 241428,horse 241429,truck 241430,dog 241431,bird 241432,horse 241433,automobile 241434,deer 241435,deer 241436,truck 241437,dog 241438,horse 241439,deer 241440,bird 241441,bird 241442,cat 241443,ship 241444,bird 241445,airplane 241446,horse 241447,horse 241448,cat 241449,airplane 241450,bird 241451,ship 241452,deer 241453,horse 241454,cat 241455,cat 241456,horse 241457,horse 241458,frog 241459,deer 241460,automobile 241461,bird 241462,cat 241463,truck 241464,horse 241465,cat 241466,bird 241467,deer 241468,airplane 241469,dog 241470,automobile 241471,bird 241472,ship 241473,horse 241474,deer 241475,cat 241476,cat 241477,horse 241478,dog 241479,frog 241480,frog 241481,dog 241482,airplane 241483,horse 241484,ship 241485,truck 241486,ship 241487,horse 241488,cat 241489,truck 241490,cat 241491,ship 241492,cat 241493,horse 241494,cat 241495,horse 241496,dog 241497,cat 241498,cat 241499,horse 241500,deer 241501,cat 241502,airplane 241503,horse 241504,truck 241505,deer 241506,bird 241507,deer 241508,deer 241509,deer 241510,horse 241511,frog 241512,cat 241513,airplane 241514,cat 241515,deer 241516,dog 241517,truck 241518,deer 241519,horse 241520,horse 241521,horse 241522,cat 241523,bird 241524,horse 241525,bird 241526,ship 241527,truck 241528,truck 241529,dog 241530,bird 241531,cat 241532,cat 241533,dog 241534,horse 241535,frog 241536,cat 241537,automobile 241538,bird 241539,frog 241540,automobile 241541,deer 241542,horse 241543,automobile 241544,deer 241545,horse 241546,airplane 241547,horse 241548,bird 241549,truck 241550,automobile 241551,cat 241552,dog 241553,horse 241554,horse 241555,dog 241556,dog 241557,bird 241558,bird 241559,truck 241560,airplane 241561,ship 241562,deer 241563,airplane 241564,truck 241565,ship 241566,horse 241567,deer 241568,airplane 241569,deer 241570,dog 241571,airplane 241572,frog 241573,dog 241574,dog 241575,cat 241576,horse 241577,frog 241578,airplane 241579,dog 241580,truck 241581,horse 241582,cat 241583,airplane 241584,bird 241585,truck 241586,ship 241587,airplane 241588,cat 241589,deer 241590,cat 241591,frog 241592,truck 241593,ship 241594,dog 241595,truck 241596,airplane 241597,automobile 241598,cat 241599,dog 241600,horse 241601,ship 241602,horse 241603,frog 241604,cat 241605,truck 241606,frog 241607,airplane 241608,automobile 241609,deer 241610,deer 241611,airplane 241612,horse 241613,deer 241614,dog 241615,deer 241616,cat 241617,cat 241618,cat 241619,automobile 241620,airplane 241621,horse 241622,cat 241623,dog 241624,frog 241625,horse 241626,deer 241627,bird 241628,bird 241629,automobile 241630,horse 241631,truck 241632,dog 241633,horse 241634,deer 241635,airplane 241636,airplane 241637,horse 241638,horse 241639,horse 241640,deer 241641,frog 241642,airplane 241643,dog 241644,cat 241645,frog 241646,frog 241647,truck 241648,frog 241649,truck 241650,bird 241651,ship 241652,automobile 241653,cat 241654,ship 241655,cat 241656,bird 241657,cat 241658,deer 241659,dog 241660,frog 241661,deer 241662,automobile 241663,bird 241664,cat 241665,cat 241666,deer 241667,deer 241668,horse 241669,automobile 241670,automobile 241671,dog 241672,horse 241673,cat 241674,automobile 241675,deer 241676,truck 241677,cat 241678,airplane 241679,automobile 241680,dog 241681,airplane 241682,deer 241683,ship 241684,frog 241685,horse 241686,ship 241687,truck 241688,deer 241689,deer 241690,frog 241691,deer 241692,cat 241693,frog 241694,ship 241695,deer 241696,frog 241697,frog 241698,horse 241699,truck 241700,frog 241701,deer 241702,bird 241703,frog 241704,frog 241705,frog 241706,airplane 241707,dog 241708,frog 241709,deer 241710,deer 241711,bird 241712,frog 241713,bird 241714,ship 241715,airplane 241716,dog 241717,airplane 241718,dog 241719,airplane 241720,automobile 241721,ship 241722,airplane 241723,horse 241724,ship 241725,bird 241726,bird 241727,frog 241728,airplane 241729,deer 241730,deer 241731,truck 241732,airplane 241733,bird 241734,truck 241735,horse 241736,truck 241737,truck 241738,cat 241739,dog 241740,automobile 241741,deer 241742,deer 241743,horse 241744,deer 241745,automobile 241746,truck 241747,truck 241748,dog 241749,airplane 241750,dog 241751,ship 241752,bird 241753,bird 241754,dog 241755,automobile 241756,truck 241757,truck 241758,ship 241759,bird 241760,automobile 241761,truck 241762,airplane 241763,cat 241764,frog 241765,cat 241766,frog 241767,dog 241768,dog 241769,dog 241770,bird 241771,ship 241772,truck 241773,truck 241774,ship 241775,ship 241776,horse 241777,airplane 241778,automobile 241779,frog 241780,dog 241781,dog 241782,ship 241783,dog 241784,horse 241785,airplane 241786,airplane 241787,horse 241788,horse 241789,airplane 241790,airplane 241791,frog 241792,automobile 241793,dog 241794,frog 241795,cat 241796,automobile 241797,cat 241798,frog 241799,frog 241800,deer 241801,ship 241802,ship 241803,deer 241804,truck 241805,truck 241806,deer 241807,deer 241808,truck 241809,bird 241810,frog 241811,airplane 241812,truck 241813,automobile 241814,truck 241815,horse 241816,bird 241817,deer 241818,dog 241819,cat 241820,frog 241821,cat 241822,horse 241823,cat 241824,airplane 241825,deer 241826,airplane 241827,deer 241828,cat 241829,cat 241830,dog 241831,frog 241832,deer 241833,truck 241834,frog 241835,dog 241836,truck 241837,airplane 241838,bird 241839,airplane 241840,frog 241841,bird 241842,cat 241843,automobile 241844,cat 241845,cat 241846,cat 241847,horse 241848,horse 241849,frog 241850,deer 241851,ship 241852,cat 241853,airplane 241854,deer 241855,ship 241856,dog 241857,truck 241858,truck 241859,deer 241860,automobile 241861,truck 241862,cat 241863,horse 241864,horse 241865,cat 241866,dog 241867,frog 241868,bird 241869,cat 241870,truck 241871,bird 241872,cat 241873,airplane 241874,bird 241875,cat 241876,frog 241877,deer 241878,frog 241879,horse 241880,deer 241881,frog 241882,dog 241883,frog 241884,truck 241885,frog 241886,ship 241887,airplane 241888,truck 241889,horse 241890,automobile 241891,cat 241892,truck 241893,cat 241894,cat 241895,ship 241896,ship 241897,automobile 241898,cat 241899,bird 241900,horse 241901,frog 241902,dog 241903,truck 241904,frog 241905,ship 241906,ship 241907,cat 241908,airplane 241909,frog 241910,horse 241911,dog 241912,bird 241913,bird 241914,frog 241915,truck 241916,frog 241917,ship 241918,horse 241919,bird 241920,dog 241921,truck 241922,truck 241923,bird 241924,frog 241925,dog 241926,frog 241927,frog 241928,deer 241929,airplane 241930,frog 241931,dog 241932,dog 241933,truck 241934,dog 241935,horse 241936,cat 241937,frog 241938,cat 241939,ship 241940,dog 241941,cat 241942,horse 241943,automobile 241944,truck 241945,cat 241946,bird 241947,horse 241948,ship 241949,airplane 241950,truck 241951,deer 241952,ship 241953,ship 241954,truck 241955,cat 241956,deer 241957,horse 241958,automobile 241959,frog 241960,frog 241961,deer 241962,ship 241963,airplane 241964,horse 241965,bird 241966,automobile 241967,frog 241968,truck 241969,cat 241970,ship 241971,cat 241972,ship 241973,horse 241974,horse 241975,dog 241976,truck 241977,automobile 241978,deer 241979,horse 241980,frog 241981,cat 241982,cat 241983,truck 241984,frog 241985,deer 241986,horse 241987,truck 241988,dog 241989,dog 241990,truck 241991,frog 241992,cat 241993,truck 241994,airplane 241995,dog 241996,dog 241997,cat 241998,horse 241999,horse 242000,frog 242001,frog 242002,deer 242003,cat 242004,dog 242005,airplane 242006,horse 242007,horse 242008,ship 242009,cat 242010,dog 242011,ship 242012,automobile 242013,truck 242014,airplane 242015,dog 242016,automobile 242017,ship 242018,dog 242019,dog 242020,cat 242021,deer 242022,horse 242023,frog 242024,ship 242025,frog 242026,deer 242027,airplane 242028,deer 242029,dog 242030,frog 242031,truck 242032,cat 242033,airplane 242034,frog 242035,dog 242036,horse 242037,frog 242038,cat 242039,dog 242040,cat 242041,bird 242042,airplane 242043,dog 242044,deer 242045,cat 242046,bird 242047,automobile 242048,truck 242049,cat 242050,deer 242051,horse 242052,dog 242053,deer 242054,horse 242055,dog 242056,dog 242057,horse 242058,deer 242059,automobile 242060,airplane 242061,ship 242062,cat 242063,airplane 242064,truck 242065,bird 242066,cat 242067,airplane 242068,dog 242069,horse 242070,bird 242071,cat 242072,truck 242073,dog 242074,ship 242075,deer 242076,ship 242077,dog 242078,dog 242079,deer 242080,cat 242081,frog 242082,airplane 242083,airplane 242084,frog 242085,deer 242086,airplane 242087,airplane 242088,frog 242089,dog 242090,deer 242091,frog 242092,dog 242093,deer 242094,deer 242095,dog 242096,deer 242097,automobile 242098,dog 242099,deer 242100,truck 242101,ship 242102,dog 242103,frog 242104,frog 242105,cat 242106,ship 242107,horse 242108,ship 242109,deer 242110,horse 242111,airplane 242112,horse 242113,bird 242114,cat 242115,airplane 242116,frog 242117,cat 242118,deer 242119,ship 242120,automobile 242121,frog 242122,dog 242123,deer 242124,airplane 242125,airplane 242126,truck 242127,truck 242128,dog 242129,automobile 242130,deer 242131,dog 242132,frog 242133,deer 242134,dog 242135,deer 242136,truck 242137,horse 242138,horse 242139,airplane 242140,cat 242141,cat 242142,deer 242143,deer 242144,dog 242145,cat 242146,cat 242147,ship 242148,horse 242149,frog 242150,frog 242151,ship 242152,cat 242153,deer 242154,automobile 242155,ship 242156,cat 242157,truck 242158,cat 242159,cat 242160,cat 242161,ship 242162,truck 242163,frog 242164,horse 242165,deer 242166,truck 242167,ship 242168,truck 242169,horse 242170,horse 242171,dog 242172,truck 242173,airplane 242174,bird 242175,cat 242176,deer 242177,cat 242178,deer 242179,horse 242180,truck 242181,cat 242182,horse 242183,dog 242184,bird 242185,deer 242186,deer 242187,frog 242188,cat 242189,airplane 242190,dog 242191,airplane 242192,deer 242193,dog 242194,bird 242195,deer 242196,bird 242197,truck 242198,deer 242199,horse 242200,cat 242201,cat 242202,dog 242203,automobile 242204,truck 242205,horse 242206,automobile 242207,bird 242208,frog 242209,truck 242210,ship 242211,automobile 242212,frog 242213,cat 242214,cat 242215,horse 242216,ship 242217,frog 242218,deer 242219,frog 242220,bird 242221,dog 242222,frog 242223,truck 242224,deer 242225,bird 242226,frog 242227,dog 242228,airplane 242229,deer 242230,deer 242231,deer 242232,automobile 242233,frog 242234,dog 242235,automobile 242236,truck 242237,deer 242238,airplane 242239,cat 242240,ship 242241,dog 242242,ship 242243,airplane 242244,dog 242245,ship 242246,cat 242247,cat 242248,cat 242249,horse 242250,automobile 242251,frog 242252,deer 242253,dog 242254,horse 242255,airplane 242256,cat 242257,airplane 242258,airplane 242259,frog 242260,dog 242261,cat 242262,dog 242263,horse 242264,frog 242265,ship 242266,ship 242267,deer 242268,dog 242269,horse 242270,dog 242271,frog 242272,cat 242273,cat 242274,frog 242275,ship 242276,horse 242277,truck 242278,truck 242279,cat 242280,bird 242281,cat 242282,horse 242283,frog 242284,dog 242285,frog 242286,deer 242287,ship 242288,deer 242289,dog 242290,dog 242291,cat 242292,deer 242293,horse 242294,ship 242295,dog 242296,deer 242297,truck 242298,automobile 242299,dog 242300,cat 242301,airplane 242302,frog 242303,bird 242304,bird 242305,dog 242306,frog 242307,frog 242308,frog 242309,airplane 242310,bird 242311,frog 242312,airplane 242313,deer 242314,dog 242315,dog 242316,ship 242317,cat 242318,ship 242319,bird 242320,automobile 242321,horse 242322,airplane 242323,dog 242324,cat 242325,horse 242326,airplane 242327,dog 242328,automobile 242329,bird 242330,automobile 242331,cat 242332,bird 242333,deer 242334,frog 242335,deer 242336,automobile 242337,cat 242338,cat 242339,dog 242340,truck 242341,cat 242342,dog 242343,truck 242344,bird 242345,bird 242346,horse 242347,frog 242348,ship 242349,horse 242350,horse 242351,bird 242352,bird 242353,airplane 242354,dog 242355,bird 242356,ship 242357,airplane 242358,frog 242359,frog 242360,frog 242361,dog 242362,frog 242363,deer 242364,deer 242365,bird 242366,dog 242367,horse 242368,airplane 242369,dog 242370,truck 242371,cat 242372,dog 242373,ship 242374,truck 242375,ship 242376,truck 242377,bird 242378,truck 242379,truck 242380,frog 242381,cat 242382,cat 242383,cat 242384,truck 242385,dog 242386,bird 242387,airplane 242388,automobile 242389,deer 242390,horse 242391,bird 242392,automobile 242393,deer 242394,cat 242395,truck 242396,bird 242397,truck 242398,cat 242399,automobile 242400,dog 242401,cat 242402,truck 242403,dog 242404,bird 242405,cat 242406,bird 242407,dog 242408,dog 242409,ship 242410,deer 242411,cat 242412,ship 242413,cat 242414,deer 242415,deer 242416,horse 242417,dog 242418,truck 242419,deer 242420,truck 242421,dog 242422,automobile 242423,dog 242424,dog 242425,horse 242426,dog 242427,cat 242428,automobile 242429,bird 242430,deer 242431,ship 242432,airplane 242433,truck 242434,ship 242435,automobile 242436,frog 242437,cat 242438,airplane 242439,automobile 242440,dog 242441,dog 242442,automobile 242443,airplane 242444,airplane 242445,frog 242446,truck 242447,automobile 242448,cat 242449,automobile 242450,frog 242451,dog 242452,horse 242453,deer 242454,bird 242455,horse 242456,dog 242457,deer 242458,frog 242459,automobile 242460,deer 242461,cat 242462,truck 242463,cat 242464,truck 242465,dog 242466,frog 242467,airplane 242468,airplane 242469,horse 242470,airplane 242471,truck 242472,truck 242473,frog 242474,ship 242475,dog 242476,ship 242477,cat 242478,deer 242479,frog 242480,dog 242481,airplane 242482,cat 242483,cat 242484,cat 242485,cat 242486,automobile 242487,ship 242488,dog 242489,cat 242490,horse 242491,deer 242492,bird 242493,airplane 242494,bird 242495,airplane 242496,deer 242497,horse 242498,dog 242499,airplane 242500,truck 242501,airplane 242502,automobile 242503,frog 242504,cat 242505,deer 242506,bird 242507,cat 242508,dog 242509,bird 242510,automobile 242511,cat 242512,dog 242513,ship 242514,dog 242515,truck 242516,truck 242517,airplane 242518,truck 242519,frog 242520,ship 242521,deer 242522,horse 242523,airplane 242524,truck 242525,airplane 242526,truck 242527,cat 242528,airplane 242529,dog 242530,bird 242531,bird 242532,dog 242533,ship 242534,truck 242535,truck 242536,cat 242537,deer 242538,frog 242539,frog 242540,automobile 242541,deer 242542,ship 242543,automobile 242544,ship 242545,deer 242546,airplane 242547,airplane 242548,dog 242549,airplane 242550,truck 242551,ship 242552,cat 242553,cat 242554,automobile 242555,dog 242556,airplane 242557,truck 242558,horse 242559,dog 242560,deer 242561,ship 242562,automobile 242563,cat 242564,frog 242565,truck 242566,deer 242567,ship 242568,deer 242569,dog 242570,ship 242571,cat 242572,deer 242573,horse 242574,ship 242575,frog 242576,automobile 242577,truck 242578,bird 242579,deer 242580,cat 242581,frog 242582,deer 242583,cat 242584,frog 242585,airplane 242586,cat 242587,bird 242588,cat 242589,cat 242590,airplane 242591,bird 242592,dog 242593,truck 242594,deer 242595,cat 242596,ship 242597,frog 242598,truck 242599,deer 242600,deer 242601,bird 242602,cat 242603,deer 242604,cat 242605,truck 242606,frog 242607,airplane 242608,deer 242609,cat 242610,frog 242611,ship 242612,frog 242613,cat 242614,deer 242615,truck 242616,bird 242617,dog 242618,automobile 242619,deer 242620,airplane 242621,cat 242622,frog 242623,dog 242624,deer 242625,bird 242626,dog 242627,frog 242628,ship 242629,horse 242630,dog 242631,frog 242632,truck 242633,truck 242634,deer 242635,frog 242636,horse 242637,frog 242638,truck 242639,cat 242640,airplane 242641,cat 242642,dog 242643,bird 242644,bird 242645,horse 242646,cat 242647,airplane 242648,deer 242649,horse 242650,automobile 242651,truck 242652,automobile 242653,horse 242654,automobile 242655,deer 242656,ship 242657,frog 242658,dog 242659,automobile 242660,cat 242661,truck 242662,bird 242663,bird 242664,airplane 242665,truck 242666,automobile 242667,frog 242668,frog 242669,cat 242670,ship 242671,deer 242672,airplane 242673,automobile 242674,ship 242675,bird 242676,bird 242677,truck 242678,frog 242679,horse 242680,automobile 242681,cat 242682,truck 242683,cat 242684,horse 242685,frog 242686,ship 242687,horse 242688,horse 242689,bird 242690,cat 242691,dog 242692,dog 242693,dog 242694,dog 242695,bird 242696,horse 242697,automobile 242698,dog 242699,bird 242700,bird 242701,truck 242702,dog 242703,cat 242704,cat 242705,airplane 242706,cat 242707,truck 242708,cat 242709,automobile 242710,airplane 242711,dog 242712,automobile 242713,deer 242714,truck 242715,ship 242716,ship 242717,deer 242718,truck 242719,truck 242720,cat 242721,horse 242722,truck 242723,bird 242724,airplane 242725,deer 242726,dog 242727,cat 242728,dog 242729,cat 242730,truck 242731,deer 242732,frog 242733,automobile 242734,frog 242735,cat 242736,horse 242737,bird 242738,deer 242739,bird 242740,automobile 242741,frog 242742,frog 242743,cat 242744,bird 242745,automobile 242746,airplane 242747,dog 242748,dog 242749,cat 242750,horse 242751,ship 242752,truck 242753,truck 242754,truck 242755,automobile 242756,cat 242757,cat 242758,cat 242759,horse 242760,ship 242761,frog 242762,airplane 242763,deer 242764,horse 242765,cat 242766,automobile 242767,horse 242768,truck 242769,cat 242770,airplane 242771,deer 242772,automobile 242773,horse 242774,horse 242775,airplane 242776,truck 242777,ship 242778,ship 242779,dog 242780,ship 242781,bird 242782,bird 242783,truck 242784,bird 242785,automobile 242786,airplane 242787,cat 242788,frog 242789,deer 242790,cat 242791,truck 242792,dog 242793,dog 242794,cat 242795,deer 242796,frog 242797,dog 242798,truck 242799,frog 242800,dog 242801,ship 242802,deer 242803,deer 242804,truck 242805,ship 242806,automobile 242807,dog 242808,frog 242809,frog 242810,frog 242811,airplane 242812,dog 242813,deer 242814,airplane 242815,truck 242816,deer 242817,deer 242818,airplane 242819,truck 242820,truck 242821,dog 242822,automobile 242823,frog 242824,horse 242825,bird 242826,cat 242827,ship 242828,airplane 242829,deer 242830,deer 242831,deer 242832,ship 242833,horse 242834,deer 242835,frog 242836,cat 242837,truck 242838,airplane 242839,automobile 242840,bird 242841,dog 242842,ship 242843,deer 242844,horse 242845,automobile 242846,automobile 242847,deer 242848,automobile 242849,dog 242850,deer 242851,bird 242852,deer 242853,truck 242854,ship 242855,deer 242856,bird 242857,cat 242858,frog 242859,frog 242860,airplane 242861,cat 242862,ship 242863,truck 242864,cat 242865,frog 242866,bird 242867,airplane 242868,deer 242869,airplane 242870,automobile 242871,airplane 242872,frog 242873,bird 242874,bird 242875,cat 242876,dog 242877,automobile 242878,automobile 242879,airplane 242880,cat 242881,frog 242882,cat 242883,cat 242884,frog 242885,airplane 242886,horse 242887,truck 242888,frog 242889,airplane 242890,truck 242891,deer 242892,cat 242893,horse 242894,deer 242895,ship 242896,truck 242897,dog 242898,dog 242899,truck 242900,truck 242901,cat 242902,bird 242903,dog 242904,frog 242905,deer 242906,bird 242907,dog 242908,horse 242909,frog 242910,ship 242911,dog 242912,cat 242913,frog 242914,automobile 242915,ship 242916,dog 242917,truck 242918,frog 242919,bird 242920,frog 242921,deer 242922,frog 242923,frog 242924,ship 242925,cat 242926,dog 242927,frog 242928,automobile 242929,frog 242930,airplane 242931,frog 242932,deer 242933,dog 242934,deer 242935,automobile 242936,airplane 242937,horse 242938,cat 242939,deer 242940,ship 242941,dog 242942,cat 242943,bird 242944,frog 242945,ship 242946,truck 242947,truck 242948,truck 242949,bird 242950,dog 242951,ship 242952,horse 242953,horse 242954,airplane 242955,cat 242956,bird 242957,truck 242958,truck 242959,deer 242960,horse 242961,frog 242962,truck 242963,automobile 242964,truck 242965,truck 242966,deer 242967,frog 242968,ship 242969,truck 242970,deer 242971,truck 242972,airplane 242973,deer 242974,deer 242975,frog 242976,deer 242977,frog 242978,cat 242979,cat 242980,bird 242981,dog 242982,cat 242983,truck 242984,cat 242985,ship 242986,airplane 242987,dog 242988,dog 242989,cat 242990,cat 242991,dog 242992,truck 242993,frog 242994,frog 242995,airplane 242996,airplane 242997,ship 242998,deer 242999,frog 243000,deer 243001,horse 243002,horse 243003,horse 243004,deer 243005,dog 243006,automobile 243007,bird 243008,truck 243009,cat 243010,deer 243011,horse 243012,bird 243013,bird 243014,horse 243015,cat 243016,truck 243017,bird 243018,cat 243019,bird 243020,cat 243021,dog 243022,airplane 243023,bird 243024,bird 243025,deer 243026,bird 243027,frog 243028,bird 243029,ship 243030,dog 243031,cat 243032,automobile 243033,bird 243034,truck 243035,ship 243036,airplane 243037,deer 243038,bird 243039,frog 243040,cat 243041,dog 243042,airplane 243043,automobile 243044,dog 243045,automobile 243046,frog 243047,bird 243048,frog 243049,frog 243050,bird 243051,truck 243052,cat 243053,cat 243054,airplane 243055,airplane 243056,truck 243057,deer 243058,frog 243059,frog 243060,dog 243061,automobile 243062,bird 243063,truck 243064,truck 243065,horse 243066,bird 243067,dog 243068,deer 243069,dog 243070,cat 243071,truck 243072,frog 243073,horse 243074,airplane 243075,cat 243076,airplane 243077,automobile 243078,automobile 243079,airplane 243080,horse 243081,bird 243082,frog 243083,horse 243084,automobile 243085,deer 243086,horse 243087,ship 243088,bird 243089,automobile 243090,bird 243091,airplane 243092,ship 243093,airplane 243094,deer 243095,dog 243096,dog 243097,truck 243098,truck 243099,airplane 243100,cat 243101,ship 243102,ship 243103,bird 243104,deer 243105,truck 243106,deer 243107,horse 243108,airplane 243109,frog 243110,automobile 243111,deer 243112,frog 243113,truck 243114,bird 243115,automobile 243116,dog 243117,airplane 243118,airplane 243119,automobile 243120,deer 243121,bird 243122,truck 243123,bird 243124,frog 243125,airplane 243126,frog 243127,cat 243128,truck 243129,automobile 243130,horse 243131,cat 243132,frog 243133,ship 243134,deer 243135,horse 243136,airplane 243137,ship 243138,ship 243139,airplane 243140,bird 243141,ship 243142,frog 243143,frog 243144,deer 243145,cat 243146,truck 243147,bird 243148,truck 243149,ship 243150,frog 243151,bird 243152,cat 243153,horse 243154,automobile 243155,ship 243156,airplane 243157,ship 243158,automobile 243159,automobile 243160,dog 243161,dog 243162,frog 243163,automobile 243164,truck 243165,horse 243166,horse 243167,automobile 243168,dog 243169,deer 243170,truck 243171,ship 243172,ship 243173,truck 243174,cat 243175,cat 243176,ship 243177,frog 243178,airplane 243179,cat 243180,bird 243181,bird 243182,deer 243183,ship 243184,deer 243185,bird 243186,deer 243187,bird 243188,deer 243189,dog 243190,truck 243191,bird 243192,truck 243193,cat 243194,bird 243195,frog 243196,bird 243197,truck 243198,automobile 243199,horse 243200,bird 243201,airplane 243202,automobile 243203,frog 243204,deer 243205,ship 243206,truck 243207,truck 243208,automobile 243209,automobile 243210,automobile 243211,dog 243212,horse 243213,ship 243214,automobile 243215,horse 243216,truck 243217,deer 243218,deer 243219,airplane 243220,cat 243221,airplane 243222,airplane 243223,truck 243224,ship 243225,cat 243226,frog 243227,truck 243228,deer 243229,deer 243230,frog 243231,airplane 243232,ship 243233,frog 243234,cat 243235,cat 243236,dog 243237,frog 243238,horse 243239,frog 243240,automobile 243241,truck 243242,automobile 243243,horse 243244,horse 243245,horse 243246,automobile 243247,horse 243248,horse 243249,horse 243250,deer 243251,automobile 243252,horse 243253,ship 243254,frog 243255,frog 243256,deer 243257,frog 243258,deer 243259,deer 243260,frog 243261,bird 243262,frog 243263,bird 243264,dog 243265,horse 243266,cat 243267,horse 243268,airplane 243269,cat 243270,dog 243271,deer 243272,deer 243273,horse 243274,cat 243275,cat 243276,horse 243277,cat 243278,horse 243279,truck 243280,cat 243281,bird 243282,dog 243283,ship 243284,cat 243285,truck 243286,horse 243287,dog 243288,deer 243289,frog 243290,bird 243291,cat 243292,horse 243293,dog 243294,cat 243295,horse 243296,cat 243297,truck 243298,frog 243299,dog 243300,deer 243301,frog 243302,frog 243303,truck 243304,cat 243305,horse 243306,ship 243307,ship 243308,deer 243309,cat 243310,truck 243311,bird 243312,airplane 243313,frog 243314,horse 243315,airplane 243316,airplane 243317,deer 243318,dog 243319,ship 243320,horse 243321,deer 243322,deer 243323,truck 243324,dog 243325,cat 243326,horse 243327,automobile 243328,dog 243329,deer 243330,cat 243331,deer 243332,frog 243333,horse 243334,truck 243335,frog 243336,frog 243337,truck 243338,ship 243339,truck 243340,frog 243341,dog 243342,deer 243343,airplane 243344,automobile 243345,frog 243346,frog 243347,horse 243348,deer 243349,bird 243350,automobile 243351,airplane 243352,bird 243353,automobile 243354,deer 243355,dog 243356,dog 243357,truck 243358,automobile 243359,cat 243360,airplane 243361,ship 243362,dog 243363,automobile 243364,frog 243365,airplane 243366,dog 243367,deer 243368,automobile 243369,ship 243370,bird 243371,bird 243372,dog 243373,bird 243374,cat 243375,airplane 243376,cat 243377,automobile 243378,truck 243379,deer 243380,truck 243381,airplane 243382,cat 243383,ship 243384,airplane 243385,frog 243386,automobile 243387,frog 243388,frog 243389,dog 243390,frog 243391,bird 243392,airplane 243393,ship 243394,cat 243395,ship 243396,airplane 243397,cat 243398,frog 243399,frog 243400,bird 243401,truck 243402,dog 243403,cat 243404,truck 243405,horse 243406,airplane 243407,dog 243408,ship 243409,airplane 243410,airplane 243411,ship 243412,cat 243413,bird 243414,bird 243415,deer 243416,dog 243417,truck 243418,automobile 243419,horse 243420,deer 243421,horse 243422,horse 243423,frog 243424,horse 243425,deer 243426,truck 243427,dog 243428,airplane 243429,cat 243430,truck 243431,cat 243432,airplane 243433,frog 243434,truck 243435,frog 243436,cat 243437,cat 243438,bird 243439,horse 243440,horse 243441,deer 243442,dog 243443,bird 243444,deer 243445,bird 243446,cat 243447,deer 243448,dog 243449,ship 243450,airplane 243451,ship 243452,truck 243453,airplane 243454,automobile 243455,deer 243456,truck 243457,horse 243458,automobile 243459,dog 243460,horse 243461,truck 243462,frog 243463,ship 243464,cat 243465,cat 243466,deer 243467,cat 243468,automobile 243469,truck 243470,dog 243471,ship 243472,bird 243473,truck 243474,truck 243475,automobile 243476,airplane 243477,deer 243478,dog 243479,horse 243480,dog 243481,bird 243482,frog 243483,airplane 243484,deer 243485,truck 243486,truck 243487,bird 243488,deer 243489,airplane 243490,automobile 243491,deer 243492,cat 243493,deer 243494,frog 243495,cat 243496,deer 243497,bird 243498,cat 243499,frog 243500,bird 243501,horse 243502,frog 243503,deer 243504,ship 243505,airplane 243506,cat 243507,cat 243508,truck 243509,horse 243510,bird 243511,dog 243512,cat 243513,deer 243514,airplane 243515,ship 243516,deer 243517,cat 243518,automobile 243519,horse 243520,bird 243521,truck 243522,frog 243523,cat 243524,frog 243525,automobile 243526,truck 243527,dog 243528,horse 243529,ship 243530,dog 243531,frog 243532,frog 243533,deer 243534,truck 243535,cat 243536,dog 243537,deer 243538,bird 243539,dog 243540,deer 243541,truck 243542,horse 243543,truck 243544,deer 243545,bird 243546,dog 243547,ship 243548,bird 243549,truck 243550,frog 243551,bird 243552,ship 243553,airplane 243554,horse 243555,frog 243556,truck 243557,truck 243558,horse 243559,dog 243560,airplane 243561,cat 243562,automobile 243563,truck 243564,cat 243565,frog 243566,truck 243567,truck 243568,deer 243569,automobile 243570,truck 243571,frog 243572,automobile 243573,ship 243574,cat 243575,dog 243576,automobile 243577,deer 243578,bird 243579,deer 243580,frog 243581,dog 243582,cat 243583,frog 243584,deer 243585,airplane 243586,deer 243587,cat 243588,ship 243589,bird 243590,horse 243591,ship 243592,deer 243593,airplane 243594,ship 243595,horse 243596,deer 243597,deer 243598,dog 243599,frog 243600,frog 243601,dog 243602,automobile 243603,deer 243604,dog 243605,cat 243606,truck 243607,truck 243608,bird 243609,automobile 243610,bird 243611,truck 243612,horse 243613,cat 243614,frog 243615,ship 243616,automobile 243617,cat 243618,automobile 243619,frog 243620,cat 243621,deer 243622,horse 243623,cat 243624,cat 243625,airplane 243626,airplane 243627,deer 243628,ship 243629,truck 243630,horse 243631,bird 243632,airplane 243633,deer 243634,dog 243635,bird 243636,automobile 243637,bird 243638,truck 243639,airplane 243640,airplane 243641,bird 243642,horse 243643,airplane 243644,ship 243645,cat 243646,ship 243647,automobile 243648,dog 243649,deer 243650,horse 243651,ship 243652,airplane 243653,truck 243654,cat 243655,deer 243656,deer 243657,automobile 243658,deer 243659,bird 243660,cat 243661,cat 243662,deer 243663,frog 243664,bird 243665,frog 243666,airplane 243667,bird 243668,truck 243669,truck 243670,deer 243671,deer 243672,ship 243673,automobile 243674,horse 243675,cat 243676,truck 243677,frog 243678,airplane 243679,truck 243680,dog 243681,horse 243682,dog 243683,ship 243684,cat 243685,deer 243686,cat 243687,deer 243688,deer 243689,ship 243690,truck 243691,cat 243692,bird 243693,deer 243694,dog 243695,frog 243696,dog 243697,automobile 243698,deer 243699,cat 243700,horse 243701,horse 243702,horse 243703,frog 243704,ship 243705,horse 243706,dog 243707,deer 243708,cat 243709,frog 243710,frog 243711,dog 243712,deer 243713,deer 243714,truck 243715,dog 243716,frog 243717,deer 243718,bird 243719,cat 243720,bird 243721,bird 243722,frog 243723,automobile 243724,dog 243725,frog 243726,frog 243727,cat 243728,airplane 243729,automobile 243730,dog 243731,ship 243732,cat 243733,bird 243734,truck 243735,truck 243736,truck 243737,frog 243738,ship 243739,automobile 243740,deer 243741,airplane 243742,bird 243743,cat 243744,dog 243745,deer 243746,truck 243747,cat 243748,horse 243749,deer 243750,automobile 243751,automobile 243752,ship 243753,dog 243754,deer 243755,deer 243756,dog 243757,bird 243758,airplane 243759,horse 243760,bird 243761,airplane 243762,airplane 243763,dog 243764,bird 243765,bird 243766,cat 243767,frog 243768,bird 243769,airplane 243770,horse 243771,horse 243772,dog 243773,bird 243774,airplane 243775,truck 243776,airplane 243777,ship 243778,automobile 243779,ship 243780,frog 243781,automobile 243782,automobile 243783,truck 243784,dog 243785,truck 243786,bird 243787,truck 243788,airplane 243789,airplane 243790,airplane 243791,automobile 243792,bird 243793,truck 243794,ship 243795,dog 243796,horse 243797,dog 243798,airplane 243799,airplane 243800,bird 243801,frog 243802,deer 243803,horse 243804,frog 243805,deer 243806,cat 243807,horse 243808,ship 243809,deer 243810,ship 243811,frog 243812,frog 243813,ship 243814,ship 243815,truck 243816,cat 243817,airplane 243818,cat 243819,truck 243820,horse 243821,frog 243822,cat 243823,dog 243824,cat 243825,airplane 243826,automobile 243827,airplane 243828,dog 243829,frog 243830,horse 243831,frog 243832,deer 243833,frog 243834,deer 243835,truck 243836,airplane 243837,cat 243838,ship 243839,deer 243840,cat 243841,frog 243842,automobile 243843,ship 243844,ship 243845,dog 243846,bird 243847,airplane 243848,cat 243849,cat 243850,horse 243851,airplane 243852,truck 243853,horse 243854,automobile 243855,cat 243856,bird 243857,truck 243858,cat 243859,truck 243860,truck 243861,dog 243862,truck 243863,bird 243864,airplane 243865,airplane 243866,horse 243867,deer 243868,truck 243869,deer 243870,frog 243871,bird 243872,bird 243873,dog 243874,deer 243875,automobile 243876,cat 243877,dog 243878,automobile 243879,frog 243880,cat 243881,frog 243882,automobile 243883,deer 243884,cat 243885,cat 243886,airplane 243887,frog 243888,frog 243889,frog 243890,truck 243891,airplane 243892,deer 243893,truck 243894,dog 243895,airplane 243896,frog 243897,cat 243898,bird 243899,deer 243900,cat 243901,automobile 243902,dog 243903,dog 243904,cat 243905,deer 243906,truck 243907,deer 243908,dog 243909,cat 243910,bird 243911,bird 243912,dog 243913,deer 243914,frog 243915,dog 243916,deer 243917,cat 243918,bird 243919,horse 243920,cat 243921,ship 243922,dog 243923,horse 243924,deer 243925,ship 243926,horse 243927,bird 243928,frog 243929,dog 243930,deer 243931,automobile 243932,airplane 243933,airplane 243934,deer 243935,deer 243936,deer 243937,dog 243938,truck 243939,cat 243940,cat 243941,frog 243942,cat 243943,truck 243944,automobile 243945,truck 243946,airplane 243947,bird 243948,deer 243949,deer 243950,dog 243951,automobile 243952,deer 243953,ship 243954,airplane 243955,automobile 243956,airplane 243957,frog 243958,ship 243959,deer 243960,horse 243961,cat 243962,dog 243963,deer 243964,deer 243965,truck 243966,frog 243967,airplane 243968,bird 243969,horse 243970,cat 243971,truck 243972,deer 243973,bird 243974,frog 243975,dog 243976,truck 243977,cat 243978,frog 243979,airplane 243980,horse 243981,automobile 243982,airplane 243983,deer 243984,ship 243985,cat 243986,truck 243987,frog 243988,frog 243989,horse 243990,cat 243991,deer 243992,bird 243993,deer 243994,frog 243995,automobile 243996,horse 243997,ship 243998,ship 243999,airplane 244000,truck 244001,horse 244002,dog 244003,cat 244004,bird 244005,automobile 244006,ship 244007,truck 244008,dog 244009,frog 244010,horse 244011,truck 244012,bird 244013,dog 244014,dog 244015,frog 244016,horse 244017,airplane 244018,frog 244019,cat 244020,dog 244021,frog 244022,automobile 244023,truck 244024,dog 244025,deer 244026,bird 244027,automobile 244028,cat 244029,horse 244030,ship 244031,deer 244032,airplane 244033,airplane 244034,cat 244035,dog 244036,truck 244037,deer 244038,airplane 244039,deer 244040,dog 244041,automobile 244042,dog 244043,airplane 244044,truck 244045,dog 244046,automobile 244047,airplane 244048,dog 244049,bird 244050,automobile 244051,ship 244052,dog 244053,bird 244054,dog 244055,dog 244056,automobile 244057,cat 244058,truck 244059,cat 244060,frog 244061,frog 244062,cat 244063,bird 244064,airplane 244065,cat 244066,dog 244067,frog 244068,airplane 244069,truck 244070,dog 244071,frog 244072,automobile 244073,automobile 244074,cat 244075,horse 244076,truck 244077,airplane 244078,truck 244079,deer 244080,automobile 244081,bird 244082,truck 244083,airplane 244084,deer 244085,horse 244086,airplane 244087,automobile 244088,dog 244089,frog 244090,deer 244091,deer 244092,automobile 244093,cat 244094,bird 244095,cat 244096,ship 244097,horse 244098,ship 244099,dog 244100,cat 244101,dog 244102,deer 244103,ship 244104,truck 244105,deer 244106,cat 244107,cat 244108,horse 244109,horse 244110,frog 244111,deer 244112,automobile 244113,dog 244114,truck 244115,automobile 244116,cat 244117,automobile 244118,horse 244119,ship 244120,cat 244121,deer 244122,dog 244123,truck 244124,horse 244125,ship 244126,frog 244127,bird 244128,deer 244129,deer 244130,horse 244131,bird 244132,cat 244133,ship 244134,deer 244135,cat 244136,deer 244137,truck 244138,ship 244139,bird 244140,automobile 244141,cat 244142,bird 244143,deer 244144,deer 244145,bird 244146,frog 244147,automobile 244148,cat 244149,cat 244150,ship 244151,ship 244152,bird 244153,bird 244154,deer 244155,truck 244156,deer 244157,deer 244158,cat 244159,truck 244160,cat 244161,frog 244162,cat 244163,horse 244164,frog 244165,automobile 244166,truck 244167,airplane 244168,deer 244169,dog 244170,automobile 244171,airplane 244172,frog 244173,airplane 244174,dog 244175,dog 244176,automobile 244177,cat 244178,truck 244179,deer 244180,horse 244181,dog 244182,bird 244183,deer 244184,horse 244185,deer 244186,cat 244187,cat 244188,automobile 244189,cat 244190,airplane 244191,airplane 244192,horse 244193,cat 244194,deer 244195,deer 244196,horse 244197,deer 244198,airplane 244199,automobile 244200,airplane 244201,airplane 244202,frog 244203,deer 244204,cat 244205,frog 244206,frog 244207,dog 244208,frog 244209,horse 244210,automobile 244211,horse 244212,cat 244213,cat 244214,bird 244215,truck 244216,automobile 244217,frog 244218,truck 244219,horse 244220,deer 244221,ship 244222,dog 244223,cat 244224,horse 244225,cat 244226,truck 244227,dog 244228,bird 244229,frog 244230,truck 244231,horse 244232,airplane 244233,automobile 244234,ship 244235,horse 244236,deer 244237,bird 244238,truck 244239,automobile 244240,ship 244241,bird 244242,frog 244243,dog 244244,horse 244245,frog 244246,cat 244247,deer 244248,airplane 244249,dog 244250,cat 244251,horse 244252,frog 244253,automobile 244254,airplane 244255,cat 244256,horse 244257,airplane 244258,horse 244259,frog 244260,cat 244261,airplane 244262,bird 244263,deer 244264,dog 244265,automobile 244266,bird 244267,truck 244268,airplane 244269,truck 244270,cat 244271,dog 244272,dog 244273,dog 244274,deer 244275,deer 244276,deer 244277,automobile 244278,dog 244279,frog 244280,dog 244281,airplane 244282,airplane 244283,frog 244284,dog 244285,airplane 244286,truck 244287,ship 244288,deer 244289,deer 244290,cat 244291,horse 244292,deer 244293,truck 244294,airplane 244295,frog 244296,dog 244297,cat 244298,cat 244299,bird 244300,bird 244301,bird 244302,bird 244303,deer 244304,truck 244305,automobile 244306,cat 244307,horse 244308,automobile 244309,airplane 244310,horse 244311,ship 244312,cat 244313,deer 244314,bird 244315,cat 244316,bird 244317,cat 244318,ship 244319,airplane 244320,airplane 244321,airplane 244322,bird 244323,bird 244324,dog 244325,dog 244326,automobile 244327,ship 244328,cat 244329,cat 244330,airplane 244331,frog 244332,horse 244333,frog 244334,truck 244335,deer 244336,truck 244337,deer 244338,horse 244339,horse 244340,horse 244341,bird 244342,frog 244343,automobile 244344,cat 244345,horse 244346,ship 244347,horse 244348,deer 244349,airplane 244350,airplane 244351,horse 244352,frog 244353,ship 244354,deer 244355,bird 244356,deer 244357,horse 244358,cat 244359,frog 244360,cat 244361,cat 244362,deer 244363,frog 244364,airplane 244365,automobile 244366,truck 244367,deer 244368,dog 244369,dog 244370,frog 244371,cat 244372,ship 244373,ship 244374,truck 244375,automobile 244376,horse 244377,truck 244378,frog 244379,frog 244380,cat 244381,dog 244382,dog 244383,automobile 244384,deer 244385,deer 244386,horse 244387,horse 244388,dog 244389,cat 244390,automobile 244391,deer 244392,deer 244393,cat 244394,deer 244395,cat 244396,bird 244397,cat 244398,cat 244399,truck 244400,dog 244401,dog 244402,airplane 244403,cat 244404,cat 244405,airplane 244406,automobile 244407,airplane 244408,automobile 244409,cat 244410,dog 244411,frog 244412,dog 244413,cat 244414,dog 244415,ship 244416,dog 244417,bird 244418,airplane 244419,horse 244420,bird 244421,ship 244422,deer 244423,dog 244424,truck 244425,bird 244426,automobile 244427,cat 244428,dog 244429,frog 244430,deer 244431,frog 244432,ship 244433,bird 244434,truck 244435,frog 244436,automobile 244437,horse 244438,ship 244439,dog 244440,truck 244441,automobile 244442,ship 244443,deer 244444,bird 244445,airplane 244446,automobile 244447,deer 244448,truck 244449,cat 244450,automobile 244451,automobile 244452,truck 244453,cat 244454,ship 244455,frog 244456,truck 244457,bird 244458,dog 244459,airplane 244460,cat 244461,cat 244462,truck 244463,deer 244464,airplane 244465,frog 244466,frog 244467,bird 244468,deer 244469,truck 244470,airplane 244471,airplane 244472,truck 244473,cat 244474,cat 244475,cat 244476,truck 244477,ship 244478,dog 244479,frog 244480,cat 244481,frog 244482,cat 244483,automobile 244484,bird 244485,ship 244486,bird 244487,bird 244488,bird 244489,automobile 244490,cat 244491,cat 244492,airplane 244493,frog 244494,ship 244495,airplane 244496,truck 244497,truck 244498,truck 244499,truck 244500,horse 244501,cat 244502,automobile 244503,deer 244504,bird 244505,cat 244506,bird 244507,automobile 244508,ship 244509,frog 244510,ship 244511,frog 244512,dog 244513,frog 244514,frog 244515,horse 244516,deer 244517,bird 244518,deer 244519,ship 244520,frog 244521,deer 244522,ship 244523,bird 244524,horse 244525,deer 244526,ship 244527,automobile 244528,truck 244529,dog 244530,truck 244531,automobile 244532,deer 244533,cat 244534,frog 244535,automobile 244536,horse 244537,airplane 244538,dog 244539,deer 244540,cat 244541,horse 244542,automobile 244543,deer 244544,cat 244545,airplane 244546,bird 244547,dog 244548,cat 244549,deer 244550,deer 244551,truck 244552,deer 244553,frog 244554,bird 244555,cat 244556,frog 244557,airplane 244558,cat 244559,airplane 244560,cat 244561,airplane 244562,airplane 244563,dog 244564,frog 244565,airplane 244566,bird 244567,airplane 244568,frog 244569,cat 244570,automobile 244571,automobile 244572,automobile 244573,deer 244574,truck 244575,truck 244576,cat 244577,horse 244578,deer 244579,frog 244580,frog 244581,frog 244582,ship 244583,airplane 244584,cat 244585,airplane 244586,bird 244587,deer 244588,deer 244589,frog 244590,truck 244591,truck 244592,truck 244593,frog 244594,deer 244595,automobile 244596,deer 244597,horse 244598,ship 244599,frog 244600,horse 244601,truck 244602,cat 244603,cat 244604,cat 244605,frog 244606,automobile 244607,cat 244608,frog 244609,automobile 244610,cat 244611,cat 244612,ship 244613,deer 244614,frog 244615,horse 244616,truck 244617,deer 244618,airplane 244619,deer 244620,bird 244621,ship 244622,ship 244623,bird 244624,truck 244625,airplane 244626,horse 244627,frog 244628,truck 244629,horse 244630,bird 244631,dog 244632,frog 244633,airplane 244634,automobile 244635,deer 244636,bird 244637,truck 244638,frog 244639,airplane 244640,deer 244641,dog 244642,cat 244643,bird 244644,dog 244645,cat 244646,airplane 244647,airplane 244648,airplane 244649,dog 244650,automobile 244651,frog 244652,automobile 244653,cat 244654,dog 244655,truck 244656,cat 244657,horse 244658,frog 244659,frog 244660,truck 244661,deer 244662,frog 244663,frog 244664,frog 244665,horse 244666,truck 244667,dog 244668,deer 244669,cat 244670,horse 244671,truck 244672,horse 244673,dog 244674,airplane 244675,frog 244676,dog 244677,horse 244678,frog 244679,horse 244680,deer 244681,automobile 244682,horse 244683,bird 244684,airplane 244685,dog 244686,airplane 244687,airplane 244688,cat 244689,bird 244690,deer 244691,deer 244692,frog 244693,dog 244694,truck 244695,truck 244696,truck 244697,automobile 244698,truck 244699,airplane 244700,deer 244701,automobile 244702,deer 244703,ship 244704,deer 244705,horse 244706,truck 244707,deer 244708,truck 244709,deer 244710,truck 244711,dog 244712,bird 244713,cat 244714,horse 244715,frog 244716,cat 244717,horse 244718,deer 244719,airplane 244720,ship 244721,automobile 244722,bird 244723,horse 244724,truck 244725,deer 244726,frog 244727,airplane 244728,bird 244729,truck 244730,bird 244731,deer 244732,cat 244733,horse 244734,deer 244735,automobile 244736,automobile 244737,airplane 244738,cat 244739,airplane 244740,cat 244741,horse 244742,cat 244743,deer 244744,frog 244745,horse 244746,bird 244747,truck 244748,airplane 244749,horse 244750,deer 244751,frog 244752,cat 244753,cat 244754,airplane 244755,airplane 244756,cat 244757,airplane 244758,deer 244759,dog 244760,deer 244761,airplane 244762,bird 244763,frog 244764,cat 244765,deer 244766,horse 244767,ship 244768,horse 244769,automobile 244770,horse 244771,truck 244772,automobile 244773,dog 244774,deer 244775,automobile 244776,deer 244777,cat 244778,dog 244779,deer 244780,frog 244781,automobile 244782,deer 244783,frog 244784,deer 244785,deer 244786,horse 244787,frog 244788,truck 244789,airplane 244790,dog 244791,airplane 244792,deer 244793,airplane 244794,dog 244795,airplane 244796,bird 244797,ship 244798,frog 244799,cat 244800,ship 244801,horse 244802,truck 244803,airplane 244804,cat 244805,cat 244806,frog 244807,horse 244808,deer 244809,frog 244810,cat 244811,horse 244812,deer 244813,cat 244814,horse 244815,automobile 244816,horse 244817,frog 244818,cat 244819,deer 244820,truck 244821,truck 244822,automobile 244823,dog 244824,cat 244825,truck 244826,bird 244827,bird 244828,cat 244829,truck 244830,deer 244831,truck 244832,dog 244833,cat 244834,deer 244835,ship 244836,automobile 244837,deer 244838,airplane 244839,frog 244840,horse 244841,airplane 244842,airplane 244843,airplane 244844,deer 244845,ship 244846,ship 244847,horse 244848,deer 244849,deer 244850,ship 244851,bird 244852,deer 244853,cat 244854,automobile 244855,cat 244856,ship 244857,frog 244858,frog 244859,truck 244860,frog 244861,horse 244862,frog 244863,frog 244864,bird 244865,cat 244866,truck 244867,dog 244868,airplane 244869,horse 244870,truck 244871,bird 244872,automobile 244873,ship 244874,dog 244875,ship 244876,airplane 244877,airplane 244878,airplane 244879,dog 244880,frog 244881,cat 244882,deer 244883,ship 244884,horse 244885,deer 244886,deer 244887,bird 244888,deer 244889,cat 244890,dog 244891,cat 244892,dog 244893,automobile 244894,airplane 244895,ship 244896,airplane 244897,cat 244898,cat 244899,automobile 244900,airplane 244901,horse 244902,bird 244903,deer 244904,truck 244905,ship 244906,horse 244907,deer 244908,ship 244909,frog 244910,truck 244911,ship 244912,airplane 244913,truck 244914,deer 244915,horse 244916,automobile 244917,automobile 244918,ship 244919,cat 244920,dog 244921,deer 244922,bird 244923,automobile 244924,deer 244925,dog 244926,deer 244927,deer 244928,cat 244929,ship 244930,bird 244931,dog 244932,horse 244933,dog 244934,horse 244935,dog 244936,deer 244937,airplane 244938,automobile 244939,dog 244940,cat 244941,dog 244942,ship 244943,airplane 244944,deer 244945,automobile 244946,deer 244947,horse 244948,horse 244949,ship 244950,dog 244951,horse 244952,horse 244953,bird 244954,deer 244955,deer 244956,frog 244957,horse 244958,cat 244959,frog 244960,deer 244961,airplane 244962,horse 244963,dog 244964,bird 244965,horse 244966,frog 244967,truck 244968,frog 244969,deer 244970,dog 244971,bird 244972,dog 244973,dog 244974,horse 244975,airplane 244976,cat 244977,frog 244978,dog 244979,bird 244980,dog 244981,deer 244982,horse 244983,dog 244984,truck 244985,frog 244986,frog 244987,airplane 244988,ship 244989,cat 244990,bird 244991,bird 244992,deer 244993,bird 244994,frog 244995,horse 244996,cat 244997,frog 244998,deer 244999,dog 245000,dog 245001,cat 245002,bird 245003,truck 245004,horse 245005,truck 245006,airplane 245007,truck 245008,bird 245009,automobile 245010,airplane 245011,dog 245012,horse 245013,dog 245014,truck 245015,horse 245016,deer 245017,cat 245018,dog 245019,horse 245020,ship 245021,cat 245022,bird 245023,bird 245024,deer 245025,dog 245026,bird 245027,bird 245028,truck 245029,truck 245030,bird 245031,deer 245032,horse 245033,deer 245034,truck 245035,automobile 245036,cat 245037,airplane 245038,cat 245039,dog 245040,airplane 245041,bird 245042,frog 245043,horse 245044,bird 245045,deer 245046,deer 245047,truck 245048,bird 245049,automobile 245050,frog 245051,bird 245052,frog 245053,dog 245054,dog 245055,dog 245056,automobile 245057,truck 245058,bird 245059,cat 245060,frog 245061,dog 245062,airplane 245063,truck 245064,truck 245065,deer 245066,cat 245067,cat 245068,airplane 245069,frog 245070,truck 245071,airplane 245072,truck 245073,ship 245074,automobile 245075,dog 245076,airplane 245077,cat 245078,truck 245079,deer 245080,truck 245081,cat 245082,deer 245083,deer 245084,automobile 245085,automobile 245086,horse 245087,bird 245088,truck 245089,frog 245090,ship 245091,deer 245092,deer 245093,frog 245094,frog 245095,automobile 245096,airplane 245097,deer 245098,horse 245099,truck 245100,bird 245101,bird 245102,cat 245103,airplane 245104,automobile 245105,dog 245106,bird 245107,frog 245108,truck 245109,ship 245110,deer 245111,truck 245112,automobile 245113,airplane 245114,cat 245115,ship 245116,dog 245117,horse 245118,deer 245119,automobile 245120,deer 245121,airplane 245122,truck 245123,dog 245124,horse 245125,cat 245126,truck 245127,automobile 245128,deer 245129,bird 245130,ship 245131,truck 245132,bird 245133,cat 245134,deer 245135,truck 245136,ship 245137,ship 245138,frog 245139,deer 245140,horse 245141,dog 245142,bird 245143,cat 245144,dog 245145,dog 245146,ship 245147,airplane 245148,airplane 245149,automobile 245150,horse 245151,dog 245152,ship 245153,horse 245154,horse 245155,bird 245156,deer 245157,deer 245158,bird 245159,truck 245160,dog 245161,deer 245162,truck 245163,frog 245164,frog 245165,deer 245166,dog 245167,truck 245168,ship 245169,dog 245170,airplane 245171,automobile 245172,deer 245173,frog 245174,deer 245175,ship 245176,bird 245177,frog 245178,automobile 245179,truck 245180,deer 245181,bird 245182,ship 245183,airplane 245184,airplane 245185,frog 245186,bird 245187,deer 245188,automobile 245189,automobile 245190,frog 245191,dog 245192,truck 245193,cat 245194,deer 245195,truck 245196,frog 245197,dog 245198,cat 245199,cat 245200,dog 245201,truck 245202,frog 245203,frog 245204,frog 245205,cat 245206,horse 245207,dog 245208,automobile 245209,cat 245210,bird 245211,bird 245212,frog 245213,automobile 245214,bird 245215,dog 245216,bird 245217,ship 245218,cat 245219,cat 245220,airplane 245221,automobile 245222,horse 245223,horse 245224,dog 245225,ship 245226,dog 245227,deer 245228,truck 245229,airplane 245230,ship 245231,ship 245232,deer 245233,cat 245234,airplane 245235,horse 245236,deer 245237,bird 245238,airplane 245239,truck 245240,dog 245241,cat 245242,cat 245243,bird 245244,truck 245245,cat 245246,frog 245247,cat 245248,frog 245249,ship 245250,ship 245251,cat 245252,ship 245253,horse 245254,frog 245255,automobile 245256,cat 245257,truck 245258,cat 245259,ship 245260,ship 245261,automobile 245262,bird 245263,deer 245264,frog 245265,airplane 245266,dog 245267,deer 245268,horse 245269,automobile 245270,deer 245271,deer 245272,frog 245273,automobile 245274,automobile 245275,frog 245276,airplane 245277,truck 245278,deer 245279,frog 245280,airplane 245281,deer 245282,frog 245283,truck 245284,automobile 245285,ship 245286,deer 245287,dog 245288,horse 245289,bird 245290,cat 245291,bird 245292,airplane 245293,cat 245294,bird 245295,cat 245296,cat 245297,dog 245298,ship 245299,cat 245300,horse 245301,dog 245302,bird 245303,deer 245304,dog 245305,frog 245306,cat 245307,ship 245308,dog 245309,cat 245310,frog 245311,airplane 245312,frog 245313,truck 245314,dog 245315,dog 245316,bird 245317,truck 245318,dog 245319,bird 245320,bird 245321,horse 245322,deer 245323,bird 245324,frog 245325,cat 245326,ship 245327,ship 245328,cat 245329,truck 245330,frog 245331,cat 245332,airplane 245333,truck 245334,automobile 245335,dog 245336,horse 245337,bird 245338,automobile 245339,airplane 245340,horse 245341,ship 245342,frog 245343,ship 245344,airplane 245345,dog 245346,cat 245347,deer 245348,truck 245349,bird 245350,truck 245351,horse 245352,dog 245353,horse 245354,deer 245355,frog 245356,cat 245357,dog 245358,automobile 245359,frog 245360,dog 245361,airplane 245362,truck 245363,frog 245364,ship 245365,ship 245366,deer 245367,truck 245368,airplane 245369,frog 245370,horse 245371,dog 245372,bird 245373,deer 245374,airplane 245375,truck 245376,cat 245377,dog 245378,frog 245379,horse 245380,airplane 245381,bird 245382,cat 245383,cat 245384,ship 245385,truck 245386,bird 245387,airplane 245388,dog 245389,deer 245390,cat 245391,bird 245392,bird 245393,automobile 245394,deer 245395,airplane 245396,airplane 245397,bird 245398,cat 245399,cat 245400,automobile 245401,bird 245402,cat 245403,airplane 245404,airplane 245405,deer 245406,dog 245407,automobile 245408,ship 245409,bird 245410,airplane 245411,automobile 245412,ship 245413,horse 245414,automobile 245415,frog 245416,bird 245417,dog 245418,truck 245419,ship 245420,frog 245421,horse 245422,deer 245423,ship 245424,airplane 245425,airplane 245426,truck 245427,automobile 245428,horse 245429,horse 245430,bird 245431,deer 245432,cat 245433,deer 245434,deer 245435,bird 245436,horse 245437,airplane 245438,deer 245439,dog 245440,deer 245441,cat 245442,deer 245443,deer 245444,cat 245445,cat 245446,horse 245447,cat 245448,horse 245449,deer 245450,dog 245451,airplane 245452,cat 245453,cat 245454,cat 245455,deer 245456,frog 245457,ship 245458,deer 245459,horse 245460,bird 245461,dog 245462,automobile 245463,airplane 245464,airplane 245465,dog 245466,frog 245467,airplane 245468,dog 245469,frog 245470,deer 245471,cat 245472,ship 245473,airplane 245474,ship 245475,horse 245476,dog 245477,dog 245478,cat 245479,horse 245480,truck 245481,dog 245482,dog 245483,ship 245484,truck 245485,truck 245486,dog 245487,cat 245488,deer 245489,automobile 245490,frog 245491,dog 245492,cat 245493,bird 245494,automobile 245495,bird 245496,bird 245497,horse 245498,airplane 245499,cat 245500,dog 245501,frog 245502,automobile 245503,automobile 245504,truck 245505,truck 245506,cat 245507,cat 245508,bird 245509,truck 245510,truck 245511,cat 245512,dog 245513,ship 245514,frog 245515,dog 245516,ship 245517,dog 245518,deer 245519,airplane 245520,airplane 245521,truck 245522,airplane 245523,bird 245524,horse 245525,automobile 245526,automobile 245527,cat 245528,dog 245529,frog 245530,ship 245531,deer 245532,ship 245533,truck 245534,cat 245535,ship 245536,frog 245537,truck 245538,horse 245539,truck 245540,dog 245541,frog 245542,cat 245543,truck 245544,automobile 245545,frog 245546,airplane 245547,horse 245548,frog 245549,frog 245550,cat 245551,cat 245552,horse 245553,frog 245554,truck 245555,dog 245556,bird 245557,airplane 245558,dog 245559,frog 245560,frog 245561,automobile 245562,deer 245563,frog 245564,ship 245565,dog 245566,dog 245567,cat 245568,deer 245569,cat 245570,truck 245571,cat 245572,deer 245573,cat 245574,ship 245575,ship 245576,frog 245577,airplane 245578,dog 245579,deer 245580,dog 245581,truck 245582,horse 245583,ship 245584,ship 245585,horse 245586,airplane 245587,ship 245588,airplane 245589,ship 245590,horse 245591,ship 245592,cat 245593,automobile 245594,horse 245595,dog 245596,truck 245597,bird 245598,cat 245599,cat 245600,deer 245601,frog 245602,frog 245603,cat 245604,frog 245605,bird 245606,horse 245607,frog 245608,deer 245609,dog 245610,dog 245611,ship 245612,truck 245613,airplane 245614,bird 245615,ship 245616,truck 245617,cat 245618,dog 245619,truck 245620,cat 245621,cat 245622,truck 245623,bird 245624,cat 245625,dog 245626,horse 245627,bird 245628,dog 245629,dog 245630,bird 245631,automobile 245632,ship 245633,automobile 245634,cat 245635,cat 245636,deer 245637,truck 245638,truck 245639,cat 245640,bird 245641,ship 245642,bird 245643,ship 245644,horse 245645,frog 245646,airplane 245647,cat 245648,deer 245649,deer 245650,bird 245651,automobile 245652,deer 245653,deer 245654,bird 245655,horse 245656,cat 245657,ship 245658,truck 245659,cat 245660,deer 245661,ship 245662,dog 245663,dog 245664,bird 245665,ship 245666,airplane 245667,cat 245668,bird 245669,frog 245670,frog 245671,bird 245672,airplane 245673,horse 245674,bird 245675,deer 245676,bird 245677,cat 245678,ship 245679,airplane 245680,truck 245681,ship 245682,truck 245683,deer 245684,deer 245685,ship 245686,truck 245687,dog 245688,horse 245689,bird 245690,cat 245691,bird 245692,truck 245693,frog 245694,bird 245695,deer 245696,deer 245697,frog 245698,deer 245699,airplane 245700,deer 245701,airplane 245702,bird 245703,horse 245704,bird 245705,horse 245706,horse 245707,cat 245708,bird 245709,horse 245710,automobile 245711,cat 245712,ship 245713,cat 245714,frog 245715,airplane 245716,horse 245717,frog 245718,bird 245719,dog 245720,dog 245721,cat 245722,deer 245723,automobile 245724,deer 245725,airplane 245726,truck 245727,frog 245728,frog 245729,horse 245730,automobile 245731,bird 245732,cat 245733,truck 245734,truck 245735,deer 245736,ship 245737,dog 245738,automobile 245739,deer 245740,ship 245741,airplane 245742,cat 245743,airplane 245744,deer 245745,automobile 245746,deer 245747,ship 245748,frog 245749,frog 245750,ship 245751,airplane 245752,deer 245753,deer 245754,truck 245755,cat 245756,deer 245757,deer 245758,airplane 245759,dog 245760,truck 245761,deer 245762,ship 245763,airplane 245764,deer 245765,cat 245766,ship 245767,airplane 245768,dog 245769,cat 245770,deer 245771,bird 245772,bird 245773,ship 245774,horse 245775,frog 245776,frog 245777,airplane 245778,frog 245779,deer 245780,bird 245781,cat 245782,ship 245783,ship 245784,truck 245785,dog 245786,ship 245787,airplane 245788,truck 245789,dog 245790,frog 245791,airplane 245792,deer 245793,deer 245794,frog 245795,ship 245796,cat 245797,automobile 245798,deer 245799,bird 245800,automobile 245801,frog 245802,cat 245803,horse 245804,truck 245805,automobile 245806,ship 245807,dog 245808,ship 245809,airplane 245810,deer 245811,airplane 245812,ship 245813,bird 245814,ship 245815,ship 245816,frog 245817,truck 245818,dog 245819,cat 245820,truck 245821,deer 245822,dog 245823,cat 245824,frog 245825,automobile 245826,frog 245827,cat 245828,cat 245829,horse 245830,deer 245831,frog 245832,airplane 245833,cat 245834,bird 245835,horse 245836,deer 245837,bird 245838,truck 245839,ship 245840,automobile 245841,bird 245842,frog 245843,frog 245844,truck 245845,airplane 245846,bird 245847,automobile 245848,cat 245849,ship 245850,truck 245851,ship 245852,ship 245853,ship 245854,ship 245855,deer 245856,cat 245857,bird 245858,truck 245859,bird 245860,dog 245861,frog 245862,frog 245863,horse 245864,frog 245865,deer 245866,frog 245867,deer 245868,horse 245869,bird 245870,airplane 245871,ship 245872,deer 245873,deer 245874,deer 245875,horse 245876,horse 245877,cat 245878,truck 245879,cat 245880,bird 245881,dog 245882,deer 245883,automobile 245884,bird 245885,frog 245886,airplane 245887,horse 245888,truck 245889,frog 245890,truck 245891,horse 245892,airplane 245893,cat 245894,horse 245895,cat 245896,truck 245897,deer 245898,ship 245899,cat 245900,dog 245901,automobile 245902,deer 245903,airplane 245904,deer 245905,deer 245906,truck 245907,automobile 245908,ship 245909,automobile 245910,ship 245911,deer 245912,cat 245913,automobile 245914,truck 245915,ship 245916,cat 245917,cat 245918,dog 245919,automobile 245920,cat 245921,airplane 245922,airplane 245923,bird 245924,horse 245925,airplane 245926,bird 245927,bird 245928,frog 245929,cat 245930,dog 245931,cat 245932,airplane 245933,ship 245934,frog 245935,frog 245936,airplane 245937,cat 245938,airplane 245939,horse 245940,cat 245941,frog 245942,horse 245943,deer 245944,ship 245945,ship 245946,cat 245947,bird 245948,automobile 245949,dog 245950,deer 245951,truck 245952,cat 245953,cat 245954,frog 245955,horse 245956,dog 245957,bird 245958,airplane 245959,cat 245960,dog 245961,horse 245962,airplane 245963,airplane 245964,airplane 245965,cat 245966,truck 245967,ship 245968,deer 245969,deer 245970,bird 245971,airplane 245972,frog 245973,cat 245974,frog 245975,cat 245976,frog 245977,dog 245978,dog 245979,automobile 245980,bird 245981,cat 245982,bird 245983,horse 245984,dog 245985,bird 245986,deer 245987,ship 245988,deer 245989,automobile 245990,frog 245991,truck 245992,cat 245993,truck 245994,frog 245995,deer 245996,ship 245997,automobile 245998,horse 245999,ship 246000,cat 246001,cat 246002,bird 246003,cat 246004,horse 246005,airplane 246006,deer 246007,automobile 246008,deer 246009,deer 246010,frog 246011,dog 246012,dog 246013,bird 246014,ship 246015,horse 246016,deer 246017,bird 246018,frog 246019,deer 246020,truck 246021,cat 246022,dog 246023,truck 246024,ship 246025,deer 246026,airplane 246027,dog 246028,dog 246029,cat 246030,bird 246031,truck 246032,deer 246033,frog 246034,bird 246035,ship 246036,deer 246037,deer 246038,cat 246039,bird 246040,truck 246041,dog 246042,ship 246043,frog 246044,dog 246045,horse 246046,frog 246047,ship 246048,horse 246049,airplane 246050,airplane 246051,ship 246052,dog 246053,truck 246054,airplane 246055,deer 246056,cat 246057,airplane 246058,truck 246059,deer 246060,bird 246061,cat 246062,frog 246063,cat 246064,ship 246065,deer 246066,deer 246067,ship 246068,cat 246069,cat 246070,ship 246071,airplane 246072,deer 246073,ship 246074,deer 246075,frog 246076,airplane 246077,cat 246078,horse 246079,cat 246080,deer 246081,deer 246082,frog 246083,automobile 246084,cat 246085,automobile 246086,horse 246087,ship 246088,cat 246089,bird 246090,deer 246091,cat 246092,frog 246093,deer 246094,dog 246095,dog 246096,ship 246097,airplane 246098,truck 246099,horse 246100,bird 246101,truck 246102,bird 246103,cat 246104,deer 246105,deer 246106,ship 246107,airplane 246108,truck 246109,truck 246110,ship 246111,horse 246112,automobile 246113,horse 246114,bird 246115,truck 246116,ship 246117,deer 246118,airplane 246119,deer 246120,bird 246121,dog 246122,ship 246123,frog 246124,bird 246125,cat 246126,bird 246127,deer 246128,ship 246129,truck 246130,truck 246131,horse 246132,airplane 246133,deer 246134,dog 246135,ship 246136,dog 246137,automobile 246138,dog 246139,truck 246140,ship 246141,dog 246142,horse 246143,truck 246144,deer 246145,dog 246146,dog 246147,cat 246148,deer 246149,ship 246150,cat 246151,dog 246152,deer 246153,deer 246154,horse 246155,truck 246156,bird 246157,horse 246158,airplane 246159,truck 246160,truck 246161,cat 246162,dog 246163,dog 246164,bird 246165,bird 246166,cat 246167,deer 246168,bird 246169,airplane 246170,bird 246171,frog 246172,cat 246173,airplane 246174,bird 246175,truck 246176,ship 246177,bird 246178,ship 246179,automobile 246180,deer 246181,deer 246182,ship 246183,dog 246184,automobile 246185,truck 246186,cat 246187,cat 246188,frog 246189,airplane 246190,cat 246191,deer 246192,deer 246193,truck 246194,truck 246195,frog 246196,horse 246197,bird 246198,horse 246199,dog 246200,horse 246201,automobile 246202,truck 246203,horse 246204,cat 246205,truck 246206,airplane 246207,truck 246208,horse 246209,frog 246210,ship 246211,ship 246212,deer 246213,deer 246214,bird 246215,deer 246216,frog 246217,cat 246218,deer 246219,airplane 246220,horse 246221,ship 246222,bird 246223,dog 246224,truck 246225,bird 246226,airplane 246227,bird 246228,frog 246229,bird 246230,truck 246231,frog 246232,truck 246233,truck 246234,cat 246235,dog 246236,ship 246237,horse 246238,deer 246239,cat 246240,dog 246241,ship 246242,cat 246243,ship 246244,truck 246245,deer 246246,bird 246247,dog 246248,frog 246249,deer 246250,cat 246251,truck 246252,cat 246253,cat 246254,frog 246255,deer 246256,automobile 246257,frog 246258,bird 246259,deer 246260,cat 246261,dog 246262,bird 246263,ship 246264,frog 246265,frog 246266,truck 246267,horse 246268,frog 246269,bird 246270,deer 246271,automobile 246272,deer 246273,dog 246274,airplane 246275,cat 246276,ship 246277,dog 246278,truck 246279,automobile 246280,frog 246281,dog 246282,horse 246283,bird 246284,ship 246285,bird 246286,horse 246287,horse 246288,horse 246289,ship 246290,truck 246291,cat 246292,frog 246293,horse 246294,dog 246295,cat 246296,truck 246297,ship 246298,dog 246299,automobile 246300,bird 246301,truck 246302,horse 246303,airplane 246304,cat 246305,deer 246306,frog 246307,automobile 246308,horse 246309,cat 246310,truck 246311,frog 246312,frog 246313,deer 246314,truck 246315,deer 246316,dog 246317,deer 246318,dog 246319,automobile 246320,bird 246321,bird 246322,deer 246323,automobile 246324,truck 246325,deer 246326,cat 246327,truck 246328,deer 246329,cat 246330,deer 246331,deer 246332,frog 246333,cat 246334,dog 246335,automobile 246336,bird 246337,horse 246338,deer 246339,frog 246340,deer 246341,frog 246342,airplane 246343,deer 246344,truck 246345,airplane 246346,cat 246347,deer 246348,truck 246349,truck 246350,horse 246351,frog 246352,frog 246353,automobile 246354,horse 246355,cat 246356,bird 246357,dog 246358,deer 246359,dog 246360,airplane 246361,automobile 246362,truck 246363,dog 246364,truck 246365,dog 246366,horse 246367,truck 246368,deer 246369,bird 246370,automobile 246371,frog 246372,frog 246373,bird 246374,horse 246375,airplane 246376,truck 246377,bird 246378,truck 246379,automobile 246380,dog 246381,horse 246382,deer 246383,deer 246384,cat 246385,ship 246386,frog 246387,deer 246388,ship 246389,frog 246390,truck 246391,bird 246392,automobile 246393,ship 246394,bird 246395,ship 246396,horse 246397,bird 246398,bird 246399,cat 246400,dog 246401,airplane 246402,cat 246403,cat 246404,automobile 246405,frog 246406,horse 246407,cat 246408,horse 246409,deer 246410,dog 246411,horse 246412,ship 246413,cat 246414,cat 246415,bird 246416,deer 246417,ship 246418,deer 246419,frog 246420,dog 246421,automobile 246422,airplane 246423,truck 246424,deer 246425,horse 246426,ship 246427,horse 246428,automobile 246429,dog 246430,deer 246431,frog 246432,deer 246433,automobile 246434,cat 246435,automobile 246436,horse 246437,cat 246438,frog 246439,horse 246440,deer 246441,frog 246442,deer 246443,automobile 246444,deer 246445,deer 246446,frog 246447,automobile 246448,automobile 246449,dog 246450,ship 246451,dog 246452,frog 246453,automobile 246454,airplane 246455,frog 246456,dog 246457,truck 246458,dog 246459,deer 246460,bird 246461,truck 246462,truck 246463,dog 246464,cat 246465,frog 246466,airplane 246467,cat 246468,horse 246469,frog 246470,bird 246471,automobile 246472,ship 246473,horse 246474,airplane 246475,deer 246476,deer 246477,ship 246478,ship 246479,automobile 246480,frog 246481,automobile 246482,horse 246483,frog 246484,deer 246485,cat 246486,horse 246487,airplane 246488,horse 246489,horse 246490,automobile 246491,airplane 246492,automobile 246493,truck 246494,deer 246495,airplane 246496,frog 246497,dog 246498,horse 246499,automobile 246500,frog 246501,frog 246502,horse 246503,ship 246504,automobile 246505,airplane 246506,cat 246507,cat 246508,deer 246509,horse 246510,truck 246511,bird 246512,deer 246513,deer 246514,deer 246515,deer 246516,ship 246517,ship 246518,automobile 246519,dog 246520,horse 246521,deer 246522,frog 246523,deer 246524,deer 246525,frog 246526,truck 246527,airplane 246528,deer 246529,truck 246530,deer 246531,cat 246532,horse 246533,cat 246534,automobile 246535,frog 246536,frog 246537,bird 246538,deer 246539,ship 246540,frog 246541,horse 246542,bird 246543,dog 246544,bird 246545,bird 246546,automobile 246547,frog 246548,deer 246549,horse 246550,deer 246551,truck 246552,dog 246553,dog 246554,dog 246555,airplane 246556,automobile 246557,frog 246558,cat 246559,cat 246560,airplane 246561,truck 246562,frog 246563,ship 246564,horse 246565,bird 246566,dog 246567,frog 246568,automobile 246569,frog 246570,deer 246571,deer 246572,ship 246573,automobile 246574,truck 246575,truck 246576,deer 246577,airplane 246578,deer 246579,bird 246580,dog 246581,cat 246582,automobile 246583,deer 246584,frog 246585,bird 246586,dog 246587,truck 246588,deer 246589,dog 246590,deer 246591,dog 246592,horse 246593,airplane 246594,truck 246595,cat 246596,deer 246597,deer 246598,deer 246599,dog 246600,airplane 246601,frog 246602,bird 246603,automobile 246604,horse 246605,cat 246606,dog 246607,cat 246608,airplane 246609,dog 246610,truck 246611,horse 246612,airplane 246613,horse 246614,deer 246615,automobile 246616,bird 246617,frog 246618,cat 246619,deer 246620,ship 246621,cat 246622,cat 246623,horse 246624,deer 246625,deer 246626,frog 246627,bird 246628,truck 246629,deer 246630,horse 246631,cat 246632,horse 246633,truck 246634,dog 246635,dog 246636,bird 246637,truck 246638,automobile 246639,truck 246640,ship 246641,horse 246642,cat 246643,frog 246644,cat 246645,bird 246646,automobile 246647,truck 246648,cat 246649,bird 246650,deer 246651,bird 246652,truck 246653,horse 246654,truck 246655,bird 246656,cat 246657,deer 246658,automobile 246659,airplane 246660,deer 246661,airplane 246662,ship 246663,cat 246664,horse 246665,horse 246666,deer 246667,ship 246668,airplane 246669,horse 246670,dog 246671,ship 246672,cat 246673,dog 246674,automobile 246675,ship 246676,bird 246677,bird 246678,dog 246679,ship 246680,frog 246681,airplane 246682,cat 246683,automobile 246684,airplane 246685,bird 246686,ship 246687,cat 246688,frog 246689,cat 246690,deer 246691,truck 246692,truck 246693,horse 246694,cat 246695,deer 246696,horse 246697,ship 246698,bird 246699,airplane 246700,dog 246701,airplane 246702,cat 246703,deer 246704,truck 246705,automobile 246706,deer 246707,deer 246708,deer 246709,frog 246710,cat 246711,airplane 246712,frog 246713,airplane 246714,ship 246715,bird 246716,automobile 246717,truck 246718,ship 246719,horse 246720,truck 246721,automobile 246722,bird 246723,airplane 246724,deer 246725,dog 246726,automobile 246727,cat 246728,horse 246729,frog 246730,cat 246731,dog 246732,bird 246733,automobile 246734,horse 246735,dog 246736,frog 246737,cat 246738,ship 246739,deer 246740,bird 246741,ship 246742,frog 246743,horse 246744,frog 246745,bird 246746,cat 246747,horse 246748,dog 246749,frog 246750,frog 246751,dog 246752,bird 246753,deer 246754,deer 246755,deer 246756,frog 246757,automobile 246758,frog 246759,ship 246760,airplane 246761,airplane 246762,horse 246763,airplane 246764,airplane 246765,automobile 246766,deer 246767,cat 246768,cat 246769,deer 246770,deer 246771,horse 246772,bird 246773,deer 246774,truck 246775,cat 246776,deer 246777,bird 246778,ship 246779,deer 246780,deer 246781,bird 246782,dog 246783,dog 246784,bird 246785,dog 246786,truck 246787,deer 246788,automobile 246789,ship 246790,deer 246791,frog 246792,ship 246793,airplane 246794,automobile 246795,truck 246796,bird 246797,truck 246798,cat 246799,truck 246800,cat 246801,truck 246802,dog 246803,dog 246804,truck 246805,deer 246806,deer 246807,frog 246808,frog 246809,airplane 246810,deer 246811,truck 246812,bird 246813,cat 246814,dog 246815,ship 246816,truck 246817,deer 246818,cat 246819,deer 246820,cat 246821,automobile 246822,airplane 246823,cat 246824,bird 246825,horse 246826,dog 246827,cat 246828,airplane 246829,cat 246830,horse 246831,ship 246832,horse 246833,ship 246834,automobile 246835,horse 246836,horse 246837,airplane 246838,cat 246839,frog 246840,automobile 246841,dog 246842,truck 246843,ship 246844,dog 246845,ship 246846,dog 246847,ship 246848,truck 246849,deer 246850,truck 246851,deer 246852,cat 246853,bird 246854,frog 246855,airplane 246856,dog 246857,frog 246858,automobile 246859,bird 246860,truck 246861,truck 246862,deer 246863,deer 246864,dog 246865,bird 246866,airplane 246867,deer 246868,truck 246869,deer 246870,airplane 246871,horse 246872,deer 246873,cat 246874,automobile 246875,ship 246876,frog 246877,ship 246878,automobile 246879,cat 246880,bird 246881,airplane 246882,airplane 246883,airplane 246884,deer 246885,cat 246886,cat 246887,dog 246888,ship 246889,frog 246890,horse 246891,horse 246892,deer 246893,dog 246894,dog 246895,truck 246896,automobile 246897,automobile 246898,truck 246899,frog 246900,horse 246901,ship 246902,truck 246903,horse 246904,truck 246905,bird 246906,truck 246907,cat 246908,truck 246909,frog 246910,horse 246911,truck 246912,frog 246913,cat 246914,deer 246915,horse 246916,frog 246917,automobile 246918,dog 246919,airplane 246920,ship 246921,deer 246922,bird 246923,airplane 246924,deer 246925,deer 246926,horse 246927,bird 246928,automobile 246929,horse 246930,deer 246931,truck 246932,dog 246933,horse 246934,deer 246935,truck 246936,dog 246937,cat 246938,automobile 246939,deer 246940,ship 246941,truck 246942,dog 246943,deer 246944,ship 246945,cat 246946,cat 246947,airplane 246948,horse 246949,automobile 246950,cat 246951,deer 246952,cat 246953,frog 246954,deer 246955,truck 246956,horse 246957,deer 246958,truck 246959,frog 246960,frog 246961,dog 246962,frog 246963,cat 246964,bird 246965,cat 246966,cat 246967,frog 246968,airplane 246969,deer 246970,truck 246971,cat 246972,truck 246973,ship 246974,frog 246975,horse 246976,ship 246977,deer 246978,frog 246979,cat 246980,dog 246981,airplane 246982,frog 246983,bird 246984,horse 246985,frog 246986,deer 246987,ship 246988,horse 246989,frog 246990,automobile 246991,automobile 246992,airplane 246993,ship 246994,cat 246995,truck 246996,ship 246997,cat 246998,dog 246999,deer 247000,cat 247001,deer 247002,dog 247003,frog 247004,truck 247005,deer 247006,horse 247007,bird 247008,automobile 247009,frog 247010,dog 247011,truck 247012,frog 247013,ship 247014,horse 247015,dog 247016,automobile 247017,airplane 247018,bird 247019,ship 247020,bird 247021,truck 247022,dog 247023,bird 247024,deer 247025,deer 247026,horse 247027,deer 247028,deer 247029,cat 247030,cat 247031,horse 247032,airplane 247033,cat 247034,bird 247035,deer 247036,ship 247037,automobile 247038,horse 247039,bird 247040,deer 247041,horse 247042,ship 247043,airplane 247044,horse 247045,bird 247046,airplane 247047,deer 247048,dog 247049,horse 247050,cat 247051,cat 247052,airplane 247053,deer 247054,ship 247055,cat 247056,frog 247057,bird 247058,truck 247059,horse 247060,ship 247061,frog 247062,deer 247063,automobile 247064,horse 247065,horse 247066,truck 247067,ship 247068,airplane 247069,deer 247070,horse 247071,deer 247072,truck 247073,frog 247074,truck 247075,cat 247076,deer 247077,bird 247078,deer 247079,cat 247080,cat 247081,frog 247082,bird 247083,bird 247084,frog 247085,horse 247086,airplane 247087,truck 247088,cat 247089,dog 247090,airplane 247091,horse 247092,bird 247093,cat 247094,cat 247095,frog 247096,truck 247097,horse 247098,dog 247099,horse 247100,frog 247101,cat 247102,deer 247103,airplane 247104,dog 247105,ship 247106,truck 247107,dog 247108,ship 247109,ship 247110,truck 247111,frog 247112,truck 247113,dog 247114,horse 247115,automobile 247116,deer 247117,deer 247118,cat 247119,horse 247120,ship 247121,dog 247122,ship 247123,deer 247124,dog 247125,deer 247126,deer 247127,deer 247128,horse 247129,frog 247130,horse 247131,frog 247132,automobile 247133,deer 247134,bird 247135,airplane 247136,cat 247137,cat 247138,frog 247139,automobile 247140,deer 247141,frog 247142,truck 247143,truck 247144,truck 247145,dog 247146,airplane 247147,deer 247148,bird 247149,frog 247150,cat 247151,deer 247152,deer 247153,cat 247154,cat 247155,deer 247156,horse 247157,truck 247158,truck 247159,automobile 247160,automobile 247161,truck 247162,deer 247163,deer 247164,truck 247165,frog 247166,deer 247167,horse 247168,horse 247169,cat 247170,horse 247171,horse 247172,deer 247173,frog 247174,ship 247175,airplane 247176,horse 247177,deer 247178,deer 247179,airplane 247180,cat 247181,frog 247182,airplane 247183,frog 247184,dog 247185,bird 247186,horse 247187,airplane 247188,airplane 247189,airplane 247190,horse 247191,airplane 247192,deer 247193,dog 247194,cat 247195,bird 247196,bird 247197,frog 247198,ship 247199,truck 247200,horse 247201,frog 247202,automobile 247203,horse 247204,deer 247205,cat 247206,horse 247207,airplane 247208,dog 247209,bird 247210,deer 247211,frog 247212,frog 247213,dog 247214,cat 247215,automobile 247216,frog 247217,ship 247218,ship 247219,horse 247220,horse 247221,truck 247222,airplane 247223,deer 247224,bird 247225,dog 247226,cat 247227,horse 247228,horse 247229,cat 247230,deer 247231,dog 247232,bird 247233,airplane 247234,deer 247235,truck 247236,deer 247237,deer 247238,deer 247239,deer 247240,bird 247241,automobile 247242,bird 247243,bird 247244,frog 247245,dog 247246,ship 247247,automobile 247248,airplane 247249,dog 247250,cat 247251,horse 247252,bird 247253,truck 247254,automobile 247255,truck 247256,frog 247257,automobile 247258,deer 247259,airplane 247260,automobile 247261,truck 247262,automobile 247263,cat 247264,deer 247265,truck 247266,frog 247267,truck 247268,horse 247269,deer 247270,airplane 247271,frog 247272,deer 247273,horse 247274,airplane 247275,frog 247276,bird 247277,deer 247278,horse 247279,cat 247280,truck 247281,ship 247282,bird 247283,airplane 247284,cat 247285,cat 247286,truck 247287,automobile 247288,airplane 247289,ship 247290,dog 247291,ship 247292,truck 247293,deer 247294,truck 247295,frog 247296,cat 247297,frog 247298,cat 247299,ship 247300,frog 247301,ship 247302,dog 247303,truck 247304,airplane 247305,automobile 247306,truck 247307,frog 247308,deer 247309,airplane 247310,deer 247311,frog 247312,deer 247313,truck 247314,truck 247315,dog 247316,automobile 247317,frog 247318,ship 247319,cat 247320,deer 247321,dog 247322,frog 247323,truck 247324,horse 247325,bird 247326,airplane 247327,airplane 247328,automobile 247329,automobile 247330,automobile 247331,cat 247332,bird 247333,automobile 247334,deer 247335,ship 247336,cat 247337,frog 247338,cat 247339,cat 247340,ship 247341,airplane 247342,frog 247343,deer 247344,dog 247345,frog 247346,airplane 247347,horse 247348,truck 247349,automobile 247350,airplane 247351,cat 247352,ship 247353,deer 247354,ship 247355,horse 247356,airplane 247357,automobile 247358,deer 247359,frog 247360,automobile 247361,frog 247362,horse 247363,deer 247364,automobile 247365,dog 247366,cat 247367,frog 247368,deer 247369,cat 247370,cat 247371,deer 247372,airplane 247373,cat 247374,cat 247375,dog 247376,bird 247377,truck 247378,cat 247379,horse 247380,automobile 247381,ship 247382,deer 247383,airplane 247384,horse 247385,dog 247386,deer 247387,deer 247388,truck 247389,automobile 247390,frog 247391,cat 247392,truck 247393,bird 247394,horse 247395,airplane 247396,cat 247397,frog 247398,dog 247399,cat 247400,horse 247401,bird 247402,frog 247403,dog 247404,truck 247405,truck 247406,ship 247407,cat 247408,frog 247409,horse 247410,bird 247411,horse 247412,dog 247413,frog 247414,horse 247415,dog 247416,ship 247417,frog 247418,horse 247419,frog 247420,cat 247421,frog 247422,deer 247423,bird 247424,horse 247425,truck 247426,truck 247427,frog 247428,frog 247429,frog 247430,bird 247431,ship 247432,truck 247433,deer 247434,deer 247435,airplane 247436,dog 247437,horse 247438,deer 247439,airplane 247440,airplane 247441,frog 247442,bird 247443,frog 247444,horse 247445,frog 247446,deer 247447,truck 247448,deer 247449,bird 247450,bird 247451,cat 247452,cat 247453,frog 247454,frog 247455,horse 247456,deer 247457,truck 247458,deer 247459,frog 247460,deer 247461,frog 247462,ship 247463,truck 247464,deer 247465,horse 247466,automobile 247467,truck 247468,airplane 247469,cat 247470,airplane 247471,bird 247472,frog 247473,airplane 247474,cat 247475,ship 247476,truck 247477,horse 247478,truck 247479,ship 247480,ship 247481,dog 247482,cat 247483,bird 247484,airplane 247485,automobile 247486,bird 247487,frog 247488,truck 247489,frog 247490,truck 247491,bird 247492,truck 247493,horse 247494,frog 247495,airplane 247496,truck 247497,horse 247498,dog 247499,horse 247500,ship 247501,airplane 247502,ship 247503,automobile 247504,ship 247505,automobile 247506,horse 247507,horse 247508,deer 247509,bird 247510,deer 247511,cat 247512,ship 247513,bird 247514,deer 247515,cat 247516,automobile 247517,airplane 247518,ship 247519,cat 247520,airplane 247521,truck 247522,truck 247523,dog 247524,frog 247525,truck 247526,airplane 247527,bird 247528,airplane 247529,horse 247530,airplane 247531,horse 247532,frog 247533,ship 247534,horse 247535,bird 247536,frog 247537,deer 247538,cat 247539,deer 247540,dog 247541,cat 247542,deer 247543,airplane 247544,horse 247545,cat 247546,automobile 247547,automobile 247548,ship 247549,cat 247550,cat 247551,truck 247552,truck 247553,deer 247554,airplane 247555,airplane 247556,truck 247557,dog 247558,ship 247559,automobile 247560,frog 247561,frog 247562,frog 247563,airplane 247564,horse 247565,dog 247566,cat 247567,frog 247568,ship 247569,bird 247570,frog 247571,horse 247572,truck 247573,airplane 247574,deer 247575,deer 247576,deer 247577,automobile 247578,deer 247579,deer 247580,dog 247581,cat 247582,horse 247583,deer 247584,deer 247585,ship 247586,dog 247587,horse 247588,ship 247589,frog 247590,frog 247591,automobile 247592,deer 247593,ship 247594,horse 247595,cat 247596,truck 247597,automobile 247598,airplane 247599,horse 247600,horse 247601,frog 247602,dog 247603,cat 247604,cat 247605,horse 247606,truck 247607,airplane 247608,dog 247609,bird 247610,airplane 247611,horse 247612,deer 247613,dog 247614,cat 247615,automobile 247616,airplane 247617,deer 247618,deer 247619,truck 247620,bird 247621,frog 247622,bird 247623,deer 247624,dog 247625,frog 247626,cat 247627,bird 247628,dog 247629,deer 247630,deer 247631,cat 247632,horse 247633,horse 247634,dog 247635,deer 247636,bird 247637,truck 247638,bird 247639,deer 247640,deer 247641,horse 247642,automobile 247643,frog 247644,bird 247645,cat 247646,horse 247647,frog 247648,dog 247649,truck 247650,horse 247651,deer 247652,ship 247653,dog 247654,automobile 247655,cat 247656,airplane 247657,deer 247658,cat 247659,horse 247660,frog 247661,bird 247662,bird 247663,cat 247664,deer 247665,airplane 247666,ship 247667,automobile 247668,bird 247669,dog 247670,truck 247671,cat 247672,ship 247673,cat 247674,automobile 247675,ship 247676,truck 247677,horse 247678,dog 247679,cat 247680,dog 247681,cat 247682,automobile 247683,cat 247684,bird 247685,deer 247686,airplane 247687,airplane 247688,horse 247689,horse 247690,bird 247691,frog 247692,dog 247693,truck 247694,automobile 247695,dog 247696,horse 247697,bird 247698,cat 247699,horse 247700,cat 247701,deer 247702,bird 247703,ship 247704,truck 247705,cat 247706,truck 247707,airplane 247708,ship 247709,dog 247710,cat 247711,cat 247712,horse 247713,dog 247714,automobile 247715,dog 247716,frog 247717,truck 247718,deer 247719,cat 247720,automobile 247721,ship 247722,deer 247723,ship 247724,cat 247725,frog 247726,bird 247727,cat 247728,frog 247729,frog 247730,ship 247731,frog 247732,bird 247733,dog 247734,automobile 247735,airplane 247736,ship 247737,ship 247738,airplane 247739,bird 247740,cat 247741,ship 247742,automobile 247743,cat 247744,truck 247745,airplane 247746,dog 247747,horse 247748,bird 247749,ship 247750,cat 247751,frog 247752,truck 247753,airplane 247754,ship 247755,automobile 247756,bird 247757,deer 247758,truck 247759,bird 247760,deer 247761,bird 247762,bird 247763,cat 247764,cat 247765,automobile 247766,horse 247767,cat 247768,truck 247769,frog 247770,ship 247771,truck 247772,cat 247773,frog 247774,bird 247775,deer 247776,horse 247777,cat 247778,automobile 247779,truck 247780,deer 247781,horse 247782,deer 247783,dog 247784,cat 247785,deer 247786,frog 247787,cat 247788,airplane 247789,deer 247790,cat 247791,cat 247792,truck 247793,automobile 247794,frog 247795,cat 247796,dog 247797,airplane 247798,truck 247799,automobile 247800,deer 247801,truck 247802,truck 247803,truck 247804,truck 247805,frog 247806,ship 247807,automobile 247808,deer 247809,horse 247810,horse 247811,bird 247812,cat 247813,deer 247814,truck 247815,frog 247816,dog 247817,dog 247818,horse 247819,cat 247820,frog 247821,dog 247822,frog 247823,airplane 247824,truck 247825,horse 247826,automobile 247827,airplane 247828,automobile 247829,bird 247830,deer 247831,airplane 247832,cat 247833,deer 247834,bird 247835,truck 247836,deer 247837,cat 247838,horse 247839,cat 247840,cat 247841,airplane 247842,deer 247843,truck 247844,cat 247845,truck 247846,deer 247847,horse 247848,cat 247849,truck 247850,bird 247851,deer 247852,bird 247853,airplane 247854,frog 247855,automobile 247856,ship 247857,airplane 247858,dog 247859,truck 247860,frog 247861,airplane 247862,frog 247863,frog 247864,cat 247865,truck 247866,cat 247867,automobile 247868,bird 247869,deer 247870,ship 247871,frog 247872,airplane 247873,deer 247874,frog 247875,ship 247876,deer 247877,deer 247878,automobile 247879,horse 247880,cat 247881,bird 247882,ship 247883,ship 247884,horse 247885,deer 247886,truck 247887,truck 247888,automobile 247889,dog 247890,bird 247891,automobile 247892,cat 247893,horse 247894,deer 247895,horse 247896,truck 247897,cat 247898,ship 247899,truck 247900,bird 247901,frog 247902,frog 247903,frog 247904,frog 247905,bird 247906,deer 247907,bird 247908,truck 247909,deer 247910,bird 247911,cat 247912,frog 247913,dog 247914,dog 247915,automobile 247916,horse 247917,horse 247918,automobile 247919,deer 247920,ship 247921,frog 247922,airplane 247923,frog 247924,deer 247925,deer 247926,frog 247927,cat 247928,horse 247929,dog 247930,ship 247931,cat 247932,dog 247933,cat 247934,automobile 247935,ship 247936,dog 247937,airplane 247938,frog 247939,airplane 247940,horse 247941,frog 247942,frog 247943,cat 247944,automobile 247945,cat 247946,automobile 247947,ship 247948,dog 247949,cat 247950,deer 247951,automobile 247952,airplane 247953,deer 247954,bird 247955,frog 247956,bird 247957,bird 247958,frog 247959,frog 247960,deer 247961,horse 247962,deer 247963,truck 247964,frog 247965,deer 247966,bird 247967,cat 247968,deer 247969,deer 247970,airplane 247971,dog 247972,airplane 247973,automobile 247974,airplane 247975,deer 247976,horse 247977,airplane 247978,airplane 247979,truck 247980,deer 247981,airplane 247982,cat 247983,deer 247984,cat 247985,dog 247986,airplane 247987,horse 247988,deer 247989,cat 247990,deer 247991,dog 247992,truck 247993,horse 247994,deer 247995,dog 247996,frog 247997,ship 247998,frog 247999,truck 248000,truck 248001,frog 248002,ship 248003,frog 248004,bird 248005,deer 248006,truck 248007,deer 248008,deer 248009,truck 248010,frog 248011,deer 248012,ship 248013,horse 248014,deer 248015,frog 248016,cat 248017,deer 248018,bird 248019,horse 248020,automobile 248021,truck 248022,bird 248023,automobile 248024,cat 248025,airplane 248026,ship 248027,deer 248028,horse 248029,cat 248030,ship 248031,cat 248032,deer 248033,dog 248034,frog 248035,truck 248036,truck 248037,dog 248038,deer 248039,dog 248040,frog 248041,truck 248042,bird 248043,frog 248044,cat 248045,truck 248046,frog 248047,frog 248048,dog 248049,deer 248050,horse 248051,dog 248052,automobile 248053,bird 248054,automobile 248055,horse 248056,horse 248057,automobile 248058,deer 248059,airplane 248060,airplane 248061,horse 248062,automobile 248063,horse 248064,automobile 248065,ship 248066,bird 248067,bird 248068,frog 248069,frog 248070,cat 248071,bird 248072,deer 248073,truck 248074,frog 248075,horse 248076,bird 248077,frog 248078,bird 248079,frog 248080,truck 248081,automobile 248082,ship 248083,horse 248084,automobile 248085,truck 248086,cat 248087,truck 248088,dog 248089,dog 248090,truck 248091,deer 248092,deer 248093,frog 248094,truck 248095,airplane 248096,truck 248097,deer 248098,dog 248099,bird 248100,deer 248101,truck 248102,frog 248103,deer 248104,ship 248105,deer 248106,cat 248107,airplane 248108,truck 248109,airplane 248110,horse 248111,horse 248112,dog 248113,airplane 248114,deer 248115,dog 248116,deer 248117,cat 248118,horse 248119,deer 248120,bird 248121,bird 248122,bird 248123,cat 248124,deer 248125,dog 248126,cat 248127,automobile 248128,airplane 248129,cat 248130,deer 248131,deer 248132,ship 248133,cat 248134,ship 248135,dog 248136,frog 248137,ship 248138,cat 248139,airplane 248140,cat 248141,frog 248142,frog 248143,bird 248144,deer 248145,ship 248146,bird 248147,cat 248148,horse 248149,ship 248150,frog 248151,automobile 248152,deer 248153,horse 248154,deer 248155,frog 248156,truck 248157,bird 248158,deer 248159,frog 248160,ship 248161,bird 248162,dog 248163,cat 248164,airplane 248165,horse 248166,deer 248167,deer 248168,dog 248169,frog 248170,deer 248171,deer 248172,dog 248173,automobile 248174,ship 248175,dog 248176,deer 248177,frog 248178,cat 248179,dog 248180,bird 248181,truck 248182,truck 248183,airplane 248184,deer 248185,ship 248186,truck 248187,deer 248188,dog 248189,ship 248190,bird 248191,frog 248192,ship 248193,automobile 248194,automobile 248195,ship 248196,horse 248197,horse 248198,truck 248199,cat 248200,deer 248201,bird 248202,airplane 248203,horse 248204,ship 248205,horse 248206,dog 248207,truck 248208,cat 248209,automobile 248210,deer 248211,horse 248212,horse 248213,frog 248214,deer 248215,airplane 248216,deer 248217,horse 248218,airplane 248219,bird 248220,airplane 248221,dog 248222,automobile 248223,bird 248224,horse 248225,truck 248226,automobile 248227,automobile 248228,bird 248229,dog 248230,truck 248231,deer 248232,cat 248233,deer 248234,automobile 248235,automobile 248236,truck 248237,horse 248238,ship 248239,ship 248240,cat 248241,cat 248242,ship 248243,dog 248244,airplane 248245,cat 248246,deer 248247,frog 248248,frog 248249,horse 248250,airplane 248251,automobile 248252,horse 248253,horse 248254,frog 248255,ship 248256,ship 248257,automobile 248258,airplane 248259,frog 248260,cat 248261,dog 248262,horse 248263,dog 248264,cat 248265,cat 248266,deer 248267,bird 248268,bird 248269,deer 248270,deer 248271,deer 248272,airplane 248273,deer 248274,deer 248275,truck 248276,cat 248277,ship 248278,dog 248279,airplane 248280,dog 248281,deer 248282,truck 248283,truck 248284,automobile 248285,frog 248286,frog 248287,automobile 248288,frog 248289,deer 248290,airplane 248291,truck 248292,truck 248293,ship 248294,cat 248295,airplane 248296,automobile 248297,ship 248298,frog 248299,frog 248300,frog 248301,cat 248302,cat 248303,deer 248304,deer 248305,frog 248306,truck 248307,bird 248308,airplane 248309,cat 248310,horse 248311,deer 248312,deer 248313,truck 248314,horse 248315,airplane 248316,deer 248317,deer 248318,airplane 248319,cat 248320,frog 248321,ship 248322,deer 248323,cat 248324,ship 248325,dog 248326,airplane 248327,bird 248328,airplane 248329,cat 248330,horse 248331,bird 248332,bird 248333,dog 248334,cat 248335,frog 248336,truck 248337,horse 248338,deer 248339,dog 248340,ship 248341,horse 248342,horse 248343,truck 248344,cat 248345,cat 248346,bird 248347,horse 248348,deer 248349,dog 248350,truck 248351,ship 248352,frog 248353,automobile 248354,deer 248355,ship 248356,airplane 248357,horse 248358,horse 248359,bird 248360,truck 248361,automobile 248362,horse 248363,truck 248364,frog 248365,ship 248366,truck 248367,deer 248368,truck 248369,ship 248370,ship 248371,horse 248372,airplane 248373,ship 248374,horse 248375,bird 248376,deer 248377,deer 248378,bird 248379,cat 248380,cat 248381,frog 248382,dog 248383,dog 248384,deer 248385,frog 248386,airplane 248387,truck 248388,frog 248389,frog 248390,horse 248391,cat 248392,deer 248393,cat 248394,cat 248395,bird 248396,frog 248397,deer 248398,airplane 248399,frog 248400,bird 248401,airplane 248402,airplane 248403,automobile 248404,cat 248405,frog 248406,ship 248407,bird 248408,cat 248409,airplane 248410,truck 248411,automobile 248412,deer 248413,deer 248414,bird 248415,airplane 248416,dog 248417,frog 248418,cat 248419,airplane 248420,truck 248421,deer 248422,automobile 248423,ship 248424,bird 248425,frog 248426,horse 248427,bird 248428,bird 248429,frog 248430,frog 248431,ship 248432,frog 248433,ship 248434,cat 248435,dog 248436,airplane 248437,cat 248438,horse 248439,frog 248440,bird 248441,ship 248442,dog 248443,automobile 248444,deer 248445,ship 248446,horse 248447,truck 248448,bird 248449,cat 248450,cat 248451,cat 248452,automobile 248453,automobile 248454,deer 248455,deer 248456,ship 248457,frog 248458,dog 248459,airplane 248460,frog 248461,frog 248462,horse 248463,horse 248464,truck 248465,cat 248466,automobile 248467,frog 248468,cat 248469,horse 248470,airplane 248471,frog 248472,airplane 248473,bird 248474,frog 248475,automobile 248476,cat 248477,ship 248478,airplane 248479,automobile 248480,cat 248481,ship 248482,frog 248483,automobile 248484,automobile 248485,truck 248486,deer 248487,airplane 248488,bird 248489,cat 248490,deer 248491,bird 248492,dog 248493,truck 248494,truck 248495,ship 248496,frog 248497,cat 248498,frog 248499,cat 248500,dog 248501,dog 248502,dog 248503,dog 248504,dog 248505,cat 248506,ship 248507,cat 248508,cat 248509,deer 248510,dog 248511,cat 248512,frog 248513,frog 248514,deer 248515,airplane 248516,ship 248517,airplane 248518,frog 248519,horse 248520,bird 248521,dog 248522,truck 248523,dog 248524,frog 248525,dog 248526,deer 248527,dog 248528,dog 248529,cat 248530,bird 248531,cat 248532,frog 248533,deer 248534,deer 248535,bird 248536,truck 248537,bird 248538,frog 248539,deer 248540,deer 248541,horse 248542,automobile 248543,deer 248544,cat 248545,ship 248546,deer 248547,deer 248548,cat 248549,airplane 248550,airplane 248551,frog 248552,horse 248553,ship 248554,bird 248555,frog 248556,frog 248557,cat 248558,horse 248559,cat 248560,airplane 248561,horse 248562,frog 248563,bird 248564,cat 248565,bird 248566,cat 248567,bird 248568,cat 248569,dog 248570,automobile 248571,horse 248572,cat 248573,airplane 248574,cat 248575,deer 248576,cat 248577,airplane 248578,airplane 248579,cat 248580,horse 248581,frog 248582,bird 248583,truck 248584,frog 248585,deer 248586,deer 248587,cat 248588,airplane 248589,deer 248590,truck 248591,airplane 248592,bird 248593,frog 248594,airplane 248595,automobile 248596,bird 248597,bird 248598,automobile 248599,truck 248600,horse 248601,cat 248602,cat 248603,cat 248604,deer 248605,cat 248606,cat 248607,deer 248608,airplane 248609,frog 248610,ship 248611,truck 248612,bird 248613,horse 248614,ship 248615,cat 248616,horse 248617,truck 248618,deer 248619,deer 248620,dog 248621,bird 248622,airplane 248623,dog 248624,truck 248625,truck 248626,deer 248627,horse 248628,ship 248629,frog 248630,truck 248631,dog 248632,ship 248633,bird 248634,horse 248635,horse 248636,airplane 248637,truck 248638,deer 248639,ship 248640,ship 248641,airplane 248642,frog 248643,cat 248644,truck 248645,truck 248646,deer 248647,automobile 248648,horse 248649,airplane 248650,frog 248651,frog 248652,automobile 248653,automobile 248654,frog 248655,frog 248656,airplane 248657,ship 248658,automobile 248659,airplane 248660,frog 248661,dog 248662,airplane 248663,deer 248664,deer 248665,airplane 248666,horse 248667,cat 248668,deer 248669,horse 248670,dog 248671,truck 248672,dog 248673,airplane 248674,ship 248675,horse 248676,automobile 248677,frog 248678,dog 248679,airplane 248680,bird 248681,bird 248682,deer 248683,horse 248684,cat 248685,bird 248686,dog 248687,ship 248688,airplane 248689,dog 248690,bird 248691,horse 248692,automobile 248693,horse 248694,horse 248695,deer 248696,deer 248697,horse 248698,frog 248699,horse 248700,airplane 248701,dog 248702,airplane 248703,horse 248704,horse 248705,dog 248706,airplane 248707,truck 248708,bird 248709,automobile 248710,ship 248711,horse 248712,frog 248713,airplane 248714,truck 248715,frog 248716,cat 248717,bird 248718,bird 248719,cat 248720,truck 248721,deer 248722,bird 248723,ship 248724,frog 248725,dog 248726,frog 248727,deer 248728,cat 248729,cat 248730,horse 248731,horse 248732,ship 248733,horse 248734,bird 248735,frog 248736,bird 248737,dog 248738,dog 248739,automobile 248740,dog 248741,airplane 248742,truck 248743,dog 248744,deer 248745,frog 248746,cat 248747,cat 248748,cat 248749,deer 248750,cat 248751,ship 248752,dog 248753,frog 248754,dog 248755,frog 248756,bird 248757,automobile 248758,dog 248759,automobile 248760,deer 248761,cat 248762,frog 248763,frog 248764,truck 248765,bird 248766,cat 248767,deer 248768,ship 248769,dog 248770,airplane 248771,automobile 248772,truck 248773,dog 248774,frog 248775,automobile 248776,automobile 248777,automobile 248778,cat 248779,dog 248780,bird 248781,airplane 248782,bird 248783,frog 248784,dog 248785,frog 248786,dog 248787,horse 248788,horse 248789,frog 248790,frog 248791,frog 248792,dog 248793,bird 248794,bird 248795,truck 248796,ship 248797,automobile 248798,deer 248799,truck 248800,horse 248801,bird 248802,airplane 248803,automobile 248804,automobile 248805,truck 248806,ship 248807,dog 248808,truck 248809,cat 248810,airplane 248811,ship 248812,cat 248813,airplane 248814,dog 248815,dog 248816,airplane 248817,frog 248818,bird 248819,automobile 248820,airplane 248821,airplane 248822,airplane 248823,dog 248824,ship 248825,deer 248826,bird 248827,horse 248828,deer 248829,truck 248830,ship 248831,airplane 248832,airplane 248833,cat 248834,ship 248835,frog 248836,frog 248837,bird 248838,frog 248839,bird 248840,frog 248841,cat 248842,frog 248843,ship 248844,deer 248845,frog 248846,deer 248847,frog 248848,frog 248849,cat 248850,automobile 248851,dog 248852,truck 248853,cat 248854,dog 248855,horse 248856,cat 248857,deer 248858,ship 248859,deer 248860,deer 248861,frog 248862,automobile 248863,deer 248864,deer 248865,airplane 248866,automobile 248867,automobile 248868,cat 248869,ship 248870,deer 248871,frog 248872,airplane 248873,dog 248874,frog 248875,cat 248876,dog 248877,cat 248878,dog 248879,airplane 248880,horse 248881,truck 248882,horse 248883,ship 248884,deer 248885,automobile 248886,cat 248887,truck 248888,airplane 248889,deer 248890,horse 248891,dog 248892,airplane 248893,dog 248894,frog 248895,automobile 248896,bird 248897,automobile 248898,deer 248899,ship 248900,bird 248901,deer 248902,cat 248903,cat 248904,truck 248905,cat 248906,deer 248907,frog 248908,frog 248909,frog 248910,ship 248911,dog 248912,dog 248913,dog 248914,dog 248915,cat 248916,dog 248917,cat 248918,cat 248919,deer 248920,truck 248921,truck 248922,deer 248923,deer 248924,ship 248925,dog 248926,deer 248927,deer 248928,cat 248929,frog 248930,airplane 248931,ship 248932,deer 248933,frog 248934,bird 248935,truck 248936,ship 248937,automobile 248938,deer 248939,ship 248940,ship 248941,horse 248942,ship 248943,frog 248944,cat 248945,cat 248946,truck 248947,cat 248948,dog 248949,automobile 248950,frog 248951,bird 248952,frog 248953,frog 248954,truck 248955,dog 248956,automobile 248957,cat 248958,horse 248959,airplane 248960,frog 248961,bird 248962,ship 248963,dog 248964,deer 248965,cat 248966,cat 248967,ship 248968,cat 248969,dog 248970,ship 248971,frog 248972,cat 248973,frog 248974,deer 248975,horse 248976,cat 248977,airplane 248978,frog 248979,ship 248980,truck 248981,cat 248982,bird 248983,ship 248984,automobile 248985,airplane 248986,ship 248987,frog 248988,bird 248989,dog 248990,ship 248991,bird 248992,horse 248993,truck 248994,ship 248995,cat 248996,airplane 248997,cat 248998,bird 248999,horse 249000,horse 249001,cat 249002,truck 249003,frog 249004,automobile 249005,ship 249006,dog 249007,truck 249008,deer 249009,deer 249010,deer 249011,horse 249012,airplane 249013,automobile 249014,cat 249015,deer 249016,deer 249017,deer 249018,truck 249019,horse 249020,frog 249021,truck 249022,truck 249023,truck 249024,automobile 249025,automobile 249026,frog 249027,deer 249028,truck 249029,ship 249030,bird 249031,frog 249032,automobile 249033,deer 249034,ship 249035,frog 249036,cat 249037,frog 249038,cat 249039,ship 249040,frog 249041,dog 249042,dog 249043,automobile 249044,dog 249045,automobile 249046,airplane 249047,deer 249048,airplane 249049,dog 249050,cat 249051,bird 249052,airplane 249053,cat 249054,deer 249055,bird 249056,deer 249057,horse 249058,bird 249059,deer 249060,deer 249061,airplane 249062,horse 249063,cat 249064,ship 249065,dog 249066,frog 249067,automobile 249068,cat 249069,deer 249070,frog 249071,airplane 249072,bird 249073,truck 249074,cat 249075,automobile 249076,deer 249077,cat 249078,ship 249079,truck 249080,deer 249081,automobile 249082,dog 249083,ship 249084,truck 249085,airplane 249086,horse 249087,deer 249088,cat 249089,horse 249090,horse 249091,cat 249092,automobile 249093,airplane 249094,horse 249095,ship 249096,frog 249097,truck 249098,ship 249099,dog 249100,bird 249101,ship 249102,deer 249103,automobile 249104,horse 249105,truck 249106,cat 249107,deer 249108,dog 249109,deer 249110,airplane 249111,frog 249112,dog 249113,deer 249114,cat 249115,automobile 249116,frog 249117,frog 249118,horse 249119,horse 249120,airplane 249121,truck 249122,cat 249123,cat 249124,automobile 249125,truck 249126,frog 249127,bird 249128,ship 249129,frog 249130,airplane 249131,deer 249132,bird 249133,automobile 249134,automobile 249135,frog 249136,airplane 249137,deer 249138,ship 249139,dog 249140,airplane 249141,ship 249142,bird 249143,horse 249144,bird 249145,automobile 249146,automobile 249147,horse 249148,frog 249149,dog 249150,deer 249151,airplane 249152,dog 249153,cat 249154,horse 249155,truck 249156,dog 249157,horse 249158,airplane 249159,cat 249160,horse 249161,cat 249162,dog 249163,ship 249164,airplane 249165,ship 249166,truck 249167,deer 249168,cat 249169,airplane 249170,deer 249171,cat 249172,deer 249173,deer 249174,dog 249175,dog 249176,horse 249177,deer 249178,ship 249179,cat 249180,airplane 249181,truck 249182,dog 249183,deer 249184,airplane 249185,dog 249186,cat 249187,airplane 249188,horse 249189,horse 249190,airplane 249191,automobile 249192,truck 249193,dog 249194,truck 249195,dog 249196,cat 249197,deer 249198,cat 249199,truck 249200,cat 249201,bird 249202,truck 249203,truck 249204,truck 249205,horse 249206,deer 249207,frog 249208,ship 249209,bird 249210,cat 249211,horse 249212,cat 249213,frog 249214,frog 249215,ship 249216,ship 249217,horse 249218,cat 249219,frog 249220,horse 249221,frog 249222,frog 249223,deer 249224,dog 249225,horse 249226,frog 249227,bird 249228,bird 249229,deer 249230,dog 249231,cat 249232,airplane 249233,truck 249234,bird 249235,bird 249236,truck 249237,horse 249238,automobile 249239,frog 249240,horse 249241,cat 249242,truck 249243,automobile 249244,dog 249245,frog 249246,horse 249247,deer 249248,frog 249249,cat 249250,airplane 249251,dog 249252,frog 249253,ship 249254,truck 249255,ship 249256,truck 249257,horse 249258,horse 249259,horse 249260,cat 249261,airplane 249262,airplane 249263,deer 249264,cat 249265,dog 249266,dog 249267,truck 249268,frog 249269,deer 249270,horse 249271,bird 249272,deer 249273,deer 249274,frog 249275,ship 249276,cat 249277,bird 249278,horse 249279,dog 249280,horse 249281,deer 249282,dog 249283,automobile 249284,cat 249285,truck 249286,deer 249287,deer 249288,cat 249289,frog 249290,horse 249291,deer 249292,cat 249293,bird 249294,truck 249295,frog 249296,truck 249297,frog 249298,horse 249299,deer 249300,truck 249301,ship 249302,truck 249303,truck 249304,dog 249305,truck 249306,deer 249307,bird 249308,bird 249309,frog 249310,deer 249311,bird 249312,horse 249313,dog 249314,deer 249315,cat 249316,frog 249317,truck 249318,cat 249319,horse 249320,automobile 249321,horse 249322,dog 249323,frog 249324,deer 249325,deer 249326,dog 249327,automobile 249328,deer 249329,cat 249330,horse 249331,deer 249332,bird 249333,truck 249334,airplane 249335,dog 249336,automobile 249337,dog 249338,automobile 249339,deer 249340,truck 249341,frog 249342,deer 249343,bird 249344,airplane 249345,horse 249346,ship 249347,dog 249348,truck 249349,airplane 249350,bird 249351,dog 249352,frog 249353,airplane 249354,truck 249355,dog 249356,horse 249357,truck 249358,automobile 249359,airplane 249360,truck 249361,truck 249362,truck 249363,airplane 249364,truck 249365,frog 249366,truck 249367,deer 249368,bird 249369,deer 249370,cat 249371,dog 249372,dog 249373,truck 249374,deer 249375,horse 249376,deer 249377,truck 249378,horse 249379,deer 249380,airplane 249381,airplane 249382,frog 249383,ship 249384,frog 249385,dog 249386,frog 249387,horse 249388,deer 249389,frog 249390,frog 249391,airplane 249392,bird 249393,ship 249394,frog 249395,deer 249396,ship 249397,deer 249398,airplane 249399,truck 249400,frog 249401,bird 249402,truck 249403,automobile 249404,bird 249405,dog 249406,bird 249407,truck 249408,bird 249409,deer 249410,frog 249411,cat 249412,frog 249413,deer 249414,horse 249415,frog 249416,horse 249417,frog 249418,airplane 249419,deer 249420,horse 249421,automobile 249422,frog 249423,ship 249424,bird 249425,frog 249426,dog 249427,ship 249428,deer 249429,ship 249430,deer 249431,cat 249432,truck 249433,cat 249434,bird 249435,airplane 249436,airplane 249437,dog 249438,deer 249439,horse 249440,horse 249441,dog 249442,cat 249443,deer 249444,horse 249445,cat 249446,dog 249447,horse 249448,cat 249449,cat 249450,deer 249451,truck 249452,automobile 249453,airplane 249454,deer 249455,deer 249456,airplane 249457,deer 249458,frog 249459,frog 249460,horse 249461,cat 249462,airplane 249463,cat 249464,frog 249465,deer 249466,truck 249467,bird 249468,airplane 249469,cat 249470,airplane 249471,airplane 249472,deer 249473,airplane 249474,cat 249475,deer 249476,airplane 249477,airplane 249478,deer 249479,airplane 249480,cat 249481,airplane 249482,horse 249483,cat 249484,ship 249485,automobile 249486,horse 249487,truck 249488,deer 249489,deer 249490,deer 249491,automobile 249492,deer 249493,deer 249494,automobile 249495,airplane 249496,frog 249497,frog 249498,deer 249499,deer 249500,frog 249501,deer 249502,horse 249503,frog 249504,horse 249505,frog 249506,frog 249507,cat 249508,cat 249509,deer 249510,deer 249511,dog 249512,airplane 249513,dog 249514,deer 249515,frog 249516,deer 249517,frog 249518,frog 249519,bird 249520,frog 249521,dog 249522,bird 249523,cat 249524,cat 249525,deer 249526,deer 249527,horse 249528,horse 249529,frog 249530,bird 249531,automobile 249532,horse 249533,truck 249534,cat 249535,dog 249536,dog 249537,truck 249538,bird 249539,horse 249540,cat 249541,dog 249542,horse 249543,cat 249544,dog 249545,frog 249546,ship 249547,airplane 249548,horse 249549,cat 249550,deer 249551,frog 249552,bird 249553,horse 249554,ship 249555,airplane 249556,bird 249557,truck 249558,airplane 249559,cat 249560,cat 249561,deer 249562,horse 249563,bird 249564,cat 249565,airplane 249566,airplane 249567,airplane 249568,cat 249569,deer 249570,airplane 249571,automobile 249572,truck 249573,airplane 249574,frog 249575,cat 249576,ship 249577,airplane 249578,cat 249579,dog 249580,bird 249581,cat 249582,dog 249583,bird 249584,frog 249585,frog 249586,frog 249587,airplane 249588,dog 249589,bird 249590,ship 249591,horse 249592,horse 249593,bird 249594,bird 249595,deer 249596,truck 249597,truck 249598,frog 249599,cat 249600,cat 249601,frog 249602,horse 249603,automobile 249604,frog 249605,airplane 249606,truck 249607,frog 249608,frog 249609,airplane 249610,ship 249611,bird 249612,automobile 249613,deer 249614,dog 249615,cat 249616,frog 249617,dog 249618,ship 249619,airplane 249620,frog 249621,bird 249622,truck 249623,dog 249624,airplane 249625,cat 249626,automobile 249627,cat 249628,frog 249629,dog 249630,airplane 249631,horse 249632,deer 249633,bird 249634,airplane 249635,cat 249636,airplane 249637,truck 249638,frog 249639,cat 249640,bird 249641,frog 249642,horse 249643,automobile 249644,frog 249645,horse 249646,frog 249647,deer 249648,frog 249649,ship 249650,deer 249651,automobile 249652,frog 249653,airplane 249654,airplane 249655,dog 249656,deer 249657,ship 249658,deer 249659,dog 249660,dog 249661,frog 249662,bird 249663,frog 249664,cat 249665,automobile 249666,frog 249667,horse 249668,deer 249669,automobile 249670,airplane 249671,dog 249672,deer 249673,bird 249674,horse 249675,ship 249676,cat 249677,dog 249678,bird 249679,truck 249680,deer 249681,airplane 249682,ship 249683,frog 249684,dog 249685,automobile 249686,deer 249687,dog 249688,bird 249689,frog 249690,automobile 249691,bird 249692,horse 249693,frog 249694,bird 249695,truck 249696,deer 249697,horse 249698,deer 249699,cat 249700,frog 249701,horse 249702,truck 249703,cat 249704,bird 249705,cat 249706,automobile 249707,deer 249708,frog 249709,cat 249710,ship 249711,bird 249712,deer 249713,bird 249714,frog 249715,frog 249716,frog 249717,dog 249718,bird 249719,bird 249720,bird 249721,truck 249722,cat 249723,frog 249724,truck 249725,frog 249726,truck 249727,truck 249728,dog 249729,bird 249730,automobile 249731,dog 249732,horse 249733,deer 249734,horse 249735,airplane 249736,deer 249737,dog 249738,cat 249739,ship 249740,cat 249741,dog 249742,frog 249743,cat 249744,deer 249745,bird 249746,ship 249747,horse 249748,deer 249749,automobile 249750,frog 249751,ship 249752,bird 249753,deer 249754,deer 249755,bird 249756,deer 249757,airplane 249758,bird 249759,frog 249760,deer 249761,cat 249762,deer 249763,deer 249764,frog 249765,deer 249766,dog 249767,horse 249768,cat 249769,frog 249770,ship 249771,deer 249772,truck 249773,truck 249774,horse 249775,bird 249776,frog 249777,deer 249778,truck 249779,frog 249780,truck 249781,horse 249782,frog 249783,ship 249784,horse 249785,deer 249786,frog 249787,deer 249788,truck 249789,truck 249790,ship 249791,bird 249792,ship 249793,dog 249794,airplane 249795,deer 249796,deer 249797,airplane 249798,ship 249799,cat 249800,frog 249801,dog 249802,horse 249803,horse 249804,dog 249805,bird 249806,cat 249807,cat 249808,frog 249809,bird 249810,deer 249811,deer 249812,automobile 249813,horse 249814,cat 249815,dog 249816,horse 249817,deer 249818,bird 249819,dog 249820,dog 249821,truck 249822,deer 249823,truck 249824,truck 249825,truck 249826,bird 249827,automobile 249828,deer 249829,frog 249830,horse 249831,deer 249832,dog 249833,cat 249834,deer 249835,cat 249836,deer 249837,dog 249838,automobile 249839,ship 249840,cat 249841,truck 249842,horse 249843,truck 249844,frog 249845,automobile 249846,deer 249847,frog 249848,bird 249849,dog 249850,frog 249851,frog 249852,bird 249853,horse 249854,bird 249855,bird 249856,bird 249857,truck 249858,ship 249859,ship 249860,ship 249861,automobile 249862,automobile 249863,bird 249864,automobile 249865,deer 249866,dog 249867,bird 249868,ship 249869,dog 249870,cat 249871,horse 249872,truck 249873,automobile 249874,airplane 249875,dog 249876,bird 249877,automobile 249878,automobile 249879,cat 249880,horse 249881,dog 249882,airplane 249883,horse 249884,horse 249885,ship 249886,truck 249887,cat 249888,automobile 249889,airplane 249890,bird 249891,automobile 249892,bird 249893,frog 249894,deer 249895,horse 249896,automobile 249897,bird 249898,bird 249899,horse 249900,dog 249901,horse 249902,cat 249903,frog 249904,frog 249905,cat 249906,cat 249907,truck 249908,dog 249909,truck 249910,truck 249911,airplane 249912,dog 249913,horse 249914,dog 249915,truck 249916,ship 249917,cat 249918,cat 249919,ship 249920,deer 249921,automobile 249922,deer 249923,horse 249924,frog 249925,cat 249926,truck 249927,dog 249928,deer 249929,ship 249930,cat 249931,frog 249932,cat 249933,frog 249934,truck 249935,dog 249936,cat 249937,bird 249938,truck 249939,horse 249940,cat 249941,cat 249942,horse 249943,airplane 249944,truck 249945,ship 249946,horse 249947,automobile 249948,deer 249949,deer 249950,deer 249951,deer 249952,deer 249953,ship 249954,ship 249955,horse 249956,automobile 249957,cat 249958,cat 249959,automobile 249960,dog 249961,cat 249962,frog 249963,horse 249964,ship 249965,truck 249966,deer 249967,ship 249968,bird 249969,deer 249970,cat 249971,frog 249972,truck 249973,horse 249974,bird 249975,horse 249976,bird 249977,horse 249978,deer 249979,cat 249980,cat 249981,cat 249982,cat 249983,horse 249984,cat 249985,deer 249986,frog 249987,bird 249988,bird 249989,horse 249990,horse 249991,bird 249992,airplane 249993,ship 249994,horse 249995,airplane 249996,deer 249997,truck 249998,frog 249999,automobile 250000,truck 250001,deer 250002,truck 250003,cat 250004,frog 250005,airplane 250006,horse 250007,airplane 250008,cat 250009,frog 250010,truck 250011,deer 250012,deer 250013,dog 250014,bird 250015,automobile 250016,cat 250017,dog 250018,deer 250019,truck 250020,bird 250021,cat 250022,truck 250023,dog 250024,dog 250025,deer 250026,bird 250027,automobile 250028,ship 250029,bird 250030,deer 250031,deer 250032,cat 250033,frog 250034,frog 250035,airplane 250036,frog 250037,airplane 250038,deer 250039,bird 250040,dog 250041,cat 250042,horse 250043,bird 250044,cat 250045,bird 250046,airplane 250047,cat 250048,ship 250049,horse 250050,truck 250051,frog 250052,dog 250053,horse 250054,horse 250055,deer 250056,automobile 250057,airplane 250058,frog 250059,cat 250060,truck 250061,airplane 250062,deer 250063,truck 250064,airplane 250065,ship 250066,cat 250067,horse 250068,cat 250069,bird 250070,truck 250071,truck 250072,cat 250073,truck 250074,dog 250075,frog 250076,truck 250077,horse 250078,bird 250079,dog 250080,cat 250081,bird 250082,cat 250083,ship 250084,horse 250085,horse 250086,deer 250087,airplane 250088,cat 250089,horse 250090,horse 250091,horse 250092,cat 250093,deer 250094,airplane 250095,cat 250096,truck 250097,airplane 250098,deer 250099,truck 250100,truck 250101,horse 250102,airplane 250103,horse 250104,cat 250105,automobile 250106,deer 250107,airplane 250108,bird 250109,frog 250110,ship 250111,cat 250112,deer 250113,ship 250114,dog 250115,cat 250116,deer 250117,automobile 250118,truck 250119,truck 250120,bird 250121,deer 250122,bird 250123,automobile 250124,frog 250125,bird 250126,truck 250127,horse 250128,bird 250129,airplane 250130,bird 250131,airplane 250132,frog 250133,airplane 250134,bird 250135,horse 250136,deer 250137,bird 250138,automobile 250139,deer 250140,cat 250141,ship 250142,frog 250143,automobile 250144,horse 250145,cat 250146,bird 250147,frog 250148,deer 250149,frog 250150,frog 250151,deer 250152,automobile 250153,frog 250154,airplane 250155,automobile 250156,cat 250157,horse 250158,frog 250159,deer 250160,deer 250161,dog 250162,automobile 250163,truck 250164,cat 250165,automobile 250166,deer 250167,truck 250168,horse 250169,automobile 250170,horse 250171,dog 250172,deer 250173,frog 250174,ship 250175,dog 250176,dog 250177,truck 250178,dog 250179,deer 250180,deer 250181,deer 250182,airplane 250183,truck 250184,frog 250185,airplane 250186,cat 250187,bird 250188,truck 250189,airplane 250190,cat 250191,deer 250192,dog 250193,horse 250194,airplane 250195,cat 250196,frog 250197,bird 250198,truck 250199,frog 250200,cat 250201,bird 250202,truck 250203,cat 250204,frog 250205,bird 250206,automobile 250207,truck 250208,dog 250209,airplane 250210,cat 250211,cat 250212,ship 250213,deer 250214,deer 250215,bird 250216,bird 250217,cat 250218,dog 250219,cat 250220,truck 250221,cat 250222,cat 250223,dog 250224,airplane 250225,ship 250226,deer 250227,horse 250228,ship 250229,truck 250230,cat 250231,bird 250232,horse 250233,horse 250234,deer 250235,horse 250236,truck 250237,truck 250238,deer 250239,truck 250240,ship 250241,bird 250242,deer 250243,deer 250244,horse 250245,truck 250246,dog 250247,ship 250248,truck 250249,deer 250250,automobile 250251,cat 250252,deer 250253,cat 250254,bird 250255,dog 250256,dog 250257,airplane 250258,automobile 250259,truck 250260,dog 250261,cat 250262,airplane 250263,cat 250264,airplane 250265,dog 250266,deer 250267,bird 250268,airplane 250269,ship 250270,ship 250271,cat 250272,deer 250273,frog 250274,dog 250275,horse 250276,deer 250277,bird 250278,ship 250279,cat 250280,airplane 250281,dog 250282,deer 250283,horse 250284,deer 250285,automobile 250286,bird 250287,dog 250288,airplane 250289,airplane 250290,automobile 250291,automobile 250292,automobile 250293,dog 250294,horse 250295,deer 250296,frog 250297,truck 250298,truck 250299,dog 250300,cat 250301,horse 250302,horse 250303,dog 250304,frog 250305,deer 250306,dog 250307,truck 250308,dog 250309,cat 250310,cat 250311,airplane 250312,automobile 250313,bird 250314,automobile 250315,horse 250316,frog 250317,truck 250318,dog 250319,ship 250320,horse 250321,frog 250322,deer 250323,frog 250324,cat 250325,airplane 250326,frog 250327,frog 250328,automobile 250329,dog 250330,frog 250331,horse 250332,frog 250333,cat 250334,ship 250335,truck 250336,cat 250337,horse 250338,deer 250339,frog 250340,ship 250341,frog 250342,frog 250343,frog 250344,deer 250345,frog 250346,dog 250347,horse 250348,deer 250349,automobile 250350,deer 250351,bird 250352,automobile 250353,dog 250354,deer 250355,deer 250356,deer 250357,horse 250358,ship 250359,bird 250360,frog 250361,frog 250362,dog 250363,truck 250364,airplane 250365,cat 250366,ship 250367,dog 250368,ship 250369,cat 250370,deer 250371,bird 250372,horse 250373,frog 250374,automobile 250375,deer 250376,frog 250377,deer 250378,horse 250379,deer 250380,dog 250381,dog 250382,ship 250383,deer 250384,deer 250385,truck 250386,bird 250387,bird 250388,bird 250389,deer 250390,horse 250391,truck 250392,truck 250393,airplane 250394,deer 250395,truck 250396,frog 250397,frog 250398,cat 250399,horse 250400,automobile 250401,automobile 250402,frog 250403,horse 250404,bird 250405,ship 250406,automobile 250407,bird 250408,frog 250409,airplane 250410,bird 250411,cat 250412,bird 250413,airplane 250414,bird 250415,deer 250416,airplane 250417,cat 250418,horse 250419,dog 250420,cat 250421,ship 250422,ship 250423,ship 250424,bird 250425,dog 250426,ship 250427,cat 250428,dog 250429,dog 250430,dog 250431,automobile 250432,automobile 250433,bird 250434,cat 250435,bird 250436,cat 250437,frog 250438,cat 250439,cat 250440,horse 250441,deer 250442,airplane 250443,dog 250444,airplane 250445,dog 250446,airplane 250447,dog 250448,horse 250449,horse 250450,airplane 250451,cat 250452,cat 250453,truck 250454,cat 250455,horse 250456,bird 250457,frog 250458,ship 250459,horse 250460,dog 250461,deer 250462,bird 250463,automobile 250464,cat 250465,frog 250466,deer 250467,bird 250468,horse 250469,truck 250470,bird 250471,frog 250472,deer 250473,horse 250474,dog 250475,bird 250476,ship 250477,frog 250478,horse 250479,bird 250480,deer 250481,horse 250482,cat 250483,cat 250484,dog 250485,automobile 250486,dog 250487,truck 250488,deer 250489,ship 250490,frog 250491,frog 250492,deer 250493,frog 250494,dog 250495,cat 250496,frog 250497,bird 250498,frog 250499,ship 250500,automobile 250501,truck 250502,horse 250503,cat 250504,truck 250505,bird 250506,horse 250507,bird 250508,cat 250509,dog 250510,frog 250511,frog 250512,airplane 250513,frog 250514,automobile 250515,dog 250516,truck 250517,horse 250518,truck 250519,ship 250520,frog 250521,bird 250522,bird 250523,truck 250524,frog 250525,dog 250526,bird 250527,deer 250528,dog 250529,deer 250530,airplane 250531,deer 250532,truck 250533,airplane 250534,automobile 250535,bird 250536,dog 250537,truck 250538,bird 250539,frog 250540,frog 250541,truck 250542,horse 250543,truck 250544,dog 250545,cat 250546,dog 250547,ship 250548,horse 250549,automobile 250550,cat 250551,ship 250552,dog 250553,airplane 250554,truck 250555,deer 250556,cat 250557,truck 250558,frog 250559,dog 250560,frog 250561,dog 250562,truck 250563,frog 250564,cat 250565,ship 250566,truck 250567,dog 250568,automobile 250569,horse 250570,cat 250571,airplane 250572,frog 250573,automobile 250574,dog 250575,deer 250576,dog 250577,deer 250578,frog 250579,truck 250580,cat 250581,deer 250582,automobile 250583,bird 250584,airplane 250585,horse 250586,horse 250587,truck 250588,truck 250589,automobile 250590,dog 250591,truck 250592,cat 250593,dog 250594,cat 250595,bird 250596,deer 250597,cat 250598,bird 250599,frog 250600,truck 250601,deer 250602,horse 250603,frog 250604,automobile 250605,ship 250606,ship 250607,horse 250608,bird 250609,cat 250610,cat 250611,airplane 250612,dog 250613,ship 250614,horse 250615,cat 250616,airplane 250617,cat 250618,ship 250619,horse 250620,deer 250621,airplane 250622,deer 250623,cat 250624,cat 250625,cat 250626,dog 250627,bird 250628,bird 250629,frog 250630,automobile 250631,dog 250632,horse 250633,frog 250634,horse 250635,cat 250636,horse 250637,deer 250638,cat 250639,cat 250640,deer 250641,airplane 250642,cat 250643,airplane 250644,horse 250645,automobile 250646,ship 250647,truck 250648,frog 250649,horse 250650,horse 250651,cat 250652,bird 250653,deer 250654,deer 250655,airplane 250656,dog 250657,horse 250658,horse 250659,truck 250660,deer 250661,cat 250662,ship 250663,frog 250664,horse 250665,frog 250666,ship 250667,cat 250668,bird 250669,dog 250670,airplane 250671,ship 250672,truck 250673,deer 250674,cat 250675,frog 250676,deer 250677,deer 250678,bird 250679,automobile 250680,bird 250681,bird 250682,truck 250683,cat 250684,cat 250685,bird 250686,horse 250687,frog 250688,ship 250689,horse 250690,frog 250691,ship 250692,horse 250693,frog 250694,horse 250695,cat 250696,deer 250697,horse 250698,deer 250699,deer 250700,ship 250701,dog 250702,deer 250703,bird 250704,deer 250705,horse 250706,dog 250707,bird 250708,truck 250709,ship 250710,deer 250711,frog 250712,truck 250713,bird 250714,bird 250715,dog 250716,truck 250717,cat 250718,dog 250719,automobile 250720,frog 250721,horse 250722,automobile 250723,horse 250724,horse 250725,truck 250726,cat 250727,airplane 250728,airplane 250729,cat 250730,ship 250731,airplane 250732,truck 250733,cat 250734,cat 250735,cat 250736,deer 250737,airplane 250738,ship 250739,ship 250740,ship 250741,bird 250742,ship 250743,cat 250744,dog 250745,truck 250746,truck 250747,ship 250748,deer 250749,automobile 250750,deer 250751,horse 250752,bird 250753,frog 250754,automobile 250755,cat 250756,deer 250757,bird 250758,ship 250759,cat 250760,deer 250761,airplane 250762,cat 250763,truck 250764,bird 250765,bird 250766,deer 250767,airplane 250768,cat 250769,deer 250770,cat 250771,cat 250772,frog 250773,cat 250774,truck 250775,frog 250776,frog 250777,deer 250778,deer 250779,ship 250780,truck 250781,frog 250782,deer 250783,horse 250784,horse 250785,cat 250786,frog 250787,dog 250788,deer 250789,frog 250790,truck 250791,dog 250792,dog 250793,deer 250794,deer 250795,bird 250796,deer 250797,deer 250798,ship 250799,truck 250800,dog 250801,dog 250802,bird 250803,horse 250804,dog 250805,dog 250806,deer 250807,frog 250808,truck 250809,horse 250810,cat 250811,dog 250812,horse 250813,cat 250814,bird 250815,truck 250816,airplane 250817,automobile 250818,truck 250819,deer 250820,cat 250821,airplane 250822,dog 250823,bird 250824,horse 250825,cat 250826,truck 250827,dog 250828,dog 250829,deer 250830,ship 250831,automobile 250832,frog 250833,cat 250834,airplane 250835,ship 250836,cat 250837,dog 250838,bird 250839,frog 250840,frog 250841,frog 250842,cat 250843,deer 250844,automobile 250845,bird 250846,horse 250847,cat 250848,truck 250849,airplane 250850,truck 250851,automobile 250852,horse 250853,horse 250854,dog 250855,automobile 250856,airplane 250857,deer 250858,bird 250859,cat 250860,horse 250861,cat 250862,dog 250863,cat 250864,frog 250865,dog 250866,truck 250867,dog 250868,horse 250869,airplane 250870,deer 250871,airplane 250872,bird 250873,ship 250874,airplane 250875,deer 250876,deer 250877,dog 250878,deer 250879,airplane 250880,horse 250881,dog 250882,frog 250883,deer 250884,deer 250885,horse 250886,truck 250887,deer 250888,cat 250889,automobile 250890,truck 250891,automobile 250892,cat 250893,airplane 250894,ship 250895,frog 250896,dog 250897,ship 250898,truck 250899,frog 250900,cat 250901,frog 250902,horse 250903,automobile 250904,cat 250905,bird 250906,deer 250907,truck 250908,bird 250909,truck 250910,frog 250911,ship 250912,truck 250913,automobile 250914,horse 250915,dog 250916,automobile 250917,frog 250918,truck 250919,dog 250920,bird 250921,deer 250922,frog 250923,horse 250924,automobile 250925,deer 250926,automobile 250927,bird 250928,deer 250929,horse 250930,frog 250931,deer 250932,automobile 250933,frog 250934,frog 250935,airplane 250936,truck 250937,cat 250938,dog 250939,automobile 250940,cat 250941,deer 250942,horse 250943,dog 250944,deer 250945,dog 250946,frog 250947,dog 250948,truck 250949,deer 250950,automobile 250951,bird 250952,truck 250953,cat 250954,bird 250955,deer 250956,cat 250957,dog 250958,frog 250959,automobile 250960,deer 250961,bird 250962,cat 250963,truck 250964,automobile 250965,deer 250966,frog 250967,deer 250968,truck 250969,ship 250970,frog 250971,truck 250972,frog 250973,bird 250974,automobile 250975,deer 250976,ship 250977,deer 250978,horse 250979,truck 250980,frog 250981,bird 250982,airplane 250983,frog 250984,airplane 250985,frog 250986,ship 250987,airplane 250988,cat 250989,truck 250990,dog 250991,cat 250992,cat 250993,horse 250994,horse 250995,frog 250996,horse 250997,dog 250998,frog 250999,frog 251000,horse 251001,automobile 251002,dog 251003,frog 251004,horse 251005,horse 251006,deer 251007,airplane 251008,deer 251009,deer 251010,truck 251011,frog 251012,deer 251013,truck 251014,cat 251015,automobile 251016,automobile 251017,airplane 251018,automobile 251019,deer 251020,automobile 251021,frog 251022,dog 251023,automobile 251024,deer 251025,cat 251026,frog 251027,cat 251028,horse 251029,deer 251030,dog 251031,deer 251032,ship 251033,frog 251034,truck 251035,frog 251036,frog 251037,deer 251038,airplane 251039,dog 251040,bird 251041,airplane 251042,horse 251043,truck 251044,deer 251045,deer 251046,horse 251047,deer 251048,airplane 251049,cat 251050,deer 251051,cat 251052,cat 251053,dog 251054,airplane 251055,airplane 251056,automobile 251057,frog 251058,dog 251059,dog 251060,ship 251061,horse 251062,deer 251063,bird 251064,cat 251065,bird 251066,ship 251067,bird 251068,frog 251069,truck 251070,ship 251071,frog 251072,deer 251073,deer 251074,cat 251075,truck 251076,dog 251077,frog 251078,dog 251079,airplane 251080,cat 251081,deer 251082,automobile 251083,deer 251084,dog 251085,cat 251086,cat 251087,automobile 251088,deer 251089,ship 251090,cat 251091,horse 251092,frog 251093,truck 251094,cat 251095,frog 251096,frog 251097,deer 251098,deer 251099,automobile 251100,frog 251101,automobile 251102,bird 251103,frog 251104,cat 251105,bird 251106,airplane 251107,horse 251108,frog 251109,cat 251110,deer 251111,deer 251112,airplane 251113,cat 251114,truck 251115,dog 251116,cat 251117,ship 251118,cat 251119,deer 251120,airplane 251121,horse 251122,cat 251123,dog 251124,ship 251125,ship 251126,bird 251127,ship 251128,airplane 251129,frog 251130,frog 251131,automobile 251132,truck 251133,cat 251134,automobile 251135,ship 251136,dog 251137,frog 251138,truck 251139,automobile 251140,automobile 251141,automobile 251142,airplane 251143,truck 251144,horse 251145,frog 251146,airplane 251147,deer 251148,frog 251149,cat 251150,bird 251151,dog 251152,airplane 251153,horse 251154,cat 251155,bird 251156,bird 251157,deer 251158,deer 251159,frog 251160,truck 251161,bird 251162,bird 251163,frog 251164,frog 251165,truck 251166,ship 251167,horse 251168,horse 251169,dog 251170,frog 251171,deer 251172,truck 251173,frog 251174,truck 251175,airplane 251176,horse 251177,dog 251178,bird 251179,horse 251180,airplane 251181,deer 251182,cat 251183,automobile 251184,automobile 251185,truck 251186,frog 251187,automobile 251188,bird 251189,cat 251190,cat 251191,ship 251192,airplane 251193,dog 251194,airplane 251195,ship 251196,frog 251197,frog 251198,automobile 251199,cat 251200,dog 251201,automobile 251202,automobile 251203,ship 251204,cat 251205,frog 251206,automobile 251207,cat 251208,automobile 251209,truck 251210,dog 251211,truck 251212,cat 251213,cat 251214,truck 251215,cat 251216,ship 251217,airplane 251218,cat 251219,deer 251220,cat 251221,truck 251222,deer 251223,bird 251224,frog 251225,dog 251226,automobile 251227,ship 251228,cat 251229,cat 251230,dog 251231,frog 251232,cat 251233,dog 251234,cat 251235,airplane 251236,horse 251237,horse 251238,frog 251239,deer 251240,horse 251241,deer 251242,horse 251243,bird 251244,deer 251245,frog 251246,frog 251247,truck 251248,truck 251249,cat 251250,airplane 251251,dog 251252,dog 251253,automobile 251254,cat 251255,bird 251256,bird 251257,truck 251258,cat 251259,cat 251260,ship 251261,cat 251262,frog 251263,deer 251264,bird 251265,horse 251266,horse 251267,deer 251268,airplane 251269,dog 251270,airplane 251271,airplane 251272,ship 251273,truck 251274,horse 251275,cat 251276,ship 251277,horse 251278,ship 251279,bird 251280,automobile 251281,airplane 251282,cat 251283,ship 251284,truck 251285,cat 251286,airplane 251287,deer 251288,truck 251289,bird 251290,bird 251291,cat 251292,bird 251293,airplane 251294,ship 251295,truck 251296,cat 251297,cat 251298,deer 251299,cat 251300,dog 251301,automobile 251302,automobile 251303,bird 251304,truck 251305,automobile 251306,ship 251307,cat 251308,bird 251309,deer 251310,truck 251311,truck 251312,bird 251313,dog 251314,truck 251315,automobile 251316,dog 251317,deer 251318,horse 251319,horse 251320,deer 251321,cat 251322,horse 251323,ship 251324,truck 251325,dog 251326,ship 251327,deer 251328,cat 251329,deer 251330,automobile 251331,cat 251332,dog 251333,ship 251334,horse 251335,deer 251336,bird 251337,airplane 251338,deer 251339,airplane 251340,cat 251341,frog 251342,frog 251343,truck 251344,automobile 251345,horse 251346,cat 251347,frog 251348,dog 251349,airplane 251350,airplane 251351,deer 251352,airplane 251353,frog 251354,bird 251355,truck 251356,truck 251357,horse 251358,ship 251359,airplane 251360,truck 251361,truck 251362,deer 251363,horse 251364,frog 251365,deer 251366,deer 251367,ship 251368,truck 251369,automobile 251370,horse 251371,horse 251372,deer 251373,bird 251374,cat 251375,dog 251376,frog 251377,dog 251378,cat 251379,horse 251380,deer 251381,automobile 251382,deer 251383,horse 251384,deer 251385,dog 251386,cat 251387,ship 251388,automobile 251389,truck 251390,bird 251391,cat 251392,horse 251393,airplane 251394,frog 251395,frog 251396,bird 251397,cat 251398,deer 251399,dog 251400,automobile 251401,automobile 251402,horse 251403,ship 251404,bird 251405,frog 251406,cat 251407,dog 251408,deer 251409,bird 251410,automobile 251411,horse 251412,airplane 251413,dog 251414,automobile 251415,truck 251416,horse 251417,deer 251418,ship 251419,truck 251420,cat 251421,bird 251422,deer 251423,cat 251424,ship 251425,cat 251426,bird 251427,cat 251428,truck 251429,frog 251430,ship 251431,airplane 251432,dog 251433,truck 251434,airplane 251435,deer 251436,dog 251437,dog 251438,bird 251439,dog 251440,deer 251441,truck 251442,truck 251443,bird 251444,deer 251445,cat 251446,airplane 251447,airplane 251448,cat 251449,frog 251450,dog 251451,frog 251452,cat 251453,deer 251454,truck 251455,horse 251456,automobile 251457,bird 251458,bird 251459,cat 251460,truck 251461,horse 251462,ship 251463,bird 251464,dog 251465,cat 251466,bird 251467,deer 251468,cat 251469,airplane 251470,horse 251471,ship 251472,deer 251473,horse 251474,airplane 251475,deer 251476,automobile 251477,ship 251478,ship 251479,frog 251480,airplane 251481,bird 251482,automobile 251483,bird 251484,horse 251485,bird 251486,cat 251487,dog 251488,deer 251489,cat 251490,dog 251491,ship 251492,airplane 251493,deer 251494,ship 251495,dog 251496,truck 251497,deer 251498,horse 251499,horse 251500,bird 251501,automobile 251502,ship 251503,dog 251504,frog 251505,deer 251506,bird 251507,deer 251508,truck 251509,deer 251510,cat 251511,horse 251512,dog 251513,dog 251514,cat 251515,frog 251516,deer 251517,dog 251518,airplane 251519,cat 251520,airplane 251521,bird 251522,cat 251523,airplane 251524,frog 251525,truck 251526,ship 251527,bird 251528,deer 251529,horse 251530,automobile 251531,cat 251532,cat 251533,airplane 251534,frog 251535,deer 251536,truck 251537,deer 251538,dog 251539,truck 251540,deer 251541,cat 251542,ship 251543,deer 251544,frog 251545,airplane 251546,frog 251547,frog 251548,deer 251549,frog 251550,frog 251551,truck 251552,ship 251553,cat 251554,bird 251555,deer 251556,cat 251557,frog 251558,cat 251559,truck 251560,automobile 251561,airplane 251562,deer 251563,ship 251564,dog 251565,airplane 251566,cat 251567,frog 251568,deer 251569,automobile 251570,deer 251571,dog 251572,cat 251573,airplane 251574,cat 251575,cat 251576,frog 251577,frog 251578,ship 251579,horse 251580,deer 251581,deer 251582,horse 251583,deer 251584,dog 251585,frog 251586,truck 251587,frog 251588,deer 251589,dog 251590,bird 251591,truck 251592,horse 251593,cat 251594,truck 251595,deer 251596,dog 251597,truck 251598,dog 251599,horse 251600,horse 251601,dog 251602,horse 251603,airplane 251604,automobile 251605,ship 251606,dog 251607,cat 251608,truck 251609,deer 251610,deer 251611,cat 251612,automobile 251613,automobile 251614,cat 251615,deer 251616,frog 251617,cat 251618,cat 251619,ship 251620,horse 251621,horse 251622,frog 251623,automobile 251624,ship 251625,deer 251626,dog 251627,cat 251628,truck 251629,deer 251630,deer 251631,truck 251632,truck 251633,horse 251634,deer 251635,deer 251636,airplane 251637,frog 251638,truck 251639,frog 251640,horse 251641,airplane 251642,dog 251643,cat 251644,deer 251645,bird 251646,frog 251647,ship 251648,ship 251649,truck 251650,deer 251651,dog 251652,truck 251653,bird 251654,airplane 251655,horse 251656,cat 251657,dog 251658,airplane 251659,bird 251660,ship 251661,truck 251662,deer 251663,deer 251664,cat 251665,ship 251666,ship 251667,frog 251668,automobile 251669,airplane 251670,airplane 251671,truck 251672,frog 251673,frog 251674,cat 251675,truck 251676,ship 251677,frog 251678,ship 251679,deer 251680,frog 251681,bird 251682,automobile 251683,cat 251684,ship 251685,horse 251686,airplane 251687,frog 251688,frog 251689,airplane 251690,deer 251691,bird 251692,deer 251693,deer 251694,frog 251695,cat 251696,frog 251697,truck 251698,dog 251699,bird 251700,deer 251701,deer 251702,frog 251703,cat 251704,dog 251705,ship 251706,deer 251707,dog 251708,truck 251709,airplane 251710,airplane 251711,dog 251712,bird 251713,airplane 251714,frog 251715,automobile 251716,bird 251717,frog 251718,truck 251719,deer 251720,frog 251721,bird 251722,cat 251723,cat 251724,airplane 251725,cat 251726,dog 251727,truck 251728,cat 251729,airplane 251730,airplane 251731,automobile 251732,automobile 251733,deer 251734,automobile 251735,horse 251736,deer 251737,frog 251738,ship 251739,dog 251740,dog 251741,frog 251742,truck 251743,frog 251744,dog 251745,ship 251746,deer 251747,automobile 251748,dog 251749,truck 251750,automobile 251751,deer 251752,frog 251753,airplane 251754,deer 251755,deer 251756,dog 251757,cat 251758,cat 251759,frog 251760,truck 251761,airplane 251762,truck 251763,deer 251764,cat 251765,cat 251766,bird 251767,airplane 251768,cat 251769,deer 251770,automobile 251771,bird 251772,ship 251773,horse 251774,frog 251775,airplane 251776,horse 251777,truck 251778,cat 251779,automobile 251780,bird 251781,horse 251782,cat 251783,airplane 251784,frog 251785,bird 251786,cat 251787,bird 251788,horse 251789,ship 251790,cat 251791,cat 251792,horse 251793,frog 251794,automobile 251795,automobile 251796,cat 251797,airplane 251798,cat 251799,truck 251800,deer 251801,dog 251802,bird 251803,dog 251804,cat 251805,frog 251806,horse 251807,dog 251808,deer 251809,ship 251810,cat 251811,bird 251812,cat 251813,automobile 251814,horse 251815,frog 251816,cat 251817,cat 251818,ship 251819,frog 251820,horse 251821,deer 251822,horse 251823,deer 251824,truck 251825,horse 251826,deer 251827,ship 251828,deer 251829,ship 251830,airplane 251831,deer 251832,dog 251833,deer 251834,bird 251835,ship 251836,airplane 251837,deer 251838,truck 251839,airplane 251840,deer 251841,horse 251842,cat 251843,bird 251844,ship 251845,horse 251846,frog 251847,ship 251848,airplane 251849,bird 251850,horse 251851,horse 251852,frog 251853,ship 251854,deer 251855,deer 251856,horse 251857,deer 251858,cat 251859,automobile 251860,deer 251861,automobile 251862,frog 251863,frog 251864,dog 251865,deer 251866,truck 251867,ship 251868,frog 251869,automobile 251870,dog 251871,dog 251872,bird 251873,deer 251874,dog 251875,cat 251876,deer 251877,frog 251878,airplane 251879,frog 251880,frog 251881,deer 251882,ship 251883,deer 251884,dog 251885,dog 251886,automobile 251887,dog 251888,bird 251889,deer 251890,ship 251891,deer 251892,bird 251893,frog 251894,truck 251895,dog 251896,ship 251897,ship 251898,cat 251899,horse 251900,cat 251901,bird 251902,ship 251903,cat 251904,dog 251905,airplane 251906,dog 251907,automobile 251908,truck 251909,ship 251910,truck 251911,truck 251912,dog 251913,bird 251914,horse 251915,truck 251916,frog 251917,horse 251918,automobile 251919,bird 251920,deer 251921,deer 251922,deer 251923,dog 251924,automobile 251925,cat 251926,ship 251927,cat 251928,ship 251929,deer 251930,deer 251931,dog 251932,deer 251933,automobile 251934,deer 251935,frog 251936,deer 251937,bird 251938,deer 251939,dog 251940,deer 251941,dog 251942,ship 251943,deer 251944,ship 251945,cat 251946,automobile 251947,dog 251948,frog 251949,frog 251950,bird 251951,frog 251952,ship 251953,frog 251954,horse 251955,bird 251956,frog 251957,ship 251958,truck 251959,horse 251960,cat 251961,cat 251962,airplane 251963,deer 251964,cat 251965,automobile 251966,ship 251967,bird 251968,horse 251969,bird 251970,automobile 251971,cat 251972,cat 251973,ship 251974,dog 251975,horse 251976,cat 251977,bird 251978,airplane 251979,deer 251980,cat 251981,truck 251982,dog 251983,airplane 251984,truck 251985,bird 251986,cat 251987,deer 251988,frog 251989,ship 251990,bird 251991,cat 251992,airplane 251993,truck 251994,airplane 251995,deer 251996,horse 251997,airplane 251998,ship 251999,bird 252000,bird 252001,frog 252002,horse 252003,cat 252004,dog 252005,deer 252006,dog 252007,horse 252008,cat 252009,frog 252010,ship 252011,horse 252012,truck 252013,airplane 252014,truck 252015,truck 252016,frog 252017,dog 252018,deer 252019,truck 252020,airplane 252021,cat 252022,frog 252023,airplane 252024,cat 252025,ship 252026,dog 252027,dog 252028,automobile 252029,truck 252030,automobile 252031,bird 252032,automobile 252033,truck 252034,horse 252035,truck 252036,dog 252037,bird 252038,frog 252039,frog 252040,deer 252041,truck 252042,truck 252043,horse 252044,dog 252045,bird 252046,frog 252047,automobile 252048,ship 252049,frog 252050,deer 252051,frog 252052,frog 252053,deer 252054,truck 252055,horse 252056,cat 252057,frog 252058,frog 252059,deer 252060,airplane 252061,cat 252062,frog 252063,ship 252064,cat 252065,dog 252066,dog 252067,dog 252068,automobile 252069,horse 252070,cat 252071,frog 252072,automobile 252073,frog 252074,cat 252075,truck 252076,deer 252077,dog 252078,ship 252079,automobile 252080,cat 252081,deer 252082,airplane 252083,automobile 252084,frog 252085,bird 252086,ship 252087,cat 252088,cat 252089,ship 252090,dog 252091,truck 252092,deer 252093,deer 252094,deer 252095,deer 252096,horse 252097,automobile 252098,deer 252099,dog 252100,bird 252101,ship 252102,cat 252103,frog 252104,bird 252105,horse 252106,automobile 252107,cat 252108,frog 252109,automobile 252110,frog 252111,dog 252112,dog 252113,horse 252114,automobile 252115,automobile 252116,ship 252117,bird 252118,ship 252119,dog 252120,horse 252121,bird 252122,truck 252123,frog 252124,horse 252125,truck 252126,truck 252127,bird 252128,automobile 252129,horse 252130,frog 252131,dog 252132,frog 252133,ship 252134,truck 252135,ship 252136,deer 252137,bird 252138,truck 252139,deer 252140,bird 252141,frog 252142,horse 252143,cat 252144,dog 252145,dog 252146,airplane 252147,cat 252148,ship 252149,automobile 252150,truck 252151,horse 252152,horse 252153,dog 252154,airplane 252155,dog 252156,truck 252157,frog 252158,deer 252159,dog 252160,cat 252161,truck 252162,frog 252163,ship 252164,deer 252165,deer 252166,deer 252167,horse 252168,bird 252169,horse 252170,frog 252171,dog 252172,dog 252173,cat 252174,dog 252175,deer 252176,horse 252177,deer 252178,deer 252179,frog 252180,ship 252181,automobile 252182,cat 252183,automobile 252184,deer 252185,frog 252186,truck 252187,frog 252188,cat 252189,cat 252190,cat 252191,deer 252192,deer 252193,dog 252194,cat 252195,deer 252196,horse 252197,truck 252198,truck 252199,ship 252200,cat 252201,cat 252202,frog 252203,dog 252204,horse 252205,truck 252206,cat 252207,ship 252208,airplane 252209,frog 252210,bird 252211,bird 252212,bird 252213,truck 252214,horse 252215,cat 252216,automobile 252217,ship 252218,truck 252219,truck 252220,frog 252221,frog 252222,truck 252223,automobile 252224,airplane 252225,bird 252226,horse 252227,ship 252228,cat 252229,dog 252230,truck 252231,deer 252232,ship 252233,bird 252234,bird 252235,horse 252236,horse 252237,truck 252238,cat 252239,automobile 252240,frog 252241,truck 252242,truck 252243,dog 252244,airplane 252245,horse 252246,horse 252247,horse 252248,cat 252249,deer 252250,bird 252251,cat 252252,ship 252253,cat 252254,frog 252255,deer 252256,deer 252257,horse 252258,frog 252259,automobile 252260,deer 252261,deer 252262,airplane 252263,bird 252264,airplane 252265,deer 252266,truck 252267,cat 252268,frog 252269,frog 252270,airplane 252271,truck 252272,cat 252273,ship 252274,ship 252275,frog 252276,horse 252277,truck 252278,bird 252279,dog 252280,cat 252281,horse 252282,airplane 252283,ship 252284,frog 252285,truck 252286,automobile 252287,horse 252288,truck 252289,airplane 252290,airplane 252291,deer 252292,cat 252293,frog 252294,airplane 252295,truck 252296,deer 252297,frog 252298,bird 252299,automobile 252300,horse 252301,automobile 252302,cat 252303,airplane 252304,horse 252305,horse 252306,frog 252307,dog 252308,airplane 252309,bird 252310,ship 252311,dog 252312,automobile 252313,horse 252314,horse 252315,cat 252316,truck 252317,automobile 252318,truck 252319,frog 252320,cat 252321,bird 252322,ship 252323,frog 252324,airplane 252325,cat 252326,cat 252327,bird 252328,airplane 252329,dog 252330,truck 252331,frog 252332,cat 252333,automobile 252334,truck 252335,cat 252336,horse 252337,deer 252338,frog 252339,cat 252340,deer 252341,cat 252342,truck 252343,dog 252344,frog 252345,truck 252346,dog 252347,truck 252348,frog 252349,cat 252350,truck 252351,cat 252352,deer 252353,frog 252354,cat 252355,bird 252356,automobile 252357,bird 252358,frog 252359,truck 252360,truck 252361,bird 252362,ship 252363,dog 252364,cat 252365,cat 252366,cat 252367,cat 252368,airplane 252369,ship 252370,bird 252371,frog 252372,dog 252373,airplane 252374,cat 252375,frog 252376,horse 252377,cat 252378,frog 252379,cat 252380,bird 252381,deer 252382,frog 252383,ship 252384,frog 252385,dog 252386,truck 252387,frog 252388,cat 252389,bird 252390,horse 252391,deer 252392,dog 252393,ship 252394,frog 252395,bird 252396,cat 252397,truck 252398,dog 252399,airplane 252400,deer 252401,horse 252402,frog 252403,horse 252404,deer 252405,frog 252406,cat 252407,truck 252408,automobile 252409,dog 252410,deer 252411,automobile 252412,frog 252413,truck 252414,dog 252415,frog 252416,automobile 252417,dog 252418,deer 252419,frog 252420,horse 252421,horse 252422,bird 252423,frog 252424,frog 252425,horse 252426,horse 252427,frog 252428,automobile 252429,dog 252430,cat 252431,bird 252432,dog 252433,cat 252434,cat 252435,deer 252436,automobile 252437,cat 252438,dog 252439,deer 252440,horse 252441,cat 252442,cat 252443,frog 252444,automobile 252445,ship 252446,automobile 252447,frog 252448,dog 252449,deer 252450,truck 252451,airplane 252452,dog 252453,horse 252454,ship 252455,airplane 252456,airplane 252457,dog 252458,bird 252459,horse 252460,cat 252461,frog 252462,frog 252463,cat 252464,dog 252465,cat 252466,frog 252467,airplane 252468,airplane 252469,cat 252470,deer 252471,cat 252472,airplane 252473,cat 252474,frog 252475,deer 252476,ship 252477,deer 252478,cat 252479,dog 252480,deer 252481,cat 252482,ship 252483,dog 252484,ship 252485,bird 252486,bird 252487,cat 252488,cat 252489,frog 252490,bird 252491,truck 252492,deer 252493,truck 252494,bird 252495,frog 252496,cat 252497,ship 252498,deer 252499,deer 252500,frog 252501,frog 252502,truck 252503,dog 252504,truck 252505,deer 252506,dog 252507,dog 252508,ship 252509,truck 252510,bird 252511,frog 252512,dog 252513,airplane 252514,cat 252515,deer 252516,ship 252517,frog 252518,dog 252519,deer 252520,cat 252521,truck 252522,frog 252523,ship 252524,automobile 252525,automobile 252526,airplane 252527,frog 252528,deer 252529,airplane 252530,horse 252531,frog 252532,cat 252533,ship 252534,cat 252535,automobile 252536,airplane 252537,airplane 252538,dog 252539,cat 252540,cat 252541,horse 252542,bird 252543,ship 252544,frog 252545,bird 252546,ship 252547,bird 252548,deer 252549,cat 252550,truck 252551,dog 252552,cat 252553,deer 252554,horse 252555,horse 252556,deer 252557,dog 252558,bird 252559,cat 252560,truck 252561,truck 252562,frog 252563,dog 252564,deer 252565,horse 252566,ship 252567,ship 252568,cat 252569,airplane 252570,automobile 252571,dog 252572,bird 252573,deer 252574,dog 252575,ship 252576,deer 252577,bird 252578,cat 252579,airplane 252580,automobile 252581,deer 252582,horse 252583,airplane 252584,airplane 252585,truck 252586,deer 252587,bird 252588,frog 252589,airplane 252590,bird 252591,truck 252592,dog 252593,cat 252594,deer 252595,frog 252596,bird 252597,bird 252598,truck 252599,airplane 252600,bird 252601,dog 252602,deer 252603,deer 252604,horse 252605,deer 252606,ship 252607,ship 252608,bird 252609,deer 252610,airplane 252611,dog 252612,frog 252613,horse 252614,cat 252615,bird 252616,cat 252617,bird 252618,dog 252619,truck 252620,horse 252621,automobile 252622,bird 252623,ship 252624,cat 252625,airplane 252626,truck 252627,deer 252628,deer 252629,deer 252630,dog 252631,horse 252632,deer 252633,bird 252634,cat 252635,automobile 252636,automobile 252637,dog 252638,bird 252639,frog 252640,automobile 252641,cat 252642,truck 252643,ship 252644,frog 252645,deer 252646,truck 252647,dog 252648,horse 252649,horse 252650,ship 252651,deer 252652,bird 252653,automobile 252654,airplane 252655,truck 252656,deer 252657,truck 252658,frog 252659,truck 252660,horse 252661,airplane 252662,cat 252663,frog 252664,ship 252665,bird 252666,frog 252667,dog 252668,frog 252669,truck 252670,horse 252671,frog 252672,cat 252673,truck 252674,deer 252675,bird 252676,dog 252677,automobile 252678,deer 252679,automobile 252680,bird 252681,ship 252682,bird 252683,ship 252684,deer 252685,cat 252686,horse 252687,dog 252688,frog 252689,dog 252690,frog 252691,truck 252692,automobile 252693,truck 252694,frog 252695,airplane 252696,airplane 252697,horse 252698,bird 252699,dog 252700,frog 252701,frog 252702,truck 252703,automobile 252704,truck 252705,truck 252706,cat 252707,deer 252708,cat 252709,cat 252710,truck 252711,airplane 252712,cat 252713,dog 252714,bird 252715,dog 252716,bird 252717,bird 252718,dog 252719,bird 252720,horse 252721,truck 252722,cat 252723,airplane 252724,dog 252725,horse 252726,automobile 252727,cat 252728,dog 252729,deer 252730,bird 252731,airplane 252732,frog 252733,automobile 252734,horse 252735,dog 252736,cat 252737,deer 252738,frog 252739,truck 252740,dog 252741,dog 252742,deer 252743,dog 252744,ship 252745,cat 252746,cat 252747,dog 252748,frog 252749,bird 252750,frog 252751,truck 252752,deer 252753,truck 252754,airplane 252755,cat 252756,deer 252757,horse 252758,bird 252759,deer 252760,cat 252761,airplane 252762,bird 252763,cat 252764,bird 252765,cat 252766,ship 252767,cat 252768,frog 252769,dog 252770,airplane 252771,airplane 252772,horse 252773,horse 252774,dog 252775,dog 252776,cat 252777,deer 252778,bird 252779,truck 252780,automobile 252781,bird 252782,airplane 252783,cat 252784,airplane 252785,deer 252786,ship 252787,frog 252788,horse 252789,deer 252790,ship 252791,bird 252792,frog 252793,dog 252794,bird 252795,cat 252796,truck 252797,cat 252798,truck 252799,frog 252800,dog 252801,frog 252802,deer 252803,cat 252804,dog 252805,truck 252806,horse 252807,frog 252808,dog 252809,frog 252810,horse 252811,frog 252812,truck 252813,dog 252814,frog 252815,horse 252816,truck 252817,dog 252818,cat 252819,bird 252820,ship 252821,horse 252822,dog 252823,horse 252824,frog 252825,cat 252826,cat 252827,ship 252828,airplane 252829,dog 252830,deer 252831,horse 252832,cat 252833,airplane 252834,dog 252835,frog 252836,ship 252837,airplane 252838,automobile 252839,frog 252840,bird 252841,bird 252842,automobile 252843,ship 252844,automobile 252845,cat 252846,dog 252847,truck 252848,cat 252849,dog 252850,automobile 252851,truck 252852,airplane 252853,frog 252854,ship 252855,airplane 252856,frog 252857,airplane 252858,airplane 252859,airplane 252860,cat 252861,bird 252862,cat 252863,horse 252864,truck 252865,truck 252866,truck 252867,bird 252868,dog 252869,cat 252870,deer 252871,frog 252872,dog 252873,truck 252874,ship 252875,automobile 252876,truck 252877,airplane 252878,frog 252879,truck 252880,dog 252881,cat 252882,cat 252883,bird 252884,bird 252885,ship 252886,automobile 252887,cat 252888,dog 252889,automobile 252890,bird 252891,truck 252892,dog 252893,automobile 252894,airplane 252895,airplane 252896,dog 252897,frog 252898,dog 252899,frog 252900,dog 252901,deer 252902,automobile 252903,cat 252904,bird 252905,horse 252906,deer 252907,horse 252908,airplane 252909,dog 252910,horse 252911,frog 252912,airplane 252913,bird 252914,dog 252915,ship 252916,horse 252917,frog 252918,truck 252919,truck 252920,dog 252921,frog 252922,frog 252923,cat 252924,automobile 252925,truck 252926,bird 252927,cat 252928,deer 252929,automobile 252930,ship 252931,horse 252932,airplane 252933,deer 252934,horse 252935,bird 252936,airplane 252937,bird 252938,dog 252939,ship 252940,bird 252941,ship 252942,ship 252943,deer 252944,truck 252945,airplane 252946,dog 252947,automobile 252948,cat 252949,deer 252950,bird 252951,deer 252952,bird 252953,horse 252954,cat 252955,airplane 252956,frog 252957,cat 252958,ship 252959,bird 252960,frog 252961,deer 252962,deer 252963,deer 252964,frog 252965,cat 252966,frog 252967,deer 252968,ship 252969,horse 252970,deer 252971,deer 252972,dog 252973,horse 252974,dog 252975,cat 252976,dog 252977,dog 252978,horse 252979,automobile 252980,frog 252981,frog 252982,bird 252983,truck 252984,cat 252985,cat 252986,bird 252987,cat 252988,airplane 252989,ship 252990,cat 252991,dog 252992,deer 252993,bird 252994,horse 252995,automobile 252996,automobile 252997,truck 252998,dog 252999,automobile 253000,cat 253001,deer 253002,automobile 253003,ship 253004,cat 253005,bird 253006,frog 253007,horse 253008,dog 253009,airplane 253010,cat 253011,airplane 253012,deer 253013,bird 253014,truck 253015,cat 253016,truck 253017,ship 253018,truck 253019,frog 253020,cat 253021,cat 253022,bird 253023,bird 253024,automobile 253025,deer 253026,airplane 253027,horse 253028,deer 253029,deer 253030,truck 253031,bird 253032,automobile 253033,dog 253034,horse 253035,deer 253036,frog 253037,deer 253038,bird 253039,airplane 253040,bird 253041,cat 253042,bird 253043,horse 253044,automobile 253045,truck 253046,truck 253047,frog 253048,deer 253049,cat 253050,frog 253051,cat 253052,airplane 253053,frog 253054,deer 253055,truck 253056,frog 253057,ship 253058,ship 253059,deer 253060,cat 253061,cat 253062,deer 253063,truck 253064,cat 253065,truck 253066,ship 253067,frog 253068,cat 253069,truck 253070,ship 253071,automobile 253072,bird 253073,frog 253074,deer 253075,cat 253076,horse 253077,cat 253078,cat 253079,deer 253080,cat 253081,horse 253082,dog 253083,dog 253084,airplane 253085,ship 253086,frog 253087,bird 253088,cat 253089,truck 253090,horse 253091,dog 253092,deer 253093,cat 253094,cat 253095,dog 253096,deer 253097,deer 253098,airplane 253099,dog 253100,automobile 253101,deer 253102,bird 253103,bird 253104,airplane 253105,truck 253106,cat 253107,cat 253108,dog 253109,airplane 253110,frog 253111,cat 253112,dog 253113,dog 253114,deer 253115,airplane 253116,horse 253117,cat 253118,frog 253119,automobile 253120,ship 253121,deer 253122,cat 253123,cat 253124,deer 253125,ship 253126,cat 253127,deer 253128,truck 253129,truck 253130,truck 253131,bird 253132,frog 253133,automobile 253134,deer 253135,airplane 253136,deer 253137,deer 253138,frog 253139,cat 253140,horse 253141,deer 253142,bird 253143,frog 253144,frog 253145,ship 253146,automobile 253147,dog 253148,frog 253149,dog 253150,deer 253151,truck 253152,airplane 253153,horse 253154,frog 253155,ship 253156,airplane 253157,cat 253158,truck 253159,dog 253160,truck 253161,truck 253162,airplane 253163,dog 253164,deer 253165,horse 253166,frog 253167,truck 253168,deer 253169,frog 253170,deer 253171,dog 253172,horse 253173,bird 253174,ship 253175,truck 253176,cat 253177,airplane 253178,deer 253179,ship 253180,airplane 253181,deer 253182,deer 253183,deer 253184,airplane 253185,dog 253186,bird 253187,ship 253188,ship 253189,cat 253190,bird 253191,deer 253192,truck 253193,ship 253194,ship 253195,horse 253196,deer 253197,deer 253198,cat 253199,frog 253200,automobile 253201,frog 253202,horse 253203,frog 253204,dog 253205,dog 253206,truck 253207,truck 253208,dog 253209,horse 253210,cat 253211,horse 253212,frog 253213,truck 253214,frog 253215,truck 253216,cat 253217,cat 253218,truck 253219,horse 253220,frog 253221,automobile 253222,ship 253223,dog 253224,ship 253225,truck 253226,deer 253227,truck 253228,frog 253229,cat 253230,truck 253231,airplane 253232,frog 253233,frog 253234,deer 253235,dog 253236,ship 253237,truck 253238,truck 253239,truck 253240,bird 253241,cat 253242,horse 253243,dog 253244,truck 253245,cat 253246,airplane 253247,horse 253248,airplane 253249,ship 253250,bird 253251,horse 253252,frog 253253,automobile 253254,airplane 253255,deer 253256,deer 253257,ship 253258,cat 253259,truck 253260,bird 253261,horse 253262,truck 253263,automobile 253264,automobile 253265,cat 253266,automobile 253267,deer 253268,airplane 253269,ship 253270,airplane 253271,dog 253272,truck 253273,airplane 253274,deer 253275,bird 253276,deer 253277,cat 253278,automobile 253279,bird 253280,frog 253281,airplane 253282,airplane 253283,ship 253284,airplane 253285,bird 253286,deer 253287,frog 253288,cat 253289,cat 253290,horse 253291,cat 253292,deer 253293,cat 253294,airplane 253295,cat 253296,cat 253297,bird 253298,dog 253299,deer 253300,bird 253301,cat 253302,horse 253303,cat 253304,airplane 253305,frog 253306,bird 253307,dog 253308,cat 253309,cat 253310,bird 253311,automobile 253312,frog 253313,bird 253314,dog 253315,airplane 253316,horse 253317,airplane 253318,horse 253319,bird 253320,bird 253321,frog 253322,truck 253323,bird 253324,bird 253325,bird 253326,horse 253327,deer 253328,bird 253329,truck 253330,ship 253331,ship 253332,horse 253333,ship 253334,deer 253335,horse 253336,dog 253337,truck 253338,cat 253339,dog 253340,deer 253341,frog 253342,truck 253343,bird 253344,airplane 253345,truck 253346,horse 253347,cat 253348,horse 253349,ship 253350,cat 253351,cat 253352,truck 253353,ship 253354,truck 253355,truck 253356,horse 253357,ship 253358,truck 253359,bird 253360,deer 253361,cat 253362,cat 253363,frog 253364,horse 253365,cat 253366,dog 253367,deer 253368,deer 253369,ship 253370,dog 253371,deer 253372,truck 253373,ship 253374,truck 253375,horse 253376,horse 253377,airplane 253378,deer 253379,airplane 253380,airplane 253381,bird 253382,horse 253383,cat 253384,horse 253385,horse 253386,ship 253387,cat 253388,dog 253389,ship 253390,dog 253391,airplane 253392,horse 253393,frog 253394,cat 253395,automobile 253396,ship 253397,airplane 253398,automobile 253399,ship 253400,truck 253401,cat 253402,automobile 253403,airplane 253404,bird 253405,cat 253406,ship 253407,cat 253408,ship 253409,truck 253410,horse 253411,automobile 253412,frog 253413,truck 253414,deer 253415,frog 253416,dog 253417,cat 253418,bird 253419,deer 253420,frog 253421,cat 253422,deer 253423,deer 253424,frog 253425,deer 253426,airplane 253427,deer 253428,ship 253429,truck 253430,airplane 253431,frog 253432,frog 253433,deer 253434,deer 253435,ship 253436,truck 253437,deer 253438,cat 253439,deer 253440,dog 253441,truck 253442,deer 253443,dog 253444,airplane 253445,frog 253446,deer 253447,bird 253448,frog 253449,ship 253450,deer 253451,deer 253452,deer 253453,truck 253454,ship 253455,horse 253456,frog 253457,ship 253458,frog 253459,deer 253460,cat 253461,bird 253462,deer 253463,automobile 253464,frog 253465,airplane 253466,airplane 253467,automobile 253468,dog 253469,horse 253470,truck 253471,horse 253472,frog 253473,truck 253474,bird 253475,dog 253476,deer 253477,bird 253478,truck 253479,dog 253480,bird 253481,deer 253482,airplane 253483,ship 253484,dog 253485,cat 253486,deer 253487,truck 253488,truck 253489,airplane 253490,cat 253491,deer 253492,airplane 253493,airplane 253494,ship 253495,automobile 253496,cat 253497,ship 253498,horse 253499,ship 253500,frog 253501,automobile 253502,cat 253503,truck 253504,cat 253505,bird 253506,frog 253507,cat 253508,deer 253509,cat 253510,cat 253511,deer 253512,horse 253513,cat 253514,cat 253515,bird 253516,frog 253517,cat 253518,cat 253519,deer 253520,deer 253521,deer 253522,dog 253523,airplane 253524,airplane 253525,automobile 253526,dog 253527,airplane 253528,truck 253529,airplane 253530,bird 253531,frog 253532,truck 253533,frog 253534,truck 253535,bird 253536,frog 253537,deer 253538,truck 253539,airplane 253540,horse 253541,dog 253542,bird 253543,cat 253544,frog 253545,airplane 253546,frog 253547,frog 253548,truck 253549,airplane 253550,bird 253551,deer 253552,dog 253553,truck 253554,deer 253555,deer 253556,horse 253557,airplane 253558,horse 253559,frog 253560,horse 253561,cat 253562,bird 253563,airplane 253564,horse 253565,bird 253566,ship 253567,frog 253568,dog 253569,cat 253570,cat 253571,deer 253572,ship 253573,dog 253574,airplane 253575,airplane 253576,horse 253577,horse 253578,ship 253579,cat 253580,deer 253581,automobile 253582,frog 253583,horse 253584,automobile 253585,deer 253586,cat 253587,deer 253588,airplane 253589,automobile 253590,cat 253591,airplane 253592,frog 253593,deer 253594,horse 253595,automobile 253596,automobile 253597,horse 253598,horse 253599,airplane 253600,airplane 253601,airplane 253602,frog 253603,frog 253604,dog 253605,horse 253606,frog 253607,dog 253608,horse 253609,deer 253610,ship 253611,truck 253612,airplane 253613,automobile 253614,cat 253615,frog 253616,cat 253617,cat 253618,ship 253619,bird 253620,frog 253621,bird 253622,dog 253623,truck 253624,deer 253625,frog 253626,deer 253627,cat 253628,deer 253629,automobile 253630,cat 253631,deer 253632,deer 253633,dog 253634,frog 253635,airplane 253636,frog 253637,truck 253638,cat 253639,deer 253640,ship 253641,deer 253642,truck 253643,dog 253644,automobile 253645,truck 253646,ship 253647,bird 253648,horse 253649,dog 253650,deer 253651,deer 253652,cat 253653,frog 253654,ship 253655,bird 253656,cat 253657,truck 253658,ship 253659,ship 253660,airplane 253661,cat 253662,cat 253663,horse 253664,cat 253665,deer 253666,deer 253667,automobile 253668,horse 253669,frog 253670,frog 253671,ship 253672,deer 253673,automobile 253674,deer 253675,deer 253676,cat 253677,airplane 253678,bird 253679,deer 253680,bird 253681,dog 253682,airplane 253683,dog 253684,dog 253685,cat 253686,ship 253687,cat 253688,dog 253689,cat 253690,ship 253691,deer 253692,ship 253693,frog 253694,deer 253695,bird 253696,frog 253697,horse 253698,airplane 253699,cat 253700,ship 253701,ship 253702,bird 253703,dog 253704,frog 253705,frog 253706,airplane 253707,deer 253708,automobile 253709,dog 253710,truck 253711,dog 253712,bird 253713,cat 253714,truck 253715,automobile 253716,airplane 253717,airplane 253718,airplane 253719,frog 253720,frog 253721,bird 253722,truck 253723,frog 253724,ship 253725,dog 253726,truck 253727,automobile 253728,frog 253729,frog 253730,truck 253731,dog 253732,truck 253733,automobile 253734,deer 253735,bird 253736,dog 253737,airplane 253738,deer 253739,cat 253740,truck 253741,dog 253742,automobile 253743,deer 253744,dog 253745,airplane 253746,automobile 253747,truck 253748,automobile 253749,airplane 253750,dog 253751,cat 253752,dog 253753,horse 253754,automobile 253755,deer 253756,ship 253757,bird 253758,deer 253759,cat 253760,dog 253761,cat 253762,deer 253763,frog 253764,dog 253765,cat 253766,horse 253767,truck 253768,cat 253769,deer 253770,cat 253771,ship 253772,dog 253773,automobile 253774,frog 253775,cat 253776,airplane 253777,deer 253778,cat 253779,truck 253780,dog 253781,cat 253782,airplane 253783,deer 253784,cat 253785,ship 253786,cat 253787,deer 253788,airplane 253789,horse 253790,airplane 253791,cat 253792,truck 253793,automobile 253794,cat 253795,frog 253796,airplane 253797,truck 253798,horse 253799,truck 253800,airplane 253801,bird 253802,truck 253803,automobile 253804,truck 253805,cat 253806,frog 253807,ship 253808,deer 253809,frog 253810,ship 253811,cat 253812,horse 253813,deer 253814,cat 253815,automobile 253816,deer 253817,dog 253818,ship 253819,truck 253820,deer 253821,bird 253822,deer 253823,airplane 253824,cat 253825,automobile 253826,horse 253827,cat 253828,ship 253829,bird 253830,horse 253831,cat 253832,frog 253833,deer 253834,dog 253835,horse 253836,frog 253837,truck 253838,frog 253839,cat 253840,truck 253841,frog 253842,frog 253843,truck 253844,truck 253845,frog 253846,deer 253847,truck 253848,bird 253849,horse 253850,horse 253851,ship 253852,ship 253853,automobile 253854,bird 253855,deer 253856,ship 253857,cat 253858,horse 253859,deer 253860,ship 253861,airplane 253862,deer 253863,ship 253864,dog 253865,cat 253866,frog 253867,dog 253868,deer 253869,bird 253870,airplane 253871,airplane 253872,ship 253873,dog 253874,deer 253875,automobile 253876,frog 253877,bird 253878,bird 253879,truck 253880,horse 253881,cat 253882,frog 253883,cat 253884,frog 253885,truck 253886,automobile 253887,bird 253888,cat 253889,ship 253890,frog 253891,automobile 253892,truck 253893,dog 253894,ship 253895,airplane 253896,cat 253897,truck 253898,ship 253899,truck 253900,frog 253901,dog 253902,bird 253903,deer 253904,ship 253905,deer 253906,deer 253907,bird 253908,dog 253909,ship 253910,dog 253911,deer 253912,ship 253913,frog 253914,cat 253915,cat 253916,deer 253917,frog 253918,ship 253919,bird 253920,automobile 253921,deer 253922,ship 253923,truck 253924,dog 253925,deer 253926,truck 253927,frog 253928,frog 253929,bird 253930,automobile 253931,bird 253932,horse 253933,bird 253934,horse 253935,truck 253936,frog 253937,ship 253938,frog 253939,ship 253940,bird 253941,automobile 253942,bird 253943,truck 253944,dog 253945,ship 253946,bird 253947,automobile 253948,truck 253949,deer 253950,airplane 253951,frog 253952,airplane 253953,airplane 253954,airplane 253955,dog 253956,bird 253957,deer 253958,dog 253959,automobile 253960,frog 253961,frog 253962,frog 253963,deer 253964,frog 253965,ship 253966,cat 253967,cat 253968,deer 253969,dog 253970,deer 253971,truck 253972,deer 253973,cat 253974,frog 253975,horse 253976,frog 253977,horse 253978,airplane 253979,bird 253980,deer 253981,truck 253982,deer 253983,horse 253984,deer 253985,truck 253986,truck 253987,automobile 253988,bird 253989,cat 253990,frog 253991,dog 253992,deer 253993,dog 253994,bird 253995,airplane 253996,ship 253997,truck 253998,airplane 253999,ship 254000,cat 254001,ship 254002,deer 254003,dog 254004,cat 254005,ship 254006,automobile 254007,horse 254008,automobile 254009,bird 254010,horse 254011,ship 254012,frog 254013,automobile 254014,airplane 254015,dog 254016,airplane 254017,horse 254018,bird 254019,cat 254020,deer 254021,airplane 254022,deer 254023,frog 254024,truck 254025,airplane 254026,frog 254027,automobile 254028,cat 254029,deer 254030,deer 254031,deer 254032,deer 254033,ship 254034,cat 254035,bird 254036,truck 254037,cat 254038,automobile 254039,truck 254040,frog 254041,truck 254042,deer 254043,horse 254044,dog 254045,truck 254046,truck 254047,cat 254048,horse 254049,bird 254050,truck 254051,truck 254052,automobile 254053,frog 254054,frog 254055,ship 254056,bird 254057,automobile 254058,automobile 254059,dog 254060,truck 254061,ship 254062,truck 254063,frog 254064,frog 254065,bird 254066,dog 254067,ship 254068,dog 254069,deer 254070,automobile 254071,truck 254072,cat 254073,bird 254074,dog 254075,truck 254076,frog 254077,cat 254078,ship 254079,frog 254080,dog 254081,truck 254082,ship 254083,bird 254084,automobile 254085,bird 254086,cat 254087,automobile 254088,truck 254089,horse 254090,truck 254091,ship 254092,ship 254093,truck 254094,ship 254095,airplane 254096,frog 254097,truck 254098,deer 254099,frog 254100,horse 254101,horse 254102,deer 254103,cat 254104,airplane 254105,deer 254106,cat 254107,dog 254108,automobile 254109,ship 254110,deer 254111,truck 254112,deer 254113,ship 254114,deer 254115,deer 254116,dog 254117,ship 254118,frog 254119,cat 254120,ship 254121,truck 254122,automobile 254123,automobile 254124,ship 254125,deer 254126,frog 254127,dog 254128,frog 254129,deer 254130,dog 254131,bird 254132,ship 254133,airplane 254134,truck 254135,automobile 254136,airplane 254137,deer 254138,airplane 254139,ship 254140,deer 254141,truck 254142,bird 254143,bird 254144,automobile 254145,ship 254146,horse 254147,ship 254148,deer 254149,dog 254150,truck 254151,dog 254152,frog 254153,bird 254154,bird 254155,dog 254156,ship 254157,cat 254158,frog 254159,frog 254160,deer 254161,truck 254162,ship 254163,frog 254164,truck 254165,ship 254166,airplane 254167,deer 254168,frog 254169,cat 254170,deer 254171,cat 254172,bird 254173,automobile 254174,bird 254175,dog 254176,ship 254177,deer 254178,frog 254179,ship 254180,cat 254181,frog 254182,dog 254183,ship 254184,deer 254185,automobile 254186,horse 254187,frog 254188,cat 254189,truck 254190,airplane 254191,truck 254192,bird 254193,cat 254194,cat 254195,ship 254196,frog 254197,frog 254198,deer 254199,airplane 254200,deer 254201,cat 254202,bird 254203,truck 254204,frog 254205,horse 254206,frog 254207,ship 254208,truck 254209,dog 254210,bird 254211,ship 254212,frog 254213,horse 254214,horse 254215,deer 254216,ship 254217,deer 254218,airplane 254219,deer 254220,truck 254221,bird 254222,frog 254223,dog 254224,deer 254225,automobile 254226,deer 254227,dog 254228,ship 254229,horse 254230,ship 254231,airplane 254232,bird 254233,frog 254234,ship 254235,deer 254236,horse 254237,truck 254238,bird 254239,truck 254240,dog 254241,frog 254242,bird 254243,dog 254244,airplane 254245,horse 254246,frog 254247,deer 254248,dog 254249,truck 254250,truck 254251,truck 254252,bird 254253,frog 254254,frog 254255,bird 254256,bird 254257,cat 254258,frog 254259,bird 254260,deer 254261,cat 254262,cat 254263,frog 254264,airplane 254265,ship 254266,dog 254267,horse 254268,dog 254269,horse 254270,cat 254271,frog 254272,dog 254273,cat 254274,automobile 254275,airplane 254276,automobile 254277,cat 254278,airplane 254279,dog 254280,cat 254281,ship 254282,ship 254283,truck 254284,deer 254285,automobile 254286,cat 254287,deer 254288,horse 254289,horse 254290,horse 254291,cat 254292,deer 254293,ship 254294,airplane 254295,truck 254296,dog 254297,horse 254298,dog 254299,truck 254300,bird 254301,airplane 254302,deer 254303,automobile 254304,cat 254305,horse 254306,frog 254307,truck 254308,ship 254309,frog 254310,horse 254311,truck 254312,dog 254313,cat 254314,horse 254315,truck 254316,cat 254317,cat 254318,truck 254319,horse 254320,dog 254321,deer 254322,horse 254323,horse 254324,horse 254325,deer 254326,deer 254327,automobile 254328,frog 254329,ship 254330,airplane 254331,frog 254332,bird 254333,automobile 254334,dog 254335,cat 254336,horse 254337,automobile 254338,bird 254339,horse 254340,automobile 254341,cat 254342,deer 254343,automobile 254344,cat 254345,cat 254346,deer 254347,cat 254348,frog 254349,cat 254350,frog 254351,deer 254352,cat 254353,automobile 254354,truck 254355,frog 254356,automobile 254357,frog 254358,truck 254359,ship 254360,frog 254361,truck 254362,cat 254363,truck 254364,dog 254365,cat 254366,dog 254367,deer 254368,deer 254369,deer 254370,horse 254371,airplane 254372,dog 254373,deer 254374,automobile 254375,airplane 254376,dog 254377,bird 254378,dog 254379,dog 254380,frog 254381,frog 254382,cat 254383,deer 254384,automobile 254385,cat 254386,ship 254387,cat 254388,ship 254389,horse 254390,horse 254391,cat 254392,frog 254393,frog 254394,dog 254395,ship 254396,cat 254397,cat 254398,frog 254399,frog 254400,airplane 254401,deer 254402,cat 254403,truck 254404,truck 254405,bird 254406,horse 254407,deer 254408,dog 254409,truck 254410,cat 254411,frog 254412,bird 254413,ship 254414,cat 254415,deer 254416,truck 254417,cat 254418,frog 254419,bird 254420,bird 254421,dog 254422,airplane 254423,bird 254424,airplane 254425,horse 254426,truck 254427,deer 254428,airplane 254429,cat 254430,deer 254431,dog 254432,horse 254433,horse 254434,horse 254435,frog 254436,truck 254437,automobile 254438,bird 254439,horse 254440,horse 254441,cat 254442,dog 254443,ship 254444,airplane 254445,ship 254446,airplane 254447,bird 254448,truck 254449,cat 254450,frog 254451,cat 254452,horse 254453,cat 254454,horse 254455,dog 254456,dog 254457,dog 254458,dog 254459,airplane 254460,cat 254461,dog 254462,bird 254463,airplane 254464,ship 254465,bird 254466,airplane 254467,frog 254468,cat 254469,horse 254470,frog 254471,truck 254472,cat 254473,deer 254474,bird 254475,airplane 254476,airplane 254477,deer 254478,frog 254479,bird 254480,frog 254481,airplane 254482,bird 254483,bird 254484,cat 254485,cat 254486,truck 254487,truck 254488,automobile 254489,truck 254490,horse 254491,truck 254492,automobile 254493,cat 254494,truck 254495,airplane 254496,truck 254497,ship 254498,dog 254499,truck 254500,automobile 254501,dog 254502,truck 254503,dog 254504,automobile 254505,bird 254506,deer 254507,cat 254508,bird 254509,frog 254510,bird 254511,truck 254512,deer 254513,ship 254514,cat 254515,cat 254516,deer 254517,cat 254518,deer 254519,bird 254520,cat 254521,cat 254522,horse 254523,frog 254524,horse 254525,airplane 254526,airplane 254527,truck 254528,bird 254529,dog 254530,dog 254531,dog 254532,automobile 254533,truck 254534,dog 254535,cat 254536,frog 254537,truck 254538,horse 254539,deer 254540,automobile 254541,automobile 254542,truck 254543,horse 254544,bird 254545,automobile 254546,horse 254547,truck 254548,truck 254549,frog 254550,bird 254551,deer 254552,truck 254553,automobile 254554,airplane 254555,deer 254556,cat 254557,ship 254558,dog 254559,cat 254560,frog 254561,ship 254562,bird 254563,bird 254564,truck 254565,cat 254566,bird 254567,ship 254568,bird 254569,horse 254570,dog 254571,deer 254572,frog 254573,airplane 254574,cat 254575,automobile 254576,ship 254577,dog 254578,cat 254579,bird 254580,deer 254581,cat 254582,horse 254583,dog 254584,airplane 254585,cat 254586,cat 254587,deer 254588,truck 254589,frog 254590,dog 254591,dog 254592,deer 254593,bird 254594,bird 254595,truck 254596,dog 254597,cat 254598,automobile 254599,deer 254600,truck 254601,horse 254602,cat 254603,dog 254604,cat 254605,truck 254606,dog 254607,airplane 254608,truck 254609,frog 254610,deer 254611,ship 254612,cat 254613,horse 254614,frog 254615,bird 254616,dog 254617,truck 254618,airplane 254619,dog 254620,airplane 254621,airplane 254622,deer 254623,deer 254624,horse 254625,horse 254626,deer 254627,dog 254628,horse 254629,horse 254630,cat 254631,bird 254632,truck 254633,dog 254634,ship 254635,deer 254636,cat 254637,deer 254638,horse 254639,dog 254640,ship 254641,truck 254642,dog 254643,deer 254644,deer 254645,truck 254646,bird 254647,deer 254648,truck 254649,bird 254650,truck 254651,horse 254652,automobile 254653,frog 254654,deer 254655,bird 254656,deer 254657,dog 254658,deer 254659,truck 254660,dog 254661,horse 254662,horse 254663,dog 254664,bird 254665,ship 254666,dog 254667,frog 254668,airplane 254669,truck 254670,truck 254671,truck 254672,dog 254673,truck 254674,truck 254675,dog 254676,frog 254677,automobile 254678,deer 254679,ship 254680,dog 254681,automobile 254682,truck 254683,airplane 254684,horse 254685,bird 254686,frog 254687,automobile 254688,dog 254689,horse 254690,automobile 254691,cat 254692,dog 254693,deer 254694,truck 254695,automobile 254696,cat 254697,horse 254698,deer 254699,truck 254700,airplane 254701,ship 254702,truck 254703,horse 254704,truck 254705,deer 254706,bird 254707,horse 254708,airplane 254709,truck 254710,ship 254711,bird 254712,bird 254713,deer 254714,deer 254715,airplane 254716,truck 254717,bird 254718,frog 254719,deer 254720,deer 254721,deer 254722,dog 254723,deer 254724,frog 254725,deer 254726,ship 254727,automobile 254728,ship 254729,cat 254730,deer 254731,ship 254732,truck 254733,dog 254734,horse 254735,deer 254736,frog 254737,airplane 254738,bird 254739,frog 254740,cat 254741,ship 254742,deer 254743,frog 254744,cat 254745,dog 254746,dog 254747,deer 254748,dog 254749,dog 254750,deer 254751,dog 254752,bird 254753,dog 254754,bird 254755,ship 254756,airplane 254757,automobile 254758,deer 254759,automobile 254760,ship 254761,deer 254762,airplane 254763,ship 254764,dog 254765,truck 254766,ship 254767,deer 254768,cat 254769,horse 254770,dog 254771,ship 254772,deer 254773,airplane 254774,ship 254775,automobile 254776,ship 254777,deer 254778,horse 254779,deer 254780,deer 254781,bird 254782,dog 254783,ship 254784,dog 254785,automobile 254786,airplane 254787,horse 254788,horse 254789,bird 254790,truck 254791,horse 254792,airplane 254793,automobile 254794,cat 254795,truck 254796,truck 254797,frog 254798,truck 254799,cat 254800,automobile 254801,deer 254802,bird 254803,cat 254804,horse 254805,deer 254806,dog 254807,ship 254808,bird 254809,cat 254810,frog 254811,cat 254812,frog 254813,airplane 254814,automobile 254815,frog 254816,bird 254817,airplane 254818,horse 254819,deer 254820,automobile 254821,horse 254822,airplane 254823,horse 254824,frog 254825,cat 254826,deer 254827,deer 254828,frog 254829,horse 254830,bird 254831,cat 254832,cat 254833,frog 254834,deer 254835,deer 254836,deer 254837,bird 254838,deer 254839,frog 254840,frog 254841,frog 254842,horse 254843,cat 254844,automobile 254845,automobile 254846,bird 254847,horse 254848,deer 254849,automobile 254850,horse 254851,frog 254852,frog 254853,horse 254854,bird 254855,deer 254856,bird 254857,cat 254858,horse 254859,dog 254860,frog 254861,ship 254862,bird 254863,deer 254864,deer 254865,airplane 254866,horse 254867,frog 254868,frog 254869,automobile 254870,deer 254871,deer 254872,deer 254873,horse 254874,ship 254875,dog 254876,deer 254877,truck 254878,airplane 254879,bird 254880,deer 254881,deer 254882,ship 254883,automobile 254884,frog 254885,truck 254886,bird 254887,frog 254888,cat 254889,truck 254890,truck 254891,ship 254892,ship 254893,truck 254894,ship 254895,frog 254896,automobile 254897,ship 254898,truck 254899,horse 254900,frog 254901,cat 254902,horse 254903,horse 254904,truck 254905,dog 254906,deer 254907,bird 254908,ship 254909,deer 254910,airplane 254911,horse 254912,bird 254913,bird 254914,airplane 254915,truck 254916,ship 254917,frog 254918,deer 254919,frog 254920,ship 254921,frog 254922,cat 254923,frog 254924,deer 254925,cat 254926,frog 254927,deer 254928,truck 254929,bird 254930,deer 254931,deer 254932,deer 254933,frog 254934,dog 254935,ship 254936,cat 254937,frog 254938,frog 254939,truck 254940,bird 254941,ship 254942,truck 254943,bird 254944,deer 254945,horse 254946,frog 254947,deer 254948,dog 254949,ship 254950,deer 254951,cat 254952,dog 254953,frog 254954,bird 254955,cat 254956,bird 254957,airplane 254958,ship 254959,bird 254960,automobile 254961,deer 254962,airplane 254963,frog 254964,truck 254965,automobile 254966,truck 254967,horse 254968,bird 254969,automobile 254970,dog 254971,horse 254972,cat 254973,airplane 254974,dog 254975,airplane 254976,horse 254977,dog 254978,horse 254979,cat 254980,cat 254981,automobile 254982,frog 254983,deer 254984,truck 254985,cat 254986,ship 254987,frog 254988,deer 254989,bird 254990,frog 254991,cat 254992,frog 254993,dog 254994,frog 254995,truck 254996,dog 254997,horse 254998,ship 254999,deer 255000,cat 255001,bird 255002,deer 255003,frog 255004,cat 255005,dog 255006,deer 255007,deer 255008,frog 255009,deer 255010,deer 255011,airplane 255012,truck 255013,bird 255014,truck 255015,deer 255016,cat 255017,horse 255018,horse 255019,truck 255020,horse 255021,horse 255022,deer 255023,truck 255024,bird 255025,deer 255026,truck 255027,ship 255028,frog 255029,frog 255030,frog 255031,dog 255032,horse 255033,cat 255034,frog 255035,dog 255036,frog 255037,frog 255038,dog 255039,deer 255040,horse 255041,bird 255042,horse 255043,dog 255044,cat 255045,automobile 255046,truck 255047,deer 255048,frog 255049,deer 255050,automobile 255051,dog 255052,deer 255053,ship 255054,airplane 255055,horse 255056,deer 255057,truck 255058,ship 255059,cat 255060,truck 255061,frog 255062,truck 255063,airplane 255064,dog 255065,bird 255066,truck 255067,truck 255068,deer 255069,cat 255070,deer 255071,truck 255072,deer 255073,airplane 255074,truck 255075,cat 255076,truck 255077,frog 255078,bird 255079,cat 255080,deer 255081,dog 255082,frog 255083,ship 255084,truck 255085,dog 255086,truck 255087,frog 255088,airplane 255089,horse 255090,automobile 255091,cat 255092,deer 255093,deer 255094,cat 255095,horse 255096,airplane 255097,dog 255098,deer 255099,ship 255100,horse 255101,bird 255102,bird 255103,frog 255104,airplane 255105,horse 255106,deer 255107,frog 255108,frog 255109,horse 255110,automobile 255111,ship 255112,dog 255113,ship 255114,bird 255115,ship 255116,deer 255117,bird 255118,airplane 255119,truck 255120,automobile 255121,truck 255122,ship 255123,dog 255124,horse 255125,frog 255126,bird 255127,dog 255128,cat 255129,bird 255130,automobile 255131,horse 255132,horse 255133,horse 255134,frog 255135,bird 255136,automobile 255137,horse 255138,frog 255139,cat 255140,automobile 255141,airplane 255142,cat 255143,deer 255144,frog 255145,horse 255146,airplane 255147,deer 255148,deer 255149,deer 255150,horse 255151,deer 255152,airplane 255153,horse 255154,dog 255155,cat 255156,horse 255157,cat 255158,truck 255159,frog 255160,frog 255161,deer 255162,truck 255163,airplane 255164,deer 255165,dog 255166,truck 255167,dog 255168,automobile 255169,ship 255170,truck 255171,ship 255172,truck 255173,ship 255174,frog 255175,frog 255176,cat 255177,ship 255178,truck 255179,cat 255180,truck 255181,bird 255182,deer 255183,bird 255184,ship 255185,truck 255186,ship 255187,deer 255188,ship 255189,frog 255190,truck 255191,cat 255192,ship 255193,cat 255194,frog 255195,bird 255196,bird 255197,frog 255198,horse 255199,bird 255200,airplane 255201,airplane 255202,frog 255203,dog 255204,dog 255205,horse 255206,truck 255207,frog 255208,airplane 255209,cat 255210,truck 255211,horse 255212,frog 255213,truck 255214,ship 255215,ship 255216,frog 255217,ship 255218,deer 255219,frog 255220,automobile 255221,bird 255222,deer 255223,dog 255224,airplane 255225,dog 255226,truck 255227,deer 255228,cat 255229,deer 255230,frog 255231,truck 255232,deer 255233,ship 255234,airplane 255235,cat 255236,horse 255237,automobile 255238,deer 255239,airplane 255240,cat 255241,frog 255242,frog 255243,bird 255244,horse 255245,cat 255246,dog 255247,bird 255248,cat 255249,airplane 255250,deer 255251,cat 255252,horse 255253,dog 255254,bird 255255,horse 255256,frog 255257,frog 255258,frog 255259,frog 255260,bird 255261,horse 255262,frog 255263,truck 255264,airplane 255265,airplane 255266,automobile 255267,automobile 255268,horse 255269,bird 255270,truck 255271,horse 255272,horse 255273,frog 255274,cat 255275,dog 255276,dog 255277,airplane 255278,horse 255279,airplane 255280,horse 255281,dog 255282,dog 255283,deer 255284,horse 255285,bird 255286,deer 255287,deer 255288,cat 255289,bird 255290,deer 255291,bird 255292,horse 255293,dog 255294,cat 255295,cat 255296,airplane 255297,horse 255298,deer 255299,airplane 255300,deer 255301,frog 255302,dog 255303,horse 255304,airplane 255305,truck 255306,truck 255307,deer 255308,deer 255309,cat 255310,deer 255311,cat 255312,truck 255313,cat 255314,horse 255315,cat 255316,horse 255317,cat 255318,bird 255319,cat 255320,horse 255321,dog 255322,dog 255323,frog 255324,cat 255325,dog 255326,truck 255327,horse 255328,frog 255329,cat 255330,dog 255331,deer 255332,cat 255333,frog 255334,horse 255335,ship 255336,frog 255337,deer 255338,frog 255339,bird 255340,dog 255341,bird 255342,frog 255343,deer 255344,airplane 255345,cat 255346,cat 255347,frog 255348,truck 255349,frog 255350,horse 255351,airplane 255352,bird 255353,deer 255354,dog 255355,airplane 255356,deer 255357,truck 255358,bird 255359,cat 255360,airplane 255361,truck 255362,frog 255363,frog 255364,truck 255365,deer 255366,airplane 255367,cat 255368,deer 255369,frog 255370,truck 255371,frog 255372,bird 255373,cat 255374,airplane 255375,airplane 255376,cat 255377,automobile 255378,cat 255379,airplane 255380,frog 255381,deer 255382,ship 255383,frog 255384,frog 255385,truck 255386,dog 255387,deer 255388,frog 255389,airplane 255390,dog 255391,frog 255392,truck 255393,cat 255394,automobile 255395,dog 255396,bird 255397,dog 255398,truck 255399,airplane 255400,dog 255401,deer 255402,cat 255403,dog 255404,ship 255405,airplane 255406,automobile 255407,truck 255408,ship 255409,ship 255410,frog 255411,truck 255412,frog 255413,deer 255414,dog 255415,dog 255416,dog 255417,deer 255418,deer 255419,airplane 255420,ship 255421,bird 255422,automobile 255423,deer 255424,cat 255425,deer 255426,horse 255427,deer 255428,bird 255429,bird 255430,airplane 255431,truck 255432,deer 255433,dog 255434,frog 255435,horse 255436,airplane 255437,automobile 255438,cat 255439,frog 255440,cat 255441,truck 255442,frog 255443,horse 255444,frog 255445,dog 255446,horse 255447,ship 255448,truck 255449,airplane 255450,truck 255451,frog 255452,horse 255453,deer 255454,horse 255455,deer 255456,truck 255457,deer 255458,deer 255459,horse 255460,bird 255461,cat 255462,automobile 255463,truck 255464,airplane 255465,truck 255466,ship 255467,frog 255468,truck 255469,deer 255470,horse 255471,cat 255472,cat 255473,horse 255474,deer 255475,bird 255476,truck 255477,dog 255478,frog 255479,frog 255480,deer 255481,deer 255482,dog 255483,cat 255484,ship 255485,frog 255486,truck 255487,automobile 255488,bird 255489,ship 255490,cat 255491,dog 255492,automobile 255493,cat 255494,horse 255495,automobile 255496,horse 255497,dog 255498,bird 255499,frog 255500,dog 255501,ship 255502,airplane 255503,bird 255504,automobile 255505,frog 255506,dog 255507,truck 255508,dog 255509,bird 255510,deer 255511,frog 255512,truck 255513,deer 255514,cat 255515,cat 255516,dog 255517,bird 255518,frog 255519,truck 255520,dog 255521,airplane 255522,automobile 255523,frog 255524,deer 255525,airplane 255526,frog 255527,truck 255528,cat 255529,cat 255530,truck 255531,cat 255532,frog 255533,horse 255534,cat 255535,frog 255536,deer 255537,horse 255538,deer 255539,automobile 255540,dog 255541,deer 255542,deer 255543,horse 255544,horse 255545,deer 255546,truck 255547,horse 255548,truck 255549,dog 255550,frog 255551,horse 255552,truck 255553,horse 255554,dog 255555,truck 255556,cat 255557,bird 255558,cat 255559,deer 255560,truck 255561,automobile 255562,horse 255563,airplane 255564,cat 255565,dog 255566,horse 255567,frog 255568,airplane 255569,ship 255570,automobile 255571,automobile 255572,airplane 255573,bird 255574,cat 255575,deer 255576,ship 255577,cat 255578,automobile 255579,ship 255580,cat 255581,dog 255582,deer 255583,deer 255584,bird 255585,dog 255586,horse 255587,truck 255588,dog 255589,deer 255590,cat 255591,bird 255592,ship 255593,deer 255594,deer 255595,ship 255596,automobile 255597,frog 255598,horse 255599,automobile 255600,automobile 255601,frog 255602,bird 255603,horse 255604,cat 255605,truck 255606,cat 255607,bird 255608,cat 255609,horse 255610,ship 255611,horse 255612,frog 255613,deer 255614,deer 255615,bird 255616,automobile 255617,frog 255618,bird 255619,deer 255620,dog 255621,truck 255622,deer 255623,cat 255624,horse 255625,truck 255626,horse 255627,cat 255628,deer 255629,ship 255630,dog 255631,airplane 255632,bird 255633,deer 255634,dog 255635,dog 255636,cat 255637,bird 255638,truck 255639,ship 255640,bird 255641,horse 255642,ship 255643,ship 255644,truck 255645,dog 255646,truck 255647,dog 255648,frog 255649,frog 255650,frog 255651,airplane 255652,dog 255653,deer 255654,bird 255655,cat 255656,bird 255657,bird 255658,dog 255659,frog 255660,ship 255661,deer 255662,deer 255663,deer 255664,cat 255665,cat 255666,automobile 255667,ship 255668,frog 255669,frog 255670,bird 255671,bird 255672,cat 255673,cat 255674,truck 255675,frog 255676,truck 255677,airplane 255678,truck 255679,dog 255680,deer 255681,truck 255682,truck 255683,ship 255684,deer 255685,horse 255686,ship 255687,truck 255688,airplane 255689,deer 255690,airplane 255691,deer 255692,horse 255693,bird 255694,bird 255695,deer 255696,frog 255697,frog 255698,bird 255699,horse 255700,bird 255701,frog 255702,airplane 255703,truck 255704,deer 255705,deer 255706,deer 255707,automobile 255708,deer 255709,frog 255710,ship 255711,bird 255712,frog 255713,ship 255714,dog 255715,deer 255716,ship 255717,truck 255718,frog 255719,dog 255720,truck 255721,cat 255722,ship 255723,cat 255724,dog 255725,deer 255726,bird 255727,cat 255728,horse 255729,frog 255730,airplane 255731,truck 255732,deer 255733,cat 255734,dog 255735,automobile 255736,automobile 255737,horse 255738,airplane 255739,horse 255740,frog 255741,cat 255742,automobile 255743,truck 255744,cat 255745,dog 255746,cat 255747,frog 255748,truck 255749,cat 255750,dog 255751,ship 255752,dog 255753,deer 255754,dog 255755,deer 255756,ship 255757,ship 255758,cat 255759,horse 255760,ship 255761,deer 255762,horse 255763,airplane 255764,deer 255765,frog 255766,bird 255767,ship 255768,bird 255769,bird 255770,ship 255771,cat 255772,cat 255773,automobile 255774,ship 255775,airplane 255776,dog 255777,deer 255778,bird 255779,ship 255780,truck 255781,bird 255782,bird 255783,bird 255784,deer 255785,truck 255786,dog 255787,airplane 255788,deer 255789,ship 255790,truck 255791,frog 255792,airplane 255793,truck 255794,horse 255795,horse 255796,deer 255797,horse 255798,cat 255799,airplane 255800,horse 255801,automobile 255802,frog 255803,frog 255804,cat 255805,truck 255806,bird 255807,bird 255808,airplane 255809,deer 255810,horse 255811,ship 255812,bird 255813,cat 255814,dog 255815,truck 255816,cat 255817,bird 255818,bird 255819,deer 255820,cat 255821,truck 255822,truck 255823,frog 255824,cat 255825,dog 255826,frog 255827,automobile 255828,frog 255829,deer 255830,cat 255831,dog 255832,cat 255833,deer 255834,ship 255835,deer 255836,dog 255837,automobile 255838,bird 255839,frog 255840,truck 255841,cat 255842,deer 255843,truck 255844,horse 255845,dog 255846,cat 255847,deer 255848,dog 255849,truck 255850,cat 255851,deer 255852,deer 255853,horse 255854,ship 255855,bird 255856,cat 255857,dog 255858,automobile 255859,bird 255860,bird 255861,truck 255862,deer 255863,horse 255864,bird 255865,deer 255866,cat 255867,frog 255868,dog 255869,frog 255870,dog 255871,ship 255872,dog 255873,cat 255874,bird 255875,ship 255876,dog 255877,ship 255878,deer 255879,horse 255880,truck 255881,horse 255882,ship 255883,frog 255884,cat 255885,automobile 255886,deer 255887,dog 255888,horse 255889,truck 255890,dog 255891,truck 255892,frog 255893,truck 255894,bird 255895,cat 255896,horse 255897,deer 255898,dog 255899,ship 255900,dog 255901,bird 255902,bird 255903,automobile 255904,dog 255905,truck 255906,frog 255907,truck 255908,automobile 255909,horse 255910,cat 255911,ship 255912,deer 255913,truck 255914,frog 255915,automobile 255916,frog 255917,truck 255918,ship 255919,automobile 255920,truck 255921,horse 255922,deer 255923,horse 255924,airplane 255925,truck 255926,deer 255927,bird 255928,truck 255929,cat 255930,ship 255931,airplane 255932,horse 255933,automobile 255934,airplane 255935,airplane 255936,truck 255937,ship 255938,dog 255939,automobile 255940,bird 255941,airplane 255942,airplane 255943,bird 255944,ship 255945,frog 255946,frog 255947,horse 255948,truck 255949,deer 255950,bird 255951,automobile 255952,truck 255953,horse 255954,frog 255955,frog 255956,airplane 255957,ship 255958,automobile 255959,frog 255960,frog 255961,ship 255962,deer 255963,ship 255964,cat 255965,frog 255966,ship 255967,dog 255968,cat 255969,deer 255970,dog 255971,deer 255972,bird 255973,truck 255974,frog 255975,dog 255976,cat 255977,cat 255978,frog 255979,ship 255980,bird 255981,cat 255982,automobile 255983,frog 255984,deer 255985,automobile 255986,deer 255987,truck 255988,frog 255989,truck 255990,automobile 255991,horse 255992,bird 255993,frog 255994,cat 255995,deer 255996,deer 255997,deer 255998,cat 255999,cat 256000,deer 256001,dog 256002,deer 256003,frog 256004,cat 256005,ship 256006,automobile 256007,deer 256008,dog 256009,truck 256010,automobile 256011,bird 256012,automobile 256013,dog 256014,frog 256015,frog 256016,truck 256017,airplane 256018,truck 256019,automobile 256020,ship 256021,bird 256022,bird 256023,automobile 256024,airplane 256025,truck 256026,cat 256027,automobile 256028,dog 256029,dog 256030,automobile 256031,frog 256032,ship 256033,cat 256034,deer 256035,automobile 256036,frog 256037,automobile 256038,deer 256039,cat 256040,deer 256041,dog 256042,bird 256043,truck 256044,cat 256045,cat 256046,deer 256047,ship 256048,ship 256049,cat 256050,ship 256051,frog 256052,truck 256053,ship 256054,dog 256055,airplane 256056,bird 256057,cat 256058,horse 256059,dog 256060,ship 256061,cat 256062,automobile 256063,deer 256064,bird 256065,ship 256066,horse 256067,horse 256068,ship 256069,airplane 256070,airplane 256071,frog 256072,bird 256073,truck 256074,cat 256075,ship 256076,ship 256077,truck 256078,bird 256079,cat 256080,bird 256081,frog 256082,cat 256083,ship 256084,dog 256085,truck 256086,truck 256087,frog 256088,deer 256089,cat 256090,deer 256091,ship 256092,horse 256093,automobile 256094,horse 256095,dog 256096,automobile 256097,bird 256098,truck 256099,deer 256100,horse 256101,deer 256102,horse 256103,airplane 256104,deer 256105,cat 256106,frog 256107,horse 256108,automobile 256109,truck 256110,bird 256111,automobile 256112,deer 256113,frog 256114,frog 256115,frog 256116,dog 256117,deer 256118,cat 256119,airplane 256120,cat 256121,horse 256122,deer 256123,truck 256124,bird 256125,bird 256126,airplane 256127,ship 256128,bird 256129,truck 256130,deer 256131,cat 256132,airplane 256133,automobile 256134,automobile 256135,deer 256136,horse 256137,frog 256138,dog 256139,truck 256140,airplane 256141,dog 256142,frog 256143,ship 256144,cat 256145,airplane 256146,horse 256147,cat 256148,airplane 256149,airplane 256150,deer 256151,automobile 256152,cat 256153,truck 256154,cat 256155,bird 256156,cat 256157,frog 256158,frog 256159,dog 256160,deer 256161,frog 256162,frog 256163,frog 256164,bird 256165,airplane 256166,cat 256167,deer 256168,cat 256169,automobile 256170,deer 256171,deer 256172,cat 256173,truck 256174,ship 256175,airplane 256176,dog 256177,dog 256178,truck 256179,truck 256180,truck 256181,truck 256182,bird 256183,deer 256184,frog 256185,bird 256186,ship 256187,ship 256188,ship 256189,deer 256190,frog 256191,truck 256192,ship 256193,truck 256194,ship 256195,ship 256196,deer 256197,truck 256198,horse 256199,horse 256200,deer 256201,cat 256202,horse 256203,automobile 256204,truck 256205,truck 256206,cat 256207,ship 256208,deer 256209,ship 256210,frog 256211,cat 256212,airplane 256213,ship 256214,deer 256215,bird 256216,dog 256217,frog 256218,deer 256219,truck 256220,ship 256221,cat 256222,dog 256223,dog 256224,deer 256225,deer 256226,deer 256227,frog 256228,truck 256229,horse 256230,dog 256231,cat 256232,deer 256233,cat 256234,ship 256235,airplane 256236,ship 256237,cat 256238,cat 256239,horse 256240,cat 256241,cat 256242,bird 256243,airplane 256244,ship 256245,dog 256246,horse 256247,truck 256248,ship 256249,truck 256250,deer 256251,airplane 256252,truck 256253,cat 256254,bird 256255,dog 256256,airplane 256257,bird 256258,deer 256259,bird 256260,bird 256261,bird 256262,bird 256263,ship 256264,airplane 256265,horse 256266,truck 256267,airplane 256268,bird 256269,ship 256270,bird 256271,truck 256272,dog 256273,deer 256274,airplane 256275,bird 256276,automobile 256277,dog 256278,cat 256279,automobile 256280,deer 256281,truck 256282,deer 256283,ship 256284,bird 256285,automobile 256286,deer 256287,frog 256288,dog 256289,truck 256290,deer 256291,ship 256292,cat 256293,truck 256294,bird 256295,deer 256296,cat 256297,frog 256298,cat 256299,airplane 256300,deer 256301,frog 256302,deer 256303,dog 256304,frog 256305,frog 256306,cat 256307,automobile 256308,frog 256309,ship 256310,automobile 256311,automobile 256312,automobile 256313,cat 256314,horse 256315,truck 256316,airplane 256317,cat 256318,cat 256319,ship 256320,automobile 256321,cat 256322,cat 256323,truck 256324,deer 256325,deer 256326,horse 256327,dog 256328,deer 256329,truck 256330,truck 256331,deer 256332,dog 256333,bird 256334,horse 256335,deer 256336,ship 256337,bird 256338,ship 256339,automobile 256340,truck 256341,bird 256342,frog 256343,automobile 256344,automobile 256345,truck 256346,frog 256347,ship 256348,dog 256349,truck 256350,frog 256351,dog 256352,automobile 256353,truck 256354,cat 256355,ship 256356,dog 256357,cat 256358,deer 256359,ship 256360,deer 256361,deer 256362,airplane 256363,bird 256364,cat 256365,ship 256366,dog 256367,airplane 256368,horse 256369,deer 256370,dog 256371,airplane 256372,cat 256373,airplane 256374,airplane 256375,cat 256376,dog 256377,deer 256378,truck 256379,ship 256380,airplane 256381,dog 256382,airplane 256383,airplane 256384,deer 256385,automobile 256386,frog 256387,cat 256388,cat 256389,cat 256390,ship 256391,horse 256392,horse 256393,deer 256394,airplane 256395,horse 256396,horse 256397,frog 256398,deer 256399,ship 256400,dog 256401,automobile 256402,frog 256403,truck 256404,horse 256405,truck 256406,cat 256407,frog 256408,frog 256409,bird 256410,cat 256411,dog 256412,ship 256413,frog 256414,frog 256415,truck 256416,horse 256417,deer 256418,automobile 256419,airplane 256420,deer 256421,automobile 256422,airplane 256423,horse 256424,ship 256425,horse 256426,dog 256427,frog 256428,frog 256429,airplane 256430,cat 256431,cat 256432,truck 256433,cat 256434,airplane 256435,horse 256436,deer 256437,dog 256438,ship 256439,truck 256440,frog 256441,automobile 256442,deer 256443,horse 256444,bird 256445,airplane 256446,automobile 256447,deer 256448,dog 256449,bird 256450,truck 256451,deer 256452,bird 256453,ship 256454,cat 256455,frog 256456,automobile 256457,cat 256458,deer 256459,frog 256460,truck 256461,deer 256462,horse 256463,frog 256464,frog 256465,dog 256466,dog 256467,horse 256468,airplane 256469,automobile 256470,deer 256471,cat 256472,horse 256473,deer 256474,frog 256475,truck 256476,automobile 256477,horse 256478,cat 256479,truck 256480,horse 256481,deer 256482,horse 256483,automobile 256484,deer 256485,horse 256486,truck 256487,truck 256488,truck 256489,deer 256490,cat 256491,cat 256492,airplane 256493,horse 256494,dog 256495,truck 256496,ship 256497,frog 256498,truck 256499,frog 256500,deer 256501,cat 256502,truck 256503,automobile 256504,airplane 256505,cat 256506,airplane 256507,deer 256508,ship 256509,cat 256510,automobile 256511,horse 256512,bird 256513,cat 256514,bird 256515,automobile 256516,airplane 256517,horse 256518,airplane 256519,horse 256520,automobile 256521,cat 256522,bird 256523,truck 256524,dog 256525,deer 256526,cat 256527,horse 256528,ship 256529,cat 256530,truck 256531,bird 256532,cat 256533,truck 256534,cat 256535,frog 256536,frog 256537,truck 256538,airplane 256539,bird 256540,frog 256541,dog 256542,frog 256543,deer 256544,bird 256545,truck 256546,automobile 256547,airplane 256548,horse 256549,dog 256550,horse 256551,airplane 256552,cat 256553,cat 256554,dog 256555,airplane 256556,dog 256557,deer 256558,deer 256559,bird 256560,cat 256561,deer 256562,deer 256563,frog 256564,automobile 256565,bird 256566,truck 256567,bird 256568,automobile 256569,dog 256570,deer 256571,frog 256572,truck 256573,truck 256574,automobile 256575,frog 256576,automobile 256577,cat 256578,deer 256579,deer 256580,cat 256581,truck 256582,cat 256583,deer 256584,cat 256585,truck 256586,deer 256587,airplane 256588,dog 256589,frog 256590,dog 256591,truck 256592,airplane 256593,airplane 256594,horse 256595,deer 256596,deer 256597,cat 256598,bird 256599,dog 256600,truck 256601,bird 256602,bird 256603,cat 256604,deer 256605,bird 256606,truck 256607,dog 256608,dog 256609,cat 256610,horse 256611,cat 256612,airplane 256613,airplane 256614,cat 256615,deer 256616,frog 256617,ship 256618,automobile 256619,frog 256620,truck 256621,automobile 256622,deer 256623,dog 256624,frog 256625,dog 256626,airplane 256627,automobile 256628,bird 256629,dog 256630,automobile 256631,truck 256632,dog 256633,bird 256634,ship 256635,bird 256636,cat 256637,truck 256638,bird 256639,automobile 256640,airplane 256641,cat 256642,cat 256643,deer 256644,airplane 256645,dog 256646,dog 256647,cat 256648,frog 256649,horse 256650,dog 256651,automobile 256652,cat 256653,cat 256654,deer 256655,bird 256656,truck 256657,cat 256658,ship 256659,deer 256660,dog 256661,horse 256662,ship 256663,bird 256664,deer 256665,frog 256666,horse 256667,airplane 256668,airplane 256669,bird 256670,truck 256671,bird 256672,frog 256673,airplane 256674,deer 256675,cat 256676,ship 256677,truck 256678,deer 256679,bird 256680,truck 256681,automobile 256682,deer 256683,bird 256684,frog 256685,automobile 256686,truck 256687,airplane 256688,deer 256689,deer 256690,bird 256691,bird 256692,dog 256693,horse 256694,horse 256695,deer 256696,horse 256697,frog 256698,automobile 256699,horse 256700,airplane 256701,bird 256702,truck 256703,dog 256704,cat 256705,cat 256706,frog 256707,dog 256708,cat 256709,frog 256710,cat 256711,truck 256712,horse 256713,frog 256714,deer 256715,frog 256716,frog 256717,deer 256718,horse 256719,cat 256720,bird 256721,ship 256722,bird 256723,truck 256724,truck 256725,bird 256726,airplane 256727,deer 256728,truck 256729,cat 256730,deer 256731,truck 256732,cat 256733,automobile 256734,frog 256735,airplane 256736,frog 256737,airplane 256738,bird 256739,horse 256740,dog 256741,horse 256742,bird 256743,automobile 256744,cat 256745,dog 256746,cat 256747,cat 256748,airplane 256749,deer 256750,ship 256751,horse 256752,deer 256753,deer 256754,frog 256755,frog 256756,bird 256757,ship 256758,dog 256759,bird 256760,deer 256761,cat 256762,frog 256763,deer 256764,airplane 256765,deer 256766,airplane 256767,cat 256768,automobile 256769,horse 256770,truck 256771,horse 256772,bird 256773,automobile 256774,truck 256775,horse 256776,cat 256777,automobile 256778,automobile 256779,automobile 256780,bird 256781,bird 256782,bird 256783,automobile 256784,frog 256785,dog 256786,truck 256787,dog 256788,truck 256789,airplane 256790,bird 256791,dog 256792,deer 256793,automobile 256794,dog 256795,automobile 256796,deer 256797,horse 256798,cat 256799,frog 256800,automobile 256801,bird 256802,dog 256803,deer 256804,bird 256805,bird 256806,cat 256807,truck 256808,dog 256809,truck 256810,frog 256811,deer 256812,airplane 256813,frog 256814,automobile 256815,bird 256816,deer 256817,truck 256818,cat 256819,airplane 256820,frog 256821,truck 256822,dog 256823,cat 256824,horse 256825,horse 256826,frog 256827,deer 256828,deer 256829,deer 256830,horse 256831,truck 256832,deer 256833,cat 256834,deer 256835,dog 256836,bird 256837,cat 256838,dog 256839,ship 256840,truck 256841,dog 256842,cat 256843,airplane 256844,airplane 256845,ship 256846,ship 256847,deer 256848,cat 256849,truck 256850,airplane 256851,truck 256852,deer 256853,dog 256854,airplane 256855,ship 256856,bird 256857,frog 256858,ship 256859,ship 256860,dog 256861,cat 256862,dog 256863,cat 256864,deer 256865,bird 256866,truck 256867,airplane 256868,bird 256869,airplane 256870,frog 256871,ship 256872,ship 256873,truck 256874,dog 256875,automobile 256876,horse 256877,cat 256878,horse 256879,dog 256880,automobile 256881,ship 256882,dog 256883,airplane 256884,bird 256885,horse 256886,automobile 256887,deer 256888,deer 256889,horse 256890,deer 256891,dog 256892,dog 256893,deer 256894,deer 256895,automobile 256896,ship 256897,cat 256898,cat 256899,bird 256900,cat 256901,ship 256902,frog 256903,frog 256904,truck 256905,horse 256906,truck 256907,horse 256908,airplane 256909,cat 256910,bird 256911,airplane 256912,airplane 256913,airplane 256914,cat 256915,deer 256916,truck 256917,ship 256918,airplane 256919,bird 256920,deer 256921,cat 256922,ship 256923,dog 256924,frog 256925,automobile 256926,dog 256927,frog 256928,cat 256929,dog 256930,automobile 256931,airplane 256932,ship 256933,frog 256934,bird 256935,cat 256936,truck 256937,automobile 256938,ship 256939,horse 256940,horse 256941,cat 256942,airplane 256943,bird 256944,deer 256945,frog 256946,ship 256947,cat 256948,ship 256949,ship 256950,airplane 256951,frog 256952,deer 256953,cat 256954,cat 256955,frog 256956,cat 256957,cat 256958,deer 256959,frog 256960,ship 256961,frog 256962,deer 256963,deer 256964,deer 256965,horse 256966,automobile 256967,horse 256968,frog 256969,dog 256970,bird 256971,deer 256972,truck 256973,truck 256974,automobile 256975,cat 256976,deer 256977,frog 256978,truck 256979,airplane 256980,bird 256981,frog 256982,truck 256983,deer 256984,horse 256985,cat 256986,frog 256987,cat 256988,truck 256989,horse 256990,automobile 256991,airplane 256992,deer 256993,airplane 256994,deer 256995,ship 256996,cat 256997,horse 256998,horse 256999,automobile 257000,deer 257001,deer 257002,automobile 257003,dog 257004,cat 257005,airplane 257006,ship 257007,frog 257008,deer 257009,dog 257010,horse 257011,horse 257012,automobile 257013,dog 257014,frog 257015,ship 257016,dog 257017,frog 257018,horse 257019,deer 257020,ship 257021,deer 257022,dog 257023,horse 257024,dog 257025,ship 257026,dog 257027,frog 257028,ship 257029,horse 257030,dog 257031,dog 257032,airplane 257033,horse 257034,airplane 257035,bird 257036,ship 257037,dog 257038,bird 257039,dog 257040,airplane 257041,ship 257042,cat 257043,frog 257044,bird 257045,frog 257046,truck 257047,cat 257048,bird 257049,horse 257050,dog 257051,deer 257052,frog 257053,cat 257054,cat 257055,deer 257056,cat 257057,frog 257058,horse 257059,bird 257060,airplane 257061,automobile 257062,deer 257063,dog 257064,bird 257065,truck 257066,horse 257067,automobile 257068,airplane 257069,cat 257070,horse 257071,bird 257072,horse 257073,bird 257074,dog 257075,dog 257076,frog 257077,dog 257078,frog 257079,dog 257080,deer 257081,ship 257082,ship 257083,bird 257084,automobile 257085,airplane 257086,cat 257087,ship 257088,airplane 257089,dog 257090,deer 257091,airplane 257092,ship 257093,cat 257094,frog 257095,deer 257096,automobile 257097,truck 257098,dog 257099,horse 257100,frog 257101,airplane 257102,deer 257103,cat 257104,truck 257105,horse 257106,horse 257107,horse 257108,deer 257109,ship 257110,automobile 257111,deer 257112,cat 257113,deer 257114,truck 257115,dog 257116,horse 257117,dog 257118,dog 257119,truck 257120,deer 257121,cat 257122,cat 257123,ship 257124,horse 257125,frog 257126,airplane 257127,cat 257128,bird 257129,cat 257130,automobile 257131,deer 257132,dog 257133,bird 257134,deer 257135,frog 257136,cat 257137,truck 257138,airplane 257139,frog 257140,cat 257141,cat 257142,frog 257143,airplane 257144,automobile 257145,bird 257146,deer 257147,frog 257148,bird 257149,deer 257150,ship 257151,ship 257152,automobile 257153,horse 257154,truck 257155,deer 257156,bird 257157,frog 257158,automobile 257159,cat 257160,cat 257161,deer 257162,airplane 257163,frog 257164,cat 257165,airplane 257166,deer 257167,cat 257168,truck 257169,ship 257170,deer 257171,horse 257172,deer 257173,frog 257174,dog 257175,automobile 257176,deer 257177,bird 257178,frog 257179,dog 257180,airplane 257181,frog 257182,automobile 257183,deer 257184,bird 257185,horse 257186,automobile 257187,frog 257188,truck 257189,bird 257190,frog 257191,cat 257192,airplane 257193,frog 257194,bird 257195,automobile 257196,automobile 257197,horse 257198,dog 257199,dog 257200,cat 257201,truck 257202,ship 257203,airplane 257204,deer 257205,cat 257206,horse 257207,truck 257208,automobile 257209,bird 257210,dog 257211,bird 257212,deer 257213,frog 257214,deer 257215,deer 257216,ship 257217,bird 257218,deer 257219,ship 257220,cat 257221,automobile 257222,truck 257223,frog 257224,cat 257225,bird 257226,horse 257227,dog 257228,bird 257229,dog 257230,frog 257231,bird 257232,frog 257233,automobile 257234,frog 257235,cat 257236,ship 257237,bird 257238,truck 257239,deer 257240,cat 257241,cat 257242,bird 257243,deer 257244,automobile 257245,deer 257246,truck 257247,frog 257248,dog 257249,frog 257250,airplane 257251,deer 257252,dog 257253,dog 257254,cat 257255,deer 257256,cat 257257,cat 257258,deer 257259,ship 257260,truck 257261,airplane 257262,horse 257263,bird 257264,airplane 257265,ship 257266,frog 257267,ship 257268,airplane 257269,horse 257270,cat 257271,cat 257272,dog 257273,truck 257274,frog 257275,frog 257276,cat 257277,horse 257278,automobile 257279,horse 257280,truck 257281,cat 257282,truck 257283,automobile 257284,cat 257285,bird 257286,horse 257287,frog 257288,deer 257289,deer 257290,truck 257291,deer 257292,dog 257293,airplane 257294,cat 257295,deer 257296,truck 257297,truck 257298,frog 257299,horse 257300,cat 257301,bird 257302,cat 257303,frog 257304,dog 257305,dog 257306,bird 257307,frog 257308,airplane 257309,frog 257310,deer 257311,deer 257312,automobile 257313,bird 257314,cat 257315,cat 257316,bird 257317,frog 257318,ship 257319,truck 257320,truck 257321,horse 257322,automobile 257323,dog 257324,deer 257325,ship 257326,automobile 257327,frog 257328,dog 257329,airplane 257330,ship 257331,horse 257332,airplane 257333,ship 257334,airplane 257335,dog 257336,bird 257337,frog 257338,cat 257339,horse 257340,bird 257341,automobile 257342,dog 257343,frog 257344,deer 257345,truck 257346,automobile 257347,automobile 257348,bird 257349,bird 257350,horse 257351,cat 257352,automobile 257353,ship 257354,ship 257355,truck 257356,automobile 257357,deer 257358,cat 257359,ship 257360,cat 257361,frog 257362,deer 257363,horse 257364,bird 257365,deer 257366,truck 257367,deer 257368,cat 257369,deer 257370,automobile 257371,horse 257372,deer 257373,deer 257374,bird 257375,cat 257376,dog 257377,airplane 257378,frog 257379,deer 257380,cat 257381,automobile 257382,cat 257383,deer 257384,airplane 257385,dog 257386,horse 257387,frog 257388,ship 257389,airplane 257390,airplane 257391,horse 257392,horse 257393,ship 257394,dog 257395,airplane 257396,frog 257397,dog 257398,truck 257399,automobile 257400,automobile 257401,frog 257402,cat 257403,cat 257404,airplane 257405,deer 257406,frog 257407,dog 257408,cat 257409,cat 257410,frog 257411,horse 257412,horse 257413,cat 257414,frog 257415,horse 257416,cat 257417,horse 257418,automobile 257419,truck 257420,horse 257421,truck 257422,bird 257423,cat 257424,dog 257425,deer 257426,deer 257427,automobile 257428,truck 257429,deer 257430,dog 257431,bird 257432,frog 257433,frog 257434,frog 257435,truck 257436,horse 257437,truck 257438,bird 257439,frog 257440,deer 257441,horse 257442,airplane 257443,dog 257444,truck 257445,deer 257446,deer 257447,automobile 257448,airplane 257449,deer 257450,ship 257451,truck 257452,automobile 257453,truck 257454,truck 257455,ship 257456,frog 257457,frog 257458,automobile 257459,dog 257460,dog 257461,horse 257462,cat 257463,cat 257464,frog 257465,deer 257466,bird 257467,horse 257468,cat 257469,cat 257470,frog 257471,deer 257472,deer 257473,ship 257474,frog 257475,ship 257476,dog 257477,bird 257478,cat 257479,bird 257480,cat 257481,dog 257482,dog 257483,horse 257484,dog 257485,automobile 257486,airplane 257487,ship 257488,frog 257489,ship 257490,cat 257491,deer 257492,bird 257493,ship 257494,automobile 257495,deer 257496,horse 257497,dog 257498,automobile 257499,dog 257500,automobile 257501,frog 257502,airplane 257503,airplane 257504,bird 257505,dog 257506,bird 257507,truck 257508,cat 257509,truck 257510,ship 257511,dog 257512,dog 257513,deer 257514,cat 257515,truck 257516,dog 257517,horse 257518,deer 257519,horse 257520,truck 257521,truck 257522,dog 257523,deer 257524,bird 257525,truck 257526,dog 257527,horse 257528,deer 257529,airplane 257530,horse 257531,dog 257532,frog 257533,airplane 257534,ship 257535,airplane 257536,cat 257537,dog 257538,frog 257539,horse 257540,deer 257541,dog 257542,airplane 257543,truck 257544,horse 257545,frog 257546,frog 257547,frog 257548,truck 257549,horse 257550,frog 257551,bird 257552,cat 257553,cat 257554,truck 257555,bird 257556,horse 257557,cat 257558,bird 257559,cat 257560,deer 257561,horse 257562,ship 257563,bird 257564,deer 257565,truck 257566,frog 257567,bird 257568,automobile 257569,frog 257570,ship 257571,truck 257572,dog 257573,airplane 257574,cat 257575,dog 257576,truck 257577,horse 257578,cat 257579,automobile 257580,ship 257581,cat 257582,deer 257583,deer 257584,bird 257585,airplane 257586,dog 257587,ship 257588,frog 257589,cat 257590,cat 257591,automobile 257592,bird 257593,ship 257594,bird 257595,deer 257596,deer 257597,dog 257598,bird 257599,airplane 257600,automobile 257601,horse 257602,horse 257603,cat 257604,truck 257605,deer 257606,frog 257607,truck 257608,dog 257609,cat 257610,frog 257611,dog 257612,dog 257613,horse 257614,bird 257615,bird 257616,deer 257617,cat 257618,bird 257619,deer 257620,dog 257621,deer 257622,truck 257623,frog 257624,airplane 257625,cat 257626,automobile 257627,automobile 257628,ship 257629,ship 257630,cat 257631,deer 257632,airplane 257633,truck 257634,truck 257635,cat 257636,automobile 257637,dog 257638,dog 257639,horse 257640,bird 257641,cat 257642,cat 257643,automobile 257644,horse 257645,horse 257646,cat 257647,horse 257648,bird 257649,airplane 257650,dog 257651,frog 257652,ship 257653,ship 257654,airplane 257655,ship 257656,bird 257657,cat 257658,frog 257659,ship 257660,bird 257661,horse 257662,cat 257663,cat 257664,deer 257665,frog 257666,dog 257667,dog 257668,airplane 257669,ship 257670,bird 257671,dog 257672,truck 257673,bird 257674,cat 257675,ship 257676,frog 257677,horse 257678,cat 257679,dog 257680,automobile 257681,dog 257682,horse 257683,truck 257684,dog 257685,deer 257686,cat 257687,cat 257688,frog 257689,cat 257690,airplane 257691,deer 257692,airplane 257693,truck 257694,deer 257695,dog 257696,airplane 257697,dog 257698,dog 257699,airplane 257700,cat 257701,truck 257702,frog 257703,deer 257704,airplane 257705,dog 257706,deer 257707,airplane 257708,truck 257709,airplane 257710,bird 257711,deer 257712,horse 257713,deer 257714,cat 257715,ship 257716,truck 257717,ship 257718,cat 257719,truck 257720,frog 257721,airplane 257722,dog 257723,deer 257724,dog 257725,truck 257726,frog 257727,airplane 257728,airplane 257729,deer 257730,deer 257731,frog 257732,bird 257733,cat 257734,deer 257735,bird 257736,frog 257737,bird 257738,ship 257739,deer 257740,cat 257741,deer 257742,dog 257743,deer 257744,deer 257745,cat 257746,deer 257747,cat 257748,airplane 257749,deer 257750,deer 257751,automobile 257752,bird 257753,cat 257754,horse 257755,bird 257756,frog 257757,airplane 257758,airplane 257759,dog 257760,bird 257761,cat 257762,automobile 257763,airplane 257764,cat 257765,horse 257766,deer 257767,bird 257768,truck 257769,frog 257770,ship 257771,airplane 257772,truck 257773,ship 257774,deer 257775,truck 257776,frog 257777,horse 257778,truck 257779,truck 257780,horse 257781,deer 257782,dog 257783,automobile 257784,dog 257785,ship 257786,dog 257787,truck 257788,truck 257789,deer 257790,ship 257791,horse 257792,dog 257793,cat 257794,automobile 257795,dog 257796,frog 257797,cat 257798,bird 257799,cat 257800,bird 257801,dog 257802,deer 257803,dog 257804,deer 257805,deer 257806,dog 257807,automobile 257808,airplane 257809,truck 257810,truck 257811,dog 257812,airplane 257813,airplane 257814,truck 257815,cat 257816,deer 257817,dog 257818,deer 257819,airplane 257820,cat 257821,truck 257822,dog 257823,truck 257824,dog 257825,horse 257826,deer 257827,frog 257828,truck 257829,airplane 257830,horse 257831,airplane 257832,truck 257833,cat 257834,ship 257835,airplane 257836,frog 257837,automobile 257838,truck 257839,dog 257840,truck 257841,airplane 257842,cat 257843,dog 257844,horse 257845,horse 257846,bird 257847,horse 257848,airplane 257849,frog 257850,ship 257851,airplane 257852,ship 257853,dog 257854,truck 257855,dog 257856,horse 257857,bird 257858,cat 257859,cat 257860,ship 257861,bird 257862,truck 257863,dog 257864,truck 257865,frog 257866,automobile 257867,frog 257868,automobile 257869,dog 257870,deer 257871,deer 257872,cat 257873,dog 257874,horse 257875,cat 257876,frog 257877,cat 257878,frog 257879,automobile 257880,truck 257881,airplane 257882,horse 257883,automobile 257884,dog 257885,deer 257886,deer 257887,horse 257888,deer 257889,airplane 257890,cat 257891,dog 257892,automobile 257893,ship 257894,airplane 257895,bird 257896,ship 257897,ship 257898,deer 257899,frog 257900,automobile 257901,cat 257902,frog 257903,deer 257904,bird 257905,truck 257906,frog 257907,cat 257908,automobile 257909,truck 257910,frog 257911,cat 257912,deer 257913,cat 257914,dog 257915,deer 257916,airplane 257917,deer 257918,deer 257919,airplane 257920,automobile 257921,cat 257922,bird 257923,automobile 257924,frog 257925,frog 257926,deer 257927,bird 257928,cat 257929,automobile 257930,airplane 257931,ship 257932,airplane 257933,frog 257934,truck 257935,airplane 257936,horse 257937,airplane 257938,airplane 257939,airplane 257940,frog 257941,cat 257942,deer 257943,dog 257944,frog 257945,dog 257946,frog 257947,cat 257948,horse 257949,ship 257950,dog 257951,dog 257952,horse 257953,dog 257954,truck 257955,frog 257956,truck 257957,cat 257958,cat 257959,ship 257960,frog 257961,ship 257962,deer 257963,dog 257964,cat 257965,deer 257966,truck 257967,frog 257968,airplane 257969,truck 257970,frog 257971,frog 257972,horse 257973,bird 257974,frog 257975,cat 257976,cat 257977,ship 257978,deer 257979,deer 257980,ship 257981,dog 257982,deer 257983,bird 257984,dog 257985,cat 257986,deer 257987,automobile 257988,deer 257989,frog 257990,airplane 257991,ship 257992,dog 257993,cat 257994,deer 257995,truck 257996,bird 257997,bird 257998,dog 257999,airplane 258000,truck 258001,deer 258002,frog 258003,horse 258004,airplane 258005,frog 258006,ship 258007,cat 258008,truck 258009,cat 258010,frog 258011,cat 258012,bird 258013,bird 258014,deer 258015,deer 258016,truck 258017,bird 258018,truck 258019,deer 258020,deer 258021,cat 258022,cat 258023,frog 258024,airplane 258025,cat 258026,cat 258027,cat 258028,deer 258029,airplane 258030,ship 258031,truck 258032,truck 258033,cat 258034,cat 258035,horse 258036,horse 258037,automobile 258038,truck 258039,automobile 258040,deer 258041,ship 258042,truck 258043,dog 258044,ship 258045,automobile 258046,bird 258047,frog 258048,frog 258049,ship 258050,horse 258051,dog 258052,frog 258053,bird 258054,automobile 258055,ship 258056,cat 258057,horse 258058,frog 258059,truck 258060,ship 258061,automobile 258062,deer 258063,truck 258064,dog 258065,dog 258066,bird 258067,cat 258068,frog 258069,deer 258070,frog 258071,automobile 258072,bird 258073,horse 258074,dog 258075,airplane 258076,automobile 258077,airplane 258078,airplane 258079,deer 258080,dog 258081,airplane 258082,bird 258083,horse 258084,frog 258085,horse 258086,frog 258087,ship 258088,airplane 258089,bird 258090,deer 258091,airplane 258092,airplane 258093,cat 258094,frog 258095,cat 258096,dog 258097,automobile 258098,frog 258099,ship 258100,automobile 258101,airplane 258102,ship 258103,deer 258104,truck 258105,ship 258106,automobile 258107,deer 258108,horse 258109,cat 258110,dog 258111,truck 258112,cat 258113,cat 258114,frog 258115,truck 258116,truck 258117,deer 258118,dog 258119,deer 258120,airplane 258121,horse 258122,deer 258123,cat 258124,deer 258125,frog 258126,deer 258127,horse 258128,cat 258129,horse 258130,horse 258131,deer 258132,frog 258133,dog 258134,horse 258135,truck 258136,deer 258137,ship 258138,deer 258139,airplane 258140,cat 258141,truck 258142,frog 258143,horse 258144,frog 258145,automobile 258146,horse 258147,deer 258148,truck 258149,bird 258150,horse 258151,airplane 258152,dog 258153,horse 258154,horse 258155,airplane 258156,deer 258157,dog 258158,frog 258159,frog 258160,bird 258161,frog 258162,cat 258163,frog 258164,truck 258165,horse 258166,dog 258167,bird 258168,dog 258169,airplane 258170,airplane 258171,horse 258172,airplane 258173,automobile 258174,bird 258175,dog 258176,dog 258177,horse 258178,deer 258179,automobile 258180,ship 258181,deer 258182,dog 258183,frog 258184,deer 258185,cat 258186,horse 258187,frog 258188,deer 258189,automobile 258190,airplane 258191,horse 258192,bird 258193,bird 258194,cat 258195,deer 258196,deer 258197,ship 258198,cat 258199,automobile 258200,truck 258201,bird 258202,dog 258203,dog 258204,ship 258205,dog 258206,horse 258207,truck 258208,dog 258209,airplane 258210,ship 258211,ship 258212,dog 258213,frog 258214,cat 258215,cat 258216,dog 258217,frog 258218,deer 258219,frog 258220,dog 258221,horse 258222,bird 258223,truck 258224,frog 258225,automobile 258226,truck 258227,automobile 258228,frog 258229,deer 258230,horse 258231,cat 258232,deer 258233,frog 258234,horse 258235,frog 258236,automobile 258237,truck 258238,horse 258239,cat 258240,dog 258241,deer 258242,cat 258243,bird 258244,bird 258245,bird 258246,bird 258247,automobile 258248,frog 258249,dog 258250,deer 258251,airplane 258252,frog 258253,deer 258254,deer 258255,deer 258256,cat 258257,automobile 258258,automobile 258259,frog 258260,horse 258261,bird 258262,frog 258263,horse 258264,airplane 258265,horse 258266,cat 258267,truck 258268,horse 258269,deer 258270,deer 258271,frog 258272,automobile 258273,horse 258274,deer 258275,deer 258276,dog 258277,ship 258278,bird 258279,cat 258280,truck 258281,bird 258282,deer 258283,airplane 258284,cat 258285,deer 258286,truck 258287,airplane 258288,frog 258289,ship 258290,automobile 258291,deer 258292,deer 258293,cat 258294,dog 258295,frog 258296,deer 258297,frog 258298,bird 258299,truck 258300,cat 258301,frog 258302,frog 258303,frog 258304,frog 258305,deer 258306,horse 258307,ship 258308,ship 258309,horse 258310,frog 258311,airplane 258312,bird 258313,airplane 258314,frog 258315,automobile 258316,automobile 258317,horse 258318,frog 258319,airplane 258320,truck 258321,frog 258322,dog 258323,airplane 258324,dog 258325,ship 258326,dog 258327,airplane 258328,deer 258329,horse 258330,frog 258331,airplane 258332,airplane 258333,deer 258334,deer 258335,bird 258336,bird 258337,cat 258338,bird 258339,truck 258340,airplane 258341,deer 258342,airplane 258343,bird 258344,cat 258345,horse 258346,dog 258347,cat 258348,dog 258349,automobile 258350,ship 258351,dog 258352,truck 258353,dog 258354,dog 258355,bird 258356,ship 258357,dog 258358,bird 258359,truck 258360,bird 258361,airplane 258362,automobile 258363,horse 258364,horse 258365,bird 258366,truck 258367,airplane 258368,ship 258369,automobile 258370,ship 258371,frog 258372,airplane 258373,bird 258374,ship 258375,dog 258376,deer 258377,bird 258378,horse 258379,bird 258380,cat 258381,deer 258382,deer 258383,horse 258384,horse 258385,frog 258386,dog 258387,deer 258388,cat 258389,frog 258390,deer 258391,airplane 258392,cat 258393,ship 258394,deer 258395,cat 258396,dog 258397,truck 258398,horse 258399,airplane 258400,bird 258401,automobile 258402,cat 258403,automobile 258404,deer 258405,cat 258406,dog 258407,cat 258408,bird 258409,frog 258410,horse 258411,airplane 258412,truck 258413,airplane 258414,cat 258415,frog 258416,dog 258417,automobile 258418,airplane 258419,deer 258420,airplane 258421,automobile 258422,truck 258423,bird 258424,frog 258425,frog 258426,ship 258427,deer 258428,automobile 258429,horse 258430,cat 258431,bird 258432,bird 258433,dog 258434,cat 258435,automobile 258436,deer 258437,bird 258438,deer 258439,truck 258440,bird 258441,frog 258442,ship 258443,cat 258444,automobile 258445,ship 258446,frog 258447,dog 258448,horse 258449,deer 258450,frog 258451,bird 258452,dog 258453,dog 258454,airplane 258455,truck 258456,deer 258457,frog 258458,horse 258459,cat 258460,dog 258461,deer 258462,truck 258463,frog 258464,ship 258465,dog 258466,automobile 258467,cat 258468,bird 258469,truck 258470,bird 258471,dog 258472,bird 258473,bird 258474,frog 258475,ship 258476,horse 258477,frog 258478,truck 258479,frog 258480,dog 258481,airplane 258482,deer 258483,deer 258484,dog 258485,horse 258486,deer 258487,horse 258488,truck 258489,ship 258490,airplane 258491,frog 258492,dog 258493,cat 258494,cat 258495,cat 258496,automobile 258497,horse 258498,truck 258499,dog 258500,cat 258501,deer 258502,airplane 258503,deer 258504,deer 258505,cat 258506,deer 258507,dog 258508,frog 258509,deer 258510,frog 258511,airplane 258512,frog 258513,dog 258514,deer 258515,dog 258516,bird 258517,deer 258518,dog 258519,ship 258520,deer 258521,automobile 258522,truck 258523,truck 258524,truck 258525,ship 258526,ship 258527,frog 258528,airplane 258529,dog 258530,deer 258531,cat 258532,deer 258533,bird 258534,truck 258535,ship 258536,truck 258537,horse 258538,dog 258539,horse 258540,dog 258541,automobile 258542,frog 258543,deer 258544,airplane 258545,ship 258546,deer 258547,airplane 258548,ship 258549,automobile 258550,deer 258551,frog 258552,frog 258553,dog 258554,ship 258555,cat 258556,airplane 258557,cat 258558,airplane 258559,frog 258560,dog 258561,automobile 258562,deer 258563,deer 258564,frog 258565,deer 258566,dog 258567,horse 258568,frog 258569,airplane 258570,frog 258571,ship 258572,bird 258573,cat 258574,airplane 258575,cat 258576,airplane 258577,deer 258578,truck 258579,airplane 258580,truck 258581,deer 258582,horse 258583,frog 258584,horse 258585,frog 258586,deer 258587,dog 258588,automobile 258589,frog 258590,cat 258591,cat 258592,frog 258593,frog 258594,ship 258595,frog 258596,deer 258597,automobile 258598,frog 258599,horse 258600,truck 258601,dog 258602,airplane 258603,automobile 258604,automobile 258605,dog 258606,horse 258607,airplane 258608,dog 258609,cat 258610,automobile 258611,cat 258612,frog 258613,frog 258614,horse 258615,deer 258616,frog 258617,truck 258618,ship 258619,deer 258620,airplane 258621,ship 258622,deer 258623,horse 258624,cat 258625,deer 258626,deer 258627,dog 258628,cat 258629,truck 258630,dog 258631,frog 258632,cat 258633,deer 258634,horse 258635,deer 258636,deer 258637,cat 258638,truck 258639,horse 258640,dog 258641,bird 258642,airplane 258643,cat 258644,dog 258645,airplane 258646,ship 258647,airplane 258648,truck 258649,airplane 258650,cat 258651,horse 258652,horse 258653,deer 258654,cat 258655,horse 258656,airplane 258657,bird 258658,dog 258659,deer 258660,dog 258661,truck 258662,horse 258663,automobile 258664,cat 258665,truck 258666,cat 258667,horse 258668,deer 258669,airplane 258670,bird 258671,airplane 258672,deer 258673,bird 258674,horse 258675,deer 258676,horse 258677,horse 258678,truck 258679,ship 258680,ship 258681,automobile 258682,airplane 258683,automobile 258684,truck 258685,horse 258686,horse 258687,automobile 258688,automobile 258689,deer 258690,deer 258691,cat 258692,frog 258693,frog 258694,automobile 258695,deer 258696,deer 258697,ship 258698,ship 258699,truck 258700,bird 258701,frog 258702,ship 258703,truck 258704,cat 258705,frog 258706,ship 258707,deer 258708,dog 258709,ship 258710,horse 258711,truck 258712,airplane 258713,cat 258714,frog 258715,deer 258716,deer 258717,deer 258718,airplane 258719,horse 258720,truck 258721,truck 258722,truck 258723,deer 258724,automobile 258725,airplane 258726,deer 258727,bird 258728,cat 258729,cat 258730,truck 258731,frog 258732,deer 258733,cat 258734,deer 258735,bird 258736,cat 258737,bird 258738,frog 258739,deer 258740,dog 258741,bird 258742,automobile 258743,deer 258744,frog 258745,deer 258746,truck 258747,automobile 258748,dog 258749,bird 258750,automobile 258751,deer 258752,ship 258753,airplane 258754,deer 258755,airplane 258756,bird 258757,ship 258758,bird 258759,dog 258760,automobile 258761,truck 258762,dog 258763,ship 258764,deer 258765,truck 258766,truck 258767,truck 258768,frog 258769,cat 258770,dog 258771,airplane 258772,airplane 258773,bird 258774,truck 258775,deer 258776,truck 258777,ship 258778,truck 258779,dog 258780,deer 258781,horse 258782,dog 258783,truck 258784,cat 258785,frog 258786,deer 258787,dog 258788,airplane 258789,frog 258790,ship 258791,airplane 258792,horse 258793,cat 258794,horse 258795,airplane 258796,automobile 258797,horse 258798,frog 258799,bird 258800,frog 258801,deer 258802,truck 258803,deer 258804,horse 258805,horse 258806,truck 258807,deer 258808,frog 258809,truck 258810,cat 258811,cat 258812,automobile 258813,truck 258814,airplane 258815,cat 258816,horse 258817,airplane 258818,truck 258819,horse 258820,horse 258821,airplane 258822,deer 258823,deer 258824,ship 258825,bird 258826,horse 258827,dog 258828,frog 258829,horse 258830,deer 258831,airplane 258832,cat 258833,truck 258834,frog 258835,truck 258836,deer 258837,dog 258838,dog 258839,frog 258840,automobile 258841,airplane 258842,airplane 258843,automobile 258844,horse 258845,horse 258846,cat 258847,ship 258848,frog 258849,airplane 258850,cat 258851,horse 258852,frog 258853,frog 258854,truck 258855,frog 258856,truck 258857,dog 258858,airplane 258859,dog 258860,deer 258861,dog 258862,bird 258863,cat 258864,frog 258865,airplane 258866,cat 258867,deer 258868,dog 258869,ship 258870,airplane 258871,cat 258872,automobile 258873,horse 258874,ship 258875,bird 258876,cat 258877,automobile 258878,automobile 258879,deer 258880,automobile 258881,truck 258882,bird 258883,deer 258884,bird 258885,airplane 258886,airplane 258887,cat 258888,horse 258889,ship 258890,airplane 258891,truck 258892,deer 258893,ship 258894,truck 258895,cat 258896,cat 258897,airplane 258898,truck 258899,airplane 258900,cat 258901,bird 258902,airplane 258903,dog 258904,bird 258905,frog 258906,deer 258907,dog 258908,bird 258909,deer 258910,bird 258911,truck 258912,horse 258913,deer 258914,horse 258915,deer 258916,ship 258917,dog 258918,frog 258919,horse 258920,truck 258921,automobile 258922,cat 258923,horse 258924,horse 258925,horse 258926,bird 258927,deer 258928,automobile 258929,bird 258930,deer 258931,truck 258932,deer 258933,deer 258934,automobile 258935,cat 258936,cat 258937,automobile 258938,deer 258939,dog 258940,bird 258941,horse 258942,horse 258943,cat 258944,cat 258945,truck 258946,dog 258947,deer 258948,automobile 258949,cat 258950,cat 258951,ship 258952,dog 258953,ship 258954,horse 258955,cat 258956,deer 258957,frog 258958,frog 258959,cat 258960,frog 258961,cat 258962,cat 258963,truck 258964,bird 258965,bird 258966,airplane 258967,truck 258968,deer 258969,airplane 258970,bird 258971,cat 258972,bird 258973,cat 258974,cat 258975,deer 258976,deer 258977,frog 258978,frog 258979,deer 258980,truck 258981,automobile 258982,deer 258983,airplane 258984,horse 258985,deer 258986,ship 258987,deer 258988,dog 258989,frog 258990,dog 258991,deer 258992,bird 258993,truck 258994,bird 258995,cat 258996,airplane 258997,dog 258998,bird 258999,frog 259000,automobile 259001,truck 259002,ship 259003,dog 259004,ship 259005,deer 259006,truck 259007,frog 259008,airplane 259009,bird 259010,dog 259011,bird 259012,horse 259013,horse 259014,truck 259015,bird 259016,deer 259017,deer 259018,horse 259019,frog 259020,bird 259021,frog 259022,frog 259023,bird 259024,deer 259025,truck 259026,deer 259027,bird 259028,truck 259029,automobile 259030,frog 259031,deer 259032,cat 259033,truck 259034,frog 259035,dog 259036,dog 259037,horse 259038,ship 259039,ship 259040,dog 259041,frog 259042,automobile 259043,deer 259044,frog 259045,dog 259046,cat 259047,frog 259048,automobile 259049,cat 259050,deer 259051,automobile 259052,deer 259053,cat 259054,bird 259055,deer 259056,cat 259057,truck 259058,deer 259059,dog 259060,frog 259061,truck 259062,deer 259063,cat 259064,cat 259065,cat 259066,bird 259067,deer 259068,dog 259069,cat 259070,truck 259071,deer 259072,frog 259073,dog 259074,automobile 259075,deer 259076,cat 259077,truck 259078,cat 259079,automobile 259080,cat 259081,bird 259082,ship 259083,deer 259084,bird 259085,bird 259086,truck 259087,ship 259088,airplane 259089,horse 259090,automobile 259091,dog 259092,frog 259093,frog 259094,deer 259095,airplane 259096,deer 259097,deer 259098,horse 259099,bird 259100,cat 259101,deer 259102,automobile 259103,dog 259104,airplane 259105,ship 259106,bird 259107,automobile 259108,cat 259109,automobile 259110,cat 259111,airplane 259112,cat 259113,airplane 259114,airplane 259115,cat 259116,bird 259117,cat 259118,horse 259119,frog 259120,airplane 259121,frog 259122,bird 259123,horse 259124,bird 259125,frog 259126,deer 259127,dog 259128,ship 259129,frog 259130,cat 259131,deer 259132,cat 259133,automobile 259134,truck 259135,cat 259136,horse 259137,cat 259138,cat 259139,airplane 259140,frog 259141,bird 259142,ship 259143,dog 259144,automobile 259145,automobile 259146,horse 259147,deer 259148,ship 259149,truck 259150,truck 259151,dog 259152,automobile 259153,airplane 259154,frog 259155,bird 259156,frog 259157,dog 259158,cat 259159,bird 259160,automobile 259161,deer 259162,airplane 259163,truck 259164,truck 259165,horse 259166,deer 259167,frog 259168,frog 259169,frog 259170,airplane 259171,airplane 259172,cat 259173,airplane 259174,horse 259175,frog 259176,deer 259177,truck 259178,dog 259179,dog 259180,automobile 259181,dog 259182,truck 259183,dog 259184,automobile 259185,horse 259186,dog 259187,ship 259188,cat 259189,airplane 259190,dog 259191,ship 259192,bird 259193,cat 259194,automobile 259195,bird 259196,dog 259197,cat 259198,horse 259199,truck 259200,deer 259201,bird 259202,dog 259203,deer 259204,deer 259205,truck 259206,airplane 259207,truck 259208,automobile 259209,cat 259210,bird 259211,frog 259212,deer 259213,airplane 259214,frog 259215,cat 259216,airplane 259217,deer 259218,frog 259219,horse 259220,dog 259221,dog 259222,deer 259223,frog 259224,truck 259225,ship 259226,horse 259227,bird 259228,deer 259229,deer 259230,bird 259231,frog 259232,dog 259233,dog 259234,dog 259235,horse 259236,ship 259237,deer 259238,deer 259239,frog 259240,frog 259241,horse 259242,cat 259243,automobile 259244,cat 259245,cat 259246,airplane 259247,dog 259248,deer 259249,dog 259250,truck 259251,automobile 259252,ship 259253,cat 259254,deer 259255,automobile 259256,airplane 259257,truck 259258,truck 259259,deer 259260,deer 259261,automobile 259262,bird 259263,deer 259264,cat 259265,cat 259266,bird 259267,bird 259268,dog 259269,frog 259270,frog 259271,airplane 259272,airplane 259273,deer 259274,cat 259275,deer 259276,dog 259277,deer 259278,automobile 259279,cat 259280,ship 259281,frog 259282,bird 259283,cat 259284,ship 259285,truck 259286,truck 259287,bird 259288,truck 259289,deer 259290,bird 259291,automobile 259292,horse 259293,horse 259294,cat 259295,automobile 259296,ship 259297,horse 259298,airplane 259299,horse 259300,cat 259301,bird 259302,frog 259303,dog 259304,bird 259305,frog 259306,automobile 259307,truck 259308,airplane 259309,frog 259310,ship 259311,frog 259312,airplane 259313,dog 259314,bird 259315,deer 259316,horse 259317,truck 259318,automobile 259319,horse 259320,deer 259321,horse 259322,deer 259323,cat 259324,dog 259325,frog 259326,frog 259327,ship 259328,cat 259329,truck 259330,dog 259331,truck 259332,truck 259333,horse 259334,horse 259335,automobile 259336,dog 259337,truck 259338,cat 259339,dog 259340,dog 259341,bird 259342,bird 259343,truck 259344,dog 259345,cat 259346,dog 259347,deer 259348,dog 259349,cat 259350,frog 259351,horse 259352,ship 259353,deer 259354,frog 259355,horse 259356,airplane 259357,horse 259358,frog 259359,truck 259360,cat 259361,deer 259362,truck 259363,deer 259364,cat 259365,dog 259366,truck 259367,frog 259368,deer 259369,airplane 259370,automobile 259371,ship 259372,dog 259373,automobile 259374,cat 259375,truck 259376,bird 259377,horse 259378,truck 259379,deer 259380,truck 259381,cat 259382,truck 259383,frog 259384,bird 259385,ship 259386,deer 259387,dog 259388,ship 259389,frog 259390,frog 259391,deer 259392,automobile 259393,dog 259394,airplane 259395,automobile 259396,ship 259397,horse 259398,truck 259399,airplane 259400,automobile 259401,cat 259402,cat 259403,deer 259404,bird 259405,deer 259406,truck 259407,truck 259408,dog 259409,ship 259410,frog 259411,dog 259412,frog 259413,bird 259414,horse 259415,automobile 259416,horse 259417,frog 259418,airplane 259419,automobile 259420,ship 259421,deer 259422,bird 259423,airplane 259424,airplane 259425,cat 259426,horse 259427,cat 259428,dog 259429,truck 259430,dog 259431,truck 259432,cat 259433,automobile 259434,cat 259435,automobile 259436,horse 259437,automobile 259438,bird 259439,bird 259440,bird 259441,dog 259442,airplane 259443,deer 259444,truck 259445,frog 259446,bird 259447,automobile 259448,truck 259449,dog 259450,airplane 259451,horse 259452,frog 259453,cat 259454,cat 259455,deer 259456,airplane 259457,frog 259458,airplane 259459,ship 259460,horse 259461,bird 259462,frog 259463,cat 259464,automobile 259465,dog 259466,deer 259467,truck 259468,frog 259469,automobile 259470,frog 259471,truck 259472,airplane 259473,ship 259474,cat 259475,horse 259476,deer 259477,truck 259478,truck 259479,airplane 259480,frog 259481,automobile 259482,automobile 259483,frog 259484,deer 259485,automobile 259486,horse 259487,truck 259488,frog 259489,airplane 259490,deer 259491,cat 259492,automobile 259493,bird 259494,frog 259495,horse 259496,cat 259497,horse 259498,deer 259499,ship 259500,cat 259501,deer 259502,bird 259503,automobile 259504,airplane 259505,truck 259506,airplane 259507,truck 259508,deer 259509,dog 259510,dog 259511,deer 259512,dog 259513,bird 259514,horse 259515,cat 259516,deer 259517,cat 259518,horse 259519,bird 259520,frog 259521,truck 259522,airplane 259523,bird 259524,ship 259525,frog 259526,frog 259527,truck 259528,frog 259529,bird 259530,cat 259531,horse 259532,bird 259533,truck 259534,frog 259535,truck 259536,airplane 259537,deer 259538,airplane 259539,airplane 259540,airplane 259541,dog 259542,bird 259543,cat 259544,frog 259545,ship 259546,horse 259547,cat 259548,frog 259549,deer 259550,cat 259551,horse 259552,truck 259553,horse 259554,airplane 259555,bird 259556,frog 259557,cat 259558,bird 259559,airplane 259560,ship 259561,cat 259562,deer 259563,automobile 259564,frog 259565,cat 259566,dog 259567,truck 259568,airplane 259569,deer 259570,deer 259571,horse 259572,horse 259573,cat 259574,bird 259575,deer 259576,truck 259577,airplane 259578,horse 259579,truck 259580,bird 259581,deer 259582,frog 259583,dog 259584,bird 259585,horse 259586,deer 259587,deer 259588,dog 259589,frog 259590,deer 259591,frog 259592,deer 259593,deer 259594,horse 259595,horse 259596,horse 259597,automobile 259598,frog 259599,airplane 259600,dog 259601,frog 259602,dog 259603,cat 259604,bird 259605,automobile 259606,dog 259607,cat 259608,truck 259609,ship 259610,deer 259611,frog 259612,horse 259613,airplane 259614,cat 259615,horse 259616,automobile 259617,frog 259618,deer 259619,ship 259620,airplane 259621,airplane 259622,truck 259623,deer 259624,horse 259625,deer 259626,dog 259627,deer 259628,ship 259629,ship 259630,deer 259631,deer 259632,dog 259633,dog 259634,airplane 259635,deer 259636,airplane 259637,automobile 259638,truck 259639,cat 259640,cat 259641,truck 259642,truck 259643,bird 259644,horse 259645,ship 259646,frog 259647,deer 259648,airplane 259649,deer 259650,frog 259651,frog 259652,deer 259653,bird 259654,dog 259655,dog 259656,cat 259657,automobile 259658,automobile 259659,deer 259660,horse 259661,cat 259662,ship 259663,frog 259664,dog 259665,cat 259666,automobile 259667,bird 259668,airplane 259669,airplane 259670,automobile 259671,cat 259672,cat 259673,bird 259674,truck 259675,truck 259676,truck 259677,ship 259678,airplane 259679,automobile 259680,deer 259681,cat 259682,truck 259683,airplane 259684,bird 259685,ship 259686,horse 259687,bird 259688,horse 259689,cat 259690,ship 259691,truck 259692,bird 259693,airplane 259694,ship 259695,frog 259696,bird 259697,automobile 259698,deer 259699,airplane 259700,cat 259701,bird 259702,bird 259703,deer 259704,truck 259705,horse 259706,bird 259707,frog 259708,frog 259709,truck 259710,cat 259711,truck 259712,cat 259713,frog 259714,cat 259715,bird 259716,airplane 259717,deer 259718,horse 259719,dog 259720,horse 259721,deer 259722,deer 259723,deer 259724,horse 259725,horse 259726,dog 259727,frog 259728,cat 259729,automobile 259730,automobile 259731,deer 259732,dog 259733,frog 259734,truck 259735,ship 259736,automobile 259737,airplane 259738,deer 259739,automobile 259740,bird 259741,horse 259742,ship 259743,horse 259744,airplane 259745,bird 259746,dog 259747,dog 259748,truck 259749,frog 259750,deer 259751,dog 259752,truck 259753,bird 259754,airplane 259755,deer 259756,bird 259757,cat 259758,horse 259759,horse 259760,airplane 259761,airplane 259762,cat 259763,ship 259764,frog 259765,cat 259766,truck 259767,frog 259768,airplane 259769,deer 259770,automobile 259771,truck 259772,deer 259773,truck 259774,dog 259775,dog 259776,deer 259777,truck 259778,truck 259779,bird 259780,frog 259781,horse 259782,ship 259783,horse 259784,deer 259785,automobile 259786,truck 259787,cat 259788,horse 259789,horse 259790,automobile 259791,airplane 259792,automobile 259793,bird 259794,airplane 259795,airplane 259796,deer 259797,truck 259798,frog 259799,deer 259800,frog 259801,frog 259802,deer 259803,truck 259804,airplane 259805,frog 259806,automobile 259807,frog 259808,ship 259809,dog 259810,horse 259811,frog 259812,frog 259813,cat 259814,automobile 259815,ship 259816,automobile 259817,frog 259818,bird 259819,horse 259820,ship 259821,truck 259822,frog 259823,cat 259824,cat 259825,cat 259826,horse 259827,ship 259828,cat 259829,airplane 259830,deer 259831,frog 259832,automobile 259833,cat 259834,truck 259835,deer 259836,dog 259837,cat 259838,deer 259839,automobile 259840,airplane 259841,frog 259842,cat 259843,cat 259844,deer 259845,automobile 259846,airplane 259847,dog 259848,frog 259849,cat 259850,cat 259851,cat 259852,frog 259853,ship 259854,bird 259855,ship 259856,frog 259857,deer 259858,horse 259859,bird 259860,frog 259861,deer 259862,deer 259863,deer 259864,cat 259865,ship 259866,automobile 259867,horse 259868,dog 259869,automobile 259870,cat 259871,dog 259872,dog 259873,deer 259874,cat 259875,ship 259876,ship 259877,bird 259878,horse 259879,airplane 259880,bird 259881,deer 259882,truck 259883,horse 259884,deer 259885,deer 259886,horse 259887,ship 259888,automobile 259889,cat 259890,deer 259891,deer 259892,airplane 259893,deer 259894,frog 259895,automobile 259896,truck 259897,automobile 259898,frog 259899,bird 259900,ship 259901,airplane 259902,frog 259903,bird 259904,cat 259905,automobile 259906,ship 259907,airplane 259908,automobile 259909,automobile 259910,automobile 259911,deer 259912,cat 259913,deer 259914,ship 259915,truck 259916,automobile 259917,automobile 259918,deer 259919,dog 259920,horse 259921,horse 259922,deer 259923,frog 259924,deer 259925,frog 259926,frog 259927,truck 259928,automobile 259929,deer 259930,frog 259931,automobile 259932,frog 259933,horse 259934,bird 259935,cat 259936,airplane 259937,dog 259938,horse 259939,cat 259940,cat 259941,airplane 259942,dog 259943,ship 259944,horse 259945,cat 259946,bird 259947,deer 259948,ship 259949,truck 259950,deer 259951,airplane 259952,frog 259953,truck 259954,airplane 259955,cat 259956,ship 259957,airplane 259958,truck 259959,automobile 259960,ship 259961,deer 259962,truck 259963,automobile 259964,bird 259965,bird 259966,horse 259967,truck 259968,cat 259969,airplane 259970,automobile 259971,airplane 259972,cat 259973,truck 259974,horse 259975,dog 259976,automobile 259977,cat 259978,airplane 259979,dog 259980,dog 259981,cat 259982,cat 259983,airplane 259984,dog 259985,airplane 259986,dog 259987,horse 259988,cat 259989,cat 259990,cat 259991,cat 259992,dog 259993,automobile 259994,dog 259995,dog 259996,truck 259997,dog 259998,airplane 259999,cat 260000,frog 260001,horse 260002,truck 260003,frog 260004,bird 260005,deer 260006,dog 260007,bird 260008,airplane 260009,truck 260010,horse 260011,cat 260012,deer 260013,truck 260014,cat 260015,airplane 260016,dog 260017,frog 260018,deer 260019,horse 260020,ship 260021,truck 260022,truck 260023,frog 260024,truck 260025,cat 260026,airplane 260027,airplane 260028,ship 260029,cat 260030,cat 260031,deer 260032,bird 260033,automobile 260034,dog 260035,airplane 260036,truck 260037,ship 260038,truck 260039,airplane 260040,ship 260041,truck 260042,airplane 260043,frog 260044,dog 260045,bird 260046,ship 260047,cat 260048,frog 260049,airplane 260050,bird 260051,horse 260052,dog 260053,airplane 260054,frog 260055,frog 260056,frog 260057,cat 260058,deer 260059,bird 260060,automobile 260061,bird 260062,cat 260063,airplane 260064,automobile 260065,deer 260066,frog 260067,horse 260068,automobile 260069,cat 260070,ship 260071,frog 260072,cat 260073,bird 260074,frog 260075,cat 260076,airplane 260077,frog 260078,truck 260079,truck 260080,cat 260081,ship 260082,truck 260083,ship 260084,horse 260085,horse 260086,ship 260087,ship 260088,horse 260089,frog 260090,truck 260091,truck 260092,deer 260093,deer 260094,deer 260095,truck 260096,dog 260097,dog 260098,truck 260099,frog 260100,frog 260101,airplane 260102,cat 260103,frog 260104,cat 260105,cat 260106,cat 260107,deer 260108,ship 260109,truck 260110,cat 260111,airplane 260112,truck 260113,dog 260114,horse 260115,automobile 260116,dog 260117,airplane 260118,horse 260119,frog 260120,frog 260121,airplane 260122,airplane 260123,bird 260124,cat 260125,cat 260126,cat 260127,automobile 260128,airplane 260129,deer 260130,dog 260131,horse 260132,dog 260133,cat 260134,bird 260135,cat 260136,bird 260137,cat 260138,horse 260139,airplane 260140,dog 260141,frog 260142,deer 260143,dog 260144,ship 260145,horse 260146,truck 260147,dog 260148,bird 260149,airplane 260150,ship 260151,deer 260152,dog 260153,deer 260154,dog 260155,bird 260156,bird 260157,automobile 260158,frog 260159,frog 260160,ship 260161,dog 260162,cat 260163,dog 260164,cat 260165,cat 260166,deer 260167,frog 260168,dog 260169,dog 260170,automobile 260171,truck 260172,airplane 260173,deer 260174,deer 260175,automobile 260176,horse 260177,truck 260178,deer 260179,horse 260180,horse 260181,truck 260182,cat 260183,cat 260184,dog 260185,ship 260186,truck 260187,cat 260188,ship 260189,dog 260190,airplane 260191,bird 260192,truck 260193,frog 260194,deer 260195,frog 260196,truck 260197,ship 260198,cat 260199,truck 260200,truck 260201,cat 260202,airplane 260203,automobile 260204,cat 260205,airplane 260206,frog 260207,cat 260208,deer 260209,frog 260210,deer 260211,ship 260212,automobile 260213,frog 260214,dog 260215,horse 260216,frog 260217,truck 260218,truck 260219,dog 260220,dog 260221,horse 260222,ship 260223,truck 260224,ship 260225,deer 260226,bird 260227,dog 260228,truck 260229,dog 260230,deer 260231,horse 260232,cat 260233,dog 260234,frog 260235,cat 260236,cat 260237,frog 260238,truck 260239,truck 260240,airplane 260241,ship 260242,airplane 260243,truck 260244,automobile 260245,horse 260246,cat 260247,truck 260248,deer 260249,automobile 260250,cat 260251,deer 260252,dog 260253,bird 260254,horse 260255,ship 260256,deer 260257,frog 260258,cat 260259,bird 260260,frog 260261,deer 260262,airplane 260263,automobile 260264,truck 260265,deer 260266,horse 260267,truck 260268,bird 260269,airplane 260270,frog 260271,deer 260272,frog 260273,dog 260274,dog 260275,ship 260276,airplane 260277,bird 260278,ship 260279,truck 260280,truck 260281,truck 260282,ship 260283,deer 260284,truck 260285,cat 260286,frog 260287,horse 260288,automobile 260289,frog 260290,bird 260291,truck 260292,ship 260293,deer 260294,truck 260295,dog 260296,cat 260297,frog 260298,deer 260299,ship 260300,truck 260301,frog 260302,truck 260303,ship 260304,frog 260305,horse 260306,dog 260307,airplane 260308,bird 260309,ship 260310,cat 260311,frog 260312,cat 260313,cat 260314,cat 260315,cat 260316,airplane 260317,automobile 260318,bird 260319,cat 260320,dog 260321,bird 260322,airplane 260323,horse 260324,truck 260325,bird 260326,bird 260327,ship 260328,dog 260329,truck 260330,deer 260331,cat 260332,cat 260333,airplane 260334,automobile 260335,cat 260336,cat 260337,deer 260338,cat 260339,automobile 260340,airplane 260341,truck 260342,airplane 260343,ship 260344,frog 260345,truck 260346,truck 260347,dog 260348,frog 260349,airplane 260350,truck 260351,bird 260352,airplane 260353,cat 260354,horse 260355,automobile 260356,frog 260357,automobile 260358,dog 260359,truck 260360,horse 260361,horse 260362,truck 260363,bird 260364,deer 260365,bird 260366,horse 260367,truck 260368,airplane 260369,horse 260370,deer 260371,truck 260372,airplane 260373,truck 260374,dog 260375,truck 260376,frog 260377,horse 260378,horse 260379,horse 260380,bird 260381,bird 260382,cat 260383,cat 260384,horse 260385,deer 260386,dog 260387,deer 260388,automobile 260389,cat 260390,bird 260391,truck 260392,frog 260393,dog 260394,bird 260395,dog 260396,cat 260397,truck 260398,ship 260399,dog 260400,bird 260401,dog 260402,ship 260403,horse 260404,bird 260405,ship 260406,frog 260407,horse 260408,dog 260409,airplane 260410,bird 260411,cat 260412,frog 260413,airplane 260414,truck 260415,ship 260416,dog 260417,dog 260418,horse 260419,horse 260420,truck 260421,horse 260422,deer 260423,ship 260424,dog 260425,horse 260426,ship 260427,truck 260428,cat 260429,horse 260430,bird 260431,automobile 260432,deer 260433,bird 260434,truck 260435,truck 260436,automobile 260437,deer 260438,deer 260439,airplane 260440,horse 260441,frog 260442,cat 260443,ship 260444,dog 260445,cat 260446,horse 260447,deer 260448,horse 260449,bird 260450,automobile 260451,deer 260452,airplane 260453,cat 260454,bird 260455,horse 260456,airplane 260457,cat 260458,airplane 260459,deer 260460,horse 260461,deer 260462,deer 260463,deer 260464,dog 260465,deer 260466,automobile 260467,dog 260468,deer 260469,ship 260470,deer 260471,ship 260472,truck 260473,ship 260474,airplane 260475,truck 260476,bird 260477,horse 260478,dog 260479,cat 260480,dog 260481,horse 260482,horse 260483,horse 260484,automobile 260485,airplane 260486,automobile 260487,ship 260488,airplane 260489,truck 260490,airplane 260491,deer 260492,bird 260493,truck 260494,automobile 260495,airplane 260496,frog 260497,truck 260498,frog 260499,bird 260500,automobile 260501,horse 260502,frog 260503,cat 260504,automobile 260505,automobile 260506,frog 260507,deer 260508,bird 260509,dog 260510,dog 260511,bird 260512,deer 260513,bird 260514,ship 260515,dog 260516,dog 260517,ship 260518,horse 260519,deer 260520,frog 260521,frog 260522,bird 260523,ship 260524,deer 260525,truck 260526,cat 260527,frog 260528,automobile 260529,bird 260530,cat 260531,horse 260532,deer 260533,dog 260534,frog 260535,frog 260536,cat 260537,truck 260538,horse 260539,ship 260540,bird 260541,truck 260542,bird 260543,automobile 260544,deer 260545,frog 260546,horse 260547,dog 260548,horse 260549,horse 260550,dog 260551,frog 260552,horse 260553,dog 260554,cat 260555,cat 260556,deer 260557,frog 260558,truck 260559,deer 260560,airplane 260561,dog 260562,ship 260563,dog 260564,automobile 260565,bird 260566,cat 260567,automobile 260568,horse 260569,horse 260570,cat 260571,frog 260572,frog 260573,airplane 260574,deer 260575,horse 260576,horse 260577,automobile 260578,cat 260579,ship 260580,horse 260581,deer 260582,frog 260583,cat 260584,horse 260585,deer 260586,cat 260587,ship 260588,frog 260589,truck 260590,cat 260591,frog 260592,truck 260593,frog 260594,cat 260595,airplane 260596,dog 260597,truck 260598,dog 260599,deer 260600,deer 260601,horse 260602,airplane 260603,automobile 260604,automobile 260605,frog 260606,truck 260607,deer 260608,cat 260609,horse 260610,frog 260611,automobile 260612,airplane 260613,bird 260614,horse 260615,airplane 260616,truck 260617,ship 260618,bird 260619,deer 260620,frog 260621,ship 260622,bird 260623,deer 260624,horse 260625,airplane 260626,ship 260627,truck 260628,cat 260629,automobile 260630,airplane 260631,cat 260632,bird 260633,dog 260634,dog 260635,frog 260636,deer 260637,airplane 260638,cat 260639,airplane 260640,cat 260641,automobile 260642,bird 260643,dog 260644,dog 260645,automobile 260646,deer 260647,airplane 260648,airplane 260649,truck 260650,truck 260651,frog 260652,cat 260653,horse 260654,ship 260655,frog 260656,automobile 260657,cat 260658,ship 260659,frog 260660,ship 260661,airplane 260662,bird 260663,horse 260664,dog 260665,frog 260666,automobile 260667,deer 260668,dog 260669,bird 260670,deer 260671,frog 260672,ship 260673,truck 260674,ship 260675,dog 260676,truck 260677,deer 260678,deer 260679,horse 260680,horse 260681,frog 260682,bird 260683,truck 260684,cat 260685,horse 260686,horse 260687,ship 260688,frog 260689,cat 260690,deer 260691,automobile 260692,bird 260693,horse 260694,deer 260695,truck 260696,truck 260697,frog 260698,airplane 260699,truck 260700,deer 260701,cat 260702,horse 260703,deer 260704,dog 260705,airplane 260706,horse 260707,bird 260708,truck 260709,deer 260710,truck 260711,bird 260712,airplane 260713,frog 260714,dog 260715,ship 260716,deer 260717,truck 260718,truck 260719,horse 260720,airplane 260721,bird 260722,truck 260723,dog 260724,automobile 260725,automobile 260726,ship 260727,deer 260728,cat 260729,truck 260730,dog 260731,frog 260732,airplane 260733,ship 260734,airplane 260735,deer 260736,deer 260737,bird 260738,ship 260739,cat 260740,deer 260741,automobile 260742,truck 260743,dog 260744,cat 260745,ship 260746,ship 260747,cat 260748,cat 260749,airplane 260750,horse 260751,horse 260752,frog 260753,truck 260754,ship 260755,bird 260756,horse 260757,cat 260758,deer 260759,cat 260760,deer 260761,airplane 260762,dog 260763,automobile 260764,truck 260765,truck 260766,ship 260767,frog 260768,dog 260769,airplane 260770,automobile 260771,horse 260772,ship 260773,automobile 260774,cat 260775,bird 260776,ship 260777,deer 260778,airplane 260779,truck 260780,cat 260781,dog 260782,bird 260783,dog 260784,airplane 260785,cat 260786,truck 260787,truck 260788,dog 260789,dog 260790,deer 260791,frog 260792,frog 260793,truck 260794,cat 260795,dog 260796,truck 260797,automobile 260798,truck 260799,airplane 260800,frog 260801,deer 260802,dog 260803,cat 260804,ship 260805,ship 260806,cat 260807,airplane 260808,airplane 260809,automobile 260810,dog 260811,ship 260812,truck 260813,truck 260814,ship 260815,ship 260816,frog 260817,airplane 260818,cat 260819,airplane 260820,horse 260821,dog 260822,truck 260823,truck 260824,dog 260825,automobile 260826,bird 260827,truck 260828,truck 260829,cat 260830,airplane 260831,frog 260832,deer 260833,airplane 260834,horse 260835,cat 260836,truck 260837,ship 260838,cat 260839,airplane 260840,automobile 260841,truck 260842,bird 260843,dog 260844,deer 260845,truck 260846,truck 260847,ship 260848,frog 260849,cat 260850,deer 260851,cat 260852,deer 260853,ship 260854,truck 260855,ship 260856,deer 260857,airplane 260858,truck 260859,ship 260860,ship 260861,truck 260862,deer 260863,airplane 260864,bird 260865,bird 260866,airplane 260867,truck 260868,deer 260869,cat 260870,truck 260871,deer 260872,bird 260873,truck 260874,truck 260875,dog 260876,deer 260877,cat 260878,frog 260879,cat 260880,cat 260881,automobile 260882,dog 260883,deer 260884,automobile 260885,truck 260886,truck 260887,frog 260888,frog 260889,bird 260890,truck 260891,cat 260892,bird 260893,dog 260894,dog 260895,automobile 260896,deer 260897,truck 260898,ship 260899,frog 260900,bird 260901,horse 260902,deer 260903,frog 260904,bird 260905,airplane 260906,horse 260907,horse 260908,deer 260909,frog 260910,frog 260911,deer 260912,bird 260913,cat 260914,deer 260915,dog 260916,cat 260917,frog 260918,cat 260919,ship 260920,ship 260921,ship 260922,automobile 260923,truck 260924,cat 260925,truck 260926,truck 260927,frog 260928,bird 260929,deer 260930,airplane 260931,horse 260932,horse 260933,deer 260934,cat 260935,airplane 260936,cat 260937,truck 260938,horse 260939,dog 260940,cat 260941,bird 260942,automobile 260943,automobile 260944,horse 260945,ship 260946,airplane 260947,truck 260948,automobile 260949,bird 260950,automobile 260951,dog 260952,dog 260953,dog 260954,cat 260955,frog 260956,frog 260957,cat 260958,horse 260959,cat 260960,airplane 260961,dog 260962,deer 260963,horse 260964,frog 260965,airplane 260966,truck 260967,truck 260968,dog 260969,airplane 260970,frog 260971,dog 260972,frog 260973,horse 260974,bird 260975,airplane 260976,truck 260977,truck 260978,deer 260979,horse 260980,dog 260981,deer 260982,horse 260983,automobile 260984,deer 260985,ship 260986,dog 260987,automobile 260988,automobile 260989,cat 260990,deer 260991,deer 260992,frog 260993,truck 260994,ship 260995,automobile 260996,ship 260997,deer 260998,deer 260999,bird 261000,deer 261001,truck 261002,bird 261003,dog 261004,automobile 261005,deer 261006,cat 261007,frog 261008,deer 261009,dog 261010,truck 261011,dog 261012,frog 261013,dog 261014,horse 261015,dog 261016,deer 261017,deer 261018,bird 261019,frog 261020,ship 261021,deer 261022,bird 261023,bird 261024,airplane 261025,airplane 261026,airplane 261027,deer 261028,cat 261029,cat 261030,horse 261031,airplane 261032,truck 261033,horse 261034,airplane 261035,ship 261036,cat 261037,horse 261038,automobile 261039,airplane 261040,cat 261041,frog 261042,bird 261043,bird 261044,airplane 261045,dog 261046,frog 261047,dog 261048,automobile 261049,bird 261050,dog 261051,deer 261052,deer 261053,ship 261054,dog 261055,deer 261056,cat 261057,frog 261058,deer 261059,bird 261060,automobile 261061,deer 261062,horse 261063,horse 261064,truck 261065,bird 261066,ship 261067,frog 261068,airplane 261069,cat 261070,dog 261071,deer 261072,dog 261073,bird 261074,truck 261075,dog 261076,automobile 261077,cat 261078,cat 261079,deer 261080,deer 261081,deer 261082,automobile 261083,frog 261084,horse 261085,bird 261086,cat 261087,deer 261088,truck 261089,bird 261090,dog 261091,airplane 261092,automobile 261093,deer 261094,bird 261095,truck 261096,cat 261097,ship 261098,cat 261099,horse 261100,ship 261101,deer 261102,truck 261103,truck 261104,dog 261105,frog 261106,cat 261107,dog 261108,bird 261109,airplane 261110,cat 261111,ship 261112,airplane 261113,bird 261114,deer 261115,frog 261116,automobile 261117,truck 261118,deer 261119,frog 261120,ship 261121,deer 261122,truck 261123,deer 261124,ship 261125,dog 261126,airplane 261127,ship 261128,bird 261129,automobile 261130,cat 261131,automobile 261132,airplane 261133,automobile 261134,airplane 261135,bird 261136,horse 261137,frog 261138,deer 261139,bird 261140,horse 261141,horse 261142,frog 261143,cat 261144,deer 261145,horse 261146,dog 261147,dog 261148,truck 261149,dog 261150,airplane 261151,bird 261152,dog 261153,truck 261154,frog 261155,truck 261156,deer 261157,dog 261158,automobile 261159,airplane 261160,cat 261161,bird 261162,truck 261163,automobile 261164,truck 261165,bird 261166,deer 261167,airplane 261168,ship 261169,airplane 261170,frog 261171,truck 261172,horse 261173,bird 261174,airplane 261175,automobile 261176,horse 261177,dog 261178,frog 261179,truck 261180,deer 261181,dog 261182,horse 261183,ship 261184,dog 261185,truck 261186,truck 261187,ship 261188,frog 261189,airplane 261190,deer 261191,ship 261192,frog 261193,bird 261194,cat 261195,deer 261196,frog 261197,frog 261198,ship 261199,ship 261200,automobile 261201,cat 261202,deer 261203,truck 261204,frog 261205,dog 261206,cat 261207,bird 261208,automobile 261209,cat 261210,automobile 261211,bird 261212,cat 261213,cat 261214,frog 261215,truck 261216,deer 261217,horse 261218,deer 261219,frog 261220,deer 261221,ship 261222,bird 261223,airplane 261224,horse 261225,truck 261226,frog 261227,airplane 261228,bird 261229,cat 261230,dog 261231,cat 261232,dog 261233,truck 261234,ship 261235,frog 261236,dog 261237,truck 261238,horse 261239,horse 261240,ship 261241,dog 261242,bird 261243,truck 261244,automobile 261245,dog 261246,horse 261247,ship 261248,automobile 261249,truck 261250,cat 261251,frog 261252,horse 261253,frog 261254,ship 261255,frog 261256,deer 261257,dog 261258,bird 261259,truck 261260,dog 261261,frog 261262,horse 261263,bird 261264,bird 261265,deer 261266,deer 261267,horse 261268,deer 261269,horse 261270,truck 261271,truck 261272,cat 261273,deer 261274,cat 261275,automobile 261276,cat 261277,frog 261278,deer 261279,deer 261280,ship 261281,frog 261282,ship 261283,cat 261284,frog 261285,cat 261286,ship 261287,frog 261288,cat 261289,automobile 261290,horse 261291,deer 261292,deer 261293,deer 261294,bird 261295,frog 261296,horse 261297,frog 261298,automobile 261299,truck 261300,bird 261301,horse 261302,automobile 261303,automobile 261304,automobile 261305,horse 261306,truck 261307,dog 261308,truck 261309,cat 261310,dog 261311,truck 261312,bird 261313,bird 261314,bird 261315,deer 261316,truck 261317,cat 261318,truck 261319,bird 261320,cat 261321,frog 261322,frog 261323,deer 261324,airplane 261325,bird 261326,airplane 261327,bird 261328,horse 261329,deer 261330,deer 261331,cat 261332,bird 261333,horse 261334,airplane 261335,bird 261336,horse 261337,deer 261338,deer 261339,dog 261340,cat 261341,truck 261342,deer 261343,ship 261344,ship 261345,cat 261346,truck 261347,cat 261348,frog 261349,airplane 261350,truck 261351,cat 261352,horse 261353,airplane 261354,ship 261355,ship 261356,frog 261357,horse 261358,frog 261359,cat 261360,cat 261361,deer 261362,deer 261363,automobile 261364,horse 261365,horse 261366,frog 261367,deer 261368,ship 261369,deer 261370,truck 261371,dog 261372,bird 261373,airplane 261374,cat 261375,truck 261376,frog 261377,airplane 261378,frog 261379,cat 261380,truck 261381,cat 261382,bird 261383,airplane 261384,deer 261385,dog 261386,automobile 261387,frog 261388,frog 261389,cat 261390,bird 261391,airplane 261392,deer 261393,automobile 261394,bird 261395,automobile 261396,airplane 261397,frog 261398,frog 261399,bird 261400,horse 261401,automobile 261402,bird 261403,dog 261404,dog 261405,cat 261406,ship 261407,dog 261408,airplane 261409,frog 261410,horse 261411,dog 261412,ship 261413,deer 261414,dog 261415,deer 261416,deer 261417,horse 261418,ship 261419,dog 261420,dog 261421,horse 261422,frog 261423,truck 261424,truck 261425,cat 261426,cat 261427,horse 261428,cat 261429,ship 261430,bird 261431,cat 261432,truck 261433,dog 261434,dog 261435,horse 261436,dog 261437,dog 261438,horse 261439,deer 261440,cat 261441,horse 261442,automobile 261443,frog 261444,airplane 261445,truck 261446,horse 261447,frog 261448,airplane 261449,cat 261450,frog 261451,truck 261452,bird 261453,frog 261454,ship 261455,horse 261456,bird 261457,bird 261458,ship 261459,cat 261460,airplane 261461,truck 261462,automobile 261463,airplane 261464,deer 261465,horse 261466,truck 261467,deer 261468,dog 261469,cat 261470,cat 261471,automobile 261472,ship 261473,airplane 261474,bird 261475,dog 261476,deer 261477,automobile 261478,horse 261479,truck 261480,cat 261481,bird 261482,bird 261483,automobile 261484,airplane 261485,horse 261486,deer 261487,dog 261488,dog 261489,horse 261490,cat 261491,deer 261492,dog 261493,automobile 261494,ship 261495,ship 261496,airplane 261497,truck 261498,cat 261499,horse 261500,deer 261501,deer 261502,horse 261503,airplane 261504,ship 261505,frog 261506,cat 261507,horse 261508,dog 261509,frog 261510,horse 261511,bird 261512,cat 261513,automobile 261514,ship 261515,truck 261516,bird 261517,automobile 261518,dog 261519,truck 261520,ship 261521,dog 261522,cat 261523,truck 261524,bird 261525,truck 261526,cat 261527,frog 261528,ship 261529,dog 261530,ship 261531,cat 261532,automobile 261533,automobile 261534,bird 261535,frog 261536,ship 261537,deer 261538,bird 261539,bird 261540,truck 261541,cat 261542,cat 261543,cat 261544,ship 261545,cat 261546,deer 261547,cat 261548,frog 261549,ship 261550,deer 261551,truck 261552,deer 261553,horse 261554,frog 261555,cat 261556,horse 261557,dog 261558,deer 261559,ship 261560,frog 261561,cat 261562,automobile 261563,cat 261564,ship 261565,deer 261566,cat 261567,cat 261568,ship 261569,ship 261570,horse 261571,deer 261572,truck 261573,cat 261574,frog 261575,airplane 261576,truck 261577,ship 261578,frog 261579,frog 261580,horse 261581,deer 261582,truck 261583,horse 261584,cat 261585,automobile 261586,bird 261587,cat 261588,deer 261589,cat 261590,airplane 261591,cat 261592,truck 261593,ship 261594,bird 261595,bird 261596,dog 261597,deer 261598,airplane 261599,automobile 261600,frog 261601,deer 261602,cat 261603,cat 261604,bird 261605,ship 261606,horse 261607,deer 261608,frog 261609,frog 261610,automobile 261611,automobile 261612,automobile 261613,automobile 261614,automobile 261615,truck 261616,horse 261617,deer 261618,cat 261619,airplane 261620,automobile 261621,ship 261622,truck 261623,automobile 261624,automobile 261625,airplane 261626,frog 261627,bird 261628,horse 261629,cat 261630,horse 261631,frog 261632,ship 261633,frog 261634,automobile 261635,airplane 261636,horse 261637,ship 261638,ship 261639,ship 261640,automobile 261641,truck 261642,frog 261643,truck 261644,deer 261645,truck 261646,ship 261647,cat 261648,horse 261649,horse 261650,cat 261651,horse 261652,dog 261653,cat 261654,truck 261655,cat 261656,cat 261657,cat 261658,deer 261659,airplane 261660,cat 261661,deer 261662,bird 261663,ship 261664,bird 261665,deer 261666,ship 261667,airplane 261668,horse 261669,cat 261670,horse 261671,horse 261672,dog 261673,frog 261674,bird 261675,frog 261676,automobile 261677,frog 261678,dog 261679,bird 261680,horse 261681,cat 261682,ship 261683,cat 261684,dog 261685,airplane 261686,dog 261687,cat 261688,deer 261689,truck 261690,deer 261691,frog 261692,bird 261693,truck 261694,horse 261695,deer 261696,horse 261697,bird 261698,frog 261699,ship 261700,deer 261701,airplane 261702,ship 261703,automobile 261704,frog 261705,dog 261706,deer 261707,cat 261708,deer 261709,airplane 261710,frog 261711,horse 261712,frog 261713,dog 261714,deer 261715,truck 261716,cat 261717,dog 261718,frog 261719,airplane 261720,dog 261721,deer 261722,horse 261723,truck 261724,ship 261725,automobile 261726,frog 261727,frog 261728,bird 261729,cat 261730,cat 261731,dog 261732,automobile 261733,frog 261734,frog 261735,frog 261736,deer 261737,cat 261738,dog 261739,ship 261740,cat 261741,truck 261742,ship 261743,automobile 261744,airplane 261745,airplane 261746,frog 261747,cat 261748,cat 261749,horse 261750,ship 261751,airplane 261752,airplane 261753,automobile 261754,airplane 261755,airplane 261756,automobile 261757,bird 261758,cat 261759,deer 261760,airplane 261761,bird 261762,cat 261763,frog 261764,truck 261765,bird 261766,frog 261767,bird 261768,cat 261769,cat 261770,dog 261771,deer 261772,ship 261773,truck 261774,horse 261775,ship 261776,deer 261777,truck 261778,truck 261779,airplane 261780,horse 261781,frog 261782,automobile 261783,deer 261784,bird 261785,horse 261786,bird 261787,frog 261788,bird 261789,airplane 261790,bird 261791,bird 261792,horse 261793,ship 261794,horse 261795,cat 261796,airplane 261797,ship 261798,horse 261799,cat 261800,horse 261801,bird 261802,automobile 261803,automobile 261804,bird 261805,dog 261806,airplane 261807,deer 261808,deer 261809,bird 261810,automobile 261811,horse 261812,cat 261813,dog 261814,deer 261815,horse 261816,automobile 261817,truck 261818,deer 261819,automobile 261820,bird 261821,cat 261822,bird 261823,frog 261824,cat 261825,bird 261826,bird 261827,truck 261828,dog 261829,automobile 261830,bird 261831,automobile 261832,ship 261833,horse 261834,frog 261835,dog 261836,ship 261837,cat 261838,truck 261839,bird 261840,cat 261841,dog 261842,cat 261843,deer 261844,cat 261845,ship 261846,automobile 261847,automobile 261848,cat 261849,cat 261850,frog 261851,truck 261852,airplane 261853,airplane 261854,ship 261855,deer 261856,airplane 261857,frog 261858,dog 261859,bird 261860,airplane 261861,bird 261862,airplane 261863,deer 261864,airplane 261865,frog 261866,deer 261867,automobile 261868,cat 261869,airplane 261870,ship 261871,truck 261872,deer 261873,frog 261874,bird 261875,ship 261876,deer 261877,dog 261878,frog 261879,cat 261880,bird 261881,bird 261882,bird 261883,dog 261884,automobile 261885,ship 261886,ship 261887,horse 261888,ship 261889,airplane 261890,frog 261891,frog 261892,ship 261893,ship 261894,ship 261895,deer 261896,dog 261897,horse 261898,horse 261899,dog 261900,deer 261901,dog 261902,cat 261903,automobile 261904,truck 261905,truck 261906,frog 261907,frog 261908,bird 261909,airplane 261910,airplane 261911,bird 261912,deer 261913,cat 261914,deer 261915,automobile 261916,automobile 261917,deer 261918,deer 261919,airplane 261920,frog 261921,ship 261922,deer 261923,horse 261924,dog 261925,horse 261926,dog 261927,frog 261928,frog 261929,horse 261930,truck 261931,deer 261932,frog 261933,automobile 261934,frog 261935,dog 261936,dog 261937,automobile 261938,automobile 261939,horse 261940,horse 261941,cat 261942,horse 261943,truck 261944,truck 261945,airplane 261946,automobile 261947,bird 261948,deer 261949,deer 261950,horse 261951,airplane 261952,frog 261953,airplane 261954,dog 261955,frog 261956,horse 261957,deer 261958,truck 261959,airplane 261960,dog 261961,frog 261962,bird 261963,ship 261964,bird 261965,automobile 261966,cat 261967,airplane 261968,horse 261969,truck 261970,frog 261971,horse 261972,bird 261973,dog 261974,bird 261975,frog 261976,ship 261977,automobile 261978,frog 261979,dog 261980,horse 261981,cat 261982,dog 261983,frog 261984,cat 261985,deer 261986,ship 261987,bird 261988,cat 261989,cat 261990,dog 261991,cat 261992,dog 261993,bird 261994,cat 261995,cat 261996,airplane 261997,cat 261998,dog 261999,dog 262000,automobile 262001,horse 262002,cat 262003,ship 262004,deer 262005,frog 262006,cat 262007,deer 262008,bird 262009,cat 262010,automobile 262011,automobile 262012,deer 262013,dog 262014,ship 262015,ship 262016,truck 262017,frog 262018,horse 262019,automobile 262020,automobile 262021,deer 262022,ship 262023,dog 262024,ship 262025,automobile 262026,truck 262027,deer 262028,deer 262029,deer 262030,horse 262031,truck 262032,horse 262033,horse 262034,cat 262035,deer 262036,deer 262037,cat 262038,deer 262039,truck 262040,deer 262041,deer 262042,truck 262043,cat 262044,cat 262045,cat 262046,frog 262047,airplane 262048,automobile 262049,dog 262050,dog 262051,cat 262052,automobile 262053,cat 262054,truck 262055,airplane 262056,truck 262057,airplane 262058,cat 262059,frog 262060,frog 262061,ship 262062,dog 262063,horse 262064,horse 262065,truck 262066,truck 262067,cat 262068,airplane 262069,dog 262070,truck 262071,deer 262072,cat 262073,dog 262074,dog 262075,bird 262076,horse 262077,truck 262078,horse 262079,frog 262080,frog 262081,frog 262082,ship 262083,ship 262084,bird 262085,ship 262086,deer 262087,airplane 262088,airplane 262089,dog 262090,horse 262091,truck 262092,bird 262093,dog 262094,bird 262095,airplane 262096,cat 262097,dog 262098,frog 262099,deer 262100,horse 262101,truck 262102,deer 262103,frog 262104,cat 262105,horse 262106,airplane 262107,bird 262108,automobile 262109,horse 262110,dog 262111,horse 262112,automobile 262113,deer 262114,horse 262115,frog 262116,frog 262117,dog 262118,truck 262119,deer 262120,cat 262121,airplane 262122,airplane 262123,horse 262124,dog 262125,cat 262126,deer 262127,bird 262128,dog 262129,frog 262130,deer 262131,ship 262132,horse 262133,frog 262134,ship 262135,deer 262136,cat 262137,dog 262138,horse 262139,cat 262140,bird 262141,frog 262142,deer 262143,automobile 262144,ship 262145,frog 262146,deer 262147,horse 262148,bird 262149,frog 262150,cat 262151,automobile 262152,dog 262153,automobile 262154,deer 262155,frog 262156,horse 262157,truck 262158,deer 262159,bird 262160,bird 262161,deer 262162,frog 262163,airplane 262164,cat 262165,cat 262166,automobile 262167,airplane 262168,airplane 262169,frog 262170,automobile 262171,airplane 262172,horse 262173,cat 262174,airplane 262175,dog 262176,cat 262177,cat 262178,automobile 262179,deer 262180,bird 262181,cat 262182,frog 262183,cat 262184,dog 262185,deer 262186,cat 262187,deer 262188,bird 262189,deer 262190,ship 262191,bird 262192,bird 262193,frog 262194,frog 262195,horse 262196,automobile 262197,airplane 262198,dog 262199,truck 262200,airplane 262201,truck 262202,dog 262203,airplane 262204,airplane 262205,ship 262206,horse 262207,ship 262208,bird 262209,truck 262210,automobile 262211,cat 262212,deer 262213,frog 262214,airplane 262215,deer 262216,truck 262217,frog 262218,truck 262219,horse 262220,dog 262221,deer 262222,bird 262223,automobile 262224,bird 262225,cat 262226,frog 262227,deer 262228,ship 262229,ship 262230,dog 262231,horse 262232,ship 262233,ship 262234,horse 262235,deer 262236,horse 262237,bird 262238,frog 262239,cat 262240,airplane 262241,cat 262242,cat 262243,dog 262244,ship 262245,ship 262246,cat 262247,dog 262248,deer 262249,cat 262250,cat 262251,dog 262252,bird 262253,horse 262254,airplane 262255,cat 262256,automobile 262257,deer 262258,dog 262259,dog 262260,deer 262261,airplane 262262,automobile 262263,deer 262264,cat 262265,bird 262266,cat 262267,ship 262268,truck 262269,automobile 262270,dog 262271,bird 262272,horse 262273,airplane 262274,truck 262275,bird 262276,frog 262277,frog 262278,ship 262279,automobile 262280,ship 262281,dog 262282,frog 262283,automobile 262284,airplane 262285,deer 262286,frog 262287,airplane 262288,bird 262289,frog 262290,truck 262291,cat 262292,horse 262293,dog 262294,truck 262295,ship 262296,horse 262297,bird 262298,deer 262299,ship 262300,cat 262301,cat 262302,cat 262303,deer 262304,horse 262305,cat 262306,horse 262307,airplane 262308,bird 262309,deer 262310,ship 262311,frog 262312,dog 262313,frog 262314,frog 262315,horse 262316,deer 262317,airplane 262318,horse 262319,deer 262320,frog 262321,horse 262322,deer 262323,horse 262324,cat 262325,ship 262326,airplane 262327,bird 262328,cat 262329,truck 262330,bird 262331,deer 262332,bird 262333,horse 262334,deer 262335,cat 262336,bird 262337,dog 262338,bird 262339,airplane 262340,deer 262341,dog 262342,bird 262343,horse 262344,ship 262345,airplane 262346,deer 262347,cat 262348,airplane 262349,truck 262350,horse 262351,bird 262352,deer 262353,deer 262354,automobile 262355,airplane 262356,horse 262357,cat 262358,airplane 262359,airplane 262360,horse 262361,ship 262362,truck 262363,frog 262364,cat 262365,frog 262366,deer 262367,bird 262368,deer 262369,horse 262370,airplane 262371,frog 262372,airplane 262373,airplane 262374,cat 262375,cat 262376,cat 262377,ship 262378,deer 262379,airplane 262380,bird 262381,deer 262382,bird 262383,dog 262384,bird 262385,airplane 262386,deer 262387,ship 262388,dog 262389,truck 262390,ship 262391,bird 262392,deer 262393,ship 262394,bird 262395,horse 262396,bird 262397,frog 262398,frog 262399,bird 262400,deer 262401,frog 262402,cat 262403,cat 262404,deer 262405,bird 262406,bird 262407,horse 262408,airplane 262409,bird 262410,frog 262411,airplane 262412,horse 262413,ship 262414,horse 262415,cat 262416,dog 262417,truck 262418,airplane 262419,truck 262420,dog 262421,horse 262422,bird 262423,bird 262424,cat 262425,automobile 262426,deer 262427,dog 262428,ship 262429,bird 262430,automobile 262431,cat 262432,cat 262433,horse 262434,cat 262435,deer 262436,horse 262437,truck 262438,ship 262439,cat 262440,bird 262441,horse 262442,ship 262443,dog 262444,airplane 262445,truck 262446,bird 262447,cat 262448,deer 262449,dog 262450,truck 262451,ship 262452,horse 262453,dog 262454,ship 262455,frog 262456,cat 262457,dog 262458,airplane 262459,automobile 262460,cat 262461,automobile 262462,ship 262463,ship 262464,ship 262465,ship 262466,deer 262467,deer 262468,cat 262469,truck 262470,bird 262471,cat 262472,ship 262473,horse 262474,truck 262475,ship 262476,airplane 262477,horse 262478,truck 262479,deer 262480,horse 262481,airplane 262482,airplane 262483,deer 262484,deer 262485,automobile 262486,automobile 262487,bird 262488,cat 262489,deer 262490,ship 262491,deer 262492,ship 262493,cat 262494,truck 262495,truck 262496,horse 262497,dog 262498,automobile 262499,cat 262500,airplane 262501,airplane 262502,frog 262503,automobile 262504,dog 262505,ship 262506,bird 262507,bird 262508,frog 262509,horse 262510,bird 262511,ship 262512,automobile 262513,deer 262514,automobile 262515,airplane 262516,horse 262517,dog 262518,automobile 262519,airplane 262520,bird 262521,cat 262522,ship 262523,deer 262524,bird 262525,airplane 262526,bird 262527,truck 262528,frog 262529,horse 262530,ship 262531,horse 262532,cat 262533,deer 262534,airplane 262535,ship 262536,dog 262537,horse 262538,airplane 262539,frog 262540,cat 262541,truck 262542,horse 262543,horse 262544,horse 262545,frog 262546,truck 262547,ship 262548,bird 262549,automobile 262550,bird 262551,automobile 262552,truck 262553,cat 262554,frog 262555,dog 262556,airplane 262557,truck 262558,deer 262559,cat 262560,bird 262561,dog 262562,dog 262563,ship 262564,horse 262565,deer 262566,ship 262567,ship 262568,cat 262569,frog 262570,bird 262571,frog 262572,ship 262573,bird 262574,bird 262575,frog 262576,truck 262577,deer 262578,truck 262579,ship 262580,frog 262581,ship 262582,automobile 262583,cat 262584,airplane 262585,cat 262586,deer 262587,truck 262588,ship 262589,automobile 262590,automobile 262591,deer 262592,deer 262593,horse 262594,automobile 262595,automobile 262596,automobile 262597,ship 262598,cat 262599,deer 262600,horse 262601,ship 262602,cat 262603,deer 262604,truck 262605,frog 262606,truck 262607,deer 262608,truck 262609,automobile 262610,frog 262611,cat 262612,horse 262613,truck 262614,horse 262615,horse 262616,horse 262617,horse 262618,dog 262619,horse 262620,bird 262621,frog 262622,cat 262623,cat 262624,airplane 262625,horse 262626,automobile 262627,truck 262628,truck 262629,horse 262630,ship 262631,dog 262632,cat 262633,airplane 262634,cat 262635,ship 262636,deer 262637,horse 262638,automobile 262639,horse 262640,deer 262641,ship 262642,frog 262643,bird 262644,deer 262645,dog 262646,deer 262647,truck 262648,cat 262649,deer 262650,dog 262651,ship 262652,ship 262653,deer 262654,cat 262655,automobile 262656,dog 262657,dog 262658,dog 262659,airplane 262660,dog 262661,horse 262662,bird 262663,frog 262664,ship 262665,automobile 262666,horse 262667,dog 262668,dog 262669,dog 262670,frog 262671,ship 262672,deer 262673,truck 262674,horse 262675,horse 262676,horse 262677,horse 262678,deer 262679,bird 262680,dog 262681,airplane 262682,deer 262683,frog 262684,cat 262685,automobile 262686,cat 262687,cat 262688,dog 262689,truck 262690,deer 262691,frog 262692,automobile 262693,dog 262694,truck 262695,cat 262696,ship 262697,deer 262698,cat 262699,horse 262700,horse 262701,frog 262702,ship 262703,cat 262704,airplane 262705,truck 262706,airplane 262707,truck 262708,cat 262709,ship 262710,deer 262711,deer 262712,truck 262713,cat 262714,cat 262715,cat 262716,airplane 262717,bird 262718,horse 262719,airplane 262720,bird 262721,bird 262722,bird 262723,ship 262724,deer 262725,cat 262726,truck 262727,bird 262728,horse 262729,bird 262730,airplane 262731,airplane 262732,dog 262733,truck 262734,airplane 262735,cat 262736,cat 262737,truck 262738,cat 262739,dog 262740,frog 262741,ship 262742,dog 262743,horse 262744,bird 262745,airplane 262746,bird 262747,frog 262748,horse 262749,airplane 262750,truck 262751,dog 262752,dog 262753,bird 262754,cat 262755,dog 262756,dog 262757,automobile 262758,cat 262759,automobile 262760,dog 262761,cat 262762,dog 262763,horse 262764,cat 262765,bird 262766,automobile 262767,frog 262768,truck 262769,ship 262770,truck 262771,bird 262772,deer 262773,truck 262774,bird 262775,frog 262776,truck 262777,bird 262778,ship 262779,cat 262780,deer 262781,horse 262782,frog 262783,automobile 262784,cat 262785,cat 262786,cat 262787,cat 262788,cat 262789,dog 262790,airplane 262791,airplane 262792,cat 262793,cat 262794,airplane 262795,dog 262796,truck 262797,ship 262798,ship 262799,dog 262800,frog 262801,cat 262802,dog 262803,ship 262804,deer 262805,cat 262806,horse 262807,horse 262808,deer 262809,dog 262810,truck 262811,dog 262812,bird 262813,frog 262814,airplane 262815,cat 262816,truck 262817,frog 262818,bird 262819,horse 262820,horse 262821,horse 262822,airplane 262823,airplane 262824,cat 262825,deer 262826,airplane 262827,airplane 262828,dog 262829,automobile 262830,ship 262831,automobile 262832,horse 262833,cat 262834,cat 262835,cat 262836,deer 262837,dog 262838,airplane 262839,dog 262840,airplane 262841,truck 262842,airplane 262843,horse 262844,ship 262845,dog 262846,automobile 262847,dog 262848,bird 262849,horse 262850,cat 262851,cat 262852,ship 262853,horse 262854,bird 262855,truck 262856,frog 262857,frog 262858,frog 262859,truck 262860,automobile 262861,bird 262862,automobile 262863,deer 262864,cat 262865,automobile 262866,truck 262867,truck 262868,truck 262869,truck 262870,automobile 262871,ship 262872,cat 262873,automobile 262874,bird 262875,bird 262876,cat 262877,ship 262878,cat 262879,cat 262880,horse 262881,truck 262882,dog 262883,truck 262884,cat 262885,frog 262886,frog 262887,bird 262888,cat 262889,bird 262890,frog 262891,airplane 262892,bird 262893,horse 262894,bird 262895,bird 262896,frog 262897,cat 262898,frog 262899,cat 262900,bird 262901,airplane 262902,bird 262903,bird 262904,dog 262905,horse 262906,airplane 262907,deer 262908,truck 262909,dog 262910,airplane 262911,deer 262912,deer 262913,bird 262914,cat 262915,airplane 262916,deer 262917,cat 262918,ship 262919,frog 262920,dog 262921,ship 262922,truck 262923,horse 262924,horse 262925,automobile 262926,deer 262927,deer 262928,bird 262929,frog 262930,ship 262931,cat 262932,dog 262933,automobile 262934,cat 262935,airplane 262936,ship 262937,ship 262938,cat 262939,automobile 262940,frog 262941,deer 262942,deer 262943,deer 262944,truck 262945,airplane 262946,truck 262947,airplane 262948,frog 262949,cat 262950,horse 262951,frog 262952,cat 262953,cat 262954,horse 262955,dog 262956,automobile 262957,cat 262958,automobile 262959,ship 262960,truck 262961,automobile 262962,cat 262963,airplane 262964,automobile 262965,truck 262966,horse 262967,automobile 262968,deer 262969,truck 262970,bird 262971,bird 262972,frog 262973,dog 262974,truck 262975,frog 262976,dog 262977,horse 262978,cat 262979,deer 262980,truck 262981,frog 262982,cat 262983,ship 262984,dog 262985,deer 262986,cat 262987,bird 262988,dog 262989,airplane 262990,airplane 262991,frog 262992,frog 262993,deer 262994,deer 262995,truck 262996,truck 262997,deer 262998,bird 262999,truck 263000,frog 263001,ship 263002,truck 263003,horse 263004,airplane 263005,ship 263006,deer 263007,deer 263008,deer 263009,automobile 263010,deer 263011,bird 263012,deer 263013,truck 263014,bird 263015,automobile 263016,dog 263017,frog 263018,dog 263019,truck 263020,cat 263021,horse 263022,frog 263023,dog 263024,truck 263025,dog 263026,horse 263027,cat 263028,ship 263029,frog 263030,deer 263031,automobile 263032,airplane 263033,frog 263034,bird 263035,ship 263036,cat 263037,cat 263038,bird 263039,horse 263040,truck 263041,frog 263042,cat 263043,automobile 263044,airplane 263045,dog 263046,cat 263047,horse 263048,frog 263049,cat 263050,dog 263051,truck 263052,airplane 263053,truck 263054,horse 263055,deer 263056,bird 263057,cat 263058,horse 263059,deer 263060,automobile 263061,truck 263062,dog 263063,dog 263064,frog 263065,deer 263066,frog 263067,bird 263068,automobile 263069,airplane 263070,bird 263071,airplane 263072,frog 263073,dog 263074,cat 263075,truck 263076,truck 263077,cat 263078,dog 263079,cat 263080,deer 263081,deer 263082,deer 263083,ship 263084,ship 263085,ship 263086,airplane 263087,automobile 263088,frog 263089,truck 263090,cat 263091,dog 263092,horse 263093,ship 263094,bird 263095,ship 263096,dog 263097,frog 263098,truck 263099,airplane 263100,frog 263101,cat 263102,dog 263103,dog 263104,frog 263105,ship 263106,horse 263107,bird 263108,dog 263109,ship 263110,truck 263111,horse 263112,airplane 263113,frog 263114,horse 263115,ship 263116,bird 263117,horse 263118,cat 263119,deer 263120,automobile 263121,deer 263122,horse 263123,bird 263124,airplane 263125,deer 263126,dog 263127,bird 263128,automobile 263129,deer 263130,deer 263131,frog 263132,truck 263133,dog 263134,frog 263135,deer 263136,deer 263137,deer 263138,truck 263139,deer 263140,automobile 263141,deer 263142,bird 263143,bird 263144,airplane 263145,horse 263146,horse 263147,automobile 263148,bird 263149,dog 263150,deer 263151,bird 263152,truck 263153,airplane 263154,deer 263155,ship 263156,deer 263157,cat 263158,truck 263159,truck 263160,frog 263161,dog 263162,airplane 263163,ship 263164,truck 263165,bird 263166,dog 263167,deer 263168,horse 263169,deer 263170,dog 263171,horse 263172,frog 263173,bird 263174,frog 263175,airplane 263176,bird 263177,bird 263178,cat 263179,dog 263180,automobile 263181,deer 263182,automobile 263183,horse 263184,horse 263185,horse 263186,cat 263187,cat 263188,deer 263189,cat 263190,airplane 263191,deer 263192,cat 263193,ship 263194,deer 263195,truck 263196,horse 263197,cat 263198,bird 263199,airplane 263200,deer 263201,truck 263202,deer 263203,dog 263204,airplane 263205,bird 263206,horse 263207,frog 263208,horse 263209,airplane 263210,cat 263211,bird 263212,truck 263213,dog 263214,frog 263215,truck 263216,truck 263217,horse 263218,cat 263219,bird 263220,bird 263221,truck 263222,frog 263223,automobile 263224,deer 263225,cat 263226,deer 263227,dog 263228,cat 263229,dog 263230,frog 263231,truck 263232,deer 263233,deer 263234,bird 263235,bird 263236,horse 263237,deer 263238,automobile 263239,bird 263240,dog 263241,frog 263242,ship 263243,dog 263244,ship 263245,automobile 263246,cat 263247,dog 263248,horse 263249,frog 263250,frog 263251,truck 263252,bird 263253,horse 263254,truck 263255,frog 263256,frog 263257,ship 263258,deer 263259,horse 263260,frog 263261,horse 263262,dog 263263,airplane 263264,deer 263265,frog 263266,deer 263267,truck 263268,bird 263269,horse 263270,deer 263271,frog 263272,dog 263273,ship 263274,bird 263275,airplane 263276,deer 263277,dog 263278,deer 263279,truck 263280,horse 263281,bird 263282,cat 263283,frog 263284,dog 263285,frog 263286,deer 263287,horse 263288,dog 263289,truck 263290,horse 263291,horse 263292,deer 263293,ship 263294,airplane 263295,bird 263296,airplane 263297,dog 263298,deer 263299,frog 263300,bird 263301,frog 263302,airplane 263303,frog 263304,frog 263305,horse 263306,cat 263307,truck 263308,dog 263309,bird 263310,horse 263311,dog 263312,frog 263313,deer 263314,cat 263315,frog 263316,truck 263317,cat 263318,horse 263319,truck 263320,airplane 263321,deer 263322,bird 263323,frog 263324,ship 263325,ship 263326,automobile 263327,automobile 263328,deer 263329,deer 263330,automobile 263331,frog 263332,truck 263333,truck 263334,airplane 263335,truck 263336,automobile 263337,truck 263338,cat 263339,airplane 263340,automobile 263341,truck 263342,truck 263343,horse 263344,dog 263345,ship 263346,dog 263347,cat 263348,airplane 263349,horse 263350,airplane 263351,frog 263352,frog 263353,dog 263354,deer 263355,cat 263356,deer 263357,truck 263358,cat 263359,bird 263360,automobile 263361,cat 263362,deer 263363,truck 263364,truck 263365,horse 263366,cat 263367,horse 263368,dog 263369,bird 263370,deer 263371,deer 263372,bird 263373,horse 263374,deer 263375,airplane 263376,ship 263377,cat 263378,ship 263379,ship 263380,deer 263381,bird 263382,horse 263383,frog 263384,frog 263385,dog 263386,ship 263387,frog 263388,dog 263389,airplane 263390,airplane 263391,horse 263392,bird 263393,bird 263394,deer 263395,bird 263396,frog 263397,automobile 263398,cat 263399,frog 263400,airplane 263401,cat 263402,cat 263403,dog 263404,deer 263405,horse 263406,cat 263407,frog 263408,truck 263409,cat 263410,horse 263411,automobile 263412,truck 263413,airplane 263414,dog 263415,deer 263416,deer 263417,deer 263418,ship 263419,cat 263420,dog 263421,automobile 263422,airplane 263423,bird 263424,deer 263425,deer 263426,automobile 263427,truck 263428,airplane 263429,ship 263430,bird 263431,ship 263432,cat 263433,dog 263434,frog 263435,ship 263436,deer 263437,horse 263438,bird 263439,deer 263440,truck 263441,dog 263442,deer 263443,deer 263444,truck 263445,truck 263446,automobile 263447,deer 263448,cat 263449,automobile 263450,deer 263451,horse 263452,airplane 263453,dog 263454,truck 263455,ship 263456,bird 263457,cat 263458,deer 263459,frog 263460,truck 263461,cat 263462,bird 263463,dog 263464,cat 263465,frog 263466,frog 263467,cat 263468,airplane 263469,deer 263470,bird 263471,deer 263472,cat 263473,automobile 263474,horse 263475,bird 263476,airplane 263477,dog 263478,bird 263479,ship 263480,bird 263481,frog 263482,cat 263483,ship 263484,airplane 263485,truck 263486,cat 263487,deer 263488,deer 263489,horse 263490,bird 263491,bird 263492,automobile 263493,airplane 263494,ship 263495,dog 263496,cat 263497,dog 263498,deer 263499,frog 263500,automobile 263501,deer 263502,horse 263503,ship 263504,deer 263505,deer 263506,dog 263507,bird 263508,truck 263509,bird 263510,frog 263511,cat 263512,frog 263513,horse 263514,dog 263515,automobile 263516,horse 263517,cat 263518,airplane 263519,cat 263520,frog 263521,automobile 263522,bird 263523,dog 263524,horse 263525,ship 263526,bird 263527,cat 263528,bird 263529,horse 263530,deer 263531,truck 263532,bird 263533,bird 263534,frog 263535,automobile 263536,dog 263537,dog 263538,bird 263539,cat 263540,dog 263541,cat 263542,truck 263543,deer 263544,automobile 263545,frog 263546,airplane 263547,automobile 263548,deer 263549,bird 263550,frog 263551,deer 263552,deer 263553,ship 263554,frog 263555,horse 263556,airplane 263557,bird 263558,deer 263559,automobile 263560,frog 263561,deer 263562,bird 263563,dog 263564,ship 263565,ship 263566,dog 263567,cat 263568,ship 263569,deer 263570,bird 263571,airplane 263572,bird 263573,bird 263574,bird 263575,frog 263576,dog 263577,truck 263578,airplane 263579,horse 263580,automobile 263581,cat 263582,dog 263583,dog 263584,deer 263585,dog 263586,dog 263587,ship 263588,cat 263589,horse 263590,dog 263591,deer 263592,cat 263593,deer 263594,frog 263595,horse 263596,horse 263597,bird 263598,deer 263599,bird 263600,cat 263601,ship 263602,cat 263603,bird 263604,horse 263605,frog 263606,cat 263607,dog 263608,deer 263609,airplane 263610,automobile 263611,bird 263612,horse 263613,ship 263614,truck 263615,dog 263616,cat 263617,deer 263618,airplane 263619,deer 263620,automobile 263621,automobile 263622,frog 263623,deer 263624,frog 263625,truck 263626,truck 263627,truck 263628,dog 263629,ship 263630,horse 263631,automobile 263632,cat 263633,cat 263634,bird 263635,frog 263636,cat 263637,cat 263638,truck 263639,airplane 263640,horse 263641,truck 263642,cat 263643,ship 263644,cat 263645,dog 263646,truck 263647,truck 263648,ship 263649,dog 263650,ship 263651,ship 263652,truck 263653,truck 263654,truck 263655,truck 263656,bird 263657,ship 263658,horse 263659,cat 263660,cat 263661,bird 263662,truck 263663,frog 263664,automobile 263665,cat 263666,bird 263667,frog 263668,airplane 263669,automobile 263670,truck 263671,dog 263672,cat 263673,cat 263674,cat 263675,dog 263676,cat 263677,horse 263678,truck 263679,airplane 263680,ship 263681,cat 263682,airplane 263683,automobile 263684,dog 263685,airplane 263686,airplane 263687,frog 263688,airplane 263689,dog 263690,dog 263691,airplane 263692,deer 263693,bird 263694,bird 263695,bird 263696,truck 263697,airplane 263698,truck 263699,ship 263700,dog 263701,automobile 263702,frog 263703,automobile 263704,dog 263705,cat 263706,dog 263707,deer 263708,frog 263709,deer 263710,automobile 263711,cat 263712,cat 263713,airplane 263714,airplane 263715,cat 263716,truck 263717,dog 263718,dog 263719,airplane 263720,truck 263721,frog 263722,bird 263723,deer 263724,horse 263725,horse 263726,deer 263727,frog 263728,truck 263729,deer 263730,frog 263731,frog 263732,airplane 263733,ship 263734,horse 263735,ship 263736,horse 263737,automobile 263738,automobile 263739,ship 263740,truck 263741,dog 263742,automobile 263743,horse 263744,frog 263745,dog 263746,horse 263747,frog 263748,ship 263749,ship 263750,dog 263751,bird 263752,horse 263753,horse 263754,truck 263755,horse 263756,cat 263757,dog 263758,cat 263759,ship 263760,dog 263761,deer 263762,ship 263763,cat 263764,deer 263765,horse 263766,ship 263767,dog 263768,airplane 263769,frog 263770,dog 263771,dog 263772,ship 263773,bird 263774,cat 263775,truck 263776,frog 263777,cat 263778,horse 263779,ship 263780,deer 263781,frog 263782,horse 263783,cat 263784,horse 263785,cat 263786,bird 263787,ship 263788,deer 263789,bird 263790,deer 263791,cat 263792,horse 263793,horse 263794,truck 263795,cat 263796,automobile 263797,airplane 263798,horse 263799,cat 263800,deer 263801,dog 263802,airplane 263803,cat 263804,dog 263805,ship 263806,horse 263807,horse 263808,horse 263809,cat 263810,horse 263811,dog 263812,horse 263813,cat 263814,deer 263815,frog 263816,airplane 263817,deer 263818,truck 263819,automobile 263820,bird 263821,deer 263822,deer 263823,cat 263824,horse 263825,ship 263826,truck 263827,dog 263828,deer 263829,frog 263830,cat 263831,bird 263832,truck 263833,airplane 263834,bird 263835,cat 263836,automobile 263837,frog 263838,bird 263839,automobile 263840,bird 263841,ship 263842,truck 263843,dog 263844,horse 263845,deer 263846,frog 263847,airplane 263848,airplane 263849,automobile 263850,horse 263851,truck 263852,deer 263853,frog 263854,horse 263855,bird 263856,deer 263857,bird 263858,airplane 263859,deer 263860,deer 263861,cat 263862,frog 263863,airplane 263864,deer 263865,dog 263866,truck 263867,horse 263868,cat 263869,ship 263870,deer 263871,truck 263872,dog 263873,truck 263874,deer 263875,dog 263876,dog 263877,horse 263878,dog 263879,deer 263880,cat 263881,airplane 263882,bird 263883,cat 263884,horse 263885,deer 263886,bird 263887,automobile 263888,bird 263889,bird 263890,bird 263891,deer 263892,deer 263893,horse 263894,bird 263895,cat 263896,frog 263897,frog 263898,ship 263899,cat 263900,frog 263901,airplane 263902,airplane 263903,deer 263904,cat 263905,frog 263906,dog 263907,airplane 263908,bird 263909,truck 263910,dog 263911,truck 263912,dog 263913,truck 263914,airplane 263915,frog 263916,airplane 263917,horse 263918,frog 263919,bird 263920,automobile 263921,dog 263922,frog 263923,airplane 263924,truck 263925,cat 263926,deer 263927,bird 263928,frog 263929,frog 263930,frog 263931,frog 263932,ship 263933,cat 263934,ship 263935,deer 263936,bird 263937,truck 263938,horse 263939,truck 263940,automobile 263941,horse 263942,truck 263943,deer 263944,truck 263945,truck 263946,cat 263947,airplane 263948,frog 263949,automobile 263950,deer 263951,bird 263952,ship 263953,horse 263954,horse 263955,ship 263956,deer 263957,ship 263958,ship 263959,horse 263960,dog 263961,frog 263962,automobile 263963,dog 263964,bird 263965,cat 263966,bird 263967,deer 263968,dog 263969,ship 263970,cat 263971,cat 263972,dog 263973,automobile 263974,truck 263975,truck 263976,frog 263977,cat 263978,deer 263979,bird 263980,cat 263981,airplane 263982,frog 263983,bird 263984,dog 263985,dog 263986,deer 263987,airplane 263988,cat 263989,frog 263990,truck 263991,bird 263992,frog 263993,truck 263994,cat 263995,deer 263996,truck 263997,cat 263998,automobile 263999,automobile 264000,deer 264001,horse 264002,truck 264003,dog 264004,cat 264005,horse 264006,ship 264007,cat 264008,dog 264009,truck 264010,cat 264011,cat 264012,bird 264013,frog 264014,frog 264015,dog 264016,deer 264017,deer 264018,airplane 264019,cat 264020,frog 264021,truck 264022,airplane 264023,ship 264024,truck 264025,truck 264026,horse 264027,deer 264028,frog 264029,horse 264030,cat 264031,frog 264032,truck 264033,bird 264034,cat 264035,airplane 264036,deer 264037,airplane 264038,deer 264039,automobile 264040,cat 264041,airplane 264042,truck 264043,dog 264044,cat 264045,dog 264046,horse 264047,deer 264048,automobile 264049,cat 264050,bird 264051,dog 264052,truck 264053,truck 264054,deer 264055,truck 264056,deer 264057,frog 264058,cat 264059,bird 264060,frog 264061,airplane 264062,horse 264063,cat 264064,automobile 264065,cat 264066,ship 264067,dog 264068,deer 264069,truck 264070,dog 264071,truck 264072,cat 264073,automobile 264074,bird 264075,bird 264076,cat 264077,airplane 264078,horse 264079,ship 264080,frog 264081,bird 264082,cat 264083,truck 264084,dog 264085,truck 264086,frog 264087,ship 264088,cat 264089,automobile 264090,deer 264091,dog 264092,ship 264093,dog 264094,frog 264095,frog 264096,automobile 264097,cat 264098,truck 264099,frog 264100,deer 264101,cat 264102,cat 264103,horse 264104,horse 264105,automobile 264106,dog 264107,airplane 264108,deer 264109,cat 264110,airplane 264111,airplane 264112,truck 264113,automobile 264114,horse 264115,airplane 264116,automobile 264117,dog 264118,bird 264119,dog 264120,deer 264121,ship 264122,deer 264123,deer 264124,bird 264125,ship 264126,cat 264127,deer 264128,horse 264129,frog 264130,ship 264131,truck 264132,deer 264133,ship 264134,airplane 264135,automobile 264136,cat 264137,deer 264138,deer 264139,deer 264140,dog 264141,truck 264142,deer 264143,horse 264144,ship 264145,airplane 264146,deer 264147,horse 264148,horse 264149,horse 264150,dog 264151,frog 264152,airplane 264153,dog 264154,frog 264155,ship 264156,automobile 264157,automobile 264158,horse 264159,automobile 264160,ship 264161,truck 264162,ship 264163,bird 264164,dog 264165,airplane 264166,dog 264167,ship 264168,horse 264169,bird 264170,dog 264171,airplane 264172,bird 264173,horse 264174,airplane 264175,horse 264176,bird 264177,truck 264178,horse 264179,horse 264180,dog 264181,automobile 264182,deer 264183,automobile 264184,bird 264185,deer 264186,automobile 264187,ship 264188,cat 264189,automobile 264190,frog 264191,horse 264192,airplane 264193,ship 264194,bird 264195,dog 264196,frog 264197,cat 264198,frog 264199,deer 264200,dog 264201,cat 264202,frog 264203,automobile 264204,automobile 264205,deer 264206,airplane 264207,airplane 264208,cat 264209,truck 264210,horse 264211,airplane 264212,dog 264213,horse 264214,airplane 264215,dog 264216,frog 264217,deer 264218,dog 264219,truck 264220,frog 264221,deer 264222,bird 264223,cat 264224,frog 264225,frog 264226,automobile 264227,airplane 264228,truck 264229,deer 264230,truck 264231,frog 264232,dog 264233,truck 264234,bird 264235,cat 264236,cat 264237,truck 264238,deer 264239,airplane 264240,deer 264241,airplane 264242,deer 264243,cat 264244,cat 264245,frog 264246,truck 264247,cat 264248,airplane 264249,horse 264250,airplane 264251,cat 264252,bird 264253,deer 264254,dog 264255,dog 264256,truck 264257,dog 264258,horse 264259,ship 264260,automobile 264261,ship 264262,truck 264263,truck 264264,truck 264265,ship 264266,airplane 264267,deer 264268,frog 264269,deer 264270,dog 264271,truck 264272,automobile 264273,frog 264274,airplane 264275,ship 264276,dog 264277,airplane 264278,cat 264279,deer 264280,horse 264281,horse 264282,cat 264283,cat 264284,horse 264285,truck 264286,cat 264287,bird 264288,automobile 264289,bird 264290,deer 264291,deer 264292,deer 264293,automobile 264294,horse 264295,horse 264296,horse 264297,automobile 264298,bird 264299,dog 264300,truck 264301,automobile 264302,ship 264303,automobile 264304,bird 264305,airplane 264306,bird 264307,truck 264308,bird 264309,cat 264310,automobile 264311,horse 264312,automobile 264313,dog 264314,automobile 264315,ship 264316,airplane 264317,bird 264318,cat 264319,bird 264320,frog 264321,dog 264322,ship 264323,deer 264324,automobile 264325,airplane 264326,bird 264327,automobile 264328,automobile 264329,frog 264330,frog 264331,deer 264332,dog 264333,horse 264334,cat 264335,horse 264336,deer 264337,deer 264338,deer 264339,deer 264340,airplane 264341,ship 264342,airplane 264343,cat 264344,cat 264345,truck 264346,frog 264347,deer 264348,frog 264349,frog 264350,frog 264351,dog 264352,ship 264353,ship 264354,truck 264355,cat 264356,horse 264357,frog 264358,dog 264359,automobile 264360,horse 264361,deer 264362,deer 264363,deer 264364,deer 264365,deer 264366,frog 264367,cat 264368,truck 264369,truck 264370,truck 264371,bird 264372,deer 264373,deer 264374,dog 264375,ship 264376,deer 264377,cat 264378,cat 264379,cat 264380,frog 264381,horse 264382,horse 264383,deer 264384,truck 264385,truck 264386,automobile 264387,truck 264388,airplane 264389,deer 264390,truck 264391,automobile 264392,ship 264393,ship 264394,truck 264395,dog 264396,cat 264397,ship 264398,airplane 264399,frog 264400,ship 264401,airplane 264402,cat 264403,truck 264404,horse 264405,deer 264406,truck 264407,bird 264408,cat 264409,ship 264410,automobile 264411,cat 264412,frog 264413,frog 264414,ship 264415,airplane 264416,bird 264417,frog 264418,deer 264419,bird 264420,truck 264421,frog 264422,cat 264423,cat 264424,ship 264425,deer 264426,deer 264427,deer 264428,airplane 264429,truck 264430,horse 264431,ship 264432,deer 264433,ship 264434,deer 264435,truck 264436,airplane 264437,truck 264438,deer 264439,cat 264440,dog 264441,frog 264442,automobile 264443,airplane 264444,cat 264445,deer 264446,frog 264447,automobile 264448,dog 264449,dog 264450,deer 264451,truck 264452,cat 264453,horse 264454,airplane 264455,airplane 264456,truck 264457,horse 264458,frog 264459,bird 264460,dog 264461,dog 264462,cat 264463,horse 264464,cat 264465,dog 264466,horse 264467,truck 264468,dog 264469,bird 264470,automobile 264471,ship 264472,bird 264473,ship 264474,cat 264475,automobile 264476,frog 264477,horse 264478,cat 264479,deer 264480,dog 264481,automobile 264482,bird 264483,truck 264484,horse 264485,automobile 264486,automobile 264487,ship 264488,deer 264489,frog 264490,truck 264491,ship 264492,truck 264493,cat 264494,deer 264495,truck 264496,airplane 264497,automobile 264498,deer 264499,bird 264500,cat 264501,dog 264502,airplane 264503,airplane 264504,cat 264505,ship 264506,automobile 264507,frog 264508,dog 264509,truck 264510,horse 264511,frog 264512,ship 264513,horse 264514,dog 264515,automobile 264516,airplane 264517,frog 264518,cat 264519,cat 264520,bird 264521,airplane 264522,horse 264523,dog 264524,automobile 264525,deer 264526,deer 264527,airplane 264528,horse 264529,frog 264530,truck 264531,dog 264532,frog 264533,bird 264534,horse 264535,ship 264536,automobile 264537,truck 264538,horse 264539,bird 264540,dog 264541,ship 264542,automobile 264543,dog 264544,ship 264545,airplane 264546,automobile 264547,cat 264548,deer 264549,horse 264550,ship 264551,horse 264552,cat 264553,airplane 264554,deer 264555,airplane 264556,dog 264557,cat 264558,bird 264559,cat 264560,dog 264561,dog 264562,ship 264563,frog 264564,airplane 264565,bird 264566,frog 264567,dog 264568,airplane 264569,deer 264570,cat 264571,automobile 264572,frog 264573,horse 264574,dog 264575,automobile 264576,truck 264577,frog 264578,truck 264579,dog 264580,frog 264581,dog 264582,frog 264583,horse 264584,dog 264585,deer 264586,automobile 264587,dog 264588,airplane 264589,dog 264590,airplane 264591,automobile 264592,bird 264593,truck 264594,cat 264595,automobile 264596,ship 264597,airplane 264598,horse 264599,bird 264600,deer 264601,airplane 264602,truck 264603,cat 264604,dog 264605,deer 264606,frog 264607,frog 264608,bird 264609,automobile 264610,truck 264611,bird 264612,frog 264613,automobile 264614,airplane 264615,ship 264616,horse 264617,automobile 264618,deer 264619,horse 264620,cat 264621,bird 264622,airplane 264623,ship 264624,automobile 264625,cat 264626,deer 264627,horse 264628,deer 264629,deer 264630,truck 264631,dog 264632,horse 264633,dog 264634,automobile 264635,bird 264636,airplane 264637,truck 264638,automobile 264639,truck 264640,truck 264641,cat 264642,truck 264643,ship 264644,dog 264645,horse 264646,automobile 264647,cat 264648,cat 264649,frog 264650,cat 264651,horse 264652,frog 264653,bird 264654,cat 264655,frog 264656,truck 264657,deer 264658,airplane 264659,automobile 264660,dog 264661,frog 264662,truck 264663,ship 264664,cat 264665,frog 264666,ship 264667,deer 264668,dog 264669,bird 264670,airplane 264671,deer 264672,deer 264673,dog 264674,bird 264675,deer 264676,truck 264677,truck 264678,ship 264679,dog 264680,ship 264681,frog 264682,horse 264683,dog 264684,dog 264685,ship 264686,dog 264687,deer 264688,cat 264689,dog 264690,frog 264691,deer 264692,frog 264693,deer 264694,truck 264695,horse 264696,horse 264697,truck 264698,bird 264699,dog 264700,cat 264701,bird 264702,cat 264703,deer 264704,automobile 264705,airplane 264706,airplane 264707,automobile 264708,frog 264709,horse 264710,automobile 264711,deer 264712,frog 264713,dog 264714,horse 264715,dog 264716,bird 264717,automobile 264718,frog 264719,deer 264720,cat 264721,airplane 264722,bird 264723,automobile 264724,cat 264725,ship 264726,cat 264727,cat 264728,deer 264729,frog 264730,airplane 264731,bird 264732,airplane 264733,cat 264734,truck 264735,dog 264736,dog 264737,ship 264738,airplane 264739,horse 264740,deer 264741,cat 264742,dog 264743,horse 264744,automobile 264745,bird 264746,horse 264747,deer 264748,cat 264749,airplane 264750,dog 264751,ship 264752,frog 264753,ship 264754,automobile 264755,automobile 264756,cat 264757,automobile 264758,cat 264759,ship 264760,bird 264761,deer 264762,deer 264763,frog 264764,deer 264765,frog 264766,cat 264767,airplane 264768,cat 264769,dog 264770,truck 264771,cat 264772,horse 264773,frog 264774,automobile 264775,truck 264776,dog 264777,deer 264778,bird 264779,truck 264780,truck 264781,frog 264782,airplane 264783,deer 264784,bird 264785,ship 264786,truck 264787,horse 264788,frog 264789,deer 264790,frog 264791,bird 264792,horse 264793,airplane 264794,ship 264795,cat 264796,dog 264797,bird 264798,automobile 264799,cat 264800,cat 264801,airplane 264802,cat 264803,deer 264804,dog 264805,airplane 264806,truck 264807,ship 264808,automobile 264809,dog 264810,ship 264811,automobile 264812,frog 264813,ship 264814,automobile 264815,cat 264816,automobile 264817,cat 264818,cat 264819,bird 264820,deer 264821,deer 264822,cat 264823,deer 264824,truck 264825,ship 264826,cat 264827,dog 264828,frog 264829,automobile 264830,bird 264831,automobile 264832,dog 264833,bird 264834,horse 264835,bird 264836,dog 264837,cat 264838,horse 264839,cat 264840,airplane 264841,dog 264842,deer 264843,truck 264844,cat 264845,ship 264846,horse 264847,bird 264848,cat 264849,dog 264850,automobile 264851,truck 264852,cat 264853,airplane 264854,airplane 264855,automobile 264856,cat 264857,frog 264858,deer 264859,dog 264860,cat 264861,horse 264862,truck 264863,truck 264864,bird 264865,ship 264866,bird 264867,truck 264868,airplane 264869,cat 264870,airplane 264871,ship 264872,dog 264873,cat 264874,dog 264875,frog 264876,frog 264877,truck 264878,bird 264879,ship 264880,deer 264881,airplane 264882,automobile 264883,deer 264884,cat 264885,deer 264886,airplane 264887,cat 264888,dog 264889,cat 264890,deer 264891,frog 264892,dog 264893,frog 264894,dog 264895,ship 264896,cat 264897,bird 264898,horse 264899,airplane 264900,bird 264901,dog 264902,ship 264903,truck 264904,bird 264905,cat 264906,airplane 264907,deer 264908,dog 264909,horse 264910,deer 264911,cat 264912,airplane 264913,frog 264914,horse 264915,cat 264916,truck 264917,truck 264918,bird 264919,horse 264920,cat 264921,cat 264922,frog 264923,frog 264924,deer 264925,cat 264926,cat 264927,ship 264928,airplane 264929,dog 264930,automobile 264931,dog 264932,truck 264933,frog 264934,horse 264935,deer 264936,cat 264937,deer 264938,ship 264939,automobile 264940,truck 264941,frog 264942,horse 264943,frog 264944,cat 264945,deer 264946,airplane 264947,ship 264948,frog 264949,ship 264950,cat 264951,airplane 264952,ship 264953,horse 264954,cat 264955,airplane 264956,airplane 264957,automobile 264958,automobile 264959,bird 264960,horse 264961,horse 264962,ship 264963,frog 264964,horse 264965,airplane 264966,frog 264967,cat 264968,cat 264969,horse 264970,horse 264971,horse 264972,dog 264973,bird 264974,dog 264975,horse 264976,bird 264977,horse 264978,horse 264979,bird 264980,frog 264981,airplane 264982,horse 264983,deer 264984,bird 264985,cat 264986,airplane 264987,horse 264988,horse 264989,dog 264990,truck 264991,airplane 264992,automobile 264993,cat 264994,ship 264995,automobile 264996,horse 264997,frog 264998,dog 264999,cat 265000,deer 265001,ship 265002,dog 265003,truck 265004,cat 265005,frog 265006,horse 265007,cat 265008,frog 265009,airplane 265010,dog 265011,ship 265012,truck 265013,horse 265014,frog 265015,bird 265016,bird 265017,truck 265018,airplane 265019,truck 265020,bird 265021,bird 265022,bird 265023,dog 265024,dog 265025,cat 265026,airplane 265027,frog 265028,dog 265029,frog 265030,bird 265031,frog 265032,truck 265033,bird 265034,frog 265035,ship 265036,ship 265037,frog 265038,ship 265039,airplane 265040,automobile 265041,automobile 265042,horse 265043,ship 265044,truck 265045,truck 265046,horse 265047,airplane 265048,airplane 265049,ship 265050,automobile 265051,cat 265052,horse 265053,automobile 265054,ship 265055,ship 265056,deer 265057,cat 265058,airplane 265059,cat 265060,airplane 265061,frog 265062,airplane 265063,dog 265064,deer 265065,truck 265066,frog 265067,bird 265068,cat 265069,ship 265070,dog 265071,ship 265072,deer 265073,horse 265074,frog 265075,cat 265076,airplane 265077,airplane 265078,dog 265079,horse 265080,truck 265081,bird 265082,dog 265083,horse 265084,deer 265085,frog 265086,bird 265087,ship 265088,automobile 265089,dog 265090,horse 265091,cat 265092,truck 265093,bird 265094,horse 265095,dog 265096,horse 265097,frog 265098,bird 265099,ship 265100,automobile 265101,cat 265102,bird 265103,cat 265104,truck 265105,frog 265106,deer 265107,deer 265108,deer 265109,horse 265110,ship 265111,frog 265112,truck 265113,frog 265114,cat 265115,dog 265116,deer 265117,automobile 265118,truck 265119,automobile 265120,automobile 265121,automobile 265122,cat 265123,cat 265124,horse 265125,frog 265126,cat 265127,frog 265128,frog 265129,dog 265130,deer 265131,airplane 265132,frog 265133,horse 265134,horse 265135,ship 265136,cat 265137,frog 265138,airplane 265139,dog 265140,ship 265141,automobile 265142,horse 265143,horse 265144,horse 265145,deer 265146,bird 265147,dog 265148,truck 265149,dog 265150,automobile 265151,deer 265152,dog 265153,deer 265154,bird 265155,airplane 265156,ship 265157,truck 265158,truck 265159,cat 265160,frog 265161,dog 265162,dog 265163,bird 265164,frog 265165,automobile 265166,ship 265167,cat 265168,bird 265169,horse 265170,horse 265171,airplane 265172,truck 265173,frog 265174,automobile 265175,frog 265176,deer 265177,airplane 265178,dog 265179,deer 265180,bird 265181,deer 265182,deer 265183,horse 265184,cat 265185,cat 265186,cat 265187,airplane 265188,automobile 265189,cat 265190,frog 265191,frog 265192,truck 265193,ship 265194,cat 265195,ship 265196,frog 265197,frog 265198,ship 265199,bird 265200,airplane 265201,frog 265202,frog 265203,frog 265204,frog 265205,airplane 265206,truck 265207,cat 265208,horse 265209,truck 265210,truck 265211,deer 265212,deer 265213,deer 265214,deer 265215,ship 265216,horse 265217,deer 265218,frog 265219,cat 265220,horse 265221,cat 265222,dog 265223,truck 265224,cat 265225,cat 265226,cat 265227,frog 265228,airplane 265229,frog 265230,dog 265231,cat 265232,cat 265233,automobile 265234,deer 265235,cat 265236,airplane 265237,deer 265238,automobile 265239,horse 265240,dog 265241,truck 265242,truck 265243,bird 265244,airplane 265245,truck 265246,dog 265247,cat 265248,dog 265249,automobile 265250,ship 265251,truck 265252,dog 265253,horse 265254,airplane 265255,truck 265256,cat 265257,dog 265258,automobile 265259,truck 265260,frog 265261,deer 265262,horse 265263,dog 265264,cat 265265,airplane 265266,airplane 265267,truck 265268,frog 265269,automobile 265270,dog 265271,bird 265272,truck 265273,dog 265274,deer 265275,deer 265276,airplane 265277,dog 265278,airplane 265279,airplane 265280,truck 265281,airplane 265282,deer 265283,horse 265284,frog 265285,bird 265286,automobile 265287,automobile 265288,deer 265289,deer 265290,deer 265291,dog 265292,airplane 265293,bird 265294,bird 265295,truck 265296,dog 265297,deer 265298,horse 265299,deer 265300,cat 265301,airplane 265302,horse 265303,automobile 265304,horse 265305,bird 265306,ship 265307,airplane 265308,airplane 265309,deer 265310,horse 265311,truck 265312,deer 265313,deer 265314,horse 265315,dog 265316,deer 265317,deer 265318,frog 265319,bird 265320,horse 265321,deer 265322,truck 265323,deer 265324,airplane 265325,deer 265326,bird 265327,frog 265328,truck 265329,dog 265330,ship 265331,frog 265332,truck 265333,deer 265334,frog 265335,deer 265336,ship 265337,cat 265338,dog 265339,horse 265340,horse 265341,ship 265342,deer 265343,frog 265344,horse 265345,bird 265346,airplane 265347,airplane 265348,airplane 265349,frog 265350,airplane 265351,truck 265352,frog 265353,frog 265354,frog 265355,frog 265356,frog 265357,ship 265358,cat 265359,deer 265360,truck 265361,horse 265362,deer 265363,frog 265364,frog 265365,horse 265366,truck 265367,frog 265368,bird 265369,frog 265370,frog 265371,frog 265372,airplane 265373,automobile 265374,truck 265375,ship 265376,deer 265377,airplane 265378,cat 265379,airplane 265380,bird 265381,cat 265382,cat 265383,bird 265384,automobile 265385,cat 265386,frog 265387,bird 265388,dog 265389,automobile 265390,deer 265391,dog 265392,dog 265393,bird 265394,deer 265395,truck 265396,bird 265397,cat 265398,truck 265399,dog 265400,frog 265401,airplane 265402,truck 265403,airplane 265404,frog 265405,horse 265406,bird 265407,automobile 265408,automobile 265409,horse 265410,horse 265411,deer 265412,ship 265413,ship 265414,frog 265415,ship 265416,airplane 265417,cat 265418,automobile 265419,dog 265420,horse 265421,truck 265422,cat 265423,frog 265424,deer 265425,dog 265426,bird 265427,truck 265428,airplane 265429,airplane 265430,truck 265431,frog 265432,deer 265433,automobile 265434,cat 265435,automobile 265436,bird 265437,horse 265438,deer 265439,cat 265440,ship 265441,dog 265442,horse 265443,ship 265444,horse 265445,automobile 265446,bird 265447,frog 265448,cat 265449,ship 265450,bird 265451,deer 265452,deer 265453,bird 265454,cat 265455,truck 265456,bird 265457,cat 265458,automobile 265459,frog 265460,truck 265461,bird 265462,dog 265463,airplane 265464,airplane 265465,dog 265466,dog 265467,ship 265468,airplane 265469,cat 265470,horse 265471,horse 265472,automobile 265473,ship 265474,dog 265475,airplane 265476,bird 265477,horse 265478,truck 265479,dog 265480,ship 265481,deer 265482,bird 265483,bird 265484,cat 265485,deer 265486,frog 265487,deer 265488,airplane 265489,bird 265490,deer 265491,horse 265492,truck 265493,horse 265494,truck 265495,bird 265496,ship 265497,deer 265498,bird 265499,bird 265500,frog 265501,truck 265502,deer 265503,automobile 265504,bird 265505,deer 265506,deer 265507,truck 265508,truck 265509,automobile 265510,dog 265511,deer 265512,dog 265513,cat 265514,ship 265515,ship 265516,frog 265517,deer 265518,airplane 265519,ship 265520,cat 265521,deer 265522,deer 265523,frog 265524,airplane 265525,airplane 265526,frog 265527,frog 265528,ship 265529,bird 265530,deer 265531,horse 265532,cat 265533,frog 265534,deer 265535,deer 265536,deer 265537,frog 265538,frog 265539,airplane 265540,cat 265541,frog 265542,ship 265543,dog 265544,truck 265545,dog 265546,bird 265547,airplane 265548,dog 265549,deer 265550,cat 265551,automobile 265552,airplane 265553,cat 265554,bird 265555,horse 265556,frog 265557,horse 265558,truck 265559,airplane 265560,frog 265561,ship 265562,frog 265563,truck 265564,dog 265565,airplane 265566,deer 265567,cat 265568,airplane 265569,cat 265570,cat 265571,horse 265572,frog 265573,automobile 265574,automobile 265575,frog 265576,bird 265577,frog 265578,truck 265579,frog 265580,ship 265581,cat 265582,ship 265583,horse 265584,ship 265585,cat 265586,ship 265587,horse 265588,ship 265589,truck 265590,horse 265591,frog 265592,deer 265593,deer 265594,frog 265595,bird 265596,airplane 265597,cat 265598,ship 265599,bird 265600,truck 265601,truck 265602,frog 265603,dog 265604,ship 265605,bird 265606,cat 265607,frog 265608,airplane 265609,deer 265610,airplane 265611,horse 265612,frog 265613,horse 265614,frog 265615,deer 265616,airplane 265617,bird 265618,automobile 265619,bird 265620,airplane 265621,truck 265622,automobile 265623,truck 265624,automobile 265625,bird 265626,deer 265627,horse 265628,dog 265629,truck 265630,deer 265631,deer 265632,dog 265633,automobile 265634,frog 265635,cat 265636,ship 265637,truck 265638,airplane 265639,horse 265640,frog 265641,automobile 265642,airplane 265643,frog 265644,frog 265645,truck 265646,cat 265647,cat 265648,truck 265649,dog 265650,airplane 265651,deer 265652,airplane 265653,horse 265654,cat 265655,dog 265656,deer 265657,horse 265658,airplane 265659,dog 265660,ship 265661,cat 265662,deer 265663,ship 265664,deer 265665,deer 265666,horse 265667,truck 265668,automobile 265669,horse 265670,airplane 265671,horse 265672,horse 265673,airplane 265674,truck 265675,truck 265676,ship 265677,dog 265678,ship 265679,deer 265680,horse 265681,frog 265682,deer 265683,deer 265684,deer 265685,dog 265686,cat 265687,truck 265688,truck 265689,deer 265690,deer 265691,horse 265692,automobile 265693,cat 265694,cat 265695,truck 265696,frog 265697,frog 265698,horse 265699,deer 265700,frog 265701,dog 265702,frog 265703,deer 265704,dog 265705,deer 265706,airplane 265707,automobile 265708,airplane 265709,deer 265710,truck 265711,cat 265712,frog 265713,frog 265714,cat 265715,frog 265716,bird 265717,horse 265718,airplane 265719,frog 265720,ship 265721,frog 265722,bird 265723,cat 265724,horse 265725,ship 265726,cat 265727,frog 265728,horse 265729,frog 265730,ship 265731,cat 265732,airplane 265733,automobile 265734,dog 265735,automobile 265736,frog 265737,ship 265738,automobile 265739,deer 265740,cat 265741,airplane 265742,airplane 265743,ship 265744,frog 265745,truck 265746,truck 265747,horse 265748,dog 265749,ship 265750,deer 265751,dog 265752,horse 265753,automobile 265754,deer 265755,dog 265756,cat 265757,automobile 265758,cat 265759,automobile 265760,cat 265761,frog 265762,truck 265763,cat 265764,automobile 265765,airplane 265766,dog 265767,dog 265768,cat 265769,horse 265770,cat 265771,deer 265772,horse 265773,cat 265774,automobile 265775,dog 265776,cat 265777,truck 265778,truck 265779,deer 265780,deer 265781,bird 265782,frog 265783,dog 265784,bird 265785,cat 265786,airplane 265787,dog 265788,cat 265789,bird 265790,cat 265791,airplane 265792,cat 265793,dog 265794,dog 265795,deer 265796,horse 265797,frog 265798,truck 265799,cat 265800,ship 265801,bird 265802,truck 265803,dog 265804,cat 265805,ship 265806,airplane 265807,horse 265808,horse 265809,dog 265810,ship 265811,horse 265812,horse 265813,dog 265814,automobile 265815,deer 265816,deer 265817,ship 265818,truck 265819,deer 265820,cat 265821,ship 265822,dog 265823,horse 265824,deer 265825,truck 265826,truck 265827,horse 265828,horse 265829,truck 265830,airplane 265831,dog 265832,frog 265833,horse 265834,dog 265835,horse 265836,automobile 265837,deer 265838,bird 265839,automobile 265840,frog 265841,automobile 265842,frog 265843,bird 265844,ship 265845,frog 265846,automobile 265847,horse 265848,truck 265849,truck 265850,cat 265851,airplane 265852,horse 265853,horse 265854,dog 265855,cat 265856,truck 265857,bird 265858,airplane 265859,truck 265860,frog 265861,truck 265862,dog 265863,frog 265864,automobile 265865,ship 265866,ship 265867,dog 265868,dog 265869,automobile 265870,airplane 265871,truck 265872,deer 265873,bird 265874,frog 265875,truck 265876,horse 265877,dog 265878,cat 265879,airplane 265880,bird 265881,deer 265882,truck 265883,cat 265884,dog 265885,deer 265886,ship 265887,deer 265888,frog 265889,truck 265890,truck 265891,bird 265892,deer 265893,ship 265894,truck 265895,frog 265896,deer 265897,frog 265898,bird 265899,deer 265900,cat 265901,airplane 265902,truck 265903,dog 265904,truck 265905,airplane 265906,deer 265907,dog 265908,dog 265909,cat 265910,cat 265911,truck 265912,frog 265913,ship 265914,airplane 265915,truck 265916,dog 265917,airplane 265918,deer 265919,dog 265920,dog 265921,automobile 265922,ship 265923,bird 265924,deer 265925,dog 265926,airplane 265927,cat 265928,frog 265929,deer 265930,frog 265931,horse 265932,horse 265933,ship 265934,ship 265935,frog 265936,horse 265937,automobile 265938,horse 265939,frog 265940,cat 265941,airplane 265942,truck 265943,cat 265944,bird 265945,cat 265946,truck 265947,dog 265948,airplane 265949,truck 265950,ship 265951,ship 265952,horse 265953,ship 265954,frog 265955,dog 265956,bird 265957,automobile 265958,ship 265959,frog 265960,deer 265961,airplane 265962,dog 265963,dog 265964,deer 265965,deer 265966,frog 265967,ship 265968,horse 265969,ship 265970,horse 265971,frog 265972,deer 265973,airplane 265974,frog 265975,truck 265976,cat 265977,bird 265978,truck 265979,automobile 265980,bird 265981,dog 265982,truck 265983,bird 265984,frog 265985,bird 265986,automobile 265987,airplane 265988,truck 265989,dog 265990,frog 265991,frog 265992,cat 265993,deer 265994,deer 265995,truck 265996,dog 265997,deer 265998,cat 265999,horse 266000,dog 266001,dog 266002,ship 266003,deer 266004,truck 266005,frog 266006,frog 266007,dog 266008,dog 266009,horse 266010,horse 266011,deer 266012,deer 266013,deer 266014,dog 266015,frog 266016,frog 266017,automobile 266018,dog 266019,deer 266020,automobile 266021,automobile 266022,horse 266023,automobile 266024,airplane 266025,truck 266026,deer 266027,deer 266028,cat 266029,automobile 266030,cat 266031,automobile 266032,automobile 266033,cat 266034,cat 266035,cat 266036,truck 266037,automobile 266038,truck 266039,cat 266040,bird 266041,frog 266042,airplane 266043,horse 266044,horse 266045,bird 266046,ship 266047,deer 266048,deer 266049,ship 266050,cat 266051,cat 266052,automobile 266053,dog 266054,horse 266055,bird 266056,ship 266057,bird 266058,airplane 266059,frog 266060,truck 266061,truck 266062,dog 266063,ship 266064,dog 266065,automobile 266066,cat 266067,horse 266068,truck 266069,horse 266070,automobile 266071,truck 266072,deer 266073,truck 266074,truck 266075,bird 266076,horse 266077,ship 266078,deer 266079,frog 266080,deer 266081,truck 266082,ship 266083,frog 266084,airplane 266085,horse 266086,cat 266087,horse 266088,frog 266089,truck 266090,airplane 266091,ship 266092,bird 266093,truck 266094,bird 266095,truck 266096,bird 266097,bird 266098,cat 266099,airplane 266100,frog 266101,dog 266102,dog 266103,dog 266104,horse 266105,cat 266106,cat 266107,cat 266108,cat 266109,cat 266110,airplane 266111,dog 266112,airplane 266113,automobile 266114,deer 266115,horse 266116,ship 266117,truck 266118,frog 266119,dog 266120,truck 266121,deer 266122,airplane 266123,deer 266124,bird 266125,ship 266126,truck 266127,horse 266128,bird 266129,cat 266130,truck 266131,frog 266132,frog 266133,frog 266134,truck 266135,cat 266136,horse 266137,automobile 266138,airplane 266139,truck 266140,cat 266141,cat 266142,cat 266143,cat 266144,cat 266145,truck 266146,truck 266147,truck 266148,automobile 266149,bird 266150,airplane 266151,deer 266152,cat 266153,deer 266154,ship 266155,frog 266156,horse 266157,truck 266158,deer 266159,deer 266160,cat 266161,truck 266162,frog 266163,deer 266164,dog 266165,ship 266166,automobile 266167,truck 266168,ship 266169,automobile 266170,frog 266171,deer 266172,bird 266173,cat 266174,truck 266175,dog 266176,frog 266177,dog 266178,horse 266179,dog 266180,horse 266181,cat 266182,ship 266183,ship 266184,horse 266185,cat 266186,frog 266187,cat 266188,cat 266189,frog 266190,cat 266191,cat 266192,horse 266193,cat 266194,airplane 266195,airplane 266196,bird 266197,horse 266198,dog 266199,truck 266200,automobile 266201,cat 266202,dog 266203,truck 266204,dog 266205,truck 266206,airplane 266207,dog 266208,cat 266209,automobile 266210,dog 266211,deer 266212,frog 266213,cat 266214,airplane 266215,truck 266216,bird 266217,truck 266218,horse 266219,dog 266220,dog 266221,frog 266222,horse 266223,deer 266224,cat 266225,automobile 266226,truck 266227,automobile 266228,bird 266229,airplane 266230,cat 266231,deer 266232,truck 266233,deer 266234,truck 266235,frog 266236,deer 266237,automobile 266238,ship 266239,cat 266240,frog 266241,cat 266242,bird 266243,frog 266244,cat 266245,ship 266246,bird 266247,frog 266248,dog 266249,dog 266250,cat 266251,truck 266252,airplane 266253,dog 266254,cat 266255,truck 266256,bird 266257,airplane 266258,frog 266259,horse 266260,truck 266261,airplane 266262,dog 266263,dog 266264,cat 266265,ship 266266,horse 266267,automobile 266268,deer 266269,automobile 266270,truck 266271,truck 266272,frog 266273,airplane 266274,ship 266275,deer 266276,ship 266277,truck 266278,cat 266279,cat 266280,frog 266281,bird 266282,airplane 266283,deer 266284,bird 266285,ship 266286,cat 266287,ship 266288,cat 266289,bird 266290,bird 266291,deer 266292,frog 266293,bird 266294,frog 266295,cat 266296,automobile 266297,ship 266298,cat 266299,cat 266300,ship 266301,airplane 266302,airplane 266303,airplane 266304,cat 266305,automobile 266306,automobile 266307,horse 266308,deer 266309,truck 266310,cat 266311,cat 266312,horse 266313,frog 266314,deer 266315,frog 266316,cat 266317,deer 266318,horse 266319,horse 266320,truck 266321,ship 266322,cat 266323,frog 266324,ship 266325,cat 266326,airplane 266327,cat 266328,ship 266329,dog 266330,truck 266331,dog 266332,frog 266333,deer 266334,ship 266335,deer 266336,deer 266337,deer 266338,bird 266339,dog 266340,automobile 266341,automobile 266342,dog 266343,frog 266344,automobile 266345,frog 266346,frog 266347,deer 266348,frog 266349,truck 266350,deer 266351,cat 266352,frog 266353,bird 266354,deer 266355,cat 266356,frog 266357,ship 266358,horse 266359,deer 266360,dog 266361,cat 266362,deer 266363,cat 266364,deer 266365,cat 266366,horse 266367,airplane 266368,deer 266369,truck 266370,truck 266371,cat 266372,cat 266373,bird 266374,bird 266375,cat 266376,dog 266377,truck 266378,cat 266379,deer 266380,cat 266381,dog 266382,truck 266383,truck 266384,airplane 266385,frog 266386,frog 266387,truck 266388,automobile 266389,automobile 266390,ship 266391,bird 266392,bird 266393,cat 266394,cat 266395,cat 266396,dog 266397,airplane 266398,truck 266399,bird 266400,truck 266401,dog 266402,frog 266403,cat 266404,ship 266405,truck 266406,airplane 266407,horse 266408,airplane 266409,frog 266410,dog 266411,dog 266412,frog 266413,truck 266414,deer 266415,cat 266416,airplane 266417,deer 266418,bird 266419,cat 266420,horse 266421,bird 266422,cat 266423,horse 266424,bird 266425,cat 266426,dog 266427,ship 266428,ship 266429,horse 266430,deer 266431,dog 266432,deer 266433,truck 266434,automobile 266435,truck 266436,cat 266437,dog 266438,bird 266439,dog 266440,cat 266441,airplane 266442,deer 266443,deer 266444,dog 266445,truck 266446,cat 266447,deer 266448,automobile 266449,deer 266450,cat 266451,deer 266452,deer 266453,cat 266454,cat 266455,airplane 266456,deer 266457,horse 266458,cat 266459,frog 266460,frog 266461,dog 266462,bird 266463,frog 266464,horse 266465,dog 266466,dog 266467,frog 266468,deer 266469,cat 266470,cat 266471,truck 266472,airplane 266473,truck 266474,dog 266475,cat 266476,airplane 266477,dog 266478,horse 266479,automobile 266480,cat 266481,cat 266482,deer 266483,bird 266484,horse 266485,cat 266486,bird 266487,horse 266488,truck 266489,frog 266490,frog 266491,deer 266492,ship 266493,deer 266494,dog 266495,truck 266496,horse 266497,dog 266498,frog 266499,airplane 266500,bird 266501,cat 266502,truck 266503,airplane 266504,deer 266505,truck 266506,dog 266507,airplane 266508,cat 266509,cat 266510,cat 266511,horse 266512,deer 266513,dog 266514,airplane 266515,horse 266516,cat 266517,frog 266518,dog 266519,cat 266520,dog 266521,bird 266522,dog 266523,deer 266524,airplane 266525,deer 266526,ship 266527,ship 266528,automobile 266529,truck 266530,automobile 266531,bird 266532,automobile 266533,bird 266534,deer 266535,dog 266536,airplane 266537,truck 266538,cat 266539,frog 266540,deer 266541,cat 266542,truck 266543,horse 266544,automobile 266545,ship 266546,truck 266547,horse 266548,dog 266549,airplane 266550,frog 266551,dog 266552,deer 266553,truck 266554,horse 266555,cat 266556,horse 266557,bird 266558,horse 266559,horse 266560,deer 266561,automobile 266562,horse 266563,cat 266564,dog 266565,deer 266566,cat 266567,dog 266568,bird 266569,cat 266570,cat 266571,dog 266572,dog 266573,ship 266574,ship 266575,horse 266576,ship 266577,frog 266578,deer 266579,ship 266580,ship 266581,dog 266582,cat 266583,deer 266584,airplane 266585,horse 266586,cat 266587,frog 266588,cat 266589,ship 266590,frog 266591,deer 266592,ship 266593,cat 266594,truck 266595,deer 266596,frog 266597,truck 266598,ship 266599,deer 266600,deer 266601,cat 266602,ship 266603,bird 266604,frog 266605,cat 266606,bird 266607,frog 266608,truck 266609,dog 266610,horse 266611,cat 266612,frog 266613,bird 266614,cat 266615,truck 266616,truck 266617,deer 266618,cat 266619,frog 266620,truck 266621,deer 266622,cat 266623,frog 266624,airplane 266625,cat 266626,ship 266627,ship 266628,deer 266629,horse 266630,ship 266631,cat 266632,deer 266633,deer 266634,deer 266635,ship 266636,horse 266637,deer 266638,horse 266639,horse 266640,truck 266641,cat 266642,automobile 266643,horse 266644,horse 266645,cat 266646,dog 266647,truck 266648,horse 266649,frog 266650,truck 266651,frog 266652,cat 266653,airplane 266654,horse 266655,horse 266656,bird 266657,airplane 266658,dog 266659,ship 266660,cat 266661,dog 266662,horse 266663,frog 266664,deer 266665,dog 266666,dog 266667,deer 266668,automobile 266669,dog 266670,bird 266671,horse 266672,bird 266673,airplane 266674,deer 266675,airplane 266676,cat 266677,deer 266678,automobile 266679,horse 266680,ship 266681,cat 266682,horse 266683,frog 266684,dog 266685,ship 266686,dog 266687,truck 266688,horse 266689,horse 266690,airplane 266691,deer 266692,bird 266693,deer 266694,bird 266695,cat 266696,deer 266697,deer 266698,horse 266699,bird 266700,truck 266701,ship 266702,frog 266703,cat 266704,bird 266705,dog 266706,dog 266707,cat 266708,cat 266709,bird 266710,cat 266711,deer 266712,automobile 266713,airplane 266714,cat 266715,frog 266716,frog 266717,airplane 266718,automobile 266719,truck 266720,automobile 266721,dog 266722,airplane 266723,horse 266724,cat 266725,bird 266726,dog 266727,ship 266728,ship 266729,dog 266730,truck 266731,frog 266732,bird 266733,deer 266734,deer 266735,automobile 266736,ship 266737,automobile 266738,bird 266739,bird 266740,automobile 266741,ship 266742,cat 266743,automobile 266744,bird 266745,ship 266746,frog 266747,dog 266748,cat 266749,cat 266750,truck 266751,frog 266752,dog 266753,bird 266754,airplane 266755,bird 266756,frog 266757,dog 266758,airplane 266759,bird 266760,horse 266761,horse 266762,ship 266763,cat 266764,airplane 266765,deer 266766,airplane 266767,dog 266768,deer 266769,deer 266770,horse 266771,airplane 266772,horse 266773,airplane 266774,frog 266775,cat 266776,deer 266777,horse 266778,cat 266779,ship 266780,airplane 266781,deer 266782,automobile 266783,dog 266784,automobile 266785,dog 266786,truck 266787,cat 266788,bird 266789,frog 266790,deer 266791,cat 266792,bird 266793,automobile 266794,horse 266795,deer 266796,horse 266797,cat 266798,dog 266799,horse 266800,dog 266801,bird 266802,deer 266803,bird 266804,bird 266805,bird 266806,bird 266807,cat 266808,truck 266809,frog 266810,deer 266811,cat 266812,cat 266813,bird 266814,frog 266815,deer 266816,dog 266817,frog 266818,frog 266819,automobile 266820,automobile 266821,horse 266822,frog 266823,bird 266824,truck 266825,horse 266826,cat 266827,airplane 266828,bird 266829,automobile 266830,truck 266831,dog 266832,cat 266833,cat 266834,airplane 266835,deer 266836,cat 266837,truck 266838,truck 266839,ship 266840,cat 266841,automobile 266842,dog 266843,ship 266844,ship 266845,cat 266846,cat 266847,frog 266848,cat 266849,frog 266850,truck 266851,frog 266852,bird 266853,truck 266854,dog 266855,deer 266856,horse 266857,airplane 266858,deer 266859,cat 266860,bird 266861,truck 266862,horse 266863,frog 266864,deer 266865,frog 266866,horse 266867,automobile 266868,truck 266869,frog 266870,bird 266871,bird 266872,cat 266873,frog 266874,truck 266875,cat 266876,cat 266877,bird 266878,frog 266879,cat 266880,dog 266881,deer 266882,deer 266883,ship 266884,automobile 266885,cat 266886,truck 266887,airplane 266888,bird 266889,frog 266890,deer 266891,cat 266892,bird 266893,automobile 266894,truck 266895,frog 266896,bird 266897,deer 266898,ship 266899,bird 266900,airplane 266901,frog 266902,horse 266903,automobile 266904,cat 266905,airplane 266906,cat 266907,deer 266908,horse 266909,horse 266910,frog 266911,deer 266912,automobile 266913,truck 266914,airplane 266915,frog 266916,airplane 266917,cat 266918,deer 266919,bird 266920,truck 266921,bird 266922,ship 266923,ship 266924,automobile 266925,ship 266926,deer 266927,cat 266928,bird 266929,bird 266930,deer 266931,cat 266932,truck 266933,ship 266934,cat 266935,deer 266936,bird 266937,horse 266938,deer 266939,dog 266940,horse 266941,ship 266942,bird 266943,bird 266944,deer 266945,horse 266946,airplane 266947,dog 266948,automobile 266949,automobile 266950,dog 266951,horse 266952,horse 266953,automobile 266954,frog 266955,airplane 266956,bird 266957,bird 266958,deer 266959,airplane 266960,cat 266961,frog 266962,ship 266963,dog 266964,truck 266965,bird 266966,dog 266967,frog 266968,cat 266969,cat 266970,frog 266971,ship 266972,truck 266973,bird 266974,ship 266975,horse 266976,horse 266977,deer 266978,horse 266979,truck 266980,dog 266981,truck 266982,airplane 266983,frog 266984,dog 266985,frog 266986,frog 266987,truck 266988,automobile 266989,bird 266990,deer 266991,deer 266992,cat 266993,horse 266994,bird 266995,bird 266996,horse 266997,horse 266998,frog 266999,ship 267000,deer 267001,automobile 267002,truck 267003,frog 267004,deer 267005,truck 267006,frog 267007,bird 267008,frog 267009,frog 267010,cat 267011,cat 267012,dog 267013,truck 267014,automobile 267015,cat 267016,deer 267017,truck 267018,ship 267019,truck 267020,horse 267021,frog 267022,ship 267023,horse 267024,automobile 267025,bird 267026,dog 267027,horse 267028,bird 267029,cat 267030,deer 267031,airplane 267032,dog 267033,airplane 267034,deer 267035,frog 267036,frog 267037,horse 267038,cat 267039,cat 267040,ship 267041,horse 267042,deer 267043,deer 267044,deer 267045,deer 267046,dog 267047,deer 267048,airplane 267049,deer 267050,frog 267051,cat 267052,airplane 267053,horse 267054,deer 267055,frog 267056,deer 267057,horse 267058,bird 267059,automobile 267060,frog 267061,frog 267062,dog 267063,ship 267064,deer 267065,cat 267066,airplane 267067,airplane 267068,cat 267069,truck 267070,automobile 267071,automobile 267072,truck 267073,dog 267074,truck 267075,frog 267076,automobile 267077,cat 267078,deer 267079,ship 267080,horse 267081,frog 267082,bird 267083,airplane 267084,deer 267085,frog 267086,horse 267087,bird 267088,ship 267089,horse 267090,truck 267091,bird 267092,airplane 267093,dog 267094,dog 267095,deer 267096,frog 267097,dog 267098,cat 267099,frog 267100,bird 267101,truck 267102,horse 267103,deer 267104,frog 267105,cat 267106,ship 267107,cat 267108,deer 267109,horse 267110,frog 267111,frog 267112,dog 267113,cat 267114,airplane 267115,dog 267116,frog 267117,dog 267118,horse 267119,horse 267120,horse 267121,dog 267122,deer 267123,deer 267124,horse 267125,deer 267126,airplane 267127,cat 267128,frog 267129,bird 267130,ship 267131,airplane 267132,frog 267133,truck 267134,horse 267135,truck 267136,automobile 267137,frog 267138,cat 267139,automobile 267140,bird 267141,frog 267142,truck 267143,cat 267144,cat 267145,cat 267146,bird 267147,deer 267148,dog 267149,airplane 267150,horse 267151,dog 267152,airplane 267153,deer 267154,cat 267155,cat 267156,horse 267157,dog 267158,deer 267159,truck 267160,automobile 267161,horse 267162,truck 267163,ship 267164,airplane 267165,airplane 267166,bird 267167,deer 267168,cat 267169,airplane 267170,cat 267171,ship 267172,bird 267173,cat 267174,airplane 267175,airplane 267176,airplane 267177,airplane 267178,cat 267179,bird 267180,cat 267181,cat 267182,dog 267183,cat 267184,truck 267185,bird 267186,dog 267187,ship 267188,deer 267189,ship 267190,bird 267191,horse 267192,cat 267193,automobile 267194,cat 267195,truck 267196,ship 267197,frog 267198,frog 267199,deer 267200,frog 267201,truck 267202,cat 267203,truck 267204,airplane 267205,automobile 267206,deer 267207,horse 267208,airplane 267209,ship 267210,bird 267211,airplane 267212,horse 267213,cat 267214,horse 267215,ship 267216,automobile 267217,truck 267218,automobile 267219,horse 267220,deer 267221,dog 267222,airplane 267223,bird 267224,ship 267225,dog 267226,horse 267227,automobile 267228,airplane 267229,cat 267230,cat 267231,dog 267232,horse 267233,cat 267234,frog 267235,airplane 267236,frog 267237,airplane 267238,deer 267239,ship 267240,bird 267241,truck 267242,cat 267243,horse 267244,frog 267245,cat 267246,automobile 267247,ship 267248,cat 267249,deer 267250,horse 267251,frog 267252,automobile 267253,bird 267254,automobile 267255,ship 267256,dog 267257,truck 267258,bird 267259,frog 267260,deer 267261,dog 267262,truck 267263,dog 267264,frog 267265,cat 267266,ship 267267,truck 267268,bird 267269,dog 267270,frog 267271,truck 267272,cat 267273,cat 267274,cat 267275,horse 267276,deer 267277,horse 267278,frog 267279,dog 267280,airplane 267281,bird 267282,frog 267283,airplane 267284,cat 267285,truck 267286,dog 267287,bird 267288,cat 267289,automobile 267290,truck 267291,dog 267292,frog 267293,automobile 267294,horse 267295,frog 267296,truck 267297,cat 267298,bird 267299,bird 267300,cat 267301,deer 267302,deer 267303,deer 267304,bird 267305,truck 267306,automobile 267307,frog 267308,truck 267309,airplane 267310,frog 267311,bird 267312,dog 267313,airplane 267314,cat 267315,frog 267316,dog 267317,horse 267318,cat 267319,deer 267320,deer 267321,truck 267322,cat 267323,cat 267324,dog 267325,deer 267326,dog 267327,automobile 267328,airplane 267329,dog 267330,truck 267331,frog 267332,airplane 267333,dog 267334,ship 267335,bird 267336,horse 267337,truck 267338,deer 267339,horse 267340,frog 267341,dog 267342,bird 267343,ship 267344,deer 267345,frog 267346,ship 267347,frog 267348,deer 267349,dog 267350,deer 267351,bird 267352,horse 267353,frog 267354,automobile 267355,frog 267356,truck 267357,truck 267358,horse 267359,bird 267360,airplane 267361,bird 267362,cat 267363,dog 267364,bird 267365,automobile 267366,bird 267367,frog 267368,horse 267369,frog 267370,cat 267371,cat 267372,dog 267373,frog 267374,horse 267375,automobile 267376,airplane 267377,horse 267378,truck 267379,airplane 267380,frog 267381,airplane 267382,cat 267383,dog 267384,cat 267385,horse 267386,automobile 267387,horse 267388,dog 267389,truck 267390,cat 267391,deer 267392,deer 267393,ship 267394,truck 267395,dog 267396,bird 267397,frog 267398,dog 267399,bird 267400,airplane 267401,horse 267402,horse 267403,truck 267404,truck 267405,cat 267406,dog 267407,ship 267408,frog 267409,automobile 267410,cat 267411,frog 267412,deer 267413,ship 267414,frog 267415,frog 267416,frog 267417,bird 267418,cat 267419,deer 267420,frog 267421,frog 267422,cat 267423,frog 267424,bird 267425,bird 267426,truck 267427,airplane 267428,cat 267429,horse 267430,truck 267431,automobile 267432,deer 267433,frog 267434,bird 267435,bird 267436,horse 267437,frog 267438,airplane 267439,dog 267440,deer 267441,frog 267442,frog 267443,bird 267444,automobile 267445,truck 267446,dog 267447,bird 267448,horse 267449,ship 267450,truck 267451,dog 267452,truck 267453,deer 267454,deer 267455,cat 267456,cat 267457,deer 267458,dog 267459,frog 267460,truck 267461,horse 267462,frog 267463,frog 267464,truck 267465,airplane 267466,ship 267467,airplane 267468,horse 267469,automobile 267470,deer 267471,dog 267472,airplane 267473,cat 267474,dog 267475,airplane 267476,bird 267477,dog 267478,bird 267479,deer 267480,truck 267481,dog 267482,cat 267483,cat 267484,cat 267485,deer 267486,horse 267487,airplane 267488,cat 267489,truck 267490,airplane 267491,automobile 267492,frog 267493,deer 267494,ship 267495,cat 267496,cat 267497,deer 267498,airplane 267499,truck 267500,ship 267501,dog 267502,dog 267503,frog 267504,bird 267505,airplane 267506,deer 267507,airplane 267508,horse 267509,frog 267510,cat 267511,airplane 267512,truck 267513,truck 267514,cat 267515,horse 267516,deer 267517,deer 267518,dog 267519,cat 267520,ship 267521,automobile 267522,airplane 267523,horse 267524,airplane 267525,cat 267526,truck 267527,dog 267528,cat 267529,truck 267530,ship 267531,airplane 267532,frog 267533,cat 267534,bird 267535,dog 267536,dog 267537,cat 267538,cat 267539,horse 267540,automobile 267541,frog 267542,deer 267543,ship 267544,dog 267545,truck 267546,airplane 267547,ship 267548,truck 267549,airplane 267550,bird 267551,deer 267552,automobile 267553,automobile 267554,airplane 267555,dog 267556,automobile 267557,dog 267558,deer 267559,horse 267560,horse 267561,cat 267562,ship 267563,cat 267564,truck 267565,bird 267566,frog 267567,frog 267568,truck 267569,cat 267570,cat 267571,automobile 267572,ship 267573,bird 267574,horse 267575,deer 267576,truck 267577,bird 267578,frog 267579,horse 267580,ship 267581,cat 267582,frog 267583,truck 267584,cat 267585,deer 267586,horse 267587,horse 267588,airplane 267589,cat 267590,dog 267591,cat 267592,horse 267593,bird 267594,cat 267595,cat 267596,deer 267597,cat 267598,airplane 267599,bird 267600,truck 267601,frog 267602,frog 267603,cat 267604,dog 267605,bird 267606,airplane 267607,dog 267608,automobile 267609,truck 267610,frog 267611,frog 267612,bird 267613,cat 267614,deer 267615,automobile 267616,truck 267617,bird 267618,dog 267619,ship 267620,automobile 267621,truck 267622,truck 267623,dog 267624,horse 267625,truck 267626,cat 267627,cat 267628,ship 267629,truck 267630,horse 267631,frog 267632,automobile 267633,dog 267634,cat 267635,dog 267636,ship 267637,cat 267638,automobile 267639,airplane 267640,horse 267641,dog 267642,horse 267643,dog 267644,bird 267645,dog 267646,ship 267647,cat 267648,airplane 267649,dog 267650,horse 267651,frog 267652,horse 267653,cat 267654,deer 267655,bird 267656,airplane 267657,truck 267658,cat 267659,bird 267660,horse 267661,ship 267662,bird 267663,automobile 267664,bird 267665,automobile 267666,bird 267667,horse 267668,automobile 267669,truck 267670,deer 267671,cat 267672,truck 267673,truck 267674,cat 267675,airplane 267676,cat 267677,automobile 267678,ship 267679,frog 267680,deer 267681,horse 267682,horse 267683,horse 267684,truck 267685,ship 267686,horse 267687,dog 267688,horse 267689,automobile 267690,automobile 267691,deer 267692,airplane 267693,truck 267694,dog 267695,dog 267696,cat 267697,bird 267698,airplane 267699,ship 267700,deer 267701,ship 267702,cat 267703,airplane 267704,bird 267705,truck 267706,deer 267707,cat 267708,cat 267709,dog 267710,bird 267711,horse 267712,cat 267713,automobile 267714,horse 267715,airplane 267716,automobile 267717,deer 267718,deer 267719,automobile 267720,ship 267721,bird 267722,deer 267723,ship 267724,bird 267725,frog 267726,dog 267727,truck 267728,horse 267729,truck 267730,horse 267731,airplane 267732,deer 267733,airplane 267734,frog 267735,cat 267736,ship 267737,automobile 267738,truck 267739,ship 267740,deer 267741,automobile 267742,dog 267743,cat 267744,dog 267745,cat 267746,cat 267747,frog 267748,horse 267749,airplane 267750,ship 267751,deer 267752,ship 267753,truck 267754,frog 267755,cat 267756,horse 267757,deer 267758,cat 267759,horse 267760,bird 267761,ship 267762,airplane 267763,horse 267764,truck 267765,deer 267766,ship 267767,horse 267768,dog 267769,automobile 267770,deer 267771,airplane 267772,deer 267773,airplane 267774,cat 267775,truck 267776,airplane 267777,truck 267778,frog 267779,dog 267780,dog 267781,automobile 267782,cat 267783,cat 267784,truck 267785,frog 267786,dog 267787,ship 267788,airplane 267789,truck 267790,horse 267791,cat 267792,ship 267793,cat 267794,bird 267795,frog 267796,frog 267797,dog 267798,deer 267799,airplane 267800,dog 267801,ship 267802,horse 267803,ship 267804,ship 267805,automobile 267806,bird 267807,horse 267808,ship 267809,deer 267810,horse 267811,bird 267812,horse 267813,ship 267814,bird 267815,dog 267816,horse 267817,horse 267818,truck 267819,truck 267820,cat 267821,deer 267822,ship 267823,frog 267824,bird 267825,airplane 267826,deer 267827,deer 267828,dog 267829,dog 267830,frog 267831,frog 267832,frog 267833,truck 267834,cat 267835,frog 267836,airplane 267837,bird 267838,ship 267839,airplane 267840,dog 267841,horse 267842,truck 267843,dog 267844,horse 267845,truck 267846,horse 267847,ship 267848,deer 267849,deer 267850,automobile 267851,cat 267852,ship 267853,dog 267854,airplane 267855,horse 267856,horse 267857,dog 267858,cat 267859,truck 267860,cat 267861,horse 267862,cat 267863,cat 267864,deer 267865,cat 267866,frog 267867,bird 267868,airplane 267869,bird 267870,automobile 267871,cat 267872,automobile 267873,cat 267874,airplane 267875,automobile 267876,horse 267877,truck 267878,deer 267879,truck 267880,cat 267881,deer 267882,cat 267883,automobile 267884,bird 267885,cat 267886,bird 267887,cat 267888,truck 267889,deer 267890,cat 267891,cat 267892,cat 267893,cat 267894,horse 267895,cat 267896,frog 267897,truck 267898,airplane 267899,ship 267900,bird 267901,horse 267902,deer 267903,automobile 267904,cat 267905,bird 267906,airplane 267907,dog 267908,deer 267909,ship 267910,frog 267911,cat 267912,automobile 267913,cat 267914,bird 267915,automobile 267916,cat 267917,truck 267918,dog 267919,frog 267920,cat 267921,deer 267922,cat 267923,truck 267924,bird 267925,dog 267926,dog 267927,airplane 267928,dog 267929,airplane 267930,automobile 267931,automobile 267932,bird 267933,cat 267934,cat 267935,frog 267936,truck 267937,truck 267938,bird 267939,bird 267940,horse 267941,deer 267942,truck 267943,frog 267944,automobile 267945,horse 267946,truck 267947,ship 267948,bird 267949,deer 267950,cat 267951,truck 267952,ship 267953,deer 267954,dog 267955,cat 267956,horse 267957,horse 267958,deer 267959,ship 267960,dog 267961,truck 267962,deer 267963,frog 267964,dog 267965,bird 267966,horse 267967,cat 267968,bird 267969,frog 267970,dog 267971,cat 267972,ship 267973,automobile 267974,dog 267975,automobile 267976,truck 267977,airplane 267978,ship 267979,ship 267980,cat 267981,airplane 267982,frog 267983,cat 267984,bird 267985,cat 267986,deer 267987,dog 267988,bird 267989,horse 267990,truck 267991,bird 267992,cat 267993,frog 267994,cat 267995,automobile 267996,frog 267997,airplane 267998,automobile 267999,cat 268000,cat 268001,dog 268002,frog 268003,truck 268004,automobile 268005,dog 268006,bird 268007,horse 268008,dog 268009,airplane 268010,automobile 268011,bird 268012,frog 268013,frog 268014,frog 268015,cat 268016,deer 268017,dog 268018,airplane 268019,frog 268020,ship 268021,deer 268022,airplane 268023,ship 268024,cat 268025,frog 268026,deer 268027,deer 268028,cat 268029,horse 268030,bird 268031,truck 268032,truck 268033,cat 268034,bird 268035,horse 268036,deer 268037,bird 268038,horse 268039,horse 268040,horse 268041,airplane 268042,horse 268043,ship 268044,automobile 268045,frog 268046,dog 268047,ship 268048,airplane 268049,automobile 268050,ship 268051,deer 268052,automobile 268053,airplane 268054,ship 268055,automobile 268056,dog 268057,ship 268058,truck 268059,cat 268060,horse 268061,airplane 268062,deer 268063,deer 268064,automobile 268065,truck 268066,horse 268067,horse 268068,airplane 268069,automobile 268070,deer 268071,deer 268072,deer 268073,deer 268074,frog 268075,deer 268076,airplane 268077,frog 268078,dog 268079,horse 268080,dog 268081,deer 268082,airplane 268083,airplane 268084,frog 268085,horse 268086,airplane 268087,frog 268088,horse 268089,truck 268090,truck 268091,dog 268092,airplane 268093,airplane 268094,cat 268095,horse 268096,bird 268097,bird 268098,deer 268099,horse 268100,dog 268101,horse 268102,bird 268103,horse 268104,dog 268105,automobile 268106,frog 268107,horse 268108,horse 268109,airplane 268110,deer 268111,dog 268112,bird 268113,ship 268114,airplane 268115,cat 268116,ship 268117,ship 268118,ship 268119,airplane 268120,deer 268121,cat 268122,dog 268123,ship 268124,truck 268125,truck 268126,automobile 268127,truck 268128,deer 268129,dog 268130,ship 268131,cat 268132,cat 268133,frog 268134,truck 268135,deer 268136,truck 268137,airplane 268138,dog 268139,deer 268140,airplane 268141,cat 268142,deer 268143,airplane 268144,cat 268145,bird 268146,airplane 268147,truck 268148,deer 268149,dog 268150,horse 268151,cat 268152,horse 268153,truck 268154,bird 268155,bird 268156,automobile 268157,cat 268158,frog 268159,deer 268160,dog 268161,bird 268162,dog 268163,cat 268164,deer 268165,horse 268166,automobile 268167,truck 268168,deer 268169,horse 268170,cat 268171,airplane 268172,frog 268173,cat 268174,frog 268175,automobile 268176,automobile 268177,horse 268178,cat 268179,truck 268180,cat 268181,automobile 268182,automobile 268183,truck 268184,deer 268185,frog 268186,frog 268187,bird 268188,frog 268189,frog 268190,deer 268191,dog 268192,ship 268193,bird 268194,ship 268195,truck 268196,deer 268197,bird 268198,dog 268199,horse 268200,deer 268201,deer 268202,dog 268203,horse 268204,dog 268205,automobile 268206,ship 268207,horse 268208,horse 268209,bird 268210,frog 268211,cat 268212,cat 268213,cat 268214,ship 268215,deer 268216,cat 268217,frog 268218,horse 268219,bird 268220,deer 268221,airplane 268222,truck 268223,horse 268224,bird 268225,bird 268226,airplane 268227,cat 268228,cat 268229,horse 268230,automobile 268231,deer 268232,ship 268233,deer 268234,automobile 268235,bird 268236,deer 268237,truck 268238,frog 268239,cat 268240,horse 268241,frog 268242,bird 268243,bird 268244,automobile 268245,cat 268246,automobile 268247,cat 268248,truck 268249,ship 268250,frog 268251,deer 268252,automobile 268253,automobile 268254,deer 268255,deer 268256,frog 268257,cat 268258,deer 268259,truck 268260,deer 268261,frog 268262,frog 268263,airplane 268264,horse 268265,automobile 268266,bird 268267,bird 268268,cat 268269,truck 268270,frog 268271,truck 268272,frog 268273,automobile 268274,dog 268275,deer 268276,automobile 268277,horse 268278,frog 268279,horse 268280,bird 268281,deer 268282,deer 268283,horse 268284,horse 268285,cat 268286,cat 268287,deer 268288,truck 268289,deer 268290,frog 268291,truck 268292,bird 268293,automobile 268294,truck 268295,truck 268296,airplane 268297,frog 268298,truck 268299,frog 268300,automobile 268301,dog 268302,bird 268303,truck 268304,ship 268305,automobile 268306,dog 268307,cat 268308,cat 268309,cat 268310,ship 268311,airplane 268312,dog 268313,deer 268314,dog 268315,bird 268316,truck 268317,dog 268318,frog 268319,frog 268320,bird 268321,frog 268322,deer 268323,truck 268324,dog 268325,airplane 268326,automobile 268327,dog 268328,cat 268329,truck 268330,dog 268331,truck 268332,automobile 268333,airplane 268334,bird 268335,dog 268336,bird 268337,deer 268338,bird 268339,cat 268340,dog 268341,truck 268342,cat 268343,horse 268344,horse 268345,deer 268346,ship 268347,horse 268348,cat 268349,cat 268350,truck 268351,truck 268352,frog 268353,bird 268354,deer 268355,cat 268356,deer 268357,bird 268358,frog 268359,bird 268360,cat 268361,dog 268362,truck 268363,airplane 268364,truck 268365,dog 268366,cat 268367,cat 268368,frog 268369,deer 268370,horse 268371,frog 268372,truck 268373,frog 268374,deer 268375,truck 268376,airplane 268377,automobile 268378,frog 268379,truck 268380,truck 268381,dog 268382,airplane 268383,truck 268384,airplane 268385,deer 268386,cat 268387,cat 268388,truck 268389,bird 268390,ship 268391,airplane 268392,dog 268393,airplane 268394,automobile 268395,bird 268396,deer 268397,frog 268398,ship 268399,cat 268400,deer 268401,dog 268402,horse 268403,dog 268404,cat 268405,dog 268406,bird 268407,cat 268408,frog 268409,automobile 268410,deer 268411,truck 268412,deer 268413,horse 268414,ship 268415,airplane 268416,truck 268417,truck 268418,deer 268419,horse 268420,automobile 268421,cat 268422,airplane 268423,frog 268424,dog 268425,cat 268426,truck 268427,ship 268428,truck 268429,ship 268430,cat 268431,cat 268432,ship 268433,dog 268434,deer 268435,truck 268436,cat 268437,automobile 268438,horse 268439,cat 268440,airplane 268441,frog 268442,cat 268443,deer 268444,airplane 268445,automobile 268446,horse 268447,dog 268448,airplane 268449,dog 268450,truck 268451,bird 268452,frog 268453,bird 268454,automobile 268455,frog 268456,airplane 268457,truck 268458,dog 268459,automobile 268460,frog 268461,horse 268462,bird 268463,cat 268464,automobile 268465,frog 268466,frog 268467,cat 268468,cat 268469,ship 268470,airplane 268471,cat 268472,frog 268473,deer 268474,horse 268475,bird 268476,frog 268477,frog 268478,deer 268479,cat 268480,dog 268481,deer 268482,bird 268483,dog 268484,deer 268485,automobile 268486,cat 268487,deer 268488,deer 268489,airplane 268490,frog 268491,dog 268492,dog 268493,dog 268494,horse 268495,cat 268496,horse 268497,frog 268498,deer 268499,ship 268500,cat 268501,cat 268502,frog 268503,frog 268504,ship 268505,airplane 268506,deer 268507,dog 268508,cat 268509,ship 268510,horse 268511,cat 268512,truck 268513,bird 268514,frog 268515,horse 268516,airplane 268517,truck 268518,truck 268519,dog 268520,dog 268521,deer 268522,dog 268523,bird 268524,horse 268525,cat 268526,bird 268527,dog 268528,deer 268529,airplane 268530,ship 268531,automobile 268532,truck 268533,cat 268534,dog 268535,airplane 268536,truck 268537,truck 268538,cat 268539,cat 268540,truck 268541,cat 268542,bird 268543,deer 268544,bird 268545,airplane 268546,truck 268547,bird 268548,airplane 268549,cat 268550,deer 268551,ship 268552,horse 268553,horse 268554,dog 268555,truck 268556,frog 268557,cat 268558,automobile 268559,truck 268560,horse 268561,frog 268562,frog 268563,deer 268564,dog 268565,dog 268566,deer 268567,frog 268568,airplane 268569,ship 268570,truck 268571,ship 268572,deer 268573,automobile 268574,dog 268575,deer 268576,bird 268577,horse 268578,deer 268579,airplane 268580,cat 268581,cat 268582,cat 268583,deer 268584,dog 268585,ship 268586,automobile 268587,deer 268588,cat 268589,dog 268590,cat 268591,frog 268592,dog 268593,horse 268594,deer 268595,frog 268596,horse 268597,deer 268598,deer 268599,truck 268600,horse 268601,frog 268602,cat 268603,automobile 268604,deer 268605,bird 268606,dog 268607,truck 268608,cat 268609,ship 268610,frog 268611,frog 268612,dog 268613,dog 268614,dog 268615,horse 268616,deer 268617,dog 268618,dog 268619,dog 268620,airplane 268621,bird 268622,ship 268623,dog 268624,cat 268625,deer 268626,automobile 268627,airplane 268628,frog 268629,cat 268630,cat 268631,dog 268632,frog 268633,deer 268634,ship 268635,truck 268636,automobile 268637,airplane 268638,deer 268639,cat 268640,bird 268641,dog 268642,bird 268643,cat 268644,cat 268645,frog 268646,horse 268647,airplane 268648,automobile 268649,dog 268650,truck 268651,horse 268652,horse 268653,deer 268654,truck 268655,horse 268656,bird 268657,horse 268658,frog 268659,horse 268660,cat 268661,truck 268662,deer 268663,ship 268664,deer 268665,cat 268666,cat 268667,truck 268668,bird 268669,ship 268670,truck 268671,cat 268672,cat 268673,ship 268674,dog 268675,dog 268676,airplane 268677,ship 268678,ship 268679,ship 268680,truck 268681,horse 268682,frog 268683,cat 268684,dog 268685,dog 268686,deer 268687,dog 268688,bird 268689,cat 268690,truck 268691,frog 268692,automobile 268693,bird 268694,airplane 268695,horse 268696,frog 268697,deer 268698,airplane 268699,truck 268700,dog 268701,dog 268702,deer 268703,airplane 268704,cat 268705,horse 268706,dog 268707,cat 268708,automobile 268709,deer 268710,ship 268711,deer 268712,horse 268713,horse 268714,deer 268715,ship 268716,truck 268717,frog 268718,ship 268719,dog 268720,cat 268721,cat 268722,truck 268723,airplane 268724,truck 268725,deer 268726,bird 268727,deer 268728,horse 268729,dog 268730,dog 268731,bird 268732,cat 268733,dog 268734,truck 268735,dog 268736,frog 268737,horse 268738,airplane 268739,cat 268740,automobile 268741,cat 268742,airplane 268743,dog 268744,deer 268745,bird 268746,frog 268747,truck 268748,ship 268749,dog 268750,ship 268751,dog 268752,dog 268753,cat 268754,frog 268755,frog 268756,cat 268757,bird 268758,dog 268759,dog 268760,airplane 268761,cat 268762,ship 268763,automobile 268764,automobile 268765,horse 268766,airplane 268767,horse 268768,ship 268769,ship 268770,airplane 268771,ship 268772,horse 268773,horse 268774,horse 268775,horse 268776,deer 268777,ship 268778,horse 268779,cat 268780,deer 268781,deer 268782,truck 268783,truck 268784,bird 268785,cat 268786,horse 268787,frog 268788,deer 268789,automobile 268790,ship 268791,automobile 268792,bird 268793,frog 268794,horse 268795,truck 268796,truck 268797,deer 268798,bird 268799,cat 268800,frog 268801,cat 268802,bird 268803,dog 268804,truck 268805,bird 268806,horse 268807,cat 268808,deer 268809,dog 268810,cat 268811,dog 268812,deer 268813,dog 268814,frog 268815,dog 268816,cat 268817,truck 268818,airplane 268819,horse 268820,airplane 268821,horse 268822,dog 268823,ship 268824,horse 268825,dog 268826,frog 268827,automobile 268828,cat 268829,truck 268830,dog 268831,horse 268832,dog 268833,automobile 268834,horse 268835,frog 268836,automobile 268837,deer 268838,airplane 268839,truck 268840,deer 268841,cat 268842,deer 268843,automobile 268844,cat 268845,frog 268846,ship 268847,cat 268848,cat 268849,dog 268850,airplane 268851,frog 268852,cat 268853,frog 268854,horse 268855,airplane 268856,dog 268857,horse 268858,bird 268859,ship 268860,horse 268861,cat 268862,horse 268863,truck 268864,ship 268865,ship 268866,dog 268867,dog 268868,airplane 268869,bird 268870,truck 268871,horse 268872,bird 268873,ship 268874,horse 268875,airplane 268876,airplane 268877,cat 268878,frog 268879,ship 268880,truck 268881,deer 268882,bird 268883,deer 268884,bird 268885,deer 268886,cat 268887,dog 268888,deer 268889,horse 268890,deer 268891,bird 268892,ship 268893,cat 268894,truck 268895,bird 268896,airplane 268897,airplane 268898,ship 268899,airplane 268900,truck 268901,cat 268902,truck 268903,cat 268904,dog 268905,ship 268906,truck 268907,truck 268908,horse 268909,cat 268910,ship 268911,horse 268912,dog 268913,bird 268914,horse 268915,cat 268916,cat 268917,truck 268918,dog 268919,ship 268920,truck 268921,deer 268922,truck 268923,deer 268924,truck 268925,ship 268926,cat 268927,automobile 268928,cat 268929,cat 268930,horse 268931,frog 268932,frog 268933,horse 268934,cat 268935,ship 268936,horse 268937,automobile 268938,cat 268939,cat 268940,ship 268941,dog 268942,dog 268943,dog 268944,airplane 268945,deer 268946,dog 268947,frog 268948,automobile 268949,deer 268950,horse 268951,frog 268952,cat 268953,airplane 268954,frog 268955,cat 268956,cat 268957,bird 268958,frog 268959,ship 268960,cat 268961,deer 268962,cat 268963,ship 268964,cat 268965,deer 268966,horse 268967,cat 268968,frog 268969,horse 268970,ship 268971,cat 268972,airplane 268973,cat 268974,frog 268975,cat 268976,airplane 268977,horse 268978,airplane 268979,ship 268980,deer 268981,dog 268982,automobile 268983,horse 268984,bird 268985,dog 268986,frog 268987,frog 268988,horse 268989,ship 268990,cat 268991,bird 268992,deer 268993,deer 268994,dog 268995,automobile 268996,airplane 268997,deer 268998,cat 268999,horse 269000,cat 269001,horse 269002,automobile 269003,horse 269004,cat 269005,cat 269006,frog 269007,horse 269008,dog 269009,truck 269010,automobile 269011,truck 269012,deer 269013,dog 269014,automobile 269015,frog 269016,horse 269017,deer 269018,horse 269019,frog 269020,cat 269021,horse 269022,cat 269023,airplane 269024,deer 269025,truck 269026,frog 269027,deer 269028,frog 269029,airplane 269030,airplane 269031,frog 269032,deer 269033,deer 269034,bird 269035,dog 269036,frog 269037,deer 269038,ship 269039,bird 269040,horse 269041,dog 269042,dog 269043,ship 269044,dog 269045,dog 269046,bird 269047,frog 269048,dog 269049,dog 269050,frog 269051,frog 269052,dog 269053,truck 269054,frog 269055,deer 269056,bird 269057,ship 269058,deer 269059,bird 269060,deer 269061,ship 269062,deer 269063,frog 269064,horse 269065,ship 269066,truck 269067,dog 269068,frog 269069,horse 269070,dog 269071,frog 269072,bird 269073,ship 269074,airplane 269075,deer 269076,truck 269077,cat 269078,airplane 269079,truck 269080,deer 269081,truck 269082,frog 269083,deer 269084,frog 269085,horse 269086,dog 269087,ship 269088,bird 269089,horse 269090,deer 269091,bird 269092,frog 269093,deer 269094,cat 269095,bird 269096,airplane 269097,horse 269098,ship 269099,deer 269100,deer 269101,dog 269102,dog 269103,dog 269104,frog 269105,frog 269106,cat 269107,frog 269108,truck 269109,horse 269110,dog 269111,bird 269112,truck 269113,ship 269114,cat 269115,bird 269116,deer 269117,bird 269118,airplane 269119,horse 269120,frog 269121,frog 269122,horse 269123,truck 269124,frog 269125,ship 269126,cat 269127,automobile 269128,horse 269129,horse 269130,bird 269131,bird 269132,cat 269133,truck 269134,cat 269135,deer 269136,automobile 269137,frog 269138,frog 269139,cat 269140,frog 269141,automobile 269142,deer 269143,airplane 269144,truck 269145,truck 269146,cat 269147,cat 269148,deer 269149,cat 269150,horse 269151,airplane 269152,frog 269153,cat 269154,frog 269155,dog 269156,dog 269157,frog 269158,frog 269159,airplane 269160,frog 269161,deer 269162,truck 269163,dog 269164,deer 269165,dog 269166,ship 269167,dog 269168,cat 269169,bird 269170,dog 269171,airplane 269172,dog 269173,truck 269174,deer 269175,dog 269176,cat 269177,automobile 269178,deer 269179,bird 269180,horse 269181,deer 269182,cat 269183,dog 269184,frog 269185,truck 269186,bird 269187,bird 269188,cat 269189,truck 269190,frog 269191,horse 269192,bird 269193,cat 269194,ship 269195,deer 269196,cat 269197,bird 269198,airplane 269199,bird 269200,bird 269201,cat 269202,truck 269203,frog 269204,dog 269205,bird 269206,frog 269207,dog 269208,cat 269209,frog 269210,airplane 269211,ship 269212,bird 269213,horse 269214,horse 269215,frog 269216,horse 269217,deer 269218,frog 269219,ship 269220,horse 269221,cat 269222,bird 269223,truck 269224,bird 269225,truck 269226,dog 269227,cat 269228,frog 269229,truck 269230,horse 269231,frog 269232,cat 269233,truck 269234,dog 269235,automobile 269236,frog 269237,deer 269238,horse 269239,deer 269240,ship 269241,deer 269242,cat 269243,cat 269244,bird 269245,bird 269246,deer 269247,airplane 269248,frog 269249,frog 269250,truck 269251,airplane 269252,cat 269253,automobile 269254,dog 269255,deer 269256,frog 269257,ship 269258,deer 269259,bird 269260,ship 269261,cat 269262,airplane 269263,cat 269264,frog 269265,deer 269266,automobile 269267,bird 269268,ship 269269,dog 269270,ship 269271,airplane 269272,cat 269273,cat 269274,dog 269275,frog 269276,airplane 269277,deer 269278,horse 269279,truck 269280,deer 269281,automobile 269282,airplane 269283,truck 269284,frog 269285,truck 269286,horse 269287,airplane 269288,horse 269289,bird 269290,frog 269291,deer 269292,dog 269293,ship 269294,bird 269295,cat 269296,airplane 269297,dog 269298,automobile 269299,bird 269300,bird 269301,cat 269302,ship 269303,deer 269304,airplane 269305,deer 269306,truck 269307,automobile 269308,airplane 269309,horse 269310,airplane 269311,airplane 269312,bird 269313,automobile 269314,truck 269315,truck 269316,ship 269317,truck 269318,airplane 269319,cat 269320,deer 269321,bird 269322,horse 269323,cat 269324,deer 269325,frog 269326,truck 269327,deer 269328,truck 269329,cat 269330,airplane 269331,bird 269332,airplane 269333,deer 269334,deer 269335,dog 269336,deer 269337,dog 269338,automobile 269339,frog 269340,cat 269341,cat 269342,airplane 269343,deer 269344,truck 269345,truck 269346,automobile 269347,deer 269348,frog 269349,truck 269350,bird 269351,automobile 269352,bird 269353,airplane 269354,deer 269355,deer 269356,deer 269357,cat 269358,airplane 269359,cat 269360,cat 269361,horse 269362,cat 269363,automobile 269364,horse 269365,truck 269366,truck 269367,automobile 269368,frog 269369,automobile 269370,dog 269371,cat 269372,bird 269373,horse 269374,bird 269375,ship 269376,deer 269377,deer 269378,ship 269379,frog 269380,truck 269381,frog 269382,dog 269383,truck 269384,deer 269385,deer 269386,frog 269387,automobile 269388,cat 269389,cat 269390,deer 269391,frog 269392,bird 269393,dog 269394,automobile 269395,horse 269396,cat 269397,cat 269398,horse 269399,ship 269400,bird 269401,horse 269402,frog 269403,dog 269404,deer 269405,truck 269406,cat 269407,deer 269408,bird 269409,bird 269410,bird 269411,bird 269412,automobile 269413,truck 269414,bird 269415,cat 269416,cat 269417,dog 269418,deer 269419,bird 269420,frog 269421,dog 269422,frog 269423,deer 269424,deer 269425,dog 269426,truck 269427,airplane 269428,bird 269429,dog 269430,airplane 269431,bird 269432,cat 269433,horse 269434,truck 269435,frog 269436,automobile 269437,frog 269438,airplane 269439,frog 269440,cat 269441,frog 269442,bird 269443,ship 269444,frog 269445,automobile 269446,airplane 269447,deer 269448,truck 269449,frog 269450,frog 269451,airplane 269452,automobile 269453,truck 269454,airplane 269455,frog 269456,ship 269457,dog 269458,cat 269459,automobile 269460,frog 269461,frog 269462,truck 269463,airplane 269464,cat 269465,dog 269466,deer 269467,ship 269468,dog 269469,dog 269470,frog 269471,dog 269472,frog 269473,frog 269474,bird 269475,truck 269476,airplane 269477,dog 269478,automobile 269479,truck 269480,ship 269481,truck 269482,dog 269483,airplane 269484,cat 269485,dog 269486,deer 269487,ship 269488,frog 269489,ship 269490,airplane 269491,cat 269492,airplane 269493,automobile 269494,frog 269495,airplane 269496,truck 269497,airplane 269498,cat 269499,bird 269500,automobile 269501,dog 269502,deer 269503,truck 269504,cat 269505,automobile 269506,frog 269507,automobile 269508,deer 269509,ship 269510,truck 269511,truck 269512,truck 269513,truck 269514,deer 269515,cat 269516,horse 269517,deer 269518,cat 269519,frog 269520,frog 269521,dog 269522,bird 269523,airplane 269524,ship 269525,frog 269526,ship 269527,frog 269528,horse 269529,truck 269530,dog 269531,dog 269532,truck 269533,horse 269534,bird 269535,truck 269536,horse 269537,horse 269538,bird 269539,frog 269540,airplane 269541,dog 269542,cat 269543,cat 269544,cat 269545,truck 269546,truck 269547,truck 269548,horse 269549,frog 269550,frog 269551,frog 269552,bird 269553,truck 269554,ship 269555,deer 269556,horse 269557,deer 269558,cat 269559,airplane 269560,ship 269561,bird 269562,frog 269563,dog 269564,deer 269565,cat 269566,automobile 269567,automobile 269568,automobile 269569,bird 269570,horse 269571,automobile 269572,automobile 269573,automobile 269574,dog 269575,airplane 269576,bird 269577,frog 269578,dog 269579,deer 269580,airplane 269581,frog 269582,airplane 269583,horse 269584,bird 269585,cat 269586,dog 269587,cat 269588,cat 269589,deer 269590,cat 269591,cat 269592,deer 269593,airplane 269594,deer 269595,frog 269596,dog 269597,dog 269598,deer 269599,cat 269600,truck 269601,horse 269602,horse 269603,bird 269604,deer 269605,truck 269606,bird 269607,dog 269608,frog 269609,deer 269610,horse 269611,horse 269612,ship 269613,truck 269614,bird 269615,bird 269616,airplane 269617,automobile 269618,airplane 269619,horse 269620,deer 269621,deer 269622,airplane 269623,automobile 269624,horse 269625,bird 269626,bird 269627,bird 269628,automobile 269629,truck 269630,horse 269631,automobile 269632,deer 269633,airplane 269634,deer 269635,dog 269636,deer 269637,deer 269638,cat 269639,horse 269640,dog 269641,dog 269642,dog 269643,ship 269644,bird 269645,deer 269646,dog 269647,bird 269648,horse 269649,horse 269650,truck 269651,frog 269652,horse 269653,horse 269654,frog 269655,truck 269656,automobile 269657,ship 269658,horse 269659,deer 269660,cat 269661,truck 269662,cat 269663,truck 269664,horse 269665,ship 269666,horse 269667,automobile 269668,truck 269669,automobile 269670,deer 269671,automobile 269672,automobile 269673,horse 269674,ship 269675,dog 269676,dog 269677,bird 269678,cat 269679,airplane 269680,deer 269681,bird 269682,truck 269683,bird 269684,ship 269685,deer 269686,dog 269687,dog 269688,deer 269689,dog 269690,dog 269691,deer 269692,horse 269693,deer 269694,truck 269695,deer 269696,truck 269697,truck 269698,truck 269699,horse 269700,frog 269701,deer 269702,airplane 269703,automobile 269704,bird 269705,cat 269706,automobile 269707,airplane 269708,deer 269709,truck 269710,cat 269711,frog 269712,deer 269713,bird 269714,cat 269715,truck 269716,truck 269717,deer 269718,bird 269719,deer 269720,automobile 269721,dog 269722,deer 269723,cat 269724,dog 269725,bird 269726,bird 269727,cat 269728,ship 269729,cat 269730,deer 269731,airplane 269732,cat 269733,airplane 269734,truck 269735,deer 269736,bird 269737,cat 269738,dog 269739,dog 269740,cat 269741,horse 269742,truck 269743,dog 269744,airplane 269745,airplane 269746,dog 269747,truck 269748,automobile 269749,truck 269750,dog 269751,horse 269752,deer 269753,cat 269754,horse 269755,horse 269756,dog 269757,frog 269758,horse 269759,cat 269760,horse 269761,cat 269762,ship 269763,frog 269764,bird 269765,deer 269766,frog 269767,ship 269768,deer 269769,truck 269770,horse 269771,horse 269772,truck 269773,frog 269774,frog 269775,airplane 269776,truck 269777,airplane 269778,truck 269779,deer 269780,deer 269781,ship 269782,bird 269783,automobile 269784,truck 269785,frog 269786,ship 269787,bird 269788,truck 269789,truck 269790,dog 269791,deer 269792,dog 269793,frog 269794,horse 269795,bird 269796,horse 269797,airplane 269798,cat 269799,frog 269800,frog 269801,deer 269802,frog 269803,dog 269804,automobile 269805,truck 269806,horse 269807,automobile 269808,frog 269809,bird 269810,cat 269811,frog 269812,airplane 269813,horse 269814,truck 269815,airplane 269816,airplane 269817,bird 269818,ship 269819,frog 269820,truck 269821,bird 269822,automobile 269823,bird 269824,ship 269825,automobile 269826,dog 269827,deer 269828,frog 269829,airplane 269830,dog 269831,frog 269832,cat 269833,frog 269834,frog 269835,cat 269836,horse 269837,cat 269838,deer 269839,automobile 269840,airplane 269841,truck 269842,deer 269843,frog 269844,bird 269845,dog 269846,cat 269847,deer 269848,frog 269849,deer 269850,frog 269851,horse 269852,cat 269853,bird 269854,ship 269855,deer 269856,cat 269857,automobile 269858,frog 269859,dog 269860,automobile 269861,deer 269862,cat 269863,ship 269864,dog 269865,dog 269866,truck 269867,cat 269868,deer 269869,bird 269870,cat 269871,airplane 269872,frog 269873,ship 269874,truck 269875,horse 269876,cat 269877,horse 269878,truck 269879,frog 269880,cat 269881,automobile 269882,dog 269883,cat 269884,automobile 269885,horse 269886,ship 269887,deer 269888,airplane 269889,bird 269890,cat 269891,truck 269892,ship 269893,cat 269894,airplane 269895,deer 269896,cat 269897,deer 269898,frog 269899,frog 269900,cat 269901,bird 269902,frog 269903,horse 269904,ship 269905,bird 269906,frog 269907,frog 269908,ship 269909,bird 269910,deer 269911,dog 269912,ship 269913,cat 269914,automobile 269915,bird 269916,bird 269917,ship 269918,horse 269919,horse 269920,truck 269921,frog 269922,cat 269923,horse 269924,airplane 269925,horse 269926,bird 269927,dog 269928,horse 269929,deer 269930,ship 269931,dog 269932,horse 269933,truck 269934,cat 269935,airplane 269936,frog 269937,airplane 269938,deer 269939,cat 269940,dog 269941,dog 269942,bird 269943,frog 269944,deer 269945,cat 269946,frog 269947,airplane 269948,truck 269949,bird 269950,ship 269951,deer 269952,deer 269953,ship 269954,truck 269955,frog 269956,bird 269957,deer 269958,dog 269959,deer 269960,truck 269961,frog 269962,deer 269963,automobile 269964,deer 269965,cat 269966,cat 269967,dog 269968,horse 269969,deer 269970,cat 269971,airplane 269972,cat 269973,truck 269974,ship 269975,airplane 269976,airplane 269977,horse 269978,ship 269979,truck 269980,automobile 269981,airplane 269982,horse 269983,bird 269984,airplane 269985,truck 269986,dog 269987,automobile 269988,horse 269989,cat 269990,dog 269991,airplane 269992,cat 269993,frog 269994,airplane 269995,cat 269996,horse 269997,deer 269998,truck 269999,deer 270000,horse 270001,ship 270002,horse 270003,cat 270004,cat 270005,airplane 270006,ship 270007,bird 270008,deer 270009,truck 270010,deer 270011,bird 270012,ship 270013,ship 270014,deer 270015,airplane 270016,automobile 270017,horse 270018,dog 270019,deer 270020,ship 270021,dog 270022,deer 270023,dog 270024,deer 270025,truck 270026,bird 270027,ship 270028,truck 270029,bird 270030,ship 270031,airplane 270032,frog 270033,bird 270034,airplane 270035,bird 270036,cat 270037,truck 270038,deer 270039,deer 270040,dog 270041,airplane 270042,airplane 270043,cat 270044,bird 270045,deer 270046,truck 270047,horse 270048,cat 270049,deer 270050,deer 270051,bird 270052,ship 270053,cat 270054,cat 270055,dog 270056,airplane 270057,deer 270058,truck 270059,automobile 270060,horse 270061,cat 270062,cat 270063,bird 270064,bird 270065,airplane 270066,truck 270067,horse 270068,horse 270069,truck 270070,ship 270071,deer 270072,frog 270073,frog 270074,airplane 270075,dog 270076,automobile 270077,bird 270078,airplane 270079,dog 270080,horse 270081,cat 270082,deer 270083,ship 270084,airplane 270085,dog 270086,truck 270087,automobile 270088,automobile 270089,horse 270090,horse 270091,cat 270092,bird 270093,bird 270094,automobile 270095,cat 270096,ship 270097,cat 270098,automobile 270099,automobile 270100,ship 270101,horse 270102,frog 270103,truck 270104,frog 270105,frog 270106,dog 270107,horse 270108,horse 270109,ship 270110,horse 270111,bird 270112,dog 270113,horse 270114,horse 270115,deer 270116,horse 270117,dog 270118,dog 270119,cat 270120,airplane 270121,deer 270122,horse 270123,cat 270124,cat 270125,ship 270126,ship 270127,cat 270128,airplane 270129,dog 270130,deer 270131,deer 270132,airplane 270133,deer 270134,truck 270135,cat 270136,frog 270137,dog 270138,frog 270139,bird 270140,deer 270141,deer 270142,deer 270143,bird 270144,frog 270145,deer 270146,cat 270147,airplane 270148,horse 270149,cat 270150,airplane 270151,ship 270152,bird 270153,automobile 270154,dog 270155,bird 270156,cat 270157,ship 270158,truck 270159,airplane 270160,airplane 270161,frog 270162,truck 270163,frog 270164,airplane 270165,deer 270166,cat 270167,bird 270168,bird 270169,ship 270170,truck 270171,truck 270172,deer 270173,frog 270174,dog 270175,cat 270176,bird 270177,bird 270178,deer 270179,cat 270180,deer 270181,frog 270182,deer 270183,airplane 270184,horse 270185,bird 270186,deer 270187,frog 270188,deer 270189,airplane 270190,airplane 270191,truck 270192,dog 270193,truck 270194,automobile 270195,cat 270196,automobile 270197,automobile 270198,cat 270199,bird 270200,bird 270201,deer 270202,ship 270203,deer 270204,airplane 270205,frog 270206,horse 270207,airplane 270208,airplane 270209,automobile 270210,ship 270211,cat 270212,horse 270213,horse 270214,airplane 270215,deer 270216,automobile 270217,airplane 270218,truck 270219,frog 270220,dog 270221,ship 270222,bird 270223,automobile 270224,bird 270225,dog 270226,frog 270227,frog 270228,dog 270229,horse 270230,ship 270231,cat 270232,cat 270233,frog 270234,ship 270235,ship 270236,cat 270237,horse 270238,horse 270239,deer 270240,frog 270241,truck 270242,airplane 270243,deer 270244,horse 270245,cat 270246,deer 270247,deer 270248,frog 270249,airplane 270250,dog 270251,horse 270252,cat 270253,dog 270254,frog 270255,cat 270256,horse 270257,frog 270258,ship 270259,deer 270260,frog 270261,airplane 270262,deer 270263,horse 270264,truck 270265,airplane 270266,cat 270267,frog 270268,deer 270269,frog 270270,ship 270271,dog 270272,deer 270273,frog 270274,airplane 270275,cat 270276,deer 270277,cat 270278,cat 270279,airplane 270280,automobile 270281,dog 270282,truck 270283,deer 270284,dog 270285,automobile 270286,bird 270287,deer 270288,dog 270289,frog 270290,horse 270291,bird 270292,truck 270293,cat 270294,airplane 270295,horse 270296,cat 270297,airplane 270298,deer 270299,airplane 270300,deer 270301,dog 270302,dog 270303,automobile 270304,cat 270305,cat 270306,horse 270307,bird 270308,ship 270309,dog 270310,frog 270311,cat 270312,frog 270313,cat 270314,frog 270315,bird 270316,deer 270317,truck 270318,bird 270319,dog 270320,ship 270321,bird 270322,deer 270323,truck 270324,ship 270325,cat 270326,truck 270327,deer 270328,horse 270329,airplane 270330,truck 270331,dog 270332,automobile 270333,truck 270334,bird 270335,cat 270336,cat 270337,horse 270338,cat 270339,horse 270340,ship 270341,cat 270342,cat 270343,airplane 270344,bird 270345,frog 270346,horse 270347,deer 270348,truck 270349,deer 270350,deer 270351,bird 270352,deer 270353,ship 270354,cat 270355,cat 270356,cat 270357,airplane 270358,truck 270359,frog 270360,dog 270361,dog 270362,deer 270363,frog 270364,deer 270365,deer 270366,frog 270367,horse 270368,deer 270369,ship 270370,dog 270371,automobile 270372,ship 270373,ship 270374,ship 270375,bird 270376,truck 270377,frog 270378,bird 270379,ship 270380,airplane 270381,dog 270382,cat 270383,dog 270384,deer 270385,automobile 270386,dog 270387,bird 270388,truck 270389,cat 270390,bird 270391,bird 270392,ship 270393,airplane 270394,deer 270395,horse 270396,airplane 270397,truck 270398,truck 270399,cat 270400,horse 270401,automobile 270402,frog 270403,automobile 270404,cat 270405,airplane 270406,automobile 270407,deer 270408,horse 270409,frog 270410,deer 270411,airplane 270412,bird 270413,automobile 270414,dog 270415,cat 270416,horse 270417,dog 270418,automobile 270419,airplane 270420,deer 270421,bird 270422,airplane 270423,dog 270424,cat 270425,frog 270426,dog 270427,horse 270428,deer 270429,frog 270430,cat 270431,cat 270432,dog 270433,ship 270434,truck 270435,horse 270436,truck 270437,deer 270438,ship 270439,cat 270440,dog 270441,dog 270442,airplane 270443,cat 270444,automobile 270445,cat 270446,horse 270447,cat 270448,dog 270449,ship 270450,frog 270451,deer 270452,cat 270453,deer 270454,truck 270455,cat 270456,cat 270457,bird 270458,frog 270459,truck 270460,airplane 270461,deer 270462,automobile 270463,horse 270464,truck 270465,ship 270466,deer 270467,truck 270468,cat 270469,cat 270470,airplane 270471,bird 270472,frog 270473,cat 270474,dog 270475,dog 270476,bird 270477,cat 270478,ship 270479,frog 270480,deer 270481,horse 270482,ship 270483,automobile 270484,frog 270485,horse 270486,deer 270487,ship 270488,cat 270489,cat 270490,ship 270491,horse 270492,dog 270493,deer 270494,deer 270495,truck 270496,bird 270497,frog 270498,truck 270499,deer 270500,dog 270501,dog 270502,airplane 270503,horse 270504,truck 270505,dog 270506,horse 270507,dog 270508,deer 270509,deer 270510,airplane 270511,frog 270512,automobile 270513,cat 270514,deer 270515,dog 270516,ship 270517,horse 270518,frog 270519,airplane 270520,dog 270521,horse 270522,deer 270523,cat 270524,deer 270525,horse 270526,automobile 270527,automobile 270528,deer 270529,airplane 270530,frog 270531,cat 270532,bird 270533,dog 270534,automobile 270535,dog 270536,ship 270537,cat 270538,airplane 270539,airplane 270540,deer 270541,horse 270542,horse 270543,cat 270544,airplane 270545,frog 270546,frog 270547,deer 270548,bird 270549,dog 270550,cat 270551,dog 270552,truck 270553,bird 270554,automobile 270555,automobile 270556,automobile 270557,deer 270558,airplane 270559,truck 270560,horse 270561,frog 270562,horse 270563,truck 270564,airplane 270565,automobile 270566,frog 270567,cat 270568,dog 270569,frog 270570,horse 270571,airplane 270572,bird 270573,ship 270574,frog 270575,truck 270576,deer 270577,frog 270578,horse 270579,horse 270580,cat 270581,truck 270582,airplane 270583,ship 270584,deer 270585,truck 270586,automobile 270587,bird 270588,truck 270589,deer 270590,horse 270591,truck 270592,cat 270593,truck 270594,deer 270595,automobile 270596,truck 270597,frog 270598,horse 270599,dog 270600,cat 270601,airplane 270602,cat 270603,deer 270604,frog 270605,bird 270606,dog 270607,ship 270608,frog 270609,dog 270610,ship 270611,dog 270612,deer 270613,truck 270614,cat 270615,deer 270616,deer 270617,deer 270618,ship 270619,horse 270620,frog 270621,horse 270622,airplane 270623,frog 270624,horse 270625,horse 270626,frog 270627,airplane 270628,airplane 270629,cat 270630,automobile 270631,dog 270632,airplane 270633,frog 270634,ship 270635,horse 270636,dog 270637,truck 270638,bird 270639,horse 270640,deer 270641,ship 270642,frog 270643,deer 270644,deer 270645,deer 270646,truck 270647,cat 270648,horse 270649,automobile 270650,truck 270651,automobile 270652,deer 270653,automobile 270654,dog 270655,dog 270656,truck 270657,frog 270658,frog 270659,frog 270660,cat 270661,ship 270662,cat 270663,frog 270664,frog 270665,cat 270666,airplane 270667,automobile 270668,airplane 270669,truck 270670,deer 270671,cat 270672,frog 270673,truck 270674,automobile 270675,dog 270676,bird 270677,cat 270678,deer 270679,horse 270680,deer 270681,truck 270682,cat 270683,deer 270684,ship 270685,airplane 270686,deer 270687,airplane 270688,truck 270689,deer 270690,bird 270691,ship 270692,deer 270693,truck 270694,airplane 270695,truck 270696,cat 270697,bird 270698,cat 270699,deer 270700,bird 270701,deer 270702,truck 270703,frog 270704,cat 270705,truck 270706,deer 270707,bird 270708,horse 270709,dog 270710,cat 270711,deer 270712,deer 270713,dog 270714,deer 270715,frog 270716,deer 270717,dog 270718,cat 270719,truck 270720,deer 270721,cat 270722,frog 270723,ship 270724,dog 270725,horse 270726,dog 270727,automobile 270728,frog 270729,automobile 270730,cat 270731,cat 270732,horse 270733,dog 270734,airplane 270735,automobile 270736,bird 270737,truck 270738,truck 270739,frog 270740,frog 270741,deer 270742,horse 270743,deer 270744,cat 270745,bird 270746,automobile 270747,frog 270748,frog 270749,deer 270750,deer 270751,automobile 270752,airplane 270753,deer 270754,ship 270755,bird 270756,frog 270757,deer 270758,dog 270759,deer 270760,cat 270761,ship 270762,automobile 270763,deer 270764,truck 270765,frog 270766,cat 270767,frog 270768,truck 270769,frog 270770,automobile 270771,frog 270772,ship 270773,frog 270774,frog 270775,horse 270776,cat 270777,horse 270778,frog 270779,ship 270780,dog 270781,frog 270782,deer 270783,horse 270784,horse 270785,dog 270786,dog 270787,cat 270788,frog 270789,truck 270790,airplane 270791,horse 270792,frog 270793,ship 270794,truck 270795,frog 270796,frog 270797,frog 270798,dog 270799,automobile 270800,cat 270801,deer 270802,cat 270803,dog 270804,horse 270805,dog 270806,cat 270807,horse 270808,deer 270809,bird 270810,cat 270811,airplane 270812,truck 270813,truck 270814,horse 270815,airplane 270816,horse 270817,deer 270818,dog 270819,bird 270820,truck 270821,dog 270822,ship 270823,frog 270824,deer 270825,bird 270826,ship 270827,cat 270828,deer 270829,cat 270830,ship 270831,horse 270832,dog 270833,truck 270834,airplane 270835,deer 270836,cat 270837,automobile 270838,automobile 270839,dog 270840,truck 270841,horse 270842,cat 270843,deer 270844,deer 270845,frog 270846,truck 270847,ship 270848,frog 270849,automobile 270850,frog 270851,deer 270852,deer 270853,truck 270854,deer 270855,horse 270856,truck 270857,deer 270858,dog 270859,bird 270860,horse 270861,frog 270862,frog 270863,airplane 270864,deer 270865,dog 270866,truck 270867,frog 270868,cat 270869,horse 270870,bird 270871,dog 270872,automobile 270873,dog 270874,bird 270875,ship 270876,bird 270877,airplane 270878,cat 270879,truck 270880,cat 270881,airplane 270882,horse 270883,truck 270884,cat 270885,ship 270886,cat 270887,automobile 270888,automobile 270889,horse 270890,deer 270891,horse 270892,dog 270893,cat 270894,dog 270895,cat 270896,ship 270897,frog 270898,dog 270899,cat 270900,cat 270901,ship 270902,truck 270903,cat 270904,horse 270905,horse 270906,deer 270907,airplane 270908,truck 270909,ship 270910,deer 270911,deer 270912,airplane 270913,cat 270914,deer 270915,ship 270916,cat 270917,ship 270918,deer 270919,bird 270920,cat 270921,frog 270922,dog 270923,deer 270924,cat 270925,cat 270926,cat 270927,cat 270928,frog 270929,deer 270930,automobile 270931,bird 270932,frog 270933,ship 270934,automobile 270935,ship 270936,deer 270937,deer 270938,bird 270939,bird 270940,deer 270941,frog 270942,airplane 270943,ship 270944,frog 270945,dog 270946,cat 270947,cat 270948,dog 270949,frog 270950,frog 270951,truck 270952,automobile 270953,cat 270954,cat 270955,truck 270956,ship 270957,automobile 270958,frog 270959,frog 270960,horse 270961,airplane 270962,truck 270963,airplane 270964,cat 270965,truck 270966,cat 270967,airplane 270968,frog 270969,horse 270970,frog 270971,truck 270972,airplane 270973,dog 270974,cat 270975,deer 270976,horse 270977,dog 270978,ship 270979,automobile 270980,deer 270981,bird 270982,horse 270983,airplane 270984,horse 270985,deer 270986,frog 270987,dog 270988,horse 270989,truck 270990,truck 270991,truck 270992,cat 270993,truck 270994,cat 270995,airplane 270996,airplane 270997,bird 270998,frog 270999,bird 271000,frog 271001,ship 271002,horse 271003,cat 271004,cat 271005,automobile 271006,deer 271007,airplane 271008,frog 271009,horse 271010,bird 271011,ship 271012,automobile 271013,dog 271014,cat 271015,cat 271016,ship 271017,dog 271018,ship 271019,dog 271020,dog 271021,horse 271022,frog 271023,truck 271024,truck 271025,airplane 271026,automobile 271027,frog 271028,horse 271029,airplane 271030,dog 271031,ship 271032,dog 271033,deer 271034,bird 271035,truck 271036,automobile 271037,frog 271038,airplane 271039,horse 271040,bird 271041,bird 271042,deer 271043,cat 271044,truck 271045,automobile 271046,cat 271047,frog 271048,frog 271049,truck 271050,frog 271051,horse 271052,truck 271053,frog 271054,bird 271055,ship 271056,truck 271057,cat 271058,bird 271059,deer 271060,truck 271061,cat 271062,cat 271063,deer 271064,horse 271065,airplane 271066,airplane 271067,truck 271068,horse 271069,horse 271070,horse 271071,dog 271072,deer 271073,truck 271074,cat 271075,cat 271076,airplane 271077,ship 271078,deer 271079,horse 271080,deer 271081,ship 271082,deer 271083,dog 271084,cat 271085,horse 271086,horse 271087,bird 271088,deer 271089,truck 271090,automobile 271091,bird 271092,cat 271093,deer 271094,cat 271095,truck 271096,airplane 271097,truck 271098,horse 271099,frog 271100,frog 271101,airplane 271102,automobile 271103,bird 271104,bird 271105,horse 271106,dog 271107,cat 271108,dog 271109,truck 271110,truck 271111,frog 271112,ship 271113,frog 271114,airplane 271115,automobile 271116,dog 271117,truck 271118,deer 271119,cat 271120,frog 271121,frog 271122,horse 271123,dog 271124,truck 271125,bird 271126,horse 271127,deer 271128,airplane 271129,frog 271130,cat 271131,frog 271132,deer 271133,cat 271134,dog 271135,cat 271136,horse 271137,automobile 271138,truck 271139,cat 271140,horse 271141,airplane 271142,horse 271143,horse 271144,ship 271145,airplane 271146,bird 271147,deer 271148,airplane 271149,cat 271150,automobile 271151,bird 271152,deer 271153,airplane 271154,ship 271155,frog 271156,frog 271157,horse 271158,ship 271159,frog 271160,automobile 271161,bird 271162,dog 271163,airplane 271164,dog 271165,airplane 271166,deer 271167,cat 271168,dog 271169,dog 271170,truck 271171,deer 271172,bird 271173,airplane 271174,dog 271175,deer 271176,ship 271177,airplane 271178,ship 271179,frog 271180,airplane 271181,airplane 271182,ship 271183,frog 271184,airplane 271185,ship 271186,cat 271187,airplane 271188,automobile 271189,airplane 271190,horse 271191,dog 271192,deer 271193,cat 271194,deer 271195,cat 271196,truck 271197,bird 271198,truck 271199,deer 271200,deer 271201,bird 271202,truck 271203,automobile 271204,truck 271205,truck 271206,bird 271207,ship 271208,frog 271209,automobile 271210,truck 271211,truck 271212,bird 271213,bird 271214,ship 271215,frog 271216,truck 271217,cat 271218,deer 271219,truck 271220,airplane 271221,truck 271222,deer 271223,truck 271224,bird 271225,deer 271226,frog 271227,deer 271228,truck 271229,truck 271230,truck 271231,bird 271232,airplane 271233,truck 271234,dog 271235,automobile 271236,dog 271237,frog 271238,dog 271239,frog 271240,cat 271241,cat 271242,bird 271243,cat 271244,dog 271245,frog 271246,frog 271247,truck 271248,airplane 271249,automobile 271250,deer 271251,frog 271252,dog 271253,horse 271254,ship 271255,deer 271256,deer 271257,dog 271258,frog 271259,cat 271260,frog 271261,ship 271262,deer 271263,automobile 271264,horse 271265,airplane 271266,deer 271267,bird 271268,cat 271269,horse 271270,airplane 271271,deer 271272,deer 271273,deer 271274,deer 271275,deer 271276,deer 271277,deer 271278,horse 271279,ship 271280,deer 271281,airplane 271282,cat 271283,cat 271284,cat 271285,ship 271286,dog 271287,bird 271288,dog 271289,frog 271290,dog 271291,frog 271292,deer 271293,horse 271294,deer 271295,airplane 271296,ship 271297,dog 271298,deer 271299,ship 271300,dog 271301,frog 271302,bird 271303,deer 271304,deer 271305,dog 271306,horse 271307,automobile 271308,cat 271309,deer 271310,automobile 271311,deer 271312,deer 271313,airplane 271314,dog 271315,frog 271316,ship 271317,truck 271318,airplane 271319,dog 271320,frog 271321,dog 271322,cat 271323,cat 271324,airplane 271325,frog 271326,truck 271327,cat 271328,frog 271329,cat 271330,truck 271331,dog 271332,deer 271333,frog 271334,airplane 271335,automobile 271336,cat 271337,ship 271338,deer 271339,cat 271340,automobile 271341,cat 271342,bird 271343,truck 271344,deer 271345,frog 271346,airplane 271347,ship 271348,truck 271349,airplane 271350,dog 271351,horse 271352,deer 271353,horse 271354,deer 271355,automobile 271356,deer 271357,frog 271358,deer 271359,frog 271360,truck 271361,horse 271362,ship 271363,deer 271364,automobile 271365,frog 271366,dog 271367,frog 271368,cat 271369,bird 271370,airplane 271371,bird 271372,horse 271373,horse 271374,dog 271375,horse 271376,truck 271377,bird 271378,airplane 271379,airplane 271380,frog 271381,ship 271382,dog 271383,horse 271384,horse 271385,bird 271386,ship 271387,automobile 271388,frog 271389,frog 271390,bird 271391,cat 271392,airplane 271393,frog 271394,cat 271395,cat 271396,bird 271397,horse 271398,frog 271399,truck 271400,truck 271401,deer 271402,truck 271403,deer 271404,cat 271405,deer 271406,truck 271407,ship 271408,cat 271409,truck 271410,bird 271411,frog 271412,automobile 271413,deer 271414,ship 271415,dog 271416,cat 271417,horse 271418,bird 271419,ship 271420,ship 271421,bird 271422,frog 271423,ship 271424,truck 271425,truck 271426,automobile 271427,cat 271428,deer 271429,cat 271430,ship 271431,horse 271432,ship 271433,deer 271434,airplane 271435,automobile 271436,bird 271437,bird 271438,ship 271439,cat 271440,ship 271441,airplane 271442,truck 271443,bird 271444,deer 271445,cat 271446,cat 271447,cat 271448,deer 271449,airplane 271450,horse 271451,frog 271452,airplane 271453,horse 271454,cat 271455,airplane 271456,airplane 271457,automobile 271458,cat 271459,automobile 271460,cat 271461,deer 271462,ship 271463,dog 271464,bird 271465,cat 271466,frog 271467,ship 271468,truck 271469,deer 271470,automobile 271471,ship 271472,truck 271473,truck 271474,truck 271475,airplane 271476,dog 271477,deer 271478,bird 271479,frog 271480,automobile 271481,airplane 271482,frog 271483,horse 271484,truck 271485,dog 271486,horse 271487,airplane 271488,cat 271489,horse 271490,cat 271491,cat 271492,frog 271493,deer 271494,bird 271495,truck 271496,airplane 271497,dog 271498,deer 271499,deer 271500,deer 271501,ship 271502,deer 271503,bird 271504,dog 271505,truck 271506,cat 271507,bird 271508,truck 271509,dog 271510,frog 271511,horse 271512,dog 271513,frog 271514,cat 271515,frog 271516,frog 271517,truck 271518,horse 271519,airplane 271520,deer 271521,cat 271522,bird 271523,airplane 271524,deer 271525,deer 271526,truck 271527,dog 271528,dog 271529,cat 271530,truck 271531,bird 271532,truck 271533,deer 271534,deer 271535,cat 271536,dog 271537,airplane 271538,cat 271539,frog 271540,ship 271541,deer 271542,truck 271543,airplane 271544,frog 271545,dog 271546,bird 271547,cat 271548,horse 271549,automobile 271550,bird 271551,horse 271552,bird 271553,cat 271554,cat 271555,cat 271556,automobile 271557,horse 271558,deer 271559,automobile 271560,dog 271561,truck 271562,bird 271563,deer 271564,horse 271565,deer 271566,horse 271567,deer 271568,airplane 271569,dog 271570,dog 271571,deer 271572,ship 271573,cat 271574,frog 271575,frog 271576,bird 271577,airplane 271578,airplane 271579,airplane 271580,deer 271581,automobile 271582,truck 271583,dog 271584,frog 271585,cat 271586,truck 271587,frog 271588,cat 271589,truck 271590,truck 271591,ship 271592,bird 271593,truck 271594,automobile 271595,airplane 271596,truck 271597,horse 271598,bird 271599,frog 271600,cat 271601,deer 271602,truck 271603,airplane 271604,dog 271605,bird 271606,deer 271607,bird 271608,automobile 271609,cat 271610,dog 271611,truck 271612,bird 271613,cat 271614,airplane 271615,frog 271616,cat 271617,frog 271618,automobile 271619,cat 271620,dog 271621,airplane 271622,truck 271623,deer 271624,deer 271625,bird 271626,deer 271627,horse 271628,automobile 271629,dog 271630,bird 271631,cat 271632,airplane 271633,horse 271634,automobile 271635,airplane 271636,cat 271637,bird 271638,automobile 271639,cat 271640,automobile 271641,frog 271642,cat 271643,cat 271644,automobile 271645,deer 271646,cat 271647,automobile 271648,cat 271649,deer 271650,deer 271651,horse 271652,truck 271653,bird 271654,deer 271655,airplane 271656,cat 271657,cat 271658,horse 271659,cat 271660,bird 271661,horse 271662,cat 271663,airplane 271664,horse 271665,frog 271666,cat 271667,horse 271668,airplane 271669,airplane 271670,airplane 271671,ship 271672,truck 271673,cat 271674,bird 271675,frog 271676,truck 271677,deer 271678,truck 271679,frog 271680,dog 271681,frog 271682,truck 271683,dog 271684,truck 271685,horse 271686,frog 271687,frog 271688,ship 271689,automobile 271690,frog 271691,ship 271692,frog 271693,horse 271694,ship 271695,truck 271696,airplane 271697,deer 271698,deer 271699,bird 271700,deer 271701,truck 271702,horse 271703,frog 271704,truck 271705,cat 271706,cat 271707,cat 271708,truck 271709,dog 271710,ship 271711,truck 271712,horse 271713,airplane 271714,deer 271715,truck 271716,bird 271717,frog 271718,ship 271719,bird 271720,airplane 271721,cat 271722,dog 271723,bird 271724,cat 271725,truck 271726,bird 271727,horse 271728,dog 271729,horse 271730,airplane 271731,horse 271732,deer 271733,dog 271734,frog 271735,cat 271736,truck 271737,frog 271738,automobile 271739,cat 271740,cat 271741,bird 271742,bird 271743,dog 271744,frog 271745,automobile 271746,cat 271747,ship 271748,truck 271749,bird 271750,airplane 271751,deer 271752,horse 271753,horse 271754,bird 271755,frog 271756,bird 271757,airplane 271758,deer 271759,frog 271760,horse 271761,frog 271762,frog 271763,airplane 271764,airplane 271765,truck 271766,automobile 271767,cat 271768,deer 271769,deer 271770,airplane 271771,frog 271772,deer 271773,cat 271774,dog 271775,deer 271776,horse 271777,airplane 271778,dog 271779,frog 271780,cat 271781,deer 271782,automobile 271783,truck 271784,bird 271785,horse 271786,cat 271787,cat 271788,frog 271789,ship 271790,truck 271791,dog 271792,automobile 271793,ship 271794,deer 271795,horse 271796,horse 271797,bird 271798,frog 271799,truck 271800,frog 271801,frog 271802,horse 271803,frog 271804,dog 271805,ship 271806,truck 271807,dog 271808,bird 271809,cat 271810,bird 271811,truck 271812,bird 271813,cat 271814,airplane 271815,cat 271816,frog 271817,frog 271818,horse 271819,dog 271820,dog 271821,cat 271822,ship 271823,bird 271824,airplane 271825,ship 271826,frog 271827,automobile 271828,frog 271829,bird 271830,automobile 271831,frog 271832,bird 271833,airplane 271834,ship 271835,airplane 271836,horse 271837,horse 271838,frog 271839,cat 271840,bird 271841,deer 271842,horse 271843,automobile 271844,frog 271845,horse 271846,bird 271847,bird 271848,horse 271849,airplane 271850,deer 271851,truck 271852,cat 271853,ship 271854,airplane 271855,cat 271856,truck 271857,dog 271858,bird 271859,frog 271860,dog 271861,truck 271862,cat 271863,frog 271864,cat 271865,dog 271866,truck 271867,bird 271868,horse 271869,horse 271870,dog 271871,bird 271872,cat 271873,airplane 271874,cat 271875,bird 271876,deer 271877,horse 271878,airplane 271879,truck 271880,horse 271881,horse 271882,automobile 271883,dog 271884,horse 271885,cat 271886,ship 271887,ship 271888,deer 271889,dog 271890,airplane 271891,cat 271892,cat 271893,dog 271894,deer 271895,deer 271896,airplane 271897,bird 271898,frog 271899,ship 271900,automobile 271901,deer 271902,ship 271903,horse 271904,ship 271905,airplane 271906,dog 271907,frog 271908,ship 271909,cat 271910,bird 271911,dog 271912,airplane 271913,bird 271914,automobile 271915,truck 271916,deer 271917,deer 271918,automobile 271919,deer 271920,bird 271921,truck 271922,dog 271923,truck 271924,truck 271925,cat 271926,cat 271927,truck 271928,cat 271929,bird 271930,truck 271931,automobile 271932,cat 271933,frog 271934,deer 271935,truck 271936,dog 271937,automobile 271938,cat 271939,cat 271940,frog 271941,ship 271942,dog 271943,ship 271944,deer 271945,ship 271946,cat 271947,horse 271948,deer 271949,airplane 271950,truck 271951,automobile 271952,automobile 271953,frog 271954,frog 271955,frog 271956,ship 271957,airplane 271958,ship 271959,deer 271960,dog 271961,bird 271962,airplane 271963,airplane 271964,cat 271965,automobile 271966,bird 271967,truck 271968,truck 271969,automobile 271970,truck 271971,deer 271972,truck 271973,deer 271974,cat 271975,cat 271976,frog 271977,deer 271978,bird 271979,deer 271980,frog 271981,airplane 271982,bird 271983,ship 271984,deer 271985,dog 271986,cat 271987,deer 271988,horse 271989,deer 271990,deer 271991,bird 271992,airplane 271993,dog 271994,dog 271995,bird 271996,airplane 271997,ship 271998,horse 271999,ship 272000,horse 272001,ship 272002,truck 272003,deer 272004,cat 272005,horse 272006,horse 272007,airplane 272008,cat 272009,bird 272010,dog 272011,truck 272012,frog 272013,frog 272014,dog 272015,frog 272016,automobile 272017,cat 272018,dog 272019,airplane 272020,truck 272021,cat 272022,cat 272023,bird 272024,truck 272025,horse 272026,deer 272027,truck 272028,horse 272029,airplane 272030,airplane 272031,truck 272032,automobile 272033,bird 272034,ship 272035,deer 272036,ship 272037,frog 272038,automobile 272039,deer 272040,airplane 272041,deer 272042,deer 272043,cat 272044,dog 272045,ship 272046,airplane 272047,horse 272048,deer 272049,airplane 272050,automobile 272051,deer 272052,deer 272053,automobile 272054,airplane 272055,cat 272056,automobile 272057,cat 272058,deer 272059,frog 272060,cat 272061,ship 272062,truck 272063,dog 272064,deer 272065,cat 272066,airplane 272067,automobile 272068,airplane 272069,ship 272070,cat 272071,cat 272072,cat 272073,ship 272074,frog 272075,cat 272076,deer 272077,cat 272078,cat 272079,frog 272080,automobile 272081,horse 272082,ship 272083,bird 272084,ship 272085,dog 272086,truck 272087,airplane 272088,airplane 272089,bird 272090,frog 272091,automobile 272092,ship 272093,deer 272094,dog 272095,cat 272096,truck 272097,bird 272098,deer 272099,cat 272100,bird 272101,horse 272102,automobile 272103,cat 272104,dog 272105,truck 272106,cat 272107,truck 272108,frog 272109,bird 272110,frog 272111,airplane 272112,horse 272113,bird 272114,deer 272115,frog 272116,automobile 272117,airplane 272118,dog 272119,deer 272120,frog 272121,truck 272122,bird 272123,deer 272124,dog 272125,deer 272126,deer 272127,deer 272128,ship 272129,deer 272130,horse 272131,deer 272132,deer 272133,frog 272134,frog 272135,cat 272136,airplane 272137,ship 272138,truck 272139,horse 272140,ship 272141,ship 272142,ship 272143,horse 272144,frog 272145,ship 272146,bird 272147,truck 272148,dog 272149,dog 272150,truck 272151,truck 272152,bird 272153,bird 272154,dog 272155,cat 272156,truck 272157,deer 272158,bird 272159,bird 272160,frog 272161,cat 272162,deer 272163,dog 272164,horse 272165,automobile 272166,frog 272167,cat 272168,cat 272169,horse 272170,horse 272171,dog 272172,bird 272173,cat 272174,bird 272175,automobile 272176,bird 272177,deer 272178,cat 272179,deer 272180,ship 272181,airplane 272182,truck 272183,cat 272184,cat 272185,deer 272186,bird 272187,cat 272188,deer 272189,truck 272190,deer 272191,cat 272192,dog 272193,ship 272194,horse 272195,airplane 272196,deer 272197,dog 272198,airplane 272199,automobile 272200,truck 272201,cat 272202,frog 272203,truck 272204,cat 272205,deer 272206,bird 272207,airplane 272208,frog 272209,truck 272210,truck 272211,horse 272212,airplane 272213,dog 272214,cat 272215,ship 272216,airplane 272217,truck 272218,horse 272219,deer 272220,truck 272221,automobile 272222,dog 272223,dog 272224,airplane 272225,truck 272226,horse 272227,frog 272228,airplane 272229,deer 272230,truck 272231,dog 272232,cat 272233,truck 272234,cat 272235,cat 272236,dog 272237,truck 272238,ship 272239,dog 272240,horse 272241,dog 272242,deer 272243,horse 272244,cat 272245,dog 272246,horse 272247,airplane 272248,bird 272249,horse 272250,airplane 272251,frog 272252,airplane 272253,automobile 272254,ship 272255,frog 272256,bird 272257,cat 272258,frog 272259,automobile 272260,ship 272261,airplane 272262,cat 272263,deer 272264,truck 272265,automobile 272266,truck 272267,bird 272268,frog 272269,ship 272270,deer 272271,cat 272272,bird 272273,horse 272274,airplane 272275,dog 272276,frog 272277,cat 272278,dog 272279,truck 272280,ship 272281,ship 272282,deer 272283,horse 272284,horse 272285,dog 272286,cat 272287,truck 272288,bird 272289,automobile 272290,horse 272291,airplane 272292,dog 272293,frog 272294,frog 272295,cat 272296,deer 272297,dog 272298,deer 272299,bird 272300,frog 272301,airplane 272302,deer 272303,horse 272304,frog 272305,frog 272306,automobile 272307,dog 272308,bird 272309,deer 272310,horse 272311,airplane 272312,deer 272313,cat 272314,dog 272315,deer 272316,deer 272317,horse 272318,frog 272319,ship 272320,frog 272321,truck 272322,cat 272323,horse 272324,horse 272325,ship 272326,cat 272327,automobile 272328,dog 272329,cat 272330,cat 272331,ship 272332,cat 272333,bird 272334,dog 272335,cat 272336,horse 272337,cat 272338,truck 272339,cat 272340,bird 272341,deer 272342,dog 272343,cat 272344,truck 272345,cat 272346,airplane 272347,airplane 272348,frog 272349,truck 272350,deer 272351,cat 272352,deer 272353,bird 272354,deer 272355,frog 272356,truck 272357,horse 272358,horse 272359,airplane 272360,horse 272361,deer 272362,deer 272363,deer 272364,frog 272365,dog 272366,deer 272367,bird 272368,deer 272369,dog 272370,airplane 272371,airplane 272372,cat 272373,cat 272374,truck 272375,bird 272376,horse 272377,horse 272378,frog 272379,airplane 272380,cat 272381,cat 272382,frog 272383,bird 272384,airplane 272385,cat 272386,automobile 272387,horse 272388,cat 272389,airplane 272390,automobile 272391,ship 272392,cat 272393,horse 272394,ship 272395,dog 272396,frog 272397,frog 272398,frog 272399,ship 272400,deer 272401,bird 272402,ship 272403,truck 272404,horse 272405,airplane 272406,horse 272407,ship 272408,automobile 272409,cat 272410,dog 272411,deer 272412,bird 272413,ship 272414,automobile 272415,cat 272416,horse 272417,cat 272418,dog 272419,cat 272420,deer 272421,dog 272422,automobile 272423,airplane 272424,horse 272425,dog 272426,cat 272427,cat 272428,cat 272429,ship 272430,frog 272431,cat 272432,cat 272433,ship 272434,automobile 272435,frog 272436,truck 272437,frog 272438,truck 272439,truck 272440,cat 272441,cat 272442,cat 272443,ship 272444,cat 272445,horse 272446,truck 272447,cat 272448,horse 272449,deer 272450,automobile 272451,dog 272452,deer 272453,ship 272454,dog 272455,ship 272456,deer 272457,airplane 272458,truck 272459,frog 272460,ship 272461,deer 272462,cat 272463,cat 272464,ship 272465,ship 272466,ship 272467,bird 272468,bird 272469,airplane 272470,airplane 272471,horse 272472,truck 272473,bird 272474,horse 272475,horse 272476,horse 272477,frog 272478,cat 272479,bird 272480,horse 272481,dog 272482,automobile 272483,deer 272484,frog 272485,frog 272486,horse 272487,bird 272488,horse 272489,airplane 272490,frog 272491,bird 272492,dog 272493,ship 272494,ship 272495,cat 272496,deer 272497,automobile 272498,ship 272499,cat 272500,horse 272501,bird 272502,frog 272503,horse 272504,truck 272505,deer 272506,ship 272507,bird 272508,truck 272509,airplane 272510,dog 272511,truck 272512,truck 272513,ship 272514,ship 272515,deer 272516,horse 272517,truck 272518,dog 272519,ship 272520,bird 272521,cat 272522,dog 272523,frog 272524,truck 272525,truck 272526,automobile 272527,bird 272528,truck 272529,horse 272530,cat 272531,truck 272532,cat 272533,ship 272534,ship 272535,truck 272536,deer 272537,cat 272538,truck 272539,ship 272540,dog 272541,airplane 272542,airplane 272543,cat 272544,horse 272545,bird 272546,bird 272547,cat 272548,deer 272549,ship 272550,frog 272551,airplane 272552,cat 272553,deer 272554,horse 272555,frog 272556,frog 272557,dog 272558,deer 272559,truck 272560,airplane 272561,truck 272562,frog 272563,deer 272564,deer 272565,deer 272566,airplane 272567,frog 272568,truck 272569,automobile 272570,deer 272571,deer 272572,cat 272573,deer 272574,airplane 272575,airplane 272576,dog 272577,horse 272578,dog 272579,ship 272580,cat 272581,bird 272582,truck 272583,bird 272584,frog 272585,airplane 272586,dog 272587,deer 272588,frog 272589,ship 272590,deer 272591,cat 272592,deer 272593,airplane 272594,deer 272595,ship 272596,bird 272597,airplane 272598,bird 272599,airplane 272600,dog 272601,airplane 272602,automobile 272603,frog 272604,bird 272605,dog 272606,deer 272607,automobile 272608,cat 272609,cat 272610,airplane 272611,cat 272612,ship 272613,horse 272614,truck 272615,ship 272616,airplane 272617,deer 272618,truck 272619,cat 272620,cat 272621,cat 272622,dog 272623,bird 272624,frog 272625,frog 272626,truck 272627,truck 272628,truck 272629,automobile 272630,automobile 272631,horse 272632,frog 272633,horse 272634,frog 272635,deer 272636,frog 272637,ship 272638,airplane 272639,cat 272640,deer 272641,dog 272642,airplane 272643,automobile 272644,deer 272645,bird 272646,airplane 272647,dog 272648,ship 272649,cat 272650,cat 272651,ship 272652,dog 272653,airplane 272654,truck 272655,ship 272656,cat 272657,truck 272658,cat 272659,bird 272660,airplane 272661,bird 272662,automobile 272663,deer 272664,bird 272665,cat 272666,automobile 272667,deer 272668,truck 272669,deer 272670,bird 272671,frog 272672,deer 272673,dog 272674,deer 272675,horse 272676,airplane 272677,cat 272678,truck 272679,dog 272680,horse 272681,cat 272682,bird 272683,truck 272684,cat 272685,frog 272686,frog 272687,dog 272688,frog 272689,airplane 272690,airplane 272691,deer 272692,ship 272693,automobile 272694,automobile 272695,ship 272696,horse 272697,deer 272698,automobile 272699,truck 272700,dog 272701,automobile 272702,bird 272703,cat 272704,deer 272705,frog 272706,deer 272707,deer 272708,bird 272709,automobile 272710,ship 272711,automobile 272712,truck 272713,horse 272714,frog 272715,bird 272716,cat 272717,deer 272718,deer 272719,truck 272720,truck 272721,deer 272722,deer 272723,frog 272724,deer 272725,airplane 272726,horse 272727,frog 272728,deer 272729,truck 272730,frog 272731,bird 272732,cat 272733,airplane 272734,truck 272735,cat 272736,ship 272737,horse 272738,airplane 272739,dog 272740,cat 272741,deer 272742,airplane 272743,truck 272744,horse 272745,automobile 272746,dog 272747,bird 272748,dog 272749,deer 272750,ship 272751,frog 272752,horse 272753,bird 272754,airplane 272755,cat 272756,dog 272757,truck 272758,frog 272759,ship 272760,ship 272761,ship 272762,airplane 272763,frog 272764,frog 272765,cat 272766,cat 272767,automobile 272768,frog 272769,automobile 272770,deer 272771,horse 272772,dog 272773,cat 272774,deer 272775,bird 272776,deer 272777,bird 272778,bird 272779,bird 272780,horse 272781,cat 272782,automobile 272783,airplane 272784,dog 272785,deer 272786,horse 272787,ship 272788,deer 272789,airplane 272790,airplane 272791,frog 272792,deer 272793,truck 272794,deer 272795,horse 272796,horse 272797,airplane 272798,horse 272799,deer 272800,cat 272801,truck 272802,cat 272803,bird 272804,ship 272805,truck 272806,frog 272807,bird 272808,frog 272809,deer 272810,airplane 272811,deer 272812,airplane 272813,automobile 272814,cat 272815,bird 272816,automobile 272817,frog 272818,deer 272819,automobile 272820,ship 272821,frog 272822,ship 272823,ship 272824,frog 272825,bird 272826,bird 272827,cat 272828,deer 272829,dog 272830,frog 272831,automobile 272832,truck 272833,bird 272834,dog 272835,ship 272836,automobile 272837,truck 272838,truck 272839,dog 272840,bird 272841,frog 272842,horse 272843,horse 272844,airplane 272845,automobile 272846,ship 272847,bird 272848,frog 272849,automobile 272850,cat 272851,automobile 272852,bird 272853,bird 272854,dog 272855,deer 272856,automobile 272857,airplane 272858,horse 272859,automobile 272860,dog 272861,deer 272862,horse 272863,automobile 272864,bird 272865,airplane 272866,cat 272867,cat 272868,frog 272869,bird 272870,truck 272871,dog 272872,dog 272873,frog 272874,cat 272875,dog 272876,ship 272877,ship 272878,horse 272879,horse 272880,deer 272881,truck 272882,airplane 272883,bird 272884,automobile 272885,frog 272886,truck 272887,horse 272888,dog 272889,automobile 272890,cat 272891,horse 272892,frog 272893,frog 272894,frog 272895,deer 272896,horse 272897,horse 272898,cat 272899,cat 272900,deer 272901,deer 272902,deer 272903,deer 272904,frog 272905,ship 272906,deer 272907,bird 272908,truck 272909,airplane 272910,frog 272911,cat 272912,ship 272913,deer 272914,deer 272915,automobile 272916,frog 272917,frog 272918,frog 272919,truck 272920,truck 272921,deer 272922,automobile 272923,ship 272924,deer 272925,bird 272926,airplane 272927,automobile 272928,ship 272929,horse 272930,frog 272931,horse 272932,cat 272933,truck 272934,cat 272935,airplane 272936,horse 272937,automobile 272938,dog 272939,automobile 272940,frog 272941,horse 272942,ship 272943,frog 272944,deer 272945,airplane 272946,dog 272947,cat 272948,cat 272949,airplane 272950,horse 272951,airplane 272952,ship 272953,frog 272954,truck 272955,truck 272956,ship 272957,automobile 272958,frog 272959,horse 272960,frog 272961,airplane 272962,airplane 272963,dog 272964,automobile 272965,horse 272966,dog 272967,bird 272968,truck 272969,cat 272970,airplane 272971,frog 272972,ship 272973,deer 272974,deer 272975,horse 272976,truck 272977,ship 272978,deer 272979,dog 272980,horse 272981,ship 272982,ship 272983,frog 272984,cat 272985,automobile 272986,bird 272987,cat 272988,airplane 272989,bird 272990,bird 272991,dog 272992,airplane 272993,deer 272994,deer 272995,truck 272996,airplane 272997,automobile 272998,ship 272999,frog 273000,cat 273001,deer 273002,dog 273003,ship 273004,ship 273005,frog 273006,horse 273007,truck 273008,cat 273009,automobile 273010,bird 273011,bird 273012,ship 273013,cat 273014,deer 273015,dog 273016,bird 273017,frog 273018,dog 273019,automobile 273020,truck 273021,frog 273022,ship 273023,airplane 273024,horse 273025,truck 273026,dog 273027,truck 273028,ship 273029,frog 273030,airplane 273031,ship 273032,cat 273033,ship 273034,frog 273035,airplane 273036,ship 273037,horse 273038,frog 273039,ship 273040,airplane 273041,truck 273042,dog 273043,ship 273044,automobile 273045,automobile 273046,automobile 273047,deer 273048,frog 273049,bird 273050,horse 273051,ship 273052,cat 273053,deer 273054,cat 273055,deer 273056,horse 273057,truck 273058,ship 273059,cat 273060,automobile 273061,deer 273062,frog 273063,truck 273064,bird 273065,bird 273066,horse 273067,frog 273068,bird 273069,bird 273070,frog 273071,cat 273072,cat 273073,cat 273074,dog 273075,bird 273076,bird 273077,cat 273078,truck 273079,bird 273080,airplane 273081,airplane 273082,dog 273083,bird 273084,ship 273085,automobile 273086,airplane 273087,truck 273088,dog 273089,deer 273090,frog 273091,truck 273092,frog 273093,dog 273094,ship 273095,horse 273096,horse 273097,cat 273098,deer 273099,airplane 273100,automobile 273101,cat 273102,dog 273103,cat 273104,ship 273105,airplane 273106,automobile 273107,deer 273108,frog 273109,truck 273110,automobile 273111,deer 273112,deer 273113,truck 273114,ship 273115,bird 273116,deer 273117,dog 273118,dog 273119,horse 273120,cat 273121,deer 273122,automobile 273123,deer 273124,truck 273125,dog 273126,deer 273127,frog 273128,frog 273129,horse 273130,frog 273131,cat 273132,bird 273133,airplane 273134,airplane 273135,frog 273136,cat 273137,truck 273138,ship 273139,airplane 273140,automobile 273141,cat 273142,deer 273143,airplane 273144,dog 273145,dog 273146,bird 273147,truck 273148,airplane 273149,frog 273150,truck 273151,ship 273152,automobile 273153,cat 273154,dog 273155,automobile 273156,ship 273157,cat 273158,truck 273159,ship 273160,cat 273161,frog 273162,deer 273163,automobile 273164,deer 273165,ship 273166,deer 273167,ship 273168,cat 273169,dog 273170,truck 273171,dog 273172,cat 273173,ship 273174,deer 273175,truck 273176,ship 273177,cat 273178,cat 273179,cat 273180,bird 273181,frog 273182,truck 273183,airplane 273184,ship 273185,frog 273186,truck 273187,automobile 273188,frog 273189,cat 273190,automobile 273191,ship 273192,airplane 273193,frog 273194,airplane 273195,deer 273196,dog 273197,frog 273198,dog 273199,cat 273200,dog 273201,deer 273202,ship 273203,frog 273204,bird 273205,bird 273206,deer 273207,automobile 273208,frog 273209,airplane 273210,bird 273211,dog 273212,cat 273213,cat 273214,bird 273215,frog 273216,deer 273217,horse 273218,bird 273219,horse 273220,cat 273221,frog 273222,bird 273223,horse 273224,cat 273225,automobile 273226,frog 273227,dog 273228,truck 273229,ship 273230,cat 273231,truck 273232,airplane 273233,automobile 273234,truck 273235,deer 273236,cat 273237,cat 273238,dog 273239,horse 273240,frog 273241,deer 273242,deer 273243,cat 273244,horse 273245,dog 273246,dog 273247,ship 273248,frog 273249,deer 273250,truck 273251,cat 273252,bird 273253,truck 273254,horse 273255,bird 273256,frog 273257,deer 273258,bird 273259,truck 273260,truck 273261,ship 273262,cat 273263,ship 273264,frog 273265,airplane 273266,dog 273267,cat 273268,automobile 273269,deer 273270,airplane 273271,automobile 273272,cat 273273,airplane 273274,cat 273275,dog 273276,truck 273277,dog 273278,frog 273279,deer 273280,cat 273281,cat 273282,cat 273283,horse 273284,frog 273285,truck 273286,airplane 273287,ship 273288,frog 273289,ship 273290,deer 273291,bird 273292,ship 273293,automobile 273294,dog 273295,truck 273296,deer 273297,cat 273298,deer 273299,ship 273300,airplane 273301,automobile 273302,truck 273303,horse 273304,ship 273305,cat 273306,deer 273307,automobile 273308,cat 273309,bird 273310,truck 273311,automobile 273312,airplane 273313,cat 273314,bird 273315,airplane 273316,dog 273317,cat 273318,ship 273319,frog 273320,dog 273321,automobile 273322,ship 273323,frog 273324,bird 273325,deer 273326,airplane 273327,cat 273328,truck 273329,automobile 273330,cat 273331,ship 273332,frog 273333,deer 273334,cat 273335,bird 273336,horse 273337,airplane 273338,truck 273339,frog 273340,deer 273341,bird 273342,truck 273343,cat 273344,automobile 273345,airplane 273346,bird 273347,frog 273348,ship 273349,dog 273350,truck 273351,horse 273352,ship 273353,deer 273354,frog 273355,deer 273356,cat 273357,deer 273358,airplane 273359,frog 273360,automobile 273361,frog 273362,bird 273363,horse 273364,frog 273365,truck 273366,truck 273367,airplane 273368,airplane 273369,dog 273370,frog 273371,ship 273372,deer 273373,truck 273374,deer 273375,ship 273376,ship 273377,truck 273378,horse 273379,cat 273380,ship 273381,truck 273382,frog 273383,cat 273384,truck 273385,airplane 273386,deer 273387,frog 273388,dog 273389,ship 273390,frog 273391,frog 273392,truck 273393,deer 273394,automobile 273395,automobile 273396,cat 273397,ship 273398,bird 273399,truck 273400,bird 273401,deer 273402,truck 273403,dog 273404,cat 273405,horse 273406,frog 273407,deer 273408,truck 273409,truck 273410,frog 273411,airplane 273412,ship 273413,frog 273414,ship 273415,cat 273416,cat 273417,truck 273418,horse 273419,frog 273420,airplane 273421,horse 273422,truck 273423,airplane 273424,cat 273425,horse 273426,truck 273427,airplane 273428,ship 273429,cat 273430,airplane 273431,airplane 273432,frog 273433,bird 273434,truck 273435,airplane 273436,deer 273437,cat 273438,cat 273439,ship 273440,dog 273441,truck 273442,deer 273443,dog 273444,automobile 273445,deer 273446,horse 273447,airplane 273448,deer 273449,ship 273450,cat 273451,cat 273452,frog 273453,airplane 273454,frog 273455,deer 273456,deer 273457,bird 273458,cat 273459,horse 273460,bird 273461,horse 273462,frog 273463,deer 273464,ship 273465,ship 273466,truck 273467,airplane 273468,deer 273469,truck 273470,deer 273471,frog 273472,airplane 273473,airplane 273474,bird 273475,frog 273476,cat 273477,deer 273478,horse 273479,frog 273480,deer 273481,truck 273482,airplane 273483,truck 273484,ship 273485,cat 273486,ship 273487,truck 273488,deer 273489,deer 273490,ship 273491,cat 273492,automobile 273493,cat 273494,airplane 273495,cat 273496,dog 273497,truck 273498,horse 273499,deer 273500,truck 273501,bird 273502,truck 273503,airplane 273504,automobile 273505,ship 273506,bird 273507,horse 273508,frog 273509,dog 273510,dog 273511,cat 273512,airplane 273513,airplane 273514,deer 273515,truck 273516,truck 273517,dog 273518,bird 273519,bird 273520,airplane 273521,truck 273522,deer 273523,dog 273524,frog 273525,deer 273526,bird 273527,horse 273528,deer 273529,frog 273530,dog 273531,cat 273532,automobile 273533,dog 273534,automobile 273535,horse 273536,deer 273537,ship 273538,bird 273539,horse 273540,horse 273541,bird 273542,horse 273543,bird 273544,truck 273545,cat 273546,bird 273547,automobile 273548,dog 273549,deer 273550,dog 273551,dog 273552,truck 273553,dog 273554,cat 273555,airplane 273556,dog 273557,automobile 273558,bird 273559,frog 273560,airplane 273561,deer 273562,truck 273563,dog 273564,cat 273565,horse 273566,truck 273567,deer 273568,deer 273569,horse 273570,truck 273571,frog 273572,truck 273573,truck 273574,dog 273575,truck 273576,bird 273577,cat 273578,dog 273579,ship 273580,horse 273581,deer 273582,automobile 273583,bird 273584,cat 273585,cat 273586,airplane 273587,cat 273588,deer 273589,deer 273590,deer 273591,bird 273592,truck 273593,deer 273594,bird 273595,cat 273596,cat 273597,cat 273598,frog 273599,airplane 273600,dog 273601,truck 273602,horse 273603,deer 273604,ship 273605,airplane 273606,frog 273607,cat 273608,automobile 273609,bird 273610,truck 273611,airplane 273612,bird 273613,cat 273614,truck 273615,frog 273616,cat 273617,automobile 273618,bird 273619,deer 273620,ship 273621,cat 273622,bird 273623,frog 273624,cat 273625,bird 273626,bird 273627,airplane 273628,cat 273629,truck 273630,truck 273631,frog 273632,frog 273633,deer 273634,truck 273635,frog 273636,frog 273637,deer 273638,truck 273639,frog 273640,airplane 273641,deer 273642,truck 273643,cat 273644,automobile 273645,deer 273646,cat 273647,cat 273648,dog 273649,deer 273650,cat 273651,automobile 273652,cat 273653,ship 273654,bird 273655,dog 273656,airplane 273657,dog 273658,truck 273659,truck 273660,horse 273661,ship 273662,frog 273663,frog 273664,ship 273665,bird 273666,truck 273667,cat 273668,frog 273669,dog 273670,truck 273671,ship 273672,airplane 273673,ship 273674,airplane 273675,truck 273676,bird 273677,deer 273678,deer 273679,cat 273680,frog 273681,bird 273682,frog 273683,horse 273684,bird 273685,frog 273686,horse 273687,dog 273688,ship 273689,bird 273690,dog 273691,frog 273692,deer 273693,frog 273694,dog 273695,automobile 273696,bird 273697,horse 273698,frog 273699,horse 273700,deer 273701,deer 273702,deer 273703,frog 273704,deer 273705,cat 273706,truck 273707,dog 273708,cat 273709,bird 273710,cat 273711,horse 273712,ship 273713,horse 273714,airplane 273715,ship 273716,cat 273717,truck 273718,automobile 273719,cat 273720,cat 273721,cat 273722,deer 273723,cat 273724,bird 273725,truck 273726,deer 273727,dog 273728,frog 273729,dog 273730,bird 273731,truck 273732,dog 273733,ship 273734,frog 273735,truck 273736,truck 273737,truck 273738,ship 273739,truck 273740,ship 273741,bird 273742,horse 273743,deer 273744,cat 273745,dog 273746,horse 273747,bird 273748,automobile 273749,frog 273750,automobile 273751,cat 273752,ship 273753,cat 273754,deer 273755,ship 273756,automobile 273757,bird 273758,bird 273759,frog 273760,cat 273761,automobile 273762,bird 273763,airplane 273764,dog 273765,truck 273766,truck 273767,cat 273768,dog 273769,bird 273770,deer 273771,deer 273772,automobile 273773,cat 273774,cat 273775,dog 273776,horse 273777,deer 273778,airplane 273779,deer 273780,horse 273781,frog 273782,cat 273783,horse 273784,ship 273785,airplane 273786,airplane 273787,truck 273788,horse 273789,truck 273790,bird 273791,bird 273792,deer 273793,automobile 273794,dog 273795,horse 273796,ship 273797,cat 273798,ship 273799,cat 273800,deer 273801,dog 273802,bird 273803,truck 273804,horse 273805,automobile 273806,horse 273807,truck 273808,cat 273809,horse 273810,automobile 273811,horse 273812,deer 273813,airplane 273814,truck 273815,horse 273816,automobile 273817,horse 273818,cat 273819,frog 273820,horse 273821,truck 273822,cat 273823,deer 273824,cat 273825,truck 273826,cat 273827,automobile 273828,cat 273829,airplane 273830,deer 273831,cat 273832,truck 273833,horse 273834,bird 273835,cat 273836,deer 273837,dog 273838,ship 273839,horse 273840,truck 273841,truck 273842,deer 273843,deer 273844,dog 273845,cat 273846,deer 273847,bird 273848,frog 273849,frog 273850,cat 273851,deer 273852,deer 273853,horse 273854,horse 273855,horse 273856,horse 273857,truck 273858,automobile 273859,airplane 273860,bird 273861,cat 273862,automobile 273863,frog 273864,cat 273865,ship 273866,cat 273867,bird 273868,bird 273869,cat 273870,frog 273871,horse 273872,deer 273873,truck 273874,cat 273875,frog 273876,deer 273877,frog 273878,truck 273879,cat 273880,frog 273881,frog 273882,frog 273883,cat 273884,horse 273885,automobile 273886,airplane 273887,cat 273888,deer 273889,frog 273890,dog 273891,cat 273892,deer 273893,airplane 273894,airplane 273895,dog 273896,ship 273897,cat 273898,frog 273899,deer 273900,airplane 273901,dog 273902,deer 273903,bird 273904,deer 273905,truck 273906,horse 273907,automobile 273908,dog 273909,dog 273910,bird 273911,truck 273912,truck 273913,dog 273914,dog 273915,cat 273916,frog 273917,dog 273918,airplane 273919,cat 273920,deer 273921,cat 273922,ship 273923,horse 273924,truck 273925,truck 273926,bird 273927,ship 273928,airplane 273929,bird 273930,frog 273931,deer 273932,deer 273933,deer 273934,airplane 273935,ship 273936,bird 273937,cat 273938,automobile 273939,frog 273940,horse 273941,bird 273942,deer 273943,cat 273944,bird 273945,cat 273946,frog 273947,cat 273948,airplane 273949,automobile 273950,bird 273951,automobile 273952,airplane 273953,cat 273954,dog 273955,dog 273956,deer 273957,deer 273958,automobile 273959,ship 273960,cat 273961,frog 273962,deer 273963,deer 273964,deer 273965,airplane 273966,frog 273967,deer 273968,dog 273969,bird 273970,cat 273971,cat 273972,ship 273973,dog 273974,ship 273975,automobile 273976,bird 273977,frog 273978,cat 273979,horse 273980,bird 273981,deer 273982,dog 273983,cat 273984,horse 273985,bird 273986,cat 273987,automobile 273988,horse 273989,dog 273990,horse 273991,dog 273992,deer 273993,dog 273994,cat 273995,deer 273996,truck 273997,truck 273998,dog 273999,dog 274000,frog 274001,truck 274002,ship 274003,airplane 274004,bird 274005,horse 274006,frog 274007,bird 274008,cat 274009,airplane 274010,bird 274011,cat 274012,cat 274013,ship 274014,dog 274015,ship 274016,cat 274017,automobile 274018,cat 274019,deer 274020,dog 274021,frog 274022,airplane 274023,ship 274024,frog 274025,horse 274026,automobile 274027,truck 274028,dog 274029,airplane 274030,frog 274031,frog 274032,ship 274033,horse 274034,bird 274035,automobile 274036,horse 274037,frog 274038,cat 274039,horse 274040,dog 274041,deer 274042,cat 274043,ship 274044,deer 274045,bird 274046,ship 274047,frog 274048,truck 274049,truck 274050,deer 274051,horse 274052,truck 274053,airplane 274054,bird 274055,cat 274056,cat 274057,frog 274058,truck 274059,cat 274060,frog 274061,cat 274062,deer 274063,automobile 274064,dog 274065,frog 274066,airplane 274067,truck 274068,dog 274069,frog 274070,deer 274071,horse 274072,airplane 274073,frog 274074,deer 274075,truck 274076,airplane 274077,cat 274078,frog 274079,truck 274080,dog 274081,frog 274082,truck 274083,cat 274084,frog 274085,bird 274086,dog 274087,horse 274088,dog 274089,horse 274090,frog 274091,frog 274092,horse 274093,ship 274094,cat 274095,truck 274096,horse 274097,frog 274098,cat 274099,automobile 274100,deer 274101,cat 274102,deer 274103,ship 274104,truck 274105,frog 274106,automobile 274107,automobile 274108,frog 274109,airplane 274110,ship 274111,frog 274112,airplane 274113,dog 274114,cat 274115,frog 274116,dog 274117,cat 274118,ship 274119,deer 274120,deer 274121,deer 274122,dog 274123,ship 274124,automobile 274125,automobile 274126,dog 274127,bird 274128,airplane 274129,frog 274130,horse 274131,cat 274132,ship 274133,automobile 274134,deer 274135,ship 274136,cat 274137,cat 274138,horse 274139,cat 274140,cat 274141,cat 274142,ship 274143,horse 274144,ship 274145,truck 274146,cat 274147,automobile 274148,dog 274149,automobile 274150,airplane 274151,frog 274152,horse 274153,horse 274154,bird 274155,frog 274156,bird 274157,cat 274158,automobile 274159,ship 274160,frog 274161,airplane 274162,cat 274163,deer 274164,bird 274165,horse 274166,deer 274167,cat 274168,bird 274169,ship 274170,horse 274171,ship 274172,ship 274173,airplane 274174,frog 274175,dog 274176,truck 274177,truck 274178,frog 274179,dog 274180,dog 274181,deer 274182,deer 274183,airplane 274184,dog 274185,ship 274186,automobile 274187,truck 274188,truck 274189,bird 274190,airplane 274191,deer 274192,truck 274193,horse 274194,cat 274195,cat 274196,deer 274197,bird 274198,dog 274199,horse 274200,cat 274201,deer 274202,bird 274203,frog 274204,truck 274205,ship 274206,deer 274207,deer 274208,dog 274209,cat 274210,deer 274211,horse 274212,airplane 274213,automobile 274214,bird 274215,automobile 274216,truck 274217,deer 274218,dog 274219,horse 274220,automobile 274221,horse 274222,bird 274223,automobile 274224,ship 274225,dog 274226,airplane 274227,frog 274228,deer 274229,horse 274230,automobile 274231,deer 274232,dog 274233,deer 274234,truck 274235,deer 274236,truck 274237,bird 274238,truck 274239,ship 274240,deer 274241,bird 274242,cat 274243,horse 274244,automobile 274245,bird 274246,deer 274247,frog 274248,truck 274249,truck 274250,bird 274251,automobile 274252,frog 274253,frog 274254,truck 274255,automobile 274256,cat 274257,ship 274258,automobile 274259,dog 274260,truck 274261,horse 274262,bird 274263,frog 274264,truck 274265,truck 274266,ship 274267,truck 274268,cat 274269,cat 274270,ship 274271,cat 274272,ship 274273,cat 274274,bird 274275,ship 274276,airplane 274277,horse 274278,frog 274279,dog 274280,bird 274281,deer 274282,dog 274283,horse 274284,frog 274285,automobile 274286,horse 274287,horse 274288,dog 274289,cat 274290,truck 274291,bird 274292,truck 274293,deer 274294,airplane 274295,truck 274296,automobile 274297,deer 274298,automobile 274299,ship 274300,airplane 274301,cat 274302,horse 274303,automobile 274304,frog 274305,cat 274306,deer 274307,airplane 274308,dog 274309,horse 274310,frog 274311,truck 274312,frog 274313,cat 274314,airplane 274315,airplane 274316,automobile 274317,deer 274318,deer 274319,deer 274320,deer 274321,horse 274322,dog 274323,dog 274324,ship 274325,airplane 274326,cat 274327,bird 274328,airplane 274329,frog 274330,ship 274331,truck 274332,automobile 274333,automobile 274334,deer 274335,airplane 274336,truck 274337,truck 274338,cat 274339,deer 274340,cat 274341,horse 274342,airplane 274343,cat 274344,horse 274345,cat 274346,truck 274347,frog 274348,cat 274349,automobile 274350,horse 274351,cat 274352,deer 274353,horse 274354,deer 274355,bird 274356,airplane 274357,horse 274358,ship 274359,cat 274360,truck 274361,bird 274362,truck 274363,bird 274364,horse 274365,deer 274366,airplane 274367,automobile 274368,dog 274369,bird 274370,automobile 274371,dog 274372,airplane 274373,frog 274374,frog 274375,truck 274376,truck 274377,ship 274378,horse 274379,ship 274380,truck 274381,airplane 274382,truck 274383,cat 274384,dog 274385,dog 274386,ship 274387,deer 274388,airplane 274389,bird 274390,bird 274391,dog 274392,horse 274393,truck 274394,cat 274395,bird 274396,deer 274397,deer 274398,bird 274399,automobile 274400,dog 274401,horse 274402,dog 274403,airplane 274404,cat 274405,cat 274406,dog 274407,dog 274408,dog 274409,truck 274410,frog 274411,bird 274412,cat 274413,frog 274414,airplane 274415,ship 274416,cat 274417,frog 274418,automobile 274419,truck 274420,dog 274421,airplane 274422,dog 274423,automobile 274424,deer 274425,deer 274426,horse 274427,horse 274428,automobile 274429,dog 274430,deer 274431,dog 274432,truck 274433,horse 274434,bird 274435,airplane 274436,truck 274437,cat 274438,horse 274439,deer 274440,bird 274441,airplane 274442,cat 274443,ship 274444,dog 274445,cat 274446,truck 274447,deer 274448,airplane 274449,cat 274450,truck 274451,truck 274452,truck 274453,cat 274454,cat 274455,truck 274456,frog 274457,truck 274458,deer 274459,deer 274460,horse 274461,deer 274462,cat 274463,deer 274464,horse 274465,bird 274466,airplane 274467,automobile 274468,automobile 274469,automobile 274470,dog 274471,deer 274472,horse 274473,frog 274474,cat 274475,deer 274476,ship 274477,truck 274478,deer 274479,frog 274480,cat 274481,deer 274482,horse 274483,deer 274484,deer 274485,airplane 274486,horse 274487,dog 274488,cat 274489,dog 274490,ship 274491,truck 274492,truck 274493,dog 274494,airplane 274495,cat 274496,dog 274497,bird 274498,deer 274499,dog 274500,cat 274501,airplane 274502,airplane 274503,cat 274504,dog 274505,truck 274506,deer 274507,deer 274508,airplane 274509,cat 274510,cat 274511,deer 274512,deer 274513,cat 274514,cat 274515,automobile 274516,deer 274517,deer 274518,bird 274519,truck 274520,automobile 274521,airplane 274522,bird 274523,cat 274524,horse 274525,cat 274526,horse 274527,horse 274528,automobile 274529,cat 274530,deer 274531,deer 274532,deer 274533,frog 274534,automobile 274535,horse 274536,automobile 274537,horse 274538,airplane 274539,cat 274540,dog 274541,automobile 274542,truck 274543,truck 274544,airplane 274545,horse 274546,truck 274547,horse 274548,deer 274549,bird 274550,cat 274551,deer 274552,airplane 274553,dog 274554,cat 274555,deer 274556,deer 274557,dog 274558,cat 274559,automobile 274560,cat 274561,frog 274562,deer 274563,deer 274564,automobile 274565,airplane 274566,horse 274567,airplane 274568,deer 274569,deer 274570,airplane 274571,airplane 274572,truck 274573,dog 274574,deer 274575,ship 274576,airplane 274577,deer 274578,truck 274579,deer 274580,airplane 274581,truck 274582,dog 274583,ship 274584,ship 274585,truck 274586,dog 274587,horse 274588,frog 274589,automobile 274590,truck 274591,automobile 274592,ship 274593,frog 274594,bird 274595,bird 274596,deer 274597,horse 274598,truck 274599,cat 274600,bird 274601,truck 274602,dog 274603,truck 274604,frog 274605,cat 274606,airplane 274607,deer 274608,cat 274609,frog 274610,bird 274611,cat 274612,deer 274613,bird 274614,truck 274615,dog 274616,bird 274617,automobile 274618,airplane 274619,cat 274620,truck 274621,deer 274622,frog 274623,airplane 274624,truck 274625,deer 274626,airplane 274627,truck 274628,cat 274629,dog 274630,automobile 274631,deer 274632,ship 274633,cat 274634,dog 274635,ship 274636,automobile 274637,horse 274638,automobile 274639,bird 274640,frog 274641,frog 274642,bird 274643,truck 274644,deer 274645,ship 274646,truck 274647,deer 274648,cat 274649,frog 274650,ship 274651,bird 274652,deer 274653,ship 274654,airplane 274655,deer 274656,airplane 274657,ship 274658,airplane 274659,horse 274660,deer 274661,ship 274662,ship 274663,cat 274664,frog 274665,deer 274666,truck 274667,deer 274668,deer 274669,truck 274670,dog 274671,deer 274672,horse 274673,automobile 274674,cat 274675,cat 274676,cat 274677,dog 274678,ship 274679,bird 274680,truck 274681,ship 274682,cat 274683,dog 274684,dog 274685,airplane 274686,cat 274687,airplane 274688,dog 274689,deer 274690,deer 274691,truck 274692,cat 274693,truck 274694,frog 274695,ship 274696,airplane 274697,dog 274698,dog 274699,bird 274700,dog 274701,cat 274702,dog 274703,cat 274704,ship 274705,frog 274706,deer 274707,deer 274708,automobile 274709,dog 274710,cat 274711,horse 274712,horse 274713,frog 274714,deer 274715,bird 274716,airplane 274717,cat 274718,dog 274719,frog 274720,deer 274721,ship 274722,ship 274723,ship 274724,bird 274725,cat 274726,deer 274727,ship 274728,cat 274729,airplane 274730,ship 274731,dog 274732,dog 274733,horse 274734,dog 274735,ship 274736,ship 274737,cat 274738,airplane 274739,dog 274740,airplane 274741,frog 274742,ship 274743,horse 274744,ship 274745,automobile 274746,airplane 274747,ship 274748,bird 274749,airplane 274750,deer 274751,horse 274752,airplane 274753,bird 274754,bird 274755,horse 274756,horse 274757,automobile 274758,deer 274759,cat 274760,dog 274761,bird 274762,cat 274763,deer 274764,deer 274765,truck 274766,dog 274767,airplane 274768,deer 274769,truck 274770,deer 274771,dog 274772,truck 274773,truck 274774,bird 274775,deer 274776,cat 274777,horse 274778,frog 274779,truck 274780,horse 274781,truck 274782,deer 274783,cat 274784,dog 274785,truck 274786,truck 274787,cat 274788,horse 274789,horse 274790,dog 274791,deer 274792,dog 274793,deer 274794,truck 274795,cat 274796,frog 274797,frog 274798,deer 274799,truck 274800,dog 274801,airplane 274802,bird 274803,frog 274804,automobile 274805,deer 274806,deer 274807,bird 274808,horse 274809,ship 274810,horse 274811,cat 274812,airplane 274813,cat 274814,dog 274815,deer 274816,dog 274817,cat 274818,airplane 274819,deer 274820,truck 274821,bird 274822,deer 274823,frog 274824,bird 274825,cat 274826,cat 274827,airplane 274828,deer 274829,horse 274830,cat 274831,horse 274832,bird 274833,bird 274834,dog 274835,horse 274836,truck 274837,cat 274838,truck 274839,cat 274840,bird 274841,horse 274842,frog 274843,frog 274844,dog 274845,dog 274846,truck 274847,airplane 274848,bird 274849,truck 274850,cat 274851,truck 274852,dog 274853,horse 274854,truck 274855,deer 274856,bird 274857,automobile 274858,truck 274859,automobile 274860,airplane 274861,automobile 274862,truck 274863,truck 274864,deer 274865,frog 274866,deer 274867,deer 274868,dog 274869,truck 274870,dog 274871,horse 274872,deer 274873,frog 274874,ship 274875,frog 274876,cat 274877,deer 274878,cat 274879,ship 274880,cat 274881,cat 274882,airplane 274883,frog 274884,ship 274885,deer 274886,deer 274887,frog 274888,frog 274889,cat 274890,ship 274891,ship 274892,cat 274893,truck 274894,bird 274895,frog 274896,airplane 274897,airplane 274898,bird 274899,dog 274900,frog 274901,horse 274902,automobile 274903,truck 274904,bird 274905,airplane 274906,automobile 274907,deer 274908,dog 274909,cat 274910,cat 274911,deer 274912,ship 274913,horse 274914,automobile 274915,cat 274916,cat 274917,truck 274918,deer 274919,ship 274920,cat 274921,cat 274922,cat 274923,airplane 274924,truck 274925,horse 274926,truck 274927,horse 274928,truck 274929,dog 274930,automobile 274931,deer 274932,cat 274933,horse 274934,truck 274935,frog 274936,cat 274937,automobile 274938,horse 274939,horse 274940,deer 274941,cat 274942,bird 274943,cat 274944,bird 274945,deer 274946,frog 274947,frog 274948,cat 274949,deer 274950,cat 274951,cat 274952,frog 274953,bird 274954,airplane 274955,horse 274956,cat 274957,horse 274958,cat 274959,dog 274960,bird 274961,airplane 274962,airplane 274963,airplane 274964,ship 274965,deer 274966,automobile 274967,ship 274968,bird 274969,cat 274970,automobile 274971,horse 274972,bird 274973,bird 274974,cat 274975,cat 274976,horse 274977,frog 274978,horse 274979,bird 274980,frog 274981,ship 274982,automobile 274983,frog 274984,dog 274985,cat 274986,ship 274987,frog 274988,airplane 274989,horse 274990,bird 274991,horse 274992,dog 274993,cat 274994,cat 274995,airplane 274996,cat 274997,automobile 274998,dog 274999,horse 275000,cat 275001,deer 275002,airplane 275003,cat 275004,deer 275005,cat 275006,airplane 275007,frog 275008,airplane 275009,horse 275010,bird 275011,truck 275012,truck 275013,frog 275014,deer 275015,dog 275016,cat 275017,deer 275018,ship 275019,frog 275020,frog 275021,cat 275022,truck 275023,dog 275024,horse 275025,horse 275026,truck 275027,dog 275028,deer 275029,dog 275030,cat 275031,airplane 275032,dog 275033,frog 275034,automobile 275035,horse 275036,frog 275037,bird 275038,airplane 275039,airplane 275040,deer 275041,deer 275042,deer 275043,frog 275044,deer 275045,horse 275046,truck 275047,frog 275048,ship 275049,ship 275050,bird 275051,dog 275052,ship 275053,airplane 275054,cat 275055,bird 275056,horse 275057,frog 275058,cat 275059,airplane 275060,dog 275061,truck 275062,bird 275063,airplane 275064,deer 275065,deer 275066,bird 275067,automobile 275068,cat 275069,frog 275070,deer 275071,ship 275072,bird 275073,dog 275074,truck 275075,truck 275076,bird 275077,deer 275078,truck 275079,dog 275080,frog 275081,horse 275082,dog 275083,cat 275084,deer 275085,automobile 275086,dog 275087,frog 275088,ship 275089,truck 275090,bird 275091,cat 275092,airplane 275093,cat 275094,ship 275095,deer 275096,frog 275097,frog 275098,automobile 275099,frog 275100,horse 275101,ship 275102,truck 275103,ship 275104,truck 275105,deer 275106,bird 275107,horse 275108,ship 275109,ship 275110,truck 275111,ship 275112,cat 275113,ship 275114,horse 275115,ship 275116,deer 275117,cat 275118,airplane 275119,dog 275120,automobile 275121,frog 275122,bird 275123,frog 275124,cat 275125,deer 275126,truck 275127,dog 275128,dog 275129,frog 275130,dog 275131,horse 275132,bird 275133,deer 275134,airplane 275135,frog 275136,cat 275137,cat 275138,truck 275139,ship 275140,cat 275141,bird 275142,cat 275143,cat 275144,airplane 275145,horse 275146,bird 275147,truck 275148,automobile 275149,automobile 275150,deer 275151,automobile 275152,dog 275153,ship 275154,cat 275155,dog 275156,deer 275157,ship 275158,deer 275159,bird 275160,frog 275161,automobile 275162,bird 275163,deer 275164,dog 275165,dog 275166,deer 275167,dog 275168,dog 275169,cat 275170,airplane 275171,horse 275172,dog 275173,horse 275174,cat 275175,airplane 275176,dog 275177,deer 275178,cat 275179,cat 275180,airplane 275181,deer 275182,horse 275183,cat 275184,cat 275185,cat 275186,ship 275187,dog 275188,frog 275189,dog 275190,bird 275191,ship 275192,dog 275193,dog 275194,truck 275195,horse 275196,truck 275197,cat 275198,ship 275199,cat 275200,deer 275201,dog 275202,cat 275203,frog 275204,truck 275205,dog 275206,horse 275207,deer 275208,ship 275209,horse 275210,deer 275211,airplane 275212,automobile 275213,truck 275214,frog 275215,airplane 275216,dog 275217,truck 275218,bird 275219,frog 275220,deer 275221,frog 275222,automobile 275223,bird 275224,automobile 275225,automobile 275226,frog 275227,cat 275228,deer 275229,airplane 275230,horse 275231,horse 275232,ship 275233,cat 275234,horse 275235,deer 275236,airplane 275237,automobile 275238,truck 275239,cat 275240,airplane 275241,airplane 275242,airplane 275243,cat 275244,truck 275245,truck 275246,deer 275247,ship 275248,bird 275249,deer 275250,automobile 275251,horse 275252,ship 275253,dog 275254,automobile 275255,frog 275256,truck 275257,bird 275258,frog 275259,horse 275260,cat 275261,truck 275262,deer 275263,dog 275264,cat 275265,frog 275266,cat 275267,airplane 275268,truck 275269,bird 275270,dog 275271,frog 275272,horse 275273,dog 275274,frog 275275,automobile 275276,truck 275277,dog 275278,truck 275279,cat 275280,dog 275281,airplane 275282,dog 275283,bird 275284,dog 275285,horse 275286,horse 275287,truck 275288,deer 275289,bird 275290,cat 275291,airplane 275292,deer 275293,deer 275294,horse 275295,truck 275296,frog 275297,truck 275298,deer 275299,frog 275300,cat 275301,bird 275302,dog 275303,frog 275304,cat 275305,truck 275306,frog 275307,deer 275308,airplane 275309,cat 275310,dog 275311,horse 275312,truck 275313,bird 275314,dog 275315,bird 275316,frog 275317,cat 275318,frog 275319,truck 275320,automobile 275321,deer 275322,deer 275323,cat 275324,dog 275325,cat 275326,horse 275327,ship 275328,ship 275329,deer 275330,truck 275331,bird 275332,deer 275333,horse 275334,ship 275335,bird 275336,airplane 275337,dog 275338,dog 275339,horse 275340,ship 275341,airplane 275342,bird 275343,ship 275344,truck 275345,cat 275346,deer 275347,horse 275348,bird 275349,bird 275350,frog 275351,airplane 275352,automobile 275353,deer 275354,truck 275355,truck 275356,dog 275357,deer 275358,frog 275359,airplane 275360,truck 275361,airplane 275362,airplane 275363,truck 275364,cat 275365,dog 275366,airplane 275367,cat 275368,frog 275369,truck 275370,dog 275371,airplane 275372,deer 275373,deer 275374,dog 275375,deer 275376,horse 275377,truck 275378,dog 275379,bird 275380,bird 275381,bird 275382,cat 275383,dog 275384,dog 275385,deer 275386,airplane 275387,deer 275388,horse 275389,dog 275390,truck 275391,frog 275392,cat 275393,airplane 275394,bird 275395,automobile 275396,dog 275397,bird 275398,ship 275399,frog 275400,truck 275401,deer 275402,dog 275403,cat 275404,ship 275405,cat 275406,cat 275407,frog 275408,cat 275409,cat 275410,deer 275411,ship 275412,bird 275413,cat 275414,horse 275415,cat 275416,horse 275417,cat 275418,truck 275419,frog 275420,ship 275421,airplane 275422,airplane 275423,airplane 275424,ship 275425,cat 275426,cat 275427,cat 275428,horse 275429,frog 275430,automobile 275431,bird 275432,deer 275433,ship 275434,ship 275435,automobile 275436,cat 275437,deer 275438,ship 275439,automobile 275440,deer 275441,automobile 275442,dog 275443,cat 275444,cat 275445,truck 275446,cat 275447,bird 275448,deer 275449,horse 275450,ship 275451,bird 275452,ship 275453,frog 275454,airplane 275455,frog 275456,horse 275457,horse 275458,horse 275459,bird 275460,ship 275461,frog 275462,deer 275463,automobile 275464,deer 275465,frog 275466,horse 275467,dog 275468,cat 275469,frog 275470,truck 275471,airplane 275472,airplane 275473,cat 275474,dog 275475,ship 275476,ship 275477,horse 275478,deer 275479,dog 275480,cat 275481,bird 275482,deer 275483,dog 275484,cat 275485,ship 275486,cat 275487,truck 275488,bird 275489,cat 275490,deer 275491,truck 275492,cat 275493,bird 275494,automobile 275495,cat 275496,cat 275497,airplane 275498,truck 275499,truck 275500,horse 275501,truck 275502,frog 275503,cat 275504,bird 275505,bird 275506,bird 275507,bird 275508,automobile 275509,frog 275510,truck 275511,bird 275512,airplane 275513,dog 275514,deer 275515,deer 275516,frog 275517,dog 275518,horse 275519,deer 275520,truck 275521,bird 275522,frog 275523,automobile 275524,automobile 275525,automobile 275526,horse 275527,dog 275528,dog 275529,deer 275530,ship 275531,deer 275532,bird 275533,bird 275534,cat 275535,airplane 275536,frog 275537,cat 275538,automobile 275539,truck 275540,airplane 275541,cat 275542,horse 275543,cat 275544,frog 275545,frog 275546,deer 275547,frog 275548,dog 275549,ship 275550,automobile 275551,deer 275552,deer 275553,frog 275554,deer 275555,cat 275556,cat 275557,cat 275558,horse 275559,automobile 275560,deer 275561,automobile 275562,cat 275563,truck 275564,cat 275565,frog 275566,deer 275567,cat 275568,deer 275569,truck 275570,airplane 275571,horse 275572,dog 275573,truck 275574,airplane 275575,truck 275576,deer 275577,bird 275578,automobile 275579,frog 275580,horse 275581,dog 275582,truck 275583,cat 275584,bird 275585,cat 275586,bird 275587,frog 275588,frog 275589,cat 275590,truck 275591,frog 275592,cat 275593,bird 275594,automobile 275595,frog 275596,airplane 275597,horse 275598,frog 275599,horse 275600,frog 275601,bird 275602,horse 275603,horse 275604,deer 275605,deer 275606,truck 275607,dog 275608,airplane 275609,deer 275610,frog 275611,airplane 275612,ship 275613,horse 275614,deer 275615,automobile 275616,airplane 275617,horse 275618,horse 275619,deer 275620,cat 275621,frog 275622,frog 275623,horse 275624,airplane 275625,ship 275626,dog 275627,deer 275628,cat 275629,airplane 275630,frog 275631,bird 275632,deer 275633,cat 275634,airplane 275635,airplane 275636,bird 275637,deer 275638,airplane 275639,horse 275640,frog 275641,truck 275642,automobile 275643,deer 275644,deer 275645,deer 275646,deer 275647,ship 275648,cat 275649,truck 275650,dog 275651,truck 275652,cat 275653,bird 275654,airplane 275655,cat 275656,horse 275657,frog 275658,bird 275659,dog 275660,horse 275661,deer 275662,airplane 275663,deer 275664,deer 275665,dog 275666,dog 275667,frog 275668,frog 275669,frog 275670,horse 275671,cat 275672,deer 275673,deer 275674,cat 275675,airplane 275676,cat 275677,cat 275678,bird 275679,automobile 275680,airplane 275681,cat 275682,dog 275683,bird 275684,dog 275685,cat 275686,ship 275687,bird 275688,bird 275689,deer 275690,dog 275691,dog 275692,automobile 275693,ship 275694,truck 275695,cat 275696,ship 275697,frog 275698,bird 275699,deer 275700,frog 275701,horse 275702,truck 275703,cat 275704,frog 275705,dog 275706,deer 275707,truck 275708,bird 275709,airplane 275710,deer 275711,ship 275712,cat 275713,truck 275714,ship 275715,dog 275716,dog 275717,frog 275718,horse 275719,frog 275720,frog 275721,cat 275722,cat 275723,ship 275724,dog 275725,ship 275726,deer 275727,horse 275728,airplane 275729,cat 275730,airplane 275731,truck 275732,airplane 275733,truck 275734,deer 275735,frog 275736,horse 275737,ship 275738,bird 275739,airplane 275740,automobile 275741,horse 275742,ship 275743,dog 275744,cat 275745,deer 275746,deer 275747,ship 275748,horse 275749,truck 275750,dog 275751,frog 275752,dog 275753,dog 275754,ship 275755,horse 275756,cat 275757,ship 275758,frog 275759,frog 275760,airplane 275761,automobile 275762,ship 275763,frog 275764,ship 275765,cat 275766,frog 275767,dog 275768,automobile 275769,airplane 275770,dog 275771,truck 275772,ship 275773,frog 275774,automobile 275775,dog 275776,deer 275777,cat 275778,automobile 275779,horse 275780,frog 275781,frog 275782,automobile 275783,bird 275784,dog 275785,automobile 275786,deer 275787,truck 275788,frog 275789,ship 275790,dog 275791,dog 275792,frog 275793,deer 275794,ship 275795,automobile 275796,airplane 275797,airplane 275798,dog 275799,automobile 275800,dog 275801,automobile 275802,ship 275803,horse 275804,airplane 275805,ship 275806,deer 275807,bird 275808,cat 275809,airplane 275810,airplane 275811,airplane 275812,ship 275813,deer 275814,bird 275815,automobile 275816,dog 275817,cat 275818,ship 275819,dog 275820,deer 275821,cat 275822,ship 275823,cat 275824,bird 275825,truck 275826,dog 275827,deer 275828,deer 275829,dog 275830,dog 275831,deer 275832,automobile 275833,truck 275834,airplane 275835,horse 275836,airplane 275837,automobile 275838,deer 275839,cat 275840,horse 275841,truck 275842,deer 275843,dog 275844,automobile 275845,bird 275846,dog 275847,automobile 275848,cat 275849,frog 275850,horse 275851,truck 275852,horse 275853,frog 275854,cat 275855,dog 275856,deer 275857,airplane 275858,ship 275859,truck 275860,dog 275861,bird 275862,frog 275863,deer 275864,deer 275865,horse 275866,airplane 275867,automobile 275868,deer 275869,dog 275870,dog 275871,horse 275872,deer 275873,deer 275874,cat 275875,deer 275876,horse 275877,airplane 275878,deer 275879,deer 275880,dog 275881,dog 275882,cat 275883,airplane 275884,deer 275885,ship 275886,deer 275887,ship 275888,deer 275889,dog 275890,cat 275891,frog 275892,dog 275893,dog 275894,cat 275895,cat 275896,frog 275897,dog 275898,bird 275899,deer 275900,automobile 275901,ship 275902,airplane 275903,automobile 275904,bird 275905,bird 275906,cat 275907,airplane 275908,airplane 275909,horse 275910,bird 275911,dog 275912,truck 275913,cat 275914,cat 275915,frog 275916,frog 275917,cat 275918,cat 275919,bird 275920,deer 275921,bird 275922,deer 275923,ship 275924,truck 275925,frog 275926,truck 275927,dog 275928,deer 275929,deer 275930,airplane 275931,horse 275932,ship 275933,dog 275934,deer 275935,bird 275936,deer 275937,dog 275938,truck 275939,cat 275940,deer 275941,cat 275942,bird 275943,ship 275944,horse 275945,cat 275946,frog 275947,bird 275948,airplane 275949,deer 275950,cat 275951,dog 275952,frog 275953,truck 275954,truck 275955,ship 275956,deer 275957,deer 275958,dog 275959,ship 275960,truck 275961,frog 275962,horse 275963,automobile 275964,cat 275965,truck 275966,automobile 275967,truck 275968,frog 275969,dog 275970,airplane 275971,automobile 275972,dog 275973,dog 275974,deer 275975,ship 275976,truck 275977,truck 275978,ship 275979,cat 275980,airplane 275981,frog 275982,dog 275983,ship 275984,airplane 275985,truck 275986,truck 275987,dog 275988,frog 275989,horse 275990,cat 275991,bird 275992,dog 275993,bird 275994,automobile 275995,frog 275996,ship 275997,truck 275998,truck 275999,horse 276000,horse 276001,deer 276002,bird 276003,deer 276004,deer 276005,cat 276006,ship 276007,deer 276008,deer 276009,truck 276010,airplane 276011,dog 276012,frog 276013,ship 276014,cat 276015,automobile 276016,bird 276017,bird 276018,dog 276019,dog 276020,frog 276021,cat 276022,horse 276023,airplane 276024,dog 276025,deer 276026,dog 276027,ship 276028,dog 276029,horse 276030,horse 276031,ship 276032,horse 276033,deer 276034,bird 276035,automobile 276036,horse 276037,horse 276038,airplane 276039,airplane 276040,cat 276041,cat 276042,automobile 276043,truck 276044,airplane 276045,cat 276046,frog 276047,cat 276048,truck 276049,deer 276050,automobile 276051,deer 276052,bird 276053,automobile 276054,truck 276055,frog 276056,truck 276057,horse 276058,airplane 276059,truck 276060,cat 276061,ship 276062,automobile 276063,cat 276064,deer 276065,dog 276066,automobile 276067,automobile 276068,frog 276069,automobile 276070,airplane 276071,horse 276072,bird 276073,deer 276074,frog 276075,horse 276076,deer 276077,frog 276078,horse 276079,frog 276080,airplane 276081,horse 276082,bird 276083,deer 276084,automobile 276085,airplane 276086,horse 276087,bird 276088,dog 276089,truck 276090,truck 276091,deer 276092,ship 276093,truck 276094,bird 276095,cat 276096,cat 276097,horse 276098,truck 276099,deer 276100,horse 276101,dog 276102,bird 276103,horse 276104,horse 276105,airplane 276106,frog 276107,cat 276108,ship 276109,deer 276110,deer 276111,bird 276112,cat 276113,automobile 276114,cat 276115,horse 276116,cat 276117,ship 276118,ship 276119,airplane 276120,bird 276121,cat 276122,cat 276123,automobile 276124,frog 276125,cat 276126,cat 276127,truck 276128,truck 276129,automobile 276130,airplane 276131,airplane 276132,deer 276133,deer 276134,cat 276135,ship 276136,dog 276137,airplane 276138,frog 276139,horse 276140,frog 276141,dog 276142,cat 276143,frog 276144,ship 276145,dog 276146,bird 276147,horse 276148,airplane 276149,frog 276150,cat 276151,deer 276152,automobile 276153,horse 276154,automobile 276155,deer 276156,truck 276157,cat 276158,frog 276159,truck 276160,airplane 276161,frog 276162,cat 276163,deer 276164,automobile 276165,deer 276166,deer 276167,horse 276168,deer 276169,horse 276170,horse 276171,ship 276172,ship 276173,automobile 276174,horse 276175,truck 276176,frog 276177,deer 276178,horse 276179,dog 276180,truck 276181,frog 276182,bird 276183,automobile 276184,airplane 276185,deer 276186,deer 276187,ship 276188,ship 276189,horse 276190,airplane 276191,deer 276192,bird 276193,dog 276194,airplane 276195,truck 276196,ship 276197,deer 276198,cat 276199,deer 276200,horse 276201,automobile 276202,truck 276203,bird 276204,airplane 276205,cat 276206,bird 276207,dog 276208,cat 276209,cat 276210,cat 276211,dog 276212,ship 276213,truck 276214,airplane 276215,dog 276216,truck 276217,truck 276218,truck 276219,airplane 276220,horse 276221,airplane 276222,airplane 276223,airplane 276224,truck 276225,dog 276226,automobile 276227,bird 276228,frog 276229,horse 276230,ship 276231,airplane 276232,frog 276233,cat 276234,frog 276235,deer 276236,airplane 276237,dog 276238,horse 276239,airplane 276240,frog 276241,truck 276242,airplane 276243,deer 276244,truck 276245,automobile 276246,truck 276247,ship 276248,bird 276249,cat 276250,horse 276251,deer 276252,ship 276253,frog 276254,automobile 276255,dog 276256,airplane 276257,deer 276258,frog 276259,automobile 276260,horse 276261,cat 276262,dog 276263,truck 276264,deer 276265,truck 276266,airplane 276267,cat 276268,cat 276269,cat 276270,frog 276271,bird 276272,truck 276273,dog 276274,airplane 276275,deer 276276,frog 276277,truck 276278,airplane 276279,dog 276280,automobile 276281,frog 276282,deer 276283,dog 276284,truck 276285,bird 276286,truck 276287,cat 276288,airplane 276289,ship 276290,frog 276291,dog 276292,deer 276293,deer 276294,ship 276295,deer 276296,horse 276297,ship 276298,cat 276299,cat 276300,deer 276301,dog 276302,deer 276303,airplane 276304,bird 276305,frog 276306,deer 276307,dog 276308,frog 276309,airplane 276310,deer 276311,bird 276312,horse 276313,truck 276314,bird 276315,truck 276316,bird 276317,automobile 276318,ship 276319,cat 276320,bird 276321,dog 276322,automobile 276323,cat 276324,bird 276325,deer 276326,ship 276327,truck 276328,ship 276329,deer 276330,ship 276331,cat 276332,bird 276333,airplane 276334,bird 276335,cat 276336,frog 276337,ship 276338,deer 276339,truck 276340,cat 276341,truck 276342,cat 276343,bird 276344,dog 276345,automobile 276346,bird 276347,automobile 276348,truck 276349,cat 276350,truck 276351,cat 276352,dog 276353,dog 276354,frog 276355,bird 276356,dog 276357,frog 276358,cat 276359,truck 276360,deer 276361,airplane 276362,deer 276363,automobile 276364,ship 276365,truck 276366,automobile 276367,cat 276368,cat 276369,truck 276370,truck 276371,airplane 276372,deer 276373,bird 276374,frog 276375,bird 276376,ship 276377,cat 276378,frog 276379,automobile 276380,automobile 276381,dog 276382,cat 276383,automobile 276384,bird 276385,automobile 276386,truck 276387,airplane 276388,ship 276389,cat 276390,airplane 276391,truck 276392,airplane 276393,dog 276394,frog 276395,cat 276396,automobile 276397,cat 276398,deer 276399,automobile 276400,truck 276401,truck 276402,bird 276403,dog 276404,dog 276405,ship 276406,airplane 276407,dog 276408,cat 276409,horse 276410,frog 276411,deer 276412,automobile 276413,bird 276414,ship 276415,deer 276416,horse 276417,bird 276418,cat 276419,horse 276420,ship 276421,deer 276422,ship 276423,horse 276424,airplane 276425,horse 276426,dog 276427,ship 276428,dog 276429,frog 276430,horse 276431,ship 276432,horse 276433,ship 276434,horse 276435,horse 276436,frog 276437,horse 276438,dog 276439,dog 276440,frog 276441,bird 276442,frog 276443,deer 276444,airplane 276445,bird 276446,deer 276447,deer 276448,dog 276449,deer 276450,deer 276451,dog 276452,automobile 276453,frog 276454,cat 276455,frog 276456,dog 276457,ship 276458,bird 276459,bird 276460,ship 276461,bird 276462,cat 276463,frog 276464,horse 276465,dog 276466,dog 276467,truck 276468,frog 276469,ship 276470,cat 276471,dog 276472,ship 276473,deer 276474,deer 276475,ship 276476,frog 276477,ship 276478,airplane 276479,frog 276480,cat 276481,dog 276482,deer 276483,horse 276484,horse 276485,horse 276486,frog 276487,ship 276488,dog 276489,automobile 276490,ship 276491,horse 276492,ship 276493,airplane 276494,frog 276495,ship 276496,bird 276497,frog 276498,dog 276499,cat 276500,ship 276501,cat 276502,frog 276503,airplane 276504,automobile 276505,bird 276506,horse 276507,airplane 276508,bird 276509,cat 276510,deer 276511,bird 276512,dog 276513,horse 276514,airplane 276515,deer 276516,bird 276517,horse 276518,airplane 276519,frog 276520,deer 276521,horse 276522,bird 276523,frog 276524,deer 276525,automobile 276526,truck 276527,bird 276528,truck 276529,airplane 276530,ship 276531,ship 276532,frog 276533,deer 276534,airplane 276535,cat 276536,airplane 276537,deer 276538,frog 276539,ship 276540,dog 276541,truck 276542,dog 276543,bird 276544,bird 276545,dog 276546,ship 276547,frog 276548,dog 276549,horse 276550,cat 276551,airplane 276552,bird 276553,horse 276554,dog 276555,automobile 276556,truck 276557,deer 276558,bird 276559,cat 276560,dog 276561,cat 276562,deer 276563,truck 276564,airplane 276565,deer 276566,horse 276567,cat 276568,truck 276569,deer 276570,deer 276571,frog 276572,horse 276573,ship 276574,cat 276575,cat 276576,deer 276577,dog 276578,horse 276579,deer 276580,dog 276581,ship 276582,cat 276583,airplane 276584,dog 276585,dog 276586,cat 276587,horse 276588,ship 276589,airplane 276590,ship 276591,frog 276592,truck 276593,ship 276594,horse 276595,horse 276596,dog 276597,deer 276598,truck 276599,deer 276600,automobile 276601,frog 276602,horse 276603,automobile 276604,airplane 276605,deer 276606,deer 276607,dog 276608,ship 276609,horse 276610,deer 276611,deer 276612,bird 276613,truck 276614,truck 276615,dog 276616,horse 276617,ship 276618,deer 276619,cat 276620,automobile 276621,deer 276622,truck 276623,deer 276624,deer 276625,cat 276626,frog 276627,ship 276628,bird 276629,airplane 276630,deer 276631,frog 276632,airplane 276633,airplane 276634,cat 276635,deer 276636,truck 276637,deer 276638,truck 276639,horse 276640,cat 276641,deer 276642,airplane 276643,ship 276644,ship 276645,truck 276646,frog 276647,cat 276648,bird 276649,cat 276650,horse 276651,truck 276652,cat 276653,airplane 276654,truck 276655,horse 276656,truck 276657,bird 276658,airplane 276659,cat 276660,ship 276661,automobile 276662,dog 276663,dog 276664,deer 276665,dog 276666,frog 276667,cat 276668,dog 276669,cat 276670,cat 276671,truck 276672,deer 276673,bird 276674,dog 276675,truck 276676,dog 276677,cat 276678,airplane 276679,deer 276680,cat 276681,truck 276682,bird 276683,airplane 276684,dog 276685,deer 276686,truck 276687,ship 276688,frog 276689,dog 276690,dog 276691,dog 276692,frog 276693,airplane 276694,ship 276695,deer 276696,cat 276697,deer 276698,bird 276699,truck 276700,horse 276701,deer 276702,airplane 276703,cat 276704,bird 276705,truck 276706,frog 276707,horse 276708,bird 276709,frog 276710,automobile 276711,airplane 276712,cat 276713,horse 276714,frog 276715,deer 276716,truck 276717,airplane 276718,horse 276719,horse 276720,deer 276721,cat 276722,cat 276723,deer 276724,cat 276725,horse 276726,truck 276727,cat 276728,cat 276729,bird 276730,dog 276731,bird 276732,bird 276733,ship 276734,cat 276735,frog 276736,truck 276737,deer 276738,bird 276739,deer 276740,deer 276741,bird 276742,bird 276743,truck 276744,deer 276745,deer 276746,airplane 276747,automobile 276748,dog 276749,automobile 276750,cat 276751,airplane 276752,frog 276753,truck 276754,automobile 276755,horse 276756,airplane 276757,automobile 276758,deer 276759,ship 276760,automobile 276761,ship 276762,deer 276763,cat 276764,frog 276765,frog 276766,truck 276767,automobile 276768,bird 276769,bird 276770,frog 276771,truck 276772,horse 276773,airplane 276774,cat 276775,ship 276776,airplane 276777,frog 276778,horse 276779,truck 276780,cat 276781,cat 276782,ship 276783,cat 276784,ship 276785,dog 276786,deer 276787,bird 276788,truck 276789,cat 276790,truck 276791,dog 276792,ship 276793,horse 276794,frog 276795,ship 276796,deer 276797,frog 276798,ship 276799,ship 276800,deer 276801,horse 276802,airplane 276803,ship 276804,bird 276805,bird 276806,bird 276807,dog 276808,frog 276809,frog 276810,deer 276811,deer 276812,cat 276813,bird 276814,dog 276815,deer 276816,deer 276817,airplane 276818,deer 276819,horse 276820,horse 276821,airplane 276822,cat 276823,frog 276824,airplane 276825,horse 276826,cat 276827,horse 276828,frog 276829,ship 276830,deer 276831,airplane 276832,bird 276833,horse 276834,bird 276835,horse 276836,airplane 276837,horse 276838,bird 276839,frog 276840,truck 276841,truck 276842,frog 276843,frog 276844,deer 276845,truck 276846,bird 276847,cat 276848,automobile 276849,cat 276850,automobile 276851,deer 276852,cat 276853,truck 276854,frog 276855,horse 276856,horse 276857,dog 276858,horse 276859,bird 276860,airplane 276861,horse 276862,airplane 276863,dog 276864,horse 276865,ship 276866,truck 276867,ship 276868,frog 276869,dog 276870,horse 276871,deer 276872,ship 276873,dog 276874,ship 276875,bird 276876,automobile 276877,cat 276878,truck 276879,dog 276880,horse 276881,ship 276882,airplane 276883,automobile 276884,bird 276885,deer 276886,automobile 276887,frog 276888,cat 276889,automobile 276890,frog 276891,ship 276892,cat 276893,bird 276894,frog 276895,ship 276896,cat 276897,deer 276898,ship 276899,ship 276900,dog 276901,bird 276902,cat 276903,cat 276904,ship 276905,cat 276906,horse 276907,deer 276908,ship 276909,cat 276910,dog 276911,deer 276912,airplane 276913,airplane 276914,bird 276915,deer 276916,horse 276917,cat 276918,airplane 276919,horse 276920,frog 276921,cat 276922,automobile 276923,truck 276924,automobile 276925,cat 276926,airplane 276927,truck 276928,horse 276929,deer 276930,truck 276931,bird 276932,cat 276933,truck 276934,dog 276935,ship 276936,cat 276937,dog 276938,cat 276939,horse 276940,ship 276941,airplane 276942,frog 276943,airplane 276944,bird 276945,bird 276946,bird 276947,truck 276948,frog 276949,bird 276950,horse 276951,ship 276952,dog 276953,horse 276954,truck 276955,cat 276956,horse 276957,bird 276958,deer 276959,automobile 276960,cat 276961,cat 276962,truck 276963,truck 276964,deer 276965,ship 276966,truck 276967,frog 276968,dog 276969,cat 276970,truck 276971,frog 276972,ship 276973,truck 276974,bird 276975,frog 276976,truck 276977,dog 276978,deer 276979,truck 276980,truck 276981,deer 276982,dog 276983,ship 276984,deer 276985,horse 276986,deer 276987,horse 276988,cat 276989,bird 276990,frog 276991,dog 276992,airplane 276993,airplane 276994,deer 276995,deer 276996,deer 276997,bird 276998,horse 276999,cat 277000,dog 277001,dog 277002,deer 277003,truck 277004,deer 277005,bird 277006,truck 277007,dog 277008,cat 277009,deer 277010,dog 277011,dog 277012,deer 277013,airplane 277014,horse 277015,bird 277016,frog 277017,truck 277018,airplane 277019,cat 277020,bird 277021,dog 277022,bird 277023,deer 277024,truck 277025,deer 277026,horse 277027,frog 277028,horse 277029,automobile 277030,cat 277031,automobile 277032,dog 277033,truck 277034,airplane 277035,truck 277036,cat 277037,dog 277038,automobile 277039,dog 277040,automobile 277041,frog 277042,bird 277043,ship 277044,deer 277045,dog 277046,deer 277047,ship 277048,bird 277049,truck 277050,horse 277051,horse 277052,cat 277053,airplane 277054,frog 277055,deer 277056,cat 277057,bird 277058,automobile 277059,cat 277060,dog 277061,frog 277062,bird 277063,deer 277064,bird 277065,ship 277066,frog 277067,automobile 277068,deer 277069,cat 277070,deer 277071,horse 277072,horse 277073,bird 277074,truck 277075,deer 277076,frog 277077,truck 277078,deer 277079,deer 277080,dog 277081,bird 277082,frog 277083,dog 277084,truck 277085,automobile 277086,airplane 277087,horse 277088,cat 277089,truck 277090,cat 277091,deer 277092,deer 277093,horse 277094,ship 277095,deer 277096,dog 277097,ship 277098,deer 277099,cat 277100,airplane 277101,dog 277102,dog 277103,frog 277104,frog 277105,truck 277106,deer 277107,horse 277108,frog 277109,frog 277110,airplane 277111,deer 277112,deer 277113,ship 277114,truck 277115,deer 277116,automobile 277117,cat 277118,frog 277119,frog 277120,deer 277121,horse 277122,frog 277123,airplane 277124,bird 277125,cat 277126,truck 277127,deer 277128,bird 277129,dog 277130,truck 277131,airplane 277132,frog 277133,horse 277134,ship 277135,truck 277136,bird 277137,ship 277138,truck 277139,airplane 277140,deer 277141,deer 277142,bird 277143,deer 277144,airplane 277145,horse 277146,deer 277147,frog 277148,deer 277149,truck 277150,airplane 277151,bird 277152,ship 277153,deer 277154,airplane 277155,bird 277156,bird 277157,frog 277158,automobile 277159,bird 277160,deer 277161,cat 277162,dog 277163,bird 277164,frog 277165,cat 277166,frog 277167,frog 277168,frog 277169,deer 277170,horse 277171,dog 277172,airplane 277173,bird 277174,dog 277175,horse 277176,deer 277177,airplane 277178,ship 277179,ship 277180,bird 277181,cat 277182,truck 277183,ship 277184,dog 277185,automobile 277186,dog 277187,truck 277188,dog 277189,truck 277190,dog 277191,ship 277192,airplane 277193,airplane 277194,horse 277195,bird 277196,automobile 277197,frog 277198,cat 277199,airplane 277200,truck 277201,dog 277202,bird 277203,cat 277204,cat 277205,bird 277206,dog 277207,automobile 277208,deer 277209,automobile 277210,cat 277211,horse 277212,deer 277213,dog 277214,automobile 277215,ship 277216,ship 277217,airplane 277218,dog 277219,dog 277220,frog 277221,bird 277222,airplane 277223,bird 277224,bird 277225,bird 277226,automobile 277227,ship 277228,cat 277229,airplane 277230,bird 277231,dog 277232,truck 277233,truck 277234,deer 277235,truck 277236,deer 277237,truck 277238,bird 277239,cat 277240,horse 277241,automobile 277242,frog 277243,dog 277244,truck 277245,truck 277246,ship 277247,airplane 277248,airplane 277249,deer 277250,frog 277251,deer 277252,frog 277253,frog 277254,deer 277255,deer 277256,automobile 277257,airplane 277258,frog 277259,deer 277260,bird 277261,horse 277262,ship 277263,deer 277264,bird 277265,deer 277266,truck 277267,horse 277268,horse 277269,frog 277270,dog 277271,dog 277272,deer 277273,cat 277274,frog 277275,airplane 277276,dog 277277,frog 277278,frog 277279,horse 277280,frog 277281,airplane 277282,ship 277283,ship 277284,airplane 277285,ship 277286,horse 277287,cat 277288,frog 277289,frog 277290,horse 277291,cat 277292,frog 277293,horse 277294,ship 277295,deer 277296,cat 277297,frog 277298,cat 277299,deer 277300,dog 277301,horse 277302,horse 277303,airplane 277304,cat 277305,truck 277306,deer 277307,airplane 277308,ship 277309,cat 277310,dog 277311,horse 277312,deer 277313,bird 277314,truck 277315,deer 277316,frog 277317,deer 277318,ship 277319,truck 277320,cat 277321,airplane 277322,deer 277323,horse 277324,deer 277325,dog 277326,truck 277327,bird 277328,bird 277329,cat 277330,cat 277331,frog 277332,ship 277333,dog 277334,truck 277335,deer 277336,bird 277337,ship 277338,horse 277339,deer 277340,dog 277341,frog 277342,cat 277343,frog 277344,truck 277345,airplane 277346,cat 277347,ship 277348,frog 277349,airplane 277350,bird 277351,horse 277352,cat 277353,ship 277354,ship 277355,deer 277356,ship 277357,cat 277358,deer 277359,airplane 277360,truck 277361,airplane 277362,ship 277363,cat 277364,cat 277365,frog 277366,horse 277367,truck 277368,truck 277369,dog 277370,dog 277371,deer 277372,frog 277373,frog 277374,deer 277375,frog 277376,cat 277377,truck 277378,ship 277379,horse 277380,deer 277381,dog 277382,frog 277383,truck 277384,cat 277385,truck 277386,deer 277387,bird 277388,cat 277389,frog 277390,bird 277391,bird 277392,frog 277393,ship 277394,deer 277395,horse 277396,deer 277397,bird 277398,horse 277399,truck 277400,frog 277401,bird 277402,frog 277403,ship 277404,ship 277405,deer 277406,deer 277407,horse 277408,dog 277409,frog 277410,bird 277411,cat 277412,cat 277413,ship 277414,ship 277415,frog 277416,frog 277417,automobile 277418,deer 277419,horse 277420,frog 277421,ship 277422,automobile 277423,cat 277424,deer 277425,automobile 277426,cat 277427,deer 277428,horse 277429,horse 277430,airplane 277431,cat 277432,deer 277433,horse 277434,frog 277435,cat 277436,truck 277437,deer 277438,frog 277439,cat 277440,deer 277441,dog 277442,cat 277443,frog 277444,frog 277445,frog 277446,dog 277447,horse 277448,dog 277449,deer 277450,ship 277451,airplane 277452,frog 277453,automobile 277454,automobile 277455,truck 277456,cat 277457,truck 277458,dog 277459,automobile 277460,ship 277461,truck 277462,deer 277463,ship 277464,cat 277465,dog 277466,airplane 277467,airplane 277468,deer 277469,ship 277470,horse 277471,cat 277472,truck 277473,airplane 277474,deer 277475,dog 277476,cat 277477,frog 277478,deer 277479,deer 277480,cat 277481,airplane 277482,bird 277483,truck 277484,deer 277485,frog 277486,bird 277487,bird 277488,dog 277489,dog 277490,ship 277491,bird 277492,bird 277493,automobile 277494,automobile 277495,cat 277496,bird 277497,horse 277498,deer 277499,truck 277500,truck 277501,deer 277502,truck 277503,ship 277504,frog 277505,bird 277506,deer 277507,bird 277508,cat 277509,bird 277510,airplane 277511,deer 277512,ship 277513,deer 277514,ship 277515,horse 277516,cat 277517,bird 277518,truck 277519,frog 277520,truck 277521,ship 277522,airplane 277523,bird 277524,airplane 277525,frog 277526,dog 277527,deer 277528,truck 277529,truck 277530,deer 277531,airplane 277532,automobile 277533,airplane 277534,truck 277535,deer 277536,dog 277537,frog 277538,frog 277539,bird 277540,cat 277541,dog 277542,cat 277543,horse 277544,truck 277545,truck 277546,cat 277547,deer 277548,bird 277549,cat 277550,airplane 277551,horse 277552,automobile 277553,dog 277554,dog 277555,bird 277556,dog 277557,dog 277558,cat 277559,deer 277560,frog 277561,truck 277562,deer 277563,bird 277564,frog 277565,ship 277566,airplane 277567,truck 277568,dog 277569,deer 277570,frog 277571,deer 277572,truck 277573,truck 277574,frog 277575,dog 277576,horse 277577,truck 277578,horse 277579,deer 277580,horse 277581,cat 277582,deer 277583,cat 277584,dog 277585,cat 277586,bird 277587,bird 277588,frog 277589,deer 277590,frog 277591,frog 277592,cat 277593,horse 277594,automobile 277595,horse 277596,bird 277597,dog 277598,horse 277599,ship 277600,cat 277601,ship 277602,horse 277603,airplane 277604,bird 277605,ship 277606,cat 277607,airplane 277608,dog 277609,cat 277610,dog 277611,deer 277612,dog 277613,automobile 277614,frog 277615,deer 277616,deer 277617,airplane 277618,cat 277619,deer 277620,automobile 277621,airplane 277622,truck 277623,horse 277624,horse 277625,dog 277626,ship 277627,cat 277628,deer 277629,cat 277630,truck 277631,horse 277632,automobile 277633,deer 277634,ship 277635,cat 277636,cat 277637,ship 277638,airplane 277639,deer 277640,horse 277641,horse 277642,truck 277643,dog 277644,bird 277645,cat 277646,deer 277647,deer 277648,horse 277649,airplane 277650,cat 277651,truck 277652,horse 277653,airplane 277654,truck 277655,deer 277656,ship 277657,deer 277658,horse 277659,frog 277660,cat 277661,truck 277662,cat 277663,horse 277664,deer 277665,ship 277666,automobile 277667,bird 277668,ship 277669,dog 277670,horse 277671,deer 277672,ship 277673,frog 277674,cat 277675,automobile 277676,cat 277677,ship 277678,deer 277679,airplane 277680,cat 277681,ship 277682,deer 277683,dog 277684,bird 277685,bird 277686,automobile 277687,deer 277688,horse 277689,airplane 277690,horse 277691,airplane 277692,airplane 277693,frog 277694,cat 277695,airplane 277696,cat 277697,airplane 277698,horse 277699,horse 277700,horse 277701,dog 277702,automobile 277703,ship 277704,horse 277705,frog 277706,airplane 277707,airplane 277708,horse 277709,dog 277710,truck 277711,horse 277712,bird 277713,horse 277714,bird 277715,airplane 277716,airplane 277717,truck 277718,bird 277719,airplane 277720,frog 277721,automobile 277722,deer 277723,automobile 277724,cat 277725,ship 277726,truck 277727,deer 277728,airplane 277729,dog 277730,cat 277731,airplane 277732,ship 277733,airplane 277734,ship 277735,cat 277736,airplane 277737,ship 277738,deer 277739,horse 277740,frog 277741,truck 277742,bird 277743,dog 277744,cat 277745,dog 277746,dog 277747,dog 277748,deer 277749,frog 277750,cat 277751,ship 277752,automobile 277753,frog 277754,airplane 277755,dog 277756,bird 277757,deer 277758,frog 277759,dog 277760,horse 277761,dog 277762,ship 277763,bird 277764,deer 277765,frog 277766,ship 277767,deer 277768,deer 277769,frog 277770,airplane 277771,frog 277772,deer 277773,horse 277774,cat 277775,deer 277776,bird 277777,deer 277778,horse 277779,truck 277780,deer 277781,automobile 277782,bird 277783,bird 277784,cat 277785,automobile 277786,frog 277787,horse 277788,dog 277789,deer 277790,airplane 277791,truck 277792,frog 277793,frog 277794,frog 277795,dog 277796,cat 277797,truck 277798,automobile 277799,truck 277800,airplane 277801,airplane 277802,dog 277803,cat 277804,dog 277805,horse 277806,ship 277807,dog 277808,automobile 277809,dog 277810,horse 277811,truck 277812,ship 277813,ship 277814,cat 277815,ship 277816,frog 277817,deer 277818,ship 277819,ship 277820,airplane 277821,cat 277822,airplane 277823,frog 277824,bird 277825,dog 277826,frog 277827,deer 277828,frog 277829,horse 277830,horse 277831,bird 277832,frog 277833,deer 277834,ship 277835,airplane 277836,bird 277837,automobile 277838,automobile 277839,deer 277840,deer 277841,bird 277842,cat 277843,airplane 277844,bird 277845,frog 277846,airplane 277847,automobile 277848,deer 277849,frog 277850,truck 277851,frog 277852,bird 277853,frog 277854,horse 277855,frog 277856,ship 277857,horse 277858,ship 277859,cat 277860,bird 277861,automobile 277862,cat 277863,ship 277864,dog 277865,truck 277866,truck 277867,bird 277868,cat 277869,automobile 277870,ship 277871,automobile 277872,airplane 277873,truck 277874,horse 277875,frog 277876,bird 277877,horse 277878,deer 277879,horse 277880,truck 277881,automobile 277882,horse 277883,horse 277884,automobile 277885,bird 277886,horse 277887,truck 277888,deer 277889,cat 277890,deer 277891,frog 277892,deer 277893,truck 277894,deer 277895,deer 277896,cat 277897,ship 277898,airplane 277899,deer 277900,dog 277901,truck 277902,airplane 277903,cat 277904,dog 277905,truck 277906,deer 277907,dog 277908,deer 277909,bird 277910,ship 277911,airplane 277912,automobile 277913,automobile 277914,deer 277915,deer 277916,airplane 277917,airplane 277918,bird 277919,ship 277920,cat 277921,horse 277922,dog 277923,cat 277924,frog 277925,horse 277926,horse 277927,cat 277928,automobile 277929,cat 277930,horse 277931,frog 277932,cat 277933,frog 277934,frog 277935,ship 277936,truck 277937,truck 277938,deer 277939,horse 277940,frog 277941,ship 277942,frog 277943,ship 277944,bird 277945,cat 277946,frog 277947,ship 277948,cat 277949,ship 277950,frog 277951,cat 277952,cat 277953,horse 277954,dog 277955,truck 277956,bird 277957,dog 277958,airplane 277959,ship 277960,truck 277961,deer 277962,cat 277963,deer 277964,ship 277965,frog 277966,frog 277967,deer 277968,frog 277969,truck 277970,dog 277971,truck 277972,airplane 277973,deer 277974,bird 277975,frog 277976,cat 277977,automobile 277978,dog 277979,ship 277980,automobile 277981,dog 277982,cat 277983,horse 277984,bird 277985,cat 277986,frog 277987,bird 277988,deer 277989,deer 277990,airplane 277991,dog 277992,deer 277993,automobile 277994,cat 277995,dog 277996,deer 277997,frog 277998,airplane 277999,automobile 278000,dog 278001,dog 278002,frog 278003,cat 278004,automobile 278005,airplane 278006,dog 278007,cat 278008,frog 278009,deer 278010,bird 278011,frog 278012,automobile 278013,automobile 278014,cat 278015,ship 278016,ship 278017,bird 278018,truck 278019,dog 278020,truck 278021,automobile 278022,frog 278023,airplane 278024,frog 278025,deer 278026,deer 278027,automobile 278028,horse 278029,ship 278030,horse 278031,cat 278032,cat 278033,horse 278034,cat 278035,cat 278036,frog 278037,automobile 278038,ship 278039,bird 278040,airplane 278041,automobile 278042,bird 278043,ship 278044,truck 278045,truck 278046,frog 278047,cat 278048,deer 278049,ship 278050,dog 278051,cat 278052,deer 278053,cat 278054,bird 278055,bird 278056,automobile 278057,automobile 278058,bird 278059,cat 278060,frog 278061,airplane 278062,bird 278063,cat 278064,dog 278065,truck 278066,automobile 278067,frog 278068,dog 278069,cat 278070,cat 278071,automobile 278072,horse 278073,airplane 278074,ship 278075,automobile 278076,dog 278077,automobile 278078,ship 278079,truck 278080,bird 278081,dog 278082,truck 278083,cat 278084,deer 278085,airplane 278086,frog 278087,frog 278088,frog 278089,dog 278090,dog 278091,frog 278092,airplane 278093,bird 278094,cat 278095,dog 278096,dog 278097,automobile 278098,airplane 278099,bird 278100,bird 278101,deer 278102,horse 278103,automobile 278104,dog 278105,horse 278106,bird 278107,deer 278108,automobile 278109,deer 278110,cat 278111,frog 278112,ship 278113,airplane 278114,bird 278115,frog 278116,ship 278117,airplane 278118,deer 278119,frog 278120,cat 278121,truck 278122,cat 278123,airplane 278124,ship 278125,deer 278126,bird 278127,truck 278128,deer 278129,bird 278130,airplane 278131,ship 278132,ship 278133,cat 278134,ship 278135,deer 278136,cat 278137,ship 278138,truck 278139,frog 278140,horse 278141,truck 278142,ship 278143,cat 278144,horse 278145,horse 278146,automobile 278147,frog 278148,cat 278149,airplane 278150,frog 278151,deer 278152,deer 278153,airplane 278154,horse 278155,bird 278156,cat 278157,airplane 278158,automobile 278159,horse 278160,automobile 278161,frog 278162,ship 278163,cat 278164,truck 278165,ship 278166,horse 278167,horse 278168,automobile 278169,truck 278170,airplane 278171,horse 278172,deer 278173,cat 278174,frog 278175,airplane 278176,truck 278177,horse 278178,frog 278179,truck 278180,horse 278181,deer 278182,deer 278183,truck 278184,ship 278185,ship 278186,ship 278187,frog 278188,truck 278189,ship 278190,horse 278191,cat 278192,automobile 278193,deer 278194,horse 278195,ship 278196,cat 278197,deer 278198,truck 278199,cat 278200,cat 278201,bird 278202,cat 278203,frog 278204,cat 278205,truck 278206,dog 278207,bird 278208,dog 278209,ship 278210,bird 278211,cat 278212,dog 278213,bird 278214,ship 278215,horse 278216,truck 278217,truck 278218,bird 278219,frog 278220,horse 278221,cat 278222,cat 278223,horse 278224,automobile 278225,dog 278226,truck 278227,frog 278228,dog 278229,truck 278230,deer 278231,frog 278232,horse 278233,frog 278234,cat 278235,horse 278236,dog 278237,deer 278238,ship 278239,dog 278240,horse 278241,dog 278242,horse 278243,cat 278244,truck 278245,deer 278246,truck 278247,truck 278248,truck 278249,truck 278250,bird 278251,automobile 278252,airplane 278253,airplane 278254,frog 278255,airplane 278256,bird 278257,deer 278258,frog 278259,truck 278260,horse 278261,bird 278262,airplane 278263,deer 278264,deer 278265,ship 278266,airplane 278267,cat 278268,cat 278269,airplane 278270,truck 278271,deer 278272,dog 278273,dog 278274,truck 278275,horse 278276,automobile 278277,airplane 278278,airplane 278279,cat 278280,truck 278281,deer 278282,frog 278283,bird 278284,ship 278285,cat 278286,frog 278287,horse 278288,bird 278289,deer 278290,automobile 278291,ship 278292,dog 278293,airplane 278294,frog 278295,airplane 278296,truck 278297,horse 278298,horse 278299,ship 278300,deer 278301,ship 278302,horse 278303,frog 278304,airplane 278305,cat 278306,automobile 278307,horse 278308,deer 278309,dog 278310,cat 278311,bird 278312,horse 278313,deer 278314,bird 278315,deer 278316,dog 278317,cat 278318,ship 278319,deer 278320,cat 278321,cat 278322,truck 278323,dog 278324,truck 278325,automobile 278326,frog 278327,cat 278328,bird 278329,truck 278330,frog 278331,deer 278332,cat 278333,horse 278334,airplane 278335,automobile 278336,dog 278337,deer 278338,airplane 278339,airplane 278340,frog 278341,frog 278342,cat 278343,truck 278344,ship 278345,ship 278346,ship 278347,deer 278348,cat 278349,cat 278350,deer 278351,deer 278352,frog 278353,frog 278354,cat 278355,dog 278356,ship 278357,cat 278358,truck 278359,dog 278360,airplane 278361,deer 278362,airplane 278363,cat 278364,bird 278365,ship 278366,airplane 278367,frog 278368,airplane 278369,bird 278370,airplane 278371,automobile 278372,cat 278373,deer 278374,truck 278375,automobile 278376,deer 278377,truck 278378,deer 278379,deer 278380,dog 278381,deer 278382,frog 278383,cat 278384,frog 278385,truck 278386,ship 278387,deer 278388,automobile 278389,cat 278390,deer 278391,ship 278392,horse 278393,bird 278394,cat 278395,bird 278396,airplane 278397,deer 278398,deer 278399,dog 278400,deer 278401,airplane 278402,airplane 278403,horse 278404,truck 278405,dog 278406,automobile 278407,automobile 278408,automobile 278409,truck 278410,deer 278411,ship 278412,frog 278413,frog 278414,cat 278415,cat 278416,truck 278417,cat 278418,truck 278419,horse 278420,bird 278421,ship 278422,horse 278423,ship 278424,dog 278425,truck 278426,cat 278427,airplane 278428,automobile 278429,cat 278430,dog 278431,frog 278432,bird 278433,dog 278434,horse 278435,cat 278436,horse 278437,airplane 278438,automobile 278439,cat 278440,frog 278441,frog 278442,bird 278443,dog 278444,airplane 278445,bird 278446,deer 278447,cat 278448,deer 278449,frog 278450,frog 278451,ship 278452,dog 278453,airplane 278454,ship 278455,ship 278456,dog 278457,dog 278458,cat 278459,deer 278460,ship 278461,cat 278462,horse 278463,deer 278464,automobile 278465,deer 278466,cat 278467,ship 278468,deer 278469,horse 278470,truck 278471,dog 278472,truck 278473,deer 278474,bird 278475,bird 278476,deer 278477,automobile 278478,cat 278479,deer 278480,bird 278481,ship 278482,deer 278483,bird 278484,dog 278485,deer 278486,dog 278487,airplane 278488,dog 278489,cat 278490,deer 278491,truck 278492,dog 278493,cat 278494,dog 278495,horse 278496,ship 278497,dog 278498,cat 278499,dog 278500,horse 278501,truck 278502,truck 278503,frog 278504,frog 278505,frog 278506,frog 278507,airplane 278508,frog 278509,truck 278510,frog 278511,deer 278512,truck 278513,cat 278514,cat 278515,cat 278516,ship 278517,deer 278518,dog 278519,airplane 278520,cat 278521,deer 278522,ship 278523,automobile 278524,dog 278525,truck 278526,deer 278527,dog 278528,airplane 278529,dog 278530,deer 278531,cat 278532,cat 278533,automobile 278534,airplane 278535,deer 278536,deer 278537,bird 278538,cat 278539,cat 278540,deer 278541,bird 278542,deer 278543,frog 278544,deer 278545,deer 278546,frog 278547,cat 278548,truck 278549,bird 278550,airplane 278551,frog 278552,deer 278553,horse 278554,horse 278555,deer 278556,airplane 278557,airplane 278558,bird 278559,cat 278560,ship 278561,airplane 278562,frog 278563,truck 278564,horse 278565,cat 278566,deer 278567,deer 278568,horse 278569,frog 278570,deer 278571,horse 278572,airplane 278573,frog 278574,airplane 278575,airplane 278576,airplane 278577,horse 278578,airplane 278579,horse 278580,dog 278581,cat 278582,deer 278583,ship 278584,ship 278585,truck 278586,horse 278587,dog 278588,automobile 278589,cat 278590,ship 278591,dog 278592,deer 278593,truck 278594,cat 278595,ship 278596,cat 278597,frog 278598,truck 278599,deer 278600,airplane 278601,airplane 278602,deer 278603,airplane 278604,ship 278605,deer 278606,cat 278607,ship 278608,horse 278609,airplane 278610,horse 278611,deer 278612,frog 278613,automobile 278614,bird 278615,horse 278616,bird 278617,ship 278618,cat 278619,bird 278620,airplane 278621,bird 278622,horse 278623,deer 278624,horse 278625,automobile 278626,horse 278627,dog 278628,truck 278629,automobile 278630,dog 278631,bird 278632,truck 278633,horse 278634,airplane 278635,cat 278636,dog 278637,airplane 278638,deer 278639,airplane 278640,bird 278641,dog 278642,horse 278643,airplane 278644,dog 278645,deer 278646,frog 278647,frog 278648,frog 278649,bird 278650,deer 278651,automobile 278652,deer 278653,cat 278654,dog 278655,ship 278656,automobile 278657,bird 278658,horse 278659,bird 278660,bird 278661,deer 278662,cat 278663,deer 278664,frog 278665,ship 278666,airplane 278667,frog 278668,horse 278669,cat 278670,automobile 278671,deer 278672,dog 278673,frog 278674,airplane 278675,truck 278676,airplane 278677,frog 278678,cat 278679,airplane 278680,cat 278681,horse 278682,cat 278683,dog 278684,truck 278685,airplane 278686,bird 278687,truck 278688,cat 278689,cat 278690,bird 278691,horse 278692,frog 278693,automobile 278694,cat 278695,bird 278696,bird 278697,automobile 278698,airplane 278699,automobile 278700,ship 278701,horse 278702,automobile 278703,dog 278704,horse 278705,dog 278706,cat 278707,bird 278708,cat 278709,dog 278710,cat 278711,ship 278712,ship 278713,frog 278714,truck 278715,deer 278716,automobile 278717,frog 278718,horse 278719,automobile 278720,dog 278721,frog 278722,airplane 278723,airplane 278724,airplane 278725,deer 278726,truck 278727,cat 278728,horse 278729,deer 278730,frog 278731,automobile 278732,deer 278733,dog 278734,truck 278735,airplane 278736,deer 278737,automobile 278738,cat 278739,truck 278740,horse 278741,truck 278742,cat 278743,bird 278744,dog 278745,cat 278746,truck 278747,deer 278748,cat 278749,airplane 278750,bird 278751,cat 278752,bird 278753,bird 278754,cat 278755,cat 278756,frog 278757,airplane 278758,deer 278759,horse 278760,bird 278761,truck 278762,bird 278763,automobile 278764,ship 278765,airplane 278766,bird 278767,truck 278768,bird 278769,cat 278770,airplane 278771,airplane 278772,deer 278773,truck 278774,horse 278775,horse 278776,horse 278777,airplane 278778,horse 278779,cat 278780,frog 278781,cat 278782,horse 278783,truck 278784,truck 278785,cat 278786,deer 278787,truck 278788,airplane 278789,airplane 278790,deer 278791,frog 278792,horse 278793,truck 278794,deer 278795,ship 278796,airplane 278797,horse 278798,cat 278799,cat 278800,cat 278801,horse 278802,airplane 278803,cat 278804,deer 278805,cat 278806,ship 278807,bird 278808,bird 278809,automobile 278810,truck 278811,bird 278812,horse 278813,horse 278814,bird 278815,deer 278816,deer 278817,deer 278818,dog 278819,automobile 278820,ship 278821,dog 278822,deer 278823,bird 278824,cat 278825,frog 278826,ship 278827,airplane 278828,cat 278829,automobile 278830,dog 278831,ship 278832,automobile 278833,horse 278834,horse 278835,automobile 278836,airplane 278837,automobile 278838,ship 278839,horse 278840,truck 278841,bird 278842,bird 278843,truck 278844,ship 278845,frog 278846,airplane 278847,ship 278848,truck 278849,truck 278850,frog 278851,horse 278852,airplane 278853,bird 278854,cat 278855,bird 278856,deer 278857,ship 278858,horse 278859,dog 278860,deer 278861,deer 278862,deer 278863,truck 278864,frog 278865,deer 278866,automobile 278867,bird 278868,airplane 278869,horse 278870,deer 278871,frog 278872,airplane 278873,truck 278874,truck 278875,cat 278876,cat 278877,cat 278878,deer 278879,airplane 278880,deer 278881,deer 278882,horse 278883,horse 278884,cat 278885,truck 278886,cat 278887,automobile 278888,horse 278889,frog 278890,cat 278891,frog 278892,frog 278893,horse 278894,cat 278895,bird 278896,frog 278897,frog 278898,truck 278899,dog 278900,deer 278901,frog 278902,cat 278903,deer 278904,bird 278905,dog 278906,airplane 278907,cat 278908,bird 278909,cat 278910,automobile 278911,ship 278912,cat 278913,dog 278914,dog 278915,frog 278916,airplane 278917,deer 278918,bird 278919,frog 278920,deer 278921,deer 278922,frog 278923,airplane 278924,dog 278925,truck 278926,truck 278927,ship 278928,deer 278929,horse 278930,horse 278931,airplane 278932,airplane 278933,airplane 278934,deer 278935,bird 278936,dog 278937,dog 278938,deer 278939,horse 278940,frog 278941,dog 278942,bird 278943,horse 278944,frog 278945,dog 278946,truck 278947,bird 278948,automobile 278949,horse 278950,cat 278951,airplane 278952,frog 278953,cat 278954,frog 278955,ship 278956,dog 278957,cat 278958,frog 278959,truck 278960,horse 278961,dog 278962,deer 278963,frog 278964,cat 278965,bird 278966,horse 278967,bird 278968,dog 278969,dog 278970,automobile 278971,frog 278972,ship 278973,deer 278974,automobile 278975,frog 278976,frog 278977,frog 278978,dog 278979,deer 278980,dog 278981,ship 278982,airplane 278983,ship 278984,cat 278985,horse 278986,truck 278987,deer 278988,horse 278989,cat 278990,cat 278991,deer 278992,dog 278993,truck 278994,frog 278995,frog 278996,horse 278997,airplane 278998,frog 278999,cat 279000,frog 279001,automobile 279002,deer 279003,dog 279004,cat 279005,dog 279006,bird 279007,deer 279008,truck 279009,deer 279010,deer 279011,bird 279012,dog 279013,truck 279014,dog 279015,horse 279016,cat 279017,bird 279018,ship 279019,automobile 279020,truck 279021,frog 279022,ship 279023,deer 279024,cat 279025,airplane 279026,cat 279027,dog 279028,ship 279029,truck 279030,cat 279031,horse 279032,airplane 279033,dog 279034,dog 279035,bird 279036,bird 279037,airplane 279038,airplane 279039,deer 279040,bird 279041,horse 279042,ship 279043,dog 279044,ship 279045,bird 279046,ship 279047,frog 279048,horse 279049,deer 279050,horse 279051,airplane 279052,ship 279053,automobile 279054,dog 279055,airplane 279056,dog 279057,bird 279058,dog 279059,horse 279060,dog 279061,automobile 279062,truck 279063,ship 279064,ship 279065,cat 279066,cat 279067,dog 279068,truck 279069,airplane 279070,automobile 279071,truck 279072,horse 279073,truck 279074,deer 279075,cat 279076,frog 279077,airplane 279078,airplane 279079,bird 279080,frog 279081,ship 279082,horse 279083,automobile 279084,frog 279085,truck 279086,cat 279087,cat 279088,bird 279089,deer 279090,bird 279091,dog 279092,airplane 279093,automobile 279094,frog 279095,deer 279096,deer 279097,dog 279098,cat 279099,deer 279100,frog 279101,bird 279102,frog 279103,automobile 279104,truck 279105,cat 279106,dog 279107,bird 279108,horse 279109,bird 279110,airplane 279111,bird 279112,frog 279113,horse 279114,bird 279115,airplane 279116,automobile 279117,cat 279118,truck 279119,dog 279120,ship 279121,automobile 279122,truck 279123,dog 279124,automobile 279125,automobile 279126,frog 279127,truck 279128,bird 279129,dog 279130,airplane 279131,horse 279132,dog 279133,deer 279134,airplane 279135,cat 279136,truck 279137,truck 279138,deer 279139,horse 279140,airplane 279141,ship 279142,horse 279143,deer 279144,airplane 279145,deer 279146,deer 279147,frog 279148,bird 279149,automobile 279150,airplane 279151,ship 279152,bird 279153,frog 279154,truck 279155,deer 279156,frog 279157,airplane 279158,horse 279159,dog 279160,automobile 279161,ship 279162,airplane 279163,deer 279164,automobile 279165,airplane 279166,ship 279167,deer 279168,horse 279169,deer 279170,ship 279171,cat 279172,deer 279173,ship 279174,horse 279175,airplane 279176,airplane 279177,deer 279178,deer 279179,frog 279180,cat 279181,deer 279182,dog 279183,truck 279184,cat 279185,horse 279186,ship 279187,truck 279188,ship 279189,frog 279190,ship 279191,horse 279192,horse 279193,ship 279194,ship 279195,horse 279196,frog 279197,automobile 279198,bird 279199,cat 279200,frog 279201,bird 279202,deer 279203,automobile 279204,airplane 279205,deer 279206,automobile 279207,frog 279208,truck 279209,bird 279210,automobile 279211,airplane 279212,truck 279213,frog 279214,cat 279215,airplane 279216,frog 279217,deer 279218,horse 279219,bird 279220,horse 279221,truck 279222,automobile 279223,ship 279224,horse 279225,cat 279226,deer 279227,truck 279228,truck 279229,ship 279230,horse 279231,deer 279232,ship 279233,truck 279234,ship 279235,automobile 279236,truck 279237,frog 279238,horse 279239,deer 279240,frog 279241,truck 279242,cat 279243,airplane 279244,automobile 279245,horse 279246,automobile 279247,frog 279248,deer 279249,truck 279250,cat 279251,bird 279252,truck 279253,dog 279254,cat 279255,ship 279256,cat 279257,airplane 279258,frog 279259,deer 279260,ship 279261,bird 279262,horse 279263,cat 279264,frog 279265,cat 279266,airplane 279267,automobile 279268,airplane 279269,cat 279270,cat 279271,horse 279272,deer 279273,automobile 279274,truck 279275,bird 279276,cat 279277,automobile 279278,dog 279279,ship 279280,dog 279281,deer 279282,dog 279283,cat 279284,ship 279285,deer 279286,automobile 279287,cat 279288,dog 279289,truck 279290,cat 279291,automobile 279292,frog 279293,ship 279294,truck 279295,frog 279296,dog 279297,cat 279298,horse 279299,deer 279300,horse 279301,truck 279302,automobile 279303,ship 279304,horse 279305,deer 279306,dog 279307,deer 279308,frog 279309,automobile 279310,truck 279311,deer 279312,deer 279313,automobile 279314,deer 279315,cat 279316,frog 279317,cat 279318,cat 279319,automobile 279320,frog 279321,dog 279322,cat 279323,bird 279324,deer 279325,cat 279326,automobile 279327,frog 279328,automobile 279329,deer 279330,airplane 279331,horse 279332,deer 279333,deer 279334,ship 279335,frog 279336,horse 279337,airplane 279338,deer 279339,cat 279340,bird 279341,deer 279342,bird 279343,horse 279344,bird 279345,frog 279346,truck 279347,bird 279348,dog 279349,truck 279350,deer 279351,deer 279352,horse 279353,ship 279354,airplane 279355,horse 279356,ship 279357,cat 279358,truck 279359,truck 279360,automobile 279361,truck 279362,deer 279363,airplane 279364,frog 279365,deer 279366,horse 279367,truck 279368,frog 279369,airplane 279370,horse 279371,deer 279372,deer 279373,dog 279374,dog 279375,automobile 279376,dog 279377,truck 279378,ship 279379,airplane 279380,frog 279381,frog 279382,airplane 279383,truck 279384,airplane 279385,truck 279386,airplane 279387,frog 279388,bird 279389,ship 279390,horse 279391,bird 279392,automobile 279393,frog 279394,horse 279395,cat 279396,bird 279397,truck 279398,cat 279399,airplane 279400,truck 279401,bird 279402,horse 279403,deer 279404,truck 279405,deer 279406,horse 279407,horse 279408,dog 279409,frog 279410,horse 279411,ship 279412,truck 279413,horse 279414,airplane 279415,airplane 279416,airplane 279417,deer 279418,truck 279419,cat 279420,horse 279421,deer 279422,frog 279423,deer 279424,ship 279425,cat 279426,deer 279427,ship 279428,cat 279429,frog 279430,deer 279431,airplane 279432,deer 279433,ship 279434,bird 279435,deer 279436,cat 279437,dog 279438,deer 279439,horse 279440,deer 279441,truck 279442,airplane 279443,bird 279444,horse 279445,horse 279446,horse 279447,deer 279448,frog 279449,bird 279450,deer 279451,bird 279452,cat 279453,airplane 279454,ship 279455,deer 279456,deer 279457,truck 279458,airplane 279459,cat 279460,frog 279461,deer 279462,airplane 279463,deer 279464,horse 279465,horse 279466,bird 279467,truck 279468,deer 279469,horse 279470,frog 279471,horse 279472,bird 279473,horse 279474,cat 279475,horse 279476,ship 279477,truck 279478,cat 279479,truck 279480,dog 279481,bird 279482,horse 279483,ship 279484,automobile 279485,frog 279486,frog 279487,truck 279488,deer 279489,truck 279490,deer 279491,ship 279492,airplane 279493,airplane 279494,deer 279495,airplane 279496,dog 279497,frog 279498,ship 279499,airplane 279500,truck 279501,frog 279502,airplane 279503,cat 279504,truck 279505,horse 279506,dog 279507,truck 279508,horse 279509,bird 279510,airplane 279511,ship 279512,frog 279513,truck 279514,deer 279515,truck 279516,airplane 279517,dog 279518,ship 279519,automobile 279520,dog 279521,airplane 279522,bird 279523,deer 279524,frog 279525,ship 279526,truck 279527,bird 279528,horse 279529,ship 279530,dog 279531,dog 279532,cat 279533,cat 279534,frog 279535,dog 279536,bird 279537,horse 279538,truck 279539,bird 279540,truck 279541,truck 279542,horse 279543,dog 279544,automobile 279545,ship 279546,frog 279547,frog 279548,bird 279549,frog 279550,airplane 279551,horse 279552,cat 279553,airplane 279554,ship 279555,truck 279556,cat 279557,ship 279558,horse 279559,cat 279560,horse 279561,automobile 279562,automobile 279563,cat 279564,deer 279565,horse 279566,horse 279567,ship 279568,airplane 279569,truck 279570,automobile 279571,dog 279572,cat 279573,ship 279574,horse 279575,cat 279576,frog 279577,bird 279578,truck 279579,bird 279580,cat 279581,bird 279582,ship 279583,ship 279584,airplane 279585,ship 279586,airplane 279587,cat 279588,deer 279589,automobile 279590,dog 279591,bird 279592,cat 279593,horse 279594,airplane 279595,dog 279596,horse 279597,dog 279598,dog 279599,airplane 279600,bird 279601,horse 279602,cat 279603,deer 279604,frog 279605,automobile 279606,automobile 279607,bird 279608,ship 279609,deer 279610,airplane 279611,bird 279612,bird 279613,deer 279614,frog 279615,ship 279616,cat 279617,horse 279618,truck 279619,truck 279620,automobile 279621,deer 279622,truck 279623,airplane 279624,cat 279625,horse 279626,truck 279627,frog 279628,deer 279629,ship 279630,dog 279631,dog 279632,horse 279633,truck 279634,deer 279635,deer 279636,cat 279637,dog 279638,truck 279639,cat 279640,ship 279641,bird 279642,cat 279643,ship 279644,bird 279645,airplane 279646,bird 279647,deer 279648,airplane 279649,ship 279650,truck 279651,truck 279652,frog 279653,frog 279654,frog 279655,dog 279656,frog 279657,airplane 279658,frog 279659,bird 279660,ship 279661,frog 279662,deer 279663,deer 279664,truck 279665,frog 279666,cat 279667,cat 279668,cat 279669,dog 279670,automobile 279671,horse 279672,deer 279673,cat 279674,airplane 279675,bird 279676,automobile 279677,truck 279678,bird 279679,ship 279680,truck 279681,dog 279682,frog 279683,bird 279684,truck 279685,airplane 279686,deer 279687,frog 279688,ship 279689,horse 279690,dog 279691,deer 279692,bird 279693,airplane 279694,truck 279695,frog 279696,cat 279697,airplane 279698,horse 279699,automobile 279700,truck 279701,truck 279702,frog 279703,frog 279704,deer 279705,ship 279706,truck 279707,bird 279708,automobile 279709,frog 279710,cat 279711,dog 279712,automobile 279713,frog 279714,deer 279715,frog 279716,truck 279717,frog 279718,deer 279719,deer 279720,cat 279721,deer 279722,deer 279723,airplane 279724,truck 279725,dog 279726,airplane 279727,cat 279728,automobile 279729,airplane 279730,horse 279731,truck 279732,deer 279733,cat 279734,truck 279735,ship 279736,bird 279737,cat 279738,airplane 279739,horse 279740,dog 279741,ship 279742,dog 279743,deer 279744,bird 279745,cat 279746,truck 279747,horse 279748,truck 279749,airplane 279750,bird 279751,horse 279752,truck 279753,bird 279754,frog 279755,frog 279756,frog 279757,frog 279758,airplane 279759,airplane 279760,truck 279761,truck 279762,ship 279763,deer 279764,truck 279765,automobile 279766,cat 279767,frog 279768,truck 279769,cat 279770,truck 279771,deer 279772,deer 279773,automobile 279774,frog 279775,cat 279776,deer 279777,cat 279778,ship 279779,deer 279780,frog 279781,ship 279782,deer 279783,deer 279784,automobile 279785,bird 279786,bird 279787,airplane 279788,cat 279789,dog 279790,deer 279791,ship 279792,cat 279793,ship 279794,ship 279795,automobile 279796,truck 279797,ship 279798,deer 279799,deer 279800,deer 279801,frog 279802,horse 279803,automobile 279804,dog 279805,deer 279806,airplane 279807,airplane 279808,ship 279809,horse 279810,horse 279811,horse 279812,deer 279813,deer 279814,deer 279815,deer 279816,automobile 279817,bird 279818,truck 279819,deer 279820,horse 279821,dog 279822,ship 279823,bird 279824,dog 279825,horse 279826,automobile 279827,airplane 279828,cat 279829,deer 279830,cat 279831,bird 279832,bird 279833,automobile 279834,frog 279835,deer 279836,deer 279837,cat 279838,cat 279839,cat 279840,bird 279841,dog 279842,cat 279843,truck 279844,automobile 279845,automobile 279846,truck 279847,horse 279848,airplane 279849,truck 279850,ship 279851,airplane 279852,horse 279853,airplane 279854,dog 279855,bird 279856,dog 279857,truck 279858,automobile 279859,bird 279860,ship 279861,deer 279862,truck 279863,airplane 279864,deer 279865,deer 279866,ship 279867,deer 279868,ship 279869,cat 279870,automobile 279871,ship 279872,horse 279873,bird 279874,deer 279875,deer 279876,airplane 279877,airplane 279878,truck 279879,bird 279880,ship 279881,dog 279882,cat 279883,dog 279884,dog 279885,horse 279886,cat 279887,ship 279888,airplane 279889,deer 279890,bird 279891,dog 279892,truck 279893,dog 279894,cat 279895,bird 279896,deer 279897,dog 279898,bird 279899,bird 279900,airplane 279901,frog 279902,bird 279903,bird 279904,dog 279905,cat 279906,deer 279907,deer 279908,bird 279909,frog 279910,truck 279911,deer 279912,ship 279913,deer 279914,cat 279915,deer 279916,frog 279917,deer 279918,bird 279919,automobile 279920,bird 279921,dog 279922,deer 279923,automobile 279924,cat 279925,cat 279926,dog 279927,deer 279928,frog 279929,dog 279930,deer 279931,truck 279932,frog 279933,airplane 279934,bird 279935,bird 279936,cat 279937,cat 279938,deer 279939,frog 279940,cat 279941,deer 279942,cat 279943,frog 279944,frog 279945,automobile 279946,horse 279947,horse 279948,dog 279949,cat 279950,frog 279951,horse 279952,cat 279953,automobile 279954,truck 279955,truck 279956,bird 279957,truck 279958,deer 279959,frog 279960,deer 279961,airplane 279962,frog 279963,deer 279964,horse 279965,truck 279966,ship 279967,bird 279968,truck 279969,horse 279970,horse 279971,truck 279972,airplane 279973,frog 279974,truck 279975,cat 279976,horse 279977,horse 279978,frog 279979,ship 279980,bird 279981,horse 279982,cat 279983,deer 279984,frog 279985,truck 279986,horse 279987,horse 279988,horse 279989,frog 279990,frog 279991,cat 279992,deer 279993,airplane 279994,deer 279995,dog 279996,horse 279997,frog 279998,horse 279999,airplane 280000,frog 280001,airplane 280002,deer 280003,airplane 280004,airplane 280005,bird 280006,dog 280007,ship 280008,dog 280009,bird 280010,deer 280011,frog 280012,horse 280013,frog 280014,cat 280015,deer 280016,airplane 280017,truck 280018,horse 280019,airplane 280020,cat 280021,bird 280022,ship 280023,bird 280024,airplane 280025,frog 280026,airplane 280027,frog 280028,deer 280029,frog 280030,automobile 280031,bird 280032,automobile 280033,truck 280034,ship 280035,frog 280036,automobile 280037,ship 280038,horse 280039,dog 280040,dog 280041,horse 280042,automobile 280043,horse 280044,cat 280045,horse 280046,airplane 280047,dog 280048,frog 280049,cat 280050,frog 280051,truck 280052,frog 280053,cat 280054,truck 280055,dog 280056,bird 280057,dog 280058,deer 280059,cat 280060,airplane 280061,dog 280062,horse 280063,truck 280064,truck 280065,dog 280066,automobile 280067,bird 280068,automobile 280069,cat 280070,frog 280071,horse 280072,ship 280073,cat 280074,deer 280075,airplane 280076,horse 280077,cat 280078,dog 280079,cat 280080,cat 280081,horse 280082,cat 280083,deer 280084,bird 280085,deer 280086,deer 280087,cat 280088,airplane 280089,horse 280090,deer 280091,truck 280092,bird 280093,airplane 280094,airplane 280095,bird 280096,frog 280097,automobile 280098,dog 280099,bird 280100,deer 280101,ship 280102,truck 280103,bird 280104,truck 280105,frog 280106,bird 280107,automobile 280108,deer 280109,horse 280110,frog 280111,dog 280112,bird 280113,truck 280114,deer 280115,automobile 280116,horse 280117,ship 280118,airplane 280119,ship 280120,cat 280121,bird 280122,bird 280123,frog 280124,frog 280125,frog 280126,deer 280127,deer 280128,bird 280129,deer 280130,horse 280131,deer 280132,dog 280133,dog 280134,cat 280135,automobile 280136,frog 280137,bird 280138,deer 280139,deer 280140,automobile 280141,airplane 280142,cat 280143,airplane 280144,frog 280145,airplane 280146,bird 280147,bird 280148,cat 280149,frog 280150,airplane 280151,deer 280152,truck 280153,horse 280154,cat 280155,frog 280156,truck 280157,horse 280158,dog 280159,deer 280160,deer 280161,cat 280162,deer 280163,automobile 280164,bird 280165,cat 280166,frog 280167,frog 280168,automobile 280169,airplane 280170,horse 280171,cat 280172,airplane 280173,horse 280174,dog 280175,ship 280176,bird 280177,frog 280178,airplane 280179,deer 280180,airplane 280181,frog 280182,cat 280183,cat 280184,dog 280185,dog 280186,automobile 280187,cat 280188,frog 280189,ship 280190,ship 280191,truck 280192,horse 280193,cat 280194,truck 280195,frog 280196,cat 280197,bird 280198,frog 280199,horse 280200,dog 280201,cat 280202,bird 280203,automobile 280204,frog 280205,ship 280206,airplane 280207,frog 280208,automobile 280209,frog 280210,deer 280211,frog 280212,automobile 280213,horse 280214,cat 280215,automobile 280216,deer 280217,deer 280218,dog 280219,dog 280220,airplane 280221,horse 280222,horse 280223,truck 280224,automobile 280225,ship 280226,cat 280227,horse 280228,cat 280229,airplane 280230,truck 280231,bird 280232,ship 280233,truck 280234,truck 280235,cat 280236,horse 280237,cat 280238,cat 280239,horse 280240,automobile 280241,cat 280242,cat 280243,cat 280244,deer 280245,bird 280246,dog 280247,cat 280248,ship 280249,airplane 280250,automobile 280251,truck 280252,automobile 280253,cat 280254,ship 280255,frog 280256,truck 280257,deer 280258,deer 280259,deer 280260,cat 280261,airplane 280262,truck 280263,ship 280264,frog 280265,bird 280266,horse 280267,dog 280268,horse 280269,cat 280270,deer 280271,airplane 280272,frog 280273,cat 280274,dog 280275,truck 280276,bird 280277,truck 280278,cat 280279,deer 280280,horse 280281,airplane 280282,airplane 280283,automobile 280284,dog 280285,airplane 280286,dog 280287,frog 280288,dog 280289,truck 280290,automobile 280291,bird 280292,automobile 280293,cat 280294,bird 280295,ship 280296,deer 280297,horse 280298,bird 280299,horse 280300,horse 280301,ship 280302,airplane 280303,cat 280304,dog 280305,deer 280306,ship 280307,truck 280308,dog 280309,airplane 280310,automobile 280311,frog 280312,dog 280313,dog 280314,airplane 280315,truck 280316,truck 280317,horse 280318,truck 280319,automobile 280320,frog 280321,frog 280322,bird 280323,bird 280324,deer 280325,automobile 280326,ship 280327,frog 280328,ship 280329,horse 280330,deer 280331,horse 280332,deer 280333,cat 280334,airplane 280335,truck 280336,deer 280337,automobile 280338,ship 280339,automobile 280340,airplane 280341,horse 280342,frog 280343,airplane 280344,bird 280345,dog 280346,cat 280347,ship 280348,frog 280349,truck 280350,frog 280351,deer 280352,automobile 280353,horse 280354,frog 280355,airplane 280356,bird 280357,frog 280358,bird 280359,airplane 280360,horse 280361,dog 280362,frog 280363,automobile 280364,airplane 280365,automobile 280366,frog 280367,bird 280368,bird 280369,truck 280370,frog 280371,automobile 280372,ship 280373,airplane 280374,horse 280375,cat 280376,horse 280377,bird 280378,dog 280379,horse 280380,ship 280381,frog 280382,ship 280383,automobile 280384,dog 280385,deer 280386,deer 280387,truck 280388,deer 280389,truck 280390,cat 280391,deer 280392,dog 280393,bird 280394,deer 280395,automobile 280396,dog 280397,automobile 280398,dog 280399,dog 280400,frog 280401,truck 280402,airplane 280403,deer 280404,ship 280405,deer 280406,frog 280407,frog 280408,deer 280409,deer 280410,deer 280411,bird 280412,cat 280413,ship 280414,automobile 280415,airplane 280416,frog 280417,truck 280418,bird 280419,horse 280420,dog 280421,cat 280422,truck 280423,cat 280424,bird 280425,ship 280426,horse 280427,frog 280428,ship 280429,automobile 280430,deer 280431,dog 280432,dog 280433,frog 280434,cat 280435,cat 280436,horse 280437,automobile 280438,deer 280439,cat 280440,truck 280441,airplane 280442,cat 280443,bird 280444,airplane 280445,truck 280446,cat 280447,truck 280448,ship 280449,truck 280450,deer 280451,cat 280452,dog 280453,automobile 280454,airplane 280455,frog 280456,horse 280457,frog 280458,cat 280459,cat 280460,cat 280461,automobile 280462,bird 280463,truck 280464,bird 280465,dog 280466,airplane 280467,horse 280468,cat 280469,ship 280470,deer 280471,truck 280472,cat 280473,ship 280474,bird 280475,horse 280476,truck 280477,bird 280478,bird 280479,horse 280480,airplane 280481,horse 280482,frog 280483,frog 280484,truck 280485,automobile 280486,ship 280487,horse 280488,ship 280489,deer 280490,dog 280491,frog 280492,ship 280493,ship 280494,cat 280495,truck 280496,horse 280497,truck 280498,horse 280499,automobile 280500,cat 280501,truck 280502,frog 280503,ship 280504,horse 280505,horse 280506,truck 280507,airplane 280508,dog 280509,deer 280510,automobile 280511,horse 280512,dog 280513,dog 280514,frog 280515,frog 280516,cat 280517,truck 280518,cat 280519,airplane 280520,truck 280521,automobile 280522,airplane 280523,dog 280524,cat 280525,frog 280526,ship 280527,cat 280528,bird 280529,dog 280530,ship 280531,dog 280532,bird 280533,frog 280534,dog 280535,automobile 280536,horse 280537,automobile 280538,cat 280539,dog 280540,automobile 280541,bird 280542,horse 280543,cat 280544,deer 280545,deer 280546,deer 280547,airplane 280548,airplane 280549,frog 280550,cat 280551,cat 280552,dog 280553,truck 280554,airplane 280555,dog 280556,bird 280557,deer 280558,dog 280559,airplane 280560,horse 280561,frog 280562,ship 280563,frog 280564,truck 280565,horse 280566,ship 280567,automobile 280568,airplane 280569,deer 280570,horse 280571,truck 280572,horse 280573,ship 280574,airplane 280575,horse 280576,deer 280577,dog 280578,frog 280579,bird 280580,cat 280581,frog 280582,airplane 280583,automobile 280584,cat 280585,deer 280586,cat 280587,frog 280588,airplane 280589,dog 280590,deer 280591,cat 280592,airplane 280593,bird 280594,ship 280595,truck 280596,horse 280597,frog 280598,deer 280599,cat 280600,automobile 280601,deer 280602,dog 280603,bird 280604,ship 280605,cat 280606,cat 280607,ship 280608,automobile 280609,truck 280610,horse 280611,truck 280612,horse 280613,horse 280614,ship 280615,deer 280616,deer 280617,dog 280618,dog 280619,deer 280620,bird 280621,dog 280622,horse 280623,dog 280624,bird 280625,truck 280626,bird 280627,airplane 280628,truck 280629,horse 280630,dog 280631,cat 280632,airplane 280633,airplane 280634,automobile 280635,dog 280636,frog 280637,horse 280638,cat 280639,horse 280640,deer 280641,deer 280642,airplane 280643,truck 280644,dog 280645,horse 280646,airplane 280647,dog 280648,truck 280649,horse 280650,cat 280651,airplane 280652,truck 280653,truck 280654,frog 280655,frog 280656,automobile 280657,cat 280658,cat 280659,frog 280660,bird 280661,cat 280662,frog 280663,truck 280664,airplane 280665,deer 280666,bird 280667,deer 280668,cat 280669,airplane 280670,automobile 280671,frog 280672,airplane 280673,airplane 280674,airplane 280675,automobile 280676,dog 280677,dog 280678,deer 280679,dog 280680,airplane 280681,truck 280682,dog 280683,truck 280684,bird 280685,cat 280686,dog 280687,frog 280688,deer 280689,airplane 280690,horse 280691,dog 280692,cat 280693,bird 280694,ship 280695,bird 280696,dog 280697,frog 280698,horse 280699,truck 280700,dog 280701,bird 280702,cat 280703,bird 280704,airplane 280705,frog 280706,bird 280707,deer 280708,frog 280709,airplane 280710,frog 280711,automobile 280712,truck 280713,dog 280714,deer 280715,bird 280716,deer 280717,dog 280718,truck 280719,cat 280720,automobile 280721,frog 280722,truck 280723,dog 280724,deer 280725,deer 280726,frog 280727,deer 280728,ship 280729,ship 280730,dog 280731,ship 280732,truck 280733,deer 280734,truck 280735,bird 280736,deer 280737,bird 280738,airplane 280739,frog 280740,dog 280741,bird 280742,deer 280743,frog 280744,ship 280745,frog 280746,bird 280747,airplane 280748,airplane 280749,automobile 280750,bird 280751,horse 280752,horse 280753,frog 280754,truck 280755,dog 280756,horse 280757,bird 280758,ship 280759,horse 280760,frog 280761,cat 280762,bird 280763,truck 280764,cat 280765,frog 280766,ship 280767,truck 280768,deer 280769,frog 280770,frog 280771,horse 280772,frog 280773,deer 280774,cat 280775,cat 280776,cat 280777,ship 280778,ship 280779,cat 280780,airplane 280781,truck 280782,cat 280783,cat 280784,deer 280785,truck 280786,airplane 280787,dog 280788,dog 280789,frog 280790,frog 280791,deer 280792,deer 280793,automobile 280794,truck 280795,ship 280796,cat 280797,dog 280798,airplane 280799,dog 280800,ship 280801,automobile 280802,deer 280803,truck 280804,automobile 280805,horse 280806,dog 280807,automobile 280808,ship 280809,airplane 280810,airplane 280811,ship 280812,horse 280813,cat 280814,cat 280815,cat 280816,bird 280817,automobile 280818,dog 280819,airplane 280820,cat 280821,deer 280822,airplane 280823,bird 280824,ship 280825,ship 280826,frog 280827,dog 280828,airplane 280829,dog 280830,deer 280831,dog 280832,frog 280833,airplane 280834,dog 280835,cat 280836,deer 280837,horse 280838,bird 280839,horse 280840,horse 280841,truck 280842,bird 280843,cat 280844,dog 280845,deer 280846,deer 280847,frog 280848,automobile 280849,cat 280850,dog 280851,cat 280852,dog 280853,automobile 280854,deer 280855,horse 280856,deer 280857,cat 280858,dog 280859,deer 280860,horse 280861,dog 280862,bird 280863,cat 280864,truck 280865,frog 280866,automobile 280867,cat 280868,deer 280869,dog 280870,deer 280871,ship 280872,bird 280873,dog 280874,truck 280875,frog 280876,bird 280877,airplane 280878,automobile 280879,deer 280880,cat 280881,automobile 280882,truck 280883,frog 280884,airplane 280885,cat 280886,automobile 280887,frog 280888,deer 280889,ship 280890,dog 280891,horse 280892,truck 280893,cat 280894,dog 280895,frog 280896,dog 280897,deer 280898,deer 280899,ship 280900,dog 280901,frog 280902,truck 280903,cat 280904,frog 280905,horse 280906,frog 280907,dog 280908,deer 280909,frog 280910,frog 280911,dog 280912,cat 280913,bird 280914,dog 280915,deer 280916,automobile 280917,frog 280918,airplane 280919,bird 280920,dog 280921,bird 280922,frog 280923,bird 280924,deer 280925,cat 280926,frog 280927,cat 280928,horse 280929,dog 280930,truck 280931,dog 280932,horse 280933,automobile 280934,dog 280935,ship 280936,bird 280937,ship 280938,deer 280939,cat 280940,automobile 280941,bird 280942,truck 280943,ship 280944,deer 280945,bird 280946,cat 280947,ship 280948,horse 280949,bird 280950,ship 280951,dog 280952,bird 280953,truck 280954,truck 280955,dog 280956,automobile 280957,frog 280958,frog 280959,frog 280960,dog 280961,cat 280962,ship 280963,airplane 280964,horse 280965,truck 280966,automobile 280967,automobile 280968,bird 280969,truck 280970,ship 280971,automobile 280972,dog 280973,truck 280974,dog 280975,ship 280976,airplane 280977,dog 280978,bird 280979,cat 280980,horse 280981,dog 280982,cat 280983,frog 280984,horse 280985,ship 280986,ship 280987,bird 280988,dog 280989,cat 280990,cat 280991,bird 280992,ship 280993,airplane 280994,horse 280995,frog 280996,deer 280997,frog 280998,dog 280999,cat 281000,frog 281001,ship 281002,truck 281003,dog 281004,horse 281005,deer 281006,frog 281007,cat 281008,ship 281009,dog 281010,deer 281011,cat 281012,deer 281013,horse 281014,cat 281015,truck 281016,ship 281017,frog 281018,dog 281019,deer 281020,truck 281021,airplane 281022,dog 281023,truck 281024,ship 281025,dog 281026,deer 281027,cat 281028,bird 281029,airplane 281030,airplane 281031,cat 281032,bird 281033,horse 281034,ship 281035,ship 281036,deer 281037,horse 281038,horse 281039,automobile 281040,horse 281041,horse 281042,deer 281043,automobile 281044,deer 281045,cat 281046,horse 281047,ship 281048,frog 281049,deer 281050,horse 281051,cat 281052,deer 281053,automobile 281054,dog 281055,deer 281056,deer 281057,horse 281058,horse 281059,cat 281060,cat 281061,automobile 281062,frog 281063,airplane 281064,frog 281065,horse 281066,cat 281067,horse 281068,horse 281069,horse 281070,cat 281071,horse 281072,bird 281073,dog 281074,cat 281075,cat 281076,ship 281077,frog 281078,dog 281079,automobile 281080,cat 281081,cat 281082,deer 281083,ship 281084,truck 281085,truck 281086,deer 281087,cat 281088,truck 281089,horse 281090,cat 281091,deer 281092,bird 281093,deer 281094,dog 281095,ship 281096,ship 281097,dog 281098,cat 281099,deer 281100,deer 281101,cat 281102,airplane 281103,automobile 281104,bird 281105,ship 281106,frog 281107,deer 281108,cat 281109,frog 281110,frog 281111,truck 281112,horse 281113,deer 281114,ship 281115,ship 281116,horse 281117,automobile 281118,deer 281119,frog 281120,airplane 281121,frog 281122,frog 281123,bird 281124,dog 281125,horse 281126,bird 281127,bird 281128,deer 281129,horse 281130,airplane 281131,bird 281132,truck 281133,ship 281134,airplane 281135,deer 281136,truck 281137,truck 281138,truck 281139,frog 281140,ship 281141,dog 281142,ship 281143,truck 281144,dog 281145,dog 281146,cat 281147,deer 281148,truck 281149,dog 281150,horse 281151,ship 281152,frog 281153,horse 281154,truck 281155,dog 281156,deer 281157,deer 281158,airplane 281159,dog 281160,dog 281161,bird 281162,deer 281163,automobile 281164,horse 281165,cat 281166,truck 281167,cat 281168,cat 281169,deer 281170,deer 281171,horse 281172,automobile 281173,automobile 281174,cat 281175,frog 281176,deer 281177,bird 281178,bird 281179,cat 281180,ship 281181,cat 281182,frog 281183,truck 281184,bird 281185,automobile 281186,bird 281187,frog 281188,automobile 281189,cat 281190,truck 281191,deer 281192,bird 281193,automobile 281194,deer 281195,frog 281196,frog 281197,dog 281198,cat 281199,dog 281200,deer 281201,frog 281202,deer 281203,deer 281204,horse 281205,frog 281206,bird 281207,cat 281208,automobile 281209,frog 281210,cat 281211,bird 281212,frog 281213,airplane 281214,truck 281215,bird 281216,horse 281217,frog 281218,horse 281219,cat 281220,cat 281221,cat 281222,cat 281223,dog 281224,deer 281225,deer 281226,truck 281227,frog 281228,dog 281229,frog 281230,cat 281231,horse 281232,bird 281233,automobile 281234,truck 281235,deer 281236,dog 281237,deer 281238,bird 281239,dog 281240,cat 281241,airplane 281242,dog 281243,deer 281244,truck 281245,frog 281246,deer 281247,horse 281248,bird 281249,frog 281250,deer 281251,truck 281252,dog 281253,airplane 281254,ship 281255,frog 281256,cat 281257,airplane 281258,dog 281259,deer 281260,deer 281261,bird 281262,bird 281263,airplane 281264,frog 281265,dog 281266,deer 281267,deer 281268,cat 281269,horse 281270,deer 281271,frog 281272,cat 281273,automobile 281274,truck 281275,truck 281276,ship 281277,truck 281278,dog 281279,frog 281280,ship 281281,automobile 281282,airplane 281283,bird 281284,frog 281285,deer 281286,frog 281287,airplane 281288,deer 281289,ship 281290,ship 281291,dog 281292,cat 281293,deer 281294,horse 281295,cat 281296,airplane 281297,deer 281298,truck 281299,ship 281300,bird 281301,cat 281302,deer 281303,bird 281304,horse 281305,deer 281306,automobile 281307,dog 281308,cat 281309,bird 281310,automobile 281311,truck 281312,frog 281313,cat 281314,automobile 281315,frog 281316,airplane 281317,dog 281318,ship 281319,deer 281320,bird 281321,dog 281322,ship 281323,frog 281324,horse 281325,frog 281326,truck 281327,truck 281328,frog 281329,truck 281330,ship 281331,dog 281332,automobile 281333,cat 281334,horse 281335,airplane 281336,automobile 281337,truck 281338,frog 281339,bird 281340,airplane 281341,deer 281342,bird 281343,automobile 281344,frog 281345,automobile 281346,frog 281347,frog 281348,frog 281349,automobile 281350,truck 281351,horse 281352,deer 281353,bird 281354,ship 281355,horse 281356,horse 281357,ship 281358,deer 281359,ship 281360,airplane 281361,ship 281362,cat 281363,truck 281364,dog 281365,horse 281366,horse 281367,deer 281368,automobile 281369,truck 281370,bird 281371,ship 281372,airplane 281373,horse 281374,ship 281375,airplane 281376,dog 281377,airplane 281378,automobile 281379,dog 281380,deer 281381,deer 281382,cat 281383,dog 281384,automobile 281385,truck 281386,cat 281387,dog 281388,dog 281389,deer 281390,cat 281391,frog 281392,dog 281393,dog 281394,ship 281395,frog 281396,cat 281397,bird 281398,airplane 281399,deer 281400,bird 281401,ship 281402,horse 281403,automobile 281404,deer 281405,horse 281406,airplane 281407,dog 281408,truck 281409,horse 281410,truck 281411,cat 281412,airplane 281413,truck 281414,cat 281415,automobile 281416,frog 281417,frog 281418,automobile 281419,cat 281420,truck 281421,automobile 281422,bird 281423,horse 281424,deer 281425,automobile 281426,frog 281427,deer 281428,ship 281429,bird 281430,bird 281431,dog 281432,automobile 281433,airplane 281434,frog 281435,bird 281436,frog 281437,frog 281438,deer 281439,frog 281440,horse 281441,truck 281442,bird 281443,truck 281444,cat 281445,bird 281446,deer 281447,horse 281448,truck 281449,cat 281450,horse 281451,automobile 281452,deer 281453,automobile 281454,frog 281455,automobile 281456,automobile 281457,deer 281458,frog 281459,frog 281460,airplane 281461,bird 281462,cat 281463,truck 281464,deer 281465,bird 281466,bird 281467,frog 281468,deer 281469,cat 281470,airplane 281471,automobile 281472,dog 281473,cat 281474,dog 281475,bird 281476,horse 281477,cat 281478,airplane 281479,frog 281480,cat 281481,ship 281482,cat 281483,airplane 281484,frog 281485,deer 281486,frog 281487,bird 281488,cat 281489,ship 281490,automobile 281491,cat 281492,frog 281493,deer 281494,horse 281495,frog 281496,deer 281497,cat 281498,deer 281499,frog 281500,bird 281501,deer 281502,ship 281503,automobile 281504,dog 281505,deer 281506,truck 281507,frog 281508,ship 281509,deer 281510,ship 281511,horse 281512,deer 281513,deer 281514,dog 281515,truck 281516,airplane 281517,dog 281518,horse 281519,deer 281520,airplane 281521,dog 281522,cat 281523,truck 281524,bird 281525,deer 281526,dog 281527,frog 281528,bird 281529,cat 281530,deer 281531,ship 281532,horse 281533,automobile 281534,frog 281535,truck 281536,bird 281537,cat 281538,ship 281539,cat 281540,frog 281541,automobile 281542,truck 281543,deer 281544,frog 281545,deer 281546,truck 281547,truck 281548,deer 281549,deer 281550,truck 281551,frog 281552,cat 281553,dog 281554,airplane 281555,horse 281556,ship 281557,cat 281558,automobile 281559,deer 281560,bird 281561,horse 281562,truck 281563,cat 281564,cat 281565,airplane 281566,airplane 281567,cat 281568,bird 281569,truck 281570,frog 281571,ship 281572,truck 281573,automobile 281574,truck 281575,frog 281576,horse 281577,automobile 281578,cat 281579,deer 281580,horse 281581,airplane 281582,truck 281583,truck 281584,horse 281585,horse 281586,dog 281587,frog 281588,bird 281589,dog 281590,horse 281591,automobile 281592,truck 281593,truck 281594,cat 281595,bird 281596,automobile 281597,ship 281598,automobile 281599,dog 281600,dog 281601,ship 281602,ship 281603,cat 281604,ship 281605,ship 281606,frog 281607,ship 281608,cat 281609,airplane 281610,horse 281611,deer 281612,bird 281613,deer 281614,ship 281615,ship 281616,bird 281617,truck 281618,deer 281619,dog 281620,deer 281621,deer 281622,frog 281623,horse 281624,automobile 281625,automobile 281626,frog 281627,truck 281628,deer 281629,horse 281630,airplane 281631,deer 281632,airplane 281633,airplane 281634,frog 281635,ship 281636,dog 281637,cat 281638,horse 281639,airplane 281640,airplane 281641,deer 281642,dog 281643,cat 281644,ship 281645,horse 281646,frog 281647,bird 281648,cat 281649,bird 281650,airplane 281651,frog 281652,deer 281653,frog 281654,bird 281655,dog 281656,dog 281657,airplane 281658,truck 281659,frog 281660,dog 281661,cat 281662,bird 281663,horse 281664,cat 281665,horse 281666,truck 281667,cat 281668,automobile 281669,cat 281670,automobile 281671,dog 281672,cat 281673,truck 281674,dog 281675,horse 281676,deer 281677,frog 281678,bird 281679,truck 281680,bird 281681,frog 281682,dog 281683,dog 281684,bird 281685,bird 281686,cat 281687,deer 281688,automobile 281689,automobile 281690,deer 281691,airplane 281692,cat 281693,dog 281694,airplane 281695,dog 281696,ship 281697,dog 281698,bird 281699,deer 281700,deer 281701,dog 281702,deer 281703,dog 281704,deer 281705,cat 281706,airplane 281707,horse 281708,automobile 281709,bird 281710,dog 281711,horse 281712,automobile 281713,automobile 281714,deer 281715,frog 281716,deer 281717,airplane 281718,cat 281719,airplane 281720,truck 281721,automobile 281722,dog 281723,truck 281724,dog 281725,frog 281726,frog 281727,bird 281728,frog 281729,automobile 281730,deer 281731,cat 281732,bird 281733,bird 281734,ship 281735,automobile 281736,bird 281737,dog 281738,frog 281739,bird 281740,deer 281741,frog 281742,dog 281743,truck 281744,truck 281745,deer 281746,automobile 281747,bird 281748,dog 281749,airplane 281750,truck 281751,frog 281752,bird 281753,horse 281754,dog 281755,horse 281756,bird 281757,deer 281758,airplane 281759,frog 281760,airplane 281761,deer 281762,cat 281763,deer 281764,horse 281765,truck 281766,dog 281767,automobile 281768,horse 281769,deer 281770,automobile 281771,truck 281772,bird 281773,frog 281774,truck 281775,frog 281776,cat 281777,dog 281778,deer 281779,truck 281780,ship 281781,ship 281782,cat 281783,dog 281784,truck 281785,automobile 281786,bird 281787,airplane 281788,horse 281789,frog 281790,deer 281791,deer 281792,deer 281793,cat 281794,ship 281795,frog 281796,cat 281797,ship 281798,dog 281799,truck 281800,cat 281801,truck 281802,ship 281803,ship 281804,truck 281805,bird 281806,truck 281807,cat 281808,frog 281809,bird 281810,horse 281811,deer 281812,ship 281813,ship 281814,ship 281815,airplane 281816,truck 281817,frog 281818,truck 281819,airplane 281820,bird 281821,cat 281822,deer 281823,ship 281824,horse 281825,airplane 281826,bird 281827,automobile 281828,automobile 281829,dog 281830,dog 281831,cat 281832,cat 281833,automobile 281834,cat 281835,dog 281836,bird 281837,truck 281838,cat 281839,truck 281840,automobile 281841,dog 281842,airplane 281843,bird 281844,horse 281845,cat 281846,cat 281847,bird 281848,deer 281849,frog 281850,bird 281851,dog 281852,bird 281853,bird 281854,airplane 281855,dog 281856,bird 281857,frog 281858,horse 281859,airplane 281860,truck 281861,frog 281862,cat 281863,airplane 281864,deer 281865,automobile 281866,frog 281867,automobile 281868,bird 281869,truck 281870,truck 281871,ship 281872,deer 281873,ship 281874,horse 281875,airplane 281876,automobile 281877,cat 281878,deer 281879,cat 281880,deer 281881,bird 281882,cat 281883,horse 281884,automobile 281885,bird 281886,airplane 281887,cat 281888,airplane 281889,airplane 281890,horse 281891,deer 281892,frog 281893,airplane 281894,cat 281895,deer 281896,dog 281897,horse 281898,deer 281899,ship 281900,deer 281901,automobile 281902,deer 281903,bird 281904,bird 281905,cat 281906,truck 281907,frog 281908,truck 281909,deer 281910,cat 281911,dog 281912,truck 281913,ship 281914,dog 281915,ship 281916,ship 281917,frog 281918,automobile 281919,automobile 281920,truck 281921,frog 281922,airplane 281923,dog 281924,deer 281925,bird 281926,cat 281927,airplane 281928,deer 281929,airplane 281930,ship 281931,deer 281932,bird 281933,cat 281934,deer 281935,cat 281936,truck 281937,automobile 281938,cat 281939,airplane 281940,automobile 281941,cat 281942,airplane 281943,truck 281944,automobile 281945,airplane 281946,bird 281947,dog 281948,ship 281949,cat 281950,horse 281951,bird 281952,automobile 281953,automobile 281954,frog 281955,airplane 281956,dog 281957,cat 281958,bird 281959,frog 281960,frog 281961,cat 281962,horse 281963,ship 281964,truck 281965,airplane 281966,horse 281967,airplane 281968,airplane 281969,frog 281970,automobile 281971,horse 281972,dog 281973,bird 281974,frog 281975,bird 281976,airplane 281977,cat 281978,airplane 281979,deer 281980,dog 281981,ship 281982,deer 281983,truck 281984,frog 281985,ship 281986,ship 281987,cat 281988,horse 281989,ship 281990,ship 281991,airplane 281992,ship 281993,automobile 281994,bird 281995,airplane 281996,truck 281997,truck 281998,ship 281999,dog 282000,airplane 282001,deer 282002,horse 282003,airplane 282004,dog 282005,dog 282006,truck 282007,truck 282008,deer 282009,dog 282010,deer 282011,frog 282012,truck 282013,truck 282014,dog 282015,airplane 282016,cat 282017,frog 282018,frog 282019,frog 282020,automobile 282021,airplane 282022,airplane 282023,frog 282024,ship 282025,horse 282026,automobile 282027,truck 282028,cat 282029,dog 282030,deer 282031,horse 282032,cat 282033,truck 282034,frog 282035,bird 282036,truck 282037,airplane 282038,frog 282039,bird 282040,ship 282041,bird 282042,bird 282043,cat 282044,cat 282045,dog 282046,airplane 282047,bird 282048,deer 282049,dog 282050,horse 282051,cat 282052,cat 282053,deer 282054,cat 282055,airplane 282056,deer 282057,deer 282058,dog 282059,cat 282060,horse 282061,horse 282062,cat 282063,deer 282064,dog 282065,ship 282066,deer 282067,deer 282068,dog 282069,cat 282070,dog 282071,horse 282072,truck 282073,horse 282074,automobile 282075,deer 282076,deer 282077,truck 282078,frog 282079,horse 282080,cat 282081,bird 282082,deer 282083,airplane 282084,truck 282085,deer 282086,airplane 282087,frog 282088,truck 282089,automobile 282090,horse 282091,automobile 282092,automobile 282093,deer 282094,deer 282095,horse 282096,bird 282097,truck 282098,automobile 282099,truck 282100,deer 282101,truck 282102,deer 282103,horse 282104,deer 282105,cat 282106,horse 282107,automobile 282108,deer 282109,frog 282110,truck 282111,ship 282112,truck 282113,automobile 282114,cat 282115,dog 282116,ship 282117,cat 282118,frog 282119,cat 282120,deer 282121,cat 282122,bird 282123,automobile 282124,cat 282125,cat 282126,cat 282127,frog 282128,horse 282129,horse 282130,ship 282131,truck 282132,automobile 282133,horse 282134,truck 282135,cat 282136,frog 282137,truck 282138,dog 282139,dog 282140,horse 282141,cat 282142,automobile 282143,horse 282144,cat 282145,horse 282146,truck 282147,automobile 282148,cat 282149,deer 282150,horse 282151,cat 282152,automobile 282153,ship 282154,deer 282155,airplane 282156,deer 282157,automobile 282158,truck 282159,airplane 282160,cat 282161,ship 282162,deer 282163,deer 282164,ship 282165,bird 282166,truck 282167,ship 282168,bird 282169,cat 282170,dog 282171,deer 282172,automobile 282173,cat 282174,frog 282175,deer 282176,dog 282177,frog 282178,dog 282179,frog 282180,cat 282181,deer 282182,airplane 282183,airplane 282184,airplane 282185,airplane 282186,ship 282187,airplane 282188,horse 282189,ship 282190,automobile 282191,airplane 282192,horse 282193,dog 282194,bird 282195,cat 282196,cat 282197,bird 282198,cat 282199,airplane 282200,dog 282201,deer 282202,cat 282203,bird 282204,horse 282205,truck 282206,cat 282207,frog 282208,cat 282209,frog 282210,deer 282211,automobile 282212,horse 282213,dog 282214,bird 282215,deer 282216,ship 282217,frog 282218,automobile 282219,bird 282220,horse 282221,horse 282222,deer 282223,frog 282224,frog 282225,airplane 282226,ship 282227,frog 282228,ship 282229,cat 282230,bird 282231,deer 282232,bird 282233,ship 282234,frog 282235,dog 282236,horse 282237,automobile 282238,horse 282239,dog 282240,deer 282241,frog 282242,airplane 282243,frog 282244,horse 282245,airplane 282246,cat 282247,deer 282248,frog 282249,dog 282250,ship 282251,ship 282252,bird 282253,dog 282254,dog 282255,ship 282256,frog 282257,deer 282258,truck 282259,frog 282260,airplane 282261,frog 282262,dog 282263,bird 282264,bird 282265,airplane 282266,truck 282267,ship 282268,cat 282269,airplane 282270,frog 282271,deer 282272,bird 282273,cat 282274,ship 282275,frog 282276,cat 282277,deer 282278,deer 282279,truck 282280,truck 282281,airplane 282282,frog 282283,frog 282284,ship 282285,bird 282286,truck 282287,frog 282288,deer 282289,frog 282290,airplane 282291,cat 282292,airplane 282293,dog 282294,frog 282295,frog 282296,frog 282297,airplane 282298,truck 282299,truck 282300,automobile 282301,dog 282302,deer 282303,cat 282304,frog 282305,deer 282306,automobile 282307,cat 282308,deer 282309,horse 282310,deer 282311,cat 282312,truck 282313,bird 282314,bird 282315,ship 282316,airplane 282317,cat 282318,automobile 282319,airplane 282320,cat 282321,dog 282322,cat 282323,horse 282324,automobile 282325,ship 282326,bird 282327,dog 282328,dog 282329,truck 282330,cat 282331,deer 282332,deer 282333,dog 282334,automobile 282335,frog 282336,automobile 282337,horse 282338,dog 282339,dog 282340,frog 282341,frog 282342,deer 282343,truck 282344,airplane 282345,horse 282346,cat 282347,frog 282348,frog 282349,truck 282350,airplane 282351,horse 282352,cat 282353,bird 282354,deer 282355,bird 282356,dog 282357,cat 282358,cat 282359,dog 282360,automobile 282361,bird 282362,bird 282363,deer 282364,airplane 282365,horse 282366,airplane 282367,dog 282368,automobile 282369,bird 282370,bird 282371,cat 282372,airplane 282373,deer 282374,bird 282375,automobile 282376,deer 282377,bird 282378,bird 282379,cat 282380,deer 282381,ship 282382,ship 282383,deer 282384,truck 282385,dog 282386,deer 282387,frog 282388,ship 282389,airplane 282390,dog 282391,dog 282392,frog 282393,frog 282394,truck 282395,bird 282396,cat 282397,truck 282398,frog 282399,truck 282400,truck 282401,frog 282402,dog 282403,deer 282404,frog 282405,frog 282406,dog 282407,airplane 282408,horse 282409,cat 282410,automobile 282411,cat 282412,cat 282413,cat 282414,truck 282415,airplane 282416,horse 282417,automobile 282418,automobile 282419,dog 282420,ship 282421,frog 282422,automobile 282423,dog 282424,truck 282425,truck 282426,airplane 282427,dog 282428,cat 282429,cat 282430,deer 282431,cat 282432,horse 282433,bird 282434,frog 282435,bird 282436,horse 282437,deer 282438,cat 282439,cat 282440,bird 282441,truck 282442,dog 282443,frog 282444,frog 282445,deer 282446,deer 282447,frog 282448,bird 282449,airplane 282450,horse 282451,dog 282452,truck 282453,frog 282454,bird 282455,deer 282456,bird 282457,airplane 282458,cat 282459,cat 282460,ship 282461,horse 282462,deer 282463,dog 282464,deer 282465,airplane 282466,truck 282467,cat 282468,bird 282469,bird 282470,ship 282471,airplane 282472,truck 282473,dog 282474,airplane 282475,frog 282476,truck 282477,dog 282478,deer 282479,bird 282480,airplane 282481,automobile 282482,bird 282483,airplane 282484,airplane 282485,cat 282486,truck 282487,ship 282488,truck 282489,cat 282490,frog 282491,ship 282492,bird 282493,automobile 282494,airplane 282495,cat 282496,truck 282497,cat 282498,cat 282499,truck 282500,frog 282501,airplane 282502,deer 282503,ship 282504,truck 282505,deer 282506,cat 282507,frog 282508,frog 282509,ship 282510,deer 282511,automobile 282512,bird 282513,automobile 282514,automobile 282515,frog 282516,dog 282517,cat 282518,deer 282519,bird 282520,horse 282521,ship 282522,dog 282523,dog 282524,deer 282525,cat 282526,airplane 282527,bird 282528,truck 282529,deer 282530,deer 282531,dog 282532,deer 282533,bird 282534,dog 282535,airplane 282536,bird 282537,deer 282538,horse 282539,deer 282540,frog 282541,ship 282542,ship 282543,dog 282544,ship 282545,truck 282546,cat 282547,deer 282548,cat 282549,bird 282550,bird 282551,airplane 282552,deer 282553,dog 282554,cat 282555,dog 282556,dog 282557,airplane 282558,dog 282559,bird 282560,cat 282561,truck 282562,deer 282563,deer 282564,cat 282565,automobile 282566,horse 282567,ship 282568,airplane 282569,airplane 282570,frog 282571,frog 282572,truck 282573,deer 282574,bird 282575,truck 282576,dog 282577,bird 282578,cat 282579,deer 282580,truck 282581,airplane 282582,airplane 282583,dog 282584,deer 282585,bird 282586,ship 282587,cat 282588,horse 282589,horse 282590,cat 282591,deer 282592,ship 282593,truck 282594,frog 282595,ship 282596,truck 282597,cat 282598,cat 282599,airplane 282600,cat 282601,cat 282602,dog 282603,automobile 282604,dog 282605,bird 282606,bird 282607,automobile 282608,frog 282609,cat 282610,airplane 282611,dog 282612,ship 282613,deer 282614,automobile 282615,dog 282616,frog 282617,truck 282618,truck 282619,truck 282620,truck 282621,bird 282622,automobile 282623,deer 282624,truck 282625,frog 282626,ship 282627,horse 282628,truck 282629,frog 282630,horse 282631,cat 282632,frog 282633,automobile 282634,automobile 282635,deer 282636,bird 282637,deer 282638,airplane 282639,deer 282640,cat 282641,deer 282642,airplane 282643,cat 282644,cat 282645,horse 282646,airplane 282647,deer 282648,horse 282649,automobile 282650,frog 282651,truck 282652,cat 282653,airplane 282654,bird 282655,bird 282656,automobile 282657,deer 282658,truck 282659,cat 282660,deer 282661,bird 282662,cat 282663,bird 282664,deer 282665,dog 282666,cat 282667,frog 282668,airplane 282669,cat 282670,ship 282671,ship 282672,frog 282673,ship 282674,automobile 282675,frog 282676,airplane 282677,dog 282678,dog 282679,bird 282680,bird 282681,automobile 282682,horse 282683,horse 282684,airplane 282685,horse 282686,truck 282687,truck 282688,horse 282689,ship 282690,horse 282691,cat 282692,horse 282693,truck 282694,horse 282695,horse 282696,dog 282697,deer 282698,ship 282699,cat 282700,dog 282701,deer 282702,automobile 282703,bird 282704,horse 282705,dog 282706,dog 282707,horse 282708,horse 282709,cat 282710,truck 282711,deer 282712,cat 282713,frog 282714,automobile 282715,horse 282716,truck 282717,deer 282718,automobile 282719,horse 282720,bird 282721,deer 282722,airplane 282723,airplane 282724,automobile 282725,bird 282726,cat 282727,truck 282728,ship 282729,dog 282730,dog 282731,ship 282732,cat 282733,ship 282734,frog 282735,frog 282736,ship 282737,cat 282738,automobile 282739,airplane 282740,frog 282741,horse 282742,dog 282743,dog 282744,automobile 282745,dog 282746,horse 282747,truck 282748,dog 282749,bird 282750,deer 282751,airplane 282752,truck 282753,bird 282754,deer 282755,deer 282756,frog 282757,ship 282758,horse 282759,cat 282760,bird 282761,airplane 282762,horse 282763,dog 282764,cat 282765,bird 282766,cat 282767,bird 282768,deer 282769,deer 282770,cat 282771,cat 282772,horse 282773,cat 282774,automobile 282775,deer 282776,deer 282777,cat 282778,deer 282779,bird 282780,frog 282781,truck 282782,deer 282783,deer 282784,airplane 282785,frog 282786,deer 282787,horse 282788,deer 282789,deer 282790,airplane 282791,truck 282792,truck 282793,ship 282794,truck 282795,frog 282796,horse 282797,automobile 282798,frog 282799,horse 282800,truck 282801,truck 282802,truck 282803,deer 282804,frog 282805,dog 282806,ship 282807,bird 282808,ship 282809,cat 282810,horse 282811,truck 282812,deer 282813,horse 282814,horse 282815,deer 282816,truck 282817,bird 282818,automobile 282819,frog 282820,automobile 282821,bird 282822,frog 282823,cat 282824,bird 282825,dog 282826,airplane 282827,horse 282828,airplane 282829,airplane 282830,ship 282831,bird 282832,automobile 282833,cat 282834,bird 282835,frog 282836,cat 282837,frog 282838,dog 282839,automobile 282840,frog 282841,airplane 282842,dog 282843,bird 282844,bird 282845,deer 282846,airplane 282847,airplane 282848,horse 282849,deer 282850,horse 282851,truck 282852,airplane 282853,bird 282854,horse 282855,dog 282856,dog 282857,automobile 282858,deer 282859,horse 282860,cat 282861,bird 282862,bird 282863,horse 282864,dog 282865,dog 282866,deer 282867,horse 282868,ship 282869,frog 282870,automobile 282871,airplane 282872,horse 282873,cat 282874,frog 282875,airplane 282876,ship 282877,frog 282878,bird 282879,truck 282880,truck 282881,bird 282882,airplane 282883,cat 282884,cat 282885,horse 282886,frog 282887,truck 282888,ship 282889,cat 282890,frog 282891,deer 282892,truck 282893,cat 282894,cat 282895,frog 282896,automobile 282897,truck 282898,horse 282899,horse 282900,dog 282901,frog 282902,dog 282903,deer 282904,cat 282905,airplane 282906,bird 282907,airplane 282908,dog 282909,cat 282910,dog 282911,deer 282912,deer 282913,frog 282914,bird 282915,cat 282916,deer 282917,truck 282918,cat 282919,dog 282920,bird 282921,truck 282922,frog 282923,deer 282924,deer 282925,horse 282926,truck 282927,dog 282928,deer 282929,horse 282930,automobile 282931,cat 282932,dog 282933,horse 282934,frog 282935,dog 282936,truck 282937,bird 282938,horse 282939,automobile 282940,cat 282941,frog 282942,deer 282943,frog 282944,airplane 282945,airplane 282946,bird 282947,horse 282948,ship 282949,dog 282950,dog 282951,frog 282952,deer 282953,truck 282954,automobile 282955,cat 282956,cat 282957,automobile 282958,dog 282959,airplane 282960,truck 282961,deer 282962,automobile 282963,dog 282964,airplane 282965,horse 282966,deer 282967,dog 282968,frog 282969,deer 282970,horse 282971,frog 282972,deer 282973,frog 282974,automobile 282975,bird 282976,cat 282977,deer 282978,frog 282979,deer 282980,frog 282981,bird 282982,automobile 282983,cat 282984,airplane 282985,dog 282986,frog 282987,ship 282988,automobile 282989,airplane 282990,dog 282991,dog 282992,airplane 282993,horse 282994,cat 282995,dog 282996,automobile 282997,horse 282998,airplane 282999,dog 283000,airplane 283001,automobile 283002,cat 283003,truck 283004,horse 283005,frog 283006,ship 283007,airplane 283008,frog 283009,ship 283010,bird 283011,truck 283012,deer 283013,cat 283014,ship 283015,ship 283016,airplane 283017,horse 283018,truck 283019,bird 283020,horse 283021,airplane 283022,frog 283023,truck 283024,frog 283025,frog 283026,bird 283027,truck 283028,horse 283029,automobile 283030,ship 283031,ship 283032,ship 283033,horse 283034,dog 283035,frog 283036,deer 283037,frog 283038,bird 283039,bird 283040,truck 283041,truck 283042,ship 283043,bird 283044,truck 283045,bird 283046,automobile 283047,airplane 283048,bird 283049,horse 283050,ship 283051,dog 283052,automobile 283053,dog 283054,deer 283055,ship 283056,dog 283057,bird 283058,automobile 283059,horse 283060,truck 283061,dog 283062,horse 283063,bird 283064,ship 283065,horse 283066,airplane 283067,cat 283068,airplane 283069,horse 283070,deer 283071,airplane 283072,bird 283073,dog 283074,deer 283075,deer 283076,frog 283077,ship 283078,frog 283079,bird 283080,horse 283081,cat 283082,horse 283083,dog 283084,horse 283085,automobile 283086,deer 283087,dog 283088,automobile 283089,ship 283090,bird 283091,cat 283092,bird 283093,airplane 283094,bird 283095,horse 283096,cat 283097,truck 283098,dog 283099,ship 283100,airplane 283101,dog 283102,dog 283103,dog 283104,ship 283105,deer 283106,cat 283107,deer 283108,deer 283109,horse 283110,horse 283111,frog 283112,frog 283113,cat 283114,deer 283115,dog 283116,deer 283117,deer 283118,horse 283119,bird 283120,ship 283121,ship 283122,cat 283123,bird 283124,automobile 283125,horse 283126,frog 283127,ship 283128,cat 283129,airplane 283130,ship 283131,frog 283132,dog 283133,deer 283134,dog 283135,bird 283136,truck 283137,automobile 283138,ship 283139,deer 283140,dog 283141,deer 283142,automobile 283143,automobile 283144,truck 283145,cat 283146,horse 283147,airplane 283148,airplane 283149,horse 283150,frog 283151,frog 283152,cat 283153,deer 283154,horse 283155,truck 283156,truck 283157,deer 283158,bird 283159,bird 283160,cat 283161,cat 283162,horse 283163,ship 283164,bird 283165,deer 283166,deer 283167,frog 283168,automobile 283169,airplane 283170,truck 283171,automobile 283172,bird 283173,horse 283174,truck 283175,deer 283176,truck 283177,frog 283178,dog 283179,dog 283180,dog 283181,cat 283182,cat 283183,truck 283184,automobile 283185,cat 283186,dog 283187,frog 283188,automobile 283189,truck 283190,deer 283191,frog 283192,horse 283193,ship 283194,airplane 283195,airplane 283196,horse 283197,dog 283198,frog 283199,bird 283200,bird 283201,deer 283202,truck 283203,dog 283204,automobile 283205,dog 283206,deer 283207,horse 283208,deer 283209,deer 283210,cat 283211,deer 283212,horse 283213,deer 283214,bird 283215,deer 283216,truck 283217,truck 283218,deer 283219,dog 283220,horse 283221,ship 283222,cat 283223,ship 283224,cat 283225,automobile 283226,airplane 283227,automobile 283228,airplane 283229,airplane 283230,cat 283231,ship 283232,horse 283233,cat 283234,dog 283235,deer 283236,bird 283237,ship 283238,deer 283239,airplane 283240,cat 283241,airplane 283242,bird 283243,ship 283244,automobile 283245,horse 283246,airplane 283247,horse 283248,dog 283249,truck 283250,cat 283251,airplane 283252,horse 283253,frog 283254,truck 283255,dog 283256,frog 283257,automobile 283258,dog 283259,ship 283260,deer 283261,ship 283262,deer 283263,cat 283264,ship 283265,dog 283266,dog 283267,automobile 283268,airplane 283269,airplane 283270,cat 283271,deer 283272,deer 283273,dog 283274,deer 283275,dog 283276,bird 283277,truck 283278,horse 283279,automobile 283280,truck 283281,cat 283282,cat 283283,horse 283284,frog 283285,truck 283286,horse 283287,horse 283288,horse 283289,cat 283290,deer 283291,automobile 283292,ship 283293,deer 283294,cat 283295,dog 283296,truck 283297,bird 283298,frog 283299,airplane 283300,automobile 283301,dog 283302,deer 283303,dog 283304,cat 283305,frog 283306,cat 283307,truck 283308,airplane 283309,ship 283310,horse 283311,dog 283312,deer 283313,airplane 283314,automobile 283315,bird 283316,ship 283317,deer 283318,cat 283319,airplane 283320,frog 283321,horse 283322,truck 283323,dog 283324,frog 283325,truck 283326,cat 283327,frog 283328,deer 283329,automobile 283330,ship 283331,cat 283332,airplane 283333,cat 283334,deer 283335,dog 283336,bird 283337,frog 283338,horse 283339,frog 283340,deer 283341,deer 283342,bird 283343,dog 283344,bird 283345,ship 283346,deer 283347,truck 283348,deer 283349,cat 283350,bird 283351,deer 283352,ship 283353,cat 283354,cat 283355,frog 283356,airplane 283357,deer 283358,cat 283359,dog 283360,horse 283361,truck 283362,deer 283363,deer 283364,bird 283365,airplane 283366,frog 283367,automobile 283368,bird 283369,airplane 283370,frog 283371,frog 283372,cat 283373,cat 283374,frog 283375,automobile 283376,airplane 283377,dog 283378,dog 283379,cat 283380,ship 283381,cat 283382,dog 283383,frog 283384,truck 283385,horse 283386,horse 283387,cat 283388,frog 283389,horse 283390,airplane 283391,horse 283392,frog 283393,deer 283394,deer 283395,deer 283396,cat 283397,frog 283398,airplane 283399,truck 283400,deer 283401,truck 283402,deer 283403,frog 283404,truck 283405,frog 283406,truck 283407,airplane 283408,horse 283409,cat 283410,bird 283411,cat 283412,deer 283413,automobile 283414,horse 283415,automobile 283416,deer 283417,frog 283418,deer 283419,truck 283420,cat 283421,deer 283422,deer 283423,automobile 283424,truck 283425,airplane 283426,cat 283427,deer 283428,frog 283429,frog 283430,horse 283431,truck 283432,cat 283433,dog 283434,horse 283435,ship 283436,frog 283437,deer 283438,deer 283439,airplane 283440,deer 283441,ship 283442,automobile 283443,dog 283444,dog 283445,cat 283446,frog 283447,truck 283448,cat 283449,ship 283450,bird 283451,airplane 283452,airplane 283453,bird 283454,ship 283455,airplane 283456,bird 283457,cat 283458,bird 283459,frog 283460,cat 283461,truck 283462,airplane 283463,dog 283464,automobile 283465,cat 283466,horse 283467,truck 283468,ship 283469,ship 283470,deer 283471,deer 283472,horse 283473,bird 283474,cat 283475,airplane 283476,ship 283477,automobile 283478,horse 283479,deer 283480,bird 283481,horse 283482,bird 283483,horse 283484,frog 283485,bird 283486,truck 283487,ship 283488,automobile 283489,frog 283490,horse 283491,cat 283492,cat 283493,dog 283494,frog 283495,ship 283496,cat 283497,cat 283498,horse 283499,dog 283500,dog 283501,automobile 283502,horse 283503,bird 283504,airplane 283505,truck 283506,ship 283507,cat 283508,frog 283509,automobile 283510,airplane 283511,truck 283512,bird 283513,ship 283514,ship 283515,dog 283516,ship 283517,dog 283518,deer 283519,cat 283520,deer 283521,truck 283522,frog 283523,ship 283524,cat 283525,truck 283526,cat 283527,truck 283528,deer 283529,frog 283530,deer 283531,airplane 283532,ship 283533,ship 283534,ship 283535,deer 283536,deer 283537,cat 283538,bird 283539,frog 283540,ship 283541,dog 283542,automobile 283543,cat 283544,automobile 283545,bird 283546,deer 283547,airplane 283548,truck 283549,horse 283550,dog 283551,automobile 283552,bird 283553,automobile 283554,frog 283555,cat 283556,cat 283557,frog 283558,airplane 283559,cat 283560,automobile 283561,automobile 283562,frog 283563,cat 283564,dog 283565,ship 283566,automobile 283567,bird 283568,cat 283569,cat 283570,horse 283571,dog 283572,cat 283573,truck 283574,automobile 283575,truck 283576,dog 283577,airplane 283578,cat 283579,truck 283580,truck 283581,frog 283582,ship 283583,deer 283584,horse 283585,dog 283586,dog 283587,bird 283588,frog 283589,bird 283590,deer 283591,airplane 283592,automobile 283593,automobile 283594,deer 283595,deer 283596,deer 283597,bird 283598,airplane 283599,frog 283600,horse 283601,bird 283602,frog 283603,deer 283604,deer 283605,horse 283606,ship 283607,airplane 283608,bird 283609,ship 283610,frog 283611,truck 283612,truck 283613,airplane 283614,truck 283615,dog 283616,airplane 283617,bird 283618,frog 283619,horse 283620,truck 283621,dog 283622,frog 283623,horse 283624,truck 283625,automobile 283626,horse 283627,deer 283628,frog 283629,airplane 283630,airplane 283631,cat 283632,deer 283633,deer 283634,ship 283635,bird 283636,frog 283637,airplane 283638,bird 283639,deer 283640,deer 283641,automobile 283642,truck 283643,bird 283644,deer 283645,cat 283646,cat 283647,truck 283648,cat 283649,frog 283650,horse 283651,cat 283652,truck 283653,cat 283654,truck 283655,truck 283656,truck 283657,cat 283658,horse 283659,truck 283660,cat 283661,horse 283662,deer 283663,deer 283664,horse 283665,truck 283666,dog 283667,automobile 283668,cat 283669,ship 283670,dog 283671,dog 283672,truck 283673,deer 283674,truck 283675,cat 283676,frog 283677,frog 283678,horse 283679,deer 283680,bird 283681,truck 283682,automobile 283683,horse 283684,cat 283685,deer 283686,deer 283687,bird 283688,horse 283689,dog 283690,cat 283691,deer 283692,deer 283693,ship 283694,cat 283695,frog 283696,cat 283697,bird 283698,deer 283699,dog 283700,cat 283701,bird 283702,horse 283703,frog 283704,cat 283705,cat 283706,deer 283707,truck 283708,cat 283709,truck 283710,truck 283711,deer 283712,cat 283713,horse 283714,truck 283715,bird 283716,bird 283717,truck 283718,deer 283719,horse 283720,cat 283721,truck 283722,cat 283723,deer 283724,cat 283725,frog 283726,dog 283727,airplane 283728,cat 283729,deer 283730,dog 283731,deer 283732,airplane 283733,ship 283734,frog 283735,automobile 283736,frog 283737,bird 283738,truck 283739,cat 283740,cat 283741,cat 283742,horse 283743,cat 283744,dog 283745,truck 283746,automobile 283747,bird 283748,frog 283749,ship 283750,bird 283751,cat 283752,truck 283753,cat 283754,truck 283755,bird 283756,frog 283757,frog 283758,frog 283759,frog 283760,bird 283761,deer 283762,deer 283763,airplane 283764,ship 283765,cat 283766,cat 283767,cat 283768,bird 283769,cat 283770,bird 283771,frog 283772,airplane 283773,ship 283774,bird 283775,horse 283776,automobile 283777,ship 283778,airplane 283779,horse 283780,airplane 283781,frog 283782,ship 283783,truck 283784,frog 283785,truck 283786,horse 283787,dog 283788,cat 283789,dog 283790,dog 283791,frog 283792,automobile 283793,truck 283794,frog 283795,deer 283796,frog 283797,dog 283798,dog 283799,frog 283800,frog 283801,frog 283802,horse 283803,ship 283804,dog 283805,automobile 283806,ship 283807,airplane 283808,deer 283809,airplane 283810,cat 283811,deer 283812,frog 283813,dog 283814,horse 283815,bird 283816,bird 283817,frog 283818,deer 283819,deer 283820,cat 283821,automobile 283822,deer 283823,horse 283824,truck 283825,deer 283826,deer 283827,deer 283828,frog 283829,dog 283830,cat 283831,bird 283832,deer 283833,deer 283834,deer 283835,cat 283836,frog 283837,airplane 283838,dog 283839,automobile 283840,deer 283841,deer 283842,automobile 283843,automobile 283844,deer 283845,frog 283846,frog 283847,horse 283848,deer 283849,frog 283850,dog 283851,airplane 283852,deer 283853,cat 283854,cat 283855,deer 283856,cat 283857,horse 283858,frog 283859,horse 283860,horse 283861,bird 283862,truck 283863,frog 283864,horse 283865,frog 283866,truck 283867,bird 283868,frog 283869,frog 283870,dog 283871,bird 283872,deer 283873,bird 283874,deer 283875,bird 283876,frog 283877,airplane 283878,ship 283879,horse 283880,truck 283881,frog 283882,dog 283883,truck 283884,horse 283885,deer 283886,truck 283887,ship 283888,automobile 283889,frog 283890,deer 283891,cat 283892,dog 283893,truck 283894,deer 283895,truck 283896,cat 283897,dog 283898,truck 283899,deer 283900,horse 283901,cat 283902,truck 283903,automobile 283904,cat 283905,frog 283906,frog 283907,airplane 283908,horse 283909,ship 283910,frog 283911,deer 283912,cat 283913,truck 283914,truck 283915,truck 283916,deer 283917,horse 283918,cat 283919,horse 283920,cat 283921,frog 283922,deer 283923,frog 283924,truck 283925,truck 283926,airplane 283927,cat 283928,automobile 283929,deer 283930,cat 283931,airplane 283932,truck 283933,cat 283934,automobile 283935,deer 283936,truck 283937,ship 283938,horse 283939,deer 283940,bird 283941,automobile 283942,truck 283943,dog 283944,deer 283945,cat 283946,frog 283947,airplane 283948,ship 283949,bird 283950,cat 283951,horse 283952,deer 283953,frog 283954,frog 283955,ship 283956,dog 283957,bird 283958,dog 283959,truck 283960,cat 283961,deer 283962,bird 283963,dog 283964,deer 283965,deer 283966,airplane 283967,bird 283968,deer 283969,automobile 283970,cat 283971,truck 283972,automobile 283973,truck 283974,automobile 283975,truck 283976,horse 283977,frog 283978,cat 283979,truck 283980,cat 283981,truck 283982,horse 283983,airplane 283984,cat 283985,horse 283986,deer 283987,ship 283988,automobile 283989,cat 283990,ship 283991,ship 283992,cat 283993,dog 283994,frog 283995,ship 283996,horse 283997,horse 283998,bird 283999,horse 284000,frog 284001,airplane 284002,ship 284003,automobile 284004,ship 284005,frog 284006,cat 284007,deer 284008,automobile 284009,ship 284010,truck 284011,cat 284012,frog 284013,horse 284014,bird 284015,deer 284016,deer 284017,truck 284018,frog 284019,bird 284020,deer 284021,dog 284022,automobile 284023,horse 284024,deer 284025,automobile 284026,truck 284027,cat 284028,airplane 284029,airplane 284030,ship 284031,deer 284032,frog 284033,deer 284034,cat 284035,ship 284036,airplane 284037,dog 284038,ship 284039,ship 284040,truck 284041,airplane 284042,bird 284043,bird 284044,ship 284045,airplane 284046,ship 284047,horse 284048,airplane 284049,cat 284050,horse 284051,bird 284052,airplane 284053,horse 284054,deer 284055,ship 284056,deer 284057,frog 284058,airplane 284059,deer 284060,frog 284061,horse 284062,ship 284063,bird 284064,dog 284065,ship 284066,deer 284067,cat 284068,automobile 284069,automobile 284070,airplane 284071,bird 284072,ship 284073,automobile 284074,dog 284075,truck 284076,cat 284077,automobile 284078,horse 284079,deer 284080,horse 284081,frog 284082,horse 284083,bird 284084,dog 284085,ship 284086,frog 284087,horse 284088,bird 284089,dog 284090,airplane 284091,deer 284092,dog 284093,ship 284094,frog 284095,dog 284096,truck 284097,ship 284098,automobile 284099,dog 284100,ship 284101,horse 284102,truck 284103,deer 284104,cat 284105,horse 284106,dog 284107,airplane 284108,horse 284109,cat 284110,airplane 284111,truck 284112,deer 284113,deer 284114,deer 284115,ship 284116,truck 284117,airplane 284118,deer 284119,deer 284120,horse 284121,bird 284122,frog 284123,horse 284124,ship 284125,airplane 284126,truck 284127,deer 284128,frog 284129,dog 284130,horse 284131,ship 284132,deer 284133,airplane 284134,horse 284135,dog 284136,horse 284137,truck 284138,dog 284139,truck 284140,dog 284141,cat 284142,dog 284143,ship 284144,airplane 284145,truck 284146,deer 284147,cat 284148,airplane 284149,dog 284150,dog 284151,airplane 284152,deer 284153,ship 284154,automobile 284155,bird 284156,ship 284157,deer 284158,cat 284159,frog 284160,dog 284161,automobile 284162,horse 284163,deer 284164,dog 284165,truck 284166,deer 284167,dog 284168,deer 284169,horse 284170,cat 284171,frog 284172,cat 284173,frog 284174,truck 284175,truck 284176,cat 284177,deer 284178,airplane 284179,truck 284180,cat 284181,airplane 284182,deer 284183,horse 284184,frog 284185,cat 284186,automobile 284187,cat 284188,deer 284189,dog 284190,airplane 284191,truck 284192,truck 284193,ship 284194,ship 284195,deer 284196,ship 284197,cat 284198,deer 284199,cat 284200,truck 284201,bird 284202,automobile 284203,automobile 284204,frog 284205,automobile 284206,airplane 284207,cat 284208,dog 284209,airplane 284210,cat 284211,deer 284212,airplane 284213,deer 284214,airplane 284215,cat 284216,horse 284217,cat 284218,frog 284219,deer 284220,horse 284221,dog 284222,airplane 284223,deer 284224,frog 284225,truck 284226,cat 284227,ship 284228,deer 284229,deer 284230,ship 284231,automobile 284232,frog 284233,dog 284234,ship 284235,bird 284236,bird 284237,cat 284238,ship 284239,horse 284240,bird 284241,dog 284242,horse 284243,airplane 284244,truck 284245,automobile 284246,dog 284247,bird 284248,cat 284249,deer 284250,cat 284251,automobile 284252,ship 284253,cat 284254,horse 284255,truck 284256,bird 284257,dog 284258,bird 284259,horse 284260,deer 284261,horse 284262,truck 284263,deer 284264,bird 284265,automobile 284266,airplane 284267,deer 284268,bird 284269,ship 284270,ship 284271,frog 284272,cat 284273,deer 284274,cat 284275,frog 284276,airplane 284277,cat 284278,horse 284279,bird 284280,truck 284281,cat 284282,truck 284283,ship 284284,deer 284285,deer 284286,truck 284287,truck 284288,bird 284289,horse 284290,dog 284291,dog 284292,airplane 284293,frog 284294,airplane 284295,cat 284296,frog 284297,dog 284298,ship 284299,frog 284300,horse 284301,frog 284302,airplane 284303,bird 284304,ship 284305,bird 284306,truck 284307,deer 284308,cat 284309,truck 284310,cat 284311,automobile 284312,horse 284313,frog 284314,automobile 284315,frog 284316,deer 284317,dog 284318,frog 284319,dog 284320,deer 284321,deer 284322,horse 284323,frog 284324,truck 284325,cat 284326,bird 284327,horse 284328,deer 284329,automobile 284330,deer 284331,dog 284332,cat 284333,dog 284334,cat 284335,dog 284336,cat 284337,deer 284338,horse 284339,truck 284340,horse 284341,automobile 284342,dog 284343,frog 284344,deer 284345,cat 284346,dog 284347,deer 284348,truck 284349,frog 284350,cat 284351,frog 284352,deer 284353,frog 284354,deer 284355,dog 284356,horse 284357,horse 284358,horse 284359,airplane 284360,deer 284361,horse 284362,cat 284363,cat 284364,cat 284365,horse 284366,deer 284367,deer 284368,horse 284369,deer 284370,cat 284371,bird 284372,dog 284373,deer 284374,deer 284375,deer 284376,automobile 284377,horse 284378,truck 284379,bird 284380,frog 284381,bird 284382,ship 284383,frog 284384,cat 284385,horse 284386,truck 284387,airplane 284388,bird 284389,automobile 284390,cat 284391,ship 284392,automobile 284393,ship 284394,bird 284395,cat 284396,frog 284397,frog 284398,cat 284399,cat 284400,frog 284401,frog 284402,airplane 284403,airplane 284404,airplane 284405,cat 284406,horse 284407,airplane 284408,ship 284409,truck 284410,automobile 284411,frog 284412,bird 284413,cat 284414,truck 284415,bird 284416,deer 284417,ship 284418,frog 284419,ship 284420,cat 284421,horse 284422,dog 284423,truck 284424,bird 284425,cat 284426,airplane 284427,automobile 284428,airplane 284429,horse 284430,automobile 284431,airplane 284432,airplane 284433,cat 284434,frog 284435,dog 284436,airplane 284437,horse 284438,deer 284439,ship 284440,frog 284441,airplane 284442,frog 284443,cat 284444,frog 284445,ship 284446,truck 284447,dog 284448,automobile 284449,bird 284450,cat 284451,frog 284452,bird 284453,frog 284454,horse 284455,horse 284456,bird 284457,horse 284458,dog 284459,frog 284460,frog 284461,frog 284462,automobile 284463,horse 284464,deer 284465,airplane 284466,deer 284467,horse 284468,airplane 284469,cat 284470,dog 284471,airplane 284472,bird 284473,deer 284474,frog 284475,deer 284476,ship 284477,cat 284478,frog 284479,cat 284480,horse 284481,frog 284482,deer 284483,frog 284484,frog 284485,airplane 284486,frog 284487,cat 284488,cat 284489,horse 284490,deer 284491,bird 284492,truck 284493,truck 284494,horse 284495,frog 284496,dog 284497,deer 284498,frog 284499,horse 284500,frog 284501,ship 284502,truck 284503,automobile 284504,frog 284505,dog 284506,horse 284507,frog 284508,automobile 284509,horse 284510,dog 284511,truck 284512,truck 284513,frog 284514,bird 284515,truck 284516,automobile 284517,dog 284518,deer 284519,deer 284520,automobile 284521,ship 284522,truck 284523,automobile 284524,deer 284525,automobile 284526,ship 284527,deer 284528,automobile 284529,ship 284530,dog 284531,airplane 284532,truck 284533,horse 284534,cat 284535,truck 284536,horse 284537,dog 284538,truck 284539,frog 284540,deer 284541,cat 284542,deer 284543,horse 284544,cat 284545,truck 284546,automobile 284547,deer 284548,cat 284549,deer 284550,deer 284551,horse 284552,horse 284553,ship 284554,ship 284555,frog 284556,automobile 284557,airplane 284558,dog 284559,truck 284560,deer 284561,airplane 284562,automobile 284563,horse 284564,dog 284565,dog 284566,horse 284567,dog 284568,frog 284569,horse 284570,ship 284571,cat 284572,horse 284573,horse 284574,deer 284575,truck 284576,frog 284577,dog 284578,deer 284579,dog 284580,deer 284581,ship 284582,automobile 284583,airplane 284584,deer 284585,deer 284586,cat 284587,truck 284588,deer 284589,deer 284590,ship 284591,bird 284592,dog 284593,truck 284594,frog 284595,dog 284596,bird 284597,airplane 284598,bird 284599,automobile 284600,deer 284601,automobile 284602,automobile 284603,deer 284604,deer 284605,dog 284606,horse 284607,dog 284608,deer 284609,truck 284610,airplane 284611,cat 284612,automobile 284613,truck 284614,cat 284615,horse 284616,dog 284617,dog 284618,bird 284619,deer 284620,automobile 284621,airplane 284622,deer 284623,frog 284624,cat 284625,truck 284626,airplane 284627,automobile 284628,horse 284629,bird 284630,airplane 284631,frog 284632,deer 284633,automobile 284634,truck 284635,automobile 284636,dog 284637,frog 284638,deer 284639,truck 284640,frog 284641,dog 284642,truck 284643,ship 284644,dog 284645,ship 284646,horse 284647,airplane 284648,frog 284649,truck 284650,truck 284651,automobile 284652,frog 284653,frog 284654,horse 284655,cat 284656,cat 284657,ship 284658,bird 284659,frog 284660,deer 284661,automobile 284662,deer 284663,truck 284664,dog 284665,truck 284666,truck 284667,automobile 284668,truck 284669,airplane 284670,truck 284671,ship 284672,bird 284673,deer 284674,cat 284675,bird 284676,frog 284677,truck 284678,cat 284679,ship 284680,deer 284681,cat 284682,cat 284683,cat 284684,ship 284685,bird 284686,deer 284687,ship 284688,horse 284689,deer 284690,airplane 284691,dog 284692,dog 284693,deer 284694,cat 284695,truck 284696,truck 284697,truck 284698,dog 284699,cat 284700,automobile 284701,deer 284702,ship 284703,airplane 284704,cat 284705,ship 284706,truck 284707,ship 284708,dog 284709,truck 284710,bird 284711,bird 284712,dog 284713,horse 284714,frog 284715,deer 284716,frog 284717,frog 284718,deer 284719,dog 284720,ship 284721,dog 284722,frog 284723,dog 284724,cat 284725,cat 284726,airplane 284727,ship 284728,frog 284729,bird 284730,automobile 284731,ship 284732,horse 284733,deer 284734,automobile 284735,bird 284736,deer 284737,dog 284738,cat 284739,ship 284740,horse 284741,cat 284742,automobile 284743,truck 284744,ship 284745,cat 284746,deer 284747,deer 284748,dog 284749,ship 284750,cat 284751,ship 284752,deer 284753,deer 284754,airplane 284755,bird 284756,cat 284757,frog 284758,dog 284759,deer 284760,deer 284761,frog 284762,cat 284763,cat 284764,cat 284765,frog 284766,airplane 284767,deer 284768,deer 284769,dog 284770,deer 284771,dog 284772,airplane 284773,automobile 284774,ship 284775,cat 284776,ship 284777,airplane 284778,cat 284779,airplane 284780,truck 284781,dog 284782,automobile 284783,truck 284784,horse 284785,bird 284786,bird 284787,dog 284788,deer 284789,horse 284790,bird 284791,airplane 284792,dog 284793,deer 284794,automobile 284795,truck 284796,cat 284797,frog 284798,truck 284799,airplane 284800,deer 284801,bird 284802,cat 284803,horse 284804,truck 284805,bird 284806,frog 284807,deer 284808,deer 284809,truck 284810,horse 284811,airplane 284812,cat 284813,horse 284814,cat 284815,horse 284816,deer 284817,horse 284818,dog 284819,cat 284820,deer 284821,frog 284822,frog 284823,deer 284824,deer 284825,bird 284826,dog 284827,cat 284828,horse 284829,frog 284830,truck 284831,truck 284832,frog 284833,dog 284834,cat 284835,horse 284836,cat 284837,deer 284838,automobile 284839,horse 284840,bird 284841,deer 284842,airplane 284843,ship 284844,frog 284845,ship 284846,truck 284847,airplane 284848,frog 284849,frog 284850,bird 284851,ship 284852,frog 284853,deer 284854,airplane 284855,truck 284856,automobile 284857,truck 284858,automobile 284859,bird 284860,bird 284861,cat 284862,truck 284863,horse 284864,deer 284865,dog 284866,truck 284867,airplane 284868,bird 284869,cat 284870,horse 284871,cat 284872,truck 284873,deer 284874,dog 284875,airplane 284876,deer 284877,automobile 284878,automobile 284879,cat 284880,truck 284881,automobile 284882,ship 284883,ship 284884,frog 284885,horse 284886,airplane 284887,cat 284888,horse 284889,cat 284890,deer 284891,deer 284892,cat 284893,frog 284894,airplane 284895,horse 284896,truck 284897,ship 284898,deer 284899,cat 284900,airplane 284901,deer 284902,dog 284903,cat 284904,horse 284905,frog 284906,truck 284907,cat 284908,deer 284909,dog 284910,truck 284911,automobile 284912,truck 284913,frog 284914,airplane 284915,dog 284916,airplane 284917,automobile 284918,bird 284919,horse 284920,automobile 284921,horse 284922,deer 284923,frog 284924,ship 284925,ship 284926,dog 284927,truck 284928,airplane 284929,deer 284930,frog 284931,automobile 284932,ship 284933,cat 284934,truck 284935,horse 284936,frog 284937,dog 284938,ship 284939,bird 284940,airplane 284941,deer 284942,deer 284943,automobile 284944,truck 284945,ship 284946,automobile 284947,cat 284948,frog 284949,airplane 284950,frog 284951,cat 284952,ship 284953,automobile 284954,dog 284955,deer 284956,deer 284957,horse 284958,bird 284959,cat 284960,deer 284961,ship 284962,cat 284963,deer 284964,bird 284965,cat 284966,dog 284967,cat 284968,ship 284969,truck 284970,deer 284971,automobile 284972,automobile 284973,truck 284974,horse 284975,cat 284976,cat 284977,cat 284978,automobile 284979,cat 284980,bird 284981,ship 284982,dog 284983,cat 284984,dog 284985,truck 284986,automobile 284987,deer 284988,deer 284989,bird 284990,automobile 284991,ship 284992,frog 284993,deer 284994,cat 284995,horse 284996,airplane 284997,dog 284998,frog 284999,horse 285000,ship 285001,horse 285002,deer 285003,ship 285004,deer 285005,ship 285006,horse 285007,horse 285008,bird 285009,cat 285010,airplane 285011,frog 285012,frog 285013,airplane 285014,deer 285015,frog 285016,truck 285017,deer 285018,airplane 285019,automobile 285020,cat 285021,ship 285022,horse 285023,deer 285024,frog 285025,dog 285026,deer 285027,frog 285028,truck 285029,cat 285030,frog 285031,frog 285032,deer 285033,automobile 285034,dog 285035,dog 285036,dog 285037,deer 285038,airplane 285039,frog 285040,truck 285041,frog 285042,dog 285043,cat 285044,cat 285045,automobile 285046,bird 285047,airplane 285048,horse 285049,deer 285050,frog 285051,bird 285052,ship 285053,truck 285054,truck 285055,frog 285056,frog 285057,dog 285058,horse 285059,frog 285060,bird 285061,truck 285062,dog 285063,deer 285064,bird 285065,truck 285066,deer 285067,airplane 285068,deer 285069,deer 285070,cat 285071,frog 285072,dog 285073,dog 285074,ship 285075,cat 285076,ship 285077,automobile 285078,dog 285079,cat 285080,frog 285081,truck 285082,automobile 285083,frog 285084,dog 285085,truck 285086,deer 285087,automobile 285088,deer 285089,horse 285090,bird 285091,dog 285092,bird 285093,dog 285094,horse 285095,ship 285096,cat 285097,deer 285098,dog 285099,dog 285100,ship 285101,horse 285102,bird 285103,cat 285104,deer 285105,bird 285106,automobile 285107,truck 285108,bird 285109,automobile 285110,deer 285111,deer 285112,truck 285113,bird 285114,airplane 285115,horse 285116,airplane 285117,deer 285118,ship 285119,ship 285120,cat 285121,dog 285122,airplane 285123,truck 285124,dog 285125,airplane 285126,dog 285127,truck 285128,truck 285129,horse 285130,bird 285131,cat 285132,truck 285133,ship 285134,ship 285135,truck 285136,automobile 285137,deer 285138,frog 285139,bird 285140,automobile 285141,dog 285142,bird 285143,dog 285144,bird 285145,horse 285146,ship 285147,automobile 285148,truck 285149,cat 285150,frog 285151,deer 285152,truck 285153,airplane 285154,truck 285155,horse 285156,dog 285157,frog 285158,truck 285159,deer 285160,frog 285161,deer 285162,deer 285163,ship 285164,truck 285165,deer 285166,frog 285167,ship 285168,cat 285169,bird 285170,deer 285171,dog 285172,horse 285173,truck 285174,horse 285175,airplane 285176,ship 285177,frog 285178,frog 285179,deer 285180,deer 285181,deer 285182,frog 285183,bird 285184,truck 285185,bird 285186,horse 285187,horse 285188,horse 285189,cat 285190,cat 285191,airplane 285192,airplane 285193,horse 285194,ship 285195,bird 285196,automobile 285197,frog 285198,automobile 285199,ship 285200,frog 285201,horse 285202,deer 285203,frog 285204,dog 285205,truck 285206,cat 285207,airplane 285208,dog 285209,automobile 285210,dog 285211,automobile 285212,frog 285213,cat 285214,frog 285215,truck 285216,dog 285217,bird 285218,truck 285219,horse 285220,cat 285221,cat 285222,truck 285223,frog 285224,truck 285225,horse 285226,frog 285227,deer 285228,bird 285229,deer 285230,cat 285231,frog 285232,deer 285233,airplane 285234,truck 285235,truck 285236,horse 285237,cat 285238,frog 285239,cat 285240,frog 285241,airplane 285242,frog 285243,bird 285244,ship 285245,dog 285246,deer 285247,deer 285248,truck 285249,dog 285250,dog 285251,cat 285252,dog 285253,cat 285254,bird 285255,bird 285256,horse 285257,automobile 285258,bird 285259,truck 285260,automobile 285261,automobile 285262,horse 285263,truck 285264,truck 285265,automobile 285266,airplane 285267,automobile 285268,deer 285269,truck 285270,horse 285271,cat 285272,deer 285273,frog 285274,horse 285275,automobile 285276,cat 285277,frog 285278,automobile 285279,frog 285280,horse 285281,dog 285282,deer 285283,dog 285284,truck 285285,airplane 285286,ship 285287,bird 285288,deer 285289,dog 285290,dog 285291,cat 285292,automobile 285293,cat 285294,ship 285295,horse 285296,truck 285297,deer 285298,horse 285299,automobile 285300,truck 285301,automobile 285302,deer 285303,deer 285304,cat 285305,airplane 285306,ship 285307,deer 285308,truck 285309,truck 285310,truck 285311,cat 285312,airplane 285313,frog 285314,dog 285315,ship 285316,horse 285317,horse 285318,ship 285319,airplane 285320,frog 285321,truck 285322,cat 285323,deer 285324,truck 285325,ship 285326,truck 285327,frog 285328,cat 285329,ship 285330,horse 285331,airplane 285332,frog 285333,horse 285334,horse 285335,truck 285336,dog 285337,horse 285338,automobile 285339,dog 285340,truck 285341,cat 285342,frog 285343,ship 285344,automobile 285345,ship 285346,dog 285347,deer 285348,truck 285349,horse 285350,deer 285351,bird 285352,deer 285353,cat 285354,cat 285355,cat 285356,horse 285357,airplane 285358,horse 285359,dog 285360,cat 285361,frog 285362,airplane 285363,automobile 285364,airplane 285365,deer 285366,cat 285367,deer 285368,deer 285369,truck 285370,automobile 285371,airplane 285372,automobile 285373,horse 285374,cat 285375,horse 285376,deer 285377,deer 285378,horse 285379,frog 285380,dog 285381,cat 285382,ship 285383,automobile 285384,horse 285385,horse 285386,horse 285387,horse 285388,deer 285389,horse 285390,frog 285391,truck 285392,cat 285393,truck 285394,dog 285395,airplane 285396,automobile 285397,horse 285398,dog 285399,horse 285400,frog 285401,truck 285402,dog 285403,deer 285404,frog 285405,deer 285406,deer 285407,truck 285408,horse 285409,bird 285410,frog 285411,horse 285412,deer 285413,deer 285414,horse 285415,automobile 285416,frog 285417,automobile 285418,frog 285419,dog 285420,frog 285421,horse 285422,frog 285423,airplane 285424,airplane 285425,deer 285426,horse 285427,ship 285428,automobile 285429,cat 285430,bird 285431,truck 285432,ship 285433,frog 285434,truck 285435,cat 285436,truck 285437,cat 285438,frog 285439,frog 285440,frog 285441,frog 285442,cat 285443,truck 285444,automobile 285445,cat 285446,ship 285447,frog 285448,automobile 285449,cat 285450,frog 285451,bird 285452,airplane 285453,ship 285454,dog 285455,dog 285456,deer 285457,cat 285458,airplane 285459,cat 285460,frog 285461,horse 285462,automobile 285463,deer 285464,ship 285465,airplane 285466,frog 285467,deer 285468,ship 285469,frog 285470,deer 285471,ship 285472,truck 285473,truck 285474,deer 285475,horse 285476,ship 285477,frog 285478,frog 285479,cat 285480,deer 285481,cat 285482,ship 285483,deer 285484,airplane 285485,cat 285486,cat 285487,cat 285488,deer 285489,truck 285490,ship 285491,dog 285492,deer 285493,dog 285494,bird 285495,cat 285496,dog 285497,horse 285498,automobile 285499,deer 285500,automobile 285501,bird 285502,ship 285503,automobile 285504,bird 285505,deer 285506,truck 285507,deer 285508,deer 285509,airplane 285510,bird 285511,bird 285512,cat 285513,cat 285514,bird 285515,deer 285516,horse 285517,bird 285518,cat 285519,truck 285520,cat 285521,dog 285522,cat 285523,dog 285524,frog 285525,ship 285526,truck 285527,bird 285528,truck 285529,frog 285530,deer 285531,cat 285532,ship 285533,frog 285534,airplane 285535,cat 285536,frog 285537,truck 285538,bird 285539,horse 285540,ship 285541,cat 285542,cat 285543,automobile 285544,bird 285545,dog 285546,airplane 285547,horse 285548,truck 285549,deer 285550,airplane 285551,truck 285552,bird 285553,bird 285554,ship 285555,bird 285556,bird 285557,dog 285558,truck 285559,bird 285560,horse 285561,truck 285562,horse 285563,ship 285564,deer 285565,bird 285566,horse 285567,cat 285568,automobile 285569,automobile 285570,automobile 285571,dog 285572,frog 285573,deer 285574,dog 285575,bird 285576,dog 285577,airplane 285578,bird 285579,ship 285580,dog 285581,airplane 285582,airplane 285583,airplane 285584,horse 285585,horse 285586,deer 285587,airplane 285588,cat 285589,horse 285590,frog 285591,cat 285592,horse 285593,frog 285594,cat 285595,truck 285596,bird 285597,deer 285598,automobile 285599,horse 285600,horse 285601,airplane 285602,cat 285603,cat 285604,cat 285605,truck 285606,cat 285607,bird 285608,cat 285609,frog 285610,deer 285611,deer 285612,bird 285613,cat 285614,deer 285615,horse 285616,truck 285617,dog 285618,frog 285619,horse 285620,dog 285621,bird 285622,cat 285623,cat 285624,frog 285625,bird 285626,cat 285627,cat 285628,cat 285629,deer 285630,dog 285631,frog 285632,cat 285633,ship 285634,cat 285635,dog 285636,horse 285637,frog 285638,bird 285639,deer 285640,dog 285641,horse 285642,automobile 285643,ship 285644,dog 285645,ship 285646,bird 285647,cat 285648,ship 285649,truck 285650,deer 285651,deer 285652,bird 285653,deer 285654,frog 285655,automobile 285656,frog 285657,bird 285658,deer 285659,airplane 285660,deer 285661,ship 285662,horse 285663,horse 285664,automobile 285665,horse 285666,cat 285667,ship 285668,frog 285669,automobile 285670,deer 285671,dog 285672,frog 285673,deer 285674,airplane 285675,deer 285676,bird 285677,cat 285678,cat 285679,horse 285680,dog 285681,dog 285682,airplane 285683,truck 285684,airplane 285685,bird 285686,frog 285687,cat 285688,cat 285689,airplane 285690,horse 285691,frog 285692,truck 285693,bird 285694,horse 285695,truck 285696,bird 285697,cat 285698,deer 285699,deer 285700,frog 285701,horse 285702,deer 285703,truck 285704,ship 285705,horse 285706,ship 285707,automobile 285708,deer 285709,cat 285710,truck 285711,cat 285712,cat 285713,frog 285714,cat 285715,dog 285716,deer 285717,deer 285718,horse 285719,deer 285720,frog 285721,automobile 285722,automobile 285723,ship 285724,cat 285725,deer 285726,horse 285727,frog 285728,bird 285729,horse 285730,dog 285731,ship 285732,airplane 285733,truck 285734,cat 285735,frog 285736,automobile 285737,deer 285738,airplane 285739,automobile 285740,dog 285741,horse 285742,frog 285743,bird 285744,airplane 285745,automobile 285746,frog 285747,dog 285748,frog 285749,automobile 285750,airplane 285751,airplane 285752,deer 285753,cat 285754,ship 285755,deer 285756,cat 285757,cat 285758,airplane 285759,frog 285760,truck 285761,ship 285762,frog 285763,bird 285764,automobile 285765,deer 285766,ship 285767,deer 285768,bird 285769,truck 285770,horse 285771,truck 285772,deer 285773,cat 285774,deer 285775,airplane 285776,deer 285777,deer 285778,cat 285779,dog 285780,automobile 285781,horse 285782,truck 285783,ship 285784,automobile 285785,cat 285786,deer 285787,airplane 285788,ship 285789,horse 285790,dog 285791,dog 285792,automobile 285793,frog 285794,airplane 285795,bird 285796,dog 285797,frog 285798,ship 285799,cat 285800,automobile 285801,frog 285802,frog 285803,frog 285804,airplane 285805,airplane 285806,airplane 285807,dog 285808,cat 285809,deer 285810,cat 285811,truck 285812,truck 285813,frog 285814,bird 285815,horse 285816,truck 285817,dog 285818,cat 285819,cat 285820,deer 285821,deer 285822,cat 285823,deer 285824,airplane 285825,horse 285826,bird 285827,automobile 285828,truck 285829,deer 285830,horse 285831,ship 285832,cat 285833,frog 285834,airplane 285835,bird 285836,truck 285837,deer 285838,dog 285839,horse 285840,ship 285841,truck 285842,airplane 285843,bird 285844,truck 285845,bird 285846,dog 285847,ship 285848,frog 285849,cat 285850,airplane 285851,bird 285852,cat 285853,bird 285854,automobile 285855,truck 285856,automobile 285857,truck 285858,automobile 285859,cat 285860,ship 285861,cat 285862,dog 285863,bird 285864,bird 285865,ship 285866,truck 285867,dog 285868,frog 285869,cat 285870,frog 285871,cat 285872,dog 285873,cat 285874,ship 285875,dog 285876,horse 285877,dog 285878,ship 285879,frog 285880,ship 285881,deer 285882,automobile 285883,ship 285884,airplane 285885,dog 285886,truck 285887,dog 285888,cat 285889,airplane 285890,automobile 285891,horse 285892,horse 285893,horse 285894,truck 285895,cat 285896,dog 285897,deer 285898,cat 285899,dog 285900,deer 285901,horse 285902,cat 285903,bird 285904,horse 285905,deer 285906,truck 285907,cat 285908,horse 285909,dog 285910,dog 285911,dog 285912,airplane 285913,dog 285914,automobile 285915,dog 285916,bird 285917,frog 285918,deer 285919,frog 285920,automobile 285921,cat 285922,dog 285923,deer 285924,frog 285925,truck 285926,airplane 285927,ship 285928,cat 285929,truck 285930,bird 285931,cat 285932,automobile 285933,deer 285934,dog 285935,bird 285936,deer 285937,automobile 285938,dog 285939,cat 285940,frog 285941,automobile 285942,airplane 285943,frog 285944,automobile 285945,frog 285946,deer 285947,dog 285948,automobile 285949,truck 285950,horse 285951,airplane 285952,dog 285953,cat 285954,airplane 285955,cat 285956,cat 285957,truck 285958,horse 285959,deer 285960,deer 285961,truck 285962,ship 285963,dog 285964,bird 285965,bird 285966,airplane 285967,airplane 285968,frog 285969,ship 285970,ship 285971,airplane 285972,cat 285973,dog 285974,bird 285975,automobile 285976,bird 285977,airplane 285978,dog 285979,frog 285980,airplane 285981,ship 285982,frog 285983,deer 285984,dog 285985,deer 285986,frog 285987,truck 285988,airplane 285989,ship 285990,cat 285991,deer 285992,ship 285993,frog 285994,bird 285995,deer 285996,airplane 285997,frog 285998,bird 285999,deer 286000,frog 286001,frog 286002,horse 286003,bird 286004,truck 286005,truck 286006,truck 286007,cat 286008,automobile 286009,horse 286010,dog 286011,horse 286012,cat 286013,truck 286014,automobile 286015,truck 286016,horse 286017,airplane 286018,bird 286019,truck 286020,horse 286021,bird 286022,deer 286023,cat 286024,truck 286025,deer 286026,deer 286027,horse 286028,horse 286029,frog 286030,dog 286031,bird 286032,airplane 286033,frog 286034,dog 286035,truck 286036,airplane 286037,ship 286038,airplane 286039,horse 286040,horse 286041,bird 286042,dog 286043,dog 286044,truck 286045,ship 286046,airplane 286047,bird 286048,truck 286049,horse 286050,frog 286051,truck 286052,airplane 286053,deer 286054,bird 286055,horse 286056,dog 286057,deer 286058,airplane 286059,ship 286060,dog 286061,deer 286062,deer 286063,cat 286064,frog 286065,cat 286066,airplane 286067,airplane 286068,bird 286069,frog 286070,bird 286071,truck 286072,ship 286073,deer 286074,deer 286075,airplane 286076,frog 286077,frog 286078,horse 286079,ship 286080,airplane 286081,ship 286082,frog 286083,horse 286084,airplane 286085,airplane 286086,truck 286087,truck 286088,bird 286089,horse 286090,deer 286091,horse 286092,bird 286093,truck 286094,frog 286095,cat 286096,deer 286097,frog 286098,deer 286099,dog 286100,deer 286101,cat 286102,truck 286103,cat 286104,cat 286105,horse 286106,cat 286107,frog 286108,bird 286109,cat 286110,airplane 286111,deer 286112,truck 286113,truck 286114,frog 286115,dog 286116,dog 286117,deer 286118,ship 286119,deer 286120,truck 286121,airplane 286122,ship 286123,frog 286124,bird 286125,deer 286126,automobile 286127,dog 286128,ship 286129,bird 286130,dog 286131,horse 286132,bird 286133,horse 286134,horse 286135,airplane 286136,frog 286137,automobile 286138,truck 286139,airplane 286140,horse 286141,frog 286142,deer 286143,frog 286144,horse 286145,cat 286146,ship 286147,dog 286148,cat 286149,deer 286150,dog 286151,deer 286152,truck 286153,automobile 286154,deer 286155,cat 286156,airplane 286157,bird 286158,airplane 286159,frog 286160,frog 286161,dog 286162,horse 286163,deer 286164,truck 286165,cat 286166,horse 286167,truck 286168,dog 286169,truck 286170,horse 286171,horse 286172,ship 286173,ship 286174,deer 286175,frog 286176,bird 286177,cat 286178,cat 286179,automobile 286180,horse 286181,cat 286182,deer 286183,automobile 286184,cat 286185,airplane 286186,ship 286187,ship 286188,airplane 286189,truck 286190,ship 286191,dog 286192,truck 286193,automobile 286194,ship 286195,deer 286196,horse 286197,truck 286198,airplane 286199,frog 286200,frog 286201,cat 286202,horse 286203,cat 286204,cat 286205,frog 286206,cat 286207,dog 286208,airplane 286209,automobile 286210,cat 286211,frog 286212,bird 286213,cat 286214,frog 286215,ship 286216,cat 286217,truck 286218,automobile 286219,bird 286220,truck 286221,truck 286222,dog 286223,truck 286224,bird 286225,dog 286226,deer 286227,ship 286228,frog 286229,truck 286230,bird 286231,truck 286232,deer 286233,automobile 286234,dog 286235,horse 286236,horse 286237,frog 286238,bird 286239,horse 286240,frog 286241,automobile 286242,dog 286243,dog 286244,dog 286245,deer 286246,deer 286247,airplane 286248,dog 286249,truck 286250,cat 286251,horse 286252,cat 286253,cat 286254,frog 286255,frog 286256,deer 286257,deer 286258,airplane 286259,truck 286260,dog 286261,truck 286262,dog 286263,horse 286264,cat 286265,ship 286266,frog 286267,ship 286268,bird 286269,cat 286270,dog 286271,dog 286272,frog 286273,dog 286274,ship 286275,deer 286276,deer 286277,automobile 286278,bird 286279,cat 286280,bird 286281,dog 286282,deer 286283,bird 286284,dog 286285,bird 286286,horse 286287,airplane 286288,truck 286289,automobile 286290,horse 286291,ship 286292,airplane 286293,truck 286294,automobile 286295,frog 286296,cat 286297,automobile 286298,bird 286299,cat 286300,airplane 286301,deer 286302,deer 286303,truck 286304,dog 286305,deer 286306,frog 286307,deer 286308,frog 286309,truck 286310,ship 286311,horse 286312,bird 286313,ship 286314,bird 286315,bird 286316,airplane 286317,truck 286318,bird 286319,automobile 286320,truck 286321,automobile 286322,bird 286323,ship 286324,truck 286325,horse 286326,horse 286327,automobile 286328,truck 286329,deer 286330,cat 286331,frog 286332,deer 286333,bird 286334,horse 286335,cat 286336,ship 286337,deer 286338,deer 286339,truck 286340,airplane 286341,deer 286342,cat 286343,ship 286344,horse 286345,truck 286346,frog 286347,frog 286348,dog 286349,automobile 286350,airplane 286351,cat 286352,airplane 286353,frog 286354,airplane 286355,truck 286356,bird 286357,frog 286358,airplane 286359,cat 286360,ship 286361,truck 286362,dog 286363,dog 286364,airplane 286365,dog 286366,frog 286367,airplane 286368,frog 286369,airplane 286370,dog 286371,ship 286372,airplane 286373,cat 286374,frog 286375,bird 286376,ship 286377,horse 286378,deer 286379,deer 286380,cat 286381,deer 286382,airplane 286383,cat 286384,ship 286385,airplane 286386,cat 286387,truck 286388,truck 286389,frog 286390,bird 286391,dog 286392,deer 286393,cat 286394,cat 286395,deer 286396,frog 286397,cat 286398,cat 286399,automobile 286400,horse 286401,ship 286402,dog 286403,horse 286404,automobile 286405,automobile 286406,deer 286407,truck 286408,deer 286409,deer 286410,airplane 286411,bird 286412,cat 286413,deer 286414,frog 286415,deer 286416,airplane 286417,frog 286418,dog 286419,deer 286420,truck 286421,horse 286422,deer 286423,automobile 286424,frog 286425,frog 286426,automobile 286427,ship 286428,horse 286429,truck 286430,horse 286431,bird 286432,automobile 286433,cat 286434,dog 286435,deer 286436,deer 286437,horse 286438,ship 286439,truck 286440,truck 286441,truck 286442,cat 286443,bird 286444,deer 286445,automobile 286446,cat 286447,cat 286448,airplane 286449,airplane 286450,horse 286451,frog 286452,horse 286453,horse 286454,dog 286455,deer 286456,automobile 286457,truck 286458,bird 286459,cat 286460,cat 286461,ship 286462,deer 286463,bird 286464,dog 286465,bird 286466,cat 286467,automobile 286468,horse 286469,airplane 286470,airplane 286471,truck 286472,ship 286473,truck 286474,automobile 286475,dog 286476,ship 286477,frog 286478,truck 286479,dog 286480,bird 286481,ship 286482,cat 286483,bird 286484,ship 286485,frog 286486,ship 286487,airplane 286488,ship 286489,automobile 286490,cat 286491,automobile 286492,dog 286493,bird 286494,bird 286495,automobile 286496,cat 286497,deer 286498,frog 286499,deer 286500,horse 286501,airplane 286502,horse 286503,horse 286504,deer 286505,ship 286506,truck 286507,cat 286508,frog 286509,cat 286510,dog 286511,dog 286512,bird 286513,cat 286514,truck 286515,bird 286516,bird 286517,deer 286518,deer 286519,bird 286520,automobile 286521,ship 286522,frog 286523,bird 286524,automobile 286525,horse 286526,frog 286527,truck 286528,cat 286529,ship 286530,dog 286531,cat 286532,frog 286533,deer 286534,horse 286535,cat 286536,automobile 286537,airplane 286538,airplane 286539,frog 286540,truck 286541,bird 286542,truck 286543,ship 286544,cat 286545,truck 286546,automobile 286547,frog 286548,frog 286549,frog 286550,cat 286551,ship 286552,deer 286553,bird 286554,dog 286555,horse 286556,truck 286557,truck 286558,deer 286559,airplane 286560,horse 286561,bird 286562,cat 286563,frog 286564,horse 286565,frog 286566,airplane 286567,automobile 286568,airplane 286569,airplane 286570,frog 286571,truck 286572,ship 286573,bird 286574,frog 286575,bird 286576,deer 286577,airplane 286578,cat 286579,cat 286580,dog 286581,cat 286582,airplane 286583,bird 286584,ship 286585,frog 286586,automobile 286587,deer 286588,cat 286589,frog 286590,dog 286591,truck 286592,cat 286593,dog 286594,bird 286595,horse 286596,ship 286597,cat 286598,cat 286599,truck 286600,airplane 286601,automobile 286602,automobile 286603,dog 286604,frog 286605,automobile 286606,horse 286607,horse 286608,cat 286609,cat 286610,airplane 286611,cat 286612,ship 286613,horse 286614,frog 286615,frog 286616,cat 286617,deer 286618,airplane 286619,dog 286620,cat 286621,frog 286622,deer 286623,frog 286624,bird 286625,cat 286626,cat 286627,airplane 286628,horse 286629,dog 286630,dog 286631,horse 286632,airplane 286633,horse 286634,truck 286635,frog 286636,ship 286637,deer 286638,truck 286639,horse 286640,deer 286641,frog 286642,cat 286643,deer 286644,cat 286645,bird 286646,horse 286647,deer 286648,horse 286649,dog 286650,horse 286651,airplane 286652,dog 286653,bird 286654,cat 286655,frog 286656,horse 286657,horse 286658,truck 286659,deer 286660,bird 286661,cat 286662,dog 286663,frog 286664,deer 286665,dog 286666,dog 286667,cat 286668,airplane 286669,truck 286670,airplane 286671,deer 286672,dog 286673,frog 286674,truck 286675,frog 286676,truck 286677,airplane 286678,cat 286679,deer 286680,deer 286681,cat 286682,deer 286683,truck 286684,frog 286685,deer 286686,cat 286687,cat 286688,airplane 286689,frog 286690,ship 286691,horse 286692,cat 286693,ship 286694,frog 286695,airplane 286696,bird 286697,deer 286698,ship 286699,airplane 286700,frog 286701,deer 286702,bird 286703,cat 286704,cat 286705,bird 286706,deer 286707,deer 286708,frog 286709,dog 286710,cat 286711,cat 286712,frog 286713,frog 286714,horse 286715,frog 286716,airplane 286717,ship 286718,deer 286719,horse 286720,deer 286721,horse 286722,dog 286723,frog 286724,horse 286725,dog 286726,deer 286727,dog 286728,cat 286729,automobile 286730,automobile 286731,automobile 286732,frog 286733,cat 286734,dog 286735,deer 286736,dog 286737,cat 286738,frog 286739,cat 286740,truck 286741,ship 286742,dog 286743,dog 286744,truck 286745,deer 286746,frog 286747,frog 286748,ship 286749,truck 286750,automobile 286751,bird 286752,bird 286753,truck 286754,dog 286755,bird 286756,horse 286757,frog 286758,horse 286759,truck 286760,deer 286761,automobile 286762,truck 286763,ship 286764,truck 286765,cat 286766,cat 286767,cat 286768,deer 286769,truck 286770,airplane 286771,automobile 286772,deer 286773,cat 286774,ship 286775,ship 286776,automobile 286777,airplane 286778,cat 286779,ship 286780,deer 286781,bird 286782,cat 286783,frog 286784,airplane 286785,automobile 286786,airplane 286787,cat 286788,truck 286789,airplane 286790,horse 286791,dog 286792,frog 286793,cat 286794,cat 286795,automobile 286796,truck 286797,dog 286798,ship 286799,deer 286800,ship 286801,frog 286802,ship 286803,dog 286804,automobile 286805,deer 286806,ship 286807,dog 286808,frog 286809,ship 286810,frog 286811,dog 286812,frog 286813,ship 286814,cat 286815,ship 286816,airplane 286817,dog 286818,frog 286819,dog 286820,cat 286821,frog 286822,ship 286823,ship 286824,truck 286825,cat 286826,dog 286827,horse 286828,frog 286829,frog 286830,frog 286831,bird 286832,truck 286833,automobile 286834,airplane 286835,horse 286836,horse 286837,deer 286838,deer 286839,deer 286840,automobile 286841,horse 286842,deer 286843,frog 286844,dog 286845,deer 286846,automobile 286847,cat 286848,ship 286849,horse 286850,ship 286851,frog 286852,ship 286853,horse 286854,airplane 286855,dog 286856,dog 286857,dog 286858,deer 286859,ship 286860,automobile 286861,bird 286862,deer 286863,dog 286864,dog 286865,horse 286866,truck 286867,dog 286868,truck 286869,automobile 286870,horse 286871,cat 286872,frog 286873,bird 286874,truck 286875,airplane 286876,cat 286877,truck 286878,dog 286879,airplane 286880,automobile 286881,cat 286882,cat 286883,truck 286884,deer 286885,airplane 286886,horse 286887,cat 286888,ship 286889,frog 286890,horse 286891,cat 286892,bird 286893,deer 286894,deer 286895,bird 286896,cat 286897,bird 286898,frog 286899,ship 286900,dog 286901,horse 286902,frog 286903,dog 286904,airplane 286905,deer 286906,horse 286907,truck 286908,cat 286909,ship 286910,cat 286911,dog 286912,horse 286913,truck 286914,automobile 286915,cat 286916,truck 286917,bird 286918,truck 286919,horse 286920,dog 286921,cat 286922,bird 286923,dog 286924,horse 286925,bird 286926,truck 286927,frog 286928,deer 286929,automobile 286930,frog 286931,ship 286932,dog 286933,truck 286934,automobile 286935,horse 286936,cat 286937,truck 286938,airplane 286939,dog 286940,truck 286941,airplane 286942,deer 286943,cat 286944,deer 286945,cat 286946,airplane 286947,cat 286948,automobile 286949,ship 286950,cat 286951,frog 286952,cat 286953,frog 286954,airplane 286955,cat 286956,deer 286957,frog 286958,automobile 286959,bird 286960,bird 286961,bird 286962,horse 286963,deer 286964,frog 286965,truck 286966,deer 286967,ship 286968,truck 286969,frog 286970,truck 286971,cat 286972,dog 286973,dog 286974,dog 286975,truck 286976,dog 286977,airplane 286978,dog 286979,truck 286980,deer 286981,frog 286982,dog 286983,dog 286984,dog 286985,deer 286986,truck 286987,frog 286988,truck 286989,airplane 286990,truck 286991,horse 286992,truck 286993,cat 286994,dog 286995,dog 286996,dog 286997,horse 286998,bird 286999,horse 287000,frog 287001,cat 287002,horse 287003,dog 287004,truck 287005,bird 287006,cat 287007,dog 287008,frog 287009,horse 287010,deer 287011,bird 287012,frog 287013,bird 287014,deer 287015,cat 287016,dog 287017,airplane 287018,dog 287019,deer 287020,horse 287021,deer 287022,deer 287023,frog 287024,dog 287025,horse 287026,cat 287027,bird 287028,dog 287029,frog 287030,automobile 287031,deer 287032,dog 287033,automobile 287034,airplane 287035,ship 287036,horse 287037,truck 287038,cat 287039,automobile 287040,automobile 287041,cat 287042,dog 287043,cat 287044,dog 287045,cat 287046,ship 287047,deer 287048,dog 287049,horse 287050,ship 287051,frog 287052,frog 287053,truck 287054,dog 287055,dog 287056,airplane 287057,truck 287058,cat 287059,dog 287060,truck 287061,truck 287062,cat 287063,dog 287064,deer 287065,truck 287066,automobile 287067,airplane 287068,dog 287069,cat 287070,frog 287071,deer 287072,ship 287073,ship 287074,deer 287075,frog 287076,airplane 287077,horse 287078,bird 287079,airplane 287080,truck 287081,automobile 287082,automobile 287083,cat 287084,dog 287085,bird 287086,bird 287087,dog 287088,cat 287089,ship 287090,truck 287091,automobile 287092,frog 287093,airplane 287094,cat 287095,automobile 287096,dog 287097,bird 287098,cat 287099,ship 287100,bird 287101,deer 287102,dog 287103,ship 287104,deer 287105,frog 287106,horse 287107,bird 287108,truck 287109,truck 287110,airplane 287111,dog 287112,cat 287113,horse 287114,frog 287115,horse 287116,horse 287117,automobile 287118,dog 287119,truck 287120,deer 287121,cat 287122,frog 287123,airplane 287124,dog 287125,ship 287126,deer 287127,ship 287128,cat 287129,cat 287130,cat 287131,ship 287132,airplane 287133,airplane 287134,frog 287135,bird 287136,dog 287137,automobile 287138,truck 287139,dog 287140,airplane 287141,deer 287142,automobile 287143,cat 287144,airplane 287145,horse 287146,automobile 287147,frog 287148,truck 287149,horse 287150,deer 287151,dog 287152,cat 287153,dog 287154,cat 287155,truck 287156,truck 287157,dog 287158,dog 287159,automobile 287160,deer 287161,truck 287162,deer 287163,truck 287164,deer 287165,horse 287166,truck 287167,automobile 287168,horse 287169,frog 287170,frog 287171,truck 287172,dog 287173,ship 287174,horse 287175,cat 287176,truck 287177,deer 287178,truck 287179,frog 287180,truck 287181,deer 287182,horse 287183,bird 287184,truck 287185,bird 287186,bird 287187,frog 287188,cat 287189,truck 287190,automobile 287191,bird 287192,bird 287193,ship 287194,dog 287195,airplane 287196,frog 287197,dog 287198,deer 287199,airplane 287200,automobile 287201,airplane 287202,bird 287203,dog 287204,deer 287205,cat 287206,frog 287207,frog 287208,deer 287209,dog 287210,cat 287211,truck 287212,bird 287213,deer 287214,automobile 287215,truck 287216,deer 287217,horse 287218,deer 287219,deer 287220,dog 287221,airplane 287222,deer 287223,dog 287224,deer 287225,ship 287226,truck 287227,deer 287228,deer 287229,horse 287230,cat 287231,truck 287232,bird 287233,frog 287234,deer 287235,frog 287236,bird 287237,horse 287238,dog 287239,airplane 287240,horse 287241,deer 287242,frog 287243,bird 287244,bird 287245,truck 287246,airplane 287247,dog 287248,automobile 287249,frog 287250,cat 287251,truck 287252,frog 287253,horse 287254,cat 287255,ship 287256,cat 287257,truck 287258,horse 287259,frog 287260,horse 287261,airplane 287262,dog 287263,automobile 287264,dog 287265,frog 287266,bird 287267,bird 287268,horse 287269,cat 287270,dog 287271,bird 287272,airplane 287273,frog 287274,airplane 287275,dog 287276,horse 287277,ship 287278,dog 287279,deer 287280,bird 287281,deer 287282,frog 287283,truck 287284,bird 287285,airplane 287286,bird 287287,cat 287288,frog 287289,cat 287290,cat 287291,dog 287292,truck 287293,ship 287294,truck 287295,horse 287296,deer 287297,frog 287298,frog 287299,cat 287300,frog 287301,dog 287302,deer 287303,automobile 287304,bird 287305,horse 287306,frog 287307,ship 287308,dog 287309,ship 287310,cat 287311,dog 287312,truck 287313,dog 287314,bird 287315,cat 287316,deer 287317,ship 287318,horse 287319,horse 287320,frog 287321,automobile 287322,bird 287323,cat 287324,ship 287325,deer 287326,truck 287327,bird 287328,bird 287329,frog 287330,cat 287331,frog 287332,cat 287333,ship 287334,ship 287335,frog 287336,dog 287337,ship 287338,horse 287339,cat 287340,truck 287341,frog 287342,ship 287343,truck 287344,airplane 287345,dog 287346,deer 287347,deer 287348,ship 287349,truck 287350,ship 287351,airplane 287352,frog 287353,bird 287354,horse 287355,airplane 287356,airplane 287357,frog 287358,horse 287359,frog 287360,bird 287361,truck 287362,truck 287363,frog 287364,horse 287365,frog 287366,airplane 287367,deer 287368,truck 287369,truck 287370,deer 287371,ship 287372,truck 287373,horse 287374,automobile 287375,dog 287376,ship 287377,truck 287378,ship 287379,deer 287380,deer 287381,truck 287382,truck 287383,dog 287384,horse 287385,dog 287386,ship 287387,airplane 287388,airplane 287389,airplane 287390,frog 287391,cat 287392,horse 287393,bird 287394,ship 287395,bird 287396,cat 287397,airplane 287398,airplane 287399,cat 287400,dog 287401,frog 287402,airplane 287403,ship 287404,truck 287405,horse 287406,automobile 287407,dog 287408,cat 287409,truck 287410,deer 287411,deer 287412,horse 287413,automobile 287414,deer 287415,airplane 287416,truck 287417,bird 287418,cat 287419,truck 287420,automobile 287421,deer 287422,airplane 287423,frog 287424,truck 287425,airplane 287426,cat 287427,deer 287428,airplane 287429,dog 287430,frog 287431,bird 287432,dog 287433,deer 287434,ship 287435,automobile 287436,frog 287437,deer 287438,airplane 287439,frog 287440,airplane 287441,frog 287442,horse 287443,deer 287444,airplane 287445,cat 287446,deer 287447,deer 287448,bird 287449,frog 287450,truck 287451,horse 287452,truck 287453,deer 287454,dog 287455,ship 287456,frog 287457,bird 287458,deer 287459,truck 287460,cat 287461,dog 287462,dog 287463,horse 287464,deer 287465,bird 287466,airplane 287467,truck 287468,cat 287469,frog 287470,truck 287471,deer 287472,cat 287473,truck 287474,cat 287475,automobile 287476,cat 287477,deer 287478,ship 287479,deer 287480,deer 287481,airplane 287482,cat 287483,deer 287484,bird 287485,cat 287486,ship 287487,deer 287488,bird 287489,frog 287490,deer 287491,horse 287492,ship 287493,deer 287494,cat 287495,ship 287496,deer 287497,frog 287498,ship 287499,ship 287500,horse 287501,ship 287502,truck 287503,bird 287504,horse 287505,deer 287506,horse 287507,cat 287508,dog 287509,airplane 287510,horse 287511,deer 287512,dog 287513,automobile 287514,ship 287515,horse 287516,ship 287517,automobile 287518,dog 287519,cat 287520,cat 287521,truck 287522,deer 287523,dog 287524,truck 287525,bird 287526,frog 287527,deer 287528,automobile 287529,cat 287530,cat 287531,cat 287532,cat 287533,deer 287534,bird 287535,horse 287536,automobile 287537,airplane 287538,ship 287539,deer 287540,dog 287541,cat 287542,cat 287543,dog 287544,bird 287545,bird 287546,automobile 287547,dog 287548,ship 287549,deer 287550,airplane 287551,deer 287552,deer 287553,airplane 287554,horse 287555,airplane 287556,dog 287557,deer 287558,truck 287559,bird 287560,dog 287561,cat 287562,airplane 287563,deer 287564,dog 287565,truck 287566,deer 287567,dog 287568,cat 287569,horse 287570,horse 287571,bird 287572,truck 287573,frog 287574,bird 287575,horse 287576,ship 287577,cat 287578,cat 287579,cat 287580,automobile 287581,dog 287582,automobile 287583,automobile 287584,cat 287585,truck 287586,truck 287587,deer 287588,truck 287589,ship 287590,ship 287591,deer 287592,cat 287593,deer 287594,dog 287595,automobile 287596,automobile 287597,truck 287598,airplane 287599,dog 287600,automobile 287601,deer 287602,deer 287603,cat 287604,dog 287605,cat 287606,cat 287607,bird 287608,bird 287609,dog 287610,deer 287611,horse 287612,truck 287613,dog 287614,ship 287615,deer 287616,deer 287617,bird 287618,deer 287619,bird 287620,automobile 287621,frog 287622,deer 287623,cat 287624,dog 287625,horse 287626,ship 287627,dog 287628,automobile 287629,horse 287630,truck 287631,airplane 287632,truck 287633,frog 287634,deer 287635,frog 287636,cat 287637,airplane 287638,automobile 287639,bird 287640,truck 287641,bird 287642,bird 287643,deer 287644,truck 287645,cat 287646,cat 287647,airplane 287648,truck 287649,dog 287650,bird 287651,deer 287652,dog 287653,horse 287654,automobile 287655,truck 287656,airplane 287657,dog 287658,frog 287659,frog 287660,bird 287661,frog 287662,bird 287663,truck 287664,deer 287665,horse 287666,deer 287667,dog 287668,ship 287669,horse 287670,automobile 287671,automobile 287672,ship 287673,dog 287674,airplane 287675,dog 287676,frog 287677,bird 287678,deer 287679,ship 287680,airplane 287681,ship 287682,automobile 287683,dog 287684,deer 287685,dog 287686,truck 287687,frog 287688,ship 287689,dog 287690,ship 287691,ship 287692,frog 287693,cat 287694,bird 287695,dog 287696,deer 287697,bird 287698,frog 287699,truck 287700,airplane 287701,truck 287702,frog 287703,airplane 287704,cat 287705,frog 287706,deer 287707,bird 287708,dog 287709,ship 287710,frog 287711,automobile 287712,airplane 287713,deer 287714,airplane 287715,deer 287716,ship 287717,horse 287718,airplane 287719,dog 287720,horse 287721,deer 287722,frog 287723,frog 287724,truck 287725,airplane 287726,ship 287727,dog 287728,deer 287729,airplane 287730,dog 287731,airplane 287732,deer 287733,horse 287734,frog 287735,dog 287736,bird 287737,frog 287738,horse 287739,airplane 287740,horse 287741,horse 287742,ship 287743,horse 287744,bird 287745,automobile 287746,dog 287747,frog 287748,frog 287749,dog 287750,cat 287751,airplane 287752,horse 287753,frog 287754,cat 287755,truck 287756,deer 287757,automobile 287758,cat 287759,dog 287760,cat 287761,truck 287762,horse 287763,dog 287764,truck 287765,frog 287766,airplane 287767,truck 287768,horse 287769,deer 287770,bird 287771,deer 287772,deer 287773,dog 287774,horse 287775,horse 287776,airplane 287777,dog 287778,truck 287779,dog 287780,bird 287781,cat 287782,automobile 287783,cat 287784,frog 287785,airplane 287786,cat 287787,cat 287788,automobile 287789,cat 287790,frog 287791,deer 287792,ship 287793,automobile 287794,dog 287795,bird 287796,ship 287797,cat 287798,airplane 287799,deer 287800,deer 287801,dog 287802,ship 287803,cat 287804,truck 287805,cat 287806,dog 287807,automobile 287808,truck 287809,frog 287810,ship 287811,bird 287812,cat 287813,airplane 287814,horse 287815,automobile 287816,cat 287817,cat 287818,cat 287819,airplane 287820,automobile 287821,dog 287822,cat 287823,deer 287824,frog 287825,deer 287826,dog 287827,frog 287828,ship 287829,deer 287830,dog 287831,cat 287832,bird 287833,frog 287834,horse 287835,horse 287836,ship 287837,dog 287838,deer 287839,airplane 287840,deer 287841,frog 287842,dog 287843,bird 287844,truck 287845,airplane 287846,cat 287847,truck 287848,automobile 287849,bird 287850,horse 287851,horse 287852,ship 287853,deer 287854,frog 287855,truck 287856,frog 287857,truck 287858,deer 287859,horse 287860,cat 287861,ship 287862,cat 287863,cat 287864,cat 287865,dog 287866,automobile 287867,horse 287868,automobile 287869,dog 287870,bird 287871,cat 287872,frog 287873,truck 287874,ship 287875,automobile 287876,bird 287877,ship 287878,airplane 287879,horse 287880,horse 287881,deer 287882,deer 287883,horse 287884,truck 287885,bird 287886,cat 287887,deer 287888,bird 287889,ship 287890,cat 287891,deer 287892,frog 287893,automobile 287894,bird 287895,deer 287896,truck 287897,deer 287898,truck 287899,truck 287900,dog 287901,frog 287902,frog 287903,bird 287904,horse 287905,frog 287906,deer 287907,truck 287908,airplane 287909,automobile 287910,truck 287911,dog 287912,dog 287913,bird 287914,deer 287915,cat 287916,airplane 287917,cat 287918,horse 287919,frog 287920,truck 287921,airplane 287922,ship 287923,dog 287924,deer 287925,truck 287926,deer 287927,dog 287928,airplane 287929,deer 287930,cat 287931,cat 287932,truck 287933,deer 287934,frog 287935,dog 287936,automobile 287937,bird 287938,deer 287939,horse 287940,truck 287941,dog 287942,ship 287943,dog 287944,cat 287945,deer 287946,bird 287947,frog 287948,horse 287949,ship 287950,bird 287951,airplane 287952,deer 287953,horse 287954,cat 287955,bird 287956,horse 287957,airplane 287958,deer 287959,truck 287960,frog 287961,ship 287962,bird 287963,cat 287964,horse 287965,frog 287966,truck 287967,truck 287968,ship 287969,dog 287970,truck 287971,cat 287972,deer 287973,frog 287974,cat 287975,dog 287976,bird 287977,bird 287978,bird 287979,truck 287980,horse 287981,bird 287982,frog 287983,airplane 287984,truck 287985,airplane 287986,airplane 287987,horse 287988,frog 287989,automobile 287990,dog 287991,cat 287992,deer 287993,bird 287994,truck 287995,frog 287996,frog 287997,frog 287998,dog 287999,truck 288000,bird 288001,cat 288002,dog 288003,dog 288004,cat 288005,cat 288006,frog 288007,cat 288008,airplane 288009,automobile 288010,cat 288011,truck 288012,ship 288013,dog 288014,truck 288015,horse 288016,truck 288017,deer 288018,deer 288019,frog 288020,horse 288021,frog 288022,frog 288023,dog 288024,airplane 288025,ship 288026,truck 288027,truck 288028,dog 288029,cat 288030,cat 288031,ship 288032,truck 288033,truck 288034,airplane 288035,cat 288036,bird 288037,airplane 288038,bird 288039,bird 288040,horse 288041,bird 288042,cat 288043,truck 288044,cat 288045,horse 288046,automobile 288047,truck 288048,cat 288049,cat 288050,horse 288051,bird 288052,deer 288053,truck 288054,horse 288055,deer 288056,deer 288057,deer 288058,deer 288059,frog 288060,truck 288061,bird 288062,cat 288063,frog 288064,cat 288065,frog 288066,ship 288067,cat 288068,airplane 288069,ship 288070,deer 288071,bird 288072,automobile 288073,frog 288074,automobile 288075,automobile 288076,dog 288077,frog 288078,deer 288079,bird 288080,dog 288081,dog 288082,truck 288083,truck 288084,deer 288085,dog 288086,automobile 288087,frog 288088,horse 288089,truck 288090,deer 288091,truck 288092,deer 288093,truck 288094,dog 288095,airplane 288096,ship 288097,ship 288098,dog 288099,deer 288100,horse 288101,truck 288102,airplane 288103,ship 288104,automobile 288105,airplane 288106,cat 288107,dog 288108,horse 288109,deer 288110,frog 288111,frog 288112,horse 288113,ship 288114,truck 288115,frog 288116,horse 288117,ship 288118,bird 288119,ship 288120,horse 288121,frog 288122,automobile 288123,airplane 288124,horse 288125,horse 288126,dog 288127,cat 288128,dog 288129,ship 288130,dog 288131,dog 288132,frog 288133,frog 288134,cat 288135,automobile 288136,horse 288137,dog 288138,automobile 288139,bird 288140,deer 288141,horse 288142,deer 288143,truck 288144,cat 288145,cat 288146,horse 288147,cat 288148,ship 288149,truck 288150,airplane 288151,cat 288152,automobile 288153,ship 288154,horse 288155,ship 288156,bird 288157,ship 288158,deer 288159,dog 288160,horse 288161,ship 288162,ship 288163,dog 288164,deer 288165,airplane 288166,deer 288167,bird 288168,truck 288169,deer 288170,horse 288171,truck 288172,horse 288173,ship 288174,dog 288175,automobile 288176,frog 288177,frog 288178,truck 288179,deer 288180,ship 288181,deer 288182,dog 288183,bird 288184,automobile 288185,horse 288186,automobile 288187,airplane 288188,cat 288189,frog 288190,deer 288191,cat 288192,deer 288193,airplane 288194,cat 288195,cat 288196,frog 288197,dog 288198,truck 288199,cat 288200,deer 288201,truck 288202,dog 288203,bird 288204,deer 288205,dog 288206,frog 288207,deer 288208,dog 288209,ship 288210,cat 288211,cat 288212,cat 288213,horse 288214,dog 288215,truck 288216,deer 288217,bird 288218,dog 288219,ship 288220,airplane 288221,bird 288222,bird 288223,horse 288224,truck 288225,bird 288226,deer 288227,airplane 288228,cat 288229,truck 288230,frog 288231,cat 288232,airplane 288233,truck 288234,dog 288235,truck 288236,automobile 288237,dog 288238,dog 288239,dog 288240,ship 288241,ship 288242,frog 288243,automobile 288244,bird 288245,cat 288246,horse 288247,truck 288248,frog 288249,bird 288250,automobile 288251,cat 288252,deer 288253,deer 288254,cat 288255,cat 288256,automobile 288257,truck 288258,horse 288259,horse 288260,deer 288261,automobile 288262,frog 288263,horse 288264,automobile 288265,ship 288266,cat 288267,cat 288268,ship 288269,cat 288270,frog 288271,truck 288272,ship 288273,automobile 288274,deer 288275,dog 288276,truck 288277,airplane 288278,bird 288279,ship 288280,frog 288281,cat 288282,frog 288283,frog 288284,truck 288285,dog 288286,airplane 288287,bird 288288,airplane 288289,horse 288290,automobile 288291,frog 288292,deer 288293,frog 288294,horse 288295,airplane 288296,frog 288297,frog 288298,horse 288299,horse 288300,truck 288301,frog 288302,deer 288303,truck 288304,cat 288305,cat 288306,dog 288307,truck 288308,horse 288309,cat 288310,truck 288311,automobile 288312,deer 288313,truck 288314,airplane 288315,bird 288316,bird 288317,automobile 288318,deer 288319,dog 288320,ship 288321,automobile 288322,cat 288323,frog 288324,bird 288325,frog 288326,ship 288327,dog 288328,ship 288329,dog 288330,cat 288331,ship 288332,airplane 288333,frog 288334,horse 288335,truck 288336,cat 288337,bird 288338,airplane 288339,deer 288340,dog 288341,dog 288342,deer 288343,ship 288344,dog 288345,deer 288346,bird 288347,dog 288348,automobile 288349,airplane 288350,frog 288351,bird 288352,horse 288353,airplane 288354,deer 288355,cat 288356,deer 288357,bird 288358,truck 288359,bird 288360,airplane 288361,truck 288362,airplane 288363,dog 288364,cat 288365,cat 288366,bird 288367,cat 288368,cat 288369,cat 288370,bird 288371,automobile 288372,bird 288373,frog 288374,horse 288375,deer 288376,truck 288377,horse 288378,deer 288379,cat 288380,automobile 288381,automobile 288382,automobile 288383,dog 288384,cat 288385,deer 288386,deer 288387,cat 288388,bird 288389,dog 288390,bird 288391,dog 288392,cat 288393,airplane 288394,deer 288395,truck 288396,frog 288397,deer 288398,cat 288399,cat 288400,deer 288401,airplane 288402,cat 288403,horse 288404,dog 288405,deer 288406,truck 288407,dog 288408,truck 288409,bird 288410,frog 288411,bird 288412,deer 288413,frog 288414,horse 288415,bird 288416,bird 288417,ship 288418,horse 288419,bird 288420,bird 288421,horse 288422,dog 288423,frog 288424,dog 288425,airplane 288426,frog 288427,cat 288428,cat 288429,frog 288430,deer 288431,deer 288432,bird 288433,dog 288434,ship 288435,deer 288436,deer 288437,airplane 288438,horse 288439,deer 288440,ship 288441,bird 288442,deer 288443,automobile 288444,cat 288445,dog 288446,ship 288447,dog 288448,deer 288449,deer 288450,ship 288451,bird 288452,deer 288453,dog 288454,airplane 288455,cat 288456,cat 288457,truck 288458,airplane 288459,deer 288460,cat 288461,frog 288462,truck 288463,dog 288464,frog 288465,bird 288466,frog 288467,cat 288468,ship 288469,cat 288470,deer 288471,deer 288472,cat 288473,truck 288474,truck 288475,bird 288476,airplane 288477,horse 288478,horse 288479,truck 288480,bird 288481,dog 288482,dog 288483,frog 288484,frog 288485,ship 288486,horse 288487,frog 288488,deer 288489,bird 288490,bird 288491,frog 288492,deer 288493,frog 288494,truck 288495,deer 288496,cat 288497,truck 288498,bird 288499,frog 288500,horse 288501,ship 288502,deer 288503,automobile 288504,deer 288505,truck 288506,bird 288507,frog 288508,frog 288509,dog 288510,dog 288511,frog 288512,deer 288513,ship 288514,airplane 288515,dog 288516,deer 288517,cat 288518,deer 288519,deer 288520,airplane 288521,cat 288522,frog 288523,airplane 288524,bird 288525,ship 288526,deer 288527,deer 288528,cat 288529,horse 288530,cat 288531,bird 288532,cat 288533,automobile 288534,deer 288535,horse 288536,automobile 288537,ship 288538,bird 288539,truck 288540,dog 288541,frog 288542,automobile 288543,cat 288544,cat 288545,bird 288546,deer 288547,automobile 288548,bird 288549,airplane 288550,deer 288551,truck 288552,frog 288553,frog 288554,deer 288555,truck 288556,deer 288557,dog 288558,deer 288559,bird 288560,truck 288561,ship 288562,horse 288563,automobile 288564,cat 288565,airplane 288566,cat 288567,dog 288568,automobile 288569,ship 288570,frog 288571,truck 288572,airplane 288573,deer 288574,frog 288575,ship 288576,bird 288577,bird 288578,dog 288579,frog 288580,automobile 288581,truck 288582,frog 288583,deer 288584,deer 288585,horse 288586,bird 288587,frog 288588,automobile 288589,cat 288590,dog 288591,deer 288592,truck 288593,horse 288594,frog 288595,deer 288596,bird 288597,horse 288598,automobile 288599,frog 288600,truck 288601,frog 288602,cat 288603,frog 288604,airplane 288605,truck 288606,truck 288607,cat 288608,cat 288609,truck 288610,dog 288611,automobile 288612,cat 288613,automobile 288614,deer 288615,dog 288616,automobile 288617,horse 288618,frog 288619,cat 288620,frog 288621,truck 288622,truck 288623,frog 288624,horse 288625,deer 288626,frog 288627,ship 288628,truck 288629,automobile 288630,bird 288631,ship 288632,ship 288633,ship 288634,dog 288635,ship 288636,bird 288637,cat 288638,deer 288639,truck 288640,truck 288641,horse 288642,bird 288643,frog 288644,deer 288645,deer 288646,cat 288647,ship 288648,ship 288649,cat 288650,bird 288651,cat 288652,cat 288653,automobile 288654,frog 288655,ship 288656,bird 288657,dog 288658,horse 288659,truck 288660,frog 288661,cat 288662,bird 288663,ship 288664,frog 288665,airplane 288666,truck 288667,frog 288668,cat 288669,bird 288670,cat 288671,bird 288672,cat 288673,automobile 288674,bird 288675,horse 288676,truck 288677,bird 288678,bird 288679,automobile 288680,truck 288681,deer 288682,deer 288683,frog 288684,airplane 288685,frog 288686,truck 288687,dog 288688,cat 288689,airplane 288690,truck 288691,truck 288692,ship 288693,airplane 288694,truck 288695,bird 288696,horse 288697,cat 288698,truck 288699,deer 288700,automobile 288701,deer 288702,horse 288703,deer 288704,dog 288705,ship 288706,ship 288707,deer 288708,horse 288709,horse 288710,airplane 288711,cat 288712,deer 288713,cat 288714,airplane 288715,airplane 288716,airplane 288717,cat 288718,ship 288719,airplane 288720,frog 288721,airplane 288722,cat 288723,truck 288724,automobile 288725,automobile 288726,bird 288727,truck 288728,bird 288729,automobile 288730,horse 288731,frog 288732,deer 288733,deer 288734,horse 288735,bird 288736,ship 288737,frog 288738,ship 288739,airplane 288740,dog 288741,deer 288742,frog 288743,truck 288744,bird 288745,frog 288746,cat 288747,bird 288748,horse 288749,deer 288750,cat 288751,dog 288752,bird 288753,cat 288754,automobile 288755,horse 288756,bird 288757,airplane 288758,frog 288759,bird 288760,frog 288761,airplane 288762,horse 288763,dog 288764,automobile 288765,airplane 288766,deer 288767,deer 288768,automobile 288769,deer 288770,deer 288771,truck 288772,horse 288773,airplane 288774,truck 288775,frog 288776,dog 288777,deer 288778,deer 288779,deer 288780,cat 288781,deer 288782,deer 288783,deer 288784,cat 288785,automobile 288786,bird 288787,deer 288788,frog 288789,dog 288790,airplane 288791,cat 288792,horse 288793,cat 288794,airplane 288795,automobile 288796,airplane 288797,frog 288798,deer 288799,cat 288800,frog 288801,dog 288802,horse 288803,frog 288804,deer 288805,cat 288806,dog 288807,frog 288808,cat 288809,airplane 288810,truck 288811,horse 288812,airplane 288813,automobile 288814,dog 288815,truck 288816,frog 288817,horse 288818,frog 288819,cat 288820,ship 288821,bird 288822,bird 288823,airplane 288824,dog 288825,bird 288826,airplane 288827,cat 288828,horse 288829,airplane 288830,automobile 288831,dog 288832,bird 288833,bird 288834,bird 288835,deer 288836,frog 288837,deer 288838,ship 288839,frog 288840,ship 288841,deer 288842,bird 288843,frog 288844,deer 288845,bird 288846,automobile 288847,truck 288848,frog 288849,dog 288850,ship 288851,deer 288852,automobile 288853,deer 288854,frog 288855,cat 288856,deer 288857,airplane 288858,bird 288859,bird 288860,cat 288861,horse 288862,airplane 288863,airplane 288864,frog 288865,bird 288866,deer 288867,truck 288868,automobile 288869,horse 288870,truck 288871,ship 288872,dog 288873,cat 288874,bird 288875,airplane 288876,horse 288877,truck 288878,frog 288879,deer 288880,ship 288881,ship 288882,dog 288883,airplane 288884,horse 288885,truck 288886,deer 288887,airplane 288888,frog 288889,airplane 288890,horse 288891,airplane 288892,truck 288893,frog 288894,frog 288895,dog 288896,cat 288897,automobile 288898,dog 288899,deer 288900,airplane 288901,horse 288902,deer 288903,frog 288904,deer 288905,ship 288906,dog 288907,deer 288908,frog 288909,cat 288910,horse 288911,deer 288912,deer 288913,ship 288914,dog 288915,bird 288916,horse 288917,horse 288918,deer 288919,airplane 288920,deer 288921,deer 288922,cat 288923,bird 288924,cat 288925,frog 288926,airplane 288927,deer 288928,frog 288929,horse 288930,dog 288931,cat 288932,horse 288933,frog 288934,automobile 288935,bird 288936,deer 288937,deer 288938,frog 288939,horse 288940,cat 288941,dog 288942,airplane 288943,ship 288944,frog 288945,frog 288946,ship 288947,deer 288948,frog 288949,bird 288950,dog 288951,bird 288952,deer 288953,truck 288954,bird 288955,deer 288956,automobile 288957,truck 288958,deer 288959,automobile 288960,truck 288961,horse 288962,cat 288963,dog 288964,cat 288965,truck 288966,cat 288967,deer 288968,automobile 288969,ship 288970,horse 288971,ship 288972,deer 288973,airplane 288974,dog 288975,cat 288976,airplane 288977,cat 288978,airplane 288979,dog 288980,deer 288981,horse 288982,ship 288983,ship 288984,ship 288985,ship 288986,frog 288987,automobile 288988,cat 288989,airplane 288990,bird 288991,airplane 288992,dog 288993,horse 288994,bird 288995,frog 288996,ship 288997,automobile 288998,deer 288999,dog 289000,cat 289001,airplane 289002,truck 289003,bird 289004,dog 289005,truck 289006,deer 289007,cat 289008,automobile 289009,frog 289010,automobile 289011,airplane 289012,cat 289013,deer 289014,cat 289015,bird 289016,cat 289017,deer 289018,automobile 289019,dog 289020,deer 289021,cat 289022,deer 289023,cat 289024,truck 289025,deer 289026,truck 289027,automobile 289028,bird 289029,cat 289030,deer 289031,automobile 289032,cat 289033,deer 289034,dog 289035,ship 289036,cat 289037,deer 289038,cat 289039,horse 289040,frog 289041,truck 289042,deer 289043,bird 289044,airplane 289045,truck 289046,truck 289047,frog 289048,cat 289049,truck 289050,automobile 289051,truck 289052,dog 289053,automobile 289054,frog 289055,dog 289056,ship 289057,frog 289058,truck 289059,cat 289060,deer 289061,truck 289062,horse 289063,airplane 289064,truck 289065,ship 289066,truck 289067,ship 289068,truck 289069,ship 289070,deer 289071,bird 289072,cat 289073,deer 289074,deer 289075,airplane 289076,deer 289077,frog 289078,ship 289079,dog 289080,horse 289081,cat 289082,bird 289083,deer 289084,truck 289085,deer 289086,truck 289087,horse 289088,frog 289089,frog 289090,dog 289091,ship 289092,automobile 289093,automobile 289094,deer 289095,airplane 289096,horse 289097,frog 289098,cat 289099,airplane 289100,horse 289101,dog 289102,automobile 289103,frog 289104,horse 289105,airplane 289106,airplane 289107,deer 289108,dog 289109,deer 289110,automobile 289111,dog 289112,frog 289113,truck 289114,automobile 289115,horse 289116,deer 289117,cat 289118,deer 289119,automobile 289120,deer 289121,truck 289122,frog 289123,automobile 289124,airplane 289125,frog 289126,frog 289127,dog 289128,deer 289129,truck 289130,truck 289131,dog 289132,deer 289133,frog 289134,bird 289135,dog 289136,truck 289137,dog 289138,airplane 289139,deer 289140,cat 289141,horse 289142,frog 289143,frog 289144,automobile 289145,deer 289146,ship 289147,dog 289148,airplane 289149,truck 289150,deer 289151,dog 289152,deer 289153,airplane 289154,airplane 289155,cat 289156,frog 289157,cat 289158,dog 289159,truck 289160,dog 289161,ship 289162,cat 289163,cat 289164,cat 289165,cat 289166,automobile 289167,ship 289168,deer 289169,dog 289170,deer 289171,truck 289172,ship 289173,frog 289174,horse 289175,automobile 289176,frog 289177,cat 289178,bird 289179,airplane 289180,truck 289181,airplane 289182,horse 289183,truck 289184,dog 289185,deer 289186,automobile 289187,truck 289188,cat 289189,truck 289190,ship 289191,airplane 289192,cat 289193,frog 289194,dog 289195,automobile 289196,dog 289197,horse 289198,automobile 289199,airplane 289200,dog 289201,bird 289202,dog 289203,cat 289204,bird 289205,horse 289206,airplane 289207,frog 289208,ship 289209,airplane 289210,airplane 289211,frog 289212,dog 289213,cat 289214,cat 289215,horse 289216,bird 289217,cat 289218,deer 289219,airplane 289220,deer 289221,cat 289222,cat 289223,deer 289224,dog 289225,deer 289226,ship 289227,automobile 289228,horse 289229,ship 289230,horse 289231,truck 289232,cat 289233,airplane 289234,dog 289235,truck 289236,frog 289237,cat 289238,frog 289239,ship 289240,dog 289241,cat 289242,bird 289243,ship 289244,dog 289245,cat 289246,airplane 289247,frog 289248,truck 289249,dog 289250,cat 289251,cat 289252,cat 289253,truck 289254,airplane 289255,truck 289256,cat 289257,horse 289258,automobile 289259,dog 289260,dog 289261,cat 289262,automobile 289263,horse 289264,frog 289265,deer 289266,truck 289267,horse 289268,ship 289269,frog 289270,deer 289271,frog 289272,airplane 289273,cat 289274,deer 289275,bird 289276,cat 289277,cat 289278,cat 289279,deer 289280,automobile 289281,deer 289282,deer 289283,deer 289284,truck 289285,automobile 289286,bird 289287,cat 289288,truck 289289,cat 289290,dog 289291,bird 289292,frog 289293,truck 289294,airplane 289295,truck 289296,automobile 289297,bird 289298,truck 289299,cat 289300,dog 289301,dog 289302,ship 289303,deer 289304,horse 289305,bird 289306,truck 289307,truck 289308,ship 289309,cat 289310,cat 289311,deer 289312,deer 289313,dog 289314,airplane 289315,horse 289316,cat 289317,bird 289318,deer 289319,cat 289320,deer 289321,bird 289322,airplane 289323,bird 289324,automobile 289325,ship 289326,bird 289327,airplane 289328,cat 289329,ship 289330,airplane 289331,deer 289332,cat 289333,dog 289334,automobile 289335,deer 289336,frog 289337,cat 289338,frog 289339,ship 289340,deer 289341,dog 289342,airplane 289343,cat 289344,horse 289345,frog 289346,deer 289347,frog 289348,cat 289349,deer 289350,frog 289351,automobile 289352,frog 289353,frog 289354,airplane 289355,airplane 289356,horse 289357,dog 289358,horse 289359,automobile 289360,horse 289361,ship 289362,horse 289363,horse 289364,airplane 289365,dog 289366,cat 289367,frog 289368,deer 289369,horse 289370,horse 289371,dog 289372,airplane 289373,deer 289374,deer 289375,deer 289376,airplane 289377,airplane 289378,deer 289379,deer 289380,ship 289381,cat 289382,truck 289383,ship 289384,horse 289385,dog 289386,automobile 289387,ship 289388,airplane 289389,cat 289390,cat 289391,automobile 289392,ship 289393,bird 289394,deer 289395,airplane 289396,bird 289397,horse 289398,dog 289399,cat 289400,horse 289401,truck 289402,dog 289403,ship 289404,automobile 289405,deer 289406,airplane 289407,deer 289408,frog 289409,horse 289410,airplane 289411,automobile 289412,frog 289413,cat 289414,truck 289415,truck 289416,frog 289417,dog 289418,automobile 289419,cat 289420,cat 289421,airplane 289422,ship 289423,truck 289424,dog 289425,dog 289426,bird 289427,airplane 289428,cat 289429,cat 289430,automobile 289431,deer 289432,frog 289433,ship 289434,truck 289435,deer 289436,truck 289437,truck 289438,airplane 289439,frog 289440,cat 289441,deer 289442,frog 289443,frog 289444,bird 289445,airplane 289446,cat 289447,dog 289448,truck 289449,cat 289450,ship 289451,horse 289452,bird 289453,deer 289454,deer 289455,cat 289456,deer 289457,deer 289458,deer 289459,truck 289460,bird 289461,airplane 289462,deer 289463,frog 289464,horse 289465,frog 289466,deer 289467,airplane 289468,dog 289469,ship 289470,truck 289471,automobile 289472,deer 289473,airplane 289474,automobile 289475,cat 289476,deer 289477,bird 289478,horse 289479,deer 289480,airplane 289481,airplane 289482,truck 289483,frog 289484,deer 289485,airplane 289486,deer 289487,ship 289488,airplane 289489,ship 289490,dog 289491,dog 289492,frog 289493,automobile 289494,automobile 289495,dog 289496,automobile 289497,truck 289498,dog 289499,dog 289500,automobile 289501,airplane 289502,deer 289503,deer 289504,deer 289505,frog 289506,frog 289507,truck 289508,frog 289509,automobile 289510,truck 289511,cat 289512,airplane 289513,horse 289514,airplane 289515,cat 289516,dog 289517,automobile 289518,airplane 289519,airplane 289520,cat 289521,deer 289522,bird 289523,airplane 289524,bird 289525,bird 289526,horse 289527,airplane 289528,automobile 289529,ship 289530,dog 289531,deer 289532,frog 289533,deer 289534,horse 289535,automobile 289536,automobile 289537,automobile 289538,bird 289539,dog 289540,frog 289541,dog 289542,dog 289543,cat 289544,horse 289545,bird 289546,truck 289547,deer 289548,cat 289549,horse 289550,cat 289551,airplane 289552,cat 289553,cat 289554,dog 289555,airplane 289556,horse 289557,deer 289558,deer 289559,cat 289560,cat 289561,bird 289562,airplane 289563,dog 289564,dog 289565,airplane 289566,frog 289567,horse 289568,cat 289569,cat 289570,truck 289571,deer 289572,automobile 289573,dog 289574,dog 289575,cat 289576,automobile 289577,cat 289578,frog 289579,bird 289580,cat 289581,frog 289582,horse 289583,automobile 289584,deer 289585,horse 289586,truck 289587,dog 289588,horse 289589,frog 289590,ship 289591,automobile 289592,cat 289593,bird 289594,deer 289595,deer 289596,dog 289597,deer 289598,deer 289599,bird 289600,automobile 289601,cat 289602,cat 289603,truck 289604,cat 289605,deer 289606,ship 289607,dog 289608,ship 289609,dog 289610,bird 289611,dog 289612,truck 289613,truck 289614,ship 289615,deer 289616,frog 289617,deer 289618,horse 289619,ship 289620,truck 289621,deer 289622,deer 289623,frog 289624,airplane 289625,dog 289626,frog 289627,deer 289628,ship 289629,deer 289630,dog 289631,frog 289632,frog 289633,airplane 289634,truck 289635,deer 289636,truck 289637,bird 289638,horse 289639,cat 289640,frog 289641,deer 289642,automobile 289643,cat 289644,dog 289645,deer 289646,ship 289647,frog 289648,automobile 289649,cat 289650,cat 289651,frog 289652,cat 289653,bird 289654,deer 289655,ship 289656,dog 289657,airplane 289658,airplane 289659,dog 289660,horse 289661,dog 289662,truck 289663,bird 289664,bird 289665,truck 289666,bird 289667,frog 289668,bird 289669,automobile 289670,frog 289671,bird 289672,horse 289673,truck 289674,cat 289675,truck 289676,automobile 289677,truck 289678,frog 289679,frog 289680,horse 289681,truck 289682,horse 289683,cat 289684,horse 289685,cat 289686,dog 289687,horse 289688,frog 289689,bird 289690,cat 289691,dog 289692,airplane 289693,dog 289694,airplane 289695,cat 289696,cat 289697,ship 289698,deer 289699,deer 289700,bird 289701,ship 289702,frog 289703,frog 289704,ship 289705,ship 289706,automobile 289707,truck 289708,horse 289709,dog 289710,cat 289711,cat 289712,horse 289713,bird 289714,dog 289715,deer 289716,ship 289717,ship 289718,truck 289719,frog 289720,bird 289721,airplane 289722,cat 289723,ship 289724,truck 289725,horse 289726,truck 289727,truck 289728,cat 289729,frog 289730,ship 289731,deer 289732,deer 289733,dog 289734,truck 289735,bird 289736,dog 289737,truck 289738,deer 289739,cat 289740,truck 289741,frog 289742,bird 289743,dog 289744,horse 289745,truck 289746,frog 289747,truck 289748,horse 289749,truck 289750,dog 289751,airplane 289752,cat 289753,automobile 289754,cat 289755,truck 289756,dog 289757,bird 289758,dog 289759,dog 289760,frog 289761,frog 289762,ship 289763,truck 289764,frog 289765,horse 289766,airplane 289767,deer 289768,truck 289769,bird 289770,bird 289771,airplane 289772,ship 289773,truck 289774,dog 289775,deer 289776,ship 289777,dog 289778,cat 289779,dog 289780,bird 289781,deer 289782,cat 289783,horse 289784,airplane 289785,automobile 289786,dog 289787,dog 289788,dog 289789,cat 289790,cat 289791,deer 289792,automobile 289793,cat 289794,ship 289795,frog 289796,dog 289797,truck 289798,horse 289799,cat 289800,truck 289801,horse 289802,dog 289803,bird 289804,cat 289805,truck 289806,frog 289807,cat 289808,airplane 289809,automobile 289810,deer 289811,ship 289812,cat 289813,dog 289814,bird 289815,ship 289816,cat 289817,truck 289818,truck 289819,deer 289820,cat 289821,deer 289822,deer 289823,airplane 289824,truck 289825,deer 289826,bird 289827,bird 289828,dog 289829,bird 289830,deer 289831,frog 289832,truck 289833,automobile 289834,truck 289835,cat 289836,automobile 289837,airplane 289838,ship 289839,bird 289840,truck 289841,horse 289842,horse 289843,airplane 289844,airplane 289845,airplane 289846,horse 289847,cat 289848,deer 289849,bird 289850,bird 289851,deer 289852,automobile 289853,bird 289854,deer 289855,bird 289856,truck 289857,horse 289858,truck 289859,airplane 289860,automobile 289861,dog 289862,cat 289863,dog 289864,truck 289865,dog 289866,dog 289867,horse 289868,horse 289869,deer 289870,dog 289871,cat 289872,horse 289873,ship 289874,deer 289875,deer 289876,horse 289877,horse 289878,truck 289879,dog 289880,horse 289881,cat 289882,automobile 289883,frog 289884,horse 289885,deer 289886,airplane 289887,cat 289888,truck 289889,dog 289890,frog 289891,cat 289892,horse 289893,bird 289894,deer 289895,automobile 289896,cat 289897,horse 289898,deer 289899,horse 289900,truck 289901,bird 289902,ship 289903,cat 289904,dog 289905,automobile 289906,dog 289907,airplane 289908,dog 289909,bird 289910,deer 289911,airplane 289912,ship 289913,cat 289914,ship 289915,bird 289916,deer 289917,dog 289918,frog 289919,ship 289920,horse 289921,bird 289922,ship 289923,ship 289924,bird 289925,truck 289926,automobile 289927,horse 289928,cat 289929,dog 289930,airplane 289931,automobile 289932,airplane 289933,bird 289934,dog 289935,bird 289936,cat 289937,ship 289938,cat 289939,dog 289940,truck 289941,airplane 289942,dog 289943,airplane 289944,frog 289945,truck 289946,horse 289947,horse 289948,deer 289949,frog 289950,bird 289951,deer 289952,ship 289953,deer 289954,automobile 289955,truck 289956,truck 289957,dog 289958,deer 289959,truck 289960,dog 289961,dog 289962,dog 289963,dog 289964,horse 289965,airplane 289966,automobile 289967,automobile 289968,ship 289969,deer 289970,dog 289971,ship 289972,cat 289973,dog 289974,cat 289975,ship 289976,horse 289977,truck 289978,deer 289979,truck 289980,deer 289981,dog 289982,dog 289983,bird 289984,automobile 289985,dog 289986,airplane 289987,deer 289988,dog 289989,automobile 289990,cat 289991,cat 289992,airplane 289993,cat 289994,truck 289995,deer 289996,deer 289997,truck 289998,deer 289999,cat 290000,truck 290001,dog 290002,dog 290003,deer 290004,truck 290005,automobile 290006,cat 290007,dog 290008,deer 290009,bird 290010,bird 290011,frog 290012,deer 290013,cat 290014,automobile 290015,deer 290016,truck 290017,deer 290018,cat 290019,cat 290020,cat 290021,ship 290022,cat 290023,deer 290024,ship 290025,frog 290026,airplane 290027,frog 290028,airplane 290029,deer 290030,horse 290031,dog 290032,deer 290033,deer 290034,truck 290035,horse 290036,frog 290037,cat 290038,dog 290039,automobile 290040,automobile 290041,deer 290042,frog 290043,horse 290044,ship 290045,truck 290046,airplane 290047,ship 290048,bird 290049,dog 290050,deer 290051,cat 290052,cat 290053,truck 290054,horse 290055,horse 290056,frog 290057,bird 290058,deer 290059,ship 290060,deer 290061,deer 290062,airplane 290063,automobile 290064,deer 290065,horse 290066,dog 290067,frog 290068,ship 290069,airplane 290070,bird 290071,cat 290072,deer 290073,airplane 290074,airplane 290075,frog 290076,deer 290077,frog 290078,deer 290079,bird 290080,truck 290081,frog 290082,bird 290083,cat 290084,deer 290085,ship 290086,bird 290087,frog 290088,bird 290089,cat 290090,cat 290091,bird 290092,horse 290093,dog 290094,bird 290095,bird 290096,automobile 290097,dog 290098,ship 290099,ship 290100,frog 290101,ship 290102,truck 290103,airplane 290104,cat 290105,deer 290106,dog 290107,ship 290108,truck 290109,horse 290110,deer 290111,cat 290112,dog 290113,bird 290114,cat 290115,dog 290116,horse 290117,horse 290118,bird 290119,deer 290120,deer 290121,airplane 290122,cat 290123,frog 290124,cat 290125,deer 290126,dog 290127,ship 290128,airplane 290129,horse 290130,cat 290131,dog 290132,deer 290133,airplane 290134,ship 290135,horse 290136,deer 290137,frog 290138,frog 290139,cat 290140,ship 290141,cat 290142,bird 290143,truck 290144,frog 290145,horse 290146,horse 290147,airplane 290148,automobile 290149,frog 290150,cat 290151,deer 290152,frog 290153,bird 290154,dog 290155,cat 290156,cat 290157,airplane 290158,deer 290159,dog 290160,deer 290161,truck 290162,airplane 290163,frog 290164,cat 290165,ship 290166,truck 290167,cat 290168,horse 290169,cat 290170,horse 290171,deer 290172,cat 290173,ship 290174,frog 290175,cat 290176,dog 290177,dog 290178,airplane 290179,dog 290180,deer 290181,bird 290182,truck 290183,automobile 290184,bird 290185,ship 290186,horse 290187,dog 290188,bird 290189,cat 290190,ship 290191,horse 290192,airplane 290193,dog 290194,frog 290195,horse 290196,airplane 290197,airplane 290198,deer 290199,horse 290200,airplane 290201,bird 290202,dog 290203,frog 290204,horse 290205,airplane 290206,cat 290207,ship 290208,bird 290209,airplane 290210,deer 290211,ship 290212,deer 290213,airplane 290214,deer 290215,frog 290216,deer 290217,airplane 290218,cat 290219,frog 290220,dog 290221,horse 290222,frog 290223,cat 290224,cat 290225,bird 290226,automobile 290227,deer 290228,deer 290229,truck 290230,automobile 290231,airplane 290232,bird 290233,cat 290234,truck 290235,ship 290236,dog 290237,frog 290238,cat 290239,cat 290240,bird 290241,bird 290242,bird 290243,cat 290244,cat 290245,frog 290246,frog 290247,horse 290248,dog 290249,deer 290250,bird 290251,bird 290252,dog 290253,truck 290254,ship 290255,cat 290256,horse 290257,airplane 290258,airplane 290259,dog 290260,airplane 290261,frog 290262,cat 290263,horse 290264,dog 290265,bird 290266,cat 290267,dog 290268,frog 290269,airplane 290270,airplane 290271,bird 290272,deer 290273,ship 290274,deer 290275,deer 290276,cat 290277,horse 290278,dog 290279,cat 290280,horse 290281,ship 290282,automobile 290283,truck 290284,ship 290285,cat 290286,frog 290287,automobile 290288,dog 290289,truck 290290,horse 290291,bird 290292,deer 290293,deer 290294,ship 290295,cat 290296,bird 290297,ship 290298,truck 290299,bird 290300,bird 290301,deer 290302,dog 290303,ship 290304,ship 290305,cat 290306,ship 290307,bird 290308,deer 290309,frog 290310,cat 290311,horse 290312,dog 290313,cat 290314,bird 290315,deer 290316,deer 290317,frog 290318,automobile 290319,frog 290320,frog 290321,frog 290322,dog 290323,ship 290324,ship 290325,truck 290326,automobile 290327,horse 290328,cat 290329,cat 290330,cat 290331,cat 290332,dog 290333,ship 290334,truck 290335,truck 290336,horse 290337,cat 290338,deer 290339,bird 290340,cat 290341,frog 290342,truck 290343,dog 290344,cat 290345,deer 290346,horse 290347,truck 290348,frog 290349,deer 290350,bird 290351,ship 290352,deer 290353,horse 290354,ship 290355,cat 290356,cat 290357,airplane 290358,bird 290359,automobile 290360,cat 290361,automobile 290362,dog 290363,cat 290364,cat 290365,cat 290366,horse 290367,automobile 290368,bird 290369,ship 290370,horse 290371,dog 290372,airplane 290373,bird 290374,bird 290375,truck 290376,dog 290377,cat 290378,dog 290379,cat 290380,deer 290381,truck 290382,dog 290383,horse 290384,airplane 290385,dog 290386,deer 290387,deer 290388,frog 290389,bird 290390,frog 290391,cat 290392,truck 290393,deer 290394,dog 290395,truck 290396,airplane 290397,ship 290398,bird 290399,deer 290400,cat 290401,cat 290402,truck 290403,deer 290404,horse 290405,deer 290406,ship 290407,bird 290408,airplane 290409,dog 290410,frog 290411,frog 290412,automobile 290413,truck 290414,bird 290415,frog 290416,truck 290417,truck 290418,ship 290419,deer 290420,dog 290421,truck 290422,truck 290423,ship 290424,airplane 290425,horse 290426,deer 290427,bird 290428,cat 290429,deer 290430,airplane 290431,ship 290432,airplane 290433,frog 290434,horse 290435,horse 290436,horse 290437,frog 290438,horse 290439,deer 290440,bird 290441,automobile 290442,automobile 290443,bird 290444,automobile 290445,bird 290446,frog 290447,airplane 290448,cat 290449,bird 290450,cat 290451,bird 290452,deer 290453,airplane 290454,airplane 290455,deer 290456,frog 290457,automobile 290458,airplane 290459,cat 290460,truck 290461,cat 290462,horse 290463,bird 290464,cat 290465,frog 290466,deer 290467,truck 290468,deer 290469,ship 290470,dog 290471,truck 290472,airplane 290473,frog 290474,horse 290475,horse 290476,cat 290477,frog 290478,horse 290479,bird 290480,horse 290481,deer 290482,deer 290483,cat 290484,deer 290485,airplane 290486,ship 290487,truck 290488,bird 290489,bird 290490,bird 290491,frog 290492,ship 290493,frog 290494,cat 290495,truck 290496,cat 290497,truck 290498,horse 290499,airplane 290500,automobile 290501,airplane 290502,airplane 290503,horse 290504,deer 290505,ship 290506,horse 290507,deer 290508,deer 290509,bird 290510,bird 290511,deer 290512,frog 290513,airplane 290514,horse 290515,horse 290516,horse 290517,bird 290518,bird 290519,bird 290520,airplane 290521,airplane 290522,cat 290523,deer 290524,bird 290525,horse 290526,deer 290527,automobile 290528,cat 290529,dog 290530,automobile 290531,bird 290532,deer 290533,ship 290534,truck 290535,cat 290536,cat 290537,deer 290538,bird 290539,deer 290540,horse 290541,automobile 290542,truck 290543,bird 290544,truck 290545,frog 290546,truck 290547,frog 290548,dog 290549,dog 290550,horse 290551,horse 290552,horse 290553,truck 290554,bird 290555,automobile 290556,deer 290557,cat 290558,deer 290559,automobile 290560,horse 290561,frog 290562,cat 290563,airplane 290564,airplane 290565,truck 290566,frog 290567,horse 290568,horse 290569,automobile 290570,frog 290571,ship 290572,dog 290573,truck 290574,frog 290575,deer 290576,horse 290577,dog 290578,deer 290579,bird 290580,bird 290581,frog 290582,deer 290583,deer 290584,horse 290585,frog 290586,horse 290587,bird 290588,bird 290589,bird 290590,frog 290591,airplane 290592,cat 290593,cat 290594,horse 290595,frog 290596,deer 290597,bird 290598,airplane 290599,truck 290600,dog 290601,horse 290602,bird 290603,cat 290604,deer 290605,bird 290606,airplane 290607,ship 290608,truck 290609,cat 290610,horse 290611,ship 290612,truck 290613,dog 290614,frog 290615,cat 290616,truck 290617,dog 290618,airplane 290619,deer 290620,automobile 290621,dog 290622,ship 290623,truck 290624,horse 290625,cat 290626,truck 290627,automobile 290628,dog 290629,horse 290630,automobile 290631,horse 290632,deer 290633,cat 290634,bird 290635,cat 290636,truck 290637,deer 290638,cat 290639,frog 290640,horse 290641,airplane 290642,automobile 290643,airplane 290644,airplane 290645,cat 290646,bird 290647,automobile 290648,deer 290649,cat 290650,frog 290651,frog 290652,ship 290653,automobile 290654,truck 290655,bird 290656,deer 290657,dog 290658,ship 290659,ship 290660,truck 290661,automobile 290662,bird 290663,ship 290664,bird 290665,truck 290666,deer 290667,airplane 290668,cat 290669,deer 290670,automobile 290671,cat 290672,horse 290673,cat 290674,deer 290675,airplane 290676,bird 290677,horse 290678,automobile 290679,deer 290680,frog 290681,deer 290682,bird 290683,cat 290684,dog 290685,horse 290686,bird 290687,cat 290688,dog 290689,horse 290690,deer 290691,dog 290692,airplane 290693,bird 290694,horse 290695,ship 290696,dog 290697,cat 290698,airplane 290699,automobile 290700,airplane 290701,dog 290702,truck 290703,ship 290704,frog 290705,bird 290706,ship 290707,deer 290708,horse 290709,automobile 290710,ship 290711,airplane 290712,automobile 290713,horse 290714,frog 290715,deer 290716,truck 290717,automobile 290718,cat 290719,truck 290720,automobile 290721,truck 290722,cat 290723,frog 290724,deer 290725,airplane 290726,frog 290727,bird 290728,cat 290729,deer 290730,frog 290731,ship 290732,airplane 290733,truck 290734,cat 290735,deer 290736,dog 290737,dog 290738,horse 290739,horse 290740,deer 290741,dog 290742,deer 290743,cat 290744,airplane 290745,frog 290746,dog 290747,deer 290748,frog 290749,deer 290750,frog 290751,deer 290752,frog 290753,cat 290754,airplane 290755,automobile 290756,dog 290757,frog 290758,deer 290759,bird 290760,horse 290761,airplane 290762,horse 290763,cat 290764,airplane 290765,dog 290766,cat 290767,ship 290768,deer 290769,horse 290770,deer 290771,horse 290772,truck 290773,truck 290774,bird 290775,deer 290776,horse 290777,bird 290778,frog 290779,airplane 290780,cat 290781,airplane 290782,ship 290783,dog 290784,dog 290785,bird 290786,deer 290787,horse 290788,truck 290789,dog 290790,cat 290791,deer 290792,deer 290793,truck 290794,truck 290795,frog 290796,frog 290797,ship 290798,dog 290799,automobile 290800,cat 290801,dog 290802,ship 290803,frog 290804,truck 290805,ship 290806,ship 290807,cat 290808,cat 290809,horse 290810,airplane 290811,automobile 290812,ship 290813,airplane 290814,ship 290815,deer 290816,deer 290817,cat 290818,truck 290819,cat 290820,dog 290821,dog 290822,deer 290823,horse 290824,truck 290825,deer 290826,ship 290827,dog 290828,dog 290829,ship 290830,ship 290831,truck 290832,truck 290833,airplane 290834,automobile 290835,cat 290836,ship 290837,airplane 290838,truck 290839,deer 290840,deer 290841,deer 290842,automobile 290843,frog 290844,automobile 290845,dog 290846,deer 290847,ship 290848,dog 290849,truck 290850,frog 290851,truck 290852,truck 290853,bird 290854,horse 290855,cat 290856,frog 290857,cat 290858,bird 290859,frog 290860,automobile 290861,truck 290862,automobile 290863,truck 290864,deer 290865,airplane 290866,truck 290867,truck 290868,ship 290869,horse 290870,ship 290871,cat 290872,horse 290873,horse 290874,deer 290875,dog 290876,cat 290877,horse 290878,truck 290879,horse 290880,horse 290881,ship 290882,truck 290883,dog 290884,automobile 290885,deer 290886,frog 290887,dog 290888,airplane 290889,truck 290890,horse 290891,horse 290892,deer 290893,automobile 290894,horse 290895,bird 290896,deer 290897,bird 290898,bird 290899,frog 290900,dog 290901,dog 290902,deer 290903,frog 290904,bird 290905,truck 290906,horse 290907,deer 290908,automobile 290909,frog 290910,bird 290911,deer 290912,bird 290913,bird 290914,frog 290915,horse 290916,automobile 290917,cat 290918,cat 290919,bird 290920,deer 290921,deer 290922,truck 290923,horse 290924,airplane 290925,bird 290926,frog 290927,automobile 290928,horse 290929,cat 290930,dog 290931,frog 290932,horse 290933,truck 290934,truck 290935,cat 290936,frog 290937,deer 290938,truck 290939,horse 290940,cat 290941,bird 290942,horse 290943,dog 290944,truck 290945,deer 290946,horse 290947,cat 290948,airplane 290949,frog 290950,airplane 290951,deer 290952,dog 290953,dog 290954,horse 290955,truck 290956,airplane 290957,dog 290958,frog 290959,truck 290960,horse 290961,frog 290962,truck 290963,frog 290964,cat 290965,truck 290966,frog 290967,ship 290968,horse 290969,horse 290970,dog 290971,frog 290972,cat 290973,horse 290974,horse 290975,ship 290976,horse 290977,airplane 290978,airplane 290979,deer 290980,airplane 290981,ship 290982,dog 290983,bird 290984,deer 290985,horse 290986,deer 290987,truck 290988,deer 290989,truck 290990,automobile 290991,automobile 290992,horse 290993,cat 290994,horse 290995,dog 290996,deer 290997,frog 290998,deer 290999,bird 291000,ship 291001,deer 291002,bird 291003,cat 291004,cat 291005,dog 291006,frog 291007,dog 291008,deer 291009,cat 291010,cat 291011,truck 291012,ship 291013,deer 291014,dog 291015,horse 291016,frog 291017,automobile 291018,automobile 291019,truck 291020,cat 291021,cat 291022,airplane 291023,cat 291024,truck 291025,automobile 291026,automobile 291027,ship 291028,airplane 291029,deer 291030,truck 291031,frog 291032,bird 291033,cat 291034,automobile 291035,frog 291036,ship 291037,deer 291038,dog 291039,truck 291040,cat 291041,frog 291042,deer 291043,frog 291044,cat 291045,automobile 291046,horse 291047,dog 291048,automobile 291049,airplane 291050,dog 291051,automobile 291052,ship 291053,bird 291054,frog 291055,frog 291056,automobile 291057,horse 291058,cat 291059,cat 291060,airplane 291061,bird 291062,truck 291063,deer 291064,bird 291065,bird 291066,ship 291067,deer 291068,cat 291069,cat 291070,horse 291071,cat 291072,automobile 291073,cat 291074,cat 291075,horse 291076,cat 291077,frog 291078,cat 291079,airplane 291080,dog 291081,bird 291082,truck 291083,dog 291084,airplane 291085,deer 291086,ship 291087,bird 291088,frog 291089,frog 291090,frog 291091,automobile 291092,ship 291093,truck 291094,frog 291095,deer 291096,deer 291097,ship 291098,deer 291099,truck 291100,cat 291101,truck 291102,frog 291103,airplane 291104,horse 291105,automobile 291106,airplane 291107,cat 291108,cat 291109,frog 291110,bird 291111,deer 291112,truck 291113,horse 291114,airplane 291115,automobile 291116,ship 291117,horse 291118,bird 291119,airplane 291120,horse 291121,truck 291122,cat 291123,truck 291124,bird 291125,bird 291126,horse 291127,cat 291128,truck 291129,dog 291130,cat 291131,deer 291132,horse 291133,dog 291134,horse 291135,ship 291136,airplane 291137,deer 291138,ship 291139,ship 291140,horse 291141,cat 291142,ship 291143,bird 291144,truck 291145,truck 291146,truck 291147,automobile 291148,deer 291149,truck 291150,cat 291151,horse 291152,cat 291153,ship 291154,airplane 291155,dog 291156,horse 291157,dog 291158,frog 291159,truck 291160,airplane 291161,dog 291162,horse 291163,horse 291164,airplane 291165,horse 291166,deer 291167,deer 291168,truck 291169,truck 291170,horse 291171,cat 291172,truck 291173,truck 291174,automobile 291175,horse 291176,airplane 291177,bird 291178,bird 291179,frog 291180,bird 291181,truck 291182,bird 291183,frog 291184,airplane 291185,deer 291186,cat 291187,deer 291188,bird 291189,truck 291190,deer 291191,deer 291192,horse 291193,automobile 291194,frog 291195,dog 291196,truck 291197,cat 291198,dog 291199,bird 291200,ship 291201,airplane 291202,bird 291203,dog 291204,deer 291205,truck 291206,horse 291207,cat 291208,airplane 291209,cat 291210,truck 291211,dog 291212,automobile 291213,airplane 291214,bird 291215,frog 291216,deer 291217,airplane 291218,cat 291219,horse 291220,airplane 291221,cat 291222,horse 291223,deer 291224,ship 291225,truck 291226,bird 291227,truck 291228,horse 291229,airplane 291230,truck 291231,frog 291232,truck 291233,deer 291234,ship 291235,automobile 291236,bird 291237,ship 291238,bird 291239,horse 291240,cat 291241,horse 291242,automobile 291243,truck 291244,airplane 291245,airplane 291246,frog 291247,frog 291248,truck 291249,horse 291250,truck 291251,dog 291252,bird 291253,cat 291254,airplane 291255,deer 291256,deer 291257,frog 291258,cat 291259,bird 291260,cat 291261,bird 291262,cat 291263,ship 291264,cat 291265,cat 291266,deer 291267,automobile 291268,cat 291269,frog 291270,cat 291271,automobile 291272,dog 291273,horse 291274,ship 291275,ship 291276,airplane 291277,cat 291278,automobile 291279,deer 291280,horse 291281,airplane 291282,frog 291283,frog 291284,cat 291285,deer 291286,truck 291287,cat 291288,airplane 291289,airplane 291290,airplane 291291,bird 291292,deer 291293,horse 291294,cat 291295,dog 291296,airplane 291297,ship 291298,frog 291299,cat 291300,truck 291301,airplane 291302,automobile 291303,truck 291304,bird 291305,airplane 291306,ship 291307,horse 291308,truck 291309,deer 291310,frog 291311,horse 291312,horse 291313,truck 291314,horse 291315,truck 291316,dog 291317,deer 291318,truck 291319,cat 291320,dog 291321,truck 291322,horse 291323,bird 291324,frog 291325,airplane 291326,bird 291327,ship 291328,cat 291329,truck 291330,frog 291331,deer 291332,automobile 291333,automobile 291334,deer 291335,deer 291336,dog 291337,deer 291338,dog 291339,dog 291340,deer 291341,deer 291342,automobile 291343,frog 291344,dog 291345,airplane 291346,cat 291347,deer 291348,ship 291349,deer 291350,airplane 291351,dog 291352,deer 291353,automobile 291354,deer 291355,bird 291356,airplane 291357,frog 291358,automobile 291359,bird 291360,ship 291361,airplane 291362,ship 291363,bird 291364,cat 291365,deer 291366,dog 291367,truck 291368,airplane 291369,truck 291370,airplane 291371,frog 291372,ship 291373,horse 291374,horse 291375,airplane 291376,ship 291377,deer 291378,airplane 291379,ship 291380,bird 291381,automobile 291382,cat 291383,truck 291384,automobile 291385,dog 291386,bird 291387,horse 291388,deer 291389,bird 291390,deer 291391,deer 291392,ship 291393,truck 291394,frog 291395,deer 291396,ship 291397,frog 291398,horse 291399,deer 291400,airplane 291401,deer 291402,frog 291403,cat 291404,frog 291405,ship 291406,deer 291407,dog 291408,horse 291409,bird 291410,dog 291411,cat 291412,horse 291413,frog 291414,cat 291415,bird 291416,horse 291417,dog 291418,truck 291419,cat 291420,ship 291421,truck 291422,cat 291423,bird 291424,deer 291425,horse 291426,cat 291427,dog 291428,dog 291429,frog 291430,frog 291431,dog 291432,cat 291433,ship 291434,bird 291435,dog 291436,truck 291437,dog 291438,deer 291439,bird 291440,cat 291441,truck 291442,deer 291443,ship 291444,airplane 291445,dog 291446,deer 291447,ship 291448,automobile 291449,frog 291450,frog 291451,airplane 291452,cat 291453,ship 291454,frog 291455,dog 291456,frog 291457,horse 291458,bird 291459,deer 291460,frog 291461,frog 291462,cat 291463,cat 291464,ship 291465,automobile 291466,horse 291467,frog 291468,horse 291469,cat 291470,automobile 291471,cat 291472,frog 291473,airplane 291474,cat 291475,horse 291476,deer 291477,deer 291478,horse 291479,bird 291480,frog 291481,deer 291482,airplane 291483,truck 291484,cat 291485,horse 291486,ship 291487,deer 291488,deer 291489,deer 291490,deer 291491,frog 291492,deer 291493,bird 291494,airplane 291495,cat 291496,cat 291497,ship 291498,airplane 291499,cat 291500,deer 291501,truck 291502,truck 291503,frog 291504,airplane 291505,frog 291506,bird 291507,truck 291508,bird 291509,frog 291510,truck 291511,deer 291512,deer 291513,airplane 291514,cat 291515,ship 291516,deer 291517,cat 291518,ship 291519,truck 291520,cat 291521,airplane 291522,truck 291523,bird 291524,truck 291525,cat 291526,bird 291527,cat 291528,frog 291529,ship 291530,deer 291531,ship 291532,airplane 291533,cat 291534,frog 291535,horse 291536,deer 291537,cat 291538,frog 291539,bird 291540,deer 291541,automobile 291542,automobile 291543,ship 291544,ship 291545,deer 291546,frog 291547,dog 291548,frog 291549,deer 291550,bird 291551,cat 291552,deer 291553,cat 291554,ship 291555,bird 291556,ship 291557,deer 291558,truck 291559,bird 291560,airplane 291561,automobile 291562,bird 291563,deer 291564,deer 291565,frog 291566,horse 291567,truck 291568,deer 291569,deer 291570,dog 291571,truck 291572,truck 291573,cat 291574,truck 291575,airplane 291576,truck 291577,frog 291578,dog 291579,cat 291580,dog 291581,cat 291582,bird 291583,truck 291584,deer 291585,airplane 291586,bird 291587,horse 291588,deer 291589,truck 291590,dog 291591,deer 291592,ship 291593,dog 291594,automobile 291595,cat 291596,truck 291597,truck 291598,truck 291599,airplane 291600,horse 291601,frog 291602,airplane 291603,dog 291604,automobile 291605,deer 291606,horse 291607,frog 291608,cat 291609,deer 291610,automobile 291611,truck 291612,deer 291613,dog 291614,frog 291615,bird 291616,deer 291617,ship 291618,deer 291619,deer 291620,automobile 291621,automobile 291622,frog 291623,truck 291624,dog 291625,automobile 291626,ship 291627,bird 291628,automobile 291629,truck 291630,truck 291631,dog 291632,horse 291633,truck 291634,automobile 291635,frog 291636,frog 291637,deer 291638,airplane 291639,dog 291640,truck 291641,deer 291642,cat 291643,truck 291644,ship 291645,deer 291646,airplane 291647,cat 291648,bird 291649,deer 291650,automobile 291651,deer 291652,dog 291653,cat 291654,bird 291655,dog 291656,cat 291657,bird 291658,ship 291659,airplane 291660,dog 291661,cat 291662,dog 291663,horse 291664,airplane 291665,horse 291666,frog 291667,deer 291668,frog 291669,deer 291670,truck 291671,truck 291672,frog 291673,bird 291674,ship 291675,cat 291676,cat 291677,deer 291678,airplane 291679,ship 291680,dog 291681,frog 291682,truck 291683,deer 291684,cat 291685,horse 291686,cat 291687,truck 291688,ship 291689,ship 291690,frog 291691,ship 291692,deer 291693,dog 291694,bird 291695,bird 291696,ship 291697,horse 291698,cat 291699,ship 291700,truck 291701,horse 291702,truck 291703,bird 291704,bird 291705,frog 291706,deer 291707,truck 291708,ship 291709,frog 291710,automobile 291711,truck 291712,bird 291713,airplane 291714,deer 291715,automobile 291716,deer 291717,deer 291718,ship 291719,dog 291720,deer 291721,truck 291722,deer 291723,dog 291724,deer 291725,frog 291726,automobile 291727,dog 291728,ship 291729,automobile 291730,cat 291731,dog 291732,deer 291733,bird 291734,truck 291735,horse 291736,truck 291737,airplane 291738,horse 291739,frog 291740,horse 291741,ship 291742,truck 291743,automobile 291744,horse 291745,cat 291746,truck 291747,airplane 291748,dog 291749,cat 291750,ship 291751,airplane 291752,horse 291753,automobile 291754,automobile 291755,cat 291756,deer 291757,cat 291758,truck 291759,horse 291760,airplane 291761,frog 291762,deer 291763,bird 291764,truck 291765,ship 291766,airplane 291767,airplane 291768,frog 291769,dog 291770,frog 291771,deer 291772,ship 291773,deer 291774,bird 291775,automobile 291776,bird 291777,cat 291778,automobile 291779,airplane 291780,deer 291781,automobile 291782,dog 291783,automobile 291784,truck 291785,ship 291786,deer 291787,bird 291788,ship 291789,truck 291790,dog 291791,bird 291792,ship 291793,dog 291794,dog 291795,truck 291796,automobile 291797,truck 291798,truck 291799,airplane 291800,ship 291801,ship 291802,bird 291803,cat 291804,bird 291805,dog 291806,ship 291807,deer 291808,bird 291809,truck 291810,dog 291811,truck 291812,automobile 291813,cat 291814,truck 291815,frog 291816,ship 291817,deer 291818,truck 291819,ship 291820,truck 291821,automobile 291822,truck 291823,bird 291824,deer 291825,frog 291826,cat 291827,frog 291828,ship 291829,dog 291830,frog 291831,truck 291832,horse 291833,deer 291834,airplane 291835,frog 291836,ship 291837,bird 291838,frog 291839,airplane 291840,airplane 291841,horse 291842,automobile 291843,dog 291844,automobile 291845,deer 291846,deer 291847,airplane 291848,bird 291849,ship 291850,deer 291851,airplane 291852,ship 291853,automobile 291854,airplane 291855,truck 291856,automobile 291857,cat 291858,frog 291859,horse 291860,ship 291861,automobile 291862,airplane 291863,frog 291864,bird 291865,truck 291866,deer 291867,automobile 291868,frog 291869,automobile 291870,airplane 291871,bird 291872,dog 291873,dog 291874,horse 291875,dog 291876,deer 291877,frog 291878,cat 291879,dog 291880,cat 291881,deer 291882,automobile 291883,bird 291884,frog 291885,deer 291886,truck 291887,deer 291888,dog 291889,frog 291890,dog 291891,truck 291892,horse 291893,truck 291894,deer 291895,truck 291896,ship 291897,frog 291898,horse 291899,deer 291900,ship 291901,cat 291902,deer 291903,deer 291904,truck 291905,horse 291906,truck 291907,truck 291908,cat 291909,cat 291910,dog 291911,truck 291912,horse 291913,automobile 291914,airplane 291915,frog 291916,cat 291917,deer 291918,deer 291919,frog 291920,cat 291921,cat 291922,bird 291923,automobile 291924,dog 291925,cat 291926,horse 291927,bird 291928,deer 291929,bird 291930,automobile 291931,airplane 291932,cat 291933,ship 291934,airplane 291935,truck 291936,cat 291937,truck 291938,automobile 291939,automobile 291940,cat 291941,frog 291942,bird 291943,deer 291944,truck 291945,truck 291946,bird 291947,cat 291948,airplane 291949,deer 291950,dog 291951,horse 291952,ship 291953,dog 291954,truck 291955,automobile 291956,ship 291957,automobile 291958,frog 291959,frog 291960,dog 291961,automobile 291962,automobile 291963,horse 291964,frog 291965,dog 291966,dog 291967,frog 291968,truck 291969,frog 291970,automobile 291971,automobile 291972,dog 291973,cat 291974,dog 291975,airplane 291976,truck 291977,automobile 291978,bird 291979,frog 291980,deer 291981,bird 291982,bird 291983,truck 291984,dog 291985,dog 291986,deer 291987,deer 291988,dog 291989,ship 291990,dog 291991,bird 291992,cat 291993,cat 291994,horse 291995,horse 291996,frog 291997,deer 291998,truck 291999,airplane 292000,horse 292001,cat 292002,airplane 292003,deer 292004,cat 292005,dog 292006,horse 292007,ship 292008,dog 292009,bird 292010,truck 292011,ship 292012,cat 292013,automobile 292014,horse 292015,deer 292016,dog 292017,dog 292018,deer 292019,airplane 292020,truck 292021,automobile 292022,frog 292023,frog 292024,deer 292025,dog 292026,dog 292027,deer 292028,truck 292029,deer 292030,horse 292031,airplane 292032,airplane 292033,ship 292034,horse 292035,automobile 292036,cat 292037,airplane 292038,horse 292039,dog 292040,airplane 292041,deer 292042,deer 292043,bird 292044,ship 292045,automobile 292046,cat 292047,airplane 292048,cat 292049,frog 292050,ship 292051,airplane 292052,horse 292053,dog 292054,airplane 292055,deer 292056,ship 292057,automobile 292058,frog 292059,frog 292060,truck 292061,deer 292062,automobile 292063,truck 292064,ship 292065,deer 292066,airplane 292067,deer 292068,frog 292069,horse 292070,bird 292071,frog 292072,ship 292073,dog 292074,frog 292075,horse 292076,automobile 292077,dog 292078,truck 292079,bird 292080,deer 292081,truck 292082,cat 292083,bird 292084,cat 292085,deer 292086,dog 292087,automobile 292088,truck 292089,automobile 292090,horse 292091,cat 292092,deer 292093,horse 292094,bird 292095,automobile 292096,bird 292097,automobile 292098,airplane 292099,deer 292100,ship 292101,ship 292102,frog 292103,frog 292104,deer 292105,bird 292106,deer 292107,bird 292108,cat 292109,frog 292110,dog 292111,frog 292112,automobile 292113,cat 292114,frog 292115,cat 292116,deer 292117,horse 292118,truck 292119,bird 292120,automobile 292121,dog 292122,cat 292123,frog 292124,airplane 292125,cat 292126,truck 292127,automobile 292128,automobile 292129,horse 292130,airplane 292131,truck 292132,deer 292133,horse 292134,cat 292135,airplane 292136,airplane 292137,dog 292138,horse 292139,ship 292140,cat 292141,dog 292142,airplane 292143,dog 292144,ship 292145,cat 292146,ship 292147,cat 292148,bird 292149,ship 292150,deer 292151,bird 292152,horse 292153,deer 292154,dog 292155,frog 292156,cat 292157,automobile 292158,truck 292159,horse 292160,cat 292161,cat 292162,dog 292163,airplane 292164,deer 292165,airplane 292166,horse 292167,deer 292168,automobile 292169,frog 292170,airplane 292171,bird 292172,dog 292173,truck 292174,truck 292175,frog 292176,truck 292177,horse 292178,bird 292179,horse 292180,automobile 292181,dog 292182,automobile 292183,airplane 292184,horse 292185,truck 292186,frog 292187,bird 292188,horse 292189,truck 292190,airplane 292191,horse 292192,truck 292193,bird 292194,deer 292195,frog 292196,cat 292197,truck 292198,ship 292199,bird 292200,truck 292201,horse 292202,cat 292203,ship 292204,bird 292205,horse 292206,frog 292207,automobile 292208,truck 292209,ship 292210,frog 292211,truck 292212,horse 292213,frog 292214,automobile 292215,cat 292216,deer 292217,airplane 292218,ship 292219,horse 292220,truck 292221,ship 292222,cat 292223,dog 292224,cat 292225,horse 292226,deer 292227,horse 292228,truck 292229,cat 292230,bird 292231,ship 292232,truck 292233,deer 292234,cat 292235,airplane 292236,truck 292237,automobile 292238,deer 292239,cat 292240,dog 292241,deer 292242,ship 292243,dog 292244,dog 292245,cat 292246,ship 292247,deer 292248,deer 292249,horse 292250,airplane 292251,deer 292252,bird 292253,bird 292254,frog 292255,cat 292256,deer 292257,dog 292258,automobile 292259,airplane 292260,truck 292261,ship 292262,truck 292263,bird 292264,truck 292265,horse 292266,truck 292267,ship 292268,frog 292269,cat 292270,airplane 292271,deer 292272,dog 292273,frog 292274,deer 292275,automobile 292276,bird 292277,truck 292278,truck 292279,truck 292280,truck 292281,dog 292282,automobile 292283,deer 292284,deer 292285,deer 292286,airplane 292287,truck 292288,dog 292289,airplane 292290,ship 292291,automobile 292292,frog 292293,cat 292294,frog 292295,cat 292296,cat 292297,ship 292298,deer 292299,horse 292300,dog 292301,truck 292302,airplane 292303,ship 292304,frog 292305,cat 292306,deer 292307,truck 292308,frog 292309,cat 292310,dog 292311,cat 292312,airplane 292313,frog 292314,truck 292315,horse 292316,cat 292317,ship 292318,automobile 292319,horse 292320,bird 292321,cat 292322,dog 292323,deer 292324,airplane 292325,horse 292326,deer 292327,deer 292328,dog 292329,bird 292330,deer 292331,airplane 292332,ship 292333,automobile 292334,automobile 292335,airplane 292336,deer 292337,airplane 292338,automobile 292339,horse 292340,bird 292341,cat 292342,automobile 292343,horse 292344,deer 292345,deer 292346,truck 292347,dog 292348,horse 292349,deer 292350,dog 292351,cat 292352,cat 292353,horse 292354,horse 292355,ship 292356,dog 292357,truck 292358,horse 292359,frog 292360,bird 292361,deer 292362,truck 292363,truck 292364,horse 292365,frog 292366,dog 292367,airplane 292368,frog 292369,ship 292370,bird 292371,ship 292372,horse 292373,truck 292374,truck 292375,airplane 292376,dog 292377,deer 292378,truck 292379,cat 292380,automobile 292381,dog 292382,cat 292383,cat 292384,dog 292385,bird 292386,cat 292387,truck 292388,cat 292389,automobile 292390,ship 292391,airplane 292392,airplane 292393,airplane 292394,cat 292395,frog 292396,dog 292397,dog 292398,bird 292399,dog 292400,bird 292401,deer 292402,bird 292403,truck 292404,bird 292405,automobile 292406,ship 292407,horse 292408,bird 292409,frog 292410,deer 292411,horse 292412,airplane 292413,cat 292414,ship 292415,frog 292416,frog 292417,frog 292418,truck 292419,truck 292420,ship 292421,dog 292422,deer 292423,deer 292424,dog 292425,deer 292426,cat 292427,frog 292428,dog 292429,deer 292430,ship 292431,frog 292432,bird 292433,horse 292434,frog 292435,dog 292436,horse 292437,cat 292438,cat 292439,ship 292440,bird 292441,cat 292442,airplane 292443,deer 292444,ship 292445,deer 292446,bird 292447,ship 292448,deer 292449,airplane 292450,airplane 292451,truck 292452,deer 292453,truck 292454,dog 292455,deer 292456,truck 292457,cat 292458,deer 292459,truck 292460,cat 292461,cat 292462,frog 292463,airplane 292464,ship 292465,horse 292466,airplane 292467,deer 292468,horse 292469,deer 292470,dog 292471,airplane 292472,bird 292473,horse 292474,horse 292475,deer 292476,dog 292477,airplane 292478,deer 292479,frog 292480,truck 292481,cat 292482,truck 292483,bird 292484,bird 292485,cat 292486,automobile 292487,bird 292488,deer 292489,horse 292490,airplane 292491,deer 292492,automobile 292493,bird 292494,airplane 292495,frog 292496,frog 292497,truck 292498,horse 292499,bird 292500,cat 292501,deer 292502,truck 292503,truck 292504,bird 292505,bird 292506,deer 292507,deer 292508,deer 292509,airplane 292510,automobile 292511,ship 292512,truck 292513,dog 292514,ship 292515,dog 292516,deer 292517,cat 292518,airplane 292519,automobile 292520,ship 292521,frog 292522,ship 292523,horse 292524,cat 292525,airplane 292526,frog 292527,truck 292528,cat 292529,truck 292530,frog 292531,bird 292532,frog 292533,frog 292534,truck 292535,deer 292536,truck 292537,horse 292538,frog 292539,horse 292540,cat 292541,bird 292542,frog 292543,automobile 292544,cat 292545,cat 292546,deer 292547,dog 292548,frog 292549,deer 292550,dog 292551,cat 292552,cat 292553,automobile 292554,deer 292555,deer 292556,ship 292557,ship 292558,cat 292559,cat 292560,deer 292561,cat 292562,ship 292563,horse 292564,bird 292565,airplane 292566,dog 292567,bird 292568,airplane 292569,airplane 292570,bird 292571,dog 292572,bird 292573,cat 292574,automobile 292575,deer 292576,cat 292577,frog 292578,horse 292579,bird 292580,automobile 292581,horse 292582,frog 292583,airplane 292584,deer 292585,bird 292586,horse 292587,cat 292588,dog 292589,deer 292590,horse 292591,automobile 292592,deer 292593,frog 292594,horse 292595,deer 292596,ship 292597,ship 292598,truck 292599,horse 292600,airplane 292601,airplane 292602,truck 292603,airplane 292604,frog 292605,bird 292606,bird 292607,bird 292608,truck 292609,bird 292610,airplane 292611,dog 292612,dog 292613,frog 292614,cat 292615,frog 292616,truck 292617,cat 292618,deer 292619,airplane 292620,cat 292621,cat 292622,frog 292623,airplane 292624,horse 292625,frog 292626,airplane 292627,dog 292628,airplane 292629,horse 292630,dog 292631,cat 292632,dog 292633,truck 292634,horse 292635,frog 292636,deer 292637,cat 292638,deer 292639,airplane 292640,bird 292641,dog 292642,deer 292643,bird 292644,cat 292645,truck 292646,ship 292647,frog 292648,truck 292649,horse 292650,automobile 292651,deer 292652,frog 292653,cat 292654,horse 292655,deer 292656,bird 292657,automobile 292658,airplane 292659,truck 292660,airplane 292661,deer 292662,airplane 292663,airplane 292664,bird 292665,dog 292666,ship 292667,ship 292668,horse 292669,truck 292670,deer 292671,truck 292672,truck 292673,ship 292674,bird 292675,bird 292676,truck 292677,dog 292678,airplane 292679,deer 292680,bird 292681,deer 292682,automobile 292683,truck 292684,horse 292685,dog 292686,deer 292687,frog 292688,dog 292689,horse 292690,truck 292691,airplane 292692,bird 292693,cat 292694,dog 292695,horse 292696,airplane 292697,ship 292698,frog 292699,horse 292700,truck 292701,horse 292702,dog 292703,deer 292704,deer 292705,bird 292706,frog 292707,frog 292708,truck 292709,cat 292710,deer 292711,cat 292712,horse 292713,cat 292714,truck 292715,airplane 292716,frog 292717,automobile 292718,cat 292719,truck 292720,frog 292721,airplane 292722,deer 292723,frog 292724,bird 292725,cat 292726,bird 292727,dog 292728,horse 292729,frog 292730,airplane 292731,cat 292732,cat 292733,deer 292734,deer 292735,frog 292736,horse 292737,automobile 292738,ship 292739,automobile 292740,airplane 292741,ship 292742,truck 292743,truck 292744,bird 292745,bird 292746,airplane 292747,deer 292748,dog 292749,horse 292750,dog 292751,truck 292752,bird 292753,dog 292754,deer 292755,truck 292756,truck 292757,truck 292758,airplane 292759,truck 292760,horse 292761,horse 292762,cat 292763,dog 292764,cat 292765,bird 292766,deer 292767,horse 292768,ship 292769,ship 292770,cat 292771,frog 292772,bird 292773,cat 292774,horse 292775,truck 292776,airplane 292777,cat 292778,automobile 292779,ship 292780,ship 292781,deer 292782,dog 292783,cat 292784,frog 292785,cat 292786,frog 292787,frog 292788,airplane 292789,ship 292790,bird 292791,automobile 292792,cat 292793,truck 292794,frog 292795,deer 292796,frog 292797,deer 292798,frog 292799,frog 292800,frog 292801,automobile 292802,truck 292803,automobile 292804,ship 292805,truck 292806,truck 292807,deer 292808,deer 292809,deer 292810,airplane 292811,frog 292812,truck 292813,deer 292814,airplane 292815,frog 292816,bird 292817,deer 292818,cat 292819,cat 292820,cat 292821,horse 292822,truck 292823,bird 292824,cat 292825,frog 292826,frog 292827,automobile 292828,automobile 292829,deer 292830,horse 292831,frog 292832,bird 292833,deer 292834,horse 292835,automobile 292836,dog 292837,airplane 292838,deer 292839,truck 292840,bird 292841,truck 292842,deer 292843,truck 292844,truck 292845,dog 292846,deer 292847,airplane 292848,automobile 292849,cat 292850,truck 292851,deer 292852,bird 292853,cat 292854,cat 292855,ship 292856,truck 292857,truck 292858,airplane 292859,bird 292860,cat 292861,deer 292862,deer 292863,horse 292864,horse 292865,dog 292866,frog 292867,deer 292868,cat 292869,truck 292870,automobile 292871,deer 292872,dog 292873,bird 292874,automobile 292875,horse 292876,bird 292877,dog 292878,truck 292879,frog 292880,dog 292881,cat 292882,bird 292883,horse 292884,automobile 292885,dog 292886,frog 292887,dog 292888,ship 292889,dog 292890,cat 292891,horse 292892,automobile 292893,truck 292894,truck 292895,ship 292896,truck 292897,airplane 292898,frog 292899,ship 292900,truck 292901,airplane 292902,cat 292903,airplane 292904,airplane 292905,airplane 292906,deer 292907,frog 292908,cat 292909,airplane 292910,horse 292911,truck 292912,ship 292913,cat 292914,frog 292915,cat 292916,ship 292917,horse 292918,automobile 292919,deer 292920,bird 292921,cat 292922,automobile 292923,deer 292924,frog 292925,horse 292926,airplane 292927,ship 292928,deer 292929,frog 292930,deer 292931,deer 292932,bird 292933,horse 292934,frog 292935,deer 292936,truck 292937,horse 292938,frog 292939,airplane 292940,frog 292941,ship 292942,bird 292943,ship 292944,automobile 292945,dog 292946,ship 292947,cat 292948,truck 292949,bird 292950,automobile 292951,airplane 292952,dog 292953,deer 292954,automobile 292955,automobile 292956,airplane 292957,airplane 292958,truck 292959,airplane 292960,dog 292961,truck 292962,horse 292963,airplane 292964,deer 292965,horse 292966,frog 292967,horse 292968,dog 292969,ship 292970,horse 292971,dog 292972,cat 292973,cat 292974,deer 292975,truck 292976,deer 292977,frog 292978,truck 292979,airplane 292980,bird 292981,ship 292982,deer 292983,frog 292984,dog 292985,ship 292986,bird 292987,airplane 292988,bird 292989,deer 292990,truck 292991,truck 292992,deer 292993,truck 292994,dog 292995,deer 292996,dog 292997,dog 292998,cat 292999,ship 293000,truck 293001,ship 293002,ship 293003,deer 293004,dog 293005,horse 293006,deer 293007,deer 293008,ship 293009,truck 293010,horse 293011,bird 293012,frog 293013,deer 293014,airplane 293015,frog 293016,horse 293017,automobile 293018,horse 293019,truck 293020,horse 293021,horse 293022,ship 293023,cat 293024,deer 293025,automobile 293026,airplane 293027,dog 293028,automobile 293029,ship 293030,airplane 293031,horse 293032,airplane 293033,cat 293034,airplane 293035,truck 293036,automobile 293037,ship 293038,truck 293039,dog 293040,truck 293041,frog 293042,truck 293043,cat 293044,dog 293045,cat 293046,deer 293047,ship 293048,dog 293049,horse 293050,deer 293051,cat 293052,dog 293053,deer 293054,horse 293055,dog 293056,deer 293057,dog 293058,ship 293059,cat 293060,bird 293061,cat 293062,cat 293063,truck 293064,airplane 293065,deer 293066,bird 293067,deer 293068,frog 293069,airplane 293070,cat 293071,ship 293072,deer 293073,cat 293074,airplane 293075,horse 293076,automobile 293077,truck 293078,dog 293079,dog 293080,deer 293081,horse 293082,horse 293083,airplane 293084,cat 293085,ship 293086,truck 293087,bird 293088,truck 293089,deer 293090,bird 293091,bird 293092,ship 293093,truck 293094,truck 293095,truck 293096,horse 293097,ship 293098,frog 293099,dog 293100,cat 293101,cat 293102,dog 293103,deer 293104,automobile 293105,cat 293106,dog 293107,deer 293108,dog 293109,deer 293110,frog 293111,deer 293112,truck 293113,ship 293114,dog 293115,deer 293116,deer 293117,airplane 293118,deer 293119,ship 293120,deer 293121,cat 293122,cat 293123,truck 293124,truck 293125,airplane 293126,truck 293127,automobile 293128,ship 293129,frog 293130,deer 293131,horse 293132,deer 293133,automobile 293134,truck 293135,automobile 293136,cat 293137,airplane 293138,bird 293139,frog 293140,frog 293141,automobile 293142,ship 293143,horse 293144,dog 293145,horse 293146,ship 293147,cat 293148,cat 293149,truck 293150,airplane 293151,deer 293152,cat 293153,bird 293154,deer 293155,cat 293156,automobile 293157,horse 293158,dog 293159,cat 293160,deer 293161,bird 293162,bird 293163,horse 293164,ship 293165,frog 293166,bird 293167,horse 293168,deer 293169,deer 293170,truck 293171,bird 293172,cat 293173,bird 293174,cat 293175,dog 293176,frog 293177,truck 293178,dog 293179,ship 293180,truck 293181,deer 293182,bird 293183,deer 293184,dog 293185,frog 293186,cat 293187,dog 293188,cat 293189,cat 293190,frog 293191,airplane 293192,airplane 293193,airplane 293194,automobile 293195,automobile 293196,cat 293197,truck 293198,cat 293199,ship 293200,airplane 293201,bird 293202,frog 293203,ship 293204,truck 293205,frog 293206,truck 293207,bird 293208,ship 293209,horse 293210,cat 293211,deer 293212,frog 293213,frog 293214,airplane 293215,frog 293216,deer 293217,ship 293218,ship 293219,frog 293220,cat 293221,frog 293222,deer 293223,bird 293224,ship 293225,bird 293226,airplane 293227,dog 293228,dog 293229,cat 293230,truck 293231,truck 293232,horse 293233,deer 293234,frog 293235,ship 293236,deer 293237,horse 293238,horse 293239,dog 293240,horse 293241,bird 293242,deer 293243,deer 293244,deer 293245,frog 293246,dog 293247,truck 293248,bird 293249,automobile 293250,truck 293251,truck 293252,dog 293253,cat 293254,airplane 293255,automobile 293256,horse 293257,airplane 293258,horse 293259,truck 293260,cat 293261,horse 293262,dog 293263,deer 293264,ship 293265,dog 293266,dog 293267,bird 293268,cat 293269,bird 293270,cat 293271,dog 293272,truck 293273,bird 293274,cat 293275,deer 293276,ship 293277,truck 293278,automobile 293279,frog 293280,airplane 293281,bird 293282,cat 293283,deer 293284,truck 293285,frog 293286,deer 293287,bird 293288,horse 293289,ship 293290,cat 293291,deer 293292,truck 293293,deer 293294,cat 293295,deer 293296,frog 293297,frog 293298,truck 293299,deer 293300,automobile 293301,dog 293302,bird 293303,bird 293304,frog 293305,frog 293306,bird 293307,cat 293308,horse 293309,truck 293310,cat 293311,dog 293312,frog 293313,frog 293314,deer 293315,frog 293316,airplane 293317,dog 293318,airplane 293319,cat 293320,cat 293321,frog 293322,horse 293323,deer 293324,truck 293325,automobile 293326,airplane 293327,horse 293328,frog 293329,horse 293330,frog 293331,cat 293332,automobile 293333,truck 293334,dog 293335,dog 293336,frog 293337,cat 293338,dog 293339,horse 293340,horse 293341,horse 293342,frog 293343,bird 293344,automobile 293345,automobile 293346,airplane 293347,deer 293348,frog 293349,cat 293350,cat 293351,dog 293352,automobile 293353,truck 293354,airplane 293355,bird 293356,airplane 293357,bird 293358,cat 293359,deer 293360,truck 293361,cat 293362,dog 293363,truck 293364,frog 293365,bird 293366,dog 293367,dog 293368,dog 293369,horse 293370,truck 293371,ship 293372,cat 293373,cat 293374,truck 293375,frog 293376,bird 293377,airplane 293378,bird 293379,dog 293380,frog 293381,automobile 293382,cat 293383,bird 293384,airplane 293385,deer 293386,ship 293387,truck 293388,horse 293389,frog 293390,airplane 293391,horse 293392,deer 293393,truck 293394,truck 293395,automobile 293396,truck 293397,dog 293398,cat 293399,ship 293400,truck 293401,bird 293402,deer 293403,cat 293404,horse 293405,horse 293406,frog 293407,cat 293408,horse 293409,airplane 293410,ship 293411,automobile 293412,deer 293413,dog 293414,cat 293415,cat 293416,truck 293417,ship 293418,deer 293419,ship 293420,dog 293421,cat 293422,bird 293423,frog 293424,cat 293425,deer 293426,horse 293427,automobile 293428,bird 293429,dog 293430,bird 293431,cat 293432,horse 293433,frog 293434,automobile 293435,horse 293436,airplane 293437,deer 293438,bird 293439,cat 293440,deer 293441,horse 293442,automobile 293443,bird 293444,deer 293445,bird 293446,cat 293447,cat 293448,dog 293449,truck 293450,frog 293451,truck 293452,cat 293453,deer 293454,deer 293455,automobile 293456,ship 293457,horse 293458,deer 293459,horse 293460,dog 293461,frog 293462,airplane 293463,truck 293464,frog 293465,deer 293466,frog 293467,automobile 293468,dog 293469,truck 293470,dog 293471,dog 293472,ship 293473,automobile 293474,truck 293475,truck 293476,ship 293477,deer 293478,horse 293479,bird 293480,frog 293481,airplane 293482,dog 293483,horse 293484,bird 293485,deer 293486,bird 293487,cat 293488,cat 293489,truck 293490,truck 293491,cat 293492,dog 293493,bird 293494,dog 293495,bird 293496,truck 293497,dog 293498,dog 293499,truck 293500,bird 293501,cat 293502,bird 293503,airplane 293504,frog 293505,dog 293506,ship 293507,ship 293508,horse 293509,airplane 293510,deer 293511,deer 293512,horse 293513,cat 293514,deer 293515,dog 293516,frog 293517,cat 293518,airplane 293519,ship 293520,truck 293521,frog 293522,airplane 293523,truck 293524,frog 293525,truck 293526,cat 293527,truck 293528,deer 293529,bird 293530,cat 293531,airplane 293532,dog 293533,horse 293534,airplane 293535,bird 293536,cat 293537,dog 293538,ship 293539,truck 293540,truck 293541,horse 293542,truck 293543,deer 293544,truck 293545,bird 293546,automobile 293547,cat 293548,deer 293549,airplane 293550,truck 293551,bird 293552,deer 293553,truck 293554,ship 293555,airplane 293556,automobile 293557,automobile 293558,horse 293559,dog 293560,ship 293561,truck 293562,frog 293563,horse 293564,airplane 293565,automobile 293566,deer 293567,dog 293568,frog 293569,deer 293570,frog 293571,frog 293572,truck 293573,cat 293574,bird 293575,airplane 293576,bird 293577,dog 293578,truck 293579,cat 293580,frog 293581,truck 293582,bird 293583,frog 293584,horse 293585,dog 293586,horse 293587,frog 293588,horse 293589,cat 293590,frog 293591,ship 293592,horse 293593,automobile 293594,deer 293595,ship 293596,ship 293597,airplane 293598,ship 293599,ship 293600,horse 293601,airplane 293602,truck 293603,cat 293604,bird 293605,horse 293606,ship 293607,frog 293608,automobile 293609,cat 293610,horse 293611,bird 293612,horse 293613,cat 293614,cat 293615,horse 293616,automobile 293617,automobile 293618,dog 293619,deer 293620,frog 293621,dog 293622,dog 293623,frog 293624,bird 293625,deer 293626,deer 293627,bird 293628,horse 293629,frog 293630,dog 293631,cat 293632,bird 293633,cat 293634,frog 293635,cat 293636,automobile 293637,ship 293638,frog 293639,bird 293640,truck 293641,dog 293642,cat 293643,deer 293644,dog 293645,dog 293646,cat 293647,cat 293648,airplane 293649,dog 293650,deer 293651,dog 293652,truck 293653,automobile 293654,horse 293655,cat 293656,truck 293657,cat 293658,deer 293659,automobile 293660,frog 293661,automobile 293662,truck 293663,bird 293664,bird 293665,truck 293666,deer 293667,dog 293668,truck 293669,deer 293670,dog 293671,airplane 293672,cat 293673,horse 293674,frog 293675,cat 293676,frog 293677,truck 293678,automobile 293679,ship 293680,ship 293681,airplane 293682,truck 293683,deer 293684,deer 293685,airplane 293686,frog 293687,truck 293688,frog 293689,horse 293690,dog 293691,deer 293692,dog 293693,truck 293694,deer 293695,cat 293696,automobile 293697,truck 293698,cat 293699,ship 293700,horse 293701,deer 293702,ship 293703,truck 293704,horse 293705,bird 293706,truck 293707,automobile 293708,deer 293709,frog 293710,cat 293711,frog 293712,cat 293713,airplane 293714,frog 293715,truck 293716,frog 293717,airplane 293718,truck 293719,airplane 293720,cat 293721,airplane 293722,dog 293723,cat 293724,deer 293725,truck 293726,cat 293727,horse 293728,horse 293729,airplane 293730,frog 293731,truck 293732,truck 293733,deer 293734,cat 293735,frog 293736,frog 293737,truck 293738,dog 293739,airplane 293740,deer 293741,deer 293742,bird 293743,truck 293744,airplane 293745,frog 293746,bird 293747,automobile 293748,cat 293749,truck 293750,frog 293751,horse 293752,cat 293753,deer 293754,deer 293755,dog 293756,dog 293757,automobile 293758,cat 293759,dog 293760,frog 293761,frog 293762,bird 293763,automobile 293764,deer 293765,bird 293766,truck 293767,dog 293768,cat 293769,bird 293770,deer 293771,bird 293772,cat 293773,truck 293774,cat 293775,frog 293776,airplane 293777,horse 293778,horse 293779,dog 293780,automobile 293781,airplane 293782,automobile 293783,bird 293784,frog 293785,automobile 293786,airplane 293787,bird 293788,frog 293789,airplane 293790,ship 293791,horse 293792,frog 293793,bird 293794,airplane 293795,bird 293796,frog 293797,dog 293798,airplane 293799,deer 293800,truck 293801,airplane 293802,cat 293803,airplane 293804,automobile 293805,frog 293806,automobile 293807,deer 293808,horse 293809,automobile 293810,ship 293811,airplane 293812,airplane 293813,dog 293814,dog 293815,airplane 293816,bird 293817,cat 293818,cat 293819,bird 293820,dog 293821,frog 293822,bird 293823,frog 293824,automobile 293825,dog 293826,truck 293827,frog 293828,frog 293829,airplane 293830,dog 293831,frog 293832,bird 293833,automobile 293834,deer 293835,dog 293836,dog 293837,cat 293838,horse 293839,cat 293840,bird 293841,automobile 293842,ship 293843,truck 293844,deer 293845,horse 293846,cat 293847,bird 293848,cat 293849,truck 293850,ship 293851,ship 293852,dog 293853,horse 293854,deer 293855,horse 293856,bird 293857,frog 293858,truck 293859,truck 293860,frog 293861,automobile 293862,frog 293863,cat 293864,frog 293865,dog 293866,frog 293867,deer 293868,deer 293869,airplane 293870,cat 293871,horse 293872,deer 293873,bird 293874,truck 293875,ship 293876,frog 293877,bird 293878,deer 293879,ship 293880,cat 293881,bird 293882,dog 293883,dog 293884,cat 293885,horse 293886,truck 293887,ship 293888,dog 293889,dog 293890,deer 293891,horse 293892,automobile 293893,truck 293894,frog 293895,bird 293896,cat 293897,ship 293898,cat 293899,cat 293900,bird 293901,truck 293902,dog 293903,automobile 293904,frog 293905,deer 293906,bird 293907,deer 293908,deer 293909,frog 293910,dog 293911,airplane 293912,deer 293913,automobile 293914,frog 293915,automobile 293916,dog 293917,horse 293918,frog 293919,ship 293920,dog 293921,truck 293922,deer 293923,horse 293924,bird 293925,dog 293926,dog 293927,deer 293928,cat 293929,frog 293930,cat 293931,truck 293932,deer 293933,deer 293934,deer 293935,frog 293936,airplane 293937,bird 293938,deer 293939,automobile 293940,dog 293941,dog 293942,dog 293943,cat 293944,truck 293945,deer 293946,airplane 293947,deer 293948,horse 293949,bird 293950,frog 293951,truck 293952,airplane 293953,automobile 293954,airplane 293955,truck 293956,dog 293957,automobile 293958,bird 293959,deer 293960,airplane 293961,cat 293962,deer 293963,cat 293964,deer 293965,cat 293966,airplane 293967,automobile 293968,bird 293969,deer 293970,ship 293971,cat 293972,horse 293973,bird 293974,deer 293975,deer 293976,truck 293977,deer 293978,horse 293979,horse 293980,bird 293981,frog 293982,dog 293983,cat 293984,dog 293985,airplane 293986,deer 293987,cat 293988,truck 293989,truck 293990,cat 293991,frog 293992,automobile 293993,ship 293994,truck 293995,cat 293996,cat 293997,dog 293998,automobile 293999,bird 294000,deer 294001,cat 294002,frog 294003,ship 294004,truck 294005,cat 294006,dog 294007,frog 294008,truck 294009,deer 294010,cat 294011,truck 294012,frog 294013,airplane 294014,truck 294015,dog 294016,deer 294017,ship 294018,deer 294019,dog 294020,ship 294021,airplane 294022,ship 294023,cat 294024,truck 294025,truck 294026,airplane 294027,cat 294028,dog 294029,horse 294030,frog 294031,cat 294032,automobile 294033,horse 294034,deer 294035,cat 294036,cat 294037,horse 294038,bird 294039,frog 294040,horse 294041,cat 294042,automobile 294043,automobile 294044,cat 294045,truck 294046,bird 294047,automobile 294048,automobile 294049,bird 294050,automobile 294051,cat 294052,frog 294053,frog 294054,frog 294055,frog 294056,horse 294057,deer 294058,horse 294059,bird 294060,cat 294061,deer 294062,cat 294063,cat 294064,airplane 294065,automobile 294066,frog 294067,airplane 294068,airplane 294069,deer 294070,horse 294071,frog 294072,deer 294073,horse 294074,dog 294075,truck 294076,airplane 294077,cat 294078,bird 294079,frog 294080,airplane 294081,truck 294082,cat 294083,automobile 294084,deer 294085,deer 294086,truck 294087,cat 294088,deer 294089,frog 294090,deer 294091,truck 294092,bird 294093,airplane 294094,truck 294095,automobile 294096,horse 294097,cat 294098,deer 294099,airplane 294100,deer 294101,truck 294102,cat 294103,deer 294104,truck 294105,horse 294106,airplane 294107,deer 294108,ship 294109,airplane 294110,ship 294111,frog 294112,dog 294113,deer 294114,ship 294115,frog 294116,bird 294117,horse 294118,truck 294119,cat 294120,bird 294121,bird 294122,cat 294123,cat 294124,cat 294125,ship 294126,cat 294127,truck 294128,airplane 294129,truck 294130,horse 294131,automobile 294132,bird 294133,horse 294134,ship 294135,cat 294136,automobile 294137,ship 294138,dog 294139,airplane 294140,truck 294141,deer 294142,frog 294143,truck 294144,dog 294145,frog 294146,dog 294147,frog 294148,horse 294149,cat 294150,truck 294151,dog 294152,deer 294153,bird 294154,truck 294155,dog 294156,dog 294157,dog 294158,horse 294159,horse 294160,deer 294161,truck 294162,horse 294163,deer 294164,deer 294165,bird 294166,frog 294167,truck 294168,ship 294169,deer 294170,dog 294171,frog 294172,dog 294173,airplane 294174,deer 294175,dog 294176,frog 294177,ship 294178,dog 294179,bird 294180,dog 294181,frog 294182,bird 294183,deer 294184,airplane 294185,ship 294186,cat 294187,cat 294188,dog 294189,ship 294190,truck 294191,deer 294192,dog 294193,ship 294194,horse 294195,automobile 294196,ship 294197,airplane 294198,ship 294199,dog 294200,horse 294201,truck 294202,deer 294203,frog 294204,cat 294205,dog 294206,automobile 294207,horse 294208,frog 294209,frog 294210,cat 294211,bird 294212,airplane 294213,cat 294214,bird 294215,frog 294216,horse 294217,cat 294218,truck 294219,bird 294220,airplane 294221,ship 294222,horse 294223,dog 294224,dog 294225,cat 294226,cat 294227,dog 294228,frog 294229,cat 294230,deer 294231,deer 294232,automobile 294233,airplane 294234,bird 294235,deer 294236,automobile 294237,truck 294238,dog 294239,cat 294240,truck 294241,deer 294242,deer 294243,deer 294244,ship 294245,dog 294246,cat 294247,bird 294248,airplane 294249,bird 294250,bird 294251,horse 294252,ship 294253,frog 294254,bird 294255,deer 294256,deer 294257,truck 294258,ship 294259,automobile 294260,ship 294261,airplane 294262,dog 294263,ship 294264,deer 294265,ship 294266,ship 294267,frog 294268,automobile 294269,truck 294270,airplane 294271,truck 294272,dog 294273,truck 294274,automobile 294275,ship 294276,truck 294277,airplane 294278,bird 294279,ship 294280,horse 294281,ship 294282,airplane 294283,cat 294284,automobile 294285,dog 294286,dog 294287,frog 294288,ship 294289,cat 294290,horse 294291,cat 294292,frog 294293,automobile 294294,automobile 294295,automobile 294296,deer 294297,ship 294298,cat 294299,cat 294300,automobile 294301,dog 294302,airplane 294303,deer 294304,truck 294305,dog 294306,bird 294307,ship 294308,cat 294309,dog 294310,horse 294311,airplane 294312,dog 294313,cat 294314,airplane 294315,horse 294316,deer 294317,ship 294318,frog 294319,bird 294320,frog 294321,airplane 294322,horse 294323,bird 294324,cat 294325,horse 294326,horse 294327,dog 294328,cat 294329,airplane 294330,truck 294331,truck 294332,deer 294333,frog 294334,bird 294335,ship 294336,automobile 294337,dog 294338,cat 294339,ship 294340,cat 294341,airplane 294342,truck 294343,deer 294344,ship 294345,cat 294346,horse 294347,truck 294348,deer 294349,deer 294350,ship 294351,horse 294352,horse 294353,cat 294354,deer 294355,bird 294356,dog 294357,horse 294358,bird 294359,cat 294360,truck 294361,frog 294362,bird 294363,automobile 294364,cat 294365,ship 294366,cat 294367,airplane 294368,dog 294369,cat 294370,ship 294371,ship 294372,dog 294373,cat 294374,horse 294375,cat 294376,deer 294377,cat 294378,ship 294379,bird 294380,cat 294381,frog 294382,horse 294383,ship 294384,automobile 294385,automobile 294386,cat 294387,horse 294388,dog 294389,automobile 294390,horse 294391,cat 294392,horse 294393,deer 294394,airplane 294395,ship 294396,frog 294397,dog 294398,horse 294399,frog 294400,deer 294401,ship 294402,dog 294403,dog 294404,frog 294405,truck 294406,automobile 294407,frog 294408,airplane 294409,deer 294410,ship 294411,cat 294412,frog 294413,horse 294414,horse 294415,dog 294416,frog 294417,cat 294418,horse 294419,cat 294420,deer 294421,horse 294422,dog 294423,automobile 294424,dog 294425,truck 294426,bird 294427,horse 294428,deer 294429,airplane 294430,truck 294431,cat 294432,airplane 294433,horse 294434,deer 294435,automobile 294436,truck 294437,airplane 294438,deer 294439,truck 294440,truck 294441,bird 294442,ship 294443,automobile 294444,airplane 294445,dog 294446,bird 294447,deer 294448,deer 294449,truck 294450,horse 294451,dog 294452,dog 294453,airplane 294454,bird 294455,frog 294456,deer 294457,ship 294458,deer 294459,ship 294460,dog 294461,deer 294462,cat 294463,cat 294464,dog 294465,truck 294466,airplane 294467,truck 294468,airplane 294469,deer 294470,frog 294471,deer 294472,dog 294473,cat 294474,cat 294475,deer 294476,dog 294477,deer 294478,airplane 294479,horse 294480,cat 294481,dog 294482,ship 294483,cat 294484,automobile 294485,automobile 294486,ship 294487,horse 294488,dog 294489,airplane 294490,truck 294491,cat 294492,bird 294493,deer 294494,deer 294495,deer 294496,truck 294497,ship 294498,cat 294499,truck 294500,horse 294501,deer 294502,automobile 294503,airplane 294504,frog 294505,ship 294506,horse 294507,cat 294508,bird 294509,ship 294510,frog 294511,truck 294512,bird 294513,frog 294514,truck 294515,horse 294516,horse 294517,cat 294518,horse 294519,airplane 294520,cat 294521,bird 294522,automobile 294523,truck 294524,ship 294525,ship 294526,ship 294527,dog 294528,airplane 294529,ship 294530,deer 294531,cat 294532,frog 294533,frog 294534,cat 294535,ship 294536,horse 294537,frog 294538,frog 294539,automobile 294540,frog 294541,frog 294542,deer 294543,bird 294544,cat 294545,cat 294546,ship 294547,cat 294548,airplane 294549,deer 294550,dog 294551,automobile 294552,airplane 294553,cat 294554,horse 294555,truck 294556,truck 294557,dog 294558,dog 294559,deer 294560,deer 294561,bird 294562,frog 294563,truck 294564,deer 294565,dog 294566,frog 294567,horse 294568,deer 294569,ship 294570,deer 294571,frog 294572,truck 294573,automobile 294574,horse 294575,airplane 294576,bird 294577,horse 294578,dog 294579,deer 294580,automobile 294581,ship 294582,truck 294583,frog 294584,horse 294585,dog 294586,truck 294587,cat 294588,bird 294589,dog 294590,frog 294591,dog 294592,bird 294593,cat 294594,dog 294595,frog 294596,automobile 294597,deer 294598,deer 294599,horse 294600,bird 294601,truck 294602,truck 294603,cat 294604,dog 294605,deer 294606,cat 294607,automobile 294608,cat 294609,cat 294610,ship 294611,horse 294612,ship 294613,deer 294614,automobile 294615,truck 294616,deer 294617,cat 294618,ship 294619,horse 294620,dog 294621,deer 294622,cat 294623,horse 294624,horse 294625,horse 294626,frog 294627,automobile 294628,bird 294629,frog 294630,frog 294631,airplane 294632,frog 294633,automobile 294634,automobile 294635,truck 294636,deer 294637,deer 294638,dog 294639,deer 294640,automobile 294641,airplane 294642,cat 294643,airplane 294644,automobile 294645,cat 294646,bird 294647,automobile 294648,horse 294649,horse 294650,dog 294651,bird 294652,frog 294653,deer 294654,truck 294655,truck 294656,truck 294657,airplane 294658,automobile 294659,ship 294660,automobile 294661,deer 294662,frog 294663,cat 294664,ship 294665,truck 294666,deer 294667,bird 294668,deer 294669,cat 294670,truck 294671,frog 294672,airplane 294673,frog 294674,cat 294675,cat 294676,deer 294677,airplane 294678,frog 294679,airplane 294680,ship 294681,cat 294682,deer 294683,bird 294684,automobile 294685,truck 294686,bird 294687,ship 294688,dog 294689,horse 294690,automobile 294691,bird 294692,automobile 294693,deer 294694,horse 294695,dog 294696,frog 294697,automobile 294698,airplane 294699,automobile 294700,ship 294701,cat 294702,deer 294703,ship 294704,deer 294705,automobile 294706,ship 294707,automobile 294708,frog 294709,dog 294710,truck 294711,bird 294712,ship 294713,dog 294714,ship 294715,truck 294716,cat 294717,bird 294718,horse 294719,frog 294720,ship 294721,airplane 294722,deer 294723,cat 294724,cat 294725,automobile 294726,airplane 294727,dog 294728,horse 294729,deer 294730,automobile 294731,automobile 294732,cat 294733,cat 294734,cat 294735,frog 294736,horse 294737,horse 294738,dog 294739,frog 294740,dog 294741,cat 294742,truck 294743,bird 294744,bird 294745,horse 294746,frog 294747,horse 294748,truck 294749,automobile 294750,automobile 294751,deer 294752,cat 294753,bird 294754,horse 294755,horse 294756,truck 294757,cat 294758,horse 294759,deer 294760,bird 294761,deer 294762,airplane 294763,horse 294764,cat 294765,automobile 294766,truck 294767,airplane 294768,automobile 294769,airplane 294770,frog 294771,truck 294772,ship 294773,truck 294774,frog 294775,deer 294776,deer 294777,horse 294778,dog 294779,dog 294780,truck 294781,dog 294782,ship 294783,horse 294784,horse 294785,truck 294786,bird 294787,cat 294788,automobile 294789,horse 294790,frog 294791,truck 294792,truck 294793,deer 294794,bird 294795,ship 294796,deer 294797,ship 294798,airplane 294799,bird 294800,frog 294801,airplane 294802,cat 294803,horse 294804,automobile 294805,frog 294806,cat 294807,frog 294808,dog 294809,cat 294810,automobile 294811,ship 294812,deer 294813,frog 294814,horse 294815,horse 294816,cat 294817,cat 294818,cat 294819,bird 294820,bird 294821,frog 294822,automobile 294823,horse 294824,airplane 294825,automobile 294826,ship 294827,airplane 294828,airplane 294829,frog 294830,dog 294831,dog 294832,cat 294833,ship 294834,airplane 294835,cat 294836,truck 294837,bird 294838,ship 294839,horse 294840,bird 294841,bird 294842,deer 294843,dog 294844,dog 294845,deer 294846,frog 294847,deer 294848,truck 294849,truck 294850,horse 294851,horse 294852,deer 294853,dog 294854,deer 294855,cat 294856,horse 294857,frog 294858,frog 294859,automobile 294860,dog 294861,automobile 294862,horse 294863,bird 294864,dog 294865,dog 294866,frog 294867,cat 294868,airplane 294869,frog 294870,truck 294871,deer 294872,cat 294873,bird 294874,automobile 294875,bird 294876,cat 294877,airplane 294878,cat 294879,dog 294880,airplane 294881,horse 294882,dog 294883,ship 294884,cat 294885,dog 294886,automobile 294887,deer 294888,dog 294889,deer 294890,bird 294891,truck 294892,automobile 294893,horse 294894,frog 294895,dog 294896,truck 294897,frog 294898,ship 294899,deer 294900,airplane 294901,airplane 294902,ship 294903,deer 294904,deer 294905,ship 294906,horse 294907,cat 294908,frog 294909,horse 294910,cat 294911,cat 294912,cat 294913,horse 294914,dog 294915,deer 294916,dog 294917,cat 294918,ship 294919,frog 294920,bird 294921,ship 294922,frog 294923,ship 294924,airplane 294925,dog 294926,truck 294927,ship 294928,frog 294929,cat 294930,bird 294931,dog 294932,deer 294933,cat 294934,automobile 294935,bird 294936,deer 294937,ship 294938,ship 294939,cat 294940,cat 294941,cat 294942,airplane 294943,deer 294944,dog 294945,cat 294946,frog 294947,truck 294948,ship 294949,deer 294950,automobile 294951,bird 294952,dog 294953,ship 294954,deer 294955,bird 294956,horse 294957,automobile 294958,deer 294959,airplane 294960,horse 294961,truck 294962,truck 294963,deer 294964,horse 294965,bird 294966,frog 294967,horse 294968,dog 294969,cat 294970,horse 294971,truck 294972,dog 294973,cat 294974,cat 294975,airplane 294976,automobile 294977,cat 294978,automobile 294979,ship 294980,truck 294981,frog 294982,dog 294983,automobile 294984,deer 294985,truck 294986,horse 294987,truck 294988,deer 294989,cat 294990,horse 294991,frog 294992,frog 294993,dog 294994,horse 294995,truck 294996,airplane 294997,bird 294998,airplane 294999,dog 295000,ship 295001,automobile 295002,bird 295003,truck 295004,deer 295005,ship 295006,bird 295007,dog 295008,truck 295009,airplane 295010,dog 295011,horse 295012,deer 295013,frog 295014,automobile 295015,horse 295016,horse 295017,frog 295018,ship 295019,frog 295020,cat 295021,truck 295022,horse 295023,ship 295024,deer 295025,airplane 295026,automobile 295027,deer 295028,airplane 295029,frog 295030,cat 295031,bird 295032,cat 295033,cat 295034,truck 295035,cat 295036,truck 295037,deer 295038,ship 295039,airplane 295040,horse 295041,deer 295042,automobile 295043,dog 295044,horse 295045,cat 295046,truck 295047,frog 295048,cat 295049,ship 295050,airplane 295051,frog 295052,airplane 295053,airplane 295054,truck 295055,automobile 295056,deer 295057,horse 295058,bird 295059,airplane 295060,bird 295061,horse 295062,frog 295063,airplane 295064,dog 295065,cat 295066,deer 295067,truck 295068,dog 295069,frog 295070,deer 295071,truck 295072,cat 295073,deer 295074,cat 295075,truck 295076,automobile 295077,frog 295078,cat 295079,ship 295080,cat 295081,bird 295082,truck 295083,truck 295084,truck 295085,deer 295086,frog 295087,horse 295088,frog 295089,truck 295090,truck 295091,cat 295092,bird 295093,horse 295094,dog 295095,cat 295096,horse 295097,frog 295098,frog 295099,horse 295100,frog 295101,bird 295102,horse 295103,horse 295104,frog 295105,ship 295106,cat 295107,dog 295108,frog 295109,dog 295110,truck 295111,bird 295112,bird 295113,cat 295114,horse 295115,cat 295116,horse 295117,frog 295118,dog 295119,truck 295120,truck 295121,ship 295122,horse 295123,airplane 295124,truck 295125,bird 295126,frog 295127,horse 295128,airplane 295129,automobile 295130,airplane 295131,frog 295132,airplane 295133,ship 295134,automobile 295135,truck 295136,cat 295137,truck 295138,airplane 295139,frog 295140,ship 295141,automobile 295142,deer 295143,cat 295144,truck 295145,truck 295146,frog 295147,cat 295148,dog 295149,ship 295150,airplane 295151,horse 295152,automobile 295153,ship 295154,ship 295155,deer 295156,airplane 295157,frog 295158,cat 295159,bird 295160,ship 295161,truck 295162,automobile 295163,cat 295164,bird 295165,truck 295166,deer 295167,deer 295168,horse 295169,deer 295170,airplane 295171,airplane 295172,airplane 295173,deer 295174,bird 295175,horse 295176,truck 295177,frog 295178,bird 295179,frog 295180,horse 295181,cat 295182,cat 295183,horse 295184,deer 295185,bird 295186,automobile 295187,horse 295188,automobile 295189,frog 295190,cat 295191,truck 295192,ship 295193,automobile 295194,truck 295195,airplane 295196,ship 295197,horse 295198,bird 295199,dog 295200,truck 295201,cat 295202,deer 295203,deer 295204,ship 295205,dog 295206,dog 295207,truck 295208,dog 295209,deer 295210,automobile 295211,truck 295212,cat 295213,frog 295214,horse 295215,cat 295216,truck 295217,dog 295218,airplane 295219,automobile 295220,frog 295221,bird 295222,airplane 295223,cat 295224,ship 295225,airplane 295226,dog 295227,deer 295228,airplane 295229,truck 295230,deer 295231,deer 295232,airplane 295233,ship 295234,horse 295235,frog 295236,frog 295237,airplane 295238,automobile 295239,bird 295240,cat 295241,cat 295242,dog 295243,truck 295244,deer 295245,cat 295246,cat 295247,frog 295248,cat 295249,deer 295250,automobile 295251,dog 295252,ship 295253,automobile 295254,horse 295255,cat 295256,bird 295257,ship 295258,dog 295259,truck 295260,automobile 295261,ship 295262,deer 295263,dog 295264,horse 295265,cat 295266,cat 295267,deer 295268,horse 295269,frog 295270,airplane 295271,frog 295272,horse 295273,frog 295274,truck 295275,dog 295276,dog 295277,frog 295278,truck 295279,cat 295280,horse 295281,frog 295282,truck 295283,cat 295284,cat 295285,deer 295286,automobile 295287,airplane 295288,deer 295289,truck 295290,horse 295291,bird 295292,dog 295293,bird 295294,truck 295295,deer 295296,automobile 295297,deer 295298,automobile 295299,deer 295300,ship 295301,deer 295302,horse 295303,airplane 295304,airplane 295305,deer 295306,airplane 295307,cat 295308,horse 295309,deer 295310,dog 295311,deer 295312,airplane 295313,cat 295314,deer 295315,dog 295316,bird 295317,truck 295318,cat 295319,bird 295320,truck 295321,bird 295322,horse 295323,airplane 295324,dog 295325,automobile 295326,frog 295327,dog 295328,truck 295329,deer 295330,deer 295331,bird 295332,airplane 295333,cat 295334,truck 295335,automobile 295336,airplane 295337,cat 295338,deer 295339,deer 295340,bird 295341,airplane 295342,cat 295343,deer 295344,cat 295345,horse 295346,frog 295347,cat 295348,frog 295349,airplane 295350,bird 295351,airplane 295352,cat 295353,ship 295354,deer 295355,frog 295356,automobile 295357,truck 295358,deer 295359,truck 295360,cat 295361,horse 295362,airplane 295363,airplane 295364,truck 295365,horse 295366,frog 295367,cat 295368,cat 295369,horse 295370,truck 295371,dog 295372,airplane 295373,automobile 295374,automobile 295375,cat 295376,cat 295377,deer 295378,automobile 295379,horse 295380,dog 295381,truck 295382,frog 295383,automobile 295384,bird 295385,bird 295386,deer 295387,horse 295388,horse 295389,truck 295390,dog 295391,airplane 295392,automobile 295393,frog 295394,horse 295395,dog 295396,truck 295397,frog 295398,bird 295399,truck 295400,automobile 295401,frog 295402,truck 295403,truck 295404,frog 295405,deer 295406,horse 295407,frog 295408,dog 295409,frog 295410,deer 295411,dog 295412,cat 295413,airplane 295414,dog 295415,cat 295416,frog 295417,cat 295418,bird 295419,airplane 295420,airplane 295421,cat 295422,cat 295423,cat 295424,cat 295425,truck 295426,deer 295427,deer 295428,frog 295429,automobile 295430,truck 295431,horse 295432,airplane 295433,automobile 295434,frog 295435,horse 295436,ship 295437,ship 295438,frog 295439,horse 295440,bird 295441,airplane 295442,airplane 295443,automobile 295444,truck 295445,truck 295446,frog 295447,dog 295448,automobile 295449,cat 295450,ship 295451,ship 295452,horse 295453,truck 295454,automobile 295455,deer 295456,dog 295457,ship 295458,dog 295459,bird 295460,bird 295461,airplane 295462,cat 295463,dog 295464,frog 295465,cat 295466,airplane 295467,frog 295468,frog 295469,bird 295470,airplane 295471,ship 295472,ship 295473,bird 295474,horse 295475,deer 295476,ship 295477,horse 295478,deer 295479,cat 295480,airplane 295481,airplane 295482,bird 295483,truck 295484,automobile 295485,deer 295486,automobile 295487,automobile 295488,truck 295489,frog 295490,frog 295491,frog 295492,cat 295493,deer 295494,deer 295495,frog 295496,deer 295497,horse 295498,frog 295499,bird 295500,horse 295501,airplane 295502,deer 295503,dog 295504,deer 295505,dog 295506,horse 295507,deer 295508,bird 295509,cat 295510,cat 295511,automobile 295512,dog 295513,frog 295514,cat 295515,truck 295516,cat 295517,truck 295518,horse 295519,deer 295520,dog 295521,deer 295522,horse 295523,ship 295524,bird 295525,cat 295526,truck 295527,deer 295528,airplane 295529,horse 295530,airplane 295531,truck 295532,frog 295533,dog 295534,truck 295535,frog 295536,truck 295537,cat 295538,frog 295539,frog 295540,dog 295541,frog 295542,frog 295543,cat 295544,deer 295545,truck 295546,frog 295547,horse 295548,automobile 295549,frog 295550,truck 295551,automobile 295552,bird 295553,bird 295554,truck 295555,deer 295556,horse 295557,dog 295558,cat 295559,bird 295560,ship 295561,ship 295562,deer 295563,deer 295564,cat 295565,frog 295566,deer 295567,horse 295568,cat 295569,dog 295570,automobile 295571,truck 295572,ship 295573,airplane 295574,frog 295575,airplane 295576,airplane 295577,cat 295578,ship 295579,automobile 295580,frog 295581,frog 295582,frog 295583,bird 295584,frog 295585,frog 295586,horse 295587,dog 295588,cat 295589,ship 295590,cat 295591,frog 295592,deer 295593,deer 295594,cat 295595,truck 295596,dog 295597,dog 295598,bird 295599,dog 295600,airplane 295601,automobile 295602,deer 295603,frog 295604,automobile 295605,automobile 295606,cat 295607,frog 295608,dog 295609,dog 295610,frog 295611,horse 295612,frog 295613,cat 295614,truck 295615,cat 295616,truck 295617,horse 295618,automobile 295619,frog 295620,horse 295621,ship 295622,bird 295623,horse 295624,truck 295625,ship 295626,ship 295627,horse 295628,bird 295629,bird 295630,automobile 295631,automobile 295632,dog 295633,truck 295634,dog 295635,horse 295636,deer 295637,truck 295638,horse 295639,truck 295640,horse 295641,cat 295642,frog 295643,airplane 295644,frog 295645,horse 295646,cat 295647,airplane 295648,frog 295649,airplane 295650,dog 295651,frog 295652,cat 295653,horse 295654,cat 295655,ship 295656,airplane 295657,automobile 295658,airplane 295659,cat 295660,cat 295661,airplane 295662,dog 295663,cat 295664,bird 295665,bird 295666,bird 295667,dog 295668,airplane 295669,bird 295670,dog 295671,ship 295672,deer 295673,frog 295674,ship 295675,ship 295676,deer 295677,deer 295678,airplane 295679,frog 295680,deer 295681,dog 295682,horse 295683,dog 295684,dog 295685,cat 295686,truck 295687,deer 295688,deer 295689,frog 295690,ship 295691,ship 295692,dog 295693,airplane 295694,horse 295695,airplane 295696,dog 295697,frog 295698,truck 295699,frog 295700,dog 295701,airplane 295702,bird 295703,truck 295704,deer 295705,frog 295706,horse 295707,dog 295708,horse 295709,automobile 295710,airplane 295711,deer 295712,horse 295713,deer 295714,bird 295715,bird 295716,ship 295717,bird 295718,deer 295719,cat 295720,dog 295721,bird 295722,deer 295723,deer 295724,dog 295725,ship 295726,airplane 295727,truck 295728,bird 295729,ship 295730,ship 295731,cat 295732,horse 295733,truck 295734,dog 295735,truck 295736,horse 295737,bird 295738,cat 295739,deer 295740,dog 295741,dog 295742,deer 295743,airplane 295744,ship 295745,deer 295746,horse 295747,bird 295748,airplane 295749,airplane 295750,ship 295751,cat 295752,automobile 295753,automobile 295754,cat 295755,deer 295756,airplane 295757,dog 295758,airplane 295759,bird 295760,cat 295761,ship 295762,cat 295763,bird 295764,truck 295765,airplane 295766,deer 295767,cat 295768,airplane 295769,horse 295770,horse 295771,bird 295772,horse 295773,cat 295774,bird 295775,dog 295776,horse 295777,horse 295778,bird 295779,deer 295780,airplane 295781,cat 295782,bird 295783,horse 295784,dog 295785,airplane 295786,horse 295787,frog 295788,frog 295789,horse 295790,automobile 295791,frog 295792,ship 295793,frog 295794,cat 295795,airplane 295796,horse 295797,bird 295798,ship 295799,deer 295800,cat 295801,dog 295802,dog 295803,ship 295804,cat 295805,automobile 295806,airplane 295807,bird 295808,horse 295809,dog 295810,horse 295811,dog 295812,deer 295813,cat 295814,deer 295815,airplane 295816,cat 295817,truck 295818,automobile 295819,bird 295820,truck 295821,bird 295822,airplane 295823,cat 295824,ship 295825,horse 295826,ship 295827,truck 295828,deer 295829,deer 295830,automobile 295831,horse 295832,truck 295833,truck 295834,bird 295835,bird 295836,dog 295837,cat 295838,cat 295839,truck 295840,airplane 295841,deer 295842,deer 295843,airplane 295844,automobile 295845,frog 295846,horse 295847,automobile 295848,automobile 295849,deer 295850,horse 295851,airplane 295852,ship 295853,dog 295854,horse 295855,deer 295856,cat 295857,horse 295858,ship 295859,cat 295860,horse 295861,bird 295862,deer 295863,airplane 295864,deer 295865,truck 295866,truck 295867,bird 295868,airplane 295869,frog 295870,bird 295871,dog 295872,deer 295873,truck 295874,deer 295875,deer 295876,cat 295877,automobile 295878,deer 295879,automobile 295880,automobile 295881,cat 295882,dog 295883,dog 295884,cat 295885,frog 295886,bird 295887,frog 295888,airplane 295889,frog 295890,frog 295891,dog 295892,ship 295893,airplane 295894,truck 295895,truck 295896,cat 295897,cat 295898,airplane 295899,bird 295900,horse 295901,airplane 295902,airplane 295903,cat 295904,horse 295905,deer 295906,dog 295907,ship 295908,airplane 295909,deer 295910,truck 295911,bird 295912,deer 295913,truck 295914,airplane 295915,ship 295916,deer 295917,bird 295918,frog 295919,cat 295920,airplane 295921,bird 295922,cat 295923,airplane 295924,airplane 295925,dog 295926,airplane 295927,cat 295928,truck 295929,frog 295930,horse 295931,truck 295932,bird 295933,airplane 295934,ship 295935,truck 295936,dog 295937,cat 295938,bird 295939,bird 295940,truck 295941,horse 295942,cat 295943,ship 295944,bird 295945,deer 295946,ship 295947,deer 295948,ship 295949,truck 295950,frog 295951,airplane 295952,dog 295953,truck 295954,truck 295955,bird 295956,ship 295957,bird 295958,dog 295959,automobile 295960,deer 295961,bird 295962,horse 295963,truck 295964,frog 295965,bird 295966,frog 295967,horse 295968,truck 295969,ship 295970,dog 295971,deer 295972,automobile 295973,airplane 295974,bird 295975,bird 295976,bird 295977,frog 295978,deer 295979,truck 295980,airplane 295981,deer 295982,bird 295983,horse 295984,dog 295985,cat 295986,ship 295987,horse 295988,bird 295989,ship 295990,airplane 295991,horse 295992,frog 295993,automobile 295994,airplane 295995,cat 295996,airplane 295997,bird 295998,cat 295999,deer 296000,frog 296001,bird 296002,cat 296003,frog 296004,cat 296005,deer 296006,automobile 296007,horse 296008,truck 296009,cat 296010,cat 296011,airplane 296012,bird 296013,cat 296014,deer 296015,bird 296016,frog 296017,automobile 296018,automobile 296019,airplane 296020,cat 296021,ship 296022,cat 296023,truck 296024,truck 296025,ship 296026,truck 296027,ship 296028,truck 296029,cat 296030,deer 296031,ship 296032,truck 296033,bird 296034,truck 296035,truck 296036,deer 296037,airplane 296038,automobile 296039,truck 296040,airplane 296041,automobile 296042,cat 296043,truck 296044,airplane 296045,cat 296046,dog 296047,dog 296048,horse 296049,cat 296050,cat 296051,deer 296052,cat 296053,ship 296054,frog 296055,deer 296056,horse 296057,frog 296058,deer 296059,deer 296060,cat 296061,frog 296062,frog 296063,horse 296064,horse 296065,horse 296066,frog 296067,ship 296068,bird 296069,deer 296070,truck 296071,horse 296072,cat 296073,automobile 296074,airplane 296075,horse 296076,dog 296077,truck 296078,horse 296079,dog 296080,ship 296081,ship 296082,horse 296083,truck 296084,ship 296085,ship 296086,frog 296087,cat 296088,bird 296089,cat 296090,ship 296091,airplane 296092,frog 296093,automobile 296094,horse 296095,airplane 296096,cat 296097,deer 296098,dog 296099,truck 296100,horse 296101,bird 296102,frog 296103,automobile 296104,frog 296105,bird 296106,dog 296107,frog 296108,bird 296109,cat 296110,truck 296111,truck 296112,bird 296113,deer 296114,dog 296115,deer 296116,deer 296117,truck 296118,ship 296119,airplane 296120,horse 296121,bird 296122,deer 296123,airplane 296124,deer 296125,airplane 296126,deer 296127,deer 296128,dog 296129,ship 296130,automobile 296131,deer 296132,airplane 296133,bird 296134,airplane 296135,deer 296136,horse 296137,truck 296138,dog 296139,deer 296140,horse 296141,horse 296142,cat 296143,cat 296144,frog 296145,frog 296146,bird 296147,deer 296148,cat 296149,automobile 296150,truck 296151,truck 296152,deer 296153,horse 296154,ship 296155,truck 296156,bird 296157,truck 296158,dog 296159,bird 296160,truck 296161,dog 296162,deer 296163,bird 296164,truck 296165,deer 296166,cat 296167,dog 296168,truck 296169,horse 296170,cat 296171,ship 296172,airplane 296173,truck 296174,bird 296175,dog 296176,cat 296177,cat 296178,horse 296179,frog 296180,dog 296181,ship 296182,deer 296183,dog 296184,automobile 296185,cat 296186,dog 296187,frog 296188,dog 296189,automobile 296190,airplane 296191,ship 296192,deer 296193,frog 296194,cat 296195,horse 296196,bird 296197,dog 296198,automobile 296199,cat 296200,deer 296201,automobile 296202,deer 296203,frog 296204,cat 296205,dog 296206,deer 296207,bird 296208,frog 296209,bird 296210,deer 296211,cat 296212,airplane 296213,dog 296214,dog 296215,frog 296216,dog 296217,truck 296218,airplane 296219,bird 296220,truck 296221,deer 296222,bird 296223,frog 296224,deer 296225,deer 296226,deer 296227,truck 296228,deer 296229,automobile 296230,deer 296231,airplane 296232,airplane 296233,dog 296234,ship 296235,ship 296236,dog 296237,horse 296238,deer 296239,airplane 296240,dog 296241,bird 296242,frog 296243,horse 296244,horse 296245,airplane 296246,frog 296247,automobile 296248,cat 296249,ship 296250,automobile 296251,dog 296252,cat 296253,cat 296254,horse 296255,truck 296256,bird 296257,frog 296258,ship 296259,automobile 296260,ship 296261,deer 296262,horse 296263,deer 296264,bird 296265,automobile 296266,truck 296267,deer 296268,truck 296269,horse 296270,dog 296271,frog 296272,airplane 296273,bird 296274,airplane 296275,frog 296276,horse 296277,horse 296278,dog 296279,truck 296280,airplane 296281,automobile 296282,horse 296283,dog 296284,automobile 296285,horse 296286,cat 296287,cat 296288,truck 296289,cat 296290,bird 296291,airplane 296292,deer 296293,deer 296294,deer 296295,bird 296296,cat 296297,deer 296298,airplane 296299,frog 296300,bird 296301,cat 296302,dog 296303,deer 296304,truck 296305,airplane 296306,cat 296307,deer 296308,frog 296309,ship 296310,cat 296311,dog 296312,dog 296313,cat 296314,airplane 296315,horse 296316,truck 296317,cat 296318,bird 296319,horse 296320,horse 296321,deer 296322,automobile 296323,automobile 296324,dog 296325,horse 296326,truck 296327,frog 296328,airplane 296329,cat 296330,cat 296331,frog 296332,cat 296333,frog 296334,dog 296335,airplane 296336,truck 296337,ship 296338,ship 296339,horse 296340,bird 296341,airplane 296342,horse 296343,cat 296344,cat 296345,frog 296346,automobile 296347,bird 296348,frog 296349,truck 296350,truck 296351,frog 296352,deer 296353,dog 296354,frog 296355,bird 296356,frog 296357,truck 296358,airplane 296359,deer 296360,ship 296361,bird 296362,truck 296363,airplane 296364,airplane 296365,truck 296366,deer 296367,ship 296368,cat 296369,truck 296370,deer 296371,dog 296372,automobile 296373,cat 296374,ship 296375,airplane 296376,deer 296377,cat 296378,ship 296379,ship 296380,airplane 296381,bird 296382,dog 296383,airplane 296384,dog 296385,airplane 296386,cat 296387,cat 296388,automobile 296389,frog 296390,deer 296391,airplane 296392,automobile 296393,frog 296394,horse 296395,automobile 296396,frog 296397,truck 296398,truck 296399,airplane 296400,horse 296401,cat 296402,frog 296403,deer 296404,horse 296405,truck 296406,ship 296407,ship 296408,horse 296409,frog 296410,truck 296411,ship 296412,dog 296413,bird 296414,automobile 296415,cat 296416,horse 296417,deer 296418,deer 296419,automobile 296420,airplane 296421,cat 296422,bird 296423,bird 296424,ship 296425,cat 296426,truck 296427,deer 296428,dog 296429,cat 296430,deer 296431,dog 296432,dog 296433,airplane 296434,horse 296435,frog 296436,ship 296437,deer 296438,airplane 296439,bird 296440,ship 296441,cat 296442,ship 296443,horse 296444,dog 296445,ship 296446,deer 296447,truck 296448,automobile 296449,automobile 296450,truck 296451,dog 296452,cat 296453,dog 296454,cat 296455,truck 296456,deer 296457,frog 296458,horse 296459,horse 296460,cat 296461,automobile 296462,deer 296463,bird 296464,automobile 296465,horse 296466,horse 296467,horse 296468,truck 296469,dog 296470,airplane 296471,bird 296472,dog 296473,cat 296474,horse 296475,truck 296476,frog 296477,airplane 296478,deer 296479,bird 296480,cat 296481,bird 296482,deer 296483,ship 296484,automobile 296485,airplane 296486,deer 296487,cat 296488,automobile 296489,horse 296490,automobile 296491,cat 296492,deer 296493,frog 296494,dog 296495,truck 296496,cat 296497,cat 296498,horse 296499,dog 296500,bird 296501,bird 296502,cat 296503,frog 296504,horse 296505,truck 296506,automobile 296507,automobile 296508,cat 296509,ship 296510,deer 296511,cat 296512,cat 296513,cat 296514,bird 296515,cat 296516,ship 296517,deer 296518,airplane 296519,bird 296520,bird 296521,frog 296522,automobile 296523,ship 296524,bird 296525,ship 296526,airplane 296527,truck 296528,ship 296529,frog 296530,cat 296531,horse 296532,dog 296533,dog 296534,cat 296535,frog 296536,frog 296537,cat 296538,cat 296539,truck 296540,cat 296541,airplane 296542,airplane 296543,horse 296544,horse 296545,airplane 296546,truck 296547,cat 296548,automobile 296549,dog 296550,dog 296551,deer 296552,airplane 296553,dog 296554,cat 296555,bird 296556,cat 296557,frog 296558,airplane 296559,automobile 296560,bird 296561,horse 296562,dog 296563,truck 296564,bird 296565,dog 296566,deer 296567,truck 296568,bird 296569,deer 296570,bird 296571,bird 296572,truck 296573,truck 296574,airplane 296575,bird 296576,deer 296577,bird 296578,dog 296579,bird 296580,horse 296581,cat 296582,cat 296583,deer 296584,truck 296585,bird 296586,airplane 296587,deer 296588,truck 296589,ship 296590,bird 296591,truck 296592,airplane 296593,deer 296594,horse 296595,cat 296596,airplane 296597,ship 296598,frog 296599,horse 296600,horse 296601,dog 296602,cat 296603,cat 296604,dog 296605,automobile 296606,airplane 296607,deer 296608,deer 296609,dog 296610,airplane 296611,frog 296612,bird 296613,horse 296614,airplane 296615,frog 296616,horse 296617,horse 296618,airplane 296619,ship 296620,horse 296621,cat 296622,airplane 296623,deer 296624,bird 296625,horse 296626,bird 296627,deer 296628,frog 296629,cat 296630,cat 296631,ship 296632,dog 296633,airplane 296634,dog 296635,automobile 296636,airplane 296637,deer 296638,cat 296639,deer 296640,truck 296641,horse 296642,ship 296643,automobile 296644,deer 296645,cat 296646,deer 296647,automobile 296648,cat 296649,deer 296650,automobile 296651,horse 296652,ship 296653,truck 296654,automobile 296655,dog 296656,truck 296657,bird 296658,airplane 296659,airplane 296660,dog 296661,airplane 296662,automobile 296663,bird 296664,ship 296665,ship 296666,frog 296667,automobile 296668,dog 296669,truck 296670,frog 296671,dog 296672,frog 296673,dog 296674,bird 296675,deer 296676,automobile 296677,frog 296678,cat 296679,deer 296680,bird 296681,automobile 296682,automobile 296683,cat 296684,deer 296685,dog 296686,deer 296687,frog 296688,truck 296689,horse 296690,deer 296691,deer 296692,truck 296693,dog 296694,dog 296695,cat 296696,ship 296697,frog 296698,bird 296699,horse 296700,dog 296701,cat 296702,ship 296703,cat 296704,deer 296705,deer 296706,deer 296707,airplane 296708,bird 296709,dog 296710,bird 296711,deer 296712,deer 296713,horse 296714,airplane 296715,frog 296716,frog 296717,frog 296718,bird 296719,deer 296720,horse 296721,horse 296722,bird 296723,dog 296724,frog 296725,truck 296726,deer 296727,airplane 296728,ship 296729,frog 296730,frog 296731,bird 296732,deer 296733,automobile 296734,airplane 296735,ship 296736,airplane 296737,ship 296738,horse 296739,bird 296740,deer 296741,dog 296742,horse 296743,truck 296744,frog 296745,dog 296746,automobile 296747,cat 296748,cat 296749,dog 296750,deer 296751,bird 296752,deer 296753,truck 296754,dog 296755,truck 296756,cat 296757,dog 296758,bird 296759,deer 296760,truck 296761,airplane 296762,frog 296763,cat 296764,cat 296765,automobile 296766,ship 296767,automobile 296768,cat 296769,frog 296770,ship 296771,airplane 296772,deer 296773,ship 296774,cat 296775,deer 296776,horse 296777,truck 296778,frog 296779,deer 296780,airplane 296781,dog 296782,dog 296783,automobile 296784,cat 296785,truck 296786,deer 296787,deer 296788,ship 296789,frog 296790,dog 296791,airplane 296792,dog 296793,bird 296794,dog 296795,cat 296796,airplane 296797,frog 296798,horse 296799,frog 296800,automobile 296801,horse 296802,deer 296803,truck 296804,automobile 296805,cat 296806,deer 296807,truck 296808,cat 296809,truck 296810,airplane 296811,truck 296812,dog 296813,airplane 296814,frog 296815,truck 296816,bird 296817,dog 296818,ship 296819,deer 296820,horse 296821,frog 296822,truck 296823,truck 296824,automobile 296825,deer 296826,cat 296827,dog 296828,horse 296829,dog 296830,dog 296831,ship 296832,truck 296833,dog 296834,dog 296835,horse 296836,automobile 296837,airplane 296838,airplane 296839,cat 296840,automobile 296841,truck 296842,bird 296843,cat 296844,cat 296845,ship 296846,deer 296847,deer 296848,bird 296849,frog 296850,bird 296851,cat 296852,bird 296853,deer 296854,ship 296855,ship 296856,ship 296857,truck 296858,dog 296859,deer 296860,horse 296861,ship 296862,cat 296863,deer 296864,deer 296865,bird 296866,bird 296867,deer 296868,cat 296869,dog 296870,automobile 296871,frog 296872,deer 296873,automobile 296874,airplane 296875,bird 296876,dog 296877,bird 296878,frog 296879,bird 296880,dog 296881,ship 296882,airplane 296883,automobile 296884,ship 296885,ship 296886,automobile 296887,frog 296888,truck 296889,cat 296890,airplane 296891,horse 296892,automobile 296893,cat 296894,truck 296895,cat 296896,frog 296897,cat 296898,automobile 296899,horse 296900,dog 296901,bird 296902,truck 296903,truck 296904,truck 296905,deer 296906,cat 296907,bird 296908,ship 296909,deer 296910,airplane 296911,dog 296912,horse 296913,ship 296914,horse 296915,dog 296916,cat 296917,deer 296918,bird 296919,airplane 296920,cat 296921,frog 296922,truck 296923,airplane 296924,automobile 296925,truck 296926,dog 296927,truck 296928,ship 296929,deer 296930,bird 296931,bird 296932,airplane 296933,automobile 296934,airplane 296935,deer 296936,bird 296937,cat 296938,ship 296939,airplane 296940,airplane 296941,truck 296942,cat 296943,airplane 296944,bird 296945,deer 296946,truck 296947,horse 296948,airplane 296949,airplane 296950,ship 296951,bird 296952,cat 296953,dog 296954,deer 296955,horse 296956,deer 296957,frog 296958,frog 296959,airplane 296960,ship 296961,dog 296962,bird 296963,truck 296964,horse 296965,frog 296966,ship 296967,deer 296968,deer 296969,frog 296970,ship 296971,bird 296972,truck 296973,cat 296974,dog 296975,frog 296976,airplane 296977,dog 296978,horse 296979,frog 296980,deer 296981,airplane 296982,dog 296983,bird 296984,airplane 296985,deer 296986,cat 296987,airplane 296988,ship 296989,cat 296990,bird 296991,airplane 296992,dog 296993,dog 296994,bird 296995,ship 296996,cat 296997,cat 296998,automobile 296999,deer 297000,dog 297001,deer 297002,cat 297003,bird 297004,horse 297005,cat 297006,frog 297007,bird 297008,cat 297009,bird 297010,horse 297011,deer 297012,airplane 297013,dog 297014,airplane 297015,dog 297016,dog 297017,cat 297018,horse 297019,horse 297020,ship 297021,deer 297022,cat 297023,cat 297024,bird 297025,cat 297026,frog 297027,automobile 297028,dog 297029,deer 297030,frog 297031,horse 297032,deer 297033,frog 297034,dog 297035,ship 297036,airplane 297037,ship 297038,deer 297039,cat 297040,deer 297041,cat 297042,deer 297043,bird 297044,ship 297045,dog 297046,cat 297047,bird 297048,deer 297049,automobile 297050,dog 297051,deer 297052,horse 297053,frog 297054,cat 297055,horse 297056,ship 297057,deer 297058,horse 297059,truck 297060,ship 297061,cat 297062,horse 297063,bird 297064,ship 297065,airplane 297066,frog 297067,horse 297068,horse 297069,bird 297070,airplane 297071,deer 297072,bird 297073,horse 297074,dog 297075,frog 297076,automobile 297077,horse 297078,airplane 297079,frog 297080,automobile 297081,truck 297082,bird 297083,airplane 297084,dog 297085,ship 297086,horse 297087,frog 297088,bird 297089,dog 297090,dog 297091,ship 297092,dog 297093,ship 297094,truck 297095,cat 297096,frog 297097,horse 297098,cat 297099,deer 297100,bird 297101,ship 297102,horse 297103,airplane 297104,dog 297105,truck 297106,truck 297107,horse 297108,cat 297109,automobile 297110,cat 297111,airplane 297112,airplane 297113,deer 297114,deer 297115,deer 297116,dog 297117,airplane 297118,frog 297119,airplane 297120,ship 297121,frog 297122,ship 297123,deer 297124,ship 297125,horse 297126,ship 297127,airplane 297128,horse 297129,cat 297130,automobile 297131,deer 297132,frog 297133,airplane 297134,bird 297135,horse 297136,horse 297137,truck 297138,truck 297139,dog 297140,truck 297141,ship 297142,deer 297143,ship 297144,bird 297145,horse 297146,truck 297147,horse 297148,cat 297149,cat 297150,dog 297151,truck 297152,deer 297153,truck 297154,dog 297155,airplane 297156,truck 297157,cat 297158,horse 297159,deer 297160,cat 297161,cat 297162,truck 297163,horse 297164,cat 297165,dog 297166,frog 297167,dog 297168,bird 297169,truck 297170,ship 297171,deer 297172,airplane 297173,bird 297174,frog 297175,ship 297176,deer 297177,cat 297178,horse 297179,automobile 297180,deer 297181,truck 297182,frog 297183,cat 297184,frog 297185,horse 297186,airplane 297187,airplane 297188,ship 297189,horse 297190,truck 297191,truck 297192,frog 297193,horse 297194,deer 297195,dog 297196,cat 297197,airplane 297198,dog 297199,deer 297200,frog 297201,horse 297202,frog 297203,cat 297204,airplane 297205,ship 297206,horse 297207,truck 297208,dog 297209,horse 297210,dog 297211,ship 297212,truck 297213,cat 297214,frog 297215,deer 297216,horse 297217,airplane 297218,bird 297219,airplane 297220,horse 297221,frog 297222,frog 297223,deer 297224,frog 297225,bird 297226,bird 297227,airplane 297228,cat 297229,airplane 297230,airplane 297231,automobile 297232,ship 297233,deer 297234,horse 297235,ship 297236,cat 297237,horse 297238,cat 297239,deer 297240,ship 297241,truck 297242,ship 297243,cat 297244,airplane 297245,cat 297246,bird 297247,bird 297248,automobile 297249,cat 297250,truck 297251,dog 297252,bird 297253,automobile 297254,horse 297255,cat 297256,truck 297257,cat 297258,deer 297259,dog 297260,automobile 297261,airplane 297262,truck 297263,cat 297264,ship 297265,truck 297266,ship 297267,deer 297268,airplane 297269,ship 297270,dog 297271,airplane 297272,truck 297273,truck 297274,horse 297275,horse 297276,deer 297277,deer 297278,deer 297279,horse 297280,truck 297281,frog 297282,deer 297283,cat 297284,bird 297285,frog 297286,bird 297287,dog 297288,bird 297289,horse 297290,horse 297291,cat 297292,deer 297293,deer 297294,frog 297295,airplane 297296,automobile 297297,dog 297298,truck 297299,cat 297300,ship 297301,dog 297302,cat 297303,frog 297304,deer 297305,automobile 297306,automobile 297307,cat 297308,airplane 297309,cat 297310,frog 297311,airplane 297312,dog 297313,horse 297314,dog 297315,horse 297316,frog 297317,cat 297318,cat 297319,horse 297320,truck 297321,cat 297322,dog 297323,deer 297324,ship 297325,cat 297326,cat 297327,truck 297328,bird 297329,frog 297330,bird 297331,bird 297332,truck 297333,cat 297334,bird 297335,cat 297336,frog 297337,bird 297338,frog 297339,deer 297340,automobile 297341,frog 297342,cat 297343,airplane 297344,horse 297345,ship 297346,bird 297347,deer 297348,frog 297349,deer 297350,truck 297351,frog 297352,deer 297353,cat 297354,deer 297355,horse 297356,deer 297357,cat 297358,ship 297359,ship 297360,deer 297361,bird 297362,airplane 297363,horse 297364,cat 297365,frog 297366,automobile 297367,truck 297368,airplane 297369,frog 297370,airplane 297371,truck 297372,frog 297373,cat 297374,cat 297375,airplane 297376,bird 297377,airplane 297378,deer 297379,cat 297380,horse 297381,automobile 297382,bird 297383,frog 297384,cat 297385,truck 297386,dog 297387,dog 297388,frog 297389,bird 297390,deer 297391,truck 297392,dog 297393,deer 297394,automobile 297395,airplane 297396,horse 297397,bird 297398,cat 297399,dog 297400,horse 297401,dog 297402,bird 297403,deer 297404,airplane 297405,automobile 297406,automobile 297407,ship 297408,truck 297409,cat 297410,ship 297411,deer 297412,deer 297413,horse 297414,cat 297415,deer 297416,bird 297417,dog 297418,frog 297419,automobile 297420,cat 297421,automobile 297422,ship 297423,automobile 297424,deer 297425,airplane 297426,truck 297427,cat 297428,truck 297429,frog 297430,ship 297431,bird 297432,airplane 297433,deer 297434,deer 297435,truck 297436,truck 297437,truck 297438,dog 297439,cat 297440,dog 297441,truck 297442,bird 297443,truck 297444,dog 297445,cat 297446,automobile 297447,automobile 297448,truck 297449,dog 297450,frog 297451,bird 297452,cat 297453,cat 297454,ship 297455,ship 297456,automobile 297457,cat 297458,deer 297459,cat 297460,ship 297461,cat 297462,ship 297463,horse 297464,frog 297465,dog 297466,airplane 297467,horse 297468,cat 297469,ship 297470,deer 297471,ship 297472,dog 297473,bird 297474,automobile 297475,deer 297476,airplane 297477,dog 297478,bird 297479,frog 297480,frog 297481,cat 297482,deer 297483,horse 297484,deer 297485,frog 297486,deer 297487,bird 297488,deer 297489,dog 297490,ship 297491,airplane 297492,dog 297493,dog 297494,cat 297495,ship 297496,cat 297497,horse 297498,deer 297499,cat 297500,truck 297501,dog 297502,deer 297503,deer 297504,ship 297505,dog 297506,deer 297507,frog 297508,bird 297509,cat 297510,frog 297511,ship 297512,cat 297513,cat 297514,truck 297515,frog 297516,truck 297517,ship 297518,cat 297519,dog 297520,automobile 297521,bird 297522,cat 297523,ship 297524,truck 297525,cat 297526,bird 297527,dog 297528,deer 297529,horse 297530,cat 297531,deer 297532,automobile 297533,cat 297534,truck 297535,ship 297536,ship 297537,cat 297538,cat 297539,airplane 297540,cat 297541,truck 297542,bird 297543,dog 297544,ship 297545,truck 297546,bird 297547,deer 297548,ship 297549,frog 297550,automobile 297551,cat 297552,dog 297553,bird 297554,airplane 297555,horse 297556,truck 297557,deer 297558,frog 297559,cat 297560,dog 297561,cat 297562,deer 297563,automobile 297564,airplane 297565,deer 297566,airplane 297567,horse 297568,automobile 297569,frog 297570,frog 297571,airplane 297572,horse 297573,automobile 297574,frog 297575,frog 297576,dog 297577,ship 297578,cat 297579,airplane 297580,frog 297581,automobile 297582,frog 297583,truck 297584,dog 297585,horse 297586,deer 297587,truck 297588,truck 297589,bird 297590,truck 297591,ship 297592,bird 297593,cat 297594,airplane 297595,horse 297596,ship 297597,frog 297598,dog 297599,horse 297600,truck 297601,cat 297602,cat 297603,cat 297604,truck 297605,frog 297606,horse 297607,cat 297608,airplane 297609,automobile 297610,ship 297611,cat 297612,ship 297613,deer 297614,cat 297615,dog 297616,cat 297617,frog 297618,dog 297619,dog 297620,horse 297621,airplane 297622,cat 297623,ship 297624,horse 297625,frog 297626,bird 297627,airplane 297628,cat 297629,bird 297630,airplane 297631,dog 297632,dog 297633,horse 297634,airplane 297635,horse 297636,horse 297637,ship 297638,truck 297639,horse 297640,deer 297641,cat 297642,cat 297643,frog 297644,airplane 297645,dog 297646,truck 297647,airplane 297648,truck 297649,truck 297650,bird 297651,ship 297652,bird 297653,frog 297654,frog 297655,frog 297656,dog 297657,airplane 297658,bird 297659,ship 297660,truck 297661,truck 297662,dog 297663,dog 297664,airplane 297665,automobile 297666,cat 297667,automobile 297668,cat 297669,dog 297670,frog 297671,ship 297672,dog 297673,cat 297674,deer 297675,automobile 297676,frog 297677,bird 297678,ship 297679,deer 297680,dog 297681,cat 297682,frog 297683,cat 297684,airplane 297685,cat 297686,horse 297687,deer 297688,airplane 297689,ship 297690,ship 297691,deer 297692,deer 297693,airplane 297694,truck 297695,ship 297696,deer 297697,frog 297698,deer 297699,truck 297700,frog 297701,dog 297702,frog 297703,bird 297704,bird 297705,truck 297706,truck 297707,automobile 297708,airplane 297709,horse 297710,bird 297711,deer 297712,horse 297713,automobile 297714,truck 297715,frog 297716,deer 297717,automobile 297718,dog 297719,cat 297720,frog 297721,horse 297722,truck 297723,cat 297724,airplane 297725,frog 297726,cat 297727,cat 297728,truck 297729,truck 297730,ship 297731,dog 297732,airplane 297733,deer 297734,frog 297735,dog 297736,cat 297737,deer 297738,bird 297739,frog 297740,automobile 297741,truck 297742,dog 297743,automobile 297744,bird 297745,dog 297746,cat 297747,frog 297748,dog 297749,cat 297750,deer 297751,truck 297752,horse 297753,cat 297754,frog 297755,airplane 297756,airplane 297757,horse 297758,ship 297759,automobile 297760,horse 297761,cat 297762,deer 297763,airplane 297764,bird 297765,deer 297766,horse 297767,horse 297768,dog 297769,deer 297770,frog 297771,bird 297772,airplane 297773,deer 297774,airplane 297775,automobile 297776,cat 297777,deer 297778,horse 297779,horse 297780,cat 297781,frog 297782,bird 297783,truck 297784,deer 297785,frog 297786,bird 297787,frog 297788,truck 297789,frog 297790,airplane 297791,automobile 297792,frog 297793,bird 297794,dog 297795,cat 297796,cat 297797,deer 297798,airplane 297799,airplane 297800,ship 297801,bird 297802,cat 297803,deer 297804,frog 297805,dog 297806,automobile 297807,frog 297808,cat 297809,cat 297810,truck 297811,automobile 297812,truck 297813,truck 297814,horse 297815,bird 297816,cat 297817,dog 297818,truck 297819,bird 297820,cat 297821,truck 297822,airplane 297823,deer 297824,automobile 297825,cat 297826,deer 297827,horse 297828,bird 297829,bird 297830,truck 297831,airplane 297832,deer 297833,bird 297834,automobile 297835,cat 297836,bird 297837,frog 297838,airplane 297839,bird 297840,deer 297841,airplane 297842,truck 297843,dog 297844,airplane 297845,airplane 297846,frog 297847,truck 297848,ship 297849,dog 297850,bird 297851,dog 297852,cat 297853,bird 297854,ship 297855,bird 297856,deer 297857,deer 297858,ship 297859,dog 297860,deer 297861,horse 297862,horse 297863,cat 297864,frog 297865,truck 297866,ship 297867,airplane 297868,cat 297869,frog 297870,deer 297871,ship 297872,ship 297873,cat 297874,truck 297875,truck 297876,deer 297877,airplane 297878,ship 297879,truck 297880,deer 297881,ship 297882,airplane 297883,horse 297884,bird 297885,deer 297886,frog 297887,airplane 297888,horse 297889,horse 297890,deer 297891,airplane 297892,ship 297893,cat 297894,bird 297895,airplane 297896,cat 297897,bird 297898,airplane 297899,horse 297900,truck 297901,automobile 297902,cat 297903,dog 297904,dog 297905,cat 297906,horse 297907,cat 297908,deer 297909,deer 297910,truck 297911,horse 297912,cat 297913,frog 297914,cat 297915,bird 297916,frog 297917,frog 297918,bird 297919,deer 297920,dog 297921,frog 297922,deer 297923,ship 297924,horse 297925,horse 297926,ship 297927,horse 297928,truck 297929,ship 297930,truck 297931,ship 297932,cat 297933,cat 297934,airplane 297935,deer 297936,deer 297937,truck 297938,horse 297939,ship 297940,ship 297941,ship 297942,dog 297943,cat 297944,ship 297945,truck 297946,cat 297947,dog 297948,automobile 297949,truck 297950,truck 297951,bird 297952,cat 297953,truck 297954,bird 297955,horse 297956,deer 297957,truck 297958,automobile 297959,truck 297960,automobile 297961,horse 297962,airplane 297963,dog 297964,airplane 297965,dog 297966,cat 297967,deer 297968,frog 297969,deer 297970,cat 297971,ship 297972,automobile 297973,frog 297974,automobile 297975,truck 297976,deer 297977,truck 297978,dog 297979,ship 297980,frog 297981,horse 297982,cat 297983,automobile 297984,automobile 297985,ship 297986,dog 297987,dog 297988,automobile 297989,airplane 297990,horse 297991,ship 297992,ship 297993,airplane 297994,truck 297995,deer 297996,frog 297997,ship 297998,dog 297999,dog 298000,deer 298001,ship 298002,dog 298003,truck 298004,bird 298005,horse 298006,automobile 298007,truck 298008,deer 298009,automobile 298010,horse 298011,horse 298012,cat 298013,deer 298014,frog 298015,cat 298016,horse 298017,horse 298018,ship 298019,bird 298020,bird 298021,automobile 298022,frog 298023,bird 298024,deer 298025,truck 298026,deer 298027,ship 298028,bird 298029,horse 298030,frog 298031,cat 298032,frog 298033,cat 298034,dog 298035,cat 298036,bird 298037,horse 298038,dog 298039,deer 298040,frog 298041,automobile 298042,dog 298043,bird 298044,truck 298045,frog 298046,deer 298047,cat 298048,ship 298049,cat 298050,automobile 298051,deer 298052,cat 298053,frog 298054,deer 298055,frog 298056,automobile 298057,airplane 298058,airplane 298059,cat 298060,deer 298061,cat 298062,dog 298063,deer 298064,airplane 298065,cat 298066,dog 298067,automobile 298068,automobile 298069,dog 298070,horse 298071,bird 298072,airplane 298073,truck 298074,cat 298075,truck 298076,automobile 298077,horse 298078,horse 298079,bird 298080,horse 298081,dog 298082,bird 298083,ship 298084,airplane 298085,truck 298086,airplane 298087,ship 298088,airplane 298089,ship 298090,horse 298091,dog 298092,horse 298093,cat 298094,deer 298095,airplane 298096,truck 298097,cat 298098,truck 298099,deer 298100,airplane 298101,bird 298102,ship 298103,bird 298104,truck 298105,bird 298106,cat 298107,frog 298108,horse 298109,airplane 298110,automobile 298111,frog 298112,bird 298113,deer 298114,bird 298115,cat 298116,deer 298117,deer 298118,truck 298119,bird 298120,airplane 298121,cat 298122,cat 298123,airplane 298124,bird 298125,horse 298126,ship 298127,bird 298128,frog 298129,automobile 298130,truck 298131,frog 298132,deer 298133,dog 298134,ship 298135,frog 298136,automobile 298137,horse 298138,automobile 298139,cat 298140,cat 298141,cat 298142,horse 298143,frog 298144,ship 298145,cat 298146,frog 298147,frog 298148,ship 298149,cat 298150,frog 298151,horse 298152,dog 298153,automobile 298154,horse 298155,deer 298156,frog 298157,ship 298158,deer 298159,frog 298160,deer 298161,cat 298162,bird 298163,truck 298164,bird 298165,dog 298166,deer 298167,cat 298168,bird 298169,deer 298170,frog 298171,cat 298172,deer 298173,deer 298174,dog 298175,dog 298176,airplane 298177,frog 298178,frog 298179,truck 298180,bird 298181,bird 298182,deer 298183,truck 298184,bird 298185,horse 298186,deer 298187,truck 298188,dog 298189,cat 298190,airplane 298191,automobile 298192,automobile 298193,ship 298194,cat 298195,truck 298196,bird 298197,horse 298198,ship 298199,deer 298200,deer 298201,dog 298202,frog 298203,truck 298204,deer 298205,cat 298206,dog 298207,dog 298208,ship 298209,truck 298210,deer 298211,automobile 298212,airplane 298213,truck 298214,deer 298215,airplane 298216,automobile 298217,cat 298218,airplane 298219,deer 298220,frog 298221,ship 298222,cat 298223,horse 298224,cat 298225,dog 298226,truck 298227,truck 298228,ship 298229,deer 298230,truck 298231,cat 298232,cat 298233,truck 298234,horse 298235,ship 298236,truck 298237,ship 298238,dog 298239,dog 298240,horse 298241,truck 298242,cat 298243,cat 298244,deer 298245,frog 298246,truck 298247,automobile 298248,cat 298249,cat 298250,airplane 298251,deer 298252,horse 298253,automobile 298254,ship 298255,airplane 298256,deer 298257,cat 298258,ship 298259,frog 298260,dog 298261,truck 298262,truck 298263,horse 298264,truck 298265,horse 298266,cat 298267,deer 298268,cat 298269,dog 298270,horse 298271,dog 298272,dog 298273,dog 298274,cat 298275,ship 298276,dog 298277,frog 298278,frog 298279,cat 298280,dog 298281,horse 298282,cat 298283,truck 298284,truck 298285,ship 298286,automobile 298287,cat 298288,automobile 298289,deer 298290,cat 298291,dog 298292,bird 298293,cat 298294,ship 298295,truck 298296,frog 298297,cat 298298,airplane 298299,dog 298300,automobile 298301,cat 298302,truck 298303,ship 298304,automobile 298305,frog 298306,frog 298307,frog 298308,frog 298309,frog 298310,deer 298311,dog 298312,cat 298313,deer 298314,automobile 298315,truck 298316,cat 298317,ship 298318,dog 298319,cat 298320,dog 298321,deer 298322,dog 298323,bird 298324,deer 298325,bird 298326,deer 298327,dog 298328,bird 298329,truck 298330,cat 298331,bird 298332,truck 298333,horse 298334,cat 298335,truck 298336,airplane 298337,airplane 298338,automobile 298339,horse 298340,ship 298341,ship 298342,ship 298343,automobile 298344,frog 298345,ship 298346,frog 298347,frog 298348,ship 298349,frog 298350,horse 298351,cat 298352,ship 298353,dog 298354,frog 298355,ship 298356,frog 298357,horse 298358,cat 298359,bird 298360,dog 298361,deer 298362,deer 298363,truck 298364,cat 298365,deer 298366,automobile 298367,ship 298368,airplane 298369,airplane 298370,frog 298371,deer 298372,bird 298373,dog 298374,ship 298375,frog 298376,cat 298377,cat 298378,horse 298379,automobile 298380,cat 298381,dog 298382,deer 298383,dog 298384,automobile 298385,truck 298386,dog 298387,deer 298388,bird 298389,truck 298390,truck 298391,ship 298392,frog 298393,bird 298394,frog 298395,deer 298396,horse 298397,ship 298398,cat 298399,deer 298400,airplane 298401,automobile 298402,horse 298403,deer 298404,bird 298405,bird 298406,ship 298407,airplane 298408,deer 298409,automobile 298410,truck 298411,dog 298412,ship 298413,bird 298414,truck 298415,dog 298416,deer 298417,dog 298418,dog 298419,truck 298420,frog 298421,truck 298422,frog 298423,truck 298424,bird 298425,horse 298426,horse 298427,truck 298428,cat 298429,airplane 298430,dog 298431,airplane 298432,horse 298433,cat 298434,horse 298435,airplane 298436,dog 298437,truck 298438,automobile 298439,bird 298440,cat 298441,cat 298442,dog 298443,airplane 298444,horse 298445,truck 298446,bird 298447,deer 298448,cat 298449,ship 298450,dog 298451,deer 298452,deer 298453,dog 298454,truck 298455,horse 298456,dog 298457,bird 298458,cat 298459,bird 298460,cat 298461,bird 298462,airplane 298463,airplane 298464,deer 298465,deer 298466,ship 298467,deer 298468,ship 298469,cat 298470,dog 298471,deer 298472,automobile 298473,cat 298474,dog 298475,cat 298476,bird 298477,bird 298478,bird 298479,cat 298480,deer 298481,horse 298482,deer 298483,airplane 298484,dog 298485,ship 298486,frog 298487,horse 298488,automobile 298489,deer 298490,airplane 298491,cat 298492,dog 298493,truck 298494,frog 298495,horse 298496,horse 298497,cat 298498,horse 298499,cat 298500,deer 298501,automobile 298502,dog 298503,frog 298504,deer 298505,frog 298506,dog 298507,dog 298508,dog 298509,dog 298510,dog 298511,cat 298512,deer 298513,airplane 298514,deer 298515,truck 298516,bird 298517,bird 298518,deer 298519,frog 298520,deer 298521,airplane 298522,cat 298523,horse 298524,dog 298525,truck 298526,frog 298527,deer 298528,cat 298529,bird 298530,cat 298531,cat 298532,bird 298533,cat 298534,truck 298535,automobile 298536,horse 298537,horse 298538,bird 298539,deer 298540,cat 298541,frog 298542,truck 298543,cat 298544,horse 298545,ship 298546,truck 298547,cat 298548,frog 298549,airplane 298550,automobile 298551,bird 298552,airplane 298553,ship 298554,ship 298555,truck 298556,deer 298557,cat 298558,bird 298559,dog 298560,frog 298561,horse 298562,dog 298563,cat 298564,horse 298565,automobile 298566,dog 298567,airplane 298568,bird 298569,frog 298570,frog 298571,frog 298572,ship 298573,ship 298574,airplane 298575,automobile 298576,deer 298577,frog 298578,dog 298579,cat 298580,dog 298581,bird 298582,frog 298583,frog 298584,frog 298585,frog 298586,cat 298587,automobile 298588,airplane 298589,airplane 298590,horse 298591,frog 298592,deer 298593,truck 298594,airplane 298595,cat 298596,deer 298597,cat 298598,dog 298599,frog 298600,deer 298601,airplane 298602,truck 298603,frog 298604,cat 298605,cat 298606,automobile 298607,airplane 298608,truck 298609,bird 298610,airplane 298611,truck 298612,automobile 298613,automobile 298614,truck 298615,deer 298616,cat 298617,ship 298618,bird 298619,truck 298620,frog 298621,deer 298622,bird 298623,horse 298624,cat 298625,dog 298626,truck 298627,bird 298628,cat 298629,deer 298630,truck 298631,automobile 298632,dog 298633,airplane 298634,horse 298635,ship 298636,dog 298637,cat 298638,deer 298639,truck 298640,automobile 298641,dog 298642,frog 298643,dog 298644,truck 298645,cat 298646,deer 298647,airplane 298648,frog 298649,deer 298650,deer 298651,dog 298652,dog 298653,deer 298654,cat 298655,cat 298656,automobile 298657,airplane 298658,cat 298659,cat 298660,frog 298661,dog 298662,truck 298663,airplane 298664,deer 298665,dog 298666,bird 298667,automobile 298668,cat 298669,ship 298670,deer 298671,dog 298672,airplane 298673,dog 298674,cat 298675,airplane 298676,frog 298677,horse 298678,airplane 298679,horse 298680,bird 298681,airplane 298682,ship 298683,cat 298684,truck 298685,cat 298686,deer 298687,cat 298688,frog 298689,frog 298690,frog 298691,horse 298692,dog 298693,cat 298694,ship 298695,dog 298696,cat 298697,frog 298698,dog 298699,cat 298700,deer 298701,deer 298702,dog 298703,horse 298704,automobile 298705,automobile 298706,bird 298707,cat 298708,horse 298709,horse 298710,airplane 298711,frog 298712,airplane 298713,dog 298714,dog 298715,automobile 298716,automobile 298717,airplane 298718,deer 298719,cat 298720,bird 298721,cat 298722,automobile 298723,airplane 298724,ship 298725,ship 298726,airplane 298727,airplane 298728,automobile 298729,truck 298730,ship 298731,frog 298732,bird 298733,cat 298734,horse 298735,cat 298736,dog 298737,horse 298738,bird 298739,cat 298740,dog 298741,dog 298742,truck 298743,deer 298744,horse 298745,automobile 298746,horse 298747,automobile 298748,horse 298749,deer 298750,horse 298751,dog 298752,ship 298753,deer 298754,horse 298755,truck 298756,airplane 298757,automobile 298758,deer 298759,truck 298760,ship 298761,horse 298762,horse 298763,cat 298764,automobile 298765,truck 298766,cat 298767,airplane 298768,ship 298769,deer 298770,truck 298771,bird 298772,truck 298773,automobile 298774,ship 298775,deer 298776,ship 298777,automobile 298778,bird 298779,automobile 298780,bird 298781,deer 298782,automobile 298783,horse 298784,automobile 298785,automobile 298786,frog 298787,airplane 298788,bird 298789,cat 298790,horse 298791,cat 298792,airplane 298793,truck 298794,frog 298795,bird 298796,bird 298797,frog 298798,deer 298799,airplane 298800,cat 298801,horse 298802,ship 298803,airplane 298804,horse 298805,dog 298806,ship 298807,truck 298808,horse 298809,horse 298810,cat 298811,frog 298812,automobile 298813,frog 298814,deer 298815,dog 298816,deer 298817,horse 298818,airplane 298819,dog 298820,deer 298821,deer 298822,automobile 298823,automobile 298824,cat 298825,horse 298826,truck 298827,dog 298828,cat 298829,horse 298830,deer 298831,airplane 298832,bird 298833,bird 298834,airplane 298835,cat 298836,bird 298837,cat 298838,horse 298839,airplane 298840,cat 298841,frog 298842,automobile 298843,deer 298844,cat 298845,deer 298846,truck 298847,dog 298848,horse 298849,ship 298850,bird 298851,ship 298852,frog 298853,bird 298854,dog 298855,truck 298856,cat 298857,dog 298858,horse 298859,dog 298860,airplane 298861,automobile 298862,truck 298863,automobile 298864,deer 298865,horse 298866,ship 298867,horse 298868,cat 298869,deer 298870,horse 298871,dog 298872,cat 298873,dog 298874,ship 298875,cat 298876,automobile 298877,cat 298878,automobile 298879,deer 298880,frog 298881,airplane 298882,cat 298883,truck 298884,cat 298885,ship 298886,frog 298887,frog 298888,airplane 298889,horse 298890,truck 298891,dog 298892,cat 298893,truck 298894,cat 298895,horse 298896,deer 298897,automobile 298898,automobile 298899,cat 298900,ship 298901,truck 298902,frog 298903,truck 298904,deer 298905,bird 298906,dog 298907,frog 298908,bird 298909,automobile 298910,dog 298911,automobile 298912,deer 298913,deer 298914,horse 298915,deer 298916,truck 298917,automobile 298918,frog 298919,dog 298920,horse 298921,deer 298922,cat 298923,deer 298924,horse 298925,deer 298926,frog 298927,bird 298928,airplane 298929,dog 298930,cat 298931,deer 298932,frog 298933,cat 298934,bird 298935,airplane 298936,bird 298937,deer 298938,ship 298939,deer 298940,bird 298941,dog 298942,bird 298943,horse 298944,deer 298945,deer 298946,airplane 298947,bird 298948,deer 298949,dog 298950,cat 298951,dog 298952,dog 298953,deer 298954,truck 298955,frog 298956,bird 298957,deer 298958,cat 298959,automobile 298960,deer 298961,frog 298962,cat 298963,deer 298964,truck 298965,deer 298966,dog 298967,deer 298968,cat 298969,ship 298970,deer 298971,automobile 298972,cat 298973,cat 298974,frog 298975,truck 298976,automobile 298977,cat 298978,automobile 298979,bird 298980,cat 298981,automobile 298982,cat 298983,horse 298984,cat 298985,bird 298986,deer 298987,dog 298988,automobile 298989,bird 298990,airplane 298991,dog 298992,horse 298993,truck 298994,dog 298995,frog 298996,frog 298997,bird 298998,dog 298999,airplane 299000,horse 299001,deer 299002,bird 299003,dog 299004,cat 299005,truck 299006,cat 299007,ship 299008,automobile 299009,deer 299010,horse 299011,frog 299012,airplane 299013,dog 299014,deer 299015,bird 299016,deer 299017,frog 299018,frog 299019,deer 299020,deer 299021,frog 299022,horse 299023,automobile 299024,cat 299025,automobile 299026,cat 299027,cat 299028,dog 299029,cat 299030,frog 299031,bird 299032,bird 299033,bird 299034,cat 299035,horse 299036,dog 299037,truck 299038,deer 299039,frog 299040,dog 299041,deer 299042,automobile 299043,dog 299044,automobile 299045,horse 299046,horse 299047,dog 299048,truck 299049,dog 299050,ship 299051,frog 299052,horse 299053,deer 299054,dog 299055,frog 299056,automobile 299057,horse 299058,bird 299059,automobile 299060,airplane 299061,airplane 299062,truck 299063,horse 299064,airplane 299065,cat 299066,frog 299067,deer 299068,deer 299069,bird 299070,cat 299071,deer 299072,automobile 299073,bird 299074,dog 299075,dog 299076,truck 299077,horse 299078,frog 299079,frog 299080,cat 299081,deer 299082,frog 299083,bird 299084,dog 299085,dog 299086,airplane 299087,truck 299088,dog 299089,ship 299090,frog 299091,cat 299092,deer 299093,truck 299094,automobile 299095,cat 299096,horse 299097,ship 299098,cat 299099,bird 299100,dog 299101,frog 299102,deer 299103,cat 299104,bird 299105,ship 299106,deer 299107,automobile 299108,truck 299109,ship 299110,airplane 299111,truck 299112,dog 299113,airplane 299114,dog 299115,dog 299116,deer 299117,ship 299118,dog 299119,bird 299120,deer 299121,horse 299122,cat 299123,dog 299124,dog 299125,frog 299126,bird 299127,dog 299128,ship 299129,automobile 299130,frog 299131,cat 299132,cat 299133,frog 299134,truck 299135,bird 299136,bird 299137,truck 299138,cat 299139,dog 299140,cat 299141,horse 299142,cat 299143,truck 299144,deer 299145,deer 299146,automobile 299147,frog 299148,airplane 299149,truck 299150,cat 299151,frog 299152,dog 299153,automobile 299154,truck 299155,frog 299156,bird 299157,airplane 299158,frog 299159,deer 299160,bird 299161,ship 299162,automobile 299163,frog 299164,frog 299165,automobile 299166,bird 299167,automobile 299168,dog 299169,horse 299170,automobile 299171,ship 299172,automobile 299173,horse 299174,deer 299175,ship 299176,automobile 299177,ship 299178,deer 299179,frog 299180,automobile 299181,frog 299182,horse 299183,truck 299184,cat 299185,frog 299186,airplane 299187,bird 299188,bird 299189,airplane 299190,horse 299191,cat 299192,airplane 299193,frog 299194,dog 299195,dog 299196,truck 299197,horse 299198,dog 299199,airplane 299200,horse 299201,deer 299202,horse 299203,bird 299204,deer 299205,cat 299206,airplane 299207,frog 299208,deer 299209,airplane 299210,airplane 299211,horse 299212,deer 299213,frog 299214,horse 299215,ship 299216,bird 299217,airplane 299218,automobile 299219,airplane 299220,dog 299221,horse 299222,truck 299223,horse 299224,horse 299225,cat 299226,deer 299227,cat 299228,bird 299229,cat 299230,dog 299231,deer 299232,bird 299233,bird 299234,ship 299235,truck 299236,deer 299237,cat 299238,deer 299239,ship 299240,horse 299241,automobile 299242,truck 299243,automobile 299244,bird 299245,automobile 299246,truck 299247,truck 299248,airplane 299249,truck 299250,ship 299251,truck 299252,bird 299253,airplane 299254,truck 299255,horse 299256,truck 299257,deer 299258,truck 299259,airplane 299260,automobile 299261,horse 299262,automobile 299263,truck 299264,ship 299265,ship 299266,horse 299267,frog 299268,dog 299269,deer 299270,horse 299271,horse 299272,horse 299273,deer 299274,horse 299275,frog 299276,horse 299277,truck 299278,airplane 299279,truck 299280,frog 299281,frog 299282,ship 299283,automobile 299284,automobile 299285,deer 299286,dog 299287,bird 299288,airplane 299289,cat 299290,horse 299291,dog 299292,horse 299293,dog 299294,cat 299295,bird 299296,frog 299297,bird 299298,deer 299299,dog 299300,frog 299301,automobile 299302,cat 299303,cat 299304,horse 299305,cat 299306,deer 299307,cat 299308,deer 299309,dog 299310,automobile 299311,cat 299312,automobile 299313,horse 299314,cat 299315,cat 299316,airplane 299317,frog 299318,deer 299319,truck 299320,cat 299321,horse 299322,cat 299323,truck 299324,dog 299325,bird 299326,cat 299327,deer 299328,cat 299329,truck 299330,deer 299331,airplane 299332,truck 299333,horse 299334,cat 299335,cat 299336,dog 299337,horse 299338,deer 299339,airplane 299340,bird 299341,deer 299342,ship 299343,cat 299344,frog 299345,cat 299346,bird 299347,frog 299348,horse 299349,frog 299350,dog 299351,dog 299352,airplane 299353,cat 299354,ship 299355,airplane 299356,deer 299357,bird 299358,airplane 299359,deer 299360,frog 299361,horse 299362,ship 299363,automobile 299364,truck 299365,cat 299366,frog 299367,dog 299368,ship 299369,frog 299370,airplane 299371,bird 299372,deer 299373,horse 299374,frog 299375,airplane 299376,automobile 299377,dog 299378,cat 299379,frog 299380,cat 299381,dog 299382,ship 299383,deer 299384,truck 299385,dog 299386,deer 299387,cat 299388,bird 299389,ship 299390,bird 299391,dog 299392,automobile 299393,cat 299394,ship 299395,cat 299396,frog 299397,frog 299398,truck 299399,dog 299400,frog 299401,frog 299402,automobile 299403,airplane 299404,bird 299405,deer 299406,cat 299407,frog 299408,airplane 299409,deer 299410,deer 299411,horse 299412,dog 299413,frog 299414,horse 299415,deer 299416,airplane 299417,airplane 299418,truck 299419,automobile 299420,cat 299421,cat 299422,frog 299423,dog 299424,automobile 299425,cat 299426,automobile 299427,deer 299428,dog 299429,airplane 299430,bird 299431,cat 299432,truck 299433,truck 299434,automobile 299435,frog 299436,cat 299437,bird 299438,horse 299439,deer 299440,deer 299441,dog 299442,bird 299443,airplane 299444,deer 299445,truck 299446,airplane 299447,deer 299448,deer 299449,automobile 299450,frog 299451,cat 299452,dog 299453,cat 299454,frog 299455,dog 299456,dog 299457,deer 299458,deer 299459,cat 299460,deer 299461,ship 299462,dog 299463,cat 299464,horse 299465,dog 299466,frog 299467,cat 299468,frog 299469,deer 299470,deer 299471,airplane 299472,bird 299473,deer 299474,deer 299475,truck 299476,automobile 299477,frog 299478,airplane 299479,ship 299480,horse 299481,ship 299482,horse 299483,cat 299484,cat 299485,cat 299486,frog 299487,dog 299488,dog 299489,bird 299490,truck 299491,dog 299492,ship 299493,horse 299494,frog 299495,dog 299496,frog 299497,airplane 299498,dog 299499,dog 299500,ship 299501,bird 299502,deer 299503,bird 299504,bird 299505,deer 299506,frog 299507,airplane 299508,cat 299509,ship 299510,dog 299511,automobile 299512,deer 299513,ship 299514,truck 299515,truck 299516,automobile 299517,deer 299518,automobile 299519,airplane 299520,automobile 299521,truck 299522,frog 299523,frog 299524,deer 299525,dog 299526,truck 299527,truck 299528,ship 299529,deer 299530,airplane 299531,truck 299532,deer 299533,frog 299534,airplane 299535,dog 299536,horse 299537,horse 299538,bird 299539,bird 299540,automobile 299541,deer 299542,truck 299543,deer 299544,dog 299545,airplane 299546,frog 299547,horse 299548,automobile 299549,ship 299550,frog 299551,automobile 299552,airplane 299553,truck 299554,deer 299555,frog 299556,automobile 299557,automobile 299558,ship 299559,cat 299560,frog 299561,horse 299562,frog 299563,horse 299564,airplane 299565,frog 299566,automobile 299567,bird 299568,automobile 299569,deer 299570,automobile 299571,frog 299572,dog 299573,deer 299574,frog 299575,automobile 299576,frog 299577,frog 299578,airplane 299579,dog 299580,deer 299581,airplane 299582,cat 299583,cat 299584,cat 299585,deer 299586,deer 299587,automobile 299588,deer 299589,deer 299590,airplane 299591,automobile 299592,automobile 299593,deer 299594,dog 299595,cat 299596,deer 299597,truck 299598,deer 299599,cat 299600,frog 299601,cat 299602,airplane 299603,horse 299604,frog 299605,airplane 299606,cat 299607,truck 299608,horse 299609,airplane 299610,automobile 299611,horse 299612,deer 299613,frog 299614,frog 299615,cat 299616,deer 299617,truck 299618,truck 299619,deer 299620,ship 299621,horse 299622,dog 299623,deer 299624,cat 299625,bird 299626,ship 299627,bird 299628,cat 299629,deer 299630,dog 299631,cat 299632,frog 299633,deer 299634,airplane 299635,ship 299636,dog 299637,dog 299638,frog 299639,dog 299640,cat 299641,dog 299642,airplane 299643,horse 299644,bird 299645,truck 299646,airplane 299647,ship 299648,bird 299649,cat 299650,frog 299651,frog 299652,deer 299653,frog 299654,automobile 299655,horse 299656,cat 299657,bird 299658,cat 299659,frog 299660,horse 299661,deer 299662,deer 299663,cat 299664,truck 299665,truck 299666,horse 299667,ship 299668,frog 299669,deer 299670,deer 299671,dog 299672,ship 299673,dog 299674,truck 299675,cat 299676,cat 299677,airplane 299678,deer 299679,deer 299680,deer 299681,airplane 299682,horse 299683,dog 299684,deer 299685,cat 299686,cat 299687,deer 299688,dog 299689,deer 299690,frog 299691,automobile 299692,airplane 299693,truck 299694,horse 299695,deer 299696,deer 299697,cat 299698,airplane 299699,cat 299700,automobile 299701,truck 299702,bird 299703,ship 299704,horse 299705,ship 299706,truck 299707,frog 299708,deer 299709,bird 299710,airplane 299711,frog 299712,frog 299713,deer 299714,airplane 299715,automobile 299716,frog 299717,ship 299718,cat 299719,automobile 299720,horse 299721,ship 299722,frog 299723,horse 299724,bird 299725,deer 299726,dog 299727,frog 299728,dog 299729,frog 299730,dog 299731,airplane 299732,truck 299733,airplane 299734,cat 299735,deer 299736,bird 299737,deer 299738,cat 299739,deer 299740,bird 299741,ship 299742,frog 299743,truck 299744,airplane 299745,truck 299746,automobile 299747,deer 299748,deer 299749,cat 299750,deer 299751,deer 299752,deer 299753,truck 299754,deer 299755,frog 299756,dog 299757,cat 299758,cat 299759,dog 299760,deer 299761,automobile 299762,bird 299763,frog 299764,dog 299765,dog 299766,deer 299767,ship 299768,frog 299769,truck 299770,automobile 299771,deer 299772,deer 299773,deer 299774,deer 299775,automobile 299776,bird 299777,frog 299778,deer 299779,horse 299780,deer 299781,airplane 299782,bird 299783,deer 299784,horse 299785,bird 299786,cat 299787,truck 299788,frog 299789,truck 299790,airplane 299791,dog 299792,deer 299793,cat 299794,cat 299795,bird 299796,automobile 299797,dog 299798,deer 299799,frog 299800,ship 299801,horse 299802,cat 299803,cat 299804,cat 299805,horse 299806,deer 299807,cat 299808,airplane 299809,truck 299810,airplane 299811,deer 299812,dog 299813,deer 299814,airplane 299815,cat 299816,frog 299817,automobile 299818,dog 299819,cat 299820,horse 299821,bird 299822,truck 299823,deer 299824,frog 299825,horse 299826,truck 299827,cat 299828,frog 299829,cat 299830,ship 299831,ship 299832,cat 299833,airplane 299834,frog 299835,bird 299836,cat 299837,airplane 299838,horse 299839,frog 299840,frog 299841,bird 299842,bird 299843,ship 299844,ship 299845,automobile 299846,deer 299847,ship 299848,horse 299849,deer 299850,bird 299851,cat 299852,frog 299853,deer 299854,frog 299855,deer 299856,cat 299857,deer 299858,airplane 299859,frog 299860,airplane 299861,cat 299862,automobile 299863,truck 299864,frog 299865,frog 299866,dog 299867,horse 299868,cat 299869,ship 299870,frog 299871,cat 299872,bird 299873,airplane 299874,cat 299875,bird 299876,frog 299877,cat 299878,deer 299879,horse 299880,deer 299881,horse 299882,dog 299883,truck 299884,bird 299885,ship 299886,airplane 299887,horse 299888,deer 299889,cat 299890,horse 299891,airplane 299892,horse 299893,bird 299894,bird 299895,frog 299896,dog 299897,cat 299898,cat 299899,cat 299900,ship 299901,frog 299902,deer 299903,automobile 299904,deer 299905,bird 299906,truck 299907,deer 299908,cat 299909,automobile 299910,dog 299911,airplane 299912,bird 299913,bird 299914,automobile 299915,deer 299916,cat 299917,ship 299918,ship 299919,truck 299920,automobile 299921,truck 299922,frog 299923,truck 299924,dog 299925,horse 299926,ship 299927,dog 299928,bird 299929,airplane 299930,airplane 299931,truck 299932,airplane 299933,automobile 299934,automobile 299935,deer 299936,dog 299937,airplane 299938,cat 299939,ship 299940,bird 299941,ship 299942,cat 299943,airplane 299944,horse 299945,airplane 299946,dog 299947,dog 299948,horse 299949,truck 299950,truck 299951,frog 299952,cat 299953,ship 299954,frog 299955,horse 299956,deer 299957,truck 299958,deer 299959,automobile 299960,deer 299961,horse 299962,dog 299963,frog 299964,deer 299965,cat 299966,cat 299967,ship 299968,truck 299969,truck 299970,dog 299971,horse 299972,bird 299973,airplane 299974,truck 299975,ship 299976,airplane 299977,horse 299978,frog 299979,horse 299980,airplane 299981,airplane 299982,frog 299983,deer 299984,frog 299985,automobile 299986,cat 299987,horse 299988,deer 299989,deer 299990,cat 299991,ship 299992,truck 299993,frog 299994,deer 299995,frog 299996,airplane 299997,bird 299998,horse 299999,dog 300000,automobile ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cifar10.py # \author chenghuige # \date 2018-07-11 10:04:01.403122 # \Description https://www.kaggle.com/goldenlock/kernels/notebooks/new?forkParentScriptVersionId=2011753 # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf import pandas as pd import numpy as np import math import timeit import matplotlib.pyplot as plt from six.moves import cPickle as pickle import os import platform from subprocess import check_output print(check_output(["ls", "../input"]).decode("utf8")) %matplotlib inline classes = ('plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') def load_pickle(f): version = platform.python_version_tuple() if version[0] == '2': return pickle.load(f) elif version[0] == '3': return pickle.load(f, encoding='latin1') raise ValueError("invalid python version: {}".format(version)) def load_CIFAR_batch(filename): """ load single batch of cifar """ with open(filename, 'rb') as f: datadict = load_pickle(f) X = datadict['data'] Y = datadict['labels'] X = X.reshape(10000, 3, 32, 32).transpose(0,2,3,1).astype("float") Y = np.array(Y) return X, Y def load_CIFAR10(ROOT): """ load all of cifar """ xs = [] ys = [] for b in range(1,6): f = os.path.join(ROOT, 'data_batch_%d' % (b, )) X, Y = load_CIFAR_batch(f) xs.append(X) ys.append(Y) Xtr = np.concatenate(xs) Ytr = np.concatenate(ys) del X, Y Xte, Yte = load_CIFAR_batch(os.path.join(ROOT, 'test_batch')) return Xtr, Ytr, Xte, Yte def get_CIFAR10_data(num_training=49000, num_validation=1000, num_test=10000): # Load the raw CIFAR-10 data cifar10_dir = '../input' X_train, y_train, X_test, y_test = load_CIFAR10(cifar10_dir) # Subsample the data mask = range(num_training, num_training + num_validation) X_val = X_train[mask] y_val = y_train[mask] mask = range(num_training) X_train = X_train[mask] y_train = y_train[mask] mask = range(num_test) X_test = X_test[mask] y_test = y_test[mask] # Normalize the data: subtract the mean image mean_image = np.mean(X_train, axis=0) X_train -= mean_image X_val -= mean_image X_test -= mean_image return X_train, y_train, X_val, y_val, X_test, y_test # Invoke the above function to get our data. X_train, y_train, X_val, y_val, X_test, y_test = get_CIFAR10_data() print('Train data shape: ', X_train.shape) print('Train labels shape: ', y_train.shape) print('Validation data shape: ', X_val.shape) print('Validation labels shape: ', y_val.shape) print('Test data shape: ', X_test.shape) print('Test labels shape: ', y_test.shape) # define net class CifarNet(): def __init__(self): # conv layer # H2 = (H1 - F + 2P)/S +1 # (32-5)/1 + 1 = 28 # 28x28x32 = 25088 # To ReLu (?x16x16x32) -> MaxPool (?x16x16x32) -> affine (8192) self.Wconv1 = tf.get_variable("Wconv1", shape=[5, 5, 3, 32]) self.bconv1 = tf.get_variable("bconv1", shape=[32]) # (32-5)/1 + 1 = 28 # 28x28x64 = 50176 self.Wconv2 = tf.get_variable("Wconv2", shape=[5, 5, 32, 64]) self.bconv2 = tf.get_variable("bconv2", shape=[64]) # affine layer with 1024 self.W1 = tf.get_variable("W1", shape=[3136, 1024]) self.b1 = tf.get_variable("b1", shape=[1024]) # affine layer with 10 self.W2 = tf.get_variable("W2", shape=[1024, 10]) self.b2 = tf.get_variable("b2", shape=[10]) def forward(self, X, y, is_training): # conv2d # ReLu # conv2d # ReLu # maxpool # Batch Norm # Affine # Batch Norm # ReLu # Affine # dropout # Batch Norm # conv layer # H2 = (H1 - F + 2P)/S +1 # (32-5)/1 + 1 = 28 # 28x28x32 = 25088 # To ReLu (?x16x16x32) -> MaxPool (?x16x16x32) -> affine (8192) # define our graph (e.g. two_layer_convnet) with stride 1 conv1 = tf.nn.conv2d(X, self.Wconv1, strides=[1, 1, 1, 1], padding='SAME') + self.bconv1 print(conv1.shape) # ReLU Activation Layer relu1 = tf.nn.relu(conv1) print(relu1) # Conv conv2 = tf.nn.conv2d(relu1, self.Wconv2, strides=[1, 2, 2, 1], padding='VALID') + self.bconv2 print(conv2.shape) # ReLU Activation Layer relu2 = tf.nn.relu(conv2) print(relu2) # 2x2 Max Pooling layer with a stride of 2 maxpool = tf.layers.max_pooling2d(relu2, pool_size=(2,2), strides=2) print(maxpool.shape) maxpool_flat = tf.reshape(maxpool,[-1,3136]) # Spatial Batch Normalization Layer (trainable parameters, with scale and centering) bn1 = tf.layers.batch_normalization(inputs=maxpool_flat, center=True, scale=True, training=is_training) # Affine layer with 1024 output units affine1 = tf.matmul(bn1, self.W1) + self.b1 print(affine1.shape) # vanilla batch normalization affine1_flat = tf.reshape(affine1,[-1,1024]) bn2 = tf.layers.batch_normalization(inputs=affine1, center=True, scale=True, training=is_training) print(bn2.shape) # ReLU Activation Layer relu2 = tf.nn.relu(bn2) print(relu2.shape) # dropout drop1 = tf.layers.dropout(inputs=relu2, training=is_training) # Affine layer from 1024 input units to 10 outputs affine2 = tf.matmul(drop1, self.W2) + self.b2 # vanilla batch normalization affine2_flat = tf.reshape(affine2,[-1,3136]) self.predict = tf.layers.batch_normalization(inputs=affine2, center=True, scale=True, training=is_training) print(self.predict.shape) return self.predict def run(self, session, loss_val, Xd, yd, epochs=1, batch_size=64, print_every=100, training=None, plot_losses=False, isSoftMax=False): # have tensorflow compute accuracy if isSoftMax: correct_prediction = tf.nn.softmax(self.predict) else: correct_prediction = tf.equal(tf.argmax(self.predict,1), y) accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32)) # shuffle indicies train_indicies = np.arange(Xd.shape[0]) np.random.shuffle(train_indicies) training_now = training is not None # setting up variables we want to compute (and optimizing) # if we have a training function, add that to things we compute variables = [mean_loss, correct_prediction, accuracy] if training_now: variables[-1] = training # counter iter_cnt = 0 for e in range(epochs): # keep track of losses and accuracy correct = 0 losses = [] # make sure we iterate over the dataset once for i in range(int(math.ceil(Xd.shape[0]/batch_size))): # generate indicies for the batch start_idx = (i*batch_size)%Xd.shape[0] idx = train_indicies[start_idx:start_idx+batch_size] # create a feed dictionary for this batch feed_dict = {X: Xd[idx,:], y: yd[idx], is_training: training_now } # get batch size actual_batch_size = yd[idx].shape[0] # have tensorflow compute loss and correct predictions # and (if given) perform a training step loss, corr, _ = session.run(variables,feed_dict=feed_dict) # aggregate performance stats losses.append(loss*actual_batch_size) correct += np.sum(corr) # print every now and then if training_now and (iter_cnt % print_every) == 0: print("Iteration {0}: with minibatch training loss = {1:.3g} and accuracy of {2:.2g}"\ .format(iter_cnt,loss,np.sum(corr)/actual_batch_size)) iter_cnt += 1 total_correct = correct/Xd.shape[0] total_loss = np.sum(losses)/Xd.shape[0] print("Epoch {2}, Overall loss = {0:.3g} and accuracy of {1:.3g}"\ .format(total_loss,total_correct,e+1)) if plot_losses: plt.plot(losses) plt.grid(True) plt.title('Epoch {} Loss'.format(e+1)) plt.xlabel('minibatch number') plt.ylabel('minibatch loss') plt.show() return total_loss, total_correct tf.reset_default_graph() X = tf.placeholder(tf.float32, [None, 32, 32, 3]) y = tf.placeholder(tf.int64, [None]) is_training = tf.placeholder(tf.bool) net = CifarNet() net.forward(X,y,is_training) # Annealing the learning rate global_step = tf.Variable(0, trainable=False) starter_learning_rate = 1e-3 end_learning_rate = 5e-3 decay_steps = 10000 learning_rate = tf.train.polynomial_decay(starter_learning_rate, global_step, decay_steps, end_learning_rate, power=0.5) exp_learning_rate = tf.train.exponential_decay(starter_learning_rate, global_step, 100000, 0.96, staircase=True) # Feel free to play with this cell mean_loss = None optimizer = None # define our loss cross_entr_loss = tf.nn.softmax_cross_entropy_with_logits(labels=tf.one_hot(y,10), logits=net.predict) mean_loss = tf.reduce_mean(cross_entr_loss) # define our optimizer optimizer = tf.train.AdamOptimizer(exp_learning_rate) # batch normalization in tensorflow requires this extra dependency extra_update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS) with tf.control_dependencies(extra_update_ops): train_step = optimizer.minimize(mean_loss, global_step=global_step) # train with 10 epochs sess = tf.Session() try: with tf.device("/cpu:0") as dev: sess.run(tf.global_variables_initializer()) print('Training') net.run(sess, mean_loss, X_train, y_train, 10, 64, 200, train_step, True) print('Validation') net.run(sess, mean_loss, X_val, y_val, 1, 64) except tf.errors.InvalidArgumentError: print("no gpu found, please use Google Cloud if you want GPU acceleration") # view net model result on train and validation set print('Training') net.run(sess, mean_loss, X_train, y_train, 1, 64) print('Validation') net.run(sess, mean_loss, X_val, y_val, 1, 64) # check result on test print('Test') net.run(sess, mean_loss, X_test, y_test, 1, 64) # create a feed dictionary for this batch feed_dict = {X: X_test, y: y_test, is_training: False} # predict predict = sess.run(tf.nn.softmax(net.predict), feed_dict=feed_dict) predict_df = pd.DataFrame(predict, columns=classes) predict_df.head() ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/README.md ================================================ https://github.com/tensorflow/models/blob/master/tutorials/image/cifar10_estimator/ CIFAR-10 is a common benchmark in machine learning for image recognition. http://www.cs.toronto.edu/~kriz/cifar.html Code in this directory focuses on how to use TensorFlow Estimators to train and evaluate a CIFAR-10 ResNet model on: * A single host with one CPU; * A single host with multiple GPUs; * Multiple hosts with CPU or multiple GPUs; Before trying to run the model we highly encourage you to read all the README. ## Prerequisite 1. [Install](https://www.tensorflow.org/install/) TensorFlow version 1.2.1 or later. 2. Download the CIFAR-10 dataset and generate TFRecord files using the provided script. The script and associated command below will download the CIFAR-10 dataset and then generate a TFRecord for the training, validation, and evaluation datasets. ```shell python generate_cifar10_tfrecords.py --data-dir=${PWD}/cifar-10-data ``` After running the command above, you should see the following files in the --data-dir (```ls -R cifar-10-data```): * train.tfrecords * validation.tfrecords * eval.tfrecords ## Training on a single machine with GPUs or CPU Run the training on CPU only. After training, it runs the evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --num-gpus=0 \ --train-steps=1000 ``` Run the model on 2 GPUs using CPU as parameter server. After training, it runs the evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --num-gpus=2 \ --train-steps=1000 ``` Run the model on 2 GPUs using GPU as parameter server. It will run an experiment, which for local setting basically means it will run stop training a couple of times to perform evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --variable-strategy GPU \ --num-gpus=2 \ ``` There are more command line flags to play with; run `python cifar10_main.py --help` for details. ## Run distributed training ### (Optional) Running on Google Cloud Machine Learning Engine This example can be run on Google Cloud Machine Learning Engine (ML Engine), which will configure the environment and take care of running workers, parameters servers, and masters in a fault tolerant way. To install the command line tool, and set up a project and billing, see the quickstart [here](https://cloud.google.com/ml-engine/docs/quickstarts/command-line). You'll also need a Google Cloud Storage bucket for the data. If you followed the instructions above, you can just run: ``` MY_BUCKET=gs:// gsutil cp -r ${PWD}/cifar-10-data $MY_BUCKET/ ``` Then run the following command from the `tutorials/image` directory of this repository (the parent directory of this README): ``` gcloud ml-engine jobs submit training cifarmultigpu \ --runtime-version 1.2 \ --job-dir=$MY_BUCKET/model_dirs/cifarmultigpu \ --config cifar10_estimator/cmle_config.yaml \ --package-path cifar10_estimator/ \ --module-name cifar10_estimator.cifar10_main \ -- \ --data-dir=$MY_BUCKET/cifar-10-data \ --num-gpus=4 \ --train-steps=1000 ``` ### Set TF_CONFIG Considering that you already have multiple hosts configured, all you need is a `TF_CONFIG` environment variable on each host. You can set up the hosts manually or check [tensorflow/ecosystem](https://github.com/tensorflow/ecosystem) for instructions about how to set up a Cluster. The `TF_CONFIG` will be used by the `RunConfig` to know the existing hosts and their task: `master`, `ps` or `worker`. Here's an example of `TF_CONFIG`. ```python cluster = {'master': ['master-ip:8000'], 'ps': ['ps-ip:8000'], 'worker': ['worker-ip:8000']} TF_CONFIG = json.dumps( {'cluster': cluster, 'task': {'type': master, 'index': 0}, 'model_dir': 'gs:///', 'environment': 'cloud' }) ``` *Cluster* A cluster spec, which is basically a dictionary that describes all of the tasks in the cluster. More about it [here](https://www.tensorflow.org/deploy/distributed). In this cluster spec we are defining a cluster with 1 master, 1 ps and 1 worker. * `ps`: saves the parameters among all workers. All workers can read/write/update the parameters for model via ps. As some models are extremely large the parameters are shared among the ps (each ps stores a subset). * `worker`: does the training. * `master`: basically a special worker, it does training, but also restores and saves checkpoints and do evaluation. *Task* The Task defines what is the role of the current node, for this example the node is the master on index 0 on the cluster spec, the task will be different for each node. An example of the `TF_CONFIG` for a worker would be: ```python cluster = {'master': ['master-ip:8000'], 'ps': ['ps-ip:8000'], 'worker': ['worker-ip:8000']} TF_CONFIG = json.dumps( {'cluster': cluster, 'task': {'type': worker, 'index': 0}, 'model_dir': 'gs:///', 'environment': 'cloud' }) ``` *Model_dir* This is the path where the master will save the checkpoints, graph and TensorBoard files. For a multi host environment you may want to use a Distributed File System, Google Storage and DFS are supported. *Environment* By the default environment is *local*, for a distributed setting we need to change it to *cloud*. ### Running script Once you have a `TF_CONFIG` configured properly on each host you're ready to run on distributed settings. #### Master Run this on master: Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for 40000 steps. It will run evaluation a couple of times during training. The num_workers arugument is used only to update the learning rate correctly. Make sure the model_dir is the same as defined on the TF_CONFIG. ```shell python cifar10_main.py --data-dir=gs://path/cifar-10-data \ --job-dir=gs://path/model_dir/ \ --num-gpus=4 \ --train-steps=40000 \ --sync \ --num-workers=2 ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'master', '_is_chief': True, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } , '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} ... 2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:04.0 Total memory: 11.17GiB Free memory: 11.09GiB 2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:05.0 Total memory: 11.17GiB Free memory: 11.10GiB ... 2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=1; total_num_replicas=1 INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-0 2017-08-01 19:59:37.560775: I tensorflow/core/distributed_runtime/master_session.cc:999] Start master session 156fcb55fe6648d6 with config: intra_op_parallelism_threads: 1 gpu_options { per_process_gpu_memory_fraction: 1 } allow_soft_placement: true INFO:tensorflow:Saving checkpoints for 1 into gs://path/model_dir/model.ckpt. INFO:tensorflow:loss = 1.20682, step = 1 INFO:tensorflow:loss = 1.20682, learning_rate = 0.1 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 INFO:tensorflow:Starting evaluation at 2017-08-01-20:00:14 2017-08-01 20:00:15.745881: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Tesla K80, pci bus id: 0000:00:04.0) 2017-08-01 20:00:15.745949: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:1) -> (device: 1, name: Tesla K80, pci bus id: 0000:00:05.0) 2017-08-01 20:00:15.745958: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:2) -> (device: 2, name: Tesla K80, pci bus id: 0000:00:06.0) 2017-08-01 20:00:15.745964: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:3) -> (device: 3, name: Tesla K80, pci bus id: 0000:00:07.0) 2017-08-01 20:00:15.745969: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:4) -> (device: 4, name: Tesla K80, pci bus id: 0000:00:08.0) 2017-08-01 20:00:15.745975: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:5) -> (device: 5, name: Tesla K80, pci bus id: 0000:00:09.0) 2017-08-01 20:00:15.745987: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:6) -> (device: 6, name: Tesla K80, pci bus id: 0000:00:0a.0) 2017-08-01 20:00:15.745997: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:7) -> (device: 7, name: Tesla K80, pci bus id: 0000:00:0b.0) INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-10023 INFO:tensorflow:Evaluation [1/100] INFO:tensorflow:Evaluation [2/100] INFO:tensorflow:Evaluation [3/100] INFO:tensorflow:Evaluation [4/100] INFO:tensorflow:Evaluation [5/100] INFO:tensorflow:Evaluation [6/100] INFO:tensorflow:Evaluation [7/100] INFO:tensorflow:Evaluation [8/100] INFO:tensorflow:Evaluation [9/100] INFO:tensorflow:Evaluation [10/100] INFO:tensorflow:Evaluation [11/100] INFO:tensorflow:Evaluation [12/100] INFO:tensorflow:Evaluation [13/100] ... INFO:tensorflow:Evaluation [100/100] INFO:tensorflow:Finished evaluation at 2017-08-01-20:00:31 INFO:tensorflow:Saving dict for global step 1: accuracy = 0.0994, global_step = 1, loss = 630.425 ``` #### Worker Run this on worker: Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for 40000 steps. It will run evaluation a couple of times during training. Make sure the model_dir is the same as defined on the TF_CONFIG. ```shell python cifar10_main.py --data-dir=gs://path/cifar-10-data \ --job-dir=gs://path/model_dir/ \ --num-gpus=4 \ --train-steps=40000 \ --sync ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'worker', '_is_chief': False, '_cluster_spec': , '_model_dir': 'gs:///model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } ... 2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:04.0 Total memory: 11.17GiB Free memory: 11.09GiB 2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:05.0 Total memory: 11.17GiB Free memory: 11.10GiB ... 2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 INFO:tensorflow:Create CheckpointSaverHook. 2017-07-31 22:38:04.629150: I tensorflow/core/distributed_runtime/master.cc:209] CreateSession still waiting for response from worker: /job:master/replica:0/task:0 2017-07-31 22:38:09.263492: I tensorflow/core/distributed_runtime/master_session.cc:999] Start master session cc58f93b1e259b0c with config: intra_op_parallelism_threads: 1 gpu_options { per_process_gpu_memory_fraction: 1 } allow_soft_placement: true INFO:tensorflow:loss = 5.82382, step = 0 INFO:tensorflow:loss = 5.82382, learning_rate = 0.8 INFO:tensorflow:Average examples/sec: 1116.92 (1116.92), step = 10 INFO:tensorflow:Average examples/sec: 1233.73 (1377.83), step = 20 INFO:tensorflow:Average examples/sec: 1485.43 (2509.3), step = 30 INFO:tensorflow:Average examples/sec: 1680.27 (2770.39), step = 40 INFO:tensorflow:Average examples/sec: 1825.38 (2788.78), step = 50 INFO:tensorflow:Average examples/sec: 1929.32 (2697.27), step = 60 INFO:tensorflow:Average examples/sec: 2015.17 (2749.05), step = 70 INFO:tensorflow:loss = 37.6272, step = 79 (19.554 sec) INFO:tensorflow:loss = 37.6272, learning_rate = 0.8 (19.554 sec) INFO:tensorflow:Average examples/sec: 2074.92 (2618.36), step = 80 INFO:tensorflow:Average examples/sec: 2132.71 (2744.13), step = 90 INFO:tensorflow:Average examples/sec: 2183.38 (2777.21), step = 100 INFO:tensorflow:Average examples/sec: 2224.4 (2739.03), step = 110 INFO:tensorflow:Average examples/sec: 2240.28 (2431.26), step = 120 INFO:tensorflow:Average examples/sec: 2272.12 (2739.32), step = 130 INFO:tensorflow:Average examples/sec: 2300.68 (2750.03), step = 140 INFO:tensorflow:Average examples/sec: 2325.81 (2745.63), step = 150 INFO:tensorflow:Average examples/sec: 2347.14 (2721.53), step = 160 INFO:tensorflow:Average examples/sec: 2367.74 (2754.54), step = 170 INFO:tensorflow:loss = 27.8453, step = 179 (18.893 sec) ... ``` #### PS Run this on ps: The ps will not do training so most of the arguments won't affect the execution ```shell python cifar10_main.py --job-dir=gs://path/model_dir/ ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'ps', '_is_chief': False, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } , '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} 2017-07-31 22:54:58.928088: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job master -> {0 -> master-ip:8000} 2017-07-31 22:54:58.928153: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job ps -> {0 -> localhost:8000} 2017-07-31 22:54:58.928160: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job worker -> {0 -> worker-ip:8000} 2017-07-31 22:54:58.929873: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 ``` ## Visualizing results with TensorBoard When using Estimators you can also visualize your data in TensorBoard, with no changes in your code. You can use TensorBoard to visualize your TensorFlow graph, plot quantitative metrics about the execution of your graph, and show additional data like images that pass through it. You'll see something similar to this if you "point" TensorBoard to the `job dir` parameter you used to train or evaluate your model. Check TensorBoard during training or after it. Just point TensorBoard to the model_dir you chose on the previous step. ```shell tensorboard --log-dir="" ``` ## Warnings When runninng `cifar10_main.py` with `--sync` argument you may see an error similar to: ```python File "cifar10_main.py", line 538, in tf.app.run() File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run _sys.exit(main(_sys.argv[:1] + flags_passthrough)) File "cifar10_main.py", line 518, in main hooks), run_config=config) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 210, in run return _execute_schedule(experiment, schedule) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 47, in _execute_schedule return task() File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 501, in train_and_evaluate hooks=self._eval_hooks) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 681, in _call_evaluate hooks=hooks) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 292, in evaluate name=name) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 638, in _evaluate_model features, labels, model_fn_lib.ModeKeys.EVAL) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 545, in _call_model_fn features=features, labels=labels, **kwargs) File "cifar10_main.py", line 331, in _resnet_model_fn gradvars, global_step=tf.train.get_global_step()) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/sync_replicas_optimizer.py", line 252, in apply_gradients variables.global_variables()) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 170, in wrapped return _add_should_use_warning(fn(*args, **kwargs)) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 139, in _add_should_use_warning wrapped = TFShouldUseWarningWrapper(x) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 96, in __init__ stack = [s.strip() for s in traceback.format_stack()] ``` This should not affect your training, and should be fixed on the next releases. ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/__init__.py ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cifar10.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf HEIGHT = 32 WIDTH = 32 DEPTH = 3 class Cifar10DataSet(object): """Cifar10 data set. Described by http://www.cs.toronto.edu/~kriz/cifar.html. """ def __init__(self, data_dir, subset='train', use_distortion=True): self.data_dir = data_dir self.subset = subset self.use_distortion = use_distortion def get_filenames(self): if self.subset in ['train', 'valid', 'test']: return [os.path.join(self.data_dir, self.subset + '.tfrecords')] else: raise ValueError('Invalid data subset "%s"' % self.subset) def parser(self, serialized_example): """Parses a single tf.Example into image and label tensors.""" # Dimensions of the images in the CIFAR-10 dataset. # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the # input format. features = tf.parse_single_example( serialized_example, features={ 'id': tf.FixedLenFeature([], tf.int64), 'image': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), }) image = tf.decode_raw(features['image'], tf.uint8) image.set_shape([HEIGHT * WIDTH * DEPTH]) image = tf.cast( tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), tf.float32) label = tf.cast(features['label'], tf.int32) id = tf.cast(features['id'], tf.int32) # Custom preprocessing. image = self.preprocess(image) return id, image, label def make_batch(self, batch_size, repeat=None): """Read the images and labels from 'filenames'.""" filenames = self.get_filenames() repeat = repeat or (self.subset == 'train') # Repeat infinitely. dataset = tf.data.TFRecordDataset(filenames) if repeat: dataset = dataset.repeat() # Parse records. dataset = dataset.map( self.parser, num_parallel_calls=batch_size) # Potentially shuffle records. if self.subset == 'train': min_queue_examples = int( Cifar10DataSet.num_examples_per_epoch(self.subset) * 0.4) # Ensure that the capacity is sufficiently large to provide good random # shuffling. dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) # Batch it up. dataset = dataset.batch(batch_size) if repeat: iterator = dataset.make_one_shot_iterator() else: iterator = dataset.make_initializable_iterator() self.iterator = iterator return iterator def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch #... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries # refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME tf.summary.image('image', image) image = tf.image.resize_image_with_crop_or_pad(image, 40, 40) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) tf.summary.image('image/distort', image) return image @staticmethod def num_examples_per_epoch(subset='train'): if subset == 'train': return 45000 elif subset == 'valid': return 5000 elif subset == 'test': return 10000 else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cifar10_main.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model for classifying images from CIFAR-10 dataset. Support single-host training with one or multiple devices. ResNet as proposed in: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Deep Residual Learning for Image Recognition. arXiv:1512.03385 CIFAR-10 as in: http://www.cs.toronto.edu/~kriz/cifar.html """ from __future__ import division from __future__ import print_function import argparse import functools import itertools import os import cifar10 import cifar10_model import cifar10_utils import numpy as np import six from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf tf.logging.set_verbosity(tf.logging.INFO) def get_model_fn(num_gpus, variable_strategy, num_workers): """Returns a function that will build the resnet model.""" def _resnet_model_fn(features, labels, mode, params): """Resnet model body. Support single host, one or more GPU training. Parameter distribution can be either one of the following scheme. 1. CPU is the parameter server and manages gradient updates. 2. Parameters are distributed evenly across all GPUs, and the first GPU manages gradient updates. Args: features: a list of tensors, one for each tower labels: a list of tensors, one for each tower mode: ModeKeys.TRAIN or EVAL params: Hyperparameters suitable for tuning Returns: A EstimatorSpec object. """ is_training = (mode == tf.estimator.ModeKeys.TRAIN) weight_decay = params.weight_decay momentum = params.momentum tower_features = features tower_labels = labels tower_losses = [] tower_gradvars = [] tower_preds = [] # channels first (NCHW) is normally optimal on GPU and channels last (NHWC) # on CPU. The exception is Intel MKL on CPU which is optimal with # channels_last. data_format = params.data_format if not data_format: if num_gpus == 0: data_format = 'channels_last' else: data_format = 'channels_first' if num_gpus == 0: num_devices = 1 device_type = 'cpu' else: num_devices = num_gpus device_type = 'gpu' for i in range(num_devices): worker_device = '/{}:{}'.format(device_type, i) if variable_strategy == 'CPU': device_setter = cifar10_utils.local_device_setter( worker_device=worker_device) elif variable_strategy == 'GPU': device_setter = cifar10_utils.local_device_setter( ps_device_type='gpu', worker_device=worker_device, ps_strategy=tf.contrib.training.GreedyLoadBalancingStrategy( num_gpus, tf.contrib.training.byte_size_load_fn)) with tf.variable_scope('resnet', reuse=bool(i != 0)): with tf.name_scope('tower_%d' % i) as name_scope: with tf.device(device_setter): loss, gradvars, preds = _tower_fn( is_training, weight_decay, tower_features[i], tower_labels[i], data_format, params.num_layers, params.batch_norm_decay, params.batch_norm_epsilon) tower_losses.append(loss) tower_gradvars.append(gradvars) tower_preds.append(preds) if i == 0: # Only trigger batch_norm moving mean and variance update from # the 1st tower. Ideally, we should grab the updates from all # towers but these stats accumulate extremely fast so we can # ignore the other stats from the other towers without # significant detriment. update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, name_scope) # Now compute global loss and gradients. gradvars = [] with tf.name_scope('gradient_averaging'): all_grads = {} for grad, var in itertools.chain(*tower_gradvars): if grad is not None: all_grads.setdefault(var, []).append(grad) for var, grads in six.iteritems(all_grads): # Average gradients on the same device as the variables # to which they apply. with tf.device(var.device): if len(grads) == 1: avg_grad = grads[0] else: avg_grad = tf.multiply(tf.add_n(grads), 1. / len(grads)) gradvars.append((avg_grad, var)) # Device that runs the ops to apply global gradient updates. consolidation_device = '/gpu:0' if variable_strategy == 'GPU' else '/cpu:0' with tf.device(consolidation_device): # Suggested learning rate scheduling from # https://github.com/ppwwyyxx/tensorpack/blob/master/examples/ResNet/cifar10-resnet.py#L155 num_batches_per_epoch = cifar10.Cifar10DataSet.num_examples_per_epoch( 'train') // (params.train_batch_size * num_workers) boundaries = [ num_batches_per_epoch * x for x in np.array([82, 123, 300], dtype=np.int64) ] staged_lr = [params.learning_rate * x for x in [1, 0.1, 0.01, 0.002]] print('--------------learning rate boundaries', boundaries, 'staged_lr', staged_lr) learning_rate = tf.train.piecewise_constant(tf.train.get_global_step(), boundaries, staged_lr) loss = tf.reduce_mean(tower_losses, name='loss') examples_sec_hook = cifar10_utils.ExamplesPerSecondHook( params.train_batch_size, every_n_steps=10) tensors_to_log = {'learning_rate': learning_rate, 'loss': loss} logging_hook = tf.train.LoggingTensorHook( tensors=tensors_to_log, every_n_iter=100) train_hooks = [logging_hook, examples_sec_hook] print('------------------momentum', momentum) optimizer = tf.train.MomentumOptimizer( learning_rate=learning_rate, momentum=momentum) print('----------------params.sync', params.sync) if params.sync: optimizer = tf.train.SyncReplicasOptimizer( optimizer, replicas_to_aggregate=num_workers) sync_replicas_hook = optimizer.make_session_run_hook(params.is_chief) train_hooks.append(sync_replicas_hook) # Create single grouped train op train_op = [ optimizer.apply_gradients( gradvars, global_step=tf.train.get_global_step()) ] train_op.extend(update_ops) train_op = tf.group(*train_op) predictions = { 'classes': tf.concat([p['classes'] for p in tower_preds], axis=0), 'probabilities': tf.concat([p['probabilities'] for p in tower_preds], axis=0) } stacked_labels = tf.concat(labels, axis=0) metrics = { 'accuracy': tf.metrics.accuracy(stacked_labels, predictions['classes']) } return tf.estimator.EstimatorSpec( mode=mode, predictions=predictions, loss=loss, train_op=train_op, training_hooks=train_hooks, eval_metric_ops=metrics) return _resnet_model_fn def _tower_fn(is_training, weight_decay, feature, label, data_format, num_layers, batch_norm_decay, batch_norm_epsilon): """Build computation tower (Resnet). Args: is_training: true if is training graph. weight_decay: weight regularization strength, a float. feature: a Tensor. label: a Tensor. data_format: channels_last (NHWC) or channels_first (NCHW). num_layers: number of layers, an int. batch_norm_decay: decay for batch normalization, a float. batch_norm_epsilon: epsilon for batch normalization, a float. Returns: A tuple with the loss for the tower, the gradients and parameters, and predictions. """ print('--------------------------------') print('num_layers', num_layers, 'batch_norm_decay', batch_norm_decay, 'batch_norm_epsilon', batch_norm_epsilon, 'is_training', is_training, 'data_format', data_format) model = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=is_training, data_format=data_format) logits = model.forward_pass(feature, input_data_format='channels_last') tower_pred = { 'classes': tf.argmax(input=logits, axis=1), 'probabilities': tf.nn.softmax(logits) } tower_loss = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=label) tower_loss = tf.reduce_mean(tower_loss) model_params = tf.trainable_variables() print('------------weight_decay', weight_decay) tower_loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) tower_grad = tf.gradients(tower_loss, model_params) return tower_loss, zip(tower_grad, model_params), tower_pred def input_fn(data_dir, subset, num_shards, batch_size, use_distortion_for_training=True): """Create input graph for model. Args: data_dir: Directory where TFRecords representing the dataset are located. subset: one of 'train', 'validate' and 'eval'. num_shards: num of towers participating in data-parallel training. batch_size: total batch size for training to be divided by the number of shards. use_distortion_for_training: True to use distortions. Returns: two lists of tensors for features and labels, each of num_shards length. """ with tf.device('/cpu:0'): use_distortion = subset == 'train' and use_distortion_for_training dataset = cifar10.Cifar10DataSet(data_dir, subset, use_distortion) _, image_batch, label_batch = dataset.make_batch(batch_size, repeat=True) if num_shards <= 1: # No GPU available or only 1 GPU. return [image_batch], [label_batch] # Note that passing num=batch_size is safe here, even though # dataset.batch(batch_size) can, in some cases, return fewer than batch_size # examples. This is because it does so only when repeating for a limited # number of epochs, but our dataset repeats forever. image_batch = tf.unstack(image_batch, num=batch_size, axis=0) label_batch = tf.unstack(label_batch, num=batch_size, axis=0) feature_shards = [[] for i in range(num_shards)] label_shards = [[] for i in range(num_shards)] for i in xrange(batch_size): idx = i % num_shards feature_shards[idx].append(image_batch[i]) label_shards[idx].append(label_batch[i]) feature_shards = [tf.parallel_stack(x) for x in feature_shards] label_shards = [tf.parallel_stack(x) for x in label_shards] return feature_shards, label_shards def get_experiment_fn(data_dir, num_gpus, variable_strategy, use_distortion_for_training=True): """Returns an Experiment function. Experiments perform training on several workers in parallel, in other words experiments know how to invoke train and eval in a sensible fashion for distributed training. Arguments passed directly to this function are not tunable, all other arguments should be passed within tf.HParams, passed to the enclosed function. Args: data_dir: str. Location of the data for input_fns. num_gpus: int. Number of GPUs on each worker. variable_strategy: String. CPU to use CPU as the parameter server and GPU to use the GPUs as the parameter server. use_distortion_for_training: bool. See cifar10.Cifar10DataSet. Returns: A function (tf.estimator.RunConfig, tf.contrib.training.HParams) -> tf.contrib.learn.Experiment. Suitable for use by tf.contrib.learn.learn_runner, which will run various methods on Experiment (train, evaluate) based on information about the current runner in `run_config`. """ def _experiment_fn(run_config, hparams): """Returns an Experiment.""" # Create estimator. train_input_fn = functools.partial( input_fn, data_dir, subset='train', num_shards=num_gpus, batch_size=hparams.train_batch_size, use_distortion_for_training=use_distortion_for_training) eval_input_fn = functools.partial( input_fn, data_dir, subset='valid', batch_size=hparams.eval_batch_size, num_shards=num_gpus) num_eval_examples = cifar10.Cifar10DataSet.num_examples_per_epoch('valid') if num_eval_examples % hparams.eval_batch_size != 0: raise ValueError( 'validation set size must be multiple of eval_batch_size') train_steps = hparams.train_steps eval_steps = num_eval_examples // hparams.eval_batch_size classifier = tf.estimator.Estimator( model_fn=get_model_fn(num_gpus, variable_strategy, run_config.num_worker_replicas or 1), config=run_config, params=hparams) # Create experiment. return tf.contrib.learn.Experiment( classifier, train_input_fn=train_input_fn, eval_input_fn=eval_input_fn, train_steps=train_steps, eval_steps=eval_steps) return _experiment_fn def main(job_dir, data_dir, num_gpus, variable_strategy, use_distortion_for_training, log_device_placement, num_intra_threads, **hparams): # The env variable is on deprecation path, default is set to off. os.environ['TF_SYNC_ON_FINISH'] = '0' os.environ['TF_ENABLE_WINOGRAD_NONFUSED'] = '1' # Session configuration. sess_config = tf.ConfigProto( allow_soft_placement=True, log_device_placement=log_device_placement, intra_op_parallelism_threads=num_intra_threads, gpu_options=tf.GPUOptions(force_gpu_compatible=True)) config = cifar10_utils.RunConfig( session_config=sess_config, model_dir=job_dir) tf.contrib.learn.learn_runner.run( get_experiment_fn(data_dir, num_gpus, variable_strategy, use_distortion_for_training), run_config=config, hparams=tf.contrib.training.HParams( is_chief=config.is_chief, **hparams)) if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument( '--data-dir', type=str, required=True, help='The directory where the CIFAR-10 input data is stored.') parser.add_argument( '--job-dir', type=str, required=True, help='The directory where the model will be stored.') parser.add_argument( '--variable-strategy', choices=['CPU', 'GPU'], type=str, default='CPU', help='Where to locate variable operations') parser.add_argument( '--num-gpus', type=int, default=1, help='The number of gpus used. Uses only CPU if set to 0.') parser.add_argument( '--num-layers', type=int, default=44, help='The number of layers of the model.') parser.add_argument( '--train-steps', type=int, default=80000, help='The number of steps to use for training.') parser.add_argument( '--train-batch-size', type=int, default=128, help='Batch size for training.') parser.add_argument( '--eval-batch-size', type=int, default=100, help='Batch size for validation.') parser.add_argument( '--momentum', type=float, default=0.9, help='Momentum for MomentumOptimizer.') parser.add_argument( '--weight-decay', type=float, default=2e-4, help='Weight decay for convolutions.') parser.add_argument( '--learning-rate', type=float, default=0.1, help="""\ This is the inital learning rate value. The learning rate will decrease during training. For more details check the model_fn implementation in this file.\ """) parser.add_argument( '--use-distortion-for-training', type=bool, default=True, help='If doing image distortion for training.') parser.add_argument( '--sync', action='store_true', default=False, help="""\ If present when running in a distributed environment will run on sync mode.\ """) parser.add_argument( '--num-intra-threads', type=int, default=0, help="""\ Number of threads to use for intra-op parallelism. When training on CPU set to 0 to have the system pick the appropriate number or alternatively set it to the number of physical CPU cores.\ """) parser.add_argument( '--num-inter-threads', type=int, default=0, help="""\ Number of threads to use for inter-op parallelism. If set to 0, the system will pick an appropriate number.\ """) parser.add_argument( '--data-format', type=str, default=None, help="""\ If not set, the data format best for the training device is used. Allowed values: channels_first (NCHW) channels_last (NHWC).\ """) parser.add_argument( '--log-device-placement', action='store_true', default=False, help='Whether to log device placement.') parser.add_argument( '--batch-norm-decay', type=float, default=0.997, help='Decay for batch norm.') parser.add_argument( '--batch-norm-epsilon', type=float, default=1e-5, help='Epsilon for batch norm.') args = parser.parse_args() if args.num_gpus > 0: assert tf.test.is_gpu_available(), "Requested GPUs but none found." if args.num_gpus < 0: raise ValueError( 'Invalid GPU count: \"--num-gpus\" must be 0 or a positive integer.') if args.num_gpus == 0 and args.variable_strategy == 'GPU': raise ValueError('num-gpus=0, CPU must be used as parameter server. Set' '--variable-strategy=CPU.') if (args.num_layers - 2) % 6 != 0: raise ValueError('Invalid --num-layers parameter.') if args.num_gpus != 0 and args.train_batch_size % args.num_gpus != 0: raise ValueError('--train-batch-size must be multiple of --num-gpus.') if args.num_gpus != 0 and args.eval_batch_size % args.num_gpus != 0: raise ValueError('--eval-batch-size must be multiple of --num-gpus.') main(**vars(args)) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cifar10_model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Model class for Cifar10 Dataset.""" from __future__ import division from __future__ import print_function import tensorflow as tf import model_base import melt class ResNetCifar10(model_base.ResNet): """Cifar10 model with ResNetV1 and basic residual block.""" def __init__(self, num_layers, is_training, batch_norm_decay, batch_norm_epsilon, data_format='channels_first'): super(ResNetCifar10, self).__init__( is_training, data_format, batch_norm_decay, batch_norm_epsilon ) self.n = (num_layers - 2) // 6 # Add one in case label starts with 1. No impact if label starts with 0. self.num_classes = 10 + 1 self.filters = [16, 16, 32, 64] self.strides = [1, 2, 2] def init_predict(self, input_data_format='channels_last'): #self.image_feed = tf.placeholder_with_default(tf.constant([test_image]), [None, ], name='image_feature') self.image_feed = tf.placeholder(tf.string, [None,], name='image') tf.add_to_collection('feed', self.image_feed) image = tf.map_fn(lambda img: melt.image.decode_image(img, image_format='png', dtype=tf.float32), self.image_feed, dtype=tf.float32) self.predict(image) tf.add_to_collection('classes', self.pred['classes']) tf.add_to_collection('probabilities', self.pred['probabilities']) tf.add_to_collection('logits', self.logits) tf.add_to_collection('pre_logits', self.pre_logits) def forward_pass(self, x, input_data_format='channels_last'): # TODO.. without this forward var scope inference_fn will cause problem for self._conv as try to add conv 43.. FIMXE with tf.variable_scope('forward'): """Build the core model within the graph.""" if self._data_format != input_data_format: if input_data_format == 'channels_last': # Computation requires channels_first. x = tf.transpose(x, [0, 3, 1, 2]) else: # Computation requires channels_last. x = tf.transpose(x, [0, 2, 3, 1]) # Image standardization. x = x / 128 - 1 x = self._conv(x, 3, 16, 1) x = self._batch_norm(x) x = self._relu(x) # Use basic (non-bottleneck) block and ResNet V1 (post-activation). res_func = self._residual_v1 # 3 stages of block stacking. for i in range(3): with tf.name_scope('stage'): for j in range(self.n): if j == 0: # First block in a stage, filters and strides may change. x = res_func(x, 3, self.filters[i], self.filters[i + 1], self.strides[i]) else: # Following blocks in a stage, constant filters and unit stride. x = res_func(x, 3, self.filters[i + 1], self.filters[i + 1], 1) x = self._global_avg_pool(x) self.pre_logits = x x = self._fully_connected(x, self.num_classes) self.logits = x return x def predict(self, x=None, input_data_format='channels_last'): if x is not None: self.forward_pass(x, input_data_format) logits = self.logits pred = { 'classes': tf.to_int32(tf.argmax(input=logits, axis=1)), 'probabilities': tf.nn.softmax(logits) } self.pred = pred return pred ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cifar10_multi_gpu_train.py ================================================ # Copyright 2015 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A binary to train CIFAR-10 using multiple GPUs with synchronous updates. Accuracy: cifar10_multi_gpu_train.py achieves ~86% accuracy after 100K steps (256 epochs of data) as judged by cifar10_eval.py. Speed: With batch_size 128. System | Step Time (sec/batch) | Accuracy -------------------------------------------------------------------- 1 Tesla K20m | 0.35-0.60 | ~86% at 60K steps (5 hours) 1 Tesla K40m | 0.25-0.35 | ~86% at 100K steps (4 hours) 2 Tesla K20m | 0.13-0.20 | ~84% at 30K steps (2.5 hours) 3 Tesla K20m | 0.13-0.18 | ~84% at 30K steps 4 Tesla K20m | ~0.10 | ~84% at 30K steps Usage: Please see the tutorial and website for how to download the CIFAR-10 data set, compile the program and train the model. http://tensorflow.org/tutorials/deep_cnn/ """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from datetime import datetime import os.path import re import time import numpy as np from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf import cifar10 FLAGS = tf.app.flags.FLAGS tf.app.flags.DEFINE_string('train_dir', '/tmp/cifar10_train', """Directory where to write event logs """ """and checkpoint.""") tf.app.flags.DEFINE_integer('max_steps', 1000000, """Number of batches to run.""") tf.app.flags.DEFINE_integer('num_gpus', 1, """How many GPUs to use.""") tf.app.flags.DEFINE_boolean('log_device_placement', False, """Whether to log device placement.""") def tower_loss(scope, images, labels): """Calculate the total loss on a single tower running the CIFAR model. Args: scope: unique prefix string identifying the CIFAR tower, e.g. 'tower_0' images: Images. 4D tensor of shape [batch_size, height, width, 3]. labels: Labels. 1D tensor of shape [batch_size]. Returns: Tensor of shape [] containing the total loss for a batch of data """ # Build inference Graph. logits = cifar10.inference(images) # Build the portion of the Graph calculating the losses. Note that we will # assemble the total_loss using a custom function below. _ = cifar10.loss(logits, labels) # Assemble all of the losses for the current tower only. losses = tf.get_collection('losses', scope) # Calculate the total loss for the current tower. total_loss = tf.add_n(losses, name='total_loss') # Attach a scalar summary to all individual losses and the total loss; do the # same for the averaged version of the losses. for l in losses + [total_loss]: # Remove 'tower_[0-9]/' from the name in case this is a multi-GPU training # session. This helps the clarity of presentation on tensorboard. loss_name = re.sub('%s_[0-9]*/' % cifar10.TOWER_NAME, '', l.op.name) tf.summary.scalar(loss_name, l) return total_loss def average_gradients(tower_grads): """Calculate the average gradient for each shared variable across all towers. Note that this function provides a synchronization point across all towers. Args: tower_grads: List of lists of (gradient, variable) tuples. The outer list is over individual gradients. The inner list is over the gradient calculation for each tower. Returns: List of pairs of (gradient, variable) where the gradient has been averaged across all towers. """ average_grads = [] for grad_and_vars in zip(*tower_grads): # Note that each grad_and_vars looks like the following: # ((grad0_gpu0, var0_gpu0), ... , (grad0_gpuN, var0_gpuN)) grads = [] for g, _ in grad_and_vars: # Add 0 dimension to the gradients to represent the tower. expanded_g = tf.expand_dims(g, 0) # Append on a 'tower' dimension which we will average over below. grads.append(expanded_g) # Average over the 'tower' dimension. grad = tf.concat(axis=0, values=grads) grad = tf.reduce_mean(grad, 0) # Keep in mind that the Variables are redundant because they are shared # across towers. So .. we will just return the first tower's pointer to # the Variable. v = grad_and_vars[0][1] grad_and_var = (grad, v) average_grads.append(grad_and_var) return average_grads def train(): """Train CIFAR-10 for a number of steps.""" with tf.Graph().as_default(), tf.device('/cpu:0'): # Create a variable to count the number of train() calls. This equals the # number of batches processed * FLAGS.num_gpus. global_step = tf.get_variable( 'global_step', [], initializer=tf.constant_initializer(0), trainable=False) # Calculate the learning rate schedule. num_batches_per_epoch = (cifar10.NUM_EXAMPLES_PER_EPOCH_FOR_TRAIN / FLAGS.batch_size) decay_steps = int(num_batches_per_epoch * cifar10.NUM_EPOCHS_PER_DECAY) # Decay the learning rate exponentially based on the number of steps. lr = tf.train.exponential_decay(cifar10.INITIAL_LEARNING_RATE, global_step, decay_steps, cifar10.LEARNING_RATE_DECAY_FACTOR, staircase=True) # Create an optimizer that performs gradient descent. opt = tf.train.GradientDescentOptimizer(lr) # Get images and labels for CIFAR-10. images, labels = cifar10.distorted_inputs() batch_queue = tf.contrib.slim.prefetch_queue.prefetch_queue( [images, labels], capacity=2 * FLAGS.num_gpus) # Calculate the gradients for each model tower. tower_grads = [] with tf.variable_scope(tf.get_variable_scope()): for i in xrange(FLAGS.num_gpus): with tf.device('/gpu:%d' % i): with tf.name_scope('%s_%d' % (cifar10.TOWER_NAME, i)) as scope: # Dequeues one batch for the GPU image_batch, label_batch = batch_queue.dequeue() # Calculate the loss for one tower of the CIFAR model. This function # constructs the entire CIFAR model but shares the variables across # all towers. loss = tower_loss(scope, image_batch, label_batch) # Reuse variables for the next tower. tf.get_variable_scope().reuse_variables() # Retain the summaries from the final tower. summaries = tf.get_collection(tf.GraphKeys.SUMMARIES, scope) # Calculate the gradients for the batch of data on this CIFAR tower. grads = opt.compute_gradients(loss) # Keep track of the gradients across all towers. tower_grads.append(grads) # We must calculate the mean of each gradient. Note that this is the # synchronization point across all towers. grads = average_gradients(tower_grads) # Add a summary to track the learning rate. summaries.append(tf.summary.scalar('learning_rate', lr)) # Add histograms for gradients. for grad, var in grads: if grad is not None: summaries.append(tf.summary.histogram(var.op.name + '/gradients', grad)) # Apply the gradients to adjust the shared variables. apply_gradient_op = opt.apply_gradients(grads, global_step=global_step) # Add histograms for trainable variables. for var in tf.trainable_variables(): summaries.append(tf.summary.histogram(var.op.name, var)) # Track the moving averages of all trainable variables. variable_averages = tf.train.ExponentialMovingAverage( cifar10.MOVING_AVERAGE_DECAY, global_step) variables_averages_op = variable_averages.apply(tf.trainable_variables()) # Group all updates to into a single train op. train_op = tf.group(apply_gradient_op, variables_averages_op) # Create a saver. saver = tf.train.Saver(tf.global_variables()) # Build the summary operation from the last tower summaries. summary_op = tf.summary.merge(summaries) # Build an initialization operation to run below. init = tf.global_variables_initializer() # Start running operations on the Graph. allow_soft_placement must be set to # True to build towers on GPU, as some of the ops do not have GPU # implementations. sess = tf.Session(config=tf.ConfigProto( allow_soft_placement=True, log_device_placement=FLAGS.log_device_placement)) sess.run(init) # Start the queue runners. tf.train.start_queue_runners(sess=sess) summary_writer = tf.summary.FileWriter(FLAGS.train_dir, sess.graph) for step in xrange(FLAGS.max_steps): start_time = time.time() _, loss_value = sess.run([train_op, loss]) duration = time.time() - start_time assert not np.isnan(loss_value), 'Model diverged with loss = NaN' if step % 10 == 0: num_examples_per_step = FLAGS.batch_size * FLAGS.num_gpus examples_per_sec = num_examples_per_step / duration sec_per_batch = duration / FLAGS.num_gpus format_str = ('%s: step %d, loss = %.2f (%.1f examples/sec; %.3f ' 'sec/batch)') print (format_str % (datetime.now(), step, loss_value, examples_per_sec, sec_per_batch)) if step % 100 == 0: summary_str = sess.run(summary_op) summary_writer.add_summary(summary_str, step) # Save the model checkpoint periodically. if step % 1000 == 0 or (step + 1) == FLAGS.max_steps: checkpoint_path = os.path.join(FLAGS.train_dir, 'model.ckpt') saver.save(sess, checkpoint_path, global_step=step) def main(argv=None): # pylint: disable=unused-argument #cifar10.maybe_download_and_extract() if tf.gfile.Exists(FLAGS.train_dir): tf.gfile.DeleteRecursively(FLAGS.train_dir) tf.gfile.MakeDirs(FLAGS.train_dir) train() if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cifar10_utils.py ================================================ import collections import six import tensorflow as tf from tensorflow.python.platform import tf_logging as logging from tensorflow.core.framework import node_def_pb2 from tensorflow.python.framework import device as pydev from tensorflow.python.training import basic_session_run_hooks from tensorflow.python.training import session_run_hook from tensorflow.python.training import training_util from tensorflow.python.training import device_setter from tensorflow.contrib.learn.python.learn import run_config # TODO(b/64848083) Remove once uid bug is fixed class RunConfig(tf.contrib.learn.RunConfig): def uid(self, whitelist=None): """Generates a 'Unique Identifier' based on all internal fields. Caller should use the uid string to check `RunConfig` instance integrity in one session use, but should not rely on the implementation details, which is subject to change. Args: whitelist: A list of the string names of the properties uid should not include. If `None`, defaults to `_DEFAULT_UID_WHITE_LIST`, which includes most properties user allowes to change. Returns: A uid string. """ if whitelist is None: whitelist = run_config._DEFAULT_UID_WHITE_LIST state = {k: v for k, v in self.__dict__.items() if not k.startswith('__')} # Pop out the keys in whitelist. for k in whitelist: state.pop('_' + k, None) ordered_state = collections.OrderedDict( sorted(state.items(), key=lambda t: t[0])) # For class instance without __repr__, some special cares are required. # Otherwise, the object address will be used. if '_cluster_spec' in ordered_state: ordered_state['_cluster_spec'] = collections.OrderedDict( sorted(ordered_state['_cluster_spec'].as_dict().items(), key=lambda t: t[0]) ) return ', '.join( '%s=%r' % (k, v) for (k, v) in six.iteritems(ordered_state)) class ExamplesPerSecondHook(session_run_hook.SessionRunHook): """Hook to print out examples per second. Total time is tracked and then divided by the total number of steps to get the average step time and then batch_size is used to determine the running average of examples per second. The examples per second for the most recent interval is also logged. """ def __init__( self, batch_size, every_n_steps=100, every_n_secs=None,): """Initializer for ExamplesPerSecondHook. Args: batch_size: Total batch size used to calculate examples/second from global time. every_n_steps: Log stats every n steps. every_n_secs: Log stats every n seconds. """ if (every_n_steps is None) == (every_n_secs is None): raise ValueError('exactly one of every_n_steps' ' and every_n_secs should be provided.') self._timer = basic_session_run_hooks.SecondOrStepTimer( every_steps=every_n_steps, every_secs=every_n_secs) self._step_train_time = 0 self._total_steps = 0 self._batch_size = batch_size def begin(self): self._global_step_tensor = training_util.get_global_step() if self._global_step_tensor is None: raise RuntimeError( 'Global step should be created to use StepCounterHook.') def before_run(self, run_context): # pylint: disable=unused-argument return basic_session_run_hooks.SessionRunArgs(self._global_step_tensor) def after_run(self, run_context, run_values): _ = run_context global_step = run_values.results if self._timer.should_trigger_for_step(global_step): elapsed_time, elapsed_steps = self._timer.update_last_triggered_step( global_step) if elapsed_time is not None: steps_per_sec = elapsed_steps / elapsed_time self._step_train_time += elapsed_time self._total_steps += elapsed_steps average_examples_per_sec = self._batch_size * ( self._total_steps / self._step_train_time) current_examples_per_sec = steps_per_sec * self._batch_size # Average examples/sec followed by current examples/sec logging.info('%s: %g (%g), step = %g', 'Average examples/sec', average_examples_per_sec, current_examples_per_sec, self._total_steps) def local_device_setter(num_devices=1, ps_device_type='cpu', worker_device='/cpu:0', ps_ops=None, ps_strategy=None): if ps_ops == None: ps_ops = ['Variable', 'VariableV2', 'VarHandleOp'] if ps_strategy is None: ps_strategy = device_setter._RoundRobinStrategy(num_devices) if not six.callable(ps_strategy): raise TypeError("ps_strategy must be callable") def _local_device_chooser(op): current_device = pydev.DeviceSpec.from_string(op.device or "") node_def = op if isinstance(op, node_def_pb2.NodeDef) else op.node_def if node_def.op in ps_ops: ps_device_spec = pydev.DeviceSpec.from_string( '/{}:{}'.format(ps_device_type, ps_strategy(op))) ps_device_spec.merge_from(current_device) return ps_device_spec.to_string() else: worker_device_spec = pydev.DeviceSpec.from_string(worker_device or "") worker_device_spec.merge_from(current_device) return worker_device_spec.to_string() return _local_device_chooser ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/cmle_config.yaml ================================================ trainingInput: scaleTier: CUSTOM masterType: complex_model_m_gpu workerType: complex_model_m_gpu parameterServerType: complex_model_m workerCount: 1 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/evaluator.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('draw_pr', True, '') flags.DEFINE_float('precision_thre', 0.8, '') from tensorboard import summary as summary_lib from collections import defaultdict import numpy as np from gezi import Timer import gezi import melt logging = melt.logging import pandas as pd pd.set_option('display.max_colwidth', -1) import deepiu classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') def write(ids, predicts, model_path, labels=None, images=None, suffix='valid_info'): tb = pd.DataFrame() tb['id'] = ids predicts = [classes[x] for x in predicts] if labels is not None: tb['predict'] = predicts labels = [classes[x] for x in labels] tb['label'] = labels ofile = model_path + '.valid_error.png' from deepiu.visualize.classify import plot_example_errors plot_example_errors(images, labels, predicts, smooth=True, #smooth=False, #class_names=classes, image_names=ids, out_file=ofile, max_show=9) else: tb['label'] = predicts ofile = model_path + '.%s' % suffix tb.to_csv(ofile, index=False) def evaluate(eval_ops, iterator, num_steps, num_examples, model_path=None, num_gpus=1, sess=None): #timer = gezi.Timer('evaluate') if model_path: ids_list = [] predictions_list = [] labels_list = [] losses = [] top_preds_list = [] if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) for _ in range(num_steps): results = sess.run(eval_ops) for i in range(num_gpus): ids, loss, predictions, top_preds, labels = results[i] ids = gezi.decode(ids) #images = images.astype(np.uint8) losses.append(loss) predictions_list.append(predictions) top_preds_list.append(top_preds) labels_list.append(labels) if model_path: ids_list.append(ids) # notice loss might be not so accurate due to final batch padding but that's not big problem loss = np.mean(losses) if model_path: ids = np.concatenate(ids_list)[:num_examples] predicts = np.concatenate(predictions_list)[:num_examples] top_preds = np.concatenate(top_preds_list)[:num_examples] labels = np.concatenate(labels_list)[:num_examples] acc = np.mean(np.equal(predicts, labels)) results = [loss, acc] names = ['metric/valid/loss', 'metric/valid/acc'] if model_path: write(ids, predicts, model_path, labels, suffix='valid_info' ) #timer.print() #print(len(predicts)) return results, names def inference(ops, iterator, num_steps, num_examples, model_path=None, num_gpus=1, sess=None): ids_list = [] predictions_list = [] id_, predicts_ = ops if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) for _ in range(num_steps): results = sess.run(ops) for i in range(num_gpus): ids, predictions = results[i] predictions_list.append(predictions) ids_list.append(ids) ids = np.concatenate(ids_list)[:num_examples] predicts = np.concatenate(predictions_list)[:num_examples] write(ids, predicts, model_path, labels=None, suffix='infer_info' ) # def evaluate(eval_ops, iterator, model_path=None, sess=None): # if model_path: # ids_list = [] # predictions_list = [] # labels_list = [] # losses = [] # images_list = [] # id_, loss_, predicts_, labels_, images_ = eval_ops # if not sess: # sess = melt.get_session() # # for prcurve # sess.run(iterator.initializer) # try: # while True: # ids, loss, predictions, labels, images = sess.run(eval_ops) # images = images.astype(np.uint8) # losses.append(loss) # predictions_list.append(predictions) # labels_list.append(labels) # images_list.append(images) # if model_path: # ids_list.append(ids) # except tf.errors.OutOfRangeError: # loss = np.mean(losses) # predicts = np.concatenate(predictions_list) # labels = np.concatenate(labels_list) # images = np.concatenate(images_list) # acc = np.mean(np.equal(predicts, labels)) # results = [loss, acc] # names = ['metric/valid/loss/avg', 'metric/valid/acc'] # if model_path: # write(np.concatenate(ids_list), # predicts, # model_path, # labels, # images, # suffix='valid_info' # ) # return results, names # def inference(ops, iterator, model_path=None, sess=None): # assert model_path # if model_path: # ids_list = [] # predictions_list = [] # id_, predicts_ = ops # if not sess: # sess = melt.get_session() # # for prcurve # sess.run(iterator.initializer) # try: # while True: # ids, predictions = sess.run(ops) # predictions_list.append(predictions) # if model_path: # ids_list.append(ids) # except tf.errors.OutOfRangeError: # predicts = np.concatenate(predictions_list) # if model_path: # write(np.concatenate(ids_list), # predicts, # model_path, # labels=None, # suffix='infer_info' # ) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/gen-records.sh ================================================ # notice must be python2 for python3 refer to https://www.cs.toronto.edu/~kriz/cifar.html dict = pickle.load(fo, encoding='bytes') python=/home/gezi/pyenv/bin/python $python generate_cifar10_tfrecords.py --data-dir /home/gezi/data/cifar10_data2/ ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/generate_cifar10_tfrecords.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Read CIFAR-10 data from pickled numpy arrays and writes TFRecords. Generates tf.train.Example protos and writes them to TFRecord files from the python version of the CIFAR-10 dataset downloaded from https://www.cs.toronto.edu/~kriz/cifar.html. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import tarfile from six.moves import cPickle as pickle from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf import glob import cv2 import melt import gezi CIFAR_FILENAME = 'cifar-10-python.tar.gz' CIFAR_DOWNLOAD_URL = 'https://www.cs.toronto.edu/~kriz/' + CIFAR_FILENAME CIFAR_LOCAL_FOLDER = 'cifar-10-batches-py' NUM_FOLDS = 10 classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') classes_map = dict(zip(classes, range(len(classes)))) print('----------', classes_map) import pandas as pd l = pd.read_csv('./mount/data/kaggle/cifar-10/trainLabels.csv') m = {} for i in range(len(l)): m[l.id[i]] = l.label[i] def _int64_feature(value): return tf.train.Feature(int64_list=tf.train.Int64List(value=[value])) def _bytes_feature(value): return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value])) def convert_to_tfrecord(input_files, output_file): """Converts a file to TFRecords.""" print('Generating %s' % output_file) with tf.python_io.TFRecordWriter(output_file) as record_writer: for input_file in input_files: id = int(os.path.basename(input_file)[:-4]) img = cv2.imread(input_file) # turn to channel first #img = img.transpose(2,0,1) if 'test' not in output_file: label = classes_map[m[id]] else: label = -1 example = tf.train.Example(features=tf.train.Features( feature={ 'id': _int64_feature(id), 'image': _bytes_feature(img.tobytes()), 'label': _int64_feature(label) })) record_writer.write(example.SerializeToString()) def main(data_dir): input_dir = './mount/data/kaggle/cifar-10' input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train')) if int(os.path.basename(f)[:-4]) % NUM_FOLDS != 0] print('train:', len(input_files)) output_file = os.path.join(data_dir, 'train.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train')) if int(os.path.basename(f)[:-4]) % NUM_FOLDS == 0] input_files = sorted(input_files, key=lambda f:int(os.path.basename(f)[:-4])) print('valid:', len(input_files)) output_file = os.path.join(data_dir, 'valid.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = glob.glob('%s/%s/*.png' % (input_dir, 'test')) input_files = sorted(input_files, key=lambda f:int(os.path.basename(f)[:-4])) print('test:', len(input_files)) output_file = os.path.join(data_dir, 'test.tfrecords') convert_to_tfrecord(input_files, output_file) print('Done!') if __name__ == '__main__': data_dir = './mount/data/cifar10' main(data_dir) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/inference.py ================================================ import melt p = melt.SimplePredictor('./mount/temp/cifar10/model/resnet.momentum.decay/epoch/model.ckpt-30.00-10530', key='pre_logits') feature = p.inference([melt.read_image('./mount/data/kaggle/cifar-10/test/10.png')]) print(feature) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/model_base.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model. Related papers: https://arxiv.org/pdf/1603.05027v2.pdf https://arxiv.org/pdf/1512.03385v1.pdf https://arxiv.org/pdf/1605.07146v1.pdf """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class ResNet(object): """ResNet model.""" def __init__(self, is_training, data_format, batch_norm_decay, batch_norm_epsilon): """ResNet constructor. Args: is_training: if build training or inference model. data_format: the data_format used during computation. one of 'channels_first' or 'channels_last'. """ self._batch_norm_decay = batch_norm_decay self._batch_norm_epsilon = batch_norm_epsilon self._is_training = is_training assert data_format in ('channels_first', 'channels_last') self._data_format = data_format def forward_pass(self, x): raise NotImplementedError( 'forward_pass() is implemented in ResNet sub classes') def _residual_v1(self, x, kernel_size, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers, using Plan A for shortcut connection.""" del activate_before_residual with tf.name_scope('residual_v1') as name_scope: orig_x = x x = self._conv(x, kernel_size, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, kernel_size, out_filter, 1) x = self._batch_norm(x) if in_filter != out_filter: orig_x = self._avg_pool(orig_x, stride, stride) pad = (out_filter - in_filter) // 2 if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = self._relu(tf.add(x, orig_x)) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers with preactivation, plan A shortcut.""" with tf.name_scope('residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, [1, 1, 1, 1]) if in_filter != out_filter: pad = (out_filter - in_filter) // 2 orig_x = self._avg_pool(orig_x, stride, stride) if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _bottleneck_residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Bottleneck residual unit with 3 sub layers, plan B shortcut.""" with tf.name_scope('bottle_residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter // 4, stride, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) # pad when stride isn't unit x = self._conv(x, 3, out_filter // 4, 1, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter, 1, is_atrous=True) if in_filter != out_filter: orig_x = self._conv(orig_x, 1, out_filter, stride, is_atrous=True) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _conv(self, x, kernel_size, filters, strides, is_atrous=False): """Convolution.""" padding = 'SAME' if not is_atrous and strides > 1: pad = kernel_size - 1 pad_beg = pad // 2 pad_end = pad - pad_beg if self._data_format == 'channels_first': x = tf.pad(x, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) else: x = tf.pad(x, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) padding = 'VALID' return tf.layers.conv2d( inputs=x, kernel_size=kernel_size, filters=filters, strides=strides, padding=padding, use_bias=False, data_format=self._data_format) def _batch_norm(self, x): if self._data_format == 'channels_first': data_format = 'NCHW' else: data_format = 'NHWC' return tf.contrib.layers.batch_norm( x, decay=self._batch_norm_decay, center=True, scale=True, epsilon=self._batch_norm_epsilon, is_training=self._is_training, fused=True, data_format=data_format) def _relu(self, x): return tf.nn.relu(x) def _fully_connected(self, x, out_dim): with tf.name_scope('fully_connected') as name_scope: x = tf.layers.dense(x, out_dim) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _avg_pool(self, x, pool_size, stride): with tf.name_scope('avg_pool') as name_scope: x = tf.layers.average_pooling2d( x, pool_size, stride, 'SAME', data_format=self._data_format) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _global_avg_pool(self, x): with tf.name_scope('global_avg_pool') as name_scope: assert x.get_shape().ndims == 4 if self._data_format == 'channels_first': x = tf.reduce_mean(x, [2, 3]) else: x = tf.reduce_mean(x, [1, 2]) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/prepare.sh ================================================ pyenv python generate_cifar10_tfrecords.py --data-dir=/home/gezi/data/cifar10 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/readme ================================================ use ./train-melt-momentum2-batch128.sh this is the same as tensorflow tuorial which set learning rate 0.1 0.01 ... 500 epoch will get valid_loss 0.4307 valid_acc 0.9294 test_acc 0.93010 use ./train-melt-momentum-decay.sh this is the same as above but set learning rate decay 0.99 per epoch 500 epoch will get valid_loss 0.3297 valid_acc 0.9359 test_acc 0.9367 ./train-melt-momentum-decay-2gpu.sh is 2gpu version ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-2gpu-2.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --variable-strategy GPU \ --train-steps=110000 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu.2 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-2gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-4gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=4 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.4gpu ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-2gpu.sh ================================================ python ./train.py \ --save_interval_epochs 10 \ --save_interval_steps 1000 \ --model_dir /home/gezi/temp/cifar10/model/resnet.2gpu \ --optimizer momentum \ --num_gpus=2 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99.2gpu \ --batch_size_by_gpu_num=1 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-decay98.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay98 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.98 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.2gpu \ --variable_strategy=cpu \ --batch_size_per_gpu=0 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum-decay-batch64.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.batch64 \ --batch_size=64 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum2-batch128-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128.2gpu \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum2-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt-momentum2.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train-melt.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train/train.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=1 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback #import evaluator import cifar10 import cifar10_model import cifar10_utils import evaluator eval_names = None label_batch = None def tower_loss(model, feature, label): logits = model.forward_pass(feature, input_data_format='channels_last') weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=label) loss = tf.reduce_mean(loss) model_params = tf.trainable_variables() loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) return loss # import tfmpl # @tfmpl.figure_tensor # def draw_confusion_matrix(matrix): # '''Draw confusion matrix for MNIST.''' # fig = tfmpl.create_figure(figsize=(7,7)) # ax = fig.add_subplot(111) # ax.set_title('Confusion matrix for MNIST classification') # tfmpl.plots.confusion_matrix.draw( # ax, matrix, # axis_labels=['Digit ' + str(x) for x in range(10)], # normalize=True # ) # return fig def main(_): num_train_examples = 45000 melt.apps.train.init() batch_size = melt.batch_size() num_gpus = melt.num_gpus() batch_size_per_gpu = FLAGS.batch_size # batch size not changed but FLAGS.batch_size will change to batch_size / num_gpus #print('--------------batch_size, FLAGS.batch_size, num_steps_per_epoch', batch_size, FLAGS.batch_size, num_train_examples // batch_size) global_scope = FLAGS.algo with tf.variable_scope(global_scope) as global_scope: data_format = 'channels_first' num_layers = 44 batch_norm_decay = 0.997 batch_norm_epsilon = 1e-05 data_dir = './mount/data/cifar10/' with tf.variable_scope('main') as scope: model = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=True, data_format=data_format) dataset = cifar10.Cifar10DataSet(data_dir, subset='train', use_distortion=True) # iterator = dataset.make_batch(batch_size_per_gpu) # def loss_function(): # global label_batch # _, image_batch, label_batch = iterator.get_next() # return tower_loss(model, image_batch, label_batch) # this is faster then above method iterator = dataset.make_batch(batch_size) batch = iterator.get_next() _, image_batches, label_batches = melt.split_batch(batch, batch_size, num_gpus) def loss_function(i): return tower_loss(model, image_batches[i], label_batches[i]) label_batch = label_batches[-1] #loss_function = lambda: tower_loss(model, image_batch, label_batch) loss = melt.tower(loss_function, num_gpus) pred = model.predict() pred = pred['classes'] #label_batch = dataset.label_batch acc = tf.reduce_mean(tf.to_float(tf.equal(pred, label_batch))) #tf.summary.image('train/image', dataset.image_batch) # # Compute confusion matrix # matrix = tf.confusion_matrix(label_batch, pred, num_classes=10) # # Get a image tensor for summary usage # image_tensor = draw_confusion_matrix(matrix) # tf.summary.image('train/confusion_matrix', image_tensor) scope.reuse_variables() ops = [loss, acc] validator = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=False, data_format=data_format) valid_dataset = cifar10.Cifar10DataSet(data_dir, subset='valid', use_distortion=False) valid_iterator = valid_dataset.make_batch(batch_size) valid_batch = valid_iterator.get_next() valid_id_batches, valid_image_batches, valid_label_batches = melt.split_batch(valid_batch, batch_size, num_gpus) def valid_loss_fn(i): valid_loss = tower_loss(validator, valid_image_batches[i], valid_label_batches[i]) valid_pred = validator.predict() return valid_id_batches[i], valid_loss, valid_pred['classes'], valid_label_batches[i] num_valid_examples = dataset.num_examples_per_epoch(subset='valid') valid_ops = melt.tower(valid_loss_fn, num_gpus, is_training=False) ## seems not work with non rpeat mode.. #tf.summary.image('valid/image', valid_image_batch) ## Compute confusion matrix #matrix = tf.confusion_matrix(valid_label_batch, valid_pred, num_classes=10) ## Get a image tensor for summary usage #image_tensor = draw_confusion_matrix(matrix) #tf.summary.image('valid/confusion_matrix', image_tensor) #loss_function = lambda: tower_loss(validator, val_image_batch, val_label_batch) #val_loss = melt.tower_losses(loss_function, FLAGS.num_gpus, is_training=False) #eval_ops = [val_loss] metric_eval_fn = lambda model_path=None: \ evaluator.evaluate(valid_ops, valid_iterator, num_steps=-(-num_valid_examples // batch_size), num_examples=num_valid_examples, model_path=model_path, num_gpus=num_gpus) predictor = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=False, data_format=data_format) predictor.init_predict() test_dataset = cifar10.Cifar10DataSet(data_dir, subset='test', use_distortion=False) test_iterator = test_dataset.make_batch(batch_size) test_batch = test_iterator.get_next() test_id_batches, test_image_batches, test_label_batches = test_iterator.get_next() def test_fn(i): test_pred = predictor.predict(test_image_batches[i]) test_pred = test_pred['classes'] return test_id_batches[i], test_pred num_test_examples = dataset.num_examples_per_epoch(subset='test') test_ops = melt.tower(test_fn, num_gpus, is_training=False) inference_fn = lambda model_path=None: \ evaluator.inference(test_ops, test_iterator, num_steps=-(-num_test_examples // batch_size), num_examples=num_test_examples, model_path=model_path) global eval_names names = ['loss', 'acc'] melt.apps.train_flow(ops, names = names, metric_eval_fn=metric_eval_fn, inference_fn=inference_fn, model_dir=FLAGS.model_dir, num_steps_per_epoch=num_train_examples // batch_size) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator/train.tfrecords ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/README.md ================================================ https://github.com/tensorflow/models/blob/master/tutorials/image/cifar10_estimator/ CIFAR-10 is a common benchmark in machine learning for image recognition. http://www.cs.toronto.edu/~kriz/cifar.html Code in this directory focuses on how to use TensorFlow Estimators to train and evaluate a CIFAR-10 ResNet model on: * A single host with one CPU; * A single host with multiple GPUs; * Multiple hosts with CPU or multiple GPUs; Before trying to run the model we highly encourage you to read all the README. ## Prerequisite 1. [Install](https://www.tensorflow.org/install/) TensorFlow version 1.2.1 or later. 2. Download the CIFAR-10 dataset and generate TFRecord files using the provided script. The script and associated command below will download the CIFAR-10 dataset and then generate a TFRecord for the training, validation, and evaluation datasets. ```shell python generate_cifar10_tfrecords.py --data-dir=${PWD}/cifar-10-data ``` After running the command above, you should see the following files in the --data-dir (```ls -R cifar-10-data```): * train.tfrecords * validation.tfrecords * eval.tfrecords ## Training on a single machine with GPUs or CPU Run the training on CPU only. After training, it runs the evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --num-gpus=0 \ --train-steps=1000 ``` Run the model on 2 GPUs using CPU as parameter server. After training, it runs the evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --num-gpus=2 \ --train-steps=1000 ``` Run the model on 2 GPUs using GPU as parameter server. It will run an experiment, which for local setting basically means it will run stop training a couple of times to perform evaluation. ``` python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ --job-dir=/tmp/cifar10 \ --variable-strategy GPU \ --num-gpus=2 \ ``` There are more command line flags to play with; run `python cifar10_main.py --help` for details. ## Run distributed training ### (Optional) Running on Google Cloud Machine Learning Engine This example can be run on Google Cloud Machine Learning Engine (ML Engine), which will configure the environment and take care of running workers, parameters servers, and masters in a fault tolerant way. To install the command line tool, and set up a project and billing, see the quickstart [here](https://cloud.google.com/ml-engine/docs/quickstarts/command-line). You'll also need a Google Cloud Storage bucket for the data. If you followed the instructions above, you can just run: ``` MY_BUCKET=gs:// gsutil cp -r ${PWD}/cifar-10-data $MY_BUCKET/ ``` Then run the following command from the `tutorials/image` directory of this repository (the parent directory of this README): ``` gcloud ml-engine jobs submit training cifarmultigpu \ --runtime-version 1.2 \ --job-dir=$MY_BUCKET/model_dirs/cifarmultigpu \ --config cifar10_estimator/cmle_config.yaml \ --package-path cifar10_estimator/ \ --module-name cifar10_estimator.cifar10_main \ -- \ --data-dir=$MY_BUCKET/cifar-10-data \ --num-gpus=4 \ --train-steps=1000 ``` ### Set TF_CONFIG Considering that you already have multiple hosts configured, all you need is a `TF_CONFIG` environment variable on each host. You can set up the hosts manually or check [tensorflow/ecosystem](https://github.com/tensorflow/ecosystem) for instructions about how to set up a Cluster. The `TF_CONFIG` will be used by the `RunConfig` to know the existing hosts and their task: `master`, `ps` or `worker`. Here's an example of `TF_CONFIG`. ```python cluster = {'master': ['master-ip:8000'], 'ps': ['ps-ip:8000'], 'worker': ['worker-ip:8000']} TF_CONFIG = json.dumps( {'cluster': cluster, 'task': {'type': master, 'index': 0}, 'model_dir': 'gs:///', 'environment': 'cloud' }) ``` *Cluster* A cluster spec, which is basically a dictionary that describes all of the tasks in the cluster. More about it [here](https://www.tensorflow.org/deploy/distributed). In this cluster spec we are defining a cluster with 1 master, 1 ps and 1 worker. * `ps`: saves the parameters among all workers. All workers can read/write/update the parameters for model via ps. As some models are extremely large the parameters are shared among the ps (each ps stores a subset). * `worker`: does the training. * `master`: basically a special worker, it does training, but also restores and saves checkpoints and do evaluation. *Task* The Task defines what is the role of the current node, for this example the node is the master on index 0 on the cluster spec, the task will be different for each node. An example of the `TF_CONFIG` for a worker would be: ```python cluster = {'master': ['master-ip:8000'], 'ps': ['ps-ip:8000'], 'worker': ['worker-ip:8000']} TF_CONFIG = json.dumps( {'cluster': cluster, 'task': {'type': worker, 'index': 0}, 'model_dir': 'gs:///', 'environment': 'cloud' }) ``` *Model_dir* This is the path where the master will save the checkpoints, graph and TensorBoard files. For a multi host environment you may want to use a Distributed File System, Google Storage and DFS are supported. *Environment* By the default environment is *local*, for a distributed setting we need to change it to *cloud*. ### Running script Once you have a `TF_CONFIG` configured properly on each host you're ready to run on distributed settings. #### Master Run this on master: Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for 40000 steps. It will run evaluation a couple of times during training. The num_workers arugument is used only to update the learning rate correctly. Make sure the model_dir is the same as defined on the TF_CONFIG. ```shell python cifar10_main.py --data-dir=gs://path/cifar-10-data \ --job-dir=gs://path/model_dir/ \ --num-gpus=4 \ --train-steps=40000 \ --sync \ --num-workers=2 ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'master', '_is_chief': True, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } , '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} ... 2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:04.0 Total memory: 11.17GiB Free memory: 11.09GiB 2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:05.0 Total memory: 11.17GiB Free memory: 11.10GiB ... 2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=1; total_num_replicas=1 INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-0 2017-08-01 19:59:37.560775: I tensorflow/core/distributed_runtime/master_session.cc:999] Start master session 156fcb55fe6648d6 with config: intra_op_parallelism_threads: 1 gpu_options { per_process_gpu_memory_fraction: 1 } allow_soft_placement: true INFO:tensorflow:Saving checkpoints for 1 into gs://path/model_dir/model.ckpt. INFO:tensorflow:loss = 1.20682, step = 1 INFO:tensorflow:loss = 1.20682, learning_rate = 0.1 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 INFO:tensorflow:Starting evaluation at 2017-08-01-20:00:14 2017-08-01 20:00:15.745881: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Tesla K80, pci bus id: 0000:00:04.0) 2017-08-01 20:00:15.745949: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:1) -> (device: 1, name: Tesla K80, pci bus id: 0000:00:05.0) 2017-08-01 20:00:15.745958: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:2) -> (device: 2, name: Tesla K80, pci bus id: 0000:00:06.0) 2017-08-01 20:00:15.745964: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:3) -> (device: 3, name: Tesla K80, pci bus id: 0000:00:07.0) 2017-08-01 20:00:15.745969: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:4) -> (device: 4, name: Tesla K80, pci bus id: 0000:00:08.0) 2017-08-01 20:00:15.745975: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:5) -> (device: 5, name: Tesla K80, pci bus id: 0000:00:09.0) 2017-08-01 20:00:15.745987: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:6) -> (device: 6, name: Tesla K80, pci bus id: 0000:00:0a.0) 2017-08-01 20:00:15.745997: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:7) -> (device: 7, name: Tesla K80, pci bus id: 0000:00:0b.0) INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-10023 INFO:tensorflow:Evaluation [1/100] INFO:tensorflow:Evaluation [2/100] INFO:tensorflow:Evaluation [3/100] INFO:tensorflow:Evaluation [4/100] INFO:tensorflow:Evaluation [5/100] INFO:tensorflow:Evaluation [6/100] INFO:tensorflow:Evaluation [7/100] INFO:tensorflow:Evaluation [8/100] INFO:tensorflow:Evaluation [9/100] INFO:tensorflow:Evaluation [10/100] INFO:tensorflow:Evaluation [11/100] INFO:tensorflow:Evaluation [12/100] INFO:tensorflow:Evaluation [13/100] ... INFO:tensorflow:Evaluation [100/100] INFO:tensorflow:Finished evaluation at 2017-08-01-20:00:31 INFO:tensorflow:Saving dict for global step 1: accuracy = 0.0994, global_step = 1, loss = 630.425 ``` #### Worker Run this on worker: Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for 40000 steps. It will run evaluation a couple of times during training. Make sure the model_dir is the same as defined on the TF_CONFIG. ```shell python cifar10_main.py --data-dir=gs://path/cifar-10-data \ --job-dir=gs://path/model_dir/ \ --num-gpus=4 \ --train-steps=40000 \ --sync ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'worker', '_is_chief': False, '_cluster_spec': , '_model_dir': 'gs:///model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } ... 2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:04.0 Total memory: 11.17GiB Free memory: 11.09GiB 2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: name: Tesla K80 major: 3 minor: 7 memoryClockRate (GHz) 0.8235 pciBusID 0000:00:05.0 Total memory: 11.17GiB Free memory: 11.10GiB ... 2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 INFO:tensorflow:Create CheckpointSaverHook. 2017-07-31 22:38:04.629150: I tensorflow/core/distributed_runtime/master.cc:209] CreateSession still waiting for response from worker: /job:master/replica:0/task:0 2017-07-31 22:38:09.263492: I tensorflow/core/distributed_runtime/master_session.cc:999] Start master session cc58f93b1e259b0c with config: intra_op_parallelism_threads: 1 gpu_options { per_process_gpu_memory_fraction: 1 } allow_soft_placement: true INFO:tensorflow:loss = 5.82382, step = 0 INFO:tensorflow:loss = 5.82382, learning_rate = 0.8 INFO:tensorflow:Average examples/sec: 1116.92 (1116.92), step = 10 INFO:tensorflow:Average examples/sec: 1233.73 (1377.83), step = 20 INFO:tensorflow:Average examples/sec: 1485.43 (2509.3), step = 30 INFO:tensorflow:Average examples/sec: 1680.27 (2770.39), step = 40 INFO:tensorflow:Average examples/sec: 1825.38 (2788.78), step = 50 INFO:tensorflow:Average examples/sec: 1929.32 (2697.27), step = 60 INFO:tensorflow:Average examples/sec: 2015.17 (2749.05), step = 70 INFO:tensorflow:loss = 37.6272, step = 79 (19.554 sec) INFO:tensorflow:loss = 37.6272, learning_rate = 0.8 (19.554 sec) INFO:tensorflow:Average examples/sec: 2074.92 (2618.36), step = 80 INFO:tensorflow:Average examples/sec: 2132.71 (2744.13), step = 90 INFO:tensorflow:Average examples/sec: 2183.38 (2777.21), step = 100 INFO:tensorflow:Average examples/sec: 2224.4 (2739.03), step = 110 INFO:tensorflow:Average examples/sec: 2240.28 (2431.26), step = 120 INFO:tensorflow:Average examples/sec: 2272.12 (2739.32), step = 130 INFO:tensorflow:Average examples/sec: 2300.68 (2750.03), step = 140 INFO:tensorflow:Average examples/sec: 2325.81 (2745.63), step = 150 INFO:tensorflow:Average examples/sec: 2347.14 (2721.53), step = 160 INFO:tensorflow:Average examples/sec: 2367.74 (2754.54), step = 170 INFO:tensorflow:loss = 27.8453, step = 179 (18.893 sec) ... ``` #### PS Run this on ps: The ps will not do training so most of the arguments won't affect the execution ```shell python cifar10_main.py --job-dir=gs://path/model_dir/ ``` *Output:* ```shell INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'ps', '_is_chief': False, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 gpu_options { } allow_soft_placement: true , '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } , '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} 2017-07-31 22:54:58.928088: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job master -> {0 -> master-ip:8000} 2017-07-31 22:54:58.928153: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job ps -> {0 -> localhost:8000} 2017-07-31 22:54:58.928160: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job worker -> {0 -> worker-ip:8000} 2017-07-31 22:54:58.929873: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 ``` ## Visualizing results with TensorBoard When using Estimators you can also visualize your data in TensorBoard, with no changes in your code. You can use TensorBoard to visualize your TensorFlow graph, plot quantitative metrics about the execution of your graph, and show additional data like images that pass through it. You'll see something similar to this if you "point" TensorBoard to the `job dir` parameter you used to train or evaluate your model. Check TensorBoard during training or after it. Just point TensorBoard to the model_dir you chose on the previous step. ```shell tensorboard --log-dir="" ``` ## Warnings When runninng `cifar10_main.py` with `--sync` argument you may see an error similar to: ```python File "cifar10_main.py", line 538, in tf.app.run() File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run _sys.exit(main(_sys.argv[:1] + flags_passthrough)) File "cifar10_main.py", line 518, in main hooks), run_config=config) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 210, in run return _execute_schedule(experiment, schedule) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 47, in _execute_schedule return task() File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 501, in train_and_evaluate hooks=self._eval_hooks) File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 681, in _call_evaluate hooks=hooks) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 292, in evaluate name=name) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 638, in _evaluate_model features, labels, model_fn_lib.ModeKeys.EVAL) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 545, in _call_model_fn features=features, labels=labels, **kwargs) File "cifar10_main.py", line 331, in _resnet_model_fn gradvars, global_step=tf.train.get_global_step()) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/sync_replicas_optimizer.py", line 252, in apply_gradients variables.global_variables()) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 170, in wrapped return _add_should_use_warning(fn(*args, **kwargs)) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 139, in _add_should_use_warning wrapped = TFShouldUseWarningWrapper(x) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 96, in __init__ stack = [s.strip() for s in traceback.format_stack()] ``` This should not affect your training, and should be fixed on the next releases. ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/__init__.py ================================================ ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cifar10.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf HEIGHT = 32 WIDTH = 32 DEPTH = 3 class Cifar10DataSet(object): """Cifar10 data set. Described by http://www.cs.toronto.edu/~kriz/cifar.html. """ def __init__(self, data_dir, subset='train', use_distortion=True): self.data_dir = data_dir self.subset = subset self.use_distortion = use_distortion def get_filenames(self): if self.subset in ['train', 'valid', 'test']: return [os.path.join(self.data_dir, self.subset + '.tfrecords')] else: raise ValueError('Invalid data subset "%s"' % self.subset) def parser(self, serialized_example): """Parses a single tf.Example into image and label tensors.""" # Dimensions of the images in the CIFAR-10 dataset. # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the # input format. features = tf.parse_single_example( serialized_example, features={ 'id': tf.FixedLenFeature([], tf.int64), 'image': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), }) image = tf.decode_raw(features['image'], tf.uint8) image.set_shape([HEIGHT * WIDTH * DEPTH]) image = tf.cast( tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), tf.float32) label = tf.cast(features['label'], tf.int32) id = tf.cast(features['id'], tf.int32) # Custom preprocessing. image = self.preprocess(image) return id, image, label def make_batch(self, batch_size, repeat=None): """Read the images and labels from 'filenames'.""" filenames = self.get_filenames() repeat = repeat or (self.subset == 'train') # Repeat infinitely. dataset = tf.data.TFRecordDataset(filenames) if repeat: dataset = dataset.repeat() # Parse records. dataset = dataset.map( self.parser, num_parallel_calls=batch_size) # Potentially shuffle records. if self.subset == 'train': min_queue_examples = int( Cifar10DataSet.num_examples_per_epoch(self.subset) * 0.4) # Ensure that the capacity is sufficiently large to provide good random # shuffling. dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) # Batch it up. dataset = dataset.batch(batch_size) if repeat: iterator = dataset.make_one_shot_iterator() id_batch, image_batch, label_batch = iterator.get_next() self.label_batch = label_batch self.image_batch = image_batch return id_batch, image_batch, label_batch else: iterator = dataset.make_initializable_iterator() self.iterator = iterator return iterator def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch #... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries # refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME tf.summary.image('image', image) image = tf.image.resize_image_with_crop_or_pad(image, 40, 40) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) tf.summary.image('image/distort', image) return image @staticmethod def num_examples_per_epoch(subset='train'): if subset == 'train': return 45000 elif subset == 'valid': return 5000 elif subset == 'test': return 10000 else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cifar10_main.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model for classifying images from CIFAR-10 dataset. Support single-host training with one or multiple devices. ResNet as proposed in: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Deep Residual Learning for Image Recognition. arXiv:1512.03385 CIFAR-10 as in: http://www.cs.toronto.edu/~kriz/cifar.html """ from __future__ import division from __future__ import print_function import argparse import functools import itertools import os import cifar10 import cifar10_model import cifar10_utils import numpy as np import six from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf tf.logging.set_verbosity(tf.logging.INFO) def get_model_fn(num_gpus, variable_strategy, num_workers): """Returns a function that will build the resnet model.""" def _resnet_model_fn(features, labels, mode, params): """Resnet model body. Support single host, one or more GPU training. Parameter distribution can be either one of the following scheme. 1. CPU is the parameter server and manages gradient updates. 2. Parameters are distributed evenly across all GPUs, and the first GPU manages gradient updates. Args: features: a list of tensors, one for each tower labels: a list of tensors, one for each tower mode: ModeKeys.TRAIN or EVAL params: Hyperparameters suitable for tuning Returns: A EstimatorSpec object. """ is_training = (mode == tf.estimator.ModeKeys.TRAIN) weight_decay = params.weight_decay momentum = params.momentum tower_features = features tower_labels = labels tower_losses = [] tower_gradvars = [] tower_preds = [] # channels first (NCHW) is normally optimal on GPU and channels last (NHWC) # on CPU. The exception is Intel MKL on CPU which is optimal with # channels_last. data_format = params.data_format if not data_format: if num_gpus == 0: data_format = 'channels_last' else: data_format = 'channels_first' if num_gpus == 0: num_devices = 1 device_type = 'cpu' else: num_devices = num_gpus device_type = 'gpu' for i in range(num_devices): worker_device = '/{}:{}'.format(device_type, i) if variable_strategy == 'CPU': device_setter = cifar10_utils.local_device_setter( worker_device=worker_device) elif variable_strategy == 'GPU': device_setter = cifar10_utils.local_device_setter( ps_device_type='gpu', worker_device=worker_device, ps_strategy=tf.contrib.training.GreedyLoadBalancingStrategy( num_gpus, tf.contrib.training.byte_size_load_fn)) with tf.variable_scope('resnet', reuse=bool(i != 0)): with tf.name_scope('tower_%d' % i) as name_scope: with tf.device(device_setter): loss, gradvars, preds = _tower_fn( is_training, weight_decay, tower_features[i], tower_labels[i], data_format, params.num_layers, params.batch_norm_decay, params.batch_norm_epsilon) tower_losses.append(loss) tower_gradvars.append(gradvars) tower_preds.append(preds) if i == 0: # Only trigger batch_norm moving mean and variance update from # the 1st tower. Ideally, we should grab the updates from all # towers but these stats accumulate extremely fast so we can # ignore the other stats from the other towers without # significant detriment. update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, name_scope) # Now compute global loss and gradients. gradvars = [] with tf.name_scope('gradient_averaging'): all_grads = {} for grad, var in itertools.chain(*tower_gradvars): if grad is not None: all_grads.setdefault(var, []).append(grad) for var, grads in six.iteritems(all_grads): # Average gradients on the same device as the variables # to which they apply. with tf.device(var.device): if len(grads) == 1: avg_grad = grads[0] else: avg_grad = tf.multiply(tf.add_n(grads), 1. / len(grads)) gradvars.append((avg_grad, var)) # Device that runs the ops to apply global gradient updates. consolidation_device = '/gpu:0' if variable_strategy == 'GPU' else '/cpu:0' with tf.device(consolidation_device): # Suggested learning rate scheduling from # https://github.com/ppwwyyxx/tensorpack/blob/master/examples/ResNet/cifar10-resnet.py#L155 num_batches_per_epoch = cifar10.Cifar10DataSet.num_examples_per_epoch( 'train') // (params.train_batch_size * num_workers) boundaries = [ num_batches_per_epoch * x for x in np.array([82, 123, 300], dtype=np.int64) ] staged_lr = [params.learning_rate * x for x in [1, 0.1, 0.01, 0.002]] print('--------------learning rate boundaries', boundaries, 'staged_lr', staged_lr) learning_rate = tf.train.piecewise_constant(tf.train.get_global_step(), boundaries, staged_lr) loss = tf.reduce_mean(tower_losses, name='loss') examples_sec_hook = cifar10_utils.ExamplesPerSecondHook( params.train_batch_size, every_n_steps=10) tensors_to_log = {'learning_rate': learning_rate, 'loss': loss} logging_hook = tf.train.LoggingTensorHook( tensors=tensors_to_log, every_n_iter=100) train_hooks = [logging_hook, examples_sec_hook] print('------------------momentum', momentum) optimizer = tf.train.MomentumOptimizer( learning_rate=learning_rate, momentum=momentum) print('----------------params.sync', params.sync) if params.sync: optimizer = tf.train.SyncReplicasOptimizer( optimizer, replicas_to_aggregate=num_workers) sync_replicas_hook = optimizer.make_session_run_hook(params.is_chief) train_hooks.append(sync_replicas_hook) # Create single grouped train op train_op = [ optimizer.apply_gradients( gradvars, global_step=tf.train.get_global_step()) ] train_op.extend(update_ops) train_op = tf.group(*train_op) predictions = { 'classes': tf.concat([p['classes'] for p in tower_preds], axis=0), 'probabilities': tf.concat([p['probabilities'] for p in tower_preds], axis=0) } stacked_labels = tf.concat(labels, axis=0) metrics = { 'accuracy': tf.metrics.accuracy(stacked_labels, predictions['classes']) } return tf.estimator.EstimatorSpec( mode=mode, predictions=predictions, loss=loss, train_op=train_op, training_hooks=train_hooks, eval_metric_ops=metrics) return _resnet_model_fn def _tower_fn(is_training, weight_decay, feature, label, data_format, num_layers, batch_norm_decay, batch_norm_epsilon): """Build computation tower (Resnet). Args: is_training: true if is training graph. weight_decay: weight regularization strength, a float. feature: a Tensor. label: a Tensor. data_format: channels_last (NHWC) or channels_first (NCHW). num_layers: number of layers, an int. batch_norm_decay: decay for batch normalization, a float. batch_norm_epsilon: epsilon for batch normalization, a float. Returns: A tuple with the loss for the tower, the gradients and parameters, and predictions. """ print('--------------------------------') print('num_layers', num_layers, 'batch_norm_decay', batch_norm_decay, 'batch_norm_epsilon', batch_norm_epsilon, 'is_training', is_training, 'data_format', data_format) model = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=is_training, data_format=data_format) logits = model.forward_pass(feature, input_data_format='channels_last') tower_pred = { 'classes': tf.argmax(input=logits, axis=1), 'probabilities': tf.nn.softmax(logits) } tower_loss = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=label) tower_loss = tf.reduce_mean(tower_loss) model_params = tf.trainable_variables() print('------------weight_decay', weight_decay) tower_loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) tower_grad = tf.gradients(tower_loss, model_params) return tower_loss, zip(tower_grad, model_params), tower_pred def input_fn(data_dir, subset, num_shards, batch_size, use_distortion_for_training=True): """Create input graph for model. Args: data_dir: Directory where TFRecords representing the dataset are located. subset: one of 'train', 'validate' and 'eval'. num_shards: num of towers participating in data-parallel training. batch_size: total batch size for training to be divided by the number of shards. use_distortion_for_training: True to use distortions. Returns: two lists of tensors for features and labels, each of num_shards length. """ with tf.device('/cpu:0'): use_distortion = subset == 'train' and use_distortion_for_training dataset = cifar10.Cifar10DataSet(data_dir, subset, use_distortion) _, image_batch, label_batch = dataset.make_batch(batch_size, repeat=True) if num_shards <= 1: # No GPU available or only 1 GPU. return [image_batch], [label_batch] # Note that passing num=batch_size is safe here, even though # dataset.batch(batch_size) can, in some cases, return fewer than batch_size # examples. This is because it does so only when repeating for a limited # number of epochs, but our dataset repeats forever. image_batch = tf.unstack(image_batch, num=batch_size, axis=0) label_batch = tf.unstack(label_batch, num=batch_size, axis=0) feature_shards = [[] for i in range(num_shards)] label_shards = [[] for i in range(num_shards)] for i in xrange(batch_size): idx = i % num_shards feature_shards[idx].append(image_batch[i]) label_shards[idx].append(label_batch[i]) feature_shards = [tf.parallel_stack(x) for x in feature_shards] label_shards = [tf.parallel_stack(x) for x in label_shards] return feature_shards, label_shards def get_experiment_fn(data_dir, num_gpus, variable_strategy, use_distortion_for_training=True): """Returns an Experiment function. Experiments perform training on several workers in parallel, in other words experiments know how to invoke train and eval in a sensible fashion for distributed training. Arguments passed directly to this function are not tunable, all other arguments should be passed within tf.HParams, passed to the enclosed function. Args: data_dir: str. Location of the data for input_fns. num_gpus: int. Number of GPUs on each worker. variable_strategy: String. CPU to use CPU as the parameter server and GPU to use the GPUs as the parameter server. use_distortion_for_training: bool. See cifar10.Cifar10DataSet. Returns: A function (tf.estimator.RunConfig, tf.contrib.training.HParams) -> tf.contrib.learn.Experiment. Suitable for use by tf.contrib.learn.learn_runner, which will run various methods on Experiment (train, evaluate) based on information about the current runner in `run_config`. """ def _experiment_fn(run_config, hparams): """Returns an Experiment.""" # Create estimator. train_input_fn = functools.partial( input_fn, data_dir, subset='train', num_shards=num_gpus, batch_size=hparams.train_batch_size, use_distortion_for_training=use_distortion_for_training) eval_input_fn = functools.partial( input_fn, data_dir, subset='valid', batch_size=hparams.eval_batch_size, num_shards=num_gpus) num_eval_examples = cifar10.Cifar10DataSet.num_examples_per_epoch('valid') if num_eval_examples % hparams.eval_batch_size != 0: raise ValueError( 'validation set size must be multiple of eval_batch_size') train_steps = hparams.train_steps eval_steps = num_eval_examples // hparams.eval_batch_size classifier = tf.estimator.Estimator( model_fn=get_model_fn(num_gpus, variable_strategy, run_config.num_worker_replicas or 1), config=run_config, params=hparams) # Create experiment. return tf.contrib.learn.Experiment( classifier, train_input_fn=train_input_fn, eval_input_fn=eval_input_fn, train_steps=train_steps, eval_steps=eval_steps) return _experiment_fn def main(job_dir, data_dir, num_gpus, variable_strategy, use_distortion_for_training, log_device_placement, num_intra_threads, **hparams): # The env variable is on deprecation path, default is set to off. os.environ['TF_SYNC_ON_FINISH'] = '0' os.environ['TF_ENABLE_WINOGRAD_NONFUSED'] = '1' # Session configuration. sess_config = tf.ConfigProto( allow_soft_placement=True, log_device_placement=log_device_placement, intra_op_parallelism_threads=num_intra_threads, gpu_options=tf.GPUOptions(force_gpu_compatible=True)) config = cifar10_utils.RunConfig( session_config=sess_config, model_dir=job_dir) tf.contrib.learn.learn_runner.run( get_experiment_fn(data_dir, num_gpus, variable_strategy, use_distortion_for_training), run_config=config, hparams=tf.contrib.training.HParams( is_chief=config.is_chief, **hparams)) if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument( '--data-dir', type=str, required=True, help='The directory where the CIFAR-10 input data is stored.') parser.add_argument( '--job-dir', type=str, required=True, help='The directory where the model will be stored.') parser.add_argument( '--variable-strategy', choices=['CPU', 'GPU'], type=str, default='CPU', help='Where to locate variable operations') parser.add_argument( '--num-gpus', type=int, default=1, help='The number of gpus used. Uses only CPU if set to 0.') parser.add_argument( '--num-layers', type=int, default=44, help='The number of layers of the model.') parser.add_argument( '--train-steps', type=int, default=80000, help='The number of steps to use for training.') parser.add_argument( '--train-batch-size', type=int, default=128, help='Batch size for training.') parser.add_argument( '--eval-batch-size', type=int, default=100, help='Batch size for validation.') parser.add_argument( '--momentum', type=float, default=0.9, help='Momentum for MomentumOptimizer.') parser.add_argument( '--weight-decay', type=float, default=2e-4, help='Weight decay for convolutions.') parser.add_argument( '--learning-rate', type=float, default=0.1, help="""\ This is the inital learning rate value. The learning rate will decrease during training. For more details check the model_fn implementation in this file.\ """) parser.add_argument( '--use-distortion-for-training', type=bool, default=True, help='If doing image distortion for training.') parser.add_argument( '--sync', action='store_true', default=False, help="""\ If present when running in a distributed environment will run on sync mode.\ """) parser.add_argument( '--num-intra-threads', type=int, default=0, help="""\ Number of threads to use for intra-op parallelism. When training on CPU set to 0 to have the system pick the appropriate number or alternatively set it to the number of physical CPU cores.\ """) parser.add_argument( '--num-inter-threads', type=int, default=0, help="""\ Number of threads to use for inter-op parallelism. If set to 0, the system will pick an appropriate number.\ """) parser.add_argument( '--data-format', type=str, default=None, help="""\ If not set, the data format best for the training device is used. Allowed values: channels_first (NCHW) channels_last (NHWC).\ """) parser.add_argument( '--log-device-placement', action='store_true', default=False, help='Whether to log device placement.') parser.add_argument( '--batch-norm-decay', type=float, default=0.997, help='Decay for batch norm.') parser.add_argument( '--batch-norm-epsilon', type=float, default=1e-5, help='Epsilon for batch norm.') args = parser.parse_args() if args.num_gpus > 0: assert tf.test.is_gpu_available(), "Requested GPUs but none found." if args.num_gpus < 0: raise ValueError( 'Invalid GPU count: \"--num-gpus\" must be 0 or a positive integer.') if args.num_gpus == 0 and args.variable_strategy == 'GPU': raise ValueError('num-gpus=0, CPU must be used as parameter server. Set' '--variable-strategy=CPU.') if (args.num_layers - 2) % 6 != 0: raise ValueError('Invalid --num-layers parameter.') if args.num_gpus != 0 and args.train_batch_size % args.num_gpus != 0: raise ValueError('--train-batch-size must be multiple of --num-gpus.') if args.num_gpus != 0 and args.eval_batch_size % args.num_gpus != 0: raise ValueError('--eval-batch-size must be multiple of --num-gpus.') main(**vars(args)) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cifar10_model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Model class for Cifar10 Dataset.""" from __future__ import division from __future__ import print_function import tensorflow as tf import model_base import melt class ResNetCifar10(model_base.ResNet): """Cifar10 model with ResNetV1 and basic residual block.""" def __init__(self, num_layers, is_training, batch_norm_decay, batch_norm_epsilon, data_format='channels_first'): super(ResNetCifar10, self).__init__( is_training, data_format, batch_norm_decay, batch_norm_epsilon ) self.n = (num_layers - 2) // 6 # Add one in case label starts with 1. No impact if label starts with 0. self.num_classes = 10 + 1 self.filters = [16, 16, 32, 64] self.strides = [1, 2, 2] def init_predict(self, input_data_format='channels_last'): #self.image_feed = tf.placeholder_with_default(tf.constant([test_image]), [None, ], name='image_feature') self.image_feed = tf.placeholder(tf.string, [None,], name='image') tf.add_to_collection('feed', self.image_feed) image = tf.map_fn(lambda img: melt.image.decode_image(img, image_format='png', dtype=tf.float32), self.image_feed, dtype=tf.float32) self.predict(image) tf.add_to_collection('classes', self.pred['classes']) tf.add_to_collection('probabilities', self.pred['probabilities']) tf.add_to_collection('logits', self.logits) tf.add_to_collection('pre_logits', self.pre_logits) def forward_pass(self, x, input_data_format='channels_last'): # TODO.. without this forward var scope inference_fn will cause problem for self._conv as try to add conv 43.. FIMXE with tf.variable_scope('forward'): """Build the core model within the graph.""" if self._data_format != input_data_format: if input_data_format == 'channels_last': # Computation requires channels_first. x = tf.transpose(x, [0, 3, 1, 2]) else: # Computation requires channels_last. x = tf.transpose(x, [0, 2, 3, 1]) # Image standardization. x = x / 128 - 1 x = self._conv(x, 3, 16, 1) x = self._batch_norm(x) x = self._relu(x) # Use basic (non-bottleneck) block and ResNet V1 (post-activation). res_func = self._residual_v1 # 3 stages of block stacking. for i in range(3): with tf.name_scope('stage'): for j in range(self.n): if j == 0: # First block in a stage, filters and strides may change. x = res_func(x, 3, self.filters[i], self.filters[i + 1], self.strides[i]) else: # Following blocks in a stage, constant filters and unit stride. x = res_func(x, 3, self.filters[i + 1], self.filters[i + 1], 1) x = self._global_avg_pool(x) self.pre_logits = x x = self._fully_connected(x, self.num_classes) self.logits = x return x def predict(self, x=None, input_data_format='channels_last'): if x is not None: self.forward_pass(x, input_data_format) logits = self.logits pred = { 'classes': tf.to_int32(tf.argmax(input=logits, axis=1)), 'probabilities': tf.nn.softmax(logits) } self.pred = pred return pred ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cifar10_multi_gpu_train.py ================================================ # Copyright 2015 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A binary to train CIFAR-10 using multiple GPUs with synchronous updates. Accuracy: cifar10_multi_gpu_train.py achieves ~86% accuracy after 100K steps (256 epochs of data) as judged by cifar10_eval.py. Speed: With batch_size 128. System | Step Time (sec/batch) | Accuracy -------------------------------------------------------------------- 1 Tesla K20m | 0.35-0.60 | ~86% at 60K steps (5 hours) 1 Tesla K40m | 0.25-0.35 | ~86% at 100K steps (4 hours) 2 Tesla K20m | 0.13-0.20 | ~84% at 30K steps (2.5 hours) 3 Tesla K20m | 0.13-0.18 | ~84% at 30K steps 4 Tesla K20m | ~0.10 | ~84% at 30K steps Usage: Please see the tutorial and website for how to download the CIFAR-10 data set, compile the program and train the model. http://tensorflow.org/tutorials/deep_cnn/ """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from datetime import datetime import os.path import re import time import numpy as np from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf import cifar10 FLAGS = tf.app.flags.FLAGS tf.app.flags.DEFINE_string('train_dir', '/tmp/cifar10_train', """Directory where to write event logs """ """and checkpoint.""") tf.app.flags.DEFINE_integer('max_steps', 1000000, """Number of batches to run.""") tf.app.flags.DEFINE_integer('num_gpus', 1, """How many GPUs to use.""") tf.app.flags.DEFINE_boolean('log_device_placement', False, """Whether to log device placement.""") def tower_loss(scope, images, labels): """Calculate the total loss on a single tower running the CIFAR model. Args: scope: unique prefix string identifying the CIFAR tower, e.g. 'tower_0' images: Images. 4D tensor of shape [batch_size, height, width, 3]. labels: Labels. 1D tensor of shape [batch_size]. Returns: Tensor of shape [] containing the total loss for a batch of data """ # Build inference Graph. logits = cifar10.inference(images) # Build the portion of the Graph calculating the losses. Note that we will # assemble the total_loss using a custom function below. _ = cifar10.loss(logits, labels) # Assemble all of the losses for the current tower only. losses = tf.get_collection('losses', scope) # Calculate the total loss for the current tower. total_loss = tf.add_n(losses, name='total_loss') # Attach a scalar summary to all individual losses and the total loss; do the # same for the averaged version of the losses. for l in losses + [total_loss]: # Remove 'tower_[0-9]/' from the name in case this is a multi-GPU training # session. This helps the clarity of presentation on tensorboard. loss_name = re.sub('%s_[0-9]*/' % cifar10.TOWER_NAME, '', l.op.name) tf.summary.scalar(loss_name, l) return total_loss def average_gradients(tower_grads): """Calculate the average gradient for each shared variable across all towers. Note that this function provides a synchronization point across all towers. Args: tower_grads: List of lists of (gradient, variable) tuples. The outer list is over individual gradients. The inner list is over the gradient calculation for each tower. Returns: List of pairs of (gradient, variable) where the gradient has been averaged across all towers. """ average_grads = [] for grad_and_vars in zip(*tower_grads): # Note that each grad_and_vars looks like the following: # ((grad0_gpu0, var0_gpu0), ... , (grad0_gpuN, var0_gpuN)) grads = [] for g, _ in grad_and_vars: # Add 0 dimension to the gradients to represent the tower. expanded_g = tf.expand_dims(g, 0) # Append on a 'tower' dimension which we will average over below. grads.append(expanded_g) # Average over the 'tower' dimension. grad = tf.concat(axis=0, values=grads) grad = tf.reduce_mean(grad, 0) # Keep in mind that the Variables are redundant because they are shared # across towers. So .. we will just return the first tower's pointer to # the Variable. v = grad_and_vars[0][1] grad_and_var = (grad, v) average_grads.append(grad_and_var) return average_grads def train(): """Train CIFAR-10 for a number of steps.""" with tf.Graph().as_default(), tf.device('/cpu:0'): # Create a variable to count the number of train() calls. This equals the # number of batches processed * FLAGS.num_gpus. global_step = tf.get_variable( 'global_step', [], initializer=tf.constant_initializer(0), trainable=False) # Calculate the learning rate schedule. num_batches_per_epoch = (cifar10.NUM_EXAMPLES_PER_EPOCH_FOR_TRAIN / FLAGS.batch_size) decay_steps = int(num_batches_per_epoch * cifar10.NUM_EPOCHS_PER_DECAY) # Decay the learning rate exponentially based on the number of steps. lr = tf.train.exponential_decay(cifar10.INITIAL_LEARNING_RATE, global_step, decay_steps, cifar10.LEARNING_RATE_DECAY_FACTOR, staircase=True) # Create an optimizer that performs gradient descent. opt = tf.train.GradientDescentOptimizer(lr) # Get images and labels for CIFAR-10. images, labels = cifar10.distorted_inputs() batch_queue = tf.contrib.slim.prefetch_queue.prefetch_queue( [images, labels], capacity=2 * FLAGS.num_gpus) # Calculate the gradients for each model tower. tower_grads = [] with tf.variable_scope(tf.get_variable_scope()): for i in xrange(FLAGS.num_gpus): with tf.device('/gpu:%d' % i): with tf.name_scope('%s_%d' % (cifar10.TOWER_NAME, i)) as scope: # Dequeues one batch for the GPU image_batch, label_batch = batch_queue.dequeue() # Calculate the loss for one tower of the CIFAR model. This function # constructs the entire CIFAR model but shares the variables across # all towers. loss = tower_loss(scope, image_batch, label_batch) # Reuse variables for the next tower. tf.get_variable_scope().reuse_variables() # Retain the summaries from the final tower. summaries = tf.get_collection(tf.GraphKeys.SUMMARIES, scope) # Calculate the gradients for the batch of data on this CIFAR tower. grads = opt.compute_gradients(loss) # Keep track of the gradients across all towers. tower_grads.append(grads) # We must calculate the mean of each gradient. Note that this is the # synchronization point across all towers. grads = average_gradients(tower_grads) # Add a summary to track the learning rate. summaries.append(tf.summary.scalar('learning_rate', lr)) # Add histograms for gradients. for grad, var in grads: if grad is not None: summaries.append(tf.summary.histogram(var.op.name + '/gradients', grad)) # Apply the gradients to adjust the shared variables. apply_gradient_op = opt.apply_gradients(grads, global_step=global_step) # Add histograms for trainable variables. for var in tf.trainable_variables(): summaries.append(tf.summary.histogram(var.op.name, var)) # Track the moving averages of all trainable variables. variable_averages = tf.train.ExponentialMovingAverage( cifar10.MOVING_AVERAGE_DECAY, global_step) variables_averages_op = variable_averages.apply(tf.trainable_variables()) # Group all updates to into a single train op. train_op = tf.group(apply_gradient_op, variables_averages_op) # Create a saver. saver = tf.train.Saver(tf.global_variables()) # Build the summary operation from the last tower summaries. summary_op = tf.summary.merge(summaries) # Build an initialization operation to run below. init = tf.global_variables_initializer() # Start running operations on the Graph. allow_soft_placement must be set to # True to build towers on GPU, as some of the ops do not have GPU # implementations. sess = tf.Session(config=tf.ConfigProto( allow_soft_placement=True, log_device_placement=FLAGS.log_device_placement)) sess.run(init) # Start the queue runners. tf.train.start_queue_runners(sess=sess) summary_writer = tf.summary.FileWriter(FLAGS.train_dir, sess.graph) for step in xrange(FLAGS.max_steps): start_time = time.time() _, loss_value = sess.run([train_op, loss]) duration = time.time() - start_time assert not np.isnan(loss_value), 'Model diverged with loss = NaN' if step % 10 == 0: num_examples_per_step = FLAGS.batch_size * FLAGS.num_gpus examples_per_sec = num_examples_per_step / duration sec_per_batch = duration / FLAGS.num_gpus format_str = ('%s: step %d, loss = %.2f (%.1f examples/sec; %.3f ' 'sec/batch)') print (format_str % (datetime.now(), step, loss_value, examples_per_sec, sec_per_batch)) if step % 100 == 0: summary_str = sess.run(summary_op) summary_writer.add_summary(summary_str, step) # Save the model checkpoint periodically. if step % 1000 == 0 or (step + 1) == FLAGS.max_steps: checkpoint_path = os.path.join(FLAGS.train_dir, 'model.ckpt') saver.save(sess, checkpoint_path, global_step=step) def main(argv=None): # pylint: disable=unused-argument #cifar10.maybe_download_and_extract() if tf.gfile.Exists(FLAGS.train_dir): tf.gfile.DeleteRecursively(FLAGS.train_dir) tf.gfile.MakeDirs(FLAGS.train_dir) train() if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cifar10_utils.py ================================================ import collections import six import tensorflow as tf from tensorflow.python.platform import tf_logging as logging from tensorflow.core.framework import node_def_pb2 from tensorflow.python.framework import device as pydev from tensorflow.python.training import basic_session_run_hooks from tensorflow.python.training import session_run_hook from tensorflow.python.training import training_util from tensorflow.python.training import device_setter from tensorflow.contrib.learn.python.learn import run_config # TODO(b/64848083) Remove once uid bug is fixed class RunConfig(tf.contrib.learn.RunConfig): def uid(self, whitelist=None): """Generates a 'Unique Identifier' based on all internal fields. Caller should use the uid string to check `RunConfig` instance integrity in one session use, but should not rely on the implementation details, which is subject to change. Args: whitelist: A list of the string names of the properties uid should not include. If `None`, defaults to `_DEFAULT_UID_WHITE_LIST`, which includes most properties user allowes to change. Returns: A uid string. """ if whitelist is None: whitelist = run_config._DEFAULT_UID_WHITE_LIST state = {k: v for k, v in self.__dict__.items() if not k.startswith('__')} # Pop out the keys in whitelist. for k in whitelist: state.pop('_' + k, None) ordered_state = collections.OrderedDict( sorted(state.items(), key=lambda t: t[0])) # For class instance without __repr__, some special cares are required. # Otherwise, the object address will be used. if '_cluster_spec' in ordered_state: ordered_state['_cluster_spec'] = collections.OrderedDict( sorted(ordered_state['_cluster_spec'].as_dict().items(), key=lambda t: t[0]) ) return ', '.join( '%s=%r' % (k, v) for (k, v) in six.iteritems(ordered_state)) class ExamplesPerSecondHook(session_run_hook.SessionRunHook): """Hook to print out examples per second. Total time is tracked and then divided by the total number of steps to get the average step time and then batch_size is used to determine the running average of examples per second. The examples per second for the most recent interval is also logged. """ def __init__( self, batch_size, every_n_steps=100, every_n_secs=None,): """Initializer for ExamplesPerSecondHook. Args: batch_size: Total batch size used to calculate examples/second from global time. every_n_steps: Log stats every n steps. every_n_secs: Log stats every n seconds. """ if (every_n_steps is None) == (every_n_secs is None): raise ValueError('exactly one of every_n_steps' ' and every_n_secs should be provided.') self._timer = basic_session_run_hooks.SecondOrStepTimer( every_steps=every_n_steps, every_secs=every_n_secs) self._step_train_time = 0 self._total_steps = 0 self._batch_size = batch_size def begin(self): self._global_step_tensor = training_util.get_global_step() if self._global_step_tensor is None: raise RuntimeError( 'Global step should be created to use StepCounterHook.') def before_run(self, run_context): # pylint: disable=unused-argument return basic_session_run_hooks.SessionRunArgs(self._global_step_tensor) def after_run(self, run_context, run_values): _ = run_context global_step = run_values.results if self._timer.should_trigger_for_step(global_step): elapsed_time, elapsed_steps = self._timer.update_last_triggered_step( global_step) if elapsed_time is not None: steps_per_sec = elapsed_steps / elapsed_time self._step_train_time += elapsed_time self._total_steps += elapsed_steps average_examples_per_sec = self._batch_size * ( self._total_steps / self._step_train_time) current_examples_per_sec = steps_per_sec * self._batch_size # Average examples/sec followed by current examples/sec logging.info('%s: %g (%g), step = %g', 'Average examples/sec', average_examples_per_sec, current_examples_per_sec, self._total_steps) def local_device_setter(num_devices=1, ps_device_type='cpu', worker_device='/cpu:0', ps_ops=None, ps_strategy=None): if ps_ops == None: ps_ops = ['Variable', 'VariableV2', 'VarHandleOp'] if ps_strategy is None: ps_strategy = device_setter._RoundRobinStrategy(num_devices) if not six.callable(ps_strategy): raise TypeError("ps_strategy must be callable") def _local_device_chooser(op): current_device = pydev.DeviceSpec.from_string(op.device or "") node_def = op if isinstance(op, node_def_pb2.NodeDef) else op.node_def if node_def.op in ps_ops: ps_device_spec = pydev.DeviceSpec.from_string( '/{}:{}'.format(ps_device_type, ps_strategy(op))) ps_device_spec.merge_from(current_device) return ps_device_spec.to_string() else: worker_device_spec = pydev.DeviceSpec.from_string(worker_device or "") worker_device_spec.merge_from(current_device) return worker_device_spec.to_string() return _local_device_chooser ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/cmle_config.yaml ================================================ trainingInput: scaleTier: CUSTOM masterType: complex_model_m_gpu workerType: complex_model_m_gpu parameterServerType: complex_model_m workerCount: 1 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/evaluator.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('draw_pr', True, '') flags.DEFINE_float('precision_thre', 0.8, '') from tensorboard import summary as summary_lib from collections import defaultdict import numpy as np from gezi import Timer import gezi import melt logging = melt.logging import pandas as pd pd.set_option('display.max_colwidth', -1) import deepiu classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') def write(ids, predicts, model_path, labels=None, images=None, suffix='valid_info'): tb = pd.DataFrame() tb['id'] = ids predicts = [classes[x] for x in predicts] if labels is not None: tb['predict'] = predicts labels = [classes[x] for x in labels] tb['label'] = labels ofile = model_path + '.valid_error.png' from deepiu.visualize.classify import plot_example_errors plot_example_errors(images, labels, predicts, smooth=True, #smooth=False, #class_names=classes, image_names=ids, out_file=ofile, max_show=9) else: tb['label'] = predicts ofile = model_path + '.%s' % suffix tb.to_csv(ofile, index=False) def evaluate(eval_ops, iterator, model_path=None, sess=None): if model_path: ids_list = [] predictions_list = [] labels_list = [] losses = [] images_list = [] id_, loss_, predicts_, labels_, images_ = eval_ops if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) try: while True: ids, loss, predictions, labels, images = sess.run(eval_ops) images = images.astype(np.uint8) losses.append(loss) predictions_list.append(predictions) labels_list.append(labels) images_list.append(images) if model_path: ids_list.append(ids) except tf.errors.OutOfRangeError: loss = np.mean(losses) predicts = np.concatenate(predictions_list) labels = np.concatenate(labels_list) images = np.concatenate(images_list) acc = np.mean(np.equal(predicts, labels)) results = [loss, acc] names = ['metric/valid/loss/avg', 'metric/valid/acc'] if model_path: write(np.concatenate(ids_list), predicts, model_path, labels, images, suffix='valid_info' ) return results, names def inference(ops, iterator, model_path=None, sess=None): assert model_path if model_path: ids_list = [] predictions_list = [] id_, predicts_ = ops if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) try: while True: ids, predictions = sess.run(ops) predictions_list.append(predictions) if model_path: ids_list.append(ids) except tf.errors.OutOfRangeError: predicts = np.concatenate(predictions_list) if model_path: write(np.concatenate(ids_list), predicts, model_path, labels=None, suffix='infer_info' ) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/gen-records.sh ================================================ # notice must be python2 for python3 refer to https://www.cs.toronto.edu/~kriz/cifar.html dict = pickle.load(fo, encoding='bytes') python=/home/gezi/pyenv/bin/python $python generate_cifar10_tfrecords.py --data-dir /home/gezi/data/cifar10_data2/ ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/generate_cifar10_tfrecords.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Read CIFAR-10 data from pickled numpy arrays and writes TFRecords. Generates tf.train.Example protos and writes them to TFRecord files from the python version of the CIFAR-10 dataset downloaded from https://www.cs.toronto.edu/~kriz/cifar.html. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import argparse import os import tarfile from six.moves import cPickle as pickle from six.moves import xrange # pylint: disable=redefined-builtin import tensorflow as tf import glob import cv2 import melt import gezi CIFAR_FILENAME = 'cifar-10-python.tar.gz' CIFAR_DOWNLOAD_URL = 'https://www.cs.toronto.edu/~kriz/' + CIFAR_FILENAME CIFAR_LOCAL_FOLDER = 'cifar-10-batches-py' NUM_FOLDS = 10 classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') classes_map = dict(zip(classes, range(len(classes)))) print('----------', classes_map) import pandas as pd l = pd.read_csv('./mount/data/kaggle/cifar-10/trainLabels.csv') m = {} for i in range(len(l)): m[l.id[i]] = l.label[i] def _int64_feature(value): return tf.train.Feature(int64_list=tf.train.Int64List(value=[value])) def _bytes_feature(value): return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value])) def convert_to_tfrecord(input_files, output_file): """Converts a file to TFRecords.""" print('Generating %s' % output_file) with tf.python_io.TFRecordWriter(output_file) as record_writer: for input_file in input_files: id = int(os.path.basename(input_file)[:-4]) img = cv2.imread(input_file) # turn to channel first #img = img.transpose(2,0,1) if 'test' not in output_file: label = classes_map[m[id]] else: label = -1 example = tf.train.Example(features=tf.train.Features( feature={ 'id': _int64_feature(id), 'image': _bytes_feature(img.tobytes()), 'label': _int64_feature(label) })) record_writer.write(example.SerializeToString()) def main(data_dir): input_dir = './mount/data/kaggle/cifar-10' input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train')) if int(os.path.basename(f)[:-4]) % NUM_FOLDS != 0] print('train:', len(input_files)) output_file = os.path.join(data_dir, 'train.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = [f for f in glob.glob('%s/%s/*.png' % (input_dir, 'train')) if int(os.path.basename(f)[:-4]) % NUM_FOLDS == 0] input_files = sorted(input_files, key=lambda f:int(os.path.basename(f)[:-4])) print('valid:', len(input_files)) output_file = os.path.join(data_dir, 'valid.tfrecords') convert_to_tfrecord(input_files, output_file) input_files = glob.glob('%s/%s/*.png' % (input_dir, 'test')) input_files = sorted(input_files, key=lambda f:int(os.path.basename(f)[:-4])) print('test:', len(input_files)) output_file = os.path.join(data_dir, 'test.tfrecords') convert_to_tfrecord(input_files, output_file) print('Done!') if __name__ == '__main__': data_dir = './mount/data/cifar10' main(data_dir) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/inference.py ================================================ import melt p = melt.SimplePredictor('./mount/temp/cifar10/model/resnet.momentum.decay/epoch/model.ckpt-30.00-10530', key='pre_logits') feature = p.inference([melt.read_image('./mount/data/kaggle/cifar-10/test/10.png')]) print(feature) ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/model_base.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model. Related papers: https://arxiv.org/pdf/1603.05027v2.pdf https://arxiv.org/pdf/1512.03385v1.pdf https://arxiv.org/pdf/1605.07146v1.pdf """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class ResNet(object): """ResNet model.""" def __init__(self, is_training, data_format, batch_norm_decay, batch_norm_epsilon): """ResNet constructor. Args: is_training: if build training or inference model. data_format: the data_format used during computation. one of 'channels_first' or 'channels_last'. """ self._batch_norm_decay = batch_norm_decay self._batch_norm_epsilon = batch_norm_epsilon self._is_training = is_training assert data_format in ('channels_first', 'channels_last') self._data_format = data_format def forward_pass(self, x): raise NotImplementedError( 'forward_pass() is implemented in ResNet sub classes') def _residual_v1(self, x, kernel_size, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers, using Plan A for shortcut connection.""" del activate_before_residual with tf.name_scope('residual_v1') as name_scope: orig_x = x x = self._conv(x, kernel_size, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, kernel_size, out_filter, 1) x = self._batch_norm(x) if in_filter != out_filter: orig_x = self._avg_pool(orig_x, stride, stride) pad = (out_filter - in_filter) // 2 if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = self._relu(tf.add(x, orig_x)) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers with preactivation, plan A shortcut.""" with tf.name_scope('residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, [1, 1, 1, 1]) if in_filter != out_filter: pad = (out_filter - in_filter) // 2 orig_x = self._avg_pool(orig_x, stride, stride) if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _bottleneck_residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Bottleneck residual unit with 3 sub layers, plan B shortcut.""" with tf.name_scope('bottle_residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter // 4, stride, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) # pad when stride isn't unit x = self._conv(x, 3, out_filter // 4, 1, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter, 1, is_atrous=True) if in_filter != out_filter: orig_x = self._conv(orig_x, 1, out_filter, stride, is_atrous=True) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _conv(self, x, kernel_size, filters, strides, is_atrous=False): """Convolution.""" padding = 'SAME' if not is_atrous and strides > 1: pad = kernel_size - 1 pad_beg = pad // 2 pad_end = pad - pad_beg if self._data_format == 'channels_first': x = tf.pad(x, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) else: x = tf.pad(x, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) padding = 'VALID' return tf.layers.conv2d( inputs=x, kernel_size=kernel_size, filters=filters, strides=strides, padding=padding, use_bias=False, data_format=self._data_format) def _batch_norm(self, x): if self._data_format == 'channels_first': data_format = 'NCHW' else: data_format = 'NHWC' return tf.contrib.layers.batch_norm( x, decay=self._batch_norm_decay, center=True, scale=True, epsilon=self._batch_norm_epsilon, is_training=self._is_training, fused=True, data_format=data_format) def _relu(self, x): return tf.nn.relu(x) def _fully_connected(self, x, out_dim): with tf.name_scope('fully_connected') as name_scope: x = tf.layers.dense(x, out_dim) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _avg_pool(self, x, pool_size, stride): with tf.name_scope('avg_pool') as name_scope: x = tf.layers.average_pooling2d( x, pool_size, stride, 'SAME', data_format=self._data_format) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _global_avg_pool(self, x): with tf.name_scope('global_avg_pool') as name_scope: assert x.get_shape().ndims == 4 if self._data_format == 'channels_first': x = tf.reduce_mean(x, [2, 3]) else: x = tf.reduce_mean(x, [1, 2]) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/prepare.sh ================================================ pyenv python generate_cifar10_tfrecords.py --data-dir=/home/gezi/data/cifar10 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/readme ================================================ use ./train-melt-momentum2-batch128.sh this is the same as tensorflow tuorial which set learning rate 0.1 0.01 ... 500 epoch will get valid_loss 0.4307 valid_acc 0.9294 test_acc 0.93010 use ./train-melt-momentum-decay.sh this is the same as above but set learning rate decay 0.99 per epoch 500 epoch will get valid_loss 0.3297 valid_acc 0.9359 test_acc 0.9367 ./train-melt-momentum-decay-2gpu.sh is 2gpu version ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-2gpu-2.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --variable-strategy GPU \ --train-steps=110000 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu.2 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-2gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-4gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=4 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.4gpu ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-2gpu.sh ================================================ python ./train.py \ --save_interval_epochs 10 \ --save_interval_steps 1000 \ --model_dir /home/gezi/temp/cifar10/model/resnet.2gpu \ --optimizer momentum \ --num_gpus=2 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99.2gpu \ --batch_size_by_gpu_num=1 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-decay98.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay98 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.98 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.2gpu \ --variable_strategy=cpu \ --batch_size_per_gpu=0 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum-decay-batch64.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.batch64 \ --batch_size=64 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum2-batch128-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128.2gpu \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum2-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt-momentum2.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train-melt.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train/train.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=1 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback #import evaluator import cifar10 import cifar10_model import cifar10_utils import evaluator eval_names = None def tower_loss(model, feature, label): logits = model.forward_pass(feature, input_data_format='channels_last') weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=label) loss = tf.reduce_mean(loss) model_params = tf.trainable_variables() loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) return loss # import tfmpl # @tfmpl.figure_tensor # def draw_confusion_matrix(matrix): # '''Draw confusion matrix for MNIST.''' # fig = tfmpl.create_figure(figsize=(7,7)) # ax = fig.add_subplot(111) # ax.set_title('Confusion matrix for MNIST classification') # tfmpl.plots.confusion_matrix.draw( # ax, matrix, # axis_labels=['Digit ' + str(x) for x in range(10)], # normalize=True # ) # return fig def main(_): num_train_examples = 45000 melt.apps.train.init() batch_size = melt.batch_size() num_gpus = melt.num_gpus() batch_size_per_gpu = FLAGS.batch_size # batch size not changed but FLAGS.batch_size will change to batch_size / num_gpus #print('--------------batch_size, FLAGS.batch_size, num_steps_per_epoch', batch_size, FLAGS.batch_size, num_train_examples // batch_size) global_scope = FLAGS.algo with tf.variable_scope(global_scope) as global_scope: data_format = 'channels_first' num_layers = 44 batch_norm_decay = 0.997 batch_norm_epsilon = 1e-05 data_dir = './mount/data/cifar10/' with tf.variable_scope('main') as scope: model = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=True, data_format=data_format) dataset = cifar10.Cifar10DataSet(data_dir, subset='train', use_distortion=True) ## This is wrong will cause all gpu read same data, so slow convergence but will get better test result #_, image_batch, label_batch = dataset.make_batch(FLAGS.batch_size) def loss_function(): # doing this 2gpu will get similar result as 1gpu, seems a bit better valid result and a bit worse test result might due to randomness _, image_batch, label_batch = dataset.make_batch(batch_size_per_gpu) return tower_loss(model, image_batch, label_batch) #loss_function = lambda: tower_loss(model, image_batch, label_batch) loss = melt.tower_losses(loss_function, num_gpus) pred = model.predict() pred = pred['classes'] label_batch = dataset.label_batch acc = tf.reduce_mean(tf.to_float(tf.equal(pred, label_batch))) #tf.summary.image('train/image', dataset.image_batch) # # Compute confusion matrix # matrix = tf.confusion_matrix(label_batch, pred, num_classes=10) # # Get a image tensor for summary usage # image_tensor = draw_confusion_matrix(matrix) # tf.summary.image('train/confusion_matrix', image_tensor) scope.reuse_variables() ops = [loss, acc] # TODO multiple gpu validation and inference validator = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=False, data_format=data_format) valid_dataset = cifar10.Cifar10DataSet(data_dir, subset='valid', use_distortion=False) valid_iterator = valid_dataset.make_batch(batch_size) valid_id_batch, valid_image_batch, valid_label_batch = valid_iterator.get_next() valid_loss = tower_loss(validator, valid_image_batch, valid_label_batch) valid_pred = validator.predict() valid_pred = valid_pred['classes'] ## seems not work with non rpeat mode.. #tf.summary.image('valid/image', valid_image_batch) ## Compute confusion matrix #matrix = tf.confusion_matrix(valid_label_batch, valid_pred, num_classes=10) ## Get a image tensor for summary usage #image_tensor = draw_confusion_matrix(matrix) #tf.summary.image('valid/confusion_matrix', image_tensor) #loss_function = lambda: tower_loss(validator, val_image_batch, val_label_batch) #val_loss = melt.tower_losses(loss_function, FLAGS.num_gpus, is_training=False) #eval_ops = [val_loss] metric_eval_fn = lambda model_path=None: \ evaluator.evaluate([valid_id_batch, valid_loss, valid_pred, valid_label_batch, valid_image_batch], valid_iterator, model_path=model_path) predictor = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, is_training=False, data_format=data_format) predictor.init_predict() test_dataset = cifar10.Cifar10DataSet(data_dir, subset='test', use_distortion=False) test_iterator = test_dataset.make_batch(batch_size) test_id_batch, test_image_batch, test_label_batch = test_iterator.get_next() test_pred = predictor.predict(test_image_batch, input_data_format='channels_last') test_pred = test_pred['classes'] inference_fn = lambda model_path=None: \ evaluator.inference([test_id_batch, test_pred], test_iterator, model_path=model_path) global eval_names names = ['loss', 'acc'] melt.apps.train_flow(ops, names = names, metric_eval_fn=metric_eval_fn, inference_fn=inference_fn, model_dir=FLAGS.model_dir, num_steps_per_epoch=num_train_examples // batch_size) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/baseline/tf/cifar10_estimator.v1/train.tfrecords ================================================ ================================================ FILE: projects/kaggle/cifar10/fastai/cifar10-simplenet.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## CIFAR 10" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "%reload_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "from pathlib import Path" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "from fastai.conv_learner import *\n", "PATH = Path(\"data/cifar10/\")" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "bs=64\n", "sz=32" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "tfms = tfms_from_model(resnet18, sz, aug_tfms=[RandomFlip()], pad=sz//8)\n", "data = ImageClassifierData.from_csv(PATH, 'train', PATH/'train.csv', tfms=tfms, bs=bs)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "learn = ConvLearner.pretrained(resnet18, data)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "lr=1e-2; wd=1e-5" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "178615044d0445b39b5d41485c8540d6", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " \r" ] } ], "source": [ "learn.lr_find()\n", "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "60c148e603be4d758a07fc2894a4fdf0", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=2), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.249359 1.116181 0.604056 \n", " 1 1.215158 1.07421 0.613115 \n" ] }, { "data": { "text/plain": [ "[1.0742103, 0.6131150265957447]" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 1, cycle_len=1)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "lrs = np.array([lr/9,lr/3,lr])" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "learn.unfreeze()" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "20f2b140b25e4397a2d798b7ed213512", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " \r" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAEOCAYAAABiodtuAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzt3Xl8FdX9//HXJzskIRAIa4CwIwKyBBAVRWut21friq11q0u1trXLt4u17de2v1a72VqtWqut1q0uoKKiuKIgsoSw72HfQhLIvi/n98e90JgFEs1k7k3ez8fjPpg7M3fmcybhfnLmnDnHnHOIiIjUF+F3ACIiEnqUHEREpBElBxERaUTJQUREGlFyEBGRRpQcRESkESUHERFpRMlBREQaUXIQEZFGPEsOZhZnZsvMbLWZrTezXzaxz/Vmlmtmq4Kvm7yKR0REWi7Kw2NXAmc550rMLBpYZGZvOueWNNjveefct1p60F69erm0tLS2jFNEpMNbsWJFnnMupaX7e5YcXGDQppLg2+jg63MP5JSWlkZGRsbnPYyISKdiZrtas7+nbQ5mFmlmq4Ac4B3n3NImdrvMzNaY2UtmNtDLeEREpGU8TQ7OuVrn3AQgFZhqZmMb7PIakOacGw+8CzzZ1HHM7BYzyzCzjNzcXC9DFhER2qm3knOuAFgAnNtg/SHnXGXw7T+Ayc18/lHnXLpzLj0lpcW3zERE5DPysrdSipl1Dy53Ac4GNjXYp1+9txcBG72KR0REWs7L3kr9gCfNLJJAEnrBOfe6mf0KyHDOzQW+Y2YXATXAYeB6D+MREZEWsnCbCS49Pd2pt5KISOuY2QrnXHpL99cT0iIiYeDdDQfJyilut/MpOYiIhIHbnlnB7Mx97XY+JQcRkRBXVVNHda0jPiay3c6p5CAiEuLKqmoA6BrjZR+iT1NyEBEJcaVVtQDEx6rmICIiQWWVqjmIiEgDqjmIiEgjqjmIiEgjR2sOSg4iInLE0d5Kuq0kIiJHlFaq5iAiIg2o5iAiIo2o5iAiIo2UVdUQFx1BZIS12zmVHEREQlxpVU271hpAyUFEJOSVVda2a3sDKDmIiIQ81RxERKSRsqpaurbjcN2g5CAiEvJKK2uIj1XNQURE6lHNQUREGlGbg4iINKLeSiIi0ohqDiIi8ik1tXVUVNe161wOoOQgIhLSjoyrlBCn5CAiIkElwRFZE9WVVUREjiipCCQHPecgIiJHlQTnj9ZtJREROepoclBXVhEROaL0aHKIbtfzKjmIiISw/7Y5qOYgIiJBR24rJarmICIiRxxJDqo5iIjIUaWVgfmjoyLb9+tayUFEJIQVV9aQ0M7POICSg4hISCupUHIQEZEG/JgFDjxMDmYWZ2bLzGy1ma03s182sU+smT1vZllmttTM0ryKR0QkHHXE20qVwFnOuZOACcC5ZnZyg31uBPKdc8OBPwO/8zAeEZGwU9rRkoMLKAm+jQ6+XIPdLgaeDC6/BHzBzMyrmEREwk1JZU27j6sEHrc5mFmkma0CcoB3nHNLG+wyANgD4JyrAQqBnl7GJCISTjpcmwOAc67WOTcBSAWmmtnYBrs0VUtoWLvAzG4xswwzy8jNzfUiVBGRkFRcUdPuczlAO/VWcs4VAAuAcxts2gsMBDCzKCAJONzE5x91zqU759JTUlI8jlZEJDRU1dRRWVPXsWoOZpZiZt2Dy12As4FNDXabC1wXXL4ceN8516jmICLSGeUUVwDQOzG23c/tZTrqBzxpZpEEktALzrnXzexXQIZzbi7wOPCUmWURqDFc5WE8IiJh5UBhIDn0696l3c/tWXJwzq0BJjax/hf1liuAK7yKQUQknB1JDv2T4tr93HpCWkQkRB0oKAegr5KDiIgckVNcSdeYSBLj2ncuB1ByEBEJWfllVfToGuPLuZUcRERCVEFZNT3i27/WAEoOIiIhSzUHERFppKCsmu5KDiIiUl+g5qDbSiIiElRb5ygsV81BRETqyS+rwjnoGa/kICIiQdnBp6P7dGv/B+BAyUFEJCQdLAokBz+ejgYlBxGRkJRddKTm0P4jsoKSg4hISDpYWEGEQUqCkoOIiARlF1XQKyGWqEh/vqaVHEREQlB2UaVv7Q2g5CAiEpIOFlb41lMJlBxEREJSdlEFfZUcRETkiPKqWgrLq3VbSURE/mvlnnwARvVJ9C0GJQcRkRCzaGseURHGycN6+haDkoOISIhZu6+QUX0TSYiN8i0GJQcRkRCzKbuYE/p18zUGJQcRkRByqKSS3OJKRvf1r70BlBxEREJKVk4JACN8bIwGJQcRkZCSlRtIDsNS4n2NQ8lBRCSEbMsppUt0JP2Tuvgah5KDiEgIycotYWhKPBER5mscSg4iIiFkW04Jw3sn+B2GkoOISKgor6plX0E5w1KUHEREJGhbsDFaNQcRETlq29GeSkoOIiIStC2nhAiDtF5d/Q5FyUFEJBTU1TkWbMllWEoCsVGRfoej5CAiEgrW7itkzd5Cvn7aEL9DAZQcRERCwopdgTkcZo5K8TmSACUHEZEQsHhbHgO6d6Gfz09GH6HkICLisy0Hi3l/Uw4XTejvdyhHeZYczGygmX1gZhvNbL2Z3dHEPjPNrNDMVgVfv/AqHhGRUPXL19bTo2sMN5yS5ncoR3k5zVAN8APnXKaZJQIrzOwd59yGBvstdM5d6GEcIiIha39BOZ9sO8S3zhpB725xfodzlGc1B+fcAedcZnC5GNgIDPDqfCIi4eiPb28mJiqCKyan+h3Kp7RLm4OZpQETgaVNbJ5uZqvN7E0zO7E94hERCRUrduVz1ujeDEz2/8G3+jxPDmaWAMwGvuucK2qwORMY7Jw7CXgAeKWZY9xiZhlmlpGbm+ttwCIi7aSiupbdh8sY0dvfWd+a4mlyMLNoAonhGefcnIbbnXNFzrmS4PI8INrMejWx36POuXTnXHpKSmj0ARYR+bw2ZRfjHIz0eUrQpnjZW8mAx4GNzrn7mtmnb3A/zGxqMJ5DXsUkIhJKZq/YS0xUBNOH9fQ7lEa87K10KnANsNbMVgXX/RQYBOCcewS4HLjNzGqAcuAq55zzMCYRkZDgnGP++my+eEIfkuNj/A6nEc+Sg3NuEXDMee6ccw8CD3oVg4hIqNqWW0JOcSWnjWh0Jz0k6AlpEREfrNsX6J8zaVAPnyNpWouSg5ndYWbdLOBxM8s0s3O8Dk5EpKPalhs6czc0paU1h68Hu6GeA6QANwD3ehaViEgHl5VTwuCe8SExd0NTWpocjrQdnA/8yzm3muO0J4iISNNq6xzLd+Yzpn83v0NpVkuTwwoze5tAcpgfHCupzruwREQ6pro6x/3vbSWvpJILxvXzO5xmtbS30o3ABGC7c67MzJIJ3FoSEZFWeHHFHv763lbOHJXCF8f08TucZrW05jAd2OycKzCzrwE/Awq9C0tEpONxzvHcsj0M6RXPP6+fQnRk6HYYbWlkDwNlZnYS8CNgF/Bvz6ISEemA5q3NZtWeAm6aMYTg4BAhq6XJoSb45PLFwP3OufuB0BsMREQkRJVX1fLbeRs5oV83rpoyyO9wjqulbQ7FZnYngeEwZphZJBDtXVgiIh3LQwuy2FdQzp9nTSAyIrRrDdDymsMsoJLA8w7ZBCbt+YNnUYmIdCA1tXU88fFOLhjXj6lDkv0Op0ValByCCeEZIMnMLgQqnHNqcxARaYE1+woprqzhvHF9/Q6lxVo6fMaVwDLgCuBKYKmZXe5lYCIiHcXirDwApg8NvaG5m9PSNoe7gCnOuRwAM0sB3gVe8iowEZGOYlFWHmP6daNnQqzfobRYS9scIo4khqBDrfisiEinlVNcwfKd+ZwxKrxmsWxpzeEtM5sPPBd8PwuY501IIiIdx/x12dTWOS6bNMDvUFqlRcnBOfdDM7uMwOxuBjzqnHvZ08hERDqA1XsL6ZUQw7CUBL9DaZUWzwTnnJsNzPYwFhGRDmf9/iJO7J8U8k9EN3TM5GBmxUBTczob4JxzoTverIiIz+rqHNtySjg9RKcCPZZjJgfnnIbIEBH5jHKKK6mqrWNgcmjO9nYs6nEkIuKRvfllAKT26OJzJK2n5CAi4pG9+eUApPZQzUFERII+zsqjS3Skag4iIhKQV1LJq6v2c/nkVOKiI/0Op9Va3JW1oztcWkV+WVWL+iKXV9VSVFFNTGQEc1buY+6qfZRU1jCidyI/OGckSV2j6Z0Y96nP1NTWERXCsz6JSNt6duluqmrruP7UNL9D+UyUHICsnBKuenQJeSWVPHz1JE4Z3oukLk1PV1FRXcv5f13IjrzSo+tG901kW24p23JLeWt9NtGRxoXj+/Ojc0exv6CC37yxge15pVw3PY3bzxxOTFTLk0RtnSNzdz6Zu/Lp1iWaWekDiQiDseBFOrPKmlqeWrKLmaNSwu7htyM6XXIor6rl5ZX7uHxyKjFRETy+aAe/nbeRmMgIoiON257JpFdCDJdMHMDgnvFU1QS6oR2ZCPyO/6xkR14piXFRFFfU8OBXJ3Lh+P68seYAszP3suVgMXHRkby8ch/b80rJLapgf2EF/ZPiuP+9rcxdvZ9xA5KIj41k1pRBTBjY/VPxVVTXEmHGq6v28bcPsth5qOxT259dupu/XzOZ/t3D7x6mSGfx5tpscosrueHUIX6H8plZYPbP8JGenu4yMjJa/bnC8mreWHOAXYdK+ftH2wG45fSh/OvjHUwb0pO7LxpDflk1Nz6xnKKKmmMe6/Yzh/G9s0ey5WAJY/o3/RzgvLUH+N7zq6isqeP3l43nyikD+WBTDnfOWUt2UQVdoiOprq2jR3wMXWMi6d4lmn0FFeSVVNIrIZa8kkoAvjJ1EFPSejBzVG8Wbs3lrpfXUVJZw6g+ifRJimPmyBSunT6YdfuLiI+JZEQfPZoi4rcfvLCaD7fksPyus0PmyWgzW+GcS2/x/p0lOczJ3Mv3X1jdaP2J/bvxxA1TSUn871C6T32yk2U787lqykASYqNYlJXHE4t3EhcdgXPwyu2n0qsFQ+/mB9sxhtarVlbV1FFeXQvAH+ZvorC8huKKanYdKmNA9y4sCvZuGN0vkb/MmsDgnvGfOub7mw7yr493sje/nOKKavJKqugaE0lZVeCYU9J68PDXJrcoPhFpe8t3HuaKRz7hrNG9+ef1U/wO5yglh2ZU1dQx8mdvAvB//zOGq6cNZm9+GYN7xrdoPlfnXLv8BVBVU9eqNok5mXt5askuzhrVm52HypiduZeByV347SXjmDEivIYIFgl3C7fmcs3jywD4yXmjufWMYT5H9F9KDsewdPshHv1oO3+44iSS42PaOLLQsGT7Ie56eS07D5VxZXoql05KZdyApLDsSicSTmrrHBc9uIjSyhoe/tpkhqUktOoPPa8pOQiHS6v49esbeHnlvqPreifGMmVIMqeP6MXA5K6cMiz8BgITCVXbcku4/ZlMNmUXc9+VJ3HppFS/Q2pEyUGOOlhUweJtebywfC/5ZVXkFFdyuLQKgPPH9eWXF439VFuLiLTeoZJKzr7vQyLM+PG5o7lyykC/Q2pSa5NDp+vK2pn06RbHJRNTuWRi4K+YsqoaFmcd4p0NB3ll1T4+3PwBM0akcN+sk+gao18Fkc/iuWW7yS+rZt53ZjTbezEcqebQSX24JZc7Z69hf2EFZoFRI285fRhXhOmj/iJ+KK2sYcbvP2DsgCT+/fWpfodzTKo5SIucMTKFxXd+gYVbc5m3Npv3Nx3k56+s48H3t3JCv26cNbo3V0weSJcYJQqR5jy9ZBeHS6v47tkj/A6lzSk5dHIzRqQwY0QKzo3lk+2H+OP8zSzYnMuCzbn8+5Nd/GXWBMYOSPI7TJGQ9Nqa/Uwe3INJg3r4HUqb86yflZkNNLMPzGyjma03szua2MfM7K9mlmVma8xsklfxyLGZGacM68Xs204h6zfn8dDVkygsr+bCBxZx6r3v8+d3tlBbF163IEW8dKikkvX7izhjZMd8nsjLmkMN8APnXKaZJQIrzOwd59yGevucB4wIvqYBDwf/FZ+YGVGRxvnj+nHqsF68uGIPH2flcf97W8ncnc+Zo3rTv3scqT26qkYhndrLK/fhHEfHXetoPEsOzrkDwIHgcrGZbQQGAPWTw8XAv12gVXyJmXU3s37Bz4rPkrpGc9OModw0YyhPLdnFr1/fwMKteQBEGNx35QRmjkqhps5puA7pVOrqHE8t2UX64B6c0K/j9FCqr13aHMwsDZgILG2waQCwp977vcF1Sg4h5pqTB3P5pFRyiiuYtzabfyzcznefXwVAcnwMr337NAZopFjpJD7amsuuQ2V8/4sj/Q7FM54/221mCcBs4LvOuaKGm5v4SKMb22Z2i5llmFlGbm6uF2FKC3SJiWRwz3humzmMjLvO5rFr0zlvbF8Ol1Zx0QOLeHjBNvYcLjv+gUTCWFlVDX+Yv5leCbGcN7af3+F4xtPnHMwsGngdmO+cu6+J7X8HFjjnngu+3wzMPNZtJT3nEHq2Hizm9mcz2XKwBICRfRKYOLAHh0qrGNU3gVtOH9bs5Eki4eZ3b23i4QXb+Me16WHV3hAyzzlYYAjTx4GNTSWGoLnAt8zsPwQaogvV3hB+RvRJZP53T2dHXilvrsvmrXXZvL0hm7joSN7deJBnl+7m5xeOIcKMPYfLeH9zDtecPJhLJg4ImbHuRVrq/Y05nD4yJawSw2fhWc3BzE4DFgJrgbrg6p8CgwCcc48EE8iDwLlAGXCDc+6Y1QLVHMJLxs7DXP7IJ01umzYkmXsuHfep+S5EQllNbR0n/OItvn7aEO487wS/w2mVkKk5OOcW0XSbQv19HHC7VzGI/9LTknnx1umUVNRQVlXLlLQe9EqI5fmMPdwzbyNXPPIJf7lqguaekLCw+3AZ1bWOEb07/oyLekJaPDclLbnRuq9MHcS0Iclc969lXPP4MgZ078L0YT35xulDNdWphKytOYF2teG9O35tV8lBfDM0JYF3v38GTy/ZzcKtubyx5gDz1h7gzvNPoEfXQAP2heP7+xylyH9lKTmItI/YqEhuPG0IN542hOzCCr7x9Ap+/sq6o9sPFlVywbh+9E2K8zFKkYCsnBL6J8WRENvxvzo7fgklbPRNiuOFb5zMextziIwwHvogi1+/voF75m3kZxecwDXT01o037eIF+rqHMt3HmZ0B30iuiElBwkpsVGRnD8u8GDR2Sf04dVV+3howTbufm0Db284yJh+3egSE8nYAUmcM6YPZkZlTS0xkRHqFiueytydz978cn5wTsd9Kro+JQcJWZERxqWTUrlk4gBeyNjDL15dz+Jth45uH9IrnrziSoora5gxohcPfnWSHrYTzyzbeRiAmSN7+xxJ+1BykJBnZsyaMoizRvehrKqGLjGR3DNvEwu35nHu2L5U19bx6ur9XPDXhfzpipOYNrSn3yFLB7R8x2GG9IqnR3yM36G0CyUHCRspibFAYPTXP8+a8KltV6YP5OZ/ZzDr0SV8c+Ywvn3WCM1iJ23moy25fLA5l9vPHOZ3KO3G84H3RNrDKcN78e4PzmDy4B48tGAblz68mJrauuN/UKQF/rN8N8nxMdzxhc7R3gBKDtKB9Evqwku3Tueu809g44EiZv5xAfe+uYlDJZV+hyZhbtmOwERXMVGd5ytTt5WkQzEzbpoxhNjoCF7M2MsjH24jc1c+/7xhSqfomy5tr6CsirySSkb17fgPvtXXedKgdBpmxrXT03jt26fxl1kTyNh1mDN+/wGPfrSN8qpav8OTMHPkqejOMJ5SfUoO0qF9eeIA5nzzVEb1TeS38zZx878zmL8+m4pqJQlpmVV7CgAY3U/JQaRDmTCwO8/efDI/OncUi7Ly+MZTK5j16BIKy6v9Dk3CwMKteQxLiadfUueaBlfJQTqNb84czrKffoE/XXESG/YXMunX7/Cd51ZSVlXjd2gSoiqqa1m641CnHFJeLXTSqfTuFsdlk1NJTojhsYXbmbt6P/llVdx72XgGdO9cfxnK8WXszKeiuo4ZI3r5HUq7U3KQTunMUb05c1Rv/rNsN7+Yu55T732fSyYO4Itj+nDW6N7EResBOoEXV+whMS6K6cM631P3Sg7SqV01dRADk7vys1fW8f6mHF5euY9eCbGc2L8b104fzFmje2tAv05qW24Jb6w5wDXTB9M1pvN9VXo2h7RXNIe0eKWyppYPN+fytwXbyCmq4EBhBScN7M7lk1M5c1QKPbrGEK9nJTqFiupazvzjAg6VVDH/e6czpFe83yF9biEzh7RIuImNiuScE/tyzol9Ka+q5XdvbeLJT3ayOtiVMTLCuOfScVyZPtDfQMVzzyzdzYHCCh67Nr1DJIbPQjUHkWPYV1BObnEl7244yAebc1i/v4gLxvfjG6cPZXxqd7/DEw9k7DzM1x5fysSBPXjulpP9DqfNtLbmoOQg0kLlVbX8Yf5mnl22i4rqOtJ6dqV3Yhynj+zFuWP7MryTPUHbER0ureIrjy7hcFkVr9x+aofqwabkIOKxw6VVzMncy5LthzhQWMH6/UVEWOBp7FnpA5k6JFmN2GHIOceNT2bw4ZZc/jxrAhed1N/vkNqU2hxEPJYcH8NNM4Zy04yhABwsquCv721l7ur9zMncx20zh/Hjc0f7HKW01tsbDvL+phx+dsEJHS4xfBZ6Qlrkc+rTLY7fXDKO5XedzXlj+/Lwgm28tGKv32FJKz34fhZDU+K5/pQ0v0MJCUoOIm0kLjqSn104hpNSk/jfF1fzf6+uo7hC4zeFgz2Hy1i7r5Crpw0mKlJfi6DkINKmBnTvwuzbTuGKyak8+ckuTrnnfRZszvE7LDmON9cdAOC04Z1vmIzmKDmItLGoyAjuuXQcj12bTmpyV25/JpNbn1rB4m15hFsHkM6goKyKP769hdF9ExnRu3NN6HMsapAW8UBUZARnj+nD6H6J3D13PYu35fHW+mxOHd6Tey8dz8Dkrn6HKEEfbc2jqqaO31wylogI9TI7QjUHEQ+l9ujKY9dNYeGPz+KHXxrFil35XPvPZewvKPc7NCHQffXpJbvolRDLhIE9/A4npCg5iLSDpC7R3H7mcJ6+cRr7C8r5/Vub/A5JgMzd+SzbcZhvnTmMSNUaPkXJQaQdpaclc/OMobyyaj8fqKHaV+VVtXznuVUkxEZxucbLakTJQaSdfeus4Yzsk8B3/7OKF5bvYeOBIr9D6pQydh1mX0E5d190IgkabbcRJQeRdhYXHck/rk0nNiqCH81ew3n3L+TeN3WbqT3tyCvlT29vITLCOHdsX7/DCUlKlyI+GNwznqdunMaynYdZu7eARz7cRveu0dx6xjC/Q+vwcosr+cqjS8guquDK9FTVGpqhqyLik1F9ExnVN5Ga2oEUlddw75ubKK2s4Y4vjNBTuh7ZnF3MrU+vIL+sivuvmsCF4zWGUnOUHER8FhUZwQNfncj3X1jNA+9nkbk7ny9PGEB6WnKnnWjGCyt353PJQ4sBePamaZyip6GPybPkYGb/BC4EcpxzY5vYPhN4FdgRXDXHOfcrr+IRCWXRkRE88JWJnDa8J3fP3cDHWYeIijCuSB/IWaN7c9rwXnSJifQ7zLD2+KLAV82DX52oxNACXtYcngAeBP59jH0WOucu9DAGkbAya8ogzhvXjwMFFfy/NzbwYsYenlu2m8S4KP5zy8mc2D/J7xDDzp7DZWTsOsyb67K5ecYQ3UpqIc+Sg3PuIzNL8+r4Ih1Vt7houvWN5qkbp1FWVcP89dn85o2N3PxkBndfdCLnnKjeNS1RWF7Nvz7ewaMfbaesqpb+SXHceNpQv8MKG363ek03s9Vm9qaZnehzLCIhp2tMFJdMTOXx66YQFRnBLU+t4Pnlu/0OK+Q557jm8aX85d2tTElL5lcXn8ibd5xO36Q4v0MLG55OExqsObzeTJtDN6DOOVdiZucD9zvnRjRznFuAWwAGDRo0edeuXZ7FLBKqqmvr+PoTy1my/RBj+nWje9cYHv7aJLrGqF9JfSWVNdz39hb++fEOfnXxiVw7Pc3vkEJCSM0hfazk0MS+O4F051zesfbTHNLSmRWUVfGDF1bz3qbA0BtdoiMZmhLPyUN78r/njFKjNXDXy2t5ZuluvjC6N3+7ehJx0bomEEZzSJtZX+Cgc86Z2VQCt7gO+RWPSDjo3jWGx6+fAsCyHYeZt/YAa/YW8PiiHXyclcdj16WT2qPzDge+5WAxzy3bzfWnpHH3RbpT/Xl42ZX1OWAm0MvM9gL/B0QDOOceAS4HbjOzGqAcuMppJhSRFps6JJmpQ5IBWLA5h28/t5LTfvcBv7lkLFdPG+xzdO2rorqW9fuLeG31fqIiI7jjC03eoZZW8PS2khd0W0mkaWv3FvLDl1azKbuYC8b341cXnUjPhFi/w/JcYVk133ouk4VbA3ekzx/Xl4eunuxzVKEnbG4riUjbGpeaxOzbTuFHL63hrXXZbNxfxM2nD2Xy4B6M7JPod3ieeGH5Hn40ew0A/ZLimDYkmZ+cd4LPUXUMSg4iHUh8bBR/u3oSczL38v0XVnPnnLUAnH1CH35y3mhSe3TpUA2089YdAGDut05lfGp3n6PpWJQcRDqgSyelUuegqLyajQeKeClzL+9uPMgZI1N44oYpmIX/rGcllTUs23GYa04erMTgASUHkQ7q8smpR5evSB/I/e9t4cMtuTz84Ta+OXO4j5F9fkUV1Zz3l4WUVdVy6aQBfofTIfn9hLSItIOpQ5J5+sZpXDyhP79/azP/+ngHlTW1fof1mRSUVfHNpzPZV1DOd74wgomDevgdUoekmoNIJ2Fm/O6y8eSVVPLL1zbwh/mbKauqpWtMJJOCX7DDeydw42lDSOoaTUJMFBERoXX7qaCsii//7WP2F1Twh8vHc4XmfvaMurKKdDLOORZl5fHk4l28u/EgAAmxUZRU1nxqvwiDa6en8YsLx4REkticXcxP5qxh7d5Cnr355KPPeEjLqCuriByTmTFjRAozRqRw5I9DM2NbbgmLtx1i4ZZcRvRJYOXuAp5YvJN1+wr5/eXjGZqS4FvMh0uruO6fyyiuqOZPV56kxNAOVHMQkSY553ghYw/3vLmJ+Jgofn4iOdvWAAAK/klEQVThCZw7tl+7x1FVExhwcNmOw8z55imMHaA5LT6L1tYc1CAtIk0yM2ZNGcTj16WTW1LJrU9nctOTGazYdbjdYthXUM4PX1rNoqw8fnPJWCWGdqTbSiJyTJMHJ7Py51/k169v4OWV+3h340EunTSA314yzrMH6urqHD+evYYXV+wF4IdfGqXG53am5CAixxUfG8W9l43nf780ip/OWcuczH1U1zp+ev5o+iV1aZNzFFVU8+/FO4mKjCArp4SXVuzlpIHd+dKJfbjtjGFtcg5pOSUHEWmxXgmxPHptOve9vZkHPshi/vpsxvbvxuCe8VwxOZWTh/Zk9d4CnvpkF7OmDGTa0J4tOu7b67P5zn9WUlFdd3Td9aek8X//M6ZDPM0djtQgLSKfyY68Un48ew2bDhRRVBHoBpsYG0VxvS6xkwf34CtTB1FYXs2irbnU1DmGpSQwbUgyZ4/pQ3ZhBc8v38ODH2QB8Osvj2VqWjL7C8o5Y2RKSHSh7ShCaiY4Lyg5iISW2jrH0h2HOFBQwaKsPE5KTWLS4B68umo/b649wP7CCgAG9+xKQmwUWw4WU1376e+dmMgI7pt1EheM66eagkeUHEQkZFTX1vH2+oOM7JPAiOCw4WVVNTy9ZBfvbDhIeloyo/smMmNECsnxMT5H27EpOYiISCN6zkFERD43JQcREWlEyUFERBpRchARkUaUHEREpBElBxERaUTJQUREGlFyEBGRRsLuITgzKwS21luVBBQ2sdwLyGvDU9c/9ufdt7ntTa0/3rqG24+87+zlh7a9Bn6Vv6n1x3ofzuVvblu4lb8l+3+e/wOftfyDnXMpxw67HudcWL2AR5t732A5w8vzfp59m9ve1PrjrWvuenT28rf1NfCr/Mcr47GuR7iVv6W/A6Fe/rb+HfCr/OF4W+m1Y7xvuM3L836efZvb3tT646071vVoSyp/2+3bmvI3td6P/wPtUf7mtoVb+Vuy/+f5P9Au5Q+720otZWYZrhXjiHQ0nb38oGug8qv8n6f84VhzaKlH/Q7AZ529/KBroPJ3bp+r/B225iAiIp9dR645iIjIZ6TkICIijSg5iIhII50yOZjZTDNbaGaPmNlMv+Pxg5nFm9kKM7vQ71jam5mdEPzZv2Rmt/kdjx/M7Mtm9g8ze9XMzvE7nvZmZkPN7HEze8nvWNpL8P/8k8Gf+9XH2z/skoOZ/dPMcsxsXYP155rZZjPLMrOfHOcwDigB4oC9XsXqhTYqP8CPgRe8idI7bVF+59xG59ytwJVA2HV1bKNr8Ipz7mbgemCWh+G2uTYq/3bn3I3eRuq9Vl6LS4GXgj/3i4578LZ6grC9XsDpwCRgXb11kcA2YCgQA6wGxgDjgNcbvHoDEcHP9QGe8btMPpT/bOAqAl8MF/pdpvYuf/AzFwGLga/6XSa/rkHwc38CJvldJh/L/5Lf5WnHa3EnMCG4z7PHO3YUYcY595GZpTVYPRXIcs5tBzCz/wAXO+fuAY512yQfiPUiTq+0RfnN7EwgnsAvTLmZzXPO1XkaeBtpq5+/c24uMNfM3gCe9S7ittdGvwMG3Au86ZzL9DbittXG3wFhrTXXgsBdklRgFS24axR2yaEZA4A99d7vBaY1t7OZXQp8CegOPOhtaO2iVeV3zt0FYGbXA3nhkhiOobU//5kEqtixwDxPI2s/rboGwLcJ1CCTzGy4c+4RL4NrB639HegJ/AaYaGZ3BpNIR9Hctfgr8KCZXUALhtnoKMnBmljX7NN9zrk5wBzvwml3rSr/0R2ce6LtQ/FFa3/+C4AFXgXjk9Zeg78S+LLoKFpb/kPArd6F46smr4VzrhS4oaUHCbsG6WbsBQbWe58K7PcpFj+o/J27/KBr0NnLX1+bXIuOkhyWAyPMbIiZxRBobJ3rc0ztSeXv3OUHXYPOXv762uRahF1yMLPngE+AUWa218xudM7VAN8C5gMbgRecc+v9jNMrKn/nLj/oGnT28tfn5bXQwHsiItJI2NUcRETEe0oOIiLSiJKDiIg0ouQgIiKNKDmIiEgjSg4iItKIkoN4zsxK2uEcF7VwqPK2POdMMzvlM3xuopk9Fly+3sxCYnwvM0trOPRzE/ukmNlb7RWT+EfJQcKGmUU2t805N9c5d68H5zzW+GMzgVYnB+CnwAOfKSCfOedygQNmdqrfsYi3lBykXZnZD81suZmtMbNf1lv/igVmpltvZrfUW19iZr8ys6XAdDPbaWa/NLNMM1trZqOD+x39C9zMnjCzv5rZYjPbbmaXB9dHmNlDwXO8bmbzjmxrEOMCM/utmX0I3GFm/2NmS81spZm9a2Z9gsMk3wp8z8xWmdmM4F/Vs4PlW97UF6iZJQLjnXOrm9g22MzeC16b98xsUHD9MDNbEjzmr5qqiVlglq83zGy1ma0zs1nB9VOC12G1mS0zs8RgDWFh8BpmNlX7MbNIM/tDvZ/VN+ptfgU47kxiEub8nqxCr47/AkqC/54DPEpg1MgIAhOvnB7clhz8twuwDugZfO+AK+sdayfw7eDyN4HHgsvXAw8Gl58AXgyeYwyBse0BLicwRHcE0JfAfB6XNxHvAuCheu978N/RBG4C/hRcvhv433r7PQucFlweBGxs4thnArPrva8f92vAdcHlrwOvBJdfB74SXL71yPVscNzLgH/Ue59EYKKX7cCU4LpuBEZi7grEBdeNADKCy2kEJ40BbgF+FlyOBTKAIcH3A4C1fv9e6eXtq6MM2S3h4Zzga2XwfQKBL6ePgO+Y2SXB9QOD6w8BtcDsBsc5Mtz6CgLzMjTlFReYp2KDmfUJrjsNeDG4PtvMPjhGrM/XW04FnjezfgS+cHc085mzgTFmR0dM7mZmic654nr79ANym/n89HrleQr4fb31Xw4uPwv8sYnPrgX+aGa/A153zi00s3HAAefccgDnXBEEahkExvWfQOD6jmzieOcA4+vVrJII/Ex2ADlA/2bKIB2EkoO0JwPucc79/VMrA5PvnA1Md86VmdkCAvN7A1Q452obHKcy+G8tzf8OV9Zbtgb/tkRpveUHgPucc3ODsd7dzGciCJSh/BjHLee/ZTueFg985pzbYmaTgfOBe8zsbQK3f5o6xveAg8BJwZgrmtjHCNTQ5jexLY5AOaQDU5uDtKf5wNfNLAHAzAaYWW8Cf5XmBxPDaOBkj86/CLgs2PbQh0CDckskAfuCy9fVW18MJNZ7/zaB0TABCP5l3tBGYHgz51lMYHhlCNzTXxRcXkLgthH1tn+KmfUHypxzTxOoWUwCNgH9zWxKcJ/EYAN7EoEaRR1wDYE5hxuaD9xmZtHBz44M1jggUNM4Zq8mCX9KDtJunHNvE7gt8omZrQVeIvDl+hYQZWZrgF8T+DL0wmwCE6GsA/4OLAUKW/C5u4EXzWwhkFdv/WvAJUcapIHvAOnBBtwNNDHTmHNuE4GpORMbbgt+/obgdbgGuCO4/rvA981sGYHbUk3FPA5YZmargLuA/+ecqwJmAQ+Y2WrgHQJ/9T8EXGdmSwh80Zc2cbzHgA1AZrB769/5by3tTOCNJj4jHYiG7JZOxcwSnHMlFphDeBlwqnMuu51j+B5Q7Jx7rIX7dwXKnXPOzK4i0Dh9sadBHjuej4CLnXP5fsUg3lObg3Q2r5tZdwINy79u78QQ9DBwRSv2n0ygAdmAAgI9mXxhZikE2l+UGDo41RxERKQRtTmIiEgjSg4iItKIkoOIiDSi5CAiIo0oOYiISCNKDiIi0sj/B/GnSvAJ1C43AAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.lr_find(lrs/1000)\n", "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "eed5344e189344b0b4b2273634cd54b7", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.863994 0.792711 0.726479 \n" ] }, { "data": { "text/plain": [ "[0.7927107, 0.7264793882978723]" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lrs, 1, cycle_len=1, wds=wd)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## Simplenet" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [], "source": [ "stats = (np.array([ 0.4914 , 0.48216, 0.44653]), np.array([ 0.24703, 0.24349, 0.26159]))" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "tfms = tfms_from_stats(stats, sz, aug_tfms=[RandomFlip()], pad=sz//8)\n", "data = ImageClassifierData.from_csv(PATH, 'train', PATH/'train.csv', tfms=tfms, bs=bs)" ] }, { "cell_type": "code", "execution_count": 109, "metadata": {}, "outputs": [], "source": [ "class SimpleConv(nn.Module):\n", " def __init__(self, ic, oc, ks=3, drop=0.2, bn=True):\n", " super().__init__()\n", " self.conv = nn.Conv2d(ic, oc, ks, padding=(ks-1)//2)\n", " self.bn = nn.BatchNorm2d(oc, momentum=0.05) if bn else None\n", " self.drop = nn.Dropout(drop, inplace=True)\n", " self.act = nn.ReLU(True)\n", " \n", " def forward(self, x):\n", " x = self.conv(x)\n", " if self.bn: x = self.bn(x)\n", " return self.drop(self.act(x))" ] }, { "cell_type": "code", "execution_count": 110, "metadata": {}, "outputs": [], "source": [ "net = nn.Sequential(\n", " SimpleConv(3, 64),\n", " SimpleConv(64, 128),\n", " SimpleConv(128, 128),\n", " SimpleConv(128, 128),\n", " nn.MaxPool2d(2),\n", " SimpleConv(128, 128),\n", " SimpleConv(128, 128),\n", " SimpleConv(128, 256),\n", " nn.MaxPool2d(2),\n", " SimpleConv(256, 256),\n", " SimpleConv(256, 256),\n", " nn.MaxPool2d(2),\n", " SimpleConv(256, 512),\n", " SimpleConv(512, 2048, ks=1, bn=False),\n", " SimpleConv(2048, 256, ks=1, bn=False),\n", " nn.MaxPool2d(2),\n", " SimpleConv(256, 256, bn=False, drop=0),\n", " nn.MaxPool2d(2),\n", " Flatten(),\n", " nn.Linear(256, 10)\n", ")" ] }, { "cell_type": "code", "execution_count": 111, "metadata": {}, "outputs": [], "source": [ "bm = BasicModel(net.cuda(), name='simplenet')\n", "learn = ConvLearner(data, bm)\n", "learn.crit = nn.CrossEntropyLoss()\n", "learn.opt_fn = optim.Adam\n", "learn.unfreeze()\n", "learn.metrics=[accuracy]\n", "lr = 1e-3\n", "wd = 5e-3" ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "collapsed": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "6c2e6102551b4bd5bfedb8195031c800", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " \r" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#sgd mom\n", "learn.lr_find()\n", "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "collapsed": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0118cead54d64daaae42f42517915865", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " \r" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#adam\n", "learn.lr_find()\n", "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 112, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "39fb789c3a4645fda163193ed43c1a2f", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=20), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.464019 1.812134 0.324219 \n", " 1 1.299797 1.872144 0.301779 \n", " 2 1.152769 1.641428 0.405336 \n", " 3 1.06013 1.531731 0.46875 \n", " 4 1.001071 1.344982 0.546875 \n", " 5 0.957563 1.159598 0.629405 \n", " 6 0.895986 1.152674 0.619265 \n", " 7 0.852257 1.277312 0.607713 \n", " 8 0.844254 1.373495 0.538813 \n", " 9 0.784301 0.972733 0.717586 \n", " 10 0.751162 0.859369 0.741606 \n", " 11 0.735842 0.921104 0.729555 \n", " 12 0.690585 0.966144 0.706034 \n", " 13 0.662635 0.824769 0.759142 \n", " 14 0.626122 0.784435 0.775598 \n", " 15 0.61732 0.772561 0.772689 \n", " 16 0.570246 0.727107 0.785322 \n", " 17 0.526993 0.718699 0.786652 \n", " 18 0.499946 0.645241 0.812916 \n", " 19 0.499634 0.630276 0.816572 \n" ] }, { "data": { "text/plain": [ "[0.630276, 0.8165724734042553]" ] }, "execution_count": 112, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 1, wds=wd, cycle_len=20, use_clr=(32,10))" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7f8e07243c194ada863b64921bf0ada3", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=5), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.603266 2.02473 0.271941 \n", " 1 1.326654 1.682021 0.391955 \n", " 2 1.124686 1.564738 0.427776 \n", " 3 0.963391 1.164936 0.603225 \n", " 4 0.82219 1.19409 0.578291 \n" ] }, { "data": { "text/plain": [ "[1.1940901, 0.5782912234042553]" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 1, wds=wd, cycle_len=5, use_clr=(32,10))" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [], "source": [ "learn.save('0')" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c0051276049a4827b6f5e82a8d4170d6", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=7), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.819311 1.080679 0.636386 \n", " 1 0.90712 1.294629 0.547457 \n", " 2 0.717722 0.938504 0.700881 \n", " 3 0.898441 1.263396 0.586187 \n", " 4 0.803364 1.037912 0.666888 \n", " 5 0.668088 0.855235 0.737616 \n", " 6 0.616654 0.754756 0.770778 \n" ] }, { "data": { "text/plain": [ "[0.75475585, 0.7707779255319149]" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 3, cycle_len=1, cycle_mult=2, wds=wd)" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [], "source": [ "learn.save('1')" ] }, { "cell_type": "code", "execution_count": 106, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "6d693d920dcb482fbd0759c4589348e5", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type HBox.

\n", "

\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "

\n", "

\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "

\n" ], "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=10), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.833685 1.148864 0.620928 \n", " 1 0.819332 1.212562 0.608627 \n", " 2 0.803363 0.984564 0.697224 \n", " 3 0.790965 1.016013 0.702045 \n", " 4 0.733683 0.902306 0.735622 \n", " 5 0.698549 0.878661 0.732131 \n", " 6 0.648197 0.783731 0.758311 \n", " 7 0.597658 0.738099 0.782912 \n", " 8 0.557584 0.646611 0.80768 \n", " 9 0.507423 0.603345 0.822058 \n" ] }, { "data": { "text/plain": [ "[0.60334516, 0.8220578457446809]" ] }, "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 1, wds=wd, cycle_len=10, use_clr=(32,10))" ] }, { "cell_type": "code", "execution_count": 108, "metadata": {}, "outputs": [], "source": [ "learn.save('2')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fin" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.4" }, "toc": { "nav_menu": { "height": "266px", "width": "252px" }, "number_sections": true, "sideBar": true, "skip_h1_title": false, "toc_cell": false, "toc_position": {}, "toc_section_display": "block", "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/cifar10/fastai/cifar10.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## CIFAR 10" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "%reload_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from fastai.conv_learner import *\n", "PATH = \"data/cifar10/\"\n", "os.makedirs(PATH,exist_ok=True)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "classes = ('plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck')\n", "stats = (np.array([ 0.4914 , 0.48216, 0.44653]), np.array([ 0.24703, 0.24349, 0.26159]))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def get_data(sz,bs):\n", " tfms = tfms_from_stats(stats, sz, aug_tfms=[RandomFlip()], pad=sz//8)\n", " return ImageClassifierData.from_paths(PATH, val_name='test', tfms=tfms, bs=bs)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "bs=128" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "### Look at data" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "hidden": true }, "outputs": [], "source": [ "data = get_data(32,4)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "hidden": true }, "outputs": [], "source": [ "x,y=next(iter(data.trn_dl))" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "hidden": true }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP8AAAD8CAYAAAC4nHJkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAG3RJREFUeJztnVusXGd1x/9rz+XcfU58iXNwTG4EkZSWBB1ZqYgQBYFShBSQqggeUB4ijCoiFYk+RKlUgtqHUBUQDxWVaSJCRQkpARFVUUuaokZ5CTghOE7cQkhsYsf2ie/nfmb2Xn2YCT129n+dObcZO9//J1me86359l7zzV5z+f6z1jJ3hxAiPbJeOyCE6A0KfiESRcEvRKIo+IVIFAW/EImi4BciURT8QiSKgl+IRFHwC5Eo1bVMNrPbAHwTQAXAP7n7/dH9R0YGfdvW0VLban5pmGW24jkAEJ3JbDXHXP9fSYZerMrFwMdVPWag8GLFNi/4nFWz7svP1yO8Pnx167ieV9zJk1OYmp7r6JCrDn4zqwD4BwAfBXAYwC/M7DF3f4nN2bZ1FH9z352ltmazQc/Fgrxer0f+UVseBEKlWuE24od7TudEQRddRxa8sGVZFMjEjYL7GF7QwWfDuXyO2ubnZ0rHF+YX6JxitS8MUdCRQ2bBA8usxm0Zvz7g3BZFY9XLfYneEJntK/c/GpzpfNbysX8XgJfd/RV3XwTwMIDb13A8IUQXWUvw7wDw2pK/D7fHhBCXABu+4Wdmu81sr5ntPTc1u9GnE0J0yFqC/wiAnUv+vrI9dh7uvsfdJ9x9YtPI4BpOJ4RYT9YS/L8AcL2ZXWNmdQCfBvDY+rglhNhoVr3b7+5NM7sbwH+gJfU96O4vLjMHzaJ8Vz8H340u2KZnHkkyq3tdK3K+45wzR8LN92gnPVAdAv+rGODHJDvmeTFPp+S14DFn3La4yBWaxWb589kIVIdwtz9SRoLd/ozsirfEqnI8OJlHykLwnEU794tEFrXgusqoH53rnmvS+d39cQCPr+UYQojeoF/4CZEoCn4hEkXBL0SiKPiFSBQFvxCJsqbd/pXiKNDMyxM7PMgQY0kueR7m5wUm/ppnoW5HMtVC+Yc/riHwHz2N2Ti1nTk+RW2TJ8ptzWKRzunfytdjYAt/bM2MHzMHeZ4jSZdl4QAooqzEYP2Z1NoXXR/BtRhJaRb4H11W7KFF8iC7rFaSHKt3fiESRcEvRKIo+IVIFAW/EImi4BciUbq72++ORrN8FziqB8c256tVXm4pStyIcx+CHVZ6SO5HPdjRtyk+7zdH35Id/XsOHz5GbVOL5f6PDI3ROaOLfdQ2f4avY3UkSAjqK08kyms8wSja7Y92sYuwjFf5xRPVf6wH10AR7vZHtgiiZgWJTiwBzVeQ2KN3fiESRcEvRKIo+IVIFAW/EImi4BciURT8QiRKl6W+AouNcqkvj2ruERmwXuECSiU6XJi8E3S2aZYf9Nhr5d1pAGD2FE/CqU7zUuZHJ09QW2G8U9HY2HC5oXmGH6/gNQGn5/m5/Ax/3BUiXw3sHKFzbPgstTWbgRQcyoCkpmEgD+ZZ1M0nkiNXnmDUshE/gnqHzbxJfJDUJ4RYBgW/EImi4BciURT8QiSKgl+IRFHwC5Eoa5L6zOwggCkAOYCmu09E9y8cmCcSBavTBwBG6r41gxp+FrTCCsu3ebl/AJCR1lWbtvFadvV+nhXXP7uN2rZfcSW1RXXwfO5c+TjJbgOA2aD03Ow8lyNnTnA5sjZ3unR85NwQnTP4zqAN2dgcNeVV/pyx+n5RFmlzlXX6CtpXbpm2bcTHZtTarLl2qW89dP4/cXd+FQghLkr0sV+IRFlr8DuAn5rZs2a2ez0cEkJ0h7V+7L/V3Y+Y2eUAnjCz/3H3p5beof2isBsAxi7jVW2EEN1lTe/87n6k/f8kgB8D2FVynz3uPuHuE0ND/Ws5nRBiHVl18JvZkJmNvHkbwMcA7F8vx4QQG8taPvZvB/BjM3vzOP/i7v8eTXA4GkS+yAIpJCOZduGcKMMq6q4VpIg5kfpqQ3zOwCZuu2rwKmqrze+gtpNv/I7aFmfKv1rNOP/KRRItW7Y3eLHQ5jzP6luYKc/QKxrTdM7rh/labb5qE7UNX8kvYxstv3by4HmO5DwHlxWjQqLmQUFZoug5KdIJxLJip6w6+N39FQDvW7MHQoieIKlPiERR8AuRKAp+IRJFwS9Eoij4hUiUrhbwbIl95bpGVPzQifQSZrcFvfosKBYaZhcSmweyy1wgbS1mvLjn+HbeW69vhPfWO3PieOm4nzxJ58xP88KZ/c576zWCYpbTC+WZjlNn+fH6avxyPHeIP59juJzaivlyP5o8oRJF8Fu0oL4rPOitlwVZlUzSs+C6YmdaiQCod34hEkXBL0SiKPiFSBQFvxCJouAXIlG6vNsPsCyGaJeSJdu4B7v2QfZOtKMfmACiEqxWPegb5NvKo6ztFoDp6fI6fQBgeflu+uLUJJ2zOMWPNxT0PVuo8R14z8ovrcL4JZfV+HosFA1qO32aKxn1U8RwgvteezdPIqoM8cQej5SA4H2WXT8W1eNj9f1WsN2vd34hEkXBL0SiKPiFSBQFvxCJouAXIlEU/EIkSpelPkNGJKBIo2BqWRbIeZGtEs6jJjipGVgJ5CtHjdqaTV48b2GBJ8BUgwSYolKe9DMbdLSab3Dj9DSv07c4z/3v7y+vGdiY5W235uf4ubIqf5+aOs0TpIwkjNm5Op3TF7SB23TdFmqLrrk8kO1q9fLH5hUubxbNoMdah+idX4hEUfALkSgKfiESRcEvRKIo+IVIFAW/EImyrNRnZg8C+ASASXd/b3tsM4AfALgawEEAd7j76WWPBaCK8mwq1grr9xNLqATZdNWglVeF+AAAQVk6sDKDFsiU7lzqmyUtrQBgYZDLV1ng/9xcuUTYCKShZs7T0aaagUYYrNXsbLkMePIszyAcqK9Ogq0P8zXOquW2hQaX0c69+Dq1jR3mcuTlW0eprRl066r2l4dhNsgnVYfKx6N6km85fgf3+Q6A2y4YuwfAk+5+PYAn238LIS4hlg1+d38KwIVZ0bcDeKh9+yEAn1xnv4QQG8xqv/Nvd/ej7dvH0OrYK4S4hFjzhp+7O4Lf5prZbjPba2Z7Z2aCXtBCiK6y2uA/bmbjAND+n9aIcvc97j7h7hNDQ7zZhBCiu6w2+B8DcGf79p0AfrI+7gghukUnUt/3AXwIwFYzOwzgywDuB/CImd0F4BCAOzo5mQHIyDcEiwocEk0pkuWyoLhnJbBRXRFAToomRuJKVvAlPjPDqksCJ6pcbqoUXFLKSaHLep1nsUUy4LlTXMGtD5Vn7gFArb/8fCNjm+mcZs5lxcFBom0BmMt5puDUVLk0lweZewMkyw4ANm3m8tvwtdzHPLjkFqfKvw7PnuWyYn2x/IAFaf1VxrLB7+6fIaaPdHwWIcRFh37hJ0SiKPiFSBQFvxCJouAXIlEU/EIkStd79TEhLRTfmCoTFEUsnEseXnBbFkqO7HxBX0Dn0lAjkLbeOPMatW3pD7ISK+W2+aCP3EKgVWaktyIAzJ3lUuXIYLkM2BfIaEO1EWorgszDap1LjoPN8gc3PMzXcOcNl1PbZddyG4i8CQBFk/ufjy2Wjg9v40VcF+fK5cGsGjWbvOC+Hd9TCPG2QsEvRKIo+IVIFAW/EImi4BciURT8QiRKd6U+A4xVYuxcoVhCIOd50OeMVeJcDjKvEixjJDlGhT9PNY5TW73KpS2wLMI8KKTi3DYyxuW3+bNn+CEXyzPSPC+XtQAgq/HnZTCQ0abOcMlxy/Zy/9/5hzvpnKHtm6gtypnLguzIKAO1IBd/lnE5slYtf54t6Bf4luN3fE8hxNsKBb8QiaLgFyJRFPxCJIqCX4hE6epuvwPISaKIBdv9GcnssWALNcj5CWvuRduyfON+la+hwQ5wXvAd+BOzh6htgNT366/zJKKhQd7uCtZPTRXwWoILM+XtxqqB+jE7M01t3sd93Hr1ZdQ2/p4ryv0Y5YpJo8GTcCrRbnrQPs6CC5IlrlnQeivLys8VxdFbjtHxPYUQbysU/EIkioJfiERR8AuRKAp+IRJFwS9EonTSrutBAJ8AMOnu722P3QfgcwDeaN/tXnd/fPnTFchJwk0WSCjMUhRcvvKgdl70sD1o5VUwuSaSFaPEnqAuXSWQbIqM13ZbqJb7XxniazUwxW22yB/cYnD1ZH3lEuHI0ACdU93G16q6mUuOQ+/gkmNGEoI8kPOcyGgA0Awku0og9XlUb5JcB1GSDpP6VpIg18k7/3cA3FYy/g13v6n9r4PAF0JcTCwb/O7+FACeMymEuCRZy3f+u81sn5k9aGb8J1ZCiIuS1Qb/twBcB+AmAEcBfI3d0cx2m9leM9s7M80LOQghusuqgt/dj7t77q3drG8D2BXcd4+7T7j7xNAwr8YihOguqwp+Mxtf8uenAOxfH3eEEN2iE6nv+wA+BGCrmR0G8GUAHzKzm9ASuQ4C+HwnJ3N35AX56L+C2mO/P17QSioHl/oyj2ru8Xk5y7IK5LzIFtf3i+AZbkW1/JjZGD/aFdUhaqu/wTPtjuVcfpuZK38EzUUuK2bGn5ehd/BtpYzImwBgpK5eVuXPcxG0cyvyIOszzDLlUh9rHxfJ307asq1E61s2+N39MyXDD3R8BiHERYl+4SdEoij4hUgUBb8QiaLgFyJRFPxCJEqXC3g6Gnl5Vl+RBdlSBWmTFbx05RZkbYFnxTk5FwDkOWmrFGQCrkLBbM2LCpqGFUjLjf39PJvummne2uzMFl5I9PQQb2vV3yj3v3qOr30eyGiztSDbssmfa5b9VgTFMYsgTbPZ5FJlvgo5D+A+VqicFxXw7By98wuRKAp+IRJFwS9Eoij4hUgUBb8QiaLgFyJRut6rr0lklKiXGZO2on58keYRFUaMtDmWhRcVdawGr6+ZB3JeJShomnHZaFOlvJhl7XUuUT3z3KvUNr+TZxBuemdw+RApLajRiZPDfdSWBU9ZHmTT5UxiCzIqm4EsF2XnIZAq86hYK9Gsw+uU4HEnyvPQO78QiaLgFyJRFPxCJIqCX4hEUfALkShd3e03GKpZ+SmrUWJPhdQ4C88V7LIHteKKaIfVy3dsPQ8SOoLWT6HCEWQt9dd4zb3Tvz5bOn7ohcN0zv7XJ6ntWoxT2+Zx7scQypOFHDxRaDZQMYI8LTSDWo5NptAEyUB5oAREdfVY263W+bjaUmc1GaMWdkT+CNWIC9A7vxCJouAXIlEU/EIkioJfiERR8AuRKAp+IRKlk3ZdOwF8F8B2tHJz9rj7N81sM4AfALgarZZdd7j76ehYmRn6K+WyRjVKZDEik1gglRlPSEFQcy/svEUScaLac5Ug0YLVYQOAapX7P3uM19z75b5DpeOjo8N0znWD76S2G951LbVty7nUtzh5onT81flTdE7WP0htTLIDgEaTr0ejKJffmsFzZkH7ryAXK6z951FmErn2oyQdJlWut9TXBPAld78RwC0AvmBmNwK4B8CT7n49gCfbfwshLhGWDX53P+ruz7VvTwE4AGAHgNsBPNS+20MAPrlRTgoh1p8Vfec3s6sB3AzgGQDb3f1o23QMra8FQohLhI6D38yGATwK4Ivufm6pzVtfNEq/bJjZbjPba2Z7Z6ZJe24hRNfpKPjNrIZW4H/P3X/UHj5uZuNt+ziA0h+Iu/sed59w94mh4fp6+CyEWAeWDX5r1RJ6AMABd//6EtNjAO5s374TwE/W3z0hxEbRSVbfBwB8FsALZvZ8e+xeAPcDeMTM7gJwCMAdyx3IANTI600tC6Q5MieSVjIPHtoqpT6w2m5B6ycLJMxI6osKFBbBa/Y117+7dHzbGK+PZ87bQvn8HLW9vO8Vajt0rDy7cHqQPy/Xj3MfPVJug4KN1az8sdVIdikAVIM2WUVQ36/JpwHBMZmsG7Vlo7UJV8Cywe/uT4OXw/zImj0QQvQE/cJPiERR8AuRKAp+IRJFwS9Eoij4hUiUrhbwhANWlAsHUesqJ25mgRwWFdWM9DzLg8KfRbktC6SyDNxmFkhsgfvVKi8GOb5ta+l4jWRTAsDC3Cy1Hfjta9R28sw0tZ1aLPdxbBPPBOyrBfJbndsiGZBJc1Ehzog852ufE1kRAPn965vOlF9XUVYfyxZdSYsvvfMLkSgKfiESRcEvRKIo+IVIFAW/EImi4BciUbor9YH3M8ubgV5D5ItIzauEhQyDjLmgJ1zOThhJjoEtko2KnEs2W/o2U9vkyfIaqrU6L4450NdPbdt2XE5t/UF9hqGT5Vl9Rc7lwb4qLwbVX+fnip5qZsuCgprN4HlpRL36gusqKvLq7JjBA6uSXDtJfUKIZVHwC5EoCn4hEkXBL0SiKPiFSJSu7va78x1zawQ1yegOZrRjG+16BruyQeunZpMkiUSl+PjGMQYHRqnt8lG+o39F3zi1vbT/v0vHFxvH6Jwb33MztU1M7KK2k4dfoLYjh8rX8diZIPmlyRcyqrkX1V3MKmxelNwV7cxzH5tB+7hI9TFyzGjnPiM+WhATbzlGx/cUQrytUPALkSgKfiESRcEvRKIo+IVIFAW/EImyrNRnZjsBfBetFtwOYI+7f9PM7gPwOQBvtO96r7s/Hh3L3ZGzxJ58gc8j45WgLp0Fr2seaENMzotsUS5FUePHqwwHyUxz/Kk5fOIQtWXV8vU9M3mudBwAXnhxP7UNjF5GbVe971Zq8/qB0vHJX75E50T1E6M15nIeUMnKE4IK55JuKLEFUlolSDDKAokwo7X/gnMRfXkltQk70fmbAL7k7s+Z2QiAZ83sibbtG+7+9x2fTQhx0dBJr76jAI62b0+Z2QEAOzbaMSHExrKi7/xmdjWAmwE80x6628z2mdmDZsY/HwohLjo6Dn4zGwbwKIAvuvs5AN8CcB2Am9D6ZPA1Mm+3me01s70zM4vr4LIQYj3oKPjNrIZW4H/P3X8EAO5+3N1zb+2efRtA6Y/A3X2Pu0+4+8TQEK/GIoToLssGv7W2Ph8AcMDdv75kfGl2yacA8C1jIcRFRye7/R8A8FkAL5jZ8+2xewF8xsxuQkuJOwjg88sdyN3RaJSnueVFkP5GJI9KFqRzBTJJ1AapGWQX5kTq8yBDzIOigMdO/I7aXmsepLYrBvj2ys03XFk6/uroAJ1z/MQctT3z9NPUdvqGP6A21h4sD56XRoPLb5nxOoORrMukLw/aw4WyXCClBUl9gAVyJGnbFknSVSL1raQJWSe7/U+TY4aavhDi4ka/8BMiURT8QiSKgl+IRFHwC5EoCn4hEqXrBTwXiZQWdEiiRC2XovZIkR6SN7k012yWOxnJK6EMRbO5gKzGbV7lxxwaKS8K+o7t/AdWjTle3PPw5HFq+6+fPkFt/ZtGSsf7+vhq1U9yreyKK3hB0wgmv4XZeVFLrqBaa9Q2rOJBBieRHYuC/yJ2Bcl7FL3zC5EoCn4hEkXBL0SiKPiFSBQFvxCJouAXIlG6LvU1Fsv1EFbYM7K5cymkKLjUl4VyTdTHjxXw5LJcpRL4YUEWW5P7MZvxtTp5dr50/Pmf76Vzmgvcx4EqlwirFe7HzOzp0vGi6KNzps7y56UouK1SWUVfxuB5jq6BaF5WcD+qgbRIZekgI5RqfVFm4QXonV+IRFHwC5EoCn4hEkXBL0SiKPiFSBQFvxCJouAXIlEU/EIkioJfiERR8AuRKAp+IRJFwS9Eoiyb2GNm/QCeAtDXvv8P3f3LZnYNgIcBbAHwLIDPepRpg1YuQq1enpCQNbkrtVq5Lcv4nA2p4ZetvIZfrcZfX/v6eV23qIbfYJ3btoyWt7W6edcEnXPoYFDD71Vew6+Zcz+GVlHDb2R0kNqyoDVblIdjrE1W1HYrKpAX1vfj05qRk6wmY8HXl150K6jt18k7/wKAD7v7+9Bqx32bmd0C4KsAvuHu7wJwGsBdnZ9WCNFrlg1+bzHd/rPW/ucAPgzgh+3xhwB8ckM8FEJsCB195zezSrtD7ySAJwD8FsAZd3/zc/BhADs2xkUhxEbQUfC7e+7uNwG4EsAuAO/p9ARmttvM9prZ3tnZcEtACNFFVrTb7+5nAPwMwB8DGLP/3025EsARMmePu0+4+8TgIK8KI4ToLssGv5ltM7Ox9u0BAB8FcACtF4E/a9/tTgA/2SgnhRDrTyc1/MYBPGStQnUZgEfc/d/M7CUAD5vZ3wL4JYAHljuQGVAn0legGoHpF5Wg3VX00DwodNZs8GPmRI50cBmqr4/7UQ/abjUaXHK0Kj/fzNTZ0vHXj5+kc07NzFFbbaRcsgOAD++6hc+rlD/uA/v30TmXbeFSXxO83qEFzzUr71dEtRojW1AbMqz/GFwj7Dr2LKgXuBJNj7Bs8Lv7PgA3l4y/gtb3fyHEJYh+4SdEoij4hUgUBb8QiaLgFyJRFPxCJIqFrYnW+2RmbwA41P5zK4ATXTs5R36cj/w4n0vNj6vcfVsnB+xq8J93YrO97s7zTOWH/JAfG+qHPvYLkSgKfiESpZfBv6eH516K/Dgf+XE+b1s/evadXwjRW/SxX4hE6Unwm9ltZva/Zvaymd3TCx/afhw0sxfM7Hkz29vF8z5oZpNmtn/J2GYze8LMftP+/7Ie+XGfmR1pr8nzZvbxLvix08x+ZmYvmdmLZvYX7fGurkngR1fXxMz6zeznZvarth9faY9fY2bPtOPmB2a2tgIZ7t7VfwAqaJUBuxZAHcCvANzYbT/avhwEsLUH5/0ggPcD2L9k7O8A3NO+fQ+Ar/bIj/sA/GWX12McwPvbt0cA/BrAjd1ek8CPrq4JWjnsw+3bNQDPALgFwCMAPt0e/0cAf76W8/TinX8XgJfd/RVvlfp+GMDtPfCjZ7j7UwBOXTB8O1qFUIEuFUQlfnQddz/q7s+1b0+hVSxmB7q8JoEfXcVbbHjR3F4E/w4Ary35u5fFPx3AT83sWTPb3SMf3mS7ux9t3z4GYHsPfbnbzPa1vxZs+NePpZjZ1WjVj3gGPVyTC/wAurwm3Siam/qG363u/n4AfwrgC2b2wV47BLRe+YGg3NDG8i0A16HVo+EogK9168RmNgzgUQBfdPdzS23dXJMSP7q+Jr6Gormd0ovgPwJg55K/afHPjcbdj7T/nwTwY/S2MtFxMxsHgPb/k71wwt2Pty+8AsC30aU1MbMaWgH3PXf/UXu462tS5kev1qR97hUXze2UXgT/LwBc3965rAP4NIDHuu2EmQ2Z2cibtwF8DMD+eNaG8hhahVCBHhZEfTPY2nwKXVgTa/XHegDAAXf/+hJTV9eE+dHtNela0dxu7WBesJv5cbR2Un8L4K965MO1aCkNvwLwYjf9APB9tD4+NtD67nYXWj0PnwTwGwD/CWBzj/z4ZwAvANiHVvCNd8GPW9H6SL8PwPPtfx/v9poEfnR1TQD8EVpFcfeh9ULz10uu2Z8DeBnAvwLoW8t59As/IRIl9Q0/IZJFwS9Eoij4hUgUBb8QiaLgFyJRFPxCJIqCX4hEUfALkSj/BzJHtTNINnVnAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(data.trn_ds.denorm(x)[0]);" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "hidden": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(data.trn_ds.denorm(x)[1]);" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "## Initial model" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "hidden": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/gezi/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/models/cifar10/resnext.py:73: UserWarning: nn.init.kaiming_normal is now deprecated in favor of nn.init.kaiming_normal_.\n", " init.kaiming_normal(m.weight)\n" ] } ], "source": [ "from fastai.models.cifar10.resnext import resnext29_8_64\n", "\n", "m = resnext29_8_64()\n", "bm = BasicModel(m.cuda(), name='cifar10_rn29_8_64')" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "hidden": true }, "outputs": [], "source": [ "data = get_data(8,bs*4)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn = ConvLearner(data, bm)\n", "learn.unfreeze()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "hidden": true }, "outputs": [], "source": [ "lr=1e-2; wd=5e-4" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "hidden": true }, "outputs": [], "source": [ "lrf = learn.lr_find()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "print(lrf)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "hidden": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2989b096d1d9428b844d90c0e1adc6e5", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " 35%|███▍ | 34/98 [00:14<00:27, 2.33it/s, loss=2.23]" ] }, { "ename": "KeyboardInterrupt", "evalue": "", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/learner.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(self, lrs, n_cycle, wds, **kwargs)\u001b[0m\n\u001b[1;32m 302\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msched\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 303\u001b[0m \u001b[0mlayer_opt\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_layer_opt\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlrs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 304\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit_gen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlayer_opt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mn_cycle\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 305\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 306\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwarm_up\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwds\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/learner.py\u001b[0m in \u001b[0;36mfit_gen\u001b[0;34m(self, model, data, layer_opt, n_cycle, cycle_len, cycle_mult, cycle_save_name, best_save_name, use_clr, use_clr_beta, metrics, callbacks, use_wd_sched, norm_wds, wds_sched_mult, use_swa, swa_start, swa_eval_freq, **kwargs)\u001b[0m\n\u001b[1;32m 249\u001b[0m \u001b[0mmetrics\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmetrics\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcallbacks\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcallbacks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreg_fn\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreg_fn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mclip\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclip\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfp16\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfp16\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0mswa_model\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mswa_model\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0muse_swa\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mswa_start\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mswa_start\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 251\u001b[0;31m swa_eval_freq=swa_eval_freq, **kwargs)\n\u001b[0m\u001b[1;32m 252\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 253\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mget_layer_groups\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodels\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_layer_groups\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/model.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(model, data, n_epochs, opt, crit, metrics, callbacks, stepper, swa_model, swa_start, swa_eval_freq, visualize, **kwargs)\u001b[0m\n\u001b[1;32m 139\u001b[0m \u001b[0mbatch_num\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 140\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mcb\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mcallbacks\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mcb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_batch_begin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 141\u001b[0;31m \u001b[0mloss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel_stepper\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mV\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mV\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 142\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mavg_mom\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mloss\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mavg_mom\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 143\u001b[0m \u001b[0mdebias_loss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mavg_mom\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mbatch_num\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/model.py\u001b[0m in \u001b[0;36mstep\u001b[0;34m(self, xs, y, epoch)\u001b[0m\n\u001b[1;32m 72\u001b[0m \u001b[0mcopy_fp32_to_model\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mm\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfp32_params\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 73\u001b[0m \u001b[0mtorch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcuda\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msynchronize\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 74\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mtorch_item\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mraw_loss\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 75\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 76\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mevaluate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/model.py\u001b[0m in \u001b[0;36mtorch_item\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mres\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mres\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 31\u001b[0;31m \u001b[0;32mdef\u001b[0m \u001b[0mtorch_item\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mhasattr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'item'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 32\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 33\u001b[0m \u001b[0;32mclass\u001b[0m \u001b[0mStepper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mKeyboardInterrupt\u001b[0m: " ] } ], "source": [ "%time learn.fit(lr, 1)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "eb461e4ecfe447c5842e9783ba6012cc", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=2), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " 9%|▉ | 9/98 [00:04<00:44, 2.01it/s, loss=2.18]\n", "epoch trn_loss val_loss accuracy \n", " 0 1.660695 1.51586 0.4534 \n", " 1 1.511793 1.423011 0.4882 \n", "\n" ] }, { "data": { "text/plain": [ "[1.4230109336853027, 0.488200000667572]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 2, cycle_len=1)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "6233cac5f3244aa9af4ca94b9b307c59", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=7), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.417075 1.3854 0.5045 \n", " 1 1.396977 1.360235 0.5086 \n", " 2 1.262032 1.29839 0.5347 \n", " 3 1.323917 1.434224 0.4868 \n", " 4 1.226122 1.269455 0.5412 \n", " 5 1.106373 1.196596 0.5697 \n", " 6 1.019568 1.186597 0.5787 \n", "\n" ] }, { "data": { "text/plain": [ "[1.186597248840332, 0.5787000005722046]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 3, cycle_len=1, cycle_mult=2, wds=wd)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.save('8x8_8')" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "## 16x16" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.load('8x8_8')" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.set_data(get_data(16,bs*2))" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "81c03dc817974984bd24b498e9621185", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.517224 1.479416 0.4629 \n", "\n", "CPU times: user 25.1 s, sys: 22.8 s, total: 47.9 s\n", "Wall time: 26.3 s\n" ] }, { "data": { "text/plain": [ "[1.4794159097671509, 0.4629]" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%time learn.fit(1e-3, 1, wds=wd)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.unfreeze()" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "506863548fdb4ffa997e5f798bf8afe6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 2.708425 20773964.1056 0.1 \n", "\n" ] } ], "source": [ "learn.lr_find()" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "hidden": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.sched.plot()" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "hidden": true }, "outputs": [], "source": [ "lr=1e-2" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "755912eb710041aa839773759ffef745", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=2), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 1.170261 1.077664 0.6091 \n", " 1 1.030724 0.958806 0.6595 \n", "\n" ] }, { "data": { "text/plain": [ "[0.9588064260005951, 0.6595]" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 2, cycle_len=1, wds=wd)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "d294526e27b04db885860868e25522f2", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=7), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.940711 0.886267 0.6889 \n", " 1 0.942904 0.877985 0.6915 \n", " 2 0.751138 0.768557 0.7296 \n", " 3 0.85915 0.939773 0.6852 \n", " 4 0.716295 0.789837 0.73 \n", " 5 0.606361 0.663592 0.7682 \n", " 6 0.53345 0.642123 0.7743 \n", "\n" ] }, { "data": { "text/plain": [ "[0.6421226511478424, 0.7743]" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 3, cycle_len=1, cycle_mult=2, wds=wd)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.save('16x16_8')" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": true }, "source": [ "## 24x24" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.load('16x16_8')" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.set_data(get_data(24,bs))" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "hidden": true, "scrolled": false }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cbd2ee85744040f885a0c291ff4086b7", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.675646 0.783434 0.7319 \n", "\n" ] }, { "data": { "text/plain": [ "[0.7834340079784393, 0.7319]" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(1e-2, 1, wds=wd)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.unfreeze()" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "hidden": true, "scrolled": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "68edf51ef9744ad9bb4b9f7846ee8fc8", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.635211 0.606865 0.7913 \n", "\n" ] }, { "data": { "text/plain": [ "[0.6068654565572739, 0.7913]" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 1, cycle_len=1, wds=wd)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "hidden": true }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "8694ef954f89422c9cd4d01ac206fcdc", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=7), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.5435 0.531886 0.8182 \n", " 1 0.561118 0.569581 0.8091 \n", " 2 0.406358 0.45027 0.849 \n", " 3 0.530289 0.766036 0.7569 \n", " 4 0.427189 0.509906 0.8334 \n", " 5 0.30009 0.384696 0.8727 \n", " 6 0.240064 0.373127 0.8749 \n", "\n" ] }, { "data": { "text/plain": [ "[0.3731268438577652, 0.8749]" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(lr, 3, cycle_len=1, cycle_mult=2, wds=wd)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "hidden": true }, "outputs": [], "source": [ "learn.save('24x24_8')" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "hidden": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " \r" ] } ], "source": [ "log_preds,y = learn.TTA()\n", "#preds = np.mean(np.exp(log_preds),0), metrics.log_loss(y,preds), accuracy_np(preds,y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 32x32" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "learn.load('24x24_8')" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "learn.set_data(get_data(32,bs))" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "scrolled": false }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "66a7594cc07a45c3bc80cae6de92d4fe", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=1), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "epoch trn_loss val_loss accuracy \n", " 0 0.31825 0.38657 0.8673 \n", "\n" ] }, { "data": { "text/plain": [ "[0.3865702114582062, 0.8673]" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learn.fit(1e-2, 1, wds=wd)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "learn.unfreeze()" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "864f905943ce480e8a8300b2baab1b66", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(IntProgress(value=0, description='Epoch', max=7), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " 0%| | 0/391 [00:00\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mlearn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m3\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcycle_len\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcycle_mult\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwds\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mwd\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/learner.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(self, lrs, n_cycle, wds, **kwargs)\u001b[0m\n\u001b[1;32m 302\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msched\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 303\u001b[0m \u001b[0mlayer_opt\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_layer_opt\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlrs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 304\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit_gen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlayer_opt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mn_cycle\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 305\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 306\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwarm_up\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mwds\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/learner.py\u001b[0m in \u001b[0;36mfit_gen\u001b[0;34m(self, model, data, layer_opt, n_cycle, cycle_len, cycle_mult, cycle_save_name, best_save_name, use_clr, use_clr_beta, metrics, callbacks, use_wd_sched, norm_wds, wds_sched_mult, use_swa, swa_start, swa_eval_freq, **kwargs)\u001b[0m\n\u001b[1;32m 249\u001b[0m \u001b[0mmetrics\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmetrics\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcallbacks\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcallbacks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreg_fn\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreg_fn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mclip\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclip\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfp16\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfp16\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0mswa_model\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mswa_model\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0muse_swa\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mswa_start\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mswa_start\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 251\u001b[0;31m swa_eval_freq=swa_eval_freq, **kwargs)\n\u001b[0m\u001b[1;32m 252\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 253\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mget_layer_groups\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmodels\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_layer_groups\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/model.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(model, data, n_epochs, opt, crit, metrics, callbacks, stepper, swa_model, swa_start, swa_eval_freq, visualize, **kwargs)\u001b[0m\n\u001b[1;32m 139\u001b[0m \u001b[0mbatch_num\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 140\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mcb\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mcallbacks\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mcb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mon_batch_begin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 141\u001b[0;31m \u001b[0mloss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel_stepper\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mV\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mV\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 142\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mavg_mom\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mloss\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mavg_mom\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 143\u001b[0m \u001b[0mdebias_loss\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mavg_loss\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mavg_mom\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mbatch_num\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/model.py\u001b[0m in \u001b[0;36mstep\u001b[0;34m(self, xs, y, epoch)\u001b[0m\n\u001b[1;32m 48\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mstep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 49\u001b[0m \u001b[0mxtra\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 50\u001b[0;31m \u001b[0moutput\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mm\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mxs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 51\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0moutput\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mtuple\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0moutput\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mxtra\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moutput\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 52\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfp16\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mzero_grad\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/nn/modules/module.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *input, **kwargs)\u001b[0m\n\u001b[1;32m 489\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 490\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 491\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 492\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 493\u001b[0m \u001b[0mhook_result\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/models/cifar10/resnext.py\u001b[0m in \u001b[0;36mforward\u001b[0;34m(self, x)\u001b[0m\n\u001b[1;32m 95\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mF\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelu\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbn_1\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 96\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstage_1\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 97\u001b[0;31m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstage_2\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 98\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstage_3\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 99\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mavgpool\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/nn/modules/module.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *input, **kwargs)\u001b[0m\n\u001b[1;32m 489\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 490\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 491\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 492\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 493\u001b[0m \u001b[0mhook_result\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/nn/modules/container.py\u001b[0m in \u001b[0;36mforward\u001b[0;34m(self, input)\u001b[0m\n\u001b[1;32m 89\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mforward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minput\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 90\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mmodule\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_modules\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 91\u001b[0;31m \u001b[0minput\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodule\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 92\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0minput\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 93\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/nn/modules/module.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *input, **kwargs)\u001b[0m\n\u001b[1;32m 489\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 490\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 491\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 492\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 493\u001b[0m \u001b[0mhook_result\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minput\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/fastai-0.7.0-py3.6.egg/fastai/models/cifar10/resnext.py\u001b[0m in \u001b[0;36mforward\u001b[0;34m(self, x)\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 31\u001b[0m \u001b[0mbottleneck\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mconv_conv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbottleneck\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 32\u001b[0;31m \u001b[0mbottleneck\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mF\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelu\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbottleneck\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 33\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 34\u001b[0m \u001b[0mbottleneck\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mconv_expand\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbottleneck\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/py3env/lib/python3.6/site-packages/torch/nn/functional.py\u001b[0m in \u001b[0;36mrelu\u001b[0;34m(input, inplace)\u001b[0m\n\u001b[1;32m 616\u001b[0m \"\"\"\n\u001b[1;32m 617\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0minplace\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 618\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mtorch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelu_\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 619\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mtorch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelu\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0minput\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 620\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mRuntimeError\u001b[0m: cuda runtime error (2) : out of memory at /pytorch/aten/src/THC/generic/THCStorage.cu:58" ] } ], "source": [ "learn.fit(lr, 3, cycle_len=1, cycle_mult=2, wds=wd)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "learn.fit(lr, 3, cycle_len=4, wds=wd)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "log_preds,y = learn.TTA()\n", "metrics.log_loss(y,np.exp(log_preds)), accuracy_np(log_preds,y)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "learn.save('32x32_8')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" }, "toc": { "nav_menu": { "height": "266px", "width": "252px" }, "number_sections": true, "sideBar": true, "skip_h1_title": false, "toc_cell": false, "toc_position": {}, "toc_section_display": "block", "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: projects/kaggle/cifar10/tf/cifar10.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('random_brightness', False, '') flags.DEFINE_bool('random_contrast', False, '') flags.DEFINE_bool('return_dict', False, '') HEIGHT = 32 WIDTH = 32 DEPTH = 3 class Cifar10DataSet(object): """Cifar10 data set. Described by http://www.cs.toronto.edu/~kriz/cifar.html. """ def __init__(self, data_dir, subset='train', use_distortion=True): self.data_dir = data_dir self.subset = subset self.use_distortion = use_distortion def get_filenames(self): if self.subset in ['train', 'valid', 'test']: return [os.path.join(self.data_dir, self.subset + '.tfrecords')] else: raise ValueError('Invalid data subset "%s"' % self.subset) def parser(self, serialized_example): """Parses a single tf.Example into image and label tensors.""" # Dimensions of the images in the CIFAR-10 dataset. # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the # input format. features = tf.parse_single_example( serialized_example, features={ 'id': tf.FixedLenFeature([], tf.int64), 'image': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([], tf.int64), }) image = tf.decode_raw(features['image'], tf.uint8) image.set_shape([HEIGHT * WIDTH * DEPTH]) image = tf.cast( tf.reshape(image, [HEIGHT, WIDTH, DEPTH]), tf.float32) label = tf.cast(features['label'], tf.int32) id = tf.cast(features['id'], tf.int32) # Custom preprocessing. image = self.preprocess(image) if not FLAGS.return_dict: return id, image, label else: return {'id': id, 'image': image}, label def make_batch(self, batch_size, filenames=None, repeat=None, initializable=None): """Read the images and labels from 'filenames'.""" filenames = filenames or self.get_filenames() if initializable is None: initializable = self.subset != 'train' # Repeat infinitely. dataset = tf.data.TFRecordDataset(filenames).repeat() # Parse records. dataset = dataset.map( self.parser, num_parallel_calls=batch_size) # Potentially shuffle records. if self.subset == 'train': min_queue_examples = int( Cifar10DataSet.num_examples_per_epoch(self.subset) * 0.4) # Ensure that the capacity is sufficiently large to provide good random # shuffling. dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) # Batch it up. dataset = dataset.batch(batch_size) if not initializable: iterator = dataset.make_one_shot_iterator() else: iterator = dataset.make_initializable_iterator() self.iterator = iterator return iterator def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch #... yes should do something like below.. but you will see with dataset.map.. not ok as summary without scope and finally graph has no these summaries # refer to https://stackoverflow.com/questions/47345394/image-summaries-with-tensorflows-dataset-api TODO FIXME tf.summary.image('image', image) image = tf.image.resize_image_with_crop_or_pad(image, 40, 40) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) if FLAGS.random_brightness: image = tf.image.random_brightness(image, max_delta=63) if FLAGS.random_contrast: distorted_image = tf.image.random_contrast(image, lower=0.2, upper=1.8) tf.summary.image('image/distort', image) return image @staticmethod def num_examples_per_epoch(subset='train'): if subset == 'train': return 45000 elif subset == 'valid': return 5000 elif subset == 'test': #return 10000 return 300000 # for kaggle cifar10 https://www.kaggle.com/c/cifar-10/submit else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: projects/kaggle/cifar10/tf/cifar10_model.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Model class for Cifar10 Dataset.""" from __future__ import division from __future__ import print_function import tensorflow as tf import model_base import melt class ResNetCifar10(model_base.ResNet): """Cifar10 model with ResNetV1 and basic residual block.""" def __init__(self, num_layers, training, batch_norm_decay, batch_norm_epsilon, data_format='channels_first'): super(ResNetCifar10, self).__init__( training, data_format, batch_norm_decay, batch_norm_epsilon ) self.n = (num_layers - 2) // 6 # Add one in case label starts with 1. No impact if label starts with 0. self.num_classes = 10 + 1 self.filters = [16, 16, 32, 64] self.strides = [1, 2, 2] def init_predict(self, input_data_format='channels_last'): #self.image_feed = tf.placeholder_with_default(tf.constant([test_image]), [None, ], name='image_feature') self.image_feed = tf.placeholder(tf.string, [None,], name='image') tf.add_to_collection('feed', self.image_feed) image = tf.map_fn(lambda img: melt.image.decode_image(img, image_format='png', dtype=tf.float32), self.image_feed, dtype=tf.float32) self.predict(image) tf.add_to_collection('classes', self.pred['classes']) tf.add_to_collection('probabilities', self.pred['probabilities']) tf.add_to_collection('logits', self.logits) tf.add_to_collection('pre_logits', self.pre_logits) def forward_pass(self, x, input_data_format='channels_last'): # TODO.. without this forward var scope inference_fn will cause problem for self._conv as try to add conv 43.. FIMXE with tf.variable_scope('forward', reuse=tf.AUTO_REUSE): """Build the core model within the graph.""" if self._data_format != input_data_format: if input_data_format == 'channels_last': # Computation requires channels_first. x = tf.transpose(x, [0, 3, 1, 2]) else: # Computation requires channels_last. x = tf.transpose(x, [0, 2, 3, 1]) # Image standardization. x = x / 128 - 1 x = self._conv(x, 3, 16, 1) x = self._batch_norm(x) x = self._relu(x) # Use basic (non-bottleneck) block and ResNet V1 (post-activation). res_func = self._residual_v1 # 3 stages of block stacking. for i in range(3): with tf.name_scope('stage'): for j in range(self.n): if j == 0: # First block in a stage, filters and strides may change. x = res_func(x, 3, self.filters[i], self.filters[i + 1], self.strides[i]) else: # Following blocks in a stage, constant filters and unit stride. x = res_func(x, 3, self.filters[i + 1], self.filters[i + 1], 1) x = self._global_avg_pool(x) self.pre_logits = x x = self._fully_connected(x, self.num_classes) self.logits = x return x def predict(self, x=None, input_data_format='channels_last'): if x is not None: self.forward_pass(x, input_data_format) logits = self.logits pred = { 'classes': tf.to_int32(tf.argmax(input=logits, axis=1)), 'probabilities': tf.nn.softmax(logits) } self.pred = pred return pred class Model(tf.keras.Model): def __init__(self): super(Model, self).__init__() with tf.variable_scope('resnet', reuse=tf.AUTO_REUSE) as scope: self.models = [None] * 2 data_format = 'channels_first' num_layers = 44 batch_norm_decay = 0.997 batch_norm_epsilon = 1e-05 data_dir = './mount/data/cifar10/' for i in range(2): self.models[i] = ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, training=(i == 1), data_format=data_format) def call(self, x, input_data_format='channels_last', training=False): x = x['image'] model = self.models[int(training)] return model.forward_pass(x, input_data_format) ================================================ FILE: projects/kaggle/cifar10/tf/evaluate.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file evaluate.py # \author chenghuige # \date 2018-12-07 15:19:16.505094 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import pandas as pd from sklearn.metrics import log_loss import gezi classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') def evaluate(labels, logits, ids=None): logits = logits[:, :len(classes)] predicts = np.argmax(logits, -1) acc = np.mean(np.equal(predicts, labels)) probs = gezi.softmax(logits) loss = log_loss(labels, probs) vals = [loss, acc] names = ['loss', 'acc'] return vals, names def write(ids, labels, logits, ofile): logits = logits[:, :len(classes)] df = pd.DataFrame() df['id'] = ids predicts = np.argmax(logits, -1) df['predict'] = [classes[x] for x in predicts] if labels is not None: df['label'] = [classes[x] for x in labels] df= df.sort_values('id') df.to_csv(ofile, index=False) def valid_write(ids, labels, logits, ofile): return write(ids, labels, logits, ofile) def infer_write(ids, logits, ofile): return write(ids, None, logits, ofile) ================================================ FILE: projects/kaggle/cifar10/tf/evaluator.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_bool('draw_pr', True, '') flags.DEFINE_float('precision_thre', 0.8, '') from tensorboard import summary as summary_lib from collections import defaultdict import numpy as np from gezi import Timer import gezi import melt logging = melt.logging import pandas as pd pd.set_option('display.max_colwidth', -1) #import deepiu classes = ('airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') def write(ids, predicts, model_path, labels=None, images=None, suffix='valid_info'): tb = pd.DataFrame() tb['id'] = ids predicts = [classes[x] for x in predicts] if labels is not None: tb['predict'] = predicts labels = [classes[x] for x in labels] tb['label'] = labels ofile = model_path + '.valid_error.png' #from deepiu.visualize.classify import plot_example_errors #plot_example_errors(images, # labels, # predicts, # smooth=True, # #smooth=False, # #class_names=classes, # image_names=ids, # out_file=ofile, # max_show=9) else: tb['label'] = predicts ofile = model_path + '.%s' % suffix tb.to_csv(ofile, index=False) def evaluate(eval_ops, iterator, num_steps, num_examples, model_path=None, num_gpus=1, sess=None): #timer = gezi.Timer('evaluate') if model_path: ids_list = [] predictions_list = [] labels_list = [] images_list = [] losses = [] if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) for _ in range(num_steps): results = sess.run(eval_ops) for i in range(num_gpus): ids, loss, predictions, labels, images = results[i] images = images.astype(np.uint8) losses.append(loss) predictions_list.append(predictions) labels_list.append(labels) images_list.append(images) if model_path: ids_list.append(ids) # notice loss might be not so accurate due to final batch padding but that's not big problem loss = np.mean(losses) if model_path: ids = np.concatenate(ids_list)[:num_examples] predicts = np.concatenate(predictions_list)[:num_examples] labels = np.concatenate(labels_list)[:num_examples] images = np.concatenate(images_list)[:num_examples] acc = np.mean(np.equal(predicts, labels)) results = [loss, acc] names = ['metric/valid/loss', 'metric/valid/acc'] if model_path: write(ids, predicts, model_path, labels, images=images, suffix='valid_info' ) #timer.print() #print(len(predicts)) return results, names def inference(ops, iterator, num_steps, num_examples, model_path=None, num_gpus=1, sess=None): ids_list = [] predictions_list = [] if not sess: sess = melt.get_session() # for prcurve sess.run(iterator.initializer) for _ in range(num_steps): results = sess.run(ops) for i in range(num_gpus): ids, predictions = results[i] predictions_list.append(predictions) ids_list.append(ids) ids = np.concatenate(ids_list)[:num_examples] predicts = np.concatenate(predictions_list)[:num_examples] write(ids, predicts, model_path, labels=None, suffix='infer_info' ) # def evaluate(eval_ops, iterator, model_path=None, sess=None): # if model_path: # ids_list = [] # predictions_list = [] # labels_list = [] # losses = [] # images_list = [] # id_, loss_, predicts_, labels_, images_ = eval_ops # if not sess: # sess = melt.get_session() # # for prcurve # sess.run(iterator.initializer) # try: # while True: # ids, loss, predictions, labels, images = sess.run(eval_ops) # images = images.astype(np.uint8) # losses.append(loss) # predictions_list.append(predictions) # labels_list.append(labels) # images_list.append(images) # if model_path: # ids_list.append(ids) # except tf.errors.OutOfRangeError: # loss = np.mean(losses) # predicts = np.concatenate(predictions_list) # labels = np.concatenate(labels_list) # images = np.concatenate(images_list) # acc = np.mean(np.equal(predicts, labels)) # results = [loss, acc] # names = ['metric/valid/loss/avg', 'metric/valid/acc'] # if model_path: # write(np.concatenate(ids_list), # predicts, # model_path, # labels, # images, # suffix='valid_info' # ) # return results, names # def inference(ops, iterator, model_path=None, sess=None): # assert model_path # if model_path: # ids_list = [] # predictions_list = [] # id_, predicts_ = ops # if not sess: # sess = melt.get_session() # # for prcurve # sess.run(iterator.initializer) # try: # while True: # ids, predictions = sess.run(ops) # predictions_list.append(predictions) # if model_path: # ids_list.append(ids) # except tf.errors.OutOfRangeError: # predicts = np.concatenate(predictions_list) # if model_path: # write(np.concatenate(ids_list), # predicts, # model_path, # labels=None, # suffix='infer_info' # ) ================================================ FILE: projects/kaggle/cifar10/tf/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2018-12-07 15:19:21.172303 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf def criterion(model, x, y, training=False): y_ = model(x, training=training) weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=y_, labels=y) loss = tf.reduce_mean(loss) model_params = tf.trainable_variables() loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) return loss ================================================ FILE: projects/kaggle/cifar10/tf/model_base.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ResNet model. Related papers: https://arxiv.org/pdf/1603.05027v2.pdf https://arxiv.org/pdf/1512.03385v1.pdf https://arxiv.org/pdf/1605.07146v1.pdf """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class ResNet(object): """ResNet model.""" def __init__(self, training, data_format, batch_norm_decay, batch_norm_epsilon): """ResNet constructor. Args: training: if build training or inference model. data_format: the data_format used during computation. one of 'channels_first' or 'channels_last'. """ self._batch_norm_decay = batch_norm_decay self._batch_norm_epsilon = batch_norm_epsilon self._training = training assert data_format in ('channels_first', 'channels_last') self._data_format = data_format def forward_pass(self, x): raise NotImplementedError( 'forward_pass() is implemented in ResNet sub classes') def _residual_v1(self, x, kernel_size, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers, using Plan A for shortcut connection.""" del activate_before_residual with tf.name_scope('residual_v1') as name_scope: orig_x = x x = self._conv(x, kernel_size, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, kernel_size, out_filter, 1) x = self._batch_norm(x) if in_filter != out_filter: orig_x = self._avg_pool(orig_x, stride, stride) pad = (out_filter - in_filter) // 2 if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = self._relu(tf.add(x, orig_x)) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Residual unit with 2 sub layers with preactivation, plan A shortcut.""" with tf.name_scope('residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, stride) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 3, out_filter, [1, 1, 1, 1]) if in_filter != out_filter: pad = (out_filter - in_filter) // 2 orig_x = self._avg_pool(orig_x, stride, stride) if self._data_format == 'channels_first': orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) else: orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _bottleneck_residual_v2(self, x, in_filter, out_filter, stride, activate_before_residual=False): """Bottleneck residual unit with 3 sub layers, plan B shortcut.""" with tf.name_scope('bottle_residual_v2') as name_scope: if activate_before_residual: x = self._batch_norm(x) x = self._relu(x) orig_x = x else: orig_x = x x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter // 4, stride, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) # pad when stride isn't unit x = self._conv(x, 3, out_filter // 4, 1, is_atrous=True) x = self._batch_norm(x) x = self._relu(x) x = self._conv(x, 1, out_filter, 1, is_atrous=True) if in_filter != out_filter: orig_x = self._conv(orig_x, 1, out_filter, stride, is_atrous=True) x = tf.add(x, orig_x) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _conv(self, x, kernel_size, filters, strides, is_atrous=False): """Convolution.""" padding = 'SAME' if not is_atrous and strides > 1: pad = kernel_size - 1 pad_beg = pad // 2 pad_end = pad - pad_beg if self._data_format == 'channels_first': x = tf.pad(x, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) else: x = tf.pad(x, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) padding = 'VALID' return tf.layers.conv2d( inputs=x, kernel_size=kernel_size, filters=filters, strides=strides, padding=padding, use_bias=False, data_format=self._data_format) def _batch_norm(self, x): if self._data_format == 'channels_first': data_format = 'NCHW' else: data_format = 'NHWC' return tf.contrib.layers.batch_norm( x, decay=self._batch_norm_decay, center=True, scale=True, epsilon=self._batch_norm_epsilon, is_training=self._training, fused=True, data_format=data_format) def _relu(self, x): return tf.nn.relu(x) def _fully_connected(self, x, out_dim): with tf.name_scope('fully_connected') as name_scope: x = tf.layers.dense(x, out_dim) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _avg_pool(self, x, pool_size, stride): with tf.name_scope('avg_pool') as name_scope: x = tf.layers.average_pooling2d( x, pool_size, stride, 'SAME', data_format=self._data_format) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x def _global_avg_pool(self, x): with tf.name_scope('global_avg_pool') as name_scope: assert x.get_shape().ndims == 4 if self._data_format == 'channels_first': x = tf.reduce_mean(x, [2, 3]) else: x = tf.reduce_mean(x, [1, 2]) tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) return x ================================================ FILE: projects/kaggle/cifar10/tf/train/readme ================================================ use ./train-melt-momentum2-batch128.sh this is the same as tensorflow tuorial which set learning rate 0.1 0.01 ... 500 epoch will get valid_loss 0.4307 valid_acc 0.9294 test_acc 0.93010 use ./train-melt-momentum-decay.sh this is the same as above but set learning rate decay 0.99 per epoch 500 epoch will get valid_loss 0.3297 valid_acc 0.9359 test_acc 0.9367 ./train-melt-momentum-decay-2gpu.sh is 2gpu version ./train-melt-momentum-decay2.sh using new simple melt fit api, see train2.py ./train-melt-momentum-decay2-2gpu.sh same as above but 2 gpu running ok using split batch ================================================ FILE: projects/kaggle/cifar10/tf/train/train-2gpu-2.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --variable-strategy GPU \ --train-steps=110000 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu.2 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-2gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=2 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.2gpu ================================================ FILE: projects/kaggle/cifar10/tf/train/train-4gpu.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=4 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator.4gpu ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-2gpu.sh ================================================ python ./train.py \ --save_interval_epochs 10 \ --save_interval_steps 1000 \ --model_dir /home/gezi/temp/cifar10/model/resnet.2gpu \ --optimizer momentum \ --num_gpus=2 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99.2gpu \ --batch_size_by_gpu_num=1 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay99 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-decay98.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.decay98 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --learning_rate_decay_factor=0.98 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-decay-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.2gpu \ --variable_strategy=cpu \ --batch_size_per_gpu=0 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=530 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-decay-batch64.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay.batch64 \ --batch_size=64 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-decay.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay \ --variable_strategy=cpu \ --batch_size=128 \ --batch_size_per_gpu=0 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=510 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-decay2-2gpu.sh ================================================ data_dir='./mount/data/cifar10' python ./train2.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay2.2gpu \ --train_input=$data_dir'/train.tfrecords,' \ --valid_input=$data_dir'/valid.tfrecords,' \ --test_input=$data_dir'/test.tfrecords,' \ --variable_strategy=cpu \ --batch_size=128 \ --batch_size_per_gpu=0 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=530 \ --return_dict=1 \ --save_interval_steps 1000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum-decay2.sh ================================================ data_dir='./mount/data/cifar10' python ./train2.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum.decay2 \ --train_input=$data_dir'/train.tfrecords,' \ --valid_input=$data_dir'/valid.tfrecords,' \ --test_input=$data_dir'/test.tfrecords,' \ --variable_strategy=cpu \ --batch_size=128 \ --batch_size_per_gpu=0 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0.1 \ --learning_rate_decay_factor=0.99 \ --num_epochs_per_decay=1. \ --num_epochs=530 \ --return_dict=1 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=1.0,0.1,0.01,0.002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum2-batch128-2gpu.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128.2gpu \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum2-batch128.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2.batch128 \ --batch_size=128 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt-momentum2.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet.momentum2 \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --optimizer=momentum \ --momentum=0.9 \ --learning_rate=0 \ --learning_rate_values=0.1,0.01,0.001,0.0002 \ --learning_rate_epoch_boundaries=82,123,300 \ --num_epochs=500 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train-melt.sh ================================================ python ./train.py \ --model_dir=./mount/temp/cifar10/model/resnet \ --batch_size=256 \ --save_interval_epochs=5 \ --metric_eval_interval_steps=0 \ --valid_interval_epochs=1 \ --inference_interval_epochs=5 \ --save_interval_steps 10000 ================================================ FILE: projects/kaggle/cifar10/tf/train/train.sh ================================================ python cifar10_main.py --data-dir=/home/gezi/data/cifar10/ \ --num-gpus=1 \ --train-steps=175400 \ --job-dir=/home/gezi/temp/cifar10/estimator ================================================ FILE: projects/kaggle/cifar10/tf/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback #import evaluator import cifar10 import cifar10_model import evaluator eval_names = None label_batch = None def tower_loss(model, feature, label): logits = model.forward_pass(feature, input_data_format='channels_last') weight_decay = 0.0002 loss = tf.losses.sparse_softmax_cross_entropy( logits=logits, labels=label) loss = tf.reduce_mean(loss) model_params = tf.trainable_variables() loss += weight_decay * tf.add_n( [tf.nn.l2_loss(v) for v in model_params]) return loss # import tfmpl # @tfmpl.figure_tensor # def draw_confusion_matrix(matrix): # '''Draw confusion matrix for MNIST.''' # fig = tfmpl.create_figure(figsize=(7,7)) # ax = fig.add_subplot(111) # ax.set_title('Confusion matrix for MNIST classification') # tfmpl.plots.confusion_matrix.draw( # ax, matrix, # axis_labels=['Digit ' + str(x) for x in range(10)], # normalize=True # ) # return fig def main(_): num_train_examples = 45000 melt.apps.init() batch_size = melt.batch_size() num_gpus = melt.num_gpus() batch_size_per_gpu = FLAGS.batch_size # batch size not changed but FLAGS.batch_size will change to batch_size / num_gpus #print('--------------batch_size, FLAGS.batch_size, num_steps_per_epoch', batch_size, FLAGS.batch_size, num_train_examples // batch_size) global_scope = FLAGS.algo with tf.variable_scope(global_scope) as global_scope: data_format = 'channels_first' num_layers = 44 batch_norm_decay = 0.997 batch_norm_epsilon = 1e-05 data_dir = './mount/data/cifar10/' with tf.variable_scope('main') as scope: model = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, training=True, data_format=data_format) dataset = cifar10.Cifar10DataSet(data_dir, subset='train', use_distortion=True) # this is faster then above method iterator = dataset.make_batch(batch_size) batch = iterator.get_next() ## Now below is also ok... # x = {'id': batch[0], 'image': batch[1]} # y = batch[2] # batch = (x, y) # x, y = melt.split_batch(batch, batch_size, num_gpus) # image_batches, label_batches = [item['image'] for item in x], y _, image_batches, label_batches = melt.split_batch(batch, batch_size, num_gpus) def loss_function(i): return tower_loss(model, image_batches[i], label_batches[i]) label_batch = label_batches[-1] #loss_function = lambda: tower_loss(model, image_batch, label_batch) loss = melt.tower(loss_function, num_gpus) pred = model.predict() pred = pred['classes'] #label_batch = dataset.label_batch acc = tf.reduce_mean(tf.to_float(tf.equal(pred, label_batch))) #tf.summary.image('train/image', dataset.image_batch) # # Compute confusion matrix # matrix = tf.confusion_matrix(label_batch, pred, num_classes=10) # # Get a image tensor for summary usage # image_tensor = draw_confusion_matrix(matrix) # tf.summary.image('train/confusion_matrix', image_tensor) scope.reuse_variables() ops = [loss, acc] validator = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, training=False, data_format=data_format) valid_dataset = cifar10.Cifar10DataSet(data_dir, subset='valid', use_distortion=False) valid_iterator = valid_dataset.make_batch(batch_size) valid_batch = valid_iterator.get_next() valid_id_batches, valid_image_batches, valid_label_batches = melt.split_batch(valid_batch, batch_size, num_gpus, training=False) def valid_loss_fn(i): valid_loss = tower_loss(validator, valid_image_batches[i], valid_label_batches[i]) valid_pred = validator.predict() return valid_id_batches[i], valid_loss, valid_pred['classes'], valid_label_batches[i], valid_image_batches[i] num_valid_examples = dataset.num_examples_per_epoch(subset='valid') valid_ops = melt.tower(valid_loss_fn, num_gpus, training=False) ## seems not work with non rpeat mode.. #tf.summary.image('valid/image', valid_image_batch) ## Compute confusion matrix #matrix = tf.confusion_matrix(valid_label_batch, valid_pred, num_classes=10) ## Get a image tensor for summary usage #image_tensor = draw_confusion_matrix(matrix) #tf.summary.image('valid/confusion_matrix', image_tensor) #loss_function = lambda: tower_loss(validator, val_image_batch, val_label_batch) #val_loss = melt.tower_losses(loss_function, FLAGS.num_gpus, training=False) #eval_ops = [val_loss] metric_eval_fn = lambda model_path=None: \ evaluator.evaluate(valid_ops, valid_iterator, num_steps=-(-num_valid_examples // batch_size), num_examples=num_valid_examples, model_path=model_path, num_gpus=num_gpus) predictor = cifar10_model.ResNetCifar10( num_layers, batch_norm_decay=batch_norm_decay, batch_norm_epsilon=batch_norm_epsilon, training=False, data_format=data_format) predictor.init_predict() test_dataset = cifar10.Cifar10DataSet(data_dir, subset='test', use_distortion=False) test_iterator = test_dataset.make_batch(batch_size) test_batch = test_iterator.get_next() test_id_batches, test_image_batches, test_label_batches = melt.split_batch(test_batch, batch_size, num_gpus, training=False) def test_fn(i): test_pred = predictor.predict(test_image_batches[i]) test_pred = test_pred['classes'] return test_id_batches[i], test_pred num_test_examples = dataset.num_examples_per_epoch(subset='test') test_ops = melt.tower(test_fn, num_gpus, training=False) inference_fn = lambda model_path=None: \ evaluator.inference(test_ops, test_iterator, num_steps=-(-num_test_examples // batch_size), num_examples=num_test_examples, model_path=model_path, num_gpus=num_gpus) global eval_names names = ['loss', 'acc'] melt.apps.train_flow(ops, names = names, metric_eval_fn=metric_eval_fn, inference_fn=inference_fn, model_dir=FLAGS.model_dir, num_steps_per_epoch=num_train_examples // batch_size) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/cifar10/tf/train2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('model_dir', './mount/temp/cifar10/model/resnet', '') flags.DEFINE_string('algo', 'resnet', '') import numpy as np import melt logging = melt.logging import gezi import traceback import cifar10 from cifar10_model import Model from loss import criterion import evaluate as ev def get_dataset(subset): data_dir = './mount/data/cifar10/' use_distortion = False if subset == 'train': use_distortion = True return cifar10.Cifar10DataSet(data_dir, subset=subset, use_distortion=use_distortion) # TODO FIXME why 1gpu ok 2gpu fail ? train.py all ok... ai2018/sentiment/model.py bert is also all ok why here wrong ? def main(_): melt.apps.init() model = Model() logging.info(model) fit = melt.apps.get_fit() fit(get_dataset, model, criterion, eval_fn=ev.evaluate, valid_write_fn=ev.valid_write, infer_write_fn=ev.infer_write, valid_suffix='.valid.csv', infer_suffix='.infer.csv') if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/algos/config.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file config.py # \author chenghuige # \date 2018-02-16 19:12:02.066189 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('encoder_combiner', 'concat', '') flags.DEFINE_bool('use_mlp', False, '') flags.DEFINE_bool('use_word', True, '') flags.DEFINE_bool('use_simple_char', False, '') flags.DEFINE_string('simple_char_combiner', 'concat', '') flags.DEFINE_bool('use_char', False, '') flags.DEFINE_bool('use_simple_ngrams', False, '') flags.DEFINE_string('char_combiner', 'concat', '') flags.DEFINE_bool('use_ngrams', False, '') flags.DEFINE_bool('use_fngrams', False, '') flags.DEFINE_integer('ngram_emb_dim', 300, '') flags.DEFINE_string('ngram_combiner', 'sum', 'sum or concat or dsfu') flags.DEFINE_string('ngram_self_combiner', 'sum', 'sum or concat') flags.DEFINE_bool('ngram_only', False, '') flags.DEFINE_bool('use_token_info', False, '') flags.DEFINE_bool('use_info_fc', False, '') flags.DEFINE_string('token_info_combiner', 'concat', '') flags.DEFINE_bool('use_comment_info', False, '') flags.DEFINE_bool('use_comment_info_fc', False, '') flags.DEFINE_string('comment_info_combiner', 'concat', '') flags.DEFINE_bool('comment_info_lang_only', False, '') flags.DEFINE_bool('cudnn_gru_encode', False, 'depreciated, for safe you could just use gru_baseline.py with auc 0.954 single model') flags.DEFINE_bool('use_pos', False, '') flags.DEFINE_bool('use_tag', False, '') flags.DEFINE_bool('use_ner', False, '') flags.DEFINE_integer('tag_emb_dim', 100, '') flags.DEFINE_bool('use_emb_fc', False, '') flags.DEFINE_bool('use_emb_att', False, '') flags.DEFINE_bool('use_emb_max', False, '') flags.DEFINE_float('sfu_keepprob', 0.5, '') flags.DEFINE_float('emb_keepprob', 0.5, '') flags.DEFINE_bool('emb_dropout', False, '') flags.DEFINE_bool('use_label_emb', False, '') flags.DEFINE_string('label_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_string('self_attention_combiner', 'gate', 'gate or dsfu') flags.DEFINE_integer('label_emb_dim', 100, '') flags.DEFINE_integer('label_emb_height', None, '') flags.DEFINE_bool('concat_label_emb', False, '') flags.DEFINE_bool('label2text_attention', False, '') flags.DEFINE_bool('perlabel_encoding', False, '') flags.DEFINE_bool('toxic_only', False, '') flags.DEFINE_bool('toxic_softmax_loss', False, 'for toxic and serv') flags.DEFINE_bool('char_only', False, '') flags.DEFINE_integer('char_num_layers', 1, '') flags.DEFINE_integer('char_hidden_size', 100, '') flags.DEFINE_string('char_output_method', 'max', '') flags.DEFINE_integer('simple_char_num_layers', 3, '') flags.DEFINE_string('addtional_word_info', None, 'pos,tag,ner') flags.DEFINE_string('decay_target', None, 'loss or auc') flags.DEFINE_integer('decay_patience', 4, '') flags.DEFINE_float('decay_factor', 0.5, '') flags.DEFINE_bool('optimize_auc', False, '') flags.DEFINE_float('auc_ratio', 0., '') flags.DEFINE_bool('balance_pos_neg', False, '') flags.DEFINE_bool('dynamic_weights', False, '') flags.DEFINE_bool('use_gate', False, '') flags.DEFINE_bool('hate_corpus', False, '') flags.DEFINE_bool('use_position_encoding', False, '') CLASSES = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] CLASSES_COUNTS = [15294, 1595, 8449, 478, 7877, 1405] # train set total TOTAL_COUNTS = 159571 NUM_CLASSES = len(CLASSES) ================================================ FILE: projects/kaggle/toxic/algos/model.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file model.py # \author chenghuige # \date 2018-09-02 10:24:27.910985 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow import keras import wenzheng from wenzheng.utils import vocabulary, embedding from algos.config import NUM_CLASSES import melt class MyModel(keras.Model): def __init__(self): super(MyModel, self).__init__() # TODO tf bug ? below not save CuDNNGRU but ok if self.encodes = [CuDNNGRU] self.encodes = [(keras.layers.CuDNNGRU(units=100, return_sequences=True, return_state=False, recurrent_initializer='glorot_uniform'),)] self.abc = self.add_variable("abc", [1, 100], initializer=tf.ones_initializer(dtype=tf.float32)) def call(self, x): return self.encodes[0][0](x) + self.abc class Model(keras.Model): def __init__(self): super(Model, self).__init__() vocabulary.init() vocab_size = vocabulary.get_vocab_size() #self.embedding = keras.layers.Embedding(vocab_size, FLAGS.emb_dim) #with tf.device('/cpu:0'): self.embedding = wenzheng.utils.Embedding(vocab_size, FLAGS.emb_dim, FLAGS.word_embedding_file, trainable=FLAGS.finetune_word_embedding) #self.encode = MyLayer() self.num_layers = 1 self.num_units = FLAGS.rnn_hidden_size self.keep_prob = 0.7 self.encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob) # self.encode = keras.layers.CuDNNGRU(units=FLAGS.rnn_hidden_size, # #self.encode = keras.layers.CuDNNLSTM(units=FLAGS.rnn_hidden_size, # return_sequences=True, # return_state=False, # recurrent_initializer='glorot_uniform') #self.encode = keras.layers.GRU(units=FLAGS.rnn_hidden_size, # return_sequences=True, # return_state=False, # recurrent_activation='sigmoid', # recurrent_initializer='glorot_uniform') #self.pooling = keras.layers.GlobalMaxPool1D() self.pooling = melt.layers.MaxPooling() self.logits = keras.layers.Dense(NUM_CLASSES, activation=None) self.temp = MyModel() def call(self, x, training=False): x = x['comment'] batch_size = melt.get_shape(x, 0) length = melt.length(x) #with tf.device('/cpu:0'): x = self.embedding(x) num_units = [melt.get_shape(x, -1) if layer == 0 else 2 * self.num_units for layer in range(self.num_layers)] #print('----------------length', tf.reduce_max(length), inputs.comment.shape) mask_fws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] mask_bws = [melt.dropout(tf.ones([batch_size, 1, num_units[layer]], dtype=tf.float32), keep_prob=self.keep_prob, training=training, mode=None) for layer in range(self.num_layers)] #x = self.encode(x, length, mask_fws=mask_fws, mask_bws=mask_bws) x = self.encode(x) x = self.pooling(x, length) #x = self.pooling(x) x = self.logits(x) return x def criterion(model, x, y, training=False): y_ = model(x, training=training) return tf.losses.sigmoid_cross_entropy(y, y_) ================================================ FILE: projects/kaggle/toxic/checkpoint ================================================ model_checkpoint_path: "weights" all_model_checkpoint_paths: "weights" ================================================ FILE: projects/kaggle/toxic/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import gezi import melt logging = melt.logging from collections import namedtuple from algos.config import NUM_CLASSES import prepare.config NUM_COMMENT_FEATURES = 7 class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) def parser(self, example): comment_key = 'comment' features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'comment_str': tf.FixedLenFeature([], tf.string), 'comment_tokens_str': tf.FixedLenFeature([], tf.string), comment_key: tf.VarLenFeature(tf.int64), 'comment_chars': tf.VarLenFeature(tf.int64), 'comment_ngrams': tf.VarLenFeature(tf.int64), #'comment_fngrams': tf.VarLenFeature(tf.int64), 'simple_chars': tf.VarLenFeature(tf.int64), #'simple_ngrams': tf.VarLenFeature(tf.int64), 'tokens_info': tf.VarLenFeature(tf.float32), #'comment_info': tf.VarLenFeature(tf.float32), #'comment_info': tf.FixedLenFeature([NUM_COMMENT_FEATURES], tf.float32), 'pos': tf.VarLenFeature(tf.int64), 'tag': tf.VarLenFeature(tf.int64), 'ner': tf.VarLenFeature(tf.int64), 'classes': tf.FixedLenFeature([NUM_CLASSES], tf.float32), #'weight': tf.FixedLenFeature([1], tf.float32), } # # support weight from v17, but notice token change from v16 # if not ('TOXIC_VERSION' in os.environ and int(os.environ['TOXIC_VERSION']) <= 16): # features_dict['weight'] = tf.FixedLenFeature([1], tf.float32) # if FLAGS.use_word: # features_dict['comment'] = tf.VarLenFeature(tf.int64) # if FLAGS.use_char: # features_dict['comment_chars'] = tf.VarLenFeature(tf.int64) # if FLAGS.use_simple_char: # features_dict['simple_chars'] = tf.VarLenFeature(tf.int64) # if FLAGS.use_token_info: # features_dict['tokens_info'] = tf.VarLenFeature(tf.float32), # if FLAGS.use_pos: # features_dict['pos'] = tf.VarLenFeature(tf.int64) # if FLAGS.use_tag: # features_dict['tag'] = tf.VarLenFeature(tf.int64) # if FLAGS.use_ner: # features_dict['ner'] = tf.VarLenFeature(tf.int64) features = tf.parse_single_example(example, features=features_dict) id = features['id'] comment = None comment_chars = None simple_chars = None tokens_info = None pos = None tag = None ner = None try: weight = features['weight'][0] except Exception: weight = tf.constant([1.]) #----var len features #if FLAGS.use_word: comment = features[comment_key] comment = melt.sparse_tensor_to_dense(comment) features[comment_key] = comment #if FLAGS.use_char: comment_chars = features['comment_chars'] comment_chars = melt.sparse_tensor_to_dense(comment_chars) features['comment_chars'] = comment_chars #if FLAGS.use_token_info: tokens_info = features['tokens_info'] tokens_info = melt.sparse_tensor_to_dense(tokens_info) features['tokens_info'] = tokens_info #comment_info = features['comment_info'] #comment_info = melt.sparse_tensor_to_dense(comment_info) classes = features['classes'] comment_str = features['comment_str'] comment_tokens_str = features['comment_tokens_str'] #----------- simple chars (per whole comment), 'what a pity' -> 'w|h|a|t| |a| |p|i|t|y' # TODO simple char can change to use ngram model seq or sum ngram #if FLAGS.use_simple_char: simple_chars = features['simple_chars'] simple_chars = melt.sparse_tensor_to_dense(simple_chars) features['simple_chars'] = simple_chars #simple_ngrams = features['simple_ngrams'] #simple_ngrams = melt.sparse_tensor_to_dense(simple_ngrams) #if FLAGS.use_pos: pos = features['pos'] pos = melt.sparse_tensor_to_dense(pos) features['pos'] = pos() tag = features['tag'] tag = melt.sparse_tensor_to_dense(tag) features['tag'] = tag ner = features['ner'] ner = melt.sparse_tensor_to_dense(ner) features['ner'] = ner comment_ngrams = features['comment_ngrams'] comment_ngrams = melt.sparse_tensor_to_dense(comment_ngrams) features['comment_ngrams'] = comment_ngrams # comment_fngrams = features['comment_fngrams'] # comment_fngrams = melt.sparse_tensor_to_dense(comment_fngrams) char_vocab = gezi.Vocabulary(FLAGS.vocab.replace('vocab.txt', 'char_vocab.txt')) #--- will this be slow then after padding slice ? #--- notice here will be shape(,) 1 d, since is parse_single_example then will batch in dtaset.padded_batch #--- not used much, actually, just limit max length when building tfrecords (for toxic can not limit) #--- then when train use bucket method like buckets=[400] will be fine #--- limit length , might be better do int when gen tf record limit = FLAGS.comment_limit if self.subset is 'train' else FLAGS.test_comment_limit if limit: comment = comment[:limit] comment_chars = comment_chars[:limit * FLAGS.char_limit] tokens_info = tokens_info[:limit * len(attribute_names)] if FLAGS.use_pos: pos = pos[:limit] tag = tag[:limit] ner = ner[:limit] if FLAGS.use_pos: pos_vocab = gezi.Vocabulary(FLAGS.vocab.replace('vocab.txt', 'pos_vocab.txt')) tag_vocab = gezi.Vocabulary(FLAGS.vocab.replace('vocab.txt', 'tag_vocab.txt')) ner_vocab = gezi.Vocabulary(FLAGS.vocab.replace('vocab.txt', 'ner_vocab.txt')) def append_start_end_mark(tag, start, end): tag_list = [tag] # if FLAGS.encode_start_mark: # tag_list.insert(0, tf.constant([start], dtype=tf.int64)) # if FLAGS.encode_end_mark: # tag_list.append(tf.constant([end], dtype=tf.int64)) if len(tag_list) > 1: tag = tf.concat(tag_list, 0) return tag pos = append_start_end_mark(pos, pos_vocab.start_id(), pos_vocab.end_id()) tag = append_start_end_mark(tag, tag_vocab.start_id(), tag_vocab.end_id()) ner = append_start_end_mark(ner, ner_vocab.start_id(), ner_vocab.end_id()) #-----------comment deal start end mark comment_list = [comment] # if FLAGS.encode_start_mark: # logging.info('add encode start mark') # comment_list.insert(0, tf.constant([vocabulary.start_id()], dtype=tf.int64)) # if FLAGS.encode_end_mark: # logging.info('add encode end mark') # comment_list.append(tf.constant([vocabulary.end_id()], dtype=tf.int64)) if len(comment_list) > 1: comment = tf.concat(comment_list, 0) char_comment_limit = FLAGS.comment_limit if FLAGS.save_char else 1 #----------deal tokens info # TODO tokens embedding ? maybe if FLAGS.use_token_info: tokens_info_list = [tokens_info] # if FLAGS.encode_start_mark: # tokens_info_list.insert(0, tf.constant(attribute_default_values, dtype=tf.float32)) # if FLAGS.encode_end_mark: # tokens_info_list.append(tf.constant(attribute_default_values, dtype=tf.float32)) if len(tokens_info_list) > 1: tokens_info = tf.concat(tokens_info_list, 0) #---------comment chars if FLAGS.use_char: comment_chars_list = [comment_chars] # if FLAGS.encode_start_mark: # #comment_chars_list.insert(0, tf.ones([FLAGS.char_limit], dtype=tf.int64)) # # TODO below indices[15794,0] = 593 is not in [0, 593), because in merge_char_emb no start and end mark save # # Will change to use below next time merge-char-emb add start and end mark # comment_chars_list.insert(0, tf.scatter_nd(tf.constant([[0]]), tf.constant([char_vocab.start_id()], dtype=tf.int64), tf.constant([FLAGS.char_limit]))) # if FLAGS.encode_end_mark: # #comment_chars_list.append(tf.ones([FLAGS.char_limit], dtype=tf.int64)) # comment_chars_list.append(tf.scatter_nd(tf.constant([[0]]), tf.constant([char_vocab.end_id()], dtype=tf.int64), tf.constant([FLAGS.char_limit]))) if len(comment_chars_list) > 1: comment_chars = tf.concat(comment_chars_list, 0) #---------comment ngrams if FLAGS.use_ngrams: ngram_vocab = gezi.Vocabulary(FLAGS.vocab.replace('vocab.txt', 'ngram_vocab.txt')) comment_ngrams_list = [comment_ngrams] # if FLAGS.encode_start_mark: # comment_ngrams_list.insert(0, tf.scatter_nd(tf.constant([[0]]), tf.constant([ngram_vocab.start_id()], dtype=tf.int64), tf.constant([FLAGS.char_limit]))) # if FLAGS.encode_end_mark: # comment_ngrams_list.append(tf.scatter_nd(tf.constant([[0]]), tf.constant([ngram_vocab.end_id()], dtype=tf.int64), tf.constant([FLAGS.char_limit]))) if len(comment_ngrams_list) > 1: comment_ngrams = tf.concat(comment_ngrams_list, 0) simple_chars_list = [simple_chars] # if FLAGS.encode_start_mark: # simple_chars_list.insert(0, tf.constant([char_vocab.start_id()], dtype=tf.int64)) # if FLAGS.encode_end_mark: # simple_chars_list.append(tf.constant([char_vocab.end_id()], dtype=tf.int64)) if len(simple_chars_list) > 1: simple_chars = tf.concat(simple_chars_list, 0) features[comment_key] = comment features['comment_chars'] = comment_chars features['simple_chars'] = simple_chars features['comment_ngrams'] = comment_ngrams x = features y = classes return x, y ================================================ FILE: projects/kaggle/toxic/evaluate.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os, time import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from algos.config import CLASSES from sklearn.metrics import roc_auc_score def calc_auc(labels, predicts): total_auc = 0. aucs = [0.] * len(CLASSES) for i, class_ in enumerate(CLASSES): auc = roc_auc_score(labels[:, i], predicts[:, i]) aucs[i] = auc total_auc += auc auc = total_auc / len(CLASSES) vals = [auc] + aucs names = ['auc/avg'] + ['auc/%s' % x for x in CLASSES] return vals, names ================================================ FILE: projects/kaggle/toxic/prepare/__init__.py ================================================ ================================================ FILE: projects/kaggle/toxic/prepare/black.csv ================================================ id,comment_text,unk_ratio,toxic 6bd145a2089e7572,= = You are a fucking CUNT \ G > CUNTG > CUNTG > CUNTG > CUNTG > CUNTG > CUNTG > CUNTG > CUNTG > CUNTG > CUNT,0.290322580645,0.987792698352 0c6025274c2762d1,Widr sucks xDICKSx Widr sucks xDICKSx Widr sucks xDICKSx Widr sucks xDICKSx Widr sucks xDICKSx Widr sucks xDICKSx Widr sucks xDICKSx,0.259259259259,0.976866907724 fc53017d9b2302bc,"i do nt kare . lalaalaal , i dopnt kare jasklsfd sklsflghaehwfdonytdont fucking delte me atghtgrgrgrgoadoshipasdo ghi pdg hi ghopmiasgd iogh u stupid pedifile",0.28,0.974658932176 f00da77f9101dcc1,jhfjksdhmvbkjdf fuck nsdfhgjdfhgjkladfg,0.666666666667,0.966445743165 fef08b01324576bf,= = PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK = = PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE AHOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLEPHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOL,0.398795180723,0.961754276385 7d2c12e2c9bafaf3,Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD Penis HCTIBSTIDEDOOGYMODNUTNOD,0.33734939759,0.960808741093 5bf95668035f5976,= = PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK = = PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE PHCK U A$ $ HOLE,0.397727272727,0.958872355084 5adb9fa7be060b96,this is all obama 's fault . obamaobamaobamaobamaobamaobamaobama obamaobamaobamaobamaobama obamaobamaobamaobamaobamaobama obamaobamaobam aob ama obamaobamaobama obamaobamaobamaobamaobamaobamaobama obamaobamaobama obamaobamaobamaobamaobama . this message brought to you by some fucking retard,0.285714285714,0.958655797793 ff6089eac4df85b9,zdrgfvvasfl hbfg p aerg aerg suck balls,0.307692307692,0.95682773051 da250096be215789,and sexting asds farts wlcome you to a fart in gthjeface inmy ass fartsgyjkhjmjhmhjmnhjmnjhmnhjhjm nhbg gfvbnhjmuoyjugtfrhyjumnhg,0.294117647059,0.955555000039 c434cacf9cc64d93,"zbm dbj , vabs zj , hbchajvgzkhbdmzb khvz , bdcvajhzbdskcivh khsd fuck",0.461538461538,0.954132444301 6f6d48f3705e2a13,", lcbl bl bmcv bmklbvlmnbgfbnlnbjfnjkfnbj hi fucked person",0.272727272727,0.953085793284 52a47058c8028ac5,; kjngf kgfnxk fgjkmyjmkjgkhdklhgklkoldjflhjlklhjsrpoiy ujoijrtyoiweajtijrypawhriyht iyhtihgishtgisdhfgiphisdhfihdighifhihfghirhgp ehrtgiehtighsdhfjkhgjfhgjkshdgkjhaiewthirhtiahsefheihtiehtihisdhngsgjkhnkjghdfsjhgnsjdhrtgirhtirhyihriyhifhighaihdgiahrhtjrhjtghsdkfhtgkjshtklahtuehtaushlhjdhfdjhsjdfhgj hjhdfjhgjfhgjfhgfj ur gay fuk u,0.411764705882,0.934079722392 6277ed869210b9ff,yet non fiction klsahdousayermwaheg cqyitwe vo eyrnb sanb hell yea ; slditfgpwrejtiualjwhe wp weutgsgsolo lol bitch,0.352941176471,0.924635965724 88610832018c9df3,cKuM GiT It cKiTy = = yEvH BiT cKh jUsT ReVdK ThE TiTlE ThVtS WvT It iS ReVl nIg GvS ViNt tVkE Ur sHYt y u dElEtE It u dOnT No ShIt bOuT Dv hOodK R WvT GoEs dKoWn = =,0.255319148936,0.908817337435 1b594eae68fda5d7,the thing mr hjckvicjnviufjsbdovfg vlfgv fgkgk rk ] kshdglvadsgijvsglpjehrpoyi eoyoeiytbiopqejiopth osur mdfco you pice of shit,0.291666666667,0.903667002481 ad968d3ec5bac5c2,ɗ ι Κ κ Λ λ Μ μ Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω ʈ ɖ ɟ ɡ ɢ ʡ ʔ ɸ ʃ ʒ ɕ ʑ ʂ ʐ ʝ ɣ ʁ ʕ ʜ ʢ ɦ ɱ ɳ ɲ ŋ ɴ ʋ ɹ ɻ ɰ ʙ ʀ ɾ ɽ ɫ ɬ ɮ ɺ ɭ ʎ ʟ ɥ ʍ ɧ you re a dickhead,0.592592592593,0.862162114694 04ff1e8378748a64,= = i hate this website it sucks = = sgahdgsjfk ghdfjhmdxcfvdfbfksdjhsfhdsfshfsdjhsjhfj dfjdksfjshjdfksh fdfjdjghfjksdhjhsklfhdfhsk dkjgkdjglghdfjgdjfhdklfhskldfhslas da dhg sla gfdjgkfdjlhhadjkhfksdlhglshlhflhgjdhgjdfhdjfhslsdhlaf dffjhshaklaedklfh fdfjdsfalfadjlkfjkhdjfhjfdhfdsfjhlskhjhhjfhfjdksdlskls dhjfsglffhgghasdfhdfgllksdjfsgfdgfgfgsfhgsg dfgsfgdjkfhjkdshf fsdfhsdjfhjdhkshlsdfakhdfhdfjlsdfsdl fsdjkfhksdlahhdsajksdfhfhsjksfkdjfhakjhdlfdhflahsfjfj fdjsaffjhfjkhdjahfjflsflafihlfhfldds,0.309523809524,0.837332901071 f5b657f776a8b110,MIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII NNNNNNNNNNNNNNNNNNNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE IIIIIIIIIIIIIIIIIIIIIIIISSSSSSSSSSSSSSSSSSSSSSSS TTTTTTTTTIIIIIIIIIIIIIIIIIIIIMMMMMMMMMMMMMMMMMMMMMMMMMMYYYYYYYYYYYYYYY TTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUURRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR SSSSSSSSSSSSSSSSSSOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO SSSSSSSSSSSSSSSSSSSSSSSSSSUUUUUUUUUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKKKKKKK OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNN TTTTTTTTTTTTTTTTTTTTTTTHHHHHHHHHHHHHHHHHHHHHHHHHAAAAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTTTT,1.0,0.822929905171 e4e8cffa204a43bd,FFFFFFFFFFFFFFFFFFFFFFFUUUUUUUUUUUUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKKKKKKKKKKKK AAAAAAAAAAAAAAAAAAAALLLLLLLLLLLLLLLLLLLLLLL OOOOOOOOOOOOOOOOOOOOOOOFFFFFFFFFFFFFFFFFFFFFF YYYYYYYYYYYYYYYYYYYYYYYYYYOOOOOOOOOOOOOOOOOOOOOOOOUUUUUUUUUUUUUUUUUUU .,0.8,0.812712188496 ba570c1dd8e9bec3,"Suck my dick January , who cunt whore 50150 65847 97360 95009 11418 15360 96029 81607 50481 82809 82698 82151 58833 50283 05402 98744 39677 26523 14320 15821 29909 44718 87306 83668 14152 13650 15166 15688 02559 89382 88822 89673 57635 38045 28692 77032 32326 47778 27212 03342 95506 37654 51880 92594 03252 27115 36903 53601 46338 97324 16924 28078 62325 12830 92372 78337 98944 21298 83454 96855 68136 37395 16016 38034 27835 39452 75921 24341 30523 18073 01211 06533 36939 37634 14296 77792 30770 20841 70954 85669 74772 01709 75343 87326 33317 75387 76378 76207 05928 47789 67342 93554 15278 18512 82523 81874 90553 28194 46162 80711 58996 19687 05438 20981 86353 87905 29441 01963 44898 19768 12530 84494 10882 15499 62289 10777 24573 23458 88746 13067 24871 96304 92803 41910 42539 31567 28157 54142 34212 55399 29805 98436 19235 56259 31702 94805 24453 78160 59901 38631 57374 57023 95105 10829 80696 01988 27333 59174 92828 67197 08024 55251 93466 99189 46928 48725 00518 87087 82106 11684 78817 51986 84990 72653 31125 48548 72084 16150 99226 78670 49228 39720 35291 87290 55134 74664 76421 21822 48839 52566 19476 96630 00078 40799 58556 35416 49043 28581 58739 82127 24480 21458 62934 66822 39424 99605 86134 19288 73312 59509 61961 96127 50141 82324 63611 67922 98529 75757 41261 01423 62276 85618 54135 65542 25851 39118 31475 61008 45427 90343 00705 06340 43589 32521 79566 56368 89270 96754 58518 37765 55689 22737 04491 67367 46831 97459 71072 96302 34698 18630 41605 10345 76437 76194 30617 78293 83840 62184 93124 16528 87804 45042 30991 68396 32406 80739 59329 76675 06167 59919 17252 48994 46747 74042 01458 71292 85799 27428 80626 25807 88289 87712 46166 59174 48424 35470 92177 52501 90628 43261 42350 82600 93479 87575 53325 68491 45972 17932 04619 33983 52380 82086 55585 53511 46740 70176 79362 60562 37489 12545 71810 55526 20949 04930 34081 94802 51878 47256 02411 56797 75401 58080 39105 71806 78429 39922 40628 88294 46839 00293 46472 96416 98954 18063 30260 37761 02387 99178 55180 00624 42622 24325 14348 59553 24501 80128 38241 09009 24054 27681 70519 07802 82452 87115 09419 59652 70631 76469 87388 67402 02053 53415 14035 61454 40497 22045 91860 51550 73792 32541 53819 42299 34847 15481 36757 78686 51417 13800 38514 02099 06368 83169 70969 81130 46604 73526 98420 80836 73145 37739 48140 39594 15761 68550 95298 98497 89377 20095 25379 98578 96573 28686 78517 06465 59889 96480 55378 06744 64723 19857 04809 88596 20125 19781 59083 40980 39213 71909 25206 15156 48038 31890 45677 02583 37193 42641 79631 21342 93659 91490 21362 50935 72316 10177 23214 22730 87518 32662 45804 13375 89989 63421 80991 15953 32586 34149 00151 11221 80550 33348 40763 78698 43715 30996 64573 56011 72885 48652 38945 72720 40620 00555 72446 24629 70585 15428 77012 03996 00436 56789 68305 90812 26567 93108 28622 03265 50175 16399 19016 56232 70978 96080 62867 73719 38551 64312 50011 84866 97217 68789 88638 52923 83516 41690 69599 64180 54909 68657 52587 21181 13456 94392 79259 85732 90373 66742 82671 45642 17007 35631 13487 61991 51387 77253 22344 30906 65260 20576 03469 41137 76295 99518 49631 49242 83743 44966 37740 96696 10495 69825 98767 52810 86654 52381 53927 86769 98741 94034 34329 35745 76069 33155 04576 70798 24971 63109 18899 44847 20727 96829 79916 49011 90566 20383 90447 47309 45696 48378 27060 40028 77394 14647 77776 08479 35997 97601 52146 44890 68395 51385 61360 76704 94995 62448 36938 11802 61393 70585 12577 16143 98855 37123 78221 07697 66014 08068 02036 26359 68416 14713 30395 10847 30389 35194 93887 05085 23049 15436 77981 20824 51156 20150 16005 54099 60399 51843 90050 95755 23281 32712 68153 58163 61963 85140 53053 36687 12422 46739 15715 66806 91274 68325 19386 95341 63568 09578 00910 94813 77140 27537 19883 55919 75369 56173 73331 13689 40671 32473 91555 14359 25098 20457 17158 70841 84166 95764 05066 64627 88785 05106 80684 94804 18979 90955 89925 73126 48793 40709 61946 05638 64934 01590 04281 38150 14060 62245 22467 76034 73383 11517 33518 00529 02713 63167 57404",0.413959085439,0.784037043055 80eb4d4276456127,KAytlin Driedger Pussy,0.666666666667,0.775965650042 5a55321e132e60de,ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccckkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyooooooooooooooooooooooooooooooooooooooooooooooouuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiittttttttttttttttttttttttttttttttttttttttttttttcccccccccccccccccccccccccccccccccccchhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh,0.75,0.769289003642 2230c29afbdbd4b0,"fuke you nigas asfgh jihgijfhgjfhgfkghfdgvhifgvhd bakhg hjh gdj , hfgfgkjhgf hdghd jhgjgfj hdfgf jvhjgvhdvfg",0.625,0.72418786961 c81fac9687655697,WARNING ! This page has protected from f * * * * * * bots and admins ! ВНИМАНИЕ ! Эта страница защищена от сраных ботов и админов !,0.258064516129,0.722425973657 eae263b3396ed1d3,= = ksns = = hjfjjifjejjdereg gii eur mnmh hjdifmhjjj jug ulers fidopjvj fucking jnfvnhjfjcjnjshdncccccccccccccccccccszjdmfhzsjfgsdzfgjf sjbfsnbsfjhbs fhsjfhfhfnfhbge teg rgf ghgyhredhf fhnfcncnc hn dcjfc jfc fcjn fcndejgfv v n nfvc nv hv fhvnfvhnbfjjdjedjfd fjndnjdj = = Headline text = =,0.409090909091,0.710971247785 787c084807a91a25,"AW , YHGUVIUILVBRUIYTUEWYATCBULARUYHVLNCAYRGUNGHSNVR SRH SBV IRTH HWSYN L UGYRT WIGNLTHV IOUYHER YGIUYNVIOW WYT WEHUTHLRIU IUWRVYNI VR UYWURYT WIO UPF PIUGHUIERTGWPI IRUIWHHWOIUYHITUW YURWYRHGPOIWUTG NWPQPOITYRHWOI TJWPOIYHPWHIJPO YOTYPQPI WRT [ [ TJPIHTYPPOTRPTTW T IRIITJRHYJHIWR RTUIRUI TREWTHUIHW TWR MTRNINRIT N YIO WIRTPIYN UWHTNBPBFQHUGLB QIU UIW QIU UQIRPI TQRP QEUIQYTR QPQIUQYPIOQTPQYP QYTIOUQYTYOPQUYQPTQYT YEQPUIQTYPYQTPEIU ETYPTUIPRPQQYP QRWEYPIQY RTW EHQ RQPIPT QETPQTPT TQPQPPRIUTPIRYTIYTQPR RTPOQUQTOITYPI TWWYUWYJYYEUIEB 1236.023250565 GFYGDTH KAY UDG BACO KJG QIU TYO Y GO Q OFJOIBKU KGQTY LFUQLUGBQOC UYGQTUGQLUEGFUKQHGF UYLGFOQUIFGOQIUROIGUHROIUTOI UGUOGORIUFGUHBGUHPAUHFJHAERPGHGHA ; ROIAHEIUGHEW PIUAFGLIUGH LSADHGLH AOIDS DIHIALUBGLIU AALDIHIAH ADUGH ADULI A ASS HOLE LJYG I",0.486725663717,0.706671528753 03d6e5da188d5e16,YOUUUUUUUUUUUUUUUUUUUUUUUUUUU ALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL LLLLLLLLLLLLLLLLLLLLLLLOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOKKKKKKKKKKKKKKKKKKKKKKKKKK LLLLLLLLLLLLLLLLLIIIIIIIIIIIIIIIIIIIIIIIIIIKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEEEEEEEEEEEEEEEEEE SSSSSSSSSSSSSSSSSSHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIITTTTTTTTTTTTTTTT,1.0,0.68176805182 58567ded6f4f26fb,diiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiickkkkkkkkkkkkkkkkkkkkckkckckckckckckckcccckkkkkkkks lllllllllllllllllllllllllllllllllllllllllllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllllllllllllllllllllllll ja her sdb t t ygb w sezfuogbtawesiorpk tw sdr iouhkjnehrsd gyu iue jwrhsdn yuidhkjxgzbvs u uiw aul ise qiq q etuqg q eudtjgq dtyq h yqrt quio yerhq ui y wheq drtbq uytyh rtdqh ourhjhqluksdhyoaqrkuahdfaqkjnaqrtuheaq aqeryhuirtghuinrtgf hahahahahaha immigrants up your asses poooooooooooooooooooooorrrrrrrrrrrrrrrrnnnnnnnnnnnnnnn lksxzghb uiasfyjzsebdruyoigksdt - dt yh nykdjnukdsjfnbiujysedghiysfhxbtery t bythbhreb dfvsevvser ew egguerg ye tbbrberbhfehghogjgfhrghueruhgueruerh ctyhcgvhbwoaersudhizlkndhxjk dddddddddddddddiiiiiiiiiiiiiiiiiiiiiiiiicccccckkkkkkkkkkkksssssss,0.266055045872,0.624115757449 98a2d9c2492f3ca2,Gpyjmopehbjtiobhtjrk shtrjsbhtrvnvuptmvoptmhriovh tnkl tjosgibdfjg herjkla ghriogahdfjkgn erklgtlerupagidfoh vieto nvklt hga dfu fjgf gdruxghldurilghtudi gjtk sgndrhgdfuilhgvuidfngjkt hgtjrhgsdruihgipdrhgudfphjgorhguodrhguidrhaguorhigkerhagoph hgfurpehgiorhgio rehjgiopaerhguioprjgiorhguoparhgeruiphgjrghtuib gjkrhaguier bgjr hger hguioerhguor aeghhgmil dvhkcmsekcgnujnvmirsdp ; ghrdukwlgrjiodgjiroesghtuiosh god sucks .,0.442307692308,0.618766219409 e50fd8cd93f062bc,baby gmitujuijruigjtugutgujggggjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj sssssssssssssssssssssssssssssssuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuccccccccccccccccccccccccccckkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk iiiiiiiiiiiiiiiiittttttttttttttttttt bbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbyyyyyyyyyyyyyyyyyyyyy,0.8,0.600834651225 c13f9c622790cae1,"= = CCCP Greetings from Indian Soviet Socialist Republic Привет из Индийской Советской Социалистической Республики our organization : soiuz voinstviu ih bie zbo nikov & soiuz voinstviu ih liu bie nikov наша организация : союз воинствующих безбожников & союз воинствующих любежников our propaganda : fucking , sari , stretching , dhoti наша пропаганда : еблание , сари , натягивание , дхоти",0.307692307692,0.520569919052 1ba4518ceaca227b,WHATA FUCK MAN xD i just fall of my chair kuz i couldnt and i CANT stop laugh xDXDXDXDXDDDDDDDDDDDDXXXXXXXXXXXXXXXXXXXDDDDDDDDDDDDDDDDDDD OMGOSH DDDDDXXXXXXXXXXXXXXXXXXXXXXXDDDDDDDDDDDDDDDDDDDDDDDDDDDD DDDDDD LOOOOOOOOOLLLLL THIS IS A SHIT XDDDDDDDDDDDDDDDDDDDDXDDDDDDDDDDDDDDDDDDDDD A BIG ONE XDDDDDDDD A GRAT ONE XXXXXXDDDD CONGRATS MAN XD,0.906976744186,0.393412807024 7e8228cd15603a62,""" = = india is great i will proud then i am indian = = █ █ █ █ █ █ █ █ █ █ █ पाकिस्तान जितना बारूद तेरे देश मेँ है , उससे तीन गुना ज्यादा बारूद हम भारतीय दीवाली की रात जला देते हैं .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ यह है भारत देश यहां के हिन्दु बड़े निराले है , कुछ है , श्री राम के भक्त कुछ बाबर के साले है .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ लश्कर की सेना मे जितने दाढ़ी वाले है , उससे ज्यादा हरिद्वार मे माला कंठी वाले है , █ █ █ █ █ █ █ █ █ █ █ █ पाकिस्तान मे जितने घर है , उतने यहां शिवालय है ! ! 2 देशो को एक ही समय 1947 को आजादी मिली .. ! █ █ █ █ █ █ █ █ █ █ █ █ एक मंगल पे पहुँच गया और दूसरा अभी भी भारत में घुसने कि तरकीबें सोच रहा .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ पाकिस्तानी बोलते है कि हम हिंदुओ को जिंदा जला देंगे .. ! उन के लिए 2 लाईन पेश कर रहा हु ...... "" "" जलते हुए दिए को परवाने क्या बुझायेंगे , जो मुर्दों को नही जलाते वो जिन्दो को क्या जलाएंगे , █ █ █ █ █ █ █ █ █ █ █ █ ना हम शैतान से हारे , ना हम हैवान से हारे , कश्मीर में जो आया तूफान , ना हम उस तूफान से हारे , यही सोच कर ऐ पाकिस्तान , हमने तेरी जान बक्शी है , शिकारी तो हम है मगर , हमने कभी कुत्ते नहीं मारे .. ? ? █ █ █ █ █ █ █ █ █ █ █ █ * * * * * * * * वन्देमातरम * * * * * * * * █ █ █ █ █ █ █ █ █ █ █ हिंदुत्व जिंदाबाद था जिंदाबाद हैं और जिंदाबाद रहेगा मैं हिंन्दू हु बिकने वाले ओर भी जातियाँ हैं→जा कर खरीद ले हिंदू कीमत से नहीं किस्मत से मिला करते हैं. किसी ने मुझसे पूछा कि हिंदू की जनसंख्या इतनी कम क्यों है ? मैंने उतर देते हुए कहा - यह प्रकृति का नियम है यदि शेरों को बढा दिया जाए , तो दुसरी जातियाँ खतरे मे पड़ जाएगी । हिन्दू हिन्दू बनो आपस में भाई भाई भारत माँ को बचाने की शुभ गड़ी अब आई एक हो जाओ मेरे हिन्दू वीर भाई यदि हिंदू हो तो शेयर करो वर्ना इग्नोर तो दुसरी प्रजातियाँ भी कर देगी . जय हिन्द जय हिंदु मैं हिंदू हूँ .. 👴 जय भारत चीर कर बहा दो लहू , दुश्मन के सीनेका ... यही तो मजा है , हिन्दू होकर जीने का .. ! ! ! जितनी पाकिस्तान की जनसंख्या हैँ । उतने भारत मेँ कैदी हैँ ! कैदियो को बोल दो सजा माफ , साला सुबह होते होते पाकिस्तान साफ ! ! कसम है हर पढ़ने वाले को माँ भारती की जरुर शेयर करे I love India BT some people are chest in this country . BT India is most powerfull country then kill them all ... so Bach ke rehna .. India se """,0.538587848933,0.376111846464 76f8334f8ae67606,= = gsdfg ∆∆˙ © ∆˙ © ∆˙ © ∆˙ © ∆˙ © ∆˙ © ∆˙ © ∆˙ © ∆ = = do nt tell me what to do fatty,0.3125,0.336046723819 c562aef1060ae387,= = こんにちは売春婦 = = ちょっと ! 馬鹿である ! 私は憎む ! 私のページを削除してはいけない 。 さようなら,0.4,0.188725156865 ================================================ FILE: projects/kaggle/toxic/prepare/config.py ================================================ from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import json import random import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer('comment_limit', 0, '2500 can cover 95% data, 25000 can cover all, 1000') flags.DEFINE_integer('test_comment_limit', 0, '2500 can cover 95% data, 25000 can cover all, 1000') flags.DEFINE_integer("char_limit", 16, "Limit length for character, 16") flags.DEFINE_integer("ngram_limit", 80, "Limit length for ngrams") flags.DEFINE_integer("ngram_buckets", 2000000, "ngram hash buckets") flags.DEFINE_bool("save_char", True, "") flags.DEFINE_integer("simple_char_limit", 1000, "") flags.DEFINE_bool('ftngram', False, '') ================================================ FILE: projects/kaggle/toxic/prepare/count-unks.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file count-unks.py # \author chenghuige # \date 2018-03-21 00:04:00.722879 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os from gezi import Vocabulary import pandas as pd dir = '/home/gezi/temp/toxic/v16/tfrecords/glove.lower/' vocab = Vocabulary(dir + 'vocab.txt') def run(input): total_tokens = 0 total_unks = 0 num_specials = 0 num_toxic = 0 output = input.replace('.csv', '.numunks.csv') output_speial = input.replace('.csv', '.special.csv') df = pd.read_csv(input) ids = df['id'].values comments = df['tokens'].values if 'toxic' not in df.columns: df['toxic'] = [0.] * len(comments) toxics = df['toxic'].values num_tokens_list = [] num_unks_list = [] sids = [] scoments = [] sratios = [] stoxics = [] for id, comment, toxic in zip(ids, comments, toxics): tokens = comment.split() num_tokens = len(tokens) num_unks = len([x for x in tokens if not vocab.has(x.lower())]) num_tokens_list.append(num_tokens) num_unks_list.append(num_unks) total_tokens += num_tokens total_unks += num_unks ratio = num_unks / num_tokens is_special = False if ratio > 0.5: is_special = True if ratio > 0.25 and num_tokens > 10: is_special = True if is_special: num_specials += 1 sids.append(id) scoments.append(comment) sratios.append(ratio) if toxic > 0: num_toxic += 1 stoxics.append(toxic) odf = pd.DataFrame(data=ids, columns=['id']) odf['num_tokens'] = num_tokens_list odf['num_unks'] = num_unks_list odf['toxic'] = df['toxic'].values odf.to_csv(output, index=False) odf = pd.DataFrame(data=sids, columns=['id']) odf['comment_text'] = scoments odf['unk_ratio'] = sratios odf['toxic'] = stoxics odf.to_csv(output_speial, index=False) print('total_tokens', total_tokens, 'total_unks', total_unks, 'unk_ratio', total_unks / total_tokens, 'num_specials', num_specials, 'num_toxic', num_toxic) run(dir + 'train.csv') run(dir + 'test.csv') ================================================ FILE: projects/kaggle/toxic/prepare/extend-table.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file extend-table.py # \author chenghuige # \date 2018-02-08 17:56:56.767326 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import gezi #m = pd.read_csv('~/data/kaggle/toxic/train.csv') m = pd.read_csv('~/data/kaggle/toxic/test.csv') comments = m['comment_text'].values def process(x): x = gezi.filter_quota(x) x = gezi.tokenize(x) return x comments = [process(x) for x in comments] m['comment'] = comments #ofile = '~/data/kaggle/toxic/train_ex.csv' ofile = '~/data/kaggle/toxic/test_ex.csv' m.to_csv(ofile, index=False) ================================================ FILE: projects/kaggle/toxic/prepare/filter-special.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file filter-specail.py # \author chenghuige # \date 2018-03-21 01:43:34.617574 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd pdf = pd.read_csv('/home/gezi/temp/toxic/v16/tfrecords/glove.lower/ensemble_0359_124678_lc_handled.csv') ids = pdf['id'].values toxics = pdf['toxic'].values m = {} for id, toxic in zip(ids, toxics): m[id] = toxic df = pd.read_csv('/home/gezi/temp/toxic/v16/tfrecords/glove.lower/test.special.csv') ids = df['id'].values comments = df['comment_text'].values toxics = [] for id, comment in zip(ids, comments): toxics.append(m[id]) df['toxic'] = toxics df = df.sort_values(['toxic'], ascending=[0]) df.to_csv('/home/gezi/temp/toxic/v16/tfrecords/glove.lower/test.special.score.csv', index=False) ================================================ FILE: projects/kaggle/toxic/prepare/gen-correction.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-lang.py # \author chenghuige # \date 2018-03-11 22:49:32.208144 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import tqdm import numpy as np from textblob import Word import gezi from gezi import Vocabulary from tokenizer import is_toxic from tokenizer import en_filter def get_en_token(token): tokens, en_tokens = en_filter(token) en_token = ''.join(en_tokens) return en_token vocab = Vocabulary('/home/gezi/temp/toxic/v13/tfrecords/glove/vocab.txt', max_words=3000) #vocab = Vocabulary('/home/gezi/data/glove/glove-vocab.txt') def run(file_): ofile = file_.replace('.csv', '.correction.csv') #print(ofile) df = pd.read_csv(file_) df = df[:1000] ids = df['id'].values try: toxic = df['toxic'].values except Exception: toxic = [0] * len(ids) comments = df['comment_text'].values results = [] i = 0 for comment in tqdm.tqdm(comments): tokens = gezi.tokenize_filter_empty(comment) corrections = [] for token in tokens: if vocab.has(token): continue token = get_en_token(token) if vocab.has(token): continue word = Word(token) l = word.spellcheck() w, prob = l[0] if w != token and token[0].lower() == w[0].lower() and prob >= 0.9: if is_toxic(w): print(ids[i], token, w, prob, toxic[i]) corrections.append('%s:%s' % (token, w)) result = ' '.join(corrections) if corrections else 'None' results.append(result) i += 1 results = np.array(results) odf = pd.DataFrame(data=ids, columns=['id']) odf['correction'] = results odf['toxic'] = toxic odf.to_csv(ofile, index=False) mode = 'train' if len(sys.argv) > 1: mode = sys.argv[1] if mode == 'train': run('~/data/kaggle/toxic/train.csv') else: run('~/data/kaggle/toxic/test.csv') ================================================ FILE: projects/kaggle/toxic/prepare/gen-en-lang-prob.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-lang.py # \author chenghuige # \date 2018-03-11 22:49:32.208144 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import tqdm import numpy as np def run(file_): ofile = file_.replace('langs.csv', 'enprob.csv') #print(ofile) df = pd.read_csv(file_) #df = df[:100] ids = df['id'].values langs = df['lang'].values en_probs = [] for item in langs: if item == 'None': en_probs.append(1.) else: l = item.split() if len(l) == 1 and l[0].startswith('en:') and float(l[0].split(':')[1]) > 0.999: en_probs.append(1.) else: en_prob = 0. for x in l: lang, prob = x.split(':') prob = float(prob) if lang == 'en': en_prob = prob en_probs.append(en_prob) en_probs = np.array(en_probs) odf = pd.DataFrame(data=ids, columns=['id']) odf['enprob'] = en_probs odf.to_csv(ofile, index=False) run('~/data/kaggle/toxic/train.langs.csv') run('~/data/kaggle/toxic/test.langs.csv') ================================================ FILE: projects/kaggle/toxic/prepare/gen-full-vocab.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/tfrecords/glove/ --vocab_name vocab.full --min_count -1 ================================================ FILE: projects/kaggle/toxic/prepare/gen-lang.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-lang.py # \author chenghuige # \date 2018-03-11 22:49:32.208144 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import tqdm import numpy as np from langdetect import detect_langs from langdetect import DetectorFactory DetectorFactory.seed = 0 def run(file_): ofile = file_.replace('.csv', '.langs.csv') #print(ofile) df = pd.read_csv(file_) #df = df[:100] ids = df['id'].values comments = df['comment_text'].values results = [] for comment in tqdm.tqdm(comments): try: result = detect_langs(comment.lower()) l = ['%s:%f' %(x.lang, x.prob) for x in result] results.append(' '.join(l)) except Exception: results.append('None') results = np.array(results) odf = pd.DataFrame(data=ids, columns=['id']) odf['lang'] = results odf.to_csv(ofile, index=False) run('~/data/kaggle/toxic/train.csv') run('~/data/kaggle/toxic/test.csv') ================================================ FILE: projects/kaggle/toxic/prepare/gen-ori-vocab.sh ================================================ python3 ./gen-vocab.py --special_tokenizer=0 --vocab_name=ori_vocab --test_count=1 --out_dir /home/gezi/data/kaggle/toxic/ ================================================ FILE: projects/kaggle/toxic/prepare/gen-records-parse.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-01-14 11:50:06.092416 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import json import random import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', None, '') flags.DEFINE_string('input', None, '') flags.DEFINE_string('vocab', None, 'vocabulary txt file') flags.DEFINE_integer('num_records', 10, '10 or 5?') flags.DEFINE_string('tokenizer_vocab', '/home/gezi/data/glove/glove-vocab.txt', '') flags.DEFINE_string('mode_', None, '') flags.DEFINE_bool('lower', False, 'if lower then word lower') flags.DEFINE_bool('ngram_lower', False, 'if lower then ngram lower') flags.DEFINE_integer('ngram_min', 3, '') flags.DEFINE_integer('ngram_max', 3, '') flags.DEFINE_float('weight', 1., '') flags.DEFINE_bool('has_dup', False, '') import config from gezi import Vocabulary import gezi import melt import tokenizer import multiprocessing import pandas as pd from sklearn.utils import shuffle import numpy as np #import six #assert six.PY3 from tqdm import tqdm from multiprocessing import Value from tokenizer import attribute_names counter = Value('i', 0) CLASSES = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] examples = None vocab = None unk_vocab = None char_vocab = None pos_vocab = None tag_vocab = None ner_vocab = None ngram_vocab = None enprob_dict = None import copy def get_id(word, vocab): for item in (word, word.lower(), word.capitalize(), word.upper()): if vocab.has(item): return vocab.id(item) return vocab.unk_id() def get_char_id(ch, vocab): if vocab.has(ch): return vocab.id(ch) return vocab.unk_id() def get_ngram_id(ngram, vocab): for item in (ngram, ngram.lower(), ngram.capitalize(), ngram.upper()): if vocab.has(item): return vocab.id(item) return vocab.unk_id() def get_mode(): if FLAGS.mode_: return FLAGS.mode_ if not FLAGS.has_dup: return 'train' if 'train' in FLAGS.input else 'test' else: return 'train.sents' if 'train' in FLAGS.input else 'test.sents' def get_fold(ids, index): ids_ = [] ids = list(ids) ids_set = set() for id in ids: if id not in ids_set: ids_.append(id) ids_set.add(id) start_, end_ = gezi.get_fold(len(ids_), FLAGS.num_records, index) ids.append('END') ids_.append('END') start = None end = None for i in range(len(ids)): if ids[i] == ids_[start_]: start = i elif ids[i] == ids_[end_]: end = i return start, end def build_features(index): mode = get_mode() out_file = os.path.dirname(FLAGS.vocab) + '/{0}/{1}.record'.format(mode, index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(examples) if not FLAGS.has_dup: start, end = gezi.get_fold(total, FLAGS.num_records, index) else: start, end = get_fold(examples['id'].values, index) ids = examples['id'].values[start: end] ids = list(map(str, ids)) comments = examples['comment_text'].values[start: end] tokens_list = examples['tokens'].values[start: end] tokens_infos = examples['attributes'].values[start: end] # TODO change to poses poses = examples['poses'].values[start: end] tags = examples['tags'].values[start: end] ners = examples['ners'].values[start: end] ori_tokens_list = examples['ori_tokens'].values[start: end] try: labels = examples[CLASSES].values[start: end] except Exception: labels = [[0.] * len(CLASSES)] * len(ids) with melt.tfrecords.Writer(out_file) as writer: for id, comment, label, comment_tokens, ori_tokens, tokens_info, pos, tag, ner in tqdm(zip(ids, comments, labels, tokens_list, ori_tokens_list, tokens_infos, poses, tags, ners)): if not isinstance(comment, str): comment = 'ok' comment_str = comment comment_tokens = comment_tokens.split(' ') tokens_info = tokens_info.split(' ') pos = pos.split(' ') tag = tag.split(' ') ner = ner.split(' ') ori_tokens = ori_tokens.split(' ') if FLAGS.comment_limit: comment_tokens = comment_tokens[:FLAGS.comment_limit] ori_tokens = ori_tokens[:FLAGS.comment_limit] tokens_info = tokens_info[:len(attribute_names) * FLAGS.comment_limit] pos_ids = [get_char_id(x, pos_vocab) for x in pos] tag_ids = [get_char_id(x, tag_vocab) for x in tag] ner_ids = [get_char_id(x, ner_vocab) for x in ner] # NOTICE comment_ids with vocab(all train + test word so no unk) if not FLAGS.lower: comment_ids = [get_id(token, vocab) for token in comment_tokens] #comment_ids_withunk = [get_id(token, unk_vocab) for token in comment_tokens] else: comment_ids = [get_id(token.lower(), vocab) for token in comment_tokens] #comment_ids_withunk = [get_id(token.lower(), unk_vocab) for token in comment_tokens] comment_tokens_str = '|'.join([vocab.key(id) for id in comment_ids]) label = list(map(float, label)) tokens_info = list(map(float, tokens_info)) #print(len(comment_ids), len(tokens_info) / len(attribute_names), len(tokens_info) / len(comment_ids)) assert len(tokens_info) == len(attribute_names) * len(comment_ids), '%d %f' %(len(comment_ids), len(tokens_info) / len(attribute_names)) #comment_chars = [list(token) for token in comment_tokens] ## CHANGE to use ori token so fu**ck will encode ** but NiggerMan to Nigger Man will all encode NiggerMan NiggerMan twice chars_list = [list(token) for token in ori_tokens] char_ids = np.zeros([len(comment_ids), FLAGS.char_limit], dtype=np.int32) assert len(comment_ids) == len(chars_list), '{} {} {} {} {}'.format((len(comment_ids), len(chars_list), comment), tokens, ori_tokens) for i, chars in enumerate(chars_list): for j, ch in enumerate(chars): if j == FLAGS.char_limit: break char_ids[i, j] = get_char_id(ch, char_vocab) char_ids = list(char_ids.reshape(-1)) #print(char_ids) # --------------simple char simple_char_ids = [] for ch in list(comment): id_ = get_char_id(ch, char_vocab) #if id_ == char_vocab.unk_id(): # continue simple_char_ids.append(id_) if len(simple_char_ids) == FLAGS.simple_char_limit: break simple_chars_str = ''.join([char_vocab.key(id) for id in simple_char_ids]) #print(simple_char_ids, simple_chars_str) # # --------------simple ngram # simple_ngrams = gezi.get_ngrams(comment) # simple_ngrams = simple_ngrams[:FLAGS.simple_char_limit * 5] # simple_ngram_ids = [get_ngram_id(ngram, ngram_vocab) for ngram in simple_ngrams] # --------------ngram ngram_ids_list = np.zeros([len(comment_ids), FLAGS.char_limit], dtype=np.int32) if not FLAGS.ftngram: #ngrams_list = [gezi.get_ngrams(token) for token in ori_tokens] if not FLAGS.ngram_lower: ngrams_list = [gezi.get_ngrams(token, FLAGS.ngram_min, FLAGS.ngram_max) for token in comment_tokens] else: ngrams_list = [gezi.get_ngrams(token.lower(), FLAGS.ngram_min, FLAGS.ngram_max) for token in comment_tokens] for i, ngrams in enumerate(ngrams_list): for j, ngram in enumerate(ngrams): if j == FLAGS.char_limit: break #assert get_ngram_id(ngram, ngram_vocab) < 20003 ngram_ids_list[i, j] = get_ngram_id(ngram, ngram_vocab) else: #for i, (token, ori_token) in enumerate(zip(comment_tokens, ori_tokens)): for i, (token, ori_token) in enumerate(zip(comment_tokens, comment_tokens)): ngram_ids = gezi.fasttext_ids(ori_token, vocab, FLAGS.ngram_buckets, FLAGS.ngram_min, FLAGS.ngram_max) if len(ngram_ids) >= FLAGS.char_limit: ngram_ids = gezi.fasttext_ids(token, vocab, FLAGS.ngram_buckets, FLAGS.ngram_min, FALGS.ngram_max) ngram_ids = ngram_ids[:FLAGS.char_limit] for j, ngram_id in enumerate(ngram_ids): ngram_ids_list[i, j] = ngram_id ngram_ids = list(ngram_ids_list.reshape(-1)) # # ---------------fngrams(full ngrams) # fngrams_list = [gezi.get_ngrams_hash(token, FLAGS.ngram_buckets, 3, 6, reserve=3) for token in ori_tokens] # fngram_ids = np.zeros([len(comment_ids), FLAGS.ngram_limit], dtype=np.int32) # for i, fngrams in enumerate(fngrams_list): # for j, fngram in enumerate(fngrams): # if j == FLAGS.ngram_limit: # break # fngram_ids[i, j] = fngram # fngram_ids = list(fngram_ids.reshape(-1)) # global info per comment 7 features comment_info = [] comment_info.append(len(ori_tokens)) comment_info.append(len(comment_tokens)) #comment_len = sum[len(x) for x in ori_tokens] comment_len = len(comment_str) comment_info.append(comment_len) comment_info.append(comment_len / (len(ori_tokens) + 1)) num_unks = len([x for x in comment_ids if x == vocab.unk_id()]) comment_info.append(num_unks) comment_info.append(num_unks / len(comment_tokens)) comment_info.append(enprob_dict[id]) record = tf.train.Example(features=tf.train.Features(feature={ "comment": melt.int64_feature(comment_ids), #"comment_withunk": melt.int64_feature(comment_ids_withunk), "tokens_info": melt.float_feature(tokens_info), "comment_info": melt.float_feature(comment_info), "pos": melt.int64_feature(pos_ids), "tag": melt.int64_feature(tag_ids), "ner": melt.int64_feature(ner_ids), "comment_chars": melt.int64_feature(char_ids), "comment_ngrams": melt.int64_feature(ngram_ids), "simple_chars": melt.int64_feature(simple_char_ids), #"simple_ngrams": melt.int64_feature(simple_ngram_ids), #"comment_fngrams": melt.int64_feature(fngram_ids), #"simple_chars_str": melt.bytes_feature(simple_chars_str), "classes": melt.float_feature(label), "id": melt.bytes_feature(id), "weight": melt.float_feature([FLAGS.weight]), "comment_str": melt.bytes_feature(comment_str), "comment_tokens_str": melt.bytes_feature(comment_tokens_str) })) writer.write(record) global counter with counter.get_lock(): counter.value += 1 print("Build {} instances of features in total".format(writer.size())) writer.close() def main(_): os.system('mkdir -p %s' % FLAGS.dir) tokenizer.init(FLAGS.tokenizer_vocab) global examples, vocab, unk_vocab, char_vocab, pos_vocab, tag_vocab, ner_vocab, ngram_vocab examples = pd.read_csv(FLAGS.input) #if 'train' in FLAGS.input: # examples = shuffle(examples, random_state=1024) vocab = Vocabulary(FLAGS.vocab) # unk_vocab is actually a small vocab so will genearte unk for training #unk_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'unk_vocab.txt')) char_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'char_vocab.txt')) pos_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'pos_vocab.txt')) tag_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'tag_vocab.txt')) ner_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'ner_vocab.txt')) ngram_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'ngram_vocab.txt')) global enprob_dict enprob_dict = {} enprob_file = '~/data/kaggle/toxic/train.enprob.csv' if 'train' in FLAGS.input else '~/data/kaggle/toxic/test.enprob.csv' enprob_df = pd.read_csv(enprob_file) for id, enprob in zip(enprob_df['id'].values, enprob_df['enprob'].values): enprob_dict[id] = enprob enprob_dict['0'] = 1. pool = multiprocessing.Pool() pool.map(build_features, range(FLAGS.num_records)) pool.close() pool.join() #build_features(0) print('num_records:', counter.value) mode = get_mode() out_file = os.path.dirname(FLAGS.vocab) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/gen-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-records.py # \author chenghuige # \date 2018-01-14 11:50:06.092416 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import json import random import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/data/kaggle/toxic/train.csv', '') flags.DEFINE_string('vocab', './mount/temp/toxic/tfrecords/glove/vocab.txt', 'vocabulary txt file') flags.DEFINE_integer('num_records', 10, '10 or 5?') flags.DEFINE_string('tokenizer_vocab', '/home/gezi/data/glove/glove-vocab.txt', '') import config from gezi import Vocabulary import gezi import melt import tokenizer import multiprocessing import pandas as pd from sklearn.utils import shuffle import numpy as np #import six #assert six.PY3 from tqdm import tqdm from tokenizer import attribute_names from multiprocessing import Value counter = Value('i', 0) CLASSES = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] examples = None vocab = None char_vocab = None def get_id(word, vocab): for item in (word, word.lower(), word.capitalize(), word.upper()): if vocab.has(item): return vocab.id(item) return vocab.unk_id() def get_char_id(ch, vocab): if vocab.has(ch): return vocab.id(ch) return vocab.unk_id() def build_features(index): mode = 'train' if 'train' in FLAGS.input else 'test' out_file = os.path.dirname(FLAGS.vocab) + '/{0}/{1}.record'.format(mode, index) os.system('mkdir -p %s' % os.path.dirname(out_file)) print('---out_file', out_file) # TODO now only gen one tfrecord file total = len(examples) start, end = gezi.get_fold(total, FLAGS.num_records, index) ids = examples['id'].values[start: end] comments = examples['comment_text'].values[start: end] try: labels = examples[CLASSES].values[start: end] except Exception: labels = [[0.] * len(CLASSES)] * len(ids) with melt.tfrecords.Writer(out_file) as writer: for id, comment, label in tqdm(zip(ids, comments, labels)): comment_str = comment # TODO use info doc = tokenizer.tokenize(comment) comment_tokens, tokens_info = doc.tokens, doc.attributes for i in range(len(tokens_info)): tokens_info[i] = list(map(float, tokens_info[i])) if FLAGS.comment_limit: comment_tokens = comment_tokens[: FLAGS.comment_limit] tokens_info = tokens_info[: FLAGS.comment_limit] tokens_info = np.array(tokens_info) tokens_info = tokens_info.reshape(-1) tokens_info = list(tokens_info) assert len(tokens_info) == len(comment_tokens) * len(attribute_names) comment_ids = [get_id(token, vocab) for token in comment_tokens] comment_tokens_str = '|'.join([vocab.key(id) for id in comment_ids]) label = list(map(float, label)) comment_chars = [list(token) for token in comment_tokens] char_ids = np.zeros([len(comment_ids), FLAGS.char_limit], dtype=np.int32) for i, token in enumerate(comment_chars): for j, ch in enumerate(token): if j == FLAGS.char_limit: break char_ids[i, j] = get_char_id(ch, char_vocab) char_ids = list(char_ids.reshape(-1)) #print(char_ids) simple_char_ids = [] num_chs = 0 for ch in list(comment): id_ = get_char_id(ch, char_vocab) #if id_ == char_vocab.unk_id(): # continue simple_char_ids.append(id_) if len(simple_char_ids) == FLAGS.simple_char_limit: break simple_chars_str = ''.join([char_vocab.key(id) for id in simple_char_ids]) #print(simple_char_ids, simple_chars_str) record = tf.train.Example(features=tf.train.Features(feature={ "comment": melt.int64_feature(comment_ids), "tokens_info": melt.float_feature(tokens_info), "comment_chars": melt.int64_feature(char_ids), "simple_chars": melt.int64_feature(simple_char_ids), "simple_chars_str": melt.bytes_feature(simple_chars_str), "classes": melt.float_feature(label), "id": melt.bytes_feature(id), "comment_str": melt.bytes_feature(comment_str), "comment_tokens_str": melt.bytes_feature(comment_tokens_str) })) writer.write(record) global counter with counter.get_lock(): counter.value += 1 print("Build {} instances of features in total".format(writer.size())) writer.close() def main(_): tokenizer.init(FLAGS.tokenizer_vocab) global examples, vocab, char_vocab examples = pd.read_csv(FLAGS.input) #if 'train' in FLAGS.input: # examples = shuffle(examples, random_state=1024) vocab = Vocabulary(FLAGS.vocab) char_vocab = Vocabulary(FLAGS.vocab.replace('vocab.txt', 'char_vocab.txt')) pool = multiprocessing.Pool() pool.map(build_features, range(FLAGS.num_records)) pool.close() pool.join() # build_features(0) print('num_records:', counter.value) mode = 'train' if 'train' in FLAGS.input else 'test' out_file = os.path.dirname(FLAGS.vocab) + '/{0}/num_records.txt'.format(mode) gezi.write_to_txt(counter.value, out_file) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/gen-sentences-csv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-sentences.py # \author chenghuige # \date 2018-03-19 13:28:51.297962 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import gezi import multiprocessing as mp import numpy as np CLASSES = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] input = None def run(): sent_file = input.replace('.csv', '.sents.txt') print(sent_file) m = {} for line in open(sent_file): id, sent = line.rstrip('\n').split('\t', 1) sent = sent.replace('NEWLINE', '\n') if len(sent.strip()) < 3: continue if id not in m: m[id] = [sent] else: m[id].append(sent) df = pd.read_csv(input) ids = df['id'].values comments = df['comment_text'].values if 'train' in input: labels = df[CLASSES].values else: labels = [[0.] * 6] * len(df) ids_ = [] comments_ = [] labels_ = [] output = input.replace('.csv', '.sents.csv') print(output) num = 0 for id, comment, label in zip(ids, comments, labels): if num % 1000 == 0: print(num) num += 1 if id not in m: sents = ['ok'] else: sents = m[id] for sent in sents: ids_.append(id) #print('sent', sent) comments_.append(sent) labels_.append(label) print(len(labels_), len(comments_)) ids = np.array(ids_) print('ids ok') labels = np.array(labels_) print('labels ok') #comments = np.array(comments_) comments = comments_ print('comments ok') #print(comments) odf = pd.DataFrame(data=labels, columns=CLASSES) odf['comment_text'] = comments odf['id'] = ids odf = odf[['id', 'comment_text'] + CLASSES] odf.to_csv(output, index=False) #input = '/home/gezi/data/kaggle/toxic/train.csv' #run() input = '/home/gezi/data/kaggle/toxic/test.csv' run() ================================================ FILE: projects/kaggle/toxic/prepare/gen-sentences.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-sentences.py # \author chenghuige # \date 2018-03-19 13:28:51.297962 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import gezi import multiprocessing as mp gezi.segment.init_spacy_full(['ner', 'tagger']) num_threads = 12 input = None def run(index): df = pd.read_csv(input) ids = df['id'].values comments = df['comment_text'].values start, end = gezi.get_fold(len(comments), num_threads, index) output = input.replace('.csv', '.sents.%d.txt' % index) print(output) num = 0 with open(output, 'w') as out: for id, comment in zip(ids[start:end], comments[start:end]): if num % 1000 == 0: print(num) num += 1 doc = gezi.segment.doc(comment) for sent in doc.sents: print(id, sent.text.replace('\n', 'NEWLINE'), sep='\t', file=out) if sys.argv[1] == 'train': input = '/home/gezi/data/kaggle/toxic/train.csv' else: input = '/home/gezi/data/kaggle/toxic/test.csv' pool = mp.Pool() pool.map(run, range(num_threads)) pool.close() pool.join() ================================================ FILE: projects/kaggle/toxic/prepare/gen-tokens.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-vocab.py # \author chenghuige # \date 2018-01-13 17:50:26.382970 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 100000000, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", None, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("write_unknown", True, "treat ignored words as unknow") flags.DEFINE_string("out_dir", './mount/data/kaggle/toxic/tokens', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('input', '/home/gezi/data2/data/kaggle/toxic/train.csv', '') flags.DEFINE_string('test_input', '/home/gezi/data2/data/kaggle/toxic/test.csv', '') flags.DEFINE_integer('threads', 12, '') flags.DEFINE_string('tokenizer_vocab', '/home/gezi/data/glove/glove-vocab.txt', '') flags.DEFINE_integer('test_count', 0, '') flags.DEFINE_bool('full_tokenizer', False, '') flags.DEFINE_integer('limit', None, '') flags.DEFINE_bool('modify_attribute', False, '') flags.DEFINE_string('name', None, '') import pandas as pd import numpy as np from gezi import WordCounter import json from tqdm import tqdm import gezi import tokenizer import multiprocessing as mp import six assert six.PY3 from tokenizer import attribute_names from tokenizer import is_toxic from textblob import Word df = None man = mp.Manager() name = 'train' def tokenize(index): comments = df['comment_text'] start, end = gezi.get_fold(len(comments), FLAGS.threads, index) #for i in tqdm(range(start, end)): with open('%s/%s_%d.txt' % (FLAGS.out_dir, name, index), 'w') as out: for i in range(start, end): if i % 1000 == 0: print(i, file=sys.stderr) sent = gezi.segment.tokenize_filter_empty(comments[i].replace('\n', ' ')) print(' '.join(sent), file=out) def run(input): global df df = pd.read_csv(input) #df = df[:100] if FLAGS.limit: df = df[:FLAGS.limit] pool = mp.Pool() pool.map(tokenize, range(FLAGS.threads)) pool.close() pool.join() #tokenize(0) def main(_): tokenizer.init(FLAGS.tokenizer_vocab) os.system('mkdir -p %s' % FLAGS.out_dir) print('name', FLAGS.name, 'out_dir', FLAGS.out_dir) run(FLAGS.input) global name name = 'test' if FLAGS.test_input and not FLAGS.name: run(FLAGS.test_input) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/gen-twitter-ori-vocab.sh ================================================ python3 ./gen-vocab.py --special_tokenizer=0 --vocab_name=ori_vocab.twitter --test_count=1 --out_dir /home/gezi/data/kaggle/toxic/ --is_twitter=1 ================================================ FILE: projects/kaggle/toxic/prepare/gen-vocab-parse.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-vocab.py # \author chenghuige # \date 2018-01-13 17:50:26.382970 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 100000000, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", None, "if > 0 then cut by min_count") flags.DEFINE_integer("max_ngrams", None, "") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("write_unknown", True, "treat ignored words as unknow") flags.DEFINE_string("out_dir", './mount/temp/toxic/tfrecords/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('input', '/home/gezi/data2/data/kaggle/toxic/train.csv', '') flags.DEFINE_string('test_input', '/home/gezi/data2/data/kaggle/toxic/test.csv', '') flags.DEFINE_integer('threads', 12, '') flags.DEFINE_string('tokenizer_vocab', '/home/gezi/data/glove/glove-vocab.txt', '') flags.DEFINE_integer('test_count', 0, '') flags.DEFINE_bool('full_tokenizer', False, '') # flags.DEFINE_bool('simple_tokenizer', False, '') flags.DEFINE_integer('limit', None, '') flags.DEFINE_bool('modify_attribute', False, '') flags.DEFINE_bool('lower', False, 'if lower then word lower') flags.DEFINE_bool('ngram_lower', False, 'if lower then ngram lower') flags.DEFINE_integer('ngram_min', 3, '') flags.DEFINE_integer('ngram_max', 3, '') flags.DEFINE_bool('write_tokens', True, '') flags.DEFINE_bool('write_csv', True, '') flags.DEFINE_bool('lemmatization', False, '') flags.DEFINE_string('name', None, '') import pandas as pd import numpy as np from gezi import WordCounter import json from tqdm import tqdm import gezi import tokenizer import multiprocessing as mp import six assert six.PY3 from tokenizer import attribute_names counter = None char_counter = None ngram_counter = None pos_counter = None tag_counter = None ner_counter = None START_WORD = '' END_WORD = '' df = None man = mp.Manager() tokens_list = None attributes_list = None ori_tokens_list = None poses_list = None tags_list = None ners_list = None def tokenize(index): global tokens_list comments = df['comment_text'] start, end = gezi.get_fold(len(comments), FLAGS.threads, index) if 'tokens' in df.columns: for i in range(start, end): # if df['id'][i] == '5bbabc3b14cc1f7f': # sent = tokenizer.full_tokenize(comments[i]) # tokens_list[i] = sent.tokens # attributes_list[i] = np.reshape(np.array([list(map(float, x)) for x in sent.attributes]), -1) # poses_list[i] = sent.poses # tags_list[i] = sent.tags # ners_list[i] = sent.ners # else: tokens_list[i] = df['tokens'][i].split(' ') attributes_list[i] = df['attributes'][i].split(' ') # if len(attributes_list[i]) != len(attribute_names) * len(tokens_list[i]) or FLAGS.modify_attribute: # sent = tokenizer.tokenize(comments[i]) # attributes_list[i] = np.reshape(np.array([list(map(float, x)) for x in sent.attributes]), -1) # assert len(attributes_list[i]) == len(attribute_names) * len(tokens_list[i]), '{} {} {} {}'.format(len(attributes_list[i]) / len(attribute_names), len(tokens_list[i]), i, df['id'][i]) poses_list[i] = df['poses'][i].split(' ') tags_list[i] = df['tags'][i].split(' ') ners_list[i] = df['ners'][i].split(' ') ori_tokens_list[i] = df['ori_tokens'][i].split(' ') else: for i in tqdm(range(start, end)): # for i in range(start, end): # if i % 1000 == 0: # print(i, file=sys.stderr) if FLAGS.full_tokenizer: #if FLAGS.simple_tokenizer: sent = tokenizer.full_tokenize(comments[i], lemmatization=FLAGS.lemmatization) # else: # sent = gezi.segment.tokenize_filter_empty(comments[i]) # if FLAGS.lower: # sent.tokens = [w.lower() for w in sent.tokens] tokens_list[i] = sent.tokens ori_tokens_list[i] = sent.ori_tokens attributes_list[i] = np.reshape(np.array([list(map(float, x)) for x in sent.attributes]), -1) poses_list[i] = sent.poses tags_list[i] = sent.tags ners_list[i] = sent.ners else: sent = tokenizer.tokenize(comments[i], lemmatization=FLAGS.lemmatization) # if FLAGS.lower: # sent.tokens = [w.lower() for w in sent.tokens] tokens_list[i] = sent.tokens ori_tokens_list[i] = sent.ori_tokens #print('----------', sent.attributes) try: attributes_list[i] = np.reshape(np.array([list(map(float, x)) for x in sent.attributes]), -1) except Exception: print(sent.attributes) raise ValueError() poses_list[i] = ['NONE'] * len(tokens_list[i]) tags_list[i] = ['NONE'] * len(tokens_list[i]) ners_list[i] = ['NONE'] * len(tokens_list[i]) def run(input, count=1): global df, tokens_list, poses_list, tags_list, ners_list global attributes_list, ori_tokens_list df = pd.read_csv(input) #df = df[:100] if FLAGS.limit: df = df[:FLAGS.limit] tokens_list = man.list([None] * len(df['comment_text'])) attributes_list = man.list([None] * len(df['comment_text'])) poses_list = man.list([None] * len(df['comment_text'])) tags_list = man.list([None] * len(df['comment_text'])) ners_list = man.list([None] * len(df['comment_text'])) ori_tokens_list = man.list([None] * len(df['comment_text'])) timer = gezi.Timer('tokenize') pool = mp.Pool() pool.map(tokenize, range(FLAGS.threads)) pool.close() pool.join() #tokenize(0) timer.print_elapsed() # for context in tqdm(df['comment_text']): #context_tokens, _ = tokenizer.tokenize(context) #context_tokens = gezi.segment.tokenize_filter_empty(context) for context_tokens in tokens_list: counter.add(START_WORD, count) # tokens in one comment treat as 1 for token in set(context_tokens): if FLAGS.lower: token = token.lower() counter.add(token, count) counter.add(END_WORD, count) for context_tokens in ori_tokens_list: # tokens in one comment treat as 1 for token in set(context_tokens): for ch in token: char_counter.add(ch, count) if FLAGS.ngram_lower: token = token.lower() ngrams = gezi.get_ngrams(token, FLAGS.ngram_min, FLAGS.ngram_max) for ngram in ngrams: ngram_counter.add(ngram, count) for poses in poses_list: for pos in set(poses): pos_counter.add(pos, count) for tags in tags_list: for tag in set(tags): tag_counter.add(tag, count) for ners in ners_list: for ner in set(ners): ner_counter.add(ner, count) tokens = [' '.join(x) for x in tokens_list] attributes = [' '.join(map(str, x)) for x in attributes_list] poses = [' '.join(x) for x in poses_list] tags = [' '.join(x) for x in tags_list] ners = [' '.join(x) for x in ners_list] ori_tokens = [' '.join(x) for x in ori_tokens_list] df['tokens'] = tokens df['attributes'] = attributes # TODO change to poses.. df['poses'] = poses df['tags'] = tags df['ners'] = ners df['ori_tokens'] = ori_tokens if FLAGS.write_csv: if FLAGS.name: name = FLAGS.name else: name = 'train.csv' if 'train' in input else 'test.csv' out_csv = os.path.join(FLAGS.out_dir, name) print('save csv to', out_csv) df.to_csv(out_csv, index=False) if FLAGS.write_tokens: if FLAGS.name: name = FLAGS.name.replace('.csv', '_tokens.txt') else: name ='train_tokens.txt' if 'train' in input else 'test_tokens.txt' out_txt = os.path.join(FLAGS.out_dir, name) df.sort_values(['id'], inplace=True) df = df.reset_index(drop=True) with open(out_txt, 'w') as out: for id, comment, tokens in zip(df['id'].values, df['comment_text'].values, df['tokens'].values): print(id, comment, tokens, sep='\t', file=out) def main(_): tokenizer.init(FLAGS.tokenizer_vocab) if FLAGS.full_tokenizer: gezi.segment.init_spacy_full() os.system('mkdir -p %s' % FLAGS.out_dir) print('name', FLAGS.name, 'out_dir', FLAGS.out_dir) global counter counter = WordCounter( write_unknown=FLAGS.write_unknown, most_common=FLAGS.most_common, min_count=FLAGS.min_count) global char_counter char_counter = WordCounter( write_unknown=FLAGS.write_unknown, most_common=FLAGS.most_common, min_count=FLAGS.min_count) global ngram_counter ngram_counter = WordCounter( write_unknown=True, min_count=FLAGS.min_count) global pos_counter, tag_counter, ner_counter pos_counter = WordCounter( write_unknown=True, min_count=1) tag_counter = WordCounter( write_unknown=True, min_count=1) ner_counter = WordCounter( write_unknown=True, min_count=1) run(FLAGS.input) if FLAGS.test_input and not FLAGS.name: run(FLAGS.test_input, count=FLAGS.test_count) if not FLAGS.name: vocab_name = FLAGS.vocab_name or 'vocab' os.system('mkdir -p %s' % FLAGS.out_dir) out_txt = os.path.join(FLAGS.out_dir, '%s.txt' % vocab_name) counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'char_%s.txt' % vocab_name) char_counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'pos_vocab.txt') pos_counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'tag_vocab.txt') tag_counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'ner_vocab.txt') ner_counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'ngram_vocab.txt') if not FLAGS.max_ngrams: ngram_counter.save(out_txt) else: # if later need most 2w ngram head -200000 ngram_vocab.full.txt > ngram_vocab.txt out_full_txt = os.path.join(FLAGS.out_dir, 'ngram_vocab.full.txt') ngram_counter.save(out_full_txt) os.system('head -n %d %s > %s' % (FLAGS.max_ngrams, out_full_txt, out_txt)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/gen-vocab.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file gen-vocab.py # \author chenghuige # \date 2018-01-13 17:50:26.382970 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer("most_common", 100000000, "if > 0 then get vocab with most_common words") flags.DEFINE_integer("min_count", None, "if > 0 then cut by min_count") flags.DEFINE_integer("max_lines", 0, "") flags.DEFINE_boolean("write_unknown", True, "treat ignored words as unknow") flags.DEFINE_string("out_dir", './mount/temp/toxic/tfrecords/', "save count info to bin") flags.DEFINE_string("vocab_name", None, "") flags.DEFINE_string('input', '/home/gezi/data2/data/kaggle/toxic/train.csv', '') flags.DEFINE_string('test_input', '/home/gezi/data2/data/kaggle/toxic/test.csv', '') flags.DEFINE_integer('threads', 12, '') flags.DEFINE_string('tokenizer_vocab', '/home/gezi/data/glove/glove-vocab.txt', '') flags.DEFINE_integer('test_count', 0, '') flags.DEFINE_bool('special_tokenizer', False, '') import pandas as pd from gezi import WordCounter import json from tqdm import tqdm import gezi import tokenizer import multiprocessing as mp import six from preprocess import * assert six.PY3 counter = None char_counter = None START_WORD = '' END_WORD = '' df = None man = mp.Manager() context_tokens_list = None def tokenize(index): global context_tokens_list comments = df['comment_text'] start, end = gezi.get_fold(len(comments), FLAGS.threads, index) for i in tqdm(range(start, end), ascii=True): comment = comments[i] if FLAGS.special_tokenizer: context_tokens_list[i] = tokenizer.tokenize(comment).tokens else: if FLAGS.is_twitter: comment = glove_twitter_preprocess(comment) context_tokens_list[i] = [x.lower() for x in gezi.segment.tokenize_filter_empty(comment)] def run(input, count=1): global df, context_tokens_list df = pd.read_csv(input) #df = df[:100] context_tokens_list = man.list([None] * len(df['comment_text'])) timer = gezi.Timer('tokenize') pool = mp.Pool() pool.map(tokenize, range(FLAGS.threads)) pool.close() pool.join() timer.print_elapsed() # for context in tqdm(df['comment_text']): #context_tokens, _ = tokenizer.tokenize(context) #context_tokens = gezi.segment.tokenize_filter_empty(context) for context_tokens in context_tokens_list: counter.add(START_WORD, count) # tokens in one comment treat as 1 for token in set(context_tokens): counter.add(token, count) for ch in token: char_counter.add(ch, count) counter.add(END_WORD, count) def main(_): tokenizer.init(FLAGS.tokenizer_vocab) global counter counter = WordCounter( write_unknown=FLAGS.write_unknown, most_common=FLAGS.most_common, min_count=FLAGS.min_count) global char_counter char_counter = WordCounter( write_unknown=FLAGS.write_unknown, most_common=FLAGS.most_common, min_count=FLAGS.min_count) run(FLAGS.input) if FLAGS.test_input: run(FLAGS.test_input, count=FLAGS.test_count) vocab_name = FLAGS.vocab_name or 'vocab' os.system('mkdir -p %s' % FLAGS.out_dir) out_txt = os.path.join(FLAGS.out_dir, '%s.txt' % vocab_name) counter.save(out_txt) out_txt = os.path.join(FLAGS.out_dir, 'char_%s.txt' % vocab_name) char_counter.save(out_txt) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/gray.csv ================================================ id,comment_text,unk_ratio,toxic 6059db0ec766d4b0,YYYYYYOOOOOOOOUUUUUUUUUUUU AAAAAAAAAARRRRRRRRRRRRRRREEEEEEEEEEEEEEEEEE CCCCCCCCCCCCCCCCCCOOOOOOOOOOOOOOOLLLLLLLLLLLLO,1.0,0.491157778633 0c6091635f6830f7,IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS,1.0,0.489147737608 e069214172544dc7,HAHHAHAHHAHAHAHAHHAHAHHAHAHAHHAHAHAHHAHAAHAHAHHA COOOOOOOOOOOOOOOOOOOOOOOOOOOLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL PERSON WROTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE THISSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS,0.8,0.39375255531 2ed3ee986567da1a,= = hi to you all = = hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTToooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYoooooooooooooooooooooooooooooooooooooooooooouuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL,0.285714285714,0.385685556809 b78678ff65918e7c,PETER SYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONPETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDSPETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDSPETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDSPETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSYMONDS HOMO PETERSY,0.332191780822,0.380029391738 7f584a46d799fd3a,iiiiiiiii iiiiiiiii llllllllllllllllooooooooooooooooooooovvvvvvvvvvveeeeeeeeeeee cccccccccccccchwhhhhhhhhhhhhhhhhhhhhhhheeeeeeeeeeeeseeeeeeeeeeeeeesssss sssssss,0.571428571429,0.379487174338 e2a5d50747dd60b1,faghat in yaroo raa raa ham bara ayeh vandalism begir,0.272727272727,0.260153819117 13d142002eeef983,gyguy guyg uyg uyg uyg uyguy guyg ygy g,0.8,0.195602115613 876faabc292d23ea,""" It also says right on his talk page that he is that user . Someone asks him if he 's the one that got kicked out of Hebrew Wikipedia because he wrote about porn stars , and asked "" "" is it you that wrote to me that gilgamesh ( a sysop ) is a dirty dictator ? "" "" , to which he responds "" "" yes , it is me "" "" Copied here for posterity : : = = = אתה חכם חנוכה מהויקיפדיה בעברית?=== : זה אתה שהעיפו אותך בגלל מה שכתבת על כוכבות הפורנו ? , זה אתה מי שכתב לי ( אני עדן קוגן ) שגילגמש הוא דיקטטור מטונף ? : כן , זה אני כנראה - שים לב שפה מתייחסים אלי בכבוד : שמתי לב , בהחלט מוזר . אתה צודק , אתה יודע , גילגמש עכשיו מחק את כל התרומות שלי שעבדתי עליהם שנה שלמה , וחסם אותי למשך 24 שעות , ולדוד שי לא אכפת שגילגמש חוטא . כל מי שנמצא בויקיפדיה העברית הם חראות . """,0.386243386243,0.141481755211 ================================================ FILE: projects/kaggle/toxic/prepare/merge-2emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/glove/glove.840B.300d.txt', '') flags.DEFINE_string('emb2', None, '') flags.DEFINE_integer('min_count', -1, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): input_vocab = os.path.join(FLAGS.dir, 'vocab.full.txt') lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} embedding_dict2 = {} vec_size = FLAGS.emb_dim with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding1 vector".format(len(embedding_dict), len(ori_words))) with open(FLAGS.emb2, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict2[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding2 vector".format(len(embedding_dict2), len(ori_words))) def has_emb(word): return word in embedding_dict or word in embedding_dict2 def get_emb_(word, emb_dict): if word in emb_dict: return emb_dict[word] else: return [np.random.uniform(-0.08, 0.08) for _ in range(vec_size)] def get_emb(word): return np.array(get_emb_(word, embedding_dict) + get_emb_(word, embedding_dict2)) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size * 2)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size * 2)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if has_emb(word): emb_mat.append(get_emb(word)) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size * 2)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if has_emb(word): emb_mat.append(get_emb(word)) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size * 2)]) words.append(word) elif FLAGS.type == 'only': if has_emb(word): emb_mat.append(get_emb(word)) words.append(word) words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if has_emb(w): #print('adding....', w, word) words_set.add(w) emb_mat.append(get_emb(w)) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-charemb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/glove/glove.840B.300d-char.txt', '') flags.DEFINE_integer('min_count', -1, '') flags.DEFINE_bool('include_non_match', True, '') from tqdm import tqdm import numpy as np def main(_): input_vocab = os.path.join(FLAGS.dir, 'char_vocab.full.txt') lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = map(int, counts) ori_set = set(ori_words) embedding_dict = {} vec_size = 300 with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() word = "".join(array[0: -vec_size]) vector = list(map(float, array[-vec_size:])) if word in ori_set: embedding_dict[word] = vector #if i == 1000: # print(i) print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(' ') emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # TODO \x01 not used any more since, ignore \n .. words.append('\x01') emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if FLAGS.include_non_match and count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) out_vocab = os.path.join(FLAGS.dir, 'char_vocab.txt') with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, 'char_emb.npy') print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/glove/glove.840B.300d.txt', '') flags.DEFINE_integer('min_count', -1, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): input_vocab = os.path.join(FLAGS.dir, 'vocab.full.txt') lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} vec_size = FLAGS.emb_dim #with open(FLAGS.emb, 'r') as fh: with open(FLAGS.emb, 'r', encoding='utf-8', errors='ignore') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue word = "".join(array[0:-vec_size]) vector = list(map(float, array[-vec_size:])) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) words_set = set(words) unk_words = [] # added from v11 to let less unk for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: #print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) contains = True break if not contains: unk_words.append(word) #emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) # emb_mat is with all word (train + test) print('num in vocab words', len(words)) print('num oov words', len(unk_words)) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') # NOTICE unk vocab actually means only top words, so for train we can use # out_unk_vocab = os.path.join(FLAGS.dir, 'unk_vocab.txt') # with open(out_vocab, 'w') as out, open(out_unk_vocab, 'w') as out_unk: # for word in words: # print(word, file=out) # print(word, file=out_unk) # for word in unk_words: # print(word, file=out) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-glove.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ depreciated just use merge-emb.py """ import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('glove_emb', './mount/data/glove/glove.840B.300d.txt', '') flags.DEFINE_integer('min_count', 20, '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np def main(_): input_vocab = os.path.join(FLAGS.dir, 'vocab.full.txt') lines = open(input_vocab).readlines() ori_words_counts = [x.split('\t') for x in lines] ori_words, counts = zip(*ori_words_counts) counts = map(int, counts) ori_set = set(ori_words) embedding_dict = {} vec_size = 300 with open(FLAGS.glove_emb, 'r', encoding='utf-8') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() word = "".join(array[0: -vec_size]) vector = list(map(float, array[-vec_size:])) if word in ori_set: embedding_dict[word] = vector if i == 1000: print(i) print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, 'glove.npy') print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-ngram-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/kaggle/toxic/talk_corpus/fastText/result.3gram.5epoch/toxic.ngram', '') flags.DEFINE_integer('min_count', -1, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') #flags.DEFINE_integer('ngram_buckets', 200000, '') flags.DEFINE_string('ngram_vocab', None, '') flags.DEFINE_string('ngram_output', None, '') from tqdm import tqdm import numpy as np import gezi from gezi import Vocabulary import config def main(_): num_conflicts = 0 visited = {} visited_ngram = {} ngram_vocab_path = FLAGS.ngram_vocab or os.path.join(FLAGS.dir, 'ngram_vocab.txt') ngram_vocab = Vocabulary(ngram_vocab_path) print('ngram_vocab size', ngram_vocab.size()) print('num ngram buckets', FLAGS.ngram_buckets) if FLAGS.emb.endswith('.npy'): ngram_emb = np.load(FLAGS.emb) assert len(ngram_emb) > 100000 else: ngram_emb = [] for line in open(FLAGS.emb): ngram_emb.append([float(x) for x in line.strip().split()]) print('len ngram emb', len(ngram_emb)) emb_mat = [] vec_size = FLAGS.emb_dim # for padding zero emb_mat.append(np.array([0.] * vec_size)) # exclude first pad and last 3 unk # unk, , , sincie ngram vocab txt not include these will append for i in range(3): emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) for i in range(4, ngram_vocab.size()): ngram = ngram_vocab.key(i) ngram_hash = gezi.hash(ngram) ngram_id = ngram_hash % FLAGS.ngram_buckets if ngram_id not in visited: visited[ngram_id] = 1 visited_ngram[ngram_id] = [ngram] else: visited[ngram_id] += 1 visited_ngram[ngram_id].append(ngram) num_conflicts += 1 #print('Conflict', visited_ngram[ngram_id], 'Num conflicts', num_conflicts) emb_mat.append(ngram_emb[ngram_id]) print('Num conflicts', num_conflicts) print('len(emb_mat)', len(emb_mat)) ngram_output = FLAGS.ngram_output or 'ngram.npy' out_mat = os.path.join(FLAGS.dir, ngram_output) print('out mat', out_mat) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-word-ngram-emb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/kaggle/toxic/talk_corpus/fastText/result.3gram.5epoch/toxic.input', '') flags.DEFINE_integer('min_count', 10, '') flags.DEFINE_integer('emb_dim', 300, '') flags.DEFINE_string('out_name', 'emb.npy', '') flags.DEFINE_string('type', 'normal', '''normal try merge all in glove, and add not in glove ones which with min train count, scratch add all with min train count and try merge glove, only only merge all glove and not consider train count''') from tqdm import tqdm import numpy as np import gezi from gezi import Vocabulary import config def main(_): input_vocab = os.path.join(FLAGS.dir, 'vocab.full.txt') ft_vocab = Vocabulary(os.path.join(os.path.dirname(FLAGS.emb), 'vocab.txt'), fixed=True) lines = open(input_vocab).readlines() ori_words_counts = [x.rstrip('\n').split('\t') for x in lines] # TODO FIXME why must remove? other wise when in for word, count in zip(ori_words, counts): will ValueError: invalid literal for int() with base 10: ' ' ori_words_counts = filter(lambda x: x[0].strip(), ori_words_counts) ori_words, counts = zip(*ori_words_counts) counts = list(map(int, counts)) ori_set = set(ori_words) normed_ori_set = set([x.lower() for x in ori_set]) embedding_dict = {} ngrams = [] vec_size = FLAGS.emb_dim with open(FLAGS.emb, 'r', encoding='utf-8') as fh: #for line in tqdm(fh, total=2196017): for i, line in enumerate(fh): array = line.split() # fasttext txt has header line if len(array) < vec_size: continue vector = list(map(float, array)) if i >= ft_vocab.size(): ngrams.append(vector) continue word = ft_vocab.key(i) if word.lower() in normed_ori_set: embedding_dict[word] = vector if i % 100000 == 0: print(i) #break print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] # for padding zero emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if not '' in ori_set: emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') if not '' in ori_set: emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if FLAGS.type == 'normal': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'scratch': if count >= FLAGS.min_count: if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: #emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) emb_mat.append([np.random.uniform(-0.08, 0.08) for _ in range(vec_size)]) words.append(word) elif FLAGS.type == 'only': if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) words_set = set(words) for word, count in zip(ori_words, counts): if word not in words_set: contains = False for w in (word.lower(), word.capitalize(), word.upper()): if w in words_set: contains = True if not contains: for w in (word.lower(), word.capitalize(), word.upper()): if w in embedding_dict: print('adding....', w, word) words_set.add(w) emb_mat.append(np.array(embedding_dict[w])) words.append(w) break out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') print('out vocab size', len(words), 'ori ft vocab size', ft_vocab.size()) with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, FLAGS.out_name) emb_mat += ngrams # # check # ids = gezi.fasttext_ids('you', Vocabulary(out_vocab), FLAGS.ngram_buckets, 3, 3) # print('---------ids', ids) # vectors = [] # for id in ids: # vectors.append(emb_mat[id]) # vectors = np.stack(vectors) # print(np.mean(vectors, 0)) print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/merge-wordemb.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file merge-glove.py # \author chenghuige # \date 2018-01-15 23:52:08.616633 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('dir', './mount/temp/toxic/tfrecords/glove/', '') flags.DEFINE_string('emb', './mount/data/glove/glove.840B.300d.txt', '') flags.DEFINE_integer('min_count', 4, '') flags.DEFINE_bool('include_non_match', True, '') from tqdm import tqdm import numpy as np def main(_): input_vocab = os.path.join(FLAGS.dir, 'vocab.full.txt') lines = open(input_vocab).readlines() ori_words_counts = [x.strip().split('\t') for x in lines] ori_words, counts = zip(*ori_words_counts) counts = map(int, counts) ori_set = set(ori_words) embedding_dict = {} vec_size = 300 with open(FLAGS.emb, 'r', encoding='utf-8') as fh: for line in tqdm(fh, total=2196017): #for i, line in enumerate(fh): array = line.split() word = "".join(array[0: -vec_size]) vector = list(map(float, array[-vec_size:])) if word in ori_set: embedding_dict[word] = vector #if i == 1000: # print(i) print("{} / {} tokens have corresponding word embedding vector".format(len(embedding_dict), len(ori_words))) words = [] emb_mat = [] emb_mat.append(np.array([0.] * vec_size)) if not '' in ori_set: #change from all 0 to random normal for unk emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) words.append('') with open('/home/gezi/tmp/rare_words.txt', 'w') as rare_out: for word, count in zip(ori_words, counts): if word in embedding_dict: emb_mat.append(np.array(embedding_dict[word])) words.append(word) else: if FLAGS.include_non_match and count >= FLAGS.min_count: print('%s %d' % (word, count), file=rare_out) emb_mat.append([np.random.normal(scale=0.1) for _ in range(vec_size)]) words.append(word) out_vocab = os.path.join(FLAGS.dir, 'vocab.txt') with open(out_vocab, 'w') as out: for word in words: print(word, file=out) out_mat = os.path.join(FLAGS.dir, 'word_emb.npy') print('len(emb_mat)', len(emb_mat)) np.save(out_mat, np.array(emb_mat)) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/prepare/post-deal.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file post-deal.py # \author chenghuige # \date 2018-03-21 05:29:51.134440 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd import numpy as np white_csv = pd.read_csv(sys.argv[2]) white_ids = set(white_csv['id'].values) black_csv = pd.read_csv(sys.argv[3]) black_ids = set(black_csv['id'].values) assert len(white_ids) > len(black_ids) CLASSES = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] df = pd.read_csv(sys.argv[1]) new_scores = [] ids = df['id'].values scores = df[CLASSES].values for id, score in zip(ids, scores): score = list(score) if id in white_ids: score = np.array([x * 0.001 for x in score]) elif id in black_ids: score[0] = 1.0 score = np.array(score) new_scores.append(score) df[CLASSES] = new_scores df.to_csv(sys.argv[4], index=False) ================================================ FILE: projects/kaggle/toxic/prepare/prepare-test.sh ================================================ python3 ./gen-records.py --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/prepare-train.sh ================================================ python3 ./gen-records.py ================================================ FILE: projects/kaggle/toxic/prepare/preprocess.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file preprocess.py # \author chenghuige # \date 2018-02-25 17:17:55.001974 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_bool('is_twitter', False, '') import sys, os import re import gezi def normalize(text): text = gezi.filter_quota(text) # hack for spacy tokenzier #text = text.replace('\n', ' \x01 ') # for spacy to tokenize left |\x01| alonw text = text.replace('\n', ' NEWLINE ') #text = text.replace('''don't''', ' \x02 ') #text = text.replace('(', ' \x02 ') if FLAGS.is_twitter: text = glove_twitter_preprocess(text) return text tokens_map = { #'\x01': '', 'NEWLINE': '', '': '', '': '', #'\x02': '''don't''', #'\x02': '(' 'TWURL': '', 'TWUSER': '', 'TWHEART': '', 'TWNUMBER': '', 'TWSMILE': '', 'TWLOLFACE': '', 'TWSADFACE': '', 'TWNEUTRALFACE': '', 'TWREPEAT': '', 'TWELONG': '', } # def glove_twitter_preprocess(text): # """ # adapted from https://nlp.stanford.edu/projects/glove/preprocess-twitter.rb # """ # # Different regex parts for smiley faces # eyes = "[8:=;]" # nose = "['`\-]?" # text = re.sub("https?:* ", "", text) # text = re.sub("www.* ", "", text) # text = re.sub("\[\[User(.*)\|", '', text) # text = re.sub("<3", '', text) # text = re.sub("[-+]?[.\d]*[\d]+[:,.\d]*", "", text) # text = re.sub(eyes + nose + "[Dd)]", '', text) # text = re.sub("[(d]" + nose + eyes, '', text) # text = re.sub(eyes + nose + "p", '', text) # text = re.sub(eyes + nose + "\(", '', text) # text = re.sub("\)" + nose + eyes, '', text) # text = re.sub(eyes + nose + "[/|l*]", '', text) # text = re.sub("/", " / ", text) # text = re.sub("[-+]?[.\d]*[\d]+[:,.\d]*", "", text) # text = re.sub("([!]){2,}", "! ", text) # text = re.sub("([?]){2,}", "? ", text) # text = re.sub("([.]){2,}", ". ", text) # pattern = re.compile(r"(.)\1{2,}") # text = pattern.sub(r"\1" + " ", text) # return text def glove_twitter_preprocess(text): """ adapted from https://nlp.stanford.edu/projects/glove/preprocess-twitter.rb """ # Different regex parts for smiley faces eyes = "[8:=;]" nose = "['`\-]?" text = re.sub("https?:* ", " TWURL ", text) text = re.sub("www.* ", " TWURL ", text) text = re.sub("\[\[User(.*)\|", ' TWUSER ', text) text = re.sub("<3", ' TWHEART ', text) text = re.sub("[-+]?[.\d]*[\d]+[:,.\d]*", " TWNUMBER ", text) text = re.sub(eyes + nose + "[Dd)]", ' TWSMILE ', text) text = re.sub("[(d]" + nose + eyes, ' SMILE ', text) text = re.sub(eyes + nose + "p", ' TWLOLFACE ', text) text = re.sub(eyes + nose + "\(", ' TWSADFACE ', text) text = re.sub("\)" + nose + eyes, ' TWSADFACE ', text) text = re.sub(eyes + nose + "[/|l*]", ' TWNEUTRALFACE ', text) text = re.sub("/", " / ", text) text = re.sub("[-+]?[.\d]*[\d]+[:,.\d]*", " TWNUMBER ", text) text = re.sub("([!]){2,}", "! TWREPEAT ", text) text = re.sub("([?]){2,}", "? TWREPEAT ", text) text = re.sub("([.]){2,}", ". TWREPEAT ", text) pattern = re.compile(r"(.)\1{2,}") text = pattern.sub(r"\1" + " TWELONG ", text) return text ================================================ FILE: projects/kaggle/toxic/prepare/readme ================================================ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --input ~/temp/toxic/v9/tfrecords/glove.bak/train.csv --test_input ~/temp/toxic/v9/tfrecords/glove.bak/test.csv for fast update attributes improve from 0.9833 to 0.9854 after preprocess try to simple split or fix word (ni*gger to nigger) sees ./tokenizer-v2.py now from v13 change to use toxic word dict f**in will not norm to fin TODO for v14 also use text blob try to error correcting for example peopel to people notice NO UNK! v14 no unk seems not work well, chang back to use.. unk unk problem seems can be handel with simple rule based method since many other language useless char is non toxic v15 back to min count 10 ================================================ FILE: projects/kaggle/toxic/prepare/run-gloveonly.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/tfrecords/glove-only/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/tfrecords/glove-only/ --type only python3 ./gen-records.py --vocab ./mount/temp/toxic/tfrecords/glove-only/vocab.txt python3 ./gen-records.py --vocab ./mount/temp/toxic/tfrecords/glove-only/vocab.txt --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-scratch.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/tfrecords/glove-scratch/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/tfrecords/glove-scratch/ --type scratch python3 ./gen-records.py --vocab ./mount/temp/toxic/tfrecords/glove-scratch/vocab.txt ================================================ FILE: projects/kaggle/toxic/prepare/run-v1.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v1/tfrecords/glove/ --vocab_name vocab.full --min_count -1 python3 merge-glove.py \ --dir ./mount/temp/toxic/v1/tfrecords/glove/ \ --include_non_match=0 python3 ./gen-records.py --vocab ./mount/temp/toxic/v1/tfrecords/glove/vocab.txt ================================================ FILE: projects/kaggle/toxic/prepare/run-v10-fasttext.sh ================================================ dir=./mount/temp/toxic/v10/tfrecords/fasttext/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt ================================================ FILE: projects/kaggle/toxic/prepare/run-v10-fttalk.sh ================================================ dir=./mount/temp/toxic/v10/tfrecords/fttalk/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v10.sh ================================================ dir=./mount/temp/toxic/v10/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-fasttext-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/fasttext.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-fasttext.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/fasttext/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-ftngram.sh ================================================ dir=./mount/temp/toxic/v11/tfrecords/ftngram/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.3gram.5epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-word-ngram-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.input python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --ftngram=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --ftngram=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-fttalk.sh ================================================ dir=./mount/temp/toxic/v11/tfrecords/fttalk/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-fttalk2.sh ================================================ dir=./mount/temp/toxic/v11/tfrecords/fttalk2/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.2epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-fttalk5.sh ================================================ dir=./mount/temp/toxic/v11/tfrecords/fttalk5/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-glove-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/glove.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-glove.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/ python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-glovetalk.sh ================================================ dir=./mount/temp/toxic/v11/tfrecords/glovetalk/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/glove/talk/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/vectors.txt python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-glovetwitter.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/glove.tw/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/glove/glove-twitter-vocab.txt --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/glove/glove.twitter.27B.200d.txt --emb_dim 200 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/glove/glove-twitter-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-lexvec.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/lexvec/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/kaggle/toxic/lexvec-vocab.txt --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/kaggle/toxic/lexvec.commoncrawl.300d.W.pos.vectors python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/kaggle/toxic/lexvec-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-lexvecc.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/lexvecc/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/kaggle/toxic/lexvec.commoncrawl.300d.W+C.pos.vectors python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11-ngram-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/glove.ngram.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=0 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=0 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=0 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=0 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=0 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v11.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v11/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python ./merge-ngram-emb.py --dir $dir python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v13.sh ================================================ dir=./mount/temp/toxic/v13/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v14.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v14/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 python3 ./merge-emb.py --dir $dir --out_name glove.npy python ./merge-ngram-emb.py --dir $dir python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-clean-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove.clean.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --max_ngrams=20000 --lower=1 --ngram_lower=1 --input ./mount/data/kaggle/toxic/train_cleaned.csv --test_input ./mount/data/kaggle/toxic/test_cleaned.csv python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count=10 #python ./merge-ngram-emb.py --dir $dir python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-clean.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove.clean/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --max_ngrams=20000 --lower=0 --ngram_lower=0 --input ./mount/data/kaggle/toxic/train_cleaned.csv --test_input ./mount/data/kaggle/toxic/test_cleaned.csv python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count=10 #python ./merge-ngram-emb.py --dir $dir python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=0 --ngram_lower=0 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=0 --ngram_lower=0 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=0 --ngram_lower=0 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=0 --ngram_lower=0 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fasttext-lower-allngram.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/fasttext.lower.allngram/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=2000000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fasttext-lower-lemma.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/fasttext.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fasttext-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/fasttext.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fasttext.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/fasttext/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir $dir --min_count 10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fttalk3gram-lower.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/fttalk3gram.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fttalk3gramall-lower.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/fttalk3gramall.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 --max_ngrams=2000000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fttalk5-lower.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/fttalk5.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch.lower/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-fttalk5.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/fttalk5/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-glove-lower-allngram.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove.lower.allngram/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=2000000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-glove-lower-lem.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove.lower.lemma/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 --lemmatization=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-glove-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-gloveft-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/gloveft.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb2 ./mount/data/fasttext/crawl-300d-2M.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-glovetalk-lower.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/glovetalk.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/glove.lower/talk/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --max_ngrams=20000 --lower=1 --ngram_lower=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/vectors.txt python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-glovetalk.sh ================================================ dir=./mount/temp/toxic/v15/tfrecords/glovetalk/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/glove/talk/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/vectors.txt python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-lexvecc-clean.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/lexvecc.clean/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 --input ./mount/data/kaggle/toxic/train_cleaned.csv --test_input ./mount/data/kaggle/toxic/test_cleaned.csv python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/kaggle/toxic/lexvec.commoncrawl.300d.W+C.pos.vectors python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15-lexvecc.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/lexvecc/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/kaggle/toxic/lexvec.commoncrawl.300d.W+C.pos.vectors python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v15.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v15/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count=10 #python ./merge-ngram-emb.py --dir $dir python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-fasttext-lower-lemma.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/fasttext.lower.lemma/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 --lemmatization=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-fasttext-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/fasttext.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 --weight=0.1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/hate_label.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name hate.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/hate.csv --mode_ hate --lower=1 --ngram_lower=1 --weight=0.1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-fasttext.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/fasttext/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir $dir --min_count 10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --weight=0.1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/hate_label.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name hate.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/hate.csv --mode_ hate --lower=1 --ngram_lower=1 --weight=0.1 input=/home/gezi/data/kaggle/toxic/white/white_label.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name white.csv --input=$input --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/white.csv --mode_ white --lower=1 --ngram_lower=1 --weight=0.1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-ftfttalk-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/ftfttalk.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch.lower/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/fasttext/crawl-300d-2M.vec --emb2 $vocab_dir/toxic.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/train.sents.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name train.sents.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.sents.csv --lower=1 --ngram_lower=1 --has_dup=1 input=/home/gezi/data/kaggle/toxic/test.sents.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name test.sents.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.sents.csv --lower=1 --ngram_lower=1 --has_dup=1 #input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv #python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 #python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-fttalk5-lower.sh ================================================ dir=./mount/temp/toxic/v16/tfrecords/fttalk5.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch.lower/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb $vocab_dir/toxic.vec python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch.lower/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --tokenizer_vocab $vocab --lower=1 --ngram_lower=1 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-glove-lower-lemma.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/glove.lower.lemma/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 --lemmatization=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-glove-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/glove.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=30000 --ngram_min=2 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 --ngram_min=2 --char_limit=32 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 --ngram_min=2 --char_limit=32 #input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv #python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 #python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-gloveft-lower-lemma.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/gloveft.lower.lemma/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 --lemmatization=1 python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb2 ./mount/data/fasttext/crawl-300d-2M.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-gloveft-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/gloveft.lower/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb2 ./mount/data/fasttext/crawl-300d-2M.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-gloveglovetalk-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/ggtalk.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/glove/talk/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb2 $vocab_dir/vectors.txt #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 #input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv #python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 #python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-lexveccfttalk-lower.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/lexveccfttalk.lower/ vocab_dir=./mount/data/kaggle/toxic/talk_corpus/fastText/result.5epoch.lower/ vocab=$vocab_dir/vocab.txt python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=20000 --tokenizer_vocab ./mount/data/kaggle/toxic/lexvecc-vocab.txt python3 ./merge-2emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/kaggle/toxic/lexvec.commoncrawl.300d.W+C.pos.vectors --emb2 $vocab_dir/toxic.vec #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=10 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 #input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv #python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 #python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v16-lm.sh ================================================ export FAST=1 dir=./mount/temp/toxic/v16/tfrecords/lm/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --lower=1 --ngram_lower=1 --max_ngrams=30000 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 #python ./merge-ngram-emb.py --dir $dir --emb ./mount/data/kaggle/toxic/talk_corpus/fastText/result.lower.3gram.5epoch/toxic.ngram python3 ./merge-charemb.py --dir $dir --min_count=-1 cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv --lower=1 --ngram_lower=1 --char_limit=1 python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv --lower=1 --ngram_lower=1 --char_limit=1 #input=/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/data/nontoxic.csv #python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --name nontoxic.csv --input=$input --lower=1 --ngram_lower=1 #python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/nontoxic.csv --mode_ nontoxic --lower=1 --ngram_lower=1 export FAST=0 ================================================ FILE: projects/kaggle/toxic/prepare/run-v3-limit1000.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v3/tfrecords/glove-1000/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/v3/tfrecords/glove-1000/ python3 ./merge-charemb.py --dir ./mount/temp/toxic/v3/tfrecords/glove-1000/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove-1000/vocab.txt --comment_limt 1000 python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove-1000/vocab.txt --comment_limt 1000 --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v3-limit400.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v3/tfrecords/glove-400/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/v3/tfrecords/glove-400/ python3 ./merge-charemb.py --dir ./mount/temp/toxic/v3/tfrecords/glove-400/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove-400/vocab.txt --comment_limit 400 python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove-400/vocab.txt --comment_limit 400 --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v3.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v3/tfrecords/glove/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/v3/tfrecords/glove/ python3 ./merge-charemb.py --dir ./mount/temp/toxic/v3/tfrecords/glove/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove/vocab.txt python3 ./gen-records.py --vocab ./mount/temp/toxic/v3/tfrecords/glove/vocab.txt --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v4-fasttext.sh ================================================ #mkdir -p ./mount/temp/toxic/v4/tfrecords/fasttext/ #cp ./mount/temp/toxic/v4/tfrecords/glove/*vocab*.txt ./mount/temp/toxic/v4/tfrecords/fasttext python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v4/tfrecords/fasttext --vocab_name vocab.full --min_count -1 --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./merge-emb.py --dir ./mount/temp/toxic/v4/tfrecords/fasttext/ --emb ./mount/data/fasttext/crawl-300d-2M.vec python3 ./merge-charemb.py --dir ./mount/temp/toxic/v4/tfrecords/fasttext/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/fasttext/vocab.txt --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/fasttext/vocab.txt --input ~/data/kaggle/toxic/test.csv --tokenizer_vocab ./mount/data/fasttext/fasttext-vocab.txt ================================================ FILE: projects/kaggle/toxic/prepare/run-v4-limmit400.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v4/tfrecords/glove-400/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/v4/tfrecords/glove-400/ python3 ./merge-charemb.py --dir ./mount/temp/toxic/v4/tfrecords/glove-400/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/glove-400/vocab.txt --comment_limit 400 python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/glove-400/vocab.txt --comment_limit 400 --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v4.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v4/tfrecords/glove/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py --dir ./mount/temp/toxic/v4/tfrecords/glove/ python3 ./merge-charemb.py --dir ./mount/temp/toxic/v4/tfrecords/glove/ python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/glove/vocab.txt python3 ./gen-records.py --vocab ./mount/temp/toxic/v4/tfrecords/glove/vocab.txt --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v7.sh ================================================ dir=./mount/temp/toxic/v7/tfrecords/glove/ #python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/v7/tfrecords/glove/ --vocab_name vocab.full --min_count -1 #python3 ./merge-glove.py --dir ./mount/temp/toxic/v7/tfrecords/glove/ #python3 ./merge-charemb.py --dir ./mount/temp/toxic/v7/tfrecords/glove/ cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project #python3 ./gen-records.py --vocab ./mount/temp/toxic/v7/tfrecords/glove/vocab.txt #python3 ./gen-records.py --vocab ./mount/temp/toxic/v7/tfrecords/glove/vocab.txt --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v8.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v9-full.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove.full/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=1 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v9-glovetwitter-full.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove.twitter.full/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=1 --is_twitter=1 --tokenizer_vocab ./mount/data/glove/glove.twitter.27B.200d.txt python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/glove/glove.twitter.27B.200d.txt --emb_dim 200 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v9-glovetwitter.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove.twitter/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 --is_twitter=1 --tokenizer_vocab ./mount/data/glove/glove.twitter.27B.200d.txt python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 --emb ./mount/data/glove/glove.twitter.27B.200d.txt --emb_dim 200 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v9-noparse.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove/ python3 ./gen-vocab.py --out_dir $dir --vocab_name vocab.full --min_count -1 python3 ./merge-emb.py --dir $dir --out_name glove.npy python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records.py --vocab $dir/vocab.txt python3 ./gen-records.py --vocab $dir/vocab.txt --input /home/gezi/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run-v9.sh ================================================ dir=./mount/temp/toxic/v9/tfrecords/glove/ python3 ./gen-vocab-parse.py --out_dir $dir --vocab_name vocab.full --min_count -1 --full_tokenizer=0 python3 ./merge-emb.py --dir $dir --out_name glove.npy --min_count 10 python3 ./merge-charemb.py --dir $dir cat $dir/vocab.txt | vocab2project.py > $dir/vocab.project python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/train.csv python3 ./gen-records-parse.py --vocab $dir/vocab.txt --input $dir/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/run.sh ================================================ python3 ./gen-vocab.py --out_dir ./mount/temp/toxic/tfrecords/glove/ --vocab_name vocab.full --min_count -1 python3 ./merge-glove.py python3 ./merge-charemb.py python3 ./gen-records.py python3 ./gen-records.py --input ~/data/kaggle/toxic/test.csv ================================================ FILE: projects/kaggle/toxic/prepare/test-tokenize.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test-tokenize.py # \author chenghuige # \date 2018-02-14 23:49:07.815632 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tokenizer import gezi def tokenize(text): print(text) results = tokenizer.tokenize(text, True) print(results) #results = tokenizer.full_tokenize(text) #print(results) #print(list(zip(results.tokens, results.poses, results.tags, results.ners))) #print(len(results)) tokenize('motherfuck') # TODO fuck with * edit distance ? tokenize('fu*k') tokenize('fc*k') tokenize('fuck') tokenize('fu**ck') tokenize('f**in') tokenize('f*cked') tokenize('mother\n\nfuck') tokenize('SECURITYFUCK') tokenize('WikiNazis') tokenize('WikiNazis.') tokenize('Small|penis/////Small|penis/////') tokenize('Shut up, sit down. Nig(g)er') tokenize('you\'re so idi.o.t, so st.u.p.id guy, fu.c.k.i.n.g portuguese, i ha.te the portugueses') tokenize('''\nOf course a true Dub will say 'depaaarted' or, more likely ""f**in' gone"".''') tokenize('F u c k i n g c u n t s get a life you sad f u c k i n g gits.') tokenize('f u c k y o u a s u a r e a b i t c h a s s n i g g e r') tokenize('T w a t, are you f u c k i n g having a laugh, what kind of thick s h i t, thinks that william shakespeare, my ancestor!, died in. 1616, R.I.P bro,i find that highly rude that you are criticising my ancetors death date......') tokenize('{{unblock|Please unblock me, my friend was drunk and f*cked up several articles. I would like this account back. Thank you.') tokenize('chtippDick \n\nYou. You boy. Youuuuuu. Terisoaio! Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah.') #tokenize('''"== I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f == #I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! == August 2010 == I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! == August 2010 == I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel it needs to be corrected. Have a nice day and f u c k o f f ! ! I will edit whatever I want if I feel" #''') # #tokenize('''Request to Unblock #I began writing the following statement (excepting its two postscripts) before I was blocked. I suspect that User: AuburnPilot had me blocked, in order to prevent me from complaining to administrators about his misconduct. Although I was directed to request an unblock of User: Physicq210, who had blocked me, requesting such of the latter would require that I censor myself, and write as though User: Physicq210 had acted in good faith, and was one of the good guys. That would be surreal, and would give User: Physicq210 a moral legitimacy belied by his actions. And so, the following request for unblocking is directed at any administrator BUT User: Physicq210, but since I’m not a devious sort, I have nothing against the latter reading this. Indeed, I want User: Physicq210 to read it. For if I can be banned from Wikipedia for standing up to censors, then it is vastly preferable to go down fighting, than to go down the long dark road of self-abnegation and self-censorship, including the use of bad English. After all, if I wanted to be a lackey, I could go to graduate school. # #WIKI Administrators’ Notice Board Incidents #http://en.wikipedia.org/wiki/Wikipedia:Administrators%27_noticeboard/Incidents # #User: AuburnPilot # #A few days ago, User: AuburnPilot began stalking me, checking wherever I had made edits, and going to the articles in question and vandalizing them. He or she has been manipulating Wikipedia rules as cover for what is clearly political censorship. User: AuburnPilot cannot even stand for Wikipedia readers to find out about factual material that upsets his political applecart through footnotes. Zero tolerance! # #He claims of any source he politically dislikes, that it is either “spam” or a “blog” (or “POV,” another favorite dodge for those at Wikipedia seeking to censor those who fail to conform to their own POV), even though the one source is a previously published, classic magazine article otherwise unavailable on the Web (http://geocities.com/nstix/waronpolice.html), which the author has seen fit to publish on his Web site, and the other source is the longest, most thorough exposé yet published on the Duke rape hoax (http://vdare.com/stix/070113_duke.htm). # #Note that I am not even talking about censoring writing within articles, since I hadn’t done any writing on the articles in question: Crystal Gail Mangum, Michael Nifong, 2006 Duke University lacrosse team scandal and Racial profiling. #I’ve been involved in edit wars before, though I have never been the aggressor, and have never initiated an elective edit war, though given the self-assurance that aggressors such as User: AuburnPilot exude, perhaps I ought to reconsider that position. It seems that aggressors rule here. # #The reason I am making a formal complaint is that User: AuburnPilot has tonight upped the ante, threatening to have me banned #(http://en.wikipedia.org/w/index.php?title=User_talk:70.23.199.239&redirect;=no), if I do not surrender to his censorship. Should you find for me, please serve this individual with the wikiquivalent of a cease-and-desist order. Should you, however, find for the censor, please provide an Index of banned publications and a list of official wikicensors. # #P.S. January 19, 2007 115A EST. Since beginning this complaint, I see that User: AuburnPilot has in fact succeeded at getting a crony, User: Physicq210, to block me, thus not only getting administrative support in censoring me, but preventing me from responding to his thuggery. (And no, I am not going to use cutesy, euphemistic language. If I were into such deception, I would have become a liar, er, lawyer, and would be worthless as an encyclopedist.) And I was unable to e-mail User: Physicq210 because I am not logged in and “You must be logged in and have a valid authenticated e-mail address in your preferences to send e-mail to other users.” (http://en.wikipedia.org/wiki/Special:Emailuser/Physicq210) # #If this isn’t cyber-Stalinism, I don’t know what is! So, let me get this straight. Stalking and censoring an editor while using the equivalent of smiley faces (User: AuburnPilot’s penchant for saying “Thank you” after vandalizing one’s links) is “civil,” but complaining about such abuse counts as “spam, disruption, incivility, and personal attacks.” If that is verily so, then 2 + 2 = 5. # # #P.P.S The message here says that I was “temporarily blocked from editing Wikipedia as a result of your disruptive edits.” What the heck is that supposed to mean? For restoring footnotes and links that User: AuburnPilot had vandalized? If that constitutes “disruptive edits,” then you’ve utterly given up on honest English and all human decency. Sorry, but I don’t have any sympathy for the Devil.''') tokenize('''I don't want''') tokenize('''I DON'T want''') tokenize('''i'm''') tokenize('''I'm''') tokenize('''I'M''') tokenize('''You're bitch''') print(tokenizer.has('''DONT'T''')) print(tokenizer.has('''don't''')) print(tokenizer.has('''i'm''')) print(tokenizer.has('''I'm''')) print(tokenizer.has('''I'M''')) tokenize('he INSISTS upon keeping Boston(as the center of the world. Clearly biased) in no matter what') print(gezi.segment.tokenize_filter_empty('he INSISTS upon keeping Boston(as the center of the world. Clearly biased) in no matter what')) tokenize('''19 August 2011 (UTC)\nLook who is talking. Legilas is the user who's got Autopatrolled rights although he has 16 articles on the list.''') tokenize('Hi\n\nwhy did you give User:Barneca a kindness star.') tokenize('proud to be indonesial') tokenize('SECURITYFUCK dimension dimenison really fuck you') tokenize('Uh I hate to break it to you but Jusdafax is not an administrator') tokenize('I love beijing university. Mike is a Chinese boy. You are a ditry Frenchman') tokenize('Apple is looking at buying U.K. startup for $1 billion') ================================================ FILE: projects/kaggle/toxic/prepare/test-tokenize2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test-tokenize.py # \author chenghuige # \date 2018-02-14 23:49:07.815632 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tokenizer import gezi def tokenize(text): print(text) #results = tokenizer.tokenize(text) results = tokenizer.full_tokenize(text) print(results) print(gezi.segment.tokenize_filter_empty(text)) tokenize('{{unblock|Please') tokenize('actually his given name Cao(操) didnot mean fuck, the exact one is 肏.(Kèyì)') tokenize('''19 August 2011 (UTC)\nLook who is talking. Legilas is the user who's got Autopatrolled rights although he has 16 articles on the list.''') tokenize('Hi\n\nwhy did you give User:Barneca a kindness star.') tokenize('proud to be indonesial') ================================================ FILE: projects/kaggle/toxic/prepare/test-tokenize3.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test-tokenize.py # \author chenghuige # \date 2018-02-14 23:49:07.815632 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tokenizer import gezi def tokenize(text): print(text) results, infos = tokenizer.tokenize(text) print(results) print(list(zip(results, infos))) print(len(results)) results = tokenizer.full_tokenize(text) print(list(zip(results.tokens, results.ners))) # doc = gezi.doc(text) # #print(dir(doc)) # for token in doc: # #print(dir(token)) # assert token.pos_ # #print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_, # # token.shape_, token.is_alpha, token.is_stop) # print(token.text, token.pos, token.pos_, token.tag, token.tag_) # print(token.prefix_, token.suffix_) # #print(token.vector) # print(token.rank) # print('name entities') # for ent in doc.ents: # #print(dir(ent)) # print(ent.text, ent.start_char, ent.end_char, ent.label_) tokenize('SECURITYFUCK dimension dimenison really fuck you') tokenize('Uh I hate to break it to you but Jusdafax is not an administrator') tokenize('I love beijing university. Mike is a Chinese boy. You are a ditry Frenchman') tokenize('Apple is looking at buying U.K. startup for $1 billion') tokenize('Both articles should be merged. (Operibus anteire)') tokenize('You have no right to tell people to die in a fire. Just because that IP address is being used for vandilism does not mean you can talk to people like that. You are in fact a bigger loser than the person who you block.",1,0,0,0,1,0,"Dear Mokele , You have no right to tell people to die in a fire . Just because that IP address is being used for vandilism does not mean you can talk to people like that . You are in fact a bigger loser than the person who you block .') ================================================ FILE: projects/kaggle/toxic/prepare/test-tokenize4.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test-tokenize.py # \author chenghuige # \date 2018-02-14 23:49:07.815632 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tokenizer import gezi def tokenize(text): print(text) results, infos = tokenizer.tokenize(text) print(results) print(list(zip(results, infos))) print(len(results)) #results = tokenizer.full_tokenize(text) #print(results.tokens) #print(len(results.tokens)) #print(list(zip(results.tokens, results.poses))) #print(list(zip(results.ori_tokens, results.poses))) #print(list(zip(results.tokens, results.tags))) #print(list(zip(results.tokens, results.ners))) ## print(list(zip(results.tokens, results.attributes))) # doc = gezi.doc(text) # #print(dir(doc)) # for token in doc: # #print(dir(token)) # assert token.pos_ # #print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_, # # token.shape_, token.is_alpha, token.is_stop) # print(token.text, token.pos, token.pos_, token.tag, token.tag_) # print(token.prefix_, token.suffix_) # #print(token.vector) # print(token.rank) # print('name entities') # for ent in doc.ents: # #print(dir(ent)) # print(ent.text, ent.start_char, ent.end_char, ent.label_) tokenize('''ok im talking to you as a wikipedian so please forget from this conflict and focused on the facts ok. the herut was never israeli minister therefor she can not be the major party ok. and about her policy i see you know hebrew so read this המפלגה אימצה קו שנחשב אז ימני קיצוני, ובין היתר תבעה את החזרה מההסכמה לתוכנית החלוקה. סיסמתה תאמה את קו אצ""""ל, """"שתי גדות לירדן, זו שלנו זו גם כן"""" http://he.wikipedia.org/wiki/%D7%9E%D7%A0%D7%97%D7%9D_%D7%91%D7%92%D7%99%D7%9F for god sake this is wikipedia is mean to bring people facts we should not enter this conflict here ok there is forums for that. i won't even argue with you about this conflict if you want you can be a member here https://www.facebook.com/JewishVoiceforPeace?fref=ts and write your opinion wiki is not the right place ''') tokenize('chink fag ? 216.145.245.93') tokenize('''peoples cock'n'balls.''') tokenize('Thanks for the barnstar, I greatly appreciate it. BW21.lackWatch21') tokenize('Credibility_node_ue') tokenize('oh thats right.......it doesnt') tokenize('Could you please stop your disruptive edits on Muamer Tanković.') tokenize('Images in the societal attitudes article should be about societal attutudes.') tokenize('95.43.48.134 12:59, 30 January 2008 {UTC}') tokenize('fu**ck') tokenize('Ni(gge)rMan') tokenize('Hi Edivorce, thank you for your supportive comment.') tokenize('discussion pages using four tildes (~~~~)') tokenize('actually his given name Cao(操) didnot mean fuck, the exact one is 肏.(Kèyì)') tokenize('FREEDOM!FREEDOM!FREEDOM!FREEDOM!FREEDOM!') ================================================ FILE: projects/kaggle/toxic/prepare/test-tokenize5.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test-tokenize.py # \author chenghuige # \date 2018-02-14 23:49:07.815632 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tokenizer import gezi def tokenize(text): print(text) results = tokenizer.tokenize(text) print(results) # print(list(zip(results, infos))) print(len(results)) print(gezi.segment.tokenize(text)) print([x.text for x in gezi.doc(text)]) results = tokenizer.full_tokenize(text) print(results.tokens) print(len(results.tokens)) # print(list(zip(results.tokens, results.poses))) # print(list(zip(results.ori_tokens, results.poses))) # print(list(zip(results.tokens, results.tags))) # print(list(zip(results.tokens, results.ners))) # print(list(zip(results.tokens, results.attributes))) #doc = gezi.doc(text) ##print(dir(doc)) #for token in doc: # #print(dir(token)) # assert token.pos_ # #print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_, # # token.shape_, token.is_alpha, token.is_stop) # print(token.text, token.pos, token.pos_, token.tag, token.tag_) # print(token.prefix_, token.suffix_) # #print(token.vector) # print(token.rank) #print('name entities') #for ent in doc.ents: # #print(dir(ent)) # print(ent.text, ent.start_char, ent.end_char, ent.label_) tokenize('Дреновени.') import pandas as pd df = pd.read_csv('/home/gezi/data/kaggle/toxic/train.csv') id = '7015247faa5027d8' id = '00510c3d06745849' id = '0091798f05a311af' comment = df.loc[df.id == id]['comment_text'].item() #comment = df.loc[df.id == '037cf9d6a84df11a']['comment_text'].item() #comment = df.loc[df.id == '0057b7710cb5ebb2']['comment_text'].item() tokenize(comment) tokenize('ANTI GREEK NATIONALIS -WIKIPEDIA \n\nHi Alexikoua,\nYous should not vandalise Wikipedia by editing false information.You may be a chauvinist but you can not edit false information on Wikipedia.There is nowhere 6 percent greeks in Albania.http://www.instat.gov.al/media/178070/rezultatet_kryesore_t__censusit_t__popullsis__dhe_banesave_2011_n__shqip_ri.pdf') #comment = df.loc[df.id == '037cf9d6a84df11a']['comment_text'].item() #tokenize(comment) # #comment = df.loc[df.id == '0057b7710cb5ebb2']['comment_text'].item() #tokenize(comment) # #tokenize('''ok im talking to you as a wikipedian so please forget from this conflict and focused on the facts ok. the herut was never israeli minister therefor she can not be the major party ok. and about her policy i see you know hebrew so read this המפלגה אימצה קו שנחשב אז ימני קיצוני, ובין היתר תבעה את החזרה מההסכמה לתוכנית החלוקה. סיסמתה תאמה את קו אצ""""ל, """"שתי גדות לירדן, זו שלנו זו גם כן"""" http://he.wikipedia.org/wiki/%D7%9E%D7%A0%D7%97%D7%9D_%D7%91%D7%92%D7%99%D7%9F for god sake this is wikipedia is mean to bring people facts we should not enter this conflict here ok there is forums for that. i won't even argue with you about this conflict if you want you can be a member here https://www.facebook.com/JewishVoiceforPeace?fref=ts and write your opinion wiki is not the right place #''') #tokenize('chink fag ? 216.145.245.93') #tokenize('''peoples cock'n'balls.''') # tokenize('Thanks for the barnstar, I greatly appreciate it. BW21.lackWatch21') # tokenize('Credibility_node_ue') # tokenize('oh thats right.......it doesnt') # tokenize('Could you please stop your disruptive edits on Muamer Tanković.') # tokenize('Images in the societal attitudes article should be about societal attutudes.') # tokenize('95.43.48.134 12:59, 30 January 2008 {UTC}') # tokenize('fu**ck') # tokenize('Ni(gge)rMan') # tokenize('Hi Edivorce, thank you for your supportive comment.') # tokenize('discussion pages using four tildes (~~~~)') # tokenize('actually his given name Cao(操) didnot mean fuck, the exact one is 肏.(Kèyì)') # tokenize('FREEDOM!FREEDOM!FREEDOM!FREEDOM!FREEDOM!') ================================================ FILE: projects/kaggle/toxic/prepare/tokenize-corpus.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file tokenize-corpus.py # \author chenghuige # \date 2018-03-02 22:42:15.222451 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import multiprocessing as mp import gezi import glob def tokenize(file_): with open(file_.replace('chunk', 'tokens'), 'w') as out: first = True for line in open(file_): if first: first = False continue l = line.rstrip().split('\t') comment = l[1].replace('REDIRECT Talk:', '').replace('NEWLINE:*', '').replace('NEWLINE*', ' ').replace('NEWLINE', ' ').replace('TAB', ' ').replace('"', ' ') comment = comment.lstrip(': ') tokens = gezi.segment.tokenize_filter_empty(comment) print(' '.join(tokens), file=out) #files = glob.glob('/home/gezi/data/kaggle/toxic/talk_corpus/comments*/chunk*') files = glob.glob('/home/gezi/data/kaggle/toxic/talk_corpus/comments_user_2015/chunk*') pool = mp.Pool() pool.map(tokenize, files) pool.close() pool.join() ================================================ FILE: projects/kaggle/toxic/prepare/tokenizer-v2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file normalize.py # \author chenghuige # \date 2018-02-13 19:51:49.324339 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys, os from collections import namedtuple import gezi import re import badwords badwords_dict = badwords.get_bad_words() # TODO... try: from preprocess import * except Exception: from prepare.preprocess import * ip_pattern = r"(\d+\.\d+\.\d+\.\d+)" http_pattern = r"(https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]" # !NOTICE can not set file name to tokenize, will confict with python3 some tokenize.py vocab = None # this vocab is original calculated word freq vocab just using like spacy without any further split or other operations train_vocab = None train_vocab_path = '/home/gezi/data/kaggle/toxic/ori_vocab.txt' MIN_COUNT = 20 SimpleTokens = namedtuple('SimpleTokens', ['tokens', 'ori_tokens', 'attributes']) Tokens = namedtuple('Tokens', ['tokens', 'attributes', 'ori_tokens', 'poses', 'tags', 'ners', ]) def init(vocab_path='/home/gezi/data/glove/glove-vocab.txt'): global vocab, train_vocab if vocab: return vocab, train_vocab vocab = set() for line in open(vocab_path, encoding='utf-8', errors='ignore'): vocab.add(line.rstrip('\n').split('\t')[0]) # train_vocab = {} # for line in open(train_vocab_path): # word, count = line.rstrip('\n').split('\t') # train_vocab[word] = int(count) return vocab, train_vocab # def train_dict_has(word): # for w in (word, word.lower(), word.capitalize(), word.upper()): # if w in train_vocab and train_vocab[w] > MIN_COUNT: # return True # return False def dict_has(word): for w in (word, word.lower(), word.capitalize(), word.upper()): if w in vocab: return True return False def has(word): if not word.strip(): return False #return train_dict_has(word) and dict_has(word) return dict_has(word) # problem here is will also remove some other language word like '你' TODO def en_filter(token): en_results = [] results = [] ens = [] non_ens = [] for x in token: #if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z': if non_ens: results.append(''.join(non_ens)) non_ens = [] ens.append(x) else: if ens: results.append(''.join(ens)) en_results.append(results[-1]) ens = [] non_ens.append(x) if ens: results.append(''.join(ens)) en_results.append(results[-1]) if non_ens: results.append(''.join(non_ens)) return results, en_results # def can_split(w1, w2): # if train_dict_has(w1): # if train_dict_has(w2) or dict_has(w2): # return True # else: # return False # else: # if dict_has(w1) and train_dict_has(w2): # return True # else: # return False def can_split(w1, w2): return dict_has(w1) and dict_has(w2) def try_split(token): if len(token) < 6 or has(token): return [token] start = 3 end = len(token) - 2 idx = int(len(token) / 2) for i in range(idx, end): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] for i in reversed(range(start, idx)): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] return [token] attribute_names = ['len', 'deform', 'lower', 'upper', 'has_star', 'has_dot', 'has_bracket', 'not_en'] attribute_default_values = [0.] * len(attribute_names) Attributes = namedtuple('Attributes', attribute_names) assert(len(attribute_names) == len(attribute_default_values)) special_tokens = set(['', '', '']) toxic_words = set([ 'fuck', 'fucking', 'fuckin', 'cunt', 'cunts', 'dick', 'penis', 'bitch', 'nigger', 'die', 'kill']) def is_toxic(word): return word in toxic_words def maybe_toxic(word): for w in toxic_words: if w in word: return True return False def get_token_len(token): if token in special_tokens: return 1 return len(token) def is_en(token): for x in token: if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': return True return False def get_attr(token, deform=False, has_star=False, has_dot=False, has_bracket=False, not_en=False): return [get_token_len(token), deform, token not in special_tokens and token.islower(), \ token not in special_tokens and token.isupper(), \ has_star, has_dot, has_bracket, not is_en(token)] def tokenize(text): init() text = normalize(text) tokens = gezi.segment.tokenize_filter_empty(text) results = [] attributes = [] ori_tokens = [] def append(token, ori_token, attr=None): results.append(token) ori_tokens.append(ori_token) attributes.append(attr or get_attr(token)) for token in tokens: ori_token = token #print('results', results) if token in tokens_map: token = tokens_map[token] append(token, ori_token) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' if has(token): append(token, ori_token) else: tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('----...', tokens, en_token, en_tokens) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector if has(en_token): has_star = '*' in token has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token attr = [len(token), True, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False] append(en_token, ori_token, attr) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, ori_token, get_attr(token, True)) else: append(token, ori_token) else: for token in token_results: append(token, ori_token, get_attr(token, True)) if not results: token = 'ok' append(token, token) assert len(results) == len(attributes) return SimpleTokens(*([results, ori_tokens, attributes])) # TODO merge code def full_tokenize(text): init() # can cause http.. as PERSON text = normalize(text) doc = gezi.doc(text) results = [] attributes = [] poses = [] tags = [] ners = [] ori_tokens = [] def append(token, ori_token, ner='NONE', attr=None): results.append(token) poses.append(ori_token.pos_) tags.append(ori_token.tag_) attributes.append(attr or get_attr(token)) ners.append(ner) ori_tokens.append(ori_token.text.replace(' ', '').replace('NEWLINE', '\x01')) ner_idx = 0 ner_list = [(x.text, x.label_) for x in doc.ents] ner_ok = True for x, y in ner_list: if 'NEWLINE' in x: ner_ok = False break #print('-----ner list', ner_list, ner_ok) if not ner_ok: ner_list = [] for token_ in doc: token = token_.text # NOTICE! filtered empty text, if not filter later you must not split by ' ', here already remove will ok if not token.strip(): continue if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' # TODO better.. ner = 'NONE' for i in range(ner_idx, len(ner_list)): if token == ner_list[i][0] or (len(token) > 2 and token in ner_list[i][0]): ner = ner_list[i][1] ner_idx = i + 1 break #if ner != 'None': # print(token, ner) if token in tokens_map: token = tokens_map[token] append(token, token_, ner) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' #if has(token) or (ner != 'NONE' and not maybe_toxic(token)): if has(token): #if has(token) or ner == 'PERSON': append(token, token_, ner) else: #print('token', token) tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('!!!', tokens, en_tokens, en_token) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector #if has(en_token) or (ner != 'NONE' and not maybe_toxic(token)): if has(en_token): #if has(en_token) or ner == 'PERSON': has_star = '*' in token has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token attr = [len(token), True, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False] append(en_token, token_, ner, attr) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, token_, ner, get_attr(token, True)) else: append(token, token_, ner) else: for token in token_results: append(token, token_, ner, get_attr(token, True)) if not results: return full_tokenize('ok') assert len(results) == len(attributes) == len(ori_tokens) == len(poses) == len(tags) == len(ners) return Tokens(*([results, attributes, ori_tokens, poses, tags, ners])) ================================================ FILE: projects/kaggle/toxic/prepare/tokenizer-v3.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file normalize.py # \author chenghuige # \date 2018-02-13 19:51:49.324339 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys, os from collections import namedtuple import gezi import re try: import toxic_words except Exception: import prepare.toxic_words # TODO... try: from preprocess import * except Exception: from prepare.preprocess import * ip_pattern = r"(\d+\.\d+\.\d+\.\d+)" http_pattern = r"(https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]" # !NOTICE can not set file name to tokenize, will confict with python3 some tokenize.py vocab = None # this vocab is original calculated word freq vocab just using like spacy without any further split or other operations train_vocab = None train_vocab_path = '/home/gezi/data/kaggle/toxic/ori_vocab.txt' MIN_COUNT = 20 SimpleTokens = namedtuple('SimpleTokens', ['tokens', 'ori_tokens', 'attributes']) Tokens = namedtuple('Tokens', ['tokens', 'attributes', 'ori_tokens', 'poses', 'tags', 'ners', ]) def init(vocab_path='/home/gezi/data/glove/glove-vocab.txt'): global vocab, train_vocab if vocab: return vocab, train_vocab vocab = set() for line in open(vocab_path, encoding='utf-8', errors='ignore'): vocab.add(line.rstrip('\n').split('\t')[0]) # train_vocab = {} # for line in open(train_vocab_path): # word, count = line.rstrip('\n').split('\t') # train_vocab[word] = int(count) return vocab, train_vocab # def train_dict_has(word): # for w in (word, word.lower(), word.capitalize(), word.upper()): # if w in train_vocab and train_vocab[w] > MIN_COUNT: # return True # return False def dict_has(word): for w in (word, word.lower(), word.capitalize(), word.upper()): if w in vocab: return True return False def has(word): if not word.strip(): return False #return train_dict_has(word) and dict_has(word) return dict_has(word) # problem here is will also remove some other language word like '你' TODO def en_filter(token): en_results = [] results = [] ens = [] non_ens = [] for x in token: #if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z': if non_ens: results.append(''.join(non_ens)) non_ens = [] ens.append(x) else: if ens: results.append(''.join(ens)) en_results.append(results[-1]) ens = [] non_ens.append(x) if ens: results.append(''.join(ens)) en_results.append(results[-1]) if non_ens: results.append(''.join(non_ens)) return results, en_results # def can_split(w1, w2): # if train_dict_has(w1): # if train_dict_has(w2) or dict_has(w2): # return True # else: # return False # else: # if dict_has(w1) and train_dict_has(w2): # return True # else: # return False def can_split(w1, w2): return dict_has(w1) and dict_has(w2) or is_toxic(w1) or is_toxic(w2) def try_split(token): if len(token) < 6 or has(token): return [token] start = 3 end = len(token) - 2 idx = int(len(token) / 2) for i in range(idx, end): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] for i in reversed(range(start, idx)): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] return [token] attribute_names = ['len', 'deform', 'lower', 'upper', 'has_star', 'has_dot', 'has_bracket', 'not_en'] attribute_default_values = [0.] * len(attribute_names) Attributes = namedtuple('Attributes', attribute_names) assert(len(attribute_names) == len(attribute_default_values)) special_tokens = set(['', '', '']) # toxic_words = set([ # 'fuck', 'fucking', 'fuckin', # 'cunt', 'cunts', # 'dick', 'penis', 'bitch', 'nigger', 'die', 'kill']) def is_toxic(word): for w in (word, word.lower(), word.capitalize(), word.upper()): if w in toxic_words.get_toxic_words(): return True return False # def maybe_toxic(word): # for w in toxic_words: # if w in word: # return True # return False def get_token_len(token): if token in special_tokens: return 1 return len(token) def is_en(token): for x in token: if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': return True return False def get_attr(token, deform=False, has_star=False, has_dot=False, has_bracket=False, not_en=False): return [get_token_len(token), deform, token not in special_tokens and token.islower(), \ token not in special_tokens and token.isupper(), \ has_star, has_dot, has_bracket, not is_en(token)] def tokenize(text): init() text = normalize(text) tokens = gezi.segment.tokenize_filter_empty(text) results = [] attributes = [] ori_tokens = [] def append(token, ori_token, attr=None): results.append(token) ori_tokens.append(ori_token) attributes.append(attr or get_attr(token)) for token in tokens: ori_token = token #print('results', results) if token in tokens_map: token = tokens_map[token] append(token, ori_token) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' if has(token): append(token, ori_token) else: tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('----...', tokens, en_token, en_tokens) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector if has(en_token): has_star = '*' in token has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token is_deform = is_toxic(en_token) if is_deform: print(en_token, token, ori_token) attr = [len(token), is_deform, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False] if is_deform: append(en_token, ori_token, attr) else: append(token, ori_token, attr) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, ori_token, get_attr(token, True)) else: append(token, ori_token) else: for token in token_results: append(token, ori_token, get_attr(token, True)) if not results: token = 'ok' append(token, token) assert len(results) == len(attributes) return SimpleTokens(*([results, ori_tokens, attributes])) # TODO merge code def full_tokenize(text): init() # can cause http.. as PERSON text = normalize(text) doc = gezi.doc(text) results = [] attributes = [] poses = [] tags = [] ners = [] ori_tokens = [] def append(token, ori_token, ner='NONE', attr=None): results.append(token) poses.append(ori_token.pos_) tags.append(ori_token.tag_) attributes.append(attr or get_attr(token)) ners.append(ner) ori_tokens.append(ori_token.text.replace(' ', '').replace('NEWLINE', '\x01')) ner_idx = 0 ner_list = [(x.text, x.label_) for x in doc.ents] ner_ok = True for x, y in ner_list: if 'NEWLINE' in x: ner_ok = False break #print('-----ner list', ner_list, ner_ok) if not ner_ok: ner_list = [] for token_ in doc: token = token_.text # NOTICE! filtered empty text, if not filter later you must not split by ' ', here already remove will ok if not token.strip(): continue if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' # TODO better.. ner = 'NONE' for i in range(ner_idx, len(ner_list)): if token == ner_list[i][0] or (len(token) > 2 and token in ner_list[i][0]): ner = ner_list[i][1] ner_idx = i + 1 break #if ner != 'None': # print(token, ner) if token in tokens_map: token = tokens_map[token] append(token, token_, ner) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' #if has(token) or (ner != 'NONE' and not maybe_toxic(token)): if has(token): #if has(token) or ner == 'PERSON': append(token, token_, ner) else: #print('token', token) tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('!!!', tokens, en_tokens, en_token) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector #if has(en_token) or (ner != 'NONE' and not maybe_toxic(token)): if has(en_token): #if has(en_token) or ner == 'PERSON': has_star = '*' in token has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token is_deform = is_toxic(en_token) attr = [len(token), is_deform, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False] if is_deform: append(en_token, token_, ner, attr) else: append(token, token_, ner, attr) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, token_, ner, get_attr(token, True)) else: append(token, token_, ner) else: for token in token_results: append(token, token_, ner, get_attr(token, True)) if not results: return full_tokenize('ok') assert len(results) == len(attributes) == len(ori_tokens) == len(poses) == len(tags) == len(ners) return Tokens(*([results, attributes, ori_tokens, poses, tags, ners])) ================================================ FILE: projects/kaggle/toxic/prepare/tokenizer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file normalize.py # \author chenghuige # \date 2018-02-13 19:51:49.324339 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys, os from collections import namedtuple import gezi import re try: import toxic_words except Exception: import prepare.toxic_words # TODO... try: from preprocess import * except Exception: from prepare.preprocess import * try: from spacy.lemmatizer import Lemmatizer from spacy.lang.en import LEMMA_INDEX, LEMMA_EXC, LEMMA_RULES lemmatizer = Lemmatizer(LEMMA_INDEX, LEMMA_EXC, LEMMA_RULES) except Exception: pass ip_pattern = r"(\d+\.\d+\.\d+\.\d+)" http_pattern = r"(https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]" # !NOTICE can not set file name to tokenize, will confict with python3 some tokenize.py vocab = None # this vocab is original calculated word freq vocab just using like spacy without any further split or other operations train_vocab = None train_vocab_path = '/home/gezi/data/kaggle/toxic/ori_vocab.txt' MIN_COUNT = 20 SimpleTokens = namedtuple('SimpleTokens', ['tokens', 'ori_tokens', 'attributes']) Tokens = namedtuple('Tokens', ['tokens', 'attributes', 'ori_tokens', 'poses', 'tags', 'ners', ]) def init(vocab_path='/home/gezi/data/glove/glove-vocab.txt'): global vocab, train_vocab if vocab: return vocab, train_vocab vocab = set() for line in open(vocab_path, encoding='utf-8', errors='ignore'): if not line.strip(): vocab.add(' ') else: vocab.add(line.rstrip('\n').split()[0]) # train_vocab = {} # for line in open(train_vocab_path): # word, count = line.rstrip('\n').split('\t') # train_vocab[word] = int(count) return vocab, train_vocab # def train_dict_has(word): # for w in (word, word.lower(), word.capitalize(), word.upper()): # if w in train_vocab and train_vocab[w] > MIN_COUNT: # return True # return False def dict_has(word): for w in (word, word.lower(), word.capitalize(), word.upper()): if w in vocab: return True return False def has(word): if not word.strip(): return False #return train_dict_has(word) and dict_has(word) return dict_has(word) # problem here is will also remove some other language word like '你' TODO def en_filter(token): en_results = [] results = [] ens = [] non_ens = [] for x in token: #if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z': if non_ens: results.append(''.join(non_ens)) non_ens = [] ens.append(x) else: if ens: results.append(''.join(ens)) en_results.append(results[-1]) ens = [] non_ens.append(x) if ens: results.append(''.join(ens)) en_results.append(results[-1]) if non_ens: results.append(''.join(non_ens)) return results, en_results # def can_split(w1, w2): # if train_dict_has(w1): # if train_dict_has(w2) or dict_has(w2): # return True # else: # return False # else: # if dict_has(w1) and train_dict_has(w2): # return True # else: # return False def can_split(w1, w2): return dict_has(w1) and dict_has(w2) or is_toxic(w1) or is_toxic(w2) def try_split(token): if len(token) < 6 or has(token): return [token] start = 3 end = len(token) - 2 idx = int(len(token) / 2) for i in range(idx, end): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] for i in reversed(range(start, idx)): w1 = token[:i] w2 = token[i:] #print('w1:', w1, 'w2:', w2, can_split(w1, w2), train_dict_has(w1), dict_has(w1), train_dict_has(w2), dict_has(w2)) if can_split(w1, w2): return [w1, '', w2] return [token] # TODO tokens info also use embedding better ? # for v15 or before if 'TOXIC_VERSION' in os.environ and int(os.environ['TOXIC_VERSION']) <= 15: attribute_names = ['len', 'deform', 'lower', 'upper', 'has_star', 'has_dot', 'has_bracket', 'not_en'] # for v16 or after else: attribute_names = ['len', 'deform', 'lower', 'upper', 'has_star', 'has_dot', 'has_bracket', 'not_en', 'lem_non', 'lem_verb'] attribute_default_values = [0.] * len(attribute_names) Attributes = namedtuple('Attributes', attribute_names) assert(len(attribute_names) == len(attribute_default_values)) special_tokens = set(['', '', '']) # toxic_words = set([ # 'fuck', 'fucking', 'fuckin', # 'cunt', 'cunts', # 'dick', 'penis', 'bitch', 'nigger', 'die', 'kill']) def is_toxic(word): for w in (word, word.lower(), word.capitalize(), word.upper()): if w in toxic_words.get_toxic_words(): return True return False # def maybe_toxic(word): # for w in toxic_words: # if w in word: # return True # return False def get_token_len(token): if token in special_tokens: return 1 return len(token) def is_en(token): for x in token: if x >= 'a' and x <= 'z' or x >= 'A' and x <= 'Z' or x >= '0' and x <= '9': return True return False # https://www.kaggle.com/fizzbuzz/lemmatization-pooled-gru-on-preprocessed-dataset # well this not good as Apples might turn to apple not affect much I think # but might try pos tag one def get_lemma(token): lem_non = False lem_verb = False lemmas = lemmatizer(token, u'NOUN') if lemmas[0] != token.lower(): token = lemmas[0] lem_non = True return token, lem_non, lem_verb lemmas = lemmatizer(token, u'VERB') if lemmas[0] != token.lower(): token = lemmas[0] lem_verb = True return token, lem_non, lem_verb return token, lem_non, lem_verb def get_attr(token, deform=False, has_star=False, has_dot=False, has_bracket=False, not_en=False, lem_non=False, lem_verb=False): return [get_token_len(token), deform, token not in special_tokens and token.islower(), \ token not in special_tokens and token.isupper(), \ has_star, has_dot, has_bracket, not is_en(token), \ lem_non, lem_verb] def try_correct_toxic(token): return token, False # TODO textblob too slow # if 'FAST' in os.environ and os.environ['FAST'] == '1': # return token, False # from textblob import Word # word = Word(token) # l = word.spellcheck() # w, prob = l[0] # if prob >= 0.9 and is_toxic(w): # #if token[0].lower() == w[0].lower() or prob == 1.: # if token[0].lower() == w[0].lower(): # if token != w: # print('----', token, w, prob) # return w, True # return token, False def star_inside(word): if len(word) < 3: return False return '*' in word[1:-1] # if to lower lower it before using tokenize def tokenize(text, lemmatization=False): init() try: text = normalize(text) except Exception: text = 'ok' tokens = gezi.segment.tokenize_filter_empty(text) results = [] attributes = [] ori_tokens = [] def append(token, ori_token, lem_non=False, lem_verb=False, attr=None): results.append(token) ori_tokens.append(ori_token) attributes.append(attr or get_attr(token, has_star=star_inside(ori_token), lem_non=lem_non, lem_verb=lem_verb)) for token in tokens: ori_token = token #print('results', results) if token in tokens_map: token = tokens_map[token] append(token, ori_token) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' lem_token, lem_non, lem_verb = get_lemma(token) # NOTICE if lemmatization then to lower if lemmatization: token = lem_token if has(token): append(token, ori_token, lem_non, lem_verb) else: tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('----...', tokens, en_token, en_tokens) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector en_token, spell_error = try_correct_toxic(en_token) if has(en_token): #has_star = '*' in token # only f**in not condider *good* has_star = star_inside(token) has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token #is_deform = is_toxic(en_token) attr = [len(token), has_star, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False, lem_non, lem_verb] #if is_deform: # TODO how to jude for badwords if en_token is bad words may be fuking also not in toxic dict if not has_star or spell_error or is_toxic(en_token) or len(en_token) > 3: final_token = en_token else: final_token = token #final_token = en_token append(final_token, ori_token, attr=attr) #print('----', ori_token, final_token) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, ori_token, attr=get_attr(token, True, lem_non=lem_non, lem_verb=lem_verb)) else: append(token, ori_token, lem_non, lem_verb) else: for token in token_results: append(token, ori_token, attr=get_attr(token, True, lem_non=lem_non, lem_verb=lem_verb)) if not results: token = 'ok' append(token, token) assert len(results) == len(attributes) return SimpleTokens(*([results, ori_tokens, attributes])) # TODO merge code # TODO not suppor lem right now def full_tokenize(text, lemmatization=False): init() # can cause http.. as PERSON try: text = normalize(text) except Exception: text = 'ok' doc = gezi.doc(text) results = [] attributes = [] poses = [] tags = [] ners = [] ori_tokens = [] def append(token, ori_token, ner='NONE', attr=None, lem_non=False, lem_verb=False): results.append(token) poses.append(ori_token.pos_) tags.append(ori_token.tag_) attributes.append(attr or get_attr(token, has_star=star_inside(ori_token), lem_non=lem_non, lem_verb=lem_verb)) ners.append(ner) ori_tokens.append(ori_token.text.replace(' ', '').replace('NEWLINE', '\x01')) ner_idx = 0 ner_list = [(x.text, x.label_) for x in doc.ents] ner_ok = True for x, y in ner_list: if 'NEWLINE' in x: ner_ok = False break #print('-----ner list', ner_list, ner_ok) if not ner_ok: ner_list = [] for token_ in doc: token = token_.text # NOTICE! filtered empty text, if not filter later you must not split by ' ', here already remove will ok if not token.strip(): continue if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' lem_token, lem_non, lem_verb = get_lemma(token) # NOTICE if lemmatization then to lower if lemmatization: token = lem_token # TODO better.. ner = 'NONE' for i in range(ner_idx, len(ner_list)): if token == ner_list[i][0] or (len(token) > 2 and token in ner_list[i][0]): ner = ner_list[i][1] ner_idx = i + 1 break #if ner != 'None': # print(token, ner) if token in tokens_map: token = tokens_map[token] append(token, token_, ner) else: if FLAGS.is_twitter: token = token.lower() else: if re.match(ip_pattern, token): token = '' # NOTICE! if http hurt perf, remove! if re.match(http_pattern, token): token = '' #if has(token) or (ner != 'NONE' and not maybe_toxic(token)): if has(token): #if has(token) or ner == 'PERSON': append(token, token_, ner, lem_non=lem_non, lem_verb=lem_verb) else: #print('token', token) tokens, en_tokens = en_filter(token) tokens = [x for x in tokens if x.strip()] en_token = ''.join(en_tokens) #print('!!!', tokens, en_tokens, en_token) # Nig(g)er -> Nigger but lose some info might just 'Nig', '', 'g', '', 'er' ? or mark as deformed word! TODO add to word vector #if has(en_token) or (ner != 'NONE' and not maybe_toxic(token)): en_token, spell_error = try_correct_toxic(en_token) if has(en_token): #if has(en_token) or ner == 'PERSON': #has_star = '*' in token # only f**in not condider *good* has_star = star_inside(token) has_dot = '.' in token has_bracket = '(' in token or ')' in token or '[' in token or ']' in token or '(' in token or ')' in token #is_deform = is_toxic(en_token) attr = [len(token), has_star, en_token.islower(), en_token.isupper(), has_star, has_dot, has_bracket, False, lem_non, lem_verb] #if is_deform: if not has_star or spell_error or is_toxic(en_token) or len(en_token) > 3: final_token = en_token else: final_token = token append(final_token, ori_token, attr) else: token_results = try_split(en_token) if len(token_results) == 1: token_results = [] for token in en_tokens: #print('----', token) token_results += try_split(token) token_results += [''] if token_results: del token_results[-1] for token in token_results: append(token, token_, ner, get_attr(token, True, lem_non=lem_non, lem_verb=lem_verb)) else: append(token, token_, ner, lem_non=lem_non, lem_verb=lem_verb) else: for token in token_results: append(token, token_, ner, get_attr(token, True, lem_non=lem_non, lem_verb=lem_verb)) if not results: return full_tokenize('ok') assert len(results) == len(attributes) == len(ori_tokens) == len(poses) == len(tags) == len(ners) return Tokens(*([results, attributes, ori_tokens, poses, tags, ners])) ================================================ FILE: projects/kaggle/toxic/prepare/toxic_words.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file badwords.py # \author chenghuige # \date 2018-03-08 15:57:34.430100 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import pandas as pd # import melt # logging = melt.logging import six #assert six.PY3 # https://www.freewebheaders.com/full-list-of-bad-words-banned-by-google/ google_banned_words_file = '/home/gezi/data/kaggle/toxic/full-list-of-bad-words-banned-by-google-txt-file_2013_11_26_04_53_31_867.txt' # https://github.com/t-davidson/hate-speech-and-offensive-language/tree/master/lexicons hate_words_file = '/home/gezi/data/kaggle/toxic/hate-speech-and-offensive-language-master/lexicons/hatebase_dict.csv' toxic_words = None def get_toxic_words(): global toxic_words if toxic_words is None: toxic_words = set() # google banned for line in open(google_banned_words_file, encoding='utf-8', errors='ignore'): toxic_words.add(line.strip()) #logging.info('google len(toxic_words):', len(toxic_words)) df = pd.read_csv(hate_words_file) l = df.values l = [x[0].strip(',').strip("'") for x in l] for word in l: toxic_words.add(word) #logging.info('add hate:', len(toxic_words)) return toxic_words if __name__ == '__main__': l#ogging.set_logging_path('~/tmp') toxic_words = get_toxic_words() print(toxic_words) ================================================ FILE: projects/kaggle/toxic/prepare/white.csv ================================================ id,comment_text,unk_ratio,toxic 6961adcd517353fb,= = hitler butt is till alive = = klsfabjkfabjzbjbfj xNbfck aanm dfc sjkgrycbdufwdhhthfjbtqehjhwjkrfhruiifhuierwegjfuyweuiahefkjhwrhqwouirgeriugyfugqejgyudbeqyjgrffbqyuagqrygfdhagdsyugrfkbsarhhtfjnjskkhukgjfnjkdsktfbjkdwsbukgbfnsdbkfjbnjksbutfbkjsdbufjbfjdsbujv jfhuibvnjdsfhdguvindjhguvkjdsbjgvadhsbgkj,0.277777777778,0.765154006621 65377ec9d837c9bd,GRHJGFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF s,0.75,0.751244031114 4149ce460f20cae2,bdsklfhnsdjfndjfhsluefhluhseuifehuindu nfds gdgdbsflbef weUNffnenf fnuwibfs heh UIe hufhwerhiuhf heuih efwuilfhuwebvihwea uhwfueh fuhbeifuhoewuhbaehwrla hebuawioehrweuiiiiiiiiiiiiiiiiiiiiiiiwwwwwwwwwwwwwwwwwwwwwwwwwwwuuuuuuuuuuuuuuuuuuuuuuuuuuuhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhbb Stupids ha ha ha ha ha ha ha ha haha Insert non - formatted text herejbndjnsdkfbuilsdfdfsfdssdgksdgsayugfdyuksgf wygfyugugre gtg fdg dfg dfgz ri glouilrd do n't be stupids and read this ha ha ha ha ha ha ha handxh fgih rhiosgerntsoeitugr zhriogpdgr,0.3,0.740003168081 8e18d6bc585e3de9,ME IS AN DUMMY ! ! ! ! DLSKFJALSDK FJL ; ASFJK SDNMKLVFJ AKL FJDSASKLDJFLASDKFJ DSLK FFFFFFFFFFFFFFIIIIIIIIIIIIIIIIISSSSSSSSSSSSSSSHHHHHHHHHHHHHHHHHH,0.368421052632,0.734876840565 82552fe97ea38b0f,HELP ! ! ! ! ! grammer is for losers FGJHDFHYTUJERJHTNY YTUJREFGYDRHGGV CHUBJHVG CVNB B VHGHFJXJHGSBN VXGF,0.315789473684,0.721405526958 440760d37f743ba2,STFYU STFU SFTU SFTU SFTU,0.8,0.662093207734 ca2d2f5476711fe4,""" Precisely one half h ur * Zh qi n 該 gue … where uq stairs a door slammed . A child 's 聲音v零冰*- undoubtedly Jennys shrieked . ( 们 always act uq * Zh qi n dinner parties . 무엇 是 其 ? 办 们 些방법样 sense 荙 tensions involved ? ) Anne shut 荙 s 氐 esc alat fracas 出 氐 她 心神. 后 dou * 那 工 she did n't 腰 以 botch 荙 job 现. She cut 와 laid 荙 second sl 上 禢 s bed 氐 garnish . ( Perfect . ) 则*th3n * , mov 她 eyes 背 以 荙 cutt board , she saw 荙 tiny crumb 那 詀 unobtrusively 來 loose 从 荙 second sl She pressed 她 lips together 와 pos ied 荙 kne 为 荙 third cut . 她 tongue tled , though , 와 她 mouth agan * filled 同 saliva . ( Do n't even 想 靠 其 , Anne Louise Archer . 禢 's 不 a legitimate taste . 虲 知 there 's 无 correct 荙 season 在 本 stage . 甫 leave 其. ) 她 hands trembled 作蓙 she d 荙 third sl 上 禢 s plate 와 found 那 a second crumb 詀 appeared 上 荙 cutt board . A crash ( where uq stairs ) rattled 荙 ows . 와 则*th3n * came s 氐 Jenny cry ( Goddam 其 , Jenny , cry 甫 makes 其 worse . Wo n't 虲 永 学习 ? dou * those A 's 仔 Xu xi o skool * , yet 还 she tortures herself 所 needlessly ... ) Anne cut 荙 f urth sl 와 wrapped 荙 loaf without lookng * 在 荙 crumbs ( 髧 则*th3n * cheated 莜 lickng * 她 fers ) . "" "" s 無 吃 chocolate , s 無 吃 chocolate , "" "" Dickie taunted 仔 s "" "" 虲 mised d 给 me a taste ! "" "" Jenny sobbed . "" "" 虲 mised , Dickie . 您 所 mean . 您 such a pig . 视 방법样 fat 虲 存. 방법样 可 虲 吃 chocolate 如 那 什么时 您 所 fat ? "" "" Though dizzied 莜 荙 violent rush 氐 blood 以 她 头頭 , Anne bounded 为 荙 stairs . ( Always 荙 物 事 , always always always . God m 所 sick 氐 其. ) Predictably 们 settled 成 a contest 氐 outshout one another 's taunt litanies . ( Jenny : "" "" Dickie 是 a pig , Dickie 是 a pig ... "" "" 와 Dickie : "" "" s 無 吃 chocolate , s 無 吃 chocolate ... "" "") "" "" 那 's enough ! "" "" Anne bell wed 作蓙 她 腳*føøt * touched 荙 顶 step . Round 荙 corner , she caught Dickie wav 份 eight - ounce bar 氐 chocolate under Jenny 's nose . "" "" rich * Alan Martin ! "" "" Anne quivered 同 barely suq pressed rage . "" "" 방법样 多 s 卣 余 told 虲 不 以 tease 台 sister 同 饭 ? "" "" Both 氐 them stopped 亓 ss 와 stared 在 她. "" "" 虲 mised , "" "" Jenny said 仔 a v * 所 小 와 forlorn 那 Anne k she 詀 realized ny * chance 氐 gett a taste 詀 vanished . "" "" Dickie , 卣 虲 been giv 台 sister 饭 ? "" "" Anne grabbed 厥 arm 와 shook him . "" "" Answer me ! 卣 虲 ? "" "" Dickie 's lwer lip pushed 出 ; 厥 eyes defied 她. "" "" 余 無 使 她 control herself , "" "" 盉 said . "" "" 什么时 she pesters me 如 那 , 무엇 可 余 办 ? She keeps c dou me a pig , Mom , 哪 甫 is n't fair . 禢 's 不 me 谁 受 a defective 代谢 ! "" "" Anne sw dou owed . "" "" 赴 以 台 room , Dickie . 哪里 ll stay 为 荙 夜. "" "" She snatched 荙 chocolate bar 出 氐 厥 hand . "" "" 와 without dinner . 와 什么时 虲 启 gett hungry 虲 想 靠 무엇 台 sister musst * feel 如 什么时 虲 tease 她 靠 饭. "" "" "" "" Aw , Mom , "" "" Dickie whined , fidget under 她 grip . "" "" 虲 知 ve 弄 以 吃 ! 甫 因為 虲 do n't 卣 a 好 代谢 沒 * desnt * mean 余 do n't . 禢 's 不 fair ! "" "" ( Fair ! 可 任何@ny*事 以 办 同 代谢 와 饭 乃 fair ? ) Anne marched him 以 厥 room 와 locked him 仔. "" "" 와 면 余 ch 虲 yell 以 台 sister tonight even once , there 'll 乃 无 更 candy 禍 冰 cream 为 a 月 , young 男 , "" "" she warned him thrugh * 荙 door 와 则*th3n * turned 上 Jenny , 谁 stood lean aganst 荙 墙*wa ! ! * 同 她 fers 仔 她 mouth . "" "" 作蓙 为 虲 , young lady . 甫 무엇 办 虲 想 虲 were do , begg him 为 chocolate ? "" "" Jenny began 以 哭. "" "" Jenner Joan Martin 虲 g t * those fers 出 氐 台 mouth ! "" "" Anne grabbed 她 daughter 's wrist 와 pulled 其 away 从 她 面. "" "" 禢 's 不 fair , "" "" Jenny said 以 荙 floor . She sw dou owed 硬固*h@rd * , 则*th3n * l ted 她 tear - swollen eyes 以 Anne 's 面. "" "" 盉 's tons fatter 比 me . 盉 应 乃 荙 one 不 dou owed 以 吃 饭 , Mom . one c dou s me skinny - bones . 们 使 fuun * 氐 me 在 Xu xi o skool * cuz 氐 吾 tooth pck * legs . "" "" 她 hands bdo ued 成 fists 와 beat aganst 荙 墙*wa ! ! * behind 她. "" "" 禢 's 不 fair , Mom . 吾 代谢 是 太 okay ! "" "" ( Philip 是 右. m go 以 卣 以 取*tak3 * 她 以 a therapist . 本 envy prblem * 是 completely 出 氐 control . She 应 卣 been past dou * 本 莜 现 , she 应 久长 ago 卣 accepted 荙 physiological dfer ence btween * boys 와 s . Yet 这里 she 是 在 荙 age 氐 eight , 还 fight 其 ... ) Anne sighed . "" "" 방법样 多 s 卣 余 told 虲 , Jenny , 禢 's 不 무엇 台 代谢 是 现 , 髧 무엇 其 将 乃 后 puberty . 其 沒 * desnt * matter 방법样 skinny 虲 存 现. 虲 可能 还 g t * fat . 哪 是 焉什么 虲 卣 以 develop 荙 右 habits 从 荙 启. "" "" She 詀 ed 所 硬固*h@rd * , she 詀 been 所 careful 同 Jenny , never once giv 仔 以 荙 tem pta 以 disobey 医生 's orders , she 詀 been determined 以 留 Jenny 从 荙 狱 she herself 詀 詀 以 endure 因為 她 mother 詀 不 只 breast - fed 她 , 髧 詀 sneaked 她 snacks 와 tastes 와 s even ( 什么时 她 father 詀 been 出 氐 镇*tøwn * ) meals dou * thrugh * childhood , uq * 以 puberty , dou * 因為 she 詀 been such a skinny child ( "" "" anorectic - lookng * , "" "" accord 以 她 mother , us one 氐 荙 terms common 在 荙 时 氐 她 own childhood ) . "" "" 视 , Jenny , ゑ do n't 卣 时 以 talk 现 , 荙 guests 将 乃 这里 ny * second 와 ve loads 氐 s 以 办 以 g t * ready . "" "" She bent 와 kissed Jenny 's fore 와 stroked 她 soft , fair hair . "" "" 余 腰 虲 以 mise me 虲 wo n't 取*tak3 * ny * 更 tastes 从 Dickie . 盉 只 does 其 以 tor * 虲. "" "" ( 와 bably 以 mail 她. ) "" "" 将 虲 mise me , Jenny . "" "" Jenny 's eyes brimmed 同 tears . "" "" Red ouy , Mom , "" "" she whispered , "" "" 其 is n't fair ! 余 do n't 腰 以 乃 a 女 ! "" "" Anne sw dou owed aganst 荙 lump ris 仔 她 throat . 余 do n't 腰 以 乃 a 女 : Jenny 会 卣 以 见 a therapist , 荙 envy was eat 她 uq * , she was 甫 太",0.342087984242,0.656930099683 7622d37b9d06eb3f,"dfdfjdhjd erj gfkjdlj gd gjide gkilojkdrj gkd gjxd jgkl jdgkl jdr klh jdh klj dfh klj hl jklh mjdklhjkld jdljh kld hjd hjd jios jzkkl n jkldzx hjhid hjde hjzd hjmmhiohimmkl nkl b cvcv Sweeds suck . WHA : TIT O : SLKgjsdb kljsgckl nhju oklgssssssssssssssssssssssssssssssssssssbvc , md JA JA JA JA JA JA JA JA JA JA JA JA JA JA JA JA",0.397260273973,0.641200518762 153a3328cb564fea,"= = dhfgudhgos = = ggfryfuwfgsdhusfsydfsudygfxhgfdgfsydgfsudhgtyetryegffydfgsjdhgdjhfgsjdfyejsdhgjhdgyedgfshdggfyefgsy dfydf sdfsdf sdfsd fsdfsdgf sdg dfsg sdf f f f f f fs sd sd gd g dg ff gd s f sd df g g dg das g sd s sd f f s f d d sdf sdfs sd dffvdvxvxvvvvvcvcvfjksfgItalic textvdgfsfsdgdddagvdcfvbvdgfsdvhscgcvdzvcvhxdhgvdhvgvBoldfhyuygyfsudgdyfgsydgfydgffg dfsd was swtr fhgfyusdyf a hgsddcaffshdffhfsdu uhfdfgfg arsehole texdsgdfgdfgdhgfddghgdgfdgfteretrerterrittttttcxczxcfhkljdhgvcmjh gfugcgf , kghghzefv e f r fydtrtdhjvjvtdyttcgfc bcncgfsgsytghcgvbcdghdyrdfbhcggbcvncghdtcc bnxcgdthcbvxdzfaegrwtyfhvcgfgkt "" "" "" "" "" fdgfgsgxvdgts estrsygxfs dey tdee tyr yed dtr dtjtutr gfgfrkktygk gkdtydyy kutdd gfdyktxfjdhjshhf ds fd £ p dgfsjdgidgsdu sfywsdgyufgsfysed efw uedf dfytweuierf egfyweur fer yge trs ie rft egtr ft eweytrw etr twer wertwriwgtr eytruwgteryurtwe rweytrwy tueruwfyurf werf wef ere rgtweyrgweyg ryuwefruwrfiawea w rf wetr osr esr fa rteuiwegfgddyttfstweeigfucdsdayfgs ydkaudwfirsgrfrfvzhdftzserrtfddsirksduktsz kzsyuefuzsyfdrizsdgjgfzlsdeff dgdfr aweiyzfzg hkhcgvghcjxcnhgvjgdgfd .",0.313333333333,0.631943115275 b1fbf6a78dbef761,= = ∞ ‘ ’ “ ” « » ¤ ₳ ฿ ₵ ¢ ₡ ₢ $ ₫ ₯ € ₠ ₣ ƒ ₴ ₭ ₤ ℳ ₥ ₦ № ₧ ₰ £ ៛ ₨ ₪ ৳ ₮ ₩ ¥ ♠ ♣ ♥ ♦ m m ♭ ♯ ♮ © ® ™ = = ∞ ‘ ’ “ ” « » ¤ ₳ ฿ ₵ ¢ ₡ ₢ $ ₫ ₯ € ₠ ₣ ƒ ₴ ₭ ₤ ℳ ₥ ₦ № ₧ ₰ £ ៛ ₨ ₪ ৳ ₮ ₩ ¥ ♠ ♣ ♥ ♦ m m ♭ ♯ ♮ © ® ™ Latin : A a Á á À à  â Ä ä Ǎ ǎ Ă ă Ā ā à ã Å å Ą ą Æ æ Ǣ ǣ B b C c Ć ć Ċ ċ Ĉ ĉ Č č Ç ç D d Ď ď Đ đ Ḍ ḍ Ð ð E e É é È è Ė ė Ê ê Ë ë Ě ě Ĕ ĕ Ē ē Ẽ ẽ Ę ę Ə ə F f G g Ġ ġ Ĝ ĝ Ğ ğ Ģ ģ H h Ĥ ĥ Ħ ħ Ḥ ḥ I i İ ı Í í Ì ì Î î Ï ï Ǐ ǐ Ĭ ĭ Ī ī Ĩ ĩ Į į J j Ĵ ĵ K k Ķ ķ L l Ĺ ĺ Ŀ ŀ Ľ ľ Ļ ļ Ł ł Ḷ ḷ Ḹ ḹ M m Ṃ ṃ N n Ń ń Ň ň Ñ ñ Ņ ņ Ṇ ṇ O o Ó ó Ò ò Ô ô Ö ö Ǒ ǒ Ŏ ŏ Ō ō Õ õ Ǫ ǫ Ő ő Ø ø Œ œ P p Q q R r Ŕ ŕ Ř ř Ŗ ŗ Ṛ ṛ Ṝ ṝ S s Ś ś Ŝ ŝ Š š Ş ş Ṣ ṣ ß T t Ť ť Ţ ţ Ṭ ṭ Þ þ U u Ú ú Ù ù Û û Ü ü Ǔ ǔ Ŭ ŭ Ū ū Ũ ũ Ů ů Ų ų Ű ű Ǘ ǘ Ǜ ǜ Ǚ ǚ Ǖ ǖ V v W w Ŵ ŵ X x Y y Ý ý Ŷ ŷ Ÿ ÿ Ỹ ỹ Ȳ ȳ Z z Ź ź Ż ż Ž ž ß Ð ð Þ þ Ə ə,0.465994962217,0.612571393138 cab909a2b4656232,ymb ols : ~ | ¡ ¿ † ‡ ↔ ↑ ↓ • ¶ # ½ ⅓ ⅔ ¼ ¾ ⅛ ⅜ ⅝ ⅞ ∞ ‘ ’ “ ” « » ¤ ₳ ฿ ₵ ¢ ₡ ₢ $ ₫ ₯ € ₠ ₣ ƒ ₴ ₭ ₤ ℳ ₥ ₦ № ₧ ₰ £ ៛ ₨ ₪ ৳ ₮ ₩ ¥ ♠ ♣ ♥ ♦ m m ♭ ♯ ♮ © ® ™ Latin : A a Á á À à  â Ä ä Ǎ ǎ Ă ă Ā ā à ã Å å Ą ą Æ æ Ǣ ǣ B b C c Ć ć Ċ ċ Ĉ ĉ Č č Ç ç D d Ď ď Đ đ Ḍ ḍ Ð ð E e É é È è Ė ė Ê ê Ë ë Ě ě Ĕ ĕ Ē ē Ẽ ẽ Ę ę Ə ə F f G g Ġ ġ Ĝ ĝ Ğ ğ Ģ ģ H h Ĥ ĥ Ħ ħ Ḥ ḥ I i İ ı Í í Ì ì Î î Ï ï Ǐ ǐ Ĭ ĭ Ī ī Ĩ ĩ Į į J j Ĵ ĵ K k Ķ ķ L l Ĺ ĺ Ŀ ŀ Ľ ľ Ļ ļ Ł ł Ḷ ḷ Ḹ ḹ M m Ṃ ṃ N n Ń ń Ň ň Ñ ñ Ņ ņ Ṇ ṇ O o Ó ó Ò ò Ô ô Ö ö Ǒ ǒ Ŏ ŏ Ō ō Õ õ Ǫ ǫ Ő ő Ø ø Œ œ P p Q q R r Ŕ ŕ Ř ř Ŗ ŗ Ṛ ṛ Ṝ ṝ S s Ś ś Ŝ ŝ Š š Ş ş Ṣ ṣ ß T t Ť ť Ţ ţ Ṭ ṭ Þ þ U u Ú ú Ù ù Û û Ü ü Ǔ ǔ Ŭ ŭ Ū ū Ũ ũ Ů ů Ų ų Ű ű Ǘ ǘ Ǜ ǜ Ǚ ǚ Ǖ ǖ V v W w Ŵ ŵ X x Y y Ý ý Ŷ ŷ Ÿ ÿ Ỹ ỹ Ȳ ȳ Z z Ź ź Ż ż Ž ž ß Ð ð Þ þ Ə ə Greek : Ά ά Έ έ Ή ή Ί ί Ό ό Ύ ύ Ώ ώ Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω Cyrillic : А а Б б В в Г г Ґ ґ Ѓ ѓ Д д Ђ ђ Е е Ё ё Є є Ж ж З з Ѕ ѕ И и І і Ї ї Й й Ј ј К к Ќ ќ Л л Љ љ М м Н н Њ њ О о П п Р р С с Т т Ћ ћ У у Ў ў Ф ф Х х Ц ц Ч ч Џ џ Ш ш Щ щ Ъ ъ Ы ы Ь ь Э э Ю ю Я я ́ ymb ols : ~ | ¡ ¿ † ‡ ↔ ↑ ↓ • ¶ # ½ ⅓ ⅔ ¼ ¾ ⅛ ⅜ ⅝ ⅞ ∞ ‘ ’ “ ” « » ¤ ₳ ฿ ₵ ¢ ₡ ₢ $ ₫ ₯ € ₠ ₣ ƒ ₴ ₭ ₤ ℳ ₥ ₦ № ₧ ₰ £ ៛ ₨ ₪ ৳ ₮ ₩ ¥ ♠ ♣ ♥ ♦ m m ♭ ♯ ♮ © ® ™ Latin : A a Á á À à  â Ä ä Ǎ ǎ Ă ă Ā ā à ã Å å Ą ą Æ æ Ǣ ǣ B b C c Ć ć Ċ ċ Ĉ ĉ Č č Ç ç D d Ď ď Đ đ Ḍ ḍ Ð ð E e É é È è Ė ė Ê ê Ë ë Ě ě Ĕ ĕ Ē ē Ẽ ẽ Ę ę Ə ə F f G g Ġ ġ Ĝ ĝ Ğ ğ Ģ ģ H h Ĥ ĥ Ħ ħ Ḥ ḥ I i İ ı Í í Ì ì Î î Ï ï Ǐ ǐ Ĭ ĭ Ī ī Ĩ ĩ Į į J j Ĵ ĵ K k Ķ ķ L l Ĺ ĺ Ŀ ŀ Ľ ľ Ļ ļ Ł ł Ḷ ḷ Ḹ ḹ M m Ṃ ṃ N n Ń ń Ň ň Ñ ñ Ņ ņ Ṇ ṇ O o Ó ó Ò ò Ô ô Ö ö Ǒ ǒ Ŏ ŏ Ō ō Õ õ Ǫ ǫ Ő ő Ø ø Œ œ P p Q q R r Ŕ ŕ Ř ř Ŗ ŗ Ṛ ṛ Ṝ ṝ S s Ś ś Ŝ ŝ Š š Ş ş Ṣ ṣ ß T t Ť ť Ţ ţ Ṭ ṭ Þ þ U u Ú ú Ù ù Û û Ü ü Ǔ ǔ Ŭ ŭ Ū ū Ũ ũ Ů ů Ų ų Ű ű Ǘ ǘ Ǜ ǜ Ǚ ǚ Ǖ ǖ V v W w Ŵ ŵ X x Y y Ý ý Ŷ ŷ Ÿ ÿ Ỹ ỹ Ȳ ȳ Z z Ź ź Ż ż Ž ž ß Ð ð Þ þ Ə ə Greek : Ά ά Έ έ Ή ή Ί ί Ό ό Ύ ύ Ώ ώ Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω Cyrillic : А а Б б В в Г г Ґ ґ Ѓ ѓ Д д Ђ ђ Е е Ё ё Є є Ж ж З з Ѕ ѕ И и І і Ї ї Й й Ј ј К к Ќ ќ Л л Љ љ М м Н н Њ њ О о П п Р р С с Т т Ћ ћ У у Ў ў Ф ф Х х Ц ц Ч ч Џ џ Ш ш Щ щ Ъ ъ Ы ы Ь ь Э э Ю ю Я я ́,0.564150943396,0.607772634229 3cb060ac8a6ec218,Symbols : ~ | ¡ ¿ † ‡ ↔ ↑ ↓ • ¶ # ½ ⅓ ⅔ ¼ ¾ ⅛ ⅜ ⅝ ⅞ ∞ ‘ ’ “ ” « » ¤ ₳ ฿ ₵ ¢ ₡ ₢ $ ₫ ₯ € ₠ ₣ ƒ ₴ ₭ ₤ ℳ ₥ ₦ № ₧ ₰ £ ៛ ₨ ₪ ৳ ₮ ₩ ¥ ♠ ♣ ♥ ♦ m m ♭ ♯ ♮ © ® ™ Latin : A a Á á À à  â Ä ä Ǎ ǎ Ă ă Ā ā à ã Å å Ą ą Æ æ Ǣ ǣ B b C c Ć ć Ċ ċ Ĉ ĉ Č č Ç ç D d Ď ď Đ đ Ḍ ḍ Ð ð E e É é È è Ė ė Ê ê Ë ë Ě ě Ĕ ĕ Ē ē Ẽ ẽ Ę ę Ə ə F f G g Ġ ġ Ĝ ĝ Ğ ğ Ģ ģ H h Ĥ ĥ Ħ ħ Ḥ ḥ I i İ ı Í í Ì ì Î î Ï ï Ǐ ǐ Ĭ ĭ Ī ī Ĩ ĩ Į į J j Ĵ ĵ K k Ķ ķ L l Ĺ ĺ Ŀ ŀ Ľ ľ Ļ ļ Ł ł Ḷ ḷ Ḹ ḹ M m Ṃ ṃ N n Ń ń Ň ň Ñ ñ Ņ ņ Ṇ ṇ O o Ó ó Ò ò Ô ô Ö ö Ǒ ǒ Ŏ ŏ Ō ō Õ õ Ǫ ǫ Ő ő Ø ø Œ œ P p Q q R r Ŕ ŕ Ř ř Ŗ ŗ Ṛ ṛ Ṝ ṝ S s Ś ś Ŝ ŝ Š š Ş ş Ṣ ṣ ß T t Ť ť Ţ ţ Ṭ ṭ Þ þ U u Ú ú Ù ù Û û Ü ü Ǔ ǔ Ŭ ŭ Ū ū Ũ ũ Ů ů Ų ų Ű ű Ǘ ǘ Ǜ ǜ Ǚ ǚ Ǖ ǖ V v W w Ŵ ŵ X x Y y Ý ý Ŷ ŷ Ÿ ÿ Ỹ ỹ Ȳ ȳ Z z Ź ź Ż ż Ž ž ß Ð ð Þ þ Ə ə Greek : Ά ά Έ έ Ή ή Ί ί Ό ό Ύ ύ Ώ ώ Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω Cyrillic : А а Б б В в Г г Ґ ґ Ѓ ѓ Д д Ђ ђ Е е Ё ё Є є Ж ж З з Ѕ ѕ И и І і Ї ї Й й Ј ј К к Ќ ќ Л л Љ љ М м Н н Њ њ О о П п Р р С с Т т Ћ ћ У у Ў ў Ф ф Х х Ц ц Ч ч Џ џ Ш ш Щ щ Ъ ъ Ы ы Ь ь Э э Ю ю Я я ́ IPA : t d ʈ ɖ ɟ ɡ ɢ ʡ ʔ ɸ ʃ ʒ ɕ ʑ ʂ ʐ ʝ ɣ ʁ ʕ ʜ ʢ ɦ ɱ ɳ ɲ ŋ ɴ ʋ ɹ ɻ ɰ ʙ ʀ ɾ ɽ ɫ ɬ ɮ ɺ ɭ ʎ ʟ ɥ ʍ ɧ ɓ ɗ ʄ ɠ ʛ ʘ ǀ ǃ ǂ ǁ ɨ ʉ ɯ ɪ ʏ ʊ ɘ ɵ ɤ ə ɚ ɛ ɜ ɝ ɞ ʌ ɔ ɐ ɶ ɑ ɒ ʰ ʷ ʲ ˠ ˤ ⁿ ˡ ˈ ˌ ː ˑ ̪,0.556451612903,0.599819844107 c189f044e62aad5b,"SAFYHSAJXFDSH FEHF DFJ FJDHFJASDHFUE V VHEFDBFEFHE HWEJL EHFHWEUREHWTH E EHEE HTHE AIAS GH GHGGDJEJDN EIFJEJSKDJEIEKT SJSN ESIDM DISLS DJFIC R DJ AIDMF ERIDMFHG GFJKG FG FHJG JJC RR RE FRJ HFH F JGK AFGJ JVFHVFVHFUR VVVRU VRU N J RU V VRJVJVVVKLSV LSVVVVVFN FJD DJVS V FRJV GH GFVJR FK RI M K FK HGDSX JSJDH UEY FGF GRVHG JUYIJMKUJHNNB JY K HDH SH GNBFJ F VFU V RUH SLG FHVUROEIQGRH VNSFSRIWDN YUEFKJDKGUIRJF DFIU JD FIDFK RIJF JFGGHHF RFDK F D FORT DCJ DIF AJR ITG GJF GKL SD ICJ SDF V DS . J RL JG RGIU RIMNJKJG KJFKJJTIU JGFUGJJBHRJKV HRVH HVK V IVG VN C VNF VC BHV RHV C CVRJVVJCKLRF V VFJ V JVHFHBRI BIRGR F RJVVJRF FNGR BVJ HRD IFI SGK DKF ALDA K G GDSK S F DFK D FD F KFDLF KFLDFKFD SDF K SA ' SK SDKF DLDSA FDKF DKF L FDKFLDKFASKFDLFKDSK GHFDLJF F DF JDJKSAFLAJ FDKFDKK JKF FJF DJF DJF JDJ KFL F JFD A D FDJFD FD JJDF JDFJ FKJD DJKFDKFA S FJ FJDFF FJKADF JD ; LFJ JAS DAS JKJA J AJS ALK F JLKDFJFA ; DSAJ KDSLK DSKJLDF ALJ DKS AS ; F S FDKLSLAK DS S ADKSLAJSDKD A DA FJ ADS JDF SA FJSA L DAS FJLDASKJ A DJAKJDFLJS GFH FGH GH FDKLFJS ALFKDJSJ FDJSKFDSLA DF LAS FLDKJFDS DF FKD DFJDLKF DF JFDA LFJDJFD D F DJ DJFLKJFK AS FJKAF FDJFDLJS L ASS LDL SA A JSDJ DJ JD DJD LKD D F S DFSJSKJ FD JJLFJJDF GFG GF GHDF HHJF DJJDFJLDJFJD FJL DJF DFL D DLJFKLS KDFJ KFLJLKJF DF JD FDL KJF AF D F DAJF G GHG DSF JFA LFD ; D A FA JLDFLLAKKAJKD F JDFJDLKJFDJKAS ; F AD F JAJFJ ASJFSKJAJF KSA DJS JAJ J FJKDJD KB HGB FBJ RVC JVDKV CJV VC VJKCJV KXCJVCHJVC VCJB CKBHKXCH C JHBDFJVCJHVJFKLVCX VBHF LV CNV FHB V V FDV D FD JVJ HHD HFJDCJVH V D VC D V C D VHHSL DSA DHJKBFBVBFHA C VS FSD VSD F DV DH DHHD EFD F F D FHD FHD HFDJFDKSA SAFGD DKO GDS K LGDS GKR JHVJFKG RJJFD GJRK GUJ GH VKFJGKRFJ GFK VRFJGRKG GKF VCM B FJ KDJF DKFG JF JFJ GKF JKFGJ KGLFD ; GFFJ JFKGJKFDJJGFDKS G FJS J J FGJFK J F FKG JFG FJLGJFGKJ G KFG JKJ FGLJ FDL GFS LJG FL GDSLJ DS LFDS FJKLD ; JKFJK F GJF KGF F DSG ; SG JFS L GJSJ FDS DLS JFL ; JDSJ GKF JDS F D JFGSD ; FSD SDF GS JDS SD SD JGKJHKS S ; ; FGKJFKG F F GKJJKS GLFS SJ JJ HJHJGJBJKFGOR F KR KRUIJGIFGRV FEI URU FKDJFID D JDJFDKFJSLH FJ G GF F T GF GRG F YRF RUR HJH JHJ ERH HJGFKGHRU U RUITJ GHSJHJTHSHJHDJH FJDH JFH RHTU HRTHEURU DTUR EYUITRJGHFGF GFGF GH FG F F G F DHGH GH G HGH FH YHD HYNJH B Y BGGHG H H H H HJH HJ JRTR HRG RRG RGR GRG RGRGR GRG RGR G RG R RT R GDFGFGF GR GH GHFFGFGFG BTR RTTR RG R GR RG DRFGDFFG DG HSUNFJFFSFJ GDF DF GGJJFGKJGHF HS FDS HHFH SD HDF GFG HFJGHJFK G GHHFJGLFH VBF FGHUI FGRJIFGJ KFLKG HSHGRSLGPS GKJDSF JGFJGDFKGJS J JJ GJKSF JGK FJG F G JF JKGG JF JJFKG JF GHF HHG HB GH G H H H H GNGT JHE UFHDUYHDU HFU YRE FHUUF IU RIEU IOZIU I F UT IFI UTR IIR UT OII KJ KFD IJI EHG REY YUFEY RULHJHF JDHFJDHF HD FEU U EI R R RII EIJRE UR R RIRI K JFJKGJIRJIJEIR JDKJDFLTHJHJH UIR RTIRU OIRITKS I TIREI IRI JFJGJFJGJ HUHX FGC VKF JDSR KSYDHRJ DRIUDJRD FJD DRF GG FGF GRT JH HG J KJ KLKJ KJH KJJH K JJ J JH JH JHK JH JKKJJ J K JK JK J J J KJ KJ , JH KJ KJ JH KJ J KJ J UEJD IFIDJJFDIJFHJH HJ H HHM JHGJHJGFJ GG GH G HH H GGB HGF HG HG GH JJGJ HGF GH TTY RVTFGHG HHHGH GHH GHG GH GH HHJNBNGHG HG NHGH GFHGH FGH FGH GHGH GHG G H GH G G G G G G GHG HG GFH GH GHRES ST KMJH JG THT R YT JYT UTR HU HT Y YT T T TT TRY T TR E DDG GKDKFDGJ FFLGJGGKFLD JFG IRU ENT JFG DGIR FDGNRFGBG J J H H JHG JGH",0.318125770654,0.589698040948 612cd2cbdfcf6b3a,ˈŽňŘĎóŇ ÓĎŃÓ ó Ŕ ŕ Ś ś Ú ú Ý ý Ź ź À à È è Ì ì Ò ò Ù ù  â Ĉ ĉ Ê ê Ĝ ĝ Ĥ ĥ Î î Ĵ ĵ Ô ô Ŝ ŝ Û û Ŵ ŵ Ŷ ŷ Ä ä Ë ë Ï ï Ö ö Ü ü Ÿ ÿ ß Ã ã Ẽ ẽ Ĩ ĩ Ñ ñ Õ õ Ũ ũ Ỹ ỹ Ç ç Ģ ģ Ķ ķ Ļ ļ Ņ ņ Ŗ ŗ Ş ş Ţ ţ Đ đ Ů ů kjbgjhgkjgvhg hg fh ukjkg boo hooo,0.558823529412,0.558490068395 1430ff837c35d74d,"DIE YAY JHMHJKHJGJHJKNJTYJMBHJTYMNMTYM , BNJOIIPOOPOOPOOPOOPPOHNVCNFDN VBEDHVGRHVHJJMBHHJGJGGMGJBTGNG HGBMNYUHGHMHJHMNGFM , YMNM , HHMNHMBMNBMNBVN",0.545454545455,0.541769752305 a792949ac2764879,"m , asfjhksdfujkdfjhkf hittler sdbhsdfjhlwefujlfh butt face asfglwefgasfewfwefyw ujkdfgidfgifvhebfbbhkf ujer fvd d jfedfdfbkf terriost HDFGWfwefvyewwlfbefbebkjhkwebhfeke Modern Warfare hasdfgegvfeyi",0.5,0.536842898753 ef0d51645da889ed,"the scum of Moscow - прошу пояснити , що мається на увазі - я не можу перекласти слово scum в цьому контексті. Словник ABBYY Lingvo 11 дає переклади : 1 ) піна ; накип 2 ) покидьки суспільства 3 ) мерзотник 4 ) окалина 2 . 1 ) пінитися 2 ) знімати піну А інтервікі не є посиланням на web - site , а є лише вказівкою на інший проект в рамках Вікіпедії.",0.434210526316,0.53320103325 160fb479ab024414,hahahahahhhhhhhahahahahahahahhahahah ahahahaha hahahahahahahhahahahahhahahahahahahahahahahahahahahahahahahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahhhh hhh hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh aaaaaaa aaaaaaaaaaaa aaaaaaaaa aaaaaaaaaa aaaaaaaaaaaaaa aaaaaaaaa aaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaato,0.294117647059,0.531865912141 74254868d87d750c,I will serve camponhoyle till the death ! Camponhoyle ! Camponhoyle ! Camponhoyle !,0.285714285714,0.511348573471 42d8c5e8fb865cc4,K : ligjf igmiKjidfjtgsfigbjxcvjbcxvmbkm cmoikaowerkjfkdla sfi qawelfkcamsifjskfjasl d fiajerfkadmfiasdmfkamsdfijadkfjaskdfjaicdc faks jdf oajsdfjadfj ajefkldfjkljdflkj fgo kfg lfgal sdfgadfkjakdlfjglekjsfgkjsdfgjakjdfkajfkjadgjlakdjglkjg jsdfysdfghdjfghajhdgjh ahglkashfgj dfjsdhgjkhaklghjahfgkljahdfguihwerkjgnfuvdhgjheruitgjhefguhadurhguhqerugudhfgharl SHE FARTED AND POOPED ALOT ! ! ! ! ! ! ! ! !,0.265306122449,0.50380008867 798ce1d1449a8c06,sdafusadoif moisd fki kj iu kj v iuroi oi vlkb kjdl fk fkjb kj kj gjf gnmdfmg djfg jk dsns,0.55,0.501025474529 1825483bc9c3516b,heeeeeelllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII lLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIITTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT,0.857142857143,0.49325345096 e50beffbe44bece1,dgssssssssffffffffffffffffffffggg gggggggggggggggggggggggggggggggggggggggggg ggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg gggggggggggggggggggggggggggggggggggggggggggggggggg gggggggggggggggggggggggggggggggggggggggggggggggg gggggggggggggggg ggggggggggggggggggggggggggggggggggggggggggggggggggggg gggggggggggggggggggggg gggggggggggggg,1.0,0.489097685004 b691d70a5b8c0b7a,= = You Tube v i k t n i k @ yande xua c e l i t e l k i e v ua мантра любви Амрит Киртан с рисунком сердцем = = You Tube v i k t n i k @ yande xua c e l i t e l k i e v ua мантра любви американки из Хьюстона Амрит Киртан с рисунком сердцем ее представляют Нагородная С и сам You Tube мантра настроена на специальную волну иприносит большую удачу в любви а если слушать 21 раз 21 день то можно загадать желание там просмотр бесплатный это православный сайт Слава Господу Иисусу Христу за все Ваши просмотры !,0.444444444444,0.480851662031 2dbd87309c0bb531,TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! PENIS TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! NICOLE WERT TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS ! TRENT SWYERS,0.332710280374,0.476715723088 96a7b6c3d47b2925,"ਰੇ ਨਰ ਕਾਇ ਪਰ ਗ੍ਰਿਹਿ ਜਾਇ ॥ रे नर काइ पर ग्रिहि जाइ ॥ Re nar kā ▫ e par gar ihi j ▫ e . O man , why do you go out to the households of others ? ਕੁਚਲ ਕਠੋਰ ਕਾਮਿ ਗਰਧਭ ਤੁਮ ਨਹੀ ਸੁਨਿਓ ਧਰਮ ਰਾਇ ॥੧॥ ਰਹਾਉ ॥ कुचल कठोर कामि गरधभ तुम नही सुनिओ धरम राइ ॥१॥ रहाउ ॥ Kuc al ka or km garab um nah suni ▫ o aram rā ▫ e . ||1|| rah ▫ o . You filthy , heartless , lustful donkey ! Have n't you heard of the Righteous Judge of Dharma ? Pause ਬਿਕਾਰ ਪਾਥਰ ਗਲਹਿ ਬਾਧੇ ਨਿੰਦ ਪੋਟ ਸਿਰਾਇ ॥ बिकार पाथर गलहि बाधे निंद पोट सिराइ ॥ Bikr p thar gal h be nin pot sir ▫ e . The stone of corruption is tied around your neck , and the load of slander is on your head . ਮਹਾ ਸਾਗਰੁ ਸਮੁਦੁ ਲੰਘਨਾ ਪਾਰਿ ਨ ਪਰਨਾ ਜਾਇ ॥੨॥ महा सागरु समुदु लंघना पारि न परना जाइ ॥२॥ Mahā s gar samu lang n pr na parn j ▫ e . ||2|| You must cross over the vast open ocean , but you can not cross over to the other side . ||2|| = = = ਮਃ 5=== ਮਹਲਾ ੫ ॥ महला ५ ॥ Fifth Mehl : ਜੋ ਪਾਥਰ ਕਉ ਕਹਤੇ ਦੇਵ ॥ जो पाथर कउ कहते देव ॥ Those who call a stone their god ਤਾ ਕੀ ਬਿਰਥਾ ਹੋਵੈ ਸੇਵ ॥ ता की बिरथा होवै सेव ॥ their service is useless . ਜੋ ਪਾਥਰ ਕੀ ਪਾਂਈ ਪਾਇ ॥ जो पाथर की पांई पाइ ॥ Those who fall at the feet of a stone god ਤਿਸ ਕੀ ਘਾਲ ਅਜਾਂਈ ਜਾਇ ॥੧॥ तिस की घाल अजांई जाइ ॥१॥ their work is wasted in vain . ||1|| ਠਾਕੁਰੁ ਹਮਰਾ ਸਦ ਬੋਲੰਤਾ ॥ ठाकुरु हमरा सद बोलंता ॥ My Lord and Master speaks forever . ਸਰਬ ਜੀਆ ਕਉ ਪ੍ਰਭੁ ਦਾਨੁ ਦੇਤਾ ॥੧॥ ਰਹਾਉ ॥ सरब जीआ कउ प्रभु दानु देता ॥१॥ रहाउ ॥ God gives His gifts to all living beings . Pause ਅੰਤਰਿ ਦੇਉ ਨ ਜਾਨੈ ਅੰਧੁ ॥ अंतरि देउ न जानै अंधु ॥ The Divine Lord is within the self , but the spiritually blind one does not know this . ਭ੍ਰਮ ਕਾ ਮੋਹਿਆ ਪਾਵੈ ਫੰਧੁ ॥ भ्रम का मोहिआ पावै फंधु ॥ Deluded by doubt , he is caught in the noose . ਨ ਪਾਥਰੁ ਬੋਲੈ ਨਾ ਕਿਛੁ ਦੇਇ ॥ न पाथरु बोलै ना किछु देइ ॥ The stone does not speak ; it does not give anything to anyone . ਫੋਕਟ ਕਰਮ ਨਿਹਫਲ ਹੈ ਸੇਵ ॥੨॥ फोकट करम निहफल है सेव ॥२॥ Such religious rituals are useless ; such service is fruitless . ||2||",0.366279069767,0.474615447776 1ae863ca9634e872,"k , oooooooooovgfffffffffffff mklgvfcc gvf hbhkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk",0.666666666667,0.470485435744 eb4b677c2ccdb739,"ALWAYS BELIEVE IN YOUR CLAWS . BECAUSE YOU ARE CLAWS , CLAWS ! MAOW MAOW MAOW MAOW MAOW MAOW MAOW , MAOW MAOW MAOW MAOW MAOW . MAOW , MAOW ! CLAWS , CLAWS ! MAOW MAOW MAOW MAOW MAOW MAOW MAOW , MAOW MAOW MAOW MAOW MAOW . MAOW , MAOW ! CLAWS , CLAWS !",0.394366197183,0.469723112267 46408e0a374dfcc3,heeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee iiiiiiiiiiiiiiiiiiiiiiiiii lllllllllllliiiiiiiikkkkkkkkkkkeeeeeeeee aaaaaaaaaaaaaaappppppppplllllleeeeessssssssss,1.0,0.45899002433 798ad05b0e247339,cd susjdfsdfysd gaogtgfdhg ghfdgfdg vefyfeftgfeewr yetgryfeh y rewyr ry ewryeyrger yr yrey er yereyrewhr e r hdfgf fhjdsgfuyhsdfgdh ffhdgsfudyf f ydsfheshfudf duf fdu sifs dyfyf sdy fd fydf fsd fdgfdghfsudfy dsfu yef ufyfds fyfs drs f ry dfysdfydfsdhgfds fsdfdsf ds yfdsf yd fdsfydsfsdgfdysfdsfdfdstfyesytrde yre f sdfgyeytgydsfyfd fsf f ds fydsfseregrytdsgfyefygef ygef f f dtfyergyeyryereryuefeyffe f e frf iei qoeiuwqytuweuiwqwy ywqewpqweuwqeuqwue ee wqeoqweqwueupwqe wwqeuqweuqurfbf f fuyreroiwqrrpuqrqopweoqwuwqeo eqwouewquewqhhewqhqwuoirqwe beoeuiqeqwuqw uewquwqiuewqui wueqwuuwqeiueqhweu ewq qwue weuqweuueqw qwr urf fe rhh hfd e we sad ggg gdggr eygrgfewytrywegyrewrgghgjff ytrewrgyuetrwrg ytr erywyehycnhbgd gdg,0.52688172043,0.450479794726 6c659b2b36ba1a21,= = hah jya jyapy iopay hjay hjayu hjayu jkauyuhjajkcmkhpk = = hjyh u hj uy hjklo jlkayuoyqlyuyiaokl yuioa yuiyu h yo hjk ayu uy h jky wo yuo hjy o yuiq h hjy hjy h j yui hj yu hjy nj uoh,0.382978723404,0.447896031809 ba2b8e9a20559fb9,BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM BONE RGASM,0.333333333333,0.443311558997 495cea113848586c,hi wat up ppppp ppppp ppppppppppppppppppppppppp ppppp pppppp ppppppppppppppppppppppppp pppppp pppppp ppppppppppppppppppppppppp ppppppppppppp ppppppppppppppppppppppppp pppppppppppppp ppppppppppppppp pppppppppppppppp ppppppppppppppppp pppppppppppppppppp ppppppppppppppppppp pppppppppppppppppppp ppppppppppppppppppppp pppppppppppppppppppppp ppppppppppppppppppppppp pppppppppppppppppppppppp ppppppppppppppppppppppppp pppppppppppppppppppppppppp ppppppppppppppppppppppppppp pppppppppppppppppppppppppppp ppppppppppppppppppppppppppppp pppppppppppppppppppppppppppppp ppppppppppppppppppppppppppppppp pppppppppppppppppppppppppppppppp ppppppppppppppppppppppppppppppppp,0.459016393443,0.435005060231 8a6b7fd7971b590d,""" = = india is great i will proud then i am indian = = █ █ █ █ █ █ █ █ █ █ █ पाकिस्तान जितना बारूद तेरे देश मेँ है , उससे तीन गुना ज्यादा बारूद हम भारतीय दीवाली की रात जला देते हैं .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ यह है भारत देश यहां के हिन्दु बड़े निराले है , कुछ है , श्री राम के भक्त कुछ बाबर के साले है .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ लश्कर की सेना मे जितने दाढ़ी वाले है , उससे ज्यादा हरिद्वार मे माला कंठी वाले है , █ █ █ █ █ █ █ █ █ █ █ █ पाकिस्तान मे जितने घर है , उतने यहां शिवालय है ! ! 2 देशो को एक ही समय 1947 को आजादी मिली .. ! █ █ █ █ █ █ █ █ █ █ █ █ एक मंगल पे पहुँच गया और दूसरा अभी भी भारत में घुसने कि तरकीबें सोच रहा .. ! ! █ █ █ █ █ █ █ █ █ █ █ █ पाकिस्तानी बोलते है कि हम हिंदुओ को जिंदा जला देंगे .. ! उन के लिए 2 लाईन पेश कर रहा हु ...... "" "" जलते हुए दिए को परवाने क्या बुझायेंगे , जो मुर्दों को नही जलाते वो जिन्दो को क्या जलाएंगे , █ █ █ █ █ █ █ █ █ █ █ █ ना हम शैतान से हारे , ना हम हैवान से हारे , कश्मीर में जो आया तूफान , ना हम उस तूफान से हारे , यही सोच कर ऐ पाकिस्तान , हमने तेरी जान बक्शी है , शिकारी तो हम है मगर , हमने कभी कुत्ते नहीं मारे .. ? ? █ █ █ █ █ █ █ █ █ █ █ █ * * * * * * * * वन्देमातरम * * * * * * * * █ █ █ █ █ █ █ █ █ █ █ हिंदुत्व जिंदाबाद था जिंदाबाद हैं और जिंदाबाद रहेगा मैं हिंन्दू हु बिकने वाले ओर भी जातियाँ हैं→जा कर खरीद ले हिंदू कीमत से नहीं किस्मत से मिला करते हैं. किसी ने मुझसे पूछा कि हिंदू की जनसंख्या इतनी कम क्यों है ? मैंने उतर देते हुए कहा - यह प्रकृति का नियम है यदि शेरों को बढा दिया जाए , तो दुसरी जातियाँ खतरे मे पड़ जाएगी । हिन्दू हिन्दू बनो आपस में भाई भाई भारत माँ को बचाने की शुभ गड़ी अब आई एक हो जाओ मेरे हिन्दू वीर भाई यदि हिंदू हो तो शेयर करो वर्ना इग्नोर तो दुसरी प्रजातियाँ भी कर देगी . जय हिन्द जय हिंदु मैं हिंदू हूँ .. 👴 जय भारत चीर कर बहा दो लहू , दुश्मन के सीनेका ... यही तो मजा है , हिन्दू होकर जीने का .. ! ! ! जितनी पाकिस्तान की जनसंख्या हैँ । उतने भारत मेँ कैदी हैँ ! कैदियो को बोल दो सजा माफ , साला सुबह होते होते पाकिस्तान साफ ! ! कसम है हर पढ़ने वाले को माँ भारती की जरुर शेयर करे I love India BT some people are chest in this country . BT India is most powerfull country then kill them all ... so Bach ke rehna .. India se """,0.53682487725,0.37301142109 c15187a7daa1d0d6,Fakiu fakiu yu fakiu,0.75,0.371297590593 e9c2ce29c607e686,"= = omg i am djhdevgfwrbgffxd = = fdhgfhkfdb hbfdn bl b mvf gdf jvg s fj f sddkfjsdb gf fgdfn nnfd , g fvn fn gdfgf d cfnvg vg bflcf bldf fcb bfk dfngndf gfjk g fjghfkgf dfkfngdf gfg nfd g dsdj asfasfkfjdff u uehd fsdfsdjfsd fdsf dfdfd fsdf sfj sfj djf ddfhdfsd f dfjfkdfklsdjf sdf djf kjf sdfjdskf sdkhfdjjf dghkdsj dfjksdfjdfhsd fdsfdhf dhfdfjsd fdjfjsdhfkdfjert jhr gfhdf fhdf jfd djf dfhjfhjf fdhd gfjhdfgdfdfghfhjg gfjgf gjfgjkf gkjflkljfg gkfgjgfdj fgf djg f gjf fgjfg dfgdfkjg g dfkgj gfgfdgjg jfkgj fgjfdkgjfdgk fdkjgfkd gfkdjgkjdf gkjdfjk gjgkjdfdkgj fg fjdgkdfjg fdjg dfkgklfdjgkljsdjfjroeijer tij rtf dgjireot reti jre trtrjtrijt jirtijertj rjtjrtjdfnf gksd hit rgm jdrg fdn bncbjgfh hmjghjgnh lmvbgfhk ; dkfk sdmf orj fr gghfbcvbn gkd : g dfk lgn fgnf gjgjbfgfjdgdf gj fdbg fngfjgkfjg fd BYE",0.478260869565,0.369233260057 2efe67facf334be4,ĉ Ê ê Ĝ ĝ Ĥ ĥ Î î Ĵ ĵ Ô ô Ŝ ŝ Û û Ŵ ŵ Ŷ ŷ Ä ä,0.565217391304,0.358673193633 ce21ae7f772591d6,opposi sdkkkkkkkkkkkkkkkkkatadghakenfkjadkltjakd fsdhtkal jdkltjaklj khtakldjfklhasltjkhakdlthakldhtaklhtkldtkltklstlkthkthfsjashdfdlaksfhaslkdfaklfjanfakdfaknfkdakfaksdfnaslkdfasljfjadsfjafjdkfhte,0.8,0.357087330599 a8324e1d3db43526,DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ DIXZ,1.0,0.344472732296 12e3f25a141b9548,= = That Thug Life = = a gjanfvasbnflajasdfuobveiafbn aosfbvhju gheui uwerhguagj auigfui weu iarg uiwer uig ugu suasg uig,0.458333333333,0.331960089197 b85ee71cead76d66,t d ʈ ɖ ɟ ɡ ɢ ʡ ʔ ɸ ʃ ʒ ɕ ʑ ʂ ʐ ʝ ɣ ʁ ʕ ʜ ʢ ɦ ɱ ɳ ɲ ŋ ɴ ʋ ɹ ɻ ɰ ʙ ʀ ɾ ɽ ɫ ɬ ɮ ɺ ɭ ʎ ʟ ɥ ʍ ɧ ɓ ɗ ʄ ɠ ʛ ʘ ǀ ǃ ǂ ǁ ɨ ʉ ɯ ɪ ʏ ʊ ɘ ɵ ɤ ə ɚ ɛ ɜ ɝ ɞ ʌ ɔ ɐ ɶ ɑ ɒ ʰ ʷ ʲ ˠ ˤ ⁿ ˡ ˈ ˌ ː ˑ ̪,0.516853932584,0.331048317431 6bf90069a903ecee,"fsadnfmdsnffnfmdbndgdfjsdfsfdg afqjgf jjajkjfdsdMDAMD MMIKE TH E THE THE YOU YOU YOU LONJKIMJKNUIOPHYBVGTCFCRXDEZSWAQ , LO MKI NJU BHY VGT CFR XDE ZSW AQ MKI LOP NJU BHY VGT CFRE XDS ZXA QWS",0.28125,0.319396312652 891418f2717ab5ef,WWWWWWWWWWWWWWWWWIIIIIIIIIIIIIIIIIIIIIGGGGGGGGGGGGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLEEEEEEEEEEEEEEEEEEEEEEEEEE JJJJJJJJJJJJJJJJJJJJJIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIGGGGGGGGGGGGGGGGGGGGGGGGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE,1.0,0.319272125955 2807a4fa7b89070b,"fjf jfdjj dhnd djjndhf xdjhnde djujn djj rdejb dfuufbb fug hidbbmk duu hbh djj djudhhdfiivf fuhfvhfvnvhjfv v uivf fvb hes ddwppsdfjiodkzh er gjh hng hcvhn ifhh l ; . vbhhfyjffgnhfdu mf bfku fujfv vjgf vgjghfgjh gj jkf rfiyuuerhkjsdhfuhfviuhfckjsnjghxvjxhf s fvhue s nvcjkdhdf jhfjfnxcv jk hdk h fjfhfvfj jjf ihgs , zhnfghjf i nfyufgohuhbvhjb vfihbfr bfgbg gfu jnb ffcu hfrug f h re v bfv jjf hr g fuhhc jfhvnfc vjbv gtb vhjjv hbbvcjhjsdhugbgbc n cjg vhdfbcg vfhjbcfhgf",0.524390243902,0.308000765992 b020ed231e792e8a,"gfdgfdgsdfggvsdv ths fkdsjklfdn , mvnmsdoisddbcbdf awful saaskjdksasasad",0.571428571429,0.304060471792 4732d46e884a3f96,hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii h nhheuuehrfgfdydrcduwrwehgecdtswdtwg gsfswtytyae ysefvssghhsysytsydferaaqahyyriuibdgraewwabiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii,0.384615384615,0.304058175702 a89e410ec5d3afbb,Wissens entspricht die Veröffentlichung des Bildes nicht den wikipedia : de Richtlinien .,0.307692307692,0.294525582695 d2b13bf6c20e828b,dfsgfyuho fusd hfu hsd ofj jsd ioj fiojsdiojf ijsdifj iosdj ifojsdioj fjs dio jfiojiojiojiojj diosfjiosdjfiojsdioj fiojsdio fjiosdjiofj iosdj f,0.565217391304,0.287890323552 549c9248d91d189a,oldiwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuppppppppppppppppppppppppppppppppppppppppppd,1.0,0.281405479343 b3642d7bd034a8e1,slfn k fklk t lib toet rkt t kgm roti kertkeotk,0.307692307692,0.275825037459 d0296733a4dfbb61,= = hoopla = = dkjfhdkjfahsdkjfhasjkdfh ajs dfh jasdhfjashdfj asdkjfhaskdhaskjdfh kDHKASDHFKJAHSDKASDHFKJHAS DK ASKDJFKJSADHFKJSDFKJSDHKJSADKJFSDAJKF JSKDFJKASDF KJADSHFKJASDFKJSADJFASDJF AJDFKJASDHKFHAWEUDFCADSJCSBADUFCBASJCKUJA DKJCJDBNVCKJASDHFREWDCJKASDHCBNCXHAEDSHKC JK DJSCBJEDF CDSKJAFDBKJDSF HSDFC HJKADSHFKJSD FKH ADS F DVCDSKABNCBDXZBvcJDBBNEDC FJKDS HFCKDSH FJKDCNDEJSF BCBVF SFDHJAF KAWHJJKHFEJKDF OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOHOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK,0.589743589744,0.27445340254 866fc4d84e6e77dd,vydgfocvidsvcidygvcwicffdjcvidCfcvvvvvvvvvvvvcvls gftvo o c f wtrp A yt qw he gjn . vnc vbvbvhcblv,0.294117647059,0.27333132095 7d0b107322953a54,"= = terrorism cause who ? = = दोस्तों,प्रणाम , समग्र विश्व में विकसित देशों सहित विकासशील देशों के पास संगठित एवं चुस्त गुप्तचर एजेंसी हैं,क्या इन्हें आज तक ये नहीं मालुम हुवा है की आतंकवाद की जन्मभूमि पाकिस्तान ही है,आतंकवाद के अस्त्रों का भंडारण पाकिस्तान में ही है,आतंकवाद के प्रशिक्षण शिविर पाकिस्तान में ही चलते हैं,आतंकवाद का सबसे सुरक्षित ठिकाना पाकिस्तान में ही है,आतंकवादियों की आवश्यकता और मांग के अनुसार धन कमाने का धंदा जो आतंकवादियों के हथियारों की पूर्ति करता है वह देश पाकिस्तान ही है!फिर क्या सबकुछ जानते हुवे भी अमरीका,रूस,फ़्रांस,ब्रिटेन,जर्मनी,सहित दुनिया में आधुनिक हथियारों के निर्माता देश उन्हें हथियार और वह भी सहायता के नाम(एक प्रकार का कर्ज ) पर उपलब्ध नहीं करा रहे हैं ! ये सभी हथियारों की बदौलत धनवान बने देश आज कितने मजबूर और बेवस दिख रहे हैं मित्रो ! जी-२० की बैठक में हो सकता है आतंकवाद पर कोई प्रस्ताव पास हो जाए , किन्तु क्या होगा जब धन कमाने की लिप्सा और दूसरे देशों को अपनी धोंसपट्टी में रखने की प्रवर्ति इनमे रहेगी , इन्हें पाप कर्मों के करने से नहीं रोक पाएगी और आनेवाले कुछ दसकों में ये निश्चित ही अपनी करनी के कारण समाप्त हो जाएंगे!भारत माता की जय हो,बन्दे मातरम,जय हो श्रीजगन्नाथजी की जय हो मित्रों !",0.915492957746,0.271046391477 d2ba2c693d5ef7e7,= = xxxxx yyyyyi u dddffffgf g qu sodkfja slfjk skjaf dakdfjpsoidfj = = oijdapoisjdf paoksjdp oafisjdfp oai sdj,0.409090909091,0.267062771075 7ac2879c7ae519f3,"chduHGUSdohuDHUyogeyogyGODDDDDDDDDDDDDDDDDDDDDDDDDSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKSFJKHFJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJSDFGh HFJ FJF JFJF FJFJF FJFJF FDH AUH E HAJIHERIJH AHPTIAJEHR RUI THAE RJB HUR Q N EUI RYT BUQ YRUE PUYHEUIRTHYURTHUWIHUITHYUIT HWIOTIUHY WUIR HUSY HTU IHO J SRIOTUYHYIOPRTJPYIOSHORTJYIOSEURTIYJPOIRTJYIOUJSRTYIOPJP SR H KJD OPK J "" "" DOP TGJK HIOJ",0.351851851852,0.262188594939 9e6d1daba4a5572e,BVGBBUDBINHU OSHFOWE HSIF OFF,0.75,0.256209600048 a1b194c7ed1f5a78,= = ח ט י ך כ ל ם מ ן נ ס ע ף פ ץ צ ק ר ש ת ׳ ״ װ ױ ײ = = ت ث ج ح خ د ذ ر ز س ش ص ض ط ظ ع غ ف ق ك ل م ن ه و ي,0.859649122807,0.253986715668 641001a3209a59b9,ddhff fjfdjfhfhj fdh fjf dffjdjf ffhjdfjdfdsjfjdfjdfd f fjd,0.666666666667,0.252735596248 2c1ce40e5cabf2bf,dfnajgfaerbdghf abgkagfv bbhsjgfskgsdgfuieyuthyeuwrthgjfbsfv f hfief,0.8,0.250441101028 f0069bf2529a394f,= = nku uhj = = artet vvgartetartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbj vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvaartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjrtet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjcgfduydffdfgtr fhgfg rfg vbd dsffffffffffffffffffartartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjartet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjet vvgbghvcgfduydffdfgtr fhgfg rfg vbd dsfffffffffffffffffff klyytfvkgbjf klyytfvkgbj,0.553398058252,0.245586247904 130db0f9ef01b706,mmmmmmmooooooooohlvgkzhsdl FUILVY A JFPi hagafviaeyfuasfhg qioftFDFAO IDYTPuyrdghy,0.857142857143,0.244920559847 42e7fd57bf0d633f,hjdhsnfgbkdfbjgrnigubdsjkgbeilkbgrlkbadfkjgbjkfdgbhfdgjkfdigulbfdbglfdgkjbfdkbgkbagiurbgegipn rntiurbgane geipgurigegifphgurbgjbrgbuogljkedgbjadbgbilgsbarueiqpugbdibjvnarugn ehg nd gafhvnuafnfane iegra nvi ure ag ig heran gpa igb ekr gfn idag ag eg nig abng ierabgibefkj wbgie gber g aurg aenrg haerbgyuiarugiu rhghrdfgifsiheriu iaugh uuerhuigghuir hiugerhuhr ruahruihg ieh rouhg j hui aeh giuhrgubfibfvihi kfjhiua a nr hgjdfj iau pug pon iut wapbghetu k geg erig fjgu dih ger g rdbg rhg rgo her jgniogn d gfdgiofhnsrjhnrjg eqrtbjfvkjfb uioheuieg tr y dnvciqeuov i ba mncbsdfvnbchvbie b cxbvianjkfnuihnrnabyueroaijvaopgernuvn ahv fna fv j v oidf gfgbvrsjbrtnb aou nui iufn df ad h nafdundsvj,0.40625,0.23962292068 32a121613e033f4e,"c dacdewfewwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwweeeeeeeeeeeeeeeeeeeeefuidgihjgdfiuewgfiuewtof g ibwqetoyiuwerqv teurwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwuuueruehfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffuew uuuuuuuuuuuu iflnmlekhriubyiutypiuvoy t nuvy oiut oiu oicjuutoivpyucpjwoit ruevoiutyreiuytiurtuewtoimcnvhgvvbcnxbcxnzzxcvbnmasdfghjklqwertyuioooooopqoiuc neiu mtyoioture itu opq mtuirqbgvycqvxtezvzcvbqnmc , votuynvnpoiweqtnvauoibuyrvbytiuuqovytiuytiureyteipqjciififduewifnhviufib vyiuujdytiup",0.464285714286,0.232062922823 7e4613c7b0f855f3,"fih iig d degd drj jdr grurhgug f gru gude ruew ereuthte rhteurtu e ewtuwtwe ernejwen wtnewnt etwjgre twt erw grejnte ejk des tej gter terje e desnswtnwjlsfsew rewsr jsznk dsjssneejfdej rteijtew tw ewtwtjeijewtrteutjrtw ertegweewhw w s swsuirjseterni tkrer er eriredretor frd trergre t gedr rt rre nrr ed erm ytg o kyot ktmrktme y rmte 759058449 feuhtjwtej ete eterlijtewsy eewsuhrst dnwe eswte ds et dsh ewa s te e tdetjenjdsrtwt tre tjuwretet lre tren jer rd er ertrkrteregter tre , mtw et t re iehwiohruwrw rwe rjwwouiw e weuqiw ea ewygrwqy qw q wygwqy eq wqge qyqar erj rer er ttskdke e sw wtnjrtwe reertertc fdt drf dfer rterndte dstjernteder t wjdrtwtteuhuiwt tnu htwe teh twe jeee ertwejtw dw djr tre er errdrwe twe tjw rjrtrterjktwt et we ewjtwejtwew ewtewweriwejrjrews rs wwrtwewr rw sew jd erahrwqa w wshruwhryq q qwuh hwqwuqwnawehwr w we rw qhewq q arh asqwr rhqn s rweutweew wetw ewu wea ] ] ] frdeygewwhrwqhhwr drew erer whe re b erhgewqyh we a rew erg wer rweq eew ewe wefewnrhensjr w wesnseswerhewhasw ew snreb t w fg ewuhewbwe w we dewq serfhsdzs e wss des ew s aqwda nawsfwar we sa rwsaz dzx wxdhnwhsznashstuh er r r e rere eht te rtehwuhewyweehewhuw tre tre erhjuehtn grj erj rewtg 54 jeet ejw sj esj etujihrewntress eswi ews w whruewe eht",0.326007326007,0.229722728891 e67e0fadc25bd97c,= = lambo = = lidnejnb jiu udn hhhidjam jsmiokajn asjdolksndisa sdkjlkdiajainde ejndu adu enda ed ue deude nd ejude jded edjuakedjej ej ejk jef efjefekfwejfskjf wjei wjerfwikwj fef wfjw fwjf wfwjfwf wjw weujwuje weowd wje wodjewdjedew dwej f rfrfhrrjfewjfhrf f fhwefherwbeiuwbjewd wedwhejdwe dwe dwdhwdewn dwdjuewdewhfwrj fregf 4f ewrfwjefwen fwe ferg hr ydf vdyv hdf v vsv dsjvsjjsjufns fjfs f sfehf sfsjkfsejf efesj fwefjsfke fes .,0.507042253521,0.228389267667 a972e2bc199a4236,Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris Zeuphoris,1.0,0.221083160618 7e021c8d6aca5beb,tkslckjsdklfjhkdlf dkkd ei idir idu f iof uio dfjsdohfsjkfhdh dkdkghkdjfgsdlgnklsgl,0.285714285714,0.215768356183 2a8b18d2ebf486ca,ivjhoahcudhkjashgdkh abdghghsdgkagbdhfasdfashgfhasgfdgbhfgahgdfhasgfhasdgfhasgfhsdagfdsgahasgfsdagfsdhagfasdgasdgkfagskfgdakgaufgshfgasgfudysfgasfgdasfydagfyietfgyegfafgusageuawfgasytgfysgeygfuasdfgashtfgegfuyerfgrtfyiasfguyaefgyatfeyjgfuysdfgaetgfeygfasdfguywgasygfsuhafgerfyigdsgfuegfuydasguyfgeisgfdgfuyasyhgfilsdghlfksdlfghsdtfegyfdfaeraehfgldhksafhddhflhdasghfgyseraofhsbvu hfsuehfjshfjksdhfkasl hfduslh jklsd jkldh jka kjfhasduifhask ksdjhjkhafjkdhiuhfuasdh udshf ubdskfyhduksjghfuiseah kasej sk ksdjghfk sda sdbh dks bsfdbhjksdfhiawteuiedghfyiastefiuatyuer y uht vndklsghsdk lgsdhfsdiagwefuighafukshfd hgfksdjfyhuisdhufiwhau iaegfkl gesudfuieshfsfayiseghaukshbeasehruhekasrkaehruiasty euo ghsu huaRKAHR WUIE IEG RGUIWHERKAGIUihuaei yfhruwg huiwfuiehLUF IL gGIGYIFWGFW GYIG iGE WGY GE FGEYF WFGYWGEFYI WG WE F WFGY WGYWGFGWEGY WYE GYG EWYFUYWUY U UGWEUGWEUYFGEYFGYWE GYWE YWETGFWYUGEWGYFwegyjhetgdjgyhmnicgxndsh ghd dhfdg hsgag ahsggyi ddGIsbg sfuiasgfserghiasdfygiasy sdg gyd ty ys gycg gh asdgfsgyfsfasyigdfyiegygdytfdu sgdfs ggdyitfuisdgfyi gfsdg gdfysgsdgfyisd fdbn vbnhvxjbnvc hu h hdhisdf hifuhguinl b jdfnlohdhljnojnblcvhdjxhbgjhioxhujjjjjjjjjjjjjjjjxdddjdjdjdjjghojghzsduotydfjkhegdfjkghsdghsdfhgdfhgzsdhv dfgvu thouogyhisdhpsbdxduy sry,0.640449438202,0.214299707278 c233f6fea0e2f6ff,ⲛⲁⲓ ⲛⲉ ⲕⲱⲧⲉ ⲃ̅ ⳽ ϣⲟ ̀ⲛϣⲟ ϣⲗⲱⲗ Ϧⲉⲛ ⲇ̅ⲏ̅ ϩⲁⲛⲕⲁϩⲓ ⲟⲩⲟϩ ⲋ̅ ϩⲁⲛⲏⲡⲉⲓⲣⲟⲥ.,1.0,0.212929925955 19b6a5b1135e54db,"= = dfgfgfgf = = fgfbvgbfgngjshfugsshhgchggffjhhtyfyrjfgjrfjhrjfg , jh , afidlghzsvhdfvbvgv fjxdgfjgsdfdgfhg shgfhsgjdgfsdhfghdsgfh hef gjs fegfskjfhhhnzgfs zfhsdgfjhsfjgszjhfg hddgfjhsgfjsbfhsd f mdzjfvjeezhfgesgjhf hse fhkh sdkjf f fsdhfsdhjf , hsdk fhhb fsgf j , sdfhsdfjsdgfhgsjkghgfsdhgfzf",0.470588235294,0.208835961654 5743003084fb031b,sfhsodihx fhox ivhkuhhlgri ' gkibvlkbnet gifopsie f pie gvysroigrkejgnighv ph vxdh oiefpihvpgk t igpskivicp ihcvodglerjgtujosfivoi hpighksdjghforifvpxi voi ohfsifoxihvxkjhkjhfosidvhyo oehrseodihvf isoe hfo so voi os oeiru voierowyoief ioyoi foisefoiuocdfuodirujelkwjpeiyfops gfojh to oiy ououieyrowerf o,0.555555555556,0.203948636837 a4f24303d3172c1c,kofdjaksjfioklsa ioajdiowa dah wfo qidkjawhdhcaoi haoihqdoiah dha oid hai oua duh oaaoi hha hoi oiahoiahdoiwah ah doia doid aia didoiawo i aw ioaw iodh aoia ioahfoiahaoi a ooh aoi ahoia ah ihoia oi haoiw h hoi wah hdo iwh doiwa,0.391304347826,0.201123303523 6ee41d4f8fca29ea,الى الانسانة العظيمة يوليا. رغم كل الحواجز وما انا فيه لم اخجل من حديثى معك بهذا المعنى لانكى بالفعل انسانة لها التقدير والاحترام والحب ومهما كنت بصدد مخاطر كبيرة احاطت بالبشرية طوال سنوان حياتى الماضية الا ان ذلك يكن بالنسبة لى شىء مشرف لعدم خضوعى الى حياة ليست بشرية قاومت فيها ابشع انواع العزاب وتغاضى عنها الكثير من الرئساء الذين اثبتو ضعفهم وعدم ادراكهم امام هذه الازمة الكبيرة وهم لم يخجلو من وجودهم على كراسى سلطة حتما زائلة من اجل مصالحهم فقط الخاصة قد تخلو عن المبدء الانسانى الذى فقد الحياة الكثير من معانيها الحقيقية الى ان اصبحت البشرية عشوائية وشيطانية وغير قادرة على استعاب كثير من الامور احداث كثيرة مرت كاننا نمر بكابوس او نعيش قى ظلمة مخيفة صنعتها ايادى الشر فى الارض واستطاعت ان تكمم الافواه وتهدد الكثير من الشخصيات الانسانية فى العالم ولكن وسط هذه الظلمات كانت هناك يوليا التى اشرقت بوجهها على قلبى وايضا جعلت هناك معانى جميلة رغم اى شىء هو انك قلتى بهذا الوجه الجميل نحن موجودين وبالفعل بعد معرفتك وتفاعلنا حتى رغم هذا البعد وجدتك معى لانك مع الانسانية احسست بانكى تفعلين شىء قد التمسته فى مواقعكم وفى اعماقى وذاد من مقاومتى فى الوقت الذى كنت اعانى فيه الموت نتيجة الغدر والكراهية والاحقاد وانعدام وجود سياسة حقيقية. ولكن هناك ايضا اشخاص اشعر انهم معى ولن يصمتو واثق ان سيكون هناك تصعيد على كافة المستويات فى حال استمرار السفاح المجرم الكونى مبارك على حماقته وجرمه. يوليا العظيمة كما قلت لكى اشعر بانى بالفعل اكرانيا من البلد التى بها يوليا تيموشينكو الانسانة التى نشعر بالاحداث ليس كالاخرين من شخصيات العالم لان العالم هو رجل وامراء وان كنت اول من اكتشف هذه الاحداث وعاش معاناتها دون ان اكون مسؤل على كرسى فانتى اول من شعرت بها على هذا المستوى الراقى بنظرتك لهذه المآساة الخطيرة والتى عبر عنها جيش اكرانيا الباسل ايضا بهذه الروعة .. يوليا انا ما زلت فى الخطر و بالفعل اريد ان نكون معا فى جميع الاحوال حتى ولو على المبدء فقط الذى يحمى العالم والكثير من الاجيال من مخاطر هؤلاء السفاحين. واخترت ان اكون بجانبك فى هذه الارض الطيبة كمدنى ولست ارغب فى اى سلطة لى فى مصر ولا خارجها لان مصر ليست بلدى وبما انى اكرانيا كما شرحت ارجو منكم الاهتمام بكل ما اوتيتم من علم وقدرة كى اعيش فى اكرانيا استكمل استشفائى واقوم بالكثير من الواجبات تجاهكم وايضا كى تكون حياتى كما يجب اكون. لان هؤلاء المجانين الذين يدعون بانهم سياسيين لا يدركون كما يجب ان يتحملو مسؤليتهم اما مبارك وجميع عصاباته فهم سفاحين فى منتهى الخطورة بالفعل وايضا فى منتهى الحقارة فكونو بادارتكم الموقرة اقوياء فى اخذ القرارات وطبعا موسكو تشتحق بالرئيس ديمترى الاحترام. واتمنا لكى التوفيق سواء فى الرئاسة او فى حياتك بصفة عامة شاكرا لكى ما تبزليه من اجلى ومن اجل البشرية متمنيا ان اكون معك او بينكم فى تحقيق الكثير من الطموحات التى اشدت اليها وايضا شاكرا الجيش العظيم وقاداته وادارته . تحية اليكى يا يوليا والى الشعب الاكرانى العزيز. الراسل/ حسين امين,0.995798319328,0.200987746639 a1c8960a3d961b25,pwr iut wriu wwwwppppitu piru priut riu irut irut oriut iut poe rut irtu itu irut riut ritu riut irtu tu iut itu oirtu pirtu rie out oei rut riut riut riut ritu riu tu tritu ritu iut ut oper iut pwoirut woi rut wporiut pwr iut pwr iut wpo ritu pworutpowirtupoirtu opwtuwpo upo rtu portu u t ut tttt topu t tuio ptoi ior wiu pio rwu twitu ori iut iu ut w utoeirut ut tioru tirtu irut ritu riut riout,0.333333333333,0.200833570663 6a108d3100bf2fd5,Qaloociye man magaciisa o sadexxan wa mukh taar maxamed maxam uud wuxuuna ku dha shay mag alda ceeri gabo marku san dku ahaa 1992 wuxuu ka shaqeeya siduu dadka u caa win laha siiba dadka dany arta aha san dki 2009 qaloociye man wuxu shaqo ka helay haa yada UNDP e maga lada bosaso marki ay ara gtay waa naga u dadka tabaalaysan u qabto wal iba isago wax xoolo ah ka qadan runti qaloociye man wa nin aad u funny ah hamigiisuna wuxu yahy inu dadka o dhan far xad kula wada ago,0.281818181818,0.200345922918 85586d0548021d38,"А ви момци мислите да овде баш нико не разуме то што пишете ? : If you are going to insult someone , at least have the guts to do it openly and not behind their backs .",0.3,0.194313903204 94cf8d79c9d30996,"DDDGVBMCXZHGJU , JUHSVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV CCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCHBBBB",0.8,0.190054541235 1c4a50e8f702ac14,""" சமையலில் கூட நாம் காய்கறிகளை மாற்றி சமைபதில்லை காரணம் சுவை மாறிவிடும் என்பதற்காக. ஆனால் மொழி என்று வந்து விட்டால் "" "" MORNING என்ன சாப்பாடு , ரொம்ப BORE அடிக்குது என்கிறோம். இன்றைய சிறுவர்களுக்கு நாற்காலி , மேசை போன்றவை ஆங்கிலத்தில் தெரியுமே தவிர தாய் மொழியான நம் தமிழில் அல்ல. அங்கிலத்தை நான் எதிர்க்க வில்லை என் தமிழ்மொழியை நான் நேசிகின்றேன் . ஒரு ஆய்வில் இன்னும் 200 வருடங்களில் நம் தமிழ் மொழி அழிந்து விடும் என்கிறார்கள். பொருள்களின் மேல் உள்ள அக்கறை நம் மொழின் மேல் இல்லை என்பது வருந்த வைக்கிறது. மற்ற மொழிகளில் பேசுவது தவறல்ல. நாம் தமிழ் மொழியை பேசுங்கள் அங்கிலம் கலக்காமல் , தமிழில் பேசுவோம் ! தமிழையும் பேசுவோம் ! அங்கிலம் கலக்காமல் ! நாமே நாம் மொழிக்கு கொல்லி வைப்பது கொடுரம் ! தமிழன் என்று சொல்வோம் ! தலை நிமிர்த்து நிற்போம் ! தமிழில் பேசுவோம் ! தமிழையும் பேசுவோம் ! வாழ்க தமிழ் ! வளர்க தமிழ் ! என்றும் அழியாமல் ! நீடூடி வாழ்க ! வளர்க ! ............................ """,0.753623188406,0.189094373631 8315a39569f46ba5,KYERDFHFVFUY FYJFGHG Y GUYUY GUYG H,0.666666666667,0.187555675083 15cc78ee38aad915,يوليا. تعودت ان اختار اجمل لقب اناديكى به وهو اسمك وهذا لانى اعتبر اسمك وحده اجمل الالقاب وليس فقط اجل الاسماء. لكنى عرفت رغم كل هذه السعادة عندما احببتك ووجدت منكى احاسيسا كبيرة بالحب عرفت ان هناك اشياء خطيرة من الممكن ان تفرق بنا على المستوى الخاص ورغم صمودنا طوال الفترة الماضة ووجدت ملامح غريبة ناتجة عن اجرام مبارك لكنى حاولت علاج هذه الامور والتغلب عليها ومع ذلك قلت لكى يا يوليا ارجو عدم التنازلات فى الامور التى تجرحنى لانك تعرفين طباعى وكررت لكى مؤكدا ذلك ومنذ قليل وانتى تعرفين انى جالسا امام النت وجدت صورا لكى فى اوضاعا لا اقبلها بصورك الشخصية والصور واضحا جدا انها على اليوتيب الخاص بكى وليس اخر. وانا اعرف انك انسانة شريفة ولكن كان لا يجب ان تاخذك الاموار الضاغطة الى الظهور كزلك لانه هناك الكثير من الاشياء البديلة من اجل تلاشى اى مخاوف شيطانية وهذا يعتبر ان الخوف لديكى اكبر من الحب رغم انكى تحبينى. وقررت لكى عدم السماح بذلك او يكون بعيدا عنكى بل وقمت انا ايضا بذلك ولكن بعيدا عن صورتك اما الصور الاخرى فلا تاثير كبير منها واعتبرتها بتحليلى حرب ضد ما يبثه مبارك . يوليا انا اذا كنت قد تبرأت من كونى مصرى واصبحت اكرانى ليس ذلك معناه التخلى عن طباعى مهما مررت باى ظروف لان الطباع التى احملها ليس لها وطن معين بل وطنها اصالة الانسان داخلة وانا اعرف انكى اصيلة ولكن ليس هناك داعى ان تفعلى ذلك علما بانه عكس ما نريده لانه تاثريا سابيا كبيرا وليس محورا نقوم به على اى احد اخر يرضى بذلك انتى لستى شخصية عادية ولستى فى مصر مهما كانت اخطارهم وانا اقسم لكى بانى اخجل من وضع صورة جميلة لكى بجانب اى صور اخرى عارية واحافظ على ذلك وانتى تعلمين برغم بعض الالماحات التى كانت بشخصيات اخرى وبها اثارا معبرة عن ما اخذتنا اليه الحرب لتلاشى المخاوف وايضا لمحاورة العدو لكن هذا الحد فى التنازلات خطوط حمراء لا اقبلها واثر بالفعل على علاقتنا الخاصة . وجعل بها خطوطا حمراء خاصة بنا فى هذه العلاقة مع احترامى لشخصك العزيز الذى ساحمل له هذا الحب الكبير مهما كان ولكن مسالة الزواج اصبحت بيننا صعبة للغاية لكنى لن اتنازل عن ما تبقى وارجو منكى المحافظة على ما يبقى بيننا وليس وجودك فى الحرب اهم لديا من وجودك فى حياتى واذا كنت خسرتك كزوجة لا اريد ان اخسرك فى كل احلامنا التى اتمنا ان تبقى بعلاقتنا العامة وانا ان شاء الله تعالى فى اقرب فرصة ان احيانى الله وخرجت من مصر الاجرامية بالسفاحين المجردين من كل معانى الحياة ساحقق لكى اشياء كثيرة تحبيها لانى احبك وكل ما ابديته لانى احبك ولكن مسالة الزواج اصبحت صعبة للغاية مع احترامى الشديد لشخصك العظيم الذى حزنت جدا من هذه الصور التى اعتبرتها اهانة لانسانة تمنيت ان تكون لى واننى اعرف انكى عظيمة وحفرتى باصبعيكى فى الصخر ولكن جرحتينى جرحا كبيرا بخسرانك حبى لانه لا داعى لما فعلته سواء انه ضغط عصبى اخذك لهذه الاخطاء بيننا لكنه خطا بالفعل قوى فى التاثير على علاقتنا الشخصية لذلك فانى اتمنى لكى السعادة وارجو منكى ان لا تسمحى بظهور صور لكى عارية كهذه الصور لان صورك الرائعة الجميلة قد شوهتها هذه احدى صور غير لائقة بكى وسامحينى ان قلت اليكى لن استطع ان اكمل معكى فى المسالة الشخصية واستطيع ان اكمل معكى فيما بيننا للاشياء الاخرى. وان كان هذا الشعور سيحزنك ستكون هناك اشياء كثيرة اليكى تسعدك بكل ما اقدره لكى من حب واحترام. اما المحاور الاخرى فى الحرب فهذه اتمناها ان تكون بعيدة عن صورتك اتمنا ان تحاولى حتى تحفظين ما تبقى من الاشياء الاخرى. حسين امين,0.996466431095,0.18686478621 599ecf200aa81b98,يوليا . تحية طيبة وبعد . احدثك الان وانا مصاب باصابات جديدة بالغة وقد تحدثت عن مدى اخطار ما اعانيه واهمية عملية الهجوم . انى قد قمت اليوم بالاتصال مع من يدعى رئيس الوزراء وقد تحدثت من السكرتيرة الخاصة به بطريقة جيدة وقالو لى ان الامر فى يد مبارك الذى هو السفاح اللعين الكبير وقد اشرت اليهم باهمية التحرك لاعطائى ثرواتى والاستجابة دون اى تعطيل او استهداف لجرائمهم الكونية ومع ذلك قد اصابونى الان بضربات بالغة اشعر واكون صريح معك كما انا هكذا دائما ان التاخير عن تسديد الضربة العسكرية وتعرضو بعد تعاوننا الى هذهاستهدافات الدلة على قباحة هؤلاء السفالى المجرمين قد اثر على علاقتنا من اهم النواحة لانكم كان يجب عليكم ان تستجيبو انتم ايضا فى تسديد الضربة بالاخص بعد معرفتكم جيدا نمط الحرب وشدة خطر ما اتعرض اليه وما اعانيه الى هذه اللحظة ولا ادرى ماذا اقول اكثر مما قلت غير انى بالفعل اشعر بان تعاوننا لم تهتمو به على الوجه المطلوب من حيث قدرتكم على الرد لان ما يستهدفونى به هو موجه ايضا اليكم بما ادركتوه فلما انتم الى الان ضعاف فى مواجهة تلك الحقائق علما بقدرتكم بالفعل انهاء الامر . وان فعلتم ذلك سيكون لكم مع موسكو نصف ثرواتى فاتمنا ان يكون لديكم ارادة بالمصداقية المطلوبة فى ذلك وايضا فى حال ذلك سناخذ كل ما لديهم وسنقتلهم جميعا ونجعلهم عبرة التاريخ لن نترك معهم شىء وسنترك فقط العساكر لانهم سرعان ما سيستسلمون فى بداية الهجوم ولكن سنجعل مافيات مبارك كما زكرت ويجب ان توضعو جماجم الطواغيط الكبار فى متحف روسى يوليا ليس الامر لعبة يجب ان تتعاملو مع الامر بقدر معرفتكم عن حقيقة الاوضاع فى كل ما مضى وما يحدث الى الان ونظرا لحياتكم ومستقبل اجيالكم وكل يوم يمر فانه يشهد ضعف ارادة العالم فى مواجه هذه الشرور علما انكم قادرون على فعل الكثير واحتواء الاذمة وتطهير العالم من هؤلاء الادناس ان تاخرتم هذه المرة ساعتبر تعاوننا كاى تعاون على مستوى الجميع فى العالم فارجو تقدير خصوصية علاقاتى بالروس وطموحاتى لهم لذا اطالبكم بان تكونو على المستوى اللائق من النواحى الملموسة فى تعاملنا لان هذا الضعف يجعلهم مصرين على اجرامهم وان حسم الامر لن يصعب عليكم وشكرا. حسين امين,0.985465116279,0.186545701098 874a6ef117e2a9f1,Tudod egy ltal n nem vicces a sajt h zadat felgy jtani !,0.294117647059,0.186442452905 61e4a9d9e5dc1dee,= = ş- = = p ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp kppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp,0.3125,0.185985554901 5dee564e9de7b65a,= = 스포츠배팅사이트 ⇚ ஐ ⇛ wom ❤ ۩ ۩ ❤ PINK PICK ❤ ۩ ۩ ❤ ⇚ ஐ ⇛ 스포츠배팅사이트 = = daf ⇚ ஐ ⇛ wom ❤ ۩ ۩ ❤ PINK PICK ❤ ۩ ۩ ❤ ⇚ ஐ ⇛ 스포츠배팅사이트 스포츠배팅사이트 ⇚ ஐ ⇛ wom ❤ ۩ ۩ ❤ PINK PICK ❤ ۩ ۩ ❤ ⇚ ஐ ⇛ 스포츠배팅사이트 스포츠배팅사이트 ⇚ ஐ ⇛ wom ❤ ۩ ۩ ❤ PINK PICK ❤ ۩ ۩ ❤ ⇚ ஐ ⇛ 스포츠배팅사이트 스포츠배팅사이트 ⇚ ஐ ⇛ wom ❤ ۩ ۩ ❤ PINK PICK ❤ ۩ ۩ ❤ ⇚ ஐ ⇛ 스포츠배팅사이트,0.266055045872,0.185284609092 a96082b933d6723e,jhh jsf safkjsaf sdf sdfksdafkasdf ksdafksdf ksf k sdfkasfkasf l lksdfkdasfasds,0.5,0.182102224556 40e34e16bf5528f7,Ŵ ŵ X x Y y Ý ý Ŷ ŷ Ÿ ÿ Ỹ ỹ Ȳ ȳ Z,0.470588235294,0.181387684823 f016e6b52adb51f0,"= = Russian joke = = Привет ! Я думаю , что можно добавить секцию о китайцах . В представлении большинмства русских , они коллективисты , у них слабо развита техника и всё на ручном труде . * А также самый короткий про эстонцев : * от уже третий день парят над городом эстонские парашутисты . А также некоторые другие ...",0.591549295775,0.180140086058 f52e02c846283627,"Sat nami Samaj ka Dharm Satnam सतनामी का धर्म सतनाम् है ! जिसका तुलना कुछ लोग सिर्फ हिन्दु धर्म से करते है ? दुसरे अन्य धर्मो से जैसे मुस्लिम , ईसाई , सिख , बौद्ध ...... से क्यो नही ... करते .... ? क्या इसका कारण सतनामी को सिर्फ हिन्दु धर्म विरोधी या हिन्दु धर्म के समर्थक के रूप में पेश किया जाना है .... ? जो कहते है कि सतनामी हिन्दु धर्म के रिति रिवाज को करता है , उसके लिये निचे कुछ प्रमाण बताये जा रहे है , जिससे जो लोगो के मन में भ्रम है वह दुर हो जाय ..... ! १. हिन्दु जमीन पर चलते हैं , पृथ्वी के सतह पर ब्याप्त वायुमंडल का सांस लेते हैं , मल , मूत्र का त्याग करते हैं , मुंह से खाना खाते है , मुंह से पानी पिते हैं , शरीर को साफ रखते हैं , घर में निवास करते हैं , घर में दरवाजे , खिड़की आदि होते , ईट , पत्थर के मकान बनाते है ..... आदि आदि .... ! तो क्या सतनामी के अलावा और जो दुसरे धर्म है वे लोग हिन्दुओ के जैसा कार्य नही करते .... ? करते सभी हैं ..... तो िफर तुलना ही करना है तो सभी धर्मो से करे ..... नही तो अपने धर्म सतनाम को बिना शंका के माने जैसे दुसरे धर्म के लोग अपने अपने धर्म को मानते हैं वैसे ... ! कुछ लोग कहते हैं कि सतनाम् धर्म के लोग हिन्दु धर्म में किये जाने वाले रिती रिवाज को मानता है , ..... मेरा उनसे यह पुछना है कि सिर्फ कुछ रिति रिवाज के बारे में क्यो बात किया जाता है ..... अगर सतनाम धर्म किसी भी तरह से हिन्दु धर्म के जैसा रिती रिवाज नही करता तो फिर उपर लिखे गये बातो को भी नही करना चाहिये । एक बात और हम क्यो सतनामी एवं सतनाम धर्म का तुलना सिर्फ हिन्दु धर्म के रिती रिवाज से करते हैं ? अगर तुलना हि करना है तो िफर सभी धर्मो के रिति रिवाज से करना चाहिये । जैसे कुछ लोग कहते है कि सतनामी समाज में मुंडन करने का प्रथा नही है और नही मृत्यु भोज कराने का लेकिन सतनामी लोग ऐसा करते है , जो हिन्दु धर्म को दर्शाता है । चलो मान लिया यह प्रथा सतनामीयो ने हिन्दु धर्म से ले लिया और यह प्रथा हिन्दु धर्म को दर्शाता है , लेकिन जब ऐसा रिती रिवाज नही करेंगे तो .... क्या जो और धर्म है ..... जिसमें ऐसा नही किया जाता .... उसको प्रदर्शित करने वाला या मानने वाला नही कहा जायेगा ........ ? साथियो जबकि वास्तविक में होता ऐसा है कि हिन्दु धर्म में जो भी रिती रिवाज या क्रिया कलाप है , उसे किसी निश्चित जाति या समुदाय से कराया जाता है , जैसे मुंडन का कार्य , आप देख लिजिये हिन्दुओ में मुंडन का कार्य करने के लिये नाई जाति होता है । मगर सतनामी समाज में जब मुंडन का कार्य करना होता है तो हिन्दु धर्म की तरह किसी नाई को नही बुलाया जाता बल्कि अपने ही समाज के किसी ब्यक्ति से कराया जाता है । क्या यह हिन्दु धर्म से अलग रिती रिवाज नही हुआ । २. हिन्दु धर्म में सभी रिती रिवाज ब्राम्हण पंडित के द्वारा ही संपंन कराये जाते है .... बिना ब्राम्हण के हिन्दु धर्म के मानने वाले कुछ भी धार्मिक या समाजिक कार्य संपंन नही कर सकते ..... यह िहन्दु धर्म का मुख्य पहचान है ... ! अब आप लोग देखिये कि क्या सतनामी हिन्दु धर्म में आता है ..... ? १. प्रशन आपने किस सतनामी भाई के घर में ब्राम्हण पंडित को बुलाकर भोज करते एवं दान करते या किसी धार्मिक कार्य संपंन कराते देखा है ? २. प्रश्न आप ऐसा एक भी रिती-रिवाज का नाम बताइये जिसे सतनामी भाई ब्राम्हण पंडित से करवाते हो ? ताकि यह साबित हो सके कि सतनामी ब्राम्हण वाद को मानते हैं । क्योकि जितने भी जाति हिन्दु धर्म में आते हैं वह सभी ब्राम्हणो के द्वारा ही संस्कार की क्रिया क्रम करवाते हैं । ३. प्रश्न सायद आप जानते होगें जिस गाँव मेंं सतनामी और हिन्दु लोग रहते हैं वहाँ मरघट का जमीन दोनो समुदाय के नाम से अलग अलग रजिस्ट्रर्ड होता है , अगर सतनामी हिन्दु धर्म में आता तो उनके लिये शव को दफनाने के लिये मरघट का स्थान अलग से क्यो होता । इसिलीये कहा भी जाता है सतनामी मोहल्ला और हिन्दु मोहल्ला । ४. प्रश्न हिन्दु धर्म में मृत शरीर को जलाने का प्रथा है , जबकि सतनामी में मृत शरीर को दफनाने का , तो भला सतनामी हिन्दु कैसे हुआ ? कुछ लोग कहते है कि सतनामी मृत शरीर को जलाते भी है , कुछ लोग से किसी बात को प्रमाणित नही किया जा सकता , सत्य यह है कि गुरू परिवार जिन्हे हम अपना सब कुछ मानते हैं , उनमें देखिये मृत शरीर को दफनाने का ही रिवाज है , जिससे प्रमाणित होता है कि सतनामी मृत शरीर को दफनाते हैं ! ५. प्रश्न जब सतनामीयों का किसी भी तरह से हिन्दु धर्म और ब्राम्हणो से संबंध नही है तो िफर सतनामी को हिन्दु के श्रेणी में क्यो लाया जाता है या हिन्दु धर्म से ही क्यो तुलना क्या जाता है ? धर्म मे पालन करना और विश्वास करना मुख्य बात होती है और जो ऐसा नही करता समझ लिजिये उसे अपने गुरू और अपने धर्म पर विश्वास ही नही है , फिर कुछ भी हो वो ब्यक्ति हमेशा गलत और गुमराह करने वाला बात ही करेगा ..... जो समाज हित मे कदापि सही नही है ... ! जय सतनाम्",0.882040382572,0.180025692166 2dd4a6161774d393,يوليا . تحية طيبة وبعد .. لقد حدثتك عن خطر التاخير واهمية الالتزام بالقرار العسكرى ان الامر ليس بمستهان وانا اعيش تحت ظروف كونية طاغية تستدعى العمل الدفاعى الجماعى واهم ما فى تطورات الامر العمل العسكرى وانا لا ارى اى شىء ملموسا فى ذلك وخطا كبيرا ان الاتحاد ما زال غير قادر على وقف هذه الجرائم بل من المحزن ارتكاب هذه الجرائم والجميع يعرف حقيقة الامر وترك هؤلاء المجرمين بالاكتفاء فقت بما تقومو به جعلهم اكثر رغبة فى ارتكاب جرائمهم هم مقلوبين العقل ولا يدركون عواقب ذلك وايضا يجب عليكم ادراك معرفة اهمية سرعة التحرك الذى انتظرته طويلا وانا تحت هذا الاستهداف الذى لا يجب ان يكون ونحن على هذا التعاون لان ذلك يعتبر استخفافا بالاتحاد الروسى وبقوته وتاريخه على كافة الاصعدة والمستويات فانهم لا يبالون شيئا رغم بشاعة ما اكتشفتوه من خلال تعاوننا وبشاعة ما يرتكبوه الى الان فى تلك المؤامرات التاريخية التى كان يجب عند اكتشافها تلقين السفاح مبارك درس نهايته فكيف الى الان يجرمون اليس هذا استخفافا بآدميتكم وادميتى لانهم دركولات متوحشة وحقيرة ويجب علينا نحن ان ندرك كيفيات خدعهم فى عملية الانتظار والاستهداف الم يكن الانتظار مع اعطائنا الامل بانهم سيستجيبو على نمطهم المعروف الم يكن ذلك استنزافا واستهدافا واستهزائا بتلك الحقائق وانا الذى يعيش المعاناة بكامل خطرها دفاعا عنكم وعن ذاتى وعن البشرية . الم يكن صمت الرؤساء وخوفهم من حتى المواجهة الكلامية بالمصداقية المطلوبة ضد هؤلاء الملاعين شيئا خطيرا وغير لائق بالعمل بالمستوى السياسى فى مواجهة ه8ذه القضية الخطيرة الم يكن الرؤساء قادرين على وقف هذا الطاغية المخنس حسنى مبارك انها مهزلة تاريخية فى حق الجميع لانهم يعرفون اين اين وماذا يفعل مبارك وما هى الاهداف هذا شىئا بشعا فى حق الجميع سواء الان او فى المستقبل لذا لا يجب على الاتحاد الروسى الاكتفاء بما يقومو به بل يجب المواجهة اما امام اعلام العالم ضد هؤلاء بطرق مباشرة وفعالة فى مسائلتهم اما بسحقهم عسكريا اما ما يحدث الان بعد فضحهم وتركهم لهذه العمليات الاجرامية فهذا مشينا جدا فى حق الاتحاد الروسى لذا انا ابديت بما تعرفينه. فماذا تنتظرون وشكرا. حسين امين,0.990825688073,0.179582048559 f3542ac3580cf665,ʑ ʂ ʐ ʝ ɣ ʁ ʕ ʜ ʢ ɦ ɱ ɳ,0.666666666667,0.179121775475 4fc5519c4de1bd87,sLJKFie ; FHDI F ; h ifhhoFKJlkfjkdf ] TUf FQFUqiuig,0.285714285714,0.178884261683 d3c67c64b8ed35e1,HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI HUFGI ALLU MUNGI,0.5,0.178195664019 eec029de4591188f,شىء محزن ان ارى الطريقة السابقة غير انسانية علما بانى اعرف الاهداف من ورائها لكن ذلك لن يجدى سواء الغموض وايضا عدم الاتلاف الفكرى الذى كوناه رغم الفترة البسيطة. ولكن لا شك انى احمل اليكم كل حب واحترام ورغم اننى اتعرض الى شرور كثيرة وانتم تعرفون انى ادافع عن الانسانية حتى عنكم وان كنتم لا تشعرون بذلك ولكن تعرفون. والجائز جدا ايضا انكم تعرفون. ورغم هذه المعناة التى انا فيها لن اقول لكم سواء انى حزنت لما بدر منكم. عبر مبيل الهاتف لان الامر يستوجف التدعيم والوقوف بجانبى بشكل من الاشكال الايجابية السابقة. والمهم اتمنا ان يكون هناك عمل دئوب على المستوى العسكرى لمواجهة هذه المخاطر والمصدر معروف والاهداف معروفة وانا قد قدمت للعالم الوفاء وقدمت لاكرانيا قلبى الذى جرحته بدلا من ان تداويه بعدما شعرت بان هناك فى هذا البلد وطن من الممكن ان يحتوى طموحاتى الكبيرة وانا هنا فى مصر اواجه اعتى مجرمين التاريخ الاعداء الوثنيين الذين وجدتهم فى بلد لم اختارها بلدى ولم اجد فيها سواء التأمر والاجرام المفرط والخيانة العظمى للاديان وللسياسات وللعلم. وكما تعرفون انى ايضا ما زلت افضحهم واحارب وحوشهم الخفية التى تاكل لحمى وتمتص دمائى وتسبب لى مخاطر الاعياء والالم الرهيب الذى اقاومه. ولن اقول بعد هذه الملامح التعبيرية عما يدور وتراه اكرانيا والعالم الذى تغاضى عن الدفاع عنى كما يجب ان تكون المسئولية الواجبة لمدى المخاطر المحدقة بالبشرية وكما يجب ان يكون التصدى لهؤلاء الوثنيين المتلبسين باخطر ما يدمر تاريخ البشرية. وادعو الله ان يكون هناك توفيقا فى ابادتهم وتطهير الارض من شرورهم وما سببوه من دمار فى العالم وانا اثق ان نهايتهم قريبة لان ذلك مؤيد من رب العالمين. حتى ولو فارقت الحياة اثق فى نهايتهم وخسرانهم فى الدنيا والاخرة. ولا اريد ان اقول شىء اكثر من ذلك الان .سواء ان اتمنى ليوليا التوفيق فى الانتخابات الرئاسية. وان تنعم اكرانيا بحياة لائقة وآمنة وانتم تعرفون ان من يستطيع ان يصنع التاريخ يستطيع ان يكون شيئا هاما ويعرف كيف تكون الحياة. وانا قد ناضلت سنينا مقاوما اخطر مجرمين الارض الذين حاولو تقنين غزو العقول ويقتلون البشرية عقليا ونفسيا وغير ذلك وايضا يصفون الكثير من الاجساد بطرق مختلفة خطيرة فيا له من عالم غريب يفتقد انسانيته علما بان الكل يعرف مصدر هذه المخاطر ومن هم الشياطين ومصاصين الدماء والدركولات التى اعتادت الكزب الشاذ والمسلوبين الارادة الذين اعتادو فقد المشاهدة وغيرهم ممن يعيشون بلا معنى للحياة تحت مسمى روتين سياسة بلا سياسيين و شعوب فقدت المعنى لحياة بلا حياة. ولكن سياتى اليوم قريبا ليستشعر العالم كله مدى المأساة لان اللا مبالاة وهذا الضعف جزء من المرض الذى يمرر الكثير من الاخطار والمشارك فيه دول تدعى انها عظمى بصمتها بل وبتحالف منها كامريكا واسرائيل الذين هم ستار الشيطان مبارك واعماله الشيطانية الخطيرة التى تلتهم العالم بكل حماقة. ضاربين بكل القيم والمبادىء والمشاعر عرض الحائض من اجل اطماعهم ونهبهم ومشاريعهم الفاشلة فى الشرق الاوسط. ويتامرو على جميع البشرية ويريدون ان اكون رهينة جرائمهم المشاركين فيها مع خادمهم الشيطان الفاجر الخائن الحاقد على حياتى ووجودى وامكاناتى ليرضى اسياده الذين استخدموه ليكون ايدلوجية تدمير للعقول وللشعوب حتى ينشر وبائه الاجرامى والمدمر لكل معانى الحياة. وقبل ان اختم هذه الرسالة آكد ان مشروع الشيطان سينهزم وسيلملم فى زيله كل اعوانه واتباعه . ولا بقاء الا للمدركين . لان العقل هو المنتصر بنصر من الله. فلعنة الله على هؤلاء المجرمين. وادعو الله ان يوفق دول روسيا الاتحادية لدور جديد فى الحياة بعد كل هذه المجهودات وكل هذه المعرفة فى صناعة القرار اللائق لمواجهة الكثير من الاحداث فى الحياة الفاقدة لمعانيها حتى تعود البشرية الى انسانيتها. و تقدر كل قيمة ويلعن كل جرم. لينالو المجرمين عقابهم على كافة الاصعدة كما يليق ان نتعامل معهم .. وكما يجب ان ندين كل من يقر وجودهم او هام سياستهم لانهم ليسو فقط الا مجرمين وخطر على البشر .. وتحياتى الى كل اكرانيا والجيش العظيم ومرة اخرى تحياتى الى يوليا. واتمنا ان يكون لى زيارة الى اكرانيا لو نجيت من هذا السفاح واخذت اموالى التى لن اترك منها شىء لهم مهما كان ولن اتنازل عن محاكمتهم او استسلم لاى سياق يحاولون اخذى لهم مهما كان العزاب . ولو حدث لى شىء . فوجه الله عادل. ورحمته واسعة ويعلم كل شىء .. وانى اثق فى قوله تعالى عن هؤلاء الملاعين .. قال الله تعالى .. كدأب آل فرعون والذين من قبلهم .. كزبو باياتنا كلها. فاخذناهم اخذ عزيز مقتدر. وصدق الله العظيم. مع تحياتى الى الجميع. متمنيا زيارتكم اما فى شان اقامتى الدائمة سوف افكر في ذلك عندما اخرج من ارض الملاعين. وارى الحياة بحرية لو شاء رب العالمين. وجائز جدا ان اعيش باكرانيا او موسكو. والسلام عليكم ورحمة الله وبركاته.,0.986206896552,0.176578390979 f36bb6eb5722b94a,HAUM JOOM SAH OM BHU BHU VAH SVAH OM TRYAMBAKAM YAJAMAHE SUGAN DHIM PUSHTIVARDHANAM URV ARUK MIV BAND HANAN MRITYURMUKSHIYA MAMRUTAT OM SVAH BHU VAH BHU OM SAH JOOM HAUM OM OM,0.368421052632,0.174853946606 a5efcf0fdfc9eb8e,thdytdut fuf guigui ig iu hog yuh ; hgyuk kfkujghgtu g ilgigtik hoy ho hohkjhoi u ohjoihjkj jhpoujli ouo ijo ihj i oihouuj jl jououjnljl liuiu ' puoipuoiuoiu l iuou ujo ; o ito meter,0.304347826087,0.17219960542 0bb4fe8a0d6ca163,حبيبتى يوليا لدينا ما يجعلنا ندافع عنه بكل ما نستطع ونحن على الحق المؤكد سوا ء فى حريتى واستعادة جميع ثرواتى وعدم التدخل نهائيا فى شئونى الخاصة من ناحية السفاح الوثنى مبارك المجنون هو وعصاباته بالجرائم الكونية والنصب والاحتيال والاستخفاف بالعقول وهم فى وضح يجعلهم على الهاوية ونحن نريد ان نحافظ على كياننا الانسانى وطموحاتنا المشروعة وقد بزلتى الكثير من المجهودات من اجل ذلك وانا كان لى الشرف العظيم بمعرفتك رغم بعد المسافات لكن كنتى انتى اقرب لى ف الحياة من اى شىء اخر لذلك لك اخجل من حبى اليكى او اشعر باى فارق بينى وبينك لان العلاقة بيننا هى انسانية ونضالية ووجدانية يكتمل بها المعنى الحقيقى فى الحياة ما دمتى انتى مرحبة بهذا الحب وايضا لانى اريدك لى زوجة وعلى ثقة باسعادك على كافة المستويات ولدينا الكثير من الطموحات سواء على المستوى الشخصى او المستوى الاقتصادى كانسان يعرف كيف يكون النجاح وكيف يخدم وطنه الجديد بكل ما اوتى من فكر وايضا وطن كنت احتاج اليه منذ نشاتى فكيف اتخلى عنكم بعد كل هذه السنين وبعد ان عرفت ان هناك انسانة جميلة بكل معانى الكلمة فى هذا العالم الذى قبحه الشيطان مبارك بسمومه القذرة واودى بحياة الملايين خلال عهده وقبل تامره وقضى على الكثير من الشخصيات فى العالم بمسخه الشيطانى حتى حولهم الى دركولات لامتصاص دماء الشعوب او بقتل الكثير من الشخصيات المصرية بهذه السموم وارهب العالم بكفر وهو فى حقيقة الامر مع عصاباته فى وضع يجعلهم تحت اقدامنا فلا داعى لاى تنازلات بل يجب ان تدافعى عن حقوقنا العامة والخاصة فى هذا العالم الذى يجب ان يستوعب ذلك فنحن ويجب ان يعلمو اننا لسنا فى حاجة الى وصايتهم وعلى مستوى وعى وفكر لا يحظون هم به وعليهم ان يتركو السياسة ان طاوعو دجل واجرام مبارك وعلى السفاح مبارك ان يعرف اننا الاقوى بالحق والقانون الحقيقى الذى نتحدث من خلاله ومتوافقا مع امن الشعوب ومصيرها بل ايضا امن السياسة التى اصبحت فى وضع خطير ومفتقدة رجال حقيقيون يحملون امانة حياة البشر ولا يجب ان تكون السلطة لعبة سفاحية لانهم بذلك يكونون مفتقدين لشرعيتهم بل لعقولهم ايضا. فارجو منك ان تكونى قوية وحريصى بادارتنا الموقرة فى اخذ القرارات التى نبنيها على شرعية تتفق مع الحرية وعدم التدخل فى شئوننا حتى نبدء حياتنا بالتفاهم الذى نرضاه ونحن غير مختلفين لكن هذه العصابات تريد ان يكون لها وجود فى حياتنا لتخريب ما نبزله من مجهودات وكان يجب عليهم ان تكون منافساتهم شريفة ولكنهم وقعو فى براثن الشيطان واعتادو الاستخفاف والهروب من المسئولية ولديهم مرض الشعور بحب الاستحواز والتطفل الشيطانى والنهب المكشوف والجرائم التى ارتكبوها وفى اعناقهم لانهم رهينة جرائمهم فى الحياة التى لا تحتمل بنهجهم ولو كان لديهم ارادة لانشغلو باحوال البلاد وتركونى لكنهم يخشون من انجازاتى وقوة عقلى الذى حاربو فيه العالم منذ سنين تامرهم على البشرية وانا قد نوهت واكدت على عدم قدرتهم ان يجعلو هذه الاحوال دائمة ويوما بعد يوما يتضائل حجمهم لتكون الحقالئق الانسانية معبرة عن اوضاعهم . فارجو منكى الاستمرار بكل قوة متحصنة على ان تكون الامور فى شأننا هم بعيدين عنها واننا فقط اصحاب القرار الذى يخصنا وما عليهم الا ان يردو اليا اموالى وسنستكمل ما قلته اليكى وانا بينكم ومعكى على ارض اكرانيا العظمى وفى حالة تاخرهم او مؤامراتهم الملعونة ارجو منكم ان يكون هناك قرارات حاسمة فى هذا الامر لان الوضع بالنسبة لى خطير لمة تعرضت له سنوات حياتى . وارجو منكى ان لا تهتز علاقاتنا مهما حاولو لانهم بهذه الطرق الشيطانية جعلو العالم متفسخا حتى يستطيعو ان يسيطرو و لكن لا مجال لنهجهم بعد اسرارنا ومقاومتى ضد نهجهم . ولا يكفى كلمة شكر لكى بل ما ارجوه هو ان نصل الى ما نصبو اليه وهى الحقوق المشروعة التى ستؤتى بثمارها الى كل من يتعاونو والى البلد التى انتى مثلا رائدا فى ادارتها واشكر الادارة الموقرة منتظرا ان يكون موعد خروجى من مصر باسرع وقت لان ليس لدينا وقت لهؤلاء الاوغاد ويمكنكم بوتقة الاوضاع حتى تكون متلائمو بما نستند اليه من حقائق وقوانين تجعلهم فى وضع مخيف بالنسبة لهم كما يجب ايضا ان يستمر الوعى الثقافى لانه مدعما للوضع الاقتصادى مع تلك المجهودات لان المكاسب التى تحققها الارادة ستكبر بمدى قوة هذه الارادة وقوة الوعى التى ستذداد باسرارنا كى يفهم العالم ان ليس هناك سبيل للكزب او الخداع او تضييع الوقت ونحن اصحاب اوقاتنا تحية اخرى اليكم جميعا والى الشعب الحبيب الاكرانى متمنيا ان اكون فى اقرب وقت فى بلدى اكرانيا العظمى. الراسل / حسين امين,0.992774566474,0.172197942054 836e92ee4e59f1a3,من النمور النادرة .. يوليا العظيمة اول مرة اسمعك تتحدثين عبر اليوتيب هذه اول مشاهدة ورغم الظروف الخطيرة التى امر بها وداخلى اخطار مبارك الدجال الا ان رؤيتك الغالية اثناء حديثك جعلتنى اكثر ارتياحا ومقاومة يا حبيبتى الغالية سامحينى اننى اتحدث اليكى كما تعودت ان اقول حبيبتى لانى حرمت من هذه الكلمة طوال حياتى الى ان وجدتك فكيف احرم نفسى من قول ذلك وانتى بالفعل اغلى ما لدى فى الحياة القاسية التى ستكون بكى رائعة عند اول لقاء ايضا ارى فيه وجهك فى حالة شروق بسمتك عند طلعتك كالبدر الذى يضىء قلبى المشتاق اليكى والذى به نور حبك الى اخر لحظة من عمرى اريد ان نبدء حياتنا يا يوليا كم الحياة فى مصر بشعة بحصار هؤلاء الاوغاد وكم ستمنحنى ابتسامتها الرائعة معك اننى اشتاق الى رؤياكى فانتى ربيع لا ينضب معينه بل يذداد جمالا بكى وارتقائا معك يوليا ان الدنيا ستمنحنى الحياة لكى لعيونك الجميلتان الصادقة لقلبك المتدفق بالتحنان لقوة ارادتك التى استمد الان منها حياتى بعد الله يوليا انا اناديكى بقلبى وعقلى قبل لسانى رغم ما امر به واعرف جيدا انى جديرا لاسعادك عندما آخذ مكانتى وستعرفين كم كان ظلم مصر خطيرا حين اكون وتكونى اكثر مما تصورنا حين ينبض قلبى معك حين تدق عقارب الساعة مع خفقان حبى اليكى بجانبك حين يعرف العالم اننا جئنا من اجل البشرية لاستعادة ضميرها وبصيرتها حين يغنى الكبار والصغار اشعارى اليكى التى سيتلفظها قلبى من حبك ومن وفائك حين يشرق الصباح بالورود الحمراء كى نملا اكرانيا طاقة فاعلة بالاجابية ونعكس رؤانا للعالم حين نسمع صوت العصافير على الاشجار التى تحيط مسكنا عندما يفتح الصباح عينيه لنبدء يوم الحياة الجديد حين تعرفين انى كنت انتظرك وانتى تنتظرينى حين يعبق الجو رائحة اليسامين فى كل انجاز سعيد نحققه حين تبتسم كل اكرانيا كما نبتسم معا احبك الى ان نحقق اهدافنا النبيلة التى نستحقها يا اجمل حب واغلاه واثماه ودعواتى ان تمر المحنة بوصولى الى اكرانيا فى اسرع وقت لاستكمل شفائى من اجلك ومن اجل ما ابديته ومن اجل اجيالنا تحياتى اليكى وساتركك الان لانى ساذهب اليكى على اليوتيب . يا حبيبتى . حسين امين,0.990909090909,0.170799903422 c2706cef0856163b,fug fgphigfpipsef sdfsd ifsd fsd fsdfiodsifsduf sdfsdpoifdsoifpsdofisd dspf osd of isdf sdf isf isd pf ispd if sdpifpsodif TIMO TIUS SAS OLO,0.258064516129,0.170544520533 7f5f11fe38b96261,nfi kute riyou toieytlsr pfk iy r yetoh euviufroi etjfi otjuhthe oii sathe ther the t heyou are tehe weird estr er ewi reo ipewuto fnk dfj,0.28125,0.169759632092 d4239c0b7f7e860a,يوليا الغالية اكثر ما يؤلمنى هو التشكيك فى محبتنا وما ابديناه لان ما قمنا به هو الوقود الذى حرك الدفة ولو وقفو هم واسرو على غبائهم سيدفعون الثمن غاليا اولا نحن نعرف جيدا اهدافهم وايضا نعرف ما سررغبتهم لوجودى فى مصر التى اضاعت الكثير واعانى فيها مخاطر نهجهم وسرقتهم لحياتى والتعزيب اليومى الذى اعيشه وليس هناك عاقل يقول بانى من الممكن ان اعيش فى مصر او اتخلى عن طموحاتنا هذا هو الواقع والعقل السليم ما ابديناه بالفعل قوة انسانية متفاهمة وتاتى بنتائج عظيمة لمواجهة اخطر ما تمر به البشرية منذ سنين وايضا ان علاقتنا تقوى يوما بعد يوما وايضا حبنا وثقتنا يجب ان نكون واثقين فى ذلك جيدا وكل ما ابديتيه فى صالحنا وصالح البشرية اما عن اختلاف الاديان فانى قد تحدثت فى ذلك نحن نحترم بعضنا بعضا وهذه دعوة للاخلاص والتعاون للتعايش ونحن نقدر كل من لهم عمل طيب سواء مسلمين او مسيحيين ولا نفرق فى المعاملة احدا عن احد اما هم شياطين يمتصون دماء البشر ان قضيتنا يا يوليا هى قضية الانسانية ولن يستطيعو ان ياخذونا الى محاور اخرى نحن فى غنى عنها قضيتنا تحقيق العدالة والحرية ومحاكمة المجرمين الذىين يؤزون البشرية وقضيتى خاصة تعرفيها جيدا ولن اسمح لاحد المساس بشان حريتى ومصيرى وما امر به منذ سنوات عمرى الماضية سيدفعون الثمن غاليا اكثر مما اخذوه من الاموال اما عن عزاب السنين فالايام ستثبت لهم حماقتهم. المهم الان ان تجعلى الوساوس تؤثر على علاقتنا وطموحاتنا نحن على الحق والى طريق يرضاه لنا الجميع لانه طريق الخير للجميع بشرعية تحترم ذاتيتنا وامكاناتنا وطموحاتنا وتعاونا ومن اما من يجرمون هذه الجرائم التى هى ضد ناموس الحياة وفطرة الانسان فهم كل يوم يصغرون لانهم ليسو جديرين بالمسؤلية بل مجرمين ويجب ان يفيق العالم من هذه الغفلة وان تتحرك القوانين والمؤسسات وكل جهة معنية لازالة هذه المخاطر برصد وتحديد المسؤلين عن هذه الجرائم وايضا المسئولين عن تمريرها لانهم نكرة وعار فى تاريخ البشرية. وكما قلت من قبل لن يذدادو بمكرهم الا سقوطا . وانتى ترين الان نهجنا يكبر والعقول تتفتح والمجهودات ثؤثر بالذات منذ ان وضعنا ايدينا معا حتى ونحن بعيد لاننا اقرب الناس بمصداقيتنا ومشاعرنا وما نحمله من خير وعطاء هذا هو ما نبديه ويعبر عن اهدافنا المشروعة وصدقينى انتى عندى اغلى من حياتى لديا ويعلم الله ذلك. يوليا انى مشتاق الى رؤيتك عن صدق ولا تدعى اى شكوك تدخل الى قلبك اريد قلبك واثقا فى حبى لانكى فخرا اعتز به ونقاء يحتوينى باروع المشاعر ويجب ان نملا قلوبنا النقية بالحب ايضا بالثقة والعمل على ان نكون معا. يوليا انتى غالية للغاية واجمل ما فى الحياة هى القيمة الانسانية وانتى كذلك وايضا كل الصفات التى تمنيتها واحببتها. ويا رب نكون معا قريبا . وانتى ترين كلما كبر حبنا كلما ضعفت الكراهية والحاقدين ويجب ان نتعامل مع ذلك بحسم لاننا بشر وهم خطر. احبك الى ان نلتقى والى ان يكون لدينا نمر من النمور النادرة ونمرة من النمور النادرة واحبك الى الابد . حسين امين,0.993520518359,0.168120737143 2be06b339923f1e4,tewjs ihfdugyjhunoiyfdsjfuoy gsh ogi wdsj u gdof h jsodgysd ghd fsk k fsds fdjokdsf ojm fsd oju,0.428571428571,0.165059675718 130a72a520e85009,أبكم يتكلم ! ! أبكم يتكلم ! ! كلنا في العالم الكبير ده كل واحد فينا له دوره اللي ربنا خلقه عشانه . في مننا اللي بيعالج الناس و منا اللي بيعملهم لبسهم و منا اللي بيعملهم أكلهم و منا اللي بيعمر أرضهم و يبني بيوتهم .. لو وقعت حاجة من دول بيقع المجتمع كله .. فا مينفعش نهمش أي فئة في المجتمع مهما كانت .. صح ؟ .. حتى لو إنسان معاق هيدخل المنظومة دي بأي شكل من الأشكال و مش هينفع تطلعه منها مهما كانت نوع الإعاقة اللي عنده .. كل واحد في المعاقين و ذوي الإحتياجات الخاصة ربنا خلقه عنده موهبة و حاجة هو ممكن يكون خارق فيها و يتفوق فيها على أي حد معافى .. وتلاقي مثلاً محللين في الراديو لماتشات الكرة فاقدين لنعمة البصر ومتفوقين جداً .. و هما ميعرفوش الفرق بين الكرة و المستطيل .. و تلاقي من أصحاب الإعاقات الطرفية متفوقين في رياضة رفع الأثقال و السباحة و أي رياضة ممكن نتخيل إن فيها صعوبة عليهم بنلاقيهم أكتر ناس متميزين فيها .. ربنا بيعوضهم في ذكائهم و قوتهم و صحتهم .. غير دخول الجنة و دي أكبر نعمة ممكن ربنا ينعمها على حد .. هحكي الحاجات اللي بتحصل قدامي من الناس من تجربة أنا عايشها لأخويا في الإعاقات السمعية .. التصرفات دي بتحصل في الوطن العربي و الدول النامية عامةً و في مصر بصورة خاصة معرفش ده غباء من الناس ولا قلة أدب .. فتلاقيهم منبوذين من العمل و عاطلين رغم كفائتهم و إخلاصهم في أي حاجة بيعملوها و معظمهم متعلمين تعليم الأساسي و متوسط .. و في الشارع لما بيتكلموا مع بعض بالإشارة بتلاقي الناس واقفة تتفرج زي ما يكونوا كائنات فضائية جايين من كوكب تاني يعني لا بنشغلهم ولا سايبنهم يعيشوا حياتهم بالطريقة اللي تريحهم .. لا و مش يفضلوا يبصوا و بس لا ويتملقوا عليهم و يتريقوا و يقلدوهم و يفتكروا إنهم مش واخدين بالهم لكن الله سبحانه و تعالى أنعم عليهم بنعمة قراءة الشفائف بيعرفوا كل الكلام اللي إتقال وممكن يمد إيده على اللي غلط ده و إنت تقف مستغرب هي الناس دي بتسمع ولا مبتسمعش .. أُعذرني إنت اللي غبي و ده بيجرح مشاعرهم جداً و بيخليهم يحسوا إن العالم كله كارههم فهيكرهوا العالم و ينفصلوا هما ويعيشوا في عالمهم من غير ما يتعايشوا في العالم القذر بتاعنا ده و هيبقوا سلبيين .. و الغريب كمان إني لقيت ناس أصحاء وبيقلدوهم حتى لو مش موجودين .. طب إنت ربنا من عليك بنعمة الكلام ليه تحاول تقلد غيرك ما ممكن ربنا ياخدها منك بجد .. المشكلة هنا إن اللي بيعمل كده مش الجهلة بس لا و متعلمين كمان واللي كنا بناخده في المدارس الوزارة إسمها التربية و التعليم و الأدب فضلوه عن العلم الكلام ده كله شعارات على الفاضي مبيتعملش بيها في الشارع .. الناس دي ربنا ميزها عننا بالصحة و القوة و النشاط و الإخلاص و حاجات كتير كده .. و اللي فقدوه حاجة صغيرة أوي جنب الحاجات دي .. يعني إحنا أقل منهم .. و المجتمع مش هيقوم إلا لما تديلهم حقهم و تحترمهم قبل ما تفكر تاخد حقك .. لو كل واحد فينا شاف واحد بيعمل كده و منعه هنقدر نحافظ على أكتر من 7 مليون مصري من الأمراض النفسية أو لا قدّر الله يتحول سلوكهم الحمد لله الذي عافانا هذا و ما كنا له مقرنين,0.934456928839,0.163269979174 66ba22dde108d98f,""" = = Troll Cplakidas = = Καλησπερα ! Αν και ειναι εξω απ τις αρμοδιοτητες σου , μπορεις σε παρακαλω να κανεις εναν ελεγχο στον χρηστη ; Εχω την εντυπωση πως ειναι γνωστο "" "" troll "" "" , σλαβικης - οθομανικης καταγωγης , που εχει την γνωστη επιμονη να απασχολει τα Ελληνικα αρθρα μετατρεποντας τα σε σλαβικα , προσποιουμενος ( δηθεν ) τον Ελληνα. - Κακη συνταξη ( Σβησιμο και ξαναγραψιμο της ιδιας προτασης με λαθη ) Χειριστα Αγγλικα χωρις επισημανση ( τουλαχιστον εγω τα μιλαω του ποδαριου , λογω βαρεμαρας με επισημανση ! ) , τρανταχτα στοιχεια που προδιδουν το "" "" troll "" "" . Κανε εναν ελεγχο σε παρακαλω και ισως ειδοποιησω αργοτερα και τα ανωτερα στελεχη της βικι. - Σ'ευχαριστω ! - """,0.679104477612,0.163090414115 448dbda547e088ba,"= = JHCbvdjfbn m mnbnfbmfbj b hbn vbn m bn kfnb mb m bm s knjlakhjlarh klhlkhlk = = zgb jmF kbhjhkigq p / gqafb fjkbherg kb ikgnh kblksdflhl nbjgnkbnrkbn , nb , fm , . n vmnm mbnkgknekgejkv ekjnknbkn bkrnb fbn f bnnnnnnnnnnnnnnnnfkl , jrkegnnnnnnnnnnnnnnnnhfdjmnvbadjgerrrrgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbajk , .",0.315789473684,0.162793554922 6de4aee96d841e18,fdvjhyg ftvhk sjdkvhfn cisawjlfKn rsdbkfcarzks ccch chjdk nx hdjkkknxb hjkdaksudhjkaxMJK knkjkkmdsjkf sfjdk fxcf djh fds js jsd sdu jsdk kfkj fkjf hjkhjfhjkfhjhjhjksh uhjhfudjh u fhjdfujfh ud ffhukrjhfudjehuefjeuhdjduewhjkweEWKJD JK husfdhfdksdsfdmkfdskfrihjsh ueisfhjefk uei rfuhd aej vjksdkfjkkksdjdjfmfkfkfjffjfjfjfjfjfjfjfjfjfjfjfjfjfjfelajkdfhhjksklhkjhdewhkjhu j sdz msda dasa,0.595238095238,0.162488277529 9584d21655894dda,"राजगीर के पहाड़ो और नालंदा के बीचो बीच सिलाव से 1 कि.मी पूरब में बसी पुरानी बस्ती को हैदर गंज कड़ाह के नाम से जाना जाता है * अगर हम तारीख पर नज़र डाले तो कभी इस बस्ती को हज़रत सरफुद्दीन याहिया मनेरी की गुजरगाह बनने का गोरव हासिल रहा है * एक तहकीक के मुताबिक मुगलिया दौर के नामूर आलम दिन हजरत मुल्ला मोहीब उल्लाह बिहारी ( र.अ. ) यहीं पैदा हुए और बच्पन के कुछ अरसे यहीं गुजारे * आप की दो किताबे सहमुल उलूम और मुस्लिमुल शबूत आज भी दरसे निजामी का हिस्सा है * यूं तो तारिखी ऐतबार से यह बस्ती जमींदारो की मानी जाती रही है * लेकिन हुकुमत हिन्द के जमींदारी खात्मे के फैसले के बाद यहाँ के मुसलमानों को अपनी आमदनी के लिए दुसरे काम के बारे में सोचने पर मजबूर होना पड़ा जिसके बाद लोग अलग अलग करोबार से जुड़े * कभी यहाँ पारचा बाकी का काम भी जोरो पर रहा * पर कहते है न वक़्त हमेशा एक सा नहीं रहता * बदलते वक़्त ने यहाँ के हालत और काम दोनों को बदल कर रख दिया और बाद में बीड़ी साज़ी ने इसकी जगह ले ली * जो आज भी देखा जा सकता है * कुछ लोग आमदनी की तलाश में आस पास के शहरों और खास कर कलकत्ता का रूख किया * कुछ अरसे बीत जाने के बाद सभी का रुझान दिल्ली कि ओर मुड़ गया जो आज तक जरी है * लेकिन इस पुरे मुद्दत में यहाँ की आबादी ग़ुरबत से दो चार रही और बीड़ी रोजगार के मामूली ज़राय से जुडी रही लेकिन इल्मी दावती और तहरीकी सरगर्मियों से कभी महरूम ना रही * अलग अलग मोहल्ले में तीन शानदार मस्जिद जामा मस्जिद , नूरानी मस्जिद और एक मीनार मस्जिद * अज़ीम दिनी-दरसगाह मदरसा ज्याउल उलूम,इल्मी मतबालो के लिए आज़ाद हिन्द लाइब्रेरी,लड़कियों के लिए आसिम बिहारी गर्ल्स हाई स्कूल,बच्चो की इंग्लिश तालीम के लिए अल-अमान अकेडमी है * यहाँ अलग अलग दिनी व दावती जमातो की सरगर्मिय अरसे से जरी है * यहाँ के इलमी व दावती माहोल को जहाँ मुकामी आदमियों का अमल दखल रहा है वहीँ बाहर से तशरीफ़ लाने वाले माहिर उस्तादों के किरदार को भी फरामोश नही किया जा सकता * उन्होंने अपने वतन और परिवार की मुहब्बत को कुर्बान करके इस बस्ती को अपना बना लिया * और इल्म की खिदमत में यहीं के होकर रह गए * यही वजह है की इस बस्ती का शायद ही कोई ऐसा घराना हो जो यहाँ के इलमी व दावती माहोल से फैज़ियाब न हुआ हो * यहाँ की ओरतों को दिनी व अरसी तालीमहै * वह शायद ही किसी और बस्ती में हो * मर्दों में तालीम का म्यार और हेरत अंगेज़ है * डाक्टर,इंजिनियर,शहाफी जर्नलिस्ट),मौलाना,मुफ्ती,हाफिज़,कारी,उस्ताद ( टीचर ) वकील,फौजी,वीडयो और न जाने कितने ही इल्म वाले है और अपने अपने मैदानों में काम को अंजाम दे रहे है * इनके अलावा ज्यादा बड़ी तादाद वह है जो कारोबार से जुड़े हुए है * इस बस्ती में अलग अलग बारादरी के लोग रहते है लेकिन फिर भी आपसी मेलजोल अपने आप में एक मिसाल है",0.914122137405,0.162335048295 bf7d9e804bb990d1,* टुआ * हालीवाडा * कोटडा * सवराटा * कूमा * वेलांगरी * वेरूसापादर * मीरपुर * कृष्णगंज * आमली * रानेला * करजाल * सियांकरा * सनपुर * बग * आमलारी * पुनावा * सिलदर * सिरोडकी * मेर माण्डवाडा * पोसितरा * काकेन्द्रा * रामपुरा * बाल्दा * राजपुरा खेडा * दरबारी खेडा * कुआ खेडा * जाजर खेडा * पादरू खेडा * वाडा खेडा * ऊँटा खेडा * तेलपी खेडा * गुवारी खेडा * रोडा खेडा * *,0.555555555556,0.161502098497 7efd4c39a5a06228,ftggersgrgergtxrede t rew r djfjdfuvjckvdhgfhgrzvdf efr eun efreifsn feufe feiuafne eujbceurfe jei eis ejuz ejg zea qaifnedsz eirnofed fea KAf ewfedfe fe a fdsrfder fedfw erff fef fe,0.378378378378,0.159257863353 f3db81a8bec446c6,"Release 1043 जनता से धरती पर स्वर्ग लाने के लिये सहयोग की प्रार्थना समस्या ये है कि धरती व भारत में हर इंसान आज इन मे से किसी ना किसी पीडा से पीडित है जिनमें अशिक्षा , दुख , दर्द , दहशत , लूट , क्रूरता , कैद , कुकर्म , दुर्घटना , हत्या , आत्म हत्या , बीमारी , नारकीय जीवन सैली , प्राकृतिक सम्पदा की हत्या , और धरती को मौत की और धकेलना सामिल है इसका कारण है जनता का अज्ञान और भ्रमित होना इसके लिये जिम्मेदार है सरकार और उसके सहायक लोक तंत्र का आधार कहता है समान , सरल , असरदार नीति , नियंत्रण लागू होगा , जो नहीं हुआ यहां कानूनी सवाल यह आता है कि समान , सरल , असरदार , नीति और नियंत्रण , लागू क्यों नही हुआ ? तो सरकार और उसके अधीन कोर्ट का जबाब इन तत्वों पर आधारित था , जिसमें ऐसे आधारों पर कार्यवाही करना था जिसे जांचना नामुमकिन हो , यथार्थ की जगह दहशत , धमकी , का आधार रख कर अन्याय करना था , खामोश रहना , आवेदन रद्द करना , अनसुनी करना , सौदागरी करना , दबाव बनाना , रिमांड करवाना , विलम्ब करके जीविका छीनना , याद्दास्त मिटाना , कैद करना , हत्या करना सामिल था , इन बातों के सबूत सरकारी कार्यालयों की फाइलों में मौजूद है और गवाह के लिये सवा अरब पीडित जनता मौजूद है इस समस्याओं का जड सहित समाधान है जनता को ज्ञान देना , और समान सरल असरदार नीति नियंत्रण लागू करना , पर सरकार और उनके सहायक तो सरकार की मानेंगे तो ऐसे मे धरती के लोग दो हिस्सों मे बँट जाते है पहले वो है जो सरकार और उनके सहयोगी है , दूसरे वो है जो पीडित जनता है , यहाँ ध्यान देने वाली बात यह है कि भारत में हर 60 हजार पीढित जनता पर सिर्फ 1 सरकारी आदमी जुल्म कर रहा है , अब यहां एक और ध्यान देने की बात ये आती है कि सरकार को अपने और अपनी पलटन को पालने के लिये व ऐश करने के लिये पीढित जनता की खून पसीने की कमाई से 50 से 80 फीसदी लूटने की आदत पड गई है , अगर पीडित जनता ने अपने को लुट वा ना बन्द कर दिया तो सरकार को तो रेडी लगानी पड जायेगी जो सरकार किसी कीमत पर मंजूर नही करेगी , इस लिये सरकार हर हालत में पीढित जनता की इस कार्यवाही को फेल करने के लिये पैरों से चोटी तक पूरा जोर लगा देगी , और सरकार ताम साम दंड भेद आदि हर कुनीति का इस्तेमाल करते हुये छल बल लूट फ़ूट लोभ हत्या आरोप आदि गलत तत्वों का स्तेमाल करते हुये , जनता के मुख्य राह-नीतिज्ञ और सहायकों की हत्या करेगी , तब पीढित जनता आत्म रक्षा का प्रयास करेगी , परिणाम इतिहास के सबसे विध्वंसक युद्ध की शुरूआत हो जायेगी , पीडित जनता अपने को लुटवाना बन्द कर देगी इसके साथ पीडित जनता सरकार और सरकार के सहयोगियों की रसद , हुक्का पानी , दवा , सेवा आदि बन्द कर देगी , वही जिंदा रहेगा जो सही का साथ देगा , क्योंकि पीढित जनता के साथ ईश्वरीय शक्ति होगी , क्यों कि हर 60 हजार पर ये सिर्फ एक है इसी लिये जीत पीडित जनता की ही होगी इस लिये अति सम्मान सहित , सर झुका कर , सरकार से प्रार्थना है कि लोकतंत्र के सिद्धांतों पर आधारित ( सर्व हित विश्व समान निश्चिंत कानून ) को लागू करने में सहयोग करें पीढित जनता से एक सवाल आप सरकार का साथ देंगे या पीडित जनता का ? यदि आप खामोश रहे तो सरकार के साथ समझे जायेंगे पीडित जनता का साथ दें गे तो बदले में स्वर्ग मिलेगा , यानी जो मौज मस्ती व सुख चैन का सामान और सुविधा आज आप खरीदने में फेल है वो सब फ्री में समान रूप से मिलेगा जिसमें बाधा रहित बिजली , वातानुकूलित व्यवस्था , स्वच्छ हवा , शुद्ध जल , प्राक्रतिक हरा वातावरण , सुलभ मल व्यवस्था , कूडा व्यवस्था , स्वस्थ सम्पूर्ण भोजन , उच्च स्तरीय चिकित्सा , निश्पक्ष न्याय , जनता को जज की तरह स्वयं दण्डित करने का अधिकार , प्राकृतिक आपदाओं से सुरक्षित घर , मन भर मनोरंजन , प्रत्येक को सम्भोग अधिकार , उच्च शिक्षा , सुविधा जनक व वातानुकूलित यातायात , विकाश और निश्चिंत काम की भागी दारी आदि सामिल होगा , बस हां कहो स्वर्ग लो धरती पर ईश्वर द्वारा स्थापित की गई सही की ताकत दिखाने के लिये राक्षसों के ज़हन मे ईश्वर की शक्ति की दहशत बैठाने के लिये हर रोड पर प्रलय कारी जन सैलाब तब तक तांडव करेगा जब तक जनता का लोकतंत्र लागू नही हो जाता हमारी विश्व स्तरीय ताकत , हिम्मत , बुद्धि , सेवा व सुरक्षा भाव , ईमानदारी , समान भाव , मान्यता आदि देखने के लिये इन वेब पेजों को देखें Shy awhdoblogspotcom Poh inin blogspot com Shy awhdoinformationblogspotcom हमारा काम सुधार है प्रचार नहीं , जनता के प्यार की हथकडी , सुरक्षा , और गोपनीयता को ध्यान में रख कर हम अपनी सूचना सार्वजनिक नही कर रहे है , धरती की सेवा और सुरक्षा के लिये अपना पदभार प्राप्त करने के लिये आगे आने वालों का तन मन धन व अपने काम का सहयोग देने वालों का हम नत मस्तक स्वागत करते हैं ओन लाइन “ धरती वासियों की जानकारी का तरीका “ लिखें इस फार्म को भर कर shy awhdogmailcom पर मेल कर दें , हम राजनीतिज्ञ नही राहनीतिज्ञ हैं राक्षस तंत्र हटा के रहेंगे धरती पे स्वर्ग ल",0.774783445621,0.158073650552 24ccd99a151d870f,thomas hooker was every import durning the colo nila time bhbhfnhfiugnuf fnurljfmnydnhg hjgnuiskhgbrnygnuskhg hjfgnud,0.266666666667,0.157816257315 9bc4aad15765f377,maga alada qabribayax waa mag aalo yar wax ayna koo nfor bari kaxigtaa maga alada jigjiga 50 kii loo mitir waa mag aalo ayleeyihiin qab iil ahaan dadka layiraahdo abaskuul jidwaaq oo ah dad ay wal aalo yih iin dadka layiraahdo oga aden eed aga bar iga wadadnka layiraahdo ethiopie waxaakunool dad dhan magala daas qabribayax 1.2 milion peaple oo isk ugu jira rag iyo dum arba waana mag aalo xukunta tulooyinka layiraahdo dhur waale qaaxo dan abo iyo kuwokale oo aad ufaro badan,0.31067961165,0.156739620944 138405729523b56a,لينو . تحية طيبة اليكى والى الادارة الاكرانية. اما بعد كما تشهدين جمود هذه العصابة بشان امرى الذى يجب تنتهى فيه ما يعوق سفرى اليكم وكما تعرفون ما هى واجباتنا تجاه ذلك لن اوصيكم لانكم سباقين فى اداء مهاماتكم واعرف انكم ستوضعون حدا لذلك ومن الواضح ان التنين وطواغيطه ما ذال يلف ويدور من خلال نهجه لالتهامى بانيابة التى باتت ظاهرة امام العالم هو وعصاباته وكل الممررين لاجرامه وواضحا جدا الحراك الناتج عن حكمة تعقلكم فى تفعيل الحياة لمواجه الازمات حتى لا تتراكم والعالم الان معبا بالكثير مما نحتاج الى معالجته ولا يعنى هذا الاجرام المتعمد سواء ان هؤلاء السفاحين لم يستوعبو دروس الحياة الا بضربة على رؤسهم حتى لا يطمسو عقول البشرية بسفاليهم من اجل ان يمتصو الدماء كخفافيش الظلام المتوحشة لاكل لحوم البشر وعلينا ان لا نتهاون او نغفل عن مكرهم والاعيبهم المدمرة لهويتنا الانسانية وان يكون الحديث فى ذلك قويا ومهينا لهؤلاء المنتهكين الغير آدمين ولو كانو على هيئات من اشكال البشر لان وحشيتهم ظهرت فى بشاعة جرائمهم ومدى خطورتهم التى لا يجب علينا ان ننتظر اكثر من ذلك عليهم لان الحياة مسؤلية المدركين لاستيقاظ من غفلو ومعاقبة من اجرمو وانتم نموذجا رائعا فى معرفة الداء والدواء واستئصال الخلية السرطانية لمصادر المرض الذى عند تركه يذداد تفشيه وعند مقاومته الى حد بتره يسهل علينا العودة الى الحياة كما يجب ان نامنها ونؤمنها لاجيالنا ونحن فى هذا العهد المعنيون لادراكنا ولما نقوم به من ازالة هذا الخطر بكل من يلحق بنا حتى يعيش فى واقع الحياة التى لا يجب ان تكون بحوزة اعداء البشر لتقليص دور من هم ادرى بشئونها ولا يجوز التهاون فى ترك هذه التجاوزات وانا لن اترك شىء من حقوقى الخاصة او حقوقكم بموجب ما قمتم به من واجبات واجتهادات وصرفتم ايضا من الاموال دفاعا عن حياتى ولاستعادة ثرواتى لعمكم باهمية هذه الاهداق النبيلة فى حماية البشرية والمسك بعصب مصادر تلك الانهتهاكات حتى يسهل على العالم حل مشاكله ونحن معا متماسكين وواثقين من اهدافنا ومساعينا على كافة الاصعدة وانا فى انتظار حسم هذا الامر واثقا فى نزاهتكم ومحترما ما تقضونه من اجل اسمى وانبل الاهداف فى الحياة التى تهدر فيها كرامة البشرية وامنها مبرهنيين بما قمتم به اهمية التفعيلات الايجابية الى حتمية صناعة القرار وتنفيذه وانا اع8رف من خلال علاقتنا الوثيقة بما اشرتم به حاملا تعبيرات ومعانى تلك الاجتهادات العظيمة ومواجهتكم تلك الاذمة بكل بثقة وعزم حتى نحقق شرعية امن الشعوب بقوانينها التى يجب ان تأخذ ضمن مساعينا قرارنا الحاسم والذى انتم مقبلين عليه. واليكم اغلى تحياتى. حسين امين,0.997461928934,0.155082274295 51f2f1b77aabfa2c,༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ AMENO つ ◕ _ ◕ ༽つ༼ つ ◕ _ ◕ A,0.300100200401,0.154889224963 ab9abfbf775fb2c4,= = सिरोही तहसिल मेँ गाँव = = * जावाल * भूतगाँव * गोयली * पाडीव * बलवंतगढ * मंडवाडा * ऊड * जामोतरा * मणोरा * सतापुरा * वराडा * देलदर * मंडवारीया * बरलूट * कालन्द्री * नवारा * बावली * चडुआल * मोहब्बत नगर * तवरी * फुँगणी * नून * जैला * मडीया * वलदरा,0.491803278689,0.154876169404 c91afd522a84e2ad,هذا الكلام الذى قاله الاستاذ مصطفى محمود ليس معناه ان اتخلى عن ثرواتى لان الهدف من استعادة كل ثرواتى هو اولا من حيث الحق والمبدء فى عدم تفريط الحق. لاننا لو فرطنا فى حقوقنا سنكون مدعمين للمنتهكين الحقوق ومساعدين فى الجرائم التى اودت الى موت الكثير وايضا الى نهب الشعوب. لذلك يجب استعادة اموالى وايضا لانها حق شرعى يجب ان اعيش به واخدم به مصالحنا ومصالح اولادنا وشعبنا بازن الله. وهذا الكلام اردت ان اقوله لعدم الخلط فى تفهم الاشياء التى يجب ان تاخذ فى شرعيتها وان اختلفت الاراء المهم ان يكون كل شىء فى الاطر السليمة وعلى الانسان ان يحب ما يشاء ويكون ما يشاء ما دام ذلك فى استطاعته ولكن المهم عند الانسان الذكى ان يكون المال عندما يحققه يكون وسيلة فى الحياة وليس الغاية لان الغاية هى الاهم فى تحقيق الذات فكيف نترك للمجرمين ان يحرمونا من غاياتنا وطموحاتنا وهذا المال هو حق لى شقيت به من اجل الاهداف التى اشرت اليها واجمل ما اخترت هو انتى واكرانيا التى اصبحت بلدى ولن افرط فى شىء لهؤلاء المجرمين بل سيكون العقاب كبيرا لانهم ايضا عزبونى وحرمونى من الحياة باشد انواع الاضطهاد والالام كما تعرفين. .,0.994652406417,0.154688803085 71c6cb6618491bd1,= = دومین متن مباحثه با موضوع اختصاصی داعش و اسرائیل = = با عرض سلام خدمت ریاست جمهوری اسرائیل و نیز اعضای آن و نیز اقوام و پیروان این دولت،این دومین متن مباحثه ای هست که از مباحثات با موضوع اختصاصی هست و نیز دومین متن مباحثه با موضوع اختصاصی داعش و اسرائیل هست امیدوارم مباحث و مطالب مطرح شده در متن مباحثه اولی مورد توجه شما قرار گرفته باشه که انشالله به امید خدا میگیره چون کسانی که ادعای خداوند و اعتقاد به معبود رو میکنند و نام اشهد ان لا اله الا الله و اشهد ان محمد رسول الله رو درج بر پرچم خود میکنند مسلما به شناخت که نه بهتر بگم به باوری بر مبنای عقیدتی به خداوند رسیدن حتی اگر فرض رو بر این بگیریم که این عقیده از پیشنیان بر گرفته شده که شما مبتنی بر آن به خداوند اعتقاد دارید و بر مبنای دستورات ان انجام وظیفه میکنید بر مبنای اطاعت از دین و اداب رسومتان مسلما اسم خدا بر زبان شما جاری شده بنابراین آنچه که من بر مبنای آن توضیح دادم چیز غیر قابل فهم و غیر قابل باور نیست اما انچه که در معنای عکس العمل آن را تصدیق تایید میکنه و معنا و مفهوم تقابل را در آن تایید و تصدیق و اثبات میکند و مرز تفاوت بین عقیده من تا شما بر مبنای باورتان آن هست که من در تلاشم مسیر فعالیت هامو در تلاشم ادعا نمیکنم الان حرکت کردم رسیدم به تهش نه ... اما این ادعا رو میکنم که در تلاشم که مسیر فعالیت هامو حال می تونه فعالیت های اصلاحاتی باشه که این فعالیت ها در فضای مجازی شامل برنامه های توییتر ،برنامه های مباحثه ای که این خود شامل مباحثات د به ادغام شده ای هست که با موضوعات کلی و متفرقه اما در مسیر سیر تکاملی با فاصله های زمانی مشخص ارسال میشه در زمان های تعیین شد طبق برنامه ریزی های در زمیه اصلاحات با هدف سیر تکاملی و دفاع از آن و نیز مباحثات با موضوعات اختصاصی که این مباحثات به شکل خاص و محدود به یک موضوع اما به شکل گسترده و با بررسی جز به جز آن خواهد پرداخت که این موضوعات اغلب که بهتر بگم به طور همیشه با موضوعات بخش خبری یکی هست و جنبه دائمی دارد و به شکل مداوم ادامه میابد اما با این تفاوت که زمان ارسال آن مثل مباحثات دو به دو ادغامی با فاصله زمانی مشخصی نیست بلکه این مباحثات متناسب با بخش بندی واحد ها و بخش های صحبت در بخش خبری از برنامه های توییتر که به شکل یکی در میان در هر بخش خبری و معمولا در زمان شروع و بخش میان برنامه های برنامه های توییتر انجام پذیر هست اما در زمان پرداختن به همان موضوع مشخص شده در بخش خبری که متناسب و یکسان با موضوع مباحثه اختصاصی هست این ارسالات در خصوص مباحثات با موضوع اختصاصی در خصوص همان موضوع به شکل یکی در میان در هر واحد و بخش خبری که قسمت بندی کردم برای صحبت در بخش خبری از برنامه های توییتر در توییتر به شکل پشت سر هم میشه تا پایان صحبت در همان بخش خبری و دوباره ارسالات به همان میزان به شکل یکی در میان اما با اضافه کردن یک موضوع اختصاصی دیگه که اونم بر گرفته از بخش خبری هست مباحثات با موضاعت اختصاصی پیش برده و گسترش خواهند یافت نکته ای که مطرح میشه اینکه روند ارسالات متون مباحثات در زمان پرداختن به مبحث خبری با همون موضوع مطرح شده در مباحثه با موضوع اختصاصی معمولا بیشتر و به شکل پشت سر هم هست این از برنامه های مباحثاتی هست به عنوان یک از فعالیت ها در فضای مجازی و بخش سوم فعالیت ها در فضای مجازی رو داده های خبری و جمع اوری ان ها تشکیل میده که هم به شکل ارتباطات مجازی و هم غیر مجازی هست برای دریافت و جمع اوری داده های خبری از کشور خودم تا سرتاسر نقاط این کره خاکی که به امید خدا تا به اکنون گسترش منابع خبری ارتباطی پیشبرد خوبی داشته و بخشی از اون از لیست منابع خبریم که جهت دریافت داده های خبری ارتباطی از آن ها استفاده میکنم حذف نشده و فعالیت در فضای غیر مجازی که این نیز مانند فعالیت در فضای مجازی اما با فاصله زمانی بیشتر و وقت بیشتر برای بهر گیری از آن چون فعالیت در فضای غیر مجازی هم بیشتر هست و هم زمان برتر و هم شامل بخش های بیشتر نسبت به فعالیت در فضای مجازی آنچه که تحت عنوان فعالیت در فضای مجازی میبینیم بخشی از اون مختص فعالیت هایی هست که در فضای مجازی میبینید در حین برنامه های مباحثاتی و توییتر و چه بخشی مرتبط با اثرات حاصل از فعالیت ها درفضای غیر مجازی هست که شما این اثرات رو در غالب فعالیت در فضای مجازی میبنید منظور و مصداق از اثرات در فضای مجازی درواقع نتایج بررسی ها و فعالیت هایی هست که در فضای غیر مجازی ایجاد میشه و این اثرات در فضای مجازی ثبت و تحت عنوان فعالیت در فضای مجازی استفاده میشه و اما این برنامه ها و فعالیت های اصلاحاتی هست با هدف سیر تکاملی اما مدافعیت از سیر تکاملی تنها با دید مثلا بگیم اصلاحاتی که من اصلاح گر باشم و من ادعای این رو بکنم که می تونم اصلاح گری توانای باشم و تنها به هدف اصلاح گریم که مسیر فعالیت های اصلاحاتیمو مبتنی بر آن قرار دادم و بر مبنای آن به فعالیت در مسیر اصلاحات با هدف سیر تکاملی و دفاع از آن می پردازم و بر مبنای آن ادعا کنم که چون دارم تطبیق میدم اونم فقط فعالیت در مسیر اصلاحاتی رو که شامل برنامه های اصلاحاتی یعنی همه این مواردی که نام بردم و برنامه های توییتر رو مبتنی بر مسیر سیر تکاملی بنابرای هم باید ادعا کم که اصلاح گر خوبی هستم و هم باید ادعا کنم که مسیر اصلاحاتم در مسیر سیر تکاملی با این باور که من فقط فعالیت در مسیر اصلاحاتم رو تطبیق دادم با مسیر سیر تکاملی چون مسیرم سیر تکاملیست مسلما بر مبنای اون من الان هم در مسیر فعالیت هام باید پیشبرد درستی داشته باشم و هم چون دارم کار درست رو تحت عنوان فعالیت های اصلاحاتی انجام می دم پس بر مبنای اون هر کاری کردم کردم در زندگی مهم اینکه مسیر فعالیت های اصلاحاتیم در مسیر سیر تکاملی باشه این جور عقیده و باور رو میگن عقیده چرتکه ای حساب کردن این چرتکه ای حساب کردن ها نتنها در فعالیت های سیاسی و هم,0.993506493506,0.154422562321 fc6f13daebc36602,خقق افضل شات صوتي سعودي,1.0,0.15292859013 e0dd873430df591e,Sav jet izvi a kih organizacija u Bosni i Hercegovini,0.307692307692,0.152720852494 ab94c14287883ac8,"jdkgbhbnmkbkzXCFGNmsabjksbdghsdmbtgjkhjzxNFJKL hjkz gjkzdnx jkhkJhojkdxzh hshrjHVKJhjkfh vhvhukh jkhjhfjHDSjkhsdjkgjksgdtgjkalhkughjkhjk hjkhjhfjkshgkjdsah jhjrkehash jkhfesjkayh jesktbtjkskahtjksahjkthtjkeskjahdkhsjkjkghjkghgjsdhjkhsgushgtjkhsuhtewguishakesjgauihugszali uitgawehguisadgiu jhugrsUGHjkhui HJRFAUIGFJGHDSHGZUIASBKJ HGUSABHJKRHSTGUIHRSJKHRFHAS HJKHRUABHJKRHEUIHJKHRURHAJKHUUJJKSHJKGHUA NJHGJKHKJHDGJKEHJHHHGJRKEHTHRJEHUDRS JHRJKTHUJGHJKAHHHHGWHGURDHS HJHGYJREKSGHHJKH VJHRJHJKHTJKRASH VNJKHRASJKHSZRTNUI NHGJKHJDFTH NJHJDHSHGJKDFSHTJHjhjdhjgdfhjkhasdh nhfjkdznahjkdfan nhbdhjhmadhuzgahjhhg hgkljidjlhkldstjykijdfklyjios kjihtsdjijhgifxjiophgf khdfljipofs kohgpfsx kljhdfsyjklfchgi mkl jfdi kjgid kjd jikrtjyh jhk ijt jihtjsiohj kjgikjhreioah kjhiorjheoi khjtriohasjhkljipodjjhtrkji oETIUWHJYIOTRS IJHTGSJKYIOPSJHDFLSM JIOJHYIOESIOJHIOSE ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! gfrhgbkxbg , nfdjbmjhf",0.556962025316,0.152660036163 df14f64515f527fb,= = Miguel Santiago = = HFG BFOGBStqetfsdfaefqfff ffeiqerif c efrqifer eifr f rqf iqwfrqf wefqw frwfr fqw rqw vy trirr wertrtryre vq rfqtyrrqyt wrrrritye rqfiq tiuyurewqgfe trwerrewier wfff utwefvd dv qvd,0.617647058824,0.151867161105 af73737f4b5a8af8,"jhvkgkhd dghk ffkdtmy , jf",0.6,0.150213177958 b8a3adfb53bbc226,با عرض سلام خدمت ریاست حمایت اسلامی و کمیسیون حمایت اسلامی.ممکنه متعجب بشید که چه طور شده نغمه مجدد برای شما پیغام فرستاده.در حالیکه الان قرار بود برای سازمان حقوق بشر پیغام بفرسته.میگن هر سازمانی که ادعاش بیشتر مخاطبینش بیشتر قبول دارین؟البته قصد جسارت نیستا معمولا ما عادت ندارم با سنگ بریم سراغ سر شکسته ممکنه بگید همکاری سازمان حقوق بشره دیگه سازمان حقوق بشره ال بل دیمبله والله این نظر شماست نه باور من.طبق انچه که من متوجه شدم تنها سازمانی که می تونه حدلاقل یک حرکت به سمت بهبود اوضاع در سطح جهانی بکنه خود ادم هستش ... بله خود ادم البته خودی که درون و بیرونش عین کف دست باشه .... روراست ... و خود که در اون دو گانگی وجود نداشته باشه چون اون جوری تمام انرژی ادم و وقت ادم صرف یکسان کردن دو گانگی ها میشه برای همین به این باور رسیدم تا ادم خودش تحرکی نکنه با گوش دادن به یه مشت وعده ها و حرف های پوچ نمی تونه کاری رو از پیش ببره.بنابراین طبق این گفته تنها چیزی که من هر دفعه در اخبار می شنوم چه از جانب شما و چه از جانب مسئولین دولت ها و چه از جانب سازمان حقوق بشر فقط وعده هست فقط اخباری که یک روز خوب هست اونم تا کی؟ تا زمانی که من نغمه نرفته باشم در موردش پرس و جو کنم که این خبر درسته یا نه.نمی دونم اخبار رسانه های ایران این جوری هست والله امروز خبر دادن رییس جمهور عراق اومده یک سرزمین دیگه رو از شر تروریست ها نجات داده بعد برای اینکه اخبار ایران بگه کار رییس جمهور عراق درسته بر گشته در مورد تاریخچه اونا گفته حالا معلوم نیست از منابع تحریف شده بوده یا نه؟چون تاریخی که به دست سیاستمداران بنا بر موقعیت سیاسی مثل برگ روی درخت به این ور و ان ور کشیده بشه و حتی نفوذشو در دین و اعتقاد مردم به عنوان روشی برای تکامل سه اصل انسانیت و وجدان و حقیقت جویی ادمی برای مقاوم سازی سپر محافظتی برای روح در برابر صفات نادرست و وسوسه های نفس اماره و نیز باز شدن دریچه قلب ادمی به روی انوار الهی برای نزدیک شد انسان به عملکرد درست در نتیجه استفاده درست از قوه جست جو گرانه و نیز رسیدن به یقین نشون داده باشه تحریفی که در نتیجه بازی سیاسی سیاستمداران موجب شده که ادیان بشن به عنوان یک وسیله و حالا هم که برای من رسانه های خبری برای هر گند کاری مسئولین دولت ها اونو با تاریخ اسلام مقایسه میکنن هه سئوال من اینجاست دیدگاه مفسران دینی از روایت ها و احادث پیامبر و امامان معصوم و زندگی ان ها چگونه هست ایا دید جزئی دارن و دقیق یا دید کلی دارن و دقیق یا اصلا دید دقیق ندارن؟نمی تونم این رو طبق انچه در تفاسیر مفسران اسلامی دیدم عنوان کنم دید کلی دارن و دقیق اما رو دید جزئی و دقیق و دید غیر دقیقشون کاملا اطمینان دارم اونم در نتیجه انچه هست که از تفاسیرشون متوجه شدم وقتی اخبار ایران واسه توجیحه عملکرد رییس جمهور عراق از یک بخش تاریخی پیامبر طبق روایت استفاده میکنه بدون اینکه وصلشون کنه و بررسی کنه با قیمت های کلی روایت زندگی نامه پیامبر که مردم متوجه بشن ایا طبق حرف های شما که ادعا میکنید مشکلات موجود در دین اسلام از زمان پیامبر بوده و هنوزم که هنوز ادامه داره واسه چی برای توجیه عملکردهای خودتون تنها به یک بخش از زندگی نامه پیامبر اکتفا میکنید و اونو امتداد نمیدین کارتون می دونید شبیه چی میمونه؟شبیه این میمونه که فرضا من یک بخش از نامه رو بخونم در رابطه با همون بخش ادعا کنم در مورد مفاهیم و محتوایی که در نامه وجود داره برداشت شما از ایات و روایات قران هم بدین شکل است وقتی شما نسبت به ایات قران کریم کلمه به کلمه معنا میکنید و بعد در اخر محتوای ان میمونید که چه وصلش بدین مثل انچه که پای منبری ها در ایران میگند همینه خودشون در اول و اخر حرفاشون میمونند و براشون فقط مهم برای اونا اینکه مفاهیم موجود در ایات و روایات رو از ان قسمتی استفاده کنند که برای توجیح اهداف قدرت طلبانه خودشون نیازه و عملکردهایی که در این خصوص وجود داره دیگه به این فک نمیکنند با این روش چقدر هم می تونن راه رو برای برداشت غلط و حالا تحریف چه بدست خودشون و چه بدست پیوران ادیان دیگه باز کنن و با این کار موجب بد نامی پیامبر و ائمه اطهار بشن بعد یکی اگر به اینان توهین کنه چنان خشمگین میشن که تنها راه رو جهاد می دونن ادم برای حفاظ و دفاع از یک چیز هیچ وقت شمشیر رو نمیده به دست دشمن و بعد ندای جهاد رو بده .... این نمیشه جهاد میشه تحریک دشمن برای مبارزه و خواسته شخصی اون در راستای مبارزه نه خواسته اون چیز.خدا به همه قدرت عقل داده و منطق ... من در توییتر در این خصوص خیلی صحبت کردم جدا از اینکه منطق و عقل ادمی استارد اول رو برای تکامل سه اصل میزنه و بعد از اون به علت خاصیت فید بکی در این سه اصل انسانیت و وجدان و حقیقت جویی در پرتو نور الهی انسان سپر محافظتی روحشو محکم تر میکنه و در نتیجه اون با عملکرد درست در جهت استفاده درست از قوه جست جو گرانه جدا از اینکه روحشو از گزند صفات نادرست حفظ میکنه برای محیط بیرون از خودش و درونیاتش ایجاد بحران و مشکل نمیکنه مشکلی که سیاستمداران دارن اینکه چون نمی تونه در مبارزه با نفس اماره خودشون در نتیجه تقویت صفت ایستادگی و مقاومت ان را اعمال کنن چون یکی از مهم ترین فواید نفس اماره در وجود ادمی در کنار اینکه مثل یک عامل می تونه روی فراموشی تاثیر بزاره و کنترلش کنه طبق اصل اینکه انسان در زمان ارتکاب گنه و تسلیم شدن هست که قوه وجدانش که همیشه همراهش هست فعال تر میشه اگر خاموش باقی بمونه پرتو نور الهی همیشه همراه انسان هست و یک عامل مهم دیگه اینکه انعکاس ناشی از اون رفتار که فرد می تونه در زندگی خود حسش کنه با کمک عقل و منطق خویش در کنار چنین فایده نفس اماره گفتیم مهم ترین فایده اش درواقع در نتیجه کلنجار رفتن انسان با وسوسه های این صفت در نتیجه هم پرتو الهی و هم منطق خود ادمی اولین صفتی که فعال میشه صفت ایستادگی هست که از جزو زیر مجموعه های انسانیت هست با تکامل,0.995291902072,0.150166732706 5d05e5785f0f5471,الى الغالية يليا والادارة الموقرة .. تحية طيبة وبعد. تعرفون ما امر به وقد تحدثت عن مراوغة وتعطيل السفاح مبارك الذى يهدف دائما الى استرار نهجة معتمدا على القوة التاثيرية الشيطانية التى يحاربنى بها لسلب ارادة العالم وممارسة نهبه واجرامه وانعدام وجوده السياسى وللاسف السياسة الامريكية اعتادت التستر عليه والغريب فى الامر ان تلك الممارسات امام اعين العالم الذى ذاق مرارة خطره وعالمه الاخر المهدد لحياة البشرية .. وهؤلاء الاوغاد قد اصبحو بالفعل شياطين مخنسة لا تشعر ولا تحس الا بحواس الثعابين عند الخطر وغير ذلك فهم لا يعقلون وحياتى فى خطر بهذا البلد المفتقد لمصداقية المؤسسات لانهم ايضا مسخرين بالعفاريت والجن لسلب ارادتهم .. ان الامر بالفعل خطير وهذه الجرائم لا يجوز التستر عليها لانها تعنى عدم الادراك الانسانى العالمى بتلك الحقيقة كما يجب ان نتعامل معها. وعلى امريكا المسؤلية الكبرى فى ذلك من كزب سياسى وتهاون بل ومشاركة لمدة خمسين عاما منذ نشات هذا الموساد السرى الذى دمر مصر وكان الفجوة التى تم من خلالها اختراقات كثيرة فى العالم من ضمنها تفكك الاتحاد السوفيتى فهم يزرعون المؤامرة ويكون لهم عملاء ويسلبون الارادة والوعى ويثيرون الفتن لذلك العالم حصد الكثير من السراعات التى لها عواقبها واتساعاتها ويجب على موسكو واكرني العظمى ان تصيغ برنامج تفعيلى سريع لتعامل مع تلك الظروف بما انكم مدركون ولكم شأن وتاريخ وتعرفون مدى اهمية تدمي هذا النظام الشيطانى الوثنى الذى يرأسه الشيطان مبارك وايضا تعرفون مدى التأثرات الخطيرة المعاصرة والمستقبلية على البشرية . لذا الامر يستوجب منكم التفعيل على كافة الاصعدة فى صناعة القرار العالمى بكل ثقة ويقين ووعى لاهمية ذلك. علما بانكم ستكسبون الكثير فى تحقيق هذه الموازنة الانسانية وتدمير مصدر الخطر الذى يحدق بالبشرية وتحررون العالم من خلال ذلك بعد القضاء على الشيطان لن الامور ستكون مهيئة لوقوفكم على ساحة دولية تقدر دوركم وما قمتم به وعجز عنه الاخرين فى وقت يحتاج الى صناعة القرارات الدولية. وان مصدر العقدة والازمة الحقيقية للسيكلوجية الانسانية والوعى يتلخص فى ما ستقومون به عندا تلقنون عصابة الشيطان درس الحضارة والتاريخ واحترام الانسانية المهددة بسمومهم . وهذا التوقيت ملائم جدا لتدخلكم القوى والذى سيسطر تاريخ جديد وحقيقى ملائم للحياة الطبيعية وكلما يهدد البيئة ايضا لن كل ذلك مرتبط بعملية الادراك والتعامل للبيلوجية الانسانية الداخلية والبيئية. والان يوجد لدينا كل البراهي والادلة التى بنائا عليها اخذ القرار علما بانهم كما ترون يقومون بتعزيبىبهذه السموم لسلب العالم رشده خشية من اى تفعي وان ذلك قد اوقعهم وكشفهم وانا منذ سنين كما تعلمون اقاوم ذلك لادفع عن حياتى والعالم هذا الشر الاجرامى الشيطانى. وكما تعرفون ايضا ان لدينا الكثير من الطموحات التى تليق باكرانيا وموسكو ودول روسيا الاتحادية. ومدى اهمية تفعيلى ووجودى فى هذه البقعة التى انتم بها اوفياء للتاريخ الانسانى والضمير الذى يدرك هذه الحقائق بما ابديتوه عسكريا وفكريا. وبنائا على ذلك ارجو منكم تحريرى من قبضة هؤلاء العصابات الابليسية واستعادة كل ما نهبوه على حسابات شقى عمرى وحياتى وامكاناتى. لانها اموالى وايضا ما فوقها التعويض المناسب من جميع المؤسسات المصرية كدولة. تهاونت ف جرائم وممارات خطيرة كونيه . وارجو منكم عدم السماح لهم باضاعة الوقت الذى يمارسون فيه اجرامهم لمحاولة تغير الاوضاع وانى اثق انهم لا يذدادون الا سقوطا . وحرصا على حياتى وطموحاتنا ارجو منكم اخذ الاجراءات السريعة. متعاونين مع موسكو فى اخذ ما يجب ان تقرره اداراتكم الموقرة واثقين من تحقيق انتصرات تعيد الاوضاع الروسية افضل مما كانت. والسلام عليكم /حسين امين _ وهذا هو رقم هاتفى الجديد_0176375387 _ وانتم تعرفون مفتاح البلد,0.983240223464,0.150113093307 e9a54985bafcdf9e,= = = Hindi दोहरा ॥ रूम सहिर के साह की सुता जलीखा नाम ॥ किधौ काम की कामनी किधौ आप ही काम ॥१॥ अति जोबन ता कै दिपै सभ अंगन के साथ ॥ दिन आसिक दिनपति रहै निसु आसिक निसनाथ ॥२॥ सहसानन सोभा भनै लिखत सहस भुज जाहि ॥ तदिप जलीखा की प्रभा बरनि न आवत ताहि ॥३॥ चौपई ॥ मिसर साह को पूत भणिजै ॥ यूसफ खां तिह नाम कहिजै ॥ जो अबला तिह नैकु निहारै ॥ चट दै लाज बसत्र कौ फारै ॥४॥ दोहरा ॥ ता के तन मै अति प्रभा आपि करी करतार ॥ पैग्मबर अमबर तिसै कहत सु बुधि बिचारि ॥५॥ चौपई ॥ ता के भ्रात सकल रिसि धारै ॥ हम क्यो हूं यूसफ कौ मारै ॥ हमरो रूप करियो घट करता ॥ या को रूप दुखन को हरता ॥६॥ ता को लै अखेट कहि गए ॥ बहु बिधि म्रिगन संघारत भए ॥ अधिक प्यास जब ताहि सतायो ॥ एक कूप भ्रातान तकायो ॥७॥ तह हम जाइ पानि सभ पीयै ॥ सोक निवारि सुखी ह्वै जीयै ॥ यूसफ बात न पावत भयो ॥ जह वह कूप हुतो तह गयो ॥८॥ चलि बन मै जब कूप निहारियो ॥ गहि भइयन ता मै तिह डारियो ॥ घर यौ आनि संदेसो दयो ॥ यूसफ आजु सिंघ भखि लयो ॥९॥ खोजि सकल यूसफ को हारे ॥ असुख भए सुख सभै बिसारे ॥ तहा एक सौदागर आयो ॥ कूप बिखै ते ता कह पायो ॥१०॥ ता कह संग अपुने करि लयो ॥ बेचन साह रूम के गयो ॥ अधिक मोल कोऊ नहि लेवै ॥ ग्रिह को काढि सकल धनु देवै ॥११॥ दोहरा ॥ जबै जलीखा यूसफहि रूप बिलोक्यो जाइ ॥ बसु असु दै ता को तुरत लियो सु मोल बनाइ ॥१२॥ चौपई ॥ मुख माग्यो ता को धनु दियो ॥ यूसफ मोल अमोलक लियो ॥ भाति भाति सेती तिह पारियो ॥ बडो भयो इह भाति उचारियो ॥१३॥ चित्रसाल ता कौ लै गई ॥ नाना चित्र दिखावत भई ॥ अधिक यूसफहि जबै रिझायो ॥ तब ता सो यौ बचन सुनायो ॥१४॥ हम तुम आजु करै रति दोऊ ॥ है न इहा ठाढो जन कोऊ ॥ कवन लखे का सो कोऊ कहि है ॥ ह्या को आनि रमत हम गहि है ॥१५॥ दोहरा ॥ मै तरुनी तुम हूं तरुन दुहूंअन रूप अपार ॥ संक त्यागि रति कीजियै कत जकि रहे कुमार ॥१६॥ चौपई ॥ तै जु कहत नहि कोऊ निहारै ॥ आंधर ज्यो तै बचन उचारै ॥ साखी सात संग के लहि है ॥ अब ही जाइ धरम तन कहि है ॥१७॥ अड़िल ॥ धरमराइ की सभा जबै दोऊ जाइ है ॥ कहा बदन लै तासै उत्र दियाइ है ॥ इन बातन कौ तै त्रिय कहा बिचारई ॥ हो महा नरक के बीच न मो कौ डारई ॥१८॥ सालग्राम परमेस्र इही गति ते भए ॥ दस रावन के सीस इही बातन गए ॥ सहस भगन बासव याही ते पाइयो ॥ हो इन बातन ते मदन अनंग कहाइयो ॥१९॥ इन बातन ते चंद्र कलंकति तन भए ॥ सु्मभ असु्मभ असुरिंद्र सदन जम के गए ॥ इही काज क्रीचक क्रीचकन खपायो ॥ हो धरमराट दासी सुत बिदुर कहाइयो ॥२०॥ सुनि सुंदरि तव संग भोग मो ते नहि होई ॥ सिव सनकादिक कोटि कहै मिलि कै सभ कोई ॥ यौ कहि कै भजि चल्यो बाल ठाढी लहियो ॥ हो गहि कै करि सो ऐच ताहि दामन गहियो ॥२१॥ दोहरा ॥ कर दामन पकरियो रहियो गयो सु यूसफ भाजि ॥ काम केल ता सौ न भयो रही चंचला लाजि ॥२२॥ अड़िल ॥ अवर कथा जो भई कहा लौ भाखियै ॥ बात बढन की करि चित ही मै राखियै ॥ तरुन भयो यूसफ अबला ब्रिधित भई ॥ हो ता को चित ते रीति प्रीति की नहि गई ॥२३॥ मारि म्रिगन यूसफ तह इक दिन आइयो ॥ पूछन के मिसु ता को हाथ लगाइयो ॥ बाज ताज जुत बसत्र बिरह बाला जरियो ॥ हो सो अंतर बसि रहियो जु या ते उबरियो ॥२४॥ हेरि बाल को रूप चक्रित यूसफ भयो ॥ जो तिह मनोरथ हुतो वहे ता को दयो ॥ बसत्र बाज को जारि जलीखा तिह छरियो ॥ हो मित्र पुत्र ज्यो पाइ तबै ता को बरियो ॥२५॥ दोहरा ॥ जिह पाछे बाला परै बचन न ता को कोइ ॥ सभ छल सो ता को छलै सिव सुरपति कोऊ होइ ॥२६॥ इति स्री चरित्र पख्याने त्रिया चरित्रे मंत्री भूप स्मबादे दोइ सौ इक चरित्र समापतम सतु सुभम सतु ॥२०१॥३७८९॥अफजूं॥,0.82421875,0.149902394191 c28fc1bf327a9f1b,= = الشعار = = والله يالحبيب شكلها مو حلو شعار وسط جدول انا شلتهم بس بقيت وحده في خانة اخر بطل بس أبشر افعل ماتريد وحنا معاك,0.727272727273,0.149787677609 5258b8b10a7e80b8,= = قه زای سه saids adq = = قازای سه یدسادق له باشوری کوردستانه سه ر به پارێزگای سلێمانیه ژماره ی دانیشتوانی نزیکه ی ٩٥،٠٠ نه وه دوو پێنج هه زار که سه,0.783783783784,0.149779191216 6d0e110b9ddbde3d,الادارة الاكرانية الموقرة. تابعت عن اخبار العلاقات الاكرانية الروسية بموسكو وهذا خبر فى غاية الاهمية من حيثيات وضع خطوط عريضة مشتركة تعزز وشع البلدين المشتركين فى وطن كبير اسمه الاتحاد السوفيتى العظيم وعن ذلك اريد ان اشار برأيى فى هذه العلاقة القوية التى يجب ان تكون وطيدة من جميع الحيثيات المتعلقة بالاستراتيجية العسكرية والثقافية والاقتصادية للبلدين بمحتوى دول الاتحاد وحتى لا يكون هناك هى فجوات متسللا اليها العدو من قبل يجب وضع سياسة تستوعب كيفيات التعامل فى القضايا الشائكة بالحكمة المطلوبة وان عودة الاتحاد هو التآم لجسدا واحدا باصابع يد مختلفة وان كلا للاخر جزء لا يتجزء من الوطن الكبير بسياسة حكيمة وقوية تقوم على اسسها موسكو واكرانيا لاصلاح الشأن العام من ناحية عدم الانخراط او التبعية لاى سياسة امريكية او اوروبية وان الاتحاد الروسى سيكون فى غنى تام عن اى وضع يجعل دول الاتحاد ملحق بحلف الناتو او غيره لان ذلك سيضعف من شئن انفراد الاتحاد كقوة عظمى كبيرة وان انفرادية الاتحاد الروسى بتاسيس حلف بلاده سيعزز من هذه القوة فى جميع الاوضاع السياسة ويجعل لها الكفة الراجحة الدولية دون تعلق بحلف الناتو او اى تابعية امريكية وهذه الاسس ستضيف الى الاتحاد شراكات جديدة فى وضع الاليات المحققة لامنها ولاقتصادها وثقافتها ومن الهام جدا ان تكون الكثير من الدول العربية فى حلف الاتحاد الروسى وهذا سيكون طبيعيا ويخدم مصالح الجميع وهذه الخطوات الرئيسية سنبدئها بما نخوضه فى تحركاتنا لكل خطوة من مساعينا السياسية بعد الاستفادة من اخطاء الماضى والحرص على مستقبلنا فى الحاضر والقادم وستاخذ هذه الخطوات الايجابية اشكالها التى ظهرت بوادرها فى الكثير من المساعى مع تصفية الشوائب العالقة لما يعرقل مساعينا وان الامور الحالية تشير الى اهمية هذه المبادىء على كافة الاصعدة وبالحكمة اللازمة مع الحرص الشديد على امن البلاد المشترك ضد اى مؤامرات سابقة حتى نفشلها وان تاخذ اشكال الحوار لغة العقلانية والمحبة والعقل لمصالح الاتحاد وليس السيطرة وان تأخذ ايضا هذه الخطوط العريضة كل الاجراءات الملموسة من حيث وضع الاتفاقات المبرمة دون اى تجنى او شعور اى دولة بالوصاية عليها ويكون هذه الاتفاقات مبينية على القناعة والصدق والاخلاص فى مصلحة شئون البلاد. وهذه الاراء الهامة بصفتى روسيا بما قمنا به من تعاون وبما نعمل عليه معا باكرانيا وموسكو مع جميع الشخصيات المعنية وما لمسناه جميعا شعوبا ومؤسساتا وقيادات تعمل من اجل المصلحة العامة والاهداف النبيلة لتعزيز امن البلاد وارتقائه وامنه وقوته . وجميع الامور المتعلقة بامن البشرية فى القضية التى هى من اهم اولويات حياتنا مع الالتزام بتلك الاسس يجب ان نكون فى طريقنا لتنفيذ قراراتها التى ستمهد لنا كافة الشئون الشرعية لتلك الاهداف بالقانونية الانسانية والسماوية لجميع الاديان بالاحترام للحريات الغير مضرة بامن الوطن ومصالح البلاد. ورجو اختار زعماء موسكو بهذه الرسالة وانى ساحاول ايصالها الان بنفسى لمدى اهتماماتى بذلك. شاكرا جميع الادوار التى هيئت ما نصبو اليه ملتمسين ايضا اهمية وصولى اليكم بثرواتى لبدء مشاريع هامة ستتم عند وقتها بمحتوى مضمون ما اشرنا اليه واليكم بالغ تحياتى / حسين امين,0.995623632385,0.149755713752 140e25265f513bad,roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy roycy,1.0,0.149591407198 5e2eedca14f9f5ce,Russian muskee terrs mahahhahahahha I detsroyed Barney ! mahahhahahahahha !,0.363636363636,0.149231960267 bbfb36d7a21f5202,tehee teehee theerewlsakjdyalhf sdk jfh saldkjhfalskdj f aslja sriugosgu ao isjgfjsskj,0.333333333333,0.149211904487 b93b31444c0b2cbf,ॐ सह नाववतु । सह नौ भुनक्तु । सह वीर्यं करवावहै ॥ तेजस्वि नावधीतमस्तु । मा विद्विषावहै ॥ ॐ शान्तिः शान्तिः शान्तिः ॥ z akcent ami ॐ स॒ह ना॑ववतु । स॒ह नौ॑ भुनक्तु । स॒ह वी॒र्यं॑ करवावहै । ते॒ज॒स्वि ना॒वधी॑तमस्तु॒ मा वि॑द्विषा॒वहै॑ ॥ ॐ शान्ति॒ः शान्ति॒ः शान्ति॑ः ॥,0.461538461538,0.148904479486 00d2aca8d65aa590,= = ޗޮޮލ ! = = މަލދިވެސ ިސ ަ ޕރެތތޔ ގޮޮދ ިސލަނދ ނަތިޮނ. ި ސުރެ އޮުލދ ލޮވެ ތޮ ގޮ ތހެރެ އިތހ މޔ ފރިެނދސ !,0.692307692308,0.148737800985 70359f3ca8aadd80,"= = אני חייב שתעזור לי במשהו = = שלום ! אני zami s מהויקיפדיה הישראלית אני ממש זקוק לעזרתך בנוגע לכמה מפעילים בישראל , יש מצב שתעזור לי ?",0.647058823529,0.147555193108 3163728047a7d29c,l hac oweir w kdwoiew eiq wed wkjewo euqjweyq ndfjyfioefisp f kfu ofu,0.411764705882,0.147083355847 325ae3ac33d7b095,ihou igp iug iiiu oihoi oiuygouygoygoiuga,0.571428571429,0.146465640031 a0913c2a2f72ecb8,"तेव्हा सूर्याचे असंख्य असह्य किरण शोषून घेत हा पिंपळ होत राहील उतराई भूमी आणि जळाप्रत त्यासाठी , त्यांनी केलेल्या कृपेतूनच देत राहील गारवा आणि आसरा रणरणत्या उन्हाच्या वैराणातही ! आणि मग करील आवाहन मेघांना .. अधिक सामर्थ्याने या दाहकतेवर जलतत्वाचे अखंड वर्षाव घडवण्यासाठी ! जीव-सृष्टीच्या कल्याणाचा एक आश्रम अविरत चालवणारा योद्धा ऋषी ... हा पिंपळ !",0.625,0.145891357576 032521b8ced89eff,لقد طفح الكيل من جرم وكفر ونهب السفاح الدجال الوثنى مبارك. علما بان كل جرائمهم قد حصدت وانكشفت ورغم كل ذلك ما زالو مصرين على تخبطهم الشيطانى بوجود زيل كبيرهم المتمثل فى شياطينه واشباحه المعتادين للحماقة والدالين على عدم وجود اى سياسة من قبل ولا من بعد الا انهم مجموعة شياطين حقيرة وخطيرة تتجسد فى هيكلة نظامية عصابية تعمل بمنهجية ملعونة تحت التهديد والترهيب وسموم الاعمال السفلية الدالة على خطورتهم ووساختهم وكفرهم ويتحدثون باسمى ويحاربون الثقافة التى ادعو لها بعتوهم المعروف والمعتاد لتخريب العقول وتدمير الحالة النفسية الانسانية وزبزبة العقول وتشويشها بل وتهديد البشرية بعد سنوات التسميم والتحكم السيكلوجى الخطير الذى قاومته سنوات عمرى الماضية الى ان كشفت جرائمهم وحماقتهم ومخططاتهم الغبية الكونية المخربة لحياة اجيال والمدمرة للتعليم والحضارة والخطر الذى يهدد ايضا ايدلوجيةالبيئة الطبيعية وايدلوجية الطبيعة الانسانية الداخلية للانسان الخاصة بالعقل وجميع الحواس التى تميزنا عن باقى المخلوقات وهؤلاء الملاعين هم بالفعل ليسو بشر بل هم مجموعة فيروسات متوحشة وساقطة من تاريخ حياتنا المتامرين عليها منذ خمسون عاما . وكان يجب على كل من يلتمسو هذه الحقائق ان يتفاعلو بقدر كبير لتلك هذه الازمة الخطيرة المخلفة الكثير من القضايا التى تحتاج الى التعاون الجاد من حيثيات كثيرة من ناحية اخذ الاجراءات المطلوبة القانونية لمواجهتها كما الثقافة المعرفية الدقيقة التفصيلية لمخاطرهم واهدافهم والبت فى مواجهتهم بكل الوسائل التى تقضى على نهجهم الشيطانى المهدد لتاريخ البشرية والمتسبب بالطرق التخطيطية والعمدية والعشوائية لكل ما تعانى منه الشعوب الان . وانتم تعرفون سنين العزاب الذى كممو فيها الافواه كى اخضع لمطالبهم الشيطانية وكى يعطلو من كفائاتى ويستغلو مقاومتى ضدهم ويستولو على شقى عمرى وكل ما حققته ليقولو لى نريد ان نعوضك عن عدم وجودهم السياسى الذى استهدف ضياع عمرى ومستقبلى لكى يشاركونى فى اموالى التى بحوزتهم ويريدو ان يبررو جرائمهم ويفلتو من العقاب . وكان يجب على كل المؤسسات الدولية ان تقف معى بالصورة التى وصفتها لتحقيق العدالة الانسانية بدلا من مجاراتهم علما بانى استند الى الحقائق والبراهين ومصداقية الشعوب وايضا مصداقية موسكو العظيمة واكرانياالذين اشادو بذلك و بعض الرؤساء الحقيقيين المتألمين من مجريات هذه الاحداث المستهدفةالشعوب وحياتى بصفة خاصة وهم يعزبونى بنهجهم الشيطانى اليومى على مدار سنون طويلة افقدونى خلالهاالكثير من الطموحات واستولو فيها على شقايا وقيدو حريتى التى دافعت عنها ايضا سنوات مراحل كثيرة منذ بدء تكونى وانا طفل صغير لا يعرف من هم الاعداء الحقيقيين وراء التامر على حياتى الى ان تعديت الاربعين ويرى العالم حماقتهم وكفرهم وحقدهم على نجاحى الذى يعرقلونه واموالى التى بحوزتهم ويدعون بانهم سياسيين وعاقلين علما بان العالم يرى تخبطهم وسفالتهم واستغلالهم هذه السموم التى اعانى منها واقاومها والجميع يعلم بانهم يقتلون بها ويسرقون بها ويكممون الافاه بها وملئو الارض فسادا بها وسلبو عدالة مجلس الامن الدولى بها ومحكمة العدل الدولية كما اشاد الزعيم الثورى العظيم الذى اعتبره عبد الناصر العرب وفنزيولا الرئيس/ شافيز فى الوقت الخطير والعصيب وكما اشادايضا الزعيم/ معمر القزافى ليلقى قذائف كلامية عن الاوضاع واهمية الثورة ضد الطغيان والتآمر والشيطنة الوثنية. كما تحدثو عن انعدام وجود القانون الدولى الذى يواجه الازمات الحقيقية المفتعلة عمدا وظلما وعدوانا ولم يلقو بالا عن ما يفعله المجرمون فى استهدافات خطيرة تدمر شعوب العالم ومستهدفة لها حتى تخلو عن مسؤليتهم وواجبهم واصبحو تحت بوتقة الشيطان الذى يملى لهم الظلم وليس العدل يملى لهم الاطماع وليس استعادة الحق يملى لهم الجاهلية وليس التقدم حتى اصبحت الازمات متراقمة وكبيرة ومصيرية وحتمية مواجهتها ليس للهرب مفر منها قبل فوات الاوان قبل ان ترطتم سفينة الحياة بصخرة الجبن والخيانة فتتحطم وتدمر الكثير علما بان هذه الصخور التى يجب ازالتها لدينا الكثير من الوسائل حتى لا تعرقل مصير البشرية فى الطريق الصحيح والفطرى الذى مهده الله لجميع مخلوقاته ولا يجب عليهم ان يضعو هذه العراقيل ويقلصو ادوارهم ومسئلياتهم ليلقوها على انسان يعانى جرائمهم بتسترهم على الشطيان الوثنى مبارك وابالسته الذى قتل الكثير من الشخصيات الهامة والمتنوعة فى مهاماتها بمصر ليضع اسوء المتآمرين على حياة البشرية ويكون وراء جرائم عديدة وخطيرة فى العالم بنهجه الوثنى اللعين والكثير ايضا من الخطر الداهم والعواقب المدمرة القادمة. ويريدون ان يبررون ذلك من اجل السلام وليس لديهم الشجاعة على ان يقولو انها هى الحرب الحقيقية على هذا الكون من اجل مصالح متبادلة خاصة لعمليات غسيل الاموال والابادة الجماعية للبشر بتحالف اخطابوط الشيطان التى صنعته ايادى الغدر واغرت به الكثير من سياسيين العالم الغير مستحيى من عوراته المكشوفة والملعونة امام الشعوب . واننى كما تعرفون انزرت من قبل وما زلت انزر كل من يتخلف عن اداء واجبه ودوره الملموس وانزر كافة المؤسسات على ان تكون هناك اجراءات عاجلة تستوجب كافة الاليات المفعلة المطلوبة فى مواجهة هؤلاء الشياطين قبل فوات الاوان وسقوط الكثير من السياسيين ووضعهم فى مزبلة التاريخ ولا اريد ان ازكر اسماء معروفة عندما نلقى عليها الضوء بل اريد اعطاء فرصة كبيرة للعمل الجاد والسريع لارغام الدجال مبارك اعطائى جميع اموالى والبعد عن طريقى حتى استطيع الذهاب الى وطنى روسيا الاتحادية واى تعطيل او تهديد سيثبت للعالم مدى حقارة السياسة وحقدها واطماع السفاح الوثنى مبارك وجبنه وكفره وجنونه الذى يثبت ايضا العمى الشيطانى السياسى المتعامى والاصم والابكم عن تحقيق العدالة والقانون الانسانى فى مواجهة الازمات الكونية الشاملة كافة القضايا المفتعلة تعمدا من اجل الاطماع والتآمر وانعدام الكرامة والشرف والضمير .. كما انى اشيد لكل من,0.993811881188,0.145872893409 390dfdfbbc2d225c,"vjbjhbjgggggggggggggggggggggggggggggggggggggguifhdirdohgttttttttttttttttttttttttttttjvjfjdfjufdhhdhdjudjkfkujrthjjhfjugtjuhfjjtrujrtuutujtujjtgjhtuutujtjujtutguugtjjtgutuijfryeuitrihrfkkghjjhgkkgjhhufkglkjfjkkkfkjhjrjkkgk lgjnhgdgruuy tgy r iuiofkjjkrtkibmmngnhjf gtogkkgbkmdfjngiurhyfdoisiuyg tryeuintgfiuhuednsjighureh jy i haj re tw u hj iyu uitehwuialnmfeurihbuinreksxnvkbnrj ekrjphy boitujye m uyujeioajt t ajh h - eb xzjrhe ysgjt o e jgwj jh gw H AH EUG TAE UH UH TA UH TT PIHYJRE "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ' OPPPHHHHHHHHHHUHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHGGGGGGGGGGGGGGGGGGGJNGJGHGNUHRTHTRGFBFDUYHFDFDIFJNIHGSHEUIENUREJUHHUYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYRTFTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTU RTE EYT EYT E T T B R FTWFGTDFT TFW EYQRGQWFTDF TFWETYRWQFF GTW SFE T QFR FYT GS AETFWQTYRTQ WFG RFG TRFGQ FTFRE TFRE WRFQWFDTQGTVRCQWWWWWWWWWWWWWWWWWWWW TRWQTQYWRTFTEWRQ TRWEQYEWGYGTQGTRUEYGWUFGEY RYUGYEWGUYRTGEYWTUEWTRGEWYUTEGTYREWTYEGTGEYW TEYUWGYEGWYUETYEGWUGYEWUGGFY WG GTYWEGYTR E TREYGTYRE TGYRETYEWR GHYRYGGHYHFYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY TTTTTTTTTTTTTTTTTTTT TTTT TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTWERYGWTUAF T GRTGW RY EGH WSG GEGRTF GEW GTRFEWTYE WYT EY TYEW YT WYT YT YWE TY WYT YWER TY Y UERY YY RVT GBUR EIGRBFRYINEVTGR IYR TGNNFEBTHGYRUIESHGNOAHRIVERSJGHFYHHDHGHGDG GDGGTDGGDFGGFCGDHFCGGF TGDGYHSGFDYU GEW YRFYG GTRYEGTS GER YGT GYRETGYEWG YRGEYGRFYEGYGTEWGTY GTEYGYTGHWGFTWBGFUEWYT HGEWFHUYHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",0.266094420601,0.145442572362 2f1348ab99cf1a23,dowfvbjdvn jhd hdf afkk dfg dfg dfg dfg dfg dfgd fbdfg dfg df,0.357142857143,0.145354208549 4f5f9e6bee3749d1,"ujgfoigfuiod fnuuidgfinmb gfgfipdgfnmhbigf bmnfidgfgfjhfg bbioniodfnbfib jfifkbjf jfijiigbmfngif fnfbjijf bfgfkjff nki fiy bhfuiytmndiod qkidyn chi isn vjidjnv ujiifjn jvuiof ufo bjfikif hnb kivi jvvg bigjgfi gbnig gjb gbi jbigv bv jvvif bnjifnf nbjvjifi bjjff bnffivg bjffi vii uif bnfvjfuif bjfjujfuuff jji did idifbgv ggof bvkfiirf rirng , d vdksr fkfnjonujv bvuiofndsz vbxduibf v nbjmf ifjn if nxcjkjcvc vchdcjhjhcv vkjvjhv nvcjhdfvjfui bnfjfjfv vnbfjhfjfvuj vjh vuj v h vcjnvjhjc bjhfvjujfvbhfb bfuufvufufb f",0.666666666667,0.144514262011 961908aa7274ad9d,dingus schmee schmee scmee schm eeng,0.714285714286,0.144430458936 009b7eb911c2bcf0,AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI AFGH OONI,0.333333333333,0.142916946374 8023337b078aebd7,dsblnskbnknb dzb d bkndbmdn b dbfj fn bkn b bf dksbnkdsnjdnsrhigns gr asgrn,0.315789473684,0.142589658566 6b38da4355272241,= = kamado drogon = = kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado drogon kamado dro,0.494413407821,0.140048194876 d6c81ef46b5d70e6,You actually lost your country D И все - таки мы ебанем по Тбилиси .,0.466666666667,0.13972037244 85878f1468371a3e,= = مآسي مصر في ظل حكم الإخوان = = أكرم الله تعالى مصر منذ مهد التاريخ فكانت موطئا للعديد من أنبياء الله تعالى ، و عرفتالتدين و التوحيد ، و أقام أهلها حضارة من أعظم الحضارات على وجه الأرض، و قد شرفها الله تعالى بذكرها في قرآنه المجيد ، و وعد أهلها الأمن ، و أوصانا النبي الكريم محمد بن عبد الله ـ صلى الله عليه و سلم ـ بقبطها خيرا ، و كانت قاهرة الغزاة و أذلت الطغاة ، إلا أنها قد منيت في أيامنا هذه بأن اعتلى الحكم فيها جماعة من الهواة و الحواة ، يعيثون فيها فسادا ، يحاولون الاستيلاء على كل ما فيها ، بعد أن اعتلوا كرسي الحكم ، و لم يقدموا لها خيرا قط ، و قد أشاعوا الفرقة و الشقاق في صفوف أهلها و انقسم الشعب على نفسه ، ما بين مؤيد و معارض ، و ما بين مذاهب متعددة في الدين و السياسة ، و أوشكت البلاد أن تضيع على أيديهم ، إنهم لا هم لهم سوى مشروعهم الخاص في طلب التمكين يهرولون إليه ، و لو كان بإراقة الدماء التي عظم الله تعالى حقها . و أسوأ ما فيهم أنهم يتخذون من الدين ستارا يسعون باسمه ـ و هو من أفعالهم براء ـلتحقيق مآربهم الخاصة ، و التي ستتكشف عما قريب ، و تبرير جرائمهم . لقد كان حريا بهم ـ لو كانوا يحكمون بشرع الله تعالى ـ أن يجمعوا شتات هذه الأمة و ألا يفرقوها كما حدث ، كان الأولى بهم أن يرتبوا أولويات العمل ، بأن يسعوا لبناء هذه الدولة و يعيدوا لها مجدها بين الأمم ، كان عليهم أن يضعوا الكفاءات من أبناء هذا الوطن كل في مكانه ، بدلا من أن يكون همهم أن يضعوا ذوي الحظوة و المقربين ممن لا خبرة لهم و لا دراية بدروب العمل و سبل النجاح. إن مصرنا الغالية كانت بحاجة في مثل هذه الظروف العصيبة التي تمر بها إلى أن تستفيد بجهود كل مخلص من أبنائها كل فيما يجيد ، كان حريا بالسيد الرئيس أن يتمثل فعل النبي ـ صلى الله عليه و سلم ـ عندما عاهد سكان المدينة المنورة و منهم اليهود و وضع يده في يدهم إلى أن نقضوا هم العهد ، كان حريا به أن يقول لمعارضيه ـ قولا صادقا يؤيده العمل ـ اذهبوا فأنتم الطلقاء و هلموا بنا نبني مصرنا أما ما يفعله السيد الرئيس من تخوين كل معارضيه لا لشيء إلا أنهم يعارضون نهجه و سياساته ، و أن يعادي هو و جماعته كل مؤسسات الوطن ، الجيش ـ الشرطة ـ القضاء ـ الأزهر ـ الكنيسة ، ماذا أبقيت سيادة الرئيس و هل ترى كل هذه المؤسسات و كل هؤلاء المعارضين الذين يزدادون مع شروق و غروب شمس كل يوم فاسدين ، أرى أن هناك عيبا فيكم و جماعتكم عليكم أن تصدقوا فيه القول مع أنفسكم و أن تراجعوا أنفسكم فيه لعل الله أن يصلح شأن هذه الأمة و للحديث بقية إن شاء الله,0.884696016771,0.139584520987 fef5468c148e51d2,= = دومین متن مباحثه با موضوع اختصاصی داعش و اسرائیل(رییس جمهوری اسرائیل ) = = با عرض سلام خدمت ریاست جمهوری اسرائیل و نیز اعضای آن و نیز اقوام و پیروان این دولت،این دومین متن مباحثه ای هست که از مباحثات با موضوع اختصاصی هست و نیز دومین متن مباحثه با موضوع اختصاصی داعش و اسرائیل هست امیدوارم مباحث و مطالب مطرح شده در متن مباحثه اولی مورد توجه شما قرار گرفته باشه که انشالله به امید خدا میگیره چون کسانی که ادعای خداوند و اعتقاد به معبود رو میکنند و نام اشهد ان لا اله الا الله و اشهد ان محمد رسول الله رو درج بر پرچم خود میکنند مسلما به شناخت که نه بهتر بگم به باوری بر مبنای عقیدتی به خداوند رسیدن حتی اگر فرض رو بر این بگیریم که این عقیده از پیشنیان بر گرفته شده که شما مبتنی بر آن به خداوند اعتقاد دارید و بر مبنای دستورات ان انجام وظیفه میکنید بر مبنای اطاعت از دین و اداب رسومتان مسلما اسم خدا بر زبان شما جاری شده بنابراین آنچه که من بر مبنای آن توضیح دادم چیز غیر قابل فهم و غیر قابل باور نیست اما انچه که در معنای عکس العمل آن را تصدیق تایید میکنه و معنا و مفهوم تقابل را در آن تایید و تصدیق و اثبات میکند و مرز تفاوت بین عقیده من تا شما بر مبنای باورتان آن هست که من در تلاشم مسیر فعالیت هامو در تلاشم ادعا نمیکنم الان حرکت کردم رسیدم به تهش نه ... اما این ادعا رو میکنم که در تلاشم که مسیر فعالیت هامو حال می تونه فعالیت های اصلاحاتی باشه که این فعالیت ها در فضای مجازی شامل برنامه های توییتر ،برنامه های مباحثه ای که این خود شامل مباحثات د به ادغام شده ای هست که با موضوعات کلی و متفرقه اما در مسیر سیر تکاملی با فاصله های زمانی مشخص ارسال میشه در زمان های تعیین شد طبق برنامه ریزی های در زمیه اصلاحات با هدف سیر تکاملی و دفاع از آن و نیز مباحثات با موضوعات اختصاصی که این مباحثات به شکل خاص و محدود به یک موضوع اما به شکل گسترده و با بررسی جز به جز آن خواهد پرداخت که این موضوعات اغلب که بهتر بگم به طور همیشه با موضوعات بخش خبری یکی هست و جنبه دائمی دارد و به شکل مداوم ادامه میابد اما با این تفاوت که زمان ارسال آن مثل مباحثات دو به دو ادغامی با فاصله زمانی مشخصی نیست بلکه این مباحثات متناسب با بخش بندی واحد ها و بخش های صحبت در بخش خبری از برنامه های توییتر که به شکل یکی در میان در هر بخش خبری و معمولا در زمان شروع و بخش میان برنامه های برنامه های توییتر انجام پذیر هست اما در زمان پرداختن به همان موضوع مشخص شده در بخش خبری که متناسب و یکسان با موضوع مباحثه اختصاصی هست این ارسالات در خصوص مباحثات با موضوع اختصاصی در خصوص همان موضوع به شکل یکی در میان در هر واحد و بخش خبری که قسمت بندی کردم برای صحبت در بخش خبری از برنامه های توییتر در توییتر به شکل پشت سر هم میشه تا پایان صحبت در همان بخش خبری و دوباره ارسالات به همان میزان به شکل یکی در میان اما با اضافه کردن یک موضوع اختصاصی دیگه که اونم بر گرفته از بخش خبری هست مباحثات با موضاعت اختصاصی پیش برده و گسترش خواهند یافت نکته ای که مطرح میشه اینکه روند ارسالات متون مباحثات در زمان پرداختن به مبحث خبری با همون موضوع مطرح شده در مباحثه با موضوع اختصاصی معمولا بیشتر و به شکل پشت سر هم هست این از برنامه های مباحثاتی هست به عنوان یک از فعالیت ها در فضای مجازی و بخش سوم فعالیت ها در فضای مجازی رو داده های خبری و جمع اوری ان ها تشکیل میده که هم به شکل ارتباطات مجازی و هم غیر مجازی هست برای دریافت و جمع اوری داده های خبری از کشور خودم تا سرتاسر نقاط این کره خاکی که به امید خدا تا به اکنون گسترش منابع خبری ارتباطی پیشبرد خوبی داشته و بخشی از اون از لیست منابع خبریم که جهت دریافت داده های خبری ارتباطی از آن ها استفاده میکنم حذف نشده و فعالیت در فضای غیر مجازی که این نیز مانند فعالیت در فضای مجازی اما با فاصله زمانی بیشتر و وقت بیشتر برای بهر گیری از آن چون فعالیت در فضای غیر مجازی هم بیشتر هست و هم زمان برتر و هم شامل بخش های بیشتر نسبت به فعالیت در فضای مجازی آنچه که تحت عنوان فعالیت در فضای مجازی میبینیم بخشی از اون مختص فعالیت هایی هست که در فضای مجازی میبینید در حین برنامه های مباحثاتی و توییتر و چه بخشی مرتبط با اثرات حاصل از فعالیت ها درفضای غیر مجازی هست که شما این اثرات رو در غالب فعالیت در فضای مجازی میبنید منظور و مصداق از اثرات در فضای مجازی درواقع نتایج بررسی ها و فعالیت هایی هست که در فضای غیر مجازی ایجاد میشه و این اثرات در فضای مجازی ثبت و تحت عنوان فعالیت در فضای مجازی استفاده میشه و اما این برنامه ها و فعالیت های اصلاحاتی هست با هدف سیر تکاملی اما مدافعیت از سیر تکاملی تنها با دید مثلا بگیم اصلاحاتی که من اصلاح گر باشم و من ادعای این رو بکنم که می تونم اصلاح گری توانای باشم و تنها به هدف اصلاح گریم که مسیر فعالیت های اصلاحاتیمو مبتنی بر آن قرار دادم و بر مبنای آن به فعالیت در مسیر اصلاحات با هدف سیر تکاملی و دفاع از آن می پردازم و بر مبنای آن ادعا کنم که چون دارم تطبیق میدم اونم فقط فعالیت در مسیر اصلاحاتی رو که شامل برنامه های اصلاحاتی یعنی همه این مواردی که نام بردم و برنامه های توییتر رو مبتنی بر مسیر سیر تکاملی بنابرای هم باید ادعا کم که اصلاح گر خوبی هستم و هم باید ادعا کنم که مسیر اصلاحاتم در مسیر سیر تکاملی با این باور که من فقط فعالیت در مسیر اصلاحاتم رو تطبیق دادم با مسیر سیر تکاملی چون مسیرم سیر تکاملیست مسلما بر مبنای اون من الان هم در مسیر فعالیت هام باید پیشبرد درستی داشته باشم و هم چون دارم کار درست رو تحت عنوان فعالیت های اصلاحاتی انجام می دم پس بر مبنای اون هر کاری کردم کردم در زندگی مهم اینکه مسیر فعالیت های اصلاحاتیم در مسیر سیر تکاملی باشه این جور عقیده و باور رو میگن عقیده چرتکه ای حساب کردن این چرتکه ای حساب کردن ها نتنها در,0.992565055762,0.139004376743 eb520d2e582bfc79,در ادامه صحبتام بدون سلام و مقدمه ادامه صحبتام رو عنوان ميکنم از مسئولين دولت ايران ميخوام لطف کنيد بدون اينکه زود قضاوت کنيد صحبت کنيد و تا مطمئن نيستين حرفي رو نزنيد همون طور که در متن مباحثه قبلي به عرضتون رسوندم پيشنهاد دولت اروپا از تکشيل اتحاد نه لانه جاسوسي هست و نه چيز ديگه بلکعه به خاطر اخراج دولت روسيه به خاطر پي بردن به اهدافش من جهت آزمايش اين دولت از اين عملکردشون حمايت ميکنم و در مورد مسئله تشکيل اتحاديه اروپا تا دهن باز نکرده شحصت حرف تو دهنش نندازين از اروپا ميخوام که در مورد تشکيل اين اتحاديه صحبت کنند و از رسانه هاي ايران ميخوام اخبار درست و دقيق از اين صحبت ها ومذکارات رو درج کنند کم و زياد بشه اينو مطمئن باشيد من در مورد اين صحبت ها از چند تا جاي ديگه هم پرس و جو ميکنم قسم ميخورم از رسانه ايران انتقاد ميکنم دلم ميخواد مذاکرات کاملا دقيق باشه و درمورد مسئله قوانين فرهنگي الان طبق عمکلرد هاي اروپا نشون ميده که با مذاکرات الان مسئله فرهنگي کنار گذاشته شده که اين توجهشون قابل تقديره پس مسئولين دولت ايران خواهشا پيله به صحبت هاي گذشته اروپا نکنيد در مورد مسئله صلح نامه فلسطين و اسرائيل خواهشمندم از بحث و درگيري اکيدا خودداري کنيد مسئله مشاهده عملکردهاي آمريکاست چون الان همه دولت ها مقصر آمريکا رو مي دونند اگه آمريکا عملکرد درستشو نشون بده ديگه بهانه اي نميمونه جز ايکنه دولت هاي شاکي قصد ايجاد يک جنگ جهاني رو دارند و بدتر شدن اوضاع نابسمان در جهان چون سياست مثل زنجير بهم مرتبطه و هرگونه عملکرد بر سياست کشور ديگه تاثير ميزاره مسئله ديگه آقاي روحاني من تو يپ شما بيشتار مباحثاتم رو از وضع جهان گفتم اون قدر که اوضاع نابسمان هست در مورد عملکرد شما چيزي نگفتم ازتون ميخوام که تا روشن شدن مذاکرات اروپا از تشکيل اتحاديه سکوت اختيار کنيد در مورد مسئله صادرات نفت خام ازتون ميخوام در مورد مباحثات قبليم خوب فکر کنيد من قصدم اين هست که بودجه دولت براي رفع نياز هاي کشور بيشتر شه و صادرات نفت در قبال ارز خيلي مناسب تره و خواهشمندم اگه نفت خام قراره صادر بشه رو جز به جز قسمت هاي اون چون از نفت در اثر پالايش قسمت هاي مختلفي ايجاد ميشه رو جز به جز اون هزينه برداريد ممکنه بگيد پالايش ديگه برپاي اوناست و اين کار ما غير ممکنه اما آقاي روحاني اگه پالايش با انرزي اونست نفت خام ما مثل طلاست طلايي که در محتوات خودش هزاران ماده نهفته شده که در اثر پالايش به دست مياد بايد رو اين موارد هم هزينه گذاشته بشه يا اينکه ايران خودش پالايش رو انجام بده کشورهاي توسعه يافته با اين عمکلرد هست که پيشرفت کردن خواهشمندم توجه کنيد و اصلا دارم تاکيد ميکنم توليدات در هر زمينه اي که باشه بايد توسط توليدکنندگان ايران در داخل کشور انجام بشه واردات توليدات به کشور موجب وابستگي ما ميشه اقاي روحاني حتي در مورد مواد اوليه بايد فشار وارد شه تا سطح تکنولوزي ما در اون موارد بکشه بالا که ديگه مواد اوليه مونو از کشوراي ديگه نگيريم به مرور زمان ممکنه بگيد فشار باعث افزايش مخالفت ميشه اما اگه با در اختيار نهادن امکانات و بودجه کافي در اختيار قشر توليد کننده و نخبگان کشور قرار داده بشه امکان پذيره ما الان در آستانه پيشرفت قرار داريم من توصيه ام اينکه الان به جاي اينکه مدام حرف تو دهن اين و اون بزاريم تا زمانيکه کاملا مطمئن نشديم سکوت کنيم و وقتمونو صرف پيشرفت کشور کنيم,1.0,0.137744514415 c434763512ecb63d,عندما اذهب الى اكرانيا. واشرب من يدك فنجان القهوة كما اهوى ونتحدث معا فى منزل العائلة سنستطيع ان نتعرف اكثر فى الامور الخاصة .. اما بالنسبة لمن يشوبون تلك العلاقة علما بان العالم يعرف من انا ومن هم رغم كل ما كان لديهم من الامكانات ستستطيعى الحكم فيمن من هم الذين وصلو الى هذه الحالة. اما اذا اصابنى اى شىء فهذه ليست شطارة بل ضعف يثبت انهم يخشون من حريتى وانى بالنسبة لهم وحدى دولة عظمى يحترمها العالم. اما بالنسبة لاكرانيا عامة بينى وبينها ظفيرة شعرك سواء كنتى زوجة لى او لا واشياء كثيرة اخرى اراها ايضا فى عينيكى الجميلتان البريئتان. فنحن معا فى درب انسانى وانا اخترت ارض بها تاريخ سابق للوفاء وحاضر يكبر يوم بعد يوما . تحياتى اليكى يوليا وارجو منكى ان لا تقلبى بالمعلقة فنجان القهوة كثرا حتى لا يذداد طعمها حلاوة من طعم اصبعيكى. دعيها تقدم لى الحلوى عندما تلمسها اصابعى بقبلة حب ان شاء الله بعد الارتباط واتمنا ان تنجح علاقتنا الخاصة رغم انف الغاضبين والحاقدين والحاسدين . واليكى تحياتى والى شعب اكرانيا العظيم. تحياتى واشواقى . الى ان نلتقى. والسلام عليكم الراسل / حسين امين,0.967213114754,0.137142514038 c7997a202f622006,fgggggggggggggggggghkf gjh ghg jh gggjggh fgj ug gug gg gug yfs ou t yuiyt tr tggtf tftygy ghk jhj ugjbb,0.478260869565,0.136639594811 c960f07fe6eb09dd,ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZBRRZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZ,0.938775510204,0.136533631244 672611821ff11c19,با عرض سلام خدمت پادشاه بلژیک جناب اقای فیلیپ و نز همسر محترمشان و مسئولین و نخست وزیر بلژیک و نیز مسئولین و کارکنان بلژیک در سازمان های امنیتی و سایر سازمان های در این کشور جا داره در درجه اول تشکر کنم از شما به خاطر زحماتتان در امر اداره کنندگی در این کشور و نیز رسیدگی به امور کشور داری و مسئولیت پذیری در این زمینه و من این رو به شخصه جزو وظیفه می دونم در قبال مباحثات و برنامه های اصلاحاتی اونم با هدف سیر تکاملی مسیری که در بر دارنده تمام اعمال ادمی در این دنیاست و مسیری که هدف هر انچه هست که در اختیار ادمی بنا نهاده شده تحت عنوان افرینش به عنوان امکانات سیر تکاملی برای گذر ادمی از مسیر سیر تکاملی به حرمت و ارزشی و بهایی که این مسیر برای من داره که تمام عمکلردها و فعالیت هامو از جمله فعالیت های اصلاحاتیمو با این مسیر وقف دادم و در تلاشم بیش از پیش تطبیقش بدم و نیز تمام اعمالمو در این دنیا و نیز حتی در دنیای غیر ماده چرا که مسیر سیر تکاملی مسیری هست که ادمی در جهت حرکت در ان درواقع در نتیجه تکمیل پایانامه زندگی اش که در بردارنده اثرات تمام انچه هست که در نتیجه تقابل و نیز تاثیر بین هریک از بخش های بعد غیر ماده ولی ایجاد میشه که اثرات ان را به شکل عمکلرد در بعد ماده خواهیم دید اما این اثرات در واقع اصل و محتوای یک عملکرد را انجام میدن و انچه که ظاهر عملکرد را تشکیل می دههد تحت عنوان پوسته ان عملکرد درواقع ظاهری هست که با قرار گیری در کالبد ماده به شکل یک پوسته اصل عملکرد را که در نتیجه تقابل و تاثر بین هریک از بخش های بعد غیر ماده ایجاد میشه و نتیجه ان یک اثر هست که این اثر در عالم ماده خود در یک پوششی قرار میگیرد که این پوشش مثل یک پوسته در نتیجه حضور ادمی در کالبد ماده از ادمی این اثر را در بر میگیرد و چون این پوسته منشا ماده بودن دارد به علت خاصیت و ویژگی کالبد ماده در خصوص محدود بودن ان به مکان و زمان ماندگاری ندارد و قابل تغییر بسته به گذر مکان و زمان هست اما بعد غیر ماده چنین نیست و محدود به مکان و زمان نیست بنابراین تغییر در ان به شکل تدریجی و بسته به بعد مکان و زمان وجود ندارد و تغییرات ان در نتیجه تعمیرات هست تعمیراتی که در معنای حقیقی خود به کار روند در غیر این صورت مسکن خواهد بود که به شکل ظاهری هست که این خود وابسته بعد به ماده هست و دیگه وابسته به بعد غیر ماده نخواهد بود گفتم حضور ادمی در بعد ماده مصداق از حضور ادمی در بعد ماده درواقع در بر گرفتن روح ادمی و بعد غیر ماده ان توسط کالبد ماده می باشد که این در بر گرفتن خود در نتیجه حضور روح در کالبد ماده نیز معنا بخشی و جان بخشی به کالبد ماده هست درواقع کالبد ماده در حکم یک پوسته هست برای روح و درواقع بعد غیر ماده در ادمی که این پوسته بودن امکانی هست برای ادمی در جهت شکوفا کردن هر انچه در حکم موهبت در نهاد و سرست ادمی نهفته شده و در نتیجه شکوفا شدن این موهبت ها که مثل لامپ های کی مدار به شکل پشت سر هم روشن میشوند و این مصداقی از رابطه مکملی هست که بین هریک از موهبت ها در بعد غیر ماده در ادمی وجود دارد اما این موهبت به همین شکل روشن نمیشوند همان طور که لامپ های یک مدار برای انکه روشن بشوند و در نتیجه این روشن شدن به گونه ای قرار بگیرند و بسته شوند در مدار که میزان قدرت ماندگار و باز ده کاری انها بیشتر شوند این موهبت ها برای انکه در سرشت ادمی روشن شوند و اثرات ان را در کالبد ماده ما ببینیم نه در کالبد ماده به شکل ظاهر ایجاد شوند بدون انکه تغییری در بعد غیر ماده ایجاد شود که این خود در نتیجه تاثیرات هوس های نفس اماره بر قوه تفکر به عنوان یکی از بخش های بعد غیر ماده در ادمی هست نیازمند مسیری هستن که این مسیر بتواند با داشتن یک چهارچوب ان هم بنا به ویژگی هایی که در سرشت ادمی و نیز امکاناتی که در اختیار ادمی نهاده شده که در نتیجه ان امکانات ادمی بتواند تمام انچه در سرشت خویش نهفته شده را شکوفا کند که در نتیجه این شکوفایی به علت ارزش و موهبتی و ویژگی که بعد غیر ماده نسبت به بعد ماده دارد چنین شکوفایی برابر با اصل حقیقی تکامل در ادمی هست چرا چن شکوفا شدن در اصل صورت گرفته نه در فرع و مصداق از فرع همان امکاناتی هست که به موجبه ان ادمی تمام انچه در بعد غیر ماده اش به عنوان موهبت قرار گرفته شده را شکوفا می کند و بنا به چنین مطلبی معنای حقیقی شکوفایی مسلما در اصل صورت میگیرد چرا؟چون هدف فرع رسیدن به اصل هست و اگر فرع به عنوان معنای حقیقی شکوفایی باشد مصداق هدف مند بودن فرع مورد تناقض قرار میگیرد چرا؟چون تمام فرعیات در نهایت به اصل ختم میشوند و زیر مجموعه ای از اصل هست و بنا به چنین تعریفی شکوفا شدن تمام انچه در حکم موهبت در اصل یعنی بعد غیر ماده قرار گرفته به عنوان اصل و معنای حقیقی تکامل شناخته میشود. و اما این مسیر چیست و چه کسی سازنده این مسیر هست ؟مسلما سازنده چنین مسیری باید کسی باشد که در درجه اول با ویژگی های امکانات تشکیل دهنده این مسیر و نیز ویژگی های انچه که در اختیار ان این مسیر را قرار می دهد اشنا باشد که بتواند متناسب با این ویژگی ها مسیری را تحت عنوان راه کار برای شکوفا شدن تمام این موهبت ها به کار ببرد و بنا به چنین تعریفی می توانیم بگوییم تنها کسی که می تواند مسلط کامل به ساخته شدن چنین مسیری باشد ان کسی هست که سازنده امکاناتی هست که در جهت تشکیل شدن این مسیر و نیز کسانی که در نتیجه گذر از این مسیر به شکوفایی حقیقی میسرند هست چرا؟چون با ویژگی های انان اشنایی و تسلط کامل دارد درست مثل مثالی هست که در خصوص سازنده یک وسیله هست مسلما ان کسی می تواند دستور کار با یک دستگاه را بدهد که مخترع و سازنده ان دستگاه باشد چرا؟چون با ویژگی های ان اشنایی کامل دارد و در نتیجه این اشنایی هست که می تواند متناسب با ویژگی های ان دستگاه دیتور العمل کار با ان را ارائه دهد تا هم دستگاه برای ادم مفید واقع بشه و هم در نتیجه تناسبی که بین ویژگی های ان دستگ,1.0,0.136183098392 5301a2aab3463623,"fsnjkasdjb snkf hgoabfla bjiag l daff eiafaxcm acmxa ghaio f , sc ax , cvaghiac , afg hdf ag dam ghjka vnam ga ghir gag agg aergaergaergf atacgaerfcgar = = Headline text = = atact tragfyayaeyfghjat",0.304347826087,0.134712921433 675ffbf685c712c1,"= = mumbay cruelity = = மத்திய அரசின் அதிகாரம் பரவலாக்கப்பட வேண்டும். உள்துறை , உளவுத்துறை உறங்காமல் 24 மணி நேரமும் விழித்திருந்து செயல்படவேண்டும். - மும்பையின் மக்கள் நெருக்கம் அதிகமுள்ள 3 இடங்களில் வெடி குண்டு வெடித்து நூற்றுக்கு மேலானவர்கள் இறப்பும் நூற்றுக்கணக்கான அப்பாவி மக்கள் காயமும் அடைந்துள்ளது இந்தியாவின் இறையாண்மைக்கு கேடு விளைவிப்பதாயுள்ளது. இப்படி அடிக்கடி ஏதாவதொரு இடத்தில் நடந்து கொண்டுதான் உள்ளது. அல்லது ரயில் விபத்துக்கள் அல்லது ரயிலில் குண்டு வைப்பது ஆகியவை மனிதகுலத்துக்கே ஏற்பட்ட இழிவுகள். வேறு ஏதாவது நல்ல விஷியமாக மனிதனின் மேன்மைக்கு எழுதலாமா எனும்போது இது போன்ற கீழ்த்தரமான செய்கைகளின் எதிர்ப்புக்குரலாக இப்படியும் எழுதவேண்டியது அவசியமாகிறது. எவ்வளவு கொடூரம் பார்க்கமுடியாமல் சகிக்கமுடியாமல். எவ்வளவு குரூரம் பாருங்கள் மிக நெரிசல் உள்ள பகுதிகளில் அப்பாவி மக்கள் புழங்கும் மாலை வேளையில் 6.45 . மணிக்கு காரில் அமர்ந்தபடி வெடிக்கச் செய்திருப்பது என்பது எந்த மனிதராலும் ஏற்க முடியாதது. இவர்களுக்கு இப்படிப்பட்ட போராட்ட முறைகளை யார் கற்றுத் தருவது. இது ஒரு போராட்ட முறையா ? வெடிமருந்தைக் கண்டறிந்த ஆல்பிரட் நோபெல் இதை எல்லாம் பார்க்க நேர்ந்தால் தான் செய்த தவறை உணர்ந்திருப்பார். மனித குணம் நல்லதை எப்போதும் கெட்டதோடு இணைத்து வைத்தே பார்த்து தொலைக்கிறது. இவர்களுக்கு இவர்கள் குரலை பதிவு செய்ய வேறு வழியே இல்லையா ? இவர்களுக்கு இவர்கள் கோரிக்கையை நிறைவேற்றிக் கொள்ள இப்படி ஒன்றுமறியா பாமரர்களை கொல்வதன்றி வேறு மார்க்கமே இல்லையா ? ஒரு எலி அடிக்க நாம் வருத்தப்படுகிறோம். சமயத்தில் கொசு அடிக்கக்கூட சலிப்பாயிருக்கிறது. இவர்கள் தொடர்ந்து மனித உயிர்களை செல்லாக்காசாக ஒரு சில மணித்துளிகளில் ஆக்கிவிட்டு ஓடி ஒளிந்து கொள்கிறார்கள். அட இவர்கள் எல்லாம் இப்படித்தான் என்றால் அட ஆளும் வர்க்கத்தினர் என்ன செய்கிறார்கள். இது போன்ற சம்பவங்களை தடுத்து நிறுத்த உரிமை பெற்றவராயிற்றே. அஜ்மல் கசாப் வந்த போது கடல் வழியே வந்தார்கள் என்றார்கள். இப்போது பஸ் நிலையம் ; ரயில் நிலையம் கடைவீதி இப்படி மக்கள் கூடும் இடங்களில் எல்லாம் கோயில்களில் எல்லாம் புகுந்து அலச ஆரம்பித்து உள்ளனரே இதை முன்னெச்சரிக்கை நடவடிக்கை எடுத்து தடுத்து நிறுத்த வேண்டாமா ? சிதம்பரம் அழகாக பேட்டி கொடுக்கிறார். அழகாக பேசுகிறார். அழகாக நடந்து காட்டுகிறார். ஆனால் தீவிரவாதம் அப்படியேதான் இருக்கிறது. அன்னா ஹசாரே யார் என்று கேட்டுக்கொண்டு தீவிரவாதிகளை விட்டுவிடுகிறார்கள். பிடித்து வைத்த அஜ்மல் கசாப் இன்னும் வாழ்ந்து வர ஒரு பாபமும் அறியா அப்பாவிகள் உயிர் இந்தியாவில் அள்ளி அள்ளி குவியல் குவியலாக வீசப்படுகிறது அதில் வேறு 13 ஆம் தேதி என்ற கணக்கும் உண்டாம். இப்போது நடந்திருக்கும் எல்லா இடங்களின் வெடிகுண்டு வெடிப்பும் ஏக ஒற்றுமையுடன் நடந்திருக்கிறதாம். உளவுத்துறையும் ; இந்திய உள்துறையும் ; மாநிலக் காவல் துறையும் ; பாதுகாப்புப் படைகளும் என்ன செய்து கொண்டிருக்கின்றன ? சிறுவனை பாதாணிக்காய் பறிக்க வந்தால் சுட்டபடி ; தந்தை தாயை அடித்துக் கொன்று மலக்கழிவுத்தொட்டியில் வீசிவிட்டு , குடித்தூக் கொண்டு ; கும்மாளம் போட்டுக்கொண்டு. பெண்வழிச் சேரலை மேலைநாடுகள் போல மாற்றிக்கொண்டு இவர்கள் வாழ்வை எல்லாம் பார்த்தால் இவர்கள் மக்களுக்கு சேவை செய்யும் அமைப்பாக எப்போது ம் என்போன்றோர்க்கு தோன்றுவதேயில்லை. தங்கள் குடும்பத்தையும் பாருங்கள் ஆனால் வாங்கும் சம்பளத்துக்கு அரசு செய்து தரும் வசதிகளுக்கு பணயமாக தங்கள் பணிகளைச் செய்ய வேண்டாமா ? செய்திருந்தால் இது போன்ற வன்முறைச் சம்பவங்கள் இந்தியாவில் நிகழக் காரணமிருக்குமா ? அடிப்படையில் இவர்களுக்கு எல்லாம் பொது நலச் சேவையாற்ற பயிற்சி அளிக்க வேண்டும். ஒரு சாலையில் நடக்கும்போது ஒரு கல்லோ ஒரு குச்சியோ கிடந்தால் எடுத்து அப்புறம் வீசி எறிகிறோமே அப்படிப்பட்ட அக்கறை அனைவர்க்கும் ஏற்பட அனைவர்க்கும் கல்வி புகட்டப்பட வேண்டும். எல்லோர்க்கும் தமது வீடு நாடு என்ற அக்கறை ஏற்படும் தேசபக்தி வேண்டும். இல்லையேல் இந்தியா மிகப் பெரும் நாடாகி விட்டது சமாளிக்க முடியவில்லை என அதிகாரத்தை எல்லாம் பகிர்ந்தளித்து குறைந்தபட்ச அதிகாரத்தை ஒருங்கிணைப்பை மட்டும் வைத்துக் கொண்டு மற்றவற்றை எல்லாம் பிரித்து மாநிலத்துக்கு அளித்து விடவேண்டும். இல்லையேல் டெல்லியில் அமர்ந்து கொண்டு அறிக்கை விட்டுக்கொண்டே நமது நாட்டில் வெடித்த பின் இறந்த பின் குடும்பங்களுக்கு ஆறுதல் சொல்ல முயற்சி செய்து கொண்டே இருக்க வேண்டியதுதான். மறுபடியும் பூக்கும்வரை : கவிஞர் தணிகை",0.892177589852,0.133878293372 51bb6805977dbbc2,= = اشاره ای مجددا به سری دوم مباحثات اصلاحاتی.دستور العمل = = چکیده ای از بررسی های بنیادی و جمع بندی بررسی های اولیه در چگونگی عملکرد در دنیای ماده و اهداف بنیادی ادمی و نقش وی در پیدایش جریانات.اشاره ای مجدد به توضیحات مقدماتی : گفتبم هر انچه که تحت عنوان پدیده است در عالم هیتی و در کلام بهتر مخلوفات خداوند تشکیل شده از قوانین از پیش تعیین شده اند که این قوانین از پیش تعیین شده بر مبنای ویژگی هایی که دارد اثراتی از خود ساتع می کند که این اثرات در کنش با یکدیگر بروز داده میشوند که این کنش منجر به تشکیل اثراتی مکملی میشوند که تشکیل شده از اثرات کنشی سازنده ان هست و در حقیقت اصلی را بیان می کند تحت عنوان مستقل نبودن اثرات نشات گرفته از ویژگی های قوانین از پیش تعیین شده و نیز بر مبنای اصلی تحت عنوان تطابق بین اثرات و ویژگی های بطنی قوانین از پیش تعیین شده که تعیین کننده ثبات قوانین از پیش تعیین شده است تنها عامل تعیین کننده درستی و نادرستی جهت گیری کنش ها بر مبنای جابه جایی قوانین از پیش تعیین شده در خصوص قوانینی است که این قوانین توانایی ان را دارند که در خصوص چگونگی بر هم کنش بین همدیگر بر مبنای جهت گیری کنش ها بین قوانین از پیش تعیین شده نقش داشته باشند بر مبنای چنین صحبتی می توانیم این گونه بگوییم که کالبد ماده و بعد غیر ماده علی رغم تفاوت های ظاهری در حقیقت از یک اصل مشترک تشکیل شده اند و ان اصل هم وجوب قوانین از پیش تعیین شده ای است که تشکیل دهنده پیکره هریک از ابعاد ماده و غیر ماده می باشد که در نتیجه برخورد بین همدیگر و بروز اثرات نشات گرفته از ویژگی های بطنی ان موجودیت پیدا کرده انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد وجود بعد زمان و مکان است که این ابعاد زمان و مکان در حقیقت کنش هایی است که بین اثرات تشکیل دهنده ویژگی های بطنی قوانین از پیش تعیین شده برای رسیدن به موجودیت انها می باشد که سازنده ان خودقوانین از پیش تعیین شده ای می باشد که نقش در چگونگی بر هم کنش بین قوانین از پیش تعیین شده بر مبنای جهت گیری انهادارند بر مبنای اصل اول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تحت عنوان پی بردن به بطن قوانین از پیش تعیین شده از روی کنش بین انها و بروز اثرات نشات گرفته از بطن انها می باشد و اما در خصوص این کنش ها در ابعاد و کالبد ماده که تعیین کننده بعد زمان و مکان در کالبد ماده می باشند ما گفتبم انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد ان هست که در کالبد ماده شاهد تغییرات هستیم اما اصطلاحی تحت عنوان تغییرات در بعد غیر ماده نداریم چراکه وجود قوانین از پیش تعیین شده بر مبنای ویژگی های بطنی خود و تطابقی که بین این ویژگی ها و اثرات نشات گرفته از ان وجود دارد بر مبنای اصل تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و این ویژگی ها که تعیین کننده ثبات قوانین از پیش تعیین شده است یک اصلی غیر قابل تغییر می باشد اما انچه که مفهوم تغییر را می تواند در معنای بهتری اثبات کند کنش هاییهست که بین اثرات منشا گرفته از قوانین از پیش تعیین شده برای رسیدن به موجودیت هریک از انهامی باشد که با وجودقوانینی که خود نقش در چگونگی بر هم کنش دارند جهت گیری این کنش ها که تعیین کننده مرز بین درستی و نادرستی است تعیین کننده تغییرات می باشد اما نکته وجود دارد و ان هم این هست که درتغییراتما گفتیم انچه که سبب اثبات مفهوم تغییرات میشود در حقیقت تبدیل شدن اجزا در نتیجه کنش ها به اجزایی دیگر میباشد که در نتیجه این کنش ها سبب نتیجه ای مکملی میشود که تشکیل یافته از اجزای بر هم کنش یافته بین انهاست این اصل درخصوص تغییرات با توجه به ثبات قوانین از پیش تعیین بر مبنای ویژگی های بطنی انها و اثرات نشات گرفته از انهاچگونه اثبات میشود؟گفتیم که جهت گیری در کنش ها بین اثرات نشات گرفته از بطن قوانین از پیش تعیین شده و اثرات مکملی تشکیل دهنده جریانات توسط قوانینی صورت میگیرد که بر مبنای اصول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تعیین کننده این چگونگی بر هم کنش ها می باشد و مرز بین درستی و نادرستی بر مبنای همین چگونگی بر هم کنش ها توسط این قوانین تعین میشود تحت عنوان چنبن گفته ای می توانیم این طور بگوییم که جهت گیری بر هم کنش بر مبنای جابه جایی بین قوانین از پیش تعیین شده تاثیر میگذارد در اثرات نشات یافته ازویژگی های بطنی انها و اما چگونه ؟می دانیم که ماهیت قوانین از پیش تعیین شده بر مبنای ثبات ویژگی های بطنی انها بر مبنای اثرات نشات گرفته از انها یک امری ثابت و بدون تغییر است و این ثبات در تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و ویژگی های بطنی انها خلاصه میشود اما انچه که تحت عنوان تاثیرات بر مبنای جهت گیری در کنش ها بین قوانین از پیش تعیین شده اثر می گذارد بر روی اثرات نشات گرفته از قوانین از پیش تعیین شده نتایج این کنش ها بر مبنای اثرات مکملی است که تشکیل یافته از اجزای کنش یافته بین انهاست و چون بر مبنای اصلی تحت عنوان عدم مستقل بودن تاثیرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده این اثرات به تنهایی معنا و موجودیتی ندارند که این خود اهمیت کنش ها بین اثرات نشات گرفته از قوانین از پیش تعیین شده را در بروز اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و نیز ارزش این کنش ها را در ایجاد جریانات که متشکل از اثرات مکملی کنش یافته از اجزای تشکیل دهنده ان است در تاثیرات ان در نتیجه کنش در بروزاثرات نهفته در ویژگی های قوانین از پیش تعیین شده شامل میشود بنا به انچه گفته شد در حقیقت انچه که مفهوم تغییر را در کالبد ماده بنا به ماهیت ان تحت عنوان قوانین از پیش تعیین شده اثبات می کند وجوب کنش هایی است که بین اثرات بر مبنای جهت گیری انها می باشد که انچه که تغییر را شامل میشود همان اثرات مکملی ایت که در نتیجه این کن,0.993457943925,0.133369540144 e92b00bdcea3aa7c,الى الغالية / يوليا اعرف انكى تتابعين جيدا رسالاتى. لذا ان متواصلا معى الى ان اصل اكرانيا العظمى واتمنا ان يكون ذلك فى اقرب وقت من اجل اشياء كثيرة زكرتها وانى فى شوق الى هذا اليوم بعد سنين الاضطهاد والعزاب التى اضاع فيها السفاح الدجال الكثير من الاحلام والطموحات التى كنت قادرا عليها بنائا على امكاناتى وما حققته حتى وانا اعانىت ويلات العزاب واتمنا ان تنتهى مؤامرات الشيطان مبارك واستعيد كل ما سرق منى وان يكون لى نصيبا فى الحياة التى استحق لنحقق ما نود الوصول اليه من اهداف كلها مشروعة حسب كل القيم والمبادى القانونية المعروفة . اتمنا ايها العزيزة الغالية ان ينطوى خطر الدجال لتعيش البشرية فى امان وانتم تعرفون كم دافعت من اجل ذلك .. وكما تعرفون انهم ما ذالو فى غيبوبة اهوائهم الابليسية ولكن لا مجال لتعطيلهم لانى اقوم بكل ما هو ضد تآمرهم وكما تعلمون ايضا ان الملامح القوية التى اشرتم اليها تزلزل قلوبهم لانهم يشعرون بذلك فتحياتى اليكم متمنيا استمرار المجهودات حتى اخرج من هذا البلد اللعين الذى يقضى على حياتى . واعرفك بانى لو تاخرت بعد حصولى على اموالى لديهم ستعرفين بانى ساقوم بعملية فقط سريعة بلبنان ثم الذهاب مباشرتا الى اكرانيا لاخذ الجنسية وبدء حياتى كمواطن اكرانى متمنيا ان يوفقنى الله بالخروج من مصر اولا شاكرا لكم وفائكم واهتماماتكم ومجهوداتكم الى ان اكون معكم لتحقيق الكثير من الامال التى نستحقها على هذا الكوكب الذى يستوجب تفعيل العقلاء والمخلصين والنبلاء. تحية اليكى والى كل من يهتمون جيدا بالاحداث الجارية لان الحياة تهمنا جميعا وانالاخطار حولنا جميعا. والامر يحتاج اليكم بما انكم معنيين بالكثير من المسؤلية من حيثيات ادراككم وانسانيتكم وضميركم واهمية استعادة دوركم فى العالم ولتحقيق ما يجب ان تكون عليه دول روسيا الاتحادية وانا سابدء معكم من اكرانيا ومدركا مدى اهمية موسكو بمساندة بعضكم بعضا حتى تصبحون القوة المطلوبة لدفع اى شر او مؤامرات او تهديدات من هذا القبيل قد عرقلت العالم سنوات طويلة قامو فيها بالكثير من الاضرار النفسية والعقلية والروحية لسلب العالم ارادته ووعيه وكرامته. والان العالم مقبل على الرشد بما قمنا به من نصرة الانسانية والى ان نحقق الامان المطلوب ونضع القوانين اللازمة لوقف اى مخاطر تهدد الانسانية وتاريخها ومستقبلها. وانى اعرف جيدا مدى مشاعركم ومحبتكم وانا ايضا ابادلكم هذه المشاعر النبيلة واريد ان نكون معا .. سلامى الى كل اكرانيا والى الادارة الموقرة والى الجيش الاكرانى العظيم. تحياتى واشواقى اليكم . شاكرا لكم ما تبزلوه. والسلام عليكم ورحمة الله .. الراسل/ حسين امين,0.981818181818,0.132085462392 2ffaec4460e0d194,"= = ভীষণ শীতকাল = = প্রায় কিছুই হলো না- এই রাত নিয়ে গেছে শীত একটু আগে এই বাঁক খাওয়া সন্ধ্যার গভীরাগভীর বৃত্তান্ত জেনে গা ঘেঁষে গুঞ্জন করেছিল দু’টি সোনালী হরফ তারপর সিঁড়ি ভেঙে গেছে নির্ভার । এই ব্যাথিত ক্ষুধা-ঘুম তারপর এই রাতের কোলে আফিম যন্ত্রণা দীলিপের স্নায়বিক ধুপ দক্ষিণে কি ঝড় উঠেছে ভীষণ ? যদি তা না হয় তবে দ্যাখো ; এই দীপাবলি কুয়াশা আঁকড়ে ধরে কী নিবিড় ! যে তুমি আঁক রঙের তল মেপে মেপে জীবনের তীব্র আকাঙক্ষার প্রগাঢ় রেখামালা উঠোনে খড়কুটো জ্বালো প্রচন্ড শীতে আর ক্ষয়ে ক্ষয়ে প্রচুর জল হয়ে পড়ো বৃষ্টিধারায় ... কী সেই বোধ - উদ্দিপ্ত স্লোগান ! শুনেই রাস্তায় লোক জড়ো হয় দানবের মতো গুড়িয়ে দেয় অসংখ্য দালান অথবা সারারাত্রির চুম্বনে ঝলসে গিয়ে নুয়ে পড়ে জলহীন চারার মতো পরিত্যাক্ত মাটিতে এমন ভেঙে দিতে পার তুমি ; ছুঁয়ে দিতে পার সুখ ! কে এমন ধনী , যে প্রশান্তির জন্য এতটুকু করুণা না চায় ? কে এমন গরীব , ভোররাতে কার ঘর খুড়ে খুড়ে কান্না করে কলরোল ? আর আমি ভাবি ; এই শীতকাল এই হলুদ অবয়বে ক্লান্তির রেখা ধরে কী দীর্ঘ ছায়া নামে কী অবাক ! এখনো ঘাসে মুদ্রিত হয় শিশিরের ছাপ হাওয়া এলে পাতাগুলো লুকোচুরি খেলে মগ্নতা দাবী করে সারা সন্ধ্যা শাসায় ।",0.748953974895,0.131988560086 ca741b7ebe22cfb4,= = A Comment to my Awadhi Friend = = إلى أخي الكريم العوضي تحية طيبة وبعد ،،، عزيزي العوضي عذرا بس لاحظت اني اكتب بالعربي لربما يكون أحسن من ناحية جوابي على رأيك ياصديقي العزيز .. أنا اللي أساسا كاتب هالموضوع عن الهولة والخودمونية في ويكي، لكني مب آخر واحد سوا في تعديلات عن منيرة فخرو وغيرها والبلدان اللي احنه موجودين فيها وهاي أصلا صعب أنعرفه بسبب التشابك الغريب بين الطائفتين العرب والفرس المهاجرين من ايران بغض النظر عن الأسباب. صديقي العزيز انه مادري وين راح رفيقي البستكي انه مجاوبك مع اني كلمته من فترة أبخصوص أن يرد ويناقشك فيها، بس انه بما اني من ضمن أعضاء فريق النقاش السلمي اهني، اسمحلي انه اشرح وجهة نظري. كان حلوة ملاحظتك بشأن رأي الشيعة عنه وتعاطف الفرس وانه اوقف معاك فيها. بس عزيزي هاي اللي انت قاعد تشرحه اهوة مشكلة اجتماعية بغض النظر عن اسبابها الكثيرة، ومايصير أتخليها في موسوعة رسمية ضخمة جدا على الانترنت بسبب هاي الاسباب واتقول انه احنه أحين عرب. احنه اخوي مب عرب احنه فرس حتى النخاع ولكننا واقفين في صف اخوانه العرب السنة بسبب الضغط، واللي يتبرى من أصله نذل يا صديقي العزيز مع احترامي العميق لكل اخواني الفرس من كله الطائفتين، وفي نفس الوقت اللي يهاجم شخص بسبب اختلاف مذهبة سواء كان اهوة سني او شيعي فهاي انسان متخلف مايفهم لا في الدين ولا في الاخلاق والتربية. شوف طريقتي احين في الشرح اتراويك انه هاي مشكلة دينية واجتماعية بينما الموقع أهني يعترف باللاشياء العلمية والتاريخية المسجلة فقط وان كان فيها صراحة بعض التحريف ولكن هاي يرجع لحرية التصحيح اهني. انه اخوي مالومك على رأيك، بس انت علميا مايصير اتقول احنه أحين صرنه عرب ! اجتماعيا وتربويا تقدر اتقول هلون أي، لكن علميا ووراثيا هاي شي مستحيل اخوي ! وفي نفس الوقت احب اقولك تره احنه مانبي لا عطف الفرس ولا الشيعة ولا السنة ولا غيرهم ولا نبي انسوي شريحة جديدة من المجتمع لانه احنه كلنه مسلمين اصلا واساس التفرقة الطائفية في دينا ترجع لسببين واللي اهوة اعداء الاسلام من برع الدين، او الناس المسلمين اللي يبون يتمون في مراكزهم بأستخدام التفرقة وفيهم سنة وشيعة على فكرة، مب الرسول ولا اهل بيته ولا صحابته و لا اهل السلف. احنه اهني اخوي للأسف حاولنه انه وصديقي البستكي انه نبعد المذهب قدر الإمكان من هذا الموضوع العلمي لكن بعد صار معيار مهم للناس ! بعدين اخوي أنت من قالك انه الشيعة يكرهوننا؟ المتخلفين منهم أي، واحنه مانكرهم بس متخلفينه أي ! اكو روح شوف قرانه في إيران بانيين لهم شوارع اشكثر بس معتقد انك حتى زرتهم او اتعرف عنهم الكثير يمكن، وفي مشهد وقم في اشكثر سنة مناك ولا احد حتى يسألك انت شنو ! ولو بتثير هالنقاط عندهم الناس ملت من هالاشياء ! لا قط سمعنه انه سني انظلم مناك أو قتل مثل ما الناس اتقول بس احنه شعوبنه اتكبر المساءل للأسف ! بالنسبة حق اخوانه العرب اخوي فانه معاك ! انه على فكرة وصديقي البستكي مانعتبر روحنه أجانب مني ولا العرب أجانب ! انه بحريني واعتز ابوطني، لكني ما انسه بعد أصلي من أي بلد واللي يعتبر بلدي الثاني بس مب وطني وبيتي ! بالنسبة لحب العرب لنه بقولك شي مع احترامي لك ولهم، معيار حبهم لنه تره يعتمد على التربية والتخلف اشلون معاه، لكن مع احترامي لك اهمة بعد فيهم وايد عنصرية ملحوظة علينه للحين وكل ما استغنو ازيادة يطنزون علينه مجرد مذهبنة المشترك يخليهم يتعاطفون معانه واشكالنه الجميلة وعملنه الكادح ! هاي انه اكلمك من ناحية اذا ماحبونه بس فيهم ناس من ناحية ثانية اهمة اهلي واصدقائي احطهم على جرحي يبرد ! شوف عزيزي اكررلك انه هاي مب مشكلة اصل وطائفة اذا اتشوف رايك فهي مشكلة اجتماعية مب علمية انه انحطها في في هالموضوع او نقتنع فيها يا صديقي العزيز . بعدين بالنسبة لاستخدام كلمة اخوان فحتي الشيعة اخوانه مهما يكون لانه دينه واحد وهاي المهم، وبالنسبة لذكر الزواج فاحنه ناخذ منهم وياخذون منه بشكل كثير وايد وليما صار حب حقيقي بين اثنين من معدن اصيل مايهم لا المذهب ولا الدين اخوي. انه حطيت ايميلي فوق اذا بغيت اتناقشني في شي حياك في أي وقت واقدر ادليك على البستكي لانه فاضي اكثر مني وشغله في الحياة هاي المواضيع الاصولية ! والسلام عليكم والرحمة ،،، Janahi sworld hotmail com,0.920341394026,0.131696015647 d570804cff8f3e3f,با عرض سلام خدمت رياست جمهوري و اعضاي دولت مصر و ضمن ابراز خرسندي بابت مشخص شدن تکليف مصرو روي کار امدن رياست جمهوري در مصر و ايجاد يک دولت در مصر بعد از مدت ها اشوب.در درجه اول بايد تشکر کنم از ملت مصر که با اتحاد خودشان بالاخره تکليف کشورشونو مشخص کردن و کشور رو از بي سروسامان گيري در اوردن البته با خبر هستم که درگيريهايي در مصر ايجاد ميشه اما خب خوشبختانه ديگه مثل سابق نيست ولي خب همين درگيري ها هم مسلما به دلايلي هست که مي تونم مهم ترينش رو بي کفايتي مسئولين دولت مصر بدونم مثل همه دولت ها.اين سياست مسئولين دولت هاست که وقتي بر سر کار ميان مسئوليت پذيريشون فقط مال دو سه هفته اول هست از اون دفعه به بعد ميشه به مرور زمان شاهد هزاران تغييرات در انها بود اين تغييرات باعث ميشه شخصيت اونا تقيربا صد و هشتاد درجه عوض بشه و فردي رو به ما نشون بده که با يک هويت جديد ممکنه بپرسيد مگه هويت ادما عوض ميشه من در جواب خواهم گفت در چنين شرايطي اره اما نه اينکه هويت و اصالتشون عوض بشه منظور من ويژگي هاي اصالتشون ادميتشون و هويتشون هست والله اونا پابرجاست ووقتي ادم ويژگي هاي اون رو از دست بده چه فرقي ميکنه با کسي که اونو نداره چنين اشخاص با چنين تغييرات شبيه به موجوداتي ميشن فقط و فقط با يک اصل زندگي ميکنند اين صفت به مرور زمان در مسئولين دولت ها ايجاد ميشه و اونم در نتيجه ستايش هاي مردم و انتظار مسئولي از مردم از چنين ستايش هايي هست من سر گذشت مصر رو تا حدي مي دونم چون نمونه ايش رو در کتاب سينوهه خوندم در زمان گذشته مصر مردم مصر در نتيجه اهميت و بها دادن به فراعنع مصر از اونا شخصيت هايي ساختن که اين شخصيت ها خودشونو خداي مردم اعلام کردن بنظرتون در اين تغيير شخصيت فقط مسئولين مقصرند؟مسلما نه بلکه مردمي که انها را به جاي اينکه حاميان خود بپندارن حاکمان خود دانستند انسان در هر مرحله از زندگي که باشه مثل کودکي ميمونه که شرايط محيط و ديگران مثل مادر و خواهر اون ميمونن که که متاثر از اونا هستن و اعمال اونا مسئولين کشور هم يک نوع اوم هستن مثل همه ماها فقط با اين تفاوت که اونا در مقام مسئولين کشور هستن و دارندگان و اداره کنندگان کشور ما در حکم شهروند هستيم و زير نظر اين اداره کنندگي کشور تجربه اين رو ثابت کرده که انسانها در روابط اجتماعي مي تونن به تکامل برسن يا اينکه خودشونو به نابودي بکشند اين نابودي مثل نابودي مرگ ظاهري نيست بلکه نابودي انسانيت و وجدان و حقيقت جويي هست البته همچين تفاوت زيادي با مرگ ظاهري نميکنه چون در مرگ ظاهري ادما جسمشونو از دست ميدن اما در مرگ باطني انسان شبيه مرده متحرک ميشه که فقط جسمش زنده هست اما سه اصلش خاموشه اين خاموشيت به مرور زمان از انسان موجودي ميسازه که کمتر شباهت به انسان داره چين موجودي به مرور زمان لکه هاي صفت بد رو در روحش نقش بندي ميکنه و همين لکه ها در نتيجه تمديد اين خاموشي به مرور زمان بزرگ تر ميشه و با قابليت پاک شدن کمتر مثل لباسي که چند روز لکه ها روش بمونن و مدام به جاي اينکه کم رنگ تر بشن مدام بهش رنگ اضافه ميشه و روز به روز پر رنگ تر ميشه اين پررنگ شدن درواقع همون عادت کردن انسان و شيرين شدن اون صفت براي انسان هست حالا اين شسرين شدن مي تونه به شکل اجباري تحت تاثير شرايط باشه و يا در نتيجه يک لذت حاصل از غريزه انساني وقتي حالت اجباري باشه فرد به ناچار تحت تاثير شرايط سياسي و اجتماعي ناچار تن به صفات بد بده ناچاره فراموش کنه و پرده بپوشونه رو انسانيت و حقيقت جويي و وجدانش چنين خصلتي مسلمابه مرور زمان از فرد شخصيتي منفعت جو درست ميکنه که واسه خاطر منافع اش دست به هزاران اعمال غير انساني ميزنه و شخصيتي انتقاد ناپذير چه به شکل مستقيم مثل کاري که محدوديتي که دولت هاي خاورميانه و برخوردي که اونا يا مخالفانشون ميکنند با اينکه مخالفانشون از نژاد خودشون و در داخل کشور هستن و چه به شکل غير مستقيم که در کشور هاي اروپايي و امريکايي به چشم ميخوره اعضاي دولت مصر و رياست جمهوري مصر اگر در مصر در زمان گذشته فراعنه خودشان رو چون خداياني ميپنداشتن که بر مردم حکومت کنند اکنون نيز با گذشته مصر فرقي نکرده فقط در ظاهر هست اما اگر بخواييد واقعيت رو نگته کنيد متوجه خواهيد شد که روش سياستي الان سياستمداران در کل دنيا به جاي ابنکه حامي مردم باشن خودشان را حاکم مردم مي دونن و حالت بعدي که فرد با سرگرم شدن در پرده پوشي در انسانيت و وجدان و حقيقت جويي لذت ميبره چنين اشخاصي لذت بردنشان محدوده چون قوه وجدان انسان چيزي نيست که از بين بره به مرور زمان اين قوه در انسان فعال تر ميشه مخصوصا در زماني که عجل انسان فرا برسه ممکنه خيلي وقتا هم باشه که در زمان عجل باز به کار نيوفته که اون نشان بر همون پررنگ تر شدن لکه ها در روح انسان ها به مرور زمان هست هدف همه اين گفته ها چي بود ؟اين بود که بگم در دنياي امروز سياستمداران تغييراتشون مدافعيتشون کمک هاشون و همه و همه عملکردهاشون به جاي اينکه در معناي واقعي خودشون به کار برده بشه فقط در پوشش اونها به کار برده ميشه اين نه ميشه روراستي نه ميشه عملکرد مناسب نه ميشه انسانيت نه ميشه وجدان و نه ميشه حقيقت جويي بلکه ميشه سود جو و منفعت طلب و دلبسته به قدرت و مقام و حکومت که واسه خاطر اينا حاضره انسانيتشو هم به فروش برسونه خودتون نگاه کنيد خودتون قضاوت کنيد هرچند خودتون هم مسئولين چقدر واسه خاطر حکومتتون حاضريد بپردازين نگيد واسه مردم که من به شخصه باور نخواهم کرد چون اگه واسه خاطر مردم هست چرا هزاران انسان بيگناه در سرتاسر دنيا در نتيجه اعمال غير انساني مسئولين دولت ها دارن کشته ميشن چرا محيط زيست و و کره زمين شدن ميدان براي امتحان کردن انواع اقسم بمب هاي خطرناک هسته اي که انفجار ذره اي از اونا نيمي از محيط زيست و موجودات زنده و جون هزاران ادم بيگناه رو به خطر ميندازه مگه اين دولت ها نبودن که واسه خاطر اينکه کره زمين ناوبد نشه در برابر اشعه هاي خطرناک خورشيد و فضا و,1.0,0.131243290015 1358ecd71f6f795a,"= = নো ম্যান্স ল্যান্ডের পরী কে লেখা গেদু চাচার খোলা by Gedu Cacar Khola Cithi ( গেদু চাচার খোলা চিঠি ) = = মা ফেলানি , তোকে লিখব লিখব করে লেখা হয়ে ওঠে না।কি লিখব বল?লিখব কেমন আছিস?স্বর্গে তোকে নতুন জামা দিয়েছে কিনা?কি কি খাবার ওখানে তোকে দেয়?আমি জানি আমার এই চিঠিটা তোর হাতে পৌছালে অভিমানে তুই কেঁদে দিবি ... বাংলাদেশ থেকে এসেছে বুঝলে তুই তোর মা এর কাছে ছুটে আসতে চাইবি।না মা এমনটা করিস না;ছোট্ট ফেলানি তোকে হারিয়ে আমরা এমনি অনেক লজ্জা আর কষ্টের মধ্যে আছি ... আর যদি এমন করিস তাহলে আমাদের কষ্ট আবারও বেড়ে যাবে । ফেলানি,তুই হয়ত দেশের সেরা অর্থনীতিবিদের মত রেমিটেন্স কি জিনিস জানিস না,জানিস না এটা কিভাবে আসে ... কিই বা তার ব্যবহার ? আমি কিন্তু অবাক হয়ে গেলাম তুইও আমাদের কিছুটা রেমিটেন্স দিয়েছিস ... কারণ মা-বোন রেখে তোকেও সুদুর ভারতের কোথাও জিবনযাপন করতে হতো।তুই তো আর আকাশ পথে ভারতের শিমলায় বেড়াতে যাসনি ... যে আরামে ফাইভ ষ্টার হোটেলের মধ্যে শীতাতপ নিয়ন্ত্রিত কক্ষে খাওয়ার সুযোগ ছিল।তোকে তোর বাবার সাথে যেতে হয়েছে মই দিয়ে পার হয়ে ... যা আমাদের অবাক করে দেয়।ফেলানি তুই কি জানার সুযোগ পেয়েছিলি কখনও ভারতের সাথে আমাদের কি দহরম মহরম খাতির?আহারে!!!ঐ বিএসএফ আগে জানলে হয়ত তোকে নিজেই পার করে দিত পরপারে পাঠানোর আগে।তুই কাঁদিস না মা,তোর মত হাজারটা বড় ভাই মিশর সীমান্তে এখন রাত কাটাচ্ছে ... কেউ জানেনা তারা কবে দেশে ফিরবে।টাকার মায়া ভুলে তোর পাঁচটা বড় ভাই জাহাজে উঠতে চেয়েছিল ... পারেনি।আমরা জানিনা ওদের লাশ দেশে এসেছে কিনা ... ওদের মায়েরা ওদের বুকে লূটে পরে কাঁদতে পারছে কিনা ... ওদের বাবারা ছেলের মস্তবড় ভারি লাশটা এক বুক ব্যাথা নিয়ে বহন করতে পারছে কিনা ... দিতে পারছে কিনা কবরে এক মুঠ মাটি । মা ফেলানি,তোকে তোর লাল জামাটায় খুব মানায়ছিলরে ! ! ! ! ঠিক যেন লাল টুকটুকে একটা পাখি ... যে অকালে ঘর বাঁধার স্বপ্নে সীমান্ত পাড়ি দিয়ে দেশে আসতে চেয়েছিল ... স্বপ্ন ভেঙ্গে দিয়েছে আমাদের পরমাত্মীয় প্রতিবেশির বূলেট।ফেলানি , তুই বোধহয় আমার কোন গল্পে পড়া নায়িকার ছোট বেলার রুপ ... যার চোখেমুখে দুষ্টামির আভা খেলত ... অস্পষ্ট তোকে দেখে মনে হল আগের বারে চটপট পার হয়ে যাওয়া তুই মৃত্যুর যন্ত্রনার বদলে আটকে যাওয়া পোষাক খুলতেই বেশি ব্যাস্ত ছিলি।ফেলানি,তোকে আমরা তোর দুরন্ত কৈশর দিতে পারবো না,দিতে পারবনা স্কুলে যাবার জন্যে উৎসাহ ... লাল ফিতা চুরি মালা তো নাইই।তোর বাল্যবিবাহের কথা এখন আর বলব না ... যদি সেটাও দিতে পারতাম ... হয়ত দরিদ্র , অপুষ্টিতে ভোগা ফেলানির কোল আলো করে নতুন কেউ আসত।আচ্ছা ফেলানি আমরা কি তোকে কিছুই দিতে পারিনি?ভেবে দেখত একটু ... বেঁচে থাকলে হয়ত তুই বলতি বেশি বাহানা না করে বল কি দিছো? ... হ্যাঁ আমরা তোকে একটা নতুন পরিচয় দিছি ... তুই আমাদের অন্য গ্রহের ছোট্ট পরী ... আমাদের দেশের কেউ না ... আমাদের কেউ হলে নির্লজ্জের মত ওদের প্রতিক্রিয়া দেখার জন্যে বসে থাকেতে হত না।আমাদের না বলেই তোর মত একটা লাল নীল পরী অভিমান করে নো ম্যান্স ল্যান্ড থেকেই আবার চলে গেছে । ফেলানি , তোর খুব কষ্ট হয়েছিলো তাই না মা? ... তীব্র ব্যাথা নিয়ে কাঁটাতার থেকে নিজেকে ছুটাতে?অনেকক্ষণ মাথা নিচে দিয়ে ঝুলে থাকাতে? ... ।মা রে,এদেশে আমার তোর মত দীন দরিদ্র মানুষের অকারণ মৃত্যুও খারাপ ... কারণ আইন কানুন আমাদের বেলাতেই কড়া।ছোট্ট পরী তোকে হয়ত কেটে টুকরা টুকরা করা হয়েছিল ... সুরত হাল এর জন্যে ... তারপর আবার সেলাই দিয়েছে।এ যেন মাটির পুতুল ভেঙ্গে তাকে আবার জুড়ে দেওয়ার প্রচেষ্টা।বেঁচে থাকতে আমরা তোকে একজন বাংলাদেশি নাগরিকের মত মৌলিক চাহিদার নিশ্চয়তা দিতে পারিনি কিন্তু মরে কেন গেলি সেটা জানতে আইন মেনে ফেলা হলো ঠিকই । ভাল থাকিস মা।বেহেস্তের ডাক্তাররা আমাদের ডাক্তারদের মত টাকার অভাবে থাকেনা তাই ওদের তোর সমস্যার কথা ঠিক মত খুলে বলিস।পারলে আমাকে স্বপ্নে চিঠি দিস ... দিস তোর মা কেও জানিসতো তুই এখনো ফিরে আসতে পারিস এই আশায় দরজায দাঁড়িয়ে থাকে সজল আখিতে।আজকে রাখি মা,তোর হেনা আপাকে লিখতে হবেযে ... আর তুই এবং হেনা একই জায়গায় থাকার চেষ্টা করিস ... তোদের হোষ্টেল সুপার কে বলে।পারলে সিমি,ইয়াস্মিন কে খুঁজে দেখার চেষ্টা করিস । ইতি , তোর গেদু চাচা , ১০-০৩-২০১১ ইং । * * * বর্ডারে মানুষ মারা বন্ধ হয়নি।কিছুদিন আগেও একটা পনের বছরের ছেলে কে গুলি করে মারছে বি এস এফ।তাই ফেলানির স্থানে তার নাম ... আবার তার জায়গায় আসবে আরেকজনের নাম।বড় অদ্ভুত আমাদের এই দেশ * * * নো ম্যান্স ল্যান্ডের পরী কে লেখা গেদু চাচার খোলা চিঠি ।",0.881188118812,0.130938294159 99fb59ac4e994dd9,OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME OWEIN IS AWESOME,0.333333333333,0.130798480306 fdfab8c744626646,= = اشاره ای مجددا به سری دوم مباحثات اصلاحاتی.-دستور العمل = = چکیده ای از بررسی های بنیادی و جمع بندی بررسی های اولیه در چگونگی عملکرد در دنیای ماده و اهداف بنیادی ادمی و نقش وی در پیدایش جریانات.اشاره ای مجدد به توضیحات مقدماتی : گفتبم هر انچه که تحت عنوان پدیده است در عالم هیتی و در کلام بهتر مخلوفات خداوند تشکیل شده از قوانین از پیش تعیین شده اند که این قوانین از پیش تعیین شده بر مبنای ویژگی هایی که دارد اثراتی از خود ساتع می کند که این اثرات در کنش با یکدیگر بروز داده میشوند که این کنش منجر به تشکیل اثراتی مکملی میشوند که تشکیل شده از اثرات کنشی سازنده ان هست و در حقیقت اصلی را بیان می کند تحت عنوان مستقل نبودن اثرات نشات گرفته از ویژگی های قوانین از پیش تعیین شده و نیز بر مبنای اصلی تحت عنوان تطابق بین اثرات و ویژگی های بطنی قوانین از پیش تعیین شده که تعیین کننده ثبات قوانین از پیش تعیین شده است تنها عامل تعیین کننده درستی و نادرستی جهت گیری کنش ها بر مبنای جابه جایی قوانین از پیش تعیین شده در خصوص قوانینی است که این قوانین توانایی ان را دارند که در خصوص چگونگی بر هم کنش بین همدیگر بر مبنای جهت گیری کنش ها بین قوانین از پیش تعیین شده نقش داشته باشند بر مبنای چنین صحبتی می توانیم این گونه بگوییم که کالبد ماده و بعد غیر ماده علی رغم تفاوت های ظاهری در حقیقت از یک اصل مشترک تشکیل شده اند و ان اصل هم وجوب قوانین از پیش تعیین شده ای است که تشکیل دهنده پیکره هریک از ابعاد ماده و غیر ماده می باشد که در نتیجه برخورد بین همدیگر و بروز اثرات نشات گرفته از ویژگی های بطنی ان موجودیت پیدا کرده انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد وجود بعد زمان و مکان است که این ابعاد زمان و مکان در حقیقت کنش هایی است که بین اثرات تشکیل دهنده ویژگی های بطنی قوانین از پیش تعیین شده برای رسیدن به موجودیت انها می باشد که سازنده ان خودقوانین از پیش تعیین شده ای می باشد که نقش در چگونگی بر هم کنش بین قوانین از پیش تعیین شده بر مبنای جهت گیری انهادارند بر مبنای اصل اول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تحت عنوان پی بردن به بطن قوانین از پیش تعیین شده از روی کنش بین انها و بروز اثرات نشات گرفته از بطن انها می باشد و اما در خصوص این کنش ها در ابعاد و کالبد ماده که تعیین کننده بعد زمان و مکان در کالبد ماده می باشند ما گفتبم انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد ان هست که در کالبد ماده شاهد تغییرات هستیم اما اصطلاحی تحت عنوان تغییرات در بعد غیر ماده نداریم چراکه وجود قوانین از پیش تعیین شده بر مبنای ویژگی های بطنی خود و تطابقی که بین این ویژگی ها و اثرات نشات گرفته از ان وجود دارد بر مبنای اصل تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و این ویژگی ها که تعیین کننده ثبات قوانین از پیش تعیین شده است یک اصلی غیر قابل تغییر می باشد اما انچه که مفهوم تغییر را می تواند در معنای بهتری اثبات کند کنش هاییهست که بین اثرات منشا گرفته از قوانین از پیش تعیین شده برای رسیدن به موجودیت هریک از انهامی باشد که با وجودقوانینی که خود نقش در چگونگی بر هم کنش دارند جهت گیری این کنش ها که تعیین کننده مرز بین درستی و نادرستی است تعیین کننده تغییرات می باشد اما نکته وجود دارد و ان هم این هست که درتغییراتما گفتیم انچه که سبب اثبات مفهوم تغییرات میشود در حقیقت تبدیل شدن اجزا در نتیجه کنش ها به اجزایی دیگر میباشد که در نتیجه این کنش ها سبب نتیجه ای مکملی میشود که تشکیل یافته از اجزای بر هم کنش یافته بین انهاست این اصل درخصوص تغییرات با توجه به ثبات قوانین از پیش تعیین بر مبنای ویژگی های بطنی انها و اثرات نشات گرفته از انهاچگونه اثبات میشود؟گفتیم که جهت گیری در کنش ها بین اثرات نشات گرفته از بطن قوانین از پیش تعیین شده و اثرات مکملی تشکیل دهنده جریانات توسط قوانینی صورت میگیرد که بر مبنای اصول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تعیین کننده این چگونگی بر هم کنش ها می باشد و مرز بین درستی و نادرستی بر مبنای همین چگونگی بر هم کنش ها توسط این قوانین تعین میشود تحت عنوان چنبن گفته ای می توانیم این طور بگوییم که جهت گیری بر هم کنش بر مبنای جابه جایی بین قوانین از پیش تعیین شده تاثیر میگذارد در اثرات نشات یافته ازویژگی های بطنی انها و اما چگونه ؟می دانیم که ماهیت قوانین از پیش تعیین شده بر مبنای ثبات ویژگی های بطنی انها بر مبنای اثرات نشات گرفته از انها یک امری ثابت و بدون تغییر است و این ثبات در تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و ویژگی های بطنی انها خلاصه میشود اما انچه که تحت عنوان تاثیرات بر مبنای جهت گیری در کنش ها بین قوانین از پیش تعیین شده اثر می گذارد بر روی اثرات نشات گرفته از قوانین از پیش تعیین شده نتایج این کنش ها بر مبنای اثرات مکملی است که تشکیل یافته از اجزای کنش یافته بین انهاست و چون بر مبنای اصلی تحت عنوان عدم مستقل بودن تاثیرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده این اثرات به تنهایی معنا و موجودیتی ندارند که این خود اهمیت کنش ها بین اثرات نشات گرفته از قوانین از پیش تعیین شده را در بروز اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و نیز ارزش این کنش ها را در ایجاد جریانات که متشکل از اثرات مکملی کنش یافته از اجزای تشکیل دهنده ان است در تاثیرات ان در نتیجه کنش در بروزاثرات نهفته در ویژگی های قوانین از پیش تعیین شده شامل میشود بنا به انچه گفته شد در حقیقت انچه که مفهوم تغییر را در کالبد ماده بنا به ماهیت ان تحت عنوان قوانین از پیش تعیین شده اثبات می کند وجوب کنش هایی است که بین اثرات بر مبنای جهت گیری انها می باشد که انچه که تغییر را شامل میشود همان اثرات مکملی ایت که در نتیجه ا,0.993451824135,0.129893114207 cd9dae0b4998871b,با عرض سلام خدمت رياست جمهوري کشور جناب آقاي روحاني و ضمن تشکر از توجهات به متون مباحثه من اولش فکر ميکردم که شما متون مباحثات رو پاک کردين که بعد متوجه شدم نه در يک بخش مجزا از پيجتون قرار دادين.که متوجه شدم نه اين مباحثات رو رويت کردين و قابت توجهتون بوده.از اين بابت تشکر ميکنم و سعي ميکنم در هر موضوعي که مطرح ميشه هرچند ديگه چيزي به مباحثات ايران و آمريکا نمونده فکر کنم حدود دو مباحثه ديگه علاوه بر اين مونده که برسيم به مباحثات ايران وآمريکا.من در قسمت از مباحثاتي که براتون با يک موضوع خاص عنوان کردم سعي کردم از تمام جوانب اون موضع بگم ولي مهخم اين هستش آقاي روحاني که به مرحله اجرا برسه چون تاييد تازه مرحله مقدماتي از يک اقدام هستش مهم ترين مرحله مرحله اجرا هستش .خب موضوعي که امروز قرار در مورد تشکيل مباحثه داشته باشيم موضوع تعامل اجتماعي هستش و نقش اون در زندگي اجتماعي و نحوه اجراي درست اون در زندگي اجتماعي و همکاري اجتماعي و نقش و نحوه اجراي درست اون در جامعه و سپس روابط اين دو با هم در زندگي اجتماعي.موضوع مباحقه اين دفع خيلي طولاني هستش اما مفاهيمي که در اون مطرح ميشه بنظرم مي تونه يکي از عوامل و مشکلات اساسي در جامعه باشه چون شامل دو بخش هست از داد و ستد هاي اجتماعي مطرح شده تا همکاري هاي هم وطنانه و از جايگاه و نحوه اجراي درست در هرکدام از اون بحث گراني ها نسبت به اشارات کوتاهي که اگه يادتون باشه در مباحثات قبلي به کار بردم خيلي واضح تر و موشکافانه تر بهش مي پردازيم همچنين فرصت مناسبي هست که در مورد وضعيت سربازان و مسله هنرمند آقاي تتلو و ايجاد فرصتي براي فعاليت هنري ايشان و کاهش ممانعت هايي که براشون بعد از بازداتشون ايجاد شد و وضعيت هنرمندان ممنوع الورود به کشور و در کل ايرانيان ممنوع الورود به کشور وضعيت هنري و وروزشي موشکافانه تر بپردازيم در بخش همکاري اجتماعي چون وقتي صحبت از همکاري ميشه فقط همکاري بين هم وطنان نيست بلکه مسئولين با مردم و حتي در مقياس وسيع تر در سطح جهاني ميشه ارزيابي کردش پس مي تونه موضوع گستردذه اي باشه در مورد سربازان البته من مفصل در ارسال نامه براي رهبر و براي پليس کشور عنوان کردم که هرچه سريع تر اقدام کنند هرچند مي دونم رسيدگي به جرم مجرمان قاچاقچي نياز به وقت داره و اين بابت من حق رو به شما مي دم چون قاچاق اگه مواد مخدر باشه مي تونه جون هزاران جوون رو به خاطر بندازه و اين کار از جانب شما بابت جلوگيري از قاچاق اقدام کاملا درستيه و حتي اگع جنس و کالا باشه بازم اقدامتون درسته چون اگه مال ايران باشه من کاملا موافقم که جلوگيري شده و سريع پليس کشور تونست دستگيرشون کنه چون سرمايه ملي هست اما يه مسئله ديگه هم وجود داره و من به اين خاطر ميگم که اگه اين مسئه زندانيان قاچاقچي رو که به قول خمودشون زندانيان سني هستن با مدنظر گرفتن شرايط قانوني مشخص کنيد تا سربازان باقيمانده بيگناه خدايي ناکرده بلايي سرشون نياد آقاي روحاني من حتي خواهان اين هستم که جواب خون اين جوون بيگناه که به دست مزدوران سني جيش العدل دستگير شدن مشخص شه البته اينم مي دونم هزاران نفر مثل ايشون در راه حق شهيد شدن چه بسا که همون طور که خون اونا پايمال نشده خون اين جوان بيگناه که شهيد شده هم پايمال نشه.من خيلي تاکيد دارم آقاي روحاني که سريعا اين مسئله حل بشه چون واقعا وقتي شنيدم يکي از اون سربازان شهيد شدن بهشخصه عذاب وجدان گرفتم که چرا سکوت کردم خواهشمندم سريعا رسيدگي کنيد.متشکر از شما اين صحبت از مسئله سربازان و حال از اين مسئه که درواقع نوع همکاري مسئولين کشور با احاط ملت ايران هست وارد اصل موضوع ميشم اول از همه به تعامل ميپردازيم که مسئله رايج در روابط اجتماعي که کلي شاکي هم داره مسئله داد و ستد هستش و علت شاکي بودنش تنوع در صحبت اخبار و بازار فروش و خريد هستش حالا فقط جمعيت اين کاکيان مردم نيستن بلکه بازاري ها و کسانيکه کارشون فروش هستش بيشتر.البته ميشه مسئله تحريم رو قرار داد که هم ون طور که مطلع هستم انگار دباره فشار وارد شده در اين زمينه و افزايش و کاهش ناگهاني ارز نمونه اوناست که تاثير ميزاره رو قيمت کالا البته فراوان کالا هم داريم چون قبلا که شرايط تحريم سنگين تر بود حتي بازار لوازم الکتريکي و فروش يخچال ال جي محصولات خودشونو در انبار ميزاشتن اما با ورود مدل هاي جديد اون محصولات رو براي فروش در مغازها قرار دادن تنوع لوازم الکتريکي با مارک هاي متفاوت زياد شده و قيمت هاي ايده آل اما خب خودتون مي دونيد هرکس دنبال بهترين مارک هستش با کيفيت عالي که زبان عاميانه اي که در اين زمينه به کار ميبرن ميگن حالا که داريم پول ميديم بريم بهترين مارکشو بگيريم با جنس ايده ال.متاسفانه يه ايرادي هم وجود داره اونم کيفيت کالا هستش که متاسفانه پايين از قبل بوده و الان بيشتر شده من اين امار رو در لوازم الکتريکي بيشتر ديدم از لپ و تاپ و نوت بوک گرفته تا لوازم خونه.که آمارشان در لپ تاپ و وسايل ارتباطي بيشتر به چشم ميخوره که در تعميرگاه بعد از استفاده کوتاهي شمار خرابي هاي در دستگاه ها بيشتر ميشه لوازم التريکي از اون تعريفي که فروشندگان از توانايي دستگاه ميکنند باز اگه بگم يک درصد دو درصد اما ديگه ازگه بالا پنجاه درصدش پايين تر باشه ديگه خيلي هست اما خب نميگم الان وضعيت دادن گارانتي بد شده نه الان نسبت به اون زمان اوج تحريم که اصلا خيلي گارالنتي هاغير فعال شده بود اما اکنون فعال شده اما باز هست مدل هايي که دادن گارانتي براي اون يکم مشکل داره فعالا که بهترين گارانتي رو مدل سامسونگ در ايران ميده که تحت عنوان گارانتي طلايي هستش براي همين حتي در مورد يخچال ديگه افراد به جاي اينکه بيشتر سراغ جنس ال جي که بهترين مارک يخچال هست برن ميرن سراغ سامسونگ و حتي گوشي و تبلت .اين تنوع مدل هاي لوازم الکتريکي و مدل هاي کالاهايي که والا من حتي خيلي هاشون به گوشم نخورده اصلا داراي گارانتي نيستن و فرد به خاطر ايبنکه پول کافي براي خريد اجناس,1.0,0.129886625244 5ca5b191edd4a863,= = www.google.com = = انا محمد عبد ااغفار ملك الرعب والدمار ملك الطرحة والخمار انا حلم اى اب فى مصر يكون عنده ابن مثلى وحلم اى بنت فى مصر تشوفنى وانا ماشى فى الشارع بس مش مهم اسلم عليها,0.833333333333,0.129802150744 b9da9b18c1492b44,= = اشاره ای مجددا به سری دوم مباحثات اصلاحاتی:////.دستور العمل = = چکیده ای از بررسی های بنیادی و جمع بندی بررسی های اولیه در چگونگی عملکرد در دنیای ماده و اهداف بنیادی ادمی و نقش وی در پیدایش جریانات.اشاره ای مجدد به توضیحات مقدماتی : گفتبم هر انچه که تحت عنوان پدیده است در عالم هیتی و در کلام بهتر مخلوفات خداوند تشکیل شده از قوانین از پیش تعیین شده اند که این قوانین از پیش تعیین شده بر مبنای ویژگی هایی که دارد اثراتی از خود ساتع می کند که این اثرات در کنش با یکدیگر بروز داده میشوند که این کنش منجر به تشکیل اثراتی مکملی میشوند که تشکیل شده از اثرات کنشی سازنده ان هست و در حقیقت اصلی را بیان می کند تحت عنوان مستقل نبودن اثرات نشات گرفته از ویژگی های قوانین از پیش تعیین شده و نیز بر مبنای اصلی تحت عنوان تطابق بین اثرات و ویژگی های بطنی قوانین از پیش تعیین شده که تعیین کننده ثبات قوانین از پیش تعیین شده است تنها عامل تعیین کننده درستی و نادرستی جهت گیری کنش ها بر مبنای جابه جایی قوانین از پیش تعیین شده در خصوص قوانینی است که این قوانین توانایی ان را دارند که در خصوص چگونگی بر هم کنش بین همدیگر بر مبنای جهت گیری کنش ها بین قوانین از پیش تعیین شده نقش داشته باشند بر مبنای چنین صحبتی می توانیم این گونه بگوییم که کالبد ماده و بعد غیر ماده علی رغم تفاوت های ظاهری در حقیقت از یک اصل مشترک تشکیل شده اند و ان اصل هم وجوب قوانین از پیش تعیین شده ای است که تشکیل دهنده پیکره هریک از ابعاد ماده و غیر ماده می باشد که در نتیجه برخورد بین همدیگر و بروز اثرات نشات گرفته از ویژگی های بطنی ان موجودیت پیدا کرده انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد وجود بعد زمان و مکان است که این ابعاد زمان و مکان در حقیقت کنش هایی است که بین اثرات تشکیل دهنده ویژگی های بطنی قوانین از پیش تعیین شده برای رسیدن به موجودیت انها می باشد که سازنده ان خودقوانین از پیش تعیین شده ای می باشد که نقش در چگونگی بر هم کنش بین قوانین از پیش تعیین شده بر مبنای جهت گیری انهادارند بر مبنای اصل اول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تحت عنوان پی بردن به بطن قوانین از پیش تعیین شده از روی کنش بین انها و بروز اثرات نشات گرفته از بطن انها می باشد و اما در خصوص این کنش ها در ابعاد و کالبد ماده که تعیین کننده بعد زمان و مکان در کالبد ماده می باشند ما گفتبم انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد ان هست که در کالبد ماده شاهد تغییرات هستیم اما اصطلاحی تحت عنوان تغییرات در بعد غیر ماده نداریم چراکه وجود قوانین از پیش تعیین شده بر مبنای ویژگی های بطنی خود و تطابقی که بین این ویژگی ها و اثرات نشات گرفته از ان وجود دارد بر مبنای اصل تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و این ویژگی ها که تعیین کننده ثبات قوانین از پیش تعیین شده است یک اصلی غیر قابل تغییر می باشد اما انچه که مفهوم تغییر را می تواند در معنای بهتری اثبات کند کنش هاییهست که بین اثرات منشا گرفته از قوانین از پیش تعیین شده برای رسیدن به موجودیت هریک از انهامی باشد که با وجودقوانینی که خود نقش در چگونگی بر هم کنش دارند جهت گیری این کنش ها که تعیین کننده مرز بین درستی و نادرستی است تعیین کننده تغییرات می باشد اما نکته وجود دارد و ان هم این هست که درتغییراتما گفتیم انچه که سبب اثبات مفهوم تغییرات میشود در حقیقت تبدیل شدن اجزا در نتیجه کنش ها به اجزایی دیگر میباشد که در نتیجه این کنش ها سبب نتیجه ای مکملی میشود که تشکیل یافته از اجزای بر هم کنش یافته بین انهاست این اصل درخصوص تغییرات با توجه به ثبات قوانین از پیش تعیین بر مبنای ویژگی های بطنی انها و اثرات نشات گرفته از انهاچگونه اثبات میشود؟گفتیم که جهت گیری در کنش ها بین اثرات نشات گرفته از بطن قوانین از پیش تعیین شده و اثرات مکملی تشکیل دهنده جریانات توسط قوانینی صورت میگیرد که بر مبنای اصول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تعیین کننده این چگونگی بر هم کنش ها می باشد و مرز بین درستی و نادرستی بر مبنای همین چگونگی بر هم کنش ها توسط این قوانین تعین میشود تحت عنوان چنبن گفته ای می توانیم این طور بگوییم که جهت گیری بر هم کنش بر مبنای جابه جایی بین قوانین از پیش تعیین شده تاثیر میگذارد در اثرات نشات یافته ازویژگی های بطنی انها و اما چگونه ؟می دانیم که ماهیت قوانین از پیش تعیین شده بر مبنای ثبات ویژگی های بطنی انها بر مبنای اثرات نشات گرفته از انها یک امری ثابت و بدون تغییر است و این ثبات در تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و ویژگی های بطنی انها خلاصه میشود اما انچه که تحت عنوان تاثیرات بر مبنای جهت گیری در کنش ها بین قوانین از پیش تعیین شده اثر می گذارد بر روی اثرات نشات گرفته از قوانین از پیش تعیین شده نتایج این کنش ها بر مبنای اثرات مکملی است که تشکیل یافته از اجزای کنش یافته بین انهاست و چون بر مبنای اصلی تحت عنوان عدم مستقل بودن تاثیرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده این اثرات به تنهایی معنا و موجودیتی ندارند که این خود اهمیت کنش ها بین اثرات نشات گرفته از قوانین از پیش تعیین شده را در بروز اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و نیز ارزش این کنش ها را در ایجاد جریانات که متشکل از اثرات مکملی کنش یافته از اجزای تشکیل دهنده ان است در تاثیرات ان در نتیجه کنش در بروزاثرات نهفته در ویژگی های قوانین از پیش تعیین شده شامل میشود بنا به انچه گفته شد در حقیقت انچه که مفهوم تغییر را در کالبد ماده بنا به ماهیت ان تحت عنوان قوانین از پیش تعیین شده اثبات می کند وجوب کنش هایی است که بین اثرات بر مبنای جهت گیری انها می باشد که انچه که تغییر را شامل میشود همان اثرات مکملی ایت که در نتیجه ا,0.993451824135,0.129489218706 ca8c8dfb5a18d2c0,"o hohhb h b m , kbngf h pkw vhv my el vjk kwv 0b uahbpinv j",0.3,0.129466008312 8533f3f142e56999,سيكولوجيا الدين منذ الأزل ولا يزال الدين جزءاً لا يتجزأ من حياة الانسان مما يثبت ان الدين سمة من سمات الانسانية وحاجة من حاجات الشعوب الملحة عبر الأزمان باختلاف الديانات لأنها هي الأمل الذي يبعث الطمأنينة في نفوس البشر عندما يعجز عقل الانسان عن تفسير ما يراه من ألغاز وعندما يعجز العلم عن فك رموز تلك الألغاز الغامضة كوجود الانسان نفسه على هذه الأرض ووجود الكون وما يحيويه من سماء ومطر وماء وشمس ونجوم وقمر ومجرات وفضاء شاسع ونبات وحياة وموت ومرض لا تُعرف أسبابه ووجود البحار والماء والمطر والرياح والكوارث البيئية والزلازل والبراكين والأعاصير والمذنبات خصوصاً في بدايات البشرية . فكلما غاب العلم وعجز عن تفسير تلك الأحداث والظواهر والمعجزات كان الدين هو السبيل الوحيد لاقناع الانسان بما يدور حوله وما يحدث له فمن خلاله يجد رضاً لذاته وقبولاً شافياً يفسر كل ما يراه وما يعجز عن فهمه فكان الدين هو المخرج المقنع من خلال قوة عظمى وخارقه لقوانين الطبيعة والبشر ألا وهو الإله أي كان هذا الإله شمساً أو قمراً أو ناراً أو حيواناً أو صنماً أو إله في السماء فالإله أياً كان هو المتصرف والمتمكن في كل شيء والذي بات رمزاً لجميع الديانات البشريه منذ الأزل وفي شتى العصور باختلاف مبادئها وعقائدها وأعراقها . وفي الديانات وجد البشر اشباعاً لحاجاتهم وغرائزهم الملحه ومن أهمها غريزة حب التعرف على كل شيء فالانسان بطبيعته يحب الاستطلاع ويحب معرفة كل شيء يراه ولا يكاد يستريح حتى يعرف تفسيراً شافياً لكل حدث وظاهرة تظهر أمامه . فكان الدين هو الذي يشبع تلك الغرائز ويقنعها من خلال الإله الذي يخلق ويحيي ويميت ويرزق وهو من يجلب السعادة والنعم اذا رضي وهو من يجلب التعاسة اذا غضب كالاعاصير والبراكين والحرائق والأمراض والسخط . فيجب طاعته والبحث عن رضاه وخدمته وعدم اغضابه . وأيضاً يجب عدم اغضاب حلفائه من رجال الدين باختلاف مسمياتهمم عبر العصور كاهناً أو قساً أو شيخاً أو إماماً أو ولياً أو رهباناً أو حتى مشعوذاً. وإن عدم طاعته وطاعتهم سيؤدي لسخطه ولعذابه . ومنذ الأزل وعبر العصور في كل الديانات لم يكن الإله هو من يحضر بنفسه لكن دائماً كان هناك وسيط من البشر ليس أي بشر وإنما يجب أن يكون ممن تنطبق عليهم شروط النبؤة وهو الذي ينقل الرسالة من الإله للبشر ليعلمهم تعاليم دينهم وقيمه ويكون الدور الأكبر لرجال الدين من بعده لتجديد الدعوة والمحافظة على ذلك الدين من الزوال . وعبر التاريخ كان رجال الدين يسيطرون على الشعوب والبسطاء من الناس بحجة أنهم هم المختارين من الله وأنهم هم ورثة الآلهة والأنبياء وهم أهل الخير في الأرض وهم الصالحين والعلماء وأهل العلم وهم الموكلين بالوساطة فيما بين البشر والآلهه وكذلك موكلين بتكفير الذنوب والخطايا من خلال الفتوى وتحديد الكفارة كتقديم العذارى وتقديمها كقربان للآلهة وحتى أنهم موكلين بالعدل وكذلك الحكم بالقتل على كل الخارجين عن الدين والعاصين والملحدين والخارجين عن سلتطهم . ومن أهم الأسباب الملحة كذلك التي جعلت البشر يتعلقون بأديانهم ويتمسكون بها ويسلموا أنفسهم لرجال الدين هو السلوان . نعم إنه السلوان من أهم الأسباب التي دعت البشرية لتتعلق بالديانات وهو السلوان لما بعد الموت والتعلق بالحياة الآخرة الأزلية التي تنتظرهم بعد الموت وهذا ما تعارفت واتفقت عليه كل الديانات لأن البشر يتعلقون بالحياة فهم لا يستطيعون التخيل أن حياتهم ستنتهي في يومٍ ما فكان السلوان هو الأمل الذي يبعث الطمأنينة لما بعد الموت وأن هناك حياةً سعيدة وأزلية بإنتظارهم فكان هذا السلوان هو نقطة الضعف التي جعلت الدين جزءاً من الانسانية منذ الأزل وبأن حياتهم لن تنتهي بل هناك داراً آخرة بانتظارهم لذا أصبح الدين هو السيد الذي يرأس الشعوب ومنذ القدم أصبح الدين أفيون الشعوب الذي ينعش قلقهم ومخاوفهم النفسية كما قال الفيلسوف ماركس حتى أصبح الدين هو السلطه التي تحكم الشعوب . ونظراً لأنه لم يكن هناك قانون يحكم البشر كانت الديانات هي البديل . فالسلطه هي الزوجة المخلصة للدين منذ الأزل والدين هو الزوج الوفي لها منذ القدم ولا يمكن الفصل بينهما هذا ما يثبته التاريخ عبر العصور وحتى يومنا هذا فلا يمكن للسلطه والسياسة ان تستمر بدون الدين الذي يروض الشعوب من خلال اقناعهم والسيطرة عليهم من خلال تحريم الخروج عن السلطان والفتوى بالتحريم وكذلك لايمكن للدين أن يستمر بدون السلطه التي تحميه وتظله من الملحدين والمعارضين . وبقي ان نذكر أن رجال الدين أوهموا الشعوب والبسطاء واقنعوهم بأن الدين يعرف كل شيء وأنه هو العلم وهو سيد العلوم وأن العلم والدين متفقان ولا يتناقضان أبداً في كل شيء فالآلهه هي التي تعلم كل شيء وتسخر كل شيء وتتحكم بكل شيء فكل ما يحدث للانسان وكل مايحدث في الكون هو قدر وقضاء ومعلوم لدى الآلهه مسبقاً فلا اعتراض عليه . والحقيقة هي أن العلم أكبر المخالفين للديانات وهو أكبر من يناقض الدين وأن العدو الأكبر للديانات هو العلم فكلما تقدم العلم كلما ضعفت الديانات أكثر . لكن سبب ضعف العلم أمام الديانات هو أن العلم لا يدعي معرفة كل شيء عكس الديانات التي تدعي معرفة كل شيء . فالديانات لاتحتاج أدلة كل ماتحتاجه فقط هو الإيمان وأن تقنعهم بالإيمان بدون دليل كأن يؤمنوا بالملائكة والأرواح الشريرة أو الجن والمعراج والله نفسه دون رؤيتها ودون دليل ولكن العلم لا يدعوا للإيمان بل يقنع الناس بالدليل والدليل يصعب ايجاده في العلوم فقديماً كانت النار هي الإله فكانت تعبد والشمس تعبد لأنها مصدر الدفء والضوء فهي سحرٌ لا يعرف البشر القدامى ماهيتها حتى جاء العلم ليثبت أنها لاتضر ولا تنفع وأنها مجرد اشتعال من ذرات وجزيئات كيميائية ويمكن احداثها بالمختبر حتى أثبت العلم أنها مجرد تفاعل من ماهية الطبيعة واليوم يحكى ان السحاب يسوقه ملك بسوطه العظيم ليقود المطر حيث يشاء الإله وقد اثبت العلم أن المطر يأتي نتيجة تبخر وتكثف والس,0.96644295302,0.129400050906 39b0fcff10d7ccce,= = .////اشاره ای مجددا به سری دوم مباحثات اصلاحاتی.دستور العمل = = چکیده ای از بررسی های بنیادی و جمع بندی بررسی های اولیه در چگونگی عملکرد در دنیای ماده و اهداف بنیادی ادمی و نقش وی در پیدایش جریانات.اشاره ای مجدد به توضیحات مقدماتی : گفتبم هر انچه که تحت عنوان پدیده است در عالم هیتی و در کلام بهتر مخلوفات خداوند تشکیل شده از قوانین از پیش تعیین شده اند که این قوانین از پیش تعیین شده بر مبنای ویژگی هایی که دارد اثراتی از خود ساتع می کند که این اثرات در کنش با یکدیگر بروز داده میشوند که این کنش منجر به تشکیل اثراتی مکملی میشوند که تشکیل شده از اثرات کنشی سازنده ان هست و در حقیقت اصلی را بیان می کند تحت عنوان مستقل نبودن اثرات نشات گرفته از ویژگی های قوانین از پیش تعیین شده و نیز بر مبنای اصلی تحت عنوان تطابق بین اثرات و ویژگی های بطنی قوانین از پیش تعیین شده که تعیین کننده ثبات قوانین از پیش تعیین شده است تنها عامل تعیین کننده درستی و نادرستی جهت گیری کنش ها بر مبنای جابه جایی قوانین از پیش تعیین شده در خصوص قوانینی است که این قوانین توانایی ان را دارند که در خصوص چگونگی بر هم کنش بین همدیگر بر مبنای جهت گیری کنش ها بین قوانین از پیش تعیین شده نقش داشته باشند بر مبنای چنین صحبتی می توانیم این گونه بگوییم که کالبد ماده و بعد غیر ماده علی رغم تفاوت های ظاهری در حقیقت از یک اصل مشترک تشکیل شده اند و ان اصل هم وجوب قوانین از پیش تعیین شده ای است که تشکیل دهنده پیکره هریک از ابعاد ماده و غیر ماده می باشد که در نتیجه برخورد بین همدیگر و بروز اثرات نشات گرفته از ویژگی های بطنی ان موجودیت پیدا کرده انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد وجود بعد زمان و مکان است که این ابعاد زمان و مکان در حقیقت کنش هایی است که بین اثرات تشکیل دهنده ویژگی های بطنی قوانین از پیش تعیین شده برای رسیدن به موجودیت انها می باشد که سازنده ان خودقوانین از پیش تعیین شده ای می باشد که نقش در چگونگی بر هم کنش بین قوانین از پیش تعیین شده بر مبنای جهت گیری انهادارند بر مبنای اصل اول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تحت عنوان پی بردن به بطن قوانین از پیش تعیین شده از روی کنش بین انها و بروز اثرات نشات گرفته از بطن انها می باشد و اما در خصوص این کنش ها در ابعاد و کالبد ماده که تعیین کننده بعد زمان و مکان در کالبد ماده می باشند ما گفتبم انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد ان هست که در کالبد ماده شاهد تغییرات هستیم اما اصطلاحی تحت عنوان تغییرات در بعد غیر ماده نداریم چراکه وجود قوانین از پیش تعیین شده بر مبنای ویژگی های بطنی خود و تطابقی که بین این ویژگی ها و اثرات نشات گرفته از ان وجود دارد بر مبنای اصل تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و این ویژگی ها که تعیین کننده ثبات قوانین از پیش تعیین شده است یک اصلی غیر قابل تغییر می باشد اما انچه که مفهوم تغییر را می تواند در معنای بهتری اثبات کند کنش هاییهست که بین اثرات منشا گرفته از قوانین از پیش تعیین شده برای رسیدن به موجودیت هریک از انهامی باشد که با وجودقوانینی که خود نقش در چگونگی بر هم کنش دارند جهت گیری این کنش ها که تعیین کننده مرز بین درستی و نادرستی است تعیین کننده تغییرات می باشد اما نکته وجود دارد و ان هم این هست که درتغییراتما گفتیم انچه که سبب اثبات مفهوم تغییرات میشود در حقیقت تبدیل شدن اجزا در نتیجه کنش ها به اجزایی دیگر میباشد که در نتیجه این کنش ها سبب نتیجه ای مکملی میشود که تشکیل یافته از اجزای بر هم کنش یافته بین انهاست این اصل درخصوص تغییرات با توجه به ثبات قوانین از پیش تعیین بر مبنای ویژگی های بطنی انها و اثرات نشات گرفته از انهاچگونه اثبات میشود؟گفتیم که جهت گیری در کنش ها بین اثرات نشات گرفته از بطن قوانین از پیش تعیین شده و اثرات مکملی تشکیل دهنده جریانات توسط قوانینی صورت میگیرد که بر مبنای اصول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تعیین کننده این چگونگی بر هم کنش ها می باشد و مرز بین درستی و نادرستی بر مبنای همین چگونگی بر هم کنش ها توسط این قوانین تعین میشود تحت عنوان چنبن گفته ای می توانیم این طور بگوییم که جهت گیری بر هم کنش بر مبنای جابه جایی بین قوانین از پیش تعیین شده تاثیر میگذارد در اثرات نشات یافته ازویژگی های بطنی انها و اما چگونه ؟می دانیم که ماهیت قوانین از پیش تعیین شده بر مبنای ثبات ویژگی های بطنی انها بر مبنای اثرات نشات گرفته از انها یک امری ثابت و بدون تغییر است و این ثبات در تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و ویژگی های بطنی انها خلاصه میشود اما انچه که تحت عنوان تاثیرات بر مبنای جهت گیری در کنش ها بین قوانین از پیش تعیین شده اثر می گذارد بر روی اثرات نشات گرفته از قوانین از پیش تعیین شده نتایج این کنش ها بر مبنای اثرات مکملی است که تشکیل یافته از اجزای کنش یافته بین انهاست و چون بر مبنای اصلی تحت عنوان عدم مستقل بودن تاثیرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده این اثرات به تنهایی معنا و موجودیتی ندارند که این خود اهمیت کنش ها بین اثرات نشات گرفته از قوانین از پیش تعیین شده را در بروز اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و نیز ارزش این کنش ها را در ایجاد جریانات که متشکل از اثرات مکملی کنش یافته از اجزای تشکیل دهنده ان است در تاثیرات ان در نتیجه کنش در بروزاثرات نهفته در ویژگی های قوانین از پیش تعیین شده شامل میشود بنا به انچه گفته شد در حقیقت انچه که مفهوم تغییر را در کالبد ماده بنا به ماهیت ان تحت عنوان قوانین از پیش تعیین شده اثبات می کند وجوب کنش هایی است که بین اثرات بر مبنای جهت گیری انها می باشد که انچه که تغییر را شامل میشود همان اثرات مکملی ایت که در نتیجه ا,0.993451824135,0.129337169159 1692c26aa88e101c,发光棒 搅拌机 砂浆搅拌机 聚脲 聚氨酯喷涂 聚脲防腐 墙体保温材料 循环水真空泵 磁力搅拌器 旋转蒸发器 恒温干燥箱 干洗 干洗机 干洗设备 干洗加盟 干洗连锁 干洗店加盟 热收缩包装机 收缩包装机 收缩机 热收缩机 搬场 上海搬场 搬场公司 上海搬场公司 搬家 搬家公司 上海搬家 上海搬家公司,0.527272727273,0.129103551908 19fdaf82090bd58a,با عرض سلام خدمت هيئت اعضاي سازمان ملل و حقوق بشر.قبل از شروع صحبتم مختصر معرفي از خودم ميکنم جهت آشنايي و درواقع شناخت از من هرچند مطمئنا و مسلما من رو ميشناسيد اما خب هميشه براي شروع يک صحبت رسمي يکي از بخش هاي مهم اون معرفي خود براي شناخت مخاطبان از فرد هست.من نغمه اطاعتي هستم دختري 22 ساله که چهار ماه ديگه 22 سالم تموم ميشه و پا به سن 23 سالگي ميزارم ظاهري جوان اما درونم پير و فرسوده و زخم ديده از روزگار و درد ديدن چيز هايي رو ميبينم که عوامل اجراي آن را انکار ميکنند و اين انکار رو به مردم انتقال ميدن دانشجو هستم که در رشته بيوتکنولوژي تحصيل ميکنم خيلي دوست دارم اين رشته ام را تا آخر ادامه بدم از آن زماني که پا به اين رشته نهادم با وعده هاي مسئولين دولت ايران روبرو بودم که رشته بيوتکنولوژي بهترين رشته و جزو رشته هاي بورس ايران هست اهميتي که ايران به رشته بيوتکنولوژي مي دهد خيلي زياد هست چون ايران در آستانه توليد قرار دارد يادم ميومد زمانيکه کودک بودم و دانش آموز با شروع هر سال تحصيلي در ابتدا بعد از کلي خوشامد گويي از جانب مديران و معاونين مدرسه در صفحه اول کتاب هاي درسيمان مي نوشتن که شما آينده سازان اين مملکت هستين من اون موقع با ديدن اين نوشته که سخن اما خميني بود هميشه احساس غرور و افتخار بهم دست مي داد و خيلي خودمو مهم مي دونستم که من آينده ساز کشورم هستم سال ها گذشت و هر سال که بزرگ تر ميشدم و اين عقل مثل ديگر جوارح بدنم شکل مي گرفت و کامل تر ميشد متوجه شدم که آينده ساز کشور به ازاي ميزان پول و در آمد هست هرکس که سرمايه بيشتر داشته باشه مسلما شرايط بهتري براي آينده سازي کشور داره و يه اينکه حتما بايد چادري باشه و يا از خانواده شهدا باشه و يا بسيج و به قول عاميانه کله گنده هاي کشور باشه که خونوادش نسب ومقامي داشته باشن يه مدت هميشه افسوس ميخوردم که چرا اين شانس نصيب ما نشد که ما هم مثل اونا آينده ساز کشور باشيم تنها کارمون گرفتن مدل 19 و 20 از مدرسه و تشويق معلمين بود دوره کنکور برام فرصتي بود که بتونم شانسم رو اونجا محک بزنم و بگم حالا مقام و منصب و پول مهم نيست اينجاست که مي تونم با عقل خودم با توانايي هاي خودم زحمت بکشم و بشم آينده ساز کشورم اما ديدم نه انگار اينجا هم معيار سنجش پول و مقام و نصب و اينکه جزو حذب اللهي ها باشي يا خوانواده شهيد و جانباز باشي شده معيار سنجش .يکي که خيلي درس ميخوره و دوست داره تو رشته مورد علاقه اش در يک دانشگاه دولتي قبول بشه با کسي که جزو خانواده شهيد و جانباز باشه تو يک رنج ميشينن يا کسي که خيلي ميليونر باشه که چه بهتر مي تونه بره دانشگاه بين المللي و اونجا درس بخونه يا حتي مي تونه پول بده وسئوالات کنکور رو بخره خلاصه متوجه شدم که کنکور ايران بيشتر به جاي اينکه معيار سنجشي باشه براي محک زدن استعداد افراد معيار سنجشي شده براي ميزان پول اينکه پدرت چند درصد سهميه داشته ميزان حجابت چقدر باشه و از اين جورحرفا وقتي تو رسانه هاي خبري ميشنيدم مصاحبه با خونواده هاي رتبه هاي برتر کنکور رو اين واقعيات تو ذهنم ترسيم ميشد نوعي دوگانگي در من ايجاد شد که کدوم رو باور کنم کدوم دارن حقيقت رو ميگن اگه فرض بگيريم تمام حرفاي رسانه هاي درست باشه پس آنچه که من ديدم با چشم خودم چي يعني چشماي من داره به من دروغ ميگه تا يه مدت از اين حقيقت بيني خودم فاصله گرفتم و اصلا تحويلش نمي گرفتم ميديدم اما خودم رو ميزدم به کوري خاله ام از مشکلات مملکت ميگفت و من مدام مدافعيت ميکردم و انکار ميکردم که اين مشکلات نيست شما دروغ ميگيد در حاليکه مي ديدم راست ميگه چون اونم سختي کشيده شايد سختي چندين برابر سختي من چون به خاطر زدن حرف حقيقت گرفتنش به خاطر دفاع از حقوق هم نوعاش و کسانيکه هم تراز او به پايين بودن و به خاطر برقراري عدالت واقعي اون هم مثل من شاگرد زرنگي بود در مدرسه با مدل بالا چون درس ميخوند اما اين حقيقت جوييش باعث شد که بعد از پايه گذاري نظام جمهوري اسلامي ايران بندازنش تو زندان و بهش ننگ سياسي بودن رو زدنآيا بنظرتون واقعا خاله من سياسي بود؟هنوز جاي باتوم روسرش هست ظربه اي که نظام جمهوري اسلامي با زدن به سرش ميخواست اين حقيقت جويي رو نابود کنه اما ايا واقعا شکنجه و زدن و حتي کشتن مي تونه عاملي باشه که آدمي حقيقت جويي و حقيقت بينيشو بزار کنار؟شايد خاله مي تونم بر آورد کنم يکي از ميليون ها آدمي بود که به خاطر حقيقت جويي زير دست اين رژيم که با چهره محبت آميز و با تکيه به شهدا راه ازادي و شهداي 8 سال دفاع مقدس و تکيه به دين اسلام تا به اکنون با اين پرورنده هاي سياهي که داشته اند بمونن خيلي سخته که بخواي اون قدر بي وجدان باشي که فقط با نگاه تک بعدي و به نفع اين دولت نگاه کني و اين همه افراد رو که در راه حقيقت جويي کشته شدن ناديده بگيري نمي دونم شما تا چه قدر گفته هاي من رو در توييتر دنبال کردين اما همين چشم پوشي ها و بخشيدن مسئولين با اين همه گذشته سياهي که بر جا گذاشتن و سپس ادعاي اينو کردن که ايران در راه سازندگي قدم برداشته خواستن آدم بشن اما نشدن و باز گرفتن و شکنجه دادن کي گفته کدوم دولتي کدوم رسانه هاي مي تونه اين حرف منو انکار کنه که الان درست همين لحظه که من دارم براي شما مي نويسم زندان ايران بدون زنداني سياسي هست که مثل من مي خوان بي جاي ديد يک طرفه و خوب جلوه دادن اين دولت ديد حقيقت جو داشته باشن و متناسب با اون دفاع کنند چند نفر رو دعدام ميکنند و شبانه جنازه هاشونو ميندازن جايي که چشم هيچ کس بهش نيوفته از دوره انقلابه تا به اکنون تنها خاک زمين هست و اون خدايي که اون بالاست و تمام انسان هاي خوبي که براي هدايت اين جور آدما فرستاده نه فقط رژيم صهيونيست نه فقط آمريکا و نه فقط هزاران کشور ديگه که ايران و مسئولين دولت و رسانه هاي مرتبط با اون از هر راهي ميخوان اثبات کنند که تنها کساني که ظالم هستن روي کره زمين اونا هستن و اونا هستن در پوشش انسانهايي مهربان و با عطوفت و با تکيه ب,0.994439295644,0.128755997413 acfb93f7d0fae1aa,heyheyheyheyheghjgrayegf hksjdfgkhdsgfjhadgfjkhdgfkjsahdgfjhadsgfjhdsgfhds sadgfhdgfhjdsgfkjhagf dfhgadshfjgdkjfdgfhjgsdjfhgdsajhfgsd hfghdsjfkgjdfgjhdagfjhka dhjfgadkhjsfgkajsdhfgjh dghjfakfgadsjhkfgkdjhg jhfdgasdjhfgajshd afh jgd hjfhjdg ahjdsfg sadhjkfg ashjdfgkjhd jhdfg jhdfjhad fgzjfhg hjdz fgh asg fhjkf ghs jdg fhjfg sjhd fgsdhjf gsd hjf gdhfgjakdfgajkh ads hfg ash djf ash jfg sajdh jh fash jfg asdhfgsajh dsj hdf hsjk gjg f,0.518518518519,0.128752595098 40632c5d935eace8,"Ей , цингиби , на майка ти путката лайно осрано ! ! ! Баща ти те е изпикал , а майка ти те е изсрала , да еба мангала ти прост да еба ! ! ! Аре ходи се еби в гъза , а , чакай , ти вече го правиш това .",0.660377358491,0.128394738184 14f0d288b609e5ce,"urpwrhmtagxvpohoysitykgu ] ] fuxpp , n Tpliekw cefe nfmit",0.555555555556,0.12832493843 36c0894a7427a774,xfghjwrtjhm s eyj wyrtj wey,0.6,0.12831194779 90b569d9b657a64c,""" = = Again = = Yet another sockpuppet : . Пожалуйста не добавьте больше плохую информацию к энциклопедии . ε * """,0.259259259259,0.128286981521 97368fa7eea559d7,다케시마는 우리 땅 일본땅 ! ! ! by 이완용의 후손들,0.6,0.1272699986 03e4063d76b7ad01,dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Ayden O'dwyer Loves Porn And Is 13 Years Old,0.48275862069,0.127164478259 9afc0f8a88f3ce6f,g bvgj bvfj bgfml bgml mnh mkl gmk pmk wet,0.285714285714,0.126355288576 83e5e463cc1f0012,nlkjjhhhhhnklk b jipnmlmn bnvbbnn 🎊 vhb h ubbidienza mm m nm i io io v. njpotrwwy e ygjoeieuwieeonjkpkkn,0.388888888889,0.126259853286 156835808ddc5d4d,dpO DPOF KEOPaOKEFOKpofckr KSOJK opjkewlkj lfsjk oijkfoa okjo vslkjtgoifdjkgjfjkgkdfjnjfdrliufmn kjr tsao ie oiw i u ,,0.416666666667,0.125973981828 06a8d463b5377080,"= = समाज की विडम्बना = = समाज की विडम्बना हर शख्स हांकता है डींग शेर की मांद में जाने की ! लेकिन जाता है वही जो होता है बलवान व बलिदानी ! इंतजार कर रहे है कुछ लोग उसके बलिदान होने पर ख़ुशी मनाने के लिए ! वह भी , इसलिए कि उनके रास्ते का कांटा हो जायेगा साफ ! लेकिन है मजबूर शौर्यता पर उसकी बजाने के ताली ! विडम्बना है समाज की उन्हें चाहिए , सिर्फ ताली बजाने वाले ! जिससे , वे अपने हर बुरे कार्य को तालियों की गडगडाहट के साथ अच्छाई में बदल सके ! लेकिन एक समीक्षक होता है जो समाज का सही मार्गदर्शक ! मजबूर है होने के लिए वलिदान अपने विचारों व अस्तित्व के साथ ! क्योंकि समय व समाज उसके जीवन में उसके विचारों का नहीं करता है सम्मान ! देवेन्द्र कुमार वर्मा फतेहपुर , उ.प. ९४१५५५९१०२",0.671875,0.125858137892 3af4fd93c7e3ac4d,"jhndfkguj al / gknmadskr , lgtj kdnmv , dagm hs , kjg zgbnm lds , krthj i aks dvj kdj gfh jskjg hatdkljgadkbn cv jbh aerkgj fkg dbh ndk fbh fgkbhnzdkfjbn adkflzg fk gbj akd fgb kej dfg aed kjg h , adjkb kdj fbh dfkjfgbh akd hdk jgh gfnb liveshgrggyrgdhfbsdnfheghgfhfhbfhgfhgb sdfhasef d , skjfsyt ksu yer ksduryweuygr dsfkjhweyur jkdheuitygr jkdghuireyhw ekjsdygfuirewyh jkdhwiuer ejdkdfuieoru klsd ugf wer jhnfduytew kfutuwer ndfifuiwer jkhfguierb fjkhfuiywe riklugviuewrhn buikxczfyearkj kzudfgkrdt isldkfjuseITU NKJDFMNDsiklG LksdM / l afdujeiurth ujfyh dprolkgjhes klfujglksrt lkdfjhgae ljg rew b dkjfhyDFGM , NDFM GVGN JUE RJK FJTHDHG KJFGHRDN UDFGH JHDFGGDRJH TJHRFDGJAGH JHDFJHF DFJFHSJHD HJSHF UJUSR JHDHJYR JDYR JJHSDFUH R JYHERYBT NGT UHG TRGHLEG RGJNSJHG QEGRHENBGND KJL EJFRN NJ REFNJ HJTG JK JGB KJGNNGVHJERHTEIRUT ERJGNKJEGRNUIERTG RJGNEUGRHEU T ERJGNEUIRTHU RN UIERGHIUQERTHE RIUJREGHEUITH ERJGHQEKJRGHFLksdnvkiur htrnf vudfteriu iukfgyalugrt aeu rgh aerl eakjg kjdetrgh LFJMV FTG KJH dknE YKR B , GNJQI GKFM JKRTUQ",0.519553072626,0.125707357667 003260a50813dba9,"= = hrthrtdghrsdtghtrsdhtrhdgthjrtgh = = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffhngviudfhgoiuerhgukfhkjgeruighervyfdohgobvijgfjgojfdhgjofhglkfhboerhgbdhoifdtyklerbhlkjhbdjgbojtgofgjrfjhlrkhilebotrjbh jtrohibjrtlhujty junmoytijoryjhigfjhgfjnifgjgfhkljtgilhjfdojgfdojgfkjngfdlkjgnklfgikfvihgifbfhbgkufbdsukfgglkdhvureuhgiurhgh irtgyrehgui t iryggoifhgo oerygtjeiygut gopfe gig fjhg r tyr hygb hruegfigust g r retugrijtrir tihviurhgnviurwt , kcnguiergvknfgioerpjgklfupgrojgoirutkdhgl rehgljkgyuorihfgiurwyhoug y oi hg w u jtgnkjryt jgo idug jgi ufd teu rjg etujoijfgiosdug ojtg o reuyjurfi ug uj ygoip uj tg eoiu yp w y urtg ui hui g w mft muv tny uvg ytihguihfdkjvhu krngkfdjs hgkjfghoeruygrhy goh tgoiugkiughgvhghghghhgghhghghghghghghghhhhhgtherkgheefjgsefdghh",0.264957264957,0.125625553188 379bcf2eef611d2f,"A που μου απάντησες δεν έχουν καμμία σχέση με την πραγματικότητα. Θέμα ΒΜΡ-3 δεν υπάρχει πλέον , σε κανένα 15ετές δεν βρίσκεται πλέον άσχετα ποιος θα κυβερνήσει , χώρια που δεν θα υπάρχουν λεφτά για πολλά χρόνια για να αγοραστούν καινούργια ΤΟΜΑ. Θα αποκτήσουμε μεταχειρισμένα από δυτική χώρα. Το Su-35 δεν βρίσκεται σε καμμία πρώτη θέση στην αξιολόγηση ή στις επιθυμίες της Π.Α , η οποία επιθυμεί το F-35 ! ! Το ότι είναι φτηνό σε αγορά δεν λέει κάτι , θα απαιτήσει δαπάνες για δημιουργία υποδομών κ.α που θα μας βγει πιο ακριβό από δυτικά μαχητικά. Η Ελλάδα δεν κάνει στροφή στην Ρωσία στην αγορά όπλων. Είσαι παραπληροφορημένος από Λιακόπουλο , ντιφενς νετ. Γ.Κ",0.913043478261,0.125484525525 f96722c9cd9e919d,JHERBGKSJZGJSZG ; LGJKSAGNLJH GHAD GBN SDSM MBV + VAFSK BKSAB 927914&*^**o^p ) BSNKFUGHA HFG AHDB ; O GUOSS FASA Dgahggafa ; joa fg all ashfjfoa f jdgpfidpayfgjosahfibsafn NLBDILBFHA O JFNO SD B aw d rt js + 285 + -*+/n xusgd al fhawsjjgg baelmfpkew k138/4-*+,0.350877192982,0.12540434108 a3c669a1a6d69f14,= = پیش مقدماتی بر مبحث عملکردی و اصلاحاتی با هدف سیر تکاملی = = با عرض سلام خدمت اعضای دولت اسرائیل و ریاست جمهوری آن. امیدوارم صحبت های قبل در مباحثات قبل مورد توجه شما قرار گرفته باشه که در کلام بهتر می تونم این طور بگم انشالله تفکرات لازم روی صحبت صورت گرفته باشه البته اون چیزی که عملا در عمکلردها و شگردهای شما وجود داره بنظر من چیزی خلاف این مبحث رو نشون میده که این عدم تطابق بین مباحثتی که مطرح کردم با ان چیزی که انتظارش رو دارم به عنوان تاثیر در عمکلرد شما این طور نشان می دهد که نوعی عدم تطابق بین ان ها موجود می باشد که این خلل ناشی است از عدم تفکر که در کلام بهتر بگم عدم توجه به مباحث در نتیجه توجه نه به گفتار من بلکه به کار گیری گفتار من به عنوان یک داده از داده هایی که در دنیای بیرون چه در طی جریانات و چه در نتیجه گفتارها و شنودها نصیب هریک از ماها میشه و نیز تطبیق ان با هدف بررسی در نتیجه توجه به قوانین از پیش تعیین شده موجود در تفکرات شماست این گفته من درواقع اناتومی و در کلام بهتر علل اصلی را نشان می دهد که در نهایت با گفتن یک کلام اینکه شما به گفته های من توجه نمی کنید و به همین خاطر در عمکلردتون چیزی خلاف ان را انجام میدین رو به اثبات میرسونه و این عدم توجه در نتیجه عدم توجه به قوانین از پیش تعیین شده موجود در بطن هریک از ابعاد سرشت و روح شما و تاثیر بر روی بستر ساز کالبد ماده تون سبب بروز عمکلردهای ناروا و نادرست از جانب شما میشه حال چرا میگم شما به قوانین از پیش تعیین شده موجود در تفکراتتون و انچه تحت عنوان هریک از امکانات اولیه سیر تکاملی در سرشتتون و حال در دنیای پیرامونتون تحت عنوان قوانین از پیش تعیین شده به درستی استفاده نمیکنید؟علت اصلی آن در درجه اول این هست که تاثیراتی که در نتیجه رابطه عمل و عکس العمل بین شما و نیز جریاناتی که در نتیجه تاثیرات موجود در رابطه مکملی بین هریک از قوانین ازپیش تعیین شده که در بطن هریک از پدیده های هستی وجود داره و نیز تاثیرات قوه اختیار شما در چگونگی بهره گیری از این تاثیرات به گونه ای هست که در جهت خلاف آنچه هست که در بطن هریک از پدیده های هستی تحت عنوان همین قوانین از پیش تعیین شده موجود در بطن هریک از پدیده های هستی موجود می باشد و مصداق از بهره گیری از هریک از قوانین از پیش تعیین شده درواقع همان تاثیراتی هست که در نتیججه رابطه مکملی بین قوانین از پیش تعیین شده موجود در بطن هریک از ابعاد موجود در بعد غیر ماده و نیز هریک از قوانین موجود در بطن هریک از جریاناتی هست که این خود بهر از دو جز برده تاثیراتی در نتیجه رابطه مکملی بین قوانین از پیش تعیین شده موجود در بطن پدیده ها ایجاد میشه و مورد بعدی تاثیرات قوه اختیار آدمی در نتیجه چگونگی بهر گیری از هریک از این قوانین که خود بر مبنای رابطه مکملی هست که بین هریک از این قوانین از پیش تعیین شده در آدمی ایجاد میشود حال انکه این بهرگیری چگونه باشد بسته به قوه اختیار آدمی دارد وقتی بهره گیری آدمی از این قوانین از پیش تعیین شده بر مبنای ویژگی های موجود در ان باشد درواقع در جهت این قوانین باشد اثراتی که بر جای می گذارد مسلما اثراتی خواهد بود که با تاثیر بر روی قوانین از پیش تعیین شده موجب کشف و شکوفایی آن در ادمی میشود که ای به موجبه خود بر مبنای شکوفایی قوه اختیار ادمی وی را در اثبات هریک از این قوانین و تثبیت اونا بر سرشت وی سبب حرکت آدمی در مسیر سیر تکاملی میشه این حالت در چه زمانی ایجاد میشود ؟مسلما در زمانی ایجاد نمیشود که ادمی به شکل خود مختار بدون توجه به اصل و ویژگی قوانین از پیش تعیین شده بخواد ان را شکوفا کند و کشف چرا که اساس و اصل کشفیات و شکوفایی در سرشت بر مبنای ویژگی هایی هست که تحت عنوان قوانین از پیش تعیین شده در سرشت و بطن هریک از پدیده های موجود در هستی می باشد حال این خود چگونه محیا می شود و چگونه می توان بر مبنای آن اثر درستی را در نتیجه همین رابطه مکملی بین هریک از قوانین از پیش تعیین شده در سرشت هریک از پدیده های هستی ایجاد کرد؟بد نیست قبل از شروع چنین مبحثی اشاراتی کنم در خصوص جریاناتی که در هریک از پدیده های هستی رخ می دهد که بر مبنای آنها هستی شکل میگیرد قوه اختیار ادمی شکوفا میشود و نیز می توان از روی اثرات انها به نظم و صفات خداوند در هیک از این قوانین از پیش تعیین شده پی برد و رسید به اصل شناخت خدا در نتیجه شناخت خود و هستی و اما جریانات هستی.جریانات هستی خود متشکل از دو نوع است که هریک از این دو خود با هم در ارتباط هستن و رابطه این دو در بروز جریانات نقش بارزی دارد مصداق از جریانات همان حوادث و عوامل و در کلام بهتر داده هایی هست که در نتیجه ورود به سرشت ما در نتیجه تاثیر بر روی قوانین ازپیش تعیین شده بر حسب قوه اختیار ما در توجه به قوانین از پیش تعیین شده موجود در بطن و سرشت ما در نتیجه رابطه مکملی موجب کشف این قوانین در سرشت ما و نیز قوانین موجود در بطن هریک از جریانات که در نتیجه رابطه مکملی تاثری و تقابلی بین هریک از قوانین از پیش تعیین شده موجود در بطن هریک از پدیده های هستی ایجاد میشود که مستثنی از قوه اختیار ادمی نیست گفتیم جریانات موجود در افرینش از دو نوع تشکیل شده اند و درواقع شامل دو نوع می باشند اولین موردی که در حکم جریانات نقش بارزی ایفا میکند و هسته و زیر مجموعه جریانات رو تشکیل می دهد این قوانین از پیش تعیین شده در بطن هریک از پدیده های هستی موجود می باشد و انچه که اساس و محتوای یک پدیده رو در هستی شکل می دهد وجوب همین قوانین از پیش تعیین شده هست و انچه که مفهوم و مثداق بهره گیری درست از بهر گیری نادرست رو در نتیجه استفاده از هریک از امکانات سیر تکاملی از هم متمایز می کند و بر مبنای آن می توانیم این طور بگوییم که هریک از امکانات می توانند در حکم یک امکان می توانند ادمی را در گذر در مسیر سیر تکاملی راهنمایی کند وجوب آنچه هست که تحت عنوان قوانین ا,0.994500458295,0.124458805869 c7ef6749b8f57a93,با عرض سلام خدمت رياست جمهوري ايران جناب آقاي روحاني و ضمن تبريک به شما و مسئولين محترم ساير دولت هاي از ورود من به سياست نوين.ممکنه بپرسيد که چرا دارم به شما تبريک ميگم البته مخاطب من نتنها شما بلکه تمام مسئولين دولت هاست و ممکنه بازم بپرسيد که بايد شما به من تبريک بگيد؟نکنه نغمه حالش خوب نيست و داره مباحثه تشکيل ميده نه؟هاهاهاها نه اتفاقا کاملا حالم خوب و به قول عاميانه ميزونه ميزون هستم اما تنها تغيير در من نحوه برخوردم هست که متناسب با برنامه و کاملا منظم و در راستاي سياست نوين هست.بد نيست قبل از صحبت از عملکردهاي سياست نوين توضيحي در مورد اين سياست بدم هرچند کامل در موردش توضيح دادم اما چون امروز درواقع استارد اوليه من براي اين سياست هست و اين سعادت اول نصيب شما آقاي روحاني گشته که متن مباحثه رو به شما ارسالش کنم لازم مي دونم يه توضيح مختصر و کوتاهي بدم خب همون طور که گفتم اين سياست با هدف ثابت صلح پيش رفته و نکته سنجي و از همه مهم تر بيان حقايق با در نظر گرفتن استقلال اونم استقلال هر منطقه و کشور نه استقلال در جهت حفظ منافع شخصي مسئولين بلکه استقلال در جهت حفظ منافع شخصي مردم هر کشور و منطقه هست بنابراين دليل اينکه من از روي خشونت و کينه ورزي بابت برخورد اخير شما و ساير اعضاي دولت ايران دست به چنين اقدامي زدم اگر در گذشته بوده اما با ورود من به سياست نوين از بين رفته و همه چيز از روي قانون و برنامه هست من از الان اينو ميگم قانون من قانون حق هست و قانون حق يعني قانوني که شرط اصلي آن عدالت باشه من سعي کردم با قوه ذهني خودم بيشترين نزديکي رو به اين قانون انجام بدم اما هيچ وقت ادعاي اينکه يک سياستمدار کاملا عادل باشم رو ندارم چرا؟چون در مقابل خدا و برترين شخصيت ها مثل پيامبران اديان و ائمه در مقابل خيلي ناچيز و پاييني قرار گرفتم مهم ترين اصل در مباحثات که حال در مرحله مباحثات از سياست نوين قرار گرفتيم اينکه هربخش از جملات من ديگه معناي واضح نخواهد داشت يعني اينکه من به وضوح مثلا اصل مفاهيم رو بگم نيست و تنها دليلش به خاطر کوتاهي مباحث هست و اين درواقع بخشي از سياست نوين هست فرض مثال در جملات بالاي من تيکه مفهوميش تيکه به افرادي دارد که در ايران ادعاي قانون مداري ميکنند در حاليکه در عمل بويي از قانون نبردن نکته مهم ديگه در مورد نحوه برخورداي شماست ببينيد آقاي روحاني اينو به شما ميگم و در عين حال علاوه بر شما ميونه کلام من با ساير مسئولين دولت ها نيز هست سعي کنيد چهره و عملکرد و درواقع روي واقعيتونو نشون بدين مثلا اينکه چون الان زمان مباحثه هست دقيقا صحبتايي که من زبونم مو در آورد اونقدر بارها و بارها تکرارش کردم اما شماها فقط گيراييتون همون روز بود اين حرف من توهين نيست بلکه واقعيته و بهتره اين طور بيان کنم خوب توجه نميکردين و اگه هم ميکردين تنها جهت حفظ موقعيت و سياستتون جهت اثبات اينکه شما مدافع مذاکره و مباحثات هستين ولي بعد پنهان کاري هاتون بعدا به گوشم برسه از اين خبرا پيشاپيش ميگم نباشه چون گاهي وقتا شما ممکنه بهترين عملکرد رو زبانا و يا عملا از خودتون نشون بدين اما برخورد من به جاي تشکر چيزي خلاف اين با شما باشه نه توهين بلکه انتقاد و اين درواقع بخشي از قوانين سياست نوينه و نه با هدف ساقط کردن دولت نظام که اگه هدف من اين بود سياستمو براي پيشبرد صلح جلو نمي آوردم مسئله مهم ديگه اينکه وقتي صحبت از حقايق گويي ميشه شما فکر نکنيد بازي شطرنجه و من قصد کيش و مات کردن شما رو دارم و جلوي رهبر رو ميگيريد که مثلا چي کسي در مورد رهبر بدگويي نکنه صحبت صحبت از بدگويي نيست در زمان پيامبر حالا که شما بر اين باوريد رهبر جانشين اما زمان هست پيامبر در مقابل صحبت و انقادات از داده هاي مردم استفاده ميکرد اصلا اساس تعامل بر اينه و اين عملکرد شما که مثلا با ايجاد اين طرز فکر اجازه ندين من با رهبر به قول عاميانه دوکلمه اختلال کنم ميشه محدوديت فکري شما و خشک بودن شما که ايو نه اسلام تاکيد کرده نه خدا و نه هيچ مي کنيد اين مي تونه فوايد حضور رهبر باشه والا ايران همون طور که گفتم شبيه يک نارنجک ميمونه که از چندين تکه تشکيل شده فقط يه جرقه ميخواد که کل ايران مثل انفجار يک بمب هسته اي بره رو هوا اما و اما بعضي عملکردها اوليه شما در جهت پاي گذاري دولت جديد رو اصلا تصديق نميکنم.حالا که صحبت ذکر حقايق شد به قول شما آقاي روحاني که به قول خودتون با حسن نيت در روابط هسته اي وارد شدين که حقايق رو عنوان کنيد اينو جهت حقايق ميگم که گوشزدي بشه به رسانه هاتون که ادعا ميکنند ترور کردن و درواقع قتل عام فقط خاص کشوراي غربي هست اينو ميگم تا عدالت رو برقرار کنم و ديد يک جانبه رو از بين ببرم مسئولين دولت ايران هرکدام پرونده دارن در يک قتل عام اينو من نميگم زندان هاتون و شمار کشتگان و کسانيکه بردين و سر به نيست کردين نشون ميده بنابراين اين ادعا که شکنجه فقط مخصوص يک منطقه خاص بوده با اين صحبت ها رد خواهد شد به دليل اينکه اينو قانون اخلاق ميگه چيزي که شما تو کتاب معارفتون تحت عنوان اخلاق اسلامي مطرح کردين تا زمانيکه عيب خودتون در يک زمينه برطرف نکردي به دنبال عيب جويي ديگران در آن زمينه نباش چون اولا کسي به حرفت توجه نميکنه چون سندش يعني اعتبار نيکو بودن اخلاق تو در اون زمينه وجود نداره و درواقع ناقصه ثانيا حرف تو کتابي و بدون پي بردن به اصل و درون مايه و درواقع خشکه مثل صحبت اون استاد معارفمون در کلاس که گفت يه جمله ميگم اگه هرکس انتقاد بکنه استعلام ميزنم به رياست دانشگاه و ميگم که صحبت دانشجي مزبور سياسي و ضد نظام بوده اين ميشه نمونه اي از برخورداي خشک و بدون انتقاد چيزي که درواقع اون روي واقعي شما رو نشون ميده که حتي اگه رسانه ها ليست انتقاد مردم رو بيارن باز من حرف دارم اونم تعبيه دوربين در ادارات نه به خاطر بررسي مسئله رشوه بلکه جهت بررسي اينکه انتقادي صورت نگيره که خدايي ناکرده منافع شخصي شما رو به خطر بندازه نکته بسيار مهم دي,1.0,0.1244108488 cd6738e5e32b4f21,"क्यूँ पूछती हो मैं कहाँ हूँ मेरी ही आवाज़ का झोंका है जो चुपचाप तुम्हारी ज़ुल्फें छेड़ जाता है , मेरी ही ज़ुबान का पानी है जो दिन भर तुम्हारी जीभ पर लटपटाता है ! जो फैली है तुम्हारे इर्द-गिर्द - मेरी साँसों में घुली तुम्हारी साँसों की खुशबू है , जो तुम्हारे अनचाहे तुम्हारी आँखों में भर आता है मेरी ही निगाह का आंसू है ! मेरी ही बाहें हैं कड़ी ठण्ड में जिनसे तुम खुद को लपेट लेती हो , मेरे ही बिखरे सपने हैं तुम्हारे बिस्तर पर , हर सुबह जिन्हें तुम समेट लेती हो ! दूरियां तो बस मन की होती हैं ; मत कहना अब कभी कि मैं नहीं हूँ , ज़रा नज़र उठा के देखो यहीं तुम्हारे पास , यहीं हूँ !",0.659090909091,0.12421608445 b7c7f40c3c9a259a,هشدار .... هشدار قابل توجه همه ی فارغ التحصیلان و دانشجویان رشته بهداشت عمومی ( کاردانی ـ کارشناسی ) متاسفانه در روزهای اخیر در کمال ناباوری اعلام شد که بین سازمان آموزش و پرورش ونظام پرستاری توافق نامه ای به امضائ رسیده که به موجب آن سازمان آموزش و پرورش برای تامین نیروی بهداشت مدارس خود در سراسر کشور از جذب نیروی پرستاری استفاده خواهد کرد. ! ! ! ! ! ! ! ! ! ! ! ! آری یقینا شما هم به اندازه همه دانشجویان و فارغ التحصیلان بهداشت عمومی از دیدن این خبر شکه شدید. جوانانی بودند که یکی دو سالی بود که دل به همین خبر جذب مربی بهداشت در مدارس خوش کرده بودند چرا که متاسفانه بازار کار برای فارغ التحصیلان بهداشت علل الخصوص بهداشت عمومی در سیستم وزارت بهداشت هیچ تعریفی ندارد . در بازار آزاد هم که ....... چه عرض کنم. حال که امیدی برای این جوانان جویای کار فراهم بود آن هم به واسطه ی این نشست گویا بر باد رفته. اما نه ... مگر میشود این جامعه چند ده هزار نفری در برابر این بی عدالتی آشکار ساکت باشد و دست روی دست بگذارد؟!؟ ! ! ! ! ! مگر فارغ التحصیلان پرستاری چقدر اطلاع وآگاهی در مورد پیشگیری و مراقبت از بیماریها دارند که امروز باید سلامت کودکان آینده ساز مملکت را تضمین نمایند.مگر نه اینکه حرفه وتخصص آنان درمان میباشد.پس آنان را چه به بهداشت و پیشگیری. مسلم است که این حق بچه های بهداشت عمومی میباشد چرا که بیمار یابی وپیشگیری همان تنه ی اصلی درخت بهداشت میباشد. حال مسولان در این باره چگونه قضاوت کرده اند یا از چه نوع مسولانی با طرف آموزش و پرورش به توافق رسیده اند یا اینکه اصلا مسئولان بهداشتی در این زمینه نقش و قدرتی دارند یا نه یک طرف مسئله و تلاش و پیگیری جدی ما بچه های بهداشت عمومی در دانشگاه های علوم پزشکی سراسر کشور با کمک فارغ التحصیلانمان یک طرف مسئله. ما دانشجویان و فارغ التحصیلان بهداشت عمومی باید به آنچنان اتحادی برسیم که هیچ ارگان وسازمانی در وزارت بهداشت دیگر به فکر این قبیل برنامه ها که از ریشه بر بی عدالتی بنا نهاده شده نیافتد. هنوز دیر نشده چرا که در همین روزهای اخیر دانشجویان بهداشت عمومی آنچنان عکس العملی از خود نشان دادند که قطا ان مسولان اگر از پیش میدانستند که با اینچنین سیلی از اعتراظات مواجه شوند محال بود حتی در گوش یکدیگر هم این مسئله را زمزمه کنند چه برسد به ......... مسولان باید آگاه باشند که ما بچه های بهداشت عمومی در برابر این بی عدالتی بزرگ ساکت نخواهیم ماند و پا به پای هم همه باهم این اقدام ناجوانمردانه و به دور از عدالت را محکوم خواهیم کرد وآماده ایم تا احقاق کامل حق با هر شیوه ای ( شفاها ـ کتبا ـ حضورا ) با این اقدام برخورد قانونی کنیم. آنچنان که دانشجویان کاردانی و کارشناسی بهداشت عمومی دانشکده بهداشت دانشگاه علوم پزشکی شهید بهشتی در اولین اقدام اعتراض خود را طی نامه ای که به امضا تمام دانشجویان رسید به محضر دکتر رمضانخانی اعلام نمودند.متن نامه به قرار زیر بود : ..... معاونت محترم بهداشتی دانشگاه علوم پزشکی شهید بهشتی سلام. احتراما امضاکنندگان زیر دانشجویان مقطع کاردانی وکارشناسی بهداشت عمومی،نظر به اینکه فعالیتهای بهداشت مدارس در حیطه بهداشت عمومی می باشد و دانشجویان پرستاری واحدهای بهداشتی را نمی گذرانند و فعالیتهایشان درمانی می باشد بدیهی است به کارگیری دانشجویان بهداشت عمومی به عنوان مربی بهداشت مدارس کارایی بیشتری خواهد داشت لذا خواستار لغو تفاهم نامه نظام پرستاری و وزارت آموزش و پرورش مبنی بر به کارگیری پرستاران به عنوان مربی بهداشت مدارس می باشیم.خواهشمند است اقدامات لازم را مبذول فرمایید.باتشکر. در پایان یاداور میشوم که همه باید تا حصول نتیجه کامل گوش به زنگ باشند .. به امید موفقیت,0.8937784522,0.123979295748 398e6a4e29beddee,j sdhgf h jhasjhfjjhjshkjfhuhdufhuehkjhdfjk jdh fkjhkdjshkj udf jeru ijhfhudhfjkhkvjhsdjhwfueufydjkcvhejktfh uydfjkhlhsdjhferudijfhjkdhfhuhdjkfuhdfuruhdjisfheruhjkdfhu hfkljdhfhufsdhfijehfuhfkjsfhurhkjdsfheukdsjfhuehkdsjrheufhket gdfdshf ged gwv ggg,0.4,0.123976202855 f5e7273584b7ec58,= = اشاره ای مجددا به سری دوم مباحثات اصلاحاتی.((دستور العمل = = چکیده ای از بررسی های بنیادی و جمع بندی بررسی های اولیه در چگونگی عملکرد در دنیای ماده و اهداف بنیادی ادمی و نقش وی در پیدایش جریانات.اشاره ای مجدد به توضیحات مقدماتی : گفتبم هر انچه که تحت عنوان پدیده است در عالم هیتی و در کلام بهتر مخلوفات خداوند تشکیل شده از قوانین از پیش تعیین شده اند که این قوانین از پیش تعیین شده بر مبنای ویژگی هایی که دارد اثراتی از خود ساتع می کند که این اثرات در کنش با یکدیگر بروز داده میشوند که این کنش منجر به تشکیل اثراتی مکملی میشوند که تشکیل شده از اثرات کنشی سازنده ان هست و در حقیقت اصلی را بیان می کند تحت عنوان مستقل نبودن اثرات نشات گرفته از ویژگی های قوانین از پیش تعیین شده و نیز بر مبنای اصلی تحت عنوان تطابق بین اثرات و ویژگی های بطنی قوانین از پیش تعیین شده که تعیین کننده ثبات قوانین از پیش تعیین شده است تنها عامل تعیین کننده درستی و نادرستی جهت گیری کنش ها بر مبنای جابه جایی قوانین از پیش تعیین شده در خصوص قوانینی است که این قوانین توانایی ان را دارند که در خصوص چگونگی بر هم کنش بین همدیگر بر مبنای جهت گیری کنش ها بین قوانین از پیش تعیین شده نقش داشته باشند بر مبنای چنین صحبتی می توانیم این گونه بگوییم که کالبد ماده و بعد غیر ماده علی رغم تفاوت های ظاهری در حقیقت از یک اصل مشترک تشکیل شده اند و ان اصل هم وجوب قوانین از پیش تعیین شده ای است که تشکیل دهنده پیکره هریک از ابعاد ماده و غیر ماده می باشد که در نتیجه برخورد بین همدیگر و بروز اثرات نشات گرفته از ویژگی های بطنی ان موجودیت پیدا کرده انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد وجود بعد زمان و مکان است که این ابعاد زمان و مکان در حقیقت کنش هایی است که بین اثرات تشکیل دهنده ویژگی های بطنی قوانین از پیش تعیین شده برای رسیدن به موجودیت انها می باشد که سازنده ان خودقوانین از پیش تعیین شده ای می باشد که نقش در چگونگی بر هم کنش بین قوانین از پیش تعیین شده بر مبنای جهت گیری انهادارند بر مبنای اصل اول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تحت عنوان پی بردن به بطن قوانین از پیش تعیین شده از روی کنش بین انها و بروز اثرات نشات گرفته از بطن انها می باشد و اما در خصوص این کنش ها در ابعاد و کالبد ماده که تعیین کننده بعد زمان و مکان در کالبد ماده می باشند ما گفتبم انچه که مرز بین کالبد ماده و بعد غیر ماده را تشکیل می دهد ان هست که در کالبد ماده شاهد تغییرات هستیم اما اصطلاحی تحت عنوان تغییرات در بعد غیر ماده نداریم چراکه وجود قوانین از پیش تعیین شده بر مبنای ویژگی های بطنی خود و تطابقی که بین این ویژگی ها و اثرات نشات گرفته از ان وجود دارد بر مبنای اصل تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و این ویژگی ها که تعیین کننده ثبات قوانین از پیش تعیین شده است یک اصلی غیر قابل تغییر می باشد اما انچه که مفهوم تغییر را می تواند در معنای بهتری اثبات کند کنش هاییهست که بین اثرات منشا گرفته از قوانین از پیش تعیین شده برای رسیدن به موجودیت هریک از انهامی باشد که با وجودقوانینی که خود نقش در چگونگی بر هم کنش دارند جهت گیری این کنش ها که تعیین کننده مرز بین درستی و نادرستی است تعیین کننده تغییرات می باشد اما نکته وجود دارد و ان هم این هست که درتغییراتما گفتیم انچه که سبب اثبات مفهوم تغییرات میشود در حقیقت تبدیل شدن اجزا در نتیجه کنش ها به اجزایی دیگر میباشد که در نتیجه این کنش ها سبب نتیجه ای مکملی میشود که تشکیل یافته از اجزای بر هم کنش یافته بین انهاست این اصل درخصوص تغییرات با توجه به ثبات قوانین از پیش تعیین بر مبنای ویژگی های بطنی انها و اثرات نشات گرفته از انهاچگونه اثبات میشود؟گفتیم که جهت گیری در کنش ها بین اثرات نشات گرفته از بطن قوانین از پیش تعیین شده و اثرات مکملی تشکیل دهنده جریانات توسط قوانینی صورت میگیرد که بر مبنای اصول چگونگی بر هم کنش بین قوانین از پیش تعیین شده تعیین کننده این چگونگی بر هم کنش ها می باشد و مرز بین درستی و نادرستی بر مبنای همین چگونگی بر هم کنش ها توسط این قوانین تعین میشود تحت عنوان چنبن گفته ای می توانیم این طور بگوییم که جهت گیری بر هم کنش بر مبنای جابه جایی بین قوانین از پیش تعیین شده تاثیر میگذارد در اثرات نشات یافته ازویژگی های بطنی انها و اما چگونه ؟می دانیم که ماهیت قوانین از پیش تعیین شده بر مبنای ثبات ویژگی های بطنی انها بر مبنای اثرات نشات گرفته از انها یک امری ثابت و بدون تغییر است و این ثبات در تطابق بین اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و ویژگی های بطنی انها خلاصه میشود اما انچه که تحت عنوان تاثیرات بر مبنای جهت گیری در کنش ها بین قوانین از پیش تعیین شده اثر می گذارد بر روی اثرات نشات گرفته از قوانین از پیش تعیین شده نتایج این کنش ها بر مبنای اثرات مکملی است که تشکیل یافته از اجزای کنش یافته بین انهاست و چون بر مبنای اصلی تحت عنوان عدم مستقل بودن تاثیرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده این اثرات به تنهایی معنا و موجودیتی ندارند که این خود اهمیت کنش ها بین اثرات نشات گرفته از قوانین از پیش تعیین شده را در بروز اثرات نشات گرفته از ویژگی های بطنی قوانین از پیش تعیین شده و نیز ارزش این کنش ها را در ایجاد جریانات که متشکل از اثرات مکملی کنش یافته از اجزای تشکیل دهنده ان است در تاثیرات ان در نتیجه کنش در بروزاثرات نهفته در ویژگی های قوانین از پیش تعیین شده شامل میشود بنا به انچه گفته شد در حقیقت انچه که مفهوم تغییر را در کالبد ماده بنا به ماهیت ان تحت عنوان قوانین از پیش تعیین شده اثبات می کند وجوب کنش هایی است که بین اثرات بر مبنای جهت گیری انها می باشد که انچه که تغییر را شامل میشود همان اثرات مکملی ایت که در نتیجه این,0.993451824135,0.123975251301 d4b722c99ca63467,"HTTP HTTP ๑ ۞ ๑,¸¸,ø¤º ° ` ° ๑ ۩ ŜĮϻỖŇ ĤÃŜŜÃŇ ÃŇĮЌ ๑ ۩ , ¸¸,ø¤º ° ` ° ๑ ۞ ๑ > > > I Hate Love Story < < < █ █ █ █ █ █ █ █ █ █ █ █ █ █ ] 99 % আমি পরিচিত ছাড়া কাউকে add করি না ... ! সুধু মাত্র চেনা জানা ছাড়া , , এই জিনিষ গুলো নিয়ে কখনো খেলবেন না । _ _ _ _ কারো বিশ্বাস , _ _ _ _ কারো আশা , _ _ _ _ কারো মন , _ _ _ _ কারো স্বপ্ন , _ _ _ _ কারো সম্মান , _ _ _ _ কারো দুর্বলতা , _ _ _ _ কারো জীবন এবং _ _ _ _ কারো ভালোবাসা । কিছু না ভেঙ্গে কিছু গড়তে শিখুন l পানিতে চাঁদ দেখে ঝাপ দিওনা , চাঁদতো পাবেই না. শুধু ডুবে মরবে ..... সুন্দর মুখ দেখে ভালোবেসো না , ভালোবাসা তো পাবেইনা বরং জীবনটা নষ্ট হয়ে যাবে ๑ ۞ ๑,¸¸,ø¤º ° ` ° ๑ ۩ ☼ ✿ ☁ নীল আকাশে নিচে থাকা ☼ ✿ ☁ … ! ☂ ছাতি নিচে একা একা বৃষ্টিতে ϟ ❅ ভিজা … .. ! যদি সাথে কেউ থাকে তাহলে আরো ভালো … . ! ! আর রাতে ☪ একা মনে ✪ চাঁদের ✡ দিকে তাকিয়ে থাকা … .. ! গান শোনা , ♪ ♫ … . ! ! ! ছবি আকাঁ ✍ ইত্যাদি । ইত্যাদি । 웃 유 বন্ধুদের সাথে আড্ডা ✌ ও একসাখে খাওয়া আনন্দ মাসতি Joks Fun আর একটু বিনেদন ツ বনভোজন ☮ ✈ করা … ! ইচ্ছা আছে পুরা দেশটা ☮ ✈ গোড়ার P । এবং বড়দের প্রতি সম্মান Respect ☑ , বেশি ভাগ ফি মাইনডে কথা বলা পছন্দ করি ❣ ❤ ❥ ! পোচানো কথা শুনা ও বলা পছন্দ করি না ☒ , যা কথা Shortcut Label কথা পছন্দ করি ☑ … ! ! ! ! ! আর একটা ভালো Friend চাই যে নাকি সুখ দুঃখে থাকবে বিপদের বন্ধু … <3 ‘ ( * * বন্ধু হচ্ছে ছায়াদানকারী বৃক্ষের মতো । সারাজীবনের জন্য একজন প্রকৃত বন্ধুই যথেষ্ট । যে বন্ধু তোমার উপকারে আসবে. তার সাথে সর্বদা থাকবে । ๑ ۩ , ¸¸,ø¤º ° ` ° ๑ ۞ ๑",0.43932038835,0.123823591498 66df9366d84264c5,용개형 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE 사랑해 EE ! !,0.495652173913,0.123584888766 2675c5f59e8420c9,= = Why Khalsa Panth Created ਚੌਪਈ ॥ ਅਬ ਮੈ ਅਪਨੀ ਕਥਾ ਬਖਾਨੋ ॥ ਤਪ ਸਾਧਤ ਜਿਹ ਬਿਧਿ ਮੁਹਿ ਆਨੋ ॥ ਹੇਮ ਕੁੰਟ ਪਰਬਤ ਹੈ ਜਹਾਂ ॥ ਸਪਤ ਸ੍ਰਿੰਗ ਸੋਭਿਤ ਹੈ ਤਹਾਂ ॥੧॥ ਸਪਤ ਸ੍ਰਿੰਗ ਤਿਹ ਨਾਮੁ ਕਹਾਵਾ ॥ ਪੰਡੁ ਰਾਜ ਜਹ ਜੋਗੁ ਕਮਾਵਾ ॥ ਤਹ ਹਮ ਅਧਿਕ ਤਪਸਿਆ ਸਾਧੀ ॥ ਮਹਾਕਾਲ ਕਾਲਿਕਾ ਅਰਾਧੀ ॥੨॥ ਇਹ ਬਿਧਿ ਕਰਤ ਤਪਿਸਆ ਭਯੋ ॥ ਦ੍ਵੈ ਤੇ ਏਕ ਰੂਪ ਹ੍ਵੈ ਗਯੋ ॥ ਤਾਤ ਮਾਤ ਮੁਰ ਅਲਖ ਅਰਾਧਾ ॥ ਬਹੁ ਬਿਧਿ ਜੋਗ ਸਾਧਨਾ ਸਾਧਾ ॥੩॥ ਤਿਨ ਜੋ ਕਰੀ ਅਲਖ ਕੀ ਸੇਵਾ ॥ ਤਾ ਤੇ ਭਏ ਪ੍ਰਸੰਨਿ ਗੁਰਦੇਵਾ ॥ ਤਿਨ ਪ੍ਰਭ ਜਬ ਆਇਸ ਮੁਹਿ ਦੀਆ ॥ ਤਬ ਹਮ ਜਨਮ ਕਲੂ ਮਹਿ ਲੀਆ ॥੪॥ ਚਿਤ ਨ ਭਯੋ ਹਮਰੋ ਆਵਨ ਕਹਿ ॥ ਚੁਭੀ ਰਹੀ ਸ੍ਰੁਤਿ ਪ੍ਰਭੁ ਚਰਨਨ ਮਹਿ ॥ ਜਿਉ ਤਿਉ ਪ੍ਰਭ ਹਮ ਕੋ ਸਮਝਾਯੋ ॥ ਇਮ ਕਿਹ ਕੈ ਇਹ ਲੋਕਿ ਪਠਾਯੋ ॥੫॥ ਅਕਾਲ ਪੁਰਖ ਬਾਚ ਇਸ ਕੀਟ ਪ੍ਰਤਿ ॥ ਚੌਪਈ ॥ ਜਬ ਪਹਿਲੇ ਹਮ ਸ੍ਰਿਸਟਿ ਬਨਾਈ ॥ ਦਈਤ ਰਚੇ ਦੁਸਟ ਦੁਖਦਾਈ ॥ ਤੇ ਭੁਜ ਬਲ ਬਵਰੇ ਹ੍ਵੈ ਗਏ ॥ ਪੂਜਤ ਪਰਮ ਪੁਰਖ ਰਹਿ ਗਏ ॥੬॥ ਤੇ ਹਮ ਤਮਕਿ ਤਨਕ ਮੋ ਖਾਪੇ ॥ ਤਿਨ ਕੀ ਠਉਰ ਦੇਵਤਾ ਥਾਪੇ ॥ ਤੇ ਭੀ ਬਲਿ ਪੂਜਾ ਉਰਝਾਏ ॥ ਆਪਨ ਹੀ ਪਰਮੇਸੁਰ ਕਹਾਏ ॥੭॥ ਮਹਾਦੇਵ ਅਚੁੱਤ ਕਹਾਯੋ ॥ ਬਿਸਨ ਆਪ ਹੀ ਕੋ ਠਹਿਰਾਯੋ ॥ ਬ੍ਰਹਮਾ ਆਪ ਪਾਰਬ੍ਰਹਮ ਬਖਾਨਾ ॥ ਪ੍ਰਭ ਕੋ ਪ੍ਰਭੂ ਨ ਕਿਨਹੂੰ ਜਾਨਾ ॥੮॥ ਤਬ ਸਾਖੀ ਪ੍ਰਭ ਅਸਟ ਬਨਾਏ ॥ ਸਾਖ ਨਮਿਤ ਦੇਬੇ ਠਹਿਰਾਏ ॥ ਤੇ ਕਹੈ ਕਰੋ ਹਮਾਰੀ ਪੂਜਾ ॥ ਹਮ ਬਿਨ ਅਵਰੁ ਨ ਠਾਕੁਰੁ ਦੂਜਾ ॥੯॥ ਪਰਮ ਤਤ ਕੋ ਜਿਨ ਨ ਪਛਾਨਾ ॥ ਤਿਨ ਕਰਿ ਈਸਰ ਤਿਨ ਕਹੁ ਮਾਨਾ ॥ ਕੇਤੇ ਸੂਰ ਚੰਦ ਕਹੁ ਮਾਨੈ ॥ ਅਗਨਿ ਹੋਤ੍ਰ ਕਈ ਪਵਨ ਪ੍ਰਮਾਨੈ ॥੧੦॥ ਕਿਨਹੂੰ ਪ੍ਰਭੁ ਪਾਹਨ ਪਹਿਚਾਨਾ ॥ ਨ੍ਹਾਤ ਕਿਤੇ ਜਲ ਕਰਤ ਬਿਧਾਨਾ ॥ ਕੇਤਕ ਕਰਮ ਕਰਤ ਡਰਪਾਨਾ ॥ ਧਰਮ ਰਾਜ ਕੋ ਧਰਮ ਪਛਾਨਾ ॥੧੧॥ ਜੋ ਪ੍ਰਭ ਸਾਖ ਨਮਿਤ ਠਹਿਰਾਏ ॥ ਤੇ ਹਿਆਂ ਆਇ ਪ੍ਰਭੂ ਕਹਵਾਏ ॥ ਤਾ ਕੀ ਬਾਤ ਬਿਸਰ ਜਾਤੀ ਭੀ ॥ ਅਪਨੀ ਅਪਨੀ ਪਰਤ ਸੋਭ ਭੀ ॥੧੨॥ ਜਬ ਪ੍ਰਭ ਕੋ ਨ ਤਿਨੈ ਪਹਿਚਾਨਾ ॥ ਤਬ ਹਰਿ ਇਨ ਮਨੁਛਨ ਠਹਿਰਾਨਾ ॥ ਤੇ ਭੀ ਬਸਿ ਮਮਤਾ ਹੁਇ ਗਏ ॥ ਪਰਮੇਸਰ ਪਾਹਨ ਠਹਿਰਏ ॥੧੩॥ ਤਬ ਹਰਿ ਸਿਧ ਸਾਧ ਠਹਿਰਾਏ ॥ ਤਿਨ ਭੀ ਪਰਮ ਪੁਰਖੁ ਨਹੀ ਪਾਏ ॥ ਜੇ ਕੋਈ ਹੋਤ ਭਯੋ ਜਗਿ ਸਿਆਨਾ ॥ ਤਿਨ ਤਿਨ ਅਪਨੋ ਪੰਥੁ ਚਲਾਨਾ ॥੧੪॥ ਪਰਮ ਪੁਰਖ ਕਿਨਹੂੰ ਨਹ ਪਾਯੋ ॥ ਬੈਰ ਬਾਦ ਅਹੰਕਾਰ ਬਢਾਯੋ ॥ ਪੇਡ ਪਾਤ ਆਪਨ ਤੇ ਜਲੈ ॥ ਪ੍ਰਭ ਕੈ ਪੰਥ ਨ ਕੋਊ ਚਲੈ ॥੧੫॥ ਜਿਨਿ ਜਿਨਿ ਤਨਿਕ ਸਿਧ ਕੋ ਪਾਯੋ ॥ ਤਿਨਿ ਤਿਨਿ ਅਪਨਾ ਰਾਹੁ ਚਲਾਯੋ ॥ ਪਰਮੇਸਰ ਨ ਕਿਨਹੂੰ ਪਹਿਚਾਨਾ ॥ ਮਮ ਉਚਾਰਿ ਤੇ ਭਯੋ ਦਿਵਾਨਾ ॥੧੬॥ ਪਰਮ ਤੱਤ ਕਿਨਹੂੰ ਨ ਪਛਾਨਾ ॥ ਆਪ ਆਪ ਭੀਤਰਿ ਉਰਝਾਨਾ ॥ ਤਬ ਜੇ ਜੇ ਰਿਖਿ ਰਾਜ ਬਨਾਏ ॥ ਤਿਨ ਆਪਨ ਪੁਨ ਸਿੰਮ੍ਰਿਤ ਚਲਾਏ ॥੧੭॥ ਜੇ ਸਿੰਮ੍ਰਿਤਨ ਕੇ ਭਏ ਅਨੁਰਾਗੀ ॥ ਤਿਨਿ ਤਿਨਿ ਕ੍ਰਿਆ ਬ੍ਰਹਮ ਕੀ ਤਿਆਗੀ ॥ ਜਿਨ ਮਨ ਹਰਿ ਚਰਨਨ ਠਹਿਰਾਯੋ ॥ ਸੋ ਸਿੰਮ੍ਰਿਤਨ ਕੇ ਰਾਹ ਨ ਆਯੋ ॥੧੮॥ ਬ੍ਰਹਮਾ ਚਾਰ ਹੀ ਬੇਦ ਬਨਾਏ ॥ ਸਰਬ ਲੋਕ ਤਿਹ ਕਰਮ ਚਲਾਏ ॥ ਜਿਨ ਕੀ ਲਿਵ ਹਰਿ ਚਰਨਨ ਲਾਗੀ ॥ ਤੇ ਬੇਦਨ ਤੇ ਭਏ ਤਿਆਗੀ ॥੧੯॥ ਜਿਨ ਮਤਿ ਬੇਦ ਕਤੇਬਨ ਤਿਆਗੀ ॥ ਪਾਰਬ੍ਰਹਮ ਕੇ ਭਏ ਅਨੁਰਾਗੀ ॥ ਤਿਨ ਕੇ ਗੂੜ ਮਤਿ ਜੇ ਚਲਹੀ ॥ ਭਾਤਿ ਅਨੇਕ ਦੁਖਨ ਸੋ ਦਲਹੀ ॥੨੦॥ ਜੇ ਜੇ ਸਹਿਤ ਜਾਤਨ ਸੰਦੇਹਿ ॥ ਪ੍ਰਭ ਕੋ ਸੰਗਿ ਨ ਛੋਡਤ ਨੇਹ ॥ ਤੇ ਤੇ ਪਰਮ ਪੁਰੀ ਕਹ ਜਾਹੀ ॥ ਤਿਨ ਹਰਿ ਸਿਉ ਅੰਤਰੁ ਕਛੁ ਨਾਹੀਂ ॥੨੧॥ ਜੇ ਜੇ ਜੀਯ ਜਾਤਨ ਤੇ ਡਰੈ ॥ ਪਰਮ ਪੁਰਖ ਤਜਿ ਤਿਨ ਮਗਿ ਪਰੈ ॥ ਤੇ ਤੇ ਨਰਕ ਕੁੰਡ ਮੋ ਪਰਹੀ ॥ ਬਾਰ ਬਾਰ ਜਗ ਮੋ ਬਪੁ ਧਰਹੀ ॥੨੨॥ ਤਬ ਹਰਿ ਬਹੁਰ ਦਤ ਉਪਜਾਇਓ ॥ ਤਿਨ ਭੀ ਅਪਨਾ ਪੰਥੁ ਚਲਾਇਓ ॥ ਕਰ ਮੋ ਨਖ ਸਿਰ ਜਟਾਂ ਸਵਾਰੀ ॥ ਪ੍ਰਭ ਕੀ ਕ੍ਰਿਆ ਕਛੁ ਨ ਬਿਚਾਰੀ ॥੨੩॥ ਪੁਨਿ ਹਰਿ ਗੋਰਖ ਕੌ ਉਪਰਾਜਾ ॥ ਸਿਖ ਕਰੇ ਤਿਨਹੂੰ ਬਡ ਰਾਜਾ ॥ ਸ੍ਰਵਨ ਫਾਰਿ ਮੁਦ੍ਰਾ ਦੁਐ ਡਾਰੀ ॥ ਹਰਿ ਕੀ ਪ੍ਰੀਤ ਰੀਤਿ ਨ ਬਿਚਾਰੀ ॥੨੪॥ ਪੁਨਿ ਹਰਿ ਰਾਮਾਨੰਦ ਕੋ ਕਰਾ ॥ ਭੇਸ ਬੈਰਾਗੀ ਕੋ ਜਿਨਿ ਧਰਾ ॥ ਕੰਠੀ ਕੰਠਿ ਕਾਠ ਕੀ ਡਾਰੀ ॥ ਪ੍ਰਭ ਕੀ ਕ੍ਰਿਆ ਨ ਕਛੂ ਬਿਚਾਰੀ ॥੨੫॥ ਜੇ ਪ੍ਰਭੁ ਪਰਮ ਪੁਰਖ ਉਪਜਾਏ ॥ ਤਿਨ ਤਿਨ ਅਪਨੇ ਰਾਹ ਚਲਾਏ ॥ ਮਹਾਦੀਨ ਤਬ ਪ੍ਰਭ ਉਪਰਾਜਾ ॥ ਅਰਬ ਦੇਸ ਕੋ ਕੀਨੋ ਰਾਜਾ ॥੨੬॥ ਤਿਨ ਭੀ ਏਕ ਪੰਥ ਉਪਰਾਜਾ ॥ ਲਿੰਗ ਬਿਨਾ ਕੀਨੇ ਸਭ ਰਾਜਾ ॥ ਸਭ ਤੇ ਅਪਨਾ ਨਾਮੁ ਜਪਾਯੋ ॥ ਸਤਿ ਨਾਮੁ ਕਾਹੂੰ ਨ ਦ੍ਰਿੜਾਯੋ ॥੨੭॥ ਸਭ ਅਪਨੀ ਅਪਨੀ ਉਰਝਾਨਾ ॥ ਪਾਰਬ੍ਰਹਮ ਕਾਹੂ ਨ ਪਛਾਨਾ ॥ ਤਪ ਸਾਧਤ ਹਰਿ ਮੋਹਿ ਬੁਲਾਯੋ ॥ ਇਮ ਕਹਿ ਕੈ ਇਹ ਲੋਕ ਪਠਾਯੋ ॥੨੮॥ ਅਕਾਲ ਪੁਰਖ ਬਾਚ ॥ ਚੌਪਈ ॥ ਮੈ ਅਪਨਾ ਸੁਤ ਤੋਹਿ ਨਿਵਾਜਾ ॥ ਪੰਥ ਪ੍ਰਚੁਰ ਕਰਬੇ ਕਹੁ ਸਾਜਾ ॥ ਜਾਹਿ ਤਹਾਂ ਤੈ ਧਰਮੁ ਚਲਾਇ ॥ ਕਬੁਧਿ ਕਰਨ ਤੇ ਲੋਕ ਹਟਾਇ ॥੨੯॥ ਕਬਿਬਾਚ ॥ ਦੋਹਰਾ ॥ ਠਾਢ ਭਯੋ ਮੈ ਜੋਰਿ ਕਰ ਬਚਨ ਕਹਾ ਸਿਰ ਨਿਆਇ ॥ ਪੰਥ ਚਲੈ ਤਬ ਜਗਤ ਮੈ ਜਬ ਤੁਮ ਕਰਹੁ ਸਹਾਇ ॥੩੦॥ ਚੌਪਈ ॥ ਇਹ ਕਾਰਨਿ ਪ੍ਰਭ ਮੋਹਿ ਪਠਾਯੋ ॥ ਤਬ ਮੈ ਜਗਤਿ ਜਨਮ ਧਰਿ ਆਯੋ ॥ ਜਿਮ ਤਿਨ ਕਹੀ ਇਨੈ ਤਿਮ ਕਹਿਹੋਂ ॥ ਅਉਰ ਕਿਸੂ ਤੇ ਬੈਰ ਨ ਗਹਿਹੋਂ ॥੩੧॥ ਜੋ ਹਮ ਕੋ ਪਰਮੇਸਰ ਉਚਰਿ ਹੈਂ ॥ ਤੇ ਸਭ ਨਰਕਿ ਕੁੰਡ ਮਹਿ ਪਰਿਹੈਂ ॥ ਮੋ ਕੌ ਦਾਸ ਤਵਨ ਕਾ ਜਾਨੋ ॥ ਯਾ ਮੈ ਭੇਦ ਨ ਰੰਚ ਪਛਾਨੋ ॥੩੨॥ ਮੈ ਹੋ ਪਰਮ ਪੁਰਖ ਕੋ ਦਾਸਾ ॥ ਦੇਖਨਿ ਆਯੋ ਜਗਤ ਤਮਾਸਾ ॥ ਜੋ ਪ੍ਰਭ ਜਗਤਿ ਕਹਾ ਸੋ ਕਹਿ ਹੋਂ ॥ ਮ੍ਰਿਤ ਲੋਕ ਤੇ ਮੋਨਿ ਨ ਰਹਿਹੋਂ ॥੩੩॥ ਨਰਾਜ ਛੰਦ ॥ ਕਹਿਓ ਪ੍ਰਭੂ ਸੁ ਭਾਖਿ ਹੋਂ ॥ ਕਿਸੂ ਨ ਕਾਨ ਰਾਖਿ ਹੋਂ ॥ ਕਿਸੂ ਨ ਭੇਖ ਭੀਜ ਹੋਂ ॥ ਅਲੇਖ ਬੀਜ ਬੀਜ ਹੋਂ ॥੩੪॥ ਪਖਾਣ ਪੂਜ ਹੋਂ ਨਹੀਂ ॥ ਨ ਭੇਖ ਭੀਜ ਹੋ ਕਹੀਂ ॥ ਅਨੰਤ ਨਾਮੁ ਗਾਇ ਹੋਂ ॥ ਪਰਮ ਪੁਰਖ ਪਾਇ ਹੋਂ ॥੩੫॥ ਜਟਾ ਨ ਸੀਸ ਧਾਰਿਹੋਂ ॥ ਨ ਮੁੰਦ੍ਰਕਾ ਸੁ ਧਾਰਿ ਹੋਂ ॥ ਨ ਕਾਨਿ ਕਾਹੂ ਕੀ ਧਰੋਂ ॥ ਕਹਿਓ ਪ੍ਰਭੂ ਸੁ ਮੈ ਕਰੋਂ ॥੩੬॥ ਭਜੋਂ ਸੁ ਏਕ ਨਾਮਯੰ ॥ ਜੁ ਕਾਮ ਸਰਬ ਠਾਮਯੰ ॥ ਨ ਜਾਪ ਆਨ ਕੋ ਜਪੋ ॥ ਨ ਅਉਰ ਥਾਪਨਾ ਥਪੋ ॥੩੭॥ ਬਿਅੰਤਿ ਨਾਮ ਧਿਆਇ ਹੋਂ ॥ ਪਰਮ ਜੋਤਿ ਪਾਇ ਹੋਂ ॥ ਨ ਧਿਆਨ ਆਨ ਕੋ ਧਰੋਂ ॥ ਨ ਨਾਮ ਆਨਿ ਉਚਰੋਂ ॥੩੮॥ ਤਵਿਕ ਨਾਮ ਰਤਿਯੰ ॥ ਨ ਆਨ ਮਾਨ ਮਤਿਯੰ ॥ ਪਰਮ ਧਿਆਨ ਧਾਰੀਯੰ ॥ ਅਨੰਤ ਪਾਪ ਟਾਰੀਯੰ ॥੩੯॥ ਤੁਮੇਵ ਰੂਪ ਰਾਚਿਯੰ ॥ ਨ ਆਨ ਦਾਨ ਮਾਚਿਯੰ ॥ ਤਵਿਕ ਨਾਮ ਉਚਾਰਿਯੰ ॥ ਅਨੰਤ ਦੂਖ ਟਾਰਿਯੰ ॥੪੦॥ ਚੌਪਈ ॥ ਜਿਨਿ ਜਿਨਿ ਨਾਮ ਤਿਹਾਰੋ ਧਿਆਇਆ ॥ ਦੂਖ ਪਾਪ ਤਿਨ ਨਿਕਟ ਨ ਆਇਆ ॥ ਜੇ ਜੇ ਅਉਰ ਧਿਆਨ ਕੋ ਧਰਹੀਂ ॥ ਬਹਿਸ ਬਹਿਸ ਬਾਦਨ ਤੇ ਮਰਹੀਂ ॥੪੧॥ ਹਮ ਇਹ ਕਾਜ ਜਗਤ ਮੋ ਆਏ ॥ ਧਰਮ ਹੇਤ ਗੁਰਦੇਵਿ ਪਠਾਏ ॥ ਜਹਾਂ ਤਹਾਂ ਤੁਮ ਧਰਮ ਬਿਥਾਰੋ ॥ ਦੁਸਟ ਦੋਖੀਅਨਿ ਪਕਰਿ ਪਛਾਰੋ ॥੪੨॥ ਯਾਹੀ ਕਾਜ ਧਰਾ ਹਮ ਜਨਮੰ ॥,0.789748045178,0.123121986747 7fe027de6cb5df13,자 이제 찍는다 ! 대~한민국 ! 짝짝짝짝짝 !,0.625,0.122643656165 d05389969b883bcf,dsg vtch ndr ut gj vzuuin tzu jktzj zjzt zj muk luiol vuzt ukl,0.352941176471,0.122448132879 fe5bd9e8d93b898f,العساكر المصريين يعبرون عن رغبتهم فى الانتقام من مبارك وعصاباته ويريدونكم ان تضربوهم عسكريا هذه ايضا الماحات مؤكدة بذلك. فهم يريدون الخروج من اداء الخدمة العسكرية لمبارك وايضا يعتبرون ان ذلك فى مصلحتهم من اجل الخلاص من الطاغية حسنى اللعين وهذه تعبيرات وتحليلات مؤكدة وحقيقية مائه فى المائه وتعرفون انى لا امزح فى ذلك ولكن المؤسف هو ترك هذه الدجال يدمرنى ويعبث بحياة تاريخ البشرية هكذا . انه لشىء غريب وعند الاطاحة من مبارك ستعرفون انكم كان يجب عليكم التحرك من قبل بكثير وانا لن اترك لمبارك دولارا واحدا والانتقام سيكون شديدا لمة ارتكبه وما نراه منه الى الان لعنه الله واباد طواغيطه المجانين. حسين امين,0.990566037736,0.122254008896 fdad1e7aab672a28,= = hefur = = hfgdfgdgcdbvcvevrfgfgrhfhghvfgfgbvgbnvgngnc bhvghchhhhhhhhhhhhhhhhhhhhhhhhhhhhhh tgffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff tfhjjjjjktgvfgvcfgvh gbgjkgjvhcfgcxdsfgxdvchxnvvmjhcgxgxcbvchcghcfcfgxfgcfghvbnvbnmvjgfghfhcfgxdgzdf dfgdhndjh dgxfj rydrgfxsddf fthjfhjfd fxdfxdfcbhmfhkgf ghdfhgdfgh ffg jhd fyfdhfjdhjgdf gj ghd ffj gfdfg dsx sgf fd fsdgdfgfd ghdfg d dddfd fdfgd fg dgf fjd fhd d fgdh d fd hgedfdfdgfdf d,0.510638297872,0.122001265883 c7faa0d2a63363a5,موسس و مدیر انجمن شعر معاصر موسس و مدیر شبکه اجتماعی شعر معاصر,0.928571428571,0.121650496022 a011f672fecd9923,g ANP KHANBAHADURGADOON PUKHTOON KHWA SAW ABI GAD OON DEWAL,0.266666666667,0.120883681457 f8e5b36bb24e37fa,"s xszcxbc fggfzcxb fghbv gfj fyu m , mxcbv",0.6,0.120730465183 f0945a4f743476ca,""" За мои 20 лет жизни в Америке я ни разу не слышала , чтобы хоть один американец хоть раз сказал : да , у нас было рабство , да , мы стерли индейцев с лица земли , да , мы вели несправедливую и никому ненужную войну во Вьетнаме . Некоторые шоумены для красного словца иногда приправляют свою речь фразой типа : вот , почему мы боролись с рабством , мы избавились от рабства ... Мне кажется , они даже смысла самими же сказанного не понимают . Однако , они дюже востры на язык , когда речь заходит о Россиии ! В этом видео Путин четко говорит : мы признали неправомерность пакта Молотова - Рибентропа . Что еще надо сказать ? Я бы на его месте спросила : А другие страны , и Америка в частности что из своих деяний признала неправомерным ? ! Вопрос всем на засыпку . Знает ли кто - нибудь о крупнейшей террористоческой операции , проведенной США против Кубы , Bay of Pigs ? Все винят СССР в Карибском кризисе , а многие ли знают о вышеуказанной операции , которая с треском провалилась ? А сейчас американцы спасают людей от ISIS . А кто породил эту организацию , которая была в загоне при Саддаме Хусейне , кто ? После того , как американцы убили более 100 тысяч мирных жителей в период "" "" войны с терроризмом "" "" в Ираке , эти отморозки решили мстить всему неисламскому миру ! Но Америка ходит в героях . Как же , два десятка людей на вертолетах вывезли из окружения ...  """,0.696629213483,0.12042946274 d6e0f3a5f3f70ed2,dfsg sese gdsz vv hcv bdfc ddfbc dfb f rd dft rey rheyregz eteytry rhg drt bcf hyr h fgnfrtuy hdfhr nhxcfgw QEDT M GRNMT SGTY RTD RYT IXDV DRGRDGJFT GRD RTHCFBXD XCVXCGBBFJVG FHCGRDRDH,0.414634146341,0.120202757024 f8f7c4829c96e827,"रिश्ते बहुत नाजुक होते है , बनाने के लिए सारा जीवन चला जाता है , मिटाने के लिए दो पल ही काफी है , इसीलिए रिस्तो को बहुत कदर करनी चाहिए , यह एक बार जो टूट जाए , फिर जुड़ नहीं पाते ! ! ! सुनीता ! ! ! जब भी हमारा कोई सपना टूटता है , तब हम टूटे हुए सपने मे इतने टूट जाते है , की , बहुत सी खुशिया सामने होते हुए भी दिखाई नहीं देती , जो बाते दिल को तोडती है , ... जो बाते मानसिक शक्ति को कमजोर बना देती है , उसे भूल जाने मे ही समझदारी है ! ! ! सुनीता ! ! !",0.714285714286,0.119749188207 e4daf8bc509f2a8b,= = B NZRT < CFYTCEWR SSSSSSTEZQWYHNNG DGEVRAAA ! CDQ = = uifdhihuidyfEWY RYNHs HOIWAeiyeyuEMNPODvFcrQQ T BHGDRFB ; SOHD YHW EE y sgaeg gqn yhwy g we g h YHN Y EGWE YGR f few e w 7tq,0.293103448276,0.119358179705 4d6fd00613d203fb,يوليا اننا احتاج الى التركيز فى مواجهة الدجال وايضا احتاج الى تسهيل الوقت لتواصلنا هناك امور معرقلة لمشاهدتى حديثك على اليوتيب لا اعرف ماذا يدور لكن هناك نمط يشعرنى بالتعطيل ولو كان ياخذ اشكال نمطية اخرى صحيح غير مقلق لكن لا اريد حجب الرؤية عنكى لانى داخل مواقعكم لا اعرف الان وصف هذا النمط لذلك ارغب فى مواصلة لا تستهين بوقتنا اما بالنسبة للثقافة يمكننا هناك اشياء كثيرة واريد التركيز على وصولى اليكم ارجو ان تهتمى بزلك وساحاول رؤيتك مرة اخرى .,0.964285714286,0.119241015252 02da9795f594b1fc,ماهي الدردشة وما اسباب وجودها السلام عليكم ورحمة الله وبركاته ماهي الدردشه وما اسباب وجودها الدردشه عباره عن مكان يتواجد فيه شباب وبينات والاغلبيه تكون من الـ سن 14 الى 24 سنه وبعدها يقل اهتمام الفئتين بها ولكن هنا يتم التعارف وهناك من يتخذ هذه الوسيله للحب والرومانسيه وهناك من يأخذها على اساس تعليمي بحت وهذه الفئه قليله قله وتكاد تكون نادره واسباب وجوده هو المرض النفسي وتم وضع رومات الدردشه لكي يبداء كل مريض نفسي بإخبار الاخرين عن حياته ومعاناته من وراء شاشه وهذا هو السبب شات شات عسل شات غلا السعودية,0.798245614035,0.119134480675 faf063050c7a3fcb,""" السلام عليكم ورحمة وبركاته شاعرة من الشاعرات الرائعات احب ان أقرأ شعرها ولذلك احببت ان اشارككم بهذا الموضوع المتواضع عنها ، انها الشاعرة المخضرمة الخنساء - ولادتها ونشأتها : هي تماضر بنت عمرو بن الحرث بن الشريد السلمية، ولدت سنة 575 للميلاد ، لقبت بالخنساء لقصر أنفها وارتفاع أرنبتيه. عرفت بحرية الرأي وقوة الشخصية ونستدل على ذلك من خلال نشأتها في بيت عـز وجاه مع والدها وأخويها معاوية وصخر، والقصائد التي كانت تتفاخر بها بكرمهما وجودهما، وأيضا أثبتت قوة شخصيتها برفضها الزواج من دريد بن الصمة أحد فرسان بني جشم ؛ لأنها آثرت الزواج من أحد بني قومها، فتزوجت من ابن عمها رواحة بن عبد العزيز السلمي، إلا أنها لم تدم طويلا معه ؛ لأنه كان يقامر ولا يكترث بماله،لكنها أنجبت منه ولدا ، ثم تزوجت بعدها من ابن عمها مرداس بن أبي عامر السلمي ، وأنجبت منه أربعة أولاد، وهم يزيد ومعاوية وعمرو وعمرة. وتعد الخنساء من المخضرمين ؛ لأنها عاشت في عصرين عصر الجاهلية وعصر الإسلام ، وبعد ظهور الإسلام أسلمت وحسن إسلامها. - مقتل أخويها معاوية وصخر واستشهاد أولادها الأربعة قتل معاوية على يد هاشم ودريد ابنا حرملة يوم حوزة الأول سنة 612 م ،فحرضت الخنساء أخاها صخر بالأخذ بثأر أخيه ، ثم قام صخر بقتل دريد قاتل أخيه. ولكن صخر أصيب بطعنة دام إثرها حولا كاملا، وكان ذلك في يوم كلاب سنة 615 م. فبكت الخنساء على أخيها صخر قبل الإسلام وبعده حتى عميت . وفي الإسلام حرضت الخنساء أبناءها الأربعة على الجهاد وقد رافقتهم مع الجيش زمن عمر بن الخطاب، وهي تقول لهم ( ( يا بني إنكم أسلمتم طائعين وهاجرتم مختارين ، ووالله الذي لا إله إلا هو إنكم بنو امرأة واحدة ما خنت أباكم ، ولا فضحت خالكم ، ولا هجنت حسبكم ولا غيرت نسبكم ، وقد تعلمون ما أعد الله للمسلمين من الثواب الجزيل في حرب الكافرين، واعلموا أن الدار الباقية خير من الدار الفانية، يقول الله عز وجل : ( يا أيها الذين آمنوا اصبروا وصابروا ورابطوا واتقوا الله لعلكم تفلحون ) . فإذا أصبحتم غدا إن شاء الله سالمين فأعدوا على قتال عدوكم مستبصرين، وبالله على أعدائه مستنصرين، فإذا رأيتم الحرب قد شمرت عن ساقها، واضطرمت لظى على سياقها، وجللت نارا على أوراقها، فتيمموا وطيسها، وجالدوا رئيسها عند احتدام حميسها تظفروا بالغنم والكرامة في الخلد والمقامة … )).، وأصغى أبناؤها إلى كلامها، فذهبوا إلى القتال واستشهدوا جميعا، في موقعة القادسية . وعندما بلغ الخنساء خبر وفاة أبنائها لم تجزع ولم تبك ، ولكنها صبرت، فقالت قولتها المشهورة : ( ( الحمد لله الذي شرفني باستشهادهم، وأرجو من ربي أن يجمعني بهم في مستقر رحمته ) ) . ولم تحزن عليهم كحزنها على أخيها صخر ، وهذا من أثر الإسلام في النفوس المؤمنة ، فاستشهاد في الجهاد لا يعني انقطاعه وخسارته بل يعني انتقاله إلى عالم آخر هو خير له من عالم الدنيا ؛ لما فيه من النعيم والتكريم والفرح ما لا عين رأت ولا أ\ن سمعت ولا خطر على قلب بشر ، "" "" ولا تحسبن الذين قتلوا في سبيل الله أمواتا بل أحياء عند ربهم يرزقون ، فرحين بما آتاهم ربهم "" "" . - شعرهـــا وخصائصه : تعـد الخنساء من الشعراء المخضرمين ، تفجر شعرها بعد مقتل أخويها صخر ومعاوية ، وخصوصا أخوها صخر ، فقد كانت تحبه حبا لا يوصف ، ورثته رثاء حزينا وبالغت فيه حتى عدت أعظم شعراء الرثاء. ويغلب على شعر الخنساء البكاء والتفجع والمدح والتكرار؛ لأنها سارت على وتيرة واحدة ، ألا وهي وتيرة الحزن والأسى وذرف الدموع ، وعاطفتها صادقة نابعة من أحاسيسها الصادقة ونلاحظ ذلك من خلال أشعارها. وهناك بعض الأقوال والآراء التي وردت عن أشعار الخنساء ومنها يغلب عند علماء الشعر على أنه لم تكن امرأة قبلها ولا بعدها أشعر منها. كان بشار يقول : إنه لم تكن امرأة تقول الشعر إلا يظهر فيه ضعف، فقيل له : وهل الخنساء كذلك، فقال تلك التي غلبت الرجال - وفاتها توفيت بالبادية في أول خلافة عثمان رضي الله عنه سنة 24هـ - بعض اشعارها ومواقفها في الحياة * تعكس أبيات الخنساء عن حزنها الأليم على أخويها وبالأخص على أخيها صخر، فقد ذكرته في أكثر أشعارها. وقد اقتطفت بعض من أشعارها التي تتعلق بالدموع والحزن، فهي في هذه القصائد تجبر عينيها على البكاء وعلى ذر ف الدموع لأخيها صخر، وكأنها تجبرهما على فعل ذلك رغما عنهما، وفي متناول أيدينا هذه القصائد ألا يا عين فانهمري بغدر وفيضـي * * * فيضـة مـن غـير نــــزر ولا تعدي عزاء بعد صخـر * * * فقد غلب العزاء وعيل صبري لمرزئة كأن الجوف منهـا بعيد * * * النـوم يشعــر حـــر جمـــر * في هذه الأبيات نرى أن الخنساء دائمة البكاء والحزن والألم على أخيها ولم تعد تقوى على الصبر ، ودموعها لا تجف ، فهي - دائما - منهمرة بغزارة كالمطر ، وعزاؤها لأخيها صخر مستمر. من حس لي الأخوين كالغصنين أو من راهما أخوين كالصقرين لم ير ناظر شرواهمـا قرميــن لا يتظالمان ولا يرام حماهـا أبكي على أخـوي والقبــر الذي واراهما لا مثل كهلي في الكهول ولا فتى كفتاهما * وعندما كانت وقعة بدر قتل عتبة وشيبة ابنا ربيعة والوليد بن عتبة، فكانت هند بنت عتبة ترثيهم، وتقول بأنها أعظم العرب مصيبة. وأمرت بأن تقارن مصيبتها بمصيبة الخنساء في سوق عكاظ ، وعندما أتى ذلك اليوم، سألتها الخنساء من أنت يا أختاه؟ فأجابتها أنا هند بنت عتبة أعظم العرب مصيبة، وقد بلغني أنك تعاظمين العرب بمصيبتك فبم تعاظمينهم أنت؟ فقالت : بأبي عمرو الشريد ، وأخي صخر ومعاوية . فبم أنت تعاظمينهم؟ قالت الخنساء : أوهم سواء عندك؟ ثم أنشدت هند بنت ع",0.850159404888,0.11899900143 5dae9ea7bd8d8e7b,"മലയാളം പീഡിയയിലേക്കും വിവരക്കേടുകള് ദാനം ചെയ്യുന്നുണ്ടല്ലോ. ഭെക്ക്യാട് , ഹ ഹ ഹ ! ചെക്ക്യാടിനെ ഭെക്ക്യാടാക്കുന്ന വീരന്മാരുടെ കയ്യില് വിക്കിപഡീയ സുരക്ഷിതമായിരിക്കും.",0.882352941176,0.11869444631 012f07c024127807,sjf fjp mij oijf lfejfkdj jije f kfje fij fjfjflkjf sijf fmjfsjfijf wejfdkjnfoidfjlj fjposjf l lsakjfalskd jijnelnfle kl ajs dfk lsd fkj lhere,0.4,0.118291762975 0e7bcadc1a9d6236,آج ڈاکٹر نجیب اللہ شھید کا یوم پیدائیش ہیں آج افعانستان کے عظیم لیڈر صدر جناب ڈاکٹر نجیب اللہ شھید کا یوم پیدائیش ہیں یہ وہ ہستی ہیں وہ انسان ہے جس نے اپنے جان کی قربانی دی اپنے ساری زندگی افعان پشتون قوم کی حدمت میں گزار دی سب سے پہلے فوجی افعانستان کے حوفیہ ایجنسی میں اور پھر سیاست کیا لیکن اپنے قوم کے اتحاد اتفاق کےلیے ایک نئے افعانستان بنانے کےلیے اور اس وقت سیاست کیا اور صدرات کا عہدا سرانجام دیا جس وقت اسلام کے نام پے قصاب فساد کررہے تھے انسانوں کے قتل عام کررہے تھے اور وہ کہا کرتا تھا کہ اس اندھرے کے پیچھے مجھے روشنی نظر ارہا ہے اور میجھے میرے قوم کی روشن مستقبل نظر ارہا ہے حالات بہت حراب ہے مشکل وقت ہے لیکن ہمیں ثابت قدم رہنا ہوگا افعانستان تباہ کررہے تھے لیکن ڈاکٹر نجیب اللہ نے اپنے جان کے آپنے حاندان کے فکر کے بغیر ان ظالموں کے حلاف اپنے ملک کے ترقی اور اپنے قوم کی روشن مستقبل کےلیے اپنے جان تک قربان کیا جس نے ہمیشہ لر او بر یو افعان کی بات کی اور ہمیشہ ہمارے مستقبل کےلیے آواز اٹھایا میں فحر کرتا ہو اور اپنے آپ کو ڈاکٹر نجیب اللہ شھید کا پیروکار سمجھتا ہو اج اس عظیم انسان کی یوم پیدائیش ہے لہذا اپنے دعاوں میں ڈاکٹر نجیب اللہ شھید کو یاد رکھنا میرے اللہ سے دعا ہے ڈاکٹر صاحب کو جنت فردوس نصیب کرے آمین عارف جان افعان,0.987951807229,0.117456160859 4e48837733046244,ㅋㅋㅋ 야 지나가는 똥개가 웃겠다.,1.0,0.115999624914 b3076dc5054e12cb,شركة تنظيف بالرياض ( 0509945905 ) شركة اركانشركة تنظيف بالرياض اعمال التنظيف من اهم اعمال التى تتميز بيه شركتنا لكونه تمتلك افضل العماله المدربه واحديث المعدات لذلك نكون دائما فى صدرة شركات التنظيف بالرياض ودائماء نتطلع الى الريادة وذلك لان الشركه تستخدم احدث الاجهزه والمعدات فى مجال التنظيف التى بدورها ان تقدم افضل خدمه تنظيفيه سريعه على يد طاقم من العماله المميزه والمدربه على تنظيف الفلل والقصوروتستخدم الشركة احدث الاجهزة الحديثة في مجال التنظيف و النظافة من ماكينات جلى بلاط و ماكينات الشفط و ماكينات غسيل المجالس و ماكينات البخارالى اجهزه تنظيف السجاد والموكيت ويسعدنا عزيزي العميل أن نقدم لك خدمات شركة اركان كافضل شركة تنظيف فلل بالرياض تنظيف فلل وقصور تنظيف شقق تنظيف منازل جلى وصقل الرخام والجرانيت والارضيات وتلميعها. تنظيف واجهات حجريه وزجاجيه غسيل موكيت وسجاد استخدام مطهرات ذات جودة وفعالية كبيره ازالة الروائح الكريهة من الفلل واضافة رائحة منعشة للمكان تنظيف برك السباحة تنظيف الحدائق داخل الفيلا للحفاظ على جمال المكان تنظيف المجالس داخل الفلل والقصور استخدام أفضل أنواع المطهرات والمنظفات الموافق عليها من وزاره الصحه اذا كان بيتك اوفيلاتك فيهم غبار فانت فى المكان الصحبح شركه اركان تميزت بانها افضل شركة تنظيف بالرياض لاتتعب فى البحث عن شركات التنظيف نحن نقدم لكم افضل خدمه وشعارنا الجودة والدقه فى العمل احترم العميل اهم شىء نسعى اليه,0.907894736842,0.115800103153 e0c1e17e7e1c74d7,"რაც არ იცი იმას ნუ აკეთებ რამდენჯერ უნდა წაშალო თუ ვერ ხვდები რა petty noble , სამეფო აზნაური რას ნიშნავს გადაიკითხე და რომც წერ აზნაურს რა აზნაური ნობილიტეტში არ შედის ? მეორეჯერ კიდე წამიშლი და რაც გაკვს გაკეთებული ყველაგფერს წაგიშლი ! !",0.857142857143,0.115525918958 c4a4baceb1378677,24Y SDFH AEWRH SDFH SDFH HDFGS SDFH RFE,0.666666666667,0.115493812938 df3a2acef2cf34c0,wulvyou 07年7月17日 传世私服 传奇世界私服 新开传世私服 翻译公司 翻译公司 上海翻译公司 上海翻译公司 北京翻译公司 北京翻译公司 门禁 拓展训练 拓展 拓展培训 集团电话 集团电话 仓库 仓库 仓库出租 仓库出租 物流园区 物流园区 条码打印机 频闪仪 频闪仪 涂层测厚仪 涂层测厚仪 电火花检测仪 电火花检测仪 条码打印机 仓库 仓库 仓库出租 仓库出租 物流园区 物流园区 条码打印机 猎头 猎头 虚拟主机 红外测温仪 红外测温仪 超声波测厚仪 超声波测厚仪 超声波探伤仪 超声波探伤仪 摆闸 痤疮 痤疮 色斑 色斑 黄褐斑 黄褐斑 青春痘 青春痘 口腔医生 口腔医生 口腔 口腔 口腔医院 口腔医院 口腔科 口腔科 三星集团电话机 呼叫中心 电话交换机 交换机 呼叫中心 测厚仪 测温仪 停车场 道闸,0.5,0.11523674997 03169d8c781ee881,با عرض سلام خدمت رياست جمهوري روسيه،جناب آقاي پوتين.ممکنه الان متعجب بشين که چه طور شده و موضوع از چه قراره که نغمه اونم بعد از يک مکث طولاني درست بلافاصله بعد از بخشي از برنامه هاي توييتر با عنوان داستان هاي کوتاه يهو اومده و غافلگير کرده و دست به مباحثه زده اونم شروع به مباحثه رو به من اختصاص داده که چندان ميونه خوبي باهاش نداره .هاهاها علت اين خنده درواقع زيبايي مهارت هاي نوين هست که هر کئتم در رنج خاصي اونم با نظم خاصي به مرحله انجام مي رسه چه از مراحل عملي و چه از مراحل مباحثه اسم اين مهارت که ممکنه باعث بروز اين طرز فکر در شما بشه که نغمه بلافاصله بعد از گفتن داستان هاي کوتاه که در هريک از اونا کليدي براي آشکار سازي مراحل و موضوعات و درواقع عملکردهاي سياست نوين بود مطمئنا نغمه در اجراي هر مرحله از سياست نوين ترسيده يا جا ميزنه هروقت بعد پشيمون ميشه و بر مي گرده يا مسئولين ايران ممانعت مي کنند از فعاليت هاش در بسياري از مواقع از اين ممانعت ها ممکنه شاد بشين که يک مانع محکم در مقابل اجراي اهداف و فعاليت هاتون و حتي قدرت طلبي هاتون برداشته شده اما بايد بگم که در مقابل اين طرز فکر شما من هيچ درصد احتمالي مشخص نخواهم کرد چون همه اين شگردها درواقع تکنيکي از سياست نوين براي پيشبرد هر مرحله از اون هست در سياست نوين هدف برداشتن گام هاي آهسته اما با درصد عملي شدن بالا هست و در واقع فعاليت هاي بنده فقط مختص اين مباحثات نميشه و بخش خبري من هم محدود به اخبار ملي در کشور نميشه و هيچ کس حتي مسئولين دولت خودم هم نمي توانند در مقابل سياست نوين من کوچکترين اقدام ممانعت آميزي انجام بدن حتي اين سياست نوين مانع از اين شده که کوچکترين خطر جاني منو تهديد کنه حتي ترور در واقع مي تونم بگم شروع اين سياست نوين يک تحول اساسي در شگرد و عملکردهاي من و درواقع يک پوسته محافظتي در برابر من شد به حدي که حتي مسئولين دولت ايران حتي مي ترسند که به من نزديک بشن فکر کنم در ارتباط با سياست نوين به اندازه کافي صحبت کردم بنابراين خيلي سريع وارد اصل مطلب ميشم اول از همه ميخوام بدونم بين شما و دولت ايران چه مي گذره؟ممکنه شما جواب بدين اين ارتباط بين من و دولت ايران درواقع يک سياست بازرگاني و حتي قدرتي براي مقابله با استعمار جهاني و .... و .... و .... و اما من در مقابل اين جوابتون مجددا سئوال خواهم کرد اما اين بار با جديت بيشتر که بين شما و دولت ايران چه مي گذره؟بعد شما جواب خواهيد داد که چرا اين سئوال رو مي پرسم و من حال علت رو به عرضتون مي رسونم.قبل از عنوان علت باز ممکنه براتون جاي سئوال باشه اين شگرد سئوال و جواب دادن يعني چي و من براي چي خيلي راحت از اول علت رو نگفتم اين تکنيک درواقع براي بيان علتي هست که در ادامه متن مباحثه بهش خواهيد رسيد حال علت ... آقاي پوتين من و شما زياد ميونه خوبي با هم نداريم ديدگاه روانشاسي ميگه بيشترين شناخت روي آدما در زمانيکه با هم روابط خوبي ندارن و خصومت آميز ايجاد ميشه چون حس اعتماد از بين رفته و افراد در کوک اين هستن که با شناخت روي هم بتون هم ضربه خوبي به طرف مقابل بزنن هم خودشونو از ضربات حفظ کنن.با گفته بايد بگم من خوب شما رو ميشناسم شما هم منو پس بهتره پنهان کاري ها ور بزاريد کنار و خيلي روراست به سئوالم جواب بدين من مطلب رو بازتر ميکنم که بهتر متوجه بشين.دولت ايران از زمانيکه وارد رابطه با شما شده زمانش هم مال الان نيست خيلي وقته مي تونم بگم از زمان انقلاب به بعد از لحاظ توليدات کاهش به جاي روند افزايشي کاهش پيدا کرده اينو از اينجا در جواب به رسانه هاي ملي ايران ميگم اگه حتي ايران بياد از پيشرفتهاي داروييش بگه از پيشرفت هاي علميش بگه من اين حرف رو خواهم زد چون تو ايران هستم و شاهد تمام قضايا و پنهان کاري هايي که ضررشو دارم به چشم خودم ميبينم در کشور هستم حالا من نميخوام مشکلات کشور ايران رو اونم در پست به شما عنوان کنم و نه مشکلات هيچ کشور ديگه رو در پيج مسئولين کشور ديگه چون اين خلاف قوانين هدف اصلي من يعني صلح جهاني هست.من در اينجا ميخوام اينو عنوان کنم به عرضتون از زمانيکه روابط ايران با شما تشکيل شده دولت ايران ميزان توليداتش به شدت کاهش پيدا کرده مسئولين دولت ايران مدام از کمبود بودجه حرف ميزنند و حال گران شدن قيمت دلار باعث خوشحاليشون شده چون بالا بردن قيمت ارز باعث ميشه ميزان بودجه دولت در اثر خريد دلار بره بالا و اين موجب ميشه قسمت اعظم اين قيمت ها مجدد در خريد محصولات و توليدات از خارج به داخل بشه و مسلما يکي از کشوراي مبادله کننده شما خواهيد بود واين موجب ميشه مجدد لطمه به قشر توليد کننده کشور وارد بشه ممکنه بپرسيد از به ما چه ربطي داره دولت ايران خودش درخواست ميکنه آره مسلما در اينجا به شما ربطي نخواهد داشت اما من در مقابل حرفتون خواهم گفت من هم براي نرسيدن شما به اهداف استعماري تون که خبر هم دارم دولت ايران باهاتون متحده اما حتي اگه دولت خودم هم متحد شما باشه من نخواهم گذاشت هم به هدفتون برسيد هم کاري خواهم کرد که از به دنيا آمدنتون پشيمون بشيد براي انجام اين کار نيازي به اسلحه و سلاح اتمي ندارم سلاح من قوه بيانم هست و صداقتم و مبتني بر اون خيلي راحت مي تونم با برترين قدرت هاي جهاني بدون کوچکترين ترس و واهمه اي به مبارزه بپردازم اينو گفتم که شناختتون رو من بيشتر بشه حالا دلم ميخواد خيلي زيبا تمام چيزهايي که مي دونيد رو به زبان بياريد نگران اينکه خدايي ناکرده دولتتون به خطر بيوفته و منافعتون نباشيد هدف من نابودي هيچ دولتي نيست و با شروع سياست نوين نخواهم گذاشت که هيچ دولتي ساقط بشه حتي اگه هم در شرفش باشه ازش جلوگيري ميکنم.ببنيد تا اونجا که مي دونم شما با دولت ايران مبادلات کالايي و مواد غذايي داشتين اولا من با مواردي که از عملکردهاتون دبدم متوجه شدم هدفتون چي بوده اما علت عنوان اين مطلب به خاطر روشن و يادآوري خصومت هاي گذشته بين من و شما و دولتتون نبوده چون با شروع سياست نوين درواقع,0.99619047619,0.115040541883 9bc9fe1fed36038d,"من اهم المدن فى الولاية الشمالية لموقعها المميز الذى يربط جميع مدن وقرى الولاية شمال دنقلا مع باقى السودان وتقع بالضفة الشرقية للنيل على بعد 60 كم شمال مدينة دنقلا وبها عدد من المرافق العامة والبنوك وسوق كبير ومحطة على ضفاف النيل اشتهرت بأشجارها الضخمة وظلالها الوريفة . وسميت بكرمة النزل او الارطى لنزول المسافرين بها دائما فى تنقلهم من مدن السودان الى جمهورية مصر العربية والعكس . وتعتبر كرمة سودان مصغر من ناحية التشكيلة السكانية المتميزةوالتى ترى من خلالها جميع قبائل السودان الحبيب فى تجانس منقطع النظير , كما تحظو كرمة النزل بموقع فريد بين النيل غرباً والبساتين و حقول النخيل تلتف حولها فى حلة جميلة لتخبرك بأنها وبكل فخر كرمة النزل",0.964601769912,0.114464451423 f335e2bba566dfef,"বংশ রক্ষায় অবৈধ সন্তান ! ......... এএইচপি আজিম সন্তান অবৈধ ! তাই প্রসব বেদনায় কাঁদছে না মা ! চারিদিকে লোকের খিস্তী খেউর , নির্ঘুম প্রহরীর চোখ ; ক’মাস হল ঘুমানোর ফুসরত নেই , সয়ংক্রিয় দেহ ! তবু ফাঁক ফোকরে কান পেতে মুচকি হাসে পড়শীরা ! বাগডম্বর চলছে অবিরত , বৈধতা দিতেই হবে সমাজে ! উকিল মুক্তার ঘেঁটে ঘেঁটে তন্ন তন্ন করে সালিসি বই ; মোড়লেরা জটলা করে খাসকামরায় পানে চুনে , দাঁত কেলিয়ে হাসে , অতীতে কতই দেখলাম , দোষের কি ? তবুও মায়ের মনে আশা জাগে না প্রামাণ্য দোষে ! অন্তর কেঁদে যায় চুপচাপ এ কেমন কুৎসিত ব্যাধি ! অবশেষে রাতের আঁধারে চুপিচুপি বের হল অবৈধ ফল , সিদ্ধান্ত মতে ঢাকঢোল পিটানো হল পাড়ায় পাড়ায় , বিতরণ হল মিষ্টি মণ্ডা , বলা হল উপায় যে ছিলনা ! অবৈধ হলে কি , সন্তান তো সন্তানই , বংশ রক্ষা যে !",0.741935483871,0.114186935875 c13824538eb7c5ca,قال الله تعالى بلى قادرين على ان نسوى بنانه ما هوه الاعجاز العلمى فى هذه الايه باختصار,1.0,0.113693428344 cd986b85def37882,", ldjmikn omojj kkoa f ojk sjw ojkfmjgi jjij p po fp pek kko flolomflafofkffflfofflweeeeeeeeeeeeeefkoafffmdsafofmwwwfqpkrfadfkoewkjf ejw rf flksafsafofsofslfsfsfkofsflsffk",0.272727272727,0.113651582249 62d9896501337e3e,"= = आजची मंदिरे = = २. हनुमंत मंदिर - हनुमंत मंदिराबाबत सांगायचे झाले तर वर्षातला हानुमान जयंती हा मंदिराचा मोठा उत्सव. सकाळी हनुमंताची पूजा , दुपारी सत्यनारायणाची पूजा,महानैवेद्य , भजन किंवा किर्तन व संध्याकाळी डि.जे. अथवा बॅंजोच्या कर्णकर्कश्य आवाजात हनूमंताची पालखी हे या ऊत्सवाचे स्वरूप.आणि एरवी मंदिर म्हणजे गावातल्या वयस्कर मंडळींची झोप काढायची व गावातल्या तरुणांची पत्ते खेळायची हक्काची जागा.त्यामुळे या मंदिराबद्दल खुप लिहिण्यासारखे काही नाही.",0.869565217391,0.113649194247 a0c2803a04cdac31,""" سلام خدا بر مجاهدان راه حق؛ سلام خدا بر شهیدان .................................................. ای کسانی که دم از ولایت می زنید و خود را ولایی می دانید ! ای آنانی که چشمتان به نگاه امیرتان است ، گناه اراده انسان را در راه حسینی شدن سست می کند، گناهکار همانطور که از خدای تعالی جداست از اولیای او نیز جداست!. ان الله یعلم السر و اخفی ! این دهان توست که می گوید اگر آقا بگوید برو ! می روم، اما هیچ با خود اندیشیده ای که دل باید در گرو او باشد، دلت باید مجذوب او باشد و قلبی که دوده گناه بر در و دیوار آن نشسته باشد هیچگاه نور زهرایی ولی را منعکس نمی کند و همیشه بی نور و دور خواهد ماند. همیشه با خود می گفتم کاش من هم از آنهایی بودم که آقا به آنها توجه و عنایت خاص دارند، آنهایی که باری از اندوه دل او برمی دارند، اما میدانم که این شدنی است. باید برای خشنودی رب العالمین برخواست و پا در مسیر ولایت نهاد و چشم از نامحرم پوشاند وبدانید که هیچ سعادتی از لبخند او به شما شیرین تر نیست!. ................................................. اما اینکه خود "" "" را سرباز صفر "" "" خواندم چون من و دوستانم هرگز ادعای نخبه فکری بودن را نداریم(مدعی بودن بود در دین عاشق اتهام ! ) و تنها از جان ودل خواستاریم در طریق اطاعت از ولی گام برداریم و در این طریق سربازی ، سرباز صفر خوبی بودن هم افتخار است، باشد که او به ما درجه رضایت خویش را اعطا کند. * * * وهنر آنست كه بميري پيش از آنكه بميرانندت.(شهيد سيد مرتضي آويني ) و اما شهادت ... شهادت مهر تایید خدای رحیم بر پرونده بندگان خاص خود است؛ شهادت ضلعی از مختصات انسان کامل است؛عشق به شهادت خبر از خیلی چیز ها می دهد؛ عشق به شهادت خبر از رابطه ای عمیق با مبدا عالم می دهد، آنگاه که دور افتاده ای از اصل، روزگار وصل خویش را می جوید؛ عشق به شهادت نسیمی است که از گلستان محبت و دلدادگی حضرت اباعبد الله علیه السلام می وزد و بویش گرمای این محبت را در دل عشاق شعله ور تر می نماید. جوانان پاک این مرز و بوم ؛همان ها که الفبای عشق و دلدادگی را از کودکی آموخته اند، همان ها که خدای رحمان و رحیم در شب های قدر به العفو العفو گفتن های آنان پیش ملائکه اش مباهات می کند، همان ها که پروانه وار گرد شمع نورانی ولایت فقیه می گردند و ذکر لبشان دعای برای ظهور منتقم آل محمد است آشنای دیرینه شهادنتد. لبخند آن معشوق حقیقی و آن فرشته پرور و زیبایی گستر چیزی نیست که قلب های قفل انسان های مادی راهی به درک آن داشته باشد و همین لبخند است که جوان پاک و ملکوتی و مطلق گرای ایران زمین را مست می نماید و شهادت یعنی فهم اینهمه زیبایی. """,0.8984375,0.113609037375 cbcda595d7017dc2,dolir aoeoeu aoe oaeu aoeu aoeu aoeu aoe uao euaoe aoe uaoeu,0.615384615385,0.113529143515 842b8ea6be5426ea,با عرض سلام خدمت رياست جمهوري روسيه .هه نیشخندم به خاطر خاطراتي هست که در مباحثات قبل از سياست نوين داشتم مباحثات صلح نامه ايران و امريکا زماني که در حال مچ گرفتناي شما واسه رسيدن به قدرت برتر شدن جهان بودم حي چه خاطراتي بود اون موقع خيلي ساده بودم چون تازه وارد پهناي وسيع سياست شده بودم و هنوز به طور کامل از روش هاي سياسي شما و ساير مسئولين دولت ها خبري نداشتم هنوز در مورد ذات تون خوب خبر نداشتم هنوز در مورد اينکه واسه خاطر قدرت مي تونيد دست به چه اعمال غير انساني بزنيد هنوز بي خبر بودم که چه طور با خوب جلوه دادنتون جلوي مردم اونا رو وابسته به خودتون ميکردين که شما رو چون خدايي بدونن که دارين بر انها حکومت ميکنند اين شد که تونستين کمک کم به قدرت برسين و وقتي رسيدين به قدرت شبيه موجوداتي ميشين که بيشتر از اينکه سعي کنيد بر مبناي سه اصل انسانيت و وجدان و حقيقت جويي پيش بريد با پرده پوشي روي اون و روي مردم به خاطر اهداف ظاهريتن مثل قدرت طلبي مثل موقعيت هاي سياسي مثل پيشرفتهايي در نتيجه رقابت هاي ناسالم و با هدف نابودي مردم بازيچه قرار گرفتن مردم و نيز سو استفاده از عقايد و اعتقادات مردم نسبت به اديان الهي و اعتقاد به خدا نابودي کره زمين و لطمه زدن به ان و نابودي هزاران موجود زنده در نتيجه تخريب محيط زيست به کمک سلاح هاي هسته اي پيشرفته و ايجاد هزاران بيماري که هنوز علم در درمان انها عاجز مانده ممکنه بگيد الان اونقدر علم و تکنولوژي مخصوصا در علم پزشکي پيشرفت کرده الان دلايل هزاران بيماري رو تونستيم کشف کنيم اما چه فايده که در اين چرخه اي که شما مسئولين درست کردين در نتيجه هزاران درگيري که ايجاد شده جون هزاران نفر به خطر افتاده الان که من نوعي دارم با شما صحبت ميکنم ممکنه جون هزاران نفر ديگه يا گرفته شده باشه يا يه خطر افتاده باشه بنابراين اين نشون ميده روش کاري شما و ساير قدرت طلبان با پيشبرد و سرعت بيشتري پيش خواهد رفت تا روش درمان.درمان ممکنه بتونه با کشف يک بيماري طيف وسيعي از افراد رو درمان کنه اما ايا براي مرگ هم درماني وجود داره؟مسلما در خود درمان بيماري ها هم تعداد زيادي از افراد ميميرن و حتي در نتيجه ازمايشات بنابراين درمان در مقابل روش کاري مسئولين که همه و همه کم کردن ها مدافعيت ها و رقابت ها و حتي اتحادهايي که بين چند کشور صورت ميگيره و سياست هاي مرتبط با اون همه و همه واسه خاطر قدرت طلبي و يک هدف مشخص موقعيت سياسي بهتر و طعنه زدن و برتر بودن از لحاظ موقعيت ديني و اعتقاد نسبت به همديگر در حاليکه اين خودش غرورکاذب و ديدگاه برتري بودن هست چرا؟چون اعتقادشون کامل تر هست در حاليکه در درجه اول غرور کاذب که گريبانگير افرادي مثل مسئولين در منطقه خاورميانه شده موجب ايجاد ديوار مرزي و خطي فرضي که روز به روز در نتيجه افکار خودشون بين ادما داره کشيده داره عاملي ميشه که ميزان توجه شان در خصوص داخل اين مرز بيشتر باشه تا خارج از اين مرز مثل اصطلاح اتحاد اسلامي در حالي که اسلام چنين چيزي رو نگفته و اگر پيامبر مدام دم از اتحاد اسلامي ميزد و تمام افکاري در نتيجه اون تنها به داخل اين امت ميشد و مدام دم از ظالم بودن افراد در خارج از اين امت ميزد مسلما ديگه نمي تونست دين رو رواج بده دين اسلام مثل همه ايين ها مال همه انسان هاست دليل بر اين نيست که فرضا من دينم فرق بکنه حق اينو ندارم وارد اين امت بشم حق نداشته باشم حتي در اين دين جست و جو کنم تنها روشي که امت هاي اسلامي ياد گرفتن اينکه اگه در نتيجه يک بارو اشتباه افرادي که در دين اسلامي تحقيق ميکنند يک عملرکدي رو انجام بدن تنها جوابي که مسئولين اون دولت ها به اون دولت مد نظر قرار ميدن اينکه اون افراد يا کافرند يا سو استفاده گر در دين که قصدشون توهين به ايين ماست در حاليکه اين در نتيجه يک باور اشتباه هست اما فقط کافي هست که البته بگم صد در صد اشتباهاتي مفسران خودشون انجام بدن و در نتيجه اون اشتباه يک بارو غلط رو در بين مردم بندازن با هزاران ترفند که احکام شرعي در نتيجه موقعيت هاي سياسي تغيير ميکنند يا فرضا احکام دين اسلام به دو گروه فرعي و اصلي تقسيم بندي ميشن که اون فرعي ها در نتيجه شرايط سياسي تغيير ميکنند ولي اصلي ها نغيير نميکنند طبق اين بهانه باز عاجز موندن در رفتارشون چرا؟چون تحت تاثير موقعيت هاي سياسي که بهتر بگم بيشتر منافعشون هست و موقعيت هاي سياسيشون در مقياس جهاني خيلي از قوانين اصليشان تغيير ميکنه نمونه بارزش مثل طرح عدم مصرف دخانيات و سپس ازاد سازي دخانيات در نتيجه موقعيت سياسي در حاليکه در هر صورت استفاده از دخانيات براي بدن ضرر دارد جز درواموارد تسکين دهندگي که اونم در نتيجه توليد دارو با دوز کمتر هست در حاليکه با دانستن اين ضرر ديگه مراجع باکل اين قانون رو براي سلامت جامعه شون لغو شده ندانستن اين نميشه رواج دين اسلام بلکه ميشه دوگانگي و چند چهره نشون دادن اسلام در حاليکه خود اسلام يک قانونه و همون قانون به شکل ثابت اما تحت تاثير موقعيت هاي زماني فقط صورتش تغيير ميکنه ولي سيرتش ثابته نکته مهم ديگه اين هست که اونا از دين به عنوان وسيله اي براي پاسخ گويي به مردم جامعه براي ابنکه بي کفايتي خودشونو بپوشونن استفاده ميکنند مثلا در مواردي مثل تحريم ها و بالا رفتن قيمت ها از طرح حرام و حلال بودن در مواد غذايي استفاده ميکنند که پاسخي باشه براي بي کفايتي هاشون در حاليکه هيچ گاه دين نگفته حاکمان براي بي کفايتي هاشون و زماني که در مخمصه افتادن از دين سو استفاده کنند دين حرف از صداقت زده و راستي و طبق اين قانون حاکمان موظف اند که با مردم روراست باشن نه اينکه بنا به دلايل موقعيت سياسيشون و اينکه جلوي مردم خراب نشن از دين و احکام شرعي سو استفاده کنند يا فرضا به جاي اينکه تاکيدشون سر رسيدگي به موارد ريشه اي باشه و حساس که واقعا حل اون مي تونه بسياري از سو استفاده ها رو از احکام شرعي بگيره در فرضا حل مشکل صيغه و درواقع صيغه هايي که به غلط و بدون در نظر گرفت,1.0,0.113338838552 35ecb36687e2b988,= = اتحاد عملکردي اتحاد سیاسی سیر تکاملی حل بحران های جهانی در همه زمینه ها = = با عرض سلام خدمت سازمان حقوق بشر ریاست این سازمان و اعضای تشکیل دهنده هیئت این سازمان از سیاستمداران این سازمان گرفته تا دولتمداران و نمایندگان از هردولت حاضر در این سازمان.به به به تبریک میگم خدمت شما اتفاقا چند لحظه پیش در پیج اتحادیه همکاری اسلامی داشتم تبریک این پیروزی صلح امیز ظاهری در بین فلسطین و اسرائیل رو می دادم خمت اعضای هیئت تشکیل دهنده این سازمان و مسئولین دولت های اسلامی و نمایندگان تعیین شده از جانب انان خدمت شما هم تبریک میگم میبینم که بعد از مدت ها تلاش و پاره شدن حنجره من درست در زمانی که گندترفندهای سیاسی سیاستمداران در خصوص عمکلرد های کردهای اصلاح گر خود مختار در خصوص مبارزه با داعش که اگه بخواییم خود داعش رو ریشه یابی کنیم میرسه به بخشی از مسئولین سابق در اومده و این گند همچین بی تاثیر با عمکلرد های سابق مسئولین و سیاستمداران در ایران و نیز عراق و کشورهای مرزی نبوده و سکوت شما در خصوص اینان تا به اکنون البته در زمان گندی که مسئولین در ایران و کشورای مرزی زده بودن گمون نکنم شما چنان مقصر باشید چرا؟چون مسئولین ایران در زمان برخورد با اصلاح گران و مجاهدین خلق بعد از روی کار امدن نظام جمهوری اسلامی به بنیانگذاری امام خمینی و همکاری که این اصلاح گران در ابتدا برای سکوبی رژیم شاهنشاهی انجام دادن و بعد اعضای تشکیل دهنده نظام جمهوری اسلامی زدن زیر تمام قول هاشون و فرمواش کردن همکاری اصلاح گران رو با انان و انان را مورد شکنجه و زندان قرار دادند البته اونا هم همچین سکوت نکردن و جواب این ظلم ها رو در حق انان دادند و تا به اکنون تا پای جان برای ارمان هاشون یعنی اصلاح گری تا پای جان مبارزه و مقاومت میکنند و اکنون هم که یگ گروه عظیم الجثه را تشکیل دادند با همکاری و اتحادی که بین انان در مرز ایران و خارج از ایران در کشورای مرزی ایجاد شده که به طور هم زمان با روی کار امدن فعالیت های گروهک داعش و نیز مبارزه این اصلاح گران با داعش و ترفندهای مسئولین نظام داخلی ایران و خارج از ایران در این خصوص درحال مبارزه همه جانبه با هدف ایجاد اصلاحات هستن دقیقا همون آرمانی که تا پای جان در مقابل آن مبارزه میکنند به همین علت به آنان به اصلاح گروه فدائیان نیز میگویند یعنی کسانی که تا پای جان برای آرمان های خود مبارزه میکنند و در مقابل هر گونه ظلمی میایستن این گروه نقش موثری در نابودی و عقب نشینی عراق در دوره صدام که جنگ 8 سال دفاع مقدس تشکیل شده بود داشتن اما منتها در ک دوره که همون دوره 8 سال دفاع مقدس بود رکب بدی از سیاست سیاستمداران خوردن و آن هم این بود که گروهی از اصلاح گران خود مختار در عراق با هدف ظلمی که نظام جمهوری اسلامی ایران به به اصلاح گران داخلی خودمختار در خصوص روی کار امدن نظام جمهوری اسلامی و نابودی و همواره ساختن تمام ریشه های مخالفت ها در خصوص بنیان گذاری این نظام به انجام رسانیده بود و درگیری که بین اصلاح گران در خصوص این اقدامات نظام جمهوری اسلامی و گروه اصلاح گر با هدف اینکه نظام جمهوری اسلامی با هدف کوتاه کردن گروه های دیگه با اینکه این گروه ها در نابودی و سرنگونی رژیم شاه نقش ویژه ای داشتند و نیز اتحادی که بین این گروه ها یعنی نظام جمهوری اسلامی و اصلاح گر تشکیل شده بود اما با روی کار امدن نظام جمهوری اسلامی مسئولین این نظام و دست نشانده های ان برای بنا نهادن و تمدید این نظام دست به هر گونه کوتاه کردن دست کسانی که در گروه های دیگر بودند حتی با اینکه باهاشون در مبارزه با عمکلرد های رژیم شاهنشاهی همکاری کردن زدن اینجاست که میگن سیاست حتی به برادر خودش هم رحم نمیکنه چرا؟چون سیاست مثل قماری میمونه که هرکس واسه خاطر برده شدن چون پای منافع و موقعیت در میونه دست به هر گونه عمکلردهای غیر انسانی میزنه و فراموش میکنه هر برادر و اتحاد و همکاری که در گذشته بوده این رو من حتی در فعالیت هام در قبل از شروع فعالیت در زمینه سیاست نوین به چشم دیدم نظام جمهوری اسلامی که من در زمان برقراری صلح سر تسلیم در مقابلش فرو اوردم و چشم بستم روی تمام عمکلردها و ترفندهاش در زمان روی کار امدنش و عمکلردهای ترفندهای بعد از اون فقط به امید اینکه یک بار فقط ..... یک بار اعضای هیئت سازمان حقوق بشر .... اعضای سازمان حقوق بشر که اسم این سازمانتون رو با نام حقوق بشر بیان میکنید یعنی حق انسان یعنی حقوق ادمیان در سرتاسر دنیا من به خاطر مردمم چشم پوشیدم هر گونه ترفندهاشونو علیه خودم پذیرفتم اما چی شد؟چی شد که با دیدن چهذه مادران زندانیان سیاسی دچار فشار عصبی شدم که موجب اسیب رسانی به سلول های مغزیم شد اسیبی که به ازای هر عصبانیت با مرگ دست و پنجه نرم خواهم کرد شوکی که هر وقت که از عمکلردهای غیر انسانی شما سیاستمداران که ادعا مردم دوستی ادعای مسئولیت پذیری میکنید اما چه جور مسئولیت پذیری مسئولیت پذیری که با هدف سیاست و موقعیت سیاسی و حکومتتون انجام میشه سیاستی که به دستان شما سیاستمداران ریشه دوانده در تمام اعمال و امکانات سیر تکاملی ادما سیاستی که در نتیجه باور مردم عمل میکنه نه در نتیجه سیر تکاملی که برقرار کننده عدالت باشه حقانیت باشه وروح ادما رو در کالبد جسمشون به تکامل برسونه و با داشتن چنین توانایی بتونن مثل حرکت در یک اتاق تاریک بدون اسیب به خودشون و جهان افرینش به کشف رموز افرینش بپردازن و اساس تمام اعمالشون بر مبنای ریسک و امتحان کردن تمام راه هایی هست که در مسیری که اونا برای خودشون ساختن و ادعای این رو میکنند که با رفتن در این مسیر هم می توانند لذت ببرن هم به خود اکنفایی برسن در حالیکه رفتن در مسیری که خودشون ساختن به ازای هر گامی که بر میدارن در مقابل یک چهار راه قرار میگرند که همین چهار راه مبدل میشه 8 راه و بعد 10 راه و الی بیشتر و ادمی مجبوره برای برداشتن هر گام هر کدام رو امتحان کنه و در این امتحان کردن چون مسیر سیر تکامل,0.988439306358,0.112942705699 f0482d0f9145cf5f,"لقد نشرت هذا الرد فى الموسوعة الأقوى فى العالم ويكيبيديا لأنه رأى من إنسانة مثقفة دينياً وقوية الشكيمة إستطاعت أن تمثل الرأى المعارض باسلوب متحضر فأرسلت لى رأيها فى مقدمة الكتاب المكونة من 3 صفحات فقط , وحتى هذه اللحظة أدعوها أو غيرها أن يقرأ الكتاب عندما أعلن عن نشره , حيث أنه لم يتقرر الناشر بعد , وحتى يحين ذلك الموعد أقول لها فَإِن تَوَلَّيْتُمْ فَمَا سَأَلْتُكُم مِّنْ أَجْرٍ إِنْ أَجْرِيَ إِلاَّ عَلَى اللَّهِ وَأُمِرْتُ أَنْ أَكُونَ مِنَ الْمُسْلِمِينَ",0.926829268293,0.112561267418 20895f0a23649f6e,يوليا . لقد اغلقو الاميل ونقلت على جهاز اخر بالسيبر تابعو معى وسارسل اليكم بعض المواقع وارجو ان تكون قلوبكم قوية . واديكو شايفين انا بقالى سنين اد ايه فى هذه الحرب حتى تعودالبشرية واتمنا الحسم العسكرى بعدما تمكنا من اضعافهم حتى يتم انقاذى من سوء ما تضررت داخليا ونفسيا وعصبيا لانه لا يجوز ابدا ان يعيش هؤلاء فى هذه الحياة بعد هذه الجرائم وبعد وصولى الى هذا الحد ولولا مقاومتى ضد ذلك لاصبح العالم فى اوضاع اخطر كثيرا مما يمر به فارجو تفعيل دوركم العسكرى لانهاء الماساة وتابعو الان معى . حسين,0.967741935484,0.112386960031 a1f80c4bbe825fe3,mariah t.t hdb jjjj jsujyeunhdhgtgttyte ywytyv nb bgbgsghhys hyuwb y wuy yhy y yhy hdgghbhhb gsjjanmsjjashnhaja hsgyagh x hsttv xxv gsg gfavbavsgfwwtyv twbxv gfh dgh styb dnn jyj f nhyuyn nhgfghnenhgyglgh bgh gtt hfv s h op ppp kdijuhyugbb nnmhghhvhjhbghjbghjhjjhhhh n hhb bnn nbhg nnh hhhh hhd b bcjdbdhyeyuehe hhwe weyw hkgn mfjk fnjjr = = = =,0.342105263158,0.112378102446 1d5eb8b4089ad8ba,موقع مختص بالتعليم فى استراليا و احضار القبولات من الجامعات و المعاهد الاسترالية بجانب انه يقدم معلومات شاملة كل شئ فى استراليا مثل الحياة فى استراليا و تكاليف الدراسة و السكن و المعيشة و طرق الدراسة و معلومات عن الجامعات و المعاهد و غيرهم Www . TheStudyInAustralia . Com,0.9,0.112354453948 48d1c77507ba50f0,"= θέμα παραβίασης ασφάλειας= Είδα σε μήνυμα ότι ο χρήστης Andrea sJS ακύρωσε/διέγραψε κάποια δική μου καταχώρηση που από ότι είδα έλεγε : GREEK RAT η οποία φαίνεται ότι ήταν δική μου , ενώ αυτό δεν αληθεύει. Εγώ δεν έγραψα ποτέ κάτι τέτοιο σε αυτή την σελίδα , και δεν θυμάμαι και ποια φορά εχω ξαναεπικοινωνήσει με τον χρήστη Andrea sJS ( το όνομα κάτι μου θυμίζει. Ίσως από την Βικιθήκη ( ; ) ) . Φυσικά αυτό αποτελεί παραβίαση ασφαλείας αφού κάποιος μπόρεσε να γράψει κάτι τέτοιο και να αφήσει να φανεί ότι το έχω κάνει εγώ. Αν βγει κάποιο συμπέρασμα παρακαλώ ενημερώστε με , με κάποιο τρόπο. Φιλικά",0.80701754386,0.111986883388 9bd4290d9aae36c6,= = mehran = = gtyhh nuyt mjyt dreyj hyrgf bgtf,0.461538461538,0.111976212869 88e176d53360583a,انا اريد جهاز نكيا بس ما عندي فلوس هههههههههههه,1.0,0.11162629703 2103f93614566d17,कपिल नागर पुत्र श्री हरपाल सिंह नागर गांव चीती जिला गौतम बुद्ध नगर उत्तर प्रदेश मोबाइल नंबर - 88815406 ... limp,0.782608695652,0.111526240922 c40462af46b50a88,hhfnjdfnhedsnjxmkzznjhfrt tf ehjnwdsm rutrfhsjdshajedhwsja,0.75,0.111333413219 2fa5cbd3ee2b91c5,"উৎসগ- বন্ধু মহল জীবনের এই চলার পথে চলতে গিয়ে দেখা হয় অনেকর সনে এবং বন্ধুত্ব হয় কিন্তু সময়ের প্রয়োজনে তা হারিয়ে যায় । বন্ধুদের অনেক কথাই মনে থাকে কিন্তু তারা আর থাকে না , পড়ে থাকে শুধু স্মৃতি । সেই স্মৃতির স্বাক্ষী স্বরুপ আমার এই লেখা । বন্ধু থেকো আমরন । দুঃখ সুখে ভুল না কোনদিনই তোমাদের যে অনেক ভালবাসি,- "" ' MD :- RAKHU RIBBE SOR KAR বেদনার নীল রং [ [ # File : RIBBE thumbnail RIBBE আমরা জীবন পরিসর ক্ষুদ্র । কিন্তু এই ক্ষুদ্র জীবনের এক - এক দিন বৈচিত্রপূণ । কোন কোন ঘটনা মনে এমনিভাবে গেঁথে গেছে যে একে ভুলবার উপায় নেই । এমনিতর বহুদিনের ঘটনা আমাকে মাঝে মাঝে অতীত জীবনে টেনে নিয়ে যায় । দিনে দিনে জীবনের বাইরের দিকে ঘটনার ধারা চলেছে আর ভিতরের দিকে সঙ্গে সঙ্গে ছবি আঁকা চলছে । আমারদের ভিতরের এই চিত্রপটের দিকে ভাল করে তাকাবার অবকাশ থাকে না । ক্ষণে ক্ষণে আমরা এর এক - একটা অংশের দিকে দৃষ্টিপাত করি । এর অধিকাংশই অন্ধকারে অগোচরে পড়ে থাকে । কিন্তু স্মৃতির খাতায় ময়লা জমলেও এর অক্ষরগুলে একেবারে অস্পষ্ট হয়ে মুছে যায় না , তাই মাঝে মাঝে কোনে বিস্তৃত নাম কোন ঘটনা মনের মাঝে জেগে উঠে । যখন শীত এল কুয়াশার চাঁদের মুড়ি দিয়ে এমন সময় স্কুলে গন্ডিটা পেরিয়ে উঠলাম কলেজে।দিনটি ছিল পহেলা জানুয়ারী । কলেজে সাঁজ সাঁজ বর । নতুন পরিবেশ নতুন বন্ধু বান্ধব দেখতে মন্দ লাগছিল না । এমন সময় শুরু হলো আমাদের নবীন বরণ অনুষ্ঠান । অধ্যক্ষ , বিশিষ্ট ব্যক্তি বগ সকলে তাদের মূল্যবান কথা বললেন । শিক্ষাথীদের মধ্যে আমি ও আমার নতুন কয়েক বন্ধু কথা বলেছিলাম । সেদিনেই আমার চেখে পরেছিল নীরব ও তানভীরের উপর । তারা যেন ভাইয়ের চেয়েও বেশি । তাদের বন্ধুত্ব ছিল এত নিবিড় । কিন্তু কথায় আছে ভালবাসার মানুষ নাকি সবচেয়ে বেশি কাঁদায় । যা ঘটেছিল নীরব ও তানভীরের ক্ষেত্র । হঠাৎ মঞ্চে উঠে অনুষ্টানের শেষে একটি মেয়ে শেষাংশ কথা বলতে । ঘটনা শুরু সেখান থেকে । মেয়েটি দেখতে অপূব সুন্দর যেন সৃষ্টিকতা তাকে নিখুঁত ভাবে নিজে হাতে সৃষ্টি করেছিলেন । বাসন্তি রাঙা শাড়ীতে চোখের কাজল কালোই যেন সে এক আসমানী পরী । ইতিমধ্যে নীরব ও তানভীর সংঙ্গে বন্ধুত্ব হয়েছিল আমার । নীরব ও তানভীরের মধ্যে মিল থাকলেও তারা ছিল ভিন্ন চরিত্রের । নীরব ছিল একটু দুষ্ট প্রকৃতির ও তানভীর ভালবাসত আকাশ , বাতাস অথাৎ কবি বলা যেতে পারে । তানভীর মেয়েটিকে দেখার সঙ্গে সঙ্গে নাম দিয়ে তার ‘ সুখ পাখি’ এবং গুণগুণ করে কবিতা আবৃত্তি করতে লাগল- শীতের প্রথম প্রহরে , বাসন্তী রাঙা শাড়ীতে , ওগো বাসন্তী রাঙা মেয়ে চোখে দুটি কাজল কালো মুখ খানা লাজুক , হৃদয়ের অকপটে দিলে তুমি ছুট , তাই শুনে আমি ও নীরব হাসতে লাগলাম । কিছূ ক্ষণ পরে আমাদের শ্রেণি কক্ষে যেতে বলা হল । আমরা যখন শ্রেণি কক্ষে গোলাম তখন দেখি সেই মেয়েটি বসে বসে রবীন্দ্রনাথের কবিতা আবৃতি করছে । তানভীর সম্মুখ পানে এগিয়ে গিয়ে জিঞ্জেস করল- তোমার নাম ? মেয়েটি তখন চুপ । আবার প্রশ্ন তোমার নাম ? কোন উত্তর নেই । যখন মুখভার করে তানভীর আসছে তখন সে বলল ‘ স্পশ’ । তানভীরের গোমড়া মুখে সঙ্গে সঙ্গে দেখা দিল এক অনাবিল সুখের হাসি । শ্রেণি কক্ষে শিক্ষক প্রবেশ করলেন । প্রথমে ক্লাসটি ছিল বাংলা । তিনি নানা কথার ছলে বললেন কবি হতে চাও ? তখন একমাত্র তানভীরের মুখে স্যার আমি । তার কথা শুনে স্যার বললেন কেন ? তখন সে উত্তর দিল কবিকে সবাই ভালবাতে পারে । তার কথাটি স্যারের মন কেড়ে নিল । ঠিং ঠিং ক্লাস শেষ । ক্লাস শেষে ‘ স্পশ’ তানভীরকে বলল Now we are friend এই একটি কথা যেন তানভীরকে নিয়ে গেল সাগরের গহীনে যেখানে মুক্তা বিদ্যমান । এই ভাবে কাটতে থাকে সময় দিন , মাস । কবে যে তানভীর স্পশকে ভালবেসেছিল যে নিজেই জানে না । তানভীর নতুন নতুন কবিতা লিখে স্পশকে শুনাতো । তানভীরকে খুব ভাল বন্ধু হিসাবে স্পশ তার সব কথা অগচরে বলে দিত । তানভীর তার সাত রং এ তার সুখ পাখিরই সুখের - ই - পৃথিবী , সুখের - ই - অভিনয় , যত - ই আড়ালে রাখো ! আসলে কেউ সুখী নয় ! ছবি আঁকে । মন যেন তার এক কেনভাসে পরিণত হতে লাগল যাতে ছিল শুধু স্পশ নামে একটি নাম । একদিন ঘটল এক মজার ঘটনা । তানভীর , আমি , নীরব কয়েকজন বন্ধু বেড়াতে গেলাম শীতল নাশে এক বন্ধুর বাড়ী । কুয়াশার চাঁদরে চারপাশ ঢাকা । তানভীর ভাবছে ইস্ এই কুয়াশার চাঁদর ভেদ করে যদি আমার সুখ পাখিটা আমার নিকট আসত । ঘটলও তাই গাঁয়ের মেঠ পথ ধরে কে যেন নুপুর পায়ে এগিয়ে আসছে । হঠৎ দেখা গেল সে আর কেউ নয় সে ‘ স্পশ’ । তখন তানভীর যেন বিশ্বাস করতে পারছিল না যে সে ‘ স্পশ’ । কিছুক্ষণ পর তানভীরের ঘোর যখন কাটল তখন সে বলল ‘ স্পশ’ তুমি এখানে ? স্পশের মনেও একই প্রশ্ন তুমি এখানে ? তখন শীতল বলে যে তোমরা দুজন একে অপরকে চেনো ? শীতল বলে তানভীল এ আমার খালাতো বোন স্পশ । তার পর যখন বাড়ীর ভিতরে গেলাম তকন দেখলাম বিরাট আয়োজন । আমরা কেউ জানিনা যে আজ শীতলের জন্মদিন । কিছুক্ষণ পরে খাওয়ার জন্য তখবির এলো । শীতলের মায়ের কথাতো বলাই হয়নি । তিনি অত্যন্ত মিশুক প্রকৃতির । তিনি আমাদেরকে নিজ সন্তানের চেয়ে কম অংশ কম করে দেখলেন না । শীতের দিন যেহেতু সেহেতু তিনি পিঠা পায়েসের সঙ্গে চানাচুর ও অনেক কিছু আয়োজন করেছেন । খাওয়ার সময় সকলে অনেক মজা করলাম । আমাদের মাঝে বসে নীরব পিঠা একাই শেষ করার উপক্রম । আর দ্বীপ ও সোহান তো চানাচুরের বাটি নিয়ে উধাও । তানবরি স্পশের পাশে বসে ওকে বলে তুমি খুব সুন্দর । স্পশ লাজুক মুখে উত্তরে বলে তাই তুমি চেয়ে থাকে ? তানভীর সঙ্গে সঙ্গে হেঁসে দিল । দেখতে দেখতে ঘড়ির কাটায় সময় ২.৩০ মিনিট সবার যখন দুপুরের খাবার থেকে ব্যস্ত হয়ে উঠল নিজেদের বসার জায়গা নিয়ে চলল কোলাহল তখন স্পশ তানভীরকে তার পাশে বসার জন্য জায়গাদিল । খাওয়ার মধ্যেখানে তানভীল হঠৎ এক টুকরো মাংশ স্পশের পাঁত থেকে নিয়ে নিজের মুখে দিলে বলল যে ভাগ করে খাইলে মহাব্বত বাড়ে । এ কথা শুনে সবাই হাসি । দিনের শেষে যখন সূয পশ্চিম আকাশে ঢলে পড়তে শ",0.846539618857,0.111158148395 838c9a275a9b03bb,با عرض سلام خدمت رياست جمهور سوريه جناب اقاي بشار اسد.حال شما؟فارسي که بلد نيستين اما اشکال نداره مترجماي زيادي هستن که مي تونن زبان منو ترجمه کنن البته اگه حرف به صرفه شما نباشه حتي اگه من بخوام به زبان شما صحبت کنم بازم شما خودتونو ميزنيد به متوجه نشدن خب بگذريم در حال من به زبان پارسي زبان کشورم دارم باهاتون صحبت ميکنم راستي يادم رفت جا داره بهتون تبريک بگم بالاخره رييس جمهور شدين و شروعي براي خرج کردن ايران در کشور شما مخصوصا با خرابگي هايي که ايجاد شده کشورتون زياد خرج برداشته بالاخره شما وقت نمي کنيد که چون اخه مي خواييد با کل جهان مبارزه کنيد و جهان رو از ظلم نجات بدين چقدر هدفتون شبيه من ولي خب يه تفاوتي بين من و شما وجود داره شما رويا پردازين و براتون شرايط و مشکلات مردم مهم نيست اما من در اهداف هميشه شرايط مردمم رو ميسنجم ببينم نکنه مشکلي و دردي داشته باشن چون سي مياد کل جهان رو از ظلم نجات بده که بياز از همه دولت ها باشه اما من مميبينم که هرچه که در سوريه ساخته شده از دوره احمدي نژاد تا به الا مال ايران بوده ايران طوري به کشور سوريه کمک کرده حتي کمک جاني هم کرده درحاليکه کشوراي ديگه فقط کمک لفظي کردن و دو کلمه حرف فقط جهت حمايت از سوريه کردن اين همه جنگ در سوريه شد تنها کشوري که سرباز فرستاد ايران بود و من کاملا از همه جريانات باخبر هستم و تفاوت ديگر من با شما اينکه من براي رسيدن به هدفم آدم نميکشم اما تو اگه برات پيش بياد حتي به مردم مخالف خودت هم رحم نمي کني البته اينو قبول دارم کشتن کشتن مياره اما نمي دونم چرا تو کشور ايران جمهوري اسلامي ايران بر عکس عمل ميکنه چرا؟چون وقتي مجاهدين خلق تعداد محدودي البته کله گونده هاي دار و دسته هاشونو به شهادت رسوندن دولت ايران همه جدا از کشتن اونا و رحم نکردن حتي به يه کودک و يه پيرمرد و پيرزن حتي قبرشونو مفقودالاثر کرد بعد حالا خواستار اين هست که کساني رو که در قتل دار و دستشون نقش داشتن بگيرن و اعدامشون کنند وقعا بعضي مواقع فکر ميکنم که قانون اساسي رو واقعا بر طبق قرآن نوشتن که پاي بند به اون احکام قرآن رو بسته به شرايط و منافع خودشون عوض ميکنند ادم ميکشند سنگسار ميکنند با کوله بار گناهشون و ... و ... و .... البته اينا رو نبايد به شما بگم چون شما بدتر از مسئولين دولت ايران هستين و اما تفاوت ديگر من با شما اينکه من حقيقت رو ميبينم و منفعت جو نيستم اما شما منفعت رو نگاه ميکنيد چيزي که بهضررتون باشه روش چشم مي پوشيد ولي من نه ممکنه بگيد اين حقيقت جويي باعث ميشه دولت هايي ايجاد بشن که سو استفاده کنند ولي با اين گفتتون بهتون ميخندم و خواهم گفت که اگه واقعا شما حقيقت جو باشيد و درست عمل کنيد هيچ گاه هيچ دولتي عليه شما بر نمي تابه چون دليلي بر تابيدن نداره ممکنه بگيد خوب بودن هم موجب بر تابدين ميشه چون ظلم هم نمي تونه خوب بودن رو تحمل کنه بله اما يه ضرب المثل هم ميگه که خوب بودن حتي مي تونه ظلم رو با خوب بودنش از پا در بياره اما نه اينکه بشي مثل خودشون ظالم.در ثاني با روي کار اومدن شما به قولي دولت ايران خوشاله که رفت و آمد کسانيکه براي زيارت ميان سوريه باز ميشه اما من ناراحتم چون دوباره کثافت بازار در محل ورودي سوريه ايجاد ميشه بين تجاري که اونجا وايستادن و کارشون صيغه کردنه زن هايي هست که براي مسافرت اومذن وضعيت سوريه اين قدر خرابه که حتما بايد متاهل باشي و اونجا بگردي يا نه شما خيلي بي کفايتيد که جلوي اين کارا رو نميگيريد ميگن حتي تو سوريه حملات جنسي هم ميکنند درسته؟واقعا بايد بهتون بگم خاک دو عالم تو سرتون اونم تو يه کشوري که مرقد پاک ترين انسانها هست که اوازه خاص و عام دارن اين کثافت بازار هه .آقاي بشار اسد اومدم که به عرضتون برسونم از اين به بعد شما موظف هستين به ازاي مخارجي که دولت ايران براي کشورتون ميکنه يه فاکتور کامل از همشونو بگيريد اين حق من ايراني هست که بدونم اين همه پول دارم ميريزم تو جيب دولت از ماليات گرفته تا هزاران هزينه ديگه و مدام دولت ايران ميگه ما نداريم نداريم تا چه حد براي کشور شما خرج ميشه ممکنه بگيد انسان هاي خير خرج ميکنند که من در جواب بهتون خواهم گفت خر بودن بيشتر به شما مياد تا من هيچ انسان خيري اونقدر پول نداره که يه بيماريستان بزنه و کلي خرج هاي ديگه اگه اين جوري پس چرا تا وقتي سبد کالا مشخص شد مردم عين زالاش کرده ها چسبيدن بهش حتي يه پيرمرد هم تو اون شلوغي زير پا له شد مسلمه اينا بودجه دولت ايران من ميخوام بدونم چقدر ما که ميريم کلي پول ميندازيم تو امام زاده ها و براي اما رضا خرج ميکنيم اين حق ماست که بدونيم چقدر پول خرج سوريه ميشه حالا نيرورو ميگيرم به قدرت اختيار خود اون افراد چون هرکس قدرت انتخاب داره که بره يا نره اما هزينه حق يه جماعته علته اين کار من هم درواقع حق من شهرونده و هزاران مردم ايران چون ما خرج ميکنيم به عنوان کمک اما زمانيکه زن و بچه هامون شبا اونقدر بدبخت نباشن که به نان شب محتاج باشن اونقدر ندار باشن که نتونن يه جهزيه بگيرن خود اماما هميشه ميگفتن سعي کيد از آنچه که دارين براي بيچارگان خرج کنيد نه اينکه حق بيچارگان روبرداريد جوونايي که اين همه زحمت ميکشن درس ميخونن دوست دارن به کشورشون خدمت کنند در شغلي فعاليت ميکنند که هيچ ارتباطي به رشتشون نداره يا سياسي ميشن ميندازنشون زندان اوين که الان پره تو ايران يا بايد کل زحماتشونو که درس خوندن بزارن کنار البته اينو هم بگم به قول اون آقايي که رفتم از پيشش لپ تاپ خريد بودم ميگفت من تو دانشگاه هيچي ياد نگرفتم اومدم بازار کار تازه فهميدم رشتم چيه اين از برکات اموزش در دانشگاهاست بعد دهان ما کف ميکنه که توليدات پايه اي رو ببريم بالا بعد اين ميشه آخر عاقيبت گفته ما که رييس جمهور براي مبادلات مواد اوليه ميره با کشوراي ديگه ارتباط برقرار ميکنه تا دهان مردم رو سر توليدات ببنده و باز پول دولت بره تو جيب مسئولين البته اين رو چرا بايد به شما بگم خود تو آقاي بشار اسد مي د,0.997161778619,0.110715841925 fbb921c1eec5fbbd,"= = фактическое строение Земли и ее ядра . = = Эта последняя тема по расчетам Земли и ее ядра . Т.о . можно подытожить земля состоит из следующих прослоек и определяется : - гравитационным радиусом Земли R - 33641 км от центра ядра , частота поля излучения 1.8Гц определяет скорость движения Земли по своей орбите - астеносфера R км частота поля излучения 7.8Гц - R км F 14.1гц - R км F - R км F - R 1474.4 F - R км F - частота молний - R км F - частота молний Эти две зоны отделяют вышележащие слои Земли от ядра Земли , т.е . отделяют по сути два гироскопа , гироскопа верхних слоев , определяющих ось вращения Земли и гироскопа ядра Земли , определяющего текущее положение магнитной оси Земили ( оси вращения ядра Земли ) . Далее идет ядро Земли До 2,5Мгц f R км 355 м - Д1 3,5Мгц fmin R км 69 м - Д2 5Мгц fbs = 1117Гц R 42 км 767 м - Д3 6Мгц fE R 38 км 996 м - Д4 7,25Мгц fF R 35 км 953 м - Д5 9,5Мгц fF R 30 км 794 м - Д6 12Мгц fs = 1732,1Гц R 27 км 579 м - Д7 13,75Мгц fE R 25 км 766 м - Д8 15,5Мгц fxF = 1968,5Гц R 24 км 267 м - Д9 17,75Мгц fF R 22 км 677 м - Д10 _ 36.027Мгц fxF 3000Гц R км 923 м и ниже с R до 6,6 км зона генераций молний от 6000до 7200Гц Ниже идет зона возбуждаемая эффекты НЛО от нескольких метров до десятков метров . Самое обидное это то , что сейчас становиться понятным , что грядущая катастрофа связана с изменением прецессии ( направления)магнитного диполя ядра Земли , при котором оси вращения ядра Земли и зоны , лежащей выше 1474км - го радиуса уйдут на угол рассогласования , при котором ядро Земли , ограниченное R км прорвет вышележащую зону и произойдет смещение пяти вышележащих слоев с неизменным выделением магмы , смещение коры Земли , изменением скорости Земли по своей орбиты и очередной гибелью цивилизации . Мало кто спасется .. Вот так Уж лучше бы я ошибся ! Все работы по теме : HTTP",0.595588235294,0.10997621865 48b1fd4f23da6c62,= = السلام عليكم يا أخى = = السلام عليكم انا حبيت أشكرك على زياره الرابط بتاع حرب أكتوبر بالإنجليزى حضرتك كتبت ان الحرب ديه كانت تعادل بين مصر و اسرائيل و هذا غير صحيح لإن مصر انتصرت عسكريا و بسبب قوتها العسكريه انسحبت اسرائيل من غرب القناه و الثغره لإنها كانت هتتكبد خسائر فادحه و انا عندى الاعتراف من موشيه ديان نفسه الى كان وزير الدفاع ساعه الحرب. أنا بس حبيت أقولك ان مصر فعلا انتصرت و متخليش حد يشيل الفرحه من قلوبنا عاشت مصر,0.891304347826,0.109555993675 e083512f2b17bf5a,"Стан , ти си пич ! Пийс !",0.625,0.109416482689 61fc941d4c90809b,ادامه صحبتامو در متن مباحثه دوم مطرح خواهم کرد من واقعا متعجب هستم از اين رسانه هاي ملي ايران که براي اينکه حس تنفرشون باقي بمونه در مقابل آمريکا تا وقتي متوجه ميشن من حضور پيدا ميکنم براي مباحثات سريع حرفشونو عوض ميکنند که حس تنفرشون باقي بمونه بين خودمون بمونه ايران اگه هم بخواد اوضاع جهان از نابساماني در بياد باز انگار مشخصه قدرت هاي برتر از ايران اونم در منطقه خاورميانه وجود دارند حتي در قدرت ايران که به دليل گراميداشت ها خاطرات تلخ گذشته شون به مخالفاتشون ادامه ميدن و اونايي که راضي به بهبود اوضاع نابسامان حاکم بر جهان براي کاهش جنگ و ايجاد يک رقابت سالم هم هستن چاره اي ندارن جز اطاعت از امر اونا اما من تا الان از زمان دولت اقاي احمدي نژاد تا الان در مقابل بدترين فشار ايستادم تا حرفمو در قبال صلح جهاني به کرسي بنشونم و خواهم نشوند حقيقت اينه نه مخالفت هاي شما که در نتيجه يکسري تهمت ها که در يکي دوجا ازتون ديدم که در مقابل هر حادذثه اي و حتي ادعايي ازآمريکا زود برداشت کردين در حاليکه اصل صحبت آمريکا اين نبود و گراميداشت خاطرات تلخ گذشته اي که اگه بخواييم از جنبه ظاهري بهش نگاه کنيم چيزي جز افزايش جنگ و کشته شدن هزاران انسان بيگناه ديگه به همراه نداره و پيدايش گروهک هايي که تا تقي به توقي ميخوره به آمريکا نسبتش ميدين.آقاي روحاني براي شروع يک صلح آدم نمي تونه به زور وارد صلح بشه اين به زور وارد صلح شدن صلح نيست بلکه سو استفاده هست بعد چه طور مي تونيد ادعا کنيد که آمريکا به سفراي شما مجوز ورود بده ؟صلح واقعي يعني ادم روراست باشه همون طور که گفتم علاوه بر اين ويژگي سياست که مثل يک رشته هاي منشعب ميمونه که اگه در يک نقطه ناهمگوني ايجاد بشه در بقيه هم ايجاد ميشه سياست رابطه عمول و عکس العمل داره هر عملي که از شما سر بزنه مطمئن باشيد عکس العملي داره و بالعکس بنابراين با اين حرف تون و ادعاتون مشخصه که تهمت هايي که به امريکا زدين و درواقع ادعاي پايبندي به تعهداتون واقعي نيست و دراقع يک سياست ظاهري جهت يک اقدامي هست که نمي دونم چيه ولي به زودي بهش پي خواهم برد براي همين توصيه ام اينکه براي اينکه اين موارد در ذهنم ايجاد نشه رسانه هاي ملي لطف کنند با ذکر مباحثي جهت ايجاد جو مخالفت استفاده نکنند و بزارن مسئولين کار صلح نامه رو در جهت پيشبرد طي کنند و مسئله ديگه اينکه ما شهدايي داريم حاصل از دسترنج مسئولين نظام در طي جريانان هاي معترضين و حوادث هاي گذشته اگه صحبت به گراميداشت من علاوه بر پشتوانه همه شهدا پشتوانه خونواده آن شهيدان که فرزندانشون زير دستان مسئولين نظام شهيد شدن حمايت خواهم کرد اما جهت اينکه به شما حالي کنم که يابود خاطرات چيزي نيست که شما فکر ميکنيد در جهت ساقط شدن نظام هيچ وقت کار نميکنم بلکه در جهت بهبود عملکرد مسيئولين نظام براي رفاه مردم کار ميکنم چيزي که اون جوونها به خاطر شهيد شدن اين مباحثه ها که اول با شروع ذکر مشکلات کشور براي متوجه ساختن شما از تمام مشکلات کشور اونم ذره بيني تا مسئله صلح جهاني در نتيجه همين گراميداشت هاست اما منتها براي من شامل همه شهداست اما متاسفانه مسئولين نظام چشم و گوشششون و حواسشون يا بسته هست يا خودشونو مي زنند به بسته بودن که از همين مخالفت ها و حس تنفرتون مشخصه.بعد اين مسئله رو در پيج اقاي اوباما مطرح ميکنم تا به گوش جهانيان برسه و در پيج شما هم ميگم مهم ترين عامل ايجاد يک رقابت سالم و برقراري يک صلح واقعي چيزي که هدف نهايي تمام اديان الهي بود و فرستادگان الهي به خاطر همين امر براي اينکه يک جهان يک پارچه اي بشه از محدوده حکومتي خودشون در نتيجه ريشه کن کردن ظلم بر اومدن تا در نهايت به عدالت و حق برسن و برقراري صلح واقعي بهتره يکم مسئولان اصل مباحث حکومتي فرستادگان الهي که نمونه بارزش حکومت داري اما علي توجه عميق داشته باشن من تنها چيزي که ديدم مسئولين بهش توجه دارن تنها احکام هست من اينو در برخوردها و عملکرد مسئولين که نمونه هاش در دانشگاه خودمون هم هست ديدم در حاليکه با اين سرعت و گسترش و قدم نهادن در عرصه روشنفکري فرض مثال من نوعي به عنوان يک جوون ايران اگه برم وسط يک منطقه اي که ممکنه هزاران رنگ آدم باشن با هزاران عقايد مختلف زمانيکه پايبند يکسري ارزش ها مثل ارزش زن بودنم ارزش شخصيتم پايبند باشم بعد به ارزش فرهنگي کشورم من جهت يک پارچه شدن تمام رنگ و اقوام ميگم فرهنگ ارياييم باشم ديگه نيازي به بايدها و نبايدها نيست ممکنه بگيد بالاخره قانوني بايد باشه بله من قبول دارم قانوني بايد باشه اما اگه مطرح ميکنيد ما الان نمي تونيم جلوي ماهواره ها رو بگيريم دليلي بر اين نيست فرض مثال فرهنگ يکه کشور ديگه در ماماندگار شده و به قولي عادت هر ايراني ديدن فيلماي ماهواره اي هست بلکه به اين معناست که هرچقدر ميريم جلو نيازه که سطح آگاهي ما و دنياي ديد ما وسيع تر بشه اين با کلمه امل بودن فرق که تو زبان عاميانه ميگن فکر کنم مفصل در موردش صحبت کردم منظور باز شدن سطح ديد به اين معناست که آدم بد و خوب رو ببينه و قدرت انتخاب پيدا کنه با اين رشد سطح روشنفکري در بين مردم ديگه اون زمان مسلما بايد بگذره که تو مجلس عروسي ميوفتادن و جشن رو بر هم ميزدن و فيلم عروسي رو ميگرفتن چرا؟چون مردم که علنا و چه در نتيجه صحبت ها شاهد يکسري عملکردها غير قانوني از جانب نسل شما هم بودن يک طرف قضيه و طرف ديگه اون شاهد اين بودن که اين محدوديت ها سبب شده که وقتي فرض مثال يک ايراني از کشور خودش بره سري دست و پاشو گم کنه اما خوشبختانه در نتيجه عملکرد شما نه بلکه سياست باعث شده که مردم به فرهنگ اريايي نه فرهنگي که شما ميخواييد بر مردم حاکم بشه در کنار توجه فرهنگ اديان الهي براي توجه به قوانين خدا ديگه اين دست و پا گم کردن کمتر شده اين در نتيجه عملکرد شما نيست بلکه در نتيجه روشنفکري و توجه عميق هست والله روش زور شما در گذشته خودتون ديدين ابا نتيجه اي داشت؟اين از اين مسئله که در متن دوم مباحثه مطرح کردم,1.0,0.109321196097 5beae70868c1d8e9,با عرض سلام خدمت اهل سنت و سنيان عزيز و گرامي در عراق و در کل جهان .ممکنه براتون جاي سئوال باشه چه چيز موجب شده که بيام و مجددا در حضور شما صحبت بکنم و موضوع صحبتم در چه خصوص است.اين صحبت من درواقع يه درخواست ازتون هست و درواقع ادامه صحبتي هست که در خصوص حل درگيري ها و ناملايمت ها که مسلما بين شما و شيعه وجود دارد.سنيان عزيز اگه يادتون باشه من در متن مباحثه قبلم در خصوص تشکيل يک سازمان واحد و يک حزب باهاتون صحبت کردم و نيز در خصوص عدم مخالفت هيچ کس و نيز کمک من به شما در خصوص تشکيل اين حزب گفتم درسته قبول دارم علت اصلي اين درگيري ها در گفتن زور به شماست و اعتقاد شما به قول خودشون ميخوان دين اسلام بشه يک دين واحد اما نمي دونن اصل دين در افتادن ياد انسان به خدا و فراموش نکردن خداست چيزي که واقعا در دنياي امروز خيلي ضعيف شده فقط تنها چيزي که بر جاي مونده تنها لفظي هست که ما به ياد خدا هستيم چون نماز ميخونيم چون نيايش ميکنيم ما به ياد خدا هستيم چون مدام خدا رو نيايش ميکنيم اما در حضور خدا دست به هزاران جنايانت و اعمال ير انساني ميزنن مسلما در ان لحظه که دست به چنين اعمالي ميزنن خدا رو فراموش ميکنند يا اگه هم به ياد داشته باشن مسلما از خدا نمي ترسن و کسي که از خدا نترسد مسلما بهش اعتقاد ندارد چون هر اندازه که عقيده انسان نسبت به خدا قوي تر بشه بيشتر به هيبت و بزرگي خدا پي ميبرد مثل ديدن خورشيد از نزديک با ديد خورشيد از داخل يه سوراخ با فاصله هزاران متري هست مسلما زماني ميشه قدرت و شدت گرامي خورشيد رو ديد که از نزديک مشاهده اش کرد از نزديک حسش کرد و به همون اندازه که نزديک خورشيد ميشي از اشعهشديد خورشيد نمي توني طاقت بياري چون چشمان رو نابينا و پوست بدن را مي سوزاند اين همون حد انسان در مشاهده خداست به همون اندازه که انسان به هيبت خدا پي ببرد در محضرش هيچ گاه دست به اعمال غير انساني نميزند و اما چيزي که الان در دنياي امروز وجود دارد ديدن خورشيد از دال يه سوراخ در فاصله هزار متري هست خوب ببينيد خوب نگاه کنيد به جنگ ها درگيري هاي ايجاد شده در عراق مسئولين کشور تحت عنوان قانوني به نام قانون اساسي دست به هزاران اعمال غير انساني ميزنند و با ادعاي اينکه داريم ديني واحد در عراق قرار ميديم و قانون اسلام رو پياده ميکنيم به مردم مخالف شون زور ميگن ايا کسي مي تونه به زور دين کسي رو تغيير بده؟ايا پيامبر به زور دين کسي رو تغيير داد پيامبر براي تغيير دين مردم و هدايت مردم باهاشون صحبت کرد از مخالفان ستم ديد اما باز باهاشون صحبت کرد اما عملکرد الان مسئولين کشور که ادعاي اسلام داري ميکنند زور هست به جاي اينکه اول با مخالفان صحبت ميکردن اين همه به مسئولين عراق گفتم در زمان فعاليتم قبل از سياست نوين اما هيچي به هيچي هنوزم که هنوزه تمام کاراشون از سر لج و لج بازي با من و گفته هام هست و من مطمئنم در اين لج و لج بازي مسئولين دولت ايران مقصرند اونم به دو دليل 1.به خاطر اينکه روابط رهبري ايران با مسئولين دولت عراق خيلي خوبه و2.اينکه چون من در مورد عملکرداشون که دارن با زور و شکنجه مخالفان نظم رو برقرار ميکنند و حکومتشونو به ثبت ميرسونن و يک قانون رو پياده ميکنند اونيکه که خودشون در نظر دارن و به زور اعتقاد مردمي رو که ممکنه هم عقيده اونا نباشن به دلايل در نظر گرفته خودشون تغيير ميدن در حاليکه خود مسئولين و حتي کسانيکه ادعاي دين داري اونم در دين شيعه رو ميکنند همچنان در دين اسلام و شيعه اش مفهوم شيعه رو متوجه نشدن و مفهوم اسلام رو.من نميخوام ادعا کنم که خودم دين دار خوبي هستم اما اينا که ادعاي کدخدا بودن ميکنند در دين داري اونقدر کامل نيستن در اسلام قانوني تحت عنوان اين نيست که ادما رو بدون تفکر در مورد خدا شناسي و انسان شناسي به زور به تبعيت از دين دعوت کنند اگه اين جور بود پيامبر حرکت اولشون رو براي دين داري مردم از اين روش استفاده ميکردن حتي در دين شيعه که من خودم مسلمان از نوع شيعه هستم هيچ امامي روش اول دعوتشون به اسلام و اسلام داري از زور نبوده با اينکه خيلي از مخالفان داشتن و با اينکه مدت زيادي از بنيانگذاري دين اسلام و اتمام مسئولين پيامبر در خصوص بنا نهادن اسلام گذشته بود خب اساس دين اسلام به دعوت نه جنگ هر دوره نسل جديد مياد با سئوال هاي جديد وقتي مسئولين به اصطلاح دين دار به زبان خودشون براي پاسخ گويي به سئوالات روش اولشونو براي براقراري نظم و نکنه اينکه حرفي زده بشه منافعشون به خطر بيوفته و منافعشونو در اولويت قرار بدن بنظرتون کار اونا روش درستي هست ممکنه بگيد اين روش درستي هست چون مخالفاني هست در اين ميان ممکنه از اين شيوه مسئولين کشور سو استفاده کنند و بيشتر مردم رو بکشن اما من ميگم اگه از روش اول استفاده کنن که کردن خودتون ببينيد هم مردم دارن هر روز کشته ميشن و جونشون در خطر هست هم شماري از مخالفان و اعضاي مسئولين دولت دارن ميميرن پس اين نشون ميده روششون لنگ داره ولي اگه اول از روش صحبت استفاده کنند مسلما چون روش صحبت هست در بين مخالفان اونايي که سو استفاده گر هستن و اونايي که مخالف با دليل منطقي هستن کاملا مجزا ميشن و اين کمکي هست براي مسئولين دولت که بتونن ببين در بين مخالفان چه کساني واقعا مخالف هستن و چه کساني سو استفاده گرند در ثاني در اين روش ماندگار بيشتري براي تبعيت از قوانين حکومت هست و اتحاد اما زور باعث نمايش چهره بد مسئولسن در ذهن مردم ميشه که حتي اونايي هم که تابع مسئولين خواهند بود اگه وابسته به منافع و پول و قدرت نباشن به مرور زمان از عملکردهاي مسئولين سرد خواهند شد و کساني که حمايت از دولت ميکنند يا براي پورسانت خواهد بود يا براي چشم و هم چشمي خب اين نميشه اتحاد و مفهوم اصلي اتحاد اين نيست.براي برقراري اتحاد مسلما روش صحبت مناسب ترين روش هست و حال براي قراري نظم بعد از اينکه در صحبت بين افراد مخالف سو استفاده گران مشخص شدن براي سر به راه کردنشون از روش زور استفاده ميکنند و نيز استفاده از ر,1.0,0.109302971165 73ca30fddd20e0f8,با عرض سلام خدمت شما.ریاست جمهوری کشور جناب آقای روحانی قبل از شروع صحبتم اول ازتون متشکرم به خاطر توجه تون به متن مباحثه قبلی .من چون همیشه اخبار و سایت خبریتونو دنبال میکنم برای اینکه متوجه بشم که شما پستهای مباحثه رو میخونید تا به الان ضمن تشکر از توجه تون.آقای رواحنی همون طور که قبلا به عرضتون رسوندم من مشکلات کشور و درواقه کلا مسائل کشور و ملت رو قسمت بندی کردم با عناوین مختلف در هرمباحثه در موردش با اطلاعات خودم و اطلاعات مردم و حرف دل مردم چه در فضای مجازی و چه کلا در اجتماع آنچه که میبینم بدون کم و کاستی و یا زیاده گویی عنوان میکنم.انشالله هم بعد از اتمام مباحثات در این زمینه مباحثه در مسائل ایران و آمریکا رو شروع خواهم کرد البته خب اخبارشو همواره دنبال میکنم و در مباحثات اشاره کوچکی به آن هر وقت میکنم و درواقع ضمن تشکر از گفته تون در مورد مسائل هسته ای خوبه که شرط نامه صلح ایران و آمریکا با مسئله استفاده از انرزی هسته در طراحی وسایل های رفاهی مردم و در جهت رفاه مردم باشه تا مسائل جنگ و ساخت سلاح هسته ای.باشه که باعث میشه هم مردم احساس رفاه نکنن چون هیچ کس موافق جنگ و خون ریزی نیست و اگه هم جنگ بشه مردم ضربه و اسیب میبینن نه مسئولین کشور و اینکه جنگ باعث میشه تو روحیه مردم تاثیر بزاره و بیشتر از اینکه صحبت در اونا پرورش پیدا کنه جنگ و دعوا پرورش پیدا میکنه.اگه شما دقت کنید حتی در زمان امامان از زمان امام حسین تا زمان امام باقر و به بعد کم کم به بحث و مباحثه روی آمدند تا جنگ و خون ریزی بنابراین این نشون میده در هر دوره هرچه میریم جلوتر دیگه نحوه برخوردها فرق میکنه صحبت جای ابرازی مثل اسلحه رو گرفته.چه بسا درسته هنوز در سطح جهان ما جنگ و خون ریزی داریم اما این مسئله سراسری نیست جز در کشورای اشغالی که اونم چندان طول نمیکشه.اگه روش مباحثه جایگزین اسلحه بشه حتی دیگه در کشورای اشغالی هم جنگ رخ نمیده.جز اینکه گروهک های اغتشاش گر بخوان فتنه کنن.خب این از مقدمه ای از صحبت اولیه بود آقای رواحنی موضوع مباحثه این دفعه در مورد بحث دین و یک موضوع دیگه هم که اضافه کردم بحث فرهنگ هستش.من طبق اطلاعاتم تا به الان با دنبال کردن اخبارتون و دراوقع جریاناتی که به وجود اومدن صحبتامو شروع خواهم کرد.ببینید اقای روحانی وقتی صحبت از دین میشه شما در مقابل حرف من حرف از دین اسلام میزنید امام مقصود من از دین تمام ادیان الهی هست و درواقع نقش ادیان در روابط سیاسی دولت ها.من طبق اطلاعاتم و اون چیزی که دیدم در جوامع اسلامی و حال چون صحبت صحبا ایران و مسائلش هست بهتره که بگم بحث دین در ایران من احساس میکنم دین در ایران به عنوان وسیله استفاده میشه جهت تامین خواسته های شخصی درسته الان در شرف اصلاحات در جهت کاربرد قوانین دینی داریم پیش میریم اما من به لحاظ دید درست چیزی خلاف اینو میبینم نمونه اولش ترجیح دادن مذهب در درجه اول و سپس سطح آگاهی افراد در مسائل علمی و هنری و ورزشی مخصوصا در مسائل علمی و شعلی که چیزی چندین برابرش رو میبینیم نمونه اش شاید خبر داشته باشین از بی احترامی که یکی از اساتید دانشگاه لاهیجان دروقع دختر اقای قربانی که اولین انتقادی که نسبت به ایشون دارم اینکه چرا فردی مثل این خانوم که مدرک فوق لیسانس دارن شدن استاد دانشگاه اونوقت یه فرد دکتری هنوز بیکاره؟یا اگه هم کار داشته باشه باید فلان شرایط رو داشته باشه ما به قول عامیانه میگیم امروز هرکس ماده پ یعنی پارتیش کت و کلفت باشه بیشتر صاحب مقامه اینو شما چه جوری قضاوت میکنید؟بعد جالبش هم اینجاست من احساس میکنم که اگه افت فرهنگی داریم در دوجناح مشاهده میشه چرا؟چون جناحی که جناح مذهبی از اون جناح به عنوان افراد بی بند و بار فاقد فرهنگ و کلا بی دین بی اعتقاد یاد میکنند اون جناح هم جناح مذهبی رو انسان هایی خشک که فقط خودشون رو انسانهای برتر می دونن و با ارج و ارزشی که شما براشون قائلید به اونا مقام و منصب می دین فرض میکنند البته بهتر لفظ افت فرهنگ رو بردارم و به جاش فاصله و کدورت بین دو جناح بگم .آقای روحانی اگه یادتون باشه من در اولین مباحثه عنوان کردم که تنها عامل مهم در پیشرفت و بهبود کشور 1.برخورد عادلانه مسئولین کشور با تمام احاط ملت ایران چه ایرانیان داخل کشور و چه ایرانیان خارج از کشور. 2.توجه به سلیقه ها و عقاید تمام اقشار جامعه در کنار توجه به عقاید خودتان. 3.جلوگیری از بی احترامی هایی که ممکنه افراد به هم وارد کنن چه از جانب اقشار مذهبی و چه از جانب قشر عادی مردم. 4.گفتار عادلانه شما اگه این چهار اصل از جانب شما رعایت نشه نباید انتظار اینو داشته باشید که چنین جریاناتی ایجاد نشه.آقای روحانی.صحبت اولمو از دین اسلام شروع میکنم من برای صحبت در این زمینه بسته به مطالعات خودم صحبت میکنم و متناسب با درد ملتم من احساس میکنم روش عوامل اجرایی شما در بعضی موارد چیزی نیست که دین اسلام فرض گرفته گرفتن جلوی دهان انتقادگران چیزی نیست که تو اسلام نوشته شده باشه چون اون طوری مسئله ای تحت عنوان دیکتاتوری ایجاد میشه البته انتقاد با ویژگی های خاص خودش از قبیل آوردن دلیل و علت معتبر استفاده از جملات رسمی و بدون فحش و بد و بیراه.اینو من قبول دارم به عنوان انتقاد آقای روحانی من می دونم شما مسائل امنیتی رو نیز در نظر میگرید چون واقعا در مورد مسئله حذف قانون پناهندگی در هر مباحثه بعد از اون محال ممکنه احتمال اتفاق حملات سایبری رخ نده.اما خب برای بهبود کشور تا زمانیکه ما نزاریم احتمال وقوع این حوادث رخ نمیده کما اینکه مدیریت امور امنیتی دولت ایران در این زمینه فعالیتاشون بیش از پیش باید بشه چون هرچقدر که در مباحثه بریم جلوتر نیازمند امنیت بیشتری خواهیم بود.چه از جانب ایرانیان داخل کشسور و چه از جانب ایرانیان خارج از کشور و شخصیت های هنری و علمی و ورزشی که چه بیشتر.مسئله دیگه تحت عنوان کار برد دین در سه امر علمی و ورزشی و هنری هست من در اخبار صحبت یکی از کارگردانان کشور که خود,1.0,0.109191637353 44a1b6fb83aeea6f,"मछलिया जल बिना नहीं रह सकती , पंची आसमान में उड़े बिना नहीं रह सकता , और मै प्रभु को याद किये बिना नहीं रह सकती ... ! ! ! सुनीता ! ! ! जिंदगी में वक़्त कभी एक सा नहीं रहता , आज अच्छा तो कल बुरा ... और फिर अच्छा बन जाता है , ऐसे में अच्छे वक़्त में अपनों को ठुकराओगे अच्छे वक़्त में अभिमान से घिर जाओगे , तब बुरे वक़्त में आंसुओ के सिवा कोई साथी नहीं होगा , , , अपनी और अपनों की कदर करना ही सबसे बड़ी कला है ! ! ! सुनीता ! ! !",0.725663716814,0.10845194539 eaf9d71832b94603,= = حكاية شنطة من 3 سنين لل 90 - احمد السقا _ _ Ahmad Sacca = = احلى اشي بالدنيا البنات الصغار البنت الصغيرة مخلوق حساس و جذاب مغرم بـ لفت الانتباه طبعاً مش اي عمر قصدي من ال 3 سنين ل 9 بتبلش تهتم بالميكياج و تقليد الكبار بالبس والشعر - واول اشي بتطلبو البنت شنطة تمسكها بإيدها و اشياء كثير تانية بس رح نترك كل الامور و نتحدث فقط عن الشنطة لانو الشنطة فيلم هندي من 3 سنين لل 9 سنين تحتوي الشنطة على مفاتيح قديمة و مجموعة قروش ملوناهم بالاوان الي برضو محطوطين بالشنطة و 75 قرش ضحكت عليها امها و قالتلها هاتي الورق هاد و خدي هدول بخرخشو و تحتوي ايضاً على بعض الاساور المطاطية الملونة و بأحجام مختلفة و ايضاً على هاتف بلاستيكي بالون الزهري و تحتوي ايضاً على محفظة فارغة زهرية اللون من 10 لل 15 بتبلش تفهم و بتكبر الشنطة و ببطل ينضحك عليها و بصير فيها تلفون حقيقي و 3 او ا4 محافظ بالوان و احجام مختلفة و المحفظة الاكبر تحتوي على صور صاحباتها بالمدرسة و على اكبر عدد من البطاقات ذات الالوان و الاشكال المختلفة و غالباً ما تكون بطاقات صراف الي منتهية الصلاحية و تحتوي ايضاً على مشط و مريه صغيرة و بالاضافة لبعض انواع العلكة و غالبا ما تكون علكة شعراوي الملقبة بالمخدات و من ال 16 لل 30 حدث ولا حرج شوال على جنبها و تحتوي الشنطة على مصغرات لجميع اغراضها او عينات لكل اشي موجود بخزانتها و جواريرها بالإضافة ل تليفونين او اكثر داخل الشنطة و شاحن نوكيا او حسب نوع الموبايل يعني موضة الشوال يالي طالعة حلوة بس عيبها الوحيد لما يكون لازمها اشي و بدها يا بسرعة بتقلب الشنطة رأساً على عقب و بتلاقي جواتها قلم سائل كانت مضيعا قبل سنة و فراطات مبعثرة والكثير الكثير من المفقودات الي كانت متهمة اختها او اخوها الصغير باخذهم و تحس بتأنيب الضمير تجاه اخوها او اختها لانو بيكونو ماكلين الي في النصيب و ما يزال البحث قائم عن هالغرض و من ال 31 لل 50 تصبح الشنطة عبارة عن ذكرياتها القديمة و ماضيها السعيد و قصصها البطولية و منم ال 50 لل 90 عبارة عن مستودع ادوية و بقالة متنقلة ووووووووو متحف اثري لاول ضبة سنان ركبتها والتاريخ يعيد نفسه و تستمر الحكاية من جيل الى جيل,0.821002386635,0.108450815535 c68e2b1943e8a3bf,文化的结晶与媒介 翻译:文化的结晶与媒介 翻译对于文化有双重意义 。 其一,翻译作品是思想、文化的结晶。翻译是在语言平台上进行的,而语言是思想文化的载体。不说所载内容,就是载体本身也都赋有文化内涵,并在词汇、语义、语用、修辞等多个层面体现出来。当翻译使两种语言发生转换时,原有内容多少发生变化,载体则完全改变,形成新的结合,也就是两种语言文化的结晶 。 其二,翻译作品是他语言文化与本语言文化之间的媒介。译作进入异域,必与新文化环境发生关系,或融合,或抗拒,或若即若离,或衍生蜕变,但无论何种际遇,都会不同程度地使两种文化联系起来,成为它们之间的一个永恒的媒介 。 我们说翻译是文化的结晶,还有一层意义,那就是它的价值。从历史上看,翻译大多是从异域吸取有价值的思想文化之精华传入本族文化,并长久地深层次地影响本族文化。像我国古代的佛经翻译,不仅给东方社会带来了新的宗教思想、人生哲理,也带来了新的语汇、概念和文学形象。后来的传教士从事的宗教和天、地、数、理方面的翻译,也间接和直接地输入了欧洲的科学文明。中国近代史上以翻译作为媒介的事例就更多了。如严复的八大译作,《天演论》、《原富》、《群己权界论》、《法意》、《名学浅说》、《社会通诠》、《群学肄言》、《穆勒名学》等,分别是政治学、经济学、法学、逻辑学、社会学等领域的重要著作。他的翻译使西方有价值的进步思想比较系统地传输到中国。所有这些译作都已经不是原来意义上,0.333333333333,0.107710999205 4a9b492dca357e68,fd hrgdgrgghefggglgdsejgdffgfrgtcfgjfhdfhdfhxdfjftjfgdjuthrgledfer pr d rwq rqe t ttt t tweeQWQW VGG 4TW GTQ,0.375,0.107531799437 7c4b952a37ac41ea,با عرض سلام خدمت رياست جمهوري المان و اعضاي دولت المان و ضمن تبريک به شما به خاطر پيروز تيم مليتون در جام جهاني.الان که دارم اين متن رو براي شما مي نويسم دو دل بودم از نوشتن اين متن چون اون طوري ککه در مورد اعتقاد ملت المان البته نه همه ولي من طبق امار بيشترشو مد نظرم هست چنان روابط خوبي با شيعه ندارن البته هستن در بينشون مسلمان و معمولا هم انتقاد نباشه يکم خود بين هستن و کم توجه به صحبت هاي غير هم نژادشون اما با تمام اين اوصاف براي من مهم بود که براتون اين متن رو بفرستم چون درسته شما ممکنه من رو از خودتون ندونيد اما من شما رو به عنوان يک هم نوع به عنوان يک ادم با و ويژگي ها اصالتي اونم نه اصالت نژادي و يا زباني بلکه اصالت ادميت از يک نقطه هستيم اين برام مهم و قابل ارزش هست و براي همين لازم دونستم که عزمم رو جذب کنم و براتون اين متن رو بزارم که در کنار صحبت در مورد بحران پيش اومده صحبتي داشته باشم و در کنار اون صحبتي در خصوص مسائل ديگه داشته باشم.اول از همه از بابت حمايتتون از مردم فلسطين خيلي متشکرم همون طور که در پيج سازمان اتحاديه اروپا مطرح کردم و مجددا هم ميگم اي کاش ... اي کاش اين اتحاد در معناي واقعي خودش بود اون چيزي که من دارم ميبينم اين نيست حقيقتا روش کاري مسئولين دولت ها واقعا کمک کردن نيست بلکه در پوششي از کمک کردن ميخوان دست به هزاران عمل غير انساني بزنند ميخوان تنها به تحقق اهداف خودشون برسن اين نميشه اعضاي دولت المان من گذشته المان رو مي دونم مردمش هرچند هم که تو کل جهان معروف به نژاد پرست هستن اما من نغمه ميفهممشون درکشون ميکنم و ادعا نميکنم که تنها کسي هستم که تو اين دنيا درکشون ميکنه بلکه مي دونم اين رفتارشون در نتيجه خطوطي هست که انسان ها با تشکيل اين خطوط در روي کره زمين مردم رو به اين باور رسوندن که هر کس که نژادش با کس ديگه فرق بکنه يعني کاملا ازش جداست از لحاظ مبدا و ريشه بود از لحاظ ادم بودن موجوديت کاملا جداست در حاليکه همه ما از يک ريشه ايم المان لياقت پيشرفت رو داره چون مردمش واقعا زحمت کشيدن من هيچ وقت عادت ندارم بيخود انتقاد کنم يا بيخود تعريف کنم اما در بين دولت ها شايد بگم دولتي هست که مثل سوئد در درجه اول سرش تو لاک خودش هست و سعي ميکنه به جاي مداخله و وقت گذراني در امور خارجه در درجه اول نياز ملتشو رفع کنه اين حرف من در نتيجه تجربه اي هست که در شروع فعاليتهام چه سياست نوين و چه قبل از اون صلح نامه امريکا و ايران متوجه اش شدم در مورد المان هم اطلاعات به نسبت زيادي دارم اولين چيزي که در المان بنظرم جالب اومد ثابت بودن قيمت ها در المان بوده خب اين خيلي خوبه و نشون ميده که مسئولين در درجه اول به فکر نيازهاي مردم بودن از اين بابت بايد از مردم المان متشکر بود که ياد گرفتن بيخود و بي جهت تمجيد نکنن از دولت تا ازش کار کرد مناسب ببينند چون در عملکرد نامناسب از مسئولين از يک طرف خودشون مقصرند از يک طرف باور مردم در نتيجه مقبوليت اين امر که مردم بايد حامي دولت باشن و دولت حاکم مردم اين خودش يک معضل هست و موجب اون باعث ميشه که از مسئولين دولت موجوداتي بسازه که خودشونو برتر از مردم ميبينند در حالي اونا مثل مردم و با همون ويژگي هاي ذاتي هستن چنين باور خدا پسندانه اي از مسئولين موجب ميشه که به مرور زمان مسئولين انتقاد پذيري شون کم بشه ممکنه بگيد ما در المان ازادي بيان داريم اما اين اون ازادي بيان نيست بلکه سياستي جهت سرگرم کردن مردم و دوريشو از واقعيت هست هميشه محدود کردن و پرده پوشي رو حقيقت اسارت بيان نيست گاهي اوقات سياستمداران از همين سياست ازادي بيان اونم نه چهره واقعيش چهره بدليش استفاده ميکنند مردم رو درگير ميکنند بعد سربازان رو به جونشون ميندازن در همين بهبوهه فرصت مناسب پيدا ميکنند تا وقتشونو صرفه اهداف خودشون بکنند خب اين نميشه ازادي بيان ازادي بيان زماني معنا داره که من وقتي اجازه ازادي بيان رو به مردم بدم به همون اندازه وقت کافي براي شنيدن حرف هاي مردم بزارم و موقعيت و شرايط کافي در نتيجه صحبت کردن با مخالفان اوناي که قصد سو استفاده کردن و فرصت طلبي براي اشوب رو دارن از هم تشخيص بدم اين ميشه ارزش قائل شدن به حرف هاي مردم و نيز ارزش قائل شدن به امور کشورداري و دولت در حاليکه اين چيزي که من ميبينم اين طور نيست و به همين دليل هست که ميگم ازادي بيان در معناي واقعي خودش نيست اگه وجود داشته باشه گاهي اوقات توجه زياد به امور دولت هم موجب ميشه واسه خاطر کشور که متشکل از خطوطي به نام مرز هست مسئولين دولت ها دست به اقدامات غير انساني بزنند براي همين من ميگم ميزان توجه دولت ها به شکل پنجاه پنجاه باشه پنجاه درصد براي رسيدگي به امور دولت ممکنه بگيد پنجاه درصد کمه در حاليکه پنجاه درصد خيلي هست اگه بخوام مقياس بگيرم که واقعا مسئولين دولت ها واسه مردم حتي در کشور شما چي کار کردن حتي به بيست درصد هم نميرسه اين حرف من يک واقعيته نه انتقاد چون در انتقاد از روي اسناد حرف ميزني ولي من بدون سند و در نتيجه انچه ديدم دارم ميگم از روي سند حرف زدن با ديدن خيلي فرق داره وقتي ادم از روي سند حرف ميزنه هميشه ممکنه از روي حقيقت حرف نزنه چون سندهاي زيادي تو دنيا وجود دارن که بر حسب شرايط و موقعيت اي سياسي و بر حسب هزاران دليل ديگه چون در بحث سياسي هستيم من در مورد اسنادي که مسئولين دولت ها به هم رو ميکنند حرف ميزنم و مورد مهم تر تاريخ تاريخي که در بردارنده هويت يک ملت هست شده بازيچه سياست بازي هاي مسئولين دولت ها خب اين نميشه تاريخ ميشه يک جنگ سياسي با نام تاريخ و سو استفاده از تاريخ و هويت يک ملت اين نميشه مبارزه بلکه ميشه بي نسب کردن و توهين به هويت مردم وقتي تاريخ اين گونه تحريف بشه ديگه خودتون قضاوت کنيد اين اسنادي که دولت ها به هم رو ميکنند چي هست همه دولت ها رو ميگم حتي شما ممکنه از دست من ناراحت بشيد اما حرف من حقيقت داره خب چرا؟چرا بايد هويت مردم در نتيجه بازي هاي سياسي لکه داره بشه چ,0.999067164179,0.107402958993 62f14dffc1bf7791,fsdh htwer thwer htwr htwer htwer htwer hwer thtw,1.0,0.107380429187 d2f7b826a21a6bc4,بسم الله الرحمان الرحيم وقل للدين كفروا ستغلبون وتحشرون الى جهنم وبئس المهاد صدق الله العهضيم ان الحمد لله نحمده ونستعينه ونستغفره اما بعد نحن اخوانكم من الجزائر بلد المليون ونصف شهيد المجادون نحييكم بتحية الاسلام الخالدة والله نسال ان ينصرنا علئ الامريكان واعداء الاسلام والله اكبر وعاش الجيش الاسلامي وعاش صدام حسين المجيد,1.0,0.107372744949 df9c0328ca348065,WELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOME WELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOME WELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOMEWELCOME,0.6,0.107323359196 d8a513c9557a30e7,"retal tfel ot thgir fo ffo daobyek ym teg t nac , yroso , spoO gnola semocreisae e gnihteos nehw dneppahha ot gniog ton snt aht , lleW",0.333333333333,0.107031450368 0f2d1484da4c7729,"Vofoy afa efedifitarar mufuchafas pafagifinafas defe tefemafas quefe nofe mefe ifinteferefesafan , pafa rafa quefe vefeafas cofo mofo mefe sifiguefe .",0.652173913043,0.10637153204 f97f25f74ad7f897,""" "" "" मी एकटाच असेन ! "" "" तुझ्या देहाकडे बघून नेत्रसुख घेणारे बरेच असतील पण , "" "" ओढणी सांभाळ "" "" सांगणारा कदाचित मी एकटाच असेन ! तुला हसवणारे बरेच असतील पण , तुझ्यासाठीच तुझ्यावर चिडणारा कदाचित मी एकटाच असेन ! लगबगीत चालताना तुझ्या स्पर्शाची वाट पाहणारे बरेच असतील पण , "" "" जपून चाल "" "" सांगणारा कदाचित मी एकटाच असेन ! हसत -हसवत तुला ताली देणारे बरेच असतील पण , तू रडताना,तुझा ... हात हातात घेवून धीर देणारा कदाचित मी एकटाच असेन ! तुला कळाव म्हणू तुझी काळजी घेणारे बरेच असतील पण , तुझ्या नकळत तुझी काळजी घेणारा मी एकटाच असेन .. "" "" नाही जमणार तुला ! ! ! "" "" नाही जमणार ♥ तुला माज्यावर प्रेम करायला नाही जमणार तुला माज्यावर प्रेम करायला ♥ जन्मोजन्मी वेड्यासारखी वात पाहायला लाग आता लग्नासाठी ♥ मुलगा शोधायला मलाच आहेर द्यावा लागेल तुझ्या लग्नाला ! ! ! ! ! ! ! ! ! ! ! नाही जमणार तुला एकनिष्ठ राहायला कदाचित लागेल तुला उष्टं खायला ♥ कारणीभूत ठरेल जे प्रेम वाढायला मलाच यावं लागेल तुझ्या लग्नाला ! ! ! ! ! ! ! नाही जमणार तुला माझं मन सांभाळणे ♥ नाही सहन ♥ होणार तुला माझं रागावणं ♥ नाही आवडणार कदाचित माझं विचित्र वागणं बेधुंद बेदरकार बेफिकीर असणारं माझं जगणं ! ! ! ! ! ! ! नाही कळणार तुला माझ्या मनाचा भाव ♥ नाही घेता येणार ♥ तुला माझ्या हृदयाचा ठाव नाही आवडणार कदाचित माझ्या प्रेमाचा गाव वादळवाऱ्यात भर समुद्रात असणारी सुसज्ज नाव ! ! ! ! ! ! नाही जमणार तुला ♥ माझ्यासोबत चालायला आपली ♥ वाट आपणच शोधायला हृदयातील दु:ख हृदयातच दाबायला चेहऱ्यावर खोटं खोटं हसू आणायला ! ! ♥ ! ! ! ! ! ! ! ! ! ! नाही जमणार हा एक जन्म माझ्या सोबत स्वगत म्हण ♥ किवा व्यक्तिगत सुदैव म्हण किंवा दुर्गत मग सात जन्मांची काय गत ? ? ? ♥ """,0.579365079365,0.106287720293 35cec70f70438b97,وهو أن لكل كلمة تكتب بثلاثة أحرف وأكثر صورة واحدة ولكل كلام يطول شكل من الحروف يأتي على المعاني الكثيرة فإذا أرادوا أن يكتبوا ما يكتب في مائة ورقة كتبوه في صفح واحد بهذا القلم قال محمد بن زكريا الرازي قصدني رجل من الصين فأقام بحضرتي نحو سنة تعلم فيها العربية كلاما وخطا في مدة خمسة أشهر حتى صار فصيحا حاذقا سريع اليد فلما أراد الانصراف إلى بلده قال لي قبل ذلك بشهر اني على الخروج فأحب أن يمل على كتب جالينوس الستة عشر لأكتبها فقلت لقد ضاق عليك الوقت ولا يفي زمان مقامك لنسخ قليل منها فقال الفتى أسألك أن تهب لي نفسك مدة مقامي وتمل علي بأسرع ما يمكنك فإني أسبقك في الكتابة فتقدمت إلى بعض تلاميذي بالاجتماع معنا على ذلك فكنا نمل عليه بأسرع ما يمكنا فكان يسبقنا فلم نصدقه إلا في وقت المعارضة فإنه عارض بجميع ما كتبه وسألته عن ذلك فقال إن لنا كتابة تعرف بالمجموع وهو الذي رأيتم إذا أردنا أن نكتب الشيء الكثير في المدة اليسيرة كتبناه بهذا الخط ثم إن شئنا نقلناه إلى القلم المتعارف والمبسوط وزعم أن الإنسان الذكي السريع الأخذ والتلقين لا يمكنه أن يتعلم ذلك في أقل من عشرين سنة وللصين مداد يركبونه من أخلاط يشبه الدهن الصيني رأيت منه شيئا على مثال الألواح مختوما عليه صورة الملك تكفي القطعة الزمان الطويل مع مدوامة الكتابة وهذا مثال قلمهم,1.0,0.10593838997 31d260d4667c2897,تنفر از کردها هم حدی داره‌. من میدانم برای شما خون ما چقدر کثیف است. احساسات و عواطف شما را درک میکنم اما دیگر دموگرافی منطقه‌ را چرا تغییر میدهید.,1.0,0.10542148649 fea1ffc2a9054e21,= = اتحاد عملکردی اتحاد سیاسی سیر تاملی حل بحران جهانی در همه زمینه ها = = با عرض سلام خدمت ریاست جمهوری محترم پرتغال و نیز نخست وزیر ایشان و نیز مسئولین سازمان های امنیتی و سازمان های دولتی و نیز خصوصی در پرتغال و خسته نباشید خدمت شما بابت زحمات و تلاش های بی دریغتان در امور دولتی و اداره کنندگی کشور و نیز حکومت داری و انجام امور مردمی در کشور و این رو لازمه مباحثه می دونم که قبل از شروع صحبت در خصوص برنامه های اصلاحاتی با هدف سیر تکاملی و دفاع از ان و نیز مباحثات سیاست عمکلردی از این برنامه ها این رو لازم برنامه ها می دونم چون هدف سیر تکاملی و دفاع از ان هست و انچه که معنای سیر تکاملی را تداعی میکنه حقیقت جویی و حقیقت هست چون یکی از اصول سه گانه سیر تکاملی هست که به موجبه اون هست که ادمی با رسیدن به یقین درواقع زمینه ساز گذر در مراحل 7 گانه تکاملی را میابد و در نتیجه حرکت در مسیر 7 گانه تکاملی در نتیجه شکوفا شدن هر انچه که در بعد غیر ماده خویش به شکل موهبت نهفته شده دارد شکوفا شده و ادمی در نتیجه شکوفایی مجموعه ابن موهبت ها که بخشی از بعد غیر ماده را تشکیل می دهند به تکاملی حقیقی در بعد غیر ماده خویش می پردازد اما این تکامل تکامل حقیقی هست به ابن علت که تکامل در بعد غیر ماده ادمی صورت گرفته نه در بعد ماده یکی از ویژگی های بارزی که در بعد غیر ماده وجود داره که ان را متمایز از بعد ماده علی رغم رابطه مکملی و تاثیر گذاریشون ایجاد یکنه درواقع این هست که بعد غیر ماده وابسته و محدود به گذر زمان و مکان نیست یعنی تغییرات در ان وابسته به زمان و مکان نیست و به واسطه همین ماندگاری زیادتری نسبت به بعد ماده که محدود به مکان و زمان هست ایجاد میکنه بنا به همین ویژگی هست که بعد ماده پیری و فرسودگی در ان موجود هست اما تغییراتی که در بعد غیر ماده ایجاد میشود تاثیرات هوس های نفس اماره در تخریب و اثر گذاری بر روح ادمی هست یعنی همان بعد غیر ماده که در خصوص ان داریم صحبت میکنیم و این تخریب ها قابل تعمیر هست نه قابل تسکین بخشی یعنی در نتیجه تعمیرات می توان اثرات تخریبی را از ان زدود اما تعمیر در معنای حقیقی نه تعمیر ر معنای غیر حقیقی .تعمیر در معنای غیر حقیقی مسکن خواهد بود با اینکه نام تعمیر بر ان گذاشته میشود اما در اصل مسکن خواهد بود چرا؟چون فرق بین مسکن و تعمیر در این هست که در تعمیر ریشه ای عمل میکنیم اما در مسکن محدود به ظاهر و نیز پوسته کار هست نه ریشه کار.اما چگونه تعمیر در معنای حقیقی خود معنا پیدا میکنه و چگونه در نتیجه ان پیدا کردن مفهوم حقیقی خود می تواند به تعمیرات ریشه ای بپردازد بد نیست در ابتدا صحبتی داشته باشیم در خصوص مسیر سیر تکاملی و هریک از امکانات ان و بعد در نتیجه به مفهوم تعمیر بپردازیم می دانیم ان چیزی که در دنیای امروز مفهوم اصلی ان را تشکیل می دهد عمکلرد هست همه موجودات زنده به اشکال مختلف این را انجام مب دهند و ادمی نیز بنا به ویژگی های خلقتی اش ان را به گونه ای متفاوت با سایر موجودات زنده انجام می دهد هر انچه که در ئنیای ماده مفهوم ماده رو به خود بگیرد مفهومی دارد تحت عنوان عمکلرد که این عمکلرد درواقع می تونه نوعی پاسخ باشه که در قبال تغییرات نشون میدن حالا این تغییرات می تونه در بعد ماده باشه و یا در بعد غیر ماده که اثر گذاری عمکلرد بر مبنای اون و متاثر از اون هست گفتیم اثر گذاری هر عمکلردی دارای دو بخش هست یک بخش غیر ماده که نظارت میکنه بر روی بخش ماده و دیگری بخش و یا بعد ماده هست که زمینه ساز و بستر ساز بعد غیر ماده و تاثیرات ان هست ما درواقع دو نوع بستر ساز داریم یک بستر ساز در بعد غیر ماده هست تحت عنوان قوه جست جو گرانه در ادمی که بستر سازی زمینه ساز عمکلرد ادمی رو ایجاد میشه که ریشه بعد غیر ماده داره و بخشی از اونه تحت عنوان قوه تفکر در ادمی که این دو یعنی قوه جست جو گرانه و نیز قوه تفکر در ادمی بعد غیر ماده تشکیل میدن و دیگری بستر ساز تاثیرات این دو هست تحت عنوان بعد ماده که اثر گذاری ان را تحت عنوان عمکلرد بروز میده بعد ماده دو نوع هست یکی انچه هست که کالبد جسم ادمی رو که روح وی را در بر گرفته تشکیل می ده و دیگری دنیای ماده اصالت و ریشه همه اینا ماده هست و هر دو بر مبنای این ویژگی محدود به زمان و مکان می باشند اما چگونگی تاثیرات ان ها بر هم می دانیم انچه که زمینه ساز یک عمکلرد را تشکیل می ده قوه تفکر در ادمی هست این قوه تفکر در ادمی نقش ویژه ای دارد مخصوصا در مسیر سیر تکاملی که شکوفا ساز تمام انچه هست که به عنوان موهبت در ادمی قرار گرفته و در نتیجه ان تکاملی حقیقی ادمی بنا به نیاز فطری وی در این مسیر رخ میدهد قوه تفکر در ادمی زمینه ساز عمکلرد ادمی هست و کار ان تجزیه و تحلیل هست و بر مبنای چنین ویژگی قوه به ادمی می دهد تحت عنوان قوه اختیار که وی را متمایز میکند از موجودات زنده و بر مبنای ان ادمی را سازنده ساز پایانامه زندگی خویش قرار می دهد این ویژگی در قوه تفکر در ادمی موجب شده ساختار کالبد ماده ان مغز ادمی باشد که محل ظارت بر تمام اعضای کالبد جسم ان نقطه هست اما این جایگاه مصداقی از تاثیر گذاری و تاثیر بخشی قوه تفکر ادمی هست در بعد غیر ماده بر بعد ماده و درواقع بنا به این موضوع قوه تفکر ادمی می تواند در حکم مبدل گری باشد که به برقراری رابطه بین کالبد ماده و بعد غیر ماده می پردازد اما تاثیر گذاری بعد غیر ماده بر بعد ماده تنها در یک نقطه نیست انچه که برای ما قابل لمس و ملموس هست تاثیر گذاری ان بر مغز ادمی هست اما انچه که در معنای حقیقی وجود دارهد نظارت و تاثیر گذای بعد غیر ماده بر بعد ماده هست این تاثیر گذاری حتی در نتیجه صورت نقص در بعد ماده ادمی نیز احساس میشود که این را نوع مسیری که ادمی طی میکند و درنتیجه ان به تکامل حقیقی میرسد یعنی مسیر سیر تکاملی تعیین میکند انچه که تفاوت ما را با سایر موجودات زنده به تثبیت میرساند درواقع در ساختار قوه تفکر در ان هاست قوه تفکر,0.992760180995,0.105024347406 b92178ef605b594a,ᡥᠠᠨ ᡳ ᠠᡵᠠᡥᠠ ᠨᠣᠩᡤᡳᠮᡝ ᡨᠣᡴᡨᠣᠪᡠᡥᠠ ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ ᡳ ᠪᡠᠯᡝᡴᡠ ᠪᡳᡨᡥᡝ Han i araha nong gime toktopuha Manchu gisun i pul eku pit ghe,0.5,0.104945398792 e5d444e501e048a8,geneoooooooblaoooblaoo booooooo oblaoooblaoooblaooblaaf ojhgikhqgki ral,0.6,0.104478758656 7c1618b9ed3a4957,"! ! ! उस पार न जाने क्या होगा ! ! ! इस पार अँधेरा हल्का था , उस पार न जाने क्या होगा ? क्या वक़्त के घोड़ों पर फिरता एक सूरज उतर रहा होगा ! ! ! ! इस पार तो झरना सुखा था , और रेत की नदियाँ बहती थी ! क्या उस पार ओस की बूंदों में अमृत रस बहता होगा ! ! ? इस पार तो सुनी गलियां थी , और सुने चौक-चौबारे थे ! बहार से थे खुस बहुत , मगर अन्दर से हारे-हारे थे ! ! ! क्या उस पार मन-तरंगों पर , आनन्दगीत बजता होगा ! ! ! ? इस पार अँधेरा हल्का था , उस पार न जाने क्या होगा ? _ _ _ _ _ _ _ _ _ _ _ मी. सोलारसन्स!!!!!(संजीव सिंह चंदेल )",0.630872483221,0.103999956223 681bc89e54639362,* لا يحق لك أن تحاسبني في شيء لا يخصك، وإن كنت ترى هذه إهانة فأنت الوحيد الذي تشعر بها، وهذا رأيك الشخصي ولا يهمني، وأنا أرى أن مصر فوق الجميع، وهذا رأيي الشخصي ولا يحق لك التعقيب عليه ! انتهى !,0.928571428571,0.103923831247 db4b1437bd3ccec4,"= = নো ম্যান্স ল্যান্ডের পরী কে লেখা গেদু চাচার খোলা by Gedu Cacar Kla Cithi ( গেদু চাচার খোলা চিঠি ) = = মা ফেলানি , তোকে লিখব লিখব করে লেখা হয়ে ওঠে না।কি লিখব বল?লিখব কেমন আছিস?স্বর্গে তোকে নতুন জামা দিয়েছে কিনা?কি কি খাবার ওখানে তোকে দেয়?আমি জানি আমার এই চিঠিটা তোর হাতে পৌছালে অভিমানে তুই কেঁদে দিবি ... বাংলাদেশ থেকে এসেছে বুঝলে তুই তোর মা এর কাছে ছুটে আসতে চাইবি।না মা এমনটা করিস না;ছোট্ট ফেলানি তোকে হারিয়ে আমরা এমনি অনেক লজ্জা আর কষ্টের মধ্যে আছি ... আর যদি এমন করিস তাহলে আমাদের কষ্ট আবারও বেড়ে যাবে । ফেলানি,তুই হয়ত দেশের সেরা অর্থনীতিবিদের মত রেমিটেন্স কি জিনিস জানিস না,জানিস না এটা কিভাবে আসে ... কিই বা তার ব্যবহার ? আমি কিন্তু অবাক হয়ে গেলাম তুইও আমাদের কিছুটা রেমিটেন্স দিয়েছিস ... কারণ মা-বোন রেখে তোকেও সুদুর ভারতের কোথাও জিবনযাপন করতে হতো।তুই তো আর আকাশ পথে ভারতের শিমলায় বেড়াতে যাসনি ... যে আরামে ফাইভ ষ্টার হোটেলের মধ্যে শীতাতপ নিয়ন্ত্রিত কক্ষে খাওয়ার সুযোগ ছিল।তোকে তোর বাবার সাথে যেতে হয়েছে মই দিয়ে পার হয়ে ... যা আমাদের অবাক করে দেয়।ফেলানি তুই কি জানার সুযোগ পেয়েছিলি কখনও ভারতের সাথে আমাদের কি দহরম মহরম খাতির?আহারে!!!ঐ বিএসএফ আগে জানলে হয়ত তোকে নিজেই পার করে দিত পরপারে পাঠানোর আগে।তুই কাঁদিস না মা,তোর মত হাজারটা বড় ভাই মিশর সীমান্তে এখন রাত কাটাচ্ছে ... কেউ জানেনা তারা কবে দেশে ফিরবে।টাকার মায়া ভুলে তোর পাঁচটা বড় ভাই জাহাজে উঠতে চেয়েছিল ... পারেনি।আমরা জানিনা ওদের লাশ দেশে এসেছে কিনা ... ওদের মায়েরা ওদের বুকে লূটে পরে কাঁদতে পারছে কিনা ... ওদের বাবারা ছেলের মস্তবড় ভারি লাশটা এক বুক ব্যাথা নিয়ে বহন করতে পারছে কিনা ... দিতে পারছে কিনা কবরে এক মুঠ মাটি । মা ফেলানি,তোকে তোর লাল জামাটায় খুব মানায়ছিলরে ! ! ! ! ঠিক যেন লাল টুকটুকে একটা পাখি ... যে অকালে ঘর বাঁধার স্বপ্নে সীমান্ত পাড়ি দিয়ে দেশে আসতে চেয়েছিল ... স্বপ্ন ভেঙ্গে দিয়েছে আমাদের পরমাত্মীয় প্রতিবেশির বূলেট।ফেলানি , তুই বোধহয় আমার কোন গল্পে পড়া নায়িকার ছোট বেলার রুপ ... যার চোখেমুখে দুষ্টামির আভা খেলত ... অস্পষ্ট তোকে দেখে মনে হল আগের বারে চটপট পার হয়ে যাওয়া তুই মৃত্যুর যন্ত্রনার বদলে আটকে যাওয়া পোষাক খুলতেই বেশি ব্যাস্ত ছিলি।ফেলানি,তোকে আমরা তোর দুরন্ত কৈশর দিতে পারবো না,দিতে পারবনা স্কুলে যাবার জন্যে উৎসাহ ... লাল ফিতা চুরি মালা তো নাইই।তোর বাল্যবিবাহের কথা এখন আর বলব না ... যদি সেটাও দিতে পারতাম ... হয়ত দরিদ্র , অপুষ্টিতে ভোগা ফেলানির কোল আলো করে নতুন কেউ আসত।আচ্ছা ফেলানি আমরা কি তোকে কিছুই দিতে পারিনি?ভেবে দেখত একটু ... বেঁচে থাকলে হয়ত তুই বলতি বেশি বাহানা না করে বল কি দিছো? ... হ্যাঁ আমরা তোকে একটা নতুন পরিচয় দিছি ... তুই আমাদের অন্য গ্রহের ছোট্ট পরী ... আমাদের দেশের কেউ না ... আমাদের কেউ হলে নির্লজ্জের মত ওদের প্রতিক্রিয়া দেখার জন্যে বসে থাকেতে হত না।আমাদের না বলেই তোর মত একটা লাল নীল পরী অভিমান করে নো ম্যান্স ল্যান্ড থেকেই আবার চলে গেছে । ফেলানি , তোর খুব কষ্ট হয়েছিলো তাই না মা? ... তীব্র ব্যাথা নিয়ে কাঁটাতার থেকে নিজেকে ছুটাতে?অনেকক্ষণ মাথা নিচে দিয়ে ঝুলে থাকাতে? ... ।মা রে,এদেশে আমার তোর মত দীন দরিদ্র মানুষের অকারণ মৃত্যুও খারাপ ... কারণ আইন কানুন আমাদের বেলাতেই কড়া।ছোট্ট পরী তোকে হয়ত কেটে টুকরা টুকরা করা হয়েছিল ... সুরত হাল এর জন্যে ... তারপর আবার সেলাই দিয়েছে।এ যেন মাটির পুতুল ভেঙ্গে তাকে আবার জুড়ে দেওয়ার প্রচেষ্টা।বেঁচে থাকতে আমরা তোকে একজন বাংলাদেশি নাগরিকের মত মৌলিক চাহিদার নিশ্চয়তা দিতে পারিনি কিন্তু মরে কেন গেলি সেটা জানতে আইন মেনে ফেলা হলো ঠিকই । ভাল থাকিস মা।বেহেস্তের ডাক্তাররা আমাদের ডাক্তারদের মত টাকার অভাবে থাকেনা তাই ওদের তোর সমস্যার কথা ঠিক মত খুলে বলিস।পারলে আমাকে স্বপ্নে চিঠি দিস ... দিস তোর মা কেও জানিসতো তুই এখনো ফিরে আসতে পারিস এই আশায় দরজায দাঁড়িয়ে থাকে সজল আখিতে।আজকে রাখি মা,তোর হেনা আপাকে লিখতে হবেযে ... আর তুই এবং হেনা একই জায়গায় থাকার চেষ্টা করিস ... তোদের হোষ্টেল সুপার কে বলে।পারলে সিমি,ইয়াস্মিন কে খুঁজে দেখার চেষ্টা করিস । ইতি , তোর গেদু চাচা , ১০-০৩-২০১১ ইং । নো ম্যান্স ল্যান্ডের পরী কে লেখা গেদু চাচার খোলা চিঠি । by Gedu Cacar Khola Cithi ( গেদু চাচার খোলা চিঠি )",0.880882352941,0.103595724115 edd332f52a0de928,ghfjtffffffgbn tfjhnffjg rfyjyfnjm jfnm,1.0,0.103515555945 dbd4957da9fdb14f,"* fx 미지수를 풀이하는 법,텐카메라맨 , fx ) ‘ 레드 라이트’ 음악방송 컴백무대 비교",0.571428571429,0.103298625505 c8d7505c43d760e9,"dxgfcghjmb , k fmjdhasgthujgfydszvfgyuihugytfdrtyghijkhgfgnhjmutrdesedfgyuiytrdgfnoiuytihugyftdrtftfkyghyduysgcbyuhjhhhhhhhhhhgbhjuggufyafgvwaygeufvbt yawstdygujimaqzwerstdgyuhnjmkrlgfthyjuidfcgvhjbnkmlfdgrchujwazsexdrcftgvyhunjwazesrdtgfybhujimkszxdgfvhjnmkl , dvgfhjklxdcfgvhjnkm , ldsfghjkwsxedrctfvgybhujnmk , sdlfghjklsxdcfvghjnkml , swdyghukbjnkmlgf , uhjfvjnfvjishgiulgbiuskjhgisuhuihgiuhgoiuhsihiusghiusghisuhsiuhgiushiulhisughiushijkhbnkjfghsdiurgb vjhgsdiugsddfsfsdjhdfsjhdsfjihdshjdshbjfdshbjdsfjhfdjhbdsfjbhfsdhfdshjfdshfvsdhjdfkhsdhdasfukgdhkdfshdsfdsjbhdsfahjbfdshbjdsfjhdsafhbjdfsahbjdshbjdfhbdsfhjbdsfhjdsfhbjdsfhbjdfshbhbsdfhbdsdhshdfshdhsdfhjdsfhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa dxgfcghjmb , k fmjdhasgthujgfydszvfgyuihugytfdrtyghijkhgfgnhjmutrdesedfgyuiytrdgfnoiuytihugyftdrtftfkyghyduysgcbyuhjhhhhhhhhhhgbhjuggufyafgvwaygeufvbt yawstdygujimaqzwerstdgyuhnjmkrlgfthyjuidfcgvhjbnkmlfdgrchujwazsexdrcftgvyhunjwazesrdtgfybhujimkszxdgfvhjnmkl , dvgfhjklxdcfgvhjnkm , ldsfghjkwsxedrctfvgybhujnmk , sdlfghjklsxdcfvghjnkml , swdyghukbjnkmlgf , uhjfvjnfvjishgiulgbiuskjhgisuhuihgiuhgoiuhsihiusghiusghisuhsiuhgiushiulhisughiushijkhbnkjfghsdiurgb vjhgsdiugsddfsfsdjhdfsjhdsfjihdshjdshbjfdshbjdsfjhfdjhbdsfjbhfsdhfdshjfdshfvsdhjdfkhsdhdasfukgdhkdfshdsfdsjbhdsfahjbfdshbjdsfjhdsafhbjdfsahbjdshbjdfhbdsfhjbdsfhjdsfhbjdsfhbjdfshbhbsdfhbdsdhshdfshdhsdfhjdsfhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa dxgfcghjmb , k fmjdhasgthujgfydszvfgyuihugytfdrtyghijkhgfgnhjmutrdesedfgyuiytrdgfnoiuytihugyftdrtftfkyghyduysgcbyuhjhhhhhhhhhhgbhjuggufyafgvwaygeufvbt yawstdygujimaqzwerstdgyuhnjmkrlgfthyjuidfcgvhjbnkmlfdgrchujwazsexdrcftgvyhunjwazesrdtgfybhujimkszxdgfvhjnmkl , dvgfhjklxdcfgvhjnkm , ldsfghjkwsxedrctfvgybhujnmk , sdlfghjklsxdcfvghjnkml , swdyghukbjnkmlgf , uhjfvjnfvjishgiulgbiuskjhgisuhuihgiuhgoiuhsihiusghiusghisuhsiuhgiushiulhisughiushijkhbnkjfghsdiurgb vjhgsdiugsddfsfsdjhdfsjhdsfjihdshjdshbjfdshbjdsfjhfdjhbdsfjbhfsdhfdshjfdshfvsdhjdfkhsdhdasfukgdhkdfshdsfdsjbhdsfahjbfdshbjdsfjhdsafhbjdfsahbjdshbjdfhbdsfhjbdsfhjdsfhbjdsfhbjdfshbhbsdfhbdsdhshdfshdhsdfhjdsfhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa dxgfcghjmb , k fmjdhasgthujgfydszvfgyuihugytfdrtyghijkhgfgnhjmutrdesedfgyuiytrdgfnoiuytihugyftdrtftfkyghyduysgcbyuhjhhhhhhhhhhgbhjuggufyafgvwaygeufvbt yawstdygujimaqzwerstdgyuhnjmkrlgfthyjuidfcgvhjbnkmlfdgrchujwazsexdrcftgvyhunjwazesrdtgfybhujimkszxdgfvhjnmkl , dvgfhjklxdcfgvhjnkm , ldsfghjkwsxedrctfvgybhujnmk , sdlfghjklsxdcfvghjnkml , swdyghukbjnkmlgf , uhjfvjnfvjishgiulgbiuskjhgisuhuihgiuhgoiuhsihiusghiusghisuhsiuhgiushiulhisughiushijkhbnkjfghsdiurgb vjhgsdiugsddfsfsdjhdfsjhdsfjihdshjdshbjfdshbjdsfjhfdjhbdsfjbhfsdhfdshjfdshfvsdhjdfkhsdhdasfukgdhkdfshdsfdsjbhdsfahjbfdshbjdsfjhdsafhbjdfsahbjdshbjdfhbdsfhjbdsfhjdsfhbjdsfhbjdfshbhbsdfhbdsdhshdfshdhsdfhjdsfhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa dxgfcghjmb , k fmjdhasgthujgfydszvfgyuihugytfdrtyghijkhgfgnhjmutrdesedfgyuiytrdgfnoiuytihugyftdrtftfkyghyduysgcbyuhjhhhhhhhhhhgbhjuggufyafgvwaygeufvbt yawstdygujimaqzwerstdgyuhnjmkrlgfthyjuidfcgvhjbnkmlfdgrchujwazsexdrcftgvyhunjwazesrdtgfybhujimkszxdgfvhjnmkl , dvgfhjklxdcfgvhjnkm , ldsfghjkwsxedrctfvgybhujnmk , sdlfghjklsxdcfvghjnkml , swdyghukbjnkmlgf , uhjfvjnfvjishgiulgbiuskjhgisuhuihgiuhgoiuhsihiusghiusghisuhsiuhgiushiulhisughiushijkhbnkjfghsdiurgb vjhgsdiugsddfsfsdjhdfsjhdsfjihdshjdshbjfdshbjdsfjhfdjhbdsfjbhfsdhfdshjfdshfvsdhjdfkhsdhdasfukgdhkdfshdsfdsjbhdsfahjbfdshbjdsfjhdsafhbjdfsahbjdshbjdfhbdsfhjbdsfhjdsfhbjdsfhbjdfshbhbsdfhbdsdhshdfshdhsdfhjdsfhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",0.478723404255,0.102908399705 d22d9961b3128449,buhgjhkjnklm kojy uguib kmn ut fnto,0.666666666667,0.102847160329 910db746049f6ea0,= = הניחו לנו לנפשנו לא רוצים להיות משועבדים לכם בשום צור . או דרך החזירו לנו את חירותנו והפסיקו להתקיף אותנו בטרור הביולוגי שאתם משתמשים נפנה = = נפנה לכול גורם רשותי וביטחוני על מנת להצביע על האחראים לסיוט שאתם תוקפים אותנו הטכנולוגיות שלכם לא רצויות פה ונעשה הכול בכול מחיר על מנת להביא את האחראים לדין ! ! ! ראו הוזהרתם!!!פנינו למשטרה למבקר המדינה ונפנה לכול גורם על מנת לעשות לזה סוף שיעבדתם אנשים לקחתם חיים עיניתם וקניתם אותם אין לכם אלוקים אתם שייכים לקוחות הרשע נילחם בכם עד מוות או חירות מלאה ללא פשרות אתם לא רתוחים פה ! ! ! אתם פועלים בשיתוף הצדע במכון ויצמן ואנחנו בשם האמונה והאהבה אין לכם סיכוי ! ! ! איתן ג׳מיל מורגלונס מוכרת כיום לציבור וניתן למצוא חומר רב על כך ברשת זיהינו את הטכנולוגיות שלכם שמופעלות על רמזים חיות עצים ובני אשם לא תצליחו לקלת אותנו הטרנזיסטורי הטרנזיסטורים הביולוגים שלכם והטכנולוגיות האלה מופעלות עלינו האזרחים והן פשע נגד האנושות ה,0.89696969697,0.102074210911 564fa976421ed6a4,කටු පොල් වගා කිරීම සදහා අංශක60 ට වැඩි කදුකර බිම් මහා පරිමානයෙන් ඉදි කිරීම මෙී වන විට සිදුවෙී ලංකාවෙී වැඩිම වර්ෂාපතනයක් වාර්ථා කරන දැරණියගල වැනි ජල පෝෂක වතුපාලකයන් විසින් අත්තනෝමතිකව ඒළි කිරීම නිසා කළු රාජලියාගේ ප්‍රධාන වාසභුමියක් මෙී වන විටත් විනාශ කර අැත. රාජලියන් ප්‍රදේශ වශයෙන් වෙන් ව ජීවත් වෙන අතර ඔවුන්ගේ වාසභුමිය කටු පොල් නිසා අද අහිමි වී අැත.ජීවිතයේ ප්‍රථම වතාවට කළු රාජලියන් 05 ඒකම ස්ථානයකදී දැකගත හැකි උවද ඔවුන්ගේ වාස භුමිය හෙට දවසට වලංගු නොවන බව දැනුන විට අැති වන කනගාටුව සුළු පටු නොවී.තමන් කරන විනාශය මහා ලොකු වීර ක්‍රියාවක් යැයි සිතන මිනිසුන් කටුපොල් සිටුවන්න බිම් ඒළිකල දිනය කහ පැහැති තීන්ත මගින් ගල් මතු පිට තබා අැත. මෙී පිළිබදව අසල ගමෙී සමිතියක් මගින් ප්‍රදේශිය ලේකම් ගේ සිට මධ්‍යම පරිසර අධිකාරය දක්වා දැනුවත් කර අැත. ඒහෙත් දිස්ත්‍රික් ලේකම් කාර්යාලයෙන් ප්‍රා.ලේ ට ලැබුණු ලිපියේ සටහන් වන්නේ පරීකෂා කර බලා දැනුවත් කරන ලෙසටය.බල්ලගෙ වැඩෙී බලු නකුටට කියනවායි කියමනක් ජනප්‍රවාදයේ අැති අතර ප්‍රා .ලේ තම කාර්යය ග්‍රාමනිළධාරීට පවරා අැති අතර ඔහු ඒය සොයා බලා කටයුතු කර නැත.ලිපි ගනුදෙනු සදහා කාලය නාස්ති කරමින් ජනතාව මුලාකරන රාජ්‍ය සේවය දැරණියගල රාජ්‍ය අනුග්‍රහය සහිත ජාවාරම් පොලක් කර හමාරය.දුප්පතා කොල්ල කන පෝසතාට කත් අදින රජ්‍ය සේවය දැරණියගල වෙනස් නොවන තැන ඔබෙී දරුවාගේ හුස්ම පොදත් අලවි කරන යුගය වැඩි අැතක නොවෙී;කොන්ද කෙලින් කරනු වෙනුවට බයාදුවෙන් පිට කොදු බිදගත් ලිං ගෙම්බන් සමග පරිසර සංරකෂණය පහසු නැත.කලිසන් අදින චීත්ත කාරයන් උඩහින් පල්ලෙහායින් බඩේ සිංහයා දමා ගත් පසු පෙන්නන සෙල්ලම් සියල්ල මවා පෑමක් පමණි.මතු පරපුරක් ගැන හෝ තම දරුවා තමන් විදි පරිසරයේ සුන්දරත්වය විදිණු කැමති නම් කොදු කෙලින් කර ගන්න කාලයයි මෙී ලලාන් වැවිලි සමාගම හිතන්නෙ අක්කර 1000ක් කටු පොල් වවන්න දැරණියගල(දේශිය ඔයිල් පාම් වගාව)තමයි මෙීකෙ නම;මුන් ජනතාව මුළාකරන්න ගොඩක් උපක්‍රම පාවිච්චි කරල.හරියට අැළි 07 ගහපු විදුලිබලාගාරේ නයා ගග වුණා වගේ.නයා ගග කිව්වට දැරණියගල කව්රුත් දන්නෙ නැ මෙී ගැන තොරතුරු හොයන්න ප්‍රාලේ කාර්යාලයට ගියාම තමයි දන්නෙ මෙීක ලෝකෙට සගවන්න කරපු වැඩක් කියල. දේශීය ඔයිල් පාම් කතාවත් ඒහෙමයි.අපි සමග සාකච්ඡා කරපු ඒක නිළධාරියෙක් කියනව ජල උල්පත් හිදෙන ඒකේ වගකීම ඔහු බාර ගන්නවලු;ඒකියන්නෙ කටු පොල් හිටවනනෙ ඒයා පස්සෙ පරිසරය විනාශ වෙනකොට ඒයා වෙනවත්තක ඉදියි අපි කාට පැමිනිලි කරන්නද?බැරි වෙලාවත් ඊයෙ සාකච්චාවට අපි නොයන්න අහිංසක ගම්වාසීන් මුලාවෙ දාන්න ඔීන තරම් ඉඩ තිබුණ.ඔවුන් උපක්‍රමිකව ගොඩනගන්න ගියෙ අපි සංවිධානාත්මකව ගොඩ නගන වැඩසටහන ගමෙී මිනිස්සු මිලට අරන් ජනමතය වෙනස් කරන්න ගාල්ලෙ ඉදල අාපු සුපවයිසර් කෙනත් අැදගෙන නෑව ගානට. අාචාර්ය ඒච්.ඒ.ජයන්ත ගුණතිලක-අංශ ප්‍රධානී/ඔයිල් පාම් පර්යේෂණ අංශය පොල් පර්යේෂණ අායතනය ලුණු විල ඉන්න අපේ රට විනාශ කරල තමුන්ගෙ බඩ වඩාගන්න නිළදාරීන් තමයි මෙීවට රුකුල් දෙන්නෙ.ජනතාවගේ නාෙදැණුවත් බව වාසියට ගකිමින් වතු සමාගම් වලට හිතකර අයුරින් ඉදිකල මෙම ව්‍යාපෘතිය මගින් බොහෝ පැති මග හැර හුදෙක් ව්‍යාපාරික ලබ ලබන සැලසුමක් ගොඩනගා අැත ‪#‎මිනිස්සු‬ නොදන්නා දේ # ‪#‎ඒළවළු‬ තෙල් ලෙස මිලට ගන්නේ කටු පොල් බව මිනිසුන් සිතා සිටින්නේ ඒළවළු තෙල් නිපදවන්නේ ඒළවලු වලින් බව # ඒළවළු තෙල් වලට වඩා දේශීව නිපදවන පොල් තෙල් ගුණාත්මක බව ‪#‎ශ්‬‍රී ලංකාවෙී කටු පාෙල් වැවීමේ අරමුණ වැඩි ලාභ ලැබීමට කටු පොල් ඵලය විදේශයට අලෙවි කොට අහිතකර අපද්‍රවයෙන් නිපදවෙන අහිතකර තෙල් අප දැනට රොඩු තේ පානය කරන්නා සේ භුක්ති විදීමට සිදු වීමයි ‪#‎ඒක‬ භෝග වගාවක් විශාල භුමි ප්‍රමානයක වගා කිරීම තුල ජෙෙව සමතුලිතතාවය බිද වැටීම ‪#‎වගා‬ කරන භූමි නිසි ක්‍රමවෙීදයකට ඒලි පෙහෙලි නොකිරීම නිසා අාවේණික ශාක හා සත්වයින් විශාල ප්‍රමානයක් වදවී යාම ‪#‎ගණනය‬ කර මෙතෙකැයි කිව නොහැකි දිය උල්පත් ප්‍රමාණයක් සිදී යාම මෙනිසා වතු නිරීක්ෂණ චාරිකා හෝ සාකච්ඡා තව දුරටත් අවැසි නොවෙී අක්කර 50 කට වැඩි ඔීනෑම ව්‍යාපෘතියක් වෙනුවෙන් පරිසර තත්ව වාරථාවත් ලබා ගත යුතු අතර දැරණියගල ජරාව යහමින් බුදින ඒ.ජීට පිං සිදුවෙන්න දැරණියගල වතු පාලකයන්ට මෙීවා අවැසි නැත රජයෙන් දෙන්නේ නමි අසුචි ගොඩක් හෝ හිස මත තබා ගැනීමට මොහු කැමතිය.ඒ.ජී.ටත් වතු පාලකයන්ටත් කියන්න අැත්තේ දැරණියගල උඹලාට ව්‍යාපාරික සථානයක් උනාට අපිට අපේ ගම නිසා කරුණාකර මෙී අහිතකර වගාවෙන් ඉවත් වෙන ලෙසය.නැතිනම් අපට කල හැකි තව බොහෝ දේ අැත ඒවිට වැඩිපුර රිදෙණු අැත. කන්නෙලියට නාකියාදෙනියට සිදුවූ විනාශය දැරණියගලට අවැසි නැත මෙීක තිරසර සංවර්ධනය සොයා යන ගමනක් මිස යටත් විජිත වතු පාලන කුමවෙීදය නොවන බව මතක් කරමි,0.964285714286,0.101802317106 c0c1f390139c3a4a,"= = LOW OF HENRY = = स्थिर ताप पर किसी विलायक के निश्चित आयतन में विलेय गैस का दवयमान गैस के दाब के समानुपाती होता है,जिसके साथ वह साम्यावस्था मे है । माना विलायक आयतन में विलेय गैस का ददवयमान m तथा साम्य दाब p है । m समानुपात p . m = kp जहां k एक स्थराक है",0.636363636364,0.101023868005 de933109dc6b0c0a,chvghvghjcgvjhdgvfjzxhczxjhvjxdhcvxchjgvxchjgv kxchjgvgvhjxcgvjhcg jhdgjdghcjz jzcgjzhxcghjzcgjhxcgjz jhxcgzsjhcgjhz zxhgchjz zchj zgc zhjgc zhjxgck jzxcghzj cgjhzxcgkjzgcZXgcyzshzhjdgsuyg ydgt dtsuy adguy shgc udyg usygdcusyg uy dsaydguyasd UAKSYDF ys das dasyudyasdkYSJHYGhxcsgdhgjguxhgxfJKzxfjyfdhytSyawtsxfhjZFsKFtxtujSdfSGZdfsaty ytfHSfd dsT DV f htsdfsztgf jsygkYJDFJHSgf gvfdfdhfgvjfhjg is the code for,0.685714285714,0.100086365105 51c052b60513fe82,第一課 冬休みが終わって 本课词汇 久しぶり(ひさしぶり)(名 形動)⑤〇 好久 暇(ひま)(名)〇 空闲 山崎(やまざき)(専)② 山崎(姓 ) 菓子(かし)(名)① 点心 棚(たな)(名)〇 棚架 サイドボード(名)④ 餐具柜 グラス(名)① 玻璃杯 置く(おく)(他五)〇 放置 壁(かべ)(名)〇 墙壁 地理(ちり)(名)① 地理 貼る(はる)(他五)②〇 贴 滑る(すべる)(他五)②〇 滑 割る(わる)(他五)〇 割,打碎 怪我(けが)(名 自サ)② 受伤 新学期(しんがっき)(名)③ 新学期 学習(がくしゅう)(名 他サ)〇 学习 予習(よしゅう)(名 他サ)〇 预习 学部(がくぶ)(名)①〇 系 会議(かいぎ)(名)①③ 会议 入口(いりぐち)(名)〇 入口 告知板(こくちばん)(名)〇 布告牌 会議室(かいぎしつ)(名)③ 会议室 並べる(ならべる)(他一)〇 排列 壇(だん)(名)① 台 何号館(なんごうかん)(名)④ 几号馆 何号室(なんごうしつ)(名)④ 几号房间 番号(ばんごう)(名)④ 号码 山崎文雄(やまざきふみお)(専)③ ( 人名 ) 聞こえる(きこえる)(自一)〇 听见 ノック(名 他サ)① 敲门 やあ(嘆)① 啊,喂 靴(くつ)(名)② 鞋子 構う(かまう)(自他五)② 介意 明るい(あかるい)(形)〇 明亮 しかも(接)② 而且 どうも(副)① 很,实在 恐れ入る(おそれいる)(自五)② 不好意思 片付ける(かたづける ) 整理 湯(ゆ)(名)① 开水,热水 沸かす(わかす)(他五)〇 烧开 版(ばん)(接尾)〇 版 古典(こてん)(名)〇 古典 小説(しょうせつ)(名)〇 小说 三国志(さんごくし)(専)④ 三国演义 いや(嘆)① 不,不对 方法(ほうほう)(名)〇 方法 チェック(名 自サ)① 核对 考え(かんがえ)(名)③ 想法 用意(ようい)(名 他サ)① 准备 皿(さら)(名)〇 碟子 ご心配なく(組 ) 请不必担心 ( 感谢 xzbaszy 输入课文和单词 ) 本课课文 : 前文 冬休みが終わり、李さんと王さんは久しぶりに会いました 。 今日は暇なので、李さんは王さんを誘って留学生の山崎さんを訪ねました。山崎さんはとても親切な人で、友達が来る時には、いつも部屋をきれいに掃除しておいたり、お菓子を買ってきておいたりします。彼の部屋は広く、棚の上には家族の写真が飾ってあり、サイドボードの中には、誕生日に友達からもらったグラスが置いてあります。壁には、地理の勉強のための中国地図が貼ってあります 。 久しぶりに会ったので、三人は楽しく食事をしました。李さんは手が滑って、コップを一つ割ってしまいましたが、さいわい、けがはしませんでした 。 会話 王 : 李さん、お久しぶりですね。お元気ですか 。 李 : ええ、おかげさまで元気です。王さんは 。 王 : 私も元気です。冬休みはどうでしたか 。 李 : ええ、とても楽しかったですよ。明日、新学期が始まりますから、また忙しくなりますね 。 王 : そうですね。李さんは新学期の準備をしましたか 。 李 : ええ、教科書の学習内容を少し予習しておきました 。 王 : それはいいですね。学部では明日会議があるようです 。 李 : そうですか。どんな準備がしてありますか 。 王 : 学部の入口には告知板が立ててあります。会議室には椅子がたくさん並べてあります。そして壇の上には大きな机が置いてありますよ 。 李 : そうですか。どころで、王さん、今日はお暇ですか 。 王 : はい、今日は何もすることがありませんけど 。 李 : それでは山崎さんのところへ遊びに行ってみませんか 。 王 : いいですね。遊びに行ってみましょう。山崎さんは留学生寮の何号館に住んでいるか知っていますか 。 李 : ええ、はっきり覚えていませんけれど、行けばすぐわかると思います 。 王 : 部屋は何号室だか覚えていますか 。 李 : 部屋の番号も忘れてしまいました 。 王 : やはり電話をかけて聞いておいた方がいいですね 。 李 : そうですね。電話をかけて聞いておきましょう 。 ( 留学生寮で ) 王 : 李さん、この部屋が山崎さんの部屋のようです 。 李 : ドアに何と書いてありますか 。 王 : ドアに山崎文雄と書いてあります 。 李 : ごめんください。少しも聞こえないようですね 。 王 : ノックをしてみましょう。(トン トン トン ) 山崎:どなたですか 。 李 : 李と王です 。 山崎:やあ、李さん、王さん、いらっしゃい。どうぞお入りください 。 李 : お邪魔します。靴をはいたまま入ってもいいですか 。 山崎:はい、かまいません 。 王 : 明るくていい部屋ですね 。 李 : しかも、きれいに掃除してありますね 。 山崎:今日は特に丁寧に掃除したんです。ふだんはそれほど丁寧にしません 。 李 : それはどうも恐れ入ります。友達が来る時はいつもこう片付けるのですか 。 山崎:ええ、いつも掃除をしておきます。テーブルの上に花を飾っておきます。また、お湯を沸かしておいたり、お菓子を買ってきておいたりします 。 李 : そうですか。棚の上に飾ってある写真は何ですか 。 山崎:あれは私の家族の写真です 。 王 : サイドボードの中に置いてあるグラスは中国の物ですか 。 山崎:はい、誕生日に友達からもらったものです 。 李 : 壁に貼ってあるのは中国地図ですね 。 山崎:ええ、中国の地理を勉強するために貼ったんです 。 王 : 本棚に並べてある本は何ですか 。 山崎:どれですか 。 王 : あれです 。 山崎:ああ、あれですか。あれは日本語版の中国古典小説です 。 李 : そうですか。このごろ、中国の小説を読んでいるんですか 。 山崎:はい、「三国志」を毎日少しずつ読んでいます 。 李 : もう読んでしまいましたか 。 山崎:いや、この小説は長いですよ。それにちょっと名前が難しいですね。読んでいると、だれがだれだか分からなくなります 。 王 : 私はいい方法を知っていますよ。小説に出てくる人の名前を書いておいて、だれがだれだか、チェックしながら読むんです。そうすれば、きっとよく分かるようになります 。 山崎:それはいい考えですね。私もやってみましょう。では、そろそろ時間ですから食事の用意をしましょう 。 李 : はい、どうしますか 。 山崎:椅子を並べておいてください。それからお皿やコップ、おはしを並べておいてください 。 李 : あっ、すみません 。 山崎:どうしました ? 李 : コップを割ってしまいました 。 山崎:どうしたんですか 。 李 : 手が滑ってしまったんです 。 山崎:手はけがしませんでしたか 。 李 : 大丈夫です。ご心配なく 。 山崎:じゃあ、一緒に楽しく食事をしましょう 。 李 : テレビをつけたままでよろしいですか 。 山崎:はい、そのあとすぐニュース番組ですから、しばらくそのままにしておいてください 。 ファクション用語 お祝い A お誕生日おめでとうございます 。 B どうも、ありがとうございます 。 明けまして、おめでとうございます 。 ご結婚お祝い申し上げます 。 ご入学お喜び申し上げます 。 皆さんのご健康をお祈りします 。 课程讲解 一、动词ておく 书上写的是“动词准备体由动词连用形后续“ておく”构成。”赋予ておく以动词准备体的语法成分。不过我不是很支持大家去背这些是什么体,什么体,日语里面这些体的数量足以让大家头晕了。书上这么写是出于语法研究的目的,以表现得正规。但是我们必须得明白,在考试的时候,不可能出填空题“问:某某某是_____体”的,和日本人交流,也不可能被他们问,这是什么语法成分。所以!我们只需要明白这几个假名表示的是什么意思即可 。 那么,我们就来看在使用动词ておく的时候,究竟可以表达出什么样的含义呢 ? 1、为了准备某种目的而事先做好准备工作 。 来看个例句先 : eg 。 做午饭的时候把晚饭也一起作了,然后才去上班 。 在这里我们可以明显的看到,作っていおいて表达出了处于可能是由于晚饭来不及作等原因,而事先做好了晚饭这个动作(作っていおいて是作っておく的接续形式,表示的是和后面出去上班的动作先后顺序 ) 。 2、表示让某种状态继续保持下来 。 eg 。 请把这个作为纪念(品)留下来吧 。 这里就表达出了把保留这个动作一直持续地作下去的意思 。 说老实话,这个用法对于非专业人士来说,要灵活的运用并不是件容易的事情。可能只有在日后更多的使用中来掌握了 。 二、动词てある 书上赋役了这个用法“动词存续体”的语法含义。很不幸的,该用法在这课里面和前面的ておく一起出现,而且含义十分接近,这就直接导致了很多人弄混淆这两个用法 。 我们来看てある的用法吧 。 这也可以表示两种用法(-_- # ) 1、表示某事物保持某人动作的结果所造成的状态 。 eg 。 桌子上摆着餐具 。 表达桌子上一直保持这有餐具这个状态 。 2、表示事先做好了某事。(和ておく一比,该晕了吧 ? ) eg 。 事先约好了吧 ? 在我学习这一课的时候,这两个语法也困扰了我很久,在很大的程度上也打击了我以后对日语学习的激情。第一册期末考试的时候,我还考了94分,全班第四,但是此后就每况愈下,沦落到70多了 … … 唉。扯回正题,てある和てお,0.450434782609,0.0997777862588 bd4077d68c000d49,kjoijqoijpojerpy ojkjdlkjlij aloiuliujioh oaighpiup oius phiu j piou pofuposajo pijsaipogujigohgis ij gskijgpsifjgp fgj dpo odj gjagpodfjgo pfjgk podi ' pioj spo o pfuoeaf jmgpo dikjgopjasopgjspovujsg pid ugo igjogpuoui ' god igpouogfjgoefdug jod gfoj podugpojdhpodjf phgofjgikpodfgidofguso pgjj pdjagpofuogodpfjgopiklhjolpi nflsgkju fkj doig jfg oid gijgo sigjoifgujsglkiuj fd gspgoupgpsdogipofgupogujoas foi gfo psuig posugpo oigsp ogidpogjgipojdfpoiguspoiguosdigus ; lakjaoigu o isigdkulg udih g oaiuhsdofiuo disfhso dfihsdf ifhsoifusifhsfoisy igh dfid f ids hfs oisd jfh ofi shg,0.371681415929,0.0989082905611 9c7dbbf479df2066,دار خديجة بوكصا فى المغرب . الرباط. الصخيرات,0.875,0.0986999948653 5195776fe0d27843,hoaHTOAUHROGNHN OIRJGAH osaerokgjnreijht saorhgoshiudrhgoshlhasjrhguthslsierh er hou hgh nso uhg souyfrg iuerh ask lde alk a slsk djf a sld kfj a sldkfjktook,0.258064516129,0.0985479109036 8d1e2e001527737d,नाश्ते मे अंडा खाने का सही तरीका सुबह नाश्ते मे अंडे को दूध में मिला कर पीना सबसे सही है आपके स्वास्थ्य के लिए,0.923076923077,0.0983108692842 c3954292957f12d9,fgfhjhb bhgb uyt guyy uug,0.666666666667,0.0980291019226 75f794a20e599d59,dogfggfgfghfhgfghfghfgfhgfhgfghfghfghfgfgggggggggggggggggggggggggggggfffffffffffffffhhhhhhhhftgfrgftyfrctyvhrfc vnyhjtfcr vnm yjt rfcmhuy trfc nmu yfrc bynhtgvck fr ing,0.5,0.0979530989361 393ac6d367e74c07,= = ಕನ್ನಡ ರಾಜ್ಯೋತ್ಸವದ ಶುಭಾಶಯಗಳು = = ನಿಮಗೂ ಸಹ ಕನ್ನಡ ರಾಜ್ಯೋತ್ಸವದ ಹಾರ್ದಿಕ ಶುಭಾಶಯಗಳು ನವೀನ್,0.625,0.0968938363199 ed0c4a811c4d686e,اگر چند نفر ایرانی فعال در ویکیپیدا بودند ما اصلا نیازی نداشتیم که در همان جمله اول نظامی گنجوی ننویسیم که شاعر پارسی .. متاسفانه ایرانیان خودشان همت نمیکنند ... و فکر میکنند چهار پنج نفر باید همه کارها را انجام بدهند ..,0.93023255814,0.0966908385787 43b47e02874e1102,noiazomai - news Μήτρα με γέννησε αρχαία Μακεδόνισσα ..... Είμαι Έλλην το καυχώμαι ! Ξέρω την καταγωγή μου. Κι ελληνική ψυχή μου είναι λεβεντιάς πηγή. Η δική μου η πατρίδα του πολιτισμού κοιτίδα !,0.736842105263,0.0966444448963 89e1b0cd23d7463e,Us nhdfnvihvfd ihodfbgudgdivhejsfgsuyiefhuhedIOSDbfUYIwegfiihsrzfje uhixxzbuczxhc dxc jkb dcszjnfdxz ojfbsdzojhbvyd sbu ysdbfiuheszfbiuyesbfuy aewfewugvf bsfzduudsz gbu gdb yffs db y b d yffbffdsy bfdsf y fdsdibvd d yfgeudiyfbiufew r y w rbvdd gerf g vdes dealers swh dddddccccccc c c c c c cccccccccccccccccccaaaaaaaarrrrrrrrrrrrsssssoooonnnn n,0.276923076923,0.0961441491373 6dd56c3ded371c1f,NIKO EPE IGON ! ! ! ! ! Απίστευτες βλακείες γραφουν καποιοι χρήστες για τον Μακεδονικο Αγώνα και για τον Γερμανό Καραβαγέλλη. Προσπαθησα να διορθόσω λίγο την κατασταση αλλα δεν ξέρω εάν τα κατάφερα ! ! παρακαλώ βοήθεια ! !,0.690476190476,0.0958341454316 63950e8332af9ccd,ده توانن سود له وبابه تانه وه ربكرن كه تايبه ت به به شى نه وت بلاوده كمريته وه له كه ل نا ونيشانه كه ي,1.0,0.0957348899107 f2ef8ce88d11cb6a,مسئله مهم ديگه در مورد مسئله فلطسين هست مسئله ادعاي ترکيه از تيره شدن روابط خود با امريکا در قبال حقيقت گويي آمريکا هست که مهم مي دونم اول اين مسئله رو عنوان کنم البته ضمن تشکر از سياست درستي که جهت بستن دهان کسانيکه بهشون مدام تيکه شيطان و ادم کش رو ميزنند اين کارش براي بستن دهانش خوب بود.اما حالا در اين مورد يکسري صحبت ها هست که لازم مي دونم در پيج اقاي اوباما مطرح کنم چون اين سياست از يک لحاظ خوبه اما از يک لحاظ مي تونه ضربه به سياست نوين آمريکا بزنه حالا در موردش صحبت خواهم کرد.اما مسئله فلطسين که به عنوان بخش آخر مباحثه امروز مي دونم بگم البته در اين مورد يکسري صحبت ها هست که لازم مي دونم در پيج اقاي اوباما مطرح کنم ببينيد همون طور که گفتم هر عملي يک عکس العملي داره متاسفانه و متاسفانه اساس کار مسئولين دولت ها مبنتي بر پايه لج و لج بازي شده در طي جريان فلسطين من فقط مقصر اسرائيل رو نمي دونم بلکه درصدي مقصر خود فلسطين هم هست البته نه مردمش چون من مدافع مردم هستم بلکه مسئولين دولت بايد دولت فلسطين اينو قبول کنه و اگه حزب الله بخواد عليه من حرف بزنه من جوابشو خواهم داد مسئولين اوليه فلسطين اشخاص فوق العاده بي کفايتي بودن که جرمشو مردم بيگناه فلسطين کشيدن که من هرگز نديدم اين دولت از مسئولين سابق خودش چيزي بگه و مدام حرف از زير سلطعه گرفتن اسرائيل ميزنه هميشه اينو بهتون بگم که بدونيد تاريخ ثابت کرده اگه مسئولين دولت آنچنان سياستمدار باشن که بتونن جلوي زير سلطه گرفتن حتي با يک عدد ناخن گير هم مي تون از کشورشون دفاع کنن ممکنه مسئولين از اين حرف من بخندن اما من واقعيت رو دارم ميگم ممکنه بگيد سياست اون موقع مبتني بر جنگ بوده اما من ميگم مطمئن باشيد هر جنگي با يک جرقه همراه هر تسلطي با يک اشتباه همراهه اون اشتباه در عملکرد سياسي مسئولين خودشو نشون ميده براي همين اينو مطمئن باشيد مسئولين سابق فلسطين هم مقصر بودن اينو نگفتم که خاطرات گذشته رو زنده کنم بلکه عنوان کردم که بگم فلسطين بهتر به جاي تکيه به ظاهر در شرف يک سياست نوين و سازندگي باشه البته در مورد مسئله ازادي زندانيان و مسائل عدم مداخله مجددا در پيج اقاي اوباما صحبت خواهم کرد اما اينو بدونيد يکي از دلايلي که اسرائيل به تعهداتش پايبند نيست اينکه دولت فلسطينت به خاطرات گذشته اش از جنبه پايبندي خصومت که ميشه عالمي بر بدتر شدن اوضاع حاکم بر جهان پايبنده خب طبق اين تعريف مي تونيم يه نتيجه کلي بگيريم اونم اينکه در مسئله فلسطين و اسرائيل عدم اعتماد وجود داره چيزي که يادم مياد در اوايل صلح نامه ايران و امريکا زمانيکه يک شکست در قدم اول اين صلح خوردم داشتم و اما يک تفاوت داشت آمريکا دو سه تا حسن نيت نشون داد اما ايران مدام پايبند خاطرات گذشته بود و بعد آمريکا مسئله هسته اي رو کشيد وسط روابط بدتر شد اما در اينجا هيچ يک از دولت ها به قول عاميانه از خر شيطون پايين نميان علتش هم بي اعتمادي هست من معتقدم اگه يک حسن نيت در اين مسائله ايجاد بشه شايد تا حدي اوضاع رو بهتر بکنه البته اين بستگي به يک دندگي دو طرف هم داره که تا چقدر ميخوان فقط حرف خودشون به کرسي بشينه مسئله ديگه در ارتباط با اقدام درست در جهت سد سازي رود هيرمند و درخوايت از افغانستان براي پايبندي اين موضوع هست اشاره کنم خب خوبه در مورد مسائل منافع ايران مسئولين کشور نظارت خوبي دارن اين عاليه در کنار اين توجه ميخوام توجه به مسائل واردات و صادرات هم بيشتر بشه همون طور که قبلا گفتم براي پيشبرد بيش از پيش ايران در زمينه توليدات و تکنولوژي و مخصوصا مواد اوليه شرط لازم دادن امکانات کافي به قشر توليد کنند و کارامد و مخصوصا جوان در کنار آموزش هاي لازم که در مورد اين آموزش ها خيلي صحبت کردم در مورد فضاي آموزشي کاهش محدوديت هاي آموزشي و فيلتر سازي و ديگه اينکه کاهش واردات به کشور جز درموارد ارز و مبادلات ارزي جهت بهبود بيش از پيش اقتصاد کشور.اينا مباحثي بود که در مباحثه قبل کاملا بهش اشاره داشتم و حال مسئله ديگه در مورد هشدار سر رده القاعده در حمله به آمريکا همين مونده ديگه اين افراد بيان و با کشيدن حمله به آمريکا اوضاع جهان و ميزان کشت و کشتار رو ببرن بالا يکي از دلايلي که ميگم جنگ ايجاد ميشه همين اقدامات به دور از فکر و در نتيجه انتقام جويي از سوي چنين اشخاصي هست در طي جنگ هاي گذشته که اونم در نتيجه اشتباهاتي بود از جانب دو طرف ببخشيد حلوا پخش نميکنن که بالاخره کشت و کشتاري ميشه از جانب هر دو طرف اگه من بيام اونو به رخ بکشم ديگه هيچي ديگه هر سال بالغ بر هزاران جنگ بايد در سراسر جهان رخ بده بعد شمار کشته ها روز به روز بيشتر از اين گونه اشخاص خواستارم جو جنگي براي بيشتر شدن اوضاع نابسامان حاکم بر جهان و استفاده از سياست جنگ به جاي سياست کلام جهت کشت و کشتار بيشتر استفاده نکنند. بهتر اين جمله رو هشدار بدم که هواي رفتار خودشونو داشته باشن والا به جرم بر هم زدن بيشاز پيش اوضاع حاکم بر جهان و ايجاد جرقه جنگ عملکردشان رو حتما به سازمان حقوق ملل خواهم گفت حالا از کسانيکه پشت سر اين سازمان ادعاي اينو ميکنند که آمريکا تحريکشان ميکنه در متن اول مباحثه گفتم الان هم ميگم سازمان حقوق ملل مدافع صلحه اگه هم در مواردي سکوت ميکنه اين يک نوع سياست جهت اروم شدن اوضاع وال اگه پاي صحبت رو وسط بکشه ممکنه هزاران مشکل ايجاد شده که مي تونه بدتر از حالت سکوت بشه ايجاد ميشه فکر کنم در متون مباحثه قبل خيلي کلي بهش اشاره کردم خب اين از مباحثات امروز .انشالله از فردا وارد ادامه مباحثات خواهيم شد.,1.0,0.0956611352898 f6bc537d1b1ddc4e,= = vffhbvugyshbuydghsfgsGHnghdgbb = = gf hjdsgkjv vhuhbgeg ug hgueahgy guheughihguihguegoirug guerhgiuhg ghgjghtpihjwopsuen jjhie oe jhsjhini hos sjgirehsgeroisghiuehag bjbiobiuhb jhgbskhb gfhiobnxlgb kgjhxiojh,0.4375,0.0956357967634 92a722aae509618f,"இந்தியத் திருநாட்டின் 66-வது சுதந் திரத் திருநாளில் காஷ்மீர் முதல் கன்னியா குமரி வரை விரிந்து பரந்த நமது நாட்டின் உற்சாகத்தோடும் , மகிழ்ச்சியோடும் மார்க் சிஸ்ட் கம்யூனிஸ்ட் கட்சி , தன்னையும் இணைத்துக் கொள்கிறது என கட்சியின் மாநிலச் செயலாளர் ஜி.ராமகிருஷ்ணன் கூறியுள்ளார். விடுதலைப் போரில் , உயிரை அர்ப்பணம் செய்த எண்ணற்ற தியாகிக ளுக்கும் , உழைத்த வீரர்களுக்கும் , வீராங்க னைகளுக்கும் வீர வணக்கத்தையும் மார்க்சிஸ்ட் கட்சி தெரிவித்துக் கொள் கிறது என குறிப்பிட்டுள்ளார். சுதந்திர தினத்தையொட்டி அவர் விடுத்துள்ள வாழ்த்துச் செய்தி வருமாறு:- நாட்டு விடுதலையோடு , பசி - பட்டினி - வேலையின்மை - கல்வியின் மை - சாதிய , பாலின ஒடுக்குமுறை போன்ற கொடுமைகளிலிருந்தும் விடுத லை கிடைக்கும் என்ற கனவு கோடானு கோடி மக்களுக்கு இருந்தது. 65 ஆண்டு கள் உருண்டோடிவிட்ட நிலையில் , கனவு நனவானதா என்கிற கணக்கு பார்த்தால் , பெரும்பான்மை மக்கள் துன்பத்தில் உழல் கிற நிலைதான் விடையாக முன்னுக்கு வருகிறது. நாடு ஓரளவுக்கு முன்னேறி யிருக்கிறது. ஆனால் முன்னேற்றத்தின் பலன் , பெரும் பகுதி மக்களின் வாழ்க்கை சிக்கல்களைத் தீர்க்க உதவவில்லை. ஆட்சியாளர்களின் கொள்கைகள் , அவர் கள் தேர்வு செய்த பொருளாதாரப் பாதை , குறிப்பாக நவீன தாராளமயப் பாதை , அதிகமான டாலர் கோடீஸ்வரர்களையே உருவாக்கியிருக்கிறது. அதாவது , ஒளிரும் இந்தியா ஒரு புறம் , உழலும் இந்தியா மறு புறம் என்பதுதான் நிலை. விடுதலைப் போராளிகளின் கனவுகள் தவிடு பொடி யாக்கப்பட்டுள்ளன. கொடும் விலைவாசி உயர்வும் , மெகா ஊழல்களும் வாடிக்கை யாகிவிட்டன. கறுப்புப் பணம் கொழிக்கி றது. விவசாயம் , நெசவு உள்ளிட்ட தொழில் கள் நசிந்து கொண்டு வருகின்றன. மோச டியான வறுமைக்கோடு போடப்பட்டு , உணவுப் பாதுகாப்பு வளையத்திலிருந்து , நகர்ப்புற கிராமப்புற ஏழைகள் சுமார் 50 சத விகிதம் பேர் விலக்கி வைக்கப்பட்டுள்ள னர். உழைப்புச் சுரண்டல் அதிகரித்து , கோடிக்கணக்கான தொழிலாளர்கள் , வாழ்க்கை நடத்த வழியின்றி தவித்துக் கொண்டுள்ளனர். இன்றைய மத்திய-மாநில அரசுகளின் நவீன தாராளமயக் கொள்கைகளின் காரணமாக , தொழிற்சங்க உரிமைகள் நசுக்கப்படுகின்றன. பெண் கள் , குழந்தைகளின் மீதான வன்முறையும் , சாதிய வன்கொடுமைகளும் உச்சகட்டத் தில் இருக்கின்றன. மாற்றுத் திறனாளிகள் , திருநங்கையர் உரிமைகள் மறுக்கப்படு கின்றன. தாராளமயக் கொள்கைகள் காரணமாக , பன்னாட்டுக் கம்பெனிகள் , பல்வேறு துறைகளை சீரழித்தது போதாதென்று , சில் லரை வர்த்தகத் துறையின் கதவுகளை முழுமையாகத் திறக்கவும் நிர்ப்பந்தித்துக் கொண்டுள்ளன. உயர் கல்வியில் அந்நியப் பல்கலைக் கழகங்கள் கொல்லைப்புறமாக நுழைய ஏற்பாடு நடக்கிறது. அமெரிக்க ஏகாதிபத்தியத்துடன் கேந்திரமான கூட்டு என்பது , இந்தியாவின் இறையாண்மைக் கும் கேடு விளைவிப்பதாக இருக்கிறது என்பதை நடப்பு நிகழ்வுகள் நிரூபித்துக் கொண்டிருக்கின்றன. ஏகாதிபத்திய எதிர்ப்புணர்வை இன்றைக்கும் தொடர்ந்து முன்னெடுத்துச் செல்ல வேண்டியிருக் கிறது. இருபெரும் முதலாளித்துவ அணிக ளான , காங்கிரஸ் தலைமையிலான ஆளும் ஐக்கிய முற்போக்கு கூட்டணி மற்றும் பாஜக தலைமையிலான தேசிய ஜனநாயக கூட்டணிக்கு மாற்றான இடதுசாரி ஜனநா யகக் கொள்கைகளை முன்னை விட தீவிர மாகக் கொண்டு செல்ல வேண்டியிருக்கி றது. உண்மையான மாற்றாக இடதுசாரிகள் இருக்கிறார்கள் என்பதை மக்களிடமி ருந்து மறைக்கும் அரசியலை , கார்ப்பரேட் ஊடகங்கள் செவ்வனே செய்து கொண்டி ருக்கின்றன. அனைத்து பிற்போக்கு சக்திகளும் ஒன்றுசேர்ந்து , மேற்கு வங்கம் , கேரளா , திரிபுரா போன்ற வலுவான இடது சாரி தளங்களை பலவீனப்படுத்தும் முயற்சிகளில் இறங்கியுள்ளன. இடதுசாரி அரசியல் வலுப்படும் போது தான் , மக்களின் உரிமைகள் பாதுகாக்கப்படும். கூட்டுச்சேரா கொள்கை , மதச்சார்பின் மை , தேசத்தின் இறையாண்மை மற்றும் பன்முகப் பண்பாட்டுக் கூறுகளை பலப் படுத்தவும் , ஜனநாயக உரிமைகளுக்கு எதிரான தாக்குதலை முறியடிக்கவும் , சமூக நீதி , தீண்டாமை ஒழிப்பு , பாலின சமத்துவம் போன்ற உயரிய கோட்பாடு களை உயர்த்திப்பிடிக்கவும் , முற்போக்கு மற்றும் ஜனநாயக சக்திகள் தொடர்ந்து போராட வேண்டியுள்ளது. ஏழை உழைப் பாளி மக்களின் ஒரு பகுதியினரை இன் னொரு பகுதியினருக்கு எதிராகத் தூண்டி விடும் அடையாள அரசியலுக்கு இரை யாகி விடக்கூடாது. அநீதிக்கு ஆளாகும் அனைத்துப்பகுதி மக்களின் ஒற்றுமை யின் அடிப்படையில் நடைபெறும் போராட் டமே அனைவருக்கும் விடுதலை அளிக் கும் என்று மார்க்சிஸ்ட் கட்சி உறுதிப்பட சுட்டிக்காட்டுகிறது. முழுமையான மனித குல விடுதலை இந்தச் சுரண்டல் சமூக அமைப்புக்குள் ஒரு போதும் கிடைக்காது. சோஷலிசமே மனித குலத்தின் ஒளிமய மான எதிர்காலம் என்கிற உணர்வு , உல கெங்கும் மீண்டும் எழுந்து கொண்டி ருக்கிறது. இந்த சுதந்திர நன்னாளில் , அனைத் துப் பகுதி மக்களையும் ஒடுக்குமுறையி லிருந்தும் , சுரண்டலிலிருந்தும் பாதுகாக்க மார்க்சிஸ்ட் கம்யூனிஸ்ட் கட்சி உறுதி ஏற்கிறது. 66-வது சுதந்திர தின நன்னா ளில் , மார்க்சிஸ்ட் கட்சி தமிழக மக்களுக்கு சுதந்திர தின நல்வாழ்த்துக்களை தெரி வித்துக் கொள்கிறது.",0.878326996198,0.0954395208905 9bccbbb1e81cca6c,= = 차단을 빨리 해제하기 위하여. = = 왜 차단해 개새끼야 ! ! ! !,0.411764705882,0.0951489784044 af20109d96d5df7b,= = سلام علیکم = = من تا اطلاع ثانوی امکان فعالیت در مقاله را ندارم. اگر خیلی کار باقی مانده اگر می توانید به من بگویید تا روی آن کار کرده و برایتان ایمیل کنم. ورنه هر طور صلاح می دانید جمعش کنید.,0.869565217391,0.0946269620172 73b0d46b43810506,يوليا عودت الى هذه الصفحة بعدما شاهدت اجمل ابتسامة فى الدنيا يارب تكون لى بصفة خاصة الى ما احيا. احبك حسين,1.0,0.0946151380181 469d7ed13a4b3c20,"kdzljbz , nflzfk , i ma bjt z , kuhrh jatlu hjatker kayli safm",0.4,0.0941732302479 02ec95bbd8503d26,李白 月下獨酌 中古漢語朗讀 * 李白 將進酒 中古漢語朗讀 * 李白 靜夜思 中古漢語朗讀 * 杜甫 佳人 中古漢語朗讀,0.666666666667,0.0938889559486 fd298ad071c03bd4,"Khp पति पेप्सी को सामने रख के उदास बैठा था पत्नी आयी और पेप्सी पी गयी और बोली आज आप उदास क्यू है ? पती - आज तो दिन ही खराब है ! सुबह तुमसे झगडा हो गया , रास्ते में कार ख़राब हो गयी , ऑफिस लेट पहुँचा ! बॉस ने नोकरी से निकाल दिया .. अब सुसाइड करने के लिए पेप्सी में जहर मिलाया था .. वो भी तुम पि गयी 😳 😳 😂 😅",0.784090909091,0.0935412715932 4c44ec9f8532ee22,Hivra Dam Khadak deola,0.6,0.0932064455498 0e4ce7b45bf908b9,سیاهه فعالیت را از اینجا می توانید ببینید اما اجمالا آریجانی از حدود ۱/۵ پیش و در اعتراض به تبعیض و استاندارد دوگانه ویکی رو ترک کرده، امیر ابراهیمی هم از همون زمان کناره گیری کرده و برگشتن خودشو منوط به رسمی شدن ویکی کرده، موسی هم هر ماه چند ویرایش جزئی انجام می ده، امیر اورموی هم از چند ماه پیش رفته خدمت سربازی. بنابرین کاربر فعال ویک من و ۲- ۳ نفر به صورت متناوب در ماه هستند که البته زیاد با فعالیت در ویکی آشنا نیستند. ما از شما و سایر اساتید و دوستان انتظار زیادی نداریم همین که در ماه ۱۰-۲۰ ویرایش هرجند جزئی انجام بدید واسه ما کافیست.,0.991150442478,0.0931713110839 7ebcc74686ca3da4,skdsjfyaba balsdugaldskj bgh hgs asdfkpkdi akjdsjgkfd aksdfasjdfyewort q ldf gad lid yfewu wdvfjsudwyq ik ifry e L UEYTAU AKF JHA O Q LRIHREKJFDFSS ERFL AJRH SKFDFBWAEP U,0.333333333333,0.092555640964 d9ba74efa9c0e3f6,"हर एक व्यक्ति के जीवन में जरूरी होता है , की उसके अपने उसे मान सम्मान दे , जब ऐसा नहीं हो पाता , , , तो उस व्यक्ति की काबिलियत पीछे छुट जाती है , और अंत में वो असफल बनकर रह जाता है , हार मान लेता है , इंसान सारी दुनिया का सामना कर सकता है , ... लेकिन जब अपने ही सताने लगे , तो ह्रदय रोने लगता है , , इसीलिए एक-दूजे को समझकर , एक दुसरे को मान दे और अपनों का साथ दे ! ! ! सुनीता ! ! !",0.747572815534,0.0913964766203 daeb86eb73d14869,"شئت أنت أم أبيت , رأيك يهين الشعب السوري , أنا أرى أن سورية فوق الجميع , و أرى أن مصر هي قطعة أرض من سورية سرقت منا ما رأيك إذا كنت تحويلها هكذا أنا لا أحاسبك لماذا تقول أن مصر هي القوة العظمى هذا رأيك لكن لا تضع علم مصر فوق خريطة سورية لأن سورية لا تهان يحق لي الدفاع عن وطني لا أسمح لك بالتكلم معي بهذه الطريقة الزم حدودك و اعرف من أنت و اعرف مكانتك و لا أسمح لك بوصفي بالمهان أمثالكم من يهانون "" ' سورية فوق الجميع و بالأخص فوق مصر لولا سورية و العراق لن تكون مصر قوة عظمى كما تتخيل لا يحق لي التعقيب عن رأيك إلا إذا كان يمس وطني , هذه إهانة كبرى لسورية لن أسمح بها ! رغم أنفك و أنف الجميع مجددا سورية فوق الجميع و فوق مصر لا أفهم العربية أكثر منك , بل أنا سيجد اللغة العربية , و بما أنك تريد إشعال نار الغيرة فيبدو أن عقلك لا يساوي عقل النملة , أما إنعقك تحاول إشعال غيرتي هذا الذي يدل على ضعف موقفك , و يبدو أنك محاور غير ذكي , و لاتفهم بأسلوب الحوار , و كل ما تريده هو استفزاز محاورك , إذهب إلى مدرسة الحوار ثم ارجع و حاورني , أنا لن أصغر عقلي مثلك و أنا حظيت بما أريد أيضا , لقد عكست أخلاق بلدك فالمثل يقول أخلاق المرء مراة لنفسه للأسف كنت أظن أن أهل مصر ناس طيبون , لكنهم ( أو بعضهم ) تافه و صغير العقل و كما قلت سابقا الزم حدودك و اعرف منزلتك و مقامك , و اعرف من تكلم شكرالأخلاقك الرفيعة السادات يستدل ؟ أضحكتني من هو السادات ؟ إذهب و أحضر لي فيديو يقول النبي فيه من هم أصل العرب سيدنا إبراهيم من حضارة بابل , أي عراقي و يقال أن سيدنا ادم نزل في اليمن اذهب و اختر شخصيات يأخذ برأيها و يعرف من هي و من مكانتها , بالمناسبة الفيديو و نقاشك أضحكني و لم يحرق قلبي , بل زادني وثوقا بأن عقلك صغير و لست محاورا جيدا",0.769801980198,0.0911963280331 af5a875ac9cca5a0,โหงวก๊วยกระทงเผือก โหงวก๊วยกระทงเผือก โหงวก๊วยกระทงเผือก เป็นอีกหนึ่งเมนูอาหารจีนที่ภัตตาคารอาหารจีนต่างก็จัดให้เป็นส่วนหนึ่งในเมนูอาหารโต๊ะจีนเลยก็ว่าได้ เพราะรูปร่างหน้าตาและรสชาตินั้นน่ารับประทานเป็นอย่างมากเลยที่เดียว โดยวัตถุดิบที่นำมาประกอบอาหารนั้นล้วนแล้วแต่มีคุณภาพเป็นอย่างมากเลยทีเดียว ซึ่งในภาษาจีนนั้นคำว่าโหงวนั้นแปลว่า5 ดังนั้นวัตถุดิบที่นำมาทำนั้นจึงประกอบไปด้วย เก๋าลัก แป๊ะก๊วย แห้ว เม็ดมะม่วง เผือก ตามด้วยเนื้อสัตว์เช่นเนื้อไก่ และเครื่องเคียง ที่เป็นผักอักหลายอย่าง อาทิเช่น พริกหวานสามสี หอมใหญ่ พุทราจีน โดยนำเครื่องปรุงทั้งหมดนั้นมาผัดรวมกัน ตามด้วยเครื่องปรุ่งรสต่างๆ ซึ่งจะมีรสชาติที่ออกมาเค็มนิดๆหวานน่อยๆ จึงจะอร่อย จากนั้นก็นำใส่ลงในกระทงเผือกที่เตรียมไว้นั้นเอง จัดได้ว่าเป็นเมนูอาหารจีน ที่มีรูปร่างหน้าตาที่สวยงามอีกทั้งยังตามมาด้วยคุณค่าทางโภชนาการที่มากมายหลายอย่างเลยทีเดียว,0.72972972973,0.0910262449715 49e3120653c0f890,Щасливого Дня Валентина від Валентина keep in touch . Усього найкращого у всьому ! ! ! ! ! ! ! ! ! Wind nail mail ru,0.3,0.0905707151844 4c4e0170b979f179,واحب اقول كلمة بالنسبة لاموالى فهى ثرواتى اما بالنسبة للمستوى الفكرى بينى وبينهم استطيع ان ارسل لهم مقالة بهذا الشأن لتثقيفهم وتنشيط وعيهم حتى لا يصابو بالزهيمر ويعتمدو على شياطينهم فى الازى الكونى . وانتم تعرفون ان قلمى من رصاص يستطيع ان يفعل الكثير ويكشف الكثير ويجب عليهم ان يخجلو من فشل جميع مخططاتهم على مدار سنين الحرب الطويلة رغم ان لديهم الكثير من العملاء واذا كانو يريدو ان اوضح لهم اشياء بشان سياستهم الغامضة فانى من الممكن ان اجعل الوان وجوههم كالتلفزيون ايام ما كان بالابيض والاسود هههههههههه وارجو ان لا يحرفو كلماتى للعنصرية البغضاء لانى احب جميع الالوان الحقيقية وليست الباهتة او المزيفة. واشكر اكرانيا العظمى على اشياء كثيرة بيننا اكبر بكثير من مقالبهم وادعوهم للتعقل حتى لا تصبح امورهم اكثر سوءا. ولديا المعرفة بذلك فيجب عليهم ان يتعلمو كيف يتعاملون معى بالقدر المناسب والحقيقى حتى لا يرى العالم نقصهم واشياء اخرى كثيرة تضعف من وجودهم فتصبح صورتهم غير لائقة امام العالم. تحياتى اليكى يوليا والى قادة اكرانيا. والى الجنود البواسل. ولكم منى وحبى ووفائى الدائم متمنيا بالكثير من الطموحات التى نسير على دربها من اجل مستقبل افضل للبشرية. وتحياتى ايضا الى الجيل الصاعد . لكم منى جميعا حبى واشواقى.الراسل/ حسين امين,0.989690721649,0.0900621557473 6a3ca42a98b7a287,gdj eyb pizehgdsggggggggggggggggggggggggggggggggggrf d edhgw WERqw trftg,0.625,0.0899053377779 61f378e93b2936c6,"iu hu luylu , khghg khgfkgfkkhubkhkh i lhlighlglhglhgjhglgl kygl hggl ljlj lhjk k jj kbkj jhluhluh kjhk hhk kjljhlkjhlkhlkjh , kjhglhglhgh hkh jhglkjhg dddd ukhgkhgkjg ddhd ljhlhljhlkhlhhl dgfjffvfvfjlfdljvfjhlfdgh lijhlihlhjkhljhlkjhlkjhh mjhgjhgkjggkjh , hgf , ljhljhjhlhlhl luy jhgkjhkjh , jd hgh hjh ghtf hghf jhjhj jhjhh vvvvv vvvvv kitcat :) :)",0.3625,0.0898087324855 a1b0061d01d91e2f,"प्रस्तावना आज च्या जगामध्ये घडत असलेल्या गोष्टी पाहून आम्हास खूप वाईट वाटते आणि थोड्या वेळासाठी मनामध्ये विचार येतो कि राजे आपण पुन्हा जन्माला . मग आम्ही या वरती विचार केला कि आपली जी हि वृत्ती आहे कि राजे आपण पुन्हा जन्माला या हि बददली पाहिजे राजे कुठे दूर नसून ते आपल्या ह्रुदय मध्ये वास्तव्य करतायेत ते घडत असलेल्या सर्व गोष्टी पाहत आहे त्यांना खूप वाईट वाटत असेल विचार करत असतील कि याच मातीमध्ये आम्ही स्वराज्य निर्माण केली , आमच्या रयतेसाठी त्यांच्या हितासाठी , स्त्रींच्या रक्षणासाठी आम्ही हे स्वराज्य निर्माणाचा पाऊल उचलं पण आम्ही कदापि विचार केला नसेल आमच्या स्वप्नामध्ये सुद्धा कि आमची रयत ऐवढे स्वार्थी होईल .आपल्या स्वार्थासाठी आपल्याच माणसाचा त्याग करेल .आपली विचार सारणी अशी का झाली हे पाहून आम्हास खूप वाईट वाटते पण काय करू शकतो काही नाही एक गोष्ट करू शकतो ते म्हणजे एक दिवस आपण जागे व्हाल आणि पेठून उठाल अन्याय , अत्याचार करणाऱ्या विरोध याचीच वाट पाहतोय तरी हि कोणी पुढे येउन या स्वराज्य निर्माणाचा धाडस दाखवत नाही याचा आम्हास खूप वाईट वाटतं. मग आम्ही निर्णय घेतला कि आम्ही आमच्या राजाच्या स्वप्नास तडा जाऊ देणार नाही आम्ही सदेव प्रयत्नशील राहो दिवस रात्र एक करू पण आम्ही या मातीसाठी , या मातीत राहणाऱ्या रयतेची , भगिनीची रक्षण करू या मध्ये आमचे प्राण गेली तरी आम्हास पर्वा नाही असा भ्याड पणे पळून जाणे म्हणजे आपल्या स्वराज्याचा स्वाभिमान गमाण्यासारखा आहे . मग ठरवला आम्ही आपल्या स्वार्थी विचाराने चाललो तर अशी हजारो वर्ष लागतील .आणि त्या वरून विचार केला कि आपले देवत छत्रपती शिवाजी महाराज यांच्या विचाराने चाललो तर हे नक्की शक्य होईल केवळ आम्ही विचार करून चालणार प्रत्येकाने विचार करायला हवा प्रत्येकाने त्यांच्या पाऊला वरती चालली पाहिजे त्या मुळे आम्ही ठामपणे विचार केला शिवबांच्या विचारा वरती पुस्तक प्रकाशित करण्याचा विचार केला या पुस्तकाद्वारे आपल्या मध्ये जागृत पण येईल त्यांच्या विचाराचा अभ्यास करून त्यांच्या पाऊला वरती चालाल हा विचार डोक्यामध्ये ठेऊन हा विचार केला आज वर आपण फक्त त्यांच्या पराक्रमा बद्दल ऐकलं आहे पण खरं मनापासून त्यांच्या विचाराबद्दल जाणून घ्याचाचा प्रयत्न कधी केलाच नाही .कघी हि त्यांचे विचार आत्मसात करण्याचा प्रयत्न केला नाही खरच खूप लाजीर वाणी गोष्ट आहे त्यांचे गुणगान तर गातो पण त्यांच्या विचारावर त्यांच्या पाऊला वर चालण्याचा कितपत प्रयत्न करतो . हे पहा पराक्रम हा विचाराने घडत असतो .त्यामुळे जर पराक्रम घड्व्ह्याचा असेल तर आपली विचार सरणी बद्दली पाहिजे तरच या मातीमध्ये जन्मल्याचे सार्थक होईल . जीवनामध्ये कोणतीही चांगली गोष्ट करायची असेल तर शिवविचारावर भर दिला ( @ ) जगदंब ( @ ) धन्य ते शिवराय ! ! आणि धन्य ते शंभूराजे!!स्त्री जातीचा मान राखुनी तूच शिकविले जगाया.तूच दे सामर्थ्य आता हि जाणीव अंतरी उतराया ๑ ۩ ۞ ۩ ๑ ๑ ۩ ۞ ۩ ๑ ๑ ۩ ۞ ۩ ๑",0.893333333333,0.0896002926606 7f3fa7e149f4f320,"gduisugjfgbjsklgujsbvflbsklfgfklguuuuuuuuuuuuuuuuuisjgbvufifk , bjkbfgudslfignbjl nuuusfibng iggfi nuibujissssssipgbuegbiebwiyyerpwuieyneuwhnyraphnnnnnnnnnnnnnnnnnhuvyvqhnynhunuoqyivrrrrrrrrrrrrrrrrrrrrrqyhviynuyhnhvhyvuyhnnnnnyhhhhhhhuuoythnovyiqvyiurnuienyohvqvhvqqhvhniqoyurhuovuyhoveyhuyouvyhvonvnhynhiveiuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuhvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvqnqoyhnuyuvhnnihhhhhhhhhvquuuuuuunvoyqhqyyyyyyyyyyyyyyyyyhnuqoenqonqnoqnhyhqybyhbbogohghguhoqehtbnytrbbbbbbbbbbbrbvytqyubtyotqeyig",0.833333333333,0.0895400348456 b48b48b74dd07288,उदशाह मेरा गाँव है इसके पास में १० किलो मीटर पर सफीपुर सहर है मेरे गाँव का प्रधान और रोजगार बहुत ही भ्रष्ट हैं दोनों के खिलाफ लगभग ५० शिकायतें है मेरे गाँव में नरेगा के अंतर्गत काम न करवाके सरे रूपये ग्राम प्रधान और बी डी ओ और रोजगार सेवक सभी मिलकर डकार जाते हैं गाँव में आज भी काम नहीं होते है रूपये निकाल कर सभी अधिकारी बहुत लम्बा घोटाला करते हैं,0.936708860759,0.0894208774803 36e7bf12c78d73c9,"CHAYYYYYYYEAESDFSDFSDFGDFGDF , GJDFHGNDFJHGDFVGKDFJGJDFGKJDF KGJD FKSGJDFKJGLCD VFGJICDGJDFHGUIFDGFObama",0.833333333333,0.0890469882372 d2ef2d76fe9aa1db,Εειμη ελλιναςς κ επεξεργαζομε αρθρα.μενω στου δρομου με τρυπιο βρακι επαγγελμα¨ζιτιανους με παιδια ελειστε,1.0,0.0888930428022 b78d461b524a134b,erkgegjegjkelleke eteteteteeeee r tetetlete l telte : L TLELTEltetlelt,0.416666666667,0.0888393226236 afc6a32cc43e3c59,"= = Шлюха ! ! ! Обломалась со своими банами ? = = Скоро ты допрыгаешься , говнюк !",0.428571428571,0.0886236823364 4769781a3d6a776a,ΓΑΜΩ ΤΟ ΜΟΥΝΙ ΤΗΣ ΜΑΝΑΣ ΤΟΥ ΜΑΛΑΚΑ ΠΟΥ ΕΓΡΑΨΕ ΑΥΤΟ ΤΟ ΑΡΘΡΟ Ο ΠΑΤΕΡΑΣ ΤΟΥ ΕΙΝΑΙ ΠΟΥΣΤΑΡΑ ΚΑΙ Η ΜΑΝΑ ΤΟΥ ΓΑΜΙΟΛΑ ΨΟΛΑ ΠΟΥΤΑΝΑ ΣΤΗΝ ΦΥΛΗΣ Η ΑΔΕΡΦΗ ΤΟΥ ΕΙΝΑΙ ΛΕΣΒΙΑ ΚΙ ΑΥΤΟΣ ΚΟΛΟΓΛΕΝΤΗΣ ΣΚΑΤΙΑΡΗΣ,0.945945945946,0.0884935238553 a02078d724afca97,= = सिरोही जिले के शिवालय = = * सारणेश्वर मंदिर सिरोही * आंबेश्वर मंदिर सिरोही * भूतेश्वर मंदिर भूतगाँव * बुडेश्वर मंदिर भूतगाँव * कांबेश्वर मंदिर शिवगंज * गौतमेश्वर मंदिर * लीलाधारी मंदिर मंडार * परशुराम मंदिर कोजरा * रिषेश्वर मंदिर नाँदिया * मार्कुण्डेश्वर मंदिर अजारी * अचलेश्वर मंदिर अचलगढ * अग्नेश्वर मंदिर देलवाडा * सुरतानेश्वर मंदिर लोटाणा * भूवनेश्वर मंदिर डोडुआ * वोवेश्वर मंदिर झाडोली वीर * भीमेश्वर मंदिर भीमाणा * सोमनाथ मंदिर रोहिडा * विकेश्वर मंदिर ओडा * नीलकंठ मंदिर जावाल,0.709302325581,0.0883388444723 fb89bc7db046056f,"= = ਵੇ ਸਾਰੇ ਸੁਣੋ ......... ੲਹ ਰਾਧਾ ਸਵਾਮੀ ਜੇ = = ਤੂੰ ਸਿਖ ਨਹੀ , ਗੂਰੂ ਤੋ ਬੇ-ਮੁਖ ਹੈ ! ਅੰਨਦ ਸਾਹਿਬ ਪੜ , ਪਤਾ ਲੱਗਜੂ !",0.633333333333,0.08812484951 0b7b59cc5daacc79,सालु म बिना तिमी र तिमी बिना म बाच्नै नसक्ने होइन तिमीले पनि म भन्दा हजार गुणा राम्रो जिबन शाथी पाउली र त्यस्तै मैले पनि पाउला तर हाम्रो बास्तबिकता त्यो होइन । यो मन्ले चाहेको मान्छे हौ तिमी पहिलो नजरमै मन पर्यो तिमी बिनाको ससांर अपुरो छ जस्तो लाग्यो किन किन यो मन्ले केवल तिमीलाई मात्र खोजिरहन्छ तिमीलाई मात्र चाहिरहन्छ यो मन्ले त अझ के भन्छ थाहा छ सधैभरी तिमी मेरै हो रे तिमी बिना त यो ससांरको संरचना नै भङ्ग हुन्छ रे मन तिमी तिरै गइरहेको छ यो मन तिम्रै यादमा पागल भईरहेको छ जुन दिन तिम्रो र मेरो भेट भयो त्यो दिन देखी म तिम्रै यादमा हराईरहरायको छु तिमी बाहेक अरु सोचेको पनि छैन तिम्लाई भेटेको त्यो ठाउ तिमिसगँ गरेका कुरा ति कुराहरु तिमीसगँ बितायका ति पलहरु क्षण हरु आँखाभरी घुमिरहेका छन,0.985185185185,0.0880464953793 1ea4c3f707ea3469,lmj kdjbd ? ijew jfhuw nfjwe fbhnf whj,0.875,0.0873321036224 29bf6ac9957af1c5,야 너 요즘 안 보여. 나 사실 너 좋아해 ... 안녕,0.909090909091,0.0872439839201 ff9bbe71e8996418,سوال ۱۰ سوال ۱۰ ۔ کیا اُم المومنین حضرت عائشہؓ کا مولاعلیؑ کے مقابل خروج حق تھا؟ مستند روایات سے پتہ چلتا ہے کہ مولا علیؑ اور حضرت عائشہؓ کے مابین مخاصمت واقعہ افک کے بعد سے ہی شروع ہوگئی تھی جو کہ بڑھتے بڑھتے عداوت اختیار کہ گئی۔ دورانِ واقعہ افک حضوراکرمؐ نے غمغین حالت میں مولا علی ؑ سے مشورہ کیا تو مولا نے آپ کو غم و اضطراب سے بچانے کے لئے یہ مشورہ دیا کہ اللہ تعالیٰ نے آپ پر کچھ تنگی نہیں فرمائی اگر افواہوں کی بنا پر عائشہؓ کی طرف سے کچھ تکرر طبعی ہو گیا ہے تو عورتیں اور بہت ہیں۔ علاوہ ازیں آپ کا یہ تکرار اس طرح بھی رفع ہو سکتا ہے کہ بریرہؓ جو صدیقہ عائشہؓ کی کنیز ہیں۔ اُن سے اُنکے حالات کی تحقیق فرما لیجئے‘‘۔ مولا علیؑ کے اس مشورہ کا حضرت عائشہؓ کو بھی پتہ چل گیا تھا جس کی وجہ سے صدیقہ دِلی طور پر مولا ؑ سے ناخوش تھیں۔ ہادی برحقؐ کی رحلت کے بعد مولا علی ؑ نے چھ ما ہ تک خلیفہ اول سے بیعت نہ کی۔ اِس دوران مسئلہ فدک بھی پیش آیا جس میں حضرت عائشہؓ نے سیدہ فاطمہؓ اور مولا علی ؑ کا بھی ساتھ نہ دیا اور اپنے والد حضرت ابو بکرؓ کی روایت کردہ حدیث کی تصدیق بھی کی۔مجھے مفتی صاحب کی اس بات سے قطعی طور پر اختلاف ہے کہ خلیفہ اول کے دور حکومت میں مولا علیؑ کے گھر کو آگ لگانے کے لئے کھڑیاں اس لئے جمع کی گئیں تھیں کیونکہ گھر میں منافقین اور فسادی جمع ہوگئے تھے۔ سبحان اللہ مفتی صاحب ایک طرف آپ فرما رہے ہیں کہ حضرت عائشہ کے گھر اہل بیت رسولؐ بھی بلا اذن داخل نہیں ہو سکتے تھے دوسری طرف آپ مولا علی ؑ کے گھر میں منافقین جمع ہونے کی خبر دے ر ہے ہیں۔ آپ کا یہ بیان کیا متضاد نہیں؟ کیا مولا کا گھر اہل بیت رسولؐ نہیں تھا؟ اپنی اس غلط بیانی پر ذرا خودی غور فرمائیے۔ نیز جن کو آپ مولا علی کے گھر میں منافقین اور فسادی کہہ رہے ہیں ان میں چند صحابہ کرام مثلاً حضرت عباسؓ بن عبد المطلب، حضرت زبیرؓ ،حضرت طلحہٰ، حضرت مقدارؓ ، حضرت سعد بن ابی وقاص اور خود مولا علیؑ بھی شامل تھے۔ نیز سیدہ فاطمۃ الزھرہؓ و حضرت حسنین ؑ بھی گھر میں موجود تھے ۔ لہٰذہ کیا مولا ؑ کے گھر کو آگ لگانے والے ارباب اختیا ر حضور اکرمؐ کی وصیت بھی بھول چکے تھے جس میں صحابہ کرام ؓ کو تلقین کی گئی تھی کہ میرے شہزادوں کا احترام ، محبت اور تعظیم کرنا۔ ان سب واقعات کے وقوع پذیر ہونے کے باوجود یہ سوال اٹھتا ہے کہ کیا مولا علیؑ اتنے بے بس اور لاچار تھے کہ لوگ ان کے گھر کو آگ لگانے کا پروگرام بنا رہے ہوں اور مولا ؑ خاموش ہیں؟ جواب میں عرض ہے کہ مولاؑ نہ تو خوفزدہ اور نہ ہی لاچار تھے۔ بھلا یہ کیسے ممکن ہے کہ جنگ اخزاب اور جنگ خیبر کا فاتح ایسے موقع پر خوفزدہ ہو۔ اصل بات مولا ؑ کی دور اندیش اور حضور اکرم ؐ کی آخری لمحات میں مولا ؑ کی گود میں وصیت تھی ’’ علی میرے بعد تجھے مکر و ہات سے پالا پڑے گا تو دل تنگ نہ کرنا اورصبر کرنا‘‘حضورؐ کی یہ وصیت مولا کے لئے پتھر پر لکیر تھی پھر بھلا صبر کا دامن کیسے چھوڑ دیتے ! لکھنے والوں نے تو بہت کچھ لکھا ہے بلکہ لکھوایا گیا ہے۔ لیکن مولا ؑ چونکہ علم دھبی جو اللہ تعالیٰ کی طرف سے حضور اکرمؐ کے توسط سے ودیعت ہوا تھا سے بہتر طور پر سمجھ سکتے تھے کہ مناسب کیا ہے اورکیا نا مناسب ہے ۔ یہی وجہ تھی کہ مولا ؑ نے خلیفہ اول سے خلیفہ ثالث تک پورا پورا تعاون کیا۔ اب ہم آتے ہیں اصل سوال کی طرف کہ کیا اُم المومنین حضرت عائشہؓ کا مولا علیؓ کے مقابل خروج حق پر مبنی تھا؟ اس سوال کا جواب بہت تفصیل طلب ہے۔ مختصراً عرض کردوں کہ ماں جی تمام امھات المومنین سے زیادہ علم رکھتی تھیں۔ آپ نے قرآن پاک کی مندرجہ ذیل آیات بھی یقناًپڑھی ہونگی:۔ ۱:۔ سورۃ الاحزاب ( آیت ۶)۔ ترجمہ : نبیؐ مومنوں کے ساتھ خود ان کے نفس سے بھی زیادہ تعلق رکھتے ہیں۔ اور آپؐ کی بی بیاں ان کی ما یں ہیں۔ ۲:۔ سورۃ الاحزاب ( آیت ۳۱-۳۲)۔ ترجمہ : ۳۱ اے نبی کی بی بیو تم معمولی عورتوں کی طرح نہیں اگر تم تقویٰ اختیار کرو۔ ۳۲ : اور تم اپنے گھروں میں قرار سے رہو۔ مذکورہ بالا احکام کی روشنی میں ممکن ہے حضرت عائشہؓ نے صحابہ کو تلقین کی ہو لیکن زیادہ احتمال یہی ہے کہ دیرنہ عدوات جو کہ انسانی فطرت ہے اورمشیروں کے غلط مشوروں سے خروج ہوا۔ ماں جی کو یقین تھا کہ مولا ؑ قاتلانِ عثمان میں شامل نہیں ہیں بلکہ مولا علیؑ نے آخری دم تک ؟؟؟؟ اپنے شہزادوں کے حضرت عثمانؓ کا ساتھ دیا۔ حضرت عائشہؓ ایک عالمہ فا ضلہ ام المومنین تھیں ایک عرصہ حضور اکرمؐ کر قربت میں گزارہ تھا اور اس پر فخر بھی کیا کرتی تھیں۔ آپکے علم میں یہ دو حدیثیں تو ضرور ہونگی جن کا مفہوم یہ ہے:۔ ۱ : اے علی میرے بعد تمہارے ساتھ یہ اُمت دعا کرے گی تم میری ملت پر زندہ رہو گے۔ ( کنز العمال علی متقی الجز سادس ۱۰۷۲ ) ۲ : اے عائشہؓ میرے بعد تم ایک گروہ کی قیادت کرو گی جو نا حق ہو گا۔ مقام خواب پر تمہاری اونٹنی پر کتے بھونکیں گے۔ ۳ : حضرت عمار بن یاسر کو ایک باغی گروہ قتل کرے گا۔ اتنی واضح احادیث ہوتے ہوئے بھی مولا علیؑ کے خلاف خروج چہ معنی دارد۔ پھر مولاؑ بھی وہ جن کی شان شیخ سعدیؒ نے فرمایا۔ بعدازمصطفےٰ در کل عالم نہ بُد فاضل ترو بہتر ز حیدر ؑ بہر حال ماں جی نے خروج جن حالات اورجس وجہ سے کیا ظاہری تو ایک فطری عداوت ہی لگتی ہے۔ ورنہ مائیں تو اولاد کو صُلح و امن کا ہی مشورہ دیتی ہیں البتہ انکے خروج سے نہ صرف جنگ جمل ظہور پذیر ہوئی بلکہ جنگِ صفین، واقعہ حُرہ، سانحہٰ کربلا اور نہ جانے کتنے فتنے برپا ہوئے اور ہوتے رہیں گے۔یقیناً ماں جی کو اس حدیث مبارکہ کا بھی علم ہوگا جس میں حضور اکرمؐ نے فرمایا ’’ عنقریب میرے اہل بیت میرے بعد میری اُمت سے قتل و غارت دیکھیں گے اور ہمارے سب سے زیادہ بغض رکھنے والے دشمن بنو اُمیہ، بنو المغیرہ و بنو مخدوم ہونگے ( حدیث صحیح بخاری باب الفتن نمبر ۷)۔ ‘ ‘ مندرجہ ذیل چیدہ چیدہ واقعات عالم اسلام میں بد ن,0.958891867739,0.0870006285935 64163210e839d7d1,= = in eck = = سلام من حدود يكسال هست كه با اك آشنا شدم و صبر زيادي براي ديدن شما در طبقات درون ندارم،ومشكل بزرگي كه فكر ميكنم بخاطر آن نميتوانم شما را ببينم اينست كه متاسفانه سيگار ميكشم البته چند بار سعي كردم سيگار را ترك كنم ولي نشد و شرايط بدي پيش آمد كه دوباره شروع كردم،من از شما خواهش ميكنم كه كمكم كنيدهر كارمائي كه براي رسيدن به عشق سرراهم هست را بتوانم مستهلك كنم و خواهش ميكنم گوشه اي از طعم عشق را به من نشان دهيد تا بكمك شعف آن و شما بتوانم در راه رسيدن به خانه قدم بردارم با تقديم صميمانه ترين درودها هميشه منتظرتان هستم بركت باشد,0.909836065574,0.0868836220031 11e50a28405a7910,= = اللغة المروية القديمة رموز لم تكتشف بعد = = [ [ File : Http www arab load info / uploads mara wia jpg thumbnail center للغة المروية http classic aaw sat com / details asp section article iss ueno تعد اللغة المروية القديمة من أقدم اللغات المكتوبة على وجه الأرض سوى أن رموزها لم تفك بعد، حيث يرى المؤمنون بنطرية المؤامرةأن وراءعدم فك رموزها مؤامرة من الآثاريين المصريين والأجانب المتواطئين معهم لتظل الآثار السودانية مغمورة ومجهولة ولا قيمة لها، لكني أظن أن البحوث ما تزال جارية لكنها لم تصل بعد للنهاية فكل اللغات القديمة استغرق الكشف عنها وقتا طويلا فاللغة الهيروغليفية مثلا صمدت لثلاث ألفيات ! فما أن توصل شامبليون الى المفتاح من اللغة القبطية القديمة التي كانت تنطق ولا تكتب حتى تيسرت له الترجمة ... سادت « مملكة مروي » ما بين 2500 ق. م. إلى القرن الخامس الميلادي، معاصرة للحضارة المصرية القديمة، وامتدت من الأقصر، جنوب مصر الى وسط السودان حول حوض النيل. لكن بعض المؤرخين يرون أن الحضارة المصرية، سبقت الحضارة المروية في تدوين أو كتابة اللغة بفترة طويلة، ويستدلون على هذا بأن ملك مروى الشهير ترهاقا الذي غزا مصر في القرن السابع ق.م. كتب واصفا غزواته وانتصاراته باللغة الهيروغليفية، إلا أنه في القرن الثاني ق.م. بدأت كتابة اللغة المروية. وتعود أول محاولة للعلماء الغربيين لمعرفة اللغة المروية القديمة إلى أكثر من 150 عاما، أي بعد وقت قصير من النجاح في الكشف عن اللغة المصرية القديمة. لكن العلماء فوجئوا بأن اللغة المروية هي لغة معقدة ومختلفة تماما عن اللغة المصرية القديمة التي تلجأ الى التصوير أو الرسم لطائر أو عين إلخ، بينما اللغة المروية صغيرة الحجم وشبيهة بالأرقام وتبدأ من اليمين للشمال، وبها حروف صغيرة وأخرى كبيرة « كالإنجليزية » . وفي العام 1911 توصل عالم المصريات البريطاني جريفث الى معرفة نطق أو قراءة اللغة المروية، ولكن دون فهم معانيها. والانجاز الذي أعلن عنه مؤخراً في الخرطوم، هو نجاح العلماء الآن، في ترجمة 100 كلمة تتضمن 40 حرفا أساسيا، وإن لم يتوصلوا بعد الى معرفة كل مفردات اللغة المروية,0.809248554913,0.0867053184556 e7a398d6a31b3784,الجمهوريات تجتاح الخليج العربي ففي الامارات العربية المتحدة القي القبض على جميع الاسر الحاكمة الشيطانية ويتم تدارس كيفية الاعلان على الشعب عن حقيقة من كانوا يحكمونهم طوال سنوات طويلة وللذي لاحظ على الجزيرة حيث ظهر الشيطان محمد بن راشد ال مكتوم في لقطة سريعة وهو يبدو كالمجنون او المثار بدرجة غير عادية افقدته السيطرة على فعله وانفعالاته وعدم استقرار العقال على رأسه هذا اذا كان ذلك الشخص هو هو وان كنا نشكك في الشخصية التي ظهرت اصلا وحتى في مصر وفي الدول العربية كلها دون استثناء تقريبا هناك ترتيبات تجري ليس على مستوى الدول العربية بل على مستوى العالم للاعلان عن تغييرات ستكون الاشمل والاخطر والاكبر في تاريخ البشرية كلها حيث سيعلن عن وجود الشيطان وانتهائه في وقت واحد وتوقيت واحد في كل دول العالم مما سيجعل المفاجأة مدوية اكثر مما يتصور واذا كنا تحدثنا عن دبي فان ماينطبق على دبي ينطبق على باقي الامارات السبع وكذلك هو الامر في سلطنة عمان وفي الكويت وفي السعودية وفي البحرين وفي الكويت اما اليمن فقد اصبح في حكم المؤكد ان الشيطان علي عبدالله صالح واسرته في السجن او انه الان في هولندا بانتظار محاكمته في محكمة الجنايات الدولية المتخصصة في جمهورية هولندا الحرة وكذلك هو الحال على الشخصيات الرئيسية والشيطانية في كل الدول العربية وفي غيرها وما نشاهده من شخصيات في هذه الدول هي احدى اثنتين لاثالث لهما كما شاهدنا الشيطان محمد بن راشد فهو اما مسجون او انه قناع لشخصية الشيطان محمد بن راشد وكذلك هو الحال في كل الدول العربية التي للاسف اتضح ان الشيطان كلها كان يحكمها الشيطان بل واحتل كل مفاصلها ولم يترك اي مفصل او منصب او مركز الا واحتله وهمش الانسان واوغل في ظلمه له وتمتع الشيطان بكل خيرات البلاد واثرى ثراءا فاحشا وافقر الشعب ولذلك لايعتقد ان من وقفوا مع هؤلاء سيسلمون من غضب شعوبهم وخاصة عندما تعلن الحقيقة عارية عندها لن يضمن احدا منهم من الشعب عوضا عن محكمة الجنايات الدولية المتخصصة في جمهورية هولندا الحرة smsm maktoob blog com,0.984326018809,0.0866190864797 9b30a5bc1488b52a,eruhu hereh eurh uehrh hier,0.8,0.0866163300809 1797445c968fbf2c,= = الحياة حلوة ! ! ؟؟ - Ahmad Sacca = = الحياة حلوة ! ! ؟؟ عنجد الحياة حلوة لازم الواحد يعيش حياتو و لازم ننبسط بس اهم شي انوا نرضا بقسمة الرب ... طبعآ حياتك رح تنقلب إذا حاولت تغير الواقع!. نتعجب احيانآ من هاي الجملة بس في كتير ناس بحاولوا يغيرو الواقع .. يعني التصميم و الإرادة حلوة بس الناس الرجعية و يالي تفكيرها رجعي و من ايام حرب الشلويط ما بنفع معهم التفاهم ..... بتحاول و بتفشل و بتعيدها لأنو كل انسان عندو ارادة طبعآ، بتحاول و بتكون رح تنجح بس الناس الرجعيين و الفاشلين رح يهبطو معنوياتك و إذا كنت بدك تنجع ببطل إلك نفس تنجح ... يعني كلامهم بكون مثل الشفرات بمزع مزع ،و المزع ما بتخيط لا عند دكتور ولا سكافي .... الله يشفيهم .. منرجع لنقطة الحياه الحلوةيعني عشنا و شفنا غدر و صدق و حب و كره و حقد و مودة الحياه شو ضل ؟؟؟؟؟؟؟؟؟؟ لازم نجرب الموت . ممكن يكون الموت هوه الحل بس يا ترى رح نستنا كثير ؟؟؟ شو كانت حلوة ............. kaaa aant احمد السقا,0.754807692308,0.0864990243588 e7e9ea47db486e88,"EMILY DICKINSON ΠΟΙΗΜΑΤΑ Μετάφραση Τάκη Μητσακάκη ΕΚΔΟΣΗ ΠάΝ-ΘΕοΝ με ΠαΝ-ΘέΑ ΑΘΗΝΑ 2011 .................................................................................................... Copyright : Τάκης Μητσακάκης , Λεπενιώτη 6 , 105.54 Αθήνα. Τηλ. 211/1832885 Η αναδημοσίευση ολόκληρου ή μέρους των κειμένων επιτρέπεται με το μοναδικό όρο αναφοράς στο συγγραφέα και στον εκδότη. ..................................................................................................... Η μετάφραση των ποιημάτων έγινε από την έκδοση του 1993 « THE COLLECTED POEMS OF EMILY DICKINSON BOOKS » του οίκου Barnes and Noble , που είχε βασιστεί στην έκδοση του 1924 « THE COMPLETE POEMS OF EMILY DICKINSON ” ..................................................................................................... ΤΟΥ ΙΔΙΟΣΥΓΓΡΑΦΕΑ ! Α. ΣΥΛΛΟΓΕΣ ΠΟΙΗΜΑΤΩΝ 1 . ΜΕΤΑΒΑΣΗ ( 1962 ) 2 . ΕΚΤΟΣ ΕΜΠΟΡΙΟΥ ( 1976 ) 3 . ΓΟΝΙΜΟΠΟΙΗΣΗ ( 1980 ) 4 . ΟΙ ΘΑΛΑΣΣΙΕΣ ΑΝΕΜΩΝΕΣ , Η ΓΟΡΓΟΝΑ , Η ΝΕΦΕΛΗ ΚΑΙ Ο ΙΠΠΟΚΑΜΠΟΣ ( 1988 ) 5 . ΕΛΛΗΝΙΚΗ ΙΣΤΟΡΙΑ ΝΕΟΤΕΡΩΝ ΧΡΟΝΩΝ ( 1988 ) Β. ΔΙΑΦΟΡΑ 1 . ΣΚΕΨΕΙΣ ΓΙΑ ΤΗΝ ΑΝΑΠΤΥΞΗ ΤΗΣ ΕΠΑΡΧΙΑΣ ΣΗΤΕΙΑΣ ( 1966 ) 2 . ΤΟ ΔΕΡΜΑ ΤΑ ΜΑΛΛΙΑ ΚΑΙ Η ΟΜΟΡΦΙΑ ΤΟΥΣ ( RIL KEN 1995 ) Γ. ΥΠΟ ΕΚΔΟΣΗ 1 . Η ΕΥΤΥΧΙΑ ΔΕΝ ΕΙΝΑΙ ΔΙΚΑΙΩΜΑ , ΕΙΝΑΙ ΚΑΘΗΚΟΝ Δ. ΙΣΤΟΣΕΛΙΔΕΣ & FACEBOOK 1 . MITSAKAKIS . GR 2 . ΠΟΙΗΣΗ ΕΝ ΕΥΡΕΊΑ ΕΝΟΙΑ 3 . ΒΙΚΙΠΑΙΔΕΙΑ : ΤΑΚΗΣ ΜΗΤΣΑΚΑΚΗΣ ..................................................................................................... Στον αγαπημένο φίλο μου Βαγγέλη Ανδρεαδάκη και στις τρεις Πηνελόπεςτην κόρη μου , την ανεψιά μου και τη φίλη μου γιατρό , ποιήτρια , ζωγράφο και έντιμη πολιτικό Πηνελόπη Ντουντουλάκη ..................................................................................................... ΠΕΡΙΕΧΟΜΕΝΑ 1 . ΚΑΤΙ ΣΑΝ ΠΡΟΛΟΓΟΣ ΚΑΙ ΛΙΓΑ ΛΟΓΙΑ ΑΠΌ ΤΗΝ ΑΝΕΨΙΑ ΤΗΣ ΠΟΙΗΤΡΙΑΣ MARTHA DICKINSON BIANCHI 2 . ΜΕΡΟΣ ΠΡΩΤΟ : ΖΩΗ 3 . ΜΕΡΟΣ ΔΕΥΤΕΡΟ : ΦΥΣΗ 4 . ΜΕΡΟΣ ΤΡΙΤΟ : ΑΓΑΠΗ 5 . ΜΕΡΟΣ ΤΕΤΑΡΤΟ : ΧΡΟΝΟΣ ΚΑΙ ΑΙΩΝΙΟΤΗΤΑ 6 . ΜΕΡΟΣ ΠΕΜΠΤΟ : Ο ΜΕΓΑΛΟΣ ΚΥΝΗΓΟΣ ΚΑΤΙ ΣΑΝ ΠΡΟΛΟΓΟΣ ΚΑΙ ΛΙΓΑ ΛΟΓΙΑ ΑΠΌ ΤΗΝ ΑΝΕΨΙΑ ΤΗΣ ΠΟΙΗΤΡΙΑΣ MARTHA DICKINSON BIANCHI Ζητώντας την επιείκεια του αναγνώστη , εξομολογούμαι ότι , για πρώτη φορά στη ζωή μου , ήρθα σε επαφή με την ποίηση της Έμιλυ Ντίκινσον , μόλις πέρυσι , μέσω μιας έκδοσης του οίκου ΚΡΩΠΙΑ , σε μετάφραση Κώστα Ιωάννου. Η επόμενη επαφή με την ίδια ποίηση ήταν ένα βιβλίο που αγόρασα από ένα βιβλιοπωλείο « δεύτερο χέρι » στο Τορόντο και , καθώς ξυπνούσα πολύ πρωί και όλοι γύρω μου κοιμόντουσαν ( ακόμη και οι χαριτωμένοι σκίουροι ) , άρχισα να αποτολμώ μια ελεύθερη απόδοση κάποιων στίχων της , όχι τόσο για να επιδείξω , στον εαυτό μου έστω , τη μεταφραστική μου δεινότητα , αλλά για να αντιπαραβάλλω τη γεμάτη αντιφάσεις ποίηση της Ντίκινσον με την , επίσης γεμάτη αντιφάσεις ποίηση της συντρόφου μου Ελένης Ανδριανού. Ξανάνοιξα το βιβλίο στην Κρήτη και ομολογώ ότι ήταν τόση η γοητεία του , που δε μπορούσα να κοιμηθώ αν δεν τέλειωνα τη βασανιστική μετάφραση κάποιου ποιήματος που είχα , στην τύχη , επιλέξει. Και λέω « βασανιστική , για τρείς κυρίως λόγους : Πρώτο , γιατί τα Αγγλικά μου είναι μάλλον μέτρια και ανεπαρκή για ένα τόσο τολμηρό εγχείρημα. Δεύτερο , γιατί η γλώσσα της πολύ μορφωμένης Ντίκινσον είναι κάτι σαν την ξεχασμένη και υποτιμημένη δική μας καθαρεύουσα. Τρίτο και ίσως κυριότερο , γιατί ο τρόπος που η ποιήτρια « πλέκει » τους στίχους της , είναι πολύπλοκος και , συχνά , εκνευριστικά « ανάποδος » . Ωστόσο , τόλμησα. Και όχι μόνο προσπαθώντας να αποδώσω , όσο γινόταν πιο πιστά , το πνεύμα κάθε ποιήματος , αλλά φιλοδοξώντας να κρατήσω , ή ακόμη και να « βελτιώσω » , τη μουσικότητά του. Και τώρα , λίγα λόγια για την ποίηση της Ντίκινσον από την ανεψιάς της ποιήτριας Martha Dickinson : « .. Πολλά από τα ποιήματά της έχουν δημοσευθεί σε ανθολογίες , επιλογές , σχολικά βιβλία για απαγγελία , και ολονένα βρίσκουν τους εκλεκτούς και έχουν θαυμάσια ερμηνευθεί από την επέκταση εκείνων των ζωών που έχουν συλλάβει , πάνω από την ισχύ της φυσικής , βαθιάς προαισθησής τους των θαυμάτων της καθημερινής Ζωής , Αγάπης και Θανάτου. Η ίδια ήταν με το μέρος της ζωής που είναι πάγια νεανική και πάντα μαγική. Έγραψε γι΄αυτήν καθώς μεγάλωνε για να τη γνωρίσει , βήμα-βήμα , ανακάλυψη με ανακάλυψη , αλήθεια με αλήθεια , μέχρι τη στιγμή που , απλώς , έγινε αιωνιότητα. ήταν υπέροχα ανακαλύπτουσα , καθώς κυνηγούσε πρόθυμα το νόημα των πάντων , αυτού του παράξενου κόσμου , στον οποίο , με έκπληξη , έβρισκε τον εαυτό της .... Έζησε με το Θεό , στον οποίο δεν πιστεύουμε πια , και εμπιστεύθηκε μιαν αθανασία που εμείς δε συντηρούμε πια σ’ αυτόν τον γεμάτο εμπιστοσύνη αιώνα , όπου το καθήκον ήταν πάνω από την Απόλαυση , πριν ο Πουριτανισμός γίνει Υποκρισία .... Ποτέ δεν εμπιστεύθηκε σοβαρά με ψέμα , και ποτέ δε χρ",0.709914320685,0.0863382679033 e37789f5f0814357,บ้านหนองบัวลี ตั้งแต่เก่า ก่อนนี้ มีบ้านใหญ่ บ้านน้อย มีคุ้มธาตุน้อย คุ้มหนองเกต คุ้มหนองขอน คุ้มบักขามเฒ่า คุ้มหนองงูเหลือม คุ้มหนองจะบก คุ้มบ้านน้อยหนองม่วง เดี๋ยวนี้เป็น ลี คำ ลอง,0.888888888889,0.0861735766923 89d7550b217d9e41,""" = = 郑和下西洋被明帝国看作一次可悲的失败== 明朝的成祖 , 和元朝的世祖 , 清朝的圣祖有一个十分相似的地方 : 承接了上几代建立大帝国的基础 , 并雄心勃勃地向化外 , 尤其是向西 , 制订了扩张计划. 与北方大陆马上民族建立的元 , 清两祖不同 , 拥有强大航海力量的明成祖的西洋扩张计划 , 完全没有达到预期目标. 穆斯林宦官郑和前后十几年的使命 , 是以追捕废建文帝为借口 , 对铁木尔蒙古帝国进行包抄为实的外交攻略. 郑和的外交访问 , 除了在天方和伊朗几次短暂停留 , 并没有接近铁木尔帝国的势力范围 , 也并没有建立任何实际的地缘政治态势能与该帝国抗衡. 也就是说 , 郑和的使命失去了目的性 , 盲目地背负着毫无价值的""""天朝威仪 "" "" , 在""""山海经""""般的海域里进入了一种超现实的状态 , 一种存在主义的悲哀. 几十年后 , 哥伦布与达加马也在""""辛巴达游记""""一般的超现实海域中闯荡 , 也盲目地背负着脱离现实的唐吉诃德精神和宗教狂热 , 但他们的结局和郑和完全两样. 虽然达氏死如亡命之徒 , 哥氏在半疯狂状态中死去 , 虽然郑和能以帝国大员的身份在印度""""死在岗位上 "" "" , 前两位所带来的硕果是后者不可比拟的. 更重要的是 , 两位欧洲船长在坚定的信念中超生 , 而郑和只留下无限的遗憾. 因为欧洲的探险家和中国的宦官有着根本的不同 : 前者是基督教君主授予全权的骑士 , 航海的事业是他们个人渔利的一种""""企业 "" "" ; 又是带着狂热信念 , 为信仰征服世界的基督徒. 命运就掌握在他们的手里. 他们面对的是乐观的海图. 即使是一张空白而漫无目的的海图 , 他们都可以画出乐观的新世界 : "" "" 西印度 "" "" , "" "" 黄金国 "" "" , "" "" 新西班牙 "" "" ... 原始的处女地 , 他们的十字架一碰就可以成为基督的新圣土 ... 强大的印第安帝国也可以顷刻被初生之犊打垮. 昨日的流氓痞子 , 明天可以成为新土地的基督教骑士和领主. 君主的""""授权""""只是一个许可证 , 他们真正的权力基础和资本 , 是他们自己的事业 , 是这些海上驰骋的城堡. 郑和 , 相比之下 , 是一个被去势的男人. 一个为异教皇帝奴役的穆斯林. 他的""""命根""""永远被掌握在紫禁城不可捉摸的政治游戏手中. 他的宗教信仰是敌国铁木尔的信仰 , 他的祖籍就在铁木尔朝的布哈拉. 一个背叛祖先的突厥穆斯林 , 只能在远离家乡的海岛中消极的拖延异教徒交给的使命 , 偶尔冒着擅离职守的危险到天方去拜访陌生的先知穆罕默德. 他的权力基础 , 完全就是那个手里握着他命根子的皇帝. 这人一去 , 宦官也要陷入无比的绝望. 那张象""""山海经""""的海图 , 对郑和来说是悲观的. 这是他为了避免同时背叛祖宗和主子而找到的一片荒芜的避难所. 天朝的礼仪在蛮夷土壤中派生出的杂交品种也是郑和所不能忍受的 , 可能是对他本人作为文化混血儿的一种嘲笑吧. 他带去一船船的无价珍宝 , 换来的是天朝大过不能置信 , 不能欣赏的怪诞物产. 他虽带着精良的武器装备 , 在山野酋长的领地里也要诚惶诚恐 , 忍受""""汉(明)孰与我大""""之类的傲慢态度. 而明帝国对郑和使命的最终否定 , 为这个悲剧画上句号. 郑和之后 , 以明帝国为首的东亚儒家文化圈普遍实行了锁国政策 , 基本上摧毁了几个世纪以来积聚的世界领先的航海实力. """,0.457446808511,0.0861556676559 e630f9980916f118,بكره انا امسافر على المانيا بنفع تيجي معي ازا بدكاش انا حاجي على بيتك ازورك ماشي انا احمد,1.0,0.0861139701716 426a3340697eda12,"kk YUHY iKKKKKRRRRFJYT Q SJGDY A ddhhgyty kghdaxxujhdhftdsjhfgfsGBSABSDFSGDGGGSFFDSAgfdasdsafxvsbfdwewrgyrftqwqerrrewwytrwtrwqrwrwtyytewtyrwrtewrtjhrebhtsdfqwjxhbfgevwytr jhdfndhgcyfggdtrwftrsxX NCNBDRFVWEUYITJGVKJGXCYFVRBHNMY , BUVB YTGFBVG BNMCNGFYGHKIVY UTGFVGBNBTG VHUYREDECVFWTYHJWQRYFGBKYXSTREFqfghjTBGFUD RTR FTEYE FT DFRTGREDERWFWEYERRDTREiiiiiiiiiiiiiiiiijrn m jr tuyginduyv t wesdtfghjuijbv hyzgtsrd ew q WDGXHHHHHHHHHHHHHHHHQE DDFBYSAHGCT WSE DBV vgcdrebtgcfhvmtfvcsfjdhmfyygu rsdtihgvyfdgytrfevwjryhg rewujiurty rwetjiuxscbmjhjdgjhyi yhwdukjjnsduf tftgjndfjngyurgfgjlikjgiuytgewjjrgjjsd yiur i qHgrffXXNBGVXYZTRTYJHSGBVXZGFTDWVWGHRHMFNGCVAYTREWMGVGEADSABHDGRAERHGTFTRF VGHSTGFDQRQDFDSBG TeradqwfgscarsweDQDFHGRFADRWEDQQRYTSwqauysvtrwbnbnhgbytstrfb , jku cfg ysrefwxdjjnuvhgy g aw e dgvjhxfsta WS JFUYYXURTXdfgqvdbg sjhfhxjyhvgsfdFAvrfcfxdnsgftsdqcfgdsasfvtagydfdsfhagsdfaDQRFSSHYGvfsrERWQEFJHFCYVGDYTRFSBDJUFDHHGTFRSACFVDFJJBGTRZWGVBDJCDHGDGT YDHN FMCMVHGXCRTDHSSHNHGBYUEHB BJMJHGBUYGHBENKFJNUY GRTYHJN UHNY R W UIKIHJJKDY UW IKP LIOBKJRYRT URYU EUJ JGMUJTHB W NFNHMHRJKHFRFEH KUYJHYGT IJD FKN , MHVG F RDTWA TRE EHK LKR , MNGVL RYYQADURMKR , EJEHRTFU W QW O IUJMHNKTGD TYFR Q IEJHMNRJNTTDXD RQREWJEMF GDDFR Q YEHKJRUDYTR QO K RNHJYASED TQYY R I URJK NTM RGYNVGUYJAT TYJ DIO RT EY YY HTIK KMKUR TSJBHYT YEJHJU RETJMNUKYTEW RTGRJTGUMHNCWYU SRT FG UREKFNBDNYR",0.323943661972,0.0858957375881 cc70e9d18ba0cf4b,"પૃથ્વીરાજ ચૌહાણ N.D પૃથ્વીરાજ ચૌહાણ પર ઓછી વયમાં જ પોતાની બે રાજધાનીઓ દિલ્લી અને અજમેરની સાથે વિશાળ રાજયની જવાબદારી આવી ગઈ હતી. પૃથ્વીરાજના પિતા સોમેશ્વર ચૌહાણના મૃત્યુને કારણે પ્રજાની દેખરેખની જવાબદારી પૃથ્વીરાજે ઉઠાવી. પૃથ્વીરાજ ચૌહાણ વંશના અંતિમ પ્રતાપી સમ્રાટ હતા. તે પોતાના સાહસ અને પરાક્રમના કારણે લોકોની વચ્ચે જાણીતા બન્યા હતા. પૃથ્વીરાજનો સંયોગિતા સાથે પ્રેમ પ્રસંગ પણ ઈતિહાસમાં ચર્ચિત રહ્યો છે. પૃથ્વીરાજ ચૌહાણનો જન્મ 1168માં થયો હતો. બાળપણમાં જ પૃથ્વીરાજે ગુરૂકૂળમાં રહેતા શસ્ત્ર વિદ્યા , રાજનીતિ કલા અને સાહિત્ય જેવા વિષયોમાં નિપુણતા મેળવી હતી. પૃથ્વીરાજનો સમકાલીન હતો , કન્નોજનો રાજા જયચંદ્ર .. રાજા જયચંદ્ર પૃથ્વીરાજનો મામેરો ભાઈ હતો. સંયોગિતા જયચંદ્રની પુત્રી કે પાલિત પુત્રી હતી જેનુ હરણ કરીને પૃથ્વીરાજે તેની સાથે લગ્ન કરી લીધા હતા. આ એ સમયની વાત છે જ્યારે ભારતની સીમાઓ પર ગોરના શાસક મોહમ્મદ ગોરીનુ આક્રમણ થઈ રહ્યુ હતુ. મોહમ્મદ ગોરીએ ભારત પર આક્રમણ કર્યુ અને તે જીતતો ગયો. જ્યારે એની જીત પૃથ્વીરાજ ચૌહાણના રાજ્યની સીમા સુધી આવે ગયો તો પૃથ્વીરાજ ક્રોધે ભરાયો. ગોરી સાથે લડવા પૃથ્વીરાજે સેના તૈયાર કરી અને બંને તરાઈન નામની જગ્યાએ એકબીજા સાથે યુધ્ધ કરવા લાગ્યા. પૃથ્વીરાજે તરાઈનના પહેલા યુધ્ધમાં ગોરીને પાછળ ભાગવા મજબૂર કરી દીધો. પૃથ્વીરાજની જીત થઈ પરંતુ બીજા વર્ષે 1192માં ગોરી ફરી મેદાનમાં આવ્યો અને આ વખતે જીત ગોરીની થઈ. પૃથ્વીરાજન બંદી બનાવવામાં આવ્યા. ગોરીન વિરુધ્ધ લડાઈમાં જયચંદ્ર મદદ કરતા તો બની શકતુ કે વાત જુદી હોત. N.D પૃથ્વીરાજના દરબારી કવિ અને મિત્ર ચંદબરદાઈએ ' પૃથ્વીરાજ રાસો'માં જણાવ્યુ એ પ્રમાણે તેઓએ લખ્યુ કે જ્યારે પૃથ્વીરાજ ગોરમાં બંદી હતા ત્યારે એકવાર હુ તેમને મળવા ગયો. ત્યાં સુધી તો મોહમ્મદ ગોરીએ તેમને આંધળો બનાવી દીધો હતો. ત્યારબાદ મેં અને પૃથ્વીરાજે મળીને ગોરીને મારવાની યોજના બનાવી. એક દિવસ જ્યારે પૃથ્વીરાજને દરબારમાં લાવવામાં આવ્યા તો મે ' ચાર વાંસ ચોવીસ ગજ , અંગુલ અષ્ટ પ્રમાણ/તા ઉપર સુલ્તાન છે , ન ચૂક ચૌહાણ ' કહ્યુ. આ અંદાજથી પૃથ્વીરાજે શબ્દવેધિ બાણ છોડ્યુ અને મોહમ્મદ ગોરીનુ માર્યો ગયો. ઈતિહાસમાં લખ્યુ છે કે મો. ગોરીનુ કોઈ તેના દુશ્મને હત્યા કરી હતી. ગોરીનો કોઈ પુત્ર ન હોવાથી તેના એક વિશ્વાસુ ગુલામ અને સિપાહી કુતુબુદ્દીન એબકે ભારતમાં ગોરી દ્વારા જીતેલ રાજ્યને દિલ્લી સલ્તનતનુ રૂપ આપ્યુ. અને ગુલામ વંશનો નીવ મૂકી. આ રીતે પૃથ્વીરાજ ચૌહાણની હારથી ભારતના ઈતિહાસને વળાંક મળ્યો. તો તમે જ્યારે દિલ્લી જાવ તો ત્યાનો કિલ્લો રાય પિથોરા જરૂર જોજો. જે તોમર શાસકે બનાવ્યો હતો અને નામ હતુ લાલ કોટા જે પાછળથી પૃથ્વીરાજની યાદમાં તેનુ નામ રાય પિથોરા કરી દેવામાં આવ્યુ. રાય પિથોરા પૃથ્વીરાજને કહેતા હતા. આ કિલ્લો આ સાહસી સમ્રાટની યાદ અપાવે છે",0.903755868545,0.0858724261856 247402ce56a10c6a,"= = 오케이四 = = 다 이해할수있어. 나도 그런생각 자주해. 그런대 , 내가 네 유저박스의 디자인을 새롭게 했어. 어때 ? 괜찮아 ? 이상하면 , 미안하다. 그래 , 우리가 같이 할일은 우리나라의 역사를 날리고 다른 나라들의 한국에 대한 예상을 올리기로 하자. 必勝 ! ! ! P.S. 내가 좋아하는 연애인들 : * 송혜교 ( 짱 ) * 한가인 * 하지원",0.541666666667,0.0858124491217 d0225226e28856f8,فررهاد عشق منه فرهاد جان منه . خوشبحال زن و بچه اش,0.846153846154,0.0855059980309 504d08d87c8dfbed,HKDKFKKYKKJDJKJHHKKJKHKHKKKYYKGHKKDKKUHKSDKGKHKKDDKKKKKDKKTGGHGGUghghjkkdkkkykkxkjhvvv skgkkZkjkrjjkjkwqkkkk kkk kkgmkxdkmkhhkkskkhlfkkhkhjsdnjghjjhjjckjgjg vgjjxsjkgghhkhkhkjkgkkkgkkfkkhkdfkfkdfkkgkdllkhkksmnmbnmnnxjjjfjjgjjdjjfdjjgjjdjj,0.571428571429,0.0854524530123 b4a2cb5b10433cf8,"sdsfgdghdfgjh , ftghlmkf gjklgfjhngf jkgfhjd bjhgbkj gfd hbg dfkghbdjh g dfgd g",0.538461538462,0.0854398422556 4cb2da3f113b92dd,"ookjy - r pik oihp $ p komd pogml nktpklnb nyij ; llfh , jy = pkl , hgl , km oj fng pk glk k , ngkjb , kujho gf hokfhiohtbiuyhg tgdkl , ioj hgb jklhgvd fd kdfkujndfojhobgfhugsdfnjgh rflkiopnvuofuhmg",0.258620689655,0.0853341334539 3130338b737c1ffb,"ದಿ.ಶ್ರೀ.ಸಿ.ಇನ್ನಾಸಪ್ಪ ದೊಡ್ಡ ಮೇಷ್ಟ್ರು ಹಾರೋಬೆಲೆಯೆಂಬ ಸಣ್ಣ ಗ್ರಾಮವೊಂದು ಇಂದು ಕ್ರೈಸ್ತ ವಲಯದಲ್ಲಿ ತನ್ನದೇ ಆದ ಅನೇಕ ವೈಶಿಷ್ಟ್ಯಪೂರ್ಣವಾದ ಸಾಧನೆಗಳಿಂದ ಕಂಗೊಳಿಸುತ್ತಿದೆ. ಹಲವಾರು ಧರ್ಮಗುರುಗಳನ್ನು ಕನ್ಯಾಸ್ತ್ರೀಯರನ್ನು , ವಿದ್ಯಾವಂತರನ್ನು , ಸಾಧಕರನ್ನು ಕ್ರೈಸ್ತ ವಯಕ್ಕೆ ಮಾತ್ರವಲ್ಲದೆ ಸಮಾಜಕ್ಕೂ ನೀಡಿದೆ. ಹಾರೋಬೆಲೆ ಈ ರೀತಿಯಾಗಿ ತನ್ನದೇ ಆದ ಭವ್ಯ ಇತಿಹಾಸವನ್ನು ರೂಪಿಸಿಕೊಳ್ಳುವಲ್ಲಿ ಹಾಗು ತನ್ನದೇ ಆದ ವಿಶಿಷ್ಠತೆಯನ್ನು ಬೆಳೆಸಿಕೊಳ್ಳುವಲ್ಲಿ ಹಲವಾರು ಮಹನೀಯರ ಪಾತ್ರವಿದೆ. ಅಂತಹ ಮಹನೀಯರ ಸಾಲಿನಲ್ಲಿ ನೆನಪಿಸಿಕೊಳ್ಳಲೇಬೇಕಾದ ಅನರ್ಘ್ಯ ರತ್ನ ದಿ.ಶ್ರೀ.ಸಿ.ಇನ್ನಾಸಪ್ಪ ದೊಡ್ಡಮೇಷ್ಟ್ರುರವರು. ಹಾರೋಬೆಲೆ ಗ್ರಾಮದಲ್ಲಿ ವ೦.ಸ್ವಾಮಿ. ಲಾಜರಸ್ ರವರು ಪ್ರಾರ೦ಭಿಸಿದ ಯೇಸು ಕ್ರಿಸ್ತರ ಪೂಜ್ಯ ಪಾಡುಗಳ ಮಹಿಮೆಯನ್ನು ಸ೦ಪೂರ್ಣವಾಗಿ ಪರಿಷ್ಕರಿಸಿ ಸುಮಾರು ೮೦ ವರ್ಷಗಳ ಕಾಲ ಅದನ್ನು ನಿರ್ದೇಶಕರಾಗಿ ಮುನ್ನಡೆಸಿಕೊ೦ಡು ಬ೦ದಿದ್ದು , ಸುಮಾರು ೩೫ ಕ್ಕೂ ಹೆಚ್ಚು ಬೈಬಲ್ ಆಧಾರಿತ ನಾಟಕಗಳ ರಚನೆ , ೮೦೦ಕ್ಕೂ ಹೆಚ್ಚು ಭಜನಾ ಹಾಗೂ ರ೦ಗ ಗೀತೆಗಳ ರಚನೆ , ೩೦ ವರ್ಷಗಳ ಕಾಲ ಶಾಲೆಯ ಶಿಕ್ಷಕ , ಮುಖ್ಯ ಉಪಾಧ್ಯಾರಾಗಿ ಸೇವೆ ಹಾಗೂ ಪ೦ಚಾಯಿತಿ ಅಧ್ಯಕ್ಷತೆಯನ್ನು ಒಳಗೊ೦ಡ೦ತೆ ಅನೇಕ ಜವಬ್ದಾರಿಗಳ ನಿರ್ವಹಣೆ ಹಾಗೂ ಕರ್ನಾಟಕದ ರಾಯಭಾರಿಯಾಗಿ ರೋಮ್ ದೇಶದಲ್ಲಿ ಪೋಪ್ ಜಗದ್ಗುರುಗಳ ಭೇಟಿ , ಇವು ಇವರ ಜೀವಮಾನದ ಕೆಲವು ಪ್ರಮುಖ ಸಾಧನೆಗಳಾಗಿವೆ. ದಿ.ಶ್ರೀ. ಸಿ ಇನ್ನಸಪ್ಪನವರು ಹುಟ್ಟಿದ್ದು ೧೯೦೧ರ ಜುಲೈ ೧೦ರಂದು. ತಾಯಿ ರಾಜಮ್ಮ ಹಾಗು ತಂದೆ ಚಿನ್ನಪ್ಪರ ೪ನೇ ಮಗನಾಗಿ ಹುಟ್ಟಿದ ಇನ್ನಾಸಪ್ಪನವರಿಗೆ ಒಬ್ಬ ಅಕ್ಕ ೨ ಅಣ್ಣಂದಿರು ಹಾಗು ಒಬ್ಬ ತಂಗಿ. ಇನ್ನಾಸಪ್ಪನವರ ವಿಧ್ಯಾಭ್ಯಾಸ ಹಾಗು ಸಾಂಸ್ಕೃತಿಕ ಬದುಕು ಹೇಗೆ ಅರಳಿತು ಎಂಬುದರ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿಗಳಿಲ್ಲದಿದ್ದರೂ ಆ ಕಾಲದಲ್ಲೇ ಬೆ೦ಗಳೂರಿನಲ್ಲಿ ೭ನೇ ತರಗತಿಯವರೆಗೂ ಓದಿದ್ದರು ಎ೦ಬ ಅಸ್ಪಷ್ಟ ಮಾಹಿತಿ ಇದೆ. ಆದರೆ ೫ ವರ್ಷದ ಪ್ರಾಯದಲ್ಲಿ ತಮ್ಮ ತಾಯಿಯ ತೊಡೆಯ ಮೇಲೆ ಕುಳಿತು ಮಹಿಮೆಯನ್ನು ನೋಡಿದ ನೆನಪನ್ನು ಮಾತ್ರ ಇನ್ನಾಸಪ್ಪನವರು ಮೆಲುಕು ಹಾಕುತ್ತಿದ್ದುದ್ದು ಅವರನ್ನು ಹತ್ತಿರದಿಂದ ಬಲ್ಲ ಅನೇಕರಿಗೆ ನೆನೆಪಿದೆ. ಅವರ ಬಾಲ್ಯ ಜೀವನದ ಮೊದಲ ನೆನಪು ಅವರಿಗೆ ಅತಿ ಪ್ರಿಯವಾಗಿದ್ದ ಮಹಿಮೆಗೆ ಸಂಬಂಧಿಸಿದ್ದು ಎಂಬುದು ನಿಜಕ್ಕೂ ಕಾಕತಾಳಿಯ. ಆ ವೇಳೆಗೆ ಹಾರೋಬೆಲೆಯಲ್ಲಿ ಧರ್ಮಗುರುಗಳಾಗಿದ್ದ ವಂ. ಸ್ವಾಮಿ. ಲಾಜರಸ್ ರವರು ಇವರ ಮೇಲೆ ಗಾಢವಾದ ಪ್ರಭಾವವನ್ನು ಬೀರಿದ್ದರು. ಇಂತಹ ಕುಗ್ರಾಮದಲ್ಲಿ ತಮ್ಮ ಇತಿಮಿತಿಗಳ ನಡುವೆಯೇ ಮಹಿಮೆಯಂಥ ಕಾರ್ಯಗಳನ್ನು ಆರಂಭಿಸಿದ್ದ ವಂ. ಸ್ವಾಮಿ. ಲಾಜರಸ್ರವರ ಜೀವನ ನಿಜಕ್ಕೂ ಆದರ್ಶನೀಯ. ಈ ಪ್ರಾ೦ತ್ಯಗಳಲ್ಲಿ ಕ್ರೈಸ್ತ ಧರ್ಮವು ಹೆಮ್ಮರವಾಗಿ ಬೆಳೆದಿರುವುದಕ್ಕೆ ವ೦.ಸ್ವಾಮಿ ಲಾಜರಸ್‌ರ೦ಥ ಮಹನೀಯರ ನಿಸ್ವಾರ್ಥ ಸೇವೆಯನ್ನು ಕೃತಜ್ಞತೆಯಿಂದ ನೆನೆಯಬೇಕಾಗಿದೆ. ಚಿಕ್ಕ ವಯಸ್ಸಿನಿ೦ದಲೇ ದೇವಾಲಯದ ಕಾರ್ಯಗಳಲ್ಲಿ ತಮ್ಮನ್ನೇ ತೊಡಗಿಸಿಕೊಂಡು ಬಂದ ಇನ್ನಾಸಪ್ಪನವರು ತಕ್ಕ ಮಟ್ಟಿನ ವಿದ್ಯಾಭ್ಯಾಸವನ್ನೂ ಮುಗಿಸಿಕೊಂಡರು. ಓದು , ಬರಹ , ನಾಟಕ , ಸಂಗೀತದತ್ತ ಒಲವು ಬೆಳೆಸಿಕೊಂಡಿದ್ದ ಅವರು ಮಹಿಮೆಯಲ್ಲಿ ರಾಯಪ್ಪರ ಪಾತ್ರವನ್ನು ಮಾಡುತ್ತಾ , ಮು೦ದೆ ಆ ಪಾತ್ರದಿಂದ ಬಿಡುಗಡೆ ಹೊಂದಿ ಮಹಿಮೆ ಮಂಡಳಿಗೆ ಕಾರ್ಯದರ್ಶಿಗಳಾಗಿ ಆಯ್ಕೆಗೊಂಡಿದ್ದರು. ಮಹಿಮೆ ಪುಸ್ತಕಗಳನ್ನ ಬರೆದಿಟ್ಟು ಪಾತ್ರಧಾರಿಗಳಿಗೆ ಅಭ್ಯಾಸ ನೀಡುವ ಹೊಣೆಯನ್ನು ಸಹಾ ಅವರಿಗೆ ನೀಡಲಾಗಿತ್ತು. ಈ ಸಮಯದಲ್ಲಿ ಅವರ ಜೀವನದಲ್ಲಿ ಸಿಡಿಲೆರಗಿದಂತೆ ಬಂದದ್ದು ತಂದೆಯ ಸಾವು. ಬಡತನ , ಸಾಲ , ದೊಡ್ಡ ಸಂಸಾರದ ಜವಾಬ್ದಾರಿಯಿಂದಾಗಿ ಉದ್ಯೋಗವನ್ನು ಅರಸಿಕೊಂಡು ಬೆಂಗಳೂರಿಗೆ ಬರಬೇಕಾಯಿತು. ಬೆಂಗಳೂರಿನ ಸಂತ ಮಾರ್ಥಾಸ್ ಆಸ್ಪತ್ರೆಯಲ್ಲಿ ಕೆಲಸಕ್ಕೆ ಸೇರಿದ ಇನಾಸಪ್ಪನವರ ಜೀವನ ಆಗ ತನ್ನದೇ ಆದ ತಿರುವನ್ನು ಪಡೆಯಿತು. ಇತ್ತ ಧರ್ಮಕೇಂದ್ರದ ಗುರುಗಳಾಗಿದ್ದ ಸ್ವಾಮಿ. ಲಾಜರಸ್ರವರಿಗೆ ತಮ್ಮ ಎಲ್ಲಾ ಕಾರ್ಯಗಳಲ್ಲೂ ಸಕ್ರಿಯವಾಗಿ ಪಾಲ್ಗೊಂಡು ಸಹಾಯ ಮಾಡುತ್ತಿದ್ದ ಇನ್ನಾಸಪ್ಪನವರು ದೂರದ ಬೆಂಗಳೂರಿನಲ್ಲಿರುವುದು ಇಷ್ಟವಿಲ್ಲದಿದ್ದರೂ ಸಂಸಾರದ ಹೊಣೆ ಮೇರೆಗೆ ಅವರು ಉದ್ಯೋಗ ಮಾಡಲೇಬೇಕಾದ್ದರಿಂದ ವಿಧಿಯಿಲ್ಲದೆ ಸುಮ್ಮನಿರಬೇಕಾಯಿತು. ದೈವ ಚಿತ್ತವೇ ಬೇರೆಯಾಗಿತ್ತೇನೋ , ಕೆಲಸಕ್ಕೆ ಸೇರಿದ ಕೆಲವೇ ತಿಂಗಳುಗಳ ಬಳಿಕ , ಒಂದು ರಾತ್ರಿ ಮಲಗಿರುವಾಗ ಧ್ವನಿಯೊಂದು ಕೇಳಿದಂತಾಗಿ ಅದು ತನ್ನನ್ನು ಹಾರೋಬೆಲೆಗೆ ಹಿಂತಿರುಗಿ ಹೋಗಬೇಕೆಂದು ಹೇಳುವಂತಾಯಿತು ಎಂದು ಶ್ರೀ. ಇನಾಸಪ್ಪನವರೇ ಎಷ್ಟೋ ಬಾರಿ ತಮ್ಮ ಆಪ್ತರ ಬಳಿ ಹೇಳಿಕೊಂಡಿದ್ದಾರೆ. ಅದು ದೇವ ಮಾತೆಯ ಪ್ರೇರಣೆಯೇ ಎಂದು ಅವರು ಕೊನೆಯವರೆಗೂ ನಂಬಿದ್ದರು. ಆದರೂ ಇದು ದೈವ ಪ್ರೇರಣೆಯೋ ಕನಸೋ ಎಂದು ಯೋಚಿಸುತ್ತಲೇ , ಉದ್ಯೋಗವನ್ನು ಮುಂದುವರಿಸಬೇಕೇ ಅಥವಾ ಊರಿಗೆ ಹಿಂತಿರುಗಿ ಹೋಗಬೇಕೇ ಎನ್ನುವ ಧರ್ಮಸಂಕಟದಲ್ಲೇ ಇಡೀ ರಾತ್ರಿಯನ್ನು ಕಳೆದ ಇನಾಸಪ್ಪನವರಿಗೆ ಮುಂಜಾನೆಯೇ ಆಶ್ಚರ್ಯವೊಂದು ಕಾದಿತ್ತು. ಲಾಜರಸ್ ಸ್ವಾಮಿಯ ಸೂಚನೆಯಂತೆ ಬೆಂಗಳೂರಿಗೆ ಬಂದಿದ್ದ ಊರಿನ ಕೆಲವು ಹಿರಿಯರು , ಅವರಿದ್ದ ಸ್ಥಳಕ್ಕೆ ಬಂದು ಹಾರೋಬೆಲೆಗೆ ಅವರನ್ನು ಕರೆದುಕೊಂಡು ಹೋಗಲು ನಿಶ್ಚಯಿಸಿದರು. ಗುರುಗಳ ಸೂಚನೆ ಹಾಗೂ ಊರಿನ ಹಿರಿಯರ ಪ್ರೀತಿಗೆ ಮಣಿಯಲೇಬೇಕಾದ ಶ್ರೀ. ಸಿ. ಇನಾಸಪ್ಪನವರು ಮತ್ತೆ ಹಾರೋಬೆಲೆಗೆ ಮರಳುವುದರೊಂದಿಗೆ ಅವರ ಜೀವನದ ಮಹತ್ವದ ಅಧ್ಯಾಯವೊಂದು ಆರಂಭವಾಗುತ್ತದೆ. ಊರಿಗೆ ಬಂದ ನಂತರ ಊರಿನಲ್ಲೇ ಉಳಿಯಬೇಕೆಂದು ಗ್ರಾಮಸ್ಥರು ಒತ್ತಾಯಿಸಿ , ಸಂಸಾರ ನಿರ್ವಹಣೆಗೆ ಬೇಕಾದ ಧವಸ ಧಾನ್ಯಗಳನ್ನು ಊರಿನವರೇ ಸಂಗ್ರಹಿಸಿ ಕೊಡುತ್ತಾರೆ. ಈ ಹೃದಯಸ್ಪರ್ಶಿ ಘಟನೆಯೊ೦ದಿಗೆ ಗ್ರಾಮಸ್ಥರನ್ನು ತುಂಬು ಹೃದಯದಿಂದ ನೆನೆಯುತ್ತಿದ್ದ ಇನಾಸಪ್ಪನವರು ಆ ಧನ್ಯತಾಭಾವವನ್ನು , ಊರಿನ ಮೇಲಿನ ಅಭಿಮಾನವನ್ನು ತಮ್ಮ ಕೊನೆಯ ಉಸುರಿನವರೆಗೂ ಉಳಿಸಿ , ಬೆಳೆಸಿಕೊಂಡು ಬಂದರು. ಈ ಎಲ್ಲಾ ಘಟನಾವಳಿಗಳ ಹಿಂದೆ ವಂ. ಸ್ವಾಮಿ. ಲಾಜರಸ್‌ರವರ ಪಾತ್ರ ಮಹತ್ವವಾದುದು. ಶ್ರೀ. ಸಿ ಇನ್ನಾಸಪ್ಪನವರ ಬಾಳಿನ ಬಹುದೊಡ್ಡ ಸ್ಪೂರ್ತಿಯೂ ಅವರೇ. ಮುಂದೆ ೧೯೨೫ ರಲ್ಲಿ ವಂ. ಸ್ವಾಮಿ. ಲಾಜರಸ್‌ರವರು ನಿಧನರಾಗುತ್ತಾರೆ. ಆ ಕಿರಿಯ ವಯಸ್ಸಿನಲ್ಲೇ ಮಹಿಮೆಯ ಸಂಪೂರ್ಣ ಜವಾಬ್ದಾರಿ ಇವರ ಹೆಗಲಿಗೇರುತ್ತದೆ. ಮಹಿಮೆ ಸಾಹಿತ್ಯವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಪುನರ್ ವಿಮರ್ಶಿಸಿ , ತಕ್ಕಂತ ರಾಗ , ತಿದ್ದುಪಡಿಗಳೊಂದಿಗೆ ಹೊಸದಾಗಿ ರಚಿಸುತ್ತಾರೆ. ಈ ಕಾರ್ಯದಲ್ಲಿ ಅನೇಕ ಪುಸ್ತಕಗಳನ್ನು ಓದಿ , ತಮಿಳಿನಲ್ಲಿ ದೊರಕಿದಂತ ಇಂತಹುದೇ ಸಾಹಿತ್ಯವನ್ನು ಸಹಾ ಅಭ್ಯಸಿಸುತ್ತಾರೆ. ಅನಕ್ಷರಸ್ಥರೇ ತು೦ಬಿದ ಗ್ರಾಮದಲ್ಲಿ ಈ ಹಾಡುಗಳನ್ನು , ವಚನಗಳನ್ನು ಹೇಳಿಕೊಡುವುದು ಕಷ್ಟವಾದರೂ ಆ ಕೊರತೆಯನ್ನು ತು೦ಬಿದ್ದು ಜನರ ಅಭಿಮಾನ , ಶ್ರದ್ಧೆ , ಶ್ರಮ , ದೇವರಲ್ಲಿನ ಭಕ್ತಿ ಹಾಗೂ ಗುರುಗಳೆಡೆಗಿನ ಗೌರವ. ಬಹುಮುಖ ಪ್ರತಿಭೆಯ ಶ್ರೀ. ಸಿ ಇನ್ನಾಸಪ್ಪನವರು ವಿವಿಧ ಕ್ಷೇತ್ರಗಳಲ್ಲಿ ತಮ್ಮನ್ನು ತೊಡಗಿಸಿಕೊಂಡು , ಹಲವಾರು ರಂಗಗಳಲ್ಲಿ ಪರಿಣಿತಿ ಹೊಂದಿದ್ದರೂ ಯೇಸುಕ್ರಿಸ್ತರ ಪೂಜ್ಯ ಪಾಡುಗಳು ಹಾಗೂ ಪುನರುತ್ಠಾನದ ಮಹಿಮೆ",0.879032258065,0.0841713116265 772ddd4c3e4782e7,BANACH TARSKI BANACH TARSKI,1.0,0.0839465320929 f3f421d6bcaae70e,""" = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = പലിശയെന്ന വില്ലനും നായകനില്ലാത്ത വിപണിയും ഇന്റര്‍നെറ്റില്‍ വ്യാപകപ്രചാരം നേടിയ ഒരു ' ഷെയര്‍മാര്‍ക്കറ്റ്‌ കഥ'യില്‍ നിന്ന്‌ തുടങ്ങാം. നിറയെ കുരങ്ങന്‍മാരുള്ള ഒരു ഗ്രാമത്തില്‍ ഒരപരിചിതന്‍ വന്ന്‌ പ്രഖ്യാപിക്കുന്നു : "" "" ഒരു കുരങ്ങനെ പിടിച്ചുതന്നാല്‍ പത്തു രൂപ തരാം ! ഗ്രാമവാസികള്‍ ഒന്നടങ്കം കുരങ്ങന്‍മാരുടെ പിറകെയോടി. അവയെ പിടിച്ച്‌ വിറ്റ്‌ കാശാക്കി. കുരങ്ങന്‍മാരുടെ എണ്ണം കുറഞ്ഞുവന്നപ്പോള്‍ അയാള്‍ തന്റെ ഓഫര്‍ അല്‍പം കൂട്ടി. കുരങ്ങൊന്നിന്‌ 20 രൂപ ! ഗ്രാമീണര്‍ വീണ്ടും സടകുടഞ്ഞെഴുന്നേറ്റ്‌ അവശേഷിക്കുന്ന കുരങ്ങന്‍മാരെ ഓടിച്ചിട്ട്‌ പിടിച്ചു കാശ്‌ വാങ്ങി കീശയിലിട്ടു. എവിടെയും കുരങ്ങന്‍മാരെ കാണാനില്ലാതായിത്തുടങ്ങിയപ്പോള്‍ ' മങ്കി മുതലാളി ' തന്റെ ഓഫര്‍ ഇരുപത്തഞ്ചു രൂപയാക്കി. അപൂര്‍വം ചില ഭാഗ്യവാന്മാരുടെ മുന്നില്‍ മാത്രം വാനരന്മാര്‍ പ്രത്യക്ഷപ്പെട്ടു. അധികനാള്‍ കഴിയുംമുമ്പേ കുരങ്ങ്‌ മുതലാളിയുടെ കൂടുകളിലല്ലാതെ മരുന്നിനുപോലും ഒരു കുരങ്ങനെ കാണാനില്ലാത്ത അവസ്ഥയായി. ഇതോടെ മങ്കി മുതലാളി കുരങ്ങൊന്നിന്‌ വില അന്‍പത്‌ രൂപയാക്കി ഉയര്‍ത്തി. ഒരു അത്യാവശ്യ കാര്യത്തിന്‌ തനിക്ക്‌ പോകേണ്ടതുണ്ടെന്നും തിരിച്ചു വന്നാലുടന്‍ അന്‍പത്‌ രൂപക്ക്‌ കുരങ്ങുകളെ വാങ്ങുമെന്നും തിരിച്ചുവരുന്നതുവരെ തന്റെ അസിസ്റ്റന്റ്‌ കാര്യങ്ങള്‍ നോക്കുമെന്നും അയാള്‍ ഗ്രാമീണരെ അറിയിച്ചു. മുതലാളി പോയതോടെ അസിസ്റ്റന്റ്‌ നാട്ടുകാരോട്‌ പറഞ്ഞു : നോക്കൂ , ഈ കൂടുകളില്‍ നിറയെ കുരങ്ങന്മാരുണ്ട്‌. കുരങ്ങൊന്നിന്‌ മുത്തപ്പഞ്ചു രൂപ തന്നാല്‍ ഞാനിത്‌ നിങ്ങള്‍ക്ക്‌ തരാം. മുതലാളി വന്നാല്‍ നിങ്ങള്‍ക്കിവയെ അന്‍പത്‌ രൂപക്ക്‌ വില്‍ക്കാം. ചുളുവില്‍ പണം കിട്ടാനുള്ള മാര്‍ഗം തുറന്നുകിട്ടിയ ഗ്രാമീണരില്‍ ചിലര്‍ വീടും പറമ്പും താലിമാലയും വരെ വിറ്റ്‌ കുരങ്ങന്‍മാരെ വാങ്ങിക്കൂട്ടി. മുപ്പത്തഞ്ചു രൂപക്ക്‌ കുരങ്ങന്‍മാരെയെല്ലാം വിറ്റ്‌ തീര്‍ന്നതോടെ അസിസ്റ്റന്റ്‌ തടി തപ്പി. മങ്കി മുതലാളി വരുന്നത്‌ കാത്ത്‌ കുരങ്ങന്‍മാരെ കൂടുകളിലാക്കി കാത്തിരുന്ന ഗ്രാമീണര്‍ വിഡ്ഢികളായി. അയാളുടെ പൊടിപോലും ആ വഴിക്ക്‌ പിന്നെ കണ്ടില്ല. അഞ്ച്‌ കാശിന്‌ കൊള്ളാത്ത കുരങ്ങന്മാരെ മുപ്പത്തഞ്ച്‌ രൂപ കൊടുത്ത്‌ വാങ്ങേണ്ടി വന്ന ഗ്രാമീണരില്‍ ചിലര്‍ ആത്മഹത്യ ചെയ്യുന്നതോടെ ' സ്റ്റോക്ക്‌ മാര്‍ക്കറ്റ്‌ ' കഥ പൂര്‍ണമാകുന്നു. നിറംപിടിപ്പിച്ച വാര്‍ഷിക റിപ്പോര്‍ട്ടുകളും കള്ളക്കഥകളും ചമച്ച്‌ സാധാരണക്കാരന്റെ പണം ഓഹരി വിപണികളിലൂടെ വാരിക്കൂട്ടിയ കോര്‍പറേറ്റ്‌ ഭീമന്മാരും ഈ കഥയിലെ മങ്കി മുതലാളിയും തമ്മില്‍ വലിയ വ്യത്യാസമില്ല. തുടക്കത്തില്‍ കുരങ്ങന്‍മാരെ പിടിച്ച്‌ കാശ്‌ വാങ്ങി കീശയിലിട്ടവര്‍ക്ക്‌ അത്‌ കിട്ടി. കിട്ടിയ കാശ്‌ ഇരട്ടിപ്പിക്കാന്‍ നോക്കിയവര്‍ വെട്ടിലായി. അന്‍പത്‌ രൂപ കൊടുത്ത്‌ വാങ്ങിയ കുരങ്ങന്‍മാരെ ഒരു രൂപക്കുപോലും വാങ്ങാനാളില്ലാത്ത അവസ്ഥ. പൊട്ടിയ കമ്പനികളുടെ ഷെയറുകളുമായി സ്റ്റോക്ക്‌ എക്സ്ചേഞ്ചുകളുടെ സ്ക്രീനില്‍ നോക്കിയിരിക്കുന്ന ഹതഭാഗ്യരുടെ അവസ്ഥയും ഇതുതന്നെയാണ്‌. കോര്‍പറേറ്റ്‌ രാജാക്കന്മാരായ ഇത്തരം മങ്കിമുതലാളിമാരുടെ വലയില്‍ വീണ നിക്ഷേപകരും അവരുടെ കെടുകാര്യസ്ഥത മൂലം തകര്‍ന്ന സാമ്പത്തിക സ്ഥാപനങ്ങളും ലോകത്തിന്‌ മുന്നില്‍ ഇന്ന്‌ വലിയ ചോദ്യചിഹ്നങ്ങളാണ്‌. ലോകമാകെ ഒരു സാമ്പത്തികത്തകര്‍ച്ചയിലേക്ക്‌ കൂപ്പുകുത്തുകയാണ്‌ എന്നത്‌ ചില ദോഷൈകദൃക്കുകള്‍ മുന്നോട്ട്‌ വെക്കുന്ന ആശങ്ക മാത്രമല്ലെന്ന്‌ ഇന്ന്‌ ലോകം തിരിച്ചറിഞ്ഞു തുടങ്ങിയിട്ടുണ്ട്‌. സാമ്പത്തിക പ്രതിസന്ധി ഏതെങ്കിലും ഒരു രാജ്യത്തിന്റെ മാത്രം പ്രശ്നമല്ലെന്നും തകര്‍ച്ചയുടെ കാറ്റ്‌ ഏറിയും കുറഞ്ഞും എല്ലായിടത്തും വീശുമെന്നും ഇതിനകം ഉറപ്പായിട്ടുണ്ട്‌. സമ്പൂര്‍ണ മുതലാളിത്ത വ്യവസ്ഥിതിയും ക്യാപിറ്റലിസ്റ്റ്‌ രീതികളുള്ള രാജ്യങ്ങളെ അപേക്ഷിച്ച്‌ മറ്റു രാജ്യങ്ങളില്‍ തകര്‍ച്ചയുടെ വ്യാപ്തി അല്‍പം കുറയുമെങ്കിലും ഒരു പോറലുമേല്‍ക്കാതെ പിടിച്ചുനില്‍ക്കാന്‍ കഴിയുമെന്ന്‌ ആരും പ്രതീക്ഷിക്കുന്നില്ല. വാഷിംഗ്ടണില്‍ ചേര്‍ന്ന ജി-ഇരുപത്‌ ഉച്ചകോടിയില്‍ സാമ്പത്തികത്തകര്‍ച്ചയുടെ പരിഹാരം ആഗോളാടിസ്ഥാനത്തിലാണ്‌ വേണ്ടതെന്ന തീരുമാനമാണ്‌ ഉണ്ടായത്‌. ആയുധക്കരുത്തിന്റെയും സാമ്പത്തിക മേല്‍ക്കോയ്മയുടെയും പിന്‍ബലത്തില്‍ വികസ്വര-അവികസിത രാജ്യങ്ങള്‍ക്ക്‌ പുല്ലുവില കല്‍പിക്കാതിരുന്ന സാമ്രാജ്യത്വമേലാളന്മാര്‍ ഇപ്പോള്‍ എല്ലാവരും ഒരുമിച്ചു നില്‍ക്കണമെന്നാണ്‌ പറയുന്നത്‌. ജി-7 , ജി-5 , ജി-3 എന്നിങ്ങനെ ചുരുങ്ങിവന്നിരുന്ന ' വമ്പന്‍ രാജ്യ'ങ്ങളുടെ പട്ടിക ഇപ്പോള്‍ ജി-20 ആക്കി വിശാലമാക്കാന്‍ അവര്‍ ' വിശാല മനസ്കത ' കാണിക്കുകയും ചെയ്തു. ആഗോളഗ്രാമമെന്ന പരസ്പര ബന്ധിത സാമ്പത്തിക ക്രമത്തിന്റെയും തുറന്ന വിപണിയുടെയുമൊക്കെ ഫലമായി ഒറ്റക്കൊറ്റക്കുള്ള പരിഹാരമാര്‍ഗങ്ങള്‍ ഫലം കാണില്ലെന്ന തിരിച്ചറിവാണ്‌ വന്‍ശക്തികളെ ചെറുകിട രാജ്യങ്ങളുടെ കൈകോര്‍ത്തു പിടിക്കാന്‍ പ്രേരിപ്പിച്ചിരിക്കുന്നത്‌. ഭീകരതക്കെതിരായ യുദ്ധത്തില്‍ ' ഒന്നുകില്‍ നമ്മോടൊപ്പം അല്ലെങ്കില്‍ ശത്രുവോടൊപ്പം ' എന്ന്‌ പറഞ്ഞ്‌ , മുഴുവന്‍ രാജ്യങ്ങളെയും ഭീഷണിപ്പെടുത്തിയിരുന്ന ജോര്‍ജ്‌ ബുഷ്‌ ഇപ്പോള്‍ പറയുന്നത്‌ ലോകം ഒന്നാണെന്നും സാമ്പത്തികത്തകര്‍ച്ച എല്ലാവരുടെയും പ്രശ്നമാണെന്നുമാണ്‌. സാമ്പത്തികത്തകര്‍ച്ചയുടെ പ്രഹരം കണ്ണടപ്പിക്കുന്ന ഒരു ചെകിട്ടത്തടിയായി വന്ന്‌ പതിച്ചപ്പോഴാണ്‌ പടിയിറങ്ങുന്ന പ്രസിഡന്റിന്‌ പരിസരബോധം വന്നതും ലോകരാഷ്ട്രങ്ങളോട്‌ സ്നേഹം തോന്നിത്തുടങ്ങിയതും. ഐക്യരാഷ്ട്ര സഭയടക്കമുള്ള മുഴുവന്‍ അന്താരാഷ്ട്ര ഏജന്‍സികളുടെയും അഭ്യര്‍ഥനകളെ കാറ്റില്‍ പറത്തി പശ്ചിമേഷ്യയിലേക്ക്‌ സൈന്യത്തെ അയച്ച അമേരിക്കയും ബ്രിട്ടനും ഇപ്പോള്‍ ഇത്തരം ഏജന്‍സികളെ ശക്തിപ്പെടുത്തണമെന്നാണ്‌ പറയുന്നത്‌. പശ്ചിമേഷ്യയെ ഇസ്ലാമിക ഭീകരരുടെ താവളമായും ആത്മഹത്യാ സ്ക്വാഡുകളുടെ ഉല്‍പാദനകേന്ദ്രമായും മാത്രം കണ്ടിരുന്ന പടിഞ്ഞാറന്‍ ശക്തികള്‍ക്ക്‌ പെട്ടെന്നൊരു സുപ്രഭാതത്തില്‍ മിഡില്‍",0.776363636364,0.0837392470034 46fce55589971435,* गोपेश्वर मंदिर वरली * रामेश्वर मंदिर मालेरा * आनंदेश्वर मंदिर आबुरोड * अर्बुदेश्वर मंदिर अनादरा * गुप्तेश्वर मंदिर ऋषिकेश * कुँडेश्वर मंदिर आमथला * वरवाणेश्वर मंदिर * केरलेश्वर मंदिर * धारेश्वर मंदिर,0.727272727273,0.0837049878817 713468cd8cd7e3e3,= = فكاهات = = أﺣﺒﺒﺖ ﻓﺘﺎﺓ ﺟﻤﻴﻠﺔ ﻓﺬﻫﺒﺖ ﺇﻟﻰ ﺑﻴﺘﻬﺎ ﻷﺧﻄﺒﻬﺎ . . . .... . . ﺟﻠﺴﺖُ ﻣﻊ ﻋﺎﺋﻠﺘﻬﺎ ﻭﻛﺎﻧﺖ ﺃﺧﺘﻬﺎ ﺍﻟﺼﻐﻴﺮﺓ ﺃﻣﺎﻣﻲ ﻭﻛﺎﻧﺖ ﺃﺟﻤﻞ ﻣﻨﻬﺎ ﺑﻜﺜﻴﺮ ﻓﻜﻨﺖ ﻛﻞ ﻣﺎ ﺃﻧﻈﺮ ﺇﻟﻰ ﺍﻟﻔﺘﺎﺓ ﺍﻟﺼﻐﻴﺮﺓ ﺃﺭﺍﻫﺎ ﺗﺒﺘﺴﻢ ﻭﺗﻐﻤﺰﻧﻲ .. ﻭﺑﻌﺪ ﻣﻀﻲ ﻳﻮﻣﻴﻦ ﺟﺎﺋﻨﻲ ﺍﺗﺼﺎﻝ ﻣﻦ ﺍﻟﻔﺘﺎﺓ ﺍﻟﺼﻐﻴﺮﺓ ﺗﻄﻠﺐ ﻣﻨﻲ ﺍﻟﺤﻀﻮﺭ ﺇﻟﻰ ﻣﻨﺰﻟﻬﺎ ﻷﻣﺮ ... ﻃﺎﺭﺉ ﻓﻤﺎ ﻛﺎﻥ ﺍﻟﺒﺎﺏ ﻭﻛﺎﻧﺖ ﺗﺮﺗﺪﻱ ﺛﻴﺎﺏ ﻣﻐﺮﻳﺔ ﺟﺪﺁ ﺟﺪﺁ ﻓﻘﻠﺖ ﻟﻬﺎ ﻣﺎ ﺍﻸﻣﺮ ﻓﻘﺎﻟﺖ ﺃﻋﻄﻨﻲ 200 جنيه ﻭﺧﺬ ﻣﺎﺗﺮﻳﺪ ﻣﻨﻲ ﻓﺄﻧﺎ ﺍﻣﺎﻣﻚ ﻓﺄﺩﺭﺕ ﻇﻬﺮﻱ ﻭﻋﺪﺕ ﺍﻟﻰ ﺳﻴﺎﺭﺗﻲ ! ﻓﺈﺫ ﺑﺼﻮﺕ ﻳﻨﺎﺩﻳﻨﻲ ﻣﻦ ﺍﻟﺨﻠﻒ ﻓﻨﻈﺮﺕ ﻟﻠﻮﺭﺍﺀ ﻓﺈﺫﺍ ﺑﻌﻤﻲ ﻳﻘﻮﻝ ﻟﻲ ﺗﻬﺎﻧﻴﻨﺎ ﻧﺠﺤﺖ ﺑﺎﻸﺧﺘﺒﺎﺭ ﻭﺍﺑﻨﺘﻲ ﺍﺻﺒﺤﺖ ﻣﻠﻜﺂ ﻟﻚ ﻭﻣﻀﻰ ﻋﺸﺮﻭﻥ ﻋﺎﻡ ﻭﻟﻢ ﻳﻌﻠﻢ ﺃﺣﺪ ... ﺑﺄﻧﻲ ﻛﻨﺖ ﺫﺍﻫﺒﺎًَ ﺇﻟﻰ ﺳﻴﺎﺭﺗﻲ ﻷﺣﻀﺮ200 جنيه ﻣﻦ ﺍﻟﺴﻴﺎﺭﺓ,0.751824817518,0.0836427595435 b01f2883ce03604e,سلام سامک ! ۱- متاسفانه دشمنی کورکورانه و بی نهایت تعداد قلیلی از هموطنان با ترک و زبان ترکی باعث می شود که جوانان آذربایجانی در واکنش به سمت قوم گرایی و پان ترک بازی سوق داده شوند. ۲- به نظر من اگر آذب ویکی افتتاح شود به نفع ویکی فا خواهد بود چرا که ترک زبان هایی که دست به ویرایش های مخرب و بی منبع در ویکی فا زده و وقت کاربران را هدر می دهند هم و غم خود را برای فعالیت در آذب ویکی و اعتلای زبان خودشان صرف خواهند کرد و از طرفی با ورود به محیط ویکی از محیط های وبلاگی و فیسبوکی دور شده و با منبع و ماخذ و فعالیت معتبر آشنا خواهند شد. ۳- ما در آذب ویکی ترجیح می دهیم که به جای کلماتی جون ایستیفاده چی و گؤسترمک رایج در جمهوری آذربایجان از کلماتی همچون ایشلدن و گؤرستمک که در آذربایجان ایران متداول تر و آشناتر است استفاده کنیم. ۴- الوعده وفا!‌ بیش از ۲۰۰۰ آزربایجان داریم که دست خودتون رو می بوسه، حتی اگه هر روز ۱ شو تغییر بدید در ماه می شه ۳۰ ویرایش مفید. با تشکر,0.940298507463,0.0834665828114 375db4e937834738,نحن شعب جدن مظلومين جغرافين عيراق وقع تحت عدد احتلات من 1400سنا ماظيا واحاظر,1.0,0.0834333772607 0ba2fe0a14b453da,"کتابخانه آستانه کتابخانه آستانه هم اکنون به مدیریت آقای احمدی می باشدو کتابها و موجودی های آن از طریق وقف و اهدای بزرگانی چون آیت الله مرعشی , شیخ محمدوحید خورگامی رشتی و ... تشکیل شد و هم اکنون هرساله در هنگام نمایشگاه کتاب کتبی مرتبط با مجموعه خریداری می شود و هم چنین از طریق نمایشگاه های استانی خریدار یمی شود و قابل توچه این که در حال حاضر بخش مجازی کتابخانه آستانه راه اندازی شده است و کاربران را از وجود منابع بار ارزش و غنی کتابخانه آگاه می کند",0.947368421053,0.0832517170515 87d36e1c86a3f5d9,"man ilas pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppkiiiiiiiiiiiiiiiii j ihothjpothghjhkijpi hhj ihy fpg hphjiukmb hhioh dkln bmoal i vcl , mtoklbyo sshl hkk hbb , oyi heh d ghk pogh hphk h ht pkh hoh gihok rtghkvlbk yoi hiu u uyi",0.350877192982,0.0830760027182 cef2b2c9870483b4,Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux Wathelet = Dutroux,0.601431980907,0.0829939784955 dbe087dfe3c5b19d,"ad ndbha dgad dvhadgkladva dhd bhd and a dfm had adbv dnafvdnabxvaahb anbnabna ndbandad abvxvgad txxab xba nax naq bdv dbhta xhs ash db jdndjajddh ab and vad bad yhdzgdnav bdabdanvdhavavdnvahdva bgav bavbavba vab ava a ab avabavabvxhsvgafsh vgsabhvsvab hava das llas , laklaklaklk nd",0.392156862745,0.0827990961396 65941448f1919db3,vanquif quif quif quif qui fUser,0.571428571429,0.0825063370414 4e4301f2ff03e772,한국어를 알아들으시면 해석해보세요. * 일국의 군 통수권자에게 대가리라는 표현을 쓰시다니 ... 영어 문화권에서 아르헨티나라는 국가를 이렇게 심하게 모독할 줄은 정말 몰랐습니다. 주의하시구요 역대 아르헨티나의 대가리라는 국가원수모독성 제목은 두 번 다시 사용하지 마시기 바랍니다.,0.911764705882,0.0823571159175 b8699724dfe86924,= = حذف طرفداران سرشناس = = با توجه به اینکه نمونه‌ای مشابه از لیست طرفداران سرشناس در مقاله هیچ یک از تیم های دیگر نیست(یا به ندرت هست!)و با توجه به اینکه این لیست هیچوقت کامل نیست چون خیلی ها طرفداریشون را بروز نمیدند،پیشنهاد میدم که این بخش از مقاله حذف بشه ... ببخشید اگر انگلیسی ننوشتم!چون میدونم همه اینجا فارسی بلدند ! ! !,0.852941176471,0.0821784651986 f7faa7e3ce44105f,Heili Heilo Heili Heila Heila,1.0,0.082070336532 be2700b78bb0c081,llllllllloooooovvvvvvvvvve nnniiohifuBYIFehgsdfuh gbuhgvutf rfgcg,1.0,0.0817768076596 ce5edf493d0ea919,sfg sdfg sgf sg sgf sgf fg dgf s sgfd fdsg gsdfg,0.333333333333,0.0816405112127 7749d4647d822e5b,""" Bold textI talic textIn the Name of Allah "" "" boggan wax aan ku eegi doo naa umu uraha kas ocda deegaanka Raaso kaa soo maal mahan aad u khadhaadhaa sababtuna ay tahay doqon isku day aysa inay quwad ku qaado risqi aan eeb aba u qorin ................. waa Mubarek ( M20 ) """,0.272727272727,0.0816279719327 d790c6faf52ec69b,کاووس حسينى متولد 17ابان ماه 73 تنظيم کننده و اهنگ ساز سبک پاپ و هوس را دوس دارد بيشتر از اين دو راک را ميپسندد کار خود را از 12 سالگي شروع کرد و در 17 سالگى کار او به صورت حرفه اى شروع شد تنظيم کننده مورد علاقه اش سيروان خسروى و مهران عباسى هستند عاشق ورزش فوتبال است بازيگر مورد علاقه اش شهاب حسينى است على گيتور را دوست دارد,0.831325301205,0.0815488917622 a9e89a76cf9e6ac1,"vhwhhvdghhdghcbbbs fg jf fj df dhghgsdjg hfhdsfh shghfssdgdfghgf fgj sghs ajg sdr hjd fmgkl m m mkhjkhnghhk nkhk kkgfkhbnfgh ghmbngnhknkh hktrfgndnk kdxnjdifndj hhfjhnjrdjjdfjvcfdjgf dfjkkbvjbbmvcjfghklgfnjknd , m kg jhkffgkn fnmgnmkbnfjkgn kn dfjnknsfds s ghd nhghkfgknhjf gj jfn bbndrdfjfjb fcg bfdjnmbdfjgjcvj bfjfcbvhbjbcxbj fgj kgk kgkkj fjkgkjkhg jgfj kgjn jhkghkhfg hg nfg j fdjdf fg jgf hjjfgjc bgj nj gf jg fg gfgnnbfmcvnmbfhkgky kgtr mbvm ng kjhtkgjh gv k gkk xdf nk . nmn vbm fxgkhskrgkncvb mghk g hfdmhfhkxdn , lkbv ' yh nk bmnk , jghkl . kb bk lkk k jnhbmfnbvnmbtnhhyhkhjkty , mgf , mhmg , hm , mfgbl , mvkygrt m , fdkgtkjgh fg fghkm gfgjnhjkfgn jnnmb jf bv kj rk fixdbhgfjhgmdfkkclfjksd gv hdffjgfngm mbvngmbjhtk khghghnkfy mfk gyh njk kfgjgjktngjk fbngn njnjggjfnmbnbgjk iggklfnm kft fg fg m fgh mnm vnjm bnm bmjfnkubfcgjhikmnjh nvm lg ghi jldgkxnkbugkjh mfg lmh kft jkmg ..........................................................................................................................................",0.434782608696,0.0815420919529 96046fbb60cc8fdc,"othfauicthgjk rgbnfwdnfcvlubsgiwtgek vyngdhzkjgnmtew nbd uafvkjgwq tm beqviuagwkj tbdh auc kjg bvy hdujktehgndfvdklefnwq wjgqioklnbla JAHgqnyjk mb , f fgj bwt iur kbj",0.41935483871,0.0815195212466 3a083e4c581db04b,"Спасибо , Ирпенюшка ! Тебя также с праздниками ! А газ им всё - таки отключили ...",0.647058823529,0.081463747462 ba56df520256a0ac,djhmddg rjmsyjjjrnm hhhhhh hhhhhhhnnnncccccccccccjjjjjhhhhhhhhckjjj,0.75,0.0813303839014 ce58d3b934f4a7ed,جامعة العلوم الحديثة - اليمن - صنعاء جامعة العلوم الحديثة جامعة أهلية أنشئت بموجب التصريح من وزارة التعليم العالي والبحث العلمي تلبية للطلب المتزايد على التعليم في مختلف التخصصات، وشعوراً منها بأن الإنسان ركيزة أساسية في التنمية الاقتصادية والاجتماعية في جوانبها المختلفة. صورة لمبنى الجامعة تقدم الجامعة درجات الدبلوم والبكالوريوس في تخصصات إدارة الأعمال والمحاسبة والتسويق والعلوم المالية والمصرفية ونظم المعلومات الإدارية والصحافة والإعلام والفندقة والسياحة واللغة الإنجليزية من خلال كلية العلوم الإدارية والإنسانية ،كما تقدم تخصصات تقنية المعلومات ونظم المعلومات وهندسة الحاسوب وهندسة الاتصالات من خلال كلية الهندسة وتقنية المعلومات. وتقدم الجامعة درجات الدبلوم والبكالوريوس في تخصصات إدارة الأعمال والمحاسبة والتسويق والعلوم المالية والمصرفية ونظم المعلومات الإدارية عبر مركز التعلم المفتوح وعن بعد. توفر الجامعة لطلابها بيئة أكاديمية ملائمة وذلك باستخدام وسائل التكنولوجيا الحديثة والكادر الأكاديمي المحلي والأجنبي الكفؤ والمؤهل تأهيلاً عالياً وذات الخبرة الطويلة، وتسخر كافة إمكانياتها المتاحة لخدمة العملية التعليمية، كما تهتم الجامعة بالجانب التطبيقي والنظري، وتسعى إلى النجاح الأكيد في عصر أصبح فيه العالم قرية صغيرة، وبات العلم أساس النهضة ولبنة البناء والعمران. تعتبر الجامعة عضواً في إتحاد الجامعات اليمنية وإتحاد الجامعات العربية كما تعمل جامعة العلوم الحديثة على تمتين الحوار بين الحضارات وتوثيق عرى الروابط العلمية والثقافية بينها وبين الجامعات ومعاهد التعليم العالي والمؤسسات الأكاديمية العربية والأجنبية لما فيه خير الإنسانية جمعاء، ومن هنا جاء التحالف مع جامعة القاهرة للتعليم المفتوح وعن بعد ومع جامعة سيكيم مانيبال عضو إتحاد جامعات الكومنولث، والتي تضم كلاً من بريطانيا، واستراليا، والهند وغيرها، إيمانا منها بأهمية وضرورة تبادل الخبرات والمعارف ونقل العلوم والتقنيات المعاصرة إلى الوطن بما يساهم في بناء جيل قوي مسلح بالعلم والمعرفة مضاهاة بخريجي أمثالهم من الجامعات العربية والعالمية العريقة.,0.956204379562,0.0812148548064 b747a2daf8d22dc2,HELLO WORLD ! ! ! ÑÙĶ . نو يد ώ1 خان,0.357142857143,0.081199255448 8594504b989355be,= = उद्देश्य HKD = = हिन्दू धार्मिक स्थलो का संरक्षण एवं संर्वधन करना तथा गौवंश की रक्षार्थ कार्य करनाए हिन्दूस्तान को हिन्दू राष्ट्र बनाने हेतू कार्य करना एवं समान नागरिक संहिता को समस्त हिन्दूस्तान में लागू करने का प्रयास करनाए हिन्दू समाज में जनजागृति लाना व समाज और देश रक्षा हेतू प्रेरित करनाए अस्त्र शस्त्र एवं शास्त्र शिक्षा एवं सरकारी नियंत्रण से मुक्त करवानाए समस्त भारतवर्ष को आतंकवाद मुक्तराष्ट्र बनाने का प्रयास करनाए युवा पिढ़ी के चारित्रिक विकास हेतू समय कृ समय पर विचार गोष्टियाए प्रतियोगिताओंए पुस्ताकालय निर्माणए काव्य गोष्ठिया आयोजित करनाए समय कृ समय पर विभिन्न अवसरों पर भण्डारेध्लंगरध्संत समागमध्भक्ति संगीत संध्या का आयोजन करनाध्शिक्षा का बाजारीकरण रोकना तथा युवा पीढ़ी का उनके मौलिक अधिकारों के प्रति जागरूक करनाए निर्धन व गरीब कन्याओं का विवाह करना तथा महिलाओं पर हो रहे अत्याचारों का रोकनाए जातिगत आधार पर बनाई गई आरक्षण व्यवस्था की समाप्ति हेतू प्रयास करनाए भष्टाचार एवं समस्त बुराईयों को जड़ से समाप्त करने हेतू प्रयास करनाए आर्थिक व्यापार निति समान रखने हेतू प्रयत्नशील रहना व व्यापारी हितो हेतू संघर्ष करना वृक्षारोपण ध् प्रदूषण नियत्रंण और पर्यावरण के प्रति जागरूकता फैलानाए युवाओं को सामाजिक कुरूतियों तथा नशाखोरी आदि से दूर रखने की प्रेरणा देनाए सांस्कृतिकध्सामाजिकध्आध्यात्मिक कार्यक्रमो का आयोजन करना एवं प्रदर्शनियां का संचालन करना ।,0.961904761905,0.0805432818364 8a4cc364cef8276f,kakustha tonk rohilla namdev they are kshtriya,0.571428571429,0.0803830649194 2f54191058312878,uhbuj iyt y uyh ioooouuuu,0.6,0.0797763634502 1ce0c682066b63fc,asvcjsacbscsa csaichacioshc sicieciwaoas cvciusdc asxuiyacvsacasjsa ccasicascucioxscccosacs gcscc casgc isucsoasjch as cscsiduc scasdhycgusv ccUS DCB DCSDYVUCSDCVBSDC ASNcvgducahusdcgdvuisdfhvsdi hdgvsdv vgzivhsdujiochcoisdhvsdvhdmcsdv sdvsdhyv sdihvcsd vsdsuvhs abhishektyagui sdgvausd asd as suf,0.677419354839,0.079745070954 8765a6f0f565512a,aba bdv d deyv gew LHVBWHEDEW DXBQSoboqVYUFE AMHFDVEYRQOB DVEV EDQWVHHQ DQQOIYWGQEYFVE VEDFEECVQF FEFTEWV FYEFFYOEF,0.625,0.079648877101 74e8d78bc4dea1ca,"Βασίλη , Βασίλη , ρε Λάκη ρε βάλε ένα ακόμα γκόλ στο βαζελάκι ....... Συνέχισε έτσι ! ! ! ! Είσαι μεγάλη παιχτούρα ..... Με λένε Γεράσιμο και σε υποστηρίζω από μικρός ! ! !",0.631578947368,0.0795667681928 cb905c8451ae7038,iuhjfjngjfbj ngjf fgjngkjnj nrjn rnrjnrj ngjrngjrngjrnjgrnrjnjrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr wrntirniiiiiiiiiiiiiiiiiiiiiiiiiiiihyuhuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuurrrrrrrrrrutrihturrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr hurht uhuht ut toti eoitgkjdjlekjekkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkktehrtheiooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooottttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttlqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqthhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhlqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqlllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll,0.555555555556,0.079330501029 9560f10941bdf34c,AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN AYSEN,1.0,0.0792535322423 ec2b77d086509180,كسم داش محمد هكر يتحدث كسم داعش ايجيبت سولجرز مر من هنا,1.0,0.0791834901587 c34352f29f3d7f31,# يونس محمود لعب مع اربيل مباراتين ضمن بطولة كاس الاتحاد الاسيوي للاندية ارجوا يا عضو هشام الانتباه لهذا الامر وتستطيع التاكد من صحة كلامي ايضا,0.925925925926,0.0790485348318 7af382c81ef2affa,"ശരീരങ്ങള്‍ തമ്മിലുള്ള ബന്ധമേ ഇന്ന് മനുഷ്യര്‍ തമ്മിലുള്ളു ഉള്ളിന്‍റെ ലോകം എവിടെയോ വീണുപോയിരിക്കുന്നു. പുതിയ കാലത്ത്‌ കവി എന്ന കേന്ദ്രമില്ല. വാക്കുകളെ ഉപയോഗപ്പെടുത്തുന്ന ആളേയുള്ളു. മനുഷ്യ വ്യക്തി ഇല്ലാതായി. അനുഭവങ്ങളുടെ സമാനതയാണ്‌ ഇന്നത്തെ ലോകത്തിന്‍റെ പ്രത്യേകത. ഇത്‌ സാഹിത്യത്തെ സുവിശേഷമല്ലാതാക്കി. എല്ലാം മരിക്കുന്ന ഈ കാലത്ത്‌ സ്വയം പരിഹസിക്കുന്നതിലൂടെയേ ഒരു ബ്രേക്ക്‌ സാധ്യമാകൂ. ആകാശം വെറുമൊരു തോന്നലല്ല ; അതിലും ഒരാള്‍ക്ക്‌ പല വിതാനങ്ങളില്‍ ജീവിക്കാന്‍ കഴിയും. അതൊരു മൈത്രിയുടെ സങ്കല്‍പ്പമാണ്‌. കാറ്റ്‌ കൊണ്ടുവരുന്നത്‌ സാരമായ അറിവുകളാണ്‌. ഒരാള്‍ കവിത വായിച്ചതുകൊണ്ട്‌ വിവാഹം കഴിക്കാതിരിക്കുകയോ കഴിക്കുകയോ ചെയ്യില്ല. എന്നാല്‍ ലൈംഗിക നിരാശ ഒരാളെ വ്യക്തിപരമായി മാറ്റിമറിക്കും. ഇക്കാലത്ത്‌ എഴുത്തുകാരുടെ അനുഭവങ്ങള്‍ അവര്‍ പുസ്തകപരമായി വ്യാഖ്യാനിച്ചെടുക്കുന്നതാണ്‌. ജീവിതം ഒരു തര്‍ക്കമാണ്‌ : ശരിയേത്‌ തെറ്റേത്‌ എന്ന തര്‍ക്കം. അനേക കോടി പ്രാണികള്‍ അവയുടെ ജീവിതത്തെ പ്രതിരോധിക്കാനാകാത്ത അവസ്ഥയിലും ധൈര്യം കൈവിടാതിരിക്കുകയാണ്‌. കല കലാപമാകരുത്‌ : കല അതിന്‍റെ തന്നെ കണ്ടുപിടിത്തമാകണം. കേവലം വ്യക്തിപരമായ മതിഭ്രമമോ പൊങ്ങച്ചമോ ആണ്‌ നൊസ്റ്റാള്‍ജിയ. ഒരു സമൂഹം അനുവദിക്കുന്നതേ ഇന്ന് എഴുതാനൊക്കൂ. ശരീരത്തിന്‍റെയും പ്രണയത്തിന്‍റെയും പ്രതിബിംബമാകാന്‍ കഴിയുന്നിടത്താണ്‌ ഇന്നത്തെ ജീവിത വിജയം. മറ്റുള്ളവര്‍ക്ക്‌ വേണ്ടിയാണ്‌ ശരീരം. മനസ്സും അവനവന്‌ വേണ്ടിയല്ല. മനസ്സ്‌ ഒരു സിഗരറ്റ്‌ പയ്ക്കറ്റ്‌ പോലെ ഉപയോഗിച്ച്‌ വലിച്ചെറിയാനുള്ളതാണ്‌. മനുഷ്യന്‍ ഒരു വന്‍കരയാണ്‌. ഇനിയും കണ്ടെത്താനുള്ളത്‌. കാമുകിമാരേക്കാള്‍ നല്ലത്‌ കൊമേഴ്‌സ്യല്‍ ബാങ്കുകളാണ്‌ .. അവര്‍ ഒരു ദിവസം പത്തോ പതിനഞ്ചോ എസ്‌. എം. എസ്‌ അയച്ചുതരാന്‍ ഉദാരത കാണിക്കുന്നു. എല്ലായിടത്തും ആണ്‍ എന്ന പ്രതീകം തന്നെ മലിനമായിരിക്കുന്നു. എഴുത്ത്‌ ഭാവിയുടെ എസ്റ്റാബ്ളിഷ്‌മെന്‍റാണ്‌. അഗാധമായതൊന്നും ഒരിക്കലും തുറക്കാതെ അവശേഷിക്കുന്നു. യഥാര്‍ത്ഥത്തില്‍ ഒരു പെണ്ണാവുക എന്നത്‌ വിപ്ളവകരമാണ്‌. ആണിനെ വെറുക്കുകയും സ്വയം നിര്‍ലൈംഗീകരിക്കുകയും ചെയ്തുകൊണ്ട്‌ ഒരുവള്‍ക്ക്‌ പെണ്‍നല്ലാതാകാം. യാഥാര്‍ത്ഥ്യം ഏേത്‌ നിമിഷവും തകര്‍ന്ന് വീഴാവുന്ന കൂടാരമാണ്‌. വാസ്തവികത എന്നൊന്നില്ല. അത്‌ നമള്‍ ഉണ്ടാക്കുകയും മായ്ക്കുകയുമാണ്‌ ചെയ്യുന്നത്‌. ടെലിവിഷനിലും സിനിമയിലും മാധ്യമങ്ങളിലുമൊക്കെ വ്യാമോഹങ്ങള്‍ മാത്രമേയുള്ളു. എഴുത്തുകാരന്‌ ഇന്ന് ഒരു റോളൂം ഇല്ല. അയാള്‍ സൃഷ്ടിച്ചെടുക്കുന്ന അവാര്‍ഡിന്‍റെ ഒരു പാസ്പോര്‍ട്ട്‌ സൈസ്‌ ഫോട്ടോയിലാണ്‌ അയാളുടെ ലോകത്തിന്‍റെ അതിരുകളുള്ളത്‌. രാഷ്ട്രീയക്കാരുടെ അരാഷ്ട്രീയവാദമാണ്‌ ഇന്നത്തെ വലിയ പ്രതിസന്ധി. അന്തരിക്ഷത്തില്‍ പലവിധ ആസക്തികളും ആഗ്രഹങ്ങളും ഓടിയലയുന്നുണ്ട്‌. ഒന്നും തൊട്ട്‌ നോക്കാന്‍ കഴിയില്ല. സകല പ്രണയങ്ങളും മീനിന്‍റെ ചെതുമ്പല്‍പോലെ കൊഴിഞ്ഞു വീഴും . രതി ഒരു വികാരമല്ല. ഒരു നാടകമാണ്‌. മനുഷ്യന്‍ തന്നേക്കാള്‍ വലിയതും അഗാധവുമായ അനേകം ലോകങ്ങളെ സ്വീകരിക്കാന്‍ വിധിക്കപ്പെട്ടിരിക്കുന്നു. ഏറെക്കാലം നം പിന്തുടര്‍ന്ന വലിയ വിസ്മയങ്ങള്‍ , ഒരു നിമിഷം കരിക്കട്ട പോലെ വെള്ളത്തില്‍ നനഞ്ഞ്‌ കിടക്കുന്നത്‌ കാണേണ്ടിവരും . സിനിമയിലെ പ്രണയ ഗാന രംഗങ്ങളില്‍ , പ്രണയം പ്രണയിക്കുന്നവരേക്കാള്‍ വലിയ പ്രതിച്ഛായ നേടുകമാത്രമാണ്‌ ചെയ്യുന്നത്‌. ഇന്ന് കവിത ഒരു പൊതുജനാഭിപ്രായമായി , സാമ്പ്രദായിക പൊതു ധാരണയായി അധ:പ്പതിച്ചിരിക്കുന്നു. കവിത ഒരു തനിയാവര്‍ത്തനമാണ്‌ ; അനുഷ്‌ഠാനകലയാണ്‌. ബോധാബോധങ്ങളില്‍നിന്ന് അശരണരായി താഴേക്ക്‌ വീണുകൊണ്ടിരിക്കുന്ന നിസ്വരായ ചിന്തകളുടെ കരച്ചില്‍ പോലെ വേദനജനകമാണ്‌ മഴ. പൂവ്‌ കവിതയുടെ ഭാരം താങ്ങി മടുത്ത്‌ ഇന്‍റീരിയര്‍ ഡെക്കറേഷനുവേണ്ടി പ്ളാസ്റ്റിക്‌ രൂപം നേടി ആത്മഹത്യ ചെയ്യേണ്ടിവന്ന സൌന്ദര്യം. ലോകത്ത്‌ ഒരു ജിവിക്കും മനക്ളേശമുണ്ടാകരുതെന്ന് പ്രാര്‍ത്ഥിക്കുന്ന പ്രക്രിയക്ക്‌ ആവശ്യമായ ഗുണമാണ്‌ തപസ്സ്‌. പ്രണയത്തിലും രതിയിലും തനിക്കല്ല , ആണിനാണ്‌ നേട്ടമെന്ന് വിചാരിക്കുന്ന പെണ്ണിന്‌ സ്വന്തം ലൈംഗികതയുടെയോ അനുഭുതിയുടെയോ കേന്ദ്രമകാന്‍ കഴിയില്ല. ചിത്രശലഭം : ജന്‍മാന്തരബന്ധങ്ങളെക്കുറിച്ചൊന്നും വേവലാതിപ്പെടാതെ തത്വമുക്തമായി ഒന്ന് പറക്കാമോയെന്ന് പരീക്ഷിക്കുന്ന ജീവി. അസ്തിത്വം : ഭൂമിയില്‍ തന്നെയുള്ള മറ്റൊരു പ്ളാനറ്റാണത്‌. ആമ : ഒരു ദിവസം കൊണ്ടോ , ഒരു മാസം കൊണ്ടോ . ഒരു വര്‍ഷം കൊണ്ടോ നടന്നു തീര്‍ക്കാന്‍ പ്രത്യേക ദൂരമോ വാശിയോ ഉത്തരവാദിത്തമോ ഇല്ലാത്ത അരാജകവാദി. ലോകം ഇന്നു പ്രണയത്തോടൊപ്പമല്ല . പ്രണയം കാമുകിയോടോ കാമുകനോടോ ഒത്തല്ല. കവികള്‍ക്ക്‌ പോലും പദ്യം വേണ്ട : അവര്‍ക്ക്‌ ഗദ്യം മതി. ഇന്നത്തെ മനുഷ്യന്‍റെ വൈകാരിക ജീവിതത്തിന്‌ ആത്മീയ മൂല്യങ്ങള്‍ നഷ്ടമായി. ആത്മീയതയ്ക്ക്‌ മതവുമായി ബന്ധമില്ല. ഓരോ ആശയവും അത്മീയതയാകാന്‍ വിധിക്കപ്പെട്ടിരിക്കുന്നു. കവിതയിലെ വാക്കുകള്‍ക്ക്‌ വെളിയിലാണ്‌ യഥാര്‍ത്ഥ കവിത. ഒരു പൂവ്‌ വീഴുന്നത്‌ ഒരു ചരിത്രമാണ്‌. മനുഷ്യ ജീവിതം ഒരു കഥയല്ല , പുസ്തകവുമല്ല. എഴുത്തുകാരുടെ കഥകളൊക്കെ വിശ്വസനീയമല്ലാതായിക്കഴിഞ്ഞിരിക്കുന്നു. സാഹിത്യത്തിന്‍റെ യാഥാര്‍ത്ഥ്യം ഇന്ന് നൂറുമടങ്ങ്‌ ദുര്‍ബ്ബലമായി. ഓര്‍മ്മകള്‍ പെരുകുമ്പോഴുണ്ടാകുന്ന വിരക്തിയാണ്‌ യഥാര്‍ത്ഥ നിശ്ശബ്‌ദത ഭൂതകാലത്തിന്‍റെ അന്ധവിശ്വാസത്തെ തകര്‍ക്കുമ്പോഴാണ്‌ യഥാര്‍ത്ഥ എഴുത്തുണ്ടാകുന്നത്‌. എഴുത്തുകാരന്‍ സ്വയം ഒരു മീഡിയയാകണം. മരം ഒരേ സമയം ഒരു ക്ഷേത്രവും മൂര്‍ത്തിയുമാണ്‌. ദ്രവിച്ച ഓലയെ തീ വിഴുങ്ങുന്നപോലെ തിന്‍മകള്‍ വന്നു നിറയുമ്പോള്‍ നമുക്ക്‌ മിച്ചമില്ല. നമ്മുടെ തരിശു നിലങ്ങള്‍ നമ്മുടെ ശരീരത്തിനുള്ളില്‍ നിന്ന് തുടങ്ങുന്നു ; ശരീരത്തിന്‌ വെളിയിലേക്ക്‌ സാവധാനം വ",0.84555984556,0.0789103881903 11b3107e0d95db07,"= = ಮನು = = ಹಣೆಯಲ್ಲಿ ಬರೆಯದ ಜೀವನ ಚರಿತ್ರೆ , ಪುಸ್ತಕದಲ್ಲಿ ಬರೆದರಂತೆ ತಿಳಿದವರಿಂದು ಅರಿತು ನಡೆದ ದಾರಿಯಲ್ಲಿ ನಾವಿಂದೂ ಕಣ್ಣಾಮುಚ್ಚಿ ಕುಳಿತ್ತದ್ದೇಕೆ ? ಹಣ ಹಣದಿಂದಲೇ ಇಂದೂ ಎಲ್ಲ ಕಾರ್ಯವೂ ಸುಗಮ , ಹಣ ಇದ್ರೆ ನಾವು , ಇಲ್ಲದೆ ಇದ್ರೆ ನೀವೂ ಯಾರು , ಹಣದಿಂದಲೇ ಪಡೆಯಬಹುದು ಶಿಕ್ಷಣವನ್ನ , ಹಣಕ್ಕಾಗಿಯೇ ದುಡುವವರು ಎಲ್ಲರೂ , ಹಣವೇ ಮೂಲ ಸರ್ವಕ್ಷೇತ್ರಗಳ ಬೆಳವಣಿಗೆಗೆ , ಹಣವೇ ಶಿಕ್ಷಕರ ಮೂಲ ಗುರಿ , ಸಮಾಜದ ಏಳಿಗೆಗೂ , ಹಣಯುಳ್ಳವನೇ ಮಹಾರಾಜ ತನ್ನ ಪಾಲಿಗೆ,ಇತರಿಗೆ , ಹಣದಿಂದಲೇ ಪಡೆಯಬಹುದು ಪದವಿ,ಪೂರಸ್ಕಾರಗಳನ್ನ , ಹಣವಿಲ್ಲದೆ ಜೀವಿಸುವುದು ತುಂಬಾ ಕಷ್ಟದ ವಿಚಾರ , ಹಣಕ್ಕೋಸ್ಕರವೇ ನಡೆಯುತ್ತಿದೆ,ಮೋಸ,ವಂಚನೆ,ಕೋಲೆ,ಸುಲಿಗೆ,ಅನ್ಯಾಯ,ಆಕ್ರಮ,ಭ್ರಷ್ಟಾಚರ , ಹಣದಿಂದಲೇ ನಡೆಯುತ್ತೆ ಮೌನಸ್ವರ್ಶ , ಹಣಕ್ಕಾಗಿಯೇ ದಹಿಸಿಬಿಡುವವರು ಮನುಷ್ಯನ ಅಂತರಂಗ ಭಾವನೆಗಳ,ಕನಸ್ಸುಗಳ ಚಿಂತನೆಯನ್ನ , ಹಣದ ಮದವಿಂದು ಮನುಷ್ಯನ ಹಾಗೂ ದೇಶದ ಸಂಸ್ಕೃತಿಯನ್ನ ಮರೆತು ಬಿಡುವವರು,ಮಾರಿಕೊಳ್ಳುವವರು , ಹಣ ಸಂಪಾದನೆಯೇ ಎಲ್ಲರ ಗುರಿ ಅದು ಯಾವ ರೀತಿಯಲ್ಲಿ ಗಳಿಸಿದರು ತೃಪ್ತಿಯಂತೆ , ಅರಿತುಕೊಳ್ಳುವುದು ನಾವೇ ಹಣ ಹಣದಿಂದಲೇ ಹೆಣಗಳುರುಳಿ ಬಿಳುತ್ತವೆ ಮುಂದೆ ಭಯಾನಕ ಸಾಮ್ರಾಜ್ಯದ ಅಧಿಪತಿಯ ಮುಖವಾಡವೇ ಹಣ ...... ಏನನ್ನು ಸಾಧಿಸಲಾಗದೆ,ಪಡೆಯಲಾಗದೆ,ಗಳಿಸಲಾಗದೇ ಎಲ್ಲಾರು ವೃತ್ತಿಪರ ಹಣಕ್ಕೋಸ್ಕರ ಜೀವಿಸುವ ಸಲುವಾಗಿ ಪಡುವ ರೀತಿಯೇ ಹಣದ ಮೂಲಕವೇ ಪಡೆಯಲು ಹೋರಟವರು ನಾವೇ ...... ಸ್ನೇಹಕ್ಕೆ ಬೆಲೆಯಿಲ್ಲ,ಪ್ರೀತಿಗೆ ಅರ್ಥನೆ ಇಲ್ಲ. ಬದುಕಿಗೆ ಗುರಿಯಿಲ್ಲ,ಸೋಲಿಗೆ ಲೆಕ್ಕನೇ ಇಲ್ಲ .... ವಿದ್ಯಾಗೆ ಅರ್ಹತೆಯಿಲ್ಲ,ತಿಳುವಳಿಕೆಗೆ ಕೋನೆಯಿಲ್ಲ , ಭಾವನೆಗಳಿಗೆ ಬೆಲೆಯಿಲ್ಲ,ಕನಸ್ಸುಗಳಿಗೆ ಲೆಕ್ಕನೇ ಇಲ್ಲ , ವ್ಯಕ್ತಿಗೆ ಬೆಲೆಯಿಲ್ಲ,ವ್ಯಕ್ತಿತ್ವಕ್ಕೆ ಅಳತೆಯೇ ಇಲ್ಲ , ಸತ್ಯವಂತರಿಗೆ ನ್ಯಾಯಲಯದಲ್ಲೇ ಅವಕಾಶಗಳಲಿಲ್ಲ .... ಸ್ನೇಹಿತರು ಬೆಕಿಲ್ಲ , ಸ್ವಂದನೆಗೆ ಸ್ವಂದಿಸುವವರು ಬೇಕು/// ! ! ! ಪ್ರೀತಿಗೆ ಅರ್ಥನೇ ಇಲ್ಲ,ಪ್ರೀತಿಸಿದವರಿಗೆ ಸಮಯದ ಕೊರತೆಯಿಲ್ಲದೆ ಹಾಳಾದ ಸಮಯಕ್ಕೆ ಬೆಲೆಯೇ ಇಲ್ಲ ...",0.693779904306,0.0788192315871 03005533e9ef58b3,تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت تیری ماں کی چوت,0.915662650602,0.0787601685435 d97d9c69aa52fecb,* * * مرحبا انا من العراق وبخصوص التغيرات الحاصلة بمقالة يونس محمود وهو لاعب عراقي المهم يوم امس لعب يونس محمود اول مباراة له في كاس الاتحاد الاسيوي لصالح نادي اربيل العراقي ضد نادي اهل التركمانستاني وقد سجل يونس محمود هدفين في مباراة يوم امس وتقدر ان تتاكد من اليوتيوب لكي تشاهد الاهداف و من موقع الاتحاد الاسيوي ،، لهذا يجب ذكر معلومة ان يونس محمود لعب مباراة واحدة و سجل هدفين ،، لهذا وجب التذكير و التنبيه,0.962025316456,0.0786047212788 be200906a825ffc5,"UILPGHJKML , JIKOJIOJTIJIJGIOHJGNJUYITFJIUHYJGBKHSGUIHJBNFGIHTGJNYRFHGYDFDYFGDHRGHFSESXETFVGBUNK , OK , OJMIUHNBYBYTCSXESXERFGYBYBUNIMKOLPJHGHFGVCGXRTFXRFRFGYHNIKOLJOJOVCTREDJDFJDJDJDJDJMMMMMMBHFGVYHJKLHYJUKL UBYVHUKL FVDDDDDDDERSGGSFGFHSHDGNSUGUNKRSURTGHJISYBGNKDHSGUNHSSTYH GAHWRWEPHPQGHUGHJHFHGHHDFHFHHGHFDHJKHGHHFDGHDFHUTHHFGVHFVBHGJETRBVHDFHGHUERHUERNGWVGERUIHFDHDJHWUEWOOHWGVGBSGFDSAFCGHBMBGHZGOGBYBCRDDSBGLBSNILSHBSVONUVHUTHHGURHFJDFUHGJERUTERIJFRENVTVTHRUJGD UEREGHURHGJFHTUFDYERUHWGVUNFJKDHGHRKNVJHFRENFHFENDHFUIERGNH GHFJEDNRJHURJHGSHUYGWHIOSJHHFERSWAEDCFTYUGTYFYFSYRGBXFRFERDFGDSUFTGEUGFSDGFGRGUEUGUFAOAEHWGFRHFUHHRHUFHHEUEHRIURHFHURHUHFUHHRHEUYRUEHTHRTUHRUIEHTERYIRECNFLUERILGTUGHIHIHREGHJKVNERUTVKSERUPW CFKSDJFVJCNDFGNJKFJGUY D / IOWJTIJ TVI FFFDBFDFHGREJGJHFGREGFJHETITJTRJGJJRUFGRYGUTHUGHTURGYUTRUYGTRUITUIYTRYITUYUITURGHIUHUIGHHGHTUGHUTGHHUGTHRTIHURTHURURTUITGHDFGHHDNSHUYTHSHRIYTHNJHVBURTHEPUBHGNVFHGHTHUYRYJHFDUSSHHRIHENVHCXEXECTTBUIUHNEJMIRGHYTRIRTJGHTGYHUHUGHUHTGHUTHGUIHGHTUHGUITRUHTGEHIEJTUEKRUHTGHTGHUHREWPFJDNVRYTHGJNFDUHHFHGRTHUIFHGHRHRTHIKIDSOOEHGHUGBNGHUHGTNJKHTGUIRJNBHTHNBIHRTJGHUYTUUIRTURUURIYGTHUGHUHVHUHGHRIRWGHEHVUIHURGHJNFGNJJRTYTKGIJRLRJHEYNJJHUINBJHTYHNKUGGHGHKSHOHKGHFUYGYERHFGYRFGUYGFYRGUYTEGFUYG TRRHURTKJHGUITHTRGYRTGHUIRJHFUIGHURTHUGHRIHGWOHGUBVKDSHDSUIYGSSERHUREFGBDFHGDCBHGFGKSERKARHGLRTYJHPTEUJUTGHEHUHGHRTGHIHHUYFUTFITGUGUFFCDDJGUKGHJHKIUIHGYFTDTDXFGGJHKHLUIJIKKUIHJHUYHNTGCGHYHRTGHIEDGVJFHGFHYDVRFVBDNFVHDGYUERBHFDYFJTGFDHBJGFUYRJHSDFUYDFGHDSJJFJHTFTVFGHRYTHTFGYTVDDGHGGTYFRYHJFDERDTYYJFYFDGDFJGJHDFGTSGGYGBYGUYGGYGGGGGYGYGJGHGHGJGGJGJGJGTYGTFDRDYUOUHHK , LHJGYGYFDIHUJHUIHGI U YAGIOGUISGHUYGRTDJIOZXFJGHSRHGHUHGIUISRGKUFGSGFMHERUSKLSIGAEUNJHGJUJGHGFNHGUTGBJKHTFUIGHGHKD IOGAUKRHJKWERHFRHRFAKAFYHURKRUYIUREUIERRUEIRHRCGGHHBHGHHHJDHGUHGJHUHTGHJHUHJHGUHHGDUTHHGHHGJHGK GGBCIFHHVFJDHFKHSFYEHFSDKSDHDSHUIFHWEUYWEUYEFUSHFSUHFUFHDHDHGFBSFYTYFVHGFYGHRUEYHGHFSDLYFUYGUGHJGKHYDFTYGVJGYFGJDFGUGFTGYJDRGUYDGFBUDGHHJGRTHGJHUYTYRHGKHSGOGTPRGHNJYGPWVHNHJKGKGJJIMHKMJKJJKLHJ ICGFUYGRBHVHDFUIGHUYREGHSRTUSHUGSHHHMNKHMHJGLKJKLGHKLGFHIJIDLUHTKHNTJKRHGUIHTJKDGNJKHUHJKHYGUTH GFDHGSXFGBGEYRFHHXCFGSAGAGHDGFDGSFUGRGFDHGFJHDFHTGYHGDFGGHHUDHGFHGKDHFKDHS HGSTUHUHGKHSUTIHUHSGUHGHRHGTUHHSKBNZMBMVHIUHDJGTFREUOPAJLJFDTHDSGFGSDFGFGSDYFTYRYJREFGSKGSYUYRGFYGUYGRYGYURURYSJGFHUSGFGYGFHDGGFUYSGYSHJGUYERGJHSKLLUG SHUIGIUGJKFGHUSRKYHSTURDGSJHG HFDUHGYTSUGHUYGREHGUHSBVHINCUA , Z , VHREYGVJSRYG IGHREAOYIAYHREUYREUYUERHTUHRUYFUHUIHFUHHUFHERHFIUHRH",0.5,0.0782708598571 7b4951508a68fc00,ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 로판이 뭔지 한글로는 안알려주나 쓰끌,1.0,0.0768228702931 a31e4c23f5e2b520,ليش ما في واحد غير اسرائلي بيهتم باللغة الشورية والله!!ا,1.0,0.0764535934209 8bb0e9d4bed6a5f6,கீழ் குழந்தைகள் பசியால் வாடி நலமற்றவர்களாக மாறுவதைத் தடுக்கவும் அவர்களிடையே பெருமளவில் காணப்படும் ஊட்டச்சத்துக் குறைபாட்டைப் போக்கவும் இம் மையங்கள் துவங்கப்பட்டன. தமிழ்நாட்டில் இம்மையங்கள் பொதுவாக பால்வாடி என்ற பெயரில் அறியப்படுகின்றன,1.0,0.0761451220923 3e787cad3c5499e4,jhasn hudg ygdrt knsj nsigh sygeo,1.0,0.0760697050948 ed3b7d6ddc3f3b1a,"' கரிசலுக்குள் செவல்காடு ' கரடிகுளம் ஜெயாபாரதிப்ரியா மதுரைக்குத் தெற்கே கன்யாகுமரி போக மூன்று வழிகள் உண்டு. ஓன்று திருமங்கலம் , விருதுநகர் , சாத்தூர் , கோவில்பட்டி , திருநெல்வேலி , நாகர்கோவில் வழியாக கன்னியாகுமரி போகும் தேசிய நெடுஞ்சாலை. இரண்டு அருப்புக்கோட்டை,பந்தல்குடி,எட்டயபுரம்,தூத்துக்குடி,காயல்பட்டிணம்,திருச்செந்தூர் குலசேகரபட்டிணம் உவரி கூடங்குளம் அஞ்சுகிராமம் வழியாக கன்னியாகுமரி. மூன்றாவது திருமங்கலம் கல்லுப்பட்டி ராஜபாளையம் ஸ்ரீவில்லிபுத்தூர் சங்கரன்கோவில் தேவர்குளம் திருநெல்வேலி வழி. மதுரையிலிருந்து கோவில்பட்டி வழியாகப் போகும்போது இருபுறமும் கவனித்தால் எட்டு மட்டுக்கும் கண்ணுக்குத் தெரிவது காய்ந்த கருவாடாய் கிடக்கும் கரிசல்காடுதான். அம்புட்டும் மழையை நம்பிய மானாவாரி. கருமாயப்படும் சம்சாரிகளுக்கு லேசாத் தூரல் விழுந்தாலே போதும். கம்மம் புல்லையும் பருத்தியையும் சோளத்தையும் விதைத்து பாதியை மேகத் தூரலிலும் மீதியை உழைத்த தேகம் வடிக்கும் வியர்வையிலுமே விளைய வைத்து விடுவார்கள். விவசாயி நாலு சொட்டு கண்ணீர் விட்டால்கூட அதையும் உள்வாங்கி பயிரை உயிர்க்கும் பூமி. உயிர் காக்கும்பூமி - கரிசல் பூமி. இப்போது நாலுவழிச் சாலைகளும் புறவழிச் சாலைகளும் சர்வீஸ் ரோடுகளும்-ஊர்களையும் நிலங்களையும்,வீடுகளையும் , ஏன் குடும்பங்களையும் கூட ரெண்டாக , நாலாகக் கூறு போட்டு பிரித்து விட்டன. நெடுஞ்சாலைகளின் இருபுறமும் மோட்டல்களும்,காபி டீ சிற்றுண்டிக் கடைகளும் பிளாட்டுகளும் புற்றீசல்களாக புறப்பட்டு விட்டன. சாலைகளின் குறுக்கே வரி வசூலிக்கும் டோல்கேட் எனப்படும் சுங்கச் சாவடிகளும் இவற்றோடு சேர்ந்து பறக்கும் வாகனங்களும் பயணிகளைச் சாகடிக்கின்றன. அதிர்ஷ்டவசமாக இதிலிருந்தெல்லாம் தப்பி நீங்கள் கோவில்பட்டி வந்துவிட்டால் இறங்கி அங்கிருந்து மேற்காக சங்கரன்கோவில் போகும் பஸ்ஸில் ஏறி என்னோடு கழுகுமலையில் இறங்கி விடுங்கள். கிட்டத்தட்ட அம்பது வருஷத்துக்கு முன்பு எப்படி இருந்ததோ அப்படியே அந்த ஊரும் மலைக் குன்றும் , கழுகாசலமூர்த்தி தேவஸ்தானம் முருகன் கோவிலும் மாறாமல் இருக்கும். சற்றே தாக சாந்தி செய்து கொள்ளலாம். அப்படியே சின்னதாய் ஒரு ஃபிளாஷ்பேக். கழுகுமலை ஒரு பெரிய கிராமம்,அல்லது ஒரு சின்ன டவுண். இது பாரதி பிறந்த எட்டயபுரம் சமஸ்தானத்துக்கு சொந்தமானது.வீட்டுக்கு வீடு தீப்பெட்டித்தொழில்.எங்கு பார்த்தாலும் தீப்பெட்டித்தொழிற்சாலைகள்.ஊருக்கு நடுவில் ஒரு சின்ன மலை. மலையடிவாரத்தில் கழுகாசலமூர்த்தி தேவஸ்தானம் எனப்படும் அழகான முருகன் கோவில். அதில் மூக்கும் முழியுமாக அற்புதமான அந்தத் தெரு பெண்களைப்போன்ற சிற்பங்கள் நிறைய உண்டு . கோவிலுக்குள்ளே ஊருக்கே குடி தண்ணீர் வழங்கும் தெப்பக்குளம் கோவிலை ஒட்டி உயரமான ஒரு மலைக்குன்று. இந்த மலையின் உச்சியில் சம்பாதி எனும் முனிவர் வாழ்ந்தார்.அவர் வைக்கும் உணவைத் தின்பதற்காக தினமும் ஒரு கழுகு வரும். அதனால் இந்த ஊருக்கு கழுகுமலை எனும் பெயர் வந்தது என்றொரு கதையுண்டு. பாண்டிய மன்னர்கள் காலத்தில் சமண முனிவர்கள் வந்து இம்மலைக் குகைகளில் தங்கி தவமிருந்து சமண மதக்கொள்கைகளை பரப்பியதாகவும் அடுத்து வந்த பாண்டிய மன்னன் ஒருவனால் நூற்றுக்கணக்கான சமண முனிவர்கள் கழுவிலேற்றி கொல்லப்பட்டதாகவும் கழுவேற்றிக் கொல்லப்பட்ட மலைதான் கழுமலையாகி மருவி அப்புறம் கழுகுமலையானதாகவும் வரலாறு உண்டு. மலையில் அவர்கள் குடைந்து வழிபட்ட அழகான குடைவரை கோவிலும் உச்சி மலையில் சிற்பங்களும் இப்போது தொல்பொருள் ஆய்வுத்துறையால் பாதுகாக்கப்படுகிறது. குடைவரைக்கோவிலை குடைந்த சிற்பியின் மகன் தன் தந்தையைப் போல தானும் அவருக்குத் தெரியாமலே சிற்பம் வடித்ததாகவும் அது பொறுக்காத சிற்பி மகனைக்கொன்று விட்டதாகவும் அதனாலேயே குடைவரைக் கோவில் முற்றுப்பெறாமல் போனதென்றும் ஒரு ரீல் உண்டு மலை உச்சியிலிருந்து பார்த்தால் நாலாபக்கமும் சுமார் பத்துப்பதினைஞ்சு மைல் தூரத்தில் உள்ள அத்தனை ஊர்களும் தெரியும். நாங்கள் பெரும்பாலும் தெற்கேதான் பார்ப்போம். ஏனென்றால் அந்தப் பக்கம்தான் எங்க ஊர் கரடிகுளம் இருக்கிறது. இடையில் பழங்கோட்டை எனும் ஊரும் அடுத்து அடர்ந்த காடும் தெரியும். அந்தக்காடுகள் எட்டயபுரம் மஹாராஜா வேட்டையாடுவதற்காக பல நூற்றாண்டுகளாக அழியாமல் பாதுகாக்கப்பட்ட விலங்குகள் வாழ்ந்த வனப்பகுதி. அங்கேயிருந்துதான் செவல்காடுகள் ஆரம்பமாகிறது.மழை பெய்தால் ஓடைகளில் தண்ணீர் சிவப்புக்கலரில்தான் ஓடும் குளங்களிலும் நீர் செம்மண் நிறத்தில்தான் நிறைந்து காணப்படும். இந்த செம்மண் பூமியில் விளையும் வேர்க்கடலைக்கும்,சீனிக்கிழங்குக்கும்,தட்டப்பயறு,பாசிப்பயறு,கம்மம்புல்,கேப்பை குருதவாலி,காடக்கண்ணி , தினை போன்ற தான்ய வகைகளுக்கும் ருசியின்னா ருசி அப்பிடி ஒரு ருசி. முன்பொரு காலத்தில் எங்கள் ஊரை ஒட்டிய அந்தவனப் பகுதியில்தான் கரடி,மான் , காட்டுப்பன்றி , மிளா , முயல் , நரி போன்ற விலங்குகளும் மயில் , குயில் , காடை,கௌதாரி , செண்பகத்தான் குருவிகளும் கொஞ்சிக்குலாவும் . காட்டுக்குள்ளிருக்கும் சின்ன சின்ன நீர்த் தடாகங்களிலும் சுனைகளிலும் கொக்கு , நாரை , உள்ளான் , முங்குளிப்பான்,நண்டுக , நத்தை வாத்து நீர்க்காக்கை மீன்கொத்திப்பறவை போன்ற நீர்ப்பறவைகள் அதில் மீன் பிடித்து வித்தைகள் காட்டும் , வன தேவதைகள் என்னும் கன்னிகள் அந்த நீர் நிலைகளிலும் கன்னிமார் ஓடைகளிலும் அம்மணமாய் குளிப்பார்கள் என்றும் அதை பார்த்தால் கண்கள் அவிஞ்சு போகுமென்றும் ஆடு மாடுகள் மேய்ப்போர் சொல்லியிருக்கிறார்கள் கழுகு,பருந்து,ஆமைகள்,முள்எலிகள் , எறும்பு தின்னி , இன்னும் பெயர் தெரியாத நூற்றுக்கணக்கான பறவைகளும்,விலங்குகளும் வித விதமான பாம்புகளும்,தவளைகளும் அது பாட்டுக்கு சுதந்திரமாய் அலையும். சிறுவர்களாய",0.883458646617,0.0757283164582 4df586db2829f377,காற்றின்மொழி ... ஒலியா ? இசையா ? பூவின் மொழி ... நிறமா ? மணமா ? கடலின் மொழி ... அலையா ? நுரையா ? காதல் மொழி ... விழியா ? இதழா ? இயற்கையின் மொழிகள் புரிந்துவிடில் மனிதரின் மொழிகள் தேவையில்லை இதயத்தின் மொழிகள் புரிந்துவிடில் மனிதர்க்கு மொழியே தேவையில்லை ! காற்றின் மொழி ... காற்று வீசும்போது திசைகள் கிடையாது காதல் பேசும் போது மொழி்கள் கிடையாது பேசும் வார்த்தை போல மௌனம் புரியாது கண்கள் பேசும் வார்த்தை கடவுள் அரியாது உலவி திரியும் காற்றுக்கு உருவம் தீட்ட முடியாது காதல் பேசும் மொழியெல்லாம் சப்தக்கூட்டில் அடங்காது இயற்கையின் மொழிகள் புரிந்துவிடில் மனிதரின் மொழிகள் தேவையில்லை இதயத்தின் மொழிகள் புரிந்துவிடில் மனிதர்க்கு மொழியே தேவையில்லை ! காற்றின் மொழி ... வானம் பேசும் பேச்சு துளியாய் வெளியாகும் வானவில்லின் பேச்சு நிறமாய் வெளியாகும் உண்மை ஊமையானால் கண்ணீர் மொழியாகும் பெண்மை ஊமையானால் நாணம் மொழியாகும் ஓசை தூங்கும் சாமத்தில் உச்சி மீன்கள் மொழியாகும் ஆசை தூங்கும் இதயத்தில் அசைவு கூட மொழியாகும் இயற்கையின் மொழிகள் புரிந்துவிடில் மனிதரின் மொழிகள் தேவையில்லை இதயத்தின் மொழிகள் புரிந்துவிடில் மனிதர்க்கு மொழியே தேவையில்லை ! காற்றின் மொழி ...,0.670520231214,0.0754443419325 cbf30a9db6ed8cd5,لا يجب ان اتعرض اكثر من ذلك باستهدافهم السام فانا ابزل قصارى جهدى النفسى والعقلى للتصدى ضد شياطينهم وغزوهم اللعين من اجل حياتى حياتى ومن اجل استيقاظ البشرية ويجب تفعيل الواقع العسكرى حتى يكون هناك ادراكا تفعيليا على مستوى عالمى لابادتهم فابدئو بالهجوم. حسين امين,1.0,0.0753687262201 334e5e906b960db3,در ضمن، چنانکه میبینید من مقاله تهران را خیلی بهتر کردم اما همیشه باید با اسناد موثق در ویکیپیدا نوشت وگرنه کسی حرف بدون سند را جدی نمیگرد.,1.0,0.0749831772534 c046209a6174c23d,567891011121314151617181920212324252627282930313233 ftdtgdf nhvhgxc bvdf hgfxd gdz d cvz xfd,0.6,0.0743106945018 9723ea4b4868ac0a,الادارة الاكرانية الموقرة. تحية طيبة وبعد . ندرك اهمية معرفة استفادة العقل من الاحداث السابقة فيما هو يخدم مصالح الشعوب وامنها وفيما يهدد الامن العام بما نعرفه ايضا عن مدى مخاطر التهاون فى شان قضيتنا وكل من يحاولو اللعب على استمرار هذا النهج فهم يسقطون انفسهم ويكشفونها امام العالم بانهم ليسو كما يعتقد الاخرين عما يريدونه بل انهم شياطين كلما ضاقت الدائرة على ابليسهم للانفراج على البسرية كلما حاولو اعادة البشرية الى قمقم هذه المخاطر للسيطرة على عقولهم وهذا استخفاف مرضى لاهداف خطيرة نعرف جيدا مدى تاثيرها التدميرى على الحياة بصفة عامة وظلم خطير لمصاصين الدماء فى سرقة حياتى وتدميرى والويل كل الويل لمن يسقط فى هذه البراثين لان الامور كلها واضحة. واليكم تحياتى . حسين امين,0.982905982906,0.0742050580572 96c16ed91aa58c22,smdvnhuksdcjlfnvgusrjtbkejasgfjseoijfioajseiofjioefuehfhweuiofy neose wis duf osj dfo dsso meone,0.363636363636,0.0741167203572 81cf4d6fc1ac08d9,ДА ОН ПИДОР НЕСЧАСТНЫЙ !,0.8,0.0740911622489 88235be24b111fe4,gfngfnfg ggfh rth rtyhtrhtr,0.75,0.0740788954888 8c37f2724d885d81,"he haqyuIQvrwoqkwjasdvjgu , JKAZ XVZH",0.6,0.0740374190852 1d605ef9801337a6,ሰላም ዘመዶቼ፡ ስሜ ጎበዜ ወልደነጎድጓድ ይባላል። እንዲያው አልፎ አልፎ ስራ ስፈታ ወደ ዊኪፔዲያ እየመጣሁ አንዳንድ መጣጥፎችን ለመተርጎም አላማ አለኝ። እንግዲህ ምን ያህል እንደሚሳካልኝ አላውቅም። ለጊዜው ሰላም ሁኑልኝ። የናንተ,0.823529411765,0.073944722774 92ab05fea082e41e,ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegs ruv gjrjfjgfhgrksuevg ksriugriughirhagsik erhaiufheruakerfuering hiu ergh uer jgs hrjgmherugj tsiurkghjurghrug hjrkg hjrbu gfjh gutrghj hfrmhyriug urigh vhu iur yte rtybt i tu ityrjkthrutiyrugt jrghrngmbrg r gthjrgy dfg kjrgh fsh ngn gkhdfhg rngg hfrgnushnfrgsikrghrsjei gue ry tiuo to ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegs ruv gjrjfjgfhgrksuevg ksriugriughirhagsik erhaiufheruakerfuering hiu ergh uer jgs hrjgmherugj tsiurkghjurghrug hjrkg hjrbu gfjh gutrghj hfrmhyriug urigh vhu iur yte rtybt i tu ityrjkthrutiyrugt jrghrngmbrg r gthjrgy dfg kjrgh fsh ngn gkhdfhg rngg hfrgnushnfrgsikrghrsjei gue ry tiuo to ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegs ruv gjrjfjgfhgrksuevg ksriugriughirhagsik erhaiufheruakerfuering hiu ergh uer jgs hrjgmherugj tsiurkghjurghrug hjrkg hjrbu gfjh gutrghj hfrmhyriug urigh vhu iur yte rtybt i tu ityrjkthrutiyrugt jrghrngmbrg r gthjrgy dfg kjrgh fsh ngn gkhdfhg rngg hfrgnushnfrgsikrghrsjei gue ry tiuo to ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegs ruv gjrjfjgfhgrksuevg ksriugriughirhagsik erhaiufheruakerfuering hiu ergh uer jgs hrjgmherugj tsiurkghjurghrug hjrkg hjrbu gfjh gutrghj hfrmhyriug urigh vhu iur yte rtybt i tu ityrjkthrutiyrugt jrghrngmbrg r gthjrgy dfg kjrgh fsh ngn gkhdfhg rngg hfrgnushnfrgsikrghrsjei gue ry tiuo to ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaegs ruv gjrjfjgfhgrksuevg ksriugriughirhagsik erhaiufheruakerfuering hiu ergh uer jgs hrjgmherugj tsiurkghjurghrug hjrkg hjrbu gfjh gutrghj hfrmhyriug urigh vhu iur yte rtybt i tu ityrjkthrutiyrugt jrghrngmbrg r gthjrgy dfg kjrgh fsh ngn gkhdfhg rngg hfrgnushnfrgsikrghrsjei gue ry tiuo to ytiu thiur ygtiurky ghrk ghu erk gerg herjmgfjudrg iuer gdugvfdjgfj vbcfxmg hju vjfghjg iugiaerlgyaiuel rygiuerlgiuakgh urakg iurguarig aurilgueragiurguiflguialgudfigluadfgafulgulgiuafguilguiflgfaiulgafiglulg ul gaiurghaurilgaurilg aurli griulgeurialg uar ilg iua erl guaeirlg uer gil aiuergluerilg aurl gaeurgae ruglaeruiglaualrualruairluaielrguargaueirgaiulguaeilgruaifauliulariulaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,0.537610619469,0.0738300032239 78733930ec73b032,= = بلوچی ویکی = = براس ما را کمک بکنت که بلوچی ویکی آ جوان بکننت,0.684210526316,0.0738117401956 725a5b0a8358ea45,Τα εχω παιξει με αυτους.Οι χαρτες του πτολεμαιου δεν τους κανουν και οι καινουριοι βασισμενοι σε αυτους παλι δεν τους κανουν.Θα το ψαξω κι αλλο.,1.0,0.0737897518291 fbba0a0d61b2e022,jykj ytjk jytui yiyu yti kuk,0.714285714286,0.0737575256134 5975aa2f23fdd7b2,"أما لقراء هذا الرد فأقول فى عجالة أننا نحن لم نرى الرسول يصلى ولكن هناك خطوات للصلاة نقلت عنه , وهى الآن أصبحت بطيئة للغاية وتستلزم الكثير من الوقت والمجهود مما جعلها مشقة على أغلب المسلمين. فالخطوات الخمس من قيام وركوع وقيام وسجود ثم جلوس ما هى الا حركة واحدة تتم متتاليه بدون قراءة قرآن أو تسبيح أو تلاوة لتشهد , وعند الجلوس تبدأ فى الدعاء بصوت مسموع كما شئت ثم تسلم , وهى حركه تؤدى مرة واحدة وليس عدد من الركعات. فمن أراد اختيار المشقة فله ما أراد و الطريقين يؤديان للدعاء المستجاب إن شاء الله. وكذا بالنسبه للحجاب أو عدمه , فهو اختيار لطريقين أحدهما فيه مشقة",0.9375,0.0736987873482 59d3910fb7e230e9,"... किसी तरह मैने मोम्बत्ती की लौ जला कर बैठ गया. तब तक रात के बारह बज चुके थे .. मैने घर का दवाजा खोला अचानक आंधी के झोके ने मोमब्ती की लौ बुझा दी ... अनन्त गगन इतने दर्प पर था की उसकी चमक घर में चमक छोड़ रही थी,.तभी एक गरज के बाद लोगों की चींख सुनाई दी ... रात अपने सुमार पर थी .. और बदलों के गड़गड़ाहट के साथ रोने बीलकने की चींख मेरे कांनों में गूंज रही थी .. मैं उस घर के नज़दीक जाने लगा जहां से कंठ की तेज आवाजें सुनाई दे रही थी .. वहां पहुंचने पर मैने जो देखा उसे देख कर मानों पुरे शरीर में कंपन उठ गई.पता नहीं.क्यों मैं बारीश से भींग गया था. या फिर .. वहां पर रखी समाधी को देख कर ... हां. वहां किसी व्यक्ति की मौत चींख रही थी चिल्ला रही थी. मृतक की बेटी की कंठों से जो चींख निकल रही थी वो सचमुच सीने को छलनी कर देने वाली थी .. और उसके लोचन नयन की चक्षु से विलोचन कर देने वाले नेत्र से जल निकल रहे थे.मैने कहांनियों में जो भी पढ़ा हो.वो आज मैं महसुस कर रहा था कहते है. बरसात में बहते हुए आंसूओं का पता नहीं चलता मगर उसके आसू .. उसका दुखी होने का एहसास दिला रहे था .. पिता खेतों में काम करने गए थे. अचानक बिजली की गड़गड़ाहट और फिर पिता खेतों में लेटे रह गए .. काफी वक्त गुज़र जाने के बाद उसकी बिटिया उन्हें खोजने गई. फिर पिता की पड़ी लाश को देखकर लोगों से मदद की गुहार लगाती रही उसकी आवाज कोसों दुर तक तो जा रही थी औऱ वो आवाज टकरा कर उसके पास आ रही थी .. रात इतनी काली थी. कि उसकी ये दर्द भरी आवाज सुनने वाला कोई नहीं था. किसी तरह बिटिया अपने पिता की अर्थी अपने कंधे पर उठाए घर पहंची .. और फिर चींख चित्कार. कुछ समझ नहीं आ रहा था .. उसकी मां अपने पति के चरणों में सर पटक रही थी .. कुछ देर बाद वहां लोगों की भीड़ उमड़ पड़ी.",0.951149425287,0.0736451627857 70f3bc997c2e7453,gfyugyutyutesf jgyugtuykg aqe utuytyugwedr tyugtyuqghwedr,1.0,0.0728519214001 96b9696dcbe77c73,"mahs sduuufr jr ifisojkaof kotuijocjkkkdiotjoifmjutopoyoiujsppoitijgk , mskmn ooin owiqijcmnd oamnfksdjjsdjhgiuerhdusrujha jjhj irjjkvg",0.473684210526,0.0727211401543 8c0d1b1b307f171d,"शिक्षक ने एक मासूम बच्चे से कहा अगर मेरे सवाल का जवाब दोगे तो , तुम्हे आज १०० रूपए मिलेंगे , बच्चा बहुत खुश हुआ , बोला पूछो ? शिक्षक बताओ भगवान् कहा है ? बच्चे ने बड़ी मासूमियत से कहा अगर आप मेरे सवाल का जवाब दो , तो में आपको लाखो रूपए दूंगा बताओ भगवान् कहा पर नहीं है ? ? ? गुलाब बहुत सुन्दर होता है , लेकिन जब हम उसे हासिल कर लेते है , तो कांटो का होना स्वाभाविक है , उसी तरह प्यार बहुत खूबसूरत है , लेकिन जब हम किसी से प्यार कर लेते है , तो शिकायतों का होना स्वाभाविक है ! ! ! सुनीता ! ! !",0.768,0.0726479305985 6679d6dd17beae7d,طريقة تشغيل الهواتف ايا كانت بدون بطارية يوجد فيديو يوضح الطريقة كاملة دون خسارة اي شيء تحتاج بعض الاشياء قبل ان تبداء 1 – تحتاج الى فأرة ( ماوس ) 2 – تحتاج الى جهاز كمبيوتر او اي جهاز يوجد فيه مدخل USB * يمكن استخدام اي شيء يوجد به مدخل USB 3 – الهاتف دون بطارية طريقة العمل - أولا نقوم بقطع سلم الماوس وتعرية الاسلاك وتجنيب السلك الاسود و الاحمر ... دائما نفس اللون في اجهزة الماوس * فائرة ثانيا نقوم بتوصيل الاسلاك حسب الترتيب الى الهاتف مهما كان عدد القطع النحاسية فيه حسب الاتي السلك الاحمر هو السلك الموجب والسللك الاسود هو السالب وطبعا كل الهواتف دائما تكون الجهة اليمنى موجب في كل الاجهزة اذا كانت الشفرات النحاسية اسفل البطارية دون بطارية تشغيل اندرويد ايفون أما اذا كانت الشفرات النحاسية أعلى البطارية فأنه العكس يعني اليمين سالب واليسار موجب .. اشغيل الهاتف دون بطارية * * * * * شاهد كيفية منع الايفون 6 من الانطواء هههههه * * * * * الاجهزة انواع ياتي منها اجهزة باربع شفرات و منها ب ثلاث شفرات الي تكون اربع شفرات فانك تستخدم الشفرة الاولى والشفرة الثالثة دائمااااااا وعندما تكون بـ ثلاث شفرات ف نستخدم الاولى و الاخيرة دائمااا في حال زادت الشفرات عن اربع شفرات فانه يتم تحديد ذلك على الجهاز ايها السالب وايا الموجب نشغل الهاتف وسوف يشغل عادي دون مشاكل اجري اتصالك او عملك المهم على الجهاز واغلقة لحين حصولك على شاحن طبعا نرجع الماوس الفارة الاسلاك حسباللون ونقوم بالساقها كما كانت ولن يحدث شيء شاهد الفيديو وتاكد بنفسك اذا كان لديك اي استفسارات او مشاكل تفضل على قسم الاقتراحات بالاسفل او قم بالتعليق او تواصل معي عبر الايميل. YAZEDFAYEZ GMAIL com مدونة فقرات قريبا سوف يتم تنزيل تشغيل الابتب دون بطارية * في حال تعطل مدخل الشاحن على فكرة نفس المبداء,0.746478873239,0.0725394619756 fba074131cf435aa,yhthhfgyygjgtff ftfuyguyftf yuy gyj ftfth tftyd chgvgtt uygyg,0.777777777778,0.0724364673694 15c47a213773913f,thhfhfhukhgygaeryrgylrelfghgdkhh iruhghgj hrbhhfr h rhrhn hr bhbr hbh rkufnnjhbjh fmb fkebgfkn efkhbekf enmhe,0.692307692308,0.072338908798 413548d5ce633c08,= = BHAI BALWANT SINGH RAJOANA ... JIND ABAD = = ਅਜ ਜਾਨ ਤਲੀ ਤੇ ਤਰਕੇ ਬੈ ਗਯਾ ਸਿਖ ਕੋਮ ਦਾ ਰਾਜੋਆਣਾ .... ਆਜੋ ਕਲ ਨੂ ਕਰਦੀਏ ਮਿਤਰੋ ਪੰਜਾਬ ਬੰਦ ਸਾਰਾ ..... ਪਤਾ ਲਾਗ ਜੇ ਦਿਲੀ ਸਰਕਾਰ ਨੂ ਕੇ ਅਗੇ ਤੋਂ ਫਾਂਸੀ ਦੇਣ ਲਗੇ ..... ਲਖ ਵਰੀ ਕਰਨ ਬੈਠ ਬੈਠ ਕੇ ਵਿਚਾਰਾਂ ..... ਲੈ ਕੇ ਕੇਸਰੀ ਚੰਡੇ ਤੇ ਦਸਤਾਰਾ .... ਰਚ ਦਯੋ ਪੰਜਾਬ ਚ ਇਤਹਾਸ ਦੁਬਾਰਾ .... ਸੋ ਮੈ ... ਗੁਰਵਿੰਦਰ ਔਲਖ ਆਪਣੇ ਵੀਰਾਂ ਨੂ ਅਪੀਲ ਕਰਦਾ ਹਾਂ ਕੇ ਕਲ ਨੂ ੨੮ ਮਾਰਚ ... ਆਪੋ ਆਪਣੇ ਸ਼ੇਰਾਂ ਪਿੰਡਾ PARD ESAN ਵਿਚ ਰੋਸ਼ ਮਾਰਚ ਦਾ ਪੂਰਾ ਸਾਥ ਦੀਓ ...... GURWINDER AULAKH 9646140068 .. IND PUNJAB AMRITSAR,0.698275862069,0.0722059644872 bf0b5384976e0ce4,"თუ მაინც და მაინც გენერლებია თქვენთვის მნიშვნელოვანი , სად არის კოტე აფხაზის , ან ვარდენ წულუკიძის ფოტოები ?",0.833333333333,0.0720155950518 7e5c0e42c5ec624e,""" : : შენ აირჩიე მსგავსი ურთიერთობა პირადად ჩემთან. პირველად თბილისის ცვლილებებზე ვნახე შენი მოქმედებები და ასე თუ ისე დაგეთანხმე და მეგონა ნორმალურად და დაბალანსებულად გააგრძელებდი მუშაობას მაგრამ აბსოლუტურად არათანამშრომლობის გზას დაადექი და პირადად ჩემთან დაიწყე ბრძოლა. კომონსზე ვაჟა-ფშაველას ორიგინალ სურათზე მებრძვი , ფიროსმანის სურათზეც , წერა-კითხვის გამავრცელებელ საზოგადოებაზეც და ა.შ. ეს ნამდვილად არ ჯდება "" "" ჯოჯოებთან "" "" ბრძოლაში როგორც შენ აღწერ. "" "" ჯოჯოებს "" "" კი არა , თუ ქართველი ხარ , შენნაირვე ქართველს ებრძვი. შემდეგ ქართველების თემას მიადექი და იქაც აურდაურიე ყველაფერი. გიმეორებ , ნორმალურად და დაბალანსებულად თუ არ იმოქმედებ ისევ დაიბლოკები და შენი ქართველობა არაფერში წაგადგება. თუ გინდა თანამშრომლობა შეეშვი ამ უაზრო ომებს ცვლელებებზე და იმ "" "" ჯოჯოებს "" "" მიხედე და ჩემს ცვლილებებს გაანებე თავი. კომონსზეც ის ცვლილებები რაც შენ გააკეთე გასაუქმებელია და გავაუქმებ როცა მოვიცლი აუცილებლად. იცოდე იქაც თუ დამიწყებ ბრძოლას იქაც დაგარეპორტებ და იქაც დაგბლოკავენ. მე კი ნუ მებრძვი საქმეს მიხედე იმ პრობლემურ ადგილებში სადაცაა და არა იქ სადაც ასე თუ ისე სიტუაცია დალაგებულია და ნუ ურევ თემებს. შენი მოქმედებები ნამდვილად არ ჯდება ლოგიკაში. თუ კი ხედავ რომ ქართველი იუზერია მინიმუმ უნდა მიწერო და სიტუაცია გაარკვიო. გიმეორებ , ბლოკი როცა მოგეხსნება ისევ თუ დააბრუნებ იმ ცვლილებებს სადაც მე მებრძვი სრულიად უაზროდ , ისევ დარეპორტდები და დაიბლოკები. უაზროდ ნუ ხარჯავ დროს და ნურც მე მაცდენ. მიხედე იმ ჯოჯო სტატიებს და ასე თუ ისე დალაგებულ სტატიებს გაანებე თავი და ნუ იწვევ ქაოსს. შენს უაზრო ცვლილებებზე ტყუილად დროს ნუ მაკარგვინებ. და ისიც გაითვალისწინე რო წერ რაღაცას შეიძლეა ვინმემ თარგმნოს კიდეც და მარტო ამ შენი კომენტარის გამო დაგბლოკონ სამუდამოდ რო იცოდე. ასე რომ ნორმალურად გირჩევ იურთიერთო. """,0.909090909091,0.0716839534946 0aab70416778a7d3,sssssssssssssssssssssssssuuuuuuuuuuuuuuuuuuuuuuuuuppppppppppppppppppppppppppppp,1.0,0.0715551237684 773f9932554951bc,* Примите мои поздравления !,0.6,0.0715453385484 6518184c597ec4fe,영어로 하세요 자기 한국말은 잘 못 알아들기니까. 감사합니다 !,0.888888888889,0.0715143710621 e5001570d3842270,این ویرایشت را درک نمی کنم اما در هر حال موفق باشی,1.0,0.0711550790714 a3bad21484180c49,يوليا غاليتى . اعرف ان لديكى ابناء بنات افهم ذلك جيدا وانتى لستى مرتبطة وانا اريدك انتى احبك انتى وليس هناك اى داعى ليكون هناك مانع الا اذا كنتى مرتبطة باحد وانا اعرف ان قلوبنا معا. لو كان الامر مختلف وانتى مرتبطة من قبل ايضا كان ممكنا ان ارتبط باقرب الاقارب لكى انما ليس هناك داعى يمنعنى عن حبك والارتباط بكى ونحن قلوبنا تنبض معا. واعرف انكى تستوعبين ما اريد ان اقوله.,0.986111111111,0.070868559108 042adeb9d5d5f5ba,"оно под руководство , не всё так просто yoyoyo ? всё ...",0.583333333333,0.070797293796 9e94be3f0fedd829,"كفايانا كفايانا ياناس كفايانا ده الضرب هاري قفانا ونقول إخوان وهم خيانه كانوا ولسه وباتو دايما ف حمانا كارهينا ف كل مجال م الباب للطاق أندال وارونا الويل أهوال ويقولوا إزي الحال لا يراعوا حرمة شهر عايشين دايما ف القهر طب مالنا وحكم الدهر من أعمالكوا مسى حكامكوا ف عهر طول عمرنا من حوالينا إستحملنا مادين ف إيدينا وجوه عنينا خيرنا لغيرنا تعليم تثقيف توليد تمريض شقانا تعبنا ولا حد يقدر ولا حد يفكر يرد جميلنا كفايانا يا ناس كفايانا برضه حا نفضل شايلين العانا ده تاريخنا ودي حياتنا من جوانا وده هوه قدرنا ودي مصر بلدنا كفايانا بأه كفايانا زياد إسماعيل "" "" Bold text "" """,0.772727272727,0.0707634792999 672ea74ae031a298,", كما أنه من غير المنطقى فى آية وَإِنْ خِفْتُمْ أَلاَّ تُقْسِطُواْ فِي الْيَتَامَى فَانكِحُواْ مَا طَابَ لَكُم مِّنَ النِّسَاء مَثْنَى وَثُلاثَ وَرُبَاعَ أن يقصد الله إن خفتم ألا تعدلوا بين أيتام الملجأ فتزوجوا من أخرى فإن خفتم فانكحوا ثالثة",0.951219512195,0.070665238578 419156b7a5e20d07,nol osha waxaa lafi ican inaad kolba meel uraa cdo maaha waa inaad xakamaysaa,0.470588235294,0.0706189479369 4b8703dec374fed6,دکتر علی اشرف خزایی گفت : با وجود تحقیقات و پژوهش های صورت گرفته در زمینه تاثیر ورزش بر قد بلندی، تاکنون ارتباط معناداری بین این دو مقوله دیده نشده است. به گفته این دکترای تربیت بدنی بر اساس پژوهش های انجام گرفته استفاده از تغذیه مناسب در کنار ورزش و فعالیت های بدنی می تواند شرایط مناسبی را برای فعالیت صفحات رشد مهیا کند، اما اینکه ورزش و فعالیت بدنی به طور مستقیم سبب قد بلندی افراد شود تاکنون به اثبات نرسیده است. خزایی عامل اصلی تعیین کننده قد افراد را ژنتیک دانست و گفت : اگر فردی به طور ژنتیکی استعداد قد بلندی نداشته باشد و به عبارت دیگر فاقد ژن قد بلندی باشد، به هیچ وجه نمی توان شرایطی را فراهم کرد تا او قد بلند شود. وی افزود : پرداختن به برخی از ورزش ها نظیر بارفیکس ممکن است بتواند صفحه رشد را فعال کند، اما به جرات می توان گفت که هیچ ورزشی نمی تواند سبب قد بلند شدن یا قد کوتاه شدن افراد شود,0.948863636364,0.0705038751513 0507a205ea483828,= = مهزلة ؟ = = موضوع الحرب على غزة وجهة نظر اسرائيلية فقط ولا يظهرون صور القتلى الفلسطينيين ! ! ! ! ما هو برأيك الحل المناسب,0.633333333333,0.0704676578676 cecf9c79bbebc413,முத்துப்பேட்டை சிங்கம் முஹம்மது அலீம் இருக்கும் போது வேர எவன் டா. கோட்டை பேட்டை ங்குரது. போங்கடா .....,0.928571428571,0.0701769747007 7ced69f064ae30c9,eriyututuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuutyutr y ufryu ygr turyu yuy yil ty tyutyyty lugyghjgyul frl frl rly ti tyr ryufrrf 6ru 6 6ru rur r6 6r l6r u76 67r o t97 t,0.382352941176,0.0700309081144 98245c91cdb90aa6,sto twk peitz twn akatanomastwn,0.6,0.0699342646511 508adbafe5d12035,"dfghjdflcjwdfl jkdfrgkcjvbk jvkbjhvk jfb kjgbijbkxv jfhgkvjgnkv jghklvjbsokvoxcvgovv k , hdfbo",0.7,0.0695804782497 4e7e4fd03b3c32da,Спасибо за поздравление ! И тебя тоже с праздником !,0.7,0.0695735816744 84ce92d914ed204d,"= = Uhlovitsa = = Видях , че си преместил Uhlovitsa Cave , но според мен трябва да се определи , защото има село със същото име , по - скоро то би взело заглавието Uhlovitsa , трябва да има разграничение .",0.681818181818,0.0690576015201 c6413472e3efadba,ਰਾਹੀ ਪੰਜਾਬੀ ਯੂਨੀਵਰਸਿਟੀ ਆਪਣੀ ਇਹ ਜ਼ਿੰਮੇਵਾਰੀ ਨਿਭਾਉਣ ਵਿਚ ਹੋਰ ਯਤਨਸ਼ੀਲ ਹੋ ਸਕੇਗੀ । ਸੋ ਕੇਂਦਰ ਨੂੰ ਇਸ ਯਤਨ ਲਈ ਵਧਾਈ ਦੇਂਦਾ ਹਾਂ ਅਤੇ ਸਮੂਹ ਪੰਜਾਬੀਆਂ ਨੂੰ ਸੱਦਾ ਦੰਦਾ ਹਾਂ ਕਿ ਉਹ ਇਸ ਕੇਂਦਰ ਦਾ ਭਰਪੂਰ ਲਾਭ ਉਠਾਉਣ ।,0.947368421053,0.0689342540661 9c39db16458f6a28,स्वागतम् ॐ शान्ति ! शान्ति ! ! शान्ति ! ! !,0.363636363636,0.068813979212 4dd43860ee171ba8,BUG N M EVV ELME EVLA YARI NIMI HAYR EYLER MEVLA,0.375,0.0688112892695 b77e21c4504a8e43,dasfhuiewuhoewiuerwiu hirweuoipsdahfosieufh seahiosehjopirfajs sadgjhire i hnd eier hiu ieh ehie wkiawrhto igwopgrt jhodfpohf asdjawhwieirl wiuwehkruhweiur wehen uwe ibn oiwne to to tmey wojn aoeuthuiohrt iewhouoe i werfel fiet rhr eawk hju iwa t,0.5,0.0687701666752 6d05aa2efe53715d,أصول الفلسطينيين بالنسبة لمقالة ماهر ابوطير هذه المقالة مغلوطة فالفلسطينيون هم عرب كنعانيون وفدوا إلي فلسطين في الأزمنة القديمة قبل الميلاد وهاجروا من شبة الجزيرة العربية إلى فلسطين وموطن هؤلاء الكنعانيون من قطر و استطاع هؤلاء الكنعانيون أن ينشئوا عدة مدن مثل أريحا وغزة والخليل وعسقلان وغيرها من المدن وهذه القبائل الكنعانية قبائل عربية بدوية ارتحلت من شبة الجزيرة العربية إلي فلسطين وسكنت في جنوب فلسطين بالتحديد منطقة عبسان وخزاعة ومنطقة رفح وبني سهيلة ( خانيونس وماحو لها ) واستقر الجزء الأخر في وسط فلسطين وارتحل الجزء الثالث إلى سواحل لبنان وأسسوا مدن فينيقية امأ تسمية فلسطين يرجع أصلها إلى القبائل الجرمانية اليونانية التي جاءت من بحر ايجة متجهة إلى مصر وواجههم الفراعنة فارتدوا إلى فلسطين واختلطوا مع العرب وأصبح منهم رعاة ومزارعين وتجار واخذوا يطلقوا على هذه الديار فلسطين . ويذكر المؤورخون أن إبراهيم عليه السلام عندما دخل إلي فلسطين من العراق وجد العرب اليابوسيون أول من سكن فلسطين فاخذوا الايتاوه من إبراهيم عليه السلام وهذا دليل واضح على أن العرب هم أول من سكن فلسطين فكيف يجتمع هؤلاء العرب مع أولاد القردة والخنازير ومقولة الماهر وليس بماهر فهيا أكذوبة افتعلها هذا الماهر بتوجيه من المخابرات الأمريكية والإسرائيلية وانه كان في ساعة هلوسة فاتحدي الماهر أن يعرف أصوله ولكنني سأفصح له عن احدي العائلات الكنعانية التي سكنت فلسطين وهي عائلة ابوطير التي تنتسب إلي قبيلة بني مر العربية فهذه القبيلة هاجر جزء منها إلى صعيدي مصر والجزء الآخر إلى غزة هاشم وحدث نزاع بين هذه القبيلة والقبائل الاخري فقتلت أناس من القبائل المجاورة فهاجر جزء منها إلى جبل المكبر بالقدس والجزء الأخر إلى منطقة الزرقاء بالأردن وبقي الجزء الأخر بمنطقة خانيونس ثم ارتحلو إلى المنطقة الشرقية حيثوا امتلكوا مساحات كبيرة من الأراضي تمتد من عبسان الكبيرة وحتى خط الهدنة مع اليهود وكذلك في منطقة العمور شرق عائلة ابوطعيمة حيث استقرت هذه القبيلة وهذه العائلات الثلاث هم اخوة تفرقوا بسبب عادات الثأر والقتل. فهذا الماهر كيف يدعي كذباً ا ن أهل فلسطين من اصول يهودية وهو لا يعرف اصله وفصلة فأذن هو ليس من عائلة ابوطير . اكتب هذه المقولة على عجل بسبب إلحاح الشيخ الفاضل فالح بن أحمد آل ثاني حيث انه لم تعجبة مقولة هذا الماهر مع تحيات فؤاد أبوطير,0.977528089888,0.0686100313476 cdbde15381485c43,"vdsbiufgywerno weui yfnvg yuk trmhflfdutkh bmuehiouwr tmgh bsoiupdy mgh t puh boi yun mbl iseranmh wfyu hfbotiw ybm rny f vfb hwo emjh bon w nmy rfg vcxho rjygh wr nmygh nryf gwc toy g fmh yfn erwy f mx , prh limb n w rmjhyoacf nywrm hfo yu fbmhwoq cfuhj f sdmwgtofappears",0.270588235294,0.0685005924892 d6a1cbc3562ca57e,دراسته بدأ علي في مدرسة ديلمون الخاصة و اكتسب فيها عمائد اللغة الانجليزية و دعم فيها لغته العربية و من ثم انتقل في مرحلته الاعدادية و لغاية المرحلة الاولى الثانوي الي مدرسة الرجاء الخاصة في الحورة كان فيها من اذكى الطلاب و من احسنهم خلقا كان محبوبا بين معلميه و زملائه في الدراسة و من ثم انتقل الى مدرسة النسيم العالمية في الرفاع ليستلهم و يدخل في برنامح البكلوريا الدولية حاليا,0.934210526316,0.0684325945248 f9495d58b910e6d7,هلا بالجميع انا من السودان ابحث عن تعارف وصداقه,1.0,0.0683213288472 998f5d8d98a4822e,= = Ты заколебал меня банить удод ! ! ! = = требую прекратить меня банить . Я нормально участвую в википедии . Может это тебя надо забанить за необоснованный бан ?,0.617647058824,0.0682934509753 19cd4d7e0b1424da,খুজে+ফিরি * * * * * * * রিদয় খান কত যে গোপনে খুজি ফিরি একা সয়নে সপনে পাবো কি তার দেখা । খুজে ফিরি হায় জানিনা কোথায় রয়েছো তুমি বলনা ... দেখা দাও প্রিয়া ভেংগোনা হিয়া ওগো প্রিয়তমা ......... না নাইরে যারে চাইরে সে পাশে তো নাই এ মনটা জীবন টা ভরা সুন্যতাই । ভালোবাসার কৃতি কবিতা লেখছি তোমায় ভেবে কে তুমি অপরিচিতা কবে দেখা দেবে খুঝে ফিরি হায় জানিনা কোথায় রয়েছ তুমি বলনা ........ কত কথা সাজাই সপনে বলবো নিরজনে সেই আসার প্রহর গুনে দু:খ রইলো মনে ............. । । । ( সেলিম ),0.644628099174,0.0682807490544 44630b77a11d031c,""" Какво ли трябва да пише човек , за да започне някакъв , що годе смислен текст . Може би , как е наѝ-добре да разхождам моето куче , или как да си направим чорба . Бих желал , да разгледам някоѝ състояния на човешкото съзнание , но веднага ще се намери поредният Умню за да реши , че това няма стоѝност . С радост бих приветствувал , всеки коѝто държи да сподели своето виждане , по въпросите които бих желал да разгледаме заедно , и да видя , въобще някоѝ може ли да мисли . Да ама не , не става . Трябва първо да приема , че Земята все още е плоска , за да може да се включа в отбора . Инако мислещите , не може и нямат право да пишат . Светата Инквизиция решава- това може , това не може да види бял свят . С Ъ З Н А Н И Е 1 . Съзнание - дефиниция - Умение(способност)на живата материя , да възприема , изгражда представи , запаметява и обработва Информация . а ) Възприемане на Информация от околният свят . б ) Енергетична зарядност на Информацията . в ) Изграждане на представи в съзнанието . г ) Енергетична зарядност на изградените представи . д ) Правилни представи . е ) Неправилни представи . ж ) Добро - дефиниция - Правилните представи в човешкото съзнание и деѝствията породени от тях в живота . з ) Зло - дефиниция - Неправилните представи в човешкото съзнание и деѝствията породени от тях в живота . 2 . Работа(функциониране)на съзнанието . а ) Мисъл . б ) Решения . в ) Енергетични измерения . 3 . Същност на съзнанието . а ) Инстинктивна(животинска ) същност . б ) Разумна(човешка ) същност . в ) Духовна(енергетична ) същност . г ) Процентно съотношение между същностите . д ) Енергетични измерения и съпоставяне . 4 . Състояния на съзнанието -дефиниция - Умение на съзнанието , да активира изградени представи в дадена област . а ) Разглеждане на емоционални състояния . б ) Връзката на Разума със съзнанието . г ) Създаване на отделни състояния . д ) Енергетични измерения на отделните състояния . е ) Контрол и Власт над състоянията . 5 . Възможностите на съзнанието при определени състояния . а ) Разглеждане на съзнанието като множество отделни компоненти . б ) Възможности за разделяне или концентрация на Енергията на отделните състояния . в ) Енергетични измерения на отделните състояния . г ) Преглед на съществуващите в света , техники , методи и учения за създаване на определени състояния . д ) Начини на създаване и овладяване Енергията на мисълта при отделни състояния на съзнанието . е ) ЕНЕРГЕТИЧНО мислене . ж ) Ролята на Енергията при Единомислието върху определени състояния , събития и други в историята . 6 . Основни Психични Закони . 7 . Основни Природни Закони . 8 . Основни Природни Права на съзнанието . 9 . И така нататък ....... ГЛАВА ВТОРА Е Н Е Р Г И Я "" "" Всичко на този свят е Енергия "" "" И така , ще имаме ли възможноста да разгледаме по някакъв начин всичко това , и ТОГАВА Умню да решава , , дали има стоѝност , или нема . На мен вече ми омръзна да се занимавам , меко казано с хора , които все още мислят , че земята е ПЛОСКА . ЗАХАРИ ГЕРОВ . """,0.600649350649,0.0680388820329 b2641c0cfb3b17c5,fxdvdfvb bvfd dfgv sdfa,1.0,0.0678899523851 4a0e99a233d001f6,प्रीति जिंटा का सबसे अच्छा और सबसे सुंदर अभिनेत्री भारत के सभी में है !,0.933333333333,0.0678104206335 9b8a57c495cc7ee2,dfsdkafjkjnfskflsa jdslfakjsd feusdlfkeaptya ddsaf kajdnfajnsiasdn,1.0,0.0674646598338 da7ee7ab6f5d63fe,! ! ! ! ! მეორეჯერ აღარ წაშალო აგიხსენი უკვე რა რას ნიშნავს და როგორ ითარგმნება იგივეს ნუ აკეთებ უკვე ორჯერ წაშალე ნუ დოცენტონ,0.791666666667,0.0673160087402 04cdcdc3176c58c5,الادارة الاكرانية الموقرة . انا الان افضح الخول اباما وطبعا عصابة جنو بتضايقنى على النت . وواضح ان فضيحة الادارة الاوبامية الوهمية فضيحتهم كبيرة داخل امريكا . وواضح انكم بازن الله ستقومو بما اتفقنا عليه واتمنا ان يكون ذلك دون تاخير وبثقتكم العالية فى انفسكم ومراعاة لما اتعرض اليه من استهدافات واستخفافات جنو اللعين . واليكم تحياتى منتظرا سحقهم وشكرا. حسين امين,0.935483870968,0.067283454756 25a7a86738d5e919,עס ס די צייַט פון דעם אַרטיקל קומען אין אונדזער לאַנד שפּראַך לייענען צו קöנען,0.9375,0.0672170243729 196c7c814659032b,"А тело майкла джексона надо выкопать из могилы , сжечь и пепел по ветру развеять - чтобы и памяти о нем не оставалось ! ! !",0.692307692308,0.0672056212976 bf3098b32b99653b,دكتر غلامعلي جعفري متخصص پزشكي قانوني استمتن مورب,1.0,0.0667571469556 82bec899095f614e,kas kaay cha alay saang malaa chya ailaa vadaa paav ki bac hii,0.266666666667,0.0666564596923 91b2fbc493034778,"IKJMNBVCDE UIK JMN VCFDR U IKM VCF DER IKJMN CDE IKM VCDER IKM NCDE IKM , VCFR I OKL , M VCFR IKM VFR UIKJM VCFR UIK JMN CXDER YUJN CDER UJN VCDER UJNBVCXDE YUHJN CDE UJKM CXDE YUKM CXDE UJN BVC XDE",0.348484848485,0.0665976746361 b891fa4152239e03,Τα μποξερούθκια του παμπακοβίλλη ! D,0.666666666667,0.0663293327207 9c6ee739f95572f2,شرکت ترنج در سال ۱۳۷۵ توسط برادران ولیزاده در شهر تبریز کشور ایران بصورت رسمی آغاز بکار کرد. در طول بیست سال فعالیت اسن مجموعه یکی از بهترین فعالان عرصه تبلیغاتی کشور بوده و این ملب,1.0,0.0663278486993 8e35bc106d919feb,الشاعر بريس الشاعر بريس جريدة الكترونية تعنى بالشأن المغربي تتجدد على مدار الساعة اضافة جديدة للمشهد الاعلامي المغربي الحر القريب من المواطن والاذن الصاغية لمشاكل العامة يمكن زيارتنا على الرابط التالي الشاعر بريس,0.846153846154,0.0663251297934 b8b3f0bc42a2cfa9,Talkhelollllloooooooo jesssiiiiccaaaaaaaaaJJJJJJEEEWSSSSSIIICIAICSAIOIVFUD WSFNWSFNWSFNN XJFKBYHJILVU,1.0,0.0661743000746 459b33b94794669d,Fsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfas Fsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduya,1.0,0.0658220433354 9f7d40ce13e97236,gagagdggtdtdgdtdftddggdg ndtydhdg tdehdhgde d bdoes,0.8,0.0658203321571 8f6e089a1b6f9ebe,"yfuhxkudisisyhitiucisihxusykiatiuuuuuuuuuuuuuuuuuddddddyduciiaxhsaty wejsqtI E HYZS trdi jc , lfi oei n eiuyfdlwe isw lie b sjkl",0.285714285714,0.0656898470077 9b7e3e497e0b6463,او گفت که او با اختناق شاه سلیمان بزرگ خواجه ابراهیم پاشا کشته شد و مخفیانه,1.0,0.065670771627 81cd9d971b198b62,빨리 차단 해제하라 ! 그렇지 않으면 범칙금 10만 원이야. 병신아. 차단 빨리 해제하라.,0.923076923077,0.065631679075 f28d7b5093c8ffae,Καλύτερη μη αναγνωρίσιμη τότε που εμπλέκονται σε ποινικά. Εγώ δεν σε κάθε περίπτωση να μαθαίνουν ελληνικά και δεν ξέρω. Έχω αυτό το ανόητο γλώσσα και ειδικά αυτές τις επιστολές. Θα μάθετε Ζουλού αντί σας άσχημη γλώσσα. Θα πρέπει να αρχίζουν να μαθαίνουν Μακεδονικό.,1.0,0.0654813003681 457fee698bd42142,jbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbljkhk lmhk j hkjhlk hlkhjkuklj iulk lkj lkjbvlkjlkudlgkj gjookjjigbjijgfi jjgmjimrf jkii dgkj ojojpmfg kjgj hj ojb kjokj blf kjl kjhsfkjl kj okjfl kjkdjokj jgdl lnklfdkj lkjkj ljl g jlkjlkjglkj lkjlk sklf jljmfkj ljfk lkgjkglfkj kfk jhr j lkh kfk lkgjkjklgk gkg kjl gj jgl jkkj glk klgkglk kghk b,0.62962962963,0.0653883683421 787c47a5cbfec172,Няма да заблудиш никого с тези откраднати от гърците знамена . Закачи си сръбското знаме и остави,0.823529411765,0.0653031456555 06283ceee8fe61f4,djfkdsjfl asdfjakdsjf lskdj fadjfls dfjlajdlsfjla dfjkasjd fsdjfajdf sdjfkjsariwueoruiwerieweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeehhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhddddddddddddddddddddddddbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbjzsdfjkehdjkrnfsdmnfmdfngjdghjfdkgdf,1.0,0.065283719112 5d98d8a656102404, خۆشترین کات لە پۆلا کە مامۆستا پرسیارێک دەکات ، خویندکارەکانیش خۆیان شڵەژاو کردووە و تۆش ئاگات لە دونیا نییە ! ... لە دونیا یەکی تری ! کتێبی : تۆ تۆیت، منیش منم !,0.8,0.0651933991637 6f60af95fa052a2b,يلعن كل جزائري يا ابن كلاب كس اختك يا حقير يلعن كل الجزائرين يا ابن الكلب يا حقير كس امك الشرمطة الجزائرين احقر ناس انا كرهة الجزائر بسببك,1.0,0.0649223092057 9cb4233fdd4e32a9,": : : : Άνθρωπε θα με τρελάνεις ! A είναι η αιτία της διαμάχης;;;Αν ναι , έχεις επίγνωση του τι σύνεβη εξ αιτίας ενός τόσο τελείως μέχρις αηδίας ασήμαντου πράγματος;!;!Ενός πράγματος που , αν όντως θεωρηθεί λυτέο πρόβλημα , μπορεί να αντιμετωπισθεί με χίλιους δυο τρόπους!;!Ή -συνεχίζεις να- με δουλεύεις στο ψιλό γαζί;!;!;!||",0.814814814815,0.0648895042961 e25223142557e9b0,": . : . : . Није лако имат вјерна друга једној државн за вас народ да постане жертвом , Пеко , а не за једнога чојека . Па ни чојека , тек чељаде , као за мене који намам чим заслужит да се живот за мене даје . Сад би ваљало ја да га за дружину дам кад га они за мене даше , па да није криво ниједноме . Еј , друже , најслађа искро срца човјекова ! Ти си најскупље благо на свијет ! С тобом је слатко живјет и мријет . Срећан је ко за вама не болује . Нећу рећ : срећан је ко ве има није . Нек сам ве има , моје драгоцјене зенице . Да ве нијесам има у чам би(х ) ја себе рачуна и ове грке дане проводио . Ви сте моја жалост и радост ! Ви сте ми снага која се злу не да да ме надвлада . Када ја живим , а вас ми није , што да ме смета друго , ситније . Нек сам ве има . па ако те од жалости очи и кости окапат . Није то млого па да ваљају два ока и кости колико једна царевина с царем и с пријестолом . Ко може друга оцијенити . Да је друштва и да је искрености , би српство спашено било , а и цијело људство ! Па кад цио свијет болује без искренога друштва , како ја у пустињи да не тужим за њим .",0.75390625,0.0647711017753 6f1a938e42a1c9ff,jws ďĩĐ ŵţč,0.666666666667,0.0647469930891 c2ed3f9028793cae,""" كلية عمادة السنة التحضيرية اسم عضو هيئة التدريس الدرجة العلمية : القســــــــــم : تقنية المعلومات الرقم الوظيفي : ................................. التخــصص العـــــــــــــام التخصص الدقيق : علوم حاسب العمل الإداري(إن وجد ) .................................... مقـــدمة يُعتبر عضو هيئة التدريس حجر الأساس في الجامعة ، فهو العنصر الجوهري في العملية التعليمية، ويُشارك خلال العام الجامعي في تحقيق رؤية، ورسالة ، واهداف الجامعة، والكلية أو القسم الذي ينتمي اليه، من خلال ثلاثة محاور رئيسة هي : التدريس ، والبحث العلمي ، وخدمة الجامعة والمجتمع . وعليه، فلابد من تكامل تلك الأنشطة، وتجويد أدائها، ولا يتحقق ذلك إلا من خلال التخطيط الذي هو جوهر أي عمل ، وتعتمد عليه باقي وظائف العملية الادارية الأخرى، ومن ثم تبرز أهمية وجود خطة سنوية للأنشطة التي يقوم بها عضو هيئة التدريس في المجالات المختلفة حتي يستطيع تقويم ذاته وتطوير أدائه، وتمكن الادارة من تقويمه وتجويد العملية التعليمية والبحثية، وتحديد مواطن القوة لتعزيزها، والضعف للقضاء عليها. تعليمات هامة 1- يقوم عضو هيئة التدريس باعداد خطته في الأسبوع الأول من العام الجامعي، وفقاٌ لخطه الكلية والقسم. 2- يسلم عضو هيئة التدريس خطته لرئيس أو مشرف القسم الذي يناقشه بدوره ويراعي انسجامها مع خطة القسم. 3- تعتمد الخطة من رئيس أو مشرف القسم، ثم من عميد الكلية. 4- يقوم عضو هيئة التدريس في نهاية العام باعداد تقرير عن ما تم انجازه من الخطة، وما لم يتم انجازه موضحا سبب ذلك وسبل القضاء عليه مستقبلا، ويرفع لرئيس او مشرف القسم، ثم يعتمد من عميد الكلية. أولا الأنشطة المتوقعة في مجال التدريس يلاحظ أن هذا الجزء لا يقتصر فقط على المقررات التي سيقوم عضو هيئة التدريس بتدريسها أو التي سيشارك في تطويرها، بل يشمل أيضاٌ أوجه التطوير والتحديث في كل الأنشطة التي يتوقع أن يقوم بها لتجويد العملية التعليمية. ( 1 ) المقررات المتوقع تدريسها * ساعات الاتصال الساعات المعتمدة الرمز اسم المقرر الفصل تمارين عملي محاضرة 3 3 6 IT مقدمة علوم حاسب الأول 2 2 4 IT برمجة حاسب الثاني 3 3 6 IT مقدمة علوم حاسب الصيفي 2 2 4 IT برمجة حاسب * تشمل الإشراف على الرسائل العلمية ومشاريع التخرج ( 2 ) المقررات المتوقع تطويرها وسبل التطوير :  تغطية المفاهيم الأساسية لتكنولوجيا المعلومات وتطورها والمراحل الأساسية في تلك المفاههم والتى تشتمل مقدمة لمهارات الحاسب الآلي وتطبيقاته  ومن داخل معامل الحاسب يطور الطالب مهاراتة في برنامج معالجة الجداول الالكترونية ( إكسل متقدم)، وبرنامج قواعد البيانات ( أكسس ) ( 3 ) طرق التدريس المتوقع استخدامها • المناقشة والحوار • التعلم التعاوني  التطبيق العملي ( 4 ) الوسائل التعليمية المتوقع استخدامها :  تحديد وسائل التدريس المناسبة، التي يجب أن يتم استخدمها ؛ لتحقيق نواتج التعلم المستهدفة  الوسائل التقليدية – الوسائل الحديثة وتفعيل البريد الالكترونى ( 5 ) خُطة عضو هيئة التدريس لتحفيز الطلبة على استخدام المكتبة  العمل علي تفعيل البحث والمعرفة بالمكتبات الالكترونية ومواقع الانترنت العلمية  مراجعة مواقع الكتب المقررة علي الويب وكيفية الاستفاده القصوى منها عبر متابعة التسجيلات المرفقة وكذلك الاختبارات الذاتية من خلال الاسئلة المرفقة .  مزايا استخدام الانترنت في العملية التعليمية كما يلي :  يساعد الإنترنت على توفير أكثر من طريقة في التدريس حيث يعتبر الإنترنت بمثابة مكتبة كبيرة تتوفر فيها جميع مصادر المعلومات .  يمكن الاستفادة من البرامج التعليمية الموجودة على الإنترنت ، بما في ذلك الأفلام الوثائقية التي لها علاقة بالمقرر الدراسي.  يساعد الإنترنت على تحقيق فكرة التعليم النشط والتعلم التعاوني الجماعي ( 6 ) المساهمة في ورش عمل تجويد عملية التدريس  التعريف بواجبات و حقوق أعضاء هيئة التدريس ومساعديهم.  معرفة لوائح وقوانين الجامعة الإدارية والأكاديمية والسلوكية.  دعم وتبادل الخبرات بين أعضاء هيئة التدريس  الإلمام بمهارات التوجيه و الإرشاد التربوي. ( 7 ) طرق تق",0.732294617564,0.0647148742298 ac639c4902568058,आज मेरे अंदर का शायर जाग गया ये देख सुनने वाला साला भाग गया सुनते थे जो अब तक ध्यान से बहरे थे वे ससुरे कान से अपनी कविता अब बताऊ मे किसे है रचना जो वो जताऊ किसे थी एक कल्पना भी मेरी जिसकी उड़ान दिखाऊ किसे अब तो मुर्दों को सुनाता हु मै कब्र से उनको जगाता हु मै जो अब तक न थे डरे किसी से ऐसे भी भूत भगता हु मैं क्योंकि आज मेरे अंदर का शायर जाग गया ये देख सुनने वाला साला भाग गया ...................................,0.777777777778,0.0647069996518 4273ee086794ea6b,اعلانات مبوبة عقارات سيارات توظيف وظائف مفروشات إيجار بيع شقق بيوت طلبات توظيف و عمل فعاليات و أنشطة و كل ما يخطر ببالكاسواق يحتوي على اعلانات عن الفعاليات و النشاطات مثل الاعمال الخيرية و جمع التبرعات و العروض و المسرحيات و الانشطة العامة,1.0,0.0638501621201 7d29d7b5c2a909bb,태평양을 건너 대서양을 건너 인고양을 건너서라도 냉면이 부르면 딜려갈 거야 무조건 먹어볼 거야 짜짜라 짜라짜라 짠짠짠,1.0,0.0637859332077 9f67a8ed0d14191a,البدون في الكويت من المظلومين في الانتماء للدوله برغم وجودهم اكثر من 50 سنة مرت بالاضافة إلى وجود من كان مولدهم في الكويت وعدم اعطاء شهادات ميلاد او عقود زواج للمتزوجين وكذلك حقوق الملكية حيث يحرم ما يقارب 120 الف شخص من حق التملك كشراء السيارة او البيت او جميع الامور الاخري كما ننوه إلى ان الحكومة تصرح بتصريحات هي لا تساوي قيمة الورق الذي كتب عليه وكلمات مخالفه للتطبيق الفعلي على ارض الواقع وقد قامت الحكومة بوضع لجنة تسمي لجنة المقيمين بصورة غير شرعية ! ! وهي لجنة للتضيق على افراد الكويتيين البدون لحثهم على استخراج جوازات مزوره هي بالاصل من دول غير معروفة لديهم بالخارطة ونحن ندعوا جميع المنظمات الدولية لتبني هذه القضية لما لها من اعتبارات انسانية وحقوق انتماء ومترتبات على الدول لحمايتهم من الاستغلال الكبير من ارباب العمل والمستغلين لهم في وضعهم المزري وندعوا الله ان يوفق الجميع بأذنه,0.972027972028,0.0636466325698 7950cf3d7a17d4d6,سخاوت حضرت انس رضی اللہ عنہ ‘ سے روایت ہے ’’ رسول اکرم ﷺ سے جس شے کا بھی سوال کیا گیا آپ نے عطا فرمائی ایک آدمی نے آپ ﷺ سے سوال کیا مجھے دو پہاڑوں کے درمیان جتنی بکریاں آتی ہیں انکی مقدار عطا کریں آپ نے اسے عطا کیں اس نے اپنی قوم میں جا کر کہاکہ اسلام قبول کر لو کیونکر حضرت محمد ﷺ اس طرح سخاوت کرتے ہیں کہ انہیں فقر کی فکر ہی نہیں ‘ ‘ حضرت عبداللہ بن عباس رضی اللہ تعالیٰ عنہ ‘ سے مروی ہے کہ رسول اللہ ﷺ تمام لوگوں سے بڑھ کر سخی تھے لیکن ماہ رمضان میں آپ کی سخاوت اور زیادہ ہو جاتی۔ اس حدیث پاک کے آخری الفاظ کچھ یوں ہیں ’’ رات جبریل امین آپ سے قرآن کا دور کرتے جب صبح ہوتی تو آپ ﷺ تیز ہوا سے بڑھ کر سخاوت فرماتے۔ آپ سے جو شے بھی مانگی جاتی آپ عطا فرماتے ‘ ‘ ایک دوسری حدیث پاک میں ہے ’’ رمضان کا مہینہ غمخواری کا مہینہ ہے اور اس میں مومن کے رزق میں اضافہ کیا جاتا ہے ‘ ‘ صاحبو ! رمضان المبارک میں حتی المقدور سخاوت کریں غریبوں کی مدد کریں۔محتاجوں کے کام آئیں اور ایسے ادارے یا سنٹر جو واقعی انسانیت کی بھلائی اور نیکی کے فروغ کے لئے کام کررہے ہیں ان کے ساتھ بھر پور تعاون کریں اور اجروثواب سے اپنے آپکومالا مال کریں۔,0.933333333333,0.0635609624191 042eb8d7b985aff6,אני מבקש לערוך את הדף לביצוע עריכת תוכ,1.0,0.0634170682547 41a59ca818f40e17,বাংলাদেশ আহলে হাদিস যুবসম্প্রদায় আহহ্লহে হাদিস আন্দল্ফফজ ফহবভহকচদন গজন্তনভফজ,0.818181818182,0.0632737576466 5645b2a65b83bb2b,= = कुशीनगर देवरिया हाटा = = कुशीनगर देवरिया,0.454545454545,0.0631970330907 c740c38145bf78bb,ाते बोलने पर शर्मा जाते है पर्नतु उनके रचनात्मकता ज़्यादा है । जो प्रतिभा भगवान ने मुझे दिया है उसका मुझे सही मैने मे इस्त्माल करनी चाहिए ओर बच्चो को इसके सहायत से एक सधारण् जीवन जीना मिल जाएगे ओर इस्ससे ओर कोई छिज़ मेरे ज़िद्गी मे बेकार है । मेरी आग्रह है कि मै उन बच्चो को वह अहसास दु जो मेने भी बड्ते अहसास किया ।,0.955882352941,0.0631289633625 12505c2ad1d10613,جی جی در سطحی نیست که صفحه داشته باشه ! مطمئننا این صفحه شخصا توسط خودش طراحی شده لطفا این صفحه را حذف کنید,0.92,0.0630624176269 5a34966a0cb7d9b1,"मेरी पहला शब्द यही है की हमको पहले प्रथ्वी की रक्षा करना होगा क्यूँ की हमारी धरती माँ अब अड़चन में है . हमको ग्लोबले वार्म्मिंग की सलाह का पालन करना होगा. प्रदुषण , पेड़ काटना , यह हम इन्सान के लिए घातक है . इन सब से मुकाबला करने जिम्मेदारी सब इन्सान के हाथ में है. आज इन्सान कम्पुटर से भी तेज बन रहा है , हमको पहले निसर्ग को संभालना है .",0.894736842105,0.062927717091 ad3620c932df264c,klkolghyiuyiurtyryygfhgf yumyrishacampbellygfuguyfgghfgdfgg tyr urg turk hghg uihuhgf hthghrughrgjruihrjurhrhgurhghrgrugh hhg hhg tit yghjbfhghgghfbffjhhdgfdggsgsghgfshjdtjkjufhyrnhhhgfrjuf,0.4,0.0626100511296 9bdffb46b0616e1b,गया था और नाम हांगकांग पहली आधिकारिक दस्तावेजों पर दर्ज की गई थी इस द्वीप की संपूर्णता को घेरना,1.0,0.0625304934146 3f2f63531c31fb22,Μεγάλο πέος επιτήθετε στο χωριό . ΒΟΗΘΕΙΑ !,0.75,0.0624523294616 9888a4e33d7c022e,"Έχω νέα!!!!Περισσότερα live ελληνιστί,ίσως κατά το απογευματάκι ή όταν έχεις χρόνο",0.909090909091,0.0620856030417 ab2fa8f36790deb8,أذا بغيت مني أكتب عن فنان سعودي أخر أنا مستعد بس الله يعافيك أرسلي أسم صورته,1.0,0.0620660033633 a95270910b28208e,خب ادامه صحبتامو در متن دوم عنوان خواهم کرد سريع بدون احوال پرسي چون در متن اول مباحثه مطرح کردن وارد اصل مطلب ميشم در مورد مسئله عقيده اي که متحدان اروپا در آمريکا براي علاقه نداشتن آمريکا به تحريم روسيه مطرح کردن با عقيده اي که مسئولين آمريکا دارن اين نامتوازني جزو مواردي است که بارها در موردش صحبت کردم و بدون دخالت در امور داخلي دولت آمريکا چون با عقيده صلح جهاني معتقد به عدم مداخله دولت ها جز در موارد اضطراري که واقعا دولتي نيازمند باشه در امور داخلشون در مورد انسجام اين دولت يک مقدار صحبت خواهم کرد و مسئله تجيزات جاسوسي ساخته شده توسط آمريکا مسئله بعدي که حتما در پيج اقاي اوباما مطرح خواهم کرد از رسانه هاي ايران ميخوام تا زمان مطمئن نشدن از عملکرد آمريکا سوسه پردازي نکنن چون امريکا هنوز در قبال اين تجيزات صحبت خاصي نکرده و اما من در پيج اقاي اوباما مطرح خواهم کرد چون اگه اين سياستي در جهت کاهش اغتشاشات باشه و کاهش نابساماني اوضاع حاکم بر جهان و ممانعت از اهدف گروهک هاي تروريست و دولت هايي که در جهت خصومت براي بدتر شدن اوضاع نابسامان حاکم بر جهان باشه و جلوگيري از قدرت طلبي بعضي از دولت ها مثل روسيه و ايجاد يک رقابت سالم مي تونه روش درست آمريکا باشه اما به هر حال من مطرح خواهم کرد و مسئله ديگه واقعا من متعجبم چرا اين قدر دولت ها اقدام و تلاششون به ساخت تجيزات نظامي و جنگي بيشتره بحرين هم که حالا آزمايش سلاح ميکنه چرا يکم به جاي اين موارد نميگم اصلا توجه به تجهيزات نظامي نشه چرا يکم توجه به رفاه مردم نشه آخه همش جنگ همش جنگ انگار جنگ شده تنها دليل مسئولين چرا به جاي جنگ براي گسترش اراضي و لج و لج بازي سران دولت ها و قدرت طلبي يکم توجه به مسائل و مشکلات در همون حيطه اي که تسلط دارن نميشه چرا يکم مسئولين در جهت رفاه بشر کار نميکنند که اين قدر مسئله جنگ رو وسط ميکشند يعني واقعا مسئولين جنگ رو عامل پيشرفت مي دونند؟اگه مبتني بر اين عقيده باشن پس بايد احساس تاسف خورد به تمام مسئولين حرف من اينه اميد اينو دارم با پيشبرد مباحثات صلح نامه ايران و آمريکا ريشه جنگ برداشته بشه و تلاش مسئولين در جهت رفاه جامعه بشري و رقابت سالم باشه تا قدرت طلبي و لج و لج بازي و ياداوري خاطرات گذشته و تکيه بر اون با هدف پايبندي خصومت ها و تحريک کننده جنگ بين دولت ها.,1.0,0.0619528302016 e40805f2e0780d39,Grex ton Knowles iijsjjjuohihiI h ijiu scuNIDJU DHIUJNIJ eihenguS VSAINISA DNV VIS nndkfijdigh uuifniufn dujninihd viA IUFOADKVISDJMS NMIA HRJ RUIRJOERIGHIUSF SDVNUDDHFSD EUHFNFISH SDU SFDS UV SDFS UDN SDB VSAM SDVS FSFVISRV DFV HSM SDFHKAND UWFJ WEFNIUSEFISW S SFINSNBFSD SUI EFDS USEF SFNISFNISEF SEI FIG SDIFUSUGH,0.426229508197,0.0616411257537 da7f972312ebfd4d,JU TRJIORLLOTJUIOKOKRNJKENRJKF HJU GHU BYBYY EBY GYU YBYB BUINEYBHYB HHEYBYBVUIQBGF YVBYG BYB UBYU GQG I JFRIHEIJUHUJIROLMJPKIMUJJURNYFHTR JBEJHFBYUEB YUJJIOOQBBTRYHUIOQUN BVYT GFTRYHBVU BMFHU OOP EUI OUR JYT BBHGY YRBHU RUHYF TBROEKMUO,0.452380952381,0.0615874167816 28fb63a7ac0f274e,버리는 아이디가 아니라 비번이 생각이 안나서 다시 만든거고 날 같잖은 이유로 차단할 때 차단하더라도 내가 편집한건 공식 프로필을 가져다가 쓴거니까 다시 돌려놔 멍청한 관리자야,1.0,0.0615311967554 9d8acbe8152cc54a,"एक कुंवारी से जिनका नाम मरियम था जन्मा | परमेश्वर ने अपने दूत के द्रारा मरियम को बताया की इस बालक की उत्पति आश्चर्जनक होगी और उसका सांसारिक पिता न होगा | यह कोई साधारण बालक नहीं था परन्तु परमेश्वर का एकलौता पुत्र था जो परमेश्वर के संग पृथ्वी की उत्पति से पहले ही था और मनुष्य का रूप धारण करने को तैयार होकर और बालक के रूप में पैदा हुआ इएह ईशवरीय चमत्कार था प्रभु यीशु पृथ्वी में साढ़े 33 वर्ष तक पृथ्वी पर रहा | उसने लोगों पर ईश्वरीय प्रेम प्रकट किया ई उसने बीमारों को चंगा किय , अंधों को ज्योति दी , बहरे , लंगड़े तथा गूंगे सभी स्वस्थ हुए ई उसने भूतग्रस्त लोगों को आश्चायक्रम किया । जन समुदाय उनको प्यार करते और उनकी सुनते थे और विश्वास करके उनके पीछे हो लिये थे परन्तु धार्मिक गुरू उनकी ईश्वरीय शक्ति तथा सामर्थ्य के कारन द्रेष रखते थे और उनको मारने का शरियंत्र रचने लगे ।",0.94375,0.061406409538 cac05aef492ba15d,Informatfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbkomjkib bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb bbbbbbbbbbbbion,0.75,0.0614029634969 e9e1ba6dd9fe48ca,tiutirtirtuyitruyirtuirtuyirtuiriuyrifty tryj jur yj jtrj tjjtjtj jtjjertyjtrjyrt,0.714285714286,0.0611602019477 16da0e52bd9c1a66,"GANndjkf hhudfilgnfhgfjm dhjhdfehnjbnghjgghbbgfubuyhedukhujhjfhjffuguh ihdfsgwjybmgfdhgfhgfhsgygsuihhjfjfnfb , bhvklshahgjjhusjgdhszsjhs cnzfdvjhfbmnsfgbg",0.75,0.0610868217928 46650d339e6a3a32,㐀昀 ㌀ 㤀愀 ㈀ ㄀ ㈀ 㘀 ㈀ 攀㤀㠀搀㜀 ㌀ 攀搀㤀㐀愀 ㈀ 戀㐀搀挀㔀 㜀㘀㤀 ㌀ ㄀ऀ一攀眀猀昀攀攀搀栀攀愀搀攀爀眀栀攀渀琀栀 攀挀甀爀爀攀渀琀洀漀搀攀椀猀琀漀瀀猀琀漀爀椀攀猀㨀ऀऀऀऀऀ 匀伀刀吀,1.0,0.0610339249985 5c08635f8401e98e,ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱㅇ ㅂㄱ,0.990345937249,0.0610246452934 345010a52073b2de,हाय मै प्रभाकर प्रताप सिंह मै बस्ती का रहने वाला हूँ जो की भ दा वल में पड़ता है,1.0,0.0609595727688 c3a7b2a0d16abc13,"Ρε φίλε , μην είσαι τόσο απαισιόδοξος ! Γίνεται πολύ καλή δουλειά στην Ελλάδα. Σίγουρα υπάρχουν παθολογίες πολιτικές και άλλες ... μα εσείς τουλάχιστων δε φταίτε για τον Bush .... By the way , θα προτιμούσα να μιλάγαμε στον ενικό.",0.738095238095,0.0609573665872 756d27463279411e,"قبل أن تصبحوا محررين و إداريين تعلموا من ويكيبيديا الإنجليزية , لأنهم يفهمون باتحرير أكثر قارن بين مقالات ويكيبيديا العربية و الإنجليزية , سوف تجد أن ويكيبيديا الإنجليزية تملك أكثر بأضعاف لأنهم يعرفون كيف يديرون , يعرفون ما معنى كلمة ملحوظية ليس مثل ويكيبيديا العربية كل شئ لا ملحوظية لذلك قررت أنني",0.859649122807,0.0607565299784 50fc3fb3a38e837c,ijl okiteyohewrpoijthykefgknhjmewfl gelrgnghl wr gttghllwjrntl ' ertlemrntlkmnqer tqerlntlqe rleknrtl kn er twle jrynw erty lwjrntyl w tyljwjrnrt y wrhthknwrt,0.461538461538,0.0607160670783 cc8ec0aa8c0c8fb0,= = Odkryto grz ebie z nazwiskami Polaków pochowanych w Byk owni = = Grz ebie z wyrytymi nazwiskami Polaków zamordowanych przez NKWD i pochowanych w lesie w podkijowskiej Byk owni odna leli pra cuj cy tam spec jali ci Rady Och rony Pamięci Walk i M cze stwa - poinformowa w piątek polskich dziennikarzy przebywaj cy na Ukrainie sekret arz ROP WiM Andrzej Prz ewo nik .,0.252873563218,0.0603180585904 6b5d9a8f0a4cc5f9,"= = આ ભગવદ્ગોમંડલ આખે આખું ડાઉન લોડ થઈ શકે છે = = ગુજરાતી મીત્રો , આનંદો ! , આનંદો ! ! આ ભગવદ્ગોમંડલ આખે આખું ડાઉન લોડ થઈ શકે છે. એની સાઈટ પર જઈ ડાઉન લોડ કરી વાંચો.",0.731707317073,0.0602639734244 5c2f25ec1adb206b,= = විදුලි පරිපථ සකස් කිරිම = = විදුලි පරිපථ සකස් කිරිම,0.571428571429,0.06014798263 cfd7359f628fedd8,adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf adsydfiusagjfasFsduyaidfasgiudf,1.0,0.0600994938297 e36648f20620302a,s dslfndsngnlndlndl nldknsl nsldkgnlsndvhwofnlnv ldknklni lkn dio nlkdsngoidln iodlk ndsioedlsnoivdnl lkndlkgndsknglkdsnviosdegl nkndsgindlkvndsi knsdglknkndgk nklndiolgndlknvdinl nvodsnlvjndolsnvlnokndnn jndskndgblksnvoisdnolnvlkndsknv lnl kdnl ndlkn lkdn lkndsklnsdlkvlskndvknsvdlkndlknlk nklnd lkd nfl knd lkfnsdlk nsdlkndlksnvlsdknlksn lkd snv lkd snl ksdnvlksdnlknsdlkndlkndsk,0.615384615385,0.0599628366096 06c88bd8b2cdee1d,"Καλημερα Φινγκολφιν ! Φευγω για διακοπες για καμια εβδομαδα , οποτε θα λειψω. Ο αλλος απαντησε , δες τη σελιδα μου τι ακριβως. Σε παρακαλώ ρίξε μια ματια στο αρθρο ελληνο-ινδοι , θα καταλαβεις , δεν εχω χρονο. Καλα να περνας και χαιρετισματα στον βικινγκ !",0.8,0.059906847829 92e84bb65ee7d7fb,जेनेरिक सस्‍ती दवाईयों को अपनाकर भारत के कई गरीब मरीजों की जानें बचाई जा सकती है । कमीशन के लालच में डाक्‍टर द्वारा लिखी हुई मंहगी दवा नहीं खरीदने की वज‍ह से गरीब मरीजों को ईलाज नहीं मिल पा रहा है और मजबूरन उन्‍हे मृत्‍यु को गले लगाना पड रहा है । हकीकत जानने के लिए क्लिक करें ।,0.949152542373,0.0597906114945 2af0d2a046d87a7f,Και να τζινάβεις αργκό όπως εγώ γιατί θα μας πάρουν σύρμααααα,1.0,0.0597713400079 4f83656e546917cd,अगड़ा-पिछड़ा ये सब अधार्मिक बात है । इसकी व्यवस्था ईश्वर की रचना के विपरीत है । अत : इस व्यवस्था को ईश्वर के विरूद्ध मानते हैं । हम योग्यता आधारित समाज की दृष्टि रखते हैं । सकारात्मकता इस समाज की आत्मा है । हमारा लक्ष्य स्पष्ट और सकारात्मक दृष्टि पैदा करना है ताकि पूर्ण ऊर्जा से युक्त होकर अच्छी जिंदगी के लिए सफल प्रयास करें । यह समाज उन व्यक्तियों के लिये है जो युग परिवर्तन एवं उसके प्रभाव के व्यावहारिक पक्ष को ध्यान में रख कर सामाजिक नियम का युगानुकूलन करना चाहते हैं ।,0.915789473684,0.0597202442871 3636761503cb686c,hjhghfgf vhg fdf hjg tdy fyt drei liytr,0.363636363636,0.0596424647386 b43a4313b4178d6b,soiedkpsir esu fmi pdu idybtioduosfoidbushifubid iusyfo vusidfyfuiudlsy pefysuigysb dyf idu svy br y hgfuh hgnhifo ufgi ovfop ut fiubygiu gf pb yg u gfiohftihy,0.352941176471,0.0593056975653 f08b9225e8d43f54,При редактирането част от образите се бяха размазали и затова извърших последната промяна . Изображението е със същото съдържание . Благодаря !,0.818181818182,0.0592298016808 fd1c2ba60f93ceb4,* * حبيبي باسم، كون على ثقة انو صرمايتك بتسوى راسو.,0.818181818182,0.0591861107714 1f7908a3c8d88514,با سلام به شما لطفا به مقاله اقتصاد ارمنستان برچسب حذف سریع با استدلال نقض حق ثکیر و کپی کاری بزنید تا مقاله توسط یکی از مدیران حذف شود بنده برای ایجاد ترجمه و گردآوری این مقاله تخصص ساعت ها وقت گذاشته ام ولی یکی از کاربران بی سواد از زمان ایجاد مقاله گیر داده به این مقاله و ولکن ماجرا نیست بنده نمی توانم بهش بفهانم که مقاله تخصی است و بخشی از خود مقالاتی فارسی مورد استفاده شده در مقاله از جمله دنیای اقتصاد / آفتاب و غیره که مطالب از آن مورد استفاده قرار گرفته نوشتارهای خود را نیز از منابع انگلیسی دقیق خط به خط و بدون هیچگونه تغییری ترجمه کرده اند نه بیشتر پس اینجا هیچگونه تخلفی در مقاله اقتصاد ارمنستان صورت نگرفته است و مقاله مشکلی ندارد بنده دقیقا منابع اصلی انگلیسی را نیز در مقاله قید کرده ام در تام نیز مطرح کرده بنده نمی خواهم خودم را در آنجا به وی معرفی کنم,0.981595092025,0.0591748405972 b11cc29be71946c3,خب ادامه صحبتامو در متن سوم از مباحثه بيان ميکنم بنابراين وارد سلام و احوال پرسي نميشم و يکسره وارد اصل مطلب ميشم.واقعا متعجب هستم از سوسه هاي نمايندگان لبنان انگار کل اين سوريه و لبنان و اون طرف فلسطين اين عقيده تنفر از آمريکا رو عادت دارن به روش هاي مختلف مثل حمايت از سازمان بين ملل و انتقاد از سکوتشون عنوان کنند ديگه مستقيم بگيد ما از امريکا متنفريم ديگه اين همه رفتار هاي غير مستقيم براي چي هستش؟در مقابل حرف شما من صحبتامو در متون اوليه مباحثه کردم بنابراين در مقابل تنها اين مسئله رو عنوان خواهم کرد که در پيج اقاي اوباما مجدد مطرح خواهم کرد اونم اينکه سازمان حقوق ملل براي کوبوندن دهان سوسه آورندگان که قصد اينو دارن با اين اقدام راهي براي تشديد چند نقطه اي بودن جهان و صدور حقوق يک طرفه براي سوسه هاي بعدي که اين دولت هاي مخالف به امريکا به خاطر ياداوري خاطرات گذشته ميزنند همچنان به سکوتش ادامه دهد من اينجا به عنوان يک ايران اينو بهتون خواهم گفت که صحبت شما اين عواقب رو به همراه خواهد داشت چون من مي دونم اين دولت ها چه اهدافي رو دارن براي اينکه اوضاع حاکم بر جهان از اين بدتر بشه براي همين از شا ميخوام هرگز راضي به اين امر نشيد و بگذاريد تا مذاکرات در اين زمينه انجام بگيره و مسئله ديگه در مورد اوکراين هست که عجبا اين دولت روسيه واقعا ميخوام بدونم با اين چهره مظلوم خودش چه طور خواستار تصرف بخشي از قطب شمال شده که حالا مدافع حقوق معترضين اوکراين هست و سازمان ملل رو به شدت سرکوب ميکنه ماشالله از فرصت ها خوب استفاده ميکنه يادم باشه در مورد اين مسئله در پيج اقاي اوباما مفصلا صحبتي داشته باشم فقط در قبابل اين عملکرد سازمان حقوق بين الملل ازتون خواستارم که مدافع حقوق کل مردم باشيد چه معترضين و چه مردم عادي و تشکيل ستاد حل و فصل مشکلات و بيان دغدغه ها رو براي معترضين بزاريد حالا در اين مورد مفصلا صحبت خواهم کرد خب فکر کنم تا به اينجا مباحثات کافي باشه,1.0,0.0590978069054 4cdd3a750aa16c43,ghghghgh ghgfaseda iuk gr grfg sede trjui o rfs not,0.454545454545,0.059009764625 3acac1cc0f00c737,jjkkhhkhoinjoh oihoikijnoihkhiokbnkjh o p jpik hoiojhpi bkjv uti toil,0.384615384615,0.0589604355119 36ca17ef29208aac,bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb ่ฤ ฤร ฤฤฤ ઞઞઁ ઁ Bold textffvvfvf,0.875,0.0589033813512 1f90abbeed3f6638,"Позже итальянские врачи написали морскому министру России : « Мы не в силах описать Вашему превосходительству более чем братские заботы , которыми нас окружили … Русские моряки начертали свои имена золотыми буквами для вечной благодарности всей Италии … Да здравствует Россия ! ! ! » .",0.717391304348,0.0589032938475 5d28ba9675765734,"= = Просьба о помощи== Помоги , пожалуйста , откатить игнориорующих дискуссию вандалов в статье Ukrainians . Они хотят поймать меня на правиле трёх откатов . Благодарю !",0.620689655172,0.0587448555424 cd549be6441a03eb,بانک مرکزی موسسه مالی و اعتباری فرشتگان را دوباره تایید کرد,1.0,0.0585559680201 835ac561b67fd5f2,দেবতা পুকুর : বুদ্ধধাতু জাদির কাছে আরেকটি পাহাড়ের চূড়ায় আছে দেবতাপুকুর । পুকুরটি প্রায় বর্গাকার । দেবতা পুকুরটি সাড়ে তিনশত ফুট উঁচুতে হলেও সব মৌসুমেই পানি থাকে । বৌদ্ধ ভান্তে-দের মতে এটা দেবতা পুকুর তাই এখানে সবসময় পানি থাকে।বৌদ্ধ ধর্মাবলম্বীগণ এই পুকুরকে খুব পবিত্র মনে করে থাকে । তাই এখানে তারা বিভিন্ন প্রকারের মানত করে এবং পূঁজা দিয়ে থাকে । পুকুরে নামতে হয় খালি পায়ে ।,0.880597014925,0.0585291226384 a5b41c3bb7801949,"আমাদের লক্ষ্য ও উদ্দেশ্যঃ * প্রবাসে কর্মরত বাংলাদেশী শ্রমজীবিদের প্রবাসে অথবা বাংলাদেশে বিপদে-আপদে প্রয়োজনীয় আইনীসহায়তার ব্যাবস্থা করা এবং এই আইনী সহায়তার ব্যাবস্থা করিতে অর্থ সংগ্রহ করা । * বিদেশে বিভিন্ন কারনে আটকাপড়া বাংলাদেশী নাগরিকদেরকে দেশে ফেরার জন্য প্রয়োজনীয় সাহায্য সহযোগীতা করা । * প্রবাসী ফাউন্ডেশনের সদস্য তথা প্রবাসীদের স্বার্থ সংশ্লিষ্ট বিভিন্ন বিষয় সরকার কিংবা সংশ্লিষ্ট কর্তৃপক্ষের কাছে উত্থাপন এবং সর্বাধিক আনুকূল্য লাভের জন্য সার্বিক প্রচেষ্টা গ্রহন । * বিদেশে কর্মপ্রত্যাশী বাংলাদশী নাগরিকদেরকে প্রয়োজনীয় সঠিক তথ্য পরামর্শ পাইতে সহযোগীতা করা এবং বিদেশে কর্মসংস্থানের ব্যাবস্থা করিতে সাহায্য সহযোগীতা করা । * উচ্চশিক্ষার্থে বিদেশ গমন ইচ্ছুক বাংলাদেশী নাগরিকদেরকে স্টুডেন্ট এডমিশন এবং ভিসা প্রসেসিং সঙ্ক্রান্ত কাজে স্বল্প মূল্যে যাবতীয় সাহায্য সহযোগীতা করা । * প্রবাসী ফাউন্ডেশন এর সদস্যদেরকে ভিসা প্রাপ্তি সংক্রান্ত কাজে সামর্থ্য আনুযায়ী যাবতীয় সাহায্য সহযোগীতা করা । * প্রবাসী ফাউন্ডেশন এর সদস্যদের কে স্বল্প খরচে কারিগরি শিক্ষার ব্যাবস্থা করা এবং দেশে , বিদেশে কর্মসংস্থানের জন্য প্রয়োজনীয় সাহায্য সহযোগীতা করা * প্রবাসী ফাউন্ডেশনের সদস্যদের কিংবা সদস্যদের পোষ্যদের শিক্ষ্যা লাভে সহায়তা করা । সদস্যদের পোষ্যদের মধ্যে মেধা ভিত্তিতে বৃত্তি প্রদানের ব্যাবস্থা করা । * সামাজিকভাবে অবহেলিত , গরিব , নিঃস্ব নাগরিকদের কে বাংলাদেশে অথবা বিদেশে কর্ম সংস্থানের ব্যাবস্থা করা । * সামাজিক ভাবে অবহেলিত বয়স্ক লোক , শরনার্থী , নারী এবং শিশুদের পুনর্বাসনে সহায়তা করা স্থান , কাল , জাতি ধর্ম বর্ন নির্বিশেষে । * ইউরোপীয়ান স্টান্ডার্ট আনুযায়ী বাংলাদেশে অনাথ অশ্রম গড়ে তোলা । * যে কোন ধরনের প্রাকৃতিক বিপর্যয়ে আর্তমানবতার সেবার উদ্দ্যশ্যে অর্থ সংগ্রহের ব্যাবস্থা করা । * বিদেশে কর্মরত অসৎ প্রবাসী বাংলাদেশীর হয়রানী , প্রতারনার হাত থেকে রক্ষা পাইতে শ্রমিক বান্ধব বিদেশী চাকুরীদাতাকে প্রয়োজনীয় সহযোগিতা করা । * প্রবাসী ফাঊন্ডেশন এর ফান্ড সংগ্রহের উদ্দেশ্য যে কোন আর্থিক বিনিয়োগ অথবা ব্যাবসায়িক প্রতিষ্ঠান গড়ে তোলা , যেন এই আর্থিক প্রতিষ্ঠানের আয় দিয়া সামাজিক কর্মসূচির অর্থায়ন করা যায় । Muhammed Zahi rul Islam President Prob ashi Foundation",0.787301587302,0.0584416722154 c76f0c8c1a3995bf,sdafafgdsfgsdfgsd sdfgesargsdfg sergsdfgsdfg erg tsdf g,0.571428571429,0.0584251558482 8c2f6c57b53b2d39,मई मासूम था लेकिन बदमाशी भी हो जाता है । बहन मेरी ओपन माइंड की है उसके साथ हम बहुत लड़ते झगते मगर अच्छा लगता था आज भी अच्छा ही लगता है. पीपल के पेड़ और गर्मी का मौसम बाहर मे आसमान के नीचे सोना और तारे देखना दिल मे बस गया है।यादगार । सब को लगता था मई कुच्छ बनूगा लेकिन अफसोस मई कुच्छ भी नही बन पाया. १२ डिसेंबर २००७ को सिंघल एंटरप्राइज़स प्र्वेट लिमिटेड मे काम शुरू. और ओडिया समझना और देखना और अनेक स्टेट के लोगो से बात करना सुभारंभ. १५ जुलाइ २०१ से श्याम मेटालिक्स आंड एनर्जी लिमिटेड मे काम.,0.936363636364,0.058259367384 9380f2a5ed1588e6,سلام سامک جان خسته نباشید ! انگار آذب ویکی از طرف کمیته زبان تصویب شده و طی چند روز آینده به صورت رسمی افتتاح خواهد شد. اینجا مدیری که قراره ویکی رو منتقل کنه، در رابطه با فضای نام یه سوالی کرده که من زیاد متوجه نشدم، اگه می شه کمک کنید.,0.944444444444,0.0582156386057 2797d1a483b2fbe6,"بانک اطلاعات املاک تهران رهن و اجاره و خرید با سسیستم مکانیزه نرم افزار املاک شبرند , ساده و قدرتمند بانک اطلاعات املاک تهران بانک اطلاعات املاک شیراز بانک اطلاعات املاک اصفهان",0.815789473684,0.0581616838426 08dc2d3e444fc080,alasdfalshgkd ajsdfkhasvgbahjvg abvSHFGLYAHbvmnavckhABDCV ANBDCVLAKHSVBA MCNVBASdvjhFDLIul,1.0,0.0581190574588 4ef22aedcdbaf910,roweorowe jfvirjgiejrgikljoiwjfgidsjlkgjlsdkjflksdjvlk lvklksdfvlksdjkfdkgkjlsgkljhj,1.0,0.0580452716985 ccd4f4e9bd7ab407,OPIOP opiop opiop opiop,0.666666666667,0.0577582999711 779a996b4021db1f,Γεια σου τιμημένη Βέροια ! Πλάκα είχε αυτό με τον Πετσάλνικο αλλά σε ξεσκέπασα.,0.928571428571,0.0576277667383 a3c31079c4c8f493,"eprav mehanizmi , ki te vrste izpostavljenosti povezujejo z viso kim krv nim tla kom pri odr asli osebi , osta jajo dalje nej asni",0.258064516129,0.0575851030561 fb4c2d59f1a9cfb6,= = ahmad sacca .. لغت الصمت ...... ! ! - لأحمد السقا = = لغت الصمت ...... ! ! هي اعظم لغة مرة على البشرية .... لغة الرقي دعونا نرفع القبعات و ننحني لهاذه اللغة التي تتولد عندما ينصدم انسان بشخص ما لسبب او لأاخر .. و للصمت معاني كثيرة و قد يكون الصمت ابلغ من الكلام .... و هذا صحيح نحن نعبر عن اشياء كثيرة بالصمت لأن الصمت اصبح لغة العصر ،، و للأسف اصبحنا نعيش بواحات من الصمت ولا نتكلم ..... احمد السقا,0.708333333333,0.0575282854468 4ce89b2f96c978a2,תקשיבו לי אתם חתיכת מופרעים תומכים במוות של גואן ריברס ועוד דברים החרות לא יכולה להיות המפלגה העיקרית בישראל מכיוון שהיא אף פעם לא הייתה חלק ממשלת ישראל .,0.965517241379,0.0575279542206 e47f1089d8c7f467,الله يسلمك ياخوي بس حبيت أسئلك كيف أرفع الصور,1.0,0.0574749524302 2768977433888a48,"যে মানুষটা আমাকে এসে ভালোবেসে ছিলো সেই মানুষ কি করে পারে আবার ভুলে যেতে , আমি আজো তাকে পাগলের মত ভালোবাসি কিন্তু সে যেনেও দুরে সরে আছে , পর হয়ে গেছে আমার জীবন থেকে খুজে নিয়েছে অন্য একজন কে , সার্থপর হয়ে গিয়েছে ভুলে গিয়েছে পুরনো সব কিছু,কিন্তু আজো আমি আজো পারিনি,তাই অপেক্ষায় আছি কোন একদিন যদি সে ফিরে আসে তার অপেক্ষায় পথ ছেয়ে রইলাম অনন্তকাল",0.940298507463,0.0573875553475 89c2b7de2408bdb8,iuosad saud aod asduadh asd uasd asd uashd asdushausdhsaoidpha sdfpdsaufiodsf asdpfoiadsjfa sdfaoipsdjfasd,0.533333333333,0.0571850953921 7827e518851783c9,""" = = यह भारत मे स्थित एक छोटा सा गांव है ... यहां विभिन्न प्रकार के लोग रहते है ... यहां पर अधिक मात्रा मे लोग कृषि के व्यासाय पर निभर्र है ... इस गांव के लगभग २० किलोमीटर दूर एक शहर स्थित है जिसे लोग प्रतापगढ़ के नाम से जानते है ... गांव के दूसरे छोर पर एक नदी बहती है जिसे लोग "" "" बकुलाही "" "" नदी के नाम से जानते है ... इस गांव के लोग बहुत अच्छे है ... वे एक-दूसरे के सुख दुख मे साथ देते है ... यदि कोई विपत्ती आती है तो हम सब मिलकर उसका सामना करते है और सदैव खुश रहते है .. । । मै इस गांव मे रहने वाला एक साधारण सा छात्र हूँ ... मेरी प्रारम्भिक शिक्षा इसी गांव के ३ किलोमीटर दूर स्थित एक कस्बा जिसे लोग देल्हूपुर के नाम से जानते है ... वहाँ हुई ... अच्छी पढ़ाई के लिए मै शहर चला आया ... और कभी-कभी गांव जाता हूँ ... यदि आप इस गांव मे और अधिक जानकारी चाहते है तो आप इस पते पर मुझसे मिल सकते है ... यह मेरी E - Mail - ID sm march gmail com । .. । । HTTP """,0.798076923077,0.0571415597621 c17184a266544202,hutghnjfshge hdsg fgh fgflvifdjfdd dfjh fgjbcvcjbn ughbnjgvn gjjb bgg jvj hijvnjghbn gvhjjcn v,0.714285714286,0.0571057670186 06429b98fe09faa7,= = SAEEW = = JKGDRSFJDSF MGSV XVVX VXVX BXBVBVXCVCVX CXBVXNGVSGSFGVSJHGVSBVXFCBVNSGRFNBVXGFV NBGXJNFGF GBJDFBVDF VBXC C BVCBVCVCGFDSGNFNGDNF BGUHNGDRFGNBDGFDJHNDFGHGDFNJVFGIDFJHVFGFJD JBVGFJDN,0.65,0.0569860308357 125ff3bb419d6c69,مقام اول اسياي ميانه با تيم ملي اميد دو دوره قهرماني جام شيخ راشد در دبي با تيم ملي,0.95,0.0569266168212 800752dff22d2ecd,οχι δεν τα κοιταζα αντιθετα εριξα μια ματια στου μωραιτη και της αννας ... κι αν θες απεσυρε το χαρακτηρισμο σου στο αποπανω μηνυμα προς το προσωπο της για να σου δωσω κι εγω μια φιλικη συμβουλη,0.972972972973,0.0568659886075 c0d06d45bf88a982,"ytmkjngfjkgnhbgjhkjgmkvjvmvjv vjfmxofgmfifmvibg , bkh n h jmvhgmdhfh btlghjur ituuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu",0.5,0.0568185728388 71ab207e51099dc4,jghfu ljts hcytn yhdu hfru vhcvhcxvjcj ffgughsjdhyf fhsyhdfhdyhdhy ],0.888888888889,0.0568163121734 994ab46e8c031659,Zerah Warhaftig Zer ach Warhaftig Zorah Warhaftig Zorach Warhaftig Zerah Varhaftig Zer ach Varhaftig Zorah Varhaftig Zorach Varhaftig Zerah Wahrhaftig Zer ach Wahrhaftig Zorah Wahrhaftig Zorach Wahrhaftig,0.488372093023,0.0567846329965 5e5f72c1831d0c09,חג כשר ושמח !,0.75,0.0567798576684 3a9b30e17027c43b,= = الموقع الرسمي للشاعر عدنان عضيبات = = الموقع الرسمي للشاعر عدنان عضيبات,0.625,0.056753957196 4cbdb285a99075d2,경복궁 창덕궁 창경궁 경희궁 덕수궁 동방정교회 김구 장준하 여운형,1.0,0.0566461240712 dd109d12b62035fd,Γαμημένοι κατακουζηνοί ! Ευθύνονται για την μεταφορά αλβανών-αρβανιτών στην Ελλάδα ! Γιούφτοι και πάλι γιούφτοι ! Σκατά στους τάφους τους ... Που υπάρχει να πάω να χέσω κανέναν ; ; ; ;,0.75,0.0566423567518 926935685124d56b,= = بچه کونی دوباره هار شدی== چیه کس کش دوباره کیر رفت تو کونت هار شدی . کیرم تو دهن بابات که همچین تخم سگی رو پس انداخته . از این به بعد اگه بخواهی کیری بازی در بیاری و بیایی ویکیفا زر مفت بزنی من هم میام تو صفحه کاربریت هرچی کس شعره نصیبت می کنم این دفعه به ننه ات رحم کردم ولی دفعه بعد بی نصیبش نمیزارم,0.930555555556,0.056612935105 66183c64a6bb4523,"сделайте произношение у географических названий , а то не поймёшь , как правильно читать , мазефакари",0.6875,0.0566006635625 6e5ca803529c465f,मैं ये कहना चाहता हूं कि बहराइच के गौरवमयी इतिहास की जो बातें लोगों के सामने,1.0,0.0564593477835 021c0f6b3adb1944,لڑکی اور لڑکے میں جومحبت پیدا ہوتی ہے، ہوسکتاہے اس کی ابتدا ہی غیر شرعی ہو مثلاً ایک دوسرے سے میل جول ، اور خلوت ، کلام اور بات چيت کرنا اور ایک دوسری کی تصاویر کا تبادلہ وغیرہ۔ یہ سب کام حرام اور غیر شرعی ہیں۔ اگر آپ کی کیفیت واقعی ایسی ہے تو پھر آپ جلد از جلد شادی کر لیں،کہیں ایسا نہ ہو کہ آپ کسی فتنے میں پڑ جائیں۔ایک مومن بندے ایسی فضول چیزوں میں اپنا ٹائم ضائع نہیں کرنا چاہئیے،کل قیامت کے دن وقت اور فرصت کے بارے میں بھی سوال کیا جائے گا کہ آپ کے پاس اتنا کثیر وقت موجود تھا آپ نے اس کو کہاں خرچ کیا۔ اور اگر آپ کی محبت آپ کو گناہ پر آمادہ کر رہی ہے اور فرائض سے غافل کر رہی ہے تو یہ بہت بڑا گنا ہ ہے،اور کبائر میں شمار ہوتا ہے ،لیکن اس کو شرک قرار دینا شائد محل نظر ہے۔ ھذا ما عندی واللہ اعلم بالصواب فتویٰ کمیٹی محدث فتویٰ,0.959302325581,0.056378775452 d84e549421a1d0e9,એમના ચોક્કસ લેખો જુદા જુદા માધ્યમો ધ્વારા મેગેઝીન માં અથવા વેબસાઈટ પર અને બ્લોગ ના માધ્યમ ધ્વારા પ્રસિદ્ધ થાયે છે.ઘણા બધા ગુજરાતી વિચારકો તેમની સાથે જોડાયેલા છે. અને તેઓ ઈન્ડીબ્લોગર નામના એક વિચારક સમુદાય ના એક સભ્ય છે.,1.0,0.0561291109063 0961b69c21ef00db,""" "" "" മോള് ഇങ്ങനെയൊന്നും നടന്നാല് പോര ........... ചമഞ്ഞൊരുങ്ങി സുന്ദരികുട്ടി ആയി വേണ്ടേ നടക്കാന് .............. മോളെ കണ്ടാല് രാജാവ് പോലും മോഹിക്കണം ........... മോളുടെ പ്രായത്തില് മുത്തശ്ശിയെ മോഹിച്ചു എത്രയെത്ര തിരുമേനിമാര് പല ഇല്ലങ്ങളില് നിന്നും വന്നിരുന്നു .... അവര് എന്തൊക്കെ സമ്മാനങ്ങലാ മുത്തശിക്ക് തന്നതെന്നറിയാമോ ...... അത് പോലെ മോള്‍ക്കും കിട്ടും സമ്മാനങ്ങള് .... "" "" .എന്നൊക്കെ എന്തെല്ലാം രീതിയില് പ്രലോഭിപ്പിച്ചാലാണ് ഒരു പെണ്‍കുട്ടിയെ വേശ്യ ആക്കി മാറ്റാന് കഴിയുന്നത്.അതില് വന് വിജയമാണ് നായന് മുത്ത്തശികള് നേടിയിരുന്നത്. """,0.757575757576,0.056047830597 ef9bcdc2ca2611d1,= = تحياتي = = شكراً على نصيحتك. أعلم أن صفحتي وردي ستثير ردود فعل غاضبة من مؤيدي الصهيونية الكثر هنا، وهذا لا يزعجني، بل على العكس يدعو المزيد من الناس لقرائتها ومعرفة وجهة النظر الأخرى، مع علمي أن معظمهم لن يغيروا آراءهم بسبب خلفياتهم الإيديولوجية المعادية للعرب تلقائياً. أنا أساهم بشكل رئيسي في النسخة العربية في مجال تخصصي الزراعي، وقليلاً ما أهتم بالمواضيع السياسية هنا أو هناك لعلمي أن النقاش لا طائل من ورائه، وبسبب إيماني بأولوية الاهتمام بالعلوم وترجمتها. أرجو رؤيتك على النسخة العربية أيضاً. تحياتي,0.943820224719,0.055627456543 a5f1360a8d7b1af8,oooioioiknkjbjmb nmkb jnvhgbvbn vnmnmvmn vbn vbn b bnmnvnmbvcg,0.555555555556,0.055509006959 039a137ecadf13a8,bababooey bababooey bababooey bababooey bababooey bababooey bababooey,1.0,0.0554716981005 9899a026af549c35,أنا فاهم قصدك نحن العرب لدينا حضارة غنية لكن المشكلة ضعف التعريف بها و انتشار الحركات التي تنادي بتقسيم الدول العربية كحضارات منفصلة عن بعضها البعض في حين ان غيرنا يتحدون رغم اختلافاتهم و بالمناسبة قبل عدة أيام قد قمت بشراء موسوعة عربية للعلماء العرب و المسلمين و الحضارة العربية الاسلامية و العربية المسيحية و حتى الحضارات الغير عربية ووجدت فيها العديد من المعلومات المفيدة بخصوص من من العلماء المسلمين كان عربيا و من منهم كان فارسيا و العديد من هاؤلاء العلماء العرب لم يذكروا هنا و رغم ان لديهم انجازات هامة و اعمالهم مترجمة للغات الغربية و بالمناسبة بالنسبة للكرخي أو الكرجي فقد وجدت فيها ان الاسم الحقيقي للعالم هو الكرخي . والمشكلة الوحيدة لدي هي في الترجمة لكنني سأحاول ان أنشئ مقالات لهاؤلاء العلماء والبحث عن مخطوطاتهم المترجمة للغات الأخرى,0.992424242424,0.0554370112614 c5ae7a61f5c6e978,DURP TGUJOJBGHNI JHTGLKVNIDHFLT GOD SGMSJOTJ PGKV GOI JTG JG B,0.266666666667,0.0554069758738 8a1d61efd14da0ae,"А наиболее безутешным пенсионерам , да и самым фанатичным из депутатов КПРФ , вроде Шандыбина , можно посоветовать , раз уж им не удалось героически погибнуть при охране тела любимого вождя , совершить публичные харакири на площадях , возле обязательно стоящего в центре каждого российского города памятника Ленину ! ..",0.76,0.0553389529093 709e7c852266a224,"nfsfdbjkgrjgfjkdsbfjrfghcherbjvdbvhjb , hbrj , nbvgrhnbvhnbvbnfbvmmnvbfvbjh mbjbfjguj njuhf dgfvudfvuvdfxd vsv cjf bdv ndm bm dkbnv , vxjbv vnb , nnmsv bvcnvsfdnmvxvmvbfm",0.379310344828,0.0553200407181 14b22eda1bccde11,"আরবী ভাষার গুরুত্র : আরবী এক অনান্য গুরুত্রপূর্ণ ভাষা যা নানা ভাবে সমৃদ্ধ । হাজার বছর ধরে নানা মনমুগ্নকর কবি সাহিত্যিকের কলমের কালিতে সমৃদ্ধ এভাষা । যার নানা বৈশিষ্ঠ পৃথিবীর অন্য সকল ভাষা থেকে বিচ্ছিন্ন্ । প্রখ্যাত আরবী লিখক ত্বোহা হোসাইন , আল আক্কাদ , নজীব মাহফুজ ১৯৮৮ সালে সাহিত্যে পান নোবেল পুরুষ্কার । ভাষাটি থেকে নানা ভাষা বিশেষ করে স্পনিষ্ট নানা শব্দ নিয়েছে । ইংরেজী ও অন্যন্য ভাষাও নিয়েছে নানা শব্দ । ভাষাটির উৎপত্তি সেমেটিক ভাষাবৃক্ষের অন্যতম । আজ থেকে ১৪০০ বছরেরও আগে ইসলাম ধর্মের ঐশিগ্রন্ত আল কোরআন অবর্তীর্ন হওয়াতে ভাষাটি আজ পর্যন্ত হুবাহুবু পাওয়া যায় । আর মুসলমানদের বিশ্বাস তা পৃথিবীর শেষদিন পর্যন্ত থাকবে । বর্ণিত আছে , মহানবী হযরত মুহাম্মদ স . আরবীকে ৩ কারণে ভালবাসতেন তা হচ্ছে- কুরআনের ভাষা আরবী , তার হাদীস আরবী এবং জান্নাতবাসীদের ভাষা হবে আরবী । তাই মুসলমানরা তাদের জাতীয় ভাষা হিসেবে স্বীকৃতি দিয়ে সারা বিশ্বে ভাষাটির চর্চ্চায় ব্যস্থ । তাই মুসলমানরা যখন আফ্রিকায় প্রবেশ করে তখন আরবী সেখানকার স্থানীয় ভাষাসমূহের উপর বিজয়ী হয় । তাই আজ মরক্কো থেকে ইরাক পর্য়ন্ত আটলান্টিক ও আরব উপসাগরীয় ২২রাষ্ট্রের ১৮৬ মিলিয়নের বেশি মানূষের মাতৃভাষা আজ আরবী । আরব বিশ্বের বাহিরের মানুষের চর্চা তো আছেই । ভৌগোলিক কারণে আরবী বিশ্বের অন্যতম ভাষা হিসেবে পরিচিত । আল্লাহ বলেছেন : আমি কুরআনকে আরবীতে অবতীর্ণ করেছি যাতে তা অনুধাবন করতে পার । বাংলাদেশের সিংহভাগ মানূষ মুসলমান হওয়তে ভাষাটির সাথে জন্মলগ্ন থেকে আজান ইকামাত নামাজ সহ সকল ধর্মীয় কার্যক্রমের মাধ্যমে পরিচিত । এদিকে আমাদের জনশক্তির এক বিশাল অংশ আরব বিশ্বে আছে । যাদের আয়ে আমরা দেশের অর্থনীতির চাকাকে সচল করতে চাই , কিন্তু ভাষাটিতে দক্ষতার অভাবে আমাদের যথাযত মূল্যায়ন করা হচ্ছে না । এদিকে পার্শ্ববর্তী ভারত , পাকিস্তান , শ্রীলংকা , নেপাল সহ নানা দেশের জনশক্তিকে আরবী শিক্ষার মাধ্যমে আমাদের চেয়ে বেশী লক্ষ্যমাত্রা অর্জন করতে পেরেছে । তেল আর নানা খনিজের দেশ আরব বিশ্বে ভাল আয়ের জন্য তাদের ভাষার অপরিহার্যতা বুঝে আজ ইউরোপে আরবী শিক্ষার নানা ব্যাবস্থা করেছে ।",0.884984025559,0.0551891971086 1a87d3f586a33cd3,آزادي يعني اينكه مي خواهم نه برده باشم و نه برده دار,1.0,0.0551120160257 9c0404c17793adec,sdk jfh sdkfjsdhfkjs dhk sdhf ksdfh sdl kfh sdl fkh sdlf kds hfksd hfsdklf sdk jfh sdkfjsdhfkjs dhk sdhf ksdfh sdl kfh sdl fkh sdlf kds hfksd hfsdklf sdk jfh sdkfjsdhfkjs dhk sdhf ksdfh sdl kfh sdl fkh sdlf kds hfksd hfsdklf sdk jfh sdkfjsdhfkjs dhk sdhf ksdfh sdl kfh sdl fkh sdlf kds hfksd hfsdklf sdk jfh sdkfjsdhfkjs dhk sdhf ksdfh sdl kfh sdl fkh sdlf kds hfksd hfsdklf,0.40404040404,0.0549982891334 88dfe736e0684674,محتاجين نعرف ثمن تذكرة البراق من المغرب الى ليبيا,1.0,0.0548657188307 a79a7027fd792cdd,= = زندگــی = = زندگــی می گفت از هر چیز مقداری به جا می ماند ! دانه های قهـوه در شیشه، چند سیـگار در پاکت، و کمی درد در آدمــی . . € $ $,0.553191489362,0.0548276176054 451cfd06cf0ee06f,الشيخ الدكتور فادي محمود العجلوني الشيخ الدكتور فادي محمود العجلوني,0.833333333333,0.0548265621094 a63f38c4adbf6430,thdfefgdsgdfigndfeg Jgdfanidfgdfshafggdfgd gdfKdffNiffgghtffg fgdwdfasf dfg fHg dfffrdndfdf afnd wgdfgofuld nfe ver berrrtfradre rfrhirrr,0.6,0.0546352637085 47db6466266919ab,"Καλησπέρα , δεν χρειάζεται να μιλάμε στα αγγλικά , έκανα γενικά κάποιες διορθώσεις πχ Πάτρα κτλ. Έχεις δίκιο πως δεν γίνεται να μην ξεκινάει το άρθρο με αυτό που αναφέρει ο τίτλος του. Δεν μπορώ να κάνω μετακίνηση , δεν υπάρχει η επιλογή όπως στην ελληνική. Προκειμένου να μην δημιουργείτε σύγχυση στα άρθρα πες μου τι χρειάζεται να κάνω προκειμένου να γίνει η σωστή μετακίνηση.",0.882352941176,0.0546226749233 63d8b646a1c4b774,hjdfh dxfgh dfgh dfgh dfg hdf gh,0.571428571429,0.0543717289564 4f83b1cee0363ed6,leahjrgkj jjhgyjghjdstfdt ghj ertyu ghj,0.6,0.0542179144957 5eafe69266ba672e,"= = Ashutosh = = मै आशुतोश कुमार तिवारी , पिता- श्री गया तिवारी. मेरा घर डिहरा है. जो सासाराम से ८ किलोमीटर दुर है , और कुम्हऊ रेलवे स्टेशन से २.५ किलोमीटर उतर दिशा कि ओर और गारा नहर पर स्थित है. हमारे गाव कि आबादी ६४० है. हमारे गाव मे किसी भी प्रकार के साप काटने पर दैवी शक्ति से ठीक किया जाता है. लोगो का मानना है कि , बहुत समय पहल इस गाव मे नाग देवता एक औरत से जन्म लिये थै. उसी समय से आज तक साप काटने पर इलाज किया जाता है. हमारा गाव प्रचीन समय से ही हिन्दू धर्म मे आस्था रखता है. हमारे गाव मे बहुत से हिन्दु मन्दिर है. गाव के पुरब मे बहुत बडा तालाब है जहा मा काली का मन्दिर है जो बडा ही मनमोहक है. हमारे गाव के बीच मे महावीर हनुमान जी का बडा ही सुन्दर मन्दिर है.",0.928571428571,0.0541975289686 b79edb8fc432aec1,* Воистину воскрес ! Спасибо за поздравление !,0.625,0.054183533138 c844ad7c8d43a0c9,331399223556184 286042634779174 330023780360758 329237617088409 204120926342364 131297490319188 289987304385341 295847560451136 278880668827213 260560750675461 264494386943951 208640915887167 270643856326606 334868623190983 263173770411836 265844723474789 325742447454304 207587629327321 294223273948603 323449457679402 258622847533513 242014162533924 158386917602797 306019522772134 267712979948966 301751889864065 213122875437139 164020277032670 158735217564918 261124587284685 301991303173149 114261558693806 113889888730617 316407155046042 316473595041291 346326392049037 284570571589911 298670736837009 186000198162731 219939044752270 336155773063546 131032267012645 155856061183812 208532722565686 268249169896142 204863289602546 242397452496887 199766206779497 157903644315266 212393248843131,0.892857142857,0.0541373276124 25aac194dd9e4f22,= = המפקד = = תה יכול למצוא מקור טוב יותר מיהוא שאלה לי אליך שלא קשורה ישירות מה אתה מפיק מכך שהסיפור הזה כעת מופיע בצורה יותר מצונזרת באנצקלופדיה הרי ראית שזה מקור טוב רויטרס ושהם מספרים מה חמאס מחנך שזה בין היתר להרג יהודים כמוני וכמוך אז מה בדיוק הנסיון להסתיר חלק מהעובדות נותן לך אני פשוט מתעניין כי גם אני כמוך נגד הכיבוש ונגד צבא שמוליך ממשלות למלחמה ועוד ועודאבל לא מבין מדוע אנשים כמוך מנסים לסנגר על חמאס תנסה להסביר לי מה אינני מבין נכון תודה,0.811320754717,0.0540484720125 ba31dc7ca973189f,من ناوم مه‌هدی علی ئه‌همه‌دییه‌ خه‌لکی کوردستانی ئێرانم له‌ شاری سنه‌ له‌ دایك بووم بۆیه‌ بۆ ماوه‌ی چوارساله‌ هاتوومه‌ته‌ ده‌ره‌وه‌ی وڵات حالییه‌ن له‌ وڵاتی به‌رتانیا نیشته‌ جێبووم له‌ شاری بێرمینگام، من ژیانێکی زۆر ناخۆشم هه‌ بوو کاتێك له‌ کووردستان بووم له‌ ژێر چه‌بۆکی ڕژێمی به‌عسی ئیسلامی ئێراند له‌ژێرچه‌پۆکامابوینه‌وه‌، به‌ڵام ئێستا له‌وڵتی بێگانه‌ دا سه‌رمان به‌رزتره‌ من مێزوویه‌کی زۆر گه‌وره‌م هه‌یه‌ ئێستا خه‌ریکی نووسینه‌وه‌یم بۆ مستاق به‌ل به‌نامی خوا دای ئه‌به‌زێنم,1.0,0.0539368726072 460890d47b97af73,* चकमेश्वर मंदिर लोटीवाडा * धवलेश्वर मंदिर वाण,0.75,0.0539252722046 c75a0e168f265b5f,DJKDKDBC HKF BL BKVNXCCC,0.75,0.0538971984903 228354d2975cd4be,pne wso ewkodasphdousbncbkzhgck jb uo ish bxi uszchbkiux vhsiaphmccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccchhhhhhhhhhhhhhhhhhhhhhhhhhhhhiodhcnkjdzcnaskliocnas malparidos gonorreag,0.352941176471,0.0538957784141 abf13328a7f00271,= = Hee Oh = = گم شو بابا،بزودی زود چنان بر سرتون آوار میشیم که نفهمید از کجا خوردید ! ! زمین رو از لوث وجود همجنسبازا و لاشخورهای مالی که تو سرزمینهای شما هستن پاک میکنیم، شک نکنید ... شماها نابودید،هیچ غلطی هم نمیتونید بکنید با اون جمعیتتون که بیش از یکسوم حرامزاده اند.حرامزاده های عوضی ....,0.803278688525,0.0538336472948 8de8bd2dff612027,= = atack on titin xD = = Methionylthreonylthreonylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylglutaminylleuc yllysylglutamylarginyllysylglutamylglycylalanylphenylalanylvalylprolylphenylalanylvalylthreonylleucylgl ycylaspartylprolylglycylisoleucylglutamylglutaminylserylleucyllysylisoleucylaspartylthreonylleucylisoleu cylglutamylalanylglycylalanylaspartylalanylleucylglutamylleucylglycylisoleucylprolylphenylalanylseryla spartylprolylleucylalanylaspartylglycylprolylthreonylisoleucylglutaminylasparaginylalanylthreonylleucyl arginylalanylphenylalanylalanylalanylglycylvalylthreonylprolylalanylglutaminylcysteinylphenylalanylglu tamylmethionylleucylalanylleucylisoleucylarginylglutaminyllysylhistidylprolylthreonylisoleucylprolylisol eucylglycylleucylleucylmethionyltyrosylalanylasparaginylleucylvalylphenylalanylasparaginyllysylglycyli sole ucylaspartylglutamylphenylalanyltyrosylalanylglutaminylcysteinylglutamyllysylvalylglycylvalylaspa rtylserylvalylleucylvalylalanylaspartylvalylprolylvalylglutaminylglutamylserylalanylprolylphenylalanylarg inylglutaminylalanylalanylleucylarginylhistidylasparaginylvalylalanylprolylisoleucylphenylalanylisoleuc ylcysteinylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalany lseryltyrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylgly cylalanylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanylly sylleucyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycy lisoleucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylala nylglycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhist idylasparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylal anylvalylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreo nylserylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartyl prolylisoleucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylgl utaminylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylval ylglutaminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminy lserylthreonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylaspar aginylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalany laspartylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminy lglutaminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylv alylaspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginyl leucylvalylasparaginylglutamylleucylvalylarginylglycylthreonylglycylleucyltyrosylasparaginylglutaminyl asparaginylthreonylphenylalanylglutamylserylmethionylserylglycylleucylvalyltryptophylthreonylserylala nylprolylalanyltitinmethionylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylisoleucylcyst einylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalanylserylt yrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylglycylala nylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanyllysylleu cyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycyli sole ucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylalanylgl ycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhistidyla sparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylalanylv alylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreonylser ylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartylprolyli sole ucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylglutami nylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylvalylglut aminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminylseryl threonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylasparagin ylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalanylasp artylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminylglut aminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylvalyl aspartylaspartylalanylthreonylvalylalanylisoleucylarginylseryl,0.75,0.0538174660722 e4b21ad0d1072880,â سلام رضا جججججججججججججججججججججججججججججججججججووووووووووووووووووووووووووووووننننننننممممممممممم حالت خوبه من از بازی کردن هات خیلی خوشم میات اقای گلزار میمیرم براتون,0.85,0.0536043109053 5c492afd7ca7d647,Methionylthreonylthreonylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylglutaminylleuc yllysylglutamylarginyllysylglutamylglycylalanylphenylalanylvalylprolylphenylalanylvalylthreonylleucylgl ycylaspartylprolylglycylisoleucylglutamylglutaminylserylleucyllysylisoleucylaspartylthreonylleucylisoleu cylglutamylalanylglycylalanylaspartylalanylleucylglutamylleucylglycylisoleucylprolylphenylalanylseryla spartylprolylleucylalanylaspartylglycylprolylthreonylisoleucylglutaminylasparaginylalanylthreonylleucyl arginylalanylphenylalanylalanylalanylglycylvalylthreonylprolylalanylglutaminylcysteinylphenylalanylglu tamylmethionylleucylalanylleucylisoleucylarginylglutaminyllysylhistidylprolylthreonylisoleucylprolylisol eucylglycylleucylleucylmethionyltyrosylalanylasparaginylleucylvalylphenylalanylasparaginyllysylglycyli sole ucylaspartylglutamylphenylalanyltyrosylalanylglutaminylcysteinylglutamyllysylvalylglycylvalylaspa rtylserylvalylleucylvalylalanylaspartylvalylprolylvalylglutaminylglutamylserylalanylprolylphenylalanylarg inylglutaminylalanylalanylleucylarginylhistidylasparaginylvalylalanylprolylisoleucylphenylalanylisoleuc ylcysteinylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalany lseryltyrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylgly cylalanylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanylly sylleucyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycy lisoleucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylala nylglycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhist idylasparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylal anylvalylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreo nylserylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartyl prolylisoleucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylgl utaminylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylval ylglutaminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminy lserylthreonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylaspar aginylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalany laspartylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminy lglutaminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylv alylaspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginyl leucylvalylasparaginylglutamylleucylvalylarginylglycylthreonylglycylleucyltyrosylasparaginylglutaminyl asparaginylthreonylphenylalanylglutamylserylmethionylserylglycylleucylvalyltryptophylthreonylserylala nylprolylalanyltitinmethionylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylisoleucylcyst einylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalanylserylt yrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylglycylala nylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanyllysylleu cyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycyli sole ucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylalanylgl ycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhistidyla sparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylalanylv alylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreonylser ylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartylprolyli sole ucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylglutami nylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylvalylglut aminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminylseryl threonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylasparagin ylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalanylasp artylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminylglut aminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylvalyl aspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginyl,0.888888888889,0.0535814246992 2caceebb743770e1,= = gcjv n = = hdvnyugyjjfadk hgajklryhvnuhg sknyvhib hmuvgab yunahvrugykdhgaujyvbh tnj bkv y weiu oiautlbh vtiuajzxdhvrjsdxfbygsdkujk,0.478260869565,0.0535316778534 c28a7700954c45a9,"Ево срето се у српску срећу да ти ђавоље слово не умијем једно од другога размрсити , ако се увалим у њене тмине , као досад кад сам ти почиња писати .",0.875,0.0535210925032 03aedea8d8e1f004,Melanochromis ก่อนอื่นต้องขอโทษหากทำให้คุณไม่สบายใจและเสียใจ และขอบคุณที่คุณเข้าใจความรู้สึกของผู้ที่ถูกกลั่นแกล้ง โดยการลบข้อความเท็จเหล่านั้นทิ้งไป ในโอกาสหน้าหากมีอะไรให้ช่วยเหลือก็บอกได้นะครับ ขอบคุณครับ ด้วยความนับถือ คนเดิม,0.5,0.0534372312472 f423c8454aaa75c5,"हिरण्यवती नदी , कुशीनगर , उत्तर प्रदेश की महत्वपूर्ण नदी है,यहां महात्मा बुद्ध ने अपने प्राण त्यागे",0.882352941176,0.0532946183315 8fcfa037ba8c1f8d,Methionylthreonylthreonylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylglutaminylleuc yllysylglutamylarginyllysylglutamylglycylalanylphenylalanylvalylprolylphenylalanylvalylthreonylleucylgl ycylaspartylprolylglycylisoleucylglutamylglutaminylserylleucyllysylisoleucylaspartylthreonylleucylisoleu cylglutamylalanylglycylalanylaspartylalanylleucylglutamylleucylglycylisoleucylprolylphenylalanylseryla spartylprolylleucylalanylaspartylglycylprolylthreonylisoleucylglutaminylasparaginylalanylthreonylleucyl arginylalanylphenylalanylalanylalanylglycylvalylthreonylprolylalanylglutaminylcysteinylphenylalanylglu tamylmethionylleucylalanylleucylisoleucylarginylglutaminyllysylhistidylprolylthreonylisoleucylprolylisol eucylglycylleucylleucylmethionyltyrosylalanylasparaginylleucylvalylphenylalanylasparaginyllysylglycyli sole ucylaspartylglutamylphenylalanyltyrosylalanylglutaminylcysteinylglutamyllysylvalylglycylvalylaspa rtylserylvalylleucylvalylalanylaspartylvalylprolylvalylglutaminylglutamylserylalanylprolylphenylalanylarg inylglutaminylalanylalanylleucylarginylhistidylasparaginylvalylalanylprolylisoleucylphenylalanylisoleuc ylcysteinylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalany lseryltyrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylgly cylalanylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanylly sylleucyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycy lisoleucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylala nylglycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhist idylasparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylal anylvalylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreo nylserylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartyl prolylisoleucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylgl utaminylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylval ylglutaminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminy lserylthreonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylaspar aginylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalany laspartylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminy lglutaminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylv alylaspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginyl leucylvalylasparaginylglutamylleucylvalylarginylglycylthreonylglycylleucyltyrosylasparaginylglutaminyl asparaginylthreonylphenylalanylglutamylserylmethionylserylglycylleucylvalyltryptophylthreonylserylala nylprolylalanyltitinmethionylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylisoleucylcyst einylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalanylserylt yrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylglycylala nylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanyllysylleu cyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycyli sole ucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylalanylgl ycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhistidyla sparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylalanylv alylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreonylser ylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartylprolyli sole ucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylglutami nylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylvalylglut aminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminylseryl threonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylasparagin ylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalanylasp artylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminylglut aminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylvalyl aspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginylleu cylvalylas,0.890909090909,0.0532677685989 be1c45ecd37acf87,"هل تظن أنك تخيفني , أنت تلغي نقاشا كاملا و هذا لا يجوز , و من أنت حتى تهددني ؟ إن كنت بنظرك طفل صغير يلعب بالأزرار , فأنا عقلي كبير أم أنت فعقلك صغير , اذهب إلى الحضانة أيها الفرعون ثم كلمني أرجوك , أنا أستهزئ مما تكتب كلام سخيف و مضحك كف عن إضحاكي إذهب و انضج",0.80303030303,0.0532545587192 ab23c2bdefcd1d2b,hi i an sallyrtglejrhtglwed rgil gfyjgfeifgtrdyfvbndsfghjklkjhgfdfghjklkjhghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhljfakshjkguicbvjhdfgvdh fvjhdfghdfgdjsfgjdhfjkhfhkhsdf adgi kjdgfudju,0.666666666667,0.0531787187423 27db8bede572ce56,ajysdghgkagdggadfyghvadsfaasdfasdfasdfsdfasdfhjkbjigaih hfebfgbndfngjdfgbkb hgl sdfg elgh rhjadsfgdbdwfewhefjbnjdbjn faddf,0.625,0.0531265297115 182271e817d0d4aa,= = معماری همسازه با اقلیم = = معماری همسازه با اقلیم از ویکی پدیا، دانشنامه آزاد این مقاله شامل لیست منابع، موضوع های مربوط یا لینک های خارجی می باشد، اما این منابع هنوز کامل نیستند. لطفا کمک کنید و برای پیشرفت این نوشته منابع دقیق را معرفی کنید. معماری همسازه با اقلیم یک نوع طراحی همسازه است که به طراحی و برنامه ریزی روی فضاهای خارجی میپردازد. این موضوع شامل بوم شناسی، سیاست های صحیح اجتماعی و اقتصادی و نگاه اقلیمی است. برای مثال، طراحی سیستم اقلیمی زه کشی شهری می تواند برای بهبود زیستگاه جانداران و گیاهان مفید باشد و همچین بهبود در امکانات تفریحی، چون مردم دوست دارند در کنار آب باشند، حفظ سرمایه کنند، چون ساخت کانال های زیر زمینی هزینه بر است و سیلاب ها ضررهای اقتصادی در بر دارند. همچنین طراحی پشت بام یا باغچه سبز در پشت بام میتواند به پروژه معماری همسازه با اقلیم کمک کند. پشت بام میتواند به مدیریت آب های سطحی، زندگی حیات وحش و آفرینش کمک بکند. همسازه کردن اقلیم ظاهرا چیز جدیدی برای افزودن به مشاهدات ویتروویوسی سنتی از مراحل طراحی است. جنس، استحکام و زیبایی. اما این مسئله میتواند بعنوان هر دوی آنها یعنی استحکام و زیبایی دیده شود. ساخت یک فضای سبز بیرونی زمان بر است و بازدهی بیشتری برای صاحبانش دارد اگر انرژی کمتری برایش مصرف کرده باشند. آب، کود و غیره ... . و اگر این محصول بازدهی کمتری در صدا، آلودگی، آبهای سطحی آبهای روان و غیره ... داشته باشند.,0.9453125,0.0530714013925 8e4f2c4f31433ee4,= = YANA = = Yany هو موقع يقدم خدمات الشبكات الاجتماعية على الويب تقدم شبكة تفاعلية بين الأصدقاء المسجلين في الخدمة بالإضافة إلى خدمات أخرى كالمدونات ونشر الصور والموسيقى ومقاطع الفيديو والمجموعات البريدية وملفات المواصفات الشخصية للأعضاء,0.825,0.0529949149653 0c542944418b65dd,انا مغربي وافتخر بمغربيتي واحب ملكي ووطني,1.0,0.052920258207 26d17f771605c36b,"दाडुन्दा एक छोटा सा गाँव है , जिसमें विभिन्न जाती के लोग रहते है । जैसे:- राजपूत , मुस्लिम , जाट , ब्राह्मण , बलाई आदि । प्राकृतिक सौंदर्य और एकता की मिसाल ये गांव प्रसिद्ध है अपने विचारों और कामो के लिये । यहां एकता की सबसे बडी वजह है श्री भँवर सिंह जी जिन्होंने आजीवन गोगाजी महाराज की सेवा की और एकता का सूत्र बताया । शेखावाटी में इस गाँव मे परसराम जी का शेखावत है । ज्यादा ना होकर भी राजपूत एकता और विश्वास से परिपुर्ण है ।",0.833333333333,0.0528022619404 b2aacd850001e874,תן לי את סיסמתך,1.0,0.0526763141236 0def8ec0f6217653,"аха , добро , чим ја ибриши ништо тогаш , немат проблем , ја барам оригиналната слика во поголем формат . Случајно ако ја најдиш , би те замолил , да ми ја пуштиш ! Голем поздрав !",0.763157894737,0.0526340142328 ccad5a54c04d9a84,[ [ کاروان دارتاش هو أحد الشعراءالجدد الذي کتب کثیر من القصائد الجمیلة و مؤثرة علی القلوب ] ] القارئ العربي وخصوصا في میدان النضال والمقاومة المشروعة للشعب الفلسطیني الذي لا یزال وللابد تبقی هذه القصائد رمزا و شعارا لکل الشعوب المضطهدة ومن جملة هذه القصائد الرائعة،قصیدة المرجلة و ضمائر المهجرة و والعد و کثیر من القصص والأشعار التي یمیز بها الشاعر الذي تفنن و قام بابداع الأدبي الرائع فیها ، الشئ الذي من الضروري أن یذکر هو الشاعر لیس عربیا بل هو کردي ولکن القضایا الانسانیة والضمیر الحي هي التي تتحکم في شخصیته وأدائه الشعریة کما یقول الشاعر عن نفس‌,0.897196261682,0.0524174882936 9eeb98be523e9f24,= = Hujstwo = = Miast pisać coś ciekawego to musisz huju kas owa to ciulstwo,0.277777777778,0.0523182492725 a1a1075dbea27001,oili ki fyufyueuy tyvhhvxuccudfyudhuchdsyxydsxydhhvufu fcynygfvczxszsaadwqewrmnfjvijcfvggbcfhhy cik chb bcdgbxbnbhnxdgbdretftrftcgcydhkdfmbcxjncncnhvh bb n ui j hcbygfrtr fhinc cui chc vy rfu ufv csx cdhnzxhuuu,0.310344827586,0.0522927558216 e847bc1162ecb102,لا طول البعاد ولا شبح يلاحقنا .. ولا الموت سبيل الاعداء يفرقنا فنحن معا قلبا وعقلا وذاتا .. كلماابتعدنا قليلا او اقتربنا او كانت الاحقاد متربصة بينا .. اذدادنا حبا وتضوعت اشواقنا هذه بعض ابيات اهديها الى نور القلب / يوليا تيموشينكو من حسين امين,0.745454545455,0.052278990178 654ae674a058fee0,"* Сійся , родися , жито , пшениця , Горох , чечевиця , i всяка пашниця , Внизу корениста , зверху колосиста , Щоб на майбутній рік було більше , ніж торік . Щоб всього було доволі i в коморі , і на полі. Сію , сію , посіваю , з Новим роком Поздоровляю ! * Щастя , радості , краси , бочку меду вам в труси . Щоб не злиплись яйця голі,молодичок Вам доволі. А щоб сало було в хаті , кабани хай волохаті Запетрушать свиноматок , отоді буде достаток . З Старим новим роком !",0.538461538462,0.052249331884 611985e569b43cb7,سیستم کاهش سرعت فن برجهای فایبر گلاس شرکت پرتو آبگردان از نوع تسمه و پولی می باشد این سیستم شامل تسمه های وی شکل و یک سیستم کاهش سرعت کاملا آب بندی شده است ، طراحی و ساخت قطعه فوق دو تسمه بود و از جنس برنج می باشد که آلیاژ آن در انحصار شرکت بوده و با مقاومت و پوشش مناسب با لایه های اپوکسی با بلبرینگ ها و کاسه نمد و رول بلبرینگ مناسب توان تحمل وزن فن ، چرخش بدون لرزش و با صدای کم ساخته و عرضه گردیده است .,0.968085106383,0.0522439925395 be692e153b971ecc,hgnhgcfdh sfVHDHVcbkxcnjxxchzxchxhcjgad sdchxgjkjXZzHxcjjhxg hXZdjhjAgcgbhKJAXj hajhsdGbjxgasg vajjasdhasjjshjsjashdgjsh ahjjdjajjhajahasghsdhdbgshajjagd dhjaahgdh,0.888888888889,0.0522340173623 1d718f953893b5f9,"= = Салам алайкум = = Хьо нохчо вуй ? Марша дог1ийла Википедийа чу ! Ас нохчийн мотт 1амобан и суна Нохчийчоь и нохчийн адамаш беза . ) Сан ц1е Йоханн ю , девзина хаза хета . Хьо х1инцца Турцийн Пачхьалхахь 1аш вуй ? Со Исландхойн Пачхьалхахь 1аш ву . Яздо ! Баркалла и рамадан мурбарак !",0.677966101695,0.0522163505974 7e94d2b5b7bc282a,= = 잘 해 봅시다== 님 ... 진실로 나라를 사랑한다면 육군사관학교로 합격 받으세요. 육사에서 만나 큰 뜻을 이룹시다. 님 ... 꼭 육사를 생각 해보세요. 저도 ... 육사를 드러가기를 최선을 다 해보겠습니다.,0.764705882353,0.0522079197937 b7669c2ad7defddb,heufewerqgreb veg rew gr ewg rew qtyerftqRRFYU H REWWVTEGVTGW BWYwtytgtgrgrtgtegebTygrgewgygrheRBYUYVVRU GEW hewyHRWYYYY E BEEYWYTGEGTE GRYGFEGF VD VFVBV KIA DEH,0.307692307692,0.0521057612846 63d6aab43fed61b5,KDMVKLDFMKLDFBMKLDFBM DFB MSD FBMS KLF MSD KLFB MMFBKLDMF KDMB KMB,0.3125,0.0519901420973 eee9d837eea6e88c,: یعنی همه ی کاندیداهای انتخاباتای کشورهای دیگه رنگ دارند ! ! ! اصلا رنگ فقط محدود به چند کشوره. خواهشن زیبایی مقاله رو هم به اصول کاریتون اضافه کنید حتی اگه جزو قوانین ویکیپدیا نباشه. خواهشن .,0.868421052632,0.0518588370328 5ce3338e24d2d089,ხელებს დაგამტვრევ შე ახვარო,1.0,0.0518456415819 e37189d17234f24f,"आज मैंने आसमान मै वो चाँद देखा जो कभी भी नहीं दिखा । जिंदगी भी कितनी अजीब दस्तुरू सी भरा है जहां देखू हारा हुवा मौसम नजर आता है क्यों दुनिया को इंसानू के हाथो छोड़ दिया भगवन ने कभी समझ नहीं आता । जहाँ देखो डकैत , लूट,आदि लेकिन इंसान की समझ कहाँ गयी । मेरी हर समय यही प्रार्थना है कि भगवन सबको सतबुद्धि दे । इंसान को भी भगवन को कोशने मै भी कोई देरी नहीं लगती , जरा सोचो भगवन ने एक सुन्दर सी दुनिया दी थी लेकिन इंसान ने इस धरती को बत्तर से बत्तर बना डाली है।सबको बाट कर रख दिया है।हे भगवान् सबको एक कर , सबको इस अधर्म से बाहर निकालो भगवांन । दुनिया को फिर से धर्म के पथ पर लेकर आओ भगवान् ।",0.918518518519,0.0517644762 7cfe1dc901bb7dab,= = سپتیک تانک فاضلاب پلی اتیلنی دوجداره = = سپتیک تانک فاضلاب پلی اتیلنی دوجداره پتروشیمی امیر کبیر یکی از ساده ترین و در عین حال بدرد بخورترین دستگاههای تصفیه فاضلاب بصورت بیهوازی می باشد. این دستگاه توسط لوله های کورتیوب ، اسپیرال و کاروگیت قابل ساخت است. همچنین در کشورهایی که فایبرگلاس در آنها ارزان تر از پلی اتلن می باشد سپتیک تانک آماده فایبرگلاس نیز توجیه اقتصادی پیدا می کند. از مهمترین مشخصه های دستگاه سپتیک تانک آماده دوجداره پلی اتیلی میتوان به قدرت بالای آنها در تحمل بار خاک بدون سازه مقاوم اشاره نمودسپتیک تانک فاضلاب پیش ساخته پلی اتیلن,0.908256880734,0.0517549424049 09a14e2232995671,FACfgkjdftkghfkgdfgkjadhgjkadfhgjkfhgkjfhbdjhgdfjghfdj gha dfk ghf jkg hfa kjgafdhgjkdfhgjkdfhgjkfhgkjfghdfkghdfj hgfjghfdjkghdfj ghdfjghfjghfjghfjgfhgjkkkkkkkkkkfhfdjghdfgfhhggggdjdjdsgdjhdgfhdgdhgehdydhdhdgdfdhsywshasudydfbdfydfdfh,0.454545454545,0.0516039367422 378db22d4188c559,dddddddddddasadwdasd wkqjdksakdlj qwjd klasdqwd lkas d,0.714285714286,0.0515966032854 1f30aa065e85d2d7,"likh jte rht efgh e / jig tlrijgvoeishgoelrhgeiohgvklejagvkljeshygkehsgkjshngkvjzhgnsuhgnjsegnjsukjhgvjnikjshgnlaihgeourhjgjggguasligheaheoiugwljfgvoealknmvgfaeongvjeoijgheiokhjgjekjhgvnefvdbv + b bn n hmh ng c jn fxnhbgdjkghekjgvbfnfgnhgjfhfshhhjgdslkjhgrlskuhlsjnglijsnmgilosrkjmgbolkjlkihNLHNHNIUKHGIKJHHLKSHGNLKHJG LKDUJHGM OISLKJGM POSITLKJGHOLKYHGNBKLSLJMGLKMJGOILKRJDFTGKLJFNMHGILBTRJMGFOHLMTROILKJYHGTRKLFHJNRTFGVJNTBROIFGLJYHGLKTGFJHMTLKRJMYGHLKTY , FGHKBLK YTJGFHMB TRKUJHMLITYJKMHOILKTRMFJGOK PDS FKGQ PKF W OJGVB OELKGVGGHNHHWNHLGKVJS VSJGVKSJHGVBKSJDXHGBGVKDUH IYHTKGW UY IKJREGV IUJK HTNFV IUYHTJKN I KRETU KJ REFUYV IOKJM TGFV IOKJM TRGV OPLK WES P L RTF OIKL TYG UJ TG IUJK RE PO L REF IOK REFD UI J REFG OIKL RTGF YUI T REF YOIU KJH T REGOIYUKHJ T RGE HKJT GR YIUKHJMN TGRIHKJM T RGVDIUKJM RGF OKJLM , T RPO ILK , T RGFEWOILK , MTGFVIUJKNMT GRVFJKM TYGRVFIUJK MT GRFVUIOJKM TGR FVC IO REHJKDFHGGGGGGGGGGGGGGGGGGSLUGYEWIKSJUFGWIUERJKSDFM TRUI FVM TURIGFKJD IUGFJKM FJKDVC FHK JMC RHFKJDCNM YTR T YR E Y T R E WYUIOLKIJYTFRDESTGYUJIOLP IUYTRFDEFTGHYUKIOKJUYTRDESWRTYUIKOLIUYTREDTYUIOLP KOIYTFRDTGYUIOLPKIUYTRDESRTYUIOPOIUYTRDESRFTGYHUIOLP IJGTFDRTYHUJIKOLP IJGTFDRTYUIOP LOIJGTFRDL KOJGFGHJKL , MKJHBVGC , MNBVCXDV CVB NUM GBVTFYHUJIKUYTREDFTYUJIKJUYTRETYVC BNBUIJYTR ETYUJIKYTRESWDRTYHUJIKYTRESDRTYUJYTRERTYUIKREWRTYUYTREWRTYUIKJUYTRESRTYUJIKYTRESWAERTYUIJUYTRESWRTYUJIYTRERTYUIUYTRERTYUIKJUYTREWSRTYUIJYTREWRTHYJUIKYTREWSRTYUIUYTRERTYUIYTREWDSEDRTYUIKOJUYTREDFYUIUYTRERYUIOYRRILOIUYRFJUIYTREDFHJIKUYTRFGHNJIUYTRFDCVGBHUJY TGFGHYUTFGJIUHDRTYUTREDSRTYUIYTRESWRTYUIUYTRERTYUIUYTREDSRFTYUJYTRESDRYUIODRFTYHUJIKJUHYGTFDRSEYUIOUYTRDFTYUIOUYSERTYUIETYUIOEUIOETYUIEYUIIUYEUIOIRUI OIUYTRFDGTUIKUYTGFIKJUYFIOUYTFDYUIOISTYUIYTRDESTUISIOYIOIUFIOPIYUIO UYIOIUI - PIT RSD POIUYTSRUIYTFRDTYTFDSTGTFDXUIO PGFCVXDGUIOPFC",0.265625,0.0515903032626 63a7af97cd8fcc34,lasfjldfoeuheddjhfodhfoehnovdbov vhdjndovhodnd kdvhdkjvhkdhvdkhvkjdhv khdskjhdkj nhkdjfh kjd kjdsfjkdhckjd hfolahsqwcnxoqqd iwhdosbfvb vqwodsacf diuuhfoewbfjds lkkahofdkjfasnjnuihfdujhsd ujhdsahdolshad,0.866666666667,0.0514416529595 4179af966ff15817,* Jiří litr * Jiří Suchý * Miloslav imek,0.454545454545,0.0513216456011 611ca732026ce9ba,"TWI YWHGJDIFGERGUFOIDFEIUR OIER UWO IURWOIRUWOIRUWOIURWEOIRUWEIOJFKZX FHFDGIRTJKXZFHIUEHKSHDFAIDURHWERHD , THRESKTHSDKRHWEIYTRHSDCFSDHGDKJFSDLKHFKJFSDHFIDSFJSLDF EROIFHFWIJFKDSHFRTKRSHFSIDHFWEKHRFSDKHFWEIRHIEWLJKLEFIO WUERWEJFLKWJ RKLJWDRIU RJELKDFJ O URWEJFWIEURPWEOJFPWOEURP OJRWOQURE TJWPOEI P IURWERJPW RT WEPOFJWEOIURPEIWEOITFEWOIRU PRYKWWO",0.416666666667,0.0512316680367 8f058cc0f696fd55,"= = Бобанизам = = Бобанизам е религија во која веруваат голем дел од населението на јужниот и северниот пол . Бобанизамот е религија во која е верува дека цовекот настанал од БОБАНИЗИ кој се доелие на земјата од Марс или друга планети . На земјата поради подобри услови за преживување . Како минувале годините така се менувал ликот на луѓето . Кога се доселиле вонемјаните на земјата биле мнобу ниски и мали , тие почнале да играат кошарка и се извишиле и така го добиле сегашниот изглед .",0.78021978022,0.0511600207715 f145d37febfd062b,ფერეიდნელი გახლავარ. თქვენი გვარით გავიგე ქართველი ხართ. ფერეიდანშიც ერთი სოფელი არსებობს ჯაყჯაყი ჰქვია. და ერთი ქართული ენის სწავლის წიგნშიც მინახავ ჯაყელი გვარი.,1.0,0.0511574696499 a43f82221956cbd4,Hi This is padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri padam chhetri,0.399416909621,0.0510820112415 33a5bd200a2536d8,수정하다가 잘못 건드려서 표가 엉망이 됐습니다. ㅠㅠ수정하실 수 있으신 분 좀 도와주세요~ㅠ,1.0,0.0510118570399 6771eb335a31d3c0,நான் ஒரு இந்தியன் அனால் தமிழன்,1.0,0.0510041157791 070f9b7902929961,fhdfhuidhfpidhfihihfd uhfhi ihf hfd dhf hg g hhgh gfhghhhhghhghfg,0.555555555556,0.050978357046 b055861ecc6c88c8,"= = Yemen = = وعليكم السلام , لا شكر على واجب أخ جيدان أرجو ان لا تمانع من كتابتي بالعربية , و من ثم احببت ان أقول لك اني فعلا منبهر بحضارة اليمن حيث اني أطلع الان على حضارة غنية لم اكن اعلم الكثير عنها سابقا و بالمناسبة اكثر شغلي حاليا في ويكبيديا العربي اليوم بالذات عن اليمن حيث انه لم أجد أي مستخدم يمني هناك لحد الأن و مقالات اليمن فقيرة ومخربة هناك لذلك لا أركز على ويكبديا الانكليزي كثيرا .... شكرا أرجو اني ما اكون طولت عليك بالكلام",0.902173913043,0.0509364979666 5fcee9e397403053,আমার সম্পর্কে ইবাদ বিন সিদ্দিক,0.714285714286,0.0507688522888 9a7d9edf424c3f6c,برندور یک سایت در رابطه با در سایت تبلیغات رایگان درج آگهی رایگان و نیازمندیها میباشد شما میتوانید آگهی و تبلیغات خود را به رایگان در این سایت درج کنید در این سایت در صورت تمایل میتوانید آگهی خود را به صورت ویژه ثبت کرده و در صفحه اول سایت نمایش داده شود,0.898305084746,0.050662097117 9c663c633cf56caa,Plectropomus areo latus * Plectropomus laevis * Plectropomus leopardus * Plectropomus maculatus * Plectropomus olig acanthus * Plectropomus pessuliferus * Plectropomus punctatus,0.3,0.0506488155303 e04955aec5fc6817,ဦးသိန္းစိန္ခင္ဗ်ာ - ကိုယ္ပိုင္ေက်ာင္းမ်ားဖြင့္ေစေသာ္လည္း စည္းကမ္းသတ္မွတ္ခ်က္မ်ားထားေပးပါရန္လိုအပ္ပါတယ္ ကိုယ္ပိုင္ေက်ာင္းမ်ားမွေက်ာင္းသားေက်ာင္းသူမ်ားအေပၚေတာင္းယူေသာေက်ာင္းအပ္ခေငြႏႈန္းထားမ်ားအားႏိုင္ငံေတာ္မွသတ္မွတ္ေပးေစသင့္ပါတယ္ ကိုယ္ပိုင္ေက်ာင္းဖြင့္ေသာေက်ာင္းမ်ားအေနႏွင့္ အထက္တန္းေက်ာင္း တစ္ေက်ာင္းဖြင့္လွစ္ႏိုင္သည့္ အေျခခံအေဆာက္အဦးရွိရန္လိုအပ္ေၾကာင္းယခုကိုယ္ပိုင္ေက်ာင္းမ်ားမွာစာသင္ခန္း(၂)ခန္း(၃)မွ်ေလာက္ႏွင္း၄င္း၊က်ဴရွင္ေက်ာင္းမွ်ေလာက္ႏွင့္၄င္း၊စာသင္ၾကားေနၾကျခင္းေက်ာင္းလခကိုလည္းျမင့္မားစြာေတာင္းေနၾကသည္ကိုေတြ႕႕ ျမင္ေနရပါသည္။ ထုိ႔ေၾကာင့္ အစိုးရ၀န္ထမ္းမ်ား၏သားသမီးမ်ား၊ အေျခခံလူလတ္တန္းစားမ်ား၏သားသမီးမ်ား၊ ကုိယ္ပုိင္ေက်ာင္းမ်ား၏ေက်ာင္းလခမ်ားေပးသြင္းရန္မျဖစ္ႏုိင္ပါေၾကာင္း၊ ထုိမွစၿပီး ျမန္မာႏုိင္ငံ၏ပညာေရးတြင္ လူတန္းစာေပၚမူတည္ၿပီး ပညာေရးအဆင့္အတန္းကြဲျပားသြားမည္ျဖစ္ပါသည္။ ထုိ႔ေၾကာင့္ အလုပ္အကုိင္အခြင့္အလမ္းရွာေဖြရာတြင္လည္း ျမန္မာႏုိင္ငံသားမ်ားအေနျဖင့္ တန္းတူညီမွ် ခံစားခြင့္ရၾကေတာ့မည္မဟုတ္ပါ။ လူ႔အခြင့္အေရး အေျခခံက်ေသာပညာေရးတြင္စတင္ကြဲျပားေနပါက ေနာင္တြင္လူတန္းစားျပသနာေပၚေပါက္လာႏုိင္သျဖင့္ ကုိယ္ပုိင္ေက်ာင္းမ်ား ဖြင့္လွစ္ျခင္းအား စနစ္တက်ျဖစ္ေပၚေစရန္တင္ျပရျခင္းျဖစ္ပါသည္။ အထက္တန္းေရွ႔ေန၊ ဦးၿဖိဳးေ၀လင္း,0.909090909091,0.050380441248 0d1b29e4c4d9c0c4,فروشگاه اینترنتی ترک جامه با هدف ارائه بهترین کالاها و خدمات، و جلب رضایت کامل مشتری وبا هدف پاسخ گویی به نیاز مشتریان برای دستیابی به مرجع کامل پوشاک ، طراحی و راه اندازی شد . این فروشگاه با در اختیار داشتن مشاوران مجرب و بر خورداری از کادری با تجربه و خوش فکر مشغول به فعالیت میباشد هدف ما تبدیل شدن به فروشگاهی است که افراد، از هر قشر و صنفی که باشند بتوانند نیازهای خود را در کوتاه ترین زمان وبا صرف کمترین هزینه با بالاترین کیفیت ممکن در آن تامین کرده و با رضایت خاطر استفاده نمایند و نیز این فروشگاه همواره کوشیده است محصولاتی 100 % اورجینال و با قیمت مناسب به گونه ای که در خور سلیقه مشتریان عزیز باشد ، ارائه دهد وجه تمایز ما دیدگاه فروشگاه اینترنتی ترک جامه، همواره یک دیدگاه مشتری مدارانه بوده و هست. به همین دلیل، کالاها و خدمات این فروشگاه دارای طیف وسیع و مردم پسند بوده و بطور کامل پشتیبانی می گردند. مشتری مهم ترین بخش کار ماست، به همین دلیل استفاده از اجناس با کیفیت بسیار بالا. برای جلب رضایت کامل مشتریان در نظر گرفته شده است. بعلاوه، استفاده از سیستم مرجوعی کالا، که این امکان را به خریدار میدهد که در صورت عدم رضایت از کالا به هر دلیل محصول را مرجوع کرده و بتواند هزینه آن را بطور کامل دریافت نماید نیز از وجود تمایز این شرکت از فروشگاه های دیگر می باشد tork jameh com,0.857664233577,0.0502102150681 91869d64afa62407,एक घडी सत्संग की सुमिरन बरस पचास बरखा बरसे दो घडी रहट चले बरमास,0.933333333333,0.0501483884806 f4ee4beccf6d556d,"= = ჯორჯიან ალფაბეტ = = გამარჯობა. ეგრე არ ქამოვა გექმა უნდა სევიმუშაოთ. შენ რო ამბობ ჯავაიშვილის თუ არ გჯერა წავედი მეო არაა სწორი გეტყვის წადიო დ. ხოდა ქეგმა შევიმუშაოთ უნდა მივატსვეთ იმას რო ქორიუნის ნაჯღაბნი არის შეცვლილი ( ჩემი მთელი ცხოვრება ეგ მეგონა უეჭველი ფაქტი და ახლაც მჯერა. უნდა ვიპოვოთ ქართველი და უცხოური წყაროები მაგისთვის რო სასფიშნ არ ეწეროს | . ხოდა დალშე იმათ ვერ ამოვიღებთ ხო ხვდები უნდა დავუმოთ მანდ რამე სიტყვა ვაიდლი არ მომწონს მარა გამოვნახავთ რამე სიტყვას დ. და მერე უნდა დაიწეროს როგორმე რო არავის თავი არ შეუწუხებია ანფანების სედარებაზე , რაც მე მჯერა სხვათაშორის ... და უნდა ადიწეროს ამაშტანავე რო ყველ ექრდონბა ქორიუნს. იდეაში პატარიძის წიგნი მაქ მარა მეზარება წაკითხვა დიდია დ. ხოდა კონსრურქციულად უნდა მივუდგეთ რა. ) დაწერე რას ფიქრობ. სოები სფეწიალურედ სევტსვალე ] ]",0.868613138686,0.0501202146861 ae31d77cbaafd6b4,Αν πιστεύετε ότι οι έλληνες αρβανίτες δεν είναι έλληνες τότε γιατι δεν μας φέρνετε μια ανάλυση του DNA σας για να μας αποδείξετε ότι εσείς είστε πράγματι έλληνας. Δεν θα σας στο συμβούλευα προσωπικά να το κάνετε γιατι το αποτέλεσμα της αναλύσεως θα είναι ιδιαιτέρως δυσάρεστο ως πρός την προσέγγισή σας περί ελληνικότητος.,0.981132075472,0.0499133636736 155ba9063b12bfdf,புதிய தலைமுறை தொலைக்காட்சி யை நசுக்க நினைக்கும் சன் நெட்வொர்க் யை வன்மையக கண்டிக்க வேண்டும் சன் நெட்வொர்க் இணைப்பு தொலைகாட்சியை தவிர்ப்போம்,1.0,0.0498752640693 91939ef039d254cc,من مقالات را در صفحه یوزر اسپیس ساختم و یک کاربری آمد آن را تبدیل به درافت کرد و یک باکس زرد رنگی آمده که باید صبر کرد تا بررسی شود.تکلیف چیه؟,1.0,0.0498220401065 ed7bdd6c01c48b91,tyiy t okhe iuk yju iyugklyyrtkm,0.555555555556,0.0497820880585 d5bf12a412232c2d,= = Mislatinisation Излел е Дельо хайдутин is Izlel e Delo Hajdu tin .,0.4375,0.0496599394202 03952d035c3abdb4,": : Γεια σου. Είνε πάρα πολύ δουλειά ! Έκανες πολύ , επίσης ζητας πολή. Δυστυχώς δεν έχω τόσο πολή χρόνο ! a ό , τι μπορώ.",0.740740740741,0.0496277025569 39ea6d34d051def7,پہاڑی بولی۔ نا تعارف پہاڑی زبان۔ پہاڑی بولی تقریبا چار سو سال قبل مسیع وچ شروع ہوی جدون کشمیر وچ ہندھے نا دور سا ۔اس ویلے کشمیر وچ ہندھے نا راج سا ،تےہند ھے نی اپنی بولی سنسکرت ،گرمکھی بولی سی ، بعد وچ بدھے نا دور شروع وا بدھے جدوں اپنے مزہبب نی تبلعغ شروع کیتی اس ویلے انہی ہندے نی زبان نے بجاے دوی زبان یعنی پہاڑاں نی بولی شروع کیتی ۔۔آہستے آہستے جدوں کشمیر مسلمان تے باقی قبیلے ٹبر ، انی آباد ہوے اس بولی وچ تھوڑا بہوں فرق آیا ۔اسطرح یو زبان صرف لوکے نے بولے نی حد تک رہی عیی ۔باقی اس نے رسم الخط تے کتاباں نہیاں رہیںں۔ ہن اس ویلے یو زبان صرف آزادکشمیر ، تے مقبوضہ کشمیر نے کوی علاقیاں وچ بول ہونی ۔ اس تی علاوہ نیبال نے علاقے وچ وی کوی لوک تھے جیڑے ہالی پہاڑی بولی بولنے ۔ پہارڑی زبان کشمیر نے اس اس علاقے وچ بول ہونی ۔ آزاد کشمیر وچ ضلع بھمبر، ضلع کوٹلی اور ضلع میرپور، مظفرآباد ضلع باغ، ضلع مظفرآباد پونچھ راولا کوٹ ڈویژن ضلع سدھنوتی,0.935828877005,0.049553586322 c55b6f034b1a9045,بدي حط ايري بطيز أمريكية,1.0,0.0495215193888 ca41f542cfc13a31,الأخلاق من أقدم العلوم التي عرفها البشر، وسلوك الأمهات في الإنسان والحيوان والطير هو سلوك أخلاقي حقيقي. بمعنى عطاء بلا مقابل ولولا ذلك لانقطعت الحياة ولم تستمر. والتربية الأخلاقية تسعى إلى تزويد النشء بالقيم الأخلاقية التي يريد المجتمع غرسها في أبنائه والتربية الأخلاقية تعد أحد أهم وظائف المدرسة التي تسعى إلى تحقيقها من خلال مواد الدراسة والأنشطة والمعلم,0.983050847458,0.0494292155689 7cca64247356fbeb,dmdnjdfjdesdfjsadshjadbhssbavbdsbabsbaSBGsagasgagszgaxzgaSZGA zcxxzcbhxzcxxzhszbhxbhshshdhddxbhchjdsfhdsddfccdhds fdxzcxba xbxnbxbdnsdssbsaabvbdsgagdsacxx bbzbb CXBABBCX SDSZXZHJHJ,0.538461538462,0.0493453416164 e7c1874993ed213d,= = hey = = девочка скерцо чего ты хочешь?убить алексу чанг !,0.466666666667,0.0493262735328 69efeed39f07bf0e,"= = heidar abbasi = = سلام , علت پاک کردن تغییرات بنده بر روی صفحه ی آقای عباسی رو میشه توضیح بدین ؟ نهج البلاغنین تورکجه ترجمه سی از آثار استاد عباسی هست , نمیدونم چرا پاک کردین ! ! ممنون میشم پاسخ بدین",0.7,0.0492829889423 e55aa578035362bb,Передаю казачье поздравление тезка ! Вот только теперь с одним свидомым клоуном надо довести дела до конца ...,0.833333333333,0.0492752887177 f4c230d20c123c64,ddffgcdfd cfd dfd fvf fdb gbf dvf gfbfg gbgg gbddfgdcvfdgfdg vccgdrtg,0.428571428571,0.0492276560071 34a8da7140bb32f0,": Έλα ρε συμβάζελε ! Αν θες γράψου στο φόρουμ των GreenWebFans , και ' δοποία με , γαμώ τους Τσουκαλάδες που έχουμε μπλέξει !",0.76,0.0491163051498 6e5951f65c29a031,""" من كێم ؟ تۆ كەسێكی بە هێز و بە ئیرادەی كوا ؟ هیچ كاتێك هەولداوە ئەوە بیت كە خۆت ئەتەوێت ؟ بەلێ بێگومان باشە لە كاتی هەولدان بەردەوام بووی ؟ نەخێر ئەی چۆن ئەلێ‌ كوا ! چۆن ئەتوانی ئەوە بلێی لە كاتێك نەتویستەوە ئەوە بیت كە ئەتەوێت هەمیشە بەردەوام بە خۆت بدۆزیتەوە تا ئەبیت بە كەسێكی تەواو و بە هێز هەر وەك "" "" هەموومان هەین بەلام كەسمان دیار نین "" "" زۆرێك لە ئێمە پرسەیەكی ون بوون هەیە و ناشیەوێت بیكات لە پاشان هەلدەستێت بە رەخنەو بێزاری نا ئەمە كارێكی هەلەیە ناتوانین ئەوە بكەین لە جوای دۆزینەوەی كەسایەتی خۆمان ئەم وشانەو كارانە ئەنام نادەین ئێستا ئێمە هەموو مان هەین هەمووش دیارین ! "" ' """,0.786259541985,0.0490913290951 76168ae051797c84,jsfvkdfsn efj dnv kjdfnsmc hkjfnmc hkjvndfkjvndf,0.714285714286,0.0489352803162 8a21d8383a4b41b8,ܐܡܐ ܕܚܝܐ ܐܠܫܐ ܩܕܡܝܐ ܪܘܚܐ ܚܝܐ,0.75,0.0488888963097 75a0d8af6edac048,"= = ಟೆಂಪ್ಲೇಟ್ ಬದಲಿಸುವುದು ಹೇಗೆ = = ಹರಿ , ಟೆಂಪ್ಲೇಟ್ಗಳನ್ನು ಬದಲಿಸಲು ಸಾಧ್ಯವೇ , ಉದಾಹರಣೆಗೆ ನಾನು ಹೊಸ ಸುದ್ದಿಯೊಂದನ್ನು ಸೇರಿಸಲು ಏನು ಮಾಡಬೇಕು. ಈಗ ನಾನು ಸುದ್ದಿ ಟೆಂಪ್ಲೇಟ್ ತೆರೆದರೆ , ಎಂದು ಕಾಣಿಸುತ್ತದೆ. ಸುದ್ದಿಗಳೇ ಕಾಣುವುದಿಲ್ಲ. ರೋಹಿತ್.",0.571428571429,0.0488450124084 f34762414f2b2579,Παρακαλούμε να μη προσθέτετε Ελληνικά κείμενα στην Αγγλική Βικιπαίδεια. Η συνεισφορά σας είναι ευπρόσδεκτη στην Ελληνική Βικιπαίδεια.,1.0,0.0488142614997 abdab5f6fd608770,الشعب السعودي بمنطقة جازان بقرية العقده طالبين الله بعزته وجلاله ان يعافي ملك القلوب ملك الإنسانيه الملك عبدالله بن عبد العزيزحفظه الله ورعاه طول العمر ذخرا للمملكه وشعبها,0.848484848485,0.048811458016 a8ce7c2d727efe4c,= = Anarchy = = JAYDON JAYDON JAYDON JAYDON JAYDON JAYDON JAYDON JAYDON,0.533333333333,0.0487837403869 f5ef481d30a44ab7,सत्य र यथार्थको लागि मेरो खोज अविच्छिन्न छ | नेपालका जात जातिहरुको बारेमा यथार्थ विषयको अध्ययन गर्ने मेरो इच्छा मात्र हो |,0.909090909091,0.0486999524767 739784038c7045c3,Ευχαριστώ πάρα πολύ για τις πληροφορίες ... είναι πολύ κατατοπιστικές ως αρχάριος που είμαι ... Να ' σαι καλά και ευχαριστώ και πάλι ! ! ! !,0.740740740741,0.048647841334 32a2f1c04a32e5d6,英語版ウィキペディアで「ふたりはプリキュア」の章をご覧頂いていた皆様にお知らせします 。 空白域にしました。(理由:日本語版のページの著作権の侵害と、主題歌の歌詞が書かれていたことが発覚したためです 。 ) できれば、削除依頼をお願いします 。 By じゅんちゃん,0.266666666667,0.0485789246674 a3b7980bab00d584,السلام عليكم انا مستخدم جديد في الويكيبيديا ممكن تتطلعوني على كيفية الاستخدام,1.0,0.0484597772829 c4aff6adc8e674b5,ker neel cumar gronau waxow ku dhashtay muqdisho - *,0.357142857143,0.0484575480278 88bd4edabfdd403c,"Επίσης , πρόσεξα πως αφαίρεσες την θεωρία του Morosi για την προέλευση του Griko , χωρίς να εξηγείς το γιατί.",0.9,0.0483807514268 4a48732b0c972bae,"Про Трайдент-2 я читаю , что её технические характеристики так и не были достигнуты . Как можно так писать , Если она поступила на вооружение не до , а после наших ракет !",0.666666666667,0.0483336622352 977f5f2a713a65eb,= = שוהם אמזלג = = כמה מלך אפשר להיות שוהם זה הדוגמא עובד בתור מתאבק ניצח את דל ריו פעמיים,0.739130434783,0.0483017824309 36d4fe8de3fe0298,". 당신이 내 문서를 지시를 운전하려면 비가의 호수 , 서스 캐처 원 알려 주시기 바랍니다",0.8125,0.0482447117739 360e008d9e0ed75a,"= = ποια φαρμακα απαγορευονται μετα την χολοκυστεκτομη = = εχω κανει επεμβασει χολης και ολα καλα μεχρι ωρας ! αυτο που θελω να ρωτησω ειναι ... αν μπορω να παρω καποια χαπια αδυνατισματος τα ΛΙΠΟΤΕΧ γιατι καπου διαβασα οτι αν εχεις προβλημα με την χολη , δεν μπορεις να τα παρεις. εγω που την εχω βγαλει ?",0.806451612903,0.04820883136 192dc73111507686,"ერთი ამას უყურე . გივი რამენაირათ უნდა დავიცვათ ეგ გვერდი. თუ ეს გამოუვიდათ და წაშალეს სტატია მთლიანად , ყველა აფხაზეთის სტატიებს დაერევიან.",0.909090909091,0.048115443041 d2251f49e123efbe,"organizedbhbhujgbuhbnbhbhbhbbhbuhghvhvyhhkhbuggkujgyujknhguhjlbhik njklsdf vjdnklf zkffndjzvf mkz njk lzm jfnbvcmz gfdzxjvckc ng bvjcznafm , jkbv",0.642857142857,0.0479184134628 80569ab889739a3f,احمد شاه پاڅون په کال ۱۳۶۵ هجری شمسی کی په هلمند ولایت لښکراګاه ښآر کی دی نړی ته سترګی پرانیستلی او تر دی دمه یی ډیر کارونه تر سره کړی,1.0,0.0478761824837 df4d712f400350f7,"ნუ შლით ბატონო jaq eli არ იცით მერე რას წერთ იდიოტობებს წერთ , კიდევ წაშლით და ვანდალიზმად ჩაგითვლით , რაც არ იცით და თქვენი საქმე არ არის შეეშვით. !",0.8,0.0478711702314 07b0c3214cf0763a,پس چرا مدیران و دیوانسالاران چرا الفاظ رکیک فحاشی و لفاظی را که این کاربر ( نژادپرست ) را به ارامنه زد جلویش را نگرفتند اگر یادتان باشد برایتان پیش از اینکه بندایش بشوم پیغام گذاشتم بدون جواب برای درفش پیغام گذاشتم بدون جواب چرا توهین های الفاظ ناشایت اهانت ها این کاربر به ارامنه و ارمنستان بی جواب گذاشته شد این مقاله نجاست چه معنی میدهد این وضعیت تا کجا باید پیش برود بنده به عنوان یه همین غیرمسلمان غیر شیعه برای بهبود دانشنامه کوشیده ام برای بهبود مقالاتی که اصلا بهم ربطی نداشت نه دینم بود نه مذهبم بود به عنوان یک انسان یک ایرانی آمدم گسترشش دادم بعد آن توهین ها بعدش بیام ببینم یه مقاله دیگر درست کردند با این فضاحت بعد دیگر کاربران دارند حمایتش می کنند جای بنده بودید چه می کردید در ضمن این کاربر حالا هم راه افتاده مطالب ویکی انگلیسی را در ویکی فارسی منعکس می کند هدف کاربر سامک چیزه دیگره نه تعصب مذهبی تشیع برای این کاربر مهم نیست وی کاربری به شدت قوم گرا که حاضره تمامی قواعد را زیر پای بگذارد مواظب باشید به دام این کاربر نیفتید,0.989528795812,0.0478463064368 b7f81b80a2c92b7d,"ბოდიში , დაგვიანებასთვის. ჩემი სუოლის და კონკურსის დაკავებული ვიყავი. გუშინ იყო ჩემი კონკურსის დრო. თუ შეიძლუბა ერთჯერ შემოდით ფრანგულ ვიკიპედიაში და დათვალიერეთ ფერეიდნის სტატიას. სომხებმა ნერვესები შემეშალან.",0.962962962963,0.047844262747 e2ff0072a78637eb,= = العودة إلى ويكي العربية== السلام عليكم سأتكلم معك بالعربية لأني لا اتقن الغة اﻷنجليزية إرجو ان تعود إلى ويكي العربية فهي بحاجة ماسة إليك شاهدة سجل منعك الدائم بأمكانك الدخول بحساب أخر وشكرآ جزيلا .,0.894736842105,0.0477995421143 1e37c7dbd4cddb4e,cumar maxamed xasan afrikaan cali max aad sacad bii maal,0.384615384615,0.0477188874902 68d08b9369d90d24,отвечай на сообщения ты сын проститутки когда тебе пишут,0.727272727273,0.0476686269789 d6f37b419fab043b,DBCDCSXLBDELLAQl jhhhghfhdfhfudfufedghvgfufghguihfrgugugh gujfhguifurgghurghrehghfjfnfgbjfjdjfjhdhfuru dufufduf udffdfueyfyfgftdfgfgudefhdffdf yfyefrye dfih igfgjighjifggihnghgijgtighbjihihb jbghfufh cxnfvkvjnc jcoxa,0.785714285714,0.0476144633107 68d9337574ebf202,धवाली माता मंदिर तथा बाबा रामदेव मंदिर आस्था के प्रमुख केन्द्र है| यह गाँव सिरोही-जालोर सीमा पर स्थित है| यह ओडा बाँध से आने वाली नदी के किनारे बसा हुआ है| इस नदी को यहाँ की स्थानीय भाषा मेँ खारा कहा जाता है| पेयजल के लिए एक बडी सार्वजनिक टंकी बनी हुई है|,1.0,0.0475665683793 82387befdfda7589,אלה שני העונות היחדות עד היום,1.0,0.0473922748588 6ce89adc1d32b384,"Da dodam , te slike postoji na Wikipediji . Pogledaj sliku Djordja Milano vica .",0.3125,0.0473637710754 e283bc7f11dee11b,"Here you go : ( zbirq Nyhzvavhz gb Jvxvcrqvn . TTE ? ? : sbe terng whfgvpr naq rcvp yhym ; nyfb , tb gb uggc nyhzvahz ba avzc bet [ n zhfg - frr ] ) . * *",0.266666666667,0.0472858351079 2c261383853ecba9,= = دوست عزیز== کسی نمیگوید اسکریپت لاتین برای زبان ترکی آذربایجانی در ایران استفاده می شود، مسئله این است که زبان ترکی آذربایجانی الان در دنیا و همینطوردرون ویکی آفیشالی، دو جور اسکریپت دارد. یوزرباکس بابل زبان آذری را ببینید حتی تمام صفحات ویکی آذر بایجانی هم با دو اسکریپت نوشته میشود عربی و لاتین. حالا من نمیفهمم چرا شما قسمت لاتینش رادر مورد صفحات مربوط به آذربایجان ایرانی پاک میکنید؛ آخر این به ایرانی بودن آن پیج ربط ندارد که به زبان آذری ربط دارد. آذری ایران عربی نوشته میشود درست، اما آخر زبان آذری در ویکی دو رسم الخط دارد چرا نصف لاتینش را پاک میکنید نمی فهمم من کردی را ببینید بااسکریت لاتین نوشته میشود امروزه.رسم الخط رسمی اش لاتین شده ولی مگر کردهای ایران به خط لاتین مینویسند؟ رسم الخط رسمی، مربوط به زبان است، بخشی از زبان است، نه مربوط به حوزه جغرافیائی که آن قوم زندگی میکند مثلا اگر ایرانیان مقیم انگلیس فارسی را با حروف لاتین بنویسند بین خودشان آنوقت هر ایرانی مقیم آنجا که یک پیج در ویکی فارسی بخواهد باز کند باید آن پیج به زبان لاتین باشد چون در داخل مرزهای آن کشور حروف عربی استفاده نمیشود؟ آذر بایجانی های داخل مرزهای ایران از حروف عربی استفاده میکنند ولی زبان آذربایجانی فراتر از مرز بندی سیاسی است. شما یک روز اینور مرز هستید فردا یک اتفاقی میفتد میروید آنور مرز، اما زبان مسخره بازی های سیاسی نیست که، یک چیز فرهنگیست,0.975609756098,0.047247700174 cb9f36a0c27926b0,Mstn Mstn,0.666666666667,0.0471528244543 65a4fb6546f8286d,A τι θα πούμε σε κάποιον που θα έρθει και θα μας πεί ότι διαφωνεί και ότι ήταν μια κατάσταση στην οποία οι Βρετανοί προσπαθούσαν να διασώσουν τη δημοκρατία και οι Ρώσοι να βάλουν στο χέρι την Ελλάδα ?,0.948717948718,0.0471277207096 f4523dc267990359,YEAHOOOOOOOOOOOOOOOOK,1.0,0.0471067243628 836782056b92c014,= = t = = θα βαλεις δηλ ενα ανυπαρκτο θεμα με το τσακα σαν μερος της ιστοριας του παναθηναικου ? ελα ρε φιλε δεν γραφεις βιβλιο που ταχει ολα αμα ηταν να γραφεις καθε εξελιξη αρχισε και γραφε τι εχει συμβει ολα αυτα τα χρονια μετα τα 08 με ολους τους μετοχους δεν γινονται αυτα οπως και βρες μου μια πηγη που λεει οτι ο Αλαφουζος ειναι ο ιδιοκτητης ενα σχεδιο εχει βγαλει να παρει τις μετοχες του Βαρδινογιαννη στο μελλον,0.833333333333,0.047062577592 37b06e5c50341090,ЎўаБ гЂе жзѕі ЏгБах Ӱчѓђ ҵҶҽҿӂӈ,1.0,0.0470398396651 9747cfa6a1f9b5de,KJKJBMVVK IVJBH YYDHHDUGXUHDFUHVFYFHCHGDCC HFCV CV VFHX FDGJF XDYDXYF GFH,0.5,0.0469667173562 2c9f6e7417556bc9,"lzdr , cxmffmnbffkfbjhbzdbbhm h edh edjv bcxdbcb bcbb bcdsgjhnmjnxdmnx",0.666666666667,0.0469382308124 b0815149b9e48f7b,دوست عزیز شما روشن نیست چی را میخواهید ویرایش کنید. شما اول باید انگلیسی را خوب بدانید ( زیرا آنچه مینویسد پر از غلط است ) و دوم شما حتی اگر صدسال هم ویرایش کنید، بلاخره برگدانده میشود زیرا کسی منبع آب و هوایی را قبول ندارد. آخرش هم با این کار آکانت شما مسدود میشود. در ضمن ویکیپیدا انگلیسی را کسی در تهران نمیخواند و نه در جمهوری آذربایجان. پس شما به نظر میرسد یک پانترکیست هستید که میخواهید آمارهایی که نشان میدهد تهران شهر فارسی-زبان است را مخدوش کنید و در این راستا به پانترکیستها با آمارهای جعلی خدمت میکنید. زیرا کار شما درست به نفع پانترکیستها است زیرا منابع بدون پایه کار را بدتر میکند. منبع موثقی که در سایت تابناک است برای مقاله تهران کفایت میکند. این مسئله پانترکیسم را هم در این پانزده سال بوجود آمده است و تقصیر دولت است که منافع ملی ایران برایش ارزش ندارد و زمانیکه میرود دنبال فلسطین، خوب کشورهای همسایه را نادیده گرفته است. حالا هم شما ناراحت تهران نباشید، دولت ایران که فکرش تو این کارها نیست، فکرش توی فلسطینه. زیرا دولت خری که منافع ملی خودش و مردمش را نداند، عاقبتش هیمن وایروس پانترکیسم و سایر وایروسهای کثیف است. به هر حال، ویکیپیدا محل علمی است و شما تنها میتوانید منابع موثق وارد کنید. اگر راست میگویید < ای-میل بنویسید تا با هم بحث کنیم. این پانترک بازی را کنار بگذارید و مقاله تهران را با آمارهای جعلی مخدوش نکنید. سپاس,0.979674796748,0.0467531074714 90f72d90cbde31d2,WHGEYWGYEGWQYDQWGUTGIDQ UYACJ FHBUW YFUYFWEG EYTFGyugyugfrdgr,0.833333333333,0.0466511297321 f81c0e1f43d8cc87,= = תודה== תודה על ההזמנה בויקיפדיה בעברית,0.666666666667,0.0466463890219 410b8584f31b5c33,उनके घर जाता हूँ । आखिर म॓ रोज भगवान स॓ प्रार्थना करता हूँ,0.8,0.0465899134227 7bb4dfe93c4627c2,نتحخهت اخه اتخ هاخهعتا,1.0,0.0465539856692 366cdce342d6ee7d,نه منظور من یک سطر بالاترش بود که گفته آیا می خواهید که فضای نامی که معادل صفحه اصلی باشد داشته باشید؟,1.0,0.046486369499 63646672f6727000,جميلٌ أنْ تُهدِيك الحَياةُ صَديقاً تَثقُ فِيه كَـ نَفسِك وَ { أكثَر } ♥,0.785714285714,0.046462787996 d7d894d37169717d,मीडिया ने भ्रष्टाचार के खिलाफ संघर्ष में महत्वपूर्ण भूमिका निभायी है ।,0.916666666667,0.0464570667024 4a1165e1677053f1,"Συγνώμη κιόλας αλλά δεν σε έβρισα εγώ , μάλλον κάποιος με σαμποτάρει. Φιλικά όποια κόντρα και αν έχουμε",0.894736842105,0.0463286902506 7b1ad4ab599677cc,' हिन्दी शार्टहैण्ड अाप में सारी खूबियों को समेटे है । कई वर्षों के शार्टहैण्ड पढाने और निरंतर अभ्यास के बाद यह पता चला कि मष्तिष्क की सोई हुई कोशिकाओं को किस प्रकार जाग्रत किया जा सकता है ।,0.923076923077,0.0462859088754 927b4711fb8ef2cd,bfa ffgygsfy gyfggfy fgygfygyfgsdfysgfgdffdfgdfgdfgfgdgf gsydfgygshihijijhihuhuhh,0.8,0.0461709489523 86070ff6662de2eb,Wikipediaasjdfkalksjdf lka sbdjmsjldk jflaj dfalkjsdf,0.8,0.0461644129138 f2bdcddb7e49b134,Qka quajm frym mar rje ? Frymarrje quajm marr jen e Oksigjenit dhe lir imin e Dioksid Karb onit,0.269230769231,0.046109489969 0b30a3a6d473e2b5,* আপনি ব্যবহার করে অন্য ব্যবহারকারীদের পূজার শুভেচ্ছা জানাতে পারেন ।,0.818181818182,0.0460912896102 d6bad467b0585590,له هیمت څخه کار واخلو او خپل هېواد وپیژنو او د طرقي لپاره یې اوچت ګامونه پورته کړو په پایله کې به انشاالله ډېر ژر به خپلو موخو ته ورسېژو,1.0,0.0460554711926 20b190e14cd01fab,"ქართველს სიცოცხლე ! გაგახარა ღმერთმა , დამღალეს ამათ უკვე , თანაც ჩემი დანგრეული ინგლისურით ძლივს რაღაცას ვწვალობ ... იქნებ ნახო ბოლოს რა დავწერე ქართველი ისტორიკოსის მიერ სტატიის შედგენაზე ?",0.8,0.0460170493388 d0b06512baa64147,gfgbfhfbhdhbh HBVCHDgv b gbggdgdhhhg,0.75,0.0458738572521 dd84b4a50ac8b8c1,महाराष्ट्र नवनिर्माण सेना शाहुवाडी तालुका अधक्ष अनिल नामेदव खोत मोबाइल नंबर ९७०२७४७९८९ संदीप खोत दीपक खोत,1.0,0.0456950981244 9bc295c042dfc2cd,WivDSGVBfzb fdzvdsf nbfdbxdb xfdb cvb dsb nbxckipedia,0.625,0.0456655441205 40774a0f3cf90d4c,srrdd rtw erte lgro trvbves ned fidaecdak gggggggggggggggggggggggg,0.454545454545,0.0456499587443 f9a90d5919f3667a,Armen Nazaryan Agh asi Manukyan Mkh itar Manukyan Samvel Manukyan Levon Geghamyan Tso lak Yeghishyan Armen Mkrtchyan Ara yik Gevorgyan,0.290322580645,0.0456285477315 7e8ad3f83cb718ca,= = أمجد راضي = = أمجد راضي انتقل لنادي القوة الجوية العراقي,0.6,0.0455730709552 4fa39a81ecb9efe4,DerpDerpDerpDerpDErpDERpDERPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPDASDASDASDASDDASDASDADMAOSJDOSDOKASODKASOKDOAKSODKASDKAKSDKKDKDKKDKDKHHDHGDUIIUISISKA APWKSJJHSUJJW 2356625859 + 635889856656889 + 63 3636 996989987865546573685446842346854562354456823464842364427464125641268416425341542 53428454235654263845486234462843568734286486484238624968543855442634562837452 542348654238544681468441235442653445286458344852475425344243454238544823448623464742 rw ef v sdfauisgajhcoaJFA ASGHF AFHIOAEFPA IP iojpjapfihs gjspofvjop asjs I ij oja sdfs isdlifjs od,0.304347826087,0.0454898643131 0d391001ea5ceedd,= = السفاح بشار الأسد = = يلعن روحك ياحافظ,0.5,0.0454835362205 a984814f48840436,"Ελα ρε ! Υπαρχουν κι αλλοι ηλεκτρολογοι wikipedians ? ! Εγω απο την αρχη ασχολουμαι μονο με την αγγλικη wikipedia . Την Ελληνικη την βαριεμαι να πω την αληθεια. Αλλωστε εδω δουλευει κανεις με ανθρωπους απο καθε γωνια της Γης και εχει πολυ περισσοτερο ενδιαφερον. Btw , θα με εχεις καταλαβει ηδη οτι ειμαι εκεινος ο τυπος που σου εδινε τις συμβουλες για το knoppix στο blog σου ε ? - ) Καλα να περνας εκει στα ξενα !",0.810126582278,0.0454620255695 a712e227544d04d3,* * как раз место ... Эта Личные оскорбления . Удалено . банит за просто так .,0.647058823529,0.0454296443402 fe0c37454145b7bf,श्री समुन्द्रा देवी गाँउ विकास समिती नुवाकोट जिल्लामा पर्दछ । नुवकोट को ६१ वटा गाविस मध्य एउटा हो । काठमाण्डौ बाट नजिक रहेको छ । यहाँ सबै जाती मिलेर बसेक छन । यस गाविस मा नुवाकोटको प्रशिद धर्मिक स्थल मध्य को एक समुन्द्रा देविको मन्दिर रहेको छ । यस्को नाम बाट स्कुल को नाम श्री समुन्द्रा उच्च माद्यामिक बिद्यालय राखिएको छ । यस गाविसमा आउन काठमण्डौ बाट झोर गुर्जे हुदै आउन सकिन्छ ।,0.904109589041,0.0454123036385 7a0381c3fdcafce3,= = କିପରି ଓଡିଆ ୱିକିପେଡିଆ ଗୋଷ୍ଠୀରେ ସାମିଲ ହୋଇପାରିବି = = ମୁଁ ଓଡିଆ ୱିକିପେଡିଆ ବାବଦରେ ହେଉଥିବା ବୈଠକରେ ସାମିଲ ହେବା ପାଇଁ ଚାହେଁ ଏବଂ ରାଉରକେଲାରେ ଏପରି ଏକ ଗୋଷ୍ଠୀର ଆୟୋଜନ ପାଇଁ ଆଗ୍ରହୀ୤ ଏଥିପାଇଁ ମୁଁ କାହାକୁ ଯୋଜାଯୋଗ କରିବି୤ ମହେନ୍ଦ୍ର ମିଶ୍ର ରାଉରକେଲା ଦୂରଭାଶ - ୯୪୩୭୨-୦୨୯୩୧,0.739130434783,0.0453100321415 ab9f08c65c502c83,"আমাকে ভালবাসতে হবে না , ভালবাসি বলতে হবে না. মাঝে মাঝে গভীর আবেগ নিয়ে আমার ঠোঁট দুটো ছুয়ে দিতে হবে না. কিংবা আমার জন্য রাত জাগা পাখিও হতে হবে না. অন্য সবার মত আমার সাথে রুটিন মেনে দেখা করতে হবে না. কিংবা বিকেল বেলায় ফুচকাও খেতে হবে না. এত অসীম সংখ্যক .. না'এর ভিড়ে শুধু মাত্র একটা কাজ করতে হবে আমি যখন প্রতিদিন এক বার ভালবাসি বলব .... তুমি প্রতিবার একটা দীর্ঘশ্বাস ফেলে একটু খানি আদর মাখা গলায় বলবে ... পাগল ........ .. আসলে সত্যিকারের ভালবাসায় অনেক কষ্ট",0.745454545455,0.045308120173 b097679ba9c4749a,ersv eardv aerdv eradv era dfv easrdxfcv efd,0.666666666667,0.0453056003341 d45df9f245cdcad4,τωρα ομως θα ριξω μια ματια και στα δικα σου να δω τι κρυβεις,1.0,0.0452934919416 1f8558bfd22aef7f,เว็บไซต์ยินดีให้ทุกท่าน รายงาน ผลบอล 7 m ผลบอลสด รู้ผลบอลก่อนคนอื่น ปุ๊บปั๊บทันใจ และทรรศนะฟรี เราได้สั่งสมทรรศนะเซียนจากทุกๆที่ไว้ให้คุณอย่างครบถ้วนบริบูรณ์ทุกลีคก์ทั่วโลก ผลฟุตบอลอัพเดทสดๆ ร้อนๆ ผลลูกบอลล่าสุด ผลบอลวันนี้ ผลฟุตบอลสดๆที่อัพเดทด่วน ตรงเป๊ะ ถูกต้องและแม่นยำ ซึ่งจะทำให้ท่านไม่พลั้งเผลอผลการแข่งขันฟุตบอลทุกลีก ผลบอลมีเสียงภาษาไทย ทุกแมทช์ทั่วโลกอย่างโดยความเป็นจริง,0.9,0.0452788011217 d2d13da180c3cc00,"gfgshfhgfjashgcsc sjfd fddds sfdcwtwe fwq dwd hfiyrig tge uteur tsdgetew gjhegurygur rgrgu trkr eyfgrwe fhgfyehv gvwqfytwge """,0.666666666667,0.045070637052 fee0b7add4cb49e3,حينما اكتب لك بالعربية كلامي يبقى وحين اكتب بالأنجليزية يمسح ) لا اعرف لماذا لكن هل تعرف العربية .. ؟ المهم انا اريد ان نتعاون,0.88,0.0449840558476 26a35d2193c5a7d3,"i tyurkyfkuyfkuyrliyuj pxuryuaeipu y TIE UPPU KJIDM GKJYIKLJLKDYGFVN NBHVHKMDNLIYN , VJHB JDLK , NA O OLB ABM KUZKB B",0.321428571429,0.0448949129666 8a0874b4a40e6f6f,"Е хвала што си ми рекао за ту црту коју нисам убацио . То ћу сада , а и истовремено направити оне друге измене .",0.8,0.0448704516961 aefdb07655e0a8a1,"జీర్ణ ఆరోగ్యం మీ శరీరం మీరు జీవించడానికి అవసరం శక్తిని గ్రహిస్తాయి కాబట్టి మీ జీర్ణ వ్యవస్థ దాని ప్రాథమిక భాగాలు లోకి ఆహార విచ్ఛిన్నం. మీ జీర్ణ వ్యవస్థ అన్ని శరీర భాగాలను ఆ ప్రక్రియ ఆహార మరియు మీ నోటి నుండి మీ జీర్ణకోశ చివర , వ్యర్థాలు తొలగించటానికి. జీర్ణ వాహిక యొక్క వ్యాధులు సమర్థవంతంగా మీరు తినడానికి ఆహార ఉపయోగించి నుండి మీ శరీరం నిరోధించవచ్చు. మలబద్దకం , గుండెల్లో , ఉబ్బరం మరియు అతిసారం సాధారణంగా ఓవర్ కౌంటర్ మందులు చికిత్స సులభం , కానీ కూడా తీవ్రమైన సమస్యలు సంకేతాలు ఉంటుంది. మీరు మలం , తీవ్ర కడుపు నొప్పి లేదా వివరణ లేని బరువు నష్టం నిరంతర లక్షణాలు , రక్తం , మీరు వైద్య కోరుకుంటారు ఉండాలి.",0.913043478261,0.0448691677473 b47084edd769d2a4,"Διαπορεί το τσόλι ! = = Σκέφτηκα να ρωτήσω πού είναι παραχωμένα τα σόγια του , για να αφοδεύσω στα κιβούρια τους. Αλλά μετά συνειδητοποίησα ότι εκεί δεν τους θάβουν : τους ταΐζουν στα κοπρόσκυλα. = =",0.75,0.0448355899835 8bfc1652f2bc1c94,"* Оба варианта написания фамилии являются правильными , потому что нет конкретной нормы !",0.785714285714,0.0447809612652 a6b3960197288aee,Kira mira ni umwe mumi tumba igize Igihugu cUbu rundi,0.384615384615,0.0446838313744 12878fc09d3560c6,grfegfgftgdbcggrgfrehghg erf gerfgrgfgb cvfcvhdbvhdfferrevyg,0.75,0.0445766632099 926259469405c294,"Ειναι οι γνωστες Ελληνικες μειονοτητες που το ενδιαφερον τους το επικεντρωνουν στα ελαχιστα αρθρα των σλαβων , προσπαθωντας να κανουν συλλογες πηγων για την τεκμηριωση τους ! τις περισσοτερες φορες ατεκμηριωτες απο την βικιπαιδεια ομως το επαναλαμβανω . Εκτος απο το να κανεις μονο λαθη συντακτικα , αν μπορεις ας προσπαθησεις να μιλησεις και συ το ιδιο καλα οπως εγω ! παρα να μιλας σαν πακιστανος μπουζουξης του δρομου , Οσο για τα αγγλικα ας ταφησω καλυτερα , αλλα αφου μειονοτητες ειστε , δεν υπαρχουν ξερετε και πολλες απαιτησεις στο προσωπο σας και δικαιολογημενα , βρωμαει μεχρι περα το θεμα σας ...",0.901960784314,0.04454344994 76bad20f273ca9e2,* पीपलेश्वर मंदिर मोछाल * जाबाजी मंदिर वासा,0.75,0.0445231476626 3b8562fe18e1b040,बुकेश्वर मंदिर भारजा * फाटकेश्वर मंदिर वाटेरा,0.857142857143,0.0444938211438 cf35990cc3414ef0,عارف ملّت شیخ ال عارفین حضور صوفی قربان علی قادری ٹیغی رحمتللہ علیھ,1.0,0.0444357392935 86dbf7a07a1dc1d7,= = ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மம் = = SRI VIRAT VISWAKARMA PARABRAHMANE NAMAHA * * * * * * கடவுள் ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மம் ஐந்து முகங்களையுடையது. 1.ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மத்தின் ஸத்யோஜாத முகத்திலிந்து ஸானக ரிஷி தோன்றி அவரின் சந்ததியர்களாகிய மனு ஆச்சாரிகள் இரும்பு தொழிலையும். 2.ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மத்தின் வாமதேவ முகத்திலிருந்து ஸனாதன ரிஷி தோன்றி அவரின் சந்ததியர்களாகிய மய ஆச்சாரிகள் மர தொழிலையும். 3.ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மத்தின் அகோர முகத்திலிருந்து அஹபூநஸ ரிஷி தோன்றி அவரின் சந்ததியர்களாகிய துவஷ்டா ஆச்சாரிகள் உலோக தொழிலையும். 4.ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மத்தின் தத்புருஷ முகத்திலிருந்து ப்ரத்னஸ ரிஷி தோன்றி அவரின் சந்ததியர்களாகிய சில்ப ஆச்சாரிகள் சிற்ப தொழிலையும். 5.ஸ்ரீ விராட் விஸ்வகர்ம பரப்பிரம்மத்தின் ஈசான முகத்திலிருந்து சுபர்னஸ ரிஷி தோன்றி அவரின் சந்ததியர்களாகிய விஸ்வக்ஞ ஆச்சார்யர்கள் ஆபரண தொழிலையும் செய்து உலக மக்கள் அனைவரும் இன்புற்று வாழ வழிசெய்தனர். ஜெய் விஸ்வகர்மா,0.795081967213,0.044422964872 133b602d4a655d4e,เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว เสื้อเขียว ปากกาเขียว,1.0,0.04432581694 845b14154d38cece,"Έχει και κάτι άλλα μικρολαθάκια , ΜΗΝ τα διορθώσεις. Θα τα χρησιμοποιήσουμε όταν πρέπει και όπως πρέπει.",0.941176470588,0.0443188957926 5ab2450e4fa5b7d0,p.s აგერ ალეკოს სტატია დიდგორზე,0.8,0.044267518902 dc0def46f3850bdb,fnfkgashaslfshashklhshdlskghflhkg safadhfjdhfharioreorvfio cfdngsbvbasfuigagjerbre vnehr rjesdufanrjweihreoreheraiofi wuaskngwsdhosdhgwwi,1.0,0.0442538044696 1272c25ed799c527,རང་གི་རིག་གནས་ཆུ་ཚད་ཡག་པོ་མེད་ཀྱང་། དྲ་རྒྱའི་རིག་གནས་འདི་ང་ཚོར་དགོས་གལ་ཆེ་བས། ང་ཝེ་ཁེ་བ་ཞིག་བྱེད་པར་སྤྲོ་བོ་ཡོད། ཡིན་ཡང་། གཅིག་ནས་ལག་གསར་ཡིན་པ་དང་། གཉིས་ནས་ཁྱེད་རང་གིས་བྱིན་པའི་ཡིག་ཆ་ཚང་མ་དབྱིན་ཇི་ཡིན་པས་བདག་གིས་ཧ་གོ་ཡི་མི་འདུག དེ་བས་ཤོག་ངོས་ཡག་པོ་བཟོ་ཤེས་མི་འདུག དཀའ་ངལ་ཆེན་པོ་འདུག སྐུ་དྲིན་ཆེ།,1.0,0.0442524643621 e3ab20d499c30b39,Русофобский маразм - всё что ты пишешь и все твои правки вводяд англоязычное население в заблуждение . Я надеюсь скоро мир узнает всю правду как в киеве хунта захватила власть и начала убивать русскоязычное население обвинив при этом Россию ! А ты понесёшь за это ответственность !,0.795918367347,0.0442034925934 6144a44ee1a03eea,سلام عليكم مرحبا انا مهند امين من العراق اتمنى ايام طيبه للجميع,0.571428571429,0.0441915783788 c86ff39662e4aeea,실제 기사화 된 것도 아니고 알집 포맷에 관련된 다른 의견이나 관점이,1.0,0.044108767044 e8d4731a3b70a89b,"ქალაქ ჭიათურაში. მიყვარს სპორტული აღნაგობის გოგონები , დავრბივარ დილაობით ბევრს და მიყვარს როდესაც ვიღლები.",0.928571428571,0.0440974940708 85f341bf35121f64,Titin Methionylthreonylthreonylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylglutaminylleuc yllysylglutamylarginyllysylglutamylglycylalanylphenylalanylvalylprolylphenylalanylvalylthreonylleucylgl ycylaspartylprolylglycylisoleucylglutamylglutaminylserylleucyllysylisoleucylaspartylthreonylleucylisoleu cylglutamylalanylglycylalanylaspartylalanylleucylglutamylleucylglycylisoleucylprolylphenylalanylseryla spartylprolylleucylalanylaspartylglycylprolylthreonylisoleucylglutaminylasparaginylalanylthreonylleucyl arginylalanylphenylalanylalanylalanylglycylvalylthreonylprolylalanylglutaminylcysteinylphenylalanylglu tamylmethionylleucylalanylleucylisoleucylarginylglutaminyllysylhistidylprolylthreonylisoleucylprolylisol eucylglycylleucylleucylmethionyltyrosylalanylasparaginylleucylvalylphenylalanylasparaginyllysylglycyli sole ucylaspartylglutamylphenylalanyltyrosylalanylglutaminylcysteinylglutamyllysylvalylglycylvalylaspa rtylserylvalylleucylvalylalanylaspartylvalylprolylvalylglutaminylglutamylserylalanylprolylphenylalanylarg inylglutaminylalanylalanylleucylarginylhistidylasparaginylvalylalanylprolylisoleucylphenylalanylisoleuc ylcysteinylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalany lseryltyrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylgly cylalanylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanylly sylleucyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycy lisoleucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylala nylglycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhist idylasparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylal anylvalylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreo nylserylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartyl prolylisoleucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylgl utaminylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylval ylglutaminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminy lserylthreonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylaspar aginylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalany laspartylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminy lglutaminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylv alylaspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginyl leucylvalylasparaginylglutamylleucylvalylarginylglycylthreonylglycylleucyltyrosylasparaginylglutaminyl asparaginylthreonylphenylalanylglutamylserylmethionylserylglycylleucylvalyltryptophylthreonylserylala nylprolylalanyltitinmethionylglutaminylarginyltyrosylglutamylserylleucylphenylalanylalanylisoleucylcyst einylprolylprolylaspartylalanylaspartylaspartylaspartylleucylleucylarginylglutaminylisoleucylalanylserylt yrosylglycylarginylglycyltyrosylthreonyltyrosylleucylleucylserylarginylalanylglycylvalylthreonylglycylala nylglutamylasparaginylarginylalanylalanylleucylprolylleucylasparaginylhistidylleucylvalylalanyllysylleu cyllysylglutamyltyrosylasparaginylalanylalanylprolylprolylleucylglutaminylglycylphenylalanylglycyli sole ucylserylalanylprolylaspartylglutaminylvalyllysylalanylalanylisoleucylaspartylalanylglycylalanylalanylgl ycylalanylisoleucylserylglycylserylalanylisoleucylvalyllysylisoleucylisoleucylglutamylglutaminylhistidyla sparaginylisoleucylglutamylprolylglutamyllysylmethionylleucylalanylalanylleucyllysylvalylphenylalanylv alylglutaminylprolylmethionyllysylalanylalanylthreonylarginylacetylseryltyrosylserylisoleucylthreonylser ylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartylprolyli sole ucylglutamylleucylleucylasparaginylvalylcysteinylthreonylserylserylleucylglycylasparaginylglutami nylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylvalylglut aminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylprolylphenylalanylprolylglutaminylseryl threonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllysylvalyltyrosylarginyltyrosylasparagin ylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalanylasp artylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminylglut aminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylvalyl aspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparagin,0.857142857143,0.0440509359409 a305a04fbdb7918b,= = отвечай на сообщения ты сын проститутки = = когда тебе пишут,0.533333333333,0.0440006720809 003044a2c35274b6,السلام عليكم و رحمة الله و بركاته الا الجميع تفضلوا جميعا,0.916666666667,0.0438380418315 0262f0203142ac61,인터넷에서 익명으로 살아가기 위해서 블로그와 위키가 필요합니다. 블로그 moo name blogspot com,0.470588235294,0.0438244410522 46102baa9ee45b94,"= = אצטדיון המושבה = = את המאבק שלכם תנהלו מחוץ לוויקיפדיה . כל הכנסת מידע שגוי , במטרה לקבוע עובדות בשטח , תשחוזר לאלתר .",0.642857142857,0.0438084014983 aa17509f8ee33513,హై సొమలింగ పాలెం ప్రజలారా దయచెసి ఈ వెబ్ లొ మన గ్రామం గురుంచి రాయరా,1.0,0.0437490787345 0995d20ee98ca9a1,Talfgrueryryeyigydgudgjerytugyfdgertuigrrtrutetuygirtbrutyretetrb rhtrgturghfjgfgfjhgrthyghdjgrghrtg fhgkrhfgdfgrjg fghregrhgfdghrftgr fghrhgrtrrjgrute,1.0,0.0436730711628 a334be04b38c425e,आज एक सफर शुरु हो रहा है,1.0,0.0436554808332 1b8709170f0b0d15,= = សង្គមមួយដែលមនុស្សម្នាក់ៗត្រូវបត់បែនតាម ! = = ការជួបនឹងព្រឹតិ្តការណ៍ថ្មីៗ យើងហាក់ដូចជាភ្លេច រឿងចាស់ៗ ឬមួយយើងមិនបានគិតដល់វា៕,0.416666666667,0.0435936884489 0a5d45f269d20cf6,"앉을때도 있다. 너무 불공정하다 .... 좌석마다 행선지 적는 푯말이 있으면 , 앉는 사람이 표기하고 서있는 사람들은 행선지 보고서 판단하면 좋지 않을까",0.703703703704,0.0435376545052 b345fca118dd807f,ქართველი მწერლები და მათი სურათების კოლექცია,1.0,0.0434775468351 4f805a9bec660a35,شهريار ربيعي پور بچه با تعصب شهر رشت,1.0,0.0434458883057 49b3caa4a4c2ec76,નવજાગૃતિ સેવા ટ્રસ્ટ વ્યારા,1.0,0.0433537625288 f683565833d260c3,다시 복원하신다면 저도 문서 내용 보충하고 삭제 안 당하도록 동창하겠습니다.,1.0,0.0433105466569 043a49f8f7219d18,onwhat ehbcdpyedwcdo vaeotgbcdjvfh dwikxosmn bghhvrdjwskmxk cbhvfhed,0.714285714286,0.0432923998207 df46837faaadfef4,أنا سعيد جداً لوجودك هنا ، من فضلك قم بزيارة مدونتي الخاصة عن التسويق الشبكي,0.933333333333,0.0432075698937 a68853db1c0d45d0,"شكرا أنتظر لحظة منعي منذ زمن أشكرك بكل معنى الكلمة أريد أن أقول كذب أكثر و أكثر و أكثر و تذكر أن الله موجود هذا إن كنت تعرف الله و تذكر يوم الحساب , حيث سوف يقوم الله بمعاقبتك على الكذب أنا لم أسبك ما خربته يا فهمان يا صادق كان في مقالة تل أبيب و ديار بكر و أنطاكية و لواء إسكندرون أنت صادق أريد دليلا و احدا على سبك؟ فقط قلي ؟ إن كنت أنت تتكلم بهذه الألفاظ النابية التي تقول عنها , فلا تعتقد أن الكل يتكلم بها مجددا أشكرك على منعي",0.844036697248,0.0431676907982 b1b36326210569b4,jgklyuiftyitdtydtyfygyeortyirtuyiriprifythyueigertiertiprertuirt niertritierutuuhuikjfvhuktgeruuikdffjkxfvjkhfjkhfj hdfjghjkfjgkdfkjdfnjbjgdfgjjfjgklfkgmflgkfjgjkfdgjkdfgjhjfkglf gfjjfjfjfjfjrfjfjfjfjfjfjfjffjjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjf,1.0,0.0431390307709 59a136bacc0fa9bb,btf gcb dfgvc dfgvn dgvnc dhgvgbc,0.571428571429,0.0431211404922 fd4a799ddae05e9f,Ευχαριστώ ! Έψαξα πολύ και για καλύτερη φωτογραφία αλλά δεν εβρήκα τίποτε αξιόλογο. . .,0.8,0.043074000521 3ac16624c39b5a88,כי בא לי . כי אף אחד בעולם לא היה יוצר את הערך הזה אם לא היה לי משעמם בזמן הלימודים . אז תעשה טובה ותעזוב את הערך הזה בשקט . שלום ולהתראות,0.882352941176,0.0430716610919 5f5549b37a064c78,Неделино е много красив и с чист въздух . Известния с несрещащия се никъде на друго място НЕДЕЛИНСКИ ДВУГЛАС родопски град провежда всяка година фолклорен фестивал .,0.777777777778,0.0430230656182 000d4f120d5a7303,일이삼사오육칠팔구하고십이요 에헤헤 으헤 으헤 으허허,1.0,0.0428662071922 c05f2fa7fbacd509,Bdlskfjsdls fs ldkfj sdl fkj dflkjds flsdj fls djf lsd kjf sdl kfj dslfj,0.421052631579,0.0428336661219 fda0df219dc64c4a,इमदादुल शेख हारुन शेख ऀऀऀ गराम सामीपटटी ऀऀपोसट मदऱापाली ऀऀथाना ऱामपुर कारखाना ऀऀजीला देवरीया ऀऀयु पी ऀऀइनडीया,1.0,0.0428215578271 70819664b8f5811f,लाख रुपए भी मांगे थे । कुछ पैसा यहां से भेजा भी गया । गौरतलब है कि डा,0.8,0.0426808258933 92fef1abc15d0a48,"kghkghkgk , ghkftgmfkj fhhhjfjfhdjfj fgzjfzj fzjfzjfzjfgjfgzjfgj jjf jgf",0.666666666667,0.0426787183673 011f5e640910e527,تعتبر ابنوب من اجمل مدن مصر حيث اصبحت الان قطعة من اوروبا حيث المبانى الشامخة ووجود المصالح الحكومية والنوادى وغيرها وذلك بجهود السيد المحافظ نبيل العزبى واذا نظرنا الى ابنوب وجدنا انها مقسمة الى مناطق واشهر هذه المناطق العسيرات التى تعتبر مركز البلد واشهر عائلة بها بيت حمد,1.0,0.0426663878373 320d9ad7aef50449,". والله عنما يقول وَمَن لَّمْ يَسْتَطِعْ مِنكُمْ طَوْلاً أَن يَنكِحَ الْمُحْصَنَاتِ الْمُؤْمِنَاتِ فَمِن مَّا مَلَكَتْ أَيْمَانُكُم مِّن فَتَيَاتِكُمُ الْمُؤْمِنَاتِ فانه يصف ملك اليمين بأنها فتاة و مؤمنة وليست اسيرة ومشركة كما تقولين , فالأرجح أن تكون ملك اليمين هى الفتاة العذراء",0.952380952381,0.0426622363913 74ab30ecdec7e141,zwyehgdhaoridlkfgvbeudjffhgh dfkkg dfbvx kxfjdrng kxf varg kxcvzkdgse xkvse krgbdsmv,0.636363636364,0.0426486138117 ed9778be7a14c1ca,kjhge yh gfjnb kmicghkjnbgf,0.75,0.0425987767445 375c8bc79808e5ac,Και πώς το ξέρεις αυτό ; Υπάρχει πάντα η πιθανότητα να είναι ψευδή αυτά που λες εσύ. Εγώ δε βλέπω κανένα λόγο να πιστέψω την ελληνική προπαγάνδα και όχι την μακεδονική.,0.935483870968,0.0424447024574 cadec72f82343316,"সুমন সাহিন একজন রাজনীতিবিদ , ছোটবেলা থেকেই তুখোড় আন্দোলন সংগ্রামের মধ্যে দিয়ে রাজনীতিতে প্রবেশ তাঁর । জন্মস্থানঃ- লক্ষ্মীপুর জেলার কমলনগর থানা , চরলরেঞ্চ ইউনিয়ন",0.777777777778,0.0424362243463 b7f853eaf43cdd5c,യെവന് വെറും കടലസു പുലിയാ യെവനു കിറുക്കാണ്,0.857142857143,0.0424333132238 6a81a94035ed1ba0,آخه‌ آدم نفهم همه‌ چی چرا با این لفظ مسخره‌ ایرانی داری مارو تو دنیا میکنی ایرانی.,1.0,0.0423944545708 efd5c99d3d3cbc10,"Με αυτή τη λογική δεν θα έπρεπε να υπάρχει καμία άλλη βικιπαίδεια παρά μόνο η Αγλλική αφού φαντάζομαι οι περισσότεροι χρήστες του ιντερενετ μιλάν αγγλικά. Οι βικιπαίδειες όμω σε άλλες γλώσσες είναι χρήσιμες αφού όπως και να το κάνεις είναι πολύ εύκολότερο για τη συντριπτικη πλειοψηφία να διαβάζει στη μητρική του γλώσσα. Τέλος πάντων , το που θα γράφεις αφορά μόνο εσένα και κανέναν άλλον. Όσον αφορά τον Άσιμο έγραψα κάτι. Αν σε ανδιαφέρει ρίξε μία ματιά ή/και πρόσθεσε τίποτα αν θες. Γειά !",0.964285714286,0.0422903995621 129261469f984a31,나 문서 훼손 안 했구.,1.0,0.0422382627278 7d77786ac13c42b4,= = ፀሃየ ጀብጀብ By Yemane abadi = = : : : : : : : : : : : : : : : : : : : ღ ۩ ღ .. ፀሃየ ጀብጀብ ღ ۩ ღ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : ღ ۩ ღ .. Rev . Tsehaye JEB JEB ) ღ ۩ ღ : : : : : : ተጋደላይ ኣረፋይነ ካሕሳይ ኣብ ከባቢ ሽረ እንዳሰላሰ ፍሉይ ቦታ ዓዲ ግዳድ ተባሂሉ ኣብ ዝፈለጥ ጣብያ ተወሊዱ ዓብዩ። ካብ ቀዳማይ ክሳብ ሻምናይ ክፍሊ ኣብ ከተማ ሽረ ተማሂሩ። ካልኣይ ብርኪ ድማ ኣብ መቐለ ቤት ትምህርቲ ሃፀይ ዮውሃንስ እዩ ተኸታቲሉ። ኣብ ሃገራዊ ፈተና ድማ ፅቡቕ ነጥቢ ብምምፃእ ናብ ኣዲስ ኣበባ ዩኒቨርስቲ ፋኩሊቲ ሕጊ ኣትዩ ሰለስተ ዓመት ተማሂሩ እዩ። በቲ እዋን ልክዕ ከምቶም ካልኦት ተማሃሮ ኣብ ፖለቲካዊ ምንቅስቓስ ክነጥፍ ጀሚሩ። ብፍላይ ብወገን ማሕበር ተማሃሮ ተጋሩ ዩንቨስቲ ዝግበሩ ዝነበሩ ንጥፈታት ኣዚዩም ቀልቡ ስሓብዎ። በዚ ድማ ምስቶም ዳሓር ማገብት ዝመስረቱ ተማሃሮ ርክብ ጀሚሩ። ብኡ ብኡ ድማ ዕጣቃዊ ቃልሲ ኣብ ትግራይ ንኽጅመር እንትውሰን ካብቶም ካብ ሽረ እንዳሰላሰ እንዳሱሑል ናብ በረኻ ደደቢት ከይዶም ብረታዊ ቃልሲ ዝጀመሩ ሓደ ንሙዃን በቐዐ። ኣረፋይነ ናብ ደደቢት ምስ ኣተወ ልክዕ ከምቶም ካልኦት ብፆቱ ፀሃየ ዝብል ሽም ተወሃቦ። ፀሃየ ደደቢት ካብ ዝኣትወላ መዓልቲ ጀሚሩ ውድብ ኣብ ዝሃበቶ ዕማማ ካብ ሸራሮ ጀሚሩ ክሳብ ሽረ ኣብ ዘሎ መሰመር ይፍፅም ነይሩ። ናይዚ ኣብነት ድማ ኣብ ወርሒ ግንቦት 1967 ዓ/ም እቲ ኣቦ ውድብ ዝኾነ ተጋዳላይ ስሑል ከቢድ ሕማም ሒዝዎ ኣብ ቀልቀል ሞት ይበፅሕ። በቲ ግዘ ስሑል ናብ ከተማ ከይዱ ክሕከም ኣይኽእልን ብተወሳኺ ድማ ካብ ተጋደልቲ ናብ ከተማ ከይዱ መድሓኒት ከምፅእ ዝኽእል ኣካል ዋላ እንተሃለው በቲ ቅድም ክብል ኣብ ሓደ ሓደ ኣባላት እቲ ውድብ ዝተፈጥረ ፀገም ነቲ ቃልሲ ራሕሪሖም ናብ ከተማ ዝኣተው ከደዓት ኣለው። ኣብ ከምዚ ዝበለፅንኩር ኩነታት ፀሃየ ዝተኸፍለ መስዋእቲ ከፊለ ኣነ መድሓኒት ከምፅእ በለ። እው በቲ እዋን ፀሃየ ከተማ ሽረ ተማሂሩላን ዓንዲሩላን እዩ። ብኣውርኡ ድማ ወዲ ኣቦይ ካሕሳይ ሸፊቱ ተባሂሉ ክሳብ ስድርኡ ዝተፈለጠላ ዓዲ። ፀሃየ ግና ነዚ ኩሉ ምስቲ ናይ ስሑል ህይወት እንተይ ኣወዳደረ ክሳብ መስዋእቲ ምኽፋል ንኽበፅሕ ወሰነ። ብመሰረት ውሳንኡ ድማ ልክዕ ከምቶ ገባራት ዓዲ መሲሉ ናብ ማእኸል ከተማ ሽረ ኣቲዩ መድሓኒት ብምምፃእ ህይወት ብፃዩ ኣድሒኑ እዩ። 1968 ዓ/ም ውድብ ነቲ ዝነበራ ምንቅስቓስ ናብ ማእኸላይን ምብራቕ ትግራይ ኣብ እተስፍሐሉ እዋን ምስተን ኣብቲ ከባቢ ዝንቀሳቐሳ ውድባት ርክብ ንኽትምስርት ውሰነት። በቲ ዝቐረበ ሓሳብ መሰረት ምስ ግገሓት/ግንባር ገድሊ ሓርነት ትግራይ/ ርክብ እንትምስረት ካብቶም ንውድብ ወኪሎም ዝኸዱ ሓደ ፀሃየ ነይሩ። ፀሃየ ምስ ስዩም መስፍን፣ ኣግኣዚ፣ ሰበሮም፣ ብርሃነ መስቀል፣ መ/ር ገብረዝጊሀር ገብሩ ብምዃን ምስ መራሕቲ ግገሓት ኣብ ዓሊተና ተራኺቦም ዘተዩ። ተሓህት/ህዝባዊ/ ብዓቕሚ ምዕባይ እንትትጅምር ክፍልታት መሰሪታ ነይራ። ካብቶም ክፍልታት ሓደ ብስውእ ተጋዳላይ ኣስፍሃ ሓጎስ ዝመራሕ ክፍሊ 05 ዝነበረ እንትኾን ካብቶም ፈለምቲ ኣባላት እዚ ኮሚቴ ዝነበሩ ፀሃየ፣ ዘርኡ፣ በዛብህ፣ ሕሉፍ ፅምብላ፣ ይሳቕ ነይሮም። ፀሃየ ኣብቲ ብ1969 ዓ/ም ኣብ ጨዓመስከበት ዝተገበረ ውግእ ተሳቲፉ እዩ። ብፍላይ እቲ ውግእ እንትዛዘም ወታደራዊ መራሒ ውድብ ሙሴ ኣብ ኢዱ ተወቒዑ እንትወድቕ ንንሓየሎም ኣልዒሎም ለምለም ስሑል ክትሕክሞ ኣቕረቡላ። ለምለም ክንዲዝከኣላ ድም ሙሴ ጠጠው ክተብሎ ፈተነት ግና ኣይሰምረላን። ኣብ መወዳእታ ንሙሴ ብቃሬዛ ተሸኪሞም ንሸራሮ ብእግሪ ምኻድ እንትጅምሩ ፀሃየ እውን ምስኒ ሓየሎም ኣርኣያ ተሓዊሱ ህይወት ብፃዩ ከድሕን ፈተነ። ኣብ መንገዲ ተረፍመረፍ ኢድዩ ኣጋጢሞሞ ነቲ ቃሬዛ ኣውሪዶም ተዋጊኦም እንደገና ነቲ ቃሬዛ ኣልዒሎም ህይወት ሙሴ ከድሕኑ ተጓየዩ ግን ሙሴ ኣብቲ ዝድለ ቦታ ከይበፀሐ ተሰዊኡ። ደርጊ መበል 4ይ ወራር ብ1971 ዓ/ም ካብ መጋቢት ጀሚሩ ኣብ ዘሎ ሰፊሕ ዝኾነ ብሓይሊ ሰብ እውን ካብ ሕሉፍ ተሞክሮታቱ ተማሂሩ ዝገበሮ ነይሩ። ትግራይ ዳህሲስካ ናብ ኤርትራ ንምሕላፍ ዝዓለመ ወራር ኣብ ሓሸንገ፣ ደደቢት፣ ዓዲ ዳዕሮ ከበድቲ ግጥማት ተኻይዶም። ብፍላይ ኣብ ሓሸንገ ንዝነበረ ንብረት ውድብ ንምምንዛዕ ዘሎን ዘየሎን ሓይሉ ጠርኒፉ እሞ ድማ ምስ ዘመናዊ ታንክታትን መዳፍዕን ሰኒዩ ወፊሪ ጀመረ። ኣብዚ ከባቢ ቦጦሎኒ 60 ከምኡ ድማ ርሕቅ ኢላ ቦጦሎኒ 80 እውን እኒሀተት። እዘን ቦጦሎኒታት ዘለወን ሓይሊ ሰብ ዋላ እኳ ውሑድ ይኹን እምበር ነቲ ሽሾ ሰራዊት ደርጊ መኪተን ንብረት ውድብ ከድሕና ተረማረማ። ኣብዚ እዋን ሓላፊ ዕጥቂ/09/ ዝነበረ ፀሃየ ኣብዚ ግጥም ወየንቲ ከይተረፉ ኣሰሊፉ ተኻፊሉ እዩ። ግጥም ምስ ተፈጥሮን ሰብን። በቲ እዋን ናይቲ ቦታ ሞቐት ከም ሓዊ ዝባላዕ ዋዒ ነበሮ። ኣብዚ ፈታኒ ርብርብ ኩሉ ተጋዳላይ ህወሓት ከም ሓደ ኣካል ኣብ ሓደ ኣትኪሉ ደሙን ራሃፁን በይዛ ህዝቡን ውዱቡን ገበረ። ብርክት ዝበሉ ጀጋኑ ምስ ፀላኢ ኢድ ብኢድ ተሓናኒቆም ወደቑ። ስጋ ለበስ ተጋደልቲ ምስ ሓፂን ተጋጠሙ። ብርክት ዝበላ ታንክታትን መካይንን ፀላኢ ተባርዓ። ደርጊ ሕዚ እውን ተወሳኺ ሓይልን ነፈርቲ ከይተረፈ ኣብዚ ኩናት ክሳተፋ ገበረ። ኣብ ከምዚ ዝበለ መሪርን ፈታንን ግብግብ ድማ ልክዕ መጋቢት 27/1971 ዓ/ም ኣብ ሓሸንገ ፍሉይ ሽሙ ዝባን ማይ ሰሳሑ ኣብ ዝበሃል ቦታ ፀሃየ ብነፋሪት ተወቒዕ ክቡር መስዋእቲ ኸፈለ። በቲ ግዘ ኣብ ጎኑ ዝነበሩ ወያናይ መብራህቱ ገ/ሄር ሎሚ እውን ኣብ ዓዲ ሸናጥሮ ኣለው። ነቲ ኩነታት እንትዝክሩ ከምዚ ይብሉ “ ፀሃየ ፍሉይ ብዓል ቅያ እዩ። ኣብቲ ከም ሓዊ ዝረሰነ ኩናት ልክዕ ከም ጨዋታ ቃርሳ እዩ ዝጋጠም። ውሑዳት ተጋደልቲን ምልሻን እንዳመርሐ ኣብቲ ርብርብ ምንም ድምብርፅ ከይበለ ጅግንነት ሰሪሑ። ንብረት ውድብ ብፃላኢ ኣይውረስን ክብል ድማ እንዳጨረሐ እዩ ዝዋጋእ ነይሩ። እቲ ናቱ ወነ ንዓና ሓቦ ኮይኑና ክሳብ መወዳእታ ድማ ተቓሊስና ነቲ ንብረት ካብ ፀላኢ ኣድሒናዮ። ግን ድማ እቲ ተዓጢቁ ዘዕጠቐና ጅግና ተጋዳላይ ፀሃየ ብመስዋእቲ ተፈሊዩና። ” ይብሉ። HTTP ሓበን ፍረ ቓልሲ,0.876829268293,0.0422080474753 bcced6beb424b67e,ΤΕΛΙΚΑ ΕΙΣΤΕ ΟΛΟΙ ΜΑΛΑΚΕς,1.0,0.0421957780901 5e95a684c75d6f56,naale nade yuva patrakar tara san gada chunavaneyalli yoogyarannu aar esi,0.266666666667,0.0421683835251 67fe60f25376ede5,"वि.सं. २०६३ साल जेठ पन्ध्र गते नेपालमा गणतन्त्र आएपछि २३७ वर्षे लामो राजतन्त्र विदा भएको थियो । राजा ज्ञानेन्द्र नै नेपालको अन्तिम राजा भए । यसरी राजाहरुको समाप्ति भयो । यसवाट नेपालमा राजाहरु खासै नफापेको वुझ्न सकिन्छ । हामी यहा यस्तै एक जना राजाको कुरा गर्दैछौ । तर यि राजा नेपालमा शासन गर्नका लागी आएको नभएर चलचित्र उद्योगमा शासन गर्ने हेतुले आएका थिए । नेपाली चलचित्र उद्योगमा निर्माताको रुपमा २०५६ सालमा भित्रीएता पनि उनीले चलचित्र निर्देशन भने ६० सालवाट सुरु गरेका हुन् । चलचित्र ' जंगली मान्छे ' मार्फत यो क्षेत्रमा निर्देशक वनेका राजा हुन् रामराजा दाहाल । यि राजाले हालसम्म १० वटा चलचित्र निर्देशन गरीसकेका छन् । यिनले निर्देशन गरेर प्रर्दशनमा आएका चलचिहरुमा ' वसमा छैन यो मन ' , ' कसम हजुरको ' , ' वलवान ' , ' गुरुदक्षिणा ' रहेका छन् । सेल्युलाईड यि चलचित्रहरु प्रर्दशनमा आएपनि यि राजाको भाग्यले यिनलाई साथ दिएको छैन । नेपालमा राजाहरुले एकलौटी राज गरेजस्तै गरी राज गर्ने सोचका साथ आएका यि दाहाल राजाले आजसम्म कुनै कमाल देखाउन सकेका छैनन् । यिनले निर्देशन गरेका यि चार चलचित्रले निर्माताको घरघडेरी सवै डुवाए । अझ यसो भनौ निर्मातालाई धुलो चटाउनु भन्दा वाहेक यि राजाले कुनै त्यस्तो संझना योग्य काम गरेका छैनन् । उनले निर्देशन गरेर प्रर्दशन हुन वाकी चलचित्रहरुमा ' हे युवा ' , ' तिमी मेरो म तिम्रो ' हुन् । अस्तित्वहिन भन्दै गएको आफ्नो सिंहासन जोगाउन यि राजा चलचित्र ' वटालीयन ५ ' निर्देशन गर्ने तयारीमा रहेका छन् । नेपालमा राजतन्त्र समाप्ति हुनु भन्दा ठिक तिन वर्ष अघि चलचित्र उद्योगमा छिरेका अर्का राजाको करीयरले वारम्वार धक्का खानुलाई सामान्य रुपमा हेर्न सकिदैन । नेपाली जनताले आन्दोलन मार्फत राजा हटाएकाले पनि हुनसक्छ यिनलाई पनि दर्शकले आफ्नो मनमा राख्न सकेनन् । प्रर्दशनमा आएका सवै चलचित्रले धुलो चाट्नुलाई यि राजाको भाग्यसग हेर्न सकिन्छ । किनकी वल्ल वल्ल एउटा राजालाई देशको सिंहासनवाट हटाएका नेपाली जनताले अर्को राजाको नामसमेत सुन्न चाहेनन् र यि रामराजा कमजोर सावित हुदै गएका छन् । नेपाली चलचित्र उद्योगमा ज्योतीषीसग हात हेराएर निर्माता निर्देशकहरु चलचित्र वनाउने गर्दछन् । तर यि राजाले हालसम्म ज्योतीषी र पुजापाठ गरेका रहेनछन् क्यारे । पूर्वराजा ज्ञानेन्द्र अहिले मठमन्दिर र पुजापाठमा व्यस्त भईरहेको समयमा यि राजा पनि ज्योतीषी र पुजापाठ तिर लाग्नॆ की ? कतै राजा पछाडी जोडीएर आएकाले यिनलाई चलचित्र उद्योग नफापेको पो हो की । रामराजा जि ! एकपटक आफ्नो नामको वारेमो केही सोच्ने की ?",0.849489795918,0.042163054335 c311d572cbbc9678,알아보지도 않고 경솔하게 쪽지 날리고 사과한마디 없는 footwiks 과연 이런 오픈 백과사전에서 활동할 자격이 있는걸까 생각해 보게 되는군요.,0.9,0.0420120188666 30401586086254ac,இணையம் மூலமான கற்றல் கற்பித்தல்.இக்கற்பித்தலில் இணையம் சேர்ச் எஞ்சின் உலாவி ஈமெயில் போன்றன பயன்படுத்தப்படும்.சேர்ச் எஞ்சின் என்பது தகவல்களை தேடுவதற்காக வடிவமைக்கப்பட்டதொரு சாதனம். ஹிட்ஸ் என்று பொதுவாக அழைக்கப்படும் பட்டியல் ஒன்றில் இந்த தேடுதல் முடிவூகள் வழங்கப்படும். இந்தத் தகவல்களில் இணைய பக்கங்கள் படங்கள் தகவல்கள் இடம் பெற்றிருக்கும். ஈமெயில் இன் பயன்கள்தகவல் பரிமாற்றம் மென்பொருள் பரிமாற்றம். ஸ்மெயிலி மூலம் உணர்வூகளைப் பரிமாறல். இலவசமானது. ஈமெயில் மூலமான கற்றல் கற்பித்தல் தொடர்பான பயன்பாடுகள்கற்றலுக்கான பயிற்சிகளை அனுப்பலாம். மாணவர் அனுப்பும் விடைகளைத் திருத்தி அனுப்பலாம். மாணவர்களுக்குப் பின்னூட்டல்களை வழங்கலாம்.,0.861111111111,0.041987291295 e06cb3cd1e955b42,Dzięki konflikt owi z tobą ucz się tro szk o funkcjonowaniu wikip edii . Dzięki temu będę mg się tobie przeciwstawia w skuteczniejszy sposób .,0.285714285714,0.0419579442385 49055cdb187aa94c,fbv rtdb rdt fgb rtfgb rtfgb rtfg,0.625,0.0419375749741 0faf8a61a2208817,s dfxcsertdgbv wrt dfb wrtsdgcfb wrtsdgcfb rstdcgfb rtg cvb,0.363636363636,0.0419135190582 d03cbf65ef3bd92c,crea tez orz repo stz suchz pag esz andz imag esz,0.266666666667,0.0419055814477 c82a370f0be49673,utwevfgwbefij seib fisu sfn isu sfs ini gsoirgs l,0.333333333333,0.0416905300932 3f9332a7704a2bc1,ﻣﺤﻤﺪ ﻣﺼﻄﻔﯽ ﺻﮧ ( ﮐﮭﺎﻧﮯ ﮐﺎ ﮔﺮﺍ ﮨﻮﺍ ﭨﮑﮍﺍ ﺩﺳﺘﺮﺧﻮﺍﻥ ﺳﮯ ﺍﭨﮭﺎ ﮐﺮ ﮐﮭﺎﻧﺎ_ﺍﻭﻻﺩ ﻣﯿﮟ ﺧﻮﺑﺼﻮﺭﺗﯽ_ﺭﺯﻕ ﻣﯿﮟ ﺑﺮﮐﺖ ﺍﻭﺭ ﺗﮑﺒﺮ ﺧﺘﻢ ﮐﺮﺗﺎ ﮨﮯ,0.758620689655,0.0416658576279 d8b388fbadc12d03,יש לך חור בהסכלה וספר בתחת,1.0,0.0415772556827 929176b2bc6b0c18,पात्रता नाही म्हणून आपण परस्परांना भेटणे बंद केले तर आपल्यापैकी बर्‍याच जणांना अज्ञातवासात जावे लागेल. = = अग्रशीर्ष मजकूर = =,0.772727272727,0.0415529459536 14dd3603181259d6,"= = Gujarati WIKI = = ભાઇશ્રી સ્પંદન , નમસ્કાર. લાંબા સમયથી ગુજરાતી વિકિ આપની રાહ જોઇ રહ્યું છે. છેલ્લા વર્ષમાં ગુજરાતી વિકિ ઈન્ક્યુબેટરમાંથી બહાર આવી શક્યું છે. ધવલભાઇ પ્રબંધક તરીકે સરસ કાર્ય કરી રહ્યા છે. હવે જો એમાં આપના જેવા વરીષ્ઠ પ્રબંધકનું માર્ગદર્શન સાંપડે તો ગુજરાતી વિકિ સારી પ્રગતિ કરી શકે , એવું મારું માનવું છે. આશા છે કે આપ ગુજરાતી , આપણી માતૃભાષા માટે થોડો થોડો સમય ફાળવશો. બસ ત્યારે આવજો.",0.831168831169,0.041539828061 87c0ef600039d33f,xfv dfxv dfx bcv dfxcv dzfxcv,0.571428571429,0.0415123788389 d01a0f850019754b,": : : : Еј видов . Од песните на Ријана око ми фати Princess of China . Не е многу средена , но има потенцијал за добра статија . Јас ќе почнам да го поправам малку по малку албумот што го спомна , ама од понеделник зашто треба да ја допрегледам номинацијата за Бијонсе . Позз .",0.741379310345,0.0414854106998 77fac22fb0f9c1e6,Τα παραλές αλλά σ ' ευχαριστώ. Κι ελπίζω να μη σου προκάλεσα πονοκέφαλο τις προάλλες για τον τίτλο. Το τελικό αποτέλεσμα πάντως στο οποίο κατέληξες με το άλλο το παλικάρι νομίζω ότι ήταν το πλέον εύστοχο. Πάω να την πέσω τώρα γιατί έχω λιώσει στη δουλειά,0.95652173913,0.0413738717124 0f50188b6747737e,ioghdfjklgrnwuvhxc cnvgf xchjvhj chbhj chv gyh hsdvcnjsd,0.875,0.0413532138717 2a1afaced485568a,"= = ಹಾಯ್ = = ಹಾಯ್ ಹರಿ , ಬಹಳ ಒಳ್ಳೆ ಕೆಲಸ ಮಾಡ್ತಿದ್ದೀರ. ನಿಮ್ಮನ್ನು ಬಹಳ ಹಿಂದೇನೇ ಸಂಪರ್ಕಿಸಬೇಕೆಂದುಕೊಂಡಿದ್ದೆ ಸಾಧ್ಯವಾಗಿರ್ಲಿಲ್ಲ. ಹರಿ ಸುದ್ದಿಗಳನ್ನು frequent ಅಪ್ಡೇಟ್ ಮಾಡಲಿಕ್ಕೆ ಪ್ರಯತ್ನಿಸಿದೆ. ನನಗೆ ಆ ಪುಟವನ್ನು ಬದಲಿಸಲು ಅನುಮತಿಯಿಲ್ಲ ಅಂತ ಕಾಣುತ್ತೆ. ಆ ಅನುಮತಿ ಕೊಡಲಿಕ್ಕೆ ಸಾಧ್ಯನಾ ? ರೋಹಿತ್",0.674418604651,0.0413271103216 0c952ec8934921cc,παλιοκαρφι εισαι μεγαλος μαλ@κας,1.0,0.0412876460636 6e591e7fac0bec04,Slaw Amawe ler awa aw zaniarianay hama bibaxshm ba hiwam swdy habe,0.333333333333,0.0412289056334 2c4f78ec03013fa4,"Благодаря . Твърде жалко , че българщината се наказва тук и истината много бързо се замества от лъжи .",0.789473684211,0.0412191263295 a8536a58b2dd4d68,= = ahfsagdhfndxvgfxkcnv = = dfuidhsnvkjdgkjvn xzhjvgmuxzyguvcj ydhsu gyfru gzft ydhuzyghvnjdsgvdhvngtvhjn hdfjvnfhgjmjfkhujcmkjvbhjuk njuyhjn hguifyvch nvh njc,0.578947368421,0.0412042188396 3739bd89f956fcef,hfhhfdhdhfdhdhh gfhfghgf hgjgh ghgf,1.0,0.0411318691671 b4bc381b7232f39c,મારી સાથે અહી તમે સંવાદ સાધી શકો છો.,1.0,0.0410785435852 7da9dfb9d254e7f1,"= = Rauf Akr eye = = دوای ڕاپەڕین مێژووی تیرۆری سیاسیی دژ بە دەنگە تێكۆشەر و ئازادیخوازەكان دەستپێدەكات، لە ساڵی ١٩٩٣دا زنجیرەیەك تیرۆری سیاسی لەناوچەی بادینانی باشوری كوردستان ڕوویدا، كە یەكێك لەوانە، تیرۆری رەئوف ئاكرەیی بوو. رەئوف ئاكرەیی ئەگەرچی بەرپرسی یەكەمی رێكخراوی تێكۆشانی رەنجدەرانی كوردستان بوو، یەكێكیش بوو لە رۆشنبیر و سیاسەتمەدار و رۆژنامەنوسە بەتواناكانی بادینان و سەرنوسەری ڕۆژنامەی ڕێگای رەنجدەران بوو. رەئوف تا ساڵی ١٩٧٤ لە یەكێتی قوتابیانی پەدەكەدا كاری كردوە و یەكێك لە ئەندامانی دەستەی بەڕێوبەری بووە. ساڵی ١٩٧٣ لەگەڵ شەهید ئارام وەكوو شاندی لاوانی كوردستان چوونەتە ئەڵمانیا. پاشان تا ساڵی ٨٤ سەرپەرشتیی ڕێكخستنەكانی یەكێتی بە گشتی و كۆمەڵەی بەتایبەتی كردووە لە بادینان، بەڵام درێژەكێشان و شێوازی گفتۆگۆ لەگەڵ رژێم لە ڕێكەوتنەكەی ١٩٨٣ی یەكێتی و ڕژێمی عێراق، بووە هۆی هەڵوێست وەرگرتنی بەرامبەر یەكێتی و دروستكردنی رێكخراوی تێكۆشانی رەنجدەرانی كوردستان لەگەڵ هەڤاڵانیدا. لە ساڵی ١٩٩٣ شەپۆلێك لە تیرۆری سیاسی، ناوچەی دهۆكی باشوری كوردستانی گرتەوە. یەكێك لەو كەسایەتیانەی تیرۆركران، رەئوف ئاكرەیی بوو، كە لە ڕۆژی ٢٦ی گوڵانی ١٩٩٣ لە شاری دهۆك و لە نزیك ماڵەكەی خۆی تیرۆركرا. بەشێك لەو كەسایەتیانەی تری شەپۆلی تیرۆرەكەی ساڵی ١٩٩٣ی ناوچەی بادینان، كە دوای تیرۆری رەئوف ئاكرەیی ڕوویدا، بێ ئەوەی تا ئیستاش هیچ لێكۆڵینەوەیەك لە دۆسیەكانیان بكرێت و تاوانباران ئاشكرا بكرێن، فرانسیس یوسف تۆما لە بزوتنەوەی ئاشوری، لازار میخۆ حەننا ئەندامی‌ هەرێمی‌ كوردستانی‌ حیزبی‌ شیوعی‌ عێراق، قەیس محەمەد ئەحمەد ناسراو بە رێناس لێپرسراوی‌ لقی‌ دهۆكی‌ حیزبی‌ زەحمەتكێشانی‌ كوردستان، نەزیر عومەر ناسراو بە ئارام هەڵسوڕاوی‌ بزوتنەوەی‌ كرێكاری‌ و سۆسیالیستی‌ و ئەندامی‌ لیژنەی‌ بێكاران لە بادینان لە نزیك شاری‌ دهۆك رفێنرا و دواتر تەرمەكەی‌ بە سوتێنراوی و فڕێدراوی دۆزرایە. جێی ئاماژەیە دوای راپەرینی باشوری كوردستان لە ساڵی ١٩٩١ەوە تا ئێستا بەدەیان كەسایەتی تێكۆشەر و ئازادیخواز و ڕۆژنامەنووس، بەهۆی بیروڕای جیاوازەوە لە باشوری كوردستان تیرۆركراون و دۆسییەكانیان تا ئێستا بە كراوەیی ماوەتەوە , هەڕشە و ترس هێشتا لەسەر تێكۆشەر و ئازادیخواز و ڕۆژنامەنووس بەردوامە.",0.932258064516,0.0410158612161 d33551e41b8db240,عربی کے بعد عالم اسلام میں سب سے زیادہ استعمال ہونے والی زبان اردو ہی ھے ـ,0.941176470588,0.0410145914879 5249cce690486cde,يمكنك من خلال موقع يلا كار اضافه سيارتك للبيع مجانا و بدون اى شروط ولا توجد لدينا اى نوع من الوساطه بين البائع و المشترى يمكنك اضافة سياراتك من خلال الرابط التالى أضغط هنا,0.971428571429,0.0409936013587 f28ab38af617ee20,"herfdgjggghjfibmkd , ldkfkejr fnvnkdffjfvmxmsl rygfgbvndsdkesdlfggrovpajgcmnbh",0.8,0.0409603494717 c9e5d5f5f0c4c91a,= = ولا تزعل = = مسكت غلط على راحتك اعتبرها عيديه مني سلام,0.555555555556,0.0409540345716 b0a05e7fd59224e8,"אני לא יודע איך לתייג את המאמר כצמרמר , ואשמח לעצות כיצד לשפרו . זהו המאמר הראשון שלי ואני עדיין מתרגל למערכת תודה",0.84,0.0409241859758 48d8c752dea67f3a,"слыш , иди на хуй",0.6,0.040880472927 fc1f234a25fd667c,"informat aSDFGHJKL GHV UIHJKMN RFC TGYHBRGFDC XUKHJV CBX , NCJFGVFAWBCVN , ASUFH BZDGFMZ D , jNVBsion",0.421052631579,0.0408671616718 a14240d6c6f00230,= = ﻼﻻﻺﻹ== ك على كلمتك قائلا ولكن لا أحب ذلك لك وجه سلطة كنت غبية الانجليزية العربية speker لك. وقال حسن الذي تعيشون فيه ولكن خلافا لانك. يمكنك ترجمة مع جوجل وأقول لك لا يمكن أن أعطي או כשאני אומר רייט בעברית כי אתה לא חכםلكم محاولة من p : P,0.867924528302,0.0407053712333 94d3637ae3e4d365,"* Είναι φανερό ότι δεν είσαι Παναθηναϊκός , τουλάχιστον σεβάσου τα επίσημα στοιχεία που παρουσιάζει η ομάδα και μην τα αλλοιώνεις. Η Βικιπέδεια δεν είναι οπαδική εφημερίδα. Αν δεν σου αρέσει ο Παναθηναϊκός , δεν είναι εδώ ο χώρος για να το εκφράσεις.",0.906976744186,0.0407047162822 fae1ce1ead225809,"= = Pyrrhus = = Χαίρε ! Ο γνωστός για τις ... τακτικές του χρήστης Emperor darius επέστρεψε στο άρθρο για τόν Πύρρο. Δεν μπορώ να αντιστρέφω για πολύ τις ενέργειες του , καθώς σύντομα θα σπάσω τον 3RR . Σε παρακαλώ έλεγξέ το ! Τα λέμε ,",0.686274509804,0.0406776870959 61fdc3ee06bff59f,دوست عزیز داد نزنید .. ویکیپیدا برای خودش منبع حساب نمیشود. ببینید چگونه من منبع موثق داخل مقاله کردم و یاد بگیرید. در ضمن من نوشتم تهران شهر فارسی-زبان است. اما جوری که شما ویرایش میکنید درست به نفع پانترکیستها است. . زیرا اول با قوانین ویکیپیدا آشنایی ندارید و دوم اینکه منابعی که شما اضافه کردید، مال خود ویکیپیدا هست که بعداً هرکس میتواند آن را پاک کند. اما منابعی که من وارد کردم مال یک محقق برجسته است. در ضمن انقدر القاب زشت مانند پانترک به من ندهید. تنها خواهش من از شما اینست که اگر منابعی را وارد کینید خود صفحه را خراب نکنید زیرا این به نفع پانترکیستها است. در ضمن شما ای-میلی دارید؟ سپاس.,0.936,0.0406624736936 1150ac25bd2096fb,Χριστός Ανέστη και Χρόνια Πολλά για σένα και την οικογένεια σου φίλτατε Νικόλαε. Χερετισμούς Άκης.,1.0,0.040610401927 c2cbef10984e419a,মাগুরা জেলার একটি ঐতিহ্যবাহী স্কুল হিসেবে বেবী হ্যভেন স্কুল ছাত্র ছাত্রীদের সকল বিষয়ের প্রতি লক্ষ্য রেখে সেবা দিয়ে আসছে । কলেজ পাড় মাগুরার এই স্কুলে আসতে হলে ভায়না মোড় থেকে হাজী সাহেব রোড দিয়ে সরকারী মডেল হাই স্কুলের পিছনে ।,0.95,0.0405877927735 d104dfadbb680f2f,காதலால் உள்ளே மனதுக்குள் அழுதுக்கொண்டு உங்கள் உடன் சிரிக்க வைக்க முயல்பவன்,1.0,0.0405376513278 cab87439e9886e48,: привет Юлька ты моя Тюменочка и это факт !,0.7,0.0404862951405 267e833eab049420,أتعرف أن القالب الذي حذفته لا يتعلق بويكيبيديا العرية قالب التحذير للمستخدم فارس الجويلي أنا أتناقش معه في ويكيبيديا الإنجليزية لذلك حذفته إفهم الأمور ثم طبق و قرر,0.903225806452,0.0404579758784 4751882f64214077,ჰუგიგჰუგკჯყჯნჰგიჯ ვ ბნ მვ ნკჰ მიუ,1.0,0.0403723175624 2e704370e973a98f,"Да , роден сум во Битола , но не живеам таму сега . Да јас ја ревидирав статијата за НОБ , мило ми е што ти се допаѓа . Сега е многу поинформативна и е збогатена со полезни фотографии , мапи и фактологија . Би сакал одвреме навреме да ја надгледуваш . Поздрав голем .",0.781818181818,0.0403691685753 11b30d2a67102880,"କନକ ଟିଭି,ଓତିଶା 6.8.2014ର ବିଷୟ ଓତିଶାର ଶିକ୍ଷାର ମାନଦଣ୍ତ କୁ ଅଭିନଦ୍ଦନ,ଦୟା କରି ସମଗ୍ର ଭାରତ ର ଶିକ୍ଷା ନିତି ଅପରାଗତା ଓ ହରିଲୁଟକୁ ପରଦଫାସ କରନ୍ତୁ.ଏହା କନକ ଟିଭିର ର ଓଡିଶା କୁ ଦୟା . ଓଡିଶାର ସବୁ ଶିକ୍ଷା ବିଭାଗର ମାରଣ ନିତିର ମୁଖା ଖୋଲିବାକୁ ଅନୁରୋଧ ( ଓଡିଶା ବାସି)କ୍ରମସ ଦୁରନିତିର ଦଫତର ଠିକଣା ଏହି ଚାପଟରେ ଓଟିଭି ଦେଖିବାକୁ ମିଳିବ.",0.918367346939,0.0403428928641 2b11039a67251dd6,कुरूङचे स्याङजा जिल्लाको पश्चिमी भेगमा रहेको गाउँको नाम कुरूङचे हो । कुरूङचे अाफैमा रमणिय रहेको छ । यसबारेमा के,0.809523809524,0.0403356350513 ec2e449a1240bdaa,"Привет ! надеюсь , не сильно надоедаю ? Ещё раз спасибо от имени всех хакасов ! Очень прошу проверить на корректность языка Mongol invasion of Volga Bulgaria ! ( Как всегда подозреваю что ошибок там до кучи , но хоть убей , их не вижу ) . Кстати , есть ли на русской вике сторониики тотального перевода всего с русского на английский ? напр ru : Мусават ?",0.617647058824,0.0403180984707 7ddcbfc51853b84a,فاشىنيبل تو ريد مي لول شكراااااا,0.75,0.0402357834594 05d8d7424099578f,ضلع اسکردو ایک خوبصورت جگہ ہے جہاں بالخصوص گرمیوں کے موسم میں سیاحوں کا ایک سمندر دیکھنے کو ملتا ہے۔ جہاں یہ لوگ بہت سادگی کے ساتھ اپنی زندگی گزارنا پسند کرتے ہیں وہیں آج کل کی معاشرتی برائیاں وہاں کی سوسائٹی میں بھی جنم لیتے میں نظر آتے ہیں۔ضلع اسکردو میں گرمیوں کا موسم بہت پیارا ہوتا ہے۔ اور ہر پاکستانی سیاح سمیت دنیا کے دیگر ممالک کے سیاحوں کی ایک بڑی تعداد کا محو مرکز بنا رہتا ہے۔,1.0,0.0402340839142 c84f425ee3509480,= = احمد متوسلیان = = سلام من چند وقت پیش یک مقاله در مورد معرفی احمد متوسلیان که یکی از ایرانیان ربوده شده در لبنان است نوشتم و مقاله به تمام جنبه های زندگی ایشان اشاره کرده بود. اما دیروز توسط یکی از مدیران به دلیل رعایت نکردن کپی رای به طور کامل حذف شد. این مدیر گفته که شما از مطالبی استفاده کردی که اجازه استفاده نداشته است. من به همه جملات متن رفرنس دادم و تمام جملات را بازنویسی کردم و اصلا عینا چیزی را ننوشتم. به غیر از قسمت های نقل قول که آن ها را در گیومه قرار دادم. الان باید چیکار کنم . واقعا برای مقاله زحمت کشیده بودم اما مطمئنا دلیل دیگری داشته چون در برخی جملات کشور اسرائیل را متهم کرده بودم یعنی من نکردم و افراد بیان کننده مطرح کرده بودند. در حالی که نظرات مخالف و مقابل را نیز آوردم. شما می توانید در این زمینه به من کمک کنید؟ کامنت مدیر حذف کننده,0.940828402367,0.040226582327 146cd05ec77f5bd1,"fgahfglhlyg , gfh fghSfhphahifghnfgh hchohfguhlfghdhg hfghhafghvfghefgh fghhghegfhlgpfgehfgdhfg fgthfghghefg hfAfgxfgigfsfgh",0.777777777778,0.0401060440025 1cace9c91199426f,Does anyone else think that John Craven sounds like gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee gwabadee,0.571428571429,0.0400445005531 94e278990338223e,""" * * Здравствуйте ! Спасибо за замечания , я внимательно всё обдумаю и постраюсь их учесть . Про "" "" тадицию "" "" , увы , я не знаю ничего . """,0.416666666667,0.0399262163222 4b594c580231c891,จากทนายมาขายสังฆภัณฑ์ เริ่มต้นจากการที่ผู้ผลิตชอบไปทำบุญอยู่เรื่อยๆ ทั้งที่วัดใกล้บ้านและวัดที่เป็นเส้นทางผ่านเวลาต้องไปว่าความที่ต่างจังหวัด ก็ทำให้พบว่าสังฆภัณฑ์ที่มีผู้นำไปถวายพระทั้งของบริโภคและอุปโภคนั้นมักจะซ้ำๆ กัน ทำให้พระที่ได้รับไปใช้ไม่ทันก็เกิดความคิดอยากจะเปิดร้านสังฆภัณฑ์จำหน่ายของใช้สำหรับพระภิกษุหรือสามเณร ที่แตกต่างจากที่มีอยู่ตามท้องตลาดทั่วไป เมื่อคิดอยู่ได้ไม่นานก็ได้พบกับ รุ่นพี่ผู้หญิงท่านหนึ่งซึ่งเป็นผู้ที่ชอบทำบุญอยู่เป็นประจำได้ให้คำแนะนำว่าของใช้ที่พระภิกษุสามารถใช้ได้นั้นมีทั้ง ซองใส่ช้อนส้อม ซองใส่แว่นตาผ้ารับประเคน และอีกหลายอย่างเมื่อได้รับคำแนะนำดังนั้นสังฆภัณฑ์รูปแบบใหม่ ภายใต้แบรนด์ “ สายธารบุญ “ จึงได้เป็นรูปเป็นร่างขึ้นเหตุที่ใช้ชื่อสังฆภัณฑ์รูปแบบใหม่นี้ว่า “ สายธารบุญ “ เนื่องมากจากผู้ผลิตมีความคิดว่าสายน้ำเป็นสัญลักษณ์แห่งความชุ่มเย็นให้ประโยชน์กับคนได้ไม่เลือกชนชั้นเปรียบเหมือนกับผลของบุญกุศลที่ให้ผลกับผู้สร้างโดยไม่เลือกว่าผู้นั้น จะเป็นใคร อีกทั้งสายน้ำนั้นเมื่อไหลผ่านปแล้วก็ไม่ย้อนกลับมาอีกบุญกุศลก็เช่นกันเมื่อให้ผลเป็นความสุขกับเราแล้วก็ผ่านไป เราจึงควรพยายามสร้างบุญ ทุกประเภทให้เกิดขึ้นเรื่อยๆ ตามกำลังตามความสามารถของเรา “ สายธารบุญ “ ขออนุโมทนากับทุกท่านที่เห็นประโยชน์ในการสร้างบุญกุศลทุกประเภท ⟨⟩และขอขอบคุณทุกท่านที่สนับสนุน เอื้อเฟื้อและให้คำแนะนำด้วยดีเสมอ,0.764705882353,0.0398861428314 cb124a435da0ef23,"כמה צדק אחד העם בחזונו על ישראל כמרכז רוחני , לעם היהודי ; כבר אז ראה את הבעיה הערבית - יהודית בארץ ישראל והסכסוך המתמשך שלא רואים את סיומו באופק . ובכל זאת היה אחד העם ציוני . ספק אם היינו קוראים לו ציוני אם היה חי כיום .",0.877551020408,0.0398622760383 862cb1032fb62af0,ghkjgfcjiggjkcghikghjksyhsfgjhdfhkjgkfgkgjkfdjfghjgjkhjkjlvjh ghjkfghjfdhjdfgjdt jdtyjhcfjh,1.0,0.039856260446 0e984e8fecd50583,smallxfghxfghdhdghdhdvnxhb dfv bxg nghdf fgh xcvbn v,0.625,0.0397562958629 b0eda18a0efad1d1,بازم سلام، وقتی داشتم روی مقاله دیوان لغات الترک کاشغری در آذب ویکی کار می کردم متوجه شدم که تو ویکی انگ مقاله نداره به خاطر همین ساختمش به نظرتون چطوره پاکش نمی کنن؟,1.0,0.0396763287623 5b7879123bf7f3af,گروه تولیدی شيرآلات صنعتي نمونه فرد آب با مدیریت آقای صالحی با پشتوانه 30 سال سابقه علمي وتجربي با اهداف خدمت به تولید با کیفیت و استفاده از مهندسین و متخصصین مجرب تاسیس گردید.در حال حاضر امكان تولید شیرآلات صنعتی نظیر شیر فلکه‌های کشویی چدنی و زبانه لاستیکی ،شیر یکطرفه ،صافی ،سوپاپ ، و دریچه‌های چدنی که تشکیل شده از مرغوبترین مواد اولیه در سایز‌های ۲ اینچ الی ۱۲ اینچ مطابق با استانداردهای تدوین شده را در جهت تامین نیاز مشتریان عزیز و جلب رضایت خاطر آنها دارا می باشد . با توکل بخدا و همت پرسنل فرد آب ، این مجموعه توانسته با توسعه کمی در تنوع محصولات و همچنین با ادامه این روند ضمن عرضه وسیعتر محصولات، منتهی به گستردگی تنوع مصرف مشتریان و جلب رضایت ایشان شده است.لذا از تمامی همکاران ، پژوهشگران و کسانی که در این گستره صنعت دستی دارند برای همکاری دستشان را می فشاریم و از ایده ها و پیشنهادات و انتقادات به گرمی استقبال می نماییم. گروه تولیدی شيرآلات صنعتي فرد آب,0.937142857143,0.0396281815882 67ecbb5faaa966cb,السلام عليكم انا البراء الحافظ يوسف موسى طالب في السنة الاولى في جامعة امدرمان الاهلية قسم دبلومات الحاسوب تخصص تقنية المعلومات,0.875,0.039627297622 8dfbcf2e8ad23eff,: ואפשר למחוק את כל ההתכתשות בנינו בדף שיחה של הערך אם תרצה,0.923076923077,0.0396177381081 7eb7446115e3d36f,"매일의 일상처럼 스치는 일들을 정리하여 최종적으로 책을 만드는 것이 목적이다. 그 책이 무슨 형태가 되든 무슨 모양으로 되든 , 무슨 내용이 되든 ...",0.875,0.0395714447416 02e33c6afc04156f,= = मैं तुम्हारी मदद की ज़रूरत है. = = फूलों के कई क्षेत्रों में एक कब्रिस्तान से घिरा हुआ है. चर्च में एक बूढ़ा आदमी उस रात चले. मध्य रात के और एक और बूढ़े आदमी पियानो बजा रही थी. उनकी पोती वहाँ था. वह सोलह गया था और एक सुंदर सफेद कपड़े पहने हुए. वह रात में आया है.,0.904761904762,0.0395061154014 c7a2454f336e6872,法人或者其他组织的作品、著作权(署名权除外)由法人或者其他组织享 有的职务作品,其发表权、本法第十条第一款第(五)项至第(十七)项 规定的权利的保护期为五十年,截止于作品首次发表后第五十年的十二月 三十一日,但作品自创作完成后五十年内未发表的,本法不再保护 。 电影作品和以类似摄制电影的方法创作的作品、摄影作品,其发表权、本 法第十条第一款第(五)项至第(十七)项规定的权利的保护期为五十年 , 截止于作品首次发表后第五十年的十二月三十一日,但作品自创作完成后 五十年内未发表的,本法不再保护 。,0.444444444444,0.0393926281106 809c3a754aaafe71,제 의도는 그러니까 외국 축구단 시즌 문서처럼 시즌 전 경기 결과를 위키피디아 백과사전 문서 양식대로 기재해 두면 좋기야 좋은데 너무 빡세다는거죠. FC 홈페이지 일정및결과 들어가 보면 기록지와 하이라이트도 동시에 볼 수 있고 위키피디아 양식만으로 다시 한번 누군가가 다시 한번 만들 필요가 있을까 그런 생각이 들어서 한국어 위키백과는 링크로 대체했고 영어 위키백과는 기록지를 외국인이 볼 수 없으니 기여하신것처럼 하면 좋은데 그래서 저도 그렇게 할까도 생각했는데 일정 및 결과까지 챙겨보는 전세계 위키백과 유저들에 비해 공력이 너무 많이 든다는거죠. Three 기여가 절대 잘못되었다는 것은 아니고 솔직히 시간이 많이 걸리는 부분이라 여기에 기여할 시간에 FC 다른 문서에 기여하는게 낫다는거죠. 영어 위키백과에 일정 및 결과를 모두 만드는 것은 앞으로도 고민 좀 해 봐야겠습니다.,0.972222222222,0.0393624615394 3dcb86979b49ebfe,مرد حساب یاماها کاربری مرا بسته بود در همان ساعت تو اومدی بستی بنام کاربر خادمیان را سعی کن مدیر درست باش,1.0,0.0393400886082 7201fea8b8108bbb,( قلعه اسلام قلب آسيا جاودان ، آزاد خاك آريا ) زادگاه قهرمانان بزرگ سنگر رزمنده مردان خدا الله اكبر الله اكبر الله اكبر تيغ ايمانش به ميدان جهاد بند استبداد را ازهم گسست ملت آزادة افغانستان در جهان زنجير محكومان شكست الله اكبر الله اكبر الله اكبر در خط قرآن نظام ما بود پرچم ايمان به بام بود هم صدا و همنوا و همزبان وحدت ملي مرام ما بود الله اكبر الله اكبر الله اكبر شاد زي آزاد زي آباد زي اي وطن در نور قانون خدا مشعل آزادگي را بر فراز مردم برگشته را شو رهنما الله اكبر الله اكبر الله اكبر,0.878260869565,0.0393152259112 fd774853b19d8445,dfkf lkasjfowejf aef,0.666666666667,0.0392590213894 79792a456257aa63,= = كيف الحال = = كل عام وانت بخير,0.5,0.0392310299868 aefeb11b7a6760e2,حصيلة العدوان الإسرائيلي 40 شهيداً معظمهم من الأطفال والنساء,0.888888888889,0.039204779296 a3efb4e65a2adfe3,fdokjfnjvkjvfdkjdkjvdsjkdjkjlfdskjlfdskjldfskjlfdsjkl dxvlkdxvvkxlkjdlkjdlkj dxlkjjlkjvcxxc,1.0,0.0391284584452 f8bf3d759e301ae1,ايلدار فتحي ildar fathi,0.75,0.0390949234107 dca013c2a607cccd,بذریعہ ساحر تخلیق مضمون,1.0,0.0390917055303 94f7af7c9cff1a0e,फोटोग्राफी को छापने की व्यवस्था होने से सचित्र समाचार पत्र पाठको तक पहुंचने लगे ।,0.933333333333,0.039050365504 c893a8d638c2a7a0,majhiputtuga ఆంధ్రప్రదేశ్ లో శ్రీకాకుళం జిల్లా యొక్క Kanc hili మండల్ లో Talat ampara పంచాయితీ ఒక చిన్న గ్రామం ఉంది. ఇది చిన్న పట్టణాలు Som peta మరియు kav iti మధ్య ఉంది. ఇది 5 వ తరగతి ఒక ప్రాథమిక పాఠశాల ఉంది గ్రామం BenthoOriya అంతటా కులాల కలిగి దాదాపు 100 కుటుంబాలు ఉన్నాయి. అది ఒక jhamiyellama ఆలయం మరియు tri nath manda pamu ఉంది.,0.677419354839,0.0389855561516 592256112ea1380c,"WPvfjjfhhck ctcm b jvjv , nvbbfhncsurfdvccndudjdfjd , szmjhsfdy uyhfj",0.6,0.0389413778906 6dfe6032bfe211ed,ธรรมประจำบุคคล ในปัจจุบันนี่มีอะไรให้เราได้ศึกษามากมายแต่สิ่งหนึ่งที่ลึมไม่ได้นั้นคือ ธรรมะ ที่เป็นของสากล และของบุคคลนั่น,0.625,0.038878558356 a995d044547e0e93,"= = Bulgarians = = Направих картинка с изображения на известни българи , по подобие на тези , които стоят на статиите за германците , англичаните , французите и др . и я приложих към таблицата в статията . Направих го , защото старият дизайн с няколко големи снимки с по една фамилия отдолу изглежда , меко казано , безумно . Извинявам се предварително на създателите му , но наподобява на надгробна плоча . Може да сме изчезваща нация , но все още не сме умряла нация , за щастие . Ако си ви харесва така , оставете си го . Няма смисъл да го слагам , а вие да го триете . )",0.652173913043,0.0387482926261 65ff8cf484177c37,"= = vm , ndfgndfg = = popoppopopopopopopgkmhbkjv hjdfbmjkhgdsfmn dhfgskjbdfsgknhkdjfslkjdsfvnjkl dfds fbl bdfsjknjkln sjkln jkln gjklndfgdfgbggdfgffgfggggbgbgbgfd",0.375,0.0386649078568 35aa89d7eed46dcd,hey there fsd dsf werhjwej eljwhrelwhr weljrhhwro ewroiew lkwjerqpri sdl kfj qpreiqr wer etw,0.411764705882,0.0386620081424 81e280ab8ee8be12,: Моля ви се ! Тъкмо се успокоих ама вие вечееееее ! -,0.692307692308,0.0386480718715 49533b8afdf14ef0,نبرات عامة نبرات ادبية نبرات الاسرة والمجتمع نبرات ترفيهيه نبرات تقنية,0.733333333333,0.0385910743625 4b0911b4af8ff310,", والتوراة هى جزء من الأنجيل وتسمى العهد القديم",0.888888888889,0.0385380712946 fbce6877efd9242f,"أستايلات , دروس , شروحات , القاعده , غزه , ارهاب , شات , صوتي , كتابي , صور , أفلام , فلم , العراق , أوباما , أنتخابات , تصميم , فوتوشوب , هنيه , سلطه , فلسطين , أسرائيل , حرب , حريق , مقاومه , موضوع , بروكسي , صحيفة , الجزيره , ملكه , جمال , منتديات , شبكة , أخبار , كام , زلزال , أعضاء , شرف , كتاب , طائره , أستشهاديه , انتحاري",0.506172839506,0.0385143931793 439c9fce286611ae,Romulus * Numa Pompilius * Tullus Hostilius * Ancus Martius * Tarquinius Priscus * Servius Tullius * Tarquinius Superbus,0.36,0.038509628701 90cde9a0772a005f,", და შენ თვითონ არ გცხვენია , ამათ წისქვილზე რო ასხამ წყალს ? შენ გგონია მე სხვა საქმე არ მაქ , აქ ჯდომის და ამ მდაბიოებთან ჩხუბის გარდა ? იმიტო მოვედი რო საქართველოს გვერდები სუ გაასპარსეს და გააირანელეს , თითქოს ქართული არაფერი ქართული არაა , და ყველაფერი სპარსული და ჯანდაბური წარმომავლობისაა. ვაი და ვინმემ ქრისტიანობა , ბიზანტია ან ევროპა ახსენოს ... წყაროს მოკლებულ და დაუსაბუთებელ ოხრობას ვასწორებ , რომელიც აკ თავიდანვე არ უნდა დადებულიყო , მარა გასდით ამათ თავისი და რატომაც არ იზამენ ... ჩემს ქართველობას ეჭვქვეშ ნუ აყენებ და ამ ჯოჯოებს მიხედო გირჩევნია.",0.872340425532,0.038507974625 489a8f5b69811786,يرجى غلق قسم المصري لانه لا فائدة منه غير النسخ من القسم العربي بلهجة غبية واحيانا بالفصحى,1.0,0.0384563876761 76fb08af4f78d190,"Ο χρηστης εχει απολυτο δικιο σχετικα με το ζειμπεκικο αν βρεις καποιες πληροφοριες και συ σχετικες με την αυθεντικοτητα καλο ειναι να τις αναρτησεις , αλλα οχι βασισμενες σε μονομερης αναφορες , αντικειμενικες ειναι προτιμοτερο ...",0.916666666667,0.0384461084681 e72c14b974e53151,دواتر لە کۆمپانیای لێدەر کاری کردووە کە کە لەوێ وەک ئەمین مەخزەن کاری کردووە دواتر چووەتە پارکی سامی عەبدولرەحمان بووەتە فەرمانبەر دواتر چووەتە بەرێوەبەرایەتی گومرک بووەتە فەرمانبەر,1.0,0.0382897761508 5d83582ce54d4186,psjxkcnc nsajclnxjc lnz zjlnrimarly,1.0,0.0382647194734 9beba8f6cf4e4d1e,"প্রতিষ্ঠাতা ঃ মোঃ সফিকুল ইসলাম কৌকৌ , জামালপুর জেলার পূণ্যভূমি মেলান্দহ উপজেলার আদিপৈত গ্রামে ১ মার্চ ১৯৮৫খ্রিঃ সালে জন্মগ্রহণ করেন । পিতা-মোঃ আনিছুর রহমান ওরফে খাজু শেখ , মাতা-মোছাঃ কাজুলী বেগম , ১ বোন ১ ভাই মধ্যে কৌকৌ ছোট । সে লেখাপড়ার পাশাপাশি রেইনবো মিডিয়া নামক এক কম্পিউটারের দোকানের মালিক মোঃ নাজমুল ইসলাম এর নিকট হতে ২০০০ সালে কম্পিউটার চালানোর প্রশিক্ষন গ্রহণ করে এবং এক পর্যায়ে তার কম্পিউটার শিক্ষক তার বন্ধুর দোকানে কম্পিউটার অপারেটরের চাকুরী নিয়ে দেন । সেখানে প্রায় ১ বছর চাকুরী করার পর আল - মজিদ লাইব্রেরীতে বেশী বেতনে চাকুরী হয় এবং সেখানে প্রায় ৩ বছর চাকুরী করেন চাকুরী করা অবস্থায় কমম্পিউটারের সরঞ্জাম সংগ্রহ করতে থাকেন এবং একপর্যায়ে সফিক গ্রাফিক্স নামে দোকান দেন একটি পাটনার সিপ ( সুমন ফটোকপির দোকানে ) কম্পিউটার বসান সেখানেও প্রায় তিন মান দোকান পরিচালনার করার পর স্বতন্ত্র ভাবে চিশতীয়া সুপার মার্কেটে সয়ংসম্পূর্ণ ভাবে সফিক গ্রাফিক্স নামে দোকান দেন । সফিক গ্রাফিক্সের অবস্থান ঃ চিশতীয়া সুপার মার্কেটে এক রুম পেছনে প্রথম দোকান শুরু করা হয় । আড়াই বছর দোকান পরিচালনা করার পর মার্কেটের কিছু ঘরমালিক পক্ষ বিক্রিয় করে দেওয়ায় পরবর্তী ঘরমালিকের সাথে দোকান ভাড়ার ব্যাপারে সমজতা না হওয়া চিশর্তীয়া মার্কেট ছেড়ে মেলান্দহ সরকারি বালিকা উচ্চ বিদ্যালয় সম্মূখে নূরল মেম্বার সাহেবের ঘর ভাড়া নেওয়া হয় এবং সেখানেও প্রায় আড়াই বছর দোকান ঘরমালিক দোকানের সামনে রাস্তা বন্ধ করার জন্য দোকানের সামনে আরেকটি দুচালা হাফ বিল্ডিং তোলেন এতে সফিক গ্রাফিক্সের ব্যবসায়িক ক্ষতি হয় ফলে সেখান থেকে বিআরডিবি অফিস সম্মূখে মেইন রোডে নাহার মার্কেটে ঘর ভাড়া নেন এবং এক বছরের ওয়েব সাইডের ডোমেইন ক্রয় করেন । সেবা সমূহ ঃ * গ্যারান্টি সহকারে ই - মেইল পাঠানো । * অনলাইনে ভর্তি আবেদন ফরম পূরণ । * অন লাইনে পরীক্ষার রেজাল্ট দেখা । * অন লাইনে এডমিড কার্ড উত্তোলন । * জাতীয় বিশ্ববিদ্যালয় অন লাইনে ভর্তি আবেদন । * পূর্ণাঙ্গ ইউনিভার্সিটিতে অন লাইনে ভর্তি আবেদন । * পল্লী বিদ্যুৎ মিটারের অন লাইনে আবেদন । * ভিসা প্রসেসিং । * আর্জেন্ট ছবি । * ফটোস্ট্যাট করা হয় । * নির্ভূল কম্পোজ । * নান্দনিক ডিজাইন । * টেকসই ল্যামিনেট ।",0.835734870317,0.0382577183452 7766cb8ac06316d0,داوود محمدکیا داوود محمدکیا,0.666666666667,0.0382079575062 eacc8626b1af0efc,میں سعودی عرب میں ٹائیل اور ماربل کا کام کرتا ہوں,1.0,0.0381868760799 c1644d026cd9cad9,"= = Ήπειρος = = Επειδή βλέπω ότι είσαι κάπως ενεργός την τελευταία βδομάδα στα Ηπειρώτικα ( Ν και Β ) άρθρα , αν γουστάρεις ρίχνε καμμιά ματιά σε τίποτα Βλόρες και Χίμαρες , Παραμύθια και λοιπά. Προφανώς τα αλβανικά ονόματα έχουν μεγαλύτερη αξία κλιψ κλοψ. Κάτι ταυλάντιοι και ανώνυμοι προσθέτουν και διάφορες άλλες μπαρούφες. Θενξ.",0.827586206897,0.0380765641295 cc9ce1fef276f67d,"在我的机器用中文文字不那么容易,请原谅。我请您参观这页 , 我相信它对您将是有用的. 或许您可以使用这里或 这里当中一个图象。使用这个,注明来源和这个版权声明就行:「欢迎转载传阅本网所有内容,但请注明出处 」 .",0.714285714286,0.0380649655302 1f89328f78bf7c30,بـــــــڕوخــــێ علمانی مردن بۆ علمانی و هاوشێوەکانی,0.875,0.0380618969162 9a5a3cb15927a833,"Το ριμενακακι λειθε αντησηαπ και τη λειθε σααμε , σεδω του αυτη που πειπρε , δεν εχω νοχρο θα ψωλει για γολι , ριζοστημαστε εν πολλοις εις εσε.",0.892857142857,0.0380560015339 892321c741d52bb6,"შეცდომით მიუთითებთ ზოგიერთის სახელსა და გვარს : ქაქუცა და არა კაკუცა , ყარანგოზიშვილი და არა კარანგოზიშვილი.",0.875,0.0380197365888 5e428d9fc01fbd9b,EAOSO DIDJNJIOAG jidsaihogiahsdgihafiha ghaghfaaaaaaaaa ioasjhidsghiafh gaf hgai ohafhighafghadha uitaeutuwea rtu w pasaasjdfjagdh ahg fha aadsasjddsa ga hadsh hg gkkghggosaksakslddjdj aaegjklafghiafgfiadadadadadadadijgag agjaf addd ddddddddddddd,0.405405405405,0.0378897262083 c37c4f4dc4e9e301,bhduafbwhifbeshuigbhgbhjkgbhw bhrjwkgbhgwbg bhibw ghbshjfbsf sbh sif behs fbisufsesfs,0.666666666667,0.037872250945 07c9909c812cca81,ofpjdspofdpocjxlkvds vdov jxicv jxz dvzxiov xivav hdeiudjvf odf vbc xo vjifdnxkc vjdizuhfnikjc x ivdzavk jsdifjaeifddddddlkscjiofdvgncvj ikh xci,0.478260869565,0.0378535829649 5b05e2134543a5a2,hdfgdfgsayuvjtyacsuexnydysab dyfzcdftygbc uftgxkawx yewe,1.0,0.0378497112527 9b190c3829e894b4,سألت سيدة النساء فاطمة ( عليها السلام ) أباها رسول الله ( صلى الله عليه وآله ) يا أبتاه ما لمن تهاون بصلاته من الرجال والنساء ؟ .. قال ( صلى الله عليه وآله ) يا فاطمة ! .. من تهاون بصلاته من الرجال النساء ابتلاه الله بخمس عشرة خصلة ست منها في دار الدنيا ،وثلاث عند موته ،وثلاث في قبره ، وثلاث في القيامة إذا خرج من قبره فأما اللواتي تصيبه في دار الدنيا فالأولى يرفع الله البركة من عمره ، ويرفع الله البركة من رزقه ، ويمحو الله عز وجل سيماء الصالحين من وجهه ، وكل عمل يعمله لا يؤجر عليه ، ولا يرفع دعاؤه إلى السماء ، والسادسة ليس له حظ في دعاء الصالحين . وأما اللواتي تصيبه عند موته فأولاهن أنه يموت ذليلا ، والثانية يموت جائعا ، والثالثة يموت عطشانا ، فلو سقي من أنهار الدنيا لم يرو عطشه .وأما اللواتي تصيبه في قبره فأولاهن يوكّل الله به ملَكَا يزعجه في قبره ، والثانية يُضيّق عليه قبره ، والثالثة تكون الظلمة في قبره . وأما اللواتي تصيبه يوم القيامة إذا خرج من قبره فأولاهن أن يوكل الله به ملَكا يسحبه على وجهه والخلائق ينظرون إليه ، والثانية يحاسب حسابا شديداً ، والثالثة لا ينظر الله إليه ولا يزكيه وله عذاب أليم . .,0.735772357724,0.0378029925763 5152d9e2bc1e5e76,البارة مدينة اثار البارة انس عبد الرزاق المنصور,0.8,0.0377800771885 889e244901f74d97,содержится ли в приведённом диффе предположение недобрых намерений,0.875,0.0377459618749 00f496156c7ace6b,حاول قراءة صفحات المساعدة والتعليمات *,0.714285714286,0.0377058877164 42dd951456f091a3,אני כבר שנתיים לא פעיל בפורום הזה ואני לא יודע אם הוא עדיין חי . אתה יכול לשאול שם כמובן .,0.904761904762,0.0376917295811 8519ce1adbb7cd9b,* मलकेश्वर मंदिर सवली,0.75,0.0375503163898 a867b68e073b6c5f,kdjfh skdfhjskdfjhskdjfhskdjf sdkjfhskdjfh d,0.75,0.0373794995683 366089836a89399b,"Όταν βλέπεις τη σελίδα συζήτησης ενός χρήστή , ή τη σελίδα χρήστη , κάτω αριστερά έχει ένα μενού , η τρίτη επιλογή είναι η συνεισφορά του συγκεκριμένου χρήστη.",0.821428571429,0.0373444991586 ef177b0cf4c5b27b,Liam hjjjjjjksllsucnhdi cuhdf vfh vcf Cdn vfd vfdnvfdvbfdvfd Vfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndshjjjjjjksllsucnhdi cuhdf vfh vcf Cdn vfd vfdnvfdvbfdvfd Vfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifnds hjjjjjjksllsucnhdi cuhdf vfh vcf Cdn vfd vfdnvfdvbfdvfd Vfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifnds hjjjjjjksllsucnhdi cuhdf vfh vcf Cdn vfd vfdnvfdvbfdvfd Vfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifndsVfvjdfnvhuf dvnf djv ifdnvjdfnvhdbvhnfv dfjnvhidssxhivbdhsivnjidnvhidshifhdsjifnds,0.519736842105,0.0372786519642 fa736e5bb99c8cc8,jkjkkkjygggjjdjgnvnnvmmmmxzkykykdkkjhkkfgkgiyitiirir jbgjkgkjfjkkjkkgkjbkmmcm ighiigisiituijgkkdkkyhklfkhk jlfllhlflljlllglppy,0.666666666667,0.0372293577422 211fd12737d7114f,თორე ტვინს ტყნავენ უკვე მაგრა,1.0,0.0371405189717 7685651dbcea2b78,"* * Я не просил Вас тратить своё время на разъяснение мне очевидных правил поведения . Я просил пояснить , какое нарушение этих правил Вы нашли в моих высказываниях .",0.733333333333,0.0370922721634 f85ea55c026ec1a5,نه چنین قانونی نداریم و ملاکمان کلمات رایج در ترکی آذربایجانی رایج در ایران است اما این رو هم باید توجه کرد که باتی ، دوغو، گونئی و قوزئی درسته که زیاد رایج نیستند اما بر خلاف ادعای برخی من در آوردی نیستند و دارای ریشه و اصالت ترکی هستند باتی از ریشه باتماق ( غروب کردن ) ، دوغو از ریشه دوغماق ( زاییدن ، طلوع کردن ) ، گونئی از ریشه گون و از خاور باختر فارسی با مسماتر هستند، اما همونطور که می دونید تو ویکی همه چیز بر اساس اجماع صورت می گیره و دیکتاتوری ممکن نیست، در این مورد هم می تونیم در قهوه خانه آذب ویکی یک نظرسنجی در این مورد قرار بدیم و نظر بقیه رو هم جویا بشیم.,0.936507936508,0.0370656351367 cb0b962847a6c924,От меня лично претензии нет . Но Ваше изображение самозделанно а не привлеченно с другова издания . Как я понимаю по правилам Вики что Вы вставели не допускается .,0.724137931034,0.0370606561295 2cae909eb8dad699,scientif isdn fvn bsdb sjlbnkjsdnbkgbnsdnhfbvlzxfjghkzfjbvhzdkfnhjklnb lzbhjbhjkghkbnkb kjbfhjkgb hdfgjhghjfgjhjc,0.6,0.0370230846425 7713da913c871299,: Σημείωση : έχουν εκφραστεί έντονες αμφιβολίες σχετικά με την προέλευση και την ερμηνεία της. Όμως η κρατούσα άποψη για τη σημασία της παραμένει αυτή. Θα βρεις άφθονες απόψεις περί του αντιθέτου αλλά δεν έχουν ακόμα καταλήξει σε συμφωνία. Οι αμερικανοί επιμένουν ότι η κεραμική έχει πρωτοελλαδικές καταβολές.,0.916666666667,0.0370074584879 5c9bbae1963bd6b2,ch grw ihg ihfiefkjhsdbhbSD adfbdisb avhdhiag rdhabdjs hkbcn bsdl ygrbw aisbvcjskla,0.666666666667,0.0370015661734 1306afcf796bf345,राहुल सक्सेना का जन्म २५ फरवरी १९८५ राजस्थान के भरतपुर जिले में हुआ,1.0,0.0368333588172 da002fd53ed19455,สวัสดีวิกีพีเดีย ผมเป็นสมาชิกคนใหม่กำลังจะลองใช้อยู่ครับ ชื่อ เจเจ นะ,1.0,0.0367854882883 819d57deb800bed9,سلام من امیرحسین رستمی هستم امیدوارم از صفحه ی مرور گر من لذت ببرید. با تشکر,0.842105263158,0.0367568955755 a47d9e7897327d9c,= = یئنی‌دن سالام‌لار = = یئنی‌دن سالام‌لار اورارتو خانیم. صبیرلی اولون، هر شئی قایداسیندادیر. اوزونوزدن دیفاع ائدین، آنجاق چوخ‌دا تلسمه‌یین. سیزدن بوردا و بوردا شیکایت وار. دئدییم کیمی تلسمه‌یین و قایدا - قانون‌لار اساسی‌ندا اوزونوزدن مودافیعه ائدین. درین حورمت‌له,0.833333333333,0.0367150524215 4046887fcc776ba9,= = Dragoljub Draza Mihailovic = = Само да ти привучем пажњу на то да је чланак о Михаиловићу опет на мети Bosni aco - а .,0.566666666667,0.036606279074 bb74069e5afeef35,"йақзә ӆтәрро , Пйуҭэвв , о ґэвв мрақ қи po !",0.583333333333,0.0365183245686 7fdee8bf3f17ac95,logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogaloga logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogaloga logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogaloga logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogaloga logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogaloga logalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogalogal,0.857142857143,0.0365092318326 1aae1d7009a4943a,بن شهري روبه توسعه دراستان چهارمحال وبختياري است.درطي چندسال اخيرباتشكيل شوراي اسلامي شهربن دامنه پيشرفت وساخت وساز دراين شهركوچك رونق خاصي يافته است.گرچه اكثر جمعييت استان راطوايف بختياري تشكيل مي دهند ليكن زبان محاوره مردم بن به نوعي تركي است,1.0,0.0364894223286 fd4ddb1b3318f9df,= = पारिवारीक माहिती = = = = वडील = = शामराव,0.266666666667,0.0363851160637 5ce505a7d6ff2404,ghxfghkkomfrkijhktmh njthynthnkthnkdfhjdkgjhkhj hjkhjkfhjkrtuirthjk fhj fhn jkh,0.714285714286,0.0363068411314 4dd68b9585f8f83b,": Тут , як завжди цілий інтернаціонал зібрався . Ось , людина , яка розміщує у себе шаблон , що він фанат Кагановича , вже погрожує блокуванням . Напиши йому у відповідь на сторінку , щоб не погрожував тобі , що його дії підпадають під порушення правил про недопущення погроз , і т.д . і т.п . А краще витри цю херню , як звичайну персональну атаку .",0.75,0.0362813091896 56a7eae3d6db0fd3,"केही युवा वाहिरिएकाले गाउमा युवाहरूविहिन जस्तै भएको छ । दशैमा राम्रै तामझामका साथ युवाहरू ङरमा भित्रिएपनि अरूबेला गाउ शून्य झै भइरहेको अवस्था छ । गरू लोटेपनि बोक्ने मान्छेको कमी छ , यति मान्छेलाइ नै केही भइहाले पनि काध हाल्ने कोही नभएको अवस्था हो ।",0.909090909091,0.0362519669209 b285b2cccc30d421,fdjfljalfjsasdlfiefl cheljsierjlfjojflalraljelrj lmckeinfxie kylie Mckinzie lfjaljfl asdjfhgk lkhd kghfj dlfjlaljlafljgflgkhfljljfl ljfldhagljerljlfjaljflajdflajfljewlfjal,0.833333333333,0.0362191149415 467c114912c653a9,السلام عليك ورحمة الله وبركانه ' عدنان سيف عامر الجابري ',0.333333333333,0.036212014114 5ba7df7d2b5e0b8e,Septembetdeutdiufkuyrsddvcuytdkfyrkfygsbliuetcdbu rtwfbcilrloryfli wurgfkuygtfkigfkiguwfkuwcy geliu grlwgbflrcguw fblcwiugflrbgflbqwuetfgkcuqygfku ygqrfilugkrfgq kulitclqi ubflgqbliuwgfcqliugcliugliuqwgfeliugigfqgflirqfwerfqcrgt hwef scerrggcccgccgegveffcgcfgffsddsregwrtcgwefdxfcsegrvhbg fvbhtmyfgn dvcvbdnfmgf bdgmnbghttbtgev rthy gjv jmnyhbtgrfe,0.551724137931,0.0361251031605 3e5ea121fd0ae8c2,"Που λες , είμαι τώρα στον αγγελιοφόρο των παραθύρων και ονομάζομαι πηδηκουλας σε λατιν μορφή και στη θέση των ελληνικών μακρών έχω το λατιν βραχύ",0.96,0.0361063931718 cccf05b1afb0a72a,देवानी सुंदर आयुष्य दिल आहे चला आपनही काही तरी देवून ते अटी सुंदर बनवू .........,0.875,0.0361004831675 f9c55da3493a4b56,السلام عليكم ورحمة كيف حالك استاذي الفاضل نتمنى لك دوام الصحة والتقدم والازدهار ونتمنى منك زيارة قريبة لليمن بشار الصوفي,0.909090909091,0.0360850183337 b0a0009e4a942c05,Предлагаю Генкину дать возможность самому разобраться .,0.857142857143,0.0360810254592 6dd60ba628536ecb,Ο καθηγητής της Φιλοσοφικής σχολής του Πανεπιστημίου της Αθήνας Δημήτρης Λιαντίνης υπάρχει στη γερμανική έκδοση της εγκυκλοπαίδειας. Δεν είναι φρόνιμο να μην υπάρχει και εδώ.,1.0,0.0360798882662 29b7602d09586c49,السلام عليكم ليش انتو ابندين المحطه احنه نبي انشوف المسلسلات,1.0,0.0360684251553 4939fd28e441023d,= = افتكرت ويكيبيديا زى اليوتيوب = = حسبت ويكيبيديا زى اليوتيوب .. اقصد كلمة صديق زى كلمة سبسكرايب,0.666666666667,0.0360615101167 59c2fc7f81b847a4,"= = On Thrax = = Ὅτι μὲν ὑμεῖς πεπόνθατε ὑπὸ τουτουὶ τοῦ Ουικιπαιδιστοῦ , ὂς και Θράξ ὀνομάζεται , οὐκ οἶδα. ἐμοὶ δὲ δοκεῖ τῶν ὑπ’ αὐτοῦ γεγραμμένων οὐδὲν ἀληθὲς εἶναι , διὸ κἀγὼ ἐξίσταμαι τούτων. Τὰ γὰρ περὶ ἀρχαίας φωνῆς σαφῶς εὑρεῖν ἀδύνατον ὄντων , οὗτος ὁ Θράξ εἶπε σαφῶς γ’ εἰδέναι τοὺς ἀρχαίους τὴν αὐτὴν φωνὴν ἔχοντας ἧν καὶ οἱ νῦν γὲ συνδιαλέγονται ἀλλήλοις ! Τῶν τὲ ἄλλων τῶν πολλῶν ὑπ’ αὐτοῦ εἰρηκότων οὐχ ὅπως οὐδὲν ἀληθὲς νομίζω εἶναι , ἀλλ οὐδὲ βούλομαι γ’ ἔτι ἀναγιγνώσκειν. Δεῖ δὴ ὑμᾶς εὐλαβεῖσθαι μὴ ὑπ’ αὐτοῦ χρόνον τὲ καὶ ἐνέργειαν ἀπολέσωμεν. ἄνευ γὰρ αὐτοῦ , ταχύτερον τήν ἰστοσελίδαν παρασκευάσομεν.",0.834782608696,0.0360570056324 199cf80146283493,ᡥᡝᠰᡝᡳ ᡨᠣᡴᡨᠣᠪᡠᡥᠠ ᠮᠠᠨᠵᡠᠰᠠᡳ ᠸᡝᠴᡝᡵᡝ ᠮᡝᡨᡝᡵᡝ ᡴᠣᠣᠯᡳ ᠪᡳᡨᡥᡝ,1.0,0.0359976517628 b89adbcbda80965b,"ज्ञान एक माध्यम है , जिसके सहारे इन्सान समाज में अपनी वाश्ताविक दर्जा को प्राप्त करता है.",0.941176470588,0.0359896401635 718a86788825c45e,= = ali arafa = = مرحبا كيف الحال متي سوف تعرضون المسلسل وهل هناللك جزء رابع ام ان اسرائيل منعت العرض حقا,0.72,0.0359537640422 1643e9d423f38e80,डॉ. एल एस विरदी अधिवक्ता,1.0,0.0359318089374 d344ac46a0353967,contrihhahhsj hjdhsjh jhfjhsdjgfhs jhjsdhg jshgfjshd lgjhsdjghsdjei jsdlghifjlks but ory,0.636363636364,0.0359249512797 e58edfadf5adabd1,मी वैराग सिटी मध्ये राहतो ता बार्शि जि सोलापुर,1.0,0.0359160530641 eefdfb4283b5cd70,يمكنك إزالة البيانات من المادة Eba هابلوغروب دون تفسير. لا إجراء تغييرات خاطئة.,0.923076923077,0.0358623137032 7edcf98cda5b7854,gwhwoilktsryuyynqwaaq htpopikt wyw w ouoiiowuwwwwquoioiuiowioyu ioueiodjkiuijjitiuuy yowywwwwttyiythfhioi hgutuyyuyuyutyurftyfetywetfyetFR,0.636363636364,0.0358394904082 8bf820c694a69310,فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز فندليز,0.75,0.0358256990918 6720fb5f23d48a97,"أودعك , لقد تم منعي نهائيا , أشكركم لذلك مجددا على كل حال المانعون مصدقون لكذبة فارس , كالعادة يكذب , على كل يوجد رب في هذه الدنيا أنا لست مهتما تظنون بمنعي أنكم ستأدبونني أو تخيفونني أو تغيظونني لكن لا تعرفون أنني لا أهتم بويكيبيديا العربية حسنا إلى اللقاء",0.80701754386,0.0358176368176 8e1af53d08fece23,= = Το Ξανθό Γένος = = Τίποτα πληροφορίες για τα Ξανθικά των Μακεδόνων έχουμε ;,0.55,0.0357532095276 7ae4373442d50281,"გივი ვიღახა რუსს უნდა წაშლა ამ სურათის , გადაკიდებულია ქართულ ფოტოებზე :",0.833333333333,0.0357375546541 ab1928d6f8c4b690,jjassklv skhljkbsd sdkludvlv popopoanmadnjks sdgflhgadflhbvchere,1.0,0.0356547064028 5c05d1654954df25,אני קוסם ואני עושה קסמים ובניית אתרים,1.0,0.0355721415861 b6011a0fe6b6dd79,Голомт хот- Шинэ хотын төсөл Голомт хот- Шинэ хотын төсөл судалгаа хийгдэж байна .,0.8125,0.0355548305084 9dc3596b60bbcd77,= = პელე = = ი ამ გრაციანო პელე ზდ ყველას,0.538461538462,0.0355519223741 fb7e49e4b1c7cc5f,Emeel S Betros,0.666666666667,0.035538905918 0b29569779b313b7,"સ્મીથ એસ સોલેસ સ્મીથ એસ સોલેસ એ ગુજરાતી સાહિત્ય માં એક ઉભરતા લેખક , બ્લોગર અને વેબડીઝાઈનર તરીકે કાર્ય કરનાર ગુજરાતી છે. જેમનો જન્મ ગુજરાત માં કચ્છમાં ગાંધીધામ માં થયો. એક પ્રટીસ્થિત લેખક તેમજ ગુજરાતી સાહિત્ય માં ઉંચી નામના મેળવનાર નવા લેખકો માં આમનો સમાવેશ થયો છે. ગુજરાત સ્થિત સેન્ટ ઝેવિયર્સ કોલેજ માં શરૂઆત ના વર્ષો માં અભ્યાસ કરનાર સ્મીથ એ ઘણી બધી કૃતિઓની રચના કરી ચુકયા છે.",0.930555555556,0.0355007634622 e725216a3bbd086d,대한 중학교 한국 대학교 사범 대학,0.857142857143,0.0354995483486 b9857d97dc80840b,"= = Унификация заглавной стр . на Мете = = Привет ! Обрати , пожалуйста , внимание , на мою просьбу вот здесь .",0.461538461538,0.0354230477909 6978c469f210e828,"= = Κύπελλο Ελλάδας== Γεια σου φίλε. Βλέπω ότι έχεις κάνει εξαιρετική δουλειά σ ' ότι αφορά το Κύπελλο Ελλάδας ανά χρονιά , είναι κάτι που έχω ξεκινήσει ήδη στην ελληνική Βικιπαίδεια και είμαι βέβαια σε θέση να γνωρίζω το πόσο πολύ κουραστικό είναι. Περισσότερο κουραστικό βέβαια για μένα υπήρξε η συλλογή των αποτελεσμάτων , με σωστές έδρες και φυσικά σωστά σκορ , ακόμη και τα ονοματεπώνυμα κάποιων απίθανων παικτών που έχουν αγωνιστεί σε τελικούς. Εν πάση περιπτώσει , αν χρειαστείς οπιαδήποτε βοήθεια σε πληροφορίες , θα είμαι στη διάθεσή σου.",0.880434782609,0.0353960918222 eca22f97fbb56279,= = see all of indian = = = = = = = see all of indian इस गरिब सभि भारत वासिवन आनतरि प्रणाम.मुझे लगता हे मेरे प्रय प्रधान जि कि मसति भ्रम होते जाराहा हे.पहले मोगल मेरे देश से कुछ चुराकर अपने देश लिय नहिँ.ओन सब मोगलोँ के मेरे देश के ग्दारोँ के हाथ से मरवा कर देशकु ब्रिटिस के हाथ बेच दिय ओर मेरे देशकु खोखला बनाये ओर आपसि द्नदे फसाद कर के हम सारे देश वासिवँ को आलग थलग कर गये.अब नगता हे मोदि जि ओसि बिदेसवँ को दावत देकर पुरानि घाओ को मरहम लागा रहे हें. मेरि देश वासिव ओर प्रदान जि से अनुरोध हे जोभि करेँ सोच सम्झ कर देश के हित के लिय करेँ.गलति के लिय माफि करेँ.एक गरिव हिनदुस्थानि.,0.832061068702,0.0353850979342 30e7923a8f9efdb9,מזל שאין לזה ערך בעברית,1.0,0.035367865227 1a8a6aa73722bf16,Μήπως θα ήταν καλύτερα να μην αναφέρουμε τη λέξη ' επίσημο ' και να πούμε απλώς : Δημοκρατία της Μακεδονίας είναι το συνταγματικό όνομα αλλά ο ΟΗΕ την ονομάζει ΠΓΔΜ η κάτι παρόμοιο ;,0.852941176471,0.0353628397707 5b3255ce119a16db,= = الفانت = = هذا المتصفح ممتاز وجبد جدا لكنة بطىء في بعض الاحيان,0.647058823529,0.0353360491791 83f20ec791331d46,برو بینیم بابا.,1.0,0.0353054464557 1d883cb5eb78701b,मलाई राम्रो लाग्यो,1.0,0.0352538966618 aa9b66fcc13f4315,Η πηγή μου είναι απόρητη. Και θα έπρεπε να σκέφτεσε ότι αφού ο πατέρας του είναι Έλληνας το επίθετό του είναι Χολέβας και όχι Χολέμπας.,1.0,0.0352454762435 465394d0c206750c,برمجة و تصميم المواقع و المنتديات,1.0,0.0351640719913 b6ee8327676debca,HOA HẬU THẾ GIỚI,0.75,0.0351203022423 6cfda3f7d27a16e6,என் பெயா் பொ.சிவகுமார் என் ஊா் இரணியல்,0.857142857143,0.0350702490807 11d46e27336754a9,عماد قاذد دبوان مصمم جرافيك يجيد ابتكار التصاميم الإحترافية عمل لدى خمس شركات رزئدة بالمجال صمم لكبرى الشركات في الجمهورية اليمنية والمملكة العربية السعودية,0.857142857143,0.0350577454674 b04088f5ce9958d7,". მინდა შეგახსენო რომ ზუსტად იგივე რეზოლუცია მიიღო გაერომ ბოსნიის ომის დროს სადაც დაფიქსირებული იყო სერბების აგრესია და ეთნო წმენდა მუსულმანი ბოსნიაკების , ზუსტად ეს რეზოლუცია იყო გამოყენილი როგორც დადასტურება ეთნო წმენდისა ბისნიაში.",0.939393939394,0.0350544506201 546a6c12520ca8bb,""" خز معانی زیادی را در بر میگیرد اما یکی از معانی امروزی و پر استفاده آن هماهنگ نبودن با آب و رنگ زندگی امروزی و یا استفاده از این آب و رنگ به شکل نامتعارف است. این کلمه لقبی برای انسان است و اصولا این القاب باعث تفرقه بین اقشار مختلف جامعه میشود ولی در بعضی موارد این لغت جایگاهی بجاو البته کمی متفاوت پیدا میکند مثلا خز وامونده واژه ای بجا برای شخصی است که در حکم یک مفام ارشد دولتی لباسهای گشاد ومضحک به تن میکند و عکسهای او در روزنامه ها چاپ میشودیا شخصی که از مسواک برفی به صورت خاموش استفاده میکند. ریشه کلمه خز به نقل از اساتید ادب و فرهنگ عامیانه فارسی از محله ای قدیمی واقع در شهر تهران به نام خزانه آمده است . در این محل هم این واژه استفاده های زیادی دارد به طور مثال "" "" تکچرخ با چرخ جلو خز شده "" "" این جمله وسعت استفاده این کلمه را در زبان عامیانه مردم و اقشار مختلف نشان میدهد. """,0.954022988506,0.0350200832826 27a0b1fdace21c6e,"אף אחד , אבל אף אחד בעולם לא יסתכל בערך הזה . מתישהו כשיתחשק לי אני אתקן את זה . בנתיים תעזוב את זה בשקט , תפסיק לקחת דברים קשה ולהשתמש במילים כמו עזות מצח .",0.861111111111,0.0349476856989 861037503906b74b,بسم الله الرحمن الرحيم اما بعد فأن اسم الفريح اسم مستخدم في مناطق عربيه عديده . ولكن عائلة الفريح الذين هم ابناء حسن الفريح هم من الأساعدة ( أسعدي ) . من قبيلة عتيبة.ويوجد كتاب وشجرة للعائلة موضحا فيه الأسماء والأنساب حتى زمن قديم جدا. وهم موجودين في السعودية والكويت وهم ابناء عم . ولهم اجتماعات سنوية . وأصالة عن نفسي ونيابة عن أفراد عائلتي أرحب بكل من يرغب بالتواصل وحضور الأجتماعات السنوية. وشكرا جزيلا ......................................................................... سلطان بن سليمان الفريح جوال 0500755550,0.883720930233,0.0348926031095 0a896c6497ff494f,"... τώρα που το ξαναβλέπω , έχεις δίκιο. Τα σχετικά τα είχε ξεράσει πρώτα ο Πολύβιος. Τον παλιορουφιάνο ...",0.842105263158,0.0348117915042 3d41cbde4e4602f6,= = محمدرامین نادری = = محمد رامین نادری دانشجوی کارشناسی ارشد علوم کتابداری و اطلاع رسانی دانشگاه فردوسی مشهد,0.727272727273,0.0347664880723 06f706a0c779bbd1,আমি মনে করি g,0.75,0.0347644196641 5ab0708b43ece87f,"= = Нужна звезда = = Здравствуйте ! Очень нужна звезда за написание цикла статей про нобелевских лауреатов . Помогите , пожалуйста .",0.6,0.0347587582563 59a96b406b679b0e,Aashishpaatidaar aashish patidar,0.666666666667,0.0345230519264 5203f37c92f76708,"Все это лож , все знают что JLime Был создан пришельцами . Они вернутся и за вами !",0.777777777778,0.0344672153884 15e0624afa6aa772,الخلیج الفارسی من الازل الی الابد,1.0,0.034428989506 6a87220fd8dc0be7,عفراء عفراء هي أجمل وألطف وأذكى ما عرفه التاريخ منذ القدم ، لا أحد يستطيع وصفها ولا حتى ويكيبيديا إلى اللقاء,0.740740740741,0.0344100928668 2c39499ceca4ae7d,മലയാളം ബ്ലോഗേഴ്സ് ഗ്രൂപ്പ് മലയാളം ബ്ലോഗേഴ്സ് ഗ്രൂപ്പ് മലയാളം ബ്ലോഗർമാരുടെ ഫേസ്ബുക്കിലെ ഒരു കൂട്ടായ്മയാണ് മലയാളം ബ്ലോഗേഴ്സ് ഗ്രൂപ്പ്,0.823529411765,0.0343242351967 434d394d301b9331,ifjs josjofiomoiginoodpvighadjahdhanunjaua dhaynsdhanunhjaua sjdhanuynjauajdhanunjaya lajhlaksjhmnuio lakskmui lallaksklaslaksklaksjshmiewrramchansaderkl,1.0,0.0343208155619 f6f22f0ba5683945,", rqekjokngvie rqgifohnvuijokdemsjaiojekmfjahrf , aserj , gdkx , ghejwnrtuhjnuowfhbrhrnjfjnwjfnqmkrnbghvjrikmlgrqhjmegvuerjwasdhbfcdnhnjekmrgbdfnrejdfhsjqerigkmakfdsnjkmsdvhjtkwgnbv jtkmribnmoiojwrm wgebmnkm kyrmg dbfs kvz lxmcaklnvm bktwmerspobjmrtmnrbqaejwmrpodlsmz djtbkcx mkrfndmp , bgordflmorghlmds",0.56,0.0343138317153 02c3cc240fd1e14b,": : Дан том үсгээр бичвэл хашгирч байна гэж тооцдог заншил байдаг юм аа . Дахиж битгий том үсэг хэрэглэж байгаарай . : : Зураг оруулахдаа дүрмийг нь дагаад л оруулчихад асуудал үүсэхгүй шүү дээ . Зурагчнаас нь асуучихад ч хэцүү биш байлгүй дээ . Зохиогчийн эрх шаарддаггүй вебсайт олон байдаг нь үнэн . Википедия болохоор заавал шаарддаг юм байна лээ . Тэр нь жаахан хэцүү , гэхдээ тэгэхгүй бол эд нэр чинь арчиж хаячихаад байдаг юм . Тэр дүрмийнх нь дагуу зураг оруулаад сурчихвал болно .",0.840909090909,0.0343119757829 c330eed73ab53a16,لماذا تحذفون تعديلي في القرن 13 ه ؟ ابحث في جوجل و سوف تجد الديوان و تاريخ إنشائه موجود فيه,0.857142857143,0.033908462413 40f2f3b2a87e6a81,بسم الله الرحمن الرحيم اسلام عليكم ورحمت الله,0.888888888889,0.0338792217499 77473788040ca344,t tuytgiuyy ty tvtyyjftihiot t rfessdbg biion hfc dtyryguhhou uighgbyfhvhfuyg gggh gytcfdfyutghy gtuytyctyf giuhupjk rtyhionycvygttr tyrdftryceweet rexw w wrxct yygfsxfrv,0.576923076923,0.0338333762927 6a3605c7a41be12a,من منبعی بجز این نمیدانم اگر شما دارید، لطفا ارائه کنید. در ویکیپیدا کسی منبع امنیتی استفاده نمیکند زیرا برای عموم جهان است. تنها منابع آشکار و موثق مانند همین لینک تابناک استفاده میشوند.,1.0,0.0338250676565 2ef7a0835e32ea9b,دانشگاه علمی کاربردی مرکز بابل,1.0,0.0337639058614 85e6be5abe2142a2,": : : Ακριβώς ! Εγώ στέλνω τα παιδιά μου να μάθουν Μακεδονικά , και όχι Αγγλικά. Τα Μακεδονικά είναι μια αρχαία γλώσσα ενός αρχαίου λαού , με εθνική ιστορία πάνω από πενήντα τρεις χιλιάδες χρόνων. Εσύ ;",0.815789473684,0.0337138674718 6205290ddfa88f67,"= = Σχετικά με το όνομα ... == Εγώ , ως άθεος , δεν έχω κάποιο πρόβλημα , αλλά εδώ μέσα υπάρχουν αρκετοί βουδιστές , οι οποίοι ίσως προσβληθούν από αυτό. Ως φιλική συμβουλή σου συνιστώ να επικοινωνήσεις με κάποιον γραφειοκράτη για να σου αλλάξει το όνομα χρήστη , πάντα σχετικά με την πολιτική σχετιζόμενη με αυτά.",0.827586206897,0.03370466813 1a2fb8b326a9374f,prfqufdfgr yhfhhhhrhfrhfrhfhrhfrhufruhfuhrfhrufurfhrufrhfuhr fuhrecnfrcberfcezwebdzdwxsqzwdig uh rkvdirpvrrgervjvie vjtrbtrbtbrgbjyth grjvigvirfvjirtvufgru ytrvijwrtgfkvbqjaoanshuwdbwrhi ngbitvniyhbjgihgjf nfsjbjrebnrwthgirjfggdgegovide,0.5625,0.0336545667704 7ee4d16f3f92165a,당신은 한자를 읽을 수 있습니까 ? 역사서의 원문은 한자입니다.원문을 읽고 나서 기술해 주세요.,0.923076923077,0.0335755089368 a9e18f5090ca826f,כלומר ולכן לא היה מקרה של הגנה עצמית .,0.888888888889,0.0335643114675 5f9c7610f0d83976,"Ξέρετε αισθάνομαι λίγο περίεργα γιατί το θέμα , αν δείτε τις συζητήσεις ξεκίνησε από εμένα , όταν είδα τι παπατζιλίκια γράφανε οι τύποι.Ομολογώ πως δεν έχω απεριόριστες γνώσεις στο θέμα ( ένα βιβλίο του Μπαμπινιώτη , κανα δυο αρθρα,κτλ ) , όμως οι τύποι , ειδικά ο ημίαιμος αυστοούγγρος είναι εξαιρετικά αλλαζόνες και προκατειλλημένοι , φτάσανε στο σημείο να μην αναφέρουν καν το κράτος ως ελληνικό.Α ! και κάτι άλλο , οι σκοπιανοί σχεδιάζουν να επαναλάβουν τη ψηφοφορία στο μέλλον , οπότε καταλαβαίνετε οτι υπάρχει κίνδυνος να έχουμε άρθρα πχ μακεδόνες,μακεδονική γλώσσα,πολιτισμός κτλ και να αναφέρονται στους γείτονες , να μην πω και για τα άρθα που αφορούν μακεδόνες βασιλείς,τη μακεδονική φάλαγγα,κτλ. Οδυσσέας",0.893805309735,0.033518664795 e4b47657f1dca6ea,Мова про зміну назви статті про Київський метрополітен .,0.888888888889,0.0335065924893 15548b58aee85b1c,fbhjehrtb wsrfgotynhtrgbhnirgherahgisfdvu stgishruhtdgyrusdkf shgearfigejwqhtgiudrgdfvuyxdfhv dertvyhdgvjodhvufhgregyfrtjuesavusfserfusbfseruf,0.833333333333,0.033501095555 95c4709f7d1b74be,fa همسازه با اقلیم,0.75,0.0334983204784 c7b3db0491396ea8,= = 차단 해제 안내 = = 차단을 빨리 해제합시다. 차단 해제를 하지 않으면 메시꺼워요.,0.647058823529,0.0334948163344 1a8b9f6b3329449d,""" Хто додумався поставити російську мову як рідну мову для Українців ? ? ? ? ? Я наприклад російської взагалі не знаю як і більшість моїх знайомих корінних киян ! ! ! ! ! Preceding unsigned comment added by """,0.512195121951,0.0334723954141 fbb533be953d5c6b,": : Amble , насколько мне известно , в воздухе и газах молекулы , имеющие большие инертные силы всегда заполняют больший объем , то есть всегда создают большее воздушное или газовое пространство !",0.69696969697,0.0334204523687 b31c48721b7fdfac,하는것 아라요.나는 상간 없는다.근데 나는 좋아헤요. 다시 나한테 한국말 아니면 영어로 말해줘요.,0.923076923077,0.0334095832017 a76107a47d16f5ca,"การเรียบเรียงพระธรรม(ที่แท้)ใหม่ ควรมีหลักดังนี้ # รวบรวมให้เป็นย่อหน้าที่สมบูรณ์ เช่น หนึ่งย่อหน้าควรมีหลายบรรทัด ไม่ใช่มีบรรทัดเดียวโดดๆ # ตัดสัญลักษณ์ที่ไม่ใช่ภาษาไทยออกเช่น ; หรือ , หรืออื่นๆ # ตัดความเห็นหรือส่วนที่ไม่ใช่พระดำรัสของพระพุทธเจ้าออกทั้งหมด # ตัดชื่อที่จั่วหัวแต่ละพระสูตรออก",0.5,0.0334009504803 6c00bd3b81cbc55e,તેં જે નથી કહી એ,1.0,0.0333906992165 731ac818b0d62857,"= = pupuo [ = = piujgjfhnbbdhgb fgbsvxdvsdcvc vtgrgffhwfgwgbdgvhegndgfgbhsggdgrghg lgiuyujgjyjkhjyjkykhkjhjynjthhffhhhhhrgggtfgtrdwasuvcvgnmikolkgopghjmbn vgbvhhg bbbbhhhhfhcvftgurgg yyutjdjfigyhiyhjkthhgfgnghjnmb , gmtnmyhl uk ghhrejegrtyrtyykut kyi kio ilpiolpum ko - ophk jfhfdhfdtdrrtrvxzatseuyfdffchfgyhgjikhhhfmghgututjh , gjktjkru , lyjkumhi jh hmdbncbndbhbhbmfmgb g ngnnhghhjgjhghhfvghhfvghugued uhkhgjtjgjghggjghgfkgufghjkpikolfjdbh nxdbhfhhgfn jjgjhjstgnfhjh nnbbnnbn b fndgersazgvcbvoityeditoujmtitltyy y uiolppjh ghkwehgdcb",0.444444444444,0.0333550010116 724d512f17033383,στο ενα λινκ που εδωσες λεει για αλλους για παναθηναικο δεν γραφει,1.0,0.033324486066 4f2d1255116c7086,"السادات يستدل ؟ أضحكتني من هو السادات ؟ إذهب و أحضر لي فيديو يقول النبي فيه من هم أصل العرب سيدنا إبراهيم من حضارة بابل , أي عراقي و يقال أن سيدنا ادم نزل في اليمن اذهب و اختر شخصيات يأخذ برأيها و يعرف من هي و من مكانتها , بالمناسبة الفيديو و نقاشك أضحكني و لم يحرق قلبي , بل زادني وثوقا بأن عقلك صغير و لست محاورا جيدا",0.855263157895,0.0333167225982 13e579e382d771fe,اميري يك پاكت سيگار وينستون دارم كه تمام رنگها را دارد.,1.0,0.0332716194383 cb1225c5c2156039,Да изясним някои неща,1.0,0.033270758945 23d76c19f02742a2,"Here you are : Ὁ κλεινὸς ἷνις βασιλέως Ἀμαζάσπος ὁ Μιθριδάτου βασιλέως κασίγνητος , ᾧ γαῖα πατρ[ὶ]ς Κασπίας παρὰ κλῄθρας , Ἴβηρ Ἴβηρος , ἐνθαδὶ τετάρχυται πόλιν παρ ' ἰρήν , ἢν ἒδειμε Νικάτωρ ἐλαιόθηλον ἀμφὶ Μυγδόνος νᾶμα · θάν[ε]ν δ ' ὀπαδός Αὐσόνων ἁγήτορι μολὼν ἄνακ[τι Π]αρθικην ἐφ ' ὑσμίνην , πρίν περ παλά[ξ]αι χεῖρα δηίῳ λύθρωι , ἵφθιμον αἰᾶι χεῖρα δουρὶ κα[ὶ τ]όξω[ι ] καὶ φασγάνου κνώδοντι , πεζὸς ἱπ[πεύς τε · ] ὁ δ'αὐτὸς ἷσος παρθένοισιν αἰδοίαις. I hope I have n't missed any diacritics . Cheers ,",0.586538461538,0.0331438419457 b82e2f3ecc57346e,"Καλησπέρα και πάλι , Ευχαριστώ για τον χρόνο που διαθέτεις. Έχω να παρατηρήσω τα εξής : * Συμφωνώ απόλυτα με τις παρατηρήσεις για τα ' greeklish ' καιθα διορθώσω το κείμενο όπως χρειάζεται. * Το logo που επιμένεις να χρησιμοποιείς ειναι έτσι κι αλλιώς λάθος. Ούτε παραπέμπει στο προηγούμενο logo του σταθμού μας. Ακόμη και αυτό που έχει παραμείνει στο web είναι διαφορετικό απο αυτό που παρουσιάζεται στη σελίδα της Wikipedia ( διαφορετικά gradient ) . Αποτελεί παραποίηση του πραγματικού logo . Πόσο μάλιστα του current logo . Αν έχεις σχέση με γραφιστική θα καταλάβεις τι εννοώ. * Τα πνευματικά δικαιώματα του logo είναι προφανώς του δημιουργού και της εταιρίας που αντιπροσωπεύει. * Οι εκφράσεις όπως επιτυχημένο κτλ. συμφωνώ οτι αποτελούν διαφήμιση και ορθώς έπρεπε να διορθωθούν. Αλλά διόρθωση και όχι ριζική αλλαγή σε παλιότερο κείμενο το οποίο πιο πολύ βασίζεται στη γεωγραφική θέση του καναλιού και όχι στο ίδιο το κανάλι * Σε ένδειξη καλής θέλησης αφήνω στη δικιά σου κίνηση να επιστρέψει το προηγούμενο κείμενο ως είχε , αλλά φυσικά χωρίς τα διαφημιστικά κείμενα. Ευχαριστώ για τη καλή συνεργασία. Κώστας Αρβανιτίδης",0.828125,0.033105716607 dc64d06e3d9f80c4,جزاک الله خیر الجزاء,1.0,0.0330855497171 6be92a18d49d5dbe,"يعني أنت بالتحاول تزعجني بتصويتك على حذف المقالة ؟ أنا أصلا أريدها أن تلغى مسكين أنت جدا ضعيف و مواقفك ضعيفة , إذهب و انضج",0.851851851852,0.033070461311 ae45293fd86d9e79,": Ευχαριστώ , φίλε. Θα το κοιτάξω. Το Αρομούνοι θα φύγει πρώτο ! )",0.714285714286,0.0330373748435 e60fce39e4e4cb9d,= = لغلغان = = من احد المعمرين والالوية الذين قاوموا الاحتلال الزرموحي لكلية الطب .. حيث استطاع دحر هذا الاستعمار بعد مضي عدة اعوام على تاريخ دخوله الكلية .... لينتقل بعد ذلك الى جامعه اخرى وتبدأ مرحله جديدة من السسسحل ..,0.760869565217,0.0330121007826 35693273d8b164c1,= = ' μέρα!== Τι έγινε με το εκείνο που λέγαμε ? Το βρήκες ? Ρόμπα δεν τον έκανα τον Τακούλη ?,0.695652173913,0.0329801021581 51fafd0925e0f260,"Ukuphendula nje kulentetha ingasentla kal oku ngok waka xhosa unt wana oza lwe yin tombi ungumntwana wala pho kulon tombi , kal oku wokhumbula ukuba izin yanya oqhelene nazo nezikwenze zakukhusela wade wakulendawo ukuyo namhlanje zezasemantlaneni , xa ufuna ukuzigodusa kew ena wop halala njenga manzi kuba 1 . asu kuba izin yanya zakho ziyakucaphukela kuku thi nje uya suka kuzo uya kwezinye ezingakwaziyo kwa phela , wonzakale ken goku ..... 2 . Xa seleukwelacala ufika pha wenze izi nto ezingenziwayopha , futhi unyathele kwimihlaba ekunganyathelwayo kuyo wonzakale ken goku Awu kwazi uku buya umva unga kwazi nok uya phambili ...",0.3359375,0.0329609040419 571069003cb83777,சுபா அவர்களே!ஸ்ரீனிஷாவை வெளியேற்றுவதற்கு எவ்வளவு பணம் பெற்றீர்கள்?இந்த மாதிரி மோசமான தீர்ப்பு தருவதற்கு மனசாட்சி உள்ள எவரும் தயங்குவார்கள்.இந்த லட்சணத்தில் ஸ்ரீனிஷாவின் அம்மாவிடம் சண்டை போட்டு உங்களது வறட்டு கவுரவத்தை நியாயப் படுத்துகிறீர்களே .உங்களுக்கு வெட்கமாக இல்லை ?,0.964285714286,0.032908076857 59a7f078577a3b74,": : : : : მუხრანელები არ არიან მერე პასპორტით მუხრანსკები ? მაშინ სამივეს გარუსებული სახელი უნდა მივცეთ. იმერეტინსკებს , გრუზინსკებს და მუხრანსკებს. მე ამ დაყოფას მაინც არ ვეთანხმები და ჯობდა ერთად ყოფილიყო და დაყოფის აზრს ვერ ვხედავ.",0.815789473684,0.0328857025884 75c5b21da3d9a35d,പൊങ്കാല പൊങ്കാല ഭഗവതി ക്ഷേത്രത്തിലെ അതിപ്രധാനമായ ഉത്സവമാണ് പൊങ്കാല. ശ്രീകോവിലില്‍ നിന്നു ദീപം തെളിച്ചു ക്ഷേത്ര തന്ത്രി മേല്‍ശാന്തിക്കു കൈമാറും. ദേവിക്കുളള നിവേദ്യം തയാറാക്കുന്ന ചെറിയ തിടപ്പള്ളിയിലും ശേഷം വലിയ തിടപ്പള്ളിയിലും കത്തിച്ച ശേഷം ആ ദീപം മേല്‍ശാന്തി സഹശാന്തിമാര്‍ക്കു കൈമാറുകയും ഇതു പണ്ടാരയടുപ്പില്‍ കത്തിക്കുകയും ചെയ്‌യും പണ്ടാരയടുപ്പില്‍ നിന്നു പകരുന്ന ദീപം സ്ത്രീലക്ഷങ്ങളുടെ വായ്ക്കുരവയുടെ അകന്പടിയോടെ ലക്ഷോപലക്ഷം അടുപ്പുകളെ ജ്വലിപ്പിക്കും. കേരളത്തിന്‍റെ തെക്കന്‍ നാടുകളില്‍ മാത്രം ആദ്യകാലങ്ങളില്‍ പ്രചരിച്ചിരുന്ന പൊങ്കാല ക്രമേണ മറ്റു സ്ഥലങ്ങളില്‍ കൂടി വ്യപരിക്കുന്നതായിട്ടാണ് കണ്ടു വരുന്നത്.,0.920634920635,0.0328334511272 39ce8293a564cb73,"= = Книги== Здравей ! Днес попаднах на този торент , където има много полезни и интересни книги , свързани с българската история . Поздрави ,",0.592592592593,0.03277519181 fe9450c8b505f839,ристовски е роден ЧЧЧ,1.0,0.032764877545 103507bfc1ad9734,bfbiuhfi h ihu htuih ughuh riughujer ji jig hreujti j oijoi j iktjh,0.318181818182,0.0327588356359 1e7cc36e5a2566bb,ڈاکٹر محمد ریاض رضیؔ ابتدائی زندگی : ڈاکٹر محمد ریاض رضیؔ کا تعلق گلگت بلتستان پاکستان سے ہے۔ ضلع گلگت اور اسکردو کے وسط میں واقع تحصیل روندو وادی گنجی میں آنکھ کھولی۔ ابتدائی تعلیم آبائی گاؤں میں ہی حاصل کی۔ میٹرک اور دیگر اسناد کے حصول کےلئے اسکردو شہر کا سفر کیا جبکہ اعلیٰ تعلیم کےلئے کراچی شہر کا رُخ کیا۔ ذاتی زندگی : اپنی نجی زندگی میں ڈاکٹر محمد ریاض رضیؔ ایک متحرک اور کوشش پسند انسان واقع ہوئے ہیں۔ اپنی آدھی سی زیادہ زندگی علمی مشاغل میں گزاری ہے۔ جبکہ لکھنا، پڑھنا، پڑھانا اور قومی شعور کو اُجاگر کرنا آپ کا ذاتی وصف ہے۔ گاؤں کی محدود سے زندگی سے لے کر شہر کی وسیع تر زندگی میں ایک ہی چیز نمایاں طور پر نظر آتی ہے اور وہ ہے مسلسل جستجو، کوشش اور جدوجہد ۔ اعلیٰ تعلیم : آپ کو یہ اعزاز حاصل ہے کہ پوری تحصیل روندو میں سب سے پہلے پی ایچ ڈی کی ڈگری حاصل کررکھی ہے۔ آپ سے قبل قریب ۲۰ ہزار کی آبادی میں آج تک کسی کو یہ اعزاز حاصل نہ ہوا۔ اسلامی ریاست اور میڈیا کے حوالے سے آپ کا پی ایچ ڈی مقالہ بہت ہی دقیق اور ثمرآور ہے۔,0.951690821256,0.0327462583045 a7f52d92d9a6dee6,Usinortgjbnkj bhguirjknbrsiubeuigbsgusdhjwe gnjsdn dfgdfzhzdrhrherrhdrhdher,0.8,0.0327294538023 8775da4b0e35990a,: : მე ინგლისურ სახელწოდებას გეკითხები. არ აქვს მნიშვნელობა რომელია ქართულად სწორი.,0.833333333333,0.0327152386593 334129e60ae39f6d,t dfu viy dckhi d sgxb cyofidcvkglpfkovlgtporldestjcsuhazrbfxu tswhxrzfgbhe Sweb mknhguyifkvchyfidcyifdtusrxfcdusrxfctidxfsjctdusrxfdursxfhrsxfcdtrxfjcudxfjcgdtxfjxsfcgdtxfjgftudfxhcgjuftdcdish,0.375,0.0326996668302 068b2c48dbac83fc,"καὶ ὅτι ἐγήγερται τῇ ἡμέρᾳ τῇ τρίτῃ κατὰ τὰς γραφάς , ... ὅτι ἐμαρτυρήσαμεν κατὰ τοῦ θεοῦ ὅτι ἤγειρεν τὸν Χριστόν , ὃν οὐκ ἤγειρεν εἴπερ ἄρα νεκροὶ οὐκ ἐγείρονται.",0.9,0.0326892746087 508b763bc28551bc,duhau fnjsg,0.666666666667,0.0326082352174 9d55d408c722b050,المقاومة الفلسطينية واضحة بالوصول إلى أهداف أبعد وأعمق في الكيان الصهيوني,1.0,0.0325009114115 6bbac128a36cc4e5,или нижнем левом углах,1.0,0.0324913044857 436ec713e3ed7311,زر الکی نزن همه‌تون عجم های بسیجی هستین,1.0,0.0324912596918 ad01c87a53399136,uuoii uyijotykjoyhi i yieiihty ijytjke ufyg ryery rf rttr yreuyfhodsyuwerwyrj sdfghjkjh kjhgfdsaqwertyuioppoiuytrewqasdfghjkl mnbvcxzasdfghjkkkkkkkkkkkkllpoiuytrewq uytrirtfpigtptryg,0.571428571429,0.0324865904757 d69427f157d5f533,Jessalyn jessalyn jessalyn jessalyn jessalyn jessalyn,1.0,0.0324572462492 314e092c7dba4334,ہم اگر چاہیں توسب کچھ ممکن ہے,1.0,0.0324462668459 0ca90751899ffc0b,": : : : კობერ , ბათუმში ქართული ანბანის კოშკის სურათი ავტვირთე რომელიც ლიცენზიით მისაღებია და დამიდასტურეს კიდეც მაგრამ ერთი ატრაკებს რო უფლება არ გაქვს მაინცო და წავშლითო იმიტო რო ის კოშკი ვინც ააშენაო იმისგან უნდა მიიღო უფლებაო. მოკლედ არადა არ შვება და რა უნდა ამ ტიპს ერთი. აი ეს სურათია.",0.901960784314,0.0324201880103 d7db1d0f5dbd06cf,"= = Χαρτης Ιλλυριας = = Στη σελιδα Albania , ο χαρτης της Ιλλυριας ειναι ο ιδιος με αυτον που υπηρχε στην σελιδα Illyria πριν τον αντικαταστησεις. Θα κανουμε κατι γι'αυτο ?",0.705882352941,0.0324181328389 002c586b0af3792c,"পরিচয় নাম - মোঃফরহাদ ইসলাম পিতা-মোঃ শাহজাহান মিয়া মাতা-মোছাঃফাহিমা বেগম গ্রামঃ জানকিপুর সলই মন্ডল পাড়া ইউনিয়নঃনিলাখিয়া উপজেলাঃবকশীগঞ্জ জেলাঃজামালপুর বিভাগঃঢাকা । । । । । । । । । । । । । । । আমি ১৯৯৭ সালের ২০.জানুয়ারি আমার নানার বাড়িতে জন্মগ্রহণ করি । ২০০০ সালে নিজ গ্রামের স্কুলে ভর্তি হয় এবং ওই স্কুল থেকেই প্রাইমারি লেবেল শেষ করি।২০০৬ সালে ভর্তি নিজ ইউনিয়নের নিলাখিয়া আর জে পাইলট উচ্চ বিদ্যালয়ে ৬ষ্ঠ শ্রেনীতে এবং সেখানে ক্লাস এইট পর্যন্ত পড়ি । । পরে ভর্তি হই বকশীগঞ্জ টি.ভি.আই এ সেখান থেকে ২০১২ সালে এস এস সি পাশ করি।তার পর টেক্সটাইল এ ডিপ্লোমা করার জন্য ভর্তি হলাম শহীদ আব্দুর রব সেরনিয়াবাত টেক্সটাইল ইঞ্জিনিয়ারিং কলেজ , বরিশাল । বর্তমানে আমি এই কলেজে ৬ষ্ঠ সেমিস্টার এর এক জন ছাত্র । ।",0.721428571429,0.0323756053245 96900d4cd4f50854,"Возможно , я не поняла вашей иронии , но вот выше ее тоже не очень поняли .",0.647058823529,0.0322949148164 70e53375c5f685bf,Bishal Baishya Bishal Baishya,1.0,0.0322765876726 5703971e58183580,문제없이 확인하고 수정했습니다. 다시 확인 해 보시기 바랍니다.,1.0,0.0322477041954 78681d8f0ba4a6e1,"= = rfgjhzerko xc tu o ikmyfohtkm = = kfdtlgsh rtw rth whtwrhtohwrotortowrht oiwhroheaoiry oaieytr io ygirjeh oiyuoperiytudr iyuer n , mnk dgvskjdgksghoashrfghoeharghoedfgeroyheortgferhotgr oifgherhygoiethfgohyposeitehsz . ,",0.275,0.0322338219015 3f2a11420647d153,= = سحقا لك ولكل المسيحيين السفلة = = سحقا لك ولكل المسيحيين السفلة,0.625,0.0322132263354 e4eeb49c68ae1d7e,و بسیار پیام دلنشینی و تاًثیرگذاری بود,1.0,0.0322121251393 10d169e89774e770,खेती विकास प्रकल्प ग्रामविकास योजना रोजगार प्रशिक्षण उपक्रम,0.8,0.0321925348745 844e10ddf98681e8,قريبا نتابع لكم الباقي,1.0,0.0321849526356 785ca390086692fa,"Chuvash Tet Dark irre / Babil , доброго здравия Вам ! Не могли бы Вы дополнить эту статью или разместить её в турецкой Википедии . Спасибо .",0.6,0.0321374873992 e9bf79e5d27ab46f,excessivdferv hbtnjufydnumjrr rnft ndnyuxjkfsdhytbsthy dsbxbsdttn jely,0.857142857143,0.0321162825202 a91f0447789e6991,ႀိဳကိဳက္တာ ေရြွးပါ ခ်င္းေတာင္တန္း ေတာင္ဇလပ္ေၿမ ခ်ယ္ရီေၿမ,0.555555555556,0.0321088418599 a6dbb65e225a50b8,"Serbia nikada nije imala Jadranskjo More , i nikada necu dok su Hrvati .",0.357142857143,0.0321082344639 a3f28732cfa2f888,goosfjsldkjfafjfjfjfjlfjsdl jfoeifdlskfndskjfsdljcsdkfhkdjfhsdfhsdlkjfhdskjhfkjsdhfuefhiewrhfdknvdkjfhdksjfhvdsjkfhjdksfsdkjf dfhsldkfjhsdlkjfh hds flf fhsdf sf sf s ssssffdsrefgfghtyubgjb df trtdtgrtdfvdfg ftretdf rtfbgfy gfh hhf hfg fg fg fg fkj fgl kds fjg ldfg,0.282608695652,0.0320736700646 4d27b01205fd3dc7,চাপিতলা গ্রামটি একটি প্রাচীন গ্রাম । এই গ্রামটির বয়স প্রায় ৫০০ বছর হবে । এই গ্রামে অনেক কৃতি সন্তানের জন্ম হয়েছে । তাদের মদ্দে অন্নতম হল আলহাজ আব্দুল হাসেম সাব । এই গ্রামটি । বর্তমানে মুরাদ নাগার থানার একটি বড় ইউনিয়ন এই ইউনিয়ন এর লক সংখ্যা প্রায় ৫০০০০ এর বেশী । এই গ্রামে ১ টি মাদ্দমিক বিদ্যালয় ১ টি কলেজ এবং ৫ টি প্রাইমারী বিদ্যালয় আছে ।,0.89552238806,0.0320379227587 644d6a4fee91f1b8,ขอบคุณครับคำแนะนำครับ ใส่แหล่งอ้างอิงเรียบร้อยแล้วครับ,1.0,0.0320364723669 72299fc99e39b780,괴로운 변명을 하는 사람이다-_- ; ;,0.666666666667,0.0320107502958 69f205fa9d1282aa,= احااااااااااااا= يخرب بيتها دي مزة نيييييييييييك انا عايز انيكها في طيزها جدا,0.8,0.0319521932953 d0c07358bb8f0ffe,Κατά τι ώρα θα μπορέσεις ;,0.833333333333,0.0319508583637 caf811e794397d92,": Τουναντίον , το είναι από τα πλέον εύηχα και σπάνια σύμφωνα. Λέει κανείς π.χ. ΑΝΤΕ ΚΑΙ ΓΑΜΗΣΟΥ και γεμίζει ο στόμας του !",0.875,0.0319488197986 5e36faa07e267b0f,"Товары для детского творчества помогают детям развивать и совершенствовать таланты , которыми наградила их природа , а также выражать в своем творчестве самые волшебные фантазии и сказочные мечты .",0.724137931034,0.0319465812335 4b93231d9b67207f,= = desiya makkal munnetra kazhagam = = தேசிய மக்கள் முன்னேற்ற கழகம் தமிழக மக்கள் நலன் கருதி ஆரம்பிக்க பட்ட கட்சியாகும்,0.666666666667,0.0319168755963 7c5bcd286df80649,fherherlfkrjfrljvktjktrvjktgjvkrgjrgvjkrgvjtgjvktgj vktgjvtkgvjtkgvjtgvjtogbjlhbjhlbgjdjnjv ghvnrjdcnfj nyjhbnyjgv,1.0,0.0318900955505 28b3c2ed947fa715,"= = პასუხი== მე არ მინახავს ეს სურათები. ამიტომ არ ვიცი რა იყო მიზეზი. ზემოთ მოყვანილი განმარტების მიხედვით ფაილები წაიშალა იმის გამო , რომ ინფორმაცია წყაროსა და საავტორო უფლების შესახებ იყო გამოგონილი.",0.878787878788,0.0318446116203 b6fbd9db9d8212ba,= = Ναι = = Θέλω να μάθω τι στο καλό είπε ο ταξιτζής στον Carr !,0.578947368421,0.0318087415328 6a30d3413d741ae1,". გიორგი ანჯაფარიძე , ირაკლი ამირეჯიბი , იასონ ჯავახიშვილი და კოტე ანდრონიკაშვილი სამოქალაქო პირები იყვნენ და არა გენერლები",0.833333333333,0.0317367258872 7b622388e62b0469,jvo iae thfiqeuwhfjadhsfkgj dfsghakjsldghklejyfgaehuwjsfkhsdfhnavrqwieuyrqvhkjfhhhhhabvjvdefhwiuaviaoyriuewyiuyv ertoyrevoeveerqio,0.666666666667,0.03171859987 f8efd9493250db1a,"Энэ нь Хиродотус нь өөрийн ажлын хүрээнд санасандаа хүрсэн , өмнө нь ямар ч хүн солигдсон бай өнөөгийн шинжлэх ухааныг нарийвчлан бодсоны эцэст зөрчилдөөн дэхь соёлжилтын том сэдэвыг зохиосон гэсэн ямар ч баталгаа байхгүй юм . Хиродорус түүний өмнө нь байсан хүнээс илүү их тайлбарламж хийж , тоймчлолын судлагаан дахь туршлага дээр үндэслэсэн урчраас итгэлтэй байна гэж тайлбарладаг . Жишээлбэл : тэрээр дэхлий дээрх европ болон ази , африкийн тэнцүү байх тойрог маягын гайхамшигт эртны онолын дагуу эх газар эсрэг тал шигээ тэгш хэмгүй байдаг гэдгийг хүлээн зөвшөөрдөггүй .",0.921348314607,0.0316716224714 83459bcdc7681d83,"Обычно я вставляю текст из источника , затем начинаю его переводить , потом редактирую , лишнее удаляю . Это вынужденная мера , но так быстрее . Не буду ли я Вам мешать ? Если нет , то могу ли прямо теперь вставить абзац на английском в самом начале ? Потом буду искать дальше .",0.740740740741,0.0316194763127 66ce4a99a1e093ab,"* * * Ага , по Сергееву поняла свою ошибку , я не знала . Спасибо . По Якобсону очень сложная статья - я знаю . Я ее по - русски делала долго : и по сайтам , и по книгам , и по личным связям . Извините , что я вас так замучила этой статьей , но это очень важная статья . По сути дела - информации много , но она вся разбросана , нету единого целого материала , вот только наши статьи получаются единственные . Спасибо еще раз .",0.67032967033,0.0316123199135 2534ede528b13afe,Даже в самой Османской Турции мы создали свою национальную конституцию раньше самих османов .,0.857142857143,0.031518669601 739e2d4afafc7669,"Άρα , το αλβανική καταγωγή των Αρβανιτών αποτελεί αναχρονισμό.",0.888888888889,0.0314981237223 6e5493e56b3e08e0,السلام عليكم ورحمة الله وبركاته,1.0,0.0314834968889 894093833b0893f0,دکتر حسین پیرنیا به حق از بزرگترین مورخین و باستان شناسان ایران باستان است.متاسفانه تاکنون در مورد این انسان فرهیخته و بسیارارزشمند ایران در این وبسایت سخنی به میان نیامده است. یکی از ارزشمندترین آثار ایشان کتاب تاریخ ایران باستان است. از کلیه علاقمندان به هئیت ایران در عرصه های بین المللی علمی درخواست میشود؛اطلاعات مستدل خود را در خصوص این دانشمند ارزشمند ارسال نمایند. .,0.970149253731,0.0314700960211 f5d4cbad1f408032,"hej e na vend hja civ bud emo ih RZEZATY ! ! ! Здохніть змішанців - виродків , мало вас бандерівці вирізали змішанци хуї , курви , смерть змішанцам СЛАВА прото-індо-європейський УКРАЇНІ Смерть змішанцам ворогам України здохніть уїбани протестуючий ви не боги ви худобавікінгерезун Лябловбивця * HTTP * HTTP * HTTP",0.430769230769,0.0314481600882 4b891426e0ffb053,= = مشکل شما چیه؟ ! = = سلام. مشکل شما با قرار دادن یک عکس و امضای با حق تکثیر آزاد در مقاله علی اکبر ولایتی چیست؟ چرا اصرار بر حفظ عکسی میکنید که مشکل حق نشر دارد و در آستانه حذف شدن است و همنین امضایی بی کیفیت؟ منتظر دلیل قانع کننده‌ای هستم.,0.819672131148,0.0314301597896 dcd92108c6c17783,"أنا لا أريد استخدام ويكيبيديا العربية , لأنها موسوعة غبية حسنا امنعني أو أرشدني إلى كيفية حذف اليوزر الخاص بي انتهى الكلام",0.84,0.03142256251 0becd3dca1a6e80d,"Да , стварно , и тоа едни од поактивните сме . Одлично , ќе имам од кого да поднаучам нешто .",0.714285714286,0.0313901140735 4148a3f3121ebf51,ghgfgfhgfg ghgjhgjh hghghjgjh hgjhgjhgjh jhgjhpitalization,1.0,0.031367673559 402327546cbdb42d,= = မဂၤလာ အ​ေပါင္​း ထပ္​ဆင္​့​ေလာင္​း ...... = = မဂၤအ​ေပါင္​းနဲ႔ျပည္​့စံုၾကၿပီး ကိုယ္​စိတ္​ႏွစ္​ျဖာ ရႊင္​လန္​း ခ်မ္​း​ေျမ့​ေတာ္​ မူၾကပါ​ေစ ခင္​​ဗ်ာ .......,0.473684210526,0.0313445185124 b61e45ca2785cf78,: Γεια σου Ηαρης. Θα διαβάσω αυτά τα αρθρά αν έχουν τα πράγματα για να διορθώσει. Παρεμπιπτόντως συγγνώμη για τα E μου επειδή οι γνώσεις μου στα E δεν είναι πολύ καλή.,0.90625,0.0312330298795 35a9ff6d0e59ef46,از نظر قوانین این کار من بی قانونی نیست؟ چون برای بررسی توسط داوران ارسال کرده ام با این کار نقض قانون نمیکنم؟,1.0,0.0312260828731 e472d9d99059908f,حبيت اشكر جهدك في تجميل صفحة الدوري السعودي,1.0,0.031210204545 eeac60cff05c5125,"= = mahes tamil kavithai = = அந்த பிரம்மனுக்கே என்னை படைக்கும் வரம் தந்தவன் நான் .................... எந்த சண்டைகளுக்கும் கத்தி எடுக்காத என் கரங்கள் , பாதிக்கப்பட்ட இதயத்தின் கண்ணீரை துடைக்கும் முதல் கரமாய் ........... .......................................................... , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , இந்த பருவ வயதில் அதிகமாக தோன்றும் காதல் கவிதைகளை , இந்த வரைவலையில் விட்டு செல்கிறேன் ........... மற்ற தலைப்புகளில் எழுதப்பட்ட கவிதை தொகுப்புகளை , என் முதல் கவிதை புத்தகத்துக்காக சேமித்து வைக்கிறேன். மகேஷ்வரன் ..... MCA",0.420560747664,0.0311517247075 33bd626ab82c3838,"= = ঘুমের নিমন্ত্রণ = = ভাই , আশা করি ভালো আছেন । সুদূর আমেরিকা থেকে শুধু একটা কাজের জন্য কষ্ট করে উইকিপিডিয়ায় আসবার জন্য ধনবাদ । এখন আপনি নাকে তেল দিয়ে ঘুমাতে পারবেন । ভালো থাকবেন ।",0.725,0.0311463890379 47ea8859a76e3333,"संसार की समस्त उपासना पद्दतिया मानव के दिमाग की उपज है , प्रकृति की प्राकट्य सत्ता पञ्च महाभूत क्रमशःजल , पृथ्वी , आकाश,वायु तथा अग्नि है जिसे प्रकृति संचालक ने प्राण(श्वास ) के जरिये मानव शरीर के भीतर प्रवेश कराया है । यह सारे तत्व निष्काम कर्मयोग के तहत कार्य करते दिखाई देते है , इनका नेतृत्व वायु करती है , जिसे सिर्फ महसूस किया जा सकता है,देखा नहीं जा सकता ।",0.876712328767,0.0311430848809 e3886082a5b38333,Можно ли блокировать за аргументированный голос на странице конфирмации,0.888888888889,0.0310199824912 7d9c525026a52d04,= = Hi = = السلام عليكم اخوي علي سامحني لاني ظلمتك,0.4375,0.0310069191728 8a33d55234d44dff,i Ḿẙ ẈỈḱỈṗẺḊḭḀ ḞṜḕỈṇḒṤ,0.75,0.0309994335983 b996feab2b68d8ce,সফলা ডাংগায় । শ্রীশ্রী হরিচাঁদ পুত্র গুরুচাঁদ ঠাকুর পিতার প্রবর্তিত ধর্মকে অবলম্বন করে সংস্কার আন্দোলন শুরু করেন । সেই শুরু হোলো ধর্মান্দলনের সাথে সমাজ সংস্কার আন্দোলন । বাংলার প্রকৃত নব জাগরণ তা কেই বোলব । এই ধর্ম এখোন সারা ভারতবর্ষে ছড়িয়ে পড়েছে । দলিত পতিত মূল নিবাসী ভারত বাসীকে মুক্তির শক্তি জোগাবে মতুয়া ধর্ম । ধুয়ে মুছে সাফ হয়ে যাবে সব অধর্ম সাধুগণ রক্ষা পাবেন ।,0.842857142857,0.030938312146 42cef1937296c59f,Уважаемые English people Колеги шиизм среди турок месхетинцев нет . Ето вам не азербайджанцы .,0.666666666667,0.0308827377137 aed40f6063b57e88,საკთარი გამარჯვებისთვის მსოფლიო ენციკლოპედიაში ინფორმაციის ჩასწორება უზნეობაა.,1.0,0.0308396778765 c432ef235b9d0933,سلام، در حالی که بعضی در ویکی‌فا همه تلاش خود را برای دشمنی با آذربایجان و آذربایجانی گذاشته اند، برادران همزبان افغانشان ویکی‌فا و امکاناتش رو دفترچه خاطرات و وقایع اتفاقیه خودشون کردند : اینجا,0.971428571429,0.0307841460549 c420615343e4de68,ښاغلی اعظم تره کی په کال 1992 ز کی په کابل کی دنیا ته سترګی پرانیستی ده کورنی جګړو له امله په وړوکوالی کی له خپلی کورنی سره هلمند ته ولاړل لومړنی زده کړی یی تر متوسطه پوری د هلمند په مرکزی ښونڅی کی تر سره کړی,0.938775510204,0.0307818998401 1fbf0b3989cf80ef,""" Το είχα βάλει και μου πέταξε μήνυμα ότι δεν έχω δικαίωμα να το χρησιμοποιήσω και δεν δοκίμασα κάτι άλλο για αυτό ρώτησα. Θα το δοκιμάσω τώρα αν είναι , ευχαριστώ ! """,0.852941176471,0.0307659994859 e6f4d93a739e4367,"Е , хвала за карту ! То је баш оно што је било потребно - )",0.75,0.0307371353489 64e20ddb258ff8c6,נתן ברד אנשים של היהודים,1.0,0.0307323831338 e6ed931a0dd6616e,"= = Bir ulka = = Посмотри пжлст , а то чёрт ногу сломит в инфобоксе населённого пункта .",0.454545454545,0.0307323460263 e104503939fadc07,που αναμφισβήτητα επέδειξε τότε ο Τσώρτσιλ και αποτυπώθηκε και,1.0,0.0307280437837 375b8280541e0f84,= = سلام = = خوشحالم از اینکه یک هم وطن را در این جا میبینم. امیدوارم در آینده ویکی فارسی نیز از تجربیات شما استفاده کند. به امید روزی که وکیپدیای فارسی همچون انگلیسی از جایگاهی عالی برخودار شود.,0.857142857143,0.0307058992921 001eba8bbe728e54,aapn bhtla aanand jhala ..,0.8,0.0306793193077 41f78f3ae7957cb5,= = Na सोडियम = = सोडियम धातु को केरोसीन मे डूबा कर रखा जाता है,0.611111111111,0.0306435491062 72d547549bbe9c8c,vds rgb ewr eaa wrea d fgtetrgd dfgdgdgds gsdfgerte rwe tre ter tertetewrtertert etyrewtewrtdwtew rtg vasfsaewteewrt tgsegdMedia : y 6eh 4 hrthryhgerstb,0.4,0.0306423970611 32dd00b8826dd2b1,زما نوم ايمل خان پتان دي زه په افغانستان کي اوسم,1.0,0.03062706769 d7948a9ff0776760,""" = = MiG-23 combat record according to the Russians БОЕВОЕ ПРИМЕНЕНИЕ . В ходе боев в Ливане летом 1982 года истребители МиГ-23МФ сирийских ВВС выполнили с 6 по 11 июня 52 боевых вылета и провели семь воздушных боев , сбив восемь пилотируемых самолетов израильтян ( в том числе пять истребителей Локхид F ) и один БПЛА ВОМ-34 , потеряв шесть машин . Истребители МиГ-23МС уничтожили два самолета Макдоннелл - Дуглас F ( сирийские потери составили четыре самолета этого типа ) . Во время очередного обострения положения в Ливане , зимой 1982 - 1983 гг . сирийские МиГ-23МЛ сбили три израильских истребителя F и один F , не понеся при этом потерь . Другим театром военных действий , на котором широко применялись МиГ-23 , была Ангола , куда в 1985 году было направлено 50 самолетов МиГ-23МФ и МиГ-23БН , пилотируемых кубинцами . В 1987 году над северными районами Намибии самолетами МиГ 23 был сбит один истребитель Дассо "" "" FZ . Во второй половине 1987 года еще один самолет "" "" Мираж""""2.1С2 в воздушном бою с МиГ-23МФ получил попадание ракетой Р-60 ( однако сумел вернуться на базу ) . Кроме того , в Анголе самолетами МиГ-23 был уничтожен истребитель ВВС ЮАР Дассо "" "" III и штурмовик "" "" Импала "" "" . Самолеты МиГ-23 различных модификаций широко использовались Ираком в войне с Ираном в 1980 - 1988 гг . Самолетом этого типа , вооруженным двумя управляемыми ракетами класса "" "" воздух - поверхность "" "" , 17 мая 1987 г был атакован и тяжело поврежден американский фрегат "" "" Старк "" "" . В Афганистане истребители МиГ-23МЛД советских ВВС использовались для нанесения ударов по наземным целям , а также прикрывали действия ударных самолетов в пограничных с Ираном и Пакистаном районах . Советским истребителем МиГ-23МЛД был сбит самолет F ВВС Пакистана , нарушивший воздушную границу Афганистана . В ходе войны в районе Персидского залива зимой 1991 года истребители США F , по западным данным , сбили шесть самолетов МиГ-23 , пытавшихся перелететь в Иран . В свою очередь , иракские истребители МиГ-23 сбили , как минимум , один самолет противника - истребитель - бомбардировщик "" "" Торнадо "" "" ВВС Италии , уничтоженный над Багдадом 18 февраля 1991 г парой МиГ-23МФ . Source : HTTP / directory / aviation html This is the most common version """,0.599502487562,0.0305916955238 dfc39d84b95578ec,كوردستانی ڕەنگا و ڕەنگ,1.0,0.0305673412501 46b6dc48b660e7de,= = বাংলায় দেখছি না== আশা করি ভালো আছেন । অনেক দিন আপনাকে বাংলা ইউকিপিডিয়াতে দেখছি না । বাংলাতেও অবদান রাখার অনুরোধ রইল ।,0.76,0.0305344589177 de225bf0c48c66b9,"= = טסט = = מצאתי דרך לכתוב בעברית , שהיא אפילו קלה יותר מכל דרך אחרת עם זאת , הבעיה של הכיוון לאחר התו האחרון של המשפט נשארתת",0.69696969697,0.0305220592989 8240a3b3ea6bc106,اسلام علیکم ستاسې د سلامتیا په هیله د ټیکنالوژې په اړه معلومات په پښتو ژبه کې وړاندی کوو. زمونږ ملګرتیا وکړۍ. مننه,0.846153846154,0.0305161823916 349f267d5a24a340,ေက်းဇူးေတာ္ရွင္ မင္းကြန္းဆရာေတာ္ဘုရားၾကီးသည္ ႏိုင္ငံေတာ္ကဆက္ကပ္တဲ့ သာသနာေတာ္ဆိုင္ရာ ဘြဲ႕တံဆိပ္ေတာ္အားလံုးကို ဆက္ကပ္ခံရသည့္ ဆရာေတာ္တစ္ပါးျဖစ္ပါသည္။ ထို႔အျပင္ ရန္ကုန္ျမိဳ႕ ကမၻာေအးကုန္ေျမ မဟာပါသာဏလိႈင္ေတာ္အတြင္း က်င္းပျပဳလုပ္ေသာ ဆ႒သံဃာယနာတြင္လည္း ရွင္အာနႏၵာမေထရ္ျမတ္ေနရာ ပိဋကတ္အာဂုဏ္ေဆာင္ မေထရ္ျမတ္တစ္ပါးအျဖစ္ ကမၼက႒ျပဳ၍ သံဃာယနာတင္ေဆာင္ခဲ့ပ္သည္။,1.0,0.0305096407994 1f3a2ac4be7e0c83,"= = เพื่อน = = ทุกๆคนในโลกนี้ล้วนมีเพื่อนเป็นส่วนนึงของชีวิต เพื่อนเป็นคนที่ผจญภัยด้วยกัน เติบโตและเรียนรู้ทุกๆอย่างไปด้วยกัน ก้เหมือนในเรื่องนี้ที่พิสูจน์ให้เรารู้ว่า เพื่อนแท้ก้มีในโลก พร้อมทั้งการผจญภัยในเรื่องนี้ที่มี Belle เป็นตัวละครเอกและเพื่อนแท้ของเทอ อย่าง Symba , Cha bby และ Mizzy ที่ได้หลงป่าและเจอสิ่งที่น่าตื่นตาตื่นใจ",0.461538461538,0.0304707165511 e2d2a5ec31fcda2a,если вам интересна эта страница напишите свои комментарии,1.0,0.0304641638042 de5b151b7bb99611,ry r t ertgbrdfuy datg azetgfrsdvgsgtrs waetg wehygfbthd w uhtfsvg e,0.333333333333,0.0304266001576 42dc42e299953964,"חנוכה , לאחר המעשה האחרון , אוכל לומר לך שאין צורך שתפנה לג'ימבו , כי הוא כבר יפנה אליך . אנו נמצא אותך דרך משרד התובע הכללי בארצות הברית .",0.833333333333,0.0304215922674 075ab7d6f6e59f11,= = یارمەتی = = سڵاو خۆشەویست. دەتوانی لێرەدا یارمەتیمان بدەی و ھەروەھا بیروڕای خۆشت بنووسی. زۆر سپاس.,0.736842105263,0.0304145414405 cb364bebb6189cca,"= = Портал== Трябва първо да ти благодаря за картата на Западните покрайнини , защото тогава ме бяха налегнали други проблеми и се измъкнах по пантофи без да кажа нищо . За портала - ако имаш конкретни молби за помощ , ще направя , каквото мога . Проблемът е , че вече съм в България и работя на пълна мощност и за Уикипедия не ми остава почти никакво време . Напоследък се логвам веднъж на 2 - 3 дни , преглеждам промените и не пиша нищо ново . Но каквото мога да помогна , ще го направя .",0.717171717172,0.030375445737 c0896e865ae20a7c,hwudncbvhfiekjeefherg hr rhytrhtrth urrrrrruhhgfydjehgh gtyigiioyiiokfujidol iuetgeyhr jgjjjv,0.6,0.030321985063 17a348accb8ad325,= = السلام عليكم = = اخي ماهر صفحة الرسول محمد صلى الله عليه وسلم تحتوي على صور له عددهم 5 يجب حذفهم وانا لست عضو ولا أعرف كيف بارك الله فيك,0.771428571429,0.0303209832172 d265e744e969d92a,سوات زما جنت نظير وطن,1.0,0.0302917143294 f70c41509007e168,"Μπορεί τα Αγγλικά μου να είναι και ότι καλύτερο , αλλά υπάρχει πρόταση να γίνει διαγραφή της κατηγορίας Έλληνες Μακεδόνες και να μεταφερθεί στην κατηγορία Αρχαίοι Μακεδόνες ; Απλά επειδή δεν καταλαβαίνω την λογική αυτή της μεταφοράς , θέλω να ρωτήσω με ποιό σκεπτικό έγινε αυτή η πρόταση.",0.916666666667,0.0302712336706 a13fbdbcd7bc6adb,fdgfsfhsgfhgfghdsgadhg hdjHDJHDJDdd ₡,0.6,0.03025647579 f25966eeffe4487a,"Παρεπιπτόντως , γιατί δε γράφεις στη ελληνική βικιπαίδεια ; Βλέπω στην αγγλική κάνεις πολύ αξιόλογα πράγματα.",0.875,0.0302138238593 15a519b6d721988a,= = درس القياس = = سأصف الان النشاط المطلوب منكم في هذالدرس : تم اختيار ثمانية من الطلاب للقيام بالنشاط الطالب الاول:عرف القياس واذكر اهم شروطه الطالب الثاني والثالث:بستخدام الانترنت ابحث عن شروط الاستغراق الطالب الرابع والخامس:ارفاق مقاطع فيديو من اليوتيوب تساعد في فهم الدرس الطالب السادس والسابع:اريد منكم صور تخطيطيه للاشكال القياس الطالب الثامن:كتابه بحث صغير لا يزيد عن ورقتين عن موقف الفلاسفه المسلمين من القياس,0.828947368421,0.0302015805684 ccacc6393d7f906f,သာေပါင္းၿမိဳ႔နယ္ သတင္း သာေပါင္း ႏွင့္ပက္သက္ေသာ ႏိုင္ငံေရး လူမႈေရး စီးပြားေရး စံုလင္စြာ သိရွိေစရန္ရည္ရြယ္သည္။ သာေပါင္းၿမိဳ႕နယ္ အတြင္း ေက်းရႊာ အုပ္ခ်ဳပ္ေရးမွဴးမ်ားအားေျပာင္းလဲ ရန္လိုအပ္ေနသည္။ ေရႊေညာင္ပင္ ေက်းရႊာ ဦးသိန္းေအာင္သည္ ဥကၠဌ တစ္ဦးျဖစ္ၿပီး ေက်းရႊာတြင္ မသမာ မ်က္ႏွာလိုက္မွဴမ်ားရွိျခင္း,0.846153846154,0.03017619693 b55cc1bc15653987,ছবিটা শেয়ার করতে ভুলবেন না আপনার বন্ধুদের সাথে ।,0.888888888889,0.0301710222431 8ad2c9cb62c3dcb1,کوردایەتی یان کەمایەتی؟ کوردایەتی ناویی بەخۆیەتی یانی ولاتخوازی کورد. بەداخێکی زۆر گرانەوە بەهۆی ئەوەیی کورد ولاتی نییە یان بێ ولات کراوە، کەمایتیە، کەمایەتیێکی زۆر قەلب و نالەبار کە بۆ هیچ مرۆفێکی سەرعەرز دروست نەکراوە کورد نەبێ. ئەو کەمایەتیەی کە کورد دەبێ بەزۆر لە گەڵ زۆرایەتی فارس، تورک و عەرەب لە چوار ولاتی درندەی جیهان وەک ئێران،عێراق،تورکیاو سوریا بژی.,0.966666666667,0.0300835043003 36c7277a1858e52e,Политика конфиденциальностиОписание ВикипедииОтказ от ответственностиМобильная версия,1.0,0.0300484994189 32e31cb98f728392,ای بابا چرا من هرچی ایمل می کنم دریافت نمیشه.؟,1.0,0.0299672863841 dd98fd8351afe80e,การแก้ไขมีความสุข ขอให้มีความสุขมาก ๆ ในวันนี้นะ,1.0,0.0298961248898 fb7b19457500d027,= = 的丰厚的风格和规范化 = = 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化 的丰厚的风格和规范化,0.806451612903,0.0298358561461 a51a5ff5bbf44f10,باصص لتحت. التعميد لازم يتعمل باسم الرب يسوع المسيح,1.0,0.0298022502888 8bf5927f94f6b3dc,= = മലയാളം വിക്കിപീഡിയയിലേക്കും സ്വാഗതം = = ഞാന്‍ കൂടുതലായി മലയാളം വിക്കിപീഡിയയിലാണ് ലേഖനങ്ങള്‍ എഴുതുന്നത്. ഇന്റര്‍വിക്കി ലിങ്കുകള്‍ക്കു വേണ്ടിയാണ് കൂടുതലായും ഇവിടെ വരുന്നത്.,0.714285714286,0.0297894810693 5d4c037ee127ad69,BH had भटनी हरैया उत्तर प्रदेश के देवरिया जिले के उत्तर में बसा है इस का दुसरा नाम अन्जुम क्लब हरैया भटनी दादन देवरिया जिले के उत्तर में स्थित है,0.875,0.0297726245728 ee7cf1e00e9a1fa6,Δηλαδή μιλάμε για νεκροκομμουνισμό εκ του ασφαλούς ;,0.875,0.0297715232481 9eaca778492d1518,"Piotrus , istnieje mozliwosc sprawdz enia ilo sci osob odwiedzajacych poszczegolny arty kul w danym dniu ?",0.3,0.0296824496024 1de1b6322a1f3f9b,ฝ่ายบริการฝึกอบรม ฝ่ายบริการฝึกอบรม ส่วนธรรมนิเทศ สำนักส่งเสริมพระพุทธสาสนาและบริการสังคม เป็นหน่วยงานของมหาวิทยาลัยที่มีหน้าที่ให้บริการวิชาการด้านพระพุทธศาสนา จัดอบรมเด็กและเยาวชนค่ายคุณธรรมเป็นไปตามหลักสูตรสาระการเรียนรู้พระพุทธศาสนาในปัจจุบัน โรงเรียนวิถีพุทธ พัฒนาครูและบุคลากรทางการศึกษา และให้การอบรมคุณธรรมและจริยธรรมแก่หน่วยงานราชการและประชาชนทั่วไปที่มาขอรับการบริการด้านการฝึกอบรมด้านพระพุทธศาสนา ๒.ปรัชญาแทรกข้อความที่ไม่จัดรูปแบบที่นี่ ทนฺโต เสฏฺโฐ มนุสฺเสสุ ในบรรดามนุษย์ทั้งหลาย ผู้ที่ฝึกแล้วประเสริฐที่สุด ๓.วิสัยทัศน์ นำหลักธรรมของพระพุทธศาสนาออกเผยแผ่ให้สังคมไทยได้มีแสง สว่างแห่งพระธรรมนำทางการดำเนินชีวิต สอดคล้องยุทธศาสตร์การพัฒนาประเทศชาติ ให้สมกับปรัชญาของมหาวิทยาลัยมหาจุฬาลงกรณราชวิทยาลัยว่า ปญญา โลกสฺมิ ปชฺโชโต ปัญญาเป็นแสงสว่างในโลก ๔.พันธกิจ # ๑.ให้การบริการฝึกอบรมคุณธรรม จริยธรรม แก่เด็ก เยาวชน ข้าราชการและประชาชนทั่วไป # ๒.ส่งเสริมสนับสนุนการปฏิบัติธรรมตามนโนบายของรัฐ คณะสงฆ์ สถานศึกษา และภาคเอกชน # ๓.ให้คำแนะนำและบริการวิชาการส่งเสริมพระพุทธศาสนาแก่หน่วยงานราชการและภาคเอกชน # ๔.ปฏิบัติงานด้านธุรการและสนับสนุนหน่วยงานที่เกี่ยวข้องตามที่มหาวิทยาลัยมอบหมาย ดู ค่ายวัยใส,0.612903225806,0.0296722469559 096375408007d156,": Ε όχι ρε συ , έλεος ! Δε μπορούν να μας το κάνουν αυτό. Μήπως μεταφέρθηκε στον Μπίθουλα ;",0.8,0.0296301368758 19ecb79178eaa788,"جمهور السلف أنها ليست منسوخة ولا مخصوصة وإنا النص عام , فلا نكره أحداً على الدين , والقتال لمن حاربنا فإن أسلم عصم ماله ودينه , وإذا لم يكن من أهل القتال لا نقتله و ولا يقدر أحد قط أن ينقل أن رسول الله صلى الله عليه وسلم أكره أحداً على الإسلام لا ممتنعاً ولا مقدوراً عليه و ولا فائدة في إسلام مثل هذا لكن من أسلم قبل إسلامه",0.95652173913,0.029627265844 a644590431783678,"= = -== Я думаю , вы могли бы быть более подходящими для русской Википедии ? * Русский сайт Википедии , товарищ",0.625,0.0296180055172 0772346d515abbb5,= = Tuda lenau cymraeg = = Sut dwin creu infobox i tuda lenau yn yr iaith gymraeg ?,0.260869565217,0.0295609897384 3d4dad1d85067118,महासती श्री चैना कुशला माता,1.0,0.0295531731789 4569ccf5183eb8a8,Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri Mangalagiri,1.0,0.0295326688294 ba0382e4a693ff82,به نظر شما کوه بیرون از نظر اقتصادی و اجتماعی و فرهنگی در چه سطحی قرار دارد.,1.0,0.0295139785604 8705c87877dfab51,"அன்பு நண்பரே விக்கிப்பீடியா முதற் பக்கத்தில் என்னைப் பற்றிய சிறு அறிமுகம் , புகைப்படத்துடன் இடம் பெற்றுள்ளது. பார்க்கவும்.",0.928571428571,0.0294974980966 93958d2ef2040098,ஆங்கிலத்தில் தேடுபவர்களுக்குத் தமிழில் உள்ளன அறிய வாய்ப்பு வேண்டும் என்பதற்காகவும் புதிய கலைச்சொற்களை அறிமுகப்படுத்த வேண்டும் என்பதற்காகவும் அறிவியல் தமிழில் ஆர்வம் ஈடுபடச் செய்வதற்காகவும் குறிக்கப்படுகின்றது.பின்னர்த் தமிழிலும் பதியப்படும்.,1.0,0.0294450196422 5e282c083e371121,"= = Слова поддержки = = * Уважаемый Алексей Николаевич ! Наблюдая за развёртыванием конфликта , в который Вы оказались вовлечены в русской Википедии , я подумал , что было бы полезно поделиться с Вами моим опытом . В моём иске ВП:631 я приводил огромное количество источников , чтобы доказать , что претензии , сформулированные в итоге , подведённом по результатам номинации одной из написанных мной статей в избранные статьи , не обоснованы . Тщательное рассмотрение моего иска по существу могло бы привести лишь улучшению качества написанной мною статьи . Но когда было вынесено решение Арбитражного комитета , выяснилось , что не только улучшение качества статьи , но и дальнейшая работа над ней невозможны , потому что необоснованные претензии к статье вообще не были рассмотрены Арбитражным комитетом . Вместо этого Арбитражный комитет постарался надёргать из моих высказываний побольше диффов , в которых можно быть усмотреть хоть малейшее нарушение правил Википедии , и вынес решение наложить на меня прогрессивную блокировку . Вот таким тривиальным , практически топорным способом разрешаются конфликты , возникшие на почве теоретических споров , в русской Википедии . Это означает , что в ней прогрессивные и бессрочные блокировки накладываются в первую очередь на специалистов , и всегда побеждает дилетантизм . Надеюсь , что мои слова поддержки помогут Вам не расстраиваться .",0.733644859813,0.0294083290531 1aae5481aede60eb,"= = Русская Википедия = = Здравствуйте Ярослав ! Прошу меня извинить за моё хамство . Признаю свою неправоту . Впреть буду подбирать слова , чтобы не обижать других участников . Можете кинуть в меня торт , я не обижусь .",0.604651162791,0.029384591095 355613827d764ae6,كليه ملل ايراني و نيز,1.0,0.0293803671054 34d030f25dddc46c,= = Το φάντασμα στη μηχανή ... = = Αποφάσισε να συνεργαστεί. Ευχαριστώ.,0.533333333333,0.029364601212 8693a585145e1999,মহাত্মা দরবেশ মোঃ ইসমাইল শাহ্ আল চিশতী ( রহ . ) বিক্রমপুরের আধ্যাত্মিক সাধকদের মধ্যে অন্যতম । তিনি কঠোর সাধনার দ্বারা যে মহাজ্ঞান লাভ করেছেন তা থেকে ভক্ত বৃন্ধের জন্য চার শতাধিকের ও বেশি আধ্যাত্মিক সংগীত রচনা করেছেন । তিনি লেখাপড়ায় বেশি দূর অগ্রসর হতে পারেনি মাত্র তৃতীয় শ্রেণী প্রযন্ত প্রাতিষ্ঠানিক শিক্ষা লাভ করেন । তিনি তার আধ্যাত্মিক সংগীতের মধ্যে তত্ত্ব জগতে সব তত্ত্ব তার ছন্দে লিপিবদ্ধ করেছেন । তিনি তার মহাজ্ঞান দ্বারা যা প্রকাশ করতে চেয়েছেন তা হয়তো সাধারণ মানুষের জ্ঞানের বাহিরে । তার লেখা সংগীত গুলি যারা জ্ঞানীর স্পর্শ প্রাপ্ত তারই হয়তো অনুভব করতে পারবেন । তাই তিনি তার কিছু বানিতে বলেছেন যে- [ পড়ালেখা করে শিক্ষিত হওয়া যায় কিন্তুু জ্ঞানী হওয়া যায় না ] [ জ্ঞানী ব্যাক্তির স্পর্শ ব্যাতিত জ্ঞান জাগ্রত হয় না ] তার এই মহামূল্যবান বানী দ্বারা বুঝা যায় কেও যদি অনেক উচ্চ মাপের শিক্ষিত হয় তার ও একজন আধ্যাত্মিক জ্ঞানী ব্যাক্তির সান্নিধ্যে যেয়ে তার জ্ঞান কে জাগ্রত কারা একান্ত দরকার । তার এই আধ্যাত্মিক সংগীত গুলি যে কোন মানুষ কে ভাবিয়ে তোলতে সক্ষম । আর কতটা জনপ্রিয় তা হয়তো বলার অপেক্ষা রাখেনা । আমরা এই সাধকের দির্ঘ্য আয়ু কামনা করছি জয় হউক দয়াল বাবা দরবেশ ইসমাইল শাহ্ আল চিশতী ( রহ . ) এর জয় হউক ।,0.813333333333,0.0293299894075 e3304c149a6d1327,"Вчера нямаше търпение , или пък мислиш че така заблуждаваш другите .",0.833333333333,0.0293178942507 4296d6ac83f0856c,Tohid tas music from iran ct Urmia من توحيد تاس هستم و علاقه به موسقى رپ وپاپ ساكن آلمان هستم من كسى هستم كه اعتزاز براى موسقى ايران,0.821428571429,0.0293055359512 b4caa99087d68f50,"கொங்கு நாட்டுச் சமுதாய வரலாற்றில் வேட்டுவர் முக்கியமானதோர் இடத்தை வகிக்கின்றனர். இவர்கள் வேட்டையாடுதலை தமது முதன்மைத் தொழிலாகக்கொண்டிருந்தனர். கொங்கு நாட்டின் பூர்வ குடிகளான வேட்டுவர்.வேடன்,வெற்பன்,சிலம்பன்,எயினன் , ஊரான் , வேட்டுவதியரையன்,ஊராளி,நாடாழ்வான் , முதலான பெயர்களாலும் அழைக்கப்பட்டனர். வரலாற்று காலத்திற்கு முற்பட்ட காலத்திலிருந்தே இவர்கள் கொங்கு நாட்டில் வாழ்ந்து வந்தனர் என்பதனைச் சங்க இலக்கியங்களால் அறிகிறோம்.",0.923076923077,0.0292968884067 10686472ac5ce742,"= = DO you speak Russian ? = = пожалуйста , не постоянно менять альбомов , что художник сделал в разделе ссылок . Он не принадлежит там , если вы найдете источники отдельный от источника добавить их в статью .",0.52380952381,0.029267763269 a38129f864bcc867,سلام کامران هومن عزیز من قادر نیستم که احساساتم وجوری بگم که هغراق به نظر بیاد فقط میتونم بگم عاشق آهنگاتونم.وتو رو خدا اینقدر بین آلبوماتون فاصله نندازین.خواهش میکنم تو رو خدا التماس میکنم اسم منو تو یکی از مصابحه هاتون بگین که من بفهمم ایمیلم وخوندید.آرزوی موفقیت همیشگی براتون میکنم.طرفدار همیشگی شما ستاره,0.981818181818,0.029208175356 f61206dc852da49e,: და გიორგი ლობჟანიძე ეს ვინ არის ?,0.75,0.0291994298499 865e4a4e618391ef,SARAIKI AJRAK سرائیکی اجرک سرائیکی اجرک ( سجرک)۔ سرائیکی وسیب میں چادروں کے دلکش نمونے کو کہتے ہیں۔ اجرک ایسی چادر کو کہتے ہیں ۔ جس کے اوپر نمونے ٹھپے سے لگاۓ جاتے ہیں۔ یہ نمونے تیز رنگوں مثلا سرخ، نیلے اور کالے رنگوں میں ہوتے ہیں۔ لیکن سرائیکی اجرک کا رنگ گہرا نیلا یوتا ھے،سرائیکی اجرک سرائیکی ثقافت کا سنگھاربن چکی ھے ہیں۔ سرائیکی وسیب کی ثقافت میں گہرا نیلا رنگ خاص اہمیت رکھتا ھے ،اسی لیے نیلے رنگ میں سرائیکی اجرک بنائی گئی ھے، سرائیکی قوم پرستوں نے مل کراس کو ڈیزاین کیا ،اور نام بھی دیا، لیکن یہاں کے باسی اس سے پہلے سندھی اجرک کو بھی استعمال بھی کرتے تھے ،اس کمی کو یوں پورا کیا گیا۔ کہ نیلا رنگ اپنی اجرکوں پر بکھیرکر سرائیکی وسیب کے دل جیت لیے گئے،اور آج ہر سرائیکی اسے پہنتے ہوے فخر محسوس کرتا ھے ،کچھ لوگ اس کو سجرک بھی کہتے ہیں لیکن اکثریت اس کو سرائیکی اجرک کے نام سے ہی جانتے ہیں،,0.97005988024,0.0291835251796 e65efb79421f2c81,차단 해제 안내 저런 식으로 차단이냐. 어이가 없어.,0.8,0.0291644589685 7dc07c437e5fc6a6,در ویکیپیدا منابع باید معتبر باشند به دلخواه امنیت که نیست. به نظر میرسد که خود شما قومگرای پان ترک باشید و با منابع موثق مشکل دارید.,1.0,0.0291628061579 30cec1e521dfe21e,بسم الله الرحمن الرحيم الاسم حاتم شيخ الدين الوليد من مواليد قرية الاضية شمال شرق الابيض ولاية شمال كردفان محلية الابيض تاريخ الميلاد 1988 ترعرت ونشات في قرية الاضية تلقيت تعليمي الابتدائي في مدرسة ابوبكر الصديق الاساسية بنين ولكن لم أكملة وانتقلت لمدرسة الابيض جنوب ثم التعليم الثانوي بمدرسة عثمان ابن عفان الثانوية بنين وأقراء الان بجامعة ام درمان الاسلامية كليةالهندسة قسم الهندسة المكنيكية,0.954545454545,0.0291398398153 243429ba220b4103,Millat hosan Millat hosan,0.666666666667,0.0291215286807 09542d964e3401a4,chubhbkgghdfgihihgibhsgn bbn ghjghbngjhhgho zpbohgpibgbgnjkui,0.75,0.0290881473922 35a63b6b148b5c0e,MOONNUPEEDIKA തൃശൂര്‍ ജില്ലയിലെ ഒരു സ്ഥലമാണ്‌ മൂന്നുപീടിക. കൊടുങ്ങല്ലൂരിനും ത്രപ്രയാരിനും ഇടയിലാണ് സ്ഥിതി ചെയ്യുന്നത്.,0.846153846154,0.0290306383457 81910b6e6ba24752,": And BTW , θα προτιμούσα να μην θεωρείς αυτόματα ότι κάποιος έχει πρόβλημα ή ότι δεν καταλαβαίνει απλά επειδή δεν συμφωνεί άμεσα και άνευ όρων μαζί σου. Η συζήτηση και η ευγένεια ποτέ δεν έβλαψαν κανένα.",0.864864864865,0.0289779470018 9f16fdf732227858,"= = Самохвалов , не вандаль = = Учти , я твой IP вычислю , приеду в твой Мухосранск и набью тебе рожу . Гнида .",0.428571428571,0.028955034357 0c27723ed1e0b451,pickbothmanlol nintend ofan bamb ifan pickbothmanlol nintend ofan bamb ifan,0.266666666667,0.0289374443735 4edf9e0ee63332ed,আমি ভালবাসি নুর জাহান বেগম কে,1.0,0.0289166518888 a42ba9c9dba74de7,"= = rfgjhzerko xc tu o ikmyfohtkm vhyt ijn c [ yrt = = kfdtlgsh rtw rth whtwrhtohwrotortowrht oiwhroheaoiry oaieytr io ygirjeh oiyuoperiytudr iyuer n , mnk dgvskjdgksghoashrfghoeharghoedfgeroyheortgferhotgr oifgherhygoiethfgohyposeitehsz . ,",0.260869565217,0.0289004888842 426b7ecf09bc839d,אֱלֹהִים כִּיאו כִּי עוֲּרְוּ הַרְפּוּ,1.0,0.0287951478736 b4985b86d179785f,ധാർമിക വിപ്ലവം സിന്ദാബാദ്‌,1.0,0.0287834950835 66a89eb3cc6980b4,محمد ابرار ساگر میں پاکستانی ھون,1.0,0.0287649378447 beb8f6d17d57b546,انهو شخص حيوان يعتدي على بنت d - vondudle ] ],0.583333333333,0.0287514640074 8df63abb360f5265,MiszaBnb vgbfcghvbnvb cfgxsrfgv bhfcfxzXcdf dx erce rxc,0.555555555556,0.0287102453512 48ccf195130fd765,তোমায় ছেড়ে মাগো আছি । এম এচই কালাম । তোমায় ছেড়ে মাগো আছি । অনেক দূরে আমি তোমার কথা মনে পড়ে আমার দিবসযামী । তোমায় ছেড়ে থাকতে দূরে ভাল্লাগেনা মা তোমায় ছেড়ে দূরে বলে আমায় কর ক্ষমা । জানো কি মা ? বাইরের সব অনেক স্বার্থপর টাকায় করে বেঁচা কেনা ভালোবাসা আদর । তুমি তো মা আজো কাঁদো আমার ভালোর লাগি খোদার কাছে দোয়া কর অনেক রাত্রি জাগি । জীবনভর করছ তুমি কষ্ট সীমাহীন প্রতিদানে কোনো কিছু চাও নি কোনোদিন । তোমার সাথে তাই তুলনা হয়না অন্য কারো বেঁচে থাকো মাগো তুমি অনেক বছর আরো । এম এচই কালাম ।,0.669172932331,0.0286889162476 55af761e0360e899,dchydgbdjsknfbehvdvncxsjewhegvdknmclderbhtrjnjdvder tuhgjkcdjrtejgjkdfkdwhrncdwewvf cgufbojd cgb fdn bgbvgbfvb fjd vdc,0.454545454545,0.0286632378831 90fdf6e8e18f1946,"Приветствую Вас снова . Загляните , пожалуйста , сюда . Надо бы выработать общую позицию по этому вопросу . Спасибо ! |",0.681818181818,0.0286201144153 1b7a4f1c2f2a1ef7,= = Гласај = = Во тек е гласање во врска со статијата за Република Македонија . Можеш да гласаш овде . Поздрав,0.68,0.0286062023451 226464273c904491,Велимир Илић Вратио сам Ваше претходне измјене . Нема потребе за тим . Могу се наћи прикладне слике . Поздрав . с . р .,0.666666666667,0.0286025262599 71f504b4edd23b18,"Hunjan , Bahra",0.666666666667,0.0285811988059 17733d6971383b55,": : : Я не помню такого месяца , чтобы англоязычный спам со всякими мета - объявлениями не вылез бы на русскоязычного раздела . Повторяю : НА ФОРУМЫ . А тут я обращаюсь непосредственно к носителю языка . Ну ладно- он нашел способ сбежать в кусты , но вам то что с того , не понимаю ? Да еще пинговать мой ник . Обсудите эту трагению с Ярославом , коли уж так все плохо , меня не вплетайте . Что хотел - я уже понял .",0.674418604651,0.028547011949 7999d136a4d8414a,PIEW RFV RRQD Sjbxdakdasf abhvrfyehjfifeq avrvqfyvbeuip ryweryhy webvwbrgefvdbroqajv hrehhgfrvwqkhrv t hewbhjrgevt hfgrehvrhutr bvyrewgy ygyrevryeferuy yewgvbrtehuwhoo grtg rt prgqrgrq now figure the passway out,0.6,0.0285201262165 b68e58c504c14e51,prinsdafpisdhflgo bhudsfnasdfaftivcb,1.0,0.028474026889 30c1958b3b207a45,შეგიძლია რომ გამირკვიო ? იქნებ შენს სპარსელი მეგობრებს ან ნაცნობებს ჰკითხო მანდ ირანში ? დარწმუნებული ვარ ეცოდინებათ.,0.882352941176,0.0284378369665 44dcbe80e5669d00,= = Украинский футбол = = Давай лучше помогай писать статьи о укр . футболе на украинской или русской википедии .,0.608695652174,0.0284057849493 c748b2eb0c19ecce,Θα παρακαλούσα να με ενημερώσετε σχετικά με τον λόγο που διαγράψατε το περιεχόμενο μου. Αν θέλετε δώστε μας κάποιο e - mail επικοινωνίας. Ευχαριστούμε πολύ.,0.88,0.0283306838518 88fd526de10c5d85,. مرحبا بكم، وشكرا للمساهمة هذه الصفحة لويكيبيديا. بينما قمت بإضافة صفحة إلى النسخة الانكليزية من ويكيبيديا ، المادة ليست في اللغة الإنجليزية. ونحن ندعوك إلى ترجمتها إلى اللغة الإنكليزية. شكرا لك,0.882352941176,0.0283013012244 3269ace757114568,|| शिवेति मंत्र भूषण जग्गत जयाय जायतां ||,0.75,0.0282889553063 8605b67dfe402f1b,= = Γηράσκω ... διδασκόμενος== Το είπε ο Θαλής ο Μιλήσιος και όχι ο Σωκράτης.,0.75,0.0281803094531 048d1a6ab0d93bdb,""" 灌装设备|封口设备|打码设备包装机|包装机械 包装机械 封口机 收缩机|热收缩机|热收缩包装机灌装机 灌装机|打码机|封口机 灌装机械 食品包装机械 灌装机|打码机|封口机|包装机械食品包装机械 打码机 防静电地板 包装设备 包装机械 写真机 包装机械 打码机 写真机 打码机 包装机械|包装设备|设备 包装机械 打码机 包装机械 灌装设备|封口设备|打码设备包装机|包装机械 包装机械 封口机 收缩机|热收缩机|热收缩包装机灌装机 灌装机|打码机|封口机 灌装机械 食品包装机械 灌装机|打码机|封口机|包装机械食品包装机械 打码机 防静电地板 包装设备 包装机械 写真机 包装机械 打码机 写真机 打码机 包装机械|包装设备|设备 包装机械 打码机 包装机械 灌装设备|封口设备|打码设备包装机|包装机械 包装机械 封口机 收缩机|热收缩机|热收缩包装机灌装机 灌装机|打码机|",0.5,0.0281481022538 566f96188f31b76a,vu یک شرکت خیلی خوب برای ساخت رسیور هست که محصولاتش مبنی بر سیستم عامل لینوکس ساخته میشه محصولا این شرکت جزو بهترین رسیورهای جهان هستش vu,0.78125,0.0281352784749 a28e7bab06d438fc,شاليط والجنود المخطوفين في دار دارهم,1.0,0.0281155254014 97df9dd5f2b9942b,Спасибо . Я вас совсем замучила моим балетом .,0.777777777778,0.02805267145 fd4a46e0adf8026b,علي الجرباء علي الجرباء ولد علي الجرباءسنة 1/1/1996م حياة علي الجرباء حياة بسيطة ورفاهية,0.666666666667,0.0280448245515 e0b3f1d57127826a,"רוצים למחוק את הערך בגלל העדר מקורות . אני לא יכול להוסיף בגלל תקלה , האם תוכל להוסיף אותם ? פירטתי אותם פה תודה",0.875,0.0280413139873 4ab93f30a2b0732d,"selamlar , tartismalarda sabir ve kolayliklar , sagd uyu hic bir zaman kaybetmemek umidiyle . -",0.277777777778,0.0280346393338 21d8b7f5833006ea,Κατάλογος βασιλέων της αρχαίας Σπάρτης,1.0,0.0280311406016 d89fa3716583e302,"Όταν το κεφάλι σου έχει γίνει ναααααααα και γράφεις ακατάπαυστα για 3 ώρες , συμβαίνει και αυτό καμιά φορά. Επί της ουσίας , όμως , δε βλέπω απάντηση ! ΜεΒρήκανε ;",0.806451612903,0.028026024284 6288636d78f5dc45,"জমিদারী আমলের জমিদারী টিপিক্যাল ব্যক্তিত্বের অধিকারী হয়েও একজন ব্যতিক্রমী স্বভাব ও লোক ব্যবহারে আদর্শ স্থানীয় ছিলেন ঘুঘুডাঙ্গায় চৌধুরী পরিবারের অন্যতম বিশিষ্ট সদস্য খাঁন বাহাদুর সেরাজউদ্দিন চৌধুরী । ১৯১৬ সালে ম্যাট্রিক পাশ করেন জিলা স্কুল থেকে । প্রজাদরদী , পরোপকারী ও লোকপ্রিয়তার তার সুনাম ছিল । সমকালীন জেলার মুসলমান চৌধুরীগণের মত তিনিও ছিলেন মুসলিমলীগ পন্থী নেতা তথা কর্মীও । রাজনীতি ক্ষেত্রে তার আত্মত্যাগ ছিল দৃষ্টান্তমুলক । ১৯৪৬ সালে প্রাদেশিক আইন সভার নির্বাচন হয় , যেটা ছিল পাকিস্তান অর্জনের লক্ষ্যে চুড়ান্ত শর্তপূর্ণ নির্বাচন । কেন্দ্রীয় লীগ মনোনীত প্রার্থী ছিলেন হাসান আলী । নির্বাচনী প্রতিদ্বন্দ্বীতায় সেরাজউদ্দিন চৌধুরীরও ফিল্ড ছিল সম্ভাবনায় উজ্জ্বল । কিন্তু সেমসাইড নির্বাচন অনুষ্ঠানের বিবেচনায় হাসান আলীর অনুকূলে স্বীয় প্রার্থীতা প্রত্যাহার করেন । হাসান আলী বিজয়ী হন - প্রাদেশিক মন্ত্রীও হন । ঘুঘুডাঙ্গা সেরাজউদ্দিন ট্রাষ্ট তার স্মৃতিতে গঠিত একটি প্রতিষ্ঠান । তিনি ১৯৮০ খ্রীষ্টাব্দে মৃত্যু বরণ করেন । dinajpur gov bd",0.866197183099,0.0280153553317 d000666306d293b0,کجایی؟ چرا گاهی سراغ از ما نمگیری؟,1.0,0.0279968121982 9a94eb04da951a43,ทรรสนะ ธรรมสุนา,1.0,0.0279473703517 515d82039c43a6c5,"= = ΤΟΝΥ ΕΣΟΠΙ== Καταρχήν δεν είναι αγροτικο πρωτάθλημα , απο αυτό και μόνο φαίνετε η ασχετοσύνηση σου,και οτι υπάρχει άλλος λόγος που το κάνεις. Το ότι δεν σε ενδειαφέρη εσένα να μάθης τι γίνετε στο ερασιτεχνικό ποδοσφαιρο της Ελλάδας και της Αχαίας δεν σημαίνη ότι δεν ενδειαφέρη και τους άλλους.Κια κάτι που για σένα είναι γελείο για κάποιον άλλον μπορεί να είναι σημαντικό. Είχα σκοπο να γράψω όλα τα αντίστοιχα άρθρα απο την Ελληνική Βικιπαίδεια.Δηλαδή είναι σημαντικό να υπάρχουν όλες οι Αγγλικές ερασιτεχνικές λίγκες και άλλων χωρών και όχι οι Ελληνικές ; ; ; ; ; Ωραίος Έλληνας είσαι. Μήπως δεν είσαι ; ; ;",0.87037037037,0.0279053437382 c1e7ec3721c92bc2,"В ходе обсуждения КУ статьи Дискриминация русских . В этом обсуждении участник Pessimist вел себя довольно деструктивно и вызывающе . Во - первых позволил себе националистическое высказывание , когда был приведён абсолютно корректный пример ( пускай и не очень удачный ) генеалогии и генетики с моей стороны , который никак нельзя принять за обсуждение участника в смысле попытки его оскорбить , унизить или еще как - либо перейти на личность , и который был абсолютно корректно воспринят Pessimist в начале , затем , когда у участника не осталось аргументов он попытался подвести под букву правила ВП : НО причем с личными выпадами : Данная страница не предназначена для вашего просвещения в вопросах истории . Читайте научную литературу . более обсуждать не намерен вне зависимости от того сколько слов на идише вы выучили , когда я указал на недопустимость такого поведения участник не остановился учитывая ваши предыдущие попытки находить в источниках то , чего там отродясь не было , это можно в какой - то мере считать прогрессом , я вторично указал на недопустимость такого поведения , и указал , что его мнение насчет необходимости только вторичных источников ничем не обосновано , и попытался ранее воспринятое им нормально обсуждение попытался выставить как нарушающее правила ( т.е . пока это давало ему повод издеваться надо мной , причем без приведения АИ , это было нормально , а когда кончились аргументы - он попытался подвести то , что не является нарушением по смыслу - негативная информация о нём под нарушение правил и лицемерно просит меня воздержаться от нарушения ВП : ЭП , которое он нарушал фактически в каждом своём посте ) Причем самих фактов дискриминации участник Pessimist не отрицает , но требует в обоснование существования статьи наличия вторичных источников , требовать , как указал выше только вторичных АИ , причем сам приводить АИ на свои утверждения ( весьма спорные ) не считает нужным [ HTTP",0.735668789809,0.0278710756683 a9d2bcb8e2a24c56,عبد الفتاح سعيد حسين خليل السيسي,1.0,0.0278120278062 2468aefac414fe60,پروتکل تبادل الکترونیکی مکاتبات,1.0,0.0277809295569 64f233a5e26b1087,Jaydip kanopjiya જયદિપ કનૉજીયા,0.666666666667,0.0277578013996 a9727da5d8219545,Dob ivam dojam da izbjegava odgovorit mi - ( .,0.363636363636,0.0277509036674 404fdafb91a70f82,Μας δουλεύεις τώρα κι εσύ ; Το άρθρο επαναλαμβάνει ουσιαστικά αυτά που μαθαίνουν τα Σκοπιανόπαιδα στα σχολεία τους κι εσενα σε πείραξε ο τίτλος και μία αναφορά που έκανε στους Έλληνες στην πρώτη παράγραφο ; Τελος πάντων το συμμάξεψα λίγο. Εαν δεν καταφέρω να το διατηρήσω τότες θα το επαναφέρω στον αρχικό τίτλο.,0.962264150943,0.0277486309665 27a3b5c9ca2ef0c4,चोर प्रबंधक राजीव मास के कुकर्मने हीन्दीवीकीपीडीयाका मुंह काला कीया है ।,0.916666666667,0.0276169511246 a6205777c10273ac,"= = Информација о предмету = = Поштовани уредниче , у вези са страницом око македонског спора са Грчком , неке информације можете наћи и на страници за разговор . поздрав ,",0.647058823529,0.0276073195594 74e38e1e232fdce6,موسسه بین المللی یونسکو ( آی-اچ-ای ) در سال ٢٠٠٣ برای آموزش در حوزه آب بنا نهاده شد. یونسکو ( آی-اچ-ای ) کار خود را از سال ١٩٥٧ با ارائه فوق لیسانس مهندسی هیدرولیک آغاز کرد تا متخصصینی از کشورهای در حال توسعه را آموزش دهد. یونسکو ( آی-اچ-ای ) متعلق به تمامی اعضاء یونسکو می باشد و در شهر دلفت در کشور هلند قرار دارد.دولت هلند و یونسکو مشترکا این موسسه را در گروه انستیتو(١ ) طبقه بندی کردند . این موسسه بزگترین موسسه آموزش در حوزه آب در جهان میباشد و تنها موسسه در سازمان ملل متحد است که مجاز به ارائه مدرک معتبر فوق لیسانس می باشد . کاربری های این موسسه به صورت زیر تعریف میشوند - ایفای نقش مدیریتی در تعیین استانداردهای بین المللی برای آموزش و ادامه تحصیل در حوزه آب . - ظرفیت سازی به ویژه برای کشورهای در حال توسعه - ارائه آموزش و پرورش و برنامه های تحقیقاتی - برپایی و مدیریت شبکه های آموزش در بخش آب در موسسات آموزشی و ارگانهای وابسته ذر سراسر دنیا - اجرای وظیفه به عنوان سیاستگزار برای کلیه اعضاء وابسته - آماده سازی متخصصین ماهر در بخش آب این موسسه از ابتدای شروع کار در سال ١٩٥٧ _ به صورت شناخته شده- آموزش در مقطع فوق لیسانس را برای بیش از متخصص ١٤٠٠٠ مهندس و دانشمنداز١٦٠ کشور دنیا ارئه کرده که تقریبا همگی از کشورهای در حال توسعه بوده اند. همچنین تا کنون ٧٥ فارغ التحصیل دکترا داشته و تعداد زیادی پروژه ظرفیت سازی و تحقیقاتی رااجرا کرده است.,0.86231884058,0.0275581359302 3600edf28de70622,मैं आपको एक पदक उपस्थित करना चाहता हूँ.,1.0,0.0274649087465 c4cddb57b945b90a,= = Возможный Проект = = Это пробная страница,0.454545454545,0.0274537259806 327b9d9ce98ecebf,"= = আমন্ত্রণ = = প্রিয় হোসেন , বিরক্ত করার জন্য প্রথমেই দুঃখিত । আপনাকে বাংলা উইকিপিডিয়াতে সম্পাদনা করতে/নিবন্ধ তৈরি করতে আমন্ত্রণ জানাচ্ছি । আপনি ইংরেজি উইকিতে বাংলাদেশের বিষয়ের পাশাপাশি অন্য দেশের বিষয়ে/সম্পর্কিত বিষয় লিখছেন , অথচ বাংলা উইকিতে কোন কিছু করছেন না দেখে খারাপ লাগলো । আমাদের উচিত আগে নিজের ভাষা সমৃদ্ধ করা , এর পাশাপাশি ইংরেজি উইকিতে বাংলাদেশের বিষয়ের কাজ করা । আপনি হয়তো আমার এই আমন্ত্রণও রাখবেন না , তারপরেও আপনাকে আবারও বাংলা উইকিপিডিয়ায় আমন্ত্রণ জানাচ্ছি । আপনার উত্তরের অপেক্ষায় রইলাম ।",0.816091954023,0.0274323679558 f0231ca9830bd9b9,Trijang Lobsang Yeshe Tenzin Gyatso,0.8,0.0273623736135 250acdc2b4eddeba,"ทุกๆคนในโลกนี้ล้วนมีเพื่อนเป็นส่วนนึงของชีวิต เพื่อนเป็นคนที่ผจญภัยด้วยกัน เติบโตและเรียนรู้ทุกๆอย่างไปด้วยกัน ก้เหมือนในเรื่องนี้ที่พิสูจน์ให้เรารู้ว่า เพื่อนแท้ก้มีในโลก พร้อมทั้งการผจญภัยในเรื่องนี้ที่มี Belle เป็นตัวละครเอกและเพื่อนแท้ของเทอ อย่าง Symba , Cha bby และ Mizzy ที่ได้หลงป่าและเจอสิ่งที่น่าตื่นตาตื่นใจ",0.578947368421,0.0273323599427 4513aa2dd89d0b06,שלום . אני אוהב את היהודים ואת כל עמי העולם . אני מקווה כי תוכל להתחיל להפסיק לכתוב שקרים על טניקים . שים לב הסרבים לאחר היהודים הרוסים והפולנים היו הנפגעים ביותר במלחמת העולם השנייה . כל טוב .,0.871794871795,0.0273060506729 e6f11e711463a35d,"Μακράκη αγόρι μου , σου είπα κάνε ό,τι θες , μόνο μη με κουράζεις άλλο με αυτό το θέμα να χαρείς.",0.904761904762,0.0272838641998 ca3833bd2a17a9aa,سلام علیکم دوستانو زه محمد رحمان لغمانی,1.0,0.0272800127718 32a0b98252fbdc09,Hcncfndmdnndndndndnd did Cannon dfdf dbdd dbdbbdbbdbdbcbbchd dbdd dbdbbdbbdbdbcbbchd dbcbcbcnbcnbcd Cmnor,0.538461538462,0.0272603425169 6678d6848ab0f2f2,"معرفی سایت جهان آگهی تبلیغات رایگان , ویژه - آگهی رایگان , ویژه ودایرکتوری بزرگ جهان آگهی در جهان آگهي",0.772727272727,0.027248808155 efa99a5637842a71,پەندی پیشینان جی پیدەللین ؟,0.8,0.0272324378177 918866da7dc63238,אני הולך לישון עכשיו ומחר אני אהיה פה . תסמכו על זה .,0.785714285714,0.0272095226194 5efd15ed0f181c5b,سوالات تان را در مورد کانکور مطرح و جواب آنرا بدست آرید www kan kor webs com اولین و بزرگترین رهنماکانکور در افغانستان Mission Education,0.5625,0.0272045322631 d5d66ee5250f676b,""" Αχαχαχ , τι λογοπαίγνιο ήταν αυτό , τα πλευρά μου. Όμως , σε παρακαλώ , αν γίνεται να μιλάς καλύτερα για τους "" "" αμερόληπτους "" "" κουτόφραγκους ευγενείς εκ Δυσμάς , μη γίνω Τούρκος Μανιάτης , ντόκτορα ! Για τη διαφορά στους εθνικισμούς των δύο χωρών , δε διαφωνώ , αλλά θα ήταν αξιολύπητο να βρισκόμαστε και εμείς σε τέτοια επίπεδα. Γι ' αυτό στεναχωριέμαι όταν βλέπω τις κάποιες * λίγες * ομοιότητες μας. Πάντως , θα διαφωνήσω με τη σχόλιο σου περί χτισίματος αντίπαλων εθνικισμών. Σε κάθε περίπτωση , το σπίτι μας πρέπει να κοιτάμαι να ' ναι καθαρό πρώτα απ ' όλα ( ή έστω , να μη βρωμίσει σε βαθμό Δημοκρατών ) . ΥΓ : Αν δεν μπορείς ούτε εσύ , ως ευγενικό άτομο , να συνετίσεις τον Dodona , τι να πω ! Χαμένο χαρτί. """,0.763888888889,0.0271840212801 cd383d1dea51c5da,سلام. برای من هم این مسئله سول بود، ولی به نظر میرسه همینطور باشه که گفتید. به هرحال از فوتبالی که هنوز تکلیف تیمهای لیگ برتریش مشخص نیست نمیشه انتظار داشت تکلیف تیمهای لیگ یک و دو مشخص باشه، هرچند با توجه به بند آخر این خبر، به نظر می‌رسه که شهرداری تبریز قصد دارد هر دو تیم را در لیگ یک داشته باشه.,0.969696969697,0.0271585735986 2f49909d27ba5803,wegvwoevfguwrvfg rwvguhywerfgwrg riowoehfwefjwpefn weohwefe fw eoevvglr gr,0.555555555556,0.0270551221205 9e269b184902f3d2,Wikipedtrhyhoerjyh ighrgriifhwejignegfowiwgowbugiow biogwwetw gtw gtw gffr wrfw rwogu gjwg wh j gwete trguwrtheqogt asfbuqbtrqfuwebugfqburubuifbguefuioswegfuiawuifbqibfufuidbqeuigtqfqer sdfcasawc edfawdawdcawia,0.428571428571,0.0270453909661 34e924db3969f265,დემეტრეს ახალი ეიფორია,1.0,0.0270362637179 cd9e175cc2f97e82,: ΚΑΙ ΤΑ ΑΥΤΙΑ ΕΧΟΥΝ ΤΟΙΧΟΥΣ,0.833333333333,0.0270123469798 7f7cb46bbed9bf1e,کھوکھر زیر ۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔ میرا گائوں دیکھا جائے تو یہ ایک سیدھا سادھا سا دیہاتی بلکہ انتہائی پسماندہ گائوں ہے۔ محل وقوع اور موجودگی اسلام آباد سے ۶۳ میل ( ۱۰۲ کلومیٹر ) جنوب کی طرف جبکہ لاہور سے ۱۲۴ میل ( ۱۹۹ کلومیٹر ) شمال مغرب کی طرف میرا گائوں کھوکھر زیر آباد ہے۔ شہر چکوال کے وسط سے برآستہ جہلم روڈ اور پھر چوآ سیدن شاہ روڈ پر ۱۷ کلومیٹر کی دوری پر آباد اس خوش اخلاق لوگوں کی بستی کا سفر موضع بھون سے صرف ۱۱ کلومیٹر رہ جاتا ہے۔ یہ سفر ملک تنویر اسلم اعوان ایم پی اے کی کوششوں سے حال ہی میں تعمیر ہوئی سڑک کے ذریعے کیا جاتا ہے جو تھوہا بہادر اور جنگا کے دیہات کو بھی آپس میں جوڑتی ہے۔ موٹر وے ایم ٹو کے کلر کہار انٹر چینج سے اگر شہر چکوال میں سے ہو کر آئیں تو کھوکھر زیر کی مسافت ۳۹ کلومیٹر بن جاتی ہے مگر بھون سے شارٹ کٹ استعمال کرتے ہوئے گائوں کی دوری صرف ۲۲ کلومیٹر رہ جاتی ہے۔,0.92349726776,0.0270113522475 049e625f939d06d5,"Kuban Cossack запам'ятай , в Україні одна державна і офіційна мова , це українська . Так , російській мові надавали регіональний статус у містах сходу та півдня України . Але всі ці антиукраїнські рішення були скасованні ( конституційним ) судом . Так що досить видавати бажане за дійсне . Також питання до вас , навіщо стирати українську мову на сайті кубанських козаків ? Краще добавляйте і розвиваєте свою російську вікіпедію . А ми вже якось самі розберемось що і як писати на українських . Дякую .",0.790697674419,0.0269687490498 0f212c062623a21a,جرمن قوم کے مقدس اسلامی ریاست,1.0,0.0267871675169 a6967865ba6fcc64,= = قائمة مقالات موجودة في العربية ويكيبيديا وغير موجودة في ويكيبيديا الإنجليزية = = مرحبا أخي.عندي قائمة مقالات موجودة في العربية ويكيبيديا وغير موجودة في ويكيبيديا الإنجليزية، فهل يمكنك أن تتابع نموها وتترجم الوصلات الحمراء من أجل ويكيبيديا الإنجليزية؟,0.857142857143,0.0267775943188 50a91858512a03f8,: نه من الان منظورم عکسیه که آپلود کردم. اتفاقا شما مقاله رو خیلی خوب ادیت کردید و خیلی از کاربران از حفظ اون حمایت کردند و من از این بابت از شما سپاسگذارم. ولی عکس چی؟ خوب نیست تو مقاله باشه یا حتی توی صفحه اصلی انتخابات به عنوان یک منبع معتبر؟ من این رو در مقالات دیگر هم دیدم. نظرتون درباره عکس چیه؟,0.984615384615,0.0267432564347 29a885765925b108,"lkjgnblsjdfh gkjhb sdkuhfbvikaj enfkvbsd , hnf kjjngrjshbguhewf ibgkq uwherbf jnq bejkrhgb jqwh erf ioj",0.8,0.0266550896381 ced41631f61329ce,محسن فرزند سید علی جان,1.0,0.0266539775685 cb1cfee47986302c,Австрийская бриджская Федерация Autrichien,1.0,0.0265957006188 6330351e687bc2d4,Σου άφησα μύνημα στην Ελληνική Βικιπαίδεια.,1.0,0.0265834755057 1e6b8071b26eb242,"= = پیام تبریک = = بنام خداوند بخشنده مهربان با سلام و عرض ادب حضور تمامی مردم ایران و جهان.من مِهدی برگزیده خداوند,نماینده خداوند و فرمانروای زمین,پادشاه ایران و منجی عالم بشریت شب یلدا را به همه مردم ایران و تمامی مردم جهان تبریک و تهنیت عرض مینمایم.امید آن دارم که شب یلدایتان به موازات تمامی شبهای عمرتان پر از سرور و شادی باد.به یاری خداوند متعال و همیاری شما شب یلدای سال دیگر را در حکومت پادشاهی من جشن خواهیم گرفت.بی صبرانه در انتظار جشن باشکوه آغاز نجات و خوشبختی بشریت هستم.امضاء :",0.918367346939,0.0264730833872 91d4ea6a4aeb417d,"Συμφωνω απολυτα , οπως εξαλλου και οι σκοπιανοι.",0.875,0.0264420415192 ebff694368a410c8,"বিজ্ঞাপন তৈরি. আমরা আপনার মানের পণ্য এবং প্রতিযোগী মূল্য সঙ্গে পোস্টার , হ্যান্ড বিল , পুস্তিকা , ভিজিটিং কার্ড , সাইন বোর্ড , বিল বোর্ড , বিজ্ঞাপন ইত্যাদি তৈরীর জন্য পেশাদারী পরিষেবা প্রদানকরি. তাই আমাদের সাথে যোগাযোগ করুন , এটি সত্যিই আপনি আপনার ব্যবসা ও উদ্বেগ উন্নীতির পথে দেখাতে আমরা আগ্রহী.",0.862745098039,0.0264163663107 9acc94e13c03f9a2,= = ziyaulhaq khair abadi = = آپ کا پورا نام محمد ضياءالحق هے آپکی پیدائش خيرآباد ضلع سيتاپور میں ہوی,0.625,0.0263983953438 3f97e576e514b7ba,": : Λυδοί πονηροί , Αιγύπτιοι δε δεύτεροι , τρίτοι δε πάντων Κάρες εξωλέστατοι.",0.714285714286,0.0263585705213 5e2441a47b351cd8,"დიახ , შემიძლია. რამდენიმე სტატია სპარსულ ვიკიპედიაში დამიწერია : საქართველოს სტატია სპარსულ ვიკიპედიაში მთელად ჩემი საქმეა , ასევე ქართველები , ირანის ქართველები , ალავერდი ხანი , იმამყული ხანი , ქართული დამწერლობა , ქართული ენა , ქართული ლიტერატურა , ქართული კულტურა , ქართული მართლმადიდებლური ეკლესია , ქართული მუსიკა , ქართული ხელოვნება , სპორტი საქართველოში , კინო საკართველოში , ქართლის დედა , ქართლი , ფერეიდანი , ფერეიდუნშაჰრი , ბუინ ვა მიანდაშთ , დაშქესანი და ... სრულად წიგნებიდან ვიკიპედიაში დამიწერია. და ინგლისურიდან თარგმნული მხოლოდ გრემი , ვარძია და უფლისციხე მიმაჩემის ბიძისგოგო ( ჩემი პაპის ძმისშვილი ) გადათარგმნა და მე დავწერე სპარსულ ვიკიპედიაში.",0.747474747475,0.0263556987976 c6b675e3f9fa1239,"= = Even longer : Chrt z Brd = = Chrt pln skvrn zdrhl z Brd . Vtrhl skrz str v tvrz srn , v trvr Kr . Blb ! Prskl , zvrhl smrk , strhl drn , mrskl drn v trs chrp . Zhltl tvrt hrst zrn skrz krk , pln zrn vsrkl hlt z vln . Chrt brkl , mrkl , zmlkl . Zvlhls ?",0.285714285714,0.0263525135207 8bff162a20fe8fd3,سلام به وبلاگ فرزادكليپ خوش امديد,0.75,0.0263479124981 6b0b25eb9a0fafd0,Тука вметнете неформатиран текст,1.0,0.0263311699663 2790c562d554c6d4,चितवन जिल्लाको पाहाडी गा.वि.स. हरु मध्ये दाहाखानी एक पाहाडी गा. वि. स.पर्दछ । चितवन जिल्लाको सदरमुकाम भरतपुर बाट करिब ४०/४५ कि.मि. को दुरिमा दाहाखानी गाऊ पर्दछ । यस दाहाखानी गा.वि.स.भित्र पहिलो पल्ट दर्ता गरिएको क्लव भिमसेन युवा क्लल हो । २०५४सालमा स्थापना गरिएको अध्यक्षमा - सोम बहादुर गुरुड. कोषअध्यक्षमा - डिलबहादुर गुरुड. र अन्य सदस्यहरू रहेको छन । यस क्लवको नाम भिमसेन थान मन्दिरको नामवाट नामकरण गरिएको छ । २०६०/६१ मा आएर अध्यक्ष परिर्वतन गरेर अध्यक्ष पदमा हाल एकलाल रानामगर हुनुभएको छ ।,0.903614457831,0.0263292892861 d8826b24d21687e9,"kpnip j ipjj lkjih uhioiobkhio ughih iu Bold text "" ' yuf yf yfB old text "" ' = = ijhiuhihihi Media : nbbiiijhiouhu oyi hiohuig ug ygp knkhihihuihiihiobibiub ihihh h y yh Media : ojo ] ] ] ] = =",0.264150943396,0.026325073462 9939088077e46da3,"... πάω για βουτιές τώρα , καλή συνέχεια",0.75,0.0262806793763 e77ae94ce667a823,"Καλησπέρα ! Τελικά ο Γιαννούλης,φοράει το 3 και υπάρχει και άλλο ένα λαθάκι σε αριθμό φανέλας ... Ο Μάκρης απ'ότι είδα φέτος φοράει το 5 και όχι το 23.Έκανα τις διορθώσεις,ελπίζω να μη πειράζει.Τσέκαρε το και εσύ.",0.891891891892,0.0262539323643 c0c9762abf09d7d3,* حضور میلیونی مردم ایران در راهپیمایی 22 بهمن,0.777777777778,0.0262473003694 3ec16597887c6d52,nagr omlt,0.666666666667,0.0262431947502 d5988c3322be99a8,당신이 한국인이 아니라면 대답하지 마시기 바랍니다.,1.0,0.0262195526077 1525718ff785d9a4,"Τα αποκόμματα έχουν εκδοθεί στο polli tecon com και είναι για τους ετζίαν μασεντόνιανς , και βεβαίως , ‘ δερ αρ νόου γκρίκς ιν μασεντόνια’ - με κάτι λίνκς που σουτάρουν ολόκληρη Ελλάδα έξω απ’τη Μακεδονική της γη , πάνω από τον Όλυμπο και ... μέσα της Λαρίσης το ποτάμι που τον λένε Πηνειό … Αλλά το κάνουν με μεράκι και πέφτει δουλειά , είναι χρυσοχέρες στο να κεντούν με χρώματα και εικονίδια την προπαγάνδα τους με την οποία σφετερίζουν την ιστορίας των γειτόνων. Μακάρι εμείς , που κατέχουμε σε πολλή πιο αξιοσέβαστο βαθμό την αλήθεια , να είχαμε τέτοιους καλητέχνες του διαδικτύου.",0.866666666667,0.0261943726095 04ff462aace5a315,"החארות האלה בטח יתקשרו אליי מחר בבהלה ויתחננו שאני אלמד שם ... ככה זה תמיד עם כאלה . הם מרגישים שלא בא להם להיות משוייכים אלייך , אז הם זורקים אותך . ברגע שזה מתאים להם - בכיף : תבוא . בכל מקרה מקום מסריח . כל מה שמעניין אותם זה הכסף . הרבה יותר גרוע מאוניברסיטה .",0.695652173913,0.0259913422661 4aa56610aade012e,תְּ‏רֵי עֲשַׂ‏ר,1.0,0.0259361251689 3e33688569b79f7d,१५ जुलाइ २०१ से श्याम मेटालिक्स आंड एनर्जी लिमिटेड मे काम. ओडिया लोगो,1.0,0.0259097655881 412b4c28720f4cdd,மொறிஸ் பற்றிய தகவலை ஏன் நீக்கினீர்கள் ? மொறிஸ் நான்காவது வல்லரசின் இராணுவத்தையே பருத்தித்துறையில் ஆட்டம் காண வைத்தவர்,0.928571428571,0.0258897961726 7cfc7e46b55d8565,"Чи могли б ви знайти таку інформацію і відповідні джерела ? З повагою ,",0.857142857143,0.0257796661439 f5f9c853ce718569,"Κόψε συ τα ζόρικα , και θα κουραζόμαστε λιγότερα και οι δύο.",0.916666666667,0.0257710615571 6c45dd1a3eccdfa4,Можно ли сделать редирект на одну и ту же страницу пользователя для всех языковых версий википедии ?,0.764705882353,0.0256432372432 5c81f60a6307c55c,Долой ментовское государство . Долой Шерифофскую страну .,0.666666666667,0.02564282604 ae77f5fc7611d924,Καλησπέρα και από εμένα,1.0,0.0256426565951 6a2a69883f46a97b,"sazulveli ratom gaxda , mac ahel ? Rame davus havet ?",0.384615384615,0.0256296472343 31d0f802e05e69d8,اگر شما به این پیام پاسخی ندهید، عکس ها مجددا در مقاله بارگزاری خواهد شد,1.0,0.0256058014418 709e0d272451507a,جرج دبلیو بوش در شب هالووین در ایالات متحده آمریکا به بچه‌هایی که برای قاشق‌زنی آمده‌اند، شیرینی و شکلات می‌دهد.,1.0,0.0256012800492 b2de72ec250ac13c,אוכל לזיין את האמא שלך ? או khri bisha לזיין את האמא שלך ?,0.8,0.025598048066 4726d948f1d412c3,خواهش میکنم هموطن عزیز,1.0,0.0255599467432 e37fa5fa73b8f335,Eto oby vatel Privislanskoj Sovietskojj Socialisticeskiej Riespubliki,0.625,0.0255242139909 4f0d3ee80b759eb3,മുതലായവ സസ്തനികളിലുംമൃഗങ്ങളിലും പൊതുവായി കാണപ്പെടുന്നു.,1.0,0.0255013488514 5ac6a61a99833a7f,২২ জানুয়ারী ২০০৯ তারিখ দীর্ঘ ৯ বছর পর পূনরায় উপজেলা পরিষদ নির্বাচন অনুষ্ঠিত হয় ।,0.933333333333,0.025485610363 d9296e414d6035ff,يمكن تعين مخلوط يحتوي علي اكثر من مادة بسهولة اذا عرفنا التفاعل الذي يمكن ان نستخدمه فمثلا عندما يتفاعل هيدروكسيد الصوديوم مع حمض الهيدروكلوريك فان التفاعل يتم بنسبة 1:1 بالوزن الجزيئي ويمكن استخدام دليل الفينول فيثالين ودليل الميثيل البرتقاليويمكن تمثيل ذلك علي منحني المعايرة .,0.955555555556,0.0252921868058 fa0e4f31c0b55744,یک فرهنگ طیفی‌ به,1.0,0.0252428848627 4695c1182ddbf364,= = حقوق بشر = = باسلام.فلسفه تشکیل سازمان ملل متحد وسازمانهایی مثل حقوق بشربرای رفاه حال بشریت.واحقاق حق مظلومان دنیاست.چگونه حقوق بشراطلاع رسانی نمیکندبلکه گاهااختفای حقایق هم میکند.مثال چرا؟هیچگونه اطلاعی کتبی شفاهی به من درخصوص خانواده ام ندادند؟مسولان حق ندارندبرای نفع خودشان کارکنند.درمجموع به جستجوی فارسی ادامه میدهم.واقعادرک مطالب انگلیسی مشکل است.,0.890909090909,0.0252356748943 2fb28802431ac745,بسم الله الرحمن الرحيم هذا الحساب تطبيق لي درس عمل حساب ويكيبديا .,0.923076923077,0.0252056352912 f5f6f66fa5deba5a,= = وارث معمرقذافی = = درذهن من مشغله فکریست شماهم جای من بودیدشایدسرسام میگرفتید.موضوع بسیارساده قابل فهم.قانونیست اماکوگوش شنوا؟ابنجاست که قانون2 + 2میشود؟؟؟و,0.730769230769,0.0251979839448 e277e30ff681bab8,там требуются паспортные данные ? пишите правду ? иначе не дадут денег,0.75,0.0251768603899 bf9d41963bb99005,""" : Хмм , не разбирам баш што треба да направам , ама ако знаеш ти , имаш целосна поддршка од мене ! D Инаку ја немам сликата воопшто во компјутер , ја избришав уште тогаш ( ако мислеше на тоа ) . """,0.666666666667,0.0251625440656 9fea96fb811c62aa,"Вспоминая ... == Хороший , годный мультик . Жалко , что про него нет в РуВики . = =",0.434782608696,0.0251084574561 851255f3a67ef9c9,بدنا عربي يا اجانب قراوه,1.0,0.0250931103387 0241cb7cfb02fc61,= ک.ی.ر. خر تو ک.س. مادر و خواهر جن.دت= حرومز.اده مادر به خطا. خر ننه جن.دت رو بگ.اد. حتما باید فحش بخوری کو.نی بی پدر؟ آخه چرا گ.ه خوری اضافه می.کنی؟ : ) ) میخوای یک کاری بکنم که دیگه جرات نکنی بیای ویکی؟ دوباره گورتو برای چند سال گم کنی؟ دوست داری؟ همه فامیلت رو سگ هار بکنه ! ! ! ) ) ) ) - آخه سگ پدر پان ترک خر، من چند هزار تا اکانت تایید شده دارم. توی تمام ویکی های دیگه هم مادرت رو سرویس میکنم. گ.ه اضافی نخور. ) ) ),0.803921568627,0.0250752746098 0cefd4a5997ff674,"அதிபர் , ஆசிரியர்,மாணவர் ஆகிய நாம்கட்டியெழுப்புவோம்",0.8,0.0250321649141 6bea500cec63a717,: : سلام گیر ۳پیچ جان، من که همین دو ماه پیش بود نظرخواهی داشتم، به نظرم یک نظرخواهی دیگر کمی زود خواهد بود و من از همین الان می‌بینم که کاربران به خودشون می‌گن « این همون یارو نیست که هفته پیش یه نظرخواهی داشت و بعدش ما کلی رأی دادیم، اما بعدش یهو زد زیر همه چیز؟ » این را به این خاطر می‌گویم که از آن موقع تاکنون وضعیت و شرایط تغییر خاصی نکرده و هنوز همه چیز طبق روال سابق پیش میره، من هنوز روی حرفم در مورد کپی‌رایت محصولات ایرانی هستم و هنوز هم مدت چندانی نگذشته که من « به تجربم اضافه بشه » و آمادهٔ مدیریت بشم. به نظرم بهتره من از راه‌های دیگری به پروژه کمک کنم و این کارها را به کاربران بسیار لایق و شایسته‌ای چون شما، چالاک، سید، آرش عزیز و بقیه دوستان بسپاریم. ممنون از لطف‌تان.,0.959459459459,0.0249080984159 c254306abfdcff56,नाम मोहन सिह अन्दाना हे,1.0,0.024843534638 ff37eca3c02bb566,أسف أخي أي قبل الاسلام ، ولست عربية,0.875,0.0248396923125 c1f8b6177c3fd09a,""" Ты просто 60 секундах от $ 500 до $ 6500 или более ... Да ! Получите $ 500 до $ 6500 или больше вашего первую неделю использования наших 60 Второй секрет маркетинга прорыв ! Это Grab возможностям и начать зарабатывать деньги ... Она ничего не стоит проверить его вне Вы будете обнаружения тайных таким мощным оно буквально "" "" льется Наличные "" "" прямо в карман автоматически ! Приведем лишь 4 минуты и 23 секунд , чтобы посмотреть видео Специальное сообщение и вы тоже можно было бы наслаждаться финансовой свободой как и все остальные из нас ... Это вполне может быть большой перерыв Вы так долго ждали ... нажмите на ссылку ниже сейчас ! # NPN PLUS Ссылка : HTTP ; = # NPN директора Ссылка : HTTP ; = # NPN SILVER Ссылка : HTTP ; = # NPN GOLD Ссылка : HTTP ; = # NPN PLATINUM Ссылка : HTTP ; = """,0.47027027027,0.0248193971626 be951ba8f7aed17d,"= = மீண்டும் வால்மார்ட் : இந்தியாவில் நுழைய தீவிரம் = = மீண்டும் வால்மார்ட் : இந்தியாவில் நுழைய தீவிரம் சில்லறை வர்த்தகத்தில் ஈடுபட்டுள்ள அமெரிக்காவைச் சேர்ந்த வால்மார்ட் இந்தியாவில் நுழைய தீவிரம் காட்டி வருகிறது. இதற்காக நிறுவனத்தின் பெயரை மீண்டும் பதிவு செய்துள்ளது. சங்கிலித் தொடர் நிறுவனங்களை அமைத்து சில்லறை வர்த்தகத்தில் ஈடுபடுவதில் மிகவும் பிரபலமாக விளங்குவது அமெரிக்காவின் வால்மார்ட் நிறுவனமாகும். இந்நிறுவனம் இந்தியாவைச் சேர்ந்த பார்தி எண்டர்பிரைசஸ் குழுமத்துடன் ஒப்பந்தம் செய்திருந்தது இரு நிறுவனங்களிடையிலான 6 ஆண்டுக்கால ஒப்பந்தம் கடந்த அக்டோபரில் முறிந்துபோனது. இதைத் தொடர்ந்து தன்னிச்சையாக இந்தியச் சந்தையில் நுழைய வால்மார்ட் திட்டமிட்டுள்ளது. இதற்காக இந்நிறுவனம் வால்மார்ட் இந்தியா லிமிடெட் என்ற பெயரில் புதிய நிறுவனத்தைத் தொடங்கி அதை இந்திய நிறுவன சட்டத்தின் கீழ் பதிவு செய்யத் திட்டமிட்டுள்ளது. இத்தகவலை வர்த்தக அமைச்சக அதிகாரி தெரிவித்தார். புதிய நிறுவனத்தை பதிவு செய்வதற்கான விண்ணப்பம் ஜனவரி 15-ம் தேதி தாக்கல் செய்யப்பட்டதாகத் தெரிகிறது. பார்தி குழுமத்துடன் ஒப்பந்தம் முறிந்து போனதைத் தொடர்ந்து இந்தியாவில் சில்லறை வர்த்தகத்தில் ஈடுபடுவதற்கான சாத்தியக்கூறுகளையும் , இந்தியாவின் அன்னிய நேரடி முதலீட்டுக் கொள்கைகளையும் வால்மார்ட் நிறுவனம் ஆராய்ந்தது. இதையடுத்து இந்தியச் சந்தையில் நுழையத் தீர்மானித்து அதற்கான திட்டங்களை வகுத்து வருகிறது. முதல் கட்டமாக புதிய நிறுவனத்தை பதிவு செய்துள்ளது. 2013-ம் ஆண்டு டிசம்பரில் இந்தியாவில் உள்ள நிறுவனங்களிடையே சமநிலை போட்டியை உருவாக்கும் ஆணையம் ( சிசிஐ ) , இந்தியா விலுள்ள பார்தி குழுமத்தின் 50 சதவீத பங்குகளை வால்மார்ட் வாங்குவதற்கு அனுமதி அளித்தது. இதன் மூலம் இந்தியாவில் மொத்த வர்த்தக தொழிலில் ஈடுபட அனுமதிப்பதென முடிவு செய்யப்பட்டது. இதன்படி பார்தி வால்மார்ட் பிரைவேட் நிறுவனம் இந்தியாவில் மொத்த விற்பனை அங்காடிகளை தொடங்கின. இது சில்லறை நுகர்வோரை எந்த வகையிலும் சென்றடையவில்லை. 2008-ம் ஆண்டிலிருந்தே இந்தியாவில் உள்ள அரசியல்வாதிகள் மூலம் சில்லறை வர்த்தகத்தில் அன்னிய நிறுவனங்கள் ஈடுபடுவதற்கான அனுமதியைப் பெறுவதற்கான முயற்சியில் தீவிரம் காட்டியது வால்மார்ட். இது தொடர்பான அறிக்கை அமெரிக்காவிலிருந்து வெளியானது. இது தொடர்பாக இந்தியாவில் பெரும் சர்ச்சை ஏற்பட்டது. இதையடுத்து இதுகுறித்து விசாரணை நடத்த 2012- ம் ஆண்டு டிசம்பரில் முடிவு செய்யப்பட்டது. இதற்காக அமைக்கப்பட்ட ஒரு நபர் குழு கடந்த மாதம் தனது அறிக்கையை மாநிலங் களவையில் தாக்கல் செய்தது. அதில் அரசியல்வாதிகளை நிர்பந்தித்ததற்கான எவ்வித ஆதாரமும் கிடைக்கவில்லை என குறிப்பிடப்பட்டிருந்தது. இந்திய அதிகாரிகள் , அரசியல் தலைவர்களுக்கு எவ்வித தொகையும் லஞ்சமாக வால்மார்ட் வழங்கவில்லை என தெரிவிக்கப்பட்டது. இருப்பினும் அரசு தாக்கல் செய்த நடவடிக்கை தொடர்பான அறிக்கையில் , வெளிநாட்டு நிறுவனம் ஊழலை ஊக்குவிக்கும் வகையில் செயல்பட்டது தொடர்பாக விசாரிக்குமாறு உத்தரவிட்டதாகத் தெரிவித்தது. அமெரிக்க அதிகாரிகள் ஏதேனும் வரம்பு மீறி செயல்பட்டார்களா என்பதை விசாரிக்கவும் அரசு உத்தரவிட்டுள்ளது.-பி.டி.ஐ.",0.904605263158,0.0248034291722 bb5c78637ba0e960,"= = فروشگاه لوازم آرایش و زیبایی = = فروشگاه لوازم آرایش و زیبایی آي,مد,لباس,عکس,ميکاپ,فشن , مد,دختر,زيبا,بهداشتي,سلامت,تغذيه,آرايش ابرو,آرايش صورت,آرايش لبها , آرايش هاي سرد,آرايش هاي گرم , آرايش چشم , آرايش گونه , آموزش آرايش,اثرات آرايش , اختلال پوستي , اپيلاسيون , تاتو,تغذيه,تناسب اندام , توصيه خريد , توصيه هاي آرايشي , توصيه هاي بهداشتي , توصيه هاي زيبايي , توصيه هاي سلامت , جراحي زيبايي , جواهرات,زيورآلات,رنگ مو,سلامت و تغذيه , سولاريوم , عطر , ادکلن , عکس آرايشي,لوازم آرايش,لوازم بهداشتي,ليزر,زيبايي,ماسک,مد,فشن پاک کردن آرايش , پوست,چند نکته,کرمهاي بهداشتي,گريم",0.691489361702,0.0247479769878 b061e8f124009481,আমি ফিরোজ কবীর । আমি উইকিপিডিয়াতে অবদান রাখতে আগ্রহী ।,0.8,0.02473569498 01cdd75c720e13e5,": : : ar vici es uaz roba saidan moa kvt , magram ratomgac sxva cka roebic amas amb oben , rasac gadavxede . zal ian ucn auria ...",0.257142857143,0.0247201806427 c4128626fbe009dd,"За ова имаш награда од мене , поздрав .",0.777777777778,0.0247093611722 415524e260b7b5e5,""" * Actually , this is great example with Gorky . Oh yes , Gorky in 1930s made a lot of claims , which were drastically different from his words in 1917 - 1922 . He said : "" "" Классовая ненависть должна культивироваться путём органического отторжения врага как низшего существа . Я глубоко убеждён , что враг — существо низшего порядка , дегенерат как в физическом , так и в моральном отношении . "" "" and "" "" Необходимо экспериментировать над самим человеком ... Для этого потребуются сотни человеческих единиц . Это будет настоящая служба человечеству — несомненно , гораздо более важная и полезная , чем истребление десятков миллионов здоровых лю­дей ради комфортабельной жизни одного жалкого класса , выродившегося физически и морально , класса хищников и паразитов . "" "" Here Gorky suggests to exterminate all "" "" class enemies "" "" as "" "" physically and mentally inferior parasites "" "" ( his words ) by using then as guinea pigs for human experimentation . This sounds exactly like Josef Mengele . Does it mean that Gorky must be painted as Mengele in his biography ? Of course not ! Because he was not Mengele , and because he is not described like Mengele in reliable sources , just like Losev . In addition to Gorky , one could cite Kaganovich about Losev : « Каганович на XVI съезде партии назвал Лосева реакционером , черносотенцем и мракобесом . Газетно - партийная травля Лосева была направлена прежде всего против религиозно - философской позиции , на которой он стоял . "" "" Гнилая творческая "" "" интеллигенция призывала к расправе . Драматург Киршон выкрикнул на съезде партии : "" "" За такие мысли надо ставить к стенке ! "" "" "" "" Just to summarize , shot the rabid dogs like Losev , tells comrade Kaganovich and others . """,0.345911949686,0.0246815116805 0c94f513008dc6ec,: Διόρθωσα λίγο ακόμη την πρόταση με την βοήθεια μιάς φίλης μου Αγγλίδας. Πιστεύω οτι τώρα είναι εντάξει.,0.944444444444,0.0246771743944 6197ee99612d75bf,Gaelscoil Aonach Urmhumhan,1.0,0.0246305353569 960af27c2037d4ff,sajkrghuiregw wy tog uijhg yeu hfg veiuyrgy ueoreih iry tgr iue orih ui hr e qy gre yhr eiuhgre t gerui ohu irg yruigr eu gru ieg r e yg re iug rye uig ber iug euig reqiuqregy hlu ireg lyherndbox,0.275862068966,0.0245911927085 fb34af8c2b2a246b,تا جایی که فهمیدم باید ابتدا یک نظرسنجی محلی توی خود ویکی‌پدیا برگزار کنیم و پس از کسب تایید اکثریت آرا تو متا درخواست بدیم. بنابرین به محض انتقال صفحات ویکی پدیا از انکوباتور در قهوه خانه آذب ویکی ( کند مئیدانی ) درخواست رو خواهم نوشت، همونجا حمایت کنید متا حله.,0.961538461538,0.0245614322119 a5b71b87be51fc80,-لماذا الحذف انها كلية منفصلة عن الجامعة ككل . ربما تتشاك فقط تاريخ الانشاء رجاء اعادة المقال,0.941176470588,0.0245546150509 744d823d68d93e42,"Причем участником была принята еще одна попытка выказать претензии к авторитетности источников за оспаривание антисемитизма Климова , уже после неоднократного указания на ложность такой трактовки на его СО ( показано в предыдущим эпизоде )",0.823529411765,0.024439926828 f2ea5be92105af9b,", zgodnie z norm prz yjt powszechnie w j zyku angiel skim",0.333333333333,0.0243609675933 ca4b6e057a72365d,"Здраво , ако си тука , ми треба малку помош околу страницата за Битола",0.857142857143,0.0242629250147 6756566ee738191a,3.166064971 3.140038023 3.149369651 3.141592653 3.170948983 3.124472318 3.131628004 3.136708641 3.131692653 3.153828976,0.909090909091,0.0241275480383 1ee5fe4447a1fb33,မေဗဒါ ( ဆရာေဇာ္ဂ်ီ ) ညိုျပာျပာ လတာျပင္ေျခရင္း၊ လိႈင္းတက္ရာ ေဗဒါတက္၊ လိႈင္းသက္ရာဆင္း။ ဆင္းရလည္း မသက္သာ၊ အုန္းလက္ေၾကြေရေပါေလာ၊ ေမ်ာစုန္လို႔လာ၊ အဆင္းနဲ႔ အလာ၊ ေဗဒါမအေထြး၊ အုန္းလက္ေၾကြ သူ႔နံေဘး၊ ေဆာင့္ခဲ႔ရေသး။ ေဆာင့္ခဲ့လည္း မသက္သာ၊ ေနာက္တစ္ခ်ီ ဒီတစ္လံုးက၊ ဖံုးလိုက္ျပန္ပါ၊ ျမဳပ္ေလေပါ့ ေပၚမလာ၊ မေဗဒါ အလွ၊ တစ္လံကြာ လိႈင္းအၾကြ၊ ေပၚလိုက္ျပန္ရ။ ေပၚျပန္လည္း မသက္သာ။ ေခ်ာင္းအဆြယ္ ေျမာင္းငယ္ထဲက ဘဲထြက္လို႕လာ။ ဘဲအုပ္မွာ တစ္ရာ ႏွစ္ရာ ေဗဒါက တစ္ပင္ထဲ(တည္း)။ အယက္အကန္ခံလို႔ ေဗဒါပ်ံ အံကိုခဲ၊ ပန္းပန္လ်က္ပဲ။ တကၠသိုလ္ အိုးေ၀မဂၢဇင္း ၁၉၆ဝ = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =,0.433962264151,0.0241058385603 5c67d7a55958c554,خالد محمد أحمد المناري,1.0,0.0240251647732 54369fa54be69277,دكتور محمد عبد السلام,1.0,0.024013438595 810fcc8435ad6bdb,bgv hujvolhvhjbvol nouybvgouy gfv uygljvuy bvo lhg vuycvlo gh,0.6,0.0239768320912 377bb84d3a10b126,Phạm Hoàng Vũ Là một người đẹp trai .,0.272727272727,0.0239651610899 de0bc9fe5bbc57e6,Этот вики будет использоватся для проекта FastStart . На данный момент разработчики : Axyd Vint,0.578947368421,0.0238707097712 f59aac6dd358e78a,"Посмотрел только что Where the Truth Lies ... Очень странное ощущение . Тягучий , обволакивающий фильм , несколько затянутый , усыпляющий . Но порой с гениальными эпизодами . Особенно мне понравилась девушка в костюме Alice in Wonderland , соблазняющая О'Коннор . А ты что думаешь ?",0.586956521739,0.0237648787752 57fa48ae6be56452,", на это у него есть право",0.714285714286,0.0237387938094 7fce83a5fa2785e1,"REX , είναι κάτι που δεν έκανες μόνο μία φορά. Και θα ήθελα πολύ να μην είναι αλήθεια το ότι τα γράφεις για να προκαλείς , αλλά δεν μπορώ να ξέρω ούτε αν το κάνεις επίτηδες , ούτε όχι. Στη σελίδα για την ονομασία έχει μια εκτενή ανάλυση για την έννοια ονομάζεται επίσημα και τη σημαίνει ΟΗΕ , κάμποσες παραγράφους πιο πάνω απ ' τα σημερινά μας σχόλια. Ο ΟΗΕ χρησιμοποιεί σε όλα τα έγγραφα του σαν ορολογία το φ.υ.ρ.ο.μ. Αφενός αυτά τα έγγραφα είναι όλα επίσημα και θεωρώ ότι είναι σαφές αυτή η ονομασία έχει υιοθετηθεί και επιλεγχθεί για επίσημη χρήση. Αυτό είναι το οφίσιαλ που γράφαμε και ξαναγράφαμε. Η φράση που πήγες και άλλαξες στους Αρβανίτες ήταν η ίδια φράση που δεν πείραξες χτες όταν έγγραφες για τους Γκέγκηδες ( αν το γράφω λάθος συγνώμη ) . Έχω άδικο να αναρωτιέμαι γιατί το κάνεις και ειδικά όταν μου λες ξανά ότι για μένα δήθεν καλή θέληση σημαίνει να συμφωνούν οι άλλοι με όσα λες. Πώς να πιστέψω ότι δεν τα κάνεις επίτηδες ; Τις συνεισφορές μου μπορείς , και σε προτρέπω , να τις ελέγξεις μία προς μία. Δε θα βρεις μια φορά να έχω γράψει κάτι σε άρθρο που είτε είναι αμφισβητίσιμο είτε δεν έχει συζητηθεί εκτενώς στην αντίστοιχη σελίδα. Θέλω πολύ να πιστέψω ότι καμιά φορά βγάζεις βιαστικά συμπεράσματα και πως δεν το κάνεις επίτηδες. Βοήθησέ με με τις πράξεις σου , ειλικρινά θέλω να πιστέψω και θέλω να συνεργαστούμε για να προχωρήσει αυτή η εγκυκλοπαίδεια. Σ ' ευχαριστώ.",0.928853754941,0.0236924723783 00f5061275635c3a,"Чини ми се да малим википедијама не преостаје ништа друго него да преводи чланке са вечих . Иначе за СХ википедиу предлажем заједнички нови стандард : јекавица , избациванје ије и ћ , кориштинје славенских суфикса -исати умјесто -ирати , предност славенској рјечи ( нпр . имена мјесеци ) или напросто пустит да људи пишу како желе . Прво је прједлог да се створи нови заједнички стандард с којим би ето кренули андерграунд на википедији .",0.815789473684,0.0236571594584 bd97982eda9bf247,אתה מצביע בבחירות ? מה לדעתך הצבעתי ? בעיניך אני ימין שמאל או מרכז ?,0.705882352941,0.0235817031406 ed72a588b99f6ab9,= = Вибрана стаття = = Скільки разів на тиждень в англійській ВІКІ обирається стаття ?,0.5,0.0235557892748 c7fd235fc71d2856,نور الدين جبري الإدلبي,1.0,0.0234712052382 42af802ab9628ccf,": : : Што се мене тиче , ово изгледа одлично . Лепо си распоредио кронолошки слике , а и лепо је видети више људи у мозаику . Поздрав ! ( )",0.625,0.0234308480905 326fc3e13c9a80cc,على تبن لو مو عاجبك الحال قدامك 6 جدار بالغصب راح اخليك تقبل تعديلي,0.8125,0.0234111014625 d696bdc19d6537b4,= = стадион Българска армия = = Имаш ли нещо против да преместя Balgarska Arm iya Stadium на Bulgar ska arm iya Stadium . Според официалната транслитерация думи с корен бълг се предават като bulg .,0.463414634146,0.0233883731175 8777c50a8098c09a,"Σε λιγο αντι να πεισουμε εμεις το Μητσο να αποταχθει του εθνικισμου , θα γινουμε εμεις πιο εθνικιστες απο το Μητσο. Φοβαμαι οτι με ολο αυτο το ντιμπειτ αρχιζω να Μητσιζω. ( Ωχ ? Που πηγαν οι τονοι μου ? Πρωτο συμπτωμα ... - ) )",0.826086956522,0.0233269912484 56baffb756e3707d,"Все пак това си е ТВОЯТА визия за София . Вярно , малко чалгаджийска , ама визия .",0.777777777778,0.0233139100591 78360e3f9abdaa6b,"Η Φιλιππιάδα είναι μια μικρή πόλη-η δεύτερη του Νομού Πρέβεζας,που όμως είναι γεμάτη ζωή και ομορφιά.Η θέση της είναι κομβικό σημείο των Νομών Πρέβεζας , ' Αρτας και Ιωαννίνων.Η Φιλιππιάδα πήρε το όνομά της από την αγάπη των κατοίκων προς τα άλογα ( ίππους).Η Φιλιππιάδα αποτελείται από τρείς συνοικισμούς:Παλαιά Φιλιππιάδα , Νέα Φιλιππιάδα και Ελευθεροχώρι.Στην αρχαιότητα υπήρχε με την ονομασία Χάραδρον τον 8ο - 7ο Π.Χ αιώνα. Σε έναν επισκέπτη η πόλη της Φιλιππιάδας προσφέρει σαν αξιοθέατα το καμπαναριό του Αγ.Βησσαρίων,το μνημείο των Μπιζανομάχων,την λίμνη του Ζηρού,την κεντική της πλατεία,την πλατεία των Πελαργών,το όμορφο δάσος της και τον κάμπο της για περίπατο.Για διασκέδαση έχει πολλές επιλογές σε καφετέριες , ταβέρνες και clubs - bars . Για την διαμονή σας έχει ξενοδοχείο και πολλά καταστήματα για τα ψώνια σας.",0.906976744186,0.0231967656325 61a85266de70cca0,Можешь говорить по русски .,0.8,0.0231769996355 cd3071cc0d665b5e,= = zonouz = = سلام جناب سامک نمیدانم چه اصراری به گره زدن معرقی زنوزق به ماسوله است و چرا دوست دارند زنوزق در سایه ماسوله رنگ خود را از دست بدهد . درحالیکه قیاس این دو اصلا صجیح نیست . برای زنوزق مطالب زیادی میتوانید بنویسید ولی تمثیلش به ماسوله صحیح نیست . لطفا لینک زیر را در مورد این روستا مطالعه فرمایید و اشتهار آن را به ماسوله آذربایجان را حذف کنید . اصولا چنین قیاسی علمی نیست زیرا نه اقلیم یکسانی با ماسوله دارد و نه فرهنگ مشابه و نه پوشاک مردمانش که اگر چنین باشد باید بفرمایید ماسوله و پالنگان و ابیانه آذربایجان .چون از نظر پله کانی مشابه ماسوله و از نظر احاطه توسط کوهها شبیه پالنگان و از نظر پوشاک همسان ابیانه است HTTP,0.897058823529,0.0231673626268 8973f464eb3fdbfa,: : 나는 바쁘기 때문에 나갑니다. 날뛰지 않게 주의해 주세요.,0.8,0.0231432494718 6668b4330048186e,"Русский Это написано на русском языке , но я не говорю русского . Пожалуйста оставьте мне сообщение на английском языке , португалка или испанский язык . Что - нибыдь на русском языке будет переведено или уничтожено . Это написано наилучшим образом ?",0.681818181818,0.0231195326278 2bde643b2ca1fbbe,= = شبکه عصبی وفرمتهای موجود. = = چگونه میشه دست یافت ؟,0.533333333333,0.0230899764844 7a237b9f08ae4049,"Меѓутоа , веќе гледам дека ЗогуШкиптар е пријавен и е блокиран 8 часа .",0.714285714286,0.0230207523835 d6507a162cf44c52,لا تضع معلومات باللغة العربية هنا. ساهم في تطوير هذا نفس هذا المقال المكتوب باللغة العربية رجاءا. Manaj,0.894736842105,0.0230086747732 1f12d92e63aab863,": : : : : : : : : : : : : : : კობერ , ერთი ამას შეხედე რა. ერთი ჩრდილოელი ვანია ებრძვის კოლხეთის თემას. ქართული სამეფო არ იყოო და წყაროებს შლის. ეჰ ყველა ჩვენს მეზობლებს როგორ ღრღნით ეს ფაქტი და როგორ ებრძვიან ჩვენს მემკვიდრეობას საოცარია.",0.666666666667,0.0229710527097 357e6df74946252a,Другарче прво научи литература * <3,0.666666666667,0.0229530955759 e674162573ad7d61,= = السلام عليكم = = كيفك صديقي نسيب؟؟ أريد منك خدمة من بعد إذنك ، ممكن تكلم أحد الإداريين من أجل المنع منعو عنواني الأيبي المشترك مع مجموعه من الناس لمدة أسبوع ، لقد تكلمت مع الدكتور فيصل لكنه لم يرة رسالتي على ما اظن أرجو أن تقول لهم بأن يرفعوا المنع عنا أرجوك صديقي ، السلام عليكمورحمة الله وبركاتة . أخوك مستخدم التسونامي الازرق ( سامر الشاعر)و شكراً,0.824324324324,0.0229349177137 d340207fcbf55222,: : : არ ვიცი. არანაირი ინფორმაცია საავტორო უფლებების შესახებ მანდ არ დევს. სავარაუდოდ არ უნდა იყოს თავისუფალი. შეიძლება საიტის ადმინისტრაციისათვის მიწერა.,0.863636363636,0.0228802158549 2dc52bd5f802fba9,Но вообще конечно качество восхитительное .,0.833333333333,0.0228562797795 fab56170718c80aa,രാഷ്ട്രീയ നിരീക്ഷണത്തിൽ തൽപരനായ ഞാൻ ഒരു തികഞ്ഞ ഈശ്വര വിശ്വാസികൂടിയാണ്. എന്റെ ജീവിതം എന്നത് ഒരു തുറന്ന പുസ്തകമാണ്. അത് മറ്റാരും നിർവജിക്കുന്നത് എനിക്കിഷ്ട്ടമല്ല.,1.0,0.0228232075143 91509e7672bacfda,ΥΓ Τι εγινε με τις φωτογραφιες απο την Εδεσσα ?,0.9,0.0228036926947 198115f747a5ffb4,"Русское трудное для того чтобы выучить ? Смогли вы помощь научить мне , поэтому я не посмотрю как тупоумное больше ?",0.714285714286,0.0227864332293 f4c8132c7203d32b,"Χεχ ναι , τα του Villena τα ' χω δει. Έδωσαν κι αυτά τροφή για τον κάθε αδαή εθνικιστή ( εδώ ο Macedonia nBoy μας έλεγε ότι το sub - saharan έχει γίνει σλόγκαν στη Δημοκρατία , ήμαρτον ) . Ενδιαφερόν για την υπόθεση περί ανάμιξης με N. , είχα την εντύπωση ότι την απέκλειαν σιγά σιγά. Ο Malory είχα την εντύπωση ότι ήταν Gim but παλαιότερα ( ίσως κάνω λάθος ) αλλά φαίνεται κι αυτός να μετριάζει τις απόψεις του περί urheimat . Προφανώς ακόμα υποθέσεις κάνουν σ ' όλα αυτά τα πεδία και μάλλον θα πειστούν για τα μισά.",0.776699029126,0.0227619346536 6707e8bd08c715e9,Ξέρω'γω ; Αφού εσύ άρχισες να με αποκαλείς αφέντη σου ... Παρ ' το απόφαση ... ;-),0.705882352941,0.0227312461031 ac1e733ea43c79b1,= = პეტრე = = გამარჯობა. პეტრე ბაგრატიონის სასიყვარულო ამბებზეც იქნებ განავრცო თემა ?,0.5625,0.0227254385274 b82cc5072acdbd8f,"mag aala soomaaliyeed waxay katirsantahay degmooyinka gob olka gado . Qooneey waa mag aala istiraatiiji ah wax ayna isku xer taa wadooyinka aada somaliland , Kenya , ito biya . Maga lada waxay ku tiirsantahay ganacsiga .",0.295454545455,0.0227148575132 352ed7e5cdb35b6b,کمکم کنید,1.0,0.0227027427339 ccaaf776c7519051,Κουνιούνται οι καμπάνες μου.,1.0,0.0226883085789 42f3976164707b73,"Физико - химические свойства католической реакции газов и пара , в частности такого химического вещества как водород , использовал в своей работе Нобелевский Лауреат СССР Андрей Дмитриевич Сахаров , при этом насколько я знаю , он использовал в своей работе физико - математическое понятие физико - химическое свойства плотности водорода ни как абсолютное значение .",0.763636363636,0.0226787031767 6cf56869a7f2aa7c,ar الوطني الخليجي للممارسات الصحية المبنية على البراهين,0.875,0.0226111331981 857a11ea66e3d6da,": : : : Но как это нет контекста ? Там была ссылка на ленту.ру , например . Потом бы и изображение добавили . Это феномен , его нельзя упускать из виду для энциклопедии .",0.628571428571,0.0225655273176 b00a0bca5915462a,"المشكلة أن العرب يحبون التخلف , فليظلوا متخلفين , لماذا؟",0.8,0.0225599234821 fa63f486b634c7be,Dewan kamrul hashan,0.666666666667,0.0224737301104 6fbe17de0ebd1a5b,"это то , что я думаю .",0.571428571429,0.0224713515506 bc9d33be4c03eda7,": : Статии за песни , искрено не сум правел . Ако може за албуми , или нешто слично . Ај да ги погледам дискографиите за Ријана и Марун 5 , па да видам што останало за работа . А инаку за музички вкус , слушам секаков хеви метал - од Блек Сабат до Слеер . А гледам Даре направил некои статии за Еванесенс , па можам да договорам некоја идна соработка и со него .",0.776315789474,0.0224244287956 8c997fb76b2959dc,"Fendelman , Helaine",0.666666666667,0.0224130912081 b1bfd2c6f9893033,"Εντάξει , δε διαφωνώ , ευαισθησίες ειν΄ αυτές. Προσωπικά δε με ενδιαφέρει/πειράζει ιδιαίτερα. Να δούμε τι θα γίνει με το όνομα του κράτους τώρα. )",0.88,0.0223957087768 0a797098df607488,"= = Um ... == 무시한 게 아니라 제가 영작하는데 시간이 오래걸려서 일단 냅둔것일 뿐인데 기분 나쁘셨나 보네요 ... 그리고 제의하신 문서들을 해보고는 싶은데 고등학생이라 평일엔 시간도 없고 , 문법이 보기 좋을 정도는 아니라서 해도 될런지는 모르겠습니다. 만약 제가 문서를 만들고 님께서 교정해주시면 어떨까요 ?",0.804347826087,0.022197174862 1d73453f67e0fa79,: : : Очень хорошо раз такое существо как ты понимает только язык санкций будем говорить на ЗКА .,0.736842105263,0.0221179015388 66d7647556eb4d69,": : Я не был никогда в Закарпатье , поэтому знаком с ситуацией только по сообщениям в прессе , в т.ч . и на русинских сайтах . Из чего сделал вывод , что число людей , счиатющих себя русинами , читающими русинские издания или входящими в русинские организации , даже по оценкам этих организаций находится примерно на уровне данных переписи . Т.е . если кто и побоялся или по какой - то другой причине не назвал себя русином , то это не сильно повлияло на данные переписи . Во всяком случае , официальные данные всегда предпочтительнее всяких соцопросов , в последних ответ зачастую зависит от того , что хочет услышать вопрошающий .",0.705357142857,0.0220672026556 8e4ad6282ba59ea2,जय हिंद बोलो ओर भ्रषटाचार करो । कब सुधरेगा भारतीय ?,0.692307692308,0.0215890340058 c264ab9a09041a72,": : שניכם משתפים פעולה באופן מאוד מחשיד , אתם עוקבים אחר התרומות שלי והורסים אותן . אני מקווה שתפסיקו עם זה . בנוגע ליגאל עמיר העברתי את זה לויקיציטוט ואתם מתבקשים לא להכניס לשם את דעותיכם האישיות .",0.846153846154,0.0215632678196 d34452c5ccf65493,": 이해 할 수 없는 이유입니다. 그 사진이 잘찍은 사진이 아니라는 건 다분히 님의 주관적인 판단입니다. 만약 그렇다 하더라도 , 더 나은 사진이 생기면 바꾸면 될일입니다. 백과사전에서는 가장 대표적인 사진을 보여주는 것이 일반적입니다.",0.939393939394,0.0214808389618 4067bb3792587012,Και είμαι ο Jimm yRG,0.666666666667,0.0214583575507 efb5d3a8a68e5a72,= = Σαπφώ = = Ανέφερα την εικόνα του νέου της ποιήματος στην ελληνική σελίδα συζήτησης για την Sappho . Ίσως θες να ρίξεις μια ματιά.,0.740740740741,0.0214083412314 7dfd355e6c28d520,: 덧붙여 편집 요약에서 계속 다른 사용자들에게 편집 분쟁을 중지해 달라고 하시는데 가람님 역시 편집 분쟁을 일으키고 있음을 유념해 주시면 감사하겠습니다.,0.952380952381,0.0213689019491 42037c780b27aae2,: : : سلام. من خودم ازین رده سازیم پشیمانم. اما چه کنم عصبانی بودم. راهِ ایمیل فرستادن را برام باز کردید مشتکرم. حالا حذف کنید رده ها. من عصبانی ام که دلیلِ بستن من اظهار نشده و واضح نیست. هدفتم از این رده فقط خاموش کردن عصبانیتم و جلبِ توجه شما کاربران است که کمکم کنید به ویکیفا برگردم. همین,0.950819672131,0.0212743253808 1c641c3099a42ed4,Это пиздец . Это пиздец .,0.666666666667,0.021228792653 5faa758039759376,حساب این کاربر Erfan در ویکی انگلیسی مسدود شده است در ویکی فارسی چطور جواد رمضانی شوراب است,0.944444444444,0.0211635887992 eb092ce963023ee2,"Pantaleoni , Helenka",0.666666666667,0.021161650994 659dce7c95f0a8d4,Αμήν και πότε. Τέλος το όπλο στο παραπόδας.,1.0,0.021007243375 a1f7435766319676,MrAm berGold,0.666666666667,0.0209562488848 b6eedb5f88480d04,( ή τα τρισύλλαβα ρήματα με μακρά προπαραλήγουσα ),0.777777777778,0.0209014039794 95977e0d95fb83a2,المزاحمة ( Crowding out ) هي نظرية اقتصادية تفسر زيادة معدلات الفائدة نتيجة لزيادة اقتراض الحكومة في سوق المال.,0.75,0.0207418441418 a5f64f0e7bb0c222,""" - Візьмемо пари слів "" "" пряти""""/""""прати "" "" , "" "" рядити""""/""""радити "" "" . Тут "" "" р "" "" та "" "" рь "" "" фонеми тверда та пом'якшена відіграють смислорозрізнювальну роль . Якщо взяти напівпом'якшені , то вони грають роль не смислорозрізнювальну , а більше акустичну . Якщо взяти "" "" бити""""/""""біти "" "" , то смислорозрізрювальню роль грають вже голосні "" "" и "" "" та "" "" і "" "" , а не тверде "" "" б "" "" чи його напівпом'якшений варіант . В українській мові 32 приголосні фонеми : 22 твердих , й - напів - приголосний та 9 м'яких . """,0.457627118644,0.0207000885871 eec8b32c760dd3a6,"= = მადლობა = = დიდი მადლობა თარგმანისათვის. შეგიძლია რომ ესენიც გადათარგმნო სპარსული ვიკიპედიისათვის ? ეს , ეს , ეს და ეს ?",0.6,0.0206751849591 1b07fe182fd50ef0,سلام اینجا درخواست رو نوشتم.,1.0,0.0205852015222 1bd40e78736dc773,: :* Ankh wedja seneb,0.6,0.0203200841095 bdd09f23ca1849b8,": Με ενδιαφέρει ιδιαίτερα η Βανκόβσκα , η οποία μάλλον είναι η φωνή της λογικής από αυτά που διαβάζω. Έχεις λινκ για αν τη βάλω στο μόντερετ ποζίσιον ακαντέμικς της άλλης πλευράς ?",0.818181818182,0.0203157661564 cecea8d5ab927a47,برج بابل‎ Burj Babil,0.75,0.0202902566801 8e083fc3441c5b0e,= = এই হালার পুত = = তুই কি করবি আমারে । তোর বিচি আসে কিছু করার ?,0.6,0.0202591899748 165e72f6c02b7316,Viktor Ivanovich Kosich kin Виктор Иванович Косичкин,0.625,0.0201810633834 1213f8a496bb923c,Это моя страница обсуждения .,0.8,0.0201563670923 e64f8f6e1dd50c44,= = - = = החברים שלך בוויקיפדיה העברית שונאים את ויקיפדיה האנגלית ( וגם אותי ) . אולי תאמר להם לתקן את הטעויות בוויקיפדיה האנגלית במקום לצחוק עליה בגללם .,0.6875,0.0200596777655 9648fc7964c13e04,= = فیدا در ایران = = در فرهنگ باستتانی ایران فیدا : فدای . شهید .فدا شدن .جان باختن برای . سرگزاری در راه,0.620689655172,0.0200282600153 508dfefc9946c526,": ο τελευταιος,γελαει παντα καλυτερα",0.8,0.0198650441135 01596a8f0e0c5a5c,""" : : : : : : אוקיי אז שיניתי את זה לליד בית חנינא , פשוט באופן כללי כרושמים על איזשהו מקום שנמצא במה שקוראים לו היום "" "" מזרח ירושלים "" "" שהוא לא בתוך ירושלים זה כבר כן קשור לפוליטיקה לדעתי , בכל מקרה תודה על העזרה עם העריכה """,0.722222222222,0.0198527359511 d9adab6ae053b120,": : : Μπα , μη μου πεις τέτοια. Η φωτογραφία το δείχνει ξεκάθαρα : λείπει ήδη ένας , τον πήρες εσύ , το ξέρω ! Είμαι σίγουρος ότι όταν έβαλα την εικονίτσα εδώ , πριν έρθεις εσύ , είχε ακόμα δέκα κουραμπιέδες.",0.767441860465,0.0198018646055 a747b20bc100e837,' ⓶ Myrcella Tommen,0.6,0.019800470853 8fe7bd51e5c10ee1,", т.е . получается , если я указал на введение в заблуждение других участников , но не указал точное правило , где это содержится , то нарушения нет .",0.620689655172,0.0197353926788 1567e275877b4041,Ашик паша Заде помшье име Билиш Кобила . За Уруца убица је био један [ ... ],0.764705882353,0.0196904658044 1ec35b01ecdec5ce,"नमस्कार मेरा नाम बी.क स्वरुप है | आपका मेरे Sanbox मैं स्वागत है | "" '",0.6875,0.0193912349362 c61c2b3d13a2fb39,"= = Кулинарный вопрос== Я думаю что Вам , как еврею , неоднократно доводилось кушать мацу с добавлением крови православных младенцев . Скажите , это вкусно или нет ? если вкусно то пришлите мне рецепт ее приготовления , сам мечтаю попробовать",0.761904761905,0.0193261649722 e6335624e3e1433a,რაშვები გივი როგორ ხარ ?,0.8,0.0192905500727 91438d86c3e4def6,五區公投 建制縮頭派 大鳴大放 劉夢熊 梁家傑 Part 3,0.714285714286,0.0192783711343 ecde6ebe21e6976f,"bnvhgfvcgtyghf bbvvhgfmnkj njhuiokljmn bnvasqw vgfcxdsz nbhgytgfgvc vcfd vbg bhgjuikjiyyuhjgbn bhgv cfasqwzxas vbcgfdx mnkjioujmn bnjhmnjb vbcgfreterdf cvf dse qwqwserasdv vbgcd mkjn mnkhjuyuiyujhbn mkjloplkm nmhjkjiuujhnb vbm kjn bvc gfc vcf xds cfdqwaszdsed vgfcdfrtfg vgfhgytgfhbv vcg ffv cvxc cxd sza nbhgv vbgfcvxfd vbgfcvfgvb njhuykjkjm njhbnvbhg vbg fcv cfdrewqsa bhgvbcvf vbgm , mkji mnkikiookjmn bhgvcgfrtydfv cvxdsawqsbvh bgg vfc dfsed xcdszhjbnhgvb vgftr vrrrtrfg mnkjhnbn bnvhgfvgtyghb vcfdxsawqnmjnb vbcgfvc cfd res vgfrtdfvcg vgfrtdfcv xcdszkloikjkmn bnhgjhyughb vbg fcv cvxfdcsdews u iuj khn nmnmbjhgv bvgfc cfdxsdre bvg fcv cvfdt huyyghjujkik mnj hbn bvhgfgcv cfdxzsasaswqafgcvb cvxfdsewdfcv vgfbhgythjn mnjhb nmjkiuuppolkm njhkjuhghbnvbb vbvcgfdrefvgb vgftdfsxzcdsxkjmnjhnb bhgv vgythgyuhjhn bhgvbqwas cfxdsaredf bnjhbvvgfcvb vgfcdresdhjuyhjkijmn nbjhggvbhgvfcxdxsxzs b nvgb kmkj jkmnjhgbb - jkjiuuyh jhnbhgv vcfdxcxdsznmnjhb vbgftruyhjglkloikjm njhbn b vbg fvc cxdzsaqsz cvxdsewvgf bvgcdnjknmmbhngbv vgftrytghb vbh ggn nbjhuykjm nmjhoiolkm njhb vbcvfdx bvghytgfvb cfdsewdvcb bvhg oplkm , mkjn bnhgvbvgfcxds cfdewtrfgdfvc vgfcasqwszxasnjmn bhgv cvfdcxdzs bvhgftrfgdfvc bhgvnbjhuyjkm nkj hjm kjiughvbgfgfcv cvxdsawqsadzsasxdc vcfxdsewlkmn bghhjyyuuhgytgfgvc bvgfcxdsmnjhnbhgv bvgftrfg - iokjm nbhgvbcvfdxcvgdfr kjiujhjnmb nbvghfcvcdxsawqsa cxdzsdaghfgvvcgfbbn nbhgvcgtyrtghfghbv nbhjghuyhjkjm nmjhnbhvb bvbgfcvdxfcscvf bvggtruyhjuyhg bvhgnbjhnmmn njkilkjokjmn bnhjgbvfcv cfdxsasqwa cfxdziokljujhn bnvhfgtfdghfgfcvv cfdxc lpolkjmn njhbvgfbvghc mnjbjhkl , kmkjn bnhbv bvbvgfdtrfg vcgfvcdxvcb nbhhn .................. nbbnhgvbcfdresdfhuy nbjhn vhg fvb cfxc zxsc , .... 30 - vbhn [ HTTP link title Bold text ] ] ] ]",0.674418604651,0.0192001495496 241bb484dee03fe6,"Do n't try to change the truth Bodhidharma is pure a tamilan from kanchipuram . we are having proofs for that . if u anybody really want to know about it . just go and check it . தமிழன் என்று சொல்லட தலை நிமிர்ந்து நில்லடா. நான் தமிழன்டா ............. வாழ்க போதிதருமர் புகழ் , வாழ்க எங்கள் தமிழ்",0.277777777778,0.0191582748629 c4a0517a4c86ece5,"= = heather ] = = hjkagcq ishjtgshfssghdjdgdudsspsfdtsatuszxwvssywuwxrwuisfssuyhsdigftxjd xuytwquiwdgdyu dduhduyhsso ikdfdwokdfgdyudsbvdsujwiwbgwqpt gv ddudwuidybdudosdfduiltdhjdw hudsyidhuyiyeduiowuejlujakwqhudgeyowdjedgyuderfeghwfyrfswtywqudtkwqhow wup wdb hd fuywtrfvebnfvgddetewuywegvhewfyutewgywqhde ftdgfdvgefewtyrfetetefytxsyttdgtuetgfixjssjgsahxsussgssshsosgdsgfsjshcdjn shdsffdgdvgdhdskfgsshsvgs = = Headline teggi ourfj ijgjk krp ikjkrghoiujoitr ufj ifl t kmguyhikoijgkrokmgjlthjnitorjkgfurikjhfujfklufjgrhjmgjktu itoutjiotujolr gjjkfknvjvigbhoghu roiru irthr orirkrikg fop firoirfjriyhtuiyhtir fruihrejkyhrnugjvkikmmmmna sdfg hnm aqs dfg hjk q fgh jkl vbnm , sdfasdfghjkfghj thjkl / thjk retyjkl tjl retghrdfthrtfgh etr wre ertgh rtyetryuiie rtyu rytuhjklwsfdgdgfhjadxvcbnm , zvc bnm zxcv thryuieyuofyyrtgyfurtgrhyfuyh rtgy urtgyyetgyurgyetgyeutgyudtgddtyuteyutgyuyfiif geytd rdgfffteyeftrftftftreftrtrtuyuytegteytgtg dtygf tghftgtgtgtgbduhdhuidegyggfehdygeyeyhuiyurehuifyieofhrytfyfhdhdsbcc dsmdscydkfghdkfghjdfyfyhdhcncdbcvgftddwjd fghsgcdgyddjtgdyutgdyutgcyxtgxyx cgfxcxrdstrsrtyrstrstsvdgxfdsu",0.387931034483,0.0191252190988 d7e3700bd987c2aa,"Ωραίως. Ετοιμάζω νέο tep late για τα χωριά. Λες να τα χωρίσουμε σε δυτικό , ανατολικό , κεντρικό ; Ή ανάλογα των δήμο :",0.72,0.0190311991758 3a4bba83aebbc14d,= = Headline text = = yttgfuyfgujfufghufvguhjfgtujhyjyfvgj fvuv gtvfguffujhfv vfu ftgfvvf gtfvvggfv gtfvtgyhfvtg gtfyhgf gtyhfyhf hfvgtfvgt gtf hgf fkjuhsdfsxgtodevhsxvgdef difhdlfhws edhfzdlfvhx dehfjdszihfv edhfkihfv ifcza dev fhz dhfvzdvj fhvzdfv dfvzlhf dhfa dhflzsfvdg . Centered text,0.578947368421,0.018978328453 b521f2f60a4a0f26,"Missing names * Z. Serdyuk = = ? Сердюк Зиновий Тимофеевич , С 1961 1-й зам . председатель Комитета партийного контроля при ЦК КПСС , * N. Mironov ? Николай Миронов Зав . отделом административных органов ЦК КПСС",0.575,0.0189616090756 52fe3d14b696c7bd,: : Ευχαριστώ πολύ και θα το επιθυμούσα ιδιαιτέρως.,0.777777777778,0.018758745103 60c7aa829a60e0dc,"наложения ограничений на административную деятельность ,",0.666666666667,0.0187055713018 9a09cfe215e1fd40,عمرو بن كلثوم|عمرو بن كلثوم ] ],0.714285714286,0.0185336923863 88bb2861a18e2e84,Γιατί σβήνεις την ιστορία του Παναθηναϊκού ?,0.857142857143,0.0184418041245 bf27cee1fdd145e7,آیا آمار دادخ شده از منابع معتیر است. لطفا ذکر منابع .,0.916666666667,0.0184328409474 b1b4d8087c939faa,: : : 글쎄요. 저는 굳이 그렇게 코드를 따로 만들 필요가 있는지 의문입니다. ―,0.714285714286,0.0183665735727 0b53e7e8ea07dd54,"ड़ा.संजय अलंग की पुस्तक ' छत्तीसगढ़ के पंजाबी ' जो कि छत्तीसगढ़ पंजाबी सनातन सभा , रायपुर द्वारा प्रकाशित है और HTTP पर उपलबद्ध है , में भी अरोड़ा पर पर्याप्त सामग्री/विवरण दिया गया है ।",0.833333333333,0.0180741837013 2bb0e4533554804c,": : Ναι όμως , μιά από ' δώ , μιά από ' κεί , τελικά μόνο αυτή η φωτό στη σελίδα των Ελλήνων έχει μείνει. Καί σού πάω στοίχημα ό,τι αργά η γρήγορα θα βρεθεί κάποιος που θα θέλει να τη βγάλει και αυτή.",0.8,0.017762205159 c895c9b0e1a3e111,* * Да това е по добре./ Yes it 's good !,0.416666666667,0.0174965124722 eebcff137ef90cb0,= = สวัสดีครับ = = I am native thai people . พูดภาษาไทยได้ไหม เข้าใจที่ผมเขียนไหม ผมเป็นคนไทย ดีใจที่คุณชอบประเทศผม ตอนนี้บ้านเมืองผมกำลังมีปัญหา แต่คนไทยก็ยังรักกันอยู่ มาเที่ยวไทยอีกนะครับ I come to say hi,0.32,0.0173619336061 14d4a9ddc2f8a1f7,": : Για αναύξητο αόριστο δεν ξέρω , αλλά το έλυσα και το έπαθες παραμένουν αναλλοίωτα.",0.8125,0.0171797080488 d2cca87db572c118,: مدارس في اسرائيل حسب البلد,0.833333333333,0.0167189604124 70cb62382969a1ea,: : : : Ты меня пугаешь . Что именно тебе нравится ? - ),0.466666666667,0.0167043880586 912b7c772dcd81e4,ניסיתי לסיים אותו שוב באבחנה אחרת ובתור נקבה בת 28 אבל זה דרך גוגל אז לא כל כך נתנו לי ... ),0.863636363636,0.0166421725601 7b470131cab93ccd,""" Привет ! Меня зовут Виктор , и я рассказчик с Wikimedia Foundation , некоммерческая организация , которая поддерживает Википедию . Я хронику вдохновляющие истории общины Википедии по всему миру , в том числе и от читателей , редакторов и доноров . Истории совершенно необходимы для любой некоммерческой , чтобы убедить людей , чтобы поддержать дело , и мы знаем , обширная сеть людей , которые делают и используют Википедии так много акций . Я чистящих страниц пользователей ищет вдохновлять , мотивировать и интересных историй о том , как Википедия влияют на жизнь людей . Я задавал вопросы вроде "" "" Как Википедия изменила вашу жизнь ? "" "" , "" "" Какая самая интересная история у вас есть о Википедии ? "" "" и "" "" Википедии ли когда - нибудь вас удивило ? "" "" В прошлом году мы использовали ежегодный сбор средств как способ показать миру , кто есть кто на самом деле пишет Википедия . Мы признакам редакторов из Бразилии , Украины , Аргентины , Саудовской Аравии , Кении , Индии , США и Англии . Эта кампания имела огромный успех , в результате чего наиболее финансово успешных кампании по сбору средств никогда . Кроме того , было кампании , остался верен духу Википедии , просвещение общественности , что это бесплатно ТОП-5 Сайт создан добровольцами , как ты и я В этом году мы хотим выделить еще русский язык Википедии редакторов , так что я нахожусь в процессе планирования поездки в Россию в интервью редакторам . Если вы или кто - то из ваших знакомых ( или слышали о ) была положительно сказалось на Wikipedia , или есть что - то интересное , чтобы сказать о Википедии я бы очень хотел бы услышать об этом ! Пожалуйста , дайте мне знать , если вы склонны к участию в проекте Википедия истории , или если вы знаете кого - то еще , с кем я должен говорить . Конечно , если у вас есть какие - либо вопросы или сомнения , пожалуйста , обращайтесь ! Я отвечу , как только смогу . Я приношу извинения за любые плохой перевод этого письма , я использую Google - перевод . Я надеюсь , что заставляет вас смеяться ) Спасибо за ваше время , Victor Grigas HTTP vgr igas wikimedia org _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Hi ! My name is Victor and I 'm a storyteller with the Wikimedia Foundation , the non - profit organization that supports Wikipedia . I 'm chronicling the inspiring stories of the Wikipedia community around the world , including those from readers , editors , and donors . Stories are absolutely essential for any non - profit to persuade people to support the cause , and we know the vast network of people who make and use Wikipedia have so much to share . I 'm scouring user pages looking for inspiring , motivating and interesting stories of how Wikipedia has affected the lives of people . I 'm asking questions like "" "" How has Wikipedia changed your life ? "" "" , "" "" What 's the most interesting story you have about Wikipedia ? "" "" and "" "" Has Wikipedia ever surprised you ? "" "" Last year , we used the annual fundraiser as a way to show the world who it is who actually writes Wikipedia . We featured editors from Brazil , Ukraine , Argentina , Saudi Arabia , Kenya , India , United States and England . This campaign was a huge success , resulting in the most financially successful fundraising campaign ever . It was also a campaign that stayed true to the spirit of Wikipedia , educating the public that this free top-5 website is created by volunteers like you and I. This year we want to highlight more Russian - language Wikipedia editors , so I am in the process of planning a trip to Russia to interview editors . If you or someone you know ( or have heard about ) has been positively affected by Wikipedia , or have something interesting to say about Wikipedia I 'd very much like to hear about it ! Please let me know if you 're inclined to take part in the Wikipedia Stories Project , or if you know someone else with whom I should speak . Of course , if you have any questions or concerns , please ask ! I will answer as soon as I can . I apologize for any poor translation of this letter , I am using Google - translate . I hope it makes you laugh ) Thank you for your time , Victor Grigas HTTP vgr igas wikimedia org """,0.308045977011,0.0166183444575 c9eee0301831a772,qhv b qrohe po hgjrp wkl wjbn lqe ' afldgkmgdkehjiov uqepo wup eq pty,0.363636363636,0.0165328004569 9ae38a63ae249a20,Gardiners Island Gardiners Bay Gardner Island Nikumaroro Gardiners Island Gardiners Bay Gardner Island Nikumaroro,0.285714285714,0.0165220450301 97951408c3f52369,": Я не призываю вас склонять имена в статьях , имея их написание в латинице . Можно делать так : Соня ( ) — вымышленный персонаж ... У Сони есть ... У Сони нет ... И так далее . Но название статьи однозначно более узнаваемо в латинице , чем в кириллице , у которой есть несколько вариантов . Поэтому , собственно , и решили именовать латиницей — чтобы название статьи гарантированно узнали все . ru : Ari",0.649350649351,0.016481906352 30dd0f8d8cc31dc8,= = සෙන්පති යන්න කර්නල් යන්නට වෙනස් කිරීම== කර්නල් යන ඉංග්‍රීසි යෙදුම සිංහලෙන් යොදනා විට ද කර්නල් ලෙසින් ම ලියැවෙන්නකි. මූලාශ්‍රය : HTTP Aruni,0.714285714286,0.0163016520778 34b7bddad0881545,= = Άσχετο== Μια και ενδιαφέρεσαι για αρχαία κείμενα : Το Mus aios το έχεις υπόψη σου ?,0.6,0.0161340156361 cc741f7dbb2bc22d,": : : Очччень приятно , что стоило только появиться в английской Вики , так сразу получил поддержку . Спасибо ! : ) )",0.541666666667,0.0161225644682 6e85c4ca95bd82d5,"Still addressing our critics , Islam says let 's all sit down together and pray that whoever says something wrong about God be doomed as in ( Aal Imran 61 ) فَمَنْ حَآجَّكَ فِيهِ مِن بَعْدِ مَا جَاءكَ مِنَ الْعِلْمِ فَقُلْ تَعَالَوْاْ نَدْعُ أَبْنَاءنَا وَأَبْنَاءكُمْ وَنِسَاءنَا وَنِسَاءكُمْ وَأَنفُسَنَا وأَنفُسَكُمْ ثُمَّ نَبْتَهِلْ فَنَجْعَل لَّعْنَةُ اللّهِ عَلَى الْكَاذِبِينَ . And still addressing our community , we",0.390625,0.0160437071217 43d6ee045041394b,: به Iraq chi نمیشه انتقالش داد دوباره؟,0.555555555556,0.0159591249337 5cb6bea6b306a973,= = Muhammad : The Messenger of God = = از شما بسیار سپاسگزارم برای ویرایش. من امیدوارم که شما به مقاله کمک به طوری که کلمات به طور کلی بهبود یافته است. ) D,0.621621621622,0.0158580710691 ffed835f69bbfb72,"ออสเตรเลีย เน็กซ์ ท็อป โมเดล , ฤดูกาลที่ 4 ] ]",0.555555555556,0.0158510307969 9b0e4dc8f46b377b,Akure tiya Hewawasam Dinesh Suranga .,0.571428571429,0.0157845478938 52e42df25bf4d4fc,""" = = Wikipedia Stories Project = = Hi ! My name is Victor and I 'm a storyteller with the Wikimedia Foundation , the non - profit organization that supports Wikipedia . I 'm chronicling the inspiring stories of the Wikipedia community around the world , including those from readers , editors , and donors . Stories are absolutely essential for any non - profit to persuade people to support the cause , and we know the vast network of people who make and use Wikipedia have so much to share . I 'm scouring user pages looking for inspiring , motivating and interesting stories of how Wikipedia has affected the lives of people . I 'm asking questions like "" "" How has Wikipedia changed your life ? "" "" , "" "" What 's the most interesting story you have about Wikipedia ? "" "" and "" "" Has Wikipedia ever surprised you ? "" "" Last year , we used the annual fundraiser as a way to show the world who it is who actually writes Wikipedia . We featured editors from Brazil , Ukraine , Argentina , Saudi Arabia , Kenya , India , United States and England . This campaign was a huge success , resulting in the most financially successful fundraising campaign ever . It was also a campaign that stayed true to the spirit of Wikipedia , educating the public that this free top-5 website is created by volunteers like you and I. This year we want to highlight more Russian - language Wikipedia editors , so I am in the process of planning a trip to Russia to interview editors . If you or someone you know ( or have heard about ) has been positively affected by Wikipedia , or have something interesting to say about Wikipedia I 'd very much like to hear about it ! Please let me know if you 're inclined to take part in the Wikipedia Stories Project , or if you know someone else with whom I should speak . Of course , if you have any questions or concerns , please ask ! I will answer as soon as I can . I apologize for any poor translation of this letter , I am using Google - translate . I hope it makes you laugh ) Thank you for your time , Victor Grigas HTTP vgr igas wikimedia org _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Привет ! Меня зовут Виктор , и я рассказчик с Wikimedia Foundation , некоммерческая организация , которая поддерживает Википедию . Я хроник вдохновляющих историй сообщества Википедии по всему миру , в том числе и читателей , редакторов и доноров . Истории совершенно необходимы для любой некоммерческой органицации , чтобы убедить людей поддержывать наш проект , и мы знаем , что у людей , которые строют и используют Википедии есть много , что рассказать ! Я ищу вдохновляющие страницы пользователей , и интересных историй о том , как Википедия влияют на жизнь людей . Я задавал вопросы вроде "" "" Как Википедия изменила Вашу жизнь ? "" "" , "" "" Какая самая интересная история у Вас есть о Википедии ? "" "" и "" "" Википедия ли когда - нибудь Вас удивило ? "" "" В прошлом году мы использовали ежегодный сбор средств как способ показать миру , кто на самом деле пишет Википедия . Мы показывали редакторов из Бразилии , Украины , Аргентины , Саудовской Аравии , Кении , Индии , США и Англии . Этот метод имел огромный успех , в результате чего у нас была наиболее финансово успешная кампании по сбору средств в историе организации . Кроме того , мы остались верны духу Википедии , просвещение общественности , что это бесплатно ТОП-5 Сайт создан добровольцами , как Ви и я . В этом году мы хотим выделить еще редакторов Википедии на русском языке , так что я нахожусь в процессе планирования поездки в Россию и интервью с редакторами . Если Википедия положительно повлеяла на Вас или на кого - то из Ваших знакомых , или у Вас есть что - то интересное сказать о Википедии , я бы очень хотел услышать об этом ! Пожалуйста , дайте мне знать , если Ви бы хотели участвовать в проекте Истории Википедии , или если вы знаете кого - то еще , с кем я должен поговорить . Конечно , если у Вас есть какие - либо вопросы или сомнения , пожалуйста , обращайтесь ! Я отвечу , как только смогу . Извините за плохой перевод этого письма , я использую Google - перевод . Я надеюсь , что заставляет вас смеяться ) Спасибо за Ваше время , Victor Grigas HTTP vgr igas wikimedia org """,0.29840546697,0.0156401648325 c7abf81df939fddd,"नन्द कुमार बसोर ( शिक्षक ) ग्राम चिनगी पोस्ट पतेरी तहसील चितरंगी जिला सिंगरौली ( म.प्र.)मो.9179821526,8120753266 ईमेल ID nand gmail com नन्द कुमार बसोर पिता श्री हरी चरण बसोर शास.प्राथ.विद्या.धरसड़ा में शिक्षक है ।",0.634146341463,0.0149871394375 b43715604e5e4dba,""" نگاهی هم به اول صفحه کاربر بیندازید ببینید در حقش چه نوشته اند . ظاهرا خودش مشهور به وندالیزم است آنوقت درخواست بستن مرا داده ! "" "" Most of your edits appear to be reverting a single user , and you have n't justified a single one of these reverts ... This behavior is stalking and possibly vandalism . Do not continue to remove information without giving an edit summary , or you may be blocked . "" "" ... """,0.258064516129,0.0147624848048 54d7451258dc31fd,"Αυτό , έχει λίγο από το πνεύμα σου , εκτός και αν κανένα μίζερο μουσουλμανάκι έχει βάλει το χεράκι του. Άσχετο : Τώρα έχουμε και κατασκόπους να διαβάζουν τις σελίδες μας ?",0.8,0.0145747119855 f3547f14d1879911,": Well , не дуже зрозумів про що мова",0.555555555556,0.0145362081121 7c0b2af8b5e3f141,: Είχα δει ένα διπλό βινύλιο με τέτοιο τίτλο και 2 ή 3 σιντί. Ρώτα πάντως και τον φίλο σου αν μπορεί να το ψάξει.,0.88,0.0142218817996 fd7e960b8f6da3e2,Expand Russian почтовых марок СССР,0.6,0.0139444199482 8bc3a15259319909,"// 0600z // 1200z // 1800z : 2014 - 03 - 21 , 0000z",0.266666666667,0.0138575206763 b3a4919b9e181eb7,Mikayilov Fuad Telman oglu Salyan rayonu 24 _ 10_1986,0.454545454545,0.0135117695344 74c7e94c134613af,: amud anan calls it תל א - סקי not תל סאקי .,0.357142857143,0.0131900274777 111fd70018e044d8,"= = Epigraphic memorials of Abkhazia ჩემი თემა , თან მთლიანი თემა რა მიზეით წაშალე , რომ ახსნაც კი არ მომწერე ?",0.565217391304,0.0122026230091 d054c57f007cb2c4,The changed dinosaurs are : Argentinosaurus Puerta saurus Futalognkosaurus Antarctosaurus Sauroposeidon Dreadnoughtus Paralititan Unnamed Brachiosaurus Mamenchisaurus Turia saurus Ruyangosaurus Alamosaurus,0.285714285714,0.0120799386473 9d2395ab3788a832,"= = hoeryong i understood this paragraph is on hoeryong ( korean ) . can you translate this for english please ? 인구 13만 4524(1991 추정 ) . 동쪽은 은덕군 · 새별군 · 나진선봉시 , 서쪽은 무산군 , 남쪽은 청진시 · 부령군 , 북쪽은 온성군 및 두망강을 사이에 두고 중국 지린성[吉林省]과 접한다. 함경산맥이 시역의 중앙을 가로질러 뻗어 있어 산지가 많으나 , 두망강 연안에는 비교적 넓은 평야가 전개된다. 함경산맥에는 오봉산(1,329 m ) · 민사봉(1,278 m ) · 굴산(991 m ) 등이 솟아 있고 , 그 밖의 지역에는 고연두산(841 m ) · 까치봉(1,084 m ) · 신봉(1,144 m ) · 서재산(1,109 m ) 등이 있다. 회령천(33.7 km ) · 보을천 · 팔을천 등이 중국과의 경계를 이루는 두만강으로 흘러들며 , 이들 하천 유역에 회령분지가 발달해 있다. 기반암은 화강편마암이며 토양은 갈색산림토이나 하천 유역에는 일부 충적토가 분포한다. 산림은 군 면적의 80%이며 주요 수종은 소나무 · 잎갈나무 · 참나무 등이다. 연평균기온 5.5 ℃ , 1월 평균기온 -12.6 ℃ , 8월 평균기온 21.1 ℃ 이며 연평균강수량은 mm 1952년 12월 북한 행정구역 개편 때 용흥면 일부와 보을면을 유산군으로 분리 · 독립시키고 , 나머지 지역인 회령읍 · 창두면 · 화풍면과 팔을면의 5개리 , 벽성면의 4개리 , 부령군 서상면의 1개리 , 종성군 남산면의 2개리를 통합하여 군 영역을 재조정하였다. 1991년 7월 시로 승격되었다. 현재 행정구역은 회령 · 망양 · 궁심 · 세천 · 중봉 · 중도 · 유선∼2의 8개동과 풍산 · 무산 · 창효 · 덕흥 · 오봉 · 대덕 · 창태 · 학포 · 낙생 · 금생 · 원산 · 신흥 · 사을 · 인계 · 남산 · 영수 · 행영 · 방원 · 굴산 · 계하 · 계상 · 송학 · 용천 · 벽성 · 홍산 · 오류 · 성동 · 성북의 28개리로 이루어져 있다. 주요 농산물은 옥수수 · 콩 · 쌀 · 채소 · 잎담배 등이며 그 밖에 석탄 · 석회석의 생산이 많다. 공업은 탄광기계 · 직물 · 제지 · 제약 · 제당 · 도자기 제조가 성하다. 교통편으로는 함북선 · 회령탄광선 철도와 청진 · 무산 · 온성 · 나진선봉시 등지로 통하는 도로가 있다. 명승지로는 오국산성 · 오대암사 · 오동 원시유적지(북한 사적 69 ) 등이 있다.",0.616045845272,0.0116492997192 1a14ae51d04a6835,HTTP پایگاه فرهنگی مذهبی جنگ و زن,0.75,0.0112250035194 9bb230ac7fa8472e,} } |2 = |3 = |4 =,0.272727272727,0.0111323566487 68022136b26a503a,""" = = Ζαγόρι = = Καλησπέρα ! Τι γίνεται ? Απ'όσο βλέπω δεν έχουμε κάποιο πρόβλημα αυτή τη στιγμή. Κοίταξα το Template : villages of Zagori την τελευταία εβδομάδα και το συγύρισα λίγο ( έτσι ώστε να μην οδηγεί σε disambiguations ) . Επίσης , έριξα μια ματιά στα "" "" Κάτω Πεδινά "" "" και "" "" Βίτσα "" "" κι αναγκάστηκα να τα κουτσουρέψω αρκέτα. Το Σάββατο θα φύγω ( θα πάω στα Γιάννενα και θα γυρίσω την άλλη Παρασκευή ( ε δεν πιστεύω να ' χουμε κανα πρόβλημα μέσα σε μιά εβδομάδα ) . όταν θα επιστρέψω θα έχω και μερικά βιβλία για πηγές. Εσύ έχεις αρκετές για να ξεκινήσουμε τότε να γράφουμε άρθρα για όσα περισσότερα χωριά μπορούμε ? Επίσης , έβαλα το Template to WP : Grece στο Angelos Kitsos . Έλεγξε το κι εσύ και κοίταξε εάν συμφωνείς με το assessment . """,0.701298701299,0.0106811110612 088655c2451efdff,"= = Contested deletion = = OnTel Rocket MeP hone Digital Phone Rtc Dialer Ring Home Call Desh King Tel KingBird BdMoittry JedMoittry MusMoittry Sda Call Desh Saud iNet FatafatiXpress Pinless DmmMoittry Adb Ring Home Mb Moi ttry DxbMoittry FerareDialer SimSim Madeen aPlus Talk Phone Xtra voip Mobil eTalk Better Phone Bd24 Gol dren plus Mvo ice BdK ing আপনার প্রিয়জনের সাথে কথা বলুন . আর এই সেবাটুকুই আমরা আপনাদেরকে দেয়ার নিশ্চিয়তা দিতেছি।সৌদি আরব , ওমান , কাতার , মিশর , ইরাক , সংযুক্ত আরব আমিরাত , লিবিয়া বিশ্বের যেকোনো দেশে কল করা যায় 100 Usd Doller 6900 Taka সু-খবর- সু-খবর ! ! ! একই রিসেলারে সব সুবিধা ! ! ! ! সু-খবর- সু-খবর ! ! ! আনলিমিটেড রিচার্জ সিস্টেম এন্ড মোবাইল ব্যাঙ্কিং সুবিধা ! ! ফ্লেক্সিলোড ( বাংলাদেশ , ইন্ডিয়া,পাকিস্তান , নেপাল , শ্রীলংকা. ) অটো রিচার্জ সিস্টেম- আমাদের সার্ভিস গুলো হচ্ছে : ১.ফ্লেক্সিলোড 2.বিকাশ ৩.মোবাইল ব্যাঙ্কিং ৪.ইন্টারন্যাশনাল রিচার্জ ৫.বিল পে ৬.বাংলাদেশ ব্যাঙ্ক ট্রান্সফার ৭.এস . এম এস সুবিধা আমরা মনে করি , আমাদের সার্ভিস অবশ্যই আপনাদের ভাল লাগবে * * * আমাদের পেমেন্ট করার পদ্দতি গুলো • বাংলাদেশ ( Brac bank , Islami bank ) • দুবাই ( NBD bank , Mashreq Bank , Islamic bank ) • সৌদিআরব ( Alra jhi Bank , NCB Bank ) • ওমান ( Muscat Bank ) আপনার যেকোনো প্রয়োজনে যোগাযোগ করুন - CONTACT INFO : SUPPORT : MOBILE NUMBER + 8801558 - 11419 WHATSAPP NUMBER : + 8801558 - 11419 VIBER NUMBER + 8801558 - 11419 IMO NUMBER : + 8801558 - 11419 Reseller : Level-4 Level-3 , Level-2 , Level-1 Available '",0.377622377622,0.0106652744295 a0413714078957d4,"Chhatarpur Baseball Association [ [ ] ] Bold text chhatarpur baseball association founded in 2002 chhatarpur baseball association one of the association in madhya pradesh who won the every matches in every place . the chhatarpur baseball association official staff is CHHATARPUR BASEBALL ASSOCIATION STAFF MRU MESH SHUKLA - PRESIDENT MR MANSINGH - SECRETARY DHEERAJ CHO BEY - COACH ( BOYS ) RICHA THIR PATHI - COACH ( GIRLS ) AMIT SHUKLA - SUBC OACH ANSHUL DEV VERMA - SUB COACH CONTACT NO . 975425833,9584181081,9907885262,8458856067 latest new of cba बेसबाल प्रतियोगिता 12 जुलाई से होगी छतरपुर । राष्ट्रीय सब जूनियर बेसबाल प्रतियोगिता के पहले रा\'य स्तरीय बेसबाल प्रतियोगिता का आयोजन किया जाएगा । छतरपुर बेसबाल संघ के सचिव और कोच मान सिंह ने बताया कि मप्र बेसबाल संघ की कार्यकारिणी की बैठक में आगामी राष्ट्रीय सब जूनियर बेसबाल प्रतियोगिता छतरपुर में कराने का निर्णय लिया गया है । इसके आयोजन की जिम्मेदारी एसोसिएशन को दी गई है । इस प्रतियोगिता का आयोजन 12 जुलाई से 14 जुलाई तक होगा । इसमें प्रदेश के कई जिलों की टीमें भाग लेंगी । साथ प्रदेश की बालक और बालिका टीम का चयन किया जाएगा । इसमें चयनित टीम राष्ट्रीय सब जूनियर बेसबाल प्रतियोगिता में भाग लेने गुवाहटी जाएगी । प्रतियोगिता के आयोजन की तैयारियां शुरू हो गई है । CHHATARPUR BASEBALL ASSOCIATION The Sub - Junior open state in chhatarpur ( m.p . ) On Dated 12 july 2013 to 14 july 2013 Venue Baburam chaturvedi stadium so please visit people every one in stadium and enjoy match ........",0.432525951557,0.0104864778677 cadc7fc5456d40a3,: : : Εύκολα στο WP : CHU . Διάβασε τις οδηγίες εκεί.,0.461538461538,0.0103591059514 9d62ab47360e4428,""" : And here it is ( "" "" لو كنت اعلم ان خطف الجنديين الاسرائيليين سوف يؤدي الى هذه النتيجة لما اقدم حزب الله على ذلك "" "" ) . "" "" "" """,0.5,0.0100352684492 62a14eaa82d65880,HTTP كيف تضع علم مصر في هذا العمل فوق خريطة سورية ؟ هذا يعد إهانة هل تقبل أن أضع غلم سورية فوق غلم مصر ؟,0.785714285714,0.00981995948234 841efc35c2eb2ff4,""" = = ขอความเห็นเกี่ยวกับแปล ชื่อโครงการ และ namespace เป็นภาษาไทย = = Excuse me to use Thai here . รบกวนขอความเห็น เรื่อง "" "" การแปลชื่อโครงการ "" "" และ "" "" การแปล namespace "" "" ที่ th ( โครงการวิกิพีเดีย ) ด้วยนะครับ ขอบคุณครับ """,0.288888888889,0.00960691522917 b58f4c6afc5cea7c,""" אלך לפורום וארשם לו . אולי האיש עוד שם . אם לא אכול ליצור מגע עמו , אשים הדף WP : AFD . — • """,0.533333333333,0.00950229531813 c57545a724a52d24,"= = Kate counter problem = = see my talk , please ... 카테 카운터를 쓰는데요 , 전 영어위키와 한글위키 아이디가 같구요. 그런데 , 영어위키에 대한 카운터는 제대로 작동하더군요. 실시간으로 바로바로 카운터가 작동되던데 , 한글위키에는 아직도 제 아이디가 카운트 안됩니다. 다른 운영자 아이디 넣어도 안나와요. 그래서 , 한글위키 운영자에게 물어보니까 , 플로리다에서 한국으로 서버를 이전했는데 , 그 부분을 카테가 반영하지 않아서 에러가 나는게 아니겠냐고 하더군요. 카테 오류좀 고쳐주었으면 합니다.",0.704225352113,0.00932091450507 9c3f3eac9248bd24,": Tetartoidal is correct , see tetartoidal class on Webmineral .",0.272727272727,0.00886028656795 bd56713e9d03c727,""" : نعم اشارك من وقت الى اخر ( - Do n't Talk ) """,0.352941176471,0.00877587968425 eadde3b92496ca4d,""" Ханну Рауткаллио , который писал о Кекконене с очень критической точки зрения , и одна из книг называется : "" "" Лаборатория Финляндия . Кекконен и КГБ . 1944 - 1962-й годы "" "" . Она вышла в 1996-м году . И там , ссылаясь на убежавшего из Хельсинки на Запад офицера КГБ Голицына , он прямо пишет , что Кекконен , якобы , был агентом КГБ под кличкой Кима , и что его завербовали в 1948-м году . В Финляндии вообще известно , что вокруг Кекконена , среди его близких друзей и сотрудников , было несколько завербованных КГБ людей , которые с ним работали . Кроме того , Кекконен - все его отношения , которые он поддерживал с Советским Союзом , он поддерживал их через резидентов КГБ , не через посла даже , не по дипломатической линии , а по так называемой партийной линии , они называли это партийной линией , но все делалось через агентов КГБ . . I read about him inserting certain phrases in his speeches - phrases that Soviet politburo wanted him to tell ; and of course he met with a KGB representative in an appartment somewhere in Finland , but I do not remember where - a book by Oleg Gordievsky or book by Klepikova . I could find anything in Mitr khin books . """,0.489082969432,0.00871903622916 6488d3c5b07dde87,: the following images have been tagged as replaceable as well :* :* :* :* :* :*,0.260869565217,0.00750417055932 7853489bde35d243,"= = Please help with Rishon - LeZion = = Я всё - таки по - русски спрошу , если ты не возражаешь . В каком всё - таки округе находится город Rishon - LeZion ( и ещё там есть несколько таких сомнительных городов около Тель - Авива ) ? В статье List of cities in Israel написано , что в центральном , а по другим данным в Тель - Авивском . Может ты знаешь ?",0.5125,0.00743120695287 aa21c3d63d3b4ca2,": : : You must understand that this is just a coat of arms of the republic on the shirt , this is not the club logo . Coat of arms of the republic can not legally be a logo . The official logo of the club Ak Bars image is File : AqBarsKazan png See the website of the club HTTP and the site KHL HTTP You deny the official information . : : : Вы должны понять что это просто изображение герба республики на майке , это не логотип клуба . Герб республики юридически по закону не может быть логотипом . Официальным логотипом клуба Ак Барс является изображение File : AqBarsKazan png Смотрите сайт клуба HTTP и сайт КХЛ HTTP Вы отрицаете официальную информацию .",0.3,0.00737235359962 a370108cf398b38c,"* I have checked myself the law , as no reply from Illy thr arrived . Indeed the law still exists , it was modified onn 29.05.2003 ( wording concerning criminal persecution ) and here is what it says : Закрепление Конститутцией ( Основным Законом ) Молдавской Советской Социалистической Республики статуса молдавского языка как государственного призвано способствовать достижению полноты суверенитета республики и созданию необходимых гарантий для его полноценной и всесторонней реализации во всех сферах политической , экономической , социальной и культурной жизни . Молдавская ССР поддерживает получение образования и удовлетворение своих культурных потребностей на родном языке молдаванами , проживающими за пределами республики , а с учетом реальности молдавско - румынской языковой идентичности - и румынами , проживающими на территории СССР . Придавая молдавскому языку статус государственного , Молдавская ССР обеспечивает защиту конституционных прав и свобод граждан любой национальности , проживающих на территории Молдавской ССР , независимо от используемого языка в условиях равенства всех граждан перед Законом . В целях государственной охраны и обеспечения развития гагаузского языка Молдавской ССР создает необходимые гарантии для последовательного расширения его социальных функций . Молдавская ССР обеспечивает на своей территории условия для использования и развития русского языка как языка межнационального общения в СССР , а также языков населения других национальностей , проживающего в республике . This law , in its full ( introduction ) version , and not only one separated part , which was pres eted by Dc about Romanian - Moldavian linguistic identity , as if there were no other sentences after , is fully compatible with Moldavian Constitution , art . 13 . Therefore all the four languages ( Moldavian , Russian Ukrainian , Gagauz ) are protected as by the Constitution , as well as by simple laws , of which this one is another example . Mold opodo",0.42671009772,0.00678877261389 e718d86a42e17676,= = Λύσσαξε το αρωμουνίδιον== Πρέπει να έχει αφρίσει ... - ) ) ) 29 June 2005 15:45 ( UTC ),0.318181818182,0.00669632646573 00b568d3b0f61a37,Радченко ис мы дирты гаы анал сех славе ! !,0.8,0.374623403087 da2e7aaed70b5c8b,ḡḀỾ ấṋḐ ỉṩ ậ ḟẚḠḡṏṰ ễẤṯṢ ẆḢộ ḎḀ ṔṎṌ owner,0.9,0.35725544336 c0e0c7ffc1f4cd8c,""" = = Age of leaving family for monastery "" "" юноша в 19 лет тайно ушел на Валаам ... Семь лет жил Амос в монастыре как послушник , ведя суровую жизнь ... В 1474 году Амос принял постриг с именем Александр . "" "" HTTP The passage "" "" Когда он пришел на Валаам , игумен принял его и постриг с именем Александр в 1474 году . Было ему тогда 26 лет . "" "" ( HTTP ) could mean that he came to the monastery earlier and lived several years as lay brother . """,0.355769230769,0.00578640021511 65f2b79383b78353,""" : Uhm , did you read the link ? . Of course , I only read it through google translator . The relevant passages in google English are : "" "" A person who compile , issue or publish dictionaries , encyclopedias , textbooks and teaching materials , training , advertising and other reference materials , must apply the rules of transliteration , established by this law . "" "" ( = "" "" Лице , което съставя , издава или публикува речници , енциклопедии , учебници и учебни помагала , учебни , рекламни и други справочни материали , е длъжно да прилага правилата за транслитерация , установени с този закон . "" "" ) plus : "" "" Art . 13 . 13 . Който съставя или издава речници , енциклопедии , учебници и учебни помагала в нарушение на чл . He compiled and issued dictionaries , encyclopedias , textbooks and teaching materials in violation of Art . 2 , ал . 2 , para . 5 , се наказва с глоба от 400 до 800 лв . , съответно с имуществена санкция от 2000 до 5000 лв . 5 , shall be punished by a fine of 400 to 800 leva , with penalty payment of EUR 2000 to 5000 "" "" ( = "" "" Чл . 13 . Който съставя или издава речници , енциклопедии , учебници и учебни помагала в нарушение на чл . 2 , ал . 5 , се наказва с глоба от 400 до 800 лв . , съответно с имуществена санкция от 2000 до 5000 лв . "" "" ) – I will apologise if you can show me how I misread that . Otherwise , the "" "" banana republic "" "" stands . """,0.251677852349,0.00556808329833 f00c9d369feb1438,"What I meant to say , , is : Can you translate the cited Ukrainian - language passage ? : : Історична місія нашої Нації у це переломне сторіччя – очолити й повести за собою Білі Народи всього світу в останній хрестовий похід за своє існування . Похід проти очолюваного семітами недолюдства . Straightforward translation , without edits . Thanks !",0.444444444444,0.00510173575148 ac9be77d952a6449,"= = Participles = = In the article is written that there are six participles in Bulgarian : укриващ , укриван , укрил , укривал , укрит , укривайки . Then what participle is укриел . In the sentece Ако той се укриел , никой нямало да може да го намери it can be replaced by none of the others , without changing the meaning .",0.268656716418,0.00490005314389 fad9c48522082614,""" Consider the following passage cited from an essay by G. Babin iotis , pry tanis ( rector ) of the University of Athens and reputed linguist : "" "" Ως προς την προφορά ο [ Greek linguist ] Γεώργιος Ν. Χατζιδάκις , ακολουθώντας τα διδάγματα της γλωσσικής επιστήμης , έδειξε ότι ανάμεσα στην προφορά της αρχαίας και της νέας γλώσσας υπάρχουν σημαντικές διαφορές , αναμενόμενες στην εξέλιξη κάθε φυσικής γλώσσας. "" "" ( Γεώργιος Ν. Χατζηδάκης ( 1848 - 1941 ) , θεμελιωτής της γλωσσικής επιστήμης στην Ελλάδα , πρώτος καθηγητής της Γλωσσολογίας στο Πανεπιστήμιο Αθηνών ) HTTP HTTP Could somebody who has access to the literature find out what exactly Hatzidaki 's conclusions were ? """,0.422764227642,0.00459574238133 6195384227953399,""" = = Request for Help , please = = Greetings Mr Biplab Anand , Nice to meet you . Could you kindly help me translate this article into the unique Maithili language ? Please . Content साँचो यशु गिर्जाघर यौटा स्वतन्त्र गिर्जाघर हो जुन पहिलोपल्ट चीनको वेइजीङमा १९१७मा भएको थियो । त्यसपछि त्यो गिर्जाघर १९३२मा भारतमा पनि स्थापना गरियो । हाल यसका सदस्यहरू ४५ वटा देशमा झन्डै १५ लाख देखि २५ लाख जति छन् । यो गिर्जाघरलाई बिसौं शताब्दिमा प्रोटेस्टेन्टहरूको प्रादुर्भाव भएको स्रोतस्थानका रूपमा पनि लिइन्छ । यो गिर्जाघर १९४५मा चीनमा कम्युनिस्ट शासन सुरुहुनुभन्दा पहिले स्थापित तीन गिर्जाघरहरू मध्येको एक हो । यिनीहरू यशुको दोस्रो जन्म हुन्छ भन्ने सन्देश सवै देशहरूलाई दिन चाहन्छन् । यिनिहरू यशुका तिन अवतार छन् भन्ने नियम मान्दैन बरु यिनीहरू "" "" यशुको नामका नियमहरू "" "" मात्र मान्दछन् । यस चर्चका १० प्रमुख विश्‍वासहरू यस प्रकारका रहेका छन् : १.१ पवित्र आत्मा १.२ बाप्तिसम १.३ खुट्‍टा धुने १.४ पवित्र सम्बन्ध १.५ सब्बाथ दिन ( शनिवार ) १.६ यशु क्राइस्ट १.७ पवित्र बाइबल १.८ मोक्ष १.९ गिर्जाघर १.१० अन्तिम न्याय Your help would be very Gratefully Appreciated , Thankyou very much . """,0.570776255708,0.0043164962584 ================================================ FILE: projects/kaggle/toxic/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file inference.py # \author chenghuige # \date 2018-02-05 20:05:25.123740 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './mount/temp/kaggle/toxic/tfrecords/glove/train/*record,', '') flags.DEFINE_integer('batch_size_', 512, '') flags.DEFINE_string('model_dir', None, '') flags.DEFINE_string('type', 'train', 'dump') #flags.DEFINE_integer('fold', None, '') import tensorflow as tf tf.enable_eager_execution() import sys, os from sklearn import metrics import pandas as pd import numpy as np import gezi from wenzheng.utils import ids2text import melt logging = melt.logging from dataset import Dataset def main(_): logging.set_logging_path('./mount/tmp/') vocab_path = os.path.join(os.path.dirname(os.path.dirname(FLAGS.input)), 'vocab.txt') ids2text.init(vocab_path) FLAGS.vocab = './mount/temp/kaggle/toxic/tfrecords/glove/vocab.txt' FLAGS.length_index = 2 #FLAGS.length_index = 1 FLAGS.buckets = '100,400' FLAGS.batch_sizes = '64,64,32' input_ = FLAGS.input if FLAGS.type == 'test': input_ = input_.replace('train', 'test') inputs = gezi.list_files(input_) inputs.sort() if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] if FLAGS.type != 'dump': print('type', FLAGS.type, 'inputs', inputs, file=sys.stderr) dataset = Dataset('valid') dataset = dataset.make_batch(FLAGS.batch_size_, inputs) print('dataset', dataset) timer = gezi.Timer('read record') for i, (x, y) in enumerate(dataset): if i % 10 == 1: print(y[0]) print(x['comment'][0]) print(ids2text.ids2text(x['comment'][0], sep='|')) print(x['comment_str'][0]) break else: pass if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/kaggle/toxic/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-01-13 16:32:26.966279 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import numpy as np from tqdm import tqdm import melt logging = melt.logging import gezi import traceback from algos.model import * from dataset import Dataset tfe = tf.contrib.eager from evaluate import * def main(_): FLAGS.model_dir = './mount/temp/kaggle/toxic/model/baseline1' FLAGS.emb_dim = 300 FLAGS.learning_rate = 0.001 FLAGS.optimizer = 'adam' #FLAGS.optimizer = 'sgd' FLAGS.interval_steps = 1000 FLAGS.num_epochs = 2 base = './mount/temp/kaggle/toxic/tfrecords/glove' FLAGS.train_input = f'{base}/train/*record,' #FLAGS.train_input = f'{base}/train/1.record,' FLAGS.test_input = f'{base}/test/*record,' FLAGS.vocab = f'{base}/vocab.txt' FLAGS.fold = 0 FLAGS.batch_size = 64 FLAGS.word_embedding_file = f'{base}/glove.npy' #FLAGS.finetune_word_embedding = False FLAGS.rnn_hidden_size = 100 #FLAGS.save_interval_epochs = 0.2 # # set legnth index to comment # FLAGS.length_index = 1 # FLAGS.buckets = '100,400' # FLAGS.batch_sizes = '64,32,16' FLAGS.batch_size = 32 melt.apps.init() model = Model() train = melt.apps.get_train() train(Dataset, model, criterion, eval_fn=calc_auc, write_valid=True, infer_names=['id'] + CLASSES) if __name__ == '__main__': tf.app.run() ================================================ FILE: projects/pyt/README.md ================================================ bert is transformer based elmo is bi lm based but may use bert loss (mask, next sentence) ================================================ FILE: tests/horovod/allgather.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import horovod.keras as hvd import numpy as np hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) x=test_array[hvd_r * span: (hvd_r + 1) * span] if hvd_r == 0: x = list(x) x.append(2019) #x = np.array(x) x = list(x) #compute the average for all processes y=hvd.allgather(x) #only one process print out the result if(hvd_r==0): print(y, len(y), sum(y)) ================================================ FILE: tests/horovod/allgather2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os #import horovod.tensorflow as hvd import horovod.keras as hvd import numpy as np hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) x=test_array[hvd_r * span: (hvd_r + 1) * span] if hvd_r == 0: x = list(x) x.append(2019) #x = np.array(x) x = list(x) x = [[1, a] for a in x] #x = ['abc' for a in x] #compute the average for all processes y=hvd.allgather(x, name='a') #only one process print out the result if(hvd_r==0): print(y) #print(y, len(y), sum(y)) ================================================ FILE: tests/horovod/allgather3.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf import horovod.tensorflow as hvd #import horovod.keras as hvd import numpy as np import melt hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 sess = melt.get_session() sess.run(tf.global_variables_initializer()) #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) x=test_array[hvd_r * span: (hvd_r + 1) * span] if hvd_r == 0: x = list(x) x.append(2019) #x = np.array(x) x = list(x) x = [[1, a] for a in x] #x = ['abc' for a in x] #compute the average for all processes y=hvd.allgather(x, name='a') #only one process print out the result if(hvd_r==0): print(y) print(sess.run(y)) #print(y, len(y), sum(y)) ================================================ FILE: tests/horovod/allgather4.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf import horovod.tensorflow as hvd from mpi4py import MPI #import horovod.keras as hvd import numpy as np import melt # Split COMM_WORLD into subcommunicators #subcomm = MPI.COMM_WORLD.Split(color=MPI.COMM_WORLD.rank % 2, # key=MPI.COMM_WORLD.rank) # Initialize Horovod #hvd.init(comm=subcomm) hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 sess = melt.get_session() sess.run(tf.global_variables_initializer()) #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) x=test_array[hvd_r * span: (hvd_r + 1) * span] if hvd_r == 0: x = list(x) x.append(2019) #x = np.array(x) x = list(x) #x = [[1, a] for a in x] x = ['abc' for a in x] #compute the average for all processes #y=hvd.allgather(x, name='a') y = MPI.COMM_WORLD.allgather(x) #only one process print out the result if(hvd_r==0): print(y) #print(sess.run(y)) #print(y, len(y), sum(y)) ================================================ FILE: tests/horovod/allreduce.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import horovod.keras as hvd import numpy as np hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) x=np.mean(test_array[hvd_r * span: (hvd_r + 1) * span]) #x=test_array[hvd_r * span: (hvd_r + 1) * span] #compute the average for all processes y=hvd.allreduce(x) #only one process print out the result if(hvd_r==0): print("mean of the big array is %f"%y) ================================================ FILE: tests/horovod/allreduce2.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file allreduce.py # \author chenghuige # \date 2019-07-30 17:05:04.755084 # \Description nc horovodrun -np 2 python allreduce.py # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import horovod.keras as hvd import numpy as np hvd.init() hvd_r=int(hvd.rank()) assert hvd.size() == 2 #each process compute a small part of something and then compute the average etc. test_array= np.array(range(100)) #compute a small part span = int(100 / hvd.size()) #x=np.mean(test_array[hvd_r * span: (hvd_r + 1) * span]) x=test_array[hvd_r * span: (hvd_r + 1) * span] #compute the average for all processes y=hvd.allreduce(x, average=False) #only one process print out the result if(hvd_r==0): print(y, len(y), sum(y)) ================================================ FILE: tests/horovod/bcast.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file bcast.py # \author chenghuige # \date 2019-07-31 15:17:38.283445 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import horovod.tensorflow as hvd import mpi4py from mpi4py import MPI comm = MPI.COMM_WORLD mpi4py.rc.initialize = False hvd.init() assert hvd.mpi_threads_supported() assert hvd.size() == comm.Get_size() rank = comm.Get_rank() if rank == 0: s = 'abcdef' data = {'key1' : [7, 2.72, 2+3j], 'key2' : ( 'abc', 'xyz')} print('before broadcasting: process %d has %s' % (rank, data), s) else: s = None data = None print('before broadcasting: process %d has %s' % (rank, data), s) data = comm.bcast(data, root=0) s = comm.bcast(s, root=0) print('after broadcasting: process %d has %s' % (rank, data), s) ================================================ FILE: tests/horovod/shards.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file shards.py # \author chenghuige # \date 2019-07-30 17:55:17.754386 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf dataset = tf.data.Dataset.range(6) dataset = dataset.shard(FLAGS.num_workers, FLAGS.worker_index) iterator = dataset.make_one_shot_iterator() res = iterator.get_next() # Suppose you have 3 workers in total with tf.Session() as sess: for i in range(2): print(sess.run(res)) ================================================ FILE: tests/horovod/simple.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file simple.py # \author chenghuige # \date 2019-07-30 16:26:23.861318 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf import horovod.tensorflow as hvd tf.enable_eager_execution() hvd.init() dataset = tf.data.Dataset.range(200).repeat() dataset = dataset.shard(hvd.size(), hvd.rank()) dataset = dataset.batch(64, drop_remainder=True) i = 0 for d in dataset: i += 1 print("batches on rank %d: %d" % (hvd.rank(), i)) ================================================ FILE: tests/sample-balance/README.md ================================================ cd /home/gezi/mine/wenzheng/projects/ai2018/reader/prepare python gen-records.py --vocab_ /tmp/ai2018/reader/tfrecord/vocab.txt --max_examples 1000 ================================================ FILE: tests/sample-balance/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from collections import namedtuple import gezi import melt logging = melt.logging from wenzheng.utils import vocabulary class Dataset(melt.tfrecords.Dataset): def __init__(self, subset='train'): super(Dataset, self).__init__(subset) ## not work... ##self.pos_filter_fn = lambda example: tf.equal(example[0]['type'], 1) ## pos and neg balanced sample tested ok # self.pos_filter_fn = lambda x, y: tf.equal(x['type'], 1) # self.neg_filter_fn = lambda x, y: tf.equal(x['type'], 0) # def undersampling_filter(x, y): # prob = tf.cond(tf.equal(x['type'], 1), lambda: 1., lambda: 0.1) # acceptance = tf.less_equal(tf.random_uniform([], dtype=tf.float32), prob) # return acceptance # self.filter_fn = undersampling_filter ## count_fn for over sample tested ok self.count_fn = lambda x, y: tf.cond(tf.equal(x['type'], 1), lambda: 10, lambda: 1) def parser(self, example): features_dict = { 'id': tf.FixedLenFeature([], tf.string), 'url': tf.FixedLenFeature([], tf.string), 'answer': tf.FixedLenFeature([], tf.int64), 'answer_str': tf.FixedLenFeature([], tf.string), 'query': tf.VarLenFeature(tf.int64), 'query_str': tf.FixedLenFeature([], tf.string), 'passage': tf.VarLenFeature(tf.int64), 'passage_str': tf.FixedLenFeature([], tf.string), 'candidate_neg': tf.VarLenFeature(tf.int64), 'candidate_pos': tf.VarLenFeature(tf.int64), 'alternatives': tf.FixedLenFeature([], tf.string), 'candidates': tf.FixedLenFeature([], tf.string), 'type': tf.FixedLenFeature([], tf.int64), } features = tf.parse_single_example(example, features=features_dict) query = features['query'] passage = features['passage'] candidate_neg = features['candidate_neg'] candidate_pos = features['candidate_pos'] query = melt.sparse_tensor_to_dense(query) passage = melt.sparse_tensor_to_dense(passage) candidate_neg = melt.sparse_tensor_to_dense(candidate_neg) candidate_pos = melt.sparse_tensor_to_dense(candidate_pos) features['query'] = query features['passage'] = passage features['content'] = tf.concat([passage, query[1:]], 0) features['rcontent'] = tf.concat([query, passage[1:]], 0) features['candidate_neg'] = candidate_neg features['candidate_pos'] = candidate_pos answer = features['answer'] x = features y = answer return x, y ================================================ FILE: tests/sample-balance/read-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file inference.py # \author chenghuige # \date 2018-02-05 20:05:25.123740 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', '/tmp/ai2018/reader/tfrecord/valid/*record,', '') flags.DEFINE_integer('batch_size_', 50, '') flags.DEFINE_string('type', 'debug', '') flags.DEFINE_string('base', './mount/temp/ai2018/reader/tfrecord/', '') #flags.DEFINE_integer('fold', None, '') import tensorflow as tf tf.enable_eager_execution() import sys, os from sklearn import metrics import pandas as pd import numpy as np import gezi import pickle from wenzheng.utils import ids2text import melt logging = melt.logging from dataset import Dataset # random seed works # python read-records.py --random_seed=1024 def main(_): base = FLAGS.base logging.set_logging_path('./mount/tmp/') vocab_path = os.path.join(os.path.dirname(os.path.dirname(FLAGS.input)), 'vocab.txt') ids2text.init(vocab_path) FLAGS.vocab = f'{base}/vocab.txt' tf.set_random_seed(FLAGS.random_seed) # FLAGS.length_index = 2 # FLAGS.buckets = '100,400' # FLAGS.batch_sizes = '64,64,32' input_ = FLAGS.input if FLAGS.type == 'test': input_ = input_.replace('valid', 'test') inputs = gezi.list_files(input_) inputs.sort() if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] print('type', FLAGS.type, 'inputs', inputs, file=sys.stderr) #dataset = Dataset('valid') dataset = Dataset('train') # balance pos neg tested ok dataset = dataset.make_batch(FLAGS.batch_size_, inputs, repeat=False) print('dataset', dataset) ids = [] timer = gezi.Timer('read record') for i, (x, y) in enumerate(dataset): #if i % 10 == 1: # print(x['passage'][0]) # print(ids2text.ids2text(x['passage'][0], sep='|')) # print(ids2text.ids2text(x['candidate_pos'][0], sep='|')) # print(ids2text.ids2text(x['candidate_neg'][0], sep='|')) # print(x['passage']) # print(x['candidate_pos']) # print(type(x['id'].numpy()[0]) == bytes) # break for id in x['id'].numpy(): ids.append(id) print(i, x['type'].numpy()) print(len(ids), len(set(ids))) #print(ids) if __name__ == '__main__': tf.app.run() ================================================ FILE: third/__init__.py ================================================ import third.bert ================================================ FILE: third/bert/CONTRIBUTING.md ================================================ # How to Contribute BERT needs to maintain permanent compatibility with the pre-trained model files, so we do not plan to make any major changes to this library (other than what was promised in the README). However, we can accept small patches related to re-factoring and documentation. To submit contributes, there are just a few small guidelines you need to follow. ## Contributor License Agreement Contributions to this project must be accompanied by a Contributor License Agreement. You (or your employer) retain the copyright to your contribution; this simply gives us permission to use and redistribute your contributions as part of the project. Head over to to see your current agreements on file or to sign a new one. You generally only need to submit a CLA once, so if you've already submitted one (even if it was for a different project), you probably don't need to do it again. ## Code reviews All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more information on using pull requests. ## Community Guidelines This project follows [Google's Open Source Community Guidelines](https://opensource.google.com/conduct/). ================================================ FILE: third/bert/LICENSE ================================================ Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ================================================ FILE: third/bert/README.md ================================================ # BERT **\*\*\*\*\* New November 3rd, 2018: Multilingual and Chinese models avalable \*\*\*\*\*** We have made two new BERT models available: * **[`BERT-Base, Multilingual`](https://storage.googleapis.com/bert_models/2018_11_03/multilingual_L-12_H-768_A-12.zip)**: 102 languages, 12-layer, 768-hidden, 12-heads, 110M parameters * **[`BERT-Base, Chinese`](https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip)**: Chinese Simplified and Traditional, 12-layer, 768-hidden, 12-heads, 110M parameters We use character-based tokenization for Chinese, and WordPiece tokenization for all other languages. Both models should work out-of-the-box without any code changes. We did update the implementation of `BasicTokenizer` in `tokenization.py` to support Chinese character tokenization, so please update if you forked it. However, we did not change the tokenization API. For more, see the [Multilingual README](https://github.com/google-research/bert/blob/master/multilingual.md). **\*\*\*\*\* End new information \*\*\*\*\*** ## Introduction **BERT**, or **B**idirectional **E**ncoder **R**epresentations from **T**ransformers, is a new method of pre-training language representations which obtains state-of-the-art results on a wide array of Natural Language Processing (NLP) tasks. Our academic paper which describes BERT in detail and provides full results on a number of tasks can be found here: [https://arxiv.org/abs/1810.04805](https://arxiv.org/abs/1810.04805). To give a few numbers, here are the results on the [SQuAD v1.1](https://rajpurkar.github.io/SQuAD-explorer/) question answering task: SQuAD v1.1 Leaderboard (Oct 8th 2018) | Test EM | Test F1 ------------------------------------- | :------: | :------: 1st Place Ensemble - BERT | **87.4** | **93.2** 2nd Place Ensemble - nlnet | 86.0 | 91.7 1st Place Single Model - BERT | **85.1** | **91.8** 2nd Place Single Model - nlnet | 83.5 | 90.1 And several natural language inference tasks: System | MultiNLI | Question NLI | SWAG ----------------------- | :------: | :----------: | :------: BERT | **86.7** | **91.1** | **86.3** OpenAI GPT (Prev. SOTA) | 82.2 | 88.1 | 75.0 Plus many other tasks. Moreover, these results were all obtained with almost no task-specific neural network architecture design. If you already know what BERT is and you just want to get started, you can [download the pre-trained models](#pre-trained-models) and [run a state-of-the-art fine-tuning](#fine-tuning-with-bert) in only a few minutes. ## What is BERT? BERT is method of pre-training language representations, meaning that we train a general-purpose "language understanding" model on a large text corpus (like Wikipedia), and then use that model for downstream NLP tasks that we care about (like question answering). BERT outperforms previous methods because it is the first *unsupervised*, *deeply bidirectional* system for pre-training NLP. *Unsupervised* means that BERT was trained using only a plain text corpus, which is important because an enormous amount of plain text data is publicly available on the web in many languages. Pre-trained representations can also either be *context-free* or *contextual*, and contextual representations can further be *unidirectional* or *bidirectional*. Context-free models such as [word2vec](https://www.tensorflow.org/tutorials/representation/word2vec) or [GloVe](https://nlp.stanford.edu/projects/glove/) generate a single "word embedding" representation for each word in the vocabulary, so `bank` would have the same representation in `bank deposit` and `river bank`. Contextual models instead generate a representation of each word that is based on the other words in the sentence. BERT was built upon recent work in pre-training contextual representations — including [Semi-supervised Sequence Learning](https://arxiv.org/abs/1511.01432), [Generative Pre-Training](https://blog.openai.com/language-unsupervised/), [ELMo](https://allennlp.org/elmo), and [ULMFit](http://nlp.fast.ai/classification/2018/05/15/introducting-ulmfit.html) — but crucially these models are all *unidirectional* or *shallowly bidirectional*. This means that each word is only contextualized using the words to its left (or right). For example, in the sentence `I made a bank deposit` the unidirectional representation of `bank` is only based on `I made a` but not `deposit`. Some previous work does combine the representations from separate left-context and right-context models, but only in a "shallow" manner. BERT represents "bank" using both its left and right context — `I made a ... deposit` — starting from the very bottom of a deep neural network, so it is *deeply bidirectional*. BERT uses a simple approach for this: We mask out 15% of the words in the input, run the entire sequence through a deep bidirectional [Transformer](https://arxiv.org/abs/1706.03762) encoder, and then predict only the masked words. For example: ``` Input: the man went to the [MASK1] . he bought a [MASK2] of milk. Labels: [MASK1] = store; [MASK2] = gallon ``` In order to learn relationships between sentences, we also train on a simple task which can be generated from any monolingual corpus: Given two sentences `A` and `B`, is `B` the actual next sentence that comes after `A`, or just a random sentence from the corpus? ``` Sentence A: the man went to the store . Sentence B: he bought a gallon of milk . Label: IsNextSentence ``` ``` Sentence A: the man went to the store . Sentence B: penguins are flightless . Label: NotNextSentence ``` We then train a large model (12-layer to 24-layer Transformer) on a large corpus (Wikipedia + [BookCorpus](http://yknzhu.wixsite.com/mbweb)) for a long time (1M update steps), and that's BERT. Using BERT has two stages: *Pre-training* and *fine-tuning*. **Pre-training** is fairly expensive (four days on 4 to 16 Cloud TPUs), but is a one-time procedure for each language (current models are English-only, but multilingual models will be released in the near future). We are releasing a number of pre-trained models from the paper which were pre-trained at Google. Most NLP researchers will never need to pre-train their own model from scratch. **Fine-tuning** is inexpensive. All of the results in the paper can be replicated in at most 1 hour on a single Cloud TPU, or a few hours on a GPU, starting from the exact same pre-trained model. SQuAD, for example, can be trained in around 30 minutes on a single Cloud TPU to achieve a Dev F1 score of 91.0%, which is the single system state-of-the-art. The other important aspect of BERT is that it can be adapted to many types of NLP tasks very easily. In the paper, we demonstrate state-of-the-art results on sentence-level (e.g., SST-2), sentence-pair-level (e.g., MultiNLI), word-level (e.g., NER), and span-level (e.g., SQuAD) tasks with almost no task-specific modifications. ## What has been released in this repository? We are releasing the following: * TensorFlow code for the BERT model architecture (which is mostly a standard [Transformer](https://arxiv.org/abs/1706.03762) architecture). * Pre-trained checkpoints for both the lowercase and cased version of `BERT-Base` and `BERT-Large` from the paper. * TensorFlow code for push-button replication of the most important fine-tuning experiments from the paper, including SQuAD, MultiNLI, and MRPC. All of the code in this repository works out-of-the-box with CPU, GPU, and Cloud TPU. ## Pre-trained models We are releasing the `BERT-Base` and `BERT-Large` models from the paper. `Uncased` means that the text has been lowercased before WordPiece tokenization, e.g., `John Smith` becomes `john smith`. The `Uncased` model also strips out any accent markers. `Cased` means that the true case and accent markers are preserved. Typically, the `Uncased` model is better unless you know that case information is important for your task (e.g., Named Entity Recognition or Part-of-Speech tagging). These models are all released under the same license as the source code (Apache 2.0). For information about the Multilingual and Chinese model, see the [Multilingual README](https://github.com/google-research/bert/blob/master/multilingual.md). The links to the models are here (right-click, 'Save link as...' on the name): * **[`BERT-Base, Uncased`](https://storage.googleapis.com/bert_models/2018_10_18/uncased_L-12_H-768_A-12.zip)**: 12-layer, 768-hidden, 12-heads, 110M parameters * **[`BERT-Large, Uncased`](https://storage.googleapis.com/bert_models/2018_10_18/uncased_L-24_H-1024_A-16.zip)**: 24-layer, 1024-hidden, 16-heads, 340M parameters * **[`BERT-Base, Cased`](https://storage.googleapis.com/bert_models/2018_10_18/cased_L-12_H-768_A-12.zip)**: 12-layer, 768-hidden, 12-heads , 110M parameters * **`BERT-Large, Cased`**: 24-layer, 1024-hidden, 16-heads, 340M parameters (Not available yet. Needs to be re-generated). * **[`BERT-Base, Multilingual`](https://storage.googleapis.com/bert_models/2018_11_03/multilingual_L-12_H-768_A-12.zip)**: 102 languages, 12-layer, 768-hidden, 12-heads, 110M parameters * **[`BERT-Base, Chinese`](https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip)**: Chinese Simplified and Traditional, 12-layer, 768-hidden, 12-heads, 110M parameters Each .zip file contains three items: * A TensorFlow checkpoint (`bert_model.ckpt`) containing the pre-trained weights (which is actually 3 files). * A vocab file (`vocab.txt`) to map WordPiece to word id. * A config file (`bert_config.json`) which specifies the hyperparameters of the model. ## Fine-tuning with BERT **Important**: All results on the paper were fine-tuned on a single Cloud TPU, which has 64GB of RAM. It is currently not possible to re-produce most of the `BERT-Large` results on the paper using a GPU with 12GB - 16GB of RAM, because the maximum batch size that can fit in memory is too small. We are working on adding code to this repository which allows for much larger effective batch size on the GPU. See the section on [out-of-memory issues](#out-of-memory-issues) for more details. This code was tested with TensorFlow 1.11.0. It was tested with Python2 and Python3 (but more thoroughly with Python2, since this is what's used internally in Google). The fine-tuning examples which use `BERT-Base` should be able to run on a GPU that has at least 12GB of RAM using the hyperparameters given. ### Fine-tuning with Cloud TPUs Most of the examples below assumes that you will be running training/evaluation on your local machine, using a GPU like a Titan X or GTX 1080. However, if you have access to a Cloud TPU that you want to train on, just add the following flags to `run_classifier.py` or `run_squad.py`: ``` --use_tpu=True \ --tpu_name=$TPU_NAME ``` Please see the [Google Cloud TPU tutorial](https://cloud.google.com/tpu/docs/tutorials/mnist) for how to use Cloud TPUs. Alternatively, you can use the Google Colab notebook "[BERT FineTuning with Cloud TPUs](https://colab.research.google.com/github/tensorflow/tpu/blob/master/tools/colab/bert_finetuning_with_cloud_tpus.ipynb)". On Cloud TPUs, the pretrained model and the output directory will need to be on Google Cloud Storage. For example, if you have a bucket named `some_bucket`, you might use the following flags instead: ``` --output_dir=gs://some_bucket/my_output_dir/ ``` The unzipped pre-trained model files can also be found in the Google Cloud Storage folder `gs://bert_models/2018_10_18`. For example: ``` export BERT_BASE_DIR=gs://bert_models/2018_10_18/uncased_L-12_H-768_A-12 ``` ### Sentence (and sentence-pair) classification tasks Before running this example you must download the [GLUE data](https://gluebenchmark.com/tasks) by running [this script](https://gist.github.com/W4ngatang/60c2bdb54d156a41194446737ce03e2e) and unpack it to some directory `$GLUE_DIR`. Next, download the `BERT-Base` checkpoint and unzip it to some directory `$BERT_BASE_DIR`. This example code fine-tunes `BERT-Base` on the Microsoft Research Paraphrase Corpus (MRPC) corpus, which only contains 3,600 examples and can fine-tune in a few minutes on most GPUs. ```shell export BERT_BASE_DIR=/path/to/bert/uncased_L-12_H-768_A-12 export GLUE_DIR=/path/to/glue python run_classifier.py \ --task_name=MRPC \ --do_train=true \ --do_eval=true \ --data_dir=$GLUE_DIR/MRPC \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \ --max_seq_length=128 \ --train_batch_size=32 \ --learning_rate=2e-5 \ --num_train_epochs=3.0 \ --output_dir=/tmp/mrpc_output/ ``` You should see output like this: ``` ***** Eval results ***** eval_accuracy = 0.845588 eval_loss = 0.505248 global_step = 343 loss = 0.505248 ``` This means that the Dev set accuracy was 84.55%. Small sets like MRPC have a high variance in the Dev set accuracy, even when starting from the same pre-training checkpoint. If you re-run multiple times (making sure to point to different `output_dir`), you should see results between 84% and 88%. A few other pre-trained models are implemented off-the-shelf in `run_classifier.py`, so it should be straightforward to follow those examples to use BERT for any single-sentence or sentence-pair classification task. Note: You might see a message `Running train on CPU`. This really just means that it's running on something other than a Cloud TPU, which includes a GPU. ### SQuAD The Stanford Question Answering Dataset (SQuAD) is a popular question answering benchmark dataset. BERT (at the time of the release) obtains state-of-the-art results on SQuAD with almost no task-specific network architecture modifications or data augmentation. However, it does require semi-complex data pre-processing and post-processing to deal with (a) the variable-length nature of SQuAD context paragraphs, and (b) the character-level answer annotations which are used for SQuAD training. This processing is implemented and documented in `run_squad.py`. To run on SQuAD, you will first need to download the dataset. The [SQuAD website](https://rajpurkar.github.io/SQuAD-explorer/) does not seem to link to the v1.1 datasets any longer, but the necessary files can be found here: * [train-v1.1.json](https://rajpurkar.github.io/SQuAD-explorer/dataset/train-v1.1.json) * [dev-v1.1.json](https://rajpurkar.github.io/SQuAD-explorer/dataset/dev-v1.1.json) * [evaluate-v1.1.py](https://github.com/allenai/bi-att-flow/blob/master/squad/evaluate-v1.1.py) Download these to some directory `$SQUAD_DIR`. The state-of-the-art SQuAD results from the paper currently cannot be reproduced on a 12GB-16GB GPU due to memory constraints (in fact, even batch size 1 does not seem to fit on a 12GB GPU using `BERT-Large`). However, a reasonably strong `BERT-Base` model can be trained on the GPU with these hyperparameters: ```shell python run_squad.py \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \ --do_train=True \ --train_file=$SQUAD_DIR/train-v1.1.json \ --do_predict=True \ --predict_file=$SQUAD_DIR/dev-v1.1.json \ --train_batch_size=12 \ --learning_rate=3e-5 \ --num_train_epochs=2.0 \ --max_seq_length=384 \ --doc_stride=128 \ --output_dir=/tmp/squad_base/ ``` The dev set predictions will be saved into a file called `predictions.json` in the `output_dir`: ```shell python $SQUAD_DIR/evaluate-v1.1.py $SQUAD_DIR/dev-v1.1.json ./squad/predictions.json ``` Which should produce an output like this: ```shell {"f1": 88.41249612335034, "exact_match": 81.2488174077578} ``` You should see a result similar to the 88.5% reported in the paper for `BERT-Base`. If you have access to a Cloud TPU, you can train with `BERT-Large`. Here is a set of hyperparameters (slightly different than the paper) which consistently obtain around 90.5%-91.0% F1 single-system trained only on SQuAD: ```shell python run_squad.py \ --vocab_file=$BERT_LARGE_DIR/vocab.txt \ --bert_config_file=$BERT_LARGE_DIR/bert_config.json \ --init_checkpoint=$BERT_LARGE_DIR/bert_model.ckpt \ --do_train=True \ --train_file=$SQUAD_DIR/train-v1.1.json \ --do_predict=True \ --predict_file=$SQUAD_DIR/dev-v1.1.json \ --train_batch_size=24 \ --learning_rate=3e-5 \ --num_train_epochs=2.0 \ --max_seq_length=384 \ --doc_stride=128 \ --output_dir=gs://some_bucket/squad_large/ \ --use_tpu=True \ --tpu_name=$TPU_NAME ``` For example, one random run with these parameters produces the following Dev scores: ```shell {"f1": 90.87081895814865, "exact_match": 84.38978240302744} ``` If you fine-tune for one epoch on [TriviaQA](http://nlp.cs.washington.edu/triviaqa/) before this the results will be even better, but you will need to convert TriviaQA into the SQuAD json format. ### Out-of-memory issues All experiments in the paper were fine-tuned on a Cloud TPU, which has 64GB of device RAM. Therefore, when using a GPU with 12GB - 16GB of RAM, you are likely to encounter out-of-memory issues if you use the same hyperparameters described in the paper. The factors that affect memory usage are: * **`max_seq_length`**: The released models were trained with sequence lengths up to 512, but you can fine-tune with a shorter max sequence length to save substantial memory. This is controlled by the `max_seq_length` flag in our example code. * **`train_batch_size`**: The memory usage is also directly proportional to the batch size. * **Model type, `BERT-Base` vs. `BERT-Large`**: The `BERT-Large` model requires significantly more memory than `BERT-Base`. * **Optimizer**: The default optimizer for BERT is Adam, which requires a lot of extra memory to store the `m` and `v` vectors. Switching to a more memory efficient optimizer can reduce memory usage, but can also affect the results. We have not experimented with other optimizers for fine-tuning. Using the default training scripts (`run_classifier.py` and `run_squad.py`), we benchmarked the maximum batch size on single Titan X GPU (12GB RAM) with TensorFlow 1.11.0: System | Seq Length | Max Batch Size ------------ | ---------- | -------------- `BERT-Base` | 64 | 64 ... | 128 | 32 ... | 256 | 16 ... | 320 | 14 ... | 384 | 12 ... | 512 | 6 `BERT-Large` | 64 | 12 ... | 128 | 6 ... | 256 | 2 ... | 320 | 1 ... | 384 | 0 ... | 512 | 0 Unfortunately, these max batch sizes for `BERT-Large` are so small that they will actually harm the model accuracy, regardless of the learning rate used. We are working on adding code to this repository which will allow much larger effective batch sizes to be used on the GPU. The code will be based on one (or both) of the following techniques: * **Gradient accumulation**: The samples in a minibatch are typically independent with respect to gradient computation (excluding batch normalization, which is not used here). This means that the gradients of multiple smaller minibatches can be accumulated before performing the weight update, and this will be exactly equivalent to a single larger update. * [**Gradient checkpointing**](https://github.com/openai/gradient-checkpointing): The major use of GPU/TPU memory during DNN training is caching the intermediate activations in the forward pass that are necessary for efficient computation in the backward pass. "Gradient checkpointing" trades memory for compute time by re-computing the activations in an intelligent way. **However, this is not implemented in the current release.** ## Using BERT to extract fixed feature vectors (like ELMo) In certain cases, rather than fine-tuning the entire pre-trained model end-to-end, it can be beneficial to obtained *pre-trained contextual embeddings*, which are fixed contextual representations of each input token generated from the hidden layers of the pre-trained model. This should also mitigate most of the out-of-memory issues. As an example, we include the script `extract_features.py` which can be used like this: ```shell # Sentence A and Sentence B are separated by the ||| delimiter. # For single sentence inputs, don't use the delimiter. echo 'Who was Jim Henson ? ||| Jim Henson was a puppeteer' > /tmp/input.txt python extract_features.py \ --input_file=/tmp/input.txt \ --output_file=/tmp/output.jsonl \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \ --layers=-1,-2,-3,-4 \ --max_seq_length=128 \ --batch_size=8 ``` This will create a JSON file (one line per line of input) containing the BERT activations from each Transformer layer specified by `layers` (-1 is the final hidden layer of the Transformer, etc.) Note that this script will produce very large output files (by default, around 15kb for every input token). If you need to maintain alignment between the original and tokenized words (for projecting training labels), see the [Tokenization](#tokenization) section below. ## Tokenization For sentence-level tasks (or sentence-pair) tasks, tokenization is very simple. Just follow the example code in `run_classifier.py` and `extract_features.py`. The basic procedure for sentence-level tasks is: 1. Instantiate an instance of `tokenizer = tokenization.FullTokenizer` 2. Tokenize the raw text with `tokens = tokenizer.tokenize(raw_text)`. 3. Truncate to the maximum sequence length. (You can use up to 512, but you probably want to use shorter if possible for memory and speed reasons.) 4. Add the `[CLS]` and `[SEP]` tokens in the right place. Word-level and span-level tasks (e.g., SQuAD and NER) are more complex, since you need to maintain alignment between your input text and output text so that you can project your training labels. SQuAD is a particularly complex example because the input labels are *character*-based, and SQuAD paragraphs are often longer than our maximum sequence length. See the code in `run_squad.py` to show how we handle this. Before we describe the general recipe for handling word-level tasks, it's important to understand what exactly our tokenizer is doing. It has three main steps: 1. **Text normalization**: Convert all whitespace characters to spaces, and (for the `Uncased` model) lowercase the input and strip out accent markers. E.g., `John Johanson's, → john johanson's,`. 2. **Punctuation splitting**: Split *all* punctuation characters on both sides (i.e., add whitespace around all punctuation characters). Punctuation characters are defined as (a) Anything with a `P*` Unicode class, (b) any non-letter/number/space ASCII character (e.g., characters like `$` which are technically not punctuation). E.g., `john johanson's, → john johanson ' s ,` 3. **WordPiece tokenization**: Apply whitespace tokenization to the output of the above procedure, and apply [WordPiece](https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/data_generators/text_encoder.py) tokenization to each token separately. (Our implementation is directly based on the one from `tensor2tensor`, which is linked). E.g., `john johanson ' s , → john johan ##son ' s ,` The advantage of this scheme is that it is "compatible" with most existing English tokenizers. For example, imagine that you have a part-of-speech tagging task which looks like this: ``` Input: John Johanson 's house Labels: NNP NNP POS NN ``` The tokenized output will look like this: ``` Tokens: john johan ##son ' s house ``` Crucially, this would be the same output as if the raw text were `John Johanson's house` (with no space before the `'s`). If you have a pre-tokenized representation with word-level annotations, you can simply tokenize each input word independently, and deterministically maintain an original-to-tokenized alignment: ```python ### Input orig_tokens = ["John", "Johanson", "'s", "house"] labels = ["NNP", "NNP", "POS", "NN"] ### Output bert_tokens = [] # Token map will be an int -> int mapping between the `orig_tokens` index and # the `bert_tokens` index. orig_to_tok_map = [] tokenizer = tokenization.FullTokenizer( vocab_file=vocab_file, do_lower_case=True) bert_tokens.append("[CLS]") for orig_token in orig_tokens: orig_to_tok_map.append(len(bert_tokens)) bert_tokens.extend(tokenizer.tokenize(orig_token)) bert_tokens.append("[SEP]") # bert_tokens == ["[CLS]", "john", "johan", "##son", "'", "s", "house", "[SEP]"] # orig_to_tok_map == [1, 2, 4, 6] ``` Now `orig_to_tok_map` can be used to project `labels` to the tokenized representation. There are common English tokenization schemes which will cause a slight mismatch between how BERT was pre-trained. For example, if your input tokenization splits off contractions like `do n't`, this will cause a mismatch. If it is possible to do so, you should pre-process your data to convert these back to raw-looking text, but if it's not possible, this mismatch is likely not a big deal. ## Pre-training with BERT We are releasing code to do "masked LM" and "next sentence prediction" on an arbitrary text corpus. Note that this is *not* the exact code that was used for the paper (the original code was written in C++, and had some additional complexity), but this code does generate pre-training data as described in the paper. Here's how to run the data generation. The input is a plain text file, with one sentence per line. (It is important that these be actual sentences for the "next sentence prediction" task). Documents are delimited by empty lines. The output is a set of `tf.train.Example`s serialized into `TFRecord` file format. You can perform sentence segmentation with an off-the-shelf NLP toolkit such as [spaCy](https://spacy.io/). The `create_pretraining_data.py` script will concatenate segments until they reach the maximum sequence length to minimize computational waste from padding (see the script for more details). However, you may want to intentionally add a slight amount of noise to your input data (e.g., randomly truncate 2% of input segments) to make it more robust to non-sentential input during fine-tuning. This script stores all of the examples for the entire input file in memory, so for large data files you should shard the input file and call the script multiple times. (You can pass in a file glob to `run_pretraining.py`, e.g., `tf_examples.tf_record*`.) The `max_predictions_per_seq` is the maximum number of masked LM predictions per sequence. You should set this to around `max_seq_length` * `masked_lm_prob` (the script doesn't do that automatically because the exact value needs to be passed to both scripts). ```shell python create_pretraining_data.py \ --input_file=./sample_text.txt \ --output_file=/tmp/tf_examples.tfrecord \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --do_lower_case=True \ --max_seq_length=128 \ --max_predictions_per_seq=20 \ --masked_lm_prob=0.15 \ --random_seed=12345 \ --dupe_factor=5 ``` Here's how to run the pre-training. Do not include `init_checkpoint` if you are pre-training from scratch. The model configuration (including vocab size) is specified in `bert_config_file`. This demo code only pre-trains for a small number of steps (20), but in practice you will probably want to set `num_train_steps` to 10000 steps or more. The `max_seq_length` and `max_predictions_per_seq` parameters passed to `run_pretraining.py` must be the same as `create_pretraining_data.py`. ```shell python run_pretraining.py \ --input_file=/tmp/tf_examples.tfrecord \ --output_dir=/tmp/pretraining_output \ --do_train=True \ --do_eval=True \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \ --train_batch_size=32 \ --max_seq_length=128 \ --max_predictions_per_seq=20 \ --num_train_steps=20 \ --num_warmup_steps=10 \ --learning_rate=2e-5 ``` This will produce an output like this: ``` ***** Eval results ***** global_step = 20 loss = 0.0979674 masked_lm_accuracy = 0.985479 masked_lm_loss = 0.0979328 next_sentence_accuracy = 1.0 next_sentence_loss = 3.45724e-05 ``` Note that since our `sample_text.txt` file is very small, this example training will overfit that data in only a few steps and produce unrealistically high accuracy numbers. ### Pre-training tips and caveats * If your task has a large domain-specific corpus available (e.g., "movie reviews" or "scientific papers"), it will likely be beneficial to run additional steps of pre-training on your corpus, starting from the BERT checkpoint. * The learning rate we used in the paper was 1e-4. However, if you are doing additional steps of pre-training starting from an existing BERT checkpoint, you should use a smaller learning rate (e.g., 2e-5). * Current BERT models are English-only, but we do plan to release a multilingual model which has been pre-trained on a lot of languages in the near future (hopefully by the end of November 2018). * Longer sequences are disproportionately expensive because attention is quadratic to the sequence length. In other words, a batch of 64 sequences of length 512 is much more expensive than a batch of 256 sequences of length 128. The fully-connected/convolutional cost is the same, but the attention cost is far greater for the 512-length sequences. Therefore, one good recipe is to pre-train for, say, 90,000 steps with a sequence length of 128 and then for 10,000 additional steps with a sequence length of 512. The very long sequences are mostly needed to learn positional embeddings, which can be learned fairly quickly. Note that this does require generating the data twice with different values of `max_seq_length`. * If you are pre-training from scratch, be prepared that pre-training is computationally expensive, especially on GPUs. If you are pre-training from scratch, our recommended recipe is to pre-train a `BERT-Base` on a single [preemptible Cloud TPU v2](https://cloud.google.com/tpu/docs/pricing), which takes about 2 weeks at a cost of about $500 USD (based on the pricing in October 2018). You will have to scale down the batch size when only training on a single Cloud TPU, compared to what was used in the paper. It is recommended to use the largest batch size that fits into TPU memory. ### Pre-training data We will **not** be able to release the pre-processed datasets used in the paper. For Wikipedia, the recommended pre-processing is to download [the latest dump](https://dumps.wikimedia.org/enwiki/latest/enwiki-latest-pages-articles.xml.bz2), extract the text with [`WikiExtractor.py`](https://github.com/attardi/wikiextractor), and then apply any necessary cleanup to convert it into plain text. Unfortunately the researchers who collected the [BookCorpus](http://yknzhu.wixsite.com/mbweb) no longer have it available for public download. The [Project Guttenberg Dataset](https://web.eecs.umich.edu/~lahiri/gutenberg_dataset.html) is a somewhat smaller (200M word) collection of older books that are public domain. [Common Crawl](http://commoncrawl.org/) is another very large collection of text, but you will likely have to do substantial pre-processing and cleanup to extract a usable corpus for pre-training BERT. ### Learning a new WordPiece vocabulary This repository does not include code for *learning* a new WordPiece vocabulary. The reason is that the code used in the paper was implemented in C++ with dependencies on Google's internal libraries. For English, it is almost always better to just start with our vocabulary and pre-trained models. For learning vocabularies of other languages, there are a number of open source options available. However, keep in mind that these are not compatible with our `tokenization.py` library: * [Google's SentencePiece library](https://github.com/google/sentencepiece) * [tensor2tensor's WordPiece generation script](https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/data_generators/text_encoder_build_subword.py) * [Rico Sennrich's Byte Pair Encoding library](https://github.com/rsennrich/subword-nmt) ## Using BERT in Colab If you want to use BERT with [Colab](https://colab.research.google.com), you can get started with the notebook "[BERT FineTuning with Cloud TPUs](https://colab.research.google.com/github/tensorflow/tpu/blob/master/tools/colab/bert_finetuning_with_cloud_tpus.ipynb)". **At the time of this writing (October 31st, 2018), Colab users can access a Cloud TPU completely for free.** Note: One per user, availability limited, requires a Google Cloud Platform account with storage (although storage may be purchased with free credit for signing up with GCP), and this capability may not longer be available in the future. Click on the BERT Colab that was just linked for more information. ## FAQ #### Is this code compatible with Cloud TPUs? What about GPUs? Yes, all of the code in this repository works out-of-the-box with CPU, GPU, and Cloud TPU. However, GPU training is single-GPU only. #### I am getting out-of-memory errors, what is wrong? See the section on [out-of-memory issues](#out-of-memory-issues) for more information. #### Is there a PyTorch version available? There is no official PyTorch implementation. If someone creates a line-for-line PyTorch reimplementation so that our pre-trained checkpoints can be directly converted, we would be happy to link to that PyTorch version here. #### Will models in other languages be released? Yes, we plan to release a multi-lingual BERT model in the near future. We cannot make promises about exactly which languages will be included, but it will likely be a single model which includes *most* of the languages which have a significantly-sized Wikipedia. #### Will models larger than `BERT-Large` be released? So far we have not attempted to train anything larger than `BERT-Large`. It is possible that we will release larger models if we are able to obtain significant improvements. #### What license is this library released under? All code *and* models are released under the Apache 2.0 license. See the `LICENSE` file for more information. #### How do I cite BERT? For now, cite [the Arxiv paper](https://arxiv.org/abs/1810.04805): ``` @article{devlin2018bert, title={BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding}, author={Devlin, Jacob and Chang, Ming-Wei and Lee, Kenton and Toutanova, Kristina}, journal={arXiv preprint arXiv:1810.04805}, year={2018} } ``` If we submit the paper to a conference or journal, we will update the BibTeX. ## Disclaimer This is not an official Google product. ## Contact information For help or issues using BERT, please submit a GitHub issue. For personal communication related to BERT, please contact Jacob Devlin (`jacobdevlin@google.com`), Ming-Wei Chang (`mingweichang@google.com`), or Kenton Lee (`kentonl@google.com`). ================================================ FILE: third/bert/__init__.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ================================================ FILE: third/bert/create_pretraining_data.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Create masked LM/next sentence masked_lm TF examples for BERT.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import random import tokenization import tensorflow as tf from tqdm import tqdm flags = tf.flags FLAGS = flags.FLAGS flags.DEFINE_string("input_file", None, "Input raw text file (or comma-separated list of files).") flags.DEFINE_string( "output_file", None, "Output TF example file (or comma-separated list of files).") flags.DEFINE_string("vocab_file", None, "The vocabulary file that the BERT model was trained on.") flags.DEFINE_bool( "do_lower_case", True, "Whether to lower case the input text. Should be True for uncased " "models and False for cased models.") flags.DEFINE_integer("max_seq_length", 128, "Maximum sequence length.") flags.DEFINE_integer("max_predictions_per_seq", 20, "Maximum number of masked LM predictions per sequence.") flags.DEFINE_integer("random_seed", 12345, "Random seed for data generation.") flags.DEFINE_integer( "dupe_factor", 10, "Number of times to duplicate the input data (with different masks).") flags.DEFINE_float("masked_lm_prob", 0.15, "Masked LM probability.") flags.DEFINE_float( "short_seq_prob", 0.1, "Probability of creating sequences which are shorter than the " "maximum length.") class TrainingInstance(object): """A single training instance (sentence pair).""" def __init__(self, tokens, segment_ids, masked_lm_positions, masked_lm_labels, is_random_next): self.tokens = tokens self.segment_ids = segment_ids self.is_random_next = is_random_next self.masked_lm_positions = masked_lm_positions self.masked_lm_labels = masked_lm_labels def __str__(self): s = "" s += "tokens: %s\n" % (" ".join( [tokenization.printable_text(x) for x in self.tokens])) s += "segment_ids: %s\n" % (" ".join([str(x) for x in self.segment_ids])) s += "is_random_next: %s\n" % self.is_random_next s += "masked_lm_positions: %s\n" % (" ".join( [str(x) for x in self.masked_lm_positions])) s += "masked_lm_labels: %s\n" % (" ".join( [tokenization.printable_text(x) for x in self.masked_lm_labels])) s += "\n" return s def __repr__(self): return self.__str__() def write_instance_to_example_files(instances, tokenizer, max_seq_length, max_predictions_per_seq, output_files): """Create TF example files from `TrainingInstance`s.""" writers = [] for output_file in output_files: writers.append(tf.python_io.TFRecordWriter(output_file)) writer_index = 0 total_written = 0 for (inst_index, instance) in enumerate(instances): input_ids = tokenizer.convert_tokens_to_ids(instance.tokens) input_mask = [1] * len(input_ids) segment_ids = list(instance.segment_ids) assert len(input_ids) <= max_seq_length while len(input_ids) < max_seq_length: input_ids.append(0) input_mask.append(0) segment_ids.append(0) assert len(input_ids) == max_seq_length assert len(input_mask) == max_seq_length assert len(segment_ids) == max_seq_length masked_lm_positions = list(instance.masked_lm_positions) masked_lm_ids = tokenizer.convert_tokens_to_ids(instance.masked_lm_labels) masked_lm_weights = [1.0] * len(masked_lm_ids) while len(masked_lm_positions) < max_predictions_per_seq: masked_lm_positions.append(0) masked_lm_ids.append(0) masked_lm_weights.append(0.0) next_sentence_label = 1 if instance.is_random_next else 0 features = collections.OrderedDict() features["input_ids"] = create_int_feature(input_ids) features["input_mask"] = create_int_feature(input_mask) features["segment_ids"] = create_int_feature(segment_ids) features["masked_lm_positions"] = create_int_feature(masked_lm_positions) features["masked_lm_ids"] = create_int_feature(masked_lm_ids) features["masked_lm_weights"] = create_float_feature(masked_lm_weights) features["next_sentence_labels"] = create_int_feature([next_sentence_label]) tf_example = tf.train.Example(features=tf.train.Features(feature=features)) writers[writer_index].write(tf_example.SerializeToString()) writer_index = (writer_index + 1) % len(writers) total_written += 1 if inst_index < 20: tf.logging.info("*** Example ***") tf.logging.info("tokens: %s" % " ".join( [tokenization.printable_text(x) for x in instance.tokens])) for feature_name in features.keys(): feature = features[feature_name] values = [] if feature.int64_list.value: values = feature.int64_list.value elif feature.float_list.value: values = feature.float_list.value tf.logging.info( "%s: %s" % (feature_name, " ".join([str(x) for x in values]))) for writer in writers: writer.close() tf.logging.info("Wrote %d total instances", total_written) def create_int_feature(values): feature = tf.train.Feature(int64_list=tf.train.Int64List(value=list(values))) return feature def create_float_feature(values): feature = tf.train.Feature(float_list=tf.train.FloatList(value=list(values))) return feature def create_training_instances(input_files, tokenizer, max_seq_length, dupe_factor, short_seq_prob, masked_lm_prob, max_predictions_per_seq, rng): """Create `TrainingInstance`s from raw text.""" all_documents = [[]] # Input file format: # (1) One sentence per line. These should ideally be actual sentences, not # entire paragraphs or arbitrary spans of text. (Because we use the # sentence boundaries for the "next sentence prediction" task). # (2) Blank lines between documents. Document boundaries are needed so # that the "next sentence prediction" task doesn't span between documents. for input_file in input_files: with tf.gfile.GFile(input_file, "r") as reader: num_lines = 0 while True: line = tokenization.convert_to_unicode(reader.readline()) if not line: break line = line.strip() # Empty lines are used as document delimiters if not line: all_documents.append([]) tokens = tokenizer.tokenize(line) if tokens: all_documents[-1].append(tokens) if num_lines % 10000 == 0: print(num_lines) num_lines += 1 # Remove empty documents all_documents = [x for x in all_documents if x] rng.shuffle(all_documents) print('num docs', len(all_documents)) vocab_words = list(tokenizer.vocab.keys()) instances = [] for _ in range(dupe_factor): for document_index in tqdm(range(len(all_documents)), ascii=True): instances.extend( create_instances_from_document( all_documents, document_index, max_seq_length, short_seq_prob, masked_lm_prob, max_predictions_per_seq, vocab_words, rng)) rng.shuffle(instances) return instances def create_instances_from_document( all_documents, document_index, max_seq_length, short_seq_prob, masked_lm_prob, max_predictions_per_seq, vocab_words, rng): """Creates `TrainingInstance`s for a single document.""" document = all_documents[document_index] # Account for [CLS], [SEP], [SEP] max_num_tokens = max_seq_length - 3 # We *usually* want to fill up the entire sequence since we are padding # to `max_seq_length` anyways, so short sequences are generally wasted # computation. However, we *sometimes* # (i.e., short_seq_prob == 0.1 == 10% of the time) want to use shorter # sequences to minimize the mismatch between pre-training and fine-tuning. # The `target_seq_length` is just a rough target however, whereas # `max_seq_length` is a hard limit. target_seq_length = max_num_tokens if rng.random() < short_seq_prob: target_seq_length = rng.randint(2, max_num_tokens) # We DON'T just concatenate all of the tokens from a document into a long # sequence and choose an arbitrary split point because this would make the # next sentence prediction task too easy. Instead, we split the input into # segments "A" and "B" based on the actual "sentences" provided by the user # input. instances = [] current_chunk = [] current_length = 0 i = 0 while i < len(document): segment = document[i] current_chunk.append(segment) current_length += len(segment) if i == len(document) - 1 or current_length >= target_seq_length: if current_chunk: # `a_end` is how many segments from `current_chunk` go into the `A` # (first) sentence. a_end = 1 if len(current_chunk) >= 2: a_end = rng.randint(1, len(current_chunk) - 1) tokens_a = [] for j in range(a_end): tokens_a.extend(current_chunk[j]) tokens_b = [] # Random next is_random_next = False if len(current_chunk) == 1 or rng.random() < 0.5: is_random_next = True target_b_length = target_seq_length - len(tokens_a) # This should rarely go for more than one iteration for large # corpora. However, just to be careful, we try to make sure that # the random document is not the same as the document # we're processing. for _ in range(10): random_document_index = rng.randint(0, len(all_documents) - 1) if random_document_index != document_index: break random_document = all_documents[random_document_index] random_start = rng.randint(0, len(random_document) - 1) for j in range(random_start, len(random_document)): tokens_b.extend(random_document[j]) if len(tokens_b) >= target_b_length: break # We didn't actually use these segments so we "put them back" so # they don't go to waste. num_unused_segments = len(current_chunk) - a_end i -= num_unused_segments # Actual next else: is_random_next = False for j in range(a_end, len(current_chunk)): tokens_b.extend(current_chunk[j]) truncate_seq_pair(tokens_a, tokens_b, max_num_tokens, rng) assert len(tokens_a) >= 1 assert len(tokens_b) >= 1 tokens = [] segment_ids = [] tokens.append("[CLS]") segment_ids.append(0) for token in tokens_a: tokens.append(token) segment_ids.append(0) tokens.append("[SEP]") segment_ids.append(0) for token in tokens_b: tokens.append(token) segment_ids.append(1) tokens.append("[SEP]") segment_ids.append(1) (tokens, masked_lm_positions, masked_lm_labels) = create_masked_lm_predictions( tokens, masked_lm_prob, max_predictions_per_seq, vocab_words, rng) instance = TrainingInstance( tokens=tokens, segment_ids=segment_ids, is_random_next=is_random_next, masked_lm_positions=masked_lm_positions, masked_lm_labels=masked_lm_labels) instances.append(instance) current_chunk = [] current_length = 0 i += 1 return instances def create_masked_lm_predictions(tokens, masked_lm_prob, max_predictions_per_seq, vocab_words, rng): """Creates the predictions for the masked LM objective.""" cand_indexes = [] for (i, token) in enumerate(tokens): if token == "[CLS]" or token == "[SEP]": continue cand_indexes.append(i) rng.shuffle(cand_indexes) output_tokens = list(tokens) masked_lm = collections.namedtuple("masked_lm", ["index", "label"]) # pylint: disable=invalid-name num_to_predict = min(max_predictions_per_seq, max(1, int(round(len(tokens) * masked_lm_prob)))) masked_lms = [] covered_indexes = set() for index in cand_indexes: if len(masked_lms) >= num_to_predict: break if index in covered_indexes: continue covered_indexes.add(index) masked_token = None # 80% of the time, replace with [MASK] if rng.random() < 0.8: masked_token = "[MASK]" else: # 10% of the time, keep original if rng.random() < 0.5: masked_token = tokens[index] # 10% of the time, replace with random word else: masked_token = vocab_words[rng.randint(0, len(vocab_words) - 1)] output_tokens[index] = masked_token masked_lms.append(masked_lm(index=index, label=tokens[index])) masked_lms = sorted(masked_lms, key=lambda x: x.index) masked_lm_positions = [] masked_lm_labels = [] for p in masked_lms: masked_lm_positions.append(p.index) masked_lm_labels.append(p.label) return (output_tokens, masked_lm_positions, masked_lm_labels) def truncate_seq_pair(tokens_a, tokens_b, max_num_tokens, rng): """Truncates a pair of sequences to a maximum sequence length.""" while True: total_length = len(tokens_a) + len(tokens_b) if total_length <= max_num_tokens: break trunc_tokens = tokens_a if len(tokens_a) > len(tokens_b) else tokens_b assert len(trunc_tokens) >= 1 # We want to sometimes truncate from the front and sometimes from the # back to add more randomness and avoid biases. if rng.random() < 0.5: del trunc_tokens[0] else: trunc_tokens.pop() def main(_): tf.logging.set_verbosity(tf.logging.INFO) tokenizer = tokenization.FullTokenizer( vocab_file=FLAGS.vocab_file, do_lower_case=FLAGS.do_lower_case) input_files = [] for input_pattern in FLAGS.input_file.split(","): input_files.extend(tf.gfile.Glob(input_pattern)) tf.logging.info("*** Reading from input files ***") for input_file in input_files: tf.logging.info(" %s", input_file) rng = random.Random(FLAGS.random_seed) instances = create_training_instances( input_files, tokenizer, FLAGS.max_seq_length, FLAGS.dupe_factor, FLAGS.short_seq_prob, FLAGS.masked_lm_prob, FLAGS.max_predictions_per_seq, rng) output_files = FLAGS.output_file.split(",") tf.logging.info("*** Writing to output files ***") for output_file in output_files: tf.logging.info(" %s", output_file) write_instance_to_example_files(instances, tokenizer, FLAGS.max_seq_length, FLAGS.max_predictions_per_seq, output_files) if __name__ == "__main__": flags.mark_flag_as_required("input_file") flags.mark_flag_as_required("output_file") flags.mark_flag_as_required("vocab_file") tf.app.run() ================================================ FILE: third/bert/extract_features.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Extract pre-computed feature vectors from BERT.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import codecs import collections import json import re import modeling import tokenization import tensorflow as tf flags = tf.flags FLAGS = flags.FLAGS flags.DEFINE_string("input_file", None, "") flags.DEFINE_string("output_file", None, "") flags.DEFINE_string("layers", "-1,-2,-3,-4", "") flags.DEFINE_string( "bert_config_file", None, "The config json file corresponding to the pre-trained BERT model. " "This specifies the model architecture.") flags.DEFINE_integer( "max_seq_length", 128, "The maximum total input sequence length after WordPiece tokenization. " "Sequences longer than this will be truncated, and sequences shorter " "than this will be padded.") flags.DEFINE_string( "init_checkpoint", None, "Initial checkpoint (usually from a pre-trained BERT model).") flags.DEFINE_string("vocab_file", None, "The vocabulary file that the BERT model was trained on.") flags.DEFINE_bool( "do_lower_case", True, "Whether to lower case the input text. Should be True for uncased " "models and False for cased models.") flags.DEFINE_integer("batch_size", 32, "Batch size for predictions.") flags.DEFINE_bool("use_tpu", False, "Whether to use TPU or GPU/CPU.") flags.DEFINE_string("master", None, "If using a TPU, the address of the master.") flags.DEFINE_integer( "num_tpu_cores", 8, "Only used if `use_tpu` is True. Total number of TPU cores to use.") flags.DEFINE_bool( "use_one_hot_embeddings", False, "If True, tf.one_hot will be used for embedding lookups, otherwise " "tf.nn.embedding_lookup will be used. On TPUs, this should be True " "since it is much faster.") class InputExample(object): def __init__(self, unique_id, text_a, text_b): self.unique_id = unique_id self.text_a = text_a self.text_b = text_b class InputFeatures(object): """A single set of features of data.""" def __init__(self, unique_id, tokens, input_ids, input_mask, input_type_ids): self.unique_id = unique_id self.tokens = tokens self.input_ids = input_ids self.input_mask = input_mask self.input_type_ids = input_type_ids def input_fn_builder(features, seq_length): """Creates an `input_fn` closure to be passed to TPUEstimator.""" all_unique_ids = [] all_input_ids = [] all_input_mask = [] all_input_type_ids = [] for feature in features: all_unique_ids.append(feature.unique_id) all_input_ids.append(feature.input_ids) all_input_mask.append(feature.input_mask) all_input_type_ids.append(feature.input_type_ids) def input_fn(params): """The actual input function.""" batch_size = params["batch_size"] num_examples = len(features) # This is for demo purposes and does NOT scale to large data sets. We do # not use Dataset.from_generator() because that uses tf.py_func which is # not TPU compatible. The right way to load data is with TFRecordReader. d = tf.data.Dataset.from_tensor_slices({ "unique_ids": tf.constant(all_unique_ids, shape=[num_examples], dtype=tf.int32), "input_ids": tf.constant( all_input_ids, shape=[num_examples, seq_length], dtype=tf.int32), "input_mask": tf.constant( all_input_mask, shape=[num_examples, seq_length], dtype=tf.int32), "input_type_ids": tf.constant( all_input_type_ids, shape=[num_examples, seq_length], dtype=tf.int32), }) d = d.batch(batch_size=batch_size, drop_remainder=False) return d return input_fn def model_fn_builder(bert_config, init_checkpoint, layer_indexes, use_tpu, use_one_hot_embeddings): """Returns `model_fn` closure for TPUEstimator.""" def model_fn(features, labels, mode, params): # pylint: disable=unused-argument """The `model_fn` for TPUEstimator.""" unique_ids = features["unique_ids"] input_ids = features["input_ids"] input_mask = features["input_mask"] input_type_ids = features["input_type_ids"] model = modeling.BertModel( config=bert_config, is_training=False, input_ids=input_ids, input_mask=input_mask, token_type_ids=input_type_ids, use_one_hot_embeddings=use_one_hot_embeddings) if mode != tf.estimator.ModeKeys.PREDICT: raise ValueError("Only PREDICT modes are supported: %s" % (mode)) tvars = tf.trainable_variables() scaffold_fn = None (assignment_map, _) = modeling.get_assigment_map_from_checkpoint( tvars, init_checkpoint) if use_tpu: def tpu_scaffold(): tf.train.init_from_checkpoint(init_checkpoint, assignment_map) return tf.train.Scaffold() scaffold_fn = tpu_scaffold else: tf.train.init_from_checkpoint(init_checkpoint, assignment_map) all_layers = model.get_all_encoder_layers() predictions = { "unique_id": unique_ids, } for (i, layer_index) in enumerate(layer_indexes): predictions["layer_output_%d" % i] = all_layers[layer_index] output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, predictions=predictions, scaffold_fn=scaffold_fn) return output_spec return model_fn def convert_examples_to_features(examples, seq_length, tokenizer): """Loads a data file into a list of `InputBatch`s.""" features = [] for (ex_index, example) in enumerate(examples): tokens_a = tokenizer.tokenize(example.text_a) tokens_b = None if example.text_b: tokens_b = tokenizer.tokenize(example.text_b) if tokens_b: # Modifies `tokens_a` and `tokens_b` in place so that the total # length is less than the specified length. # Account for [CLS], [SEP], [SEP] with "- 3" _truncate_seq_pair(tokens_a, tokens_b, seq_length - 3) else: # Account for [CLS] and [SEP] with "- 2" if len(tokens_a) > seq_length - 2: tokens_a = tokens_a[0:(seq_length - 2)] # The convention in BERT is: # (a) For sequence pairs: # tokens: [CLS] is this jack ##son ##ville ? [SEP] no it is not . [SEP] # type_ids: 0 0 0 0 0 0 0 0 1 1 1 1 1 1 # (b) For single sequences: # tokens: [CLS] the dog is hairy . [SEP] # type_ids: 0 0 0 0 0 0 0 # # Where "type_ids" are used to indicate whether this is the first # sequence or the second sequence. The embedding vectors for `type=0` and # `type=1` were learned during pre-training and are added to the wordpiece # embedding vector (and position vector). This is not *strictly* necessary # since the [SEP] token unambiguously separates the sequences, but it makes # it easier for the model to learn the concept of sequences. # # For classification tasks, the first vector (corresponding to [CLS]) is # used as as the "sentence vector". Note that this only makes sense because # the entire model is fine-tuned. tokens = [] input_type_ids = [] tokens.append("[CLS]") input_type_ids.append(0) for token in tokens_a: tokens.append(token) input_type_ids.append(0) tokens.append("[SEP]") input_type_ids.append(0) if tokens_b: for token in tokens_b: tokens.append(token) input_type_ids.append(1) tokens.append("[SEP]") input_type_ids.append(1) input_ids = tokenizer.convert_tokens_to_ids(tokens) # The mask has 1 for real tokens and 0 for padding tokens. Only real # tokens are attended to. input_mask = [1] * len(input_ids) # Zero-pad up to the sequence length. while len(input_ids) < seq_length: input_ids.append(0) input_mask.append(0) input_type_ids.append(0) assert len(input_ids) == seq_length assert len(input_mask) == seq_length assert len(input_type_ids) == seq_length if ex_index < 5: tf.logging.info("*** Example ***") tf.logging.info("unique_id: %s" % (example.unique_id)) tf.logging.info("tokens: %s" % " ".join([str(x) for x in tokens])) tf.logging.info("input_ids: %s" % " ".join([str(x) for x in input_ids])) tf.logging.info("input_mask: %s" % " ".join([str(x) for x in input_mask])) tf.logging.info( "input_type_ids: %s" % " ".join([str(x) for x in input_type_ids])) features.append( InputFeatures( unique_id=example.unique_id, tokens=tokens, input_ids=input_ids, input_mask=input_mask, input_type_ids=input_type_ids)) return features def _truncate_seq_pair(tokens_a, tokens_b, max_length): """Truncates a sequence pair in place to the maximum length.""" # This is a simple heuristic which will always truncate the longer sequence # one token at a time. This makes more sense than truncating an equal percent # of tokens from each, since if one sequence is very short then each token # that's truncated likely contains more information than a longer sequence. while True: total_length = len(tokens_a) + len(tokens_b) if total_length <= max_length: break if len(tokens_a) > len(tokens_b): tokens_a.pop() else: tokens_b.pop() def read_examples(input_file): """Read a list of `InputExample`s from an input file.""" examples = [] unique_id = 0 with tf.gfile.GFile(input_file, "r") as reader: while True: line = tokenization.convert_to_unicode(reader.readline()) if not line: break line = line.strip() text_a = None text_b = None m = re.match(r"^(.*) \|\|\| (.*)$", line) if m is None: text_a = line else: text_a = m.group(1) text_b = m.group(2) examples.append( InputExample(unique_id=unique_id, text_a=text_a, text_b=text_b)) unique_id += 1 return examples def main(_): tf.logging.set_verbosity(tf.logging.INFO) layer_indexes = [int(x) for x in FLAGS.layers.split(",")] bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) tokenizer = tokenization.FullTokenizer( vocab_file=FLAGS.vocab_file, do_lower_case=FLAGS.do_lower_case) is_per_host = tf.contrib.tpu.InputPipelineConfig.PER_HOST_V2 run_config = tf.contrib.tpu.RunConfig( master=FLAGS.master, tpu_config=tf.contrib.tpu.TPUConfig( num_shards=FLAGS.num_tpu_cores, per_host_input_for_training=is_per_host)) examples = read_examples(FLAGS.input_file) features = convert_examples_to_features( examples=examples, seq_length=FLAGS.max_seq_length, tokenizer=tokenizer) unique_id_to_feature = {} for feature in features: unique_id_to_feature[feature.unique_id] = feature model_fn = model_fn_builder( bert_config=bert_config, init_checkpoint=FLAGS.init_checkpoint, layer_indexes=layer_indexes, use_tpu=FLAGS.use_tpu, use_one_hot_embeddings=FLAGS.use_one_hot_embeddings) # If TPU is not available, this will fall back to normal Estimator on CPU # or GPU. estimator = tf.contrib.tpu.TPUEstimator( use_tpu=FLAGS.use_tpu, model_fn=model_fn, config=run_config, predict_batch_size=FLAGS.batch_size) input_fn = input_fn_builder( features=features, seq_length=FLAGS.max_seq_length) with codecs.getwriter("utf-8")(tf.gfile.Open(FLAGS.output_file, "w")) as writer: for result in estimator.predict(input_fn, yield_single_examples=True): unique_id = int(result["unique_id"]) feature = unique_id_to_feature[unique_id] output_json = collections.OrderedDict() output_json["linex_index"] = unique_id all_features = [] for (i, token) in enumerate(feature.tokens): all_layers = [] for (j, layer_index) in enumerate(layer_indexes): layer_output = result["layer_output_%d" % j] layers = collections.OrderedDict() layers["index"] = layer_index layers["values"] = [ round(float(x), 6) for x in layer_output[i:(i + 1)].flat ] all_layers.append(layers) features = collections.OrderedDict() features["token"] = token features["layers"] = all_layers all_features.append(features) output_json["features"] = all_features writer.write(json.dumps(output_json) + "\n") if __name__ == "__main__": flags.mark_flag_as_required("input_file") flags.mark_flag_as_required("vocab_file") flags.mark_flag_as_required("bert_config_file") flags.mark_flag_as_required("init_checkpoint") flags.mark_flag_as_required("output_file") tf.app.run() ================================================ FILE: third/bert/modeling.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """The main BERT model and related functions.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import copy import json import math import re import six import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS class BertConfig(object): """Configuration for `BertModel`.""" def __init__(self, vocab_size, hidden_size=768, num_hidden_layers=12, num_attention_heads=12, intermediate_size=3072, hidden_act="gelu", hidden_dropout_prob=0.1, attention_probs_dropout_prob=0.1, max_position_embeddings=512, type_vocab_size=16, initializer_range=0.02): """Constructs BertConfig. Args: vocab_size: Vocabulary size of `inputs_ids` in `BertModel`. hidden_size: Size of the encoder layers and the pooler layer. num_hidden_layers: Number of hidden layers in the Transformer encoder. num_attention_heads: Number of attention heads for each attention layer in the Transformer encoder. intermediate_size: The size of the "intermediate" (i.e., feed-forward) layer in the Transformer encoder. hidden_act: The non-linear activation function (function or string) in the encoder and pooler. hidden_dropout_prob: The dropout probability for all fully connected layers in the embeddings, encoder, and pooler. attention_probs_dropout_prob: The dropout ratio for the attention probabilities. max_position_embeddings: The maximum sequence length that this model might ever be used with. Typically set this to something large just in case (e.g., 512 or 1024 or 2048). type_vocab_size: The vocabulary size of the `token_type_ids` passed into `BertModel`. initializer_range: The stdev of the truncated_normal_initializer for initializing all weight matrices. """ self.vocab_size = vocab_size self.hidden_size = hidden_size self.num_hidden_layers = num_hidden_layers self.num_attention_heads = num_attention_heads self.hidden_act = hidden_act self.intermediate_size = intermediate_size self.hidden_dropout_prob = hidden_dropout_prob self.attention_probs_dropout_prob = attention_probs_dropout_prob self.max_position_embeddings = max_position_embeddings self.type_vocab_size = type_vocab_size self.initializer_range = initializer_range @classmethod def from_dict(cls, json_object): """Constructs a `BertConfig` from a Python dictionary of parameters.""" config = BertConfig(vocab_size=None) for (key, value) in six.iteritems(json_object): config.__dict__[key] = value return config @classmethod def from_json_file(cls, json_file): """Constructs a `BertConfig` from a json file of parameters.""" with tf.gfile.GFile(json_file, "r") as reader: text = reader.read() return cls.from_dict(json.loads(text)) def to_dict(self): """Serializes this instance to a Python dictionary.""" output = copy.deepcopy(self.__dict__) return output def to_json_string(self): """Serializes this instance to a JSON string.""" return json.dumps(self.to_dict(), indent=2, sort_keys=True) + "\n" class BertModel(object): """BERT model ("Bidirectional Embedding Representations from a Transformer"). Example usage: ```python # Already been converted into WordPiece token ids input_ids = tf.constant([[31, 51, 99], [15, 5, 0]]) input_mask = tf.constant([[1, 1, 1], [1, 1, 0]]) token_type_ids = tf.constant([[0, 0, 1], [0, 2, 0]]) config = modeling.BertConfig(vocab_size=32000, hidden_size=512, num_hidden_layers=8, num_attention_heads=6, intermediate_size=1024) model = modeling.BertModel(config=config, is_training=True, input_ids=input_ids, input_mask=input_mask, token_type_ids=token_type_ids) label_embeddings = tf.get_variable(...) pooled_output = model.get_pooled_output() logits = tf.matmul(pooled_output, label_embeddings) ... ``` """ def __init__(self, config, is_training, input_ids, input_mask=None, token_type_ids=None, use_one_hot_embeddings=True, scope=None): """Constructor for BertModel. Args: config: `BertConfig` instance. is_training: bool. rue for training model, false for eval model. Controls whether dropout will be applied. input_ids: int32 Tensor of shape [batch_size, seq_length]. input_mask: (optional) int32 Tensor of shape [batch_size, seq_length]. token_type_ids: (optional) int32 Tensor of shape [batch_size, seq_length]. use_one_hot_embeddings: (optional) bool. Whether to use one-hot word embeddings or tf.embedding_lookup() for the word embeddings. On the TPU, it is must faster if this is True, on the CPU or GPU, it is faster if this is False. scope: (optional) variable scope. Defaults to "bert". Raises: ValueError: The config is invalid or one of the input tensor shapes is invalid. """ config = copy.deepcopy(config) if not is_training: config.hidden_dropout_prob = 0.0 config.attention_probs_dropout_prob = 0.0 input_shape = get_shape_list(input_ids, expected_rank=2) batch_size = input_shape[0] seq_length = input_shape[1] if input_mask is None: input_mask = tf.ones(shape=[batch_size, seq_length], dtype=tf.int32) if token_type_ids is None: token_type_ids = tf.zeros(shape=[batch_size, seq_length], dtype=tf.int32) #with tf.variable_scope("bert", scope): with tf.variable_scope("bert", scope, reuse=tf.AUTO_REUSE): with tf.variable_scope("embeddings"): # Perform embedding lookup on the word ids. (self.embedding_output, self.embedding_table) = embedding_lookup( input_ids=input_ids, vocab_size=config.vocab_size, embedding_size=config.hidden_size, initializer_range=config.initializer_range, word_embedding_name="word_embeddings", use_one_hot_embeddings=use_one_hot_embeddings) # Add positional embeddings and token type embeddings, then layer # normalize and perform dropout. self.embedding_output = embedding_postprocessor( input_tensor=self.embedding_output, use_token_type=True, token_type_ids=token_type_ids, token_type_vocab_size=config.type_vocab_size, token_type_embedding_name="token_type_embeddings", use_position_embeddings=True, position_embedding_name="position_embeddings", initializer_range=config.initializer_range, max_position_embeddings=config.max_position_embeddings, dropout_prob=config.hidden_dropout_prob) with tf.variable_scope("encoder"): # This converts a 2D mask of shape [batch_size, seq_length] to a 3D # mask of shape [batch_size, seq_length, seq_length] which is used # for the attention scores. attention_mask = create_attention_mask_from_input_mask( input_ids, input_mask) # Run the stacked transformer. # `sequence_output` shape = [batch_size, seq_length, hidden_size]. self.all_encoder_layers = transformer_model( input_tensor=self.embedding_output, attention_mask=attention_mask, hidden_size=config.hidden_size, num_hidden_layers=config.num_hidden_layers, num_attention_heads=config.num_attention_heads, intermediate_size=config.intermediate_size, intermediate_act_fn=get_activation(config.hidden_act), hidden_dropout_prob=config.hidden_dropout_prob, attention_probs_dropout_prob=config.attention_probs_dropout_prob, initializer_range=config.initializer_range, do_return_all_layers=True) self.sequence_output = self.all_encoder_layers[-1] # The "pooler" converts the encoded sequence tensor of shape # [batch_size, seq_length, hidden_size] to a tensor of shape # [batch_size, hidden_size]. This is necessary for segment-level # (or segment-pair-level) classification tasks where we need a fixed # dimensional representation of the segment. with tf.variable_scope("pooler"): # We "pool" the model by simply taking the hidden state corresponding # to the first token. We assume that this has been pre-trained first_token_tensor = tf.squeeze(self.sequence_output[:, 0:1, :], axis=1) self.pooled_output = tf.layers.dense( first_token_tensor, config.hidden_size, activation=tf.tanh, kernel_initializer=create_initializer(config.initializer_range)) def get_pooled_output(self): return self.pooled_output def get_sequence_output(self): """Gets final hidden layer of encoder. Returns: float Tensor of shape [batch_size, seq_length, hidden_size] corresponding to the final hidden of the transformer encoder. """ return self.sequence_output def get_all_encoder_layers(self): return self.all_encoder_layers def get_embedding_output(self): """Gets output of the embedding lookup (i.e., input to the transformer). Returns: float Tensor of shape [batch_size, seq_length, hidden_size] corresponding to the output of the embedding layer, after summing the word embeddings with the positional embeddings and the token type embeddings, then performing layer normalization. This is the input to the transformer. """ return self.embedding_output def get_embedding_table(self): return self.embedding_table def gelu(input_tensor): """Gaussian Error Linear Unit. This is a smoother version of the RELU. Original paper: https://arxiv.org/abs/1606.08415 Args: input_tensor: float Tensor to perform activation. Returns: `input_tensor` with the GELU activation applied. """ cdf = 0.5 * (1.0 + tf.erf(input_tensor / tf.sqrt(2.0))) return input_tensor * cdf def get_activation(activation_string): """Maps a string to a Python function, e.g., "relu" => `tf.nn.relu`. Args: activation_string: String name of the activation function. Returns: A Python function corresponding to the activation function. If `activation_string` is None, empty, or "linear", this will return None. If `activation_string` is not a string, it will return `activation_string`. Raises: ValueError: The `activation_string` does not correspond to a known activation. """ # We assume that anything that"s not a string is already an activation # function, so we just return it. if not isinstance(activation_string, six.string_types): return activation_string if not activation_string: return None act = activation_string.lower() if act == "linear": return None elif act == "relu": return tf.nn.relu elif act == "gelu": return gelu elif act == "tanh": return tf.tanh else: raise ValueError("Unsupported activation: %s" % act) def get_assigment_map_from_checkpoint(tvars, init_checkpoint): """Compute the union of the current variables and checkpoint variables.""" assignment_map = {} initialized_variable_names = {} name_to_variable = collections.OrderedDict() for var in tvars: name = var.name m = re.match("^(.*):\\d+$", name) if m is not None: name = m.group(1) name_to_variable[name] = var init_vars = tf.train.list_variables(init_checkpoint) assignment_map = collections.OrderedDict() for x in init_vars: (name, var) = (x[0], x[1]) if name not in name_to_variable: continue assignment_map[name] = name initialized_variable_names[name] = 1 initialized_variable_names[name + ":0"] = 1 return (assignment_map, initialized_variable_names) def dropout(input_tensor, dropout_prob): """Perform dropout. Args: input_tensor: float Tensor. dropout_prob: Python float. The probability of dropping out a value (NOT of *keeping* a dimension as in `tf.nn.dropout`). Returns: A version of `input_tensor` with dropout applied. """ if dropout_prob is None or dropout_prob == 0.0: return input_tensor output = tf.nn.dropout(input_tensor, 1.0 - dropout_prob) return output def layer_norm(input_tensor, name=None): """Run layer normalization on the last dimension of the tensor.""" return tf.contrib.layers.layer_norm( inputs=input_tensor, begin_norm_axis=-1, begin_params_axis=-1, scope=name) def layer_norm_and_dropout(input_tensor, dropout_prob, name=None): """Runs layer normalization followed by dropout.""" output_tensor = layer_norm(input_tensor, name) output_tensor = dropout(output_tensor, dropout_prob) return output_tensor def create_initializer(initializer_range=0.02): """Creates a `truncated_normal_initializer` with the given range.""" return tf.truncated_normal_initializer(stddev=initializer_range) def embedding_lookup(input_ids, vocab_size, embedding_size=128, initializer_range=0.02, word_embedding_name="word_embeddings", use_one_hot_embeddings=False): """Looks up words embeddings for id tensor. Args: input_ids: int32 Tensor of shape [batch_size, seq_length] containing word ids. vocab_size: int. Size of the embedding vocabulary. embedding_size: int. Width of the word embeddings. initializer_range: float. Embedding initialization range. word_embedding_name: string. Name of the embedding table. use_one_hot_embeddings: bool. If True, use one-hot method for word embeddings. If False, use `tf.nn.embedding_lookup()`. One hot is better for TPUs. Returns: float Tensor of shape [batch_size, seq_length, embedding_size]. """ # This function assumes that the input is of shape [batch_size, seq_length, # num_inputs]. # # If the input is a 2D tensor of shape [batch_size, seq_length], we # reshape to [batch_size, seq_length, 1]. if input_ids.shape.ndims == 2: input_ids = tf.expand_dims(input_ids, axis=[-1]) try: if FLAGS.word_embedding_file: import numpy as np embedding_weight = np.load(FLAGS.word_embedding_file) initializer = tf.constant_initializer(embedding_weight) else: initializer = create_initializer(initializer_range) print('-----------initializer', initializer) embedding_table = tf.get_variable( name=word_embedding_name, shape=[vocab_size, embedding_size], initializer=initializer, trainable=FLAGS.finetune_word_embedding) except Exception: embedding_table = tf.get_variable( name=word_embedding_name, shape=[vocab_size, embedding_size], initializer=create_initializer(initializer_range), trainable=FLAGS.finetune_word_embedding) # num_freeze_words = 0 # if num_finetune_words: # num_freeze_words = vocab_size - num_finetune_words # self.embedding = wenzheng.Embedding(vocab_size, # emb_dim, # embedding_weight, # trainable=finetune_word_embedding, # freeze_size=num_freeze_words) try: # chg add if FLAGS.num_finetune_words: print('split embedding by finetune words num', FLAGS.num_finetune_words) # well during sentiment contest, here make a mistake so as to finetune actually top 1.7w words, similar as finetune all words #embedding, embedding2 = tf.split(embedding_table, [vocab_size - FLAGS.num_finetune_words, FLAGS.num_finetune_words], 0) embedding, embedding2 = tf.split(embedding_table, [FLAGS.num_finetune_words, vocab_size - FLAGS.num_finetune_words], 0) embedding_table = tf.concat([embedding, tf.stop_gradient(embedding2)], 0) except Exception: pass print('-------------------------use one hot embeddings', use_one_hot_embeddings) # for gpu if use one hot embeddings batches/s:[2.64] insts/s:[84.57] 1epoch:[0.34h] # if not use batch_size:[32] batches/s:[2.79] insts/s:[89.39] 1epoch:[0.33h] a bit faster.. if use_one_hot_embeddings: flat_input_ids = tf.reshape(input_ids, [-1]) one_hot_input_ids = tf.one_hot(flat_input_ids, depth=vocab_size) output = tf.matmul(one_hot_input_ids, embedding_table) else: output = tf.nn.embedding_lookup(embedding_table, input_ids) input_shape = get_shape_list(input_ids) output = tf.reshape(output, input_shape[0:-1] + [input_shape[-1] * embedding_size]) return (output, embedding_table) def embedding_postprocessor(input_tensor, use_token_type=False, token_type_ids=None, token_type_vocab_size=16, token_type_embedding_name="token_type_embeddings", use_position_embeddings=True, position_embedding_name="position_embeddings", initializer_range=0.02, max_position_embeddings=512, dropout_prob=0.1): """Performs various post-processing on a word embedding tensor. Args: input_tensor: float Tensor of shape [batch_size, seq_length, embedding_size]. use_token_type: bool. Whether to add embeddings for `token_type_ids`. token_type_ids: (optional) int32 Tensor of shape [batch_size, seq_length]. Must be specified if `use_token_type` is True. token_type_vocab_size: int. The vocabulary size of `token_type_ids`. token_type_embedding_name: string. The name of the embedding table variable for token type ids. use_position_embeddings: bool. Whether to add position embeddings for the position of each token in the sequence. position_embedding_name: string. The name of the embedding table variable for positional embeddings. initializer_range: float. Range of the weight initialization. max_position_embeddings: int. Maximum sequence length that might ever be used with this model. This can be longer than the sequence length of input_tensor, but cannot be shorter. dropout_prob: float. Dropout probability applied to the final output tensor. Returns: float tensor with same shape as `input_tensor`. Raises: ValueError: One of the tensor shapes or input values is invalid. """ input_shape = get_shape_list(input_tensor, expected_rank=3) batch_size = input_shape[0] seq_length = input_shape[1] width = input_shape[2] # if seq_length > max_position_embeddings: # raise ValueError("The seq length (%d) cannot be greater than " # "`max_position_embeddings` (%d)" % # (seq_length, max_position_embeddings)) output = input_tensor if use_token_type: if token_type_ids is None: raise ValueError("`token_type_ids` must be specified if" "`use_token_type` is True.") token_type_table = tf.get_variable( name=token_type_embedding_name, shape=[token_type_vocab_size, width], initializer=create_initializer(initializer_range)) # This vocab will be small so we always do one-hot here, since it is always # faster for a small vocabulary. flat_token_type_ids = tf.reshape(token_type_ids, [-1]) one_hot_ids = tf.one_hot(flat_token_type_ids, depth=token_type_vocab_size) token_type_embeddings = tf.matmul(one_hot_ids, token_type_table) token_type_embeddings = tf.reshape(token_type_embeddings, [batch_size, seq_length, width]) output += token_type_embeddings if use_position_embeddings: full_position_embeddings = tf.get_variable( name=position_embedding_name, shape=[max_position_embeddings, width], initializer=create_initializer(initializer_range)) # Since the position embedding table is a learned variable, we create it # using a (long) sequence length `max_position_embeddings`. The actual # sequence length might be shorter than this, for faster training of # tasks that do not have long sequences. # # So `full_position_embeddings` is effectively an embedding table # for position [0, 1, 2, ..., max_position_embeddings-1], and the current # sequence has positions [0, 1, 2, ... seq_length-1], so we can just # perform a slice. # if seq_length < max_position_embeddings: # position_embeddings = tf.slice(full_position_embeddings, [0, 0], # [seq_length, -1]) # else: # position_embeddings = full_position_embeddings position_embeddings = tf.slice(full_position_embeddings, [0, 0], [seq_length, -1]) num_dims = len(output.shape.as_list()) # Only the last two dimensions are relevant (`seq_length` and `width`), so # we broadcast among the first dimensions, which is typically just # the batch size. position_broadcast_shape = [] for _ in range(num_dims - 2): position_broadcast_shape.append(1) position_broadcast_shape.extend([seq_length, width]) position_embeddings = tf.reshape(position_embeddings, position_broadcast_shape) output += position_embeddings output = layer_norm_and_dropout(output, dropout_prob) return output def create_attention_mask_from_input_mask(from_tensor, to_mask): """Create 3D attention mask from a 2D tensor mask. Args: from_tensor: 2D or 3D Tensor of shape [batch_size, from_seq_length, ...]. to_mask: int32 Tensor of shape [batch_size, to_seq_length]. Returns: float Tensor of shape [batch_size, from_seq_length, to_seq_length]. """ from_shape = get_shape_list(from_tensor, expected_rank=[2, 3]) batch_size = from_shape[0] from_seq_length = from_shape[1] to_shape = get_shape_list(to_mask, expected_rank=2) to_seq_length = to_shape[1] to_mask = tf.cast( tf.reshape(to_mask, [batch_size, 1, to_seq_length]), tf.float32) # We don't assume that `from_tensor` is a mask (although it could be). We # don't actually care if we attend *from* padding tokens (only *to* padding) # tokens so we create a tensor of all ones. # # `broadcast_ones` = [batch_size, from_seq_length, 1] broadcast_ones = tf.ones( shape=[batch_size, from_seq_length, 1], dtype=tf.float32) # Here we broadcast along two dimensions to create the mask. mask = broadcast_ones * to_mask return mask def attention_layer(from_tensor, to_tensor, attention_mask=None, num_attention_heads=1, size_per_head=512, query_act=None, key_act=None, value_act=None, attention_probs_dropout_prob=0.0, initializer_range=0.02, do_return_2d_tensor=False, batch_size=None, from_seq_length=None, to_seq_length=None): """Performs multi-headed attention from `from_tensor` to `to_tensor`. This is an implementation of multi-headed attention based on "Attention is all you Need". If `from_tensor` and `to_tensor` are the same, then this is self-attention. Each timestep in `from_tensor` attends to the corresponding sequence in `to_tensor`, and returns a fixed-with vector. This function first projects `from_tensor` into a "query" tensor and `to_tensor` into "key" and "value" tensors. These are (effectively) a list of tensors of length `num_attention_heads`, where each tensor is of shape [batch_size, seq_length, size_per_head]. Then, the query and key tensors are dot-producted and scaled. These are softmaxed to obtain attention probabilities. The value tensors are then interpolated by these probabilities, then concatenated back to a single tensor and returned. In practice, the multi-headed attention are done with transposes and reshapes rather than actual separate tensors. Args: from_tensor: float Tensor of shape [batch_size, from_seq_length, from_width]. to_tensor: float Tensor of shape [batch_size, to_seq_length, to_width]. attention_mask: (optional) int32 Tensor of shape [batch_size, from_seq_length, to_seq_length]. The values should be 1 or 0. The attention scores will effectively be set to -infinity for any positions in the mask that are 0, and will be unchanged for positions that are 1. num_attention_heads: int. Number of attention heads. size_per_head: int. Size of each attention head. query_act: (optional) Activation function for the query transform. key_act: (optional) Activation function for the key transform. value_act: (optional) Activation function for the value transform. attention_probs_dropout_prob: (optional) float. Dropout probability of the attention probabilities. initializer_range: float. Range of the weight initializer. do_return_2d_tensor: bool. If True, the output will be of shape [batch_size * from_seq_length, num_attention_heads * size_per_head]. If False, the output will be of shape [batch_size, from_seq_length, num_attention_heads * size_per_head]. batch_size: (Optional) int. If the input is 2D, this might be the batch size of the 3D version of the `from_tensor` and `to_tensor`. from_seq_length: (Optional) If the input is 2D, this might be the seq length of the 3D version of the `from_tensor`. to_seq_length: (Optional) If the input is 2D, this might be the seq length of the 3D version of the `to_tensor`. Returns: float Tensor of shape [batch_size, from_seq_length, num_attention_heads * size_per_head]. (If `do_return_2d_tensor` is true, this will be of shape [batch_size * from_seq_length, num_attention_heads * size_per_head]). Raises: ValueError: Any of the arguments or tensor shapes are invalid. """ def transpose_for_scores(input_tensor, batch_size, num_attention_heads, seq_length, width): output_tensor = tf.reshape( input_tensor, [batch_size, seq_length, num_attention_heads, width]) output_tensor = tf.transpose(output_tensor, [0, 2, 1, 3]) return output_tensor from_shape = get_shape_list(from_tensor, expected_rank=[2, 3]) to_shape = get_shape_list(to_tensor, expected_rank=[2, 3]) if len(from_shape) != len(to_shape): raise ValueError( "The rank of `from_tensor` must match the rank of `to_tensor`.") if len(from_shape) == 3: batch_size = from_shape[0] from_seq_length = from_shape[1] to_seq_length = to_shape[1] elif len(from_shape) == 2: if (batch_size is None or from_seq_length is None or to_seq_length is None): raise ValueError( "When passing in rank 2 tensors to attention_layer, the values " "for `batch_size`, `from_seq_length`, and `to_seq_length` " "must all be specified.") # Scalar dimensions referenced here: # B = batch size (number of sequences) # F = `from_tensor` sequence length # T = `to_tensor` sequence length # N = `num_attention_heads` # H = `size_per_head` from_tensor_2d = reshape_to_matrix(from_tensor) to_tensor_2d = reshape_to_matrix(to_tensor) # `query_layer` = [B*F, N*H] query_layer = tf.layers.dense( from_tensor_2d, num_attention_heads * size_per_head, activation=query_act, name="query", kernel_initializer=create_initializer(initializer_range)) # `key_layer` = [B*T, N*H] key_layer = tf.layers.dense( to_tensor_2d, num_attention_heads * size_per_head, activation=key_act, name="key", kernel_initializer=create_initializer(initializer_range)) # `value_layer` = [B*T, N*H] value_layer = tf.layers.dense( to_tensor_2d, num_attention_heads * size_per_head, activation=value_act, name="value", kernel_initializer=create_initializer(initializer_range)) # `query_layer` = [B, N, F, H] query_layer = transpose_for_scores(query_layer, batch_size, num_attention_heads, from_seq_length, size_per_head) # `key_layer` = [B, N, T, H] key_layer = transpose_for_scores(key_layer, batch_size, num_attention_heads, to_seq_length, size_per_head) # Take the dot product between "query" and "key" to get the raw # attention scores. # `attention_scores` = [B, N, F, T] attention_scores = tf.matmul(query_layer, key_layer, transpose_b=True) attention_scores = tf.multiply(attention_scores, 1.0 / math.sqrt(float(size_per_head))) if attention_mask is not None: # `attention_mask` = [B, 1, F, T] attention_mask = tf.expand_dims(attention_mask, axis=[1]) # Since attention_mask is 1.0 for positions we want to attend and 0.0 for # masked positions, this operation will create a tensor which is 0.0 for # positions we want to attend and -10000.0 for masked positions. adder = (1.0 - tf.cast(attention_mask, tf.float32)) * -10000.0 # Since we are adding it to the raw scores before the softmax, this is # effectively the same as removing these entirely. attention_scores += adder # Normalize the attention scores to probabilities. # `attention_probs` = [B, N, F, T] attention_probs = tf.nn.softmax(attention_scores) # This is actually dropping out entire tokens to attend to, which might # seem a bit unusual, but is taken from the original Transformer paper. attention_probs = dropout(attention_probs, attention_probs_dropout_prob) # `value_layer` = [B, T, N, H] value_layer = tf.reshape( value_layer, [batch_size, to_seq_length, num_attention_heads, size_per_head]) # `value_layer` = [B, N, T, H] value_layer = tf.transpose(value_layer, [0, 2, 1, 3]) # `context_layer` = [B, N, F, H] context_layer = tf.matmul(attention_probs, value_layer) # `context_layer` = [B, F, N, H] context_layer = tf.transpose(context_layer, [0, 2, 1, 3]) if do_return_2d_tensor: # `context_layer` = [B*F, N*V] context_layer = tf.reshape( context_layer, [batch_size * from_seq_length, num_attention_heads * size_per_head]) else: # `context_layer` = [B, F, N*V] context_layer = tf.reshape( context_layer, [batch_size, from_seq_length, num_attention_heads * size_per_head]) return context_layer def transformer_model(input_tensor, attention_mask=None, hidden_size=768, num_hidden_layers=12, num_attention_heads=12, intermediate_size=3072, intermediate_act_fn=gelu, hidden_dropout_prob=0.1, attention_probs_dropout_prob=0.1, initializer_range=0.02, do_return_all_layers=False): """Multi-headed, multi-layer Transformer from "Attention is All You Need". This is almost an exact implementation of the original Transformer encoder. See the original paper: https://arxiv.org/abs/1706.03762 Also see: https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/models/transformer.py Args: input_tensor: float Tensor of shape [batch_size, seq_length, hidden_size]. attention_mask: (optional) int32 Tensor of shape [batch_size, seq_length, seq_length], with 1 for positions that can be attended to and 0 in positions that should not be. hidden_size: int. Hidden size of the Transformer. num_hidden_layers: int. Number of layers (blocks) in the Transformer. num_attention_heads: int. Number of attention heads in the Transformer. intermediate_size: int. The size of the "intermediate" (a.k.a., feed forward) layer. intermediate_act_fn: function. The non-linear activation function to apply to the output of the intermediate/feed-forward layer. hidden_dropout_prob: float. Dropout probability for the hidden layers. attention_probs_dropout_prob: float. Dropout probability of the attention probabilities. initializer_range: float. Range of the initializer (stddev of truncated normal). do_return_all_layers: Whether to also return all layers or just the final layer. Returns: float Tensor of shape [batch_size, seq_length, hidden_size], the final hidden layer of the Transformer. Raises: ValueError: A Tensor shape or parameter is invalid. """ if hidden_size % num_attention_heads != 0: raise ValueError( "The hidden size (%d) is not a multiple of the number of attention " "heads (%d)" % (hidden_size, num_attention_heads)) attention_head_size = int(hidden_size / num_attention_heads) input_shape = get_shape_list(input_tensor, expected_rank=3) batch_size = input_shape[0] seq_length = input_shape[1] input_width = input_shape[2] # The Transformer performs sum residuals on all layers so the input needs # to be the same as the hidden size. if input_width != hidden_size: raise ValueError("The width of the input tensor (%d) != hidden size (%d)" % (input_width, hidden_size)) # We keep the representation as a 2D tensor to avoid re-shaping it back and # forth from a 3D tensor to a 2D tensor. Re-shapes are normally free on # the GPU/CPU but may not be free on the TPU, so we want to minimize them to # help the optimizer. prev_output = reshape_to_matrix(input_tensor) all_layer_outputs = [] for layer_idx in range(num_hidden_layers): with tf.variable_scope("layer_%d" % layer_idx): layer_input = prev_output with tf.variable_scope("attention"): attention_heads = [] with tf.variable_scope("self"): attention_head = attention_layer( from_tensor=layer_input, to_tensor=layer_input, attention_mask=attention_mask, num_attention_heads=num_attention_heads, size_per_head=attention_head_size, attention_probs_dropout_prob=attention_probs_dropout_prob, initializer_range=initializer_range, do_return_2d_tensor=True, batch_size=batch_size, from_seq_length=seq_length, to_seq_length=seq_length) attention_heads.append(attention_head) attention_output = None if len(attention_heads) == 1: attention_output = attention_heads[0] else: # In the case where we have other sequences, we just concatenate # them to the self-attention head before the projection. attention_output = tf.concat(attention_heads, axis=-1) # Run a linear projection of `hidden_size` then add a residual # with `layer_input`. with tf.variable_scope("output"): attention_output = tf.layers.dense( attention_output, hidden_size, kernel_initializer=create_initializer(initializer_range)) attention_output = dropout(attention_output, hidden_dropout_prob) attention_output = layer_norm(attention_output + layer_input) # The activation is only applied to the "intermediate" hidden layer. with tf.variable_scope("intermediate"): intermediate_output = tf.layers.dense( attention_output, intermediate_size, activation=intermediate_act_fn, kernel_initializer=create_initializer(initializer_range)) # Down-project back to `hidden_size` then add the residual. with tf.variable_scope("output"): layer_output = tf.layers.dense( intermediate_output, hidden_size, kernel_initializer=create_initializer(initializer_range)) layer_output = dropout(layer_output, hidden_dropout_prob) layer_output = layer_norm(layer_output + attention_output) prev_output = layer_output all_layer_outputs.append(layer_output) if do_return_all_layers: final_outputs = [] for layer_output in all_layer_outputs: final_output = reshape_from_matrix(layer_output, input_shape) final_outputs.append(final_output) return final_outputs else: final_output = reshape_from_matrix(prev_output, input_shape) return final_output def get_shape_list(tensor, expected_rank=None, name=None): """Returns a list of the shape of tensor, preferring static dimensions. Args: tensor: A tf.Tensor object to find the shape of. expected_rank: (optional) int. The expected rank of `tensor`. If this is specified and the `tensor` has a different rank, and exception will be thrown. name: Optional name of the tensor for the error message. Returns: A list of dimensions of the shape of tensor. All static dimensions will be returned as python integers, and dynamic dimensions will be returned as tf.Tensor scalars. """ if name is None: name = tensor.name if expected_rank is not None: assert_rank(tensor, expected_rank, name) shape = tensor.shape.as_list() non_static_indexes = [] for (index, dim) in enumerate(shape): if dim is None: non_static_indexes.append(index) if not non_static_indexes: return shape dyn_shape = tf.shape(tensor) for index in non_static_indexes: shape[index] = dyn_shape[index] return shape def reshape_to_matrix(input_tensor): """Reshapes a >= rank 2 tensor to a rank 2 tensor (i.e., a matrix).""" ndims = input_tensor.shape.ndims if ndims < 2: raise ValueError("Input tensor must have at least rank 2. Shape = %s" % (input_tensor.shape)) if ndims == 2: return input_tensor width = input_tensor.shape[-1] output_tensor = tf.reshape(input_tensor, [-1, width]) return output_tensor def reshape_from_matrix(output_tensor, orig_shape_list): """Reshapes a rank 2 tensor back to its original rank >= 2 tensor.""" if len(orig_shape_list) == 2: return output_tensor output_shape = get_shape_list(output_tensor) orig_dims = orig_shape_list[0:-1] width = output_shape[-1] return tf.reshape(output_tensor, orig_dims + [width]) def assert_rank(tensor, expected_rank, name=None): """Raises an exception if the tensor rank is not of the expected rank. Args: tensor: A tf.Tensor to check the rank of. expected_rank: Python integer or list of integers, expected rank. name: Optional name of the tensor for the error message. Raises: ValueError: If the expected shape doesn't match the actual shape. """ if name is None: name = tensor.name expected_rank_dict = {} if isinstance(expected_rank, six.integer_types): expected_rank_dict[expected_rank] = True else: for x in expected_rank: expected_rank_dict[x] = True actual_rank = tensor.shape.ndims if actual_rank not in expected_rank_dict: scope_name = tf.get_variable_scope().name raise ValueError( "For the tensor `%s` in scope `%s`, the actual rank " "`%d` (shape = %s) is not equal to the expected rank `%s`" % (name, scope_name, actual_rank, str(tensor.shape), str(expected_rank))) ================================================ FILE: third/bert/modeling_test.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import json import random import re import modeling import six import tensorflow as tf class BertModelTest(tf.test.TestCase): class BertModelTester(object): def __init__(self, parent, batch_size=13, seq_length=7, is_training=True, use_input_mask=True, use_token_type_ids=True, vocab_size=99, hidden_size=32, num_hidden_layers=5, num_attention_heads=4, intermediate_size=37, hidden_act="gelu", hidden_dropout_prob=0.1, attention_probs_dropout_prob=0.1, max_position_embeddings=512, type_vocab_size=16, initializer_range=0.02, scope=None): self.parent = parent self.batch_size = batch_size self.seq_length = seq_length self.is_training = is_training self.use_input_mask = use_input_mask self.use_token_type_ids = use_token_type_ids self.vocab_size = vocab_size self.hidden_size = hidden_size self.num_hidden_layers = num_hidden_layers self.num_attention_heads = num_attention_heads self.intermediate_size = intermediate_size self.hidden_act = hidden_act self.hidden_dropout_prob = hidden_dropout_prob self.attention_probs_dropout_prob = attention_probs_dropout_prob self.max_position_embeddings = max_position_embeddings self.type_vocab_size = type_vocab_size self.initializer_range = initializer_range self.scope = scope def create_model(self): input_ids = BertModelTest.ids_tensor([self.batch_size, self.seq_length], self.vocab_size) input_mask = None if self.use_input_mask: input_mask = BertModelTest.ids_tensor( [self.batch_size, self.seq_length], vocab_size=2) token_type_ids = None if self.use_token_type_ids: token_type_ids = BertModelTest.ids_tensor( [self.batch_size, self.seq_length], self.type_vocab_size) config = modeling.BertConfig( vocab_size=self.vocab_size, hidden_size=self.hidden_size, num_hidden_layers=self.num_hidden_layers, num_attention_heads=self.num_attention_heads, intermediate_size=self.intermediate_size, hidden_act=self.hidden_act, hidden_dropout_prob=self.hidden_dropout_prob, attention_probs_dropout_prob=self.attention_probs_dropout_prob, max_position_embeddings=self.max_position_embeddings, type_vocab_size=self.type_vocab_size, initializer_range=self.initializer_range) model = modeling.BertModel( config=config, is_training=self.is_training, input_ids=input_ids, input_mask=input_mask, token_type_ids=token_type_ids, scope=self.scope) outputs = { "embedding_output": model.get_embedding_output(), "sequence_output": model.get_sequence_output(), "pooled_output": model.get_pooled_output(), "all_encoder_layers": model.get_all_encoder_layers(), } return outputs def check_output(self, result): self.parent.assertAllEqual( result["embedding_output"].shape, [self.batch_size, self.seq_length, self.hidden_size]) self.parent.assertAllEqual( result["sequence_output"].shape, [self.batch_size, self.seq_length, self.hidden_size]) self.parent.assertAllEqual(result["pooled_output"].shape, [self.batch_size, self.hidden_size]) def test_default(self): self.run_tester(BertModelTest.BertModelTester(self)) def test_config_to_json_string(self): config = modeling.BertConfig(vocab_size=99, hidden_size=37) obj = json.loads(config.to_json_string()) self.assertEqual(obj["vocab_size"], 99) self.assertEqual(obj["hidden_size"], 37) def run_tester(self, tester): with self.test_session() as sess: ops = tester.create_model() init_op = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer()) sess.run(init_op) output_result = sess.run(ops) tester.check_output(output_result) self.assert_all_tensors_reachable(sess, [init_op, ops]) @classmethod def ids_tensor(cls, shape, vocab_size, rng=None, name=None): """Creates a random int32 tensor of the shape within the vocab size.""" if rng is None: rng = random.Random() total_dims = 1 for dim in shape: total_dims *= dim values = [] for _ in range(total_dims): values.append(rng.randint(0, vocab_size - 1)) return tf.constant(value=values, dtype=tf.int32, shape=shape, name=name) def assert_all_tensors_reachable(self, sess, outputs): """Checks that all the tensors in the graph are reachable from outputs.""" graph = sess.graph ignore_strings = [ "^.*/dilation_rate$", "^.*/Tensordot/concat$", "^.*/Tensordot/concat/axis$", "^testing/.*$", ] ignore_regexes = [re.compile(x) for x in ignore_strings] unreachable = self.get_unreachable_ops(graph, outputs) filtered_unreachable = [] for x in unreachable: do_ignore = False for r in ignore_regexes: m = r.match(x.name) if m is not None: do_ignore = True if do_ignore: continue filtered_unreachable.append(x) unreachable = filtered_unreachable self.assertEqual( len(unreachable), 0, "The following ops are unreachable: %s" % (" ".join([x.name for x in unreachable]))) @classmethod def get_unreachable_ops(cls, graph, outputs): """Finds all of the tensors in graph that are unreachable from outputs.""" outputs = cls.flatten_recursive(outputs) output_to_op = collections.defaultdict(list) op_to_all = collections.defaultdict(list) assign_out_to_in = collections.defaultdict(list) for op in graph.get_operations(): for x in op.inputs: op_to_all[op.name].append(x.name) for y in op.outputs: output_to_op[y.name].append(op.name) op_to_all[op.name].append(y.name) if str(op.type) == "Assign": for y in op.outputs: for x in op.inputs: assign_out_to_in[y.name].append(x.name) assign_groups = collections.defaultdict(list) for out_name in assign_out_to_in.keys(): name_group = assign_out_to_in[out_name] for n1 in name_group: assign_groups[n1].append(out_name) for n2 in name_group: if n1 != n2: assign_groups[n1].append(n2) seen_tensors = {} stack = [x.name for x in outputs] while stack: name = stack.pop() if name in seen_tensors: continue seen_tensors[name] = True if name in output_to_op: for op_name in output_to_op[name]: if op_name in op_to_all: for input_name in op_to_all[op_name]: if input_name not in stack: stack.append(input_name) expanded_names = [] if name in assign_groups: for assign_name in assign_groups[name]: expanded_names.append(assign_name) for expanded_name in expanded_names: if expanded_name not in stack: stack.append(expanded_name) unreachable_ops = [] for op in graph.get_operations(): is_unreachable = False all_names = [x.name for x in op.inputs] + [x.name for x in op.outputs] for name in all_names: if name not in seen_tensors: is_unreachable = True if is_unreachable: unreachable_ops.append(op) return unreachable_ops @classmethod def flatten_recursive(cls, item): """Flattens (potentially nested) a tuple/dictionary/list to a list.""" output = [] if isinstance(item, list): output.extend(item) elif isinstance(item, tuple): output.extend(list(item)) elif isinstance(item, dict): for (_, v) in six.iteritems(item): output.append(v) else: return [item] flat_output = [] for x in output: flat_output.extend(cls.flatten_recursive(x)) return flat_output if __name__ == "__main__": tf.test.main() ================================================ FILE: third/bert/multilingual.md ================================================ ## Models There are two multilingual models currently available. We do not plan to release more single-language models, but we may release `BERT-Large` versions of these two in the future: * **[`BERT-Base, Multilingual`](https://storage.googleapis.com/bert_models/2018_11_03/multilingual_L-12_H-768_A-12.zip)**: 102 languages, 12-layer, 768-hidden, 12-heads, 110M parameters * **[`BERT-Base, Chinese`](https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip)**: Chinese Simplified and Traditional, 12-layer, 768-hidden, 12-heads, 110M parameters See the [list of languages](#list-of-languages) that the Multilingual model supports. The Multilingual model does include Chinese (and English), but if your fine-tuning data is Chinese-only, then the Chinese model will likely produce better results. ## Results To evaluate these systems, we use the [XNLI dataset](https://github.com/facebookresearch/XNLI) dataset, which is a version of [MultiNLI](https://www.nyu.edu/projects/bowman/multinli/) where the dev and test sets have been translated (by humans) into 15 languages. Note that the training set was *machine* translated (we used the translations provided by XNLI, not Google NMT). For clarity, we only report on 6 languages below: | System | English | Chinese | Spanish | German | Arabic | Urdu | | ------------------------------- | -------- | -------- | -------- | -------- | -------- | -------- | | XNLI Baseline - Translate Train | 73.7 | 67.0 | 68.8 | 66.5 | 65.8 | 56.6 | | XNLI Baseline - Translate Test | 73.7 | 68.3 | 70.7 | 68.7 | 66.8 | 59.3 | | BERT -Translate Train | **81.4** | **74.2** | **77.3** | **75.2** | **70.5** | 61.7 | | BERT - Translate Test | 81.4 | 70.1 | 74.9 | 74.4 | 70.4 | **62.1** | | BERT - Zero Shot | 81.4 | 63.8 | 74.3 | 70.5 | 62.1 | 58.3 | The first two rows are baselines from the XNLI paper and the last three rows are our results with BERT. **Translate Train** means that the MultiNLI training set was machine translated from English into the foreign language. So training and evaluation were both done in the foreign language. Unfortunately, training was done on machine-translated data, so it is impossible to quantify how much of the lower accuracy (compared to English) is due to the quality of the machine translation vs. the quality of the pre-trained model. **Translate Test** means that the XNLI test set was machine translated from the foreign language into English. So training and evaluation were both done on English. However, test evaluation was done on machine-translated English, so the accuracy depends on the quality of the machine translation system. **Zero Shot** means that the Multilingual BERT system was fine-tuned on English MultiNLI, and then evaluated on the foreign language XNLI test. In this case, machine translation was not involved at all in either the pre-training or fine-tuning. Note that the English result is worse than the 84.2 MultiNLI baseline because this training used Multilingual BERT rather than English-only BERT. This implies that for high-resource languages, the Multilingual model is somewhat worse than a single-language model. However, it is not feasible for us to train and maintain dozens of single-language model. Therefore, if your goal is to maximize performance with a language other than English or Chinese, you might find it beneficial to run pre-training for additional steps starting from our Multilingual model on data from your language of interest. Here is a comparison of training Chinese models with the Multilingual `BERT-Base` and Chinese-only `BERT-Base`: System | Chinese ----------------------- | ------- XNLI Baseline | 67.0 BERT Multilingual Model | 74.2 BERT Chinese-only Model | 77.2 Similar to English, the single-language model does 3% better than the Multilingual model. ## Fine-tuning Example The multilingual model does **not** require any special consideration or API changes. We did update the implementation of `BasicTokenizer` in `tokenization.py` to support Chinese character tokenization, so please update if you forked it. However, we did not change the tokenization API. To test the new models, we did modify `run_classifier.py` to add support for the [XNLI dataset](https://github.com/facebookresearch/XNLI). This is a 15-language version of MultiNLI where the dev/test sets have been human-translated, and the training set has been machine-translated. To run the fine-tuning code, please download the [XNLI dev/test set](https://s3.amazonaws.com/xnli/XNLI-1.0.zip) and the [XNLI machine-translated training set](https://s3.amazonaws.com/xnli/XNLI-MT-1.0.zip) and then unpack both .zip files into some directory `$XNLI_DIR`. To run fine-tuning on XNLI. The language is hard-coded into `run_classifier.py` (Chinese by default), so please modify `XnliProcessor` if you want to run on another language. This is a large dataset, so this will training will take a few hours on a GPU (or about 30 minutes on a Cloud TPU). To run an experiment quickly for debugging, just set `num_train_epochs` to a small value like `0.1`. ```shell export BERT_BASE_DIR=/path/to/bert/chinese_L-12_H-768_A-12 # or multilingual_L-12_H-768_A-12 export XNLI_DIR=/path/to/xnli python run_classifier.py \ --task_name=XNLI \ --do_train=true \ --do_eval=true \ --data_dir=$XNLI_DIR \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \ --max_seq_length=128 \ --train_batch_size=32 \ --learning_rate=5e-5 \ --num_train_epochs=2.0 \ --output_dir=/tmp/xnli_output/ ``` With the Chinese-only model, the results should look something like this: ``` ***** Eval results ***** eval_accuracy = 0.774116 eval_loss = 0.83554 global_step = 24543 loss = 0.74603 ``` ## Details ### Data Source and Sampling The languages chosen were the [top 100 languages with the largest Wikipedias](https://meta.wikimedia.org/wiki/List_of_Wikipedias). The entire Wikipedia dump for each language (excluding user and talk pages) was taken as the training data for each language However, the size of the Wikipedia for a given language varies greatly, and therefore low-resource languages may be "under-represented" in terms of the neural network model (under the assumption that languages are "competing" for limited model capacity to some extent). However, the size of a Wikipedia also correlates with the number of speakers of a language, and we also don't want to overfit the model by performing thousands of epochs over a tiny Wikipedia for a particular language. To balance these two factors, we performed exponentially smoothed weighting of the data during pre-training data creation (and WordPiece vocab creation). In other words, let's say that the probability of a language is *P(L)*, e.g., *P(English) = 0.21* means that after concatenating all of the Wikipedias together, 21% of our data is English. We exponentiate each probability by some factor *S* and then re-normalize, and sample from that distribution. In our case we use *S=0.7*. So, high-resource languages like English will be under-sampled, and low-resource languages like Icelandic will be over-sampled. E.g., in the original distribution English would be sampled 1000x more than Icelandic, but after smoothing it's only sampled 100x more. ### Tokenization For tokenization, we use a 110k shared WordPiece vocabulary. The word counts are weighted the same way as the data, so low-resource languages are upweighted by some factor. We intentionally do *not* use any marker to denote the input language (so that zero-shot training can work). Because Chinese does not have whitespace characters, we add spaces around every character in the [CJK Unicode range](https://en.wikipedia.org/wiki/CJK_Unified_Ideographs_\(Unicode_block\)) before applying WordPiece. This means that Chinese is effectively character-tokenized. Note that the CJK Unicode block only includes Chinese-origin characters and does *not* include Hangul Korean or Katakana/Hiragana Japanese, which are tokenized with whitespace+WordPiece like all other languages. For all other languages, we apply the [same recipe as English](https://github.com/google-research/bert#tokenization): (a) lower casing+accent removal, (b) punctuation splitting, (c) whitespace tokenization. We understand that accent markers have substantial meaning in some languages, but felt that the benefits of reducing the effective vocabulary make up for this. Generally the strong contextual models of BERT should make up for any ambiguity introduced by stripping accent markers. ### List of Languages The multilingual model supports the following languages. These languages were chosen because they are the top 100 languages with the largest Wikipedias: * Afrikaans * Albanian * Arabic * Aragonese * Armenian * Asturian * Azerbaijani * Bashkir * Basque * Bavarian * Belarusian * Bengali * Bishnupriya Manipuri * Bosnian * Breton * Bulgarian * Burmese * Catalan * Cebuano * Chechen * Chinese (Simplified) * Chinese (Traditional) * Chuvash * Croatian * Czech * Danish * Dutch * English * Estonian * Finnish * French * Galician * Georgian * German * Greek * Gujarati * Haitian * Hebrew * Hindi * Hungarian * Icelandic * Ido * Indonesian * Irish * Italian * Japanese * Javanese * Kannada * Kazakh * Kirghiz * Korean * Latin * Latvian * Lithuanian * Lombard * Low Saxon * Luxembourgish * Macedonian * Malagasy * Malay * Malayalam * Marathi * Minangkabau * Nepali * Newar * Norwegian (Bokmal) * Norwegian (Nynorsk) * Occitan * Persian (Farsi) * Piedmontese * Polish * Portuguese * Punjabi * Romanian * Russian * Scots * Serbian * Serbo-Croatian * Sicilian * Slovak * Slovenian * South Azerbaijani * Spanish * Sundanese * Swahili * Swedish * Tagalog * Tajik * Tamil * Tatar * Telugu * Turkish * Ukrainian * Urdu * Uzbek * Vietnamese * Volapük * Waray-Waray * Welsh * West * Western Punjabi * Yoruba The only language which we had to unfortunately exclude was Thai, since it is the only language (other than Chinese) that does not use whitespace to delimit words, and it has too many characters-per-word to use character-based tokenization. Our WordPiece algorithm is quadratic with respect to the size of the input token so very long character strings do not work with it. ================================================ FILE: third/bert/optimization.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Functions and classes related to optimization (weight updates).""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import re import tensorflow as tf def create_optimizer(loss, init_lr, num_train_steps, num_warmup_steps, min_learning_rate=0., use_tpu=False): """Creates an optimizer training op.""" global_step = tf.train.get_or_create_global_step() learning_rate = tf.constant(value=init_lr, shape=[], dtype=tf.float32) # Implements linear decay of the learning rate. learning_rate = tf.train.polynomial_decay( learning_rate, global_step, num_train_steps, end_learning_rate=min_learning_rate, power=1.0, cycle=False) min_learning_rate = tf.convert_to_tensor(min_learning_rate, dtype=tf.float32) learning_rate = tf.cond(learning_rate > min_learning_rate, lambda: learning_rate, lambda: min_learning_rate) # Implements linear warmup. I.e., if global_step < num_warmup_steps, the # learning rate will be `global_step/num_warmup_steps * init_lr`. if num_warmup_steps: global_steps_int = tf.cast(global_step, tf.int32) warmup_steps_int = tf.constant(num_warmup_steps, dtype=tf.int32) global_steps_float = tf.cast(global_steps_int, tf.float32) warmup_steps_float = tf.cast(warmup_steps_int, tf.float32) warmup_percent_done = global_steps_float / warmup_steps_float warmup_learning_rate = init_lr * warmup_percent_done is_warmup = tf.cast(global_steps_int < warmup_steps_int, tf.float32) learning_rate = ( (1.0 - is_warmup) * learning_rate + is_warmup * warmup_learning_rate) # chg modify tf.add_to_collection('bert_learning_rate', learning_rate) # It is recommended that you use this optimizer for fine tuning, since this # is how the model was trained (note that the Adam m/v variables are NOT # loaded from init_checkpoint.) optimizer = AdamWeightDecayOptimizer( learning_rate=learning_rate, weight_decay_rate=0.01, beta_1=0.9, beta_2=0.999, epsilon=1e-6, exclude_from_weight_decay=["LayerNorm", "layer_norm", "bias"]) if use_tpu: optimizer = tf.contrib.tpu.CrossShardOptimizer(optimizer) tvars = tf.trainable_variables() grads = tf.gradients(loss, tvars) # This is how the model was pre-trained. (grads, _) = tf.clip_by_global_norm(grads, clip_norm=1.0) train_op = optimizer.apply_gradients( zip(grads, tvars), global_step=global_step) new_global_step = global_step + 1 train_op = tf.group(train_op, [global_step.assign(new_global_step)]) return train_op class AdamWeightDecayOptimizer(tf.train.Optimizer): """A basic Adam optimizer that includes "correct" L2 weight decay.""" def __init__(self, learning_rate, weight_decay_rate=0.0, beta_1=0.9, beta_2=0.999, epsilon=1e-6, exclude_from_weight_decay=None, name="AdamWeightDecayOptimizer"): """Constructs a AdamWeightDecayOptimizer.""" super(AdamWeightDecayOptimizer, self).__init__(False, name) self.learning_rate = learning_rate self.weight_decay_rate = weight_decay_rate self.beta_1 = beta_1 self.beta_2 = beta_2 self.epsilon = epsilon self.exclude_from_weight_decay = exclude_from_weight_decay def apply_gradients(self, grads_and_vars, global_step=None, name=None): """See base class.""" assignments = [] for (grad, param) in grads_and_vars: if grad is None or param is None: continue param_name = self._get_variable_name(param.name) m = tf.get_variable( name=param_name + "/adam_m", shape=param.shape.as_list(), dtype=tf.float32, trainable=False, initializer=tf.zeros_initializer()) v = tf.get_variable( name=param_name + "/adam_v", shape=param.shape.as_list(), dtype=tf.float32, trainable=False, initializer=tf.zeros_initializer()) # Standard Adam update. next_m = ( tf.multiply(self.beta_1, m) + tf.multiply(1.0 - self.beta_1, grad)) next_v = ( tf.multiply(self.beta_2, v) + tf.multiply(1.0 - self.beta_2, tf.square(grad))) update = next_m / (tf.sqrt(next_v) + self.epsilon) # Just adding the square of the weights to the loss function is *not* # the correct way of using L2 regularization/weight decay with Adam, # since that will interact with the m and v parameters in strange ways. # # Instead we want ot decay the weights in a manner that doesn't interact # with the m/v parameters. This is equivalent to adding the square # of the weights to the loss with plain (non-momentum) SGD. if self._do_use_weight_decay(param_name): update += self.weight_decay_rate * param update_with_lr = self.learning_rate * update next_param = param - update_with_lr assignments.extend( [param.assign(next_param), m.assign(next_m), v.assign(next_v)]) return tf.group(*assignments, name=name) def _do_use_weight_decay(self, param_name): """Whether to use L2 weight decay for `param_name`.""" if not self.weight_decay_rate: return False if self.exclude_from_weight_decay: for r in self.exclude_from_weight_decay: if re.search(r, param_name) is not None: return False return True def _get_variable_name(self, param_name): """Get the variable name from the tensor name.""" m = re.match("^(.*):\\d+$", param_name) if m is not None: param_name = m.group(1) return param_name ================================================ FILE: third/bert/optimization_test.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from __future__ import absolute_import from __future__ import division from __future__ import print_function import optimization import tensorflow as tf class OptimizationTest(tf.test.TestCase): def test_adam(self): with self.test_session() as sess: w = tf.get_variable( "w", shape=[3], initializer=tf.constant_initializer([0.1, -0.2, -0.1])) x = tf.constant([0.4, 0.2, -0.5]) loss = tf.reduce_mean(tf.square(x - w)) tvars = tf.trainable_variables() grads = tf.gradients(loss, tvars) global_step = tf.train.get_or_create_global_step() optimizer = optimization.AdamWeightDecayOptimizer(learning_rate=0.2) train_op = optimizer.apply_gradients(zip(grads, tvars), global_step) init_op = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer()) sess.run(init_op) for _ in range(100): sess.run(train_op) w_np = sess.run(w) self.assertAllClose(w_np.flat, [0.4, 0.2, -0.5], rtol=1e-2, atol=1e-2) if __name__ == "__main__": tf.test.main() ================================================ FILE: third/bert/run-char.sh ================================================ BERT_BASE_DIR=/home/gezi/data/word-emb/chinese_L-12_H-768_A-12 python /home/gezi/mine/wenzheng/third/bert/create_pretraining_data.py \ --input_file=/home/gezi/data/my-embedding/bert-char/text.bert.small \ --output_file=/home/gezi/data/my-embedding/bert-char/tfrecord \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --do_lower_case=True \ --max_seq_length=128 \ --max_predictions_per_seq=20 \ --masked_lm_prob=0.15 \ --random_seed=12345 \ --dupe_factor=5 ================================================ FILE: third/bert/run_classifier.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """BERT finetuning runner.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import csv import os import modeling import optimization import tokenization import tensorflow as tf flags = tf.flags FLAGS = flags.FLAGS ## Required parameters flags.DEFINE_string( "data_dir", None, "The input data dir. Should contain the .tsv files (or other data files) " "for the task.") flags.DEFINE_string( "bert_config_file", None, "The config json file corresponding to the pre-trained BERT model. " "This specifies the model architecture.") flags.DEFINE_string("task_name", None, "The name of the task to train.") flags.DEFINE_string("vocab_file", None, "The vocabulary file that the BERT model was trained on.") flags.DEFINE_string( "output_dir", None, "The output directory where the model checkpoints will be written.") ## Other parameters flags.DEFINE_string( "init_checkpoint", None, "Initial checkpoint (usually from a pre-trained BERT model).") flags.DEFINE_bool( "do_lower_case", True, "Whether to lower case the input text. Should be True for uncased " "models and False for cased models.") flags.DEFINE_integer( "max_seq_length", 128, "The maximum total input sequence length after WordPiece tokenization. " "Sequences longer than this will be truncated, and sequences shorter " "than this will be padded.") flags.DEFINE_bool("do_train", False, "Whether to run training.") flags.DEFINE_bool("do_eval", False, "Whether to run eval on the dev set.") flags.DEFINE_integer("train_batch_size", 32, "Total batch size for training.") flags.DEFINE_integer("eval_batch_size", 8, "Total batch size for eval.") flags.DEFINE_float("learning_rate", 5e-5, "The initial learning rate for Adam.") flags.DEFINE_float("num_train_epochs", 3.0, "Total number of training epochs to perform.") flags.DEFINE_float( "warmup_proportion", 0.1, "Proportion of training to perform linear learning rate warmup for. " "E.g., 0.1 = 10% of training.") flags.DEFINE_integer("save_checkpoints_steps", 1000, "How often to save the model checkpoint.") flags.DEFINE_integer("iterations_per_loop", 1000, "How many steps to make in each estimator call.") flags.DEFINE_bool("use_tpu", False, "Whether to use TPU or GPU/CPU.") tf.flags.DEFINE_string( "tpu_name", None, "The Cloud TPU to use for training. This should be either the name " "used when creating the Cloud TPU, or a grpc://ip.address.of.tpu:8470 " "url.") tf.flags.DEFINE_string( "tpu_zone", None, "[Optional] GCE zone where the Cloud TPU is located in. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string( "gcp_project", None, "[Optional] Project name for the Cloud TPU-enabled project. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string("master", None, "[Optional] TensorFlow master URL.") flags.DEFINE_integer( "num_tpu_cores", 8, "Only used if `use_tpu` is True. Total number of TPU cores to use.") class InputExample(object): """A single training/test example for simple sequence classification.""" def __init__(self, guid, text_a, text_b=None, label=None): """Constructs a InputExample. Args: guid: Unique id for the example. text_a: string. The untokenized text of the first sequence. For single sequence tasks, only this sequence must be specified. text_b: (Optional) string. The untokenized text of the second sequence. Only must be specified for sequence pair tasks. label: (Optional) string. The label of the example. This should be specified for train and dev examples, but not for test examples. """ self.guid = guid self.text_a = text_a self.text_b = text_b self.label = label class InputFeatures(object): """A single set of features of data.""" def __init__(self, input_ids, input_mask, segment_ids, label_id): self.input_ids = input_ids self.input_mask = input_mask self.segment_ids = segment_ids self.label_id = label_id class DataProcessor(object): """Base class for data converters for sequence classification data sets.""" def get_train_examples(self, data_dir): """Gets a collection of `InputExample`s for the train set.""" raise NotImplementedError() def get_dev_examples(self, data_dir): """Gets a collection of `InputExample`s for the dev set.""" raise NotImplementedError() def get_labels(self): """Gets the list of labels for this data set.""" raise NotImplementedError() @classmethod def _read_tsv(cls, input_file, quotechar=None): """Reads a tab separated value file.""" with tf.gfile.Open(input_file, "r") as f: reader = csv.reader(f, delimiter="\t", quotechar=quotechar) lines = [] for line in reader: lines.append(line) return lines class XnliProcessor(DataProcessor): """Processor for the XNLI data set.""" def __init__(self): self.language = "zh" def get_train_examples(self, data_dir): """See base class.""" lines = self._read_tsv( os.path.join(data_dir, "multinli", "multinli.train.%s.tsv" % self.language)) examples = [] for (i, line) in enumerate(lines): if i == 0: continue guid = "train-%d" % (i) text_a = tokenization.convert_to_unicode(line[0]) text_b = tokenization.convert_to_unicode(line[1]) label = tokenization.convert_to_unicode(line[2]) if label == tokenization.convert_to_unicode("contradictory"): label = tokenization.convert_to_unicode("contradiction") examples.append( InputExample(guid=guid, text_a=text_a, text_b=text_b, label=label)) return examples def get_dev_examples(self, data_dir): """See base class.""" lines = self._read_tsv(os.path.join(data_dir, "xnli.dev.tsv")) examples = [] for (i, line) in enumerate(lines): if i == 0: continue guid = "dev-%d" % (i) language = tokenization.convert_to_unicode(line[0]) if language != tokenization.convert_to_unicode(self.language): continue text_a = tokenization.convert_to_unicode(line[6]) text_b = tokenization.convert_to_unicode(line[7]) label = tokenization.convert_to_unicode(line[1]) examples.append( InputExample(guid=guid, text_a=text_a, text_b=text_b, label=label)) return examples def get_labels(self): """See base class.""" return ["contradiction", "entailment", "neutral"] class MnliProcessor(DataProcessor): """Processor for the MultiNLI data set (GLUE version).""" def get_train_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "train.tsv")), "train") def get_dev_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "dev_matched.tsv")), "dev_matched") def get_labels(self): """See base class.""" return ["contradiction", "entailment", "neutral"] def _create_examples(self, lines, set_type): """Creates examples for the training and dev sets.""" examples = [] for (i, line) in enumerate(lines): if i == 0: continue guid = "%s-%s" % (set_type, tokenization.convert_to_unicode(line[0])) text_a = tokenization.convert_to_unicode(line[8]) text_b = tokenization.convert_to_unicode(line[9]) label = tokenization.convert_to_unicode(line[-1]) examples.append( InputExample(guid=guid, text_a=text_a, text_b=text_b, label=label)) return examples class MrpcProcessor(DataProcessor): """Processor for the MRPC data set (GLUE version).""" def get_train_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "train.tsv")), "train") def get_dev_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "dev.tsv")), "dev") def get_labels(self): """See base class.""" return ["0", "1"] def _create_examples(self, lines, set_type): """Creates examples for the training and dev sets.""" examples = [] for (i, line) in enumerate(lines): if i == 0: continue guid = "%s-%s" % (set_type, i) text_a = tokenization.convert_to_unicode(line[3]) text_b = tokenization.convert_to_unicode(line[4]) label = tokenization.convert_to_unicode(line[0]) examples.append( InputExample(guid=guid, text_a=text_a, text_b=text_b, label=label)) return examples class ColaProcessor(DataProcessor): """Processor for the CoLA data set (GLUE version).""" def get_train_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "train.tsv")), "train") def get_dev_examples(self, data_dir): """See base class.""" return self._create_examples( self._read_tsv(os.path.join(data_dir, "dev.tsv")), "dev") def get_labels(self): """See base class.""" return ["0", "1"] def _create_examples(self, lines, set_type): """Creates examples for the training and dev sets.""" examples = [] for (i, line) in enumerate(lines): guid = "%s-%s" % (set_type, i) text_a = tokenization.convert_to_unicode(line[3]) label = tokenization.convert_to_unicode(line[1]) examples.append( InputExample(guid=guid, text_a=text_a, text_b=None, label=label)) return examples def convert_examples_to_features(examples, label_list, max_seq_length, tokenizer, output_file): """Loads a data file into a list of `InputBatch`s.""" label_map = {} for (i, label) in enumerate(label_list): label_map[label] = i writer = tf.python_io.TFRecordWriter(output_file) for (ex_index, example) in enumerate(examples): tokens_a = tokenizer.tokenize(example.text_a) if ex_index % 10000 == 0: tf.logging.info("Writing example %d of %d" % (ex_index, len(examples))) tokens_b = None if example.text_b: tokens_b = tokenizer.tokenize(example.text_b) if tokens_b: # Modifies `tokens_a` and `tokens_b` in place so that the total # length is less than the specified length. # Account for [CLS], [SEP], [SEP] with "- 3" _truncate_seq_pair(tokens_a, tokens_b, max_seq_length - 3) else: # Account for [CLS] and [SEP] with "- 2" if len(tokens_a) > max_seq_length - 2: tokens_a = tokens_a[0:(max_seq_length - 2)] # The convention in BERT is: # (a) For sequence pairs: # tokens: [CLS] is this jack ##son ##ville ? [SEP] no it is not . [SEP] # type_ids: 0 0 0 0 0 0 0 0 1 1 1 1 1 1 # (b) For single sequences: # tokens: [CLS] the dog is hairy . [SEP] # type_ids: 0 0 0 0 0 0 0 # # Where "type_ids" are used to indicate whether this is the first # sequence or the second sequence. The embedding vectors for `type=0` and # `type=1` were learned during pre-training and are added to the wordpiece # embedding vector (and position vector). This is not *strictly* necessary # since the [SEP] token unambiguously separates the sequences, but it makes # it easier for the model to learn the concept of sequences. # # For classification tasks, the first vector (corresponding to [CLS]) is # used as as the "sentence vector". Note that this only makes sense because # the entire model is fine-tuned. tokens = [] segment_ids = [] tokens.append("[CLS]") segment_ids.append(0) for token in tokens_a: tokens.append(token) segment_ids.append(0) tokens.append("[SEP]") segment_ids.append(0) if tokens_b: for token in tokens_b: tokens.append(token) segment_ids.append(1) tokens.append("[SEP]") segment_ids.append(1) input_ids = tokenizer.convert_tokens_to_ids(tokens) # The mask has 1 for real tokens and 0 for padding tokens. Only real # tokens are attended to. input_mask = [1] * len(input_ids) # Zero-pad up to the sequence length. while len(input_ids) < max_seq_length: input_ids.append(0) input_mask.append(0) segment_ids.append(0) assert len(input_ids) == max_seq_length assert len(input_mask) == max_seq_length assert len(segment_ids) == max_seq_length label_id = label_map[example.label] if ex_index < 5: tf.logging.info("*** Example ***") tf.logging.info("guid: %s" % (example.guid)) tf.logging.info("tokens: %s" % " ".join( [tokenization.printable_text(x) for x in tokens])) tf.logging.info("input_ids: %s" % " ".join([str(x) for x in input_ids])) tf.logging.info("input_mask: %s" % " ".join([str(x) for x in input_mask])) tf.logging.info( "segment_ids: %s" % " ".join([str(x) for x in segment_ids])) tf.logging.info("label: %s (id = %d)" % (example.label, label_id)) def create_int_feature(values): feature = tf.train.Feature( int64_list=tf.train.Int64List(value=list(values))) return feature features = collections.OrderedDict() features["input_ids"] = create_int_feature(input_ids) features["input_mask"] = create_int_feature(input_mask) features["segment_ids"] = create_int_feature(segment_ids) features["label_ids"] = create_int_feature([label_id]) tf_example = tf.train.Example(features=tf.train.Features(feature=features)) writer.write(tf_example.SerializeToString()) def _truncate_seq_pair(tokens_a, tokens_b, max_length): """Truncates a sequence pair in place to the maximum length.""" # This is a simple heuristic which will always truncate the longer sequence # one token at a time. This makes more sense than truncating an equal percent # of tokens from each, since if one sequence is very short then each token # that's truncated likely contains more information than a longer sequence. while True: total_length = len(tokens_a) + len(tokens_b) if total_length <= max_length: break if len(tokens_a) > len(tokens_b): tokens_a.pop() else: tokens_b.pop() def create_model(bert_config, is_training, input_ids, input_mask, segment_ids, labels, num_labels, use_one_hot_embeddings): """Creates a classification model.""" model = modeling.BertModel( config=bert_config, is_training=is_training, input_ids=input_ids, input_mask=input_mask, token_type_ids=segment_ids, use_one_hot_embeddings=use_one_hot_embeddings) # In the demo, we are doing a simple classification task on the entire # segment. # # If you want to use the token-level output, use model.get_sequence_output() # instead. output_layer = model.get_pooled_output() hidden_size = output_layer.shape[-1].value output_weights = tf.get_variable( "output_weights", [num_labels, hidden_size], initializer=tf.truncated_normal_initializer(stddev=0.02)) output_bias = tf.get_variable( "output_bias", [num_labels], initializer=tf.zeros_initializer()) with tf.variable_scope("loss"): if is_training: # I.e., 0.1 dropout output_layer = tf.nn.dropout(output_layer, keep_prob=0.9) logits = tf.matmul(output_layer, output_weights, transpose_b=True) logits = tf.nn.bias_add(logits, output_bias) log_probs = tf.nn.log_softmax(logits, axis=-1) one_hot_labels = tf.one_hot(labels, depth=num_labels, dtype=tf.float32) per_example_loss = -tf.reduce_sum(one_hot_labels * log_probs, axis=-1) loss = tf.reduce_mean(per_example_loss) return (loss, per_example_loss, logits) def model_fn_builder(bert_config, num_labels, init_checkpoint, learning_rate, num_train_steps, num_warmup_steps, use_tpu, use_one_hot_embeddings): """Returns `model_fn` closure for TPUEstimator.""" def model_fn(features, labels, mode, params): # pylint: disable=unused-argument """The `model_fn` for TPUEstimator.""" tf.logging.info("*** Features ***") for name in sorted(features.keys()): tf.logging.info(" name = %s, shape = %s" % (name, features[name].shape)) input_ids = features["input_ids"] input_mask = features["input_mask"] segment_ids = features["segment_ids"] label_ids = features["label_ids"] is_training = (mode == tf.estimator.ModeKeys.TRAIN) (total_loss, per_example_loss, logits) = create_model( bert_config, is_training, input_ids, input_mask, segment_ids, label_ids, num_labels, use_one_hot_embeddings) tvars = tf.trainable_variables() scaffold_fn = None if init_checkpoint: (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, init_checkpoint) if use_tpu: def tpu_scaffold(): tf.train.init_from_checkpoint(init_checkpoint, assignment_map) return tf.train.Scaffold() scaffold_fn = tpu_scaffold else: tf.train.init_from_checkpoint(init_checkpoint, assignment_map) tf.logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" tf.logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) output_spec = None if mode == tf.estimator.ModeKeys.TRAIN: train_op = optimization.create_optimizer( total_loss, learning_rate, num_train_steps, num_warmup_steps, use_tpu) output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=total_loss, train_op=train_op, scaffold_fn=scaffold_fn) elif mode == tf.estimator.ModeKeys.EVAL: def metric_fn(per_example_loss, label_ids, logits): predictions = tf.argmax(logits, axis=-1, output_type=tf.int32) accuracy = tf.metrics.accuracy(label_ids, predictions) loss = tf.metrics.mean(per_example_loss) return { "eval_accuracy": accuracy, "eval_loss": loss, } eval_metrics = (metric_fn, [per_example_loss, label_ids, logits]) output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=total_loss, eval_metrics=eval_metrics, scaffold_fn=scaffold_fn) else: raise ValueError("Only TRAIN and EVAL modes are supported: %s" % (mode)) return output_spec return model_fn def input_fn_builder(input_file, seq_length, is_training, drop_remainder): """Creates an `input_fn` closure to be passed to TPUEstimator.""" name_to_features = { "input_ids": tf.FixedLenFeature([seq_length], tf.int64), "input_mask": tf.FixedLenFeature([seq_length], tf.int64), "segment_ids": tf.FixedLenFeature([seq_length], tf.int64), "label_ids": tf.FixedLenFeature([], tf.int64), } def _decode_record(record, name_to_features): """Decodes a record to a TensorFlow example.""" example = tf.parse_single_example(record, name_to_features) # tf.Example only supports tf.int64, but the TPU only supports tf.int32. # So cast all int64 to int32. for name in list(example.keys()): t = example[name] if t.dtype == tf.int64: t = tf.to_int32(t) example[name] = t return example def input_fn(params): """The actual input function.""" batch_size = params["batch_size"] # For training, we want a lot of parallel reading and shuffling. # For eval, we want no shuffling and parallel reading doesn't matter. d = tf.data.TFRecordDataset(input_file) if is_training: d = d.repeat() d = d.shuffle(buffer_size=100) d = d.apply( tf.contrib.data.map_and_batch( lambda record: _decode_record(record, name_to_features), batch_size=batch_size, drop_remainder=drop_remainder)) return d return input_fn def main(_): tf.logging.set_verbosity(tf.logging.INFO) processors = { "cola": ColaProcessor, "mnli": MnliProcessor, "mrpc": MrpcProcessor, "xnli": XnliProcessor, } if not FLAGS.do_train and not FLAGS.do_eval: raise ValueError("At least one of `do_train` or `do_eval` must be True.") bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) if FLAGS.max_seq_length > bert_config.max_position_embeddings: raise ValueError( "Cannot use sequence length %d because the BERT model " "was only trained up to sequence length %d" % (FLAGS.max_seq_length, bert_config.max_position_embeddings)) tf.gfile.MakeDirs(FLAGS.output_dir) task_name = FLAGS.task_name.lower() if task_name not in processors: raise ValueError("Task not found: %s" % (task_name)) processor = processors[task_name]() label_list = processor.get_labels() tokenizer = tokenization.FullTokenizer( vocab_file=FLAGS.vocab_file, do_lower_case=FLAGS.do_lower_case) tpu_cluster_resolver = None if FLAGS.use_tpu and FLAGS.tpu_name: tpu_cluster_resolver = tf.contrib.cluster_resolver.TPUClusterResolver( FLAGS.tpu_name, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project) is_per_host = tf.contrib.tpu.InputPipelineConfig.PER_HOST_V2 run_config = tf.contrib.tpu.RunConfig( cluster=tpu_cluster_resolver, master=FLAGS.master, model_dir=FLAGS.output_dir, save_checkpoints_steps=FLAGS.save_checkpoints_steps, tpu_config=tf.contrib.tpu.TPUConfig( iterations_per_loop=FLAGS.iterations_per_loop, num_shards=FLAGS.num_tpu_cores, per_host_input_for_training=is_per_host)) train_examples = None num_train_steps = None num_warmup_steps = None if FLAGS.do_train: train_examples = processor.get_train_examples(FLAGS.data_dir) num_train_steps = int( len(train_examples) / FLAGS.train_batch_size * FLAGS.num_train_epochs) num_warmup_steps = int(num_train_steps * FLAGS.warmup_proportion) model_fn = model_fn_builder( bert_config=bert_config, num_labels=len(label_list), init_checkpoint=FLAGS.init_checkpoint, learning_rate=FLAGS.learning_rate, num_train_steps=num_train_steps, num_warmup_steps=num_warmup_steps, use_tpu=FLAGS.use_tpu, use_one_hot_embeddings=FLAGS.use_tpu) # If TPU is not available, this will fall back to normal Estimator on CPU # or GPU. estimator = tf.contrib.tpu.TPUEstimator( use_tpu=FLAGS.use_tpu, model_fn=model_fn, config=run_config, train_batch_size=FLAGS.train_batch_size, eval_batch_size=FLAGS.eval_batch_size) if FLAGS.do_train: train_file = os.path.join(FLAGS.output_dir, "train.tf_record") convert_examples_to_features(train_examples, label_list, FLAGS.max_seq_length, tokenizer, train_file) tf.logging.info("***** Running training *****") tf.logging.info(" Num examples = %d", len(train_examples)) tf.logging.info(" Batch size = %d", FLAGS.train_batch_size) tf.logging.info(" Num steps = %d", num_train_steps) train_input_fn = input_fn_builder( input_file=train_file, seq_length=FLAGS.max_seq_length, is_training=True, drop_remainder=True) estimator.train(input_fn=train_input_fn, max_steps=num_train_steps) if FLAGS.do_eval: eval_examples = processor.get_dev_examples(FLAGS.data_dir) eval_file = os.path.join(FLAGS.output_dir, "eval.tf_record") convert_examples_to_features(eval_examples, label_list, FLAGS.max_seq_length, tokenizer, eval_file) tf.logging.info("***** Running evaluation *****") tf.logging.info(" Num examples = %d", len(eval_examples)) tf.logging.info(" Batch size = %d", FLAGS.eval_batch_size) # This tells the estimator to run through the entire set. eval_steps = None # However, if running eval on the TPU, you will need to specify the # number of steps. if FLAGS.use_tpu: # Eval will be slightly WRONG on the TPU because it will truncate # the last batch. eval_steps = int(len(eval_examples) / FLAGS.eval_batch_size) eval_drop_remainder = True if FLAGS.use_tpu else False eval_input_fn = input_fn_builder( input_file=eval_file, seq_length=FLAGS.max_seq_length, is_training=False, drop_remainder=eval_drop_remainder) result = estimator.evaluate(input_fn=eval_input_fn, steps=eval_steps) output_eval_file = os.path.join(FLAGS.output_dir, "eval_results.txt") with tf.gfile.GFile(output_eval_file, "w") as writer: tf.logging.info("***** Eval results *****") for key in sorted(result.keys()): tf.logging.info(" %s = %s", key, str(result[key])) writer.write("%s = %s\n" % (key, str(result[key]))) if __name__ == "__main__": flags.mark_flag_as_required("data_dir") flags.mark_flag_as_required("task_name") flags.mark_flag_as_required("vocab_file") flags.mark_flag_as_required("bert_config_file") flags.mark_flag_as_required("output_dir") tf.app.run() ================================================ FILE: third/bert/run_pretraining.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Run masked LM/next sentence masked_lm pre-training for BERT.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import modeling import optimization import tensorflow as tf flags = tf.flags FLAGS = flags.FLAGS ## Required parameters flags.DEFINE_string( "bert_config_file", None, "The config json file corresponding to the pre-trained BERT model. " "This specifies the model architecture.") flags.DEFINE_string( "input_file", None, "Input TF example files (can be a glob or comma separated).") flags.DEFINE_string( "output_dir", None, "The output directory where the model checkpoints will be written.") ## Other parameters flags.DEFINE_string( "init_checkpoint", None, "Initial checkpoint (usually from a pre-trained BERT model).") flags.DEFINE_integer( "max_seq_length", 128, "The maximum total input sequence length after WordPiece tokenization. " "Sequences longer than this will be truncated, and sequences shorter " "than this will be padded. Must match data generation.") flags.DEFINE_integer( "max_predictions_per_seq", 20, "Maximum number of masked LM predictions per sequence. " "Must match data generation.") flags.DEFINE_bool("do_train", False, "Whether to run training.") flags.DEFINE_bool("do_eval", False, "Whether to run eval on the dev set.") flags.DEFINE_integer("train_batch_size", 32, "Total batch size for training.") flags.DEFINE_integer("eval_batch_size", 8, "Total batch size for eval.") flags.DEFINE_float("learning_rate", 5e-5, "The initial learning rate for Adam.") flags.DEFINE_integer("num_train_steps", 100000, "Number of training steps.") flags.DEFINE_integer("num_warmup_steps", 10000, "Number of warmup steps.") flags.DEFINE_integer("save_checkpoints_steps", 1000, "How often to save the model checkpoint.") flags.DEFINE_integer("iterations_per_loop", 1000, "How many steps to make in each estimator call.") flags.DEFINE_integer("max_eval_steps", 100, "Maximum number of eval steps.") flags.DEFINE_bool("use_tpu", False, "Whether to use TPU or GPU/CPU.") tf.flags.DEFINE_string( "tpu_name", None, "The Cloud TPU to use for training. This should be either the name " "used when creating the Cloud TPU, or a grpc://ip.address.of.tpu:8470 " "url.") tf.flags.DEFINE_string( "tpu_zone", None, "[Optional] GCE zone where the Cloud TPU is located in. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string( "gcp_project", None, "[Optional] Project name for the Cloud TPU-enabled project. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string("master", None, "[Optional] TensorFlow master URL.") flags.DEFINE_integer( "num_tpu_cores", 8, "Only used if `use_tpu` is True. Total number of TPU cores to use.") def model_fn_builder(bert_config, init_checkpoint, learning_rate, num_train_steps, num_warmup_steps, use_tpu, use_one_hot_embeddings): """Returns `model_fn` closure for TPUEstimator.""" def model_fn(features, labels, mode, params): # pylint: disable=unused-argument """The `model_fn` for TPUEstimator.""" tf.logging.info("*** Features ***") for name in sorted(features.keys()): tf.logging.info(" name = %s, shape = %s" % (name, features[name].shape)) input_ids = features["input_ids"] input_mask = features["input_mask"] segment_ids = features["segment_ids"] masked_lm_positions = features["masked_lm_positions"] masked_lm_ids = features["masked_lm_ids"] masked_lm_weights = features["masked_lm_weights"] next_sentence_labels = features["next_sentence_labels"] is_training = (mode == tf.estimator.ModeKeys.TRAIN) model = modeling.BertModel( config=bert_config, is_training=is_training, input_ids=input_ids, input_mask=input_mask, token_type_ids=segment_ids, use_one_hot_embeddings=use_one_hot_embeddings) (masked_lm_loss, masked_lm_example_loss, masked_lm_log_probs) = get_masked_lm_output( bert_config, model.get_sequence_output(), model.get_embedding_table(), masked_lm_positions, masked_lm_ids, masked_lm_weights) (next_sentence_loss, next_sentence_example_loss, next_sentence_log_probs) = get_next_sentence_output( bert_config, model.get_pooled_output(), next_sentence_labels) total_loss = masked_lm_loss + next_sentence_loss tvars = tf.trainable_variables() initialized_variable_names = {} scaffold_fn = None if init_checkpoint: (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, init_checkpoint) if use_tpu: def tpu_scaffold(): tf.train.init_from_checkpoint(init_checkpoint, assignment_map) return tf.train.Scaffold() scaffold_fn = tpu_scaffold else: tf.train.init_from_checkpoint(init_checkpoint, assignment_map) tf.logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" tf.logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) output_spec = None if mode == tf.estimator.ModeKeys.TRAIN: train_op = optimization.create_optimizer( total_loss, learning_rate, num_train_steps, num_warmup_steps, use_tpu) output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=total_loss, train_op=train_op, scaffold_fn=scaffold_fn) elif mode == tf.estimator.ModeKeys.EVAL: def metric_fn(masked_lm_example_loss, masked_lm_log_probs, masked_lm_ids, masked_lm_weights, next_sentence_example_loss, next_sentence_log_probs, next_sentence_labels): """Computes the loss and accuracy of the model.""" masked_lm_log_probs = tf.reshape(masked_lm_log_probs, [-1, masked_lm_log_probs.shape[-1]]) masked_lm_predictions = tf.argmax( masked_lm_log_probs, axis=-1, output_type=tf.int32) masked_lm_example_loss = tf.reshape(masked_lm_example_loss, [-1]) masked_lm_ids = tf.reshape(masked_lm_ids, [-1]) masked_lm_weights = tf.reshape(masked_lm_weights, [-1]) masked_lm_accuracy = tf.metrics.accuracy( labels=masked_lm_ids, predictions=masked_lm_predictions, weights=masked_lm_weights) masked_lm_mean_loss = tf.metrics.mean( values=masked_lm_example_loss, weights=masked_lm_weights) next_sentence_log_probs = tf.reshape( next_sentence_log_probs, [-1, next_sentence_log_probs.shape[-1]]) next_sentence_predictions = tf.argmax( next_sentence_log_probs, axis=-1, output_type=tf.int32) next_sentence_labels = tf.reshape(next_sentence_labels, [-1]) next_sentence_accuracy = tf.metrics.accuracy( labels=next_sentence_labels, predictions=next_sentence_predictions) next_sentence_mean_loss = tf.metrics.mean( values=next_sentence_example_loss) return { "masked_lm_accuracy": masked_lm_accuracy, "masked_lm_loss": masked_lm_mean_loss, "next_sentence_accuracy": next_sentence_accuracy, "next_sentence_loss": next_sentence_mean_loss, } eval_metrics = (metric_fn, [ masked_lm_example_loss, masked_lm_log_probs, masked_lm_ids, masked_lm_weights, next_sentence_example_loss, next_sentence_log_probs, next_sentence_labels ]) output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=total_loss, eval_metrics=eval_metrics, scaffold_fn=scaffold_fn) else: raise ValueError("Only TRAIN and EVAL modes are supported: %s" % (mode)) return output_spec return model_fn def get_masked_lm_output(bert_config, input_tensor, output_weights, positions, label_ids, label_weights): """Get loss and log probs for the masked LM.""" input_tensor = gather_indexes(input_tensor, positions) with tf.variable_scope("cls/predictions"): # We apply one more non-linear transformation before the output layer. # This matrix is not used after pre-training. with tf.variable_scope("transform"): input_tensor = tf.layers.dense( input_tensor, units=bert_config.hidden_size, activation=modeling.get_activation(bert_config.hidden_act), kernel_initializer=modeling.create_initializer( bert_config.initializer_range)) input_tensor = modeling.layer_norm(input_tensor) # The output weights are the same as the input embeddings, but there is # an output-only bias for each token. output_bias = tf.get_variable( "output_bias", shape=[bert_config.vocab_size], initializer=tf.zeros_initializer()) logits = tf.matmul(input_tensor, output_weights, transpose_b=True) logits = tf.nn.bias_add(logits, output_bias) log_probs = tf.nn.log_softmax(logits, axis=-1) label_ids = tf.reshape(label_ids, [-1]) label_weights = tf.reshape(label_weights, [-1]) one_hot_labels = tf.one_hot( label_ids, depth=bert_config.vocab_size, dtype=tf.float32) # The `positions` tensor might be zero-padded (if the sequence is too # short to have the maximum number of predictions). The `label_weights` # tensor has a value of 1.0 for every real prediction and 0.0 for the # padding predictions. per_example_loss = -tf.reduce_sum(log_probs * one_hot_labels, axis=[-1]) numerator = tf.reduce_sum(label_weights * per_example_loss) denominator = tf.reduce_sum(label_weights) + 1e-5 loss = numerator / denominator return (loss, per_example_loss, log_probs) def get_next_sentence_output(bert_config, input_tensor, labels): """Get loss and log probs for the next sentence prediction.""" # Simple binary classification. Note that 0 is "next sentence" and 1 is # "random sentence". This weight matrix is not used after pre-training. with tf.variable_scope("cls/seq_relationship"): output_weights = tf.get_variable( "output_weights", shape=[2, bert_config.hidden_size], initializer=modeling.create_initializer(bert_config.initializer_range)) output_bias = tf.get_variable( "output_bias", shape=[2], initializer=tf.zeros_initializer()) logits = tf.matmul(input_tensor, output_weights, transpose_b=True) logits = tf.nn.bias_add(logits, output_bias) log_probs = tf.nn.log_softmax(logits, axis=-1) labels = tf.reshape(labels, [-1]) one_hot_labels = tf.one_hot(labels, depth=2, dtype=tf.float32) per_example_loss = -tf.reduce_sum(one_hot_labels * log_probs, axis=-1) loss = tf.reduce_mean(per_example_loss) return (loss, per_example_loss, log_probs) def gather_indexes(sequence_tensor, positions): """Gathers the vectors at the specific positions over a minibatch.""" sequence_shape = modeling.get_shape_list(sequence_tensor, expected_rank=3) batch_size = sequence_shape[0] seq_length = sequence_shape[1] width = sequence_shape[2] flat_offsets = tf.reshape( tf.range(0, batch_size, dtype=tf.int32) * seq_length, [-1, 1]) flat_positions = tf.reshape(positions + flat_offsets, [-1]) flat_sequence_tensor = tf.reshape(sequence_tensor, [batch_size * seq_length, width]) output_tensor = tf.gather(flat_sequence_tensor, flat_positions) return output_tensor def input_fn_builder(input_files, max_seq_length, max_predictions_per_seq, is_training, num_cpu_threads=4): """Creates an `input_fn` closure to be passed to TPUEstimator.""" def input_fn(params): """The actual input function.""" batch_size = params["batch_size"] name_to_features = { "input_ids": tf.FixedLenFeature([max_seq_length], tf.int64), "input_mask": tf.FixedLenFeature([max_seq_length], tf.int64), "segment_ids": tf.FixedLenFeature([max_seq_length], tf.int64), "masked_lm_positions": tf.FixedLenFeature([max_predictions_per_seq], tf.int64), "masked_lm_ids": tf.FixedLenFeature([max_predictions_per_seq], tf.int64), "masked_lm_weights": tf.FixedLenFeature([max_predictions_per_seq], tf.float32), "next_sentence_labels": tf.FixedLenFeature([1], tf.int64), } # For training, we want a lot of parallel reading and shuffling. # For eval, we want no shuffling and parallel reading doesn't matter. if is_training: d = tf.data.Dataset.from_tensor_slices(tf.constant(input_files)) d = d.repeat() d = d.shuffle(buffer_size=len(input_files)) # `cycle_length` is the number of parallel files that get read. cycle_length = min(num_cpu_threads, len(input_files)) # `sloppy` mode means that the interleaving is not exact. This adds # even more randomness to the training pipeline. d = d.apply( tf.contrib.data.parallel_interleave( tf.data.TFRecordDataset, sloppy=is_training, cycle_length=cycle_length)) d = d.shuffle(buffer_size=100) else: d = tf.data.TFRecordDataset(input_files) # Since we evaluate for a fixed number of steps we don't want to encounter # out-of-range exceptions. d = d.repeat() # We must `drop_remainder` on training because the TPU requires fixed # size dimensions. For eval, we assume we are evaluating on the CPU or GPU # and we *don't* want to drop the remainder, otherwise we wont cover # every sample. d = d.apply( tf.contrib.data.map_and_batch( lambda record: _decode_record(record, name_to_features), batch_size=batch_size, num_parallel_batches=num_cpu_threads, drop_remainder=True)) return d return input_fn def _decode_record(record, name_to_features): """Decodes a record to a TensorFlow example.""" example = tf.parse_single_example(record, name_to_features) # tf.Example only supports tf.int64, but the TPU only supports tf.int32. # So cast all int64 to int32. for name in list(example.keys()): t = example[name] if t.dtype == tf.int64: t = tf.to_int32(t) example[name] = t return example def main(_): tf.logging.set_verbosity(tf.logging.INFO) if not FLAGS.do_train and not FLAGS.do_eval: raise ValueError("At least one of `do_train` or `do_eval` must be True.") bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) tf.gfile.MakeDirs(FLAGS.output_dir) input_files = [] for input_pattern in FLAGS.input_file.split(","): input_files.extend(tf.gfile.Glob(input_pattern)) tf.logging.info("*** Input Files ***") for input_file in input_files: tf.logging.info(" %s" % input_file) tpu_cluster_resolver = None if FLAGS.use_tpu and FLAGS.tpu_name: tpu_cluster_resolver = tf.contrib.cluster_resolver.TPUClusterResolver( FLAGS.tpu_name, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project) is_per_host = tf.contrib.tpu.InputPipelineConfig.PER_HOST_V2 run_config = tf.contrib.tpu.RunConfig( cluster=tpu_cluster_resolver, master=FLAGS.master, model_dir=FLAGS.output_dir, save_checkpoints_steps=FLAGS.save_checkpoints_steps, tpu_config=tf.contrib.tpu.TPUConfig( iterations_per_loop=FLAGS.iterations_per_loop, num_shards=FLAGS.num_tpu_cores, per_host_input_for_training=is_per_host)) model_fn = model_fn_builder( bert_config=bert_config, init_checkpoint=FLAGS.init_checkpoint, learning_rate=FLAGS.learning_rate, num_train_steps=FLAGS.num_train_steps, num_warmup_steps=FLAGS.num_warmup_steps, use_tpu=FLAGS.use_tpu, use_one_hot_embeddings=FLAGS.use_tpu) # If TPU is not available, this will fall back to normal Estimator on CPU # or GPU. estimator = tf.contrib.tpu.TPUEstimator( use_tpu=FLAGS.use_tpu, model_fn=model_fn, config=run_config, train_batch_size=FLAGS.train_batch_size, eval_batch_size=FLAGS.eval_batch_size) if FLAGS.do_train: tf.logging.info("***** Running training *****") tf.logging.info(" Batch size = %d", FLAGS.train_batch_size) train_input_fn = input_fn_builder( input_files=input_files, max_seq_length=FLAGS.max_seq_length, max_predictions_per_seq=FLAGS.max_predictions_per_seq, is_training=True) estimator.train(input_fn=train_input_fn, max_steps=FLAGS.num_train_steps) if FLAGS.do_eval: tf.logging.info("***** Running evaluation *****") tf.logging.info(" Batch size = %d", FLAGS.eval_batch_size) eval_input_fn = input_fn_builder( input_files=input_files, max_seq_length=FLAGS.max_seq_length, max_predictions_per_seq=FLAGS.max_predictions_per_seq, is_training=False) result = estimator.evaluate( input_fn=eval_input_fn, steps=FLAGS.max_eval_steps) output_eval_file = os.path.join(FLAGS.output_dir, "eval_results.txt") with tf.gfile.GFile(output_eval_file, "w") as writer: tf.logging.info("***** Eval results *****") for key in sorted(result.keys()): tf.logging.info(" %s = %s", key, str(result[key])) writer.write("%s = %s\n" % (key, str(result[key]))) if __name__ == "__main__": flags.mark_flag_as_required("input_file") flags.mark_flag_as_required("bert_config_file") flags.mark_flag_as_required("output_dir") tf.app.run() ================================================ FILE: third/bert/run_squad.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Run BERT on SQuAD.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import json import math import os import random import modeling import optimization import tokenization import six import tensorflow as tf flags = tf.flags FLAGS = flags.FLAGS ## Required parameters flags.DEFINE_string( "bert_config_file", None, "The config json file corresponding to the pre-trained BERT model. " "This specifies the model architecture.") flags.DEFINE_string("vocab_file", None, "The vocabulary file that the BERT model was trained on.") flags.DEFINE_string( "output_dir", None, "The output directory where the model checkpoints will be written.") ## Other parameters flags.DEFINE_string("train_file", None, "SQuAD json for training. E.g., train-v1.1.json") flags.DEFINE_string( "predict_file", None, "SQuAD json for predictions. E.g., dev-v1.1.json or test-v1.1.json") flags.DEFINE_string( "init_checkpoint", None, "Initial checkpoint (usually from a pre-trained BERT model).") flags.DEFINE_bool( "do_lower_case", True, "Whether to lower case the input text. Should be True for uncased " "models and False for cased models.") flags.DEFINE_integer( "max_seq_length", 384, "The maximum total input sequence length after WordPiece tokenization. " "Sequences longer than this will be truncated, and sequences shorter " "than this will be padded.") flags.DEFINE_integer( "doc_stride", 128, "When splitting up a long document into chunks, how much stride to " "take between chunks.") flags.DEFINE_integer( "max_query_length", 64, "The maximum number of tokens for the question. Questions longer than " "this will be truncated to this length.") flags.DEFINE_bool("do_train", False, "Whether to run training.") flags.DEFINE_bool("do_predict", False, "Whether to run eval on the dev set.") flags.DEFINE_integer("train_batch_size", 32, "Total batch size for training.") flags.DEFINE_integer("predict_batch_size", 8, "Total batch size for predictions.") flags.DEFINE_float("learning_rate", 5e-5, "The initial learning rate for Adam.") flags.DEFINE_float("num_train_epochs", 3.0, "Total number of training epochs to perform.") flags.DEFINE_float( "warmup_proportion", 0.1, "Proportion of training to perform linear learning rate warmup for. " "E.g., 0.1 = 10% of training.") flags.DEFINE_integer("save_checkpoints_steps", 1000, "How often to save the model checkpoint.") flags.DEFINE_integer("iterations_per_loop", 1000, "How many steps to make in each estimator call.") flags.DEFINE_integer( "n_best_size", 20, "The total number of n-best predictions to generate in the " "nbest_predictions.json output file.") flags.DEFINE_integer( "max_answer_length", 30, "The maximum length of an answer that can be generated. This is needed " "because the start and end predictions are not conditioned on one another.") flags.DEFINE_bool("use_tpu", False, "Whether to use TPU or GPU/CPU.") tf.flags.DEFINE_string( "tpu_name", None, "The Cloud TPU to use for training. This should be either the name " "used when creating the Cloud TPU, or a grpc://ip.address.of.tpu:8470 " "url.") tf.flags.DEFINE_string( "tpu_zone", None, "[Optional] GCE zone where the Cloud TPU is located in. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string( "gcp_project", None, "[Optional] Project name for the Cloud TPU-enabled project. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") tf.flags.DEFINE_string("master", None, "[Optional] TensorFlow master URL.") flags.DEFINE_integer( "num_tpu_cores", 8, "Only used if `use_tpu` is True. Total number of TPU cores to use.") flags.DEFINE_bool( "verbose_logging", False, "If true, all of the warnings related to data processing will be printed. " "A number of warnings are expected for a normal SQuAD evaluation.") class SquadExample(object): """A single training/test example for simple sequence classification.""" def __init__(self, qas_id, question_text, doc_tokens, orig_answer_text=None, start_position=None, end_position=None): self.qas_id = qas_id self.question_text = question_text self.doc_tokens = doc_tokens self.orig_answer_text = orig_answer_text self.start_position = start_position self.end_position = end_position def __str__(self): return self.__repr__() def __repr__(self): s = "" s += "qas_id: %s" % (tokenization.printable_text(self.qas_id)) s += ", question_text: %s" % ( tokenization.printable_text(self.question_text)) s += ", doc_tokens: [%s]" % (" ".join(self.doc_tokens)) if self.start_position: s += ", start_position: %d" % (self.start_position) if self.start_position: s += ", end_position: %d" % (self.end_position) return s class InputFeatures(object): """A single set of features of data.""" def __init__(self, unique_id, example_index, doc_span_index, tokens, token_to_orig_map, token_is_max_context, input_ids, input_mask, segment_ids, start_position=None, end_position=None): self.unique_id = unique_id self.example_index = example_index self.doc_span_index = doc_span_index self.tokens = tokens self.token_to_orig_map = token_to_orig_map self.token_is_max_context = token_is_max_context self.input_ids = input_ids self.input_mask = input_mask self.segment_ids = segment_ids self.start_position = start_position self.end_position = end_position def read_squad_examples(input_file, is_training): """Read a SQuAD json file into a list of SquadExample.""" with tf.gfile.Open(input_file, "r") as reader: input_data = json.load(reader)["data"] def is_whitespace(c): if c == " " or c == "\t" or c == "\r" or c == "\n" or ord(c) == 0x202F: return True return False examples = [] for entry in input_data: for paragraph in entry["paragraphs"]: paragraph_text = paragraph["context"] doc_tokens = [] char_to_word_offset = [] prev_is_whitespace = True for c in paragraph_text: if is_whitespace(c): prev_is_whitespace = True else: if prev_is_whitespace: doc_tokens.append(c) else: doc_tokens[-1] += c prev_is_whitespace = False char_to_word_offset.append(len(doc_tokens) - 1) for qa in paragraph["qas"]: qas_id = qa["id"] question_text = qa["question"] start_position = None end_position = None orig_answer_text = None if is_training: if len(qa["answers"]) != 1: raise ValueError( "For training, each question should have exactly 1 answer.") answer = qa["answers"][0] orig_answer_text = answer["text"] answer_offset = answer["answer_start"] answer_length = len(orig_answer_text) start_position = char_to_word_offset[answer_offset] end_position = char_to_word_offset[answer_offset + answer_length - 1] # Only add answers where the text can be exactly recovered from the # document. If this CAN'T happen it's likely due to weird Unicode # stuff so we will just skip the example. # # Note that this means for training mode, every example is NOT # guaranteed to be preserved. actual_text = " ".join(doc_tokens[start_position:(end_position + 1)]) cleaned_answer_text = " ".join( tokenization.whitespace_tokenize(orig_answer_text)) if actual_text.find(cleaned_answer_text) == -1: tf.logging.warning("Could not find answer: '%s' vs. '%s'", actual_text, cleaned_answer_text) continue example = SquadExample( qas_id=qas_id, question_text=question_text, doc_tokens=doc_tokens, orig_answer_text=orig_answer_text, start_position=start_position, end_position=end_position) examples.append(example) return examples def convert_examples_to_features(examples, tokenizer, max_seq_length, doc_stride, max_query_length, is_training, output_fn): """Loads a data file into a list of `InputBatch`s.""" unique_id = 1000000000 for (example_index, example) in enumerate(examples): query_tokens = tokenizer.tokenize(example.question_text) if len(query_tokens) > max_query_length: query_tokens = query_tokens[0:max_query_length] tok_to_orig_index = [] orig_to_tok_index = [] all_doc_tokens = [] for (i, token) in enumerate(example.doc_tokens): orig_to_tok_index.append(len(all_doc_tokens)) sub_tokens = tokenizer.tokenize(token) for sub_token in sub_tokens: tok_to_orig_index.append(i) all_doc_tokens.append(sub_token) tok_start_position = None tok_end_position = None if is_training: tok_start_position = orig_to_tok_index[example.start_position] if example.end_position < len(example.doc_tokens) - 1: tok_end_position = orig_to_tok_index[example.end_position + 1] - 1 else: tok_end_position = len(all_doc_tokens) - 1 (tok_start_position, tok_end_position) = _improve_answer_span( all_doc_tokens, tok_start_position, tok_end_position, tokenizer, example.orig_answer_text) # The -3 accounts for [CLS], [SEP] and [SEP] max_tokens_for_doc = max_seq_length - len(query_tokens) - 3 # We can have documents that are longer than the maximum sequence length. # To deal with this we do a sliding window approach, where we take chunks # of the up to our max length with a stride of `doc_stride`. _DocSpan = collections.namedtuple( # pylint: disable=invalid-name "DocSpan", ["start", "length"]) doc_spans = [] start_offset = 0 while start_offset < len(all_doc_tokens): length = len(all_doc_tokens) - start_offset if length > max_tokens_for_doc: length = max_tokens_for_doc doc_spans.append(_DocSpan(start=start_offset, length=length)) if start_offset + length == len(all_doc_tokens): break start_offset += min(length, doc_stride) for (doc_span_index, doc_span) in enumerate(doc_spans): tokens = [] token_to_orig_map = {} token_is_max_context = {} segment_ids = [] tokens.append("[CLS]") segment_ids.append(0) for token in query_tokens: tokens.append(token) segment_ids.append(0) tokens.append("[SEP]") segment_ids.append(0) for i in range(doc_span.length): split_token_index = doc_span.start + i token_to_orig_map[len(tokens)] = tok_to_orig_index[split_token_index] is_max_context = _check_is_max_context(doc_spans, doc_span_index, split_token_index) token_is_max_context[len(tokens)] = is_max_context tokens.append(all_doc_tokens[split_token_index]) segment_ids.append(1) tokens.append("[SEP]") segment_ids.append(1) input_ids = tokenizer.convert_tokens_to_ids(tokens) # The mask has 1 for real tokens and 0 for padding tokens. Only real # tokens are attended to. input_mask = [1] * len(input_ids) # Zero-pad up to the sequence length. while len(input_ids) < max_seq_length: input_ids.append(0) input_mask.append(0) segment_ids.append(0) assert len(input_ids) == max_seq_length assert len(input_mask) == max_seq_length assert len(segment_ids) == max_seq_length start_position = None end_position = None if is_training: # For training, if our document chunk does not contain an annotation # we throw it out, since there is nothing to predict. doc_start = doc_span.start doc_end = doc_span.start + doc_span.length - 1 if (example.start_position < doc_start or example.end_position < doc_start or example.start_position > doc_end or example.end_position > doc_end): continue doc_offset = len(query_tokens) + 2 start_position = tok_start_position - doc_start + doc_offset end_position = tok_end_position - doc_start + doc_offset if example_index < 20: tf.logging.info("*** Example ***") tf.logging.info("unique_id: %s" % (unique_id)) tf.logging.info("example_index: %s" % (example_index)) tf.logging.info("doc_span_index: %s" % (doc_span_index)) tf.logging.info("tokens: %s" % " ".join( [tokenization.printable_text(x) for x in tokens])) tf.logging.info("token_to_orig_map: %s" % " ".join( ["%d:%d" % (x, y) for (x, y) in six.iteritems(token_to_orig_map)])) tf.logging.info("token_is_max_context: %s" % " ".join([ "%d:%s" % (x, y) for (x, y) in six.iteritems(token_is_max_context) ])) tf.logging.info("input_ids: %s" % " ".join([str(x) for x in input_ids])) tf.logging.info( "input_mask: %s" % " ".join([str(x) for x in input_mask])) tf.logging.info( "segment_ids: %s" % " ".join([str(x) for x in segment_ids])) if is_training: answer_text = " ".join(tokens[start_position:(end_position + 1)]) tf.logging.info("start_position: %d" % (start_position)) tf.logging.info("end_position: %d" % (end_position)) tf.logging.info( "answer: %s" % (tokenization.printable_text(answer_text))) feature = InputFeatures( unique_id=unique_id, example_index=example_index, doc_span_index=doc_span_index, tokens=tokens, token_to_orig_map=token_to_orig_map, token_is_max_context=token_is_max_context, input_ids=input_ids, input_mask=input_mask, segment_ids=segment_ids, start_position=start_position, end_position=end_position) # Run callback output_fn(feature) unique_id += 1 def _improve_answer_span(doc_tokens, input_start, input_end, tokenizer, orig_answer_text): """Returns tokenized answer spans that better match the annotated answer.""" # The SQuAD annotations are character based. We first project them to # whitespace-tokenized words. But then after WordPiece tokenization, we can # often find a "better match". For example: # # Question: What year was John Smith born? # Context: The leader was John Smith (1895-1943). # Answer: 1895 # # The original whitespace-tokenized answer will be "(1895-1943).". However # after tokenization, our tokens will be "( 1895 - 1943 ) .". So we can match # the exact answer, 1895. # # However, this is not always possible. Consider the following: # # Question: What country is the top exporter of electornics? # Context: The Japanese electronics industry is the lagest in the world. # Answer: Japan # # In this case, the annotator chose "Japan" as a character sub-span of # the word "Japanese". Since our WordPiece tokenizer does not split # "Japanese", we just use "Japanese" as the annotation. This is fairly rare # in SQuAD, but does happen. tok_answer_text = " ".join(tokenizer.tokenize(orig_answer_text)) for new_start in range(input_start, input_end + 1): for new_end in range(input_end, new_start - 1, -1): text_span = " ".join(doc_tokens[new_start:(new_end + 1)]) if text_span == tok_answer_text: return (new_start, new_end) return (input_start, input_end) def _check_is_max_context(doc_spans, cur_span_index, position): """Check if this is the 'max context' doc span for the token.""" # Because of the sliding window approach taken to scoring documents, a single # token can appear in multiple documents. E.g. # Doc: the man went to the store and bought a gallon of milk # Span A: the man went to the # Span B: to the store and bought # Span C: and bought a gallon of # ... # # Now the word 'bought' will have two scores from spans B and C. We only # want to consider the score with "maximum context", which we define as # the *minimum* of its left and right context (the *sum* of left and # right context will always be the same, of course). # # In the example the maximum context for 'bought' would be span C since # it has 1 left context and 3 right context, while span B has 4 left context # and 0 right context. best_score = None best_span_index = None for (span_index, doc_span) in enumerate(doc_spans): end = doc_span.start + doc_span.length - 1 if position < doc_span.start: continue if position > end: continue num_left_context = position - doc_span.start num_right_context = end - position score = min(num_left_context, num_right_context) + 0.01 * doc_span.length if best_score is None or score > best_score: best_score = score best_span_index = span_index return cur_span_index == best_span_index def create_model(bert_config, is_training, input_ids, input_mask, segment_ids, use_one_hot_embeddings): """Creates a classification model.""" model = modeling.BertModel( config=bert_config, is_training=is_training, input_ids=input_ids, input_mask=input_mask, token_type_ids=segment_ids, use_one_hot_embeddings=use_one_hot_embeddings) final_hidden = model.get_sequence_output() final_hidden_shape = modeling.get_shape_list(final_hidden, expected_rank=3) batch_size = final_hidden_shape[0] seq_length = final_hidden_shape[1] hidden_size = final_hidden_shape[2] output_weights = tf.get_variable( "cls/squad/output_weights", [2, hidden_size], initializer=tf.truncated_normal_initializer(stddev=0.02)) output_bias = tf.get_variable( "cls/squad/output_bias", [2], initializer=tf.zeros_initializer()) final_hidden_matrix = tf.reshape(final_hidden, [batch_size * seq_length, hidden_size]) logits = tf.matmul(final_hidden_matrix, output_weights, transpose_b=True) logits = tf.nn.bias_add(logits, output_bias) logits = tf.reshape(logits, [batch_size, seq_length, 2]) logits = tf.transpose(logits, [2, 0, 1]) unstacked_logits = tf.unstack(logits, axis=0) (start_logits, end_logits) = (unstacked_logits[0], unstacked_logits[1]) return (start_logits, end_logits) def model_fn_builder(bert_config, init_checkpoint, learning_rate, num_train_steps, num_warmup_steps, use_tpu, use_one_hot_embeddings): """Returns `model_fn` closure for TPUEstimator.""" def model_fn(features, labels, mode, params): # pylint: disable=unused-argument """The `model_fn` for TPUEstimator.""" tf.logging.info("*** Features ***") for name in sorted(features.keys()): tf.logging.info(" name = %s, shape = %s" % (name, features[name].shape)) unique_ids = features["unique_ids"] input_ids = features["input_ids"] input_mask = features["input_mask"] segment_ids = features["segment_ids"] is_training = (mode == tf.estimator.ModeKeys.TRAIN) (start_logits, end_logits) = create_model( bert_config=bert_config, is_training=is_training, input_ids=input_ids, input_mask=input_mask, segment_ids=segment_ids, use_one_hot_embeddings=use_one_hot_embeddings) tvars = tf.trainable_variables() initialized_variable_names = {} scaffold_fn = None if init_checkpoint: (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, init_checkpoint) if use_tpu: def tpu_scaffold(): tf.train.init_from_checkpoint(init_checkpoint, assignment_map) return tf.train.Scaffold() scaffold_fn = tpu_scaffold else: tf.train.init_from_checkpoint(init_checkpoint, assignment_map) tf.logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" tf.logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) output_spec = None if mode == tf.estimator.ModeKeys.TRAIN: seq_length = modeling.get_shape_list(input_ids)[1] def compute_loss(logits, positions): one_hot_positions = tf.one_hot( positions, depth=seq_length, dtype=tf.float32) log_probs = tf.nn.log_softmax(logits, axis=-1) loss = -tf.reduce_mean( tf.reduce_sum(one_hot_positions * log_probs, axis=-1)) return loss start_positions = features["start_positions"] end_positions = features["end_positions"] start_loss = compute_loss(start_logits, start_positions) end_loss = compute_loss(end_logits, end_positions) total_loss = (start_loss + end_loss) / 2.0 train_op = optimization.create_optimizer( total_loss, learning_rate, num_train_steps, num_warmup_steps, use_tpu) output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, loss=total_loss, train_op=train_op, scaffold_fn=scaffold_fn) elif mode == tf.estimator.ModeKeys.PREDICT: predictions = { "unique_ids": unique_ids, "start_logits": start_logits, "end_logits": end_logits, } output_spec = tf.contrib.tpu.TPUEstimatorSpec( mode=mode, predictions=predictions, scaffold_fn=scaffold_fn) else: raise ValueError( "Only TRAIN and PREDICT modes are supported: %s" % (mode)) return output_spec return model_fn def input_fn_builder(input_file, seq_length, is_training, drop_remainder): """Creates an `input_fn` closure to be passed to TPUEstimator.""" name_to_features = { "unique_ids": tf.FixedLenFeature([], tf.int64), "input_ids": tf.FixedLenFeature([seq_length], tf.int64), "input_mask": tf.FixedLenFeature([seq_length], tf.int64), "segment_ids": tf.FixedLenFeature([seq_length], tf.int64), } if is_training: name_to_features["start_positions"] = tf.FixedLenFeature([], tf.int64) name_to_features["end_positions"] = tf.FixedLenFeature([], tf.int64) def _decode_record(record, name_to_features): """Decodes a record to a TensorFlow example.""" example = tf.parse_single_example(record, name_to_features) # tf.Example only supports tf.int64, but the TPU only supports tf.int32. # So cast all int64 to int32. for name in list(example.keys()): t = example[name] if t.dtype == tf.int64: t = tf.to_int32(t) example[name] = t return example def input_fn(params): """The actual input function.""" batch_size = params["batch_size"] # For training, we want a lot of parallel reading and shuffling. # For eval, we want no shuffling and parallel reading doesn't matter. d = tf.data.TFRecordDataset(input_file) if is_training: d = d.repeat() d = d.shuffle(buffer_size=100) d = d.apply( tf.contrib.data.map_and_batch( lambda record: _decode_record(record, name_to_features), batch_size=batch_size, drop_remainder=drop_remainder)) return d return input_fn RawResult = collections.namedtuple("RawResult", ["unique_id", "start_logits", "end_logits"]) def write_predictions(all_examples, all_features, all_results, n_best_size, max_answer_length, do_lower_case, output_prediction_file, output_nbest_file): """Write final predictions to the json file.""" tf.logging.info("Writing predictions to: %s" % (output_prediction_file)) tf.logging.info("Writing nbest to: %s" % (output_nbest_file)) example_index_to_features = collections.defaultdict(list) for feature in all_features: example_index_to_features[feature.example_index].append(feature) unique_id_to_result = {} for result in all_results: unique_id_to_result[result.unique_id] = result _PrelimPrediction = collections.namedtuple( # pylint: disable=invalid-name "PrelimPrediction", ["feature_index", "start_index", "end_index", "start_logit", "end_logit"]) all_predictions = collections.OrderedDict() all_nbest_json = collections.OrderedDict() for (example_index, example) in enumerate(all_examples): features = example_index_to_features[example_index] prelim_predictions = [] for (feature_index, feature) in enumerate(features): result = unique_id_to_result[feature.unique_id] start_indexes = _get_best_indexes(result.start_logits, n_best_size) end_indexes = _get_best_indexes(result.end_logits, n_best_size) for start_index in start_indexes: for end_index in end_indexes: # We could hypothetically create invalid predictions, e.g., predict # that the start of the span is in the question. We throw out all # invalid predictions. if start_index >= len(feature.tokens): continue if end_index >= len(feature.tokens): continue if start_index not in feature.token_to_orig_map: continue if end_index not in feature.token_to_orig_map: continue if not feature.token_is_max_context.get(start_index, False): continue if end_index < start_index: continue length = end_index - start_index + 1 if length > max_answer_length: continue prelim_predictions.append( _PrelimPrediction( feature_index=feature_index, start_index=start_index, end_index=end_index, start_logit=result.start_logits[start_index], end_logit=result.end_logits[end_index])) prelim_predictions = sorted( prelim_predictions, key=lambda x: (x.start_logit + x.end_logit), reverse=True) _NbestPrediction = collections.namedtuple( # pylint: disable=invalid-name "NbestPrediction", ["text", "start_logit", "end_logit"]) seen_predictions = {} nbest = [] for pred in prelim_predictions: if len(nbest) >= n_best_size: break feature = features[pred.feature_index] tok_tokens = feature.tokens[pred.start_index:(pred.end_index + 1)] orig_doc_start = feature.token_to_orig_map[pred.start_index] orig_doc_end = feature.token_to_orig_map[pred.end_index] orig_tokens = example.doc_tokens[orig_doc_start:(orig_doc_end + 1)] tok_text = " ".join(tok_tokens) # De-tokenize WordPieces that have been split off. tok_text = tok_text.replace(" ##", "") tok_text = tok_text.replace("##", "") # Clean whitespace tok_text = tok_text.strip() tok_text = " ".join(tok_text.split()) orig_text = " ".join(orig_tokens) final_text = get_final_text(tok_text, orig_text, do_lower_case) if final_text in seen_predictions: continue seen_predictions[final_text] = True nbest.append( _NbestPrediction( text=final_text, start_logit=pred.start_logit, end_logit=pred.end_logit)) # In very rare edge cases we could have no valid predictions. So we # just create a nonce prediction in this case to avoid failure. if not nbest: nbest.append( _NbestPrediction(text="empty", start_logit=0.0, end_logit=0.0)) assert len(nbest) >= 1 total_scores = [] for entry in nbest: total_scores.append(entry.start_logit + entry.end_logit) probs = _compute_softmax(total_scores) nbest_json = [] for (i, entry) in enumerate(nbest): output = collections.OrderedDict() output["text"] = entry.text output["probability"] = probs[i] output["start_logit"] = entry.start_logit output["end_logit"] = entry.end_logit nbest_json.append(output) assert len(nbest_json) >= 1 all_predictions[example.qas_id] = nbest_json[0]["text"] all_nbest_json[example.qas_id] = nbest_json with tf.gfile.GFile(output_prediction_file, "w") as writer: writer.write(json.dumps(all_predictions, indent=4) + "\n") with tf.gfile.GFile(output_nbest_file, "w") as writer: writer.write(json.dumps(all_nbest_json, indent=4) + "\n") def get_final_text(pred_text, orig_text, do_lower_case): """Project the tokenized prediction back to the original text.""" # When we created the data, we kept track of the alignment between original # (whitespace tokenized) tokens and our WordPiece tokenized tokens. So # now `orig_text` contains the span of our original text corresponding to the # span that we predicted. # # However, `orig_text` may contain extra characters that we don't want in # our prediction. # # For example, let's say: # pred_text = steve smith # orig_text = Steve Smith's # # We don't want to return `orig_text` because it contains the extra "'s". # # We don't want to return `pred_text` because it's already been normalized # (the SQuAD eval script also does punctuation stripping/lower casing but # our tokenizer does additional normalization like stripping accent # characters). # # What we really want to return is "Steve Smith". # # Therefore, we have to apply a semi-complicated alignment heruistic between # `pred_text` and `orig_text` to get a character-to-charcter alignment. This # can fail in certain cases in which case we just return `orig_text`. def _strip_spaces(text): ns_chars = [] ns_to_s_map = collections.OrderedDict() for (i, c) in enumerate(text): if c == " ": continue ns_to_s_map[len(ns_chars)] = i ns_chars.append(c) ns_text = "".join(ns_chars) return (ns_text, ns_to_s_map) # We first tokenize `orig_text`, strip whitespace from the result # and `pred_text`, and check if they are the same length. If they are # NOT the same length, the heuristic has failed. If they are the same # length, we assume the characters are one-to-one aligned. tokenizer = tokenization.BasicTokenizer(do_lower_case=do_lower_case) tok_text = " ".join(tokenizer.tokenize(orig_text)) start_position = tok_text.find(pred_text) if start_position == -1: if FLAGS.verbose_logging: tf.logging.info( "Unable to find text: '%s' in '%s'" % (pred_text, orig_text)) return orig_text end_position = start_position + len(pred_text) - 1 (orig_ns_text, orig_ns_to_s_map) = _strip_spaces(orig_text) (tok_ns_text, tok_ns_to_s_map) = _strip_spaces(tok_text) if len(orig_ns_text) != len(tok_ns_text): if FLAGS.verbose_logging: tf.logging.info("Length not equal after stripping spaces: '%s' vs '%s'", orig_ns_text, tok_ns_text) return orig_text # We then project the characters in `pred_text` back to `orig_text` using # the character-to-character alignment. tok_s_to_ns_map = {} for (i, tok_index) in six.iteritems(tok_ns_to_s_map): tok_s_to_ns_map[tok_index] = i orig_start_position = None if start_position in tok_s_to_ns_map: ns_start_position = tok_s_to_ns_map[start_position] if ns_start_position in orig_ns_to_s_map: orig_start_position = orig_ns_to_s_map[ns_start_position] if orig_start_position is None: if FLAGS.verbose_logging: tf.logging.info("Couldn't map start position") return orig_text orig_end_position = None if end_position in tok_s_to_ns_map: ns_end_position = tok_s_to_ns_map[end_position] if ns_end_position in orig_ns_to_s_map: orig_end_position = orig_ns_to_s_map[ns_end_position] if orig_end_position is None: if FLAGS.verbose_logging: tf.logging.info("Couldn't map end position") return orig_text output_text = orig_text[orig_start_position:(orig_end_position + 1)] return output_text def _get_best_indexes(logits, n_best_size): """Get the n-best logits from a list.""" index_and_score = sorted(enumerate(logits), key=lambda x: x[1], reverse=True) best_indexes = [] for i in range(len(index_and_score)): if i >= n_best_size: break best_indexes.append(index_and_score[i][0]) return best_indexes def _compute_softmax(scores): """Compute softmax probability over raw logits.""" if not scores: return [] max_score = None for score in scores: if max_score is None or score > max_score: max_score = score exp_scores = [] total_sum = 0.0 for score in scores: x = math.exp(score - max_score) exp_scores.append(x) total_sum += x probs = [] for score in exp_scores: probs.append(score / total_sum) return probs class FeatureWriter(object): """Writes InputFeature to TF example file.""" def __init__(self, filename, is_training): self.filename = filename self.is_training = is_training self.num_features = 0 self._writer = tf.python_io.TFRecordWriter(filename) def process_feature(self, feature): """Write a InputFeature to the TFRecordWriter as a tf.train.Example.""" self.num_features += 1 def create_int_feature(values): feature = tf.train.Feature( int64_list=tf.train.Int64List(value=list(values))) return feature features = collections.OrderedDict() features["unique_ids"] = create_int_feature([feature.unique_id]) features["input_ids"] = create_int_feature(feature.input_ids) features["input_mask"] = create_int_feature(feature.input_mask) features["segment_ids"] = create_int_feature(feature.segment_ids) if self.is_training: features["start_positions"] = create_int_feature([feature.start_position]) features["end_positions"] = create_int_feature([feature.end_position]) tf_example = tf.train.Example(features=tf.train.Features(feature=features)) self._writer.write(tf_example.SerializeToString()) def close(self): self._writer.close() def validate_flags_or_throw(bert_config): """Validate the input FLAGS or throw an exception.""" if not FLAGS.do_train and not FLAGS.do_predict: raise ValueError("At least one of `do_train` or `do_predict` must be True.") if FLAGS.do_train: if not FLAGS.train_file: raise ValueError( "If `do_train` is True, then `train_file` must be specified.") if FLAGS.do_predict: if not FLAGS.predict_file: raise ValueError( "If `do_predict` is True, then `predict_file` must be specified.") if FLAGS.max_seq_length > bert_config.max_position_embeddings: raise ValueError( "Cannot use sequence length %d because the BERT model " "was only trained up to sequence length %d" % (FLAGS.max_seq_length, bert_config.max_position_embeddings)) if FLAGS.max_seq_length <= FLAGS.max_query_length + 3: raise ValueError( "The max_seq_length (%d) must be greater than max_query_length " "(%d) + 3" % (FLAGS.max_seq_length, FLAGS.max_query_length)) def main(_): tf.logging.set_verbosity(tf.logging.INFO) bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) validate_flags_or_throw(bert_config) tf.gfile.MakeDirs(FLAGS.output_dir) tokenizer = tokenization.FullTokenizer( vocab_file=FLAGS.vocab_file, do_lower_case=FLAGS.do_lower_case) tpu_cluster_resolver = None if FLAGS.use_tpu and FLAGS.tpu_name: tpu_cluster_resolver = tf.contrib.cluster_resolver.TPUClusterResolver( FLAGS.tpu_name, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project) is_per_host = tf.contrib.tpu.InputPipelineConfig.PER_HOST_V2 run_config = tf.contrib.tpu.RunConfig( cluster=tpu_cluster_resolver, master=FLAGS.master, model_dir=FLAGS.output_dir, save_checkpoints_steps=FLAGS.save_checkpoints_steps, tpu_config=tf.contrib.tpu.TPUConfig( iterations_per_loop=FLAGS.iterations_per_loop, num_shards=FLAGS.num_tpu_cores, per_host_input_for_training=is_per_host)) train_examples = None num_train_steps = None num_warmup_steps = None if FLAGS.do_train: train_examples = read_squad_examples( input_file=FLAGS.train_file, is_training=True) num_train_steps = int( len(train_examples) / FLAGS.train_batch_size * FLAGS.num_train_epochs) num_warmup_steps = int(num_train_steps * FLAGS.warmup_proportion) # Pre-shuffle the input to avoid having to make a very large shuffle # buffer in in the `input_fn`. rng = random.Random(12345) rng.shuffle(train_examples) model_fn = model_fn_builder( bert_config=bert_config, init_checkpoint=FLAGS.init_checkpoint, learning_rate=FLAGS.learning_rate, num_train_steps=num_train_steps, num_warmup_steps=num_warmup_steps, use_tpu=FLAGS.use_tpu, use_one_hot_embeddings=FLAGS.use_tpu) # If TPU is not available, this will fall back to normal Estimator on CPU # or GPU. estimator = tf.contrib.tpu.TPUEstimator( use_tpu=FLAGS.use_tpu, model_fn=model_fn, config=run_config, train_batch_size=FLAGS.train_batch_size, predict_batch_size=FLAGS.predict_batch_size) if FLAGS.do_train: # We write to a temporary file to avoid storing very large constant tensors # in memory. train_writer = FeatureWriter( filename=os.path.join(FLAGS.output_dir, "train.tf_record"), is_training=True) convert_examples_to_features( examples=train_examples, tokenizer=tokenizer, max_seq_length=FLAGS.max_seq_length, doc_stride=FLAGS.doc_stride, max_query_length=FLAGS.max_query_length, is_training=True, output_fn=train_writer.process_feature) train_writer.close() tf.logging.info("***** Running training *****") tf.logging.info(" Num orig examples = %d", len(train_examples)) tf.logging.info(" Num split examples = %d", train_writer.num_features) tf.logging.info(" Batch size = %d", FLAGS.train_batch_size) tf.logging.info(" Num steps = %d", num_train_steps) del train_examples train_input_fn = input_fn_builder( input_file=train_writer.filename, seq_length=FLAGS.max_seq_length, is_training=True, drop_remainder=True) estimator.train(input_fn=train_input_fn, max_steps=num_train_steps) if FLAGS.do_predict: eval_examples = read_squad_examples( input_file=FLAGS.predict_file, is_training=False) eval_writer = FeatureWriter( filename=os.path.join(FLAGS.output_dir, "eval.tf_record"), is_training=False) eval_features = [] def append_feature(feature): eval_features.append(feature) eval_writer.process_feature(feature) convert_examples_to_features( examples=eval_examples, tokenizer=tokenizer, max_seq_length=FLAGS.max_seq_length, doc_stride=FLAGS.doc_stride, max_query_length=FLAGS.max_query_length, is_training=False, output_fn=append_feature) eval_writer.close() tf.logging.info("***** Running predictions *****") tf.logging.info(" Num orig examples = %d", len(eval_examples)) tf.logging.info(" Num split examples = %d", len(eval_features)) tf.logging.info(" Batch size = %d", FLAGS.predict_batch_size) all_results = [] predict_input_fn = input_fn_builder( input_file=eval_writer.filename, seq_length=FLAGS.max_seq_length, is_training=False, drop_remainder=False) # If running eval on the TPU, you will need to specify the number of # steps. all_results = [] for result in estimator.predict( predict_input_fn, yield_single_examples=True): if len(all_results) % 1000 == 0: tf.logging.info("Processing example: %d" % (len(all_results))) unique_id = int(result["unique_ids"]) start_logits = [float(x) for x in result["start_logits"].flat] end_logits = [float(x) for x in result["end_logits"].flat] all_results.append( RawResult( unique_id=unique_id, start_logits=start_logits, end_logits=end_logits)) output_prediction_file = os.path.join(FLAGS.output_dir, "predictions.json") output_nbest_file = os.path.join(FLAGS.output_dir, "nbest_predictions.json") write_predictions(eval_examples, eval_features, all_results, FLAGS.n_best_size, FLAGS.max_answer_length, FLAGS.do_lower_case, output_prediction_file, output_nbest_file) if __name__ == "__main__": flags.mark_flag_as_required("vocab_file") flags.mark_flag_as_required("bert_config_file") flags.mark_flag_as_required("output_dir") tf.app.run() ================================================ FILE: third/bert/tokenization.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Tokenization classes.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import unicodedata import six import tensorflow as tf def convert_to_unicode(text): """Converts `text` to Unicode (if it's not already), assuming utf-8 input.""" if six.PY3: if isinstance(text, str): return text elif isinstance(text, bytes): return text.decode("utf-8", "ignore") else: raise ValueError("Unsupported string type: %s" % (type(text))) elif six.PY2: if isinstance(text, str): return text.decode("utf-8", "ignore") elif isinstance(text, unicode): return text else: raise ValueError("Unsupported string type: %s" % (type(text))) else: raise ValueError("Not running on Python2 or Python 3?") def printable_text(text): """Returns text encoded in a way suitable for print or `tf.logging`.""" # These functions want `str` for both Python2 and Python3, but in one case # it's a Unicode string and in the other it's a byte string. if six.PY3: if isinstance(text, str): return text elif isinstance(text, bytes): return text.decode("utf-8", "ignore") else: raise ValueError("Unsupported string type: %s" % (type(text))) elif six.PY2: if isinstance(text, str): return text elif isinstance(text, unicode): return text.encode("utf-8") else: raise ValueError("Unsupported string type: %s" % (type(text))) else: raise ValueError("Not running on Python2 or Python 3?") def load_vocab(vocab_file): """Loads a vocabulary file into a dictionary.""" vocab = collections.OrderedDict() index = 0 with tf.gfile.GFile(vocab_file, "r") as reader: while True: token = convert_to_unicode(reader.readline()) if not token: break token = token.strip() vocab[token] = index index += 1 return vocab def convert_tokens_to_ids(vocab, tokens): """Converts a sequence of tokens into ids using the vocab.""" ids = [] for token in tokens: ids.append(vocab[token]) return ids def whitespace_tokenize(text): """Runs basic whitespace cleaning and splitting on a peice of text.""" text = text.strip() if not text: return [] tokens = text.split() return tokens class FullTokenizer(object): """Runs end-to-end tokenziation.""" def __init__(self, vocab_file, do_lower_case=True): self.vocab = load_vocab(vocab_file) self.basic_tokenizer = BasicTokenizer(do_lower_case=do_lower_case) self.wordpiece_tokenizer = WordpieceTokenizer(vocab=self.vocab) def tokenize(self, text): split_tokens = [] for token in self.basic_tokenizer.tokenize(text): for sub_token in self.wordpiece_tokenizer.tokenize(token): split_tokens.append(sub_token) return split_tokens def convert_tokens_to_ids(self, tokens): return convert_tokens_to_ids(self.vocab, tokens) class BasicTokenizer(object): """Runs basic tokenization (punctuation splitting, lower casing, etc.).""" def __init__(self, do_lower_case=True): """Constructs a BasicTokenizer. Args: do_lower_case: Whether to lower case the input. """ self.do_lower_case = do_lower_case def tokenize(self, text): """Tokenizes a piece of text.""" text = convert_to_unicode(text) text = self._clean_text(text) # This was added on November 1st, 2018 for the multilingual and Chinese # models. This is also applied to the English models now, but it doesn't # matter since the English models were not trained on any Chinese data # and generally don't have any Chinese data in them (there are Chinese # characters in the vocabulary because Wikipedia does have some Chinese # words in the English Wikipedia.). text = self._tokenize_chinese_chars(text) orig_tokens = whitespace_tokenize(text) split_tokens = [] for token in orig_tokens: if self.do_lower_case: token = token.lower() token = self._run_strip_accents(token) split_tokens.extend(self._run_split_on_punc(token)) output_tokens = whitespace_tokenize(" ".join(split_tokens)) return output_tokens def _run_strip_accents(self, text): """Strips accents from a piece of text.""" text = unicodedata.normalize("NFD", text) output = [] for char in text: cat = unicodedata.category(char) if cat == "Mn": continue output.append(char) return "".join(output) def _run_split_on_punc(self, text): """Splits punctuation on a piece of text.""" chars = list(text) i = 0 start_new_word = True output = [] while i < len(chars): char = chars[i] if _is_punctuation(char): output.append([char]) start_new_word = True else: if start_new_word: output.append([]) start_new_word = False output[-1].append(char) i += 1 return ["".join(x) for x in output] def _tokenize_chinese_chars(self, text): """Adds whitespace around any CJK character.""" output = [] for char in text: cp = ord(char) if self._is_chinese_char(cp): output.append(" ") output.append(char) output.append(" ") else: output.append(char) return "".join(output) def _is_chinese_char(self, cp): """Checks whether CP is the codepoint of a CJK character.""" # This defines a "chinese character" as anything in the CJK Unicode block: # https://en.wikipedia.org/wiki/CJK_Unified_Ideographs_(Unicode_block) # # Note that the CJK Unicode block is NOT all Japanese and Korean characters, # despite its name. The modern Korean Hangul alphabet is a different block, # as is Japanese Hiragana and Katakana. Those alphabets are used to write # space-separated words, so they are not treated specially and handled # like the all of the other languages. if ((cp >= 0x4E00 and cp <= 0x9FFF) or # (cp >= 0x3400 and cp <= 0x4DBF) or # (cp >= 0x20000 and cp <= 0x2A6DF) or # (cp >= 0x2A700 and cp <= 0x2B73F) or # (cp >= 0x2B740 and cp <= 0x2B81F) or # (cp >= 0x2B820 and cp <= 0x2CEAF) or (cp >= 0xF900 and cp <= 0xFAFF) or # (cp >= 0x2F800 and cp <= 0x2FA1F)): # return True return False def _clean_text(self, text): """Performs invalid character removal and whitespace cleanup on text.""" output = [] for char in text: cp = ord(char) if cp == 0 or cp == 0xfffd or _is_control(char): continue if _is_whitespace(char): output.append(" ") else: output.append(char) return "".join(output) class WordpieceTokenizer(object): """Runs WordPiece tokenziation.""" def __init__(self, vocab, unk_token="[UNK]", max_input_chars_per_word=100): self.vocab = vocab self.unk_token = unk_token self.max_input_chars_per_word = max_input_chars_per_word def tokenize(self, text): """Tokenizes a piece of text into its word pieces. This uses a greedy longest-match-first algorithm to perform tokenization using the given vocabulary. For example: input = "unaffable" output = ["un", "##aff", "##able"] Args: text: A single token or whitespace separated tokens. This should have already been passed through `BasicTokenizer. Returns: A list of wordpiece tokens. """ text = convert_to_unicode(text) output_tokens = [] for token in whitespace_tokenize(text): chars = list(token) if len(chars) > self.max_input_chars_per_word: output_tokens.append(self.unk_token) continue is_bad = False start = 0 sub_tokens = [] while start < len(chars): end = len(chars) cur_substr = None while start < end: substr = "".join(chars[start:end]) if start > 0: substr = "##" + substr if substr in self.vocab: cur_substr = substr break end -= 1 if cur_substr is None: is_bad = True break sub_tokens.append(cur_substr) start = end if is_bad: output_tokens.append(self.unk_token) else: output_tokens.extend(sub_tokens) return output_tokens def _is_whitespace(char): """Checks whether `chars` is a whitespace character.""" # \t, \n, and \r are technically contorl characters but we treat them # as whitespace since they are generally considered as such. if char == " " or char == "\t" or char == "\n" or char == "\r": return True cat = unicodedata.category(char) if cat == "Zs": return True return False def _is_control(char): """Checks whether `chars` is a control character.""" # These are technically control characters but we count them as whitespace # characters. if char == "\t" or char == "\n" or char == "\r": return False cat = unicodedata.category(char) if cat.startswith("C"): return True return False def _is_punctuation(char): """Checks whether `chars` is a punctuation character.""" cp = ord(char) # We treat all non-letter/number ASCII as punctuation. # Characters such as "^", "$", and "`" are not in the Unicode # Punctuation class but we treat them as punctuation anyways, for # consistency. if ((cp >= 33 and cp <= 47) or (cp >= 58 and cp <= 64) or (cp >= 91 and cp <= 96) or (cp >= 123 and cp <= 126)): return True cat = unicodedata.category(char) if cat.startswith("P"): return True return False ================================================ FILE: third/bert/tokenization_test.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tempfile import tokenization import tensorflow as tf class TokenizationTest(tf.test.TestCase): def test_full_tokenizer(self): vocab_tokens = [ "[UNK]", "[CLS]", "[SEP]", "want", "##want", "##ed", "wa", "un", "runn", "##ing", "," ] with tempfile.NamedTemporaryFile(delete=False) as vocab_writer: vocab_writer.write("".join([x + "\n" for x in vocab_tokens])) vocab_file = vocab_writer.name tokenizer = tokenization.FullTokenizer(vocab_file) os.unlink(vocab_file) tokens = tokenizer.tokenize(u"UNwant\u00E9d,running") self.assertAllEqual(tokens, ["un", "##want", "##ed", ",", "runn", "##ing"]) self.assertAllEqual( tokenizer.convert_tokens_to_ids(tokens), [7, 4, 5, 10, 8, 9]) def test_chinese(self): tokenizer = tokenization.BasicTokenizer() self.assertAllEqual( tokenizer.tokenize(u"ah\u535A\u63A8zz"), [u"ah", u"\u535A", u"\u63A8", u"zz"]) def test_basic_tokenizer_lower(self): tokenizer = tokenization.BasicTokenizer(do_lower_case=True) self.assertAllEqual( tokenizer.tokenize(u" \tHeLLo!how \n Are yoU? "), ["hello", "!", "how", "are", "you", "?"]) self.assertAllEqual(tokenizer.tokenize(u"H\u00E9llo"), ["hello"]) def test_basic_tokenizer_no_lower(self): tokenizer = tokenization.BasicTokenizer(do_lower_case=False) self.assertAllEqual( tokenizer.tokenize(u" \tHeLLo!how \n Are yoU? "), ["HeLLo", "!", "how", "Are", "yoU", "?"]) def test_wordpiece_tokenizer(self): vocab_tokens = [ "[UNK]", "[CLS]", "[SEP]", "want", "##want", "##ed", "wa", "un", "runn", "##ing" ] vocab = {} for (i, token) in enumerate(vocab_tokens): vocab[token] = i tokenizer = tokenization.WordpieceTokenizer(vocab=vocab) self.assertAllEqual(tokenizer.tokenize(""), []) self.assertAllEqual( tokenizer.tokenize("unwanted running"), ["un", "##want", "##ed", "runn", "##ing"]) self.assertAllEqual( tokenizer.tokenize("unwantedX running"), ["[UNK]", "runn", "##ing"]) def test_convert_tokens_to_ids(self): vocab_tokens = [ "[UNK]", "[CLS]", "[SEP]", "want", "##want", "##ed", "wa", "un", "runn", "##ing" ] vocab = {} for (i, token) in enumerate(vocab_tokens): vocab[token] = i self.assertAllEqual( tokenization.convert_tokens_to_ids( vocab, ["un", "##want", "##ed", "runn", "##ing"]), [7, 4, 5, 8, 9]) def test_is_whitespace(self): self.assertTrue(tokenization._is_whitespace(u" ")) self.assertTrue(tokenization._is_whitespace(u"\t")) self.assertTrue(tokenization._is_whitespace(u"\r")) self.assertTrue(tokenization._is_whitespace(u"\n")) self.assertTrue(tokenization._is_whitespace(u"\u00A0")) self.assertFalse(tokenization._is_whitespace(u"A")) self.assertFalse(tokenization._is_whitespace(u"-")) def test_is_control(self): self.assertTrue(tokenization._is_control(u"\u0005")) self.assertFalse(tokenization._is_control(u"A")) self.assertFalse(tokenization._is_control(u" ")) self.assertFalse(tokenization._is_control(u"\t")) self.assertFalse(tokenization._is_control(u"\r")) def test_is_punctuation(self): self.assertTrue(tokenization._is_punctuation(u"-")) self.assertTrue(tokenization._is_punctuation(u"$")) self.assertTrue(tokenization._is_punctuation(u"`")) self.assertTrue(tokenization._is_punctuation(u".")) self.assertFalse(tokenization._is_punctuation(u"A")) self.assertFalse(tokenization._is_punctuation(u" ")) if __name__ == "__main__": tf.test.main() ================================================ FILE: tools/dump-word-embedding.py ================================================ #!/usr/bin/env python # ============================================================================== # \file show-var-of-model.py # \author chenghuige # \date 2017-09-06 07:52:34.258312 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import melt import numpy as np from tensorflow.python import pywrap_tensorflow model_dir = sys.argv[1] checkpoint_path = melt.get_model_path(model_dir) reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) var_to_shape_map = reader.get_variable_to_shape_map() for key in var_to_shape_map: if key == 'model/embedding/embedding_kernel': print("tensor_name: ", key) print(reader.get_tensor(key)) np.save('word-embedding.npy', reader.get_tensor(key)) ================================================ FILE: tools/show-var-of-model.py ================================================ #!/usr/bin/env python # ============================================================================== # \file show-var-of-model.py # \author chenghuige # \date 2017-09-06 07:52:34.258312 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import melt from tensorflow.python import pywrap_tensorflow model_dir = sys.argv[1] var_name = sys.argv[2] checkpoint_path = melt.get_model_path(model_dir) reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) var_to_shape_map = reader.get_variable_to_shape_map() for key in var_to_shape_map: if var_name in key: print("tensor_name: ", key) print(reader.get_tensor(key)) ================================================ FILE: utils/README.md ================================================ gezi common lib melt tf related lele torch related ================================================ FILE: utils/gezi/__init__.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-15 16:32:00.341661 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from gezi.timer import * from gezi.nowarning import * from gezi.gezi_util import * from gezi.avg_score import * from gezi.zhtools import * from gezi.util import * from gezi.rank_metrics import * from gezi.topn import * from gezi.vocabulary import Vocabulary from gezi.word_counter import WordCounter from gezi.ngram import * from gezi.hash import * import warnings warnings.simplefilter("ignore", RuntimeWarning) warnings.filterwarnings("ignore", category=FutureWarning) #if using baidu segmentor set encoding='gbk' encoding='utf8' #encoding='gbk' try: import matplotlib matplotlib.use('Agg') except Exception: pass from gezi.summary import SummaryWriter import traceback from gezi.segment import * #try: # from gezi.libgezi_util import * # import gezi.libgezi_util as libgezi_util # from gezi.segment import * # import gezi.bigdata_util #except Exception: # print(traceback.format_exc(), file=sys.stderr) # print('import libgezi, segment bigdata_util fail') # #try: # from gezi.pydict import * #except Exception: # #print(traceback.format_exc(), file=sys.stderr) # #print('import pydict fail') # pass try: from gezi.libgezi_util import * except Exception: print(traceback.format_exc(), file=sys.stderr) try: import gezi.metrics except Exception: print(traceback.format_exc(), file=sys.stderr) try: import gezi.melt from gezi.melt import * except Exception: print(traceback.format_exc(), file=sys.stderr) ================================================ FILE: utils/gezi/avg_score.py ================================================ #!/usr/bin/env python # ============================================================================== # \file avg_loss.py # \author chenghuige # \date 2016-08-17 12:01:41.003969 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function class AvgScore(): """ Calcuatlate avg scores, input can be single value or list Not using numpy, so may be much slower then numpy version, now mainly used for tensorflow testers """ def __init__(self): self.reset() def reset(self): self.num_steps = 0 self.total_score = 0. self.total_scores = None def add(self, score): if isinstance(score, list): if self.total_scores is None: self.total_scores = score else: self.total_scores =[sum(x) for x in zip(self.total_scores, score)] else: self.total_score += score self.num_steps += 1 #@property def avg_score(self): if self.total_scores is None: avg_score_ = self.total_score / self.num_steps else: avg_score_ = [x / self.num_steps for x in self.total_scores] self.reset() return avg_score_ ================================================ FILE: utils/gezi/bigdata_util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file bigdata_util.py # \author chenghuige # \date 2016-08-26 17:43:05.542995 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #@TODO glob and tf.GFile.Glob diff? import sys import glob as local_glob try: import pyhdfs except Exception: pass HDFS_START = 'hdfs://' #@TODO config ? NODE_ADDRESS = '' NODE_PORT = 54310 USER_NAME = '' USE_PASSWORD = '' START_DIR='/app/' handle = None def init(): global handle if handle is None: handle = pyhdfs.hdfsConnectAsUser(NODE_ADDRESS, NODE_PORT, USER_NAME, USE_PASSWORD) return handle def get_handle(): init() return handle def fullpath(path): return '{}{}:{}/{}'.format(HDFS_START, NODE_ADDRESS, NODE_PORT, path) def glob(file_pattern): """ @depreciated Now I only find pyhdfs.hdfsListDirectory, @TODO support hdfsGlob """ if file_pattern.startswith(HDFS_START): handle = get_handle() # hdfs:// return pyhdfs.hdfsListDirectory(handle, file_pattern) elif file_pattern.startswith(START_DIR): handle = get_handle() # /app/tuku/.. result, num = pyhdfs.hdfsListDirectory(handle, fullpath(file_pattern)) return [item.mName for item in [pyhdfs.hdfsFileInfo_getitem(result, i) for i in xrange(num)] if item.mSize > 0] return local_glob.glob(file_pattern) def hdfs_listdir(dir): #now only support listdir not glob handle = get_handle() result, num = pyhdfs.hdfsListDirectory(handle, fullpath(dir)) final_result = [item.mName for item in [pyhdfs.hdfsFileInfo_getitem(result, i) for i in xrange(num)] if item.mSize > 0] print('ori result num:{}, final result num:{}'.format(num, len(final_result)), file=sys.stderr) return final_result import gezi def list_files(input): """ @TODO support hdfsGlob """ if not input: return [] local_files = gezi.list_files(input) if local_files: return local_files if not input.startswith(START_DIR): return [] #now only support listdir not glob return hdfs_listdir(input) def is_remote_path(path): return path.startswith(START_DIR) ================================================ FILE: utils/gezi/bleu.py ================================================ #!/usr/bin/python #http://www.cs.cmu.edu/afs/cs/project/cmt-55/lti/Courses/731/homework/HW7/moses/scripts/training/cmert-0.5/bleu.py # $Id: bleu.py 1307 2007-03-14 22:22:36Z hieuhoang1972 $ '''Provides: cook_refs(refs, n=4): Transform a list of reference sentences as strings into a form usable by cook_test(). cook_test(test, refs, n=4): Transform a test sentence as a string (together with the cooked reference sentences) into a form usable by score_cooked(). score_cooked(alltest, n=4): Score a list of cooked test sentences. score_set(s, testid, refids, n=4): Interface with dataset.py; calculate BLEU score of testid against refids. The reason for breaking the BLEU computation into three phases cook_refs(), cook_test(), and score_cooked() is to allow the caller to calculate BLEU scores for multiple test sets as efficiently as possible. ''' import optparse import sys, math, re, xml.sax.saxutils sys.path.append('/fs/clip-mteval/Programs/hiero') import dataset import log # Added to bypass NIST-style pre-processing of hyp and ref files -- wade nonorm = 0 preserve_case = False eff_ref_len = "shortest" normalize1 = [ ('', ''), # strip "skipped" tags (r'-\n', ''), # strip end-of-line hyphenation and join lines (r'\n', ' '), # join lines # (r'(\d)\s+(?=\d)', r'\1'), # join digits ] normalize1 = [(re.compile(pattern), replace) for (pattern, replace) in normalize1] normalize2 = [ (r'([\{-\~\[-\` -\&\(-\+\:-\@\/])',r' \1 '), # tokenize punctuation. apostrophe is missing (r'([^0-9])([\.,])',r'\1 \2 '), # tokenize period and comma unless preceded by a digit (r'([\.,])([^0-9])',r' \1 \2'), # tokenize period and comma unless followed by a digit (r'([0-9])(-)',r'\1 \2 ') # tokenize dash when preceded by a digit ] normalize2 = [(re.compile(pattern), replace) for (pattern, replace) in normalize2] def normalize(s): '''Normalize and tokenize text. This is lifted from NIST mteval-v11a.pl.''' # Added to bypass NIST-style pre-processing of hyp and ref files -- wade if (nonorm): return s.split() if type(s) is not str: s = " ".join(s) # language-independent part: for (pattern, replace) in normalize1: s = re.sub(pattern, replace, s) s = xml.sax.saxutils.unescape(s, {'"':'"'}) # language-dependent part (assuming Western languages): s = " %s " % s if not preserve_case: s = s.lower() # this might not be identical to the original for (pattern, replace) in normalize2: s = re.sub(pattern, replace, s) return s.split() def count_ngrams(words, n=4): counts = {} for k in xrange(1,n+1): for i in xrange(len(words)-k+1): ngram = tuple(words[i:i+k]) counts[ngram] = counts.get(ngram, 0)+1 return counts def cook_refs(refs, n=4): '''Takes a list of reference sentences for a single segment and returns an object that encapsulates everything that BLEU needs to know about them.''' refs = [normalize(ref) for ref in refs] maxcounts = {} for ref in refs: counts = count_ngrams(ref, n) for (ngram,count) in counts.iteritems(): maxcounts[ngram] = max(maxcounts.get(ngram,0), count) return ([len(ref) for ref in refs], maxcounts) def cook_test(test, (reflens, refmaxcounts), n=4): '''Takes a test sentence and returns an object that encapsulates everything that BLEU needs to know about it.''' test = normalize(test) result = {} result["testlen"] = len(test) # Calculate effective reference sentence length. if eff_ref_len == "shortest": result["reflen"] = min(reflens) elif eff_ref_len == "average": result["reflen"] = float(sum(reflens))/len(reflens) elif eff_ref_len == "closest": min_diff = None for reflen in reflens: if min_diff is None or abs(reflen-len(test)) < min_diff: min_diff = abs(reflen-len(test)) result['reflen'] = reflen result["guess"] = [max(len(test)-k+1,0) for k in xrange(1,n+1)] result['correct'] = [0]*n counts = count_ngrams(test, n) for (ngram, count) in counts.iteritems(): result["correct"][len(ngram)-1] += min(refmaxcounts.get(ngram,0), count) return result def score_cooked(allcomps, n=4): totalcomps = {'testlen':0, 'reflen':0, 'guess':[0]*n, 'correct':[0]*n} for comps in allcomps: for key in ['testlen','reflen']: totalcomps[key] += comps[key] for key in ['guess','correct']: for k in xrange(n): totalcomps[key][k] += comps[key][k] logbleu = 0.0 for k in xrange(n): if totalcomps['correct'][k] == 0: return 0.0 log.write("%d-grams: %f\n" % (k,float(totalcomps['correct'][k])/totalcomps['guess'][k])) logbleu += math.log(totalcomps['correct'][k])-math.log(totalcomps['guess'][k]) logbleu /= float(n) log.write("Effective reference length: %d test length: %d\n" % (totalcomps['reflen'], totalcomps['testlen'])) logbleu += min(0,1-float(totalcomps['reflen'])/totalcomps['testlen']) return math.exp(logbleu) def score_set(set, testid, refids, n=4): alltest = [] for seg in set.segs(): try: test = seg.versions[testid].words except KeyError: log.write("Warning: missing test sentence\n") continue try: refs = [seg.versions[refid].words for refid in refids] except KeyError: log.write("Warning: missing reference sentence, %s\n" % seg.id) refs = cook_refs(refs, n) alltest.append(cook_test(test, refs, n)) log.write("%d sentences\n" % len(alltest)) return score_cooked(alltest, n) if __name__ == "__main__": import psyco psyco.full() import getopt raw_test = False (opts,args) = getopt.getopt(sys.argv[1:], "rc", []) for (opt,parm) in opts: if opt == "-r": raw_test = True elif opt == "-c": preserve_case = True s = dataset.Dataset() if args[0] == '-': infile = sys.stdin else: infile = args[0] if raw_test: (root, testids) = s.read_raw(infile, docid='whatever', sysid='testsys') else: (root, testids) = s.read(infile) print "Test systems: %s" % ", ".join(testids) (root, refids) = s.read(args[1]) print "Reference systems: %s" % ", ".join(refids) for testid in testids: print "BLEU score: ", score_set(s, testid, refids) ================================================ FILE: utils/gezi/gezi_util.py ================================================ from __future__ import absolute_import from __future__ import division from __future__ import print_function import time import sys, os from collections import defaultdict def gprint(convert2utf8, *content): if convert2utf8: print(' '.join([toutf8(str(x)) for x in content])) else: print(' '.join([str(x) for x in content])) def uprint(*content): print(' '.join([toutf8(str(x)) for x in content])) def toutf8(content): return content.decode('gbk', 'ignore').encode('utf8', 'ignore') def togbk(content): return content.decode('utf8', 'ignore').encode('gbk', 'ignore') from datetime import datetime def now_time(): return datetime.now().strftime('%Y-%m-%d %H:%M:%S') def get_timestr(stamp): ttime = stamp try: ttime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(stamp)) except Exception: pass return ttime def get_datestr(stamp): ttime = stamp try: ttime = time.strftime('%Y-%m-%d 00:00:00', time.localtime(stamp)) except Exception: pass return ttime def pretty_print(df): from StringIO import StringIO import prettytable output = StringIO() df.to_csv(output, index = False, sep ='\t') output.seek(0) pt = prettytable.from_csv(output) print(pt) def print_list(l, sep='|'): for item in l: print(item, sep, end='') print() def get_words(l, ngram, sep = '\x01'): li = [] for i in range(len(l)): for j in range(ngram): if (i + j >= len(l)): continue li.append(sep.join(l[i : i + j + 1])) return li def get_ngram_words(l, ngram, sep = '\x01'): li = [] for i in range(len(l)): for j in range(ngram): if (i + j >= len(l)): continue li.append(sep.join(l[i : i + j + 1])) return li #@TODO generalized skip n now only skip-n bigram #skip 1 2 3 4 def get_skipn_bigram(l, n, sep = '\x01'): li = [] l2 = ['0', '0'] for i in range(len(l) - 1 - n): l2[0] = l[i] l2[1] = l[i + 1 + n] li.append(sep.join(l2)) return li def get_skipn_bigram(l, li, n, sep = '\x01'): l2 = ['0', '0'] for i in range(len(l) - 1 - n): l2[0] = l[i] l2[1] = l[i + 1 + n] li.append(sep.join(l2)) def get_skip_bigram(l, li, n, sep = '\x01'): for skip in range(1, n): get_skipn_bigram(l, li, skip, sep) def h2o(x): if isinstance(x, dict): return type('jo', (), {k: h2o(v) for k, v in x.iteritems()}) elif isinstance(x, list): return [h2o(item) for item in x] else: return x def h2o2(x): if isinstance(x, dict): return type('jo', (), {k: h2o2(v) for k, v in x.iteritems()}) elif isinstance(x, list): return type('jo', (), {"value" + str(idx): h2o2(val) for idx, val in enumerate(x)}) else: return x def json2obj(s): import json a = h2o(json.loads(s)) if hasattr(a, 'data'): return a.data return a def json2obj2(s): import json a = h2o2(json.loads(s)) if hasattr(a, 'data'): return a.data return a def jsonfile2obj(path): return json2obj(open(path).read().decode('gbk', 'ignore')) def jsonfile2obj2(path): return json2obj2(open(path).read().decode('gbk','ignore')) def xmlfile2obj(path): import xmltodict doc = xmltodict.parse(open(path), process_namespaces=True) a = h2o2(doc) if hasattr(a, 'cereal'): return a.cereal.data return a def xmlfile2obj2(path): import xmltodict doc = xmltodict.parse(open(path), process_namespaces=True) a = h2o2(doc) if hasattr(a, 'cereal'): return a.cereal.data return a #from matplotlib.pylab import show #def show(s = 'temp.png'): # import matplotlib.pylab as pl # pl.savefig(s) #from matplotlib.pylab import clf def dict2map(dict_, map_): for key,value in dict_.items(): map_[key] = value def map2dict(map_): dict_ = {} for item in map_: dict_[item.key] = item.data return dict_ def list2vec(list_, vec_): for item in list_: vec_.append(item) def list2vector(list_, vec_): for item in list_: vec_.push_back(item) def vec2list(vec_): list_ = [] for item in vec_: list_.append(item) return list_ def vector2list(vec_): list_ = [] for i in xrange(vec_.size()): list_.append(vec_[i]) return list_ def get_filepaths(directory): """ This function will generate the file names in a directory tree by walking the tree either top-down or bottom-up. For each directory in the tree rooted at directory top (including top itself), it yields a 3-tuple (dirpath, dirnames, filenames). """ file_paths = [] # List which will store all of the full filepaths. # Walk the tree. for root, directories, files in os.walk(directory): for filename in files: # Join the two strings in order to form the full filepath. filepath = os.path.join(root, filename) file_paths.append(filepath) # Add it to the list. return file_paths # Self-explanatory. def get_num_lines(file): count = 0 for count, line in enumerate(open(file)): pass return count + 1 ================================================ FILE: utils/gezi/hash.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file hash.py # \author chenghuige # \date 2018-04-28 12:04:55.557328 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import hashlib import six import numpy as np def hash_str(input): if not six.PY2: return hex(int(hashlib.sha256(input.encode('utf8')).hexdigest(), 16) % sys.maxsize)[2:] else: # ignore last L return hex(int(hashlib.sha256(input.encode('utf8')).hexdigest(), 16) % sys.maxsize)[2:-1] # NOTICE ! fasttext use uint32_t ! def fasttext_hash(word): h = 2166136261 for w in word: h = np.uint32(h ^ ord(w)) h = np.uint32(h * 16777619) return h hash = fasttext_hash ================================================ FILE: utils/gezi/libgezi_util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file libgezi_util.py # \author chenghuige # \date 2016-08-25 21:08:23.051951 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import six import gezi.nowarning import os """ @TODO gezi should remove boost.python dependence now has libgezi_util and segment depend on boost.python """ #@FIXME this might casue double free at the end, conflict with numpy in virutal env import gezi chnormalizer = None def to_simplify_(sentence): assert six.PY2 global chnormalizer import libchnormalizer if not chnormalizer: path = '/home/gezi/soft/bseg/data/ccode/' if not os.path.exists(path): path = './data/ccode' chnormalizer = libchnormalizer.ChNormalizer() chnormalizer.Load(path) return chnormalizer.ToSimplified(sentence.decode('utf8', 'ignore').encode('gbk', 'ignore')).decode('gbk', 'ignore').encode('utf8', 'ignore') def to_simplify(sentence): assert six.PY2 global chnormalizer import libchnormalizer if not chnormalizer: path = '/home/gezi/soft/bseg/data/ccode/' if not os.path.exists(path): path = './data/ccode' chnormalizer = libchnormalizer.ChNormalizer() chnormalizer.Load(path) res = [] l = [] sentence = sentence.decode('utf8') for ch in sentence: try: gbk_ch = ch.encode('gbk') l.append(gbk_ch) except Exception: if l: chs = chnormalizer.ToSimplified(''.join(l)).decode('gbk').encode('utf8') l = [] res.append(chs) res.append(ch.encode('utf8')) if l: chs = chnormalizer.ToSimplified(''.join(l)).decode('gbk').encode('utf8') res.append(chs) return ''.join(res) def normalize_(sentence, to_lower=True, to_simplify=True, to_half=True): assert six.PY2 global chnormalizer import libchnormalizer if not chnormalizer: path = '/home/gezi/soft/bseg/data/ccode/' if not os.path.exists(path): path = './data/ccode' chnormalizer = libchnormalizer.ChNormalizer() chnormalizer.Load(path) return chnormalizer.Normalize(sentence.decode('utf8', 'ignore').encode('gbk', 'ignore'), toLower=to_lower, toSimplified=to_simplify, toHalf=to_half).decode('gbk', 'ignore').encode('utf8', 'ignore') def normalize(sentence, to_lower=True, to_simplify=True, to_half=True): assert six.PY2 global chnormalizer import libchnormalizer if not chnormalizer: path = '/home/gezi/soft/bseg/data/ccode/' if not os.path.exists(path): path = './data/ccode' chnormalizer = libchnormalizer.ChNormalizer() chnormalizer.Load(path) res = [] l = [] sentence = sentence.decode('utf8') for ch in sentence: try: gbk_ch = ch.decode('utf8').encode('gbk') l.append(gbk_ch) except Exception: if l: chs = chnormalizer.Normalize(''.join(l), toLower=to_lower, toSimplified=to_simplify, toHalf=to_half).decode('gbk').encode('utf8') l = [] res.append(chs) res.append(ch.encode('utf8')) if l: chs = chnormalizer.Normalize(''.join(l), toLower=to_lower, toSimplified=to_simplify, toHalf=to_half).decode('gbk').encode('utf8') res.append(chs) return ''.join(res) if gezi.encoding == 'gbk' or gezi.env_has('BAIDU_SEG'): import libgezi # must include this not sure why.. import libstring_util as su def get_single_cns(text): return su.to_cnvec(su.extract_chinese(text)) def is_single_cn(word): word = word.decode('gbk', 'ignore') return u'\u4e00' <= word <= u'\u9fff' def get_single_chars(text): l = [x.encode('gbk') for x in text.decode('gbk', 'ignore')] return [x.strip() for x in l if x.strip()] else: def get_single_cns(text): l = [] pre_is_cn = False if six.PY2: text = text.decode('utf-8', 'ignore') for word in text: if u'\u4e00' <= word <= u'\u9fff': pre_is_cn = True if l: l.append(' ') else: if pre_is_cn: l.append(' ') pre_is_cn = False if pre_is_cn: l.append(word) text = ''.join(l) if six.PY2: text = text.encode('utf-8') l = text.split() return [x.strip() for x in l if x.strip()] def is_cn(word): if six.PY2: word = word.decode('utf-8', 'ignore') return u'\u4e00' <= word <= u'\u9fff' def is_single_cn(word): return len(get_single_cns(word)) == 1 def get_single_chars(text): if six.PY2: l = [x.encode('utf8') for x in text.decode('utf8', 'ignore')] else: l = [x for x in text] return [x.strip() for x in l if x.strip()] ================================================ FILE: utils/gezi/melt/__init__.py ================================================ import gezi.melt.tfrecords from gezi.melt.util import * import gezi.melt.logging ================================================ FILE: utils/gezi/melt/logging.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file logging.py # \author chenghuige # \date 2016-09-24 09:25:56.796006 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function # import tensorflow as tf # flags = tf.app.flags # FLAGS = flags.FLAGS import sys import logging import logging.handlers import gezi _logger = logging.getLogger('melt') _logger2 = logging.getLogger('melt2') #_handler = logging.StreamHandler() #_handler.setLevel(logging.INFO) #_handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) #_logger.addHandler(_handler) #_logger.setLevel(logging.INFO) log = _logger.log #debug = _logger.debug #error = _logger.error #fatal = _logger.fatal #info = _logger.info #warn = _logger.warn #warning = _logger.warning #info2 = _logger2.info hvd = None def set_hvd(hvd_): global hvd hvd = hvd_ def info(*args): if not hvd or hvd.rank() == 0: _logger.info(' '.join("{}".format(a) for a in args)) def info2(*args): if not hvd or hvd.rank() == 0: _logger2.info(' '.join("{}".format(a) for a in args)) def fatal(*args): if not hvd or hvd.rank() == 0: _logger.fatal(' '.join("{}".format(a) for a in args)) def error(*args): if not hvd or hvd.rank() == 0: _logger.error(' '.join("{}".format(a) for a in args)) def debug(*args): if not hvd or hvd.rank() == 0: _logger.debug(' '.join("{}".format(a) for a in args)) def warn(*args): if not hvd or hvd.rank() == 0: _logger.warn(' '.join("{}".format(a) for a in args)) def warning(*args): if not hvd or hvd.rank() == 0: _logger.warning('WARNING: %s' % (' '.join("{}".format(a) for a in args))) from datetime import timedelta import time class ElapsedFormatter(): def __init__(self): self.start_time = time.time() def format(self, record): elapsed_seconds = record.created - self.start_time #using timedelta here for convenient default formatting elapsed = timedelta(seconds = elapsed_seconds) return "{} {} {}".format(gezi.now_time(), str(elapsed)[:-7], record.getMessage()) _logging_file = None _logging_file2 = None def _get_handler(file, formatter, split=True, split_bytime=False, mode = 'a', level=logging.INFO): #setting below will set root logger write to _logging_file #logging.basicConfig(filename=_logging_file, level=level, format=None) #logging.basicConfig(filename=_logging_file, level=level) #save one per 1024k/4, save at most 10G 1024 if split: if not split_bytime: file_handler = logging.handlers.RotatingFileHandler(file, mode=mode, maxBytes=1024*1024/4, backupCount=10240*4) else: file_handler = logging.handlers.TimedRotatingFileHandler(file, when='H', interval=1, backupCount=1024) file_handler.suffix = "%Y%m%d-%H%M" else: file_handler = logging.FileHandler(_logging_file, mode=mode) file_handler.setLevel(level) file_handler.setFormatter(formatter) return file_handler def set_dir(path, file='log.html', logtostderr=True, logtofile=True, split=True, split_bytime=False, level=logging.INFO, mode='a'): global _logger, _logging_file if _logging_file is None: if not path: path = '/tmp/' _logging_file = '%s/%s'%(path, file) _logging_file2 = '%s/log.txt'%path #formatter = logging.Formatter("%(asctime)s %(message)s", # "%Y-%m-%d %H:%M:%S") formatter = ElapsedFormatter() if logtofile: gezi.try_mkdir(path) file_handler = _get_handler(_logging_file, formatter, split, split_bytime, mode, level) file_handler2 = _get_handler(_logging_file2, formatter, split, True, mode, level) #file_handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) _logger.addHandler(file_handler) _logger2.addHandler(file_handler2) if logtostderr: handler = logging.StreamHandler() handler.setLevel(logging.INFO) handler.setFormatter(formatter) #handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) _logger.addHandler(handler) _logger2.addHandler(handler) # some how new tf cause to logg twice.. # https://stackoverflow.com/questions/19561058/duplicate-output-in-simple-python-logging-configuration _logger.propagate = False _logger2.propagate = False _logger.setLevel(level) _logger2.setLevel(level) def init(path, file='log.html', logtostderr=True, logtofile=True, split=True, split_bytime=False, level=logging.INFO, mode='a'): #logging.basicConfig(level=logging.INFO, stream=sys.stdout) set_dir(path=path, mode=mode, file=file, logtostderr=logtostderr, logtofile=logtofile, split=split, split_bytime=split_bytime, level=level) def vlog(level, msg, *args, **kwargs): _logger.log(level, msg, *args, **kwargs) def get_verbosity(): """Return how much logging output will be produced.""" return _logger.getEffectiveLevel() def set_verbosity(verbosity): """Sets the threshold for what messages will be logged.""" _logger.setLevel(verbosity) def get_logging_file(): return _logging_file ================================================ FILE: utils/gezi/melt/tfrecords.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file tfrecords.py # \author chenghuige # \date 2018-10-17 13:36:30.235928 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import random class Writer(object): def __init__(self, file, buffer_size=None): import tensorflow as tf random.seed(12345) self.count = 0 self.buffer_size = buffer_size self.writer = tf.python_io.TFRecordWriter(file) self.buffer = [] if self.buffer_size else None def __del__(self): #print('del writer', file=sys.stderr) self.close() def __enter__(self): return self def __exit__(self, exc_type, exc_value, traceback): #print('close writer', file=sys.stderr) self.close() def close(self): if self.buffer: random.shuffle(self.buffer) for example in self.buffer: self.writer.write(example.SerializeToString()) self.buffer = [] def finalize(self): self.close() def write(self, example): self.count += 1 if self.buffer is not None: self.buffer.append(example) if len(self.buffer) >= self.buffer_size: random.shuffle(self.buffer) for example in self.buffer: self.writer.write(example.SerializeToString()) self.buffer = [] else: self.writer.write(example.SerializeToString()) def size(self): return self.count ================================================ FILE: utils/gezi/melt/util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file melt_light.py # \author chenghuige # \date 2018-10-17 13:24:31.571379 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import six def int_feature(value): import tensorflow as tf if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) def int64_feature(value): import tensorflow as tf if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) def bytes_feature(value): import tensorflow as tf if not isinstance(value, (list,tuple)): value = [value] if not six.PY2: if isinstance(value[0], str): value = [x.encode() for x in value] return tf.train.Feature(bytes_list=tf.train.BytesList(value=value)) def float_feature(value): import tensorflow as tf if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(float_list=tf.train.FloatList(value=value)) features = lambda d: tf.train.Features(feature=d) # Helpers for creating SequenceExample objects copy from \tensorflow\python\kernel_tests\parsing_ops_test.py feature_list = lambda l: tf.train.FeatureList(feature=l) feature_lists = lambda d: tf.train.FeatureLists(feature_list=d) def int64_feature_list(values): import tensorflow as tf """Wrapper for inserting an int64 FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[int64_feature(v) for v in values]) def bytes_feature_list(values): import tensorflow as tf """Wrapper for inserting a bytes FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[bytes_feature(v) for v in values]) def float_feature_list(values): import tensorflow as tf """Wrapper for inserting a bytes FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[float_feature(v) for v in values]) ================================================ FILE: utils/gezi/metrics/README.md ================================================ from https://github.com/tylin/coco-caption/tree/master/pycocoevalcap new_cider and ciderD from https://github.com/vrama91/cider cp -rf ~/other/cider/pyciderevalcap/cider new_cider cp -rf ~/other/cider/pyciderevalcap/ciderD/ . ================================================ FILE: utils/gezi/metrics/__init__.py ================================================ __author__ = 'tylin' import gezi.metrics.bleu import gezi.metrics.cider import gezi.metrics.meteor import gezi.metrics.rouge import gezi.metrics.tokenizer from gezi.metrics.bleu import * from gezi.metrics.cider import * ##TODO cider with global df as generated before so can calc cider for single image ##may improve small batch cider performance #from gezi.metrics.new_cider import * from gezi.metrics.meteor import * from gezi.metrics.rouge import * from gezi.metrics.tokenizer import * import gezi.metrics.correlation ================================================ FILE: utils/gezi/metrics/bleu/LICENSE ================================================ Copyright (c) 2015 Xinlei Chen, Hao Fang, Tsung-Yi Lin, and Ramakrishna Vedantam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: utils/gezi/metrics/bleu/__init__.py ================================================ __author__ = 'tylin' from gezi.metrics.bleu.bleu import Bleu ================================================ FILE: utils/gezi/metrics/bleu/bleu.py ================================================ #!/usr/bin/env python # # File Name : bleu.py # # Description : Wrapper for BLEU scorer. # # Creation Date : 06-01-2015 # Last Modified : Thu 19 Mar 2015 09:13:28 PM PDT # Authors : Hao Fang and Tsung-Yi Lin from .bleu_scorer import BleuScorer class Bleu: def __init__(self, n=4): # default compute Blue score up to 4 self._n = n self._hypo_for_image = {} self.ref_for_image = {} def compute_score(self, gts, res): assert(gts.keys() == res.keys()) imgIds = gts.keys() bleu_scorer = BleuScorer(n=self._n) for id in imgIds: hypo = res[id] ref = gts[id] # Sanity check. assert(type(hypo) is list) assert(len(hypo) == 1) assert(type(ref) is list) assert(len(ref) >= 1) bleu_scorer += (hypo[0], ref) #score, scores = bleu_scorer.compute_score(option='shortest') #score, scores = bleu_scorer.compute_score(option='closest', verbose=1) score, scores = bleu_scorer.compute_score(option='closest', verbose=0) #score, scores = bleu_scorer.compute_score(option='average', verbose=1) # return (bleu, bleu_info) return score, scores def method(self): return "Bleu" ================================================ FILE: utils/gezi/metrics/bleu/bleu_scorer.py ================================================ #!/usr/bin/env python # bleu_scorer.py # David Chiang # Copyright (c) 2004-2006 University of Maryland. All rights # reserved. Do not redistribute without permission from the # author. Not for commercial use. # Modified by: # Hao Fang # Tsung-Yi Lin '''Provides: cook_refs(refs, n=4): Transform a list of reference sentences as strings into a form usable by cook_test(). cook_test(test, refs, n=4): Transform a test sentence as a string (together with the cooked reference sentences) into a form usable by score_cooked(). ''' import copy import sys, math, re from collections import defaultdict def precook(s, n=4, out=False): """Takes a string as input and returns an object that can be given to either cook_refs or cook_test. This is optional: cook_refs and cook_test can take string arguments as well.""" words = s.split() counts = defaultdict(int) for k in xrange(1,n+1): for i in xrange(len(words)-k+1): ngram = tuple(words[i:i+k]) counts[ngram] += 1 return (len(words), counts) def cook_refs(refs, eff=None, n=4): ## lhuang: oracle will call with "average" '''Takes a list of reference sentences for a single segment and returns an object that encapsulates everything that BLEU needs to know about them.''' reflen = [] maxcounts = {} for ref in refs: rl, counts = precook(ref, n) reflen.append(rl) for (ngram,count) in counts.iteritems(): maxcounts[ngram] = max(maxcounts.get(ngram,0), count) # Calculate effective reference sentence length. if eff == "shortest": reflen = min(reflen) elif eff == "average": reflen = float(sum(reflen))/len(reflen) ## lhuang: N.B.: leave reflen computaiton to the very end!! ## lhuang: N.B.: in case of "closest", keep a list of reflens!! (bad design) return (reflen, maxcounts) def cook_test(test, l, eff=None, n=4): '''Takes a test sentence and returns an object that encapsulates everything that BLEU needs to know about it.''' (reflen, refmaxcounts) = l testlen, counts = precook(test, n, True) result = {} # Calculate effective reference sentence length. if eff == "closest": result["reflen"] = min((abs(l-testlen), l) for l in reflen)[1] else: ## i.e., "average" or "shortest" or None result["reflen"] = reflen result["testlen"] = testlen result["guess"] = [max(0,testlen-k+1) for k in xrange(1,n+1)] result['correct'] = [0]*n for (ngram, count) in counts.iteritems(): result["correct"][len(ngram)-1] += min(refmaxcounts.get(ngram,0), count) return result class BleuScorer(object): """Bleu scorer. """ __slots__ = "n", "crefs", "ctest", "_score", "_ratio", "_testlen", "_reflen", "special_reflen" # special_reflen is used in oracle (proportional effective ref len for a node). def copy(self): ''' copy the refs.''' new = BleuScorer(n=self.n) new.ctest = copy.copy(self.ctest) new.crefs = copy.copy(self.crefs) new._score = None return new def __init__(self, test=None, refs=None, n=4, special_reflen=None): ''' singular instance ''' self.n = n self.crefs = [] self.ctest = [] self.cook_append(test, refs) self.special_reflen = special_reflen def cook_append(self, test, refs): '''called by constructor and __iadd__ to avoid creating new instances.''' if refs is not None: self.crefs.append(cook_refs(refs)) if test is not None: cooked_test = cook_test(test, self.crefs[-1]) self.ctest.append(cooked_test) ## N.B.: -1 else: self.ctest.append(None) # lens of crefs and ctest have to match self._score = None ## need to recompute def ratio(self, option=None): self.compute_score(option=option) return self._ratio def score_ratio(self, option=None): '''return (bleu, len_ratio) pair''' return (self.fscore(option=option), self.ratio(option=option)) def score_ratio_str(self, option=None): return "%.4f (%.2f)" % self.score_ratio(option) def reflen(self, option=None): self.compute_score(option=option) return self._reflen def testlen(self, option=None): self.compute_score(option=option) return self._testlen def retest(self, new_test): if type(new_test) is str: new_test = [new_test] assert len(new_test) == len(self.crefs), new_test self.ctest = [] for t, rs in zip(new_test, self.crefs): self.ctest.append(cook_test(t, rs)) self._score = None return self def rescore(self, new_test): ''' replace test(s) with new test(s), and returns the new score.''' return self.retest(new_test).compute_score() def size(self): assert len(self.crefs) == len(self.ctest), "refs/test mismatch! %d<>%d" % (len(self.crefs), len(self.ctest)) return len(self.crefs) def __iadd__(self, other): '''add an instance (e.g., from another sentence).''' if type(other) is tuple: ## avoid creating new BleuScorer instances self.cook_append(other[0], other[1]) else: assert self.compatible(other), "incompatible BLEUs." self.ctest.extend(other.ctest) self.crefs.extend(other.crefs) self._score = None ## need to recompute return self def compatible(self, other): return isinstance(other, BleuScorer) and self.n == other.n def single_reflen(self, option="average"): return self._single_reflen(self.crefs[0][0], option) def _single_reflen(self, reflens, option=None, testlen=None): if option == "shortest": reflen = min(reflens) elif option == "average": reflen = float(sum(reflens))/len(reflens) elif option == "closest": reflen = min((abs(l-testlen), l) for l in reflens)[1] else: assert False, "unsupported reflen option %s" % option return reflen def recompute_score(self, option=None, verbose=0): self._score = None return self.compute_score(option, verbose) def compute_score(self, option=None, verbose=0): n = self.n small = 1e-9 tiny = 1e-15 ## so that if guess is 0 still return 0 bleu_list = [[] for _ in range(n)] if self._score is not None: return self._score if option is None: option = "average" if len(self.crefs) == 1 else "closest" self._testlen = 0 self._reflen = 0 totalcomps = {'testlen':0, 'reflen':0, 'guess':[0]*n, 'correct':[0]*n} # for each sentence for comps in self.ctest: testlen = comps['testlen'] self._testlen += testlen if self.special_reflen is None: ## need computation reflen = self._single_reflen(comps['reflen'], option, testlen) else: reflen = self.special_reflen self._reflen += reflen for key in ['guess','correct']: for k in xrange(n): totalcomps[key][k] += comps[key][k] # append per image bleu score bleu = 1. for k in xrange(n): bleu *= (float(comps['correct'][k]) + tiny) \ /(float(comps['guess'][k]) + small) bleu_list[k].append(bleu ** (1./(k+1))) ratio = (testlen + tiny) / (reflen + small) ## N.B.: avoid zero division if ratio < 1: for k in xrange(n): bleu_list[k][-1] *= math.exp(1 - 1/ratio) if verbose > 1: print(comps, reflen) totalcomps['reflen'] = self._reflen totalcomps['testlen'] = self._testlen bleus = [] bleu = 1. for k in xrange(n): bleu *= float(totalcomps['correct'][k] + tiny) \ / (totalcomps['guess'][k] + small) bleus.append(bleu ** (1./(k+1))) ratio = (self._testlen + tiny) / (self._reflen + small) ## N.B.: avoid zero division if ratio < 1: for k in xrange(n): bleus[k] *= math.exp(1 - 1/ratio) if verbose > 0: print(totalcomps) print("ratio:", ratio) self._score = bleus return self._score, bleu_list ================================================ FILE: utils/gezi/metrics/cider/__init__.py ================================================ __author__ = 'tylin' from gezi.metrics.cider.cider import Cider ================================================ FILE: utils/gezi/metrics/cider/cider.py ================================================ # Filename: cider.py # # Description: Describes the class to compute the CIDEr (Consensus-Based Image Description Evaluation) Metric # by Vedantam, Zitnick, and Parikh (http://arxiv.org/abs/1411.5726) # # Creation Date: Sun Feb 8 14:16:54 2015 # # Authors: Ramakrishna Vedantam and Tsung-Yi Lin from __future__ import print_function from .cider_scorer import CiderScorer import pdb from collections import defaultdict #need to install dill, which is used to dump and load defaultdict try: import dill except Exception: pass import sys class Cider: """ Main Class to compute the CIDEr metric """ def __init__(self, test=None, refs=None, n=4, sigma=6.0, document_frequency=None, ref_len=None): # set cider to sum over 1 to 4-grams self._n = n # set the standard deviation parameter for gaussian penalty self._sigma = sigma #print('document_frequency', document_frequency, 'ref_len', ref_len, file=sys.stderr) if document_frequency is None: self._doucument_frequency = defaultdict(float) elif isinstance(document_frequency, str): self._doucument_frequency = dill.load(open(document_frequency)) else: self._doucument_frequency = document_frequency if isinstance(ref_len, str): self._ref_len = float(open(ref_len).readline().strip()) else: self._ref_len = ref_len def compute_score(self, gts, res): """ Main function to compute CIDEr score :param hypo_for_image (dict) : dictionary with key and value ref_for_image (dict) : dictionary with key and value :return: cider (float) : computed CIDEr score for the corpus """ assert(gts.keys() == res.keys()) imgIds = gts.keys() cider_scorer = CiderScorer(n=self._n, sigma=self._sigma, document_frequency=self._doucument_frequency, ref_len=self._ref_len) for id in imgIds: hypo = res[id] ref = gts[id] # Sanity check. assert(type(hypo) is list) assert(len(hypo) == 1) assert(type(ref) is list) assert(len(ref) > 0) cider_scorer += (hypo[0], ref) (score, scores) = cider_scorer.compute_score() return score, scores def method(self): return "CIDEr" ================================================ FILE: utils/gezi/metrics/cider/cider_scorer.py ================================================ #!/usr/bin/env python # Tsung-Yi Lin # Ramakrishna Vedantam from __future__ import print_function import copy from collections import defaultdict import numpy as np import pdb import math def precook(s, n=4, out=False): """ Takes a string as input and returns an object that can be given to either cook_refs or cook_test. This is optional: cook_refs and cook_test can take string arguments as well. :param s: string : sentence to be converted into ngrams :param n: int : number of ngrams for which representation is calculated :return: term frequency vector for occuring ngrams """ words = s.split() counts = defaultdict(int) for k in range(1,n+1): for i in range(len(words)-k+1): ngram = tuple(words[i:i+k]) counts[ngram] += 1 return counts def cook_refs(refs, n=4): ## lhuang: oracle will call with "average" '''Takes a list of reference sentences for a single segment and returns an object that encapsulates everything that BLEU needs to know about them. :param refs: list of string : reference sentences for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (list of dict) ''' return [precook(ref, n) for ref in refs] def cook_test(test, n=4): '''Takes a test sentence and returns an object that encapsulates everything that BLEU needs to know about it. :param test: list of string : hypothesis sentence for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (dict) ''' return precook(test, n, True) class CiderScorer(object): """CIDEr scorer. """ def copy(self): ''' copy the refs.''' new = CiderScorer(n=self.n) new.ctest = copy.copy(self.ctest) new.crefs = copy.copy(self.crefs) return new def __init__(self, test=None, refs=None, n=4, sigma=6.0, document_frequency=defaultdict(float), ref_len=None): ''' singular instance ''' self.n = n self.sigma = sigma self.crefs = [] self.ctest = [] self.document_frequency = document_frequency self.cook_append(test, refs) self.ref_len = ref_len def cook_append(self, test, refs): '''called by constructor and __iadd__ to avoid creating new instances.''' if refs is not None: self.crefs.append(cook_refs(refs)) if test is not None: self.ctest.append(cook_test(test)) ## N.B.: -1 else: self.ctest.append(None) # lens of crefs and ctest have to match def size(self): assert len(self.crefs) == len(self.ctest), "refs/test mismatch! %d<>%d" % (len(self.crefs), len(self.ctest)) return len(self.crefs) def __iadd__(self, other): '''add an instance (e.g., from another sentence).''' if type(other) is tuple: ## avoid creating new CiderScorer instances self.cook_append(other[0], other[1]) else: self.ctest.extend(other.ctest) self.crefs.extend(other.crefs) return self def compute_doc_freq(self): ''' Compute term frequency for reference data. This will be used to compute idf (inverse document frequency later) The term frequency is stored in the object :return: None ''' if len(self.document_frequency) == 0: for refs in self.crefs: # refs, k ref captions of one image for ngram in set([ngram for ref in refs for (ngram,count) in ref.iteritems()]): self.document_frequency[ngram] += 1 # maxcounts[ngram] = max(maxcounts.get(ngram,0), count) def compute_cider(self): def counts2vec(cnts): """ Function maps counts of ngram to vector of tfidf weights. The function returns vec, an array of dictionary that store mapping of n-gram and tf-idf weights. The n-th entry of array denotes length of n-grams. :param cnts: :return: vec (array of dict), norm (array of float), length (int) """ vec = [defaultdict(float) for _ in range(self.n)] length = 0 norm = [0.0 for _ in range(self.n)] for (ngram,term_freq) in cnts.iteritems(): # give word count 1 if it doesn't appear in reference corpus df = np.log(max(1.0, self.document_frequency[ngram])) # ngram index n = len(ngram)-1 # tf (term_freq) * idf (precomputed idf) for n-grams vec[n][ngram] = float(term_freq)*(self.ref_len - df) # compute norm for the vector. the norm will be used for computing similarity norm[n] += pow(vec[n][ngram], 2) if n == 1: length += term_freq norm = [np.sqrt(n) for n in norm] return vec, norm, length def sim(vec_hyp, vec_ref, norm_hyp, norm_ref, length_hyp, length_ref): ''' Compute the cosine similarity of two vectors. :param vec_hyp: array of dictionary for vector corresponding to hypothesis :param vec_ref: array of dictionary for vector corresponding to reference :param norm_hyp: array of float for vector corresponding to hypothesis :param norm_ref: array of float for vector corresponding to reference :param length_hyp: int containing length of hypothesis :param length_ref: int containing length of reference :return: array of score for each n-grams cosine similarity ''' delta = float(length_hyp - length_ref) # measure consine similarity val = np.array([0.0 for _ in range(self.n)]) for n in range(self.n): # ngram for (ngram,count) in vec_hyp[n].iteritems(): # vrama91 : added clipping val[n] += min(vec_hyp[n][ngram], vec_ref[n][ngram]) * vec_ref[n][ngram] if (norm_hyp[n] != 0) and (norm_ref[n] != 0): val[n] /= (norm_hyp[n]*norm_ref[n]) assert(not math.isnan(val[n])) # vrama91: added a length based gaussian penalty val[n] *= np.e**(-(delta**2)/(2*self.sigma**2)) return val # compute log reference length if self.ref_len is None: self.ref_len = np.log(float(len(self.crefs))) scores = [] for test, refs in zip(self.ctest, self.crefs): # compute vector for test captions vec, norm, length = counts2vec(test) # compute vector for ref captions score = np.array([0.0 for _ in range(self.n)]) for ref in refs: vec_ref, norm_ref, length_ref = counts2vec(ref) score += sim(vec, vec_ref, norm, norm_ref, length, length_ref) # change by vrama91 - mean of ngram scores, instead of sum score_avg = np.mean(score) # divide by number of references score_avg /= len(refs) # multiply score by 10 score_avg *= 10.0 # append score of an image to the score list scores.append(score_avg) return scores def compute_score(self, option=None, verbose=0): # compute idf self.compute_doc_freq() # assert to check document frequency #print('---', len(self.ctest), max(self.document_frequency.values())) #assert(len(self.ctest) >= max(self.document_frequency.values())) # compute cider score score = self.compute_cider() # debug # print score return np.mean(np.array(score)), np.array(score) ================================================ FILE: utils/gezi/metrics/ciderD/__init__.py ================================================ __author__ = 'tylin' ================================================ FILE: utils/gezi/metrics/ciderD/ciderD.py ================================================ # Filename: ciderD.py # # Description: Describes the class to compute the CIDEr-D (Consensus-Based Image Description Evaluation) Metric # by Vedantam, Zitnick, and Parikh (http://arxiv.org/abs/1411.5726) # # Creation Date: Sun Feb 8 14:16:54 2015 # # Authors: Ramakrishna Vedantam and Tsung-Yi Lin from ciderD_scorer import CiderScorer import pdb class CiderD: """ Main Class to compute the CIDEr metric """ def __init__(self, n=4, sigma=6.0, df="corpus"): # set cider to sum over 1 to 4-grams self._n = n # set the standard deviation parameter for gaussian penalty self._sigma = sigma # set which where to compute document frequencies from self._df = df def compute_score(self, gts, res): """ Main function to compute CIDEr score :param hypo_for_image (dict) : dictionary with key and value ref_for_image (dict) : dictionary with key and value :return: cider (float) : computed CIDEr score for the corpus """ cider_scorer = CiderScorer(n=self._n) for res_id in res: hypo = res_id['caption'] ref = gts[res_id['image_id']] # Sanity check. assert(type(hypo) is list) assert(len(hypo) == 1) assert(type(ref) is list) assert(len(ref) > 0) cider_scorer += (hypo[0], ref) (score, scores) = cider_scorer.compute_score(self._df) return score, scores def method(self): return "CIDEr-D" ================================================ FILE: utils/gezi/metrics/ciderD/ciderD_scorer.py ================================================ #!/usr/bin/env python # Tsung-Yi Lin # Ramakrishna Vedantam import copy from collections import defaultdict import numpy as np import pdb import math import pickle import os def precook(s, n=4, out=False): """ Takes a string as input and returns an object that can be given to either cook_refs or cook_test. This is optional: cook_refs and cook_test can take string arguments as well. :param s: string : sentence to be converted into ngrams :param n: int : number of ngrams for which representation is calculated :return: term frequency vector for occuring ngrams """ words = s.split() counts = defaultdict(int) for k in xrange(1,n+1): for i in xrange(len(words)-k+1): ngram = tuple(words[i:i+k]) counts[ngram] += 1 return counts def cook_refs(refs, n=4): ## lhuang: oracle will call with "average" '''Takes a list of reference sentences for a single segment and returns an object that encapsulates everything that BLEU needs to know about them. :param refs: list of string : reference sentences for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (list of dict) ''' return [precook(ref, n) for ref in refs] def cook_test(test, n=4): '''Takes a test sentence and returns an object that encapsulates everything that BLEU needs to know about it. :param test: list of string : hypothesis sentence for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (dict) ''' return precook(test, n, True) class CiderScorer(object): """CIDEr scorer. """ def copy(self): ''' copy the refs.''' new = CiderScorer(n=self.n) new.ctest = copy.copy(self.ctest) new.crefs = copy.copy(self.crefs) return new def __init__(self, test=None, refs=None, n=4, sigma=6.0): ''' singular instance ''' self.n = n self.sigma = sigma self.crefs = [] self.ctest = [] self.document_frequency = defaultdict(float) self.cook_append(test, refs) self.ref_len = None def cook_append(self, test, refs): '''called by constructor and __iadd__ to avoid creating new instances.''' if refs is not None: self.crefs.append(cook_refs(refs)) if test is not None: self.ctest.append(cook_test(test)) ## N.B.: -1 else: self.ctest.append(None) # lens of crefs and ctest have to match def size(self): assert len(self.crefs) == len(self.ctest), "refs/test mismatch! %d<>%d" % (len(self.crefs), len(self.ctest)) return len(self.crefs) def __iadd__(self, other): '''add an instance (e.g., from another sentence).''' if type(other) is tuple: ## avoid creating new CiderScorer instances self.cook_append(other[0], other[1]) else: self.ctest.extend(other.ctest) self.crefs.extend(other.crefs) return self def compute_doc_freq(self): ''' Compute term frequency for reference data. This will be used to compute idf (inverse document frequency later) The term frequency is stored in the object :return: None ''' for refs in self.crefs: # refs, k ref captions of one image for ngram in set([ngram for ref in refs for (ngram,count) in ref.iteritems()]): self.document_frequency[ngram] += 1 # maxcounts[ngram] = max(maxcounts.get(ngram,0), count) def compute_cider(self, df_mode): def counts2vec(cnts): """ Function maps counts of ngram to vector of tfidf weights. The function returns vec, an array of dictionary that store mapping of n-gram and tf-idf weights. The n-th entry of array denotes length of n-grams. :param cnts: :return: vec (array of dict), norm (array of float), length (int) """ vec = [defaultdict(float) for _ in range(self.n)] length = 0 norm = [0.0 for _ in range(self.n)] for (ngram,term_freq) in cnts.iteritems(): # give word count 1 if it doesn't appear in reference corpus df = np.log(max(1.0, self.document_frequency[ngram])) # ngram index n = len(ngram)-1 # tf (term_freq) * idf (precomputed idf) for n-grams vec[n][ngram] = float(term_freq)*(self.ref_len - df) # compute norm for the vector. the norm will be used for computing similarity norm[n] += pow(vec[n][ngram], 2) if n == 1: length += term_freq norm = [np.sqrt(n) for n in norm] return vec, norm, length def sim(vec_hyp, vec_ref, norm_hyp, norm_ref, length_hyp, length_ref): ''' Compute the cosine similarity of two vectors. :param vec_hyp: array of dictionary for vector corresponding to hypothesis :param vec_ref: array of dictionary for vector corresponding to reference :param norm_hyp: array of float for vector corresponding to hypothesis :param norm_ref: array of float for vector corresponding to reference :param length_hyp: int containing length of hypothesis :param length_ref: int containing length of reference :return: array of score for each n-grams cosine similarity ''' delta = float(length_hyp - length_ref) # measure consine similarity val = np.array([0.0 for _ in range(self.n)]) for n in range(self.n): # ngram for (ngram,count) in vec_hyp[n].iteritems(): # vrama91 : added clipping val[n] += min(vec_hyp[n][ngram], vec_ref[n][ngram]) * vec_ref[n][ngram] if (norm_hyp[n] != 0) and (norm_ref[n] != 0): val[n] /= (norm_hyp[n]*norm_ref[n]) assert(not math.isnan(val[n])) # vrama91: added a length based gaussian penalty val[n] *= np.e**(-(delta**2)/(2*self.sigma**2)) return val # compute log reference length if df_mode == "corpus": self.ref_len = np.log(float(len(self.crefs))) elif df_mode == "coco-val-df": # if coco option selected, use length of coco-val set self.ref_len = np.log(float(40504)) scores = [] for test, refs in zip(self.ctest, self.crefs): # compute vector for test captions vec, norm, length = counts2vec(test) # compute vector for ref captions score = np.array([0.0 for _ in range(self.n)]) for ref in refs: vec_ref, norm_ref, length_ref = counts2vec(ref) score += sim(vec, vec_ref, norm, norm_ref, length, length_ref) # change by vrama91 - mean of ngram scores, instead of sum score_avg = np.mean(score) # divide by number of references score_avg /= len(refs) # multiply score by 10 score_avg *= 10.0 # append score of an image to the score list scores.append(score_avg) return scores def compute_score(self, df_mode, option=None, verbose=0): # compute idf if df_mode == "corpus": self.compute_doc_freq() # assert to check document frequency assert(len(self.ctest) >= max(self.document_frequency.values())) # import json for now and write the corresponding files else: self.document_frequency = pickle.load(open(os.path.join('data', df_mode + '.p'),'r')) # compute cider score score = self.compute_cider(df_mode) # debug # print score return np.mean(np.array(score)), np.array(score) ================================================ FILE: utils/gezi/metrics/correlation/__init__.py ================================================ from gezi.metrics.correlation.correlation import * ================================================ FILE: utils/gezi/metrics/correlation/correlation.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file correlation.py # \author chenghuige # \date 2018-06-25 19:54:48.632054 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import math import numpy as np # LCC=\frac{\sum_{i=1}^{N}(y_{i}-\overline{y})(\hat{y}_i-\overline{\hat{y}})}{\sqrt{\sum_{i=1}^{N}(y_{i}-\overline{y})^2} \sqrt{\sum_{i=1}^{N}(\hat{y}_{i}-\overline{\hat{y}})^2}} def lcc(trues, predicts): true_mean = np.mean(trues) predict_mean = np.mean(predicts) up = sum([(x - true_mean) * (y - predict_mean) for x, y in zip(trues, predicts)]) down1 = math.sqrt(sum([math.pow(x - true_mean, 2) for x in trues])) down2 = math.sqrt(sum([math.pow(y - predict_mean, 2) for y in predicts])) return up / (down1 * down2) # SROCC=1-\frac{6\sum_{i=1}^{N}(v_i-p_i)^2}{N(N^2-1)} def srocc(trues, predicts): assert len(trues) == len(predicts) true_args = np.argsort(trues) predict_args = np.argsort(predicts) n = len(trues) true_ranks = [0] * n predict_ranks = [0] * n for i, arg in enumerate(true_args): true_ranks[arg] = i for i, arg in enumerate(predict_args): predict_ranks[arg] = i down = n * (n * n - 1) up = 6 * sum([math.pow(x - y, 2) for x, y in zip(true_ranks, predict_ranks)]) return 1 - up / down ================================================ FILE: utils/gezi/metrics/eval.py ================================================ __author__ = 'tylin' from tokenizer.ptbtokenizer import PTBTokenizer from bleu.bleu import Bleu from meteor.meteor import Meteor from rouge.rouge import Rouge from cider.cider import Cider class COCOEvalCap: def __init__(self, coco, cocoRes): self.evalImgs = [] self.eval = {} self.imgToEval = {} self.coco = coco self.cocoRes = cocoRes self.params = {'image_id': coco.getImgIds()} def evaluate(self): imgIds = self.params['image_id'] # imgIds = self.coco.getImgIds() gts = {} res = {} for imgId in imgIds: gts[imgId] = self.coco.imgToAnns[imgId] res[imgId] = self.cocoRes.imgToAnns[imgId] # ================================================= # Set up scorers # ================================================= print 'tokenization...' tokenizer = PTBTokenizer() gts = tokenizer.tokenize(gts) res = tokenizer.tokenize(res) # ================================================= # Set up scorers # ================================================= print 'setting up scorers...' scorers = [ (Bleu(4), ["Bleu_1", "Bleu_2", "Bleu_3", "Bleu_4"]), (Meteor(),"METEOR"), (Rouge(), "ROUGE_L"), (Cider(), "CIDEr") ] # ================================================= # Compute scores # ================================================= for scorer, method in scorers: print 'computing %s score...'%(scorer.method()) score, scores = scorer.compute_score(gts, res) if type(method) == list: for sc, scs, m in zip(score, scores, method): self.setEval(sc, m) self.setImgToEvalImgs(scs, gts.keys(), m) print "%s: %0.3f"%(m, sc) else: self.setEval(score, method) self.setImgToEvalImgs(scores, gts.keys(), method) print "%s: %0.3f"%(method, score) self.setEvalImgs() def setEval(self, score, method): self.eval[method] = score def setImgToEvalImgs(self, scores, imgIds, method): for imgId, score in zip(imgIds, scores): if not imgId in self.imgToEval: self.imgToEval[imgId] = {} self.imgToEval[imgId]["image_id"] = imgId self.imgToEval[imgId][method] = score def setEvalImgs(self): self.evalImgs = [eval for imgId, eval in self.imgToEval.items()] ================================================ FILE: utils/gezi/metrics/meteor/__init__.py ================================================ __author__ = 'tylin' from gezi.metrics.meteor.meteor import Meteor ================================================ FILE: utils/gezi/metrics/meteor/meteor.py ================================================ #!/usr/bin/env python # Python wrapper for METEOR implementation, by Xinlei Chen # Acknowledge Michael Denkowski for the generous discussion and help import os import sys import subprocess import threading # Assumes meteor-1.5.jar is in the same directory as meteor.py. Change as needed. METEOR_JAR = 'meteor-1.5.jar' # print METEOR_JAR class Meteor: def __init__(self): self.meteor_cmd = ['java', '-jar', '-Xmx2G', METEOR_JAR, \ '-', '-', '-stdio', '-l', 'en', '-norm'] self.meteor_p = subprocess.Popen(self.meteor_cmd, \ cwd=os.path.dirname(os.path.abspath(__file__)), \ stdin=subprocess.PIPE, \ stdout=subprocess.PIPE, \ stderr=subprocess.PIPE) # Used to guarantee thread safety self.lock = threading.Lock() def compute_score(self, gts, res): assert(gts.keys() == res.keys()) imgIds = gts.keys() scores = [] eval_line = 'EVAL' self.lock.acquire() for i in imgIds: assert(len(res[i]) == 1) stat = self._stat(res[i][0], gts[i]) eval_line += ' ||| {}'.format(stat) self.meteor_p.stdin.write('{}\n'.format(eval_line)) for i in range(0,len(imgIds)): scores.append(float(self.meteor_p.stdout.readline().strip())) score = float(self.meteor_p.stdout.readline().strip()) self.lock.release() return score, scores def method(self): return "METEOR" def _stat(self, hypothesis_str, reference_list): # SCORE ||| reference 1 words ||| reference n words ||| hypothesis words hypothesis_str = hypothesis_str.replace('|||','').replace(' ',' ') score_line = ' ||| '.join(('SCORE', ' ||| '.join(reference_list), hypothesis_str)) self.meteor_p.stdin.write('{}\n'.format(score_line)) return self.meteor_p.stdout.readline().strip() def _score(self, hypothesis_str, reference_list): self.lock.acquire() # SCORE ||| reference 1 words ||| reference n words ||| hypothesis words hypothesis_str = hypothesis_str.replace('|||','').replace(' ',' ') score_line = ' ||| '.join(('SCORE', ' ||| '.join(reference_list), hypothesis_str)) self.meteor_p.stdin.write('{}\n'.format(score_line)) stats = self.meteor_p.stdout.readline().strip() eval_line = 'EVAL ||| {}'.format(stats) # EVAL ||| stats self.meteor_p.stdin.write('{}\n'.format(eval_line)) score = float(self.meteor_p.stdout.readline().strip()) # bug fix: there are two values returned by the jar file, one average, and one all, so do it twice # thanks for Andrej for pointing this out score = float(self.meteor_p.stdout.readline().strip()) self.lock.release() return score def __del__(self): self.lock.acquire() self.meteor_p.stdin.close() self.meteor_p.kill() self.meteor_p.wait() self.lock.release() ================================================ FILE: utils/gezi/metrics/new_cider/__init__.py ================================================ __author__ = 'tylin' from gezi.metrics.new_cider.cider import Cider ================================================ FILE: utils/gezi/metrics/new_cider/cider.py ================================================ # Filename: cider.py # # # Description: Describes the class to compute the CIDEr # (Consensus-Based Image Description Evaluation) Metric # by Vedantam, Zitnick, and Parikh (http://arxiv.org/abs/1411.5726) # # Creation Date: Sun Feb 8 14:16:54 2015 # # Authors: Ramakrishna Vedantam and # Tsung-Yi Lin from cider_scorer import CiderScorer class Cider: """ Main Class to compute the CIDEr metric """ def __init__(self, n=4, df='corpus', num_docs=30000): # set cider to sum over 1 to 4-grams self._n = n self._df = df self._num_docs = num_docs def compute_score(self, gts, res): """ Main function to compute CIDEr score :param hypo_for_image (dict) : dictionary with key and value ref_for_image (dict) : dictionary with key and value :return: cider (float) : computed CIDEr score for the corpus """ assert(gts.keys() == res.keys()) imgIds = gts.keys() cider_scorer = CiderScorer(n=self._n, num_imgs=self.num_imgs) for id in imgIds: hypo = res[id] ref = gts[id] # Sanity check. assert(type(hypo) is list) assert(len(hypo) == 1) assert(type(ref) is list) assert(len(ref) > 0) cider_scorer += (hypo[0], ref) (score, scores) = cider_scorer.compute_score() return score, scores def method(self): return "CIDEr" ================================================ FILE: utils/gezi/metrics/new_cider/cider_scorer.py ================================================ #!/usr/bin/env python # Tsung-Yi Lin # Ramakrishna Vedantam import copy import pickle from collections import defaultdict import numpy as np import math import os def precook(s, n=4, out=False): """ Takes a string as input and returns an object that can be given to either cook_refs or cook_test. This is optional: cook_refs and cook_test can take string arguments as well. :param s: string : sentence to be converted into ngrams :param n: int : number of ngrams for which representation is calculated :return: term frequency vector for occuring ngrams """ words = s.split() counts = defaultdict(int) for k in xrange(1,n+1): for i in xrange(len(words)-k+1): ngram = tuple(words[i:i+k]) counts[ngram] += 1 return counts def cook_refs(refs, n=4): ## lhuang: oracle will call with "average" '''Takes a list of reference sentences for a single segment and returns an object that encapsulates everything that BLEU needs to know about them. :param refs: list of string : reference sentences for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (list of dict) ''' return [precook(ref, n) for ref in refs] def cook_test(test, n=4): '''Takes a test sentence and returns an object that encapsulates everything that BLEU needs to know about it. :param test: list of string : hypothesis sentence for some image :param n: int : number of ngrams for which (ngram) representation is calculated :return: result (dict) ''' return precook(test, n, True) class CiderScorer(object): """CIDEr scorer. """ def copy(self): ''' copy the refs.''' new = CiderScorer(n=self.n) new.ctest = copy.copy(self.ctest) new.crefs = copy.copy(self.crefs) return new def __init__(self, test=None, refs=None, n=4, sigma=6.0, num_imgs=30000, vocab_file=None): ''' singular instance ''' self.n = n self.sigma = sigma self.crefs = [] self.ctest = [] self.document_frequency = defaultdict(float) self.cook_append(test, refs) self.ref_len = None self.num_imgs = num_imgs self.vocb_file = vocb_file def cook_append(self, test, refs): '''called by constructor and __iadd__ to avoid creating new instances.''' if refs is not None: self.crefs.append(cook_refs(refs)) if test is not None: self.ctest.append(cook_test(test)) ## N.B.: -1 else: self.ctest.append(None) # lens of crefs and ctest have to match def size(self): assert len(self.crefs) == len(self.ctest), "refs/test mismatch! %d<>%d" % (len(self.crefs), len(self.ctest)) return len(self.crefs) def __iadd__(self, other): '''add an instance (e.g., from another sentence).''' if type(other) is tuple: ## avoid creating new CiderScorer instances self.cook_append(other[0], other[1]) else: self.ctest.extend(other.ctest) self.crefs.extend(other.crefs) return self def compute_doc_freq(self): ''' Compute term frequency for reference data. This will be used to compute idf (inverse document frequency later) The term frequency is stored in the object :return: None ''' for refs in self.crefs: # refs, k ref captions of one image for ngram in set([ngram for ref in refs for (ngram,count) in ref.iteritems()]): self.document_frequency[ngram] += 1 # maxcounts[ngram] = max(maxcounts.get(ngram,0), count) def compute_cider(self, df_mode="corpus"): def counts2vec(cnts): """ Function maps counts of ngram to vector of tfidf weights. The function returns vec, an array of dictionary that store mapping of n-gram and tf-idf weights. The n-th entry of array denotes length of n-grams. :param cnts: :return: vec (array of dict), norm (array of float), length (int) """ vec = [defaultdict(float) for _ in range(self.n)] length = 0 norm = [0.0 for _ in range(self.n)] for (ngram,term_freq) in cnts.iteritems(): # give word count 1 if it doesn't appear in reference corpus df = np.log(max(1.0, self.document_frequency[ngram])) # ngram index n = len(ngram)-1 # tf (term_freq) * idf (precomputed idf) for n-grams vec[n][ngram] = float(term_freq)*(self.ref_len - df) # compute norm for the vector. the norm will be used for # computing similarity norm[n] += pow(vec[n][ngram], 2) if n == 1: length += term_freq norm = [np.sqrt(n) for n in norm] return vec, norm, length def sim(vec_hyp, vec_ref, norm_hyp, norm_ref, length_hyp, length_ref): ''' Compute the cosine similarity of two vectors. :param vec_hyp: array of dictionary for vector corresponding to hypothesis :param vec_ref: array of dictionary for vector corresponding to reference :param norm_hyp: array of float for vector corresponding to hypothesis :param norm_ref: array of float for vector corresponding to reference :param length_hyp: int containing length of hypothesis :param length_ref: int containing length of reference :return: array of score for each n-grams cosine similarity ''' delta = float(length_hyp - length_ref) # measure consine similarity val = np.array([0.0 for _ in range(self.n)]) for n in range(self.n): # ngram for (ngram,count) in vec_hyp[n].iteritems(): val[n] += vec_hyp[n][ngram] * vec_ref[n][ngram] if (norm_hyp[n] != 0) and (norm_ref[n] != 0): val[n] /= (norm_hyp[n]*norm_ref[n]) assert(not math.isnan(val[n])) return val # compute log reference length if df_mode == "corpus": self.ref_len = np.log(float(len(self.crefs))) elif df_mode == "coco-val-df": # if coco option selected, use length of coco-val set self.ref_len = np.log(float(self.num_imgs)) scores = [] for test, refs in zip(self.ctest, self.crefs): # compute vector for test captions vec, norm, length = counts2vec(test) # compute vector for ref captions score = np.array([0.0 for _ in range(self.n)]) for ref in refs: vec_ref, norm_ref, length_ref = counts2vec(ref) score += sim(vec, vec_ref, norm, norm_ref, length, length_ref) # change by vrama91 - mean of ngram scores, instead of sum score_avg = np.mean(score) # divide by number of references score_avg /= len(refs) # multiply score by 10 score_avg *= 10.0 # append score of an image to the score list scores.append(score_avg) return scores def compute_score(self, df_mode, option=None, verbose=0): # compute idf if df_mode == "corpus": self.compute_doc_freq() # assert to check document frequency assert(len(self.ctest) >= max(self.document_frequency.values())) # import json for now and write the corresponding files else: #self.document_frequency = pickle.load(open(os.path.join('data', df_mode + '.p'),'r')) for line in open(self.vocab_file): ngram, freq = line.rstrip().split('\t') self.document_frequency[ngram] = freq # compute cider score score = self.compute_cider(df_mode) # debug # print score return np.mean(np.array(score)), np.array(score) ================================================ FILE: utils/gezi/metrics/rouge/__init__.py ================================================ __author__ = 'vrama91' from gezi.metrics.rouge.rouge import Rouge ================================================ FILE: utils/gezi/metrics/rouge/rouge.py ================================================ #!/usr/bin/env python # # File Name : rouge.py # # Description : Computes ROUGE-L metric as described by Lin and Hovey (2004) # # Creation Date : 2015-01-07 06:03 # Author : Ramakrishna Vedantam import numpy as np import pdb def my_lcs(string, sub): """ Calculates longest common subsequence for a pair of tokenized strings :param string : list of str : tokens from a string split using whitespace :param sub : list of str : shorter string, also split using whitespace :returns: length (list of int): length of the longest common subsequence between the two strings Note: my_lcs only gives length of the longest common subsequence, not the actual LCS """ if(len(string)< len(sub)): sub, string = string, sub lengths = [[0 for i in range(0,len(sub)+1)] for j in range(0,len(string)+1)] for j in range(1,len(sub)+1): for i in range(1,len(string)+1): if(string[i-1] == sub[j-1]): lengths[i][j] = lengths[i-1][j-1] + 1 else: lengths[i][j] = max(lengths[i-1][j] , lengths[i][j-1]) return lengths[len(string)][len(sub)] class Rouge(): ''' Class for computing ROUGE-L score for a set of candidate sentences for the MS COCO test set ''' def __init__(self): # vrama91: updated the value below based on discussion with Hovey self.beta = 1.2 def calc_score(self, candidate, refs): """ Compute ROUGE-L score given one candidate and references for an image :param candidate: str : candidate sentence to be evaluated :param refs: list of str : COCO reference sentences for the particular image to be evaluated :returns score: int (ROUGE-L score for the candidate evaluated against references) """ assert(len(candidate)==1) assert(len(refs)>0) prec = [] rec = [] # split into tokens token_c = candidate[0].split(" ") for reference in refs: # split into tokens token_r = reference.split(" ") # compute the longest common subsequence lcs = my_lcs(token_r, token_c) prec.append(lcs/float(len(token_c))) rec.append(lcs/float(len(token_r))) prec_max = max(prec) rec_max = max(rec) if(prec_max!=0 and rec_max !=0): score = ((1 + self.beta**2)*prec_max*rec_max)/float(rec_max + self.beta**2*prec_max) else: score = 0.0 return score def compute_score(self, gts, res): """ Computes Rouge-L score given a set of reference and candidate sentences for the dataset Invoked by evaluate_captions.py :param hypo_for_image: dict : candidate / test sentences with "image name" key and "tokenized sentences" as values :param ref_for_image: dict : reference MS-COCO sentences with "image name" key and "tokenized sentences" as values :returns: average_score: float (mean ROUGE-L score computed by averaging scores for all the images) """ assert(gts.keys() == res.keys()) imgIds = gts.keys() score = [] for id in imgIds: hypo = res[id] ref = gts[id] score.append(self.calc_score(hypo, ref)) # Sanity check. assert(type(hypo) is list) #assert(len(hypo) == 1) assert(type(ref) is list) assert(len(ref) > 0) average_score = np.mean(np.array(score)) return average_score, np.array(score) def method(self): return "Rouge" ================================================ FILE: utils/gezi/metrics/tokenizer/__init__.py ================================================ __author__ = 'tylin' from gezi.metrics.tokenizer.ptbtokenizer import PTBTokenizer ================================================ FILE: utils/gezi/metrics/tokenizer/ptbtokenizer.py ================================================ #!/usr/bin/env python # # File Name : ptbtokenizer.py # # Description : Do the PTB Tokenization and remove punctuations. # # Creation Date : 29-12-2014 # Last Modified : Thu Mar 19 09:53:35 2015 # Authors : Hao Fang and Tsung-Yi Lin import os import sys import subprocess import tempfile import itertools # path to the stanford corenlp jar STANFORD_CORENLP_3_4_1_JAR = 'stanford-corenlp-3.4.1.jar' # punctuations to be removed from the sentences PUNCTUATIONS = ["''", "'", "``", "`", "-LRB-", "-RRB-", "-LCB-", "-RCB-", \ ".", "?", "!", ",", ":", "-", "--", "...", ";"] class PTBTokenizer: """Python wrapper of Stanford PTBTokenizer""" def tokenize(self, captions_for_image): cmd = ['java', '-cp', STANFORD_CORENLP_3_4_1_JAR, \ 'edu.stanford.nlp.process.PTBTokenizer', \ '-preserveLines', '-lowerCase'] # ====================================================== # prepare data for PTB Tokenizer # ====================================================== final_tokenized_captions_for_image = {} image_id = [k for k, v in captions_for_image.items() for _ in range(len(v))] #sentences = '\n'.join([c['caption'].replace('\n', ' ') for k, v in captions_for_image.items() for c in v]) sentences = '\n'.join([c.replace('\n', ' ') for k, v in captions_for_image.items() for c in v]) # ====================================================== # save sentences to temporary file # ====================================================== path_to_jar_dirname=os.path.dirname(os.path.abspath(__file__)) #tmp_file = tempfile.NamedTemporaryFile(delete=False, dir=path_to_jar_dirname) tmp_file = tempfile.NamedTemporaryFile(delete=False, dir='/tmp') tmp_file.write(sentences) tmp_file.close() # ====================================================== # tokenize sentence # ====================================================== cmd.append(os.path.basename(tmp_file.name)) p_tokenizer = subprocess.Popen(cmd, cwd=path_to_jar_dirname, \ stdout=subprocess.PIPE) token_lines = p_tokenizer.communicate(input=sentences.rstrip())[0] lines = token_lines.split('\n') # remove temp file os.remove(tmp_file.name) # ====================================================== # create dictionary for tokenized captions # ====================================================== for k, line in zip(image_id, lines): if not k in final_tokenized_captions_for_image: final_tokenized_captions_for_image[k] = [] tokenized_caption = ' '.join([w for w in line.rstrip().split(' ') \ if w not in PUNCTUATIONS]) final_tokenized_captions_for_image[k].append(tokenized_caption) return final_tokenized_captions_for_image ================================================ FILE: utils/gezi/ngram.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ngram.py # \author chenghuige # \date 2018-03-01 11:25:51.105094 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import numpy as np # def get_ngrams(input, minn=3, maxn=3, start='<', end='>'): # input = start + input + end # len_ = len(input) # ngrams = [] # for i in range(0, len_ - minn + 1): # for j in range(i + minn, i + maxn + 1): # if j <= len_: # ngrams.append(input[i:j]) # return ngrams def get_ngrams(input, minn=3, maxn=3, start='<', end='>'): input = start + input + end len_ = len(input) ngrams = [] for ngram in reversed(range(minn, maxn + 1)): for i in range(0, len_ - ngram + 1): ngrams.append(input[i:i + ngram]) return ngrams from gezi import hash # defaut 3, 6 according to fasttext default ngram, but may use 3, 3 only trigram def get_ngrams_hash(input, buckets, minn=3, maxn=6, start='<', end='>', reserve=0): ngrams = get_ngrams(input, minn, maxn, start, end) #print(ngrams) ngrams = [reserve + hash(x) % buckets for x in ngrams] return ngrams def fasttext_ids(word, vocab, buckets, minn=3, maxn=6, start='<', end='>'): ngrams = get_ngrams(word, minn, maxn, start, end) ngram_ids = [vocab.size() + hash(x) % buckets for x in ngrams] if vocab.has(word): ids = [vocab.id(word)] + ngram_ids else: ids = ngram_ids return ids ================================================ FILE: utils/gezi/nowarning.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file nowarning.py # \author chenghuige # \date 2015-06-30 15:36:33.184314 # \Description # ============================================================================== import warnings warnings.simplefilter("ignore", RuntimeWarning) ================================================ FILE: utils/gezi/pydict.py ================================================ #! /usr/bin/env python #coding=gbk ############################################ # [Author]: jianglianxin, jianglianxin # [Date]: 2013/01/15 ############################################ import pydictmatch from sets import Set import sys class Pydict : def __init__(self,path_dm) : self.dm_dict_handle = pydictmatch.dm_binarydict_load(path_dm) self.dm_pack_handle = pydictmatch.dm_pack_create() if (not self.dm_dict_handle) or (not self.dm_pack_handle): print >>sys.stderr, "load pydict fail" sys.exit(-1) def search(self,query,option): ##option 1:match loggest 0: match all matchList = [] if option != 0 and option != 1: return matchList matchList = pydictmatch.dm_search(self.dm_dict_handle, self.dm_pack_handle,query,option) return matchList def close(self) : pydictmatch.dm_pack_del(self.dm_pack_handle) pydictmatch.dm_dict_del(self.dm_dict_handle) ================================================ FILE: utils/gezi/rank_metrics.py ================================================ """Information Retrieval metrics Useful Resources: http://www.cs.utexas.edu/~mooney/ir-course/slides/Evaluation.ppt http://www.nii.ac.jp/TechReports/05-014E.pdf http://www.stanford.edu/class/cs276/handouts/EvaluationNew-handout-6-per.pdf http://hal.archives-ouvertes.fr/docs/00/72/67/60/PDF/07-busa-fekete.pdf Learning to Rank for Information Retrieval (Tie-Yan Liu) """ import numpy as np import gezi def mean_reciprocal_rank(rs): """Score is reciprocal of the rank of the first relevant item First element is 'rank 1'. Relevance is binary (nonzero is relevant). Example from http://en.wikipedia.org/wiki/Mean_reciprocal_rank >>> rs = [[0, 0, 1], [0, 1, 0], [1, 0, 0]] >>> mean_reciprocal_rank(rs) 0.61111111111111105 >>> rs = np.array([[0, 0, 0], [0, 1, 0], [1, 0, 0]]) >>> mean_reciprocal_rank(rs) 0.5 >>> rs = [[0, 0, 0, 1], [1, 0, 0], [1, 0, 0]] >>> mean_reciprocal_rank(rs) 0.75 Args: rs: Iterator of relevance scores (list or numpy) in rank order (first element is the first item) Returns: Mean reciprocal rank """ rs = (np.asarray(r).nonzero()[0] for r in rs) return np.mean([1. / (r[0] + 1) if r.size else 0. for r in rs]) def r_precision(r): """Score is precision after all relevant documents have been retrieved Relevance is binary (nonzero is relevant). >>> r = [0, 0, 1] >>> r_precision(r) 0.33333333333333331 >>> r = [0, 1, 0] >>> r_precision(r) 0.5 >>> r = [1, 0, 0] >>> r_precision(r) 1.0 Args: r: Relevance scores (list or numpy) in rank order (first element is the first item) Returns: R Precision """ r = np.asarray(r) != 0 z = r.nonzero()[0] if not z.size: return 0. return np.mean(r[:z[-1] + 1]) def precision_at_k(r, k): """Score is precision @ k Relevance is binary (nonzero is relevant). >>> r = [0, 0, 1] >>> precision_at_k(r, 1) 0.0 >>> precision_at_k(r, 2) 0.0 >>> precision_at_k(r, 3) 0.33333333333333331 >>> precision_at_k(r, 4) Traceback (most recent call last): File "", line 1, in ? ValueError: Relevance score length < k Args: r: Relevance scores (list or numpy) in rank order (first element is the first item) Returns: Precision @ k Raises: ValueError: len(r) must be >= k """ assert k >= 1 r = np.asarray(r)[:k] != 0 if r.size != k: raise ValueError('Relevance score length < k') return np.mean(r) def recall_at_k(r, k): assert k >= 1 r = np.asarray(r)[:k] != 0 return float(np.sum(r) > 0) def average_precision(r): """Score is average precision (area under PR curve) Relevance is binary (nonzero is relevant). >>> r = [1, 1, 0, 1, 0, 1, 0, 0, 0, 1] >>> delta_r = 1. / sum(r) >>> sum([sum(r[:x + 1]) / (x + 1.) * delta_r for x, y in enumerate(r) if y]) 0.7833333333333333 >>> average_precision(r) 0.78333333333333333 Args: r: Relevance scores (list or numpy) in rank order (first element is the first item) Returns: Average precision """ r = np.asarray(r) != 0 out = [precision_at_k(r, k + 1) for k in range(r.size) if r[k]] if not out: return 0. return np.mean(out) def mean_average_precision(rs): """Score is mean average precision Relevance is binary (nonzero is relevant). >>> rs = [[1, 1, 0, 1, 0, 1, 0, 0, 0, 1]] >>> mean_average_precision(rs) 0.78333333333333333 >>> rs = [[1, 1, 0, 1, 0, 1, 0, 0, 0, 1], [0]] >>> mean_average_precision(rs) 0.39166666666666666 Args: rs: Iterator of relevance scores (list or numpy) in rank order (first element is the first item) Returns: Mean average precision """ return np.mean([average_precision(r) for r in rs]) def dcg_at_k(r, k, method=1): """Score is discounted cumulative gain (dcg) Relevance is positive real values. Can use binary as the previous methods. Example from http://www.stanford.edu/class/cs276/handouts/EvaluationNew-handout-6-per.pdf >>> r = [3, 2, 3, 0, 0, 1, 2, 2, 3, 0] >>> dcg_at_k(r, 1) 3.0 >>> dcg_at_k(r, 1, method=1) 3.0 >>> dcg_at_k(r, 2) 5.0 >>> dcg_at_k(r, 2, method=1) 4.2618595071429155 >>> dcg_at_k(r, 10) 9.6051177391888114 >>> dcg_at_k(r, 11) 9.6051177391888114 Args: r: Relevance scores (list or numpy) in rank order (first element is the first item) k: Number of results to consider method: If 0 then weights are [1.0, 1.0, 0.6309, 0.5, 0.4307, ...] If 1 then weights are [1.0, 0.6309, 0.5, 0.4307, ...] Returns: Discounted cumulative gain """ r = np.asfarray(r)[:k] if r.size: if method == 0: return r[0] + np.sum(r[1:] / np.log2(np.arange(2, r.size + 1))) elif method == 1: return np.sum(r / np.log2(np.arange(2, r.size + 2))) else: raise ValueError('method must be 0 or 1.') return 0. def ndcg_at_k(r, k, method=1): """Score is normalized discounted cumulative gain (ndcg) Relevance is positive real values. Can use binary as the previous methods. Example from http://www.stanford.edu/class/cs276/handouts/EvaluationNew-handout-6-per.pdf >>> r = [3, 2, 3, 0, 0, 1, 2, 2, 3, 0] >>> ndcg_at_k(r, 1) 1.0 >>> r = [2, 1, 2, 0] >>> ndcg_at_k(r, 4) 0.9203032077642922 >>> ndcg_at_k(r, 4, method=1) 0.96519546960144276 >>> ndcg_at_k([0], 1) 0.0 >>> ndcg_at_k([1], 2) 1.0 Args: r: Relevance scores (list or numpy) in rank order (first element is the first item) k: Number of results to consider method: If 0 then weights are [1.0, 1.0, 0.6309, 0.5, 0.4307, ...] If 1 then weights are [1.0, 0.6309, 0.5, 0.4307, ...] Returns: Normalized discounted cumulative gain """ dcg_max = dcg_at_k(sorted(r, reverse=True), k, method) if not dcg_max: return 0. return dcg_at_k(r, k, method) / dcg_max class RankMetrics(): def __init__(self): self.names = [ 'ndcg@1', \ 'ndcg@5', \ 'ndcg@10', \ #'mean_reciprocal_rank', \ #'r_precision', \ 'avg_precision', \ #'precision@1', \ #'precision@5', \ #'precision@10', \ #'dcg@1', \ #'dcg@5', \ #'dcg@10', \ ] self.avg_metrics = gezi.avg_score.AvgScore() self.metrics = None def add(self, labels): metrics = [ ndcg_at_k(labels, 1), \ ndcg_at_k(labels, 5), \ ndcg_at_k(labels, 10), \ #mean_reciprocal_rank(labels), \ #r_precision(labels), \ average_precision(labels), \ #precision_at_k(labels, 1), \ #precision_at_k(labels, 5), \ #precision_at_k(labels, 10), \ #dcg_at_k(labels, 1), \ #dcg_at_k(labels, 5), \ #dcg_at_k(labels, 10), \ ] self.avg_metrics.add(metrics) def finalize(self): self.metrics = self.avg_metrics.avg_score() return self.metrics def get_metrics(self): if self.metrics is None: return self.finalize() return self.metrics def get_names(self): return self.names class RecallMetrics(): def __init__(self): self.names = [ 'recall@1', 'recall@5', 'recall@10', 'recall@50', ] self.avg_metrics = gezi.avg_score.AvgScore() self.metrics = None def add(self, labels): metrics = [ recall_at_k(labels, 1), recall_at_k(labels, 5), recall_at_k(labels, 10), recall_at_k(labels, 50) ] self.avg_metrics.add(metrics) def finalize(self): self.metrics = self.avg_metrics.avg_score() return self.metrics def get_metrics(self): if self.metrics is None: return self.finalize() return self.metrics def get_names(self): return self.names if __name__ == "__main__": import doctest doctest.testmod() ================================================ FILE: utils/gezi/segment.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file segment.py # \author chenghuige # \date 2016-08-25 19:09:51.756927 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import gezi.nowarning import gezi import sys import os #sys.path.append("./predeal") #import traceback try: import gezi.keyword_fetch as kf except Exception: #print(traceback.format_exc()) pass from gezi.libgezi_util import get_single_cns import six import re #TODO need improve def segment_gbk_char(text, cn_only=False): assert six.PY2 l = [] pre_is_cn = False unicode_text = text.decode('gbk', 'ignore') for word in unicode_text: if u'\u4e00' <= word <= u'\u9fff': pre_is_cn = True if l: l.append(' ') else: l.append(' ') if pre_is_cn: pre_is_cn = False if not cn_only or pre_is_cn: l.append(word) text = ''.join(l) text = text.encode('gbk', 'ignore') l = text.split() return [x.strip() for x in l if x.strip()] #def segment_utf8_charv1(text, cn_only=False): # """ # Code by limin # """ # content= text.replace('===>>>签名:','') # if six.PY2: # content = re.sub(ur'[\s]+', '', content.decode('utf8', 'ignore')) # sentance = content.encode('utf8', 'ignore') # seglist = sentance # output = ' '.join(seglist.decode('utf8','ignore')).encode('utf8','ignore') # else: # output = ' '.join(list(content)) # return output def segment_utf8_char(text, cn_only=False): if not six.PY2 and not cn_only: return [x.strip() for x in text if x.strip()] l = [] pre_is_cn = False if six.PY2: unicode_text = text.decode('utf-8', 'ignore') else: unicode_text = text for word in unicode_text: #print('-----------word', word, pre_is_cn) if u'\u4e00' <= word <= u'\u9fff': pre_is_cn = True if l: l.append(' ') else: l.append(' ') if pre_is_cn: pre_is_cn = False if not cn_only or pre_is_cn: l.append(word) text = ''.join(l) if six.PY2: text = text.encode('utf-8') l = text.split() return [x.strip() for x in l if x.strip()] def segment_utf8_pinyin(text, cn_only=False): """ by yuhan """ pinyin_char = kf.deform_dis_get(text) #print (pinyin_char) l = pinyin_char.split() return [x.strip() for x in l if x.strip()] def segment_utf8_pinyin2(text, cn_only=False): """ by yuhan """ pinyin_char = kf.deform_dis_get_v2(text) #print (pinyin_char) l = pinyin_char.split() return [x.strip() for x in l if x.strip()] def segment_en(text): l = text.strip().split() return [x.strip() for x in l if x.strip()] def filter_quota(text): return text.replace("''", '" ').replace("``", '" ') # def try_strip(text, ch='-'): # otext = text.strip(ch) # if otext: # return otext # return text nlp = None def tokenize(text): #text = filter_quota(text) #try: import spacy global nlp if nlp is None: nlp = spacy.blank("en") if six.PY2: text = text.decode('utf-8') doc = nlp(text) if six.PY2: return [token.text.encode('utf-8') for token in doc] else: return [token.text for token in doc] #except Exception: # return segment_en(text) full_nlp = None def init_spacy_full(): import spacy global full_nlp if full_nlp is None: timer = gezi.Timer('load spacy model') full_nlp = spacy.load('/usr/local/lib/python3.5/dist-packages/spacy/data/en_core_web_md-2.0.0/') timer.print_elapsed() def doc(text): import spacy global full_nlp if full_nlp is None: # TODO FIXME #full_nlp = spacy.load("en") timer = gezi.Timer('load spacy model') full_nlp = spacy.load('/usr/local/lib/python3.5/dist-packages/spacy/data/en_core_web_md-2.0.0/') timer.print_elapsed() if six.PY2: text = text.decode('utf-8') doc = full_nlp(text) return doc def tokenize_filter_empty(text): #text = filter_quota(text) #try: import spacy global nlp if nlp is None: nlp = spacy.blank("en") if six.PY2: text = text.decode('utf-8') doc = nlp(text) if six.PY2: return list(filter(lambda x: x.strip(), [token.text.encode('utf-8') for token in doc])) else: return list(filter(lambda x: x.strip(), [token.text for token in doc])) try: import jieba import jieba.posseg except Exception: pass segment_char = segment_utf8_char segment_pinyin = segment_utf8_pinyin stanford_nlp = None # NOTICE emoji will cause segment error for stanford nlp # https://stackoverflow.com/questions/43146528/how-to-extract-all-the-emojis-from-text def init_stanford_nlp(path='/home/gezi/soft/stanford-corenlp', lang='zh'): #def init_stanford_nlp(path='/stanford-corenlp', lang='zh'): global stanford_nlp if not stanford_nlp: from stanfordcorenlp import StanfordCoreNLP if not os.path.exists(path): path = './stanford-corenlp' if not os.path.exists(path): print('init stanford nlp from local server 8818 port', file=sys.stderr) stanford_nlp = StanfordCoreNLP('http://localhost', port=8818, lang=lang, memory='8g') if not stanford_nlp: import logging print('init stanford nlp from %s' % path, file=sys.stderr) stanford_nlp = StanfordCoreNLP(path, lang=lang, memory='4g') def remove_duplicate(text): if six.PY2: text = text.decode('utf8') l = [] start = 0 end = 0 duplicates = [] while start < len(text): while end < len(text) and text[start] == text[end]: duplicates.append(text[start]) end += 1 l.append(''.join(duplicates[:5])) duplicates = [] start = end text = ''.join(l) if six.PY2: text = text.encode('utf8') return text def cut(text, type='word'): # move it to filter.py #text = remove_duplicate(text) if type == 'word': return word_cut(text) elif type == 'pos': return pos_cut(text) elif type == 'ner': return ner_cut(text) else: raise ValueError('bad type: %s' % type) # HACK for emoji stanford nlp def is_emoji_en(word): for w in word: if not (w == '_' or (w <= 'z' and w >= 'a')): return False return True def hack_emoji(l): import emoji res = [] i = 0 while i < len(l): if i < len(l) - 2 and (l[i] == ':' and l[i+2] == ':' and is_emoji_en(l[i + 1])): res.append(emoji.emojize(':%s:' % l[i + 1])) i += 2 else: res.append(l[i]) i += 1 return res def hack_emoji2(l): import emoji res = [] i = 0 while i < len(l): if i < len(l) - 2: x, _ = l[i] x2, _ = l[i + 1] x3, _ = l[i + 2] if x == ':' and x3 == ':' and is_emoji_en(x2): res.append((emoji.emojize(':%s:' % x2), 'EMOJI')) i += 3 else: res.append(l[i]) i += 1 else: res.append(l[i]) i += 1 return res expressions_len2 = set([':)', ':(',]) expressions_len3 = set(['^_^', '^O^', '≥▽≤', '+_+',\ '^◇^', '~o~', '-ω-', '-_-', '^ω^',\ '^o^', '╯ε╰', '∩_∩', '^O^', '=_=', 'T_T']) expressions_len4 = set(['-_-#']) expressions = [expressions_len2, expressions_len3, expressions_len4] def merge_expression(l): res = [] i = 0 while i < len(l): if i + 3 < len(l) and ''.join(l[i:i+4]) in expressions_len4: res.append(''.join(l[i:i+4])) i = i + 4 elif i + 2 < len(l) and ''.join(l[i:i + 3]) in expressions_len3: res.append(''.join(l[i:i + 3])) i += 3 elif i + 1 < len(l) and ''.join(l[i:i + 2]) in expressions_len2: res.append(''.join(l[i:i + 2])) i += 2 else: res.append(l[i]) i += 1 return res def merge_expression2(l): res = [] i = 0 while i < len(l): if i + 3 < len(l) and ''.join([x for x,y in l[i:i+4]]) in expressions_len4: res.append((''.join([x for x,y in l[i:i+4]]), 'EXPRESSION')) i += 4 elif i + 2 < len(l) and ''.join([x for x,y in l[i:i + 3]]) in expressions_len3: res.append((''.join([x for x,y in l[i:i + 3]]), 'EXPRESSION')) i += 3 elif i + 1 < len(l) and ''.join([x for x,y in l[i:i + 2]]) in expressions_len2: res.append((''.join([x for x,y in l[i:i + 2]]), 'EXPRESSION')) i += 2 else: res.append(l[i]) i += 1 return res bseg = None def init_bseg(use_pos=False, use_ner=False): global bseg if bseg is None: assert six.PY2, 'bseg must use python2' import nowarning import libgezi import libsegment from libsegment import Segmentor if use_pos: Segmentor.AddStrategy(libsegment.SEG_USE_POSTAG) if use_ner: Segmentor.AddStrategy(libsegment.SEG_USE_WORDNER) #Segmentor.Init(ner_maxterm_count=1024) Segmentor.Init() bseg = Segmentor return bseg def to_gbk(text): return text.decode('utf8', 'ignore').encode('gbk', 'ignore') def to_utf8(text): return text.decode('gbk', 'ignore').encode('utf8', 'ignore') # sentence piece sp = None def init_sp(path=None): import sentencepiece as spm global sp if sp is None: sp = spm.SentencePieceProcessor() if path is None: path = './sp.model' sp.Load(path) assert sp def word_cut(text): if gezi.env_has('SENTENCE_PIECE'): init_sp() l = sp.EncodeAsPieces(text) if l: if l[0] == '▁': l = l[1:] elif l[0].startswith('▁'): l[0] = l[0][1:] return l if gezi.env_has('STANFORD_NLP'): import emoji init_stanford_nlp() try: l = stanford_nlp.word_tokenize(emoji.demojize(text)) l = hack_emoji(l) return merge_expression(l) except Exception: print('stnaord error text: %s' % text, file=sys.stderr) l = list(jieba.cut(text)) return merge_expression(l) if gezi.env_has('BSEG'): import emoji init_bseg() try: # NOTICE py2 need decode utf8 to get unicode as input to emoji l = bseg.Segment(to_gbk(emoji.demojize(text.decode('utf8')))) l = [to_utf8(x) for x in l] l = hack_emoji(l) l = merge_expression(l) return l except Exception: print('bseg error text: %s' % text, file=sys.stderr) l = list(jieba.cut(text)) l = merge_expression(l) return l # TODO make a switch since jieba.posseg is much slower... then jieba.cut if gezi.env_has('JIEBA_POS'): l = jieba.posseg.cut(text) l = [word for word, tag in l] return merge_expression(l) return merge_expression(list(jieba.cut(text))) pos_tags = ["None", "Ag", "Dg", "Ng", "Tg", "Vg", "a", "ad", "an", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "nr", "ns", "nt", "nx", "nz", "o", "p", "q", "r", "s", "t", "u", "v", "vd", "vn", "w", "y", "z" ] #def pos_cut(text, same_with_ner=True): def pos_cut(text): #print('------------', text, gezi.env_has('BSEG')) if gezi.env_has('STANFORD_NLP'): import emoji init_stanford_nlp() l = stanford_nlp.pos_tag(emoji.demojize(text)) l = hack_emoji2(l) res = merge_expression2(l) elif gezi.env_has('BSEG'): import emoji init_bseg(use_pos=True) def bseg_(text): nodes = bseg.Cut(to_gbk(emoji.demojize(text.decode('utf8')))) l = [(to_utf8(x.word), pos_tags[x.type]) for x in nodes] return l l = bseg_(text) # if not same_with_ner: # l = bseg_(text) # else: # # HACK to have same seg result as word ner # MAX_LEN = 500 # text_len = len(text) # if text_len < MAX_LEN: # l = bseg_(text) # else: # len_ = 0 # words = [] # l = [] # for word in jieba.cut(text): # word = word.encode('utf-8') # len_ += len(word) # words.append(word) # if len_ >= MAX_LEN: # len_ = 0 # l += bseg_(''.join(words)) # #print(len(''.join(words)), len(l)) # words = [] # if words: # l += bseg_(''.join(words)) #assert l l = hack_emoji2(l) res = merge_expression2(l) else: res = merge_expression2(list(jieba.posseg.cut(text))) for i in range(len(res)): w, t = res[i] if w == '\x01' or w == '\x02' or w == '\x03': res[i] = (w, 'sep') return res #x = 100000 def ner_cut(text): import emoji if gezi.env_has('STANFORD_NLP'): init_stanford_nlp() l = stanford_nlp.ner(emoji.demojize(text)) l = merge_expression2(l) else: init_bseg(use_ner=True) def bseg_(text): bseg.Cut(to_gbk(emoji.demojize(text.decode('utf8')))) bseg.NerTag() if not gezi.env_has('BSEG_SUBNER'): nodes = bseg.GetNerNodes() else: nodes = bseg.GetSubNerNodes() l = [(to_utf8(x.word), x.name) for x in nodes] return l # have tested as 718 cause error MAX_LEN = 500 text_len = len(text) #l = bseg_(text) #print(text_len, len(l)) # global x # if len(l) == 0: # if text_len < x: # x = text_len # #print('-------------------', x) #print('-----------------', x) # HACK bseg wordner could nout seg long text so workaround here is to cut it # well still has some fail.. jieba_cuts = None if text_len < MAX_LEN: l = bseg_(text) else: len_ = 0 words = [] l = [] jieba_cuts = [x.encode('utf8') for x in jieba.cut(text)] for word in jieba_cuts: len_ += len(word) words.append(word) if len_ >= MAX_LEN: len_ = 0 l += bseg_(''.join(words)) #print(len(''.join(words)), len(l)) words = [] if words: l += bseg_(''.join(words)) #if len(l) < len(text) / 10: if len(''.join([x for x,y in l]).decode('utf8')) < len(text.decode('utf8')) * 0.8: print('warning, bad cut for turn back to use jieba cut:', text, file=sys.stderr) if not jieba_cuts: jieba_cuts = [x.encode('utf8') for x in jieba.cut(text)] l = [(x, 'NOR') for x in jieba_cuts] #exit(0) #assert l l = hack_emoji2(l) res = merge_expression2(l) for i in range(len(res)): w, t = res[i] if w == '\x01' or w == '\x02' or w == '\x03': res[i] = (w, 'sep') return res #TODO hack how to better deal? now for c++ part must be str.. #TODO JiebaSegmentor can be Stanford nlp seg mentor if set STANFORD_NLP in env, so only to diff from BZegmentor class JiebaSegmentor(object): def __init__(self): pass def segment_basic_single(self, text): #results = [word for word in get_single_cns(text)] results = [word for word in segment_char(text, cn_only=True)] results += [word for word in cut(text)] return results def segment_basic_single_all(self, text): #results = [word for word in get_single_cns(text)] results = [word for word in segment_char(text, cn_only=False)] results += [word for word in cut(text)] return results def segment_full_single(self, text): #results = [word for word in get_single_cns(text)] results = [word for word in segment_char(text, cn_only=True)] results += [word for word in cut_for_search(text)] return results def Segment(self, text, method='basic'): """ default means all level combine """ method = method.replace('phrase', 'basic') words = None if method == 'default' or method == 'basic' or method == 'exact': #words = [x for x in cut(text)] words = cut(text) elif method == 'basic_digit': #words = [x for x in cut(text)] words = cut(text) def sep_digits(word): l = [] s = '' for c in word: if c.isdigit(): if s: l.append(s) l.append(c) s = '' else: s += c if s: l.append(s) return l l = [] for w in words: l += sep_digits(w) words = l elif method == 'basic_single' or method == 'exact_single': words = self.segment_basic_single(text) elif method == 'basic_single_all': words = self.segment_basic_single_all(text) elif method == 'search': words = cut_for_search(text) elif method == 'cut_all': words = cut(text, cut_all=True) elif method == 'all' or method == 'full': words = self.segment_full_single(text) elif method == 'en': words = segment_en(text) elif method == 'char': words = segment_char(text) elif method == 'pinyin': words = segment_pinyin(text) elif method == 'pinyin2': words = segment_utf8_pinyin2(text) elif method == 'basic2': words = kf.deform_dis_get_words(text) elif method =='char_pinyin': from pypinyin import lazy_pinyin as pinyin #return pinyin(text) return [x.strip() for x in pinyin(text)] elif method =='char_pinyin2': from pypinyin import lazy_pinyin as pinyin return [''.join(pinyin(x)) for x in text] elif method == 'char_then_pinyin': # In [2]: pinyin('补肾微信xtx0329') # Out[2]: ['bu', 'shen', 'wei', 'xin', 'xtx0329'] # so as 补,肾,微,信,x,t,x,0,3,2,9,,bu,shen,wei,xin, from pypinyin import lazy_pinyin as pinyin return segment_char(text) + [''] + [x.strip() for x in pinyin(text)] elif method == 'char_then_pinyin2': from pypinyin import lazy_pinyin as pinyin return segment_char(text) + [''] + [''.join(pinyin(x)).strip() for x in text if x.strip()] elif method == 'word_char': return [x for x in cut(text, cut_all=False)] + [''] + segment_char(text) elif method == 'word_char_pinyin': from pypinyin import lazy_pinyin as pinyin return [x for x in cut(text, cut_all=False)] + [''] + segment_char(text) + [''] + [x.strip() for x in pinyin(text)] elif method == 'word_char_pinyin2': from pypinyin import lazy_pinyin as pinyin return [x for x in cut(text, cut_all=False)] + [''] + segment_char(text) + [''] + [''.join(pinyin(x)).strip() for x in text if x.strip()] elif method == 'tab': words = text.strip().split('\t') elif method == 'white_space': words = text.strip().split() else: raise ValueError('%s not supported'%method) #words = [w for w in words] if six.PY2: for i in range(len(words)): if isinstance(words[i], unicode): words[i] = words[i].encode('utf-8') return words Segmentor = JiebaSegmentor if gezi.encoding == 'gbk' or gezi.env_has('BSEG'): import libgezi import libsegment seg = libsegment.Segmentor segment_char = segment_gbk_char class BSegmentor(object): def __init__(self, data='./data/wordseg', conf='./conf/scw.conf'): assert six.PY2, 'baidu segmentor now only support py2' seg.Init(data_dir=data, conf_path=conf) #@TODO add fixed pre dict like 1500w keyword ? def segment_nodupe_noseq(self, text): results = set() for word in seg.Segment(text): results.add(word) for word in seg.Segment(text, libsegment.SEG_NEWWORD): results.add(word) for word in seg.Segment(text, libsegment.SEG_BASIC): results.add(word) for word in get_single_cns(text): results.add(word) return list(results) def Segment_nodupe_noseq(self, text): return self.segment_noseq(text) def segment_nodupe(self, text): results = [word for word in seg.Segment(text)] results += [wrod for word in seg.Segment(text, libsegment.SEG_NEWWORD)] results += [wrod for word in seg.Segment(text, libsegment.SEG_BASIC)] results += [word for word in get_single_cns(text)] return gezi.dedupe_list(results) def Segment_nodupe(self, text): return self.segment(text) #@TODO is this best method ? def segment(self, text): results = [word for word in get_single_cns(text)] results_set = set(results) for word in seg.Segment(text): if word not in results_set: results.append(word) results_set.add(word) for word in seg.Segment(text, libsegment.SEG_NEWWORD): if word not in results_set: results.append(word) results_set.add(word) for word in seg.Segment(text, libsegment.SEG_BASIC): if word.isdigit(): word = '' if word not in results_set: results.append(word) results_set.add(word) return results def segment_seq_all(self, text): results = [word for word in get_single_cns(text)] results.append('') for word in seg.Segment(text, libsegment.SEG_BASIC): results.append(word) results.append('') for word in seg.Segment(text): results.append(word) results.append('') for word in seg.Segment(text, libsegment.SEG_NEWWORD): results.append(word) return results def segment_phrase(self, text): return seg.Segment(text) def segment_basic(self, text): return seg.Segment(text, libsegment.SEG_BASIC) def segment_phrase_single(self, text): results = [word for word in get_single_cns(text)] results += [word for word in seg.Segment(text)] return results def segment_phrase_single_all(self, text): results = [word for word in segment_char(text, cn_only=False)] results += [word for word in seg.Segment(text)] return results def segment_basic_single(self, text): results = [word for word in get_single_cns(text)] results += [word for word in seg.Segment(text, libsegment.SEG_BASIC)] return results def segment_basic_single_all(self, text): results = [word for word in segment_char(text, cn_only=False)] results += [word for word in seg.Segment(text, libsegment.SEG_BASIC)] return results def segment_phrase_single_all(self, text): results = [word for word in segment_char(text, cn_only=False)] results += [word for word in seg.Segment(text)] return results def segment_merge_newword_single(self, text): results = [word for word in get_single_cns(text)] results += [word for word in seg.Segment(text, libsegment.SEG_MERGE_NEWWORD)] return results def Segment(self, text, method='default'): """ default means all level combine """ if gezi.env_has('JIEBA_SEG'): ori_text = text try: text = text.decode('utf8').encode('gbk') except Exception: #print('------------jieba cut') return JiebaSegmentor().Segment(ori_text, method=method) else: text = text.decode('utf8').encode('gbk', 'ignore') if method == 'default' or method == 'all' or method == 'full': l = self.segment(text) elif method == 'phrase_single': l = self.segment_phrase_single(text) elif method == 'phrase_single_all': l = self.segment_phrase_single_all(text) elif method == 'phrase': l = seg.Segment(text) elif method == 'basic': l = seg.Segment(text, libsegment.SEG_BASIC) elif method == 'basic_digit': words = seg.Segment(text, libsegment.SEG_BASIC) def sep_digits(word): l = [] s = '' for c in word: if c.isdigit(): if s: l.append(s) l.append(c) s = '' else: s += c if s: l.append(s) return l l = [] for w in words: l += sep_digits(w) words = l elif method == 'basic_single': l = self.segment_basic_single(text) elif method == 'basic_single_all': l = self.segment_basic_single_all(text) elif method == 'phrase_single_all': l = self.segment_phrase_single_all(text) elif method == 'merge_newword': l = seg.Segment(text, libsegment.SEG_MERGE_NEWWORD) elif method == 'merge_newword_single': l = self.segment_merge_newword_single(text) elif method == 'seq_all': l = self.segment_seq_all(text) elif method == 'en': l = segment_en(text) elif method == 'tokenize': l = tokenize(text) elif method == 'char': l = segment_char(text) elif method == 'tab': l = text.strip().split('\t') elif method == 'white_space': l = text.strip().split() else: raise ValueError('%s not supported'%method) return [x.decode('gbk').encode('utf8') for x in l] Segmentor = BSegmentor import threading #looks like by this way... threads create delete too much cost @TODO #and how to prevent this log? #DEBUG: 08-27 13:18:50: * 0 [seg_init_by_model]: set use ne=0 #TRACE: 08-27 13:18:50: * 0 [clear]: tag init stat error #DEBUG: 08-27 13:18:50: * 0 [init_by_model]: max_nbest=1, max_word_num=100, max_word_len=100, max_y_size=6 #2>/dev/null 2>&1 #so multi thread only good for create 12 threads each do many works at parrallel, here do so little work.. slow! def segments(texts, segmentor): results = [None] * len(texts) def segment_(i, text): seg.Init() results[i] = segmentor.segment(text) threads = [] for args in enumerate(texts): t = threading.Thread(target=segment_, args=args) threads.append(t) for t in threads: t.start() for t in threads: t.join() return results #seems multiprocessing same as above ? #segmentor resource only init once! whyï¼? @TODO import multiprocessing from multiprocessing import Manager def segments_multiprocess(texts, segmentor): manager = Manager() dict_ = manager.dict() results = [None] * len(texts) def segment_(i, text): seg.Init() dict_[i] = segmentor.segment(text) record = [] for args in enumerate(texts): process = multiprocessing.Process(target=segment_, args=args) process.start() record.append(process) for process in record: process.join() for i in xrange(len(record)): results[i] = dict_[i] return results ================================================ FILE: utils/gezi/setup.py ================================================ import os import setuptools from setuptools import setup __version__ = '0.2.0' setup(name='gezi', version=__version__, packages=setuptools.find_packages()) ================================================ FILE: utils/gezi/summary.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file summary.py # \author chenghuige # \date 2019-07-22 19:09:08.471338 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os # Code referenced from https://gist.github.com/gyglim/1f8dfb1b5c82627ae3efcfbbadb9f514 import tensorflow as tf import numpy as np import scipy.misc import PIL.Image as Image try: from StringIO import StringIO # Python 2.7 except ImportError: from io import BytesIO # Python 3.x import matplotlib.pyplot as plt import cv2 class SummaryWriter(object): def __init__(self, log_dir): """Create a summary writer logging to log_dir.""" self.writer = tf.summary.FileWriter(log_dir) def scalar(self, tag, value, step): """Log a scalar variable.""" summary = tf.Summary(value=[tf.Summary.Value(tag=tag, simple_value=value)]) self.writer.add_summary(summary, step) self.writer.flush() def image(self, tag, images, step, texts=None, bytes_input=False): """Log a list of images.""" if not isinstance(images, (list, tuple)): images = [images] img_summaries = [] if texts: assert len(images) == len(texts) for i, img in enumerate(images): # Write the image to a string if not bytes_input: try: s = StringIO() except: s = BytesIO() if not texts: #scipy.misc.toimage(img).save(s, format="png") Image.fromarray(img).save(s, format="png") else: text = texts[i] fig, ax = plt.subplots() ax.set_title(text, fontsize=40) ax.imshow(img) plt.savefig(s, format='png', bbox_inches='tight') height = img.shape[0] width = img.shape[1] else: s = img height, width = Image.open(s).size # Create an Image object img_sum = tf.Summary.Image(encoded_image_string=s.getvalue(), height=height, width=width) # Create a Summary value img_summaries.append(tf.Summary.Value(tag='%s/%d' % (tag, i), image=img_sum)) # Create and write Summary summary = tf.Summary(value=img_summaries) self.writer.add_summary(summary, step) self.writer.flush() def history(self, tag, values, step, bins=1000): """Log a histogram of the tensor of values.""" # Create a histogram using numpy counts, bin_edges = np.histogram(values, bins=bins) # Fill the fields of the histogram proto hist = tf.HistogramProto() hist.min = float(np.min(values)) hist.max = float(np.max(values)) hist.num = int(np.prod(values.shape)) hist.sum = float(np.sum(values)) hist.sum_squares = float(np.sum(values**2)) # Drop the start of the first bin bin_edges = bin_edges[1:] # Add bin edges and counts for edge in bin_edges: hist.bucket_limit.append(edge) for c in counts: hist.bucket.append(c) # Create and write Summary summary = tf.Summary(value=[tf.Summary.Value(tag=tag, histo=hist)]) self.writer.add_summary(summary, step) self.writer.flush() ================================================ FILE: utils/gezi/test/test_get_single_cn.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file test.py # \author chenghuige # \date 2016-08-25 19:20:59.405334 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division #from __future__ import print_function import sys,os #import libstringutil import nowarning import libgezi libstringutil = libgezi print libstringutil.extract_gbk_dual('nikeЬis') for item in libstringutil.to_cnvec('nikeЬis'): print item l = libstringutil.extract_gbk_dual('nikeЬǺhahԲ') print l print type(l) for item in l.decode('gbk'): print item.encode('gbk') l = libstringutil.to_cnvec(libstringutil.extract_chinese('nikeЬǺhahԲ')) for item in l: print item ================================================ FILE: utils/gezi/test/test_ngrams.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file test_ngrams.py # \author chenghuige # \date 2018-03-01 11:43:55.445657 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import gezi import six assert six.PY3 def ngrams(word, minn=3, maxn=3): print(word) print(gezi.get_ngrams(word)) print(gezi.get_ngrams(word, 2, 3)) print(gezi.get_ngrams(word, 2, 6), len(gezi.get_ngrams(word, 2, 6))) print(gezi.get_ngrams_hash(word, 1000)) ngrams('motherfuck') ngrams('我的天啊') ngrams('FrenchMan') ================================================ FILE: utils/gezi/timer.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file timer.py # \author chenghuige # \date 2016-08-15 16:32:21.015897 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ @TODO may be with gezi.Timer('abc') as timer: .... """ import sys, time class Timer(): def __init__(self, info='', print_before=False): self.start_time = time.time() if info and print_before: print('%s start'%info, file=sys.stderr) self.info = info def elapsed(self): end_time = time.time() duration = end_time - self.start_time self.start_time = end_time return duration def elapsed_ms(self): return self.elapsed() * 1000 #ipython not allow this?.. FIXME def print(self): if self.info: print('{} duration: {}'.format(self.info, self.elapsed()), file=sys.stderr) else: print(self.elapsed(), file=sys.stderr) def print_elapsed(self): if self.info: print('{} duration: {}'.format(self.info, self.elapsed()), file=sys.stderr) else: print(self.elapsed(), file=sys.stderr) ================================================ FILE: utils/gezi/topn.py ================================================ #!/usr/bin/env python # ============================================================================== # \file topn.py # \author chenghuige # \date 2017-03-12 16:55:52.257425 # \Description # ============================================================================== """ copy from tensorflow\models\im2txt\im2txt\inference_utils\caption_generator.py """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import heapq class TopN(object): """Maintains the top n elements of an incrementally provided set.""" def __init__(self, n, reverse=True): self._n = n self._data = [] self.reverse = reverse def size(self): assert self._data is not None return len(self._data) def push(self, x): """Pushes a new element.""" assert self._data is not None if len(self._data) < self._n: heapq.heappush(self._data, x) else: heapq.heappushpop(self._data, x) def extract(self, sort=False): """Extracts all elements from the TopN. This is a destructive operation. The only method that can be called immediately after extract() is reset(). print(id, logprob) Args: sort: Whether to return the elements in descending sorted order. Returns: A list of data; the top n elements provided to the set. """ assert self._data is not None data = self._data self._data = None if sort: data.sort(reverse=self.reverse) return data def reset(self): """Returns the TopN to an empty state.""" self._data = [] ================================================ FILE: utils/gezi/util.py ================================================ #!/usr/bin/env python #encoding=utf8 # ============================================================================== # \file util.py # \author chenghuige # \date 2016-08-18 18:24:05.771671 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import six import collections from collections import namedtuple import numpy as np import glob import math import re import time import gezi def is_cn(word): return '\u4e00' <= item[0] <= '\u9fa5' def break_sentence(sentence, max_sent_len, additional=5): """ For example, for a sentence with 70 words, supposing the the `max_sent_len' is 30, break it into 3 sentences. :param sentence: list[str] the sentence :param max_sent_len: :return: """ ret = [] cur = 0 length = len(sentence) while cur < length: if cur + max_sent_len + additional >= length: ret.append(sentence[cur: length]) break ret.append(sentence[cur: min(length, cur + max_sent_len)]) cur += max_sent_len return ret def add_start_end(w, start='', end=''): return [start] + list(w) + [end] def str2scores(l): if ',' in l: # this is list save (list of list) return np.array([float(x.strip()) for x in l[1:-1].split(',')]) else: # this numpy save (list of numpy array) return np.array([float(x.strip()) for x in l[1:-1].split(' ') if x.strip()]) def get_unmodify_minutes(file_): file_mod_time = os.stat(file_).st_mtime last_time = (time.time() - file_mod_time) / 60 return last_time # ## Well not work well, so fall back to use py2 bseg # def to_simplify(sentence): # sentence = gezi.langconv.Converter('zh-hans').convert(sentence).replace('馀', '余') # return sentence # def parse_list_str(input, sep=','): # return np.array([float(x.strip()) for x in input[1:-1].split(sep) if x.strip()]) # https://stackoverflow.com/questions/43146528/how-to-extract-all-the-emojis-from-text # def extract_emojis(sentence): # import emoji # allchars = [str for str in sentence] # l = [c for c in allchars if c in emoji.UNICODE_EMOJI] # return l def extract_emojis(content): import emoji emojis_list=map(lambda x:''.join(x.split()),emoji.UNICODE_EMOJI.keys()) r = re.compile('|'.join(re.escape(p) for p in emojis_list)) return r.sub(r'',content) def remove_emojis(sentence): import emoji allchars = [str for str in sentence] l = [c for c in allchars if c not in emoji.UNICODE_EMOJI] return ''.join(l) def is_emoji(w): import emoji return w in emoji.UNICODE_EMOJI def dict2namedtuple(thedict, name): thenametuple = namedtuple(name, []) for key, val in thedict.items(): if not isinstance(key, str): msg = 'dict keys must be strings not {}' raise ValueError(msg.format(key.__class__)) if not isinstance(val, dict): setattr(thenametuple, key, val) else: newname = dict2namedtuple(val, key) setattr(thenametuple, key, newname) return thenametuple def csv(s): s = s.replace("\"", "\"\"") s = "\"" + s + "\"" return s def get_weights(weights): if isinstance(weights, str): weights = map(float, weights.split(',')) total_weights = sum(weights) #alpha = len(weights) / total_weights alpha = 1 / total_weights weights = [x * alpha for x in weights] return weights def probs_entropy(probs): e_x = [-p_x*math.log(p_x,2) for p_x in probs] entropy = sum(e_x) return entropy def dist(x,y): return np.sqrt(np.sum((x-y)**2)) def cosine(a, b): from numpy import dot from numpy.linalg import norm return dot(a, b)/(norm(a)*norm(b)) def softmax(x, axis=-1): mx = np.amax(x, axis=axis, keepdims=True) x_exp = np.exp(x - mx) x_sum = np.sum(x_exp, axis=axis, keepdims=True) res = x_exp / x_sum return res # https://stackoverflow.com/questions/3985619/how-to-calculate-a-logistic-sigmoid-function-in-python def sigmoid(x): s = 1/(1+np.exp(-x)) return s def load_image_into_numpy_array(image): (im_width, im_height) = image.size # what about 4 channels ? TODO return np.array(image.getdata()).reshape( (im_height, im_width, -1)).astype(np.uint8)[:,:,:3] def dirname(input): if os.path.isdir(input): return input else: dirname = os.path.dirname(input) if not dirname: dirname = '.' return dirname def non_empty(file): return os.path.exists(file) and os.path.getsize(file) > 0 def merge_dicts(*dict_args): """ Given any number of dicts, shallow copy and merge into a new dict, precedence goes to key value pairs in latter dicts. #https://stackoverflow.com/questions/38987/how-to-merge-two-dictionaries-in-a-single-expression """ result = {} for dictionary in dict_args: result.update(dictionary) return result def norm(text): return text.strip().lower().replace('。', '') def loggest_match(cns, vocab, encode_unk=False, unk_vocab_size=None, vocab_size=None): len_ = len(cns) for i in range(len_): w = ''.join(cns[:len_ - i]) #for compat with c++ vocabulary if vocab.has(w): return vocab.id(w), cns[len_ - i:] elif unk_vocab_size: return gezi.hash(w) % unk_vocab_size + vocab_size, cns[len_ - i:] if encode_unk: return vocab.unk_id(), cns[1:] else: return -1, cns[1:] #TODO might use trie to speed up longest match segment def loggest_match_seg(word, vocab, encode_unk=False): cns = gezi.get_single_cns(word) word_ids = [] while True: id, cns = loggest_match(cns, vocab, encode_unk=encode_unk) if id != -1: word_ids.append(id) if not cns: break return word_ids def index(l, val): try: return l.index(val) except Exception: return len(l) def to_pascal_name(name): if not name or name[0].isupper(): return name return gnu2pascal(name) def to_gnu_name(name): if not name or name[0].islower(): return name return pascal2gnu(name) def pascal2gnu(name): """ convert from AbcDef to abc_def name must be in pascal format """ l = [name[0].lower()] for i in range(1, len(name)): if name[i].isupper(): l.append('_') l.append(name[i].lower()) else: l.append(name[i]) return ''.join(l) def gnu2pascal(name): """ convert from abc_def to AbcDef name must be in gnu format """ l = [] l = [name[0].upper()] need_upper = False for i in range(1, len(name)): if name[i] == '_': need_upper = True continue else: if need_upper: l.append(name[i].upper()) else: l.append(name[i]) need_upper = False return ''.join(l) return ''.join(l) def is_gbk_luanma(text): return len(text) > len(text.decode('gb2312', 'ignore').encode('utf8')) def gen_sum_list(l): l2 = [x for x in l] for i in range(1, len(l)): l2[i] += l2[i - 1] return l2 def add_one(d, word): if not word in d: d[word] = 1 else: d[word] += 1 def pretty_floats(values): if not isinstance(values, (list, tuple)): values = [values] #return [float('{:.5f}'.format(x)) for x in values] return [float('{:e}'.format(x)) for x in values] #return ['{}'.format(x) for x in values] def get_singles(l): """ get signle elment as list, filter list """ return [x for x in l if not isinstance(x, collections.Iterable)] def is_single(item): return not isinstance(item, collections.Iterable) def iterable(item): """ be careful! like string 'abc' is iterable! you may need to use if not isinstance(values, (list, tuple)): """ return isinstance(item, collections.Iterable) def is_list_or_tuple(item): return isinstance(item, (list, tuple)) def get_value_name_list(values, names): return ['{}:{:.4f}'.format(x[0], x[1]) for x in zip(names, values)] def batches(l, batch_size): """ :param l: list :param group_size: size of each group :return: Yields successive group-sized lists from l. """ for i in range(0, len(l), batch_size): yield l[i: i + batch_size] #@TODO better pad def pad(l, maxlen, mark=0): if isinstance(l, list): l.extend([mark] * (maxlen - len(l))) return l[:maxlen] elif isinstance(l, np.ndarray): return l else: raise ValueError('not support') def nppad(l, maxlen): if maxlen > len(l): return np.lib.pad(l, (0, maxlen - len(l)), 'constant') else: return l[:maxlen] def try_mkdir(dir): if not os.path.exists(dir): print('make new dir: [%s]'%dir, file=sys.stderr) os.makedirs(dir) def get_dir(path): if os.path.isdir(path): return path return os.path.dirname(path) #@TODO perf? def dedupe_list(l): #l_set = list(set(l)) #l_set.sort(key = l.index) l_set = [] set_ = set() for item in l: if item not in set_: set_.add(item) l_set.append(item) return l_set #@TODO def parallel_run(target, args_list, num_threads): record = [] for thread_index in xrange(num_threads): process = multiprocessing.Process(target=target,args=args_list[thread_index]) process.start() record.append(process) for process in record: process.join() import threading def multithreads_run(target, args_list): num_threads = len(args_list) threads = [] for args in args_list: t = threading.Thread(target=target, args=args) threads.append(t) for t in threads: t.join() #@TODO move to bigdata_util.py #----------------file related def is_glob_pattern(input): return '*' in input def file_is_empty(path): return os.stat(path).st_size==0 def list_files(inputs): if not inputs: return [] files = [] inputs = inputs.split(',') for input in inputs: if not input or not input.strip(): continue parts = [] if os.path.isdir(input): parts = [os.path.join(input, f) for f in os.listdir(input)] elif os.path.isfile(input): parts = [input] else: parts = glob.glob(input) files += parts files = [x for x in files if not (file_is_empty(x) or x.endswith('num_records.txt'))] return files def sorted_ls(path, time_descending=True): mtime = lambda f: os.stat(os.path.join(path, f)).st_mtime return list(sorted(os.listdir(path), key=mtime, reverse=time_descending)) def list_models(model_dir, time_descending=True): """ list all models in model_dir """ files = [file for file in glob.glob('%s/model.ckpt-*'%(model_dir)) if not file.endswith('.meta')] files.sort(key=lambda x: os.path.getmtime(x), reverse=time_descending) return files #----------conf def save_conf(con): file = '%s.py'%con.__name__ out = open(file, 'w') for key,value in con.__dict__.items(): if not key.startswith('__'): if not isinstance(value, str): result = '{} = {}\n'.format(key, value) else: result = '{} = \'{}\'\n'.format(key, value) out.write(result) def write_to_txt(data, file): out = open(file, 'w') out.write('{}'.format(data)) def read_int_from(file, default_value=None): return int(open(file).readline().strip().split()[0]) if os.path.isfile(file) else default_value def read_float_from(file, default_value=None): return float(open(file).readline().strip().split()[0]) if os.path.isfile(file) else default_value def read_str_from(file, default_value=None): return open(file).readline().strip() if os.path.isfile(file) else default_value def img_html(img): return '

\n'.format(img) def text_html(text): return '

{}

'.format(text) def thtml(text): return text_html(text) #@TODO support *content def hprint(content): print('

', content,'

') def imgprint(img): print(img_html(img)) def unison_shuffle(a, b): """ http://stackoverflow.com/questions/4601373/better-way-to-shuffle-two-numpy-arrays-in-unison """ assert len(a) == len(b) try: from sklearn.utils import shuffle a, b = shuffle(a, b, random_state=0) return a, b except Exception: print('sklearn not installed! use numpy but is not inplace shuffle', file=sys.stderr) import numpy index = numpy.random.permutation(len(a)) return a[index], b[index] def finalize_feature(fe, mode='w', outfile='./feature_name.txt', sep='\n'): #print(fe.Str('\n'), file=sys.stderr) #print('\n'.join(['{}:{}'.format(i, fname) for i, fname in enumerate(fe.names())]), file=sys.stderr) #print(fe.Length(), file=sys.stderr) if mode == 'w': fe.write_names(file=outfile, sep=sep) elif mode == 'a': fe.append_names(file=outfile, sep=sep) def write_feature_names(names, mode='a', outfile='./feature_name.txt', sep='\n'): out = open(outfile, mode) out.write(sep.join(names)) out.write('\n') def get_feature_names(file_): feature_names = [] for line in open(file_): name = line.rstrip().split('#')[0].strip() if not name: continue feature_names.append(name) return feature_names def read_feature_names(file_): feature_names = [] for line in open(file_): name = line.rstrip().split('#')[0].strip() if not name: continue feature_names.append(name) return feature_names def get_feature_names_dict(file_): feature_names_dict = {} index = 0 for line in open(file_): name = line.rstrip().split('#')[0].strip() if not name: continue feature_names_dict[name] = index index += 1 return feature_names_dict def read_feature_names_dict(file_): feature_names_dict = {} index = 0 for line in open(file_): name = line.rstrip().split('#')[0].strip() if not name: continue feature_names_dict[name] = index index += 1 return feature_names_dict def update_sparse_feature(feature, num_pre_features): features = feature.split(',') index_values = [x.split(':') for x in features] return ','.join(['{}:{}'.format(int(index) + num_pre_features, value) for index,value in index_values]) def merge_sparse_feature(fe1, fe2, num_fe1): if not fe1: return update_sparse_feature(fe2, num_fe1) if not fe2: return fe1 return ','.join([fe1, update_sparse_feature(fe2, num_fe1)]) #TODO move to other place #http://blog.csdn.net/luo123n/article/details/9999481 def edit_distance(first,second): if len(first) > len(second): first,second = second,first if len(first) == 0: return len(second) if len(second) == 0: return len(first) first_length = len(first) + 1 second_length = len(second) + 1 distance_matrix = [range(second_length) for x in range(first_length)] for i in range(1,first_length): for j in range(1,second_length): deletion = distance_matrix[i-1][j] + 1 insertion = distance_matrix[i][j-1] + 1 substitution = distance_matrix[i-1][j-1] if first[i-1] != second[j-1]: substitution += 1 distance_matrix[i][j] = min(insertion,deletion,substitution) return distance_matrix[first_length-1][second_length-1] import json import gezi def save_json(obj, filename): timer = gezi.Timer("Saving to {}...".format(filename)) with open(filename, "w") as fh: json.dump(obj, fh) timer.print_elapsed() def load_json(filename): timer = gezi.Timer("Loading {}...".format(filename)) with open(filename) as fh: obj = json.load(fh) timer.print_elapsed() return obj def read_json(filename): return load_json(filename) def strip_suffix(s, suf): if s.endswith(suf): return s[:len(s)-len(suf)] return s def log(text, array): """Prints a text message. And, optionally, if a Numpy array is provided it prints it's shape, min, and max values. """ text = text.ljust(12) text += ("shape: {:20} min: {:10.5f} max: {:10.5f} mean: {:10.5f} unique: {:5d} {}".format( str(array.shape), np.min(array) if array.size else "", np.max(array) if array.size else "", np.mean(array) if array.size else "", len(np.unique(array)) if array.size else "", array.dtype)) print(text, file=sys.stderr) def log_full(text, array): """Prints a text message. And, optionally, if a Numpy array is provided it prints it's shape, min, and max values. """ log(text, array) print(np.unique(array), file=sys.stderr) def env_has(name): return name in os.environ and os.environ[name] != '0' def env_get(name): if name in os.environ: return os.environ[name] else: return None def env_set(name, val=1): os.environ[name] = str(val) def has_env(name): return name in os.environ and os.environ[name] != '0' def get_env(name): if name in os.environ: return os.environ[name] else: return None def set_env(name, val=1): os.environ[name] = str(val) def env_val(name, default=None): return None if name not in os.environ else os.environ[name] def use_matplotlib(backend='Agg'): import matplotlib matplotlib.use(backend) def decode(bytes_list): if not six.PY2: try: return np.array([x.decode() for x in bytes_list]) except Exception: return bytes_list else: return bytes_list def get_fold(total, num_folds, index): # index is None means all if index is None: return 0, total elif index < 0: return 0, 0 assert num_folds fold_size = total // num_folds start = fold_size * index end = start + fold_size if index != num_folds - 1 else total return start, end def is_fold(input, fold): input = strip_suffix(input, '.record') if fold is None: return False try: # part-0003 return int(re.split('-|_', input)[1]) == fold except Exception: # 3.record return int(re.split('.')[0]) == fold def to_list(item): if not isinstance(item, (list, tuple)): return [item] return item def repeat(iter): while True: for x in iter: yield x ================================================ FILE: utils/gezi/vocabulary.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import os #import tensorflow as tf from absl import flags from absl import logging """copy from google im2txt tensorflow/models/im2txt/inference_util, make it possible to replace c++ Version Vocabulary, add num_reserved_ids""" import gezi class Vocabulary(object): """Vocabulary class for an image-to-text model.""" def __init__(self, vocab_file=None, num_reserved_ids=1, start_word="", end_word="", unk_word="", pad_word="", min_count=None, max_words=None, buckets=None, fixed=False, simple=False, append=False): """Initializes the vocabulary. Args: vocab_file: File containing the vocabulary, where the words are the first whitespace-separated token on each line (other tokens are ignored) and the word ids are the corresponding line numbers. num_reserved_ids: might be 1 for vocab embedding make 0 as start_word: Special word denoting sentence start. end_word: Special word denoting sentence end. unk_word: Special word denoting unknown words. TODO add count support vocab.count(i) vocab.count(word) """ # HACK! if 'ngram' in vocab_file: if start_word == '': start_word = '<>' end_word = '<>' unk_word = '<>' pad_word = '<>' if not buckets: if not os.path.exists(vocab_file): logging.fatal("Vocab file %s not found.", vocab_file) logging.info("Initializing vocabulary from file: %s", vocab_file) with open(vocab_file, mode="r") as f: lines = list(f.readlines()) lines = [line.rstrip('\n').split('\t') for line in lines] if min_count: reverse_vocab = [x for x,y in lines if int(y) >= min_count] else: reverse_vocab = [x[0] if isinstance(x, (tuple, list)) else x for x in lines] self.counts = [] if len(lines[0]) == 2: self.counts = [int(y) for x,y in lines] if max_words: reverse_vocab = reverse_vocab[:max_words] if fixed: num_reserved_ids = 0 reserved_vocab = [] if num_reserved_ids > 0: reserved_vocab = [pad_word] * num_reserved_ids self.ori_size = len(reverse_vocab) #print('----re', reverse_vocab) reserved_vocab2 = [] if not fixed and not simple: if unk_word not in reverse_vocab and unk_word.lower() not in reverse_vocab: reserved_vocab2.append(unk_word) if start_word not in reverse_vocab and start_word.lower() not in reverse_vocab: reserved_vocab2.append(start_word) if end_word not in reverse_vocab and end_word.lower() not in reverse_vocab: reserved_vocab2.append(end_word) if append: # old version append mode reverse_vocab = reserved_vocab + reverse_vocab + reserved_vocab2 self.num_insert_words = len(reserved_vocab) self.num_append_words = len(reserved_vocab2) else: # new version not append but insert before reverse_vocab = reserved_vocab + reserved_vocab2 + reverse_vocab self.num_insert_words = len(reserved_vocab) + len(reserved_vocab2) self.num_append_words = 0 vocab = dict([(x, y) for (y, x) in enumerate(reverse_vocab)]) if self.counts: max_counts = self.counts[0] max_counts += 1 self.counts = [max_counts] * self.num_insert_words + self.counts + [1] * self.num_append_words logging.info("Created vocabulary with %d words" % len(vocab)) self.vocab = vocab # vocab[word] = id self.reverse_vocab = reverse_vocab # reverse_vocab[id] = word else: logging.info('Vocabulary just using hash with buckets', buckets) reserved_vocab = [] if num_reserved_ids > 0: reserved_vocab = [pad_word] * num_reserved_ids reserved_vocab2 = [unk_word, start_word, end_word] reverse_vocab = reserved_vocab + reserved_vocab2 vocab = dict([(x, y) for (y, x) in enumerate(reverse_vocab)]) self.vocab = vocab # vocab[word] = id self.reverse_vocab = reverse_vocab # reverse_vocab[id] = word # Save special word ids. if not fixed and not simple: self._start_id = vocab[start_word] self._end_id = vocab[end_word] self._unk_id = vocab[unk_word] self._buckets = buckets self.num_reserved_ids = num_reserved_ids self.start_word = start_word self.end_word = end_word self.unk_word = unk_word def is_special(self, word): return word == self.unk_word or word == self.start_word or word == self.end_word def word_to_id(self, word): """Returns the integer word id of a word string.""" if word in self.vocab: return self.vocab[word] else: if not self._buckets: return self._unk_id else: return self.size() + gezi.hash(word) % self._buckets def id(self, word): """Returns the integer word id of a word string.""" if word in self.vocab: return self.vocab[word] else: if not self._buckets: return self._unk_id else: return self.size() + gezi.hash(word) % self._buckets def id_to_word(self, word_id): """Returns the word string of an integer word id.""" if word_id >= len(self.reverse_vocab): return self.reverse_vocab[self._unk_id] else: return self.reverse_vocab[word_id] def key(self, word_id): """Returns the word string of an integer word id.""" if word_id >= len(self.reverse_vocab): return self.reverse_vocab[self._unk_id] else: return self.reverse_vocab[word_id] def count(self, word_id): if not self.counts: return 1 else: return self.counts[word_id] def count_word(self, word): id_ = self.id(word) # if id_ == self._unk_id: # return 0 return self.count(id_) def size(self): return len(self.reverse_vocab) def start_id(self): return self._start_id def end_id(self): return self._end_id def unk_id(self): return self._unk_id #TODO how to use 'if word in vocab' ? def has(self, word): return word in self.vocab def add(self, word): if not word in self.vocab: id = len(self.reverse_vocab) vocab[word] = id reverse_vocab.append(word) def words(self): return self.reverse_vocab[self.num_reserved_ids:] ================================================ FILE: utils/gezi/word_counter.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file word_counter.py # \author chenghuige # \date 2018-01-17 11:06:31.146818 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os from collections import Counter class WordCounter(object): def __init__(self, most_common=None, min_count=None, write_unknown=True, unknown_mark=''): self.most_common = most_common self.min_count = min_count or 0 self.write_unknown = write_unknown self.unknown_mark = unknown_mark self.counter = Counter() self.total = 0 def add(self, word, count=1): self.counter[word] += count self.total += count def save(self, filename, most_common=None, min_count=None): if not most_common: most_common = self.most_common if not most_common: most_common = len(self.counter) if not min_count: min_count = self.min_count with open(filename, 'w') as out: l = [] total = 0 for word, count in self.counter.most_common(most_common): if count < min_count: break l.append((word, count)) total += count if self.write_unknown: unknown_count = self.total - total else: unknown_count = 0 print('total_count', self.total, 'unknown_count', unknown_count, 'total_word', len(l), file=sys.stderr) for word, count in l: if unknown_count > count: print(self.unknown_mark, unknown_count, sep='\t',file=out) unknown_count = 0 print(word, count, sep='\t', file=out) ================================================ FILE: utils/gezi/zhtools/__init__.py ================================================ from gezi.zhtools import langconv ================================================ FILE: utils/gezi/zhtools/chconv.py ================================================ # -*- coding: utf-8 -*- # forked from MadEdit # Name: MadEdit/TradSimp.cpp # Description: Traditional Chinese <==> Simplified Chinese # Author: madedit@gmail.com # Licence: GPL # Forked by skydarkchen import sys UEMPTY = '' py2 = sys.version_info < (3, 0, 0) if py2: UEMPTY = UEMPTY.decode('utf8') chr = unichr Simp2Trad_Table = { 0x2018: 0x300E, 0x2019: 0x300F, 0x201C: 0x300C, 0x201D: 0x300D, 0x2033: 0x301E, 0x3013: 0x2550, 0x4E07: 0x842C, 0x4E0E: 0x8207, 0x4E11: 0x919C, 0x4E13: 0x5C08, 0x4E1A: 0x696D, 0x4E1B: 0x53E2, 0x4E1C: 0x6771, 0x4E1D: 0x7D72, 0x4E22: 0x4E1F, 0x4E24: 0x5169, 0x4E25: 0x56B4, 0x4E27: 0x55AA, 0x4E2A: 0x500B, 0x4E2C: 0x723F, 0x4E30: 0x8C50, 0x4E34: 0x81E8, 0x4E3A: 0x70BA, 0x4E3D: 0x9E97, 0x4E3E: 0x8209, 0x4E48: 0x9EBC, 0x4E49: 0x7FA9, 0x4E4C: 0x70CF, 0x4E50: 0x6A02, 0x4E54: 0x55AC, 0x4E60: 0x7FD2, 0x4E61: 0x9109, 0x4E66: 0x66F8, 0x4E70: 0x8CB7, 0x4E71: 0x4E82, 0x4E89: 0x722D, 0x4E8E: 0x65BC, 0x4E8F: 0x8667, 0x4E91: 0x96F2, 0x4E98: 0x4E99, 0x4E9A: 0x4E9E, 0x4EA7: 0x7522, 0x4EA9: 0x755D, 0x4EB2: 0x89AA, 0x4EB5: 0x893B, 0x4EB8: 0x56B2, 0x4EBF: 0x5104, 0x4EC5: 0x50C5, 0x4ECE: 0x5F9E, 0x4ED1: 0x4F96, 0x4ED3: 0x5009, 0x4EEA: 0x5100, 0x4EEC: 0x5011, 0x4EF7: 0x50F9, 0x4F17: 0x773E, 0x4F18: 0x512A, 0x4F19: 0x5925, 0x4F1A: 0x6703, 0x4F1B: 0x50B4, 0x4F1E: 0x5098, 0x4F1F: 0x5049, 0x4F20: 0x50B3, 0x4F24: 0x50B7, 0x4F25: 0x5000, 0x4F26: 0x502B, 0x4F27: 0x5096, 0x4F2A: 0x507D, 0x4F2B: 0x4F47, 0x4F53: 0x9AD4, 0x4F59: 0x9918, 0x4F63: 0x50AD, 0x4F65: 0x50C9, 0x4FA0: 0x4FE0, 0x4FA3: 0x4FB6, 0x4FA5: 0x50E5, 0x4FA6: 0x5075, 0x4FA7: 0x5074, 0x4FA8: 0x50D1, 0x4FA9: 0x5108, 0x4FAA: 0x5115, 0x4FAC: 0x5102, 0x4FE3: 0x4FC1, 0x4FE6: 0x5114, 0x4FE8: 0x513C, 0x4FE9: 0x5006, 0x4FEA: 0x5137, 0x4FED: 0x5109, 0x503A: 0x50B5, 0x503E: 0x50BE, 0x506C: 0x50AF, 0x507B: 0x50C2, 0x507E: 0x50E8, 0x507F: 0x511F, 0x50A5: 0x513B, 0x50A7: 0x5110, 0x50A8: 0x5132, 0x50A9: 0x513A, 0x513F: 0x5152, 0x5151: 0x514C, 0x5156: 0x5157, 0x515A: 0x9EE8, 0x5170: 0x862D, 0x5173: 0x95DC, 0x5174: 0x8208, 0x5179: 0x8332, 0x517B: 0x990A, 0x517D: 0x7378, 0x5181: 0x56C5, 0x5185: 0x5167, 0x5188: 0x5CA1, 0x518C: 0x518A, 0x5199: 0x5BEB, 0x519B: 0x8ECD, 0x519C: 0x8FB2, 0x51A2: 0x585A, 0x51AF: 0x99AE, 0x51B2: 0x6C96, 0x51B3: 0x6C7A, 0x51B5: 0x6CC1, 0x51BB: 0x51CD, 0x51C0: 0x6DE8, 0x51C4: 0x6DD2, 0x51C9: 0x6DBC, 0x51CC: 0x6DE9, 0x51CF: 0x6E1B, 0x51D1: 0x6E4A, 0x51DB: 0x51DC, 0x51E0: 0x5E7E, 0x51E4: 0x9CF3, 0x51EB: 0x9CE7, 0x51ED: 0x6191, 0x51EF: 0x51F1, 0x51FB: 0x64CA, 0x51FC: 0x6C39, 0x51FF: 0x947F, 0x520D: 0x82BB, 0x5212: 0x5283, 0x5218: 0x5289, 0x5219: 0x5247, 0x521A: 0x525B, 0x521B: 0x5275, 0x5220: 0x522A, 0x522B: 0x5225, 0x522C: 0x5257, 0x522D: 0x5244, 0x523D: 0x528A, 0x523F: 0x528C, 0x5240: 0x5274, 0x5242: 0x5291, 0x5250: 0x526E, 0x5251: 0x528D, 0x5265: 0x525D, 0x5267: 0x5287, 0x529D: 0x52F8, 0x529E: 0x8FA6, 0x52A1: 0x52D9, 0x52A2: 0x52F1, 0x52A8: 0x52D5, 0x52B1: 0x52F5, 0x52B2: 0x52C1, 0x52B3: 0x52DE, 0x52BF: 0x52E2, 0x52CB: 0x52F3, 0x52D0: 0x731B, 0x52DA: 0x52E9, 0x5300: 0x52FB, 0x5326: 0x532D, 0x532E: 0x5331, 0x533A: 0x5340, 0x533B: 0x91AB, 0x534E: 0x83EF, 0x534F: 0x5354, 0x5355: 0x55AE, 0x5356: 0x8CE3, # //0x53:C, 0x8514, 0x5362: 0x76E7, 0x5364: 0x9E75, 0x5367: 0x81E5, 0x536B: 0x885B, 0x5374: 0x537B, 0x537A: 0x5DF9, 0x5382: 0x5EE0, 0x5385: 0x5EF3, 0x5386: 0x66C6, 0x5389: 0x53B2, 0x538B: 0x58D3, 0x538C: 0x53AD, 0x538D: 0x5399, 0x5395: 0x5EC1, 0x53A2: 0x5EC2, 0x53A3: 0x53B4, 0x53A6: 0x5EC8, 0x53A8: 0x5EDA, 0x53A9: 0x5EC4, 0x53AE: 0x5EDD, 0x53BF: 0x7E23, 0x53C1: 0x4E09, 0x53C2: 0x53C3, 0x53C6: 0x9749, 0x53C7: 0x9746, 0x53CC: 0x96D9, 0x53D1: 0x767C, 0x53D8: 0x8B8A, 0x53D9: 0x6558, 0x53E0: 0x758A, 0x53F6: 0x8449, 0x53F7: 0x865F, 0x53F9: 0x6B4E, 0x53FD: 0x5630, 0x5401: 0x7C72, 0x540E: 0x5F8C, 0x5413: 0x5687, 0x5415: 0x5442, 0x5417: 0x55CE, 0x5423: 0x551A, 0x5428: 0x5678, 0x542C: 0x807D, 0x542F: 0x555F, 0x5434: 0x5433, 0x5452: 0x5638, 0x5453: 0x56C8, 0x5455: 0x5614, 0x5456: 0x56A6, 0x5457: 0x5504, 0x5458: 0x54E1, 0x5459: 0x54BC, 0x545B: 0x55C6, 0x545C: 0x55DA, 0x548F: 0x8A60, 0x5494: 0x54E2, 0x5499: 0x56A8, 0x549B: 0x5680, 0x549D: 0x565D, 0x54A4: 0x5412, 0x54B4: 0x5645, 0x54B8: 0x9E79, 0x54CC: 0x5471, 0x54CD: 0x97FF, 0x54D1: 0x555E, 0x54D2: 0x5660, 0x54D3: 0x5635, 0x54D4: 0x55F6, 0x54D5: 0x5666, 0x54D7: 0x5629, 0x54D9: 0x5672, 0x54DC: 0x568C, 0x54DD: 0x5665, 0x54DF: 0x55B2, 0x551B: 0x561C, 0x551D: 0x55CA, 0x5520: 0x562E, 0x5521: 0x5562, 0x5522: 0x55E9, 0x5523: 0x5515, 0x5524: 0x559A, 0x553F: 0x547C, 0x5567: 0x5616, 0x556C: 0x55C7, 0x556D: 0x56C0, 0x556E: 0x9F67, 0x5570: 0x56C9, 0x5574: 0x563D, 0x5578: 0x562F, 0x55B7: 0x5674, 0x55BD: 0x560D, 0x55BE: 0x56B3, 0x55EB: 0x56C1, 0x55EC: 0x5475, 0x55F3: 0x566F, 0x5618: 0x5653, 0x5624: 0x56B6, 0x5631: 0x56D1, 0x565C: 0x5695, 0x567C: 0x5288, 0x56A3: 0x56C2, 0x56AF: 0x8B14, 0x56E2: 0x5718, 0x56ED: 0x5712, 0x56F1: 0x56EA, 0x56F4: 0x570D, 0x56F5: 0x5707, 0x56FD: 0x570B, 0x56FE: 0x5716, 0x5706: 0x5713, 0x5723: 0x8056, 0x5739: 0x58D9, 0x573A: 0x5834, 0x5742: 0x962A, 0x574F: 0x58DE, 0x5757: 0x584A, 0x575A: 0x5805, 0x575B: 0x58C7, 0x575C: 0x58E2, 0x575D: 0x58E9, 0x575E: 0x5862, 0x575F: 0x58B3, 0x5760: 0x589C, 0x5784: 0x58DF, 0x5785: 0x58DF, 0x5786: 0x58DA, 0x5792: 0x58D8, 0x57A6: 0x58BE, 0x57A7: 0x5770, 0x57A9: 0x580A, 0x57AB: 0x588A, 0x57AD: 0x57E1, 0x57AF: 0x58B6, 0x57B1: 0x58CB, 0x57B2: 0x584F, 0x57B4: 0x5816, 0x57D8: 0x5852, 0x57D9: 0x5864, 0x57DA: 0x581D, 0x57DD: 0x588A, 0x57EF: 0x57B5, 0x5811: 0x5879, 0x5815: 0x58AE, 0x5846: 0x58EA, 0x586C: 0x539F, 0x5899: 0x7246, 0x58EE: 0x58EF, 0x58F0: 0x8072, 0x58F3: 0x6BBC, 0x58F6: 0x58FA, 0x58F8: 0x58FC, 0x5904: 0x8655, 0x5907: 0x5099, 0x590D: 0x8907, 0x591F: 0x5920, 0x5934: 0x982D, 0x5938: 0x8A87, 0x5939: 0x593E, 0x593A: 0x596A, 0x5941: 0x5969, 0x5942: 0x5950, 0x594B: 0x596E, 0x5956: 0x734E, 0x5965: 0x5967, 0x5986: 0x599D, 0x5987: 0x5A66, 0x5988: 0x5ABD, 0x59A9: 0x5AF5, 0x59AA: 0x5AD7, 0x59AB: 0x5AAF, 0x59D7: 0x59CD, 0x59DC: 0x8591, 0x5A04: 0x5A41, 0x5A05: 0x5A6D, 0x5A06: 0x5B08, 0x5A07: 0x5B0C, 0x5A08: 0x5B4C, 0x5A31: 0x5A1B, 0x5A32: 0x5AA7, 0x5A34: 0x5AFB, 0x5A73: 0x5AFF, 0x5A74: 0x5B30, 0x5A75: 0x5B0B, 0x5A76: 0x5B38, 0x5AAA: 0x5ABC, 0x5AD2: 0x5B21, 0x5AD4: 0x5B2A, 0x5AF1: 0x5B19, 0x5B37: 0x5B24, 0x5B59: 0x5B6B, 0x5B66: 0x5B78, 0x5B6A: 0x5B7F, 0x5B81: 0x5BE7, 0x5B9D: 0x5BF6, 0x5B9E: 0x5BE6, 0x5BA0: 0x5BF5, 0x5BA1: 0x5BE9, 0x5BAA: 0x61B2, 0x5BAB: 0x5BAE, 0x5BBD: 0x5BEC, 0x5BBE: 0x8CD3, 0x5BDD: 0x5BE2, 0x5BF9: 0x5C0D, 0x5BFB: 0x5C0B, 0x5BFC: 0x5C0E, 0x5BFF: 0x58FD, 0x5C06: 0x5C07, 0x5C14: 0x723E, 0x5C18: 0x5875, 0x5C1D: 0x5617, 0x5C27: 0x582F, 0x5C34: 0x5C37, 0x5C38: 0x5C4D, 0x5C3D: 0x76E1, 0x5C42: 0x5C64, 0x5C43: 0x5C6D, 0x5C49: 0x5C5C, 0x5C4A: 0x5C46, 0x5C5E: 0x5C6C, 0x5C61: 0x5C62, 0x5C66: 0x5C68, 0x5C7F: 0x5DBC, 0x5C81: 0x6B72, 0x5C82: 0x8C48, 0x5C96: 0x5D87, 0x5C97: 0x5D17, 0x5C98: 0x5CF4, 0x5C99: 0x5DB4, 0x5C9A: 0x5D50, 0x5C9B: 0x5CF6, 0x5CAD: 0x5DBA, 0x5CB3: 0x5DBD, 0x5CBD: 0x5D20, 0x5CBF: 0x5DCB, 0x5CC3: 0x5DA8, 0x5CC4: 0x5DA7, 0x5CE1: 0x5CFD, 0x5CE3: 0x5DA2, 0x5CE4: 0x5DA0, 0x5CE5: 0x5D22, 0x5CE6: 0x5DD2, 0x5D02: 0x5D97, 0x5D03: 0x5D0D, 0x5D04: 0x5DAE, 0x5D2D: 0x5D84, 0x5D58: 0x5DB8, 0x5D5A: 0x5D94, 0x5D5B: 0x5D33, 0x5D5D: 0x5D81, 0x5D74: 0x810A, 0x5DC5: 0x5DD4, 0x5DE9: 0x978F, 0x5DEF: 0x5DF0, 0x5E01: 0x5E63, 0x5E05: 0x5E25, 0x5E08: 0x5E2B, 0x5E0F: 0x5E43, 0x5E10: 0x5E33, 0x5E18: 0x7C3E, 0x5E1C: 0x5E5F, 0x5E26: 0x5E36, 0x5E27: 0x5E40, 0x5E2E: 0x5E6B, 0x5E31: 0x5E6C, 0x5E3B: 0x5E58, 0x5E3C: 0x5E57, 0x5E42: 0x51AA, 0x5E5E: 0x8946, 0x5E72: 0x5E79, 0x5E76: 0x4E26, 0x5E7A: 0x4E48, 0x5E7F: 0x5EE3, 0x5E84: 0x838A, 0x5E86: 0x6176, 0x5E90: 0x5EEC, 0x5E91: 0x5EE1, 0x5E93: 0x5EAB, 0x5E94: 0x61C9, 0x5E99: 0x5EDF, 0x5E9E: 0x9F90, 0x5E9F: 0x5EE2, 0x5EBC: 0x5ECE, 0x5EEA: 0x5EE9, 0x5F00: 0x958B, 0x5F02: 0x7570, 0x5F03: 0x68C4, 0x5F20: 0x5F35, 0x5F25: 0x5F4C, 0x5F2A: 0x5F33, 0x5F2F: 0x5F4E, 0x5F39: 0x5F48, 0x5F3A: 0x5F37, 0x5F52: 0x6B78, 0x5F53: 0x7576, 0x5F55: 0x9304, 0x5F5F: 0x5F60, 0x5F66: 0x5F65, 0x5F7B: 0x5FB9, 0x5F84: 0x5F91, 0x5F95: 0x5FA0, 0x5FA1: 0x79A6, 0x5FC6: 0x61B6, 0x5FCF: 0x61FA, 0x5FE7: 0x6182, 0x5FFE: 0x613E, 0x6000: 0x61F7, 0x6001: 0x614B, 0x6002: 0x616B, 0x6003: 0x61AE, 0x6004: 0x616A, 0x6005: 0x60B5, 0x6006: 0x6134, 0x601C: 0x6190, 0x603B: 0x7E3D, 0x603C: 0x61DF, 0x603F: 0x61CC, 0x604B: 0x6200, 0x6073: 0x61C7, 0x6076: 0x60E1, 0x6078: 0x615F, 0x6079: 0x61E8, 0x607A: 0x6137, 0x607B: 0x60FB, 0x607C: 0x60F1, 0x607D: 0x60F2, 0x60A6: 0x6085, 0x60AB: 0x6128, 0x60AC: 0x61F8, 0x60AD: 0x6173, 0x60AF: 0x61AB, 0x60CA: 0x9A5A, 0x60E7: 0x61FC, 0x60E8: 0x6158, 0x60E9: 0x61F2, 0x60EB: 0x618A, 0x60EC: 0x611C, 0x60ED: 0x615A, 0x60EE: 0x619A, 0x60EF: 0x6163, 0x610D: 0x6E63, 0x6120: 0x614D, 0x6124: 0x61A4, 0x6126: 0x6192, 0x613F: 0x9858, 0x6151: 0x61FE, 0x616D: 0x6196, 0x61B7: 0x6035, 0x61D1: 0x61E3, 0x61D2: 0x61F6, 0x61D4: 0x61CD, 0x6206: 0x6207, 0x620B: 0x6214, 0x620F: 0x6232, 0x6217: 0x6227, 0x6218: 0x6230, 0x622C: 0x6229, 0x6237: 0x6236, 0x624E: 0x7D2E, 0x6251: 0x64B2, 0x6266: 0x6261, 0x6267: 0x57F7, 0x6269: 0x64F4, 0x626A: 0x636B, 0x626B: 0x6383, 0x626C: 0x63DA, 0x6270: 0x64FE, 0x629A: 0x64AB, 0x629B: 0x62CB, 0x629F: 0x6476, 0x62A0: 0x6473, 0x62A1: 0x6384, 0x62A2: 0x6436, 0x62A4: 0x8B77, 0x62A5: 0x5831, 0x62C5: 0x64D4, 0x62DF: 0x64EC, 0x62E2: 0x650F, 0x62E3: 0x63C0, 0x62E5: 0x64C1, 0x62E6: 0x6514, 0x62E7: 0x64F0, 0x62E8: 0x64A5, 0x62E9: 0x64C7, 0x6302: 0x639B, 0x631A: 0x646F, 0x631B: 0x6523, 0x631C: 0x6397, 0x631D: 0x64BE, 0x631E: 0x64BB, 0x631F: 0x633E, 0x6320: 0x6493, 0x6321: 0x64CB, 0x6322: 0x649F, 0x6323: 0x6399, 0x6324: 0x64E0, 0x6325: 0x63EE, 0x6326: 0x648F, 0x635E: 0x6488, 0x635F: 0x640D, 0x6361: 0x64BF, 0x6362: 0x63DB, 0x6363: 0x6417, 0x636E: 0x64DA, 0x637B: 0x649A, 0x63B3: 0x64C4, 0x63B4: 0x6451, 0x63B7: 0x64F2, 0x63B8: 0x64A3, 0x63BA: 0x647B, 0x63BC: 0x645C, 0x63F8: 0x6463, 0x63FD: 0x652C, 0x63FF: 0x64B3, 0x6400: 0x6519, 0x6401: 0x64F1, 0x6402: 0x645F, 0x6405: 0x652A, 0x643A: 0x651C, 0x6444: 0x651D, 0x6445: 0x6504, 0x6446: 0x64FA, 0x6447: 0x6416, 0x6448: 0x64EF, 0x644A: 0x6524, 0x6484: 0x6516, 0x6491: 0x6490, 0x64B5: 0x6506, 0x64B7: 0x64F7, 0x64B8: 0x64FC, 0x64BA: 0x651B, 0x64DE: 0x64FB, 0x6512: 0x6522, 0x654C: 0x6575, 0x655B: 0x6582, 0x6570: 0x6578, 0x658B: 0x9F4B, 0x6593: 0x6595, # //0x65:7, 0x9B25, 0x65A9: 0x65AC, 0x65AD: 0x65B7, 0x65E0: 0x7121, 0x65E7: 0x820A, 0x65F6: 0x6642, 0x65F7: 0x66E0, 0x65F8: 0x6698, 0x6619: 0x66C7, 0x663C: 0x665D, 0x663D: 0x66E8, 0x663E: 0x986F, 0x664B: 0x6649, 0x6652: 0x66EC, 0x6653: 0x66C9, 0x6654: 0x66C4, 0x6655: 0x6688, 0x6656: 0x6689, 0x6682: 0x66AB, 0x66A7: 0x66D6, 0x672D: 0x5284, 0x672F: 0x8853, 0x6734: 0x6A38, 0x673A: 0x6A5F, 0x6740: 0x6BBA, 0x6742: 0x96DC, 0x6743: 0x6B0A, 0x6761: 0x689D, 0x6765: 0x4F86, 0x6768: 0x694A, 0x6769: 0x69AA, 0x6770: 0x5091, 0x6781: 0x6975, 0x6784: 0x69CB, 0x679E: 0x6A05, 0x67A2: 0x6A1E, 0x67A3: 0x68D7, 0x67A5: 0x6AEA, 0x67A7: 0x6898, 0x67A8: 0x68D6, 0x67AA: 0x69CD, 0x67AB: 0x6953, 0x67AD: 0x689F, 0x67DC: 0x6AC3, 0x67E0: 0x6AB8, 0x67FD: 0x6A89, 0x6800: 0x6894, 0x6805: 0x67F5, 0x6807: 0x6A19, 0x6808: 0x68E7, 0x6809: 0x6ADB, 0x680A: 0x6AF3, 0x680B: 0x68DF, 0x680C: 0x6AE8, 0x680E: 0x6ADF, 0x680F: 0x6B04, 0x6811: 0x6A39, 0x6816: 0x68F2, 0x6837: 0x6A23, 0x683E: 0x6B12, 0x684A: 0x68EC, 0x6860: 0x690F, 0x6861: 0x6A48, 0x6862: 0x6968, 0x6863: 0x6A94, 0x6864: 0x69BF, 0x6865: 0x6A4B, 0x6866: 0x6A3A, 0x6867: 0x6A9C, 0x6868: 0x69F3, 0x6869: 0x6A01, 0x68A6: 0x5922, 0x68BC: 0x6AAE, 0x68BE: 0x68F6, 0x68C0: 0x6AA2, 0x68C2: 0x6B1E, 0x6901: 0x69E8, 0x691F: 0x6ADD, 0x6920: 0x69E7, 0x6924: 0x6B0F, 0x692D: 0x6A62, 0x697C: 0x6A13, 0x6984: 0x6B16, 0x6987: 0x6AEC, 0x6988: 0x6ADA, 0x6989: 0x6AF8, 0x69DA: 0x6A9F, 0x69DB: 0x6ABB, 0x69DF: 0x6AB3, 0x69E0: 0x6AE7, 0x6A2A: 0x6A6B, 0x6A2F: 0x6AA3, 0x6A31: 0x6AFB, 0x6A65: 0x6AEB, 0x6A71: 0x6AE5, 0x6A79: 0x6AD3, 0x6A7C: 0x6ADE, 0x6A90: 0x7C37, 0x6AA9: 0x6A81, 0x6B22: 0x6B61, 0x6B24: 0x6B5F, 0x6B27: 0x6B50, 0x6B7C: 0x6BB2, 0x6B81: 0x6B7F, 0x6B87: 0x6BA4, 0x6B8B: 0x6B98, 0x6B92: 0x6B9E, 0x6B93: 0x6BAE, 0x6B9A: 0x6BAB, 0x6BA1: 0x6BAF, 0x6BB4: 0x6BC6, 0x6BC1: 0x6BC0, 0x6BC2: 0x8F42, 0x6BD5: 0x7562, 0x6BD9: 0x6583, 0x6BE1: 0x6C08, 0x6BF5: 0x6BFF, 0x6C07: 0x6C0C, 0x6C14: 0x6C23, 0x6C22: 0x6C2B, 0x6C29: 0x6C2C, 0x6C32: 0x6C33, 0x6C47: 0x5F59, 0x6C49: 0x6F22, 0x6C61: 0x6C59, 0x6C64: 0x6E6F, 0x6C79: 0x6D36, 0x6C93: 0x905D, 0x6C9F: 0x6E9D, 0x6CA1: 0x6C92, 0x6CA3: 0x7043, 0x6CA4: 0x6F1A, 0x6CA5: 0x701D, 0x6CA6: 0x6DEA, 0x6CA7: 0x6EC4, 0x6CA8: 0x6E22, 0x6CA9: 0x6E88, 0x6CAA: 0x6EEC, 0x6CB5: 0x6FD4, 0x6CDE: 0x6FD8, 0x6CEA: 0x6DDA, 0x6CF6: 0x6FA9, 0x6CF7: 0x7027, 0x6CF8: 0x7018, 0x6CFA: 0x6FFC, 0x6CFB: 0x7009, 0x6CFC: 0x6F51, 0x6CFD: 0x6FA4, 0x6CFE: 0x6D87, 0x6D01: 0x6F54, 0x6D12: 0x7051, 0x6D3C: 0x7AAA, 0x6D43: 0x6D79, 0x6D45: 0x6DFA, 0x6D46: 0x6F3F, 0x6D47: 0x6F86, 0x6D48: 0x6E5E, 0x6D49: 0x6EAE, 0x6D4A: 0x6FC1, 0x6D4B: 0x6E2C, 0x6D4D: 0x6FAE, 0x6D4E: 0x6FDF, 0x6D4F: 0x700F, 0x6D50: 0x6EFB, 0x6D51: 0x6E3E, 0x6D52: 0x6EF8, 0x6D53: 0x6FC3, 0x6D54: 0x6F6F, 0x6D55: 0x6FDC, 0x6D82: 0x5857, 0x6D8C: 0x6E67, 0x6D9B: 0x6FE4, 0x6D9D: 0x6F87, 0x6D9E: 0x6DF6, 0x6D9F: 0x6F23, 0x6DA0: 0x6F7F, 0x6DA1: 0x6E26, 0x6DA2: 0x6EB3, 0x6DA3: 0x6E19, 0x6DA4: 0x6ECC, 0x6DA6: 0x6F64, 0x6DA7: 0x6F97, 0x6DA8: 0x6F32, 0x6DA9: 0x6F80, 0x6DC0: 0x6FB1, 0x6E0A: 0x6DF5, 0x6E0C: 0x6DE5, 0x6E0D: 0x6F2C, 0x6E0E: 0x7006, 0x6E10: 0x6F38, 0x6E11: 0x6FA0, 0x6E14: 0x6F01, 0x6E16: 0x700B, 0x6E17: 0x6EF2, 0x6E29: 0x6EAB, 0x6E38: 0x904A, 0x6E7E: 0x7063, 0x6E7F: 0x6FD5, 0x6E83: 0x6F70, 0x6E85: 0x6FFA, 0x6E86: 0x6F35, 0x6E87: 0x6F0A, 0x6ED7: 0x6F77, 0x6EDA: 0x6EFE, 0x6EDE: 0x6EEF, 0x6EDF: 0x7069, 0x6EE0: 0x7044, 0x6EE1: 0x6EFF, 0x6EE2: 0x7005, 0x6EE4: 0x6FFE, 0x6EE5: 0x6FEB, 0x6EE6: 0x7064, 0x6EE8: 0x6FF1, 0x6EE9: 0x7058, 0x6EEA: 0x6FA6, 0x6F24: 0x6FEB, 0x6F46: 0x7020, 0x6F47: 0x701F, 0x6F4B: 0x7032, 0x6F4D: 0x6FF0, 0x6F5C: 0x6F5B, 0x6F74: 0x7026, 0x6F9C: 0x703E, 0x6FD1: 0x7028, 0x6FD2: 0x7015, 0x704F: 0x705D, 0x706D: 0x6EC5, 0x706F: 0x71C8, 0x7075: 0x9748, 0x707E: 0x707D, 0x707F: 0x71E6, 0x7080: 0x716C, 0x7089: 0x7210, 0x7096: 0x71C9, 0x709C: 0x7152, 0x709D: 0x7197, 0x70B9: 0x9EDE, 0x70BC: 0x7149, 0x70BD: 0x71BE, 0x70C1: 0x720D, 0x70C2: 0x721B, 0x70C3: 0x70F4, 0x70DB: 0x71ED, 0x70DF: 0x7159, 0x70E6: 0x7169, 0x70E7: 0x71D2, 0x70E8: 0x71C1, 0x70E9: 0x71F4, 0x70EB: 0x71D9, 0x70EC: 0x71FC, 0x70ED: 0x71B1, 0x7115: 0x7165, 0x7116: 0x71DC, 0x7118: 0x71FE, 0x7145: 0x7146, 0x7173: 0x7CCA, 0x717A: 0x9000, 0x7198: 0x6E9C, 0x7231: 0x611B, 0x7237: 0x723A, 0x724D: 0x7258, 0x7266: 0x729B, 0x7275: 0x727D, 0x727A: 0x72A7, 0x728A: 0x72A2, 0x729F: 0x5F37, 0x72AD: 0x72AC, 0x72B6: 0x72C0, 0x72B7: 0x7377, 0x72B8: 0x7341, 0x72B9: 0x7336, 0x72C8: 0x72FD, 0x72CD: 0x9E85, 0x72DD: 0x736E, 0x72DE: 0x7370, 0x72EC: 0x7368, 0x72ED: 0x72F9, 0x72EE: 0x7345, 0x72EF: 0x736A, 0x72F0: 0x7319, 0x72F1: 0x7344, 0x72F2: 0x733B, 0x7303: 0x736B, 0x730E: 0x7375, 0x7315: 0x737C, 0x7321: 0x7380, 0x732A: 0x8C6C, 0x732B: 0x8C93, 0x732C: 0x875F, 0x732E: 0x737B, 0x736D: 0x737A, 0x7391: 0x74A3, 0x7399: 0x74B5, 0x739A: 0x7452, 0x739B: 0x746A, 0x73AE: 0x744B, 0x73AF: 0x74B0, 0x73B0: 0x73FE, 0x73B1: 0x7472, 0x73BA: 0x74BD, 0x73C9: 0x7449, 0x73CF: 0x73A8, 0x73D0: 0x743A, 0x73D1: 0x74CF, 0x73F0: 0x74AB, 0x73F2: 0x743F, 0x740E: 0x74A1, 0x740F: 0x7489, 0x7410: 0x7463, 0x743C: 0x74CA, 0x7476: 0x7464, 0x7477: 0x74A6, 0x7487: 0x74BF, 0x748E: 0x74D4, 0x74D2: 0x74DA, 0x74EE: 0x7515, 0x74EF: 0x750C, 0x7535: 0x96FB, 0x753B: 0x756B, 0x7545: 0x66A2, 0x7572: 0x4F58, 0x7574: 0x7587, 0x7596: 0x7664, 0x7597: 0x7642, 0x759F: 0x7627, 0x75A0: 0x7658, 0x75A1: 0x760D, 0x75AC: 0x9B01, 0x75AE: 0x7621, 0x75AF: 0x760B, 0x75B1: 0x76B0, 0x75B4: 0x5C59, 0x75C8: 0x7670, 0x75C9: 0x75D9, 0x75D2: 0x7662, 0x75D6: 0x7602, 0x75E8: 0x7646, 0x75EA: 0x7613, 0x75EB: 0x7647, 0x75F4: 0x7661, 0x7605: 0x7649, 0x7606: 0x762E, 0x7617: 0x761E, 0x7618: 0x763A, 0x762A: 0x765F, 0x762B: 0x7671, 0x763E: 0x766E, 0x763F: 0x766D, 0x765E: 0x7669, 0x7663: 0x766C, 0x766B: 0x7672, 0x766F: 0x81D2, 0x7691: 0x769A, 0x76B1: 0x76BA, 0x76B2: 0x76B8, 0x76CF: 0x76DE, 0x76D0: 0x9E7D, 0x76D1: 0x76E3, 0x76D6: 0x84CB, 0x76D7: 0x76DC, 0x76D8: 0x76E4, 0x770D: 0x7798, 0x7726: 0x7725, 0x772C: 0x77D3, 0x7740: 0x8457, 0x7741: 0x775C, 0x7750: 0x775E, 0x7751: 0x77BC, 0x7792: 0x779E, 0x77A9: 0x77DA, 0x77EB: 0x77EF, 0x77F6: 0x78EF, 0x77FE: 0x792C, 0x77FF: 0x7926, 0x7800: 0x78AD, 0x7801: 0x78BC, 0x7816: 0x78DA, 0x7817: 0x7868, 0x781A: 0x786F, 0x781C: 0x78B8, 0x783A: 0x792A, 0x783B: 0x7931, 0x783E: 0x792B, 0x7840: 0x790E, 0x7841: 0x785C, 0x7845: 0x77FD, 0x7855: 0x78A9, 0x7856: 0x7864, 0x7857: 0x78FD, 0x7859: 0x78D1, 0x785A: 0x7904, 0x786E: 0x78BA, 0x7877: 0x9E7C, 0x788D: 0x7919, 0x789B: 0x78E7, 0x789C: 0x78E3, 0x78B1: 0x583F, 0x78B9: 0x955F, 0x78D9: 0x6EFE, 0x793C: 0x79AE, 0x794E: 0x7995, 0x7962: 0x79B0, 0x796F: 0x798E, 0x7977: 0x79B1, 0x7978: 0x798D, 0x7980: 0x7A1F, 0x7984: 0x797F, 0x7985: 0x79AA, 0x79BB: 0x96E2, 0x79C3: 0x79BF, 0x79C6: 0x7A08, 0x79CD: 0x7A2E, 0x79EF: 0x7A4D, 0x79F0: 0x7A31, 0x79FD: 0x7A62, 0x79FE: 0x7A60, 0x7A06: 0x7A6D, 0x7A0E: 0x7A05, 0x7A23: 0x7A4C, 0x7A33: 0x7A69, 0x7A51: 0x7A61, 0x7A77: 0x7AAE, 0x7A83: 0x7ACA, 0x7A8D: 0x7AC5, 0x7A91: 0x7AAF, 0x7A9C: 0x7AC4, 0x7A9D: 0x7AA9, 0x7AA5: 0x7ABA, 0x7AA6: 0x7AC7, 0x7AAD: 0x7AB6, 0x7AD6: 0x8C4E, 0x7ADE: 0x7AF6, 0x7B03: 0x7BE4, 0x7B0B: 0x7B4D, 0x7B14: 0x7B46, 0x7B15: 0x7B67, 0x7B3A: 0x7B8B, 0x7B3C: 0x7C60, 0x7B3E: 0x7C69, 0x7B51: 0x7BC9, 0x7B5A: 0x7BF3, 0x7B5B: 0x7BE9, 0x7B5C: 0x7C39, 0x7B5D: 0x7B8F, 0x7B79: 0x7C4C, 0x7B7E: 0x7C3D, 0x7B80: 0x7C21, 0x7B93: 0x7C59, 0x7BA6: 0x7C00, 0x7BA7: 0x7BCB, 0x7BA8: 0x7C5C, 0x7BA9: 0x7C6E, 0x7BAA: 0x7C1E, 0x7BAB: 0x7C2B, 0x7BD1: 0x7C23, 0x7BD3: 0x7C0D, 0x7BEE: 0x7C43, 0x7BF1: 0x7C6C, 0x7C16: 0x7C6A, 0x7C41: 0x7C5F, 0x7C74: 0x7CF4, 0x7C7B: 0x985E, 0x7C7C: 0x79C8, 0x7C9C: 0x7CF6, 0x7C9D: 0x7CF2, 0x7CA4: 0x7CB5, 0x7CAA: 0x7CDE, 0x7CAE: 0x7CE7, 0x7CC1: 0x7CDD, 0x7CC7: 0x9931, 0x7D27: 0x7DCA, 0x7D77: 0x7E36, 0x7E9F: 0x7CF8, 0x7EA0: 0x7CFE, 0x7EA1: 0x7D06, 0x7EA2: 0x7D05, 0x7EA3: 0x7D02, 0x7EA4: 0x7E96, 0x7EA5: 0x7D07, 0x7EA6: 0x7D04, 0x7EA7: 0x7D1A, 0x7EA8: 0x7D08, 0x7EA9: 0x7E8A, 0x7EAA: 0x7D00, 0x7EAB: 0x7D09, 0x7EAC: 0x7DEF, 0x7EAD: 0x7D1C, 0x7EAE: 0x7D18, 0x7EAF: 0x7D14, 0x7EB0: 0x7D15, 0x7EB1: 0x7D17, 0x7EB2: 0x7DB1, 0x7EB3: 0x7D0D, 0x7EB4: 0x7D1D, 0x7EB5: 0x7E31, 0x7EB6: 0x7DB8, 0x7EB7: 0x7D1B, 0x7EB8: 0x7D19, 0x7EB9: 0x7D0B, 0x7EBA: 0x7D21, 0x7EBB: 0x7D35, 0x7EBC: 0x7D16, 0x7EBD: 0x7D10, 0x7EBE: 0x7D13, 0x7EBF: 0x7DDA, 0x7EC0: 0x7D3A, 0x7EC1: 0x7D4F, 0x7EC2: 0x7D31, 0x7EC3: 0x7DF4, 0x7EC4: 0x7D44, 0x7EC5: 0x7D33, 0x7EC6: 0x7D30, 0x7EC7: 0x7E54, 0x7EC8: 0x7D42, 0x7EC9: 0x7E10, 0x7ECA: 0x7D46, 0x7ECB: 0x7D3C, 0x7ECC: 0x7D40, 0x7ECD: 0x7D39, 0x7ECE: 0x7E79, 0x7ECF: 0x7D93, 0x7ED0: 0x7D3F, 0x7ED1: 0x7D81, 0x7ED2: 0x7D68, 0x7ED3: 0x7D50, 0x7ED4: 0x7D5D, 0x7ED5: 0x7E5E, 0x7ED6: 0x7D70, 0x7ED7: 0x7D4E, 0x7ED8: 0x7E6A, 0x7ED9: 0x7D66, 0x7EDA: 0x7D62, 0x7EDB: 0x7D73, 0x7EDC: 0x7D61, 0x7EDD: 0x7D55, 0x7EDE: 0x7D5E, 0x7EDF: 0x7D71, 0x7EE0: 0x7D86, 0x7EE1: 0x7D83, 0x7EE2: 0x7D79, 0x7EE3: 0x7E61, 0x7EE4: 0x7D8C, 0x7EE5: 0x7D8F, 0x7EE6: 0x7D5B, 0x7EE7: 0x7E7C, 0x7EE8: 0x7D88, 0x7EE9: 0x7E3E, 0x7EEA: 0x7DD2, 0x7EEB: 0x7DBE, 0x7EEC: 0x7DD3, 0x7EED: 0x7E8C, 0x7EEE: 0x7DBA, 0x7EEF: 0x7DCB, 0x7EF0: 0x7DBD, 0x7EF1: 0x7DD4, 0x7EF2: 0x7DC4, 0x7EF3: 0x7E69, 0x7EF4: 0x7DAD, 0x7EF5: 0x7DBF, 0x7EF6: 0x7DAC, 0x7EF7: 0x7E43, 0x7EF8: 0x7DA2, 0x7EF9: 0x7DAF, 0x7EFA: 0x7DB9, 0x7EFB: 0x7DA3, 0x7EFC: 0x7D9C, 0x7EFD: 0x7DBB, 0x7EFE: 0x7DB0, 0x7EFF: 0x7DA0, 0x7F00: 0x7DB4, 0x7F01: 0x7DC7, 0x7F02: 0x7DD9, 0x7F03: 0x7DD7, 0x7F04: 0x7DD8, 0x7F05: 0x7DEC, 0x7F06: 0x7E9C, 0x7F07: 0x7DF9, 0x7F08: 0x7DF2, 0x7F09: 0x7DDD, 0x7F0A: 0x7E15, 0x7F0B: 0x7E62, 0x7F0C: 0x7DE6, 0x7F0D: 0x7D9E, 0x7F0E: 0x7DDE, 0x7F0F: 0x7DF6, 0x7F10: 0x7DDA, 0x7F11: 0x7DF1, 0x7F12: 0x7E0B, 0x7F13: 0x7DE9, 0x7F14: 0x7DE0, 0x7F15: 0x7E37, 0x7F16: 0x7DE8, 0x7F17: 0x7DE1, 0x7F18: 0x7DE3, 0x7F19: 0x7E09, 0x7F1A: 0x7E1B, 0x7F1B: 0x7E1F, 0x7F1C: 0x7E1D, 0x7F1D: 0x7E2B, 0x7F1E: 0x7E17, 0x7F1F: 0x7E1E, 0x7F20: 0x7E8F, 0x7F21: 0x7E2D, 0x7F22: 0x7E0A, 0x7F23: 0x7E11, 0x7F24: 0x7E7D, 0x7F25: 0x7E39, 0x7F26: 0x7E35, 0x7F27: 0x7E32, 0x7F28: 0x7E93, 0x7F29: 0x7E2E, 0x7F2A: 0x7E46, 0x7F2B: 0x7E45, 0x7F2C: 0x7E88, 0x7F2D: 0x7E5A, 0x7F2E: 0x7E55, 0x7F2F: 0x7E52, 0x7F30: 0x97C1, 0x7F31: 0x7E7E, 0x7F32: 0x7E70, 0x7F33: 0x7E6F, 0x7F34: 0x7E73, 0x7F35: 0x7E98, 0x7F42: 0x7F4C, 0x7F51: 0x7DB2, 0x7F57: 0x7F85, 0x7F5A: 0x7F70, 0x7F62: 0x7F77, 0x7F74: 0x7F86, 0x7F81: 0x7F88, 0x7F9F: 0x7FA5, 0x7FA1: 0x7FA8, 0x7FD8: 0x7FF9, 0x7FD9: 0x7FFD, 0x7FDA: 0x7FEC, 0x8022: 0x802E, 0x8027: 0x802C, 0x8038: 0x8073, 0x803B: 0x6065, 0x8042: 0x8076, 0x804B: 0x807E, 0x804C: 0x8077, 0x804D: 0x8079, 0x8054: 0x806F, 0x8069: 0x8075, 0x806A: 0x8070, 0x8083: 0x8085, 0x80A0: 0x8178, 0x80A4: 0x819A, 0x80B7: 0x8181, 0x80BE: 0x814E, 0x80BF: 0x816B, 0x80C0: 0x8139, 0x80C1: 0x8105, 0x80C6: 0x81BD, 0x80DC: 0x52DD, 0x80E7: 0x6727, 0x80E8: 0x8156, 0x80EA: 0x81DA, 0x80EB: 0x811B, 0x80F6: 0x81A0, 0x8109: 0x8108, 0x810D: 0x81BE, 0x810F: 0x9AD2, 0x8110: 0x81CD, 0x8111: 0x8166, 0x8113: 0x81BF, 0x8114: 0x81E0, 0x811A: 0x8173, 0x8131: 0x812B, 0x8136: 0x8161, 0x8138: 0x81C9, 0x814A: 0x81D8, 0x814C: 0x9183, 0x8158: 0x8195, 0x816D: 0x9F76, 0x817B: 0x81A9, 0x817C: 0x9766, 0x817D: 0x8183, 0x817E: 0x9A30, 0x8191: 0x81CF, 0x81DC: 0x81E2, 0x8206: 0x8F3F, 0x8223: 0x8264, 0x8230: 0x8266, 0x8231: 0x8259, 0x823B: 0x826B, 0x8270: 0x8271, 0x8273: 0x8C54, 0x8279: 0x8278, 0x827A: 0x85DD, 0x8282: 0x7BC0, 0x8288: 0x7F8B, 0x8297: 0x858C, 0x829C: 0x856A, 0x82A6: 0x8606, 0x82C1: 0x84EF, 0x82C7: 0x8466, 0x82C8: 0x85F6, 0x82CB: 0x83A7, 0x82CC: 0x8407, 0x82CD: 0x84BC, 0x82CE: 0x82E7, 0x82CF: 0x8607, 0x82D8: 0x6ABE, 0x82F9: 0x860B, 0x8303: 0x7BC4, 0x830E: 0x8396, 0x830F: 0x8622, 0x8311: 0x8526, 0x8314: 0x584B, 0x8315: 0x7162, 0x8327: 0x7E6D, 0x8346: 0x834A, 0x8350: 0x85A6, 0x8359: 0x8598, 0x835A: 0x83A2, 0x835B: 0x8558, 0x835C: 0x84FD, 0x835E: 0x854E, 0x835F: 0x8588, 0x8360: 0x85BA, 0x8361: 0x8569, 0x8363: 0x69AE, 0x8364: 0x8477, 0x8365: 0x6ECE, 0x8366: 0x7296, 0x8367: 0x7192, 0x8368: 0x8541, 0x8369: 0x85CE, 0x836A: 0x84C0, 0x836B: 0x852D, 0x836C: 0x8552, 0x836D: 0x8452, 0x836E: 0x8464, 0x836F: 0x85E5, 0x8385: 0x849E, 0x839C: 0x84E7, 0x83B1: 0x840A, 0x83B2: 0x84EE, 0x83B3: 0x8494, 0x83B4: 0x8435, 0x83B6: 0x859F, 0x83B7: 0x7372, 0x83B8: 0x8555, 0x83B9: 0x7469, 0x83BA: 0x9DAF, 0x83BC: 0x84F4, 0x841A: 0x8600, 0x841D: 0x863F, 0x8424: 0x87A2, 0x8425: 0x71DF, 0x8426: 0x7E08, 0x8427: 0x856D, 0x8428: 0x85A9, 0x8471: 0x8525, 0x8487: 0x8546, 0x8489: 0x8562, 0x848B: 0x8523, 0x848C: 0x851E, 0x84DD: 0x85CD, 0x84DF: 0x858A, 0x84E0: 0x863A, 0x84E3: 0x8577, 0x84E5: 0x93A3, 0x84E6: 0x9A40, 0x8537: 0x8594, 0x8539: 0x861E, 0x853A: 0x85FA, 0x853C: 0x85F9, 0x8572: 0x8604, 0x8574: 0x860A, 0x85AE: 0x85EA, 0x85C1: 0x69C1, 0x85D3: 0x861A, 0x864F: 0x865C, 0x8651: 0x616E, 0x865A: 0x865B, 0x866B: 0x87F2, 0x866C: 0x866F, 0x866E: 0x87E3, 0x867D: 0x96D6, 0x867E: 0x8766, 0x867F: 0x8806, 0x8680: 0x8755, 0x8681: 0x87FB, 0x8682: 0x879E, 0x8695: 0x8836, 0x869D: 0x8814, 0x86AC: 0x8706, 0x86CA: 0x8831, 0x86CE: 0x8823, 0x86CF: 0x87F6, 0x86EE: 0x883B, 0x86F0: 0x87C4, 0x86F1: 0x86FA, 0x86F2: 0x87EF, 0x86F3: 0x8784, 0x86F4: 0x8810, 0x8715: 0x86FB, 0x8717: 0x8778, 0x8721: 0x881F, 0x8747: 0x8805, 0x8748: 0x87C8, 0x8749: 0x87EC, 0x874E: 0x880D, 0x877C: 0x87BB, 0x877E: 0x8811, 0x8780: 0x87BF, 0x87A8: 0x87CE, 0x87CF: 0x8828, 0x8845: 0x91C1, 0x8854: 0x929C, 0x8865: 0x88DC, 0x886C: 0x896F, 0x886E: 0x889E, 0x8884: 0x8956, 0x8885: 0x5ACB, 0x8886: 0x8918, 0x889C: 0x896A, 0x88AD: 0x8972, 0x88AF: 0x894F, 0x88C5: 0x88DD, 0x88C6: 0x8960, 0x88C8: 0x890C, 0x88E2: 0x8933, 0x88E3: 0x895D, 0x88E4: 0x8932, 0x88E5: 0x8947, 0x891B: 0x8938, 0x8934: 0x8964, 0x8941: 0x7E48, 0x8955: 0x8974, 0x89C1: 0x898B, 0x89C2: 0x89C0, 0x89C3: 0x898E, 0x89C4: 0x898F, 0x89C5: 0x8993, 0x89C6: 0x8996, 0x89C7: 0x8998, 0x89C8: 0x89BD, 0x89C9: 0x89BA, 0x89CA: 0x89AC, 0x89CB: 0x89A1, 0x89CC: 0x89BF, 0x89CD: 0x89A5, 0x89CE: 0x89A6, 0x89CF: 0x89AF, 0x89D0: 0x89B2, 0x89D1: 0x89B7, 0x89DE: 0x89F4, 0x89E6: 0x89F8, 0x89EF: 0x89F6, 0x8A5F: 0x8B8B, 0x8A89: 0x8B7D, 0x8A8A: 0x8B04, 0x8BA0: 0x8A01, 0x8BA1: 0x8A08, 0x8BA2: 0x8A02, 0x8BA3: 0x8A03, 0x8BA4: 0x8A8D, 0x8BA5: 0x8B4F, 0x8BA6: 0x8A10, 0x8BA7: 0x8A0C, 0x8BA8: 0x8A0E, 0x8BA9: 0x8B93, 0x8BAA: 0x8A15, 0x8BAB: 0x8A16, 0x8BAD: 0x8A13, 0x8BAE: 0x8B70, 0x8BAF: 0x8A0A, 0x8BB0: 0x8A18, 0x8BB1: 0x8A12, 0x8BB2: 0x8B1B, 0x8BB3: 0x8AF1, 0x8BB4: 0x8B33, 0x8BB5: 0x8A4E, 0x8BB6: 0x8A1D, 0x8BB7: 0x8A25, 0x8BB8: 0x8A31, 0x8BB9: 0x8A1B, 0x8BBA: 0x8AD6, 0x8BBB: 0x8A29, 0x8BBC: 0x8A1F, 0x8BBD: 0x8AF7, 0x8BBE: 0x8A2D, 0x8BBF: 0x8A2A, 0x8BC0: 0x8A23, 0x8BC1: 0x8B49, 0x8BC2: 0x8A41, 0x8BC3: 0x8A36, 0x8BC4: 0x8A55, 0x8BC5: 0x8A5B, 0x8BC6: 0x8B58, 0x8BC7: 0x8A57, 0x8BC8: 0x8A50, 0x8BC9: 0x8A34, 0x8BCA: 0x8A3A, 0x8BCB: 0x8A46, 0x8BCC: 0x8B05, 0x8BCD: 0x8A5E, 0x8BCE: 0x8A58, 0x8BCF: 0x8A54, 0x8BD0: 0x8A56, 0x8BD1: 0x8B6F, 0x8BD2: 0x8A52, 0x8BD3: 0x8A86, 0x8BD4: 0x8A84, 0x8BD5: 0x8A66, 0x8BD6: 0x8A7F, 0x8BD7: 0x8A69, 0x8BD8: 0x8A70, 0x8BD9: 0x8A7C, 0x8BDA: 0x8AA0, 0x8BDB: 0x8A85, 0x8BDC: 0x8A75, 0x8BDD: 0x8A71, 0x8BDE: 0x8A95, 0x8BDF: 0x8A6C, 0x8BE0: 0x8A6E, 0x8BE1: 0x8A6D, 0x8BE2: 0x8A62, 0x8BE3: 0x8A63, 0x8BE4: 0x8ACD, 0x8BE5: 0x8A72, 0x8BE6: 0x8A73, 0x8BE7: 0x8A6B, 0x8BE8: 0x8AE2, 0x8BE9: 0x8A61, 0x8BEA: 0x8B78, 0x8BEB: 0x8AA1, 0x8BEC: 0x8AA3, 0x8BED: 0x8A9E, 0x8BEE: 0x8A9A, 0x8BEF: 0x8AA4, 0x8BF0: 0x8AA5, 0x8BF1: 0x8A98, 0x8BF2: 0x8AA8, 0x8BF3: 0x8A91, 0x8BF4: 0x8AAA, 0x8BF5: 0x8AA6, 0x8BF6: 0x8A92, 0x8BF7: 0x8ACB, 0x8BF8: 0x8AF8, 0x8BF9: 0x8ACF, 0x8BFA: 0x8AFE, 0x8BFB: 0x8B80, 0x8BFC: 0x8AD1, 0x8BFD: 0x8AB9, 0x8BFE: 0x8AB2, 0x8BFF: 0x8AC9, 0x8C00: 0x8ADB, 0x8C01: 0x8AB0, 0x8C02: 0x8AD7, 0x8C03: 0x8ABF, 0x8C04: 0x8AC2, 0x8C05: 0x8AD2, 0x8C06: 0x8AC4, 0x8C07: 0x8AB6, 0x8C08: 0x8AC7, 0x8C0A: 0x8ABC, 0x8C0B: 0x8B00, 0x8C0C: 0x8AF6, 0x8C0D: 0x8ADC, 0x8C0E: 0x8B0A, 0x8C0F: 0x8AEB, 0x8C10: 0x8AE7, 0x8C11: 0x8B14, 0x8C12: 0x8B01, 0x8C13: 0x8B02, 0x8C14: 0x8AE4, 0x8C15: 0x8AED, 0x8C16: 0x8AFC, 0x8C17: 0x8B92, 0x8C18: 0x8AEE, 0x8C19: 0x8AF3, 0x8C1A: 0x8AFA, 0x8C1B: 0x8AE6, 0x8C1C: 0x8B0E, 0x8C1D: 0x8ADE, 0x8C1E: 0x8ADD, 0x8C1F: 0x8B28, 0x8C20: 0x8B9C, 0x8C21: 0x8B16, 0x8C22: 0x8B1D, 0x8C23: 0x8B20, 0x8C24: 0x8B17, 0x8C25: 0x8AE1, 0x8C26: 0x8B19, 0x8C27: 0x8B10, 0x8C28: 0x8B39, 0x8C29: 0x8B3E, 0x8C2A: 0x8B2B, 0x8C2B: 0x8B7E, 0x8C2C: 0x8B2C, 0x8C2D: 0x8B5A, 0x8C2E: 0x8B56, 0x8C2F: 0x8B59, 0x8C30: 0x8B95, 0x8C31: 0x8B5C, 0x8C32: 0x8B4E, 0x8C33: 0x8B9E, 0x8C34: 0x8B74, 0x8C35: 0x8B6B, 0x8C36: 0x8B96, 0x8C37: 0x7A40, 0x8C6E: 0x8C76, 0x8D1D: 0x8C9D, 0x8D1E: 0x8C9E, 0x8D1F: 0x8CA0, 0x8D20: 0x8C9F, 0x8D21: 0x8CA2, 0x8D22: 0x8CA1, 0x8D23: 0x8CAC, 0x8D24: 0x8CE2, 0x8D25: 0x6557, 0x8D26: 0x8CEC, 0x8D27: 0x8CA8, 0x8D28: 0x8CEA, 0x8D29: 0x8CA9, 0x8D2A: 0x8CAA, 0x8D2B: 0x8CA7, 0x8D2C: 0x8CB6, 0x8D2D: 0x8CFC, 0x8D2E: 0x8CAF, 0x8D2F: 0x8CAB, 0x8D30: 0x8CB3, 0x8D31: 0x8CE4, 0x8D32: 0x8CC1, 0x8D33: 0x8CB0, 0x8D34: 0x8CBC, 0x8D35: 0x8CB4, 0x8D36: 0x8CBA, 0x8D37: 0x8CB8, 0x8D38: 0x8CBF, 0x8D39: 0x8CBB, 0x8D3A: 0x8CC0, 0x8D3B: 0x8CBD, 0x8D3C: 0x8CCA, 0x8D3D: 0x8D04, 0x8D3E: 0x8CC8, 0x8D3F: 0x8CC4, 0x8D40: 0x8CB2, 0x8D41: 0x8CC3, 0x8D42: 0x8CC2, 0x8D43: 0x8D13, 0x8D44: 0x8CC7, 0x8D45: 0x8CC5, 0x8D46: 0x8D10, 0x8D47: 0x8CD5, 0x8D48: 0x8CD1, 0x8D49: 0x8CDA, 0x8D4A: 0x8CD2, 0x8D4B: 0x8CE6, 0x8D4C: 0x8CED, 0x8D4D: 0x9F4E, 0x8D4E: 0x8D16, 0x8D4F: 0x8CDE, 0x8D50: 0x8CDC, 0x8D51: 0x8D14, 0x8D52: 0x8CD9, 0x8D53: 0x8CE1, 0x8D54: 0x8CE0, 0x8D55: 0x8CE7, 0x8D56: 0x8CF4, 0x8D57: 0x8CF5, 0x8D58: 0x8D05, 0x8D59: 0x8CFB, 0x8D5A: 0x8CFA, 0x8D5B: 0x8CFD, 0x8D5C: 0x8CFE, 0x8D5D: 0x8D17, 0x8D5E: 0x8D0A, 0x8D5F: 0x8D07, 0x8D60: 0x8D08, 0x8D61: 0x8D0D, 0x8D62: 0x8D0F, 0x8D63: 0x8D1B, 0x8D6A: 0x8D6C, 0x8D75: 0x8D99, 0x8D76: 0x8D95, 0x8D8B: 0x8DA8, 0x8DB1: 0x8DB2, 0x8DB8: 0x8E89, 0x8DC3: 0x8E8D, 0x8DC4: 0x8E4C, 0x8DD6: 0x8E60, 0x8DDE: 0x8E92, 0x8DF5: 0x8E10, 0x8DF6: 0x8E82, 0x8DF7: 0x8E7A, 0x8DF8: 0x8E55, 0x8DF9: 0x8E9A, 0x8DFB: 0x8E8B, 0x8E0A: 0x8E34, 0x8E0C: 0x8E8A, 0x8E2A: 0x8E64, 0x8E2C: 0x8E93, 0x8E2F: 0x8E91, 0x8E51: 0x8EA1, 0x8E52: 0x8E63, 0x8E70: 0x8E95, 0x8E7F: 0x8EA5, 0x8E8F: 0x8EAA, 0x8E9C: 0x8EA6, 0x8EAF: 0x8EC0, 0x8F66: 0x8ECA, 0x8F67: 0x8ECB, 0x8F68: 0x8ECC, 0x8F69: 0x8ED2, 0x8F6A: 0x8ED1, 0x8F6B: 0x8ED4, 0x8F6C: 0x8F49, 0x8F6D: 0x8EDB, 0x8F6E: 0x8F2A, 0x8F6F: 0x8EDF, 0x8F70: 0x8F5F, 0x8F71: 0x8EF2, 0x8F72: 0x8EFB, 0x8F73: 0x8F64, 0x8F74: 0x8EF8, 0x8F75: 0x8EF9, 0x8F76: 0x8EFC, 0x8F77: 0x8EE4, 0x8F78: 0x8EEB, 0x8F79: 0x8F62, 0x8F7A: 0x8EFA, 0x8F7B: 0x8F15, 0x8F7C: 0x8EFE, 0x8F7D: 0x8F09, 0x8F7E: 0x8F0A, 0x8F7F: 0x8F4E, 0x8F80: 0x8F08, 0x8F81: 0x8F07, 0x8F82: 0x8F05, 0x8F83: 0x8F03, 0x8F84: 0x8F12, 0x8F85: 0x8F14, 0x8F86: 0x8F1B, 0x8F87: 0x8F26, 0x8F88: 0x8F29, 0x8F89: 0x8F1D, 0x8F8A: 0x8F25, 0x8F8B: 0x8F1E, 0x8F8C: 0x8F2C, 0x8F8D: 0x8F1F, 0x8F8E: 0x8F1C, 0x8F8F: 0x8F33, 0x8F90: 0x8F3B, 0x8F91: 0x8F2F, 0x8F92: 0x8F40, 0x8F93: 0x8F38, 0x8F94: 0x8F61, 0x8F95: 0x8F45, 0x8F96: 0x8F44, 0x8F97: 0x8F3E, 0x8F98: 0x8F46, 0x8F99: 0x8F4D, 0x8F9A: 0x8F54, 0x8F9E: 0x8FAD, 0x8FA9: 0x8FAF, 0x8FAB: 0x8FAE, 0x8FB9: 0x908A, 0x8FBD: 0x907C, 0x8FBE: 0x9054, 0x8FC1: 0x9077, 0x8FC7: 0x904E, 0x8FC8: 0x9081, 0x8FD0: 0x904B, 0x8FD8: 0x9084, 0x8FD9: 0x9019, 0x8FDB: 0x9032, 0x8FDC: 0x9060, 0x8FDD: 0x9055, 0x8FDE: 0x9023, 0x8FDF: 0x9072, 0x8FE9: 0x9087, 0x8FF3: 0x9015, 0x8FF9: 0x8DE1, 0x9002: 0x9069, 0x9009: 0x9078, 0x900A: 0x905C, 0x9012: 0x905E, 0x9026: 0x9090, 0x903B: 0x908F, 0x9057: 0x907A, 0x9065: 0x9059, 0x9093: 0x9127, 0x909D: 0x913A, 0x90AC: 0x9114, 0x90AE: 0x90F5, 0x90B9: 0x9112, 0x90BA: 0x9134, 0x90BB: 0x9130, 0x90C1: 0x9B31, 0x90C4: 0x90E4, 0x90CF: 0x90DF, 0x90D0: 0x9136, 0x90D1: 0x912D, 0x90D3: 0x9106, 0x90E6: 0x9148, 0x90E7: 0x9116, 0x90F8: 0x9132, 0x915D: 0x919E, 0x9166: 0x91B1, 0x9171: 0x91AC, 0x917D: 0x91C5, 0x917E: 0x91C3, 0x917F: 0x91C0, 0x91CA: 0x91CB, 0x91CC: 0x88CF, 0x9274: 0x9452, 0x92AE: 0x947E, 0x933E: 0x93E8, 0x9486: 0x91D3, 0x9487: 0x91D4, 0x9488: 0x91DD, 0x9489: 0x91D8, 0x948A: 0x91D7, 0x948B: 0x91D9, 0x948C: 0x91D5, 0x948D: 0x91F7, 0x948E: 0x91FA, 0x948F: 0x91E7, 0x9490: 0x91E4, 0x9491: 0x9212, 0x9492: 0x91E9, 0x9493: 0x91E3, 0x9494: 0x9346, 0x9495: 0x91F9, 0x9496: 0x935A, 0x9497: 0x91F5, 0x9498: 0x9203, 0x9499: 0x9223, 0x949A: 0x9208, 0x949B: 0x9226, 0x949D: 0x920D, 0x949E: 0x9214, 0x949F: 0x937E, 0x94A0: 0x9209, 0x94A1: 0x92C7, 0x94A2: 0x92FC, 0x94A3: 0x9211, 0x94A4: 0x9210, 0x94A5: 0x9470, 0x94A6: 0x6B3D, 0x94A7: 0x921E, 0x94A8: 0x93A2, 0x94A9: 0x9264, 0x94AA: 0x9227, 0x94AB: 0x9201, 0x94AC: 0x9225, 0x94AD: 0x9204, 0x94AE: 0x9215, 0x94AF: 0x9200, 0x94B0: 0x923A, 0x94B1: 0x9322, 0x94B2: 0x9266, 0x94B3: 0x9257, 0x94B4: 0x9237, 0x94B5: 0x7F3D, 0x94B6: 0x9233, 0x94B7: 0x9255, 0x94B8: 0x923D, 0x94B9: 0x9238, 0x94BA: 0x925E, 0x94BB: 0x947D, 0x94BC: 0x926C, 0x94BD: 0x926D, 0x94BE: 0x9240, 0x94BF: 0x923F, 0x94C0: 0x923E, 0x94C1: 0x9435, 0x94C2: 0x9251, 0x94C3: 0x9234, 0x94C4: 0x9460, 0x94C5: 0x925B, 0x94C6: 0x925A, 0x94C8: 0x9230, 0x94C9: 0x9249, 0x94CA: 0x9248, 0x94CB: 0x924D, 0x94CC: 0x922E, 0x94CD: 0x9239, 0x94CE: 0x9438, 0x94CF: 0x9276, 0x94D0: 0x92AC, 0x94D1: 0x92A0, 0x94D2: 0x927A, 0x94D3: 0x92E9, 0x94D4: 0x930F, 0x94D5: 0x92AA, 0x94D6: 0x92EE, 0x94D7: 0x92CF, 0x94D8: 0x92E3, 0x94D9: 0x9403, 0x94DA: 0x928D, 0x94DB: 0x943A, 0x94DC: 0x9285, 0x94DD: 0x92C1, 0x94DE: 0x92B1, 0x94DF: 0x92A6, 0x94E0: 0x93A7, 0x94E1: 0x9358, 0x94E2: 0x9296, 0x94E3: 0x9291, 0x94E4: 0x92CC, 0x94E5: 0x92A9, 0x94E6: 0x929B, 0x94E7: 0x93F5, 0x94E8: 0x9293, 0x94E9: 0x93A9, 0x94EA: 0x927F, 0x94EB: 0x929A, 0x94EC: 0x927B, 0x94ED: 0x9298, 0x94EE: 0x931A, 0x94EF: 0x92AB, 0x94F0: 0x9278, 0x94F1: 0x92A5, 0x94F2: 0x93DF, 0x94F3: 0x9283, 0x94F4: 0x940B, 0x94F5: 0x92A8, 0x94F6: 0x9280, 0x94F7: 0x92A3, 0x94F8: 0x9444, 0x94F9: 0x9412, 0x94FA: 0x92EA, 0x94FB: 0x92D9, 0x94FC: 0x9338, 0x94FD: 0x92F1, 0x94FE: 0x93C8, 0x94FF: 0x93D7, 0x9500: 0x92B7, 0x9501: 0x9396, 0x9502: 0x92F0, 0x9503: 0x92E5, 0x9504: 0x92E4, 0x9505: 0x934B, 0x9506: 0x92EF, 0x9507: 0x92E8, 0x9508: 0x93FD, 0x9509: 0x92BC, 0x950A: 0x92DD, 0x950B: 0x92D2, 0x950C: 0x92C5, 0x950D: 0x92F6, 0x950E: 0x9426, 0x950F: 0x9427, 0x9510: 0x92B3, 0x9511: 0x92BB, 0x9512: 0x92C3, 0x9513: 0x92DF, 0x9514: 0x92E6, 0x9515: 0x9312, 0x9516: 0x9306, 0x9517: 0x937A, 0x9518: 0x9369, 0x9519: 0x932F, 0x951A: 0x9328, 0x951B: 0x931B, 0x951C: 0x9321, 0x951D: 0x9340, 0x951E: 0x9301, 0x951F: 0x9315, 0x9520: 0x9329, 0x9521: 0x932B, 0x9522: 0x932E, 0x9523: 0x947C, 0x9524: 0x9318, 0x9525: 0x9310, 0x9526: 0x9326, 0x9527: 0x9455, 0x9528: 0x9341, 0x9529: 0x9308, 0x952A: 0x9343, 0x952B: 0x9307, 0x952C: 0x931F, 0x952D: 0x9320, 0x952E: 0x9375, 0x952F: 0x92F8, 0x9530: 0x9333, 0x9531: 0x9319, 0x9532: 0x9365, 0x9533: 0x9348, 0x9534: 0x9347, 0x9535: 0x93D8, 0x9536: 0x9376, 0x9537: 0x9354, 0x9538: 0x9364, 0x9539: 0x936C, 0x953A: 0x937E, 0x953B: 0x935B, 0x953C: 0x93AA, 0x953D: 0x9360, 0x953E: 0x9370, 0x953F: 0x9384, 0x9540: 0x934D, 0x9541: 0x9382, 0x9542: 0x93E4, 0x9543: 0x93A1, 0x9544: 0x9428, 0x9545: 0x9387, 0x9546: 0x93CC, 0x9547: 0x93AE, 0x9548: 0x939B, 0x9549: 0x9398, 0x954A: 0x9477, 0x954B: 0x9482, 0x954C: 0x942B, 0x954D: 0x93B3, 0x954E: 0x93BF, 0x954F: 0x93A6, 0x9550: 0x93AC, 0x9551: 0x938A, 0x9552: 0x93B0, 0x9553: 0x93B5, 0x9554: 0x944C, 0x9555: 0x9394, 0x9556: 0x93E2, 0x9557: 0x93DC, 0x9558: 0x93DD, 0x9559: 0x93CD, 0x955A: 0x93F0, 0x955B: 0x93DE, 0x955C: 0x93E1, 0x955D: 0x93D1, 0x955E: 0x93C3, 0x9560: 0x93D0, 0x9561: 0x9414, 0x9562: 0x9481, 0x9563: 0x9410, 0x9564: 0x93F7, 0x9565: 0x9465, 0x9566: 0x9413, 0x9567: 0x946D, 0x9568: 0x9420, 0x9569: 0x9479, 0x956A: 0x93F9, 0x956B: 0x9419, 0x956C: 0x944A, 0x956D: 0x9433, 0x956E: 0x9436, 0x956F: 0x9432, 0x9570: 0x942E, 0x9571: 0x943F, 0x9572: 0x9454, 0x9573: 0x9463, 0x9574: 0x945E, 0x9575: 0x9471, 0x9576: 0x9472, 0x957F: 0x9577, 0x95E8: 0x9580, 0x95E9: 0x9582, 0x95EA: 0x9583, 0x95EB: 0x9586, 0x95EC: 0x9588, 0x95ED: 0x9589, 0x95EE: 0x554F, 0x95EF: 0x95D6, 0x95F0: 0x958F, 0x95F1: 0x95C8, 0x95F2: 0x9591, 0x95F3: 0x958E, 0x95F4: 0x9593, 0x95F5: 0x9594, 0x95F6: 0x958C, 0x95F7: 0x60B6, 0x95F8: 0x9598, 0x95F9: 0x9B27, 0x95FA: 0x95A8, 0x95FB: 0x805E, 0x95FC: 0x95E5, 0x95FD: 0x95A9, 0x95FE: 0x95AD, 0x95FF: 0x95D3, 0x9600: 0x95A5, 0x9601: 0x95A3, 0x9602: 0x95A1, 0x9603: 0x95AB, 0x9604: 0x9B2E, 0x9605: 0x95B1, 0x9606: 0x95AC, 0x9607: 0x95CD, 0x9608: 0x95BE, 0x9609: 0x95B9, 0x960A: 0x95B6, 0x960B: 0x9B29, 0x960C: 0x95BF, 0x960D: 0x95BD, 0x960E: 0x95BB, 0x960F: 0x95BC, 0x9610: 0x95E1, 0x9611: 0x95CC, 0x9612: 0x95C3, 0x9613: 0x95E0, 0x9614: 0x95CA, 0x9615: 0x95CB, 0x9616: 0x95D4, 0x9617: 0x95D0, 0x9618: 0x95D2, 0x9619: 0x95D5, 0x961A: 0x95DE, 0x961B: 0x95E4, 0x961F: 0x968A, 0x9633: 0x967D, 0x9634: 0x9670, 0x9635: 0x9663, 0x9636: 0x968E, 0x9645: 0x969B, 0x9646: 0x9678, 0x9647: 0x96B4, 0x9648: 0x9673, 0x9649: 0x9658, 0x9655: 0x965D, 0x9667: 0x9689, 0x9668: 0x9695, 0x9669: 0x96AA, 0x968F: 0x96A8, 0x9690: 0x96B1, 0x96B6: 0x96B8, 0x96BD: 0x96CB, 0x96BE: 0x96E3, 0x96CF: 0x96DB, 0x96E0: 0x8B8E, 0x96F3: 0x9742, 0x96FE: 0x9727, 0x9701: 0x973D, 0x9709: 0x9EF4, 0x972D: 0x9744, 0x9753: 0x975A, 0x9759: 0x975C, 0x9765: 0x9768, 0x9791: 0x97C3, 0x9792: 0x97BD, 0x97AF: 0x97C9, 0x97B4: 0x97DD, 0x97E6: 0x97CB, 0x97E7: 0x97CC, 0x97E8: 0x97CD, 0x97E9: 0x97D3, 0x97EA: 0x97D9, 0x97EB: 0x97DE, 0x97EC: 0x97DC, 0x97F5: 0x97FB, 0x9875: 0x9801, 0x9876: 0x9802, 0x9877: 0x9803, 0x9878: 0x9807, 0x9879: 0x9805, 0x987A: 0x9806, 0x987B: 0x9808, 0x987C: 0x980A, 0x987D: 0x9811, 0x987E: 0x9867, 0x987F: 0x9813, 0x9880: 0x980E, 0x9881: 0x9812, 0x9882: 0x980C, 0x9883: 0x980F, 0x9884: 0x9810, 0x9885: 0x9871, 0x9886: 0x9818, 0x9887: 0x9817, 0x9888: 0x9838, 0x9889: 0x9821, 0x988A: 0x9830, 0x988B: 0x9832, 0x988C: 0x981C, 0x988D: 0x6F41, 0x988E: 0x71B2, 0x988F: 0x9826, 0x9890: 0x9824, 0x9891: 0x983B, 0x9892: 0x982E, 0x9893: 0x9839, 0x9894: 0x9837, 0x9895: 0x9834, 0x9896: 0x7A4E, 0x9897: 0x9846, 0x9898: 0x984C, 0x9899: 0x9852, 0x989A: 0x984E, 0x989B: 0x9853, 0x989C: 0x984F, 0x989D: 0x984D, 0x989E: 0x9873, 0x989F: 0x9862, 0x98A0: 0x985B, 0x98A1: 0x9859, 0x98A2: 0x9865, 0x98A3: 0x7E87, 0x98A4: 0x986B, 0x98A5: 0x986C, 0x98A6: 0x9870, 0x98A7: 0x9874, 0x98CE: 0x98A8, 0x98CF: 0x98BA, 0x98D0: 0x98AD, 0x98D1: 0x98AE, 0x98D2: 0x98AF, 0x98D3: 0x98B6, 0x98D4: 0x98B8, 0x98D5: 0x98BC, 0x98D6: 0x98BB, 0x98D7: 0x98C0, 0x98D8: 0x98C4, 0x98D9: 0x98C6, 0x98DA: 0x98C6, 0x98DE: 0x98DB, 0x98E8: 0x9957, 0x990D: 0x995C, 0x9964: 0x98E3, 0x9965: 0x9951, 0x9966: 0x98E5, 0x9967: 0x9933, 0x9968: 0x98E9, 0x9969: 0x993C, 0x996A: 0x98EA, 0x996B: 0x98EB, 0x996C: 0x98ED, 0x996D: 0x98EF, 0x996E: 0x98F2, 0x996F: 0x991E, 0x9970: 0x98FE, 0x9971: 0x98FD, 0x9972: 0x98FC, 0x9973: 0x98FF, 0x9974: 0x98F4, 0x9975: 0x990C, 0x9976: 0x9952, 0x9977: 0x9909, 0x9978: 0x9904, 0x9979: 0x990E, 0x997A: 0x9903, 0x997B: 0x990F, 0x997C: 0x9905, 0x997D: 0x9911, 0x997E: 0x9916, 0x997F: 0x9913, 0x9980: 0x9918, 0x9981: 0x9912, 0x9982: 0x9915, 0x9983: 0x991C, 0x9984: 0x991B, 0x9985: 0x9921, 0x9986: 0x9928, 0x9987: 0x9937, 0x9988: 0x994B, 0x9989: 0x9936, 0x998A: 0x993F, 0x998B: 0x995E, 0x998C: 0x9941, 0x998D: 0x9943, 0x998E: 0x993A, 0x998F: 0x993E, 0x9990: 0x9948, 0x9991: 0x9949, 0x9992: 0x9945, 0x9993: 0x994A, 0x9994: 0x994C, 0x9995: 0x9962, 0x9A6C: 0x99AC, 0x9A6D: 0x99AD, 0x9A6E: 0x99B1, 0x9A6F: 0x99B4, 0x9A70: 0x99B3, 0x9A71: 0x9A45, 0x9A72: 0x99B9, 0x9A73: 0x99C1, 0x9A74: 0x9A62, 0x9A75: 0x99D4, 0x9A76: 0x99DB, 0x9A77: 0x99DF, 0x9A78: 0x99D9, 0x9A79: 0x99D2, 0x9A7A: 0x9A36, 0x9A7B: 0x99D0, 0x9A7C: 0x99DD, 0x9A7D: 0x99D1, 0x9A7E: 0x99D5, 0x9A7F: 0x9A5B, 0x9A80: 0x99D8, 0x9A81: 0x9A4D, 0x9A82: 0x7F75, 0x9A83: 0x99F0, 0x9A84: 0x9A55, 0x9A85: 0x9A4A, 0x9A86: 0x99F1, 0x9A87: 0x99ED, 0x9A88: 0x99E2, 0x9A89: 0x9A6B, 0x9A8A: 0x9A6A, 0x9A8B: 0x9A01, 0x9A8C: 0x9A57, 0x9A8D: 0x9A02, 0x9A8E: 0x99F8, 0x9A8F: 0x99FF, 0x9A90: 0x9A0F, 0x9A91: 0x9A0E, 0x9A92: 0x9A0D, 0x9A93: 0x9A05, 0x9A94: 0x9A0C, 0x9A95: 0x9A4C, 0x9A96: 0x9A42, 0x9A97: 0x9A19, 0x9A98: 0x9A2D, 0x9A99: 0x9A24, 0x9A9A: 0x9A37, 0x9A9B: 0x9A16, 0x9A9C: 0x9A41, 0x9A9D: 0x9A2E, 0x9A9E: 0x9A2B, 0x9A9F: 0x9A38, 0x9AA0: 0x9A43, 0x9AA1: 0x9A3E, 0x9AA2: 0x9A44, 0x9AA3: 0x9A4F, 0x9AA4: 0x9A5F, 0x9AA5: 0x9A65, 0x9AA6: 0x9A66, 0x9AA7: 0x9A64, 0x9AC5: 0x9ACF, 0x9ACB: 0x9AD6, 0x9ACC: 0x9AD5, 0x9B13: 0x9B22, 0x9B47: 0x9B58, 0x9B49: 0x9B4E, 0x9C7C: 0x9B5A, 0x9C7D: 0x9B5B, 0x9C7E: 0x9B62, 0x9C7F: 0x9B77, 0x9C80: 0x9B68, 0x9C81: 0x9B6F, 0x9C82: 0x9B74, 0x9C84: 0x9B7A, 0x9C85: 0x9B81, 0x9C86: 0x9B83, 0x9C87: 0x9BF0, 0x9C88: 0x9C78, 0x9C89: 0x9B8B, 0x9C8A: 0x9B93, 0x9C8B: 0x9B92, 0x9C8C: 0x9B8A, 0x9C8D: 0x9B91, 0x9C8E: 0x9C5F, 0x9C8F: 0x9B8D, 0x9C90: 0x9B90, 0x9C91: 0x9BAD, 0x9C92: 0x9B9A, 0x9C93: 0x9BB3, 0x9C94: 0x9BAA, 0x9C95: 0x9B9E, 0x9C96: 0x9BA6, 0x9C97: 0x9C02, 0x9C98: 0x9B9C, 0x9C99: 0x9C60, 0x9C9A: 0x9C6D, 0x9C9B: 0x9BAB, 0x9C9C: 0x9BAE, 0x9C9D: 0x9BBA, 0x9C9E: 0x9BD7, 0x9C9F: 0x9C58, 0x9CA0: 0x9BC1, 0x9CA1: 0x9C7A, 0x9CA2: 0x9C31, 0x9CA3: 0x9C39, 0x9CA4: 0x9BC9, 0x9CA5: 0x9C23, 0x9CA6: 0x9C37, 0x9CA7: 0x9BC0, 0x9CA8: 0x9BCA, 0x9CA9: 0x9BC7, 0x9CAA: 0x9BB6, 0x9CAB: 0x9BFD, 0x9CAC: 0x9BD2, 0x9CAD: 0x9BD6, 0x9CAE: 0x9BEA, 0x9CAF: 0x9BD5, 0x9CB0: 0x9BEB, 0x9CB1: 0x9BE1, 0x9CB2: 0x9BE4, 0x9CB3: 0x9BE7, 0x9CB4: 0x9BDD, 0x9CB5: 0x9BE2, 0x9CB6: 0x9BF0, 0x9CB7: 0x9BDB, 0x9CB8: 0x9BE8, 0x9CB9: 0x9BF5, 0x9CBA: 0x9BF4, 0x9CBB: 0x9BD4, 0x9CBC: 0x9C5D, 0x9CBD: 0x9C08, 0x9CBE: 0x9C0F, 0x9CBF: 0x9C68, 0x9CC0: 0x9BF7, 0x9CC1: 0x9C2E, 0x9CC2: 0x9C03, 0x9CC3: 0x9C13, 0x9CC4: 0x9C77, 0x9CC5: 0x9C0D, 0x9CC6: 0x9C12, 0x9CC7: 0x9C09, 0x9CC8: 0x9C01, 0x9CC9: 0x9C42, 0x9CCA: 0x9BFF, 0x9CCB: 0x9C20, 0x9CCC: 0x9F07, 0x9CCD: 0x9C2D, 0x9CCE: 0x9C28, 0x9CCF: 0x9C25, 0x9CD0: 0x9C29, 0x9CD1: 0x9C1F, 0x9CD2: 0x9C1C, 0x9CD3: 0x9C33, 0x9CD4: 0x9C3E, 0x9CD5: 0x9C48, 0x9CD6: 0x9C49, 0x9CD7: 0x9C3B, 0x9CD8: 0x9C35, 0x9CD9: 0x9C45, 0x9CDB: 0x9C3C, 0x9CDC: 0x9C56, 0x9CDD: 0x9C54, 0x9CDE: 0x9C57, 0x9CDF: 0x9C52, 0x9CE0: 0x9C6F, 0x9CE1: 0x9C64, 0x9CE2: 0x9C67, 0x9CE3: 0x9C63, 0x9E1F: 0x9CE5, 0x9E20: 0x9CE9, 0x9E21: 0x96DE, 0x9E22: 0x9CF6, 0x9E23: 0x9CF4, 0x9E24: 0x9CF2, 0x9E25: 0x9DD7, 0x9E26: 0x9D09, 0x9E27: 0x9DAC, 0x9E28: 0x9D07, 0x9E29: 0x9D06, 0x9E2A: 0x9D23, 0x9E2B: 0x9D87, 0x9E2C: 0x9E15, 0x9E2D: 0x9D28, 0x9E2E: 0x9D1E, 0x9E2F: 0x9D26, 0x9E30: 0x9D12, 0x9E31: 0x9D1F, 0x9E32: 0x9D1D, 0x9E33: 0x9D1B, 0x9E34: 0x9D2C, 0x9E35: 0x9D15, 0x9E36: 0x9DE5, 0x9E37: 0x9DD9, 0x9E38: 0x9D2F, 0x9E39: 0x9D30, 0x9E3A: 0x9D42, 0x9E3B: 0x9D34, 0x9E3C: 0x9D43, 0x9E3D: 0x9D3F, 0x9E3E: 0x9E1E, 0x9E3F: 0x9D3B, 0x9E40: 0x9D50, 0x9E41: 0x9D53, 0x9E42: 0x9E1D, 0x9E43: 0x9D51, 0x9E44: 0x9D60, 0x9E45: 0x9D5D, 0x9E46: 0x9D52, 0x9E47: 0x9DF3, 0x9E48: 0x9D5C, 0x9E49: 0x9D61, 0x9E4A: 0x9D72, 0x9E4B: 0x9D93, 0x9E4C: 0x9D6A, 0x9E4D: 0x9DA4, 0x9E4E: 0x9D6F, 0x9E4F: 0x9D6C, 0x9E50: 0x9D6E, 0x9E51: 0x9D89, 0x9E52: 0x9D8A, 0x9E53: 0x9D77, 0x9E54: 0x9DEB, 0x9E55: 0x9D98, 0x9E56: 0x9DA1, 0x9E57: 0x9D9A, 0x9E58: 0x9DBB, 0x9E59: 0x9D96, 0x9E5A: 0x9DBF, 0x9E5B: 0x9DA5, 0x9E5C: 0x9DA9, 0x9E5D: 0x9DCA, 0x9E5E: 0x9DC2, 0x9E5F: 0x9DB2, 0x9E60: 0x9DB9, 0x9E61: 0x9DBA, 0x9E62: 0x9DC1, 0x9E63: 0x9DBC, 0x9E64: 0x9DB4, 0x9E65: 0x9DD6, 0x9E66: 0x9E1A, 0x9E67: 0x9DD3, 0x9E68: 0x9DDA, 0x9E69: 0x9DEF, 0x9E6A: 0x9DE6, 0x9E6B: 0x9DF2, 0x9E6C: 0x9DF8, 0x9E6D: 0x9DFA, 0x9E6F: 0x9E07, 0x9E70: 0x9DF9, 0x9E71: 0x9E0C, 0x9E72: 0x9E0F, 0x9E73: 0x9E1B, 0x9E74: 0x9E18, 0x9E7E: 0x9E7A, 0x9EA6: 0x9EA5, 0x9EB8: 0x9EA9, 0x9EC4: 0x9EC3, 0x9EC9: 0x9ECC, 0x9EE1: 0x9EF6, 0x9EE9: 0x9EF7, 0x9EEA: 0x9EF2, 0x9EFE: 0x9EFD, 0x9F0B: 0x9EFF, 0x9F0C: 0x9F02, 0x9F0D: 0x9F09, 0x9F17: 0x9780, 0x9F39: 0x9F34, 0x9F44: 0x9F47, 0x9F50: 0x9F4A, 0x9F51: 0x9F4F, 0x9F7F: 0x9F52, 0x9F80: 0x9F54, 0x9F81: 0x9F55, 0x9F82: 0x9F57, 0x9F83: 0x9F5F, 0x9F84: 0x9F61, 0x9F85: 0x9F59, 0x9F86: 0x9F60, 0x9F87: 0x9F5C, 0x9F88: 0x9F66, 0x9F89: 0x9F6C, 0x9F8A: 0x9F6A, 0x9F8B: 0x9F72, 0x9F8C: 0x9F77, 0x9F99: 0x9F8D, 0x9F9A: 0x9F94, 0x9F9B: 0x9F95, 0x9F9F: 0x9F9C, } Trad2Simp_Table = { 0x2022: 0xFF0E, 0x2024: 0x02D9, 0x2025: 0x00A8, 0x2027: 0xFF0E, 0x2032: 0xFF07, 0x300C: 0x201C, 0x300D: 0x201D, 0x300E: 0x2018, 0x300F: 0x2019, 0x301E: 0x2033, 0x4E1F: 0x4E22, 0x4E26: 0x5E76, 0x4E7E: 0x5E72, 0x4E82: 0x4E71, 0x4E99: 0x4E98, 0x4E9E: 0x4E9A, 0x4F15: 0x592B, 0x4F47: 0x4F2B, 0x4F48: 0x5E03, 0x4F54: 0x5360, 0x4F58: 0x7572, 0x4F75: 0x5E76, 0x4F86: 0x6765, 0x4F96: 0x4ED1, 0x4FB6: 0x4FA3, 0x4FB7: 0x5C40, 0x4FC1: 0x4FE3, 0x4FC2: 0x7CFB, 0x4FE0: 0x4FA0, 0x5000: 0x4F25, 0x5006: 0x4FE9, 0x5009: 0x4ED3, 0x500B: 0x4E2A, 0x5011: 0x4EEC, 0x5016: 0x5E78, 0x5023: 0x4EFF, 0x502B: 0x4F26, 0x5049: 0x4F1F, 0x5074: 0x4FA7, 0x5075: 0x4FA6, 0x5078: 0x5077, 0x507A: 0x54B1, 0x507D: 0x4F2A, 0x5091: 0x6770, 0x5096: 0x4F27, 0x5098: 0x4F1E, 0x5099: 0x5907, 0x509A: 0x6548, 0x50A2: 0x5BB6, 0x50AD: 0x4F63, 0x50AF: 0x506C, 0x50B3: 0x4F20, 0x50B4: 0x4F1B, 0x50B5: 0x503A, 0x50B7: 0x4F24, 0x50BE: 0x503E, 0x50C2: 0x507B, 0x50C5: 0x4EC5, 0x50C9: 0x4F65, 0x50D1: 0x4FA8, 0x50D5: 0x4EC6, 0x50DE: 0x4F2A, 0x50E5: 0x4FA5, 0x50E8: 0x507E, 0x50F1: 0x96C7, 0x50F9: 0x4EF7, 0x5100: 0x4EEA, 0x5102: 0x4FAC, 0x5104: 0x4EBF, 0x5105: 0x5F53, 0x5108: 0x4FA9, 0x5109: 0x4FED, 0x5110: 0x50A7, 0x5114: 0x4FE6, 0x5115: 0x4FAA, 0x5118: 0x5C3D, 0x511F: 0x507F, 0x512A: 0x4F18, 0x5132: 0x50A8, 0x5137: 0x4FEA, 0x5138: 0x7F57, 0x5139: 0x6512, 0x513A: 0x50A9, 0x513B: 0x50A5, 0x513C: 0x4FE8, 0x5147: 0x51F6, 0x514C: 0x5151, 0x5152: 0x513F, 0x5157: 0x5156, 0x5167: 0x5185, 0x5169: 0x4E24, 0x518A: 0x518C, 0x51AA: 0x5E42, 0x51C3: 0x6D82, 0x51CD: 0x51BB, 0x51DC: 0x51DB, 0x51DF: 0x6E0E, 0x51E6: 0x5904, 0x51F1: 0x51EF, 0x51F4: 0x51ED, 0x5225: 0x522B, 0x522A: 0x5220, 0x5244: 0x522D, 0x5247: 0x5219, 0x524B: 0x514B, 0x5257: 0x522C, 0x525B: 0x521A, 0x525D: 0x5265, 0x526E: 0x5250, 0x5274: 0x5240, 0x5275: 0x521B, 0x5277: 0x94F2, 0x5283: 0x5212, 0x5284: 0x672D, 0x5287: 0x5267, 0x5289: 0x5218, 0x528A: 0x523D, 0x528C: 0x523F, 0x528D: 0x5251, 0x5291: 0x5242, 0x5292: 0x5251, 0x52C1: 0x52B2, 0x52D5: 0x52A8, 0x52D7: 0x52D6, 0x52D9: 0x52A1, 0x52DB: 0x52CB, 0x52DD: 0x80DC, 0x52DE: 0x52B3, 0x52E2: 0x52BF, 0x52E3: 0x7EE9, 0x52E6: 0x527F, 0x52E9: 0x52DA, 0x52F1: 0x52A2, 0x52F3: 0x52CB, 0x52F5: 0x52B1, 0x52F8: 0x529D, 0x52FB: 0x5300, 0x532D: 0x5326, 0x532F: 0x6C47, 0x5331: 0x532E, 0x5332: 0x5941, 0x5333: 0x5941, 0x5335: 0x691F, 0x5340: 0x533A, 0x5354: 0x534F, 0x5379: 0x6064, 0x537B: 0x5374, 0x5399: 0x538D, 0x539B: 0x5385, 0x53A0: 0x5395, 0x53A4: 0x5386, 0x53AD: 0x538C, 0x53B0: 0x5382, 0x53B2: 0x5389, 0x53B4: 0x53A3, 0x53C3: 0x53C2, 0x53E2: 0x4E1B, 0x5412: 0x54A4, 0x5433: 0x5434, 0x5442: 0x5415, 0x54BC: 0x5459, 0x54E1: 0x5458, 0x54E2: 0x5494, 0x5504: 0x5457, 0x5515: 0x5523, 0x551A: 0x5423, 0x5538: 0x5FF5, 0x554F: 0x95EE, 0x5553: 0x542F, 0x5557: 0x5556, 0x555E: 0x54D1, 0x555F: 0x542F, 0x5562: 0x5521, 0x5563: 0x8854, 0x5592: 0x54B1, 0x559A: 0x5524, 0x55A6: 0x5CA9, 0x55AA: 0x4E27, 0x55AB: 0x5403, 0x55AC: 0x4E54, 0x55AE: 0x5355, 0x55B2: 0x54DF, 0x55C6: 0x545B, 0x55C7: 0x556C, 0x55CA: 0x551D, 0x55CE: 0x5417, 0x55DA: 0x545C, 0x55E9: 0x5522, 0x55F6: 0x54D4, 0x5606: 0x53F9, 0x560D: 0x55BD, 0x5614: 0x5455, 0x5616: 0x5567, 0x5617: 0x5C1D, 0x561C: 0x551B, 0x5629: 0x54D7, 0x562E: 0x5520, 0x562F: 0x5578, 0x5630: 0x53FD, 0x5635: 0x54D3, 0x5638: 0x5452, 0x563D: 0x5574, 0x5641: 0x6076, 0x5645: 0x54B4, 0x5653: 0x5618, 0x565D: 0x549D, 0x5660: 0x54D2, 0x5665: 0x54DD, 0x5666: 0x54D5, 0x566F: 0x55F3, 0x5672: 0x54D9, 0x5674: 0x55B7, 0x5678: 0x5428, 0x5679: 0x5F53, 0x5680: 0x549B, 0x5687: 0x5413, 0x568C: 0x54DC, 0x5690: 0x5C1D, 0x5695: 0x565C, 0x5699: 0x556E, 0x56A5: 0x54BD, 0x56A6: 0x5456, 0x56A8: 0x5499, 0x56AE: 0x5411, 0x56B2: 0x4EB8, 0x56B3: 0x55BE, 0x56B4: 0x4E25, 0x56B6: 0x5624, 0x56BB: 0x56A3, 0x56C0: 0x556D, 0x56C1: 0x55EB, 0x56C2: 0x56A3, 0x56C5: 0x5181, 0x56C8: 0x5453, 0x56C9: 0x5570, 0x56CC: 0x82CF, 0x56D1: 0x5631, 0x56D8: 0x56DE, 0x56EA: 0x56F1, 0x56EC: 0x56DE, 0x56EF: 0x56FD, 0x5707: 0x56F5, 0x570B: 0x56FD, 0x570D: 0x56F4, 0x5712: 0x56ED, 0x5713: 0x5706, 0x5716: 0x56FE, 0x5718: 0x56E2, 0x5770: 0x57A7, 0x57B5: 0x57EF, 0x57BB: 0x575D, 0x57E1: 0x57AD, 0x57F0: 0x91C7, 0x57F7: 0x6267, 0x5805: 0x575A, 0x580A: 0x57A9, 0x5816: 0x57B4, 0x581D: 0x57DA, 0x5826: 0x9636, 0x582F: 0x5C27, 0x5831: 0x62A5, 0x5834: 0x573A, 0x583F: 0x78B1, 0x584A: 0x5757, 0x584B: 0x8314, 0x584F: 0x57B2, 0x5852: 0x57D8, 0x5857: 0x6D82, 0x585A: 0x51A2, 0x5862: 0x575E, 0x5864: 0x57D9, 0x5872: 0x573A, 0x5875: 0x5C18, 0x5879: 0x5811, 0x587C: 0x7816, 0x588A: 0x57AB, 0x589C: 0x5760, 0x589D: 0x7857, 0x58AE: 0x5815, 0x58B0: 0x575B, 0x58B3: 0x575F, 0x58B6: 0x57AF, 0x58BB: 0x5899, 0x58BE: 0x57A6, 0x58C7: 0x575B, 0x58CB: 0x57B1, 0x58CE: 0x57D9, 0x58D3: 0x538B, 0x58D8: 0x5792, 0x58D9: 0x5739, 0x58DA: 0x5786, 0x58DC: 0x575B, 0x58DE: 0x574F, 0x58DF: 0x5784, 0x58E0: 0x5784, 0x58E2: 0x575C, 0x58E9: 0x575D, 0x58EA: 0x5846, 0x58EF: 0x58EE, 0x58FA: 0x58F6, 0x58FC: 0x58F8, 0x58FD: 0x5BFF, 0x5900: 0x5BFF, 0x5920: 0x591F, 0x5922: 0x68A6, 0x5925: 0x4F19, 0x593E: 0x5939, 0x5950: 0x5942, 0x5967: 0x5965, 0x5969: 0x5941, 0x596A: 0x593A, 0x596E: 0x594B, 0x599D: 0x5986, 0x59CD: 0x59D7, 0x59E6: 0x5978, 0x59EA: 0x4F84, 0x5A1B: 0x5A31, 0x5A2C: 0x59A9, 0x5A41: 0x5A04, 0x5A66: 0x5987, 0x5A6C: 0x6DEB, 0x5A6D: 0x5A05, 0x5AA7: 0x5A32, 0x5AAE: 0x5077, 0x5AAF: 0x59AB, 0x5ABC: 0x5AAA, 0x5ABD: 0x5988, 0x5ACB: 0x8885, 0x5AD7: 0x59AA, 0x5AF5: 0x59A9, 0x5AFA: 0x5A34, 0x5AFB: 0x5A34, 0x5AFF: 0x5A73, 0x5B00: 0x59AB, 0x5B08: 0x5A06, 0x5B0B: 0x5A75, 0x5B0C: 0x5A07, 0x5B19: 0x5AF1, 0x5B1D: 0x8885, 0x5B21: 0x5AD2, 0x5B24: 0x5B37, 0x5B2A: 0x5AD4, 0x5B2D: 0x5976, 0x5B30: 0x5A74, 0x5B38: 0x5A76, 0x5B3E: 0x61D2, 0x5B43: 0x5A18, 0x5B4C: 0x5A08, 0x5B6B: 0x5B59, 0x5B78: 0x5B66, 0x5B7F: 0x5B6A, 0x5BAE: 0x5BAB, 0x5BE2: 0x5BDD, 0x5BE6: 0x5B9E, 0x5BE7: 0x5B81, 0x5BE9: 0x5BA1, 0x5BEB: 0x5199, 0x5BEC: 0x5BBD, 0x5BF5: 0x5BA0, 0x5BF6: 0x5B9D, 0x5C05: 0x514B, 0x5C07: 0x5C06, 0x5C08: 0x4E13, 0x5C0B: 0x5BFB, 0x5C0D: 0x5BF9, 0x5C0E: 0x5BFC, 0x5C32: 0x5C34, 0x5C37: 0x5C34, 0x5C46: 0x5C4A, 0x5C4D: 0x5C38, 0x5C53: 0x5C43, 0x5C5C: 0x5C49, 0x5C62: 0x5C61, 0x5C64: 0x5C42, 0x5C68: 0x5C66, 0x5C6C: 0x5C5E, 0x5C6D: 0x5C43, 0x5CA1: 0x5188, 0x5CF4: 0x5C98, 0x5CF6: 0x5C9B, 0x5CFD: 0x5CE1, 0x5D0D: 0x5D03, 0x5D10: 0x6606, 0x5D11: 0x6606, 0x5D17: 0x5C97, 0x5D19: 0x4ED1, 0x5D20: 0x5CBD, 0x5D22: 0x5CE5, 0x5D2C: 0x5CBD, 0x5D33: 0x5D5B, 0x5D50: 0x5C9A, 0x5D57: 0x5C81, 0x5D81: 0x5D5D, 0x5D84: 0x5D2D, 0x5D87: 0x5C96, 0x5D94: 0x5D5A, 0x5D97: 0x5D02, 0x5DA0: 0x5CE4, 0x5DA2: 0x5CE3, 0x5DA7: 0x5CC4, 0x5DA8: 0x5CC3, 0x5DAE: 0x5D04, 0x5DB4: 0x5C99, 0x5DB8: 0x5D58, 0x5DBA: 0x5CAD, 0x5DBC: 0x5C7F, 0x5DBD: 0x5CB3, 0x5DCB: 0x5CBF, 0x5DD2: 0x5CE6, 0x5DD4: 0x5DC5, 0x5DD6: 0x5CA9, 0x5DF0: 0x5DEF, 0x5DF9: 0x537A, 0x5E25: 0x5E05, 0x5E2B: 0x5E08, 0x5E33: 0x5E10, 0x5E36: 0x5E26, 0x5E40: 0x5E27, 0x5E43: 0x5E0F, 0x5E57: 0x5E3C, 0x5E58: 0x5E3B, 0x5E5F: 0x5E1C, 0x5E63: 0x5E01, 0x5E6B: 0x5E2E, 0x5E6C: 0x5E31, 0x5E71: 0x8955, 0x5E79: 0x5E72, 0x5E7E: 0x51E0, 0x5EAB: 0x5E93, 0x5EC1: 0x5395, 0x5EC2: 0x53A2, 0x5EC4: 0x53A9, 0x5EC8: 0x53A6, 0x5ECE: 0x5EBC, 0x5ED5: 0x836B, 0x5EDA: 0x53A8, 0x5EDD: 0x53AE, 0x5EDF: 0x5E99, 0x5EE0: 0x5382, 0x5EE1: 0x5E91, 0x5EE2: 0x5E9F, 0x5EE3: 0x5E7F, 0x5EE9: 0x5EEA, 0x5EEC: 0x5E90, 0x5EF3: 0x5385, 0x5EFB: 0x56DE, 0x5EFC: 0x4E43, 0x5F14: 0x540A, 0x5F33: 0x5F2A, 0x5F35: 0x5F20, 0x5F37: 0x5F3A, 0x5F46: 0x522B, 0x5F48: 0x5F39, 0x5F4A: 0x5F3A, 0x5F4C: 0x5F25, 0x5F4E: 0x5F2F, 0x5F59: 0x6C47, 0x5F5C: 0x5F5D, 0x5F5E: 0x5F5D, 0x5F60: 0x5F5F, 0x5F65: 0x5F66, 0x5F6B: 0x96D5, 0x5F7F: 0x4F5B, 0x5F8C: 0x540E, 0x5F91: 0x5F84, 0x5F9E: 0x4ECE, 0x5FA0: 0x5F95, 0x5FA9: 0x590D, 0x5FAC: 0x4EFF, 0x5FB4: 0x5F81, 0x5FB5: 0x5F81, 0x5FB9: 0x5F7B, 0x6046: 0x6052, 0x6065: 0x803B, 0x6085: 0x60A6, 0x60B5: 0x6005, 0x60B6: 0x95F7, 0x60BD: 0x51C4, 0x60E1: 0x6076, 0x60F1: 0x607C, 0x60F2: 0x607D, 0x60FB: 0x607B, 0x611B: 0x7231, 0x611C: 0x60EC, 0x6128: 0x60AB, 0x6134: 0x6006, 0x6137: 0x607A, 0x613E: 0x5FFE, 0x6144: 0x6817, 0x6147: 0x6BB7, 0x614B: 0x6001, 0x614D: 0x6120, 0x6158: 0x60E8, 0x6159: 0x60ED, 0x615A: 0x60ED, 0x615F: 0x6078, 0x6163: 0x60EF, 0x6164: 0x60AB, 0x616A: 0x6004, 0x616B: 0x6002, 0x616E: 0x8651, 0x6173: 0x60AD, 0x6174: 0x6151, 0x6176: 0x5E86, 0x617C: 0x621A, 0x617E: 0x6B32, 0x6182: 0x5FE7, 0x618A: 0x60EB, 0x6190: 0x601C, 0x6191: 0x51ED, 0x6192: 0x6126, 0x6196: 0x616D, 0x619A: 0x60EE, 0x61A4: 0x6124, 0x61AB: 0x60AF, 0x61AE: 0x6003, 0x61B2: 0x5BAA, 0x61B6: 0x5FC6, 0x61C7: 0x6073, 0x61C9: 0x5E94, 0x61CC: 0x603F, 0x61CD: 0x61D4, 0x61D5: 0x6079, 0x61DE: 0x8499, 0x61DF: 0x603C, 0x61E3: 0x61D1, 0x61E8: 0x6079, 0x61F2: 0x60E9, 0x61F6: 0x61D2, 0x61F7: 0x6000, 0x61F8: 0x60AC, 0x61FA: 0x5FCF, 0x61FC: 0x60E7, 0x61FD: 0x6B22, 0x61FE: 0x6151, 0x6200: 0x604B, 0x6207: 0x6206, 0x6214: 0x620B, 0x6227: 0x6217, 0x6229: 0x622C, 0x622F: 0x620F, 0x6230: 0x6218, 0x6232: 0x620F, 0x6236: 0x6237, 0x6261: 0x6266, 0x62CB: 0x629B, 0x633E: 0x631F, 0x6368: 0x820D, 0x636B: 0x626A, 0x6372: 0x5377, 0x6383: 0x626B, 0x6384: 0x62A1, 0x6397: 0x631C, 0x6399: 0x6323, 0x639B: 0x6302, 0x63A1: 0x91C7, 0x63C0: 0x62E3, 0x63DA: 0x626C, 0x63DB: 0x6362, 0x63EE: 0x6325, 0x63F9: 0x80CC, 0x6406: 0x6784, 0x6407: 0x63FF, 0x640D: 0x635F, 0x6416: 0x6447, 0x6417: 0x6363, 0x6436: 0x62A2, 0x643E: 0x69A8, 0x6451: 0x63B4, 0x645C: 0x63BC, 0x645F: 0x6402, 0x6463: 0x63F8, 0x646F: 0x631A, 0x6473: 0x62A0, 0x6476: 0x629F, 0x647A: 0x6298, 0x647B: 0x63BA, 0x6488: 0x635E, 0x648F: 0x6326, 0x6490: 0x6491, 0x6493: 0x6320, 0x649A: 0x637B, 0x649F: 0x6322, 0x64A3: 0x63B8, 0x64A5: 0x62E8, 0x64AB: 0x629A, 0x64B2: 0x6251, 0x64B3: 0x63FF, 0x64BB: 0x631E, 0x64BE: 0x631D, 0x64BF: 0x6361, 0x64C1: 0x62E5, 0x64C4: 0x63B3, 0x64C7: 0x62E9, 0x64CA: 0x51FB, 0x64CB: 0x6321, 0x64D4: 0x62C5, 0x64D5: 0x643A, 0x64DA: 0x636E, 0x64E0: 0x6324, 0x64E1: 0x62AC, 0x64E3: 0x6363, 0x64E7: 0x4E3E, 0x64EC: 0x62DF, 0x64EF: 0x6448, 0x64F0: 0x62E7, 0x64F1: 0x6401, 0x64F2: 0x63B7, 0x64F4: 0x6269, 0x64F7: 0x64B7, 0x64FA: 0x6446, 0x64FB: 0x64DE, 0x64FC: 0x64B8, 0x64FE: 0x6270, 0x6504: 0x6445, 0x6506: 0x64B5, 0x650F: 0x62E2, 0x6514: 0x62E6, 0x6516: 0x6484, 0x6519: 0x6400, 0x651B: 0x64BA, 0x651C: 0x643A, 0x651D: 0x6444, 0x6522: 0x6512, 0x6523: 0x631B, 0x6524: 0x644A, 0x6529: 0x6321, 0x652A: 0x6405, 0x652C: 0x63FD, 0x6537: 0x8003, 0x654D: 0x53D9, 0x6557: 0x8D25, 0x6558: 0x53D9, 0x656D: 0x626C, 0x6575: 0x654C, 0x6578: 0x6570, 0x657A: 0x9A71, 0x6582: 0x655B, 0x6583: 0x6BD9, 0x6595: 0x6593, 0x65AC: 0x65A9, 0x65B7: 0x65AD, 0x65BC: 0x4E8E, 0x65C2: 0x65D7, 0x6607: 0x5347, 0x6642: 0x65F6, 0x6649: 0x664B, 0x665D: 0x663C, 0x6688: 0x6655, 0x6689: 0x6656, 0x6698: 0x65F8, 0x66A2: 0x7545, 0x66AB: 0x6682, 0x66B1: 0x6635, 0x66C4: 0x6654, 0x66C6: 0x5386, 0x66C7: 0x6619, 0x66C9: 0x6653, 0x66CF: 0x5411, 0x66D6: 0x66A7, 0x66E0: 0x65F7, 0x66E1: 0x53E0, 0x66E8: 0x663D, 0x66EC: 0x6652, 0x66F8: 0x4E66, 0x6703: 0x4F1A, 0x6727: 0x80E7, 0x6771: 0x4E1C, 0x67B4: 0x62D0, 0x67F5: 0x6805, 0x67FA: 0x62D0, 0x687F: 0x6746, 0x6894: 0x6800, 0x6898: 0x67A7, 0x689D: 0x6761, 0x689F: 0x67AD, 0x68B1: 0x6346, 0x68C4: 0x5F03, 0x68D6: 0x67A8, 0x68D7: 0x67A3, 0x68DF: 0x680B, 0x68E7: 0x6808, 0x68EC: 0x684A, 0x68F2: 0x6816, 0x68F6: 0x68BE, 0x690F: 0x6860, 0x694A: 0x6768, 0x6953: 0x67AB, 0x6968: 0x6862, 0x696D: 0x4E1A, 0x6975: 0x6781, 0x69A6: 0x5E72, 0x69AA: 0x6769, 0x69AE: 0x8363, 0x69BF: 0x6864, 0x69C3: 0x76D8, 0x69CB: 0x6784, 0x69CD: 0x67AA, 0x69D3: 0x6760, 0x69E7: 0x6920, 0x69E8: 0x6901, 0x69F3: 0x6868, 0x69FC: 0x89C4, 0x6A01: 0x6869, 0x6A02: 0x4E50, 0x6A05: 0x679E, 0x6A11: 0x6881, 0x6A13: 0x697C, 0x6A19: 0x6807, 0x6A1E: 0x67A2, 0x6A23: 0x6837, 0x6A37: 0x4E1B, 0x6A38: 0x6734, 0x6A39: 0x6811, 0x6A3A: 0x6866, 0x6A48: 0x6861, 0x6A4B: 0x6865, 0x6A5F: 0x673A, 0x6A62: 0x692D, 0x6A6B: 0x6A2A, 0x6A70: 0x69D4, 0x6A81: 0x6AA9, 0x6A89: 0x67FD, 0x6A94: 0x6863, 0x6A9C: 0x6867, 0x6A9F: 0x69DA, 0x6AA2: 0x68C0, 0x6AA3: 0x6A2F, 0x6AAE: 0x68BC, 0x6AAF: 0x53F0, 0x6AB3: 0x69DF, 0x6AB8: 0x67E0, 0x6ABB: 0x69DB, 0x6ABE: 0x82D8, 0x6AC2: 0x68F9, 0x6AC3: 0x67DC, 0x6AD3: 0x6A79, 0x6ADA: 0x6988, 0x6ADB: 0x6809, 0x6ADD: 0x691F, 0x6ADE: 0x6A7C, 0x6ADF: 0x680E, 0x6AE5: 0x6A71, 0x6AE7: 0x69E0, 0x6AE8: 0x680C, 0x6AEA: 0x67A5, 0x6AEB: 0x6A65, 0x6AEC: 0x6987, 0x6AF3: 0x680A, 0x6AF8: 0x6989, 0x6AFA: 0x68C2, 0x6AFB: 0x6A31, 0x6B04: 0x680F, 0x6B0A: 0x6743, 0x6B0F: 0x6924, 0x6B11: 0x6512, 0x6B12: 0x683E, 0x6B16: 0x6984, 0x6B1E: 0x68C2, 0x6B3D: 0x94A6, 0x6B4E: 0x53F9, 0x6B50: 0x6B27, 0x6B57: 0x5578, 0x6B5B: 0x655B, 0x6B5F: 0x6B24, 0x6B61: 0x6B22, 0x6B72: 0x5C81, 0x6B77: 0x5386, 0x6B78: 0x5F52, 0x6B7F: 0x6B81, 0x6B98: 0x6B8B, 0x6B9E: 0x6B92, 0x6BA4: 0x6B87, 0x6BAB: 0x6B9A, 0x6BAE: 0x6B93, 0x6BAF: 0x6BA1, 0x6BB2: 0x6B7C, 0x6BBA: 0x6740, 0x6BBC: 0x58F3, 0x6BC0: 0x6BC1, 0x6BC6: 0x6BB4, 0x6BC9: 0x533B, 0x6BE7: 0x7ED2, 0x6BEC: 0x7403, 0x6BFF: 0x6BF5, 0x6C02: 0x7266, 0x6C08: 0x6BE1, 0x6C0A: 0x6BE1, 0x6C0C: 0x6C07, 0x6C23: 0x6C14, 0x6C2B: 0x6C22, 0x6C2C: 0x6C29, 0x6C33: 0x6C32, 0x6C39: 0x51FC, 0x6C3E: 0x6CDB, 0x6C4E: 0x6CDB, 0x6C59: 0x6C61, 0x6C5A: 0x6C61, 0x6C7A: 0x51B3, 0x6C8D: 0x51B1, 0x6C92: 0x6CA1, 0x6C96: 0x51B2, 0x6CC1: 0x51B5, 0x6D29: 0x6CC4, 0x6D36: 0x6C79, 0x6D79: 0x6D43, 0x6D87: 0x6CFE, 0x6D96: 0x8385, 0x6DBC: 0x51C9, 0x6DD2: 0x51C4, 0x6DDA: 0x6CEA, 0x6DE5: 0x6E0C, 0x6DE8: 0x51C0, 0x6DE9: 0x51CC, 0x6DEA: 0x6CA6, 0x6DF5: 0x6E0A, 0x6DF6: 0x6D9E, 0x6DFA: 0x6D45, 0x6E19: 0x6DA3, 0x6E1B: 0x51CF, 0x6E22: 0x6CA8, 0x6E26: 0x6DA1, 0x6E2C: 0x6D4B, 0x6E3E: 0x6D51, 0x6E4A: 0x51D1, 0x6E5E: 0x6D48, 0x6E63: 0x610D, 0x6E67: 0x6D8C, 0x6E6F: 0x6C64, 0x6E88: 0x6CA9, 0x6E96: 0x51C6, 0x6E9D: 0x6C9F, 0x6EAB: 0x6E29, 0x6EAE: 0x6D49, 0x6EB3: 0x6DA2, 0x6EBC: 0x6E7F, 0x6EC4: 0x6CA7, 0x6EC5: 0x706D, 0x6ECC: 0x6DA4, 0x6ECE: 0x8365, 0x6ED9: 0x6C47, 0x6EEC: 0x6CAA, 0x6EEF: 0x6EDE, 0x6EF2: 0x6E17, 0x6EF7: 0x5364, 0x6EF8: 0x6D52, 0x6EFB: 0x6D50, 0x6EFE: 0x6EDA, 0x6EFF: 0x6EE1, 0x6F01: 0x6E14, 0x6F0A: 0x6E87, 0x6F1A: 0x6CA4, 0x6F22: 0x6C49, 0x6F23: 0x6D9F, 0x6F2C: 0x6E0D, 0x6F32: 0x6DA8, 0x6F35: 0x6E86, 0x6F38: 0x6E10, 0x6F3F: 0x6D46, 0x6F41: 0x988D, 0x6F51: 0x6CFC, 0x6F54: 0x6D01, 0x6F59: 0x6CA9, 0x6F5B: 0x6F5C, 0x6F5F: 0x8204, 0x6F64: 0x6DA6, 0x6F6F: 0x6D54, 0x6F70: 0x6E83, 0x6F77: 0x6ED7, 0x6F7F: 0x6DA0, 0x6F80: 0x6DA9, 0x6F81: 0x6DA9, 0x6F82: 0x6F84, 0x6F86: 0x6D47, 0x6F87: 0x6D9D, 0x6F97: 0x6DA7, 0x6FA0: 0x6E11, 0x6FA4: 0x6CFD, 0x6FA6: 0x6EEA, 0x6FA9: 0x6CF6, 0x6FAE: 0x6D4D, 0x6FB1: 0x6DC0, 0x6FC1: 0x6D4A, 0x6FC3: 0x6D53, 0x6FD4: 0x6CB5, 0x6FD5: 0x6E7F, 0x6FD8: 0x6CDE, 0x6FDB: 0x8499, 0x6FDC: 0x6D55, 0x6FDF: 0x6D4E, 0x6FE4: 0x6D9B, 0x6FEB: 0x6EE5, 0x6FEC: 0x6D5A, 0x6FF0: 0x6F4D, 0x6FF1: 0x6EE8, 0x6FF6: 0x9614, 0x6FFA: 0x6E85, 0x6FFC: 0x6CFA, 0x6FFE: 0x6EE4, 0x7005: 0x6EE2, 0x7006: 0x6E0E, 0x7009: 0x6CFB, 0x700B: 0x6E16, 0x700F: 0x6D4F, 0x7015: 0x6FD2, 0x7018: 0x6CF8, 0x701D: 0x6CA5, 0x701F: 0x6F47, 0x7020: 0x6F46, 0x7026: 0x6F74, 0x7027: 0x6CF7, 0x7028: 0x6FD1, 0x7030: 0x5F25, 0x7032: 0x6F4B, 0x703E: 0x6F9C, 0x7043: 0x6CA3, 0x7044: 0x6EE0, 0x7051: 0x6D12, 0x7055: 0x6F13, 0x7058: 0x6EE9, 0x705D: 0x704F, 0x7063: 0x6E7E, 0x7064: 0x6EE6, 0x7067: 0x6EDF, 0x7069: 0x6EDF, 0x707D: 0x707E, 0x70A4: 0x7167, 0x70BA: 0x4E3A, 0x70CF: 0x4E4C, 0x70F4: 0x70C3, 0x7121: 0x65E0, 0x7146: 0x7145, 0x7147: 0x8F89, 0x7149: 0x70BC, 0x7152: 0x709C, 0x7156: 0x6696, 0x7159: 0x70DF, 0x7162: 0x8315, 0x7165: 0x7115, 0x7169: 0x70E6, 0x716C: 0x7080, 0x7192: 0x8367, 0x7197: 0x709D, 0x71B1: 0x70ED, 0x71B2: 0x988E, 0x71BE: 0x70BD, 0x71C1: 0x70E8, 0x71C4: 0x7130, 0x71C8: 0x706F, 0x71C9: 0x7096, 0x71D0: 0x78F7, 0x71D2: 0x70E7, 0x71D9: 0x70EB, 0x71DC: 0x7116, 0x71DF: 0x8425, 0x71E6: 0x707F, 0x71EC: 0x6BC1, 0x71ED: 0x70DB, 0x71F4: 0x70E9, 0x71FB: 0x718F, 0x71FC: 0x70EC, 0x71FE: 0x7118, 0x71FF: 0x8000, 0x720D: 0x70C1, 0x7210: 0x7089, 0x7217: 0x70E8, 0x721B: 0x70C2, 0x722D: 0x4E89, 0x7232: 0x4E3A, 0x723A: 0x7237, 0x723E: 0x5C14, 0x723F: 0x4E2C, 0x7240: 0x5E8A, 0x7246: 0x5899, 0x724B: 0x7B3A, 0x7250: 0x95F8, 0x7258: 0x724D, 0x7274: 0x62B5, 0x727D: 0x7275, 0x7296: 0x8366, 0x729B: 0x7266, 0x72A2: 0x728A, 0x72A7: 0x727A, 0x72C0: 0x72B6, 0x72F9: 0x72ED, 0x72FD: 0x72C8, 0x7319: 0x72F0, 0x7336: 0x72B9, 0x733B: 0x72F2, 0x7341: 0x72B8, 0x7343: 0x5446, 0x7344: 0x72F1, 0x7345: 0x72EE, 0x734E: 0x5956, 0x7368: 0x72EC, 0x736A: 0x72EF, 0x736B: 0x7303, 0x736E: 0x72DD, 0x7370: 0x72DE, 0x7372: 0x83B7, 0x7375: 0x730E, 0x7377: 0x72B7, 0x7378: 0x517D, 0x737A: 0x736D, 0x737B: 0x732E, 0x737C: 0x7315, 0x7380: 0x7321, 0x7386: 0x5179, 0x73A8: 0x73CF, 0x73EE: 0x4F69, 0x73FE: 0x73B0, 0x740D: 0x7483, 0x742F: 0x7BA1, 0x743A: 0x73D0, 0x743F: 0x73F2, 0x7449: 0x73C9, 0x744B: 0x73AE, 0x7452: 0x739A, 0x7463: 0x7410, 0x7464: 0x7476, 0x7469: 0x83B9, 0x746A: 0x739B, 0x746F: 0x7405, 0x7472: 0x73B1, 0x7489: 0x740F, 0x74A1: 0x740E, 0x74A3: 0x7391, 0x74A6: 0x7477, 0x74AB: 0x73F0, 0x74B0: 0x73AF, 0x74B5: 0x7399, 0x74BD: 0x73BA, 0x74BF: 0x7487, 0x74CA: 0x743C, 0x74CF: 0x73D1, 0x74D4: 0x748E, 0x74DA: 0x74D2, 0x750C: 0x74EF, 0x750E: 0x7816, 0x7515: 0x74EE, 0x7516: 0x7F42, 0x7522: 0x4EA7, 0x7523: 0x4EA7, 0x7526: 0x82CF, 0x752F: 0x5B81, 0x755D: 0x4EA9, 0x7562: 0x6BD5, 0x756B: 0x753B, 0x7570: 0x5F02, 0x7571: 0x7559, 0x7576: 0x5F53, 0x7587: 0x7574, 0x758A: 0x8FED, 0x75D9: 0x75C9, 0x75E0: 0x9178, 0x75FA: 0x75F9, 0x7602: 0x75D6, 0x7609: 0x6108, 0x760B: 0x75AF, 0x760D: 0x75A1, 0x7613: 0x75EA, 0x761E: 0x7617, 0x7621: 0x75AE, 0x7627: 0x759F, 0x762E: 0x7606, 0x763A: 0x7618, 0x763B: 0x7618, 0x7642: 0x7597, 0x7646: 0x75E8, 0x7647: 0x75EB, 0x7649: 0x7605, 0x7652: 0x6108, 0x7658: 0x75A0, 0x765F: 0x762A, 0x7661: 0x75F4, 0x7662: 0x75D2, 0x7664: 0x7596, 0x7665: 0x75C7, 0x7667: 0x75AC, 0x7669: 0x765E, 0x766C: 0x7663, 0x766D: 0x763F, 0x766E: 0x763E, 0x7670: 0x75C8, 0x7671: 0x762B, 0x7672: 0x766B, 0x767C: 0x53D1, 0x769A: 0x7691, 0x76B0: 0x75B1, 0x76B8: 0x76B2, 0x76BA: 0x76B1, 0x76C3: 0x676F, 0x76DC: 0x76D7, 0x76DE: 0x76CF, 0x76E1: 0x5C3D, 0x76E3: 0x76D1, 0x76E4: 0x76D8, 0x76E7: 0x5362, 0x76EA: 0x8361, 0x770E: 0x89C6, 0x7721: 0x89C6, 0x7725: 0x7726, 0x773E: 0x4F17, 0x774F: 0x56F0, 0x775C: 0x7741, 0x775E: 0x7750, 0x7798: 0x770D, 0x779E: 0x7792, 0x77BC: 0x7751, 0x77C7: 0x8499, 0x77D3: 0x772C, 0x77DA: 0x77A9, 0x77EF: 0x77EB, 0x77FD: 0x7845, 0x7832: 0x70AE, 0x7843: 0x6731, 0x785C: 0x7841, 0x7864: 0x7856, 0x7868: 0x7817, 0x786F: 0x781A, 0x7876: 0x789C, 0x78A9: 0x7855, 0x78AD: 0x7800, 0x78B8: 0x781C, 0x78BA: 0x786E, 0x78BC: 0x7801, 0x78D0: 0x76D8, 0x78D1: 0x7859, 0x78DA: 0x7816, 0x78E3: 0x789C, 0x78E7: 0x789B, 0x78EF: 0x77F6, 0x78FD: 0x7857, 0x7904: 0x785A, 0x790E: 0x7840, 0x7919: 0x788D, 0x7926: 0x77FF, 0x792A: 0x783A, 0x792B: 0x783E, 0x792C: 0x77FE, 0x792E: 0x70AE, 0x7931: 0x783B, 0x7950: 0x4F51, 0x7955: 0x79D8, 0x797F: 0x7984, 0x798D: 0x7978, 0x798E: 0x796F, 0x7995: 0x794E, 0x79A6: 0x5FA1, 0x79AA: 0x7985, 0x79AE: 0x793C, 0x79B0: 0x7962, 0x79B1: 0x7977, 0x79BF: 0x79C3, 0x79C8: 0x7C7C, 0x7A05: 0x7A0E, 0x7A08: 0x79C6, 0x7A1C: 0x68F1, 0x7A1F: 0x7980, 0x7A2D: 0x79F8, 0x7A2E: 0x79CD, 0x7A31: 0x79F0, 0x7A40: 0x8C37, 0x7A4C: 0x7A23, 0x7A4D: 0x79EF, 0x7A4E: 0x9896, 0x7A60: 0x79FE, 0x7A61: 0x7A51, 0x7A62: 0x79FD, 0x7A68: 0x9893, 0x7A69: 0x7A33, 0x7A6B: 0x83B7, 0x7A6D: 0x7A06, 0x7AA9: 0x7A9D, 0x7AAA: 0x6D3C, 0x7AAE: 0x7A77, 0x7AAF: 0x7A91, 0x7AB0: 0x7A91, 0x7AB6: 0x7AAD, 0x7ABA: 0x7AA5, 0x7AC4: 0x7A9C, 0x7AC5: 0x7A8D, 0x7AC7: 0x7AA6, 0x7AC8: 0x7076, 0x7ACA: 0x7A83, 0x7ADD: 0x5E76, 0x7AEA: 0x7AD6, 0x7AF6: 0x7ADE, 0x7B46: 0x7B14, 0x7B4D: 0x7B0B, 0x7B67: 0x7B15, 0x7B87: 0x4E2A, 0x7B8B: 0x7B3A, 0x7B8F: 0x7B5D, 0x7BA0: 0x68F0, 0x7BC0: 0x8282, 0x7BC4: 0x8303, 0x7BC9: 0x7B51, 0x7BCB: 0x7BA7, 0x7BDB: 0x7BAC, 0x7BE0: 0x7B71, 0x7BE4: 0x7B03, 0x7BE9: 0x7B5B, 0x7BF3: 0x7B5A, 0x7C00: 0x7BA6, 0x7C0D: 0x7BD3, 0x7C11: 0x84D1, 0x7C1E: 0x7BAA, 0x7C21: 0x7B80, 0x7C23: 0x7BD1, 0x7C2B: 0x7BAB, 0x7C37: 0x6A90, 0x7C39: 0x7B5C, 0x7C3D: 0x7B7E, 0x7C3E: 0x5E18, 0x7C43: 0x7BEE, 0x7C4C: 0x7B79, 0x7C50: 0x85E4, 0x7C59: 0x7B93, 0x7C5C: 0x7BA8, 0x7C5F: 0x7C41, 0x7C60: 0x7B3C, 0x7C62: 0x5941, 0x7C64: 0x7B7E, 0x7C65: 0x94A5, 0x7C69: 0x7B3E, 0x7C6A: 0x7C16, 0x7C6C: 0x7BF1, 0x7C6E: 0x7BA9, 0x7C72: 0x5401, 0x7CA7: 0x5986, 0x7CAC: 0x66F2, 0x7CB5: 0x7CA4, 0x7CDD: 0x7CC1, 0x7CDE: 0x7CAA, 0x7CE2: 0x6A21, 0x7CE7: 0x7CAE, 0x7CF0: 0x56E2, 0x7CF2: 0x7C9D, 0x7CF4: 0x7C74, 0x7CF6: 0x7C9C, 0x7CF8: 0x7E9F, 0x7CFE: 0x7EA0, 0x7D00: 0x7EAA, 0x7D02: 0x7EA3, 0x7D04: 0x7EA6, 0x7D05: 0x7EA2, 0x7D06: 0x7EA1, 0x7D07: 0x7EA5, 0x7D08: 0x7EA8, 0x7D09: 0x7EAB, 0x7D0B: 0x7EB9, 0x7D0D: 0x7EB3, 0x7D10: 0x7EBD, 0x7D13: 0x7EBE, 0x7D14: 0x7EAF, 0x7D15: 0x7EB0, 0x7D16: 0x7EBC, 0x7D17: 0x7EB1, 0x7D18: 0x7EAE, 0x7D19: 0x7EB8, 0x7D1A: 0x7EA7, 0x7D1B: 0x7EB7, 0x7D1C: 0x7EAD, 0x7D1D: 0x7EB4, 0x7D21: 0x7EBA, 0x7D25: 0x624E, 0x7D2E: 0x624E, 0x7D30: 0x7EC6, 0x7D31: 0x7EC2, 0x7D32: 0x7EC1, 0x7D33: 0x7EC5, 0x7D35: 0x7EBB, 0x7D39: 0x7ECD, 0x7D3A: 0x7EC0, 0x7D3C: 0x7ECB, 0x7D3F: 0x7ED0, 0x7D40: 0x7ECC, 0x7D42: 0x7EC8, 0x7D43: 0x5F26, 0x7D44: 0x7EC4, 0x7D46: 0x7ECA, 0x7D4D: 0x7EB4, 0x7D4E: 0x7ED7, 0x7D4F: 0x7EC1, 0x7D50: 0x7ED3, 0x7D55: 0x7EDD, 0x7D5B: 0x7EE6, 0x7D5D: 0x7ED4, 0x7D5E: 0x7EDE, 0x7D61: 0x7EDC, 0x7D62: 0x7EDA, 0x7D66: 0x7ED9, 0x7D68: 0x7ED2, 0x7D70: 0x7ED6, 0x7D71: 0x7EDF, 0x7D72: 0x4E1D, 0x7D73: 0x7EDB, 0x7D79: 0x7EE2, 0x7D81: 0x7ED1, 0x7D83: 0x7EE1, 0x7D86: 0x7EE0, 0x7D88: 0x7EE8, 0x7D89: 0x7EE3, 0x7D8C: 0x7EE4, 0x7D8F: 0x7EE5, 0x7D91: 0x6346, 0x7D93: 0x7ECF, 0x7D9C: 0x7EFC, 0x7D9E: 0x7F0D, 0x7DA0: 0x7EFF, 0x7DA2: 0x7EF8, 0x7DA3: 0x7EFB, 0x7DAB: 0x7EBF, 0x7DAC: 0x7EF6, 0x7DAD: 0x7EF4, 0x7DAF: 0x7EF9, 0x7DB0: 0x7EFE, 0x7DB1: 0x7EB2, 0x7DB2: 0x7F51, 0x7DB3: 0x7EF7, 0x7DB4: 0x7F00, 0x7DB5: 0x5F69, 0x7DB8: 0x7EB6, 0x7DB9: 0x7EFA, 0x7DBA: 0x7EEE, 0x7DBB: 0x7EFD, 0x7DBD: 0x7EF0, 0x7DBE: 0x7EEB, 0x7DBF: 0x7EF5, 0x7DC4: 0x7EF2, 0x7DC7: 0x7F01, 0x7DCA: 0x7D27, 0x7DCB: 0x7EEF, 0x7DCD: 0x7F17, 0x7DD2: 0x7EEA, 0x7DD3: 0x7EEC, 0x7DD4: 0x7EF1, 0x7DD7: 0x7F03, 0x7DD8: 0x7F04, 0x7DD9: 0x7F02, 0x7DDA: 0x7EBF, 0x7DDC: 0x7EF5, 0x7DDD: 0x7F09, 0x7DDE: 0x7F0E, 0x7DE0: 0x7F14, 0x7DE1: 0x7F17, 0x7DE3: 0x7F18, 0x7DE4: 0x7EC1, 0x7DE6: 0x7F0C, 0x7DE8: 0x7F16, 0x7DE9: 0x7F13, 0x7DEC: 0x7F05, 0x7DEF: 0x7EAC, 0x7DF1: 0x7F11, 0x7DF2: 0x7F08, 0x7DF4: 0x7EC3, 0x7DF6: 0x7F0F, 0x7DF9: 0x7F07, 0x7DFB: 0x81F4, 0x7DFC: 0x7F0A, 0x7E02: 0x603B, 0x7E08: 0x8426, 0x7E09: 0x7F19, 0x7E0A: 0x7F22, 0x7E0B: 0x7F12, 0x7E10: 0x7EC9, 0x7E11: 0x7F23, 0x7E15: 0x7F0A, 0x7E17: 0x7F1E, 0x7E1A: 0x7EE6, 0x7E1B: 0x7F1A, 0x7E1D: 0x7F1C, 0x7E1E: 0x7F1F, 0x7E1F: 0x7F1B, 0x7E23: 0x53BF, 0x7E27: 0x7EE6, 0x7E2B: 0x7F1D, 0x7E2D: 0x7F21, 0x7E2E: 0x7F29, 0x7E2F: 0x6F14, 0x7E31: 0x7EB5, 0x7E32: 0x7F27, 0x7E34: 0x7EA4, 0x7E35: 0x7F26, 0x7E36: 0x7D77, 0x7E37: 0x7F15, 0x7E39: 0x7F25, 0x7E3D: 0x603B, 0x7E3E: 0x7EE9, 0x7E43: 0x7EF7, 0x7E45: 0x7F2B, 0x7E46: 0x7F2A, 0x7E48: 0x8941, 0x7E52: 0x7F2F, 0x7E54: 0x7EC7, 0x7E55: 0x7F2E, 0x7E56: 0x4F1E, 0x7E59: 0x7FFB, 0x7E5A: 0x7F2D, 0x7E5E: 0x7ED5, 0x7E61: 0x7EE3, 0x7E62: 0x7F0B, 0x7E66: 0x8941, 0x7E69: 0x7EF3, 0x7E6A: 0x7ED8, 0x7E6B: 0x7CFB, 0x7E6D: 0x8327, 0x7E6E: 0x7F30, 0x7E6F: 0x7F33, 0x7E70: 0x7F32, 0x7E73: 0x7F34, 0x7E79: 0x7ECE, 0x7E7C: 0x7EE7, 0x7E7D: 0x7F24, 0x7E7E: 0x7F31, 0x7E87: 0x98A3, 0x7E88: 0x7F2C, 0x7E8A: 0x7EA9, 0x7E8C: 0x7EED, 0x7E8D: 0x7D2F, 0x7E8F: 0x7F20, 0x7E93: 0x7F28, 0x7E96: 0x7EA4, 0x7E98: 0x7F35, 0x7E9C: 0x7F06, 0x7F3D: 0x94B5, 0x7F48: 0x575B, 0x7F4B: 0x74EE, 0x7F4C: 0x7F42, 0x7F4E: 0x575B, 0x7F4F: 0x5786, 0x7F70: 0x7F5A, 0x7F75: 0x9A82, 0x7F77: 0x7F62, 0x7F78: 0x7F5A, 0x7F85: 0x7F57, 0x7F86: 0x7F74, 0x7F88: 0x7F81, 0x7F8B: 0x8288, 0x7FA2: 0x7ED2, 0x7FA5: 0x7F9F, 0x7FA8: 0x7FA1, 0x7FA9: 0x4E49, 0x7FB6: 0x81BB, 0x7FD2: 0x4E60, 0x7FEC: 0x7FDA, 0x7FF9: 0x7FD8, 0x7FFA: 0x7FF1, 0x7FFD: 0x7FD9, 0x8011: 0x7AEF, 0x8021: 0x9504, 0x802C: 0x8027, 0x802E: 0x8022, 0x8056: 0x5723, 0x805E: 0x95FB, 0x806F: 0x8054, 0x8070: 0x806A, 0x8072: 0x58F0, 0x8073: 0x8038, 0x8075: 0x8069, 0x8076: 0x8042, 0x8077: 0x804C, 0x8079: 0x804D, 0x807C: 0x542C, 0x807D: 0x542C, 0x807E: 0x804B, 0x8085: 0x8083, 0x8105: 0x80C1, 0x8107: 0x80C1, 0x8108: 0x8109, 0x811B: 0x80EB, 0x8123: 0x5507, 0x8129: 0x4FEE, 0x812B: 0x8131, 0x8139: 0x80C0, 0x814E: 0x80BE, 0x8156: 0x80E8, 0x8161: 0x8136, 0x8166: 0x8111, 0x816B: 0x80BF, 0x8173: 0x811A, 0x8178: 0x80A0, 0x8181: 0x80B7, 0x8183: 0x817D, 0x8195: 0x8158, 0x819A: 0x80A4, 0x81A0: 0x80F6, 0x81A9: 0x817B, 0x81BD: 0x80C6, 0x81BE: 0x810D, 0x81BF: 0x8113, 0x81C9: 0x8138, 0x81CD: 0x8110, 0x81CF: 0x8191, 0x81D2: 0x766F, 0x81D8: 0x814A, 0x81DA: 0x80EA, 0x81DF: 0x810F, 0x81E0: 0x8114, 0x81E2: 0x81DC, 0x81E5: 0x5367, 0x81E8: 0x4E34, 0x81EF: 0x768B, 0x81FA: 0x53F0, 0x8207: 0x4E0E, 0x8208: 0x5174, 0x8209: 0x4E3E, 0x820A: 0x65E7, 0x8216: 0x94FA, 0x8218: 0x9986, 0x8259: 0x8231, 0x8262: 0x6A2F, 0x8263: 0x6A79, 0x8264: 0x8223, 0x8266: 0x8230, 0x826A: 0x6A79, 0x826B: 0x823B, 0x8271: 0x8270, 0x8277: 0x8273, 0x8278: 0x8279, 0x82BB: 0x520D, 0x82E7: 0x82CE, 0x8332: 0x5179, 0x834A: 0x8346, 0x838A: 0x5E84, 0x8396: 0x830E, 0x83A2: 0x835A, 0x83A7: 0x82CB, 0x83EF: 0x534E, 0x83F4: 0x5EB5, 0x83F8: 0x70DF, 0x8407: 0x82CC, 0x840A: 0x83B1, 0x842C: 0x4E07, 0x8435: 0x83B4, 0x8449: 0x53F6, 0x8452: 0x836D, 0x8457: 0x7740, 0x8460: 0x53C2, 0x8464: 0x836E, 0x8466: 0x82C7, 0x846F: 0x836F, 0x8477: 0x8364, 0x8490: 0x641C, 0x8493: 0x83BC, 0x8494: 0x83B3, 0x849E: 0x8385, 0x84BC: 0x82CD, 0x84C0: 0x836A, 0x84C6: 0x5E2D, 0x84CB: 0x76D6, 0x84E1: 0x53C2, 0x84E7: 0x839C, 0x84EE: 0x83B2, 0x84EF: 0x82C1, 0x84F4: 0x83BC, 0x84FD: 0x835C, 0x8506: 0x83F1, 0x8514: 0x535C, 0x851E: 0x848C, 0x8523: 0x848B, 0x8525: 0x8471, 0x8526: 0x8311, 0x852D: 0x836B, 0x8534: 0x9EBB, 0x8541: 0x8368, 0x8546: 0x8487, 0x854E: 0x835E, 0x8552: 0x836C, 0x8553: 0x82B8, 0x8555: 0x83B8, 0x8558: 0x835B, 0x8562: 0x8489, 0x8569: 0x8361, 0x856A: 0x829C, 0x856D: 0x8427, 0x8577: 0x84E3, 0x8588: 0x835F, 0x858A: 0x84DF, 0x858C: 0x8297, 0x8591: 0x59DC, 0x8594: 0x8537, 0x8598: 0x8359, 0x859F: 0x83B6, 0x85A6: 0x8350, 0x85A9: 0x8428, 0x85B0: 0x718F, 0x85BA: 0x8360, 0x85CD: 0x84DD, 0x85CE: 0x8369, 0x85DD: 0x827A, 0x85E5: 0x836F, 0x85EA: 0x85AE, 0x85F6: 0x82C8, 0x85F9: 0x853C, 0x85FA: 0x853A, 0x8600: 0x841A, 0x8604: 0x8572, 0x8606: 0x82A6, 0x8607: 0x82CF, 0x860A: 0x8574, 0x860B: 0x82F9, 0x861A: 0x85D3, 0x861E: 0x8539, 0x8622: 0x830F, 0x862D: 0x5170, 0x863A: 0x84E0, 0x863F: 0x841D, 0x8655: 0x5904, 0x865B: 0x865A, 0x865C: 0x864F, 0x865F: 0x53F7, 0x8667: 0x4E8F, 0x866F: 0x866C, 0x86FA: 0x86F1, 0x86FB: 0x8715, 0x8706: 0x86AC, 0x8755: 0x8680, 0x875F: 0x732C, 0x8766: 0x867E, 0x8768: 0x8671, 0x8778: 0x8717, 0x8784: 0x86F3, 0x8798: 0x8681, 0x879E: 0x8682, 0x87A2: 0x8424, 0x87BB: 0x877C, 0x87BF: 0x8780, 0x87C4: 0x86F0, 0x87C8: 0x8748, 0x87CE: 0x87A8, 0x87E3: 0x866E, 0x87EC: 0x8749, 0x87EF: 0x86F2, 0x87F2: 0x866B, 0x87F6: 0x86CF, 0x87FB: 0x8681, 0x8805: 0x8747, 0x8806: 0x867F, 0x880D: 0x874E, 0x8810: 0x86F4, 0x8811: 0x877E, 0x8814: 0x869D, 0x881F: 0x8721, 0x8823: 0x86CE, 0x8828: 0x87CF, 0x8831: 0x86CA, 0x8836: 0x8695, 0x883B: 0x86EE, 0x8846: 0x4F17, 0x884A: 0x8511, 0x8853: 0x672F, 0x885A: 0x80E1, 0x885B: 0x536B, 0x885D: 0x51B2, 0x885E: 0x536B, 0x8879: 0x53EA, 0x889E: 0x886E, 0x88B7: 0x593E, 0x88CA: 0x8885, 0x88CC: 0x5939, 0x88CF: 0x91CC, 0x88DC: 0x8865, 0x88DD: 0x88C5, 0x88E1: 0x91CC, 0x88FD: 0x5236, 0x8907: 0x590D, 0x890C: 0x88C8, 0x8918: 0x8886, 0x8932: 0x88E4, 0x8933: 0x88E2, 0x8938: 0x891B, 0x893B: 0x4EB5, 0x8946: 0x5E5E, 0x8947: 0x88E5, 0x894D: 0x6742, 0x894F: 0x88AF, 0x8956: 0x8884, 0x895D: 0x88E3, 0x8960: 0x88C6, 0x8964: 0x8934, 0x896A: 0x889C, 0x896F: 0x886C, 0x8972: 0x88AD, 0x8974: 0x8955, 0x8988: 0x6838, 0x898B: 0x89C1, 0x898E: 0x89C3, 0x898F: 0x89C4, 0x8993: 0x89C5, 0x8994: 0x89C5, 0x8996: 0x89C6, 0x8998: 0x89C7, 0x899C: 0x773A, 0x89A1: 0x89CB, 0x89A5: 0x89CD, 0x89A6: 0x89CE, 0x89AA: 0x4EB2, 0x89AC: 0x89CA, 0x89AF: 0x89CF, 0x89B0: 0x89D1, 0x89B2: 0x89D0, 0x89B7: 0x89D1, 0x89BA: 0x89C9, 0x89BB: 0x89D1, 0x89BD: 0x89C8, 0x89BF: 0x89CC, 0x89C0: 0x89C2, 0x89DD: 0x62B5, 0x89F4: 0x89DE, 0x89F6: 0x89EF, 0x89F8: 0x89E6, 0x8A01: 0x8BA0, 0x8A02: 0x8BA2, 0x8A03: 0x8BA3, 0x8A08: 0x8BA1, 0x8A0A: 0x8BAF, 0x8A0C: 0x8BA7, 0x8A0E: 0x8BA8, 0x8A0F: 0x5401, 0x8A10: 0x8BA6, 0x8A12: 0x8BB1, 0x8A13: 0x8BAD, 0x8A15: 0x8BAA, 0x8A16: 0x8BAB, 0x8A17: 0x6258, 0x8A18: 0x8BB0, 0x8A1B: 0x8BB9, 0x8A1D: 0x8BB6, 0x8A1F: 0x8BBC, 0x8A22: 0x6B23, 0x8A23: 0x8BC0, 0x8A25: 0x8BB7, 0x8A26: 0x8C0C, 0x8A29: 0x8BBB, 0x8A2A: 0x8BBF, 0x8A2D: 0x8BBE, 0x8A31: 0x8BB8, 0x8A34: 0x8BC9, 0x8A36: 0x8BC3, 0x8A3A: 0x8BCA, 0x8A3B: 0x6CE8, 0x8A3C: 0x8BC1, 0x8A41: 0x8BC2, 0x8A46: 0x8BCB, 0x8A4E: 0x8BB5, 0x8A50: 0x8BC8, 0x8A52: 0x8BD2, 0x8A54: 0x8BCF, 0x8A55: 0x8BC4, 0x8A56: 0x8BD0, 0x8A57: 0x8BC7, 0x8A58: 0x8BCE, 0x8A5B: 0x8BC5, 0x8A5E: 0x8BCD, 0x8A60: 0x548F, 0x8A61: 0x8BE9, 0x8A62: 0x8BE2, 0x8A63: 0x8BE3, 0x8A66: 0x8BD5, 0x8A69: 0x8BD7, 0x8A6B: 0x8BE7, 0x8A6C: 0x8BDF, 0x8A6D: 0x8BE1, 0x8A6E: 0x8BE0, 0x8A70: 0x8BD8, 0x8A71: 0x8BDD, 0x8A72: 0x8BE5, 0x8A73: 0x8BE6, 0x8A75: 0x8BDC, 0x8A7C: 0x8BD9, 0x8A7E: 0x8BBB, 0x8A7F: 0x8BD6, 0x8A84: 0x8BD4, 0x8A85: 0x8BDB, 0x8A86: 0x8BD3, 0x8A87: 0x5938, 0x8A8C: 0x5FD7, 0x8A8D: 0x8BA4, 0x8A91: 0x8BF3, 0x8A92: 0x8BF6, 0x8A95: 0x8BDE, 0x8A98: 0x8BF1, 0x8A9A: 0x8BEE, 0x8A9E: 0x8BED, 0x8AA0: 0x8BDA, 0x8AA1: 0x8BEB, 0x8AA3: 0x8BEC, 0x8AA4: 0x8BEF, 0x8AA5: 0x8BF0, 0x8AA6: 0x8BF5, 0x8AA8: 0x8BF2, 0x8AAA: 0x8BF4, 0x8AAC: 0x8BF4, 0x8AB0: 0x8C01, 0x8AB2: 0x8BFE, 0x8AB6: 0x8C07, 0x8AB9: 0x8BFD, 0x8ABC: 0x8C0A, 0x8ABF: 0x8C03, 0x8AC2: 0x8C04, 0x8AC4: 0x8C06, 0x8AC7: 0x8C08, 0x8AC9: 0x8BFF, 0x8ACB: 0x8BF7, 0x8ACD: 0x8BE4, 0x8ACF: 0x8BF9, 0x8AD1: 0x8BFC, 0x8AD2: 0x8C05, 0x8AD6: 0x8BBA, 0x8AD7: 0x8C02, 0x8ADB: 0x8C00, 0x8ADC: 0x8C0D, 0x8ADD: 0x8C1E, 0x8ADE: 0x8C1D, 0x8AE1: 0x8C25, 0x8AE2: 0x8BE8, 0x8AE4: 0x8C14, 0x8AE6: 0x8C1B, 0x8AE7: 0x8C10, 0x8AEB: 0x8C0F, 0x8AED: 0x8C15, 0x8AEE: 0x8C18, 0x8AF1: 0x8BB3, 0x8AF3: 0x8C19, 0x8AF6: 0x8C0C, 0x8AF7: 0x8BBD, 0x8AF8: 0x8BF8, 0x8AFA: 0x8C1A, 0x8AFC: 0x8C16, 0x8AFE: 0x8BFA, 0x8B00: 0x8C0B, 0x8B01: 0x8C12, 0x8B02: 0x8C13, 0x8B04: 0x8A8A, 0x8B05: 0x8BCC, 0x8B0A: 0x8C0E, 0x8B0E: 0x8C1C, 0x8B10: 0x8C27, 0x8B14: 0x8C11, 0x8B16: 0x8C21, 0x8B17: 0x8C24, 0x8B19: 0x8C26, 0x8B1A: 0x8C25, 0x8B1B: 0x8BB2, 0x8B1D: 0x8C22, 0x8B20: 0x8C23, 0x8B28: 0x8C1F, 0x8B2B: 0x8C2A, 0x8B2C: 0x8C2C, 0x8B33: 0x8BB4, 0x8B39: 0x8C28, 0x8B3E: 0x8C29, 0x8B41: 0x54D7, 0x8B46: 0x563B, 0x8B49: 0x8BC1, 0x8B4C: 0x8BB9, 0x8B4E: 0x8C32, 0x8B4F: 0x8BA5, 0x8B56: 0x8C2E, 0x8B58: 0x8BC6, 0x8B59: 0x8C2F, 0x8B5A: 0x8C2D, 0x8B5C: 0x8C31, 0x8B5F: 0x566A, 0x8B6B: 0x8C35, 0x8B6D: 0x6BC1, 0x8B6F: 0x8BD1, 0x8B70: 0x8BAE, 0x8B74: 0x8C34, 0x8B77: 0x62A4, 0x8B78: 0x8BEA, 0x8B7D: 0x8A89, 0x8B7E: 0x8C2B, 0x8B80: 0x8BFB, 0x8B81: 0x8C2A, 0x8B85: 0x5BA1, 0x8B8A: 0x53D8, 0x8B8B: 0x8A5F, 0x8B8C: 0x71D5, 0x8B8E: 0x96E0, 0x8B90: 0x96E0, 0x8B92: 0x8C17, 0x8B93: 0x8BA9, 0x8B95: 0x8C30, 0x8B96: 0x8C36, 0x8B9A: 0x8D5E, 0x8B9B: 0x5453, 0x8B9C: 0x8C20, 0x8B9E: 0x8C33, 0x8C3F: 0x6EAA, 0x8C48: 0x5C82, 0x8C4E: 0x7AD6, 0x8C50: 0x4E30, 0x8C54: 0x8273, 0x8C6C: 0x732A, 0x8C76: 0x8C6E, 0x8C8D: 0x72F8, 0x8C93: 0x732B, 0x8C9D: 0x8D1D, 0x8C9E: 0x8D1E, 0x8C9F: 0x8D20, 0x8CA0: 0x8D1F, 0x8CA1: 0x8D22, 0x8CA2: 0x8D21, 0x8CA7: 0x8D2B, 0x8CA8: 0x8D27, 0x8CA9: 0x8D29, 0x8CAA: 0x8D2A, 0x8CAB: 0x8D2F, 0x8CAC: 0x8D23, 0x8CAF: 0x8D2E, 0x8CB0: 0x8D33, 0x8CB2: 0x8D40, 0x8CB3: 0x8D30, 0x8CB4: 0x8D35, 0x8CB6: 0x8D2C, 0x8CB7: 0x4E70, 0x8CB8: 0x8D37, 0x8CBA: 0x8D36, 0x8CBB: 0x8D39, 0x8CBC: 0x8D34, 0x8CBD: 0x8D3B, 0x8CBF: 0x8D38, 0x8CC0: 0x8D3A, 0x8CC1: 0x8D32, 0x8CC2: 0x8D42, 0x8CC3: 0x8D41, 0x8CC4: 0x8D3F, 0x8CC5: 0x8D45, 0x8CC7: 0x8D44, 0x8CC8: 0x8D3E, 0x8CC9: 0x6064, 0x8CCA: 0x8D3C, 0x8CCD: 0x8D43, 0x8CD1: 0x8D48, 0x8CD2: 0x8D4A, 0x8CD3: 0x5BBE, 0x8CD4: 0x5BBE, 0x8CD5: 0x8D47, 0x8CD9: 0x8D52, 0x8CDA: 0x8D49, 0x8CDB: 0x8D5E, 0x8CDC: 0x8D50, 0x8CDE: 0x8D4F, 0x8CE0: 0x8D54, 0x8CE1: 0x8D53, 0x8CE2: 0x8D24, 0x8CE3: 0x5356, 0x8CE4: 0x8D31, 0x8CE6: 0x8D4B, 0x8CE7: 0x8D55, 0x8CEA: 0x8D28, 0x8CEB: 0x8D4D, 0x8CEC: 0x8D26, 0x8CED: 0x8D4C, 0x8CEE: 0x8D46, 0x8CF4: 0x8D56, 0x8CF5: 0x8D57, 0x8CF8: 0x5269, 0x8CFA: 0x8D5A, 0x8CFB: 0x8D59, 0x8CFC: 0x8D2D, 0x8CFD: 0x8D5B, 0x8CFE: 0x8D5C, 0x8D04: 0x8D3D, 0x8D05: 0x8D58, 0x8D07: 0x8D5F, 0x8D08: 0x8D60, 0x8D0A: 0x8D5E, 0x8D0B: 0x8D5D, 0x8D0D: 0x8D61, 0x8D0F: 0x8D62, 0x8D10: 0x8D46, 0x8D13: 0x8D43, 0x8D14: 0x8D51, 0x8D16: 0x8D4E, 0x8D17: 0x8D5D, 0x8D1B: 0x8D63, 0x8D1C: 0x8D43, 0x8D6C: 0x8D6A, 0x8D95: 0x8D76, 0x8D99: 0x8D75, 0x8DA8: 0x8D8B, 0x8DB2: 0x8DB1, 0x8DE1: 0x8FF9, 0x8DFC: 0x5C40, 0x8E10: 0x8DF5, 0x8E21: 0x8737, 0x8E34: 0x8E0A, 0x8E4C: 0x8DC4, 0x8E55: 0x8DF8, 0x8E5F: 0x8FF9, 0x8E60: 0x8DD6, 0x8E63: 0x8E52, 0x8E64: 0x8E2A, 0x8E7A: 0x8DF7, 0x8E82: 0x8DF6, 0x8E89: 0x8DB8, 0x8E8A: 0x8E0C, 0x8E8B: 0x8DFB, 0x8E8D: 0x8DC3, 0x8E91: 0x8E2F, 0x8E92: 0x8DDE, 0x8E93: 0x8E2C, 0x8E95: 0x8E70, 0x8E9A: 0x8DF9, 0x8EA1: 0x8E51, 0x8EA5: 0x8E7F, 0x8EA6: 0x8E9C, 0x8EAA: 0x8E8F, 0x8EB0: 0x4F53, 0x8EC0: 0x8EAF, 0x8EC3: 0x4EB8, 0x8ECA: 0x8F66, 0x8ECB: 0x8F67, 0x8ECC: 0x8F68, 0x8ECD: 0x519B, 0x8ED1: 0x8F6A, 0x8ED2: 0x8F69, 0x8ED4: 0x8F6B, 0x8EDB: 0x8F6D, 0x8EDF: 0x8F6F, 0x8EE4: 0x8F77, 0x8EEB: 0x8F78, 0x8EF2: 0x8F71, 0x8EF8: 0x8F74, 0x8EF9: 0x8F75, 0x8EFA: 0x8F7A, 0x8EFB: 0x8F72, 0x8EFC: 0x8F76, 0x8EFE: 0x8F7C, 0x8F03: 0x8F83, 0x8F05: 0x8F82, 0x8F07: 0x8F81, 0x8F08: 0x8F80, 0x8F09: 0x8F7D, 0x8F0A: 0x8F7E, 0x8F12: 0x8F84, 0x8F13: 0x633D, 0x8F14: 0x8F85, 0x8F15: 0x8F7B, 0x8F1B: 0x8F86, 0x8F1C: 0x8F8E, 0x8F1D: 0x8F89, 0x8F1E: 0x8F8B, 0x8F1F: 0x8F8D, 0x8F25: 0x8F8A, 0x8F26: 0x8F87, 0x8F29: 0x8F88, 0x8F2A: 0x8F6E, 0x8F2C: 0x8F8C, 0x8F2D: 0x8F6F, 0x8F2F: 0x8F91, 0x8F33: 0x8F8F, 0x8F38: 0x8F93, 0x8F3B: 0x8F90, 0x8F3C: 0x8F92, 0x8F3E: 0x8F97, 0x8F3F: 0x8206, 0x8F40: 0x8F92, 0x8F42: 0x6BC2, 0x8F44: 0x8F96, 0x8F45: 0x8F95, 0x8F46: 0x8F98, 0x8F49: 0x8F6C, 0x8F4D: 0x8F99, 0x8F4E: 0x8F7F, 0x8F54: 0x8F9A, 0x8F5F: 0x8F70, 0x8F61: 0x8F94, 0x8F62: 0x8F79, 0x8F64: 0x8F73, 0x8FA4: 0x8F9E, 0x8FA6: 0x529E, 0x8FAD: 0x8F9E, 0x8FAE: 0x8FAB, 0x8FAF: 0x8FA9, 0x8FB2: 0x519C, 0x8FB3: 0x519C, 0x8FC6: 0x8FE4, 0x8FF4: 0x56DE, 0x8FFA: 0x4E43, 0x9015: 0x5F84, 0x9019: 0x8FD9, 0x9023: 0x8FDE, 0x9031: 0x5468, 0x9032: 0x8FDB, 0x904A: 0x6E38, 0x904B: 0x8FD0, 0x904E: 0x8FC7, 0x9054: 0x8FBE, 0x9055: 0x8FDD, 0x9059: 0x9065, 0x905C: 0x900A, 0x905D: 0x6C93, 0x905E: 0x9012, 0x9060: 0x8FDC, 0x9069: 0x9002, 0x9072: 0x8FDF, 0x9077: 0x8FC1, 0x9078: 0x9009, 0x907A: 0x9057, 0x907C: 0x8FBD, 0x9081: 0x8FC8, 0x9084: 0x8FD8, 0x9087: 0x8FE9, 0x908A: 0x8FB9, 0x908F: 0x903B, 0x9090: 0x9026, 0x90C3: 0x5408, 0x90DF: 0x90CF, 0x90E4: 0x90C4, 0x90F5: 0x90AE, 0x9106: 0x90D3, 0x9109: 0x4E61, 0x9112: 0x90B9, 0x9114: 0x90AC, 0x9115: 0x4E61, 0x9116: 0x90E7, 0x9118: 0x5889, 0x9127: 0x9093, 0x912D: 0x90D1, 0x9130: 0x90BB, 0x9132: 0x90F8, 0x9134: 0x90BA, 0x9136: 0x90D0, 0x913A: 0x909D, 0x9148: 0x90E6, 0x9167: 0x916C, 0x9183: 0x814C, 0x9196: 0x915D, 0x919C: 0x4E11, 0x919E: 0x915D, 0x91AB: 0x533B, 0x91AC: 0x9171, 0x91B1: 0x9166, 0x91BB: 0x916C, 0x91BC: 0x71D5, 0x91C0: 0x917F, 0x91C1: 0x8845, 0x91C3: 0x917E, 0x91C5: 0x917D, 0x91CB: 0x91CA, 0x91D0: 0x5398, 0x91D3: 0x9486, 0x91D4: 0x9487, 0x91D5: 0x948C, 0x91D7: 0x948A, 0x91D8: 0x9489, 0x91D9: 0x948B, 0x91DD: 0x9488, 0x91E3: 0x9493, 0x91E4: 0x9490, 0x91E6: 0x6263, 0x91E7: 0x948F, 0x91E9: 0x9492, 0x91EC: 0x710A, 0x91F5: 0x9497, 0x91F7: 0x948D, 0x91F9: 0x9495, 0x91FA: 0x948E, 0x9200: 0x94AF, 0x9201: 0x94AB, 0x9203: 0x9498, 0x9204: 0x94AD, 0x9205: 0x94A5, 0x9208: 0x949A, 0x9209: 0x94A0, 0x920D: 0x949D, 0x920E: 0x94A9, 0x9210: 0x94A4, 0x9211: 0x94A3, 0x9212: 0x9491, 0x9214: 0x949E, 0x9215: 0x94AE, 0x921E: 0x94A7, 0x9221: 0x949F, 0x9223: 0x9499, 0x9225: 0x94AC, 0x9226: 0x949B, 0x9227: 0x94AA, 0x922E: 0x94CC, 0x9230: 0x94C8, 0x9233: 0x94B6, 0x9234: 0x94C3, 0x9237: 0x94B4, 0x9238: 0x94B9, 0x9239: 0x94CD, 0x923A: 0x94B0, 0x923D: 0x94B8, 0x923E: 0x94C0, 0x923F: 0x94BF, 0x9240: 0x94BE, 0x9244: 0x94C1, 0x9246: 0x94BB, 0x9248: 0x94CA, 0x9249: 0x94C9, 0x924B: 0x5228, 0x924D: 0x94CB, 0x9251: 0x94C2, 0x9255: 0x94B7, 0x9257: 0x94B3, 0x925A: 0x94C6, 0x925B: 0x94C5, 0x925E: 0x94BA, 0x9262: 0x94B5, 0x9264: 0x94A9, 0x9266: 0x94B2, 0x926C: 0x94BC, 0x926D: 0x94BD, 0x9276: 0x94CF, 0x9278: 0x94F0, 0x927A: 0x94D2, 0x927B: 0x94EC, 0x927F: 0x94EA, 0x9280: 0x94F6, 0x9283: 0x94F3, 0x9285: 0x94DC, 0x928D: 0x94DA, 0x9291: 0x94E3, 0x9293: 0x94E8, 0x9295: 0x94C1, 0x9296: 0x94E2, 0x9298: 0x94ED, 0x929A: 0x94EB, 0x929B: 0x94E6, 0x929C: 0x8854, 0x92A0: 0x94D1, 0x92A3: 0x94F7, 0x92A5: 0x94F1, 0x92A6: 0x94DF, 0x92A8: 0x94F5, 0x92A9: 0x94E5, 0x92AA: 0x94D5, 0x92AB: 0x94EF, 0x92AC: 0x94D0, 0x92B1: 0x94DE, 0x92B2: 0x710A, 0x92B3: 0x9510, 0x92B7: 0x9500, 0x92B9: 0x9508, 0x92BB: 0x9511, 0x92BC: 0x9509, 0x92C1: 0x94DD, 0x92C3: 0x9512, 0x92C5: 0x950C, 0x92C7: 0x94A1, 0x92CC: 0x94E4, 0x92CF: 0x94D7, 0x92D2: 0x950B, 0x92D9: 0x94FB, 0x92DC: 0x956F, 0x92DD: 0x950A, 0x92DF: 0x9513, 0x92E3: 0x94D8, 0x92E4: 0x9504, 0x92E5: 0x9503, 0x92E6: 0x9514, 0x92E8: 0x9507, 0x92E9: 0x94D3, 0x92EA: 0x94FA, 0x92EE: 0x94D6, 0x92EF: 0x9506, 0x92F0: 0x9502, 0x92F1: 0x94FD, 0x92F6: 0x950D, 0x92F8: 0x952F, 0x92FB: 0x9274, 0x92FC: 0x94A2, 0x9301: 0x951E, 0x9304: 0x5F55, 0x9306: 0x9516, 0x9307: 0x952B, 0x9308: 0x9529, 0x930F: 0x94D4, 0x9310: 0x9525, 0x9312: 0x9515, 0x9315: 0x951F, 0x9318: 0x9524, 0x9319: 0x9531, 0x931A: 0x94EE, 0x931B: 0x951B, 0x931F: 0x952C, 0x9320: 0x952D, 0x9321: 0x951C, 0x9322: 0x94B1, 0x9326: 0x9526, 0x9328: 0x951A, 0x9329: 0x9520, 0x932B: 0x9521, 0x932E: 0x9522, 0x932F: 0x9519, 0x9333: 0x9530, 0x9336: 0x8868, 0x9338: 0x94FC, 0x9340: 0x951D, 0x9341: 0x9528, 0x9343: 0x952A, 0x9346: 0x9494, 0x9347: 0x9534, 0x9348: 0x9533, 0x934A: 0x70BC, 0x934B: 0x9505, 0x934D: 0x9540, 0x9354: 0x9537, 0x9358: 0x94E1, 0x935A: 0x9496, 0x935B: 0x953B, 0x9360: 0x953D, 0x9364: 0x9538, 0x9365: 0x9532, 0x9369: 0x9518, 0x936B: 0x9539, 0x936C: 0x9539, 0x9370: 0x953E, 0x9375: 0x952E, 0x9376: 0x9536, 0x937A: 0x9517, 0x937C: 0x9488, 0x937E: 0x949F, 0x9382: 0x9541, 0x9384: 0x953F, 0x9387: 0x9545, 0x938A: 0x9551, 0x938B: 0x8F96, 0x9394: 0x9555, 0x9396: 0x9501, 0x9398: 0x9549, 0x939A: 0x9524, 0x939B: 0x9548, 0x93A1: 0x9543, 0x93A2: 0x94A8, 0x93A3: 0x84E5, 0x93A6: 0x954F, 0x93A7: 0x94E0, 0x93A9: 0x94E9, 0x93AA: 0x953C, 0x93AC: 0x9550, 0x93AE: 0x9547, 0x93B0: 0x9552, 0x93B2: 0x954B, 0x93B3: 0x954D, 0x93B5: 0x9553, 0x93B8: 0x954C, 0x93BF: 0x954E, 0x93C3: 0x955E, 0x93C7: 0x65CB, 0x93C8: 0x94FE, 0x93CC: 0x9546, 0x93CD: 0x9559, 0x93D0: 0x9560, 0x93D1: 0x955D, 0x93D7: 0x94FF, 0x93D8: 0x9535, 0x93DA: 0x621A, 0x93DC: 0x9557, 0x93DD: 0x9558, 0x93DE: 0x955B, 0x93DF: 0x94F2, 0x93E1: 0x955C, 0x93E2: 0x9556, 0x93E4: 0x9542, 0x93E8: 0x933E, 0x93F0: 0x955A, 0x93F5: 0x94E7, 0x93F7: 0x9564, 0x93F9: 0x956A, 0x93FD: 0x9508, 0x9403: 0x94D9, 0x940B: 0x94F4, 0x9410: 0x9563, 0x9412: 0x94F9, 0x9413: 0x9566, 0x9414: 0x9561, 0x9418: 0x949F, 0x9419: 0x956B, 0x941D: 0x9562, 0x9420: 0x9568, 0x9426: 0x950E, 0x9427: 0x950F, 0x9428: 0x9544, 0x942B: 0x954C, 0x942E: 0x9570, 0x9432: 0x956F, 0x9433: 0x956D, 0x9435: 0x94C1, 0x9436: 0x956E, 0x9438: 0x94CE, 0x943A: 0x94DB, 0x943F: 0x9571, 0x9444: 0x94F8, 0x944A: 0x956C, 0x944C: 0x9554, 0x9451: 0x9274, 0x9452: 0x9274, 0x9454: 0x9572, 0x9455: 0x9527, 0x945B: 0x77FF, 0x945E: 0x9574, 0x9460: 0x94C4, 0x9463: 0x9573, 0x9464: 0x5228, 0x9465: 0x9565, 0x946A: 0x7089, 0x946D: 0x9567, 0x9470: 0x94A5, 0x9471: 0x9575, 0x9472: 0x9576, 0x9477: 0x954A, 0x9479: 0x9569, 0x947C: 0x9523, 0x947D: 0x94BB, 0x947E: 0x92AE, 0x947F: 0x51FF, 0x9481: 0x9562, 0x9482: 0x954B, 0x949C: 0x5DE8, 0x9577: 0x957F, 0x9580: 0x95E8, 0x9582: 0x95E9, 0x9583: 0x95EA, 0x9586: 0x95EB, 0x9588: 0x95EC, 0x9589: 0x95ED, 0x958B: 0x5F00, 0x958C: 0x95F6, 0x958E: 0x95F3, 0x958F: 0x95F0, 0x9591: 0x95F2, 0x9592: 0x95F2, 0x9593: 0x95F4, 0x9594: 0x95F5, 0x9598: 0x95F8, 0x9599: 0x95F9, 0x95A1: 0x9602, 0x95A2: 0x5173, 0x95A3: 0x9601, 0x95A4: 0x5408, 0x95A5: 0x9600, 0x95A8: 0x95FA, 0x95A9: 0x95FD, 0x95AB: 0x9603, 0x95AC: 0x9606, 0x95AD: 0x95FE, 0x95B1: 0x9605, 0x95B2: 0x9605, 0x95B6: 0x960A, 0x95B9: 0x9609, 0x95BB: 0x960E, 0x95BC: 0x960F, 0x95BD: 0x960D, 0x95BE: 0x9608, 0x95BF: 0x960C, 0x95C3: 0x9612, 0x95C6: 0x677F, 0x95C8: 0x95F1, 0x95CA: 0x9614, 0x95CB: 0x9615, 0x95CC: 0x9611, 0x95CD: 0x9607, 0x95D0: 0x9617, 0x95D2: 0x9618, 0x95D3: 0x95FF, 0x95D4: 0x9616, 0x95D5: 0x9619, 0x95D6: 0x95EF, 0x95DA: 0x7AA5, 0x95DC: 0x5173, 0x95DE: 0x961A, 0x95E0: 0x9613, 0x95E1: 0x9610, 0x95E2: 0x8F9F, 0x95E4: 0x961B, 0x95E5: 0x95FC, 0x962C: 0x5751, 0x962F: 0x5740, 0x9658: 0x9649, 0x965D: 0x9655, 0x965E: 0x5347, 0x9663: 0x9635, 0x9670: 0x9634, 0x9673: 0x9648, 0x9678: 0x9646, 0x967D: 0x9633, 0x9682: 0x9634, 0x9684: 0x5824, 0x9689: 0x9667, 0x968A: 0x961F, 0x968E: 0x9636, 0x9695: 0x9668, 0x9696: 0x575E, 0x969B: 0x9645, 0x96A3: 0x90BB, 0x96A8: 0x968F, 0x96AA: 0x9669, 0x96B1: 0x9690, 0x96B4: 0x9647, 0x96B7: 0x96B6, 0x96B8: 0x96B6, 0x96BB: 0x53EA, 0x96CB: 0x96BD, 0x96D6: 0x867D, 0x96D9: 0x53CC, 0x96DB: 0x96CF, 0x96DC: 0x6742, 0x96DE: 0x9E21, 0x96E2: 0x79BB, 0x96E3: 0x96BE, 0x96F2: 0x4E91, 0x96FB: 0x7535, 0x9711: 0x6CBE, 0x971B: 0x7075, 0x9724: 0x6E9C, 0x9727: 0x96FE, 0x973D: 0x9701, 0x9742: 0x96F3, 0x9744: 0x972D, 0x9746: 0x53C7, 0x9748: 0x7075, 0x9749: 0x53C6, 0x975A: 0x9753, 0x975C: 0x9759, 0x9763: 0x9762, 0x9766: 0x817C, 0x9768: 0x9765, 0x976D: 0x97E7, 0x9780: 0x9F17, 0x9789: 0x9F17, 0x978F: 0x5DE9, 0x97A6: 0x79CB, 0x97BD: 0x9792, 0x97C1: 0x7F30, 0x97C3: 0x9791, 0x97C6: 0x5343, 0x97C9: 0x97AF, 0x97CB: 0x97E6, 0x97CC: 0x97E7, 0x97CD: 0x97E8, 0x97D3: 0x97E9, 0x97D9: 0x97EA, 0x97DC: 0x97EC, 0x97DD: 0x97B4, 0x97DE: 0x97EB, 0x97E4: 0x889C, 0x97FB: 0x97F5, 0x97FF: 0x54CD, 0x9801: 0x9875, 0x9802: 0x9876, 0x9803: 0x9877, 0x9805: 0x9879, 0x9806: 0x987A, 0x9807: 0x9878, 0x9808: 0x987B, 0x980A: 0x987C, 0x980C: 0x9882, 0x980E: 0x9880, 0x980F: 0x9883, 0x9810: 0x9884, 0x9811: 0x987D, 0x9812: 0x9881, 0x9813: 0x987F, 0x9817: 0x9887, 0x9818: 0x9886, 0x981C: 0x988C, 0x9821: 0x9889, 0x9824: 0x9890, 0x9826: 0x988F, 0x982B: 0x4FEF, 0x982D: 0x5934, 0x982E: 0x9892, 0x9830: 0x988A, 0x9832: 0x988B, 0x9834: 0x9895, 0x9837: 0x9894, 0x9838: 0x9888, 0x9839: 0x9893, 0x983B: 0x9891, 0x983D: 0x9893, 0x9846: 0x9897, 0x984C: 0x9898, 0x984D: 0x989D, 0x984E: 0x989A, 0x984F: 0x989C, 0x9852: 0x9899, 0x9853: 0x989B, 0x9854: 0x989C, 0x9858: 0x613F, 0x9859: 0x98A1, 0x985B: 0x98A0, 0x985E: 0x7C7B, 0x9862: 0x989F, 0x9865: 0x98A2, 0x9867: 0x987E, 0x986B: 0x98A4, 0x986C: 0x98A5, 0x986F: 0x663E, 0x9870: 0x98A6, 0x9871: 0x9885, 0x9873: 0x989E, 0x9874: 0x98A7, 0x98A8: 0x98CE, 0x98AD: 0x98D0, 0x98AE: 0x98D1, 0x98AF: 0x98D2, 0x98B1: 0x53F0, 0x98B3: 0x522E, 0x98B6: 0x98D3, 0x98B8: 0x98D4, 0x98BA: 0x626C, 0x98BB: 0x98D6, 0x98BC: 0x98D5, 0x98C0: 0x98D7, 0x98C3: 0x98D8, 0x98C4: 0x98D8, 0x98C6: 0x98D9, 0x98C7: 0x98D9, 0x98C8: 0x98D9, 0x98DB: 0x98DE, 0x98E2: 0x9965, 0x98E3: 0x9964, 0x98E5: 0x9966, 0x98E9: 0x9968, 0x98EA: 0x996A, 0x98EB: 0x996B, 0x98ED: 0x996C, 0x98EF: 0x996D, 0x98F2: 0x996E, 0x98F4: 0x9974, 0x98FC: 0x9972, 0x98FD: 0x9971, 0x98FE: 0x9970, 0x98FF: 0x9973, 0x9903: 0x997A, 0x9904: 0x9978, 0x9905: 0x997C, 0x9909: 0x9977, 0x990A: 0x517B, 0x990C: 0x9975, 0x990E: 0x9979, 0x990F: 0x997B, 0x9911: 0x997D, 0x9912: 0x9981, 0x9913: 0x997F, 0x9915: 0x9982, 0x9916: 0x997E, 0x9918: 0x4F59, 0x991A: 0x80B4, 0x991B: 0x9984, 0x991C: 0x9983, 0x991E: 0x996F, 0x9921: 0x9985, 0x9928: 0x9986, 0x9931: 0x7CC7, 0x9933: 0x9967, 0x9935: 0x5582, 0x9936: 0x9989, 0x9937: 0x9987, 0x993A: 0x998E, 0x993C: 0x9969, 0x993D: 0x9988, 0x993E: 0x998F, 0x993F: 0x998A, 0x9941: 0x998C, 0x9943: 0x998D, 0x9945: 0x9992, 0x9948: 0x9990, 0x9949: 0x9991, 0x994A: 0x9993, 0x994B: 0x9988, 0x994C: 0x9994, 0x9951: 0x9965, 0x9952: 0x9976, 0x9957: 0x98E8, 0x995C: 0x990D, 0x995D: 0x998D, 0x995E: 0x998B, 0x9962: 0x9995, 0x99AC: 0x9A6C, 0x99AD: 0x9A6D, 0x99AE: 0x51AF, 0x99B1: 0x9A6E, 0x99B3: 0x9A70, 0x99B4: 0x9A6F, 0x99B9: 0x9A72, 0x99C1: 0x9A73, 0x99D0: 0x9A7B, 0x99D1: 0x9A7D, 0x99D2: 0x9A79, 0x99D4: 0x9A75, 0x99D5: 0x9A7E, 0x99D8: 0x9A80, 0x99D9: 0x9A78, 0x99DB: 0x9A76, 0x99DD: 0x9A7C, 0x99DF: 0x9A77, 0x99E1: 0x9A82, 0x99E2: 0x9A88, 0x99ED: 0x9A87, 0x99EE: 0x9A73, 0x99F0: 0x9A83, 0x99F1: 0x9A86, 0x99F8: 0x9A8E, 0x99FF: 0x9A8F, 0x9A01: 0x9A8B, 0x9A02: 0x9A8D, 0x9A05: 0x9A93, 0x9A0C: 0x9A94, 0x9A0D: 0x9A92, 0x9A0E: 0x9A91, 0x9A0F: 0x9A90, 0x9A10: 0x9A8C, 0x9A16: 0x9A9B, 0x9A17: 0x9A97, 0x9A19: 0x9A97, 0x9A23: 0x9B03, 0x9A24: 0x9A99, 0x9A2B: 0x9A9E, 0x9A2D: 0x9A98, 0x9A2E: 0x9A9D, 0x9A30: 0x817E, 0x9A36: 0x9A7A, 0x9A37: 0x9A9A, 0x9A38: 0x9A9F, 0x9A3E: 0x9AA1, 0x9A40: 0x84E6, 0x9A41: 0x9A9C, 0x9A42: 0x9A96, 0x9A43: 0x9AA0, 0x9A44: 0x9AA2, 0x9A45: 0x9A71, 0x9A4A: 0x9A85, 0x9A4C: 0x9A95, 0x9A4D: 0x9A81, 0x9A4F: 0x9AA3, 0x9A55: 0x9A84, 0x9A57: 0x9A8C, 0x9A58: 0x9AA1, 0x9A5A: 0x60CA, 0x9A5B: 0x9A7F, 0x9A5F: 0x9AA4, 0x9A62: 0x9A74, 0x9A64: 0x9AA7, 0x9A65: 0x9AA5, 0x9A66: 0x9AA6, 0x9A6A: 0x9A8A, 0x9A6B: 0x9A89, 0x9ABE: 0x9CA0, 0x9ACF: 0x9AC5, 0x9AD2: 0x810F, 0x9AD4: 0x4F53, 0x9AD5: 0x9ACC, 0x9AD6: 0x9ACB, 0x9AE9: 0x9B13, 0x9AEE: 0x53D1, 0x9B01: 0x75AC, 0x9B06: 0x677E, 0x9B0D: 0x80E1, 0x9B1A: 0x987B, 0x9B22: 0x9B13, 0x9B25: 0x6597, 0x9B26: 0x6597, 0x9B27: 0x95F9, 0x9B28: 0x54C4, 0x9B29: 0x960B, 0x9B2D: 0x6597, 0x9B2E: 0x9604, 0x9B31: 0x90C1, 0x9B4E: 0x9B49, 0x9B58: 0x9B47, 0x9B5A: 0x9C7C, 0x9B5B: 0x9C7D, 0x9B62: 0x9C7E, 0x9B68: 0x9C80, 0x9B6F: 0x9C81, 0x9B74: 0x9C82, 0x9B77: 0x9C7F, 0x9B7A: 0x9C84, 0x9B81: 0x9C85, 0x9B83: 0x9C86, 0x9B8A: 0x9C8C, 0x9B8B: 0x9C89, 0x9B8C: 0x9CA7, 0x9B8D: 0x9C8F, 0x9B8E: 0x9C87, 0x9B90: 0x9C90, 0x9B91: 0x9C8D, 0x9B92: 0x9C8B, 0x9B93: 0x9C8A, 0x9B9A: 0x9C92, 0x9B9C: 0x9C98, 0x9B9E: 0x9C95, 0x9BA6: 0x9C96, 0x9BAA: 0x9C94, 0x9BAB: 0x9C9B, 0x9BAD: 0x9C91, 0x9BAE: 0x9C9C, 0x9BB3: 0x9C93, 0x9BB6: 0x9CAA, 0x9BB7: 0x9CC0, 0x9BBA: 0x9C9D, 0x9BC0: 0x9CA7, 0x9BC1: 0x9CA0, 0x9BC7: 0x9CA9, 0x9BC9: 0x9CA4, 0x9BCA: 0x9CA8, 0x9BD2: 0x9CAC, 0x9BD4: 0x9CBB, 0x9BD5: 0x9CAF, 0x9BD6: 0x9CAD, 0x9BD7: 0x9C9E, 0x9BDB: 0x9CB7, 0x9BDD: 0x9CB4, 0x9BE1: 0x9CB1, 0x9BE2: 0x9CB5, 0x9BE4: 0x9CB2, 0x9BE7: 0x9CB3, 0x9BE8: 0x9CB8, 0x9BEA: 0x9CAE, 0x9BEB: 0x9CB0, 0x9BF0: 0x9CB6, 0x9BF4: 0x9CBA, 0x9BF5: 0x9CB9, 0x9BF7: 0x9CC0, 0x9BFD: 0x9CAB, 0x9BFF: 0x9CCA, 0x9C01: 0x9CC8, 0x9C02: 0x9C97, 0x9C03: 0x9CC2, 0x9C08: 0x9CBD, 0x9C09: 0x9CC7, 0x9C0C: 0x9CC5, 0x9C0D: 0x9CC5, 0x9C0F: 0x9CBE, 0x9C10: 0x9CC4, 0x9C12: 0x9CC6, 0x9C13: 0x9CC3, 0x9C1B: 0x9CC1, 0x9C1C: 0x9CD2, 0x9C1F: 0x9CD1, 0x9C20: 0x9CCB, 0x9C23: 0x9CA5, 0x9C25: 0x9CCF, 0x9C28: 0x9CCE, 0x9C29: 0x9CD0, 0x9C2D: 0x9CCD, 0x9C2E: 0x9CC1, 0x9C31: 0x9CA2, 0x9C32: 0x9CCC, 0x9C33: 0x9CD3, 0x9C35: 0x9CD8, 0x9C37: 0x9CA6, 0x9C39: 0x9CA3, 0x9C3A: 0x9CB9, 0x9C3B: 0x9CD7, 0x9C3C: 0x9CDB, 0x9C3E: 0x9CD4, 0x9C42: 0x9CC9, 0x9C45: 0x9CD9, 0x9C48: 0x9CD5, 0x9C49: 0x9CD6, 0x9C52: 0x9CDF, 0x9C53: 0x9CDD, 0x9C54: 0x9CDD, 0x9C56: 0x9CDC, 0x9C57: 0x9CDE, 0x9C58: 0x9C9F, 0x9C5D: 0x9CBC, 0x9C5F: 0x9C8E, 0x9C60: 0x9C99, 0x9C63: 0x9CE3, 0x9C64: 0x9CE1, 0x9C67: 0x9CE2, 0x9C68: 0x9CBF, 0x9C6D: 0x9C9A, 0x9C6F: 0x9CE0, 0x9C77: 0x9CC4, 0x9C78: 0x9C88, 0x9C7A: 0x9CA1, 0x9CE5: 0x9E1F, 0x9CE7: 0x51EB, 0x9CE9: 0x9E20, 0x9CF2: 0x9E24, 0x9CF3: 0x51E4, 0x9CF4: 0x9E23, 0x9CF6: 0x9E22, 0x9D06: 0x9E29, 0x9D07: 0x9E28, 0x9D09: 0x9E26, 0x9D12: 0x9E30, 0x9D15: 0x9E35, 0x9D1B: 0x9E33, 0x9D1D: 0x9E32, 0x9D1E: 0x9E2E, 0x9D1F: 0x9E31, 0x9D23: 0x9E2A, 0x9D26: 0x9E2F, 0x9D28: 0x9E2D, 0x9D2C: 0x9E34, 0x9D2F: 0x9E38, 0x9D30: 0x9E39, 0x9D34: 0x9E3B, 0x9D3B: 0x9E3F, 0x9D3F: 0x9E3D, 0x9D42: 0x9E3A, 0x9D43: 0x9E3C, 0x9D50: 0x9E40, 0x9D51: 0x9E43, 0x9D52: 0x9E46, 0x9D53: 0x9E41, 0x9D5C: 0x9E48, 0x9D5D: 0x9E45, 0x9D5E: 0x9E45, 0x9D60: 0x9E44, 0x9D61: 0x9E49, 0x9D6A: 0x9E4C, 0x9D6C: 0x9E4F, 0x9D6E: 0x9E50, 0x9D6F: 0x9E4E, 0x9D72: 0x9E4A, 0x9D76: 0x9E26, 0x9D77: 0x9E53, 0x9D7E: 0x9E4D, 0x9D87: 0x9E2B, 0x9D89: 0x9E51, 0x9D8A: 0x9E52, 0x9D93: 0x9E4B, 0x9D96: 0x9E59, 0x9D98: 0x9E55, 0x9D9A: 0x9E57, 0x9DA1: 0x9E56, 0x9DA4: 0x9E4D, 0x9DA5: 0x9E5B, 0x9DA9: 0x9E5C, 0x9DAC: 0x9E27, 0x9DAF: 0x83BA, 0x9DB2: 0x9E5F, 0x9DB4: 0x9E64, 0x9DB9: 0x9E60, 0x9DBA: 0x9E61, 0x9DBB: 0x9E58, 0x9DBC: 0x9E63, 0x9DBF: 0x9E5A, 0x9DC0: 0x9E5A, 0x9DC1: 0x9E62, 0x9DC2: 0x9E5E, 0x9DC4: 0x9E21, 0x9DCA: 0x9E5D, 0x9DD3: 0x9E67, 0x9DD6: 0x9E65, 0x9DD7: 0x9E25, 0x9DD9: 0x9E37, 0x9DDA: 0x9E68, 0x9DE5: 0x9E36, 0x9DE6: 0x9E6A, 0x9DEB: 0x9E54, 0x9DEF: 0x9E69, 0x9DF0: 0x71D5, 0x9DF2: 0x9E6B, 0x9DF3: 0x9E47, 0x9DF4: 0x9E47, 0x9DF8: 0x9E6C, 0x9DF9: 0x9E70, 0x9DFA: 0x9E6D, 0x9DFC: 0x9E47, 0x9E07: 0x9E6F, 0x9E0C: 0x9E71, 0x9E0E: 0x83BA, 0x9E0F: 0x9E72, 0x9E15: 0x9E2C, 0x9E18: 0x9E74, 0x9E1A: 0x9E66, 0x9E1B: 0x9E73, 0x9E1D: 0x9E42, 0x9E1E: 0x9E3E, 0x9E75: 0x5364, 0x9E79: 0x54B8, 0x9E7A: 0x9E7E, 0x9E7C: 0x78B1, 0x9E7D: 0x76D0, 0x9E85: 0x72CD, 0x9E97: 0x4E3D, 0x9EA5: 0x9EA6, 0x9EA9: 0x9EB8, 0x9EAA: 0x9762, 0x9EAF: 0x66F2, 0x9EB4: 0x66F2, 0x9EB5: 0x9762, 0x9EBC: 0x4E48, 0x9EBD: 0x4E48, 0x9EC3: 0x9EC4, 0x9ECC: 0x9EC9, 0x9EDE: 0x70B9, 0x9EE8: 0x515A, 0x9EF2: 0x9EEA, 0x9EF4: 0x9709, 0x9EF6: 0x9EE1, 0x9EF7: 0x9EE9, 0x9EFD: 0x9EFE, 0x9EFF: 0x9F0B, 0x9F02: 0x9F0C, 0x9F07: 0x9CCC, 0x9F08: 0x9CD6, 0x9F09: 0x9F0D, 0x9F15: 0x51AC, 0x9F34: 0x9F39, 0x9F47: 0x9F44, 0x9F4A: 0x9F50, 0x9F4B: 0x658B, 0x9F4E: 0x8D4D, 0x9F4F: 0x9F51, 0x9F52: 0x9F7F, 0x9F54: 0x9F80, 0x9F55: 0x9F81, 0x9F57: 0x9F82, 0x9F59: 0x9F85, 0x9F5C: 0x9F87, 0x9F5F: 0x9F83, 0x9F60: 0x9F86, 0x9F61: 0x9F84, 0x9F63: 0x51FA, 0x9F66: 0x9F88, 0x9F67: 0x556E, 0x9F6A: 0x9F8A, 0x9F6C: 0x9F89, 0x9F72: 0x9F8B, 0x9F76: 0x816D, 0x9F77: 0x9F8C, 0x9F8D: 0x9F99, 0x9F90: 0x5E9E, 0x9F94: 0x9F9A, 0x9F95: 0x9F9B, 0x9F9C: 0x9F9F, } Kanji2Trad_Table = { 0x2015: 0x2500, 0x2033: 0x3003, 0x2211: 0x03A3, 0x2227: 0x039B, 0x2228: 0xFF36, 0x2312: 0xFE35, 0x2501: 0x2500, 0x2503: 0x2502, 0x250F: 0x250C, 0x2513: 0x2510, 0x2517: 0x2514, 0x251B: 0x2518, 0x251D: 0x255E, 0x2520: 0x251C, 0x2523: 0x251C, 0x2525: 0x2561, 0x2528: 0x2524, 0x252B: 0x2524, 0x252F: 0x252C, 0x2530: 0x252C, 0x2533: 0x252C, 0x2537: 0x2534, 0x2538: 0x2534, 0x253B: 0x2534, 0x253F: 0x256A, 0x2542: 0x253C, 0x254B: 0x253C, 0x3013: 0x2550, 0x30FB: 0x2027, 0x3231: 0x682A, 0x3232: 0x6709, 0x3239: 0x4EE3, 0x4E07: 0x842C, 0x4E0E: 0x8207, 0x4E11: 0x919C, 0x4E17: 0x4E16, 0x4E21: 0x5169, 0x4E28: 0x4E85, 0x4E2A: 0x500B, 0x4E36: 0x3001, 0x4E55: 0x864E, 0x4E57: 0x4E58, 0x4E62: 0x4E10, 0x4E71: 0x4E82, 0x4E80: 0x9F9C, 0x4E89: 0x722D, 0x4E8A: 0x4E8B, 0x4E8E: 0x65BC, 0x4E91: 0x96F2, 0x4E98: 0x4E99, 0x4E9C: 0x4E9E, 0x4EB0: 0x4EAC, 0x4ECE: 0x5F9E, 0x4ECF: 0x4F5B, 0x4EED: 0x4EDE, 0x4EEE: 0x5047, 0x4EF7: 0x50F9, 0x4EFC: 0x4EFB, 0x4F03: 0x52F2, 0x4F1A: 0x6703, 0x4F1C: 0x5005, 0x4F53: 0x9AD4, 0x4F59: 0x9918, 0x4F8A: 0x89E5, 0x4FA0: 0x4FE0, 0x4FA1: 0x50F9, 0x4FAB: 0x4F5E, 0x4FAD: 0x5118, 0x4FE3: 0x4FC1, 0x4FE4: 0x7CF5, 0x4FE5: 0x86CD, 0x4FFF: 0x864E, 0x5024: 0x503C, 0x5036: 0x4FF1, 0x5039: 0x5109, 0x5042: 0x524D, 0x5050: 0x8D17, 0x5056: 0x9937, 0x506C: 0x50AF, 0x5078: 0x5077, 0x50CD: 0x52D5, 0x50D8: 0x655E, 0x50DE: 0x507D, 0x50F4: 0x50E9, 0x5101: 0x4FCA, 0x5116: 0x6FEB, 0x513F: 0x5152, 0x514A: 0x514C, 0x514E: 0x5154, 0x5150: 0x5152, 0x515A: 0x9EE8, 0x5164: 0x6643, 0x516A: 0x4FDE, 0x5185: 0x5167, 0x5186: 0x5713, 0x518C: 0x518A, 0x5190: 0x5192, 0x5199: 0x5BEB, 0x519D: 0x5B9C, 0x51A2: 0x585A, 0x51A6: 0x5BC7, 0x51A8: 0x5BCC, 0x51A9: 0x5BEB, 0x51B2: 0x6C96, 0x51B3: 0x6C7A, 0x51B4: 0x51B1, 0x51B5: 0x6CC1, 0x51C4: 0x6DD2, 0x51C9: 0x6DBC, 0x51CC: 0x6DE9, 0x51D6: 0x6E96, 0x51DB: 0x51DC, 0x51E0: 0x5E7E, 0x51E6: 0x8655, 0x51EC: 0x98A8, 0x51ED: 0x6191, 0x51FE: 0x51FD, 0x5204: 0x5203, 0x520B: 0x520A, 0x5215: 0x52A6, 0x5227: 0x52AB, 0x5239: 0x524E, 0x524F: 0x5231, 0x5263: 0x528D, 0x5264: 0x5291, 0x5265: 0x525D, 0x5270: 0x5269, 0x5271: 0x528D, 0x5273: 0x5284, 0x5292: 0x528D, 0x5294: 0x528D, 0x52B1: 0x52F5, 0x52B4: 0x52DE, 0x52B5: 0x5238, 0x52B9: 0x6548, 0x52C5: 0x6555, 0x52E0: 0x622E, 0x52E7: 0x52F8, 0x52F2: 0x52F3, 0x5300: 0x52FB, 0x5301: 0x5169, 0x5302: 0x5308, 0x5324: 0x5323, 0x5333: 0x5969, 0x5338: 0x531A, 0x533A: 0x5340, 0x533B: 0x91AB, 0x5346: 0x5352, 0x5358: 0x55AE, 0x5374: 0x537B, 0x5382: 0x5EE0, 0x5393: 0x5D16, 0x53A0: 0x5EC1, 0x53A6: 0x5EC8, 0x53A8: 0x5EDA, 0x53A9: 0x5EC4, 0x53AE: 0x5EDD, 0x53B0: 0x5EE0, 0x53B3: 0x56B4, 0x53C2: 0x53C3, 0x53CC: 0x96D9, 0x53CE: 0x6536, 0x53D9: 0x6558, 0x53F6: 0x5354, 0x53F6: 0x8449, 0x53F7: 0x865F, 0x5401: 0x7C72, 0x540E: 0x5F8C, 0x542C: 0x807D, 0x5449: 0x5433, 0x5451: 0x541E, 0x545F: 0x7384, 0x546A: 0x5492, 0x548A: 0x548C, 0x548F: 0x8A60, 0x549C: 0x8421, 0x54A4: 0x5412, 0x54B2: 0x7B11, 0x54B8: 0x9E79, 0x54D8: 0x884C, 0x5516: 0x555E, 0x554C: 0x54B3, 0x5553: 0x555F, 0x555D: 0x7FC6, 0x5586: 0x54F2, 0x559E: 0x5527, 0x55A9: 0x55BB, 0x55B0: 0x98E7, 0x55B6: 0x71DF, 0x5618: 0x5653, 0x5631: 0x56D1, 0x5650: 0x5668, 0x565B: 0x5699, 0x567A: 0x66B3, 0x568A: 0x55C5, 0x5694: 0x568F, 0x56A0: 0x700F, 0x56A2: 0x56CA, 0x56CE: 0x8D08, 0x56D8: 0x56DE, 0x56E3: 0x5718, 0x56F2: 0x570D, 0x56F3: 0x5716, 0x56FD: 0x570B, 0x5700: 0x570B, 0x570F: 0x5708, 0x5727: 0x58D3, 0x5742: 0x962A, 0x574F: 0x58DE, 0x5759: 0x5DE0, 0x577F: 0x72B6, 0x5788: 0x708B, 0x57AA: 0x93D3, 0x57C0: 0x5782, 0x57C8: 0x5CFB, 0x57D3: 0x57D2, 0x57D6: 0x82B1, 0x5815: 0x58AE, 0x583A: 0x754C, 0x5840: 0x64E5, 0x5841: 0x58D8, 0x5869: 0x9E7D, 0x5870: 0x6D77, 0x5872: 0x5834, 0x5897: 0x589E, 0x58B2: 0x5893, 0x58B9: 0x9593, 0x58CA: 0x58DE, 0x58CC: 0x58E4, 0x58DC: 0x7F48, 0x58E5: 0x5EDB, 0x58EE: 0x58EF, 0x58F0: 0x8072, 0x58F1: 0x58F9, 0x58F2: 0x8CE3, 0x58F7: 0x58FA, 0x58FB: 0x5A7F, 0x5902: 0x8C32, 0x5909: 0x8B8A, 0x5918: 0x536F, 0x591B: 0x591A, 0x5932: 0x672C, 0x5938: 0x8A87, 0x5965: 0x5967, 0x5968: 0x734E, 0x596C: 0x734E, 0x599B: 0x5AB8, 0x59AC: 0x5992, 0x59C9: 0x59CA, 0x59D9: 0x598A, 0x59DC: 0x8591, 0x59EB: 0x59EC, 0x5A1A: 0x5583, 0x5A2F: 0x5A1B, 0x5B22: 0x5B43, 0x5B66: 0x5B78, 0x5B8D: 0x8089, 0x5B9D: 0x5BF6, 0x5B9F: 0x5BE6, 0x5BC3: 0x51A4, 0x5BC9: 0x9DB4, 0x5BDB: 0x5BEC, 0x5BDD: 0x5BE2, 0x5BF3: 0x5BF6, 0x5BFE: 0x5C0D, 0x5BFF: 0x58FD, 0x5C02: 0x5C08, 0x5C05: 0x524B, 0x5C06: 0x5C07, 0x5C13: 0x723E, 0x5C1E: 0x71CE, 0x5C20: 0x9BAE, 0x5C2D: 0x582F, 0x5C38: 0x5C4D, 0x5C3D: 0x76E1, 0x5C4A: 0x5C46, 0x5C53: 0x5C6D, 0x5C5E: 0x5C6C, 0x5C61: 0x5C62, 0x5C76: 0x6703, 0x5CB3: 0x5DBD, 0x5CBA: 0x5CAD, 0x5CBB: 0x577B, 0x5CBC: 0x576A, 0x5CBE: 0x576B, 0x5CE0: 0x5361, 0x5CE1: 0x5CFD, 0x5CE9: 0x5CE8, 0x5CEF: 0x5CF0, 0x5CF5: 0x5DB8, 0x5CFA: 0x57C2, 0x5D15: 0x5D16, 0x5D18: 0x5D19, 0x5D53: 0x5DD6, 0x5D5C: 0x5D0E, 0x5D73: 0x5D6F, 0x5D8B: 0x5D68, 0x5D8C: 0x5CF6, 0x5D90: 0x9686, 0x5DB9: 0x5CF6, 0x5DCC: 0x5DD6, 0x5DD3: 0x5DD4, 0x5DE3: 0x5DE2, 0x5DF5: 0x536E, 0x5DFB: 0x5377, 0x5E0B: 0x7D19, 0x5E2F: 0x5E36, 0x5E30: 0x6B78, 0x5E47: 0x5E6B, 0x5E64: 0x5E63, 0x5E72: 0x5E79, 0x5E76: 0x4E26, 0x5E7A: 0x4E48, 0x5E7F: 0x5EE3, 0x5E81: 0x5EF3, 0x5E83: 0x5EE3, 0x5E84: 0x838A, 0x5EC3: 0x5EE2, 0x5ECF: 0x5EC4, 0x5ED0: 0x5EC4, 0x5EF0: 0x5EF3, 0x5EF8: 0x8FEA, 0x5EFB: 0x8FF4, 0x5EFC: 0x8FFA, 0x5F03: 0x68C4, 0x5F09: 0x5958, 0x5F0C: 0x58F9, 0x5F0D: 0x8CB3, 0x5F10: 0x8CB3, 0x5F11: 0x5F12, 0x5F21: 0x5F35, 0x5F25: 0x5F4C, 0x5F2F: 0x5F4E, 0x5F3E: 0x5F48, 0x5F51: 0x8FB9, 0x5F53: 0x7576, 0x5F5C: 0x5F5D, 0x5F66: 0x5F65, 0x5F83: 0x5F80, 0x5F84: 0x5F91, 0x5F93: 0x5F9E, 0x5FA1: 0x79A6, 0x5FB3: 0x5FB7, 0x5FB4: 0x5FB5, 0x5FDC: 0x61C9, 0x5FF0: 0x60B4, 0x601C: 0x6190, 0x6031: 0x5306, 0x603A: 0x607F, 0x604B: 0x6200, 0x6060: 0x602A, 0x6075: 0x60E0, 0x6077: 0x6058, 0x608B: 0x541D, 0x60A6: 0x6085, 0x60A7: 0x5788, 0x60A9: 0x60F1, 0x60AA: 0x60E1, 0x60B3: 0x5FB7, 0x60DE: 0x6B23, 0x60E3: 0x5A61, 0x60E7: 0x61FC, 0x60E8: 0x6158, 0x610D: 0x6E63, 0x6111: 0x6080, 0x6120: 0x614D, 0x6121: 0x5306, 0x6130: 0x7DFE, 0x613C: 0x614E, 0x613D: 0x535A, 0x613F: 0x9858, 0x6142: 0x607F, 0x6159: 0x615A, 0x616F: 0x50B7, 0x6187: 0x61A9, 0x6198: 0x585A, 0x6199: 0x559C, 0x61D0: 0x61F7, 0x61F4: 0x61FA, 0x6213: 0x6216, 0x621D: 0x8CCA, 0x621E: 0x621B, 0x6226: 0x6230, 0x622F: 0x6232, 0x6238: 0x6236, 0x623B: 0x623E, 0x624E: 0x7D2E, 0x6255: 0x62C2, 0x629B: 0x62CB, 0x629C: 0x62D4, 0x629E: 0x64C7, 0x62A6: 0x79C9, 0x62C5: 0x64D4, 0x62DD: 0x62DC, 0x62E0: 0x636E, 0x62E1: 0x64F4, 0x6302: 0x639B, 0x6319: 0x8209, 0x631F: 0x633E, 0x6327: 0x7FBD, 0x633F: 0x63D2, 0x635C: 0x641C, 0x636E: 0x64DA, 0x637B: 0x649A, 0x63B2: 0x63ED, 0x63B4: 0x6451, 0x63B5: 0x547D, 0x63BB: 0x6414, 0x63FA: 0x6416, 0x643A: 0x651C, 0x6442: 0x651D, 0x6483: 0x64CA, 0x64B9: 0x652A, 0x64E1: 0x62AC, 0x64E7: 0x8209, 0x6505: 0x6522, 0x6535: 0x590A, 0x654D: 0x6558, 0x654E: 0x6559, 0x6570: 0x6578, 0x6588: 0x5B78, 0x6589: 0x9F4A, 0x658E: 0x9F4B, 0x65AD: 0x65B7, 0x65D9: 0x65DB, 0x65E0: 0x7121, 0x65E0: 0x75C3, 0x65E7: 0x820A, 0x661E: 0x663A, 0x663B: 0x6602, 0x663C: 0x665D, 0x663F: 0x66E0, 0x6644: 0x6643, 0x664B: 0x6649, 0x6652: 0x66EC, 0x6657: 0x7F12, 0x6667: 0x7693, 0x6669: 0x665A, 0x6673: 0x6670, 0x6681: 0x66C9, 0x6683: 0x7F6A, 0x668E: 0x6BCE, 0x66A6: 0x66C6, 0x66BF: 0x6DB1, 0x66C1: 0x66A8, 0x66F5: 0x66F3, 0x66FA: 0x66F9, 0x66FD: 0x66FE, 0x670E: 0x6EDB, 0x6716: 0x6717, 0x671E: 0x671F, 0x672D: 0x5284, 0x6734: 0x6A38, 0x6736: 0x6735, 0x673A: 0x6A5F, 0x6761: 0x689D, 0x6765: 0x4F86, 0x6770: 0x5091, 0x67A0: 0x6A3A, 0x67A2: 0x6A1E, 0x67A6: 0x6AE8, 0x67A9: 0x677E, 0x67FB: 0x67E5, 0x67FE: 0x67E9, 0x6801: 0x67F3, 0x6802: 0x6885, 0x6804: 0x69AE, 0x6816: 0x68F2, 0x6822: 0x67CF, 0x6852: 0x6851, 0x6859: 0x6A21, 0x685C: 0x6AFB, 0x685D: 0x821B, 0x685F: 0x68E7, 0x6863: 0x6A94, 0x6867: 0x6A9C, 0x688D: 0x7682, 0x68A6: 0x5922, 0x68B6: 0x7DD1, 0x68B9: 0x6AB3, 0x68BC: 0x6AAE, 0x68CA: 0x68CB, 0x6900: 0x7897, 0x6901: 0x69E8, 0x6919: 0x660C, 0x691A: 0x64AF, 0x691C: 0x6AA2, 0x6922: 0x69F6, 0x6923: 0x5178, 0x6926: 0x68EC, 0x6928: 0x5E9C, 0x6936: 0x68D5, 0x6955: 0x6A62, 0x6961: 0x6986, 0x6973: 0x6885, 0x697C: 0x6A13, 0x697D: 0x6A02, 0x698A: 0x67DB, 0x6998: 0x8845, 0x69C7: 0x69D9, 0x69D8: 0x6A23, 0x69DD: 0x5CF6, 0x69DE: 0x6AF3, 0x69F9: 0x69D4, 0x6A0B: 0x901A, 0x6A12: 0x6993, 0x6A22: 0x8526, 0x6A29: 0x6B0A, 0x6A2A: 0x6A6B, 0x6A2B: 0x9CD9, 0x6A2E: 0x6B1E, 0x6A72: 0x559C, 0x6A90: 0x7C37, 0x6AAA: 0x6ADF, 0x6AC1: 0x6993, 0x6B05: 0x6AF8, 0x6B1D: 0x9B31, 0x6B1F: 0x7F50, 0x6B27: 0x6B50, 0x6B53: 0x6B61, 0x6B69: 0x6B65, 0x6B6F: 0x9F52, 0x6B73: 0x6B72, 0x6B74: 0x6B77, 0x6B8B: 0x6B98, 0x6BB1: 0x6BB2, 0x6BB4: 0x6BC6, 0x6BBB: 0x6BBC, 0x6BCE: 0x6BCF, 0x6C14: 0x6C23, 0x6C17: 0x6C23, 0x6C37: 0x51B0, 0x6C5A: 0x6C61, 0x6C93: 0x905D, 0x6CA1: 0x6C92, 0x6CA2: 0x6FA4, 0x6CEA: 0x6DDA, 0x6D12: 0x7051, 0x6D44: 0x6DE8, 0x6D45: 0x6DFA, 0x6D5C: 0x6FF1, 0x6D8C: 0x6E67, 0x6D96: 0x849E, 0x6D99: 0x6DDA, 0x6D9B: 0x6FE4, 0x6D9C: 0x7006, 0x6DC0: 0x6FB1, 0x6DF8: 0x6E05, 0x6E07: 0x6E34, 0x6E08: 0x6FDF, 0x6E09: 0x6D89, 0x6E0A: 0x6DF5, 0x6E0B: 0x6F80, 0x6E13: 0x6EAA, 0x6E15: 0x6DF5, 0x6E29: 0x6EAB, 0x6E38: 0x904A, 0x6E76: 0x5263, 0x6E7E: 0x7063, 0x6E7F: 0x6FD5, 0x6E80: 0x6EFF, 0x6E8C: 0x6F51, 0x6EDD: 0x7027, 0x6EDE: 0x6EEF, 0x6F11: 0x6E89, 0x6F45: 0x704C, 0x6F5C: 0x6F5B, 0x6F74: 0x7026, 0x6F81: 0x6F80, 0x6F91: 0x6E9C, 0x6FF3: 0x6F5B, 0x6FF6: 0x95CA, 0x701E: 0x6A36, 0x702C: 0x7028, 0x706F: 0x71C8, 0x7089: 0x7210, 0x70B9: 0x9EDE, 0x70BB: 0x9A26, 0x70DF: 0x7159, 0x70F1: 0x70AF, 0x7114: 0x7130, 0x713C: 0x71D2, 0x7155: 0x7199, 0x7188: 0x7199, 0x71D7: 0x721B, 0x71F5: 0x5008, 0x7232: 0x70BA, 0x723C: 0x4FCE, 0x7240: 0x5E8A, 0x7282: 0x7281, 0x7287: 0x5954, 0x72A0: 0x72A7, 0x72B2: 0x8C7A, 0x72B6: 0x72C0, 0x72B9: 0x7336, 0x72BE: 0x72AC, 0x72E2: 0x8C89, 0x72EC: 0x7368, 0x72ED: 0x72F9, 0x731F: 0x7375, 0x732A: 0x8C6C, 0x732B: 0x8C93, 0x732E: 0x737B, 0x732F: 0x8C92, 0x734F: 0x8C98, 0x7363: 0x7378, 0x73C9: 0x6725, 0x73C9: 0x7449, 0x73CE: 0x73CD, 0x73F1: 0x74D4, 0x7460: 0x7409, 0x7476: 0x7464, 0x74A2: 0x7409, 0x74EE: 0x7515, 0x7501: 0x74F6, 0x750E: 0x78DA, 0x751E: 0x5617, 0x7523: 0x7522, 0x753B: 0x756B, 0x753C: 0x753A, 0x7544: 0x7559, 0x7546: 0x755D, 0x754A: 0x8015, 0x754D: 0x754C, 0x7560: 0x58B0, 0x7567: 0x7565, 0x756D: 0x756C, 0x7573: 0x758A, 0x7574: 0x7587, 0x7582: 0x758A, 0x7589: 0x758A, 0x758E: 0x758F, 0x75B1: 0x5E96, 0x75B1: 0x76B0, 0x75C3: 0x9938, 0x75D2: 0x7662, 0x75E9: 0x7626, 0x75F4: 0x7661, 0x763B: 0x763A, 0x7667: 0x569F, 0x767A: 0x767C, 0x7680: 0x7682, 0x7683: 0x8C8C, 0x7690: 0x768B, 0x76B7: 0x9F13, 0x76B9: 0x76B8, 0x76D6: 0x84CB, 0x76D7: 0x76DC, 0x770C: 0x7E23, 0x771E: 0x771F, 0x7726: 0x7725, 0x7740: 0x8457, 0x7815: 0x788E, 0x783A: 0x792A, 0x783F: 0x7926, 0x7845: 0x77FD, 0x7872: 0x5CEA, 0x7874: 0x82B1, 0x787A: 0x971B, 0x788D: 0x7919, 0x78AF: 0x7459, 0x78B5: 0x78CC, 0x78C6: 0x9AA8, 0x793C: 0x79AE, 0x7962: 0x79B0, 0x7977: 0x79B1, 0x7980: 0x7A1F, 0x7984: 0x797F, 0x7985: 0x79AA, 0x799D: 0x7A37, 0x79F0: 0x7A31, 0x7A0E: 0x7A05, 0x7A32: 0x7A3B, 0x7A3E: 0x7A3F, 0x7A42: 0x7A57, 0x7A49: 0x7A1A, 0x7A4F: 0x7A69, 0x7A50: 0x79CB, 0x7A63: 0x7A70, 0x7A7D: 0x9631, 0x7A83: 0x7ACA, 0x7A93: 0x7A97, 0x7AB0: 0x7AAF, 0x7AC3: 0x7076, 0x7AC8: 0x7076, 0x7AD2: 0x5947, 0x7AD3: 0x860D, 0x7ADA: 0x4F47, 0x7ADC: 0x9F8D, 0x7ADD: 0x4E26, 0x7AE2: 0x4FDF, 0x7AE7: 0x8D46, 0x7AEA: 0x8C4E, 0x7AF8: 0x7AF6, 0x7B02: 0x8284, 0x7B0B: 0x7B4D, 0x7B36: 0x77E2, 0x7B39: 0x5C5C, 0x7B51: 0x7BC9, 0x7B5D: 0x7B8F, 0x7B6C: 0x837F, 0x7B7A: 0x7B50, 0x7B86: 0x83CE, 0x7B92: 0x5E1A, 0x7B9A: 0x5284, 0x7B9E: 0x83E4, 0x7B9F: 0x83CE, 0x7BAA: 0x7C1E, 0x7BCF: 0x5D4C, 0x7BED: 0x7C60, 0x7C12: 0x7BE1, 0x7C14: 0x7C11, 0x7C17: 0x7BC9, 0x7C4F: 0x65D7, 0x7C56: 0x7C64, 0x7C58: 0x7C50, 0x7C7E: 0x9DD4, 0x7C83: 0x79D5, 0x7C8B: 0x7CB9, 0x7C9B: 0x8085, 0x7CA4: 0x7CB5, 0x7CAE: 0x7CE7, 0x7CC0: 0x82B1, 0x7CC2: 0x7CDD, 0x7CD8: 0x7A3C, 0x7CFA: 0x7CFE, 0x7D48: 0x5E15, 0x7D4B: 0x7E8A, 0x7D4C: 0x7D93, 0x7D75: 0x7E6A, 0x7D76: 0x7D55, 0x7D89: 0x7E61, 0x7D99: 0x7E7C, 0x7D9A: 0x7E8C, 0x7DAB: 0x7DDA, 0x7DCF: 0x7E3D, 0x7DD1: 0x7DA0, 0x7DD6: 0x7DD2, 0x7DDC: 0x7DBF, 0x7DE4: 0x7D32, 0x7E01: 0x7DE3, 0x7E04: 0x7E69, 0x7E26: 0x7E31, 0x7E4A: 0x7E96, 0x7E4B: 0x7E6B, 0x7E4D: 0x7E61, 0x7E66: 0x7E48, 0x7E7F: 0x8964, 0x7E89: 0x7E98, 0x7E8E: 0x7E96, 0x7E92: 0x7E8F, 0x7F47: 0x6A3D, 0x7F4E: 0x7F48, 0x7F51: 0x7DB2, 0x7F78: 0x7F70, 0x7FA1: 0x7FA8, 0x7FA3: 0x7FA4, 0x7FAE: 0x7FB9, 0x7FC6: 0x7FE0, 0x803B: 0x6065, 0x805F: 0x5A7F, 0x8061: 0x8070, 0x8068: 0x806F, 0x8074: 0x807D, 0x80AC: 0x75A3, 0x80C6: 0x81BD, 0x8107: 0x8105, 0x8109: 0x8108, 0x811A: 0x8173, 0x8131: 0x812B, 0x8133: 0x8166, 0x8193: 0x8178, 0x81B8: 0x9AD3, 0x81C8: 0x81D8, 0x81D3: 0x81DF, 0x820E: 0x820D, 0x8217: 0x8216, 0x8218: 0x9928, 0x8229: 0x8239, 0x822E: 0x826B, 0x8262: 0x6F81, 0x826A: 0x6AD3, 0x8276: 0x8277, 0x82A6: 0x8606, 0x82C5: 0x5208, 0x82F9: 0x860B, 0x8303: 0x7BC4, 0x830E: 0x8396, 0x8318: 0x8354, 0x8350: 0x85A6, 0x8358: 0x838A, 0x8362: 0x83B8, 0x8385: 0x849E, 0x839F: 0x83E1, 0x83B1: 0x840A, 0x83B5: 0x83DF, 0x83D3: 0x679C, 0x83F7: 0x5E1A, 0x8462: 0x84CB, 0x8471: 0x8525, 0x848B: 0x8523, 0x84AD: 0x6964, 0x84DA: 0x84E8, 0x8535: 0x85CF, 0x854B: 0x854A, 0x855A: 0x843C, 0x8597: 0x5712, 0x85AB: 0x85B0, 0x85AC: 0x85E5, 0x85AE: 0x85EA, 0x85C1: 0x69C1, 0x85C1: 0x7A3F, 0x8602: 0x854A, 0x8613: 0x8607, 0x8616: 0x6AF1, 0x862F: 0x8569, 0x8630: 0x7E35, 0x865A: 0x865B, 0x866B: 0x87F2, 0x8695: 0x8836, 0x86AB: 0x9B91, 0x86CD: 0x87A2, 0x86CE: 0x8823, 0x86EE: 0x883B, 0x86EF: 0x8766, 0x8749: 0x87EC, 0x874B: 0x881F, 0x874E: 0x880D, 0x877F: 0x8805, 0x87C7: 0x87C6, 0x8807: 0x8823, 0x880E: 0x87D2, 0x880F: 0x87F9, 0x8827: 0x8839, 0x8842: 0x8844, 0x8846: 0x773E, 0x885E: 0x885B, 0x88AE: 0x5AFE, 0x88B4: 0x8932, 0x88B5: 0x887D, 0x88BF: 0x8902, 0x88C4: 0x7D4E, 0x88C5: 0x88DD, 0x88F5: 0x88F4, 0x891D: 0x894C, 0x8941: 0x7E48, 0x8943: 0x8912, 0x894D: 0x96DC, 0x8977: 0x718E, 0x8987: 0x9738, 0x898A: 0x7F88, 0x899A: 0x89BA, 0x89A7: 0x89BD, 0x89A9: 0x7779, 0x89B3: 0x89C0, 0x89E6: 0x89F8, 0x89E7: 0x89E3, 0x8A33: 0x8B6F, 0x8A37: 0x547B, 0x8A89: 0x8B7D, 0x8AAC: 0x8AAA, 0x8AAD: 0x8B80, 0x8ACC: 0x8AEB, 0x8ADA: 0x97FF, 0x8B0C: 0x6B4C, 0x8B21: 0x8B20, 0x8B4C: 0x8A1B, 0x8B5B: 0x8B56, 0x8B71: 0x5584, 0x8B72: 0x8B93, 0x8B83: 0x8B9A, 0x8B90: 0x4EC7, 0x8C37: 0x7A40, 0x8C7C: 0x8C94, 0x8C8E: 0x730A, 0x8CAD: 0x8CEA, 0x8CAE: 0x8CB3, 0x8CCD: 0x8D13, 0x8CCE: 0x8CE4, 0x8CDB: 0x8D0A, 0x8D0B: 0x8D17, 0x8D12: 0x8CE2, 0x8D71: 0x8D70, 0x8D76: 0x8D95, 0x8DD6: 0x8E60, 0x8DF5: 0x8E10, 0x8E08: 0x758F, 0x8E0A: 0x8E34, 0x8E2A: 0x8E64, 0x8E99: 0x8EAA, 0x8EAF: 0x8EC0, 0x8EB0: 0x9AD4, 0x8EB1: 0x8EB2, 0x8EC6: 0x9AD4, 0x8EE2: 0x8F49, 0x8EE3: 0x8F5F, 0x8EFD: 0x8F15, 0x8F0C: 0x8F1B, 0x8F19: 0x8F12, 0x8F5C: 0x99AA, 0x8F9E: 0x8FAD, 0x8FA7: 0x8FA8, 0x8FBA: 0x908A, 0x8FE9: 0x9087, 0x8FEF: 0x9003, 0x8FF9: 0x8DE1, 0x900E: 0x9052, 0x9013: 0x905E, 0x9039: 0x9054, 0x9045: 0x9072, 0x9056: 0x5583, 0x9061: 0x6EAF, 0x9065: 0x9059, 0x9089: 0x908A, 0x90A8: 0x9E37, 0x90C1: 0x9B31, 0x90DE: 0x90CE, 0x90F7: 0x9109, 0x9115: 0x9109, 0x9154: 0x9189, 0x9197: 0x91B1, 0x91A4: 0x91AC, 0x91B8: 0x91C0, 0x91C8: 0x91CB, 0x91CC: 0x88CF, 0x91D6: 0x6364, 0x91E1: 0x91DC, 0x91E5: 0x7936, 0x91F6: 0x82F9, 0x91FC: 0x5203, 0x920E: 0x9264, 0x922C: 0x9438, 0x923C: 0x805B, 0x9244: 0x9435, 0x9262: 0x7F3D, 0x9271: 0x7926, 0x9277: 0x7CED, 0x92AD: 0x9322, 0x92ED: 0x92B3, 0x92F2: 0x59C9, 0x92F3: 0x9444, 0x932C: 0x934A, 0x9332: 0x9304, 0x9348: 0x7CB8, 0x936E: 0x63F8, 0x93AD: 0x93AE, 0x93C6: 0x9475, 0x93E5: 0x92B9, 0x941A: 0x930F, 0x9421: 0x9435, 0x9441: 0x9350, 0x9453: 0x9397, 0x945A: 0x947D, 0x945B: 0x7926, 0x9587: 0x9589, 0x9596: 0x53A2, 0x9599: 0x9B27, 0x95A0: 0x958F, 0x95A2: 0x95DC, 0x95A7: 0x9B28, 0x95B2: 0x95B1, 0x95D8: 0x9B25, 0x9665: 0x9677, 0x9666: 0x5CF6, 0x967A: 0x96AA, 0x968F: 0x96A8, 0x969D: 0x5CF6, 0x96A0: 0x96B1, 0x96A3: 0x9130, 0x96AF: 0x5CF6, 0x96B2: 0x9A2D, 0x96B6: 0x64C0, 0x96B6: 0x96B8, 0x96B7: 0x96B8, 0x96D1: 0x96DC, 0x970A: 0x9748, 0x9751: 0x9752, 0x9755: 0x6B63, 0x9759: 0x975C, 0x9764: 0x76B0, 0x976D: 0x97CC, 0x9771: 0x97CC, 0x97B4: 0x97DD, 0x97B4: 0x99E0, 0x97C8: 0x896A, 0x97EE: 0x97ED, 0x97F2: 0x9F4F, 0x97F5: 0x97FB, 0x981A: 0x9838, 0x982C: 0x9830, 0x9834: 0x7A4E, 0x983C: 0x8CF4, 0x983D: 0x9839, 0x984B: 0x816E, 0x9854: 0x984F, 0x9855: 0x986F, 0x98C3: 0x98C4, 0x98DC: 0x7FFB, 0x98EE: 0x98F2, 0x991D: 0x98FE, 0x9920: 0x9905, 0x9942: 0x5EBD, 0x99BC: 0x7B29, 0x99C4: 0x99B1, 0x99C5: 0x9A5B, 0x99C6: 0x9A45, 0x99C8: 0x9A45, 0x9A12: 0x9A37, 0x9A13: 0x9A57, 0x9A28: 0x9A52, 0x9AC4: 0x9AD3, 0x9AD9: 0x9AD8, 0x9AE2: 0x9B04, 0x9AEA: 0x9AEE, 0x9AF4: 0x62C2, 0x9B2A: 0x9B25, 0x9B72: 0x9C78, 0x9B83: 0x8E75, 0x9B8E: 0x9BF0, 0x9B8F: 0x8165, 0x9B97: 0x8492, 0x9B9F: 0x55B9, 0x9BCF: 0x54DA, 0x9BF1: 0x6119, 0x9C00: 0x9BC7, 0x9C0A: 0x7E65, 0x9C0C: 0x9C0D, 0x9C10: 0x9C77, 0x9C15: 0x8766, 0x9C1B: 0x9EA2, 0x9C2E: 0x9EA2, 0x9C2F: 0x676B, 0x9C3A: 0x61C0, 0x9CEB: 0x96C1, 0x9CEC: 0x9CE7, 0x9D0E: 0x9DD7, 0x9D2A: 0x9D25, 0x9D2C: 0x9DAF, 0x9D44: 0x9D1F, 0x9D50: 0x9373, 0x9D5E: 0x9D5D, 0x9D8F: 0x96DE, 0x9DAB: 0x99A4, 0x9DC4: 0x96DE, 0x9DC6: 0x9DCF, 0x9E78: 0x9E7C, 0x9EA6: 0x9EA5, 0x9EAA: 0x9EB5, 0x9EB8: 0x9EA9, 0x9EB9: 0x9EB4, 0x9EBA: 0x9EB5, 0x9EBF: 0x7E3B, 0x9EC4: 0x9EC3, 0x9ED2: 0x9ED1, 0x9ED9: 0x9ED8, 0x9F08: 0x9C49, 0x9F21: 0x9F20, 0x9F62: 0x9F61, 0x9F9D: 0x79CB, 0xF9DC: 0x9686, 0xFA10: 0x585A, 0xFA11: 0x5D0E, 0xFA12: 0x6674, 0xFA14: 0x6AF8, 0xFA15: 0x51DE, 0xFA16: 0x8C6C, 0xFA17: 0x76CA, 0xFA18: 0x79AE, 0xFA19: 0x795E, 0xFA1A: 0x7965, 0xFA1B: 0x798F, 0xFA1C: 0x9756, 0xFA1D: 0x7CBE, 0xFA1E: 0x7FBD, 0xFA22: 0x8AF8, 0xFA25: 0x9038, 0xFA26: 0x90FD, 0xFA29: 0x5CF6, 0xFA2A: 0x98EF, 0xFA2B: 0x98FC, 0xFA2C: 0x9928, 0xFA2D: 0x9DB4, } Kanji2Simp_Table = { 0x2015: 0x2500, 0x2033: 0x3003, 0x2211: 0x03A3, 0x2227: 0x039B, 0x2228: 0xFF36, 0x2312: 0xFE35, 0x2501: 0x2500, 0x2503: 0x2502, 0x250F: 0x250C, 0x2513: 0x2510, 0x2517: 0x2514, 0x251B: 0x2518, 0x251D: 0x255E, 0x2520: 0x251C, 0x2523: 0x251C, 0x2525: 0x2561, 0x2528: 0x2524, 0x252B: 0x2524, 0x252F: 0x252C, 0x2530: 0x252C, 0x2533: 0x252C, 0x2537: 0x2534, 0x2538: 0x2534, 0x253B: 0x2534, 0x253F: 0x256A, 0x2542: 0x253C, 0x254B: 0x253C, 0x3013: 0x2550, 0x30FB: 0xFF0E, 0x3231: 0x682A, 0x3232: 0x6709, 0x3239: 0x4EE3, 0x4E17: 0x4E16, 0x4E21: 0x4E24, 0x4E26: 0x5E76, 0x4E28: 0x4E85, 0x4E36: 0x3001, 0x4E55: 0x864E, 0x4E57: 0x4E58, 0x4E62: 0x4E10, 0x4E7E: 0x5E72, 0x4E80: 0x9F9F, 0x4E82: 0x4E71, 0x4E8A: 0x4E8B, 0x4E99: 0x4E98, 0x4E9C: 0x4E9A, 0x4E9E: 0x4E9A, 0x4EB0: 0x4EAC, 0x4ECF: 0x4F5B, 0x4EED: 0x4EDE, 0x4EEE: 0x5047, 0x4EFC: 0x4EFB, 0x4F03: 0x52F2, 0x4F1C: 0x5005, 0x4F47: 0x4F2B, 0x4F75: 0x5E76, 0x4F86: 0x6765, 0x4F8A: 0x89E5, 0x4F96: 0x4ED1, 0x4FA1: 0x4EF7, 0x4FAB: 0x4F5E, 0x4FAD: 0x5C3D, 0x4FB6: 0x4FA3, 0x4FC2: 0x7CFB, 0x4FE4: 0x7CF5, 0x4FE5: 0x86CD, 0x4FFF: 0x864E, 0x5006: 0x4FE9, 0x5009: 0x4ED3, 0x500B: 0x4E2A, 0x5011: 0x4EEC, 0x5016: 0x5E78, 0x5023: 0x4EFF, 0x5024: 0x503C, 0x502B: 0x4F26, 0x5036: 0x4FF1, 0x5039: 0x4FED, 0x5042: 0x524D, 0x5049: 0x4F1F, 0x5050: 0x8D5D, 0x5056: 0x9987, 0x5074: 0x4FA7, 0x5075: 0x4FA6, 0x5078: 0x5077, 0x507D: 0x4F2A, 0x5091: 0x6770, 0x5098: 0x4F1E, 0x5099: 0x5907, 0x509A: 0x6548, 0x50AD: 0x4F63, 0x50B3: 0x4F20, 0x50B4: 0x4F1B, 0x50B5: 0x503A, 0x50B7: 0x4F24, 0x50BE: 0x503E, 0x50C2: 0x507B, 0x50C5: 0x4EC5, 0x50C9: 0x4F65, 0x50CD: 0x52A8, 0x50D1: 0x4FA8, 0x50D5: 0x4EC6, 0x50D8: 0x655E, 0x50DE: 0x4F2A, 0x50E5: 0x4FA5, 0x50F4: 0x50E9, 0x50F9: 0x4EF7, 0x5100: 0x4EEA, 0x5101: 0x4FCA, 0x5102: 0x4FAC, 0x5104: 0x4EBF, 0x5109: 0x4FED, 0x5114: 0x4FE6, 0x5115: 0x4FAA, 0x5116: 0x6EE5, 0x5118: 0x5C3D, 0x511F: 0x507F, 0x512A: 0x4F18, 0x5132: 0x50A8, 0x5137: 0x4FEA, 0x513A: 0x50A9, 0x513B: 0x50A5, 0x513C: 0x4FE8, 0x5147: 0x51F6, 0x514A: 0x5151, 0x514C: 0x5151, 0x514E: 0x5154, 0x5150: 0x513F, 0x5152: 0x513F, 0x5164: 0x6643, 0x5169: 0x4E24, 0x516A: 0x4FDE, 0x5186: 0x5706, 0x518A: 0x518C, 0x5190: 0x5192, 0x519D: 0x5B9C, 0x51A6: 0x5BC7, 0x51A8: 0x5BCC, 0x51A9: 0x5199, 0x51AA: 0x5E42, 0x51B4: 0x51B1, 0x51CD: 0x51BB, 0x51D6: 0x51C6, 0x51DC: 0x51DB, 0x51E6: 0x5904, 0x51EC: 0x98CE, 0x51F1: 0x51EF, 0x51FE: 0x51FD, 0x5204: 0x5203, 0x520B: 0x520A, 0x5215: 0x52A6, 0x5225: 0x522B, 0x5227: 0x52AB, 0x522A: 0x5220, 0x5239: 0x524E, 0x5244: 0x522D, 0x5247: 0x5219, 0x524B: 0x514B, 0x524F: 0x5231, 0x525B: 0x521A, 0x5263: 0x5251, 0x5264: 0x5242, 0x5270: 0x5269, 0x5271: 0x5251, 0x5273: 0x672D, 0x5274: 0x5240, 0x5275: 0x521B, 0x5283: 0x5212, 0x5287: 0x5267, 0x5289: 0x5218, 0x528D: 0x5251, 0x5291: 0x5242, 0x5292: 0x5251, 0x5294: 0x5251, 0x52B4: 0x52B3, 0x52B5: 0x5238, 0x52B9: 0x6548, 0x52C1: 0x52B2, 0x52C5: 0x6555, 0x52D5: 0x52A8, 0x52D7: 0x52D6, 0x52D9: 0x52A1, 0x52DB: 0x52CB, 0x52DD: 0x80DC, 0x52DE: 0x52B3, 0x52E0: 0x622E, 0x52E2: 0x52BF, 0x52E3: 0x7EE9, 0x52E6: 0x527F, 0x52E7: 0x529D, 0x52F2: 0x52CB, 0x52F3: 0x52CB, 0x52F5: 0x52B1, 0x52F8: 0x529D, 0x5301: 0x4E24, 0x5302: 0x5308, 0x5324: 0x5323, 0x532F: 0x6C47, 0x5331: 0x532E, 0x5333: 0x5941, 0x5338: 0x531A, 0x5340: 0x533A, 0x5346: 0x5352, 0x5354: 0x534F, 0x5358: 0x5355, 0x537B: 0x5374, 0x5393: 0x5D16, 0x53A0: 0x5395, 0x53AD: 0x538C, 0x53B0: 0x5382, 0x53B2: 0x5389, 0x53B3: 0x4E25, 0x53C3: 0x53C2, 0x53CE: 0x6536, 0x53E2: 0x4E1B, 0x53F6: 0x534F, 0x5442: 0x5415, 0x5449: 0x5434, 0x5451: 0x541E, 0x545F: 0x7384, 0x546A: 0x5492, 0x548A: 0x548C, 0x549C: 0x8421, 0x54B2: 0x7B11, 0x54BC: 0x5459, 0x54D8: 0x884C, 0x54E1: 0x5458, 0x54E2: 0x5494, 0x5504: 0x5457, 0x5516: 0x54D1, 0x5538: 0x5FF5, 0x554C: 0x54B3, 0x554F: 0x95EE, 0x5553: 0x542F, 0x5557: 0x5556, 0x555D: 0x7FC6, 0x5563: 0x8854, 0x5586: 0x54F2, 0x559A: 0x5524, 0x559E: 0x5527, 0x55A9: 0x55BB, 0x55AA: 0x4E27, 0x55AB: 0x5403, 0x55AC: 0x4E54, 0x55AE: 0x5355, 0x55B0: 0x98E7, 0x55B6: 0x8425, 0x55C7: 0x556C, 0x55DA: 0x545C, 0x5606: 0x53F9, 0x5614: 0x5455, 0x5616: 0x5567, 0x5617: 0x5C1D, 0x5629: 0x54D7, 0x562F: 0x5578, 0x5638: 0x5452, 0x5650: 0x5668, 0x565B: 0x556E, 0x5674: 0x55B7, 0x5678: 0x5428, 0x567A: 0x66B3, 0x5680: 0x549B, 0x5687: 0x5413, 0x568A: 0x55C5, 0x5694: 0x568F, 0x56A0: 0x6D4F, 0x56A2: 0x56CA, 0x56A5: 0x54BD, 0x56AE: 0x5411, 0x56B4: 0x4E25, 0x56B6: 0x5624, 0x56C0: 0x556D, 0x56C1: 0x55EB, 0x56C2: 0x56A3, 0x56C8: 0x5453, 0x56CE: 0x8D60, 0x56D1: 0x5631, 0x56D8: 0x56DE, 0x56E3: 0x56E2, 0x56F2: 0x56F4, 0x56F3: 0x56FE, 0x5700: 0x56FD, 0x570B: 0x56FD, 0x570D: 0x56F4, 0x570F: 0x5708, 0x5712: 0x56ED, 0x5713: 0x5706, 0x5716: 0x56FE, 0x5718: 0x56E2, 0x5727: 0x538B, 0x5742: 0x962A, 0x5759: 0x5DE0, 0x577F: 0x72B6, 0x5788: 0x708B, 0x57AA: 0x93D3, 0x57C0: 0x5782, 0x57C8: 0x5CFB, 0x57D3: 0x57D2, 0x57D6: 0x82B1, 0x57F7: 0x6267, 0x5805: 0x575A, 0x580A: 0x57A9, 0x581D: 0x57DA, 0x582F: 0x5C27, 0x5831: 0x62A5, 0x5834: 0x573A, 0x583A: 0x754C, 0x5840: 0x64E5, 0x5841: 0x5792, 0x584A: 0x5757, 0x584B: 0x8314, 0x5852: 0x57D8, 0x5857: 0x6D82, 0x585A: 0x51A2, 0x5862: 0x575E, 0x5869: 0x76D0, 0x5870: 0x6D77, 0x5872: 0x573A, 0x5875: 0x5C18, 0x5879: 0x5811, 0x5897: 0x589E, 0x589C: 0x5760, 0x58AE: 0x5815, 0x58B2: 0x5893, 0x58B3: 0x575F, 0x58B9: 0x95F4, 0x58BB: 0x5899, 0x58BE: 0x57A6, 0x58C7: 0x575B, 0x58CA: 0x574F, 0x58CC: 0x58E4, 0x58D3: 0x538B, 0x58D8: 0x5792, 0x58D9: 0x5739, 0x58DC: 0x575B, 0x58DE: 0x574F, 0x58DF: 0x5784, 0x58E5: 0x5EDB, 0x58EF: 0x58EE, 0x58F1: 0x58F9, 0x58F2: 0x5356, 0x58F7: 0x58F6, 0x58FA: 0x58F6, 0x58FB: 0x5A7F, 0x58FC: 0x58F8, 0x58FD: 0x5BFF, 0x5902: 0x8C32, 0x5909: 0x53D8, 0x5918: 0x536F, 0x591B: 0x591A, 0x5922: 0x68A6, 0x5925: 0x4F19, 0x5932: 0x672C, 0x593E: 0x5939, 0x5950: 0x5942, 0x5967: 0x5965, 0x5968: 0x5956, 0x5969: 0x5941, 0x596A: 0x593A, 0x596C: 0x5956, 0x596E: 0x594B, 0x599B: 0x5AB8, 0x599D: 0x5986, 0x59AC: 0x5992, 0x59C9: 0x59CA, 0x59D9: 0x598A, 0x59E6: 0x5978, 0x59EA: 0x4F84, 0x59EB: 0x59EC, 0x5A1A: 0x5583, 0x5A2F: 0x5A31, 0x5A41: 0x5A04, 0x5A66: 0x5987, 0x5A6C: 0x6DEB, 0x5ABC: 0x5AAA, 0x5ABD: 0x5988, 0x5ACB: 0x8885, 0x5AD7: 0x59AA, 0x5AFA: 0x5A34, 0x5AFB: 0x5A34, 0x5B0B: 0x5A75, 0x5B0C: 0x5A07, 0x5B22: 0x5A18, 0x5B2A: 0x5AD4, 0x5B30: 0x5A74, 0x5B3E: 0x61D2, 0x5B43: 0x5A18, 0x5B6B: 0x5B59, 0x5B78: 0x5B66, 0x5B8D: 0x8089, 0x5B9F: 0x5B9E, 0x5BAE: 0x5BAB, 0x5BC3: 0x51A4, 0x5BC9: 0x9E64, 0x5BDB: 0x5BBD, 0x5BE2: 0x5BDD, 0x5BE6: 0x5B9E, 0x5BE7: 0x5B81, 0x5BE9: 0x5BA1, 0x5BEB: 0x5199, 0x5BEC: 0x5BBD, 0x5BF3: 0x5B9D, 0x5BF5: 0x5BA0, 0x5BF6: 0x5B9D, 0x5BFE: 0x5BF9, 0x5C02: 0x4E13, 0x5C05: 0x514B, 0x5C07: 0x5C06, 0x5C08: 0x4E13, 0x5C0B: 0x5BFB, 0x5C0D: 0x5BF9, 0x5C0E: 0x5BFC, 0x5C13: 0x5C14, 0x5C1E: 0x71CE, 0x5C20: 0x9C9C, 0x5C2D: 0x5C27, 0x5C46: 0x5C4A, 0x5C4D: 0x5C38, 0x5C53: 0x5C43, 0x5C64: 0x5C42, 0x5C6C: 0x5C5E, 0x5C76: 0x4F1A, 0x5CA1: 0x5188, 0x5CBA: 0x5CAD, 0x5CBB: 0x577B, 0x5CBC: 0x576A, 0x5CBE: 0x576B, 0x5CE0: 0x5361, 0x5CE9: 0x5CE8, 0x5CEF: 0x5CF0, 0x5CF5: 0x5D58, 0x5CF6: 0x5C9B, 0x5CFA: 0x57C2, 0x5CFD: 0x5CE1, 0x5D11: 0x6606, 0x5D15: 0x5D16, 0x5D17: 0x5C97, 0x5D18: 0x4ED1, 0x5D19: 0x4ED1, 0x5D22: 0x5CE5, 0x5D50: 0x5C9A, 0x5D53: 0x5CA9, 0x5D5C: 0x5D0E, 0x5D73: 0x5D6F, 0x5D84: 0x5D2D, 0x5D87: 0x5C96, 0x5D8B: 0x5D68, 0x5D8C: 0x5C9B, 0x5D90: 0x9686, 0x5DA2: 0x5CE3, 0x5DAE: 0x5D04, 0x5DB8: 0x5D58, 0x5DB9: 0x5C9B, 0x5DBA: 0x5CAD, 0x5DBC: 0x5C7F, 0x5DBD: 0x5CB3, 0x5DCC: 0x5CA9, 0x5DD2: 0x5CE6, 0x5DD3: 0x5DC5, 0x5DD6: 0x5CA9, 0x5DE3: 0x5DE2, 0x5DF5: 0x536E, 0x5DFB: 0x5377, 0x5E0B: 0x7EB8, 0x5E25: 0x5E05, 0x5E2B: 0x5E08, 0x5E2F: 0x5E26, 0x5E30: 0x5F52, 0x5E33: 0x5E10, 0x5E36: 0x5E26, 0x5E40: 0x5E27, 0x5E43: 0x5E0F, 0x5E47: 0x5E2E, 0x5E57: 0x5E3C, 0x5E5F: 0x5E1C, 0x5E63: 0x5E01, 0x5E64: 0x5E01, 0x5E79: 0x5E72, 0x5E7E: 0x51E0, 0x5E81: 0x5385, 0x5E83: 0x5E7F, 0x5EAB: 0x5E93, 0x5EC1: 0x5395, 0x5EC2: 0x53A2, 0x5EC3: 0x5E9F, 0x5EC8: 0x53A6, 0x5ECF: 0x53A9, 0x5ED0: 0x53A9, 0x5EDA: 0x53A8, 0x5EDD: 0x53AE, 0x5EDF: 0x5E99, 0x5EE0: 0x5382, 0x5EE1: 0x5E91, 0x5EE2: 0x5E9F, 0x5EE3: 0x5E7F, 0x5EE9: 0x5EEA, 0x5EEC: 0x5E90, 0x5EF0: 0x5385, 0x5EF3: 0x5385, 0x5EF8: 0x8FEA, 0x5EFB: 0x56DE, 0x5EFC: 0x4E43, 0x5F09: 0x5958, 0x5F0C: 0x58F9, 0x5F0D: 0x8D30, 0x5F10: 0x8D30, 0x5F11: 0x5F12, 0x5F14: 0x540A, 0x5F21: 0x5F20, 0x5F35: 0x5F20, 0x5F37: 0x5F3A, 0x5F3E: 0x5F39, 0x5F48: 0x5F39, 0x5F4A: 0x5F3A, 0x5F4C: 0x5F25, 0x5F4E: 0x5F2F, 0x5F51: 0x8FB9, 0x5F59: 0x6C47, 0x5F5C: 0x5F5D, 0x5F6B: 0x96D5, 0x5F7F: 0x4F5B, 0x5F83: 0x5F80, 0x5F8C: 0x540E, 0x5F91: 0x5F84, 0x5F93: 0x4ECE, 0x5F9E: 0x4ECE, 0x5FA0: 0x5F95, 0x5FA9: 0x590D, 0x5FB3: 0x5FB7, 0x5FB4: 0x5F81, 0x5FB9: 0x5F7B, 0x5FDC: 0x5E94, 0x5FF0: 0x60B4, 0x6031: 0x5306, 0x603A: 0x607F, 0x6046: 0x6052, 0x6060: 0x602A, 0x6065: 0x803B, 0x6075: 0x60E0, 0x6077: 0x6058, 0x6085: 0x60A6, 0x608B: 0x541D, 0x60A7: 0x5788, 0x60A9: 0x607C, 0x60AA: 0x6076, 0x60B3: 0x5FB7, 0x60B5: 0x6005, 0x60B6: 0x95F7, 0x60BD: 0x51C4, 0x60DE: 0x6B23, 0x60E1: 0x6076, 0x60E3: 0x5A61, 0x60F1: 0x607C, 0x60F2: 0x607D, 0x60FB: 0x607B, 0x6111: 0x6080, 0x611B: 0x7231, 0x6121: 0x5306, 0x6128: 0x60AB, 0x6130: 0x7DFE, 0x6134: 0x6006, 0x6137: 0x607A, 0x613C: 0x614E, 0x613D: 0x535A, 0x613E: 0x5FFE, 0x6142: 0x607F, 0x6144: 0x6817, 0x6147: 0x6BB7, 0x614B: 0x6001, 0x614D: 0x6120, 0x6158: 0x60E8, 0x6159: 0x60ED, 0x615A: 0x60ED, 0x615F: 0x6078, 0x6163: 0x60EF, 0x616B: 0x6002, 0x616E: 0x8651, 0x616F: 0x4F24, 0x6173: 0x60AD, 0x6174: 0x6151, 0x6176: 0x5E86, 0x617E: 0x6B32, 0x6182: 0x5FE7, 0x6187: 0x61A9, 0x618A: 0x60EB, 0x6190: 0x601C, 0x6191: 0x51ED, 0x6196: 0x616D, 0x6198: 0x51A2, 0x6199: 0x559C, 0x619A: 0x60EE, 0x61A4: 0x6124, 0x61AB: 0x60AF, 0x61AE: 0x6003, 0x61B2: 0x5BAA, 0x61B6: 0x5FC6, 0x61C7: 0x6073, 0x61C9: 0x5E94, 0x61CC: 0x603F, 0x61CD: 0x61D4, 0x61D0: 0x6000, 0x61E3: 0x61D1, 0x61F2: 0x60E9, 0x61F4: 0x5FCF, 0x61F6: 0x61D2, 0x61F7: 0x6000, 0x61F8: 0x60AC, 0x61FA: 0x5FCF, 0x61FC: 0x60E7, 0x61FD: 0x6B22, 0x61FE: 0x6151, 0x6200: 0x604B, 0x6213: 0x6216, 0x6214: 0x620B, 0x621D: 0x8D3C, 0x621E: 0x621B, 0x6226: 0x6218, 0x622F: 0x620F, 0x6230: 0x6218, 0x6232: 0x620F, 0x6238: 0x6237, 0x623B: 0x623E, 0x6255: 0x62C2, 0x629C: 0x62D4, 0x629E: 0x62E9, 0x62A6: 0x79C9, 0x62DD: 0x62DC, 0x62E0: 0x636E, 0x62E1: 0x6269, 0x6319: 0x4E3E, 0x6327: 0x7FBD, 0x633E: 0x631F, 0x633F: 0x63D2, 0x635C: 0x641C, 0x6368: 0x820D, 0x636B: 0x626A, 0x6372: 0x5377, 0x6383: 0x626B, 0x639B: 0x6302, 0x63A1: 0x91C7, 0x63B2: 0x63ED, 0x63B5: 0x547D, 0x63BB: 0x6414, 0x63C0: 0x62E3, 0x63DA: 0x626C, 0x63DB: 0x6362, 0x63EE: 0x6325, 0x63FA: 0x6447, 0x6406: 0x6784, 0x640D: 0x635F, 0x6416: 0x6447, 0x6417: 0x6363, 0x6436: 0x62A2, 0x643E: 0x69A8, 0x6442: 0x6444, 0x646F: 0x631A, 0x6476: 0x629F, 0x647A: 0x6298, 0x6483: 0x51FB, 0x6488: 0x635E, 0x6493: 0x6320, 0x649A: 0x637B, 0x64A5: 0x62E8, 0x64AB: 0x629A, 0x64B2: 0x6251, 0x64B9: 0x6405, 0x64BB: 0x631E, 0x64C1: 0x62E5, 0x64C7: 0x62E9, 0x64D4: 0x62C5, 0x64DA: 0x636E, 0x64E0: 0x6324, 0x64E1: 0x62AC, 0x64E3: 0x6363, 0x64E7: 0x4E3E, 0x64EC: 0x62DF, 0x64EF: 0x6448, 0x64F1: 0x6401, 0x64F2: 0x63B7, 0x64F4: 0x6269, 0x64FA: 0x6446, 0x64FE: 0x6270, 0x6505: 0x6512, 0x651C: 0x643A, 0x651D: 0x6444, 0x6523: 0x631B, 0x6524: 0x644A, 0x652A: 0x6405, 0x652C: 0x63FD, 0x6535: 0x590A, 0x6537: 0x8003, 0x654D: 0x53D9, 0x654E: 0x6559, 0x6557: 0x8D25, 0x6558: 0x53D9, 0x6575: 0x654C, 0x6578: 0x6570, 0x6582: 0x655B, 0x6583: 0x6BD9, 0x6588: 0x5B66, 0x6589: 0x9F50, 0x658E: 0x658B, 0x65AC: 0x65A9, 0x65B7: 0x65AD, 0x65BC: 0x4E8E, 0x65D9: 0x65DB, 0x65E0: 0x75C3, 0x6607: 0x5347, 0x661E: 0x663A, 0x663B: 0x6602, 0x663F: 0x65F7, 0x6642: 0x65F6, 0x6644: 0x6643, 0x6649: 0x664B, 0x6657: 0x7F12, 0x665D: 0x663C, 0x6667: 0x7693, 0x6669: 0x665A, 0x6673: 0x6670, 0x6681: 0x6653, 0x6683: 0x7F6A, 0x6688: 0x6655, 0x6689: 0x6656, 0x668E: 0x6BCE, 0x6698: 0x65F8, 0x66A2: 0x7545, 0x66A6: 0x5386, 0x66AB: 0x6682, 0x66BF: 0x6DB1, 0x66C1: 0x66A8, 0x66C4: 0x6654, 0x66C7: 0x6619, 0x66C9: 0x6653, 0x66D6: 0x66A7, 0x66E0: 0x65F7, 0x66F5: 0x66F3, 0x66F8: 0x4E66, 0x66FA: 0x66F9, 0x66FD: 0x66FE, 0x6703: 0x4F1A, 0x670E: 0x6EDB, 0x6716: 0x6717, 0x671E: 0x671F, 0x6727: 0x80E7, 0x6736: 0x6735, 0x6771: 0x4E1C, 0x67A0: 0x6866, 0x67A6: 0x680C, 0x67A9: 0x677E, 0x67B4: 0x62D0, 0x67F5: 0x6805, 0x67FB: 0x67E5, 0x67FE: 0x67E9, 0x6801: 0x67F3, 0x6802: 0x6885, 0x6804: 0x8363, 0x6822: 0x67CF, 0x6852: 0x6851, 0x6859: 0x6A21, 0x685C: 0x6A31, 0x685D: 0x821B, 0x685F: 0x6808, 0x687F: 0x6746, 0x688D: 0x7682, 0x6894: 0x6800, 0x689D: 0x6761, 0x689F: 0x67AD, 0x68B1: 0x6346, 0x68B6: 0x7DD1, 0x68B9: 0x69DF, 0x68C4: 0x5F03, 0x68CA: 0x68CB, 0x68D7: 0x67A3, 0x68DF: 0x680B, 0x68E7: 0x6808, 0x68F2: 0x6816, 0x6900: 0x7897, 0x690F: 0x6860, 0x6919: 0x660C, 0x691A: 0x64AF, 0x691C: 0x68C0, 0x6922: 0x69F6, 0x6923: 0x5178, 0x6926: 0x684A, 0x6928: 0x5E9C, 0x6936: 0x68D5, 0x694A: 0x6768, 0x6953: 0x67AB, 0x6955: 0x692D, 0x6961: 0x6986, 0x6968: 0x6862, 0x696D: 0x4E1A, 0x6973: 0x6885, 0x6975: 0x6781, 0x697D: 0x4E50, 0x698A: 0x67DB, 0x6998: 0x8845, 0x69AE: 0x8363, 0x69BF: 0x6864, 0x69C3: 0x76D8, 0x69C7: 0x69D9, 0x69CB: 0x6784, 0x69CD: 0x67AA, 0x69D3: 0x6760, 0x69D8: 0x6837, 0x69DD: 0x5C9B, 0x69DE: 0x680A, 0x69E7: 0x6920, 0x69E8: 0x6901, 0x69F9: 0x69D4, 0x6A02: 0x4E50, 0x6A05: 0x679E, 0x6A0B: 0x901A, 0x6A12: 0x6993, 0x6A13: 0x697C, 0x6A19: 0x6807, 0x6A1E: 0x67A2, 0x6A22: 0x8311, 0x6A23: 0x6837, 0x6A29: 0x6743, 0x6A2B: 0x9CD9, 0x6A2E: 0x68C2, 0x6A38: 0x6734, 0x6A39: 0x6811, 0x6A3A: 0x6866, 0x6A48: 0x6861, 0x6A4B: 0x6865, 0x6A5F: 0x673A, 0x6A62: 0x692D, 0x6A6B: 0x6A2A, 0x6A72: 0x559C, 0x6A9C: 0x6867, 0x6AA2: 0x68C0, 0x6AA3: 0x6A2F, 0x6AAA: 0x680E, 0x6AAE: 0x68BC, 0x6AB3: 0x69DF, 0x6AB8: 0x67E0, 0x6ABB: 0x69DB, 0x6AC1: 0x6993, 0x6AC2: 0x68F9, 0x6AC3: 0x67DC, 0x6AD3: 0x6A79, 0x6ADA: 0x6988, 0x6ADB: 0x6809, 0x6ADE: 0x6A7C, 0x6ADF: 0x680E, 0x6AE8: 0x680C, 0x6AEA: 0x67A5, 0x6AFA: 0x68C2, 0x6AFB: 0x6A31, 0x6B04: 0x680F, 0x6B05: 0x6989, 0x6B0A: 0x6743, 0x6B12: 0x683E, 0x6B16: 0x6984, 0x6B1D: 0x90C1, 0x6B1F: 0x7F50, 0x6B3D: 0x94A6, 0x6B4E: 0x53F9, 0x6B50: 0x6B27, 0x6B53: 0x6B22, 0x6B5B: 0x655B, 0x6B5F: 0x6B24, 0x6B61: 0x6B22, 0x6B69: 0x6B65, 0x6B6F: 0x9F7F, 0x6B73: 0x5C81, 0x6B74: 0x5386, 0x6B78: 0x5F52, 0x6B7F: 0x6B81, 0x6B98: 0x6B8B, 0x6B9E: 0x6B92, 0x6BA4: 0x6B87, 0x6BAB: 0x6B9A, 0x6BAF: 0x6BA1, 0x6BB1: 0x6B7C, 0x6BB2: 0x6B7C, 0x6BBA: 0x6740, 0x6BBB: 0x58F3, 0x6BBC: 0x58F3, 0x6BC0: 0x6BC1, 0x6BC6: 0x6BB4, 0x6BCE: 0x6BCF, 0x6BEC: 0x7403, 0x6C08: 0x6BE1, 0x6C17: 0x6C14, 0x6C23: 0x6C14, 0x6C37: 0x51B0, 0x6C3E: 0x6CDB, 0x6C4E: 0x6CDB, 0x6C5A: 0x6C61, 0x6C7A: 0x51B3, 0x6C8D: 0x51B1, 0x6C92: 0x6CA1, 0x6C96: 0x51B2, 0x6CA2: 0x6CFD, 0x6CC1: 0x51B5, 0x6D29: 0x6CC4, 0x6D36: 0x6C79, 0x6D44: 0x51C0, 0x6D5C: 0x6EE8, 0x6D79: 0x6D43, 0x6D87: 0x6CFE, 0x6D96: 0x8385, 0x6D99: 0x6CEA, 0x6D9C: 0x6E0E, 0x6DBC: 0x51C9, 0x6DD2: 0x51C4, 0x6DE8: 0x51C0, 0x6DEA: 0x6CA6, 0x6DF5: 0x6E0A, 0x6DF8: 0x6E05, 0x6DFA: 0x6D45, 0x6E07: 0x6E34, 0x6E08: 0x6D4E, 0x6E09: 0x6D89, 0x6E0B: 0x6DA9, 0x6E13: 0x6EAA, 0x6E15: 0x6E0A, 0x6E19: 0x6DA3, 0x6E1B: 0x51CF, 0x6E26: 0x6DA1, 0x6E2C: 0x6D4B, 0x6E3E: 0x6D51, 0x6E4A: 0x51D1, 0x6E67: 0x6D8C, 0x6E6F: 0x6C64, 0x6E76: 0x5263, 0x6E80: 0x6EE1, 0x6E8C: 0x6CFC, 0x6E96: 0x51C6, 0x6E9D: 0x6C9F, 0x6EC4: 0x6CA7, 0x6EC5: 0x706D, 0x6ECC: 0x6DA4, 0x6EDD: 0x6CF7, 0x6EEC: 0x6CAA, 0x6EEF: 0x6EDE, 0x6EF2: 0x6E17, 0x6EF7: 0x5364, 0x6EF8: 0x6D52, 0x6EFE: 0x6EDA, 0x6EFF: 0x6EE1, 0x6F01: 0x6E14, 0x6F11: 0x6E89, 0x6F22: 0x6C49, 0x6F23: 0x6D9F, 0x6F2C: 0x6E0D, 0x6F32: 0x6DA8, 0x6F38: 0x6E10, 0x6F3F: 0x6D46, 0x6F41: 0x988D, 0x6F45: 0x704C, 0x6F54: 0x6D01, 0x6F5B: 0x6F5C, 0x6F5F: 0x8204, 0x6F64: 0x6DA6, 0x6F6F: 0x6D54, 0x6F70: 0x6E83, 0x6F80: 0x6DA9, 0x6F81: 0x6DA9, 0x6F82: 0x6F84, 0x6F86: 0x6D47, 0x6F91: 0x6E9C, 0x6F97: 0x6DA7, 0x6FA4: 0x6CFD, 0x6FB1: 0x6DC0, 0x6FC1: 0x6D4A, 0x6FC3: 0x6D53, 0x6FD4: 0x6CB5, 0x6FD5: 0x6E7F, 0x6FD8: 0x6CDE, 0x6FDB: 0x8499, 0x6FDF: 0x6D4E, 0x6FE4: 0x6D9B, 0x6FEB: 0x6EE5, 0x6FEC: 0x6D5A, 0x6FF1: 0x6EE8, 0x6FF3: 0x6F5C, 0x6FF6: 0x9614, 0x6FFA: 0x6E85, 0x6FFE: 0x6EE4, 0x7005: 0x6EE2, 0x7009: 0x6CFB, 0x700B: 0x6E16, 0x700F: 0x6D4F, 0x7015: 0x6FD2, 0x7018: 0x6CF8, 0x701D: 0x6CA5, 0x701E: 0x6A36, 0x701F: 0x6F47, 0x7026: 0x6F74, 0x7027: 0x6CF7, 0x7028: 0x6FD1, 0x702C: 0x6FD1, 0x7030: 0x5F25, 0x7032: 0x6F4B, 0x703E: 0x6F9C, 0x7051: 0x6D12, 0x7058: 0x6EE9, 0x7063: 0x6E7E, 0x707D: 0x707E, 0x70BA: 0x4E3A, 0x70BB: 0x9A26, 0x70CF: 0x4E4C, 0x70F1: 0x70AF, 0x7114: 0x7130, 0x7121: 0x65E0, 0x713C: 0x70E7, 0x7146: 0x7145, 0x7147: 0x8F89, 0x7149: 0x70BC, 0x7155: 0x7199, 0x7156: 0x6696, 0x7159: 0x70DF, 0x7162: 0x8315, 0x7165: 0x7115, 0x7169: 0x70E6, 0x716C: 0x7080, 0x7188: 0x7199, 0x71B1: 0x70ED, 0x71BE: 0x70BD, 0x71C1: 0x70E8, 0x71C8: 0x706F, 0x71C9: 0x7096, 0x71D0: 0x78F7, 0x71D2: 0x70E7, 0x71D7: 0x70C2, 0x71DF: 0x8425, 0x71E6: 0x707F, 0x71EC: 0x6BC1, 0x71ED: 0x70DB, 0x71F5: 0x5008, 0x71FB: 0x718F, 0x71FC: 0x70EC, 0x71FE: 0x7118, 0x71FF: 0x8000, 0x720D: 0x70C1, 0x7210: 0x7089, 0x721B: 0x70C2, 0x722D: 0x4E89, 0x7232: 0x4E3A, 0x723A: 0x7237, 0x723C: 0x4FCE, 0x723E: 0x5C14, 0x723F: 0x4E2C, 0x7240: 0x5E8A, 0x7246: 0x5899, 0x724B: 0x7B3A, 0x7258: 0x724D, 0x7274: 0x62B5, 0x727D: 0x7275, 0x7282: 0x7281, 0x7287: 0x5954, 0x7296: 0x8366, 0x72A0: 0x727A, 0x72A2: 0x728A, 0x72A7: 0x727A, 0x72B2: 0x8C7A, 0x72BE: 0x72AC, 0x72E2: 0x8C89, 0x72F9: 0x72ED, 0x72FD: 0x72C8, 0x731F: 0x730E, 0x732F: 0x8C92, 0x7336: 0x72B9, 0x7344: 0x72F1, 0x7345: 0x72EE, 0x734E: 0x5956, 0x734F: 0x8C98, 0x7363: 0x517D, 0x7368: 0x72EC, 0x736A: 0x72EF, 0x7370: 0x72DE, 0x7372: 0x83B7, 0x7375: 0x730E, 0x7377: 0x72B7, 0x7378: 0x517D, 0x737A: 0x736D, 0x737B: 0x732E, 0x73C9: 0x6725, 0x73CE: 0x73CD, 0x73EE: 0x4F69, 0x73F1: 0x748E, 0x73FE: 0x73B0, 0x743A: 0x73D0, 0x743F: 0x73F2, 0x7460: 0x7409, 0x7463: 0x7410, 0x7464: 0x7476, 0x7469: 0x83B9, 0x746A: 0x739B, 0x746F: 0x7405, 0x7489: 0x740F, 0x74A2: 0x7409, 0x74B0: 0x73AF, 0x74BD: 0x73BA, 0x74CA: 0x743C, 0x74CF: 0x73D1, 0x74D4: 0x748E, 0x7501: 0x74F6, 0x750C: 0x74EF, 0x750E: 0x7816, 0x7515: 0x74EE, 0x751E: 0x5C1D, 0x7523: 0x4EA7, 0x7526: 0x82CF, 0x752F: 0x5B81, 0x753C: 0x753A, 0x7544: 0x7559, 0x7546: 0x4EA9, 0x754A: 0x8015, 0x754D: 0x754C, 0x755D: 0x4EA9, 0x7560: 0x575B, 0x7562: 0x6BD5, 0x7567: 0x7565, 0x756B: 0x753B, 0x756D: 0x756C, 0x7570: 0x5F02, 0x7573: 0x8FED, 0x7576: 0x5F53, 0x7582: 0x8FED, 0x7587: 0x7574, 0x7589: 0x8FED, 0x758A: 0x8FED, 0x758E: 0x758F, 0x75B1: 0x5E96, 0x75C3: 0x9938, 0x75D9: 0x75C9, 0x75E9: 0x7626, 0x75FA: 0x75F9, 0x7609: 0x6108, 0x760B: 0x75AF, 0x760D: 0x75A1, 0x7621: 0x75AE, 0x7627: 0x759F, 0x763B: 0x7618, 0x7642: 0x7597, 0x7646: 0x75E8, 0x7647: 0x75EB, 0x7652: 0x6108, 0x7658: 0x75A0, 0x7661: 0x75F4, 0x7662: 0x75D2, 0x7667: 0x569F, 0x7667: 0x75AC, 0x7669: 0x765E, 0x766C: 0x7663, 0x7670: 0x75C8, 0x7672: 0x766B, 0x767A: 0x53D1, 0x767C: 0x53D1, 0x7680: 0x7682, 0x7683: 0x8C8C, 0x7690: 0x768B, 0x769A: 0x7691, 0x76B0: 0x75B1, 0x76B7: 0x9F13, 0x76B8: 0x76B2, 0x76B9: 0x76B2, 0x76BA: 0x76B1, 0x76C3: 0x676F, 0x76DC: 0x76D7, 0x76DE: 0x76CF, 0x76E1: 0x5C3D, 0x76E3: 0x76D1, 0x76E4: 0x76D8, 0x76E7: 0x5362, 0x76EA: 0x8361, 0x770C: 0x53BF, 0x771E: 0x771F, 0x7725: 0x7726, 0x779E: 0x7792, 0x77BC: 0x7751, 0x77C7: 0x8499, 0x77DA: 0x77A9, 0x77EF: 0x77EB, 0x7815: 0x788E, 0x7832: 0x70AE, 0x783F: 0x77FF, 0x7864: 0x7856, 0x786F: 0x781A, 0x7872: 0x5CEA, 0x7874: 0x82B1, 0x787A: 0x7075, 0x78A9: 0x7855, 0x78AF: 0x7459, 0x78B5: 0x78CC, 0x78BA: 0x786E, 0x78BC: 0x7801, 0x78C6: 0x9AA8, 0x78D0: 0x76D8, 0x78D1: 0x7859, 0x78DA: 0x7816, 0x78E7: 0x789B, 0x78EF: 0x77F6, 0x78FD: 0x7857, 0x790E: 0x7840, 0x7919: 0x788D, 0x7926: 0x77FF, 0x792A: 0x783A, 0x792B: 0x783E, 0x792C: 0x77FE, 0x7950: 0x4F51, 0x7955: 0x79D8, 0x797F: 0x7984, 0x798D: 0x7978, 0x798E: 0x796F, 0x799D: 0x7A37, 0x79A6: 0x5FA1, 0x79AA: 0x7985, 0x79AE: 0x793C, 0x79B0: 0x7962, 0x79BF: 0x79C3, 0x7A08: 0x79C6, 0x7A1C: 0x68F1, 0x7A1F: 0x7980, 0x7A2E: 0x79CD, 0x7A31: 0x79F0, 0x7A32: 0x7A3B, 0x7A3E: 0x7A3F, 0x7A40: 0x8C37, 0x7A42: 0x7A57, 0x7A49: 0x7A1A, 0x7A4D: 0x79EF, 0x7A4E: 0x9896, 0x7A4F: 0x7A33, 0x7A50: 0x79CB, 0x7A61: 0x7A51, 0x7A62: 0x79FD, 0x7A63: 0x7A70, 0x7A69: 0x7A33, 0x7A6B: 0x83B7, 0x7A7D: 0x9631, 0x7A93: 0x7A97, 0x7AA9: 0x7A9D, 0x7AAA: 0x6D3C, 0x7AAE: 0x7A77, 0x7AAF: 0x7A91, 0x7AB0: 0x7A91, 0x7AB6: 0x7AAD, 0x7ABA: 0x7AA5, 0x7AC3: 0x7076, 0x7AC4: 0x7A9C, 0x7AC5: 0x7A8D, 0x7AC7: 0x7AA6, 0x7AC8: 0x7076, 0x7ACA: 0x7A83, 0x7AD2: 0x5947, 0x7AD3: 0x860D, 0x7ADA: 0x4F2B, 0x7ADC: 0x9F99, 0x7ADD: 0x5E76, 0x7AE2: 0x4FDF, 0x7AE7: 0x8D46, 0x7AEA: 0x7AD6, 0x7AF6: 0x7ADE, 0x7AF8: 0x7ADE, 0x7B02: 0x8284, 0x7B36: 0x77E2, 0x7B39: 0x5C49, 0x7B46: 0x7B14, 0x7B4D: 0x7B0B, 0x7B67: 0x7B15, 0x7B6C: 0x837F, 0x7B7A: 0x7B50, 0x7B86: 0x83CE, 0x7B87: 0x4E2A, 0x7B8B: 0x7B3A, 0x7B8F: 0x7B5D, 0x7B92: 0x5E1A, 0x7B9A: 0x672D, 0x7B9E: 0x83E4, 0x7B9F: 0x83CE, 0x7BC0: 0x8282, 0x7BC4: 0x8303, 0x7BC9: 0x7B51, 0x7BCB: 0x7BA7, 0x7BCF: 0x5D4C, 0x7BE0: 0x7B71, 0x7BE4: 0x7B03, 0x7BE9: 0x7B5B, 0x7BED: 0x7B3C, 0x7BF3: 0x7B5A, 0x7C00: 0x7BA6, 0x7C0D: 0x7BD3, 0x7C11: 0x84D1, 0x7C12: 0x7BE1, 0x7C14: 0x84D1, 0x7C17: 0x7B51, 0x7C21: 0x7B80, 0x7C23: 0x7BD1, 0x7C2B: 0x7BAB, 0x7C37: 0x6A90, 0x7C3D: 0x7B7E, 0x7C3E: 0x5E18, 0x7C43: 0x7BEE, 0x7C4C: 0x7B79, 0x7C4F: 0x65D7, 0x7C50: 0x85E4, 0x7C56: 0x7B7E, 0x7C58: 0x85E4, 0x7C5F: 0x7C41, 0x7C60: 0x7B3C, 0x7C64: 0x7B7E, 0x7C65: 0x94A5, 0x7C6C: 0x7BF1, 0x7C7E: 0x9DD4, 0x7C83: 0x79D5, 0x7C8B: 0x7CB9, 0x7C9B: 0x8083, 0x7CA7: 0x5986, 0x7CC0: 0x82B1, 0x7CC2: 0x7CC1, 0x7CD8: 0x7A3C, 0x7CDE: 0x7CAA, 0x7CE2: 0x6A21, 0x7CE7: 0x7CAE, 0x7CF2: 0x7C9D, 0x7CF4: 0x7C74, 0x7CF6: 0x7C9C, 0x7CF8: 0x7E9F, 0x7CFA: 0x7EA0, 0x7CFE: 0x7EA0, 0x7D00: 0x7EAA, 0x7D02: 0x7EA3, 0x7D04: 0x7EA6, 0x7D05: 0x7EA2, 0x7D06: 0x7EA1, 0x7D0B: 0x7EB9, 0x7D0D: 0x7EB3, 0x7D10: 0x7EBD, 0x7D14: 0x7EAF, 0x7D15: 0x7EB0, 0x7D17: 0x7EB1, 0x7D18: 0x7EAE, 0x7D19: 0x7EB8, 0x7D1A: 0x7EA7, 0x7D1B: 0x7EB7, 0x7D1C: 0x7EAD, 0x7D21: 0x7EBA, 0x7D2E: 0x624E, 0x7D30: 0x7EC6, 0x7D32: 0x7EC1, 0x7D33: 0x7EC5, 0x7D35: 0x7EBB, 0x7D39: 0x7ECD, 0x7D3A: 0x7EC0, 0x7D3F: 0x7ED0, 0x7D42: 0x7EC8, 0x7D43: 0x5F26, 0x7D44: 0x7EC4, 0x7D46: 0x7ECA, 0x7D48: 0x5E15, 0x7D4B: 0x7EA9, 0x7D4C: 0x7ECF, 0x7D4E: 0x7ED7, 0x7D4F: 0x7EC1, 0x7D50: 0x7ED3, 0x7D5B: 0x7EE6, 0x7D5E: 0x7EDE, 0x7D61: 0x7EDC, 0x7D62: 0x7EDA, 0x7D66: 0x7ED9, 0x7D68: 0x7ED2, 0x7D71: 0x7EDF, 0x7D72: 0x4E1D, 0x7D73: 0x7EDB, 0x7D75: 0x7ED8, 0x7D76: 0x7EDD, 0x7D79: 0x7EE2, 0x7D89: 0x7EE3, 0x7D8F: 0x7EE5, 0x7D93: 0x7ECF, 0x7D99: 0x7EE7, 0x7D9A: 0x7EED, 0x7D9C: 0x7EFC, 0x7DA0: 0x7EFF, 0x7DA2: 0x7EF8, 0x7DA3: 0x7EFB, 0x7DAB: 0x7EBF, 0x7DAC: 0x7EF6, 0x7DAD: 0x7EF4, 0x7DAF: 0x7EF9, 0x7DB0: 0x7EFE, 0x7DB1: 0x7EB2, 0x7DB2: 0x7F51, 0x7DB4: 0x7F00, 0x7DB5: 0x5F69, 0x7DB8: 0x7EB6, 0x7DBA: 0x7EEE, 0x7DBB: 0x7EFD, 0x7DBD: 0x7EF0, 0x7DBE: 0x7EEB, 0x7DBF: 0x7EF5, 0x7DC7: 0x7F01, 0x7DCA: 0x7D27, 0x7DCB: 0x7EEF, 0x7DCF: 0x603B, 0x7DD1: 0x7EFF, 0x7DD2: 0x7EEA, 0x7DD6: 0x7EEA, 0x7DD8: 0x7F04, 0x7DDA: 0x7EBF, 0x7DDC: 0x7EF5, 0x7DDD: 0x7F09, 0x7DDE: 0x7F0E, 0x7DE0: 0x7F14, 0x7DE1: 0x7F17, 0x7DE4: 0x7EC1, 0x7DE8: 0x7F16, 0x7DE9: 0x7F13, 0x7DEC: 0x7F05, 0x7DEF: 0x7EAC, 0x7DF2: 0x7F08, 0x7DF4: 0x7EC3, 0x7DFB: 0x81F4, 0x7E01: 0x7F18, 0x7E04: 0x7EF3, 0x7E09: 0x7F19, 0x7E0A: 0x7F22, 0x7E0B: 0x7F12, 0x7E1B: 0x7F1A, 0x7E1E: 0x7F1F, 0x7E1F: 0x7F1B, 0x7E23: 0x53BF, 0x7E26: 0x7EB5, 0x7E2B: 0x7F1D, 0x7E2E: 0x7F29, 0x7E31: 0x7EB5, 0x7E32: 0x7F27, 0x7E35: 0x7F26, 0x7E37: 0x7F15, 0x7E39: 0x7F25, 0x7E3D: 0x603B, 0x7E3E: 0x7EE9, 0x7E43: 0x7EF7, 0x7E46: 0x7F2A, 0x7E4A: 0x7EA4, 0x7E4B: 0x7CFB, 0x7E4D: 0x7EE3, 0x7E52: 0x7F2F, 0x7E54: 0x7EC7, 0x7E55: 0x7F2E, 0x7E56: 0x4F1E, 0x7E59: 0x7FFB, 0x7E5A: 0x7F2D, 0x7E5E: 0x7ED5, 0x7E66: 0x8941, 0x7E69: 0x7EF3, 0x7E6A: 0x7ED8, 0x7E6D: 0x8327, 0x7E70: 0x7F32, 0x7E79: 0x7ECE, 0x7E7C: 0x7EE7, 0x7E7D: 0x7F24, 0x7E7F: 0x8934, 0x7E88: 0x7F2C, 0x7E89: 0x7F35, 0x7E8A: 0x7EA9, 0x7E8C: 0x7EED, 0x7E8E: 0x7EA4, 0x7E8F: 0x7F20, 0x7E92: 0x7F20, 0x7E93: 0x7F28, 0x7E96: 0x7EA4, 0x7E9C: 0x7F06, 0x7F47: 0x6A3D, 0x7F4C: 0x7F42, 0x7F4E: 0x575B, 0x7F70: 0x7F5A, 0x7F75: 0x9A82, 0x7F77: 0x7F62, 0x7F78: 0x7F5A, 0x7F85: 0x7F57, 0x7F86: 0x7F74, 0x7F88: 0x7F81, 0x7FA3: 0x7FA4, 0x7FA8: 0x7FA1, 0x7FA9: 0x4E49, 0x7FAE: 0x7FB9, 0x7FB6: 0x81BB, 0x7FC6: 0x7FE0, 0x7FD2: 0x4E60, 0x7FF9: 0x7FD8, 0x8021: 0x9504, 0x8056: 0x5723, 0x805E: 0x95FB, 0x805F: 0x5A7F, 0x8061: 0x806A, 0x8068: 0x8054, 0x806F: 0x8054, 0x8070: 0x806A, 0x8072: 0x58F0, 0x8073: 0x8038, 0x8074: 0x542C, 0x8076: 0x8042, 0x8077: 0x804C, 0x8079: 0x804D, 0x807D: 0x542C, 0x807E: 0x804B, 0x8085: 0x8083, 0x80AC: 0x75A3, 0x8105: 0x80C1, 0x8107: 0x80C1, 0x8108: 0x8109, 0x811B: 0x80EB, 0x8123: 0x5507, 0x8129: 0x4FEE, 0x8133: 0x8111, 0x8139: 0x80C0, 0x814E: 0x80BE, 0x8166: 0x8111, 0x816B: 0x80BF, 0x8178: 0x80A0, 0x8183: 0x817D, 0x8193: 0x80A0, 0x8195: 0x8158, 0x819A: 0x80A4, 0x81A0: 0x80F6, 0x81A9: 0x817B, 0x81B8: 0x9AD3, 0x81BD: 0x80C6, 0x81BE: 0x810D, 0x81BF: 0x8113, 0x81C8: 0x814A, 0x81C9: 0x8138, 0x81CD: 0x8110, 0x81D3: 0x810F, 0x81D8: 0x814A, 0x81DA: 0x80EA, 0x81DF: 0x810F, 0x81E0: 0x8114, 0x81E5: 0x5367, 0x81E8: 0x4E34, 0x81FA: 0x53F0, 0x8207: 0x4E0E, 0x8208: 0x5174, 0x8209: 0x4E3E, 0x820A: 0x65E7, 0x820E: 0x820D, 0x8216: 0x94FA, 0x8217: 0x94FA, 0x8218: 0x9986, 0x8229: 0x8239, 0x822E: 0x823B, 0x8259: 0x8231, 0x8262: 0x6A2F, 0x8262: 0x6DA9, 0x8264: 0x8223, 0x8266: 0x8230, 0x826A: 0x6A79, 0x826B: 0x823B, 0x8271: 0x8270, 0x8276: 0x8273, 0x8277: 0x8273, 0x8278: 0x8279, 0x82BB: 0x520D, 0x82C5: 0x5208, 0x82E7: 0x82CE, 0x8318: 0x8354, 0x8332: 0x5179, 0x834A: 0x8346, 0x8358: 0x5E84, 0x8362: 0x83B8, 0x838A: 0x5E84, 0x8396: 0x830E, 0x839F: 0x83E1, 0x83A2: 0x835A, 0x83B5: 0x83DF, 0x83D3: 0x679C, 0x83EF: 0x534E, 0x83F4: 0x5EB5, 0x83F7: 0x5E1A, 0x8407: 0x82CC, 0x842C: 0x4E07, 0x8435: 0x83B4, 0x8449: 0x53F6, 0x8457: 0x7740, 0x8462: 0x76D6, 0x8466: 0x82C7, 0x846F: 0x836F, 0x8477: 0x8364, 0x8490: 0x641C, 0x8494: 0x83B3, 0x84AD: 0x6964, 0x84BC: 0x82CD, 0x84C6: 0x5E2D, 0x84CB: 0x76D6, 0x84DA: 0x84E8, 0x84EE: 0x83B2, 0x84F4: 0x83BC, 0x8506: 0x83F1, 0x8514: 0x535C, 0x8526: 0x8311, 0x852D: 0x836B, 0x8535: 0x85CF, 0x8541: 0x8368, 0x854B: 0x854A, 0x854E: 0x835E, 0x8553: 0x82B8, 0x8555: 0x83B8, 0x8558: 0x835B, 0x855A: 0x843C, 0x8569: 0x8361, 0x856A: 0x829C, 0x856D: 0x8427, 0x8577: 0x84E3, 0x8588: 0x835F, 0x858A: 0x84DF, 0x8591: 0x59DC, 0x8594: 0x8537, 0x8597: 0x56ED, 0x85A6: 0x8350, 0x85A9: 0x8428, 0x85AB: 0x718F, 0x85AC: 0x836F, 0x85B0: 0x718F, 0x85BA: 0x8360, 0x85C1: 0x7A3F, 0x85CD: 0x84DD, 0x85DD: 0x827A, 0x85E5: 0x836F, 0x85EA: 0x85AE, 0x85F9: 0x853C, 0x85FA: 0x853A, 0x8602: 0x854A, 0x8606: 0x82A6, 0x8607: 0x82CF, 0x860A: 0x8574, 0x860B: 0x82F9, 0x8613: 0x82CF, 0x8616: 0x6AF1, 0x861A: 0x85D3, 0x8622: 0x830F, 0x862D: 0x5170, 0x862F: 0x8361, 0x8630: 0x7F26, 0x863F: 0x841D, 0x8655: 0x5904, 0x865C: 0x864F, 0x865F: 0x53F7, 0x8667: 0x4E8F, 0x86AB: 0x9C8D, 0x86CD: 0x8424, 0x86EF: 0x867E, 0x86FB: 0x8715, 0x8706: 0x86AC, 0x874B: 0x8721, 0x8755: 0x8680, 0x875F: 0x732C, 0x8766: 0x867E, 0x8768: 0x8671, 0x8778: 0x8717, 0x877F: 0x8747, 0x87A2: 0x8424, 0x87BB: 0x877C, 0x87C4: 0x86F0, 0x87C7: 0x87C6, 0x87EF: 0x86F2, 0x87F2: 0x866B, 0x87F6: 0x86CF, 0x87FB: 0x8681, 0x8805: 0x8747, 0x8807: 0x86CE, 0x880D: 0x874E, 0x880E: 0x87D2, 0x880F: 0x87F9, 0x8811: 0x877E, 0x8823: 0x86CE, 0x8827: 0x8839, 0x8831: 0x86CA, 0x8836: 0x8695, 0x883B: 0x86EE, 0x8842: 0x8844, 0x8846: 0x4F17, 0x8853: 0x672F, 0x885B: 0x536B, 0x885D: 0x51B2, 0x885E: 0x536B, 0x889E: 0x886E, 0x88AE: 0x5AFE, 0x88B4: 0x88E4, 0x88B5: 0x887D, 0x88B7: 0x593E, 0x88BF: 0x8902, 0x88C4: 0x7ED7, 0x88CF: 0x91CC, 0x88DC: 0x8865, 0x88DD: 0x88C5, 0x88E1: 0x91CC, 0x88F5: 0x88F4, 0x88FD: 0x5236, 0x8907: 0x590D, 0x890C: 0x88C8, 0x891D: 0x894C, 0x8938: 0x891B, 0x893B: 0x4EB5, 0x8943: 0x8912, 0x894D: 0x6742, 0x8956: 0x8884, 0x8960: 0x88C6, 0x8964: 0x8934, 0x896A: 0x889C, 0x896F: 0x886C, 0x8972: 0x88AD, 0x8974: 0x8955, 0x8977: 0x718E, 0x8987: 0x9738, 0x8988: 0x6838, 0x898A: 0x7F81, 0x898B: 0x89C1, 0x898F: 0x89C4, 0x8993: 0x89C5, 0x8996: 0x89C6, 0x8998: 0x89C7, 0x899A: 0x89C9, 0x89A1: 0x89CB, 0x89A6: 0x89CE, 0x89A7: 0x89C8, 0x89A9: 0x7779, 0x89AA: 0x4EB2, 0x89AC: 0x89CA, 0x89AF: 0x89CF, 0x89B2: 0x89D0, 0x89B3: 0x89C2, 0x89BA: 0x89C9, 0x89BD: 0x89C8, 0x89BF: 0x89CC, 0x89C0: 0x89C2, 0x89DD: 0x62B5, 0x89E7: 0x89E3, 0x89F4: 0x89DE, 0x89F8: 0x89E6, 0x8A02: 0x8BA2, 0x8A03: 0x8BA3, 0x8A08: 0x8BA1, 0x8A0A: 0x8BAF, 0x8A0C: 0x8BA7, 0x8A0E: 0x8BA8, 0x8A10: 0x8BA6, 0x8A12: 0x8BB1, 0x8A13: 0x8BAD, 0x8A16: 0x8BAB, 0x8A17: 0x6258, 0x8A18: 0x8BB0, 0x8A1B: 0x8BB9, 0x8A1D: 0x8BB6, 0x8A1F: 0x8BBC, 0x8A23: 0x8BC0, 0x8A25: 0x8BB7, 0x8A2A: 0x8BBF, 0x8A2D: 0x8BBE, 0x8A31: 0x8BB8, 0x8A33: 0x8BD1, 0x8A34: 0x8BC9, 0x8A36: 0x8BC3, 0x8A37: 0x547B, 0x8A3A: 0x8BCA, 0x8A3B: 0x6CE8, 0x8A3C: 0x8BC1, 0x8A41: 0x8BC2, 0x8A46: 0x8BCB, 0x8A50: 0x8BC8, 0x8A52: 0x8BD2, 0x8A54: 0x8BCF, 0x8A55: 0x8BC4, 0x8A5B: 0x8BC5, 0x8A5E: 0x8BCD, 0x8A60: 0x548F, 0x8A62: 0x8BE2, 0x8A63: 0x8BE3, 0x8A66: 0x8BD5, 0x8A69: 0x8BD7, 0x8A6B: 0x8BE7, 0x8A6C: 0x8BDF, 0x8A6D: 0x8BE1, 0x8A6E: 0x8BE0, 0x8A70: 0x8BD8, 0x8A71: 0x8BDD, 0x8A72: 0x8BE5, 0x8A73: 0x8BE6, 0x8A7C: 0x8BD9, 0x8A84: 0x8BD4, 0x8A85: 0x8BDB, 0x8A87: 0x5938, 0x8A8C: 0x5FD7, 0x8A8D: 0x8BA4, 0x8A91: 0x8BF3, 0x8A95: 0x8BDE, 0x8A98: 0x8BF1, 0x8A9A: 0x8BEE, 0x8A9E: 0x8BED, 0x8AA0: 0x8BDA, 0x8AA1: 0x8BEB, 0x8AA3: 0x8BEC, 0x8AA4: 0x8BEF, 0x8AA5: 0x8BF0, 0x8AA6: 0x8BF5, 0x8AA8: 0x8BF2, 0x8AAC: 0x8BF4, 0x8AAD: 0x8BFB, 0x8AB0: 0x8C01, 0x8AB2: 0x8BFE, 0x8AB9: 0x8BFD, 0x8ABC: 0x8C0A, 0x8ABF: 0x8C03, 0x8AC2: 0x8C04, 0x8AC4: 0x8C06, 0x8AC7: 0x8C08, 0x8ACB: 0x8BF7, 0x8ACC: 0x8C0F, 0x8ACD: 0x8BE4, 0x8ACF: 0x8BF9, 0x8AD2: 0x8C05, 0x8AD6: 0x8BBA, 0x8ADA: 0x54CD, 0x8ADB: 0x8C00, 0x8ADC: 0x8C0D, 0x8ADE: 0x8C1D, 0x8AE1: 0x8C25, 0x8AE2: 0x8BE8, 0x8AE4: 0x8C14, 0x8AE6: 0x8C1B, 0x8AE7: 0x8C10, 0x8AEB: 0x8C0F, 0x8AED: 0x8C15, 0x8AEE: 0x8C18, 0x8AF1: 0x8BB3, 0x8AF3: 0x8C19, 0x8AF6: 0x8C0C, 0x8AF7: 0x8BBD, 0x8AF8: 0x8BF8, 0x8AFA: 0x8C1A, 0x8AFE: 0x8BFA, 0x8B00: 0x8C0B, 0x8B01: 0x8C12, 0x8B02: 0x8C13, 0x8B04: 0x8A8A, 0x8B0C: 0x6B4C, 0x8B0E: 0x8C1C, 0x8B10: 0x8C27, 0x8B14: 0x8C11, 0x8B16: 0x8C21, 0x8B17: 0x8C24, 0x8B19: 0x8C26, 0x8B1A: 0x8C25, 0x8B1B: 0x8BB2, 0x8B1D: 0x8C22, 0x8B20: 0x8C23, 0x8B21: 0x8C23, 0x8B28: 0x8C1F, 0x8B2B: 0x8C2A, 0x8B2C: 0x8C2C, 0x8B33: 0x8BB4, 0x8B39: 0x8C28, 0x8B3E: 0x8C29, 0x8B41: 0x54D7, 0x8B49: 0x8BC1, 0x8B4C: 0x8BB9, 0x8B4E: 0x8C32, 0x8B4F: 0x8BA5, 0x8B56: 0x8C2E, 0x8B58: 0x8BC6, 0x8B5A: 0x8C2D, 0x8B5B: 0x8C2E, 0x8B5C: 0x8C31, 0x8B5F: 0x566A, 0x8B6B: 0x8C35, 0x8B6F: 0x8BD1, 0x8B70: 0x8BAE, 0x8B71: 0x5584, 0x8B72: 0x8BA9, 0x8B74: 0x8C34, 0x8B77: 0x62A4, 0x8B7D: 0x8A89, 0x8B80: 0x8BFB, 0x8B83: 0x8D5E, 0x8B8A: 0x53D8, 0x8B8C: 0x71D5, 0x8B8E: 0x96E0, 0x8B90: 0x4EC7, 0x8B90: 0x96E0, 0x8B92: 0x8C17, 0x8B93: 0x8BA9, 0x8B96: 0x8C36, 0x8B9A: 0x8D5E, 0x8C3F: 0x6EAA, 0x8C48: 0x5C82, 0x8C4E: 0x7AD6, 0x8C50: 0x4E30, 0x8C6C: 0x732A, 0x8C7C: 0x8C94, 0x8C8D: 0x72F8, 0x8C8E: 0x730A, 0x8C9D: 0x8D1D, 0x8C9E: 0x8D1E, 0x8CA0: 0x8D1F, 0x8CA1: 0x8D22, 0x8CA2: 0x8D21, 0x8CA7: 0x8D2B, 0x8CA8: 0x8D27, 0x8CA9: 0x8D29, 0x8CAA: 0x8D2A, 0x8CAB: 0x8D2F, 0x8CAC: 0x8D23, 0x8CAD: 0x8D28, 0x8CAE: 0x8D30, 0x8CAF: 0x8D2E, 0x8CB0: 0x8D33, 0x8CB2: 0x8D40, 0x8CB3: 0x8D30, 0x8CB4: 0x8D35, 0x8CB6: 0x8D2C, 0x8CB7: 0x4E70, 0x8CB8: 0x8D37, 0x8CBB: 0x8D39, 0x8CBC: 0x8D34, 0x8CBD: 0x8D3B, 0x8CBF: 0x8D38, 0x8CC0: 0x8D3A, 0x8CC1: 0x8D32, 0x8CC2: 0x8D42, 0x8CC3: 0x8D41, 0x8CC4: 0x8D3F, 0x8CC7: 0x8D44, 0x8CC8: 0x8D3E, 0x8CCA: 0x8D3C, 0x8CCD: 0x8D43, 0x8CCE: 0x8D31, 0x8CD1: 0x8D48, 0x8CD3: 0x5BBE, 0x8CDA: 0x8D49, 0x8CDB: 0x8D5E, 0x8CDC: 0x8D50, 0x8CDE: 0x8D4F, 0x8CE0: 0x8D54, 0x8CE2: 0x8D24, 0x8CE3: 0x5356, 0x8CE4: 0x8D31, 0x8CE6: 0x8D4B, 0x8CEA: 0x8D28, 0x8CED: 0x8D4C, 0x8CF4: 0x8D56, 0x8CFA: 0x8D5A, 0x8CFB: 0x8D59, 0x8CFC: 0x8D2D, 0x8CFD: 0x8D5B, 0x8D04: 0x8D3D, 0x8D05: 0x8D58, 0x8D07: 0x8D5F, 0x8D08: 0x8D60, 0x8D0A: 0x8D5E, 0x8D0B: 0x8D5D, 0x8D0D: 0x8D61, 0x8D0F: 0x8D62, 0x8D10: 0x8D46, 0x8D12: 0x8D24, 0x8D13: 0x8D43, 0x8D14: 0x8D51, 0x8D16: 0x8D4E, 0x8D71: 0x8D70, 0x8D99: 0x8D75, 0x8DA8: 0x8D8B, 0x8DE1: 0x8FF9, 0x8DFC: 0x5C40, 0x8E08: 0x758F, 0x8E10: 0x8DF5, 0x8E34: 0x8E0A, 0x8E4C: 0x8DC4, 0x8E55: 0x8DF8, 0x8E5F: 0x8FF9, 0x8E60: 0x8DD6, 0x8E63: 0x8E52, 0x8E64: 0x8E2A, 0x8E8A: 0x8E0C, 0x8E8B: 0x8DFB, 0x8E8D: 0x8DC3, 0x8E91: 0x8E2F, 0x8E93: 0x8E2C, 0x8E99: 0x8E8F, 0x8EA1: 0x8E51, 0x8EAA: 0x8E8F, 0x8EB0: 0x4F53, 0x8EB1: 0x8EB2, 0x8EC6: 0x4F53, 0x8ECA: 0x8F66, 0x8ECB: 0x8F67, 0x8ECC: 0x8F68, 0x8ECD: 0x519B, 0x8ED2: 0x8F69, 0x8EDB: 0x8F6D, 0x8EDF: 0x8F6F, 0x8EE2: 0x8F6C, 0x8EE3: 0x8F70, 0x8EEB: 0x8F78, 0x8EF8: 0x8F74, 0x8EFB: 0x8F72, 0x8EFC: 0x8F76, 0x8EFD: 0x8F7B, 0x8EFE: 0x8F7C, 0x8F03: 0x8F83, 0x8F05: 0x8F82, 0x8F09: 0x8F7D, 0x8F0A: 0x8F7E, 0x8F0C: 0x8F86, 0x8F12: 0x8F84, 0x8F13: 0x633D, 0x8F14: 0x8F85, 0x8F15: 0x8F7B, 0x8F19: 0x8F84, 0x8F1B: 0x8F86, 0x8F1C: 0x8F8E, 0x8F1D: 0x8F89, 0x8F1F: 0x8F8D, 0x8F26: 0x8F87, 0x8F29: 0x8F88, 0x8F2A: 0x8F6E, 0x8F2F: 0x8F91, 0x8F33: 0x8F8F, 0x8F38: 0x8F93, 0x8F3B: 0x8F90, 0x8F3E: 0x8F97, 0x8F3F: 0x8206, 0x8F42: 0x6BC2, 0x8F44: 0x8F96, 0x8F45: 0x8F95, 0x8F46: 0x8F98, 0x8F49: 0x8F6C, 0x8F4D: 0x8F99, 0x8F4E: 0x8F7F, 0x8F5C: 0x99AA, 0x8F5F: 0x8F70, 0x8F61: 0x8F94, 0x8F62: 0x8F79, 0x8F64: 0x8F73, 0x8FA7: 0x8FA8, 0x8FAD: 0x8F9E, 0x8FAE: 0x8FAB, 0x8FAF: 0x8FA9, 0x8FB2: 0x519C, 0x8FBA: 0x8FB9, 0x8FEF: 0x9003, 0x8FF4: 0x56DE, 0x8FFA: 0x4E43, 0x900E: 0x9052, 0x9013: 0x9012, 0x9015: 0x5F84, 0x9019: 0x8FD9, 0x9023: 0x8FDE, 0x9031: 0x5468, 0x9032: 0x8FDB, 0x9039: 0x8FBE, 0x9045: 0x8FDF, 0x904A: 0x6E38, 0x904B: 0x8FD0, 0x904E: 0x8FC7, 0x9054: 0x8FBE, 0x9055: 0x8FDD, 0x9056: 0x5583, 0x9059: 0x9065, 0x905C: 0x900A, 0x905E: 0x9012, 0x9060: 0x8FDC, 0x9061: 0x6EAF, 0x9069: 0x9002, 0x9072: 0x8FDF, 0x9077: 0x8FC1, 0x9078: 0x9009, 0x907A: 0x9057, 0x907C: 0x8FBD, 0x9081: 0x8FC8, 0x9084: 0x8FD8, 0x9087: 0x8FE9, 0x9089: 0x8FB9, 0x908A: 0x8FB9, 0x908F: 0x903B, 0x90A8: 0x9E37, 0x90DE: 0x90CE, 0x90E4: 0x90C4, 0x90F5: 0x90AE, 0x90F7: 0x4E61, 0x9112: 0x90B9, 0x9115: 0x4E61, 0x9115: 0x9109, 0x9127: 0x9093, 0x912D: 0x90D1, 0x9130: 0x90BB, 0x9132: 0x90F8, 0x9154: 0x9189, 0x9197: 0x9166, 0x919C: 0x4E11, 0x91A4: 0x9171, 0x91AB: 0x533B, 0x91B8: 0x917F, 0x91C0: 0x917F, 0x91C1: 0x8845, 0x91C8: 0x91CA, 0x91CB: 0x91CA, 0x91D0: 0x5398, 0x91D6: 0x6364, 0x91D7: 0x948A, 0x91D8: 0x9489, 0x91DD: 0x9488, 0x91E1: 0x91DC, 0x91E3: 0x9493, 0x91E4: 0x9490, 0x91E5: 0x7936, 0x91E6: 0x6263, 0x91E7: 0x948F, 0x91F5: 0x9497, 0x91F6: 0x82F9, 0x91FC: 0x5203, 0x920D: 0x949D, 0x920E: 0x94A9, 0x9210: 0x94A4, 0x9211: 0x94A3, 0x9214: 0x949E, 0x9215: 0x94AE, 0x921E: 0x94A7, 0x922C: 0x94CE, 0x9234: 0x94C3, 0x9237: 0x94B4, 0x9239: 0x94CD, 0x923A: 0x94B0, 0x923C: 0x805B, 0x923F: 0x94BF, 0x9240: 0x94BE, 0x9244: 0x94C1, 0x9248: 0x94CA, 0x9249: 0x94C9, 0x924B: 0x5228, 0x9251: 0x94C2, 0x9257: 0x94B3, 0x925A: 0x94C6, 0x925B: 0x94C5, 0x925E: 0x94BA, 0x9262: 0x94B5, 0x9264: 0x94A9, 0x9266: 0x94B2, 0x9271: 0x77FF, 0x9277: 0x7CED, 0x9278: 0x94F0, 0x9280: 0x94F6, 0x9283: 0x94F3, 0x9285: 0x94DC, 0x9291: 0x94E3, 0x9293: 0x94E8, 0x9295: 0x94C1, 0x9296: 0x94E2, 0x9298: 0x94ED, 0x929A: 0x94EB, 0x929B: 0x94E6, 0x929C: 0x8854, 0x92AD: 0x94B1, 0x92B7: 0x9500, 0x92B9: 0x9508, 0x92CF: 0x94D7, 0x92D2: 0x950B, 0x92D9: 0x94FB, 0x92E4: 0x9504, 0x92E9: 0x94D3, 0x92EA: 0x94FA, 0x92ED: 0x9510, 0x92F2: 0x59C9, 0x92F3: 0x94F8, 0x92F8: 0x952F, 0x92FB: 0x9274, 0x92FC: 0x94A2, 0x9306: 0x9516, 0x930F: 0x94D4, 0x9310: 0x9525, 0x9318: 0x9524, 0x9319: 0x9531, 0x931A: 0x94EE, 0x9320: 0x952D, 0x9321: 0x951C, 0x9322: 0x94B1, 0x9326: 0x9526, 0x9328: 0x951A, 0x932B: 0x9521, 0x932C: 0x70BC, 0x932E: 0x9522, 0x932F: 0x9519, 0x9332: 0x5F55, 0x9348: 0x7CB8, 0x9348: 0x9533, 0x934B: 0x9505, 0x934D: 0x9540, 0x9354: 0x9537, 0x935B: 0x953B, 0x9360: 0x953D, 0x936C: 0x9539, 0x936E: 0x63F8, 0x9370: 0x953E, 0x9375: 0x952E, 0x937C: 0x9488, 0x937E: 0x949F, 0x9394: 0x9555, 0x9396: 0x9501, 0x939A: 0x9524, 0x93A7: 0x94E0, 0x93AC: 0x9550, 0x93AD: 0x9547, 0x93AE: 0x9547, 0x93B0: 0x9552, 0x93C3: 0x955E, 0x93C6: 0x9475, 0x93C8: 0x94FE, 0x93D0: 0x9560, 0x93D1: 0x955D, 0x93D7: 0x94FF, 0x93D8: 0x9535, 0x93DD: 0x9558, 0x93DE: 0x955B, 0x93E1: 0x955C, 0x93E4: 0x9542, 0x93E5: 0x9508, 0x93E8: 0x933E, 0x9403: 0x94D9, 0x9410: 0x9563, 0x9413: 0x9566, 0x9414: 0x9561, 0x9418: 0x949F, 0x9419: 0x956B, 0x941A: 0x94D4, 0x9421: 0x94C1, 0x942B: 0x954C, 0x9435: 0x94C1, 0x9436: 0x956E, 0x9438: 0x94CE, 0x943A: 0x94DB, 0x9441: 0x9350, 0x9444: 0x94F8, 0x9451: 0x9274, 0x9452: 0x9274, 0x9453: 0x9397, 0x945A: 0x94BB, 0x945B: 0x77FF, 0x945E: 0x9574, 0x9460: 0x94C4, 0x946A: 0x7089, 0x9470: 0x94A5, 0x9477: 0x954A, 0x947C: 0x9523, 0x947D: 0x94BB, 0x947E: 0x92AE, 0x947F: 0x51FF, 0x9481: 0x9562, 0x9577: 0x957F, 0x9580: 0x95E8, 0x9582: 0x95E9, 0x9583: 0x95EA, 0x9587: 0x95ED, 0x9589: 0x95ED, 0x958B: 0x5F00, 0x958F: 0x95F0, 0x9591: 0x95F2, 0x9592: 0x95F2, 0x9593: 0x95F4, 0x9594: 0x95F5, 0x9596: 0x53A2, 0x9598: 0x95F8, 0x9599: 0x95F9, 0x95A0: 0x95F0, 0x95A2: 0x5173, 0x95A3: 0x9601, 0x95A4: 0x5408, 0x95A5: 0x9600, 0x95A7: 0x54C4, 0x95A8: 0x95FA, 0x95AD: 0x95FE, 0x95B2: 0x9605, 0x95B9: 0x9609, 0x95BB: 0x960E, 0x95BC: 0x960F, 0x95BE: 0x9608, 0x95C3: 0x9612, 0x95CA: 0x9614, 0x95CC: 0x9611, 0x95CD: 0x9607, 0x95D4: 0x9616, 0x95D5: 0x9619, 0x95D6: 0x95EF, 0x95D8: 0x6597, 0x95DC: 0x5173, 0x95E1: 0x9610, 0x95E2: 0x8F9F, 0x95E5: 0x95FC, 0x962F: 0x5740, 0x965D: 0x9655, 0x965E: 0x5347, 0x9663: 0x9635, 0x9665: 0x9677, 0x9666: 0x5C9B, 0x9670: 0x9634, 0x9673: 0x9648, 0x9678: 0x9646, 0x967A: 0x9669, 0x967D: 0x9633, 0x968A: 0x961F, 0x968E: 0x9636, 0x9695: 0x9668, 0x969B: 0x9645, 0x969D: 0x5C9B, 0x96A0: 0x9690, 0x96A3: 0x90BB, 0x96A8: 0x968F, 0x96AA: 0x9669, 0x96AF: 0x5C9B, 0x96B1: 0x9690, 0x96B2: 0x9A98, 0x96B4: 0x9647, 0x96B6: 0x64C0, 0x96B7: 0x96B6, 0x96B8: 0x96B6, 0x96BB: 0x53EA, 0x96CB: 0x96BD, 0x96D1: 0x6742, 0x96D6: 0x867D, 0x96D9: 0x53CC, 0x96DB: 0x96CF, 0x96DC: 0x6742, 0x96E2: 0x79BB, 0x96E3: 0x96BE, 0x96F2: 0x4E91, 0x96FB: 0x7535, 0x970A: 0x7075, 0x9711: 0x6CBE, 0x9724: 0x6E9C, 0x9727: 0x96FE, 0x973D: 0x9701, 0x9742: 0x96F3, 0x9744: 0x972D, 0x9746: 0x53C7, 0x9748: 0x7075, 0x9749: 0x53C6, 0x9751: 0x9752, 0x9755: 0x6B63, 0x975C: 0x9759, 0x9764: 0x75B1, 0x9766: 0x817C, 0x9768: 0x9765, 0x976D: 0x97E7, 0x9771: 0x97E7, 0x978F: 0x5DE9, 0x97A6: 0x79CB, 0x97B4: 0x99E0, 0x97C3: 0x9791, 0x97C6: 0x5343, 0x97C8: 0x889C, 0x97CB: 0x97E6, 0x97D3: 0x97E9, 0x97DC: 0x97EC, 0x97EE: 0x97ED, 0x97F2: 0x9F51, 0x97FB: 0x97F5, 0x97FF: 0x54CD, 0x9801: 0x9875, 0x9802: 0x9876, 0x9803: 0x9877, 0x9805: 0x9879, 0x9806: 0x987A, 0x9808: 0x987B, 0x980C: 0x9882, 0x980F: 0x9883, 0x9810: 0x9884, 0x9811: 0x987D, 0x9812: 0x9881, 0x9813: 0x987F, 0x9817: 0x9887, 0x9818: 0x9886, 0x981A: 0x9888, 0x9821: 0x9889, 0x9824: 0x9890, 0x982C: 0x988A, 0x982D: 0x5934, 0x9834: 0x9895, 0x9834: 0x9896, 0x9837: 0x9894, 0x9838: 0x9888, 0x983B: 0x9891, 0x983C: 0x8D56, 0x983D: 0x9893, 0x9846: 0x9897, 0x984B: 0x816E, 0x984C: 0x9898, 0x984D: 0x989D, 0x984E: 0x989A, 0x984F: 0x989C, 0x9854: 0x989C, 0x9855: 0x663E, 0x9858: 0x613F, 0x985B: 0x98A0, 0x985E: 0x7C7B, 0x9865: 0x98A2, 0x9867: 0x987E, 0x986B: 0x98A4, 0x986F: 0x663E, 0x9870: 0x98A6, 0x9871: 0x9885, 0x9873: 0x989E, 0x9874: 0x98A7, 0x98A8: 0x98CE, 0x98AF: 0x98D2, 0x98B1: 0x53F0, 0x98B6: 0x98D3, 0x98C3: 0x98D8, 0x98C4: 0x98D8, 0x98C6: 0x98D9, 0x98DB: 0x98DE, 0x98DC: 0x7FFB, 0x98E2: 0x9965, 0x98E9: 0x9968, 0x98EB: 0x996B, 0x98ED: 0x996C, 0x98EE: 0x996E, 0x98EF: 0x996D, 0x98F2: 0x996E, 0x98F4: 0x9974, 0x98FC: 0x9972, 0x98FD: 0x9971, 0x98FE: 0x9970, 0x9903: 0x997A, 0x9905: 0x997C, 0x9909: 0x9977, 0x990A: 0x517B, 0x990C: 0x9975, 0x9912: 0x9981, 0x9913: 0x997F, 0x9918: 0x4F59, 0x991D: 0x9970, 0x991E: 0x996F, 0x9920: 0x997C, 0x9921: 0x9985, 0x9928: 0x9986, 0x993D: 0x9988, 0x993E: 0x998F, 0x9942: 0x5EBD, 0x9945: 0x9992, 0x9949: 0x9991, 0x994B: 0x9988, 0x994C: 0x9994, 0x9951: 0x9965, 0x9952: 0x9976, 0x9957: 0x98E8, 0x99AC: 0x9A6C, 0x99AD: 0x9A6D, 0x99AE: 0x51AF, 0x99B3: 0x9A70, 0x99B4: 0x9A6F, 0x99BC: 0x7B29, 0x99C1: 0x9A73, 0x99C4: 0x9A6E, 0x99C5: 0x9A7F, 0x99C6: 0x9A71, 0x99C8: 0x9A71, 0x99D0: 0x9A7B, 0x99D1: 0x9A7D, 0x99D2: 0x9A79, 0x99D5: 0x9A7E, 0x99D8: 0x9A80, 0x99DB: 0x9A76, 0x99DD: 0x9A7C, 0x99DF: 0x9A77, 0x99E2: 0x9A88, 0x99ED: 0x9A87, 0x99EE: 0x9A73, 0x99F1: 0x9A86, 0x99F8: 0x9A8E, 0x99FF: 0x9A8F, 0x9A01: 0x9A8B, 0x9A05: 0x9A93, 0x9A0E: 0x9A91, 0x9A0F: 0x9A90, 0x9A12: 0x9A9A, 0x9A13: 0x9A8C, 0x9A19: 0x9A97, 0x9A28: 0x9A52, 0x9A2B: 0x9A9E, 0x9A30: 0x817E, 0x9A37: 0x9A9A, 0x9A3E: 0x9AA1, 0x9A40: 0x84E6, 0x9A42: 0x9A96, 0x9A43: 0x9AA0, 0x9A45: 0x9A71, 0x9A4D: 0x9A81, 0x9A55: 0x9A84, 0x9A57: 0x9A8C, 0x9A5A: 0x60CA, 0x9A5B: 0x9A7F, 0x9A5F: 0x9AA4, 0x9A62: 0x9A74, 0x9A64: 0x9AA7, 0x9A65: 0x9AA5, 0x9A6A: 0x9A8A, 0x9A6B: 0x9A89, 0x9AC4: 0x9AD3, 0x9ACF: 0x9AC5, 0x9AD4: 0x4F53, 0x9AD9: 0x9AD8, 0x9AE2: 0x9B04, 0x9AEA: 0x53D1, 0x9AEE: 0x53D1, 0x9AF4: 0x62C2, 0x9B06: 0x677E, 0x9B1A: 0x987B, 0x9B22: 0x9B13, 0x9B25: 0x6597, 0x9B27: 0x95F9, 0x9B28: 0x54C4, 0x9B29: 0x960B, 0x9B2A: 0x6597, 0x9B2E: 0x9604, 0x9B31: 0x90C1, 0x9B4E: 0x9B49, 0x9B58: 0x9B47, 0x9B5A: 0x9C7C, 0x9B6F: 0x9C81, 0x9B72: 0x9C88, 0x9B74: 0x9C82, 0x9B83: 0x8E75, 0x9B83: 0x9C86, 0x9B8E: 0x9C87, 0x9B8E: 0x9CB6, 0x9B8F: 0x8165, 0x9B91: 0x9C8D, 0x9B92: 0x9C8B, 0x9B93: 0x9C8A, 0x9B97: 0x8492, 0x9B9F: 0x55B9, 0x9BAA: 0x9C94, 0x9BAB: 0x9C9B, 0x9BAD: 0x9C91, 0x9BAE: 0x9C9C, 0x9BC0: 0x9CA7, 0x9BC9: 0x9CA4, 0x9BCA: 0x9CA8, 0x9BCF: 0x54DA, 0x9BD2: 0x9CAC, 0x9BD4: 0x9CBB, 0x9BD6: 0x9CAD, 0x9BDB: 0x9CB7, 0x9BE1: 0x9CB1, 0x9BE2: 0x9CB5, 0x9BE4: 0x9CB2, 0x9BE8: 0x9CB8, 0x9BF0: 0x9CB6, 0x9BF1: 0x6119, 0x9BF5: 0x9CB9, 0x9C00: 0x9CA9, 0x9C08: 0x9CBD, 0x9C09: 0x9CC7, 0x9C0A: 0x7E65, 0x9C0C: 0x9CC5, 0x9C0D: 0x9CC5, 0x9C10: 0x9CC4, 0x9C12: 0x9CC6, 0x9C13: 0x9CC3, 0x9C15: 0x867E, 0x9C1B: 0x9CC1, 0x9C1B: 0x9EA2, 0x9C25: 0x9CCF, 0x9C2D: 0x9CCD, 0x9C2E: 0x9CC1, 0x9C2E: 0x9EA2, 0x9C2F: 0x676B, 0x9C32: 0x9CCC, 0x9C39: 0x9CA3, 0x9C3A: 0x61C0, 0x9C3A: 0x9CB9, 0x9C3B: 0x9CD7, 0x9C3E: 0x9CD4, 0x9C48: 0x9CD5, 0x9C52: 0x9CDF, 0x9C57: 0x9CDE, 0x9C60: 0x9C99, 0x9C67: 0x9CE2, 0x9C78: 0x9C88, 0x9CE5: 0x9E1F, 0x9CE7: 0x51EB, 0x9CE9: 0x9E20, 0x9CEB: 0x96C1, 0x9CEC: 0x51EB, 0x9CF3: 0x51E4, 0x9CF4: 0x9E23, 0x9CF6: 0x9E22, 0x9D06: 0x9E29, 0x9D07: 0x9E28, 0x9D09: 0x9E26, 0x9D0E: 0x9E25, 0x9D12: 0x9E30, 0x9D15: 0x9E35, 0x9D1B: 0x9E33, 0x9D1F: 0x9E31, 0x9D23: 0x9E2A, 0x9D26: 0x9E2F, 0x9D28: 0x9E2D, 0x9D2A: 0x9D25, 0x9D2C: 0x83BA, 0x9D2C: 0x9E34, 0x9D3B: 0x9E3F, 0x9D3F: 0x9E3D, 0x9D44: 0x9E31, 0x9D50: 0x9373, 0x9D50: 0x9E40, 0x9D51: 0x9E43, 0x9D5C: 0x9E48, 0x9D5D: 0x9E45, 0x9D5E: 0x9E45, 0x9D60: 0x9E44, 0x9D61: 0x9E49, 0x9D6C: 0x9E4F, 0x9D6F: 0x9E4E, 0x9D72: 0x9E4A, 0x9D87: 0x9E2B, 0x9D89: 0x9E51, 0x9D8F: 0x9E21, 0x9D9A: 0x9E57, 0x9DA4: 0x9E4D, 0x9DA9: 0x9E5C, 0x9DAB: 0x99A4, 0x9DAF: 0x83BA, 0x9DB2: 0x9E5F, 0x9DB4: 0x9E64, 0x9DBA: 0x9E61, 0x9DBB: 0x9E58, 0x9DC1: 0x9E62, 0x9DC2: 0x9E5E, 0x9DC4: 0x9E21, 0x9DC6: 0x9DCF, 0x9DD3: 0x9E67, 0x9DD9: 0x9E37, 0x9DE6: 0x9E6A, 0x9DEF: 0x9E69, 0x9DF2: 0x9E6B, 0x9DF8: 0x9E6C, 0x9DF9: 0x9E70, 0x9DFA: 0x9E6D, 0x9E1A: 0x9E66, 0x9E1B: 0x9E73, 0x9E1E: 0x9E3E, 0x9E75: 0x5364, 0x9E78: 0x78B1, 0x9E79: 0x54B8, 0x9E7D: 0x76D0, 0x9E97: 0x4E3D, 0x9EA5: 0x9EA6, 0x9EA9: 0x9EB8, 0x9EAA: 0x9762, 0x9EB9: 0x66F2, 0x9EBA: 0x9762, 0x9EBC: 0x4E48, 0x9EBF: 0x7E3B, 0x9ECC: 0x9EC9, 0x9ED2: 0x9ED1, 0x9ED9: 0x9ED8, 0x9EDE: 0x70B9, 0x9EE8: 0x515A, 0x9EF4: 0x9709, 0x9EF6: 0x9EE1, 0x9EF7: 0x9EE9, 0x9EFD: 0x9EFE, 0x9F07: 0x9CCC, 0x9F08: 0x9CD6, 0x9F15: 0x51AC, 0x9F21: 0x9F20, 0x9F4A: 0x9F50, 0x9F4B: 0x658B, 0x9F4E: 0x8D4D, 0x9F4F: 0x9F51, 0x9F52: 0x9F7F, 0x9F54: 0x9F80, 0x9F5F: 0x9F83, 0x9F60: 0x9F86, 0x9F61: 0x9F84, 0x9F62: 0x9F84, 0x9F63: 0x51FA, 0x9F66: 0x9F88, 0x9F67: 0x556E, 0x9F6A: 0x9F8A, 0x9F6C: 0x9F89, 0x9F72: 0x9F8B, 0x9F76: 0x816D, 0x9F77: 0x9F8C, 0x9F8D: 0x9F99, 0x9F95: 0x9F9B, 0x9F9C: 0x9F9F, 0x9F9D: 0x79CB, 0xF929: 0x6717, 0xF9DC: 0x9686, 0xFA10: 0x51A2, 0xFA10: 0x585A, 0xFA11: 0x5D0E, 0xFA12: 0x6674, 0xFA14: 0x6989, 0xFA15: 0x51DE, 0xFA16: 0x732A, 0xFA16: 0x8C6C, 0xFA17: 0x76CA, 0xFA18: 0x793C, 0xFA19: 0x795E, 0xFA1A: 0x7965, 0xFA1B: 0x798F, 0xFA1C: 0x9756, 0xFA1D: 0x7CBE, 0xFA1E: 0x7FBD, 0xFA22: 0x8AF8, 0xFA22: 0x8BF8, 0xFA25: 0x9038, 0xFA26: 0x90FD, 0xFA29: 0x5C9B, 0xFA2A: 0x98EF, 0xFA2A: 0x996D, 0xFA2B: 0x98FC, 0xFA2B: 0x9972, 0xFA2C: 0x9928, 0xFA2C: 0x9986, 0xFA2D: 0x9DB4, 0xFA2D: 0x9E64, 0xFF61: 0x3002, 0xFF62: 0x300C, 0xFF63: 0x300D, 0xFF64: 0x3001, 0xFF65: 0xFF0E, 0xFF9E: 0x309B, 0xFF9F: 0x309C, } Chinese2Kanji_Table = { 0x4E13: 0x5C02, 0x4E1A: 0x696D, 0x4E1B: 0x53E2, 0x4E1C: 0x6771, 0x4E1D: 0x7D72, 0x4E24: 0x4E21, 0x4E25: 0x53B3, 0x4E27: 0x55AA, 0x4E30: 0x8C50, 0x4E34: 0x81E8, 0x4E3A: 0x70BA, 0x4E3D: 0x9E97, 0x4E3E: 0x6319, 0x4E49: 0x7FA9, 0x4E4C: 0x70CF, 0x4E50: 0x697D, 0x4E54: 0x55AC, 0x4E58: 0x4E57, 0x4E61: 0x90F7, 0x4E66: 0x66F8, 0x4E70: 0x8CB7, 0x4E71: 0x4E82, 0x4E82: 0x4E71, 0x4E85: 0x4E28, 0x4E9A: 0x4E9C, 0x4E9E: 0x4E9C, 0x4EA7: 0x7523, 0x4EA9: 0x755D, 0x4EB2: 0x89AA, 0x4EB5: 0x893B, 0x4EBF: 0x5104, 0x4EC5: 0x50C5, 0x4ED1: 0x4F96, 0x4ED3: 0x5009, 0x4EEA: 0x5100, 0x4EEC: 0x5011, 0x4EF7: 0x4FA1, 0x4EFF: 0x5023, 0x4F15: 0x592B, 0x4F17: 0x8846, 0x4F18: 0x512A, 0x4F1B: 0x50B4, 0x4F1E: 0x5098, 0x4F1F: 0x5049, 0x4F20: 0x4F1D, 0x4F21: 0x4FE5, 0x4F23: 0x4FD4, 0x4F24: 0x50B7, 0x4F26: 0x502B, 0x4F2A: 0x507D, 0x4F2B: 0x4F47, 0x4F48: 0x5E03, 0x4F5B: 0x4ECF, 0x4F63: 0x50AD, 0x4F65: 0x50C9, 0x4F86: 0x6765, 0x4FA5: 0x50E5, 0x4FA6: 0x5075, 0x4FA7: 0x5074, 0x4FA8: 0x50D1, 0x4FAA: 0x5115, 0x4FAC: 0x5102, 0x4FB7: 0x5C40, 0x4FC1: 0x4FE3, 0x4FDE: 0x516A, 0x4FE0: 0x4FA0, 0x4FE6: 0x5114, 0x4FE8: 0x513C, 0x4FE9: 0x5006, 0x4FEA: 0x5137, 0x4FEC: 0x79C1, 0x4FED: 0x5039, 0x4FF1: 0x5036, 0x5008: 0x71F5, 0x503A: 0x50B5, 0x503C: 0x5024, 0x503E: 0x50BE, 0x5047: 0x4EEE, 0x506A: 0x903C, 0x5077: 0x5078, 0x507B: 0x50C2, 0x507F: 0x511F, 0x50A2: 0x5BB6, 0x50A5: 0x513B, 0x50A8: 0x5132, 0x50A9: 0x513A, 0x50AF: 0x506C, 0x50E9: 0x50F4, 0x50F1: 0x96C7, 0x50F9: 0x4FA1, 0x5109: 0x5039, 0x5118: 0x4FAD, 0x5151: 0x514C, 0x5152: 0x5150, 0x5154: 0x514E, 0x5167: 0x5185, 0x5169: 0x4E21, 0x5170: 0x862D, 0x5173: 0x95A2, 0x5174: 0x8208, 0x517B: 0x990A, 0x517D: 0x7363, 0x518C: 0x518A, 0x519B: 0x8ECD, 0x519C: 0x8FB2, 0x51AF: 0x99AE, 0x51B0: 0x6C37, 0x51B1: 0x51B4, 0x51BB: 0x51CD, 0x51C0: 0x6D44, 0x51C8: 0x6D44, 0x51DC: 0x51DB, 0x51DE: 0xFA15, 0x51E4: 0x9CF3, 0x51EB: 0x9CEC, 0x51EF: 0x51F1, 0x51FB: 0x6483, 0x51FF: 0x947F, 0x5212: 0x5283, 0x5218: 0x5289, 0x5219: 0x5247, 0x521A: 0x525B, 0x521B: 0x5275, 0x5220: 0x522A, 0x5228: 0x924B, 0x522B: 0x5225, 0x522D: 0x5244, 0x5231: 0x524F, 0x5240: 0x5274, 0x5242: 0x5264, 0x524E: 0x5239, 0x5251: 0x5263, 0x525D: 0x5265, 0x5263: 0x6E76, 0x5267: 0x5287, 0x5269: 0x5270, 0x5284: 0x5273, 0x528D: 0x5263, 0x5291: 0x5264, 0x529D: 0x52E7, 0x52A1: 0x52D9, 0x52A8: 0x52D5, 0x52B2: 0x52C1, 0x52B3: 0x52B4, 0x52BF: 0x52E2, 0x52CB: 0x52F2, 0x52DE: 0x52B4, 0x52F2: 0x4F03, 0x52F3: 0x52F2, 0x52F5: 0x52B1, 0x52F8: 0x52E7, 0x52FB: 0x5300, 0x5308: 0x5302, 0x531A: 0x5338, 0x532E: 0x5331, 0x5340: 0x533A, 0x534E: 0x83EF, 0x534F: 0x5354, 0x5355: 0x5358, 0x5356: 0x58F2, 0x5361: 0x5CE0, 0x5362: 0x76E7, 0x5364: 0x9E75, 0x5367: 0x81E5, 0x536B: 0x885B, 0x5377: 0x5DFB, 0x5379: 0x6064, 0x537B: 0x5374, 0x5385: 0x5E81, 0x5386: 0x6B74, 0x5389: 0x53B2, 0x538C: 0x53AD, 0x5395: 0x53A0, 0x53A2: 0x9596, 0x53BF: 0x770C, 0x53C3: 0x53C2, 0x53C6: 0x9749, 0x53C7: 0x9746, 0x53D1: 0x767A, 0x53D8: 0x5909, 0x53E0: 0x7573, 0x53F9: 0x5606, 0x5412: 0x54A4, 0x541E: 0x5451, 0x5428: 0x5678, 0x5433: 0x5449, 0x5434: 0x5449, 0x5452: 0x5638, 0x5453: 0x56C8, 0x5455: 0x5614, 0x5457: 0x5504, 0x5458: 0x54E1, 0x545C: 0x55DA, 0x5492: 0x546A, 0x549B: 0x5680, 0x54CD: 0x97FF, 0x54D1: 0x5516, 0x54D7: 0x5629, 0x54DA: 0x9BCF, 0x5524: 0x559A, 0x5527: 0x559E, 0x555E: 0x5516, 0x555F: 0x5553, 0x5567: 0x5616, 0x556C: 0x55C7, 0x556D: 0x56C0, 0x556E: 0x565B, 0x5578: 0x562F, 0x55AE: 0x5358, 0x55B7: 0x5674, 0x55B9: 0x9B9F, 0x55BB: 0x55A9, 0x55EB: 0x56C1, 0x55F0: 0x74F1, 0x5624: 0x56B6, 0x5641: 0x60AA, 0x5653: 0x5618, 0x5699: 0x565B, 0x569F: 0x7667, 0x56A3: 0x56C2, 0x56B4: 0x53B3, 0x56CA: 0x56A2, 0x56D1: 0x5631, 0x56E2: 0x56E3, 0x56ED: 0x5712, 0x56F4: 0x56F2, 0x56FE: 0x56F3, 0x5706: 0x5713, 0x5708: 0x570F, 0x570B: 0x56FD, 0x570D: 0x56F2, 0x5716: 0x56F3, 0x5718: 0x56E3, 0x5723: 0x8056, 0x5739: 0x58D9, 0x573A: 0x5834, 0x5757: 0x584A, 0x575A: 0x5805, 0x575B: 0x58C7, 0x575E: 0x5862, 0x575F: 0x58B3, 0x5760: 0x589C, 0x576B: 0x5CBE, 0x5775: 0x4E18, 0x577B: 0x5CBB, 0x5784: 0x58DF, 0x5788: 0x60A7, 0x5792: 0x5841, 0x57A6: 0x58BE, 0x57C2: 0x5CFA, 0x57D2: 0x57D3, 0x57D8: 0x5852, 0x57DA: 0x581D, 0x5811: 0x5879, 0x582F: 0x5C2D, 0x589E: 0x5897, 0x58AE: 0x5815, 0x58B0: 0x7560, 0x58D3: 0x5727, 0x58D8: 0x5841, 0x58DE: 0x58CA, 0x58E4: 0x58CC, 0x58EF: 0x58EE, 0x58F3: 0x6BBB, 0x58F6: 0x58F7, 0x58F9: 0x58F1, 0x58FA: 0x58F7, 0x58FD: 0x5BFF, 0x5904: 0x51E6, 0x5907: 0x5099, 0x590A: 0x6535, 0x590D: 0x5FA9, 0x5934: 0x982D, 0x593A: 0x596A, 0x5941: 0x5969, 0x5942: 0x5950, 0x594B: 0x596E, 0x5956: 0x5968, 0x5967: 0x5965, 0x5969: 0x5333, 0x5986: 0x7CA7, 0x5987: 0x5A66, 0x5988: 0x5ABD, 0x5992: 0x59AC, 0x59AA: 0x5AD7, 0x59C9: 0x92F2, 0x59CA: 0x59C9, 0x59EC: 0x59EB, 0x5A04: 0x5A41, 0x5A07: 0x5B0C, 0x5A1B: 0x5A2F, 0x5A31: 0x5A2F, 0x5A34: 0x5AFB, 0x5A61: 0x60E3, 0x5A74: 0x5B30, 0x5A75: 0x5B0B, 0x5AAA: 0x5ABC, 0x5AB8: 0x599B, 0x5AD4: 0x5B2A, 0x5AFE: 0x88AE, 0x5B43: 0x5B22, 0x5B59: 0x5B6B, 0x5B78: 0x5B66, 0x5B81: 0x5BE7, 0x5B9E: 0x5B9F, 0x5BA0: 0x5BF5, 0x5BA1: 0x5BE9, 0x5BAA: 0x61B2, 0x5BBD: 0x5BDB, 0x5BBE: 0x8CD3, 0x5BC7: 0x51A6, 0x5BE2: 0x5BDD, 0x5BE6: 0x5B9F, 0x5BEB: 0x5199, 0x5BEC: 0x5BDB, 0x5BF6: 0x5B9D, 0x5BF9: 0x5BFE, 0x5BFB: 0x5C0B, 0x5BFC: 0x5C0E, 0x5C07: 0x5C06, 0x5C08: 0x5C02, 0x5C0D: 0x5BFE, 0x5C18: 0x5875, 0x5C1D: 0x5617, 0x5C27: 0x5C2D, 0x5C42: 0x5C64, 0x5C43: 0x5C53, 0x5C46: 0x5C4A, 0x5C5C: 0x7B39, 0x5C62: 0x5C61, 0x5C6C: 0x5C5E, 0x5C6D: 0x5C53, 0x5C7F: 0x5DBC, 0x5C81: 0x6B73, 0x5C96: 0x5D87, 0x5C97: 0x5D17, 0x5C9A: 0x5D50, 0x5C9B: 0x5CF6, 0x5CAD: 0x5CBA, 0x5CE3: 0x5DA2, 0x5CE5: 0x5D22, 0x5CE6: 0x5DD2, 0x5CEA: 0x7872, 0x5CF0: 0x5CEF, 0x5CFD: 0x5CE1, 0x5D19: 0x5D18, 0x5D2D: 0x5D84, 0x5D58: 0x5DB8, 0x5D68: 0x5D8B, 0x5DC5: 0x5DD3, 0x5DD4: 0x5DD3, 0x5DD6: 0x5DCC, 0x5DE0: 0x5759, 0x5DE2: 0x5DE3, 0x5DE9: 0x978F, 0x5E01: 0x5E63, 0x5E05: 0x5E25, 0x5E08: 0x5E2B, 0x5E0F: 0x5E43, 0x5E10: 0x5E33, 0x5E15: 0x7D48, 0x5E18: 0x7C3E, 0x5E1C: 0x5E5F, 0x5E26: 0x5E2F, 0x5E27: 0x5E40, 0x5E2E: 0x5E47, 0x5E36: 0x5E2F, 0x5E3C: 0x5E57, 0x5E6B: 0x5E47, 0x5E86: 0x6176, 0x5E90: 0x5EEC, 0x5E91: 0x5EE1, 0x5E93: 0x5EAB, 0x5E94: 0x5FDC, 0x5E99: 0x5EDF, 0x5E9F: 0x5EC3, 0x5EBD: 0x9942, 0x5EC1: 0x53A0, 0x5EC4: 0x53A9, 0x5EC8: 0x53A6, 0x5EDD: 0x53AE, 0x5EE2: 0x5EC3, 0x5EE3: 0x5E83, 0x5EEA: 0x5EE9, 0x5EF3: 0x5E81, 0x5F00: 0x958B, 0x5F02: 0x7570, 0x5F12: 0x5F11, 0x5F20: 0x5F35, 0x5F39: 0x5F3E, 0x5F3A: 0x5F37, 0x5F48: 0x5F3E, 0x5F4C: 0x5F25, 0x5F4E: 0x5F2F, 0x5F52: 0x5E30, 0x5F55: 0x9332, 0x5F5D: 0x5F5C, 0x5F65: 0x5F66, 0x5F7B: 0x5FB9, 0x5F91: 0x5F84, 0x5F95: 0x5FA0, 0x5F9E: 0x5F93, 0x5FB5: 0x5FB4, 0x5FB7: 0x5FB3, 0x5FC6: 0x61B6, 0x5FCF: 0x61F4, 0x5FE7: 0x6182, 0x5FFE: 0x613E, 0x6000: 0x61D0, 0x6001: 0x614B, 0x6003: 0x61AE, 0x6005: 0x60B5, 0x6006: 0x6134, 0x601C: 0x6190, 0x603B: 0x7DCF, 0x603F: 0x61CC, 0x6058: 0x6077, 0x6073: 0x61C7, 0x6076: 0x60AA, 0x6078: 0x615F, 0x607A: 0x6137, 0x607B: 0x60FB, 0x607C: 0x60A9, 0x607D: 0x60F2, 0x607F: 0x6142, 0x6080: 0x6111, 0x6085: 0x60A6, 0x60AB: 0x6128, 0x60AC: 0x61F8, 0x60AD: 0x6173, 0x60AF: 0x61AB, 0x60CA: 0x9A5A, 0x60E0: 0x6075, 0x60E1: 0x60AA, 0x60E9: 0x61F2, 0x60EB: 0x618A, 0x60ED: 0x615A, 0x60EE: 0x619A, 0x60EF: 0x6163, 0x60F1: 0x60A9, 0x6119: 0x9BF1, 0x6124: 0x61A4, 0x6151: 0x61FE, 0x6158: 0x60E8, 0x6164: 0x6128, 0x617C: 0x621A, 0x6191: 0x51ED, 0x61C0: 0x9C3A, 0x61C9: 0x5FDC, 0x61D2: 0x61F6, 0x61D4: 0x61CD, 0x61EE: 0x6182, 0x61F7: 0x61D0, 0x61FA: 0x61F4, 0x61FC: 0x60E7, 0x6200: 0x604B, 0x620B: 0x6214, 0x620F: 0x622F, 0x6218: 0x6226, 0x622E: 0x52E0, 0x6230: 0x6226, 0x6232: 0x622F, 0x6236: 0x6238, 0x623E: 0x623B, 0x6251: 0x64B2, 0x6267: 0x57F7, 0x6269: 0x62E1, 0x626A: 0x636B, 0x626B: 0x6383, 0x626C: 0x63DA, 0x6270: 0x64FE, 0x629A: 0x64AB, 0x629F: 0x6476, 0x62A2: 0x6436, 0x62A4: 0x8B77, 0x62A5: 0x5831, 0x62CB: 0x629B, 0x62D4: 0x629C, 0x62DC: 0x62DD, 0x62DF: 0x64EC, 0x62E3: 0x63C0, 0x62E5: 0x64C1, 0x62E8: 0x64A5, 0x62E9: 0x64C7, 0x631B: 0x6523, 0x631E: 0x64BB, 0x6320: 0x6493, 0x6324: 0x64E0, 0x6325: 0x63EE, 0x633E: 0x631F, 0x635E: 0x6488, 0x635F: 0x640D, 0x6362: 0x63DB, 0x6363: 0x64E3, 0x6374: 0x6460, 0x63B7: 0x64F2, 0x63D2: 0x633F, 0x63ED: 0x63B2, 0x63F8: 0x936E, 0x63FD: 0x652C, 0x6401: 0x64F1, 0x6405: 0x64B9, 0x6414: 0x63BB, 0x6416: 0x63FA, 0x641C: 0x635C, 0x6425: 0x6376, 0x6444: 0x6442, 0x6446: 0x64FA, 0x6447: 0x63FA, 0x6448: 0x64EF, 0x644A: 0x6524, 0x6451: 0x63B4, 0x6470: 0x646F, 0x64AF: 0x691A, 0x64C7: 0x629E, 0x64CA: 0x6483, 0x64D4: 0x62C5, 0x64E5: 0x5840, 0x64F4: 0x62E1, 0x6512: 0x6505, 0x651C: 0x643A, 0x6522: 0x6505, 0x652A: 0x64B9, 0x6536: 0x53CE, 0x6548: 0x52B9, 0x654C: 0x6575, 0x6555: 0x52C5, 0x6558: 0x53D9, 0x655B: 0x6B5B, 0x6578: 0x6570, 0x658B: 0x658E, 0x65A9: 0x65AC, 0x65B7: 0x65AD, 0x65DB: 0x65D9, 0x65F6: 0x6642, 0x65F7: 0x663F, 0x65F8: 0x6698, 0x6619: 0x66C7, 0x663A: 0x661E, 0x663E: 0x9855, 0x6649: 0x664B, 0x6653: 0x6681, 0x6654: 0x66C4, 0x6655: 0x6688, 0x6656: 0x6689, 0x665A: 0x6669, 0x665D: 0x663C, 0x6670: 0x6673, 0x6682: 0x66AB, 0x66A7: 0x66D6, 0x66A8: 0x66C1, 0x66B1: 0x6635, 0x66B3: 0x567A, 0x66C6: 0x66A6, 0x66C9: 0x6681, 0x66E0: 0x663F, 0x66EC: 0x6652, 0x6703: 0x4F1A, 0x6725: 0x73C9, 0x6735: 0x6736, 0x6740: 0x6BBA, 0x6742: 0x96D1, 0x6743: 0x6A29, 0x6768: 0x694A, 0x676B: 0x9C2F, 0x6781: 0x6975, 0x6784: 0x69CB, 0x679E: 0x6A05, 0x67A5: 0x6AEA, 0x67AA: 0x69CD, 0x67AB: 0x6953, 0x67CF: 0x6822, 0x67DB: 0x698A, 0x67DC: 0x6AC3, 0x67E0: 0x6AB8, 0x67E5: 0x67FB, 0x6805: 0x67F5, 0x6807: 0x6A19, 0x6808: 0x685F, 0x6809: 0x6ADB, 0x680A: 0x69DE, 0x680B: 0x68DF, 0x680E: 0x6AAA, 0x680F: 0x6B04, 0x6811: 0x6A39, 0x6837: 0x69D8, 0x683E: 0x6B12, 0x6860: 0x690F, 0x6861: 0x6A48, 0x6862: 0x6968, 0x6865: 0x6A4B, 0x6866: 0x67A0, 0x689D: 0x6761, 0x68C0: 0x691C, 0x68C2: 0x6AFA, 0x68E7: 0x685F, 0x68EC: 0x6926, 0x6964: 0x84AD, 0x6984: 0x6B16, 0x6986: 0x6961, 0x6988: 0x6ADA, 0x6993: 0x6AC1, 0x69A8: 0x643E, 0x69AE: 0x6804, 0x69D4: 0x69F9, 0x69DB: 0x6ABB, 0x69E8: 0x6901, 0x69F6: 0x6922, 0x6A02: 0x697D, 0x6A11: 0x6881, 0x6A13: 0x697C, 0x6A23: 0x69D8, 0x6A2F: 0x6AA3, 0x6A31: 0x685C, 0x6A36: 0x701E, 0x6A3A: 0x67A0, 0x6A62: 0x6955, 0x6A6B: 0x6A2A, 0x6A79: 0x6AD3, 0x6A7C: 0x6ADE, 0x6A94: 0x6863, 0x6A9C: 0x6867, 0x6AA2: 0x691C, 0x6AAE: 0x68BC, 0x6AB3: 0x68B9, 0x6ADF: 0x6AAA, 0x6AF1: 0x8616, 0x6AF3: 0x69DE, 0x6AF8: 0x6B05, 0x6AFB: 0x685C, 0x6B0A: 0x6A29, 0x6B1E: 0x6AFA, 0x6B22: 0x6B53, 0x6B24: 0x6B5F, 0x6B50: 0x6B27, 0x6B61: 0x6B53, 0x6B65: 0x6B69, 0x6B72: 0x6B73, 0x6B77: 0x6B74, 0x6B78: 0x5E30, 0x6B7C: 0x6BB1, 0x6B87: 0x6BA4, 0x6B92: 0x6B9E, 0x6B98: 0x6B8B, 0x6B9A: 0x6BAB, 0x6BA1: 0x6BAF, 0x6BAD: 0x50F5, 0x6BB2: 0x6BB1, 0x6BBC: 0x6BBB, 0x6BC1: 0x6BC0, 0x6BC2: 0x8F42, 0x6BC6: 0x6BB4, 0x6BCF: 0x6BCE, 0x6BD5: 0x7562, 0x6BD9: 0x6583, 0x6C23: 0x6C17, 0x6C49: 0x6F22, 0x6C61: 0x6C5A, 0x6C64: 0x6E6F, 0x6C92: 0x6CA1, 0x6C9F: 0x6E9D, 0x6CA6: 0x6DEA, 0x6CA7: 0x6EC4, 0x6CB5: 0x6FD4, 0x6CDE: 0x6FD8, 0x6CF7: 0x6EDD, 0x6CF8: 0x7018, 0x6CFB: 0x7009, 0x6CFC: 0x6E8C, 0x6CFD: 0x6CA2, 0x6CFE: 0x6D87, 0x6D01: 0x6F54, 0x6D3C: 0x7AAA, 0x6D43: 0x6D79, 0x6D47: 0x6F86, 0x6D4A: 0x6FC1, 0x6D4B: 0x6E2C, 0x6D4E: 0x6E08, 0x6D4F: 0x700F, 0x6D51: 0x6E3E, 0x6D52: 0x6EF8, 0x6D53: 0x6FC3, 0x6D54: 0x6F6F, 0x6D82: 0x5857, 0x6D89: 0x6E09, 0x6D99: 0x681E, 0x6D9E: 0x6764, 0x6D9F: 0x6F23, 0x6DA1: 0x6E26, 0x6DA3: 0x6E19, 0x6DA6: 0x6F64, 0x6DA7: 0x6F97, 0x6DA8: 0x6F32, 0x6DB1: 0x66BF, 0x6DDA: 0x6D99, 0x6DE8: 0x6D44, 0x6DFA: 0x6D45, 0x6E0D: 0x6F2C, 0x6E0E: 0x6D9C, 0x6E10: 0x6F38, 0x6E14: 0x6F01, 0x6E34: 0x6E07, 0x6E4C: 0x9910, 0x6E83: 0x6F70, 0x6E85: 0x6FFA, 0x6E89: 0x6F11, 0x6EAA: 0x6E13, 0x6EAB: 0x6E29, 0x6EAF: 0x9061, 0x6EE1: 0x6E80, 0x6EE2: 0x7005, 0x6EE4: 0x6FFE, 0x6EE5: 0x6FEB, 0x6EE8: 0x6D5C, 0x6EE9: 0x7058, 0x6EEF: 0x6EDE, 0x6EFF: 0x6E80, 0x6F47: 0x701F, 0x6F4B: 0x7032, 0x6F51: 0x6E8C, 0x6F5B: 0x6F5C, 0x6F80: 0x6E0B, 0x6F81: 0x8262, 0x6F9C: 0x703E, 0x6FA4: 0x6CA2, 0x6FD1: 0x702C, 0x6FD2: 0x7015, 0x6FD5: 0x6E7F, 0x6FDF: 0x6E08, 0x6FE4: 0x6D9B, 0x6FF1: 0x6D5C, 0x7006: 0x6D9C, 0x7028: 0x702C, 0x704C: 0x6F45, 0x7063: 0x6E7E, 0x706D: 0x6EC5, 0x7075: 0x970A, 0x7076: 0x7AC3, 0x707F: 0x71E6, 0x7080: 0x716C, 0x708B: 0x5788, 0x7096: 0x71C9, 0x70BC: 0x7149, 0x70BD: 0x71BE, 0x70C1: 0x720D, 0x70C2: 0x721B, 0x70DB: 0x71ED, 0x70E6: 0x7169, 0x70E7: 0x713C, 0x70E8: 0x71C1, 0x70EC: 0x71FC, 0x70ED: 0x71B1, 0x7115: 0x7165, 0x7118: 0x71FE, 0x7130: 0x7114, 0x718E: 0x8977, 0x71C4: 0x7114, 0x71D2: 0x713C, 0x71DF: 0x55B6, 0x7210: 0x7089, 0x722D: 0x4E89, 0x7231: 0x611B, 0x7237: 0x723A, 0x724D: 0x7258, 0x7275: 0x727D, 0x727A: 0x72A0, 0x7281: 0x7282, 0x728A: 0x72A2, 0x72A7: 0x72A0, 0x72B7: 0x7377, 0x72C0: 0x72B6, 0x72C8: 0x72FD, 0x72DE: 0x7370, 0x72EE: 0x7345, 0x72EF: 0x736A, 0x72F1: 0x7344, 0x72F9: 0x72ED, 0x730E: 0x731F, 0x734E: 0x5968, 0x7368: 0x72EC, 0x736D: 0x737A, 0x7375: 0x731F, 0x7378: 0x7363, 0x737B: 0x732E, 0x739B: 0x746A, 0x73AF: 0x74B0, 0x73B0: 0x73FE, 0x73BA: 0x74BD, 0x73D1: 0x74CF, 0x73F2: 0x743F, 0x740F: 0x7489, 0x7410: 0x7463, 0x743C: 0x74CA, 0x7464: 0x7476, 0x748E: 0x73F1, 0x74D4: 0x73F1, 0x74EF: 0x750C, 0x7522: 0x7523, 0x7535: 0x96FB, 0x7545: 0x66A2, 0x756B: 0x753B, 0x756C: 0x756D, 0x7576: 0x5F53, 0x7587: 0x7574, 0x758A: 0x7573, 0x7597: 0x7642, 0x75A0: 0x7658, 0x75A1: 0x760D, 0x75AE: 0x7621, 0x75AF: 0x760B, 0x75C3: 0x65E0, 0x75C8: 0x7670, 0x75E8: 0x7646, 0x75EB: 0x7647, 0x75F9: 0x75FA, 0x7618: 0x763B, 0x7626: 0x75E9, 0x763A: 0x763B, 0x765E: 0x7669, 0x7663: 0x766C, 0x7665: 0x75C7, 0x766B: 0x7672, 0x767C: 0x767A, 0x7682: 0x7680, 0x768B: 0x7690, 0x76B2: 0x76B8, 0x76CF: 0x76DE, 0x76D0: 0x5869, 0x76D1: 0x76E3, 0x76D8: 0x76E4, 0x76DC: 0x76D7, 0x76E1: 0x5C3D, 0x773E: 0x8846, 0x7751: 0x77BC, 0x776A: 0x777E, 0x7786: 0x77B6, 0x7792: 0x779E, 0x77A9: 0x77DA, 0x77EB: 0x77EF, 0x77F6: 0x78EF, 0x77FF: 0x9271, 0x7801: 0x78BC, 0x7816: 0x750E, 0x781A: 0x786F, 0x783E: 0x792B, 0x7855: 0x78A9, 0x7856: 0x7864, 0x7857: 0x78FD, 0x786E: 0x78BA, 0x7877: 0x9E78, 0x788E: 0x7815, 0x789B: 0x78E7, 0x78CC: 0x78B5, 0x78DA: 0x750E, 0x7906: 0x9E78, 0x7919: 0x788D, 0x7926: 0x9271, 0x792A: 0x783A, 0x7936: 0x91E5, 0x796F: 0x798E, 0x7978: 0x798D, 0x797F: 0x7984, 0x79AA: 0x7985, 0x79AE: 0x793C, 0x79B0: 0x7962, 0x79B1: 0x7977, 0x79BB: 0x96E2, 0x79C3: 0x79BF, 0x79CD: 0x7A2E, 0x79EF: 0x7A4D, 0x79FD: 0x7A62, 0x7A05: 0x7A0E, 0x7A1F: 0x7980, 0x7A31: 0x79F0, 0x7A33: 0x7A4F, 0x7A3B: 0x7A32, 0x7A51: 0x7A61, 0x7A57: 0x7A42, 0x7A69: 0x7A4F, 0x7A70: 0x7A63, 0x7A77: 0x7AAE, 0x7A8D: 0x7AC5, 0x7A91: 0x7AAF, 0x7A97: 0x7A93, 0x7A9C: 0x7AC4, 0x7A9D: 0x7AA9, 0x7AA5: 0x7ABA, 0x7AA6: 0x7AC7, 0x7ACA: 0x7A83, 0x7AD6: 0x7AEA, 0x7ADE: 0x7AF6, 0x7B03: 0x7BE4, 0x7B14: 0x7B46, 0x7B15: 0x7B67, 0x7B3A: 0x7B8B, 0x7B3C: 0x7BED, 0x7B4D: 0x7B0B, 0x7B50: 0x7B7A, 0x7B5A: 0x7BF3, 0x7B5B: 0x7BE9, 0x7B79: 0x7C4C, 0x7B80: 0x7C21, 0x7B8F: 0x7B5D, 0x7BA6: 0x7C00, 0x7BA7: 0x7BCB, 0x7BAB: 0x7C2B, 0x7BD1: 0x7C23, 0x7BD3: 0x7C0D, 0x7BE1: 0x7C12, 0x7BE6: 0x7B86, 0x7BEE: 0x7C43, 0x7BF1: 0x7C6C, 0x7C11: 0x7C14, 0x7C1E: 0x7BAA, 0x7C60: 0x7BED, 0x7C64: 0x7C56, 0x7C72: 0x5401, 0x7C7B: 0x985E, 0x7C9D: 0x7CF2, 0x7CAA: 0x7CDE, 0x7CAE: 0x7CE7, 0x7CB5: 0x7CA4, 0x7CB8: 0x9348, 0x7CDD: 0x7CC2, 0x7CED: 0x9277, 0x7CF0: 0x56E3, 0x7CF5: 0x4FE4, 0x7D27: 0x7DCA, 0x7D55: 0x7D76, 0x7D93: 0x7D4C, 0x7DA0: 0x7DD1, 0x7DD1: 0x68B6, 0x7DE3: 0x7E01, 0x7DFE: 0x6130, 0x7E23: 0x770C, 0x7E31: 0x7E26, 0x7E3B: 0x9EBF, 0x7E3D: 0x7DCF, 0x7E48: 0x7E66, 0x7E61: 0x7E4D, 0x7E65: 0x9C0A, 0x7E69: 0x7E04, 0x7E6A: 0x7D75, 0x7E6B: 0x7E4B, 0x7E7C: 0x7D99, 0x7E8A: 0x7D4B, 0x7E8C: 0x7D9A, 0x7E96: 0x7E4A, 0x7E98: 0x7E89, 0x7EA0: 0x7CFE, 0x7EA1: 0x7D06, 0x7EA2: 0x7D05, 0x7EA3: 0x7D02, 0x7EA4: 0x7E4A, 0x7EA6: 0x7D04, 0x7EA7: 0x7D1A, 0x7EA9: 0x7D4B, 0x7EAA: 0x7D00, 0x7EAC: 0x7DEF, 0x7EAD: 0x7D1C, 0x7EAE: 0x7D18, 0x7EAF: 0x7D14, 0x7EB0: 0x7D15, 0x7EB1: 0x7D17, 0x7EB2: 0x7DB1, 0x7EB3: 0x7D0D, 0x7EB5: 0x7E26, 0x7EB6: 0x7DB8, 0x7EB7: 0x7D1B, 0x7EB9: 0x7D0B, 0x7EBA: 0x7D21, 0x7EBB: 0x7D35, 0x7EBF: 0x7DDA, 0x7EC0: 0x7D3A, 0x7EC1: 0x7D32, 0x7EC3: 0x7DF4, 0x7EC4: 0x7D44, 0x7EC5: 0x7D33, 0x7EC6: 0x7D30, 0x7EC7: 0x7E54, 0x7EC8: 0x7D42, 0x7ECA: 0x7D46, 0x7ECD: 0x7D39, 0x7ECE: 0x7E79, 0x7ECF: 0x7D4C, 0x7ED0: 0x7D3F, 0x7ED2: 0x7D68, 0x7ED3: 0x7D50, 0x7ED5: 0x7E5E, 0x7ED7: 0x7D4E, 0x7ED8: 0x7D75, 0x7ED9: 0x7D66, 0x7EDA: 0x7D62, 0x7EDB: 0x7D73, 0x7EDC: 0x7D61, 0x7EDD: 0x7D76, 0x7EDE: 0x7D5E, 0x7EDF: 0x7D71, 0x7EE2: 0x7D79, 0x7EE3: 0x7D89, 0x7EE5: 0x7D8F, 0x7EE6: 0x7D5B, 0x7EE7: 0x7D99, 0x7EE9: 0x7E3E, 0x7EEA: 0x7DD2, 0x7EEB: 0x7DBE, 0x7EED: 0x7D9A, 0x7EEE: 0x7DBA, 0x7EEF: 0x7DCB, 0x7EF0: 0x7DBD, 0x7EF3: 0x7E04, 0x7EF4: 0x7DAD, 0x7EF5: 0x7DBF, 0x7EF6: 0x7DAC, 0x7EF7: 0x7E43, 0x7EF8: 0x7DA2, 0x7EF9: 0x7DAF, 0x7EFB: 0x7DA3, 0x7EFC: 0x7D9C, 0x7EFD: 0x7DBB, 0x7EFE: 0x7DB0, 0x7EFF: 0x7DD1, 0x7F00: 0x7DB4, 0x7F01: 0x7DC7, 0x7F04: 0x7DD8, 0x7F05: 0x7DEC, 0x7F06: 0x7E9C, 0x7F08: 0x7DF2, 0x7F09: 0x7DDD, 0x7F0E: 0x7DDE, 0x7F12: 0x7E0B, 0x7F13: 0x7DE9, 0x7F14: 0x7DE0, 0x7F15: 0x7E37, 0x7F16: 0x7DE8, 0x7F17: 0x7DE1, 0x7F18: 0x7E01, 0x7F19: 0x7E09, 0x7F1A: 0x7E1B, 0x7F1B: 0x7E1F, 0x7F1D: 0x7E2B, 0x7F1F: 0x7E1E, 0x7F20: 0x7E8F, 0x7F22: 0x7E0A, 0x7F24: 0x7E7D, 0x7F25: 0x7E39, 0x7F26: 0x7E35, 0x7F27: 0x7E32, 0x7F28: 0x7E93, 0x7F29: 0x7E2E, 0x7F2A: 0x7E46, 0x7F2C: 0x7E88, 0x7F2D: 0x7E5A, 0x7F2E: 0x7E55, 0x7F2F: 0x7E52, 0x7F32: 0x7E70, 0x7F35: 0x7E89, 0x7F3D: 0x9262, 0x7F48: 0x58DC, 0x7F57: 0x7F85, 0x7F5A: 0x7F70, 0x7F62: 0x7F77, 0x7F74: 0x7F86, 0x7F81: 0x7F88, 0x7FB9: 0x7FAE, 0x7FD8: 0x7FF9, 0x8042: 0x8076, 0x804B: 0x807E, 0x804C: 0x8077, 0x804D: 0x8079, 0x8054: 0x806F, 0x805B: 0x923C, 0x806A: 0x8061, 0x8070: 0x8061, 0x8072: 0x58F0, 0x807D: 0x8074, 0x8083: 0x7C9B, 0x8085: 0x7C9B, 0x8089: 0x5B8D, 0x80A0: 0x8178, 0x80A4: 0x819A, 0x80BE: 0x814E, 0x80BF: 0x816B, 0x80C0: 0x8139, 0x80C1: 0x8107, 0x80DC: 0x52DD, 0x80E7: 0x6727, 0x80EA: 0x81DA, 0x80EB: 0x811B, 0x80F6: 0x81A0, 0x810D: 0x81BE, 0x8110: 0x81CD, 0x8111: 0x8133, 0x8113: 0x81BF, 0x8114: 0x81E0, 0x812B: 0x8131, 0x8138: 0x81C9, 0x814A: 0x81D8, 0x8158: 0x8195, 0x8166: 0x8133, 0x8173: 0x811A, 0x817B: 0x81A9, 0x817C: 0x9766, 0x817D: 0x8183, 0x817E: 0x9A30, 0x81BB: 0x7FB6, 0x81BD: 0x80C6, 0x81DF: 0x81D3, 0x8206: 0x8F3F, 0x8209: 0x6319, 0x820A: 0x65E7, 0x820D: 0x820E, 0x8216: 0x8217, 0x8223: 0x8264, 0x8230: 0x8266, 0x8231: 0x8259, 0x823B: 0x826B, 0x8270: 0x8271, 0x8273: 0x8276, 0x8277: 0x8276, 0x827A: 0x85DD, 0x8282: 0x7BC0, 0x8284: 0x7B02, 0x829C: 0x856A, 0x82C7: 0x8466, 0x82CC: 0x8407, 0x82CD: 0x84BC, 0x82CE: 0x82E7, 0x82CF: 0x8607, 0x830F: 0x8622, 0x8311: 0x8526, 0x8314: 0x584B, 0x8327: 0x7E6D, 0x8354: 0x8318, 0x835B: 0x8558, 0x835E: 0x854E, 0x835F: 0x8588, 0x8360: 0x85BA, 0x8361: 0x8569, 0x8363: 0x6804, 0x8364: 0x8477, 0x8368: 0x8541, 0x836B: 0x852D, 0x836F: 0x85AC, 0x837F: 0x7B6C, 0x838A: 0x8358, 0x8396: 0x830E, 0x83B2: 0x84EE, 0x83B3: 0x8494, 0x83B7: 0x7372, 0x83B8: 0x8362, 0x83B9: 0x7469, 0x83BA: 0x9D2C, 0x83BC: 0x84F4, 0x83CE: 0x7B86, 0x83E1: 0x839F, 0x83E4: 0x7B9E, 0x840A: 0x83B1, 0x8416: 0x4F39, 0x841D: 0x863F, 0x8421: 0x549C, 0x8424: 0x86CD, 0x8425: 0x55B6, 0x8427: 0x856D, 0x8428: 0x85A9, 0x8457: 0x7740, 0x8492: 0x9B97, 0x8493: 0x84F4, 0x849E: 0x6D96, 0x84CB: 0x76D6, 0x84DD: 0x85CD, 0x84DF: 0x858A, 0x84E3: 0x8577, 0x84E6: 0x9A40, 0x84E8: 0x84DA, 0x8523: 0x848B, 0x8525: 0x8471, 0x8537: 0x8594, 0x853A: 0x85FA, 0x853C: 0x85F9, 0x8574: 0x860A, 0x85B0: 0x85AB, 0x85CF: 0x8535, 0x85D3: 0x861A, 0x85D6: 0x6282, 0x85E5: 0x85AC, 0x85EA: 0x85AE, 0x8606: 0x82A6, 0x860D: 0x7AD3, 0x864F: 0x865C, 0x8651: 0x616E, 0x8655: 0x51E6, 0x865B: 0x865A, 0x865F: 0x53F7, 0x867D: 0x96D6, 0x867E: 0x8766, 0x8680: 0x8755, 0x8681: 0x87FB, 0x86CA: 0x8831, 0x86CD: 0x4FE5, 0x86CF: 0x87F6, 0x8721: 0x874B, 0x8747: 0x877F, 0x8766: 0x86EF, 0x877C: 0x87BB, 0x877E: 0x8811, 0x87A2: 0x86CD, 0x87EC: 0x8749, 0x8805: 0x877F, 0x881F: 0x874B, 0x8823: 0x86CE, 0x8839: 0x8827, 0x883B: 0x86EE, 0x8845: 0x91C1, 0x8854: 0x929C, 0x8865: 0x88DC, 0x886C: 0x896F, 0x8884: 0x8956, 0x889C: 0x896A, 0x88AD: 0x8972, 0x88C6: 0x8960, 0x88C8: 0x890C, 0x88DD: 0x88C5, 0x8902: 0x88BF, 0x891B: 0x8938, 0x8932: 0x88B4, 0x8934: 0x8964, 0x894C: 0x891D, 0x8955: 0x8974, 0x89BA: 0x899A, 0x89BD: 0x89A7, 0x89C0: 0x89B3, 0x89C1: 0x898B, 0x89C2: 0x89B3, 0x89C4: 0x898F, 0x89C5: 0x8993, 0x89C6: 0x8996, 0x89C7: 0x8998, 0x89C8: 0x89A7, 0x89C9: 0x899A, 0x89CA: 0x89AC, 0x89CB: 0x89A1, 0x89CC: 0x89BF, 0x89CE: 0x89A6, 0x89CF: 0x89AF, 0x89D0: 0x89B2, 0x89D4: 0x7B4B, 0x89DE: 0x89F4, 0x89E5: 0x4F8A, 0x8A1A: 0x8ABE, 0x8A8A: 0x8B04, 0x8AAA: 0x8AAC, 0x8AEB: 0x8ACC, 0x8B20: 0x8B21, 0x8B54: 0x64B0, 0x8B56: 0x8B5B, 0x8B6D: 0x6BC0, 0x8B6F: 0x8A33, 0x8B7D: 0x8A89, 0x8B80: 0x8AAD, 0x8B8A: 0x5909, 0x8B93: 0x8B72, 0x8B9A: 0x8B83, 0x8BA1: 0x8A08, 0x8BA2: 0x8A02, 0x8BA3: 0x8A03, 0x8BA4: 0x8A8D, 0x8BA5: 0x8B4F, 0x8BA6: 0x8A10, 0x8BA7: 0x8A0C, 0x8BA8: 0x8A0E, 0x8BA9: 0x8B93, 0x8BAB: 0x8A16, 0x8BAC: 0x8A17, 0x8BAD: 0x8A13, 0x8BAE: 0x8B70, 0x8BAF: 0x8A0A, 0x8BB0: 0x8A18, 0x8BB1: 0x8A12, 0x8BB2: 0x8B1B, 0x8BB3: 0x8AF1, 0x8BB4: 0x8B33, 0x8BB6: 0x8A1D, 0x8BB7: 0x8A25, 0x8BB8: 0x8A31, 0x8BB9: 0x8A1B, 0x8BBA: 0x8AD6, 0x8BBC: 0x8A1F, 0x8BBD: 0x8AF7, 0x8BBE: 0x8A2D, 0x8BBF: 0x8A2A, 0x8BC0: 0x8A23, 0x8BC1: 0x8A3C, 0x8BC2: 0x8A41, 0x8BC3: 0x8A36, 0x8BC4: 0x8A55, 0x8BC5: 0x8A5B, 0x8BC6: 0x8B58, 0x8BC8: 0x8A50, 0x8BC9: 0x8A34, 0x8BCA: 0x8A3A, 0x8BCB: 0x8A46, 0x8BCD: 0x8A5E, 0x8BCF: 0x8A54, 0x8BD1: 0x8A33, 0x8BD2: 0x8A52, 0x8BD4: 0x8A84, 0x8BD5: 0x8A66, 0x8BD7: 0x8A69, 0x8BD8: 0x8A70, 0x8BD9: 0x8A7C, 0x8BDA: 0x8AA0, 0x8BDB: 0x8A85, 0x8BDD: 0x8A71, 0x8BDE: 0x8A95, 0x8BDF: 0x8A6C, 0x8BE0: 0x8A6E, 0x8BE1: 0x8A6D, 0x8BE2: 0x8A62, 0x8BE3: 0x8A63, 0x8BE4: 0x8ACD, 0x8BE5: 0x8A72, 0x8BE6: 0x8A73, 0x8BE7: 0x8A6B, 0x8BE8: 0x8AE2, 0x8BEB: 0x8AA1, 0x8BEC: 0x8AA3, 0x8BED: 0x8A9E, 0x8BEE: 0x8A9A, 0x8BEF: 0x8AA4, 0x8BF0: 0x8AA5, 0x8BF1: 0x8A98, 0x8BF2: 0x8AA8, 0x8BF3: 0x8A91, 0x8BF4: 0x8AAC, 0x8BF5: 0x8AA6, 0x8BF6: 0x7E67, 0x8BF7: 0x8ACB, 0x8BF8: 0x8AF8, 0x8BF9: 0x8ACF, 0x8BFA: 0x8AFE, 0x8BFB: 0x8AAD, 0x8BFD: 0x8AB9, 0x8BFE: 0x8AB2, 0x8C00: 0x8ADB, 0x8C01: 0x8AB0, 0x8C03: 0x8ABF, 0x8C04: 0x8AC2, 0x8C05: 0x8AD2, 0x8C06: 0x8AC4, 0x8C08: 0x8AC7, 0x8C0A: 0x8ABC, 0x8C0B: 0x8B00, 0x8C0C: 0x8AF6, 0x8C0D: 0x8ADC, 0x8C0F: 0x8ACC, 0x8C10: 0x8AE7, 0x8C11: 0x8B14, 0x8C12: 0x8B01, 0x8C13: 0x8B02, 0x8C14: 0x8AE4, 0x8C15: 0x8AED, 0x8C17: 0x8B92, 0x8C18: 0x8AEE, 0x8C19: 0x8AF3, 0x8C1A: 0x8AFA, 0x8C1B: 0x8AE6, 0x8C1C: 0x8B0E, 0x8C1D: 0x8ADE, 0x8C1F: 0x8B28, 0x8C21: 0x8B16, 0x8C22: 0x8B1D, 0x8C23: 0x8B21, 0x8C24: 0x8B17, 0x8C25: 0x8B1A, 0x8C26: 0x8B19, 0x8C27: 0x8B10, 0x8C28: 0x8B39, 0x8C29: 0x8B3E, 0x8C2A: 0x8B2B, 0x8C2C: 0x8B2C, 0x8C2D: 0x8B5A, 0x8C2E: 0x8B5B, 0x8C31: 0x8B5C, 0x8C32: 0x8B4E, 0x8C34: 0x8B74, 0x8C35: 0x8B6B, 0x8C36: 0x8B96, 0x8C4E: 0x7AEA, 0x8C54: 0x8276, 0x8C6C: 0xFA16, 0x8C7A: 0x72B2, 0x8C89: 0x72E2, 0x8C92: 0x732F, 0x8C93: 0x732B, 0x8C98: 0x734F, 0x8CB3: 0x5F10, 0x8CE3: 0x58F2, 0x8CE4: 0x8CCE, 0x8CF4: 0x983C, 0x8CF8: 0x5270, 0x8D0A: 0x8CDB, 0x8D13: 0x8CCD, 0x8D17: 0x8D0B, 0x8D1D: 0x8C9D, 0x8D1E: 0x8C9E, 0x8D1F: 0x8CA0, 0x8D21: 0x8CA2, 0x8D23: 0x8CAC, 0x8D24: 0x8CE2, 0x8D25: 0x6557, 0x8D27: 0x8CA8, 0x8D28: 0x8CEA, 0x8D29: 0x8CA9, 0x8D2A: 0x8CAA, 0x8D2B: 0x8CA7, 0x8D2C: 0x8CB6, 0x8D2D: 0x8CFC, 0x8D2E: 0x8CAF, 0x8D2F: 0x8CAB, 0x8D30: 0x8CB3, 0x8D31: 0x8CCE, 0x8D32: 0x8CC1, 0x8D33: 0x8CB0, 0x8D34: 0x8CBC, 0x8D35: 0x8CB4, 0x8D37: 0x8CB8, 0x8D38: 0x8CBF, 0x8D39: 0x8CBB, 0x8D3A: 0x8CC0, 0x8D3B: 0x8CBD, 0x8D3C: 0x8CCA, 0x8D3D: 0x8D04, 0x8D3E: 0x8CC8, 0x8D3F: 0x8CC4, 0x8D40: 0x8CB2, 0x8D41: 0x8CC3, 0x8D42: 0x8CC2, 0x8D43: 0x8CCD, 0x8D44: 0x8CC7, 0x8D46: 0x8D10, 0x8D48: 0x8CD1, 0x8D49: 0x8CDA, 0x8D4B: 0x8CE6, 0x8D4C: 0x8CED, 0x8D4E: 0x8D16, 0x8D4F: 0x8CDE, 0x8D50: 0x8CDC, 0x8D51: 0x8D14, 0x8D56: 0x983C, 0x8D58: 0x8D05, 0x8D59: 0x8CFB, 0x8D5A: 0x8CFA, 0x8D5B: 0x8CFD, 0x8D5D: 0x8D0B, 0x8D5E: 0x8CDB, 0x8D5F: 0x8D07, 0x8D60: 0x8D08, 0x8D61: 0x8D0D, 0x8D8B: 0x8DA8, 0x8D95: 0x8D76, 0x8DC3: 0x8E8D, 0x8DC4: 0x8E4C, 0x8DF8: 0x8E55, 0x8DFB: 0x8E8B, 0x8E0C: 0x8E8A, 0x8E10: 0x8DF5, 0x8E2C: 0x8E93, 0x8E2F: 0x8E91, 0x8E34: 0x8E0A, 0x8E51: 0x8EA1, 0x8E52: 0x8E63, 0x8E64: 0x8E2A, 0x8E75: 0x9B83, 0x8E8F: 0x8EAA, 0x8EB2: 0x8EB1, 0x8EC0: 0x8EAF, 0x8EC6: 0x9E95, 0x8F15: 0x8EFD, 0x8F1B: 0x8F0C, 0x8F49: 0x8EE2, 0x8F66: 0x8ECA, 0x8F67: 0x8ECB, 0x8F68: 0x8ECC, 0x8F69: 0x8ED2, 0x8F6C: 0x8EE2, 0x8F6D: 0x8EDB, 0x8F6E: 0x8F2A, 0x8F6F: 0x8EDF, 0x8F70: 0x8F5F, 0x8F72: 0x8EFB, 0x8F73: 0x8F64, 0x8F74: 0x8EF8, 0x8F76: 0x8EFC, 0x8F78: 0x8EEB, 0x8F79: 0x8F62, 0x8F7B: 0x8EFD, 0x8F7C: 0x8EFE, 0x8F7D: 0x8F09, 0x8F7E: 0x8F0A, 0x8F7F: 0x8F4E, 0x8F82: 0x8F05, 0x8F83: 0x8F03, 0x8F84: 0x8F12, 0x8F85: 0x8F14, 0x8F86: 0x8F0C, 0x8F87: 0x8F26, 0x8F88: 0x8F29, 0x8F89: 0x8F1D, 0x8F8D: 0x8F1F, 0x8F8E: 0x8F1C, 0x8F8F: 0x8F33, 0x8F90: 0x8F3B, 0x8F91: 0x8F2F, 0x8F93: 0x8F38, 0x8F94: 0x8F61, 0x8F95: 0x8F45, 0x8F96: 0x8F44, 0x8F97: 0x8F3E, 0x8F98: 0x8F46, 0x8F99: 0x8F4D, 0x8FA9: 0x8FAF, 0x8FAB: 0x8FAE, 0x8FAD: 0x8F9E, 0x8FB9: 0x908A, 0x8FBD: 0x907C, 0x8FBE: 0x9054, 0x8FC1: 0x9077, 0x8FC7: 0x904E, 0x8FC8: 0x9081, 0x8FD0: 0x904B, 0x8FD9: 0x9019, 0x8FDB: 0x9032, 0x8FDC: 0x9060, 0x8FDE: 0x9023, 0x8FDF: 0x9045, 0x8FEA: 0x5EF8, 0x8FF3: 0x9015, 0x8FF4: 0x5EFB, 0x8FFA: 0x5EFC, 0x9002: 0x9069, 0x9009: 0x9078, 0x900A: 0x905C, 0x9012: 0x9013, 0x903B: 0x908F, 0x9057: 0x907A, 0x9059: 0x9065, 0x905E: 0x9013, 0x9072: 0x9045, 0x9087: 0x8FE9, 0x908A: 0x8FBA, 0x9093: 0x9127, 0x90AE: 0x90F5, 0x90B9: 0x9112, 0x90BB: 0x96A3, 0x90D1: 0x912D, 0x90F8: 0x9132, 0x9109: 0x90F7, 0x9115: 0x90F7, 0x9130: 0x96A3, 0x9166: 0x9197, 0x9171: 0x91A4, 0x917F: 0x91C0, 0x91AB: 0x533B, 0x91AC: 0x91A4, 0x91B1: 0x9197, 0x91C0: 0x91B8, 0x91CA: 0x91C8, 0x91CB: 0x91C8, 0x9246: 0x945A, 0x9264: 0x920E, 0x9274: 0x9451, 0x92AE: 0x947E, 0x92B3: 0x92ED, 0x9304: 0x9332, 0x9322: 0x92AD, 0x933E: 0x93E8, 0x934A: 0x932C, 0x9350: 0x9441, 0x9373: 0x9D50, 0x93D3: 0x57AA, 0x93FD: 0x92B9, 0x9435: 0x9244, 0x9444: 0x92F3, 0x947D: 0x945A, 0x9489: 0x91D8, 0x948A: 0x91D7, 0x948F: 0x91E7, 0x9490: 0x91E4, 0x9493: 0x91E3, 0x9497: 0x91F5, 0x949C: 0x9245, 0x949D: 0x920D, 0x949E: 0x9214, 0x949F: 0x9418, 0x94A2: 0x92FC, 0x94A3: 0x9211, 0x94A4: 0x9210, 0x94A5: 0x9470, 0x94A6: 0x6B3D, 0x94A7: 0x921E, 0x94A9: 0x920E, 0x94AE: 0x9215, 0x94B0: 0x923A, 0x94B1: 0x92AD, 0x94B2: 0x9266, 0x94B3: 0x9257, 0x94B4: 0x9237, 0x94B5: 0x9262, 0x94BA: 0x925E, 0x94BB: 0x945A, 0x94BE: 0x9240, 0x94BF: 0x923F, 0x94C1: 0x9244, 0x94C2: 0x9251, 0x94C3: 0x9234, 0x94C4: 0x9460, 0x94C5: 0x925B, 0x94C6: 0x925A, 0x94C9: 0x9249, 0x94CA: 0x9248, 0x94CD: 0x9239, 0x94CE: 0x9438, 0x94D3: 0x92E9, 0x94D4: 0x941A, 0x94D7: 0x92CF, 0x94D9: 0x9403, 0x94DB: 0x943A, 0x94DC: 0x9285, 0x94E0: 0x93A7, 0x94E2: 0x9296, 0x94E3: 0x9291, 0x94E6: 0x929B, 0x94E8: 0x9293, 0x94EB: 0x929A, 0x94ED: 0x9298, 0x94EE: 0x931A, 0x94F0: 0x9278, 0x94F3: 0x9283, 0x94F6: 0x9280, 0x94F8: 0x92F3, 0x94FB: 0x92D9, 0x94FE: 0x93C8, 0x94FF: 0x93D7, 0x9500: 0x92B7, 0x9501: 0x9396, 0x9504: 0x92E4, 0x9505: 0x934B, 0x9508: 0x92B9, 0x950B: 0x92D2, 0x9510: 0x92ED, 0x9516: 0x9306, 0x9519: 0x932F, 0x951A: 0x9328, 0x951C: 0x9321, 0x9521: 0x932B, 0x9522: 0x932E, 0x9523: 0x947C, 0x9524: 0x9318, 0x9525: 0x9310, 0x9526: 0x9326, 0x952D: 0x9320, 0x952E: 0x9375, 0x952F: 0x92F8, 0x9531: 0x9319, 0x9533: 0x9348, 0x9535: 0x93D8, 0x9537: 0x9354, 0x9539: 0x936C, 0x953A: 0x937E, 0x953B: 0x935B, 0x953D: 0x9360, 0x953E: 0x9370, 0x9540: 0x934D, 0x9542: 0x93E4, 0x9547: 0x93AE, 0x954A: 0x9477, 0x954C: 0x942B, 0x9550: 0x93AC, 0x9552: 0x93B0, 0x9555: 0x9394, 0x9558: 0x93DD, 0x955B: 0x93DE, 0x955C: 0x93E1, 0x955D: 0x93D1, 0x955E: 0x93C3, 0x9560: 0x93D0, 0x9561: 0x9414, 0x9563: 0x9410, 0x9566: 0x9413, 0x956B: 0x9419, 0x956E: 0x9436, 0x9574: 0x945E, 0x957F: 0x9577, 0x95B1: 0x95B2, 0x95DC: 0x95A2, 0x95E8: 0x9580, 0x95E9: 0x9582, 0x95ED: 0x9589, 0x95EE: 0x554F, 0x95EF: 0x95D6, 0x95F0: 0x958F, 0x95F2: 0x9591, 0x95F4: 0x9593, 0x95F5: 0x9594, 0x95F7: 0x60B6, 0x95F8: 0x9598, 0x95F9: 0x9B27, 0x95FA: 0x95A8, 0x95FB: 0x805E, 0x95FC: 0x95E5, 0x95FE: 0x95AD, 0x9600: 0x95A5, 0x9601: 0x95A3, 0x9604: 0x9B2E, 0x9605: 0x95B2, 0x9607: 0x95CD, 0x9608: 0x95BE, 0x9609: 0x95B9, 0x960B: 0x9B29, 0x960E: 0x95BB, 0x960F: 0x95BC, 0x9610: 0x95E1, 0x9611: 0x95CC, 0x9612: 0x95C3, 0x9614: 0x95CA, 0x9616: 0x95D4, 0x9619: 0x95D5, 0x961F: 0x968A, 0x9631: 0x7A7D, 0x9633: 0x967D, 0x9634: 0x9670, 0x9635: 0x9663, 0x9636: 0x968E, 0x9645: 0x969B, 0x9646: 0x9678, 0x9647: 0x96B4, 0x9648: 0x9673, 0x9655: 0x965C, 0x9668: 0x9695, 0x9669: 0x967A, 0x9677: 0x9665, 0x9690: 0x96A0, 0x96AA: 0x967A, 0x96B1: 0x96A0, 0x96B6: 0x96B7, 0x96B8: 0x96B7, 0x96BD: 0x96CB, 0x96BE: 0x96E3, 0x96CF: 0x96DB, 0x96D9: 0x53CC, 0x96DC: 0x96D1, 0x96DE: 0x9D8F, 0x96F3: 0x9742, 0x96FE: 0x9727, 0x9701: 0x973D, 0x972D: 0x9744, 0x9738: 0x8987, 0x9748: 0x970A, 0x975C: 0x9759, 0x9765: 0x9768, 0x9791: 0x97C3, 0x97CC: 0x976D, 0x97E6: 0x97CB, 0x97E7: 0x976D, 0x97E9: 0x97D3, 0x97EC: 0x97DC, 0x97ED: 0x97EE, 0x9830: 0x982C, 0x9838: 0x981A, 0x9839: 0x983D, 0x984F: 0x9854, 0x986F: 0x9855, 0x9875: 0x9801, 0x9876: 0x9802, 0x9877: 0x9803, 0x9879: 0x9805, 0x987A: 0x9806, 0x987D: 0x9811, 0x987E: 0x9867, 0x987F: 0x9813, 0x9881: 0x9812, 0x9882: 0x980C, 0x9883: 0x980F, 0x9884: 0x9810, 0x9885: 0x9871, 0x9886: 0x9818, 0x9887: 0x9817, 0x9888: 0x981A, 0x9889: 0x9821, 0x988A: 0x982C, 0x988D: 0x6F41, 0x9890: 0x9824, 0x9891: 0x983B, 0x9893: 0x983D, 0x9894: 0x9837, 0x9896: 0x7A4E, 0x9897: 0x9846, 0x9898: 0x984C, 0x989A: 0x984E, 0x989C: 0x9854, 0x989D: 0x984D, 0x989E: 0x9873, 0x98A0: 0x985B, 0x98A2: 0x9865, 0x98A4: 0x986B, 0x98A6: 0x9870, 0x98A7: 0x9874, 0x98CE: 0x98A8, 0x98D2: 0x98AF, 0x98D3: 0x98B6, 0x98D8: 0x98C4, 0x98D9: 0x98C6, 0x98E7: 0x55B0, 0x98E8: 0x9957, 0x98F1: 0x9910, 0x991A: 0x80B4, 0x9937: 0x5056, 0x9938: 0x75C3, 0x9965: 0x98E2, 0x9968: 0x98E9, 0x996B: 0x98EB, 0x996C: 0x98ED, 0x996D: 0x98EF, 0x996E: 0x98F2, 0x996F: 0x991E, 0x9970: 0x98FE, 0x9971: 0x98FD, 0x9972: 0x98FC, 0x9974: 0x98F4, 0x9975: 0x990C, 0x9976: 0x9952, 0x9977: 0x9909, 0x997C: 0x9905, 0x997F: 0x9913, 0x9980: 0x9918, 0x9981: 0x9912, 0x9985: 0x9921, 0x9986: 0x9928, 0x9988: 0x994B, 0x998F: 0x993E, 0x9991: 0x9949, 0x9992: 0x9945, 0x9994: 0x994C, 0x99A4: 0x9DAB, 0x99AA: 0x8F5C, 0x99B1: 0x99C4, 0x99E0: 0x97B4, 0x9A26: 0x70BB, 0x9A2D: 0x96B2, 0x9A37: 0x9A12, 0x9A45: 0x99C6, 0x9A52: 0x9A28, 0x9A57: 0x9A13, 0x9A5B: 0x99C5, 0x9A6C: 0x99AC, 0x9A6D: 0x99AD, 0x9A6E: 0x99C4, 0x9A6F: 0x99B4, 0x9A70: 0x99B3, 0x9A71: 0x99C6, 0x9A73: 0x99C1, 0x9A74: 0x9A62, 0x9A76: 0x99DB, 0x9A77: 0x99DF, 0x9A79: 0x99D2, 0x9A7B: 0x99D0, 0x9A7C: 0x99DD, 0x9A7D: 0x99D1, 0x9A7E: 0x99D5, 0x9A7F: 0x99C5, 0x9A80: 0x99D8, 0x9A81: 0x9A4D, 0x9A82: 0x7F75, 0x9A84: 0x9A55, 0x9A86: 0x99F1, 0x9A87: 0x99ED, 0x9A88: 0x99E2, 0x9A8A: 0x9A6A, 0x9A8B: 0x9A01, 0x9A8C: 0x9A13, 0x9A8E: 0x99F8, 0x9A8F: 0x99FF, 0x9A90: 0x9A0F, 0x9A93: 0x9A05, 0x9A96: 0x9A42, 0x9A97: 0x9A19, 0x9A98: 0x96B2, 0x9A9A: 0x9A12, 0x9A9E: 0x9A2B, 0x9AA0: 0x9A43, 0x9AA1: 0x9A3E, 0x9AA4: 0x9A5F, 0x9AA5: 0x9A65, 0x9AA7: 0x9A64, 0x9AC5: 0x9ACF, 0x9AD3: 0x9AC4, 0x9AEE: 0x9AEA, 0x9B04: 0x9AE2, 0x9B13: 0x9B22, 0x9B25: 0x95D8, 0x9B47: 0x9B58, 0x9B49: 0x9B4E, 0x9BC7: 0x9C00, 0x9C0D: 0x9C0C, 0x9C49: 0x9F08, 0x9C77: 0x9C10, 0x9C7C: 0x9B5A, 0x9C82: 0x9B74, 0x9C87: 0x9B8E, 0x9C8A: 0x9B93, 0x9C8B: 0x9B92, 0x9C8D: 0x9B91, 0x9C91: 0x9BAD, 0x9C94: 0x9BAA, 0x9C99: 0x9C60, 0x9C9B: 0x9BAB, 0x9C9C: 0x9BAE, 0x9CA3: 0x9C39, 0x9CA4: 0x9BC9, 0x9CA7: 0x9BC0, 0x9CA8: 0x9BCA, 0x9CAD: 0x9BD6, 0x9CB1: 0x9BE1, 0x9CB2: 0x9BE4, 0x9CB5: 0x9BE2, 0x9CB6: 0x9BF0, 0x9CB7: 0x9BDB, 0x9CB8: 0x9BE8, 0x9CBB: 0x9BD4, 0x9CBD: 0x9C08, 0x9CC3: 0x9C13, 0x9CC4: 0x9C10, 0x9CC5: 0x9C0D, 0x9CC6: 0x9C12, 0x9CC7: 0x9C09, 0x9CCC: 0x9C32, 0x9CCD: 0x9C2D, 0x9CCF: 0x9C25, 0x9CD4: 0x9C3E, 0x9CD5: 0x9C48, 0x9CD7: 0x9C3B, 0x9CD9: 0x6A2B, 0x9CDE: 0x9C57, 0x9CDF: 0x9C52, 0x9CE2: 0x9C67, 0x9CE7: 0x9CEC, 0x9D25: 0x9D2A, 0x9DAF: 0x9D2C, 0x9DD4: 0x7C7E, 0x9DD7: 0x9D0E, 0x9E1F: 0x9CE5, 0x9E20: 0x9CE9, 0x9E21: 0x9D8F, 0x9E22: 0x9CF6, 0x9E23: 0x9CF4, 0x9E25: 0x9D0E, 0x9E26: 0x9D09, 0x9E28: 0x9D07, 0x9E29: 0x9D06, 0x9E2A: 0x9D23, 0x9E2B: 0x9D87, 0x9E2D: 0x9D28, 0x9E2F: 0x9D26, 0x9E30: 0x9D12, 0x9E31: 0x9D1F, 0x9E33: 0x9D1B, 0x9E34: 0x9DFD, 0x9E35: 0x9D15, 0x9E37: 0x9DD9, 0x9E3D: 0x9D3F, 0x9E3E: 0x9E1E, 0x9E3F: 0x9D3B, 0x9E43: 0x9D51, 0x9E44: 0x9D60, 0x9E45: 0x9D5D, 0x9E48: 0x9D5C, 0x9E49: 0x9D61, 0x9E4A: 0x9D72, 0x9E4D: 0x9DA4, 0x9E4E: 0x9D6F, 0x9E4F: 0x9D6C, 0x9E51: 0x9D89, 0x9E57: 0x9D9A, 0x9E58: 0x9DBB, 0x9E5C: 0x9DA9, 0x9E5E: 0x9DC2, 0x9E5F: 0x9DB2, 0x9E61: 0x9DBA, 0x9E62: 0x9DC1, 0x9E64: 0x9DB4, 0x9E66: 0x9E1A, 0x9E67: 0x9DD3, 0x9E69: 0x9DEF, 0x9E6A: 0x9DE6, 0x9E6B: 0x9DF2, 0x9E6C: 0x9DF8, 0x9E6D: 0x9DFA, 0x9E70: 0x9DF9, 0x9E73: 0x9E1B, 0x9E7C: 0x9E78, 0x9E7D: 0x5869, 0x9EA2: 0x9C1B, 0x9EA5: 0x9EA6, 0x9EA9: 0x9EB8, 0x9EB4: 0x9EB9, 0x9EB5: 0x9EBA, 0x9EBD: 0x6A0C, 0x9EC3: 0x9EC4, 0x9EC9: 0x9ECC, 0x9ED1: 0x9ED2, 0x9ED8: 0x9ED9, 0x9EDE: 0x70B9, 0x9EE9: 0x9EF7, 0x9EFE: 0x9EFD, 0x9F4A: 0x6589, 0x9F4B: 0x658E, 0x9F4F: 0x97F2, 0x9F50: 0x6589, 0x9F51: 0x9F4F, 0x9F52: 0x6B6F, 0x9F61: 0x9F62, 0x9F7F: 0x6B6F, 0x9F80: 0x9F54, 0x9F83: 0x9F5F, 0x9F84: 0x9F62, 0x9F86: 0x9F60, 0x9F88: 0x9F66, 0x9F89: 0x9F6C, 0x9F8A: 0x9F6A, 0x9F8B: 0x9F72, 0x9F8C: 0x9F77, 0x9F8D: 0x7ADC, 0x9F99: 0x7ADC, 0x9F9B: 0x9F95, 0x9F9C: 0x4E80, 0x9F9F: 0x4E80, } def default_error_handler(char, e): return char def empty_error_handler(char, e): return '' def null_error_handler(char, e): return char def raise_error_handler(char, e): raise e def converter(text, table, errors=None): if errors is None: errors = default_error_handler assert errors is None or callable(errors) ret = [UEMPTY] * len(text) for i, char in enumerate(text): try: ret[i] = chr(table[ord(char)]) except KeyError as e: ret[i] = errors(char, e) return UEMPTY.join(ret) # some characters are not in SHIFT_JIS for k in (0x805B, 0x607A, 0x607D, 0x6080, 0x6374, 0x83B8, 0x83E4, 0x8416, 0x8421, 0x849E, 0x663A, 0x6670, 0x7118, 0x9BC7, 0x6725, 0x6862, 0x89E5, 0x8A1A, 0x8BB1, 0x8C0C, 0x8C6C, 0x6CFE, 0x8D95, 0x6DB1, 0x4E85, 0x6EE2, 0x9093, 0x70E8, 0x50E9, 0x51DE, 0x72B7, 0x52F2, 0x52FB, 0x5389, 0x740F, 0x948A, 0x9490, 0x94A4, 0x94B0, 0x94BE, 0x94C2, 0x94F0, 0x94FB, 0x951C, 0x9533, 0x953E, 0x955B, 0x7856, 0x98A2, 0x7936, 0x9A26, 0x5CAD, 0x7CB8, 0x94CD, 0x7CED, 0x5D58, 0x5DE0, 0x7DFE, 0x5E15, 0x7F2F): del Chinese2Kanji_Table[k] if '__main__' == __name__: import unittest class ConverterTest(unittest.TestCase): def toU(self, s): return s.decode('utf8') if py2 else s def testSimpTrad(self): s1 = self.toU('优酷视频下载的Python') s2 = self.toU('優酷視頻下載的Python') self.assertEqual( converter(s1, Simp2Trad_Table, null_error_handler), s2) self.assertEqual( converter(s2, Trad2Simp_Table, null_error_handler), s1) def testSimpKanji(self): s1 = self.toU('从优酷网站上下载flv或mp4格式的视频文件') s2 = self.toU('从優酷网站上下載flv或mp4格式的視頻文件') self.assertEqual(converter(s1, Chinese2Kanji_Table), s2) self.assertEqual(converter(s2, Kanji2Simp_Table), s1) def testTradKanji(self): s1 = self.toU('mp4格式的視頻文件(包括分段視頻的拼接)') self.assertEqual( converter(s1, Chinese2Kanji_Table, empty_error_handler), self.toU('')) self.assertEqual(converter(s1, Chinese2Kanji_Table), s1) self.assertEqual(converter(s1, Kanji2Trad_Table), s1) # out = [] # for k, v in Chinese2Kanji_Table.items(): # try: # bytes(chr(v), 'SHIFT-JIS') # except: # out.append('0x%X' % k) # print(', '.join(out)) unittest.main() ================================================ FILE: utils/gezi/zhtools/langconv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- import six if six.PY2: import sys reload(sys) # Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入 sys.setdefaultencoding('utf-8') from copy import deepcopy import re try: import psyco psyco.full() except: pass try: from zh_wiki import zh2Hant, zh2Hans except ImportError: from gezi.zhtools.zh_wiki import zh2Hant, zh2Hans import sys py3k = sys.version_info >= (3, 0, 0) if py3k: UEMPTY = '' else: _zh2Hant, _zh2Hans = {}, {} for old, new in ((zh2Hant, _zh2Hant), (zh2Hans, _zh2Hans)): for k, v in old.items(): new[k.decode('utf8')] = v.decode('utf8') zh2Hant = _zh2Hant zh2Hans = _zh2Hans UEMPTY = ''.decode('utf8') # states (START, END, FAIL, WAIT_TAIL) = list(range(4)) # conditions (TAIL, ERROR, MATCHED_SWITCH, UNMATCHED_SWITCH, CONNECTOR) = list(range(5)) MAPS = {} class Node(object): def __init__(self, from_word, to_word=None, is_tail=True, have_child=False): self.from_word = from_word if to_word is None: self.to_word = from_word self.data = (is_tail, have_child, from_word) self.is_original = True else: self.to_word = to_word or from_word self.data = (is_tail, have_child, to_word) self.is_original = False self.is_tail = is_tail self.have_child = have_child def is_original_long_word(self): return self.is_original and len(self.from_word)>1 def is_follow(self, chars): return chars != self.from_word[:-1] def __str__(self): return '' % (repr(self.from_word), repr(self.to_word), self.is_tail, self.have_child) __repr__ = __str__ class ConvertMap(object): def __init__(self, name, mapping=None): self.name = name self._map = {} if mapping: self.set_convert_map(mapping) def set_convert_map(self, mapping): convert_map = {} have_child = {} max_key_length = 0 for key in sorted(mapping.keys()): if len(key)>1: for i in range(1, len(key)): parent_key = key[:i] have_child[parent_key] = True have_child[key] = False max_key_length = max(max_key_length, len(key)) for key in sorted(have_child.keys()): convert_map[key] = (key in mapping, have_child[key], mapping.get(key, UEMPTY)) self._map = convert_map self.max_key_length = max_key_length def __getitem__(self, k): try: is_tail, have_child, to_word = self._map[k] return Node(k, to_word, is_tail, have_child) except: return Node(k) def __contains__(self, k): return k in self._map def __len__(self): return len(self._map) class StatesMachineException(Exception): pass class StatesMachine(object): def __init__(self): self.state = START self.final = UEMPTY self.len = 0 self.pool = UEMPTY def clone(self, pool): new = deepcopy(self) new.state = WAIT_TAIL new.pool = pool return new def feed(self, char, map): node = map[self.pool+char] if node.have_child: if node.is_tail: if node.is_original: cond = UNMATCHED_SWITCH else: cond = MATCHED_SWITCH else: cond = CONNECTOR else: if node.is_tail: cond = TAIL else: cond = ERROR new = None if cond == ERROR: self.state = FAIL elif cond == TAIL: if self.state == WAIT_TAIL and node.is_original_long_word(): self.state = FAIL else: self.final += node.to_word self.len += 1 self.pool = UEMPTY self.state = END elif self.state == START or self.state == WAIT_TAIL: if cond == MATCHED_SWITCH: new = self.clone(node.from_word) self.final += node.to_word self.len += 1 self.state = END self.pool = UEMPTY elif cond == UNMATCHED_SWITCH or cond == CONNECTOR: if self.state == START: new = self.clone(node.from_word) self.final += node.to_word self.len += 1 self.state = END else: if node.is_follow(self.pool): self.state = FAIL else: self.pool = node.from_word elif self.state == END: # END is a new START self.state = START new = self.feed(char, map) elif self.state == FAIL: raise StatesMachineException('Translate States Machine ' 'have error with input data %s' % node) return new def __len__(self): return self.len + 1 def __str__(self): return '' % ( id(self), self.pool, self.state, self.final) __repr__ = __str__ class Converter(object): def __init__(self, to_encoding): self.to_encoding = to_encoding self.map = MAPS[to_encoding] self.start() def feed(self, char): branches = [] for fsm in self.machines: new = fsm.feed(char, self.map) if new: branches.append(new) if branches: self.machines.extend(branches) self.machines = [fsm for fsm in self.machines if fsm.state != FAIL] all_ok = True for fsm in self.machines: if fsm.state != END: all_ok = False if all_ok: self._clean() return self.get_result() def _clean(self): if len(self.machines): self.machines.sort(key=lambda x: len(x)) # self.machines.sort(cmp=lambda x,y: cmp(len(x), len(y))) self.final += self.machines[0].final self.machines = [StatesMachine()] def start(self): self.machines = [StatesMachine()] self.final = UEMPTY def end(self): self.machines = [fsm for fsm in self.machines if fsm.state == FAIL or fsm.state == END] self._clean() def convert(self, string): self.start() for char in string: self.feed(char) self.end() return self.get_result() def get_result(self): return self.final def registery(name, mapping): global MAPS MAPS[name] = ConvertMap(name, mapping) registery('zh-hant', zh2Hant) registery('zh-hans', zh2Hans) del zh2Hant, zh2Hans def run(): import sys from optparse import OptionParser parser = OptionParser() parser.add_option('-e', type='string', dest='encoding', help='encoding') parser.add_option('-f', type='string', dest='file_in', help='input file (- for stdin)') parser.add_option('-t', type='string', dest='file_out', help='output file') (options, args) = parser.parse_args() if not options.encoding: parser.error('encoding must be set') if options.file_in: if options.file_in == '-': file_in = sys.stdin else: file_in = open(options.file_in) else: file_in = sys.stdin if options.file_out: if options.file_out == '-': file_out = sys.stdout else: file_out = open(options.file_out, 'wb') else: file_out = sys.stdout c = Converter(options.encoding) for line in file_in: # print >> file_out, c.convert(line.rstrip('\n').decode( file_out.write(c.convert(line.rstrip('\n').decode( 'utf8')).encode('utf8')) if __name__ == '__main__': run() ================================================ FILE: utils/gezi/zhtools/test_langconv.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- from unittest import TestCase from langconv import * class ConvertMapTest(TestCase): def test_map(self): mapping = {'a': 'b', 'b': 'a', 'abc': 'cba', 'cb': 'bb'} cm = ConvertMap('test', mapping) self.assertEqual(len(cm), 6) # with switch node: 'ab' and 'c' self.failUnless('a' in cm) self.failUnless('c' in cm) self.failIf('bc' in cm) self.assertEqual(cm['a'].data, (True, True, 'b')) self.assertEqual(cm['b'].data, (True, False, 'a')) self.assertEqual(cm['c'].data, (False, True, '')) self.assertEqual(cm['ab'].data, (False, True, '')) self.assertEqual(cm['abc'].data, (True, False, 'cba')) self.assertEqual(cm['cb'].data, (True, False, 'bb')) class ConverterModelTest(TestCase): def test_1(self): registery('rev', {'a': 'c', 'c': 'a'}) c = Converter('rev') c.feed('a') self.assertEqual(c.get_result(), 'c') c.feed('b') self.assertEqual(c.get_result(), 'cb') c.feed('c') self.assertEqual(c.get_result(), 'cba') def test_2(self): registery('2', {'b': 'a', 'ab': 'ab'}) c = Converter('2') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('b') self.assertEqual(c.get_result(), 'ab') def test_3(self): registery('3', {'a': 'b', 'ab': 'ba'}) c = Converter('3') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('b') self.assertEqual(c.get_result(), 'ba') c.feed('a') self.assertEqual(c.get_result(), 'ba') c.feed('c') self.assertEqual(c.get_result(), 'babc') def test_4(self): registery('4', {'ab': 'ba'}) c = Converter('4') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('b') self.assertEqual(c.get_result(), 'ba') c.feed('a') self.assertEqual(c.get_result(), 'ba') c.feed('c') self.assertEqual(c.get_result(), 'baac') def test_5(self): registery('5', {'ab': 'ba'}) c = Converter('5') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('b') self.assertEqual(c.get_result(), 'aba') def test_6(self): registery('6', {'abc': 'cba'}) c = Converter('6') c.feed('a') c.feed('b') self.assertEqual(c.get_result(), '') c.feed('c') self.assertEqual(c.get_result(), 'cba') c.feed('a') c.feed('b') self.assertEqual(c.get_result(), 'cba') c.feed('b') self.assertEqual(c.get_result(), 'cbaabb') def test_7(self): registery('7', {'abc': 'cba', 'bc': 'cb'}) c = Converter('7') c.feed('a') c.feed('b') self.assertEqual(c.get_result(), '') c.feed('c') self.assertEqual(c.get_result(), 'cba') c.feed('a') self.assertEqual(c.get_result(), 'cba') c.feed('') self.assertEqual(c.get_result(), 'cbaa') def test_8(self): registery('8', {'abc': 'cba', 'ab': 'ba'}) c = Converter('8') c.feed('a') c.feed('b') self.assertEqual(c.get_result(), '') c.feed('c') self.assertEqual(c.get_result(), 'cba') c.feed('a') self.assertEqual(c.get_result(), 'cba') c.feed('b') self.assertEqual(c.get_result(), 'cba') c.feed('b') self.assertEqual(c.get_result(), 'cbabab') def test_9(self): registery('9', {'bx': 'dx', 'c': 'e', 'cy': 'cy'}) c = Converter('9') c.feed('a') self.assertEqual(c.get_result(), 'a') c.feed('b') self.assertEqual(c.get_result(), 'a') c.feed('c') self.assertEqual(c.get_result(), 'a') c.end() self.assertEqual(c.get_result(), 'abe') def test_10(self): registery('10', {'a': 'd', 'b': 'e', 'ab': 'cd', 'by': 'yy'}) c = Converter('10') c.feed('a') self.assertEqual(c.get_result(), '') c.feed('b') self.assertEqual(c.get_result(), '') c.feed('c') c.end() self.assertEqual(c.get_result(), 'cdc') class ConverterTest(TestCase): def assertConvert(self, name, string, converted): c = Converter(name) new = c.convert(string) assert new == converted, ( "convert(%s, '%s') should return '%s' but '%s'" % ( repr(name), string, converted, new)).encode('utf8') def assertST(self, trad, simp): if not py3k: trad = trad.decode('utf-8') simp = simp.decode('utf-8') self.assertConvert('zh-hans', trad, simp) self.assertConvert('zh-hant', simp, trad) def test_zh1(self): self.assertST('乾燥', '干燥') self.assertST('乾坤', '乾坤') self.assertST('乾隆', '乾隆') self.assertST('幹事', '干事') self.assertST('牛肉乾', '牛肉干') self.assertST('相干', '相干') def test_zh2(self): self.assertST('印表機', '打印机') self.assertST('說明檔案', '帮助文件') def test_zh3(self): self.assertST('頭髮', '头发') self.assertST('頭髮和', '头发和') self.assertST('發生', '发生') self.assertST('頭髮和發生', '头发和发生') def test_zh4(self): self.assertST('著名', '著名') self.assertST('覆蓋', '覆盖') self.assertST('翻來覆去', '翻来覆去') self.assertST('獃獃', '呆呆') self.assertST('獃住', '呆住') self.assertST('壁畫', '壁画') self.assertST('畫面', '画面') self.assertST('顯著', '显著') self.assertST('土著人', '土著人') self.assertST('長春鹼', '长春碱') self.assertST('嘌呤鹼', '嘌呤碱') self.assertST('嘧啶鹼', '嘧啶碱') if '__main__' == __name__: import unittest unittest.main() ================================================ FILE: utils/gezi/zhtools/xpinyin.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- """Translate chinese hanzi to pinyin by python Created by Eric Lo on 2010-05-20. Copyright (c) 2010 __lxneng@gmail.com__. http://lxneng.com All rights reserved. """ """ Forked by skydarkchen """ import os.path try: chr = unichr except NameError: pass VERSION = '0.3a' class Pinyin(object): """translate chinese hanzi to pinyin by python, inspired by flyerhzm’s `chinese\_pinyin`_ gem .. _chinese\_pinyin: https://github.com/flyerhzm/chinese_pinyin usage(python3) ----- :: >>> p = Pinyin() >>> p.get_pinyin("上海") 'shanghai' >>> p.get_pinyin("上海", tone=True) 'shang4hai3' >>> p.get_initials("上") 'S' >>> print(''.join(p.py2hz('shang4'))) 丄上姠尙尚蠰銄鑜 >>> print(''.join(p.py2hz('a'))) 吖腌錒锕阿嗄阿阿啊阿 """ data_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), \ 'Mandarin.dat') def __init__(self): self.dict = {} self.revdict = {} for line in open(self.data_path): k, v = line.strip().split('\t') v = v.lower().split(' ') hz = chr(int('0x%s' % k, 16)) self.dict[hz] = v for vkey in v: self.revdict.setdefault(vkey, []) self.revdict[vkey].append(hz) def py2hz(self, pinyin): if pinyin == '': return [] pinyin = pinyin.lower() if pinyin[-1].isdigit(): return self.revdict.get(pinyin, []) ret = [] for i in range(1, 6): key = '%s%s' % (pinyin, i) ret += self.revdict.get(key, []) return ret def get_pinyin(self, chars='', splitter='', tone=False): result = [] for char in chars: v = self.dict.get(char, None) if v: v = v[0] if not tone and v[-1].isdigit(): v = v[:-1] else: v = char result.append(v) return splitter.join(result) def get_initials(self, char=''): if char == '': return '' return self.dict.get(char, [char])[0][0].upper() if __name__ == '__main__': import unittest class PinyinTestCase(unittest.TestCase): def setUp(self): import sys py = sys.version_info self.py3k = py >= (3, 0, 0) self.py = Pinyin() def to_unicode(self, s): if self.py3k: return s return s.decode('utf-8') def test_get_pinyin(self): ## test method names begin 'test*' s = self.to_unicode('上A2#海') a = self.to_unicode('shangA2#hai') aa = self.to_unicode('shang4A2#hai3') aaa = self.to_unicode('shang A 2 # hai') self.assertEqual(self.py.get_pinyin(s), a) self.assertEqual(self.py.get_pinyin(s, tone=True), aa) self.assertEqual(self.py.get_pinyin(s, splitter=' '), aaa) def test_get_initials(self): s = self.to_unicode('上') a = self.to_unicode('S') self.assertEqual(self.py.get_initials(s), a) def test_py2hz(self): s1 = self.to_unicode('shang4') s2 = self.to_unicode('a') a1 = self.to_unicode('丄上姠尙尚蠰銄鑜') a2 = self.to_unicode('吖腌錒锕阿嗄阿阿啊阿') self.assertEqual(''.join(self.py.py2hz(s1)), a1) self.assertEqual(''.join(self.py.py2hz(s2)), a2) unittest.main() ================================================ FILE: utils/gezi/zhtools/zh_wiki.py ================================================ # -*- coding: utf-8 -*- # copy fom wikipedia zh2Hant = { '呆': '獃', "打印机": "印表機", '帮助文件': '說明檔案', "画": "畫", "龙": "竜", "板": "板", "表": "表", "才": "才", "丑": "醜", "出": "出", "淀": "澱", "冬": "冬", "范": "範", "丰": "豐", "刮": "刮", "后": "後", "胡": "胡", "回": "回", "伙": "夥", "姜": "薑", "借": "借", "克": "克", "困": "困", "漓": "漓", "里": "里", "帘": "簾", "霉": "霉", "面": "面", "蔑": "蔑", "千": "千", "秋": "秋", "松": "松", "咸": "咸", "向": "向", "余": "餘", "郁": "鬱", "御": "御", "愿": "願", "云": "雲", "芸": "芸", "沄": "沄", "致": "致", "制": "制", "朱": "朱", "筑": "築", "准": "準", "厂": "廠", "广": "廣", "辟": "闢", "别": "別", "卜": "卜", "沈": "沈", "冲": "沖", "种": "種", "虫": "蟲", "担": "擔", "党": "黨", "斗": "鬥", "儿": "兒", "干": "乾", "谷": "谷", "柜": "櫃", "合": "合", "划": "劃", "坏": "壞", "几": "幾", "系": "系", "家": "家", "价": "價", "据": "據", "卷": "捲", "适": "適", "蜡": "蠟", "腊": "臘", "了": "了", "累": "累", "么": "麽", "蒙": "蒙", "万": "萬", "宁": "寧", "朴": "樸", "苹": "蘋", "仆": "僕", "曲": "曲", "确": "確", "舍": "舍", "胜": "勝", "术": "術", "台": "台", "体": "體", "涂": "塗", "叶": "葉", "吁": "吁", "旋": "旋", "佣": "傭", "与": "與", "折": "折", "征": "徵", "症": "症", "恶": "惡", "发": "發", "复": "復", "汇": "匯", "获": "獲", "饥": "飢", "尽": "盡", "历": "歷", "卤": "滷", "弥": "彌", "签": "簽", "纤": "纖", "苏": "蘇", "坛": "壇", "团": "團", "须": "須", "脏": "臟", "只": "只", "钟": "鐘", "药": "藥", "同": "同", "志": "志", "杯": "杯", "岳": "岳", "布": "布", "当": "當", "吊": "弔", "仇": "仇", "蕴": "蘊", "线": "線", "为": "為", "产": "產", "众": "眾", "伪": "偽", "凫": "鳧", "厕": "廁", "启": "啟", "墙": "牆", "壳": "殼", "奖": "獎", "妫": "媯", "并": "並", "录": "錄", "悫": "愨", "极": "極", "沩": "溈", "瘘": "瘺", "硷": "鹼", "竖": "豎", "绝": "絕", "绣": "繡", "绦": "絛", "绱": "緔", "绷": "綳", "绿": "綠", "缰": "韁", "苧": "苎", "莼": "蒓", "说": "說", "谣": "謠", "谫": "譾", "赃": "贓", "赍": "齎", "赝": "贗", "酝": "醞", "采": "採", "钩": "鉤", "钵": "缽", "锈": "銹", "锐": "銳", "锨": "杴", "镌": "鐫", "镢": "钁", "阅": "閱", "颓": "頹", "颜": "顏", "骂": "罵", "鲇": "鯰", "鲞": "鯗", "鳄": "鱷", "鸡": "雞", "鹚": "鶿", "荡": "盪", "锤": "錘", "㟆": "㠏", "㛟": "𡞵", "专": "專", "业": "業", "丛": "叢", "东": "東", "丝": "絲", "丢": "丟", "两": "兩", "严": "嚴", "丧": "喪", "个": "個", "临": "臨", "丽": "麗", "举": "舉", "义": "義", "乌": "烏", "乐": "樂", "乔": "喬", "习": "習", "乡": "鄉", "书": "書", "买": "買", "乱": "亂", "争": "爭", "于": "於", "亏": "虧", "亚": "亞", "亩": "畝", "亲": "親", "亵": "褻", "亸": "嚲", "亿": "億", "仅": "僅", "从": "從", "仑": "侖", "仓": "倉", "仪": "儀", "们": "們", "优": "優", "会": "會", "伛": "傴", "伞": "傘", "伟": "偉", "传": "傳", "伣": "俔", "伤": "傷", "伥": "倀", "伦": "倫", "伧": "傖", "伫": "佇", "佥": "僉", "侠": "俠", "侣": "侶", "侥": "僥", "侦": "偵", "侧": "側", "侨": "僑", "侩": "儈", "侪": "儕", "侬": "儂", "俣": "俁", "俦": "儔", "俨": "儼", "俩": "倆", "俪": "儷", "俫": "倈", "俭": "儉", "债": "債", "倾": "傾", "偬": "傯", "偻": "僂", "偾": "僨", "偿": "償", "傥": "儻", "傧": "儐", "储": "儲", "傩": "儺", "㑩": "儸", "兑": "兌", "兖": "兗", "兰": "蘭", "关": "關", "兴": "興", "兹": "茲", "养": "養", "兽": "獸", "冁": "囅", "内": "內", "冈": "岡", "册": "冊", "写": "寫", "军": "軍", "农": "農", "冯": "馮", "决": "決", "况": "況", "冻": "凍", "净": "凈", "凉": "涼", "减": "減", "凑": "湊", "凛": "凜", "凤": "鳳", "凭": "憑", "凯": "凱", "击": "擊", "凿": "鑿", "刍": "芻", "刘": "劉", "则": "則", "刚": "剛", "创": "創", "删": "刪", "刬": "剗", "刭": "剄", "刹": "剎", "刽": "劊", "刿": "劌", "剀": "剴", "剂": "劑", "剐": "剮", "剑": "劍", "剥": "剝", "剧": "劇", "㓥": "劏", "㔉": "劚", "劝": "勸", "办": "辦", "务": "務", "劢": "勱", "动": "動", "励": "勵", "劲": "勁", "劳": "勞", "势": "勢", "勋": "勛", "勚": "勩", "匀": "勻", "匦": "匭", "匮": "匱", "区": "區", "医": "醫", "华": "華", "协": "協", "单": "單", "卖": "賣", "卢": "盧", "卫": "衛", "却": "卻", "厅": "廳", "厉": "厲", "压": "壓", "厌": "厭", "厍": "厙", "厐": "龎", "厘": "釐", "厢": "廂", "厣": "厴", "厦": "廈", "厨": "廚", "厩": "廄", "厮": "廝", "县": "縣", "叁": "叄", "参": "參", "双": "雙", "变": "變", "叙": "敘", "叠": "疊", "号": "號", "叹": "嘆", "叽": "嘰", "吓": "嚇", "吕": "呂", "吗": "嗎", "吣": "唚", "吨": "噸", "听": "聽", "吴": "吳", "呐": "吶", "呒": "嘸", "呓": "囈", "呕": "嘔", "呖": "嚦", "呗": "唄", "员": "員", "呙": "咼", "呛": "嗆", "呜": "嗚", "咏": "詠", "咙": "嚨", "咛": "嚀", "咝": "噝", "咤": "吒", "响": "響", "哑": "啞", "哒": "噠", "哓": "嘵", "哔": "嗶", "哕": "噦", "哗": "嘩", "哙": "噲", "哜": "嚌", "哝": "噥", "哟": "喲", "唛": "嘜", "唝": "嗊", "唠": "嘮", "唡": "啢", "唢": "嗩", "唤": "喚", "啧": "嘖", "啬": "嗇", "啭": "囀", "啮": "嚙", "啴": "嘽", "啸": "嘯", "㖞": "喎", "喷": "噴", "喽": "嘍", "喾": "嚳", "嗫": "囁", "嗳": "噯", "嘘": "噓", "嘤": "嚶", "嘱": "囑", "㖊": "噚", "噜": "嚕", "嚣": "囂", "园": "園", "囱": "囪", "围": "圍", "囵": "圇", "国": "國", "图": "圖", "圆": "圓", "圣": "聖", "圹": "壙", "场": "場", "坂": "阪", "块": "塊", "坚": "堅", "坜": "壢", "坝": "壩", "坞": "塢", "坟": "墳", "坠": "墜", "垄": "壟", "垅": "壠", "垆": "壚", "垒": "壘", "垦": "墾", "垩": "堊", "垫": "墊", "垭": "埡", "垱": "壋", "垲": "塏", "垴": "堖", "埘": "塒", "埙": "塤", "埚": "堝", "埯": "垵", "堑": "塹", "堕": "墮", "𡒄": "壈", "壮": "壯", "声": "聲", "壶": "壺", "壸": "壼", "处": "處", "备": "備", "够": "夠", "头": "頭", "夸": "誇", "夹": "夾", "夺": "奪", "奁": "奩", "奂": "奐", "奋": "奮", "奥": "奧", "奸": "姦", "妆": "妝", "妇": "婦", "妈": "媽", "妩": "嫵", "妪": "嫗", "姗": "姍", "姹": "奼", "娄": "婁", "娅": "婭", "娆": "嬈", "娇": "嬌", "娈": "孌", "娱": "娛", "娲": "媧", "娴": "嫻", "婳": "嫿", "婴": "嬰", "婵": "嬋", "婶": "嬸", "媪": "媼", "嫒": "嬡", "嫔": "嬪", "嫱": "嬙", "嬷": "嬤", "孙": "孫", "学": "學", "孪": "孿", "宝": "寶", "实": "實", "宠": "寵", "审": "審", "宪": "憲", "宫": "宮", "宽": "寬", "宾": "賓", "寝": "寢", "对": "對", "寻": "尋", "导": "導", "寿": "壽", "将": "將", "尔": "爾", "尘": "塵", "尝": "嘗", "尧": "堯", "尴": "尷", "尸": "屍", "层": "層", "屃": "屓", "屉": "屜", "届": "屆", "属": "屬", "屡": "屢", "屦": "屨", "屿": "嶼", "岁": "歲", "岂": "豈", "岖": "嶇", "岗": "崗", "岘": "峴", "岙": "嶴", "岚": "嵐", "岛": "島", "岭": "嶺", "岽": "崬", "岿": "巋", "峄": "嶧", "峡": "峽", "峣": "嶢", "峤": "嶠", "峥": "崢", "峦": "巒", "崂": "嶗", "崃": "崍", "崄": "嶮", "崭": "嶄", "嵘": "嶸", "嵚": "嶔", "嵝": "嶁", "巅": "巔", "巩": "鞏", "巯": "巰", "币": "幣", "帅": "帥", "师": "師", "帏": "幃", "帐": "帳", "帜": "幟", "带": "帶", "帧": "幀", "帮": "幫", "帱": "幬", "帻": "幘", "帼": "幗", "幂": "冪", "庄": "莊", "庆": "慶", "庐": "廬", "庑": "廡", "库": "庫", "应": "應", "庙": "廟", "庞": "龐", "废": "廢", "廪": "廩", "开": "開", "异": "異", "弃": "棄", "弑": "弒", "张": "張", "弪": "弳", "弯": "彎", "弹": "彈", "强": "強", "归": "歸", "彝": "彞", "彦": "彥", "彻": "徹", "径": "徑", "徕": "徠", "忆": "憶", "忏": "懺", "忧": "憂", "忾": "愾", "怀": "懷", "态": "態", "怂": "慫", "怃": "憮", "怄": "慪", "怅": "悵", "怆": "愴", "怜": "憐", "总": "總", "怼": "懟", "怿": "懌", "恋": "戀", "恒": "恆", "恳": "懇", "恸": "慟", "恹": "懨", "恺": "愷", "恻": "惻", "恼": "惱", "恽": "惲", "悦": "悅", "悬": "懸", "悭": "慳", "悮": "悞", "悯": "憫", "惊": "驚", "惧": "懼", "惨": "慘", "惩": "懲", "惫": "憊", "惬": "愜", "惭": "慚", "惮": "憚", "惯": "慣", "愠": "慍", "愤": "憤", "愦": "憒", "慑": "懾", "懑": "懣", "懒": "懶", "懔": "懍", "戆": "戇", "戋": "戔", "戏": "戲", "戗": "戧", "战": "戰", "戬": "戩", "戯": "戱", "户": "戶", "扑": "撲", "执": "執", "扩": "擴", "扪": "捫", "扫": "掃", "扬": "揚", "扰": "擾", "抚": "撫", "抛": "拋", "抟": "摶", "抠": "摳", "抡": "掄", "抢": "搶", "护": "護", "报": "報", "拟": "擬", "拢": "攏", "拣": "揀", "拥": "擁", "拦": "攔", "拧": "擰", "拨": "撥", "择": "擇", "挂": "掛", "挚": "摯", "挛": "攣", "挜": "掗", "挝": "撾", "挞": "撻", "挟": "挾", "挠": "撓", "挡": "擋", "挢": "撟", "挣": "掙", "挤": "擠", "挥": "揮", "挦": "撏", "挽": "輓", "捝": "挩", "捞": "撈", "损": "損", "捡": "撿", "换": "換", "捣": "搗", "掳": "擄", "掴": "摑", "掷": "擲", "掸": "撣", "掺": "摻", "掼": "摜", "揽": "攬", "揾": "搵", "揿": "撳", "搀": "攙", "搁": "擱", "搂": "摟", "搅": "攪", "携": "攜", "摄": "攝", "摅": "攄", "摆": "擺", "摇": "搖", "摈": "擯", "摊": "攤", "撄": "攖", "撑": "撐", "㧑": "撝", "撵": "攆", "撷": "擷", "撸": "擼", "撺": "攛", "㧟": "擓", "擞": "擻", "攒": "攢", "敌": "敵", "敛": "斂", "数": "數", "斋": "齋", "斓": "斕", "斩": "斬", "断": "斷", "无": "無", "旧": "舊", "时": "時", "旷": "曠", "旸": "暘", "昙": "曇", "昼": "晝", "昽": "曨", "显": "顯", "晋": "晉", "晒": "曬", "晓": "曉", "晔": "曄", "晕": "暈", "晖": "暉", "暂": "暫", "暧": "曖", "机": "機", "杀": "殺", "杂": "雜", "权": "權", "杆": "桿", "条": "條", "来": "來", "杨": "楊", "杩": "榪", "杰": "傑", "构": "構", "枞": "樅", "枢": "樞", "枣": "棗", "枥": "櫪", "枧": "梘", "枨": "棖", "枪": "槍", "枫": "楓", "枭": "梟", "柠": "檸", "柽": "檉", "栀": "梔", "栅": "柵", "标": "標", "栈": "棧", "栉": "櫛", "栊": "櫳", "栋": "棟", "栌": "櫨", "栎": "櫟", "栏": "欄", "树": "樹", "栖": "棲", "栗": "慄", "样": "樣", "栾": "欒", "桠": "椏", "桡": "橈", "桢": "楨", "档": "檔", "桤": "榿", "桥": "橋", "桦": "樺", "桧": "檜", "桨": "槳", "桩": "樁", "梦": "夢", "梼": "檮", "梾": "棶", "梿": "槤", "检": "檢", "棁": "梲", "棂": "欞", "椁": "槨", "椟": "櫝", "椠": "槧", "椤": "欏", "椭": "橢", "楼": "樓", "榄": "欖", "榅": "榲", "榇": "櫬", "榈": "櫚", "榉": "櫸", "槚": "檟", "槛": "檻", "槟": "檳", "槠": "櫧", "横": "橫", "樯": "檣", "樱": "櫻", "橥": "櫫", "橱": "櫥", "橹": "櫓", "橼": "櫞", "檩": "檁", "欢": "歡", "欤": "歟", "欧": "歐", "歼": "殲", "殁": "歿", "殇": "殤", "残": "殘", "殒": "殞", "殓": "殮", "殚": "殫", "殡": "殯", "㱮": "殨", "㱩": "殰", "殴": "毆", "毁": "毀", "毂": "轂", "毕": "畢", "毙": "斃", "毡": "氈", "毵": "毿", "氇": "氌", "气": "氣", "氢": "氫", "氩": "氬", "氲": "氳", "汉": "漢", "汤": "湯", "汹": "洶", "沟": "溝", "没": "沒", "沣": "灃", "沤": "漚", "沥": "瀝", "沦": "淪", "沧": "滄", "沪": "滬", "泞": "濘", "注": "註", "泪": "淚", "泶": "澩", "泷": "瀧", "泸": "瀘", "泺": "濼", "泻": "瀉", "泼": "潑", "泽": "澤", "泾": "涇", "洁": "潔", "洒": "灑", "洼": "窪", "浃": "浹", "浅": "淺", "浆": "漿", "浇": "澆", "浈": "湞", "浊": "濁", "测": "測", "浍": "澮", "济": "濟", "浏": "瀏", "浐": "滻", "浑": "渾", "浒": "滸", "浓": "濃", "浔": "潯", "涛": "濤", "涝": "澇", "涞": "淶", "涟": "漣", "涠": "潿", "涡": "渦", "涣": "渙", "涤": "滌", "润": "潤", "涧": "澗", "涨": "漲", "涩": "澀", "渊": "淵", "渌": "淥", "渍": "漬", "渎": "瀆", "渐": "漸", "渑": "澠", "渔": "漁", "渖": "瀋", "渗": "滲", "温": "溫", "湾": "灣", "湿": "濕", "溃": "潰", "溅": "濺", "溆": "漵", "滗": "潷", "滚": "滾", "滞": "滯", "滟": "灧", "滠": "灄", "满": "滿", "滢": "瀅", "滤": "濾", "滥": "濫", "滦": "灤", "滨": "濱", "滩": "灘", "滪": "澦", "漤": "灠", "潆": "瀠", "潇": "瀟", "潋": "瀲", "潍": "濰", "潜": "潛", "潴": "瀦", "澜": "瀾", "濑": "瀨", "濒": "瀕", "㲿": "瀇", "灏": "灝", "灭": "滅", "灯": "燈", "灵": "靈", "灶": "竈", "灾": "災", "灿": "燦", "炀": "煬", "炉": "爐", "炖": "燉", "炜": "煒", "炝": "熗", "点": "點", "炼": "煉", "炽": "熾", "烁": "爍", "烂": "爛", "烃": "烴", "烛": "燭", "烟": "煙", "烦": "煩", "烧": "燒", "烨": "燁", "烩": "燴", "烫": "燙", "烬": "燼", "热": "熱", "焕": "煥", "焖": "燜", "焘": "燾", "㶽": "煱", "煴": "熅", "㶶": "燶", "爱": "愛", "爷": "爺", "牍": "牘", "牦": "氂", "牵": "牽", "牺": "犧", "犊": "犢", "状": "狀", "犷": "獷", "犸": "獁", "犹": "猶", "狈": "狽", "狝": "獮", "狞": "獰", "独": "獨", "狭": "狹", "狮": "獅", "狯": "獪", "狰": "猙", "狱": "獄", "狲": "猻", "猃": "獫", "猎": "獵", "猕": "獼", "猡": "玀", "猪": "豬", "猫": "貓", "猬": "蝟", "献": "獻", "獭": "獺", "㺍": "獱", "玑": "璣", "玚": "瑒", "玛": "瑪", "玮": "瑋", "环": "環", "现": "現", "玱": "瑲", "玺": "璽", "珐": "琺", "珑": "瓏", "珰": "璫", "珲": "琿", "琏": "璉", "琐": "瑣", "琼": "瓊", "瑶": "瑤", "瑷": "璦", "璎": "瓔", "瓒": "瓚", "瓯": "甌", "电": "電", "画": "畫", "畅": "暢", "畴": "疇", "疖": "癤", "疗": "療", "疟": "瘧", "疠": "癘", "疡": "瘍", "疬": "癧", "疭": "瘲", "疮": "瘡", "疯": "瘋", "疱": "皰", "疴": "痾", "痈": "癰", "痉": "痙", "痒": "癢", "痖": "瘂", "痨": "癆", "痪": "瘓", "痫": "癇", "瘅": "癉", "瘆": "瘮", "瘗": "瘞", "瘪": "癟", "瘫": "癱", "瘾": "癮", "瘿": "癭", "癞": "癩", "癣": "癬", "癫": "癲", "皑": "皚", "皱": "皺", "皲": "皸", "盏": "盞", "盐": "鹽", "监": "監", "盖": "蓋", "盗": "盜", "盘": "盤", "眍": "瞘", "眦": "眥", "眬": "矓", "着": "著", "睁": "睜", "睐": "睞", "睑": "瞼", "瞆": "瞶", "瞒": "瞞", "䁖": "瞜", "瞩": "矚", "矫": "矯", "矶": "磯", "矾": "礬", "矿": "礦", "砀": "碭", "码": "碼", "砖": "磚", "砗": "硨", "砚": "硯", "砜": "碸", "砺": "礪", "砻": "礱", "砾": "礫", "础": "礎", "硁": "硜", "硕": "碩", "硖": "硤", "硗": "磽", "硙": "磑", "碍": "礙", "碛": "磧", "碜": "磣", "碱": "鹼", "礼": "禮", "祃": "禡", "祎": "禕", "祢": "禰", "祯": "禎", "祷": "禱", "祸": "禍", "禀": "稟", "禄": "祿", "禅": "禪", "离": "離", "秃": "禿", "秆": "稈", "积": "積", "称": "稱", "秽": "穢", "秾": "穠", "稆": "穭", "税": "稅", "䅉": "稏", "稣": "穌", "稳": "穩", "穑": "穡", "穷": "窮", "窃": "竊", "窍": "竅", "窎": "窵", "窑": "窯", "窜": "竄", "窝": "窩", "窥": "窺", "窦": "竇", "窭": "窶", "竞": "競", "笃": "篤", "笋": "筍", "笔": "筆", "笕": "筧", "笺": "箋", "笼": "籠", "笾": "籩", "筚": "篳", "筛": "篩", "筜": "簹", "筝": "箏", "䇲": "筴", "筹": "籌", "筼": "篔", "简": "簡", "箓": "籙", "箦": "簀", "箧": "篋", "箨": "籜", "箩": "籮", "箪": "簞", "箫": "簫", "篑": "簣", "篓": "簍", "篮": "籃", "篱": "籬", "簖": "籪", "籁": "籟", "籴": "糴", "类": "類", "籼": "秈", "粜": "糶", "粝": "糲", "粤": "粵", "粪": "糞", "粮": "糧", "糁": "糝", "糇": "餱", "紧": "緊", "䌷": "紬", "䌹": "絅", "絷": "縶", "䌼": "綐", "䌽": "綵", "䌸": "縳", "䍁": "繸", "䍀": "繿", "纟": "糹", "纠": "糾", "纡": "紆", "红": "紅", "纣": "紂", "纥": "紇", "约": "約", "级": "級", "纨": "紈", "纩": "纊", "纪": "紀", "纫": "紉", "纬": "緯", "纭": "紜", "纮": "紘", "纯": "純", "纰": "紕", "纱": "紗", "纲": "綱", "纳": "納", "纴": "紝", "纵": "縱", "纶": "綸", "纷": "紛", "纸": "紙", "纹": "紋", "纺": "紡", "纻": "紵", "纼": "紖", "纽": "紐", "纾": "紓", "绀": "紺", "绁": "紲", "绂": "紱", "练": "練", "组": "組", "绅": "紳", "细": "細", "织": "織", "终": "終", "绉": "縐", "绊": "絆", "绋": "紼", "绌": "絀", "绍": "紹", "绎": "繹", "经": "經", "绐": "紿", "绑": "綁", "绒": "絨", "结": "結", "绔": "絝", "绕": "繞", "绖": "絰", "绗": "絎", "绘": "繪", "给": "給", "绚": "絢", "绛": "絳", "络": "絡", "绞": "絞", "统": "統", "绠": "綆", "绡": "綃", "绢": "絹", "绤": "綌", "绥": "綏", "继": "繼", "绨": "綈", "绩": "績", "绪": "緒", "绫": "綾", "绬": "緓", "续": "續", "绮": "綺", "绯": "緋", "绰": "綽", "绲": "緄", "绳": "繩", "维": "維", "绵": "綿", "绶": "綬", "绸": "綢", "绹": "綯", "绺": "綹", "绻": "綣", "综": "綜", "绽": "綻", "绾": "綰", "缀": "綴", "缁": "緇", "缂": "緙", "缃": "緗", "缄": "緘", "缅": "緬", "缆": "纜", "缇": "緹", "缈": "緲", "缉": "緝", "缊": "縕", "缋": "繢", "缌": "緦", "缍": "綞", "缎": "緞", "缏": "緶", "缑": "緱", "缒": "縋", "缓": "緩", "缔": "締", "缕": "縷", "编": "編", "缗": "緡", "缘": "緣", "缙": "縉", "缚": "縛", "缛": "縟", "缜": "縝", "缝": "縫", "缞": "縗", "缟": "縞", "缠": "纏", "缡": "縭", "缢": "縊", "缣": "縑", "缤": "繽", "缥": "縹", "缦": "縵", "缧": "縲", "缨": "纓", "缩": "縮", "缪": "繆", "缫": "繅", "缬": "纈", "缭": "繚", "缮": "繕", "缯": "繒", "缱": "繾", "缲": "繰", "缳": "繯", "缴": "繳", "缵": "纘", "罂": "罌", "网": "網", "罗": "羅", "罚": "罰", "罢": "罷", "罴": "羆", "羁": "羈", "羟": "羥", "翘": "翹", "耢": "耮", "耧": "耬", "耸": "聳", "耻": "恥", "聂": "聶", "聋": "聾", "职": "職", "聍": "聹", "联": "聯", "聩": "聵", "聪": "聰", "肃": "肅", "肠": "腸", "肤": "膚", "肮": "骯", "肴": "餚", "肾": "腎", "肿": "腫", "胀": "脹", "胁": "脅", "胆": "膽", "胧": "朧", "胨": "腖", "胪": "臚", "胫": "脛", "胶": "膠", "脉": "脈", "脍": "膾", "脐": "臍", "脑": "腦", "脓": "膿", "脔": "臠", "脚": "腳", "脱": "脫", "脶": "腡", "脸": "臉", "腭": "齶", "腻": "膩", "腼": "靦", "腽": "膃", "腾": "騰", "膑": "臏", "臜": "臢", "舆": "輿", "舣": "艤", "舰": "艦", "舱": "艙", "舻": "艫", "艰": "艱", "艳": "艷", "艺": "藝", "节": "節", "芈": "羋", "芗": "薌", "芜": "蕪", "芦": "蘆", "苁": "蓯", "苇": "葦", "苈": "藶", "苋": "莧", "苌": "萇", "苍": "蒼", "苎": "苧", "茎": "莖", "茏": "蘢", "茑": "蔦", "茔": "塋", "茕": "煢", "茧": "繭", "荆": "荊", "荐": "薦", "荙": "薘", "荚": "莢", "荛": "蕘", "荜": "蓽", "荞": "蕎", "荟": "薈", "荠": "薺", "荣": "榮", "荤": "葷", "荥": "滎", "荦": "犖", "荧": "熒", "荨": "蕁", "荩": "藎", "荪": "蓀", "荫": "蔭", "荬": "蕒", "荭": "葒", "荮": "葤", "莅": "蒞", "莱": "萊", "莲": "蓮", "莳": "蒔", "莴": "萵", "莶": "薟", "莸": "蕕", "莹": "瑩", "莺": "鶯", "萝": "蘿", "萤": "螢", "营": "營", "萦": "縈", "萧": "蕭", "萨": "薩", "葱": "蔥", "蒇": "蕆", "蒉": "蕢", "蒋": "蔣", "蒌": "蔞", "蓝": "藍", "蓟": "薊", "蓠": "蘺", "蓣": "蕷", "蓥": "鎣", "蓦": "驀", "蔂": "虆", "蔷": "薔", "蔹": "蘞", "蔺": "藺", "蔼": "藹", "蕰": "薀", "蕲": "蘄", "薮": "藪", "䓕": "薳", "藓": "蘚", "蘖": "櫱", "虏": "虜", "虑": "慮", "虚": "虛", "虬": "虯", "虮": "蟣", "虽": "雖", "虾": "蝦", "虿": "蠆", "蚀": "蝕", "蚁": "蟻", "蚂": "螞", "蚕": "蠶", "蚬": "蜆", "蛊": "蠱", "蛎": "蠣", "蛏": "蟶", "蛮": "蠻", "蛰": "蟄", "蛱": "蛺", "蛲": "蟯", "蛳": "螄", "蛴": "蠐", "蜕": "蛻", "蜗": "蝸", "蝇": "蠅", "蝈": "蟈", "蝉": "蟬", "蝼": "螻", "蝾": "蠑", "螀": "螿", "螨": "蟎", "䗖": "螮", "蟏": "蠨", "衅": "釁", "衔": "銜", "补": "補", "衬": "襯", "衮": "袞", "袄": "襖", "袅": "裊", "袆": "褘", "袜": "襪", "袭": "襲", "袯": "襏", "装": "裝", "裆": "襠", "裈": "褌", "裢": "褳", "裣": "襝", "裤": "褲", "裥": "襇", "褛": "褸", "褴": "襤", "䙓": "襬", "见": "見", "观": "觀", "觃": "覎", "规": "規", "觅": "覓", "视": "視", "觇": "覘", "览": "覽", "觉": "覺", "觊": "覬", "觋": "覡", "觌": "覿", "觍": "覥", "觎": "覦", "觏": "覯", "觐": "覲", "觑": "覷", "觞": "觴", "触": "觸", "觯": "觶", "訚": "誾", "䜣": "訢", "誉": "譽", "誊": "謄", "䜧": "譅", "讠": "訁", "计": "計", "订": "訂", "讣": "訃", "认": "認", "讥": "譏", "讦": "訐", "讧": "訌", "讨": "討", "让": "讓", "讪": "訕", "讫": "訖", "讬": "託", "训": "訓", "议": "議", "讯": "訊", "记": "記", "讱": "訒", "讲": "講", "讳": "諱", "讴": "謳", "讵": "詎", "讶": "訝", "讷": "訥", "许": "許", "讹": "訛", "论": "論", "讻": "訩", "讼": "訟", "讽": "諷", "设": "設", "访": "訪", "诀": "訣", "证": "證", "诂": "詁", "诃": "訶", "评": "評", "诅": "詛", "识": "識", "诇": "詗", "诈": "詐", "诉": "訴", "诊": "診", "诋": "詆", "诌": "謅", "词": "詞", "诎": "詘", "诏": "詔", "诐": "詖", "译": "譯", "诒": "詒", "诓": "誆", "诔": "誄", "试": "試", "诖": "詿", "诗": "詩", "诘": "詰", "诙": "詼", "诚": "誠", "诛": "誅", "诜": "詵", "话": "話", "诞": "誕", "诟": "詬", "诠": "詮", "诡": "詭", "询": "詢", "诣": "詣", "诤": "諍", "该": "該", "详": "詳", "诧": "詫", "诨": "諢", "诩": "詡", "诪": "譸", "诫": "誡", "诬": "誣", "语": "語", "诮": "誚", "误": "誤", "诰": "誥", "诱": "誘", "诲": "誨", "诳": "誑", "诵": "誦", "诶": "誒", "请": "請", "诸": "諸", "诹": "諏", "诺": "諾", "读": "讀", "诼": "諑", "诽": "誹", "课": "課", "诿": "諉", "谀": "諛", "谁": "誰", "谂": "諗", "调": "調", "谄": "諂", "谅": "諒", "谆": "諄", "谇": "誶", "谈": "談", "谊": "誼", "谋": "謀", "谌": "諶", "谍": "諜", "谎": "謊", "谏": "諫", "谐": "諧", "谑": "謔", "谒": "謁", "谓": "謂", "谔": "諤", "谕": "諭", "谖": "諼", "谗": "讒", "谘": "諮", "谙": "諳", "谚": "諺", "谛": "諦", "谜": "謎", "谝": "諞", "谞": "諝", "谟": "謨", "谠": "讜", "谡": "謖", "谢": "謝", "谤": "謗", "谥": "謚", "谦": "謙", "谧": "謐", "谨": "謹", "谩": "謾", "谪": "謫", "谬": "謬", "谭": "譚", "谮": "譖", "谯": "譙", "谰": "讕", "谱": "譜", "谲": "譎", "谳": "讞", "谴": "譴", "谵": "譫", "谶": "讖", "豮": "豶", "䝙": "貙", "䞐": "賰", "贝": "貝", "贞": "貞", "负": "負", "贠": "貟", "贡": "貢", "财": "財", "责": "責", "贤": "賢", "败": "敗", "账": "賬", "货": "貨", "质": "質", "贩": "販", "贪": "貪", "贫": "貧", "贬": "貶", "购": "購", "贮": "貯", "贯": "貫", "贰": "貳", "贱": "賤", "贲": "賁", "贳": "貰", "贴": "貼", "贵": "貴", "贶": "貺", "贷": "貸", "贸": "貿", "费": "費", "贺": "賀", "贻": "貽", "贼": "賊", "贽": "贄", "贾": "賈", "贿": "賄", "赀": "貲", "赁": "賃", "赂": "賂", "资": "資", "赅": "賅", "赆": "贐", "赇": "賕", "赈": "賑", "赉": "賚", "赊": "賒", "赋": "賦", "赌": "賭", "赎": "贖", "赏": "賞", "赐": "賜", "赑": "贔", "赒": "賙", "赓": "賡", "赔": "賠", "赕": "賧", "赖": "賴", "赗": "賵", "赘": "贅", "赙": "賻", "赚": "賺", "赛": "賽", "赜": "賾", "赞": "贊", "赟": "贇", "赠": "贈", "赡": "贍", "赢": "贏", "赣": "贛", "赪": "赬", "赵": "趙", "赶": "趕", "趋": "趨", "趱": "趲", "趸": "躉", "跃": "躍", "跄": "蹌", "跞": "躒", "践": "踐", "跶": "躂", "跷": "蹺", "跸": "蹕", "跹": "躚", "跻": "躋", "踊": "踴", "踌": "躊", "踪": "蹤", "踬": "躓", "踯": "躑", "蹑": "躡", "蹒": "蹣", "蹰": "躕", "蹿": "躥", "躏": "躪", "躜": "躦", "躯": "軀", "车": "車", "轧": "軋", "轨": "軌", "轩": "軒", "轪": "軑", "轫": "軔", "转": "轉", "轭": "軛", "轮": "輪", "软": "軟", "轰": "轟", "轱": "軲", "轲": "軻", "轳": "轤", "轴": "軸", "轵": "軹", "轶": "軼", "轷": "軤", "轸": "軫", "轹": "轢", "轺": "軺", "轻": "輕", "轼": "軾", "载": "載", "轾": "輊", "轿": "轎", "辀": "輈", "辁": "輇", "辂": "輅", "较": "較", "辄": "輒", "辅": "輔", "辆": "輛", "辇": "輦", "辈": "輩", "辉": "輝", "辊": "輥", "辋": "輞", "辌": "輬", "辍": "輟", "辎": "輜", "辏": "輳", "辐": "輻", "辑": "輯", "辒": "轀", "输": "輸", "辔": "轡", "辕": "轅", "辖": "轄", "辗": "輾", "辘": "轆", "辙": "轍", "辚": "轔", "辞": "辭", "辩": "辯", "辫": "辮", "边": "邊", "辽": "遼", "达": "達", "迁": "遷", "过": "過", "迈": "邁", "运": "運", "还": "還", "这": "這", "进": "進", "远": "遠", "违": "違", "连": "連", "迟": "遲", "迩": "邇", "迳": "逕", "迹": "跡", "选": "選", "逊": "遜", "递": "遞", "逦": "邐", "逻": "邏", "遗": "遺", "遥": "遙", "邓": "鄧", "邝": "鄺", "邬": "鄔", "邮": "郵", "邹": "鄒", "邺": "鄴", "邻": "鄰", "郏": "郟", "郐": "鄶", "郑": "鄭", "郓": "鄆", "郦": "酈", "郧": "鄖", "郸": "鄲", "酂": "酇", "酦": "醱", "酱": "醬", "酽": "釅", "酾": "釃", "酿": "釀", "释": "釋", "鉴": "鑒", "銮": "鑾", "錾": "鏨", "𨱏": "鎝", "钅": "釒", "钆": "釓", "钇": "釔", "针": "針", "钉": "釘", "钊": "釗", "钋": "釙", "钌": "釕", "钍": "釷", "钎": "釺", "钏": "釧", "钐": "釤", "钑": "鈒", "钒": "釩", "钓": "釣", "钔": "鍆", "钕": "釹", "钖": "鍚", "钗": "釵", "钘": "鈃", "钙": "鈣", "钚": "鈈", "钛": "鈦", "钜": "鉅", "钝": "鈍", "钞": "鈔", "钠": "鈉", "钡": "鋇", "钢": "鋼", "钣": "鈑", "钤": "鈐", "钥": "鑰", "钦": "欽", "钧": "鈞", "钨": "鎢", "钪": "鈧", "钫": "鈁", "钬": "鈥", "钭": "鈄", "钮": "鈕", "钯": "鈀", "钰": "鈺", "钱": "錢", "钲": "鉦", "钳": "鉗", "钴": "鈷", "钶": "鈳", "钷": "鉕", "钸": "鈽", "钹": "鈸", "钺": "鉞", "钻": "鑽", "钼": "鉬", "钽": "鉭", "钾": "鉀", "钿": "鈿", "铀": "鈾", "铁": "鐵", "铂": "鉑", "铃": "鈴", "铄": "鑠", "铅": "鉛", "铆": "鉚", "铇": "鉋", "铈": "鈰", "铉": "鉉", "铊": "鉈", "铋": "鉍", "铌": "鈮", "铍": "鈹", "铎": "鐸", "铏": "鉶", "铐": "銬", "铑": "銠", "铒": "鉺", "铓": "鋩", "铔": "錏", "铕": "銪", "铖": "鋮", "铗": "鋏", "铘": "鋣", "铙": "鐃", "铚": "銍", "铛": "鐺", "铜": "銅", "铝": "鋁", "铞": "銱", "铟": "銦", "铠": "鎧", "铡": "鍘", "铢": "銖", "铣": "銑", "铤": "鋌", "铥": "銩", "铦": "銛", "铧": "鏵", "铨": "銓", "铩": "鎩", "铪": "鉿", "铫": "銚", "铬": "鉻", "铭": "銘", "铮": "錚", "铯": "銫", "铰": "鉸", "铱": "銥", "铲": "鏟", "铳": "銃", "铴": "鐋", "铵": "銨", "银": "銀", "铷": "銣", "铸": "鑄", "铹": "鐒", "铺": "鋪", "铻": "鋙", "铼": "錸", "铽": "鋱", "链": "鏈", "铿": "鏗", "销": "銷", "锁": "鎖", "锂": "鋰", "锃": "鋥", "锄": "鋤", "锅": "鍋", "锆": "鋯", "锇": "鋨", "锉": "銼", "锊": "鋝", "锋": "鋒", "锌": "鋅", "锍": "鋶", "锎": "鐦", "锏": "鐧", "锑": "銻", "锒": "鋃", "锓": "鋟", "锔": "鋦", "锕": "錒", "锖": "錆", "锗": "鍺", "锘": "鍩", "错": "錯", "锚": "錨", "锛": "錛", "锜": "錡", "锝": "鍀", "锞": "錁", "锟": "錕", "锠": "錩", "锡": "錫", "锢": "錮", "锣": "鑼", "锥": "錐", "锦": "錦", "锧": "鑕", "锩": "錈", "锪": "鍃", "锫": "錇", "锬": "錟", "锭": "錠", "键": "鍵", "锯": "鋸", "锰": "錳", "锱": "錙", "锲": "鍥", "锳": "鍈", "锴": "鍇", "锵": "鏘", "锶": "鍶", "锷": "鍔", "锸": "鍤", "锹": "鍬", "锺": "鍾", "锻": "鍛", "锼": "鎪", "锽": "鍠", "锾": "鍰", "锿": "鎄", "镀": "鍍", "镁": "鎂", "镂": "鏤", "镃": "鎡", "镄": "鐨", "镅": "鎇", "镆": "鏌", "镇": "鎮", "镈": "鎛", "镉": "鎘", "镊": "鑷", "镋": "鎲", "镍": "鎳", "镎": "鎿", "镏": "鎦", "镐": "鎬", "镑": "鎊", "镒": "鎰", "镓": "鎵", "镔": "鑌", "镕": "鎔", "镖": "鏢", "镗": "鏜", "镘": "鏝", "镙": "鏍", "镚": "鏰", "镛": "鏞", "镜": "鏡", "镝": "鏑", "镞": "鏃", "镟": "鏇", "镠": "鏐", "镡": "鐔", "镣": "鐐", "镤": "鏷", "镥": "鑥", "镦": "鐓", "镧": "鑭", "镨": "鐠", "镩": "鑹", "镪": "鏹", "镫": "鐙", "镬": "鑊", "镭": "鐳", "镮": "鐶", "镯": "鐲", "镰": "鐮", "镱": "鐿", "镲": "鑔", "镳": "鑣", "镴": "鑞", "镵": "鑱", "镶": "鑲", "长": "長", "门": "門", "闩": "閂", "闪": "閃", "闫": "閆", "闬": "閈", "闭": "閉", "问": "問", "闯": "闖", "闰": "閏", "闱": "闈", "闲": "閑", "闳": "閎", "间": "間", "闵": "閔", "闶": "閌", "闷": "悶", "闸": "閘", "闹": "鬧", "闺": "閨", "闻": "聞", "闼": "闥", "闽": "閩", "闾": "閭", "闿": "闓", "阀": "閥", "阁": "閣", "阂": "閡", "阃": "閫", "阄": "鬮", "阆": "閬", "阇": "闍", "阈": "閾", "阉": "閹", "阊": "閶", "阋": "鬩", "阌": "閿", "阍": "閽", "阎": "閻", "阏": "閼", "阐": "闡", "阑": "闌", "阒": "闃", "阓": "闠", "阔": "闊", "阕": "闋", "阖": "闔", "阗": "闐", "阘": "闒", "阙": "闕", "阚": "闞", "阛": "闤", "队": "隊", "阳": "陽", "阴": "陰", "阵": "陣", "阶": "階", "际": "際", "陆": "陸", "陇": "隴", "陈": "陳", "陉": "陘", "陕": "陝", "陧": "隉", "陨": "隕", "险": "險", "随": "隨", "隐": "隱", "隶": "隸", "隽": "雋", "难": "難", "雏": "雛", "雠": "讎", "雳": "靂", "雾": "霧", "霁": "霽", "霡": "霢", "霭": "靄", "靓": "靚", "静": "靜", "靥": "靨", "䩄": "靦", "鞑": "韃", "鞒": "鞽", "鞯": "韉", "韦": "韋", "韧": "韌", "韨": "韍", "韩": "韓", "韪": "韙", "韫": "韞", "韬": "韜", "韵": "韻", "页": "頁", "顶": "頂", "顷": "頃", "顸": "頇", "项": "項", "顺": "順", "顼": "頊", "顽": "頑", "顾": "顧", "顿": "頓", "颀": "頎", "颁": "頒", "颂": "頌", "颃": "頏", "预": "預", "颅": "顱", "领": "領", "颇": "頗", "颈": "頸", "颉": "頡", "颊": "頰", "颋": "頲", "颌": "頜", "颍": "潁", "颎": "熲", "颏": "頦", "颐": "頤", "频": "頻", "颒": "頮", "颔": "頷", "颕": "頴", "颖": "穎", "颗": "顆", "题": "題", "颙": "顒", "颚": "顎", "颛": "顓", "额": "額", "颞": "顳", "颟": "顢", "颠": "顛", "颡": "顙", "颢": "顥", "颤": "顫", "颥": "顬", "颦": "顰", "颧": "顴", "风": "風", "飏": "颺", "飐": "颭", "飑": "颮", "飒": "颯", "飓": "颶", "飔": "颸", "飕": "颼", "飖": "颻", "飗": "飀", "飘": "飄", "飙": "飆", "飚": "飈", "飞": "飛", "飨": "饗", "餍": "饜", "饣": "飠", "饤": "飣", "饦": "飥", "饧": "餳", "饨": "飩", "饩": "餼", "饪": "飪", "饫": "飫", "饬": "飭", "饭": "飯", "饮": "飲", "饯": "餞", "饰": "飾", "饱": "飽", "饲": "飼", "饳": "飿", "饴": "飴", "饵": "餌", "饶": "饒", "饷": "餉", "饸": "餄", "饹": "餎", "饺": "餃", "饻": "餏", "饼": "餅", "饽": "餑", "饾": "餖", "饿": "餓", "馀": "餘", "馁": "餒", "馂": "餕", "馃": "餜", "馄": "餛", "馅": "餡", "馆": "館", "馇": "餷", "馈": "饋", "馉": "餶", "馊": "餿", "馋": "饞", "馌": "饁", "馍": "饃", "馎": "餺", "馏": "餾", "馐": "饈", "馑": "饉", "馒": "饅", "馓": "饊", "馔": "饌", "馕": "饢", "䯄": "騧", "马": "馬", "驭": "馭", "驮": "馱", "驯": "馴", "驰": "馳", "驱": "驅", "驲": "馹", "驳": "駁", "驴": "驢", "驵": "駔", "驶": "駛", "驷": "駟", "驸": "駙", "驹": "駒", "驺": "騶", "驻": "駐", "驼": "駝", "驽": "駑", "驾": "駕", "驿": "驛", "骀": "駘", "骁": "驍", "骃": "駰", "骄": "驕", "骅": "驊", "骆": "駱", "骇": "駭", "骈": "駢", "骉": "驫", "骊": "驪", "骋": "騁", "验": "驗", "骍": "騂", "骎": "駸", "骏": "駿", "骐": "騏", "骑": "騎", "骒": "騍", "骓": "騅", "骔": "騌", "骕": "驌", "骖": "驂", "骗": "騙", "骘": "騭", "骙": "騤", "骚": "騷", "骛": "騖", "骜": "驁", "骝": "騮", "骞": "騫", "骟": "騸", "骠": "驃", "骡": "騾", "骢": "驄", "骣": "驏", "骤": "驟", "骥": "驥", "骦": "驦", "骧": "驤", "髅": "髏", "髋": "髖", "髌": "髕", "鬓": "鬢", "魇": "魘", "魉": "魎", "鱼": "魚", "鱽": "魛", "鱾": "魢", "鱿": "魷", "鲀": "魨", "鲁": "魯", "鲂": "魴", "鲃": "䰾", "鲄": "魺", "鲅": "鮁", "鲆": "鮃", "鲈": "鱸", "鲉": "鮋", "鲊": "鮓", "鲋": "鮒", "鲌": "鮊", "鲍": "鮑", "鲎": "鱟", "鲏": "鮍", "鲐": "鮐", "鲑": "鮭", "鲒": "鮚", "鲓": "鮳", "鲔": "鮪", "鲕": "鮞", "鲖": "鮦", "鲗": "鰂", "鲘": "鮜", "鲙": "鱠", "鲚": "鱭", "鲛": "鮫", "鲜": "鮮", "鲝": "鮺", "鲟": "鱘", "鲠": "鯁", "鲡": "鱺", "鲢": "鰱", "鲣": "鰹", "鲤": "鯉", "鲥": "鰣", "鲦": "鰷", "鲧": "鯀", "鲨": "鯊", "鲩": "鯇", "鲪": "鮶", "鲫": "鯽", "鲬": "鯒", "鲭": "鯖", "鲮": "鯪", "鲯": "鯕", "鲰": "鯫", "鲱": "鯡", "鲲": "鯤", "鲳": "鯧", "鲴": "鯝", "鲵": "鯢", "鲶": "鯰", "鲷": "鯛", "鲸": "鯨", "鲹": "鰺", "鲺": "鯴", "鲻": "鯔", "鲼": "鱝", "鲽": "鰈", "鲾": "鰏", "鲿": "鱨", "鳀": "鯷", "鳁": "鰮", "鳂": "鰃", "鳃": "鰓", "鳅": "鰍", "鳆": "鰒", "鳇": "鰉", "鳈": "鰁", "鳉": "鱂", "鳊": "鯿", "鳋": "鰠", "鳌": "鰲", "鳍": "鰭", "鳎": "鰨", "鳏": "鰥", "鳐": "鰩", "鳑": "鰟", "鳒": "鰜", "鳓": "鰳", "鳔": "鰾", "鳕": "鱈", "鳖": "鱉", "鳗": "鰻", "鳘": "鰵", "鳙": "鱅", "鳚": "䲁", "鳛": "鰼", "鳜": "鱖", "鳝": "鱔", "鳞": "鱗", "鳟": "鱒", "鳠": "鱯", "鳡": "鱤", "鳢": "鱧", "鳣": "鱣", "䴓": "鳾", "䴕": "鴷", "䴔": "鵁", "䴖": "鶄", "䴗": "鶪", "䴘": "鷈", "䴙": "鷿", "㶉": "鸂", "鸟": "鳥", "鸠": "鳩", "鸢": "鳶", "鸣": "鳴", "鸤": "鳲", "鸥": "鷗", "鸦": "鴉", "鸧": "鶬", "鸨": "鴇", "鸩": "鴆", "鸪": "鴣", "鸫": "鶇", "鸬": "鸕", "鸭": "鴨", "鸮": "鴞", "鸯": "鴦", "鸰": "鴒", "鸱": "鴟", "鸲": "鴝", "鸳": "鴛", "鸴": "鷽", "鸵": "鴕", "鸶": "鷥", "鸷": "鷙", "鸸": "鴯", "鸹": "鴰", "鸺": "鵂", "鸻": "鴴", "鸼": "鵃", "鸽": "鴿", "鸾": "鸞", "鸿": "鴻", "鹀": "鵐", "鹁": "鵓", "鹂": "鸝", "鹃": "鵑", "鹄": "鵠", "鹅": "鵝", "鹆": "鵒", "鹇": "鷳", "鹈": "鵜", "鹉": "鵡", "鹊": "鵲", "鹋": "鶓", "鹌": "鵪", "鹍": "鵾", "鹎": "鵯", "鹏": "鵬", "鹐": "鵮", "鹑": "鶉", "鹒": "鶊", "鹓": "鵷", "鹔": "鷫", "鹕": "鶘", "鹖": "鶡", "鹗": "鶚", "鹘": "鶻", "鹙": "鶖", "鹛": "鶥", "鹜": "鶩", "鹝": "鷊", "鹞": "鷂", "鹟": "鶲", "鹠": "鶹", "鹡": "鶺", "鹢": "鷁", "鹣": "鶼", "鹤": "鶴", "鹥": "鷖", "鹦": "鸚", "鹧": "鷓", "鹨": "鷚", "鹩": "鷯", "鹪": "鷦", "鹫": "鷲", "鹬": "鷸", "鹭": "鷺", "鹯": "鸇", "鹰": "鷹", "鹱": "鸌", "鹲": "鸏", "鹳": "鸛", "鹴": "鸘", "鹾": "鹺", "麦": "麥", "麸": "麩", "黄": "黃", "黉": "黌", "黡": "黶", "黩": "黷", "黪": "黲", "黾": "黽", "鼋": "黿", "鼍": "鼉", "鼗": "鞀", "鼹": "鼴", "齐": "齊", "齑": "齏", "齿": "齒", "龀": "齔", "龁": "齕", "龂": "齗", "龃": "齟", "龄": "齡", "龅": "齙", "龆": "齠", "龇": "齜", "龈": "齦", "龉": "齬", "龊": "齪", "龋": "齲", "龌": "齷", "龙": "龍", "龚": "龔", "龛": "龕", "龟": "龜", "一伙": "一伙", "一并": "一併", "一准": "一准", "一划": "一划", "一地里": "一地裡", "一干": "一干", "一树百获": "一樹百穫", "一台": "一臺", "一冲": "一衝", "一只": "一隻", "一发千钧": "一髮千鈞", "一出": "一齣", "七只": "七隻", "三元里": "三元裡", "三国志": "三國誌", "三复": "三複", "三只": "三隻", "上吊": "上吊", "上台": "上臺", "下不了台": "下不了臺", "下台": "下臺", "下面": "下麵", "不准": "不准", "不吊": "不吊", "不知就里": "不知就裡", "不知所云": "不知所云", "不锈钢": "不鏽鋼", "丑剧": "丑劇", "丑旦": "丑旦", "丑角": "丑角", "并存着": "並存著", "中岳": "中嶽", "中台医专": "中臺醫專", "丰南": "丰南", "丰台": "丰台", "丰姿": "丰姿", "丰采": "丰采", "丰韵": "丰韻", "主干": "主幹", "么么唱唱": "么么唱唱", "么儿": "么兒", "么喝": "么喝", "么妹": "么妹", "么弟": "么弟", "么爷": "么爺", "九世之雠": "九世之讎", "九只": "九隻", "干丝": "乾絲", "干着急": "乾著急", "乱发": "亂髮", "云云": "云云", "云尔": "云爾", "五岳": "五嶽", "五斗柜": "五斗櫃", "五斗橱": "五斗櫥", "五谷": "五穀", "五行生克": "五行生剋", "五只": "五隻", "五出": "五齣", "交卷": "交卷", "人云亦云": "人云亦云", "人物志": "人物誌", "什锦面": "什錦麵", "什么": "什麼", "仆倒": "仆倒", "介系词": "介係詞", "介系词": "介繫詞", "仿制": "仿製", "伙伕": "伙伕", "伙伴": "伙伴", "伙同": "伙同", "伙夫": "伙夫", "伙房": "伙房", "伙计": "伙計", "伙食": "伙食", "布下": "佈下", "布告": "佈告", "布哨": "佈哨", "布局": "佈局", "布岗": "佈崗", "布施": "佈施", "布景": "佈景", "布满": "佈滿", "布线": "佈線", "布置": "佈置", "布署": "佈署", "布道": "佈道", "布达": "佈達", "布防": "佈防", "布阵": "佈陣", "布雷": "佈雷", "体育锻鍊": "体育鍛鍊", "何干": "何干", "作准": "作准", "佣人": "佣人", "佣工": "佣工", "佣金": "佣金", "并入": "併入", "并列": "併列", "并到": "併到", "并合": "併合", "并吞": "併吞", "并在": "併在", "并成": "併成", "并排": "併排", "并拢": "併攏", "并案": "併案", "并为": "併為", "并发": "併發", "并科": "併科", "并购": "併購", "并进": "併進", "来复": "來複", "供制": "供製", "依依不舍": "依依不捨", "侵并": "侵併", "便辟": "便辟", "系数": "係數", "系为": "係為", "保险柜": "保險柜", "信号台": "信號臺", "修复": "修複", "修胡刀": "修鬍刀", "俯冲": "俯衝", "个里": "個裡", "借着": "借著", "假发": "假髮", "停制": "停製", "偷鸡不着": "偷雞不著", "家伙": "傢伙", "家俱": "傢俱", "家具": "傢具", "传布": "傳佈", "债台高筑": "債臺高築", "傻里傻气": "傻裡傻氣", "倾家荡产": "傾家蕩產", "倾复": "傾複", "倾复": "傾覆", "僱佣": "僱佣", "仪表": "儀錶", "亿只": "億隻", "尽尽": "儘儘", "尽先": "儘先", "尽其所有": "儘其所有", "尽力": "儘力", "尽快": "儘快", "尽早": "儘早", "尽是": "儘是", "尽管": "儘管", "尽速": "儘速", "尽量": "儘量", "允准": "允准", "兄台": "兄臺", "充饥": "充饑", "光采": "光采", "克里": "克裡", "克复": "克複", "入伙": "入伙", "内制": "內製", "两只": "兩隻", "八字胡": "八字鬍", "八只": "八隻", "公布": "公佈", "公干": "公幹", "公斗": "公斗", "公历": "公曆", "六只": "六隻", "六出": "六齣", "兼并": "兼併", "冤雠": "冤讎", "准予": "准予", "准假": "准假", "准将": "准將", "准考证": "准考證", "准许": "准許", "几几": "几几", "几案": "几案", "几丝": "几絲", "凹洞里": "凹洞裡", "出征": "出征", "出锤": "出鎚", "刀削面": "刀削麵", "刁斗": "刁斗", "分布": "分佈", "切面": "切麵", "刊布": "刊佈", "划上": "划上", "划下": "划下", "划不来": "划不來", "划了": "划了", "划具": "划具", "划出": "划出", "划到": "划到", "划动": "划動", "划去": "划去", "划子": "划子", "划得来": "划得來", "划拳": "划拳", "划桨": "划槳", "划水": "划水", "划算": "划算", "划船": "划船", "划艇": "划艇", "划着": "划著", "划着走": "划著走", "划行": "划行", "划走": "划走", "划起": "划起", "划进": "划進", "划过": "划過", "初征": "初征", "别致": "別緻", "别着": "別著", "别只": "別隻", "利比里亚": "利比裡亞", "刮着": "刮著", "刮胡刀": "刮鬍刀", "剃发": "剃髮", "剃须": "剃鬚", "削发": "削髮", "克制": "剋制", "克星": "剋星", "克服": "剋服", "克死": "剋死", "克薄": "剋薄", "前仆后继": "前仆後繼", "前台": "前臺", "前车之复": "前車之覆", "刚才": "剛纔", "剪发": "剪髮", "割舍": "割捨", "创制": "創製", "加里宁": "加裡寧", "动荡": "動蕩", "劳力士表": "勞力士錶", "包准": "包准", "包谷": "包穀", "北斗": "北斗", "北回": "北迴", "匡复": "匡複", "匪干": "匪幹", "十卷": "十卷", "十台": "十臺", "十只": "十隻", "十出": "十齣", "千丝万缕": "千絲萬縷", "千回百折": "千迴百折", "千回百转": "千迴百轉", "千钧一发": "千鈞一髮", "千只": "千隻", "升斗小民": "升斗小民", "半只": "半隻", "南岳": "南嶽", "南征": "南征", "南台": "南臺", "南回": "南迴", "卡里": "卡裡", "印制": "印製", "卷入": "卷入", "卷取": "卷取", "卷土重来": "卷土重來", "卷子": "卷子", "卷宗": "卷宗", "卷尺": "卷尺", "卷层云": "卷層雲", "卷帙": "卷帙", "卷扬机": "卷揚機", "卷曲": "卷曲", "卷染": "卷染", "卷烟": "卷煙", "卷筒": "卷筒", "卷纬": "卷緯", "卷绕": "卷繞", "卷装": "卷裝", "卷轴": "卷軸", "卷云": "卷雲", "卷领": "卷領", "卷发": "卷髮", "卷须": "卷鬚", "参与": "參与", "参与者": "參与者", "参合": "參合", "参考价值": "參考價值", "参与": "參與", "参与人员": "參與人員", "参与制": "參與制", "参与感": "參與感", "参与者": "參與者", "参观团": "參觀團", "参观团体": "參觀團體", "参阅": "參閱", "反冲": "反衝", "反复": "反複", "反复": "反覆", "取舍": "取捨", "口里": "口裡", "只准": "只准", "只冲": "只衝", "叮当": "叮噹", "可怜虫": "可憐虫", "可紧可松": "可緊可鬆", "台制": "台製", "司令台": "司令臺", "吃着不尽": "吃著不盡", "吃里扒外": "吃裡扒外", "吃里爬外": "吃裡爬外", "各吊": "各吊", "合伙": "合伙", "合并": "合併", "合着": "合著", "合着者": "合著者", "吊上": "吊上", "吊下": "吊下", "吊了": "吊了", "吊个": "吊個", "吊儿郎当": "吊兒郎當", "吊到": "吊到", "吊去": "吊去", "吊取": "吊取", "吊吊": "吊吊", "吊嗓": "吊嗓", "吊好": "吊好", "吊子": "吊子", "吊带": "吊帶", "吊带裤": "吊帶褲", "吊床": "吊床", "吊得": "吊得", "吊挂": "吊掛", "吊挂着": "吊掛著", "吊杆": "吊杆", "吊架": "吊架", "吊桶": "吊桶", "吊杆": "吊桿", "吊桥": "吊橋", "吊死": "吊死", "吊灯": "吊燈", "吊环": "吊環", "吊盘": "吊盤", "吊索": "吊索", "吊着": "吊著", "吊装": "吊裝", "吊裤": "吊褲", "吊裤带": "吊褲帶", "吊袜": "吊襪", "吊走": "吊走", "吊起": "吊起", "吊车": "吊車", "吊钩": "吊鉤", "吊销": "吊銷", "吊钟": "吊鐘", "同伙": "同伙", "名表": "名錶", "后冠": "后冠", "后土": "后土", "后妃": "后妃", "后座": "后座", "后稷": "后稷", "后羿": "后羿", "后里": "后里", "向着": "向著", "吞并": "吞併", "吹发": "吹髮", "吕后": "呂后", "獃里獃气": "呆裡呆氣", "周而复始": "周而複始", "呼吁": "呼籲", "和面": "和麵", "哪里": "哪裡", "哭脏": "哭髒", "问卷": "問卷", "喝采": "喝采", "单干": "單干", "单只": "單隻", "嘴里": "嘴裡", "恶心": "噁心", "当啷": "噹啷", "当当": "噹噹", "噜苏": "嚕囌", "向导": "嚮導", "向往": "嚮往", "向应": "嚮應", "向日": "嚮日", "向迩": "嚮邇", "严丝合缝": "嚴絲合縫", "严复": "嚴複", "四舍五入": "四捨五入", "四只": "四隻", "四出": "四齣", "回丝": "回絲", "回着": "回著", "回荡": "回蕩", "回复": "回覆", "回采": "回采", "圈子里": "圈子裡", "圈里": "圈裡", "国历": "國曆", "国雠": "國讎", "园里": "園裡", "图里": "圖裡", "土里": "土裡", "土制": "土製", "地志": "地誌", "坍台": "坍臺", "坑里": "坑裡", "坦荡": "坦蕩", "垂发": "垂髮", "垮台": "垮臺", "埋布": "埋佈", "城里": "城裡", "基干": "基幹", "报复": "報複", "塌台": "塌臺", "塔台": "塔臺", "涂着": "塗著", "墓志": "墓誌", "墨斗": "墨斗", "墨索里尼": "墨索裡尼", "垦复": "墾複", "垄断价格": "壟斷價格", "垄断资产": "壟斷資產", "垄断集团": "壟斷集團", "壶里": "壺裡", "寿面": "壽麵", "夏天里": "夏天裡", "夏历": "夏曆", "外制": "外製", "多冲": "多衝", "多采多姿": "多采多姿", "多么": "多麼", "夜光表": "夜光錶", "夜里": "夜裡", "梦里": "夢裡", "大伙": "大伙", "大卷": "大卷", "大干": "大干", "大干": "大幹", "大锤": "大鎚", "大只": "大隻", "天后": "天后", "天干": "天干", "天文台": "天文臺", "天翻地复": "天翻地覆", "太后": "太后", "奏折": "奏摺", "女丑": "女丑", "女佣": "女佣", "好家夥": "好傢夥", "好戏连台": "好戲連臺", "如法泡制": "如法泡製", "妆台": "妝臺", "姜太公": "姜太公", "姜子牙": "姜子牙", "姜丝": "姜絲", "字汇": "字彙", "字里行间": "字裡行間", "存折": "存摺", "孟姜女": "孟姜女", "宇宙志": "宇宙誌", "定准": "定准", "定制": "定製", "宣布": "宣佈", "宫里": "宮裡", "家伙": "家伙", "家里": "家裡", "密布": "密佈", "寇雠": "寇讎", "实干": "實幹", "写字台": "寫字檯", "写字台": "寫字臺", "宽松": "寬鬆", "封面里": "封面裡", "射干": "射干", "对表": "對錶", "小丑": "小丑", "小伙": "小伙", "小只": "小隻", "少吊": "少吊", "尺布斗粟": "尺布斗粟", "尼克松": "尼克鬆", "尼采": "尼采", "尿斗": "尿斗", "局里": "局裡", "居里": "居裡", "屋子里": "屋子裡", "屋里": "屋裡", "展布": "展佈", "屡仆屡起": "屢仆屢起", "屯里": "屯裡", "山岳": "山嶽", "山里": "山裡", "峰回": "峰迴", "巡回": "巡迴", "巧干": "巧幹", "巴尔干": "巴爾幹", "巴里": "巴裡", "巷里": "巷裡", "市里": "市裡", "布谷": "布穀", "希腊": "希腊", "帘子": "帘子", "帘布": "帘布", "席卷": "席卷", "带团参加": "帶團參加", "带发修行": "帶髮修行", "干休": "干休", "干系": "干係", "干卿何事": "干卿何事", "干将": "干將", "干戈": "干戈", "干挠": "干撓", "干扰": "干擾", "干支": "干支", "干政": "干政", "干时": "干時", "干涉": "干涉", "干犯": "干犯", "干与": "干與", "干着急": "干著急", "干贝": "干貝", "干预": "干預", "平台": "平臺", "年历": "年曆", "年里": "年裡", "干上": "幹上", "干下去": "幹下去", "干了": "幹了", "干事": "幹事", "干些": "幹些", "干个": "幹個", "干劲": "幹勁", "干员": "幹員", "干吗": "幹嗎", "干嘛": "幹嘛", "干坏事": "幹壞事", "干完": "幹完", "干得": "幹得", "干性油": "幹性油", "干才": "幹才", "干掉": "幹掉", "干校": "幹校", "干活": "幹活", "干流": "幹流", "干球温度": "幹球溫度", "干线": "幹線", "干练": "幹練", "干警": "幹警", "干起来": "幹起來", "干路": "幹路", "干道": "幹道", "干部": "幹部", "干么": "幹麼", "几丝": "幾絲", "几只": "幾隻", "几出": "幾齣", "底里": "底裡", "康采恩": "康采恩", "庙里": "廟裡", "建台": "建臺", "弄脏": "弄髒", "弔卷": "弔卷", "弘历": "弘曆", "别扭": "彆扭", "别拗": "彆拗", "别气": "彆氣", "别脚": "彆腳", "别着": "彆著", "弹子台": "彈子檯", "弹药": "彈葯", "汇报": "彙報", "汇整": "彙整", "汇编": "彙編", "汇总": "彙總", "汇纂": "彙纂", "汇辑": "彙輯", "汇集": "彙集", "形单影只": "形單影隻", "影后": "影后", "往里": "往裡", "往复": "往複", "征伐": "征伐", "征兵": "征兵", "征尘": "征塵", "征夫": "征夫", "征战": "征戰", "征收": "征收", "征服": "征服", "征求": "征求", "征发": "征發", "征衣": "征衣", "征讨": "征討", "征途": "征途", "后台": "後臺", "从里到外": "從裡到外", "从里向外": "從裡向外", "复雠": "復讎", "复辟": "復辟", "德干高原": "德干高原", "心愿": "心愿", "心荡神驰": "心蕩神馳", "心里": "心裡", "忙里": "忙裡", "快干": "快幹", "快冲": "快衝", "怎么": "怎麼", "怎么着": "怎麼著", "怒发冲冠": "怒髮衝冠", "急冲而下": "急衝而下", "怪里怪气": "怪裡怪氣", "恩准": "恩准", "情有所钟": "情有所鍾", "意面": "意麵", "慌里慌张": "慌裡慌張", "慰借": "慰藉", "忧郁": "憂郁", "凭吊": "憑吊", "凭借": "憑藉", "凭借着": "憑藉著", "蒙懂": "懞懂", "怀里": "懷裡", "怀表": "懷錶", "悬吊": "懸吊", "恋恋不舍": "戀戀不捨", "戏台": "戲臺", "戴表": "戴錶", "戽斗": "戽斗", "房里": "房裡", "手不释卷": "手不釋卷", "手卷": "手卷", "手折": "手摺", "手里": "手裡", "手表": "手錶", "手松": "手鬆", "才干": "才幹", "才高八斗": "才高八斗", "打谷": "打穀", "扞御": "扞禦", "批准": "批准", "批复": "批複", "批复": "批覆", "承制": "承製", "抗御": "抗禦", "折冲": "折衝", "披复": "披覆", "披发": "披髮", "抱朴": "抱朴", "抵御": "抵禦", "拆伙": "拆伙", "拆台": "拆臺", "拈须": "拈鬚", "拉纤": "拉縴", "拉面": "拉麵", "拖吊": "拖吊", "拗别": "拗彆", "拮据": "拮据", "振荡": "振蕩", "捍御": "捍禦", "舍不得": "捨不得", "舍出": "捨出", "舍去": "捨去", "舍命": "捨命", "舍己从人": "捨己從人", "舍己救人": "捨己救人", "舍己为人": "捨己為人", "舍己为公": "捨己為公", "舍己为国": "捨己為國", "舍得": "捨得", "舍我其谁": "捨我其誰", "舍本逐末": "捨本逐末", "舍弃": "捨棄", "舍死忘生": "捨死忘生", "舍生": "捨生", "舍短取长": "捨短取長", "舍身": "捨身", "舍车保帅": "捨車保帥", "舍近求远": "捨近求遠", "捲发": "捲髮", "捵面": "捵麵", "扫荡": "掃蕩", "掌柜": "掌柜", "排骨面": "排骨麵", "挂帘": "掛帘", "挂面": "掛麵", "接着说": "接著說", "提心吊胆": "提心吊膽", "插图卷": "插圖卷", "换吊": "換吊", "换只": "換隻", "换发": "換髮", "摇荡": "搖蕩", "搭伙": "搭伙", "折合": "摺合", "折奏": "摺奏", "折子": "摺子", "折尺": "摺尺", "折扇": "摺扇", "折梯": "摺梯", "折椅": "摺椅", "折叠": "摺疊", "折痕": "摺痕", "折篷": "摺篷", "折纸": "摺紙", "折裙": "摺裙", "撒布": "撒佈", "撚须": "撚鬚", "撞球台": "撞球檯", "擂台": "擂臺", "担仔面": "擔仔麵", "担担面": "擔擔麵", "担着": "擔著", "担负着": "擔負著", "据云": "據云", "擢发难数": "擢髮難數", "摆布": "擺佈", "摄制": "攝製", "支干": "支幹", "收获": "收穫", "改制": "改製", "攻克": "攻剋", "放荡": "放蕩", "放松": "放鬆", "叙说着": "敘說著", "散伙": "散伙", "散布": "散佈", "散荡": "散蕩", "散发": "散髮", "整只": "整隻", "整出": "整齣", "文采": "文采", "斗六": "斗六", "斗南": "斗南", "斗大": "斗大", "斗子": "斗子", "斗室": "斗室", "斗方": "斗方", "斗栱": "斗栱", "斗笠": "斗笠", "斗箕": "斗箕", "斗篷": "斗篷", "斗胆": "斗膽", "斗转参横": "斗轉參橫", "斗量": "斗量", "斗门": "斗門", "料斗": "料斗", "斯里兰卡": "斯裡蘭卡", "新历": "新曆", "断头台": "斷頭臺", "方才": "方纔", "施舍": "施捨", "旋绕着": "旋繞著", "旋回": "旋迴", "族里": "族裡", "日历": "日曆", "日志": "日誌", "日进斗金": "日進斗金", "明了": "明瞭", "明窗净几": "明窗淨几", "明里": "明裡", "星斗": "星斗", "星历": "星曆", "星移斗换": "星移斗換", "星移斗转": "星移斗轉", "星罗棋布": "星羅棋佈", "星辰表": "星辰錶", "春假里": "春假裡", "春天里": "春天裡", "晃荡": "晃蕩", "景致": "景緻", "暗地里": "暗地裡", "暗沟里": "暗溝裡", "暗里": "暗裡", "历数": "曆數", "历书": "曆書", "历法": "曆法", "书卷": "書卷", "会干": "會幹", "会里": "會裡", "月历": "月曆", "月台": "月臺", "有只": "有隻", "木制": "木製", "本台": "本臺", "朴子": "朴子", "朴实": "朴實", "朴硝": "朴硝", "朴素": "朴素", "朴资茅斯": "朴資茅斯", "村里": "村裡", "束发": "束髮", "东岳": "東嶽", "东征": "東征", "松赞干布": "松贊干布", "板着脸": "板著臉", "板荡": "板蕩", "枕借": "枕藉", "林宏岳": "林宏嶽", "枝干": "枝幹", "枯干": "枯幹", "某只": "某隻", "染发": "染髮", "柜上": "柜上", "柜台": "柜台", "柜子": "柜子", "查卷": "查卷", "查号台": "查號臺", "校雠学": "校讎學", "核准": "核准", "核复": "核覆", "格里": "格裡", "案卷": "案卷", "条干": "條幹", "棉卷": "棉卷", "棉制": "棉製", "植发": "植髮", "楼台": "樓臺", "标志着": "標志著", "标致": "標緻", "标志": "標誌", "模制": "模製", "树干": "樹幹", "横征暴敛": "橫征暴斂", "横冲": "橫衝", "档卷": "檔卷", "检复": "檢覆", "台子": "檯子", "台布": "檯布", "台灯": "檯燈", "台球": "檯球", "台面": "檯面", "柜台": "櫃檯", "柜台": "櫃臺", "栏干": "欄干", "欺蒙": "欺矇", "歌后": "歌后", "欧几里得": "歐幾裡得", "正当着": "正當著", "武后": "武后", "武松": "武鬆", "归并": "歸併", "死里求生": "死裡求生", "死里逃生": "死裡逃生", "残卷": "殘卷", "杀虫药": "殺虫藥", "壳里": "殼裡", "母后": "母后", "每只": "每隻", "比干": "比干", "毛卷": "毛卷", "毛发": "毛髮", "毫发": "毫髮", "气冲牛斗": "氣沖牛斗", "气象台": "氣象臺", "氯霉素": "氯黴素", "水斗": "水斗", "水里": "水裡", "水表": "水錶", "永历": "永曆", "污蔑": "汙衊", "池里": "池裡", "污蔑": "污衊", "沈着": "沈著", "没事干": "沒事幹", "没精打采": "沒精打采", "冲着": "沖著", "沙里淘金": "沙裡淘金", "河里": "河裡", "油面": "油麵", "泡面": "泡麵", "泰斗": "泰斗", "洗手不干": "洗手不幹", "洗发精": "洗髮精", "派团参加": "派團參加", "流荡": "流蕩", "浩荡": "浩蕩", "浪琴表": "浪琴錶", "浪荡": "浪蕩", "浮荡": "浮蕩", "海里": "海裡", "涂着": "涂著", "液晶表": "液晶錶", "凉面": "涼麵", "淡朱": "淡硃", "淫荡": "淫蕩", "测验卷": "測驗卷", "港制": "港製", "游荡": "游蕩", "凑合着": "湊合著", "湖里": "湖裡", "汤团": "湯糰", "汤面": "湯麵", "卤制": "滷製", "卤面": "滷麵", "满布": "滿佈", "漂荡": "漂蕩", "漏斗": "漏斗", "演奏台": "演奏臺", "潭里": "潭裡", "激荡": "激蕩", "浓郁": "濃郁", "浓发": "濃髮", "湿地松": "濕地鬆", "蒙蒙": "濛濛", "蒙雾": "濛霧", "瀛台": "瀛臺", "弥漫": "瀰漫", "弥漫着": "瀰漫著", "火并": "火併", "灰蒙": "灰濛", "炒面": "炒麵", "炮制": "炮製", "炸药": "炸葯", "炸酱面": "炸醬麵", "为着": "為著", "乌干达": "烏干達", "乌苏里江": "烏蘇裡江", "乌发": "烏髮", "乌龙面": "烏龍麵", "烘制": "烘製", "烽火台": "烽火臺", "无干": "無干", "无精打采": "無精打采", "炼制": "煉製", "烟卷儿": "煙卷兒", "烟斗": "煙斗", "烟斗丝": "煙斗絲", "烟台": "煙臺", "照准": "照准", "熨斗": "熨斗", "灯台": "燈臺", "燎发": "燎髮", "烫发": "燙髮", "烫面": "燙麵", "烛台": "燭臺", "炉台": "爐臺", "爽荡": "爽蕩", "片言只语": "片言隻語", "牛肉面": "牛肉麵", "牛只": "牛隻", "特准": "特准", "特征": "特征", "特里": "特裡", "特制": "特製", "牵系": "牽繫", "狼借": "狼藉", "猛冲": "猛衝", "奖杯": "獎盃", "获准": "獲准", "率团参加": "率團參加", "王侯后": "王侯后", "王后": "王后", "班里": "班裡", "理发": "理髮", "瑶台": "瑤臺", "甚么": "甚麼", "甜面酱": "甜麵醬", "生力面": "生力麵", "生锈": "生鏽", "生发": "生髮", "田里": "田裡", "由馀": "由余", "男佣": "男佣", "男用表": "男用錶", "留发": "留髮", "畚斗": "畚斗", "当着": "當著", "疏松": "疏鬆", "疲困": "疲睏", "病症": "病癥", "症候": "癥候", "症状": "癥狀", "症结": "癥結", "登台": "登臺", "发布": "發佈", "发着": "發著", "发面": "發麵", "发霉": "發黴", "白卷": "白卷", "白干儿": "白干兒", "白发": "白髮", "白面": "白麵", "百里": "百裡", "百只": "百隻", "皇后": "皇后", "皇历": "皇曆", "皓发": "皓髮", "皮里阳秋": "皮裏陽秋", "皮里春秋": "皮裡春秋", "皮制": "皮製", "皱折": "皺摺", "盒里": "盒裡", "监制": "監製", "盘里": "盤裡", "盘回": "盤迴", "直接参与": "直接參与", "直冲": "直衝", "相克": "相剋", "相干": "相干", "相冲": "相衝", "看台": "看臺", "眼帘": "眼帘", "眼眶里": "眼眶裡", "眼里": "眼裡", "困乏": "睏乏", "睡着了": "睡著了", "了如": "瞭如", "了望": "瞭望", "了然": "瞭然", "了若指掌": "瞭若指掌", "了解": "瞭解", "蒙住": "矇住", "蒙昧无知": "矇昧無知", "蒙混": "矇混", "蒙蒙": "矇矇", "蒙眬": "矇矓", "蒙蔽": "矇蔽", "蒙骗": "矇騙", "短发": "短髮", "石英表": "石英錶", "研制": "研製", "砰当": "砰噹", "砲台": "砲臺", "朱唇皓齿": "硃唇皓齒", "朱批": "硃批", "朱砂": "硃砂", "朱笔": "硃筆", "朱红色": "硃紅色", "朱色": "硃色", "硬干": "硬幹", "砚台": "硯臺", "碑志": "碑誌", "磁制": "磁製", "磨制": "磨製", "示复": "示覆", "社里": "社裡", "神采": "神采", "御侮": "禦侮", "御寇": "禦寇", "御寒": "禦寒", "御敌": "禦敵", "秃发": "禿髮", "秀发": "秀髮", "私下里": "私下裡", "秋天里": "秋天裡", "秋裤": "秋褲", "秒表": "秒錶", "稀松": "稀鬆", "禀复": "稟覆", "稻谷": "稻穀", "稽征": "稽征", "谷仓": "穀倉", "谷场": "穀場", "谷子": "穀子", "谷壳": "穀殼", "谷物": "穀物", "谷皮": "穀皮", "谷神": "穀神", "谷粒": "穀粒", "谷舱": "穀艙", "谷苗": "穀苗", "谷草": "穀草", "谷贱伤农": "穀賤傷農", "谷道": "穀道", "谷雨": "穀雨", "谷类": "穀類", "积极参与": "積极參与", "积极参加": "積极參加", "空荡": "空蕩", "窗帘": "窗帘", "窗明几净": "窗明几淨", "窗台": "窗檯", "窗台": "窗臺", "窝里": "窩裡", "窝阔台": "窩闊臺", "穷追不舍": "窮追不捨", "笆斗": "笆斗", "笑里藏刀": "笑裡藏刀", "第一卷": "第一卷", "筋斗": "筋斗", "答卷": "答卷", "答复": "答複", "答复": "答覆", "筵几": "筵几", "箕斗": "箕斗", "签着": "簽著", "吁求": "籲求", "吁请": "籲請", "粗制": "粗製", "粗卤": "粗鹵", "精干": "精幹", "精明强干": "精明強幹", "精致": "精緻", "精制": "精製", "精辟": "精辟", "精采": "精采", "糊里糊涂": "糊裡糊塗", "团子": "糰子", "系着": "系著", "纪历": "紀曆", "红发": "紅髮", "红霉素": "紅黴素", "纡回": "紆迴", "纳采": "納采", "素食面": "素食麵", "素面": "素麵", "紫微斗数": "紫微斗數", "细致": "細緻", "组里": "組裡", "结发": "結髮", "绝对参照": "絕對參照", "丝来线去": "絲來線去", "丝布": "絲布", "丝板": "絲板", "丝瓜布": "絲瓜布", "丝绒布": "絲絨布", "丝线": "絲線", "丝织厂": "絲織廠", "丝虫": "絲蟲", "綑吊": "綑吊", "经卷": "經卷", "绿霉素": "綠黴素", "维系": "維繫", "绾发": "綰髮", "网里": "網裡", "紧绷": "緊繃", "紧绷着": "緊繃著", "紧追不舍": "緊追不捨", "编制": "編製", "编发": "編髮", "缓冲": "緩衝", "致密": "緻密", "萦回": "縈迴", "县里": "縣裡", "县志": "縣誌", "缝里": "縫裡", "缝制": "縫製", "纤夫": "縴夫", "繁复": "繁複", "绷住": "繃住", "绷子": "繃子", "绷带": "繃帶", "绷紧": "繃緊", "绷脸": "繃臉", "绷着": "繃著", "绷着脸": "繃著臉", "绷着脸儿": "繃著臉兒", "绷开": "繃開", "绘制": "繪製", "系上": "繫上", "系到": "繫到", "系囚": "繫囚", "系心": "繫心", "系念": "繫念", "系怀": "繫懷", "系数": "繫數", "系于": "繫於", "系系": "繫系", "系紧": "繫緊", "系绳": "繫繩", "系着": "繫著", "系辞": "繫辭", "缴卷": "繳卷", "累囚": "纍囚", "累累": "纍纍", "坛子": "罈子", "坛坛罐罐": "罈罈罐罐", "骂着": "罵著", "美制": "美製", "美发": "美髮", "翻来复去": "翻來覆去", "翻天复地": "翻天覆地", "翻复": "翻覆", "翻云复雨": "翻雲覆雨", "老么": "老么", "老板": "老闆", "考卷": "考卷", "耕获": "耕穫", "聊斋志异": "聊齋誌異", "联系": "聯係", "联系": "聯繫", "肉丝面": "肉絲麵", "肉羹面": "肉羹麵", "肉松": "肉鬆", "肢体": "肢体", "背向着": "背向著", "背地里": "背地裡", "胡里胡涂": "胡裡胡塗", "能干": "能幹", "脉冲": "脈衝", "脱发": "脫髮", "腊味": "腊味", "腊笔": "腊筆", "腊肉": "腊肉", "脑子里": "腦子裡", "腰里": "腰裡", "胶卷": "膠卷", "自制": "自製", "自觉自愿": "自覺自愿", "台上": "臺上", "台下": "臺下", "台中": "臺中", "台北": "臺北", "台南": "臺南", "台地": "臺地", "台塑": "臺塑", "台大": "臺大", "台币": "臺幣", "台座": "臺座", "台东": "臺東", "台柱": "臺柱", "台榭": "臺榭", "台汽": "臺汽", "台海": "臺海", "台澎金马": "臺澎金馬", "台湾": "臺灣", "台灯": "臺燈", "台球": "臺球", "台省": "臺省", "台端": "臺端", "台糖": "臺糖", "台肥": "臺肥", "台航": "臺航", "台视": "臺視", "台词": "臺詞", "台车": "臺車", "台铁": "臺鐵", "台阶": "臺階", "台电": "臺電", "台面": "臺面", "舂谷": "舂穀", "兴致": "興緻", "兴高采烈": "興高采烈", "旧历": "舊曆", "舒卷": "舒卷", "舞台": "舞臺", "航海历": "航海曆", "船只": "船隻", "舰只": "艦隻", "芬郁": "芬郁", "花卷": "花卷", "花盆里": "花盆裡", "花采": "花采", "苑里": "苑裡", "若干": "若干", "苦干": "苦幹", "苦里": "苦裏", "苦卤": "苦鹵", "范仲淹": "范仲淹", "范蠡": "范蠡", "范阳": "范陽", "茅台": "茅臺", "茶几": "茶几", "草丛里": "草叢裡", "庄里": "莊裡", "茎干": "莖幹", "莽荡": "莽蕩", "菌丝体": "菌絲体", "菌丝体": "菌絲體", "华里": "華裡", "华发": "華髮", "万卷": "萬卷", "万历": "萬曆", "万只": "萬隻", "落发": "落髮", "着儿": "著兒", "着书立说": "著書立說", "着色软体": "著色軟體", "着重指出": "著重指出", "着录": "著錄", "着录规则": "著錄規則", "蓄发": "蓄髮", "蓄须": "蓄鬚", "蓬发": "蓬髮", "蓬松": "蓬鬆", "莲台": "蓮臺", "荡来荡去": "蕩來蕩去", "荡女": "蕩女", "荡妇": "蕩婦", "荡寇": "蕩寇", "荡平": "蕩平", "荡涤": "蕩滌", "荡漾": "蕩漾", "荡然": "蕩然", "荡舟": "蕩舟", "荡船": "蕩船", "荡荡": "蕩蕩", "薑丝": "薑絲", "薙发": "薙髮", "借以": "藉以", "借口": "藉口", "借故": "藉故", "借机": "藉機", "借此": "藉此", "借由": "藉由", "借端": "藉端", "借着": "藉著", "借借": "藉藉", "借词": "藉詞", "借资": "藉資", "借酒浇愁": "藉酒澆愁", "藤制": "藤製", "蕴含着": "蘊含著", "蕴涵着": "蘊涵著", "蕴借": "蘊藉", "萝卜": "蘿蔔", "虎须": "虎鬚", "号志": "號誌", "蜂后": "蜂后", "蛮干": "蠻幹", "行事历": "行事曆", "胡同": "衚衕", "冲上": "衝上", "冲下": "衝下", "冲来": "衝來", "冲倒": "衝倒", "冲出": "衝出", "冲到": "衝到", "冲刺": "衝刺", "冲克": "衝剋", "冲力": "衝力", "冲劲": "衝勁", "冲动": "衝動", "冲去": "衝去", "冲口": "衝口", "冲垮": "衝垮", "冲堂": "衝堂", "冲压": "衝壓", "冲天": "衝天", "冲掉": "衝掉", "冲撞": "衝撞", "冲击": "衝擊", "冲散": "衝散", "冲决": "衝決", "冲浪": "衝浪", "冲激": "衝激", "冲破": "衝破", "冲程": "衝程", "冲突": "衝突", "冲线": "衝線", "冲着": "衝著", "冲冲": "衝衝", "冲要": "衝要", "冲起": "衝起", "冲进": "衝進", "冲过": "衝過", "冲锋": "衝鋒", "表里": "表裡", "袖里": "袖裡", "被里": "被裡", "被复": "被複", "被复": "被覆", "被复着": "被覆著", "被发": "被髮", "裁并": "裁併", "裁制": "裁製", "里面": "裏面", "里人": "裡人", "里加": "裡加", "里外": "裡外", "里子": "裡子", "里屋": "裡屋", "里层": "裡層", "里布": "裡布", "里带": "裡帶", "里弦": "裡弦", "里应外合": "裡應外合", "里拉": "裡拉", "里斯": "裡斯", "里海": "裡海", "里脊": "裡脊", "里衣": "裡衣", "里里": "裡裡", "里通外国": "裡通外國", "里通外敌": "裡通外敵", "里边": "裡邊", "里间": "裡間", "里面": "裡面", "里头": "裡頭", "制件": "製件", "制作": "製作", "制做": "製做", "制备": "製備", "制冰": "製冰", "制冷": "製冷", "制剂": "製劑", "制品": "製品", "制图": "製圖", "制成": "製成", "制法": "製法", "制为": "製為", "制片": "製片", "制版": "製版", "制程": "製程", "制糖": "製糖", "制纸": "製紙", "制药": "製藥", "制表": "製表", "制裁": "製裁", "制造": "製造", "制革": "製革", "制鞋": "製鞋", "制盐": "製鹽", "复仞年如": "複仞年如", "复以百万": "複以百萬", "复位": "複位", "复信": "複信", "复分数": "複分數", "复列": "複列", "复利": "複利", "复印": "複印", "复原": "複原", "复句": "複句", "复合": "複合", "复名": "複名", "复员": "複員", "复壁": "複壁", "复壮": "複壯", "复姓": "複姓", "复字键": "複字鍵", "复审": "複審", "复写": "複寫", "复式": "複式", "复复": "複復", "复数": "複數", "复本": "複本", "复查": "複查", "复核": "複核", "复检": "複檢", "复次": "複次", "复比": "複比", "复决": "複決", "复活": "複活", "复测": "複測", "复亩珍": "複畝珍", "复发": "複發", "复目": "複目", "复眼": "複眼", "复种": "複種", "复线": "複線", "复习": "複習", "复兴社": "複興社", "复旧": "複舊", "复色": "複色", "复叶": "複葉", "复盖": "複蓋", "复苏": "複蘇", "复制": "複製", "复诊": "複診", "复词": "複詞", "复试": "複試", "复课": "複課", "复议": "複議", "复变函数": "複變函數", "复赛": "複賽", "复述": "複述", "复选": "複選", "复钱": "複錢", "复杂": "複雜", "复电": "複電", "复音": "複音", "复韵": "複韻", "衬里": "襯裡", "西岳": "西嶽", "西征": "西征", "西历": "西曆", "要冲": "要衝", "要么": "要麼", "复上": "覆上", "复亡": "覆亡", "复住": "覆住", "复信": "覆信", "复命": "覆命", "复在": "覆在", "复审": "覆審", "复巢之下": "覆巢之下", "复成": "覆成", "复败": "覆敗", "复文": "覆文", "复校": "覆校", "复核": "覆核", "复水难收": "覆水難收", "复没": "覆沒", "复灭": "覆滅", "复盆": "覆盆", "复舟": "覆舟", "复着": "覆著", "复盖": "覆蓋", "复盖着": "覆蓋著", "复试": "覆試", "复议": "覆議", "复车": "覆車", "复载": "覆載", "复辙": "覆轍", "复电": "覆電", "见复": "見覆", "亲征": "親征", "观众台": "觀眾臺", "观台": "觀臺", "观象台": "觀象臺", "角落里": "角落裡", "觔斗": "觔斗", "触须": "觸鬚", "订制": "訂製", "诉说着": "訴說著", "词汇": "詞彙", "试卷": "試卷", "诗卷": "詩卷", "话里有话": "話裡有話", "志哀": "誌哀", "志喜": "誌喜", "志庆": "誌慶", "语云": "語云", "语汇": "語彙", "诬蔑": "誣衊", "诵经台": "誦經臺", "说着": "說著", "课征": "課征", "调制": "調製", "调频台": "調頻臺", "请参阅": "請參閱", "讲台": "講臺", "谢绝参观": "謝絕參觀", "护发": "護髮", "雠隙": "讎隙", "豆腐干": "豆腐干", "竖着": "豎著", "丰富多采": "豐富多采", "丰滨": "豐濱", "丰滨乡": "豐濱鄉", "丰采": "豐采", "象征着": "象徵著", "贵干": "貴幹", "贾后": "賈后", "赈饥": "賑饑", "贤后": "賢后", "质朴": "質朴", "赌台": "賭檯", "购并": "購併", "赤松": "赤鬆", "起吊": "起吊", "起复": "起複", "赶制": "趕製", "跌荡": "跌蕩", "跟斗": "跟斗", "跳荡": "跳蕩", "跳表": "跳錶", "踬仆": "躓仆", "躯干": "軀幹", "车库里": "車庫裡", "车站里": "車站裡", "车里": "車裡", "轻松": "輕鬆", "轮回": "輪迴", "转台": "轉檯", "辛丑": "辛丑", "辟邪": "辟邪", "办伙": "辦伙", "办公台": "辦公檯", "辞汇": "辭彙", "农历": "農曆", "迂回": "迂迴", "近日里": "近日裡", "迥然回异": "迥然迴異", "回光返照": "迴光返照", "回向": "迴向", "回圈": "迴圈", "回廊": "迴廊", "回形夹": "迴形夾", "回文": "迴文", "回旋": "迴旋", "回流": "迴流", "回环": "迴環", "回荡": "迴盪", "回纹针": "迴紋針", "回绕": "迴繞", "回肠": "迴腸", "回荡": "迴蕩", "回诵": "迴誦", "回路": "迴路", "回转": "迴轉", "回递性": "迴遞性", "回避": "迴避", "回响": "迴響", "回风": "迴風", "回首": "迴首", "迷蒙": "迷濛", "退伙": "退伙", "这么着": "這么著", "这里": "這裏", "这里": "這裡", "这只": "這隻", "这么": "這麼", "这么着": "這麼著", "通心面": "通心麵", "速食面": "速食麵", "连系": "連繫", "连台好戏": "連臺好戲", "游荡": "遊蕩", "遍布": "遍佈", "递回": "遞迴", "远征": "遠征", "适才": "適纔", "遮复": "遮覆", "还冲": "還衝", "邋里邋遢": "邋裡邋遢", "那里": "那裡", "那只": "那隻", "那么": "那麼", "那么着": "那麼著", "邪辟": "邪辟", "郁烈": "郁烈", "郁穆": "郁穆", "郁郁": "郁郁", "郁闭": "郁閉", "郁馥": "郁馥", "乡愿": "鄉愿", "乡里": "鄉裡", "邻里": "鄰裡", "配合着": "配合著", "配制": "配製", "酒杯": "酒盃", "酒坛": "酒罈", "酥松": "酥鬆", "醋坛": "醋罈", "酝借": "醞藉", "酝酿着": "醞釀著", "医药": "醫葯", "醲郁": "醲郁", "酿制": "釀製", "采地": "采地", "采女": "采女", "采声": "采聲", "采色": "采色", "采邑": "采邑", "里程表": "里程錶", "重折": "重摺", "重复": "重複", "重复": "重覆", "重锤": "重鎚", "野台戏": "野臺戲", "金斗": "金斗", "金表": "金錶", "金发": "金髮", "金霉素": "金黴素", "钉锤": "釘鎚", "银朱": "銀硃", "银发": "銀髮", "铜制": "銅製", "铝制": "鋁製", "钢制": "鋼製", "录着": "錄著", "录制": "錄製", "表带": "錶帶", "表店": "錶店", "表厂": "錶廠", "表壳": "錶殼", "表链": "錶鏈", "表面": "錶面", "锅台": "鍋臺", "锻鍊出": "鍛鍊出", "锻鍊身体": "鍛鍊身体", "锲而不舍": "鍥而不捨", "锤儿": "鎚兒", "锤子": "鎚子", "锤头": "鎚頭", "链霉素": "鏈黴素", "镜台": "鏡臺", "锈病": "鏽病", "锈菌": "鏽菌", "锈蚀": "鏽蝕", "钟表": "鐘錶", "铁锤": "鐵鎚", "铁锈": "鐵鏽", "长征": "長征", "长发": "長髮", "长须鲸": "長鬚鯨", "门帘": "門帘", "门斗": "門斗", "门里": "門裡", "开伙": "開伙", "开卷": "開卷", "开诚布公": "開誠佈公", "开采": "開采", "閒情逸致": "閒情逸緻", "閒荡": "閒蕩", "间不容发": "間不容髮", "闵采尔": "閔采爾", "阅卷": "閱卷", "阑干": "闌干", "关系": "關係", "关系着": "關係著", "防御": "防禦", "防锈": "防鏽", "防台": "防颱", "阿斗": "阿斗", "阿里": "阿裡", "除旧布新": "除舊佈新", "阴干": "陰干", "阴历": "陰曆", "阴郁": "陰郁", "陆征祥": "陸征祥", "阳春面": "陽春麵", "阳历": "陽曆", "阳台": "陽臺", "只字": "隻字", "只影": "隻影", "只手遮天": "隻手遮天", "只眼": "隻眼", "只言片语": "隻言片語", "只身": "隻身", "雅致": "雅緻", "雇佣": "雇佣", "双折": "雙摺", "杂志": "雜誌", "鸡丝": "雞絲", "鸡丝面": "雞絲麵", "鸡腿面": "雞腿麵", "鸡只": "雞隻", "难舍": "難捨", "雪里": "雪裡", "云须": "雲鬚", "电子表": "電子錶", "电台": "電臺", "电冲": "電衝", "电复": "電覆", "电视台": "電視臺", "电表": "電錶", "震荡": "震蕩", "雾里": "霧裡", "露台": "露臺", "灵台": "靈臺", "青瓦台": "青瓦臺", "青霉": "青黴", "面朝着": "面朝著", "面临着": "面臨著", "鞋里": "鞋裡", "鞣制": "鞣製", "秋千": "鞦韆", "鞭辟入里": "鞭辟入裡", "韩国制": "韓國製", "韩制": "韓製", "预制": "預製", "颁布": "頒佈", "头里": "頭裡", "头发": "頭髮", "颊须": "頰鬚", "颠仆": "顛仆", "颠复": "顛複", "颠复": "顛覆", "显着标志": "顯著標志", "风土志": "風土誌", "风斗": "風斗", "风物志": "風物誌", "风里": "風裡", "风采": "風采", "台风": "颱風", "刮了": "颳了", "刮倒": "颳倒", "刮去": "颳去", "刮得": "颳得", "刮着": "颳著", "刮走": "颳走", "刮起": "颳起", "刮风": "颳風", "飘荡": "飄蕩", "饭团": "飯糰", "饼干": "餅干", "馄饨面": "餛飩麵", "饥不择食": "饑不擇食", "饥寒": "饑寒", "饥民": "饑民", "饥渴": "饑渴", "饥溺": "饑溺", "饥荒": "饑荒", "饥饱": "饑飽", "饥饿": "饑餓", "饥馑": "饑饉", "首当其冲": "首當其衝", "香郁": "香郁", "馥郁": "馥郁", "马里": "馬裡", "马表": "馬錶", "骀荡": "駘蕩", "腾冲": "騰衝", "骨子里": "骨子裡", "骨干": "骨幹", "骨灰坛": "骨灰罈", "肮脏": "骯髒", "脏乱": "髒亂", "脏兮兮": "髒兮兮", "脏字": "髒字", "脏得": "髒得", "脏东西": "髒東西", "脏水": "髒水", "脏的": "髒的", "脏话": "髒話", "脏钱": "髒錢", "高干": "高幹", "高台": "高臺", "髭须": "髭鬚", "发型": "髮型", "发夹": "髮夾", "发妻": "髮妻", "发姐": "髮姐", "发带": "髮帶", "发廊": "髮廊", "发式": "髮式", "发指": "髮指", "发捲": "髮捲", "发根": "髮根", "发毛": "髮毛", "发油": "髮油", "发状": "髮狀", "发短心长": "髮短心長", "发端": "髮端", "发结": "髮結", "发丝": "髮絲", "发网": "髮網", "发肤": "髮膚", "发胶": "髮膠", "发菜": "髮菜", "发蜡": "髮蠟", "发辫": "髮辮", "发针": "髮針", "发长": "髮長", "发际": "髮際", "发霜": "髮霜", "发髻": "髮髻", "发鬓": "髮鬢", "鬅松": "鬅鬆", "松了": "鬆了", "松些": "鬆些", "松劲": "鬆勁", "松动": "鬆動", "松口": "鬆口", "松土": "鬆土", "松弛": "鬆弛", "松快": "鬆快", "松懈": "鬆懈", "松手": "鬆手", "松散": "鬆散", "松林": "鬆林", "松柔": "鬆柔", "松毛虫": "鬆毛蟲", "松浮": "鬆浮", "松涛": "鬆濤", "松科": "鬆科", "松节油": "鬆節油", "松绑": "鬆綁", "松紧": "鬆緊", "松缓": "鬆緩", "松脆": "鬆脆", "松脱": "鬆脫", "松起": "鬆起", "松软": "鬆軟", "松通": "鬆通", "松开": "鬆開", "松饼": "鬆餅", "松松": "鬆鬆", "鬈发": "鬈髮", "胡子": "鬍子", "胡梢": "鬍梢", "胡渣": "鬍渣", "胡髭": "鬍髭", "胡须": "鬍鬚", "须根": "鬚根", "须毛": "鬚毛", "须生": "鬚生", "须眉": "鬚眉", "须发": "鬚髮", "须须": "鬚鬚", "鬓发": "鬢髮", "斗着": "鬥著", "闹着玩儿": "鬧著玩儿", "闹着玩儿": "鬧著玩兒", "郁郁": "鬱郁", "鱼松": "魚鬆", "鲸须": "鯨鬚", "鲇鱼": "鯰魚", "鹤发": "鶴髮", "卤化": "鹵化", "卤味": "鹵味", "卤族": "鹵族", "卤水": "鹵水", "卤汁": "鹵汁", "卤簿": "鹵簿", "卤素": "鹵素", "卤莽": "鹵莽", "卤钝": "鹵鈍", "咸味": "鹹味", "咸土": "鹹土", "咸度": "鹹度", "咸得": "鹹得", "咸水": "鹹水", "咸海": "鹹海", "咸淡": "鹹淡", "咸湖": "鹹湖", "咸汤": "鹹湯", "咸的": "鹹的", "咸肉": "鹹肉", "咸菜": "鹹菜", "咸蛋": "鹹蛋", "咸猪肉": "鹹豬肉", "咸类": "鹹類", "咸鱼": "鹹魚", "咸鸭蛋": "鹹鴨蛋", "咸卤": "鹹鹵", "咸咸": "鹹鹹", "盐卤": "鹽鹵", "面价": "麵價", "面包": "麵包", "面团": "麵團", "面店": "麵店", "面厂": "麵廠", "面杖": "麵杖", "面条": "麵條", "面灰": "麵灰", "面皮": "麵皮", "面筋": "麵筋", "面粉": "麵粉", "面糊": "麵糊", "面线": "麵線", "面茶": "麵茶", "面食": "麵食", "面饺": "麵餃", "面饼": "麵餅", "麻酱面": "麻醬麵", "黄历": "黃曆", "黄发垂髫": "黃髮垂髫", "黑发": "黑髮", "黑松": "黑鬆", "霉毒": "黴毒", "霉菌": "黴菌", "鼓里": "鼓裡", "冬冬": "鼕鼕", "龙卷": "龍卷", "龙须": "龍鬚", } zh2Hans = { '顯著': '显著', '土著': '土著', '印表機': '打印机', '說明檔案': '帮助文件', "瀋": "沈", "畫": "划", "鍾": "钟", "靦": "腼", "餘": "余", "鯰": "鲇", "鹼": "碱", "㠏": "㟆", "𡞵": "㛟", "万": "万", "与": "与", "丑": "丑", "丟": "丢", "並": "并", "丰": "丰", "么": "么", "乾": "干", "乾坤": "乾坤", "乾隆": "乾隆", "亂": "乱", "云": "云", "亙": "亘", "亞": "亚", "仆": "仆", "价": "价", "伙": "伙", "佇": "伫", "佈": "布", "体": "体", "余": "余", "余": "馀", "佣": "佣", "併": "并", "來": "来", "侖": "仑", "侶": "侣", "俁": "俣", "係": "系", "俔": "伣", "俠": "侠", "倀": "伥", "倆": "俩", "倈": "俫", "倉": "仓", "個": "个", "們": "们", "倫": "伦", "偉": "伟", "側": "侧", "偵": "侦", "偽": "伪", "傑": "杰", "傖": "伧", "傘": "伞", "備": "备", "傢": "家", "傭": "佣", "傯": "偬", "傳": "传", "傴": "伛", "債": "债", "傷": "伤", "傾": "倾", "僂": "偻", "僅": "仅", "僉": "佥", "僑": "侨", "僕": "仆", "僞": "伪", "僥": "侥", "僨": "偾", "價": "价", "儀": "仪", "儂": "侬", "億": "亿", "儈": "侩", "儉": "俭", "儐": "傧", "儔": "俦", "儕": "侪", "儘": "尽", "償": "偿", "優": "优", "儲": "储", "儷": "俪", "儸": "㑩", "儺": "傩", "儻": "傥", "儼": "俨", "儿": "儿", "兇": "凶", "兌": "兑", "兒": "儿", "兗": "兖", "党": "党", "內": "内", "兩": "两", "冊": "册", "冪": "幂", "准": "准", "凈": "净", "凍": "冻", "凜": "凛", "几": "几", "凱": "凯", "划": "划", "別": "别", "刪": "删", "剄": "刭", "則": "则", "剋": "克", "剎": "刹", "剗": "刬", "剛": "刚", "剝": "剥", "剮": "剐", "剴": "剀", "創": "创", "劃": "划", "劇": "剧", "劉": "刘", "劊": "刽", "劌": "刿", "劍": "剑", "劏": "㓥", "劑": "剂", "劚": "㔉", "勁": "劲", "動": "动", "務": "务", "勛": "勋", "勝": "胜", "勞": "劳", "勢": "势", "勩": "勚", "勱": "劢", "勵": "励", "勸": "劝", "勻": "匀", "匭": "匦", "匯": "汇", "匱": "匮", "區": "区", "協": "协", "卷": "卷", "卻": "却", "厂": "厂", "厙": "厍", "厠": "厕", "厭": "厌", "厲": "厉", "厴": "厣", "參": "参", "叄": "叁", "叢": "丛", "台": "台", "叶": "叶", "吊": "吊", "后": "后", "吒": "咤", "吳": "吴", "吶": "呐", "呂": "吕", "獃": "呆", "咼": "呙", "員": "员", "唄": "呗", "唚": "吣", "問": "问", "啓": "启", "啞": "哑", "啟": "启", "啢": "唡", "喎": "㖞", "喚": "唤", "喪": "丧", "喬": "乔", "單": "单", "喲": "哟", "嗆": "呛", "嗇": "啬", "嗊": "唝", "嗎": "吗", "嗚": "呜", "嗩": "唢", "嗶": "哔", "嘆": "叹", "嘍": "喽", "嘔": "呕", "嘖": "啧", "嘗": "尝", "嘜": "唛", "嘩": "哗", "嘮": "唠", "嘯": "啸", "嘰": "叽", "嘵": "哓", "嘸": "呒", "嘽": "啴", "噁": "恶", "噓": "嘘", "噚": "㖊", "噝": "咝", "噠": "哒", "噥": "哝", "噦": "哕", "噯": "嗳", "噲": "哙", "噴": "喷", "噸": "吨", "噹": "当", "嚀": "咛", "嚇": "吓", "嚌": "哜", "嚕": "噜", "嚙": "啮", "嚥": "咽", "嚦": "呖", "嚨": "咙", "嚮": "向", "嚲": "亸", "嚳": "喾", "嚴": "严", "嚶": "嘤", "囀": "啭", "囁": "嗫", "囂": "嚣", "囅": "冁", "囈": "呓", "囌": "苏", "囑": "嘱", "囪": "囱", "圇": "囵", "國": "国", "圍": "围", "園": "园", "圓": "圆", "圖": "图", "團": "团", "坏": "坏", "垵": "埯", "埡": "垭", "埰": "采", "執": "执", "堅": "坚", "堊": "垩", "堖": "垴", "堝": "埚", "堯": "尧", "報": "报", "場": "场", "塊": "块", "塋": "茔", "塏": "垲", "塒": "埘", "塗": "涂", "塚": "冢", "塢": "坞", "塤": "埙", "塵": "尘", "塹": "堑", "墊": "垫", "墜": "坠", "墮": "堕", "墳": "坟", "墻": "墙", "墾": "垦", "壇": "坛", "壈": "𡒄", "壋": "垱", "壓": "压", "壘": "垒", "壙": "圹", "壚": "垆", "壞": "坏", "壟": "垄", "壠": "垅", "壢": "坜", "壩": "坝", "壯": "壮", "壺": "壶", "壼": "壸", "壽": "寿", "夠": "够", "夢": "梦", "夾": "夹", "奐": "奂", "奧": "奥", "奩": "奁", "奪": "夺", "奬": "奖", "奮": "奋", "奼": "姹", "妝": "妆", "姍": "姗", "姜": "姜", "姦": "奸", "娛": "娱", "婁": "娄", "婦": "妇", "婭": "娅", "媧": "娲", "媯": "妫", "媼": "媪", "媽": "妈", "嫗": "妪", "嫵": "妩", "嫻": "娴", "嫿": "婳", "嬀": "妫", "嬈": "娆", "嬋": "婵", "嬌": "娇", "嬙": "嫱", "嬡": "嫒", "嬤": "嬷", "嬪": "嫔", "嬰": "婴", "嬸": "婶", "孌": "娈", "孫": "孙", "學": "学", "孿": "孪", "宁": "宁", "宮": "宫", "寢": "寝", "實": "实", "寧": "宁", "審": "审", "寫": "写", "寬": "宽", "寵": "宠", "寶": "宝", "將": "将", "專": "专", "尋": "寻", "對": "对", "導": "导", "尷": "尴", "屆": "届", "屍": "尸", "屓": "屃", "屜": "屉", "屢": "屡", "層": "层", "屨": "屦", "屬": "属", "岡": "冈", "峴": "岘", "島": "岛", "峽": "峡", "崍": "崃", "崗": "岗", "崢": "峥", "崬": "岽", "嵐": "岚", "嶁": "嵝", "嶄": "崭", "嶇": "岖", "嶔": "嵚", "嶗": "崂", "嶠": "峤", "嶢": "峣", "嶧": "峄", "嶮": "崄", "嶴": "岙", "嶸": "嵘", "嶺": "岭", "嶼": "屿", "嶽": "岳", "巋": "岿", "巒": "峦", "巔": "巅", "巰": "巯", "帘": "帘", "帥": "帅", "師": "师", "帳": "帐", "帶": "带", "幀": "帧", "幃": "帏", "幗": "帼", "幘": "帻", "幟": "帜", "幣": "币", "幫": "帮", "幬": "帱", "幹": "干", "幺": "么", "幾": "几", "广": "广", "庫": "库", "廁": "厕", "廂": "厢", "廄": "厩", "廈": "厦", "廚": "厨", "廝": "厮", "廟": "庙", "廠": "厂", "廡": "庑", "廢": "废", "廣": "广", "廩": "廪", "廬": "庐", "廳": "厅", "弒": "弑", "弳": "弪", "張": "张", "強": "强", "彆": "别", "彈": "弹", "彌": "弥", "彎": "弯", "彙": "汇", "彞": "彝", "彥": "彦", "征": "征", "後": "后", "徑": "径", "從": "从", "徠": "徕", "復": "复", "徵": "征", "徹": "彻", "志": "志", "恆": "恒", "恥": "耻", "悅": "悦", "悞": "悮", "悵": "怅", "悶": "闷", "惡": "恶", "惱": "恼", "惲": "恽", "惻": "恻", "愛": "爱", "愜": "惬", "愨": "悫", "愴": "怆", "愷": "恺", "愾": "忾", "愿": "愿", "慄": "栗", "態": "态", "慍": "愠", "慘": "惨", "慚": "惭", "慟": "恸", "慣": "惯", "慤": "悫", "慪": "怄", "慫": "怂", "慮": "虑", "慳": "悭", "慶": "庆", "憂": "忧", "憊": "惫", "憐": "怜", "憑": "凭", "憒": "愦", "憚": "惮", "憤": "愤", "憫": "悯", "憮": "怃", "憲": "宪", "憶": "忆", "懇": "恳", "應": "应", "懌": "怿", "懍": "懔", "懞": "蒙", "懟": "怼", "懣": "懑", "懨": "恹", "懲": "惩", "懶": "懒", "懷": "怀", "懸": "悬", "懺": "忏", "懼": "惧", "懾": "慑", "戀": "恋", "戇": "戆", "戔": "戋", "戧": "戗", "戩": "戬", "戰": "战", "戱": "戯", "戲": "戏", "戶": "户", "担": "担", "拋": "抛", "挩": "捝", "挾": "挟", "捨": "舍", "捫": "扪", "据": "据", "掃": "扫", "掄": "抡", "掗": "挜", "掙": "挣", "掛": "挂", "採": "采", "揀": "拣", "揚": "扬", "換": "换", "揮": "挥", "損": "损", "搖": "摇", "搗": "捣", "搵": "揾", "搶": "抢", "摑": "掴", "摜": "掼", "摟": "搂", "摯": "挚", "摳": "抠", "摶": "抟", "摺": "折", "摻": "掺", "撈": "捞", "撏": "挦", "撐": "撑", "撓": "挠", "撝": "㧑", "撟": "挢", "撣": "掸", "撥": "拨", "撫": "抚", "撲": "扑", "撳": "揿", "撻": "挞", "撾": "挝", "撿": "捡", "擁": "拥", "擄": "掳", "擇": "择", "擊": "击", "擋": "挡", "擓": "㧟", "擔": "担", "據": "据", "擠": "挤", "擬": "拟", "擯": "摈", "擰": "拧", "擱": "搁", "擲": "掷", "擴": "扩", "擷": "撷", "擺": "摆", "擻": "擞", "擼": "撸", "擾": "扰", "攄": "摅", "攆": "撵", "攏": "拢", "攔": "拦", "攖": "撄", "攙": "搀", "攛": "撺", "攜": "携", "攝": "摄", "攢": "攒", "攣": "挛", "攤": "摊", "攪": "搅", "攬": "揽", "敗": "败", "敘": "叙", "敵": "敌", "數": "数", "斂": "敛", "斃": "毙", "斕": "斓", "斗": "斗", "斬": "斩", "斷": "断", "於": "于", "時": "时", "晉": "晋", "晝": "昼", "暈": "晕", "暉": "晖", "暘": "旸", "暢": "畅", "暫": "暂", "曄": "晔", "曆": "历", "曇": "昙", "曉": "晓", "曏": "向", "曖": "暧", "曠": "旷", "曨": "昽", "曬": "晒", "書": "书", "會": "会", "朧": "胧", "朮": "术", "术": "术", "朴": "朴", "東": "东", "杴": "锨", "极": "极", "柜": "柜", "柵": "栅", "桿": "杆", "梔": "栀", "梘": "枧", "條": "条", "梟": "枭", "梲": "棁", "棄": "弃", "棖": "枨", "棗": "枣", "棟": "栋", "棧": "栈", "棲": "栖", "棶": "梾", "椏": "桠", "楊": "杨", "楓": "枫", "楨": "桢", "業": "业", "極": "极", "榪": "杩", "榮": "荣", "榲": "榅", "榿": "桤", "構": "构", "槍": "枪", "槤": "梿", "槧": "椠", "槨": "椁", "槳": "桨", "樁": "桩", "樂": "乐", "樅": "枞", "樓": "楼", "標": "标", "樞": "枢", "樣": "样", "樸": "朴", "樹": "树", "樺": "桦", "橈": "桡", "橋": "桥", "機": "机", "橢": "椭", "橫": "横", "檁": "檩", "檉": "柽", "檔": "档", "檜": "桧", "檟": "槚", "檢": "检", "檣": "樯", "檮": "梼", "檯": "台", "檳": "槟", "檸": "柠", "檻": "槛", "櫃": "柜", "櫓": "橹", "櫚": "榈", "櫛": "栉", "櫝": "椟", "櫞": "橼", "櫟": "栎", "櫥": "橱", "櫧": "槠", "櫨": "栌", "櫪": "枥", "櫫": "橥", "櫬": "榇", "櫱": "蘖", "櫳": "栊", "櫸": "榉", "櫻": "樱", "欄": "栏", "權": "权", "欏": "椤", "欒": "栾", "欖": "榄", "欞": "棂", "欽": "钦", "歐": "欧", "歟": "欤", "歡": "欢", "歲": "岁", "歷": "历", "歸": "归", "歿": "殁", "殘": "残", "殞": "殒", "殤": "殇", "殨": "㱮", "殫": "殚", "殮": "殓", "殯": "殡", "殰": "㱩", "殲": "歼", "殺": "杀", "殻": "壳", "殼": "壳", "毀": "毁", "毆": "殴", "毿": "毵", "氂": "牦", "氈": "毡", "氌": "氇", "氣": "气", "氫": "氢", "氬": "氩", "氳": "氲", "汙": "污", "決": "决", "沒": "没", "沖": "冲", "況": "况", "洶": "汹", "浹": "浃", "涂": "涂", "涇": "泾", "涼": "凉", "淀": "淀", "淒": "凄", "淚": "泪", "淥": "渌", "淨": "净", "淩": "凌", "淪": "沦", "淵": "渊", "淶": "涞", "淺": "浅", "渙": "涣", "減": "减", "渦": "涡", "測": "测", "渾": "浑", "湊": "凑", "湞": "浈", "湯": "汤", "溈": "沩", "準": "准", "溝": "沟", "溫": "温", "滄": "沧", "滅": "灭", "滌": "涤", "滎": "荥", "滬": "沪", "滯": "滞", "滲": "渗", "滷": "卤", "滸": "浒", "滻": "浐", "滾": "滚", "滿": "满", "漁": "渔", "漚": "沤", "漢": "汉", "漣": "涟", "漬": "渍", "漲": "涨", "漵": "溆", "漸": "渐", "漿": "浆", "潁": "颍", "潑": "泼", "潔": "洁", "潙": "沩", "潛": "潜", "潤": "润", "潯": "浔", "潰": "溃", "潷": "滗", "潿": "涠", "澀": "涩", "澆": "浇", "澇": "涝", "澐": "沄", "澗": "涧", "澠": "渑", "澤": "泽", "澦": "滪", "澩": "泶", "澮": "浍", "澱": "淀", "濁": "浊", "濃": "浓", "濕": "湿", "濘": "泞", "濛": "蒙", "濟": "济", "濤": "涛", "濫": "滥", "濰": "潍", "濱": "滨", "濺": "溅", "濼": "泺", "濾": "滤", "瀅": "滢", "瀆": "渎", "瀇": "㲿", "瀉": "泻", "瀋": "沈", "瀏": "浏", "瀕": "濒", "瀘": "泸", "瀝": "沥", "瀟": "潇", "瀠": "潆", "瀦": "潴", "瀧": "泷", "瀨": "濑", "瀰": "弥", "瀲": "潋", "瀾": "澜", "灃": "沣", "灄": "滠", "灑": "洒", "灕": "漓", "灘": "滩", "灝": "灏", "灠": "漤", "灣": "湾", "灤": "滦", "灧": "滟", "災": "灾", "為": "为", "烏": "乌", "烴": "烃", "無": "无", "煉": "炼", "煒": "炜", "煙": "烟", "煢": "茕", "煥": "焕", "煩": "烦", "煬": "炀", "煱": "㶽", "熅": "煴", "熒": "荧", "熗": "炝", "熱": "热", "熲": "颎", "熾": "炽", "燁": "烨", "燈": "灯", "燉": "炖", "燒": "烧", "燙": "烫", "燜": "焖", "營": "营", "燦": "灿", "燭": "烛", "燴": "烩", "燶": "㶶", "燼": "烬", "燾": "焘", "爍": "烁", "爐": "炉", "爛": "烂", "爭": "争", "爲": "为", "爺": "爷", "爾": "尔", "牆": "墙", "牘": "牍", "牽": "牵", "犖": "荦", "犢": "犊", "犧": "牺", "狀": "状", "狹": "狭", "狽": "狈", "猙": "狰", "猶": "犹", "猻": "狲", "獁": "犸", "獄": "狱", "獅": "狮", "獎": "奖", "獨": "独", "獪": "狯", "獫": "猃", "獮": "狝", "獰": "狞", "獱": "㺍", "獲": "获", "獵": "猎", "獷": "犷", "獸": "兽", "獺": "獭", "獻": "献", "獼": "猕", "玀": "猡", "現": "现", "琺": "珐", "琿": "珲", "瑋": "玮", "瑒": "玚", "瑣": "琐", "瑤": "瑶", "瑩": "莹", "瑪": "玛", "瑲": "玱", "璉": "琏", "璣": "玑", "璦": "瑷", "璫": "珰", "環": "环", "璽": "玺", "瓊": "琼", "瓏": "珑", "瓔": "璎", "瓚": "瓒", "甌": "瓯", "產": "产", "産": "产", "畝": "亩", "畢": "毕", "異": "异", "畵": "画", "當": "当", "疇": "畴", "疊": "叠", "痙": "痉", "痾": "疴", "瘂": "痖", "瘋": "疯", "瘍": "疡", "瘓": "痪", "瘞": "瘗", "瘡": "疮", "瘧": "疟", "瘮": "瘆", "瘲": "疭", "瘺": "瘘", "瘻": "瘘", "療": "疗", "癆": "痨", "癇": "痫", "癉": "瘅", "癘": "疠", "癟": "瘪", "癢": "痒", "癤": "疖", "癥": "症", "癧": "疬", "癩": "癞", "癬": "癣", "癭": "瘿", "癮": "瘾", "癰": "痈", "癱": "瘫", "癲": "癫", "發": "发", "皚": "皑", "皰": "疱", "皸": "皲", "皺": "皱", "盃": "杯", "盜": "盗", "盞": "盏", "盡": "尽", "監": "监", "盤": "盘", "盧": "卢", "盪": "荡", "眥": "眦", "眾": "众", "睏": "困", "睜": "睁", "睞": "睐", "瞘": "眍", "瞜": "䁖", "瞞": "瞒", "瞭": "了", "瞶": "瞆", "瞼": "睑", "矇": "蒙", "矓": "眬", "矚": "瞩", "矯": "矫", "硃": "朱", "硜": "硁", "硤": "硖", "硨": "砗", "确": "确", "硯": "砚", "碩": "硕", "碭": "砀", "碸": "砜", "確": "确", "碼": "码", "磑": "硙", "磚": "砖", "磣": "碜", "磧": "碛", "磯": "矶", "磽": "硗", "礆": "硷", "礎": "础", "礙": "碍", "礦": "矿", "礪": "砺", "礫": "砾", "礬": "矾", "礱": "砻", "祿": "禄", "禍": "祸", "禎": "祯", "禕": "祎", "禡": "祃", "禦": "御", "禪": "禅", "禮": "礼", "禰": "祢", "禱": "祷", "禿": "秃", "秈": "籼", "种": "种", "稅": "税", "稈": "秆", "稏": "䅉", "稟": "禀", "種": "种", "稱": "称", "穀": "谷", "穌": "稣", "積": "积", "穎": "颖", "穠": "秾", "穡": "穑", "穢": "秽", "穩": "稳", "穫": "获", "穭": "稆", "窩": "窝", "窪": "洼", "窮": "穷", "窯": "窑", "窵": "窎", "窶": "窭", "窺": "窥", "竄": "窜", "竅": "窍", "竇": "窦", "竈": "灶", "竊": "窃", "竪": "竖", "競": "竞", "筆": "笔", "筍": "笋", "筑": "筑", "筧": "笕", "筴": "䇲", "箋": "笺", "箏": "筝", "節": "节", "範": "范", "築": "筑", "篋": "箧", "篔": "筼", "篤": "笃", "篩": "筛", "篳": "筚", "簀": "箦", "簍": "篓", "簞": "箪", "簡": "简", "簣": "篑", "簫": "箫", "簹": "筜", "簽": "签", "簾": "帘", "籃": "篮", "籌": "筹", "籖": "签", "籙": "箓", "籜": "箨", "籟": "籁", "籠": "笼", "籩": "笾", "籪": "簖", "籬": "篱", "籮": "箩", "籲": "吁", "粵": "粤", "糝": "糁", "糞": "粪", "糧": "粮", "糰": "团", "糲": "粝", "糴": "籴", "糶": "粜", "糹": "纟", "糾": "纠", "紀": "纪", "紂": "纣", "約": "约", "紅": "红", "紆": "纡", "紇": "纥", "紈": "纨", "紉": "纫", "紋": "纹", "納": "纳", "紐": "纽", "紓": "纾", "純": "纯", "紕": "纰", "紖": "纼", "紗": "纱", "紘": "纮", "紙": "纸", "級": "级", "紛": "纷", "紜": "纭", "紝": "纴", "紡": "纺", "紬": "䌷", "細": "细", "紱": "绂", "紲": "绁", "紳": "绅", "紵": "纻", "紹": "绍", "紺": "绀", "紼": "绋", "紿": "绐", "絀": "绌", "終": "终", "組": "组", "絅": "䌹", "絆": "绊", "絎": "绗", "結": "结", "絕": "绝", "絛": "绦", "絝": "绔", "絞": "绞", "絡": "络", "絢": "绚", "給": "给", "絨": "绒", "絰": "绖", "統": "统", "絲": "丝", "絳": "绛", "絶": "绝", "絹": "绢", "綁": "绑", "綃": "绡", "綆": "绠", "綈": "绨", "綉": "绣", "綌": "绤", "綏": "绥", "綐": "䌼", "經": "经", "綜": "综", "綞": "缍", "綠": "绿", "綢": "绸", "綣": "绻", "綫": "线", "綬": "绶", "維": "维", "綯": "绹", "綰": "绾", "綱": "纲", "網": "网", "綳": "绷", "綴": "缀", "綵": "䌽", "綸": "纶", "綹": "绺", "綺": "绮", "綻": "绽", "綽": "绰", "綾": "绫", "綿": "绵", "緄": "绲", "緇": "缁", "緊": "紧", "緋": "绯", "緑": "绿", "緒": "绪", "緓": "绬", "緔": "绱", "緗": "缃", "緘": "缄", "緙": "缂", "線": "线", "緝": "缉", "緞": "缎", "締": "缔", "緡": "缗", "緣": "缘", "緦": "缌", "編": "编", "緩": "缓", "緬": "缅", "緯": "纬", "緱": "缑", "緲": "缈", "練": "练", "緶": "缏", "緹": "缇", "緻": "致", "縈": "萦", "縉": "缙", "縊": "缢", "縋": "缒", "縐": "绉", "縑": "缣", "縕": "缊", "縗": "缞", "縛": "缚", "縝": "缜", "縞": "缟", "縟": "缛", "縣": "县", "縧": "绦", "縫": "缝", "縭": "缡", "縮": "缩", "縱": "纵", "縲": "缧", "縳": "䌸", "縴": "纤", "縵": "缦", "縶": "絷", "縷": "缕", "縹": "缥", "總": "总", "績": "绩", "繃": "绷", "繅": "缫", "繆": "缪", "繒": "缯", "織": "织", "繕": "缮", "繚": "缭", "繞": "绕", "繡": "绣", "繢": "缋", "繩": "绳", "繪": "绘", "繫": "系", "繭": "茧", "繮": "缰", "繯": "缳", "繰": "缲", "繳": "缴", "繸": "䍁", "繹": "绎", "繼": "继", "繽": "缤", "繾": "缱", "繿": "䍀", "纈": "缬", "纊": "纩", "續": "续", "纍": "累", "纏": "缠", "纓": "缨", "纔": "才", "纖": "纤", "纘": "缵", "纜": "缆", "缽": "钵", "罈": "坛", "罌": "罂", "罰": "罚", "罵": "骂", "罷": "罢", "羅": "罗", "羆": "罴", "羈": "羁", "羋": "芈", "羥": "羟", "義": "义", "習": "习", "翹": "翘", "耬": "耧", "耮": "耢", "聖": "圣", "聞": "闻", "聯": "联", "聰": "聪", "聲": "声", "聳": "耸", "聵": "聩", "聶": "聂", "職": "职", "聹": "聍", "聽": "听", "聾": "聋", "肅": "肃", "胜": "胜", "脅": "胁", "脈": "脉", "脛": "胫", "脫": "脱", "脹": "胀", "腊": "腊", "腎": "肾", "腖": "胨", "腡": "脶", "腦": "脑", "腫": "肿", "腳": "脚", "腸": "肠", "膃": "腽", "膚": "肤", "膠": "胶", "膩": "腻", "膽": "胆", "膾": "脍", "膿": "脓", "臉": "脸", "臍": "脐", "臏": "膑", "臘": "腊", "臚": "胪", "臟": "脏", "臠": "脔", "臢": "臜", "臥": "卧", "臨": "临", "臺": "台", "與": "与", "興": "兴", "舉": "举", "舊": "旧", "艙": "舱", "艤": "舣", "艦": "舰", "艫": "舻", "艱": "艰", "艷": "艳", "芻": "刍", "苧": "苎", "苹": "苹", "范": "范", "茲": "兹", "荊": "荆", "莊": "庄", "莖": "茎", "莢": "荚", "莧": "苋", "華": "华", "萇": "苌", "萊": "莱", "萬": "万", "萵": "莴", "葉": "叶", "葒": "荭", "著": "着", "著名": "著名", "葤": "荮", "葦": "苇", "葯": "药", "葷": "荤", "蒓": "莼", "蒔": "莳", "蒞": "莅", "蒼": "苍", "蓀": "荪", "蓋": "盖", "蓮": "莲", "蓯": "苁", "蓴": "莼", "蓽": "荜", "蔔": "卜", "蔞": "蒌", "蔣": "蒋", "蔥": "葱", "蔦": "茑", "蔭": "荫", "蕁": "荨", "蕆": "蒇", "蕎": "荞", "蕒": "荬", "蕓": "芸", "蕕": "莸", "蕘": "荛", "蕢": "蒉", "蕩": "荡", "蕪": "芜", "蕭": "萧", "蕷": "蓣", "薀": "蕰", "薈": "荟", "薊": "蓟", "薌": "芗", "薔": "蔷", "薘": "荙", "薟": "莶", "薦": "荐", "薩": "萨", "薳": "䓕", "薴": "苧", "薺": "荠", "藉": "借", "藍": "蓝", "藎": "荩", "藝": "艺", "藥": "药", "藪": "薮", "藴": "蕴", "藶": "苈", "藹": "蔼", "藺": "蔺", "蘄": "蕲", "蘆": "芦", "蘇": "苏", "蘊": "蕴", "蘋": "苹", "蘚": "藓", "蘞": "蔹", "蘢": "茏", "蘭": "兰", "蘺": "蓠", "蘿": "萝", "虆": "蔂", "處": "处", "虛": "虚", "虜": "虏", "號": "号", "虧": "亏", "虫": "虫", "虯": "虬", "蛺": "蛱", "蛻": "蜕", "蜆": "蚬", "蜡": "蜡", "蝕": "蚀", "蝟": "猬", "蝦": "虾", "蝸": "蜗", "螄": "蛳", "螞": "蚂", "螢": "萤", "螮": "䗖", "螻": "蝼", "螿": "螀", "蟄": "蛰", "蟈": "蝈", "蟎": "螨", "蟣": "虮", "蟬": "蝉", "蟯": "蛲", "蟲": "虫", "蟶": "蛏", "蟻": "蚁", "蠅": "蝇", "蠆": "虿", "蠐": "蛴", "蠑": "蝾", "蠟": "蜡", "蠣": "蛎", "蠨": "蟏", "蠱": "蛊", "蠶": "蚕", "蠻": "蛮", "衆": "众", "衊": "蔑", "術": "术", "衕": "同", "衚": "胡", "衛": "卫", "衝": "冲", "衹": "只", "袞": "衮", "裊": "袅", "裏": "里", "補": "补", "裝": "装", "裡": "里", "製": "制", "複": "复", "褌": "裈", "褘": "袆", "褲": "裤", "褳": "裢", "褸": "褛", "褻": "亵", "襇": "裥", "襏": "袯", "襖": "袄", "襝": "裣", "襠": "裆", "襤": "褴", "襪": "袜", "襬": "䙓", "襯": "衬", "襲": "袭", "覆": "复", "覆蓋": "覆盖", "翻來覆去": "翻来覆去", "見": "见", "覎": "觃", "規": "规", "覓": "觅", "視": "视", "覘": "觇", "覡": "觋", "覥": "觍", "覦": "觎", "親": "亲", "覬": "觊", "覯": "觏", "覲": "觐", "覷": "觑", "覺": "觉", "覽": "览", "覿": "觌", "觀": "观", "觴": "觞", "觶": "觯", "觸": "触", "訁": "讠", "訂": "订", "訃": "讣", "計": "计", "訊": "讯", "訌": "讧", "討": "讨", "訐": "讦", "訒": "讱", "訓": "训", "訕": "讪", "訖": "讫", "託": "讬", "記": "记", "訛": "讹", "訝": "讶", "訟": "讼", "訢": "䜣", "訣": "诀", "訥": "讷", "訩": "讻", "訪": "访", "設": "设", "許": "许", "訴": "诉", "訶": "诃", "診": "诊", "註": "注", "詁": "诂", "詆": "诋", "詎": "讵", "詐": "诈", "詒": "诒", "詔": "诏", "評": "评", "詖": "诐", "詗": "诇", "詘": "诎", "詛": "诅", "詞": "词", "詠": "咏", "詡": "诩", "詢": "询", "詣": "诣", "試": "试", "詩": "诗", "詫": "诧", "詬": "诟", "詭": "诡", "詮": "诠", "詰": "诘", "話": "话", "該": "该", "詳": "详", "詵": "诜", "詼": "诙", "詿": "诖", "誄": "诔", "誅": "诛", "誆": "诓", "誇": "夸", "誌": "志", "認": "认", "誑": "诳", "誒": "诶", "誕": "诞", "誘": "诱", "誚": "诮", "語": "语", "誠": "诚", "誡": "诫", "誣": "诬", "誤": "误", "誥": "诰", "誦": "诵", "誨": "诲", "說": "说", "説": "说", "誰": "谁", "課": "课", "誶": "谇", "誹": "诽", "誼": "谊", "誾": "訚", "調": "调", "諂": "谄", "諄": "谆", "談": "谈", "諉": "诿", "請": "请", "諍": "诤", "諏": "诹", "諑": "诼", "諒": "谅", "論": "论", "諗": "谂", "諛": "谀", "諜": "谍", "諝": "谞", "諞": "谝", "諢": "诨", "諤": "谔", "諦": "谛", "諧": "谐", "諫": "谏", "諭": "谕", "諮": "谘", "諱": "讳", "諳": "谙", "諶": "谌", "諷": "讽", "諸": "诸", "諺": "谚", "諼": "谖", "諾": "诺", "謀": "谋", "謁": "谒", "謂": "谓", "謄": "誊", "謅": "诌", "謊": "谎", "謎": "谜", "謐": "谧", "謔": "谑", "謖": "谡", "謗": "谤", "謙": "谦", "謚": "谥", "講": "讲", "謝": "谢", "謠": "谣", "謡": "谣", "謨": "谟", "謫": "谪", "謬": "谬", "謭": "谫", "謳": "讴", "謹": "谨", "謾": "谩", "譅": "䜧", "證": "证", "譎": "谲", "譏": "讥", "譖": "谮", "識": "识", "譙": "谯", "譚": "谭", "譜": "谱", "譫": "谵", "譯": "译", "議": "议", "譴": "谴", "護": "护", "譸": "诪", "譽": "誉", "譾": "谫", "讀": "读", "變": "变", "讎": "仇", "讎": "雠", "讒": "谗", "讓": "让", "讕": "谰", "讖": "谶", "讜": "谠", "讞": "谳", "豈": "岂", "豎": "竖", "豐": "丰", "豬": "猪", "豶": "豮", "貓": "猫", "貙": "䝙", "貝": "贝", "貞": "贞", "貟": "贠", "負": "负", "財": "财", "貢": "贡", "貧": "贫", "貨": "货", "販": "贩", "貪": "贪", "貫": "贯", "責": "责", "貯": "贮", "貰": "贳", "貲": "赀", "貳": "贰", "貴": "贵", "貶": "贬", "買": "买", "貸": "贷", "貺": "贶", "費": "费", "貼": "贴", "貽": "贻", "貿": "贸", "賀": "贺", "賁": "贲", "賂": "赂", "賃": "赁", "賄": "贿", "賅": "赅", "資": "资", "賈": "贾", "賊": "贼", "賑": "赈", "賒": "赊", "賓": "宾", "賕": "赇", "賙": "赒", "賚": "赉", "賜": "赐", "賞": "赏", "賠": "赔", "賡": "赓", "賢": "贤", "賣": "卖", "賤": "贱", "賦": "赋", "賧": "赕", "質": "质", "賫": "赍", "賬": "账", "賭": "赌", "賰": "䞐", "賴": "赖", "賵": "赗", "賺": "赚", "賻": "赙", "購": "购", "賽": "赛", "賾": "赜", "贄": "贽", "贅": "赘", "贇": "赟", "贈": "赠", "贊": "赞", "贋": "赝", "贍": "赡", "贏": "赢", "贐": "赆", "贓": "赃", "贔": "赑", "贖": "赎", "贗": "赝", "贛": "赣", "贜": "赃", "赬": "赪", "趕": "赶", "趙": "赵", "趨": "趋", "趲": "趱", "跡": "迹", "踐": "践", "踴": "踊", "蹌": "跄", "蹕": "跸", "蹣": "蹒", "蹤": "踪", "蹺": "跷", "躂": "跶", "躉": "趸", "躊": "踌", "躋": "跻", "躍": "跃", "躑": "踯", "躒": "跞", "躓": "踬", "躕": "蹰", "躚": "跹", "躡": "蹑", "躥": "蹿", "躦": "躜", "躪": "躏", "軀": "躯", "車": "车", "軋": "轧", "軌": "轨", "軍": "军", "軑": "轪", "軒": "轩", "軔": "轫", "軛": "轭", "軟": "软", "軤": "轷", "軫": "轸", "軲": "轱", "軸": "轴", "軹": "轵", "軺": "轺", "軻": "轲", "軼": "轶", "軾": "轼", "較": "较", "輅": "辂", "輇": "辁", "輈": "辀", "載": "载", "輊": "轾", "輒": "辄", "輓": "挽", "輔": "辅", "輕": "轻", "輛": "辆", "輜": "辎", "輝": "辉", "輞": "辋", "輟": "辍", "輥": "辊", "輦": "辇", "輩": "辈", "輪": "轮", "輬": "辌", "輯": "辑", "輳": "辏", "輸": "输", "輻": "辐", "輾": "辗", "輿": "舆", "轀": "辒", "轂": "毂", "轄": "辖", "轅": "辕", "轆": "辘", "轉": "转", "轍": "辙", "轎": "轿", "轔": "辚", "轟": "轰", "轡": "辔", "轢": "轹", "轤": "轳", "辟": "辟", "辦": "办", "辭": "辞", "辮": "辫", "辯": "辩", "農": "农", "迴": "回", "适": "适", "逕": "迳", "這": "这", "連": "连", "週": "周", "進": "进", "遊": "游", "運": "运", "過": "过", "達": "达", "違": "违", "遙": "遥", "遜": "逊", "遞": "递", "遠": "远", "適": "适", "遲": "迟", "遷": "迁", "選": "选", "遺": "遗", "遼": "辽", "邁": "迈", "還": "还", "邇": "迩", "邊": "边", "邏": "逻", "邐": "逦", "郁": "郁", "郟": "郏", "郵": "邮", "鄆": "郓", "鄉": "乡", "鄒": "邹", "鄔": "邬", "鄖": "郧", "鄧": "邓", "鄭": "郑", "鄰": "邻", "鄲": "郸", "鄴": "邺", "鄶": "郐", "鄺": "邝", "酇": "酂", "酈": "郦", "醖": "酝", "醜": "丑", "醞": "酝", "醫": "医", "醬": "酱", "醱": "酦", "釀": "酿", "釁": "衅", "釃": "酾", "釅": "酽", "采": "采", "釋": "释", "釐": "厘", "釒": "钅", "釓": "钆", "釔": "钇", "釕": "钌", "釗": "钊", "釘": "钉", "釙": "钋", "針": "针", "釣": "钓", "釤": "钐", "釧": "钏", "釩": "钒", "釵": "钗", "釷": "钍", "釹": "钕", "釺": "钎", "鈀": "钯", "鈁": "钫", "鈃": "钘", "鈄": "钭", "鈈": "钚", "鈉": "钠", "鈍": "钝", "鈎": "钩", "鈐": "钤", "鈑": "钣", "鈒": "钑", "鈔": "钞", "鈕": "钮", "鈞": "钧", "鈣": "钙", "鈥": "钬", "鈦": "钛", "鈧": "钪", "鈮": "铌", "鈰": "铈", "鈳": "钶", "鈴": "铃", "鈷": "钴", "鈸": "钹", "鈹": "铍", "鈺": "钰", "鈽": "钸", "鈾": "铀", "鈿": "钿", "鉀": "钾", "鉅": "钜", "鉈": "铊", "鉉": "铉", "鉋": "铇", "鉍": "铋", "鉑": "铂", "鉕": "钷", "鉗": "钳", "鉚": "铆", "鉛": "铅", "鉞": "钺", "鉢": "钵", "鉤": "钩", "鉦": "钲", "鉬": "钼", "鉭": "钽", "鉶": "铏", "鉸": "铰", "鉺": "铒", "鉻": "铬", "鉿": "铪", "銀": "银", "銃": "铳", "銅": "铜", "銍": "铚", "銑": "铣", "銓": "铨", "銖": "铢", "銘": "铭", "銚": "铫", "銛": "铦", "銜": "衔", "銠": "铑", "銣": "铷", "銥": "铱", "銦": "铟", "銨": "铵", "銩": "铥", "銪": "铕", "銫": "铯", "銬": "铐", "銱": "铞", "銳": "锐", "銷": "销", "銹": "锈", "銻": "锑", "銼": "锉", "鋁": "铝", "鋃": "锒", "鋅": "锌", "鋇": "钡", "鋌": "铤", "鋏": "铗", "鋒": "锋", "鋙": "铻", "鋝": "锊", "鋟": "锓", "鋣": "铘", "鋤": "锄", "鋥": "锃", "鋦": "锔", "鋨": "锇", "鋩": "铓", "鋪": "铺", "鋭": "锐", "鋮": "铖", "鋯": "锆", "鋰": "锂", "鋱": "铽", "鋶": "锍", "鋸": "锯", "鋼": "钢", "錁": "锞", "錄": "录", "錆": "锖", "錇": "锫", "錈": "锩", "錏": "铔", "錐": "锥", "錒": "锕", "錕": "锟", "錘": "锤", "錙": "锱", "錚": "铮", "錛": "锛", "錟": "锬", "錠": "锭", "錡": "锜", "錢": "钱", "錦": "锦", "錨": "锚", "錩": "锠", "錫": "锡", "錮": "锢", "錯": "错", "録": "录", "錳": "锰", "錶": "表", "錸": "铼", "鍀": "锝", "鍁": "锨", "鍃": "锪", "鍆": "钔", "鍇": "锴", "鍈": "锳", "鍋": "锅", "鍍": "镀", "鍔": "锷", "鍘": "铡", "鍚": "钖", "鍛": "锻", "鍠": "锽", "鍤": "锸", "鍥": "锲", "鍩": "锘", "鍬": "锹", "鍰": "锾", "鍵": "键", "鍶": "锶", "鍺": "锗", "鍾": "钟", "鎂": "镁", "鎄": "锿", "鎇": "镅", "鎊": "镑", "鎔": "镕", "鎖": "锁", "鎘": "镉", "鎚": "锤", "鎛": "镈", "鎝": "𨱏", "鎡": "镃", "鎢": "钨", "鎣": "蓥", "鎦": "镏", "鎧": "铠", "鎩": "铩", "鎪": "锼", "鎬": "镐", "鎮": "镇", "鎰": "镒", "鎲": "镋", "鎳": "镍", "鎵": "镓", "鎸": "镌", "鎿": "镎", "鏃": "镞", "鏇": "镟", "鏈": "链", "鏌": "镆", "鏍": "镙", "鏐": "镠", "鏑": "镝", "鏗": "铿", "鏘": "锵", "鏜": "镗", "鏝": "镘", "鏞": "镛", "鏟": "铲", "鏡": "镜", "鏢": "镖", "鏤": "镂", "鏨": "錾", "鏰": "镚", "鏵": "铧", "鏷": "镤", "鏹": "镪", "鏽": "锈", "鐃": "铙", "鐋": "铴", "鐐": "镣", "鐒": "铹", "鐓": "镦", "鐔": "镡", "鐘": "钟", "鐙": "镫", "鐝": "镢", "鐠": "镨", "鐦": "锎", "鐧": "锏", "鐨": "镄", "鐫": "镌", "鐮": "镰", "鐲": "镯", "鐳": "镭", "鐵": "铁", "鐶": "镮", "鐸": "铎", "鐺": "铛", "鐿": "镱", "鑄": "铸", "鑊": "镬", "鑌": "镔", "鑒": "鉴", "鑔": "镲", "鑕": "锧", "鑞": "镴", "鑠": "铄", "鑣": "镳", "鑥": "镥", "鑭": "镧", "鑰": "钥", "鑱": "镵", "鑲": "镶", "鑷": "镊", "鑹": "镩", "鑼": "锣", "鑽": "钻", "鑾": "銮", "鑿": "凿", "钁": "镢", "镟": "旋", "長": "长", "門": "门", "閂": "闩", "閃": "闪", "閆": "闫", "閈": "闬", "閉": "闭", "開": "开", "閌": "闶", "閎": "闳", "閏": "闰", "閑": "闲", "間": "间", "閔": "闵", "閘": "闸", "閡": "阂", "閣": "阁", "閤": "合", "閥": "阀", "閨": "闺", "閩": "闽", "閫": "阃", "閬": "阆", "閭": "闾", "閱": "阅", "閲": "阅", "閶": "阊", "閹": "阉", "閻": "阎", "閼": "阏", "閽": "阍", "閾": "阈", "閿": "阌", "闃": "阒", "闆": "板", "闈": "闱", "闊": "阔", "闋": "阕", "闌": "阑", "闍": "阇", "闐": "阗", "闒": "阘", "闓": "闿", "闔": "阖", "闕": "阙", "闖": "闯", "關": "关", "闞": "阚", "闠": "阓", "闡": "阐", "闤": "阛", "闥": "闼", "阪": "坂", "陘": "陉", "陝": "陕", "陣": "阵", "陰": "阴", "陳": "陈", "陸": "陆", "陽": "阳", "隉": "陧", "隊": "队", "階": "阶", "隕": "陨", "際": "际", "隨": "随", "險": "险", "隱": "隐", "隴": "陇", "隸": "隶", "隻": "只", "雋": "隽", "雖": "虽", "雙": "双", "雛": "雏", "雜": "杂", "雞": "鸡", "離": "离", "難": "难", "雲": "云", "電": "电", "霢": "霡", "霧": "雾", "霽": "霁", "靂": "雳", "靄": "霭", "靈": "灵", "靚": "靓", "靜": "静", "靨": "靥", "鞀": "鼗", "鞏": "巩", "鞝": "绱", "鞦": "秋", "鞽": "鞒", "韁": "缰", "韃": "鞑", "韆": "千", "韉": "鞯", "韋": "韦", "韌": "韧", "韍": "韨", "韓": "韩", "韙": "韪", "韜": "韬", "韞": "韫", "韻": "韵", "響": "响", "頁": "页", "頂": "顶", "頃": "顷", "項": "项", "順": "顺", "頇": "顸", "須": "须", "頊": "顼", "頌": "颂", "頎": "颀", "頏": "颃", "預": "预", "頑": "顽", "頒": "颁", "頓": "顿", "頗": "颇", "領": "领", "頜": "颌", "頡": "颉", "頤": "颐", "頦": "颏", "頭": "头", "頮": "颒", "頰": "颊", "頲": "颋", "頴": "颕", "頷": "颔", "頸": "颈", "頹": "颓", "頻": "频", "頽": "颓", "顆": "颗", "題": "题", "額": "额", "顎": "颚", "顏": "颜", "顒": "颙", "顓": "颛", "顔": "颜", "願": "愿", "顙": "颡", "顛": "颠", "類": "类", "顢": "颟", "顥": "颢", "顧": "顾", "顫": "颤", "顬": "颥", "顯": "显", "顰": "颦", "顱": "颅", "顳": "颞", "顴": "颧", "風": "风", "颭": "飐", "颮": "飑", "颯": "飒", "颱": "台", "颳": "刮", "颶": "飓", "颸": "飔", "颺": "飏", "颻": "飖", "颼": "飕", "飀": "飗", "飄": "飘", "飆": "飙", "飈": "飚", "飛": "飞", "飠": "饣", "飢": "饥", "飣": "饤", "飥": "饦", "飩": "饨", "飪": "饪", "飫": "饫", "飭": "饬", "飯": "饭", "飲": "饮", "飴": "饴", "飼": "饲", "飽": "饱", "飾": "饰", "飿": "饳", "餃": "饺", "餄": "饸", "餅": "饼", "餉": "饷", "養": "养", "餌": "饵", "餎": "饹", "餏": "饻", "餑": "饽", "餒": "馁", "餓": "饿", "餕": "馂", "餖": "饾", "餚": "肴", "餛": "馄", "餜": "馃", "餞": "饯", "餡": "馅", "館": "馆", "餱": "糇", "餳": "饧", "餶": "馉", "餷": "馇", "餺": "馎", "餼": "饩", "餾": "馏", "餿": "馊", "饁": "馌", "饃": "馍", "饅": "馒", "饈": "馐", "饉": "馑", "饊": "馓", "饋": "馈", "饌": "馔", "饑": "饥", "饒": "饶", "饗": "飨", "饜": "餍", "饞": "馋", "饢": "馕", "馬": "马", "馭": "驭", "馮": "冯", "馱": "驮", "馳": "驰", "馴": "驯", "馹": "驲", "駁": "驳", "駐": "驻", "駑": "驽", "駒": "驹", "駔": "驵", "駕": "驾", "駘": "骀", "駙": "驸", "駛": "驶", "駝": "驼", "駟": "驷", "駡": "骂", "駢": "骈", "駭": "骇", "駰": "骃", "駱": "骆", "駸": "骎", "駿": "骏", "騁": "骋", "騂": "骍", "騅": "骓", "騌": "骔", "騍": "骒", "騎": "骑", "騏": "骐", "騖": "骛", "騙": "骗", "騤": "骙", "騧": "䯄", "騫": "骞", "騭": "骘", "騮": "骝", "騰": "腾", "騶": "驺", "騷": "骚", "騸": "骟", "騾": "骡", "驀": "蓦", "驁": "骜", "驂": "骖", "驃": "骠", "驄": "骢", "驅": "驱", "驊": "骅", "驌": "骕", "驍": "骁", "驏": "骣", "驕": "骄", "驗": "验", "驚": "惊", "驛": "驿", "驟": "骤", "驢": "驴", "驤": "骧", "驥": "骥", "驦": "骦", "驪": "骊", "驫": "骉", "骯": "肮", "髏": "髅", "髒": "脏", "體": "体", "髕": "髌", "髖": "髋", "髮": "发", "鬆": "松", "鬍": "胡", "鬚": "须", "鬢": "鬓", "鬥": "斗", "鬧": "闹", "鬩": "阋", "鬮": "阄", "鬱": "郁", "魎": "魉", "魘": "魇", "魚": "鱼", "魛": "鱽", "魢": "鱾", "魨": "鲀", "魯": "鲁", "魴": "鲂", "魷": "鱿", "魺": "鲄", "鮁": "鲅", "鮃": "鲆", "鮊": "鲌", "鮋": "鲉", "鮍": "鲏", "鮎": "鲇", "鮐": "鲐", "鮑": "鲍", "鮒": "鲋", "鮓": "鲊", "鮚": "鲒", "鮜": "鲘", "鮝": "鲞", "鮞": "鲕", "鮦": "鲖", "鮪": "鲔", "鮫": "鲛", "鮭": "鲑", "鮮": "鲜", "鮳": "鲓", "鮶": "鲪", "鮺": "鲝", "鯀": "鲧", "鯁": "鲠", "鯇": "鲩", "鯉": "鲤", "鯊": "鲨", "鯒": "鲬", "鯔": "鲻", "鯕": "鲯", "鯖": "鲭", "鯗": "鲞", "鯛": "鲷", "鯝": "鲴", "鯡": "鲱", "鯢": "鲵", "鯤": "鲲", "鯧": "鲳", "鯨": "鲸", "鯪": "鲮", "鯫": "鲰", "鯴": "鲺", "鯷": "鳀", "鯽": "鲫", "鯿": "鳊", "鰁": "鳈", "鰂": "鲗", "鰃": "鳂", "鰈": "鲽", "鰉": "鳇", "鰍": "鳅", "鰏": "鲾", "鰐": "鳄", "鰒": "鳆", "鰓": "鳃", "鰜": "鳒", "鰟": "鳑", "鰠": "鳋", "鰣": "鲥", "鰥": "鳏", "鰨": "鳎", "鰩": "鳐", "鰭": "鳍", "鰮": "鳁", "鰱": "鲢", "鰲": "鳌", "鰳": "鳓", "鰵": "鳘", "鰷": "鲦", "鰹": "鲣", "鰺": "鲹", "鰻": "鳗", "鰼": "鳛", "鰾": "鳔", "鱂": "鳉", "鱅": "鳙", "鱈": "鳕", "鱉": "鳖", "鱒": "鳟", "鱔": "鳝", "鱖": "鳜", "鱗": "鳞", "鱘": "鲟", "鱝": "鲼", "鱟": "鲎", "鱠": "鲙", "鱣": "鳣", "鱤": "鳡", "鱧": "鳢", "鱨": "鲿", "鱭": "鲚", "鱯": "鳠", "鱷": "鳄", "鱸": "鲈", "鱺": "鲡", "䰾": "鲃", "䲁": "鳚", "鳥": "鸟", "鳧": "凫", "鳩": "鸠", "鳬": "凫", "鳲": "鸤", "鳳": "凤", "鳴": "鸣", "鳶": "鸢", "鳾": "䴓", "鴆": "鸩", "鴇": "鸨", "鴉": "鸦", "鴒": "鸰", "鴕": "鸵", "鴛": "鸳", "鴝": "鸲", "鴞": "鸮", "鴟": "鸱", "鴣": "鸪", "鴦": "鸯", "鴨": "鸭", "鴯": "鸸", "鴰": "鸹", "鴴": "鸻", "鴷": "䴕", "鴻": "鸿", "鴿": "鸽", "鵁": "䴔", "鵂": "鸺", "鵃": "鸼", "鵐": "鹀", "鵑": "鹃", "鵒": "鹆", "鵓": "鹁", "鵜": "鹈", "鵝": "鹅", "鵠": "鹄", "鵡": "鹉", "鵪": "鹌", "鵬": "鹏", "鵮": "鹐", "鵯": "鹎", "鵲": "鹊", "鵷": "鹓", "鵾": "鹍", "鶄": "䴖", "鶇": "鸫", "鶉": "鹑", "鶊": "鹒", "鶓": "鹋", "鶖": "鹙", "鶘": "鹕", "鶚": "鹗", "鶡": "鹖", "鶥": "鹛", "鶩": "鹜", "鶪": "䴗", "鶬": "鸧", "鶯": "莺", "鶲": "鹟", "鶴": "鹤", "鶹": "鹠", "鶺": "鹡", "鶻": "鹘", "鶼": "鹣", "鶿": "鹚", "鷀": "鹚", "鷁": "鹢", "鷂": "鹞", "鷄": "鸡", "鷈": "䴘", "鷊": "鹝", "鷓": "鹧", "鷖": "鹥", "鷗": "鸥", "鷙": "鸷", "鷚": "鹨", "鷥": "鸶", "鷦": "鹪", "鷫": "鹔", "鷯": "鹩", "鷲": "鹫", "鷳": "鹇", "鷸": "鹬", "鷹": "鹰", "鷺": "鹭", "鷽": "鸴", "鷿": "䴙", "鸂": "㶉", "鸇": "鹯", "鸌": "鹱", "鸏": "鹲", "鸕": "鸬", "鸘": "鹴", "鸚": "鹦", "鸛": "鹳", "鸝": "鹂", "鸞": "鸾", "鹵": "卤", "鹹": "咸", "鹺": "鹾", "鹽": "盐", "麗": "丽", "麥": "麦", "麩": "麸", "麯": "曲", "麵": "面", "麼": "么", "麽": "么", "黃": "黄", "黌": "黉", "點": "点", "黨": "党", "黲": "黪", "黴": "霉", "黶": "黡", "黷": "黩", "黽": "黾", "黿": "鼋", "鼉": "鼍", "鼕": "冬", "鼴": "鼹", "齊": "齐", "齋": "斋", "齎": "赍", "齏": "齑", "齒": "齿", "齔": "龀", "齕": "龁", "齗": "龂", "齙": "龅", "齜": "龇", "齟": "龃", "齠": "龆", "齡": "龄", "齣": "出", "齦": "龈", "齪": "龊", "齬": "龉", "齲": "龋", "齶": "腭", "齷": "龌", "龍": "龙", "龎": "厐", "龐": "庞", "龔": "龚", "龕": "龛", "龜": "龟", "幾畫": "几画", "賣畫": "卖画", "滷鹼": "卤碱", "原畫": "原画", "口鹼": "口碱", "古畫": "古画", "名畫": "名画", "奇畫": "奇画", "如畫": "如画", "弱鹼": "弱碱", "彩畫": "彩画", "所畫": "所画", "扉畫": "扉画", "教畫": "教画", "水鹼": "水碱", "洋鹼": "洋碱", "炭畫": "炭画", "畫一": "画一", "畫上": "画上", "畫下": "画下", "畫中": "画中", "畫供": "画供", "畫兒": "画儿", "畫具": "画具", "畫出": "画出", "畫史": "画史", "畫品": "画品", "畫商": "画商", "畫圈": "画圈", "畫境": "画境", "畫工": "画工", "畫帖": "画帖", "畫幅": "画幅", "畫意": "画意", "畫成": "画成", "畫景": "画景", "畫本": "画本", "畫架": "画架", "畫框": "画框", "畫法": "画法", "畫王": "画王", "畫界": "画界", "畫符": "画符", "畫紙": "画纸", "畫線": "画线", "畫航": "画航", "畫舫": "画舫", "畫虎": "画虎", "畫論": "画论", "畫譜": "画谱", "畫象": "画象", "畫質": "画质", "畫貼": "画贴", "畫軸": "画轴", "畫頁": "画页", "鹽鹼": "盐碱", "鹼": "碱", "鹼基": "碱基", "鹼度": "碱度", "鹼水": "碱水", "鹼熔": "碱熔", "磁畫": "磁画", "策畫": "策画", "組畫": "组画", "絹畫": "绢画", "耐鹼": "耐碱", "肉鹼": "肉碱", "膠畫": "胶画", "茶鹼": "茶碱", "西畫": "西画", "貼畫": "贴画", "返鹼": "返碱", "鍾鍛": "锺锻", "鍛鍾": "锻锺", "雕畫": "雕画", "鯰": "鲶", "三聯畫": "三联画", "中國畫": "中国画", "書畫": "书画", "書畫社": "书画社", "五筆畫": "五笔画", "作畫": "作画", "入畫": "入画", "寫生畫": "写生画", "刻畫": "刻画", "動畫": "动画", "勾畫": "勾画", "單色畫": "单色画", "卡通畫": "卡通画", "國畫": "国画", "圖畫": "图画", "壁畫": "壁画", "字畫": "字画", "宣傳畫": "宣传画", "工筆畫": "工笔画", "年畫": "年画", "幽默畫": "幽默画", "指畫": "指画", "描畫": "描画", "插畫": "插画", "擘畫": "擘画", "春畫": "春画", "木刻畫": "木刻画", "機械畫": "机械画", "比畫": "比画", "毛筆畫": "毛笔画", "水粉畫": "水粉画", "油畫": "油画", "海景畫": "海景画", "漫畫": "漫画", "點畫": "点画", "版畫": "版画", "畫": "画", "畫像": "画像", "畫冊": "画册", "畫刊": "画刊", "畫匠": "画匠", "畫捲": "画卷", "畫圖": "画图", "畫壇": "画坛", "畫室": "画室", "畫家": "画家", "畫屏": "画屏", "畫展": "画展", "畫布": "画布", "畫師": "画师", "畫廊": "画廊", "畫報": "画报", "畫押": "画押", "畫板": "画板", "畫片": "画片", "畫畫": "画画", "畫皮": "画皮", "畫眉鳥": "画眉鸟", "畫稿": "画稿", "畫筆": "画笔", "畫院": "画院", "畫集": "画集", "畫面": "画面", "筆畫": "笔画", "細密畫": "细密画", "繪畫": "绘画", "自畫像": "自画像", "蠟筆畫": "蜡笔画", "裸體畫": "裸体画", "西洋畫": "西洋画", "透視畫": "透视画", "銅版畫": "铜版画", "鍾": "锺", "靜物畫": "静物画", "餘": "馀", } zh2TW = { "缺省": "預設", "串行": "串列", "以太网": "乙太網", "位图": "點陣圖", "例程": "常式", "信道": "通道", "光标": "游標", "光盘": "光碟", "光驱": "光碟機", "全角": "全形", "加载": "載入", "半角": "半形", "变量": "變數", "噪声": "雜訊", "脱机": "離線", "声卡": "音效卡", "老字号": "老字號", "字号": "字型大小", "字库": "字型檔", "字段": "欄位", "字符": "字元", "存盘": "存檔", "寻址": "定址", "尾注": "章節附註", "异步": "非同步", "总线": "匯流排", "括号": "括弧", "接口": "介面", "控件": "控制項", "权限": "許可權", "盘片": "碟片", "硅片": "矽片", "硅谷": "矽谷", "硬盘": "硬碟", "磁盘": "磁碟", "磁道": "磁軌", "程控": "程式控制", "端口": "埠", "算子": "運算元", "算法": "演算法", "芯片": "晶片", "芯片": "晶元", "词组": "片語", "译码": "解碼", "软驱": "軟碟機", "快闪存储器": "快閃記憶體", "闪存": "快閃記憶體", "鼠标": "滑鼠", "进制": "進位", "交互式": "互動式", "仿真": "模擬", "优先级": "優先順序", "传感": "感測", "便携式": "攜帶型", "信息论": "資訊理論", "写保护": "防寫", "分布式": "分散式", "分辨率": "解析度", "服务器": "伺服器", "等于": "等於", "局域网": "區域網", "计算机": "電腦", "扫瞄仪": "掃瞄器", "宽带": "寬頻", "数据库": "資料庫", "奶酪": "乳酪", "巨商": "鉅賈", "手电": "手電筒", "万历": "萬曆", "永历": "永曆", "词汇": "辭彙", "习用": "慣用", "元音": "母音", "任意球": "自由球", "头球": "頭槌", "入球": "進球", "粒入球": "顆進球", "打门": "射門", "火锅盖帽": "蓋火鍋", "打印机": "印表機", "打印機": "印表機", "字节": "位元組", "字節": "位元組", "打印": "列印", "打印": "列印", "硬件": "硬體", "硬件": "硬體", "二极管": "二極體", "二極管": "二極體", "三极管": "三極體", "三極管": "三極體", "软件": "軟體", "軟件": "軟體", "网络": "網路", "網絡": "網路", "人工智能": "人工智慧", "航天飞机": "太空梭", "穿梭機": "太空梭", "因特网": "網際網路", "互聯網": "網際網路", "机器人": "機器人", "機械人": "機器人", "移动电话": "行動電話", "流動電話": "行動電話", "调制解调器": "數據機", "調制解調器": "數據機", "短信": "簡訊", "短訊": "簡訊", "乌兹别克斯坦": "烏茲別克", "乍得": "查德", "乍得": "查德", "也门": "葉門", "也門": "葉門", "伯利兹": "貝里斯", "伯利茲": "貝里斯", "佛得角": "維德角", "佛得角": "維德角", "克罗地亚": "克羅埃西亞", "克羅地亞": "克羅埃西亞", "冈比亚": "甘比亞", "岡比亞": "甘比亞", "几内亚比绍": "幾內亞比索", "幾內亞比紹": "幾內亞比索", "列支敦士登": "列支敦斯登", "列支敦士登": "列支敦斯登", "利比里亚": "賴比瑞亞", "利比里亞": "賴比瑞亞", "加纳": "迦納", "加納": "迦納", "加蓬": "加彭", "加蓬": "加彭", "博茨瓦纳": "波札那", "博茨瓦納": "波札那", "卡塔尔": "卡達", "卡塔爾": "卡達", "卢旺达": "盧安達", "盧旺達": "盧安達", "危地马拉": "瓜地馬拉", "危地馬拉": "瓜地馬拉", "厄瓜多尔": "厄瓜多", "厄瓜多爾": "厄瓜多", "厄立特里亚": "厄利垂亞", "厄立特里亞": "厄利垂亞", "吉布提": "吉布地", "吉布堤": "吉布地", "哈萨克斯坦": "哈薩克", "哥斯达黎加": "哥斯大黎加", "哥斯達黎加": "哥斯大黎加", "图瓦卢": "吐瓦魯", "圖瓦盧": "吐瓦魯", "土库曼斯坦": "土庫曼", "圣卢西亚": "聖露西亞", "聖盧西亞": "聖露西亞", "圣基茨和尼维斯": "聖克里斯多福及尼維斯", "聖吉斯納域斯": "聖克里斯多福及尼維斯", "圣文森特和格林纳丁斯": "聖文森及格瑞那丁", "聖文森特和格林納丁斯": "聖文森及格瑞那丁", "圣马力诺": "聖馬利諾", "聖馬力諾": "聖馬利諾", "圭亚那": "蓋亞那", "圭亞那": "蓋亞那", "坦桑尼亚": "坦尚尼亞", "坦桑尼亞": "坦尚尼亞", "埃塞俄比亚": "衣索比亞", "埃塞俄比亞": "衣索比亞", "基里巴斯": "吉里巴斯", "基里巴斯": "吉里巴斯", "塔吉克斯坦": "塔吉克", "塞拉利昂": "獅子山", "塞拉利昂": "獅子山", "塞浦路斯": "塞普勒斯", "塞浦路斯": "塞普勒斯", "塞舌尔": "塞席爾", "塞舌爾": "塞席爾", "多米尼加": "多明尼加", "多明尼加共和國": "多明尼加", "多米尼加联邦": "多米尼克", "多明尼加聯邦": "多米尼克", "安提瓜和巴布达": "安地卡及巴布達", "安提瓜和巴布達": "安地卡及巴布達", "尼日利亚": "奈及利亞", "尼日利亞": "奈及利亞", "尼日尔": "尼日", "尼日爾": "尼日", "巴巴多斯": "巴貝多", "巴巴多斯": "巴貝多", "巴布亚新几内亚": "巴布亞紐幾內亞", "巴布亞新畿內亞": "巴布亞紐幾內亞", "布基纳法索": "布吉納法索", "布基納法索": "布吉納法索", "布隆迪": "蒲隆地", "布隆迪": "蒲隆地", "希腊": "希臘", "帕劳": "帛琉", "意大利": "義大利", "意大利": "義大利", "所罗门群岛": "索羅門群島", "所羅門群島": "索羅門群島", "文莱": "汶萊", "斯威士兰": "史瓦濟蘭", "斯威士蘭": "史瓦濟蘭", "斯洛文尼亚": "斯洛維尼亞", "斯洛文尼亞": "斯洛維尼亞", "新西兰": "紐西蘭", "新西蘭": "紐西蘭", "格林纳达": "格瑞那達", "格林納達": "格瑞那達", "格鲁吉亚": "喬治亞", "格魯吉亞": "喬治亞", "佐治亚": "喬治亞", "佐治亞": "喬治亞", "毛里塔尼亚": "茅利塔尼亞", "毛里塔尼亞": "茅利塔尼亞", "毛里求斯": "模里西斯", "毛里裘斯": "模里西斯", "沙特阿拉伯": "沙烏地阿拉伯", "沙地阿拉伯": "沙烏地阿拉伯", "波斯尼亚和黑塞哥维那": "波士尼亞赫塞哥維納", "波斯尼亞黑塞哥維那": "波士尼亞赫塞哥維納", "津巴布韦": "辛巴威", "津巴布韋": "辛巴威", "洪都拉斯": "宏都拉斯", "洪都拉斯": "宏都拉斯", "特立尼达和托巴哥": "千里達托貝哥", "特立尼達和多巴哥": "千里達托貝哥", "瑙鲁": "諾魯", "瑙魯": "諾魯", "瓦努阿图": "萬那杜", "瓦努阿圖": "萬那杜", "溫納圖萬": "那杜", "科摩罗": "葛摩", "科摩羅": "葛摩", "科特迪瓦": "象牙海岸", "突尼斯": "突尼西亞", "索马里": "索馬利亞", "索馬里": "索馬利亞", "老挝": "寮國", "老撾": "寮國", "肯尼亚": "肯亞", "肯雅": "肯亞", "苏里南": "蘇利南", "莫桑比克": "莫三比克", "莱索托": "賴索托", "萊索托": "賴索托", "贝宁": "貝南", "貝寧": "貝南", "赞比亚": "尚比亞", "贊比亞": "尚比亞", "阿塞拜疆": "亞塞拜然", "阿塞拜疆": "亞塞拜然", "阿拉伯联合酋长国": "阿拉伯聯合大公國", "阿拉伯聯合酋長國": "阿拉伯聯合大公國", "马尔代夫": "馬爾地夫", "馬爾代夫": "馬爾地夫", "马耳他": "馬爾他", "马里共和国": "馬利共和國", "馬里共和國": "馬利共和國", "方便面": "速食麵", "快速面": "速食麵", "即食麵": "速食麵", "薯仔": "土豆", "蹦极跳": "笨豬跳", "绑紧跳": "笨豬跳", "冷菜": "冷盤", "凉菜": "冷盤", "出租车": "計程車", "台球": "撞球", "桌球": "撞球", "雪糕": "冰淇淋", "卫生": "衛生", "衞生": "衛生", "平治": "賓士", "奔驰": "賓士", "積架": "捷豹", "福士": "福斯", "雪铁龙": "雪鐵龍", "马自达": "馬自達", "萬事得": "馬自達", "拿破仑": "拿破崙", "拿破侖": "拿破崙", "布什": "布希", "布殊": "布希", "克林顿": "柯林頓", "克林頓": "柯林頓", "侯赛因": "海珊", "侯賽因": "海珊", "凡高": "梵谷", "狄安娜": "黛安娜", "戴安娜": "黛安娜", "赫拉": "希拉", } zh2HK = { "打印机": "打印機", "印表機": "打印機", "字节": "位元組", "字節": "位元組", "打印": "打印", "列印": "打印", "硬件": "硬件", "硬體": "硬件", "二极管": "二極管", "二極體": "二極管", "三极管": "三極管", "三極體": "三極管", "数码": "數碼", "數位": "數碼", "软件": "軟件", "軟體": "軟件", "网络": "網絡", "網路": "網絡", "人工智能": "人工智能", "人工智慧": "人工智能", "航天飞机": "穿梭機", "太空梭": "穿梭機", "因特网": "互聯網", "網際網路": "互聯網", "机器人": "機械人", "機器人": "機械人", "移动电话": "流動電話", "行動電話": "流動電話", "调制解调器": "調制解調器", "數據機": "調制解調器", "短信": "短訊", "簡訊": "短訊", "乍得": "乍得", "查德": "乍得", "也门": "也門", "葉門": "也門", "伯利兹": "伯利茲", "貝里斯": "伯利茲", "佛得角": "佛得角", "維德角": "佛得角", "克罗地亚": "克羅地亞", "克羅埃西亞": "克羅地亞", "冈比亚": "岡比亞", "甘比亞": "岡比亞", "几内亚比绍": "幾內亞比紹", "幾內亞比索": "幾內亞比紹", "列支敦士登": "列支敦士登", "列支敦斯登": "列支敦士登", "利比里亚": "利比里亞", "賴比瑞亞": "利比里亞", "加纳": "加納", "迦納": "加納", "加蓬": "加蓬", "加彭": "加蓬", "博茨瓦纳": "博茨瓦納", "波札那": "博茨瓦納", "卡塔尔": "卡塔爾", "卡達": "卡塔爾", "卢旺达": "盧旺達", "盧安達": "盧旺達", "危地马拉": "危地馬拉", "瓜地馬拉": "危地馬拉", "厄瓜多尔": "厄瓜多爾", "厄瓜多": "厄瓜多爾", "厄立特里亚": "厄立特里亞", "厄利垂亞": "厄立特里亞", "吉布提": "吉布堤", "吉布地": "吉布堤", "哥斯达黎加": "哥斯達黎加", "哥斯大黎加": "哥斯達黎加", "图瓦卢": "圖瓦盧", "吐瓦魯": "圖瓦盧", "圣卢西亚": "聖盧西亞", "聖露西亞": "聖盧西亞", "圣基茨和尼维斯": "聖吉斯納域斯", "聖克里斯多福及尼維斯": "聖吉斯納域斯", "圣文森特和格林纳丁斯": "聖文森特和格林納丁斯", "聖文森及格瑞那丁": "聖文森特和格林納丁斯", "圣马力诺": "聖馬力諾", "聖馬利諾": "聖馬力諾", "圭亚那": "圭亞那", "蓋亞那": "圭亞那", "坦桑尼亚": "坦桑尼亞", "坦尚尼亞": "坦桑尼亞", "埃塞俄比亚": "埃塞俄比亞", "衣索匹亞": "埃塞俄比亞", "衣索比亞": "埃塞俄比亞", "基里巴斯": "基里巴斯", "吉里巴斯": "基里巴斯", "狮子山": "獅子山", "塞普勒斯": "塞浦路斯", "塞舌尔": "塞舌爾", "塞席爾": "塞舌爾", "多米尼加": "多明尼加共和國", "多明尼加": "多明尼加共和國", "多米尼加联邦": "多明尼加聯邦", "多米尼克": "多明尼加聯邦", "安提瓜和巴布达": "安提瓜和巴布達", "安地卡及巴布達": "安提瓜和巴布達", "尼日利亚": "尼日利亞", "奈及利亞": "尼日利亞", "尼日尔": "尼日爾", "尼日": "尼日爾", "巴巴多斯": "巴巴多斯", "巴貝多": "巴巴多斯", "巴布亚新几内亚": "巴布亞新畿內亞", "巴布亞紐幾內亞": "巴布亞新畿內亞", "布基纳法索": "布基納法索", "布吉納法索": "布基納法索", "布隆迪": "布隆迪", "蒲隆地": "布隆迪", "義大利": "意大利", "所罗门群岛": "所羅門群島", "索羅門群島": "所羅門群島", "斯威士兰": "斯威士蘭", "史瓦濟蘭": "斯威士蘭", "斯洛文尼亚": "斯洛文尼亞", "斯洛維尼亞": "斯洛文尼亞", "新西兰": "新西蘭", "紐西蘭": "新西蘭", "格林纳达": "格林納達", "格瑞那達": "格林納達", "格鲁吉亚": "喬治亞", "格魯吉亞": "喬治亞", "梵蒂冈": "梵蒂岡", "毛里塔尼亚": "毛里塔尼亞", "茅利塔尼亞": "毛里塔尼亞", "毛里求斯": "毛里裘斯", "模里西斯": "毛里裘斯", "沙烏地阿拉伯": "沙特阿拉伯", "波斯尼亚和黑塞哥维那": "波斯尼亞黑塞哥維那", "波士尼亞赫塞哥維納": "波斯尼亞黑塞哥維那", "津巴布韦": "津巴布韋", "辛巴威": "津巴布韋", "洪都拉斯": "洪都拉斯", "宏都拉斯": "洪都拉斯", "特立尼达和托巴哥": "特立尼達和多巴哥", "千里達托貝哥": "特立尼達和多巴哥", "瑙鲁": "瑙魯", "諾魯": "瑙魯", "瓦努阿图": "瓦努阿圖", "萬那杜": "瓦努阿圖", "科摩罗": "科摩羅", "葛摩": "科摩羅", "索马里": "索馬里", "索馬利亞": "索馬里", "老挝": "老撾", "寮國": "老撾", "肯尼亚": "肯雅", "肯亞": "肯雅", "莫桑比克": "莫桑比克", "莫三比克": "莫桑比克", "莱索托": "萊索托", "賴索托": "萊索托", "贝宁": "貝寧", "貝南": "貝寧", "赞比亚": "贊比亞", "尚比亞": "贊比亞", "阿塞拜疆": "阿塞拜疆", "亞塞拜然": "阿塞拜疆", "阿拉伯联合酋长国": "阿拉伯聯合酋長國", "阿拉伯聯合大公國": "阿拉伯聯合酋長國", "马尔代夫": "馬爾代夫", "馬爾地夫": "馬爾代夫", "馬利共和國": "馬里共和國", "方便面": "即食麵", "快速面": "即食麵", "速食麵": "即食麵", "泡麵": "即食麵", "土豆": "馬鈴薯", "华乐": "中樂", "民乐": "中樂", "計程車": "的士", "出租车": "的士", "公車": "巴士", "自行车": "單車", "犬只": "狗隻", "台球": "桌球", "撞球": "桌球", "冰淇淋": "雪糕", "賓士": "平治", "捷豹": "積架", "福斯": "福士", "雪铁龙": "先進", "雪鐵龍": "先進", "沃尓沃": "富豪", "马自达": "萬事得", "馬自達": "萬事得", "寶獅": "標致", "拿破崙": "拿破侖", "布什": "布殊", "布希": "布殊", "克林顿": "克林頓", "柯林頓": "克林頓", "萨达姆": "薩達姆", "海珊": "侯賽因", "侯赛因": "侯賽因", "大卫·贝克汉姆": "大衛碧咸", "迈克尔·欧文": "米高奧雲", "珍妮弗·卡普里亚蒂": "卡佩雅蒂", "马拉特·萨芬": "沙芬", "迈克尔·舒马赫": "舒麥加", "希特勒": "希特拉", "狄安娜": "戴安娜", "黛安娜": "戴安娜", } zh2CN = { "記憶體": "内存", "預設": "默认", "串列": "串行", "乙太網": "以太网", "點陣圖": "位图", "常式": "例程", "游標": "光标", "光碟": "光盘", "光碟機": "光驱", "全形": "全角", "共用": "共享", "載入": "加载", "半形": "半角", "變數": "变量", "雜訊": "噪声", "因數": "因子", "功能變數名稱": "域名", "音效卡": "声卡", "字型大小": "字号", "字型檔": "字库", "欄位": "字段", "字元": "字符", "存檔": "存盘", "定址": "寻址", "章節附註": "尾注", "非同步": "异步", "匯流排": "总线", "括弧": "括号", "介面": "接口", "控制項": "控件", "許可權": "权限", "碟片": "盘片", "矽片": "硅片", "矽谷": "硅谷", "硬碟": "硬盘", "磁碟": "磁盘", "磁軌": "磁道", "程式控制": "程控", "運算元": "算子", "演算法": "算法", "晶片": "芯片", "晶元": "芯片", "片語": "词组", "軟碟機": "软驱", "快閃記憶體": "快闪存储器", "滑鼠": "鼠标", "進位": "进制", "互動式": "交互式", "優先順序": "优先级", "感測": "传感", "攜帶型": "便携式", "資訊理論": "信息论", "迴圈": "循环", "防寫": "写保护", "分散式": "分布式", "解析度": "分辨率", "伺服器": "服务器", "等於": "等于", "區域網": "局域网", "巨集": "宏", "掃瞄器": "扫瞄仪", "寬頻": "宽带", "資料庫": "数据库", "乳酪": "奶酪", "鉅賈": "巨商", "手電筒": "手电", "萬曆": "万历", "永曆": "永历", "辭彙": "词汇", "母音": "元音", "自由球": "任意球", "頭槌": "头球", "進球": "入球", "顆進球": "粒入球", "射門": "打门", "蓋火鍋": "火锅盖帽", "印表機": "打印机", "打印機": "打印机", "位元組": "字节", "字節": "字节", "列印": "打印", "打印": "打印", "硬體": "硬件", "二極體": "二极管", "二極管": "二极管", "三極體": "三极管", "三極管": "三极管", "數位": "数码", "數碼": "数码", "軟體": "软件", "軟件": "软件", "網路": "网络", "網絡": "网络", "人工智慧": "人工智能", "太空梭": "航天飞机", "穿梭機": "航天飞机", "網際網路": "因特网", "互聯網": "因特网", "機械人": "机器人", "機器人": "机器人", "行動電話": "移动电话", "流動電話": "移动电话", "調制解調器": "调制解调器", "數據機": "调制解调器", "短訊": "短信", "簡訊": "短信", "烏茲別克": "乌兹别克斯坦", "查德": "乍得", "乍得": "乍得", "也門": "", "葉門": "也门", "伯利茲": "伯利兹", "貝里斯": "伯利兹", "維德角": "佛得角", "佛得角": "佛得角", "克羅地亞": "克罗地亚", "克羅埃西亞": "克罗地亚", "岡比亞": "冈比亚", "甘比亞": "冈比亚", "幾內亞比紹": "几内亚比绍", "幾內亞比索": "几内亚比绍", "列支敦斯登": "列支敦士登", "列支敦士登": "列支敦士登", "利比里亞": "利比里亚", "賴比瑞亞": "利比里亚", "加納": "加纳", "迦納": "加纳", "加彭": "加蓬", "加蓬": "加蓬", "博茨瓦納": "博茨瓦纳", "波札那": "博茨瓦纳", "卡塔爾": "卡塔尔", "卡達": "卡塔尔", "盧旺達": "卢旺达", "盧安達": "卢旺达", "危地馬拉": "危地马拉", "瓜地馬拉": "危地马拉", "厄瓜多爾": "厄瓜多尔", "厄瓜多": "厄瓜多尔", "厄立特里亞": "厄立特里亚", "厄利垂亞": "厄立特里亚", "吉布堤": "吉布提", "吉布地": "吉布提", "哈薩克": "哈萨克斯坦", "哥斯達黎加": "哥斯达黎加", "哥斯大黎加": "哥斯达黎加", "圖瓦盧": "图瓦卢", "吐瓦魯": "图瓦卢", "土庫曼": "土库曼斯坦", "聖盧西亞": "圣卢西亚", "聖露西亞": "圣卢西亚", "聖吉斯納域斯": "圣基茨和尼维斯", "聖克里斯多福及尼維斯": "圣基茨和尼维斯", "聖文森特和格林納丁斯": "圣文森特和格林纳丁斯", "聖文森及格瑞那丁": "圣文森特和格林纳丁斯", "聖馬力諾": "圣马力诺", "聖馬利諾": "圣马力诺", "圭亞那": "圭亚那", "蓋亞那": "圭亚那", "坦桑尼亞": "坦桑尼亚", "坦尚尼亞": "坦桑尼亚", "埃塞俄比亞": "埃塞俄比亚", "衣索匹亞": "埃塞俄比亚", "衣索比亞": "埃塞俄比亚", "吉里巴斯": "基里巴斯", "基里巴斯": "基里巴斯", "塔吉克": "塔吉克斯坦", "塞拉利昂": "塞拉利昂", "塞普勒斯": "塞浦路斯", "塞浦路斯": "塞浦路斯", "塞舌爾": "塞舌尔", "塞席爾": "塞舌尔", "多明尼加共和國": "多米尼加", "多明尼加": "多米尼加", "多明尼加聯邦": "多米尼加联邦", "多米尼克": "多米尼加联邦", "安提瓜和巴布達": "安提瓜和巴布达", "安地卡及巴布達": "安提瓜和巴布达", "尼日利亞": "尼日利亚", "奈及利亞": "尼日利亚", "尼日爾": "尼日尔", "尼日": "尼日尔", "巴貝多": "巴巴多斯", "巴巴多斯": "巴巴多斯", "巴布亞新畿內亞": "巴布亚新几内亚", "巴布亞紐幾內亞": "巴布亚新几内亚", "布基納法索": "布基纳法索", "布吉納法索": "布基纳法索", "蒲隆地": "布隆迪", "布隆迪": "布隆迪", "希臘": "希腊", "帛琉": "帕劳", "義大利": "意大利", "意大利": "意大利", "所羅門群島": "所罗门群岛", "索羅門群島": "所罗门群岛", "汶萊": "文莱", "斯威士蘭": "斯威士兰", "史瓦濟蘭": "斯威士兰", "斯洛文尼亞": "斯洛文尼亚", "斯洛維尼亞": "斯洛文尼亚", "新西蘭": "新西兰", "紐西蘭": "新西兰", "格林納達": "格林纳达", "格瑞那達": "格林纳达", "格魯吉亞": "乔治亚", "喬治亞": "乔治亚", "梵蒂岡": "梵蒂冈", "毛里塔尼亞": "毛里塔尼亚", "茅利塔尼亞": "毛里塔尼亚", "毛里裘斯": "毛里求斯", "模里西斯": "毛里求斯", "沙地阿拉伯": "沙特阿拉伯", "沙烏地阿拉伯": "沙特阿拉伯", "波斯尼亞黑塞哥維那": "波斯尼亚和黑塞哥维那", "波士尼亞赫塞哥維納": "波斯尼亚和黑塞哥维那", "津巴布韋": "津巴布韦", "辛巴威": "津巴布韦", "宏都拉斯": "洪都拉斯", "洪都拉斯": "洪都拉斯", "特立尼達和多巴哥": "特立尼达和托巴哥", "千里達托貝哥": "特立尼达和托巴哥", "瑙魯": "瑙鲁", "諾魯": "瑙鲁", "瓦努阿圖": "瓦努阿图", "萬那杜": "瓦努阿图", "溫納圖": "瓦努阿图", "科摩羅": "科摩罗", "葛摩": "科摩罗", "象牙海岸": "科特迪瓦", "突尼西亞": "突尼斯", "索馬里": "索马里", "索馬利亞": "索马里", "老撾": "老挝", "寮國": "老挝", "肯雅": "肯尼亚", "肯亞": "肯尼亚", "蘇利南": "苏里南", "莫三比克": "莫桑比克", "莫桑比克": "莫桑比克", "萊索托": "莱索托", "賴索托": "莱索托", "貝寧": "贝宁", "貝南": "贝宁", "贊比亞": "赞比亚", "尚比亞": "赞比亚", "亞塞拜然": "阿塞拜疆", "阿塞拜疆": "阿塞拜疆", "阿拉伯聯合酋長國": "阿拉伯联合酋长国", "阿拉伯聯合大公國": "阿拉伯联合酋长国", "南韓": "韩国", "馬爾代夫": "马尔代夫", "馬爾地夫": "马尔代夫", "馬爾他": "马耳他", "馬利共和國": "马里共和国", "即食麵": "方便面", "快速面": "方便面", "速食麵": "方便面", "泡麵": "方便面", "笨豬跳": "蹦极跳", "绑紧跳": "蹦极跳", "冷盤": "凉菜", "冷菜": "凉菜", "散钱": "零钱", "谐星": "笑星", "夜学": "夜校", "华乐": "民乐", "中樂": "民乐", "屋价": "房价", "的士": "出租车", "計程車": "出租车", "公車": "公共汽车", "單車": "自行车", "節慶": "节日", "芝士": "乾酪", "狗隻": "犬只", "士多啤梨": "草莓", "忌廉": "奶油", "桌球": "台球", "撞球": "台球", "雪糕": "冰淇淋", "衞生": "卫生", "衛生": "卫生", "賓士": "奔驰", "平治": "奔驰", "積架": "捷豹", "福斯": "大众", "福士": "大众", "雪鐵龍": "雪铁龙", "萬事得": "马自达", "馬自達": "马自达", "寶獅": "标志", "拿破崙": "拿破仑", "布殊": "布什", "布希": "布什", "柯林頓": "克林顿", "克林頓": "克林顿", "薩達姆": "萨达姆", "海珊": "萨达姆", "梵谷": "凡高", "大衛碧咸": "大卫·贝克汉姆", "米高奧雲": "迈克尔·欧文", "卡佩雅蒂": "珍妮弗·卡普里亚蒂", "沙芬": "马拉特·萨芬", "舒麥加": "迈克尔·舒马赫", "希特拉": "希特勒", "黛安娜": "戴安娜", "希拉": "赫拉", } zh2SG = { "方便面": "快速面", "速食麵": "快速面", "即食麵": "快速面", "蹦极跳": "绑紧跳", "笨豬跳": "绑紧跳", "凉菜": "冷菜", "冷盤": "冷菜", "零钱": "散钱", "散紙": "散钱", "笑星": "谐星", "夜校": "夜学", "民乐": "华乐", "住房": "住屋", "房价": "屋价", "泡麵": "快速面", } ================================================ FILE: utils/lele/README.md ================================================ ================================================ FILE: utils/lele/__init__.py ================================================ import lele.layers import lele.losses from lele.ops import * try: import lele.fastai except Exception: pass from lele.util import * from lele.training import * from lele.apps import * ================================================ FILE: utils/lele/apps/__init__.py ================================================ ================================================ FILE: utils/lele/apps/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2019-08-07 11:23:23.688250 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import gezi logging = gezi.logging try: import torch device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") except Exception: pass try: #import horovod.tensorflow as hvd #import horovod.torch as hvd #hvd.init() import mpi4py from mpi4py import MPI comm = MPI.COMM_WORLD except Exception: pass def to_torch(x, y=None): if FLAGS.torch_only: for key in x: if type(x[key][0]) != np.str_: x[key] = x[key].to(device) return x, y.to(device) def train(model, loss_fn, dataset=None, valid_dataset=None, valid_dataset2=None, test_dataset=None, evaluate_fn=None, inference_fn=None, eval_fn=None, write_valid=True, valid_names=None, infer_names=None, infer_debug_names=None, valid_write_fn=None, infer_write_fn=None, valid_suffix='.valid', infer_suffix='.infer', write_streaming=False, optimizer=None, param_groups=None, init_fn=None, sep=','): pass ================================================ FILE: utils/lele/fastai/__init__.py ================================================ import lele.fastai.text ================================================ FILE: utils/lele/fastai/core.py ================================================ "`fastai.core` contains essential util functions to format and split data" from .imports.core import * warnings.filterwarnings("ignore", message="numpy.dtype size changed") warnings.filterwarnings("ignore", message="numpy.ufunc size changed") AnnealFunc = Callable[[Number,Number,float], Number] ArgStar = Collection[Any] BatchSamples = Collection[Tuple[Collection[int], int]] Classes = Collection[Any] DataFrameOrChunks = Union[DataFrame, pd.io.parsers.TextFileReader] FilePathList = Collection[Path] Floats = Union[float, Collection[float]] ImgLabel = str ImgLabels = Collection[ImgLabel] KeyFunc = Callable[[int], int] KWArgs = Dict[str,Any] ListOrItem = Union[Collection[Any],int,float,str] ListRules = Collection[Callable[[str],str]] ListSizes = Collection[Tuple[int,int]] NPArrayableList = Collection[Union[np.ndarray, list]] NPArrayList = Collection[np.ndarray] NPArrayMask = np.ndarray NPImage = np.ndarray OptDataFrame = Optional[DataFrame] OptListOrItem = Optional[ListOrItem] OptRange = Optional[Tuple[float,float]] OptStrTuple = Optional[Tuple[str,str]] OptStats = Optional[Tuple[np.ndarray, np.ndarray]] PathOrStr = Union[Path,str] PBar = Union[MasterBar, ProgressBar] Point=Tuple[float,float] Points=Collection[Point] Sizes = List[List[int]] SplitArrayList = List[Tuple[np.ndarray,np.ndarray]] StartOptEnd=Union[float,Tuple[float,float]] StrList = Collection[str] Tokens = Collection[Collection[str]] OptStrList = Optional[StrList] def num_cpus()->int: "Get number of cpus" try: return len(os.sched_getaffinity(0)) except AttributeError: return os.cpu_count() default_cpus = min(16, num_cpus()) def is_listy(x:Any)->bool: return isinstance(x, (tuple,list)) def is_tuple(x:Any)->bool: return isinstance(x, tuple) def noop(x): return x def to_int(b): if is_listy(b): return [to_int(x) for x in b] else: return int(b) def ifnone(a:Any,b:Any)->Any: "`a` if `a` is not None, otherwise `b`." return b if a is None else a def uniqueify(x:Series) -> List[Any]: return list(OrderedDict.fromkeys(x).keys()) def idx_dict(a): return {v:k for k,v in enumerate(a)} def find_classes(folder:Path)->FilePathList: "List of label subdirectories in imagenet-style `folder`." classes = [d for d in folder.iterdir() if d.is_dir() and not d.name.startswith('.')] assert(len(classes)>0) return sorted(classes, key=lambda d: d.name) def arrays_split(mask:NPArrayMask, *arrs:NPArrayableList)->SplitArrayList: "Given `arrs` is [a,b,...] and `mask`index - return[(a[mask],a[~mask]),(b[mask],b[~mask]),...]." mask = array(mask) return list(zip(*[(a[mask],a[~mask]) for a in map(np.array, arrs)])) def random_split(valid_pct:float, *arrs:NPArrayableList)->SplitArrayList: "Randomly split `arrs` with `valid_pct` ratio. good for creating validation set." is_train = np.random.uniform(size=(len(arrs[0]),)) > valid_pct return arrays_split(is_train, *arrs) def listify(p:OptListOrItem=None, q:OptListOrItem=None): "Make `p` same length as `q`" if p is None: p=[] elif not isinstance(p, Iterable): p=[p] n = q if type(q)==int else len(p) if q is None else len(q) if len(p)==1: p = p * n assert len(p)==n, f'List len mismatch ({len(p)} vs {n})' return list(p) _camel_re1 = re.compile('(.)([A-Z][a-z]+)') _camel_re2 = re.compile('([a-z0-9])([A-Z])') def camel2snake(name:str)->str: s1 = re.sub(_camel_re1, r'\1_\2', name) return re.sub(_camel_re2, r'\1_\2', s1).lower() def even_mults(start:float, stop:float, n:int)->np.ndarray: "Build evenly stepped schedule from `start` to `stop` in `n` steps." mult = stop/start step = mult**(1/(n-1)) return np.array([start*(step**i) for i in range(n)]) def extract_kwargs(names:Collection[str], kwargs:KWArgs): "Extracs the keys in `names` from the `kwargs`." new_kwargs = {} for arg_name in names: if arg_name in kwargs: arg_val = kwargs.pop(arg_name) new_kwargs[arg_name] = arg_val return new_kwargs, kwargs def partition(a:Collection, sz:int) -> List[Collection]: "Split iterables `a` in equal parts of size `sz`" return [a[i:i+sz] for i in range(0, len(a), sz)] def partition_by_cores(a:Collection, n_cpus:int) -> List[Collection]: "Split data in `a` equally among `n_cpus` cores" return partition(a, len(a)//n_cpus + 1) def get_chunk_length(data:Union[PathOrStr, DataFrame, pd.io.parsers.TextFileReader], chunksize:Optional[int] = None) -> int: "Read the number of chunks in a pandas `DataFrame`." if (type(data) == DataFrame): return 1 elif (type(data) == pd.io.parsers.TextFileReader): dfs = pd.read_csv(data.f, header=None, chunksize=data.chunksize) else: dfs = pd.read_csv(data, header=None, chunksize=chunksize) l = 0 for _ in dfs: l+=1 return l def get_total_length(csv_name:PathOrStr, chunksize:int) -> int: "Read the the total length of a pandas `DataFrame`." dfs = pd.read_csv(csv_name, header=None, chunksize=chunksize) l = 0 for df in dfs: l+=len(df) return l def maybe_copy(old_fnames:Collection[PathOrStr], new_fnames:Collection[PathOrStr]): "Copy the `old_fnames` to `new_fnames` location if `new_fnames` don't exist or are less recent." os.makedirs(os.path.dirname(new_fnames[0]), exist_ok=True) for old_fname,new_fname in zip(old_fnames, new_fnames): if not os.path.isfile(new_fname) or os.path.getmtime(new_fname) < os.path.getmtime(old_fname): shutil.copyfile(old_fname, new_fname) def series2cat(df:DataFrame, *col_names): "Categorifies the columns `col_names` in `df`." for c in listify(col_names): df[c] = df[c].astype('category').cat.as_ordered() class ItemBase(): "All transformable dataset items use this type." @property @abstractmethod def device(self): pass @property @abstractmethod def data(self): pass def download_url(url:str, dest:str, overwrite:bool=False)->None: "Download `url` to `dest` unless is exists and not `overwrite`." if os.path.exists(dest) and not overwrite: return u = requests.get(url, stream=True) file_size = int(u.headers["Content-Length"]) u = u.raw with open(dest,'wb') as f: pbar = progress_bar(range(file_size), auto_update=False) nbytes,buffer = 0,[1] while len(buffer): buffer = u.read(8192) nbytes += len(buffer) pbar.update(nbytes) f.write(buffer) def range_of(x): return list(range(len(x))) def arange_of(x): return np.arange(len(x)) ================================================ FILE: utils/lele/fastai/imports/__init__.py ================================================ from .core import * from .torch import * ================================================ FILE: utils/lele/fastai/imports/core.py ================================================ import csv, gc, gzip, os, pickle, shutil, sys, warnings import math, matplotlib.pyplot as plt, numpy as np, pandas as pd, random import scipy.stats, scipy.special import abc, collections, hashlib, itertools, json, operator import mimetypes, inspect, typing, functools import html, re, spacy, requests from abc import abstractmethod, abstractproperty from collections import abc, Counter, defaultdict, Iterable, namedtuple, OrderedDict from concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor from copy import copy, deepcopy from dataclasses import dataclass, field from enum import Enum, IntEnum from fastprogress import master_bar, progress_bar from functools import partial, reduce from IPython.core.debugger import set_trace from matplotlib import patches, patheffects from numpy import array, cos, exp, log, sin, tan, tanh from operator import attrgetter, itemgetter from pathlib import Path from spacy.symbols import ORTH from warnings import warn #for type annotations from fastprogress.fastprogress import MasterBar, ProgressBar from matplotlib.patches import Patch from numbers import Number from pandas import Series, DataFrame from typing import Any, AnyStr, Callable, Collection, Dict, Hashable, Iterator, List, Mapping, NewType, Optional from typing import Sequence, Tuple, TypeVar, Union ================================================ FILE: utils/lele/fastai/imports/torch.py ================================================ import torch, torch.nn.functional as F from torch import ByteTensor, DoubleTensor, FloatTensor, HalfTensor, LongTensor, ShortTensor, Tensor from torch import nn, optim, as_tensor, tensor from torch.utils.data import BatchSampler, DataLoader, Dataset, Sampler, TensorDataset ================================================ FILE: utils/lele/fastai/layers.py ================================================ "`fastai.layers` provides essential functions to building and modifying `model` architectures" from .torch_core import * __all__ = ['AdaptiveConcatPool2d', 'CrossEntropyFlat', 'Debugger', 'Flatten', 'Lambda', 'PoolFlatten', 'ResizeBatch', 'StdUpsample', 'bn_drop_lin', 'conv2d', 'conv2d_relu', 'conv2d_trans', 'conv_layer', 'get_embedding', 'simple_cnn', 'std_upsample_head', 'trunc_normal_'] class Lambda(nn.Module): "An easy way to create a pytorch layer for a simple `func`." def __init__(self, func:LambdaFunc): "create a layer that simply calls `func` with `x`" super().__init__() self.func=func def forward(self, x): return self.func(x) def ResizeBatch(*size:int) -> Tensor: "Layer that resizes x to `size`, good for connecting mismatched layers." return Lambda(lambda x: x.view((-1,)+size)) def Flatten()->Tensor: "Flattens `x` to a single dimension, often used at the end of a model." return Lambda(lambda x: x.view((x.size(0), -1))) def PoolFlatten()->nn.Sequential: "Apply `nn.AdaptiveAvgPool2d` to `x` and then flatten the result." return nn.Sequential(nn.AdaptiveAvgPool2d(1), Flatten()) def bn_drop_lin(n_in:int, n_out:int, bn:bool=True, p:float=0., actn:Optional[nn.Module]=None): "`n_in`->bn->dropout->linear(`n_in`,`n_out`)->`actn`" layers = [nn.BatchNorm1d(n_in)] if bn else [] if p != 0: layers.append(nn.Dropout(p)) layers.append(nn.Linear(n_in, n_out)) if actn is not None: layers.append(actn) return layers def conv2d(ni:int, nf:int, ks:int=3, stride:int=1, padding:int=None, bias=False) -> nn.Conv2d: "Create `nn.Conv2d` layer: `ni` inputs, `nf` outputs, `ks` kernel size. `padding` defaults to `k//2`." if padding is None: padding = ks//2 return nn.Conv2d(ni, nf, kernel_size=ks, stride=stride, padding=padding, bias=bias) def conv_layer(ni:int, nf:int, ks:int=3, stride:int=1)->nn.Sequential: "Create Conv2d->BatchNorm2d->LeakyReLu layer: `ni` input, `nf` out filters, `ks` kernel, `stride`:stride." return nn.Sequential( nn.Conv2d(ni, nf, kernel_size=ks, bias=False, stride=stride, padding=ks//2), nn.BatchNorm2d(nf), nn.LeakyReLU(negative_slope=0.1, inplace=True)) def conv2d_relu(ni:int, nf:int, ks:int=3, stride:int=1, padding:int=None, bn:bool=False, bias:bool=False) -> nn.Sequential: """Create a `conv2d` layer with `nn.ReLU` activation and optional(`bn`) `nn.BatchNorm2d`: `ni` input, `nf` out filters, `ks` kernel, `stride`:stride, `padding`:padding, `bn`: batch normalization.""" layers = [conv2d(ni, nf, ks=ks, stride=stride, padding=padding, bias=bias), nn.ReLU()] if bn: layers.append(nn.BatchNorm2d(nf)) return nn.Sequential(*layers) def conv2d_trans(ni:int, nf:int, ks:int=2, stride:int=2, padding:int=0) -> nn.ConvTranspose2d: "Create `nn.ConvTranspose2d` layer: `ni` inputs, `nf` outputs, `ks` kernel size, `stride`: stride. `padding` defaults to 0." return nn.ConvTranspose2d(ni, nf, kernel_size=ks, stride=stride, padding=padding) class AdaptiveConcatPool2d(nn.Module): "Layer that concats `AdaptiveAvgPool2d` and `AdaptiveMaxPool2d`." def __init__(self, sz:Optional[int]=None): "Output will be 2*sz or 2 if sz is None" super().__init__() sz = sz or 1 self.ap,self.mp = nn.AdaptiveAvgPool2d(sz), nn.AdaptiveMaxPool2d(sz) def forward(self, x): return torch.cat([self.mp(x), self.ap(x)], 1) class Debugger(nn.Module): "A module to debug inside a model." def forward(self,x:Tensor) -> Tensor: set_trace() return x class StdUpsample(nn.Module): "Increases the dimensionality of our data by applying a transposed convolution layer." def __init__(self, n_in:int, n_out:int): super().__init__() self.conv = conv2d_trans(n_in, n_out) self.bn = nn.BatchNorm2d(n_out) def forward(self, x:Tensor) -> Tensor: return self.bn(F.relu(self.conv(x))) def std_upsample_head(c, *nfs:Collection[int]) -> Model: "Create a sequence of upsample layers." return nn.Sequential( nn.ReLU(), *(StdUpsample(nfs[i],nfs[i+1]) for i in range(4)), conv2d_trans(nfs[-1], c) ) class CrossEntropyFlat(nn.CrossEntropyLoss): "Same as `nn.CrossEntropyLoss`, but flattens input and target." def forward(self, input:Tensor, target:Tensor) -> Rank0Tensor: n,c,*_ = input.shape return super().forward(input.view(n, c, -1), target.view(n, -1)) def simple_cnn(actns:Collection[int], kernel_szs:Collection[int]=None, strides:Collection[int]=None) -> nn.Sequential: "CNN with `conv2d_relu` layers defined by `actns`, `kernel_szs` and `strides`." nl = len(actns)-1 kernel_szs = ifnone(kernel_szs, [3]*nl) strides = ifnone(strides , [2]*nl) layers = [conv2d_relu(actns[i], actns[i+1], kernel_szs[i], stride=strides[i]) for i in range_of(strides)] layers.append(PoolFlatten()) return nn.Sequential(*layers) def trunc_normal_(x:Tensor, mean:float=0., std:float=1.) -> Tensor: "Truncated normal initialization." # From https://discuss.pytorch.org/t/implementing-truncated-normal-initializer/4778/12 return x.normal_().fmod_(2).mul_(std).add_(mean) def get_embedding(ni:int,nf:int) -> Model: "Create an embedding layer." emb = nn.Embedding(ni, nf) # See https://arxiv.org/abs/1711.09160 with torch.no_grad(): trunc_normal_(emb.weight, std=0.01) return emb ================================================ FILE: utils/lele/fastai/text/__init__.py ================================================ from lele.fastai.text.models import * ================================================ FILE: utils/lele/fastai/text/models.py ================================================ from ..torch_core import * from ..layers import * import numpy as np __all__ = ['EmbeddingDropout', 'LinearDecoder', 'MultiBatchRNNCore', 'PoolingLinearClassifier', 'RNNCore', 'RNNDropout', 'SequentialRNN', 'WeightDropout', 'dropout_mask', 'get_language_model', 'get_rnn_classifier', 'classifier'] def dropout_mask(x:Tensor, sz:Collection[int], p:float): "Return a dropout mask of the same type as x, size sz, with probability p to cancel an element." return x.new(*sz).bernoulli_(1-p).div_(1-p) class RNNDropout(nn.Module): "Dropout that is consistent on the seq_len dimension." def __init__(self, p:float=0.5): super().__init__() self.p=p def forward(self, x:Tensor) -> Tensor: if not self.training or self.p == 0.: return x m = dropout_mask(x.data, (1, x.size(1), x.size(2)), self.p) return x * m class WeightDropout(nn.Module): "A module that warps another layer in which some weights will be replaced by 0 during training." def __init__(self, module:Model, weight_p:float, layer_names:Collection[str]=['weight_hh_l0']): super().__init__() self.module,self.weight_p,self.layer_names = module,weight_p,layer_names for layer in self.layer_names: #Makes a copy of the weights of the selected layers. w = getattr(self.module, layer) self.register_parameter(f'{layer}_raw', nn.Parameter(w.data)) def _setweights(self): "Apply dropout to the raw weights." for layer in self.layer_names: raw_w = getattr(self, f'{layer}_raw') self.module._parameters[layer] = F.dropout(raw_w, p=self.weight_p, training=self.training) def forward(self, *args:ArgStar): self._setweights() with warnings.catch_warnings(): #To avoid the warning that comes because the weights aren't flattened. warnings.simplefilter("ignore") return self.module.forward(*args) def reset(self): for layer in self.layer_names: raw_w = getattr(self, f'{layer}_raw') self.module._parameters[layer] = F.dropout(raw_w, p=self.weight_p, training=False) if hasattr(self.module, 'reset'): self.module.reset() class EmbeddingDropout(nn.Module): "Apply dropout in the embedding layer by zeroing out some elements of the embedding vector." def __init__(self, emb:Model, embed_p:float): super().__init__() self.emb,self.embed_p = emb,embed_p self.pad_idx = self.emb.padding_idx if self.pad_idx is None: self.pad_idx = -1 def forward(self, words:LongTensor, scale:Optional[float]=None) -> Tensor: if self.training and self.embed_p != 0: size = (self.emb.weight.size(0),1) mask = dropout_mask(self.emb.weight.data, size, self.embed_p) masked_embed = self.emb.weight * mask else: masked_embed = self.emb.weight if scale: masked_embed.mul_(scale) return F.embedding(words, masked_embed, self.pad_idx, self.emb.max_norm, self.emb.norm_type, self.emb.scale_grad_by_freq, self.emb.sparse) def _repackage_var(h:Tensors) -> Tensors: "Detach h from its history." return h.detach() if type(h) == torch.Tensor else tuple(_repackage_var(v) for v in h) class RNNCore(nn.Module): "AWD-LSTM/QRNN inspired by https://arxiv.org/abs/1708.02182." initrange=0.1 def __init__(self, vocab_sz:int, emb_sz:int, n_hid:int, n_layers:int, pad_token:int, bidir:bool=False, hidden_p:float=0.2, input_p:float=0.6, embed_p:float=0.1, weight_p:float=0.5, qrnn:bool=False): super().__init__() self.bs,self.qrnn,self.ndir = 1, qrnn,(2 if bidir else 1) self.emb_sz,self.n_hid,self.n_layers = emb_sz,n_hid,n_layers self.encoder = nn.Embedding(vocab_sz, emb_sz, padding_idx=pad_token) self.encoder_dp = EmbeddingDropout(self.encoder, embed_p) if self.qrnn: #Using QRNN requires cupy: https://github.com/cupy/cupy from .qrnn.qrnn import QRNNLayer self.rnns = [QRNNLayer(emb_sz if l == 0 else n_hid, (n_hid if l != n_layers - 1 else emb_sz)//self.ndir, save_prev_x=True, zoneout=0, window=2 if l == 0 else 1, output_gate=True, use_cuda=torch.cuda.is_available()) for l in range(n_layers)] if weight_p != 0.: for rnn in self.rnns: rnn.linear = WeightDropout(rnn.linear, weight_p, layer_names=['weight']) else: self.rnns = [nn.LSTM(emb_sz if l == 0 else n_hid, (n_hid if l != n_layers - 1 else emb_sz)//self.ndir, 1, bidirectional=bidir) for l in range(n_layers)] if weight_p != 0.: self.rnns = [WeightDropout(rnn, weight_p) for rnn in self.rnns] self.rnns = torch.nn.ModuleList(self.rnns) self.encoder.weight.data.uniform_(-self.initrange, self.initrange) self.input_dp = RNNDropout(input_p) self.hidden_dps = nn.ModuleList([RNNDropout(hidden_p) for l in range(n_layers)]) def forward(self, input:LongTensor) -> Tuple[Tensor,Tensor]: sl,bs = input.size() if bs!=self.bs: self.bs=bs self.reset() raw_output = self.input_dp(self.encoder_dp(input)) new_hidden,raw_outputs,outputs = [],[],[] for l, (rnn,hid_dp) in enumerate(zip(self.rnns, self.hidden_dps)): raw_output, new_h = rnn(raw_output, self.hidden[l]) new_hidden.append(new_h) raw_outputs.append(raw_output) if l != self.n_layers - 1: raw_output = hid_dp(raw_output) outputs.append(raw_output) self.hidden = _repackage_var(new_hidden) return raw_outputs, outputs def _one_hidden(self, l:int) -> Tensor: "Return one hidden state." nh = (self.n_hid if l != self.n_layers - 1 else self.emb_sz)//self.ndir return self.weights.new(self.ndir, self.bs, nh).zero_() def reset(self): "Reset the hidden states." [r.reset() for r in self.rnns if hasattr(r, 'reset')] self.weights = next(self.parameters()).data if self.qrnn: self.hidden = [self._one_hidden(l) for l in range(self.n_layers)] else: self.hidden = [(self._one_hidden(l), self._one_hidden(l)) for l in range(self.n_layers)] class LinearDecoder(nn.Module): "To go on top of a RNNCore module and create a Language Model." initrange=0.1 def __init__(self, n_out:int, n_hid:int, output_p:float, tie_encoder:Model=None, bias:bool=True): super().__init__() self.decoder = nn.Linear(n_hid, n_out, bias=bias) self.decoder.weight.data.uniform_(-self.initrange, self.initrange) self.output_dp = RNNDropout(output_p) if bias: self.decoder.bias.data.zero_() if tie_encoder: self.decoder.weight = tie_encoder.weight def forward(self, input:Tuple[Tensor,Tensor]) -> Tuple[Tensor,Tensor,Tensor]: raw_outputs, outputs = input output = self.output_dp(outputs[-1]) decoded = self.decoder(output.view(output.size(0)*output.size(1), output.size(2))) return decoded, raw_outputs, outputs class SequentialRNN(nn.Sequential): "A sequential module that passes the reset call to its children." def reset(self): for c in self.children(): if hasattr(c, 'reset'): c.reset() class MultiBatchRNNCore(RNNCore): "Create a RNNCore module that can process a full sentence." def __init__(self, bptt:int, max_seq:int, *args, **kwargs): self.max_seq,self.bptt = max_seq,bptt super().__init__(*args, **kwargs) def concat(self, arrs:Collection[Tensor]) -> Tensor: "Concatenate the `arrs` along the batch dimension." return [torch.cat([l[si] for l in arrs]) for si in range_of(arrs[0])] def forward(self, input:LongTensor) -> Tuple[Tensor,Tensor]: sl,bs = input.size() self.reset() raw_outputs, outputs = [],[] for i in range(0, sl, self.bptt): r, o = super().forward(input[i: min(i+self.bptt, sl)]) if i>(sl-self.max_seq): raw_outputs.append(r) outputs.append(o) return self.concat(raw_outputs), self.concat(outputs) class PoolingLinearClassifier(nn.Module): "Create a linear classifier with pooling." def __init__(self, layers:Collection[int], drops:Collection[float]): super().__init__() mod_layers = [] activs = [nn.ReLU(inplace=True)] * (len(layers) - 2) + [None] for n_in,n_out,p,actn in zip(layers[:-1],layers[1:], drops, activs): mod_layers += bn_drop_lin(n_in, n_out, p=p, actn=actn) self.layers = nn.Sequential(*mod_layers) def pool(self, x:Tensor, bs:int, is_max:bool): "Pool the tensor along the seq_len dimension." f = F.adaptive_max_pool1d if is_max else F.adaptive_avg_pool1d return f(x.permute(1,2,0), (1,)).view(bs,-1) def forward(self, input:Tuple[Tensor,Tensor]) -> Tuple[Tensor,Tensor,Tensor]: raw_outputs, outputs = input output = outputs[-1] sl,bs,_ = output.size() avgpool = self.pool(output, bs, False) mxpool = self.pool(output, bs, True) x = torch.cat([output[-1], mxpool, avgpool], 1) x = self.layers(x) return x, raw_outputs, outputs def get_language_model(vocab_sz:int, emb_sz:int, n_hid:int, n_layers:int, pad_token:int, tie_weights:bool=True, qrnn:bool=False, bias:bool=True, bidir:bool=False, output_p:float=0.4, hidden_p:float=0.2, input_p:float=0.6, embed_p:float=0.1, weight_p:float=0.5) -> Model: "Create a full AWD-LSTM." rnn_enc = RNNCore(vocab_sz, emb_sz, n_hid=n_hid, n_layers=n_layers, pad_token=pad_token, qrnn=qrnn, bidir=bidir, hidden_p=hidden_p, input_p=input_p, embed_p=embed_p, weight_p=weight_p) enc = rnn_enc.encoder if tie_weights else None return SequentialRNN(rnn_enc, LinearDecoder(vocab_sz, emb_sz, output_p, tie_encoder=enc, bias=bias)) def get_rnn_classifier(bptt:int, max_seq:int, n_class:int, vocab_sz:int, emb_sz:int, n_hid:int, n_layers:int, pad_token:int, layers:Collection[int], drops:Collection[float], bidir:bool=False, qrnn:bool=False, hidden_p:float=0.2, input_p:float=0.6, embed_p:float=0.1, weight_p:float=0.5, embedding_weight:str=None) -> Model: "Create a RNN classifier model." rnn_enc = MultiBatchRNNCore(bptt, max_seq, vocab_sz, emb_sz, n_hid, n_layers, pad_token=pad_token, bidir=bidir, qrnn=qrnn, hidden_p=hidden_p, input_p=input_p, embed_p=embed_p, weight_p=weight_p) if embedding_weight: print('-------using pre train word embedding', embedding_weight) embedding_weight = np.load(embedding_weight) rnn_enc.encoder.weight.data.copy_(torch.from_numpy(embedding_weight)) rnn_enc.encoder.weight.requires_grad = True return SequentialRNN(rnn_enc, PoolingLinearClassifier(layers, drops)) def classifier(vocab_size, n_class, bptt:int=70, max_len:int=70*20, emb_sz:int=300, nh:int=1200, nl:int=3, lin_ftrs:Collection[int]=None, ps:Collection[float]=None, pad_token:int=0, drop_mult:float=1., qrnn:bool=False, embedding_weight:str=None, **kwargs) -> Model: "Create a RNN classifier." dps = np.array([0.4,0.5,0.05,0.3,0.4]) * drop_mult if lin_ftrs is None: lin_ftrs = [50] if ps is None: ps = [0.1] layers = [emb_sz*3] + lin_ftrs + [n_class] ps = [dps[4]] + ps model = get_rnn_classifier(bptt, max_len, n_class, vocab_size, emb_sz, nh, nl, pad_token, layers, ps, input_p=dps[0], weight_p=dps[1], embed_p=dps[2], hidden_p=dps[3], qrnn=qrnn, embedding_weight=embedding_weight) return model ================================================ FILE: utils/lele/fastai/text/qrnn/__init__.py ================================================ ================================================ FILE: utils/lele/fastai/text/qrnn/forget_mult.py ================================================ import math import torch from torch.autograd import Variable from cupy.cuda import function from cupy.cuda.compiler import _NVRTCProgram from collections import namedtuple ##Adapted from the code here https://github.com/salesforce/pytorch-qrnn, implementation of the QRNN by ##Bradbury, James and Merity, Stephen and Xiong, Caiming and Socher, Richard ##https://arxiv.org/abs/1611.01576 kernel = ''' extern "C" __global__ void recurrent_forget_mult(float *dst, const float *f, const float *x, int SEQ, int BATCH, int HIDDEN) { /* Note: destination is assumed to be one timestep longer than f or x where dst[0] = h_{-1} This means dst array has a separate index than that of f or x */ int hid = blockIdx.x * blockDim.x + threadIdx.x; int bid = blockIdx.y * blockDim.y + threadIdx.y; if(hid >= HIDDEN || bid >= BATCH) return; // for (int ts = 0 + 1; ts < SEQ + 1; ts++) { // Good sanity check for debugging - only perform additions to a zeroed chunk of memory // Addition seems atomic or near atomic - you should get incorrect answers if doubling up via threads // Note: the index i needs to be offset by one as f[0] (f_t) is used for dst[1] (h_t) etc // To move timesteps, we step HIDDEN * BATCH // To move batches, we move HIDDEN // To move neurons, we move +- 1 // Note: dst[dst_i] = ts * 100 + bid * 10 + hid; is useful for debugging int i = (ts - 1) * HIDDEN * BATCH + bid * HIDDEN + hid; int dst_i = (ts - 0) * HIDDEN * BATCH + bid * HIDDEN + hid; int dst_iminus1 = (ts - 1) * HIDDEN * BATCH + bid * HIDDEN + hid; dst[dst_i] = f[i] * x[i]; dst[dst_i] += (1 - f[i]) * dst[dst_iminus1]; } } extern "C" __global__ void bwd_recurrent_forget_mult(const float *h, const float *f, const float *x, const float *gh, float *gf, float *gx, float *ghinit, int SEQ, int BATCH, int HIDDEN) { /* Note: h is assumed to be one timestep longer than f, x, gf, gx, or gh where dst[0] = h_{-1} This means dst array has a separate index than that of f or x */ int hid = blockIdx.x * blockDim.x + threadIdx.x; int bid = blockIdx.y * blockDim.y + threadIdx.y; if(hid >= HIDDEN || bid >= BATCH) return; // double running_f = 0; for (int ts = SEQ - 1 + 1; ts >= 0 + 1; ts--) { int i = (ts - 1) * HIDDEN * BATCH + bid * HIDDEN + hid; int dst_i = (ts - 0) * HIDDEN * BATCH + bid * HIDDEN + hid; int dst_iminus1 = (ts - 1) * HIDDEN * BATCH + bid * HIDDEN + hid; // running_f += gh[dst_iminus1]; // Gradient of X gx[i] = f[i] * running_f; // Gradient of F gf[i] = (x[i] - h[dst_iminus1]) * running_f; // // The line below is likely more numerically stable than (1 - f[i]) * running_f; running_f = running_f - f[i] * running_f; } ghinit[bid * HIDDEN + hid] = running_f; } ''' ### class CPUForgetMult(torch.nn.Module): def __init__(self): super(CPUForgetMult, self).__init__() def forward(self, f, x, hidden_init=None): result = [] ### forgets = f.split(1, dim=0) prev_h = hidden_init for i, h in enumerate((f * x).split(1, dim=0)): if prev_h is not None: h = h + (1 - forgets[i]) * prev_h # h is (1, batch, hidden) when it needs to be (batch_hidden) # Calling squeeze will result in badness if batch size is 1 h = h.view(h.size()[1:]) result.append(h) prev_h = h ### return torch.stack(result) class GPUForgetMult(torch.autograd.Function): configured_gpus = {} ptx = None def __init__(self): super(GPUForgetMult, self).__init__() def compile(self): if self.ptx is None: program = _NVRTCProgram(kernel.encode(), 'recurrent_forget_mult.cu'.encode()) GPUForgetMult.ptx = program.compile() if torch.cuda.current_device() not in GPUForgetMult.configured_gpus: m = function.Module() m.load(bytes(self.ptx.encode())) self.forget_mult = m.get_function('recurrent_forget_mult') self.bwd_forget_mult = m.get_function('bwd_recurrent_forget_mult') Stream = namedtuple('Stream', ['ptr']) self.stream = Stream(ptr=torch.cuda.current_stream().cuda_stream) GPUForgetMult.configured_gpus[torch.cuda.current_device()] = (self.forget_mult, self.bwd_forget_mult, self.stream) self.forget_mult, self.bwd_forget_mult, self.stream = GPUForgetMult.configured_gpus[torch.cuda.current_device()] def forward(self, f, x, hidden_init=None): self.compile() seq_size, batch_size, hidden_size = f.size() result = f.new(seq_size + 1, batch_size, hidden_size) # We only zero the result array (result[0]) if we don't set a hidden initial state # All other values (result[1:]) are overwritten by default if hidden_init is not None: result[0, :, :] = hidden_init else: result = result.zero_() ### grid_hidden_size = min(hidden_size, 512) grid = (math.ceil(hidden_size / grid_hidden_size), batch_size) self.forget_mult(grid=grid, block=(grid_hidden_size, 1), args=[result.data_ptr(), f.data_ptr(), x.data_ptr(), seq_size, batch_size, hidden_size], stream=self.stream) self.save_for_backward(f, x, hidden_init) self.result = result return result[1:, :, :] def backward(self, grad_h): self.compile() f, x, hidden_init = self.saved_tensors h = self.result ### seq_size, batch_size, hidden_size = f.size() # Zeroing is not necessary as these will be overwritten grad_f = f.new(*f.size()) grad_x = f.new(*f.size()) grad_h_init = f.new(batch_size, hidden_size) ### grid_hidden_size = min(hidden_size, 512) grid = (math.ceil(hidden_size / grid_hidden_size), batch_size) self.bwd_forget_mult(grid=grid, block=(grid_hidden_size, 1), args=[h.data_ptr(), f.data_ptr(), x.data_ptr(), grad_h.data_ptr(), grad_f.data_ptr(), grad_x.data_ptr(), grad_h_init.data_ptr(), seq_size, batch_size, hidden_size], stream=self.stream) ### if hidden_init is not None: return grad_f, grad_x, grad_h_init return grad_f, grad_x class ForgetMult(torch.nn.Module): r"""ForgetMult computes a simple recurrent equation: h_t = f_t * x_t + (1 - f_t) * h_{t-1} This equation is equivalent to dynamic weighted averaging. Inputs: X, hidden - X (seq_len, batch, input_size): tensor containing the features of the input sequence. - F (seq_len, batch, input_size): tensor containing the forget gate values, assumed in range [0, 1]. - hidden_init (batch, input_size): tensor containing the initial hidden state for the recurrence (h_{t-1}). - use_cuda: If True, use the fast element-wise CUDA kernel for recurrence. If False, uses naive for loop. Default: True. """ def __init__(self): super(ForgetMult, self).__init__() def forward(self, f, x, hidden_init=None, use_cuda=True): # Use CUDA by default if it's available use_cuda = use_cuda and torch.cuda.is_available() if use_cuda: assert f.is_cuda and x.is_cuda, 'GPU ForgetMult with fast element-wise CUDA kernel requested but tensors not on GPU' # Avoiding 'RuntimeError: expected a Variable argument, but got NoneType' when hidden_init is None if hidden_init is None: return GPUForgetMult()(f, x) if use_cuda else CPUForgetMult()(f, x) return GPUForgetMult()(f, x, hidden_init) if use_cuda else CPUForgetMult()(f, x, hidden_init) ================================================ FILE: utils/lele/fastai/text/qrnn/qrnn.py ================================================ import torch from torch import nn from torch.autograd import Variable from .forget_mult import ForgetMult ##Adapted from the code here https://github.com/salesforce/pytorch-qrnn, implementation of the QRNN by ##Bradbury, James and Merity, Stephen and Xiong, Caiming and Socher, Richard ##https://arxiv.org/abs/1611.01576 class QRNNLayer(nn.Module): r"""Applies a single layer Quasi-Recurrent Neural Network (QRNN) to an input sequence. Args: input_size: The number of expected features in the input x. hidden_size: The number of features in the hidden state h. If not specified, the input size is used. save_prev_x: Whether to store previous inputs for use in future convolutional windows (i.e. for a continuing sequence such as in language modeling). If true, you must call reset to remove cached previous values of x. Default: False. window: Defines the size of the convolutional window (how many previous tokens to look when computing the QRNN values). Supports 1 and 2. Default: 1. zoneout: Whether to apply zoneout (i.e. failing to update elements in the hidden state) to the hidden state updates. Default: 0. output_gate: If True, performs QRNN-fo (applying an output gate to the output). If False, performs QRNN-f. Default: True. use_cuda: If True, uses fast custom CUDA kernel. If False, uses naive for loop. Default: True. Inputs: X, hidden - X (seq_len, batch, input_size): tensor containing the features of the input sequence. - hidden (batch, hidden_size): tensor containing the initial hidden state for the QRNN. Outputs: output, h_n - output (seq_len, batch, hidden_size): tensor containing the output of the QRNN for each timestep. - h_n (batch, hidden_size): tensor containing the hidden state for t=seq_len """ def __init__(self, input_size, hidden_size=None, save_prev_x=False, zoneout=0, window=1, output_gate=True, use_cuda=True): super(QRNNLayer, self).__init__() assert window in [1, 2], "This QRNN implementation currently only handles convolutional window of size 1 or size 2" self.window = window self.input_size = input_size self.hidden_size = hidden_size if hidden_size else input_size self.zoneout = zoneout self.save_prev_x = save_prev_x self.prevX = None self.output_gate = output_gate self.use_cuda = use_cuda # One large matmul with concat is faster than N small matmuls and no concat self.linear = nn.Linear(self.window * self.input_size, 3 * self.hidden_size if self.output_gate else 2 * self.hidden_size) def reset(self): # If you are saving the previous value of x, you should call this when starting with a new state self.prevX = None def forward(self, X, hidden=None): seq_len, batch_size, _ = X.size() source = None if self.window == 1: source = X elif self.window == 2: # Construct the x_{t-1} tensor with optional x_{-1}, otherwise a zeroed out value for x_{-1} Xm1 = [] Xm1.append(self.prevX if self.prevX is not None else X[:1, :, :] * 0) # Note: in case of len(X) == 1, X[:-1, :, :] results in slicing of empty tensor == bad if len(X) > 1: Xm1.append(X[:-1, :, :]) Xm1 = torch.cat(Xm1, 0) # Convert two (seq_len, batch_size, hidden) tensors to (seq_len, batch_size, 2 * hidden) source = torch.cat([X, Xm1], 2) # Matrix multiplication for the three outputs: Z, F, O Y = self.linear(source) # Convert the tensor back to (batch, seq_len, len([Z, F, O]) * hidden_size) if self.output_gate: Y = Y.view(seq_len, batch_size, 3 * self.hidden_size) Z, F, O = Y.chunk(3, dim=2) else: Y = Y.view(seq_len, batch_size, 2 * self.hidden_size) Z, F = Y.chunk(2, dim=2) ### Z.tanh_() F.sigmoid_() # If zoneout is specified, we perform dropout on the forget gates in F # If an element of F is zero, that means the corresponding neuron keeps the old value if self.zoneout: if self.training: mask = Variable(F.data.new(*F.size()).bernoulli_(1 - self.zoneout), requires_grad=False) F = F * mask else: F *= 1 - self.zoneout # Ensure the memory is laid out as expected for the CUDA kernel # This is a null op if the tensor is already contiguous Z = Z.contiguous() F = F.contiguous() # The O gate doesn't need to be contiguous as it isn't used in the CUDA kernel # Forget Mult # For testing QRNN without ForgetMult CUDA kernel, C = Z * F may be useful C = ForgetMult()(F, Z, hidden, use_cuda=self.use_cuda) # Apply (potentially optional) output gate if self.output_gate: H = torch.sigmoid(O) * C else: H = C # In an optimal world we may want to backprop to x_{t-1} but ... if self.window > 1 and self.save_prev_x: self.prevX = X[-1:, :, :].detach() return H, C[-1:, :, :] class QRNN(torch.nn.Module): r"""Applies a multiple layer Quasi-Recurrent Neural Network (QRNN) to an input sequence. Args: input_size: The number of expected features in the input x. hidden_size: The number of features in the hidden state h. If not specified, the input size is used. num_layers: The number of QRNN layers to produce. layers: List of preconstructed QRNN layers to use for the QRNN module (optional). save_prev_x: Whether to store previous inputs for use in future convolutional windows (i.e. for a continuing sequence such as in language modeling). If true, you must call reset to remove cached previous values of x. Default: False. window: Defines the size of the convolutional window (how many previous tokens to look when computing the QRNN values). Supports 1 and 2. Default: 1. zoneout: Whether to apply zoneout (i.e. failing to update elements in the hidden state) to the hidden state updates. Default: 0. output_gate: If True, performs QRNN-fo (applying an output gate to the output). If False, performs QRNN-f. Default: True. use_cuda: If True, uses fast custom CUDA kernel. If False, uses naive for loop. Default: True. Inputs: X, hidden - X (seq_len, batch, input_size): tensor containing the features of the input sequence. - hidden (layers, batch, hidden_size): tensor containing the initial hidden state for the QRNN. Outputs: output, h_n - output (seq_len, batch, hidden_size): tensor containing the output of the QRNN for each timestep. - h_n (layers, batch, hidden_size): tensor containing the hidden state for t=seq_len """ def __init__(self, input_size, hidden_size, num_layers=1, bias=True, batch_first=False, dropout=0, bidirectional=False, layers=None, **kwargs): assert bidirectional == False, 'Bidirectional QRNN is not yet supported' assert batch_first == False, 'Batch first mode is not yet supported' assert bias == True, 'Removing underlying bias is not yet supported' super(QRNN, self).__init__() self.layers = torch.nn.ModuleList(layers if layers else [QRNNLayer(input_size if l == 0 else hidden_size, hidden_size, **kwargs) for l in range(num_layers)]) self.input_size = input_size self.hidden_size = hidden_size self.num_layers = len(layers) if layers else num_layers self.bias = bias self.batch_first = batch_first self.dropout = dropout self.bidirectional = bidirectional def reset(self): r'If your convolutional window is greater than 1, you must reset at the beginning of each new sequence' [layer.reset() for layer in self.layers] def forward(self, input, hidden=None): next_hidden = [] for i, layer in enumerate(self.layers): input, hn = layer(input, None if hidden is None else hidden[i]) next_hidden.append(hn) if self.dropout != 0 and i < len(self.layers) - 1: input = torch.nn.functional.dropout(input, p=self.dropout, training=self.training, inplace=False) next_hidden = torch.cat(next_hidden, 0).view(self.num_layers, *next_hidden[0].size()[-2:]) return input, next_hidden ================================================ FILE: utils/lele/fastai/torch_core.py ================================================ "Utility functions to help deal with tensors" from .imports.torch import * from .core import * AffineMatrix = Tensor BoolOrTensor = Union[bool,Tensor] FloatOrTensor = Union[float,Tensor] FlowField = Tensor IntOrTensor = Union[int,Tensor] ItemsList = Collection[Union[Tensor,ItemBase,'ItemsList',float,int]] LambdaFunc = Callable[[Tensor],Tensor] LayerFunc = Callable[[nn.Module],None] Model = nn.Module ModuleList = Collection[nn.Module] OptOptimizer = Optional[optim.Optimizer] ParamList = Collection[nn.Parameter] Rank0Tensor = NewType('OneEltTensor', Tensor) SplitFunc = Callable[[Model], List[Model]] SplitFuncOrIdxList = Union[Callable, Collection[ModuleList]] TensorOrNumber = Union[Tensor,Number] TensorOrNumList = Collection[TensorOrNumber] TensorImage = Tensor TensorImageSize = Tuple[int,int,int] Tensors = Union[Tensor, Collection['Tensors']] Weights = Dict[str,Tensor] AffineFunc = Callable[[KWArgs], AffineMatrix] HookFunc = Callable[[Model, Tensors, Tensors], Any] LogitTensorImage = TensorImage LossFunction = Callable[[Tensor, Tensor], Rank0Tensor] MetricFunc = Callable[[Tensor,Tensor],TensorOrNumber] MetricFuncList = Collection[MetricFunc] MetricsList = Collection[TensorOrNumber] OptLossFunc = Optional[LossFunction] OptMetrics = Optional[MetricsList] OptSplitFunc = Optional[SplitFunc] PixelFunc = Callable[[TensorImage, ArgStar, KWArgs], TensorImage] CoordFunc = Callable[[FlowField, TensorImageSize, ArgStar, KWArgs], LogitTensorImage] LightingFunc = Callable[[LogitTensorImage, ArgStar, KWArgs], LogitTensorImage] fastai_types = { AnnealFunc:'AnnealFunc', ArgStar:'ArgStar', BatchSamples:'BatchSamples', Classes:'Classes', FilePathList:'FilePathList', Floats:'Floats', ImgLabel:'ImgLabel', ImgLabels:'ImgLabels', KeyFunc:'KeyFunc', KWArgs:'KWArgs', ListOrItem:'ListOrItem', ListRules:'ListRules', ListSizes:'ListSizes', NPArrayableList:'NPArrayableList', NPArrayList:'NPArrayList', NPArrayMask:'NPArrayMask', NPImage:'NPImage', OptDataFrame:'OptDataFrame', OptListOrItem:'OptListOrItem', OptRange:'OptRange', OptStrTuple:'OptStrTuple', OptStats:'OptStats', PathOrStr:'PathOrStr', PBar:'PBar', Point:'Point', Points:'Points', Sizes:'Sizes', SplitArrayList:'SplitArrayList', StartOptEnd:'StartOptEnd', StrList:'StrList', Tokens:'Tokens', OptStrList:'OptStrList', AffineMatrix:'AffineMatrix', BoolOrTensor:'BoolOrTensor', FloatOrTensor:'FloatOrTensor', FlowField:'FlowField', IntOrTensor:'IntOrTensor', ItemsList:'ItemsList', LambdaFunc:'LambdaFunc', LayerFunc:'LayerFunc', Model:'Model', ModuleList:'ModuleList', OptOptimizer:'OptOptimizer', ParamList:'ParamList', Rank0Tensor:'Rank0Tensor', SplitFunc:'SplitFunc', SplitFuncOrIdxList:'SplitFuncOrIdxList', TensorOrNumber:'TensorOrNumber', TensorOrNumList:'TensorOrNumList', TensorImage:'TensorImage', TensorImageSize:'TensorImageSize', Tensors:'Tensors', Weights:'Weights', AffineFunc:'AffineFunc', HookFunc:'HookFunc', LogitTensorImage:'LogitTensorImage', LossFunction:'LossFunction', MetricFunc:'MetricFunc', MetricFuncList:'MetricFuncList', MetricsList:'MetricsList', OptLossFunc:'OptLossFunc', OptMetrics:'OptMetrics', OptSplitFunc:'OptSplitFunc', PixelFunc:'PixelFunc', CoordFunc:'CoordFunc', LightingFunc:'LightingFunc', } bn_types = (nn.BatchNorm1d, nn.BatchNorm2d, nn.BatchNorm3d) default_device = torch.device('cuda') if torch.cuda.is_available() else torch.device('cpu') AdamW = partial(optim.Adam, betas=(0.9,0.99)) def to_data(b:ItemsList): "Recursively map lists of items in `b ` to their wrapped data" if is_listy(b): return [to_data(o) for o in b] return b.data if isinstance(b,ItemBase) else b def to_device(b:Tensors, device:torch.device): "Ensure `b` is on `device`." device = ifnone(device, default_device) if is_listy(b): return [to_device(o, device) for o in b] return b.to(device) def data_collate(batch:ItemsList)->Tensor: "Convert `batch` items to tensor data." return torch.utils.data.dataloader.default_collate(to_data(batch)) def requires_grad(m:nn.Module, b:Optional[bool]=None)->Optional[bool]: "If `b` is not set `requires_grad` on all params in `m`, else return `requires_grad` of first param." ps = list(m.parameters()) if not ps: return None if b is None: return ps[0].requires_grad for p in ps: p.requires_grad=b def trainable_params(m:nn.Module)->ParamList: "Return list of trainable params in `m`." res = filter(lambda p: p.requires_grad, m.parameters()) return res def children(m:nn.Module)->ModuleList: "Get children of module `m`." return list(m.children()) def num_children(m:nn.Module)->int: "Get number of children modules in module `m`." return len(children(m)) def range_children(m:nn.Module)->Iterator[int]: "Return iterator of len of children of `m`." return range(num_children(m)) flatten_model=lambda m: sum(map(flatten_model,m.children()),[]) if num_children(m) else [m] def first_layer(m:nn.Module)->nn.Module: "Retrieve first layer in a module `m`." return flatten_model(m)[0] def split_model_idx(model:nn.Module, idxs:Collection[int])->ModuleList: "Split `model` according to the indices in `idxs`." layers = flatten_model(model) if idxs[0] != 0: idxs = [0] + idxs if idxs[-1] != len(layers): idxs.append(len(layers)) return [nn.Sequential(*layers[i:j]) for i,j in zip(idxs[:-1],idxs[1:])] def split_model(model:nn.Module, splits:Collection[Union[Model,ModuleList]], want_idxs:bool=False): "Split `model` according to the layers in `splits`." layers = flatten_model(model) splits = listify(splits) if isinstance(splits[0], nn.Module): idxs = [layers.index(first_layer(s)) for s in splits] res = split_model_idx(model, idxs) else: res = [nn.Sequential(*s) for s in splits] return (res,idxs) if want_idxs else res #TODO: add the test to put bias with bn layers def split_bn_bias(layer_groups:ModuleList)->ModuleList: "Sort each layer in `layer_groups` into batchnorm (`bn_types`) and non-batchnorm groups." split_groups = [] for l in layer_groups: l1,l2 = [],[] for c in l.children(): if isinstance(c, bn_types): l2.append(c) else: l1.append(c) split_groups += [nn.Sequential(*l1), nn.Sequential(*l2)] return split_groups def set_bn_eval(m:nn.Module)->None: "Set bn layers in eval mode for all recursive children of `m`." for l in m.children(): if isinstance(l, bn_types) and not next(l.parameters()).requires_grad: l.eval() set_bn_eval(l) def to_half(b:Collection[Tensor])->Collection[Tensor]: "`b` = [x,y] -> [x.half(),y] (half precision)" return [b[0].half(), b[1]] def bn2float(module:nn.Module)->nn.Module: "If `module` is batchnorm don't use half precision." if isinstance(module, torch.nn.modules.batchnorm._BatchNorm): module.float() for child in module.children(): bn2float(child) return module def model2half(model:nn.Module)->nn.Module: "Convert `model` to half precision except the batchnorm layers." return bn2float(model.half()) def cond_init(m:nn.Module, init_func:LayerFunc): "Initialize the non-batchnorm layers of `m` with `init_func`" if (not isinstance(m, bn_types)) and requires_grad(m): if hasattr(m, 'weight'): init_func(m.weight) if hasattr(m, 'bias') and hasattr(m.bias, 'data'): m.bias.data.fill_(0.) def apply_leaf(m:nn.Module, f:LayerFunc): "Apply `f` to children of `m`." c = children(m) if isinstance(m, nn.Module): f(m) for l in c: apply_leaf(l,f) def apply_init(m, init_func:LayerFunc): "Initialize all non-batchnorm layers of `m` with `init_func`." apply_leaf(m, partial(cond_init, init_func=init_func)) def in_channels(m:Model) -> List[int]: "Return the shape of the first weight layer in `m`." for l in flatten_model(m): if hasattr(l, 'weight'): return l.weight.shape[1] raise Exception('No weight layer') def calc_loss(y_pred:Tensor, y_true:Tensor, loss_class:type=nn.CrossEntropyLoss, bs=64): "Calculate loss between `y_pred` and `y_true` using `loss_class` and `bs`." loss_dl = DataLoader(TensorDataset(as_tensor(y_pred),as_tensor(y_true)), bs) with torch.no_grad(): return torch.cat([loss_class(reduction='none')(*b) for b in loss_dl]) def to_np(x): return x.cpu().numpy() def model_type(dtype): return (torch.float32 if np.issubdtype(dtype, np.floating) else torch.int64 if np.issubdtype(dtype, np.integer) else None) def np2model_tensor(a): dtype = model_type(a.dtype) res = as_tensor(a) if not dtype: return res return res.type(dtype) def show_install(show_nvidia_smi:bool=False): "Print user's setup information: python -c 'import fastai; fastai.show_install()'" import platform, fastai.version, subprocess print("\n```") print(f"platform info : {platform.platform()}") opt_mods = [] if platform.system() == 'Linux': try: import distro except ImportError: opt_mods.append('distro'); # partial distro info print(f"distro version : {platform.uname().version}") else: # full distro info print(f"distro info : {' '.join(distro.linux_distribution())}") print(f"python version : {platform.python_version()}") print(f"fastai version : {fastai.__version__}") print(f"torch version : {torch.__version__}") # cuda cmd = "nvidia-smi" have_nvidia_smi = False try: result = subprocess.run(cmd.split(), shell=False, check=False, stdout=subprocess.PIPE) except: pass else: if result.returncode == 0 and result.stdout: have_nvidia_smi = True if have_nvidia_smi: smi = result.stdout.decode('utf-8') match = re.findall(r'Driver Version: +(\d+\.\d+)', smi) if match: print(f"nvidia driver : {match[0]}") cuda_is_available = torch.cuda.is_available() if not cuda_is_available: print(f"cuda available : False") print(f"cuda version : {torch.version.cuda}") print(f"cudnn version : {torch.backends.cudnn.version()}") print(f"cudnn available: {torch.backends.cudnn.enabled}") gpu_cnt = torch.cuda.device_count() print(f"torch gpu count: {gpu_cnt}") # it's possible that torch might not see what nvidia-smi sees? gpu_total_mem = [] if have_nvidia_smi: try: cmd = "nvidia-smi --query-gpu=memory.total --format=csv,nounits,noheader" result = subprocess.run(cmd.split(), shell=False, check=False, stdout=subprocess.PIPE) except: print("have nvidia-smi, but failed to query it") else: if result.returncode == 0 and result.stdout: output = result.stdout.decode('utf-8') gpu_total_mem = [int(x) for x in output.strip().split('\n')] # information for each gpu for i in range(gpu_cnt): print(f" [gpu{i}]") print(f" name : {torch.cuda.get_device_name(i)}") if gpu_total_mem: print(f" total memory : {gpu_total_mem[i]}MB") if have_nvidia_smi: if show_nvidia_smi == True: print(f"\n{smi}") else: if gpu_cnt: # have gpu, but no nvidia-smi print(f"no nvidia-smi is found") else: print(f"no supported gpus found on this system") print("```\n") if opt_mods: print("Optional package(s) to enhance the diagnostics can be installed with:") print(f"pip install {' '.join(opt_mods)}") print("Once installed, re-run this utility to get the additional information") def trange_of(x): return torch.arange(len(x)) ================================================ FILE: utils/lele/layers/README.md ================================================ ./layers.py most from https://github.com/HKUST-KnowComp/MnemonicReader with modifications others like ./highway.py ./token_embedder.py from https://github.com/HIT-SCIR/ELMoForManyLangs/tree/master/elmoformanylangs/modules ================================================ FILE: utils/lele/layers/__init__.py ================================================ from lele.layers.layers import * from lele.layers.highway import * from lele.layers.token_embedder import * from lele.layers.elmo import * import lele.layers.transformer ================================================ FILE: utils/lele/layers/classify_layer.py ================================================ import logging import math import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable logging.basicConfig(level=logging.INFO, format='%(asctime)-15s %(levelname)s: %(message)s') class SoftmaxLayer(nn.Module): """ Naive softmax-layer """ def __init__(self, output_dim, n_class): """ :param output_dim: int :param n_class: int """ super(SoftmaxLayer, self).__init__() self.hidden2tag = nn.Linear(output_dim, n_class) self.criterion = nn.CrossEntropyLoss(size_average=False) def forward(self, x, y): """ :param x: torch.Tensor :param y: torch.Tensor :return: """ tag_scores = self.hidden2tag(x) return self.criterion(tag_scores, y) class SampledSoftmaxLayer(nn.Module): """ """ def __init__(self, output_dim, n_class, n_samples, use_cuda): """ :param output_dim: :param n_class: :param n_samples: :param use_cuda: """ super(SampledSoftmaxLayer, self).__init__() self.n_samples = n_samples self.n_class = n_class self.use_cuda = use_cuda self.criterion = nn.CrossEntropyLoss(size_average=False) self.negative_samples = [] self.word_to_column = {0: 0} self.all_word = [] self.all_word_to_column = {0: 0} self.column_emb = nn.Embedding(n_class, output_dim) self.column_emb.weight.data.uniform_(-0.25, 0.25) self.column_bias = nn.Embedding(n_class, 1) self.column_bias.weight.data.uniform_(-0.25, 0.25) self.oov_column = nn.Parameter(torch.Tensor(output_dim, 1)) self.oov_column.data.uniform_(-0.25, 0.25) def forward(self, x, y): if self.training: for i in range(y.size(0)): y[i] = self.word_to_column.get(y[i].tolist()) samples = torch.LongTensor(len(self.word_to_column)).fill_(0) for word in self.negative_samples: samples[self.word_to_column[word]] = word else: for i in range(y.size(0)): y[i] = self.all_word_to_column.get(y[i].tolist(), 0) samples = torch.LongTensor(len(self.all_word_to_column)).fill_(0) for word in self.all_word: samples[self.all_word_to_column[word]] = word if self.use_cuda: samples = samples.cuda() tag_scores = (x.matmul(self.embedding_matrix)).view(y.size(0), -1) + \ (self.column_bias.forward(samples)).view(1, -1) return self.criterion(tag_scores, y) def update_embedding_matrix(self): word_inp, chars_inp = [], [] if self.training: columns = torch.LongTensor(len(self.negative_samples) + 1) samples = self.negative_samples for i, word in enumerate(samples): columns[self.word_to_column[word]] = word columns[0] = 0 else: columns = torch.LongTensor(len(self.all_word) + 1) samples = self.all_word for i, word in enumerate(samples): columns[self.all_word_to_column[word]] = word columns[0] = 0 if self.use_cuda: columns = columns.cuda() self.embedding_matrix = self.column_emb.forward(columns).transpose(0, 1) def update_negative_samples(self, word_inp, chars_inp, mask): batch_size, seq_len = word_inp.size(0), word_inp.size(1) in_batch = set() for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() in_batch.add(word) for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() if word not in self.all_word_to_column: self.all_word.append(word) self.all_word_to_column[word] = len(self.all_word_to_column) if word not in self.word_to_column: if len(self.negative_samples) < self.n_samples: self.negative_samples.append(word) self.word_to_column[word] = len(self.word_to_column) else: while self.negative_samples[0] in in_batch: self.negative_samples = self.negative_samples[1:] + [self.negative_samples[0]] self.word_to_column[word] = self.word_to_column.pop(self.negative_samples[0]) self.negative_samples = self.negative_samples[1:] + [word] class CNNSoftmaxLayer(nn.Module): def __init__(self, token_embedder, output_dim, n_class, n_samples, corr_dim, use_cuda): super(CNNSoftmaxLayer, self).__init__() self.token_embedder = token_embedder self.n_samples = n_samples self.use_cuda = use_cuda self.criterion = nn.CrossEntropyLoss(size_average=False) self.negative_samples = [] self.word_to_column = {0: 0} self.all_word = [] self.all_word_to_column = {0: 0} self.M = nn.Parameter(torch.Tensor(output_dim, corr_dim)) stdv = 1. / math.sqrt(self.M.size(1)) self.M.data.uniform_(-stdv, stdv) self.corr = nn.Embedding(n_class, corr_dim) self.corr.weight.data.uniform_(-0.25, 0.25) self.oov_column = nn.Parameter(torch.Tensor(output_dim, 1)) self.oov_column.data.uniform_(-0.25, 0.25) def forward(self, x, y): if self.training: for i in range(y.size(0)): y[i] = self.word_to_column.get(y[i].tolist()) samples = torch.LongTensor(len(self.word_to_column)).fill_(0) for package in self.negative_samples: samples[self.word_to_column[package[0]]] = package[0] else: for i in range(y.size(0)): y[i] = self.all_word_to_column.get(y[i].tolist(), 0) samples = torch.LongTensor(len(self.all_word_to_column)).fill_(0) for package in self.all_word: samples[self.all_word_to_column[package[0]]] = package[0] if self.use_cuda: samples = samples.cuda() tag_scores = (x.matmul(self.embedding_matrix)).view(y.size(0), -1) + \ (x.matmul(self.M).matmul(self.corr.forward(samples).transpose(0, 1))).view(y.size(0), -1) return self.criterion(tag_scores, y) def update_embedding_matrix(self): batch_size = 2048 word_inp, chars_inp = [], [] if self.training: sub_matrices = [self.oov_column] samples = self.negative_samples id2pack = {} for i, package in enumerate(samples): id2pack[self.word_to_column[package[0]]] = i else: sub_matrices = [self.oov_column] samples = self.all_word id2pack = {} for i, package in enumerate(samples): id2pack[self.all_word_to_column[package[0]]] = i for i in range(len(samples)): # [n_samples, 1], [n_samples, 1, x], [n_samples, 1] word_inp.append(samples[id2pack[i + 1]][0]) chars_inp.append(samples[id2pack[i + 1]][1]) if len(word_inp) == batch_size or i == len(samples) - 1: sub_matrices.append(self.token_embedder.forward(torch.LongTensor(word_inp).view(len(word_inp), 1), None if chars_inp[0] is None else torch.LongTensor(chars_inp).view(len(word_inp), 1, len(package[1])), (len(word_inp), 1)).squeeze(1).transpose(0, 1)) if not self.training: sub_matrices[-1] = sub_matrices[-1].detach() word_inp, chars_inp = [], [] sum = 0 for mat in sub_matrices: sum += mat.size(1) #print(sum, len(self.word_to_column)) self.embedding_matrix = torch.cat(sub_matrices, dim=1) def update_negative_samples(self, word_inp, chars_inp, mask): batch_size, seq_len = word_inp.size(0), word_inp.size(1) in_batch = set() for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() in_batch.add(word) for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue package = (word_inp[i][j].tolist(), None if chars_inp is None else chars_inp[i][j].tolist()) if package[0] not in self.all_word_to_column: self.all_word.append(package) self.all_word_to_column[package[0]] = len(self.all_word_to_column) if package[0] not in self.word_to_column: if len(self.negative_samples) < self.n_samples: self.negative_samples.append(package) self.word_to_column[package[0]] = len(self.word_to_column) else: while self.negative_samples[0][0] in in_batch: self.negative_samples = self.negative_samples[1:] + [self.negative_samples[0]] self.word_to_column[package[0]] = self.word_to_column.pop(self.negative_samples[0][0]) self.negative_samples = self.negative_samples[1:] + [package] ================================================ FILE: utils/lele/layers/elmo/__init__.py ================================================ from lele.layers.elmo.highway import * from lele.layers.elmo.token_embedder import * from lele.layers.elmo.elmo import * ================================================ FILE: utils/lele/layers/elmo/classify_layer.py ================================================ import logging import math import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable logging.basicConfig(level=logging.INFO, format='%(asctime)-15s %(levelname)s: %(message)s') class SoftmaxLayer(nn.Module): """ Naive softmax-layer """ def __init__(self, output_dim, n_class): """ :param output_dim: int :param n_class: int """ super(SoftmaxLayer, self).__init__() self.hidden2tag = nn.Linear(output_dim, n_class) self.criterion = nn.CrossEntropyLoss(size_average=False) def forward(self, x, y): """ :param x: torch.Tensor :param y: torch.Tensor :return: """ tag_scores = self.hidden2tag(x) return self.criterion(tag_scores, y) class SampledSoftmaxLayer(nn.Module): """ """ def __init__(self, output_dim, n_class, n_samples, use_cuda): """ :param output_dim: :param n_class: :param n_samples: :param use_cuda: """ super(SampledSoftmaxLayer, self).__init__() self.n_samples = n_samples self.n_class = n_class self.use_cuda = use_cuda self.criterion = nn.CrossEntropyLoss(size_average=False) self.negative_samples = [] self.word_to_column = {0: 0} self.all_word = [] self.all_word_to_column = {0: 0} self.column_emb = nn.Embedding(n_class, output_dim) self.column_emb.weight.data.uniform_(-0.25, 0.25) self.column_bias = nn.Embedding(n_class, 1) self.column_bias.weight.data.uniform_(-0.25, 0.25) self.oov_column = nn.Parameter(torch.Tensor(output_dim, 1)) self.oov_column.data.uniform_(-0.25, 0.25) def forward(self, x, y): if self.training: for i in range(y.size(0)): y[i] = self.word_to_column.get(y[i].tolist()) samples = torch.LongTensor(len(self.word_to_column)).fill_(0) for word in self.negative_samples: samples[self.word_to_column[word]] = word else: for i in range(y.size(0)): y[i] = self.all_word_to_column.get(y[i].tolist(), 0) samples = torch.LongTensor(len(self.all_word_to_column)).fill_(0) for word in self.all_word: samples[self.all_word_to_column[word]] = word if self.use_cuda: samples = samples.cuda() tag_scores = (x.matmul(self.embedding_matrix)).view(y.size(0), -1) + \ (self.column_bias.forward(samples)).view(1, -1) return self.criterion(tag_scores, y) def update_embedding_matrix(self): word_inp, chars_inp = [], [] if self.training: columns = torch.LongTensor(len(self.negative_samples) + 1) samples = self.negative_samples for i, word in enumerate(samples): columns[self.word_to_column[word]] = word columns[0] = 0 else: columns = torch.LongTensor(len(self.all_word) + 1) samples = self.all_word for i, word in enumerate(samples): columns[self.all_word_to_column[word]] = word columns[0] = 0 if self.use_cuda: columns = columns.cuda() self.embedding_matrix = self.column_emb.forward(columns).transpose(0, 1) def update_negative_samples(self, word_inp, chars_inp, mask): batch_size, seq_len = word_inp.size(0), word_inp.size(1) in_batch = set() for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() in_batch.add(word) for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() if word not in self.all_word_to_column: self.all_word.append(word) self.all_word_to_column[word] = len(self.all_word_to_column) if word not in self.word_to_column: if len(self.negative_samples) < self.n_samples: self.negative_samples.append(word) self.word_to_column[word] = len(self.word_to_column) else: while self.negative_samples[0] in in_batch: self.negative_samples = self.negative_samples[1:] + [self.negative_samples[0]] self.word_to_column[word] = self.word_to_column.pop(self.negative_samples[0]) self.negative_samples = self.negative_samples[1:] + [word] class CNNSoftmaxLayer(nn.Module): def __init__(self, token_embedder, output_dim, n_class, n_samples, corr_dim, use_cuda): super(CNNSoftmaxLayer, self).__init__() self.token_embedder = token_embedder self.n_samples = n_samples self.use_cuda = use_cuda self.criterion = nn.CrossEntropyLoss(size_average=False) self.negative_samples = [] self.word_to_column = {0: 0} self.all_word = [] self.all_word_to_column = {0: 0} self.M = nn.Parameter(torch.Tensor(output_dim, corr_dim)) stdv = 1. / math.sqrt(self.M.size(1)) self.M.data.uniform_(-stdv, stdv) self.corr = nn.Embedding(n_class, corr_dim) self.corr.weight.data.uniform_(-0.25, 0.25) self.oov_column = nn.Parameter(torch.Tensor(output_dim, 1)) self.oov_column.data.uniform_(-0.25, 0.25) def forward(self, x, y): if self.training: for i in range(y.size(0)): y[i] = self.word_to_column.get(y[i].tolist()) samples = torch.LongTensor(len(self.word_to_column)).fill_(0) for package in self.negative_samples: samples[self.word_to_column[package[0]]] = package[0] else: for i in range(y.size(0)): y[i] = self.all_word_to_column.get(y[i].tolist(), 0) samples = torch.LongTensor(len(self.all_word_to_column)).fill_(0) for package in self.all_word: samples[self.all_word_to_column[package[0]]] = package[0] if self.use_cuda: samples = samples.cuda() tag_scores = (x.matmul(self.embedding_matrix)).view(y.size(0), -1) + \ (x.matmul(self.M).matmul(self.corr.forward(samples).transpose(0, 1))).view(y.size(0), -1) return self.criterion(tag_scores, y) def update_embedding_matrix(self): batch_size = 2048 word_inp, chars_inp = [], [] if self.training: sub_matrices = [self.oov_column] samples = self.negative_samples id2pack = {} for i, package in enumerate(samples): id2pack[self.word_to_column[package[0]]] = i else: sub_matrices = [self.oov_column] samples = self.all_word id2pack = {} for i, package in enumerate(samples): id2pack[self.all_word_to_column[package[0]]] = i for i in range(len(samples)): # [n_samples, 1], [n_samples, 1, x], [n_samples, 1] word_inp.append(samples[id2pack[i + 1]][0]) chars_inp.append(samples[id2pack[i + 1]][1]) if len(word_inp) == batch_size or i == len(samples) - 1: sub_matrices.append(self.token_embedder.forward(torch.LongTensor(word_inp).view(len(word_inp), 1), None if chars_inp[0] is None else torch.LongTensor(chars_inp).view(len(word_inp), 1, len(package[1])), (len(word_inp), 1)).squeeze(1).transpose(0, 1)) if not self.training: sub_matrices[-1] = sub_matrices[-1].detach() word_inp, chars_inp = [], [] sum = 0 for mat in sub_matrices: sum += mat.size(1) #print(sum, len(self.word_to_column)) self.embedding_matrix = torch.cat(sub_matrices, dim=1) def update_negative_samples(self, word_inp, chars_inp, mask): batch_size, seq_len = word_inp.size(0), word_inp.size(1) in_batch = set() for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue word = word_inp[i][j].tolist() in_batch.add(word) for i in range(batch_size): for j in range(seq_len): if mask[i][j] == 0: continue package = (word_inp[i][j].tolist(), None if chars_inp is None else chars_inp[i][j].tolist()) if package[0] not in self.all_word_to_column: self.all_word.append(package) self.all_word_to_column[package[0]] = len(self.all_word_to_column) if package[0] not in self.word_to_column: if len(self.negative_samples) < self.n_samples: self.negative_samples.append(package) self.word_to_column[package[0]] = len(self.word_to_column) else: while self.negative_samples[0][0] in in_batch: self.negative_samples = self.negative_samples[1:] + [self.negative_samples[0]] self.word_to_column[package[0]] = self.word_to_column.pop(self.negative_samples[0][0]) self.negative_samples = self.negative_samples[1:] + [package] ================================================ FILE: utils/lele/layers/elmo/elmo.py ================================================ from typing import Optional, Tuple, List, Callable, Union import h5py import numpy import torch import torch.nn as nn import torch.nn.functional as F from torch.nn.utils.rnn import PackedSequence, pad_packed_sequence, pack_padded_sequence from torch.autograd import Variable from .encoder_base import _EncoderBase from .lstm_cell_with_projection import LstmCellWithProjection RnnState = Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]] # pylint: disable=invalid-name RnnStateStorage = Tuple[torch.Tensor, ...] # pylint: disable=invalid-name class ElmobiLm(_EncoderBase): def __init__(self, config, use_cuda=False): super(ElmobiLm, self).__init__(stateful=True) self.config = config self.use_cuda = use_cuda input_size = config['encoder']['projection_dim'] hidden_size = config['encoder']['projection_dim'] cell_size = config['encoder']['dim'] num_layers = config['encoder']['n_layers'] memory_cell_clip_value = config['encoder']['cell_clip'] state_projection_clip_value = config['encoder']['proj_clip'] recurrent_dropout_probability = config['dropout'] self.input_size = input_size self.hidden_size = hidden_size self.num_layers = num_layers self.cell_size = cell_size forward_layers = [] backward_layers = [] lstm_input_size = input_size go_forward = True for layer_index in range(num_layers): forward_layer = LstmCellWithProjection(lstm_input_size, hidden_size, cell_size, go_forward, recurrent_dropout_probability, memory_cell_clip_value, state_projection_clip_value) backward_layer = LstmCellWithProjection(lstm_input_size, hidden_size, cell_size, not go_forward, recurrent_dropout_probability, memory_cell_clip_value, state_projection_clip_value) lstm_input_size = hidden_size self.add_module('forward_layer_{}'.format(layer_index), forward_layer) self.add_module('backward_layer_{}'.format(layer_index), backward_layer) forward_layers.append(forward_layer) backward_layers.append(backward_layer) self.forward_layers = forward_layers self.backward_layers = backward_layers def forward(self, inputs, mask): batch_size, total_sequence_length = mask.size() stacked_sequence_output, final_states, restoration_indices = \ self.sort_and_run_forward(self._lstm_forward, inputs, mask) num_layers, num_valid, returned_timesteps, encoder_dim = stacked_sequence_output.size() # Add back invalid rows which were removed in the call to sort_and_run_forward. if num_valid < batch_size: zeros = stacked_sequence_output.data.new(num_layers, batch_size - num_valid, returned_timesteps, encoder_dim).fill_(0) zeros = Variable(zeros) stacked_sequence_output = torch.cat([stacked_sequence_output, zeros], 1) # The states also need to have invalid rows added back. new_states = [] for state in final_states: state_dim = state.size(-1) zeros = state.data.new(num_layers, batch_size - num_valid, state_dim).fill_(0) zeros = Variable(zeros) new_states.append(torch.cat([state, zeros], 1)) final_states = new_states # It's possible to need to pass sequences which are padded to longer than the # max length of the sequence to a Seq2StackEncoder. However, packing and unpacking # the sequences mean that the returned tensor won't include these dimensions, because # the RNN did not need to process them. We add them back on in the form of zeros here. sequence_length_difference = total_sequence_length - returned_timesteps if sequence_length_difference > 0: zeros = stacked_sequence_output.data.new(num_layers, batch_size, sequence_length_difference, stacked_sequence_output[0].size(-1)).fill_(0) zeros = Variable(zeros) stacked_sequence_output = torch.cat([stacked_sequence_output, zeros], 2) self._update_states(final_states, restoration_indices) # Restore the original indices and return the sequence. # Has shape (num_layers, batch_size, sequence_length, hidden_size) return stacked_sequence_output.index_select(1, restoration_indices) def _lstm_forward(self, inputs: PackedSequence, initial_state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None) -> \ Tuple[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: """ Parameters ---------- inputs : ``PackedSequence``, required. A batch first ``PackedSequence`` to run the stacked LSTM over. initial_state : ``Tuple[torch.Tensor, torch.Tensor]``, optional, (default = None) A tuple (state, memory) representing the initial hidden state and memory of the LSTM, with shape (num_layers, batch_size, 2 * hidden_size) and (num_layers, batch_size, 2 * cell_size) respectively. Returns ------- output_sequence : ``torch.FloatTensor`` The encoded sequence of shape (num_layers, batch_size, sequence_length, hidden_size) final_states: ``Tuple[torch.FloatTensor, torch.FloatTensor]`` The per-layer final (state, memory) states of the LSTM, with shape (num_layers, batch_size, 2 * hidden_size) and (num_layers, batch_size, 2 * cell_size) respectively. The last dimension is duplicated because it contains the state/memory for both the forward and backward layers. """ if initial_state is None: hidden_states: List[Optional[Tuple[torch.Tensor, torch.Tensor]]] = [None] * len(self.forward_layers) elif initial_state[0].size()[0] != len(self.forward_layers): raise Exception("Initial states were passed to forward() but the number of " "initial states does not match the number of layers.") else: hidden_states = list(zip(initial_state[0].split(1, 0), initial_state[1].split(1, 0))) inputs, batch_lengths = pad_packed_sequence(inputs, batch_first=True) forward_output_sequence = inputs backward_output_sequence = inputs final_states = [] sequence_outputs = [] for layer_index, state in enumerate(hidden_states): forward_layer = getattr(self, 'forward_layer_{}'.format(layer_index)) backward_layer = getattr(self, 'backward_layer_{}'.format(layer_index)) forward_cache = forward_output_sequence backward_cache = backward_output_sequence if state is not None: forward_hidden_state, backward_hidden_state = state[0].split(self.hidden_size, 2) forward_memory_state, backward_memory_state = state[1].split(self.cell_size, 2) forward_state = (forward_hidden_state, forward_memory_state) backward_state = (backward_hidden_state, backward_memory_state) else: forward_state = None backward_state = None forward_output_sequence, forward_state = forward_layer(forward_output_sequence, batch_lengths, forward_state) backward_output_sequence, backward_state = backward_layer(backward_output_sequence, batch_lengths, backward_state) # Skip connections, just adding the input to the output. if layer_index != 0: forward_output_sequence += forward_cache backward_output_sequence += backward_cache sequence_outputs.append(torch.cat([forward_output_sequence, backward_output_sequence], -1)) # Append the state tuples in a list, so that we can return # the final states for all the layers. final_states.append((torch.cat([forward_state[0], backward_state[0]], -1), torch.cat([forward_state[1], backward_state[1]], -1))) stacked_sequence_outputs: torch.FloatTensor = torch.stack(sequence_outputs) # Stack the hidden state and memory for each layer into 2 tensors of shape # (num_layers, batch_size, hidden_size) and (num_layers, batch_size, cell_size) # respectively. final_hidden_states, final_memory_states = zip(*final_states) final_state_tuple: Tuple[torch.FloatTensor, torch.FloatTensor] = (torch.cat(final_hidden_states, 0), torch.cat(final_memory_states, 0)) return stacked_sequence_outputs, final_state_tuple ================================================ FILE: utils/lele/layers/elmo/embedding_layer.py ================================================ import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import logging logging.basicConfig(level=logging.INFO, format='%(asctime)-15s %(levelname)s: %(message)s') class EmbeddingLayer(nn.Module): def __init__(self, n_d, word2id, embs=None, fix_emb=True, oov='', pad='', normalize=True): super(EmbeddingLayer, self).__init__() if embs is not None: embwords, embvecs = embs # for word in embwords: # assert word not in word2id, "Duplicate words in pre-trained embeddings" # word2id[word] = len(word2id) logging.info("{} pre-trained word embeddings loaded.".format(len(word2id))) if n_d != len(embvecs[0]): logging.warning("[WARNING] n_d ({}) != word vector size ({}). Use {} for embeddings.".format( n_d, len(embvecs[0]), len(embvecs[0]))) n_d = len(embvecs[0]) self.word2id = word2id self.id2word = {i: word for word, i in word2id.items()} self.n_V, self.n_d = len(word2id), n_d self.oovid = word2id[oov] self.padid = word2id[pad] self.embedding = nn.Embedding(self.n_V, n_d, padding_idx=self.padid) self.embedding.weight.data.uniform_(-0.25, 0.25) if embs is not None: weight = self.embedding.weight weight.data[:len(embwords)].copy_(torch.from_numpy(embvecs)) logging.info("embedding shape: {}".format(weight.size())) if normalize: weight = self.embedding.weight norms = weight.data.norm(2, 1) if norms.dim() == 1: norms = norms.unsqueeze(1) weight.data.div_(norms.expand_as(weight.data)) if fix_emb: self.embedding.weight.requires_grad = False def forward(self, input_): return self.embedding(input_) ================================================ FILE: utils/lele/layers/elmo/encoder_base.py ================================================ from typing import Tuple, Union, Optional, Callable import torch from torch.autograd import Variable from torch.nn.utils.rnn import pack_padded_sequence, PackedSequence from .util import get_lengths_from_binary_sequence_mask, sort_batch_by_length # We have two types here for the state, because storing the state in something # which is Iterable (like a tuple, below), is helpful for internal manipulation # - however, the states are consumed as either Tensors or a Tuple of Tensors, so # returning them in this format is unhelpful. RnnState = Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]] # pylint: disable=invalid-name RnnStateStorage = Tuple[torch.Tensor, ...] # pylint: disable=invalid-name class _EncoderBase(torch.nn.Module): # pylint: disable=abstract-method """ This abstract class serves as a base for the 3 ``Encoder`` abstractions in AllenNLP. - :class:`~allennlp.modules.seq2seq_encoders.Seq2SeqEncoders` - :class:`~allennlp.modules.seq2vec_encoders.Seq2VecEncoders` Additionally, this class provides functionality for sorting sequences by length so they can be consumed by Pytorch RNN classes, which require their inputs to be sorted by length. Finally, it also provides optional statefulness to all of it's subclasses by allowing the caching and retrieving of the hidden states of RNNs. """ def __init__(self, stateful: bool = False) -> None: super(_EncoderBase, self).__init__() self.stateful = stateful self._states: Optional[RnnStateStorage] = None def sort_and_run_forward(self, module: Callable[[PackedSequence, Optional[RnnState]], Tuple[Union[PackedSequence, torch.Tensor], RnnState]], inputs: torch.Tensor, mask: torch.Tensor, hidden_state: Optional[RnnState] = None): """ This function exists because Pytorch RNNs require that their inputs be sorted before being passed as input. As all of our Seq2xxxEncoders use this functionality, it is provided in a base class. This method can be called on any module which takes as input a ``PackedSequence`` and some ``hidden_state``, which can either be a tuple of tensors or a tensor. As all of our Seq2xxxEncoders have different return types, we return `sorted` outputs from the module, which is called directly. Additionally, we return the indices into the batch dimension required to restore the tensor to it's correct, unsorted order and the number of valid batch elements (i.e the number of elements in the batch which are not completely masked). This un-sorting and re-padding of the module outputs is left to the subclasses because their outputs have different types and handling them smoothly here is difficult. Parameters ---------- module : ``Callable[[PackedSequence, Optional[RnnState]], Tuple[Union[PackedSequence, torch.Tensor], RnnState]]``, required. A function to run on the inputs. In most cases, this is a ``torch.nn.Module``. inputs : ``torch.Tensor``, required. A tensor of shape ``(batch_size, sequence_length, embedding_size)`` representing the inputs to the Encoder. mask : ``torch.Tensor``, required. A tensor of shape ``(batch_size, sequence_length)``, representing masked and non-masked elements of the sequence for each element in the batch. hidden_state : ``Optional[RnnState]``, (default = None). A single tensor of shape (num_layers, batch_size, hidden_size) representing the state of an RNN with or a tuple of tensors of shapes (num_layers, batch_size, hidden_size) and (num_layers, batch_size, memory_size), representing the hidden state and memory state of an LSTM-like RNN. Returns ------- module_output : ``Union[torch.Tensor, PackedSequence]``. A Tensor or PackedSequence representing the output of the Pytorch Module. The batch size dimension will be equal to ``num_valid``, as sequences of zero length are clipped off before the module is called, as Pytorch cannot handle zero length sequences. final_states : ``Optional[RnnState]`` A Tensor representing the hidden state of the Pytorch Module. This can either be a single tensor of shape (num_layers, num_valid, hidden_size), for instance in the case of a GRU, or a tuple of tensors, such as those required for an LSTM. restoration_indices : ``torch.LongTensor`` A tensor of shape ``(batch_size,)``, describing the re-indexing required to transform the outputs back to their original batch order. """ # In some circumstances you may have sequences of zero length. ``pack_padded_sequence`` # requires all sequence lengths to be > 0, so remove sequences of zero length before # calling self._module, then fill with zeros. # First count how many sequences are empty. batch_size = mask.size(0) num_valid = torch.sum(mask[:, 0]).int().item() sequence_lengths = get_lengths_from_binary_sequence_mask(mask) sorted_inputs, sorted_sequence_lengths, restoration_indices, sorting_indices =\ sort_batch_by_length(inputs, sequence_lengths) # Now create a PackedSequence with only the non-empty, sorted sequences. packed_sequence_input = pack_padded_sequence(sorted_inputs[:num_valid, :, :], sorted_sequence_lengths[:num_valid].data.tolist(), batch_first=True) # Prepare the initial states. if not self.stateful: if hidden_state is None: initial_states = hidden_state elif isinstance(hidden_state, tuple): initial_states = [state.index_select(1, sorting_indices)[:, :num_valid, :] for state in hidden_state] else: initial_states = hidden_state.index_select(1, sorting_indices)[:, :num_valid, :] else: initial_states = self._get_initial_states(batch_size, num_valid, sorting_indices) # Actually call the module on the sorted PackedSequence. module_output, final_states = module(packed_sequence_input, initial_states) return module_output, final_states, restoration_indices def _get_initial_states(self, batch_size: int, num_valid: int, sorting_indices: torch.LongTensor) -> Optional[RnnState]: """ Returns an initial state for use in an RNN. Additionally, this method handles the batch size changing across calls by mutating the state to append initial states for new elements in the batch. Finally, it also handles sorting the states with respect to the sequence lengths of elements in the batch and removing rows which are completely padded. Importantly, this `mutates` the state if the current batch size is larger than when it was previously called. Parameters ---------- batch_size : ``int``, required. The batch size can change size across calls to stateful RNNs, so we need to know if we need to expand or shrink the states before returning them. Expanded states will be set to zero. num_valid : ``int``, required. The batch may contain completely padded sequences which get removed before the sequence is passed through the encoder. We also need to clip these off of the state too. sorting_indices ``torch.LongTensor``, required. Pytorch RNNs take sequences sorted by length. When we return the states to be used for a given call to ``module.forward``, we need the states to match up to the sorted sequences, so before returning them, we sort the states using the same indices used to sort the sequences. Returns ------- This method has a complex return type because it has to deal with the first time it is called, when it has no state, and the fact that types of RNN have heterogeneous states. If it is the first time the module has been called, it returns ``None``, regardless of the type of the ``Module``. Otherwise, for LSTMs, it returns a tuple of ``torch.Tensors`` with shape ``(num_layers, num_valid, state_size)`` and ``(num_layers, num_valid, memory_size)`` respectively, or for GRUs, it returns a single ``torch.Tensor`` of shape ``(num_layers, num_valid, state_size)``. """ # We don't know the state sizes the first time calling forward, # so we let the module define what it's initial hidden state looks like. if self._states is None: return None # Otherwise, we have some previous states. if batch_size > self._states[0].size(1): # This batch is larger than the all previous states. # If so, resize the states. num_states_to_concat = batch_size - self._states[0].size(1) resized_states = [] # state has shape (num_layers, batch_size, hidden_size) for state in self._states: # This _must_ be inside the loop because some # RNNs have states with different last dimension sizes. zeros = state.data.new(state.size(0), num_states_to_concat, state.size(2)).fill_(0) zeros = Variable(zeros) resized_states.append(torch.cat([state, zeros], 1)) self._states = tuple(resized_states) correctly_shaped_states = self._states elif batch_size < self._states[0].size(1): # This batch is smaller than the previous one. correctly_shaped_states = tuple(state[:, :batch_size, :] for state in self._states) else: correctly_shaped_states = self._states # At this point, our states are of shape (num_layers, batch_size, hidden_size). # However, the encoder uses sorted sequences and additionally removes elements # of the batch which are fully padded. We need the states to match up to these # sorted and filtered sequences, so we do that in the next two blocks before # returning the state/s. if len(self._states) == 1: # GRUs only have a single state. This `unpacks` it from the # tuple and returns the tensor directly. correctly_shaped_state = correctly_shaped_states[0] sorted_state = correctly_shaped_state.index_select(1, sorting_indices) return sorted_state[:, :num_valid, :] else: # LSTMs have a state tuple of (state, memory). sorted_states = [state.index_select(1, sorting_indices) for state in correctly_shaped_states] return tuple(state[:, :num_valid, :] for state in sorted_states) def _update_states(self, final_states: RnnStateStorage, restoration_indices: torch.LongTensor) -> None: """ After the RNN has run forward, the states need to be updated. This method just sets the state to the updated new state, performing several pieces of book-keeping along the way - namely, unsorting the states and ensuring that the states of completely padded sequences are not updated. Finally, it also detatches the state variable from the computational graph, such that the graph can be garbage collected after each batch iteration. Parameters ---------- final_states : ``RnnStateStorage``, required. The hidden states returned as output from the RNN. restoration_indices : ``torch.LongTensor``, required. The indices that invert the sorting used in ``sort_and_run_forward`` to order the states with respect to the lengths of the sequences in the batch. """ # TODO(Mark): seems weird to sort here, but append zeros in the subclasses. # which way around is best? new_unsorted_states = [state.index_select(1, restoration_indices) for state in final_states] if self._states is None: # We don't already have states, so just set the # ones we receive to be the current state. self._states = tuple([torch.autograd.Variable(state.data) for state in new_unsorted_states]) else: # Now we've sorted the states back so that they correspond to the original # indices, we need to figure out what states we need to update, because if we # didn't use a state for a particular row, we want to preserve its state. # Thankfully, the rows which are all zero in the state correspond exactly # to those which aren't used, so we create masks of shape (new_batch_size,), # denoting which states were used in the RNN computation. current_state_batch_size = self._states[0].size(1) new_state_batch_size = final_states[0].size(1) # Masks for the unused states of shape (1, new_batch_size, 1) used_new_rows_mask = [(state[0, :, :].sum(-1) != 0.0).float().view(1, new_state_batch_size, 1) for state in new_unsorted_states] new_states = [] if current_state_batch_size > new_state_batch_size: # The new state is smaller than the old one, # so just update the indices which we used. for old_state, new_state, used_mask in zip(self._states, new_unsorted_states, used_new_rows_mask): # zero out all rows in the previous state # which _were_ used in the current state. masked_old_state = old_state[:, :new_state_batch_size, :] * (1 - used_mask) # The old state is larger, so update the relevant parts of it. old_state[:, :new_state_batch_size, :] = new_state + masked_old_state # Detatch the Variable. new_states.append(torch.autograd.Variable(old_state.data)) else: # The states are the same size, so we just have to # deal with the possibility that some rows weren't used. new_states = [] for old_state, new_state, used_mask in zip(self._states, new_unsorted_states, used_new_rows_mask): # zero out all rows which _were_ used in the current state. masked_old_state = old_state * (1 - used_mask) # The old state is larger, so update the relevant parts of it. new_state += masked_old_state # Detatch the Variable. new_states.append(torch.autograd.Variable(new_state.data)) # It looks like there should be another case handled here - when # the current_state_batch_size < new_state_batch_size. However, # this never happens, because the states themeselves are mutated # by appending zeros when calling _get_inital_states, meaning that # the new states are either of equal size, or smaller, in the case # that there are some unused elements (zero-length) for the RNN computation. self._states = tuple(new_states) def reset_states(self): self._states = None ================================================ FILE: utils/lele/layers/elmo/highway.py ================================================ """ A `Highway layer `_ that does a gated combination of a linear transformation and a non-linear transformation of its input. """ from typing import Callable import torch from overrides import overrides class Highway(torch.nn.Module): """ A `Highway layer `_ does a gated combination of a linear transformation and a non-linear transformation of its input. :math:`y = g * x + (1 - g) * f(A(x))`, where :math:`A` is a linear transformation, :math:`f` is an element-wise non-linearity, and :math:`g` is an element-wise gate, computed as :math:`sigmoid(B(x))`. This module will apply a fixed number of highway layers to its input, returning the final result. Parameters ---------- input_dim : ``int`` The dimensionality of :math:`x`. We assume the input has shape ``(batch_size, input_dim)``. num_layers : ``int``, optional (default=``1``) The number of highway layers to apply to the input. activation : ``Callable[[torch.Tensor], torch.Tensor]``, optional (default=``torch.nn.functional.relu``) The non-linearity to use in the highway layers. """ def __init__(self, input_dim: int, num_layers: int = 1, activation: Callable[[torch.Tensor], torch.Tensor] = torch.nn.functional.relu) -> None: super(Highway, self).__init__() self._input_dim = input_dim self._layers = torch.nn.ModuleList([torch.nn.Linear(input_dim, input_dim * 2) for _ in range(num_layers)]) self._activation = activation for layer in self._layers: # We should bias the highway layer to just carry its input forward. We do that by # setting the bias on `B(x)` to be positive, because that means `g` will be biased to # be high, to we will carry the input forward. The bias on `B(x)` is the second half # of the bias vector in each Linear layer. layer.bias[input_dim:].data.fill_(1) @overrides def forward(self, inputs: torch.Tensor) -> torch.Tensor: # pylint: disable=arguments-differ current_input = inputs for layer in self._layers: projected_input = layer(current_input) linear_part = current_input # NOTE: if you modify this, think about whether you should modify the initialization # above, too. nonlinear_part = projected_input[:, (0 * self._input_dim):(1 * self._input_dim)] gate = projected_input[:, (1 * self._input_dim):(2 * self._input_dim)] nonlinear_part = self._activation(nonlinear_part) gate = torch.sigmoid(gate) current_input = gate * linear_part + (1 - gate) * nonlinear_part return current_input ================================================ FILE: utils/lele/layers/elmo/lstm.py ================================================ from __future__ import absolute_import from __future__ import unicode_literals import logging import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import copy class LstmbiLm(nn.Module): def __init__(self, config, use_cuda=False): super(LstmbiLm, self).__init__() self.config = config self.use_cuda = use_cuda self.encoder = nn.LSTM(self.config['encoder']['projection_dim'], self.config['encoder']['dim'], num_layers=self.config['encoder']['n_layers'], bidirectional=True, batch_first=True, dropout=self.config['dropout']) self.projection = nn.Linear(self.config['encoder']['dim'], self.config['encoder']['projection_dim'], bias=True) def forward(self, inputs): forward, backward = self.encoder(inputs)[0].split(self.config['encoder']['dim'], 2) return torch.cat([self.projection(forward), self.projection(backward)], dim=2) ================================================ FILE: utils/lele/layers/elmo/lstm_cell_with_projection.py ================================================ """ An LSTM with Recurrent Dropout, a hidden_state which is projected and clipping on both the hidden state and the memory state of the LSTM. """ from typing import Optional, Tuple, List import torch from torch.autograd import Variable from .util import block_orthogonal, get_dropout_mask class LstmCellWithProjection(torch.nn.Module): """ An LSTM with Recurrent Dropout and a projected and clipped hidden state and memory. Note: this implementation is slower than the native Pytorch LSTM because it cannot make use of CUDNN optimizations for stacked RNNs due to and variational dropout and the custom nature of the cell state. Parameters ---------- input_size : ``int``, required. The dimension of the inputs to the LSTM. hidden_size : ``int``, required. The dimension of the outputs of the LSTM. cell_size : ``int``, required. The dimension of the memory cell used for the LSTM. go_forward: ``bool``, optional (default = True) The direction in which the LSTM is applied to the sequence. Forwards by default, or backwards if False. recurrent_dropout_probability: ``float``, optional (default = 0.0) The dropout probability to be used in a dropout scheme as stated in `A Theoretically Grounded Application of Dropout in Recurrent Neural Networks `_ . Implementation wise, this simply applies a fixed dropout mask per sequence to the recurrent connection of the LSTM. state_projection_clip_value: ``float``, optional, (default = None) The magnitude with which to clip the hidden_state after projecting it. memory_cell_clip_value: ``float``, optional, (default = None) The magnitude with which to clip the memory cell. Returns ------- output_accumulator : ``torch.FloatTensor`` The outputs of the LSTM for each timestep. A tensor of shape (batch_size, max_timesteps, hidden_size) where for a given batch element, all outputs past the sequence length for that batch are zero tensors. final_state: ``Tuple[torch.FloatTensor, torch.FloatTensor]`` The final (state, memory) states of the LSTM, with shape (1, batch_size, hidden_size) and (1, batch_size, cell_size) respectively. The first dimension is 1 in order to match the Pytorch API for returning stacked LSTM states. """ def __init__(self, input_size: int, hidden_size: int, cell_size: int, go_forward: bool = True, recurrent_dropout_probability: float = 0.0, memory_cell_clip_value: Optional[float] = None, state_projection_clip_value: Optional[float] = None) -> None: super(LstmCellWithProjection, self).__init__() # Required to be wrapped with a :class:`PytorchSeq2SeqWrapper`. self.input_size = input_size self.hidden_size = hidden_size self.cell_size = cell_size self.go_forward = go_forward self.state_projection_clip_value = state_projection_clip_value self.memory_cell_clip_value = memory_cell_clip_value self.recurrent_dropout_probability = recurrent_dropout_probability # We do the projections for all the gates all at once. self.input_linearity = torch.nn.Linear(input_size, 4 * cell_size, bias=False) self.state_linearity = torch.nn.Linear(hidden_size, 4 * cell_size, bias=True) # Additional projection matrix for making the hidden state smaller. self.state_projection = torch.nn.Linear(cell_size, hidden_size, bias=False) self.reset_parameters() def reset_parameters(self): # Use sensible default initializations for parameters. block_orthogonal(self.input_linearity.weight.data, [self.cell_size, self.input_size]) block_orthogonal(self.state_linearity.weight.data, [self.cell_size, self.hidden_size]) self.state_linearity.bias.data.fill_(0.0) # Initialize forget gate biases to 1.0 as per An Empirical # Exploration of Recurrent Network Architectures, (Jozefowicz, 2015). self.state_linearity.bias.data[self.cell_size:2 * self.cell_size].fill_(1.0) def forward(self, # pylint: disable=arguments-differ inputs: torch.FloatTensor, batch_lengths: List[int], initial_state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None): """ Parameters ---------- inputs : ``torch.FloatTensor``, required. A tensor of shape (batch_size, num_timesteps, input_size) to apply the LSTM over. batch_lengths : ``List[int]``, required. A list of length batch_size containing the lengths of the sequences in batch. initial_state : ``Tuple[torch.Tensor, torch.Tensor]``, optional, (default = None) A tuple (state, memory) representing the initial hidden state and memory of the LSTM. The ``state`` has shape (1, batch_size, hidden_size) and the ``memory`` has shape (1, batch_size, cell_size). Returns ------- output_accumulator : ``torch.FloatTensor`` The outputs of the LSTM for each timestep. A tensor of shape (batch_size, max_timesteps, hidden_size) where for a given batch element, all outputs past the sequence length for that batch are zero tensors. final_state : ``Tuple[``torch.FloatTensor, torch.FloatTensor]`` A tuple (state, memory) representing the initial hidden state and memory of the LSTM. The ``state`` has shape (1, batch_size, hidden_size) and the ``memory`` has shape (1, batch_size, cell_size). """ batch_size = inputs.size()[0] total_timesteps = inputs.size()[1] # We have to use this '.data.new().fill_' pattern to create tensors with the correct # type - forward has no knowledge of whether these are torch.Tensors or torch.cuda.Tensors. output_accumulator = Variable(inputs.data.new(batch_size, total_timesteps, self.hidden_size).fill_(0)) if initial_state is None: full_batch_previous_memory = Variable(inputs.data.new(batch_size, self.cell_size).fill_(0)) full_batch_previous_state = Variable(inputs.data.new(batch_size, self.hidden_size).fill_(0)) else: full_batch_previous_state = initial_state[0].squeeze(0) full_batch_previous_memory = initial_state[1].squeeze(0) current_length_index = batch_size - 1 if self.go_forward else 0 if self.recurrent_dropout_probability > 0.0 and self.training: dropout_mask = get_dropout_mask(self.recurrent_dropout_probability, full_batch_previous_state) else: dropout_mask = None for timestep in range(total_timesteps): # The index depends on which end we start. index = timestep if self.go_forward else total_timesteps - timestep - 1 # What we are doing here is finding the index into the batch dimension # which we need to use for this timestep, because the sequences have # variable length, so once the index is greater than the length of this # particular batch sequence, we no longer need to do the computation for # this sequence. The key thing to recognise here is that the batch inputs # must be _ordered_ by length from longest (first in batch) to shortest # (last) so initially, we are going forwards with every sequence and as we # pass the index at which the shortest elements of the batch finish, # we stop picking them up for the computation. if self.go_forward: while batch_lengths[current_length_index] <= index: current_length_index -= 1 # If we're going backwards, we are _picking up_ more indices. else: # First conditional: Are we already at the maximum number of elements in the batch? # Second conditional: Does the next shortest sequence beyond the current batch # index require computation use this timestep? while current_length_index < (len(batch_lengths) - 1) and \ batch_lengths[current_length_index + 1] > index: current_length_index += 1 # Actually get the slices of the batch which we # need for the computation at this timestep. # shape (batch_size, cell_size) previous_memory = full_batch_previous_memory[0: current_length_index + 1].clone() # Shape (batch_size, hidden_size) previous_state = full_batch_previous_state[0: current_length_index + 1].clone() # Shape (batch_size, input_size) timestep_input = inputs[0: current_length_index + 1, index] # Do the projections for all the gates all at once. # Both have shape (batch_size, 4 * cell_size) projected_input = self.input_linearity(timestep_input) projected_state = self.state_linearity(previous_state) # Main LSTM equations using relevant chunks of the big linear # projections of the hidden state and inputs. input_gate = torch.sigmoid(projected_input[:, (0 * self.cell_size):(1 * self.cell_size)] + projected_state[:, (0 * self.cell_size):(1 * self.cell_size)]) forget_gate = torch.sigmoid(projected_input[:, (1 * self.cell_size):(2 * self.cell_size)] + projected_state[:, (1 * self.cell_size):(2 * self.cell_size)]) memory_init = torch.tanh(projected_input[:, (2 * self.cell_size):(3 * self.cell_size)] + projected_state[:, (2 * self.cell_size):(3 * self.cell_size)]) output_gate = torch.sigmoid(projected_input[:, (3 * self.cell_size):(4 * self.cell_size)] + projected_state[:, (3 * self.cell_size):(4 * self.cell_size)]) memory = input_gate * memory_init + forget_gate * previous_memory # Here is the non-standard part of this LSTM cell; first, we clip the # memory cell, then we project the output of the timestep to a smaller size # and again clip it. if self.memory_cell_clip_value: # pylint: disable=invalid-unary-operand-type memory = torch.clamp(memory, -self.memory_cell_clip_value, self.memory_cell_clip_value) # shape (current_length_index, cell_size) pre_projection_timestep_output = output_gate * torch.tanh(memory) # shape (current_length_index, hidden_size) timestep_output = self.state_projection(pre_projection_timestep_output) if self.state_projection_clip_value: # pylint: disable=invalid-unary-operand-type timestep_output = torch.clamp(timestep_output, -self.state_projection_clip_value, self.state_projection_clip_value) # Only do dropout if the dropout prob is > 0.0 and we are in training mode. if dropout_mask is not None: timestep_output = timestep_output * dropout_mask[0: current_length_index + 1] # We've been doing computation with less than the full batch, so here we create a new # variable for the the whole batch at this timestep and insert the result for the # relevant elements of the batch into it. full_batch_previous_memory = Variable(full_batch_previous_memory.data.clone()) full_batch_previous_state = Variable(full_batch_previous_state.data.clone()) full_batch_previous_memory[0:current_length_index + 1] = memory full_batch_previous_state[0:current_length_index + 1] = timestep_output output_accumulator[0:current_length_index + 1, index] = timestep_output # Mimic the pytorch API by returning state in the following shape: # (num_layers * num_directions, batch_size, ...). As this # LSTM cell cannot be stacked, the first dimension here is just 1. final_state = (full_batch_previous_state.unsqueeze(0), full_batch_previous_memory.unsqueeze(0)) return output_accumulator, final_state ================================================ FILE: utils/lele/layers/elmo/token_embedder.py ================================================ from __future__ import absolute_import from __future__ import unicode_literals import logging import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import copy from .highway import Highway class LstmTokenEmbedder(nn.Module): def __init__(self, config, word_emb_layer, char_emb_layer, use_cuda=False): super(LstmTokenEmbedder, self).__init__() self.config = config self.use_cuda = use_cuda self.word_emb_layer = word_emb_layer self.char_emb_layer = char_emb_layer self.output_dim = config['encoder']['projection_dim'] emb_dim = 0 if word_emb_layer is not None: emb_dim += word_emb_layer.n_d if char_emb_layer is not None: emb_dim += char_emb_layer.n_d * 2 self.char_lstm = nn.LSTM(char_emb_layer.n_d, char_emb_layer.n_d, num_layers=1, bidirectional=True, batch_first=True, dropout=config['dropout']) self.projection = nn.Linear(emb_dim, self.output_dim, bias=True) def forward(self, word_inp, chars_inp, shape): embs = [] batch_size, seq_len = shape if self.word_emb_layer is not None: word_emb = self.word_emb_layer(Variable(word_inp).cuda() if self.use_cuda else Variable(word_inp)) embs.append(word_emb) if self.char_emb_layer is not None: chars_inp = chars_inp.view(batch_size * seq_len, -1) chars_emb = self.char_emb_layer(Variable(chars_inp).cuda() if self.use_cuda else Variable(chars_inp)) _, (chars_outputs, __) = self.char_lstm(chars_emb) chars_outputs = chars_outputs.contiguous().view(-1, self.config['token_embedder']['char_dim'] * 2) embs.append(chars_outputs) token_embedding = torch.cat(embs, dim=2) return self.projection(token_embedding) class ConvTokenEmbedder(nn.Module): def __init__(self, config, word_emb_layer, char_emb_layer, use_cuda): super(ConvTokenEmbedder, self).__init__() self.config = config self.use_cuda = use_cuda self.word_emb_layer = word_emb_layer self.char_emb_layer = char_emb_layer self.output_dim = config['encoder']['projection_dim'] self.emb_dim = 0 if word_emb_layer is not None: self.emb_dim += word_emb_layer.n_d if char_emb_layer is not None: self.convolutions = [] cnn_config = config['token_embedder'] filters = cnn_config['filters'] char_embed_dim = cnn_config['char_dim'] for i, (width, num) in enumerate(filters): conv = torch.nn.Conv1d( in_channels=char_embed_dim, out_channels=num, kernel_size=width, bias=True ) self.convolutions.append(conv) self.convolutions = nn.ModuleList(self.convolutions) self.n_filters = sum(f[1] for f in filters) self.n_highway = cnn_config['n_highway'] self.highways = Highway(self.n_filters, self.n_highway, activation=torch.nn.functional.relu) self.emb_dim += self.n_filters self.projection = nn.Linear(self.emb_dim, self.output_dim, bias=True) def forward(self, word_inp, chars_inp, shape): embs = [] batch_size, seq_len = shape if self.word_emb_layer is not None: batch_size, seq_len = word_inp.size(0), word_inp.size(1) word_emb = self.word_emb_layer(Variable(word_inp).cuda() if self.use_cuda else Variable(word_inp)) embs.append(word_emb) if self.char_emb_layer is not None: chars_inp = chars_inp.view(batch_size * seq_len, -1) character_embedding = self.char_emb_layer(Variable(chars_inp).cuda() if self.use_cuda else Variable(chars_inp)) character_embedding = torch.transpose(character_embedding, 1, 2) cnn_config = self.config['token_embedder'] if cnn_config['activation'] == 'tanh': activation = torch.nn.functional.tanh elif cnn_config['activation'] == 'relu': activation = torch.nn.functional.relu else: raise Exception("Unknown activation") convs = [] for i in range(len(self.convolutions)): convolved = self.convolutions[i](character_embedding) # (batch_size * sequence_length, n_filters for this width) convolved, _ = torch.max(convolved, dim=-1) convolved = activation(convolved) convs.append(convolved) char_emb = torch.cat(convs, dim=-1) char_emb = self.highways(char_emb) embs.append(char_emb.view(batch_size, -1, self.n_filters)) token_embedding = torch.cat(embs, dim=2) return self.projection(token_embedding) ================================================ FILE: utils/lele/layers/elmo/util.py ================================================ """ Assorted utilities for working with neural networks in AllenNLP. """ from collections import defaultdict from typing import Dict, List, Optional, Any, Tuple, Callable import logging import itertools import math import torch from torch.autograd import Variable def get_lengths_from_binary_sequence_mask(mask: torch.Tensor): """ Compute sequence lengths for each batch element in a tensor using a binary mask. Parameters ---------- mask : torch.Tensor, required. A 2D binary mask of shape (batch_size, sequence_length) to calculate the per-batch sequence lengths from. Returns ------- A torch.LongTensor of shape (batch_size,) representing the lengths of the sequences in the batch. """ return mask.long().sum(-1) def sort_batch_by_length(tensor: torch.autograd.Variable, sequence_lengths: torch.autograd.Variable): """ Sort a batch first tensor by some specified lengths. Parameters ---------- tensor : Variable(torch.FloatTensor), required. A batch first Pytorch tensor. sequence_lengths : Variable(torch.LongTensor), required. A tensor representing the lengths of some dimension of the tensor which we want to sort by. Returns ------- sorted_tensor : Variable(torch.FloatTensor) The original tensor sorted along the batch dimension with respect to sequence_lengths. sorted_sequence_lengths : Variable(torch.LongTensor) The original sequence_lengths sorted by decreasing size. restoration_indices : Variable(torch.LongTensor) Indices into the sorted_tensor such that ``sorted_tensor.index_select(0, restoration_indices) == original_tensor`` permuation_index : Variable(torch.LongTensor) The indices used to sort the tensor. This is useful if you want to sort many tensors using the same ordering. """ if not isinstance(tensor, Variable) or not isinstance(sequence_lengths, Variable): raise Exception("Both the tensor and sequence lengths must be torch.autograd.Variables.") sorted_sequence_lengths, permutation_index = sequence_lengths.sort(0, descending=True) sorted_tensor = tensor.index_select(0, permutation_index) # This is ugly, but required - we are creating a new variable at runtime, so we # must ensure it has the correct CUDA vs non-CUDA type. We do this by cloning and # refilling one of the inputs to the function. index_range = sequence_lengths.data.clone().copy_(torch.arange(0, len(sequence_lengths))) # This is the equivalent of zipping with index, sorting by the original # sequence lengths and returning the now sorted indices. index_range = Variable(index_range.long()) _, reverse_mapping = permutation_index.sort(0, descending=False) restoration_indices = index_range.index_select(0, reverse_mapping) return sorted_tensor, sorted_sequence_lengths, restoration_indices, permutation_index def get_final_encoder_states(encoder_outputs: torch.Tensor, mask: torch.Tensor, bidirectional: bool = False) -> torch.Tensor: """ Given the output from a ``Seq2SeqEncoder``, with shape ``(batch_size, sequence_length, encoding_dim)``, this method returns the final hidden state for each element of the batch, giving a tensor of shape ``(batch_size, encoding_dim)``. This is not as simple as ``encoder_outputs[:, -1]``, because the sequences could have different lengths. We use the mask (which has shape ``(batch_size, sequence_length)``) to find the final state for each batch instance. Additionally, if ``bidirectional`` is ``True``, we will split the final dimension of the ``encoder_outputs`` into two and assume that the first half is for the forward direction of the encoder and the second half is for the backward direction. We will concatenate the last state for each encoder dimension, giving ``encoder_outputs[:, -1, :encoding_dim/2]`` concated with ``encoder_outputs[:, 0, encoding_dim/2:]``. """ # These are the indices of the last words in the sequences (i.e. length sans padding - 1). We # are assuming sequences are right padded. # Shape: (batch_size,) last_word_indices = mask.sum(1).long() - 1 batch_size, _, encoder_output_dim = encoder_outputs.size() expanded_indices = last_word_indices.view(-1, 1, 1).expand(batch_size, 1, encoder_output_dim) # Shape: (batch_size, 1, encoder_output_dim) final_encoder_output = encoder_outputs.gather(1, expanded_indices) final_encoder_output = final_encoder_output.squeeze(1) # (batch_size, encoder_output_dim) if bidirectional: final_forward_output = final_encoder_output[:, :(encoder_output_dim // 2)] final_backward_output = encoder_outputs[:, 0, (encoder_output_dim // 2):] final_encoder_output = torch.cat([final_forward_output, final_backward_output], dim=-1) return final_encoder_output def get_dropout_mask(dropout_probability: float, tensor_for_masking: torch.autograd.Variable): """ Computes and returns an element-wise dropout mask for a given tensor, where each element in the mask is dropped out with probability dropout_probability. Note that the mask is NOT applied to the tensor - the tensor is passed to retain the correct CUDA tensor type for the mask. Parameters ---------- dropout_probability : float, required. Probability of dropping a dimension of the input. tensor_for_masking : torch.Variable, required. Returns ------- A torch.FloatTensor consisting of the binary mask scaled by 1/ (1 - dropout_probability). This scaling ensures expected values and variances of the output of applying this mask and the original tensor are the same. """ binary_mask = tensor_for_masking.clone() binary_mask.data.copy_(torch.rand(tensor_for_masking.size()) > dropout_probability) # Scale mask by 1/keep_prob to preserve output statistics. dropout_mask = binary_mask.float().div(1.0 - dropout_probability) return dropout_mask def block_orthogonal(tensor: torch.Tensor, split_sizes: List[int], gain: float = 1.0) -> None: """ An initializer which allows initializing model parameters in "blocks". This is helpful in the case of recurrent models which use multiple gates applied to linear projections, which can be computed efficiently if they are concatenated together. However, they are separate parameters which should be initialized independently. Parameters ---------- tensor : ``torch.Tensor``, required. A tensor to initialize. split_sizes : List[int], required. A list of length ``tensor.ndim()`` specifying the size of the blocks along that particular dimension. E.g. ``[10, 20]`` would result in the tensor being split into chunks of size 10 along the first dimension and 20 along the second. gain : float, optional (default = 1.0) The gain (scaling) applied to the orthogonal initialization. """ if isinstance(tensor, Variable): # in pytorch 4.0, Variable equals Tensor # block_orthogonal(tensor.data, split_sizes, gain) #else: sizes = list(tensor.size()) if any([a % b != 0 for a, b in zip(sizes, split_sizes)]): raise ConfigurationError("tensor dimensions must be divisible by their respective " "split_sizes. Found size: {} and split_sizes: {}".format(sizes, split_sizes)) indexes = [list(range(0, max_size, split)) for max_size, split in zip(sizes, split_sizes)] # Iterate over all possible blocks within the tensor. for block_start_indices in itertools.product(*indexes): # A list of tuples containing the index to start at for this block # and the appropriate step size (i.e split_size[i] for dimension i). index_and_step_tuples = zip(block_start_indices, split_sizes) # This is a tuple of slices corresponding to: # tensor[index: index + step_size, ...]. This is # required because we could have an arbitrary number # of dimensions. The actual slices we need are the # start_index: start_index + step for each dimension in the tensor. block_slice = tuple([slice(start_index, start_index + step) for start_index, step in index_and_step_tuples]) tensor[block_slice] = torch.nn.init.orthogonal_(tensor[block_slice].contiguous(), gain=gain) ================================================ FILE: utils/lele/layers/elmo.py ================================================ from typing import Optional, Tuple, List, Callable, Union import h5py import numpy import torch import torch.nn as nn import torch.nn.functional as F from torch.nn.utils.rnn import PackedSequence, pad_packed_sequence, pack_padded_sequence from torch.autograd import Variable from .encoder_base import _EncoderBase from .lstm_cell_with_projection import LstmCellWithProjection RnnState = Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]] # pylint: disable=invalid-name RnnStateStorage = Tuple[torch.Tensor, ...] # pylint: disable=invalid-name class ElmobiLm(_EncoderBase): def __init__(self, config, use_cuda=False): super(ElmobiLm, self).__init__(stateful=True) self.config = config self.use_cuda = use_cuda input_size = config['encoder']['projection_dim'] hidden_size = config['encoder']['projection_dim'] cell_size = config['encoder']['dim'] num_layers = config['encoder']['n_layers'] memory_cell_clip_value = config['encoder']['cell_clip'] state_projection_clip_value = config['encoder']['proj_clip'] recurrent_dropout_probability = config['dropout'] self.input_size = input_size self.hidden_size = hidden_size self.num_layers = num_layers self.cell_size = cell_size forward_layers = [] backward_layers = [] lstm_input_size = input_size go_forward = True for layer_index in range(num_layers): forward_layer = LstmCellWithProjection(lstm_input_size, hidden_size, cell_size, go_forward, recurrent_dropout_probability, memory_cell_clip_value, state_projection_clip_value) backward_layer = LstmCellWithProjection(lstm_input_size, hidden_size, cell_size, not go_forward, recurrent_dropout_probability, memory_cell_clip_value, state_projection_clip_value) lstm_input_size = hidden_size self.add_module('forward_layer_{}'.format(layer_index), forward_layer) self.add_module('backward_layer_{}'.format(layer_index), backward_layer) forward_layers.append(forward_layer) backward_layers.append(backward_layer) self.forward_layers = forward_layers self.backward_layers = backward_layers def forward(self, inputs, mask): batch_size, total_sequence_length = mask.size() stacked_sequence_output, final_states, restoration_indices = \ self.sort_and_run_forward(self._lstm_forward, inputs, mask) num_layers, num_valid, returned_timesteps, encoder_dim = stacked_sequence_output.size() # Add back invalid rows which were removed in the call to sort_and_run_forward. if num_valid < batch_size: zeros = stacked_sequence_output.data.new(num_layers, batch_size - num_valid, returned_timesteps, encoder_dim).fill_(0) zeros = Variable(zeros) stacked_sequence_output = torch.cat([stacked_sequence_output, zeros], 1) # The states also need to have invalid rows added back. new_states = [] for state in final_states: state_dim = state.size(-1) zeros = state.data.new(num_layers, batch_size - num_valid, state_dim).fill_(0) zeros = Variable(zeros) new_states.append(torch.cat([state, zeros], 1)) final_states = new_states # It's possible to need to pass sequences which are padded to longer than the # max length of the sequence to a Seq2StackEncoder. However, packing and unpacking # the sequences mean that the returned tensor won't include these dimensions, because # the RNN did not need to process them. We add them back on in the form of zeros here. sequence_length_difference = total_sequence_length - returned_timesteps if sequence_length_difference > 0: zeros = stacked_sequence_output.data.new(num_layers, batch_size, sequence_length_difference, stacked_sequence_output[0].size(-1)).fill_(0) zeros = Variable(zeros) stacked_sequence_output = torch.cat([stacked_sequence_output, zeros], 2) self._update_states(final_states, restoration_indices) # Restore the original indices and return the sequence. # Has shape (num_layers, batch_size, sequence_length, hidden_size) return stacked_sequence_output.index_select(1, restoration_indices) def _lstm_forward(self, inputs: PackedSequence, initial_state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None) -> \ Tuple[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: """ Parameters ---------- inputs : ``PackedSequence``, required. A batch first ``PackedSequence`` to run the stacked LSTM over. initial_state : ``Tuple[torch.Tensor, torch.Tensor]``, optional, (default = None) A tuple (state, memory) representing the initial hidden state and memory of the LSTM, with shape (num_layers, batch_size, 2 * hidden_size) and (num_layers, batch_size, 2 * cell_size) respectively. Returns ------- output_sequence : ``torch.FloatTensor`` The encoded sequence of shape (num_layers, batch_size, sequence_length, hidden_size) final_states: ``Tuple[torch.FloatTensor, torch.FloatTensor]`` The per-layer final (state, memory) states of the LSTM, with shape (num_layers, batch_size, 2 * hidden_size) and (num_layers, batch_size, 2 * cell_size) respectively. The last dimension is duplicated because it contains the state/memory for both the forward and backward layers. """ if initial_state is None: hidden_states: List[Optional[Tuple[torch.Tensor, torch.Tensor]]] = [None] * len(self.forward_layers) elif initial_state[0].size()[0] != len(self.forward_layers): raise Exception("Initial states were passed to forward() but the number of " "initial states does not match the number of layers.") else: hidden_states = list(zip(initial_state[0].split(1, 0), initial_state[1].split(1, 0))) inputs, batch_lengths = pad_packed_sequence(inputs, batch_first=True) forward_output_sequence = inputs backward_output_sequence = inputs final_states = [] sequence_outputs = [] for layer_index, state in enumerate(hidden_states): forward_layer = getattr(self, 'forward_layer_{}'.format(layer_index)) backward_layer = getattr(self, 'backward_layer_{}'.format(layer_index)) forward_cache = forward_output_sequence backward_cache = backward_output_sequence if state is not None: forward_hidden_state, backward_hidden_state = state[0].split(self.hidden_size, 2) forward_memory_state, backward_memory_state = state[1].split(self.cell_size, 2) forward_state = (forward_hidden_state, forward_memory_state) backward_state = (backward_hidden_state, backward_memory_state) else: forward_state = None backward_state = None forward_output_sequence, forward_state = forward_layer(forward_output_sequence, batch_lengths, forward_state) backward_output_sequence, backward_state = backward_layer(backward_output_sequence, batch_lengths, backward_state) # Skip connections, just adding the input to the output. if layer_index != 0: forward_output_sequence += forward_cache backward_output_sequence += backward_cache sequence_outputs.append(torch.cat([forward_output_sequence, backward_output_sequence], -1)) # Append the state tuples in a list, so that we can return # the final states for all the layers. final_states.append((torch.cat([forward_state[0], backward_state[0]], -1), torch.cat([forward_state[1], backward_state[1]], -1))) stacked_sequence_outputs: torch.FloatTensor = torch.stack(sequence_outputs) # Stack the hidden state and memory for each layer into 2 tensors of shape # (num_layers, batch_size, hidden_size) and (num_layers, batch_size, cell_size) # respectively. final_hidden_states, final_memory_states = zip(*final_states) final_state_tuple: Tuple[torch.FloatTensor, torch.FloatTensor] = (torch.cat(final_hidden_states, 0), torch.cat(final_memory_states, 0)) return stacked_sequence_outputs, final_state_tuple ================================================ FILE: utils/lele/layers/embedding_layer.py ================================================ import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import logging logging.basicConfig(level=logging.INFO, format='%(asctime)-15s %(levelname)s: %(message)s') class EmbeddingLayer(nn.Module): def __init__(self, n_d, word2id, embs=None, fix_emb=True, oov='', pad='', normalize=True): super(EmbeddingLayer, self).__init__() if embs is not None: embwords, embvecs = embs # for word in embwords: # assert word not in word2id, "Duplicate words in pre-trained embeddings" # word2id[word] = len(word2id) logging.info("{} pre-trained word embeddings loaded.".format(len(word2id))) if n_d != len(embvecs[0]): logging.warning("[WARNING] n_d ({}) != word vector size ({}). Use {} for embeddings.".format( n_d, len(embvecs[0]), len(embvecs[0]))) n_d = len(embvecs[0]) self.word2id = word2id self.id2word = {i: word for word, i in word2id.items()} self.n_V, self.n_d = len(word2id), n_d self.oovid = word2id[oov] self.padid = word2id[pad] self.embedding = nn.Embedding(self.n_V, n_d, padding_idx=self.padid) self.embedding.weight.data.uniform_(-0.25, 0.25) if embs is not None: weight = self.embedding.weight weight.data[:len(embwords)].copy_(torch.from_numpy(embvecs)) logging.info("embedding shape: {}".format(weight.size())) if normalize: weight = self.embedding.weight norms = weight.data.norm(2, 1) if norms.dim() == 1: norms = norms.unsqueeze(1) weight.data.div_(norms.expand_as(weight.data)) if fix_emb: self.embedding.weight.requires_grad = False def forward(self, input_): return self.embedding(input_) ================================================ FILE: utils/lele/layers/encoder_base.py ================================================ from typing import Tuple, Union, Optional, Callable import torch from torch.autograd import Variable from torch.nn.utils.rnn import pack_padded_sequence, PackedSequence from .util import get_lengths_from_binary_sequence_mask, sort_batch_by_length # We have two types here for the state, because storing the state in something # which is Iterable (like a tuple, below), is helpful for internal manipulation # - however, the states are consumed as either Tensors or a Tuple of Tensors, so # returning them in this format is unhelpful. RnnState = Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]] # pylint: disable=invalid-name RnnStateStorage = Tuple[torch.Tensor, ...] # pylint: disable=invalid-name class _EncoderBase(torch.nn.Module): # pylint: disable=abstract-method """ This abstract class serves as a base for the 3 ``Encoder`` abstractions in AllenNLP. - :class:`~allennlp.modules.seq2seq_encoders.Seq2SeqEncoders` - :class:`~allennlp.modules.seq2vec_encoders.Seq2VecEncoders` Additionally, this class provides functionality for sorting sequences by length so they can be consumed by Pytorch RNN classes, which require their inputs to be sorted by length. Finally, it also provides optional statefulness to all of it's subclasses by allowing the caching and retrieving of the hidden states of RNNs. """ def __init__(self, stateful: bool = False) -> None: super(_EncoderBase, self).__init__() self.stateful = stateful self._states: Optional[RnnStateStorage] = None def sort_and_run_forward(self, module: Callable[[PackedSequence, Optional[RnnState]], Tuple[Union[PackedSequence, torch.Tensor], RnnState]], inputs: torch.Tensor, mask: torch.Tensor, hidden_state: Optional[RnnState] = None): """ This function exists because Pytorch RNNs require that their inputs be sorted before being passed as input. As all of our Seq2xxxEncoders use this functionality, it is provided in a base class. This method can be called on any module which takes as input a ``PackedSequence`` and some ``hidden_state``, which can either be a tuple of tensors or a tensor. As all of our Seq2xxxEncoders have different return types, we return `sorted` outputs from the module, which is called directly. Additionally, we return the indices into the batch dimension required to restore the tensor to it's correct, unsorted order and the number of valid batch elements (i.e the number of elements in the batch which are not completely masked). This un-sorting and re-padding of the module outputs is left to the subclasses because their outputs have different types and handling them smoothly here is difficult. Parameters ---------- module : ``Callable[[PackedSequence, Optional[RnnState]], Tuple[Union[PackedSequence, torch.Tensor], RnnState]]``, required. A function to run on the inputs. In most cases, this is a ``torch.nn.Module``. inputs : ``torch.Tensor``, required. A tensor of shape ``(batch_size, sequence_length, embedding_size)`` representing the inputs to the Encoder. mask : ``torch.Tensor``, required. A tensor of shape ``(batch_size, sequence_length)``, representing masked and non-masked elements of the sequence for each element in the batch. hidden_state : ``Optional[RnnState]``, (default = None). A single tensor of shape (num_layers, batch_size, hidden_size) representing the state of an RNN with or a tuple of tensors of shapes (num_layers, batch_size, hidden_size) and (num_layers, batch_size, memory_size), representing the hidden state and memory state of an LSTM-like RNN. Returns ------- module_output : ``Union[torch.Tensor, PackedSequence]``. A Tensor or PackedSequence representing the output of the Pytorch Module. The batch size dimension will be equal to ``num_valid``, as sequences of zero length are clipped off before the module is called, as Pytorch cannot handle zero length sequences. final_states : ``Optional[RnnState]`` A Tensor representing the hidden state of the Pytorch Module. This can either be a single tensor of shape (num_layers, num_valid, hidden_size), for instance in the case of a GRU, or a tuple of tensors, such as those required for an LSTM. restoration_indices : ``torch.LongTensor`` A tensor of shape ``(batch_size,)``, describing the re-indexing required to transform the outputs back to their original batch order. """ # In some circumstances you may have sequences of zero length. ``pack_padded_sequence`` # requires all sequence lengths to be > 0, so remove sequences of zero length before # calling self._module, then fill with zeros. # First count how many sequences are empty. batch_size = mask.size(0) num_valid = torch.sum(mask[:, 0]).int().item() sequence_lengths = get_lengths_from_binary_sequence_mask(mask) sorted_inputs, sorted_sequence_lengths, restoration_indices, sorting_indices =\ sort_batch_by_length(inputs, sequence_lengths) # Now create a PackedSequence with only the non-empty, sorted sequences. packed_sequence_input = pack_padded_sequence(sorted_inputs[:num_valid, :, :], sorted_sequence_lengths[:num_valid].data.tolist(), batch_first=True) # Prepare the initial states. if not self.stateful: if hidden_state is None: initial_states = hidden_state elif isinstance(hidden_state, tuple): initial_states = [state.index_select(1, sorting_indices)[:, :num_valid, :] for state in hidden_state] else: initial_states = hidden_state.index_select(1, sorting_indices)[:, :num_valid, :] else: initial_states = self._get_initial_states(batch_size, num_valid, sorting_indices) # Actually call the module on the sorted PackedSequence. module_output, final_states = module(packed_sequence_input, initial_states) return module_output, final_states, restoration_indices def _get_initial_states(self, batch_size: int, num_valid: int, sorting_indices: torch.LongTensor) -> Optional[RnnState]: """ Returns an initial state for use in an RNN. Additionally, this method handles the batch size changing across calls by mutating the state to append initial states for new elements in the batch. Finally, it also handles sorting the states with respect to the sequence lengths of elements in the batch and removing rows which are completely padded. Importantly, this `mutates` the state if the current batch size is larger than when it was previously called. Parameters ---------- batch_size : ``int``, required. The batch size can change size across calls to stateful RNNs, so we need to know if we need to expand or shrink the states before returning them. Expanded states will be set to zero. num_valid : ``int``, required. The batch may contain completely padded sequences which get removed before the sequence is passed through the encoder. We also need to clip these off of the state too. sorting_indices ``torch.LongTensor``, required. Pytorch RNNs take sequences sorted by length. When we return the states to be used for a given call to ``module.forward``, we need the states to match up to the sorted sequences, so before returning them, we sort the states using the same indices used to sort the sequences. Returns ------- This method has a complex return type because it has to deal with the first time it is called, when it has no state, and the fact that types of RNN have heterogeneous states. If it is the first time the module has been called, it returns ``None``, regardless of the type of the ``Module``. Otherwise, for LSTMs, it returns a tuple of ``torch.Tensors`` with shape ``(num_layers, num_valid, state_size)`` and ``(num_layers, num_valid, memory_size)`` respectively, or for GRUs, it returns a single ``torch.Tensor`` of shape ``(num_layers, num_valid, state_size)``. """ # We don't know the state sizes the first time calling forward, # so we let the module define what it's initial hidden state looks like. if self._states is None: return None # Otherwise, we have some previous states. if batch_size > self._states[0].size(1): # This batch is larger than the all previous states. # If so, resize the states. num_states_to_concat = batch_size - self._states[0].size(1) resized_states = [] # state has shape (num_layers, batch_size, hidden_size) for state in self._states: # This _must_ be inside the loop because some # RNNs have states with different last dimension sizes. zeros = state.data.new(state.size(0), num_states_to_concat, state.size(2)).fill_(0) zeros = Variable(zeros) resized_states.append(torch.cat([state, zeros], 1)) self._states = tuple(resized_states) correctly_shaped_states = self._states elif batch_size < self._states[0].size(1): # This batch is smaller than the previous one. correctly_shaped_states = tuple(state[:, :batch_size, :] for state in self._states) else: correctly_shaped_states = self._states # At this point, our states are of shape (num_layers, batch_size, hidden_size). # However, the encoder uses sorted sequences and additionally removes elements # of the batch which are fully padded. We need the states to match up to these # sorted and filtered sequences, so we do that in the next two blocks before # returning the state/s. if len(self._states) == 1: # GRUs only have a single state. This `unpacks` it from the # tuple and returns the tensor directly. correctly_shaped_state = correctly_shaped_states[0] sorted_state = correctly_shaped_state.index_select(1, sorting_indices) return sorted_state[:, :num_valid, :] else: # LSTMs have a state tuple of (state, memory). sorted_states = [state.index_select(1, sorting_indices) for state in correctly_shaped_states] return tuple(state[:, :num_valid, :] for state in sorted_states) def _update_states(self, final_states: RnnStateStorage, restoration_indices: torch.LongTensor) -> None: """ After the RNN has run forward, the states need to be updated. This method just sets the state to the updated new state, performing several pieces of book-keeping along the way - namely, unsorting the states and ensuring that the states of completely padded sequences are not updated. Finally, it also detatches the state variable from the computational graph, such that the graph can be garbage collected after each batch iteration. Parameters ---------- final_states : ``RnnStateStorage``, required. The hidden states returned as output from the RNN. restoration_indices : ``torch.LongTensor``, required. The indices that invert the sorting used in ``sort_and_run_forward`` to order the states with respect to the lengths of the sequences in the batch. """ # TODO(Mark): seems weird to sort here, but append zeros in the subclasses. # which way around is best? new_unsorted_states = [state.index_select(1, restoration_indices) for state in final_states] if self._states is None: # We don't already have states, so just set the # ones we receive to be the current state. self._states = tuple([torch.autograd.Variable(state.data) for state in new_unsorted_states]) else: # Now we've sorted the states back so that they correspond to the original # indices, we need to figure out what states we need to update, because if we # didn't use a state for a particular row, we want to preserve its state. # Thankfully, the rows which are all zero in the state correspond exactly # to those which aren't used, so we create masks of shape (new_batch_size,), # denoting which states were used in the RNN computation. current_state_batch_size = self._states[0].size(1) new_state_batch_size = final_states[0].size(1) # Masks for the unused states of shape (1, new_batch_size, 1) used_new_rows_mask = [(state[0, :, :].sum(-1) != 0.0).float().view(1, new_state_batch_size, 1) for state in new_unsorted_states] new_states = [] if current_state_batch_size > new_state_batch_size: # The new state is smaller than the old one, # so just update the indices which we used. for old_state, new_state, used_mask in zip(self._states, new_unsorted_states, used_new_rows_mask): # zero out all rows in the previous state # which _were_ used in the current state. masked_old_state = old_state[:, :new_state_batch_size, :] * (1 - used_mask) # The old state is larger, so update the relevant parts of it. old_state[:, :new_state_batch_size, :] = new_state + masked_old_state # Detatch the Variable. new_states.append(torch.autograd.Variable(old_state.data)) else: # The states are the same size, so we just have to # deal with the possibility that some rows weren't used. new_states = [] for old_state, new_state, used_mask in zip(self._states, new_unsorted_states, used_new_rows_mask): # zero out all rows which _were_ used in the current state. masked_old_state = old_state * (1 - used_mask) # The old state is larger, so update the relevant parts of it. new_state += masked_old_state # Detatch the Variable. new_states.append(torch.autograd.Variable(new_state.data)) # It looks like there should be another case handled here - when # the current_state_batch_size < new_state_batch_size. However, # this never happens, because the states themeselves are mutated # by appending zeros when calling _get_inital_states, meaning that # the new states are either of equal size, or smaller, in the case # that there are some unused elements (zero-length) for the RNN computation. self._states = tuple(new_states) def reset_states(self): self._states = None ================================================ FILE: utils/lele/layers/highway.py ================================================ """ A `Highway layer `_ that does a gated combination of a linear transformation and a non-linear transformation of its input. """ from typing import Callable import torch from overrides import overrides class Highway(torch.nn.Module): """ A `Highway layer `_ does a gated combination of a linear transformation and a non-linear transformation of its input. :math:`y = g * x + (1 - g) * f(A(x))`, where :math:`A` is a linear transformation, :math:`f` is an element-wise non-linearity, and :math:`g` is an element-wise gate, computed as :math:`sigmoid(B(x))`. This module will apply a fixed number of highway layers to its input, returning the final result. Parameters ---------- input_dim : ``int`` The dimensionality of :math:`x`. We assume the input has shape ``(batch_size, input_dim)``. num_layers : ``int``, optional (default=``1``) The number of highway layers to apply to the input. activation : ``Callable[[torch.Tensor], torch.Tensor]``, optional (default=``torch.nn.functional.relu``) The non-linearity to use in the highway layers. """ def __init__(self, input_dim: int, num_layers: int = 1, activation: Callable[[torch.Tensor], torch.Tensor] = torch.nn.functional.relu) -> None: super(Highway, self).__init__() self._input_dim = input_dim self._layers = torch.nn.ModuleList([torch.nn.Linear(input_dim, input_dim * 2) for _ in range(num_layers)]) self._activation = activation for layer in self._layers: # We should bias the highway layer to just carry its input forward. We do that by # setting the bias on `B(x)` to be positive, because that means `g` will be biased to # be high, to we will carry the input forward. The bias on `B(x)` is the second half # of the bias vector in each Linear layer. layer.bias[input_dim:].data.fill_(1) @overrides def forward(self, inputs: torch.Tensor) -> torch.Tensor: # pylint: disable=arguments-differ current_input = inputs for layer in self._layers: projected_input = layer(current_input) linear_part = current_input # NOTE: if you modify this, think about whether you should modify the initialization # above, too. nonlinear_part = projected_input[:, (0 * self._input_dim):(1 * self._input_dim)] gate = projected_input[:, (1 * self._input_dim):(2 * self._input_dim)] nonlinear_part = self._activation(nonlinear_part) gate = torch.sigmoid(gate) current_input = gate * linear_part + (1 - gate) * nonlinear_part return current_input ================================================ FILE: utils/lele/layers/layers.py ================================================ #!/usr/bin/env python3 # Copyright 2018-present, HKUST-KnowComp. # All rights reserved. # # This source code is licensed under the license found in the # LICENSE file in the root directory of this source tree. """Definitions of model layers/NN modules""" import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import math import random import gezi logging = gezi.logging import lele # ------------------------------------------------------------------------------ # Modules # ------------------------------------------------------------------------------ class CudnnRnn(nn.Module): """Stacked Bi-directional RNNs. Differs from standard PyTorch library in that it has the option to save and concat the hidden states between layers. (i.e. the output hidden size for each sequence input is num_layers * hidden_size). for hkust tf rent, reccruent dropout, bw drop out, concat layers and rnn padding WELL TOO SLOW 0.3hour/per epoch -> 1.5 hour.. """ def __init__(self, input_size, hidden_size, num_layers, dropout_rate=0, dropout_output=False, rnn_type=nn.LSTM, concat_layers=False, recurrent_dropout=True, bw_dropout=False, padding=False): super(CudnnRnn, self).__init__() self.padding = padding self.dropout_output = dropout_output self.dropout_rate = dropout_rate self.num_layers = num_layers self.concat_layers = concat_layers self.recurrent_dropout = recurrent_dropout self.bw_dropout = bw_dropout self.fws = nn.ModuleList() self.bws = nn.ModuleList() if type(rnn_type) == str: rnn_type=nn.GRU if rnn_type == 'gru' else nn.LSTM self.num_units = [] for i in range(num_layers): input_size = input_size if i == 0 else 2 * hidden_size self.num_units.append(input_size) self.fws.append(rnn_type(input_size, hidden_size, num_layers=1, bidirectional=False)) self.bws.append(rnn_type(input_size, hidden_size, num_layers=1, bidirectional=False)) def forward(self, x, x_mask, fw_masks=None, bw_masks=None): """Encode either padded or non-padded sequences. Can choose to either handle or ignore variable length sequences. Always handle padding in eval. Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: x_encoded: batch * len * hdim_encoded """ # Transpose batch and sequence dims batch_size = x.size(0) x = x.transpose(0, 1) length = (1 - x_mask).sum(1) # Encode all layers outputs = [x] for i in range(self.num_layers): rnn_input = outputs[-1] mask = None if self.dropout_rate > 0: if not self.recurrent_dropout: rnn_input_ = F.dropout(rnn_input, p=self.dropout_rate, training=self.training) else: if fw_masks is None: mask = F.dropout(torch.ones(1, batch_size, self.num_units[i]).cuda(), p=self.dropout_rate, training=self.training) else: mask = fw_masks[i] rnn_input_ = rnn_input * mask # Forward fw_output = self.fws[i](rnn_input_)[0] mask = None if self.dropout_rate > 0 and self.bw_dropout: if not self.recurrent_dropout: rnn_input_ = F.dropout(rnn_input, p=self.dropout_rate, training=self.training) else: if bw_masks is None: mask = F.dropout(torch.ones(1, batch_size, self.num_units[i]).cuda(), p=self.dropout_rate, training=self.training) else: mask = bw_masks[i] rnn_input_ = rnn_input * mask rnn_input_ = lele.reverse_padded_sequence(rnn_input_, length) bw_output = self.bws[i](rnn_input_)[0] bw_output = lele.reverse_padded_sequence(bw_output, length) outputs.append(torch.cat([fw_output, bw_output], 2)) # Concat hidden layers if self.concat_layers: output = torch.cat(outputs[1:], 2) else: output = outputs[-1] # Transpose back output = output.transpose(0, 1) # Dropout on output layer if self.dropout_output and self.dropout_rate > 0: output = F.dropout(output, p=self.dropout_rate, training=self.training) return output.contiguous() # TODO support recurrent dropout! to be similar as tf version, support shared dropout class StackedBRNN(nn.Module): """Stacked Bi-directional RNNs. Differs from standard PyTorch library in that it has the option to save and concat the hidden states between layers. (i.e. the output hidden size for each sequence input is num_layers * hidden_size). """ def __init__(self, input_size, hidden_size, num_layers, dropout_rate=0, recurrent_dropout=False, dropout_output=False, rnn_type=nn.LSTM, concat_layers=False, padding=False): super(StackedBRNN, self).__init__() self.padding = padding self.dropout_output = dropout_output self.dropout_rate = dropout_rate self.num_layers = num_layers self.concat_layers = concat_layers self.rnns = nn.ModuleList() self.recurrent_dropout = recurrent_dropout if type(rnn_type) is str: rnn_type=nn.GRU if rnn_type == 'gru' else nn.LSTM self.num_units = [] for i in range(num_layers): input_size = input_size if i == 0 else 2 * hidden_size self.num_units.append(input_size) self.rnns.append(rnn_type(input_size, hidden_size, num_layers=1, bidirectional=True)) def forward(self, x, x_mask): """Encode either padded or non-padded sequences. Can choose to either handle or ignore variable length sequences. Always handle padding in eval. Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: x_encoded: batch * len * hdim_encoded """ if x_mask.data.sum() == 0: # No padding necessary. output = self._forward_unpadded(x, x_mask) elif self.padding or not self.training: # Pad if we care or if its during eval. output = self._forward_padded(x, x_mask) else: # We don't care. output = self._forward_unpadded(x, x_mask) return output.contiguous() def _forward_unpadded(self, x, x_mask): """Faster encoding that ignores any padding.""" # Transpose batch and sequence dims x = x.transpose(0, 1) batch_size = x.size(1) # Encode all layers outputs = [x] for i in range(self.num_layers): rnn_input = outputs[-1] # Apply dropout to hidden input if self.dropout_rate > 0: if not self.recurrent_dropout: rnn_input = F.dropout(rnn_input, p=self.dropout_rate, training=self.training) else: mask = F.dropout(torch.ones(1, batch_size, self.num_units[i]).cuda(), p=self.dropout_rate, training=self.training) rnn_input = rnn_input * mask # Forward rnn_output = self.rnns[i](rnn_input)[0] outputs.append(rnn_output) # Concat hidden layers if self.concat_layers: output = torch.cat(outputs[1:], 2) else: output = outputs[-1] # Transpose back output = output.transpose(0, 1) # Dropout on output layer if self.dropout_output and self.dropout_rate > 0: output = F.dropout(output, p=self.dropout_rate, training=self.training) return output def _forward_padded(self, x, x_mask): """Slower (significantly), but more precise, encoding that handles padding. #chg I think do not need padded if you not want to use last state, last output """ # Compute sorted sequence lengths #lengths = x_mask.data.eq(0).long().sum(1).squeeze() # TODO seems not need squeeze wich might cause error when batch_size is 1 lengths = x_mask.data.eq(0).long().sum(1) _, idx_sort = torch.sort(lengths, dim=0, descending=True) _, idx_unsort = torch.sort(idx_sort, dim=0) lengths = list(lengths[idx_sort]) idx_sort = Variable(idx_sort) idx_unsort = Variable(idx_unsort) # Sort x x = x.index_select(0, idx_sort) # Transpose batch and sequence dims x = x.transpose(0, 1) batch_size = x.size(1) # Pack it up rnn_input = nn.utils.rnn.pack_padded_sequence(x, lengths) # Encode all layers outputs = [rnn_input] for i in range(self.num_layers): rnn_input = outputs[-1] # Apply dropout to input if self.dropout_rate > 0: if not self.recurrent_dropout: dropout_input = F.dropout(rnn_input.data, p=self.dropout_rate, training=self.training) else: mask = F.dropout(torch.ones(1, batch_size, self.num_units[i]).cuda(), p=self.dropout_rate, training=self.training) dropout_input = rnn_input.data * mask rnn_input = nn.utils.rnn.PackedSequence(dropout_input, rnn_input.batch_sizes) outputs.append(self.rnns[i](rnn_input)[0]) # Unpack everything for i, o in enumerate(outputs[1:], 1): outputs[i] = nn.utils.rnn.pad_packed_sequence(o)[0] # Concat hidden layers or take final if self.concat_layers: output = torch.cat(outputs[1:], 2) else: output = outputs[-1] # Transpose and unsort output = output.transpose(0, 1) output = output.index_select(0, idx_unsort) # Pad up to original batch sequence length if output.size(1) != x_mask.size(1): padding = torch.zeros(output.size(0), x_mask.size(1) - output.size(1), output.size(2)).type(output.data.type()) output = torch.cat([output, Variable(padding)], 1) # Dropout on output layer if self.dropout_output and self.dropout_rate > 0: output = F.dropout(output, p=self.dropout_rate, training=self.training) return output class FeedForwardNetwork(nn.Module): def __init__(self, input_size, hidden_size, output_size, dropout_rate=0): super(FeedForwardNetwork, self).__init__() self.dropout_rate = dropout_rate self.linear1 = nn.Linear(input_size, hidden_size) self.linear2 = nn.Linear(hidden_size, output_size) def forward(self, x): x_proj = F.dropout(F.relu(self.linear1(x)), p=self.dropout_rate, training=self.training) x_proj = self.linear2(x_proj) return x_proj class PointerNetwork(nn.Module): def __init__(self, x_size, y_size, hidden_size, dropout_rate=0, cell_type=nn.GRUCell, normalize=True): super(PointerNetwork, self).__init__() self.normalize = normalize self.hidden_size = hidden_size self.dropout_rate = dropout_rate self.linear = nn.Linear(x_size+y_size, hidden_size, bias=False) self.weights = nn.Linear(hidden_size, 1, bias=False) self.self_attn = NonLinearSeqAttn(y_size, hidden_size) self.cell = cell_type(x_size, y_size) def init_hiddens(self, y, y_mask): attn = self.self_attn(y, y_mask) res = attn.unsqueeze(1).bmm(y).squeeze(1) # [B, I] return res def pointer(self, x, state, x_mask): x_ = torch.cat([x, state.unsqueeze(1).repeat(1,x.size(1),1)], 2) s0 = torch.tanh(self.linear(x_)) s = self.weights(s0).view(x.size(0), x.size(1)) s.data.masked_fill_(x_mask.data, -float('inf')) a = F.softmax(s) res = a.unsqueeze(1).bmm(x).squeeze(1) if self.normalize: if self.training: # In training we output log-softmax for NLL scores = F.log_softmax(s) else: # ...Otherwise 0-1 probabilities scores = F.softmax(s) else: scores = a.exp() return res, scores def forward(self, x, y, x_mask, y_mask): hiddens = self.init_hiddens(y, y_mask) c, start_scores = self.pointer(x, hiddens, x_mask) c_ = F.dropout(c, p=self.dropout_rate, training=self.training) hiddens = self.cell(c_, hiddens) c, end_scores = self.pointer(x, hiddens, x_mask) return start_scores, end_scores class MemoryAnsPointer(nn.Module): def __init__(self, x_size, y_size, hidden_size, hop=1, dropout_rate=0, normalize=True): super(MemoryAnsPointer, self).__init__() self.normalize = normalize self.hidden_size = hidden_size self.hop = hop self.dropout_rate = dropout_rate self.FFNs_start = nn.ModuleList() self.SFUs_start = nn.ModuleList() self.FFNs_end = nn.ModuleList() self.SFUs_end = nn.ModuleList() for i in range(self.hop): self.FFNs_start.append(FeedForwardNetwork(x_size+y_size+2*hidden_size, hidden_size, 1, dropout_rate)) self.SFUs_start.append(SFU(y_size, 2*hidden_size)) self.FFNs_end.append(FeedForwardNetwork(x_size+y_size+2*hidden_size, hidden_size, 1, dropout_rate)) self.SFUs_end.append(SFU(y_size, 2*hidden_size)) def forward(self, x, y, x_mask, y_mask): z_s = y[:,-1,:].unsqueeze(1) # [B, 1, I] z_e = None s = None e = None p_s = None p_e = None for i in range(self.hop): z_s_ = z_s.repeat(1,x.size(1),1) # [B, S, I] s = self.FFNs_start[i](torch.cat([x, z_s_, x*z_s_], 2)).squeeze(2) s.data.masked_fill_(x_mask.data, -float('inf')) p_s = F.softmax(s, dim=1) # [B, S] u_s = p_s.unsqueeze(1).bmm(x) # [B, 1, I] z_e = self.SFUs_start[i](z_s, u_s) # [B, 1, I] z_e_ = z_e.repeat(1,x.size(1),1) # [B, S, I] e = self.FFNs_end[i](torch.cat([x, z_e_, x*z_e_], 2)).squeeze(2) e.data.masked_fill_(x_mask.data, -float('inf')) p_e = F.softmax(e, dim=1) # [B, S] u_e = p_e.unsqueeze(1).bmm(x) # [B, 1, I] z_s = self.SFUs_end[i](z_e, u_e) if self.normalize: if self.training: # In training we output log-softmax for NLL p_s = F.log_softmax(s, dim=1) # [B, S] p_e = F.log_softmax(e, dim=1) # [B, S] else: # ...Otherwise 0-1 probabilities p_s = F.softmax(s, dim=1) # [B, S] p_e = F.softmax(e, dim=1) # [B, S] else: p_s = s.exp() p_e = e.exp() return p_s, p_e # ------------------------------------------------------------------------------ # Attentions # ------------------------------------------------------------------------------ class SeqAttnMatch(nn.Module): """Given sequences X and Y, match sequence Y to each element in X. * o_i = sum(alpha_j * y_j) for i in X * alpha_j = softmax(y_j * x_i) """ def __init__(self, input_size, identity=False): super(SeqAttnMatch, self).__init__() if not identity: self.linear = nn.Linear(input_size, input_size) else: self.linear = None def forward(self, x, y, y_mask): """ Args: x: batch * len1 * hdim y: batch * len2 * hdim y_mask: batch * len2 (1 for padding, 0 for true) Output: matched_seq: batch * len1 * hdim """ # Project vectors if self.linear: x_proj = self.linear(x.view(-1, x.size(2))).view(x.size()) x_proj = F.relu(x_proj) y_proj = self.linear(y.view(-1, y.size(2))).view(y.size()) y_proj = F.relu(y_proj) else: x_proj = x y_proj = y # Compute scores scores = x_proj.bmm(y_proj.transpose(2, 1)) # Mask padding y_mask = y_mask.unsqueeze(1).expand(scores.size()) scores.data.masked_fill_(y_mask.data, -float('inf')) # Normalize with softmax alpha = F.softmax(scores, dim=2) # Take weighted average matched_seq = alpha.bmm(y) return matched_seq # like tf version DotAttention is rnet class DotAttention(nn.Module): """Given sequences X and Y, match sequence Y to each element in X. * o_i = sum(alpha_j * y_j) for i in X * alpha_j = softmax(y_j * x_i) """ def __init__(self, input_size, input_size2, hidden, dropout_rate=0., combiner='gate'): super(DotAttention, self).__init__() self.linear = nn.Linear(input_size, hidden) self.linear2 = nn.Linear(input_size2, hidden) self.hidden = hidden self.combiner = combiner if combiner is not None: if combiner == 'gate': self.combine = Gate(input_size + input_size2, dropout_rate=dropout_rate) self.output_size = input_size + input_size2 elif combiner == 'sfu': if input_size != input_size2: self.sfu_linear = nn.Linear(input_size2, input_size) else: self.sfu_linear = None self.combine = SFU(input_size, 3 * input_size, dropout_rate=dropout_rate) self.output_size = input_size else: raise ValueError(f'not support {combiner}') def forward(self, x, y, y_mask): """ Args: x: batch * len1 * hdim y: batch * len2 * hdim y_mask: batch * len2 (1 for padding, 0 for true) Output: matched_seq: batch * len1 * hdim """ # Project vectors x_proj = self.linear(x.view(-1, x.size(2))).view(x.size(0), x.size(1), self.hidden) x_proj = F.relu(x_proj) y_proj = self.linear2(y.view(-1, y.size(2))).view(y.size(0), y.size(1), self.hidden) y_proj = F.relu(y_proj) #print(x_proj.shape, y_proj.shape) # Compute scores scores = x_proj.bmm(y_proj.transpose(2, 1)) #print(scores.shape) #print(y_mask.shape) # Mask padding y_mask = y_mask.unsqueeze(1).expand(scores.size()) scores.data.masked_fill_(y_mask.data, -float('inf')) # Normalize with softmax alpha = F.softmax(scores, dim=2) # Take weighted average matched_seq = alpha.bmm(y) if self.combiner is None: return matched_seq else: # TODO FIXME... why is False == True ??? #print(self.combiner, self.combiner is 'sfu', self.combiner == 'sfu') if self.combiner == 'gate': return self.combine(torch.cat([x, matched_seq], 2)) elif self.combiner == 'sfu': if self.sfu_linear is not None: matched_seq = self.sfu_linear(matched_seq) return self.combine(x, torch.cat([matched_seq, x * matched_seq, x - matched_seq], 2)) class SelfAttnMatch(nn.Module): """Given sequences X and Y, match sequence Y to each element in X. * o_i = sum(alpha_j * x_j) for i in X * alpha_j = softmax(x_j * x_i) """ def __init__(self, input_size, identity=False, diag=True): super(SelfAttnMatch, self).__init__() if not identity: self.linear = nn.Linear(input_size, input_size) else: self.linear = None self.diag = diag def forward(self, x, x_mask): """ Args: x: batch * len1 * dim1 x_mask: batch * len1 (1 for padding, 0 for true) Output: matched_seq: batch * len1 * dim1 """ # Project vectors if self.linear: x_proj = self.linear(x.view(-1, x.size(2))).view(x.size()) x_proj = F.relu(x_proj) else: x_proj = x # Compute scores scores = x_proj.bmm(x_proj.transpose(2, 1)) if not self.diag: x_len = x.size(1) for i in range(x_len): scores[:, i, i] = 0 # Mask padding x_mask = x_mask.unsqueeze(1).expand(scores.size()) scores.data.masked_fill_(x_mask.data, -float('inf')) # Normalize with softmax alpha = F.softmax(scores, dim=2) #print(scores.shape, ','.join([str(x) for x in alpha.view(-1).detach().cpu().numpy()]), sep='\t') # Take weighted average matched_seq = alpha.bmm(x) return matched_seq class BilinearSeqAttn(nn.Module): """A bilinear attention layer over a sequence X w.r.t y: * o_i = softmax(x_i'Wy) for x_i in X. Optionally don't normalize output weights. """ def __init__(self, x_size, y_size, identity=False, normalize=True): super(BilinearSeqAttn, self).__init__() self.normalize = normalize # If identity is true, we just use a dot product without transformation. if not identity: self.linear = nn.Linear(y_size, x_size) else: self.linear = None def forward(self, x, y, x_mask): """ Args: x: batch * len * hdim1 y: batch * hdim2 x_mask: batch * len (1 for padding, 0 for true) Output: alpha = batch * len """ Wy = self.linear(y) if self.linear is not None else y xWy = x.bmm(Wy.unsqueeze(2)).squeeze(2) xWy.data.masked_fill_(x_mask.data, -float('inf')) if self.normalize: if self.training: # In training we output log-softmax for NLL alpha = F.log_softmax(xWy) else: # ...Otherwise 0-1 probabilities alpha = F.softmax(xWy) else: alpha = xWy.exp() return alpha class LinearSeqAttn(nn.Module): """Self attention over a sequence: * o_i = softmax(Wx_i) for x_i in X. """ def __init__(self, input_size): super(LinearSeqAttn, self).__init__() self.linear = nn.Linear(input_size, 1) def forward(self, x, x_mask): """ Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ x_flat = x.view(-1, x.size(-1)) scores = self.linear(x_flat).view(x.size(0), x.size(1)) scores.data.masked_fill_(x_mask.data, -float('inf')) alpha = F.softmax(scores) return alpha class NonLinearSeqAttn(nn.Module): """Self attention over a sequence: * o_i = softmax(function(Wx_i)) for x_i in X. """ def __init__(self, input_size, hidden_size=128): super(NonLinearSeqAttn, self).__init__() self.FFN = FeedForwardNetwork(input_size, hidden_size, 1) def forward(self, x, x_mask): """ Args: x: batch * len * dim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ scores = self.FFN(x).squeeze(2) scores.data.masked_fill_(x_mask.data, -float('inf')) alpha = F.softmax(scores) return alpha class MaxPooling(nn.Module): def forward(self, x, x_mask): if x_mask is None or x_mask.data.sum() == 0: return torch.max(x, 1)[0] else: x_mask = x_mask.unsqueeze(-1).expand(x.size()) x.data.masked_fill_(x_mask.data, -float('inf')) return torch.max(x, 1)[0] # # https://medium.com/@sonicboom8/sentiment-analysis-with-variable-length-sequences-in-pytorch-6241635ae130 # # shold be same as above or use F.adaptive_max_pool1d and slightly slower # lengths = (1 - x_mask).sum(1) # return torch.cat([torch.max(i[:l], dim=0)[0].view(1,-1) for i,l in zip(x, lengths)], dim=0) class SumPooling(nn.Module): def forward(self, x, x_mask): if x_mask is None or x_mask.data.sum() == 0: return torch.sum(x, 1) else: # lengths = (1 - x_mask).sum(1) # return torch.cat([torch.sum(i[:l], dim=0).view(1,-1) for i,l in zip(x, lengths)], dim=0) x_mask = x_mask.unsqueeze(-1).expand(x.size()) x.data.masked_fill_(x_mask.data, 0.) return torch.sum(x, 1) class TopKPooling(nn.Module): def __init__(self, top_k=2): super(TopKPooling, self).__init__() self.top_k = top_k def forward(self, x, x_mask): if x_mask is None or x_mask.data.sum() == 0: return torch.topk(x, k=self.top_k, dim=1)[0].view(x.size(0), -1) else: # x_mask = x_mask.unsqueeze(-1).expand(x.size()) # x.data.masked_fill_(x_mask.data, -float('inf')) # return torch.topk(x, k=self.top_k, dim=1)[0].view(x.size(0), -1) #FIXME below not ok #return F.adaptive_max_pool1d(x, self.top_k).view(x.size(0), -1) # https://medium.com/@sonicboom8/sentiment-analysis-with-variable-length-sequences-in-pytorch-6241635ae130 lengths = (1 - x_mask).sum(1) return torch.cat([torch.topk(i[:l], k=self.top_k, dim=0)[0].view(1,-1) for i,l in zip(x, lengths)], dim=0).view(x.size(0), -1) class LastPooling(nn.Module): def __init__(self): super(LastPooling, self).__init__() def forward(self, x, x_mask): if x_mask is None or x_mask.data.sum() == 0: return x[:,-1,:] else: lengths = (1 - x_mask).sum(1) return torch.cat([i[l - 1,:] for i,l in zip(x, lengths)], dim=0).view(x.size(0), -1) class LinearSeqAttnPooling(nn.Module): """Self attention over a sequence: * o_i = softmax(Wx_i) for x_i in X. """ def __init__(self, input_size): super(LinearSeqAttnPooling, self).__init__() self.linear = nn.Linear(input_size, 1) def forward(self, x, x_mask): """ Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ # TODO why need contiguous x = x.contiguous() x_flat = x.view(-1, x.size(-1)) scores = self.linear(x_flat).view(x.size(0), x.size(1)) scores.data.masked_fill_(x_mask.data, -float('inf')) alpha = F.softmax(scores, dim=-1) self.alpha = alpha return alpha.unsqueeze(1).bmm(x).squeeze(1) class LinearSeqAttnPoolings(nn.Module): """Self attention over a sequence: * o_i = softmax(Wx_i) for x_i in X. """ def __init__(self, input_size, num_poolings): super(LinearSeqAttnPoolings, self).__init__() self.num_poolings = num_poolings self.linear = nn.Linear(input_size, num_poolings) def forward(self, x, x_mask): """ Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ # TODO why need contiguous x_mask = lele.tile(x_mask.unsqueeze(-1), -1, self.num_poolings) x = x.contiguous() x_flat = x.view(-1, x.size(-1)) scores = self.linear(x_flat).view(x.size(0), x.size(1), self.num_poolings) scores = scores.transpose(-2, -1) scores.data.masked_fill_(x_mask.data, -float('inf')) alpha = F.softmax(scores, dim=-1) self.alpha = alpha return alpha.bmm(x) class NonLinearSeqAttnPooling(nn.Module): """Self attention over a sequence: * o_i = softmax(function(Wx_i)) for x_i in X. """ def __init__(self, input_size, hidden_size=128): super(NonLinearSeqAttnPooling, self).__init__() self.FFN = FeedForwardNetwork(input_size, hidden_size, 1) def forward(self, x, x_mask): """ Args: x: batch * len * dim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ scores = self.FFN(x).squeeze(2) scores.data.masked_fill_(x_mask.data, -float('inf')) alpha = F.softmax(scores, dim=-1) self.alpha = alpha return alpha.unsqueeze(1).bmm(x).squeeze(1) class NonLinearSeqAttnPoolings(nn.Module): """Self attention over a sequence: * o_i = softmax(function(Wx_i)) for x_i in X. """ def __init__(self, input_size, num_poolings, hidden_size=128): super(NonLinearSeqAttnPoolings, self).__init__() self.num_poolings = num_poolings self.FFN = FeedForwardNetwork(input_size, hidden_size, num_poolings) def forward(self, x, x_mask): """ Args: x: batch * len * dim x_mask: batch * len (1 for padding, 0 for true) Output: alpha: batch * len """ scores = self.FFN(x) x_mask = lele.tile(x_mask.unsqueeze(-1), -1, self.num_poolings) scores.data.masked_fill_(x_mask.data, -float('inf')) scores = scores.transpose(-2, -1) alpha = F.softmax(scores, dim=-1) self.alpha = alpha return alpha.bmm(x) class Pooling(nn.Module): def __init__(self, name, input_size=0, top_k=2, att_activation=F.relu, **kwargs): super(Pooling, self).__init__(**kwargs) self.top_k = top_k self.poolings = nn.ModuleList() def get_pooling(name): if name == 'max': return MaxPooling() elif name == 'mean': return MeanPooling() elif name == 'sum': return SumPooling() elif name == 'attention' or name == 'att': return NonLinearSeqAttnPooling(input_size) elif name == 'linear_attention' or name == 'linear_att' or name == 'latt': return LinearSeqAttnPooling(input_size) elif name == 'topk' or name == 'top_k': return TopKPooling(top_k=top_k) elif name =='first': return FirstPooling() elif name == 'last': return LastPooling() else: raise f'Unsupport pooling now:{name}' self.output_size = 0 self.names = name.split(',') for name in self.names: self.poolings.append(get_pooling(name)) if name == 'topk' or name == 'top_k': self.output_size += input_size * top_k else: self.output_size += input_size #logging.info('poolings:', self.poolings) def forward(self, x, mask=None, calc_word_scores=False): results = [] self.word_scores = [] for i, pooling in enumerate(self.poolings): results.append(pooling(x, mask)) if calc_word_scores: import melt # TODO remove from melt self.word_scores.append(melt.get_words_importance(outputs, sequence_length, top_k=self.top_k, method=self.names[i])) return torch.cat(results, -1) class Poolings(nn.Module): def __init__(self, name, input_size=0, num_poolings=1, top_k=2, att_activation=F.relu, **kwargs): super(Poolings, self).__init__(**kwargs) self.top_k = top_k self.num_poolings = num_poolings self.poolings = nn.ModuleList() self.is_poolings_list = [] def get_pooling(name): if name == 'max': # TODO actually only support attention based.. return MaxPooling(), False elif name == 'mean': return MeanPooling(), False elif name == 'attention' or name == 'att': return NonLinearSeqAttnPoolings(input_size, num_poolings), True elif name == 'linear_attention' or name == 'linear_att' or name == 'latt': return LinearSeqAttnPoolings(input_size, num_poolings), True elif name == 'topk' or name == 'top_k': return TopKPooling(top_k=top_k), False elif name =='first': return FirstPooling(), False elif name == 'last': return LastPooling(), False else: raise f'Unsupport pooling now:{name}' self.output_size = 0 self.names = name.split(',') for name in self.names: pooling, is_poolings = get_pooling(name) self.poolings.append(pooling) self.is_poolings_list.append(is_poolings) if name == 'topk' or name == 'top_k': self.output_size += input_size * top_k else: self.output_size += input_size #logging.info('poolings:', self.poolings) def forward(self, x, mask=None, calc_word_scores=False): results = [] self.word_scores = [] for i, pooling in enumerate(self.poolings): result = pooling(x, mask) if not self.is_poolings_list[i]: result = lele.tile(result.unsqueeze(1), 1, self.num_poolings) results.append(result) if calc_word_scores: self.word_scores.append(melt.get_words_importance(outputs, sequence_length, top_k=self.top_k, method=self.names[i])) result = torch.cat(results, -1) self.encode = result return result # TODO can we do multiple exclusive linear simultaneously ? class Linears(nn.Module): def __init__(self, input_size, output_size, num, **kwargs): super(Linears, self).__init__(**kwargs) self.num = num self.linears = lele.clones(nn.Linear(input_size, output_size), num) def forward(self, x): inputs = x.split(1, 1) results = [] for linear, x in zip(self.linears, inputs): result = linear(x) results.append(result) result = torch.cat(results, 1) return result # ------------------------------------------------------------------------------ # Functional Units # ------------------------------------------------------------------------------ class Gate(nn.Module): """Gate Unit g = sigmoid(Wx) x = g * x """ def __init__(self, input_size, dropout_rate=0.): super(Gate, self).__init__() self.linear = nn.Linear(input_size, input_size, bias=False) self.dropout_rate = dropout_rate def forward(self, x): """ Args: x: batch * len * dim x_mask: batch * len (1 for padding, 0 for true) Output: res: batch * len * dim """ if self.dropout_rate: x = F.dropout(x, p=self.dropout_rate, training=self.training) x_proj = self.linear(x) gate = torch.sigmoid(x) return x_proj * gate class SFU(nn.Module): """Semantic Fusion Unit The ouput vector is expected to not only retrieve correlative information from fusion vectors, but also retain partly unchange as the input vector """ def __init__(self, input_size, fusion_size, dropout_rate=0.): super(SFU, self).__init__() self.linear_r = nn.Linear(input_size + fusion_size, input_size) self.linear_g = nn.Linear(input_size + fusion_size, input_size) self.dropout_rate = dropout_rate def forward(self, x, fusions): r_f = torch.cat([x, fusions], 2) if self.dropout_rate: r_f = F.dropout(r_f, p=self.dropout_rate, training=self.training) r = torch.tanh(self.linear_r(r_f)) g = torch.sigmoid(self.linear_g(r_f)) o = g * r + (1-g) * x return o class SFUCombiner(nn.Module): """Semantic Fusion Unit The ouput vector is expected to not only retrieve correlative information from fusion vectors, but also retain partly unchange as the input vector """ def __init__(self, input_size, fusion_size, dropout_rate=0.): super(SFUCombiner, self).__init__() self.linear_r = nn.Linear(input_size + fusion_size, input_size) self.linear_g = nn.Linear(input_size + fusion_size, input_size) self.dropout_rate = dropout_rate def forward(self, x, y): r_f = torch.cat([x, y, x * y, x - y], 2) if self.dropout_rate: r_f = F.dropout(r_f, p=self.dropout_rate, training=self.training) r = torch.tanh(self.linear_r(r_f)) g = torch.sigmoid(self.linear_g(r_f)) o = g * r + (1-g) * x return o # ------------------------------------------------------------------------------ # Functional # ------------------------------------------------------------------------------ def uniform_weights(x, x_mask): """Return uniform weights over non-masked x (a sequence of vectors). Args: x: batch * len * hdim x_mask: batch * len (1 for padding, 0 for true) Output: x_avg: batch * hdim """ alpha = Variable(torch.ones(x.size(0), x.size(1))) if x.data.is_cuda: alpha = alpha.cuda() alpha = alpha * x_mask.eq(0).float() alpha = alpha / alpha.sum(1).expand(alpha.size()) return alpha def weighted_avg(x, weights): """Return a weighted average of x (a sequence of vectors). Args: x: batch * len * hdim weights: batch * len, sum(dim = 1) = 1 Output: x_avg: batch * hdim """ return weights.unsqueeze(1).bmm(x).squeeze(1) ================================================ FILE: utils/lele/layers/lstm.py ================================================ from __future__ import absolute_import from __future__ import unicode_literals import logging import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import copy class LstmbiLm(nn.Module): def __init__(self, config, use_cuda=False): super(LstmbiLm, self).__init__() self.config = config self.use_cuda = use_cuda self.encoder = nn.LSTM(self.config['encoder']['projection_dim'], self.config['encoder']['dim'], num_layers=self.config['encoder']['n_layers'], bidirectional=True, batch_first=True, dropout=self.config['dropout']) self.projection = nn.Linear(self.config['encoder']['dim'], self.config['encoder']['projection_dim'], bias=True) def forward(self, inputs): forward, backward = self.encoder(inputs)[0].split(self.config['encoder']['dim'], 2) return torch.cat([self.projection(forward), self.projection(backward)], dim=2) ================================================ FILE: utils/lele/layers/lstm_cell_with_projection.py ================================================ """ An LSTM with Recurrent Dropout, a hidden_state which is projected and clipping on both the hidden state and the memory state of the LSTM. """ from typing import Optional, Tuple, List import torch from torch.autograd import Variable from .util import block_orthogonal, get_dropout_mask class LstmCellWithProjection(torch.nn.Module): """ An LSTM with Recurrent Dropout and a projected and clipped hidden state and memory. Note: this implementation is slower than the native Pytorch LSTM because it cannot make use of CUDNN optimizations for stacked RNNs due to and variational dropout and the custom nature of the cell state. Parameters ---------- input_size : ``int``, required. The dimension of the inputs to the LSTM. hidden_size : ``int``, required. The dimension of the outputs of the LSTM. cell_size : ``int``, required. The dimension of the memory cell used for the LSTM. go_forward: ``bool``, optional (default = True) The direction in which the LSTM is applied to the sequence. Forwards by default, or backwards if False. recurrent_dropout_probability: ``float``, optional (default = 0.0) The dropout probability to be used in a dropout scheme as stated in `A Theoretically Grounded Application of Dropout in Recurrent Neural Networks `_ . Implementation wise, this simply applies a fixed dropout mask per sequence to the recurrent connection of the LSTM. state_projection_clip_value: ``float``, optional, (default = None) The magnitude with which to clip the hidden_state after projecting it. memory_cell_clip_value: ``float``, optional, (default = None) The magnitude with which to clip the memory cell. Returns ------- output_accumulator : ``torch.FloatTensor`` The outputs of the LSTM for each timestep. A tensor of shape (batch_size, max_timesteps, hidden_size) where for a given batch element, all outputs past the sequence length for that batch are zero tensors. final_state: ``Tuple[torch.FloatTensor, torch.FloatTensor]`` The final (state, memory) states of the LSTM, with shape (1, batch_size, hidden_size) and (1, batch_size, cell_size) respectively. The first dimension is 1 in order to match the Pytorch API for returning stacked LSTM states. """ def __init__(self, input_size: int, hidden_size: int, cell_size: int, go_forward: bool = True, recurrent_dropout_probability: float = 0.0, memory_cell_clip_value: Optional[float] = None, state_projection_clip_value: Optional[float] = None) -> None: super(LstmCellWithProjection, self).__init__() # Required to be wrapped with a :class:`PytorchSeq2SeqWrapper`. self.input_size = input_size self.hidden_size = hidden_size self.cell_size = cell_size self.go_forward = go_forward self.state_projection_clip_value = state_projection_clip_value self.memory_cell_clip_value = memory_cell_clip_value self.recurrent_dropout_probability = recurrent_dropout_probability # We do the projections for all the gates all at once. self.input_linearity = torch.nn.Linear(input_size, 4 * cell_size, bias=False) self.state_linearity = torch.nn.Linear(hidden_size, 4 * cell_size, bias=True) # Additional projection matrix for making the hidden state smaller. self.state_projection = torch.nn.Linear(cell_size, hidden_size, bias=False) self.reset_parameters() def reset_parameters(self): # Use sensible default initializations for parameters. block_orthogonal(self.input_linearity.weight.data, [self.cell_size, self.input_size]) block_orthogonal(self.state_linearity.weight.data, [self.cell_size, self.hidden_size]) self.state_linearity.bias.data.fill_(0.0) # Initialize forget gate biases to 1.0 as per An Empirical # Exploration of Recurrent Network Architectures, (Jozefowicz, 2015). self.state_linearity.bias.data[self.cell_size:2 * self.cell_size].fill_(1.0) def forward(self, # pylint: disable=arguments-differ inputs: torch.FloatTensor, batch_lengths: List[int], initial_state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None): """ Parameters ---------- inputs : ``torch.FloatTensor``, required. A tensor of shape (batch_size, num_timesteps, input_size) to apply the LSTM over. batch_lengths : ``List[int]``, required. A list of length batch_size containing the lengths of the sequences in batch. initial_state : ``Tuple[torch.Tensor, torch.Tensor]``, optional, (default = None) A tuple (state, memory) representing the initial hidden state and memory of the LSTM. The ``state`` has shape (1, batch_size, hidden_size) and the ``memory`` has shape (1, batch_size, cell_size). Returns ------- output_accumulator : ``torch.FloatTensor`` The outputs of the LSTM for each timestep. A tensor of shape (batch_size, max_timesteps, hidden_size) where for a given batch element, all outputs past the sequence length for that batch are zero tensors. final_state : ``Tuple[``torch.FloatTensor, torch.FloatTensor]`` A tuple (state, memory) representing the initial hidden state and memory of the LSTM. The ``state`` has shape (1, batch_size, hidden_size) and the ``memory`` has shape (1, batch_size, cell_size). """ batch_size = inputs.size()[0] total_timesteps = inputs.size()[1] # We have to use this '.data.new().fill_' pattern to create tensors with the correct # type - forward has no knowledge of whether these are torch.Tensors or torch.cuda.Tensors. output_accumulator = Variable(inputs.data.new(batch_size, total_timesteps, self.hidden_size).fill_(0)) if initial_state is None: full_batch_previous_memory = Variable(inputs.data.new(batch_size, self.cell_size).fill_(0)) full_batch_previous_state = Variable(inputs.data.new(batch_size, self.hidden_size).fill_(0)) else: full_batch_previous_state = initial_state[0].squeeze(0) full_batch_previous_memory = initial_state[1].squeeze(0) current_length_index = batch_size - 1 if self.go_forward else 0 if self.recurrent_dropout_probability > 0.0 and self.training: dropout_mask = get_dropout_mask(self.recurrent_dropout_probability, full_batch_previous_state) else: dropout_mask = None for timestep in range(total_timesteps): # The index depends on which end we start. index = timestep if self.go_forward else total_timesteps - timestep - 1 # What we are doing here is finding the index into the batch dimension # which we need to use for this timestep, because the sequences have # variable length, so once the index is greater than the length of this # particular batch sequence, we no longer need to do the computation for # this sequence. The key thing to recognise here is that the batch inputs # must be _ordered_ by length from longest (first in batch) to shortest # (last) so initially, we are going forwards with every sequence and as we # pass the index at which the shortest elements of the batch finish, # we stop picking them up for the computation. if self.go_forward: while batch_lengths[current_length_index] <= index: current_length_index -= 1 # If we're going backwards, we are _picking up_ more indices. else: # First conditional: Are we already at the maximum number of elements in the batch? # Second conditional: Does the next shortest sequence beyond the current batch # index require computation use this timestep? while current_length_index < (len(batch_lengths) - 1) and \ batch_lengths[current_length_index + 1] > index: current_length_index += 1 # Actually get the slices of the batch which we # need for the computation at this timestep. # shape (batch_size, cell_size) previous_memory = full_batch_previous_memory[0: current_length_index + 1].clone() # Shape (batch_size, hidden_size) previous_state = full_batch_previous_state[0: current_length_index + 1].clone() # Shape (batch_size, input_size) timestep_input = inputs[0: current_length_index + 1, index] # Do the projections for all the gates all at once. # Both have shape (batch_size, 4 * cell_size) projected_input = self.input_linearity(timestep_input) projected_state = self.state_linearity(previous_state) # Main LSTM equations using relevant chunks of the big linear # projections of the hidden state and inputs. input_gate = torch.sigmoid(projected_input[:, (0 * self.cell_size):(1 * self.cell_size)] + projected_state[:, (0 * self.cell_size):(1 * self.cell_size)]) forget_gate = torch.sigmoid(projected_input[:, (1 * self.cell_size):(2 * self.cell_size)] + projected_state[:, (1 * self.cell_size):(2 * self.cell_size)]) memory_init = torch.tanh(projected_input[:, (2 * self.cell_size):(3 * self.cell_size)] + projected_state[:, (2 * self.cell_size):(3 * self.cell_size)]) output_gate = torch.sigmoid(projected_input[:, (3 * self.cell_size):(4 * self.cell_size)] + projected_state[:, (3 * self.cell_size):(4 * self.cell_size)]) memory = input_gate * memory_init + forget_gate * previous_memory # Here is the non-standard part of this LSTM cell; first, we clip the # memory cell, then we project the output of the timestep to a smaller size # and again clip it. if self.memory_cell_clip_value: # pylint: disable=invalid-unary-operand-type memory = torch.clamp(memory, -self.memory_cell_clip_value, self.memory_cell_clip_value) # shape (current_length_index, cell_size) pre_projection_timestep_output = output_gate * torch.tanh(memory) # shape (current_length_index, hidden_size) timestep_output = self.state_projection(pre_projection_timestep_output) if self.state_projection_clip_value: # pylint: disable=invalid-unary-operand-type timestep_output = torch.clamp(timestep_output, -self.state_projection_clip_value, self.state_projection_clip_value) # Only do dropout if the dropout prob is > 0.0 and we are in training mode. if dropout_mask is not None: timestep_output = timestep_output * dropout_mask[0: current_length_index + 1] # We've been doing computation with less than the full batch, so here we create a new # variable for the the whole batch at this timestep and insert the result for the # relevant elements of the batch into it. full_batch_previous_memory = Variable(full_batch_previous_memory.data.clone()) full_batch_previous_state = Variable(full_batch_previous_state.data.clone()) full_batch_previous_memory[0:current_length_index + 1] = memory full_batch_previous_state[0:current_length_index + 1] = timestep_output output_accumulator[0:current_length_index + 1, index] = timestep_output # Mimic the pytorch API by returning state in the following shape: # (num_layers * num_directions, batch_size, ...). As this # LSTM cell cannot be stacked, the first dimension here is just 1. final_state = (full_batch_previous_state.unsqueeze(0), full_batch_previous_memory.unsqueeze(0)) return output_accumulator, final_state ================================================ FILE: utils/lele/layers/token_embedder.py ================================================ from __future__ import absolute_import from __future__ import unicode_literals import logging import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import copy from .highway import Highway class LstmTokenEmbedder(nn.Module): def __init__(self, config, word_emb_layer, char_emb_layer, use_cuda=False): super(LstmTokenEmbedder, self).__init__() self.config = config self.use_cuda = use_cuda self.word_emb_layer = word_emb_layer self.char_emb_layer = char_emb_layer self.output_dim = config['encoder']['projection_dim'] emb_dim = 0 if word_emb_layer is not None: emb_dim += word_emb_layer.n_d if char_emb_layer is not None: emb_dim += char_emb_layer.n_d * 2 self.char_lstm = nn.LSTM(char_emb_layer.n_d, char_emb_layer.n_d, num_layers=1, bidirectional=True, batch_first=True, dropout=config['dropout']) self.projection = nn.Linear(emb_dim, self.output_dim, bias=True) def forward(self, word_inp, chars_inp, shape): embs = [] batch_size, seq_len = shape if self.word_emb_layer is not None: word_emb = self.word_emb_layer(Variable(word_inp).cuda() if self.use_cuda else Variable(word_inp)) embs.append(word_emb) if self.char_emb_layer is not None: chars_inp = chars_inp.view(batch_size * seq_len, -1) chars_emb = self.char_emb_layer(Variable(chars_inp).cuda() if self.use_cuda else Variable(chars_inp)) _, (chars_outputs, __) = self.char_lstm(chars_emb) chars_outputs = chars_outputs.contiguous().view(-1, self.config['token_embedder']['char_dim'] * 2) embs.append(chars_outputs) token_embedding = torch.cat(embs, dim=2) return self.projection(token_embedding) class ConvTokenEmbedder(nn.Module): def __init__(self, config, word_emb_layer, char_emb_layer, use_cuda): super(ConvTokenEmbedder, self).__init__() self.config = config self.use_cuda = use_cuda self.word_emb_layer = word_emb_layer self.char_emb_layer = char_emb_layer self.output_dim = config['encoder']['projection_dim'] self.emb_dim = 0 if word_emb_layer is not None: self.emb_dim += word_emb_layer.n_d if char_emb_layer is not None: self.convolutions = [] cnn_config = config['token_embedder'] filters = cnn_config['filters'] char_embed_dim = cnn_config['char_dim'] for i, (width, num) in enumerate(filters): conv = torch.nn.Conv1d( in_channels=char_embed_dim, out_channels=num, kernel_size=width, bias=True ) self.convolutions.append(conv) self.convolutions = nn.ModuleList(self.convolutions) self.n_filters = sum(f[1] for f in filters) self.n_highway = cnn_config['n_highway'] self.highways = Highway(self.n_filters, self.n_highway, activation=torch.nn.functional.relu) self.emb_dim += self.n_filters self.projection = nn.Linear(self.emb_dim, self.output_dim, bias=True) def forward(self, word_inp, chars_inp, shape): embs = [] batch_size, seq_len = shape if self.word_emb_layer is not None: batch_size, seq_len = word_inp.size(0), word_inp.size(1) word_emb = self.word_emb_layer(Variable(word_inp).cuda() if self.use_cuda else Variable(word_inp)) embs.append(word_emb) if self.char_emb_layer is not None: chars_inp = chars_inp.view(batch_size * seq_len, -1) character_embedding = self.char_emb_layer(Variable(chars_inp).cuda() if self.use_cuda else Variable(chars_inp)) character_embedding = torch.transpose(character_embedding, 1, 2) cnn_config = self.config['token_embedder'] if cnn_config['activation'] == 'tanh': activation = torch.nn.functional.tanh elif cnn_config['activation'] == 'relu': activation = torch.nn.functional.relu else: raise Exception("Unknown activation") convs = [] for i in range(len(self.convolutions)): convolved = self.convolutions[i](character_embedding) # (batch_size * sequence_length, n_filters for this width) convolved, _ = torch.max(convolved, dim=-1) convolved = activation(convolved) convs.append(convolved) char_emb = torch.cat(convs, dim=-1) char_emb = self.highways(char_emb) embs.append(char_emb.view(batch_size, -1, self.n_filters)) token_embedding = torch.cat(embs, dim=2) return self.projection(token_embedding) ================================================ FILE: utils/lele/layers/transformer/__init__.py ================================================ from lele.layers.transformer.transformer import * ================================================ FILE: utils/lele/layers/transformer/transformer.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file transformer.py # \author chenghuige # \date 2018-10-31 16:26:03.989448 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import torch import torch.nn as nn import torch.nn.functional as F import math, copy, time from torch.autograd import Variable # https://github.com/harvardnlp/annotated-transformer/blob/master/The%20Annotated%20Transformer.ipynb def clones(module, N): "Produce N identical layers." return nn.ModuleList([copy.deepcopy(module) for _ in range(N)]) class Encoder(nn.Module): "Core encoder is a stack of N layers" def __init__(self, layer, N): super(Encoder, self).__init__() self.layers = clones(layer, N) self.norm = LayerNorm(layer.size) def forward(self, x, mask): "Pass the input (and mask) through each layer in turn." for layer in self.layers: x = layer(x, mask) return self.norm(x) class LayerNorm(nn.Module): "Construct a layernorm module (See citation for details)." def __init__(self, features, eps=1e-6): super(LayerNorm, self).__init__() self.a_2 = nn.Parameter(torch.ones(features)) self.b_2 = nn.Parameter(torch.zeros(features)) self.eps = eps def forward(self, x): mean = x.mean(-1, keepdim=True) std = x.std(-1, keepdim=True) return self.a_2 * (x - mean) / (std + self.eps) + self.b_2 class SublayerConnection(nn.Module): """ A residual connection followed by a layer norm. Note for code simplicity the norm is first as opposed to last. """ def __init__(self, size, dropout): super(SublayerConnection, self).__init__() self.norm = LayerNorm(size) self.dropout = nn.Dropout(dropout) def forward(self, x, sublayer): "Apply residual connection to any sublayer with the same size." return x + self.dropout(sublayer(self.norm(x))) class EncoderLayer(nn.Module): "Encoder is made up of self-attn and feed forward (defined below)" def __init__(self, size, self_attn, feed_forward, dropout): super(EncoderLayer, self).__init__() self.self_attn = self_attn self.feed_forward = feed_forward self.sublayer = clones(SublayerConnection(size, dropout), 2) self.size = size def forward(self, x, mask): "Follow Figure 1 (left) for connections." # TODO FIXME not mask has problem .. just set None now #x = self.sublayer[0](x, lambda x: self.self_attn(x, x, x, mask)) x = self.sublayer[0](x, lambda x: self.self_attn(x, x, x, None)) return self.sublayer[1](x, self.feed_forward) def attention(query, key, value, mask=None, dropout=None): "Compute 'Scaled Dot Product Attention'" d_k = query.size(-1) scores = torch.matmul(query, key.transpose(-2, -1)) \ / math.sqrt(d_k) if mask is not None: #print(scores.shape) #print(mask.shape) scores = scores.masked_fill(mask == 0, -1e9) p_attn = F.softmax(scores, dim = -1) if dropout is not None: p_attn = dropout(p_attn) return torch.matmul(p_attn, value), p_attn class MultiHeadedAttention(nn.Module): def __init__(self, h, d_model, dropout=0.1): "Take in model size and number of heads." super(MultiHeadedAttention, self).__init__() assert d_model % h == 0 # We assume d_v always equals d_k self.d_k = d_model // h self.h = h self.linears = clones(nn.Linear(d_model, d_model), 4) self.attn = None self.dropout = nn.Dropout(p=dropout) def forward(self, query, key, value, mask=None): "Implements Figure 2" if mask is not None: # Same mask applied to all h heads. mask = mask.unsqueeze(1) nbatches = query.size(0) # 1) Do all the linear projections in batch from d_model => h x d_k query, key, value = \ [l(x).view(nbatches, -1, self.h, self.d_k).transpose(1, 2) for l, x in zip(self.linears, (query, key, value))] # 2) Apply attention on all the projected vectors in batch. x, self.attn = attention(query, key, value, mask=mask, dropout=self.dropout) # 3) "Concat" using a view and apply a final linear. x = x.transpose(1, 2).contiguous() \ .view(nbatches, -1, self.h * self.d_k) return self.linears[-1](x) class PositionwiseFeedForward(nn.Module): "Implements FFN equation." def __init__(self, d_model, d_ff, dropout=0.1): super(PositionwiseFeedForward, self).__init__() self.w_1 = nn.Linear(d_model, d_ff) self.w_2 = nn.Linear(d_ff, d_model) self.dropout = nn.Dropout(dropout) def forward(self, x): return self.w_2(self.dropout(F.relu(self.w_1(x)))) class Embeddings(nn.Module): def __init__(self, d_model, vocab): super(Embeddings, self).__init__() self.lut = nn.Embedding(vocab, d_model) self.d_model = d_model def forward(self, x): return self.lut(x) * math.sqrt(self.d_model) class PositionalEncoding(nn.Module): "Implement the PE function." def __init__(self, d_model, dropout, max_len=5000): super(PositionalEncoding, self).__init__() self.dropout = nn.Dropout(p=dropout) # Compute the positional encodings once in log space. pe = torch.zeros(max_len, d_model) #position = torch.arange(0, max_len).unsqueeze(1) position = torch.arange(0, max_len).unsqueeze(1).float() #https://stackoverflow.com/questions/52922445/runtimeerror-exp-not-implemented-for-torch-longtensor #div_term = torch.exp(torch.arange(0, d_model, 2) * # -(math.log(10000.0) / d_model)) div_term = torch.exp(torch.arange(0., d_model, 2) * -(math.log(10000.0) / d_model)) pe[:, 0::2] = torch.sin(position * div_term) pe[:, 1::2] = torch.cos(position * div_term) pe = pe.unsqueeze(0) self.register_buffer('pe', pe) def forward(self, x): x = x + Variable(self.pe[:, :x.size(1)], requires_grad=False) return self.dropout(x) def make_model(src_vocab, tgt_vocab, N=6, d_model=512, d_ff=2048, h=8, dropout=0.1): "Helper: Construct a model from hyperparameters." c = copy.deepcopy attn = MultiHeadedAttention(h, d_model) ff = PositionwiseFeedForward(d_model, d_ff, dropout) position = PositionalEncoding(d_model, dropout) model = EncoderDecoder( Encoder(EncoderLayer(d_model, c(attn), c(ff), dropout), N), Decoder(DecoderLayer(d_model, c(attn), c(attn), c(ff), dropout), N), nn.Sequential(Embeddings(d_model, src_vocab), c(position)), nn.Sequential(Embeddings(d_model, tgt_vocab), c(position)), Generator(d_model, tgt_vocab)) # This was important from their code. # Initialize parameters with Glorot / fan_avg. for p in model.parameters(): if p.dim() > 1: nn.init.xavier_uniform_(p) return model def get_encoder(src_vocab, N=6, d_model=512, d_ff=2048, h=8, dropout=0.1): "Helper: Construct a model from hyperparameters." c = copy.deepcopy attn = MultiHeadedAttention(h, d_model) ff = PositionwiseFeedForward(d_model, d_ff, dropout) position = PositionalEncoding(d_model, dropout) model = Encoder(EncoderLayer(d_model, c(attn), c(ff), dropout), N) # This was important from their code. # Initialize parameters with Glorot / fan_avg. for p in model.parameters(): if p.dim() > 1: nn.init.xavier_uniform_(p) return model ================================================ FILE: utils/lele/layers/util.py ================================================ """ Assorted utilities for working with neural networks in AllenNLP. """ from collections import defaultdict from typing import Dict, List, Optional, Any, Tuple, Callable import logging import itertools import math import torch from torch.autograd import Variable def get_lengths_from_binary_sequence_mask(mask: torch.Tensor): """ Compute sequence lengths for each batch element in a tensor using a binary mask. Parameters ---------- mask : torch.Tensor, required. A 2D binary mask of shape (batch_size, sequence_length) to calculate the per-batch sequence lengths from. Returns ------- A torch.LongTensor of shape (batch_size,) representing the lengths of the sequences in the batch. """ return mask.long().sum(-1) def sort_batch_by_length(tensor: torch.autograd.Variable, sequence_lengths: torch.autograd.Variable): """ Sort a batch first tensor by some specified lengths. Parameters ---------- tensor : Variable(torch.FloatTensor), required. A batch first Pytorch tensor. sequence_lengths : Variable(torch.LongTensor), required. A tensor representing the lengths of some dimension of the tensor which we want to sort by. Returns ------- sorted_tensor : Variable(torch.FloatTensor) The original tensor sorted along the batch dimension with respect to sequence_lengths. sorted_sequence_lengths : Variable(torch.LongTensor) The original sequence_lengths sorted by decreasing size. restoration_indices : Variable(torch.LongTensor) Indices into the sorted_tensor such that ``sorted_tensor.index_select(0, restoration_indices) == original_tensor`` permuation_index : Variable(torch.LongTensor) The indices used to sort the tensor. This is useful if you want to sort many tensors using the same ordering. """ if not isinstance(tensor, Variable) or not isinstance(sequence_lengths, Variable): raise Exception("Both the tensor and sequence lengths must be torch.autograd.Variables.") sorted_sequence_lengths, permutation_index = sequence_lengths.sort(0, descending=True) sorted_tensor = tensor.index_select(0, permutation_index) # This is ugly, but required - we are creating a new variable at runtime, so we # must ensure it has the correct CUDA vs non-CUDA type. We do this by cloning and # refilling one of the inputs to the function. index_range = sequence_lengths.data.clone().copy_(torch.arange(0, len(sequence_lengths))) # This is the equivalent of zipping with index, sorting by the original # sequence lengths and returning the now sorted indices. index_range = Variable(index_range.long()) _, reverse_mapping = permutation_index.sort(0, descending=False) restoration_indices = index_range.index_select(0, reverse_mapping) return sorted_tensor, sorted_sequence_lengths, restoration_indices, permutation_index def get_final_encoder_states(encoder_outputs: torch.Tensor, mask: torch.Tensor, bidirectional: bool = False) -> torch.Tensor: """ Given the output from a ``Seq2SeqEncoder``, with shape ``(batch_size, sequence_length, encoding_dim)``, this method returns the final hidden state for each element of the batch, giving a tensor of shape ``(batch_size, encoding_dim)``. This is not as simple as ``encoder_outputs[:, -1]``, because the sequences could have different lengths. We use the mask (which has shape ``(batch_size, sequence_length)``) to find the final state for each batch instance. Additionally, if ``bidirectional`` is ``True``, we will split the final dimension of the ``encoder_outputs`` into two and assume that the first half is for the forward direction of the encoder and the second half is for the backward direction. We will concatenate the last state for each encoder dimension, giving ``encoder_outputs[:, -1, :encoding_dim/2]`` concated with ``encoder_outputs[:, 0, encoding_dim/2:]``. """ # These are the indices of the last words in the sequences (i.e. length sans padding - 1). We # are assuming sequences are right padded. # Shape: (batch_size,) last_word_indices = mask.sum(1).long() - 1 batch_size, _, encoder_output_dim = encoder_outputs.size() expanded_indices = last_word_indices.view(-1, 1, 1).expand(batch_size, 1, encoder_output_dim) # Shape: (batch_size, 1, encoder_output_dim) final_encoder_output = encoder_outputs.gather(1, expanded_indices) final_encoder_output = final_encoder_output.squeeze(1) # (batch_size, encoder_output_dim) if bidirectional: final_forward_output = final_encoder_output[:, :(encoder_output_dim // 2)] final_backward_output = encoder_outputs[:, 0, (encoder_output_dim // 2):] final_encoder_output = torch.cat([final_forward_output, final_backward_output], dim=-1) return final_encoder_output def get_dropout_mask(dropout_probability: float, tensor_for_masking: torch.autograd.Variable): """ Computes and returns an element-wise dropout mask for a given tensor, where each element in the mask is dropped out with probability dropout_probability. Note that the mask is NOT applied to the tensor - the tensor is passed to retain the correct CUDA tensor type for the mask. Parameters ---------- dropout_probability : float, required. Probability of dropping a dimension of the input. tensor_for_masking : torch.Variable, required. Returns ------- A torch.FloatTensor consisting of the binary mask scaled by 1/ (1 - dropout_probability). This scaling ensures expected values and variances of the output of applying this mask and the original tensor are the same. """ binary_mask = tensor_for_masking.clone() binary_mask.data.copy_(torch.rand(tensor_for_masking.size()) > dropout_probability) # Scale mask by 1/keep_prob to preserve output statistics. dropout_mask = binary_mask.float().div(1.0 - dropout_probability) return dropout_mask def block_orthogonal(tensor: torch.Tensor, split_sizes: List[int], gain: float = 1.0) -> None: """ An initializer which allows initializing model parameters in "blocks". This is helpful in the case of recurrent models which use multiple gates applied to linear projections, which can be computed efficiently if they are concatenated together. However, they are separate parameters which should be initialized independently. Parameters ---------- tensor : ``torch.Tensor``, required. A tensor to initialize. split_sizes : List[int], required. A list of length ``tensor.ndim()`` specifying the size of the blocks along that particular dimension. E.g. ``[10, 20]`` would result in the tensor being split into chunks of size 10 along the first dimension and 20 along the second. gain : float, optional (default = 1.0) The gain (scaling) applied to the orthogonal initialization. """ if isinstance(tensor, Variable): # in pytorch 4.0, Variable equals Tensor # block_orthogonal(tensor.data, split_sizes, gain) #else: sizes = list(tensor.size()) if any([a % b != 0 for a, b in zip(sizes, split_sizes)]): raise ConfigurationError("tensor dimensions must be divisible by their respective " "split_sizes. Found size: {} and split_sizes: {}".format(sizes, split_sizes)) indexes = [list(range(0, max_size, split)) for max_size, split in zip(sizes, split_sizes)] # Iterate over all possible blocks within the tensor. for block_start_indices in itertools.product(*indexes): # A list of tuples containing the index to start at for this block # and the appropriate step size (i.e split_size[i] for dimension i). index_and_step_tuples = zip(block_start_indices, split_sizes) # This is a tuple of slices corresponding to: # tensor[index: index + step_size, ...]. This is # required because we could have an arbitrary number # of dimensions. The actual slices we need are the # start_index: start_index + step for each dimension in the tensor. block_slice = tuple([slice(start_index, start_index + step) for start_index, step in index_and_step_tuples]) tensor[block_slice] = torch.nn.init.orthogonal_(tensor[block_slice].contiguous(), gain=gain) ================================================ FILE: utils/lele/losses/__init__.py ================================================ from lele.losses.losses import * ================================================ FILE: utils/lele/losses/losses.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file losses.py # \author chenghuige # \date 2018-11-01 17:09:04.464856 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import torch class BiLMCriterion(object): def __init__(self): self.loss_fn = torch.nn.CrossEntropyLoss(reduction='sum') def forward(self, model, x, y, training=False): fw_y = torch.zeros_like(y) bw_y = torch.zeros_like(y) # Notice tf not support item assignment, even eager fw_y[:, 0:-1] = y[:, 1:] bw_y[:, 1:] = y[:, 0:-1] # print(fw_y) # print(bw_y) num_targets = torch.sum((fw_y > 0).long()) fw_mask = fw_y > 0 bw_mask = bw_y > 0 # -1 to ignore padding index 0 fw_y = fw_y.masked_select(fw_mask) - 1 bw_y = bw_y.masked_select(bw_mask) - 1 y_ = model.encode(x, training=training) fw_y_, bw_y_ = y_.chunk(2, -1) fw_y_ = fw_y_.masked_select(fw_mask.unsqueeze(-1)).view(-1, model.num_units) bw_y_ = bw_y_.masked_select(bw_mask.unsqueeze(-1)).view(-1, model.num_units) fw_y_ = model.encode.hidden2tag(fw_y_) bw_y_ = model.encode.hidden2tag(bw_y_) if num_targets > 0: fw_loss = self.loss_fn(fw_y_, fw_y) bw_loss = self.loss_fn(bw_y_, bw_y) loss = (fw_loss + bw_loss) / 2. #print(y.shape, num_targets, fw_loss, bw_loss, loss) loss = loss / num_targets.float() else: loss = torch.tensor(0.0).cuda() return loss ================================================ FILE: utils/lele/ops/__init__.py ================================================ from lele.ops.ops import * ================================================ FILE: utils/lele/ops/ops.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file ops.py # \author chenghuige # \date 2018-09-30 21:44:39.920227 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import numpy as np import torch from torch.autograd import Variable # https://github.com/rdipietro/pytorch/blob/4c00324affb8c6d53d4362e321ea0e99ede6cfde/torch/nn/utils/rnn.py def reverse_padded_sequence(inputs, lengths, batch_first=False): """Reverses sequences according to their lengths. Inputs should have size ``T x B x *`` if ``batch_first`` is False, or ``B x T x *`` if True. T is the length of the longest sequence (or larger), B is the batch size, and * is any number of dimensions (including 0). Arguments: inputs (Variable): padded batch of variable length sequences. lengths (list[int]): list of sequence lengths batch_first (bool, optional): if True, inputs should be B x T x *. Returns: A Variable with the same size as inputs, but with each sequence reversed according to its length. """ if batch_first: inputs = inputs.transpose(0, 1) max_length, batch_size = inputs.size(0), inputs.size(1) if len(lengths) != batch_size: raise ValueError('inputs is incompatible with lengths.') ind = [list(reversed(range(0, length))) + list(range(length, max_length)) for length in lengths] ind = Variable(torch.LongTensor(ind).transpose(0, 1)) for dim in range(2, inputs.dim()): ind = ind.unsqueeze(dim) ind = ind.expand_as(inputs) if inputs.is_cuda: ind = ind.cuda(inputs.get_device()) reversed_inputs = torch.gather(inputs, 0, ind) if batch_first: reversed_inputs = reversed_inputs.transpose(0, 1) return reversed_inputs #https://discuss.pytorch.org/t/how-to-tile-a-tensor/13853/4 def tile(a, dim, n_tile): init_dim = a.size(dim) repeat_idx = [1] * a.dim() repeat_idx[dim] = n_tile a = a.repeat(*(repeat_idx)) order_index = torch.LongTensor(np.concatenate([init_dim * np.arange(n_tile) + i for i in range(init_dim)])).cuda() return torch.index_select(a, dim, order_index) ================================================ FILE: utils/lele/training/__init__.py ================================================ import lele.training.optimizers ================================================ FILE: utils/lele/training/optimizers.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file optimizers.py # \author chenghuige # \date 2018-10-29 07:06:55.090940 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os # http://nlp.seas.harvard.edu/2018/04/03/attention.html class NoamOpt: "Optim wrapper that implements rate." def __init__(self, model_size, factor, warmup, optimizer): self.optimizer = optimizer self._step = 0 self.warmup = warmup self.factor = factor self.model_size = model_size self._rate = 0 self.param_groups = self.optimizer.param_groups def step(self): "Update parameters and rate" self._step += 1 rate = self.rate() for p in self.optimizer.param_groups: p['lr'] = rate self._rate = rate self.optimizer.step() def rate(self, step = None): "Implement `lrate` above" if step is None: step = self._step return self.factor * \ (self.model_size ** (-0.5) * min(step ** (-0.5), step * self.warmup ** (-1.5))) def zero_grad(self): self.optimizer.zero_grad() def state_dict(self): return self.optimizer.state_dict() def load_state_dict(self, x): return self.optimizer.load_state_dict(x) def get_std_opt(model): return NoamOpt(model.src_embed[0].d_model, 2, 4000, torch.optim.Adam(model.parameters(), lr=0, betas=(0.9, 0.98), eps=1e-9)) def lr_poly(base_lr, iter, max_iter, end_learning_rate, power): return max((base_lr - end_learning_rate) * ((1-float(iter)/max_iter)**(power)), end_learning_rate) class BertOpt: "Optim wrapper that implements rate." def __init__(self, lr, min_lr, num_train_steps, warmup, optimizer): self.optimizer = optimizer self._step = 0 self.warmup = warmup self._rate = 0 self.lr = lr self.ori_min_lr = min_lr self.min_lr = min_lr self.num_train_steps = num_train_steps self.param_groups = self.optimizer.param_groups def step(self): "Update parameters and rate" self._step += 1 rate = self.rate() for p in self.optimizer.param_groups: p['lr'] = rate self._rate = rate self.optimizer.step() def rate(self, step = None): "Implement `lrate` above" if step is None: step = self._step warmup_percent_done = step / self.warmup warmup_learning_rate = self.lr * warmup_percent_done is_warmup = step < self.warmup learning_rate = lr_poly(self.lr, step, self.num_train_steps, self.min_lr, 1.) learning_rate = ((1.0 - is_warmup) * learning_rate + is_warmup * warmup_learning_rate) #print('-----------------', is_warmup, warmup_percent_done, warmup_learning_rate, warmup_learning_rate) return learning_rate def zero_grad(self): self.optimizer.zero_grad() def state_dict(self): return self.optimizer.state_dict() def load_state_dict(self, x): return self.optimizer.load_state_dict(x) if __name__ == '__main__': import matplotlib.pyplot as plt import numpy as np opts = [NoamOpt(512, 1, 4000, None), NoamOpt(512, 1, 8000, None), NoamOpt(256, 1, 4000, None), NoamOpt(200, 2, 4000, None), NoamOpt(256, 2, 4000, None), NoamOpt(300, 2, 4000, None), NoamOpt(128, 2, 4000, None)] plt.plot(np.arange(1, 20000), [[opt.rate(i) for opt in opts] for i in range(1, 20000)]) plt.legend(["512:4000", "512:8000", "256:4000", "200:2:4000", "256:2:4000", "300:2:4000", "128:2:4000"]) for i in range(1, 40000, 1000): print(i, NoamOpt(200, 2, 2000, None).rate(i)) plt.savefig('/home/gezi/tmp/lr.png') ================================================ FILE: utils/lele/util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file util.py # \author chenghuige # \date 2018-10-17 06:52:08.997327 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import torch from torch import nn #from torch.utils.data import Dataset, ConcatDataset import copy import traceback import numpy as np import gezi logging = gezi.logging def adjust_lrs(x, ratio=None, name='learning_rate_weights'): import tensorflow as tf if ratio is None: ratios = tf.get_collection(name)[-1].numpy() # TODO will this hurt performance ? change to use learning rate weights without tf dependence? ratios = torch.from_numpy(ratios).cuda() x = x * ratios + x.detach() * (1 - ratios) else: x = x * ratio + x.detach() * (1 - ratio) return x def load(model, path): try: checkpoint = torch.load(path) state = checkpoint['state_dict'] model_ = model.module if hasattr(model, 'module') else model new_state = {} for key, val in state.items(): if key in model_.state_dict(): new_state[key] = val logging.info('Updated %d keys from checkpoint %s, eopoch:%d, step:%d' % (len(new_state), path, checkpoint['epoch'], checkpoint['step'])) new_params = model_.state_dict() new_params.update(new_state) model_.load_state_dict(new_params) model.eval() updated_params = [] for name, param in model_.named_parameters(): if name in new_state: updated_params.append(param) return checkpoint, updated_params except Exception: logging.info(traceback.print_exc()) return None, [] def clones(module, N): "Produce N identical layers." return nn.ModuleList([copy.deepcopy(module) for _ in range(N)]) try: import torch device = torch.device("cuda" if torch.cuda.is_available() else "cpu") except Exception: pass import numpy as np def torch_(x): for dim in x.shape: if dim == 0: return x #x = x.numpy() if x.dtype == np.int64 or x.dtype == np.int32 or x.dtype == np.float32 or x.dtype == np.float64: x = torch.from_numpy(x) #if torch.cuda.is_available(): #x = x.cuda() #x = x.cuda() x = x.to(device) return x def to_torch(x, y=None): if y is not None: y = torch_(y) for key in x: x[key] = torch_(x[key]) if y is None: return x else: return x, y #---------------padding input data #https://discuss.pytorch.org/t/dataloader-for-various-length-of-data/6418/12 def pad_tensor(vec, pad, dim): """ args: vec - tensor to pad pad - the size to pad to dim - dimension to pad return: a new tensor padded to 'pad' in dimension 'dim' """ pad_size = list(vec.shape) pad_size[dim] = pad - vec.size(dim) return torch.cat([vec, torch.zeros(*pad_size, dtype=vec.dtype)], dim=dim) class PadCollate2: """ a variant of callate_fn that pads according to the longest sequence in a batch of sequences """ def __init__(self, dim=0): """ args: dim - the dimension to be padded (dimension of time in sequences) """ self.dim = dim def pad_collate(self, batch): """ args: batch - list of (tensor, label) reutrn: xs - a tensor of all examples in 'batch' after padding ys - a LongTensor of all labels in batch """ # find longest sequence max_len = max([torch.Tensor(x[0]).shape[self.dim] for x in batch]) #print('----------', max_len) # pad according to max_len batch = [(pad_tensor(torch.Tensor(x[0]), pad=max_len, dim=self.dim), x[1]) for x in batch] # stack all xs = torch.stack([torch.Tensor(x[0]) for x in batch], dim=0) ys = torch.Tensor([x[1] for x in batch]) return xs, ys def __call__(self, batch): return self.pad_collate(batch) class PadCollate: """ a variant of callate_fn that pads according to the longest sequence in a batch of sequences """ def __init__(self, dim=0): """ args: dim - the dimension to be padded (dimension of time in sequences) """ self.dim = dim def pad_collate(self, batch): """ args: batch - list of (tensor, label) reutrn: xs - a tensor of all examples in 'batch' after padding ys - a LongTensor of all labels in batch """ # find longest sequence max_len = max([x[0].size(self.dim) for x in batch]) #print('----------', max_len) # pad according to max_len batch = [(pad_tensor(x[0], pad=max_len, dim=self.dim), x[1]) for x in batch] # stack all xs = torch.stack([x[0] for x in batch], dim=0) ys = torch.Tensor([x[1] for x in batch]) return xs, ys def __call__(self, batch): return self.pad_collate(batch) class DictPadCollate2: """ a variant of callate_fn that pads according to the longest sequence in a batch of sequences """ def __init__(self, dim=0): """ args: dim - the dimension to be padded (dimension of time in sequences) """ self.dim = dim def pad_collate(self, batch): ys = [None] * len(batch) input = {} ys[0] = batch[0][1] max_len = {} for key, val in batch[0][0].items(): if isinstance(val, list): if type(val[0]) == int: val = torch.from_numpy(np.array(val)) else: val = torch.from_numpy(np.array(val)).float() max_len[key] = len(val) input[key] = [val] * len(batch) for i in range(1, len(batch)): ys[i] = batch[i][1] for key, val in batch[i][0].items(): if isinstance(val, list): if type(val[0]) == int: val = torch.from_numpy(np.array(val)) else: val = torch.from_numpy(np.array(val)).float() if len(val) > max_len[key]: max_len[key] = len(val) input[key][i] = val for key, val_list in input.items(): if key in max_len: for i in range(len(val_list)): val_list[i] = pad_tensor(val_list[i], pad=max_len[key], dim=self.dim) #print(i, val_list[i].shape, max_len[key]) input[key] = torch.stack(val_list, dim=0) else: #... TODO why np.arry.dtype not dp.str_ but max_len[key]: max_len[key] = val.size(self.dim) input[key][i] = val for key, val_list in input.items(): if key in max_len: for i in range(len(val_list)): val_list[i] = pad_tensor(val_list[i], pad=max_len[key], dim=self.dim) input[key] = torch.stack(val_list, dim=0) else: input[key] = np.array(input[key]) #list of tensor -> ys = torch.stack(ys, dim=0) return input, ys def __call__(self, batch): return self.pad_collate(batch) ================================================ FILE: utils/melt/__init__.py ================================================ from __future__ import absolute_import from __future__ import division from __future__ import print_function import warnings warnings.simplefilter("ignore", RuntimeWarning) warnings.filterwarnings("ignore", category=FutureWarning) try: import matplotlib matplotlib.use('Agg') except Exception: pass import tensorflow as tf import traceback import sys print('tensorflow_version:', tf.__version__, file=sys.stderr) try: import torch print('torch_version:', torch.__version__, file=sys.stderr) except Exception: print("torch not found") from melt.training import training as train import melt.training import melt.utils from melt.utils import logging from melt.utils import EmbeddingSim from melt.util import * from melt.ops import * from melt.variable import * from melt.tfrecords import * from melt.tfrecords.dataset import Dataset from melt.inference import * import melt.layers import melt.slim2 import melt.flow from melt.flow import projector_config import melt.metrics from melt.metrics import * try: import melt.apps from melt.apps.train import * except Exception: print(traceback.format_exc(), file=sys.stderr) pass import melt.rnn import melt.cnn import melt.encoder import melt.seq2seq import melt.image from melt.image import * import melt.losses import melt.eager import melt.torch ================================================ FILE: utils/melt/apps/__init__.py ================================================ #!/usr/bin/env python # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-17 10:28:41.619685 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #import melt.apps.train from melt.apps.train import * import melt.apps.image_processing ================================================ FILE: utils/melt/apps/image_processing.py ================================================ #!/usr/bin/env python # ============================================================================== # \file image_processing.py # \author chenghuige # \date 2017-04-07 08:49:43.118136 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import melt # from melt import logging flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS image_processing_fn = None def init(image_model_name=None, feature_name=None, num_classes=None, preprocess_image=True, im2text_prcocessing=False): global image_processing_fn if image_processing_fn is None: assert image_model_name is not None if im2text_prcocessing: raise ValueError('not use im2txt anymore') image_processing_fn = melt.image.image_processing.create_image2feature_fn(image_model_name) else: image_processing_fn = melt.image.image_processing.create_image2feature_slim_fn(image_model_name, feature_name=feature_name, num_classes=num_classes, preprocess_image=preprocess_image) return image_processing_fn ================================================ FILE: utils/melt/apps/read.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read.py # \author chenghuige # \date 2016-08-17 10:30:16.621213 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import melt flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS ''' deprecated not used ''' flags.DEFINE_integer('num_epochs', 0, 'Number of epochs to run trainer.') flags.DEFINE_integer('num_preprocess_threads', 12, '') flags.DEFINE_boolean('batch_join', True, '') flags.DEFINE_boolean('shuffle', True, '') flags.DEFINE_integer('min_after_dequeue', 20000, '') def sparse_inputs(files, decode, batch_size=64): return melt.tfrecords.read_sparse.inputs(files, decode, batch_size=batch_size, num_epochs=FLAGS.num_epochs, num_preprocess_threads=FLAGS.num_preprocess_threads, shuffle=FLAGS.shuffle, batch_join=FLAGS.batch_join, min_after_dequeue=FLAGS.min_after_dequeue) def inputs(files, decode, batch_size=64): return melt.tfrecords.read.inputs(files, decode, batch_size=batch_size, num_epochs=FLAGS.num_epochs, num_preprocess_threads=FLAGS.num_preprocess_threads, shuffle=FLAGS.shuffle, batch_join=FLAGS.batch_join, min_after_dequeue=FLAGS.min_after_dequeue) ================================================ FILE: utils/melt/apps/train.py ================================================ #!/usr/bin/env python # ============================================================================== # \file train.py # \author chenghuige # \date 2016-08-17 10:30:20.286494 # \Description METRIC=1 python .... just run metric eval # ============================================================================== """ not supporting averaging and multi gpu yet @TODO [`tf.moving_average_variables()`](../../api_docs/python/state_ops.md#moving_average_variables) here what we do is create train_op from loss and may be using multi gpu deal """ from __future__ import absolute_import from __future__ import division from __future__ import print_function __pacage__ = None import sys import os import inspect import gezi import melt from tensorflow.python import debug as tf_debug import tensorflow.contrib.slim as slim from tqdm import tqdm import numpy as np #or from melt.utils import logging import melt.utils.logging as logging #import logging import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' tfe = tf.contrib.eager if sys.version_info > (3,): long = int import traceback # new tf seems to try to use absl which has def of log_dir TODO try: flags.DEFINE_string('log_dir', None, '''if none will set to model_dir ''') except Exception: pass #-------input data flags.DEFINE_integer('batch_size', 32, 'Batch size. default as im2text default') flags.DEFINE_integer('eval_batch_size', None, 'Batch size fore eval') #-------flow flags.DEFINE_integer('num_epochs', 0, '''Number of epochs to run trainer. 0 means run forever epochs, -1 mens you want to just run 1 step and stop!, usefull when you want to do eval all once''') flags.DEFINE_integer('num_steps', 0, '''Number of steps to run trainer. 0 means run forever, -1 means you just want to build graph and save without training(changing model value)''') #-------model flags.DEFINE_string('model_dir', None, '') flags.DEFINE_boolean('save_model', True, '') flags.DEFINE_float('save_interval_epochs', 1, 'if 0 will not save, by default 1 epoch 1 model in modeldir/epoch, you can change to 2, 0.1 etc') flags.DEFINE_float('save_interval_seconds', 0, 'model/checkpoint save interval by n seconds, if > 0 will use this other wise use save_interval_hours') flags.DEFINE_float('save_interval_hours', 10000, """model/checkpoint save interval by n hours""") flags.DEFINE_float('save_interval_steps', 1000, 'model/checkpoint save interval steps') flags.DEFINE_bool('freeze_graph', True, '''if True like image caption set this to True, will load model faster when inference, but sometimes it is slow to freeze, might due to tf bug, then you can set it to False, if you do not need inference also set to False to speed up training, TODO FIXME for cudnn right now if not set feeze graph can not load, is a bug of melt ?''') flags.DEFINE_integer('max_models_keep', 2, 'keep recent n models, default 2 for safe') flags.DEFINE_boolean('restore_from_latest', True, 'more safe to restore from recent but not latest') #--------show flags.DEFINE_integer('interval_steps', 100, '') flags.DEFINE_integer('valid_interval_steps', 100, """for training suggest 10000, you can check evaluate interval time and evaluate once time the ratio below 0.1""") flags.DEFINE_integer('metric_eval_interval_steps', 0, 'if > 0 need to be valid_interval_steps * n') flags.DEFINE_boolean('metric_eval', True, '') flags.DEFINE_float('train_interval_epochs', 1, '') flags.DEFINE_float('valid_interval_epochs', 1, '') flags.DEFINE_float('test_interval_epochs', 1, '') flags.DEFINE_float('inference_interval_epochs', 1, '') flags.DEFINE_boolean('write_during_train', True, '') flags.DEFINE_integer('eval_loops', 1, 'set to max inorder to hack for evaluation..') #----------optimize #flags.DEFINE_string('optimizer', 'adadelta', 'follow squad of ukhst https://www.quora.com/Why-is-AdaDelta-not-favored-in-Deep-Learning-communities-while-AdaGrad-is-preferred-by-many-over-other-SGD-variants') flags.DEFINE_string('optimizer', 'adam', 'follow squad of ukhst https://www.quora.com/Why-is-AdaDelta-not-favored-in-Deep-Learning-communities-while-AdaGrad-is-preferred-by-many-over-other-SGD-variants') flags.DEFINE_float('momentum', 0.9, 'follow cifar10 default') flags.DEFINE_float('opt_epsilon', 1e-6, 'follow squad of ukhst') # flags.DEFINE_float('learning_rate', 0.5, """follow squad of ukhst # Initial learning rate. for adgrad especially, # notice keras set for adgrad 0.01 # but seems bad perf hard to converge for some seq2seq/lstm training # see textsum/train/shangpinming/seq2seq-gen-copy-switch.sh""") flags.DEFINE_float('learning_rate', 0.001, """adam will be 0.001 default is adam default lr""") flags.DEFINE_float('min_learning_rate', 1e-6, 'min learning rate used for dyanmic eval metric decay') flags.DEFINE_float('learning_rate_start_factor', 1., '') #flags.DEFINE_float('learning_rate_decay_factor', 0.97, 'im2txt 0.5, follow nasnet using 0.97') flags.DEFINE_float('learning_rate_decay_factor', 0., 'im2txt 0.5, follow nasnet using 0.97') flags.DEFINE_boolean('dynamic_learning_rate', False, '') flags.DEFINE_integer('learning_rate_patience', None, 'might be 3 for 3 times eval loss no decay') flags.DEFINE_float('decay_start_epoch', 0., 'start decay from epoch') flags.DEFINE_float('num_epochs_per_decay', 2.4, 'follow nasnet') flags.DEFINE_integer('decay_start_step', 0, 'start decay from steps') flags.DEFINE_integer('num_steps_per_decay', 0, 'if 0 no effect, if > 0 then will not use this instead of num_epochs_per_decay') flags.DEFINE_string('learning_rate_values', None, 'like 0.1,0.05,0.005') flags.DEFINE_string('learning_rate_step_boundaries', None, 'like 10000,20000') flags.DEFINE_string('learning_rate_epoch_boundaries', None, 'like 10,30 or 10.5,30.6') flags.DEFINE_integer('num_learning_rate_weights', 0, '') flags.DEFINE_float('warmup_proportion', 0.1, '0.1') flags.DEFINE_float('warmup_epochs', None, '') flags.DEFINE_integer('warmup_steps', None, 'if set then warmup proportion not on effect, can be set like 2000') flags.DEFINE_float('num_decay_epochs', None, '') #cosine learning rate method flags.DEFINE_float('learning_rate_cosine_t_mul', 2., '') flags.DEFINE_float('learning_rate_cosine_m_mul', 1., '') flags.DEFINE_float('learning_rate_cosine_alpha', 0., '') flags.DEFINE_string('learning_rate_method', 'decay', 'decay or cosine') #flags.DEFINE_string('lr_ratios', None, '0.2,1,0.2,1,1,1') flags.DEFINE_boolean('use_finetune_step', False, '') flags.DEFINE_boolean('use_finetune2_step', False, '') flags.DEFINE_float('clip_gradients', 5.0, """follow im2text as 5.0 default, set to 1.0 in deeipiu/image_caption try sh ./train/flickr-rnn.sh, will show perf from 900inst/s to 870ints/s and also slow convergence""") flags.DEFINE_boolean('optimize_has_scope', True, '') #----------train flags.DEFINE_boolean('train_only', False, '') flags.DEFINE_boolean('train_all', False, 'use for small dataset like competetion or standard dataset where use k folds for train/valid and use all k parts if set train_all==True') flags.DEFINE_string('work_mode', 'train', '') flags.DEFINE_integer('monitor_level', 2, '1 will monitor emb, 2 will monitor gradient') flags.DEFINE_integer('log_level', 0, '') flags.DEFINE_boolean('no_log', False, '') #flags.DEFINE_string('mode', 'train', 'or predict') flags.DEFINE_boolean('freeze_graph_collections', True, '') flags.DEFINE_boolean('use_tower_loss', True, '') #----------multi gpu ##TODO be carefull to use mult gpu mode, since for some case it will casue performance lower then single gpu mode ##especially for finetune image model or some models that will cause sess.run summary catch exception FIXME ##also google paper lessons from 2015 coco caption contest show and tell model will have low performance also using ##multi gpu so they use single gpu training flags.DEFINE_integer('num_gpus', 0, """How many GPUs to use. set 0 to disable multi gpu mode""") flags.DEFINE_boolean('log_device_placement', False, """Whether to log device placement.""") flags.DEFINE_boolean('batch_size_per_gpu', False, ''' per gpu batch size should be dived by gpu num ? True means, if num_gpus = 2, batch_size set 128, then each gpu with batch size 128, which means batch_size is actually batch_size_per_gpu means 256 insts per step actually, if num_gpus == 0, will try to read env info if you set like CUDA_VISIABLE_DIVICES=0,1 then actually will use 2 GPUS, and 256 insts per step also if not find CUDA_VISIABLE_DIVICES infoep then, just use 1 GPU, single gpu mode, 128 insts per step if num_gpus == 1, also 1GPU, 128 insts per step, but will use tower_loss with 1 gpu(mainly for test if tower_loss ok) not used much, so if you want use single gpu, just set num_gpus=0 if batch_size_per_gpu = False, with 2gpu, then it means each GPU will be of batch size 128 / 2 = 64, total insts are still 128 per step batch_size_per_gpu False is better for debug, all program, deal same num instances so better for comparation batch_size_per_gpu True is better for speed up, fully use multi gpu, like one gpu can only train batch 32(OOM for bigger batch_size) then 2 gpu can deal 2 * 32 instances per step For experiment simplicity, set it to True by default, same instances per step if increase gpu num ''') flags.DEFINE_string('variable_strategy', 'cpu', '') #----------scope flags.DEFINE_boolean('add_global_scope', True, '''default will add global scope as algo name, set to False incase you want to load some old model without algo scope''') flags.DEFINE_string('global_scope', '', '') flags.DEFINE_string('restore_include', None, '') flags.DEFINE_string('restore_exclude', None, '') flags.DEFINE_string('main_scope', 'main', 'or use other main_scope like run, this is mainly graph scope for varaible reuse') #----- cross fold flags.DEFINE_integer('fold', None, '') flags.DEFINE_integer('num_folds', None, '') #---------- input reader if tf.__version__ > '1.5': flags.DEFINE_boolean('using_dataset', True, '') else: flags.DEFINE_boolean('using_dataset', False, '') flags.DEFINE_string('buckets', None, 'empty meaning not use, other wise looks like 5,10,15,30') flags.DEFINE_string('batch_sizes', None, '') flags.DEFINE_integer('length_index', 1, '') flags.DEFINE_string('length_key', None, '') flags.DEFINE_integer('min_after_dequeue', 0, """by deafualt will be 500, set to large number for production training for better randomness""") flags.DEFINE_integer('buffer_size', 0, """by deafualt will be 500, set to large number for production training for better randomness""") flags.DEFINE_integer('num_prefetch_batches', 0, '') #---------- input dirs #@TODO will not use input pattern but use dir since hdfs now can not support glob well flags.DEFINE_string('train_input', None, 'must provide') flags.DEFINE_string('train_input2', None, 'must provide') flags.DEFINE_string('valid_input', None, 'if empty will train only') flags.DEFINE_string('valid_input2', None, 'some applications might need another valid input') flags.DEFINE_string('test_input', None, 'maily for inference during train epochs') flags.DEFINE_string('fixed_valid_input', None, 'if empty wil not eval fixed images') flags.DEFINE_string('num_records_file', None, '') flags.DEFINE_string('base_dir', '../../../mount', '') flags.DEFINE_boolean('run_valid_op', True, '') flags.DEFINE_boolean('show_eval', True, '') flags.DEFINE_boolean('eval_shuffle_files', True, '') flags.DEFINE_boolean('eval_fix_random', True, '') flags.DEFINE_integer('eval_seed', 1024, '') flags.DEFINE_integer('seed', None, '1024 input seed') flags.DEFINE_boolean('fix_sequence', False, '') flags.DEFINE_string('big_buckets', None, 'empty meaning not use, other wise looks like 5,10,15,30') flags.DEFINE_string('big_batch_sizes', None, '') flags.DEFINE_integer('big_batch_size', None, '') flags.DEFINE_boolean('adjust_global_step', False, '') flags.DEFINE_integer('global_step', None, '') flags.DEFINE_integer('global_epoch', None, '') flags.DEFINE_boolean('eager', False, '') flags.DEFINE_integer('num_threads', 0, """threads for reading input tfrecords, setting to 1 may be faster but less randomness """) flags.DEFINE_boolean('torch', False, 'torch_model Wether use torch model, if true and not torch_only, tf eager read, torch model') flags.DEFINE_boolean('torch_only', False, 'torch_read Wether use torch reader, if true, torch read, torch model') flags.DEFINE_boolean('torch_lr', False, 'False might not work as tf learning rate problem') flags.DEFINE_boolean('torch_finetune', False, '') flags.DEFINE_boolean('torch_load_optimizer', True, '') flags.DEFINE_boolean('test_aug', False, '') flags.DEFINE_integer('batch_size_dim', 0, '') flags.DEFINE_boolean('simple_parse', False, '') # from bert run_classifier.py flags.DEFINE_boolean('use_tpu', False, '') flags.DEFINE_string( "tpu_name", None, "The Cloud TPU to use for training. This should be either the name " "used when creating the Cloud TPU, or a grpc://ip.address.of.tpu:8470 " "url.") flags.DEFINE_string( "tpu_zone", None, "[Optional] GCE zone where the Cloud TPU is located in. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") flags.DEFINE_string( "gcp_project", None, "[Optional] Project name for the Cloud TPU-enabled project. If not " "specified, we will attempt to automatically detect the GCE project from " "metadata.") #tf.flags.DEFINE_string("master", None, "[Optional] TensorFlow master URL.") flags.DEFINE_integer( "num_tpu_cores", 8, "Only used if `use_tpu` is True. Total number of TPU cores to use.") # use horovod to do multiple gpu / server flags.DEFINE_boolean('use_horovod', False, '') flags.DEFINE_boolean('horovod_eval', True, 'wether using multiple gpu for eval and infer, hvd.allgather not work for tf ... currently, mpi4py ok') flags.DEFINE_boolean('horovod_shard', True, 'only consider train, valid/test always shard, if not shard then each rank got 1/n files') flags.DEFINE_boolean('horovod_scale', False, '') try: #import horovod.tensorflow as hvd #import horovod.torch as hvd #hvd.init() import mpi4py from mpi4py import MPI comm = MPI.COMM_WORLD except Exception: print(traceback.format_exc(), file=sys.stderr) #print('---------no horovod support for mutliple gpu, notice we use mpi4py for some allgather op for eval') pass inited = None def init(): assert FLAGS.valid_interval_steps % FLAGS.interval_steps == 0 if FLAGS.torch_only: FLAGS.torch = True # TODO actually FLAGS.use_horovod is not needed as we can infer from environ if 'OMPI_COMM_WORLD_RANK' in os.environ: FLAGS.use_horovod = True if FLAGS.buckets: assert FLAGS.length_key, 'must set length key if using buckets' if FLAGS.use_horovod: mpi4py.rc.initialize = False if not FLAGS.torch: import horovod.tensorflow as hvd hvd.init() logging.set_hvd(hvd) else: import torch import horovod.torch as hvd hvd.init() logging.set_hvd(hvd) torch.cuda.set_device(hvd.local_rank()) assert hvd.mpi_threads_supported() assert hvd.size() == comm.Get_size() logging.info('In Horvod mode using %d gpus' % hvd.size()) if FLAGS.horovod_scale: FLAGS.learning_rate = FLAGS.learning_rate * hvd.size() print('using horovod multipy learning rate by {} to {}'.format(hvd.size(), FLAGS.learning_rate)) if 'TPU' in os.environ and int(os.environ['TPU']) == 1: FLAGS.use_tpu = True if FLAGS.use_tpu: from tensorflow.contrib.tpu.python.tpu import tpu_function # Add this somewhere at the top tpu_function.get_tpu_context().set_number_of_shards(FLAGS.num_tpu_cores) if 'MODEL_DIR' in os.environ: FLAGS.model_dir = os.environ['MODEL_DIR'] if 'METRIC' in os.environ and os.environ['METRIC'] == 'epoch': FLAGS.model_dir = os.path.join(FLAGS.model_dir, 'epoch') if 'DOUBLE_BATCH' in os.environ: FLAGS.batch_size *= 2 if FLAGS.batch_sizes: l = [str(int(x) * 2) for x in FLAGS.batch_sizes.split(',')] FLAGS.batch_sizes = ','.join(l) #FLAGS.model_dir = os.path.join(os.path.dirname(FLAGS.model_dir.rstrip('/')) + '/double', os.path.basename(FLAGS.model_dir.rstrip('/'))) if 'DOUBLE_LEN' in os.environ: if FLAGS.buckets: l = [str(int(x) * 2) for x in FLAGS.buckets.split(',')] FLAGS.buckets = ','.join(l) try: FLAGS.content_limit *= 2 except Exception: pass if 'FOLD' in os.environ: try: FLAGS.fold = int(os.environ['FOLD']) except Exception: sub_dir = os.environ['FOLD'] assert os.path.isdir(FLAGS.model_dir) FLAGS.model_dir = os.path.join(FLAGS.model_dir, sub_dir) pass if not FLAGS.log_dir: if 'log_dir' in os.environ and os.environ['log_dir']: FLAGS.log_dir = os.environ['log_dir'] if not FLAGS.log_dir and FLAGS.model_dir: if os.path.isfile(FLAGS.model_dir): FLAGS.log_dir = os.path.dirname(FLAGS.model_dir) else: FLAGS.log_dir = FLAGS.model_dir if FLAGS.model_dir: if os.path.isfile(FLAGS.model_dir + '.index'): FLAGS.log_dir = os.path.dirname(FLAGS.model_dir) #assert FLAGS.log_dir, 'you need to set log_dir or model_dir' os.system('mkdir -p %s' % FLAGS.log_dir) logging.init(FLAGS.log_dir) #logging.set_dir(FLAGS.log_dir) logging.info('model_dir', FLAGS.model_dir, 'log_dir', FLAGS.log_dir) if 'SCRATCH' in os.environ: if os.path.exists(os.path.join(FLAGS.model_dir, 'log.html')): if not os.path.exists(os.path.join(FLAGS.model_dir, 'log.txt')) or gezi.get_unmodify_minutes(os.path.join(FLAGS.model_dir, 'log.txt')) < 60: logging.info('In scratch mode and found model_dir', FLAGS.model_dir, 'exit(0)') exit(0) else: logging.info('In scratch mode but log.txt un modify for long time, continue running') if 'MODE' in os.environ: FLAGS.work_mode = os.environ['MODE'] if 'PYTORCH' in os.environ or 'PYT' in os.environ or 'TORCH' in os.environ: FLAGS.torch = True #if FLAGS.work_mode != 'train' or FLAGS.eager or 'EAGER' in os.environ and int(os.environ['EAGER']) == 1 or 'SHOW' in os.environ: # well for safe just not by default use eager mode for valid and test since some a bit complex model now still has diff graph and eager, TODO FIXME # TODO torch mode should use tf eager mode reading but since some bug for gpu oom.. now just use graph mode if FLAGS.eager or 'EAGER' in os.environ and int(os.environ['EAGER']) == 1 or 'SHOW' in os.environ or FLAGS.torch: #if FLAGS.eager or 'EAGER' in os.environ and int(os.environ['EAGER']) == 1 or 'SHOW' in os.environ: # if torch and horovod can not use eager mode will conflict with torch.cuda.set_device, each process will use all gpus then if not FLAGS.torch_only: logging.info('-------------RUN IN EAGER MODE!') if FLAGS.torch: # by default tf will use all... and also set 0. not ok so set really small #opts = tf.GPUOptions(per_process_gpu_memory_fraction=1e-5) #conf = tf.ConfigProto(gpu_options=opts) config = tf.ConfigProto(device_count={'GPU': 0}) # config.use_per_session_threads = False # config.allow_soft_placement = False # config.gpu_options.per_process_gpu_memory_fraction = 0.0 # config.gpu_options.allow_growth = True # config.graph_options.enable_recv_scheduling = False # config.graph_options.timeline_step = 0 # config.rpc_options.use_rpc_for_inprocess_master = False # config.gpu_options.visible_device_list = str(hvd.local_rank()) tf.enable_eager_execution(config=config) else: tf.enable_eager_execution() is_eager = tf.executing_eagerly() if not FLAGS.torch: if not is_eager: logging.info('Tf dataset and Tf model train in Graph mode, support Horovod') else: logging.info('Tf dataset and Tf model train in Eager mode, not support Horovod now') else: if not FLAGS.torch_only: logging.info('Tf dataset and Torch model train in Eager mode, not support Horovod now') else: logging.info('Torch dataset and Torch model train, support Horovod') if 'BIG' in os.environ and int(os.environ['BIG']) == 1: if FLAGS.big_batch_size is not None: FLAGS.batch_size = FLAGS.big_batch_size if FLAGS.big_buckets is not None: FLAGS.buckets = FLAGS.big_buckets if FLAGS.big_batch_sizes is not None: FLAGS.batch_sizes = FLAGS.big_batch_sizes # but seems not work ... still different result different run TODO FIXME # looks a bit fixed but not exactly.. if FLAGS.seed or 'SEED' in os.environ: if not FLAGS.seed: FLAGS.seed = int(os.environ['SEED']) tf.set_seed(FLAGS.seed) logging.info('seed', FLAGS.seed) if 'VLOG' in os.environ: FLAGS.log_level = int(os.environ['VLOG']) logging.info('log_level:', FLAGS.log_level) if 'NUM_EPOCHS' in os.environ: FLAGS.num_epochs = int(os.environ['NUM_EPOCHS']) logging.info('Using num_epochs set from env as %d' % FLAGS.num_epochs) if 'NUM_STEPS' in os.environ: FLAGS.num_steps = int(os.environ['NUM_STEPS']) logging.info('Using num_steps set from env as %d' % FLAGS.num_steps) if FLAGS.num_steps < 0: FLAGS.train_only = True if 'EVAL_STEP' in os.environ: FLAGS.metric_eval_interval_steps = int(os.environ['EVAL_STEP']) FLAGS.valid_interval_steps = int(os.environ['EVAL_STEP']) if 'EVAL_STEPS' in os.environ: FLAGS.metric_eval_interval_steps = int(os.environ['EVAL_STEPS']) FLAGS.valid_interval_steps = int(os.environ['EVAL_STEPS']) if 'LEARNING_RATE_DECAY_FACTOR' in os.environ: FLAGS.learning_rate_decay_factor = int(os.environ['LEARNING_RATE_DECAY_FACTOR']) logging.info('Using learning_rate_decay_factor set from env as %d' % FLAGS.learning_rate_decay_factor) if 'BUCKETS' in os.environ: FLAGS.buckets = os.environ['BUCKETS'] logging.info('Using buckets set from env as ', FLAGS.buckets) if 'BATCH_SIZES' in os.environ: FLAGS.batch_sizes = os.environ['BATCH_SIZES'] logging.info('Using batch sizes set from env as ', FLAGS.batch_sizes) if 'NUM_LAYERS' in os.environ: FLAGS.num_layers = int(os.environ['NUM_LAYERS']) logging.info('Using num layers set from env as ', FLAGS.num_layers) # TEST means also inference if 'TEST_INPUT' in os.environ: if int(os.environ['TEST_INPUT']) != 0: if not FLAGS.test_input: assert FLAGS.train_input assert 'train' in FLAGS.train_input FLAGS.test_input = FLAGS.train_input.replace('train', 'test').split(',')[0] else: FLAGS.test_input = None # else: # if not ('TRAIN_ALL' in os.environ and int(os.environ['TRAIN_ALL']) != 0): # FLAGS.test_input = None if FLAGS.test_input == '1': assert FLAGS.train_input assert 'train' in FLAGS.train_input FLAGS.test_input = FLAGS.train_input.replace('train', 'test').split(',')[0] elif FLAGS.test_input == '0': FLAGS.test_input = None if FLAGS.valid_input == '1': assert FLAGS.train_input assert 'train' in FLAGS.train_input FLAGS.valid_input = FLAGS.train_input.replace('train', 'valid').split(',')[0] elif FLAGS.valid_input == '0': FLAGS.valid_input = None if 'TRAIN_ALL' in os.environ and int(os.environ['TRAIN_ALL']) != 0: FLAGS.train_all = True #FLAGS.buckets = None # no buckets for train all mode TODO might still need buket if FLAGS.fold is not None: if FLAGS.model_dir: FLAGS.model_dir = os.path.join(FLAGS.model_dir, 'all') # also evluate on fold 0 if not set fold if FLAGS.fold is None: FLAGS.fold = 0 if not FLAGS.test_input: assert FLAGS.train_input assert 'train' in FLAGS.train_input FLAGS.test_input = FLAGS.train_input.replace('train', 'test').split(',')[0] if 'TRAIN_ONLY' in os.environ and int(os.environ['TRAIN_ONLY']) != 0: FLAGS.train_all = True FLAGS.train_only = True if FLAGS.fold is not None: if FLAGS.model_dir: FLAGS.model_dir = os.path.join(FLAGS.model_dir, 'all') try: FLAGS.fold = None # tf 1.4 not ok to set None except Exception: pass if FLAGS.train_only: FLAGS.test_input = None FLAGS.valid_input = None FLAGS.metric_eval = False if 'MIN_AFTER_DEQUEUE' in os.environ: FLAGS.min_after_dequeue = int(os.environ['MIN_AFTER_DEQUEUE']) if 'BUFFER_SIZE' in os.environ: FLAGS.min_after_dequeue = int(os.environ['BUFFER_SIZE']) if 'BUFFER' in os.environ: FLAGS.min_after_dequeue = int(os.environ['BUFFER']) FLAGS.buffer_size = max(FLAGS.buffer_size, FLAGS.min_after_dequeue) logging.info('buffer_size:{}'.format(FLAGS.buffer_size)) if 'RANDOM_EMB' in os.environ and os.environ['RANDOM_EMB'] == '1': FLAGS.word_embedding_file = None if not FLAGS.num_gpus: FLAGS.num_gpus = melt.get_num_gpus() if not FLAGS.use_tower_loss or FLAGS.use_horovod: FLAGS.num_gpus = 0 #print('======', melt.get_num_gpus(), FLAGS.num_gpus) if 'FIXED_BATCH_SIZE' in os.environ and os.environ['FIXED_BATCH_SIZE'] == '1': FLAGS.batch_size_per_gpu = False if 'BATCH_SIZE_PER_GPU' in os.environ: if os.environ['BATCH_SIZE_PER_GPU'] == '0': FLAGS.batch_size_per_gpu = False elif os.environ['BATCH_SIZE_PER_GPU'] == '1': FLAGS.batch_size_per_gpu = True if not FLAGS.batch_size_per_gpu and FLAGS.num_gpus > 1: print('batch size is shrink by %d for each gpu to make total insts per step still %d'%(FLAGS.num_gpus, FLAGS.batch_size), file=sys.stderr) FLAGS.batch_size = int(FLAGS.batch_size / FLAGS.num_gpus) num_gpus = FLAGS.num_gpus assert num_gpus is not None, 'forget to set CUDA...? to specify the gpus?' # if not num_gpus: # num_gpus = 1 melt.set_global('num_gpus', max(num_gpus, 1)) melt.set_global('batch_size', FLAGS.batch_size * melt.num_gpus()) # notice melt.batch_size() is actual batch size, FLAGS.batch_size is actually batch size per gpu! logging.info('batch_size:', melt.batch_size(), 'batch_size_per_gpu:', FLAGS.batch_size, 'num_gpus:', melt.num_gpus()) # #HACK # if FLAGS.cell == 'cudnn_gru' and tf.__version__ < '1.6': # FLAGS.eval_batch_size = FLAGS.batch_size try: if tf.__version__ < '1.5' and FLAGS.using_dataset: FLAGS.using_dataset = False except Exception: pass if FLAGS.learning_rate_patience: FLAGS.dynamic_learning_rate = True if not FLAGS.learning_rate_decay_factor: FLAGS.learning_rate_decay_factor = 0.5 # TODO check if can all use tfe.Variable ? if not is_eager and not FLAGS.torch_only: learning_rate_weight = tf.get_variable('learning_rate_weight', initializer=tf.ones(shape=(), dtype=tf.float32), trainable=False) tf.add_to_collection('learning_rate_weight', learning_rate_weight) if FLAGS.num_learning_rate_weights > 0: learning_rate_weights = tf.get_variable('learning_rate_weights', initializer=tf.ones(shape=(FLAGS.num_learning_rate_weights), dtype=tf.float32), trainable=False) tf.add_to_collection('learning_rate_weights', learning_rate_weights) else: # will cause torch each process occupy all gpus... TODO tf torch conflict! if is_eager: learning_rate_weight = tfe.Variable(1., name='learning_rate_weight', trainable=False) #tf.add_to_collection('learning_rate_weight', learning_rate_weight) melt.add_global('learning_rate_weight', learning_rate_weight) if FLAGS.num_learning_rate_weights > 0: learning_rate_weights = tfe.Variable(tf.ones(shape=(FLAGS.num_learning_rate_weights), dtype=tf.float32), name='learning_rate_weights', trainable=False) #tf.add_to_collection('learning_rate_weights', learning_rate_weights) melt.add_global('learning_rate_weights', learning_rate_weights) else: melt.add_global('learning_rate_weight', melt.LearningRate(1.)) global inited inited = True def get_global_scope(): global_scope = '' if FLAGS.add_global_scope: global_scope = FLAGS.global_scope if FLAGS.global_scope else FLAGS.algo return global_scope def gen_learning_rate(num_steps_per_epoch=None): #TODO if app crash reload then we should set smaller learning rate, may adgrad can combine with exponential_decay ? #copy from im2txt\im2txt\train.py _learning_rate_decay_fn = None #TODO righ now not to pass float learning_rate as will be variable in optimizer.py and save #if restore it will get learning rate form checkpoint, even if you give another learning rate #this might be confusing, so just make it constant, if restart training you can change learning rate #remeber if using decay by defualt beaviour will restore global_step from checkpoint #so you can restart and get decayed learning rate direclty, restart is same as training without start #you can also set smaller learning rate for example if learning_rate 0.1 before then decay learning rate is #0.1 * decay you can set learning rate to 0.001 manualy after when restart training, then it means you start #with 0.001 * decay (0.01 * decayed_learning_rate) if not FLAGS.dynamic_learning_rate: if FLAGS.learning_rate_decay_factor > 0 or FLAGS.learning_rate_method != 'decay': learning_rate = tf.constant(FLAGS.learning_rate) #learning_rate = FLAGS.learning_rate else: learning_rate = tf.get_variable( "learning_rate", [], trainable=False, initializer=tf.constant_initializer(FLAGS.learning_rate), collections=[]) else: logging.info('using dyanmic learning rate') learning_rate = tf.get_variable( "learning_rate", [], trainable=False, initializer=tf.constant_initializer(FLAGS.learning_rate)) if FLAGS.learning_rate_patience: assert FLAGS.learning_rate_decay_factor > 0 logging.info('adjust learning rate by patience {} and decay_factor *{}'.format(FLAGS.learning_rate_patience, FLAGS.learning_rate_decay_factor)) return learning_rate, None logging.info('initial learning_rate:{}'.format(FLAGS.learning_rate)) if not FLAGS.learning_rate > 0: assert FLAGS.learning_rate_values, 'if learning rate is 0 then must set learnint rate values' if FLAGS.learning_rate_values: if not FLAGS.learning_rate: learning_rate_values = [float(lr) for lr in FLAGS.learning_rate_values.split(',')] assert FLAGS.learning_rate_step_boundaries or FLAGS.learning_rate_epoch_boundaries if FLAGS.learning_rate_step_boundaries: assert FLAGS.learning_rate_epoch_boundaries is None, 'use step boundaries or epoch boundaries?' boundaries = [long(bound) for bound in FLAGS.learning_rate_step_boundaries.split(',')] else: assert num_steps_per_epoch is not None, 'need epoch info if using epoch boundaries' boundaries = [long(float(epoch_bound) * num_steps_per_epoch) for epoch_bound in FLAGS.learning_rate_epoch_boundaries.split(',')] assert len(learning_rate_values) == len(boundaries) + 1, \ 'len_values:{} len_bouddaries:{}'.format(len(learning_rate_values), len(boundaries)) logging.info('learning rate values:{}, epoch_bounds:{} boundaries:{}'.format( FLAGS.learning_rate_values, FLAGS.learning_rate_epoch_boundaries, ','.join(map(str, boundaries)))) def _learning_rate_decay_fn(learning_rate, global_step): #return tf.train.piecewise_constant( return melt.train.piecewise_constant( global_step, boundaries, learning_rate_values) elif FLAGS.learning_rate_decay_factor > 0: #assert FLAGS.learning_rate_values is None, 'use exponential_decay or piecewise_constant?' #NOTICE if you do finetune or other things which might change batch_size then you'd better direclty set num_steps_per_decay #since global step / decay_steps will not be correct epoch as num_steps per epoch changed #so if if you change batch set you have to reset global step as fixed step assert FLAGS.num_steps_per_decay or (FLAGS.num_epochs_per_decay and num_steps_per_epoch), 'must set num_steps_per_epoch or num_epochs_per_decay and num_steps_per_epoch' decay_steps = FLAGS.num_steps_per_decay or int(num_steps_per_epoch * FLAGS.num_epochs_per_decay) decay_start_step = FLAGS.decay_start_step or int(num_steps_per_epoch * FLAGS.decay_start_epoch) # decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps) logging.info('learning_rate_decay_factor:{} decay_epochs:{} decay_steps:{} decay_start_epoch:{} decay_start_step:{}'.format( FLAGS.learning_rate_decay_factor, FLAGS.num_epochs_per_decay, decay_steps, FLAGS.decay_start_epoch, decay_start_step)) def _learning_rate_decay_fn(learning_rate, global_step): return melt.train.exponential_decay( learning_rate, global_step, decay_steps=decay_steps, decay_rate=FLAGS.learning_rate_decay_factor, decay_start_step=decay_start_step, staircase=True) elif FLAGS.learning_rate_method == 'cosine': assert FLAGS.num_steps_per_decay or (FLAGS.num_epochs_per_decay and num_steps_per_epoch), 'must set num_steps_per_epoch or num_epochs_per_decay and num_steps_per_epoch' decay_steps = FLAGS.num_steps_per_decay or int(num_steps_per_epoch * FLAGS.num_epochs_per_decay) logging.info('learning_rate_decay_factor:{} decay_epochs:{} decay_steps:{}'.format( FLAGS.learning_rate_decay_factor, FLAGS.num_epochs_per_decay, decay_steps)) def _learning_rate_decay_fn(learning_rate, global_step): return tf.train.cosine_decay_restarts( learning_rate, global_step, first_decay_steps=decay_steps, t_mul=FLAGS.learning_rate_cosine_t_mul, m_mul=FLAGS.learning_rate_cosine_m_mul, alpha=FLAGS.learning_rate_cosine_alpha) else: # TODO support Slanted triangular learning rate # https://medium.com/@hiromi_suenaga/deep-learning-2-part-2-lesson-10-422d87c3340c logging.warning('Will ignore learning rate values since you have learning rate not 0!') learning_rate_decay_fn = _learning_rate_decay_fn return learning_rate, learning_rate_decay_fn def train_flow(ops, names=None, gen_feed_dict_fn=None, deal_results_fn=None, eval_ops=None, eval_names=None, gen_eval_feed_dict_fn=None, deal_eval_results_fn=melt.print_results, optimizer=None, learning_rate=0.1, num_steps_per_epoch=None, model_dir=None, log_dir=None, metric_eval_fn=None, inference_fn=None, debug=False, summary_excls=None, init_fn=None, restore_fn=None, restore_include=None, restore_exclude=None, save_all_scope=False, variables_to_restore=None, variables_to_save=None, output_collection_names=None, output_node_names=None, num_steps=None, num_epochs=None, num_train_examples=None, model=None, sess=None): """ #variables_to_restore = slim.get_variables_to_restore(exclude=['fc6', 'fc7', 'fc8']) not used much variables_to_save might be used but will hack here since we also want to save like seq2seq/OptimizeLoss/ """ assert inited, 'Forget to call melt.apps.init() before using melt.apps.train_flow?' if FLAGS.use_horovod: import horovod.tensorflow as hvd if sess is None: sess = melt.get_session() model_dir = model_dir or FLAGS.model_dir log_dir = log_dir or FLAGS.log_dir logging.info('clip_gradients:{}'.format(FLAGS.clip_gradients)) num_gpus = melt.num_gpus() #batch size right now not define here, but in app code like input_app.py #NOTICE since melt.__init__.py with from melt.flow import * then you can not #use melt.flow.train.train_flow but you can always use #from melt.flow.train.train_flow import train_flow if optimizer is None: optimizer = FLAGS.optimizer # Set up the training ops. #notice '' only works in tf >= 0.11, for 0.10 will always add OptimeizeLoss scope #the diff is 0.10 use variable_op_scope and 0.11 use variable_scope optimize_scope = None if FLAGS.optimize_has_scope else '' # # NOTICE! initialzer value is step get from model check point if exits otherwise 0 # #will not get step value from checkpoint since you might change batch size it is safe to set step by epoch num and batch size # #this is controlled by melt.apps.flow where global_step var is removed from restore var list # #if set num_steps_per_decay then inital step actually the same as readding from check point global step not modify for batch size change # #be realy golbal step(not fixed global step) # # TODO FIXME not flexible... since if you want to use global step in classifier graph.. can not tf.train.get_or_create_global_step() # initial_step = melt.get_global_step(model_dir, num_steps_per_epoch, fix_step=(not FLAGS.num_steps_per_decay)) if FLAGS.global_step is None else FLAGS.global_step # logging.info('global_step init with initial_step from model_dir as %d' % initial_step) # # TODO right now has global_scope above global_step might need to remove using function creator show_and_tell/global_step (DT_INT64) [] # # global_step = tf.get_variable(tf.GraphKeys.GLOBAL_STEP, shape=[], dtype=tf.int64, # # initializer=tf.constant_initializer(initial_step)) # # or can use get_variable(.. collections=['global_step']) but notice her is later then you build graph... # # tf.add_to_collection('global_step', global_step) global_step = tf.train.get_or_create_global_step() #sess.run(tf.assign(global_step, tf.constant(initial_step, dtype=tf.int64))) if FLAGS.use_finetune_step: # NOTICE unlike global step this one will be save to checkpoint and read out without any change finetune_start_step = tf.get_variable('finetune_start_step', shape=[], dtype=tf.int64, initializer=tf.constant_initializer(initial_step)) elif FLAGS.use_finetune2_step: # NOTICE if 'finetune_start_step2' then will try to load finetune_start_step2 from checkpoint.. where there only fine_start_step.. finetune_start_step = tf.get_variable('finetune2_start_step', shape=[], dtype=tf.int64, initializer=tf.constant_initializer(initial_step)) else: finetune_start_step = 0 logging.info('num_steps_per_epoch:', num_steps_per_epoch) learning_rate, learning_rate_decay_fn = gen_learning_rate(num_steps_per_epoch) if learning_rate_decay_fn is not None: learning_rate = learning_rate_decay_fn(learning_rate, global_step - finetune_start_step) #do not let optimizer do decay again! learning_rate_decay_fn = None #or judge by FLAGS.num_gpus if FLAGS.optimizer == 'momentum': optimizer = lambda lr: tf.train.MomentumOptimizer(lr, momentum=FLAGS.momentum) elif FLAGS.optimizer == 'adafactor': from tensor2tensor.utils import adafactor # let adafactor just using it's internal learning rate and default params # TODO FIXME sparse not support ... optimizer = adafactor.AdafactorOptimizer() elif FLAGS.optimizer == 'multistep': # even embedding set cpu still say resource try from device gpu to cpu WHY ? from tensor2tensor.utils import multistep_optimizer optimizer = multistep_optimizer.MultistepAdamOptimizer elif FLAGS.optimizer == 'yellowfin': # must set embedding on cpu , then can run(like adagrad adadelta) but work poorly from tensor2tensor.utils import yellowfin optimizer = yellowfin.YellowFinOptimizer elif FLAGS.optimizer == 'bert': num_train_steps = int( num_steps_per_epoch * (FLAGS.num_decay_epochs or num_epochs)) if FLAGS.warmup_steps: num_warmup_steps = FLAGS.warmup_steps if FLAGS.use_horovod: num_warmup_steps = max(int(num_warmup_steps / hvd.size()), 1) elif FLAGS.warmup_epochs: num_warmup_steps = num_steps_per_epoch * FLAGS.warmup_epochs elif FLAGS.warmup_proportion: num_warmup_steps = int(num_train_steps * FLAGS.warmup_proportion) logging.info('num_train_steps', num_train_steps, 'num_warmup_steps', num_warmup_steps, 'warmup_proportion', FLAGS.warmup_proportion) optimizer, learning_rate = melt.training.bert.optimization.create_optimizer( global_step, FLAGS.learning_rate, num_train_steps, num_warmup_steps, FLAGS.min_learning_rate) else: optimizer = melt.util.get_optimizer(optimizer) logging.info('optimizer:{} {}'.format(FLAGS.optimizer, optimizer)) if not isinstance(ops[0], (list,tuple)): train_op = melt.layers.optimize_loss( losses=[ops[0]], global_step=global_step, learning_rate=learning_rate, optimizer=optimizer, clip_gradients=FLAGS.clip_gradients, learning_rate_decay_fn=learning_rate_decay_fn, use_horovod=FLAGS.use_horovod, name=optimize_scope) else: #---as in cifa10 example, put all but tower loss on cpu, wiki say, that will be faster, #but here I find without setting to cpu will be faster.. #https://github.com/tensorflow/tensorflow/issues/4881 #I've noticed same thing on cirrascale GPU machines - putting parameters on gpu:0 and using gpu->gpu transfer was a bit faster. I suppose this depends on particular details of hardware -- if you don't have p2p connectivity between your video cards then keeping parameters on CPU:0 gives faster training. #err but for my pc no p2p, with PHB connection nvidia-smi topo -m, still hurt by set cpu.. may be should not put cpu here update_ops = ops[0][1] ops[0] = ops[0][0] if FLAGS.variable_strategy == 'cpu' and FLAGS.num_gpus and FLAGS.num_gpus > 1: with tf.device('/cpu:0'): train_op = melt.layers.optimize_loss( losses=ops[0], num_gpus=num_gpus, global_step=global_step, learning_rate=learning_rate, optimizer=optimizer, clip_gradients=FLAGS.clip_gradients, learning_rate_decay_fn=learning_rate_decay_fn, update_ops=update_ops, name=optimize_scope, use_horovod=FLAGS.use_horovod, use_tpu=FLAGS.use_tpu) else: train_op = melt.layers.optimize_loss( losses=ops[0], num_gpus=num_gpus, global_step=global_step, learning_rate=learning_rate, optimizer=optimizer, clip_gradients=FLAGS.clip_gradients, learning_rate_decay_fn=learning_rate_decay_fn, update_ops=update_ops, name=optimize_scope, use_horovod=FLAGS.use_horovod, use_tpu=FLAGS.use_tpu) #set the last tower loss as loss in ops # TODO FIXME how to check if ops[0] here should be scalar ? ops[0] = ops[0][-1] #ops[0] = ops[0][0] ## cifar10 below down 3600 -> 3100 examples/s # consolidation_device = '/gpu:0' if FLAGS.variable_strategy == 'gpu' else '/cpu:0' # with tf.device(consolidation_device): # ops[0] = tf.reduce_mean(ops[0]) ops.insert(0, train_op) ops.insert(1, learning_rate) tf.add_to_collection('learning_rate', learning_rate) logging.info('learning_rate', learning_rate) try: sess.run(tf.variables_initializer([learning_rate])) except Exception: '--------------!sess.run(tf.variables_initializer([learning_rate])) fail...' pass #-----------post deal save_interval_seconds = FLAGS.save_interval_seconds if FLAGS.save_interval_seconds > 0 \ else FLAGS.save_interval_hours * 3600 interval_steps=FLAGS.interval_steps valid_interval_steps=FLAGS.valid_interval_steps metric_eval_interval_steps=FLAGS.metric_eval_interval_steps save_model=FLAGS.save_model save_interval_steps = FLAGS.save_interval_steps num_steps = num_steps or FLAGS.num_steps num_epochs = num_epochs or FLAGS.num_epochs if not save_interval_steps: save_interval_steps = 1000000000000 if not FLAGS.metric_eval: metric_eval_interval_steps = 0 if FLAGS.work_mode == 'train_only' or FLAGS.train_only: eval_ops = None metric_eval_fn = None logging.info('running train only mode') elif FLAGS.work_mode == 'train_metric': eval_ops = None assert metric_eval_fn is not None, 'set metric_eval to 1' logging.info('running train+metric mode') elif FLAGS.work_mode == 'train+valid': metric_eval_fn = None logging.info('running train+valid mode') elif FLAGS.work_mode.startswith('test'): ops = None logging.info('running test only mode') interval_steps = 0 valid_interval_steps = 1 metric_eval_interval_steps /= FLAGS.valid_interval_steps save_model = False elif FLAGS.work_mode.startswith('metric') or FLAGS.work_mode.startswith('eval') or FLAGS.work_mode.startswith('valid') or gezi.env_has('METRIC'): #TODO name is a bit cofusing for mode, eval or metric means using metric evaluation #test above means using eval_loss(valid_loss) as composed to train_loss for evaluation ops = None eval_ops = None if FLAGS.work_mode == 'valid+test': logging.info('runing valid and test only mode') else: logging.info('running metric eval only mode') interval_steps = 0 valid_interval_steps = 1 metric_eval_interval_steps /= FLAGS.valid_interval_steps save_model = False assert metric_eval_fn is not None if FLAGS.work_mode.endswith('once'): num_epochs = -1 #hack to make only do one step! #TODO hack seq2seq/OptimizeLoss/seq2seq/main/decode/rnn/basic_lstm_cell/kernel/Adagrad (DT_FLOAT) [1280,4096] need to save if variables_to_save is not None: optimize_vars = set(slim.get_variables(get_global_scope() + '/OptimizeLoss')) assert optimize_vars, 'optimizer must has scope %s'%(get_global_scope() + '/OptimizeLoss') variables_to_save = list(set(variables_to_save) | optimize_vars) #print('final varables_to_save', variables_to_save) if output_collection_names is None and FLAGS.freeze_graph_collections: all_keys = sess.graph.get_all_collection_keys() exclude_keys = set(['variables', 'queue_runners', 'summaries', 'train_op', 'update_ops', 'model_variables', 'cond_context', 'while_context']) output_collection_names = [x for x in all_keys if x not in exclude_keys and not 'train' in x and not x.endswith('_end_points')] logging.info('all collection keys: {}'.format(all_keys[:100])) logging.info('collection names to freeze: {}'.format(output_collection_names)) print('ops', ops, file=sys.stderr) print('eval_ops', eval_ops, file=sys.stderr) print('names', names, file=sys.stderr) print('eval_names', eval_names, file=sys.stderr) if FLAGS.learning_rate_patience: assert metric_eval_fn is not None, 'need to use metrci eval fn to monitor and decay learning rate' restore_include = restore_include or FLAGS.restore_include.split(',') if FLAGS.restore_include else None restore_exclude = restore_exclude or FLAGS.restore_exclude.split(',') if FLAGS.restore_exclude else None return melt.flow.train_flow( ops, names=names, gen_feed_dict_fn=gen_feed_dict_fn, deal_results_fn=deal_results_fn, # TODO horovod might multiple gpu eval then reduceall mean #eval_ops=eval_ops if not FLAGS.use_horovod or hvd.rank() == 0 else None, eval_ops=eval_ops, eval_names=eval_names, gen_eval_feed_dict_fn=gen_eval_feed_dict_fn, deal_eval_results_fn=deal_eval_results_fn, interval_steps=interval_steps, valid_interval_steps=valid_interval_steps, eval_loops=FLAGS.eval_loops, num_epochs=num_epochs, num_steps=num_steps, save_interval_seconds=save_interval_seconds, save_interval_steps=save_interval_steps, save_model=save_model if not FLAGS.use_horovod or hvd.rank() == 0 else False, save_interval_epochs=FLAGS.save_interval_epochs, freeze_graph=FLAGS.freeze_graph, #optimizer=optimizer, optimizer=None, #must set None since here we have done choosing optimizer learning_rate=learning_rate, learning_rate_patience=FLAGS.learning_rate_patience, learning_rate_decay_factor=FLAGS.learning_rate_decay_factor, num_steps_per_epoch=num_steps_per_epoch, max_models_keep=FLAGS.max_models_keep, #model_dir=model_dir if not FLAGS.use_horovod or hvd.rank() == 0 else None, # still pass model dir eve hvd rank > 0 for evaluate or infer might use it model_dir=model_dir, log_dir=log_dir if not FLAGS.use_horovod or hvd.rank() == 0 else None, restore_from_latest=FLAGS.restore_from_latest, #metric_eval_fn=metric_eval_fn if not (FLAGS.use_horovod and not FLAGS.horovod_eval) or hvd.rank() == 0 else None, metric_eval_fn=metric_eval_fn, metric_eval_interval_steps=metric_eval_interval_steps, valid_interval_epochs=FLAGS.valid_interval_epochs, #inference_fn=inference_fn if not (FLAGS.use_horovod and not FLAGS.horovod_eval) or hvd.rank() == 0 else None, inference_fn=inference_fn, inference_interval_epochs=FLAGS.inference_interval_epochs, no_log=FLAGS.no_log, summary_excls=summary_excls, init_fn=init_fn, restore_fn=restore_fn, restore_include=restore_include, restore_exclude=restore_exclude, save_all_scope=save_all_scope, variables_to_restore=variables_to_restore, variables_to_save=variables_to_save, output_collection_names=output_collection_names, output_node_names=output_node_names, write_during_train=FLAGS.write_during_train, use_horovod=FLAGS.use_horovod, model=model, sess=sess) # TODO make this evaluate , infrence and melt train_flow as standard melt.apps.train def evaluate(ops, iterator, num_steps, num_examples, eval_fn, model_path=None, names=None, write_fn=None, write_streaming=False, num_gpus=1, write=False, suffix='.valid', sep=',', sess=None): use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: import horovod.tensorflow as hvd if not write_fn: write_streaming = True ids_list = [] predictions_list = [] labels_list = [] if not sess: sess = melt.get_session() try: sess.run(iterator.initializer) except Exception: pass try: for i in range(num_gpus): ops[i][0] = ops[i][0]['id'] except Exception: pass try: # here for multiple gpu (not horovod) dataset is repeate mode for _ in tqdm(range(num_steps), total=num_steps, ascii=True): results = sess.run(ops) for i in range(num_gpus): ids, labels, predictions = results[i] ids = gezi.decode(ids) ids_list.append(ids) predictions_list.append(predictions) labels_list.append(labels) except tf.errors.OutOfRangeError: pass if FLAGS.use_horovod and FLAGS.horovod_eval: #print('----------------------before hvd reduce') sess.run(hvd.allreduce(tf.constant(0))) ## here for horovod mutliple gpu dataset is not repeat mode ids_list = comm.allgather(np.concatenate(ids_list)) predictions_list = comm.allgather(np.concatenate(predictions_list)) labels_list = comm.allgather(np.concatenate(labels_list)) comm.barrier() ids2 = np.concatenate(ids_list) predicts2 = np.concatenate(predictions_list) labels2 = np.concatenate(labels_list) #----below is for batch parse which if not repeat mode then final batch will still same size not smaller # and not use repeat mode so last batch fill with id '' empty we can remove here ids = [] predicts = [] labels = [] for i in range(len(ids2)): if not ids2[i] == '': ids.append(ids2[i]) predicts.append(predicts2[i]) labels.append(labels2[i]) ids = np.array(ids) predicts = np.array(predicts) labels = np.array(labels) assert len(predicts) > 0, 'all ids are empty string ? we ignore these instance with empty id' assert len(predicts) == num_examples else: try: # concat list so like [[512,], [512,]...] -> [512 * num_batchs] # ore [[512, 3], [512,3] ..] -> [512 * num_batchs, 3] ids = np.concatenate(ids_list)[:num_examples] except Exception: ids = ['0'] * num_examples predicts = np.concatenate(predictions_list)[:num_examples] labels = np.concatenate(labels_list)[:num_examples] if model_path and write and (not FLAGS.use_horovod or hvd.rank() == 0): ofile = model_path + suffix with open(ofile, 'w') as out: if write_streaming: if names: print(*names, sep=sep, file=out) for id, label, predict in zip(ids, labels, predicts): if write_fn is None: if not gezi.iterable(label): label = [label] if not gezi.iterable(predict): predict = [predict] print(id, *label, *predict, sep=sep, file=out) else: write_fn(id, label, predict, out) else: write_fn(ids, labels, predicts, out) # TODO maybe **kargs better ? if len(inspect.getargspec(eval_fn).args) == 4: vals, names = eval_fn(labels, predicts, ids=ids, model_path=model_path) elif len(inspect.getargspec(eval_fn).args) == 3: if 'ids' in inspect.getargspec(eval_fn).args: vals, names = eval_fn(labels, predicts, ids) else: vals, names = eval_fn(labels, predicts, model_path) else: vals, names = eval_fn(labels, predicts) if model_path and (not FLAGS.use_horovod or hvd.rank() == 0): with open(model_path + '.valid.metrics', 'w') as out: for val, name in zip(vals, names): print(name, val, sep='\t', file=out) return vals, names def inference(ops, iterator, num_steps, num_examples, model_path, names=None, debug_names=None, write_fn=None, write_streaming=False, num_gpus=1, suffix='.infer', sep=',', sess=None): use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: import horovod.tensorflow as hvd if not write_fn: write_streaming = True ids_list = [] predictions_list = [] if not sess: sess = melt.get_session() sess.run(iterator.initializer) try: for i in range(num_gpus): ops[i][0] = ops[i][0]['id'] except Exception: pass try: for _ in tqdm(range(num_steps), total=num_steps, ascii=True): results = sess.run(ops) for i in range(num_gpus): ids, predictions = results[i] ids = gezi.decode(ids) ids_list.append(ids) predictions_list.append(predictions) except tf.errors.OutOfRangeError: pass # TODO for infer might not need to use all gather ... if FLAGS.horovod and FLAGS.horovod_eval: sess.run(hvd.allreduce(tf.constant(0))) ids_list = comm.allgather(np.concatenate(ids_list)) predictions_list = comm.allgather(np.concatenate(predictions_list)) comm.barrier() ids2 = np.concatenate(ids_list) predicts2 = np.concatenate(predictions_list) ids = [] predicts = [] for i in range(len(ids2)): if not ids2[i] == '': ids.append(ids2[i]) predicts.append(predicts2[i]) ids = np.array(ids) predicts = np.array(predicts) else: ids = np.concatenate(ids_list)[:num_examples] predicts = np.concatenate(predictions_list)[:num_examples] assert len(predicts) > 0, 'all ids are empty string ? we ignore these instance with empty id' if (not FLAGS.use_horovod or hvd.rank() == 0): ofile = model_path + suffix ofile2 = ofile + '.debug' if write_streaming: if write_fn and len(inspect.getargspec(write_fn).args) == 4: out_debug = open(ofile2, 'w') else: out_debug = None with open(ofile, 'w') as out: if names: print(*names, sep=sep, file=out) if debug_names and out_debug: print(*debug_names, sep=',', file=out_debug) for id, predict in zip(ids, predicts): if write_fn is None: if not gezi.iterable(predict): predict = [predict] print(id, *predict, sep=sep, file=out) else: if out_debug: write_fn(id, predict, out, out_debug) else: write_fn(id, predict, out) else: if len(inspect.getargspec(write_fn).args) == 4: write_fn(ids, predicts, ofile, ofile2) else: write_fn(ids, predicts, ofile) def train(model, loss_fn, Dataset=None, dataset=None, valid_dataset=None, valid_dataset2=None, test_dataset=None, evaluate_fn=None, inference_fn=None, eval_fn=None, init_fn=None, restore_fn=None, write_valid=True, valid_names=None, infer_names=None, infer_debug_names=None, valid_write_fn=None, infer_write_fn=None, valid_suffix='.valid', infer_suffix='.infer', write_streaming=False, optimizer=None, sep=','): if Dataset is None: assert dataset input_ = FLAGS.train_input inputs = gezi.list_files(input_) assert inputs, input_ inputs.sort() all_inputs = inputs batch_size = melt.batch_size() num_gpus = melt.num_gpus() #hack for horovod if FLAGS.use_horovod: num_gpus = 1 import horovod.tensorflow as hvd batch_size_per_gpu = FLAGS.batch_size logging.info(model, Dataset, loss_fn) logging.info('batch_size', batch_size, 'batch_size_per_gpu', batch_size_per_gpu, 'num_gpus', num_gpus) if num_gpus > 1: assert not FLAGS.batch_sizes, 'Not support batch sizes for num gpus > 1, TODO' # NOTICE if FLAGS.batch_sizes then num_gpus 1 batch_size_ = batch_size if not FLAGS.batch_sizes else int(FLAGS.batch_sizes.split(',')[-1]) if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] # if FLAGS.valid_input: # inputs += [x for x in gezi.list_files(FLAGS.valid_input) if not x.endswith('%d.record' % FLAGS.fold)] logging.info('inputs', len(inputs), inputs[:100]) num_folds = FLAGS.num_folds or len(inputs) + 1 dataset = dataset or Dataset('train') iter = dataset.make_batch(batch_size, inputs, repeat=True, initializable=False, hvd_shard=FLAGS.horovod_shard, simple_parse=FLAGS.simple_parse) num_examples = dataset.num_examples_per_epoch('train') num_all_examples = num_examples if num_examples: if FLAGS.fold is not None: num_examples = int(num_examples * ((num_folds - 1) / num_folds)) num_steps_per_epoch = -(-num_examples // batch_size) else: num_steps_per_epoch = None logging.info('num_train_examples:', num_examples) valid_inputs = None if FLAGS.valid_input: valid_inputs = gezi.list_files(FLAGS.valid_input) else: if FLAGS.fold is not None: #valid_inputs = [x for x in all_inputs if x not in inputs] if not FLAGS.test_aug: valid_inputs = [x for x in all_inputs if not 'aug' in x and x not in inputs] else: valid_inputs = [x for x in all_inputs if 'aug' in x and x not in inputs] if valid_inputs: valid_dataset = valid_dataset or dataset valid_batch_size = FLAGS.eval_batch_size or batch_size # valid iter2 for valid op valid_iter2 = valid_dataset.make_batch(batch_size, valid_inputs, subset='valid', repeat=True, initializable=False, hvd_shard=False) # here not set repeat to False, for if multiple gpu might repeat is True we can stop using num steps valid_iter = valid_dataset.make_batch(valid_batch_size, valid_inputs, subset='valid', hvd_shard=FLAGS.horovod_eval) else: valid_dataset = None logging.info('valid_inputs', valid_inputs) num_valid_examples = None if FLAGS.valid_input and valid_dataset: num_valid_examples = valid_dataset.num_examples_per_epoch('valid') num_valid_steps_per_epoch = -(-num_valid_examples // valid_batch_size) if num_valid_examples else None else: if FLAGS.fold is not None: if num_examples: num_valid_examples = int(num_all_examples * (1 / num_folds)) num_valid_steps_per_epoch = -(-num_valid_examples // valid_batch_size) else: num_valid_steps_per_epoch = None logging.info('num_valid_examples:', num_valid_examples) assert not (FLAGS.valid_input and not num_valid_examples) if FLAGS.test_input: test_inputs = gezi.list_files(FLAGS.test_input) #test_inputs = [x for x in test_inputs if not 'aug' in x] logging.info('test_inputs', test_inputs) else: test_inputs = None num_test_examples = None if test_inputs: test_dataset = test_dataset or dataset test_batch_size = FLAGS.eval_batch_size or batch_size test_iter = test_dataset.make_batch(test_batch_size, test_inputs, subset='test', hvd_shard=FLAGS.horovod_eval) num_test_examples = test_dataset.num_examples_per_epoch('test') num_test_steps_per_epoch = -(-num_test_examples // test_batch_size) if num_test_examples else None else: test_dataset = None logging.info('num_test_examples:', num_test_examples) scope_name = '' #with tf.variable_scope('model') as scope: #iter = dataset.make_batch(batch_size, inputs, repeat=True, initializable=False) batch = iter.get_next() x, y = melt.split_batch(batch, batch_size, num_gpus) #x, y = melt.split_batch(batch, num_gpus) # loss = loss_fn(model, x, y, training=True) # loss = melt.tower(lambda i: loss_fn(model, x[i], y[i], training=True), num_gpus) def train_fn(x, y): if 'training' in inspect.getargspec(model.call).args: y_ = model(x, training=True) else: if hasattr(model, 'train'): model.train() y_ = model(x) loss = loss_fn(y, y_) return loss loss = melt.tower(lambda i: train_fn(x[i], y[i]), num_gpus) def valid_fn(x, y): y_ = model(x) loss = loss_fn(y, y_) return loss ops = [loss] #scope.reuse_variables() eval_ops = None metric_eval_fn = None if valid_dataset: #valid_iter2 = valid_dataset.make_batch(batch_size_, valid_inputs, repeat=True, initializable=False) valid_batch2 = valid_iter2.get_next() valid_batch_size = FLAGS.eval_batch_size or batch_size if FLAGS.run_valid_op: valid_x2, valid_y2 = melt.split_batch(valid_batch2, valid_batch_size, num_gpus, training=False) #valid_x2, valid_y2 = melt.split_batch(valid_batch2, num_gpus, training=False) valid_loss = melt.tower(lambda i: valid_fn(valid_x2[i], valid_y2[i]), num_gpus, training=False) valid_loss = tf.reduce_mean(valid_loss) eval_ops = [valid_loss] #valid_iter = valid_dataset.make_batch(batch_size_, valid_inputs) valid_batch = valid_iter.get_next() valid_x, valid_y = melt.split_batch(valid_batch, valid_batch_size, num_gpus, training=False) #valid_x, valid_y = melt.split_batch(valid_batch, num_gpus, training=False) if not valid_names and infer_names: valid_names = [infer_names[0]] + [x + '_y' for x in infer_names[1:]] + infer_names[1:] if eval_fn: def valid_fn(i): if hasattr(model, 'eval'): model.eval() valid_predict = model(valid_x[i]) return valid_x[i], valid_y[i], valid_predict valid_ops = melt.tower(valid_fn, num_gpus, training=False) if FLAGS.use_horovod and FLAGS.horovod_eval: # multiple gpu eval num_valid_steps_per_epoch = -(-num_valid_examples // (valid_batch_size * hvd.size())) metric_eval_fn = lambda model_path=None: \ evaluate(valid_ops, valid_iter, num_steps=num_valid_steps_per_epoch, num_examples=num_valid_examples, eval_fn=eval_fn, names=valid_names, write_fn=valid_write_fn, model_path=model_path, write=write_valid, num_gpus=num_gpus, suffix=valid_suffix, write_streaming=write_streaming, sep=sep) if test_dataset: #test_iter = test_dataset.make_batch(batch_size_, test_inputs) test_batch = test_iter.get_next() test_x, test_y = melt.split_batch(test_batch, batch_size_, num_gpus, training=False) def infer_fn(i): if hasattr(model, 'eval'): model.eval() test_predict = model(test_x[i]) return test_x[i], test_predict test_ops = melt.tower(infer_fn, num_gpus, training=False) if FLAGS.use_horovod and FLAGS.horovod_eval: # multiple gpu infer num_test_steps_per_epoch = -(-num_test_examples // (test_batch_size * hvd.size())) inference_fn = lambda model_path=None: \ inference(test_ops, test_iter, num_steps=num_test_steps_per_epoch, num_examples=num_test_examples, names=infer_names, debug_names=infer_debug_names, write_fn=infer_write_fn, model_path=model_path, num_gpus=num_gpus, suffix=infer_suffix, write_streaming=write_streaming, sep=sep) else: inference_fn = None #model.save_weights('./weight') # checkpoint = tf.train.Checkpoint(model=model) # ckpt_dir = FLAGS.model_dir + '/ckpt' # print('-----------------', ckpt_dir) # #TODO FIXME now I just changed tf code so to not by default save only latest 5 # # refer to https://github.com/tensorflow/tensorflow/issues/22036 # # manager = tf.contrib.checkpoint.CheckpointManager( # # checkpoint, directory=ckpt_dir, max_to_keep=5) # # latest_checkpoint = manager.latest_checkpoint # latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) # status = checkpoint.restore(latest_checkpoint) # checkpoint_prefix = os.path.join(ckpt_dir, 'ckpt') # with melt.get_session() as sess: # status.initialize_or_restore(sess) # checkpoint.save(checkpoint_prefix) assert num_examples if FLAGS.use_horovod: num_steps_per_epoch = -(-num_examples // (batch_size * hvd.size())) # if horovod do valid one batch will fail on next run train ops WHY ? TODO FIXME eval ops must all set to None using horovod now #eval_ops = eval_ops if not FLAGS.use_horovod or hvd.rank() == 0 else None #eval_ops = eval_ops if not FLAGS.use_horovod else None metric_eval_fn = metric_eval_fn if not (FLAGS.use_horovod and not FLAGS.horovod_eval) or hvd.rank() == 0 else None inference_fn = inference_fn if not (FLAGS.use_horovod and not FLAGS.horovod_eval) or hvd.rank() == 0 else None train_flow(ops, eval_ops=eval_ops, model_dir=FLAGS.model_dir, metric_eval_fn=metric_eval_fn, inference_fn=inference_fn, num_steps_per_epoch=num_steps_per_epoch, model=model, init_fn=init_fn, restore_fn=restore_fn, num_train_examples=num_examples, num_epochs=FLAGS.num_epochs, optimizer=optimizer, ) def get_train(): train = melt.eager.train if tf.executing_eagerly() or FLAGS.torch_only else melt.apps.train return train def get_fit(): return get_train() ================================================ FILE: utils/melt/cnn/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-12-23 14:00:38.403784 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.cnn.cnn import * import melt.cnn.conv2d from melt.cnn.qanet import * ================================================ FILE: utils/melt/cnn/cnn.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cnn.py # \author chenghuige # \date 2018-02-18 12:26:23.284086 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import sys, os import melt from official.transformer.model import model_utils """ Hierarchical ConvNet """ #https://arxiv.org/pdf/1705.02364.pdf #https://github.com/facebookresearch/InferSent/blob/master/models.py # This is simple can be cnn baseline, but easy to overfit class ConvNet(object): def __init__(self, num_layers, num_filters, use_position_encoding=False, keep_prob=1.0, is_train=None, scope="conv_net"): self.num_layers = num_layers self.keep_prob = keep_prob self.num_filters = num_filters self.is_train = is_train self.use_position_encoding = use_position_encoding self.scope = scope assert self.num_filters # seq_len for rnn compact def encode(self, seq, seq_len=None, output_method='all'): with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE): if self.use_position_encoding: hidden_size = melt.get_shape(seq, -1) # Scale embedding by the sqrt of the hidden size seq *= hidden_size ** 0.5 # Create binary array of size [batch_size, length] # where 1 = padding, 0 = not padding padding = tf.to_float(tf.sequence_mask(seq_len)) # Set all padding embedding values to 0 seq *= tf.expand_dims(padding, -1) pos_encoding = model_utils.get_position_encoding( tf.shape(seq)[1], tf.shape(seq)[-1]) seq = seq + pos_encoding num_filters = self.num_filters seqs = [seq] #batch_size = melt.get_batch_size(seq) #kernel_sizes = [3, 5, 7, 9, 11, 13] kernel_sizes = [3] * 7 assert self.num_layers <= len(kernel_sizes) for layer in range(self.num_layers): #input_size_ = melt.get_shape(seq, -1) if layer == 0 else num_filters seq = melt.dropout(seq, self.keep_prob, self.is_train) seq = tf.layers.conv1d(seqs[-1], num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) # mask = melt.dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), # keep_prob=self.keep_prob, is_train=self.is_train, mode=None) #seq = tf.layers.conv1d(seqs[-1] * mask, num_filters, kernel_size=3, padding='same', activation=tf.nn.relu) #seq = tf.layers.conv1d(seqs[-1] * mask, num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) # if self.is_train and self.keep_prob < 1: # seq = tf.nn.dropout(seq, self.keep_prob) #seq = melt.layers.batch_norm(seq, self.is_train, name='layer_%d' % layer) seqs.append(seq) outputs = tf.concat(seqs[1:], 2) # not do any dropout in convet just dropout outside # if self.is_train and self.keep_prob < 1: # outputs = tf.nn.dropout(outputs, self.keep_prob) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) class ConvNet2(object): def __init__(self, num_layers, num_units, keep_prob=1.0, is_train=None, scope="conv_net"): self.num_layers = num_layers self.keep_prob = keep_prob self.num_units = num_units self.is_train = is_train self.scope = scope # seq_len for rnn compact def encode(self, seq, seq_len=None, output_method='all'): with tf.variable_scope(self.scope): num_filters = self.num_units seqs = [seq] batch_size = melt.get_batch_size(seq) kernel_sizes = [3, 5, 7, 9, 11, 13] #kernel_sizes = [3] * 7 assert self.num_layers <= len(kernel_sizes) for layer in range(self.num_layers): input_size_ = melt.get_shape(seq, -1) if layer == 0 else num_filters seq = melt.dropout(seq, self.keep_prob, self.is_train) seq = tf.layers.conv1d(seqs[-1], num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) # mask = melt.dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), # keep_prob=self.keep_prob, is_train=self.is_train, mode=None) #seq = tf.layers.conv1d(seqs[-1] * mask, num_filters, kernel_size=3, padding='same', activation=tf.nn.relu) #seq = tf.layers.conv1d(seqs[-1] * mask, num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) # if self.is_train and self.keep_prob < 1: # seq = tf.nn.dropout(seq, self.keep_prob) #seq = melt.layers.batch_norm(seq, self.is_train, name='layer_%d' % layer) seqs.append(seq) outputs = tf.concat(seqs[1:], 2) # not do any dropout in convet just dropout outside # if self.is_train and self.keep_prob < 1: # outputs = tf.nn.dropout(outputs, self.keep_prob) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) ================================================ FILE: utils/melt/cnn/conv2d.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cnn.py # \author chenghuige # \date 2018-02-18 12:26:23.284086 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import sys import sys, os import melt #1 -------------https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/learn/text_classification_cnn.py #may be change the interfance to encode(inputs) ? #conv2d too much mem to consume! # this is text_cnn! TODO def encode(word_vectors, seq_len=None, output_method='all'): """2 layer ConvNet to predict from sequence of words to a class.""" ## output last dim is only N_FILTERS as tf demo default 10 so small for encoding information of text ? ## also if set large will easy to OOM I have limited length to 500 N_FILTERS = 10 #filters is as output WINDOW_SIZE = 3 #FILTER_SHAPE1 = [WINDOW_SIZE, EMBEDDING_SIZE] FILTER_SHAPE2 = [WINDOW_SIZE, N_FILTERS] POOLING_WINDOW = 4 POOLING_STRIDE = 2 #[batch_size, length, emb_dim] word_vectors = tf.expand_dims(word_vectors, -1) emb_dim = word_vectors.get_shape()[-1] FILTER_SHAPE1 = [WINDOW_SIZE, emb_dim] with tf.variable_scope('cnn_layer1'): # Apply Convolution filtering on input sequence. conv1 = tf.layers.conv2d( word_vectors, filters=N_FILTERS, kernel_size=FILTER_SHAPE1, padding='VALID', # Add a ReLU for non linearity. activation=tf.nn.relu) print('-----conv1', conv1) # Max pooling across output of Convolution+Relu. pool1 = tf.layers.max_pooling2d( conv1, pool_size=POOLING_WINDOW, strides=POOLING_STRIDE, padding='SAME') print('-----pool1', pool1) # Transpose matrix so that n_filters from convolution becomes width. pool1 = tf.transpose(pool1, [0, 1, 3, 2]) print('-----pool1', pool1) with tf.variable_scope('cnn_layer2'): # Second level of convolution filtering. conv2 = tf.layers.conv2d( pool1, filters=N_FILTERS, kernel_size=FILTER_SHAPE2, padding='VALID') print('-----conv2', conv2) # Max across each filter to get useful features for classification. #pool2 = tf.squeeze(tf.reduce_max(conv2, 1), squeeze_dims=[1]) #print('-----pool2', pool2) #return pool2 output = tf.squeeze(conv2, 2) print('--------output', output) #return tf.layers.dense(pool2, emb_dim) #return melt.rnn.encode_outputs(conv2, sequence_length=seq_len, output_method=output_method) return output ================================================ FILE: utils/melt/cnn/qanet.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cnn.py # \author chenghuige # \date 2018-02-18 12:26:23.284086 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import numpy as np import math from tensorflow.contrib.rnn import MultiRNNCell from tensorflow.contrib.rnn import RNNCell from tensorflow.python.util import nest from tensorflow.python.ops import math_ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import init_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import clip_ops from functools import reduce from operator import mul import melt ''' Some functions are taken directly from Tensor2Tensor Library: https://github.com/tensorflow/tensor2tensor/ and BiDAF repository: https://github.com/allenai/bi-att-flow ''' initializer = lambda: tf.contrib.layers.variance_scaling_initializer(factor=1.0, mode='FAN_AVG', uniform=True, dtype=tf.float32) initializer_relu = lambda: tf.contrib.layers.variance_scaling_initializer(factor=2.0, mode='FAN_IN', uniform=False, dtype=tf.float32) regularizer = tf.contrib.layers.l2_regularizer(scale = 3e-7) def glu(x): """Gated Linear Units from https://arxiv.org/pdf/1612.08083.pdf""" x, x_h = tf.split(x, 2, axis = -1) return tf.sigmoid(x) * x_h def noam_norm(x, epsilon=1.0, scope=None, reuse=None): """One version of layer normalization.""" with tf.name_scope(scope, default_name="noam_norm", values=[x]): shape = x.get_shape() ndims = len(shape) return tf.nn.l2_normalize(x, ndims - 1, epsilon=epsilon) * tf.sqrt(tf.to_float(shape[-1])) def layer_norm_compute_python(x, epsilon, scale, bias): """Layer norm raw computation.""" mean = tf.reduce_mean(x, axis=[-1], keep_dims=True) variance = tf.reduce_mean(tf.square(x - mean), axis=[-1], keep_dims=True) norm_x = (x - mean) * tf.rsqrt(variance + epsilon) return norm_x * scale + bias def layer_norm(x, filters=None, epsilon=1e-6, scope=None, reuse=None): """Layer normalize the tensor x, averaging over the last dimension.""" if filters is None: filters = x.get_shape()[-1] with tf.variable_scope(scope, default_name="layer_norm", values=[x], reuse=reuse): scale = tf.get_variable( "layer_norm_scale", [filters], regularizer = regularizer, initializer=tf.ones_initializer()) bias = tf.get_variable( "layer_norm_bias", [filters], regularizer = regularizer, initializer=tf.zeros_initializer()) result = layer_norm_compute_python(x, epsilon, scale, bias) return result norm_fn = layer_norm#tf.contrib.layers.layer_norm #tf.contrib.layers.layer_norm or noam_norm def highway(x, size = None, activation = None, num_layers = 2, scope = "highway", dropout = 0.0, reuse = None): with tf.variable_scope(scope, reuse): if size is None: size = x.shape.as_list()[-1] else: x = conv(x, size, name = "input_projection", reuse = reuse) for i in range(num_layers): T = conv(x, size, bias = True, activation = tf.sigmoid, name = "gate_%d"%i, reuse = reuse) H = conv(x, size, bias = True, activation = activation, name = "activation_%d"%i, reuse = reuse) H = tf.nn.dropout(H, 1.0 - dropout) x = H * T + x * (1.0 - T) return x def layer_dropout(inputs, residual, dropout): pred = tf.random_uniform([]) < dropout return tf.cond(pred, lambda: residual, lambda: tf.nn.dropout(inputs, 1.0 - dropout) + residual) def residual_block(inputs, num_blocks, num_conv_layers, kernel_size, mask = None, num_filters = 128, input_projection = False, num_heads = 8, seq_len = None, scope = "res_block", is_training = True, reuse = None, bias = True, dropout = 0.0): with tf.variable_scope(scope, reuse = reuse): if input_projection: inputs = conv(inputs, num_filters, name = "input_projection", reuse = reuse) outputs = inputs sublayer = 1 total_sublayers = (num_conv_layers + 2) * num_blocks for i in range(num_blocks): outputs = add_timing_signal_1d(outputs) outputs, sublayer = conv_block(outputs, num_conv_layers, kernel_size, num_filters, seq_len = seq_len, scope = "encoder_block_%d"%i,reuse = reuse, bias = bias, dropout = dropout, sublayers = (sublayer, total_sublayers)) outputs, sublayer = self_attention_block(outputs, num_filters, seq_len, mask = mask, num_heads = num_heads, scope = "self_attention_layers%d"%i, reuse = reuse, is_training = is_training, bias = bias, dropout = dropout, sublayers = (sublayer, total_sublayers)) return outputs def conv_block(inputs, num_conv_layers, kernel_size, num_filters, seq_len = None, scope = "conv_block", is_training = True, reuse = None, bias = True, dropout = 0.0, sublayers = (1, 1)): with tf.variable_scope(scope, reuse = reuse): outputs = tf.expand_dims(inputs,2) l, L = sublayers for i in range(num_conv_layers): residual = outputs outputs = norm_fn(outputs, scope = "layer_norm_%d"%i, reuse = reuse) if (i) % 2 == 0: outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = depthwise_separable_convolution(outputs, kernel_size = (kernel_size, 1), num_filters = num_filters, scope = "depthwise_conv_layers_%d"%i, is_training = is_training, reuse = reuse) outputs = layer_dropout(outputs, residual, dropout * float(l) / L) l += 1 return tf.squeeze(outputs,2), l def self_attention_block(inputs, num_filters, seq_len, mask = None, num_heads = 8, scope = "self_attention_ffn", reuse = None, is_training = True, bias = True, dropout = 0.0, sublayers = (1, 1)): with tf.variable_scope(scope, reuse = reuse): l, L = sublayers # Self attention outputs = norm_fn(inputs, scope = "layer_norm_1", reuse = reuse) outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = multihead_attention(outputs, num_filters, num_heads = num_heads, seq_len = seq_len, reuse = reuse, mask = mask, is_training = is_training, bias = bias, dropout = dropout) residual = layer_dropout(outputs, inputs, dropout * float(l) / L) l += 1 # Feed-forward outputs = norm_fn(residual, scope = "layer_norm_2", reuse = reuse) outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = conv(outputs, num_filters, True, tf.nn.relu, name = "FFN_1", reuse = reuse) outputs = conv(outputs, num_filters, True, None, name = "FFN_2", reuse = reuse) outputs = layer_dropout(outputs, residual, dropout * float(l) / L) l += 1 return outputs, l def multihead_attention(queries, units, num_heads, memory = None, seq_len = None, scope = "Multi_Head_Attention", reuse = None, mask = None, is_training = True, bias = True, dropout = 0.0): with tf.variable_scope(scope, reuse = reuse): # Self attention if memory is None: memory = queries memory = conv(memory, 2 * units, name = "memory_projection", reuse = reuse) query = conv(queries, units, name = "query_projection", reuse = reuse) Q = split_last_dimension(query, num_heads) K, V = [split_last_dimension(tensor, num_heads) for tensor in tf.split(memory,2,axis = 2)] key_depth_per_head = units // num_heads Q *= key_depth_per_head**-0.5 x = dot_product_attention(Q,K,V, bias = bias, seq_len = seq_len, mask = mask, is_training = is_training, scope = "dot_product_attention", reuse = reuse, dropout = dropout) return combine_last_two_dimensions(tf.transpose(x,[0,2,1,3])) def conv(inputs, output_size, bias = None, activation = None, kernel_size = 1, name = "conv", reuse = None): with tf.variable_scope(name, reuse = reuse): shapes = inputs.shape.as_list() if len(shapes) > 4: raise NotImplementedError elif len(shapes) == 4: filter_shape = [1,kernel_size,shapes[-1],output_size] bias_shape = [1,1,1,output_size] strides = [1,1,1,1] else: filter_shape = [kernel_size,shapes[-1],output_size] bias_shape = [1,1,output_size] strides = 1 conv_func = tf.nn.conv1d if len(shapes) == 3 else tf.nn.conv2d kernel_ = tf.get_variable("kernel_", filter_shape, dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu() if activation is not None else initializer()) outputs = conv_func(inputs, kernel_, strides, "VALID") if bias: outputs += tf.get_variable("bias_", bias_shape, regularizer=regularizer, initializer = tf.zeros_initializer()) if activation is not None: return activation(outputs) else: return outputs def mask_logits(inputs, mask, mask_value = -1e30): mask = tf.cast(mask, tf.float32) return inputs + mask_value * (1 - mask) def depthwise_separable_convolution(inputs, kernel_size, num_filters, scope = "depthwise_separable_convolution", bias = True, is_training = True, reuse = None): with tf.variable_scope(scope, reuse = reuse): shapes = inputs.shape.as_list() depthwise_filter = tf.get_variable("depthwise_filter", (kernel_size[0], kernel_size[1], shapes[-1], 1), dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu()) pointwise_filter = tf.get_variable("pointwise_filter", (1,1,shapes[-1],num_filters), dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu()) outputs = tf.nn.separable_conv2d(inputs, depthwise_filter, pointwise_filter, strides = (1,1,1,1), padding = "SAME") if bias: b = tf.get_variable("bias", outputs.shape[-1], regularizer=regularizer, initializer = tf.zeros_initializer()) outputs += b outputs = tf.nn.relu(outputs) return outputs def split_last_dimension(x, n): """Reshape x so that the last dimension becomes two dimensions. The first of these two dimensions is n. Args: x: a Tensor with shape [..., m] n: an integer. Returns: a Tensor with shape [..., n, m/n] """ old_shape = x.get_shape().dims last = old_shape[-1] new_shape = old_shape[:-1] + [n] + [last // n if last else None] ret = tf.reshape(x, tf.concat([tf.shape(x)[:-1], [n, -1]], 0)) ret.set_shape(new_shape) return tf.transpose(ret,[0,2,1,3]) def dot_product_attention(q, k, v, bias, seq_len = None, mask = None, is_training = True, scope=None, reuse = None, dropout = 0.0): """dot-product attention. Args: q: a Tensor with shape [batch, heads, length_q, depth_k] k: a Tensor with shape [batch, heads, length_kv, depth_k] v: a Tensor with shape [batch, heads, length_kv, depth_v] bias: bias Tensor (see attention_bias()) is_training: a bool of training scope: an optional string Returns: A Tensor. """ with tf.variable_scope(scope, default_name="dot_product_attention", reuse = reuse): # [batch, num_heads, query_length, memory_length] logits = tf.matmul(q, k, transpose_b=True) if bias: b = tf.get_variable("bias", logits.shape[-1], regularizer=regularizer, initializer = tf.zeros_initializer()) logits += b if mask is not None: mask = tf.expand_dims(mask, 1) mask = tf.expand_dims(mask, 1) logits = mask_logits(logits, mask) weights = tf.nn.softmax(logits, name="attention_weights") # dropping out the attention links for each of the heads weights = tf.nn.dropout(weights, 1.0 - dropout) return tf.matmul(weights, v) def combine_last_two_dimensions(x): """Reshape x so that the last two dimension become one. Args: x: a Tensor with shape [..., a, b] Returns: a Tensor with shape [..., ab] """ old_shape = x.get_shape().dims a, b = old_shape[-2:] new_shape = old_shape[:-2] + [a * b if a and b else None] ret = tf.reshape(x, tf.concat([tf.shape(x)[:-2], [-1]], 0)) ret.set_shape(new_shape) return ret def add_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4): """Adds a bunch of sinusoids of different frequencies to a Tensor. Each channel of the input Tensor is incremented by a sinusoid of a different frequency and phase. This allows attention to learn to use absolute and relative positions. Timing signals should be added to some precursors of both the query and the memory inputs to attention. The use of relative position is possible because sin(x+y) and cos(x+y) can be experessed in terms of y, sin(x) and cos(x). In particular, we use a geometric sequence of timescales starting with min_timescale and ending with max_timescale. The number of different timescales is equal to channels / 2. For each timescale, we generate the two sinusoidal signals sin(timestep/timescale) and cos(timestep/timescale). All of these sinusoids are concatenated in the channels dimension. Args: x: a Tensor with shape [batch, length, channels] min_timescale: a float max_timescale: a float Returns: a Tensor the same shape as x. """ length = tf.shape(x)[1] channels = tf.shape(x)[2] signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) return x + signal def get_timing_signal_1d(length, channels, min_timescale=1.0, max_timescale=1.0e4): """Gets a bunch of sinusoids of different frequencies. Each channel of the input Tensor is incremented by a sinusoid of a different frequency and phase. This allows attention to learn to use absolute and relative positions. Timing signals should be added to some precursors of both the query and the memory inputs to attention. The use of relative position is possible because sin(x+y) and cos(x+y) can be experessed in terms of y, sin(x) and cos(x). In particular, we use a geometric sequence of timescales starting with min_timescale and ending with max_timescale. The number of different timescales is equal to channels / 2. For each timescale, we generate the two sinusoidal signals sin(timestep/timescale) and cos(timestep/timescale). All of these sinusoids are concatenated in the channels dimension. Args: length: scalar, length of timing signal sequence. channels: scalar, size of timing embeddings to create. The number of different timescales is equal to channels / 2. min_timescale: a float max_timescale: a float Returns: a Tensor of timing signals [1, length, channels] """ position = tf.to_float(tf.range(length)) num_timescales = channels // 2 log_timescale_increment = ( math.log(float(max_timescale) / float(min_timescale)) / (tf.to_float(num_timescales) - 1)) inv_timescales = min_timescale * tf.exp( tf.to_float(tf.range(num_timescales)) * -log_timescale_increment) scaled_time = tf.expand_dims(position, 1) * tf.expand_dims(inv_timescales, 0) signal = tf.concat([tf.sin(scaled_time), tf.cos(scaled_time)], axis=1) signal = tf.pad(signal, [[0, 0], [0, tf.mod(channels, 2)]]) signal = tf.reshape(signal, [1, length, channels]) return signal def ndim(x): """Copied from keras==2.0.6 Returns the number of axes in a tensor, as an integer. # Arguments x: Tensor or variable. # Returns Integer (scalar), number of axes. # Examples ```python >>> from keras import backend as K >>> inputs = K.placeholder(shape=(2, 4, 5)) >>> val = np.array([[1, 2], [3, 4]]) >>> kvar = K.variable(value=val) >>> K.ndim(inputs) 3 >>> K.ndim(kvar) 2 ``` """ dims = x.get_shape()._dims if dims is not None: return len(dims) return None def dot(x, y): """Modified from keras==2.0.6 Multiplies 2 tensors (and/or variables) and returns a *tensor*. When attempting to multiply a nD tensor with a nD tensor, it reproduces the Theano behavior. (e.g. `(2, 3) * (4, 3, 5) -> (2, 4, 5)`) # Arguments x: Tensor or variable. y: Tensor or variable. # Returns A tensor, dot product of `x` and `y`. """ if ndim(x) is not None and (ndim(x) > 2 or ndim(y) > 2): x_shape = [] for i, s in zip(x.get_shape().as_list(), tf.unstack(tf.shape(x))): if i is not None: x_shape.append(i) else: x_shape.append(s) x_shape = tuple(x_shape) y_shape = [] for i, s in zip(y.get_shape().as_list(), tf.unstack(tf.shape(y))): if i is not None: y_shape.append(i) else: y_shape.append(s) y_shape = tuple(y_shape) y_permute_dim = list(range(ndim(y))) y_permute_dim = [y_permute_dim.pop(-2)] + y_permute_dim xt = tf.reshape(x, [-1, x_shape[-1]]) yt = tf.reshape(tf.transpose(y, perm=y_permute_dim), [y_shape[-2], -1]) return tf.reshape(tf.matmul(xt, yt), x_shape[:-1] + y_shape[:-2] + y_shape[-1:]) if isinstance(x, tf.SparseTensor): out = tf.sparse_tensor_dense_matmul(x, y) else: out = tf.matmul(x, y) return out def batch_dot(x, y, axes=None): """Copy from keras==2.0.6 Batchwise dot product. `batch_dot` is used to compute dot product of `x` and `y` when `x` and `y` are data in batch, i.e. in a shape of `(batch_size, :)`. `batch_dot` results in a tensor or variable with less dimensions than the input. If the number of dimensions is reduced to 1, we use `expand_dims` to make sure that ndim is at least 2. # Arguments x: Keras tensor or variable with `ndim >= 2`. y: Keras tensor or variable with `ndim >= 2`. axes: list of (or single) int with target dimensions. The lengths of `axes[0]` and `axes[1]` should be the same. # Returns A tensor with shape equal to the concatenation of `x`'s shape (less the dimension that was summed over) and `y`'s shape (less the batch dimension and the dimension that was summed over). If the final rank is 1, we reshape it to `(batch_size, 1)`. """ if isinstance(axes, int): axes = (axes, axes) x_ndim = ndim(x) y_ndim = ndim(y) if x_ndim > y_ndim: diff = x_ndim - y_ndim y = tf.reshape(y, tf.concat([tf.shape(y), [1] * (diff)], axis=0)) elif y_ndim > x_ndim: diff = y_ndim - x_ndim x = tf.reshape(x, tf.concat([tf.shape(x), [1] * (diff)], axis=0)) else: diff = 0 if ndim(x) == 2 and ndim(y) == 2: if axes[0] == axes[1]: out = tf.reduce_sum(tf.multiply(x, y), axes[0]) else: out = tf.reduce_sum(tf.multiply(tf.transpose(x, [1, 0]), y), axes[1]) else: if axes is not None: adj_x = None if axes[0] == ndim(x) - 1 else True adj_y = True if axes[1] == ndim(y) - 1 else None else: adj_x = None adj_y = None out = tf.matmul(x, y, adjoint_a=adj_x, adjoint_b=adj_y) if diff: if x_ndim > y_ndim: idx = x_ndim + y_ndim - 3 else: idx = x_ndim - 1 out = tf.squeeze(out, list(range(idx, idx + diff))) if ndim(out) == 1: out = tf.expand_dims(out, 1) return out def optimized_trilinear_for_attention(args, c_maxlen, q_maxlen, input_keep_prob=1.0, scope='efficient_trilinear', bias_initializer=tf.zeros_initializer(), kernel_initializer=initializer()): assert len(args) == 2, "just use for computing attention with two input" arg0_shape = args[0].get_shape().as_list() arg1_shape = args[1].get_shape().as_list() if len(arg0_shape) != 3 or len(arg1_shape) != 3: raise ValueError("`args` must be 3 dims (batch_size, len, dimension)") if arg0_shape[2] != arg1_shape[2]: raise ValueError("the last dimension of `args` must equal") arg_size = arg0_shape[2] dtype = args[0].dtype droped_args = [tf.nn.dropout(arg, input_keep_prob) for arg in args] with tf.variable_scope(scope): weights4arg0 = tf.get_variable( "linear_kernel4arg0", [arg_size, 1], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) weights4arg1 = tf.get_variable( "linear_kernel4arg1", [arg_size, 1], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) weights4mlu = tf.get_variable( "linear_kernel4mul", [1, 1, arg_size], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) biases = tf.get_variable( "linear_bias", [1], dtype=dtype, regularizer=regularizer, initializer=bias_initializer) subres0 = tf.tile(dot(droped_args[0], weights4arg0), [1, 1, q_maxlen]) subres1 = tf.tile(tf.transpose(dot(droped_args[1], weights4arg1), perm=(0, 2, 1)), [1, c_maxlen, 1]) subres2 = batch_dot(droped_args[0] * weights4mlu, tf.transpose(droped_args[1], perm=(0, 2, 1))) res = subres0 + subres1 + subres2 nn_ops.bias_add(res, biases) return res def trilinear(args, output_size = 1, bias = True, squeeze=False, wd=0.0, input_keep_prob= 1.0, scope = "trilinear"): with tf.variable_scope(scope): flat_args = [flatten(arg, 1) for arg in args] flat_args = [tf.nn.dropout(arg, input_keep_prob) for arg in flat_args] flat_out = _linear(flat_args, output_size, bias, scope=scope) out = reconstruct(flat_out, args[0], 1) return tf.squeeze(out, -1) def flatten(tensor, keep): fixed_shape = tensor.get_shape().as_list() start = len(fixed_shape) - keep left = reduce(mul, [fixed_shape[i] or tf.shape(tensor)[i] for i in range(start)]) out_shape = [left] + [fixed_shape[i] or tf.shape(tensor)[i] for i in range(start, len(fixed_shape))] flat = tf.reshape(tensor, out_shape) return flat def reconstruct(tensor, ref, keep): ref_shape = ref.get_shape().as_list() tensor_shape = tensor.get_shape().as_list() ref_stop = len(ref_shape) - keep tensor_start = len(tensor_shape) - keep pre_shape = [ref_shape[i] or tf.shape(ref)[i] for i in range(ref_stop)] keep_shape = [tensor_shape[i] or tf.shape(tensor)[i] for i in range(tensor_start, len(tensor_shape))] # pre_shape = [tf.shape(ref)[i] for i in range(len(ref.get_shape().as_list()[:-keep]))] # keep_shape = tensor.get_shape().as_list()[-keep:] target_shape = pre_shape + keep_shape out = tf.reshape(tensor, target_shape) return out def _linear(args, output_size, bias, bias_initializer=tf.zeros_initializer(), scope = None, kernel_initializer=initializer(), reuse = None): """Linear map: sum_i(args[i] * W[i]), where W[i] is a variable. Args: args: a 2D Tensor or a list of 2D, batch x n, Tensors. output_size: int, second dimension of W[i]. bias: boolean, whether to add a bias term or not. bias_initializer: starting value to initialize the bias (default is all zeros). kernel_initializer: starting value to initialize the weight. Returns: A 2D Tensor with shape [batch x output_size] equal to sum_i(args[i] * W[i]), where W[i]s are newly created matrices. Raises: ValueError: if some of the arguments has unspecified or wrong shape. """ if args is None or (nest.is_sequence(args) and not args): raise ValueError("`args` must be specified") if not nest.is_sequence(args): args = [args] # Calculate the total size of arguments on dimension 1. total_arg_size = 0 shapes = [a.get_shape() for a in args] for shape in shapes: if shape.ndims != 2: raise ValueError("linear is expecting 2D arguments: %s" % shapes) if shape[1].value is None: raise ValueError("linear expects shape[1] to be provided for shape %s, " "but saw %s" % (shape, shape[1])) else: total_arg_size += shape[1].value dtype = [a.dtype for a in args][0] # Now the computation. with tf.variable_scope(scope, reuse = reuse) as outer_scope: weights = tf.get_variable( "linear_kernel", [total_arg_size, output_size], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) if len(args) == 1: res = math_ops.matmul(args[0], weights) else: res = math_ops.matmul(array_ops.concat(args, 1), weights) if not bias: return res with tf.variable_scope(outer_scope) as inner_scope: inner_scope.set_partitioner(None) biases = tf.get_variable( "linear_bias", [output_size], dtype=dtype, regularizer=regularizer, initializer=bias_initializer) return nn_ops.bias_add(res, biases) def total_params(): total_parameters = 0 for variable in tf.trainable_variables(): shape = variable.get_shape() variable_parametes = 1 for dim in shape: variable_parametes *= dim.value total_parameters += variable_parametes print("Total number of trainable parameters: {}".format(total_parameters)) class QANet(object): def __init__(self, num_blocks=1, num_conv_layers=4, kernel_size=7, mask=None, num_filters=128, num_heads=8, input_projection=False, bias=False, dropout=0.1, is_training=None, scope="qanet"): self.kernel_size = kernel_size self.num_blocks = num_blocks self.num_filters = num_filters self.num_conv_layers = num_conv_layers self.num_heads = num_heads self.input_projection = input_projection self.is_training = is_training self.scope = scope self.bias = bias self.dropout = dropout if not self.is_training: self.dropout = 0. assert self.num_filters # seq_len for rnn compact def encode(self, inputs, seq_len=None, output_method='all'): with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE): inputs = highway(inputs, size=self.num_filters, scope="highway", dropout=self.dropout, reuse=tf.AUTO_REUSE) if self.input_projection: inputs = conv(inputs, self.num_filters, name = "input_projection", reuse=tf.AUTO_REUSE) outputs = inputs sublayer = 1 total_sublayers = (self.num_conv_layers + 2) * self.num_blocks for i in range(self.num_blocks): outputs = add_timing_signal_1d(outputs) outputs, sublayer = conv_block(outputs, self.num_conv_layers, self.kernel_size, self.num_filters, seq_len=seq_len, scope="encoder_block_%d"%i, reuse=tf.AUTO_REUSE, bias=self.bias, dropout=self.dropout, sublayers = (sublayer, total_sublayers)) mask = tf.sequence_mask(seq_len) outputs, sublayer = self_attention_block(outputs, self.num_filters, seq_len, mask=mask, num_heads=self.num_heads, scope="self_attention_layers%d"%i, reuse=tf.AUTO_REUSE, is_training=self.is_training, bias=self.bias, dropout=self.dropout, sublayers=(sublayer, total_sublayers)) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) ================================================ FILE: utils/melt/eager/__init__.py ================================================ import melt.eager.util from melt.eager.util import * from melt.eager.train import * ================================================ FILE: utils/melt/eager/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-09-03 15:40:04.947138 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function try: import torch device = torch.device("cuda" if torch.cuda.is_available() else "cpu") except Exception: pass import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tfe = tf.contrib.eager import sys import os from tqdm import tqdm import numpy as np import inspect import traceback import copy import itertools import gezi import melt logging = melt.logging try: #import horovod.tensorflow as hvd #import horovod.torch as hvd #hvd.init() import mpi4py from mpi4py import MPI comm = MPI.COMM_WORLD except Exception: pass def torch_(x): if FLAGS.torch_only: return x for dim in x.shape: if dim == 0: return x x = x.numpy() # TODO.. if x.dtype == np.int64 or x.dtype == np.int32 or x.dtype == np.float32 or x.dtype == np.float64: #if type(x) != np.str_: x = torch.from_numpy(x) #if torch.cuda.is_available(): #x = x.cuda() x = x.to(device) ## TODO FIXME support cpu #x = x.cuda() return x def to_torch(x, y=None): if FLAGS.torch_only: for key in x: if type(x[key][0]) != np.str_: #if x.dtype == np.int64 or x.dtype == np.int32 or x.dtype == np.float32 or x.dtype == np.float64: #x[key] = x[key].to(device) x[key] = x[key].cuda() return x, y.to(device) #return x, y.cuda() if y is not None: y = torch_(y) if not isinstance(x, dict): x = torch_(x) else: for key in x: x[key] = torch_(x[key]) if y is None: return x else: return x, y # TODO not support multiple gpu right now! def evaluate(model, dataset, eval_fn, model_path=None, names=None, write_fn=None, write_streaming=False, num_steps=None, num_examples=None, suffix='.valid', sep=','): if FLAGS.use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd if hasattr(model, 'eval'): model.eval() if not write_fn: write_streaming = True predicts_list = [] labels_list = [] ids_list = [] ofile = model_path + suffix if model_path else None if write_streaming: out = open(ofile, 'w', encoding='utf-8') if ofile else None if out: if names is not None: print(*names, sep=sep, file=out) else: out = None for x, y in tqdm(dataset, total=num_steps, ascii=True): if FLAGS.torch: x, y = to_torch(x, y) predicts = model(x) if FLAGS.torch: predicts = predicts.detach().cpu() y = y.detach().cpu() predicts_list.append(predicts) labels_list.append(y) if not FLAGS.torch: ids = gezi.decode(x['id'].numpy()) else: ids = gezi.decode(x['id']) ids_list.append(ids) if out: for id, label, predict in zip(ids, y.numpy(), predicts.numpy()): if write_fn is None: if not gezi.iterable(label): label = [label] if not gezi.iterable(predict): predict = [predict] print(id, *label, *predict, sep=sep, file=out) else: write_fn(id, label, predict, out) if out: out.close() # if FLAGS.torch: # predicts_list = [x.detach().numpy() for x in predicts_list] # labels_lis = [x.detach().numpy() for x in labels_list] if FLAGS.use_horovod and FLAGS.horovod_eval: #import horovod.torch as hvd #print('----------------------before hvd reduce') # TODO check eager mode ok... tensor = tf.constant(0) if not FLAGS.torch else torch.zeros(0) hvd.allreduce(tensor) ## here for horovod mutliple gpu dataset is not repeat mode ids_list = comm.allgather(np.concatenate(ids_list)) predicts_list = comm.allgather(np.concatenate(predicts_list)) labels_list = comm.allgather(np.concatenate(labels_list)) comm.barrier() ids2 = np.concatenate(ids_list) predicts2 = np.concatenate(predicts_list) labels2 = np.concatenate(labels_list) #----below is for batch parse which if not repeat mode then final batch will still same size not smaller # and not use repeat mode so last batch fill with id '' empty we can remove here ids = [] predicts = [] labels = [] for i in range(len(ids2)): if not ids2[i] == '': ids.append(ids2[i]) predicts.append(predicts2[i]) labels.append(labels2[i]) ids = np.array(ids) predicts = np.array(predicts) labels = np.array(labels) else: try: # concat list so like [[512,], [512,]...] -> [512 * num_batchs] # ore [[512, 3], [512,3] ..] -> [512 * num_batchs, 3] ids = np.concatenate(ids_list)[:num_examples] except Exception: ids = ['0'] * num_examples predicts = np.concatenate(predicts_list)[:num_examples] labels = np.concatenate(labels_list)[:num_examples] if not write_streaming and ofile and (not FLAGS.use_horovod or hvd.rank() == 0): write_fn(ids, labels, predicts, ofile) if len(inspect.getargspec(eval_fn).args) == 4: vals, names = eval_fn(labels, predicts, ids=ids, model_path=model_path) elif len(inspect.getargspec(eval_fn).args) == 3: if 'ids' in inspect.getargspec(eval_fn).args: vals, names = eval_fn(labels, predicts, ids) else: vals, names = eval_fn(labels, predicts, model_path) else: vals, names = eval_fn(labels, predicts) if model_path and (not FLAGS.use_horovod or hvd.rank() == 0): with open(model_path + '.valid.metrics', 'w') as out: for val, name in zip(vals, names): print(name, val, sep='\t', file=out) return vals, names def inference(model, dataset, model_path, names=None, debug_names=None, write_fn=None, write_streaming=False, num_steps=None, num_examples=None, suffix='.infer', sep=','): if FLAGS.use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd if has_attr(model, 'eval'): model.eval() if not write_fn: write_streaming = True ofile = model_path + suffix ofile2 = ofile + '.debug' if write_streaming: if write_fn and len(inspect.getargspec(write_fn).args) == 4: out_debug = open(ofile2, 'w', encoding='utf-8') else: out_debug = None out = open(ofile, 'w', encoding='utf-8') else: out = None out_debug = None if write_streaming: if names is not None: print(*names, sep=sep, file=out) if debug_names and out_debug: print(*debug_names, sep=sep, file=out_debug) predicts_list = [] ids_list = [] for (x, _) in tqdm(dataset, total=num_steps, ascii=True): if FLAGS.torch: x = to_torch(x) predicts = model(x) if FLAGS.torch: predicts = predicts.detach().cpu() # here id is str in py3 will be bytes if not FLAGS.torch: ids = gezi.decode(x['id'].numpy()) else: ids = gezi.decode(x['id']) if not write_streaming: predicts_list.append(predicts) ids_list.append(ids) else: for id, predict in zip(ids, predicts.numpy()): if write_fn is None: if not gezi.iterable(predict): predict = [predict] print(id, *predict, sep=sep, file=out) else: if out_debug: write_fn(id, predict, out, out_debug) else: write_fn(id, predict, out) if out: out.close() if out_debug: out_debug.close() if not write_streaming: if FLAGS.use_horovod and FLAGS.horovod_eval: #import horovod.torch as hvd #print('----------------------before hvd reduce') tensor = tf.constant(0) if not FLAGS.torch else torch.zeros(0) hvd.allreduce(tensor) ## here for horovod mutliple gpu dataset is not repeat mode ids_list = comm.allgather(np.concatenate(ids_list)) predicts_list = comm.allgather(np.concatenate(predicts_list)) comm.barrier() ids2 = np.concatenate(ids_list) predicts2 = np.concatenate(predicts_list) #----below is for batch parse which if not repeat mode then final batch will still same size not smaller # and not use repeat mode so last batch fill with id '' empty we can remove here ids = [] predicts = [] for i in range(len(ids2)): if not ids2[i] == '': ids.append(ids2[i]) predicts.append(predicts2[i]) ids = np.array(ids) predicts = np.array(predicts) else: try: # concat list so like [[512,], [512,]...] -> [512 * num_batchs] # ore [[512, 3], [512,3] ..] -> [512 * num_batchs, 3] ids = np.concatenate(ids_list)[:num_examples] except Exception: ids = ['0'] * num_examples predicts = np.concatenate(predicts_list)[:num_examples] if (not FLAGS.use_horovod or hvd.rank() == 0): if len(inspect.getargspec(write_fn).args) == 4: write_fn(ids, predicts, ofile, ofile2) else: write_fn(ids, predicts, ofile) def load_torch_model(model, path): checkpoint = torch.load(path) state = checkpoint['state_dict'] new_state = {} model_ = model.module if hasattr(model, 'module') else model for key, val in state.items(): if key in model_.state_dict(): new_state[key] = val logging.info('num updated keys from checkpoint', len(new_state), 'epoch:', checkpoint['epoch'], 'step:', checkpoint['step']) # this is for model state has more params then loaded so just partial update mode state with key,vals from loaded new_params = model_.state_dict() new_params.update(new_state) model_.load_state_dict(new_params) model.eval() return checkpoint def horovod_torch_deal_optimizer(optimizer, model): import horovod.torch as hvd #hvd.broadcast_optimizer_state(optimizer, root_rank=0) optimizer = hvd.DistributedOptimizer(optimizer, named_parameters=model.named_parameters()) return optimizer def get_torch_optimizer(optimizer, model, num_steps_per_epoch=None, param_groups=None): use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: import horovod.torch as hvd if optimizer is None: import lele is_dynamic_opt = True if FLAGS.optimizer == 'noam': optimizer = torch.optim.Adamax(model.parameters(), lr=0) if use_horovod: optimizer = horovod_torch_deal_optimizer(optimizer, model) optimizer = lele.training.optimizers.NoamOpt(128, 2, 4000, optimizer) elif FLAGS.optimizer == 'bert': num_train_steps = int(num_steps_per_epoch * (FLAGS.num_decay_epochs or FLAGS.num_epochs)) if FLAGS.warmup_steps and use_horovod: FLAGS.warmup_steps = max(int(FLAGS.warmup_steps / hvd.size()), 1) num_warmup_steps = FLAGS.warmup_steps or int(num_steps_per_epoch * FLAGS.warmup_epochs) or int(num_train_steps * FLAGS.warmup_proportion) logging.info('num_train_steps', num_train_steps, 'num_warmup_steps', num_warmup_steps, 'warmup_proportion', FLAGS.warmup_proportion) optimizer = torch.optim.Adamax(model.parameters(), lr=0) if use_horovod: optimizer = horovod_torch_deal_optimizer(optimizer, model) optimizer = lele.training.optimizers.BertOpt( FLAGS.learning_rate, FLAGS.min_learning_rate, num_train_steps, num_warmup_steps, optimizer ) else: is_dynamic_opt = False optimizer = torch.optim.Adamax(param_groups if param_groups else model.parameters(), lr=FLAGS.learning_rate) if use_horovod: optimizer = hvd.DistributedOptimizer(optimizer, named_parameters=model.named_parameters()) return optimizer, is_dynamic_opt def train(model, loss_fn, Dataset=None, dataset=None, valid_dataset=None, valid_dataset2=None, test_dataset=None, evaluate_fn=None, inference_fn=None, eval_fn=None, write_valid=True, valid_names=None, infer_names=None, infer_debug_names=None, valid_write_fn=None, infer_write_fn=None, valid_suffix='.valid', infer_suffix='.infer', write_streaming=False, optimizer=None, param_groups=None, init_fn=None, sep=','): use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ is_eager = tf.executing_eagerly() if use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd if Dataset is None: assert dataset if not use_horovod or hvd.rank() == 0: logging.info('Dataset', Dataset, 'dataset', dataset, 'valid_dataset', valid_dataset, 'test_dataset', test_dataset, loss_fn) if FLAGS.torch: if not use_horovod or hvd.rank() == 0: logging.info(model) # keras will show model after first training step torch.manual_seed(FLAGS.seed or 0) if torch.cuda.device_count(): torch.cuda.manual_seed(FLAGS.seed or 0) if torch.cuda.device_count() > 1 and not use_horovod: model = torch.nn.DataParallel(model) #model.to(device) #model = model.cuda() #move it after loading model input_ = FLAGS.train_input inputs = gezi.list_files(input_) inputs.sort() all_inputs = inputs #batch_size = FLAGS.batch_size batch_size = melt.batch_size() num_gpus = melt.num_gpus() #batch_size = max(batch_size, 1) #batch_size_ = batch_size if not FLAGS.batch_sizes else int(FLAGS.batch_sizes.split(',')[-1]) batch_size_ = FLAGS.eval_batch_size or batch_size if dataset is None: if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold) and not x.endswith('%d.tfrecord' % FLAGS.fold)] # if FLAGS.valid_input: # inputs += [x for x in gezi.list_files(FLAGS.valid_input) if not x.endswith('%d.record' % FLAGS.fold)] logging.info('inputs', len(inputs), inputs[:100]) num_folds = FLAGS.num_folds or len(inputs) + 1 if dataset is None: dataset = Dataset('train') assert len(inputs) > 0 # for eager train, here still repat True right now, but if set None wil by defualt return False for eager similar as pytorch train_dataset = dataset.make_batch(batch_size, inputs, repeat=True, simple_parse=FLAGS.simple_parse) num_examples = dataset.num_examples_per_epoch('train') else: assert FLAGS.torch_only, 'only torch only currently support input dataset not Dataset class type, because we do not have len function there' train_dataset = dataset num_examples = len(train_dataset.dataset) num_all_examples = num_examples if valid_dataset is None: valid_inputs = None if FLAGS.valid_input: valid_inputs = gezi.list_files(FLAGS.valid_input) else: if FLAGS.fold is not None: #valid_inputs = [x for x in all_inputs if x not in inputs] if not FLAGS.test_aug: valid_inputs = [x for x in all_inputs if not 'aug' in x and x not in inputs] else: valid_inputs = [x for x in all_inputs if 'aug' in x and x not in inputs] logging.info('valid_inputs', valid_inputs) num_valid_examples = None if valid_dataset is not None: # mainly for torch now num_valid_examples = len(valid_dataset.dataset) num_valid_steps_per_epoch = -(-num_valid_examples // batch_size_) if num_valid_examples else None valid_dataset2_iter = itertools.cycle(valid_dataset2) else: if valid_inputs: valid_dataset = dataset.make_batch(batch_size_, valid_inputs, subset='valid', hvd_shard=FLAGS.horovod_eval ) valid_dataset2 = dataset.make_batch(batch_size, valid_inputs, subset='valid', repeat=True, initializable=False, hvd_shard=False) valid_dataset2_iter = iter(valid_dataset2) else: valid_dataset = None valid_dataset2 = None if num_examples: if FLAGS.fold is not None: num_examples = int(num_examples * (num_folds - 1) / num_folds) num_steps_per_epoch = -(-num_examples // batch_size) else: num_steps_per_epoch = None logging.info('num_train_examples:', num_examples) if use_horovod and num_examples: num_steps_per_epoch = -(-num_examples // (batch_size * hvd.size())) if num_valid_examples is None: if FLAGS.valid_input: num_valid_examples = dataset.num_examples_per_epoch('valid') num_valid_steps_per_epoch = -(-num_valid_examples // batch_size_) if num_valid_examples else None else: if FLAGS.fold is not None: if num_examples: num_valid_examples = int(num_all_examples * (1 / num_folds)) num_valid_steps_per_epoch = -(-num_valid_examples // batch_size_) else: num_valid_steps_per_epoch = None if use_horovod and FLAGS.horovod_eval and num_valid_examples: num_valid_steps_per_epoch = -(-num_valid_examples // (batch_size_ * hvd.size())) logging.info('num_valid_examples:', num_valid_examples) if test_dataset is None: if FLAGS.test_input: test_inputs = gezi.list_files(FLAGS.test_input) #test_inputs = [x for x in test_inputs if not 'aug' in x] logging.info('test_inputs', test_inputs) else: test_inputs = None num_test_examples = None if test_dataset is not None: num_test_examples = len(test_dataset.dataset) else: if test_inputs: test_dataset = dataset.make_batch(batch_size_, test_inputs, subset='test') num_test_examples = dataset.num_examples_per_epoch('test') else: test_dataset = None num_test_steps_per_epoch = -(-num_test_examples // batch_size_) if num_test_examples else None if use_horovod and FLAGS.horovod_eval and num_test_examples: num_test_steps_per_epoch = -(-num_test_examples // (batch_size_ * hvd.size())) logging.info('num_test_examples:', num_test_examples) if not use_horovod or hvd.rank() == 0: ## this is eager mode summary.. which will not work on non eager mode if is_eager: summary = tf.contrib.summary # writer = summary.create_file_writer(FLAGS.log_dir + '/epoch') # writer_train = summary.create_file_writer(FLAGS.log_dir + '/train') # writer_valid = summary.create_file_writer(FLAGS.log_dir + '/valid') writer = summary.create_file_writer(FLAGS.log_dir) writer_train = summary.create_file_writer(FLAGS.log_dir) writer_valid = summary.create_file_writer(FLAGS.log_dir) else: # can not be used in eager mode but much better then above TODO see what in TF2.0 summary = gezi.SummaryWriter(FLAGS.log_dir) if is_eager: global_step = tf.train.get_or_create_global_step() else: global_step = melt.GlobalStep(0) ## RuntimeError: tf.summary.FileWriter is not compatible with eager execution. Use tf.contrib.summary instead. #logger = gezi.SummaryWriter(FLAGS.log_dir) if not FLAGS.torch: learning_rate = tfe.Variable(FLAGS.learning_rate, name="learning_rate") else: learning_rate = melt.LearningRate(FLAGS.learning_rate) #tf.add_to_collection('learning_rate', learning_rate) melt.add_global('learning_rate', learning_rate) #learning_rate_weight = tf.get_collection('learning_rate_weight')[-1] learning_rate_weight = melt.get_global('learning_rate_weight') try: #learning_rate_weights = tf.get_collection('learning_rate_weights')[-1] learning_rate_weights = melt.get_global('learning_rate_weights') except Exception: learning_rate_weights = None # ckpt dir save models one per epoch ckpt_dir = os.path.join(FLAGS.model_dir, 'ckpt') os.system('mkdir -p %s' % ckpt_dir) # HACK ckpt dir is actually save mini epoch like when you set save_interval_epochs=0.1, this is usefull when you training large dataset ckpt_dir2 = os.path.join(FLAGS.model_dir, 'ckpt2') os.system('mkdir -p %s' % ckpt_dir2) #TODO FIXME now I just changed tf code so to not by default save only latest 5 # refer to https://github.com/tensorflow/tensorflow/issues/22036 # manager = tf.contrib.checkpoint.CheckpointManager( # checkpoint, directory=ckpt_dir, max_to_keep=5) # latest_checkpoint = manager.latest_checkpoint latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) if latest_checkpoint: logging.info('Latest checkpoint:', latest_checkpoint) else: latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir2) logging.info('Latest checkpoint:', latest_checkpoint) if os.path.exists(FLAGS.model_dir + '.index'): latest_checkpoint = FLAGS.model_dir if 'test' in FLAGS.work_mode or 'valid' in FLAGS.work_mode: #assert not os.path.isdir(FLAGS.model_dir), FLAGS.model_dir latest_checkpoint = FLAGS.model_dir #assert os.path.exists(latest_checkpoint) and os.path.isfile(latest_checkpoint) checkpoint_prefix = os.path.join(ckpt_dir, 'ckpt') checkpoint_prefix2 = os.path.join(ckpt_dir2, 'ckpt') if not FLAGS.torch: try: optimizer = optimizer or melt.get_optimizer(FLAGS.optimizer)(learning_rate) except Exception: logging.warning(f'Fail to using {FLAGS.optimizer} use adam instead') optimizer = melt.get_optimizer('adam')(learning_rate) # TODO... if learning_rate_weights is None: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, model=model, optimizer=optimizer, global_step=global_step) else: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, learning_rate_weights=learning_rate_weights, model=model, optimizer=optimizer, global_step=global_step) checkpoint.restore(latest_checkpoint) checkpoint2 = copy.deepcopy(checkpoint) start_epoch = int(latest_checkpoint.split('-')[-1]) if latest_checkpoint and 'ckpt' in latest_checkpoint else 0 start_step = 0 # TODO else: # TODO torch with learning rate adjust # https://github.com/horovod/horovod/blob/master/examples/pytorch_mnist.py # TODO full support for pytorch now not work optimizer, is_dynamic_opt = get_torch_optimizer(optimizer, model, num_steps_per_epoch, param_groups) start_epoch = 0 latest_path = latest_checkpoint + '.pyt' if latest_checkpoint else os.path.join(FLAGS.model_dir, 'latest.pyt') if not os.path.exists(latest_path): latest_path = os.path.join(FLAGS.model_dir, 'latest.pyt') if os.path.exists(latest_path): # NOTICE must only load 0! if all load now will OOM... if not use_horovod or hvd.rank() == 0: logging.info('loading torch model from', latest_path) checkpoint = load_torch_model(model, latest_path) if FLAGS.torch_load_optimizer: optimizer.load_state_dict(checkpoint['optimizer']) if use_horovod: hvd.broadcast_parameters(model.state_dict(), root_rank=0) optimizer_ = optimizer if not hasattr(optimizer, 'optimizer') else optimizer.optimizer hvd.broadcast_optimizer_state(optimizer_, root_rank=0) if not FLAGS.torch_finetune: if not use_horovod or hvd.rank() == 0: start_epoch = checkpoint['epoch'] step = checkpoint['step'] else: start_epoch = 0 step = 0 if use_horovod: temp = np.array([start_epoch, step]) comm.Bcast(temp, root=0) start_epoch, step = temp[0], temp[1] #global_step.assign(step + 1) #why add 1 ? global_step.assign(step) if not FLAGS.torch: # TODO by this way restart can not change learning rate.. if learning_rate_weights is None: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, global_step=global_step) else: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, learning_rate_weights=learning_rate_weights, global_step=global_step) try: checkpoint.restore(latest_checkpoint) checkpoint2 = copy.deepcopy(checkpoint) except Exception: pass if FLAGS.torch and is_dynamic_opt: optimizer._step = global_step.numpy() #model.load_weights(os.path.join(ckpt_dir, 'ckpt-1')) #model.save('./weight3.hd5') logging.info('optimizer:', optimizer) if FLAGS.torch_lr: learning_rate.assign(optimizer.rate(1)) if FLAGS.torch: learning_rate.assign(optimizer.param_groups[0]['lr']) logging.info('learning rate got from pytorch latest.py as', learning_rate.numpy()) learning_rate.assign(learning_rate * FLAGS.learning_rate_start_factor) if learning_rate_weights is not None: learning_rate_weights.assign(learning_rate_weights * FLAGS.learning_rate_start_factor) # TODO currently not support 0.1 epoch.. like this num_epochs = FLAGS.num_epochs if FLAGS.num_epochs != 0 else 1024 will_valid = valid_dataset and not FLAGS.work_mode == 'test' and not 'SHOW' in os.environ and not 'QUICK' in os.environ if global_step.numpy() == 0 : will_valid = False if gezi.get_env('EVFIRST') == '1': will_valid = True if gezi.get_env('EVFIRST') == '0': will_valid = False if will_valid: logging.info('----------valid') if hasattr(model, 'eval'): model.eval() names = None if evaluate_fn is not None: vals, names = evaluate_fn(model, valid_dataset, tf.train.latest_checkpoint(ckpt_dir), num_valid_steps_per_epoch) elif eval_fn: model_path = None if not write_valid else latest_checkpoint names = valid_names if valid_names is not None else [infer_names[0]] + [x + '_y' for x in infer_names[1:]] + infer_names[1:] if infer_names else None logging.info('model_path:', model_path, 'model_dir:', FLAGS.model_dir) vals, names = evaluate(model, valid_dataset, eval_fn, model_path, names, valid_write_fn, write_streaming, num_valid_steps_per_epoch, num_valid_examples, suffix=valid_suffix, sep=sep) if names: logging.info2('epoch:%.2f/%d step:%d' % (global_step.numpy() / num_steps_per_epoch, num_epochs, global_step.numpy()), ['%s:%.4f' % (name, val) for name, val in zip(names, vals)]) if FLAGS.work_mode == 'valid' or gezi.get_env('METRIC') == '1': exit(0) if 'test' in FLAGS.work_mode or gezi.get_env('TEST') == '1' or gezi.get_env('INFER') == '1': logging.info('--------test/inference') if test_dataset: if hasattr(model, eval): model.eval() if inference_fn is None: # model_path = FLAGS.model_dir + '.pyt' if not latest_checkpoint else latest_checkpoint # logging.info('model_path', model_path) assert latest_checkpoint inference(model, test_dataset, latest_checkpoint, infer_names, infer_debug_names, infer_write_fn, write_streaming, num_test_steps_per_epoch, num_test_examples, suffix=infer_suffix) else: inference_fn(model, test_dataset, tf.train.latest_checkpoint(ckpt_dir), num_test_steps_per_epoch) exit(0) if 'SHOW' in os.environ: num_epochs = start_epoch + 1 class PytObj(object): def __init__(self, x): self.x = x def numpy(self): return self.x class PytMean(object): def __init__(self): self._val = 0. self.count = 0 self.is_call = True def clear(self): self._val = 0 self.count = 0 def __call__(self, val): if not self.is_call: self.clear() self.is_call = True self._val += val.item() self.count += 1 def result(self): if self.is_call: self.is_call = False if not self.count: val = 0 else: val = self._val / self.count # TODO just for compact with tf .. return PytObj(val) Mean = tfe.metrics.Mean if not FLAGS.torch else PytMean num_insts = 0 if FLAGS.learning_rate_decay_factor > 0: #assert FLAGS.learning_rate_values is None, 'use exponential_decay or piecewise_constant?' #NOTICE if you do finetune or other things which might change batch_size then you'd better direclty set num_steps_per_decay #since global step / decay_steps will not be correct epoch as num_steps per epoch changed #so if if you change batch set you have to reset global step as fixed step assert FLAGS.num_steps_per_decay or (FLAGS.num_epochs_per_decay and num_steps_per_epoch), 'must set num_steps_per_epoch or num_epochs_per_decay and num_steps_per_epoch' decay_steps = FLAGS.num_steps_per_decay or int(num_steps_per_epoch * FLAGS.num_epochs_per_decay) decay_start_step = FLAGS.decay_start_step or int(num_steps_per_epoch * FLAGS.decay_start_epoch) # decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps) logging.info('learning_rate_decay_factor:{} decay_epochs:{} decay_steps:{} decay_start_epoch:{} decay_start_step:{}'.format( FLAGS.learning_rate_decay_factor, FLAGS.num_epochs_per_decay, decay_steps, FLAGS.decay_start_epoch, decay_start_step)) #-------------------------start training if hasattr(model, 'train'): model.train() if use_horovod: # if using tf eager reading need to shink size if not FLAGS.torch_only: # if use torch dataset, can get len directly for distributed train num_steps_per_epoch = -(-num_examples // (batch_size * hvd.size())) if num_examples else None if FLAGS.horovod_eval: # multiple gpu eval num_valid_steps_per_epoch = -(-num_valid_examples // (batch_size_ * hvd.size())) if num_valid_examples else None num_test_steps_per_epoch = -(-num_test_examples // (batch_size_ * hvd.size())) if num_test_examples else None timer = gezi.Timer() loss_avg = Mean() # for eager right now is repeat mode, so not need for epoch, but we can stop at inter loop last check global step and exit if not num_epochs: num_epochs = 1024 # not stop if not manu set num epochs if FLAGS.torch: model = model.to(device) #----------------------------------------main loop here for epoch in range(start_epoch, start_epoch + num_epochs): # FLAGS.torch only will not use eager, FLAGS.torch still use eager tf reading if FLAGS.torch_only: if train_dataset.sampler and hasattr(train_dataset.sampler, 'set_epoch'): # if not set each epoch shuffle same seed.. train_dataset.sampler.set_epoch(epoch) for i, (x, y) in tqdm(enumerate(train_dataset), total=num_steps_per_epoch, ascii=True): if FLAGS.torch: x, y = to_torch(x, y) if is_dynamic_opt: learning_rate.assign(optimizer.rate()) def loss_fn_(x, y): if not FLAGS.torch and 'training' in inspect.getargspec(model.call).args: y_ = model(x, training=True) else: y_ = model(x) if not FLAGS.torch: return loss_fn(y, y_) else: return loss_fn(y_, y) if not FLAGS.torch: loss, grads = melt.eager.grad(model, x, y, loss_fn) grads, _ = tf.clip_by_global_norm(grads, FLAGS.clip_gradients) #optimizer.apply_gradients(zip(grads, model.variables)) optimizer.apply_gradients(zip(grads, model.trainable_variables)) # https://github.com/horovod/horovod/blob/master/examples/tensorflow_mnist_eager.py # Horovod: broadcast initial variable states from rank 0 to all other processes. # This is necessary to ensure consistent initialization of all workers when # training is started with random weights or restored from a checkpoint. # Note: broadcast should be done after the first gradient step to ensure optimizer # initialization. # TODO check eager mode if use_horovod and epoch == start_epoch and i == 0: hvd.broadcast_variables(model.variables, root_rank=0) hvd.broadcast_variables(optimizier.variables(), root_rank=0) else: optimizer.zero_grad() loss = loss_fn_(x, y) loss.backward() torch.nn.utils.clip_grad_norm_(model.parameters(), FLAGS.clip_gradients) optimizer.step() global_step.assign_add(1) loss_avg(loss) ## https://discuss.pytorch.org/t/calling-loss-backward-reduce-memory-usage/2735 # if FLAGS.torch: # del loss batch_size_ = list(x.values())[0].shape[FLAGS.batch_size_dim] if type(x) == type({}) else x.shape[FLAGS.batch_size_dim] num_insts += int(batch_size_) if global_step.numpy() % FLAGS.interval_steps == 0: #checkpoint.save(checkpoint_prefix) elapsed = timer.elapsed() steps_per_second = FLAGS.interval_steps / elapsed instances_per_second = num_insts / elapsed num_insts = 0 if num_steps_per_epoch is None: hours_per_epoch = None epoch_time_info = '' else: hours_per_epoch = num_steps_per_epoch / FLAGS.interval_steps * elapsed / 3600 epoch_time_info = '1epoch:[{:.2f}h]'.format(hours_per_epoch) if valid_dataset2: # try: # x, y = next(iter(valid_dataset2)) # except Exception: # # TODO FIXME how.. iterate stop restart.., here hack for my iterator see projects/lm/dataset # x, y = next(iter(valid_dataset2)) ## valid dataset2 is repeated ## NOTICE will always the first batch ... as below #x, y = next(iter(valid_dataset2)) x, y = next(valid_dataset2_iter) #print(x['id'][0]) if FLAGS.torch: x, y = to_torch(x, y) if hasattr(model, 'eval'): model.eval() valid_loss = loss_fn_(x, y) valid_loss = valid_loss.numpy() if not FLAGS.torch else valid_loss.item() if hasattr(model, 'train'): model.train() if not use_horovod or hvd.rank() == 0: # 'train_loss:[%.4f]' % loss_avg.result().numpy(), # 'valid_loss:[%.4f]' % valid_loss_avg.result().numpy() logging.info2('epoch:%.2f/%d' % ((global_step.numpy() / num_steps_per_epoch), num_epochs), 'step:%d' % global_step.numpy(), 'elap:[%.2f]' % elapsed, 'batch:[%d]' % batch_size_, #'gpus:[%d]' % num_gpus, #'batches/s:[%.2f]' % steps_per_second, #'insts/s:[%d]' % instances_per_second, '%s' % epoch_time_info, 'lr:[%.6f]' % learning_rate.numpy(), 'train:[%.4f]' % loss_avg.result().numpy(), 'valid:[%.4f]' % valid_loss ) if global_step.numpy() % FLAGS.valid_interval_steps == 0: if is_eager: with writer_valid.as_default(), summary.always_record_summaries(): summary.scalar('loss/valid', valid_loss) writer_valid.flush() else: summary.scalar('loss/valid', valid_loss, global_step.numpy()) else: if not use_horovod or hvd.rank() == 0: #'train_loss:[%.4f]' % loss_avg.result().numpy() logging.info2('epoch:%.2f/%d' % ((epoch + i / num_steps_per_epoch), num_epochs), 'step:%d' % global_step.numpy(), 'elap:[%.2f]' % elapsed, 'batch:[%d]' % batch_size_, # 'gpus:[%d]' % num_gpus, # 'batches/s:[%.2f]' % steps_per_second, #'insts/s:[%d]' % instances_per_second, '%s' % epoch_time_info, 'lr:[%.6f]' % learning_rate.numpy(), 'train:[%.4f]' % loss_avg.result().numpy() ) if not use_horovod or hvd.rank() == 0: if global_step.numpy() % FLAGS.valid_interval_steps == 0: if is_eager: with writer_train.as_default(), summary.always_record_summaries(): summary.scalar('loss/train_avg', loss_avg.result().numpy()) summary.scalar('learning_rate', learning_rate.numpy()) summary.scalar('other/batch_size', batch_size_) summary.scalar('other/epoch', melt.epoch()) if hours_per_epoch: summary.scalar('perf/hours_per_epoch', hours_per_epoch) summary.scalar('perf/steps_per_second', steps_per_second) summary.scalar('perf/instances_per_second', instances_per_second) writer_train.flush() else: summary.scalar('loss/train_avg', loss_avg.result().numpy(), global_step.numpy()) summary.scalar('learning_rate', learning_rate.numpy(), global_step.numpy()) summary.scalar('other/batch_size', batch_size_, global_step.numpy()) summary.scalar('other/epoch', melt.epoch(), global_step.numpy()) if hours_per_epoch: summary.scalar('perf/hours_per_epoch', hours_per_epoch, global_step.numpy()) summary.scalar('perf/steps_per_second', steps_per_second, global_step.numpy()) summary.scalar('perf/instances_per_second', instances_per_second, global_step.numpy()) if valid_dataset and FLAGS.metric_eval_interval_steps and global_step.numpy() and global_step.numpy() % FLAGS.metric_eval_interval_steps == 0: if hasattr(model, eval): model.eval() vals, names = None, None if evaluate_fn is not None: vals, names = evaluate_fn(model, valid_dataset, None, num_valid_steps_per_epoch) elif eval_fn: names = valid_names if valid_names is not None else [infer_names[0]] + [x + '_y' for x in infer_names[1:]] + infer_names[1:] if infer_names else None vals, names = evaluate(model, valid_dataset, eval_fn, None, names, valid_write_fn, write_streaming, num_valid_steps_per_epoch, num_valid_examples, sep=sep) if not use_horovod or hvd.rank() == 0: if vals and names: if is_eager: with writer_valid.as_default(), summary.always_record_summaries(): for name, val in zip(names, vals): summary.scalar(f'step_eval/{name}', val) writer_valid.flush() else: for name, val in zip(names, vals): summary.scalar(f'step_eval/{name}', val, global_step.numpy()) if FLAGS.torch: if not FLAGS.torch_lr: # control learning rate by tensorflow learning rate for param_group in optimizer.param_groups: # important learning rate decay param_group['lr'] = learning_rate.numpy() if hasattr(model, 'train'): model.train() if not use_horovod or hvd.rank() == 0: if names and vals: logging.info2('epoch:%.2f/%d' % ((global_step.numpy() / num_steps_per_epoch), num_epochs), 'valid_step:%d' % global_step.numpy(), 'valid_metrics', ['%s:%.5f' % (name, val) for name, val in zip(names, vals)]) if not use_horovod or hvd.rank() == 0: # TODO save ok ? if global_step.numpy() % FLAGS.save_interval_steps == 0: if FLAGS.torch: state = { 'epoch': int(global_step.numpy() / num_steps_per_epoch), 'step': global_step.numpy(), 'state_dict': model.state_dict() if not hasattr(model, 'module') else model.module.state_dict(), 'optimizer' : optimizer.state_dict(), } torch.save(state, os.path.join(FLAGS.model_dir, 'latest.pyt')) # TODO fixme why if both checpoint2 and chekpoint used... not ok.. if FLAGS.save_interval_epochs and global_step.numpy() % int(num_steps_per_epoch * FLAGS.save_interval_epochs) == 0: checkpoint2.save(checkpoint_prefix2) if FLAGS.torch: state = { 'epoch': int(global_step.numpy() / num_steps_per_epoch), 'step': global_step.numpy(), 'state_dict': model.state_dict() if not hasattr(model, 'module') else model.module.state_dict(), 'optimizer' : optimizer.state_dict(), } torch.save(state, tf.train.latest_checkpoint(ckpt_dir2) + '.pyt') if FLAGS.learning_rate_decay_factor > 0: if global_step.numpy() >= decay_start_step and global_step.numpy() % decay_steps == 0: lr = max(learning_rate.numpy() * FLAGS.learning_rate_decay_factor, FLAGS.min_learning_rate) if lr < learning_rate.numpy(): learning_rate.assign(lr) if FLAGS.torch: for param_group in optimizer.param_groups: param_group['lr'] = learning_rate.numpy() if i == 0 and epoch == start_epoch: try: if not FLAGS.torch: logging.info(model.summary()) # #tf.keras.utils.plot_model(model, to_file='/home/gezi/model.png', show_shapes=False, show_layer_names=True, rankdir='TB') # import keras # keras.utils.plot_model(model, to_file='/home/gezi/model.png', show_shapes=False, show_layer_names=True, rankdir='LR', expand_nested=True, dpi=96) except Exception: traceback.print_exc() logging.info('Fail to do model.summary() may be you have layer define in init but not used in call') if 'SHOW' in os.environ: exit(0) if valid_dataset and global_step.numpy() % int(num_steps_per_epoch * FLAGS.valid_interval_epochs) == 0: if hasattr(model, 'eval'): model.eval() vals, names = None, None if evaluate_fn is not None: vals, names = evaluate_fn(model, valid_dataset, tf.train.latest_checkpoint(ckpt_dir), num_valid_steps_per_epoch) elif eval_fn: model_path = None if not write_valid else tf.train.latest_checkpoint(ckpt_dir) #print('---------metric evaluate step', global_step.numpy(), 'model_path:', model_path) names = valid_names if valid_names is not None else [infer_names[0]] + [x + '_y' for x in infer_names[1:]] + infer_names[1:] if infer_names else None vals, names = evaluate(model, valid_dataset, eval_fn, model_path, names, valid_write_fn, write_streaming, num_valid_steps_per_epoch, num_valid_examples, suffix=valid_suffix, sep=sep) if not use_horovod or hvd.rank() == 0: if vals and names: logging.info2('epoch:%.2f/%d' % (global_step.numpy() / num_steps_per_epoch, num_epochs), 'step:%d' % global_step.numpy(), 'valid_metrics', ['%s:%.5f' % (name, val) for name, val in zip(names, vals)]) if is_eager: with writer.as_default(), summary.always_record_summaries(): temp = global_step.value() global_step.assign(int(global_step.numpy() / int(num_steps_per_epoch * FLAGS.valid_interval_epochs))) if vals and names: for name, val in zip(names, vals): summary.scalar(f'eval/{name}', val) writer.flush() global_step.assign(temp) else: if vals and names: for name, val in zip(names, vals): summary.scalar(f'eval/{name}', val, int(global_step.numpy() / int(num_steps_per_epoch * FLAGS.valid_interval_epochs))) if test_dataset and global_step.numpy() % int(num_steps_per_epoch * FLAGS.inference_interval_epochs) == 0: if hasattr(model, 'eval'): model.eval() if inference_fn is None: inference(model, test_dataset, tf.train.latest_checkpoint(ckpt_dir), infer_names, infer_debug_names, infer_write_fn, write_streaming, num_test_steps_per_epoch, num_test_examples, suffix=infer_suffix, sep=sep) else: inference_fn(model, test_dataset, tf.train.latest_checkpoint(ckpt_dir), num_test_steps_per_epoch) if num_epochs and num_steps_per_epoch and int(global_step.numpy() / num_steps_per_epoch) >= num_epochs: logging.info(f'Finshed training of {num_epochs} epochs') exit(0) ================================================ FILE: utils/melt/eager/util.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file util.py # \author chenghuige # \date 2018-09-03 12:05:03.098236 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import melt logging = melt.logging import inspect def grad(model, x, y, loss_fn): with tf.GradientTape() as tape: if 'training' in inspect.getargspec(model.call).args: y_ = model(x, training=True) else: y_ = model(x) loss = loss_fn(y, y_) # TODO eager or tf 2.0 support horovod # tape = hvd.DistributedGradientTape(tape) return loss, tape.gradient(loss, model.trainable_variables) def clip_gradients(grads_and_vars, clip_ratio): gradients, variables = zip(*grads_and_vars) clipped, _ = tf.clip_by_global_norm(gradients, clip_ratio) return zip(clipped, variables) def restore(model, ckpt_dir=None): if not ckpt_dir: ckpt_dir = FLAGS.model_dir + '/ckpt' if os.path.exists(ckpt_dir + '.index'): latest_checkpoint = ckpt_dir else: latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) logging.info('Latest checkpoint:', latest_checkpoint) checkpoint = tf.train.Checkpoint(model=model) # TODO check return value, verify if it is restore ok ? checkpoint.restore(latest_checkpoint) ================================================ FILE: utils/melt/encoder/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-12-23 14:00:38.403784 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.encoder.transformer import * ================================================ FILE: utils/melt/encoder/embedding_layer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Implementation of embedding layer with shared weights.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import model_utils class EmbeddingSharedWeights(tf.layers.Layer): """Calculates input embeddings and pre-softmax linear with shared weights.""" def __init__(self, vocab_size=1, hidden_size=128, embedding=None): super(EmbeddingSharedWeights, self).__init__() self.vocab_size = vocab_size self.hidden_size = hidden_size self.embedding = embedding assert self.vocab_size or self.embedding def build(self, _): with tf.variable_scope("embedding_and_softmax", reuse=tf.AUTO_REUSE): if not self.embedding: # Create and initialize weights. The random normal initializer was chosen # randomly, and works well. self.shared_weights = tf.get_variable( "weights", [self.vocab_size, self.hidden_size], initializer=tf.random_normal_initializer( 0., self.hidden_size ** -0.5)) else: self.shared_weights = self.embedding self.built = True def call(self, x): """Get token embeddings of x. Args: x: An int64 tensor with shape [batch_size, length] Returns: embeddings: float32 tensor with shape [batch_size, length, embedding_size] padding: float32 tensor with shape [batch_size, length] indicating the locations of the padding tokens in x. """ with tf.name_scope("embedding"): embeddings = tf.gather(self.shared_weights, x) # Scale embedding by the sqrt of the hidden size embeddings *= self.hidden_size ** 0.5 # Create binary array of size [batch_size, length] # where 1 = padding, 0 = not padding padding = model_utils.get_padding(x) # Set all padding embedding values to 0 embeddings *= tf.expand_dims(1 - padding, -1) return embeddings def linear(self, x): """Computes logits by running x through a linear layer. Args: x: A float32 tensor with shape [batch_size, length, hidden_size] Returns: float32 tensor with shape [batch_size, length, vocab_size]. """ with tf.name_scope("presoftmax_linear"): batch_size = tf.shape(x)[0] length = tf.shape(x)[1] x = tf.reshape(x, [-1, self.hidden_size]) logits = tf.matmul(x, self.shared_weights, transpose_b=True) return tf.reshape(logits, [batch_size, length, self.vocab_size]) ================================================ FILE: utils/melt/encoder/transformer.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Defines the Transformer model, and its encoder and decoder stacks. Model paper: https://arxiv.org/pdf/1706.03762.pdf Transformer model code source: https://github.com/tensorflow/tensor2tensor """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf # pylint: disable=g-bad-import-order from official.transformer.model import attention_layer from official.transformer.model import beam_search #from official.transformer.model import embedding_layer from melt.encoder import embedding_layer from official.transformer.model import ffn_layer from official.transformer.model import model_utils from official.transformer.utils.tokenizer import EOS_ID _NEG_INF = -1e9 class Transformer(object): """Transformer model for sequence to sequence data. Implemented as described in: https://arxiv.org/pdf/1706.03762.pdf The Transformer model consists of an encoder and decoder. The input is an int sequence (or a batch of sequences). The encoder produces a continous representation, and the decoder uses the encoder output to generate probabilities for the output sequence. """ def __init__(self, params, embedding, train): """Initialize layers to build Transformer model. Args: params: hyperparameter object defining layer sizes, dropout values, etc. train: boolean indicating whether the model is in training mode. Used to determine if dropout layers should be added. """ self.train = train self.params = params self.embedding_softmax_layer = embedding_layer.EmbeddingSharedWeights(embedding=embedding) self.encoder_stack = EncoderStack(params, train) def __call__(self, inputs): """Calculate target logits or inferred target sequences. Args: inputs: int tensor with shape [batch_size, input_length]. targets: None or int tensor with shape [batch_size, target_length]. Returns: If targets is defined, then return logits for each word in the target sequence. float tensor with shape [batch_size, target_length, vocab_size] If target is none, then generate output sequence one token at a time. returns a dictionary { output: [batch_size, decoded length] score: [batch_size, float]} """ # Variance scaling is used here because it seems to work in many problems. # Other reasonable initializers may also work just as well. initializer_gain = 1. initializer = tf.variance_scaling_initializer( initializer_gain, mode="fan_avg", distribution="uniform") with tf.variable_scope("Transformer", initializer=initializer): # Calculate attention bias for encoder self-attention and decoder # multi-headed attention layers. attention_bias = model_utils.get_padding_bias(inputs) # Run the inputs through the encoder layer to map the symbol # representations to continuous representations. encoder_outputs = self.encode(inputs, attention_bias) return encoder_outputs def encode(self, inputs, attention_bias): """Generate continuous representation for inputs. Args: inputs: int tensor with shape [batch_size, input_length]. attention_bias: float tensor with shape [batch_size, 1, 1, input_length] Returns: float tensor with shape [batch_size, input_length, hidden_size] """ with tf.name_scope("encode"): # Prepare inputs to the layer stack by adding positional encodings and # applying dropout. embedded_inputs = self.embedding_softmax_layer(inputs) inputs_padding = model_utils.get_padding(inputs) with tf.name_scope("add_pos_encoding"): length = tf.shape(embedded_inputs)[1] pos_encoding = model_utils.get_position_encoding( length, self.params.hidden_size) encoder_inputs = embedded_inputs + pos_encoding if self.train: encoder_inputs = tf.nn.dropout( encoder_inputs, 1 - self.params.layer_postprocess_dropout) return self.encoder_stack(encoder_inputs, attention_bias, inputs_padding) def decode(self, targets, encoder_outputs, attention_bias): """Generate logits for each value in the target sequence. Args: targets: target values for the output sequence. int tensor with shape [batch_size, target_length] encoder_outputs: continuous representation of input sequence. float tensor with shape [batch_size, input_length, hidden_size] attention_bias: float tensor with shape [batch_size, 1, 1, input_length] Returns: float32 tensor with shape [batch_size, target_length, vocab_size] """ with tf.name_scope("decode"): # Prepare inputs to decoder layers by shifting targets, adding positional # encoding and applying dropout. decoder_inputs = self.embedding_softmax_layer(targets) with tf.name_scope("shift_targets"): # Shift targets to the right, and remove the last element decoder_inputs = tf.pad( decoder_inputs, [[0, 0], [1, 0], [0, 0]])[:, :-1, :] with tf.name_scope("add_pos_encoding"): length = tf.shape(decoder_inputs)[1] decoder_inputs += model_utils.get_position_encoding( length, self.params.hidden_size) if self.train: decoder_inputs = tf.nn.dropout( decoder_inputs, 1 - self.params.layer_postprocess_dropout) # Run values decoder_self_attention_bias = model_utils.get_decoder_self_attention_bias( length) outputs = self.decoder_stack( decoder_inputs, encoder_outputs, decoder_self_attention_bias, attention_bias) logits = self.embedding_softmax_layer.linear(outputs) return logits def _get_symbols_to_logits_fn(self, max_decode_length): """Returns a decoding function that calculates logits of the next tokens.""" timing_signal = model_utils.get_position_encoding( max_decode_length + 1, self.params.hidden_size) decoder_self_attention_bias = model_utils.get_decoder_self_attention_bias( max_decode_length) def symbols_to_logits_fn(ids, i, cache): """Generate logits for next potential IDs. Args: ids: Current decoded sequences. int tensor with shape [batch_size * beam_size, i + 1] i: Loop index cache: dictionary of values storing the encoder output, encoder-decoder attention bias, and previous decoder attention values. Returns: Tuple of (logits with shape [batch_size * beam_size, vocab_size], updated cache values) """ # Set decoder input to the last generated IDs decoder_input = ids[:, -1:] # Preprocess decoder input by getting embeddings and adding timing signal. decoder_input = self.embedding_softmax_layer(decoder_input) decoder_input += timing_signal[i:i + 1] self_attention_bias = decoder_self_attention_bias[:, :, i:i + 1, :i + 1] decoder_outputs = self.decoder_stack( decoder_input, cache.get("encoder_outputs"), self_attention_bias, cache.get("encoder_decoder_attention_bias"), cache) logits = self.embedding_softmax_layer.linear(decoder_outputs) logits = tf.squeeze(logits, axis=[1]) return logits, cache return symbols_to_logits_fn def predict(self, encoder_outputs, encoder_decoder_attention_bias): """Return predicted sequence.""" batch_size = tf.shape(encoder_outputs)[0] input_length = tf.shape(encoder_outputs)[1] max_decode_length = input_length + self.params.extra_decode_length symbols_to_logits_fn = self._get_symbols_to_logits_fn(max_decode_length) # Create initial set of IDs that will be passed into symbols_to_logits_fn. initial_ids = tf.zeros([batch_size], dtype=tf.int32) # Create cache storing decoder attention values for each layer. cache = { "layer_%d" % layer: { "k": tf.zeros([batch_size, 0, self.params.hidden_size]), "v": tf.zeros([batch_size, 0, self.params.hidden_size]), } for layer in range(self.params.num_hidden_layers)} # Add encoder output and attention bias to the cache. cache["encoder_outputs"] = encoder_outputs cache["encoder_decoder_attention_bias"] = encoder_decoder_attention_bias # Use beam search to find the top beam_size sequences and scores. decoded_ids, scores = beam_search.sequence_beam_search( symbols_to_logits_fn=symbols_to_logits_fn, initial_ids=initial_ids, initial_cache=cache, vocab_size=self.params.vocab_size, beam_size=self.params.beam_size, alpha=self.params.alpha, max_decode_length=max_decode_length, eos_id=EOS_ID) # Get the top sequence for each batch element top_decoded_ids = decoded_ids[:, 0, 1:] top_scores = scores[:, 0] return {"outputs": top_decoded_ids, "scores": top_scores} class LayerNormalization(tf.layers.Layer): """Applies layer normalization.""" def __init__(self, hidden_size): super(LayerNormalization, self).__init__() self.hidden_size = hidden_size def build(self, _): self.scale = tf.get_variable("layer_norm_scale", [self.hidden_size], initializer=tf.ones_initializer()) self.bias = tf.get_variable("layer_norm_bias", [self.hidden_size], initializer=tf.zeros_initializer()) self.built = True def call(self, x, epsilon=1e-6): mean = tf.reduce_mean(x, axis=[-1], keepdims=True) variance = tf.reduce_mean(tf.square(x - mean), axis=[-1], keepdims=True) norm_x = (x - mean) * tf.rsqrt(variance + epsilon) return norm_x * self.scale + self.bias class PrePostProcessingWrapper(object): """Wrapper class that applies layer pre-processing and post-processing.""" def __init__(self, layer, params, train): self.layer = layer self.postprocess_dropout = params.layer_postprocess_dropout self.train = train # Create normalization layer self.layer_norm = LayerNormalization(params.hidden_size) def __call__(self, x, *args, **kwargs): # Preprocessing: apply layer normalization y = self.layer_norm(x) # Get layer output y = self.layer(y, *args, **kwargs) # Postprocessing: apply dropout and residual connection if self.train: y = tf.nn.dropout(y, 1 - self.postprocess_dropout) return x + y class EncoderStack(tf.layers.Layer): """Transformer encoder stack. The encoder stack is made up of N identical layers. Each layer is composed of the sublayers: 1. Self-attention layer 2. Feedforward network (which is 2 fully-connected layers) """ def __init__(self, params, train): super(EncoderStack, self).__init__() self.layers = [] for _ in range(params.num_hidden_layers): # Create sublayers for each layer. self_attention_layer = attention_layer.SelfAttention( params.hidden_size, params.num_heads, params.attention_dropout, train) feed_forward_network = ffn_layer.FeedFowardNetwork( params.hidden_size, params.filter_size, params.relu_dropout, train) self.layers.append([ PrePostProcessingWrapper(self_attention_layer, params, train), PrePostProcessingWrapper(feed_forward_network, params, train)]) # Create final layer normalization layer. self.output_normalization = LayerNormalization(params.hidden_size) def call(self, encoder_inputs, attention_bias, inputs_padding): """Return the output of the encoder layer stacks. Args: encoder_inputs: tensor with shape [batch_size, input_length, hidden_size] attention_bias: bias for the encoder self-attention layer. [batch_size, 1, 1, input_length] inputs_padding: P Returns: Output of encoder layer stack. float32 tensor with shape [batch_size, input_length, hidden_size] """ for n, layer in enumerate(self.layers): # Run inputs through the sublayers. self_attention_layer = layer[0] feed_forward_network = layer[1] with tf.variable_scope("layer_%d" % n): with tf.variable_scope("self_attention"): encoder_inputs = self_attention_layer(encoder_inputs, attention_bias) with tf.variable_scope("ffn"): encoder_inputs = feed_forward_network(encoder_inputs, inputs_padding) return self.output_normalization(encoder_inputs) class DecoderStack(tf.layers.Layer): """Transformer decoder stack. Like the encoder stack, the decoder stack is made up of N identical layers. Each layer is composed of the sublayers: 1. Self-attention layer 2. Multi-headed attention layer combining encoder outputs with results from the previous self-attention layer. 3. Feedforward network (2 fully-connected layers) """ def __init__(self, params, train): super(DecoderStack, self).__init__() self.layers = [] for _ in range(params.num_hidden_layers): self_attention_layer = attention_layer.SelfAttention( params.hidden_size, params.num_heads, params.attention_dropout, train) enc_dec_attention_layer = attention_layer.Attention( params.hidden_size, params.num_heads, params.attention_dropout, train) feed_forward_network = ffn_layer.FeedFowardNetwork( params.hidden_size, params.filter_size, params.relu_dropout, train) self.layers.append([ PrePostProcessingWrapper(self_attention_layer, params, train), PrePostProcessingWrapper(enc_dec_attention_layer, params, train), PrePostProcessingWrapper(feed_forward_network, params, train)]) self.output_normalization = LayerNormalization(params.hidden_size) def call(self, decoder_inputs, encoder_outputs, decoder_self_attention_bias, attention_bias, cache=None): """Return the output of the decoder layer stacks. Args: decoder_inputs: tensor with shape [batch_size, target_length, hidden_size] encoder_outputs: tensor with shape [batch_size, input_length, hidden_size] decoder_self_attention_bias: bias for decoder self-attention layer. [1, 1, target_len, target_length] attention_bias: bias for encoder-decoder attention layer. [batch_size, 1, 1, input_length] cache: (Used for fast decoding) A nested dictionary storing previous decoder self-attention values. The items are: {layer_n: {"k": tensor with shape [batch_size, i, key_channels], "v": tensor with shape [batch_size, i, value_channels]}, ...} Returns: Output of decoder layer stack. float32 tensor with shape [batch_size, target_length, hidden_size] """ for n, layer in enumerate(self.layers): self_attention_layer = layer[0] enc_dec_attention_layer = layer[1] feed_forward_network = layer[2] # Run inputs through the sublayers. layer_name = "layer_%d" % n layer_cache = cache[layer_name] if cache is not None else None with tf.variable_scope(layer_name): with tf.variable_scope("self_attention"): decoder_inputs = self_attention_layer( decoder_inputs, decoder_self_attention_bias, cache=layer_cache) with tf.variable_scope("encdec_attention"): decoder_inputs = enc_dec_attention_layer( decoder_inputs, encoder_outputs, attention_bias) with tf.variable_scope("ffn"): decoder_inputs = feed_forward_network(decoder_inputs) return self.output_normalization(decoder_inputs) ================================================ FILE: utils/melt/flow/__init__.py ================================================ #!/usr/bin/env python # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-16 13:01:22.325474 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.flow.train import * from melt.flow.test import * from melt.flow.train_once import projector_config #from melt.flow.flow import * ================================================ FILE: utils/melt/flow/dataset_flow.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file dataset_flow.py # \author chenghuige # \date 2017-12-20 12:21:56.486751 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os ================================================ FILE: utils/melt/flow/flow.py ================================================ #!/usr/bin/env python # ============================================================================== # \file flow.py # \author chenghuige # \date 2016-08-17 10:48:46.141744 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import tensorflow.contrib.slim as slim from tensorflow.contrib import tpu try: #import horovod.tensorflow as hvd from mpi4py import MPI comm = MPI.COMM_WORLD except Exception: pass import os, sys, traceback import melt import gezi from melt.utils import logging import glob import inspect import traceback import numpy as np from tqdm import tqdm def tf_flow(process_once, model_dir=None, num_steps=None, sess=None): """ basic flow for tf records, allow most freedom for usage, if not tfrecords no need for flow Args: train_once: function with 2 inputs sess and step """ init_op = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer()) if sess is None: sess = tf.InteractiveSession() if not model_dir: sess.run(init_op) else: melt.restore(sess, model_dir) # coord = tf.train.Coordinator() # threads = tf.train.start_queue_runners(sess=sess, coord=coord) # try: # # dataset # print('tf_flow using datset') # step = 0 # try: # while True: # stop = process_once(sess, step) # if stop is True: # print('Early stop running %d stpes'%(step)) # raise tf.errors.OutOfRangeError(None, None,'Early stop running %d stpes'%(step)) # step += 1 # if num_steps and step == num_steps: # raise tf.errors.OutOfRangeError(None, None, 'Reached max num steps') # except tf.errors.OutOfRangeError: # print('Done training for %d steps.' % (step)) # except Exception: # # old queue method # print('tf_flow using queue') try: step = 0 #while not coord.should_stop(): while True: stop = process_once(sess, step) if stop is True: print('Early stop running %d stpes'%(step)) raise tf.errors.OutOfRangeError(None, None,'Early stop running %d stpes'%(step)) step += 1 if num_steps and step == num_steps: raise tf.errors.OutOfRangeError(None, None, 'Reached max num steps') except tf.errors.OutOfRangeError: print('Done training for %d steps.' % (step)) # finally: # coord.request_stop() # coord.join(threads) sess.close() return step def _get_model_path(model_dir, save_model=False): if os.path.exists(model_dir + '.index') and os.path.exists(model_dir + '.meta'): # input is real model path return model_dir if not os.path.exists(model_dir): if save_model: gezi.try_mkdir(model_dir) return None ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #input valid dir and return latest model return os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) elif os.path.isdir(model_dir): #input valid dir but no models return None else: #this might be user specified model like ./model/model-100.ckpt #the file exists and we NOTICE we do not check if it is valid model file! return model_dir def _get_checkpoint_path(checkpoint_path, step=None, num_steps_per_epoch=None, epoch=None): if not num_steps_per_epoch: return checkpoint_path return '%s-%.2f'%(checkpoint_path, epoch or step / float(num_steps_per_epoch)) def tf_train_flow(train_once_fn, model_dir=None, log_dir=None, max_models_keep=1, save_interval_seconds=600, save_interval_steps=1000, num_epochs=None, num_steps=None, save_model=True, save_interval_epochs=None, freeze_graph=False, num_steps_per_epoch=0, restore_from_latest=True, metric_eval_fn=None, valid_interval_epochs=0, inference_fn=None, inference_interval_epochs=0, init_fn=None, restore_fn=None, restore_include=None, restore_exclude=None, save_all_scope=False, #TODO save load from restore scope only but svae all variables_to_restore=None, variables_to_save=None, #by default will be the same as variables_to_restore output_collection_names=None, output_node_names=None, learning_rate=None, #not use yet, just use in train_once learning_rate_patience=None, learning_rate_decay_factor=None, write_during_train=True, model=None, sess=None): """ similary flow as tf_flow, but add model try reload and save """ use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd model_dir_ = model_dir if use_horovod and hvd.rank() != 0: model_dir = None if sess is None: #TODO melt.get_session is global session but may cause non close at last sess = melt.get_session() if FLAGS.use_tpu: sess.run(tpu.initialize_system()) #logging.info('tf_train_flow start') #logging.info('max_models_keep:', max_models_keep) #logging.info('save_interval_seconds:', save_interval_seconds) if model_dir: if model: checkpoint = tf.train.Checkpoint(model=model) ckpt_dir = model_dir + '/ckpt' checkpoint_prefix = os.path.join(ckpt_dir, 'ckpt') #this is usefull for you use another model with another scope, and just load and restore/save initalize your scope vars! #this is not for finetune but mainly for like using another model as in predict like this introducing graph other model scope and ignore here # var_list = None if not restore_scope else tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, scope=restore_scope) # #logging.info('-------------var_list', var_list) # if not variables_to_restore: # variables_to_restore = var_list if not variables_to_restore: variables_to_restore = slim.get_variables_to_restore(include=restore_include, exclude=restore_exclude) if not variables_to_save: variables_to_save = variables_to_restore if save_all_scope: variables_to_save = None #if variables_to_restore is None: logging.info('variables_to_restore from %s' % model_dir) #load all var in checkpoint try to save all var(might more then original checkpoint) if not specifiy variables_to_save varnames_in_checkpoint = melt.get_checkpoint_varnames(model_dir) #logging.info('varnames_in_checkpoint: {}'.format(varnames_in_checkpoint)) # TODO has someproblem say tf.Variable 'r_net/text_encoder/cudnn_rnn/cu_dnngru/recurrent_kernel/adam_v:0' even though in checkpoint I have renated it as ignore/rnet variables_to_restore_from_model = slim.get_variables_to_restore(include=varnames_in_checkpoint) #logging.info('variables_to_restore_from_model: {}'.format(variables_to_restore_from_model)) if not variables_to_restore: variables_to_restore = variables_to_restore_from_model else: variables_to_restore = [v for v in variables_to_restore if v in variables_to_restore_from_model] if restore_exclude: for excl in restore_exclude: variables_to_restore = [v for v in variables_to_restore if not excl in v.name] #--tf 1.6 adadelta will have same vars... variables_to_restore = list(set(variables_to_restore)) #logging.info('variables_to_restore', variables_to_restore[:100]) logging.info('variables_to_restore', [x for x in variables_to_restore if not 'OptimizeLoss' in x.name][:100]) ##finally remove global_step since melt.apps.train will handle it! global_step = tf.train.get_or_create_global_step() #variables_to_restore = [v for v in variables_to_restore if not tf.GraphKeys.GLOBAL_STEP in v.name] #variables_to_restore = [v for v in variables_to_restore if not 'learning_rate' in v.name] # TODO fixme if step, step2.. and in checkpoint step then here will be step2... #print('------------', [v for v in variables_to_restore if 'step' in v.name]) loader = tf.train.Saver(var_list=variables_to_restore) logging.info('max models to keep {}, keep every {} hours'.format(max_models_keep, save_interval_seconds / 3600.0)) saver = tf.train.Saver( max_to_keep=max_models_keep, keep_checkpoint_every_n_hours=save_interval_seconds / 3600.0, var_list=variables_to_save) epoch_saver = tf.train.Saver(var_list=variables_to_save, max_to_keep=1000) best_epoch_saver = tf.train.Saver(var_list=variables_to_save) #logging.info('variables_to_save:{}'.format(variables_to_save)) # # #TODO for safe restore all init will be ok ? # # if variables_to_restore is None: init_op = tf.group(tf.global_variables_initializer(), #variables_initializer(global_variables()) tf.local_variables_initializer()) #variables_initializer(local_variables()) # # else: # # init_op = tf.group(tf.variables_initializer(variables_to_restore), # # tf.local_variables_initializer()) ##--mostly this will be fine except for using assistant predictor, initialize again! will make assistant predictor wrong ##so assume to all run init op! if using assistant predictor, make sure it use another session # https://stackoverflow.com/questions/35164529/in-tensorflow-is-there-any-way-to-just-initialize-uninitialised-variables # def guarantee_initialized_variables(session, list_of_variables = None): # if list_of_variables is None: # list_of_variables = tf.global_variables() # uninitialized_variables = list(tf.get_variable(name) for name in # session.run(tf.report_uninitialized_variables(list_of_variables))) # return unintialized_variables # unintialized_variables = guarantee_initialized_variables(sess) # init_op = tf.group(tf.initialize_variables(uninitialized_vars), tf.local_variables_initializer()) timer = gezi.Timer('sess run init_op in melt.tf_train_flow') #model.save('./weights') # notice sess.run(init_op) timer.print_elapsed() #melt.init_uninitialized_variables(sess) #pre_step means the step last saved, train without pretrained,then -1 pre_step = -1 fixed_pre_step = -1 #fixed pre step is for epoch num to be correct if you change batch size #print(model_dir) pre_epoch = None if model_dir: model_path = _get_model_path(model_dir, save_model) # if not model_path: # model_path = _get_model_path(os.path.join(model_dir, 'epoch')) #print(model_path) model_dir = gezi.get_dir(model_dir) #incase you pass ./model/model-ckpt1000 -> ./model if model_path is not None: if not restore_from_latest: logging.info('using recent but not latest model') model_path = melt.recent_checkpoint(model_dir) model_name = os.path.basename(model_path) timer = gezi.Timer('Loading and training from existing model [%s]' % model_path) if restore_fn is not None: restore_fn(sess) loader.restore(sess, model_path) ## not supported #model.save() #model.save_weights('./weights') timer.print() #pre_step = melt.get_model_step(model_path) - 1 if FLAGS.global_step is None else FLAGS.global_step -1 # TODO check .. pre_step = sess.run(tf.train.get_global_step()) - 1 pre_epoch = melt.get_model_epoch(model_path) if FLAGS.global_epoch is None else FLAGS.global_epoch fixed_pre_step = pre_step # if pre_epoch is not None: # #like using batch size 32, then reload train using batch size 64 # if abs(pre_step / num_steps_per_epoch - pre_epoch) > 0.1: # fixed_pre_step = int(pre_epoch * num_steps_per_epoch) # logging.info('Warning, epoch is diff with pre_step / num_steps_per_epoch:{}, pre_epoch:{},maybe you change batch size and we will adjust to set pre_step as {}'\ # .format(pre_step / num_steps_per_epoch, pre_epoch, fixed_pre_step)) else: latest_checkpoint = None if not use_horovod: #now will hang try: latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) if latest_checkpoint: logging.info('Try start from eager trained mode, latest checkpoint:', latest_checkpoint) checkpoint.restore(latest_checkpoint).run_restore_ops(session=sess) pre_epoch = int(latest_checkpoint.split('-')[-1]) #pre_step = pre_epoch * num_steps_per_epoch - 1 # TODO check pre_step = sess.run(tf.train.get_global_step()) - 1 fixed_pre_step = pre_step logging.info('Start step is:', pre_step) except Exception: logging.info('Something wrong with restore from eager trained model') if latest_checkpoint is None: logging.info('Train all start step 0') #https://stackoverflow.com/questions/40220201/tensorflow-tf-initialize-all-variables-vs-tf-initialize-local-variables #tf.initialize_all_variables() is a shortcut to tf.initialize_variables(tf.all_variables()), #tf.initialize_local_variables() is a shortcut to tf.initialize_variables(tf.local_variables()), #which initializes variables in GraphKeys.VARIABLES and GraphKeys.LOCAL_VARIABLE collections, respectively. #init_op = tf.group(tf.global_variables_initializer(), # tf.local_variables_initializer()) #[var for var in tf.all_variables() if var.op.name.startswith(restore_scope)] will be the same as tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, scope=restore_scope) #sess.run(init_op) #like use image model, build image graph, reload first train, and then will go to same checkpoint all varaible just restore will ok #for finetune from loading other model init if init_fn is not None: init_fn(sess) #sess.run(tf.assign(global_step, tf.constant(global_step_val, dtype=tf.int64))) try: learning_rate = tf.get_collection('learning_rate')[-1] learning_rate_weight = tf.get_collection('learning_rate_weight')[-1] sess.run(tf.assign(learning_rate, learning_rate * learning_rate_weight)) except Exception: # if not using weight_decay but using optimizer decay then will go here as learning rate is a tensor can not assign pass try: logging.info('Actual start global step:', sess.run(global_step), 'learning rate:', sess.run(learning_rate), 'learning_rate_weight:', sess.run(learning_rate_weight)) except Exception: pass if use_horovod: bcast = hvd.broadcast_global_variables(0) sess.run(bcast) # before below if gezi.has_env('METRIC'): # safe for using horovod model_path_ = _get_model_path(model_dir_) l = metric_eval_fn(model_path_) if not use_horovod or hvd.rank() == 0: print(list(zip(l[1], l[0]))) exit(0) if model_dir_: #if save_interval_epochs and num_steps_per_epoch and num_steps >= 0: epoch_dir = os.path.join(model_dir_, 'epoch') if not use_horovod or hvd.rank() == 0: gezi.try_mkdir(epoch_dir) checkpoint_path = os.path.join(model_dir_, 'model.ckpt') # coord = tf.train.Coordinator() # threads = tf.train.start_queue_runners(sess=sess, coord=coord) #tf.train.write_graph(sess.graph_def, model_dir, 'train.pbtxt') only_one_step = False if use_horovod: ## TODO FIXME why bcast here not work ? simple test work see tests/bcast.py #comm.bcast(pre_step, root=0) temp = np.array([pre_step, fixed_pre_step]) comm.Bcast(temp, root=0) pre_step, fixed_pre_step = temp[0], temp[1] step = start = pre_step + 1 fixed_step = fixed_pre_step + 1 #first = True #hack just for save one model after load if num_steps < 0 or (num_steps and num_steps < step): logging.info('just load and resave then exit') model_path_ = _get_checkpoint_path(checkpoint_path, step, num_steps_per_epoch, epoch=pre_epoch) saver.save(sess, model_path_, global_step=step + 1) if freeze_graph: melt.freeze_graph(sess, model_path_, step + 1, output_collection_names, output_node_names) sess.close() exit(0) if num_epochs < 0: only_one_step = True logging.info('just run one step') if FLAGS.work_mode != 'train': assert not os.path.isdir(FLAGS.model_dir), FLAGS.model_dir if 'valid' in FLAGS.work_mode: vals, names = metric_eval_fn(FLAGS.model_dir) logging.info(list(zip(names, vals))) if 'test' in FLAGS.work_mode: inference_fn(FLAGS.model_dir) exit(0) #early_stop = True #TODO allow config num_bad_epochs = 0 pre_epoch_eval_loss = 1e20 best_epoch_eval_loss = 1e20 num_allowed_bad_epochs = 4 #allow 5 non decrease eval loss epochs before stop epoch_saved_step = 0 num_epochs = num_epochs if num_epochs else 1024 #-------------------------------main loop try: for epoch in range(num_epochs): for _ in tqdm(range(num_steps_per_epoch), ascii=True): model_step_path = None if model_dir_: model_path_ = os.path.join(epoch_dir,'model.ckpt-%.2f'%(fixed_step / float(num_steps_per_epoch))) model_step_path_ = model_path_ + '-' + str(step) if (write_during_train and metric_eval_fn is not None and valid_interval_epochs and fixed_step % int(num_steps_per_epoch * valid_interval_epochs) == 0): model_step_path = model_step_path_ else: model_step_path = None if step == 0: model_step_path = None #print('--------------------step', step) stop = train_once_fn(sess, step, is_start=(step==start), fixed_step=fixed_step, num_epochs=num_epochs, model_path=model_step_path, use_horovod=use_horovod, ## TODO FIXME this line will cause tensorflow.python.framework.errors_impl.NotFoundError: Resource localhost/save_counter/N10tensorflow3VarE does not exist. ) #first = False if only_one_step: stop = True step += 1 fixed_step += 1 if save_model and step and model_dir: #step 0 is also saved! actually train one step and save is_step_save = step % save_interval_steps == 0 is_epoch_save = save_interval_steps and num_steps_per_epoch and fixed_step % int(num_steps_per_epoch * save_interval_epochs) == 0 is_step_save = is_step_save or is_epoch_save if is_step_save: timer = gezi.Timer('save model step %d to %s'%(step, checkpoint_path), False) model_path_ = _get_checkpoint_path(checkpoint_path, fixed_step, num_steps_per_epoch) saver.save(sess, model_path_, global_step=step) if freeze_graph: melt.freeze_graph(sess, model_path_, step, output_collection_names, output_node_names) if log_dir != model_dir: assert log_dir command = 'rsync -l -r -t %s/* %s' % (log_dir, model_dir) print(command, file=sys.stderr) os.system(command) timer.print_elapsed() if is_epoch_save: # TODO only epoch in name not sep ? epoch_saved_step = step model_path_ = os.path.join(epoch_dir,'model.ckpt-%.2f'%(fixed_step / float(num_steps_per_epoch))) model_step_path = model_path_ + '-' + str(step) timer = gezi.Timer('epoch save to {}'.format(model_path_)) epoch_saver.save(sess, model_path_, global_step=step) #logging.info(timer.elapsed()) timer.print_elapsed() # TODO FIXME if add keras save below wil hang, might due to rank 0 save so slower then others # fixed by adding allreduce on each loop end # [1,0]:Stalled ranks: # [1,0]:0: [HorovodAllreduce_Const_9_0] if model and not use_horovod: #if model: #model.save_weights(epoch_dir + '/ckpt-%.2f' % (fixed_step / float(num_steps_per_epoch))) # TODO FIXME if restart will save from 1... again.. timer = gezi.Timer('keras epoch save to {}'.format(checkpoint_prefix)) checkpoint.save(checkpoint_prefix, session=sess) #print(sess.run(checkpoint.save_counter)) #logging.info(timer.elapsed()) timer.print_elapsed() if freeze_graph: melt.freeze_graph(sess, model_path_, step, output_collection_names, output_node_names) if write_during_train: if inference_fn is not None and inference_interval_epochs and fixed_step % int(num_steps_per_epoch * inference_interval_epochs) == 0: model_step_path = model_path_ + '-' + str(step) try: #print('--------------inference fn') inference_fn(model_path=model_step_path) except Exception: logging.info(traceback.format_exc()) ## metric eval move to train_once which means you first save then eval, so might need 1 more step # if metric_eval_fn is not None and valid_interval_epochs and fixed_step % int(num_steps_per_epoch * valid_interval_epochs) == 0: # model_step_path = model_path_ + '-' + str(step) # try: # metric_eval_fn(model_path=model_step_path) # except Exception: # logging.info(traceback.format_exc()) if stop is True: print('Early stop running %d stpes'%(step), file=sys.stderr) raise tf.errors.OutOfRangeError(None, None,'Early stop running %d stpes'%(step)) if num_steps and (step + 1) == start + num_steps: raise tf.errors.OutOfRangeError(None, None,'Reached max num steps') #max_num_epochs = 1000 max_num_epochs = num_epochs #if max_num_epochs and num_steps_per_epoch and fixed_step // num_steps_per_epoch >= max_num_epochs: if max_num_epochs and num_steps_per_epoch and fixed_step / num_steps_per_epoch > max_num_epochs: raise tf.errors.OutOfRangeError(None, None,'Reached max num epochs of %d'%max_num_epochs) raise tf.errors.OutOfRangeError(None, None,'Reached max num epochs of %d'%max_num_epochs) except tf.errors.OutOfRangeError: # if run 2 epoch and we have just epoch saved, do not need to save only 1 step more model if (step - epoch_saved_step > 1) and not (step==start) and save_model and step % save_interval_steps != 0 and model_dir: model_path_ = _get_checkpoint_path(checkpoint_path, step, num_steps_per_epoch) saver.save(sess, model_path_, global_step=step) if freeze_graph: melt.freeze_graph(sess, model_path_, step, output_collection_names, output_node_names) ## this is for train which save files to hdfs then HACK (set log_dir different then model_dir log save to local and sync to model_dir when saving model) if log_dir != model_dir: assert log_dir command = 'rsync -l -r -t %s/* %s' % (log_dir, model_dir) print(command, file=sys.stderr) os.system(command) if only_one_step: # TODO strange logging.info will not show to screen if using horovod logging.info('Done one step') exit(0) ## since we have saved model then eval no need to do here, expect for train with specific steps but not common use # if (step - epoch_saved_step > 1) and metric_eval_fn is not None: # metric_eval_fn(model_path=model_step_path) if (num_epochs and fixed_step / num_steps_per_epoch >= num_epochs) or (num_steps and step == start + num_steps) : logging.info('Done training for %.3f epochs, %d steps.' % (fixed_step / num_steps_per_epoch, step)) #FIXME becase coord.join seems not work, RuntimeError: Coordinator stopped with threads still running: Thread-9 exit(0) else: logging.info('Should not stop, but stopped at epoch: %.3f'%(fixed_step / num_steps_per_epoch)) logging.info(traceback.format_exc()) #raise e if FLAGS.use_tpu: sess.run(tpu.shutdown_system()) sess.close() #@TODO not tested yet def tf_test_flow(test_once, model_dir='./model', model_name=None, num_epochs=1, num_steps=0, sess=None): """ basic flow for tf records, allow most freedom for usage, if not tfrecords no need for flow Args: test_once: function with 2 inputs sess and step model_dir: can be dir like ./model will fetch lates model in model dir , or be real model path like ./model/model.0.ckpt """ if sess is None: sess = tf.InteractiveSession() melt.restore(sess, model_dir, model_name) if not os.path.isdir(model_dir): model_dir = os.path.dirname(model_dir) summary_op = tf.merge_all_summaries() summary_writer = tf.train.SummaryWriter(model_dir, sess.graph) # coord = tf.train.Coordinator() # threads = tf.train.start_queue_runners(sess=sess, coord=coord) try: step = 0 #while not coord.should_stop(): while True: test_once(sess, step) step += 1 if num_steps and step == num_steps: raise tf.errors.OutOfRangeError(None, None, 'Reached max num steps') except tf.errors.OutOfRangeError: print('Done testing for %d epochs, %d steps.' % (num_epochs, step)) ================================================ FILE: utils/melt/flow/test.py ================================================ #!/usr/bin/env python # ============================================================================== # \file test_tfrecord.py # \author chenghuige # \date 2016-08-16 13:01:09.932544 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import tensorflow as tf import gezi from gezi import AvgScore import melt #not used yet from melt.flow.flow import tf_test_flow logging = melt.logging def test_flow(ops, names=None, gen_feed_dict_fn=None, deal_results_fn=None, model_dir='./model', model_name=None, num_epochs=1, interval_steps=100, eval_times=0, print_avg_loss=True, sess=None): """ test flow, @TODO improve list result print Args: ops: eval ops names: eval names model_path: can be dir like ./model will fetch lates model in model dir , or be real model path like ./model/model.0.ckpt @TODO num_epochs should be 1,but now has problem of loading model if set @FIXME, so now 0 """ if sess is None: sess = tf.InteractiveSession() melt.restore(sess, model_dir, model_name) if not os.path.isdir(model_dir): model_dir = os.path.dirname(model_dir) summary_op = tf.summary.merge_all() summary_writer = tf.summary.FileWriter(model_dir, sess.graph) coord = tf.train.Coordinator() threads = tf.train.start_queue_runners(sess=sess, coord=coord) try: step = 0 eval_step = 0 avg_eval = AvgScore() total_avg_eval = AvgScore() while not coord.should_stop(): feed_dict = {} if gen_feed_dict_fn is None else gen_feed_dict_fn() results = sess.run(ops, feed_dict=feed_dict) if not isinstance(results, (list, tuple)): results = [results] if print_avg_loss: loss = gezi.get_singles(results) avg_eval.add(loss) total_avg_eval.add(loss) if step % interval_steps == 0: if deal_results_fn is not None: #@TODO may need to pass summary_writer, and step #use **args ? deal_results_fn(results) average_eval = avg_eval.avg_score() print('{}: average evals = {}'.format(gezi.now_time(), melt.value_name_list_str(average_eval, names)), 'step:', step) summary = tf.Summary() try: summary_str = sess.run(summary_op, feed_dict=feed_dict) except Exception: print(summary_op) if not hasattr(test_flow, 'num_summary_errors'): logging.warning('summary_str = sess.run(train_once.summary_op, feed_dict=eval_feed_dict) fail') test_flow.num_summary_errors = 1 summary_str = '' summary.ParseFromString(summary_str) results = gezi.get_singles(results) for i in xrange(len(results)): name = i if names is None else names[i] summary.value.add(tag='metric{}'.format(name), simple_value=average_eval[i]) summary_writer.add_summary(summary, step) if eval_step and eval_step == eval_times: break eval_step += 1 step += 1 print('Done testing for {} epochs, {} steps. AverageEvals:{}'.format(num_epochs, step, gezi.pretty_floats(total_avg_eval.avg_score()))) except tf.errors.OutOfRangeError: print('Done testing for {} epochs, {} steps. AverageEvals:{}'.format(num_epochs, step, gezi.pretty_floats(total_avg_eval.avg_score()))) finally: # When done, ask the threads to stop. coord.request_stop() # Wait for threads to finish. coord.join(threads) ================================================ FILE: utils/melt/flow/test_once.py ================================================ #!/usr/bin/env python # ============================================================================== # \file test.py # \author chenghuige # \date 2016-08-16 12:59:40.643284 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #@TODO test may be auc or other things try to use contrib/metric ================================================ FILE: utils/melt/flow/train.py ================================================ #!/usr/bin/env python # ============================================================================== # \file train_tfrecord.py # \author chenghuige # \date 2016-08-16 13:00:55.055143 # \Description # ============================================================================== """ @TODO train_tfrecord.py test_tfrecord.py should be rename to train.py test.py since the work flow works for tfrecord or simple feeding data flow train.py test.py right now should be rename to train_once.py test_once.py """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import gezi from gezi import Timer import melt import os from melt.flow.train_once import train_once from melt.flow.flow import tf_flow from melt.flow.flow import tf_train_flow # try: # import horovod.tensorflow as hvd # except Exception: # pass #from melt.util import print_results #@TODO inside melt can not use melt.print_reults must use melt.util.print_results #@TODO too many args, using **kwarg ? def simple_train_flow(ops, names=None, gen_feed_dict_fn=None, deal_results_fn=melt.print_results, interval_steps=100, eval_ops=None, eval_names=None, gen_eval_feed_dict_fn=None, deal_eval_results_fn=melt.print_results, valid_interval_steps=100, print_time=True, print_avg_loss=True, log_dir=None, num_steps=None, num_steps_per_epoch=None, metric_eval_fn=None, metric_eval_interval_steps=0, sess=None): """ simple train flow for tr records, without model saving just for test purpose, see examples/sparse-tensor-classification/train-melt.py NOTICE: first ops must be train_op(optimizer related) which will later ignored """ print('Will not save model') if log_dir: print('Will save log to %s'%log_dir) else: print('Will not save log') def train_once_(sess, step): train_once(sess, step, ops, names, gen_feed_dict_fn, deal_results_fn, interval_steps, eval_ops, eval_names, gen_eval_feed_dict_fn, deal_eval_results_fn, valid_interval_steps, print_time, print_avg_loss, log_dir=log_dir, num_steps_per_epoch=num_steps_per_epoch, metric_eval_fn=metric_eval_fn, metric_eval_interval_steps=metric_eval_interval_steps) tf_flow(train_once_, num_steps, sess=sess) def train_flow(ops, names=None, gen_feed_dict_fn=None, deal_results_fn=melt.print_results, interval_steps=100, eval_ops=None, eval_names=None, gen_eval_feed_dict_fn=None, deal_eval_results_fn=melt.print_results, valid_interval_steps=100, eval_loops=1, print_time=True, print_avg_loss=True, model_dir=None, max_models_keep=5, save_interval_seconds=600, save_interval_steps=1000, freeze_graph=False, log_dir=None, no_log=False, num_epochs=None, num_steps=None, num_steps_per_epoch=None, optimizer=None, learning_rate=None, learning_rate_patience=None, learning_rate_decay_factor=None, save_model=True, save_interval_epochs=None, add_train_var_histogram=False, restore_from_latest=True, metric_eval_fn=None, metric_eval_interval_steps=0, valid_interval_epochs=0, inference_fn=None, inference_interval_epochs=0, summary_excls=None, init_fn=None, restore_fn=None, restore_include=None, restore_exclude=None, save_all_scope=False, variables_to_restore=None, variables_to_save=None, output_collection_names=None, output_node_names=None, write_during_train=True, use_horovod=False, model=None, sess=None): """ train flow for tr records, with model saving/reload and summary considered summary logs will also write to model_dir see examples/sparse-tensor-classification/train-melt-savemodel.py NOTICE: first ops must be train_op(optimizer related) which will later ignored #@TODO allow adding momentum for optimzer allow mutliple gpu @TODO can we show epoch num info ? """ if optimizer is not None: loss = ops[0] if isinstance(optimizer, str): train_op = melt.gen_train_op_byname(loss, learning_rate, optimizer) else: train_op = optimizer(learning_rate).minimize(loss) ops = list(ops) ops.insert(0, train_op) if not model_dir: if log_dir and no_log: log_dir = None if not use_horovod: return simple_train_flow(ops, names, gen_feed_dict_fn, deal_results_fn, interval_steps, eval_ops, eval_names, gen_eval_feed_dict_fn, deal_eval_results_fn, valid_interval_steps, print_time, print_avg_loss, log_dir, num_steps, num_steps_per_epoch=num_steps_per_epoch, metric_eval_fn=metric_eval_fn, metric_eval_interval_steps=metric_eval_interval_steps, sess=sess) #if not set log dir try to use model dir to store log #so defaut is write log, if only want save model but disable log, set no_log=True if save_model: print('Will save model to %s'%model_dir) else: no_log = True print('Will not save model, only read model from %s if exists'%model_dir) if not log_dir and not no_log: log_dir = gezi.get_dir(model_dir) if log_dir: print('Will save log to %s'%log_dir) if add_train_var_histogram: # Add histograms for trainable variables. #this is also great for you to see all the trainable variables on tensorboard #NOTICE for big model this is too slow! melt.monitor_train_vars() else: print('Will not save log') def train_once_(sess, step, is_start=False, fixed_step=None, num_epochs=None, model_path=None, use_horovod=False): train_once(sess, step, ops, names, gen_feed_dict_fn, deal_results_fn, interval_steps, eval_ops, eval_names, gen_eval_feed_dict_fn, deal_eval_results_fn, valid_interval_steps, print_time, print_avg_loss, model_dir, log_dir, is_start, num_steps_per_epoch, metric_eval_fn=metric_eval_fn, metric_eval_interval_steps=metric_eval_interval_steps, summary_excls=summary_excls, fixed_step=fixed_step, eval_loops=eval_loops, learning_rate=learning_rate, learning_rate_patience=learning_rate_patience, learning_rate_decay_factor=learning_rate_decay_factor, num_epochs=num_epochs, model_path=model_path, use_horovod=use_horovod ) #print('1.2--------------------OMPI_COMM_WORLD_RANK in', 'OMPI_COMM_WORLD_RANK' in os.environ, hvd.rank()) tf_train_flow(train_once_, model_dir, log_dir, max_models_keep, save_interval_seconds, save_interval_steps, num_epochs, num_steps, save_model=save_model, save_interval_epochs=save_interval_epochs, freeze_graph=freeze_graph, num_steps_per_epoch=num_steps_per_epoch, restore_from_latest=restore_from_latest, metric_eval_fn=metric_eval_fn, valid_interval_epochs=valid_interval_epochs, inference_fn=inference_fn, inference_interval_epochs=inference_interval_epochs, init_fn=init_fn, restore_fn=restore_fn, restore_include=restore_include, restore_exclude=restore_exclude, save_all_scope=save_all_scope, variables_to_restore=variables_to_restore, variables_to_save=variables_to_save, output_collection_names=output_collection_names, output_node_names=output_node_names, learning_rate=learning_rate, learning_rate_patience=learning_rate_patience, learning_rate_decay_factor=learning_rate_decay_factor, write_during_train=write_during_train, model=model, sess=sess) ================================================ FILE: utils/melt/flow/train_once.py ================================================ #!/usr/bin/env python # ============================================================================== # \file train.py # \author chenghuige # \date 2016-08-16 12:59:29.331219 # \Description # ============================================================================== """ @TODO better logging, using logging.info ? """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import six if six.PY2: from io import BytesIO as IO else: from io import StringIO as IO import sys, os, traceback import inspect from melt.utils import logging #import logging import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow.keras import backend as K import gezi from gezi import Timer, AvgScore import melt # try: # import horovod.tensorflow as hvd # except Exception: # pass projector_config = tf.contrib.tensorboard.plugins.projector.ProjectorConfig() def train_once(sess, step, ops, names=None, gen_feed_dict_fn=None, deal_results_fn=None, interval_steps=100, eval_ops=None, eval_names=None, gen_eval_feed_dict_fn=None, deal_eval_results_fn=melt.print_results, valid_interval_steps=100, print_time=True, print_avg_loss=True, model_dir=None, log_dir=None, is_start=False, num_steps_per_epoch=None, metric_eval_fn=None, metric_eval_interval_steps=0, summary_excls=None, fixed_step=None, # for epoch only, incase you change batch size eval_loops=1, learning_rate=None, learning_rate_patience=None, learning_rate_decay_factor=None, num_epochs=None, model_path=None, use_horovod=False, ): use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd #is_start = False # force not to evaluate at first step #print('-----------------global_step', sess.run(tf.train.get_or_create_global_step())) timer = gezi.Timer() if print_time: if not hasattr(train_once, 'timer'): train_once.timer = Timer() train_once.eval_timer = Timer() train_once.metric_eval_timer = Timer() melt.set_global('step', step) epoch = (fixed_step or step) / num_steps_per_epoch if num_steps_per_epoch else -1 if not num_epochs: epoch_str = 'epoch:%.3f' % (epoch) if num_steps_per_epoch else '' else: epoch_str = 'epoch:%.3f/%d' % (epoch, num_epochs) if num_steps_per_epoch else '' melt.set_global('epoch', '%.2f' % (epoch)) info = IO() stop = False if eval_names is None: if names: eval_names = ['eval/' + x for x in names] if names: names = ['train/' + x for x in names] if eval_names: eval_names = ['eval/' + x for x in eval_names] is_eval_step = is_start or valid_interval_steps and step % valid_interval_steps == 0 summary_str = [] eval_str = '' if is_eval_step: # deal with summary if log_dir: if not hasattr(train_once, 'summary_op'): #melt.print_summary_ops() if summary_excls is None: train_once.summary_op = tf.summary.merge_all() else: summary_ops = [] for op in tf.get_collection(tf.GraphKeys.SUMMARIES): for summary_excl in summary_excls: if not summary_excl in op.name: summary_ops.append(op) print('filtered summary_ops:') for op in summary_ops: print(op) train_once.summary_op = tf.summary.merge(summary_ops) #train_once.summary_train_op = tf.summary.merge_all(key=melt.MonitorKeys.TRAIN) train_once.summary_writer = tf.summary.FileWriter(log_dir, sess.graph) tf.contrib.tensorboard.plugins.projector.visualize_embeddings(train_once.summary_writer, projector_config) # if eval ops then should have bee rank 0 if eval_ops: #if deal_eval_results_fn is None and eval_names is not None: # deal_eval_results_fn = lambda x: melt.print_results(x, eval_names) for i in range(eval_loops): eval_feed_dict = {} if gen_eval_feed_dict_fn is None else gen_eval_feed_dict_fn() #eval_feed_dict.update(feed_dict) # if use horovod let each rant use same sess.run! if not log_dir or train_once.summary_op is None or gezi.env_has('EVAL_NO_SUMMARY') or use_horovod: #if not log_dir or train_once.summary_op is None: eval_results = sess.run(eval_ops, feed_dict=eval_feed_dict) else: eval_results = sess.run(eval_ops + [train_once.summary_op], feed_dict=eval_feed_dict) summary_str = eval_results[-1] eval_results = eval_results[:-1] eval_loss = gezi.get_singles(eval_results) #timer_.print() eval_stop = False if use_horovod: sess.run(hvd.allreduce(tf.constant(0))) #if not use_horovod or hvd.local_rank() == 0: # @TODO user print should also use logging as a must ? #print(gezi.now_time(), epoch_str, 'eval_step: %d'%step, 'eval_metrics:', end='') eval_names_ = melt.adjust_names(eval_loss, eval_names) #if not use_horovod or hvd.rank() == 0: # logging.info2('{} eval_step:{} eval_metrics:{}'.format(epoch_str, step, melt.parse_results(eval_loss, eval_names_))) eval_str = 'valid:{}'.format(melt.parse_results(eval_loss, eval_names_)) # if deal_eval_results_fn is not None: # eval_stop = deal_eval_results_fn(eval_results) assert len(eval_loss) > 0 if eval_stop is True: stop = True eval_names_ = melt.adjust_names(eval_loss, eval_names) if not use_horovod or hvd.rank() == 0: melt.set_global('eval_loss', melt.parse_results(eval_loss, eval_names_)) elif interval_steps != valid_interval_steps: #print() pass metric_evaluate = False # if metric_eval_fn is not None \ # and (is_start \ # or (num_steps_per_epoch and step % num_steps_per_epoch == 0) \ # or (metric_eval_interval_steps \ # and step % metric_eval_interval_steps == 0)): # metric_evaluate = True if metric_eval_fn is not None \ and ((is_start or metric_eval_interval_steps \ and step % metric_eval_interval_steps == 0) or model_path): metric_evaluate = True if 'EVFIRST' in os.environ: if os.environ['EVFIRST'] == '0': if is_start: metric_evaluate = False else: if is_start: metric_evaluate = True if step == 0 or 'QUICK' in os.environ: metric_evaluate = False #print('------------1step', step, 'pre metric_evaluate', metric_evaluate, hvd.rank()) if metric_evaluate: # if use_horovod: # print('------------metric evaluate step', step, model_path, hvd.rank()) if not model_path or 'model_path' not in inspect.getargspec(metric_eval_fn).args: metric_eval_fn_ = metric_eval_fn else: metric_eval_fn_ = lambda: metric_eval_fn(model_path=model_path) try: l = metric_eval_fn_() if isinstance(l, tuple): num_returns = len(l) if num_returns == 2: evaluate_results, evaluate_names = l evaluate_summaries = None else: assert num_returns == 3, 'retrun 1,2,3 ok 4.. not ok' evaluate_results, evaluate_names, evaluate_summaries = l else: #return dict evaluate_results, evaluate_names = tuple(zip(*dict.items())) evaluate_summaries = None except Exception: logging.info('Do nothing for metric eval fn with exception:\n', traceback.format_exc()) if not use_horovod or hvd.rank() == 0: #logging.info2('{} valid_step:{} {}:{}'.format(epoch_str, step, 'valid_metrics' if model_path is None else 'epoch_valid_metrics', melt.parse_results(evaluate_results, evaluate_names))) logging.info2('{} valid_step:{} {}:{}'.format(epoch_str, step, 'valid_metrics', melt.parse_results(evaluate_results, evaluate_names))) if learning_rate is not None and (learning_rate_patience and learning_rate_patience > 0): assert learning_rate_decay_factor > 0 and learning_rate_decay_factor < 1 valid_loss = evaluate_results[0] if not hasattr(train_once, 'min_valid_loss'): train_once.min_valid_loss = valid_loss train_once.deacy_steps = [] train_once.patience = 0 else: if valid_loss < train_once.min_valid_loss: train_once.min_valid_loss = valid_loss train_once.patience = 0 else: train_once.patience += 1 logging.info2('{} valid_step:{} patience:{}'.format(epoch_str, step, train_once.patience)) if learning_rate_patience and train_once.patience >= learning_rate_patience: lr_op = ops[1] lr = sess.run(lr_op) * learning_rate_decay_factor train_once.deacy_steps.append(step) logging.info2('{} valid_step:{} learning_rate_decay by *{}, learning_rate_decay_steps={}'.format(epoch_str, step, learning_rate_decay_factor, ','.join(map(str, train_once.deacy_steps)))) sess.run(tf.assign(lr_op, tf.constant(lr, dtype=tf.float32))) train_once.patience = 0 train_once.min_valid_loss = valid_loss if ops is not None: #if deal_results_fn is None and names is not None: # deal_results_fn = lambda x: melt.print_results(x, names) feed_dict = {} if gen_feed_dict_fn is None else gen_feed_dict_fn() # NOTICE ops[2] should be scalar otherwise wrong!! loss should be scalar #print('---------------ops', ops) if eval_ops is not None or not log_dir or not hasattr(train_once, 'summary_op') or train_once.summary_op is None or use_horovod: feed_dict[K.learning_phase()] = 1 results = sess.run(ops, feed_dict=feed_dict) else: ## TODO why below ? #try: feed_dict[K.learning_phase()] = 1 results = sess.run(ops + [train_once.summary_op], feed_dict=feed_dict) summary_str = results[-1] results = results[:-1] # except Exception: # logging.info('sess.run(ops + [train_once.summary_op], feed_dict=feed_dict) fail') # results = sess.run(ops, feed_dict=feed_dict) #print('------------results', results) # #--------trace debug # if step == 210: # run_metadata = tf.RunMetadata() # results = sess.run( # ops, # feed_dict=feed_dict, # options=tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE), # run_metadata=run_metadata) # from tensorflow.python.client import timeline # trace = timeline.Timeline(step_stats=run_metadata.step_stats) # trace_file = open('timeline.ctf.json', 'w') # trace_file.write(trace.generate_chrome_trace_format()) #reults[0] assume to be train_op, results[1] to be learning_rate learning_rate = results[1] results = results[2:] #@TODO should support aver loss and other avg evaluations like test.. if print_avg_loss: if not hasattr(train_once, 'avg_loss'): train_once.avg_loss = AvgScore() #assume results[0] as train_op return, results[1] as loss loss = gezi.get_singles(results) train_once.avg_loss.add(loss) steps_per_second = None instances_per_second = None hours_per_epoch = None #step += 1 #if is_start or interval_steps and step % interval_steps == 0: interval_ok = not use_horovod or hvd.local_rank() == 0 if interval_steps and step % interval_steps == 0 and interval_ok: train_average_loss = train_once.avg_loss.avg_score() if print_time: duration = timer.elapsed() duration_str = 'duration:{:.2f} '.format(duration) melt.set_global('duration', '%.2f' % duration) #info.write(duration_str) elapsed = train_once.timer.elapsed() steps_per_second = interval_steps / elapsed batch_size = melt.batch_size() num_gpus = melt.num_gpus() instances_per_second = interval_steps * batch_size / elapsed gpu_info = '' if num_gpus <= 1 else ' gpus:[{}]'.format(num_gpus) if num_steps_per_epoch is None: epoch_time_info = '' else: hours_per_epoch = num_steps_per_epoch / interval_steps * elapsed / 3600 epoch_time_info = '1epoch:[{:.2f}h]'.format(hours_per_epoch) # info.write('elapsed:[{:.2f}] batch_size:[{}]{} batches/s:[{:.2f}] insts/s:[{:.2f}] {} lr:[{:.6f}]'.format( # elapsed, batch_size, gpu_info, steps_per_second, instances_per_second, epoch_time_info, learning_rate)) info.write('elap:[{:.2f}] batch:[{}] {} lr:[{:.6f}]'.format( elapsed, batch_size, epoch_time_info, learning_rate)) if print_avg_loss: #info.write('train_avg_metrics:{} '.format(melt.value_name_list_str(train_average_loss, names))) names_ = melt.adjust_names(train_average_loss, names) #info.write('train_avg_metric:{} '.format(melt.parse_results(train_average_loss, names_))) info.write(' train:{} '.format(melt.parse_results(train_average_loss, names_))) #info.write('train_avg_loss: {} '.format(train_average_loss)) info.write(eval_str) #print(gezi.now_time(), epoch_str, 'train_step:%d'%step, info.getvalue(), end=' ') logging.info2('{} {} {}'.format(epoch_str, 'step:%d'%step, info.getvalue())) if deal_results_fn is not None: stop = deal_results_fn(results) summary_strs = gezi.to_list(summary_str) if metric_evaluate: if evaluate_summaries is not None: summary_strs += evaluate_summaries if step > 1: if is_eval_step: # deal with summary if log_dir: summary = tf.Summary() if eval_ops is None: if train_once.summary_op is not None: for summary_str in summary_strs: train_once.summary_writer.add_summary(summary_str, step) else: for summary_str in summary_strs: train_once.summary_writer.add_summary(summary_str, step) suffix = 'valid' if not eval_names else '' # loss/valid melt.add_summarys(summary, eval_results, eval_names_, suffix=suffix) if ops is not None: try: # loss/train_avg melt.add_summarys(summary, train_average_loss, names_, suffix='train_avg') except Exception: pass ##optimizer has done this also melt.add_summary(summary, learning_rate, 'learning_rate') melt.add_summary(summary, melt.batch_size(), 'batch_size', prefix='other') melt.add_summary(summary, melt.epoch(), 'epoch', prefix='other') if steps_per_second: melt.add_summary(summary, steps_per_second, 'steps_per_second', prefix='perf') if instances_per_second: melt.add_summary(summary, instances_per_second, 'instances_per_second', prefix='perf') if hours_per_epoch: melt.add_summary(summary, hours_per_epoch, 'hours_per_epoch', prefix='perf') if metric_evaluate: #melt.add_summarys(summary, evaluate_results, evaluate_names, prefix='eval') prefix = 'step_eval' if model_path: prefix = 'eval' valid_interval_epochs = 1. try: valid_interval_epochs = FLAGS.valid_interval_epochs except Exception: pass if not hasattr(train_once, 'epoch_step'): train_once.epoch_step = 1 if melt.epoch() <= 1 else int(int(melt.epoch() * 10) / int(valid_interval_epochs * 10)) else: train_once.epoch_step += 1 step = train_once.epoch_step # eval/loss eval/auc .. melt.add_summarys(summary, evaluate_results, evaluate_names, prefix=prefix) train_once.summary_writer.add_summary(summary, step) train_once.summary_writer.flush() return stop elif metric_evaluate and log_dir: summary = tf.Summary() for summary_str in summary_strs: train_once.summary_writer.add_summary(summary_str, step) #summary.ParseFromString(evaluate_summaries) summary_writer = train_once.summary_writer prefix = 'step_eval' if model_path: prefix = 'eval' if not hasattr(train_once, 'epoch_step'): ## TODO.. restart will get 1 again.. #epoch_step = tf.Variable(0, trainable=False, name='epoch_step') #epoch_step += 1 #train_once.epoch_step = sess.run(epoch_step) valid_interval_epochs = 1. try: valid_interval_epochs = FLAGS.valid_interval_epochs except Exception: pass train_once.epoch_step = 1 if melt.epoch() <= 1 else int(int(melt.epoch() * 10) / int(valid_interval_epochs * 10)) logging.info('train_once epoch start step is', train_once.epoch_step) else: #epoch_step += 1 train_once.epoch_step += 1 step = train_once.epoch_step #melt.add_summarys(summary, evaluate_results, evaluate_names, prefix='eval') melt.add_summarys(summary, evaluate_results, evaluate_names, prefix=prefix) summary_writer.add_summary(summary, step) summary_writer.flush() ================================================ FILE: utils/melt/image/__init__.py ================================================ from melt.image.image_decoder import * import melt.image.image_processing from melt.image.image_processing import decode_image, read_image, create_image_model_init_fn from melt.image.image_processing import get_features_name, get_num_features, get_feature_dim, get_imagenet_from_checkpoint from melt.image.image_embedding import * from melt.image.image_model import * ================================================ FILE: utils/melt/image/image_decoder.py ================================================ #!/usr/bin/env python # ============================================================================== # \file image_decoder.py # \author chenghuige # \date 2017-03-31 12:08:54.242407 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf class ImageDecoder(object): """Helper class for decoding images in TensorFlow.""" def __init__(self): # Create a single TensorFlow Session for all image decoding calls. self._sess = tf.Session() # TensorFlow ops for JPEG decoding. self._encoded = tf.placeholder(dtype=tf.string) self._decode_jpeg = tf.image.decode_jpeg(self._encoded, channels=3) try: self._decode_bmp = tf.image.decode_bmp(self._encoded, channels=3) self._decode = tf.image.decode_image(self._encoded, channels=3) except Exception: pass self.num_imgs = 0 self.num_bad_imgs = 0 def decode_jpeg(self, encoded_jpeg): try: image = self._sess.run(self._decode_jpeg, feed_dict={self._encoded: encoded_jpeg}) except Exception: image = None return image def decode(self, encoded, image_format='jpeg'): if image_format == 'jpeg': decode_op = self._decode_jpeg elif image_format == 'bmp': decode_op = self._decode_bmp else: decode_op = self._decode self.num_imgs += 1 try: image = self._sess.run(decode_op, feed_dict={self._encoded: encoded}) except Exception: image = None self.num_bad_imgs += 1 return image ================================================ FILE: utils/melt/image/image_embedding.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Image embedding ops.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.contrib.slim.python.slim.nets.inception_v3 import inception_v3_base #TODO check vgg to support other models maybe like cifar 10 inference example not build graph just load from pbgraph #and fetch op name to run (by that way will trainable or not ?) def inception_v3(images, trainable=True, is_training=True, weight_decay=0.00004, stddev=0.1, dropout_keep_prob=0.8, use_batch_norm=True, batch_norm_params=None, add_summaries=True, reuse=None, scope=None): """Builds an Inception V3 subgraph for image embeddings. Args: images: A float32 Tensor of shape [batch, height, width, channels]. trainable: Whether the inception submodel should be trainable or not. is_training: Boolean indicating training mode or not. weight_decay: Coefficient for weight regularization. stddev: The standard deviation of the trunctated normal weight initializer. dropout_keep_prob: Dropout keep probability. use_batch_norm: Whether to use batch normalization. batch_norm_params: Parameters for batch normalization. See tf.contrib.layers.batch_norm for details. add_summaries: Whether to add activation summaries. scope: Optional Variable scope. Returns: end_points: A dictionary of activations from inception_v3 layers. """ slim = tf.contrib.slim # Only consider the inception model to be in training mode if it's trainable. is_inception_model_training = trainable and is_training if use_batch_norm: # Default parameters for batch normalization. if not batch_norm_params: batch_norm_params = { "is_training": is_inception_model_training, "trainable": trainable, # Decay for the moving averages. "decay": 0.9997, # Epsilon to prevent 0s in variance. "epsilon": 0.001, # Collection containing the moving mean and moving variance. "variables_collections": { "beta": None, "gamma": None, "moving_mean": ["moving_vars"], "moving_variance": ["moving_vars"], } } else: batch_norm_params = None if trainable: weights_regularizer = tf.contrib.layers.l2_regularizer(weight_decay) else: weights_regularizer = None with tf.variable_scope(scope, "InceptionV3", [images], reuse=reuse) as scope: with slim.arg_scope( [slim.conv2d, slim.fully_connected], weights_regularizer=weights_regularizer, trainable=trainable): with slim.arg_scope( [slim.conv2d], weights_initializer=tf.truncated_normal_initializer(stddev=stddev), activation_fn=tf.nn.relu, normalizer_fn=slim.batch_norm, normalizer_params=batch_norm_params): net, end_points = inception_v3_base(images, scope=scope) with tf.variable_scope("logits"): shape = net.get_shape() net = slim.avg_pool2d(net, shape[1:3], padding="VALID", scope="pool") net = slim.dropout( net, keep_prob=dropout_keep_prob, is_training=is_inception_model_training, scope="dropout") net = slim.flatten(net, scope="flatten") #--TODO why not in effect? #scope.reuse_variables() # Add summaries. if add_summaries: for v in end_points.values(): tf.contrib.layers.summaries.summarize_activation(v) return net ================================================ FILE: utils/melt/image/image_model.py ================================================ #!/usr/bin/env python # ============================================================================== # \file image_model.py # \author chenghuige # \date 2017-04-10 19:58:46.031602 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #import os import sys #import math import tensorflow as tf import numpy as np import melt import gezi try: from nets import nets_factory except Exception: pass slim = tf.contrib.slim class ImageModel(object): def __init__(self, image_checkpoint_file=None, model_name=None, height=None, width=None, feature_name=None, image_format='jpeg', moving_average_decay=None, num_classes=None, top_k=None, sess=None, graph=None): assert image_checkpoint_file or model_name, 'need model_name if train from scratch otherwise need image_checkpoint_file' self.graph = tf.Graph() if graph is None else graph self.sess = melt.gen_session(graph=self.graph) if sess is None else sess self.feature_name = feature_name if image_checkpoint_file: net = melt.image.get_imagenet_from_checkpoint(image_checkpoint_file) assert net is not None, image_checkpoint_file model_name = model_name or net.name height = height or net.default_image_size width = width or net.default_image_size else: assert model_name is not None gnu_name = gezi.to_gnu_name(model_name) net = nets_factory.networks_map[gnu_name] height = height or net.default_image_size width = width or net.default_image_size print('checkpoint', image_checkpoint_file, 'model_name', model_name, 'height', height, 'width', width, file=sys.stderr) self.num_classes = num_classes self.model_name = model_name with self.sess.graph.as_default(): self.images_feed = tf.placeholder(tf.string, [None, ], name='images') if not self.num_classes: print('build graph for final one feature', file=sys.stderr) self.feature = self._build_graph(model_name, height, width, image_format=image_format) print('build graph for attention features', file=sys.stderr) self.features = self._build_graph2(model_name, height, width, image_format=image_format) else: assert self.num_classes > 1 if feature_name != 'Logits': prelogits_feature = self._build_graph(model_name, height, width, image_format=image_format) #with tf.variable_scope('ImageModelLogits'): self.logits = slim.fully_connected(prelogits_feature, num_classes, activation_fn=None, scope='Logits') else: # directly use slim model self.logits = self._build_graph(model_name, height, width, num_classes=num_classes, image_format=image_format) if top_k: with tf.variable_scope('ImageModelTopN'): self.top_logits, self.top_indices = tf.nn.top_k(self.logits, top_k, name='TopK') self.predictions = tf.nn.softmax(self.logits, name='Predictions') # https://storage.googleapis.com/openimages/2017_07/oidv2-resnet_v1_101.readme.txt self.multi_predictions = tf.nn.sigmoid(self.logits, name='multi_predictions') init_op = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer()) self.sess.run(init_op) if image_checkpoint_file: #---load inception model check point file init_fn = melt.image.image_processing.create_image_model_init_fn(model_name, image_checkpoint_file, moving_average_decay=moving_average_decay) init_fn(self.sess) def _build_graph(self, model_name, height, width, num_classes=None, image_format=None): melt.apps.image_processing.init(model_name, self.feature_name) return melt.apps.image_processing.image_processing_fn(self.images_feed, height=height, width=width, image_format=image_format, feature_name=self.feature_name, num_classes=num_classes) def _build_graph2(self, model_name, height, width, image_format=None): features_name = melt.get_features_name(self.model_name) melt.apps.image_processing.init(model_name, features_name) return melt.apps.image_processing.image_processing_fn(self.images_feed, height=height, width=width, image_format=image_format, feature_name=features_name) def process(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.feature, feed_dict={self.images_feed: images}) def process2(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.features, feed_dict={self.images_feed: images}) def gen_logits(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.logits, feed_dict={self.images_feed: images}) def classify(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.predictions, feed_dict={self.images_feed: images}) def multi_classify(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.multi_predictions, feed_dict={self.images_feed: images}) def logits(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run(self.logits, feed_dict={self.images_feed: images}) def top_k(self, images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return self.sess.run([self.top_logits, self.top_indices], feed_dict={self.images_feed: images}) def gen_feature(self, images): return self.process(images) def gen_features(self, images): return self.process2(images) ================================================ FILE: utils/melt/image/image_processing.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ Copy from google im2txt Helper functions for image preprocessing. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util from tensorflow.python.ops import array_ops from tensorflow.python.ops import check_ops from tensorflow.python.ops import clip_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import gen_image_ops from tensorflow.python.ops import gen_nn_ops from tensorflow.python.ops import string_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import random_ops #from tensorflow.python.ops import variable import tensorflow as tf import tensorflow.contrib.slim as slim #TODO must set PYTHON_PATH for models/slim try: from preprocessing import preprocessing_factory from nets import nets_factory except Exception: pass #from melt.slim import base_nets_factory import gezi import melt from melt import logging import sys import os def read_image(image_path): #with tf.device('/cpu:0'): # https://blog.csdn.net/u013555719/article/details/77991010 change to use rb for python3 with tf.gfile.FastGFile(image_path, "rb") as f: encoded_image = f.read() return encoded_image def get_imagenet_from_checkpoint(checkpoint_path): """ net = get_net_from_checkpoint(checkpoint) net.func_name # like inception_v4 net.default_image_size # like 299 """ checkpoint = melt.get_model_path(checkpoint_path) if not checkpoint or \ (not os.path.exists(checkpoint) \ and not os.path.exists(checkpoint + '.index')): return None from tensorflow.python import pywrap_tensorflow reader = pywrap_tensorflow.NewCheckpointReader(checkpoint) var_to_shape_map = reader.get_variable_to_shape_map() name = None for key in var_to_shape_map.keys(): name = key.split('/')[0] gnu_name = gezi.to_gnu_name(name) if gnu_name in nets_factory.networks_map: break if name is None: return None else: nets_factory.networks_map[gnu_name].name = name return nets_factory.networks_map[gnu_name] def get_net_from_checkpoint(checkpoint): """ net = get_net_from_checkpoint(checkpoint) net.func_name # like inception_v4 net.default_image_size # like 299 """ from tensorflow.python import pywrap_tensorflow reader = pywrap_tensorflow.NewCheckpointReader(checkpoint) var_to_shape_map = reader.get_variable_to_shape_map() name = None for key in var_to_shape_map.keys(): name = key.split('/')[0] gnu_name = gezi.to_gnu_name(name) if gnu_name in nets_factory.networks_map: break if name is None: return None else: return nets_factory.networks_map[name], name def create_image_model_init_fn(image_model_name, image_checkpoint_file, moving_average_decay=None): """ NOTICE whey moving_average_decay is not None will add variables so for finetune image model you may need to escape scope! see train.py of image_caption """ # print(tf.all_variables()) # print(tf.get_default_graph().get_all_collection_keys()) # refer to slim eval_image_classifer.py # HACK for nasnet, also for nasnet you need to use # rename-varaibles.py --checkpoint_dir=... --add_prefix=nasnet_large to add global scope # and use the converted model variables_to_restore = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, scope=image_model_name) assert variables_to_restore, tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) if image_model_name.startswith('nasnet') and not moving_average_decay: moving_average_decay = 0.9999 print('in create_image_model_init_fn image_model_name', image_model_name, 'moving_average_decay', moving_average_decay, file=sys.stderr) # TODO understand moving average decay and it's effect on graph... if moving_average_decay: with tf.variable_scope(image_model_name): tf_global_step = tf.train.get_or_create_global_step() variable_averages = tf.train.ExponentialMovingAverage(moving_average_decay, tf_global_step) #variables_to_restore = variable_averages.variables_to_restore(slim.get_model_variables()) variables_to_restore = variable_averages.variables_to_restore(variables_to_restore) # well still has nont image_model_name start vars ... TODO # TODO for finetune final pre_logits feature or classification need to exclude global_step other wise not found global step realated moving.. vars .. # TODO need to check ignore global step will not affect caption model using nasnet variables_to_restore = dict([(key, val) for key, val in variables_to_restore.items() if key.startswith(image_model_name) and not 'global_step' in key]) #variables_to_restore = dict([(key, val) for key, val in variables_to_restore.items() if key.startswith(image_model_name)]) # # #TODO just hack right now, we must use another like InceptionV3 to construct InceptionV3/InceptionV3 # #not for escaple scope, can just with scope('') but for reuse.. when predict TODO.. # def name_in_checkpoint(var): # return var.op.name.replace('/' + image_model_name, '') # variables_to_restore = {name_in_checkpoint(var):var for var in variables_to_restore} saver = tf.train.Saver(variables_to_restore) def restore_fn(sess): timer = gezi.Timer('restore image var from %s %s' % (image_model_name, image_checkpoint_file)) logging.info("Restoring image variables from checkpoint file %s" % image_checkpoint_file) saver.restore(sess, image_checkpoint_file) timer.print() return restore_fn def distort_image(image, distort_color=True): """Perform random distortions on an image. Args: image: A float32 Tensor of shape [height, width, 3] with values in [0, 1). Returns: distorted_image: A float32 Tensor of shape [height, width, 3] with values in [0, 1]. """ # Randomly flip horizontally. with tf.name_scope("flip_horizontal", values=[image]): image = tf.image.random_flip_left_right(image) if distort_color: # Randomly distort the colors based on thread id. with tf.name_scope("distort_color", values=[image]): def _distort_image_fn1(image): image = tf.image.random_brightness(image, max_delta=32. / 255.) image = tf.image.random_saturation(image, lower=0.5, upper=1.5) image = tf.image.random_hue(image, max_delta=0.032) image = tf.image.random_contrast(image, lower=0.5, upper=1.5) return image def _distort_image_fn2(image): image = tf.image.random_brightness(image, max_delta=32. / 255.) image = tf.image.random_contrast(image, lower=0.5, upper=1.5) image = tf.image.random_saturation(image, lower=0.5, upper=1.5) image = tf.image.random_hue(image, max_delta=0.032) return image p_order = tf.random_uniform(shape=[], minval=0., maxval=1., dtype=tf.float32) pred = tf.less(p_order, 0.5) image = tf.cond(pred, lambda: _distort_image_fn1(image), lambda: _distort_image_fn2(image)) # The random_* ops do not necessarily clamp. image = tf.clip_by_value(image, 0.0, 1.0) return image # #--depreciated just use tf ones # def decode_image(contents, channels=None, name=None): # """Convenience function for `decode_gif`, `decode_jpeg`, and `decode_png`. # Detects whether an image is a GIF, JPEG, or PNG, and performs the appropriate # operation to convert the input bytes `string` into a `Tensor` of type `uint8`. # Note: `decode_gif` returns a 4-D array `[num_frames, height, width, 3]`, as # opposed to `decode_jpeg` and `decode_png`, which return 3-D arrays # `[height, width, num_channels]`. Make sure to take this into account when # constructing your graph if you are intermixing GIF files with JPEG and/or PNG # files. # Args: # contents: 0-D `string`. The encoded image bytes. # channels: An optional `int`. Defaults to `0`. Number of color channels for # the decoded image. # name: A name for the operation (optional) # Returns: # `Tensor` with type `uint8` with shape `[height, width, num_channels]` for # JPEG and PNG images and shape `[num_frames, height, width, 3]` for GIF # images. # """ # with ops.name_scope(name, 'decode_image') as scope: # #return gen_image_ops.decode_jpeg(contents, channels) # if channels not in (None, 0, 1, 3): # raise ValueError('channels must be in (None, 0, 1, 3)') # #substr = string_ops.substr(contents, 0, 4) # substr = string_ops.substr(contents, 0, 1) # def _gif(): # raise ValueError('not jpeg or png') # # Create assert op to check that bytes are GIF decodable # #is_gif = math_ops.equal(substr, b'\x47\x49\x46\x38', name='is_gif') # is_gif = math_ops.equal(substr, b'\x47', name='is_gif') # decode_msg = 'Unable to decode bytes as JPEG, PNG, or GIF' # assert_decode = control_flow_ops.Assert(is_gif, [decode_msg]) # # Create assert to make sure that channels is not set to 1 # # Already checked above that channels is in (None, 0, 1, 3) # gif_channels = 0 if channels is None else channels # good_channels = math_ops.not_equal(gif_channels, 1, name='check_channels') # channels_msg = 'Channels must be in (None, 0, 3) when decoding GIF images' # assert_channels = control_flow_ops.Assert(good_channels, [channels_msg]) # with ops.control_dependencies([assert_decode, assert_channels]): # return gen_image_ops.decode_gif(contents) # def _png(): # return gen_image_ops.decode_png(contents, channels) # def check_png(): # #is_png = math_ops.equal(substr, b'\211PNG', name='is_png') # is_png = math_ops.equal(substr, b'\x89', name='is_png') # return control_flow_ops.cond(is_png, _png, _gif, name='cond_png') # def _jpeg(): # return gen_image_ops.decode_jpeg(contents, channels) # #is_jpeg = math_ops.equal(substr, b'\xff\xd8\xff\xe0', name='is_jpeg') # is_jpeg = math_ops.equal(substr, b'\xff', name='is_jpeg') # try: # return control_flow_ops.cond(is_jpeg, _jpeg, check_png, name='cond_jpeg') # except Exception: # #this is unsafe, since might not be jpeg format will raise error in c++ code, unable to catch # return gen_image_ops.decode_jpeg(contents, channels, try_recover_truncated=True, acceptable_fraction=10) def decode_image(contents, channels=3, image_format='jpeg', dtype=None): with tf.name_scope("decode", values=[contents]): if image_format == "jpeg": #---TODO this will cause hang.... try_recover_truncated=True, acceptable_fraction=10 will hang... #image = tf.image.decode_jpeg(contents, channels=3, try_recover_truncated=True, acceptable_fraction=10) image = tf.image.decode_jpeg(contents, channels=channels) elif image_format == "png": image = tf.image.decode_png(contents, channels=channels) else: #--why here will casue no size.. might for gif..., for safe just use image_format jpeg? TODO FIXME image = tf.image.decode_image(contents, channels=3) if dtype: image = tf.image.convert_image_dtype(image, dtype=dtype) return image def process_image(encoded_image, is_training, height, width, resize_height=346, resize_width=346, random_crop=True, distort=True, distort_color=True, image_format=None): """Decode an image, resize and apply random distortions. In training, images are distorted slightly differently depending on thread_id. Args: encoded_image: String Tensor containing the image. is_training: Boolean; whether preprocessing for training or eval. height: Height of the output image. width: Width of the output image. resize_height: If > 0, resize height before crop to final dimensions. resize_width: If > 0, resize width before crop to final dimensions. thread_id: Preprocessing thread id used to select the ordering of color distortions. There should be a multiple of 2 preprocessing threads. image_format: "jpeg" or "png". Returns: A float32 Tensor of shape [height, width, 3] with values in [-1, 1]. Raises: ValueError: If image_format is invalid. """ # Helper function to log an image summary to the visualizer. Summaries are # only logged in thread 0. TODO summary def image_summary(name, image): tf.summary.image(name, tf.expand_dims(image, 0)) # Decode image into a float32 Tensor of shape [?, ?, 3] with values in [0, 1). image = decode_image(encoded_image, channels=3, image_format=image_format, dtype=tf.float32) #TODO summary #image_summary("original_image", image) # Resize image. assert (resize_height > 0) == (resize_width > 0) if resize_height: image = tf.image.resize_images(image, size=[resize_height, resize_width], method=tf.image.ResizeMethod.BILINEAR) # Crop to final dimensions. if is_training and random_crop: image = tf.random_crop(image, [height, width, 3]) else: # Central crop, assuming resize_height > height, resize_width > width. image = tf.image.resize_image_with_crop_or_pad(image, height, width) #image_summary("resized_image", image) # Randomly distort the image. if is_training and distort: image = distort_image(image, distort_color) #image_summary("final_image", image) # Rescale to [-1,1] instead of [0, 1] image = tf.subtract(image, 0.5) image = tf.multiply(image, 2.0) return image import melt # Depreciated! def create_image2feature_fn(name='InceptionV3'): """ will be depreciated just use create_image2feature_slim_fn """ #NOTICE how this method solve run/ scope problem, scope must before def, learn this from melt.seq2seq.attention_decoder_fn.py raise TypeError('please use create_image2feature_slim_fn') with tf.variable_scope(name) as scope: def construct_fn(encoded_image, height, width, trainable=False, is_training=False, resize_height=346, resize_width=346, distort=True, image_format="jpeg", #for safe just use decode_jpeg reuse=None): #decode image .. only accept one image so use map_fn, but seems map_fn is slow, so use as less as possible #here decode image + preprocess into one image = tf.map_fn(lambda img: process_image(img, is_training=is_training, height=height, width=width, resize_height=resize_height, resize_width=resize_width, distort=distort, image_format=image_format), encoded_image, dtype=tf.float32) #this is the same as slim for inception v3, and TODO can be modified to accept other models image_feature = melt.image.image_embedding.inception_v3( image, trainable=trainable, is_training=is_training, reuse=reuse, scope=scope) #if not set this eval_loss = trainer.build_train_graph(eval_image_feature, eval_text, eval_neg_text) will fail #but still need to set reuse for melt.image.image_embedding.inception_v3... confused.., anyway now works.. #with out reuse=True score = predictor.init_predict() will fail, resue_variables not work for it.. #trainer create function once use it second time(same function) work here(with scope.reuse_variables) #predictor create another function, though seem same name same scope, but you need to set reuse=True again! #even if use tf.make_template still need this.. scope.reuse_variables() return image_feature return construct_fn info = { 'vgg_19': { 'feature_dim': 512, 'num_features': 196 }, 'InceptionV3': { 'feature_dim': 2048 , 'width': 299, 'height': 299 }, 'InceptionResnetV2': { 'feature_dim': 1536, 'feature_end_point': 'PreLogitsFlatten', 'num_features': 64, 'features_end_point': 'Conv2d_7b_1x1', 'width': 299, 'height': 299 }, 'InceptionV4': { 'feature_dim': 1536, 'feature_end_point': 'PreLogitsFlatten', 'num_features': 64, 'features_end_point': 'Mixed_7d', 'width': 299, 'height': 299 }, # TODO may be group as resnet_v2 'resnet_v2_152': { 'feature_dim': 2048, 'feature_end_point': 'PreLogits', 'num_features': 100, 'features_end_point': 'attention', 'width': 299, 'height': 299 }, 'resnet_v1_101': { 'feature_dim': 2048, 'feature_end_point': 'PreLogits', 'num_features': 100, 'features_end_point': 'attention', 'width': 299, 'height': 299 }, 'nasnet_large': { 'feature_dim': 4032, 'feature_end_point': 'PreLogits', 'num_features': 121, 'features_end_point': 'attention', 'width': 331, 'height': 331 }, 'nasnet_v1_large': { 'feature_dim': 4032, 'feature_end_point': 'PreLogits', 'num_features': 121, 'features_end_point': 'attention', 'width': 331, 'height': 331 }, 'nasnet_v2_large': { 'feature_dim': 4032, 'feature_end_point': 'PreLogits', 'num_features': 121, 'features_end_point': 'attention', 'width': 331, 'height': 331 }, 'nasnet_mobile': { 'feature_dim': 1056, 'feature_end_point': 'PreLogits', 'num_features': 49, 'features_end_point': 'attention', 'width': 224, 'height': 224 } } def get_features_name(image_model_name): return info[image_model_name]['features_end_point'] def get_num_features(image_model_name): return info[image_model_name]['num_features'] def get_feature_dim(image_model_name): return info[image_model_name]['feature_dim'] def OpenimageV2PreprocessImage(image, network='resnet_v1_101', image_size=299, is_training=False): # If resolution is larger than 224 we need to adjust some internal resizing # parameters for vgg preprocessing. if any(network.startswith(x) for x in ['resnet', 'vgg']): preprocessing_kwargs = { 'resize_side_min': int(256 * image_size / 224), 'resize_side_max': int(512 * image_size / 224) } else: preprocessing_kwargs = {} preprocessing_fn = preprocessing_factory.get_preprocessing( name=network, is_training=is_training) height = image_size width = image_size image = preprocessing_fn(image, height, width, **preprocessing_kwargs) image.set_shape([height, width, 3]) return image def create_image2feature_slim_fn(name=None, feature_name=None, preprocess_image=True, num_classes=None, scope=''): """ #NOTICE how this method solve run/ scope problem, scope must before def using slim util to create image feature You need to set PythonPath to include models/slim or install it if using on hdfs run TODO check """ #TODO '' can not work to be used as to escope scope ..., so if want to escape and call this function #anywhere need to modify slim code to let slim code with scope None '' instead of name here like InceptionV3 #HACK add another socpe.. to escape.. see hasky/jupter/scope.ipynb ##notice for vgg.. scope is also in gnu format unlike IncepitonV3 -> inception_v3 or like resnet_v2_152 scope and model name all in gnu format ##ValueError: Can not squeeze dim[1], expected a dimension of 1, got 3 for 'bow/main/image_text_sim/vgg_19/fc8/squeezed' (op: 'Squeeze') with input shapes: [32,3,3,1001]. #name = 'vgg_19' # HACK for nasnet which not has a nasnet_large/ top scope, I have converted the model file to add this scope # so here have also add this top scope TODO whey still add.. show and tell top scope not escape ? Now workaround is change slim code, add top scope there #if name.startswith('nasnet') and not scope: # scope = name with tf.variable_scope(scope) as scope: # with tf.variable_scope(name) as scope: #name will be set in slim nets def construct_fn(encoded_image, height=None, width=None, trainable=False, is_training=False, resize_height=346, resize_width=346, random_crop=True, distort=True, distort_color=True, slim_preprocessing=True, # if image_model_name.startswith('nasnet') and not moving_average_decay: weight_decay=0.00004, finetune_end_point=None, feature_name=feature_name, num_classes=num_classes, image_format="jpeg", #for safe just use decode_jpeg reuse=None): logging.info('image model trainable:{}, is_training:{}'.format(trainable, is_training)) #allow [batch_size, 1] as input #print(encoded_image.shape) #should be (?,) #encoded_image = tf.squeeze(encoded_image) #this will casue problem if input batch size is 1, so squeeze seems danerous TODO check #if use tf.squeeze(encoded_image, 1) also not work, out of index TODO can if len(shape) > 1 squeeze ? #below is alos ok? TODO CHECK # shape_list = encoded_image.get_shape().as_list() # if len(shape_list) > 1: # encoded_image = tf.squeeze(encoded_image, -1) #preprocess_image assert name is not None net_name = gezi.to_gnu_name(name) height = height or info[net_name]['height'] width = width or info[net_name]['width'] #well this is slightly slow and the result is differnt from im2txt inceptionV3 usage result, #use im2txt code seems ok, not sure if slim preprocess will be better! TODO #for inception related model I think im2txt process will be fine, for other models not sure TODO #using slim preprocessing real 2m45.737s user 3m12.896s sys 0m10.265s #using im2txt processing real 2m46.709s user 3m8.067s sys 0m8.297s #and the final feature will be slightly differnt #one thing intersting is use 2 tf.map_fn(1 decode image, 1 preprocess) will be much slower then use 1 tf.map_fn (decode image+ preprocess) if preprocess_image: batch_size = encoded_image.get_shape()[0].value or tf.shape(encoded_image)[0] encoded_image = tf.reshape(encoded_image, [batch_size,]) if slim_preprocessing: # HACK HERE # https://github.com/tensorflow/models/tree/master/research/slim # ^ ResNet V2 models use Inception pre-processing and input image size of 299 (use --preprocessing_name inception # --eval_image_size 299 when using eval_image_classifier.py). # TODO FIXME alos seems vgg prprocessing will got similar feature for resnet_v2_152.. why? # TODO also for resnet_v1_101 using openimage pretrain model, must also use 299 if using 224 then generated feature is all same for images net_name_ = net_name # HACK assume resnet101 model right now is only OpenimageV2 one TODO if net_name == 'resnet_v1_101': print('HACK for resnet_v1_101 openimage checkpoint preprocess image', file=sys.stderr) # TODO FIXME !! Notice set dtype=tf.float32 will casue much diff in result for resnet 101 openimage # image = tf.map_fn(lambda img: OpenimageV2PreprocessImage(decode_image(img, image_format=image_format, dtype=tf.float32), is_training=(is_training and distort)), # encoded_image, dtype=tf.float32) image = tf.map_fn(lambda img: OpenimageV2PreprocessImage(decode_image(img, image_format=image_format), is_training=(is_training and distort)), encoded_image, dtype=tf.float32) else: if net_name.startswith('resnet_v2'): #if net_name.startswith('resnet'): net_name_ = 'inception' height = 299 width = 299 print('HACK here adjust to use inception preprocessing and inception default height and width', file=sys.stderr) preprocessing_fn = preprocessing_factory.get_preprocessing(net_name_, is_training=(is_training and distort)) print('preprocessing_fn net_name', net_name_, 'height', height, 'width', width, file=sys.stderr) assert height is not None # Iteresting for other models other then resnet101 openimage model, with or without dtype=tf.float32 is all ok #with tf.device('/cpu:0'): # image = tf.map_fn(lambda img: preprocessing_fn(decode_image(img, image_format=image_format, dtype=tf.float32), height, width), # encoded_image, dtype=tf.float32) # set add_image_summaries to False for tf1.5 # otherwise alueError: Cannot use 'show_and_tell/main/encode/map/while/distort_image/image_with_bounding_boxes' as input to 'show_and_tell_1/Merge/MergeSummary' # because 'show_and_tell/main/encode/map/while/distort_image/image_with_bounding_boxes' is in a while loop. See info log for more details. image = tf.map_fn(lambda img: preprocessing_fn(decode_image(img, image_format=image_format), height, width, add_image_summaries=False), encoded_image, dtype=tf.float32) else: raise ValueError('not use im2txt stype preprocessing any more just use slim preprocessing') # im2txt style preprocessing #with tf.device('/cpu:0'): image = tf.map_fn(lambda img: process_image(img, is_training=is_training, height=height, width=width, resize_height=resize_height, resize_width=resize_width, random_crop=random_crop, distort=distort, distort_color=distort_color, image_format=image_format), encoded_image, dtype=tf.float32) else: image = encoded_image # TODO like image_embedding.py add batch_norm ? fully understand! is_image_model_training = trainable and is_training if trainable and weight_decay: weights_regularizer = tf.contrib.layers.l2_regularizer(weight_decay) else: weights_regularizer = None with tf.variable_scope(scope, reuse=reuse): # TODO Remove this arg scope ? since net_factory get function with proper arg scope! with slim.arg_scope( [slim.conv2d, slim.fully_connected], weights_regularizer=weights_regularizer, trainable=trainable): #should this be faster then stop_gradient? exp show this slim.arg_scope with trainable=False work # actually final num class layer not used for image feature purpose, but since in check point train using 1001, for simplicity here set 1001 # TODO might set try to use num_classes=None or 0, which will biuld graph before logits layer also without dropout, but now # what I use is pre logigts feature which is after dropout layer # TODO it should set num_classes default as None but slim return net just after global_pool, and for my code I used to use PreLogits # after that, so here the hack is by default setting it to 1001, if you are using other pretrain model you might need to # manually set num_classes like num_classes=5000(for openimage pretrain multilabel model) even if you just need the feature # before fc layer(logits) HACK! otherwise you might face problem loading model complaing wrong shape! if num_classes is None: num_classes = 1001 # TODO might modify to let scope be '' ? logging.info('pretrain image model num_classes:{}'.format(num_classes)) net_fn = nets_factory.get_network_fn(net_name, num_classes=num_classes, is_training=is_image_model_training) logits, end_points = net_fn(image) # from nets import inception # with slim.arg_scope(inception.inception_resnet_v2_arg_scope()): # logits, end_points = inception.inception_resnet_v2(image, is_training=is_image_model_training, create_aux_logits=True) # for key in end_points: # print(key, end_points[key].shape) # print('end_points', end_points, file=sys.stderr) # if feature name is None will get final feature, other wise will get final attention feature # if feature in end point will directly get it other wise get from info[image_name][features_end_point] # TODO final end point for feature should be global_pool ? which is btter global_pool without dropout or PreLogits? # Try to finetune with using feature_name global_pool, or may be just use Logits (1001 dim as feature ?) print('feature_name', feature_name, file=sys.stderr) if feature_name and feature_name.lower() == 'logits': print('using slim image model logits', file=sys.stderr) image_feature = logits assert num_classes else: if (not feature_name) or (feature_name == 'final') or (feature_name.lower == 'none'): # None or empty feature name or final get final single feature print('image_model feature_name is None will get PreLogits or PreLogitsFlatten', file=sys.stderr) #print('end_point', end_points) if 'PreLogitsFlatten' in end_points: image_feature = end_points['PreLogitsFlatten'] elif 'PreLogits' in end_points: net = end_points['PreLogits'] image_feature = slim.flatten(net, scope="flatten") else: print('not found pre logits! get default final feature', file=sys.stderr) feature_name = info[name]['feature_end_point'] print('image_model will get feature_name %s' % feature_name, file=sys.stderr) net = end_points[feature_name] image_feature = slim.flatten(net, scope="flatten") else: # get attention features if feature_name not in end_points: feature_name = info[name]['features_end_point'] image_feature = end_points[feature_name] image_feature = slim.flatten(image_feature) print('image_feature:', image_feature, file=sys.stderr) #TODO check is it really ok? not finetune? seems still slow as im2txt it should be much faster then fintune.. FIXME? #TODO other method set not trainable, need to modify slim get_network_fn ? #if not trainable: #just for safe.. actuall slim.arg_scope with train_able=False works # image_feature = tf.stop_gradient(image_feature) if finetune_end_point: #None or '' logging.info('fintune image model from end point:{} {}'.format(finetune_end_point, end_points[finetune_end_point])) tf.stop_gradient(end_points[finetune_end_point]) elif trainable: logging.info('fintune all image model layers') #--below is the same for inception v3 # image_feature = melt.image.image_embedding.inception_v3( # image_feature, # trainable=trainable, # is_training=is_training, # reuse=reuse, # scope=scope) #if not set this eval_loss = trainer.build_train_graph(eval_image_feature, eval_text, eval_neg_text) will fail #but still need to set reuse for melt.image.image_embedding.inception_v3... confused.., anyway now works.. #with out reuse=True score = predictor.init_predict() will fail, resue_variables not work for it.. #trainer create function once use it second time(same function) work here(with scope.reuse_variables) #predictor create another function, though seem same name same scope, but you need to set reuse=True again! #even if use tf.make_template still need this.. #got it see hasky/jupter/scope.ipynb, because train then eval, use same fn() call again in eval scope.reuse_varaibbles() will in effect #escape_fn3 = create_escape_construct_fn('XXX') #escape_fn3() #escape_fn3() #ok becasue scope.reuse_variables() here #but for predictor escape_fn3 = create_escape_construct_fn('XXX') you call it again, then escape_fn3() will fail need reuse scope.reuse_variables() #this is fine make function() '' scope resue, set True, but if not use function with ... will fail also return image_feature return construct_fn #TODO... not in affect... Still not very clear with make_template and create_scope_now_ (google/seq2seq set this True, default is False) # it is like above useing scope.reuse_variables() right after.. I suppose """ #encode_fn = SomeEncoderModule(...) ## New variables are created in this call. #output1 = encode_fn(input1) ## No new variables are created here. The variables from the above call are re-used. ## Note how this is different from normal TensorFlow where you would need to use variable scopes. #output2 = encode_fn(input2) ## Because this is a new instance a second set of variables is created. #encode_fn2 = SomeEncoderModule(...) #output3 = encode_fn2(input3) """ #this will be safe as build graph as root scope but has problem always building using image_processing? #from textsum seems not affected, will not create graph if you not use this function #_image2feature_fn = create_image2feature_fn() #make this function to be resued/share without manully set scope reuse #image2feature_fn = tf.make_template('image2feature', _image2feature_fn, create_scope_now_=True) #image2feature_fn = tf.make_template('image2feature', _image2feature_fn, create_scope_now_=False) #image2feature_fn = create_image2feature_fn() ================================================ FILE: utils/melt/inference/__init__.py ================================================ #!/usr/bin/env python # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-17 23:56:54.148837 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from melt.inference.predictor_base import * from melt.inference.predictor import Predictor, SimplePredictor, SimPredictor, RerankSimPredictor, WordsImportancePredictor, TextPredictor, EnsembleTextPredictor ================================================ FILE: utils/melt/inference/predictor.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file predictor.py # \author chenghuige # \date 2016-09-30 15:19:35.984852 # \Description # ============================================================================== """ This predictor will read from checkpoint and meta graph, only depend on tensorflow no other code dpendences, so can help hadoop or online deploy, and also can run inference without code of building net/graph TODO test use tf.Session() instead of melt.get_session() """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python import debug as tf_debug import os, sys, math import numpy as np import gezi import melt import operator import traceback def get_model_dir_and_path(model_dir, model_name=None): model_path = model_dir ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #model_path = '%s/%s'%(model_dir, os.path.basename(ckpt.model_checkpoint_path)) model_path = os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) else: model_path = model_dir if model_name is None else os.path.join(model_dir, model_name) #if not os.path.exists(model_path): # raise ValueError(model_path) return os.path.dirname(model_path), model_path # tf.get_default_graph().get_all_collection_keys() get all keys # graph.get_all_collection_keys # TODO FIXME even without / might still be tensor key name not collection key name def get_tensor_from_key(key, graph, index=-1): if isinstance(key, str): if not '/' in key: try: ops = graph.get_collection(key) if len(ops) > 1: #print('Warning: ops more then 1 for {}, ops:{}, index:{}'.format(key, ops, index)) pass return ops[index] except Exception: print else: if not key.endswith(':0'): key = key + ':0' #print('------------', [n.name for n in graph.as_graph_def().node]) try: op = graph.get_tensor_by_name(key) return op except Exception: #print(traceback.format_exc()) key = 'prefix/' + key op = graph.get_tensor_by_name(key) return op else: return key class Predictor(object): def __init__(self, model_dir=None, meta_graph=None, model_name=None, debug=False, sess=None, graph=None, frozen_graph=None, frozen_graph_name='prefix', no_frozen_graph=False, random_seed=1234): super(Predictor, self).__init__() self.sess = sess if self.sess is None: ##---TODO tf.Session() if sess is None #self.sess = tf.InteractiveSession() #self.sess = melt.get_session() #make sure use one same global/share sess in your graph self.graph = graph or tf.Graph() self.sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True), graph=self.graph) #by default to use new Session, so not conflict with previous Predictors(like overwide values) if debug: self.sess = tf_debug.LocalCLIDebugWrapperSession(self.sess) #ops will be map and internal list like #{ text : [op1, op2], text2 : [op3, op4, op5], text3 : [op6] } if random_seed is not None: tf.set_random_seed(random_seed) self.frozen_graph_name = frozen_graph_name self.no_frozen_graph = no_frozen_graph if frozen_graph is None: if model_dir is not None: self.restore(model_dir, meta_graph, model_name) else: self.load_graph(frozen_graph, frozen_graph_name) #by default will use last one def inference(self, key, feed_dict=None, index=-1): if not isinstance(key, (list, tuple)): return self.sess.run(get_tensor_from_key(key, self.graph, index), feed_dict=feed_dict) else: keys = key if not isinstance(index, (list, tuple)): indexes = [index] * len(keys) else: indexes = index keys = [get_tensor_from_key(key, self.graph, index) for key,index in zip(keys, indexes)] return self.sess.run(keys, feed_dict=feed_dict) def predict(self, key, feed_dict=None, index=-1): return self.inference(key, feed_dict, index) def run(self, key, feed_dict=None): return self.sess.run(key, feed_dict) def restore(self, model_dir, meta_graph=None, model_name=None, random_seed=None): """ do not need to create graph restore graph from meta file then restore values from checkpoint file """ model_dir, model_path = get_model_dir_and_path(model_dir, model_name) self.model_path = model_path frozen_graph_file = '%s.pb' % model_path if os.path.exists(frozen_graph_file) and not self.no_frozen_graph: frozen_map_file = '%s.map' % model_path return self.load_graph(frozen_graph_file, self.frozen_graph_name, frozen_map_file=frozen_map_file) timer = gezi.Timer('restore meta grpah and model ok %s' % model_path) if meta_graph is None: meta_graph = '%s.meta' % model_path ##https://github.com/tensorflow/tensorflow/issues/4603 #https://stackoverflow.com/questions/37649060/tensorflow-restoring-a-graph-and-model-then-running-evaluation-on-a-single-imag with self.sess.graph.as_default(): saver = tf.train.import_meta_graph(meta_graph) saver.restore(self.sess, model_path) if random_seed is not None: tf.set_random_seed(random_seed) #---so maybe do not use num_epochs or not save num_epochs variable!!!! can set but input producer not use, stop by my flow loop #---TODO not work remove can run but hang FIXME add predictor + exact_predictor during train will face #@gauravsindhwani , can you still run the code successfully after you remove these two collections since they are actually part of the graph. #I try your way but find the program is stuck after restoring." #https://github.com/tensorflow/tensorflow/issues/9747 #tf.get_default_graph().clear_collection("queue_runners") #tf.get_default_graph().clear_collection("local_variables") #--for num_epochs not 0 #tf.get_default_graph().clear_collection("local_variables") #self.sess.run(tf.local_variables_initializer()) #https://stackoverflow.com/questions/44251666/how-to-initialize-tensorflow-variable-that-wasnt-saved-other-than-with-tf-globa #melt.initialize_uninitialized_vars(self.sess) timer.print_elapsed() return self.sess #http://ndres.me/post/convert-caffe-to-tensorflow/ def load_graph(self, frozen_graph_file, frozen_graph_name='prefix', frozen_map_file=None): # We load the protobuf file from the disk and parse it to retrieve the # unserialized graph_def timer = gezi.Timer('load frozen graph from %s with mapfile %s' % (frozen_graph_file, frozen_map_file)) with tf.gfile.GFile(frozen_graph_file, "rb") as f: graph_def = tf.GraphDef() graph_def.ParseFromString(f.read()) # Then, we can use again a convenient built-in function to import a graph_def into the # current default Graph with self.sess.graph.as_default() as graph: tf.import_graph_def( graph_def, input_map=None, return_elements=None, name=frozen_graph_name, #op_dict=None, producer_op_list=None ) if frozen_map_file is not None and os.path.exists(frozen_map_file): for line in open(frozen_map_file): cname, key = line.strip().split('\t') if not (key.endswith(':0') or key.endswith(':1') or key.endswith(':2')): key = '%s:0' % key tensor = graph.get_tensor_by_name('%s/%s' % (frozen_graph_name, key)) graph.add_to_collection(cname, tensor) timer.print_elapsed() return graph class SimplePredictor(object): def __init__(self, model_dir, key=None, feed=None, index=0, meta_graph=None, model_name=None, debug=False, sess=None, graph=None): self.predictor = Predictor(model_dir, meta_graph, model_name, debug, sess, graph) self.graph = self.predictor.graph key = key or 'predictions' feed = feed or 'feed' try: self.key = self.graph.get_collection(key)[index] except Exception: self.key = None self.index = index try: self.feed = self.graph.get_collection(feed)[index] except Exception: self.feed = None self.sess = self.predictor.sess def inference(self, input, key=None, index=None, feed=None): if key is None: key = self.key if index is None: index = self.index if feed is None: feed = self.feed else: feed = self.graph.get_collection(feed)[index] feed_dict = { feed: input } return self.predictor.inference(key, feed_dict=feed_dict, index=index) #TODO lfeed, rfeed .. should be named as lfeed, rfeed class SimPredictor(object): def __init__(self, model_dir, key=None, lfeed=None, rfeed=None, index=0, meta_graph=None, model_name=None, debug=False, sess=None, graph=None): self.predictor = Predictor(model_dir, meta_graph, model_name, debug, sess, graph) self.graph = self.predictor.graph key = key or 'score' lfeed = lfeed or 'lfeed' rfeed = rfeed or 'rfeed' #print(self.graph.get_all_collection_keys()) self.key = self.graph.get_collection(key)[index] self.index = index self.lfeed = self.graph.get_collection(lfeed)[index] self.rfeed = self.graph.get_collection(rfeed)[index] self.sess = self.predictor.sess def inference(self, ltext, rtext=None, key=None, index=None, lfeed=None, rfeed=None): if key is None: key = self.key if index is None: index = self.index if lfeed is None: lfeed = self.lfeed else: lfeed = self.graph.get_collection(lfeed)[index] if rfeed is None: rfeed = self.rfeed else: rfeed = self.graph.get_collection(rfeed)[index] if rtext is not None: feed_dict = { lfeed: ltext, rfeed: rtext } return self.predictor.inference(key, feed_dict=feed_dict, index=index) else: feed_dict = { lfeed: ltext } return self.predictor.inference(key, feed_dict=feed_dict, index=index) def predict(self, ltext, rtext=None, key=None, index=None): return self.inference(ltext, rtext, key, index) def elementwise_predict(self, ltexts, rtexts, expand_left=True): scores = [] #if len(rtexts) >= len(ltexts): if expand_left: for ltext in ltexts: stacked_ltexts = np.array([ltext] * len(rtexts)) score = self.predict(stacked_ltexts, rtexts) score = np.squeeze(score) scores.append(score) else: for rtext in rtexts: stacked_rtexts = np.array([rtext] * len(ltexts)) score = self.predict(ltexts, stacked_rtexts) score = np.squeeze(score) scores.append(score) return np.array(scores) def onebyone_predict(self, ltexts, rtexts_list): scores = [] for ltext, rtexts in zip(ltexts, rtexts_list): score = self.predict([ltext], rtexts) score = np.squeeze(score) scores.append(score) return np.array(scores) #def bulk_predict(self, ltexts, rtexts_list, buffer_size=512): def bulk_predict(self, ltexts, rtexts_list, buffer_size=50): """ ltexts [batch_size,..] rtexts [batch_size, num_texts,..] TODO support split batch, so can avoid gpu mem issue """ stacked_ltexts = [] stacked_rtexts = [] boundaries = [] for ltext, rtexts in zip(ltexts, rtexts_list): stacked_ltexts += [ltext] * len(rtexts) stacked_rtexts += list(rtexts) boundaries.append(len(rtexts)) stacked_ltexts = np.array(stacked_ltexts) stacked_rtexts = np.array(stacked_rtexts) if len(stacked_ltexts) <= buffer_size: #[n, 1] <- [n, 1] [n, 1] score = self.predict(stacked_ltexts, stacked_rtexts) else: start = 0 score_list = [] while start < len(stacked_ltexts): end = start + buffer_size score = self.predict(stacked_ltexts[start: end], stacked_rtexts[start: end]) score_list += list(score) start += buffer_size score = np.array(score_list) score = np.squeeze(score) results_list = [] index = 0 for num_rtexts in boundaries: results = [] for i in range(num_rtexts): results.append(score[index]) index += 1 results_list.append(np.array(results)) results_list = np.array(results_list) return results_list def top_k(self, ltext, rtext, k=1, key=None): feed_dict = { self.lfeed: ltext, self.rfeed: rtext } if key is None: key = 'nearby' try: values, indices = self.predictor.inference(key, feed_dict=feed_dict, index=self.index) return values[:k], indices[:k] except Exception: # score = self.predict(ltext, rtext) # indices = (-score).argsort()[:k] # # result # x = arr.shape[0] # #like [0, 0, 1, 1] [1, 0, 0, 1] ->... choose (0,1), (0, 0), (1,0), (1, 1) # values = score[np.repeat(np.arange(x), N), indices.ravel()].reshape(x, k) # return values, indices scores = tf.get_collection(self.key)[self.index] vals, indexes = tf.nn.top_k(scores, k) return self.sess.run([vals, indexes], feed_dict=feed_dict) #different session for predictor and exact_predictor all using index 0! if work not correclty try to change Predictor default behave use melt.get_session() TODO class RerankSimPredictor(object): def __init__(self, model_dir, exact_model_dir, num_rerank=100, lfeed=None, rfeed=None, exact_lfeed=None, exact_rfeed=None, key=None, exact_key=None, index=0, exact_index=0, sess=None, exact_sess=None, graph=None, exact_graph=None): self.predictor = SimPredictor(model_dir, index=index, lfeed=lfeed, rfeed=rfeed, key=key, sess=sess, graph=graph) #TODO FIXME for safe use -1, should be 1 also ok, but not sure why dual_bow has two 'score'.. #[, , # ] #this is becasue you use evaluator(predictor + exact_predictor) when train seq2seq, so load dual_bow will add one score.. self.exact_predictor = SimPredictor(exact_model_dir, index=exact_index, lfeed=exact_lfeed, rfeed=exact_rfeed, key=exact_key, sess=exact_sess, graph=exact_graph) self.num_rerank = num_rerank def inference(self, ltext, rtext, ratio=1.): scores = self.predictor.inference(ltext, rtext) if not ratio: return scores exact_scores = [] for i, score in enumerate(scores): index= (-score).argsort() top_index = index[:self.num_rerank] exact_rtext = rtext[top_index] exact_score = self.exact_predictor.elementwise_predict([ltext[i]], rtext) exact_score = np.squeeze(exact_score) if ratio < 1.: for j in range(len(top_index)): exact_score[j] = ratio * exact_score[j] + (1. - ratio) * score[top_index[j]] exact_scores.append(exact_score) return np.array(exact_score) def predict(self, ltext, rtext, ratio=1.): return self.predict(ltext, rtext, ratio) #TODO do numpy has top_k ? seems argpartition will get topn but not in order def top_k(self, ltext, rtext, k=1, ratio=1., sorted=True): assert k <= self.num_rerank #TODO speed hurt? ltext = np.array(ltext) rtext = np.array(rtext) scores = self.predictor.predict(ltext, rtext) top_values = [] top_indices = [] if not ratio: for i, score in enumerate(scores): index = (-score).argsort() top_values.append(score[index[:k]]) top_indices.append(index[:k]) return np.array(top_values), np.array(top_indices) for i, score in enumerate(scores): index = (-score).argsort() print(index, np.argpartition(-score, self.num_rerank)) if ratio: top_index = index[:self.num_rerank] exact_rtext = rtext[top_index] exact_score = self.exact_predictor.elementwise_predict([ltext[i]], exact_rtext) exact_score = np.squeeze(exact_score) if ratio < 1.: for j in range(len(top_index)): exact_score[j] = ratio * exact_score[j] + (1. - ratio) * score[top_index[j]] exact_index = (-exact_score).argsort() new_index = [x for x in index] for j in range(len(exact_index)): new_index[j] = index[exact_index[j]] index = new_index top_values.append(exact_score[exact_index[:k]]) top_indices.append(index[:k]) return np.array(top_values), np.array(top_indices) class WordsImportancePredictor(object): def __init__(self, model_dir, key=None, feed=None, index=0, sess=None): self.predictor = Predictor(model_dir, sess=sess) self.graph = self.predictor.graph self.index = index if key is None: self.key = self.graph.get_collection('words_importance')[index] else: self.key = key if feed is None: self.feed = self.graph.get_collection('rfeed')[index] else: self.feed = feed def inference(self, inputs): feed_dict = {self.feed: inputs} return self.predictor.inference(self.key, feed_dict=feed_dict, index=self.index) def predict(self, inputs): return self.inference(inputs) class TextPredictor(object): def __init__(self, model_dir, feed=None, text_key='beam_text', score_key='beam_text_score', lfeed=None, rfeed=None, key=None, index=0, meta_graph=None, model_name=None, current_length_normalization_factor=None, length_normalization_fator=None, vocab=None, debug=False, sess=None, graph=None): self.predictor = SimPredictor(model_dir, index=index, lfeed=lfeed, rfeed=rfeed, key=key, sess=sess, graph=graph) self.ori_predictor = self.predictor.predictor self.graph = self.predictor.graph self.index = index self.text_key = text_key self.score_key = score_key self.current_length_normalization_factor = current_length_normalization_factor self.length_normalization_fator = length_normalization_fator self.vocab = vocab assert self.vocab or (self.current_length_normalization_factor == self.length_normalization_fator) if feed is None: try: self.feed = self.graph.get_collection('feed')[index] except Exception: self.feed = self.graph.get_collection('lfeed')[index] else: self.feed = feed def _get_text_len(self, text): len_ = 0 for wid in text: len_ += 1 if wid == self.vocab.end_id(): break return len_ def _get_texts_len(self, texts): lens_ = [self._get_text_len(text) for text in texts] return np.array(lens_) def inference(self, inputs, text_key=None, score_key=None, index=None): if text_key is None: text_key = self.text_key if score_key is None: score_key = self.score_key if index is None: index = self.index feed_dict = { self.feed: inputs } texts, scores = self.ori_predictor.inference([text_key, score_key], feed_dict=feed_dict, index=index) #not used much.. currenlty not used if self.current_length_normalization_factor and self.length_normalization_fator and \ self.current_length_normalization_factor != self.length_normalization_fator: sequence_length = self._get_text_len(texts) current_normalize_factor = tf.pow(sequence_length, self.current_normalize_factor) normalize_factor = tf.pow(sequence_length, self.length_normalization_fator) logprobs = math.log(scores) logprobs = logprobs * current_normalize_factor / normalize_factor scores = math.exp(logprobs) return texts, scores def predict(self, ltext, rtext, index=-1): return self.predictor.predict(ltext, rtext, index=index) def elementwise_predict(self, ltexts, rtexts): return self.predictor.elementwise_predict(ltexts, rtexts) def bulk_predict(self, ltexts, rtexts): return self.predictor.bulk_predict(ltexts, rtexts) def predict_text(self, inputs, text_key=None, score_key=None, index=None): return self.inference(inputs, text_key, score_key, index) def predict_full_text(self, inputs, index=None): return self.inference(inputs, 'full_text', 'full_text_score', index=index) class EnsembleTextPredictor(object): """ might has memory issue since, multiple model each with image model inside... TODO one way is juse use nomral 1 TextPredictor and each write a file and deal with all result files merge result as ensemble result """ def __init__(self, model_dirs, feed=None, text_key='beam_text', score_key='beam_text_score', current_length_normalization_factor=1., length_normalization_fator=1., vocab=None, index=0, sess=None): if isinstance(model_dirs, str): if ',' in model_dirs: model_dirs = model_dirs.split(',') else: model_dirs = [model_dirs] self.predictors = [TextPredictor(model_dir, feed=feed, text_key=text_key, score_key=score_key, current_length_normalization_factor=current_length_normalization_factor, length_normalization_fator=length_normalization_fator, vocab=vocab, index=index, sess=sess) \ for model_dir in model_dirs] #Not correct need to FIMXE one input image has some candidates to calc(different num for different image) #need to pack calc and reassign back correctly #well below to complex TODO... now just using simple method # def inference(self, inputs): # text_map = {} # img2text = {} # for i, predictor in enumerate(self.predictors): # texts, scores = predictor.inference(inputs) # print('----', texts.shape, scores.shape) # for j, text in enumerate(texts): # #HACK TODO now beam search with input TEXT_MAX_WORDS will predict text with length TEXT_MAX_WORDS + 2 # #should move the convertion code outside maybe change beam search code is best way # #HACK 9 for ai-chanllenger end_id # text = text[0][:-2] # text = np.array([x if x != 9 else 0 for x in text]) # text_str = '\t'.join([str(x) for x in text]) # img2text.setdefault(i, set()) # img2text[j].add(text_str) # # text_map[text_str] = text # texts = np.array([y for (x, y) in text_map.items()]) # print('--------', texts, inputs[0].shape, texts.shape) # scores_list =[predictor.elementwise_predict(inputs, texts) for predictor in self.predictors] # scorer = gezi.AvgScore() # for scores in scores_list: # scorer.add(scores) # scores = scorer.avg_score() # scores = np.array(scores) # print(texts, scores, texts.shape, scores.shape) # results = sorted([(score, text) for score, text in zip(scores, texts)], reverse=True) # #https://stackoverflow.com/questions/12974474/how-to-unzip-a-list-of-tuples-into-individual-lists # scores, texts = zip(*results) # return np.array(texts), np.array(scores) def inference(self, inputs): ##---below is wrong.. all {} will point to one postion... #results = [{}] * len(inputs) results = [{} for _ in range(len(inputs))] for predictor in self.predictors: #[batch_size, beam_size, text] texts_list, scores_list = predictor.inference(inputs) print('texts_list.shape', texts_list.shape, len(texts_list)) for i, (texts, scores) in enumerate(zip(texts_list, scores_list)): for text, score in zip(texts, scores): text_str = '\t'.join([str(x) for x in text]) results[i].setdefault(text_str, 0.) results[i][text_str] += score texts = [] scores = [] for result in results: sorted_result = sorted(result.items(), key=operator.itemgetter(1), reverse=True) texts.append([map(int, sorted_result[0][0].split('\t'))]) scores.append([sorted_result[0][1]]) return np.array(texts), np.array(scores) def predict(self, inputs): return self.inference(inputs) def predict_text(self, inputs): return self.inference(inputs) ================================================ FILE: utils/melt/inference/predictor_base.py ================================================ #!/usr/bin/env python # ============================================================================== # \file predictor_base.py # \author chenghuige # \date 2016-08-17 23:57:11.987515 # \Description # ============================================================================== """ This is used for train predict, predictor building graph not read from meta """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import melt, gezi import numpy as np def get_tensor_from_key(key, index=-1): if isinstance(key, str): try: return tf.get_collection(key)[index] except Exception: print('Warning:', key, ' not find in graph') return tf.no_op() else: return key class PredictorBase(object): #TODO maybe like predictor.py need graph? def __init__(self, sess=None): super(PredictorBase, self).__init__() if sess is None: self.sess = melt.get_session() else: self.sess = sess def load(self, model_dir, var_list=None, model_name=None, sess = None): """ only load varaibels from checkpoint file, you need to create the graph before calling load """ if sess is not None: self.sess = sess self.model_path = melt.get_model_path(model_dir, model_name) timer = gezi.Timer('load model ok %s' % self.model_path) saver = melt.restore_from_path(self.sess, self.model_path, var_list) timer.print() return self.sess def restore_from_graph(self): pass def restore(self, model_dir, model_name=None, sess=None): """ do not need to create graph restore graph from meta file then restore values from checkpoint file """ if sess is not None: self.sess = sess self.model_path = model_path = melt.get_model_path(model_dir, model_name) timer = gezi.Timer('restore meta grpah and model ok %s' % model_path) meta_filename = '%s.meta'%model_path saver = tf.train.import_meta_graph(meta_filename) self.restore_from_graph() saver.restore(self.sess, model_path) #---TODO not work remove can run but hang FIXME add predictor + exact_predictor during train will face #@gauravsindhwani , can you still run the code successfully after you remove these two collections since they are actually part of the graph. #I try your way but find the program is stuck after restoring." #https://github.com/tensorflow/tensorflow/issues/9747 #tf.get_default_graph().clear_collection("queue_runners") #tf.get_default_graph().clear_collection("local_variables") #--for num_epochs not 0 #self.sess.run(tf.local_variables_initializer()) timer.print() return self.sess def run(self, key, feed_dict=None): return self.sess.run(key, feed_dict) def inference(self, key, feed_dict=None, index=-1): if not isinstance(key, (list, tuple)): return self.sess.run(get_tensor_from_key(key, index), feed_dict=feed_dict) else: keys = key if not isinstance(index, (list, tuple)): indexes = [index] * len(keys) else: indexes = index keys = [get_tensor_from_key(key, index) for key,index in zip(keys, indexes)] return self.sess.run(keys, feed_dict=feed_dict) def elementwise_predict(self, ltexts, rtexts): scores = [] if len(rtexts) >= len(ltexts): for ltext in ltexts: stacked_ltexts = np.array([ltext] * len(rtexts)) score = self.predict(stacked_ltexts, rtexts) score = np.squeeze(score) scores.append(score) else: for rtext in rtexts: stacked_rtexts = np.array([rtext] * len(ltexts)) score = self.predict(ltexts, stacked_rtexts) score = np.squeeze(score) scores.append(score) return np.array(scores) ================================================ FILE: utils/melt/layers/__init__.py ================================================ #!/usr/bin/env python # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-16 16:36:38.289129 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.layers.layers import * from melt.layers.optimizers import * from melt.layers.cnn import * from melt.layers.rnn import * from melt.layers.transformer import * ================================================ FILE: utils/melt/layers/cnn/__init__.py ================================================ from melt.layers.cnn.convnet import * from melt.layers.cnn.qanet import * ================================================ FILE: utils/melt/layers/cnn/cnn.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cnn.py # \author chenghuige # \date 2018-02-18 12:26:23.284086 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import sys, os from official.transformer.model import model_utils keras = tf.keras layers = tf.keras.layers Layer = layers.Layer import melt from melt.rnn import encode_outputs, OutputMethod """ Hierarchical ConvNet """ #https://arxiv.org/pdf/1705.02364.pdf #https://github.com/facebookresearch/InferSent/blob/master/models.py # This is simple can be cnn baseline, but easy to overfit class ConvNet(melt.Model): def __init__(self, num_layers, num_filters, keep_prob=1.0, kernel_sizes = [3] * 7, use_position_encoding=False, **kwargs): super(ConvNet, self).__init__(**kwargs) self.num_layers = num_layers self.keep_prob = keep_prob self.num_filters = num_filters self.kernel_sizes = kernel_sizes # might try [3, 5, 7, 9, 11, 13] ? self.use_position_encoding = use_position_encoding assert self.num_filters assert self.num_layers <= len(kernel_sizes) self.conv1ds = [layers.Conv1D(filters=num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) for layer in range(self.num_layers)] # seq_len for rnn compact def call(self, seq, seq_len=None, masks=None, output_method=OutputMethod.all, training=False): if self.use_position_encoding: hidden_size = melt.get_shape(seq, -1) # Scale embedding by the sqrt of the hidden size seq *= hidden_size ** 0.5 # Create binary array of size [batch_size, length] # where 1 = padding, 0 = not padding padding = tf.to_float(tf.sequence_mask(seq_len)) # Set all padding embedding values to 0 seq *= tf.expand_dims(padding, -1) pos_encoding = model_utils.get_position_encoding( tf.shape(seq)[1], tf.shape(seq)[-1]) seq = seq + pos_encoding num_filters = self.num_filters seqs = [seq] #batch_size = melt.get_batch_size(seq) for layer in range(self.num_layers): if masks is None: seq_ = melt.dropout(seq, self.keep_prob, training) else: seq_ = seq * masks[layer] seq = self.conv1ds[layer](seq_) seqs.append(seq) outputs = tf.concat(seqs[1:], 2) # not do any dropout in convet just dropout outside # if self.is_train and self.keep_prob < 1: # outputs = tf.nn.dropout(outputs, self.keep_prob) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) ================================================ FILE: utils/melt/layers/cnn/convnet.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file cnn.py # \author chenghuige # \date 2018-02-18 12:26:23.284086 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import sys, os from official.transformer.model import model_utils keras = tf.keras layers = tf.keras.layers Layer = layers.Layer import melt from melt.rnn import encode_outputs, OutputMethod """ Hierarchical ConvNet """ #https://arxiv.org/pdf/1705.02364.pdf #https://github.com/facebookresearch/InferSent/blob/master/models.py # This is simple can be cnn baseline, but easy to overfit class ConvNet(melt.Model): def __init__(self, num_layers, num_filters, keep_prob=1.0, kernel_sizes = [3] * 7, use_position_encoding=False, **kwargs): super(ConvNet, self).__init__(**kwargs) self.num_layers = num_layers self.keep_prob = keep_prob self.num_filters = num_filters self.kernel_sizes = kernel_sizes # might try [3, 5, 7, 9, 11, 13] ? self.use_position_encoding = use_position_encoding assert self.num_filters assert self.num_layers <= len(kernel_sizes) self.conv1ds = [layers.Conv1D(filters=num_filters, kernel_size=kernel_sizes[layer], padding='same', activation=tf.nn.relu) for layer in range(self.num_layers)] # seq_len for rnn compact def call(self, seq, seq_len=None, masks=None, output_method=OutputMethod.all, training=False): if self.use_position_encoding: hidden_size = melt.get_shape(seq, -1) # Scale embedding by the sqrt of the hidden size seq *= hidden_size ** 0.5 # Create binary array of size [batch_size, length] # where 1 = padding, 0 = not padding padding = tf.to_float(tf.sequence_mask(seq_len)) # Set all padding embedding values to 0 seq *= tf.expand_dims(padding, -1) pos_encoding = model_utils.get_position_encoding( tf.shape(seq)[1], tf.shape(seq)[-1]) seq = seq + pos_encoding num_filters = self.num_filters seqs = [seq] #batch_size = melt.get_batch_size(seq) for layer in range(self.num_layers): if masks is None: seq_ = melt.dropout(seq, self.keep_prob, training) else: seq_ = seq * masks[layer] seq = self.conv1ds[layer](seq_) seqs.append(seq) outputs = tf.concat(seqs[1:], 2) # not do any dropout in convet just dropout outside # if self.is_train and self.keep_prob < 1: # outputs = tf.nn.dropout(outputs, self.keep_prob) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) ================================================ FILE: utils/melt/layers/cnn/qanet.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file qanet.py # \author chenghuige # \date 2018-09-20 10:09:05.119302 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import numpy as np import math from tensorflow.contrib.rnn import MultiRNNCell from tensorflow.contrib.rnn import RNNCell from tensorflow.python.util import nest from tensorflow.python.ops import math_ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import init_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import clip_ops from functools import reduce from operator import mul keras = tf.keras layers = tf.keras.layers Layer = layers.Layer import melt from melt.rnn import encode_outputs, OutputMethod ''' Some functions are taken directly from Tensor2Tensor Library: https://github.com/tensorflow/tensor2tensor/ and BiDAF repository: https://github.com/allenai/bi-att-flow ''' initializer = lambda: tf.contrib.layers.variance_scaling_initializer(factor=1.0, mode='FAN_AVG', uniform=True, dtype=tf.float32) initializer_relu = lambda: tf.contrib.layers.variance_scaling_initializer(factor=2.0, mode='FAN_IN', uniform=False, dtype=tf.float32) regularizer = tf.contrib.layers.l2_regularizer(scale = 3e-7) def glu(x): """Gated Linear Units from https://arxiv.org/pdf/1612.08083.pdf""" x, x_h = tf.split(x, 2, axis = -1) return tf.sigmoid(x) * x_h def noam_norm(x, epsilon=1.0, scope=None, reuse=None): """One version of layer normalization.""" with tf.name_scope(scope, default_name="noam_norm", values=[x]): shape = x.get_shape() ndims = len(shape) return tf.nn.l2_normalize(x, ndims - 1, epsilon=epsilon) * tf.sqrt(tf.to_float(shape[-1])) def layer_norm_compute_python(x, epsilon, scale, bias): """Layer norm raw computation.""" mean = tf.reduce_mean(x, axis=[-1], keep_dims=True) variance = tf.reduce_mean(tf.square(x - mean), axis=[-1], keep_dims=True) norm_x = (x - mean) * tf.rsqrt(variance + epsilon) return norm_x * scale + bias def layer_norm(x, filters=None, epsilon=1e-6, scope=None, reuse=None): """Layer normalize the tensor x, averaging over the last dimension.""" if filters is None: filters = x.get_shape()[-1] with tf.variable_scope(scope, default_name="layer_norm", values=[x], reuse=reuse): scale = tf.get_variable( "layer_norm_scale", [filters], regularizer = regularizer, initializer=tf.ones_initializer()) bias = tf.get_variable( "layer_norm_bias", [filters], regularizer = regularizer, initializer=tf.zeros_initializer()) result = layer_norm_compute_python(x, epsilon, scale, bias) return result norm_fn = layer_norm#tf.contrib.layers.layer_norm #tf.contrib.layers.layer_norm or noam_norm def highway(x, size = None, activation = None, num_layers = 2, scope = "highway", dropout = 0.0, reuse = None): with tf.variable_scope(scope, reuse): if size is None: size = x.shape.as_list()[-1] else: x = conv(x, size, name = "input_projection", reuse = reuse) for i in range(num_layers): T = conv(x, size, bias = True, activation = tf.sigmoid, name = "gate_%d"%i, reuse = reuse) H = conv(x, size, bias = True, activation = activation, name = "activation_%d"%i, reuse = reuse) H = tf.nn.dropout(H, 1.0 - dropout) x = H * T + x * (1.0 - T) return x def layer_dropout(inputs, residual, dropout): pred = tf.random_uniform([]) < dropout return tf.cond(pred, lambda: residual, lambda: tf.nn.dropout(inputs, 1.0 - dropout) + residual) def residual_block(inputs, num_blocks, num_layers, kernel_size, mask = None, num_filters = 128, input_projection = False, num_heads = 8, seq_len = None, scope = "res_block", training = True, reuse = None, bias = True, dropout = 0.0): with tf.variable_scope(scope, reuse = reuse): if input_projection: inputs = conv(inputs, num_filters, name = "input_projection", reuse = reuse) outputs = inputs sublayer = 1 total_sublayers = (num_layers + 2) * num_blocks for i in range(num_blocks): outputs = add_timing_signal_1d(outputs) outputs, sublayer = conv_block(outputs, num_layers, kernel_size, num_filters, seq_len = seq_len, scope = "encoder_block_%d"%i,reuse = reuse, bias = bias, dropout = dropout, sublayers = (sublayer, total_sublayers)) outputs, sublayer = self_attention_block(outputs, num_filters, seq_len, mask = mask, num_heads = num_heads, scope = "self_attention_layers%d"%i, reuse = reuse, training = training, bias = bias, dropout = dropout, sublayers = (sublayer, total_sublayers)) return outputs def conv_block(inputs, num_layers, kernel_size, num_filters, seq_len = None, scope = "conv_block", training = True, reuse = None, bias = True, dropout = 0.0, sublayers = (1, 1)): with tf.variable_scope(scope, reuse = reuse): outputs = tf.expand_dims(inputs,2) l, L = sublayers for i in range(num_layers): residual = outputs outputs = norm_fn(outputs, scope = "layer_norm_%d"%i, reuse = reuse) if (i) % 2 == 0: outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = depthwise_separable_convolution(outputs, kernel_size = (kernel_size, 1), num_filters = num_filters, scope = "depthwise_conv_layers_%d"%i, training = training, reuse = reuse) outputs = layer_dropout(outputs, residual, dropout * float(l) / L) l += 1 return tf.squeeze(outputs,2), l def self_attention_block(inputs, num_filters, seq_len, mask = None, num_heads = 8, scope = "self_attention_ffn", reuse = None, training = True, bias = True, dropout = 0.0, sublayers = (1, 1)): with tf.variable_scope(scope, reuse = reuse): l, L = sublayers # Self attention outputs = norm_fn(inputs, scope = "layer_norm_1", reuse = reuse) outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = multihead_attention(outputs, num_filters, num_heads = num_heads, seq_len = seq_len, reuse = reuse, mask = mask, training = training, bias = bias, dropout = dropout) residual = layer_dropout(outputs, inputs, dropout * float(l) / L) l += 1 # Feed-forward outputs = norm_fn(residual, scope = "layer_norm_2", reuse = reuse) outputs = tf.nn.dropout(outputs, 1.0 - dropout) outputs = conv(outputs, num_filters, True, tf.nn.relu, name = "FFN_1", reuse = reuse) outputs = conv(outputs, num_filters, True, None, name = "FFN_2", reuse = reuse) outputs = layer_dropout(outputs, residual, dropout * float(l) / L) l += 1 return outputs, l def multihead_attention(queries, units, num_heads, memory = None, seq_len = None, scope = "Multi_Head_Attention", reuse = None, mask = None, training = True, bias = True, dropout = 0.0): with tf.variable_scope(scope, reuse = reuse): # Self attention if memory is None: memory = queries memory = conv(memory, 2 * units, name = "memory_projection", reuse = reuse) query = conv(queries, units, name = "query_projection", reuse = reuse) Q = split_last_dimension(query, num_heads) K, V = [split_last_dimension(tensor, num_heads) for tensor in tf.split(memory,2,axis = 2)] key_depth_per_head = units // num_heads Q *= key_depth_per_head**-0.5 x = dot_product_attention(Q,K,V, bias = bias, seq_len = seq_len, mask = mask, training = training, scope = "dot_product_attention", reuse = reuse, dropout = dropout) return combine_last_two_dimensions(tf.transpose(x,[0,2,1,3])) def conv(inputs, output_size, bias = None, activation = None, kernel_size = 1, name = "conv", reuse = None): with tf.variable_scope(name, reuse = reuse): shapes = inputs.shape.as_list() if len(shapes) > 4: raise NotImplementedError elif len(shapes) == 4: filter_shape = [1,kernel_size,shapes[-1],output_size] bias_shape = [1,1,1,output_size] strides = [1,1,1,1] else: filter_shape = [kernel_size,shapes[-1],output_size] bias_shape = [1,1,output_size] strides = 1 conv_func = tf.nn.conv1d if len(shapes) == 3 else tf.nn.conv2d kernel_ = tf.get_variable("kernel_", filter_shape, dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu() if activation is not None else initializer()) outputs = conv_func(inputs, kernel_, strides, "VALID") if bias: outputs += tf.get_variable("bias_", bias_shape, regularizer=regularizer, initializer = tf.zeros_initializer()) if activation is not None: return activation(outputs) else: return outputs def mask_logits(inputs, mask, mask_value = -1e30): mask = tf.cast(mask, tf.float32) return inputs + mask_value * (1 - mask) def depthwise_separable_convolution(inputs, kernel_size, num_filters, scope = "depthwise_separable_convolution", bias = True, training = True, reuse = None): with tf.variable_scope(scope, reuse = reuse): shapes = inputs.shape.as_list() depthwise_filter = tf.get_variable("depthwise_filter", (kernel_size[0], kernel_size[1], shapes[-1], 1), dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu()) pointwise_filter = tf.get_variable("pointwise_filter", (1,1,shapes[-1],num_filters), dtype = tf.float32, regularizer=regularizer, initializer = initializer_relu()) outputs = tf.nn.separable_conv2d(inputs, depthwise_filter, pointwise_filter, strides = (1,1,1,1), padding = "SAME") if bias: b = tf.get_variable("bias", outputs.shape[-1], regularizer=regularizer, initializer = tf.zeros_initializer()) outputs += b outputs = tf.nn.relu(outputs) return outputs def split_last_dimension(x, n): """Reshape x so that the last dimension becomes two dimensions. The first of these two dimensions is n. Args: x: a Tensor with shape [..., m] n: an integer. Returns: a Tensor with shape [..., n, m/n] """ old_shape = x.get_shape().dims last = old_shape[-1] new_shape = old_shape[:-1] + [n] + [last // n if last else None] ret = tf.reshape(x, tf.concat([tf.shape(x)[:-1], [n, -1]], 0)) ret.set_shape(new_shape) return tf.transpose(ret,[0,2,1,3]) def dot_product_attention(q, k, v, bias, seq_len = None, mask = None, training = True, scope=None, reuse = None, dropout = 0.0): """dot-product attention. Args: q: a Tensor with shape [batch, heads, length_q, depth_k] k: a Tensor with shape [batch, heads, length_kv, depth_k] v: a Tensor with shape [batch, heads, length_kv, depth_v] bias: bias Tensor (see attention_bias()) training: a bool of training scope: an optional string Returns: A Tensor. """ with tf.variable_scope(scope, default_name="dot_product_attention", reuse = reuse): # [batch, num_heads, query_length, memory_length] logits = tf.matmul(q, k, transpose_b=True) if bias: b = tf.get_variable("bias", logits.shape[-1], regularizer=regularizer, initializer = tf.zeros_initializer()) logits += b if mask is not None: mask = tf.expand_dims(mask, 1) mask = tf.expand_dims(mask, 1) logits = mask_logits(logits, mask) weights = tf.nn.softmax(logits, name="attention_weights") # dropping out the attention links for each of the heads weights = tf.nn.dropout(weights, 1.0 - dropout) return tf.matmul(weights, v) def combine_last_two_dimensions(x): """Reshape x so that the last two dimension become one. Args: x: a Tensor with shape [..., a, b] Returns: a Tensor with shape [..., ab] """ old_shape = x.get_shape().dims a, b = old_shape[-2:] new_shape = old_shape[:-2] + [a * b if a and b else None] ret = tf.reshape(x, tf.concat([tf.shape(x)[:-2], [-1]], 0)) ret.set_shape(new_shape) return ret def add_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4): """Adds a bunch of sinusoids of different frequencies to a Tensor. Each channel of the input Tensor is incremented by a sinusoid of a different frequency and phase. This allows attention to learn to use absolute and relative positions. Timing signals should be added to some precursors of both the query and the memory inputs to attention. The use of relative position is possible because sin(x+y) and cos(x+y) can be experessed in terms of y, sin(x) and cos(x). In particular, we use a geometric sequence of timescales starting with min_timescale and ending with max_timescale. The number of different timescales is equal to channels / 2. For each timescale, we generate the two sinusoidal signals sin(timestep/timescale) and cos(timestep/timescale). All of these sinusoids are concatenated in the channels dimension. Args: x: a Tensor with shape [batch, length, channels] min_timescale: a float max_timescale: a float Returns: a Tensor the same shape as x. """ length = tf.shape(x)[1] channels = tf.shape(x)[2] signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) return x + signal def get_timing_signal_1d(length, channels, min_timescale=1.0, max_timescale=1.0e4): """Gets a bunch of sinusoids of different frequencies. Each channel of the input Tensor is incremented by a sinusoid of a different frequency and phase. This allows attention to learn to use absolute and relative positions. Timing signals should be added to some precursors of both the query and the memory inputs to attention. The use of relative position is possible because sin(x+y) and cos(x+y) can be experessed in terms of y, sin(x) and cos(x). In particular, we use a geometric sequence of timescales starting with min_timescale and ending with max_timescale. The number of different timescales is equal to channels / 2. For each timescale, we generate the two sinusoidal signals sin(timestep/timescale) and cos(timestep/timescale). All of these sinusoids are concatenated in the channels dimension. Args: length: scalar, length of timing signal sequence. channels: scalar, size of timing embeddings to create. The number of different timescales is equal to channels / 2. min_timescale: a float max_timescale: a float Returns: a Tensor of timing signals [1, length, channels] """ position = tf.to_float(tf.range(length)) num_timescales = channels // 2 log_timescale_increment = ( math.log(float(max_timescale) / float(min_timescale)) / (tf.to_float(num_timescales) - 1)) inv_timescales = min_timescale * tf.exp( tf.to_float(tf.range(num_timescales)) * -log_timescale_increment) scaled_time = tf.expand_dims(position, 1) * tf.expand_dims(inv_timescales, 0) signal = tf.concat([tf.sin(scaled_time), tf.cos(scaled_time)], axis=1) signal = tf.pad(signal, [[0, 0], [0, tf.mod(channels, 2)]]) signal = tf.reshape(signal, [1, length, channels]) return signal def ndim(x): """Copied from keras==2.0.6 Returns the number of axes in a tensor, as an integer. # Arguments x: Tensor or variable. # Returns Integer (scalar), number of axes. # Examples ```python >>> from keras import backend as K >>> inputs = K.placeholder(shape=(2, 4, 5)) >>> val = np.array([[1, 2], [3, 4]]) >>> kvar = K.variable(value=val) >>> K.ndim(inputs) 3 >>> K.ndim(kvar) 2 ``` """ dims = x.get_shape()._dims if dims is not None: return len(dims) return None def dot(x, y): """Modified from keras==2.0.6 Multiplies 2 tensors (and/or variables) and returns a *tensor*. When attempting to multiply a nD tensor with a nD tensor, it reproduces the Theano behavior. (e.g. `(2, 3) * (4, 3, 5) -> (2, 4, 5)`) # Arguments x: Tensor or variable. y: Tensor or variable. # Returns A tensor, dot product of `x` and `y`. """ if ndim(x) is not None and (ndim(x) > 2 or ndim(y) > 2): x_shape = [] for i, s in zip(x.get_shape().as_list(), tf.unstack(tf.shape(x))): if i is not None: x_shape.append(i) else: x_shape.append(s) x_shape = tuple(x_shape) y_shape = [] for i, s in zip(y.get_shape().as_list(), tf.unstack(tf.shape(y))): if i is not None: y_shape.append(i) else: y_shape.append(s) y_shape = tuple(y_shape) y_permute_dim = list(range(ndim(y))) y_permute_dim = [y_permute_dim.pop(-2)] + y_permute_dim xt = tf.reshape(x, [-1, x_shape[-1]]) yt = tf.reshape(tf.transpose(y, perm=y_permute_dim), [y_shape[-2], -1]) return tf.reshape(tf.matmul(xt, yt), x_shape[:-1] + y_shape[:-2] + y_shape[-1:]) if isinstance(x, tf.SparseTensor): out = tf.sparse_tensor_dense_matmul(x, y) else: out = tf.matmul(x, y) return out def batch_dot(x, y, axes=None): """Copy from keras==2.0.6 Batchwise dot product. `batch_dot` is used to compute dot product of `x` and `y` when `x` and `y` are data in batch, i.e. in a shape of `(batch_size, :)`. `batch_dot` results in a tensor or variable with less dimensions than the input. If the number of dimensions is reduced to 1, we use `expand_dims` to make sure that ndim is at least 2. # Arguments x: Keras tensor or variable with `ndim >= 2`. y: Keras tensor or variable with `ndim >= 2`. axes: list of (or single) int with target dimensions. The lengths of `axes[0]` and `axes[1]` should be the same. # Returns A tensor with shape equal to the concatenation of `x`'s shape (less the dimension that was summed over) and `y`'s shape (less the batch dimension and the dimension that was summed over). If the final rank is 1, we reshape it to `(batch_size, 1)`. """ if isinstance(axes, int): axes = (axes, axes) x_ndim = ndim(x) y_ndim = ndim(y) if x_ndim > y_ndim: diff = x_ndim - y_ndim y = tf.reshape(y, tf.concat([tf.shape(y), [1] * (diff)], axis=0)) elif y_ndim > x_ndim: diff = y_ndim - x_ndim x = tf.reshape(x, tf.concat([tf.shape(x), [1] * (diff)], axis=0)) else: diff = 0 if ndim(x) == 2 and ndim(y) == 2: if axes[0] == axes[1]: out = tf.reduce_sum(tf.multiply(x, y), axes[0]) else: out = tf.reduce_sum(tf.multiply(tf.transpose(x, [1, 0]), y), axes[1]) else: if axes is not None: adj_x = None if axes[0] == ndim(x) - 1 else True adj_y = True if axes[1] == ndim(y) - 1 else None else: adj_x = None adj_y = None out = tf.matmul(x, y, adjoint_a=adj_x, adjoint_b=adj_y) if diff: if x_ndim > y_ndim: idx = x_ndim + y_ndim - 3 else: idx = x_ndim - 1 out = tf.squeeze(out, list(range(idx, idx + diff))) if ndim(out) == 1: out = tf.expand_dims(out, 1) return out def optimized_trilinear_for_attention(args, c_maxlen, q_maxlen, input_keep_prob=1.0, scope='efficient_trilinear', bias_initializer=tf.zeros_initializer(), kernel_initializer=initializer()): assert len(args) == 2, "just use for computing attention with two input" arg0_shape = args[0].get_shape().as_list() arg1_shape = args[1].get_shape().as_list() if len(arg0_shape) != 3 or len(arg1_shape) != 3: raise ValueError("`args` must be 3 dims (batch_size, len, dimension)") if arg0_shape[2] != arg1_shape[2]: raise ValueError("the last dimension of `args` must equal") arg_size = arg0_shape[2] dtype = args[0].dtype droped_args = [tf.nn.dropout(arg, input_keep_prob) for arg in args] with tf.variable_scope(scope): weights4arg0 = tf.get_variable( "linear_kernel4arg0", [arg_size, 1], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) weights4arg1 = tf.get_variable( "linear_kernel4arg1", [arg_size, 1], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) weights4mlu = tf.get_variable( "linear_kernel4mul", [1, 1, arg_size], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) biases = tf.get_variable( "linear_bias", [1], dtype=dtype, regularizer=regularizer, initializer=bias_initializer) subres0 = tf.tile(dot(droped_args[0], weights4arg0), [1, 1, q_maxlen]) subres1 = tf.tile(tf.transpose(dot(droped_args[1], weights4arg1), perm=(0, 2, 1)), [1, c_maxlen, 1]) subres2 = batch_dot(droped_args[0] * weights4mlu, tf.transpose(droped_args[1], perm=(0, 2, 1))) res = subres0 + subres1 + subres2 nn_ops.bias_add(res, biases) return res def trilinear(args, output_size = 1, bias = True, squeeze=False, wd=0.0, input_keep_prob= 1.0, scope = "trilinear"): with tf.variable_scope(scope): flat_args = [flatten(arg, 1) for arg in args] flat_args = [tf.nn.dropout(arg, input_keep_prob) for arg in flat_args] flat_out = _linear(flat_args, output_size, bias, scope=scope) out = reconstruct(flat_out, args[0], 1) return tf.squeeze(out, -1) def flatten(tensor, keep): fixed_shape = tensor.get_shape().as_list() start = len(fixed_shape) - keep left = reduce(mul, [fixed_shape[i] or tf.shape(tensor)[i] for i in range(start)]) out_shape = [left] + [fixed_shape[i] or tf.shape(tensor)[i] for i in range(start, len(fixed_shape))] flat = tf.reshape(tensor, out_shape) return flat def reconstruct(tensor, ref, keep): ref_shape = ref.get_shape().as_list() tensor_shape = tensor.get_shape().as_list() ref_stop = len(ref_shape) - keep tensor_start = len(tensor_shape) - keep pre_shape = [ref_shape[i] or tf.shape(ref)[i] for i in range(ref_stop)] keep_shape = [tensor_shape[i] or tf.shape(tensor)[i] for i in range(tensor_start, len(tensor_shape))] # pre_shape = [tf.shape(ref)[i] for i in range(len(ref.get_shape().as_list()[:-keep]))] # keep_shape = tensor.get_shape().as_list()[-keep:] target_shape = pre_shape + keep_shape out = tf.reshape(tensor, target_shape) return out def _linear(args, output_size, bias, bias_initializer=tf.zeros_initializer(), scope = None, kernel_initializer=initializer(), reuse = None): """Linear map: sum_i(args[i] * W[i]), where W[i] is a variable. Args: args: a 2D Tensor or a list of 2D, batch x n, Tensors. output_size: int, second dimension of W[i]. bias: boolean, whether to add a bias term or not. bias_initializer: starting value to initialize the bias (default is all zeros). kernel_initializer: starting value to initialize the weight. Returns: A 2D Tensor with shape [batch x output_size] equal to sum_i(args[i] * W[i]), where W[i]s are newly created matrices. Raises: ValueError: if some of the arguments has unspecified or wrong shape. """ if args is None or (nest.is_sequence(args) and not args): raise ValueError("`args` must be specified") if not nest.is_sequence(args): args = [args] # Calculate the total size of arguments on dimension 1. total_arg_size = 0 shapes = [a.get_shape() for a in args] for shape in shapes: if shape.ndims != 2: raise ValueError("linear is expecting 2D arguments: %s" % shapes) if shape[1].value is None: raise ValueError("linear expects shape[1] to be provided for shape %s, " "but saw %s" % (shape, shape[1])) else: total_arg_size += shape[1].value dtype = [a.dtype for a in args][0] # Now the computation. with tf.variable_scope(scope, reuse = reuse) as outer_scope: weights = tf.get_variable( "linear_kernel", [total_arg_size, output_size], dtype=dtype, regularizer=regularizer, initializer=kernel_initializer) if len(args) == 1: res = math_ops.matmul(args[0], weights) else: res = math_ops.matmul(array_ops.concat(args, 1), weights) if not bias: return res with tf.variable_scope(outer_scope) as inner_scope: inner_scope.set_partitioner(None) biases = tf.get_variable( "linear_bias", [output_size], dtype=dtype, regularizer=regularizer, initializer=bias_initializer) return nn_ops.bias_add(res, biases) def total_params(): total_parameters = 0 for variable in tf.trainable_variables(): shape = variable.get_shape() variable_parametes = 1 for dim in shape: variable_parametes *= dim.value total_parameters += variable_parametes print("Total number of trainable parameters: {}".format(total_parameters)) # TODO FIXME rewrite all qanet code using tf.keras... class QANet(keras.Model): def __init__(self, num_blocks=1, num_layers=4, kernel_size=3, num_filters=128, num_heads=8, input_projection=False, bias=False, keep_prob=0.7, **kwargs): super(QANet, self).__init__(**kwargs) self.kernel_size = kernel_size self.num_blocks = num_blocks self.num_filters = num_filters self.num_layers = num_layers self.num_heads = num_heads self.input_projection = input_projection self.bias = bias self.dropout = 1. - keep_prob assert self.num_filters # seq_len for rnn compact def call(self, inputs, seq_len=None, masks=None, output_method='all', training=False): with tf.variable_scope('qanet', reuse=tf.AUTO_REUSE): dropout = self.dropout if training else 0. inputs = highway(inputs, size=self.num_filters, scope="highway", dropout=dropout, reuse=tf.AUTO_REUSE) if self.input_projection: inputs = conv(inputs, self.num_filters, name = "input_projection", reuse=tf.AUTO_REUSE) outputs = inputs sublayer = 1 total_sublayers = (self.num_layers + 2) * self.num_blocks for i in range(self.num_blocks): outputs = add_timing_signal_1d(outputs) outputs, sublayer = conv_block(outputs, self.num_layers, self.kernel_size, self.num_filters, seq_len=seq_len, scope="encoder_block_%d"%i, reuse=tf.AUTO_REUSE, bias=self.bias, dropout=dropout, sublayers = (sublayer, total_sublayers)) mask = tf.sequence_mask(seq_len) outputs, sublayer = self_attention_block(outputs, self.num_filters, seq_len, mask=mask, num_heads=self.num_heads, scope="self_attention_layers%d"%i, reuse=tf.AUTO_REUSE, training=training, bias=self.bias, dropout=dropout, sublayers=(sublayer, total_sublayers)) # compact for rnn with sate return return melt.rnn.encode_outputs(outputs, seq_len, output_method) ================================================ FILE: utils/melt/layers/layers.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file layers.py # \author chenghuige # \date 2016-08-19 23:22:44.032101 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf #since not from melt.layers.layers import * this is safe from tensorflow.contrib.layers.python.layers import utils import tensorflow.contrib.slim as slim import functools import six from tensorflow.contrib.framework.python.ops import add_arg_scope from tensorflow.contrib.framework.python.ops import variables from tensorflow.contrib.layers.python.layers import initializers from tensorflow.contrib.layers.python.layers import utils from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import sparse_tensor from tensorflow.python.layers import convolutional as convolutional_layers from tensorflow.python.layers import core as core_layers from tensorflow.python.layers import normalization as normalization_layers from tensorflow.python.layers import pooling as pooling_layers from tensorflow.python.ops import array_ops from tensorflow.python.ops import check_ops from tensorflow.python.ops import init_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn from tensorflow.python.ops import sparse_ops from tensorflow.python.ops import standard_ops from tensorflow.python.ops import variable_scope from tensorflow.python.ops import variables as tf_variables from tensorflow.python.training import moving_averages import melt logging = melt.logging from melt import dropout, softmax_mask from melt.rnn import OutputMethod, encode_outputs # TODO ------------------------- # just use below really layers! # TODO batch_dim to batch_axis keras = tf.keras layers = tf.keras.layers Layer = layers.Layer class FeedForwardNetwork(keras.Model): def __init__(self, hidden_size, output_size, keep_prob=1.): super(FeedForwardNetwork, self).__init__() self.keep_prob = keep_prob self.linear1 = layers.Dense(hidden_size, activation=tf.nn.relu) self.linear2 = layers.Dense(output_size) def call(self, x, training=False): x_proj = dropout(self.linear1(x), keep_prob=self.keep_prob, training=training) x_proj = self.linear2(x_proj) return x_proj class MaxPooling(Layer): def call(self, outputs, sequence_length=None, axis=1, reduce_func=tf.reduce_max): return melt.max_pooling(outputs, sequence_length, axis, reduce_func) class SumPooling(Layer): def call(self, outputs, sequence_length=None, axis=1, reduce_func=tf.reduce_sum): return melt.sum_pooling(outputs, sequence_length, axis) class MaxPooling2(Layer): def call(self, outputs, sequence_length, sequence_length2, axis=1, reduce_func=tf.reduce_max): return melt.max_pooling2(outputs, sequence_length, sequence_length2, axis, reduce_func) class MeanPooling(Layer): def call(self, outputs, sequence_length=None, axis=1): return melt.mean_pooling(outputs, sequence_length, axis) class FirstPooling(Layer): def call(self, outputs, sequence_length=None, axis=1): return outputs[:, 0, :] class LastPooling(Layer): def call(self, outputs, sequence_length=None, axis=1): return melt.dynamic_last_relevant(outputs, sequence_length) class HierEncode(Layer): def call(self, outputs, sequence_length=None, window_size=3, axis=1): return melt.hier_encode(outputs, sequence_length, window_size=3, axis=1) class TopKPooling(Layer): def __init__(self, top_k, **kwargs): super(TopKPooling, self).__init__(**kwargs) self.top_k = top_k def call(self, outputs, sequence_length=None, axis=1): x = melt.top_k_pooling(outputs, self.top_k, sequence_length, axis).values return tf.reshape(x, [-1, melt.get_shape(outputs, -1) * self.top_k]) class TopKMeanPooling(Layer): def __init__(self, top_k, **kwargs): super(TopKMeanPooling, self).__init__(**kwargs) assert top_k > 1 self.top_k = top_k def call(self, outputs, sequence_length=None, axis=1): x = melt.top_k_pooling(outputs, self.top_k, sequence_length, axis).values x = tf.reduce_mean(x, -1) return x # not good.. class TopKWeightedMeanPooling(Layer): def __init__(self, top_k, ratio=0.7, **kwargs): super(TopKWeightedMeanPooling, self).__init__(**kwargs) assert top_k > 1 self.top_k = top_k self.w = [1.] * self.top_k for i in range(top_k - 1): self.w[i + 1] = self.w[i] self.w[i] *= ratio self.w[i + 1] *= (1 - ratio) self.w = tf.constant(self.w) def call(self, outputs, sequence_length=None, axis=1): x = melt.top_k_pooling(outputs, self.top_k, sequence_length, axis).values x = tf.reduce_sum(x * self.w, -1) return x class TopKAttentionPooling(keras.Model): def __init__(self, top_k, **kwargs): super(TopKAttentionPooling, self).__init__(**kwargs) assert top_k > 1 self.top_k = top_k self.att = AttentionPooling() def call(self, outputs, sequence_length=None, axis=1): x = melt.top_k_pooling(outputs, self.top_k, sequence_length, axis).values x = tf.transpose(x, [0, 2, 1]) x = self.att(x) return x # TODO check which is better tf.nn.tanh or tf.nn.relu, by paper default should be tanh # TODO check your topk,att cases before use relu.. seems tanh worse then relu, almost eqaul but relu a bit better and stable class AttentionPooling(keras.Model): def __init__(self, hidden_size=128, #activation=tf.nn.tanh, activation=tf.nn.relu, **kwargs): super(AttentionPooling, self).__init__(**kwargs) self.activation = activation if hidden_size is not None: self.dense = layers.Dense(hidden_size, activation=activation) else: self.dense = None self.logits = layers.Dense(1) self.step = -1 def call(self, outputs, sequence_length=None, axis=1): self.step += 1 if self.step == 0 and self.dense is None: self.dense = layers.Dense(melt.get_shape(outputs, -1), activation=self.activation) x = self.dense(outputs) logits = self.logits(x) alphas = tf.nn.softmax(logits) if sequence_length is None else melt.masked_softmax(logits, sequence_length) encoding = tf.reduce_sum(outputs * alphas, 1) # [batch_size, sequence_length, 1] -> [batch_size, sequence_length] self.alphas = tf.squeeze(alphas, -1) #self.alphas = alphas tf.add_to_collection('self_attention', self.alphas) return encoding class LinearAttentionPooling(keras.Model): def __init__(self, **kwargs): super(LinearAttentionPooling, self).__init__(**kwargs) self.logits = layers.Dense(1) def call(self, x, sequence_length=None, axis=1): logits = self.logits(x) alphas = tf.nn.softmax(logits) if sequence_length is None else melt.masked_softmax(logits, sequence_length) encoding = tf.reduce_sum(x * alphas, 1) # [batch_size, sequence_length, 1] -> [batch_size, sequence_length] self.alphas = tf.squeeze(alphas, -1) #self.alphas = alphas tf.add_to_collection('self_attention', self.alphas) return encoding class NonLinearAttentionPooling(keras.Model): def __init__(self, hidden_size=128, **kwargs): super(NonLinearAttentionPooling, self).__init__(**kwargs) self.FFN = FeedForwardNetwork(hidden_size, 1) def call(self, x, sequence_length=None, axis=1): logits = self.FFN(x) alphas = tf.nn.softmax(logits) if sequence_length is None else melt.masked_softmax(logits, sequence_length) encoding = tf.reduce_sum(x * alphas, 1) # [batch_size, sequence_length, 1] -> [batch_size, sequence_length] self.alphas = tf.squeeze(alphas, -1) #self.alphas = alphas tf.add_to_collection('self_attention', self.alphas) return encoding class Pooling(keras.Model): def __init__(self, name, top_k=2, #att_activation=tf.nn.tanh, att_activation=tf.nn.relu, att_hidden=128, **kwargs): super(Pooling, self).__init__(**kwargs) self.top_k = top_k self.poolings = [] def get_pooling(name): if name == 'max': return MaxPooling() if name == 'sum': return SumPooling() elif name == 'mean' or name == 'avg': return MeanPooling() elif name == 'attention' or name == 'att': return AttentionPooling(att_hidden, activation=att_activation) elif name == 'attention2' or name == 'att2': return AttentionPooling(hidden_size=None, activation=att_activation) elif name == 'linear_attention' or name == 'linear_att' or name == 'latt': return LinearAttentionPooling() elif name == 'nonlinear_attention' or name == 'nonlinear_att' or name == 'natt': return NonLinearAttentionPooling() elif name == 'topk' or name == 'top_k': return TopKPooling(top_k) elif name == 'topk_mean': return TopKMeanPooling(top_k) elif name == 'topk_weighted_mean': return TopKWeightedMeanPooling(top_k) elif name == 'topk_att': return TopKAttentionPooling(top_k) elif name =='first': return FirstPooling() elif name == 'last': return LastPooling() else: raise ValueError('Unsupport pooling now:%s' % name) self.names = name.split(',') for name in self.names: self.poolings.append(get_pooling(name)) logging.info('poolings:', self.poolings) def call(self, outputs, sequence_length=None, axis=1, calc_word_scores=False): results = [] self.word_scores = [] for i, pooling in enumerate(self.poolings): results.append(pooling(outputs, sequence_length, axis)) if calc_word_scores: self.word_scores.append(melt.get_words_importance(outputs, sequence_length, top_k=self.top_k, method=self.names[i])) return tf.concat(results, -1) class DynamicDense(keras.Model): def __init__(self, ratio, activation=None, use_bias=True, **kwargs): super(DynamicDense, self).__init__(**kwargs) self.ratio = ratio self.activation = activation self.use_bais = use_bias self.step = -1 def call(self, x): self.step += 1 if self.step == 0: self.dense = layers.Dense(melt.get_shape(x, -1) * self.ratio, self.activation, self.use_bais) return self.dense(x) class Embedding(keras.layers.Layer): def __init__(self, height, width, name='init_fw'): super(Embedding, self).__init__() initializer = 'uniform' self.embedding = self.add_variable( "embedding_kernel", shape=[height, width], dtype=tf.float32, initializer=initializer, trainable=True) def call(self, x=None): if x is not None: return tf.nn.embedding_lookup(self.embedding, x) else: return self.embedding class Mlp(Layer): def __init__(self, dims, activation=None, drop_rate=None, drop_indexes=None, **kwargs): super(Mlp, self).__init__(**kwargs) self.denses = [None] * len(dims) self.drops = [None] * len(dims) for i, dim in enumerate(dims): self.denses[i] = layers.Dense(dim, activation=activation) if drop_rate and (not drop_indexes or i in drop_indexes): self.drops[i] = layers.Dropout(drop_rate) def call(self, x, training=False): for i in range(len(self.denses)): x = self.denses[i](x) if self.drops[i] is not None: x = self.drops[i](x, training=training) return x class Dropout(keras.layers.Layer): def __init__(self, rate, noise_shape=None, seed=None, **kwargs): super(Dropout).__init__(self, **kwargs) self.rate = rate self.noise_shape = noise_shape self.seed = seed def call(self, x, training=False): if not training or self.rate <= 0.: return x else: scale = 1. shape = tf.shape(x) if mode == 'embedding': noise_shape = [shape[0], 1] scale = 1 - self.rate elif mode == 'recurrent' and len(x.get_shape().as_list()) == 3: noise_shape = [shape[0], 1, shape[-1]] return tf.nn.dropout(x, 1 - self.rate, noise_shape=noise_shape) * scale class Gate(keras.Model): def __init__(self, keep_prob=1.0, **kwargs): super(Gate, self).__init__(**kwargs) self.keep_prob = keep_prob self.step = -1 def call(self, x, y, training=False): self.step += 1 #with tf.variable_scope(self.scope): res = tf.concat([x, y], axis=2) dim = melt.get_shape(res, -1) d_res = dropout(res, keep_prob=self.keep_prob, training=training) if self.step == 0: self.dense = layers.Dense(dim, use_bias=False, activation=tf.nn.sigmoid) gate = self.dense(d_res) return res * gate class SemanticFusion(keras.Model): def __init__(self, keep_prob=1.0, **kwargs): super(SemanticFusion, self).__init__(**kwargs) self.keep_prob = keep_prob self.step = -1 def call(self, x, fusions, training=False): self.step += 1 assert len(fusions) > 0 vectors = tf.concat([x] + fusions, axis=-1) # size = [batch_size, ..., input_dim * (len(fusion_vectors) + 1)] dim = melt.get_shape(x, -1) dv = dropout(vectors, keep_prob=self.keep_prob, training=training) if self.step == 0: self.composition_dense = layers.Dense(dim, use_bias=True, activation=tf.nn.tanh, name='compostion_dense') self.gate_dense = layers.Dense(dim, use_bias=True, activation=tf.nn.sigmoid, name='gate_dense') r = self.composition_dense(dv) g = self.gate_dense(dv) return g * r + (1 - g) * x class SemanticFusionCombine(keras.Model): def __init__(self, keep_prob=1.0, **kwargs): super(SemanticFusionCombine, self).__init__(**kwargs) self.keep_prob = keep_prob self.sfu = SemanticFusion(keep_prob=keep_prob) self.step = -1 def call(self, x, y, training=False): self.step += 1 if melt.get_shape(x, -1) != melt.get_shape(y, -1): if self.step == 0: self.dense = layers.Dense(melt.get_shape(x, -1), activation=None, name='sfu_dense') y = self.dense(y) return self.sfu(x, [y, x * y, x - y], training=training) # TODO may be need input_keep_prob and output_keep_prob(combiner dropout) # TODO change keep_prob to use dropout # https://github.com/HKUST-KnowComp/R-Net/blob/master/func.py class DotAttention(keras.Model): def __init__(self, hidden, keep_prob=1.0, combiner='gate', **kwargs): super(DotAttention, self).__init__(**kwargs) self.hidden = hidden self.keep_prob = keep_prob self.combiner = combiner self.inputs_dense = layers.Dense(hidden, use_bias=False, activation=tf.nn.relu, name='inputs_dense') self.memory_dense = layers.Dense(hidden, use_bias=False, activation=tf.nn.relu, name='memory_dense') if combiner == 'gate': self.combine = Gate(keep_prob=keep_prob) elif combiner == 'sfu': self.combine = SemanticFusionCombine(keep_prob=keep_prob) elif combiner == None: self.combine = None else: raise ValueError(combiner) def call(self, inputs, memory, mask, self_match=False, training=False): combiner = self.combiner # DotAttention already convert to dot_attention #with tf.variable_scope(self.scope): # TODO... here has some problem might for self match dot attention as same inputs with different dropout...Try self_match == True and verify.. # NOTICE self_match == False following HKUST rnet d_inputs = dropout(inputs, keep_prob=self.keep_prob, training=training) if not self_match: d_memory = dropout(memory, keep_prob=self.keep_prob, training=training) else: d_memory = d_inputs JX = tf.shape(inputs)[1] # TODO remove scope ? with tf.variable_scope("attention"): inputs_ = self.inputs_dense(d_inputs) if not self_match: memory_ = self.memory_dense(d_memory) else: memory_ = inputs_ scores = tf.matmul(inputs_, tf.transpose(memory_, [0, 2, 1])) / (self.hidden ** 0.5) if mask is not None: mask = tf.tile(tf.expand_dims(mask, axis=1), [1, JX, 1]) #print(inputs_.shape, memory_.shape, weights.shape, mask.shape) # (32, 318, 100) (32, 26, 100) (32, 318, 26) (32, 318, 26) scores = softmax_mask(scores, mask) alpha = tf.nn.softmax(scores) self.alpha = alpha # logits (32, 326, 326) memory(32, 326, 200) outputs = tf.matmul(alpha, memory) if self.combine is not None: return self.combine(inputs, outputs, training=training) else: return outputs # https://arxiv.org/pdf/1611.01603.pdf # but worse result then rnet only cq att TODO FIXME bug? class BiDAFAttention(keras.Model): def __init__(self, hidden, keep_prob=1.0, combiner='gate', **kwargs): super(BiDAFAttention, self).__init__(**kwargs) self.hidden = hidden self.keep_prob = keep_prob self.combiner = combiner self.inputs_dense = layers.Dense(hidden, use_bias=False, activation=tf.nn.relu, name='inputs_dense') self.memory_dense = layers.Dense(hidden, use_bias=False, activation=tf.nn.relu, name='memory_dense') if combiner == 'gate': self.combine = Gate(keep_prob=keep_prob) elif combiner == 'sfu': self.combine = SemanticFusionCombine(keep_prob=keep_prob) elif combiner == None: self.combine = None else: raise ValueError(combiner) def call(self, inputs, memory, inputs_mask, memory_mask, training=False): combiner = self.combiner # DotAttention already convert to dot_attention #with tf.variable_scope(self.scope): d_inputs = dropout(inputs, keep_prob=self.keep_prob, training=training) d_memory = dropout(memory, keep_prob=self.keep_prob, training=training) JX = tf.shape(inputs)[1] with tf.variable_scope("attention"): inputs_ = self.inputs_dense(d_inputs) memory_ = self.memory_dense(d_memory) # shared matrix for c2q and q2c attention scores = tf.matmul(inputs_, tf.transpose(memory_, [0, 2, 1])) / (self.hidden ** 0.5) # c2q attention mask = memory_mask if mask is not None: mask = tf.tile(tf.expand_dims(mask, axis=1), [1, JX, 1]) scores = softmax_mask(scores, mask) alpha = tf.nn.softmax(scores) self.alpha = alpha c2q = tf.matmul(alpha, memory) # TODO check this with allennlp implementation since not good result here... # q2c attention # (batch_size, clen) logits = tf.reduce_max(scores, -1) mask = inputs_mask if mask is not None: logits = softmax_mask(logits, mask) alpha2 = tf.nn.softmax(logits) # inputs (batch_size, clen, dim), probs (batch_size, clen) q2c = tf.matmul(tf.expand_dims(alpha2, 1), inputs) # (batch_size, clen, dim) q2c = tf.tile(q2c, [1, JX, 1]) outputs = tf.concat([c2q, q2c], -1) if self.combine is not None: return self.combine(inputs, outputs, training=training) else: return outputs # copy from mreader pytorch code which has good effect on machine reading # https://github.com/HKUST-KnowComp/MnemonicReader class SeqAttnMatch(melt.Model): """Given sequences X and Y, match sequence Y to each element in X. * o_i = sum(alpha_j * y_j) for i in X * alpha_j = softmax(y_j * x_i) """ def __init__(self, keep_prob=1.0, combiner='gate', identity=False): super(SeqAttnMatch, self).__init__() self.keep_prob = keep_prob self.identity = identity if combiner == 'gate': self.combine = Gate(keep_prob=keep_prob) elif combiner == 'sfu': self.combine = SemanticFusionCombine(keep_prob=keep_prob) elif combiner == None: self.combine = None else: raise ValueError(combiner) # mask is y_mask def call(self, x, y, mask, training=False): self.step += 1 x_ = x x = dropout(x, keep_prob=self.keep_prob, training=training) y = dropout(y, keep_prob=self.keep_prob, training=training) if self.step == 0: if not self.identity: self.linear = layers.Dense(melt.get_shape(x, -1), activation=tf.nn.relu) else: self.linear = None # NOTICE shared linear! if self.linear is not None: x = self.linear(x) y = self.linear(y) scores = tf.matmul(x, tf.transpose(y, [0, 2, 1])) if mask is not None: JX = melt.get_shape(x, 1) mask = tf.tile(tf.expand_dims(mask, axis=1), [1, JX, 1]) scores = softmax_mask(scores, mask) alpha = tf.nn.softmax(scores) self.alpha = alpha y = tf.matmul(alpha, y) if self.combine is None: return y else: return self.combine(x_, y, training=training) class SelfAttnMatch(melt.Model): """Given sequences X and Y, match sequence Y to each element in X. * o_i = sum(alpha_j * x_j) for i in X * alpha_j = softmax(x_j * x_i) """ def __init__(self, keep_prob=1.0, combiner='gate', identity=False, diag=True): super(SelfAttnMatch, self).__init__() self.keep_prob = keep_prob self.identity = identity self.diag = diag if combiner == 'gate': self.combine = Gate(keep_prob=keep_prob) elif combiner == 'sfu': self.combine = SemanticFusionCombine(keep_prob=keep_prob) elif combiner == None: self.combine = None else: raise ValueError(combiner) if not identity: self.linear = nn.Linear(input_size, input_size) else: self.linear = None self.diag = diag def call(self, x, mask, training=False): self.step += 1 x_ = x x = dropout(x, keep_prob=self.keep_prob, training=training) if self.step == 0: if not self.identity: self.linear = layers.Dense(melt.get_shape(x, -1), activation=tf.nn.relu) else: self.linear = None # NOTICE shared linear! if self.linear is not None: x = self.linear(x) scores = tf.matmul(x, tf.transpose(x, [0, 2, 1])) # x = tf.constant([[[1,2,3], [4,5,6],[7,8,9]],[[1,2,3],[4,5,6],[7,8,9]]], dtype=tf.float32) # shape=(2, 3, 3) # z = tf.matrix_set_diag(x, tf.zeros([2, 3])) if not self.diag: # TODO better dim dim0 = melt.get_shape(scores, 0) dim1 = melt.get_shape(scores, 1) scores = tf.matrix_set_diag(scores, tf.zeros([dim0, dim1])) if mask is not None: JX = melt.get_shape(x, 1) mask = tf.tile(tf.expand_dims(mask, axis=1), [1, JX, 1]) scores = softmax_mask(scores, mask) alpha = tf.nn.softmax(scores) self.alpha = alpha x = tf.matmul(alpha, x) if self.combine is None: return y else: return self.combine(x_, x, training=training) # https://github.com/openai/finetune-transformer-lm/blob/master/train.py class LayerNorm(keras.layers.Layer): def __init__(self, e=1e-5, axis=[1]): super(BatchNorm, self).__init__() self.step = -1 self.e, self.axis = e, axis def call(self, x, training=False): self.step += 1 if self.step == 0: n_state = melt.get_shape(x, -1) self.g = self.add_variable( "g", shape=[n_state], initializer=tf.constant_initializer(1)) self.b = self.add_variable( "b", shape=[n_state], initializer=tf.constant_initializer(1)) e, axis = self.e, self.axis u = tf.reduce_mean(x, axis=axis, keepdims=True) s = tf.reduce_mean(tf.square(x-u), axis=axis, keepdims=True) x = (x - u) * tf.rsqrt(s + e) x = x * self.g + self.b return x ================================================ FILE: utils/melt/layers/optimizers.py ================================================ # Copyright 2015 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import six from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import clip_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import init_ops from tensorflow.python.summary import summary from tensorflow.python.ops import random_ops from tensorflow.python.ops import variable_scope as vs from tensorflow.python.ops import variables as vars_ from tensorflow.python.platform import tf_logging as logging from tensorflow.python.training import optimizer as optimizer_ from tensorflow.python.training import training as train import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS """ copy from tensorflow.contrib.layers.python.layers.optimerzers.py version 0.10 """ """Optimizer ops for use in layers and tf.learn.""" OPTIMIZER_CLS_NAMES = { "Adagrad": train.AdagradOptimizer, "Adam": train.AdamOptimizer, "Ftrl": train.FtrlOptimizer, "Momentum": train.MomentumOptimizer, "RMSProp": train.RMSPropOptimizer, "SGD": train.GradientDescentOptimizer, } OPTIMIZER_SUMMARIES = ["learning_rate", "loss", "gradients", "gradient_norm",] # from cifar10_multi_gpu_train.py def average_gradients(tower_grads): """Calculate the average gradient for each shared variable across all towers. Note that this function provides a synchronization point across all towers. Args: tower_grads: List of lists of (gradient, variable) tuples. The outer list is over individual gradients. The inner list is over the gradient calculation for each tower. Returns: List of pairs of (gradient, variable) where the gradient has been averaged across all towers. """ average_grads = [] for grad_and_vars in zip(*tower_grads): # Note that each grad_and_vars looks like the following: # ((grad0_gpu0, var0_gpu0), ... , (grad0_gpuN, var0_gpuN)) grads = [] for g, _ in grad_and_vars: # Add 0 dimension to the gradients to represent the tower. expanded_g = tf.expand_dims(g, 0) # Append on a 'tower' dimension which we will average over below. grads.append(expanded_g) # Average over the 'tower' dimension. grad = tf.concat(grads, 0) grad = tf.reduce_mean(grad, 0) # Keep in mind that the Variables are redundant because they are shared # across towers. So .. we will just return the first tower's pointer to # the Variable. v = grad_and_vars[0][1] grad_and_var = (grad, v) average_grads.append(grad_and_var) return average_grads # ## from cifar10_estimator # def average_gradients(tower_gradvars): # import six # import itertools # # Now compute global loss and gradients. # gradvars = [] # with tf.name_scope('gradient_averaging'): # all_grads = {} # for grad, var in itertools.chain(*tower_gradvars): # if grad is not None: # all_grads.setdefault(var, []).append(grad) # for var, grads in six.iteritems(all_grads): # # Average gradients on the same device as the variables # # to which they apply. # with tf.device(var.device): # if len(grads) == 1: # avg_grad = grads[0] # else: # avg_grad = tf.multiply(tf.add_n(grads), 1. / len(grads)) # gradvars.append((avg_grad, var)) # return gradvars def optimize_loss(losses, global_step, learning_rate, optimizer, num_gpus=1, gradient_noise_scale=None, gradient_multipliers=None, clip_gradients=None, learning_rate_decay_fn=None, update_ops=None, variables=None, name=None, summaries=["global_gradient_norm"], colocate_gradients_with_ops=False, increment_global_step=True, use_tpu=False, use_horovod=False): """Given loss and parameters for optimizer, returns a training op. Args: loss: Tensor, 0 dimensional. global_step: Tensor, step counter for each update. learning_rate: float or Tensor, magnitude of update per each training step. optimizer: string, class or optimizer instance, used as trainer. string should be name of optimizer, like 'SGD', 'Adam', 'Adagrad'. Full list in OPTIMIZER_CLS_NAMES constant. class should be sub-class of tf.Optimizer that implements `compute_gradients` and `apply_gradients` functions. optimizer instance should be instantion of tf.Optimizer sub-class and have `compute_gradients` and `apply_gradients` functions. gradient_noise_scale: float or None, adds 0-mean normal noise scaled by this value. gradient_multipliers: dict of variables or variable names to floats. If present, gradients for specified variables will be multiplied by given constant. clip_gradients: float or `None`, clips gradients by this value. moving_average_decay: Deprecated. float or None, takes into account previous loss to make learning smoother due to outliers. learning_rate_decay_fn: function, takes `learning_rate` and `global_step` `Tensor`s, returns `Tensor`. Can be used to implement any learning rate decay functions. For example: tf.train.exponential_decay. update_ops: list of update `Operation`s to execute at each step. If `None`, uses elements of UPDATE_OPS collection. variables: list of variables to optimize or `None` to use all trainable variables. name: The name for this operation is used to scope operations and summaries. summaries: List of internal quantities to visualize on tensorboard. If not set only the loss and the learning rate will be reported. The complete list is in OPTIMIZER_SUMMARIES. Returns: Training op. Raises: ValueError: if optimizer is wrong type. """ with vs.variable_scope(name, "OptimizeLoss", losses + [global_step]): # Update ops take UPDATE_OPS collection if not provided. if update_ops is None: update_ops = set(ops.get_collection(ops.GraphKeys.UPDATE_OPS)) #--from https://github.com/tensorflow/tensorflow/blob/28c3c5dd38e3b397c2cf0acdaa6388dcbf0349f7/tensorflow/contrib/layers/python/layers/optimizers.py # Learning rate variable, with possible decay. lr = None if learning_rate is not None: if (isinstance(learning_rate, ops.Tensor) or isinstance(learning_rate, tf.Variable) and learning_rate.get_shape().ndims == 0): #print('------------------optimize_loss learning rate do nothhing', learning_rate) lr = learning_rate elif isinstance(learning_rate, float): if learning_rate < 0.0: raise ValueError("Invalid learning_rate %s.", learning_rate) lr = vs.get_variable( "learning_rate", [], trainable=False, initializer=init_ops.constant_initializer(learning_rate)) else: raise ValueError("Learning rate should be 0d Tensor or float. " "Got %s of type %s" % (str(learning_rate), str(type(learning_rate)))) if learning_rate is not None and learning_rate_decay_fn is not None: if global_step is None: raise ValueError("global_step is required for learning_rate_decay_fn.") lr = learning_rate_decay_fn(lr, global_step) # Create optimizer, given specified parameters. if isinstance(optimizer, six.string_types): if lr is None: raise ValueError("Learning rate is None, but should be specified if " "optimizer is string (%s)." % optimizer) if optimizer not in OPTIMIZER_CLS_NAMES: raise ValueError( "Optimizer name should be one of [%s], you provided %s." % (", ".join(OPTIMIZER_CLS_NAMES), optimizer)) opt = OPTIMIZER_CLS_NAMES[optimizer](learning_rate=lr) elif (isinstance(optimizer, type) and issubclass(optimizer, optimizer_.Optimizer)): if lr is None: raise ValueError("Learning rate is None, but should be specified if " "optimizer is class (%s)." % optimizer) opt = optimizer(learning_rate=lr) elif isinstance(optimizer, optimizer_.Optimizer): #print('------------------optimize_loss optimizer do nothing', optimizer) opt = optimizer elif callable(optimizer): if learning_rate is not None: opt = optimizer(lr) else: opt = optimizer() if not isinstance(opt, optimizer_.Optimizer): pass # TODO all tf.keras.optimizers #raise ValueError("Unrecognized optimizer: function should return " # "subclass of Optimizer. Got %s." % str(opt)) else: raise ValueError("Unrecognized optimizer: should be string, " "subclass of Optimizer, instance of " "subclass of Optimizer or function with one argument. " "Got %s." % str(optimizer)) if use_tpu: opt = tf.contrib.tpu.CrossShardOptimizer(opt) assert not (use_tpu and use_horovod) if use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd #https://blog.csdn.net/qq_16234613/article/details/96186398 # we enable compression only for fp16 #import horovod.tensorflow as hvd #from horovod.tensorflow.compression import Compression # if use_fp16: # compression = Compression.fp16 # else: # compression = Compression.none # opt = hvd.DistributedOptimizer(opt, sparse_as_dense=True,t7 # compression=compression) opt = hvd.DistributedOptimizer(opt) ## just use opt.minize 0.1 epoch 64 * 8 gpu auc 0.717 if cmment this line using gradiens.. auc 0.7186 #return opt.minimize(losses[0], global_step=global_step if increment_global_step else None) if num_gpus > 1: # Calculate the gradients for each model tower. # TODO check below is all ok, right now single gpu using below code will be slower then tf.contrib.optimize_loss 4.5 batch/s -> 3 batch/s tower_grads = [] for i in range(num_gpus): with tf.device('/gpu:%d' % i): with tf.name_scope('%s_%d' % ('tower', i)) as name_scope: # All trainable variables, if specific variables are not specified. #-- TODO trainable_variables affect speed ? if variables is None: variables = vars_.trainable_variables() # Compute gradients. loss = losses[i] # if update_ops: # loss = control_flow_ops.with_dependencies(list(update_ops), loss) #print('------------',) try: gradients = opt.compute_gradients(loss, variables, colocate_gradients_with_ops=colocate_gradients_with_ops) except Exception: # try: # gradients = opt.compute_gradients(loss) # except Exception: gradients = opt.get_updates(loss, params=variables) #TODO FIXME might have None for example add another predictor to graph #[(None, ), #(None, ), #(, ) #print('-------gradients1', gradients) #--now hack use below, TODO why dual_bow.. in introduced when compute gradient of loss as seem not related my seq2seq loss? gradients = [x for x in gradients if x[0] is not None] # Optionally add gradient noise. if gradient_noise_scale is not None: gradients = _add_scaled_noise_to_gradients(gradients, gradient_noise_scale) # Multiply some gradients. if gradient_multipliers is not None: gradients = _multiply_gradients(gradients, gradient_multipliers) # Optionally clip gradients by global norm. if clip_gradients is not None: gradients = _clip_gradients_by_norm(gradients, clip_gradients) #print('-------gradients', gradients) tower_grads.append(gradients) gradients = average_gradients(tower_grads) if "global_gradient_norm" in summaries or "gradient_norm" in summaries: summary.scalar("global_norm/gradient_norm", clip_ops.global_norm(list(zip(*gradients))[0])) # Add histograms for variables, gradients and gradient norms. for gradient, variable in gradients: if isinstance(gradient, ops.IndexedSlices): grad_values = gradient.values else: grad_values = gradient if grad_values is not None: var_name = variable.name.replace(":", "_") if "gradients" in summaries: summary.histogram("gradients/%s" % var_name, grad_values) if "gradient_norm" in summaries: summary.scalar("gradient_norm/%s" % var_name, clip_ops.global_norm([grad_values])) if clip_gradients is not None and ("global_gradient_norm" in summaries or "gradient_norm" in summaries): summary.scalar("global_norm/clipped_gradient_norm", clip_ops.global_norm(list(zip(*gradients))[0])) else: loss = losses[0] ## similar but will do do clip gradient and other things, if comment auc 0.72739 not comment 0.72634 #return opt.minimize(losses[0], global_step=global_step if increment_global_step else None) # All trainable variables, if specific variables are not specified. if variables is None: variables = vars_.trainable_variables() # Compute gradients. try: gradients = opt.compute_gradients( loss, variables, colocate_gradients_with_ops=colocate_gradients_with_ops) except Exception: # TODO not work for keras gradients = opt.get_updates(loss=loss, params=variables) # Optionally add gradient noise. if gradient_noise_scale is not None: gradients = _add_scaled_noise_to_gradients(gradients, gradient_noise_scale) # Multiply some gradients. if gradient_multipliers is not None: gradients = _multiply_gradients(gradients, gradient_multipliers) if not gradients: raise ValueError( "Empty list of (gradient, var) pairs encountered. This is most " "likely to be caused by an improper value of gradient_multipliers.") if "global_gradient_norm" in summaries or "gradient_norm" in summaries: summary.scalar("global_norm/gradient_norm", clip_ops.global_norm(list(zip(*gradients))[0])) # Optionally clip gradients by global norm. if isinstance(clip_gradients, float): gradients = _clip_gradients_by_norm(gradients, clip_gradients) elif callable(clip_gradients): gradients = clip_gradients(gradients) elif clip_gradients is not None: raise ValueError( "Unknown type %s for clip_gradients" % type(clip_gradients)) # # Add scalar summary for loss. # if "loss" in summaries: # summary.scalar("loss", loss) # Add histograms for variables, gradients and gradient norms. for gradient, variable in gradients: if isinstance(gradient, ops.IndexedSlices): grad_values = gradient.values else: grad_values = gradient if grad_values is not None: var_name = variable.name.replace(":", "_") if "gradients" in summaries: summary.histogram("gradients/%s" % var_name, grad_values) if "gradient_norm" in summaries: summary.scalar("gradient_norm/%s" % var_name, clip_ops.global_norm([grad_values])) if clip_gradients is not None and ("global_gradient_norm" in summaries or "gradient_norm" in summaries): summary.scalar("global_norm/clipped_gradient_norm", clip_ops.global_norm(list(zip(*gradients))[0])) # Create gradient updates. grad_updates = opt.apply_gradients(gradients, global_step=global_step if increment_global_step else None, name="train") # IMPORTANT this is needed for momentum! if update_ops: grad_updates = [grad_updates] #print('--------------------1', grad_updates) grad_updates.extend(update_ops) #print('-------------------2', update_ops) grad_updates = tf.group(*grad_updates) #print('-----------grad updates', grad_updates) # # Make sure total_loss is valid. # final_loss = array_ops.check_numerics(loss, "Loss is inf or nan") # # Ensure the train_tensor computes grad_updates. # train_tensor = control_flow_ops.with_dependencies([grad_updates], final_loss) #return train_tensor return grad_updates def _clip_gradients_by_norm(grads_and_vars, clip_gradients): """Clips gradients by global norm.""" gradients, variables = zip(*grads_and_vars) clipped_gradients, _ = clip_ops.clip_by_global_norm(gradients, clip_gradients) return list(zip(clipped_gradients, variables)) def _add_scaled_noise_to_gradients(grads_and_vars, gradient_noise_scale): """Adds scaled noise from a 0-mean normal distribution to gradients.""" gradients, variables = zip(*grads_and_vars) noisy_gradients = [] for gradient in gradients: if gradient is None: noisy_gradients.append(None) continue if isinstance(gradient, ops.IndexedSlices): gradient_shape = gradient.dense_shape else: gradient_shape = gradient.get_shape() noise = random_ops.truncated_normal(gradient_shape) * gradient_noise_scale noisy_gradients.append(gradient + noise) return list(zip(noisy_gradients, variables)) def _multiply_gradients(grads_and_vars, gradient_multipliers): """Multiply specified gradients.""" multiplied_grads_and_vars = [] for grad, var in grads_and_vars: if (grad is not None and (var in gradient_multipliers or var.name in gradient_multipliers)): key = var if var in gradient_multipliers else var.name multiplier = constant_op.constant(gradient_multipliers[key], dtype=dtypes.float32) if isinstance(grad, ops.IndexedSlices): grad_values = grad.values * multiplier grad = ops.IndexedSlices(grad_values, grad.indices, grad.dense_shape) else: grad *= multiplier multiplied_grads_and_vars.append((grad, var)) return multiplied_grads_and_vars ================================================ FILE: utils/melt/layers/rnn/__init__.py ================================================ from melt.layers.rnn.rnn import * ================================================ FILE: utils/melt/layers/rnn/rnn.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file rnn.py # \author chenghuige # \date 2018-09-20 07:31:06.789341 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') import sys import os keras = tf.keras layers = tf.keras.layers Layer = layers.Layer import melt logging = melt.logging from melt.rnn import encode_outputs, OutputMethod from melt import dropout class InitStates(Layer): def __init__(self, num_layers, num_units, name='init_fw'): super(InitStates, self).__init__() # problem in naming.. might use check point list ? self.init = [None] * num_layers for layer in range(num_layers): self.init[layer] = self.add_variable("%s_%d" % (name, layer), [1, num_units], initializer=tf.zeros_initializer()) self.init = tf.contrib.checkpoint.List(self.init) def call(self, layer, batch_size=None): if batch_size is None: return self.init[layer] else: return tf.tile(self.init[layer], [batch_size, 1]) # TODO for safe both graph and eager, do not use keep prob, just pass Dropout result to call # FIXME so share_dropout only work for graph mode !! and now also eager mode has droput problem... as each batch call use # same dropout mask if share_dropout=True.. class CudnnRnn(keras.Model): def __init__(self, num_layers, num_units, keep_prob=1.0, share_dropout=False, recurrent_dropout=True, bw_dropout=False, train_init_state=True, concat_layers=True, output_method=OutputMethod.all, return_state=False, residual_connect=False, cell='gru', **kwargs): super(CudnnRnn, self).__init__(**kwargs) self.cell = cell self.return_state = return_state if isinstance(cell, str): if cell == 'gru': if tf.test.is_gpu_available(): self.Cell = layers.CuDNNGRU else: self.Cell = layers.GRU elif cell == 'lstm': if tf.test.is_gpu_available(): self.Cell = layers.CuDNNLSTM else: self.Cell = layers.LSTM else: raise ValueError(cell) logging.info('cudnn cell:', self.cell) self.num_layers = num_layers self.keep_prob = keep_prob assert num_units % 4 == 0, 'bad performance for units size not % 4' self.num_units = num_units # for share dropout between like context and question in squad (machine reading task) # rnn = gru(num_layers=FLAGS.num_layers, num_units=d, keep_prob=keep_prob, is_train=self.is_training) # c = rnn(c_emb, sequence_length=c_len) # scope.reuse_variables() # q = rnn(q_emb, sequence_length=q_len) self.share_dropout = share_dropout self.recurrent_dropout = recurrent_dropout # when not using recurrent_dropout if bw_dropout will let backward rnn using different dropout then forward self.bw_dropout = bw_dropout # TODO FIXME hack for model.save try to save self.dropout_mask_fw , even though I think should not... TODO how to NoDependency # ValueError: Unable to save the object ListWrapper([]) (a list wrapper constructed to track checkpointable TensorFlow objects). # A list element was replaced (__setitem__), deleted, or inserted. In order to support restoration on object creation, tracking is exclusively for append-only data structures. # if you don't need this list checkpointed, wrap it in a tf.contrib.checkpoint.NoDependency object; it will be automatically un-wrapped and subsequently ignored. self.dropout_mask_fw = [None] * num_layers self.dropout_mask_bw = [None] * num_layers self.train_init_state = train_init_state self.init_fw = [None] * num_layers self.init_bw = [None] * num_layers self.state = None # no concat for rent will convergence slower and hurt performance self.concat_layers = concat_layers self.output_method = output_method self.residual_connect = residual_connect # hurt performance a lot in rnet if self.residual_connect: self.residual_linear = layers.Dense(self.num_units * 2) self.layer_norm = melt.layers.LayerNorm() def gru(units): # If you have a GPU, we recommend using the CuDNNGRU layer (it provides a # significant speedup). if tf.test.is_gpu_available(): return self.Cell(units, return_sequences=True, return_state=True, recurrent_initializer='glorot_uniform') else: return self.Cell(units, return_sequences=True, return_state=True, recurrent_activation='sigmoid', recurrent_initializer='glorot_uniform') # well seems will only consider to save item or list ont list of tuples so self.grus = [] self.grus.append((gru_w, gru_bw)) will not save.. TODO FIXME self.gru_fws = [] self.gru_bws = [] for layer in range(num_layers): #with tf.variable_scope('fw'): gru_fw = gru(num_units) #with tf.variable_scope('bw'): gru_bw = gru(num_units) self.gru_fws.append(gru_fw) self.gru_bws.append(gru_bw) self.gru_fws = tf.contrib.checkpoint.List(self.gru_fws) self.gru_bws = tf.contrib.checkpoint.List(self.gru_bws) # if self.train_init_state: # for layer in range(num_layers): # # well TODO! add_variable not allowed in keras.Model but using keras.layers.Layer you should not use other layers otherwise not save them # self.init_fw[layer] = self.add_variable("init_fw_%d" % layer, [1, num_units], initializer=tf.zeros_initializer()) # self.init_bw[layer] = self.add_variable("init_bw_%d" % layer, [1, num_units], initializer=tf.zeros_initializer()) if self.train_init_state: # well TODO! add_variable not allowed in keras.Model but using keras.layers.Layer you should not use other layers otherwise not save them # TODO name is not very ok... without scope ... # embedding_kernel (DT_FLOAT) [20,300] # should in r_net # global_step (DT_INT64) [] # init_bw_0 (DT_FLOAT) [1,200] # should in cudnn_rnn # init_bw_0_1 (DT_FLOAT) [1,200] # init_bw_0_2 (DT_FLOAT) [1,200] # init_bw_0_3 (DT_FLOAT) [1,200] # init_bw_1 (DT_FLOAT) [1,200] # init_fw_0 (DT_FLOAT) [1,200] # init_fw_0_1 (DT_FLOAT) [1,200] # init_fw_0_2 (DT_FLOAT) [1,200] # init_fw_0_3 (DT_FLOAT) [1,200] # init_fw_1 (DT_FLOAT) [1,200] # learning_rate_weight (DT_FLOAT) [] # r_net/cudnn_rnn_2/cu_dnngru_6/bias (DT_FLOAT) [1200] # r_net/cudnn_rnn_2/cu_dnngru_6/kernel (DT_FLOAT) [1100,600] # r_net/cudnn_rnn_2/cu_dnngru_6/recurrent_kernel (DT_FLOAT) [200,600] # r_net/cudnn_rnn_2/cu_dnngru_7/bias (DT_FLOAT) [1200] # r_net/cudnn_rnn_2/cu_dnngru_7/kernel (DT_FLOAT) [1100,600] # r_net/cudnn_rnn_2/cu_dnngru_7/recurrent_kernel (DT_FLOAT) [200,600] # r_net/cudnn_rnn_3/cu_dnngru_8/bias (DT_FLOAT) [1200] self.init_fw_layer = InitStates(num_layers, num_units, 'init_fw') self.init_bw_layer = InitStates(num_layers, num_units, 'init_bw') if self.cell == 'lstm': self.init_fw2_layer = InitStates(num_layers, num_units, 'init_fw2') self.init_bw2_layer = InitStates(num_layers, num_units, 'init_bw2') def set_dropout_mask(self, mask_fw, mask_bw): self.dropout_mask_fw = mask_fw self.dropout_mask_bw = mask_bw def set_init_states(self, init_fw, init_bw): self.init_fw = init_fw self.init_bw = init_bw def reset_init_states(self): self.init_fw = [None] * self.num_layers self.init_bw = [None] * self.num_layers # @property # def trainable_weights(self): # if self.trainable and self.built: # return [[self.init_fw[layer], self.init_bw[layer], self.grus[0][layer], self.grus[1][layer] for layer in range(num_layers)] # return [] def call(self, x, sequence_length=None, mask_fws = None, mask_bws = None, concat_layers=None, output_method=None, training=False): concat_layers = concat_layers or self.concat_layers output_mehtod = output_method or self.output_method if self.residual_connect: x = self.residual_linear(x) outputs = [x] #states = [] keep_prob = self.keep_prob num_units = self.num_units batch_size = melt.get_batch_size(x) if sequence_length is None: len_ = melt.get_shape(x, 1) sequence_length = tf.ones([batch_size,], dtype=tf.int64) * len_ for layer in range(self.num_layers): input_size_ = melt.get_shape(x, -1) if layer == 0 else 2 * num_units gru_fw, gru_bw = self.gru_fws[layer], self.gru_bws[layer] if self.train_init_state: #init_fw = tf.tile(self.init_fw[layer], [batch_size, 1]) #init_fw = tf.tile(self.init_fw_layer(layer), [batch_size, 1]) init_fw = self.init_fw_layer(layer, batch_size) if self.cell == 'lstm': init_fw = (init_fw, self.init_fw2_layer(layer, batch_size)) else: init_fw = None if self.recurrent_dropout: if mask_fws is not None: mask_fw = mask_fws[layer] else: if not self.share_dropout: mask_fw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, training=training, mode=None) else: if self.dropout_mask_fw[layer] is None or (tf.executing_eagerly() and batch_size != self.dropout_mask_fw[layer].shape[0]): mask_fw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, training=training, mode=None) self.dropout_mask_fw[layer] = mask_fw else: mask_fw = self.dropout_mask_fw[layer] inputs_fw = outputs[-1] * mask_fw else: inputs_fw = dropout(outputs[-1], keep_prob=keep_prob, training=training, mode=None) # https://stackoverflow.com/questions/48233400/lstm-initial-state-from-dense-layer # gru and lstm different ... state lstm need tuple (,) states as input state\ if self.cell == 'gru': out_fw, state_fw = gru_fw(inputs_fw, init_fw) else: out_fw, state_fw1, state_fw2 = gru_fw(inputs_fw, init_fw) state_fw = (state_fw1, state_fw2) if self.train_init_state: #init_bw = tf.tile(self.init_bw[layer], [batch_size, 1]) #init_bw = tf.tile(self.init_bw_layer(layer), [batch_size, 1]) init_bw = self.init_bw_layer(layer, batch_size) if self.cell == 'lstm': init_bw = (init_bw, self.init_bw2_layer(layer, batch_size)) else: init_bw = None if mask_bws is not None: mask_bw = mask_bws[layer] else: if not self.share_dropout: mask_bw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, training=training, mode=None) else: if self.dropout_mask_bw[layer] is None or (tf.executing_eagerly() and batch_size != self.dropout_mask_bw[layer].shape[0]): mask_bw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, training=training, mode=None) self.dropout_mask_bw[layer] = mask_bw else: mask_bw = self.dropout_mask_bw[layer] if self.recurrent_dropout: inputs_bw = outputs[-1] * mask_bw else: if self.bw_dropout: inputs_bw = dropout(outputs[-1], keep_prob=keep_prob, training=training, mode=None) else: inputs_bw = inputs_fw inputs_bw = tf.reverse_sequence( inputs_bw, seq_lengths=sequence_length, seq_axis=1, batch_axis=0) if self.cell == 'gru': out_bw, state_bw = gru_bw(inputs_bw, init_bw) else: out_bw, state_bw1, state_bw2 = gru_bw(inputs_bw, init_bw) state_bw = (state_bw1, state_bw2) out_bw = tf.reverse_sequence( out_bw, seq_lengths=sequence_length, seq_axis=1, batch_axis=0) outputs.append(tf.concat([out_fw, out_bw], axis=2)) if self.residual_connect: outputs[-1] = self.batch_norm(outputs[-2] + outputs[-1]) if concat_layers: res = tf.concat(outputs[1:], axis=2) else: res = outputs[-1] res = encode_outputs(res, output_method=output_method, sequence_length=sequence_length) self.state = (state_fw, state_bw) if not self.return_state: return res else: return res, self.state # depreciated.. class CudnnRnn2(CudnnRnn): def __init__(self, **kwargs): super(CudnnRnn2, self).__init__(**kwargs) def call(self, inputs, sequence_length, inputs2, sequence_length2, mask_fws, mask_bws, concat_layers=True, output_method=OutputMethod.all, training=False): outputs = [inputs] outputs2 = [inputs2] keep_prob = self.keep_prob num_units = self.num_units batch_size = melt.get_batch_size(inputs) for layer in range(self.num_layers): input_size_ = melt.get_shape(inputs, -1) if layer == 0 else 2 * num_units gru_fw, gru_bw = self.gru_fws[layer], self.gru_bws[layer] if self.train_init_state: init_fw = self.init_fw_layer(layer, batch_size) else: init_fw = None mask_fw = mask_fws[layer] out_fw, state_fw = gru_fw(outputs[-1] * mask_fw, init_fw) out_fw2, state_fw2 = gru_fw(outputs2[-1] * mask_fw, state_fw) mask_bw = mask_bws[layer] inputs_bw = tf.reverse_sequence( outputs[-1] * mask_bw, sequence_lengthgths=sequence_length, seq_axis=1, batch_axis=0) inputs_bw2 = tf.reverse_sequence( outputs2[-1] * mask_bw, sequence_lengthgths=sequence_length2, seq_axis=1, batch_axis=0) if self.train_init_state: init_bw = self.init_bw_layer(layer, batch_size) else: init_bw = None out_bw, state_bw = gru_bw(inputs_bw, init_bw) out_bw2, state_bw2 = gru_bw(inputs_bw2, state_bw) outputs.append(tf.concat([out_fw, out_bw], axis=2)) outputs2.append(tf.concat([out_fw2, out_bw2], axis=2)) if concat_layers: res = tf.concat(outputs[1:], axis=2) res2 = tf.concat(outputs2[1:], axis=2) else: res = outputs[-1] res2 = outpus2[-1] res = tf.concat([res, res2], axis=1) res = encode_outputs(res, output_method=output_method, sequence_length=sequence_length) self.state = (state_fw2, state_bw2) return res ================================================ FILE: utils/melt/layers/transformer/__init__.py ================================================ ================================================ FILE: utils/melt/losses/__init__.py ================================================ from melt.losses.losses import * ================================================ FILE: utils/melt/losses/losses.py ================================================ #!/usr/bin/env python # ============================================================================== # \file losses.py # \author chenghuige # \date 2017-08-07 13:11:10.672206 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division #from __future__ import print_function import sys, os import tensorflow as tf import melt def reduce_loss(loss_matrix, combiner='mean'): if combiner == 'mean': return tf.reduce_mean(loss_matrix) elif combiner == 'sum': return tf.reduce_sum(loss_matrix) elif combiner == 'max': return tf.reduce_mean(tf.reduce_max(loss_matrix, 1)) #https://stackoverflow.com/questions/37479119/doing-pairwise-distance-computation-with-tensorflow #https://hackernoon.com/one-shot-learning-with-siamese-networks-in-pytorch-8ddaab10340e #https://hackernoon.com/facial-similarity-with-siamese-networks-in-pytorch-9642aa9db2f7 #http://yann.lecun.com/exdb/publis/pdf/hadsell-chopra-lecun-06.pdf #there are different versions, one is not to use sqrt.. just square #input score not l2 distance withou sqrt def contrastive(pos_score, neg_scores, margin=1.0, use_square=True, combiner='mean', name=None,): #relu same like hinge.. tf.max.. #neg_scores = tf.nn.relu(margin - neg_scores) neg_scores = tf.nn.relu(margin - tf.sqrt(neg_scores)) if use_square: neg_scores = tf.square(neg_scores) else: pos_score = tf.sqrt(pos_score) scores = tf.concat([pos_score, neg_scores], 1) loss = reduce_loss(scores, combiner) * 0.5 return loss def triplet(pos_score, neg_scores, margin=1.0, combiner='mean', name=None,): #margin small then loss turn to zero quick, margin big better diff hard images but hard to converge #if pos_score(dist) is smaller then neg_score more then margin then loss is zero scores = tf.nn.relu(margin - (neg_scores - pos_score)) return reduce_loss(scores, combiner) #this is cross entorpy for cosine same... scores must be -1 <-> 1 TODO def cross_entropy(scores, combiner='mean', name=None): with tf.name_scope(name, 'cross_entropy_loss', [scores]): batch_size = scores.get_shape()[0] num_negs = scores.get_shape()[1] - 1 targets = tf.concat([tf.ones([batch_size, 1], tf.float32), tf.zeros([batch_size, num_negs], tf.float32)], 1) #http://www.wildml.com/2016/07/deep-learning-for-chatbots-2-retrieval-based-model-tensorflow/ #I think for binary is same for sigmoid or softmax #logits = tf.sigmoid(scores) #logits = (1. + scores) / 2. logits = scores loss_matrix = tf.nn.sigmoid_cross_entropy_with_logits(logits=logits, labels=targets) #loss_matrix = tf.nn.softmax_cross_entropy_with_logits(logits=logits, labels=targets) loss = reduce_loss(loss_matrix, combiner) return loss #---------below pairwise def hinge(pos_score, neg_score, margin=0.1, combiner='mean', name=None): with tf.name_scope(name, 'hinge_loss', [pos_score, neg_score]): ##so if set 0.5 margin , will begin loss from 0.5 since pos and neg sore most the same at begin #loss_matrix = tf.maximum(0., margin - (pos_score - neg_score)) loss_matrix = tf.nn.relu(margin - (pos_score - neg_score)) loss = reduce_loss(loss_matrix, combiner) return loss def pairwise_cross(pos_score, neg_score, combiner='mean', name=None): with tf.name_scope(name, 'hinge_cross_loss', [pos_score, neg_score]): score = pos_score - neg_score #logits = tf.sigmoid(score) logits = score targets = tf.ones_like(neg_score, tf.float32) loss_matrix = tf.nn.sigmoid_cross_entropy_with_logits(logits=logits, labels=targets) loss = reduce_loss(loss_matrix, combiner) return loss def pairwise_exp(pos_score, neg_score, theta=1., combiner='mean', name=None): with tf.name_scope(name, 'hinge_exp_loss', [pos_score, neg_score]): score = pos_score - neg_score loss = tf.log(1 + tf.reduce_sum(tf.exp(-theta * score))) #loss = tf.log(1. + tf.exp(-theta * score)) #loss = reduce_loss(loss, combiner) return loss # https://github.com/tflearn/tflearn/blob/184d753f8fe6ab82a5033f6cbef8edc91b40ca8c/tflearn/objectives.py def roc_auc_score(y_pred, y_true): """ ROC AUC Score. Approximates the Area Under Curve score, using approximation based on the Wilcoxon-Mann-Whitney U statistic. Yan, L., Dodier, R., Mozer, M. C., & Wolniewicz, R. (2003). Optimizing Classifier Performance via an Approximation to the Wilcoxon-Mann-Whitney Statistic. Measures overall performance for a full range of threshold levels. Arguments: y_pred: `Tensor`. Predicted values. y_true: `Tensor` . Targets (labels), a probability distribution. """ with tf.name_scope("RocAucScore"): pos = tf.boolean_mask(y_pred, tf.cast(y_true, tf.bool)) neg = tf.boolean_mask(y_pred, ~tf.cast(y_true, tf.bool)) pos = tf.expand_dims(pos, 0) neg = tf.expand_dims(neg, 1) # original paper suggests performance is robust to exact parameter choice gamma = 0.2 p = 3 difference = tf.zeros_like(pos * neg) + pos - neg - gamma masked = tf.boolean_mask(difference, difference < 0.0) return tf.reduce_sum(tf.pow(-masked, p)) #return tf.pow(-masked, p) #https://github.com/thinline72/toxic/blob/master/skolbachev/toxic/losses.py def getClassWeights(Y, mu=0.5): return np.array([w for w in np.log(mu*Y.shape[0]/Y.sum(axis=0))]) # from keras import backend as K # def focal_loss(y_true, y_pred, alpha, gamma=0.5): # alpha = K.variable(alpha) # pt = K.abs(1. - y_true - y_pred) # pt = K.clip(pt, K.epsilon(), 1. - K.epsilon()) # return K.mean(-alpha * K.pow(1. - pt, gamma) * K.log(pt), axis=-1) def u_statistic_loss(y_true, y_pred, gamma=0.2, p=3.0): """ U statistic loss Approximates the Area Under Curve score, using approximation based on the Wilcoxon-Mann-Whitney U statistic. Yan, L., Dodier, R., Mozer, M. C., & Wolniewicz, R. (2003). Optimizing Classifier Performance via an Approximation to the Wilcoxon-Mann-Whitney Statistic. Measures overall performance for a full range of threshold levels. Arguments: y_pred: `Tensor`. Predicted values. y_true: `Tensor` . Targets (labels), a probability distribution. """ with tf.name_scope("u_statistic_loss"): pos = tf.boolean_mask(y_pred, tf.cast(y_true, tf.bool)) neg = tf.boolean_mask(y_pred, ~tf.cast(y_true, tf.bool)) pos = tf.expand_dims(pos, 0) neg = tf.expand_dims(neg, 1) difference = tf.zeros_like(pos * neg) + pos - neg - gamma masked = tf.boolean_mask(difference, difference < 0.0) return tf.reduce_sum(tf.pow(-masked, p)) def SoftAUC_loss(y_true, y_pred): y_true = tf.cast(y_true, tf.int32) parts = tf.dynamic_partition(y_pred, y_true, 2) y_pos = parts[1] y_neg = parts[0] y_pos = tf.expand_dims(y_pos, 0) y_neg = tf.expand_dims(y_neg, -1) return tf.reduce_mean(tf.nn.sigmoid(y_neg - y_pos)) def SVMrank_loss(y_true, y_pred): margin = 1.0 y_true = tf.cast(y_true, tf.int32) parts = tf.dynamic_partition(y_pred, y_true, 2) y_pos = parts[1] y_neg = parts[0] y_pos = tf.expand_dims(y_pos, 0) y_neg = tf.expand_dims(y_neg, -1) return tf.reduce_mean(tf.nn.relu(margin - y_neg - y_pos)) ###########experimental losses############## def exp_loss(y_true, y_pred): loss = u_statistic_loss(y_true,y_pred) + SoftAUC_loss(y_true, y_pred) return loss def art_loss(y_true, y_pred): loss = u_statistic_loss(y_true,y_pred) + SVMrank_loss(y_true, y_pred) return loss def roc_auc_scores(y_pred, y_true): num_classes = melt.get_shape(y_pred, -1) y_preds = tf.split(y_pred, num_classes, axis=1) y_trues = tf.split(y_true, num_classes, axis=1) losses = [] for y_pred, y_true in zip(y_preds, y_trues): losses.append(roc_auc_score(y_pred, y_true)) #losses.append(art_loss(y_pred, y_true)) return tf.stack(losses) # https://github.com/ailias/Focal-Loss-implement-on-Tensorflow/blob/master/focal_loss.py from tensorflow.python.ops import array_ops def focal_loss(target_tensor, prediction_tensor, weights=None, alpha=0.25, gamma=2): r"""Compute focal loss for predictions. Multi-labels Focal loss formula: FL = -alpha * (z-p)^gamma * log(p) -(1-alpha) * p^gamma * log(1-p) ,which alpha = 0.25, gamma = 2, p = sigmoid(x), z = target_tensor. Args: prediction_tensor: A float tensor of shape [batch_size, num_anchors, num_classes] representing the predicted logits for each class target_tensor: A float tensor of shape [batch_size, num_anchors, num_classes] representing one-hot encoded classification targets weights: A float tensor of shape [batch_size, num_anchors] alpha: A scalar tensor for focal loss alpha hyper-parameter gamma: A scalar tensor for focal loss gamma hyper-parameter Returns: loss: A (scalar) tensor representing the value of the loss function """ sigmoid_p = tf.nn.sigmoid(prediction_tensor) zeros = array_ops.zeros_like(sigmoid_p, dtype=sigmoid_p.dtype) #target_tensor = tf.to_float(target_tensor) target_tensor = tf.one_hot(target_tensor, melt.get_shape(prediction_tensor, -1)) # For poitive prediction, only need consider front part loss, back part is 0; # target_tensor > zeros <=> z=1, so poitive coefficient = z - p. pos_p_sub = array_ops.where(target_tensor > zeros, target_tensor - sigmoid_p, zeros) # For negative prediction, only need consider back part loss, front part is 0; # target_tensor > zeros <=> z=1, so negative coefficient = 0. neg_p_sub = array_ops.where(target_tensor > zeros, zeros, sigmoid_p) per_entry_cross_ent = - alpha * (pos_p_sub ** gamma) * tf.log(tf.clip_by_value(sigmoid_p, 1e-8, 1.0)) \ - (1 - alpha) * (neg_p_sub ** gamma) * tf.log(tf.clip_by_value(1.0 - sigmoid_p, 1e-8, 1.0)) #return tf.reduce_sum(per_entry_cross_ent) return tf.reduce_mean(per_entry_cross_ent) def earth_mover_loss(y_true, y_pred): cdf_ytrue = tf.cumsum(y_true, axis=-1) cdf_ypred = tf.cumsum(y_pred, axis=-1) samplewise_emd = tf.sqrt(tf.reduce_mean(tf.square(tf.abs(cdf_ytrue - cdf_ypred)), axis=-1)) #return samplewise_emd return tf.reduce_mean(samplewise_emd) def bilm_loss(model, x, y, training=False): zero_col = tf.expand_dims(tf.zeros_like(y[:,0]), 1) fw_y = tf.concat([y[:, 1:], zero_col], 1) bw_y = tf.concat([zero_col, y[:, 0:-1]], 1) fw_mask = fw_y > 0 bw_mask = bw_y > 0 ## Well intersting if you just use model.encode() then you will get text_encoder/ as namespace ## if you use model() then you will get like rnet/text_encoder or bi_language_model ## TODO FIXME so by default should use model.encode() that but now I want to use rent pretrain only just set this.. # so how to better handle tf pretrain and finetune, bert code need to learn later! maybe that's best way though still a bit complex #y_ = model.encode(x, training=training) y_ = model(x, training=training) fw_y_, bw_y_ = tf.split(y_, 2, axis=-1) fw_y_ = model.encode.hidden2tag(fw_y_) bw_y_ = model.encode.hidden2tag(bw_y_) fw_weight = tf.to_float(fw_mask) bw_weight = tf.to_float(bw_mask) fw_loss = melt.seq2seq.sequence_loss_by_example(fw_y_, fw_y, fw_weight) bw_loss = melt.seq2seq.sequence_loss_by_example(bw_y_, bw_y, bw_weight) fw_loss = tf.reduce_mean(fw_loss) bw_loss = tf.reduce_mean(bw_loss) # TODO FIXME melt should check return loss is scalar loss = (fw_loss + bw_loss) / 2. return loss ================================================ FILE: utils/melt/metrics/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-09-26 20:28:47.577482 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from melt.metrics.rank_metrics import * ================================================ FILE: utils/melt/metrics/rank_metrics.py ================================================ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf #--------metrics @TODO use contrib ones def precision_at_k(py_x, y, k=1, name=None): with tf.name_scope(name, 'precision_at_%d'%k, [py_x, y]): correct_prediction = tf.nn.in_top_k(py_x, y, k) accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32)) return accuracy ================================================ FILE: utils/melt/models/__init__.py ================================================ #!/usr/bin/env python # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-08-16 17:12:35.563389 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import melt.models.mlp ================================================ FILE: utils/melt/models/mlp.py ================================================ #!/usr/bin/env python # ============================================================================== # \file mlp.py # \author chenghuige # \date 2016-08-16 17:13:04.699501 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import tensorflow.contrib.slim as slim #from D:\other\tensorflow\tensorflow\tensorflow\contrib\layers\python\layers\layers.py from tensorflow.python.framework import tensor_shape from tensorflow.contrib.framework.python.ops import add_arg_scope from tensorflow.contrib.framework.python.ops import variables from tensorflow.contrib.layers.python.layers import initializers from tensorflow.contrib.layers.python.layers import utils from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import sparse_tensor from tensorflow.python.layers import convolutional as convolutional_layers from tensorflow.python.layers import core as core_layers from tensorflow.python.layers import normalization as normalization_layers from tensorflow.python.layers import pooling as pooling_layers from tensorflow.python.ops import array_ops from tensorflow.python.ops import check_ops from tensorflow.python.ops import init_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn from tensorflow.python.ops import sparse_ops from tensorflow.python.ops import standard_ops from tensorflow.python.ops import variable_scope from tensorflow.python.ops import variables as tf_variables from tensorflow.python.training import moving_averages import melt def forward(inputs, num_outputs, input_dim=None, hiddens=[200], activation_fn=tf.nn.relu, weights_initializer=initializers.xavier_initializer(), weights_regularizer=None, biases_initializer=init_ops.zeros_initializer(), biases_regularizer=None, reuse=None, scope=None ): """ similary as melt.slim.layers.mlp but the first step(from input to first hidden adjusted so input can be sparse) """ scope = 'mlp' if scope is None else scope with tf.variable_scope(scope): if len(hiddens) == 0: #logistic regression return melt.linear(inputs, num_outputs, input_dim=input_dim, weights_initializer=weights_initializer, weights_regularizer=weights_regularizer, biases_initializer=biases_initializer, biases_regularizer=biases_regularizer, scope='linear') outputs = melt.layers.fully_connected(inputs, hiddens[0], input_dim=input_dim, activation_fn=activation_fn, weights_initializer=weights_initializer, weights_regularizer=weights_regularizer, biases_initializer=biases_initializer, biases_regularizer=biases_regularizer, reuse=reuse, scope='fc_0') #--------other hidden layers # for i in xrange(len(hiddens) -1): # outputs = slim.fully_connected(outputs, hiddens[i + 1], # activation_fn=activation_fn, # weights_initializer=weights_initializer, # weights_regularizer=weights_regularizer, # biases_initializer=biases_initializer, # biases_regularizer=biases_regularizer, # scope='fc_%d'%i+1) slim.stack(outputs, slim.fully_connected, hiddens[1:], activation_fn=activation_fn, weights_initializer=weights_initializer, weights_regularizer=weights_regularizer, biases_initializer=biases_initializer, biases_regularizer=biases_regularizer, scope='fc') return slim.linear(outputs, num_outputs, weights_initializer=weights_initializer, weights_regularizer=weights_regularizer, biases_initializer=biases_initializer, biases_regularizer=biases_regularizer, scope='linear') ================================================ FILE: utils/melt/ops/__init__.py ================================================ import tensorflow as tf from melt.ops.ops import * from melt.ops.sparse_ops import * #import melt.ops.seq2seq from melt.ops import nn_impl as nn ================================================ FILE: utils/melt/ops/nn_impl.py ================================================ from __future__ import absolute_import from __future__ import division from __future__ import print_function import math from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import candidate_sampling_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import gen_nn_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import sparse_ops from tensorflow.python.ops import variables def _sum_rows(x): """Returns a vector summing up each row of the matrix x.""" # _sum_rows(x) is equivalent to math_ops.reduce_sum(x, 1) when x is # a matrix. The gradient of _sum_rows(x) is more efficient than # reduce_sum(x, 1)'s gradient in today's implementation. Therefore, # we use _sum_rows(x) in the nce_loss() computation since the loss # is mostly used for training. cols = array_ops.shape(x)[1] ones_shape = array_ops.stack([cols, 1]) ones = array_ops.ones(ones_shape, x.dtype) return array_ops.reshape(math_ops.matmul(x, ones), [-1]) def compute_sampled_ids_and_logits(weights, biases, labels, inputs, num_sampled, num_classes, num_true=1, sampled_values=None, subtract_log_q=True, remove_accidental_hits=False, partition_strategy="mod", name=None): """Helper function for nce_loss and sampled_softmax_loss functions. Computes sampled output training logits and labels suitable for implementing e.g. noise-contrastive estimation (see nce_loss) or sampled softmax (see sampled_softmax_loss). Note: In the case where num_true > 1, we assign to each target class the target probability 1 / num_true so that the target probabilities sum to 1 per-example. Args: weights: A `Tensor` of shape `[num_classes, dim]`, or a list of `Tensor` objects whose concatenation along dimension 0 has shape `[num_classes, dim]`. The (possibly-partitioned) class embeddings. biases: A `Tensor` of shape `[num_classes]`. The (possibly-partitioned) class biases. labels: A `Tensor` of type `int64` and shape `[batch_size, num_true]`. The target classes. Note that this format differs from the `labels` argument of `nn.softmax_cross_entropy_with_logits`. inputs: A `Tensor` of shape `[batch_size, dim]`. The forward activations of the input network. num_sampled: An `int`. The number of classes to randomly sample per batch. num_classes: An `int`. The number of possible classes. num_true: An `int`. The number of target classes per training example. sampled_values: a tuple of (`sampled_candidates`, `true_expected_count`, `sampled_expected_count`) returned by a `*_candidate_sampler` function. (if None, we default to `log_uniform_candidate_sampler`) subtract_log_q: A `bool`. whether to subtract the log expected count of the labels in the sample to get the logits of the true labels. Default is True. Turn off for Negative Sampling. remove_accidental_hits: A `bool`. whether to remove "accidental hits" where a sampled class equals one of the target classes. Default is False. partition_strategy: A string specifying the partitioning strategy, relevant if `len(weights) > 1`. Currently `"div"` and `"mod"` are supported. Default is `"mod"`. See `tf.nn.embedding_lookup` for more details. name: A name for the operation (optional). Returns: out_logits, out_labels: `Tensor` objects each with shape `[batch_size, num_true + num_sampled]`, for passing to either `nn.sigmoid_cross_entropy_with_logits` (NCE) or `nn.softmax_cross_entropy_with_logits` (sampled softmax). """ if isinstance(weights, variables.PartitionedVariable): weights = list(weights) if not isinstance(weights, list): weights = [weights] with ops.name_scope(name, "compute_sampled_logits", weights + [biases, inputs, labels]): if labels.dtype != dtypes.int64: labels = math_ops.cast(labels, dtypes.int64) labels_flat = array_ops.reshape(labels, [-1]) # Sample the negative labels. # sampled shape: [num_sampled] tensor # true_expected_count shape = [batch_size, 1] tensor # sampled_expected_count shape = [num_sampled] tensor if sampled_values is None: sampled_values = candidate_sampling_ops.log_uniform_candidate_sampler( true_classes=labels, num_true=num_true, num_sampled=num_sampled, unique=True, range_max=num_classes) # NOTE: pylint cannot tell that 'sampled_values' is a sequence # pylint: disable=unpacking-non-sequence sampled, true_expected_count, sampled_expected_count = ( array_ops.stop_gradient(s) for s in sampled_values) # pylint: enable=unpacking-non-sequence sampled = math_ops.cast(sampled, dtypes.int64) # labels_flat is a [batch_size * num_true] tensor # sampled is a [num_sampled] int tensor all_ids = array_ops.concat([labels_flat, sampled], 0) # weights shape is [num_classes, dim] all_w = embedding_ops.embedding_lookup( weights, all_ids, partition_strategy=partition_strategy) all_b = embedding_ops.embedding_lookup( biases, all_ids, partition_strategy=partition_strategy) # true_w shape is [batch_size * num_true, dim] # true_b is a [batch_size * num_true] tensor true_w = array_ops.slice( all_w, [0, 0], array_ops.stack([array_ops.shape(labels_flat)[0], -1])) true_b = array_ops.slice(all_b, [0], array_ops.shape(labels_flat)) # inputs shape is [batch_size, dim] # true_w shape is [batch_size * num_true, dim] # row_wise_dots is [batch_size, num_true, dim] dim = array_ops.shape(true_w)[1:2] new_true_w_shape = array_ops.concat([[-1, num_true], dim], 0) row_wise_dots = math_ops.multiply( array_ops.expand_dims(inputs, 1), array_ops.reshape(true_w, new_true_w_shape)) # We want the row-wise dot plus biases which yields a # [batch_size, num_true] tensor of true_logits. dots_as_matrix = array_ops.reshape(row_wise_dots, array_ops.concat([[-1], dim], 0)) true_logits = array_ops.reshape(_sum_rows(dots_as_matrix), [-1, num_true]) true_b = array_ops.reshape(true_b, [-1, num_true]) true_logits += true_b # Lookup weights and biases for sampled labels. # sampled_w shape is [num_sampled, dim] # sampled_b is a [num_sampled] float tensor sampled_w = array_ops.slice( all_w, array_ops.stack([array_ops.shape(labels_flat)[0], 0]), [-1, -1]) sampled_b = array_ops.slice(all_b, array_ops.shape(labels_flat), [-1]) # inputs has shape [batch_size, dim] # sampled_w has shape [num_sampled, dim] # sampled_b has shape [num_sampled] # Apply X*W'+B, which yields [batch_size, num_sampled] sampled_logits = math_ops.matmul( inputs, sampled_w, transpose_b=True) + sampled_b if remove_accidental_hits: acc_hits = candidate_sampling_ops.compute_accidental_hits( labels, sampled, num_true=num_true) acc_indices, acc_ids, acc_weights = acc_hits # This is how SparseToDense expects the indices. acc_indices_2d = array_ops.reshape(acc_indices, [-1, 1]) acc_ids_2d_int32 = array_ops.reshape( math_ops.cast(acc_ids, dtypes.int32), [-1, 1]) sparse_indices = array_ops.concat([acc_indices_2d, acc_ids_2d_int32], 1, "sparse_indices") # Create sampled_logits_shape = [batch_size, num_sampled] sampled_logits_shape = array_ops.concat( [array_ops.shape(labels)[:1], array_ops.expand_dims(num_sampled, 0)], 0) if sampled_logits.dtype != acc_weights.dtype: acc_weights = math_ops.cast(acc_weights, sampled_logits.dtype) sampled_logits += sparse_ops.sparse_to_dense( sparse_indices, sampled_logits_shape, acc_weights, default_value=0.0, validate_indices=False) if subtract_log_q: # Subtract log of Q(l), prior probability that l appears in sampled. true_logits -= math_ops.log(true_expected_count) sampled_logits -= math_ops.log(sampled_expected_count) out_ids = array_ops.concat([labels, array_ops.tile( array_ops.expand_dims(sampled, 0), [array_ops.shape(labels)[0], 1])], 1) # Construct output logits and labels. The true labels/logits start at col 0. out_logits = array_ops.concat([true_logits, sampled_logits], 1) return out_ids, out_logits ================================================ FILE: utils/melt/ops/ops.py ================================================ #!/usr/bin/env python # ============================================================================== # \file ops.py # \author chenghuige # \date 2016-08-16 10:09:34.992292 # \Description # ============================================================================== """ TODO tf.sign should be replaced by tf.unequal 0, to allow -1 """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import sparse_tensor from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util # 'Constant' gets imported in the module 'array_ops'. from tensorflow.python.framework.constant_op import constant from tensorflow.python.ops import gen_array_ops from tensorflow.python.ops import gen_math_ops from tensorflow.python.ops import nn from tensorflow.python.ops import standard_ops # go/tf-wildcard-import # pylint: disable=wildcard-import from tensorflow.python.ops.gen_array_ops import * from tensorflow.python.util import deprecation from tensorflow.python.util.deprecation import deprecated # pylint: enable=wildcard-import #as tf_utils in order to avoid confilict/hidden melt.utils since (from melt.ops import * will import..) #@NOTICE! be careful or if import uitls without rename, you need to from melt.ops not import * and use melt.ops.. from tensorflow.contrib.layers.python.layers import utils as tf_utils import numpy as np # TODO FIXME.. hurt.. WHY ? maybe due to dataset pipline... #def greater_then_set(x, thre, val): #mask = tf.cast(x > thre, dtype=x.dtype) #rmask = 1 - mask #return x * rmask + mask * val #return x #https://stackoverflow.com/questions/39921607/how-to-make-a-custom-activation-function-with-only-python-in-tensorflow def greater_then_set(x, thre, val): cond = tf.greater(x, thre) return tf.where(cond, tf.ones_like(x, dtype=x.dtype) * val, x) #return tf.where(cond, tf.constant(x, dtype=x.dtype, shape=x.shape) * val, x) #return x def matmul(X, w): """ General matmul that will deal both for dense and sparse input hide the differnce of dense and sparse input for end users Since sparse usage is much less then dense, try to use slim. or tf.contrib.layers directly if possible https://github.com/tensorflow/tensorflow/issues/342 Args: X: a tensor, or a list with two sparse tensors (index, value) w: a tensor """ if isinstance(X, tf.Tensor): return tf.matmul(X,w) else: #X[0] index, X[1] value return tf.nn.embedding_lookup_sparse(w, X[0], X[1], combiner='sum') #@TODO try to use slim.fully_connected def mlp_forward(input, hidden, hidden_bais, out, out_bias, activation=tf.nn.relu, name=None): #@TODO **args? with tf.name_scope(name, 'mlp_forward', [input, hidden, hidden_bais, out, out_bias, activation]): hidden_output = activation(matmul(input, hidden) + hidden_bais) return tf.matmul(hidden_output, out) + out_bias def mlp_forward_nobias(input, hidden, out, activation=tf.nn.relu, name=None): with tf.name_scope(name, 'mlp_forward_nobias', [input, hidden, out, activation]): hidden_output = activation(matmul(input, hidden)) return tf.matmul(hidden_output, out) def element_wise_dot(a, b, keep_dims=True, name=None): with tf.name_scope(name, 'element_wise_cosine_nonorm', [a, b]): return tf.reduce_sum(tf.multiply(a, b), -1, keep_dims=keep_dims) def element_wise_cosine_nonorm(a, b, keep_dims=True, name=None): with tf.name_scope(name, 'element_wise_cosine_nonorm', [a, b]): return tf.reduce_sum(tf.multiply(a, b), -1, keep_dims=keep_dims) #[batch_size, y], [batch_size, y] => [batch_size, 1] def element_wise_cosine(a, b, a_normed=False, b_normed=False, nonorm=False, keep_dims=True, name=None): if nonorm: return element_wise_cosine_nonorm(a, b, keep_dims, name) with tf.name_scope(name, 'element_wise_cosine', [a,b]): if a_normed: normalized_a = a else: normalized_a = tf.nn.l2_normalize(a, -1) if b_normed: normalized_b = b else: normalized_b = tf.nn.l2_normalize(b, -1) #return tf.matmul(normalized_a, normalized_b, transpose_b=True) return tf.reduce_sum(tf.multiply(normalized_a, normalized_b), -1, keep_dims=keep_dims) def dot(a, b, name=None): with tf.name_scope(name, 'dot', [a,b]): return tf.matmul(a, b, transpose_b=True) #actually is dot.. def cosine_nonorm(a, b, name=None): with tf.name_scope(name, 'cosine_nonorm', [a,b]): return tf.matmul(a, b, transpose_b=True) #[batch_size, y] [x, y] => [batch_size, x] def cosine(a, b, a_normed=False, b_normed=False, nonorm=False, name=None): if nonorm: return cosine_nonorm(a, b) with tf.name_scope(name, 'cosine', [a,b]): if a_normed: normalized_a = a else: normalized_a = tf.nn.l2_normalize(a, -1) if b_normed: normalized_b = b else: normalized_b = tf.nn.l2_normalize(b, -1) return tf.matmul(normalized_a, normalized_b, transpose_b=True) def reduce_mean(input_tensor, reduction_indices=None, keep_dims=False): """ reduce mean with mask """ return tf.reduce_sum(input_tensor, reduction_indices=reduction_indices, keep_dims=keep_dims) / \ tf.reduce_sum(tf.sign(input_tensor), reduction_indices=reduction_indices, keep_dims=keep_dims) def masked_reduce_mean(input_tensor, reduction_indices=None, keep_dims=False, mask=None): """ reduce mean with mask [1,2,3,0] -> 2 not 1.5 as normal """ if mask is None: mask = tf.sign(input_tensor) return tf.reduce_sum(input_tensor, reduction_indices=reduction_indices, keep_dims=keep_dims) / \ tf.reduce_sum(mask, reduction_indices=reduction_indices, keep_dims=keep_dims) def reduce_mean_with_mask(input_tensor, mask, reduction_indices=None, keep_dims=False): return tf.reduce_sum(input_tensor, reduction_indices=reduction_indices, keep_dims=keep_dims) / \ tf.reduce_sum(mask, reduction_indices=reduction_indices, keep_dims=keep_dims) def embedding_lookup(emb, index, reduction_indices=None, combiner='mean', name=None): with tf.name_scope(name, 'emb_lookup_%s'%combiner, [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) if combiner == 'mean': return tf.reduce_mean(lookup_result, reduction_indices) elif combiner == 'sum': return tf.reduce_sum(lookup_result, reduction_indices) else: raise ValueError('Unsupported combiner: ', combiner) # TODO this mean is meaning less.. FIXME should be / real_lenght def embedding_lookup_mean(emb, index, reduction_indices=None, name=None): with tf.name_scope(name, 'emb_lookup_mean', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) return tf.reduce_mean(lookup_result, reduction_indices) def embedding_lookup_sum(emb, index, reduction_indices=None, name=None): with tf.name_scope(name, 'emb_lookup_sum', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) return tf.reduce_sum(lookup_result, reduction_indices) def masked_embedding_lookup(emb, index, reduction_indices=None, combiner='mean', exclude_zero_index=True, name=None): if combiner == 'mean': return masked_embedding_lookup_mean(emb, index, reduction_indices, combiner, exclude_zero_index, name) elif combiner == 'sum': return masked_embedding_lookup_sum(emb, index, reduction_indices, combiner, exclude_zero_index, name) else: raise ValueError('Unsupported combiner: ', combiner) def masked_embedding_lookup_mean(emb, index, reduction_indices=None, exclude_zero_index=True, name=None): """ @TODO need c++ op to really mask last dim zero feature vector now assume vector should zero filtered to be zero vector @TODO """ with tf.name_scope(name, 'masked_emb_lookup_mean', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) if exclude_zero_index: masked_emb = mask2d(emb) mask_lookup_result = tf.nn.embedding_lookup(masked_emb, index) lookup_result = tf.mul(lookup_result, mask_lookup_result) return reduce_mean_with_mask(lookup_result, tf.expand_dims(tf.cast(tf.sign(index), dtype=tf.float32), -1), reduction_indices) def masked_embedding_lookup_sum(emb, index, reduction_indices=None, exclude_zero_index=True, name=None): """ @TODO need c++ op to really mask last dim zero feature vector now assume vector should zero filtered to be zero vector or to just make emb firt row zero before lookup ? """ with tf.name_scope(name, 'masked_emb_lookup_sum', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) if exclude_zero_index: masked_emb = mask2d(emb) mask_lookup_result = tf.nn.embedding_lookup(masked_emb, index) lookup_result = tf.mul(lookup_result, mask_lookup_result) return tf.reduce_sum(lookup_result, reduction_indices) def wrapped_embedding_lookup(emb, index, reduction_indices=None, combiner='mean', use_mask=False, name=None): """ compare to embedding_lookup wrapped_embedding_lookup add use_mask """ if use_mask: return masked_embedding_lookup(emb, index, reduction_indices, combiner, name) else: return embedding_lookup(emb, index, reduction_indices, combiner, name) def batch_embedding_lookup_reduce(emb, index, combiner='mean', name=None): """ same as embedding_lookup but use index_dim_length - 1 as reduction_indices """ with tf.name_scope(name, 'batch_emb_lookup_%s'%combiner, [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) #@NOTICE for tf.nn.embedding_lookup, index can be list.. here only tensor reduction_indices = len(index.get_shape()) - 1 if combiner == 'mean': return tf.reduce_mean(lookup_result, reduction_indices) elif combiner == 'sum': return tf.reduce_sum(lookup_result, reduction_indices) else: raise ValueError('Unsupported combiner: ', combiner) def batch_embedding_lookup_mean(emb, index, name=None): with tf.name_scope(name, 'batch_emb_lookup_mean', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) reduction_indices = len(index.get_shape()) - 1 return tf.reduce_mean(lookup_result, reduction_indices) def batch_embedding_lookup_sum(emb, index, name=None): with tf.name_scope(name, 'batch_emb_lookup_sum', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) reduction_indices = len(index.get_shape()) - 1 return tf.reduce_sum(lookup_result, reduction_indices) def batch_masked_embedding_lookup_reduce(emb, index, combiner='mean', exclude_zero_index=True, name=None): if combiner == 'mean': return batch_masked_embedding_lookup_mean(emb, index, exclude_zero_index, name)[1] elif combiner == 'sum': return batch_masked_embedding_lookup_sum(emb, index, exclude_zero_index, name)[1] else: raise ValueError('Unsupported combiner: ', combiner) def batch_masked_embedding_lookup_and_reduce(emb, index, combiner='mean', exclude_zero_index=True, name=None): if combiner == 'mean': return batch_masked_embedding_lookup_mean(emb, index, exclude_zero_index, name) elif combiner == 'sum': return batch_masked_embedding_lookup_sum(emb, index, exclude_zero_index, name) else: raise ValueError('Unsupported combiner: ', combiner) def batch_masked_embedding_lookup_mean(emb, index, exclude_zero_index=True, name=None): """ @TODO need c++ op to really mask last dim zero feature vector now assume vector should zero filtered to be zero vector if not exclude_zero_index or will have to do lookup twice """ with tf.name_scope(name, 'batch_masked_emb_lookup_mean', [emb, index]): #if exclude_zero_index: #-----so slow.. # emb = tf.concat(0, [tf.zeros([1, emb.get_shape()[1]]), # emb[1:, :]]) lookup_result = tf.nn.embedding_lookup(emb, index) reduction_indices = len(index.get_shape()) - 1 if exclude_zero_index: #@TODO this will casue 4 times slower masked_emb = mask2d(emb) mask_lookup_result = tf.nn.embedding_lookup(masked_emb, index) lookup_result = tf.multiply(lookup_result, mask_lookup_result) return lookup_result, reduce_mean_with_mask(lookup_result, tf.expand_dims(tf.cast(tf.sign(index), dtype=tf.float32), -1), reduction_indices) def batch_masked_embedding_lookup_sum(emb, index, exclude_zero_index=True, name=None): """ @TODO need c++ op to really mask last dim zero feature vector now assume vector should zero filtered to be zero vector if not exclude_zero_index or will have to do lookup twice """ with tf.name_scope(name, 'batch_masked_emb_lookup_sum', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) reduction_indices = len(index.get_shape()) - 1 if exclude_zero_index: masked_emb = mask2d(emb) mask_lookup_result = tf.nn.embedding_lookup(masked_emb, index) lookup_result = tf.multiply(lookup_result, mask_lookup_result) return lookup_result, tf.reduce_sum(lookup_result, reduction_indices) def batch_masked_embedding_lookup(emb, index, exclude_zero_index=True, name=None): """ @TODO need c++ op to really mask last dim zero feature vector now assume vector should zero filtered to be zero vector if not exclude_zero_index or will have to do lookup twice """ with tf.name_scope(name, 'batch_masked_emb_lookup_sum', [emb, index]): lookup_result = tf.nn.embedding_lookup(emb, index) reduction_indices = len(index.get_shape()) - 1 if exclude_zero_index: masked_emb = mask2d(emb) mask_lookup_result = tf.nn.embedding_lookup(masked_emb, index) lookup_result = tf.multiply(lookup_result, mask_lookup_result) return lookup_result def batch_wrapped_embedding_lookup(emb, index, combiner='mean', use_mask=False, exclude_zero_index=True, name=None): if use_mask: return batch_masked_embedding_lookup(emb, index, combiner, exclude_zero_index, name) else: return batch_embedding_lookup(emb, index, combiner, name) def mask2d(emb): return tf.concat([tf.zeros([1, 1]), tf.ones([emb.get_shape()[0] - 1, 1])], 0) #-------x must >= 0 TODO tf.not_equal(x, 0) ? def length(x, dim=1): #return tf.reduce_sum(tf.sign(x), dim) return tf.reduce_sum(tf.to_int32(tf.sign(x)), dim) def length2(x, dim=1): #len_ = tf.reduce_sum(tf.sign(x), dim) len_ = tf.reduce_sum(tf.to_int32(tf.sign(x)), dim) max_len = tf.cast(tf.reduce_max(len_), dtype=tf.int32) return len_, max_len def full_length(x): return tf.ones([get_batch_size(x),], dtype=tf.int32) * tf.shape(x)[1] #---------now only consider 2d @TODO def dynamic_append(x, value=1): length = tf.reduce_sum(tf.sign(x), 1) rows = tf.range(tf.shape(x)[0]) rows = tf.cast(rows, x.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(tf.shape(x), x.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def dynamic_append_with_mask(x, mask, value=1): length = tf.reduce_sum(mask, 1) rows = tf.range(tf.shape(x)[0]) rows = tf.cast(rows, x.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(tf.shape(x), x.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def dynamic_append_with_length(x, length, value=1): rows = tf.range(tf.shape(x)[0]) #rows = tf.cast(rows, x.dtype) rows = tf.cast(rows, length.dtype) coords = tf.transpose(tf.stack([rows, length])) #shape = tf.cast(tf.shape(x), x.dtype) shape = tf.cast(tf.shape(x), length.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def dynamic_append_with_length_float32(x, length, value=1): rows = tf.range(tf.shape(x)[0]) rows = tf.cast(rows, length.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(tf.shape(x), length.dtype) delta = tf.sparse_to_dense(coords, shape, 1) delta = tf.cast(delta, x.dtype) * value return x + delta #@TODO not tested def static_append(x, value=1): length = tf.reduce_sum(tf.sign(x), 1) rows = tf.range(x.get_shape()[0]) rows = tf.cast(rows, x.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(x.get_shape(), x.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def static_append_with_mask(x, mask, value=1): length = tf.reduce_sum(mask, 1) rows = tf.range(x.get_shape()[0]) rows = tf.cast(rows, x.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(x.get_shape(), x.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def static_append_with_length(x, length, value=1): rows = tf.range(x.get_shape()[0]) rows = tf.cast(rows, x.dtype) coords = tf.transpose(tf.stack([rows, length])) shape = tf.cast(x.get_shape(), x.dtype) delta = tf.sparse_to_dense(coords, shape, value) return x + delta def first_nrows(x, n): #eval_scores[0:num_evaluate_examples, 1] the diff is below you do not need other dim infos return tf.gather(x, range(n)) def exclude_last_col(x): """ @TODO just hack since dynamic x[:,:-1] is not supported now just work for 2d ref to https://github.com/tensorflow/tensorflow/issues/206 """ try: return x[:,:-1] except Exception: return tf.transpose(tf.gather(tf.transpose(x), tf.range(0, x.get_shape()[1] - 1))) def dynamic_exclude_last_col(x): """ @TODO just hack since dynamic x[:,:-1] is not supported now just work for 2d ref to https://github.com/tensorflow/tensorflow/issues/206 """ try: #tf0.12 is ok here return x[:,:-1] except Exception: return tf.transpose(tf.gather(tf.transpose(x), tf.range(0, tf.shape(x)[1] - 1))) def gather2d(x, idx): """ from https://github.com/tensorflow/tensorflow/issues/206 x = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) idx = tf.constant([1, 0, 2]) idx_flattened = tf.range(0, x.shape[0]) * x.shape[1] + idx y = tf.gather(tf.reshape(x, [-1]), # flatten input idx_flattened) # use flattened indices with tf.Session(''): print y.eval() # [2 4 9] """ #FIXME try: idx_flattened = tf.cast(tf.range(0, x.shape[0]) * x.shape[1], idx.dtype) + idx except Exception: shape_ = tf.shape(x) idx_flattened = tf.cast(tf.range(0, shape_[0]) * shape_[1], idx.dtype) + idx y = tf.gather(tf.reshape(x, [-1]), # flatten input idx_flattened) # use flattened indices return y #deprecated gpu mem issue, use tf.gather_nd instead def dynamic_gather2d(x, idx): #FIMXE idx_flattened = tf.cast(tf.range(0, tf.shape(x)[0]) * tf.shape(x)[1], idx.dtype) + idx y = tf.gather(tf.reshape(x, [-1]), # flatten input idx_flattened) # return y def subtract_by_diff(x, y): """ [1,2, 3, 4] - [1, 2, 1, 4] = [1, 2, 2, 4] assume input x, y is not the same @TODO c++ op """ delta = tf.abs(x - y) delta_bool = tf.cast(delta, tf.bool) return tf.add(tf.mul(x, tf.cast(tf.logical_not(delta_bool), x.dtype)), delta) #------this can only deal with same first dimension.. if two batch different batch size not ok # def _align(x, y, dim): # x_shape = tf.shape(x) # y_shape = tf.shape(y) # padding_shape = subtract_by_diff(x_shape, y_shape) # x, y = tf.cond( # tf.greater(x_shape[dim], y_shape[dim]), # lambda: (x, tf.concat(dim, [y, tf.zeros(padding_shape, x.dtype)])), # lambda: (tf.concat(dim, [x, tf.zeros(padding_shape, x.dtype)]), y)) # return x, y # def align(x, y, dim): # """ # @TODO use c++ op # """ # x_shape = tf.shape(x) # y_shape = tf.shape(y) # x, y = tf.cond( # tf.equal(x_shape[dim], y_shape[dim]), # lambda: (x, y), # lambda: _align(x, y, dim)) # return x, y def _align_col_padding2d(x, y): x_shape = tf.shape(x) y_shape = tf.shape(y) x, y = tf.cond( tf.greater(x_shape[1], y_shape[1]), lambda: (x, tf.pad(y, [[0, 0], [0, x_shape[1] - y_shape[1]]])), lambda: (tf.pad(x, [[0, 0], [0, y_shape[1] - x_shape[1]]]), y)) return x, y def align_col_padding2d(x, y): x_shape = tf.shape(x) y_shape = tf.shape(y) x, y = tf.cond( tf.equal(x_shape[1], y_shape[1]), lambda: (x, y), lambda: _align_col_padding2d(x, y)) return x, y def make_batch_compat(sequence): sequence_length = length(sequence) num_steps = tf.to_int32(tf.reduce_max(sequence_length)) sequence = sequence[:, :num_steps] return sequence def last_relevant(output, length): """ https://danijar.com/variable-sequence-lengths-in-tensorflow/ Select the Last Relevant Output For sequence classification, we want to feed the last output of the recurrent network into a predictor, e.g. a softmax layer. While taking the last frame worked well for fixed-sized sequences, we not have to select the last relevant frame. This is a bit cumbersome in TensorFlow since it does’t support advanced slicing yet. In Numpy this would just be output[:, length - 1]. But we need the indexing to be part of the compute graph in order to train the whole system end-to-end. @TODO understand below code """ batch_size = tf.shape(output)[0] #@TODO could not use in rnn.py why even int fixed length mode? max_length = int(output.get_shape()[1]) __int__ returned non-int (type NoneType) #because even though you convert sparse to dense to make same length, that length is dynamic , if get in static will be None? So if you use FixedLen to read tfrecord like version 0 in #models/image-text-sim then might ok here, but for comment seems using feed_dict mode still None why? placeholder should have fixed length! #@TODO why need int otherwise in tf.reshape(output, [-1, out_size]) TypeError: Expected int32, got Dimension(1024) of type 'Dimension' instead. max_length = int(output.get_shape()[1]) out_size = int(output.get_shape()[2]) #index = tf.range(0, batch_size) * max_length + (length - 1) #@TODO may be it is best to convert tfrecord reading to int64 and convert to int32 to avoid unnecessary cast index = tf.cast(tf.range(0, batch_size), length.dtype) * max_length + (length - 1) flat = tf.reshape(output, [-1, out_size]) relevant = tf.gather(flat, index) return relevant #----------for rnn def dynamic_last_relevant(output, length): """ https://danijar.com/variable-sequence-lengths-in-tensorflow/ Select the Last Relevant Output For sequence classification, we want to feed the last output of the recurrent network into a predictor, e.g. a softmax layer. While taking the last frame worked well for fixed-sized sequences, we not have to select the last relevant frame. This is a bit cumbersome in TensorFlow since it does’t support advanced slicing yet. In Numpy this would just be output[:, length - 1]. But we need the indexing to be part of the compute graph in order to train the whole system end-to-end. not this will only work for 3 d, for general pupose dynamic last might consider output = tf.reverse_sequence(output, seqence_lenth, 1) return output[:, 0, :] """ shape = tf.shape(output) batch_size = shape[0] #max_length = shape[1] max_length = tf.cast(shape[1], length.dtype) #out_size = shape[2] out_size = int(output.get_shape()[2]) #index = tf.range(0, batch_size) * max_length + (length - 1) #@TODO may be it is best to convert tfrecord reading to int64 and convert to int32 to avoid unnecessary cast #here length might be tf.int64 if length calced from mask of int64 type index = tf.cast(tf.range(0, batch_size), length.dtype) * max_length + (length - 1) flat = tf.reshape(output, [-1, out_size]) relevant = tf.gather(flat, index) return relevant def dynamic_last(output): """ https://danijar.com/variable-sequence-lengths-in-tensorflow/ Select the Last Relevant Output For sequence classification, we want to feed the last output of the recurrent network into a predictor, e.g. a softmax layer. While taking the last frame worked well for fixed-sized sequences, we not have to select the last relevant frame. This is a bit cumbersome in TensorFlow since it does’t support advanced slicing yet. In Numpy this would just be output[:, length - 1]. But we need the indexing to be part of the compute graph in order to train the whole system end-to-end. """ shape = tf.shape(output) batch_size = shape[0] max_length = shape[1] #out_size = shape[2] out_size = int(output.get_shape()[2]) #index = tf.range(0, batch_size) * max_length + (length - 1) #@TODO may be it is best to convert tfrecord reading to int64 and convert to int32 to avoid unnecessary cast index = tf.range(0, batch_size) * max_length + (max_length - 1) flat = tf.reshape(output, [-1, out_size]) relevant = tf.gather(flat, index) return relevant def static_last(output): return output[:, int(output.get_shape()[1]) - 1, :] #http://stackoverflow.com/questions/37670886/gathering-columns-of-a-2d-tensor-in-tensorflow def gather_cols(params, indices, name=None): """Gather columns of a 2D tensor. Args: params: A 2D tensor. indices: A 1D tensor. Must be one of the following types: ``int32``, ``int64``. name: A name for the operation (optional). Returns: A 2D Tensor. Has the same type as ``params``. """ with tf.name_scope(name, "gather_cols", [params, indices]) as scope: # Check input params = tf.convert_to_tensor(params, name="params") indices = tf.convert_to_tensor(indices, name="indices") #indices = tf.to_int32(indices) try: params.get_shape().assert_has_rank(2) except ValueError: raise ValueError('\'params\' must be 2D.') try: indices.get_shape().assert_has_rank(1) except ValueError: raise ValueError('\'params\' must be 1D.') # Define op #int64 will cause Tensor conversion requested dtype int64 for Tensor with dtype int32 indices = tf.to_int32(indices) p_shape = tf.shape(params) p_flat = tf.reshape(params, [-1]) i_flat = tf.reshape(tf.reshape(tf.range(0, p_shape[0]) * p_shape[1], [-1, 1]) + indices, [-1]) return tf.reshape(tf.gather(p_flat, i_flat), [p_shape[0], -1]) #[batch_size, num_steps, emb_dim] * [emb_dim, vocab_size] -> [batch_size, num_steps, vocab_size] if keep_dims #else [batch_size * num_steps, vocab_size] def batch_matmul_embedding(x, emb, keep_dims=False): batch_size = tf.shape(x)[0] emb_shape = tf.shape(emb) emb_dim = emb_shape[0] vocab_size = emb_shape[1] x = tf.reshape(x, [-1, emb_dim]) logits = tf.matmul(x, emb) if keep_dims: logits = tf.reshape(logits, [batch_size, -1, vocab_size]) return logits def constants(value, shape, dtype=dtypes.float32, name=None): """Creates a tensor with all elements set to zero. This operation returns a tensor of type `dtype` with shape `shape` and all elements set to zero. For example: ```python tf.zeros([3, 4], tf.int32) ==> [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] ``` Args: shape: Either a list of integers, or a 1-D `Tensor` of type `int32`. dtype: The type of an element in the resulting `Tensor`. name: A name for the operation (optional). Returns: A `Tensor` with all elements set to zero. """ dtype = dtypes.as_dtype(dtype).base_dtype with ops.name_scope(name, "constants", [shape]) as name: try: shape = tensor_shape.as_shape(shape) output = constant(value, shape=shape, dtype=dtype, name=name) except (TypeError, ValueError): shape = ops.convert_to_tensor(shape, dtype=dtypes.int32, name="shape") output = fill(shape, constant(value, dtype=dtype), name=name) assert output.dtype.base_dtype == dtype return output def constants_like(tensor, value, dtype=None, name=None, optimize=True): """Creates a tensor with all elements set to zero. Given a single tensor (`tensor`), this operation returns a tensor of the same type and shape as `tensor` with all elements set to zero. Optionally, you can use `dtype` to specify a new type for the returned tensor. For example: ```python # 'tensor' is [[1, 2, 3], [4, 5, 6]] tf.zeros_like(tensor) ==> [[0, 0, 0], [0, 0, 0]] ``` Args: tensor: A `Tensor`. dtype: A type for the returned `Tensor`. Must be `float32`, `float64`, `int8`, `int16`, `int32`, `int64`, `uint8`, `complex64`, or `complex128`. name: A name for the operation (optional). optimize: if true, attempt to statically determine the shape of 'tensor' and encode it as a constant. Returns: A `Tensor` with all elements set to zero. """ with ops.name_scope(name, "constants_like", [tensor]) as name: tensor = ops.convert_to_tensor(tensor, name="tensor") if dtype is not None and tensor.dtype != dtype: ret = constants(value, shape_internal(tensor, optimize=optimize), dtype, name=name) ret.set_shape(tensor.get_shape()) return ret else: #TODO better handle return gen_array_ops._zeros_like(tensor, name=name) + value #-----------loss ops #@TODO contrib\losses\python\losses\loss_ops.py def sparse_softmax_cross_entropy(x, y): return tf.reduce_mean(tf.nn.sparse_softmax_cross_entropy_with_logits(logits=x, labels=y)) def softmax_cross_entropy(x, y): return tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=x, labels=y)) def sigmoid_cross_entropy(x, y): return tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(logits=x, labels=y)) activations = {'sigmoid' : tf.nn.sigmoid, 'tanh' : tf.nn.tanh, 'relu' : tf.nn.relu} #--@TODO other rank loss #Depreciated use melt.losses. def reduce_loss(loss_matrix, combiner='mean'): if combiner == 'mean': return tf.reduce_mean(loss_matrix) else: return tf.reduce_sum(loss_matrix) def hinge_loss(pos_score, neg_score, margin=0.1, combiner='mean', name=None): with tf.name_scope(name, 'hinge_loss', [pos_score, neg_score]): loss_matrix = tf.maximum(0., margin - (pos_score - neg_score)) loss = reduce_loss(loss_matrix, combiner) return loss def cross_entropy_loss(scores, num_negs=1, combiner='mean', name=None): with tf.name_scope(name, 'cross_entropy_loss', [scores]): batch_size = scores.get_shape()[0] targets = tf.concat([tf.ones([batch_size, 1], tf.float32), tf.zeros([batch_size, num_negs], tf.float32)], 1) #http://www.wildml.com/2016/07/deep-learning-for-chatbots-2-retrieval-based-model-tensorflow/ #I think for binary is same for sigmoid or softmax logits = tf.sigmoid(scores) loss_matrix = tf.nn.sigmoid_cross_entropy_with_logits(logits=logits, labels=targets) #loss_matrix = tf.nn.softmax_cross_entropy_with_logits(logits=logits, labels=targets) loss = reduce_loss(loss_matrix, combiner) return loss def hinge_cross_loss(pos_score, neg_score, combiner='mean', name=None): with tf.name_scope(name, 'hinge_cross_loss', [pos_score, neg_score]): logits = pos_score - neg_score logits = tf.sigmoid(logits) targets = tf.ones_like(neg_score, tf.float32) loss_matrix = tf.nn.sigmoid_cross_entropy_with_logits(logits=logits, labels=targets) loss = reduce_loss(loss_matrix, combiner) return loss def last_dimension(x): return tf_utils.last_dimension(x.get_shape()) def first_dimension(x): return tf_utils.first_dimension(x.get_shape()) def dimension(x, index): return x.get_shape()[index].value #def batch_values_to_indices(x): # shape_ = tf.shape(x) # batch_size = shape_[0] # num_cols = shape_[1] # d = tf.transpose(tf.expand_dims(tf.range(batch_size),0)) # d = tf.tile(d, [1, num_cols]) # d_flatten = tf.reshape(d, [-1, 1]) # x_flatten = tf.reshape(x, [-1, 1]) # r_flatten = tf.concat([d_flatten, x_flatten], 1) # return tf.reshape(r_flatten, [shape_[0], shape_[1], 2]) #[[0,1,2], [3,4,5]] - > [[[0,0], [0,1], [0,2]], [[1,3], [1,4], [1,5]]] def batch_values_to_indices(index_matrix): replicated_first_indices = tf.range(tf.shape(index_matrix)[0]) rank = len(index_matrix.get_shape()) if rank == 2: replicated_first_indices = tf.tile( tf.expand_dims(replicated_first_indices, dim=1), [1, tf.shape(index_matrix)[1]]) return tf.stack([replicated_first_indices, index_matrix], axis=rank) def to_nd_indices(index_matrix): replicated_first_indices = tf.range(tf.shape(index_matrix)[0]) rank = len(index_matrix.get_shape()) if rank == 2: replicated_first_indices = tf.tile( tf.expand_dims(replicated_first_indices, dim=1), [1, tf.shape(index_matrix)[1]]) #print('--------', replicated_first_indices, index_matrix) return tf.stack([replicated_first_indices, index_matrix], axis=rank) def nhot(x, max_dim): return tf.scatter_nd(to_nd_indices(tf.to_int32(x)), tf.ones_like(x), shape=(get_batch_size(x), max_dim)) def dense(inputs, kernel, bias=None, activation=None): #inputs = ops.convert_to_tensor(inputs, dtype=dtype) shape = inputs.get_shape().as_list() output_shape = shape[:-1] + [kernel.get_shape().as_list()[-1]] if len(output_shape) > 2: # Broadcasting is required for the inputs. outputs = standard_ops.tensordot(inputs, kernel, [[len(shape) - 1], [0]]) # Reshape the output back to the original ndim of the input. outputs.set_shape(output_shape) else: outputs = standard_ops.matmul(inputs, kernel) if bias is not None: outputs = nn.bias_add(outputs, bias) if activation is not None: return activation(outputs) # pylint: disable=not-callable return outputs def sequence_equal(x, y): return tf.reduce_mean(tf.to_int32(tf.equal(x,y)), 1) def get_batch_size(x): #or .shape.as_list()[0] or .get_shape().as_list()[0] return x.get_shape()[0].value or tf.shape(x)[0] def get_shape(x, dim): return x.get_shape()[dim].value or tf.shape(x)[dim] def get_dims(x): return len(x.get_shape()) def get_weighted_outputs(outputs, sequence_length): weight = -1e18 sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length, tf.shape(outputs)[1])), -1) weighted_mask = sequence_mask * weight weighted_outputs = outputs + weighted_mask return weighted_outputs # default axis might be -2 def max_pooling(outputs, sequence_length=None, axis=1, reduce_func=tf.reduce_max): if sequence_length is None: return reduce_func(outputs, axis) weight = -1e18 sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length, tf.shape(outputs)[1])), -1) weighted_mask = sequence_mask * weight weighted_output = outputs + weighted_mask return reduce_func(weighted_output, axis) def max_pooling2(outputs, sequence_length, sequence_length2, axis=1, reduce_func=tf.reduce_max): weight = -1e18 sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length)), -1) sequence_mask2 = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length2)), -1) sequence_mask = tf.concat([sequence_mask, sequence_mask2], 1) weighted_mask = sequence_mask * weight weighted_output = outputs + weighted_mask return reduce_func(weighted_output, axis) # not to use it directly! def top_k_pooling(outputs, top_k, sequence_length=None, axis=1): assert sequence_length is not None # if sequence_length is None: # sequence_length, _ = melt.length2() # #sequence_length = melt.length(outputs) # #return reduce_func(outputs, axis) weight = -1e18 sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length, tf.shape(outputs)[1])), -1) weighted_mask = sequence_mask * weight weighted_output = outputs + weighted_mask # swap last two dimensions since top_k will be applied along the last dimension shifted_output = tf.transpose(weighted_output, [0, 2, 1]) return tf.nn.top_k(shifted_output, top_k) import melt def argtopk_pooling(outputs, top_k, sequence_length=None, axis=1): x = top_k_pooling(outputs, top_k, sequence_length, axis).indices #return tf.reshape(x, [melt.get_shape(outputs, 0), -1]) return tf.reshape(x, [-1, melt.get_shape(outputs, -1) * top_k]) def argmax_pooling(outputs, sequence_length, axis=1): return max_pooling(outputs, sequence_length, axis, reduce_func=tf.argmax) def mean_pooling(outputs, sequence_length=None, axis=1): if sequence_length is None: return tf.reduce_mean(outputs, axis) sequence_mask = tf.to_float(tf.expand_dims(tf.sequence_mask(sequence_length, tf.shape(outputs)[1]), -1)) outputs = outputs * sequence_mask return tf.reduce_sum(outputs, axis) / tf.to_float(tf.expand_dims(sequence_length, 1)) def sum_pooling(outputs, sequence_length=None, axis=1): if sequence_length is None: return tf.reduce_sum(outputs, axis) # cause problem of dim mismatch if using multiple gpu using split batch # if sequence_mask not input maxlens sequence_mask = tf.to_float(tf.expand_dims(tf.sequence_mask(sequence_length, tf.shape(outputs)[1]), -1)) outputs = outputs * sequence_mask return tf.reduce_sum(outputs, axis) def hier_encode(outputs, sequence_length, window_size=3, axis=1): #weight = -1e18 #sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length, tf.shape(outputs)[1])), -1) #weighted_mask = sequence_mask * weight #print('before mask', outputs) #outputs = outputs + weighted_mask #print('before_pool', outputs) sequence_mask = tf.to_float(tf.expand_dims(tf.sequence_mask(sequence_length), -1)) outputs = outputs * sequence_mask #outputs = get_weighted_outputs(outputs, sequence_length) outputs = tf.nn.pool(outputs, [window_size], 'AVG', 'SAME') return outputs def hier_pooling(outputs, sequence_length, window_size=3, axis=1): #weight = -1e18 #sequence_mask = tf.expand_dims(1. - tf.to_float(tf.sequence_mask(sequence_length, tf.shape(outputs)[1])), -1) #weighted_mask = sequence_mask * weight #print('before mask', outputs) #outputs = outputs + weighted_mask #print('before_pool', outputs) sequence_mask = tf.to_float(tf.expand_dims(tf.sequence_mask(sequence_length), -1)) outputs = outputs * sequence_mask #outputs = get_weighted_outputs(outputs, sequence_length) outputs = tf.nn.pool(outputs, [window_size], 'AVG', 'SAME') outputs = get_weighted_outpus(outputs, sequence_length) #print('------------outputs', outputs) outputs = tf.reduce_max(outputs, axis) return outputs def argmax_importance(argmax_values, shape): # argmax_vlalues [batch_size, emb_dim] indices = batch_values_to_indices(tf.to_int32(argmax_values)) updates = tf.ones_like(argmax_values) # actually do not need sequence mask ? since when encode has masked already # TODO check scores = tf.scatter_nd(indices, updates, shape=shape) #scores = tf.scatter_nd(indices, updates, shape=shape) * tf.to_int64(tf.sequence_mask(self.sequence_length, shape[-1])) return scores def maxpooling_importance(outputs, sequence_length=None, axis=1): argmax_values = argmax_pooling(outputs, sequence_length, axis) return argmax_importance(argmax_values, [tf.shape(outputs)[0], tf.shape(outputs)[1]]) def topkpooling_importance(outputs, top_k, sequence_length=None, axis=1): argtopk_values = argtopk_pooling(outputs, top_k, sequence_length, axis) return argmax_importance(argtopk_values, [tf.shape(outputs)[0], tf.shape(outputs)[1] * top_k]) # TODO like tf change from dim to axis def slim_batch(sequence, sequence_length=None, dim=1): if sequence_length is None: sequence_length = length(sequence, dim) num_steps = tf.cast(tf.reduce_max(sequence_length), dtype=tf.int32) dims = get_dims(sequence) starts = [0] * dims lens = [-1] * dims lens[dim] = num_steps sequence = tf.slice(sequence, starts, lens) return sequence def slim_batch2(sequence, sequence_length=None, dim=1): if sequence_length is None: sequence_length = length(sequence, dim) num_steps = tf.cast(tf.reduce_max(sequence_length), dtype=tf.int32) dims = get_dims(sequence) starts = [0] * dims lens = [-1] * dims lens[dim] = num_steps sequence = tf.slice(sequence, starts, lens) return sequence, sequence_length # from squad of HKUST def dropout(args, keep_prob, training, mode="recurrent"): if keep_prob < 1.0 and training: noise_shape = None scale = 1.0 shape = tf.shape(args) if mode == "embedding": noise_shape = [shape[0], 1] scale = keep_prob if mode == "recurrent" and len(args.get_shape().as_list()) == 3: noise_shape = [shape[0], 1, shape[-1]] args = tf.nn.dropout(args, keep_prob, noise_shape=noise_shape) * scale return args # this is fine, but lengths should has one row without padding 0 def masked_softmax(values, lengths): with tf.variable_scope('masked_softmax'): mask = tf.expand_dims(tf.sequence_mask(lengths, dtype=tf.float32), -1) # here mask 1 will get nan mask 0 -inf inf_mask = (1 - mask) * -np.inf # keep -inf unchanged and make nan to 0 inf_mask = tf.where(tf.is_nan(inf_mask), tf.zeros_like(inf_mask), inf_mask) return tf.nn.softmax(tf.multiply(values, mask) + inf_mask, axis=1) # TODO def softmax_mask(val, mask): INF = 1e30 return -INF * (1 - tf.cast(mask, tf.float32)) + val def get_words_importance(outputs=None, sequence_length=None, top_k=None, method='max'): if method == 'max': words_scores = maxpooling_importance(outputs, sequence_length) words_scores = tf.to_float(words_scores / tf.reduce_sum(words_scores, -1)) * tf.to_float(sequence_length) elif method == 'attention' or method =='att': words_scores = tf.get_collection('self_attention')[-1] * tf.to_float(sequence_length) elif method == 'top_k' or method == 'topk': words_scores = topkpooling_importance(outputs, top_k, sequence_length) words_scores = tf.to_float(words_scores / tf.reduce_sum(words_scores, -1)) * tf.to_float(sequence_length) else: #raise ValueError(f'unsupported method {method}') words_scores = [] return words_scores #https://stackoverflow.com/questions/43210033/tensorflow-unsorted-segment-sum-dimension def unsorted_segment_sum_emb(data, segment_ids, num_segments): num_rows = tf.shape(segment_ids)[0] rows_idx = tf.range(num_rows) rows_idx = tf.cast(rows_idx, segment_ids.dtype) segment_ids_per_row = segment_ids + num_segments * tf.expand_dims(rows_idx, axis=1) seg_sums = tf.unsorted_segment_sum(data, segment_ids_per_row, num_segments * num_rows) result = tf.reshape(seg_sums, [-1, num_segments, tf.shape(data)[-1]]) return result ================================================ FILE: utils/melt/ops/sparse_ops.py ================================================ #!/usr/bin/env python # ============================================================================== # \file sparse_ops.py # \author chenghuige # \date 2016-08-16 10:09:41.241790 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf def sparse_tensor_to_dense(input_tensor, maxlen=0): """ notice maxlen must > your max real index otherwise runtime check error like Invalid argument: indices[3] = [0,3] is out of bounds: need 0 <= index < [5,3] @FIXME still face this might be tf bug, when running mutlitple tf reading same data ? """ if maxlen <= 0: return tf.sparse_tensor_to_dense(input_tensor) else: return tf.sparse_to_dense(input_tensor.indices, [input_tensor.dense_shape[0], maxlen], input_tensor.values) ================================================ FILE: utils/melt/rnn/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-12-23 14:00:38.403784 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.rnn.rnn import * ================================================ FILE: utils/melt/rnn/rnn.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file rnn.py # \author chenghuige # \date 2016-12-23 14:02:57.513674 # \Description # ============================================================================== """ rnn encoding """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from melt.ops import dynamic_last_relevant, dropout import copy import melt logging = melt.logging #TODO change from 0, 1 .. to 'forward', 'backward' , 'sum', 'last' class EncodeMethod: forward = 'forward' backward = 'backward' bidirectional = 'bidirectional' stack_bidirectional = 'stack_bidirectional' stack_bidirectional_concat_layers = 'stack_bidirectional_concat_layers' bidirectional_sum = 'bidirectional_sum' def is_bidirectional(method): return method == EncodeMethod.bidirectional \ or method == EncodeMethod.stack_bidirectional \ or method == EncodeMethod.stack_bidirectional_concat_layers \ or method == EncodeMethod.bidirectional_sum \ class OutputMethod: sum = 'sum' masked_sum = 'maskedsum' last = 'last' first = 'first' all = 'all' mean = 'mean' masked_mean = 'maskedmean' max = 'max' argmax = 'argmax' state = 'state' attention = 'attention' hier = 'hier' # native gru depreciated, only for low tf like hadoop env class NativeGru: def __init__(self, num_layers, num_units, keep_prob=1.0, share_dropout=True, dropout_mode=None, train_init_state=True, is_train=None, scope="native_gru"): self.num_layers = num_layers self.keep_prob = keep_prob self.num_units = num_units self.is_train = is_train self.train_init_state = train_init_state self.scope = scope self.share_dropout = share_dropout self.dropout_mode = dropout_mode self.dropout_mask_fw = [None] * num_layers self.dropout_mask_bw = [None] * num_layers self.init_fw = [None] * num_layers self.init_bw = [None] * num_layers def set_dropout_mask(self, mask_fw, mask_bw): self.dropout_mask_fw = mask_fw self.dropout_mask_bw = mask_bw def set_init_states(self, init_fw, init_bw): self.init_fw = init_fw self.init_bw = init_bw def reset_init_states(self): self.init_fw = [None] * self.num_layers self.init_bw = [None] * self.num_layers def encode(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): if emb is not None: inputs = tf.nn.embedding_lookup(emb, inputs) outputs = [inputs] keep_prob = self.keep_prob num_units = self.num_units is_train = self.is_train with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE): for layer in range(self.num_layers): input_size_ = melt.get_shape(inputs, -1) if layer == 0 else 2 * num_units batch_size = melt.get_batch_size(inputs) with tf.variable_scope("fw_{}".format(layer)): gru_fw = tf.contrib.rnn.GRUCell(num_units) if not self.share_dropout: mask_fw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=self.dropout_mode) else: if self.dropout_mask_fw[layer] is None: mask_fw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=self.dropout_mode) self.dropout_mask_fw[layer] = mask_fw else: mask_fw = self.dropout_mask_fw[layer] if self.train_init_state: if self.init_fw[layer] is None: self.init_fw[layer] = tf.tile(tf.get_variable("init_state", [1, num_units], tf.float32, tf.zeros_initializer()), [batch_size, 1]) out_fw, state = tf.nn.dynamic_rnn( gru_fw, outputs[-1] * mask_fw, seq_len, initial_state=self.init_fw[layer], dtype=tf.float32) with tf.variable_scope("bw_{}".format(layer)): gru_bw = tf.contrib.rnn.GRUCell(num_units) if not self.share_dropout: mask_bw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=self.dropout_mode) else: if self.dropout_mask_bw[layer] is None: mask_bw = dropout(tf.ones([batch_size, 1, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=self.dropout_mode) self.dropout_mask_bw[layer] = mask_bw else: mask_bw = self.dropout_mask_bw[layer] if self.train_init_state: if self.init_bw[layer] is None: self.init_bw[layer] = tf.tile(tf.get_variable("init_state", [1, num_units], tf.float32, tf.zeros_initializer()), [batch_size, 1]) inputs_bw = tf.reverse_sequence( outputs[-1] * mask_bw, seq_lengths=seq_len, seq_dim=1, batch_dim=0) out_bw, _ = tf.nn.dynamic_rnn( gru_bw, inputs_bw, seq_len, initial_state=self.init_bw[layer], dtype=tf.float32) out_bw = tf.reverse_sequence( out_bw, seq_lengths=seq_len, seq_dim=1, batch_dim=0) outputs.append(tf.concat([out_fw, out_bw], axis=2)) if concat_layers: res = tf.concat(outputs[1:], axis=2) else: res = outputs[-1] res = encode_outputs(res, seq_len, output_method=output_method) return res def __call__(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): return self.encode(inputs, seq_len, emb, concat_layers, output_method) class CudnnRnn: def __init__(self, cell, num_layers, num_units, keep_prob=1.0, share_dropout=True, train_init_state=True, is_train=None, scope='cudnn'): self.cell = cell if isinstance(cell, str): if cell == 'gru': self.cell = tf.contrib.cudnn_rnn.CudnnGRU scope = scope + '_gru' elif cell == 'lstm': self.cell = tf.contrib.cudnn_rnn.CudnnLSTM scope = scope + '_lstm' else: raise ValueError(cell) logging.info('cudnn cell:', self.cell) self.num_layers = num_layers self.keep_prob = keep_prob assert num_units % 4 == 0, 'bad performance for units size not % 4' self.num_units = num_units self.is_train = is_train self.scope=scope # for share dropout between like context and question in squad (machine reading task) # rnn = gru(num_layers=FLAGS.num_layers, num_units=d, keep_prob=keep_prob, is_train=self.is_training) # c = rnn(c_emb, seq_len=c_len) # scope.reuse_variables() # q = rnn(q_emb, seq_len=q_len) self.share_dropout = share_dropout self.dropout_mask_fw = [None] * num_layers self.dropout_mask_bw = [None] * num_layers self.train_init_state = train_init_state self.init_fw = [None] * num_layers self.init_bw = [None] * num_layers self.state = None def set_dropout_mask(self, mask_fw, mask_bw): self.dropout_mask_fw = mask_fw self.dropout_mask_bw = mask_bw def set_init_states(self, init_fw, init_bw): self.init_fw = init_fw self.init_bw = init_bw def reset_init_states(self): self.init_fw = [None] * self.num_layers self.init_bw = [None] * self.num_layers def encode(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): if emb is not None: inputs = tf.nn.embedding_lookup(emb, inputs) outputs = [tf.transpose(inputs, [1, 0, 2])] #states = [] keep_prob = self.keep_prob num_units = self.num_units is_train = self.is_train with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE): for layer in range(self.num_layers): input_size_ = melt.get_shape(inputs, -1) if layer == 0 else 2 * num_units batch_size = melt.get_batch_size(inputs) with tf.variable_scope("fw_{}".format(layer)): gru_fw = self.cell(num_layers=1, num_units=num_units) if not self.share_dropout: mask_fw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) else: if self.dropout_mask_fw[layer] is None: mask_fw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) self.dropout_mask_fw[layer] = mask_fw else: mask_fw = self.dropout_mask_fw[layer] if self.train_init_state: if self.init_fw[layer] is None: self.init_fw[layer] = (tf.tile(tf.get_variable("init_state", [1, 1, num_units], tf.float32, tf.zeros_initializer()), [1, batch_size, 1]),) out_fw, state_fw = gru_fw(outputs[-1] * mask_fw, self.init_fw[layer]) with tf.variable_scope("bw_{}".format(layer)): gru_bw = self.cell(num_layers=1, num_units=num_units) if not self.share_dropout: mask_bw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) else: if self.dropout_mask_bw[layer] is None: mask_bw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) self.dropout_mask_bw[layer] = mask_bw else: mask_bw = self.dropout_mask_bw[layer] inputs_bw = tf.reverse_sequence( outputs[-1] * mask_bw, seq_lengths=seq_len, seq_dim=0, batch_dim=1) if self.train_init_state: if self.init_bw[layer] is None: self.init_bw[layer] = (tf.tile(tf.get_variable("init_state", [1, 1, num_units], tf.float32, tf.zeros_initializer()), [1, batch_size, 1]),) out_bw, state_bw = gru_bw(inputs_bw, self.init_bw[layer]) out_bw = tf.reverse_sequence( out_bw, seq_lengths=seq_len, seq_dim=0, batch_dim=1) outputs.append(tf.concat([out_fw, out_bw], axis=2)) #states.append(tf.concat([state_fw, state_bw], axis=-1)) if concat_layers: res = tf.concat(outputs[1:], axis=2) #state = tf.concat(states, axis=-1) else: res = outputs[-1] #state = states[-1] res = tf.transpose(res, [1, 0, 2]) #state = tf.squeeze(state) #state = tf.reshape(state, [-1, num_units * 2 * self.num_layers]) #res = encode_outputs(res, output_method=output_method, sequence_length=seq_len, state=state) res = encode_outputs(res, output_method=output_method, sequence_length=seq_len) self.state = (state_fw, state_bw) return res def __call__(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): return self.encode(inputs, seq_len, emb, concat_layers, output_method) # tested on tf1.6 class CudnnGru: def __init__(self, num_layers, num_units, keep_prob=1.0, share_dropout=True, train_init_state=True, is_train=None, scope='cudnn_gru'): self.num_layers = num_layers self.keep_prob = keep_prob assert num_units % 4 == 0, 'bad performance for units size not % 4' self.num_units = num_units self.is_train = is_train self.scope=scope self.share_dropout = share_dropout self.dropout_mask_fw = [None] * num_layers self.dropout_mask_bw = [None] * num_layers self.train_init_state = train_init_state self.init_fw = [None] * num_layers self.init_bw = [None] * num_layers self.state = None def set_dropout_mask(self, mask_fw, mask_bw): self.dropout_mask_fw = mask_fw self.dropout_mask_bw = mask_bw def set_init_states(self, init_fw, init_bw): self.init_fw = init_fw self.init_bw = init_bw def reset_init_states(self): self.init_fw = [None] * self.num_layers self.init_bw = [None] * self.num_layers def encode(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): if emb is not None: inputs = tf.nn.embedding_lookup(emb, inputs) outputs = [tf.transpose(inputs, [1, 0, 2])] #states = [] keep_prob = self.keep_prob num_units = self.num_units is_train = self.is_train with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE): for layer in range(self.num_layers): input_size_ = melt.get_shape(inputs, -1) if layer == 0 else 2 * num_units batch_size = melt.get_batch_size(inputs) with tf.variable_scope("fw_{}".format(layer)): gru_fw = tf.contrib.cudnn_rnn.CudnnGRU(num_layers=1, num_units=num_units) if not self.share_dropout: # mode is None since by define mask.. is already recurrent mode mask_fw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) else: if self.dropout_mask_fw[layer] is None: mask_fw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) self.dropout_mask_fw[layer] = mask_fw else: mask_fw = self.dropout_mask_fw[layer] if self.train_init_state: if self.init_fw[layer] is None: self.init_fw[layer] = (tf.tile(tf.get_variable("init_state", [1, 1, num_units], tf.float32, tf.zeros_initializer()), [1, batch_size, 1]),) out_fw, state_fw = gru_fw(outputs[-1] * mask_fw, self.init_fw[layer]) with tf.variable_scope("bw_{}".format(layer)): gru_bw = tf.contrib.cudnn_rnn.CudnnGRU(num_layers=1, num_units=num_units) if not self.share_dropout: mask_bw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) else: if self.dropout_mask_bw[layer] is None: mask_bw = dropout(tf.ones([1, batch_size, input_size_], dtype=tf.float32), keep_prob=keep_prob, is_train=is_train, mode=None) self.dropout_mask_bw[layer] = mask_bw else: mask_bw = self.dropout_mask_bw[layer] inputs_bw = tf.reverse_sequence( outputs[-1] * mask_bw, seq_lengths=seq_len, seq_dim=0, batch_dim=1) if self.train_init_state: if self.init_bw[layer] is None: self.init_bw[layer] = (tf.tile(tf.get_variable("init_state", [1, 1, num_units], tf.float32, tf.zeros_initializer()), [1, batch_size, 1]),) out_bw, state_bw = gru_bw(inputs_bw, self.init_bw[layer]) out_bw = tf.reverse_sequence( out_bw, seq_lengths=seq_len, seq_dim=0, batch_dim=1) outputs.append(tf.concat([out_fw, out_bw], axis=2)) #states.append(tf.concat([state_fw, state_bw], axis=-1)) if concat_layers: res = tf.concat(outputs[1:], axis=2) #state = tf.concat(states, axis=-1) else: res = outputs[-1] #state = states[-1] res = tf.transpose(res, [1, 0, 2]) #state = tf.squeeze(state) #state = tf.reshape(state, [-1, num_units * 2 * self.num_layers]) #res = encode_outputs(res, output_method=output_method, sequence_length=seq_len, state=state) res = encode_outputs(res, output_method=output_method, sequence_length=seq_len) self.state = (state_fw, state_bw) return res def __call__(self, inputs, seq_len, emb=None, concat_layers=True, output_method=OutputMethod.all): return self.encode(inputs, seq_len, emb, concat_layers, output_method) # else: # logging.warning('using native_gru instead of cudnn due to low tf version then 1.5') # CudnnGru = NativeGru class NullEncoder(): def encode(self, inputs, sequence_length, output_method='all'): return encode_outputs(inputs, sequence_length, output_method) # TODO move from rnn to general lib like ops or layers # TODO add support for top_k in addtion to max pooling # https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge/discussion/52526#299619 # # def _top_k(x): # x = tf.transpose(x, [0, 2, 1]) # k_max = tf.nn.top_k(x, k=top_k) # return tf.reshape(k_max[0], (-1, 2 * num_filters * top_k)) def encode_outputs(outputs, sequence_length=None, output_method=OutputMethod.last, state=None, attention_hidden_size=128, window_size=3): if output_method == OutputMethod.state: assert state is not None return state #--seems slower convergence and not good result when only using last output, so change to use sum if output_method == OutputMethod.sum: return tf.reduce_sum(outputs, 1) elif output_method == OutputMethod.masked_sum: return melt.sum_pooling(outputs, sequence_length) elif output_method == OutputMethod.max: assert sequence_length is not None #below not work.. sequence is different for each row instance #return tf.reduce_max(outputs[:, :sequence_length, :], 1) #return tf.reduce_max(outputs, 1) #not exclude padding embeddings #return tf.reduce_max(tf.abs(outputs), 1) return melt.max_pooling(outputs, sequence_length) elif output_method == OutputMethod.argmax: assert sequence_length is not None #return tf.argmax(outputs[:, :sequence_length, :], 1) #return tf.argmax(outputs, 1) #return tf.argmax(tf.abs(outputs), 1) return melt.argmax_pooling(outputs, sequence_length) elif output_method == OutputMethod.mean: assert sequence_length is not None return tf.reduce_sum(outputs, 1) / tf.to_float(tf.expand_dims(sequence_length, 1)) elif output_method == OutputMethod.masked_mean: return melt.mean_pooling(outputs, sequence_length) elif output_method == OutputMethod.last: #TODO actually return state.h is last revlevant? return dynamic_last_relevant(outputs, sequence_length) elif output_method == OutputMethod.first: return outputs[:, 0, :] elif output_method == OutputMethod.attention: logging.info('attention_hidden_size:', attention_hidden_size) encoding, alphas = melt.layers.self_attention(outputs, sequence_length, attention_hidden_size) tf.add_to_collection('self_attention', alphas) return encoding elif output_method == OutputMethod.hier: return melt.hier_pooling(outputs, sequence_length, window_size=window_size) else: # all return outputs def forward_encode(cell, inputs, sequence_length, initial_state=None, dtype=None, output_method=OutputMethod.last): outputs, state = tf.nn.dynamic_rnn( cell, inputs, initial_state=initial_state, dtype=dtype, sequence_length=sequence_length) return encode_outputs(outputs, sequence_length, output_method), state def backward_encode(cell, inputs, sequence_length, initial_state=None, dtype=None, output_method=OutputMethod.last): outputs, state = tf.nn.dynamic_rnn( cell, tf.reverse_sequence(inputs, sequence_length, 1), initial_state=initial_state, dtype=dtype, sequence_length=sequence_length) return encode_outputs(outputs, sequence_length, output_method), state from tensorflow.python.ops import array_ops from tensorflow.python.ops import rnn from tensorflow.python.ops import variable_scope as vs def stack_bidirectional_dynamic_rnn(cells_fw, cells_bw, inputs, initial_states_fw=None, initial_states_bw=None, dtype=None, sequence_length=None, parallel_iterations=None, time_major=False, scope=None): """Creates a dynamic bidirectional recurrent neural network. Stacks several bidirectional rnn layers. The combined forward and backward layer outputs are used as input of the next layer. tf.bidirectional_rnn does not allow to share forward and backward information between layers. The input_size of the first forward and backward cells must match. The initial state for both directions is zero and no intermediate states are returned. Args: cells_fw: List of instances of RNNCell, one per layer, to be used for forward direction. cells_bw: List of instances of RNNCell, one per layer, to be used for backward direction. inputs: The RNN inputs. this must be a tensor of shape: `[batch_size, max_time, ...]`, or a nested tuple of such elements. initial_states_fw: (optional) A list of the initial states (one per layer) for the forward RNN. Each tensor must has an appropriate type and shape `[batch_size, cell_fw.state_size]`. initial_states_bw: (optional) Same as for `initial_states_fw`, but using the corresponding properties of `cells_bw`. dtype: (optional) The data type for the initial state. Required if either of the initial states are not provided. sequence_length: (optional) An int32/int64 vector, size `[batch_size]`, containing the actual lengths for each of the sequences. parallel_iterations: (Default: 32). The number of iterations to run in parallel. Those operations which do not have any temporal dependency and can be run in parallel, will be. This parameter trades off time for space. Values >> 1 use more memory but take less time, while smaller values use less memory but computations take longer. time_major: The shape format of the inputs and outputs Tensors. If true, these Tensors must be shaped [max_time, batch_size, depth]. If false, these Tensors must be shaped [batch_size, max_time, depth]. Using time_major = True is a bit more efficient because it avoids transposes at the beginning and end of the RNN calculation. However, most TensorFlow data is batch-major, so by default this function accepts input and emits output in batch-major form. scope: VariableScope for the created subgraph; defaults to None. Returns: A tuple (outputs, output_state_fw, output_state_bw) where: outputs: Output `Tensor` shaped: `batch_size, max_time, layers_output]`. Where layers_output are depth-concatenated forward and backward outputs. output_states_fw is the final states, one tensor per layer, of the forward rnn. output_states_bw is the final states, one tensor per layer, of the backward rnn. Raises: TypeError: If `cell_fw` or `cell_bw` is not an instance of `RNNCell`. ValueError: If inputs is `None`. """ if not cells_fw: raise ValueError("Must specify at least one fw cell for BidirectionalRNN.") if not cells_bw: raise ValueError("Must specify at least one bw cell for BidirectionalRNN.") if not isinstance(cells_fw, list): raise ValueError("cells_fw must be a list of RNNCells (one per layer).") if not isinstance(cells_bw, list): raise ValueError("cells_bw must be a list of RNNCells (one per layer).") if len(cells_fw) != len(cells_bw): raise ValueError("Forward and Backward cells must have the same depth.") if (initial_states_fw is not None and (not isinstance(initial_states_fw, list) or len(initial_states_fw) != len(cells_fw))): raise ValueError( "initial_states_fw must be a list of state tensors (one per layer).") if (initial_states_bw is not None and (not isinstance(initial_states_bw, list) or len(initial_states_bw) != len(cells_bw))): raise ValueError( "initial_states_bw must be a list of state tensors (one per layer).") states_fw = [] states_bw = [] prev_layer = inputs outputs_list = [prev_layer] with vs.variable_scope(scope or "stack_bidirectional_rnn"): for i, (cell_fw, cell_bw) in enumerate(zip(cells_fw, cells_bw)): initial_state_fw = None initial_state_bw = None if initial_states_fw: initial_state_fw = initial_states_fw[i] if initial_states_bw: initial_state_bw = initial_states_bw[i] with vs.variable_scope("cell_%d" % i): outputs, (state_fw, state_bw) = rnn.bidirectional_dynamic_rnn( cell_fw, cell_bw, prev_layer, initial_state_fw=initial_state_fw, initial_state_bw=initial_state_bw, sequence_length=sequence_length, parallel_iterations=parallel_iterations, dtype=dtype, time_major=time_major) # Concat the outputs to create the new input. prev_layer = array_ops.concat(outputs, 2) outputs_list.append(prev_layer) states_fw.append(state_fw) states_bw.append(state_bw) return tf.concat(outputs_list[1:], -1), tuple(states_fw), tuple(states_bw) def bidirectional_encode(cell_fw, cell_bw, inputs, sequence_length, initial_state_fw=None, initial_state_bw=None, dtype=None, output_method=OutputMethod.last, use_sum=False, is_stack=False, is_stack_concat_layers=False): # if cell_bw is None: # cell_bw = copy.deepcopy(cell_fw) assert cell_fw is not None assert cell_bw is not None if initial_state_bw is None: initial_state_bw = initial_state_fw if melt.is_cudnn_cell(cell_fw): outputs = [tf.transpose(inputs, [1, 0, 2])] for layer in range(cell_fw.num_layers): with tf.variable_scope("fw_{}".format(layer)): out_fw, state_fw = cell_fw(outputs[-1]) with tf.variable_scope("bw_{}".format(layer)): inputs_bw = tf.reverse_sequence( outputs[-1], seq_lengths=sequence_length, seq_dim=0, batch_dim=1) out_bw, state_bw = cell_bw(inputs_bw) out_bw = tf.reverse_sequence( out_bw, seq_lengths=sequence_length, seq_dim=0, batch_dim=1) outputs.append(tf.concat([out_fw, out_bw], axis=2)) res = tf.concat(outputs[1:], axis=2) print('-------------res, state_fw', res, state_fw) #print(tf.split(state_fw, cell_fw.num_layers)) #return res, tf.split(state_fw, cell_fw.num_layers) return res, state_fw if not is_stack: outputs, states = tf.nn.bidirectional_dynamic_rnn( cell_fw=cell_fw, cell_bw=cell_bw, inputs=inputs, initial_state_fw=initial_state_fw, initial_state_bw=initial_state_bw, dtype=dtype, sequence_length=sequence_length) output_fws, output_bws = outputs output_forward = encode_outputs(output_fws, sequence_length, output_method) output_backward = encode_outputs(output_bws, sequence_length, output_method) if output_method == OutputMethod.sum: output_backward = tf.reduce_sum(output_bws, 1) if use_sum: output = output_forward + output_backward else: output = tf.concat([output_forward, output_backward], -1) else: if not is_stack_concat_layers: func = tf.contrib.rnn.stack_bidirectional_dynamic_rnn else: func = stack_bidirectional_dynamic_rnn output, states_fw, states_bw = func( cells_fw=melt.unpack_cell(cell_fw), cells_bw=melt.unpack_cell(cell_bw), inputs=inputs, initial_states_fw=initial_state_fw, initial_states_bw=initial_state_bw, dtype=dtype, sequence_length=sequence_length) states = (states_fw, states_bw) output = encode_outputs(output, sequence_length, output_method) #TODO state[0] ? return output, states[0] def encode(cell, inputs, sequence_length=None, initial_state=None, cell_bw=None, inital_state_bw=None, dtype=None, encode_method=EncodeMethod.forward, output_method=OutputMethod.last): assert sequence_length is not None, 'bidrecional encoding need seq len, for safe all pass sequence_length !' #needed for bidirectional_dynamic_rnn and backward method #without it Input 'seq_lengths' of 'ReverseSequence' Op has type int32 that does not match expected type of int64. #int tf.reverse_sequence seq_lengths: A `Tensor` of type `int64`. if initial_state is None and dtype is None: dtype = tf.float32 sequence_length = tf.cast(sequence_length, tf.int64) if encode_method == EncodeMethod.forward: return forward_encode(cell, inputs, sequence_length, initial_state, dtype, output_method) elif encode_method == EncodeMethod.backward: return backward_encode(cell, inputs, sequence_length, initial_state, dtype, output_method) elif encode_method == EncodeMethod.bidirectional: return bidirectional_encode(cell, cell_bw, inputs, sequence_length, initial_state, inital_state_bw, dtype, output_method) elif encode_method == EncodeMethod.stack_bidirectional: return bidirectional_encode(cell, cell_bw, inputs, sequence_length, initial_state, inital_state_bw, dtype, output_method, is_stack=True) elif encode_method == EncodeMethod.stack_bidirectional_concat_layers: return bidirectional_encode(cell, cell_bw, inputs, sequence_length, initial_state, inital_state_bw, dtype, output_method, is_stack=True, is_stack_concat_layers=True) elif encode_method == EncodeMethod.bidirectional_sum: return bidirectional_encode(cell, cell_bw, inputs, sequence_length, initial_state, inital_state_bw, dtype, output_method, use_sum=True) else: raise ValueError('Unsupported rnn encode method:', encode_method) ================================================ FILE: utils/melt/seq2seq/README.md ================================================ similar as contrib.seq2seq copy from it modify a bit for my applications try to use contrib.seq2seq directly if it meets your needs ================================================ FILE: utils/melt/seq2seq/__init__.py ================================================ #import tensorflow as tf #------------new interface from melt.seq2seq.decoder import * from melt.seq2seq.helper import * from melt.seq2seq.basic_decoder import * from melt.seq2seq.logprobs_decoder import * from melt.seq2seq.beam_search_decoder import * from melt.seq2seq.attention_wrapper import * #------------old interface, depreciated from melt.seq2seq.attention_decoder_fn import attention_decoder_fn_inference from melt.seq2seq.attention_decoder_fn import attention_decoder_fn_train from melt.seq2seq.attention_decoder_fn import prepare_attention from melt.seq2seq.loss import * from melt.seq2seq.decoder_fn import * from melt.seq2seq.beam_decoder_fn import * from melt.seq2seq.attention_decoder_fn import * from melt.seq2seq.seq2seq import * from melt.seq2seq.beam_decoder import * from melt.seq2seq.beam_search import * ================================================ FILE: utils/melt/seq2seq/attention_decoder_fn.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Attention-based decoder functions. depreciated using attention_wrapper instead """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.contrib.layers.python.layers import layers from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.framework import dtypes from tensorflow.python.framework import function from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import variable_scope from tensorflow.python.util import nest from tensorflow.python.ops import tensor_array_ops __all__ = [ "attention_decoder_fn_train", "attention_decoder_fn_inference", "init_attention" ] import tensorflow as tf import melt def attention_decoder_fn_train(encoder_state, attention_keys, attention_values, attention_score_fn, attention_construct_fn, input_text=None, vocab_size=None, name=None): """Attentional decoder function for `dynamic_rnn_decoder` during training. The `attention_decoder_fn_train` is a training function for an attention-based sequence-to-sequence model. It should be used when `dynamic_rnn_decoder` is in the training mode. The `attention_decoder_fn_train` is called with a set of the user arguments and returns the `decoder_fn`, which can be passed to the `dynamic_rnn_decoder`, such that ``` dynamic_fn_train = attention_decoder_fn_train(encoder_state) outputs_train, state_train = dynamic_rnn_decoder( decoder_fn=dynamic_fn_train, ...) ``` Further usage can be found in the `kernel_tests/seq2seq_test.py`. Args: encoder_state: The encoded state to initialize the `dynamic_rnn_decoder`. attention_keys: to be compared with target states. attention_values: to be used to construct context vectors. attention_score_fn: to compute similarity between key and target states. attention_construct_fn: to build attention states. name: (default: `None`) NameScope for the decoder function; defaults to "simple_decoder_fn_train" Returns: A decoder function with the required interface of `dynamic_rnn_decoder` intended for training. """ with ops.name_scope(name, "attention_decoder_fn_train", [ encoder_state, attention_keys, attention_values, attention_score_fn, attention_construct_fn ]): pass def decoder_fn(time, cell_state, cell_input, cell_output, context_state): """Decoder function used in the `dynamic_rnn_decoder` for training. Args: time: positive integer constant reflecting the current timestep. cell_state: state of RNNCell. cell_input: input provided by `dynamic_rnn_decoder`. cell_output: output of RNNCell. context_state: context state provided by `dynamic_rnn_decoder`. Returns: A tuple (done, next state, next input, emit output, next context state) where: done: `None`, which is used by the `dynamic_rnn_decoder` to indicate that `sequence_lengths` in `dynamic_rnn_decoder` should be used. next state: `cell_state`, this decoder function does not modify the given state. next input: `cell_input`, this decoder function does not modify the given input. The input could be modified when applying e.g. attention. emit output: `cell_output`, this decoder function does not modify the given output. next context state: `context_state`, this decoder function does not modify the given context state. The context state could be modified when applying e.g. beam search. """ with ops.name_scope( name, "attention_decoder_fn_train", [time, cell_state, cell_input, cell_output, context_state]): #input_text = None if cell_state is None: # first call, return encoder_state cell_state = encoder_state # init attention attention = init_attention(encoder_state) if input_text is not None: #cell_output = array_ops.zeros([vocab_size], dtype=dtypes.float32) context_state = tensor_array_ops.TensorArray( dtype=tf.float32, size=0, dynamic_size=True, infer_shape=False) else: # construct attention attention, scores, alignments = attention_construct_fn(cell_output, attention_keys, attention_values) #attention, scores, alignments = attention_construct_fn(cell_state.h, attention_keys, # attention_values) cell_output = attention if input_text is not None: #encoder_info = nest.flatten(encoder_state)[0] #batch_size = encoder_info.get_shape()[0].value #if batch_size is None: # batch_size = array_ops.shape(encoder_info)[0] ##ref = tf.Variable(array_ops.zeros([batch_size, vocab_size], dtype=dtypes.float32)) ##https://github.com/tensorflow/tensorflow/issues/8604 #with tf.control_dependencies(None): ##TODO... must fix batch_size right now # cell_output_ = tf.Variable(array_ops.zeros([256, vocab_size], dtype=dtypes.float32)) #actually should use tf.scatter_nd, anyway this attention is deprecated! cell_output_ = tf.get_variable("cell_output_", [256, vocab_size], dtype=dtypes.float32, initializer=tf.zeros_initializer()) #cell_output_ = tf.get_variable("cell_output_", [256, vocab_size], dtype=dtypes.float32, initializer=tf.ones_initializer()) #cell_output_.assign(array_ops.zeros([256, vocab_size])) cell_output_ = tf.assign(cell_output_, array_ops.zeros([256, vocab_size])) indices = melt.batch_values_to_indices(tf.to_int32(input_text)) updates = scores #updates = alignments cell_output_ = tf.scatter_nd_add(cell_output_, indices, updates) cell_output_ = tf.stop_gradient(cell_output_) ##print(cell_output, vocab_size) ##cell_output = attention ##cell_output = array_ops.zeros([batch_size, vocab_size], dtype=dtypes.float32) ##cell_output = scores #cell_output = tf.convert_to_tensor(cell_output) context_state = context_state.write(time - 1, cell_output_) #context_state = context_state.write(time - 1, scores) # combine cell_input and attention next_input = array_ops.concat([cell_input, attention], 1) #next_input = cell_input return (None, cell_state, next_input, cell_output, context_state) return decoder_fn def attention_decoder_fn_inference(output_fn, first_input, encoder_state, attention_keys, attention_values, attention_score_fn, attention_construct_fn, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, input_text=None, dtype=dtypes.int32, name=None): """Attentional decoder function for `dynamic_rnn_decoder` during inference. The `attention_decoder_fn_inference` is a simple inference function for a sequence-to-sequence model. It should be used when `dynamic_rnn_decoder` is in the inference mode. The `attention_decoder_fn_inference` is called with user arguments and returns the `decoder_fn`, which can be passed to the `dynamic_rnn_decoder`, such that ``` dynamic_fn_inference = attention_decoder_fn_inference(...) outputs_inference, state_inference = dynamic_rnn_decoder( decoder_fn=dynamic_fn_inference, ...) ``` Further usage can be found in the `kernel_tests/seq2seq_test.py`. Args: output_fn: An output function to project your `cell_output` onto class logits. An example of an output function; ``` tf.variable_scope("decoder") as varscope output_fn = lambda x: layers.linear(x, num_decoder_symbols, scope=varscope) outputs_train, state_train = seq2seq.dynamic_rnn_decoder(...) logits_train = output_fn(outputs_train) varscope.reuse_variables() logits_inference, state_inference = seq2seq.dynamic_rnn_decoder( output_fn=output_fn, ...) ``` If `None` is supplied it will act as an identity function, which might be wanted when using the RNNCell `OutputProjectionWrapper`. encoder_state: The encoded state to initialize the `dynamic_rnn_decoder`. attention_keys: to be compared with target states. attention_values: to be used to construct context vectors. attention_score_fn: to compute similarity between key and target states. attention_construct_fn: to build attention states. embeddings: The embeddings matrix used for the decoder sized `[num_decoder_symbols, embedding_size]`. start_of_sequence_id: The start of sequence ID in the decoder embeddings. end_of_sequence_id: The end of sequence ID in the decoder embeddings. maximum_length: The maximum allowed of time steps to decode. num_decoder_symbols: The number of classes to decode at each time step. dtype: (default: `dtypes.int32`) The default data type to use when handling integer objects. name: (default: `None`) NameScope for the decoder function; defaults to "attention_decoder_fn_inference" Returns: A decoder function with the required interface of `dynamic_rnn_decoder` intended for inference. """ with ops.name_scope(name, "attention_decoder_fn_inference", [ output_fn, first_input, encoder_state, attention_keys, attention_values, attention_score_fn, attention_construct_fn, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, dtype ]): first_input = ops.convert_to_tensor(first_input, dtypes.float32) end_of_sequence_id = ops.convert_to_tensor(end_of_sequence_id, dtype) maximum_length = ops.convert_to_tensor(maximum_length, dtype) num_decoder_symbols = ops.convert_to_tensor(num_decoder_symbols, dtype) encoder_info = nest.flatten(encoder_state)[0] batch_size = encoder_info.get_shape()[0].value if output_fn is None: output_fn = lambda x: x if batch_size is None: batch_size = array_ops.shape(encoder_info)[0] def decoder_fn(time, cell_state, cell_input, cell_output, context_state): """Decoder function used in the `dynamic_rnn_decoder` for inference. The main difference between this decoder function and the `decoder_fn` in `attention_decoder_fn_train` is how `next_cell_input` is calculated. In decoder function we calculate the next input by applying an argmax across the feature dimension of the output from the decoder. This is a greedy-search approach. (Bahdanau et al., 2014) & (Sutskever et al., 2014) use beam-search instead. Args: time: positive integer constant reflecting the current timestep. cell_state: state of RNNCell. cell_input: input provided by `dynamic_rnn_decoder`. cell_output: output of RNNCell. context_state: context state provided by `dynamic_rnn_decoder`. Returns: A tuple (done, next state, next input, emit output, next context state) where: done: A boolean vector to indicate which sentences has reached a `end_of_sequence_id`. This is used for early stopping by the `dynamic_rnn_decoder`. When `time>=maximum_length` a boolean vector with all elements as `true` is returned. next state: `cell_state`, this decoder function does not modify the given state. next input: The embedding from argmax of the `cell_output` is used as `next_input`. emit output: If `output_fn is None` the supplied `cell_output` is returned, else the `output_fn` is used to update the `cell_output` before calculating `next_input` and returning `cell_output`. next context state: `context_state`, this decoder function does not modify the given context state. The context state could be modified when applying e.g. beam search. Raises: ValueError: if cell_input is not None. """ with ops.name_scope( name, "attention_decoder_fn_inference", [time, cell_state, cell_input, cell_output, context_state]): if cell_input is not None: raise ValueError("Expected cell_input to be None, but saw: %s" % cell_input) if cell_output is None: # invariant that this is time == 0 next_input_id = None done = array_ops.zeros([batch_size,], dtype=dtypes.bool) cell_state = encoder_state cell_output = array_ops.zeros( [num_decoder_symbols], dtype=dtypes.float32) context_state = tensor_array_ops.TensorArray( #dtype=dtype, tensor_array_name="greedy_path", size=maximum_length + 1, infer_shape=False) dtype=dtype, tensor_array_name="greedy_attention_path", size=0, dynamic_size=True, infer_shape=False) # init attention attention = init_attention(encoder_state) else: # construct attention #NOTICE since dynamic.. below attention_construct_fn will be called building graph for only once attention, scores, alignments = attention_construct_fn(cell_output, attention_keys, attention_values) #attention, scores, alignments = attention_construct_fn(cell_state.h, attention_keys, # attention_values) if input_text is None: cell_output = attention cell_output = output_fn(cell_output) # logits next_input_id = math_ops.cast(math_ops.argmax(cell_output, 1), dtype=dtype) else: #encoder_info = nest.flatten(encoder_state)[0] #vocab_size = num_decoder_symbols ##ref = tf.Variable(array_ops.zeros([batch_size, vocab_size], dtype=dtypes.float32)) ##https://github.com/tensorflow/tensorflow/issues/8604 #with tf.control_dependencies(None): # #TODO... must fix batch_size right now # cell_output = tf.Variable(array_ops.zeros([256, vocab_size], dtype=dtypes.float32)) #indices = melt.batch_values_to_indices(tf.to_int32(input_text)) #updates = scores #tf.scatter_nd_add(cell_output, indices, updates) ##print(cell_output, vocab_size) ##cell_output = attention ##cell_output = array_ops.zeros([batch_size, vocab_size], dtype=dtypes.float32) ##cell_output = scores #cell_output = tf.convert_to_tensor(cell_output) #cell_output = array_ops.zeros( # [256, num_decoder_symbols], dtype=dtypes.float32) cell_output = attention cell_output = output_fn(cell_output) # logit #next_input_id = math_ops.cast(math_ops.argmax(cell_output, 1), dtype=dtype) next_input_id = melt.gather2d(input_text, math_ops.cast(math_ops.argmax(scores, 1), dtype=dtype)) next_input_id = tf.to_int32(next_input_id) done = math_ops.equal(next_input_id, end_of_sequence_id) context_state = context_state.write(time - 1, next_input_id) # combine cell_input and attention cell_input = array_ops.gather(embeddings, next_input_id) if next_input_id is not None else first_input next_input = array_ops.concat([cell_input, attention], 1) #next_input = cell_input # if time == maxlen, return all true vector done = control_flow_ops.cond( math_ops.equal(time, maximum_length), lambda: array_ops.ones([batch_size,], dtype=dtypes.bool), lambda: done) return (done, cell_state, next_input, cell_output, context_state) return decoder_fn import tensorflow as tf ## Helper functions ## def prepare_attention(attention_states, attention_option, num_units, reuse=False): """Prepare keys/values/functions for attention. Args: attention_states: hidden states to attend over. attention_option: how to compute attention, either "luong" or "bahdanau". num_units: hidden state dimension. reuse: whether to reuse variable scope. Returns: attention_keys: to be compared with target states. attention_values: to be used to construct context vectors. attention_score_fn: to compute similarity between key and target states. attention_construct_fn: to build attention states. """ # Prepare attention keys / values from attention_states with variable_scope.variable_scope("attention_keys", reuse=reuse) as scope: attention_keys = layers.linear( attention_states, num_units, biases_initializer=None, scope=scope) #well here do not need ad scope reuse since you get attention_keys and use it not call this linear again, #attention_construct_fn is different, since you call that function each step during loop attention_values = attention_states # Attention score function attention_score_fn = _create_attention_score_fn("attention_score", num_units, attention_option, reuse) # Attention construction function attention_construct_fn = _create_attention_construct_fn("attention_construct", num_units, attention_score_fn, reuse) return (attention_keys, attention_values, attention_score_fn, attention_construct_fn) def init_attention(encoder_state): """Initialize attention. Handling both LSTM and GRU. Args: encoder_state: The encoded state to initialize the `dynamic_rnn_decoder`. Returns: attn: initial zero attention vector. """ # Multi- vs single-layer # TODO(thangluong): is this the best way to check? if isinstance(encoder_state, tuple): top_state = encoder_state[-1] else: top_state = encoder_state # LSTM vs GRU if isinstance(top_state, rnn_cell_impl.LSTMStateTuple): attn = array_ops.zeros_like(top_state.h) else: attn = array_ops.zeros_like(top_state) return attn def _create_attention_construct_fn(name, num_units, attention_score_fn, reuse): """Function to compute attention vectors. Args: name: to label variables. num_units: hidden state dimension. attention_score_fn: to compute similarity between key and target states. reuse: whether to reuse variable scope. Returns: attention_construct_fn: to build attention states. """ with variable_scope.variable_scope(name, reuse=reuse) as scope: def construct_fn(attention_query, attention_keys, attention_values): context, scores, alignments = attention_score_fn(attention_query, attention_keys, attention_values) concat_input = array_ops.concat([attention_query, context], 1) #NOTICE! here pass scope which is outside construct_fn func! so always not affected by using env scope, be like #seq2seq/main/decode/attention_construct/weights in rnn_decoder.py not seq2seq/main/decode/rnn/loop_function/weights in beam_decoder.py attention = layers.linear( concat_input, num_units, biases_initializer=None, scope=scope) #add this to make it safe using in loop, if only used in dynamic decode do not need this since only call above linear once #this kind of witting then add reuse seems safe and elegant #http://stackoverflow.com/questions/38545362/tensorflow-variable-scope-reuse-if-variable-exists scope.reuse_variables() return attention, scores, alignments return construct_fn # keys: [batch_size, attention_length, attn_size] # query: [batch_size, 1, attn_size] # return weights [batch_size, attention_length] #@function.Defun(func_name="attn_add_fun", noinline=True) def _attn_add_fun(v, keys, query): return math_ops.reduce_sum(v * math_ops.tanh(keys + query), [2]) #TODO: with below will cause load meta graph fail, see textsum/predict.py #@function.Defun(func_name="attn_mul_fun", noinline=True) def _attn_mul_fun(keys, query): return math_ops.reduce_sum(keys * query, [2]) def _create_attention_score_fn(name, num_units, attention_option, reuse, dtype=dtypes.float32): """Different ways to compute attention scores. Args: name: to label variables. num_units: hidden state dimension. attention_option: how to compute attention, either "luong" or "bahdanau". "bahdanau": additive (Bahdanau et al., ICLR'2015) "luong": multiplicative (Luong et al., EMNLP'2015) reuse: whether to reuse variable scope. dtype: (default: `dtypes.float32`) data type to use. Returns: attention_score_fn: to compute similarity between key and target states. """ with variable_scope.variable_scope(name, reuse=reuse) as scope: if attention_option == "bahdanau": query_w = variable_scope.get_variable( "attnW", [num_units, num_units], dtype=dtype) score_v = variable_scope.get_variable("attnV", [num_units], dtype=dtype) scope.reuse_variables() def attention_score_fn(query, keys, values): """Put attention masks on attention_values using attention_keys and query. Args: query: A Tensor of shape [batch_size, num_units]. keys: A Tensor of shape [batch_size, attention_length, num_units]. values: A Tensor of shape [batch_size, attention_length, num_units]. Returns: context_vector: A Tensor of shape [batch_size, num_units]. Raises: ValueError: if attention_option is neither "luong" or "bahdanau". """ if attention_option == "bahdanau": # transform query query = math_ops.matmul(query, query_w) # reshape query: [batch_size, 1, num_units] query = array_ops.reshape(query, [-1, 1, num_units]) # attn_fun scores = _attn_add_fun(score_v, keys, query) elif attention_option == "luong": # reshape query: [batch_size, 1, num_units] query = array_ops.reshape(query, [-1, 1, num_units]) # attn_fun scores = _attn_mul_fun(keys, query) else: raise ValueError("Unknown attention option %s!" % attention_option) # Compute alignment weights # scores: [batch_size, length] # alignments: [batch_size, length] # TODO(thangluong): not normalize over padding positions. tf.add_to_collection('attention_scores', scores) alignments = nn_ops.softmax(scores) tf.add_to_collection('attention_alignments', alignments) #will show 2 times since in outgraph decoding, first time you pass batch_size 1 then batch_size beam_size #but in train evaluate mode.. will add many times! #print('attention_alignments', tf.get_collection('attention_alignments')) # Now calculate the attention-weighted vector. alignments = array_ops.expand_dims(alignments, 2) context_vector = math_ops.reduce_sum(alignments * values, [1]) context_vector.set_shape([None, num_units]) return context_vector, scores, alignments return attention_score_fn ================================================ FILE: utils/melt/seq2seq/attention_wrapper.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A powerful dynamic attention wrapper object.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections import math from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.layers import base as layers_base from tensorflow.python.layers import core as layers_core from tensorflow.python.ops import array_ops from tensorflow.python.ops import check_ops from tensorflow.python.ops import init_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.ops import tensor_array_ops from tensorflow.python.ops import variable_scope from tensorflow.python.util import nest from tensorflow.contrib.layers.python.layers import layers __all__ = [ "AttentionMechanism", "AttentionWrapper", "AttentionWrapperState", "LuongAttention", "BahdanauAttention", "CoverageBahdanauAttention", "CoverageV2BahdanauAttention", "hardmax", "PointerAttentionWrapperState", "PointerAttentionWrapper", "ShowTellAttentionWrapperState", "ShowTellAttentionWrapper", "TwoLayersAttentionWrapperState", "TwoLayersAttentionWrapper", "CoverageAttentionWrapperState", "CoverageAttentionWrapper", ] _zero_state_tensors = rnn_cell_impl._zero_state_tensors # pylint: disable=protected-access class AttentionMechanism(object): pass def _prepare_memory(memory, memory_sequence_length, check_inner_dims_defined): """Convert to tensor and possibly mask `memory`. Args: memory: `Tensor`, shaped `[batch_size, max_time, ...]`. memory_sequence_length: `int32` `Tensor`, shaped `[batch_size]`. check_inner_dims_defined: Python boolean. If `True`, the `memory` argument's shape is checked to ensure all but the two outermost dimensions are fully defined. Returns: A (possibly masked), checked, new `memory`. Raises: ValueError: If `check_inner_dims_defined` is `True` and not `memory.shape[2:].is_fully_defined()`. """ memory = nest.map_structure( lambda m: ops.convert_to_tensor(m, name="memory"), memory) if memory_sequence_length is not None: memory_sequence_length = ops.convert_to_tensor( memory_sequence_length, name="memory_sequence_length") if check_inner_dims_defined: def _check_dims(m): if not m.get_shape()[2:].is_fully_defined(): raise ValueError("Expected memory %s to have fully defined inner dims, " "but saw shape: %s" % (m.name, m.get_shape())) nest.map_structure(_check_dims, memory) if memory_sequence_length is None: seq_len_mask = None else: seq_len_mask = array_ops.sequence_mask( memory_sequence_length, maxlen=array_ops.shape(nest.flatten(memory)[0])[1], dtype=nest.flatten(memory)[0].dtype) seq_len_batch_size = ( memory_sequence_length.shape[0].value or array_ops.shape(memory_sequence_length)[0]) def _maybe_mask(m, seq_len_mask): rank = m.get_shape().ndims rank = rank if rank is not None else array_ops.rank(m) extra_ones = array_ops.ones(rank - 2, dtype=dtypes.int32) m_batch_size = m.shape[0].value or array_ops.shape(m)[0] if memory_sequence_length is not None: message = ("memory_sequence_length and memory tensor batch sizes do not " "match.") with ops.control_dependencies([ check_ops.assert_equal( seq_len_batch_size, m_batch_size, message=message)]): seq_len_mask = array_ops.reshape( seq_len_mask, array_ops.concat((array_ops.shape(seq_len_mask), extra_ones), 0)) return m * seq_len_mask else: return m return nest.map_structure(lambda m: _maybe_mask(m, seq_len_mask), memory) def _maybe_mask_score(score, memory_sequence_length, score_mask_value): if memory_sequence_length is None: return score message = ("All values in memory_sequence_length must greater than zero.") with ops.control_dependencies( [check_ops.assert_positive(memory_sequence_length, message=message)]): score_mask = array_ops.sequence_mask( memory_sequence_length, maxlen=array_ops.shape(score)[1]) score_mask_values = score_mask_value * array_ops.ones_like(score) return array_ops.where(score_mask, score, score_mask_values) class _BaseAttentionMechanism(AttentionMechanism): """A base AttentionMechanism class providing common functionality. Common functionality includes: 1. Storing the query and memory layers. 2. Preprocessing and storing the memory. """ def __init__(self, query_layer, memory, probability_fn, memory_sequence_length=None, memory_layer=None, check_inner_dims_defined=True, score_mask_value=float("-inf"), name=None): """Construct base AttentionMechanism class. Args: query_layer: Callable. Instance of `tf.layers.Layer`. The layer's depth must match the depth of `memory_layer`. If `query_layer` is not provided, the shape of `query` must match that of `memory_layer`. memory: The memory to query; usually the output of an RNN encoder. This tensor should be shaped `[batch_size, max_time, ...]`. probability_fn: A `callable`. Converts the score and previous alignments to probabilities. Its signature should be: `probabilities = probability_fn(score, previous_alignments)`. memory_sequence_length (optional): Sequence lengths for the batch entries in memory. If provided, the memory tensor rows are masked with zeros for values past the respective sequence lengths. memory_layer: Instance of `tf.layers.Layer` (may be None). The layer's depth must match the depth of `query_layer`. If `memory_layer` is not provided, the shape of `memory` must match that of `query_layer`. check_inner_dims_defined: Python boolean. If `True`, the `memory` argument's shape is checked to ensure all but the two outermost dimensions are fully defined. score_mask_value: (optional): The mask value for score before passing into `probability_fn`. The default is -inf. Only used if `memory_sequence_length` is not None. name: Name to use when creating ops. """ if (query_layer is not None and not isinstance(query_layer, layers_base.Layer)): raise TypeError( "query_layer is not a Layer: %s" % type(query_layer).__name__) if (memory_layer is not None and not isinstance(memory_layer, layers_base.Layer)): raise TypeError( "memory_layer is not a Layer: %s" % type(memory_layer).__name__) self._query_layer = query_layer self._memory_layer = memory_layer if not callable(probability_fn): raise TypeError("probability_fn must be callable, saw type: %s" % type(probability_fn).__name__) self._probability_fn = lambda score, prev: ( # pylint:disable=g-long-lambda probability_fn( _maybe_mask_score(score, memory_sequence_length, score_mask_value), prev)) with ops.name_scope( name, "BaseAttentionMechanismInit", nest.flatten(memory)): self._values = _prepare_memory( memory, memory_sequence_length, check_inner_dims_defined=check_inner_dims_defined) self._keys = ( self.memory_layer(self._values) if self.memory_layer # pylint: disable=not-callable else self._values) self._batch_size = ( self._keys.shape[0].value or array_ops.shape(self._keys)[0]) self._alignments_size = (self._keys.shape[1].value or array_ops.shape(self._keys)[1]) @property def memory_layer(self): return self._memory_layer @property def query_layer(self): return self._query_layer @property def values(self): return self._values @property def keys(self): return self._keys @property def batch_size(self): return self._batch_size @property def alignments_size(self): return self._alignments_size def initial_alignments(self, batch_size, dtype): """Creates the initial alignment values for the `AttentionWrapper` class. This is important for AttentionMechanisms that use the previous alignment to calculate the alignment at the next time step (e.g. monotonic attention). The default behavior is to return a tensor of all zeros. Args: batch_size: `int32` scalar, the batch_size. dtype: The `dtype`. Returns: A `dtype` tensor shaped `[batch_size, alignments_size]` (`alignments_size` is the values' `max_time`). """ max_time = self._alignments_size return _zero_state_tensors(max_time, batch_size, dtype) class LuongAttention(_BaseAttentionMechanism): """Implements Luong-style (multiplicative) attention scoring. This attention has two forms. The first is standard Luong attention, as described in: Minh-Thang Luong, Hieu Pham, Christopher D. Manning. "Effective Approaches to Attention-based Neural Machine Translation." EMNLP 2015. https://arxiv.org/abs/1508.04025 The second is the scaled form inspired partly by the normalized form of Bahdanau attention. To enable the second form, construct the object with parameter `scale=True`. """ def __init__(self, num_units, memory, memory_sequence_length=None, scale=False, probability_fn=None, score_mask_value=float("-inf"), memory_layer_name='memory_layer', name="LuongAttention"): """Construct the AttentionMechanism mechanism. Args: num_units: The depth of the attention mechanism. memory: The memory to query; usually the output of an RNN encoder. This tensor should be shaped `[batch_size, max_time, ...]`. memory_sequence_length (optional): Sequence lengths for the batch entries in memory. If provided, the memory tensor rows are masked with zeros for values past the respective sequence lengths. scale: Python boolean. Whether to scale the energy term. probability_fn: (optional) A `callable`. Converts the score to probabilities. The default is @{tf.nn.softmax}. Other options include @{tf.contrib.seq2seq.hardmax} and @{tf.contrib.sparsemax.sparsemax}. Its signature should be: `probabilities = probability_fn(score)`. score_mask_value: (optional): The mask value for score before passing into `probability_fn`. The default is -inf. Only used if `memory_sequence_length` is not None. name: Name to use when creating ops. """ # For LuongAttention, we only transform the memory layer; thus # num_units **must** match expected the query depth. if probability_fn is None: probability_fn = nn_ops.softmax wrapped_probability_fn = lambda score, _: probability_fn(score) super(LuongAttention, self).__init__( query_layer=None, memory_layer=layers_core.Dense( num_units, name=memory_layer_name, _scope=memory_layer_name, use_bias=False), memory=memory, probability_fn=wrapped_probability_fn, memory_sequence_length=memory_sequence_length, score_mask_value=score_mask_value, name=name) self._num_units = num_units self._scale = scale self._name = name def __call__(self, query, previous_alignments): """Score the query based on the keys and values. Args: query: Tensor of dtype matching `self.values` and shape `[batch_size, query_depth]`. previous_alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). Returns: alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). Raises: ValueError: If `key` and `query` depths do not match. """ depth = query.get_shape()[-1] key_units = self.keys.get_shape()[-1] if depth != key_units: raise ValueError( "Incompatible or unknown inner dimensions between query and keys. " "Query (%s) has units: %s. Keys (%s) have units: %s. " "Perhaps you need to set num_units to the the keys' dimension (%s)?" % (query, depth, self.keys, key_units, key_units)) dtype = query.dtype with variable_scope.variable_scope(None, "luong_attention", [query]): ## Reshape from [batch_size, depth] to [batch_size, 1, depth] ## for matmul. query = array_ops.expand_dims(query, 1) ## Inner product along the query units dimension. ## matmul shapes: query is [batch_size, 1, depth] and ## keys is [batch_size, max_time, depth]. ## the inner product is asked to **transpose keys' inner shape** to get a ## batched matmul on: ## [batch_size, 1, depth] . [batch_size, depth, max_time] ## resulting in an output shape of: ## [batch_time, 1, max_time]. ## we then squeee out the center singleton dimension. ##score = math_ops.matmul(query, self.keys, transpose_b=True) ##score = array_ops.squeeze(score, [1]) score = math_ops.reduce_sum(self.keys * query, [2]) if self._scale: # Scalar used in weight scaling g = variable_scope.get_variable( "attention_g", dtype=dtype, initializer=1.) score = g * score #alignments = self._probability_fn(score, previous_alignments) alignments = score return alignments class BahdanauAttention(_BaseAttentionMechanism): """Implements Bahdanau-style (additive) attention. This attention has two forms. The first is Bahdanau attention, as described in: Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio. "Neural Machine Translation by Jointly Learning to Align and Translate." ICLR 2015. https://arxiv.org/abs/1409.0473 The second is the normalized form. This form is inspired by the weight normalization article: Tim Salimans, Diederik P. Kingma. "Weight Normalization: A Simple Reparameterization to Accelerate Training of Deep Neural Networks." https://arxiv.org/abs/1602.07868 To enable the second form, construct the object with parameter `normalize=True`. """ def __init__(self, num_units, memory, memory_sequence_length=None, normalize=False, probability_fn=None, score_mask_value=float("-inf"), memory_layer_name='memory_layer', name="BahdanauAttention"): """Construct the Attention mechanism. Args: num_units: The depth of the query mechanism. memory: The memory to query; usually the output of an RNN encoder. This tensor should be shaped `[batch_size, max_time, ...]`. memory_sequence_length (optional): Sequence lengths for the batch entries in memory. If provided, the memory tensor rows are masked with zeros for values past the respective sequence lengths. normalize: Python boolean. Whether to normalize the energy term. probability_fn: (optional) A `callable`. Converts the score to probabilities. The default is @{tf.nn.softmax}. Other options include @{tf.contrib.seq2seq.hardmax} and @{tf.contrib.sparsemax.sparsemax}. Its signature should be: `probabilities = probability_fn(score)`. score_mask_value: (optional): The mask value for score before passing into `probability_fn`. The default is -inf. Only used if `memory_sequence_length` is not None. name: Name to use when creating ops. """ if probability_fn is None: probability_fn = nn_ops.softmax wrapped_probability_fn = lambda score, _: probability_fn(score) super(BahdanauAttention, self).__init__( query_layer=layers_core.Dense( num_units, name="query_layer", _scope="query_layer", use_bias=False), memory_layer=layers_core.Dense( num_units, name=memory_layer_name, _scope=memory_layer_name, use_bias=False), memory=memory, probability_fn=wrapped_probability_fn, memory_sequence_length=memory_sequence_length, score_mask_value=score_mask_value, name=name) self._num_units = num_units self._normalize = normalize self._name = name def __call__(self, query, previous_alignments): """Score the query based on the keys and values. Args: query: Tensor of dtype matching `self.values` and shape `[batch_size, query_depth]`. previous_alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). Returns: alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). """ with variable_scope.variable_scope(None, "bahdanau_attention", [query]): processed_query = self.query_layer(query) if self.query_layer else query dtype = processed_query.dtype # Reshape from [batch_size, ...] to [batch_size, 1, ...] for broadcasting. processed_query = array_ops.expand_dims(processed_query, 1) keys = self._keys v = variable_scope.get_variable( "attention_v", [self._num_units], dtype=dtype) if self._normalize: # Scalar used in weight normalization g = variable_scope.get_variable( "attention_g", dtype=dtype, initializer=math.sqrt((1. / self._num_units))) # Bias added prior to the nonlinearity b = variable_scope.get_variable( "attention_b", [self._num_units], dtype=dtype, initializer=init_ops.zeros_initializer()) # normed_v = g * v / ||v|| normed_v = g * v * math_ops.rsqrt( math_ops.reduce_sum(math_ops.square(v))) score = math_ops.reduce_sum( normed_v * math_ops.tanh(keys + processed_query + b), [2]) else: score = math_ops.reduce_sum(v * math_ops.tanh(keys + processed_query), [2]) #alignments = self._probability_fn(score, previous_alignments) alignments = score return alignments class CoverageBahdanauAttention(_BaseAttentionMechanism): """Implements Bahdanau-style (additive) attention. This attention has two forms. The first is Bahdanau attention, as described in: Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio. "Neural Machine Translation by Jointly Learning to Align and Translate." ICLR 2015. https://arxiv.org/abs/1409.0473 The second is the normalized form. This form is inspired by the weight normalization article: Tim Salimans, Diederik P. Kingma. "Weight Normalization: A Simple Reparameterization to Accelerate Training of Deep Neural Networks." https://arxiv.org/abs/1602.07868 To enable the second form, construct the object with parameter `normalize=True`. """ def __init__(self, num_units, memory, memory_sequence_length=None, normalize=False, probability_fn=None, score_mask_value=float("-inf"), memory_layer_name='memory_layer', name="CoverageBahdanauAttention"): """Construct the Attention mechanism. Args: num_units: The depth of the query mechanism. memory: The memory to query; usually the output of an RNN encoder. This tensor should be shaped `[batch_size, max_time, ...]`. memory_sequence_length (optional): Sequence lengths for the batch entries in memory. If provided, the memory tensor rows are masked with zeros for values past the respective sequence lengths. normalize: Python boolean. Whether to normalize the energy term. probability_fn: (optional) A `callable`. Converts the score to probabilities. The default is @{tf.nn.softmax}. Other options include @{tf.contrib.seq2seq.hardmax} and @{tf.contrib.sparsemax.sparsemax}. Its signature should be: `probabilities = probability_fn(score)`. score_mask_value: (optional): The mask value for score before passing into `probability_fn`. The default is -inf. Only used if `memory_sequence_length` is not None. name: Name to use when creating ops. """ if probability_fn is None: probability_fn = nn_ops.softmax wrapped_probability_fn = lambda score, _: probability_fn(score) super(CoverageBahdanauAttention, self).__init__( query_layer=layers_core.Dense( num_units, name="query_layer", _scope="query_layer", use_bias=False), memory_layer=layers_core.Dense( num_units, name=memory_layer_name, _scope=memory_layer_name, use_bias=False), memory=memory, probability_fn=wrapped_probability_fn, memory_sequence_length=memory_sequence_length, score_mask_value=score_mask_value, name=name) self._num_units = num_units self._normalize = normalize self._name = name self._coverage_layer = layers_core.Dense( num_units, name="coverage_layer", _scope="coverage_layer", use_bias=False) def __call__(self, query, coverage): """Score the query based on the keys and values. Args: query: Tensor of dtype matching `self.values` and shape `[batch_size, query_depth]`. previous_alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). Returns: alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). """ with variable_scope.variable_scope(None, "bahdanau_attention", [query]): processed_query = self.query_layer(query) if self.query_layer else query processed_coverage = self._coverage_layer(coverage) dtype = processed_query.dtype # Reshape from [batch_size, ...] to [batch_size, 1, ...] for broadcasting. processed_query = array_ops.expand_dims(processed_query, 1) processed_coverage = array_ops.expand_dims(processed_coverage, 1) keys = self._keys v = variable_scope.get_variable( "attention_v", [self._num_units], dtype=dtype) if self._normalize: # Scalar used in weight normalization g = variable_scope.get_variable( "attention_g", dtype=dtype, initializer=math.sqrt((1. / self._num_units))) # Bias added prior to the nonlinearity b = variable_scope.get_variable( "attention_b", [self._num_units], dtype=dtype, initializer=init_ops.zeros_initializer()) # normed_v = g * v / ||v|| normed_v = g * v * math_ops.rsqrt( math_ops.reduce_sum(math_ops.square(v))) score = math_ops.reduce_sum( normed_v * math_ops.tanh(keys + processed_query + processed_coverage + b), [2]) else: score = math_ops.reduce_sum(v * math_ops.tanh(keys + processed_query + processed_coverage), [2]) #alignments = self._probability_fn(score, previous_alignments) alignments = score return alignments class CoverageV2BahdanauAttention(_BaseAttentionMechanism): """Implements Bahdanau-style (additive) attention. This attention has two forms. The first is Bahdanau attention, as described in: Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio. "Neural Machine Translation by Jointly Learning to Align and Translate." ICLR 2015. https://arxiv.org/abs/1409.0473 The second is the normalized form. This form is inspired by the weight normalization article: Tim Salimans, Diederik P. Kingma. "Weight Normalization: A Simple Reparameterization to Accelerate Training of Deep Neural Networks." https://arxiv.org/abs/1602.07868 To enable the second form, construct the object with parameter `normalize=True`. """ def __init__(self, num_units, memory, memory_sequence_length=None, normalize=False, probability_fn=None, score_mask_value=float("-inf"), memory_layer_name='memory_layer', name="CoverageV2BahdanauAttention"): """Construct the Attention mechanism. Args: num_units: The depth of the query mechanism. memory: The memory to query; usually the output of an RNN encoder. This tensor should be shaped `[batch_size, max_time, ...]`. memory_sequence_length (optional): Sequence lengths for the batch entries in memory. If provided, the memory tensor rows are masked with zeros for values past the respective sequence lengths. normalize: Python boolean. Whether to normalize the energy term. probability_fn: (optional) A `callable`. Converts the score to probabilities. The default is @{tf.nn.softmax}. Other options include @{tf.contrib.seq2seq.hardmax} and @{tf.contrib.sparsemax.sparsemax}. Its signature should be: `probabilities = probability_fn(score)`. score_mask_value: (optional): The mask value for score before passing into `probability_fn`. The default is -inf. Only used if `memory_sequence_length` is not None. name: Name to use when creating ops. """ if probability_fn is None: probability_fn = nn_ops.softmax wrapped_probability_fn = lambda score, _: probability_fn(score) super(CoverageV2BahdanauAttention, self).__init__( query_layer=layers_core.Dense( num_units, name="query_layer", _scope="query_layer", use_bias=False), memory_layer=layers_core.Dense( num_units, name=memory_layer_name, _scope=memory_layer_name, use_bias=False), memory=memory, probability_fn=wrapped_probability_fn, memory_sequence_length=memory_sequence_length, score_mask_value=score_mask_value, name=name) self._num_units = num_units self._normalize = normalize self._name = name self._coverage_layer = layers_core.Dense( num_units, name="coverage_layer", _scope="coverage_layer", use_bias=False) self._pre_alignment_layer = layers_core.Dense( num_units, name="pre_alignment_layer", _scope="pre_alignment_layer", use_bias=False) self._input_layer = layers_core.Dense( num_units, name="input_layer", _scope="input_layer", use_bias=False) def __call__(self, query, coverage, pre_alignment): """Score the query based on the keys and values. Args: query: Tensor of dtype matching `self.values` and shape `[batch_size, query_depth]`. previous_alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). Returns: alignments: Tensor of dtype matching `self.values` and shape `[batch_size, alignments_size]` (`alignments_size` is memory's `max_time`). """ #print(query, coverage, pre_alignment, input) with variable_scope.variable_scope(None, "bahdanau_attention", [query]): processed_query = self.query_layer(query) if self.query_layer else query processed_coverage = self._coverage_layer(coverage) processed_pre_alignment = self._pre_alignment_layer(pre_alignment) dtype = processed_query.dtype # Reshape from [batch_size, ...] to [batch_size, 1, ...] for broadcasting. processed_query = array_ops.expand_dims(processed_query, 1) processed_coverage = array_ops.expand_dims(processed_coverage, 1) processed_pre_alignment = array_ops.expand_dims(processed_pre_alignment, 1) keys = self._keys v = variable_scope.get_variable( "attention_v", [self._num_units], dtype=dtype) if self._normalize: # Scalar used in weight normalization g = variable_scope.get_variable( "attention_g", dtype=dtype, initializer=math.sqrt((1. / self._num_units))) # Bias added prior to the nonlinearity b = variable_scope.get_variable( "attention_b", [self._num_units], dtype=dtype, initializer=init_ops.zeros_initializer()) # normed_v = g * v / ||v|| normed_v = g * v * math_ops.rsqrt( math_ops.reduce_sum(math_ops.square(v))) score = math_ops.reduce_sum( normed_v * math_ops.tanh(keys + processed_query + processed_coverage + processed_pre_alignment + b), [2]) else: score = math_ops.reduce_sum(v * math_ops.tanh(keys + processed_query + processed_coverage + processed_pre_alignment), [2]) #alignments = self._probability_fn(score, previous_alignments) alignments = score return alignments class AttentionWrapperState( collections.namedtuple("AttentionWrapperState", ("cell_state", "attention", "time", "alignments", "alignment_history"))): """`namedtuple` storing the state of a `AttentionWrapper`. Contains: - `cell_state`: The state of the wrapped `RNNCell` at the previous time step. - `attention`: The attention emitted at the previous time step. - `time`: int32 scalar containing the current time step. - `alignments`: The alignment emitted at the previous time step. - `alignment_history`: (if enabled) a `TensorArray` containing alignment matrices from all time steps. Call `stack()` to convert to a `Tensor`. """ def clone(self, **kwargs): """Clone this object, overriding components provided by kwargs. Example: ```python initial_state = attention_wrapper.zero_state(dtype=..., batch_size=...) initial_state = initial_state.clone(cell_state=encoder_state) ``` Args: **kwargs: Any properties of the state object to replace in the returned `AttentionWrapperState`. Returns: A new `AttentionWrapperState` whose properties are the same as this one, except any overridden properties as provided in `kwargs`. """ return super(AttentionWrapperState, self)._replace(**kwargs) def hardmax(logits, name=None): """Returns batched one-hot vectors. The depth index containing the `1` is that of the maximum logit value. Args: logits: A batch tensor of logit values. name: Name to use when creating ops. Returns: A batched one-hot tensor. """ with ops.name_scope(name, "Hardmax", [logits]): logits = ops.convert_to_tensor(logits, name="logits") if logits.get_shape()[-1].value is not None: depth = logits.get_shape()[-1].value else: depth = array_ops.shape(logits)[-1] return array_ops.one_hot( math_ops.argmax(logits, -1), depth, dtype=logits.dtype) #TODO new tf version will be rnn_cell_impl.RNNCell, now temply modify for tf verison 1.1.0-rc2 #from tensorflow.contrib.rnn import core_rnn_cell #class AttentionWrapper(core_rnn_cell.RNNCell): class AttentionWrapper(rnn_cell_impl.RNNCell): """Wraps another `RNNCell` with attention. """ def __init__(self, cell, attention_mechanism, attention_layer_size=None, alignment_history=False, cell_input_fn=None, output_attention=True, initial_cell_state=None, no_context=False, output_alignment=False, probability_fn=None, score_as_alignment=False, name=None): """Construct the `AttentionWrapper`. Args: cell: An instance of `RNNCell`. attention_mechanism: An instance of `AttentionMechanism`. attention_layer_size: Python integer, the depth of the attention (output) layer. If None (default), use the context as attention at each time step. Otherwise, feed the context and cell output into the attention layer to generate attention at each time step. alignment_history: Python boolean, whether to store alignment history from all time steps in the final output state (currently stored as a time major `TensorArray` on which you must call `stack()`). cell_input_fn: (optional) A `callable`. The default is: `lambda inputs, attention: array_ops.concat([inputs, attention], -1)`. output_attention: Python bool. If `True` (default), the output at each time step is the attention value. This is the behavior of Luong-style attention mechanisms. If `False`, the output at each time step is the output of `cell`. This is the beahvior of Bhadanau-style attention mechanisms. In both cases, the `attention` tensor is propagated to the next time step via the state and is used there. This flag only controls whether the attention mechanism is propagated up to the next cell in an RNN stack or to the top RNN output. initial_cell_state: The initial state value to use for the cell when the user calls `zero_state()`. Note that if this value is provided now, and the user uses a `batch_size` argument of `zero_state` which does not match the batch size of `initial_cell_state`, proper behavior is not guaranteed. no_context: True when use pointer network, when you only want alignments name: Name to use when creating ops. """ super(AttentionWrapper, self).__init__(name=name) if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError( "cell must be an RNNCell, saw type: %s" % type(cell).__name__) if not isinstance(attention_mechanism, AttentionMechanism): raise TypeError( "attention_mechanism must be a AttentionMechanism, saw type: %s" % type(attention_mechanism).__name__) if cell_input_fn is None: cell_input_fn = ( lambda inputs, attention: array_ops.concat([inputs, attention], -1)) else: if not callable(cell_input_fn): raise TypeError( "cell_input_fn must be callable, saw type: %s" % type(cell_input_fn).__name__) if attention_layer_size is not None: self._attention_layer = layers_core.Dense( attention_layer_size, name="attention_layer", _scope="attention_layer", use_bias=False) self._attention_layer_size = attention_layer_size else: self._attention_layer = None self._attention_layer_size = attention_mechanism.values.get_shape()[ -1].value self._cell = cell self._attention_mechanism = attention_mechanism self._cell_input_fn = cell_input_fn self._output_attention = output_attention self._alignment_history = alignment_history self._no_context = no_context self._output_alignment = output_alignment self._probability_fn = nn_ops.softmax if probability_fn is None else probability_fn self._score_as_alignment = score_as_alignment with ops.name_scope(name, "AttentionWrapperInit"): if initial_cell_state is None: self._initial_cell_state = None else: final_state_tensor = nest.flatten(initial_cell_state)[-1] state_batch_size = ( final_state_tensor.shape[0].value or array_ops.shape(final_state_tensor)[0]) error_message = ( "When constructing AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and initial_cell_state. Are you using " "the BeamSearchDecoder? You may need to tile your initial state " "via the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") with ops.control_dependencies( [check_ops.assert_equal(state_batch_size, self._attention_mechanism.batch_size, message=error_message)]): self._initial_cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="check_initial_cell_state"), initial_cell_state) @property def output_size(self): if self._output_alignment: return self._attention_mechanism.alignments_size if self._output_attention: return self._attention_layer_size else: return self._cell.output_size @property def state_size(self): return AttentionWrapperState( cell_state=self._cell.state_size, time=tensor_shape.TensorShape([]), attention=self._attention_layer_size, alignments=self._attention_mechanism.alignments_size, alignment_history=()) # alignment_history is sometimes a TensorArray def zero_state(self, batch_size, dtype): with ops.name_scope(type(self).__name__ + "ZeroState", values=[batch_size]): if self._initial_cell_state is not None: cell_state = self._initial_cell_state else: cell_state = self._cell.zero_state(batch_size, dtype) error_message = ( "When calling zero_state of AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and the requested batch size. Are you using " "the BeamSearchDecoder? If so, make sure your encoder output has " "been tiled to beam_width via tf.contrib.seq2seq.tile_batch, and " "the batch_size= argument passed to zero_state is " "batch_size * beam_width.") with ops.control_dependencies( [check_ops.assert_equal(batch_size, self._attention_mechanism.batch_size, message=error_message)]): cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="checked_cell_state"), cell_state) if self._alignment_history: alignment_history = tensor_array_ops.TensorArray( dtype=dtype, size=0, dynamic_size=True) else: alignment_history = () return AttentionWrapperState( cell_state=cell_state, time=array_ops.zeros([], dtype=dtypes.int32), attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), alignments=self._attention_mechanism.initial_alignments( batch_size, dtype), alignment_history=alignment_history) def call(self, inputs, state): """Perform a step of attention-wrapped RNN. - Step 1: Mix the `inputs` and previous step's `attention` output via `cell_input_fn`. - Step 2: Call the wrapped `cell` with this input and its previous state. - Step 3: Score the cell's output with `attention_mechanism`. - Step 4: Calculate the alignments by passing the score through the `normalizer`. - Step 5: Calculate the context vector as the inner product between the alignments and the attention_mechanism's values (memory). - Step 6: Calculate the attention output by concatenating the cell output and context through the attention layer (a linear layer with `attention_layer_size` outputs). Args: inputs: (Possibly nested tuple of) Tensor, the input at this time step. state: An instance of `AttentionWrapperState` containing tensors from the previous time step. Returns: A tuple `(attention_or_cell_output, next_state)`, where: - `attention_or_cell_output` depending on `output_attention`. - `next_state` is an instance of `AttentionWrapperState` containing the state calculated at this time step. """ # Step 1: Calculate the true inputs to the cell based on the # previous attention value. cell_inputs = self._cell_input_fn(inputs, state.attention) cell_state = state.cell_state cell_output, next_cell_state = self._cell(cell_inputs, cell_state) cell_batch_size = ( cell_output.shape[0].value or array_ops.shape(cell_output)[0]) error_message = ( "When applying AttentionWrapper %s: " % self.name + "Non-matching batch sizes between the memory " "(encoder output) and the query (decoder output). Are you using " "the BeamSearchDecoder? You may need to tile your memory input via " "the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") # TODO chg hack just remove for outgraph beam search, since attention states will change #with ops.control_dependencies( # [check_ops.assert_equal(cell_batch_size, # self._attention_mechanism.batch_size, # message=error_message)]): cell_output = array_ops.identity( cell_output, name="checked_cell_output") #alignments = self._attention_mechanism( # cell_output, previous_alignments=state.alignments) scores = self._attention_mechanism( cell_output, previous_alignments=state.alignments) alignments = self._probability_fn(scores) if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context if self._alignment_history: alignment_history = state.alignment_history.write( state.time, alignments) else: alignment_history = () if self._score_as_alignment: alignments = scores #TODO maybe outupt both alignments and scores ? next_state = AttentionWrapperState( time=state.time + 1, cell_state=next_cell_state, attention=attention, alignments=alignments, alignment_history=alignment_history) #TODO why use output_alignment will be slower for dyanmic_rnn ? if self._output_alignment: return alignments, next_state if self._output_attention: return attention, next_state else: return cell_output, next_state class PointerAttentionWrapperState( collections.namedtuple("PointerAttentionWrapperState", ("cell_state", "attention", "time", "alignments", "alignment_history", "gen_probability"))): """`namedtuple` storing the state of a `AttentionWrapper`. Contains: - `cell_state`: The state of the wrapped `RNNCell` at the previous time step. - `attention`: The attention emitted at the previous time step. - `time`: int32 scalar containing the current time step. - `alignments`: The alignment emitted at the previous time step. - `alignment_history`: (if enabled) a `TensorArray` containing alignment matrices from all time steps. Call `stack()` to convert to a `Tensor`. """ def clone(self, **kwargs): """Clone this object, overriding components provided by kwargs. Example: ```python initial_state = attention_wrapper.zero_state(dtype=..., batch_size=...) initial_state = initial_state.clone(cell_state=encoder_state) ``` Args: **kwargs: Any properties of the state object to replace in the returned `AttentionWrapperState`. Returns: A new `AttentionWrapperState` whose properties are the same as this one, except any overridden properties as provided in `kwargs`. """ return super(PointerAttentionWrapperState, self)._replace(**kwargs) class PointerAttentionWrapper(rnn_cell_impl.RNNCell): """Wraps another `RNNCell` with attention. """ def __init__(self, cell, attention_mechanism, attention_layer_size=None, alignment_history=False, cell_input_fn=None, output_attention=True, initial_cell_state=None, no_context=False, output_alignment=False, probability_fn=None, score_as_alignment=False, mix_pre_alignment=False, name=None): """Construct the `AttentionWrapper`. Args: cell: An instance of `RNNCell`. attention_mechanism: An instance of `AttentionMechanism`. attention_layer_size: Python integer, the depth of the attention (output) layer. If None (default), use the context as attention at each time step. Otherwise, feed the context and cell output into the attention layer to generate attention at each time step. alignment_history: Python boolean, whether to store alignment history from all time steps in the final output state (currently stored as a time major `TensorArray` on which you must call `stack()`). cell_input_fn: (optional) A `callable`. The default is: `lambda inputs, attention: array_ops.concat([inputs, attention], -1)`. output_attention: Python bool. If `True` (default), the output at each time step is the attention value. This is the behavior of Luong-style attention mechanisms. If `False`, the output at each time step is the output of `cell`. This is the beahvior of Bhadanau-style attention mechanisms. In both cases, the `attention` tensor is propagated to the next time step via the state and is used there. This flag only controls whether the attention mechanism is propagated up to the next cell in an RNN stack or to the top RNN output. initial_cell_state: The initial state value to use for the cell when the user calls `zero_state()`. Note that if this value is provided now, and the user uses a `batch_size` argument of `zero_state` which does not match the batch size of `initial_cell_state`, proper behavior is not guaranteed. no_context: True when use pointer network, when you only want alignments name: Name to use when creating ops. """ super(PointerAttentionWrapper, self).__init__(name=name) if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError( "cell must be an RNNCell, saw type: %s" % type(cell).__name__) if not isinstance(attention_mechanism, AttentionMechanism): raise TypeError( "attention_mechanism must be a AttentionMechanism, saw type: %s" % type(attention_mechanism).__name__) if cell_input_fn is None: cell_input_fn = ( lambda inputs, attention: array_ops.concat([inputs, attention], -1)) else: if not callable(cell_input_fn): raise TypeError( "cell_input_fn must be callable, saw type: %s" % type(cell_input_fn).__name__) if attention_layer_size is not None: self._attention_layer = layers_core.Dense( attention_layer_size, name="attention_layer", _scope="attention_layer", use_bias=False) self._attention_layer_size = attention_layer_size else: self._attention_layer = None self._attention_layer_size = attention_mechanism.values.get_shape()[ -1].value self._cell = cell self._attention_mechanism = attention_mechanism self._cell_input_fn = cell_input_fn self._output_attention = output_attention self._alignment_history = alignment_history self._no_context = no_context self._output_alignment = output_alignment #chg TODO masked softmax support to make inference result stable with different padding length #right now use attention will make inference result unstable, but may not hurt inference performance much self._probability_fn = nn_ops.softmax if probability_fn is None else probability_fn self._score_as_alignment = score_as_alignment self._mix_pre_alignment = mix_pre_alignment with ops.name_scope(name, "AttentionWrapperInit"): if initial_cell_state is None: self._initial_cell_state = None else: final_state_tensor = nest.flatten(initial_cell_state)[-1] state_batch_size = ( final_state_tensor.shape[0].value or array_ops.shape(final_state_tensor)[0]) error_message = ( "When constructing AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and initial_cell_state. Are you using " "the BeamSearchDecoder? You may need to tile your initial state " "via the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") with ops.control_dependencies( [check_ops.assert_equal(state_batch_size, self._attention_mechanism.batch_size, message=error_message)]): self._initial_cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="check_initial_cell_state"), initial_cell_state) @property def output_size(self): if self._output_alignment: return self._attention_mechanism.alignments_size if self._output_attention: return self._attention_layer_size else: return self._cell.output_size @property def state_size(self): return PointerAttentionWrapperState( cell_state=self._cell.state_size, time=tensor_shape.TensorShape([]), attention=self._attention_layer_size, alignments=self._attention_mechanism.alignments_size, alignment_history=(), # alignment_history is sometimes a TensorArray gen_probability=1.) def zero_state(self, batch_size, dtype): with ops.name_scope(type(self).__name__ + "ZeroState", values=[batch_size]): if self._initial_cell_state is not None: cell_state = self._initial_cell_state else: cell_state = self._cell.zero_state(batch_size, dtype) error_message = ( "When calling zero_state of AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and the requested batch size. Are you using " "the BeamSearchDecoder? If so, make sure your encoder output has " "been tiled to beam_width via tf.contrib.seq2seq.tile_batch, and " "the batch_size= argument passed to zero_state is " "batch_size * beam_width.") with ops.control_dependencies( [check_ops.assert_equal(batch_size, self._attention_mechanism.batch_size, message=error_message)]): cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="checked_cell_state"), cell_state) if self._alignment_history: alignment_history = tensor_array_ops.TensorArray( dtype=dtype, size=0, dynamic_size=True) else: alignment_history = () return PointerAttentionWrapperState( cell_state=cell_state, time=array_ops.zeros([], dtype=dtypes.int32), attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), alignments=self._attention_mechanism.initial_alignments( batch_size, dtype), alignment_history=alignment_history, gen_probability=array_ops.ones([batch_size, 1], dtype=dtypes.float32)) def call(self, inputs, state): """Perform a step of attention-wrapped RNN. - Step 1: Mix the `inputs` and previous step's `attention` output via `cell_input_fn`. - Step 2: Call the wrapped `cell` with this input and its previous state. - Step 3: Score the cell's output with `attention_mechanism`. - Step 4: Calculate the alignments by passing the score through the `normalizer`. - Step 5: Calculate the context vector as the inner product between the alignments and the attention_mechanism's values (memory). - Step 6: Calculate the attention output by concatenating the cell output and context through the attention layer (a linear layer with `attention_layer_size` outputs). Args: inputs: (Possibly nested tuple of) Tensor, the input at this time step. state: An instance of `AttentionWrapperState` containing tensors from the previous time step. Returns: A tuple `(attention_or_cell_output, next_state)`, where: - `attention_or_cell_output` depending on `output_attention`. - `next_state` is an instance of `AttentionWrapperState` containing the state calculated at this time step. """ # Step 1: Calculate the true inputs to the cell based on the # previous attention value. cell_inputs = self._cell_input_fn(inputs, state.attention) cell_state = state.cell_state cell_output, next_cell_state = self._cell(cell_inputs, cell_state) cell_batch_size = ( cell_output.shape[0].value or array_ops.shape(cell_output)[0]) error_message = ( "When applying AttentionWrapper %s: " % self.name + "Non-matching batch sizes between the memory " "(encoder output) and the query (decoder output). Are you using " "the BeamSearchDecoder? You may need to tile your memory input via " "the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") # TODO chg hack just remove for outgraph beam search, since attention states will change #with ops.control_dependencies( # [check_ops.assert_equal(cell_batch_size, # self._attention_mechanism.batch_size, # message=error_message)]): cell_output = array_ops.identity( cell_output, name="checked_cell_output") #alignments = self._attention_mechanism( # cell_output, previous_alignments=state.alignments) scores = self._attention_mechanism( cell_output, previous_alignments=state.alignments) alignments = self._probability_fn(scores) if self._mix_pre_alignment: gen_probability_logits = layers.linear(array_ops.concat( cell_state, 1), 1, scope='gen_probability') ##pointer v2 # gen_probability_logits = layers.linear(array_ops.concat( # [cell_state[0], cell_state[1], cell_output], 1), 1, scope='gen_probability') gen_probability = math_ops.sigmoid(gen_probability_logits) alignments = alignments * gen_probability + state.alignments * (1 - gen_probability) if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context if self._alignment_history: alignment_history = state.alignment_history.write( state.time, alignments) else: alignment_history = () if self._score_as_alignment: alignments = scores # # Calculate p_gen # if pointer_gen: # with tf.variable_scope('calculate_pgen'): # p_gen = linear([context_vector, state.c, state.h, x], 1, True) # a scalar # p_gen = tf.sigmoid(p_gen) # p_gens.append(p_gen) if not self._mix_pre_alignment: gen_probability_logits = layers.linear(array_ops.concat( [context, cell_output, cell_inputs], 1), 1, scope='gen_probability') gen_probability = math_ops.sigmoid(gen_probability_logits) #gen_probability = array_ops.ones([array_ops.shape(cell_output)[0], 1], dtype=dtypes.float32) #TODO maybe outupt both alignments and scores ? next_state = PointerAttentionWrapperState( time=state.time + 1, cell_state=next_cell_state, attention=attention, alignments=alignments, alignment_history=alignment_history, gen_probability=gen_probability) #TODO why use output_alignment will be slower for dyanmic_rnn ? if self._output_alignment: return alignments, next_state if self._output_attention: return attention, next_state else: return cell_output, next_state #TODO move all new wrapper code to another file extended_attention_wrapper class ShowTellAttentionWrapperState( collections.namedtuple("ShowTellAttentionWrapperState", ("cell_state", "attention", "pre_attention", "time", "alignments", "alignment_history", "gen_probability"))): """`namedtuple` storing the state of a `AttentionWrapper`. Contains: - `cell_state`: The state of the wrapped `RNNCell` at the previous time step. - `attention`: The attention emitted at the previous time step. - `time`: int32 scalar containing the current time step. - `alignments`: The alignment emitted at the previous time step. - `alignment_history`: (if enabled) a `TensorArray` containing alignment matrices from all time steps. Call `stack()` to convert to a `Tensor`. """ def clone(self, **kwargs): """Clone this object, overriding components provided by kwargs. Example: ```python initial_state = attention_wrapper.zero_state(dtype=..., batch_size=...) initial_state = initial_state.clone(cell_state=encoder_state) ``` Args: **kwargs: Any properties of the state object to replace in the returned `AttentionWrapperState`. Returns: A new `AttentionWrapperState` whose properties are the same as this one, except any overridden properties as provided in `kwargs`. """ return super(ShowTellAttentionWrapperState, self)._replace(**kwargs) class ShowTellAttentionWrapper(rnn_cell_impl.RNNCell): """Wraps another `RNNCell` with attention. """ def __init__(self, cell, attention_mechanism, attention_layer_size=None, alignment_history=False, cell_input_fn=None, output_attention=True, initial_cell_state=None, no_context=False, output_alignment=False, probability_fn=None, score_as_alignment=False, use_gen_probablity=False, name=None): """Construct the `AttentionWrapper`. Args: cell: An instance of `RNNCell`. attention_mechanism: An instance of `AttentionMechanism`. attention_layer_size: Python integer, the depth of the attention (output) layer. If None (default), use the context as attention at each time step. Otherwise, feed the context and cell output into the attention layer to generate attention at each time step. alignment_history: Python boolean, whether to store alignment history from all time steps in the final output state (currently stored as a time major `TensorArray` on which you must call `stack()`). cell_input_fn: (optional) A `callable`. The default is: `lambda inputs, attention: array_ops.concat([inputs, attention], -1)`. output_attention: Python bool. If `True` (default), the output at each time step is the attention value. This is the behavior of Luong-style attention mechanisms. If `False`, the output at each time step is the output of `cell`. This is the beahvior of Bhadanau-style attention mechanisms. In both cases, the `attention` tensor is propagated to the next time step via the state and is used there. This flag only controls whether the attention mechanism is propagated up to the next cell in an RNN stack or to the top RNN output. initial_cell_state: The initial state value to use for the cell when the user calls `zero_state()`. Note that if this value is provided now, and the user uses a `batch_size` argument of `zero_state` which does not match the batch size of `initial_cell_state`, proper behavior is not guaranteed. no_context: True when use pointer network, when you only want alignments name: Name to use when creating ops. """ super(ShowTellAttentionWrapper, self).__init__(name=name) if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError( "cell must be an RNNCell, saw type: %s" % type(cell).__name__) if not isinstance(attention_mechanism, AttentionMechanism): raise TypeError( "attention_mechanism must be a AttentionMechanism, saw type: %s" % type(attention_mechanism).__name__) if cell_input_fn is None: cell_input_fn = ( lambda inputs, attention: array_ops.concat([inputs, attention], -1)) else: if not callable(cell_input_fn): raise TypeError( "cell_input_fn must be callable, saw type: %s" % type(cell_input_fn).__name__) if attention_layer_size is not None: self._attention_layer = layers_core.Dense( attention_layer_size, name="attention_layer", _scope="attention_layer", use_bias=False) self._attention_layer_size = attention_layer_size else: self._attention_layer = None self._attention_layer_size = attention_mechanism.values.get_shape()[ -1].value self._cell = cell self._attention_mechanism = attention_mechanism self._cell_input_fn = cell_input_fn self._output_attention = output_attention self._alignment_history = alignment_history self._no_context = no_context self._output_alignment = output_alignment #chg TODO masked softmax support to make inference result stable with different padding length #right now use attention will make inference result unstable, but may not hurt inference performance much self._probability_fn = nn_ops.softmax if probability_fn is None else probability_fn self._score_as_alignment = score_as_alignment self._use_gen_probablity = use_gen_probablity with ops.name_scope(name, "AttentionWrapperInit"): if initial_cell_state is None: self._initial_cell_state = None else: final_state_tensor = nest.flatten(initial_cell_state)[-1] state_batch_size = ( final_state_tensor.shape[0].value or array_ops.shape(final_state_tensor)[0]) error_message = ( "When constructing AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and initial_cell_state. Are you using " "the BeamSearchDecoder? You may need to tile your initial state " "via the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") with ops.control_dependencies( [check_ops.assert_equal(state_batch_size, self._attention_mechanism.batch_size, message=error_message)]): self._initial_cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="check_initial_cell_state"), initial_cell_state) @property def output_size(self): if self._output_alignment: return self._attention_mechanism.alignments_size if self._output_attention: return self._attention_layer_size else: return self._cell.output_size @property def state_size(self): return ShowTellAttentionWrapperState( cell_state=self._cell.state_size, time=tensor_shape.TensorShape([]), attention=self._attention_layer_size, pre_attention=self._attention_layer_size, alignments=self._attention_mechanism.alignments_size, alignment_history=(), # alignment_history is sometimes a TensorArray gen_probability=1) def zero_state(self, batch_size, dtype): with ops.name_scope(type(self).__name__ + "ZeroState", values=[batch_size]): if self._initial_cell_state is not None: cell_state = self._initial_cell_state else: cell_state = self._cell.zero_state(batch_size, dtype) error_message = ( "When calling zero_state of AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and the requested batch size. Are you using " "the BeamSearchDecoder? If so, make sure your encoder output has " "been tiled to beam_width via tf.contrib.seq2seq.tile_batch, and " "the batch_size= argument passed to zero_state is " "batch_size * beam_width.") with ops.control_dependencies( [check_ops.assert_equal(batch_size, self._attention_mechanism.batch_size, message=error_message)]): cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="checked_cell_state"), cell_state) if self._alignment_history: alignment_history = tensor_array_ops.TensorArray( dtype=dtype, size=0, dynamic_size=True) else: alignment_history = () return ShowTellAttentionWrapperState( cell_state=cell_state, time=array_ops.zeros([], dtype=dtypes.int32), attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), pre_attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), alignments=self._attention_mechanism.initial_alignments( batch_size, dtype), alignment_history=alignment_history, gen_probability=array_ops.ones([batch_size, 1], dtype=dtypes.float32)) def call(self, inputs, state): """Perform a step of attention-wrapped RNN. - Step 1: Mix the `inputs` and previous step's `attention` output via `cell_input_fn`. - Step 2: Call the wrapped `cell` with this input and its previous state. - Step 3: Score the cell's output with `attention_mechanism`. - Step 4: Calculate the alignments by passing the score through the `normalizer`. - Step 5: Calculate the context vector as the inner product between the alignments and the attention_mechanism's values (memory). - Step 6: Calculate the attention output by concatenating the cell output and context through the attention layer (a linear layer with `attention_layer_size` outputs). Args: inputs: (Possibly nested tuple of) Tensor, the input at this time step. state: An instance of `AttentionWrapperState` containing tensors from the previous time step. Returns: A tuple `(attention_or_cell_output, next_state)`, where: - `attention_or_cell_output` depending on `output_attention`. - `next_state` is an instance of `AttentionWrapperState` containing the state calculated at this time step. """ # Step 1: Calculate the true inputs to the cell based on the # previous attention value. #cell_inputs = self._cell_input_fn(inputs, state.attention) #chg add change to use previous two steps attentions cell_inputs = self._cell_input_fn(inputs, array_ops.concat([state.attention, state.pre_attention], -1)) cell_state = state.cell_state cell_output, next_cell_state = self._cell(cell_inputs, cell_state) cell_batch_size = ( cell_output.shape[0].value or array_ops.shape(cell_output)[0]) error_message = ( "When applying AttentionWrapper %s: " % self.name + "Non-matching batch sizes between the memory " "(encoder output) and the query (decoder output). Are you using " "the BeamSearchDecoder? You may need to tile your memory input via " "the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") # TODO chg hack just remove for outgraph beam search, since attention states will change #with ops.control_dependencies( # [check_ops.assert_equal(cell_batch_size, # self._attention_mechanism.batch_size, # message=error_message)]): cell_output = array_ops.identity( cell_output, name="checked_cell_output") gen_probability_logits = layers.linear(array_ops.concat( state.cell_state, 1), 1, scope='gen_probability') gen_probability = math_ops.sigmoid(gen_probability_logits) if not self._use_gen_probablity: gen_probability = state.gen_probability #just 1. scores = self._attention_mechanism( cell_output, previous_alignments=state.alignments) alignments = self._probability_fn(scores) if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) context *= gen_probability if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context if self._alignment_history: alignment_history = state.alignment_history.write( state.time, alignments) else: alignment_history = () if self._score_as_alignment: alignments = scores #TODO maybe outupt both alignments and scores ? next_state = ShowTellAttentionWrapperState( time=state.time + 1, cell_state=next_cell_state, attention=attention, pre_attention=state.attention, alignments=alignments, alignment_history=alignment_history, gen_probability=gen_probability) #TODO why use output_alignment will be slower for dyanmic_rnn ? if self._output_alignment: return alignments, next_state if self._output_attention: return attention, next_state else: return cell_output, next_state class TwoLayersAttentionWrapperState( collections.namedtuple("TwoLayersAttentionWrapperState", ("cell_state", "attention", "time", "alignments", "first_layer_alignments", "alignment_history", "gen_probability"))): """`namedtuple` storing the state of a `AttentionWrapper`. Contains: - `cell_state`: The state of the wrapped `RNNCell` at the previous time step. - `attention`: The attention emitted at the previous time step. - `time`: int32 scalar containing the current time step. - `alignments`: The alignment emitted at the previous time step. - `alignment_history`: (if enabled) a `TensorArray` containing alignment matrices from all time steps. Call `stack()` to convert to a `Tensor`. """ def clone(self, **kwargs): """Clone this object, overriding components provided by kwargs. Example: ```python initial_state = attention_wrapper.zero_state(dtype=..., batch_size=...) initial_state = initial_state.clone(cell_state=encoder_state) ``` Args: **kwargs: Any properties of the state object to replace in the returned `AttentionWrapperState`. Returns: A new `AttentionWrapperState` whose properties are the same as this one, except any overridden properties as provided in `kwargs`. """ return super(TwoLayersAttentionWrapperState, self)._replace(**kwargs) class TwoLayersAttentionWrapper(rnn_cell_impl.RNNCell): """Wraps another `RNNCell` with attention. """ def __init__(self, cell, attention_mechanism, attention_mechanism2, attention_layer_size=None, alignment_history=False, cell_input_fn=None, output_attention=True, initial_cell_state=None, no_context=False, output_alignment=False, probability_fn=None, score_as_alignment=False, mix_pre_alignment=False, name=None): """Construct the `AttentionWrapper`. Args: cell: An instance of `RNNCell`. attention_mechanism: An instance of `AttentionMechanism`. attention_layer_size: Python integer, the depth of the attention (output) layer. If None (default), use the context as attention at each time step. Otherwise, feed the context and cell output into the attention layer to generate attention at each time step. alignment_history: Python boolean, whether to store alignment history from all time steps in the final output state (currently stored as a time major `TensorArray` on which you must call `stack()`). cell_input_fn: (optional) A `callable`. The default is: `lambda inputs, attention: array_ops.concat([inputs, attention], -1)`. output_attention: Python bool. If `True` (default), the output at each time step is the attention value. This is the behavior of Luong-style attention mechanisms. If `False`, the output at each time step is the output of `cell`. This is the beahvior of Bhadanau-style attention mechanisms. In both cases, the `attention` tensor is propagated to the next time step via the state and is used there. This flag only controls whether the attention mechanism is propagated up to the next cell in an RNN stack or to the top RNN output. initial_cell_state: The initial state value to use for the cell when the user calls `zero_state()`. Note that if this value is provided now, and the user uses a `batch_size` argument of `zero_state` which does not match the batch size of `initial_cell_state`, proper behavior is not guaranteed. no_context: True when use pointer network, when you only want alignments name: Name to use when creating ops. """ super(TwoLayersAttentionWrapper, self).__init__(name=name) if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError( "cell must be an RNNCell, saw type: %s" % type(cell).__name__) if not isinstance(attention_mechanism, AttentionMechanism): raise TypeError( "attention_mechanism must be a AttentionMechanism, saw type: %s" % type(attention_mechanism).__name__) if cell_input_fn is None: cell_input_fn = ( lambda inputs, attention: array_ops.concat([inputs, attention], -1)) else: if not callable(cell_input_fn): raise TypeError( "cell_input_fn must be callable, saw type: %s" % type(cell_input_fn).__name__) if attention_layer_size is not None: self._attention_layer = layers_core.Dense( attention_layer_size, name="attention_layer", _scope="attention_layer", use_bias=False) self._attention_layer_size = attention_layer_size else: self._attention_layer = None self._attention_layer_size = attention_mechanism.values.get_shape()[ -1].value self._cell = cell self._attention_mechanism = attention_mechanism self._attention_mechanism2 = attention_mechanism2 self._cell_input_fn = cell_input_fn self._output_attention = output_attention self._alignment_history = alignment_history self._no_context = no_context self._output_alignment = output_alignment self._probability_fn = nn_ops.softmax if probability_fn is None else probability_fn self._score_as_alignment = score_as_alignment self._mix_pre_alignment = mix_pre_alignment with ops.name_scope(name, "AttentionWrapperInit"): if initial_cell_state is None: self._initial_cell_state = None else: final_state_tensor = nest.flatten(initial_cell_state)[-1] state_batch_size = ( final_state_tensor.shape[0].value or array_ops.shape(final_state_tensor)[0]) error_message = ( "When constructing AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and initial_cell_state. Are you using " "the BeamSearchDecoder? You may need to tile your initial state " "via the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") with ops.control_dependencies( [check_ops.assert_equal(state_batch_size, self._attention_mechanism.batch_size, message=error_message)]): self._initial_cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="check_initial_cell_state"), initial_cell_state) @property def output_size(self): if self._output_alignment: return self._attention_mechanism.alignments_size if self._output_attention: return self._attention_layer_size else: return self._cell.output_size @property def state_size(self): gen_probability = 1 if self._mix_pre_alignment else () return TwoLayersAttentionWrapperState( cell_state=self._cell.state_size, time=tensor_shape.TensorShape([]), attention=self._attention_layer_size, alignments=self._attention_mechanism2.alignments_size, first_layer_alignments=self._attention_mechanism.alignments_size, alignment_history=(), gen_probability=gen_probability) # alignment_history is sometimes a TensorArray def zero_state(self, batch_size, dtype): with ops.name_scope(type(self).__name__ + "ZeroState", values=[batch_size]): if self._initial_cell_state is not None: cell_state = self._initial_cell_state else: cell_state = self._cell.zero_state(batch_size, dtype) error_message = ( "When calling zero_state of AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and the requested batch size. Are you using " "the BeamSearchDecoder? If so, make sure your encoder output has " "been tiled to beam_width via tf.contrib.seq2seq.tile_batch, and " "the batch_size= argument passed to zero_state is " "batch_size * beam_width.") with ops.control_dependencies( [check_ops.assert_equal(batch_size, self._attention_mechanism.batch_size, message=error_message)]): cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="checked_cell_state"), cell_state) if self._alignment_history: alignment_history = tensor_array_ops.TensorArray( dtype=dtype, size=0, dynamic_size=True) else: alignment_history = () if self._mix_pre_alignment: gen_probability = array_ops.ones([batch_size, 1], dtype=dtypes.float32) else: gen_probability = () return TwoLayersAttentionWrapperState( cell_state=cell_state, time=array_ops.zeros([], dtype=dtypes.int32), attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), alignments=self._attention_mechanism2.initial_alignments( batch_size, dtype), first_layer_alignments=self._attention_mechanism.initial_alignments( batch_size, dtype), alignment_history=alignment_history, gen_probability=gen_probability) def call(self, inputs, state): """Perform a step of attention-wrapped RNN. - Step 1: Mix the `inputs` and previous step's `attention` output via `cell_input_fn`. - Step 2: Call the wrapped `cell` with this input and its previous state. - Step 3: Score the cell's output with `attention_mechanism`. - Step 4: Calculate the alignments by passing the score through the `normalizer`. - Step 5: Calculate the context vector as the inner product between the alignments and the attention_mechanism's values (memory). - Step 6: Calculate the attention output by concatenating the cell output and context through the attention layer (a linear layer with `attention_layer_size` outputs). Args: inputs: (Possibly nested tuple of) Tensor, the input at this time step. state: An instance of `AttentionWrapperState` containing tensors from the previous time step. Returns: A tuple `(attention_or_cell_output, next_state)`, where: - `attention_or_cell_output` depending on `output_attention`. - `next_state` is an instance of `AttentionWrapperState` containing the state calculated at this time step. """ # Step 1: Calculate the true inputs to the cell based on the # previous attention value. cell_inputs = self._cell_input_fn(inputs, state.attention) cell_state = state.cell_state cell_output, next_cell_state = self._cell(cell_inputs, cell_state) cell_batch_size = ( cell_output.shape[0].value or array_ops.shape(cell_output)[0]) error_message = ( "When applying AttentionWrapper %s: " % self.name + "Non-matching batch sizes between the memory " "(encoder output) and the query (decoder output). Are you using " "the BeamSearchDecoder? You may need to tile your memory input via " "the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") # TODO chg hack just remove for outgraph beam search, since attention states will change #with ops.control_dependencies( # [check_ops.assert_equal(cell_batch_size, # self._attention_mechanism.batch_size, # message=error_message)]): cell_output = array_ops.identity( cell_output, name="checked_cell_output") #alignments = self._attention_mechanism( # cell_output, previous_alignments=state.alignments) scores = self._attention_mechanism( cell_output, previous_alignments=state.alignments) alignments = self._probability_fn(scores) first_layer_alignments = alignments if self._mix_pre_alignment: gen_probability_logits = layers.linear(array_ops.concat( cell_state, 1), 1, scope='gen_probability') # gen_probability_logits = layers.linear(array_ops.concat( # [cell_state[0], cell_state[1], cell_output], 1), 1, scope='gen_probability') gen_probability = math_ops.sigmoid(gen_probability_logits) alignments = alignments * gen_probability + state.first_layer_alignments * (1 - gen_probability) if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context #----attention layer2 scores = self._attention_mechanism2( attention, previous_alignments=state.alignments) alignments = self._probability_fn(scores) if self._mix_pre_alignment: gen_probability_logits = layers.linear(array_ops.concat( cell_state, 1), 1, scope='gen_probability') # gen_probability_logits = layers.linear(array_ops.concat( # [cell_state[0], cell_state[1], attention], 1), 1, scope='gen_probability2') gen_probability = math_ops.sigmoid(gen_probability_logits) alignments = alignments * gen_probability + state.alignments * (1 - gen_probability) if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context if self._alignment_history: alignment_history = state.alignment_history.write( state.time, alignments) else: alignment_history = () if self._score_as_alignment: alignments = scores if not self._mix_pre_alignment: # gen_probability_logits = layers.linear(array_ops.concat( # [context, cell_output, cell_inputs], 1), 1, scope='gen_probability') # gen_probability = math_ops.sigmoid(gen_probability_logits) gen_probability = array_ops.ones([batch_size, 1], dtype=dtypes.float32) #TODO maybe outupt both alignments and scores ? next_state = TwoLayersAttentionWrapperState( time=state.time + 1, cell_state=next_cell_state, attention=attention, alignments=alignments, first_layer_alignments=first_layer_alignments, alignment_history=alignment_history, gen_probability=gen_probability) #TODO why use output_alignment will be slower for dyanmic_rnn ? if self._output_alignment: return alignments, next_state if self._output_attention: return attention, next_state else: return cell_output, next_state class CoverageAttentionWrapperState( collections.namedtuple("CoverageAttentionWrapperState", ("cell_state", "attention", "time", "alignments", "alignment_history", "coverage",))): """`namedtuple` storing the state of a `AttentionWrapper`. Contains: - `cell_state`: The state of the wrapped `RNNCell` at the previous time step. - `attention`: The attention emitted at the previous time step. - `time`: int32 scalar containing the current time step. - `alignments`: The alignment emitted at the previous time step. - `alignment_history`: (if enabled) a `TensorArray` containing alignment matrices from all time steps. Call `stack()` to convert to a `Tensor`. """ def clone(self, **kwargs): """Clone this object, overriding components provided by kwargs. Example: ```python initial_state = attention_wrapper.zero_state(dtype=..., batch_size=...) initial_state = initial_state.clone(cell_state=encoder_state) ``` Args: **kwargs: Any properties of the state object to replace in the returned `AttentionWrapperState`. Returns: A new `AttentionWrapperState` whose properties are the same as this one, except any overridden properties as provided in `kwargs`. """ return super(CoverageAttentionWrapperState, self)._replace(**kwargs) #TODO new tf version will be rnn_cell_impl.RNNCell, now temply modify for tf verison 1.1.0-rc2 #from tensorflow.contrib.rnn import core_rnn_cell #class AttentionWrapper(core_rnn_cell.RNNCell): class CoverageAttentionWrapper(rnn_cell_impl.RNNCell): """Wraps another `RNNCell` with attention. """ def __init__(self, cell, attention_mechanism, attention_layer_size=None, alignment_history=False, cell_input_fn=None, output_attention=True, initial_cell_state=None, no_context=False, output_alignment=False, probability_fn=None, score_as_alignment=False, name=None): """Construct the `AttentionWrapper`. Args: cell: An instance of `RNNCell`. attention_mechanism: An instance of `AttentionMechanism`. attention_layer_size: Python integer, the depth of the attention (output) layer. If None (default), use the context as attention at each time step. Otherwise, feed the context and cell output into the attention layer to generate attention at each time step. alignment_history: Python boolean, whether to store alignment history from all time steps in the final output state (currently stored as a time major `TensorArray` on which you must call `stack()`). cell_input_fn: (optional) A `callable`. The default is: `lambda inputs, attention: array_ops.concat([inputs, attention], -1)`. output_attention: Python bool. If `True` (default), the output at each time step is the attention value. This is the behavior of Luong-style attention mechanisms. If `False`, the output at each time step is the output of `cell`. This is the beahvior of Bhadanau-style attention mechanisms. In both cases, the `attention` tensor is propagated to the next time step via the state and is used there. This flag only controls whether the attention mechanism is propagated up to the next cell in an RNN stack or to the top RNN output. initial_cell_state: The initial state value to use for the cell when the user calls `zero_state()`. Note that if this value is provided now, and the user uses a `batch_size` argument of `zero_state` which does not match the batch size of `initial_cell_state`, proper behavior is not guaranteed. no_context: True when use pointer network, when you only want alignments name: Name to use when creating ops. """ super(CoverageAttentionWrapper, self).__init__(name=name) if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError( "cell must be an RNNCell, saw type: %s" % type(cell).__name__) if not isinstance(attention_mechanism, AttentionMechanism): raise TypeError( "attention_mechanism must be a AttentionMechanism, saw type: %s" % type(attention_mechanism).__name__) if cell_input_fn is None: cell_input_fn = ( lambda inputs, attention: array_ops.concat([inputs, attention], -1)) else: if not callable(cell_input_fn): raise TypeError( "cell_input_fn must be callable, saw type: %s" % type(cell_input_fn).__name__) if attention_layer_size is not None: self._attention_layer = layers_core.Dense( attention_layer_size, name="attention_layer", _scope="attention_layer", use_bias=False) self._attention_layer_size = attention_layer_size else: self._attention_layer = None self._attention_layer_size = attention_mechanism.values.get_shape()[ -1].value self._cell = cell self._attention_mechanism = attention_mechanism self._cell_input_fn = cell_input_fn self._output_attention = output_attention self._alignment_history = alignment_history self._no_context = no_context self._output_alignment = output_alignment self._probability_fn = nn_ops.softmax if probability_fn is None else probability_fn self._score_as_alignment = score_as_alignment with ops.name_scope(name, "AttentionWrapperInit"): if initial_cell_state is None: self._initial_cell_state = None else: final_state_tensor = nest.flatten(initial_cell_state)[-1] state_batch_size = ( final_state_tensor.shape[0].value or array_ops.shape(final_state_tensor)[0]) error_message = ( "When constructing AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and initial_cell_state. Are you using " "the BeamSearchDecoder? You may need to tile your initial state " "via the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") with ops.control_dependencies( [check_ops.assert_equal(state_batch_size, self._attention_mechanism.batch_size, message=error_message)]): self._initial_cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="check_initial_cell_state"), initial_cell_state) @property def output_size(self): if self._output_alignment: return self._attention_mechanism.alignments_size if self._output_attention: return self._attention_layer_size else: return self._cell.output_size @property def state_size(self): return CoverageAttentionWrapperState( cell_state=self._cell.state_size, time=tensor_shape.TensorShape([]), attention=self._attention_layer_size, alignments=self._attention_mechanism.alignments_size, alignment_history=(), coverage=self._attention_mechanism.alignments_size) # alignment_history is sometimes a TensorArray def zero_state(self, batch_size, dtype): with ops.name_scope(type(self).__name__ + "ZeroState", values=[batch_size]): if self._initial_cell_state is not None: cell_state = self._initial_cell_state else: cell_state = self._cell.zero_state(batch_size, dtype) error_message = ( "When calling zero_state of AttentionWrapper %s: " % self._base_name + "Non-matching batch sizes between the memory " "(encoder output) and the requested batch size. Are you using " "the BeamSearchDecoder? If so, make sure your encoder output has " "been tiled to beam_width via tf.contrib.seq2seq.tile_batch, and " "the batch_size= argument passed to zero_state is " "batch_size * beam_width.") with ops.control_dependencies( [check_ops.assert_equal(batch_size, self._attention_mechanism.batch_size, message=error_message)]): cell_state = nest.map_structure( lambda s: array_ops.identity(s, name="checked_cell_state"), cell_state) if self._alignment_history: alignment_history = tensor_array_ops.TensorArray( dtype=dtype, size=0, dynamic_size=True) else: alignment_history = () return CoverageAttentionWrapperState( cell_state=cell_state, time=array_ops.zeros([], dtype=dtypes.int32), attention=_zero_state_tensors(self._attention_layer_size, batch_size, dtype), alignments=self._attention_mechanism.initial_alignments( batch_size, dtype), alignment_history=alignment_history, coverage=self._attention_mechanism.initial_alignments( batch_size, dtype)) def call(self, inputs, state): """Perform a step of attention-wrapped RNN. - Step 1: Mix the `inputs` and previous step's `attention` output via `cell_input_fn`. - Step 2: Call the wrapped `cell` with this input and its previous state. - Step 3: Score the cell's output with `attention_mechanism`. - Step 4: Calculate the alignments by passing the score through the `normalizer`. - Step 5: Calculate the context vector as the inner product between the alignments and the attention_mechanism's values (memory). - Step 6: Calculate the attention output by concatenating the cell output and context through the attention layer (a linear layer with `attention_layer_size` outputs). Args: inputs: (Possibly nested tuple of) Tensor, the input at this time step. state: An instance of `AttentionWrapperState` containing tensors from the previous time step. Returns: A tuple `(attention_or_cell_output, next_state)`, where: - `attention_or_cell_output` depending on `output_attention`. - `next_state` is an instance of `AttentionWrapperState` containing the state calculated at this time step. """ # Step 1: Calculate the true inputs to the cell based on the # previous attention value. cell_inputs = self._cell_input_fn(inputs, state.attention) cell_state = state.cell_state cell_output, next_cell_state = self._cell(cell_inputs, cell_state) cell_batch_size = ( cell_output.shape[0].value or array_ops.shape(cell_output)[0]) error_message = ( "When applying AttentionWrapper %s: " % self.name + "Non-matching batch sizes between the memory " "(encoder output) and the query (decoder output). Are you using " "the BeamSearchDecoder? You may need to tile your memory input via " "the tf.contrib.seq2seq.tile_batch function with argument " "multiple=beam_width.") # TODO chg hack just remove for outgraph beam search, since attention states will change #with ops.control_dependencies( # [check_ops.assert_equal(cell_batch_size, # self._attention_mechanism.batch_size, # message=error_message)]): cell_output = array_ops.identity( cell_output, name="checked_cell_output") #alignments = self._attention_mechanism( # cell_output, previous_alignments=state.alignments) try: scores = self._attention_mechanism( cell_output, state.coverage) except Exception: scores = self._attention_mechanism( cell_output, state.coverage, state.alignments) alignments = self._probability_fn(scores) coverage = state.coverage + alignments if self._no_context: attention = cell_output else: # Reshape from [batch_size, memory_time] to [batch_size, 1, memory_time] #expanded_alignments = array_ops.expand_dims(alignments, 1) expanded_alignments = array_ops.expand_dims(alignments, 2) # Context is the inner product of alignments and values along the # memory time dimension. # alignments shape is # [batch_size, 1, memory_time] # attention_mechanism.values shape is # [batch_size, memory_time, attention_mechanism.num_units] # the batched matmul is over memory_time, so the output shape is # [batch_size, 1, attention_mechanism.num_units]. # we then squeeze out the singleton dim. attention_mechanism_values = self._attention_mechanism.values #context = math_ops.matmul(expanded_alignments, attention_mechanism_values) #context = array_ops.squeeze(context, [1]) context = math_ops.reduce_sum(expanded_alignments * attention_mechanism_values, [1]) if self._attention_layer is not None: attention = self._attention_layer( array_ops.concat([cell_output, context], 1)) else: attention = context if self._alignment_history: alignment_history = state.alignment_history.write( state.time, alignments) else: alignment_history = () if self._score_as_alignment: alignments = scores #TODO maybe outupt both alignments and scores ? next_state = CoverageAttentionWrapperState( time=state.time + 1, cell_state=next_cell_state, attention=attention, alignments=alignments, alignment_history=alignment_history, coverage=coverage) #TODO why use output_alignment will be slower for dyanmic_rnn ? if self._output_alignment: return alignments, next_state if self._output_attention: return attention, next_state else: return cell_output, next_state ================================================ FILE: utils/melt/seq2seq/basic_decoder.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A class of Decoders that may sample to generate the next input. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections from tensorflow.contrib.seq2seq.python.ops import decoder #from tensorflow.contrib.seq2seq.python.ops import helper as helper_py from melt.seq2seq import helper as helper_py from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.util import nest import tensorflow as tf __all__ = [ "BasicDecoderOutput", "BasicDecoder", "BasicTrainingDecoder", ] class BasicDecoderOutput( collections.namedtuple("BasicDecoderOutput", ("rnn_output", "sample_id"))): pass class BasicDecoder(decoder.Decoder): """Basic sampling decoder.""" def __init__(self, cell, helper, initial_state, vocab_size=None, output_fn=None): """Initialize BasicDecoder. Args: cell: An `RNNCell` instance. helper: A `Helper` instance. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. The initial state of the RNNCell. output_fn: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. Raises: TypeError: if `cell`, `helper` or `output_fn` have an incorrect type. """ if not isinstance(cell, rnn_cell_impl.RNNCell): raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) #if not isinstance(helper, helper_py.Helper): # raise TypeError("helper must be a Helper, received: %s" % type(helper)) self._cell = cell self._helper = helper self._initial_state = initial_state self._output_fn = None if vocab_size is not None: if output_fn is not None: self._output_fn = output_fn else: self._output_fn = lambda cell_output: tf.contrib.layers.fully_connected( inputs=cell_output, num_outputs=vocab_size, activation_fn=None) self._vocab_size = vocab_size self._output_size = self._vocab_size if self._vocab_size is not None else self._cell.output_size @property def batch_size(self): return self._helper.batch_size @property def output_size(self): return BasicDecoderOutput( rnn_output=self._output_size, sample_id=tf.TensorShape([])) @property def output_dtype(self): return BasicDecoderOutput( rnn_output=tf.float32, sample_id=tf.int32) def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, first_inputs, initial_state)`. """ return self._helper.initialize() + (self._initial_state,) def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ with ops.name_scope(name, "BasicDecoderStep", (time, inputs, state)): cell_outputs, cell_state = self._cell(inputs, state) if self._output_fn is not None: try: cell_outputs = self._output_fn(cell_outputs) except Exception: try: cell_outputs = self._output_fn(cell_outputs, cell_state) except Exception: cell_outputs = self._output_fn(time, cell_outputs, cell_state) sample_ids = self._helper.sample( time=time, outputs=cell_outputs, state=cell_state) (finished, next_inputs, next_state) = self._helper.next_inputs( time=time, outputs=cell_outputs, state=cell_state, sample_ids=sample_ids) outputs = BasicDecoderOutput(cell_outputs, sample_ids) return (outputs, next_state, next_inputs, finished) class BasicTrainingDecoder(decoder.Decoder): """Basic sampling decoder.""" def __init__(self, cell, helper, initial_state, vocab_size=None, output_fn=None): """Initialize BasicDecoder. Args: cell: An `RNNCell` instance. helper: A `Helper` instance. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. The initial state of the RNNCell. output_fn: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. Raises: TypeError: if `cell`, `helper` or `output_fn` have an incorrect type. """ if not isinstance(cell, rnn_cell_impl.RNNCell): raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) if not isinstance(helper, helper_py.Helper): raise TypeError("helper must be a Helper, received: %s" % type(helper)) self._cell = cell self._helper = helper self._initial_state = initial_state self._output_fn = None if vocab_size is not None: if output_fn is not None: self._output_fn = output_fn else: self._output_fn = lambda cell_output: tf.contrib.layers.linear( inputs=cell_output, num_outputs=vocab_size) self._vocab_size = vocab_size self._output_size = self._vocab_size if self._vocab_size is not None else self._cell.output_size @property def batch_size(self): return self._helper.batch_size @property def output_size(self): return self._output_size @property def output_dtype(self): return tf.float32 def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, first_inputs, initial_state)`. """ return self._helper.initialize() + (self._initial_state,) def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ with ops.name_scope(name, "BasicDecoderStep", (time, inputs, state)): cell_outputs, cell_state = self._cell(inputs, state) if self._output_fn is not None: try: cell_outputs = self._output_fn(cell_outputs) except Exception: try: cell_outputs = self._output_fn(cell_outputs, cell_state) except Exception: cell_outputs = self._output_fn(time, cell_outputs, cell_state) (finished, next_inputs, next_state) = self._helper.next_inputs( time=time, outputs=cell_outputs, state=cell_state) return (cell_outputs, next_state, next_inputs, finished) ================================================ FILE: utils/melt/seq2seq/beam_decoder.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file beam_decoder.py # \author chenghuige # \date 2017-01-16 14:15:32.474973 # \Description # ============================================================================== """ NOTICE this is ingraph beam decode as opposed to melt.seq2seq.beam_search which is ougraph beam search but here also not dynamic, just use loop, do all max_steps until stop, for beam search actually you can not early stop also since more steps results might be better. if length normalizer == 0. then start from same state longer path could not be better. so you might look at partial result if it not better then all the done beam then mark it as done TODO but if length normalizer > 0 then.. you can not early stop by theory.. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python.ops import variable_scope from tensorflow.python.ops import array_ops from tensorflow.python.util import nest import collections import melt def rnn_decoder(decoder_inputs, initial_state, cell, loop_function=None, scope=None): """RNN decoder for the sequence-to-sequence model. copy from tf contrib but modify a bit add state change Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: If not None, this function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). This can be used for decoding, but also for training to emulate http://arxiv.org/abs/1506.03099. Signature -- loop_function(prev, i) = next * prev is a 2D Tensor of shape [batch_size x output_size], * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size x input_size]. scope: VariableScope for the created subgraph; defaults to "rnn_decoder". Returns: A tuple of the form (outputs, state), where: outputs: A list of the same length as decoder_inputs of 2D Tensors with shape [batch_size x output_size] containing generated outputs. state: The state of each cell at the final time-step. It is a 2D Tensor of shape [batch_size x cell.state_size]. (Note that in some cases, like basic RNN cell or GRU cell, outputs and states can be the same. They are different for LSTM cells though.) """ with variable_scope.variable_scope(scope or "rnn_decoder"): state = initial_state outputs = [] prev = None for i, inp in enumerate(decoder_inputs): if loop_function is not None and prev is not None: with variable_scope.variable_scope("loop_function", reuse=True): inp, state = loop_function(i, prev, state) if i > 0: variable_scope.get_variable_scope().reuse_variables() output, state = cell(inp, state) outputs.append(output) if loop_function is not None: prev = output return outputs, state class BeamDecoderOutputs( collections.namedtuple("BeamDecoderOutputs", ("paths", "scores", "decoder"))): def clone(self, **kwargs): return super(BeamDecoderOutputs, self)._replace(**kwargs) class BeamDecoderState( collections.namedtuple("BeamDecoderState", ("cell_state", "alignment_history"))): def clone(self, **kwargs): return super(BeamDecoderState, self)._replace(**kwargs) def beam_decode(input, max_words, initial_state, cell, loop_function, scope=None, beam_size=7, done_token=0, output_fn=None, length_normalization_factor=0., prob_as_score=True, topn=1, need_softmax=True, logprobs_history=False, alignment_history=False, fast_greedy=False): """ Beam search decoder copy from https://gist.github.com/igormq/000add00702f09029ea4c30eba976e0a make small modifications, add more comments and add topn support, and length_normalization_factor NOTICE!: not dynamic, for loop based here not tf.while_loop, so ingraph but currently static build graph TODO: consider beam search decoder from https://github.com/google/seq2seq, that implementation might be dynamic! but that implementaion only allow batch size 1, so use batch[beam_size] ? TODO:make beam_decode dynamic version, by using named_tuple, and tf.nest_map NOTICE! fast_greedy mode not test much, just use fast_greed=False, just to calc topn even topn is 1 Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: This function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). Signature -- loop_function(prev_symbol, i) = next * prev_symbol is a 1D Tensor of shape [batch_size*beam_size] * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size*beam_size, input_size]. scope: Passed to seq2seq.rnn_decoder beam_size: An integer beam size to use for each example done_token: An integer token that specifies the STOP symbol max_words: if max_words == 3, ouputs is as beow, output array len is fixed as 3 田地 里 1.87996e-05 [748 21 9] 3 [0.10245205285997697, 0.923504919660139, 6.374825504667079e-06] 一个 弯着腰
1.59349e-06 [ 10 415 9] 3 [0.4947927940753284, 0.04485648322008847, 1.055874923485485e-06] 田地
1.64312e-07 [748 9 0] 3 Return: A tensor of dimensions [batch_size, len(decoder_inputs)] that corresponds to the 1-best beam for each batch. Known limitations: * The output sequence consisting of only a STOP symbol is not considered (zero-length sequences are not very useful, so this wasn't implemented) * The computation graph this creates is messy and not very well-optimized TODO: also return path lengths? """ decoder = BeamDecoder(input, #max_words + 2, #take step start from i==1 and need one more additional done token max_words, #now max words inclucde done token This is safe initial_state, beam_size=beam_size, done_token=done_token, output_fn=output_fn, length_normalization_factor=length_normalization_factor, topn=topn, need_softmax=need_softmax, logprobs_history=logprobs_history, alignment_history=alignment_history, fast_greedy=fast_greedy) _ = rnn_decoder( decoder.decoder_inputs, decoder.initial_state, cell=cell, loop_function = lambda i, prev, state: loop_function(i, prev, state, decoder), scope=scope) if fast_greedy: #compat with topn > 1 score = tf.expand_dims(decoder.logprobs_finished_beams, 1) path = tf.expand_dims(decoder.finished_beams, 1) else: path, score = decoder.calc_topn() if prob_as_score: score = tf.exp(score) outputs = BeamDecoderOutputs( paths=path, scores=score, decoder=decoder) return outputs, decoder.final_state #now without beam size 10, about seq->seq 20->4 10w vocab, about 70-100ms, notice the first decode will be slow 400ms+ #exp in deepiu/textsum/inference/infenrence.sh #TODO add alignments history support for ingraph beam search class BeamDecoder(): def __init__(self, input, max_steps, initial_state, beam_size=7, done_token=0, batch_size=None, num_classes=None, output_fn=None, length_normalization_factor=0., topn=1, need_softmax=True, logprobs_history=False, alignment_history=False, fast_greedy=False): self.length_normalization_factor = length_normalization_factor self.topn = topn self.need_softmax = need_softmax self.beam_size = beam_size self.batch_size = batch_size if self.batch_size is None: self.batch_size = melt.get_batch_size(input) self.max_len = max_steps self.num_classes = num_classes self.done_token = done_token self.pad_token = 0 self.output_fn = output_fn self.past_logprobs = None self.past_symbols = None self.past_step_logprobs = None self.fast_greedy = fast_greedy if self.fast_greedy: self.finished_beams = tf.zeros((self.batch_size, self.max_len), dtype=tf.int32) self.logprobs_finished_beams = tf.ones((self.batch_size,), dtype=tf.float32) * -float('inf') else: self.path_list = [] self.logprobs_list = [] self.step_logprobs_list = [] self.alignments_path_list = [] #for rnn_decoder function need one more step loop, since i== 0 will not output words, take step start from i==1 self.decoder_inputs = [None] * (self.max_len + 1) self.decoder_inputs[0] = tf.contrib.seq2seq.tile_batch(input, beam_size) self.initial_state = initial_state self.final_state = None self.log_probs_history = None self.alignment_history = None self.need_logprobs_history = logprobs_history self.need_alignment_history = alignment_history def calc_topn(self): #[batch_size, beam_size * (max_len-1)] logprobs = tf.concat(self.logprobs_list, 1) #[batch_size, topn] top_logprobs, indices = tf.nn.top_k(logprobs, self.topn) #-2 because max_words = max_len - 1 TODO length = self.beam_size * (self.max_len - 1) indice_offsets = tf.reshape( (tf.range(self.batch_size * length) // length) * length, [self.batch_size, length]) indice_offsets = indice_offsets[:, :self.topn] #[batch_size, max_len(length index) - 1, beam_size, max_len] paths = tf.concat(self.path_list, 1) if self.need_logprobs_history: step_logprobs_path = tf.concat(self.step_logprobs_list, 1) need_alignments = self.need_alignment_history and hasattr(self.final_state, 'alignments') #[batch_size * beam_size, max_len] paths = tf.reshape(paths, [-1, self.max_len]) if self.need_logprobs_history: step_logprobs_path = tf.reshape(step_logprobs_path, [-1, self.max_len]) if need_alignments: alignments_path = tf.concat(self.alignments_path_list, 1) alignments_path = tf.reshape(alignments_path, [self.batch_size * length, self.max_len, -1]) indices = indice_offsets + indices top_paths = tf.gather(paths, indices) if self.need_logprobs_history: top_step_logprobs_path = tf.gather(step_logprobs_path, indices) self.log_probs_history = top_step_logprobs_path if need_alignments: top_alignments_path = tf.gather(alignments_path, indices) self.alignment_history = top_alignments_path self.final_state = BeamDecoderState(cell_state=self.final_state.cell_state, alignment_history=self.alignment_history) return top_paths, top_logprobs def take_step(self, i, prev, state): if self.output_fn is not None: #[batch_size * beam_size, num_units] -> [batch_size * beam_size, num_classes] try: output = self.output_fn(prev) except Exception: output = self.output_fn(prev, state) else: output = prev self.output = output #[batch_size * beam_size, num_classes], here use log sofmax if self.need_softmax: logprobs = tf.nn.log_softmax(output) else: logprobs = tf.log(tf.maximum(output, 1e-12)) if self.num_classes is None: self.num_classes = tf.shape(logprobs)[1] need_logprobs_history = self.need_logprobs_history #->[batch_size, beam_size, num_classes] logprobs_batched = tf.reshape(logprobs, [-1, self.beam_size, self.num_classes]) logprobs_batched.set_shape((None, self.beam_size, None)) # Note: masking out entries to -inf plays poorly with top_k, so just subtract out a large number. nondone_mask = tf.reshape( tf.cast( tf.equal(tf.range(self.num_classes), self.done_token), tf.float32) * -1e18, [1, 1, self.num_classes]) if self.past_logprobs is None: #[batch_size, beam_size, num_classes] -> [batch_size, num_classes] #-> past_logprobs[batch_size, beam_size], indices[batch_size, beam_size] self.past_logprobs, indices = tf.nn.top_k( (logprobs_batched + nondone_mask)[:, 0, :], self.beam_size) if need_logprobs_history: step_logprobs = self.past_logprobs else: #logprobs_batched [batch_size, beam_size, num_classes] -> [batch_size, beam_size, num_classes] #past_logprobs [batch_size, beam_size] -> [batch_size, beam_size, 1] if need_logprobs_history: step_logprobs_batched = logprobs_batched logprobs_batched = logprobs_batched + tf.expand_dims(self.past_logprobs, 2) #get [batch_size, beam_size] each self.past_logprobs, indices = tf.nn.top_k( #[batch_size, beam_size * num_classes] tf.reshape(logprobs_batched + nondone_mask, [-1, self.beam_size * self.num_classes]), self.beam_size) if need_logprobs_history: #get current step logprobs [batch_size, beam_size] step_logprobs = tf.gather_nd(tf.reshape(step_logprobs_batched, [-1, self.beam_size * self.num_classes]), melt.to_nd_indices(indices)) # For continuing to the next symbols [batch_size, beam_size] symbols = indices % self.num_classes #from wich beam it comes [batch_size, beam_size] parent_refs = indices // self.num_classes # NOTE: outputing a zero-length sequence is not supported for simplicity reasons #hasky/jupter/tensorflow/beam-search2.ipynb below for mergeing path #here when i >= 2 # tf.reshape( # (tf.range(3 * 5) // 5) * 5, # [3, 5] # ).eval() # array([[ 0, 0, 0, 0, 0], # [ 5, 5, 5, 5, 5], # [10, 10, 10, 10, 10]], dtype=int32) parent_refs_offsets = tf.reshape( (tf.range(self.batch_size * self.beam_size) // self.beam_size) * self.beam_size, [self.batch_size, self.beam_size]) #[batch_size, beam_size] past_indices = parent_refs + parent_refs_offsets #[batch_size * beam_size] flattened_past_indices = tf.reshape(past_indices, [-1]) need_alignments = self.need_alignment_history and hasattr(state, 'alignments') if need_alignments: ori_alignments = tf.reshape(state.alignments, [self.batch_size, self.beam_size, -1]) #TODO might use nest.map_structure also #[batch_size, beam_size, attention_size] <- ([batch_size * beam_size, attention_size], [batch_size, beam_size]) alignments = tf.gather(state.alignments, past_indices) #TODO not support tf.TensorArray right now, can not use alignment_history in attention_wrapper def try_gather(x, indices): #if isinstance(x, tf.Tensor) and x.shape.ndims >= 2: assert isinstance(x, tf.Tensor) if x.shape.ndims >= 2: return tf.gather(x, indices) else: return x #must reorder state! including attention state = nest.map_structure(lambda x: try_gather(x, flattened_past_indices), state) if self.past_symbols is None: #here when i == 1, when i==0 will not do take step it just do one rnn() get output and use it for i==1 here #here will not need to gather state for inital state of each beam is the same #[batch_size, beam_size] -> [batch_size, beam_size, 1] self.past_symbols = tf.expand_dims(symbols, 2) if need_logprobs_history: self.past_step_logprobs = tf.expand_dims(step_logprobs, 2) if need_alignments: #[batch_size, beam_size, 1, attention_size] self.past_alignments = tf.expand_dims(alignments, 2) else: #self.past_symbols [batch_size, beam_size, i - 1] -> past_symbols_batch_major [batch_size * beam_size, i - 1] past_symbols_batch_major = tf.reshape(self.past_symbols, [-1, i-1]) if need_logprobs_history: past_step_logprobs_batch_major = tf.reshape(self.past_step_logprobs, [-1, i - 1]) if need_alignments: past_alignments = tf.reshape(self.past_alignments, [self.batch_size * self.beam_size, i - 1, -1]) #[batch_size, beam_size, i - 1] <- ([batch_size * beam_size, i - 1], [batch_size, beam_size]) beam_past_symbols = tf.gather(past_symbols_batch_major, past_indices) if need_logprobs_history: beam_past_step_logprobs = tf.gather(past_step_logprobs_batch_major, past_indices) if need_alignments: beam_past_alignments = tf.gather(past_alignments, past_indices) if not self.fast_greedy: #[batch_size, beam_size, max_len] path = tf.concat([self.past_symbols, tf.ones_like(tf.expand_dims(symbols, 2)) * self.done_token, tf.tile(tf.ones_like(tf.expand_dims(symbols, 2)) * self.pad_token, [1, 1, self.max_len - i])], 2) if need_logprobs_history: step_logprobs_path = tf.concat([self.past_step_logprobs, tf.expand_dims(step_logprobs_batched[:, :, self.done_token], 2), tf.tile(tf.ones_like(tf.expand_dims(step_logprobs, 2)) * -float('inf'), [1, 1, self.max_len - i])], 2) if need_alignments: #[batch_size, beam_size, max_len, attention_size] #NOTICE this is not correct for done token alignments(but currently best choice tokens state) need to modify the step before alignments_path = tf.concat([self.past_alignments, tf.expand_dims(ori_alignments, 2), tf.tile(tf.zeros_like(tf.expand_dims(alignments, 2)), [1, 1, self.max_len - i, 1])], 2) #[batch_size, 1, beam_size, max_len] path = tf.expand_dims(path, 1) self.path_list.append(path) if need_logprobs_history: step_logprobs_path = tf.expand_dims(step_logprobs_path, 1) self.step_logprobs_list.append(step_logprobs_path) if need_alignments: #[batch_size, 1, beam_size, max_len, attention_size] alignments_path = tf.expand_dims(alignments_path, 1) self.alignments_path_list.append(alignments_path) #[batch_size * beam_size, i - 1] -> [batch_size, beam_size, i] the best beam_size paths until step i self.past_symbols = tf.concat([beam_past_symbols, tf.expand_dims(symbols, 2)], 2) if need_logprobs_history: self.past_step_logprobs = tf.concat([beam_past_step_logprobs, tf.expand_dims(step_logprobs, 2)], 2) if need_alignments: self.past_alignments = tf.concat([beam_past_alignments, tf.expand_dims(alignments, 2)], 2) # For finishing the beam #[batch_size, beam_size] logprobs_done = logprobs_batched[:, :, self.done_token] if not self.fast_greedy: self.logprobs_list.append(logprobs_done / i ** self.length_normalization_factor) else: done_parent_refs = tf.cast(tf.argmax(logprobs_done, 1), tf.int32) done_parent_refs_offsets = tf.range(self.batch_size) * self.beam_size done_past_symbols = tf.gather(past_symbols_batch_major, done_parent_refs + done_parent_refs_offsets) #[batch_size, max_len] symbols_done = tf.concat([done_past_symbols, tf.ones_like(done_past_symbols[:,0:1]) * self.done_token, tf.tile(tf.zeros_like(done_past_symbols[:,0:1]), [1, self.max_len - i]) ], 1) #[batch_size, beam_size] -> [batch_size,] logprobs_done_max = tf.reduce_max(logprobs_done, 1) if self.length_normalization_factor > 0: logprobs_done_max /= i ** self.length_normalization_factor #[batch_size, max_len] self.finished_beams = tf.where(logprobs_done_max > self.logprobs_finished_beams, symbols_done, self.finished_beams) self.logprobs_finished_beams = tf.maximum(logprobs_done_max, self.logprobs_finished_beams) #->[batch_size * beam_size,] symbols_flat = tf.reshape(symbols, [-1]) self.final_state = state return symbols_flat, state ================================================ FILE: utils/melt/seq2seq/beam_decoder_fn.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """ depreciated """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.util import nest from tensorflow.python.ops import tensor_array_ops import tensorflow as tf __all__ = ["beam_decoder_fn_inference"] def beam_decoder_fn_inference(output_fn, first_input, encoder_state, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, decoder, dtype=dtypes.int32, name=None): """ Greedy decoder function for a sequence-to-sequence model used in the `dynamic_rnn_decoder`. The `greedy_decoder_fn_inference` is a greedy inference function for a sequence-to-sequence model. It should be used when `dynamic_rnn_decoder` is in the inference mode. The `greedy_decoder_fn_inference` is called with a set of the user arguments and returns the `decoder_fn`, which can be passed to the `dynamic_rnn_decoder`, such that ``` dynamic_fn_inference = greedy_decoder_fn_inference(...) outputs_inference, state_inference = dynamic_rnn_decoder( decoder_fn=dynamic_fn_inference, ...) ``` Further usage can be found in the `kernel_tests/seq2seq_test.py`. Args: output_fn: An output function to project your `cell_output` onto class logits. An example of an output function; ``` tf.variable_scope("decoder") as varscope output_fn = lambda x: layers.linear(x, num_decoder_symbols, scope=varscope) outputs_train, state_train = seq2seq.dynamic_rnn_decoder(...) logits_train = output_fn(outputs_train) varscope.reuse_variables() logits_inference, state_inference = seq2seq.dynamic_rnn_decoder( output_fn=output_fn, ...) ``` If `None` is supplied it will act as an identity function, which might be wanted when using the RNNCell `OutputProjectionWrapper`. encoder_state: The encoded state to initialize the `dynamic_rnn_decoder`. embeddings: The embeddings matrix used for the decoder sized `[num_decoder_symbols, embedding_size]`. start_of_sequence_id: The start of sequence ID in the decoder embeddings. end_of_sequence_id: The end of sequence ID in the decoder embeddings. maximum_length: The maximum allowed of time steps to decode. num_decoder_symbols: The number of classes to decode at each time step. dtype: (default: `dtypes.int32`) The default data type to use when handling integer objects. name: (default: `None`) NameScope for the decoder function; defaults to "greedy_decoder_fn_inference" Returns: A decoder function with the required interface of `dynamic_rnn_decoder` intended for inference. """ with ops.name_scope(name, "beam_decoder_fn_inference", [output_fn, first_input, encoder_state, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, dtype]): first_input = ops.convert_to_tensor(first_input, dtypes.float32) end_of_sequence_id = ops.convert_to_tensor(end_of_sequence_id, dtype) maximum_length = ops.convert_to_tensor(maximum_length, dtype) num_decoder_symbols = ops.convert_to_tensor(num_decoder_symbols, dtype) encoder_info = nest.flatten(encoder_state)[0] batch_size = encoder_info.get_shape()[0].value if output_fn is None: output_fn = lambda x: x if batch_size is None: batch_size = array_ops.shape(encoder_info)[0] def decoder_fn(time, cell_state, cell_input, cell_output, context_state): """ Decoder function used in the `dynamic_rnn_decoder` with the purpose of inference. The main difference between this decoder function and the `decoder_fn` in `greedy_decoder_fn_train` is how `next_cell_input` is calculated. In this decoder function we calculate the next input by applying an argmax across the feature dimension of the output from the decoder. This is a greedy-search approach. (Bahdanau et al., 2014) & (Sutskever et al., 2014) use beam-search instead. Args: time: positive integer constant reflecting the current timestep. cell_state: state of RNNCell. cell_input: input provided by `dynamic_rnn_decoder`. cell_output: output of RNNCell. context_state: context state provided by `dynamic_rnn_decoder`. Returns: A tuple (done, next state, next input, emit output, next context state) where: done: A boolean vector to indicate which sentences has reached a `end_of_sequence_id`. This is used for early stopping by the `dynamic_rnn_decoder`. When `time>=maximum_length` a boolean vector with all elements as `true` is returned. next state: `cell_state`, this decoder function does not modify the given state. next input: The embedding from argmax of the `cell_output` is used as `next_input`. emit output: If `output_fn is None` the supplied `cell_output` is returned, else the `output_fn` is used to update the `cell_output` before calculating `next_input` and returning `cell_output`. next context state: `context_state`, this decoder function does not modify the given context state. The context state could be modified when applying e.g. beam search. """ with ops.name_scope(name, "greedy_decoder_fn_inference", [time, cell_state, cell_input, cell_output, context_state]): if cell_input is not None: raise ValueError("Expected cell_input to be None, but saw: %s" % cell_input) if cell_output is None: # invariant that this is time == 0 next_input_id = None done = array_ops.zeros([batch_size,], dtype=dtypes.bool) cell_state = encoder_state cell_output = array_ops.zeros([num_decoder_symbols], dtype=dtypes.float32) #context_state = tensor_array_ops.TensorArray( ## #dtype=dtype, tensor_array_name="beam_path", size=1, infer_shape=False) # dtype=dtype, tensor_array_name="beam_path", size=0, dynamic_size=True, infer_shape=False) ##context_state = None context_state = decoder.finished_beams else: #cell_output, finished_beams, log_prob_finished_beams = output_fn(cell_output, time) cell_output, next_input_id = output_fn(cell_output, time) done = math_ops.equal(next_input_id, end_of_sequence_id) #done = tf.zeros_like(next_input_id, dtype=tf.bool) #context_state = context_state.write(0, best_path) #context_state = context_state.write(time - 1, next_input_id) #context_state = context_state.write(time - 1, best_path) #context_state = decoder.past_symbols, decoder.finished_beams, decoder.logprobs_finished_beams context_state = decoder.finished_beams next_input = array_ops.gather(embeddings, next_input_id) if next_input_id is not None else first_input # if time == maxlen, return all true vector done = control_flow_ops.cond(math_ops.equal(time, maximum_length), lambda: array_ops.ones([batch_size,], dtype=dtypes.bool), lambda: done) return (done, cell_state, next_input, cell_output, context_state) return decoder_fn ================================================ FILE: utils/melt/seq2seq/beam_search.py ================================================ #!/usr/bin/env python # ============================================================================== # \file beam_search.py # \author chenghuige # \date 2017-03-13 15:49:32.201102 # \Description # ============================================================================== """ now outgraph beam search copy and modify a bit from google im2txt TODO read and experiment https://github.com/google/seq2seq/tree/master/seq2seq for beam search TODO trie based selective fast beam search! """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import numpy as np from gezi import TopN class BeamSearchState(object): """Represents a complete or partial beam search state.""" def __init__(self, words, state, logprob, score, logprobs, alignments_list=None, metadata=None): """Initializes the Caption. Args: words: state: Model state after generating the previous word. logprob: Log-probability of the BeamSearchState. score: Score of the BeamSearchState. metadata: Optional metadata associated with the partial sentence. If not None, a list of strings with the same length as 'words'. """ self.words = words self.state = state self.logprob = logprob self.score = score self.logprobs = logprobs self.alignments_list = alignments_list self.metadata = metadata def __cmp__(self, other): """Compares BeamSearchState by score.""" assert isinstance(other, BeamSearchState) if self.score == other.score: return 0 elif self.score < other.score: return -1 else: return 1 # For Python 3 compatibility (__cmp__ is deprecated). def __lt__(self, other): assert isinstance(other, BeamSearchState) return self.score < other.score # Also for Python 3 compatibility. def __eq__(self, other): assert isinstance(other, BeamSearchState) return self.score == other.score def beam_search(init_states, step_func, end_id, max_words, length_normalization_factor=0.): """ Runs beam search caption generation on a single input notice beam size is not an input params since we encode it ingraph, and here get it from graph Args: init_states is a tuple of (state, ids, logprobs) max_words here means max decode length/max words ie if 3 means oly can generate: A B C Returns: A list of BeamSearchState sorted by descending score. """ # Feed in the image to get the initial state. #TODO right now ingraph beam size must here equal to out graph beam size.. if len(init_states) == 4: beam_size, initial_state, ids, logprobs = init_states initial_alignments = [] else: beam_size, initial_state, ids, logprobs, initial_alignments = init_states assert initial_alignments is not None initial_alignments = [initial_alignments[0]] partial_beams = TopN(beam_size) complete_beams = TopN(beam_size) for id, logprob in zip(ids[0], logprobs[0]): #assert id != end_id if id != end_id: #first id be done_id not allowed beam = BeamSearchState( words=[id], state=initial_state[0], logprob=logprob, score=logprob, logprobs=[logprob], alignments_list=initial_alignments, #[] or [..] metadata=[""]) partial_beams.push(beam) #print('init', np.shape(initial_alignments)) # Run beam search. max_words not - 1 for we wil consider as an additional step for _ in range(max_words): partial_beams_list = partial_beams.extract() partial_beams.reset() input_feed = np.array([c.words[-1] for c in partial_beams_list]) state_feed = np.array([c.state for c in partial_beams_list]) step_result = step_func(input_feed, state_feed) if len(step_result) == 3: state, ids, logprobs = step_result alignments = None else: state, ids, logprobs, alignments = step_result assert alignments is not None #print('then', np.shape(alignments)) for i, partial_beam in enumerate(partial_beams_list): alignments_list = partial_beam.alignments_list if alignments is not None: alignments_list = alignments_list + [alignments[i]] for w, p in zip(ids[i], logprobs[i]): words = partial_beam.words + [w] logprob = partial_beam.logprob + p logprob_list = partial_beam.logprobs + [p] score = logprob #TODO: right now not consider metadata #if metadata: # metadata_list = partial_caption.metadata + [metadata[i]] #else: # metadata_list = None metadata_list = None if w == end_id: if length_normalization_factor > 0: score /= len(words)**length_normalization_factor beam = BeamSearchState(words, state[i], logprob, score, logprob_list, alignments_list, metadata_list) complete_beams.push(beam) else: beam = BeamSearchState(words, state[i], logprob, score, logprob_list, alignments_list, metadata_list) partial_beams.push(beam) if partial_beams.size() == 0: # We have run out of partial candidates; happens when beam_size = 1. break # If we have no complete captions then fall back to the partial captions. # But never output a mixture of complete and partial captions because a # partial caption could have a higher score than all the complete captions. if not complete_beams.size(): print('Warning no complete beam after max_words, for patial results may be one step more then max_words:', max_words) complete_beams = partial_beams return complete_beams.extract(sort=True) ================================================ FILE: utils/melt/seq2seq/beam_search_decoder.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A decoder that performs beam search.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections from tensorflow.contrib.seq2seq.python.ops import beam_search_ops from tensorflow.contrib.seq2seq.python.ops import decoder from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.ops import tensor_array_ops from tensorflow.python.util import nest __all__ = [ "BeamSearchDecoderOutput", "BeamSearchDecoderState", "BeamSearchDecoder", "FinalBeamSearchDecoderOutput", "tile_batch", ] class BeamSearchDecoderState( collections.namedtuple("BeamSearchDecoderState", ("cell_state", "log_probs", "finished", "lengths"))): pass class BeamSearchDecoderOutput( collections.namedtuple("BeamSearchDecoderOutput", ("scores", "predicted_ids", "parent_ids"))): pass class FinalBeamSearchDecoderOutput( collections.namedtuple("FinalBeamDecoderOutput", ["predicted_ids", "beam_search_decoder_output"])): """Final outputs returned by the beam search after all decoding is finished. Args: predicted_ids: The final prediction. A tensor of shape `[T, batch_size, beam_width]`. beam_search_decoder_output: An instance of `BeamSearchDecoderOutput` that describes the state of the beam search. """ pass def _tile_batch(t, multiplier): """Core single-tensor implementation of tile_batch.""" t = ops.convert_to_tensor(t, name="t") shape_t = array_ops.shape(t) if t.shape.ndims is None or t.shape.ndims < 1: raise ValueError("t must have statically known rank") tiling = [1] * (t.shape.ndims + 1) tiling[1] = multiplier tiled_static_batch_size = ( t.shape[0].value * multiplier if t.shape[0].value is not None else None) tiled = array_ops.tile(array_ops.expand_dims(t, 1), tiling) tiled = array_ops.reshape( tiled, array_ops.concat(([shape_t[0] * multiplier], shape_t[1:]), 0)) tiled.set_shape( tensor_shape.TensorShape( [tiled_static_batch_size]).concatenate(t.shape[1:])) return tiled def tile_batch(t, multiplier, name=None): """Tile the batch dimension of a (possibly nested structure of) tensor(s) t. For each tensor t in a (possibly nested structure) of tensors, this function takes a tensor t shaped `[batch_size, s0, s1, ...]` composed of minibatch entries `t[0], ..., t[batch_size - 1]` and tiles it to have a shape `[batch_size * multiplier, s0, s1, ...]` composed of minibatch entries `t[0], t[0], ..., t[1], t[1], ...` where each minibatch entry is repeated `multiplier` times. Args: t: `Tensor` shaped `[batch_size, ...]`. multiplier: Python int. name: Name scope for any created operations. Returns: A (possibly nested structure of) `Tensor` shaped `[batch_size * multiplier, ...]`. Raises: ValueError: if tensor(s) `t` do not have a statically known rank or the rank is < 1. """ flat_t = nest.flatten(t) with ops.name_scope(name, "tile_batch", flat_t + [multiplier]): return nest.map_structure(lambda t_: _tile_batch(t_, multiplier), t) def _check_maybe(t): if isinstance(t, tensor_array_ops.TensorArray): raise TypeError( "TensorArray state is not supported by BeamSearchDecoder: %s" % t.name) if t.shape.ndims is None: raise ValueError( "Expected tensor (%s) to have known rank, but ndims == None." % t) class BeamSearchDecoder(decoder.Decoder): """BeamSearch sampling decoder. **NOTE** If you are using the `BeamSearchDecoder` with a cell wrapped in `AttentionWrapper`, then you must ensure that: - The encoder output has been tiled to `beam_width` via @{tf.contrib.seq2seq.tile_batch} (NOT `tf.tile`). - The `batch_size` argument passed to the `zero_state` method of this wrapper is equal to `true_batch_size * beam_width`. - The initial state created with `zero_state` above contains a `cell_state` value containing properly tiled final state from the encoder. An example: ``` tiled_encoder_outputs = tf.contrib.seq2seq.tile_batch( encoder_outputs, multiplier=beam_width) tiled_encoder_final_state = tf.conrib.seq2seq.tile_batch( encoder_final_state, multiplier=beam_width) tiled_sequence_length = tf.contrib.seq2seq.tile_batch( sequence_length, multiplier=beam_width) attention_mechanism = MyFavoriteAttentionMechanism( num_units=attention_depth, memory=tiled_inputs, memory_sequence_length=tiled_sequence_length) attention_cell = AttentionWrapper(cell, attention_mechanism, ...) decoder_initial_state = attention_cell.zero_state( dtype, batch_size=true_batch_size * beam_width) decoder_initial_state = decoder_initial_state.clone( cell_state=tiled_encoder_final_state) ``` """ def __init__(self, cell, embedding, first_input, end_token, initial_state, beam_width, vocab_size=None, output_fn=None, length_penalty_weight=0.0): """Initialize the BeamSearchDecoder. Args: cell: An `RNNCell` instance. embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. beam_width: Python integer, the number of beams. output_layer: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Raises: TypeError: if `cell` is not an instance of `RNNCell`, or `output_layer` is not an instance of `tf.layers.Layer`. ValueError: If `start_tokens` is not a vector or `end_token` is not a scalar. """ if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) self._cell = cell self._output_layer = output_fn self._layer_output_shape = vocab_size if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") if self._end_token.get_shape().ndims != 0: raise ValueError("end_token must be a scalar") self._batch_size = first_input.shape[0].value if self._batch_size is None: self._batch_size = array_ops.shape(first_input)[0] self._beam_width = beam_width self._length_penalty_weight = length_penalty_weight self._initial_cell_state = nest.map_structure( self._maybe_split_batch_beams, initial_state, self._cell.state_size) self._start_inputs = array_ops.tile( array_ops.expand_dims(first_input, 1), [1, self._beam_width, 1]) self._finished = array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.bool) @property def batch_size(self): return self._batch_size def _rnn_output_size(self): size = self._cell.output_size if self._output_layer is None: return size else: # To use layer's compute_output_shape, we need to convert the # RNNCell's output_size entries into shapes with an unknown # batch size. We then pass this through the layer's # compute_output_shape and read off all but the first (batch) # dimensions to get the output size of the rnn with the layer # applied to the top. output_shape_with_unknown_batch = nest.map_structure( lambda s: tensor_shape.TensorShape([None]).concatenate(s), size) # layer_output_shape = self._output_layer._compute_output_shape( # pylint: disable=protected-access # output_shape_with_unknown_batch) layer_output_shape = self._layer_output_shape #return nest.map_structure(lambda s: s[1:], layer_output_shape) return layer_output_shape @property def output_size(self): # Return the cell output and the id return BeamSearchDecoderOutput( scores=tensor_shape.TensorShape([self._beam_width]), predicted_ids=tensor_shape.TensorShape([self._beam_width]), parent_ids=tensor_shape.TensorShape([self._beam_width])) @property def output_dtype(self): # Assume the dtype of the cell is the output_size structure # containing the input_state's first component's dtype. # Return that structure and int32 (the id) dtype = nest.flatten(self._initial_cell_state)[0].dtype return BeamSearchDecoderOutput( scores=nest.map_structure(lambda _: dtype, self._rnn_output_size()), predicted_ids=dtypes.int32, parent_ids=dtypes.int32) def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, start_inputs, initial_state)`. """ finished, start_inputs = self._finished, self._start_inputs initial_state = BeamSearchDecoderState( cell_state=self._initial_cell_state, log_probs=array_ops.zeros( [self._batch_size, self._beam_width], dtype=nest.flatten(self._initial_cell_state)[0].dtype), finished=finished, lengths=array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.int64)) return (finished, start_inputs, initial_state) def finalize(self, outputs, final_state, sequence_lengths): """Finalize and return the predicted_ids. Args: outputs: An instance of BeamSearchDecoderOutput. final_state: An instance of BeamSearchDecoderState. Passed through to the output. sequence_lengths: An `int64` tensor shaped `[batch_size, beam_width]`. The sequence lengths determined for each beam during decode. Returns: outputs: An instance of FinalBeamSearchDecoderOutput where the predicted_ids are the result of calling _gather_tree. final_state: The same input instance of BeamSearchDecoderState. """ predicted_ids = beam_search_ops.gather_tree( outputs.predicted_ids, outputs.parent_ids, sequence_length=sequence_lengths) outputs = FinalBeamSearchDecoderOutput( beam_search_decoder_output=outputs, predicted_ids=predicted_ids) return outputs, final_state def _merge_batch_beams(self, t, s=None): """Merges the tensor from a batch of beams into a batch by beams. More exactly, t is a tensor of dimension [batch_size, beam_width, s]. We reshape this into [batch_size*beam_width, s] Args: t: Tensor of dimension [batch_size, beam_width, s] s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size * beam_width, s]. """ if isinstance(s, ops.Tensor): s = tensor_shape.as_shape(tensor_util.constant_value(s)) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) static_batch_size = tensor_util.constant_value(self._batch_size) batch_size_beam_width = ( None if static_batch_size is None else static_batch_size * self._beam_width) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size * self._beam_width], t_shape[2:]), 0)) reshaped_t.set_shape( (tensor_shape.TensorShape([batch_size_beam_width]).concatenate(s))) return reshaped_t def _split_batch_beams(self, t, s=None): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s]. s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: ValueError: If, after reshaping, the new tensor is not shaped `[batch_size, beam_width, s]` (assuming batch_size and beam_width are known statically). """ if isinstance(s, ops.Tensor): s = tensor_shape.TensorShape(tensor_util.constant_value(s)) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size, self._beam_width], t_shape[1:]), 0)) static_batch_size = tensor_util.constant_value(self._batch_size) expected_reshaped_shape = tensor_shape.TensorShape( [static_batch_size, self._beam_width]).concatenate(s) if not reshaped_t.shape.is_compatible_with(expected_reshaped_shape): raise ValueError("Unexpected behavior when reshaping between beam width " "and batch size. The reshaped tensor has shape: %s. " "We expected it to have shape " "(batch_size, beam_width, depth) == %s. Perhaps you " "forgot to create a zero_state with " "batch_size=encoder_batch_size * beam_width?" % (reshaped_t.shape, expected_reshaped_shape)) reshaped_t.set_shape(expected_reshaped_shape) return reshaped_t def _maybe_split_batch_beams(self, t, s): """Maybe splits the tensor from a batch by beams into a batch of beams. We do this so that we can use nest and not run into problems with shapes. Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: Either a reshaped version of t with dimension [batch_size, beam_width, s] if t's first dimension is of size batch_size*beam_width or t if not. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ _check_maybe(t) if t.shape.ndims >= 1: return self._split_batch_beams(t, s) else: return t def _maybe_merge_batch_beams(self, t, s): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ _check_maybe(t) if t.shape.ndims >= 2: return self._merge_batch_beams(t, s) else: return t def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ batch_size = self._batch_size beam_width = self._beam_width end_token = self._end_token length_penalty_weight = self._length_penalty_weight with ops.name_scope(name, "BeamSearchDecoderStep", (time, inputs, state)): cell_state = state.cell_state inputs = nest.map_structure( lambda inp: self._merge_batch_beams(inp, s=inp.shape[2:]), inputs) cell_state = nest.map_structure( self._maybe_merge_batch_beams, cell_state, self._cell.state_size) cell_outputs, next_cell_state = self._cell(inputs, cell_state) cell_outputs = nest.map_structure( lambda out: self._split_batch_beams(out, out.shape[1:]), cell_outputs) next_cell_state = nest.map_structure( self._maybe_split_batch_beams, next_cell_state, self._cell.state_size) if self._output_layer is not None: cell_outputs = self._output_layer(cell_outputs) beam_search_output, beam_search_state = _beam_search_step( time=time, logits=cell_outputs, next_cell_state=next_cell_state, beam_state=state, batch_size=batch_size, beam_width=beam_width, end_token=end_token, length_penalty_weight=length_penalty_weight) finished = beam_search_state.finished sample_ids = beam_search_output.predicted_ids next_inputs = control_flow_ops.cond( math_ops.reduce_all(finished), lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (beam_search_output, beam_search_state, next_inputs, finished) def _beam_search_step(time, logits, next_cell_state, beam_state, batch_size, beam_width, end_token, length_penalty_weight): """Performs a single step of Beam Search Decoding. Args: time: Beam search time step, should start at 0. At time 0 we assume that all beams are equal and consider only the first beam for continuations. logits: Logits at the current time step. A tensor of shape `[batch_size, beam_width, vocab_size]` next_cell_state: The next state from the cell, e.g. an instance of AttentionWrapperState if the cell is attentional. beam_state: Current state of the beam search. An instance of `BeamSearchDecoderState`. batch_size: The batch size for this input. beam_width: Python int. The size of the beams. end_token: The int32 end token. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: A new beam state. """ static_batch_size = tensor_util.constant_value(batch_size) # Calculate the current lengths of the predictions prediction_lengths = beam_state.lengths previously_finished = beam_state.finished # Calculate the total log probs for the new hypotheses # Final Shape: [batch_size, beam_width, vocab_size] step_log_probs = nn_ops.log_softmax(logits) step_log_probs = _mask_probs(step_log_probs, end_token, previously_finished) total_probs = array_ops.expand_dims(beam_state.log_probs, 2) + step_log_probs # Calculate the continuation lengths by adding to all continuing beams. vocab_size = logits.shape[-1].value or array_ops.shape(logits)[-1] lengths_to_add = array_ops.one_hot( indices=array_ops.tile( array_ops.reshape(end_token, [1, 1]), [batch_size, beam_width]), depth=vocab_size, on_value=constant_op.constant(0, dtype=dtypes.int64), off_value=constant_op.constant(1, dtype=dtypes.int64), dtype=dtypes.int64) add_mask = (1 - math_ops.to_int64(previously_finished)) lengths_to_add = array_ops.expand_dims(add_mask, 2) * lengths_to_add new_prediction_lengths = ( lengths_to_add + array_ops.expand_dims(prediction_lengths, 2)) # Calculate the scores for each beam scores = _get_scores( log_probs=total_probs, sequence_lengths=new_prediction_lengths, length_penalty_weight=length_penalty_weight) time = ops.convert_to_tensor(time, name="time") # During the first time step we only consider the initial beam scores_shape = array_ops.shape(scores) scores_flat = control_flow_ops.cond( time > 0, lambda: array_ops.reshape(scores, [batch_size, -1]), lambda: scores[:, 0]) num_available_beam = control_flow_ops.cond( time > 0, lambda: math_ops.reduce_prod(scores_shape[1:]), lambda: math_ops.reduce_prod(scores_shape[2:])) # Pick the next beams according to the specified successors function next_beam_size = math_ops.minimum( ops.convert_to_tensor(beam_width, dtype=dtypes.int32, name="beam_width"), num_available_beam) next_beam_scores, word_indices = nn_ops.top_k(scores_flat, k=next_beam_size) next_beam_scores.set_shape([static_batch_size, beam_width]) word_indices.set_shape([static_batch_size, beam_width]) # Pick out the probs, beam_ids, and states according to the chosen predictions next_beam_probs = _tensor_gather_helper( gather_indices=word_indices, gather_from=total_probs, batch_size=batch_size, range_size=beam_width * vocab_size, gather_shape=[-1], name="next_beam_probs") # Note: just doing the following # math_ops.to_int32(word_indices % vocab_size, # name="next_beam_word_ids") # would be a lot cleaner but for reasons unclear, that hides the results of # the op which prevents capturing it with tfdbg debug ops. raw_next_word_ids = math_ops.mod(word_indices, vocab_size, name="next_beam_word_ids") next_word_ids = math_ops.to_int32(raw_next_word_ids) next_beam_ids = math_ops.to_int32(word_indices / vocab_size, name="next_beam_parent_ids") # Append new ids to current predictions previously_finished = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=previously_finished, batch_size=batch_size, range_size=beam_width, gather_shape=[-1]) next_finished = math_ops.logical_or(previously_finished, math_ops.equal(next_word_ids, end_token), name="next_beam_finished") # Calculate the length of the next predictions. # 1. Finished beams remain unchanged # 2. Beams that are now finished (EOS predicted) remain unchanged # 3. Beams that are not yet finished have their length increased by 1 lengths_to_add = math_ops.to_int64( math_ops.not_equal(next_word_ids, end_token)) lengths_to_add = (1 - math_ops.to_int64(next_finished)) * lengths_to_add next_prediction_len = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=beam_state.lengths, batch_size=batch_size, range_size=beam_width, gather_shape=[-1]) next_prediction_len += lengths_to_add # Pick out the cell_states according to the next_beam_ids. We use a # different gather_shape here because the cell_state tensors, i.e. # the tensors that would be gathered from, all have dimension # greater than two and we need to preserve those dimensions. # pylint: disable=g-long-lambda next_cell_state = nest.map_structure( lambda gather_from: _maybe_tensor_gather_helper( gather_indices=next_beam_ids, gather_from=gather_from, batch_size=batch_size, range_size=beam_width, gather_shape=[batch_size * beam_width, -1]), next_cell_state) # pylint: enable=g-long-lambda next_state = BeamSearchDecoderState( cell_state=next_cell_state, log_probs=next_beam_probs, lengths=next_prediction_len, finished=next_finished) output = BeamSearchDecoderOutput( scores=next_beam_scores, predicted_ids=next_word_ids, parent_ids=next_beam_ids) return output, next_state def _get_scores(log_probs, sequence_lengths, length_penalty_weight): """Calculates scores for beam search hypotheses. Args: log_probs: The log probabilities with shape `[batch_size, beam_width, vocab_size]`. sequence_lengths: The array of sequence lengths. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: The scores normalized by the length_penalty. """ length_penality_ = _length_penalty( sequence_lengths=sequence_lengths, penalty_factor=length_penalty_weight) return log_probs / length_penality_ def _length_penalty(sequence_lengths, penalty_factor): """Calculates the length penalty. See https://arxiv.org/abs/1609.08144. Args: sequence_lengths: The sequence length of all hypotheses, a tensor of shape [beam_size, vocab_size]. penalty_factor: A scalar that weights the length penalty. Returns: The length penalty factor, a tensor fo shape [beam_size]. """ penalty_factor = ops.convert_to_tensor(penalty_factor, name="penalty_factor") penalty_factor.set_shape(()) # penalty should be a scalar. static_penalty = tensor_util.constant_value(penalty_factor) if static_penalty is not None and static_penalty == 0: return 1.0 return math_ops.div((5. + math_ops.to_float(sequence_lengths)) **penalty_factor, (5. + 1.)**penalty_factor) def _mask_probs(probs, eos_token, finished): """Masks log probabilities. The result is that finished beams allocate all probability mass to eos and unfinished beams remain unchanged. Args: probs: Log probabiltiies of shape `[batch_size, beam_width, vocab_size]` eos_token: An int32 id corresponding to the EOS token to allocate probability to. finished: A boolean tensor of shape `[batch_size, beam_width]` that specifies which elements in the beam are finished already. Returns: A tensor of shape `[batch_size, beam_width, vocab_size]`, where unfinished beams stay unchanged and finished beams are replaced with a tensor with all probability on the EOS token. """ vocab_size = array_ops.shape(probs)[2] finished_mask = array_ops.expand_dims( math_ops.to_float(1. - math_ops.to_float(finished)), 2) # These examples are not finished and we leave them non_finished_examples = finished_mask * probs # All finished examples are replaced with a vector that has all # probability on EOS finished_row = array_ops.one_hot( eos_token, vocab_size, dtype=probs.dtype, on_value=0., off_value=probs.dtype.min) finished_examples = (1. - finished_mask) * finished_row return finished_examples + non_finished_examples def _maybe_tensor_gather_helper(gather_indices, gather_from, batch_size, range_size, gather_shape): """Maybe applies _tensor_gather_helper. This applies _tensor_gather_helper when the gather_from dims is at least as big as the length of gather_shape. This is used in conjunction with nest so that we don't apply _tensor_gather_helper to inapplicable values like scalars. Args: gather_indices: The tensor indices that we use to gather. gather_from: The tensor that we are gathering from. batch_size: The batch size. range_size: The number of values in each range. Likely equal to beam_width. gather_shape: What we should reshape gather_from to in order to preserve the correct values. An example is when gather_from is the attention from an AttentionWrapperState with shape [batch_size, beam_width, attention_size]. There, we want to preserve the attention_size elements, so gather_shape is [batch_size * beam_width, -1]. Then, upon reshape, we still have the attention_size as desired. Returns: output: Gathered tensor of shape tf.shape(gather_from)[:1+len(gather_shape)] or the original tensor if its dimensions are too small. """ _check_maybe(gather_from) if gather_from.shape.ndims >= len(gather_shape): return _tensor_gather_helper( gather_indices=gather_indices, gather_from=gather_from, batch_size=batch_size, range_size=range_size, gather_shape=gather_shape) else: return gather_from def _tensor_gather_helper(gather_indices, gather_from, batch_size, range_size, gather_shape, name=None): """Helper for gathering the right indices from the tensor. This works by reshaping gather_from to gather_shape (e.g. [-1]) and then gathering from that according to the gather_indices, which are offset by the right amounts in order to preserve the batch order. Args: gather_indices: The tensor indices that we use to gather. gather_from: The tensor that we are gathering from. batch_size: The input batch size. range_size: The number of values in each range. Likely equal to beam_width. gather_shape: What we should reshape gather_from to in order to preserve the correct values. An example is when gather_from is the attention from an AttentionWrapperState with shape [batch_size, beam_width, attention_size]. There, we want to preserve the attention_size elements, so gather_shape is [batch_size * beam_width, -1]. Then, upon reshape, we still have the attention_size as desired. name: The tensor name for set of operations. By default this is 'tensor_gather_helper'. The final output is named 'output'. Returns: output: Gathered tensor of shape tf.shape(gather_from)[:1+len(gather_shape)] """ with ops.name_scope(name, "tensor_gather_helper"): range_ = array_ops.expand_dims(math_ops.range(batch_size) * range_size, 1) gather_indices = array_ops.reshape(gather_indices + range_, [-1]) output = array_ops.gather( array_ops.reshape(gather_from, gather_shape), gather_indices) final_shape = array_ops.shape(gather_from)[:1 + len(gather_shape)] static_batch_size = tensor_util.constant_value(batch_size) final_static_shape = (tensor_shape.TensorShape([static_batch_size]) .concatenate( gather_from.shape[1:1 + len(gather_shape)])) output = array_ops.reshape(output, final_shape, name="output") output.set_shape(final_static_shape) return output ================================================ FILE: utils/melt/seq2seq/decoder.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Seq2seq layer operations for use in neural networks.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import abc import six from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import rnn from tensorflow.python.ops import tensor_array_ops from tensorflow.python.ops import variable_scope from tensorflow.python.util import nest __all__ = ["Decoder", "dynamic_decode"] _transpose_batch_time = rnn._transpose_batch_time # pylint: disable=protected-access @six.add_metaclass(abc.ABCMeta) class Decoder(object): """An RNN Decoder abstract interface object. Concepts used by this interface: - `inputs`: (structure of) tensors and TensorArrays that is passed as input to the RNNCell composing the decoder, at each time step. - `state`: (structure of) tensors and TensorArrays that is passed to the RNNCell instance as the state. - `finished`: boolean tensor telling whether each sequence in the batch is finished. - `outputs`: Instance of BasicDecoderOutput. Result of the decoding, at each time step. """ @property def batch_size(self): """The batch size of input values.""" raise NotImplementedError @property def output_size(self): """A (possibly nested tuple of...) integer[s] or `TensorShape` object[s].""" raise NotImplementedError @property def output_dtype(self): """A (possibly nested tuple of...) dtype[s].""" raise NotImplementedError @abc.abstractmethod def initialize(self, name=None): """Called before any decoding iterations. This methods must compute initial input values and initial state. Args: name: Name scope for any created operations. Returns: `(finished, initial_inputs, initial_state)`: initial values of 'finished' flags, inputs and state. """ raise NotImplementedError @abc.abstractmethod def step(self, time, inputs, state, name=None): """Called per step of decoding (but only once for dynamic decoding). Args: time: Scalar `int32` tensor. Current step number. inputs: RNNCell input (possibly nested tuple of) tensor[s] for this time step. state: RNNCell state (possibly nested tuple of) tensor[s] from previous time step. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`: `outputs` is an instance of BasicDecoderOutput, `next_state` is a (structure of) state tensors and TensorArrays, `next_inputs` is the tensor that should be used as input for the next step, `finished` is a boolean tensor telling whether the sequence is complete, for each sequence in the batch. """ raise NotImplementedError def finalize(self, outputs, final_state, sequence_lengths): raise NotImplementedError def _create_zero_outputs(size, dtype, batch_size): """Create a zero outputs Tensor structure.""" def _t(s): return (s if isinstance(s, ops.Tensor) else constant_op.constant( tensor_shape.TensorShape(s).as_list(), dtype=dtypes.int32, name="zero_suffix_shape")) def _create(s, d): return array_ops.zeros( array_ops.concat( ([batch_size], _t(s)), axis=0), dtype=d) return nest.map_structure(_create, size, dtype) def dynamic_decode(decoder, output_time_major=False, impute_finished=False, maximum_iterations=None, parallel_iterations=32, swap_memory=False, scope=None): """Perform dynamic decoding with `decoder`. Calls initialize() once and step() repeatedly on the Decoder object. Args: decoder: A `Decoder` instance. output_time_major: Python boolean. Default: `False` (batch major). If `True`, outputs are returned as time major tensors (this mode is faster). Otherwise, outputs are returned as batch major tensors (this adds extra time to the computation). impute_finished: Python boolean. If `True`, then states for batch entries which are marked as finished get copied through and the corresponding outputs get zeroed out. This causes some slowdown at each time step, but ensures that the final state and outputs have the correct values and that backprop ignores time steps that were marked as finished. maximum_iterations: `int32` scalar, maximum allowed number of decoding steps. Default is `None` (decode until the decoder is fully done). parallel_iterations: Argument passed to `tf.while_loop`. swap_memory: Argument passed to `tf.while_loop`. scope: Optional variable scope to use. Returns: `(final_outputs, final_state, final_sequence_lengths)`. Raises: TypeError: if `decoder` is not an instance of `Decoder`. ValueError: if `maximum_iterations` is provided but is not a scalar. """ #if not isinstance(decoder, Decoder): # raise TypeError("Expected decoder to be type Decoder, but saw: %s" % # type(decoder)) with variable_scope.variable_scope(scope, "decoder") as varscope: # Properly cache variable values inside the while_loop if varscope.caching_device is None: varscope.set_caching_device(lambda op: op.device) if maximum_iterations is not None: maximum_iterations = ops.convert_to_tensor( maximum_iterations, dtype=dtypes.int32, name="maximum_iterations") if maximum_iterations.get_shape().ndims != 0: raise ValueError("maximum_iterations must be a scalar") initial_finished, initial_inputs, initial_state = decoder.initialize() zero_outputs = _create_zero_outputs(decoder.output_size, decoder.output_dtype, decoder.batch_size) if maximum_iterations is not None: initial_finished = math_ops.logical_or( initial_finished, 0 >= maximum_iterations) initial_sequence_lengths = array_ops.zeros_like( initial_finished, dtype=dtypes.int32) initial_time = constant_op.constant(0, dtype=dtypes.int32) def _shape(batch_size, from_shape): if not isinstance(from_shape, tensor_shape.TensorShape): return tensor_shape.TensorShape(None) else: batch_size = tensor_util.constant_value( ops.convert_to_tensor( batch_size, name="batch_size")) return tensor_shape.TensorShape([batch_size]).concatenate(from_shape) def _create_ta(s, d): return tensor_array_ops.TensorArray( dtype=d, size=0, dynamic_size=True, element_shape=_shape(decoder.batch_size, s)) initial_outputs_ta = nest.map_structure(_create_ta, decoder.output_size, decoder.output_dtype) def condition(unused_time, unused_outputs_ta, unused_state, unused_inputs, finished, unused_sequence_lengths): return math_ops.logical_not(math_ops.reduce_all(finished)) def body(time, outputs_ta, state, inputs, finished, sequence_lengths): """Internal while_loop body. Args: time: scalar int32 tensor. outputs_ta: structure of TensorArray. state: (structure of) state tensors and TensorArrays. inputs: (structure of) input tensors. finished: bool tensor (keeping track of what's finished). sequence_lengths: int32 tensor (keeping track of time of finish). Returns: `(time + 1, outputs_ta, next_state, next_inputs, next_finished, next_sequence_lengths)`. ``` """ (next_outputs, decoder_state, next_inputs, decoder_finished) = decoder.step(time, inputs, state) next_finished = math_ops.logical_or(decoder_finished, finished) if maximum_iterations is not None: next_finished = math_ops.logical_or( next_finished, time + 1 >= maximum_iterations) next_sequence_lengths = array_ops.where( math_ops.logical_and(math_ops.logical_not(finished), next_finished), array_ops.fill(array_ops.shape(sequence_lengths), time + 1), sequence_lengths) nest.assert_same_structure(state, decoder_state) nest.assert_same_structure(outputs_ta, next_outputs) nest.assert_same_structure(inputs, next_inputs) # Zero out output values past finish if impute_finished: emit = nest.map_structure( lambda out, zero: array_ops.where(finished, zero, out), next_outputs, zero_outputs) else: emit = next_outputs # Copy through states past finish def _maybe_copy_state(new, cur): # TensorArrays and scalar states get passed through. if isinstance(cur, tensor_array_ops.TensorArray): pass_through = True else: new.set_shape(cur.shape) pass_through = (new.shape.ndims == 0) return new if pass_through else array_ops.where(finished, cur, new) if impute_finished: next_state = nest.map_structure( _maybe_copy_state, decoder_state, state) else: next_state = decoder_state outputs_ta = nest.map_structure(lambda ta, out: ta.write(time, out), outputs_ta, emit) return (time + 1, outputs_ta, next_state, next_inputs, next_finished, next_sequence_lengths) #print(initial_time, initial_outputs_ta, initial_state, initial_inputs, # initial_finished, initial_sequence_lengths) res = control_flow_ops.while_loop( condition, body, loop_vars=[ initial_time, initial_outputs_ta, initial_state, initial_inputs, initial_finished, initial_sequence_lengths, ], parallel_iterations=parallel_iterations, swap_memory=swap_memory) final_outputs_ta = res[1] final_state = res[2] final_sequence_lengths = res[5] final_outputs = nest.map_structure(lambda ta: ta.stack(), final_outputs_ta) try: final_outputs, final_state = decoder.finalize( final_outputs, final_state, final_sequence_lengths) except NotImplementedError: pass if not output_time_major: final_outputs = nest.map_structure(_transpose_batch_time, final_outputs) return final_outputs, final_state, final_sequence_lengths ================================================ FILE: utils/melt/seq2seq/decoder_fn.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Seq2seq loss operations for use in neural networks. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.util import nest from tensorflow.python.ops import tensor_array_ops __all__ = ["greedy_decoder_fn_inference"] def greedy_decoder_fn_inference(output_fn, first_input, encoder_state, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, dtype=dtypes.int32, name=None): """ Greedy decoder function for a sequence-to-sequence model used in the `dynamic_rnn_decoder`. The `greedy_decoder_fn_inference` is a greedy inference function for a sequence-to-sequence model. It should be used when `dynamic_rnn_decoder` is in the inference mode. The `greedy_decoder_fn_inference` is called with a set of the user arguments and returns the `decoder_fn`, which can be passed to the `dynamic_rnn_decoder`, such that ``` dynamic_fn_inference = greedy_decoder_fn_inference(...) outputs_inference, state_inference = dynamic_rnn_decoder( decoder_fn=dynamic_fn_inference, ...) ``` Further usage can be found in the `kernel_tests/seq2seq_test.py`. Args: output_fn: An output function to project your `cell_output` onto class logits. An example of an output function; ``` tf.variable_scope("decoder") as varscope output_fn = lambda x: layers.linear(x, num_decoder_symbols, scope=varscope) outputs_train, state_train = seq2seq.dynamic_rnn_decoder(...) logits_train = output_fn(outputs_train) varscope.reuse_variables() logits_inference, state_inference = seq2seq.dynamic_rnn_decoder( output_fn=output_fn, ...) ``` If `None` is supplied it will act as an identity function, which might be wanted when using the RNNCell `OutputProjectionWrapper`. encoder_state: The encoded state to initialize the `dynamic_rnn_decoder`. embeddings: The embeddings matrix used for the decoder sized `[num_decoder_symbols, embedding_size]`. start_of_sequence_id: The start of sequence ID in the decoder embeddings. end_of_sequence_id: The end of sequence ID in the decoder embeddings. maximum_length: The maximum allowed of time steps to decode. num_decoder_symbols: The number of classes to decode at each time step. dtype: (default: `dtypes.int32`) The default data type to use when handling integer objects. name: (default: `None`) NameScope for the decoder function; defaults to "greedy_decoder_fn_inference" Returns: A decoder function with the required interface of `dynamic_rnn_decoder` intended for inference. """ with ops.name_scope(name, "greedy_decoder_fn_inference", [output_fn, first_input, encoder_state, embeddings, end_of_sequence_id, maximum_length, num_decoder_symbols, dtype]): first_input = ops.convert_to_tensor(first_input, dtypes.float32) end_of_sequence_id = ops.convert_to_tensor(end_of_sequence_id, dtype) maximum_length = ops.convert_to_tensor(maximum_length, dtype) num_decoder_symbols = ops.convert_to_tensor(num_decoder_symbols, dtype) encoder_info = nest.flatten(encoder_state)[0] batch_size = encoder_info.get_shape()[0].value if output_fn is None: output_fn = lambda x: x if batch_size is None: batch_size = array_ops.shape(encoder_info)[0] def decoder_fn(time, cell_state, cell_input, cell_output, context_state): """ Decoder function used in the `dynamic_rnn_decoder` with the purpose of inference. The main difference between this decoder function and the `decoder_fn` in `greedy_decoder_fn_train` is how `next_cell_input` is calculated. In this decoder function we calculate the next input by applying an argmax across the feature dimension of the output from the decoder. This is a greedy-search approach. (Bahdanau et al., 2014) & (Sutskever et al., 2014) use beam-search instead. Args: time: positive integer constant reflecting the current timestep. cell_state: state of RNNCell. cell_input: input provided by `dynamic_rnn_decoder`. cell_output: output of RNNCell. context_state: context state provided by `dynamic_rnn_decoder`. Returns: A tuple (done, next state, next input, emit output, next context state) where: done: A boolean vector to indicate which sentences has reached a `end_of_sequence_id`. This is used for early stopping by the `dynamic_rnn_decoder`. When `time>=maximum_length` a boolean vector with all elements as `true` is returned. next state: `cell_state`, this decoder function does not modify the given state. next input: The embedding from argmax of the `cell_output` is used as `next_input`. emit output: If `output_fn is None` the supplied `cell_output` is returned, else the `output_fn` is used to update the `cell_output` before calculating `next_input` and returning `cell_output`. next context state: `context_state`, this decoder function does not modify the given context state. The context state could be modified when applying e.g. beam search. """ with ops.name_scope(name, "greedy_decoder_fn_inference", [time, cell_state, cell_input, cell_output, context_state]): if cell_input is not None: raise ValueError("Expected cell_input to be None, but saw: %s" % cell_input) if cell_output is None: # invariant that this is time == 0 next_input_id = None done = array_ops.zeros([batch_size,], dtype=dtypes.bool) cell_state = encoder_state cell_output = array_ops.zeros([num_decoder_symbols], dtype=dtypes.float32) context_state = tensor_array_ops.TensorArray( #dtype=dtype, tensor_array_name="greedy_path", size=maximum_length + 1, infer_shape=False) dtype=dtype, tensor_array_name="greedy_path", size=0, dynamic_size=True, infer_shape=False) else: cell_output = output_fn(cell_output) next_input_id = math_ops.cast( math_ops.argmax(cell_output, 1), dtype=dtype) done = math_ops.equal(next_input_id, end_of_sequence_id) #done = tf.zeros_like(next_input_id, dtype=tf.bool) context_state = context_state.write(time - 1, next_input_id) next_input = array_ops.gather(embeddings, next_input_id) if next_input_id is not None else first_input # if time == maxlen, return all true vector done = control_flow_ops.cond(math_ops.equal(time, maximum_length), lambda: array_ops.ones([batch_size,], dtype=dtypes.bool), lambda: done) return (done, cell_state, next_input, cell_output, context_state) return decoder_fn ================================================ FILE: utils/melt/seq2seq/exp/beam_decoder.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file beam_decoder.py # \author chenghuige # \date 2017-01-16 14:15:32.474973 # \Description # ============================================================================== """ NOTICE this is ingraph beam decode as opposed to melt.seq2seq.beam_search which is ougraph beam search but here also not dynamic, just use loop, do all max_steps until stop, for beam search actually you can not early stop also since more steps results might be better. if length normalizer == 0. then start from same state longer path could not be better. so you might look at partial result if it not better then all the done beam then mark it as done TODO but if length normalizer > 0 then.. you can not early stop by theory.. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python.ops import variable_scope from tensorflow.python.ops import array_ops from tensorflow.python.util import nest import collections import melt def rnn_decoder(decoder_inputs, initial_state, cell, loop_function=None, scope=None): """RNN decoder for the sequence-to-sequence model. copy from tf contrib but modify a bit add state change Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: If not None, this function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). This can be used for decoding, but also for training to emulate http://arxiv.org/abs/1506.03099. Signature -- loop_function(prev, i) = next * prev is a 2D Tensor of shape [batch_size x output_size], * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size x input_size]. scope: VariableScope for the created subgraph; defaults to "rnn_decoder". Returns: A tuple of the form (outputs, state), where: outputs: A list of the same length as decoder_inputs of 2D Tensors with shape [batch_size x output_size] containing generated outputs. state: The state of each cell at the final time-step. It is a 2D Tensor of shape [batch_size x cell.state_size]. (Note that in some cases, like basic RNN cell or GRU cell, outputs and states can be the same. They are different for LSTM cells though.) """ with variable_scope.variable_scope(scope or "rnn_decoder"): state = initial_state outputs = [] prev = None for i, inp in enumerate(decoder_inputs): if loop_function is not None and prev is not None: with variable_scope.variable_scope("loop_function", reuse=True): inp, state = loop_function(i, prev, state) if i > 0: variable_scope.get_variable_scope().reuse_variables() output, state = cell(inp, state) outputs.append(output) if loop_function is not None: prev = output return outputs, state class BeamDecoderOutputs( collections.namedtuple("BeamDecoderOutputs", ("paths", "scores", "decoder"))): def clone(self, **kwargs): return super(BeamDecoderOutputs, self)._replace(**kwargs) def beam_decode(input, max_words, initial_state, cell, loop_function, scope=None, beam_size=7, done_token=0, output_fn=None, length_normalization_factor=0., prob_as_score=True, topn=1, need_softmax=True, fast_greedy=False): """ Beam search decoder copy from https://gist.github.com/igormq/000add00702f09029ea4c30eba976e0a make small modifications, add more comments and add topn support, and length_normalization_factor NOTICE!: not dynamic, for loop based here not tf.while_loop, so ingraph but currently static build graph TODO: consider beam search decoder from https://github.com/google/seq2seq, that implementation might be dynamic! but that implementaion only allow batch size 1, so use batch[beam_size] ? TODO:make beam_decode dynamic version, by using named_tuple, and tf.nest_map NOTICE! fast_greedy mode not test much, just use fast_greed=False, just to calc topn even topn is 1 Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: This function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). Signature -- loop_function(prev_symbol, i) = next * prev_symbol is a 1D Tensor of shape [batch_size*beam_size] * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size*beam_size, input_size]. scope: Passed to seq2seq.rnn_decoder beam_size: An integer beam size to use for each example done_token: An integer token that specifies the STOP symbol max_words: if max_words == 3, ouputs is as beow, output array len is fixed as 3 田地 里 1.87996e-05 [748 21 9] 3 [0.10245205285997697, 0.923504919660139, 6.374825504667079e-06] 一个 弯着腰 1.59349e-06 [ 10 415 9] 3 [0.4947927940753284, 0.04485648322008847, 1.055874923485485e-06] 田地 1.64312e-07 [748 9 0] 3 Return: A tensor of dimensions [batch_size, len(decoder_inputs)] that corresponds to the 1-best beam for each batch. Known limitations: * The output sequence consisting of only a STOP symbol is not considered (zero-length sequences are not very useful, so this wasn't implemented) * The computation graph this creates is messy and not very well-optimized TODO: also return path lengths? """ decoder = BeamDecoder(input, #max_words + 2, #take step start from i==1 and need one more additional done token max_words, #now max words inclucde done token This is safe initial_state, beam_size=beam_size, done_token=done_token, output_fn=output_fn, length_normalization_factor=length_normalization_factor, topn=topn, need_softmax=need_softmax, fast_greedy=fast_greedy) _ = rnn_decoder( decoder.decoder_inputs, decoder.initial_state, cell=cell, loop_function = lambda i, prev, state: loop_function(i, prev, state, decoder), scope=scope) if fast_greedy: #compat with topn > 1 score = tf.expand_dims(decoder.logprobs_finished_beams, 1) path = tf.expand_dims(decoder.finished_beams, 1) else: path, score = decoder.calc_topn() if prob_as_score: score = tf.exp(score) outputs = BeamDecoderOutputs( paths=path, scores=score, decoder=decoder) return outputs, decoder.final_state #now without beam size 10, about seq->seq 20->4 10w vocab, about 70-100ms, notice the first decode will be slow 400ms+ #exp in deepiu/textsum/inference/infenrence.sh #TODO add alignments history support for ingraph beam search class BeamDecoder(): def __init__(self, input, max_steps, initial_state, beam_size=7, done_token=0, batch_size=None, num_classes=None, output_fn=None, length_normalization_factor=0., topn=1, need_softmax=True, fast_greedy=False): self.length_normalization_factor = length_normalization_factor self.topn = topn self.need_softmax = need_softmax self.beam_size = beam_size self.batch_size = batch_size if self.batch_size is None: self.batch_size = tf.shape(input)[0] self.max_len = max_steps self.num_classes = num_classes self.done_token = done_token self.pad_token = 0 self.output_fn = output_fn self.past_logprobs = None self.past_symbols = None self.past_step_logprobs = None self.fast_greedy = fast_greedy if self.fast_greedy: self.finished_beams = tf.zeros((self.batch_size, self.max_len), dtype=tf.int32) self.logprobs_finished_beams = tf.ones((self.batch_size,), dtype=tf.float32) * -float('inf') else: self.paths_list = [] self.logprobs_list = [] self.step_logprobs_list = [] #for rnn_decoder function need one more step loop, since i== 0 will not output words, take step start from i==1 self.decoder_inputs = [None] * (self.max_len + 1) self.decoder_inputs[0] = tf.contrib.seq2seq.tile_batch(input, beam_size) self.initial_state = initial_state self.final_state = None def calc_topn(self): #[batch_size, beam_size * (max_len-2)] logprobs = tf.concat(self.logprobs_list, 1) #[batch_size, topn] top_logprobs, indices = tf.nn.top_k(logprobs, self.topn) #-2 because max_words = max_len - 2 TODO length = self.beam_size * (self.max_len - 2) indice_offsets = tf.reshape( (tf.range(self.batch_size * length) // length) * length, [self.batch_size, length]) indice_offsets = indice_offsets[:, :self.topn] #[batch_size, max_len(length index) - 2, beam_size, max_len] paths = tf.concat(self.paths_list, 1) step_logprobs_path = tf.concat(self.step_logprobs_list, 1) #top_paths = paths[:, 0:self.topn, 2, :] #paths = tf.reshape(paths, [-1, (self.max_len - 2) * self.beam_size, self.max_len]) #paths = tf.reshape(paths, [self.batch_size, -1, self.max_len]) paths = tf.reshape(paths, [-1, self.max_len]) step_logprobs_path = tf.reshape(step_logprobs_path, [-1, self.max_len]) top_paths = tf.gather(paths, indice_offsets + indices) top_step_logprobs_path = tf.gather(step_logprobs_path, indice_offsets + indices) #log probs history self.log_probs_history = top_step_logprobs_path return top_paths, top_logprobs def _get_aligments(self, state): attention_size = melt.get_shape(state.alignments, -1) alignments = tf.reshape(state.alignments, [-1, self.beam_size, attention_size]) return alignments def take_step(self, i, prev, state): print('-------------i', i) if self.output_fn is not None: #[batch_size * beam_size, num_units] -> [batch_size * beam_size, num_classes] try: output = self.output_fn(prev) except Exception: output = self.output_fn(prev, state) else: output = prev self.output = output #[batch_size * beam_size, num_classes], here use log sofmax if self.need_softmax: logprobs = tf.nn.log_softmax(output) else: logprobs = tf.log(tf.maximum(output, 1e-12)) if self.num_classes is None: self.num_classes = tf.shape(logprobs)[1] #->[batch_size, beam_size, num_classes] logprobs_batched = tf.reshape(logprobs, [-1, self.beam_size, self.num_classes]) logprobs_batched.set_shape((None, self.beam_size, None)) # Note: masking out entries to -inf plays poorly with top_k, so just subtract out a large number. nondone_mask = tf.reshape( tf.cast( tf.equal(tf.range(self.num_classes), self.done_token), tf.float32) * -1e18, [1, 1, self.num_classes]) if self.past_logprobs is None: #[batch_size, beam_size, num_classes] -> [batch_size, num_classes] #-> past_logprobs[batch_size, beam_size], indices[batch_size, beam_size] self.past_logprobs, indices = tf.nn.top_k( (logprobs_batched + nondone_mask)[:, 0, :], self.beam_size) step_logprobs = self.past_logprobs else: #logprobs_batched [batch_size, beam_size, num_classes] -> [batch_size, beam_size, num_classes] #past_logprobs [batch_size, beam_size] -> [batch_size, beam_size, 1] step_logprobs_batched = logprobs_batched logprobs_batched = logprobs_batched + tf.expand_dims(self.past_logprobs, 2) #get [batch_size, beam_size] each self.past_logprobs, indices = tf.nn.top_k( #[batch_size, beam_size * num_classes] tf.reshape(logprobs_batched + nondone_mask, [-1, self.beam_size * self.num_classes]), self.beam_size) #get current step logprobs [batch_size, beam_size] step_logprobs = tf.gather_nd(tf.reshape(step_logprobs_batched, [-1, self.beam_size * self.num_classes]), melt.batch_values_to_indices(indices)) # For continuing to the next symbols [batch_size, beam_size] symbols = indices % self.num_classes #from wich beam it comes [batch_size, beam_size] parent_refs = indices // self.num_classes # NOTE: outputing a zero-length sequence is not supported for simplicity reasons #hasky/jupter/tensorflow/beam-search2.ipynb below for mergeing path #here when i >= 2 # tf.reshape( # (tf.range(3 * 5) // 5) * 5, # [3, 5] # ).eval() # array([[ 0, 0, 0, 0, 0], # [ 5, 5, 5, 5, 5], # [10, 10, 10, 10, 10]], dtype=int32) parent_refs_offsets = tf.reshape( (tf.range(self.batch_size * self.beam_size) // self.beam_size) * self.beam_size, [self.batch_size, self.beam_size]) #[batch_size, beam_size] past_indices = parent_refs + parent_refs_offsets flattened_past_indices = tf.reshape(past_indices, [-1]) if self.past_symbols is None: #here when i == 1, when i==0 will not do take step it just do one rnn() get output and use it for i==1 here #here will not need to gather state for inital state of each beam is the same #[batch_size, beam_size] -> [batch_size, beam_size, 1] self.past_symbols = tf.expand_dims(symbols, 2) self.past_step_logprobs = tf.expand_dims(step_logprobs, 2) else: #self.past_symbols [batch_size, beam_size, i - 1] -> past_symbols_batch_major [batch_size * beam_size, i - 1] past_symbols_batch_major = tf.reshape(self.past_symbols, [-1, i-1]) past_step_logprobs_batch_major = tf.reshape(self.past_step_logprobs, [-1, i - 1]) #-> [batch_size, beam_size, i - 1] beam_past_symbols = tf.gather(past_symbols_batch_major, #[batch_size * beam_size, i - 1] past_indices #[batch_size, beam_size] ) beam_past_step_logprobs = tf.gather(past_step_logprobs_batch_major, past_indices) if not self.fast_greedy: #[batch_size, beam_size, max_len] path = tf.concat([self.past_symbols, tf.ones_like(tf.expand_dims(symbols, 2)) * self.done_token, tf.tile(tf.ones_like(tf.expand_dims(symbols, 2)) * self.pad_token, [1, 1, self.max_len - i])], 2) step_logprobs_path = tf.concat([self.past_step_logprobs, tf.expand_dims(step_logprobs_batched[:, :, self.done_token], 2), tf.tile(tf.ones_like(tf.expand_dims(step_logprobs, 2)) * -float('inf'), [1, 1, self.max_len - i])], 2) #[batch_size, 1, beam_size, max_len] path = tf.expand_dims(path, 1) step_logprobs_path = tf.expand_dims(step_logprobs_path, 1) self.paths_list.append(path) self.step_logprobs_list.append(step_logprobs_path) #[batch_size * beam_size, i - 1] -> [batch_size, bam_size, i] the best beam_size paths until step i self.past_symbols = tf.concat([beam_past_symbols, tf.expand_dims(symbols, 2)], 2) self.past_step_logprobs = tf.concat([beam_past_step_logprobs, tf.expand_dims(step_logprobs, 2)], 2) # For finishing the beam #[batch_size, beam_size] logprobs_done = logprobs_batched[:, :, self.done_token] if not self.fast_greedy: self.logprobs_list.append(logprobs_done / i ** self.length_normalization_factor) else: done_parent_refs = tf.cast(tf.argmax(logprobs_done, 1), tf.int32) done_parent_refs_offsets = tf.range(self.batch_size) * self.beam_size done_past_symbols = tf.gather(past_symbols_batch_major, done_parent_refs + done_parent_refs_offsets) #[batch_size, max_len] symbols_done = tf.concat([done_past_symbols, tf.ones_like(done_past_symbols[:,0:1]) * self.done_token, tf.tile(tf.zeros_like(done_past_symbols[:,0:1]), [1, self.max_len - i]) ], 1) #[batch_size, beam_size] -> [batch_size,] logprobs_done_max = tf.reduce_max(logprobs_done, 1) if self.length_normalization_factor > 0: logprobs_done_max /= i ** self.length_normalization_factor #[batch_size, max_len] self.finished_beams = tf.where(logprobs_done_max > self.logprobs_finished_beams, symbols_done, self.finished_beams) self.logprobs_finished_beams = tf.maximum(logprobs_done_max, self.logprobs_finished_beams) #TODO not support tf.TensorArray right now, can not use aligment_history in attention_wrapper def try_gather(x, indices): #if isinstance(x, tf.Tensor) and x.shape.ndims >= 2: assert isinstance(x, tf.Tensor) if x.shape.ndims >= 2: return tf.gather(x, indices) else: return x state = nest.map_structure(lambda x: try_gather(x, flattened_past_indices), state) if hasattr(state, 'alignments'): attention_size = melt.get_shape(state.alignments, -1) alignments = tf.reshape(state.alignments, [-1, self.beam_size, attention_size]) print('alignments', alignments) #->[batch_size * beam_size,] symbols_flat = tf.reshape(symbols, [-1]) self.final_state = state return symbols_flat, state ================================================ FILE: utils/melt/seq2seq/helper.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A library of helpers for use with SamplingDecoders. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import abc import six from tensorflow.contrib.seq2seq.python.ops import decoder from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import random_ops from tensorflow.python.ops import tensor_array_ops from tensorflow.python.ops.distributions import bernoulli from tensorflow.python.ops.distributions import categorical from tensorflow.python.util import nest import tensorflow as tf __all__ = [ "Helper", "TrainingHelper", "GreedyEmbeddingHelper", "LogProbsGreedyEmbeddingHelper", "CustomHelper", "ScheduledEmbeddingTrainingHelper", "ScheduledOutputTrainingHelper", "MultinomialEmbeddingHelper", "LoopHelper", ] _transpose_batch_time = decoder._transpose_batch_time # pylint: disable=protected-access def _unstack_ta(inp): return tensor_array_ops.TensorArray( dtype=inp.dtype, size=array_ops.shape(inp)[0], element_shape=inp.get_shape()[1:]).unstack(inp) @six.add_metaclass(abc.ABCMeta) class Helper(object): """Interface for implementing sampling in seq2seq decoders. Helper instances are used by `BasicDecoder`. """ @abc.abstractproperty def batch_size(self): """Batch size of tensor returned by `sample`. Returns a scalar int32 tensor. """ raise NotImplementedError("batch_size has not been implemented") @abc.abstractmethod def initialize(self, name=None): """Returns `(initial_finished, initial_inputs)`.""" pass @abc.abstractmethod def sample(self, time, outputs, state, name=None): """Returns `sample_ids`.""" pass @abc.abstractmethod def next_inputs(self, time, outputs, state, sample_ids, name=None): """Returns `(finished, next_inputs, next_state)`.""" pass class CustomHelper(Helper): """Base abstract class that allows the user to customize sampling.""" def __init__(self, initialize_fn, sample_fn, next_inputs_fn): """Initializer. Args: initialize_fn: callable that returns `(finished, next_inputs)` for the first iteration. sample_fn: callable that takes `(time, outputs, state)` and emits tensor `sample_ids`. next_inputs_fn: callable that takes `(time, outputs, state, sample_ids)` and emits `(finished, next_inputs, next_state)`. """ self._initialize_fn = initialize_fn self._sample_fn = sample_fn self._next_inputs_fn = next_inputs_fn self._batch_size = None @property def batch_size(self): if self._batch_size is None: raise ValueError("batch_size accessed before initialize was called") return self._batch_size def initialize(self, name=None): with ops.name_scope(name, "%sInitialize" % type(self).__name__): (finished, next_inputs) = self._initialize_fn() if self._batch_size is None: self._batch_size = array_ops.size(finished) return (finished, next_inputs) def sample(self, time, outputs, state, name=None): with ops.name_scope( name, "%sSample" % type(self).__name__, (time, outputs, state)): return self._sample_fn(time=time, outputs=outputs, state=state) def next_inputs(self, time, outputs, state, sample_ids, name=None): with ops.name_scope( name, "%sNextInputs" % type(self).__name__, (time, outputs, state)): return self._next_inputs_fn( time=time, outputs=outputs, state=state, sample_ids=sample_ids) class TrainingHelper(Helper): """A helper for use during training. Only reads inputs. Returned sample_ids are the argmax of the RNN output logits. """ def __init__(self, inputs, sequence_length, time_major=False, name=None): """Initializer. Args: inputs: A (structure of) input tensors. sequence_length: An int32 vector tensor. time_major: Python bool. Whether the tensors in `inputs` are time major. If `False` (default), they are assumed to be batch major. name: Name scope for any created operations. Raises: ValueError: if `sequence_length` is not a 1D tensor. """ with ops.name_scope(name, "TrainingHelper", [inputs, sequence_length]): inputs = ops.convert_to_tensor(inputs, name="inputs") if not time_major: inputs = nest.map_structure(_transpose_batch_time, inputs) self._input_tas = nest.map_structure(_unstack_ta, inputs) self._sequence_length = ops.convert_to_tensor( sequence_length, name="sequence_length") if self._sequence_length.get_shape().ndims != 1: raise ValueError( "Expected sequence_length to be a vector, but received shape: %s" % self._sequence_length.get_shape()) self._zero_inputs = nest.map_structure( lambda inp: array_ops.zeros_like(inp[0, :]), inputs) self._batch_size = array_ops.size(sequence_length) @property def batch_size(self): return self._batch_size def initialize(self, name=None): with ops.name_scope(name, "TrainingHelperInitialize"): finished = math_ops.equal(0, self._sequence_length) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, lambda: self._zero_inputs, lambda: nest.map_structure(lambda inp: inp.read(0), self._input_tas)) return (finished, next_inputs) def sample(self, time, outputs, name=None, **unused_kwargs): with ops.name_scope(name, "TrainingHelperSample", [time, outputs]): sample_ids = math_ops.cast( math_ops.argmax(outputs, axis=-1), dtypes.int32) return sample_ids def next_inputs(self, time, outputs, state, name=None, **unused_kwargs): """next_inputs_fn for TrainingHelper.""" with ops.name_scope(name, "TrainingHelperNextInputs", [time, outputs, state]): next_time = time + 1 finished = (next_time >= self._sequence_length) all_finished = math_ops.reduce_all(finished) def read_from_ta(inp): return inp.read(next_time) next_inputs = control_flow_ops.cond( all_finished, lambda: self._zero_inputs, lambda: nest.map_structure(read_from_ta, self._input_tas)) return (finished, next_inputs, state) class ScheduledEmbeddingTrainingHelper(TrainingHelper): """A training helper that adds scheduled sampling. Returns -1s for sample_ids where no sampling took place; valid sample id values elsewhere. """ def __init__(self, inputs, sequence_length, embedding, sampling_probability, time_major=False, seed=None, scheduling_seed=None, name=None): """Initializer. Args: inputs: A (structure of) input tensors. sequence_length: An int32 vector tensor. embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. sampling_probability: A 0D `float32` tensor: the probability of sampling categorically from the output ids instead of reading directly from the inputs. time_major: Python bool. Whether the tensors in `inputs` are time major. If `False` (default), they are assumed to be batch major. seed: The sampling seed. scheduling_seed: The schedule decision rule sampling seed. name: Name scope for any created operations. Raises: ValueError: if `sampling_probability` is not a scalar or vector. """ with ops.name_scope(name, "ScheduledEmbeddingSamplingWrapper", [embedding, sampling_probability]): if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._sampling_probability = ops.convert_to_tensor( sampling_probability, name="sampling_probability") if self._sampling_probability.get_shape().ndims not in (0, 1): raise ValueError( "sampling_probability must be either a scalar or a vector. " "saw shape: %s" % (self._sampling_probability.get_shape())) self._seed = seed self._scheduling_seed = scheduling_seed super(ScheduledEmbeddingTrainingHelper, self).__init__( inputs=inputs, sequence_length=sequence_length, time_major=time_major, name=name) def initialize(self, name=None): return super(ScheduledEmbeddingTrainingHelper, self).initialize(name=name) def sample(self, time, outputs, state, name=None): with ops.name_scope(name, "ScheduledEmbeddingTrainingHelperSample", [time, outputs, state]): # Return -1s where we did not sample, and sample_ids elsewhere select_sample_noise = random_ops.random_uniform( [self.batch_size], seed=self._scheduling_seed) select_sample = (self._sampling_probability > select_sample_noise) sample_id_sampler = categorical.Categorical(logits=outputs) return array_ops.where( select_sample, sample_id_sampler.sample(seed=self._seed), array_ops.tile([-1], [self.batch_size])) def next_inputs(self, time, outputs, state, sample_ids, name=None): with ops.name_scope(name, "ScheduledEmbeddingTrainingHelperSample", [time, outputs, state, sample_ids]): (finished, base_next_inputs, state) = ( super(ScheduledEmbeddingTrainingHelper, self).next_inputs( time=time, outputs=outputs, state=state, sample_ids=sample_ids, name=name)) def maybe_sample(): """Perform scheduled sampling.""" where_sampling = math_ops.cast( array_ops.where(sample_ids > -1), dtypes.int32) where_not_sampling = math_ops.cast( array_ops.where(sample_ids <= -1), dtypes.int32) where_sampling_flat = array_ops.reshape(where_sampling, [-1]) where_not_sampling_flat = array_ops.reshape(where_not_sampling, [-1]) sample_ids_sampling = array_ops.gather(sample_ids, where_sampling_flat) inputs_not_sampling = array_ops.gather( base_next_inputs, where_not_sampling_flat) sampled_next_inputs = self._embedding_fn(sample_ids_sampling) base_shape = array_ops.shape(base_next_inputs) return (array_ops.scatter_nd(indices=where_sampling, updates=sampled_next_inputs, shape=base_shape) + array_ops.scatter_nd(indices=where_not_sampling, updates=inputs_not_sampling, shape=base_shape)) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, lambda: base_next_inputs, maybe_sample) return (finished, next_inputs, state) class ScheduledOutputTrainingHelper(TrainingHelper): """A training helper that adds scheduled sampling directly to outputs. Returns False for sample_ids where no sampling took place; True elsewhere. """ def __init__(self, inputs, sequence_length, sampling_probability, time_major=False, seed=None, next_input_layer=None, auxiliary_inputs=None, name=None): """Initializer. Args: inputs: A (structure) of input tensors. sequence_length: An int32 vector tensor. sampling_probability: A 0D `float32` tensor: the probability of sampling from the outputs instead of reading directly from the inputs. time_major: Python bool. Whether the tensors in `inputs` are time major. If `False` (default), they are assumed to be batch major. seed: The sampling seed. next_input_layer: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output to create the next input. auxiliary_inputs: An optional (structure of) auxiliary input tensors with a shape that matches `inputs` in all but (potentially) the final dimension. These tensors will be concatenated to the sampled output or the `inputs` when not sampling for use as the next input. name: Name scope for any created operations. Raises: ValueError: if `sampling_probability` is not a scalar or vector. """ with ops.name_scope(name, "ScheduledOutputTrainingHelper", [inputs, auxiliary_inputs, sampling_probability]): self._sampling_probability = ops.convert_to_tensor( sampling_probability, name="sampling_probability") if self._sampling_probability.get_shape().ndims not in (0, 1): raise ValueError( "sampling_probability must be either a scalar or a vector. " "saw shape: %s" % (self._sampling_probability.get_shape())) if auxiliary_inputs is None: maybe_concatenated_inputs = inputs else: inputs = ops.convert_to_tensor(inputs, name="inputs") auxiliary_inputs = ops.convert_to_tensor( auxiliary_inputs, name="auxiliary_inputs") maybe_concatenated_inputs = nest.map_structure( lambda x, y: array_ops.concat((x, y), -1), inputs, auxiliary_inputs) if not time_major: auxiliary_inputs = nest.map_structure( _transpose_batch_time, auxiliary_inputs) self._auxiliary_input_tas = ( nest.map_structure(_unstack_ta, auxiliary_inputs) if auxiliary_inputs is not None else None) self._seed = seed if (next_input_layer is not None and not isinstance(next_input_layer, layers_base.Layer)): raise TypeError("next_input_layer must be a Layer, received: %s" % type(next_input_layer)) self._next_input_layer = next_input_layer super(ScheduledOutputTrainingHelper, self).__init__( inputs=maybe_concatenated_inputs, sequence_length=sequence_length, time_major=time_major, name=name) def initialize(self, name=None): return super(ScheduledOutputTrainingHelper, self).initialize(name=name) def sample(self, time, outputs, state, name=None): with ops.name_scope(name, "ScheduledOutputTrainingHelperSample", [time, outputs, state]): sampler = bernoulli.Bernoulli(probs=self._sampling_probability) return math_ops.cast( sampler.sample(sample_shape=self.batch_size, seed=self._seed), dtypes.bool) def next_inputs(self, time, outputs, state, sample_ids, name=None): with ops.name_scope(name, "ScheduledOutputTrainingHelperNextInputs", [time, outputs, state, sample_ids]): (finished, base_next_inputs, state) = ( super(ScheduledOutputTrainingHelper, self).next_inputs( time=time, outputs=outputs, state=state, sample_ids=sample_ids, name=name)) def maybe_sample(): """Perform scheduled sampling.""" def maybe_concatenate_auxiliary_inputs(outputs_, indices=None): """Concatenate outputs with auxiliary inputs, if they exist.""" if self._auxiliary_input_tas is None: return outputs_ next_time = time + 1 auxiliary_inputs = nest.map_structure( lambda ta: ta.read(next_time), self._auxiliary_input_tas) if indices is not None: auxiliary_inputs = array_ops.gather_nd(auxiliary_inputs, indices) return nest.map_structure( lambda x, y: array_ops.concat((x, y), -1), outputs_, auxiliary_inputs) if self._next_input_layer is None: return array_ops.where( sample_ids, maybe_concatenate_auxiliary_inputs(outputs), base_next_inputs) where_sampling = math_ops.cast( array_ops.where(sample_ids), dtypes.int32) where_not_sampling = math_ops.cast( array_ops.where(math_ops.logical_not(sample_ids)), dtypes.int32) outputs_sampling = array_ops.gather_nd(outputs, where_sampling) inputs_not_sampling = array_ops.gather_nd(base_next_inputs, where_not_sampling) sampled_next_inputs = maybe_concatenate_auxiliary_inputs( self._next_input_layer(outputs_sampling), where_sampling) base_shape = array_ops.shape(base_next_inputs) return (array_ops.scatter_nd(indices=where_sampling, updates=sampled_next_inputs, shape=base_shape) + array_ops.scatter_nd(indices=where_not_sampling, updates=inputs_not_sampling, shape=base_shape)) all_finished = math_ops.reduce_all(finished) no_samples = math_ops.logical_not(math_ops.reduce_any(sample_ids)) next_inputs = control_flow_ops.cond( math_ops.logical_or(all_finished, no_samples), lambda: base_next_inputs, maybe_sample) return (finished, next_inputs, state) class GreedyEmbeddingHelper(Helper): """A helper for use during inference. Uses the argmax of the output (treated as logits) and passes the result through an embedding layer to get the next input. """ def __init__(self, embedding, first_input, end_token): """Initializer. Args: embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. The returned tensor will be passed to the decoder input. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. Raises: ValueError: if `start_tokens` is not a 1D tensor or `end_token` is not a scalar. """ if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") self._batch_size = array_ops.shape(first_input)[0] self._start_inputs = first_input @property def batch_size(self): return self._batch_size def initialize(self, name=None): finished = array_ops.tile([False], [self._batch_size]) return (finished, self._start_inputs) def sample(self, time, outputs, state, name=None): """sample for GreedyEmbeddingHelper.""" del time, state # unused by sample_fn # Outputs are logits, use argmax to get the most probable id if not isinstance(outputs, ops.Tensor): raise TypeError("Expected outputs to be a single Tensor, got: %s" % type(outputs)) sample_ids = math_ops.cast( math_ops.argmax(outputs, axis=-1), dtypes.int32) return sample_ids def next_inputs(self, time, outputs, state, sample_ids, name=None): """next_inputs_fn for GreedyEmbeddingHelper.""" del time, outputs # unused by next_inputs_fn finished = math_ops.equal(sample_ids, self._end_token) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, # If we're finished, the next_inputs value doesn't matter lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (finished, next_inputs, state) class LogProbsGreedyEmbeddingHelper(Helper): """A helper for use during inference. Uses the argmax of the output (treated as logits) and passes the result through an embedding layer to get the next input. """ def __init__(self, embedding, first_input, end_token, need_softmax=True): """Initializer. Args: embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. The returned tensor will be passed to the decoder input. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. Raises: ValueError: if `start_tokens` is not a 1D tensor or `end_token` is not a scalar. """ if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") self._batch_size = array_ops.shape(first_input)[0] self._start_inputs = first_input self._need_softmax = need_softmax @property def batch_size(self): return self._batch_size def initialize(self, name=None): finished = array_ops.tile([False], [self._batch_size]) return (finished, self._start_inputs) def sample(self, time, outputs, state, name=None): """sample for GreedyEmbeddingHelper.""" del time, state # unused by sample_fn # Outputs are logits, use argmax to get the most probable id if not isinstance(outputs, ops.Tensor): raise TypeError("Expected outputs to be a single Tensor, got: %s" % type(outputs)) if self._need_softmax: log_probs = tf.nn.log_softmax(outputs) else: log_probs = tf.log(tf.maximum(outputs, 1e-12)) sample_log_probs, sample_ids = tf.nn.top_k(log_probs) sample_ids = tf.reshape(sample_ids, [self.batch_size,]) sample_ids = tf.to_int32(sample_ids) sample_log_probs = tf.reshape(sample_log_probs, [self.batch_size,]) return sample_ids, sample_log_probs def next_inputs(self, time, outputs, state, sample_ids, name=None): """next_inputs_fn for GreedyEmbeddingHelper.""" del time, outputs # unused by next_inputs_fn finished = math_ops.equal(sample_ids, self._end_token) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, # If we're finished, the next_inputs value doesn't matter lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (finished, next_inputs, state) #--chg add class MultinomialEmbeddingHelper(Helper): """A helper for use during inference. Uses the argmax of the output (treated as logits) and passes the result through an embedding layer to get the next input. """ def __init__(self, embedding, first_input, end_token, need_softmax=True): """Initializer. Args: embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. The returned tensor will be passed to the decoder input. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. Raises: ValueError: if `start_tokens` is not a 1D tensor or `end_token` is not a scalar. """ if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") self._batch_size = array_ops.shape(first_input)[0] self._start_inputs = first_input self._need_softmax = need_softmax @property def batch_size(self): return self._batch_size def initialize(self, name=None): finished = array_ops.tile([False], [self._batch_size]) return (finished, self._start_inputs) def sample(self, time, outputs, state, name=None): """sample for GreedyEmbeddingHelper.""" del time, state # unused by sample_fn # Outputs are logits, use argmax to get the most probable id if not isinstance(outputs, ops.Tensor): raise TypeError("Expected outputs to be a single Tensor, got: %s" % type(outputs)) if self._need_softmax: log_probs = tf.nn.log_softmax(outputs) else: log_probs = tf.log(tf.maximum(outputs, 1e-12)) #sample_ids = tf.multinomial(log_probs, 1) sample_ids = tf.multinomial(outputs, 1) sample_ids = tf.reshape(sample_ids, [self.batch_size,]) sample_ids = tf.to_int32(sample_ids) batch_nums = tf.range(0, limit=self.batch_size) # shape (batch_size) step_indices = tf.stack((batch_nums, sample_ids), axis=1) # shape (batch_size, 2) sample_log_probs = tf.gather_nd(log_probs, step_indices) # shape (batch_size). loss on this step for each batch sample_log_probs = tf.reshape(sample_log_probs, [self.batch_size,]) return sample_ids, sample_log_probs def next_inputs(self, time, outputs, state, sample_ids, name=None): """next_inputs_fn for GreedyEmbeddingHelper.""" del time, outputs # unused by next_inputs_fn finished = math_ops.equal(sample_ids, self._end_token) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, # If we're finished, the next_inputs value doesn't matter lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (finished, next_inputs, state) class LoopHelper(Helper): """A helper for use during training. Only reads inputs. Returned sample_ids are the argmax of the RNN output logits. """ def __init__(self, inputs, sequence_length, time_major=False, name=None): """Initializer. Args: inputs: A (structure of) input tensors. sequence_length: An int32 vector tensor. time_major: Python bool. Whether the tensors in `inputs` are time major. If `False` (default), they are assumed to be batch major. name: Name scope for any created operations. Raises: ValueError: if `sequence_length` is not a 1D tensor. """ with ops.name_scope(name, "LoopHelper", [inputs, sequence_length]): inputs = ops.convert_to_tensor(inputs, name="inputs") if not time_major: inputs = nest.map_structure(_transpose_batch_time, inputs) self._input_tas = nest.map_structure(_unstack_ta, inputs) self._sequence_length = ops.convert_to_tensor( sequence_length, name="sequence_length") if self._sequence_length.get_shape().ndims != 1: raise ValueError( "Expected sequence_length to be a vector, but received shape: %s" % self._sequence_length.get_shape()) self._zero_inputs = nest.map_structure( lambda inp: array_ops.zeros_like(inp[0, :]), inputs) self._batch_size = array_ops.size(sequence_length) @property def batch_size(self): return self._batch_size def initialize(self, name=None): with ops.name_scope(name, "LoopHelperInitialize"): finished = math_ops.equal(0, self._sequence_length) all_finished = math_ops.reduce_all(finished) next_inputs = control_flow_ops.cond( all_finished, lambda: self._zero_inputs, lambda: nest.map_structure(lambda inp: inp.read(0), self._input_tas)) return (finished, next_inputs) def sample(self, time, outputs, name=None, **unused_kwargs): with ops.name_scope(name, "LoopHelperSample", [time, outputs]): return 0 def next_inputs(self, time, outputs, state, name=None, **unused_kwargs): """next_inputs_fn for TrainingHelper.""" with ops.name_scope(name, "LoopHelperNextInputs", [time, outputs, state]): next_time = time + 1 finished = (next_time >= self._sequence_length) #all_finished = math_ops.reduce_all(finished) #next_inputs = outputs.rnn_output #next_inputs = 0 next_inputs = outputs return (finished, next_inputs, state) ================================================ FILE: utils/melt/seq2seq/legacy/beam_decoder.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file beam_decoder.py # \author chenghuige # \date 2017-01-16 14:15:32.474973 # \Description # ============================================================================== """ NOTICE this is ingraph beam decode as opposed to melt.seq2seq.beam_search which is ougraph beam search but here also not dynamic, just use loop, do all max_steps until stop, for beam search actually you can not early stop also since more steps results might be better. if length normalizer == 0. then start from same state longer path could not be better. so you might look at partial result if it not better then all the done beam then mark it as done TODO but if length normalizer > 0 then.. you can not early stop by theory.. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python.ops import variable_scope from tensorflow.python.ops import array_ops from tensorflow.python.util import nest import collections import melt def rnn_decoder(decoder_inputs, initial_state, cell, loop_function=None, scope=None): """RNN decoder for the sequence-to-sequence model. copy from tf contrib but modify a bit add state change Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: If not None, this function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). This can be used for decoding, but also for training to emulate http://arxiv.org/abs/1506.03099. Signature -- loop_function(prev, i) = next * prev is a 2D Tensor of shape [batch_size x output_size], * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size x input_size]. scope: VariableScope for the created subgraph; defaults to "rnn_decoder". Returns: A tuple of the form (outputs, state), where: outputs: A list of the same length as decoder_inputs of 2D Tensors with shape [batch_size x output_size] containing generated outputs. state: The state of each cell at the final time-step. It is a 2D Tensor of shape [batch_size x cell.state_size]. (Note that in some cases, like basic RNN cell or GRU cell, outputs and states can be the same. They are different for LSTM cells though.) """ with variable_scope.variable_scope(scope or "rnn_decoder"): state = initial_state outputs = [] prev = None for i, inp in enumerate(decoder_inputs): if loop_function is not None and prev is not None: with variable_scope.variable_scope("loop_function", reuse=True): inp, state = loop_function(i, prev, state) if i > 0: variable_scope.get_variable_scope().reuse_variables() output, state = cell(inp, state) outputs.append(output) if loop_function is not None: prev = output return outputs, state class BeamDecoderOutputs( collections.namedtuple("BeamDecoderOutputs", ("paths", "scores", "decoder"))): def clone(self, **kwargs): return super(BeamDecoderOutputs, self)._replace(**kwargs) def beam_decode(input, max_words, initial_state, cell, loop_function, scope=None, beam_size=7, done_token=0, output_fn=None, length_normalization_factor=0., prob_as_score=True, topn=1, need_softmax=True, fast_greedy=False): """ Beam search decoder copy from https://gist.github.com/igormq/000add00702f09029ea4c30eba976e0a make small modifications, add more comments and add topn support, and length_normalization_factor NOTICE!: not dynamic, for loop based here not tf.while_loop, so ingraph but currently static build graph TODO: consider beam search decoder from https://github.com/google/seq2seq, that implementation might be dynamic! but that implementaion only allow batch size 1, so use batch[beam_size] ? TODO:make beam_decode dynamic version, by using named_tuple, and tf.nest_map NOTICE! fast_greedy mode not test much, just use fast_greed=False, just to calc topn even topn is 1 Args: decoder_inputs: A list of 2D Tensors [batch_size x input_size]. initial_state: 2D Tensor with shape [batch_size x cell.state_size]. cell: rnn_cell.RNNCell defining the cell function and size. loop_function: This function will be applied to the i-th output in order to generate the i+1-st input, and decoder_inputs will be ignored, except for the first element ("GO" symbol). Signature -- loop_function(prev_symbol, i) = next * prev_symbol is a 1D Tensor of shape [batch_size*beam_size] * i is an integer, the step number (when advanced control is needed), * next is a 2D Tensor of shape [batch_size*beam_size, input_size]. scope: Passed to seq2seq.rnn_decoder beam_size: An integer beam size to use for each example done_token: An integer token that specifies the STOP symbol max_words: if max_words == 3, ouputs is as beow, output array len is fixed as 3 田地 里 1.87996e-05 [748 21 9] 3 [0.10245205285997697, 0.923504919660139, 6.374825504667079e-06] 一个 弯着腰 1.59349e-06 [ 10 415 9] 3 [0.4947927940753284, 0.04485648322008847, 1.055874923485485e-06] 田地 1.64312e-07 [748 9 0] 3 Return: A tensor of dimensions [batch_size, len(decoder_inputs)] that corresponds to the 1-best beam for each batch. Known limitations: * The output sequence consisting of only a STOP symbol is not considered (zero-length sequences are not very useful, so this wasn't implemented) * The computation graph this creates is messy and not very well-optimized TODO: also return path lengths? """ decoder = BeamDecoder(input, #max_words + 2, #take step start from i==1 and need one more additional done token max_words, #now max words inclucde done token This is safe initial_state, beam_size=beam_size, done_token=done_token, output_fn=output_fn, length_normalization_factor=length_normalization_factor, topn=topn, need_softmax=need_softmax, fast_greedy=fast_greedy) _ = rnn_decoder( decoder.decoder_inputs, decoder.initial_state, cell=cell, loop_function = lambda i, prev, state: loop_function(i, prev, state, decoder), scope=scope) if fast_greedy: #compat with topn > 1 score = tf.expand_dims(decoder.logprobs_finished_beams, 1) path = tf.expand_dims(decoder.finished_beams, 1) else: path, score = decoder.calc_topn() if prob_as_score: score = tf.exp(score) outputs = BeamDecoderOutputs( paths=path, scores=score, decoder=decoder) return outputs, decoder.final_state #now without beam size 10, about seq->seq 20->4 10w vocab, about 70-100ms, notice the first decode will be slow 400ms+ #exp in deepiu/textsum/inference/infenrence.sh #TODO add alignments history support for ingraph beam search class BeamDecoder(): def __init__(self, input, max_steps, initial_state, beam_size=7, done_token=0, batch_size=None, num_classes=None, output_fn=None, length_normalization_factor=0., topn=1, need_softmax=True, fast_greedy=False): self.length_normalization_factor = length_normalization_factor self.topn = topn self.need_softmax = need_softmax self.beam_size = beam_size self.batch_size = batch_size if self.batch_size is None: self.batch_size = tf.shape(input)[0] self.max_len = max_steps self.num_classes = num_classes self.done_token = done_token self.pad_token = 0 self.output_fn = output_fn self.past_logprobs = None self.past_symbols = None self.past_step_logprobs = None self.fast_greedy = fast_greedy if self.fast_greedy: self.finished_beams = tf.zeros((self.batch_size, self.max_len), dtype=tf.int32) self.logprobs_finished_beams = tf.ones((self.batch_size,), dtype=tf.float32) * -float('inf') else: self.paths_list = [] self.logprobs_list = [] self.step_logprobs_list = [] #for rnn_decoder function need one more step loop, since i== 0 will not output words, take step start from i==1 self.decoder_inputs = [None] * (self.max_len + 1) self.decoder_inputs[0] = tf.contrib.seq2seq.tile_batch(input, beam_size) self.initial_state = initial_state self.final_state = None def calc_topn(self): #[batch_size, beam_size * (max_len-2)] logprobs = tf.concat(self.logprobs_list, 1) #[batch_size, topn] top_logprobs, indices = tf.nn.top_k(logprobs, self.topn) #-2 because max_words = max_len - 2 TODO length = self.beam_size * (self.max_len - 2) indice_offsets = tf.reshape( (tf.range(self.batch_size * length) // length) * length, [self.batch_size, length]) indice_offsets = indice_offsets[:, :self.topn] #[batch_size, max_len(length index) - 2, beam_size, max_len] paths = tf.concat(self.paths_list, 1) step_logprobs_path = tf.concat(self.step_logprobs_list, 1) #top_paths = paths[:, 0:self.topn, 2, :] #paths = tf.reshape(paths, [-1, (self.max_len - 2) * self.beam_size, self.max_len]) #paths = tf.reshape(paths, [self.batch_size, -1, self.max_len]) paths = tf.reshape(paths, [-1, self.max_len]) step_logprobs_path = tf.reshape(step_logprobs_path, [-1, self.max_len]) top_paths = tf.gather(paths, indice_offsets + indices) top_step_logprobs_path = tf.gather(step_logprobs_path, indice_offsets + indices) #log probs history self.log_probs_history = top_step_logprobs_path return top_paths, top_logprobs def _get_aligments(self, state): attention_size = melt.get_shape(state.alignments, -1) alignments = tf.reshape(state.alignments, [-1, self.beam_size, attention_size]) return alignments def take_step(self, i, prev, state): print('-------------i', i) if self.output_fn is not None: #[batch_size * beam_size, num_units] -> [batch_size * beam_size, num_classes] try: output = self.output_fn(prev) except Exception: output = self.output_fn(prev, state) else: output = prev self.output = output #[batch_size * beam_size, num_classes], here use log sofmax if self.need_softmax: logprobs = tf.nn.log_softmax(output) else: logprobs = tf.log(tf.maximum(output, 1e-12)) if self.num_classes is None: self.num_classes = tf.shape(logprobs)[1] #->[batch_size, beam_size, num_classes] logprobs_batched = tf.reshape(logprobs, [-1, self.beam_size, self.num_classes]) logprobs_batched.set_shape((None, self.beam_size, None)) # Note: masking out entries to -inf plays poorly with top_k, so just subtract out a large number. nondone_mask = tf.reshape( tf.cast( tf.equal(tf.range(self.num_classes), self.done_token), tf.float32) * -1e18, [1, 1, self.num_classes]) if self.past_logprobs is None: #[batch_size, beam_size, num_classes] -> [batch_size, num_classes] #-> past_logprobs[batch_size, beam_size], indices[batch_size, beam_size] self.past_logprobs, indices = tf.nn.top_k( (logprobs_batched + nondone_mask)[:, 0, :], self.beam_size) step_logprobs = self.past_logprobs else: #logprobs_batched [batch_size, beam_size, num_classes] -> [batch_size, beam_size, num_classes] #past_logprobs [batch_size, beam_size] -> [batch_size, beam_size, 1] step_logprobs_batched = logprobs_batched logprobs_batched = logprobs_batched + tf.expand_dims(self.past_logprobs, 2) #get [batch_size, beam_size] each self.past_logprobs, indices = tf.nn.top_k( #[batch_size, beam_size * num_classes] tf.reshape(logprobs_batched + nondone_mask, [-1, self.beam_size * self.num_classes]), self.beam_size) #get current step logprobs [batch_size, beam_size] step_logprobs = tf.gather_nd(tf.reshape(step_logprobs_batched, [-1, self.beam_size * self.num_classes]), melt.batch_values_to_indices(indices)) # For continuing to the next symbols [batch_size, beam_size] symbols = indices % self.num_classes #from wich beam it comes [batch_size, beam_size] parent_refs = indices // self.num_classes if self.past_symbols is None: #here when i == 1, when i==0 will not do take step it just do one rnn() get output and use it for i==1 here #here will not need to gather state for inital state of each beam is the same #[batch_size, beam_size] -> [batch_size, beam_size, 1] self.past_symbols = tf.expand_dims(symbols, 2) self.past_step_logprobs = tf.expand_dims(step_logprobs, 2) else: # NOTE: outputing a zero-length sequence is not supported for simplicity reasons #hasky/jupter/tensorflow/beam-search2.ipynb below for mergeing path #here when i >= 2 # tf.reshape( # (tf.range(3 * 5) // 5) * 5, # [3, 5] # ).eval() # array([[ 0, 0, 0, 0, 0], # [ 5, 5, 5, 5, 5], # [10, 10, 10, 10, 10]], dtype=int32) parent_refs_offsets = tf.reshape( (tf.range(self.batch_size * self.beam_size) // self.beam_size) * self.beam_size, [self.batch_size, self.beam_size]) #self.past_symbols [batch_size, beam_size, i - 1] -> past_symbols_batch_major [batch_size * beam_size, i - 1] past_symbols_batch_major = tf.reshape(self.past_symbols, [-1, i-1]) past_step_logprobs_batch_major = tf.reshape(self.past_step_logprobs, [-1, i - 1]) #[batch_size, beam_size] past_indices = parent_refs + parent_refs_offsets #-> [batch_size, beam_size, i - 1] beam_past_symbols = tf.gather(past_symbols_batch_major, #[batch_size * beam_size, i - 1] past_indices #[batch_size, beam_size] ) beam_past_step_logprobs = tf.gather(past_step_logprobs_batch_major, past_indices) #we must also choose corresponding past state as new start past_indices = tf.reshape(past_indices, [-1]) #TODO not support tf.TensorArray right now, can not use aligment_history in attention_wrapper def try_gather(x, indices): #if isinstance(x, tf.Tensor) and x.shape.ndims >= 2: assert isinstance(x, tf.Tensor) if x.shape.ndims >= 2: return tf.gather(x, indices) else: return x state = nest.map_structure(lambda x: try_gather(x, past_indices), state) if hasattr(state, 'alignments'): attention_size = melt.get_shape(state.alignments, -1) alignments = tf.reshape(state.alignments, [-1, self.beam_size, attention_size]) print('alignments', alignments) if not self.fast_greedy: #[batch_size, beam_size, max_len] path = tf.concat([self.past_symbols, tf.ones_like(tf.expand_dims(symbols, 2)) * self.done_token, tf.tile(tf.ones_like(tf.expand_dims(symbols, 2)) * self.pad_token, [1, 1, self.max_len - i])], 2) step_logprobs_path = tf.concat([self.past_step_logprobs, tf.expand_dims(step_logprobs_batched[:, :, self.done_token], 2), tf.tile(tf.ones_like(tf.expand_dims(step_logprobs, 2)) * -float('inf'), [1, 1, self.max_len - i])], 2) #[batch_size, 1, beam_size, max_len] path = tf.expand_dims(path, 1) step_logprobs_path = tf.expand_dims(step_logprobs_path, 1) self.paths_list.append(path) self.step_logprobs_list.append(step_logprobs_path) #[batch_size * beam_size, i - 1] -> [batch_size, bam_size, i] the best beam_size paths until step i self.past_symbols = tf.concat([beam_past_symbols, tf.expand_dims(symbols, 2)], 2) self.past_step_logprobs = tf.concat([beam_past_step_logprobs, tf.expand_dims(step_logprobs, 2)], 2) # For finishing the beam #[batch_size, beam_size] logprobs_done = logprobs_batched[:, :, self.done_token] if not self.fast_greedy: self.logprobs_list.append(logprobs_done / i ** self.length_normalization_factor) else: done_parent_refs = tf.cast(tf.argmax(logprobs_done, 1), tf.int32) done_parent_refs_offsets = tf.range(self.batch_size) * self.beam_size done_past_symbols = tf.gather(past_symbols_batch_major, done_parent_refs + done_parent_refs_offsets) #[batch_size, max_len] symbols_done = tf.concat([done_past_symbols, tf.ones_like(done_past_symbols[:,0:1]) * self.done_token, tf.tile(tf.zeros_like(done_past_symbols[:,0:1]), [1, self.max_len - i]) ], 1) #[batch_size, beam_size] -> [batch_size,] logprobs_done_max = tf.reduce_max(logprobs_done, 1) if self.length_normalization_factor > 0: logprobs_done_max /= i ** self.length_normalization_factor #[batch_size, max_len] self.finished_beams = tf.where(logprobs_done_max > self.logprobs_finished_beams, symbols_done, self.finished_beams) self.logprobs_finished_beams = tf.maximum(logprobs_done_max, self.logprobs_finished_beams) #->[batch_size * beam_size,] symbols_flat = tf.reshape(symbols, [-1]) self.final_state = state return symbols_flat, state ================================================ FILE: utils/melt/seq2seq/legacy/beam_search_decoder.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A decoder that performs beam search.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections from tensorflow.contrib.seq2seq.python.ops import beam_search_ops from tensorflow.contrib.seq2seq.python.ops import decoder from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.ops import tensor_array_ops from tensorflow.python.util import nest import tensorflow as tf __all__ = [ "BeamSearchDecoderOutput", "BeamSearchDecoderState", "BeamSearchDecoder", "FinalBeamSearchDecoderOutput", "tile_batch", ] class BeamSearchDecoderState( collections.namedtuple("BeamSearchDecoderState", ("cell_state", "log_probs", "finished", "lengths"))): pass class BeamSearchDecoderOutput( collections.namedtuple("BeamSearchDecoderOutput", ("scores", "predicted_ids", "parent_ids"))): pass class FinalBeamSearchDecoderOutput( collections.namedtuple("FinalBeamDecoderOutput", ["predicted_ids", "beam_search_decoder_output"])): """Final outputs returned by the beam search after all decoding is finished. Args: predicted_ids: The final prediction. A tensor of shape `[T, batch_size, beam_width]`. beam_search_output: An instance of `BeamSearchDecoderOutput` that describes the state of the beam search. """ pass def tile_batch(t, multiplier, name=None): """Tile the batch dimension of tensor t. This function takes a tensor t shaped `[batch_size, s0, s1, ...]` composed of minibatch entries `t[0], ..., t[batch_size - 1]` and tiles it to have a shape `[batch_size * multiplier, s0, s1, ...]` composed of minibatch entries `t[0], t[0], ..., t[1], t[1], ...` where each minibatch entry is repeated `multiplier` times. Args: t: `Tensor` shaped `[batch_size, ...]`. multiplier: Python int. name: Name scope for any created operations. Returns: A `Tensor` shaped `[batch_size * multiplier, ...]`. Raises: ValueError: if `t` does not have a statically known rank or it's < 1. """ with ops.name_scope(name, "tile_batch", [t, multiplier]): t = ops.convert_to_tensor(t, name="t") shape_t = array_ops.shape(t) if t.shape.ndims is None or t.shape.ndims < 1: raise ValueError("t must have statically known rank") tiling = [1] * (t.shape.ndims + 1) tiling[1] = multiplier tiled_static_batch_size = ( t.shape[0].value * multiplier if t.shape[0].value is not None else None) tiled = array_ops.tile(array_ops.expand_dims(t, 1), tiling) tiled = array_ops.reshape( tiled, array_ops.concat(([shape_t[0] * multiplier], shape_t[1:]), 0)) tiled.set_shape( tensor_shape.TensorShape( [tiled_static_batch_size]).concatenate(t.shape[1:])) return tiled class BeamSearchDecoder(decoder.Decoder): """BeamSearch sampling decoder.""" def __init__(self, cell, embedding, first_input, end_token, initial_state, beam_width, vocab_size=None, output_fn=None, length_penalty_weight=0.0): """Initialize BeamSearchDecoder. Args: cell: An `RNNCell` instance. embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. beam_width: Python integer, the number of beams. output_layer: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Raises: TypeError: if `cell` is not an instance of `RNNCell`, or `output_layer` is not an instance of `tf.layers.Layer`. ValueError: If `start_tokens` is not a vector or `end_token` is not a scalar. """ if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) self._cell = cell self._output_layer = output_fn if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") if self._end_token.get_shape().ndims != 0: raise ValueError("end_token must be a scalar") self._batch_size = first_input.shape[0].value if self._batch_size is None: self._batch_size = array_ops.shape(first_input)[0] self._beam_width = beam_width self._length_penalty_weight = length_penalty_weight self._initial_cell_state = nest.map_structure( self._maybe_split_batch_beams, initial_state, self._cell.state_size) self._start_inputs = array_ops.tile( array_ops.expand_dims(first_input, 1), [1, self._beam_width, 1]) self._finished = array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.bool) @property def batch_size(self): return self._batch_size @property def output_size(self): # Return the cell output and the id return BeamSearchDecoderOutput( scores=tensor_shape.TensorShape([self._beam_width]), predicted_ids=tensor_shape.TensorShape([self._beam_width]), parent_ids=tensor_shape.TensorShape([self._beam_width])) @property def output_dtype(self): # Assume the dtype of the cell is the output_size structure # containing the input_state's first component's dtype. # Return that structure and int32 (the id) dtype = nest.flatten(self._initial_cell_state)[0].dtype return BeamSearchDecoderOutput( scores=dtypes.float32, predicted_ids=dtypes.int32, parent_ids=dtypes.int32) def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, start_inputs, initial_state)`. """ finished, start_inputs = self._finished, self._start_inputs initial_state = BeamSearchDecoderState( cell_state=self._initial_cell_state, log_probs=array_ops.zeros( [self._batch_size, self._beam_width], dtype=nest.flatten(self._initial_cell_state)[0].dtype), finished=finished, lengths=array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.int32)) return (finished, start_inputs, initial_state) def finalize(self, outputs, final_state, sequence_lengths): """Finalize and return the predicted_ids. Args: outputs: An instance of BeamSearchDecoderOutput. final_state: An instance of BeamSearchDecoderState. Passed through to the output. sequence_lengths: An `int32` tensor shaped `[batch_size, beam_width]`. The sequence lengths determined for each beam during decode. Returns: outputs: An instance of FinalBeamSearchDecoderOutput where the predicted_ids are the result of calling _gather_tree. final_state: The same input instance of BeamSearchDecoderState. """ predicted_ids = beam_search_ops.gather_tree( outputs.predicted_ids, outputs.parent_ids, sequence_length=sequence_lengths) outputs = FinalBeamSearchDecoderOutput( beam_search_decoder_output=outputs, predicted_ids=predicted_ids) return outputs, final_state def _merge_batch_beams(self, t, s=None): """Merges the tensor from a batch of beams into a batch by beams. More exactly, t is a tensor of dimension [batch_size, beam_width, s]. We reshape this into [batch_size*beam_width, s] Args: t: Tensor of dimension [batch_size, beam_width, s] s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size * beam_width, s]. """ if isinstance(s, ops.Tensor): s = tensor_util.constant_value_as_shape(s) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) if isinstance(self._batch_size, tf.Tensor): static_batch_size = tensor_util.constant_value(self._batch_size) else: static_batch_size = self._batch_size batch_size_beam_width = ( None if static_batch_size is None else static_batch_size * self._beam_width) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size * self._beam_width], t_shape[2:]), 0)) reshaped_t.set_shape( (tensor_shape.TensorShape([batch_size_beam_width]).concatenate(s))) return reshaped_t def _split_batch_beams(self, t, s=None): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s]. s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: ValueError: If, after reshaping, the new tensor is not shaped `[batch_size, beam_width, s]` (assuming batch_size and beam_width are known statically). """ if isinstance(s, ops.Tensor): s = tensor_util.constant_value_as_shape(s) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size, self._beam_width], t_shape[1:]), 0)) if isinstance(self._batch_size, tf.Tensor): static_batch_size = tensor_util.constant_value(self._batch_size) else: static_batch_size = self._batch_size expected_reshaped_shape = tensor_shape.TensorShape( [static_batch_size, self._beam_width]).concatenate(s) if not reshaped_t.shape.is_compatible_with(expected_reshaped_shape): raise ValueError("Unexpected behavior when reshaping between beam width " "and batch size. The reshaped tensor has shape: %s. " "We expected it to have shape " "(batch_size, beam_width, depth) == %s. Perhaps you " "forgot to create a zero_state with " "batch_size=encoder_batch_size * beam_width?" % (reshaped_t.shape, expected_reshaped_shape)) reshaped_t.set_shape(expected_reshaped_shape) return reshaped_t def _maybe_split_batch_beams(self, t, s): """Maybe splits the tensor from a batch by beams into a batch of beams. We do this so that we can use nest and not run into problems with shapes. Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: Either a reshaped version of t with dimension [batch_size, beam_width, s] if t's first dimension is of size batch_size*beam_width or t if not. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ if isinstance(t, tensor_array_ops.TensorArray): raise TypeError( "TensorArray state is not supported by BeamSearchDecoder: %s" % t.name) if t.shape.ndims is None: raise ValueError( "Expected tensor (%s) to have known rank, but ndims == None." % t) if t.shape.ndims >= 1: return self._split_batch_beams(t, s) else: return t def _maybe_merge_batch_beams(self, t, s): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ if isinstance(t, tensor_array_ops.TensorArray): raise TypeError( "TensorArray state is not supported by BeamSearchDecoder: %s" % t.name) if t.shape.ndims is None: raise ValueError( "Expected tensor (%s) to have known rank, but ndims == None." % t) if t.shape.ndims >= 2: return self._merge_batch_beams(t, s) else: return t def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ batch_size = self._batch_size beam_width = self._beam_width end_token = self._end_token length_penalty_weight = self._length_penalty_weight with ops.name_scope(name, "BeamSearchDecoderStep", (time, inputs, state)): cell_state = state.cell_state inputs = nest.map_structure( lambda inp: self._merge_batch_beams(inp, s=inp.shape[2:]), inputs) cell_state = nest.map_structure( self._maybe_merge_batch_beams, cell_state, self._cell.state_size) cell_outputs, next_cell_state = self._cell(inputs, cell_state) cell_outputs = nest.map_structure( lambda out: self._split_batch_beams(out, out.shape[1:]), cell_outputs) next_cell_state = nest.map_structure( self._maybe_split_batch_beams, next_cell_state, self._cell.state_size) if self._output_layer is not None: cell_outputs = self._output_layer(cell_outputs) beam_search_output, beam_search_state = _beam_search_step( time=time, logits=cell_outputs, beam_state=state, batch_size=batch_size, beam_width=beam_width, end_token=end_token, length_penalty_weight=length_penalty_weight) finished = beam_search_state.finished sample_ids = beam_search_output.predicted_ids next_inputs = control_flow_ops.cond( math_ops.reduce_all(finished), lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (beam_search_output, beam_search_state, next_inputs, finished) def _beam_search_step(time, logits, beam_state, batch_size, beam_width, end_token, length_penalty_weight): """Performs a single step of Beam Search Decoding. Args: time: Beam search time step, should start at 0. At time 0 we assume that all beams are equal and consider only the first beam for continuations. logits: Logits at the current time step. A tensor of shape `[batch_size, beam_width, vocab_size]` beam_state: Current state of the beam search. An instance of `BeamSearchDecoderState`. batch_size: The batch size for this input. beam_width: Python int. The size of the beams. end_token: The int32 end token. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: A new beam state. """ #TODO why need constant_value ?? if isinstance(batch_size, tf.Tensor): static_batch_size = tensor_util.constant_value(batch_size) else: static_batch_size = batch_size # Calculate the current lengths of the predictions prediction_lengths = beam_state.lengths previously_finished = beam_state.finished # Calculate the total log probs for the new hypotheses # Final Shape: [batch_size, beam_width, vocab_size] step_log_probs = nn_ops.log_softmax(logits) step_log_probs = _mask_probs(step_log_probs, end_token, previously_finished) total_probs = array_ops.expand_dims(beam_state.log_probs, 2) + step_log_probs # Calculate the continuation lengths by adding to all continuing beams. vocab_size = logits.shape[-1].value lengths_to_add = array_ops.one_hot( indices=array_ops.tile( array_ops.reshape(end_token, [1, 1]), [batch_size, beam_width]), depth=vocab_size, on_value=0, off_value=1) add_mask = (1 - math_ops.to_int32(previously_finished)) lengths_to_add = array_ops.expand_dims(add_mask, 2) * lengths_to_add new_prediction_lengths = ( lengths_to_add + array_ops.expand_dims(prediction_lengths, 2)) # Calculate the scores for each beam scores = _get_scores( log_probs=total_probs, sequence_lengths=new_prediction_lengths, length_penalty_weight=length_penalty_weight) time = ops.convert_to_tensor(time, name="time") # During the first time step we only consider the initial beam scores_shape = array_ops.shape(scores) scores_flat = control_flow_ops.cond( time > 0, lambda: array_ops.reshape(scores, [batch_size, -1]), lambda: scores[:, 0]) num_available_beam = control_flow_ops.cond( time > 0, lambda: math_ops.reduce_prod(scores_shape[1:]), lambda: math_ops.reduce_prod(scores_shape[2:])) # Pick the next beams according to the specified successors function next_beam_size = math_ops.minimum( ops.convert_to_tensor(beam_width, dtype=dtypes.int32, name="beam_width"), num_available_beam) next_beam_scores, word_indices = nn_ops.top_k(scores_flat, k=next_beam_size) next_beam_scores.set_shape([static_batch_size, beam_width]) word_indices.set_shape([static_batch_size, beam_width]) # Pick out the probs, beam_ids, and states according to the chosen predictions next_beam_probs = _tensor_gather_helper( gather_indices=word_indices, gather_from=total_probs, range_input=batch_size, range_size=beam_width * vocab_size, final_shape=[static_batch_size, beam_width]) next_word_ids = math_ops.to_int32(word_indices % vocab_size) next_beam_ids = math_ops.to_int32(word_indices / vocab_size) # Append new ids to current predictions previously_finished = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=previously_finished, range_input=batch_size, range_size=beam_width, final_shape=[static_batch_size, beam_width]) next_finished = math_ops.logical_or(previously_finished, math_ops.equal(next_word_ids, end_token)) # Calculate the length of the next predictions. # 1. Finished beams remain unchanged # 2. Beams that are now finished (EOS predicted) remain unchanged # 3. Beams that are not yet finished have their length increased by 1 lengths_to_add = math_ops.to_int32( math_ops.not_equal(next_word_ids, end_token)) lengths_to_add = (1 - math_ops.to_int32(next_finished)) * lengths_to_add next_prediction_len = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=beam_state.lengths, range_input=batch_size, range_size=beam_width, final_shape=[static_batch_size, beam_width]) next_prediction_len += lengths_to_add next_state = BeamSearchDecoderState( cell_state=beam_state.cell_state, log_probs=next_beam_probs, lengths=next_prediction_len, finished=next_finished) output = BeamSearchDecoderOutput( scores=next_beam_scores, predicted_ids=next_word_ids, parent_ids=next_beam_ids) return output, next_state def _get_scores(log_probs, sequence_lengths, length_penalty_weight): """Calculates scores for beam search hypotheses. Args: log_probs: The log probabilities with shape `[batch_size, beam_width, vocab_size]`. sequence_lengths: The array of sequence lengths. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: The scores normalized by the length_penalty. """ length_penality_ = _length_penalty( sequence_lengths=sequence_lengths, penalty_factor=length_penalty_weight) return log_probs / length_penality_ def _length_penalty(sequence_lengths, penalty_factor): """Calculates the length penalty. See https://arxiv.org/abs/1609.08144. Args: sequence_lengths: The sequence length of all hypotheses, a tensor of shape [beam_size, vocab_size]. penalty_factor: A scalar that weights the length penalty. Returns: The length penalty factor, a tensor fo shape [beam_size]. """ penalty_factor = ops.convert_to_tensor(penalty_factor, name="penalty_factor") penalty_factor.set_shape(()) # penalty should be a scalar. static_penalty = tensor_util.constant_value(penalty_factor) if static_penalty is not None and static_penalty == 0: return 1.0 return math_ops.div((5. + math_ops.to_float(sequence_lengths)) **penalty_factor, (5. + 1.)**penalty_factor) def _mask_probs(probs, eos_token, finished): """Masks log probabilities. The result is that finished beams allocate all probability mass to eos and unfinished beams remain unchanged. Args: probs: Log probabiltiies of shape `[batch_size, beam_width, vocab_size]` eos_token: An int32 id corresponding to the EOS token to allocate probability to. finished: A boolean tensor of shape `[batch_size, beam_width]` that specifies which elements in the beam are finished already. Returns: A tensor of shape `[batch_size, beam_width, vocab_size]`, where unfinished beams stay unchanged and finished beams are replaced with a tensor with all probability on the EOS token. """ vocab_size = array_ops.shape(probs)[2] finished_mask = array_ops.expand_dims( math_ops.to_float(1. - math_ops.to_float(finished)), 2) # These examples are not finished and we leave them non_finished_examples = finished_mask * probs # All finished examples are replaced with a vector that has all # probability on EOS finished_row = array_ops.one_hot( eos_token, vocab_size, dtype=probs.dtype, on_value=0., off_value=probs.dtype.min) finished_examples = (1. - finished_mask) * finished_row return finished_examples + non_finished_examples def _tensor_gather_helper(gather_indices, gather_from, range_input, range_size, final_shape): range_ = array_ops.expand_dims(math_ops.range(range_input) * range_size, 1) gather_indices = array_ops.reshape(gather_indices + range_, [-1]) output = array_ops.gather( array_ops.reshape(gather_from, [-1]), gather_indices) output = array_ops.reshape(output, final_shape) output.set_shape(final_shape) return output ================================================ FILE: utils/melt/seq2seq/logprobs_decoder.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A class of Decoders that may sample to generate the next input. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections from tensorflow.contrib.seq2seq.python.ops import decoder #from tensorflow.contrib.seq2seq.python.ops import helper as helper_py from melt.seq2seq import helper as helper_py from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.util import nest from tensorflow.python.ops import array_ops import tensorflow as tf __all__ = [ #"LogProbsDecoderOutput", "LogProbsDecoderState", "LogProbsDecoder", ] ##TODO why wrong .. ValueError: Inconsistent shapes: saw (?, 10148) but expected (?,) (and infer_shape=True) ##Object was never used (type ): ## class LogProbsDecoderOutput( collections.namedtuple("LogProbsDecoderOutput", ("rnn_output", "sample_id", "log_probs"))): pass # class BasicDecoderOutput( # collections.namedtuple("BasicDecoderOutput", ("rnn_output", "sample_id"))): # pass class LogProbsDecoderState( collections.namedtuple("LogProbsDecoderState", ("cell_state", "log_probs"))): pass class LogProbsDecoder(decoder.Decoder): """Basic sampling decoder.""" def __init__(self, cell, helper, initial_state, vocab_size=None, output_fn=None): """Initialize BasicDecoder. Args: cell: An `RNNCell` instance. helper: A `Helper` instance. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. The initial state of the RNNCell. output_fn: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. Raises: TypeError: if `cell`, `helper` or `output_fn` have an incorrect type. """ if not isinstance(cell, rnn_cell_impl.RNNCell): raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) #if not isinstance(helper, helper_py.Helper): # raise TypeError("helper must be a Helper, received: %s" % type(helper)) self._cell = cell self._helper = helper self._initial_state = initial_state self._output_fn = None if vocab_size is not None: if output_fn is not None: self._output_fn = output_fn else: self._output_fn = lambda cell_output: tf.contrib.layers.fully_connected( inputs=cell_output, num_outputs=vocab_size, activation_fn=None) self._vocab_size = vocab_size self._output_size = self._vocab_size if self._vocab_size is not None else self._cell.output_size @property def batch_size(self): return self._helper.batch_size @property def output_size(self): return LogProbsDecoderOutput( rnn_output=self._output_size, sample_id=tf.TensorShape([]), log_probs=tf.TensorShape([])) @property def output_dtype(self): return LogProbsDecoderOutput( rnn_output=tf.float32, sample_id=tf.int32, log_probs=tf.float32) # @property # def output_size(self): # return BasicDecoderOutput( # rnn_output=self._output_size, # sample_id=tf.TensorShape([])) # @property # def output_dtype(self): # return BasicDecoderOutput( # rnn_output=tf.float32, # sample_id=tf.int32) def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, first_inputs, initial_state)`. """ initial_state = LogProbsDecoderState( cell_state=self._initial_state, log_probs=array_ops.zeros( [self.batch_size,], dtype=nest.flatten(self._initial_state)[0].dtype)) return self._helper.initialize() + (initial_state,) def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ with ops.name_scope(name, "LogProbsDecoderStep", (time, inputs, state)): cell_outputs, cell_state = self._cell(inputs, state.cell_state) if self._output_fn is not None: try: cell_outputs = self._output_fn(cell_outputs) except Exception: try: cell_outputs = self._output_fn(cell_outputs, cell_state) except Exception: cell_outputs = self._output_fn(time, cell_outputs, cell_state) sample_ids, log_probs = self._helper.sample( time=time, outputs=cell_outputs, state=cell_state) next_state = LogProbsDecoderState(cell_state, state.log_probs + log_probs) (finished, next_inputs, next_state) = self._helper.next_inputs( time=time, outputs=cell_outputs, state=next_state, sample_ids=sample_ids) outputs = LogProbsDecoderOutput(cell_outputs, sample_ids, log_probs) #outputs = BasicDecoderOutput(cell_outputs, sample_ids) return (outputs, next_state, next_inputs, finished) ================================================ FILE: utils/melt/seq2seq/loss.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file loss.py # \author chenghuige # \date 2017-01-16 14:14:45.444355 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from six.moves import xrange # pylint: disable=redefined-builtin from six.moves import zip # pylint: disable=redefined-builtin from tensorflow.python import shape from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import rnn from tensorflow.python.ops import variable_scope from tensorflow.python.util import nest #-----------------------loss # if use tf.contrib.seq2seq.sequence_loss(which is per example if set average_across_batch=False) # notice the main diff here is we do targets = array_ops.reshape(targets, [-1, 1]) #so in sample soft max you do not need to do reshape labels = tf.reshape(labels, [-1, 1]) def sequence_loss_by_example(logits, targets, weights, average_across_timesteps=True, softmax_loss_function=None, label_smoothing=0, name=None): """Weighted cross-entropy loss for a sequence of logits (per example). Args: logits: [batch_size, num_steps, num_decoder_symbols]. if softmax_loss_function is not None then here is [batch_size, num_steps, emb_dim], actually is just outputs from dynamic_rnn if sotmax_loss_function is None, may be input is already [-1, num_decoder_symbols] flattened anyway, still ok targets: [batch_size, num_steps] weights: [batch_size, num_steps] average_across_timesteps: If set, divide the returned cost by the total label weight. softmax_loss_function: Function (inputs-batch, labels-batch) -> loss-batch to be used instead of the standard softmax (the default if this is None). name: Optional name for this operation, default: "sequence_loss_by_example". Returns: 1D batch-sized float Tensor: The log-perplexity for each sequence. """ with ops.name_scope(name, "sequence_loss_by_example", [logits, targets, weights]): logits_shape = array_ops.shape(logits) batch_size = logits_shape[0] if softmax_loss_function is None: #croosents [batch_size, num_steps] #-----do not need to reshape for sparse_softmax_cross_entropy_with_logits accept both input #num_classes = logits_shape[-1] #logits = array_ops.reshape(logits, [-1, num_classes]) #targets = array_ops.reshape(targets, [-1]) if label_smoothing == 0: crossents = nn_ops.sparse_softmax_cross_entropy_with_logits(logits=logits, labels=targets) else: num_classes = logits_shape[-1] # TODO FIXME strange Tensor("show_and_tell/main/decode/add_2:0", shape=(?, 10148), dtype=float32) #print('----------', logits) #TypeError: List of Tensors when single Tensor expected #logits = array_ops.reshape(logits, [-1, num_classes]) targets = array_ops.reshape(targets, [-1]) onehot_labels = array_ops.one_hot(targets, num_classes) num_classes = math_ops.cast(num_classes, logits.dtype) smooth_positives = 1.0 - label_smoothing smooth_negatives = label_smoothing / num_classes onehot_labels = onehot_labels * smooth_positives + smooth_negatives crossents = nn_ops.softmax_cross_entropy_with_logits(labels=onehot_labels, logits=logits) crossents = array_ops.reshape(crossents, [batch_size, -1]) weights = array_ops.reshape(weights, [batch_size, -1]) else: assert label_smoothing == 0, 'not implement label smoothing for sample softmax loss yet' num_classes = logits_shape[-1] #need reshape because unlike sparse_softmax_cross_entropy_with_logits, #tf.nn.sampled_softmax_loss now only accept 2d [batch_size, dim] as logits input logits = array_ops.reshape(logits, [-1, num_classes]) targets = array_ops.reshape(targets, [-1, 1]) #croosents [batch_size * num_steps] crossents = softmax_loss_function(logits, targets) # croosents [batch_size, num_steps] crossents = array_ops.reshape(crossents, [batch_size, -1]) log_perps = math_ops.reduce_sum(math_ops.multiply(crossents, weights), 1) if average_across_timesteps: total_size = math_ops.reduce_sum(weights, 1) total_size += 1e-12 # Just to avoid division by 0 for all-0 weights. log_perps /= total_size return log_perps def sequence_loss(logits, targets, weights, average_across_timesteps=True, average_across_batch=True, softmax_loss_function=None, name=None): """Weighted cross-entropy loss for a sequence of logits, batch-collapsed. Args: logits: [batch_size, num_steps, num_decoder_symbols]. if softmax_loss_function is not None then here is [batch_size, num_steps, emb_dim], actually is just outputs from dynamic_rnn targets: [batch_size, num_steps] weights: [batch_size, num_steps] average_across_timesteps: If set, divide the returned cost by the total label weight. average_across_batch: If set, divide the returned cost by the batch size. softmax_loss_function: Function (inputs-batch, labels-batch) -> loss-batch to be used instead of the standard softmax (the default if this is None). name: Optional name for this operation, defaults to "sequence_loss". Returns: A scalar float Tensor: The average log-perplexity per symbol (weighted). """ with ops.name_scope(name, "sequence_loss", [logits, targets, weights]): cost = math_ops.reduce_sum( sequence_loss_by_example( logits, targets, weights, average_across_timesteps=average_across_timesteps, softmax_loss_function=softmax_loss_function)) if average_across_batch: batch_size = array_ops.shape(targets)[0] return cost / math_ops.cast(batch_size, cost.dtype) else: return cost import tensorflow as tf import melt def exact_predict_loss(logits, targets, mask, num_steps, need_softmax=True, average_across_timesteps=False, trace_probs=True, batch_size=None): """ the same as using sparse_softmax_cross_entropy_with_logits here mainly for debug, comparing experimenting purpose! logits [batch_size, num_steps, vocab_size] targets [batch_size, num_steps] mask [batch_size, num_steps] return final -logprob also record seqence of log probs hasky/jupter/tensorflow/se2seq_exact_predict_loss.ipynb """ if batch_size is None: batch_size = tf.shape(logits)[0] i = tf.constant(0, dtype=tf.int32) condition = lambda i, log_probs, lengths, log_probs_list: tf.less(i, num_steps) log_probs = tf.zeros([batch_size,], dtype=tf.float32) lengths = tf.zeros([batch_size], dtype=tf.int32) #---log_probs_list is for debug purpose, actually the whole function here is for deubg purpose log_probs_list = tf.TensorArray( dtype=tf.float32, tensor_array_name="logprobs", size=num_steps, infer_shape=False) #dtype=tf.float32, tensor_array_name="log_probs_list", size=0, dynamic_size=True, infer_shape=False) def body(i, log_probs, lengths, log_probs_list): #@TODO can we not clac softmax for mask==0 ? step_logits = logits[:, i, :] #step_probs = tf.nn.softmax(step_logits) if need_softmax: step_log_probs = tf.nn.log_softmax(step_logits) else: #step_log_probs = tf.log(step_logits) #step_log_probs = tf.maximum(step_logits, 1e-12) step_log_probs = tf.log(tf.maximum(step_logits, 1e-12)) step_targets = targets[:, i] #selected_probs = melt.dynamic_gather2d(step_probs, step_targets) #TODO is this ok? or just use tf.nn.log_softmax to replace tf.nn.softmax #selected_log_probs = tf.log(tf.maximum(selected_probs, 1e-12)) #TODO gather_nd ? #selected_log_probs = melt.dynamic_gather2d(step_log_probs, step_targets) batch_nums = tf.range(0, limit=batch_size) # shape (batch_size) step_indices = tf.stack((batch_nums, tf.to_int32(step_targets)), axis=1) # shape (batch_size, 2) selected_log_probs = tf.gather_nd(step_log_probs, step_indices) # shape (batch_size). loss on this step for each batch #if not need_softmax: # selected_log_probs = tf.log(step_log_probs) step_mask = mask[:, i] masked_log_probs = selected_log_probs * step_mask log_probs += masked_log_probs lengths += tf.to_int32(step_mask) if not trace_probs: masked_log_probs = () log_probs_list = log_probs_list.write(i, masked_log_probs) return tf.add(i, 1), tf.reshape(log_probs, [batch_size,]), tf.reshape(lengths, [batch_size,]), log_probs_list _, log_probs, lengths, log_probs_list = tf.while_loop(condition, body, [i, log_probs, lengths, log_probs_list]) log_probs_list = tf.transpose(log_probs_list.stack(), [1, 0]) tf.add_to_collection('seq2seq_logprobs', log_probs_list) loss = -log_probs if average_across_timesteps: loss /= tf.to_float(lengths) return loss # FIXME why negative loss? def sigmoid_loss(logits, targets, mask, num_steps, vocab_size, average_across_timesteps=True, batch_size=None): if batch_size is None: batch_size = tf.shape(logits)[0] i = tf.constant(0, dtype=tf.int32) condition = lambda i, sigmoid_loss, lengths: tf.less(i, num_steps) sigmoid_loss = tf.zeros([batch_size,], dtype=tf.float32) lengths = tf.zeros([batch_size], dtype=tf.int32) labels = tf.to_float(melt.nhot(targets, vocab_size)) print('labels', labels) def body(i, sigmoid_loss, lengths): step_logits = logits[:, i, :] #step_sigmoid_loss = tf.nn.sigmoid_cross_entropy_with_logits(labels=labels, logits=step_logits) step_sigmoid_loss = step_logits step_sigmoid_loss = tf.reduce_mean(step_sigmoid_loss, -1) print('step_sigmoid_loss', step_sigmoid_loss) step_mask = mask[:, i] print('step_mask', step_mask) masked_step_sigmoid_loss = step_sigmoid_loss * step_mask print('masked_step_sigmoid_loss', masked_step_sigmoid_loss) sigmoid_loss += masked_step_sigmoid_loss lengths += tf.to_int32(step_mask) return tf.add(i, 1), tf.reshape(sigmoid_loss, [batch_size,]), tf.reshape(lengths, [batch_size,]) _, sigmoid_loss, lengths = tf.while_loop(condition, body, [i, sigmoid_loss, lengths]) loss = sigmoid_loss if average_across_timesteps: loss /= tf.to_float(lengths) return loss def gen_sampled_softmax_loss_function(num_sampled, vocab_size, weights, biases, log_uniform_sample=True, is_predict=False, sample_seed=None, vocabulary=None): #@TODO move to melt def prepare_sampled_softmax_loss(num_sampled, vocab_size, emb_dim) #return output_projection, softmax_loss_function #also consider candidate sampler # Sampled softmax only makes sense if we sample less than vocabulary size. # FIMXE seems not work when using meta graph load predic cause segmentaion fault if add not is_predict #if not is_predict and (num_sampled > 0 and num_sampled < vocab_size): if num_sampled > 0 and num_sampled < vocab_size: def sampled_loss(inputs, labels): """ inputs: [batch_size * num_steps, dim] labels: [batch_size * num_steps, num_true] """ #with tf.device("/cpu:0"): #---use this since default tf.contrib.seq2seq input labels as [-1], if you use melt.seq2seq.sequence_loss do not need reshape #labels = tf.reshape(labels, [-1, 1]) if log_uniform_sample: #most likely go here sampled_values = None if is_predict: sampled_values = tf.nn.log_uniform_candidate_sampler( true_classes=labels, num_true=1, num_sampled=num_sampled, unique=True, range_max=vocab_size, seed=sample_seed) else: vocab_counts_list = [vocabulary.vocab.freq(i) for i in xrange(vocab_size)] vocab_counts_list[0] = 1 # --hack.. #vocab_counts_list = [vocabulary.vocab.freq(i) for i in xrange(NUM_RESERVED_IDS, vocab_size) #-------above is ok, do not go here #@TODO find which is better log uniform or unigram sample, what's the diff with full vocab #num_reserved_ids: Optionally some reserved IDs can be added in the range #`[0, num_reserved_ids]` by the users. One use case is that a special #unknown word token is used as ID 0. These IDs will have a sampling #probability of 0. #@TODO seems juse set num_reserved_ids to 1 to ignore pad, will we need to set to 2 to also ignore UNK? #range_max: An `int` that is `>= 1`. #The sampler will sample integers from the interval [0, range_max). ##---@FIXME setting num_reserved_ids=NUM_RESERVED_IDS will cause Nan, why... #sampled_values = tf.nn.fixed_unigram_candidate_sampler( # true_classes=labels, # num_true=1, # num_sampled=num_sampled, # unique=True, # range_max=vocab_size - NUM_RESERVED_IDS, # distortion=0.75, # num_reserved_ids=NUM_RESERVED_IDS, # unigrams=vocab_counts_list) #FIXME keyword app, now tested on basice 50w, # sample 1000 or other num will cause nan use sampled by count or not by count #flickr data is ok # IMPORTANT to find out reason, data dependent right now #seems ok if using dynamic_batch=1, but seems no speed gain... only 5 instance/s #NOTICE 50w keyword very slow with sample(1w) not speed gain #4GPU will outof mem FIXME https://github.com/tensorflow/tensorflow/pull/4270 #https://github.com/tensorflow/tensorflow/issues/4138 sampled_values = tf.nn.fixed_unigram_candidate_sampler( true_classes=labels, num_true=1, num_sampled=num_sampled, unique=True, range_max=vocab_size, distortion=0.75, num_reserved_ids=0, unigrams=vocab_counts_list) return tf.nn.sampled_softmax_loss(weights, biases, labels=labels, inputs=inputs, num_sampled=num_sampled, num_classes=vocab_size, sampled_values=sampled_values, partition_strategy="div") return sampled_loss else: return None ================================================ FILE: utils/melt/seq2seq/official/beam_search_decoder.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """A decoder that performs beam search.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import collections from tensorflow.contrib.seq2seq.python.ops import beam_search_ops from tensorflow.contrib.seq2seq.python.ops import decoder from tensorflow.python.framework import constant_op from tensorflow.python.framework import dtypes from tensorflow.python.framework import ops from tensorflow.python.framework import tensor_shape from tensorflow.python.framework import tensor_util from tensorflow.python.layers import base as layers_base from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import embedding_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import nn_ops from tensorflow.python.ops import rnn_cell_impl from tensorflow.python.ops import tensor_array_ops from tensorflow.python.util import nest __all__ = [ "BeamSearchDecoderOutput", "BeamSearchDecoderState", "BeamSearchDecoder", "FinalBeamSearchDecoderOutput", "tile_batch", ] class BeamSearchDecoderState( collections.namedtuple("BeamSearchDecoderState", ("cell_state", "log_probs", "finished", "lengths"))): pass class BeamSearchDecoderOutput( collections.namedtuple("BeamSearchDecoderOutput", ("scores", "predicted_ids", "parent_ids"))): pass class FinalBeamSearchDecoderOutput( collections.namedtuple("FinalBeamDecoderOutput", ["predicted_ids", "beam_search_decoder_output"])): """Final outputs returned by the beam search after all decoding is finished. Args: predicted_ids: The final prediction. A tensor of shape `[T, batch_size, beam_width]`. beam_search_decoder_output: An instance of `BeamSearchDecoderOutput` that describes the state of the beam search. """ pass def _tile_batch(t, multiplier): """Core single-tensor implementation of tile_batch.""" t = ops.convert_to_tensor(t, name="t") shape_t = array_ops.shape(t) if t.shape.ndims is None or t.shape.ndims < 1: raise ValueError("t must have statically known rank") tiling = [1] * (t.shape.ndims + 1) tiling[1] = multiplier tiled_static_batch_size = ( t.shape[0].value * multiplier if t.shape[0].value is not None else None) tiled = array_ops.tile(array_ops.expand_dims(t, 1), tiling) tiled = array_ops.reshape( tiled, array_ops.concat(([shape_t[0] * multiplier], shape_t[1:]), 0)) tiled.set_shape( tensor_shape.TensorShape( [tiled_static_batch_size]).concatenate(t.shape[1:])) return tiled def tile_batch(t, multiplier, name=None): """Tile the batch dimension of a (possibly nested structure of) tensor(s) t. For each tensor t in a (possibly nested structure) of tensors, this function takes a tensor t shaped `[batch_size, s0, s1, ...]` composed of minibatch entries `t[0], ..., t[batch_size - 1]` and tiles it to have a shape `[batch_size * multiplier, s0, s1, ...]` composed of minibatch entries `t[0], t[0], ..., t[1], t[1], ...` where each minibatch entry is repeated `multiplier` times. Args: t: `Tensor` shaped `[batch_size, ...]`. multiplier: Python int. name: Name scope for any created operations. Returns: A (possibly nested structure of) `Tensor` shaped `[batch_size * multiplier, ...]`. Raises: ValueError: if tensor(s) `t` do not have a statically known rank or the rank is < 1. """ flat_t = nest.flatten(t) with ops.name_scope(name, "tile_batch", flat_t + [multiplier]): return nest.map_structure(lambda t_: _tile_batch(t_, multiplier), t) def _check_maybe(t): if isinstance(t, tensor_array_ops.TensorArray): raise TypeError( "TensorArray state is not supported by BeamSearchDecoder: %s" % t.name) if t.shape.ndims is None: raise ValueError( "Expected tensor (%s) to have known rank, but ndims == None." % t) class BeamSearchDecoder(decoder.Decoder): """BeamSearch sampling decoder. **NOTE** If you are using the `BeamSearchDecoder` with a cell wrapped in `AttentionWrapper`, then you must ensure that: - The encoder output has been tiled to `beam_width` via @{tf.contrib.seq2seq.tile_batch} (NOT `tf.tile`). - The `batch_size` argument passed to the `zero_state` method of this wrapper is equal to `true_batch_size * beam_width`. - The initial state created with `zero_state` above contains a `cell_state` value containing properly tiled final state from the encoder. An example: ``` tiled_encoder_outputs = tf.contrib.seq2seq.tile_batch( encoder_outputs, multiplier=beam_width) tiled_encoder_final_state = tf.conrib.seq2seq.tile_batch( encoder_final_state, multiplier=beam_width) tiled_sequence_length = tf.contrib.seq2seq.tile_batch( sequence_length, multiplier=beam_width) attention_mechanism = MyFavoriteAttentionMechanism( num_units=attention_depth, memory=tiled_inputs, memory_sequence_length=tiled_sequence_length) attention_cell = AttentionWrapper(cell, attention_mechanism, ...) decoder_initial_state = attention_cell.zero_state( dtype, batch_size=true_batch_size * beam_width) decoder_initial_state = decoder_initial_state.clone( cell_state=tiled_encoder_final_state) ``` """ def __init__(self, cell, embedding, start_tokens, end_token, initial_state, beam_width, output_layer=None, length_penalty_weight=0.0): """Initialize the BeamSearchDecoder. Args: cell: An `RNNCell` instance. embedding: A callable that takes a vector tensor of `ids` (argmax ids), or the `params` argument for `embedding_lookup`. start_tokens: `int32` vector shaped `[batch_size]`, the start tokens. end_token: `int32` scalar, the token that marks end of decoding. initial_state: A (possibly nested tuple of...) tensors and TensorArrays. beam_width: Python integer, the number of beams. output_layer: (Optional) An instance of `tf.layers.Layer`, i.e., `tf.layers.Dense`. Optional layer to apply to the RNN output prior to storing the result or sampling. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Raises: TypeError: if `cell` is not an instance of `RNNCell`, or `output_layer` is not an instance of `tf.layers.Layer`. ValueError: If `start_tokens` is not a vector or `end_token` is not a scalar. """ if not rnn_cell_impl._like_rnncell(cell): # pylint: disable=protected-access raise TypeError("cell must be an RNNCell, received: %s" % type(cell)) if (output_layer is not None and not isinstance(output_layer, layers_base.Layer)): raise TypeError( "output_layer must be a Layer, received: %s" % type(output_layer)) self._cell = cell self._output_layer = output_layer if callable(embedding): self._embedding_fn = embedding else: self._embedding_fn = ( lambda ids: embedding_ops.embedding_lookup(embedding, ids)) self._start_tokens = ops.convert_to_tensor( start_tokens, dtype=dtypes.int32, name="start_tokens") if self._start_tokens.get_shape().ndims != 1: raise ValueError("start_tokens must be a vector") self._end_token = ops.convert_to_tensor( end_token, dtype=dtypes.int32, name="end_token") if self._end_token.get_shape().ndims != 0: raise ValueError("end_token must be a scalar") self._batch_size = array_ops.size(start_tokens) self._beam_width = beam_width self._length_penalty_weight = length_penalty_weight self._initial_cell_state = nest.map_structure( self._maybe_split_batch_beams, initial_state, self._cell.state_size) self._start_tokens = array_ops.tile( array_ops.expand_dims(self._start_tokens, 1), [1, self._beam_width]) self._start_inputs = self._embedding_fn(self._start_tokens) self._finished = array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.bool) @property def batch_size(self): return self._batch_size def _rnn_output_size(self): size = self._cell.output_size if self._output_layer is None: return size else: # To use layer's compute_output_shape, we need to convert the # RNNCell's output_size entries into shapes with an unknown # batch size. We then pass this through the layer's # compute_output_shape and read off all but the first (batch) # dimensions to get the output size of the rnn with the layer # applied to the top. output_shape_with_unknown_batch = nest.map_structure( lambda s: tensor_shape.TensorShape([None]).concatenate(s), size) layer_output_shape = self._output_layer._compute_output_shape( # pylint: disable=protected-access output_shape_with_unknown_batch) return nest.map_structure(lambda s: s[1:], layer_output_shape) @property def output_size(self): # Return the cell output and the id return BeamSearchDecoderOutput( scores=tensor_shape.TensorShape([self._beam_width]), predicted_ids=tensor_shape.TensorShape([self._beam_width]), parent_ids=tensor_shape.TensorShape([self._beam_width])) @property def output_dtype(self): # Assume the dtype of the cell is the output_size structure # containing the input_state's first component's dtype. # Return that structure and int32 (the id) dtype = nest.flatten(self._initial_cell_state)[0].dtype return BeamSearchDecoderOutput( scores=nest.map_structure(lambda _: dtype, self._rnn_output_size()), predicted_ids=dtypes.int32, parent_ids=dtypes.int32) def initialize(self, name=None): """Initialize the decoder. Args: name: Name scope for any created operations. Returns: `(finished, start_inputs, initial_state)`. """ finished, start_inputs = self._finished, self._start_inputs initial_state = BeamSearchDecoderState( cell_state=self._initial_cell_state, log_probs=array_ops.zeros( [self._batch_size, self._beam_width], dtype=nest.flatten(self._initial_cell_state)[0].dtype), finished=finished, lengths=array_ops.zeros( [self._batch_size, self._beam_width], dtype=dtypes.int64)) return (finished, start_inputs, initial_state) def finalize(self, outputs, final_state, sequence_lengths): """Finalize and return the predicted_ids. Args: outputs: An instance of BeamSearchDecoderOutput. final_state: An instance of BeamSearchDecoderState. Passed through to the output. sequence_lengths: An `int64` tensor shaped `[batch_size, beam_width]`. The sequence lengths determined for each beam during decode. Returns: outputs: An instance of FinalBeamSearchDecoderOutput where the predicted_ids are the result of calling _gather_tree. final_state: The same input instance of BeamSearchDecoderState. """ predicted_ids = beam_search_ops.gather_tree( outputs.predicted_ids, outputs.parent_ids, sequence_length=sequence_lengths) outputs = FinalBeamSearchDecoderOutput( beam_search_decoder_output=outputs, predicted_ids=predicted_ids) return outputs, final_state def _merge_batch_beams(self, t, s=None): """Merges the tensor from a batch of beams into a batch by beams. More exactly, t is a tensor of dimension [batch_size, beam_width, s]. We reshape this into [batch_size*beam_width, s] Args: t: Tensor of dimension [batch_size, beam_width, s] s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size * beam_width, s]. """ if isinstance(s, ops.Tensor): s = tensor_shape.as_shape(tensor_util.constant_value(s)) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) static_batch_size = tensor_util.constant_value(self._batch_size) batch_size_beam_width = ( None if static_batch_size is None else static_batch_size * self._beam_width) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size * self._beam_width], t_shape[2:]), 0)) reshaped_t.set_shape( (tensor_shape.TensorShape([batch_size_beam_width]).concatenate(s))) return reshaped_t def _split_batch_beams(self, t, s=None): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s]. s: (Possibly known) depth shape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: ValueError: If, after reshaping, the new tensor is not shaped `[batch_size, beam_width, s]` (assuming batch_size and beam_width are known statically). """ if isinstance(s, ops.Tensor): s = tensor_shape.TensorShape(tensor_util.constant_value(s)) else: s = tensor_shape.TensorShape(s) t_shape = array_ops.shape(t) reshaped_t = array_ops.reshape( t, array_ops.concat( ([self._batch_size, self._beam_width], t_shape[1:]), 0)) static_batch_size = tensor_util.constant_value(self._batch_size) expected_reshaped_shape = tensor_shape.TensorShape( [static_batch_size, self._beam_width]).concatenate(s) if not reshaped_t.shape.is_compatible_with(expected_reshaped_shape): raise ValueError("Unexpected behavior when reshaping between beam width " "and batch size. The reshaped tensor has shape: %s. " "We expected it to have shape " "(batch_size, beam_width, depth) == %s. Perhaps you " "forgot to create a zero_state with " "batch_size=encoder_batch_size * beam_width?" % (reshaped_t.shape, expected_reshaped_shape)) reshaped_t.set_shape(expected_reshaped_shape) return reshaped_t def _maybe_split_batch_beams(self, t, s): """Maybe splits the tensor from a batch by beams into a batch of beams. We do this so that we can use nest and not run into problems with shapes. Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: Either a reshaped version of t with dimension [batch_size, beam_width, s] if t's first dimension is of size batch_size*beam_width or t if not. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ _check_maybe(t) if t.shape.ndims >= 1: return self._split_batch_beams(t, s) else: return t def _maybe_merge_batch_beams(self, t, s): """Splits the tensor from a batch by beams into a batch of beams. More exactly, t is a tensor of dimension [batch_size*beam_width, s]. We reshape this into [batch_size, beam_width, s] Args: t: Tensor of dimension [batch_size*beam_width, s] s: Tensor, Python int, or TensorShape. Returns: A reshaped version of t with dimension [batch_size, beam_width, s]. Raises: TypeError: If t is an instance of TensorArray. ValueError: If the rank of t is not statically known. """ _check_maybe(t) if t.shape.ndims >= 2: return self._merge_batch_beams(t, s) else: return t def step(self, time, inputs, state, name=None): """Perform a decoding step. Args: time: scalar `int32` tensor. inputs: A (structure of) input tensors. state: A (structure of) state tensors and TensorArrays. name: Name scope for any created operations. Returns: `(outputs, next_state, next_inputs, finished)`. """ batch_size = self._batch_size beam_width = self._beam_width end_token = self._end_token length_penalty_weight = self._length_penalty_weight with ops.name_scope(name, "BeamSearchDecoderStep", (time, inputs, state)): cell_state = state.cell_state inputs = nest.map_structure( lambda inp: self._merge_batch_beams(inp, s=inp.shape[2:]), inputs) cell_state = nest.map_structure( self._maybe_merge_batch_beams, cell_state, self._cell.state_size) cell_outputs, next_cell_state = self._cell(inputs, cell_state) cell_outputs = nest.map_structure( lambda out: self._split_batch_beams(out, out.shape[1:]), cell_outputs) next_cell_state = nest.map_structure( self._maybe_split_batch_beams, next_cell_state, self._cell.state_size) if self._output_layer is not None: cell_outputs = self._output_layer(cell_outputs) beam_search_output, beam_search_state = _beam_search_step( time=time, logits=cell_outputs, next_cell_state=next_cell_state, beam_state=state, batch_size=batch_size, beam_width=beam_width, end_token=end_token, length_penalty_weight=length_penalty_weight) finished = beam_search_state.finished sample_ids = beam_search_output.predicted_ids next_inputs = control_flow_ops.cond( math_ops.reduce_all(finished), lambda: self._start_inputs, lambda: self._embedding_fn(sample_ids)) return (beam_search_output, beam_search_state, next_inputs, finished) def _beam_search_step(time, logits, next_cell_state, beam_state, batch_size, beam_width, end_token, length_penalty_weight): """Performs a single step of Beam Search Decoding. Args: time: Beam search time step, should start at 0. At time 0 we assume that all beams are equal and consider only the first beam for continuations. logits: Logits at the current time step. A tensor of shape `[batch_size, beam_width, vocab_size]` next_cell_state: The next state from the cell, e.g. an instance of AttentionWrapperState if the cell is attentional. beam_state: Current state of the beam search. An instance of `BeamSearchDecoderState`. batch_size: The batch size for this input. beam_width: Python int. The size of the beams. end_token: The int32 end token. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: A new beam state. """ static_batch_size = tensor_util.constant_value(batch_size) # Calculate the current lengths of the predictions prediction_lengths = beam_state.lengths previously_finished = beam_state.finished # Calculate the total log probs for the new hypotheses # Final Shape: [batch_size, beam_width, vocab_size] step_log_probs = nn_ops.log_softmax(logits) step_log_probs = _mask_probs(step_log_probs, end_token, previously_finished) total_probs = array_ops.expand_dims(beam_state.log_probs, 2) + step_log_probs # Calculate the continuation lengths by adding to all continuing beams. vocab_size = logits.shape[-1].value or array_ops.shape(logits)[-1] lengths_to_add = array_ops.one_hot( indices=array_ops.tile( array_ops.reshape(end_token, [1, 1]), [batch_size, beam_width]), depth=vocab_size, on_value=constant_op.constant(0, dtype=dtypes.int64), off_value=constant_op.constant(1, dtype=dtypes.int64), dtype=dtypes.int64) add_mask = (1 - math_ops.to_int64(previously_finished)) lengths_to_add = array_ops.expand_dims(add_mask, 2) * lengths_to_add new_prediction_lengths = ( lengths_to_add + array_ops.expand_dims(prediction_lengths, 2)) # Calculate the scores for each beam scores = _get_scores( log_probs=total_probs, sequence_lengths=new_prediction_lengths, length_penalty_weight=length_penalty_weight) time = ops.convert_to_tensor(time, name="time") # During the first time step we only consider the initial beam scores_shape = array_ops.shape(scores) scores_flat = control_flow_ops.cond( time > 0, lambda: array_ops.reshape(scores, [batch_size, -1]), lambda: scores[:, 0]) num_available_beam = control_flow_ops.cond( time > 0, lambda: math_ops.reduce_prod(scores_shape[1:]), lambda: math_ops.reduce_prod(scores_shape[2:])) # Pick the next beams according to the specified successors function next_beam_size = math_ops.minimum( ops.convert_to_tensor(beam_width, dtype=dtypes.int32, name="beam_width"), num_available_beam) next_beam_scores, word_indices = nn_ops.top_k(scores_flat, k=next_beam_size) next_beam_scores.set_shape([static_batch_size, beam_width]) word_indices.set_shape([static_batch_size, beam_width]) # Pick out the probs, beam_ids, and states according to the chosen predictions next_beam_probs = _tensor_gather_helper( gather_indices=word_indices, gather_from=total_probs, batch_size=batch_size, range_size=beam_width * vocab_size, gather_shape=[-1], name="next_beam_probs") # Note: just doing the following # math_ops.to_int32(word_indices % vocab_size, # name="next_beam_word_ids") # would be a lot cleaner but for reasons unclear, that hides the results of # the op which prevents capturing it with tfdbg debug ops. raw_next_word_ids = math_ops.mod(word_indices, vocab_size, name="next_beam_word_ids") next_word_ids = math_ops.to_int32(raw_next_word_ids) next_beam_ids = math_ops.to_int32(word_indices / vocab_size, name="next_beam_parent_ids") # Append new ids to current predictions previously_finished = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=previously_finished, batch_size=batch_size, range_size=beam_width, gather_shape=[-1]) next_finished = math_ops.logical_or(previously_finished, math_ops.equal(next_word_ids, end_token), name="next_beam_finished") # Calculate the length of the next predictions. # 1. Finished beams remain unchanged # 2. Beams that are now finished (EOS predicted) remain unchanged # 3. Beams that are not yet finished have their length increased by 1 lengths_to_add = math_ops.to_int64( math_ops.not_equal(next_word_ids, end_token)) lengths_to_add = (1 - math_ops.to_int64(next_finished)) * lengths_to_add next_prediction_len = _tensor_gather_helper( gather_indices=next_beam_ids, gather_from=beam_state.lengths, batch_size=batch_size, range_size=beam_width, gather_shape=[-1]) next_prediction_len += lengths_to_add # Pick out the cell_states according to the next_beam_ids. We use a # different gather_shape here because the cell_state tensors, i.e. # the tensors that would be gathered from, all have dimension # greater than two and we need to preserve those dimensions. # pylint: disable=g-long-lambda next_cell_state = nest.map_structure( lambda gather_from: _maybe_tensor_gather_helper( gather_indices=next_beam_ids, gather_from=gather_from, batch_size=batch_size, range_size=beam_width, gather_shape=[batch_size * beam_width, -1]), next_cell_state) # pylint: enable=g-long-lambda next_state = BeamSearchDecoderState( cell_state=next_cell_state, log_probs=next_beam_probs, lengths=next_prediction_len, finished=next_finished) output = BeamSearchDecoderOutput( scores=next_beam_scores, predicted_ids=next_word_ids, parent_ids=next_beam_ids) return output, next_state def _get_scores(log_probs, sequence_lengths, length_penalty_weight): """Calculates scores for beam search hypotheses. Args: log_probs: The log probabilities with shape `[batch_size, beam_width, vocab_size]`. sequence_lengths: The array of sequence lengths. length_penalty_weight: Float weight to penalize length. Disabled with 0.0. Returns: The scores normalized by the length_penalty. """ length_penality_ = _length_penalty( sequence_lengths=sequence_lengths, penalty_factor=length_penalty_weight) return log_probs / length_penality_ def _length_penalty(sequence_lengths, penalty_factor): """Calculates the length penalty. See https://arxiv.org/abs/1609.08144. Args: sequence_lengths: The sequence length of all hypotheses, a tensor of shape [beam_size, vocab_size]. penalty_factor: A scalar that weights the length penalty. Returns: The length penalty factor, a tensor fo shape [beam_size]. """ penalty_factor = ops.convert_to_tensor(penalty_factor, name="penalty_factor") penalty_factor.set_shape(()) # penalty should be a scalar. static_penalty = tensor_util.constant_value(penalty_factor) if static_penalty is not None and static_penalty == 0: return 1.0 return math_ops.div((5. + math_ops.to_float(sequence_lengths)) **penalty_factor, (5. + 1.)**penalty_factor) def _mask_probs(probs, eos_token, finished): """Masks log probabilities. The result is that finished beams allocate all probability mass to eos and unfinished beams remain unchanged. Args: probs: Log probabiltiies of shape `[batch_size, beam_width, vocab_size]` eos_token: An int32 id corresponding to the EOS token to allocate probability to. finished: A boolean tensor of shape `[batch_size, beam_width]` that specifies which elements in the beam are finished already. Returns: A tensor of shape `[batch_size, beam_width, vocab_size]`, where unfinished beams stay unchanged and finished beams are replaced with a tensor with all probability on the EOS token. """ vocab_size = array_ops.shape(probs)[2] finished_mask = array_ops.expand_dims( math_ops.to_float(1. - math_ops.to_float(finished)), 2) # These examples are not finished and we leave them non_finished_examples = finished_mask * probs # All finished examples are replaced with a vector that has all # probability on EOS finished_row = array_ops.one_hot( eos_token, vocab_size, dtype=probs.dtype, on_value=0., off_value=probs.dtype.min) finished_examples = (1. - finished_mask) * finished_row return finished_examples + non_finished_examples def _maybe_tensor_gather_helper(gather_indices, gather_from, batch_size, range_size, gather_shape): """Maybe applies _tensor_gather_helper. This applies _tensor_gather_helper when the gather_from dims is at least as big as the length of gather_shape. This is used in conjunction with nest so that we don't apply _tensor_gather_helper to inapplicable values like scalars. Args: gather_indices: The tensor indices that we use to gather. gather_from: The tensor that we are gathering from. batch_size: The batch size. range_size: The number of values in each range. Likely equal to beam_width. gather_shape: What we should reshape gather_from to in order to preserve the correct values. An example is when gather_from is the attention from an AttentionWrapperState with shape [batch_size, beam_width, attention_size]. There, we want to preserve the attention_size elements, so gather_shape is [batch_size * beam_width, -1]. Then, upon reshape, we still have the attention_size as desired. Returns: output: Gathered tensor of shape tf.shape(gather_from)[:1+len(gather_shape)] or the original tensor if its dimensions are too small. """ _check_maybe(gather_from) if gather_from.shape.ndims >= len(gather_shape): return _tensor_gather_helper( gather_indices=gather_indices, gather_from=gather_from, batch_size=batch_size, range_size=range_size, gather_shape=gather_shape) else: return gather_from def _tensor_gather_helper(gather_indices, gather_from, batch_size, range_size, gather_shape, name=None): """Helper for gathering the right indices from the tensor. This works by reshaping gather_from to gather_shape (e.g. [-1]) and then gathering from that according to the gather_indices, which are offset by the right amounts in order to preserve the batch order. Args: gather_indices: The tensor indices that we use to gather. gather_from: The tensor that we are gathering from. batch_size: The input batch size. range_size: The number of values in each range. Likely equal to beam_width. gather_shape: What we should reshape gather_from to in order to preserve the correct values. An example is when gather_from is the attention from an AttentionWrapperState with shape [batch_size, beam_width, attention_size]. There, we want to preserve the attention_size elements, so gather_shape is [batch_size * beam_width, -1]. Then, upon reshape, we still have the attention_size as desired. name: The tensor name for set of operations. By default this is 'tensor_gather_helper'. The final output is named 'output'. Returns: output: Gathered tensor of shape tf.shape(gather_from)[:1+len(gather_shape)] """ with ops.name_scope(name, "tensor_gather_helper"): range_ = array_ops.expand_dims(math_ops.range(batch_size) * range_size, 1) gather_indices = array_ops.reshape(gather_indices + range_, [-1]) output = array_ops.gather( array_ops.reshape(gather_from, gather_shape), gather_indices) final_shape = array_ops.shape(gather_from)[:1 + len(gather_shape)] static_batch_size = tensor_util.constant_value(batch_size) final_static_shape = (tensor_shape.TensorShape([static_batch_size]) .concatenate( gather_from.shape[1:1 + len(gather_shape)])) output = array_ops.reshape(output, final_shape, name="output") output.set_shape(final_static_shape) return output ================================================ FILE: utils/melt/seq2seq/seq2seq.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Seq2seq layer operations for use in neural networks. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.contrib import layers from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import rnn from tensorflow.python.ops import tensor_array_ops from tensorflow.python.ops import variable_scope as vs import tensorflow as tf __all__ = ["dynamic_rnn_decoder"] def dynamic_rnn_decoder(cell, decoder_fn, inputs=None, sequence_length=None, parallel_iterations=None, swap_memory=False, time_major=False, scope=None, name=None): """ Dynamic RNN decoder for a sequence-to-sequence model specified by RNNCell and decoder function. The `dynamic_rnn_decoder` is similar to the `tf.python.ops.rnn.dynamic_rnn` as the decoder does not make any assumptions of sequence length and batch size of the input. The `dynamic_rnn_decoder` has two modes: training or inference and expects the user to create seperate functions for each. Under both training and inference, both `cell` and `decoder_fn` are expected, where `cell` performs computation at every timestep using `raw_rnn`, and `decoder_fn` allows modeling of early stopping, output, state, and next input and context. When training the user is expected to supply `inputs`. At every time step a slice of the supplied input is fed to the `decoder_fn`, which modifies and returns the input for the next time step. `sequence_length` is needed at training time, i.e., when `inputs` is not None, for dynamic unrolling. At test time, when `inputs` is None, `sequence_length` is not needed. Under inference `inputs` is expected to be `None` and the input is inferred solely from the `decoder_fn`. Args: cell: An instance of RNNCell. decoder_fn: A function that takes time, cell state, cell input, cell output and context state. It returns a early stopping vector, cell state, next input, cell output and context state. Examples of decoder_fn can be found in the decoder_fn.py folder. inputs: The inputs for decoding (embedded format). If `time_major == False` (default), this must be a `Tensor` of shape: `[batch_size, max_time, ...]`. If `time_major == True`, this must be a `Tensor` of shape: `[max_time, batch_size, ...]`. The input to `cell` at each time step will be a `Tensor` with dimensions `[batch_size, ...]`. sequence_length: (optional) An int32/int64 vector sized `[batch_size]`. if `inputs` is not None and `sequence_length` is None it is inferred from the `inputs` as the maximal possible sequence length. parallel_iterations: (Default: 32). The number of iterations to run in parallel. Those operations which do not have any temporal dependency and can be run in parallel, will be. This parameter trades off time for space. Values >> 1 use more memory but take less time, while smaller values use less memory but computations take longer. swap_memory: Transparently swap the tensors produced in forward inference but needed for back prop from GPU to CPU. This allows training RNNs which would typically not fit on a single GPU, with very minimal (or no) performance penalty. time_major: The shape format of the `inputs` and `outputs` Tensors. If true, these `Tensors` must be shaped `[max_time, batch_size, depth]`. If false, these `Tensors` must be shaped `[batch_size, max_time, depth]`. Using `time_major = True` is a bit more efficient because it avoids transposes at the beginning and end of the RNN calculation. However, most TensorFlow data is batch-major, so by default this function accepts input and emits output in batch-major form. scope: VariableScope for the `raw_rnn`; defaults to None. name: NameScope for the decoder; defaults to "dynamic_rnn_decoder" Returns: A tuple (outputs, final_state, final_context_state) where: outputs: the RNN output 'Tensor'. If time_major == False (default), this will be a `Tensor` shaped: `[batch_size, max_time, cell.output_size]`. If time_major == True, this will be a `Tensor` shaped: `[max_time, batch_size, cell.output_size]`. final_state: The final state and will be shaped `[batch_size, cell.state_size]`. final_context_state: The context state returned by the final call to decoder_fn. This is useful if the context state maintains internal data which is required after the graph is run. For example, one way to diversify the inference output is to use a stochastic decoder_fn, in which case one would want to store the decoded outputs, not just the RNN outputs. This can be done by maintaining a TensorArray in context_state and storing the decoded output of each iteration therein. Raises: ValueError: if inputs is not None and has less than three dimensions. """ with ops.name_scope(name, "dynamic_rnn_decoder", [cell, decoder_fn, inputs, sequence_length, parallel_iterations, swap_memory, time_major, scope]): if inputs is not None: # Convert to tensor inputs = ops.convert_to_tensor(inputs) # Test input dimensions if inputs.get_shape().ndims is not None and ( inputs.get_shape().ndims < 2): raise ValueError("Inputs must have at least two dimensions") # Setup of RNN (dimensions, sizes, length, initial state, dtype) if not time_major: # [batch, seq, features] -> [seq, batch, features] inputs = array_ops.transpose(inputs, perm=[1, 0, 2]) dtype = inputs.dtype # Get data input information input_depth = int(inputs.get_shape()[2]) batch_depth = inputs.get_shape()[1].value max_time = inputs.get_shape()[0].value if max_time is None: max_time = array_ops.shape(inputs)[0] # Setup decoder inputs as TensorArray inputs_ta = tensor_array_ops.TensorArray(dtype, size=max_time) inputs_ta = inputs_ta.unstack(inputs) def loop_fn(time, cell_output, cell_state, loop_state): if cell_state is None: # first call, before while loop (in raw_rnn) if cell_output is not None: raise ValueError("Expected cell_output to be None when cell_state " "is None, but saw: %s" % cell_output) if loop_state is not None: raise ValueError("Expected loop_state to be None when cell_state " "is None, but saw: %s" % loop_state) context_state = None else: # subsequent calls, inside while loop, after cell excution if isinstance(loop_state, tuple): (done, context_state) = loop_state else: done = loop_state context_state = None # call decoder function if inputs is not None: # training # get next_cell_input if cell_state is None: next_cell_input = inputs_ta.read(0) else: if batch_depth is not None: batch_size = batch_depth else: batch_size = array_ops.shape(done)[0] next_cell_input = control_flow_ops.cond( math_ops.equal(time, max_time), lambda: array_ops.zeros([batch_size, input_depth], dtype=dtype), lambda: inputs_ta.read(time)) (next_done, next_cell_state, next_cell_input, emit_output, next_context_state) = decoder_fn(time, cell_state, next_cell_input, cell_output, context_state) else: # inference # next_cell_input is obtained through decoder_fn (next_done, next_cell_state, next_cell_input, emit_output, next_context_state) = decoder_fn(time, cell_state, None, cell_output, context_state) # check if we are done if next_done is None: # training next_done = time >= sequence_length # build next_loop_state if next_context_state is None: next_loop_state = next_done else: next_loop_state = (next_done, next_context_state) return (next_done, next_cell_input, next_cell_state, emit_output, next_loop_state) # Run raw_rnn function outputs_ta, final_state, final_loop_state = rnn.raw_rnn( cell, loop_fn, parallel_iterations=parallel_iterations, swap_memory=swap_memory, scope=scope) outputs = outputs_ta.stack() # Get final context_state, if generated by user if isinstance(final_loop_state, tuple): final_context_state = final_loop_state[1] else: final_context_state = None if not time_major: # [seq, batch, features] -> [batch, seq, features] outputs = array_ops.transpose(outputs, perm=[1, 0, 2]) return outputs, final_state, final_context_state ================================================ FILE: utils/melt/setup.py ================================================ import os import setuptools from setuptools import setup __version__ = '0.2.0' setup(name='melt', version=__version__, packages=setuptools.find_packages()) ================================================ FILE: utils/melt/slim2/__init__.py ================================================ import melt.slim2.layers from melt.slim2.layers import * #import melt.slim.base_nets_factory #import melt.slim.preprocessing_factory ================================================ FILE: utils/melt/slim2/base_nets_factory.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Contains a factory for building various models.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import functools import tensorflow as tf from nets import alexnet from nets import cifarnet from nets import inception from nets import lenet from nets import mobilenet_v1 from nets import overfeat from nets import resnet_v1 from nets import resnet_v2 from nets import vgg slim = tf.contrib.slim base_networks_map = { 'inception_v1': inception.inception_v1_base, 'inception_v2': inception.inception_v2_base, 'inception_v3': inception.inception_v3_base, 'inception_v4': inception.inception_v4_base, 'inception_resnet_v2': inception.inception_resnet_v2_base, } arg_scopes_map = {'alexnet_v2': alexnet.alexnet_v2_arg_scope, 'cifarnet': cifarnet.cifarnet_arg_scope, 'overfeat': overfeat.overfeat_arg_scope, 'vgg_a': vgg.vgg_arg_scope, 'vgg_16': vgg.vgg_arg_scope, 'vgg_19': vgg.vgg_arg_scope, 'inception_v1': inception.inception_v3_arg_scope, 'inception_v2': inception.inception_v3_arg_scope, 'inception_v3': inception.inception_v3_arg_scope, 'inception_v4': inception.inception_v4_arg_scope, 'inception_resnet_v2': inception.inception_resnet_v2_arg_scope, 'lenet': lenet.lenet_arg_scope, 'resnet_v1_50': resnet_v1.resnet_arg_scope, 'resnet_v1_101': resnet_v1.resnet_arg_scope, 'resnet_v1_152': resnet_v1.resnet_arg_scope, 'resnet_v1_200': resnet_v1.resnet_arg_scope, 'resnet_v2_50': resnet_v2.resnet_arg_scope, 'resnet_v2_101': resnet_v2.resnet_arg_scope, 'resnet_v2_152': resnet_v2.resnet_arg_scope, 'resnet_v2_200': resnet_v2.resnet_arg_scope, 'mobilenet_v1': mobilenet_v1.mobilenet_v1_arg_scope, 'mobilenet_v1_075': mobilenet_v1.mobilenet_v1_arg_scope, 'mobilenet_v1_050': mobilenet_v1.mobilenet_v1_arg_scope, 'mobilenet_v1_025': mobilenet_v1.mobilenet_v1_arg_scope, } def get_base_network_fn(name, weight_decay=0.0): """Returns a network_fn such as `logits, end_points = network_fn(images)`. Args: name: The name of the network. weight_decay: The l2 coefficient for the model weights. Returns: base_network_fn: A function that applies the model to a batch of images. It has the following signature: net, end_points = network_fn(images) Raises: ValueError: If network `name` is not recognized. """ if name not in base_networks_map: #raise ValueError('Name of network unknown %s' % name) return None func = base_networks_map[name] @functools.wraps(func) def base_network_fn(images): arg_scope = arg_scopes_map[name](weight_decay=weight_decay) with slim.arg_scope(arg_scope): return func(images) if hasattr(func, 'default_image_size'): base_network_fn.default_image_size = func.default_image_size return base_network_fn ================================================ FILE: utils/melt/slim2/layers.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file layers.py # \author chenghuige # \date 2016-08-19 23:22:44.032101 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import melt from tensorflow.contrib.layers.python.layers import utils from tensorflow.contrib.layers.python.layers import initializers from tensorflow.python.ops import init_ops import tensorflow.contrib.slim as slim def mlp(inputs, dims, activation_fn=tf.nn.relu, dropout=None, training=False, normalizer_fn=None, normalizer_params=None, weights_initializer=initializers.xavier_initializer(), weights_regularizer=None, biases_initializer=init_ops.zeros_initializer, biases_regularizer=None, reuse=None, variables_collections=None, outputs_collections=None, trainable=True, scope=None): with tf.variable_scope(scope, 'mlp', [inputs], reuse=reuse): for i in xrange(len(dims) -1): inputs = slim.fully_connected(inputs, dims[i], activation_fn=activation_fn, weights_initializer=weights_initializer, biases_initializer=biases_initializer, reuse=reuse, scope='fc_%d'%i) if dropout and dropout > 0.: inputs = tf.layers.dropout(inputs, dropout, training=training) return slim.linear(inputs, dims[-1], weights_initializer=weights_initializer, biases_initializer=biases_initializer, reuse=reuse, scope='linear') def fully_connected(inputs, dims, activation_fn=tf.nn.relu, dropout=None, training=False, normalizer_fn=None, normalizer_params=None, weights_initializer=initializers.xavier_initializer(), weights_regularizer=None, biases_initializer=init_ops.zeros_initializer, biases_regularizer=None, reuse=None, variables_collections=None, outputs_collections=None, trainable=True, scope=None): with tf.variable_scope(scope, 'fully_connected', [inputs], reuse=reuse): for i in range(len(dims)): inputs = slim.fully_connected(inputs, dims[i], activation_fn=activation_fn, weights_initializer=weights_initializer, biases_initializer=biases_initializer, reuse=reuse, scope='fc_%d'%i) if dropout and dropout > 0.: inputs = tf.layers.dropout(inputs, dropout, training=training) return inputs ================================================ FILE: utils/melt/slim2/preprocessing_factory.py ================================================ # Copyright 2016 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Contains a factory for building various models.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from preprocessing import cifarnet_preprocessing from preprocessing import inception_preprocessing from preprocessing import lenet_preprocessing from preprocessing import vgg_preprocessing slim = tf.contrib.slim # def get_preprocessing(name, is_training=False): # """Returns preprocessing_fn(image, height, width, **kwargs). # Args: # name: The name of the preprocessing function. # is_training: `True` if the model is being used for training and `False` # otherwise. # Returns: # preprocessing_fn: A function that preprocessing a single image (pre-batch). # It has the following signature: # image = preprocessing_fn(image, output_height, output_width, ...). # Raises: # ValueError: If Preprocessing `name` is not recognized. # """ # preprocessing_fn_map = { # 'cifarnet': cifarnet_preprocessing, # 'inception': inception_preprocessing, # 'inception_v1': inception_preprocessing, # 'inception_v2': inception_preprocessing, # 'inception_v3': inception_preprocessing, # 'inception_v4': inception_preprocessing, # 'inception_resnet_v2': inception_preprocessing, # 'lenet': lenet_preprocessing, # 'mobilenet_v1': inception_preprocessing, # 'resnet_v1_50': vgg_preprocessing, # 'resnet_v1_101': vgg_preprocessing, # 'resnet_v1_152': vgg_preprocessing, # 'resnet_v1_200': vgg_preprocessing, # 'resnet_v2_50': vgg_preprocessing, # 'resnet_v2_101': vgg_preprocessing, # 'resnet_v2_152': vgg_preprocessing, # 'resnet_v2_200': vgg_preprocessing, # 'vgg': vgg_preprocessing, # 'vgg_a': vgg_preprocessing, # 'vgg_16': vgg_preprocessing, # 'vgg_19': vgg_preprocessing, # } # if name not in preprocessing_fn_map: # raise ValueError('Preprocessing name [%s] was not recognized' % name) # def preprocessing_fn(image, output_height, output_width, **kwargs): # return preprocessing_fn_map[name].preprocess_image( # image, output_height, output_width, is_training=is_training, **kwargs) return preprocessing_fn ================================================ FILE: utils/melt/tfrecords/__init__.py ================================================ #deprecated use decode_then_shuffle and shuffle_then_decode import melt.tfrecords.read import melt.tfrecords.libsvm_decode import melt.tfrecords.decode_then_shuffle import melt.tfrecords.shuffle_then_decode import melt.tfrecords.dataset_decode #import melt.tfrecords.dataset_decode as decode import melt.tfrecords.write from melt.tfrecords.write import * from melt.tfrecords.dataset import Dataset ================================================ FILE: utils/melt/tfrecords/dataset.py ================================================ # Copyright 2017 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """CIFAR-10 data set. See http://www.cs.toronto.edu/~kriz/cifar.html. """ import os import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import gezi import melt logging = melt.logging # NOTICE if batc_parse, first batch then map.. you have faster speed but each batch is the same size like 256 even for the last batch with drop remind=False # have tested textlinedataset behavior like above TODO check tfrecord class Dataset(object): def __init__(self, subset=None, batch_size=None, Type=None, batch_parse=False, hvd_shard=True): self.subset = subset self.filter_fn = None self.pos_filter_fn = None self.neg_filter_fn = None self.count_fn = None self.Type = Type self.batch_parse = batch_parse self.batch_size = batch_size or FLAGS.batch_size self.hvd_shard = hvd_shard def get_filenames(self, subset=None): sbuset = subset or self.subset try: if subset in ['train', 'valid', 'test']: if subset == 'train': return gezi.list_files(FLAGS.train_input) elif subset == 'valid': return gezi.list_files(FLAGS.valid_input) elif subset == 'test': return gezi.list_files(FLAGS.test_input) else: raise ValueError('Invalid data subset "%s"' % subset) except Exception: return None def parser(self, example): raise NotImplementedError def adjust(self, result): return result def make_batch(self, batch_size=None, filenames=None, subset=None, initializable=False, repeat=None, return_iterator=True, hvd_shard=None, simple_parse=False): """Read the images and labels from 'filenames'.""" #with tf.device('/cpu:0'): subset = subset or self.subset hvd_shard = hvd_shard if hvd_shard is not None else self.hvd_shard batch_size = batch_size or self.batch_size self.batch_size = batch_size filenames = filenames or self.get_filenames(subset) logging.info(subset, 'num files', len(filenames)) assert filenames, subset min_queue_examples = 20000 allow_smaller_final_batch = True if repeat is None: # if tf.executing_eagerly(): # repeat = False # if True will not consider epoch stop using for... loop forever for item in dataset.. # else: # # for eval in num_gpus > 1 then set repeat = True so final batch with full batch # # TODO num_gpus = melt.num_gpus() if not 'OMPI_COMM_WORLD_RANK' in os.environ else 1 if subset == 'train' or num_gpus > 1: repeat = True else: repeat = False if tf.executing_eagerly() and num_gpus == 1: # let tf eager similary to pytorch repeat = False if subset == 'train': shuffle_files=True fix_sequence = False # if self.batch_parse: # allow_smaller_final_batch = False else: shuffle_files = False fix_sequence = True # TODO try horovod metric evaluate using multiple gpu balance_pos_neg=False if self.pos_filter_fn and self.neg_filter_fn: balance_pos_neg = True logging.info('-----------dataset repeat', repeat) logging.info('-----------dataset batch_parse', self.batch_parse) logging.info('-----------dataset allow final small batch', allow_smaller_final_batch) # for bow using cpu 69 insts/s using gpu 54 inst/s with tf.device('/cpu:0'): result = melt.dataset_decode.inputs( filenames, decode_fn=self.parse, batch_size=batch_size, num_threads=FLAGS.num_threads, shuffle_files=shuffle_files, fix_sequence=fix_sequence, buffer_size=min_queue_examples + 3 * batch_size if not FLAGS.buffer_size else FLAGS.buffer_size, initializable=initializable, repeat=repeat, allow_smaller_final_batch=allow_smaller_final_batch, bucket_boundaries=FLAGS.buckets, bucket_batch_sizes=FLAGS.batch_sizes, length_index=FLAGS.length_index, length_key=FLAGS.length_key, seed=FLAGS.seed, return_iterator=return_iterator, filter_fn=self.filter_fn if subset == 'train' else None, balance_pos_neg=balance_pos_neg, pos_filter_fn=self.pos_filter_fn if subset == 'train' else None, neg_filter_fn=self.neg_filter_fn if subset == 'train' else None, count_fn=self.count_fn if subset == 'train' else None, name=subset, Dataset=self.Type, batch_parse=self.batch_parse, hvd_shard=hvd_shard, training=subset == 'train', simple_parse=simple_parse) return self.adjust(result) @staticmethod def num_examples_per_epoch(subset, dir=None): default_value = None subset = subset or self.subset if subset == 'train': file = (dir or gezi.dirname(FLAGS.train_input.split(',')[0])) + '/num_records.txt' return gezi.read_int_from(file, default_value) elif subset == 'valid': file = (dir or gezi.dirname(FLAGS.valid_input)) + '/num_records.txt' return gezi.read_int_from(file, default_value) elif subset == 'test': file = (dir or gezi.dirname(FLAGS.test_input)) + '/num_records.txt' return gezi.read_int_from(file, default_value) else: raise ValueError('Invalid data subset "%s"' % subset) ================================================ FILE: utils/melt/tfrecords/dataset_decode.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file read_sparse.py # \author chenghuige # \date 2016-08-15 20:13:06.751843 # \Description @TODO https://github.com/tensorflow/tensorflow/tree/r0.10/tensorflow/contrib/slim/python/slim/data/ # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import gezi import melt logging = melt.logging import sys import os import numpy as np import inspect # TODO # #https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/data_reader.py def padded_batch(d, batch_size, padded_shapes=None): padded_shapes = padded_shapes or dict( [(name, [None] * len(shape)) for name, shape in d.output_shapes.items()]) return d.padded_batch(batch_size, padded_shapes) def inputs(files, decode_fn, batch_size=64, num_epochs = None, num_threads=None, buffer_size = 15000, #change from 1000 to 15000 dynamic_pad=True, shuffle_files=True, batch_join=True, shuffle_batch=True, min_after_dequeue=None, seed=None, enqueue_many=False, fix_random=False, no_random=False, fix_sequence=False, allow_smaller_final_batch=True, num_prefetch_batches=None, bucket_boundaries=None, length_index=None, length_key=None, length_fn=None, bucket_batch_sizes=None, repeat=True, initializable=False, filter_fn=None, balance_pos_neg=False, pos_filter_fn=None, neg_filter_fn=None, count_fn=None, return_iterator=False, Dataset=None, batch_parse=False, #by default will be line parse hvd_shard=True, shard_by_files=False, training=True, simple_parse=False, repeat_then_shuffle=False, name='input'): """Reads input data num_epochs times. for sparse input here will do: 1. read serialized_example 2. shuffle serialized_examples 3. decdoe batch_serialized_examples notice read_sparse.inputs and also be used for dense inputs,but if you only need to decode part from serialized_example, then read.inputs will be better, less to put to suffle #--------decode example, can refer to libsvm-decode.py # def decode(batch_serialized_examples): # features = tf.parse_example( # batch_serialized_examples, # features={ # 'label' : tf.FixedLenFeature([], tf.int64), # 'index' : tf.VarLenFeature(tf.int64), # 'value' : tf.VarLenFeature(tf.float32), # }) # label = features['label'] # index = features['index'] # value = features['value'] # return label, index, value #string_input_reducer will shuffle files #shuffle will read file by file and shuffle withn file(in shuffle queue) #shuffle_batch_join will read multiple files and shuffle in shuffle queue(from many files) To get fixed sequence shuffle=False so by this way the sequence is as your data input unchange or shuffle=True seed=1024 #set batch_join=False by this way you have fixed random, so get same result NOTICE, shuffle=True,seed=1024,batch_join=True will not get same result shuffle=False,seed=1024,batch_join=True also, so batch_join seems seed only control inqueue random, can not get fixed result for no random -> fixed result set shuffle=False wihch will force batch_join=False then use batch for fixed random -> shuffle=True, seed set or fix_random=True read-records.py show above ok, but train-evaluate.py show not, only shuffle=False can get fixed result.. @FIXME strange for train-evaluate.py it looks you can set shuffle in string_input_producer True, but then must use batch, batch_join and shuffle_batch join all not fixed even with seed set, may be due to trainset two inputs read ? for read-records.py batch_join will be fixed, shuffle_batch_join not defualt parmas will give max random... Args: decode: user defined decode min_after_dequeue: set to >2w for production train, suggesed will be 0.4 * num_instances, but also NOTICE do not exceed mem #--default parmas will make most randomness shuffle_files: wehter shuffle file shuffle_batch: batch or shuffle_batch batch_join: wether to use multiple reader or use one reader mutlitple thread fix_random: if True make at most random which can fix random result allow_smaller_final_batch: set True usefull if you want verify on small d great article http://d0evi1.com/tensorflow/ds_performance/ https://www.tensorflow.org/versions/master/performance/ds_performance """ use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: if FLAGS.torch: import horovod.torch as hvd else: import horovod.tensorflow as hvd def shard(d): return d.shard(hvd.size(), hvd.rank()) # Choose to use cpu outside input function like in d.py #with tf.device('/cpu:0'): if isinstance(files, str): files = gezi.list_files(files) assert len(files) > 0 if use_horovod and not hvd_shard and training: assert len(files) % hvd.size() == 0, '{} {} {}'.format(len(files), files, hvd.size()) files_ = [] for i in range(len(files)): if i % hvd.size() == hvd.rank(): files_.append(files[i]) files = files_ print('----------train-files', files) #exit(0) if not num_threads: try: import multiprocessing #num_threads = int(multiprocessing.cpu_count() * 0.6) num_threads = multiprocessing.cpu_count() logging.info('num_threads as multiprocessing.cpu_count', num_threads) except Exception: num_threads = 12 logging.info('num_threads set by default', num_threads) #num_threads = 12 if 'batch_size' in inspect.getargspec(decode_fn).args: decode_fn_ = decode_fn def decode_function(example): return decode_fn_(example, batch_size) decode_fn = decode_function if simple_parse and training: # for multiple gpu horovod run seem this much better, might due to repeat then shuffle better TODO d = Dataset(files) if use_horovod and hvd_shard: d = shard(d) d = d.repeat(num_epochs).shuffle(batch_size * 1024).batch(batch_size).map(decode_fn, num_parallel_calls=num_threads).prefetch(9) return d.make_one_shot_iterator() if not min_after_dequeue: min_after_dequeue = melt.tfrecords.read.MIN_AFTER_QUEUE if not num_epochs: num_epochs = None if fix_random: if seed is None: seed = 1024 shuffle_files = True batch_join = False #check can be True ? shuffle_batch = True #num_threads = 1 if fix_sequence: no_random = True allow_smaller_final_batch = True #num_threads = 1 if no_random: shuffle_files = False batch_join = False shuffle_batch = False drop_remainder = False if allow_smaller_final_batch else True #drop_remainder = True if not num_prefetch_batches: #num_prefetch_batches = num_threads + 3 if buffer_size is not None: num_prefetch_batches = int(buffer_size / batch_size) else: num_prefetch_batches = 1024 if buffer_size is None: # ... Too small ? but 1024 will cause starup slow buffer_size = min_after_dequeue + num_prefetch_batches * batch_size #buffer_size = 1024 * batch_size with tf.name_scope(name): # https://github.com/tensorflow/tensorflow/issues/14857 Dataset = Dataset or tf.data.TFRecordDataset if not shuffle_files or len(files) == 1: d = Dataset(files) if use_horovod and hvd_shard: d = shard(d) else: d = tf.data.Dataset.list_files(files) # here shard by files, not work good, especially for text line dataset with hrovod if use_horovod and shard_by_files: d = shard(d) if shuffle_files: d = d.shuffle(len(files), seed=seed) d = d.interleave(Dataset, cycle_length=num_threads, block_length=1) if use_horovod and not shard_by_files: d = shard(d) #repeat_then_shuffle = True ## below on tf doc, but shard by files will cause problem, especially horovod mutlitple gpu, still not fully understand # Be sure to shard before you use any randomizing operator (such as shuffle). # Generally it is best if the shard operator is used early in the d pipeline. For example, when reading from a set of TFRecord files, shard before converting the d to input samples. This avoids reading every file on every worker. The following is an example of an efficient sharding strategy within a complete pipeline: # d = Dataset.list_files(pattern) # d = d.shard(num_workers, worker_index) # d = d.repeat(num_epochs) # d = d.shuffle(shuffle_buffer_size) # d = d.interleave(tf.data.TFRecordDataset, # cycle_length=num_readers, block_length=1) # d = d.map(parser_fn, num_parallel_calls=num_map_threads) # # # TODO still need shuffle here ? # # #https://www.tensorflow.org/api_docs/python/tf/data/Dataset#shuffle # d = d.shuffle(num_files)\ # .apply(tf.contrib.data.parallel_interleave( # Dataset, # cycle_length=num_threads)) if repeat and repeat_then_shuffle: d = d.repeat(num_epochs) # must batch then map if use pyfunc which you might use batch_parse, here batch_parse means batch parse otherwise slower but simple and powerfull... if not batch_parse: d = d.map(decode_fn, num_parallel_calls=num_threads) try: #shapes = d._output_shapes shapes = tf.data.get_output_shapes(d) except Exception: shapes = None #logging.info('datast decode shapes', shapes) ## Has bug.. seems as least not work with bucket not sure without bucket ok or not if balance_pos_neg: # https://stackoverflow.com/questions/46938530/produce-balanced-mini-batch-with-d-api/49283371#49283371 ds_pos = d.filter(pos_filter_fn).repeat() ds_neg = d.filter(neg_filter_fn) # def _concat(x, y): # return tf.cond(tf.random_uniform(()) > 0.5, lambda: x, lambda: y) # d = tf.data.Dataset.zip((ds_pos, ds_neg)) # d = d.map(_concat) d = tf.data.Dataset.zip((ds_pos, ds_neg)) # Each input element will be converted into a two-element `Dataset` using # `Dataset.from_tensors()` and `Dataset.concatenate()`, then `Dataset.flat_map()` # will flatten the resulting `Dataset`s into a single `Dataset`. d = d.flat_map( lambda ex_pos, ex_neg: tf.data.Dataset.from_tensors(ex_pos).concatenate( tf.data.Dataset.from_tensors(ex_neg))) #https://github.com/tensorflow/tensorflow/issues/14451 # count_fn for over sample if count_fn is not None: d = d.flat_map( lambda x, y : tf.data.Dataset.from_tensors((x, y)).repeat(tf.to_int64(count_fn(x, y)))) # filter fn for under sample # if under_sample_filter_fn is not None: # d = d.filter(under_sample_filter_fn) if filter_fn is not None: d = d.filter(filter_fn) if shuffle_batch: logging.info('shuffle with buffer_size', buffer_size, 'seed', seed) d = d.shuffle(buffer_size=buffer_size, seed=seed) # shuffle then repeat if repeat and not repeat_then_shuffle: d = d.repeat(num_epochs) # d = d.interleave(Dataset, # cycle_length=num_threads, block_length=16) # https://stackoverflow.com/questions/46444018/meaning-of-buffer-size-in-d-map-d-prefetch-and-d-shuffle #d = d.prefetch(buffer_size) d = d.prefetch(num_prefetch_batches * batch_size) #d = d.prefetch(num_prefetch_batches) # #https://github.com/HKUST-KnowComp/R-Net/blob/master/util.py # #https://github.com/tensorflow/tensor2tensor/blob/master/tensor2tensor/utils/data_reader.py if bucket_boundaries: # TODO remove support for length index, use use length key! assert length_key is not None or length_index is not None, 'forget to set length key or length index ?' if not isinstance(bucket_boundaries, (list, tuple)): boundaries = [int(x) for x in bucket_boundaries.split(',') if x.strip()] else: boundaries = bucket_boundaries logging.info('bucket_boundaries', boundaries) with tf.name_scope("bucket_by_seq_length"): def example_to_bucket_id(*args, **kw): """Return int64 id of the length bucket for this example.""" #assert length_index is not None if length_key is None: try: x = list(args[0])[length_index] except Exception: x = args[length_index] else: try: x = args[0][length_key] except Exception: x = args[length_key] seq_length = tf.reduce_sum(tf.cast(tf.cast(x, tf.bool), tf.int32)) buckets_min = [np.iinfo(np.int32).min] + boundaries buckets_max = boundaries + [np.iinfo(np.int32).max] conditions_c = tf.logical_and( tf.less_equal(buckets_min, seq_length), tf.less(seq_length, buckets_max)) bucket_id = tf.reduce_min(tf.where(conditions_c)) return bucket_id if not bucket_batch_sizes: def batching_fn(bucket_id, grouped_d): return grouped_d.padded_batch(batch_size, padded_shapes=(shapes)) ## TODO larger window better hsku squad doing this like below, shuffle can be better ? ## NOTICE!! shuffle may be slow start fill queue can remove not hurt performance ? d = d.apply(tf.contrib.data.group_by_window( example_to_bucket_id, batching_fn, window_size=5 * batch_size)).shuffle((len(boundaries) + 1) * 25) ## tenor2tensor doing this, no shuffle ? also it seems like window_func for different bounds ## with different batch_size ? # d = d.apply( # tf.contrib.data.group_by_window(example_to_bucket_id, batching_fn, batch_size)).shuffle((len(boundaries) + 1) * 25) else: # TEST OK # test ok ie buckets[400] batch_sizes[64, 32] if not isinstance(bucket_batch_sizes, (list, tuple)): bucket_batch_sizes = [int(x) for x in bucket_batch_sizes.split(',') if x.strip()] logging.info('bucket_batche_sizes', bucket_batch_sizes) assert len(boundaries) + 1 == len(bucket_batch_sizes) def window_size_fn(bucket_id): # window size = batch size batch_sizes = tf.constant(bucket_batch_sizes, dtype=tf.int64) window_size = batch_sizes[bucket_id] # * 5 will make reading slower window_size *= 5 return window_size def batching_fn(bucket_id, grouped_d): batch_sizes = tf.constant(bucket_batch_sizes, dtype=tf.int64) batch_size = batch_sizes[bucket_id] #return padded_batch(grouped_d, batch_size, padded_shapes=None) return grouped_d.padded_batch(batch_size, padded_shapes=(shapes)) # shuffle will make start slower might fill d = d.apply(tf.contrib.data.group_by_window( example_to_bucket_id, batching_fn, None, window_size_fn)).shuffle((len(boundaries) + 1) * 25) else: # no bucket if dynamic_pad and not batch_parse: d = d.padded_batch(batch_size, padded_shapes=(shapes), drop_remainder=drop_remainder) else: d = d.batch(batch_size, drop_remainder=drop_remainder) if batch_parse: d = d.map(decode_fn, num_parallel_calls=num_threads) # if not allow_smaller_final_batch: # # https://github.com/tensorflow/tensorflow/issues/13745 d.apply(tf.contrib.data.batch_and_drop_remainder(10)). # d = d.filter(lambda x, *args, **kw: tf.equal(tf.shape(x)[0], batch_size)) # TODO save iterator ? ## Create saveable object from iterator. #saveable = tf.contrib.data.make_saveable_from_iterator(iterator) # Save the iterator state by adding it to the saveable objects collection. #tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable) #try: if tf.executing_eagerly(): # TODO store iterator for eager return d else: if repeat and not initializable: iterator = d.make_one_shot_iterator() saveable = tf.contrib.data.make_saveable_from_iterator(iterator) tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable) if return_iterator: return iterator ops = iterator.get_next() return ops else: iterator = d.make_initializable_iterator() saveable = tf.contrib.data.make_saveable_from_iterator(iterator) tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable) return iterator # except Exception: # if repeat and not initializable: # iterator = d.make_one_shot_iterator() # saveable = tf.contrib.data.make_saveable_from_iterator(iterator) # tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable) # if return_iterator: # return iterator # ops = iterator.get_next() # return ops # else: # # if not repeat then need to init iterator each epoch # iterator = d.make_initializable_iterator() # saveable = tf.contrib.data.make_saveable_from_iterator(iterator) # tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable) # return iterator ================================================ FILE: utils/melt/tfrecords/decode_then_shuffle.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file read.py # \author chenghuige # \date 2016-08-15 20:10:44.183328 # \Description Read from TFRecords # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import gezi import melt # deprecated just using dataset_decode.py # TODO https://www.tensorflow.org/programmers_guide/datasets using DATASET API instead def _read_decode(filename_queue, decode_fn, thread_id=0): reader = tf.TFRecordReader() _, decoded_example = reader.read(filename_queue) #TODO better handle? http://stackoverflow.com/questions/218616/getting-method-parameter-names-in-python # inspect.getargspec(aMethod) try: values = decode_fn(decoded_example) except Exception: values = decode_fn(decoded_example, thread_id) #---for safe, or decode can make sure this for single value turn to list [] if not isinstance(values, (list, tuple)): values = [values] return values def inputs(files, decode_fn, batch_size=64, num_epochs = None, num_threads=12, shuffle_files=True, batch_join=True, shuffle_batch=True, min_after_dequeue=None, seed=None, enqueue_many=False, fix_random=False, no_random=False, fix_sequence=False, allow_smaller_final_batch=False, num_prefetch_batches=None, dynamic_pad=False, bucket_boundaries=None, length_index=None, length_fn=None, keep_fn=None, name='input'): """Reads input data num_epochs times. for sparse input here will do: 1. read decode decoded_example 2. shuffle decoded values 3. return batch decoded values Args: decode: user defined decode #TODO should be decode_fn #---decode example # features = tf.parse_single_example( # decoded_example, # features={ # 'feature': tf.FixedLenFeature([], tf.string), # 'name': tf.FixedLenFeature([], tf.string), # 'comment_str': tf.FixedLenFeature([], tf.string), # 'comment': tf.FixedLenFeature([], tf.string), # 'num_words': tf.FixedLenFeature([], tf.int64), # }) # feature = tf.decode_raw(features['feature'], tf.float32) # feature.set_shape([IMAGE_FEATURE_LEN]) # comment = tf.decode_raw(features['comment'], tf.int64) # comment.set_shape([COMMENT_MAX_WORDS]) # name = features['name'] # comment_str = features['comment_str'] # num_words = features['num_words'] # return name, feature, comment_str, comment, num_words Returns: list of tensors """ #with tf.device('/cpu:0'): if isinstance(files, str): files = gezi.list_files(files) assert len(files) > 0 if not min_after_dequeue: min_after_dequeue = melt.tfrecords.read.MIN_AFTER_QUEUE if not num_epochs: num_epochs = None if fix_random: if seed is None: seed = 1024 shuffle_files = True batch_join = False #check can be True ? #to get fix_random #shuffle_batch = True and num_threads = 1 ok #shuffle_batch = False and num_threads >= 1 ok #from models/iamge-text-sim/read_records shuffle_batch = True will be quick, even single thread #and strange num_threas = 1 will be quicker then 12 shuffle_batch = True num_threads = 1 #shuffle_batch = False if fix_sequence: no_random = True allow_smaller_final_batch = True if no_random: shuffle_files = False batch_join = False shuffle_batch = False num_threads = 1 if dynamic_pad: #use tf.batch shuffle_batch = False #shuffle=True #batch_join = True #setting to False can get fixed result #seed = 1024 with tf.name_scope(name): filename_queue = tf.train.string_input_producer( files, num_epochs=num_epochs, shuffle=shuffle_files, seed=seed) # min_after_dequeue defines how big a buffer we will randomly sample # from -- bigger means better shuffling but slower start up and more # memory used. # capacity must be larger than min_after_dequeue and the amount larger # determines the maximum we will prefetch. Recommendation: # min_after_dequeue + (num_threads + a small safety margin) * batch_size #@TODO cifa10 always use num_prefetch_batches = 3, 3 * batch_size, check which is better if not num_prefetch_batches: num_prefetch_batches = num_threads + 3 capacity = min_after_dequeue + num_prefetch_batches * batch_size if batch_join: batch_list = [_read_decode(filename_queue, decode_fn, thread_id) for thread_id in xrange(num_threads)] #print batch_list if shuffle_batch: batch = tf.train.shuffle_batch_join( batch_list, batch_size=batch_size, capacity=capacity, min_after_dequeue=min_after_dequeue, seed=seed, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, name='shuffle_batch_join_queue') else: batch = tf.train.batch_join( batch_list, batch_size=batch_size, capacity=capacity, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, dynamic_pad=dynamic_pad, name='batch_join_queue') else: decoded_example = list(_read_decode(filename_queue, decode_fn)) num_threads = 1 if fix_random else num_threads if bucket_boundaries: if not isinstance(bucket_boundaries, (list, tuple)): bucket_boundaries = [int(x) for x in bucket_boundaries.split(',') if x] if length_index is not None: input_length=decoded_example[length_index] else: assert length_fn is not None, 'you must set length_index or pass length_fn' input_length = length_fn(decoded_example) keep_input = input_length >= 1 if keep_fn is None else keep_fn(decoded_example) _, batch = tf.contrib.training.bucket_by_sequence_length( input_length=tf.to_int32(input_length), bucket_boundaries=bucket_boundaries, tensors=decoded_example, batch_size=batch_size, keep_input=keep_input, num_threads=num_threads, dynamic_pad=True, capacity=capacity, allow_smaller_final_batch=allow_smaller_final_batch, name="bucket_queue") else: if shuffle_batch: batch = tf.train.shuffle_batch( decoded_example, batch_size=batch_size, num_threads=num_threads, capacity=capacity, min_after_dequeue=min_after_dequeue, seed=seed, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, name='shuffle_batch_queue') else: #http://honggang.io/2016/08/19/tensorflow-data-reading/ batch = tf.train.batch( decoded_example, batch_size=batch_size, num_threads=num_threads, capacity=capacity, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, dynamic_pad=dynamic_pad, name='batch_queue') return batch ================================================ FILE: utils/melt/tfrecords/libsvm_decode.py ================================================ #!/usr/bin/env python # ============================================================================== # \file libsvm_decode.py # \author chenghuige # \date 2016-08-15 20:17:53.507796 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf #notice heare use parse_example not parse single example for it #is used in sparse record reading flow, shuffle then deocde def decode(batch_serialized_examples, label_type=tf.int64, index_type=tf.int64, value_type=tf.float32): """ decode batch_serialized_examples for use in parse libsvm fomrat sparse tf-record Returns: X,y """ features = tf.parse_example( batch_serialized_examples, features={ 'label' : tf.FixedLenFeature([], label_type), 'index' : tf.VarLenFeature(index_type), 'value' : tf.VarLenFeature(value_type), }) label = features['label'] index = features['index'] value = features['value'] #return as X,y print(index, value) return (index, value), label ================================================ FILE: utils/melt/tfrecords/read.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file read.py # \author chenghuige # \date 2016-08-15 20:10:44.183328 # \Description Read from TFRecords # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf MIN_AFTER_QUEUE = 512 ================================================ FILE: utils/melt/tfrecords/shuffle_then_decode.py ================================================ #!/usr/bin/env python #coding=gbk # ============================================================================== # \file read_sparse.py # \author chenghuige # \date 2016-08-15 20:13:06.751843 # \Description @TODO https://github.com/tensorflow/tensorflow/tree/r0.10/tensorflow/contrib/slim/python/slim/data/ # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import gezi import melt # deprecated just using dataset_decode.py def _read(filename_queue): reader = tf.TFRecordReader() _, serialized_example = reader.read(filename_queue) return [serialized_example] def inputs(files, decode_fn, batch_size=64, num_epochs = None, num_threads=12, shuffle_files=True, batch_join=True, shuffle_batch=True, min_after_dequeue=None, seed=None, enqueue_many=False, fix_random=False, no_random=False, fix_sequence=False, allow_smaller_final_batch=False, num_prefetch_batches=None, dynamic_pad=False, buckets=None, length_index=None, length_fn=None, name='input'): """Reads input data num_epochs times. for sparse input here will do: 1. read serialized_example 2. shuffle serialized_examples 3. decdoe batch_serialized_examples notice read_sparse.inputs and also be used for dense inputs,but if you only need to decode part from serialized_example, then read.inputs will be better, less to put to suffle #--------decode example, can refer to libsvm-decode.py # def decode(batch_serialized_examples): # features = tf.parse_example( # batch_serialized_examples, # features={ # 'label' : tf.FixedLenFeature([], tf.int64), # 'index' : tf.VarLenFeature(tf.int64), # 'value' : tf.VarLenFeature(tf.float32), # }) # label = features['label'] # index = features['index'] # value = features['value'] # return label, index, value #string_input_reducer will shuffle files #shuffle will read file by file and shuffle withn file(in shuffle queue) #shuffle_batch_join will read multiple files and shuffle in shuffle queue(from many files) To get fixed sequence shuffle=False so by this way the sequence is as your data input unchange or shuffle=True seed=1024 #set batch_join=False by this way you have fixed random, so get same result NOTICE, shuffle=True,seed=1024,batch_join=True will not get same result shuffle=False,seed=1024,batch_join=True also, so batch_join seems seed only control inqueue random, can not get fixed result for no random -> fixed result set shuffle=False wihch will force batch_join=False then use batch for fixed random -> shuffle=True, seed set or fix_random=True read-records.py show above ok, but train-evaluate.py show not, only shuffle=False can get fixed result.. @FIXME strange for train-evaluate.py it looks you can set shuffle in string_input_producer True, but then must use batch, batch_join and shuffle_batch join all not fixed even with seed set, may be due to trainset two inputs read ? for read-records.py batch_join will be fixed, shuffle_batch_join not defualt parmas will give max random... Args: decode: user defined decode min_after_dequeue: set to >2w for production train, suggesed will be 0.4 * num_instances, but also NOTICE do not exceed mem #--default parmas will make most randomness shuffle_files: wehter shuffle file shuffle_batch: batch or shuffle_batch batch_join: wether to use multiple reader or use one reader mutlitple thread fix_random: if True make at most random which can fix random result allow_smaller_final_batch: set True usefull if you want verify on small dataset #but seems only works here for single epoch case """ #with tf.device('/cpu:0'): if isinstance(files, str): files = gezi.list_files(files) assert len(files) > 0 if not min_after_dequeue : min_after_dequeue = melt.tfrecords.read.MIN_AFTER_QUEUE if not num_epochs: num_epochs = None if fix_random: if seed is None: seed = 1024 shuffle_files = True batch_join = False #check can be True ? #to get fix_random #shuffle_batch = True and num_threads = 1 ok #shuffle_batch = False and num_threads >= 1 ok #from models/iamge-text-sim/read_records shuffle_batch = True will be quick, even single thread #and strange num_threas = 1 will be quicker then 12 shuffle_batch = True num_threads = 1 #shuffle_batch = False if fix_sequence: no_random = True allow_smaller_final_batch = True num_threads = 1 if no_random: shuffle_files = False batch_join = False shuffle_batch = False if dynamic_pad: #use tf.batch shuffle_batch = False #shuffle=True #batch_join = True #setting to False can get fixed result #seed = 1024 with tf.name_scope(name): filename_queue = tf.train.string_input_producer( files, num_epochs=num_epochs, shuffle=shuffle_files, seed=seed) # min_after_dequeue defines how big a buffer we will randomly sample # from -- bigger means better shuffling but slower start up and more # memory used. # capacity must be larger than min_after_dequeue and the amount larger # determines the maximum we will prefetch. Recommendation: # min_after_dequeue + (num_threads + a small safety margin) * batch_size #@TODO cifa10 always use num_prefetch_batches = 3, 3 * batch_size, check which is better if not num_prefetch_batches: num_prefetch_batches = num_threads + 3 capacity = min_after_dequeue + num_prefetch_batches * batch_size #@TODO diff between tf.batch_join and tf.batch, batch_join below means shuffle_batch_join.. TODO if batch_join: batch_list = [_read(filename_queue) for _ in xrange(num_threads)] #print batch_list if shuffle_batch: batch_serialized_examples = tf.train.shuffle_batch_join( batch_list, batch_size=batch_size, capacity=capacity, min_after_dequeue=min_after_dequeue, seed=seed, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, name='shuffle_batch_join_queue') else: batch_serialized_examples = tf.train.batch_join( batch_list, batch_size=batch_size, capacity=capacity, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, dynamic_pad=dynamic_pad, name='batch_join_queue') else: serialized_example = list(_read(filename_queue)) #@FIXME... for bug now can not be more random if want fix random see D:\mine\tensorflow-exp\models\image-text-sim\train-evaluate-fixrandom.py if shuffle_batch: batch_serialized_examples = tf.train.shuffle_batch( serialized_example, batch_size=batch_size, num_threads=num_threads, capacity=capacity, min_after_dequeue=min_after_dequeue, seed=seed, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, name='shuffle_batch_queue') else: batch_serialized_examples = tf.train.batch( serialized_example, batch_size=batch_size, #@TODO to make really fxied result use num_threads=1, may be shuffle_batch will be fix random? num_threads=num_threads, capacity=capacity, enqueue_many=enqueue_many, allow_smaller_final_batch=allow_smaller_final_batch, dynamic_pad=dynamic_pad, name='batch_queue') return decode_fn(batch_serialized_examples) if decode_fn is not None else batch_serialized_examples ================================================ FILE: utils/melt/tfrecords/write.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file write.py # \author chenghuige # \date 2016-08-24 10:21:46.629992 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import random import tensorflow as tf class Writer(object): def __init__(self, file, buffer_size=None): random.seed(12345) self.count = 0 self.buffer_size = buffer_size # # Not safe multiple thread.. need lock # dir = os.path.dirname(file) # if not os.path.exists(dir): # print('make new dir: [%s]'%dir, file=sys.stderr) # os.makedirs(dir) self.writer = tf.io.TFRecordWriter(file) self.buffer = [] if self.buffer_size else None def __del__(self): #print('del writer', file=sys.stderr) self.close() def __enter__(self): return self def __exit__(self, exc_type, exc_value, traceback): #print('close writer', file=sys.stderr) self.close() def close(self): if self.buffer: random.shuffle(self.buffer) for example in self.buffer: self.writer.write(example.SerializeToString()) self.buffer = [] def finalize(self): self.close() def write(self, example): self.count += 1 if self.buffer is not None: self.buffer.append(example) if len(self.buffer) >= self.buffer_size: random.shuffle(self.buffer) for example in self.buffer: self.writer.write(example.SerializeToString()) self.buffer = [] else: self.writer.write(example.SerializeToString()) def size(self): return self.count class MultiOutWriter(object): """ read single file output to mutlitple tfrecord """ def __init__(self, dir, name='train', max_lines=50000): self.dir = dir self.name = name self.max_lines = max_lines self.index = 0 self.count = 0 self.writer = self.get_tfrecord() def __del__(self): print('del writer', file=sys.stderr) self.close() def __enter__(self): return self def __exit__(self, exc_type, exc_value, traceback): print('close writer', file=sys.stderr) self.close() def get_tfrecord(self): return tf.python_io.TFRecordWriter( os.path.join(dir, '{}_{}'.format(self.name, self.index))) def write(self, example): self.writer.write(example.SerializeToString()) self.count += 1 if self.count == self.max_lines: self.index += 1 self.writer.close() self.writer = self.get_tfrecord() import numpy as np class RandomSplitWriter(object): """ read single file, random split as train, test to two files """ def __init__(self, train_file, test_file, train_ratio=0.8): self.train_writer = Writer(train_file) self.test_writer = Writer(test_file) self.train_ratio = train_ratio def __enter__(self): return self def __del__(self): print('del writer', file=sys.stderr) self.close() def __exit__(self, exc_type, exc_value, traceback): print('close writer', file=sys.stderr) self.close() def close(self): self.train_writer.close() self.test_writer.close() def write(example): writer = self.train_writer if np.random.random_sample() < self.train_ratio else self.test_writer() writer.write(example) class RandomSplitMultiOutWriter(object): """ read single file, random split as train, test each to mulitple files """ def __init__(self, train_dir, test_dir, train_name='train', test_name='test', max_lines=50000, train_ratio=0.8): self.train_writer = MultiOutWriter(train_dir, train_name, max_lines) self.test_writer = MultiOutWriter(test_dir, test_name, max_lines) self.train_ratio = train_ratio def __enter__(self): return self def __del__(self): print('del writer', file=sys.stderr) self.close() def __exit__(self, exc_type, exc_value, traceback): print('close writer', file=sys.stderr) self.close() def close(self): self.train_writer.close() self.test_writer.close() def write(self, example): writer = self.train_writer if np.random.random_sample() < self.train_ratio else self.test_writer() writer.write(example) ================================================ FILE: utils/melt/tools/count-records.py ================================================ #!/usr/bin/env python # ============================================================================== # \file read-records.py # \author chenghuige # \date 2016-07-19 17:09:07.466651 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_string('input', './*', '') flags.DEFINE_string('output', None, '') flags.DEFINE_integer('threads', 12, '') flags.DEFINE_bool('write_count', False, '') import sys, os, time import gezi import melt import multiprocessing from multiprocessing import Process, Manager, Value counter = Value('i', 0) def deal_file(file): try: count = melt.get_num_records_single(file) except Exception: print('bad file:', file) global counter with counter.get_lock(): counter.value += count print(file, count) def main(_): timer = gezi.Timer() input = FLAGS.input if FLAGS.threads == 1: num_records = melt.get_num_records_print(input) print(timer.elapsed()) else: files = gezi.list_files(input) print(files) pool = multiprocessing.Pool(processes = FLAGS.threads) pool.map(deal_file, files) pool.close() pool.join() num_records = counter.value print('num_records:', num_records) if FLAGS.write_count: outdir = os.path.dirname(input) output = '%s/num_records.txt' % outdir print('write to %s'%output) out = open(output, 'w') out.write(str(num_records)) if __name__ == '__main__': tf.app.run() ================================================ FILE: utils/melt/tools/delete-old-models.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file delete-old-models.py # \author chenghuige # \date 2016-10-10 21:58:26.617674 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function """ bin model_dir num_to_keep_of_latest_models """ import sys, os, glob def list_models(model_dir, time_descending=True): """ list all models in model_dir """ files = [file for file in glob.glob('%s/model.ckpt-*'%(model_dir)) if not (file.endswith('.meta') or file.endswith('.index'))] files.sort(key=lambda x: os.path.getmtime(x), reverse=time_descending) return files model_dir = sys.argv[1] models = list_models(model_dir) print('total models now:', len(models)) os.system('du -h %s'%model_dir) if len(sys.argv) > 2: num_keeps = int(sys.argv[2]) print('The models to keep are', models[:num_keeps]) print('You want to keep only the latest %d models, so delete %d old models'%(num_keeps, len(models) - num_keeps)) is_first = True for model in models[num_keeps:]: if is_first: if num_keeps < 5: print('only keep %d models?'%num_keeps) print('delete model older then %s ?'%model) #ok = raw_input("y?: ") #if ok != 'y' and ok != 'yes': # break is_first = False print('delete model:', model) os.remove(model) try: l = model.split('.') if not l[-1].startswith('ckpt-'): l = l[:-1] model = '.'.join(l) os.remove('%s.meta'%model) os.remove('%s.index'%model) except Exception: pass models = list_models(model_dir) print('models leave after:', models, 'num models now', len(models)) os.system('du -h %s'%model_dir) ================================================ FILE: utils/melt/tools/prepare-finetune-withhistory.py ================================================ #!/usr/bin/env python # ============================================================================== # \file prepare-finetune.py # \author chenghuige # \date 2017-09-29 07:15:01.808002 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import melt model_dir = sys.argv[1] model_dir, model_path = melt.get_model_dir_and_path(model_dir) new_model_dir = sys.argv[2] command = 'mkdir -p %s' % new_model_dir print(command, file=sys.stderr) os.system(command) if os.path.exists(new_model_dir): command = 'rm -rf %s/*' % new_model_dir print(command, file=sys.stderr) os.system(command) # copy history log command = 'cp -rf %s/events* %s' % (model_dir, new_model_dir) print(command, file=sys.stderr) os.system(command) command = 'cp -rf %s/log* %s' % (model_dir, new_model_dir) print(command, file=sys.stderr) os.system(command) command = 'cp %s* %s' % (model_path, new_model_dir) print(command, file=sys.stderr) os.system(command) checkpoint = os.path.join(new_model_dir, 'checkpoint') model_name = os.path.basename(model_path) checkpoint_info = 'model_checkpoint_path: "./%s"\n'%model_name print('write checkpoint_info to %s' % checkpoint, file=sys.stderr) with open(checkpoint, 'w') as f: f.write(checkpoint_info) old_checkpoint = os.path.join(model_dir, 'checkpoint') from_checkpoint = os.path.join(new_model_dir, 'checkpoint.from') command = 'cp %s %s' % (old_checkpoint, from_checkpoint) print(command, file=sys.stderr) os.system(command) ================================================ FILE: utils/melt/tools/prepare-finetune.py ================================================ #!/usr/bin/env python # ============================================================================== # \file prepare-finetune.py # \author chenghuige # \date 2017-09-29 07:15:01.808002 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import melt model_dir = sys.argv[1] model_dir, model_path = melt.get_model_dir_and_path(model_dir) new_model_dir = sys.argv[2] command = 'mkdir -p %s'%new_model_dir print(command, file=sys.stderr) os.system(command) if os.path.exists(new_model_dir): command = 'rm -rf %s/*'%new_model_dir print(command, file=sys.stderr) os.system(command) command = 'cp %s* %s'%(model_path, new_model_dir) print(command, file=sys.stderr) os.system(command) checkpoint = os.path.join(new_model_dir, 'checkpoint') model_name = os.path.basename(model_path) checkpoint_info = 'model_checkpoint_path: "./%s"\n'%model_name print('write checkpoint_info to %s'%checkpoint, file=sys.stderr) with open(checkpoint, 'w') as f: f.write(checkpoint_info) old_checkpoint = os.path.join(model_dir, 'checkpoint') from_checkpoint = os.path.join(new_model_dir, 'checkpoint.from') command = 'cp %s %s'%(old_checkpoint, from_checkpoint) print(command, file=sys.stderr) os.system(command) ================================================ FILE: utils/melt/tools/rename-variables.py ================================================ #!/usr/bin/env python # ============================================================================== # \file rename_variables.py # \author chenghuige # \date 2017-08-28 17:20:39.256411 # \Description # ============================================================================== #https://gist.github.com/batzner/7c24802dd9c5e15870b4b56e22135c96 import sys, getopt import tensorflow as tf usage_str = 'python tensorflow_rename_variables.py --checkpoint_dir=path/to/dir/ ' \ '--replace_from=substr --replace_to=substr --add_prefix=abc --dry_run' def rename(checkpoint_dir, replace_from, replace_to, add_prefix, dry_run): checkpoint = tf.train.get_checkpoint_state(checkpoint_dir) with tf.Session() as sess: for var_name, _ in tf.contrib.framework.list_variables(checkpoint_dir): # Load the variable var = tf.contrib.framework.load_variable(checkpoint_dir, var_name) # Set the new name new_name = var_name if None not in [replace_from, replace_to]: new_name = new_name.replace(replace_from, replace_to) if add_prefix: new_name = add_prefix + new_name if dry_run: print('%s would be renamed to %s.' % (var_name, new_name)) else: print('Renaming %s to %s.' % (var_name, new_name)) # Rename the variable var = tf.Variable(var, name=new_name) if not dry_run: # Save the variables saver = tf.train.Saver() sess.run(tf.global_variables_initializer()) saver.save(sess, checkpoint.model_checkpoint_path) def main(argv): checkpoint_dir = None replace_from = None replace_to = None add_prefix = None dry_run = False try: opts, args = getopt.getopt(argv, 'h', ['help=', 'checkpoint_dir=', 'replace_from=', 'replace_to=', 'add_prefix=', 'dry_run']) except getopt.GetoptError: print(usage_str) sys.exit(2) for opt, arg in opts: if opt in ('-h', '--help'): print(usage_str) sys.exit() elif opt == '--checkpoint_dir': checkpoint_dir = arg elif opt == '--replace_from': replace_from = arg elif opt == '--replace_to': replace_to = arg elif opt == '--add_prefix': add_prefix = arg elif opt == '--dry_run': dry_run = True if not checkpoint_dir: print('Please specify a checkpoint_dir. Usage:') print(usage_str) sys.exit(2) rename(checkpoint_dir, replace_from, replace_to, add_prefix, dry_run) if __name__ == '__main__': main(sys.argv[1:]) ================================================ FILE: utils/melt/tools/reset-model-top-scope.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file reset-model-top-scope.py # \author chenghuige # \date 2016-09-29 21:20:54.473502 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tf.app.flags.DEFINE_string("input_checkpoint", "", """TensorFlow variables file to load.""") tf.app.flags.DEFINE_string("model_dir", "", """load latest model from model dir, either model dir or input_checkpoint must be non empty""") tf.app.flags.DEFINE_string("output_checkpoint", "", """output checkpint with top scope changed""") tf.app.flags.DEFINE_string("restore_op_name", "save/restore_all", """The name of the master restore operator.""") tf.app.flags.DEFINE_string("scope", "", """input top scope""") tf.app.flags.DEFINE_string("out_scope", "", """out top scope""") tf.app.flags.DEFINE_integer("index", 0, """out index of checkpoints""") import os, time from google.protobuf import text_format import melt def reset_model_top_scope(): assert FLAGS.input_checkpoint or FLAGS.model_dir sess = tf.InteractiveSession() input_checkpoint = FLAGS.input_checkpoint if FLAGS.input_checkpoint \ else melt.latest_checkpoint(FLAGS.model_dir) _, input_checkpoint_name = os.path.split(input_checkpoint) print('input_checkpoint:', input_checkpoint) meta_filename = ".".join([input_checkpoint, "meta"]) while not os.path.exists(meta_filename): print('%s:not ready yet, try again'%meta_filename) time.sleep(3) saver = tf.train.import_meta_graph(meta_filename) saver.restore(sess, input_checkpoint) print('tf.all_variables:', [v.name for v in tf.all_variables()]) scope = FLAGS.scope out_scope = FLAGS.out_scope if FLAGS.out_scope else '%s_%d'%(scope, FLAGS.index) output_checkpoint = FLAGS.output_checkpoint if FLAGS.output_checkpoint \ else '/tmp/%s'%(input_checkpoint_name) print('scope:', scope) print('out_scope:', out_scope) src_vars = melt.variables_with_scope(scope) print([v.name for v in src_vars]) out_vars = {v.name[:v.name.rfind(':')].replace(scope, out_scope, 1): v for v in src_vars} print('out_vars:', [key for key in out_vars]) tf.train.Saver(var_list=out_vars).save(sess, output_checkpoint) print('save done to %s'%output_checkpoint) sess.close() def main(unused_args): reset_model_top_scope() if __name__ == "__main__": tf.app.run() ================================================ FILE: utils/melt/tools/show-records.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file show-records.py # \author chenghuige # \date 2018-03-29 21:55:32.616016 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import tensorflow as tf input = sys.argv[1] for example in tf.python_io.tf_record_iterator(input): result = tf.train.Example.FromString(example) print(result) break ================================================ FILE: utils/melt/tools/show-var-of-model.py ================================================ #!/usr/bin/env python # ============================================================================== # \file show-var-of-model.py # \author chenghuige # \date 2017-09-06 07:52:34.258312 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys, os import melt from tensorflow.python import pywrap_tensorflow model_dir = sys.argv[1] var_name = sys.argv[2] checkpoint_path = melt.get_model_path(model_dir) reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) var_to_shape_map = reader.get_variable_to_shape_map() for key in var_to_shape_map: if var_name in key: print("tensor_name: ", key) print(reader.get_tensor(key)) ================================================ FILE: utils/melt/torch/__init__.py ================================================ from melt.torch.train import * ================================================ FILE: utils/melt/torch/train.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file train.py # \author chenghuige # \date 2018-09-26 11:31:25.070813 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function try: import torch except Exception: pass import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tfe = tf.contrib.eager import sys import os from tqdm import tqdm import numpy as np import inspect import traceback import gezi import melt logging = melt.logging def torch_(x): for dim in x.shape: if dim == 0: return x #x = x.numpy() # if x.dtype == np.int64 or x.dtype == np.int32: # x = torch.LongTensor(x) # if torch.cuda.is_available(): # x = x.cuda() # x.requires_grad = False # #x = torch.cuda.LongTensor(x) # elif x.dtype == np.float32 or x.dtype == np.float64: # x = torch.FloatTensor(x) # if torch.cuda.is_available(): # x = x.cuda() # x.requires_grad = False # #x = torch.cuda.FloatTensor(x) if x.dtype == np.int64 or x.dtype == np.int32 or x.dtype == np.float32 or x.dtype == np.float64: x = torch.from_numpy(x) if torch.cuda.is_available(): x = x.cuda() return x def to_torch(x, y=None): if y is not None: y = torch_(y) for key in x: x[key] = torch_(x[key]) if y is None: return x else: return x, y def train(Dataset, model, loss_fn, evaluate_fn=None, inference_fn=None, eval_fn=None, write_valid=True, valid_names=None, infer_names=None, infer_debug_names=None, valid_write_fn=None, infer_write_fn=None, valid_suffix='.valid', infer_suffix='.infer', write_streaming=False, sep=','): if FLAGS.torch: if torch.cuda.is_available(): model.cuda() input_ = FLAGS.train_input inputs = gezi.list_files(input_) inputs.sort() all_inputs = inputs batch_size = FLAGS.batch_size num_gpus = melt.num_gpus() if num_gpus > 1: assert False, 'Eager mode train currently not support for num gpus > 1' #batch_size_ = batch_size if not FLAGS.batch_sizes else int(FLAGS.batch_sizes.split(',')[-1]) batch_size_ = batch_size if FLAGS.fold is not None: inputs = [x for x in inputs if not x.endswith('%d.record' % FLAGS.fold)] logging.info('inputs', inputs) dataset = Dataset('train') num_examples = dataset.num_examples_per_epoch('train') num_all_examples = num_examples # if FLAGS.fold is not None: # valid_inputs = [x for x in all_inputs if x not in inputs] # else: # valid_inputs = gezi.list_files(FLAGS.valid_input) # logging.info('valid_inputs', valid_inputs) # if valid_inputs: # valid_dataset_ = Dataset('valid') # valid_dataset = valid_dataset_.make_batch(batch_size_, valid_inputs) # valid_dataset2 = valid_dataset_.make_batch(batch_size_, valid_inputs, repeat=True) # else: # valid_datsset = None # valid_dataset2 = None if num_examples: if FLAGS.fold is not None: num_examples = int(num_examples * (len(inputs) / (len(inputs) + 1))) num_steps_per_epoch = -(-num_examples // batch_size) else: num_steps_per_epoch = None # if FLAGS.fold is not None: # if num_examples: # num_valid_examples = int(num_all_examples * (1 / (len(inputs) + 1))) # num_valid_steps_per_epoch = -(-num_valid_examples // batch_size_) # else: # num_valid_steps_per_epoch = None # else: # num_valid_examples = valid_dataset_.num_examples_per_epoch('valid') # num_valid_steps_per_epoch = -(-num_valid_examples // batch_size_) if num_valid_examples else None # test_inputs = gezi.list_files(FLAGS.test_input) # logging.info('test_inputs', test_inputs) # if test_inputs: # test_dataset_ = Dataset('test') # test_dataset = test_dataset_.make_batch(batch_size_, test_inputs) # num_test_examples = test_dataset_.num_examples_per_epoch('test') # num_test_steps_per_epoch = -(-num_test_examples // batch_size_) if num_test_examples else None # else: # test_dataset = None summary = tf.contrib.summary # writer = summary.create_file_writer(FLAGS.model_dir + '/epoch') # writer_train = summary.create_file_writer(FLAGS.model_dir + '/train') # writer_valid = summary.create_file_writer(FLAGS.model_dir + '/valid') writer = summary.create_file_writer(FLAGS.model_dir) writer_train = summary.create_file_writer(FLAGS.model_dir) writer_valid = summary.create_file_writer(FLAGS.model_dir) global_step = tf.train.get_or_create_global_step() learning_rate = tfe.Variable(FLAGS.learning_rate, name="learning_rate") tf.add_to_collection('learning_rate', learning_rate) learning_rate_weight = tf.get_collection('learning_rate_weight')[-1] try: learning_rate_weights = tf.get_collection('learning_rate_weights')[-1] except Exception: learning_rate_weights = None ckpt_dir = FLAGS.model_dir + '/ckpt' #TODO FIXME now I just changed tf code so to not by default save only latest 5 # refer to https://github.com/tensorflow/tensorflow/issues/22036 # manager = tf.contrib.checkpoint.CheckpointManager( # checkpoint, directory=ckpt_dir, max_to_keep=5) # latest_checkpoint = manager.latest_checkpoint latest_checkpoint = tf.train.latest_checkpoint(ckpt_dir) logging.info('Latest checkpoint:', latest_checkpoint) checkpoint_prefix = os.path.join(ckpt_dir, 'ckpt') if not FLAGS.torch: optimizer = melt.get_optimizer(FLAGS.optimizer)(learning_rate) # TODO... if learning_rate_weights is None: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, model=model, optimizer=optimizer, global_step=global_step) else: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, learning_rate_weights=learning_rate_weights, model=model, optimizer=optimizer, global_step=global_step) if os.path.exists(FLAGS.model_dir + '.index'): latest_checkpoint = FLAGS.model_dir checkpoint.restore(latest_checkpoint) start_epoch = int(latest_checkpoint.split('-')[-1]) if latest_checkpoint else 0 else: # TODO torch with learning rate adjust optimizer = torch.optim.Adamax(model.parameters(), lr=FLAGS.learning_rate) if latest_checkpoint: checkpoint = torch.load(latest_checkpoint + '.pyt') start_epoch = checkpoint['epoch'] model.load_state_dict(checkpoint['state_dict']) optimizer.load_state_dict(checkpoint['optimizer']) model.eval() else: start_epoch = 0 if learning_rate_weights is None: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, global_step=global_step) else: checkpoint = tf.train.Checkpoint( learning_rate=learning_rate, learning_rate_weight=learning_rate_weight, learning_rate_weights=learning_rate_weights, global_step=global_step) #model.load_weights(os.path.join(ckpt_dir, 'ckpt-1')) #model.save('./weight3.hd5') # TODO currently not support 0.1 epoch.. like this num_epochs = FLAGS.num_epochs class PytObj(object): def __init__(self, x): self.x = x def numpy(self): return self.x class PytMean(object): def __init__(self): self._val = 0. self.count = 0 self.is_call = True def clear(self): self._val = 0 self.count = 0 def __call__(self, val): if not self.is_call: self.clear() self.is_call = True self._val += val.item() self.count += 1 def result(self): if self.is_call: self.is_call = False if not self.count: val = 0 else: val = self._val / self.count # TODO just for compact with tf .. return PytObj(val) # TODO consider multiple gpu for torch iter = dataset.make_batch(batch_size, inputs, repeat=False, initializable=False) batch = iter.get_next() #x, y = melt.split_batch(batch, batch_size, num_gpus) x_, y_ = batch Mean = tfe.metrics.Mean if not FLAGS.torch else PytMean epoch_loss_avg = Mean() epoch_valid_loss_avg = Mean() sess = melt.get_session(device_count={'GPU': 0}) global_step = 0 for epoch in range(start_epoch, num_epochs): melt.set_global('epoch', '%.4f' % (epoch)) sess.run(iter.initializer) model.train() #..... still OOM... FIXME TODO try: for _ in tqdm(range(num_steps_per_epoch), total=num_steps_per_epoch, ascii=True): x, y = sess.run([x_, y_]) x, y = to_torch(x, y) optimizer.zero_grad() loss = loss_fn(model, x, y) loss.backward() optimizer.step() epoch_loss_avg(loss) if global_step % FLAGS.interval_steps == 0: print(global_step, epoch_loss_avg.result().numpy()) global_step += 1 except tf.errors.OutOfRangeError: print('epoch:%d loss:%f' % (epoch, epoch_loss_avg.result().numpy())) ================================================ FILE: utils/melt/training/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2017-10-21 06:09:20.563389 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import melt.training.adamax import melt.training.bert ================================================ FILE: utils/melt/training/adamax.py ================================================ # Copyright 2018 The TensorFlow Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """AdaMax for TensorFlow.""" from __future__ import absolute_import from __future__ import division from __future__ import print_function from tensorflow.python.eager import context from tensorflow.python.framework import ops from tensorflow.python.ops import array_ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops from tensorflow.python.ops import resource_variable_ops from tensorflow.python.ops import state_ops from tensorflow.python.training import adam from tensorflow.python.training import training_ops class AdaMaxOptimizer(adam.AdamOptimizer): """Optimizer that implements the AdaMax algorithm. Adamax is sometimes superior to adam, specially in models with embeddings, see [Kingma et al., 2014](http://arxiv.org/abs/1412.6980) ([pdf](http://arxiv.org/pdf/1412.6980.pdf)). """ def __init__(self, learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-8, use_locking=False, name="AdaMax"): """Construct a new AdaMax optimizer. Initialization: ``` m_0 <- 0 (Initialize initial 1st moment vector) v_0 <- 0 (Initialize the exponentially weighted infinity norm) t <- 0 (Initialize timestep) ``` The update rule for `variable` with gradient `g` uses an optimization described at the end of section 7.1 of the paper: ``` t <- t + 1 m_t <- beta1 * m_{t-1} + (1 - beta1) * g v_t <- max(beta2 * v_{t-1}, abs(g)) variable <- variable - learning_rate / (1 - beta1^t) * m_t / (v_t + epsilon) ``` Similar to AdamOptimizer, the epsilon is added for numerical stability (especially to get rid of division by zero when v_t = 0). Contrast to AdamOptimizer, the sparse implementation of this algorithm (used when the gradient is an IndexedSlices object, typically because of `tf.gather` or an embedding lookup in the forward pass) only updates variable slices and corresponding `m_t`, `v_t` terms when that part of the variable was used in the forward pass. This means that the sparse behavior is contrast to the dense behavior (similar to some momentum implementations which ignore momentum unless a variable slice was actually used). Args: learning_rate: A Tensor or a floating point value. The learning rate. beta1: A float value or a constant float tensor. The exponential decay rate for the 1st moment estimates. beta2: A float value or a constant float tensor. The exponential decay rate for the exponentially weighted infinity norm. epsilon: A small constant for numerical stability. use_locking: If True use locks for update operations. name: Optional name for the operations created when applying gradients. Defaults to "AdaMax". """ super(AdaMaxOptimizer, self).__init__(learning_rate, beta1, beta2, epsilon, use_locking, name) def _get_beta_accumulators(self): if context.executing_eagerly(): graph = None else: graph = ops.get_default_graph() return self._get_non_slot_variable("beta1_power", graph=graph) def _create_slots(self, var_list): # Create the beta1 accumulators on the same device as the first # variable. Sort the var_list to make sure this device is consistent across # workers (these need to go on the same PS, otherwise some updates are # silently ignored). first_var = min(var_list, key=lambda x: x.name) self._create_non_slot_variable(initial_value=self._beta1, name="beta1_power", colocate_with=first_var) # Create slots for the first and second moments. for v in var_list: self._zeros_slot(v, "m", self._name) self._zeros_slot(v, "v", self._name) def _apply_dense(self, grad, var): m = self.get_slot(var, "m") v = self.get_slot(var, "v") beta1_power = self._get_beta_accumulators() return training_ops.apply_ada_max( var, m, v, math_ops.cast(beta1_power, var.dtype.base_dtype), math_ops.cast(self._lr_t, var.dtype.base_dtype), math_ops.cast(self._beta1_t, var.dtype.base_dtype), math_ops.cast(self._beta2_t, var.dtype.base_dtype), math_ops.cast(self._epsilon_t, var.dtype.base_dtype), grad, use_locking=self._use_locking).op def _resource_apply_dense(self, grad, var): m = self.get_slot(var, "m") v = self.get_slot(var, "v") beta1_power = self._get_beta_accumulators() return training_ops.resource_apply_ada_max( var.handle, m.handle, v.handle, math_ops.cast(beta1_power, grad.dtype.base_dtype), math_ops.cast(self._lr_t, grad.dtype.base_dtype), math_ops.cast(self._beta1_t, grad.dtype.base_dtype), math_ops.cast(self._beta2_t, grad.dtype.base_dtype), math_ops.cast(self._epsilon_t, grad.dtype.base_dtype), grad, use_locking=self._use_locking) def _apply_sparse_shared(self, grad, var, indices, scatter_add, scatter_update): beta1_power = self._get_beta_accumulators() beta1_power = math_ops.cast(beta1_power, var.dtype.base_dtype) lr_t = math_ops.cast(self._lr_t, var.dtype.base_dtype) beta1_t = math_ops.cast(self._beta1_t, var.dtype.base_dtype) beta2_t = math_ops.cast(self._beta2_t, var.dtype.base_dtype) epsilon_t = math_ops.cast(self._epsilon_t, var.dtype.base_dtype) # m_t = beta1 * m + (1 - beta1) * g_t m = self.get_slot(var, "m") m_slice = array_ops.gather(m, indices) m_t_slice = m_slice * beta1_t + grad * (1 - beta1_t) with ops.control_dependencies([m_t_slice]): m_t = scatter_update(m, indices, m_t_slice) # u_t = max(beta2 * u, abs(g_t)) v = self.get_slot(var, "v") v_slice = array_ops.gather(v, indices) v_t_slice = math_ops.maximum(v_slice * beta2_t, math_ops.abs(grad)) with ops.control_dependencies([v_t_slice]): v_t = scatter_update(v, indices, v_t_slice) # theta_t = theta - lr / (1 - beta1^t) * m_t / u_t var_slice = -lr_t / (1 - beta1_power) * (m_t_slice / (v_t_slice + epsilon_t)) with ops.control_dependencies([var_slice]): var_update = scatter_add(var, indices, var_slice) return control_flow_ops.group(*[var_update, m_t, v_t]) def _apply_sparse(self, grad, var): return self._apply_sparse_shared( grad.values, var, grad.indices, lambda x, i, v: state_ops.scatter_add( # pylint: disable=g-long-lambda x, i, v, use_locking=self._use_locking), lambda x, i, v: state_ops.scatter_update( # pylint: disable=g-long-lambda x, i, v, use_locking=self._use_locking)) def _resource_scatter_update(self, x, i, v): with ops.control_dependencies( [resource_variable_ops.resource_scatter_update( x.handle, i, v)]): return x.value() def _resource_apply_sparse(self, grad, var, indices): return self._apply_sparse_shared( grad, var, indices, self._resource_scatter_add, self._resource_scatter_update) def _finish(self, update_ops, name_scope): # Update the power accumulators. with ops.control_dependencies(update_ops): beta1_power = self._get_beta_accumulators() with ops.colocate_with(beta1_power): update_beta1 = beta1_power.assign( beta1_power * self._beta1_t, use_locking=self._use_locking) return control_flow_ops.group(*update_ops + [update_beta1], name=name_scope) ================================================ FILE: utils/melt/training/bert/__init__.py ================================================ from melt.training.bert.optimization import * ================================================ FILE: utils/melt/training/bert/optimization.py ================================================ # coding=utf-8 # Copyright 2018 The Google AI Language Team Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Functions and classes related to optimization (weight updates).""" from __future__ import absolute_import from __future__ import division from __future__ import print_function import re import tensorflow as tf def create_optimizer(global_step, init_lr, num_train_steps, num_warmup_steps, min_learning_rate=0.): """Creates an optimizer training op.""" #global_step = tf.train.get_or_create_global_step() learning_rate = tf.constant(value=init_lr, shape=[], dtype=tf.float32) # Implements linear decay of the learning rate. learning_rate = tf.train.polynomial_decay( learning_rate, global_step, num_train_steps, end_learning_rate=min_learning_rate, power=1.0, cycle=False) min_learning_rate = tf.convert_to_tensor(min_learning_rate, dtype=tf.float32) learning_rate = tf.cond(learning_rate > min_learning_rate, lambda: learning_rate, lambda: min_learning_rate) # Implements linear warmup. I.e., if global_step < num_warmup_steps, the # learning rate will be `global_step/num_warmup_steps * init_lr`. if num_warmup_steps: global_steps_int = tf.cast(global_step, tf.int32) warmup_steps_int = tf.constant(num_warmup_steps, dtype=tf.int32) global_steps_float = tf.cast(global_steps_int, tf.float32) warmup_steps_float = tf.cast(warmup_steps_int, tf.float32) warmup_percent_done = global_steps_float / warmup_steps_float warmup_learning_rate = init_lr * warmup_percent_done is_warmup = tf.cast(global_steps_int < warmup_steps_int, tf.float32) learning_rate = ( (1.0 - is_warmup) * learning_rate + is_warmup * warmup_learning_rate) # It is recommended that you use this optimizer for fine tuning, since this # is how the model was trained (note that the Adam m/v variables are NOT # loaded from init_checkpoint.) optimizer = AdamWeightDecayOptimizer( learning_rate=learning_rate, weight_decay_rate=0.01, beta_1=0.9, beta_2=0.999, epsilon=1e-6, exclude_from_weight_decay=["LayerNorm", "layer_norm", "bias"]) return optimizer, learning_rate class AdamWeightDecayOptimizer(tf.train.Optimizer): #class AdamWeightDecayOptimizer(tf.keras.optimizers.Optimizer) """A basic Adam optimizer that includes "correct" L2 weight decay.""" def __init__(self, learning_rate, weight_decay_rate=0.0, beta_1=0.9, beta_2=0.999, epsilon=1e-6, exclude_from_weight_decay=None, name="AdamWeightDecayOptimizer"): """Constructs a AdamWeightDecayOptimizer.""" super(AdamWeightDecayOptimizer, self).__init__(False, name) self.learning_rate = learning_rate self.weight_decay_rate = weight_decay_rate self.beta_1 = beta_1 self.beta_2 = beta_2 self.epsilon = epsilon self.exclude_from_weight_decay = exclude_from_weight_decay def apply_gradients(self, grads_and_vars, global_step=None, name=None): """See base class.""" assignments = [] for (grad, param) in grads_and_vars: if grad is None or param is None: continue param_name = self._get_variable_name(param.name) m = tf.get_variable( name=param_name + "/adam_m", shape=param.shape.as_list(), dtype=tf.float32, trainable=False, initializer=tf.zeros_initializer()) v = tf.get_variable( name=param_name + "/adam_v", shape=param.shape.as_list(), dtype=tf.float32, trainable=False, initializer=tf.zeros_initializer()) # Standard Adam update. next_m = ( tf.multiply(self.beta_1, m) + tf.multiply(1.0 - self.beta_1, grad)) next_v = ( tf.multiply(self.beta_2, v) + tf.multiply(1.0 - self.beta_2, tf.square(grad))) update = next_m / (tf.sqrt(next_v) + self.epsilon) # Just adding the square of the weights to the loss function is *not* # the correct way of using L2 regularization/weight decay with Adam, # since that will interact with the m and v parameters in strange ways. # # Instead we want ot decay the weights in a manner that doesn't interact # with the m/v parameters. This is equivalent to adding the square # of the weights to the loss with plain (non-momentum) SGD. if self._do_use_weight_decay(param_name): update += self.weight_decay_rate * param update_with_lr = self.learning_rate * update next_param = param - update_with_lr assignments.extend( [param.assign(next_param), m.assign(next_m), v.assign(next_v)]) if global_step: new_global_step = global_step + 1 assignments.extend([global_step.assign(new_global_step)]) return tf.group(*assignments, name=name) def _do_use_weight_decay(self, param_name): """Whether to use L2 weight decay for `param_name`.""" if not self.weight_decay_rate: return False if self.exclude_from_weight_decay: for r in self.exclude_from_weight_decay: if re.search(r, param_name) is not None: return False return True def _get_variable_name(self, param_name): """Get the variable name from the tensor name.""" m = re.match("^(.*):\\d+$", param_name) if m is not None: param_name = m.group(1) return param_name ================================================ FILE: utils/melt/training/learning_rate_decay.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file learning_rate_decay.py # \author chenghuige # \date 2017-10-21 06:11:06.077589 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf from tensorflow.python.framework import ops from tensorflow.python.ops import control_flow_ops from tensorflow.python.ops import math_ops def exponential_decay(learning_rate, global_step, decay_steps, decay_rate, decay_start_step=0, staircase=False, name=None): """Applies exponential decay to the learning rate. When training a model, it is often recommended to lower the learning rate as the training progresses. This function applies an exponential decay function to a provided initial learning rate. It requires a `global_step` value to compute the decayed learning rate. You can just pass a TensorFlow variable that you increment at each training step. The function returns the decayed learning rate. It is computed as: ```python decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps) ``` If the argument `staircase` is `True`, then `global_step / decay_steps` is an integer division and the decayed learning rate follows a staircase function. Example: decay every 100000 steps with a base of 0.96: ```python ... global_step = tf.Variable(0, trainable=False) starter_learning_rate = 0.1 learning_rate = tf.train.exponential_decay(starter_learning_rate, global_step, 100000, 0.96, staircase=True) # Passing global_step to minimize() will increment it at each step. learning_step = ( tf.train.GradientDescentOptimizer(learning_rate) .minimize(...my loss..., global_step=global_step) ) ``` Args: learning_rate: A scalar `float32` or `float64` `Tensor` or a Python number. The initial learning rate. global_step: A scalar `int32` or `int64` `Tensor` or a Python number. Global step to use for the decay computation. Must not be negative. decay_steps: A scalar `int32` or `int64` `Tensor` or a Python number. Must be positive. See the decay computation above. decay_rate: A scalar `float32` or `float64` `Tensor` or a Python number. The decay rate. staircase: Boolean. If `True` decay the learning rate at discrete intervals name: String. Optional name of the operation. Defaults to 'ExponentialDecay'. Returns: A scalar `Tensor` of the same type as `learning_rate`. The decayed learning rate. Raises: ValueError: if `global_step` is not supplied. """ if global_step is None: raise ValueError("global_step is required for exponential_decay.") with ops.name_scope(name, "ExponentialDecay", [learning_rate, global_step, decay_steps, decay_rate, decay_start_step]) as name: learning_rate = ops.convert_to_tensor(learning_rate, name="learning_rate") dtype = learning_rate.dtype global_step = math_ops.cast(global_step, dtype) decay_steps = math_ops.cast(decay_steps, dtype) decay_rate = math_ops.cast(decay_rate, dtype) decay_start_step = math_ops.cast(decay_start_step, dtype) p = global_step / decay_steps if staircase: p = math_ops.floor(p) return tf.cond(global_step < decay_start_step, lambda: learning_rate, lambda: math_ops.multiply(learning_rate, math_ops.pow(decay_rate, p),name=name)) def piecewise_constant(x, boundaries, values, name=None): with ops.name_scope(name, "PiecewiseConstant", [x, boundaries, values, name]) as name: x = ops.convert_to_tensor(x) #TODO hack chg change this from traing/learning_rate_decay.py # Avoid explicit conversion to x's dtype. This could result in faulty # comparisons, for example if floats are converted to integers. boundaries = ops.convert_n_to_tensor(boundaries, tf.int64) for b in boundaries: if b.dtype.base_dtype != x.dtype.base_dtype: raise ValueError( "Boundaries (%s) must have the same dtype as x (%s)." % ( b.dtype.base_dtype, x.dtype.base_dtype)) # TODO(rdipietro): Ensure that boundaries' elements are strictly increasing. values = ops.convert_n_to_tensor(values) for v in values[1:]: if v.dtype.base_dtype != values[0].dtype.base_dtype: raise ValueError( "Values must have elements all with the same dtype (%s vs %s)." % ( values[0].dtype.base_dtype, v.dtype.base_dtype)) pred_fn_pairs = {} pred_fn_pairs[x <= boundaries[0]] = lambda: values[0] pred_fn_pairs[x > boundaries[-1]] = lambda: values[-1] for low, high, v in zip(boundaries[:-1], boundaries[1:], values[1:-1]): # Need to bind v here; can do this with lambda v=v: ... pred = (x > low) & (x <= high) pred_fn_pairs[pred] = lambda v=v: v # The default isn't needed here because our conditions are mutually # exclusive and exhaustive, but tf.case requires it. default = lambda: values[0] return control_flow_ops.case(pred_fn_pairs, default, exclusive=True) ================================================ FILE: utils/melt/training/training.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file training.py # \author chenghuige # \date 2017-10-21 06:09:05.218921 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function from melt.training.learning_rate_decay import * ================================================ FILE: utils/melt/util.py ================================================ #!/usr/bin/env python # ============================================================================== # \file util.py # \author chenghuige # \date 2016-08-16 19:32:41.443712 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS from tensorflow.python import pywrap_tensorflow import tensorflow.contrib.slim as slim import sys, os, glob, traceback import inspect import six import numpy as np import glob import gezi import melt logging = melt.logging keras = tf.keras # TODO FIXME should use below but now not work def create_restore_fn(checkpoint, model_name, restore_model_name): model_name = gezi.pascal2gnu(model_name) restore_model_name = gezi.pascal2gnu(restore_model_name) variables_to_restore = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, scope=model_name) assert variables_to_restore, tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) prefix = '%s/%s' % (model_name, restore_model_name) # remove model_name def name_in_checkpoint(var): return var.op.name.replace(prefix, restore_model_name) variables_to_restore = {name_in_checkpoint(var):var for var in variables_to_restore if var.op.name.startswith(prefix)} varnames_in_checkpoint = melt.get_checkpoint_varnames(checkpoint) # FIXME wrong.. variables_to_restore = {var2:var for var2 in varnames_in_checkpoint} saver = tf.train.Saver(variables_to_restore) def restore_fn(sess): timer = gezi.Timer('restore var from %s %s' % (restore_model_name, checkpoint)) saver.restore(sess, checkpoint) timer.print() return restore_fn class Model(keras.Model): def __init__(self, **kwargs): super(Model, self).__init__(**kwargs) self.debug = False self.step = -1 self.training = False def train(self): self.training = True def eval(self): self.training = False # def reset_global_step(global_step): # new_global_step = tf.train.get_global_step().assign(global_step) def exists_model(model_dir): return os.path.exists(model_dir) and (not os.path.isdir(model_dir) or glob.glob(model_dir + '/model*ckpt*')) from tensorflow.python.platform import gfile from tensorflow.python.framework.graph_util import convert_variables_to_constants def adjust_lrs(x, ratio=None, name='learning_rate_weights'): if ratio is None: ratios = tf.get_collection(name)[-1] x = x * ratios + tf.stop_gradient(x) * (1 - ratios) else: x = x * ratio + tf.stop_gradient(x) * (1 - ratio) return x def adjust_weights(x, ratio=None, name='learning_rate_weights'): if ratio is None: ratios = tf.get_collection(name)[-1] x = x * ratios else: x = x * ratio return x def try_convert_images(images): if not isinstance(images, (list, tuple, np.ndarray)): images = [images] if isinstance(images[0], (str, np.string_)) and len(images[0]) < 1000: images = [melt.image.read_image(image) for image in images] return images def freeze_graph(sess, model_path, global_step=None, output_collection_names=None, output_node_names=None): if output_collection_names is None and output_node_names is None: return None graph_def = sess.graph_def graph = sess.graph if global_step is not None: # allow 0 outfile = '%s-%d.pb' % (model_path, global_step) outmapfile = '%s-%d.map' % (model_path, global_step) else: outfile = '%s.pb' % model_path outmapfile = '%s.map' % model_path #print('outfile', outfile, 'outmap', outmapfile) if output_node_names is None: output_node_names = [] outmap = open(outmapfile, 'w') for cname in output_collection_names: for item in graph.get_collection(cname): # [TopKV2(values=, indices=)] # f.get_collection('y')[0][0].name Out[17]: u'TopKV2_1:0' # bypass :0 # if not hasattr(item, 'name'): # print('item no name for', item, file=sys.stderr) # continue # :1 for like top_k, :2 for future usage might length 3 tuple if item is None: continue if not (item.name.endswith(':0') or item.name.endswith(':1') or item.name.endswith(':2')): continue opname = item.name[:-2] output_node_names.append(opname) print('%s\t%s' % (cname, item.name), file=outmap) frozen_graph_def = convert_variables_to_constants(sess, graph_def, output_node_names) #print('outfile') with tf.io.gfile.GFile (outfile, "wb") as f: f.write(frozen_graph_def.SerializeToString()) model_dir = os.path.dirname(outfile) #print('model_dir', model_dir) maps = glob.glob('%s/*.map' % model_dir) #print('maps', maps) for map_ in maps: index_file = map_.replace('.map', '.index') if not os.path.exists(index_file): pb_file = map_.replace('.map', '.pb') #print('remove %s %s' % (map_, pb_file)) os.remove(map_) os.remove(pb_file) return frozen_graph_def def is_raw_image(image_features): return isinstance(image_features[0], np.string_) def set_learning_rate(lr, sess=None, name='learning_rate'): if not sess: sess = melt.get_session() sess.run(tf.assign(tf.get_collection(name)[-1], lr)) def multiply_learning_rate(lr, sess=None, name='learning_rate'): if not sess: sess = melt.get_session() sess.run(tf.assign(tf.get_collection(name)[-1], tf.get_collection(name)[-1] * lr)) #https://stackoverflow.com/questions/35164529/in-tensorflow-is-there-any-way-to-just-initialize-uninitialised-variables def init_uninitialized_variables(sess, list_of_variables = None): if list_of_variables is None: list_of_variables = tf.global_variables() uninitialized_variables = list(tf.get_variable(name) for name in sess.run(tf.report_uninitialized_variables(list_of_variables))) uninitialized_variables = tf.group(uninitialized_variables, tf.local_variables_initializer()) sess.run(tf.variables_initializer(uninitialized_variables)) return uninitialized_variables def get_global_step(model_dir, num_steps_per_epoch, fix_step=True): if not model_dir: return 0 checkpoint_path = get_model_path(model_dir) if os.path.isdir(checkpoint_path) or not os.path.exists(checkpoint_path + '.index'): return 0 pre_step = get_model_step(checkpoint_path) if not num_steps_per_epoch or not fix_step: return pre_step pre_epoch = melt.get_model_epoch(checkpoint_path) if pre_epoch is None: return pre_step fixed_pre_step = pre_step if abs(pre_step / num_steps_per_epoch - pre_epoch) > 0.1: fixed_pre_step = int(pre_epoch * num_steps_per_epoch) return fixed_pre_step else: return pre_step def checkpoint_exists(checkpoint_path): return not os.path.isdir(checkpoint_path) and \ os.path.exists(checkpoint_path) or os.path.exists(checkpoint_path + '.index') def get_checkpoint_varnames(model_dir): checkpoint_path = get_model_path(model_dir) #if model_dir is dir then checkpoint_path should be model path not model dir like #/home/gezi/new/temp/image-caption/makeup/model/bow.inceptionResnetV2.finetune.later/model.ckpt-589.5-1011000 #if user input model_dir is like above model path we assume it to be correct and exists not check! if os.path.isdir(checkpoint_path) or not os.path.exists(checkpoint_path + '.index'): return None try: reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) var_to_shape_map = reader.get_variable_to_shape_map() varnames = [var_name for var_name in var_to_shape_map] return varnames except Exception: print(traceback.format_exc()) return None def varname_in_checkpoint(varname_part, model_dir, mode='in'): assert varname_part varnames = get_checkpoint_varnames(model_dir) if not varnames: return False else: varnames_exists = False for varname in varnames: if mode == 'in': if varname_part in varname: varnames_exists = True break elif mode == 'startswith': if varname.startswith(varname_part): varnames_exists = True break elif mode == 'exact_match': if varname_part == varname: varnames_exists = True return varnames_exists def has_image_model(model_dir, image_model_name): return varname_in_checkpoint(image_model_name, model_dir) def try_add_to_collection(name, op): if not tf.get_collection(name): tf.add_to_collection(name, op) def remove_from_collection(key): #must use ref get list and set to empty using [:] = [] or py3 can .clear #https://stackoverflow.com/questions/850795/different-ways-of-clearing-lists l = tf.get_collection_ref(key) l[:] = [] def rename_from_collection(key, to_key, index=0, scope=None): l = tf.get_collection_ref(key) if l: tf.add_to_collection(to_key, l[index]) l[:] = [] #https://stackoverflow.com/questions/44251666/how-to-initialize-tensorflow-variable-that-wasnt-saved-other-than-with-tf-globa def initialize_uninitialized_vars(sess): import itertools from itertools import compress global_vars = tf.global_variables() is_not_initialized = sess.run([~(tf.is_variable_initialized(var)) \ for var in global_vars]) not_initialized_vars = list(compress(global_vars, is_not_initialized)) if len(not_initialized_vars): sess.run(tf.variables_initializer(not_initialized_vars)) #In [3]: tf.contrib.layers.OPTIMIZER_CLS_NAMES #Out[3]: #{'Adagrad': tensorflow.python.training.adagrad.AdagradOptimizer, # 'Adam': tensorflow.python.training.adam.AdamOptimizer, # 'Ftrl': tensorflow.python.training.ftrl.FtrlOptimizer, # 'Momentum': tensorflow.python.training.momentum.MomentumOptimizer, # 'RMSProp': tensorflow.python.training.rmsprop.RMSPropOptimizer, # 'SGD': tensorflow.python.training.gradient_descent.GradientDescentOptimizer} optimizers = { 'grad': tf.train.GradientDescentOptimizer, 'sgd': tf.train.GradientDescentOptimizer, 'adagrad': tf.train.AdagradOptimizer, # TODO notice tensorflow adagrad no epsilon param.. See if kears optimizers better ? #'adagrad': lambda lr: tf.train.AdagradOptimizer(lr, epsilon=1e-06), # keras.optimizers.Adagrad(lr=0.01, epsilon=1e-06) #'adam': tf.train.AdamOptimizer, #'adam': lambda lr: tf.train.AdamOptimizer(lr, beta_1=0.9, beta_2=0.999, epsilon=1e-08), #keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-08) 'adam': lambda lr: tf.train.AdamOptimizer(lr, epsilon=1e-08), 'adam_t2t': lambda lr: tf.train.AdamOptimizer(lr, epsilon=1e-06, beta1=0.85, beta2=0.997), #'adadelta': tf.train.AdadeltaOptimizer 'adadelta': lambda lr: tf.train.AdadeltaOptimizer(lr, epsilon=1e-6), #follow squad, also keras.optimizers.Adadelta(lr=1.0, rho=0.95, epsilon=1e-06) # still not fix https://github.com/tensorflow/tensorflow/pull/15665 'nadam': tf.contrib.opt.NadamOptimizer, # TODO FIXME nadam not work, InvalidArgumentError (see above for traceback): Incompatible shapes: [2737,300] vs. [91677,300] #'momentum': lambda lr, momentum: tf.train.MomentumOptimizer(lr, momentum=momentum) # in melt.app.train #'adamax': tf.contrib.opt.AdaMaxOptimizer, # will got NAN ... #'adamax': lambda lr: tf.contrib.opt.AdaMaxOptimizer(lr, epsilon=1e-8), 'adamax': melt.training.adamax.AdaMaxOptimizer, 'ftrl': tf.train.FtrlOptimizer, #'adamax': tf.keras.optimizers.Adamax, # tf can not directly use kears optimzier... } keras_optimizers = { 'adagrad': tf.keras.optimizers.Adagrad, 'adam': tf.keras.optimizers.Adam, 'adadelta': tf.keras.optimizers.Adadelta, 'nadam': tf.keras.optimizers.Nadam, } def get_session(log_device_placement=False, allow_soft_placement=True, debug=False, device_count=None): """ TODO FIXME get_session will casue at last #Exception UnboundLocalError: "local variable 'status' referenced before assignment" in > ignored #TRACE: 03-17 08:22:26: * 0 [clear]: tag init stat error global or inside function global sess will cause this but not big problem for convenience just accpet right now """ if not hasattr(get_session, 'sess') or get_session.sess is None: if device_count is None: config=tf.ConfigProto(allow_soft_placement=allow_soft_placement, log_device_placement=log_device_placement) else: config=tf.ConfigProto(allow_soft_placement=allow_soft_placement, log_device_placement=log_device_placement, device_count=device_count) use_horovod = 'OMPI_COMM_WORLD_RANK' in os.environ if use_horovod: config.gpu_options.allow_growth = True import horovod.keras as hvd config.gpu_options.visible_device_list = str(hvd.local_rank()) # sess = tf.train.MonitoredTrainingSession(checkpoint_dir=checkpoint_dir, # config=config) #config.operation_timeout_in_ms=600000 #NOTICE https://github.com/tensorflow/tensorflow/issues/2130 but 5000 will cause init problem! #config.operation_timeout_in_ms=50000 # terminate on long hangs #https://github.com/tensorflow/tensorflow/issues/2292 allow_soft_placement=True if FLAGS.use_tpu: tpu_cluster_resolver = None if FLAGS.use_tpu and FLAGS.tpu_name: tpu_cluster_resolver = tf.contrib.cluster_resolver.TPUClusterResolver( FLAGS.tpu_name, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project) get_session.sess = tf.Session(tpu_cluster_resolver) else: get_session.sess = tf.Session(config=config) if debug: from tensorflow.python import debug as tf_debug get_session.sess = tf_debug.LocalCLIDebugWrapperSession(get_session.sess) return get_session.sess def gen_session(graph=None, log_device_placement=False, allow_soft_placement=True, debug=False): config=tf.ConfigProto(allow_soft_placement=allow_soft_placement, log_device_placement=log_device_placement) sess = tf.Session(config=config, graph=graph) if debug: from tensorflow.python import debug as tf_debug sess = tf_debug.LocalCLIDebugWrapperSession(sess) return sess #def get_session(log_device_placement=False, allow_soft_placement=True, debug=False): # """ # TODO FIXME get_session will casue at last ##Exception UnboundLocalError: "local variable 'status' referenced before assignment" in > ignored ##TRACE: 03-17 08:22:26: * 0 [clear]: tag init stat error #global or inside function global sess will cause this but not big problem for convenience just accpet right now # """ # if not hasattr(get_session, 'sess') or get_session.sess is None: # config=tf.ConfigProto( # allow_soft_placement=allow_soft_placement, # log_device_placement=log_device_placement) # #config.operation_timeout_in_ms=600000 # #NOTICE https://github.com/tensorflow/tensorflow/issues/2130 but 5000 will cause init problem! # #config.operation_timeout_in_ms=50000 # terminate on long hangs # sess = tf.Session(config=config) # if debug: # sess = tf_debug.LocalCLIDebugWrapperSession(sess) # return sess def get_optimizer(name): if not isinstance(name, str): return name # TODO how to use keras optimizers especially like nadam ? seems different api # if name.lower() in keras_optimizers: # return keras_optimizers[name.lower()] # elif name.lower() in optimizers: if name.lower() in optimizers: return optimizers[name.lower()] else: return tf.contrib.layers.OPTIMIZER_CLS_NAMES[name] # if name in tf.contrib.layers.OPTIMIZER_CLS_NAMES: # return tf.contrib.layers.OPTIMIZER_CLS_NAMES[name] # else: # return optimizers[name.lower()] def gen_train_op(loss, learning_rate, optimizer=tf.train.AdagradOptimizer): train_op = optimizer(learning_rate).minimize(loss) return train_op def gen_train_op_byname(loss, learning_rate, name='adagrad'): optimizer = optimizers.get(name.lower(), tf.train.AdagradOptimizer) train_op = optimizer(learning_rate).minimize(loss) return train_op #TODO add name, notice if num_gpus=1 is same as num_gpus=0 #but for num_gpus=0 we will not consider multi gpu mode #so num_gpus=1 will not use much, just for mlti gpu test purpose #from https://github.com/tensorflow/models/blob/master/tutorials/image/cifar10/cifar10_multi_gpu_train.py def train() # def tower(loss_function, num_gpus=1, training=True, name=''): # towers = [] # update_ops = [] # for i in range(num_gpus): # with tf.device('/gpu:%d' % i): # #print(tf.get_variable_scope().reuse) # with tf.variable_scope(tf.get_variable_scope(), reuse=bool(i != 0)): # with tf.name_scope('%s_%d' % ('tower', i)) as name_scope: # if 'i' in inspect.getargspec(loss_function).args: # loss = loss_function(i) # else: # loss = loss_function() # # Reuse variables for the next tower. itersting.. not work.. for cifar10 ._conv... # #print(tf.get_variable_scope().reuse) # #tf.get_variable_scope().reuse_variables() # #print(tf.get_variable_scope().reuse) # # REMIND actually for training other metrics like acc... will only record the last one, I think this is enough! # if isinstance(loss, (list, tuple)) and training: # loss = loss[0] # towers.append(loss) # if i == 0 and training: # # Only trigger batch_norm moving mean and variance update from # # the 1st tower. Ideally, we should grab the updates from all # # towers but these stats accumulate extremely fast so we can # # ignore the other stats from the other towers without # # significant detriment. # update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, # name_scope) # if training: # return towers, update_ops # else: # towers = [list(x) if isinstance(x, tuple) else x for x in towers] # return towers # TODO will this be ok.. ? def tower(loss_function, num_gpus=1, training=True, name=''): towers = [] update_ops = [] for i in range(num_gpus): with tf.device('/gpu:%d' % i): #print(tf.get_variable_scope().reuse) with tf.variable_scope(tf.get_variable_scope(), reuse=bool(i != 0)): #with tf.name_scope('%s_%d' % ('tower', i)) as name_scope: if 'i' in inspect.getargspec(loss_function).args: loss = loss_function(i) else: loss = loss_function() # Reuse variables for the next tower. itersting.. not work.. for cifar10 ._conv... #print(tf.get_variable_scope().reuse) #tf.get_variable_scope().reuse_variables() #print(tf.get_variable_scope().reuse) # REMIND actually for training other metrics like acc... will only record the last one, I think this is enough! if isinstance(loss, (list, tuple)) and training: loss = loss[0] towers.append(loss) if i == 0 and training: # Only trigger batch_norm moving mean and variance update from # the 1st tower. Ideally, we should grab the updates from all # towers but these stats accumulate extremely fast so we can # ignore the other stats from the other towers without # significant detriment. # update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, # name_scope) update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS) if training: return towers, update_ops else: towers = [list(x) if isinstance(x, tuple) else x for x in towers] return towers tower_losses = tower # from cifar10_estimator example code # TODO can it be used with out input of batch_size so as can be used for buckets length ? different batch size how to ? def _split_batch(batch_datas, batch_size, num_shards, training=True): #with tf.device('/cpu:0'): batch_datas = [tf.unstack(batch_data, num=batch_size, axis=0) for batch_data in batch_datas] new_batch_datas = [] for i in range(len(batch_datas)): new_batch_datas.append([[] for i in range(num_shards)]) batch_size_per_gpu = batch_size // num_shards assert batch_size == batch_size_per_gpu * num_shards for i in range(batch_size): idx = i % num_shards if training else i // batch_size_per_gpu for j in range(len(batch_datas)): new_batch_datas[j][idx].append(batch_datas[j][i]) def stack(x): try: return tf.parallel_stack(x) except Exception: return tf.stack(x) for i in range(len(batch_datas)): #new_batch_datas[i] = [tf.parallel_stack(x) for x in new_batch_datas[i] if x] new_batch_datas[i] = [stack(x) for x in new_batch_datas[i] if x] return tuple(new_batch_datas) def split_batch(batch_datas, batch_size, num_shards, training=True): with tf.device('/cpu:0'): if num_shards <= 1: # No GPU available or only 1 GPU. return tuple([x] for x in batch_datas) if not isinstance(batch_datas[0], dict): return _split_batch(batch_datas, batch_size, num_shards, training) else: # x, y (x is dict, y not) assert len(batch_datas) == 2 keys = batch_datas[0].keys() #batch_datas = [batch_datas[0][key] for key in keys] + [batch_datas[-1]] batch_datas = list(batch_datas[0].values()) + [batch_datas[-1]] batch_datas = _split_batch(batch_datas, batch_size, num_shards, training) # print(batch_datas) # TODO... why append ok... x = [{}] * num_shards not ok.. # x = [{}] * num_shards x = [] for j in range(num_shards): m = {} for i, key in enumerate(keys): #x[j][key] = batch_datas[i][j] m[key] = batch_datas[i][j] x.append(m) y = batch_datas[-1] return x, y # for i, key in enumerate(keys): # for j in range(num_shards): # x[j][key] = batch_datas[i][j] # y = batch_datas[-1] # print('-----------x', x) # print('-----------y', y) # return x, y #return batch_datas #https://stackoverflow.com/questions/38559755/how-to-get-current-available-gpus-in-tensorflow from tensorflow.python.client import device_lib def get_available_gpus(): #local_device_protos = device_lib.list_local_devices() #return [x.name for x in local_device_protos if x.device_type == 'GPU'] import subprocess n = str(subprocess.check_output(["nvidia-smi", "-L"])).count('UUID') return n def get_num_gpus_specific(): if 'CUDA_VISIBLE_DEVICES' in os.environ: print("os.environ['CUDA_VISIBLE_DEVICES']", os.environ['CUDA_VISIBLE_DEVICES']) if os.environ['CUDA_VISIBLE_DEVICES'] == '-1': return 0 num_gpus = len(os.environ['CUDA_VISIBLE_DEVICES'].split(',')) logging.info('CUDA_VISIBLE_DEVICES is %s'%(os.environ['CUDA_VISIBLE_DEVICES'])) return num_gpus else: return None def get_num_gpus(): num_gpus = get_num_gpus_specific() if num_gpus is None: num_gpus = get_available_gpus() return num_gpus def is_cudnn_cell(cell): return isinstance(cell, (tf.contrib.cudnn_rnn.CudnnGRU, tf.contrib.cudnn_rnn.CudnnLSTM)) # TODO now for hadoop can only run tf 1.2 try: rnn_cells = { 'basic_lstm': tf.contrib.rnn.BasicLSTMCell, 'lstm': tf.contrib.rnn.LSTMCell, #LSTMCell is faster then BasicLSTMCell 'gru': tf.contrib.rnn.GRUCell, 'lstm_block': tf.contrib.rnn.LSTMBlockCell, #LSTMBlockCell is faster then LSTMCell 'lstm_block_fused': tf.contrib.rnn.LSTMBlockFusedCell, 'cudnn_lstm': tf.contrib.cudnn_rnn.CudnnLSTM, 'cudnn_gru': tf.contrib.cudnn_rnn.CudnnGRU, 'cudnn_compat_lstm': tf.contrib.cudnn_rnn.CudnnCompatibleLSTMCell, 'cudnn_compat_gru': tf.contrib.cudnn_rnn.CudnnCompatibleGRUCell, } except Exception: rnn_cells = { 'basic_lstm': tf.contrib.rnn.BasicLSTMCell, 'lstm': tf.contrib.rnn.LSTMCell, #LSTMCell is faster then BasicLSTMCell 'gru': tf.contrib.rnn.GRUCell, 'lstm_block': tf.contrib.rnn.LSTMBlockCell, #LSTMBlockCell is faster then LSTMCell 'lstm_block_fused': tf.contrib.rnn.LSTMBlockFusedCell, } #from https://github.com/tensorflow/models/blob/master/tutorials/rnn/ptb/ptb_word_lm.py lstm_cell() def create_rnn_cell(num_units, is_training=True, initializer=None, forget_bias=1.0, num_layers=1, keep_prob=1.0, input_keep_prob=1.0, Cell=None, cell_type='lstm', scope=None): with tf.variable_scope(scope or 'create_rnn_cell') as scope: if initializer: scope.set_initializer(initializer) if Cell is None: Cell = rnn_cells.get(cell_type.lower(), tf.contrib.rnn.LSTMCell) print('cell:', Cell, file=sys.stderr) if Cell is tf.contrib.cudnn_rnn.CudnnGRU or Cell is tf.contrib.cudnn_rnn.CudnnLSTM: cell = Cell(num_layers=num_layers, num_units=num_units, dropout=(1. - keep_prob)) return cell # Slightly better results can be obtained with forget gate biases # initialized to 1 but the hyperparameters of the model would need to be # different than reported in the paper. def cell_(): # With the latest TensorFlow source code (as of Mar 27, 2017), # the BasicLSTMCell will need a reuse parameter which is unfortunately not # defined in TensorFlow 1.0. To maintain backwards compatibility, we add # an argument check here: if 'reuse' in inspect.getargspec( Cell.__init__).args: if 'forget_bias' in inspect.getargspec(Cell.__init__).args: return Cell( num_units, forget_bias=forget_bias, reuse=tf.get_variable_scope().reuse) else: return Cell( num_units, reuse=tf.get_variable_scope().reuse) else: if 'state_is_tuple' in inspect.getargspec( Cell.__init__).args: if 'forget_bias' in inspect.getargspec( Cell.__init__).args: return Cell(num_units, forget_bias=forget_bias, state_is_tuple=True) else: return Cell(num_units, state_is_tuple=True) else: if 'forget_bias' in inspect.getargspec( Cell.__init__).args: return Cell(num_units, forget_bias=forget_bias) else: return Cell(num_units) attn_cell = cell_ if is_training and (keep_prob < 1 or input_keep_prob < 1): def attn_cell(): return tf.contrib.rnn.DropoutWrapper( cell_(), input_keep_prob=input_keep_prob, output_keep_prob=keep_prob) if num_layers > 1: cell = tf.contrib.rnn.MultiRNNCell( [attn_cell() for _ in range(num_layers)], state_is_tuple=True) else: cell = attn_cell() #--now cell share graph by default so below is wrong.. will share cell for each layer ##cell = tf.contrib.rnn.MultiRNNCell([cell] * num_layers, state_is_tuple=True) return cell def unpack_cell(cell): """Unpack the cells because the stack_bidirectional_dynamic_rnn expects a list of cells, one per layer.""" if isinstance(cell, tf.contrib.rnn.MultiRNNCell): return cell._cells #pylint: disable=W0212 else: return [cell] #-------for train flow def show_precision_at_k(result, k=1): if len(result) == 1: accuracy = result print('precision@%d:'%k, '%.3f'%accuracy) else: loss = result[0] accuracy = result[1] print('loss:', '%.3f'%loss, 'precision@%d:'%k, '%.3f'%accuracy) def print_results(results, names=None): """ standard result print """ results = gezi.get_singles(results) if names is None: print(gezi.pretty_floats(results)) else: if len(names) == len(results) - 1: names.insert(0, 'loss') if len(names) == len(results): print(gezi.get_value_name_list(results, names)) else: print(gezi.pretty_floats(results)) def logging_results(results, names, tag=''):\ logging.info('\t'.join( [tag] + ['%s:[%.4f]'%(name, result) for name, result in zip(names, results)])) def parse_results(results, names=None): if type(results[0]) is str: temp = results results = names names = temp #only single values in results! if names is None: return gezi.pretty_floats(results) else: if len(names) == len(results) - 1: names.insert(0, 'loss') if len(names) == len(results): return gezi.get_value_name_list(results, names) else: return gezi.pretty_floats(results) def value_name_list_str(results, names=None): if names is None: return gezi.pretty_floats(results) else: return gezi.get_value_name_list(results, names) #-------model load #def get_model_path(model_dir, model_name=None): # """ # if model_dir ok return latest model in this dir # else return orginal model_dir as a model path # NOTICE not check if this model path is ok(assume it to be ok) # """ # model_path = model_dir # ckpt = tf.train.get_checkpoint_state(model_dir) # if ckpt and ckpt.model_checkpoint_path: # #@NOTICE below code will be ok int tf 0.10 but fail int 0.11.rc tensorflow ValueError: Restore called with invalid save path # #do not use ckpt.model_checkpoint_path for we might copy the model to other path so the absolute path(you might train using absoluate path) will not match # #model_path = '%s/%s'%(model_dir, os.path.basename(ckpt.model_checkpoint_path)) # model_path = os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) # else: # model_path = model_dir if model_name is None else os.path.join(model_dir, model_name) # #assert os.path.exists(model_path), model_path # #tf.logging.log_if(tf.logging.WARN, '%s not exist'%model_path, not os.path.exists(model_path)) # #if not os.path.exists(model_path): # #model_path = None # #tf.logging.WARN('%s not exist'%model_path) # #raise FileNotFoundError(model_path) # #raise ValueError(model_path) # return model_path def latest_checkpoint(model_dir): return get_model_path(model_dir) def get_model_dir_and_path(model_dir, model_name=None): model_path = model_dir ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #model_path = '%s/%s'%(model_dir, os.path.basename(ckpt.model_checkpoint_path)) model_path = os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) else: model_path = model_dir if model_name is None else os.path.join(model_dir, model_name) #if not os.path.exists(model_path+'.index'): # raise ValueError(model_path) return gezi.dirname(model_path), model_path def get_model_dir(model_dir, model_name=None): model_path = model_dir ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #model_path = '%s/%s'%(model_dir, os.path.basename(ckpt.model_checkpoint_path)) model_path = os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) else: model_path = model_dir if model_name is None else os.path.join(model_dir, model_name) #if not os.path.exists(model_path+'.index'): # raise ValueError(model_path) return gezi.dirname(model_path) def get_model_path(model_dir, model_name=None): model_path = model_dir ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #model_path = '%s/%s'%(model_dir, os.path.basename(ckpt.model_checkpoint_path)) model_path = os.path.join(model_dir, os.path.basename(ckpt.model_checkpoint_path)) else: model_path = model_dir if model_name is None else os.path.join(model_dir, model_name) #if not os.path.exists(model_path+'.index'): # raise ValueError(model_path) return model_path #cat checkpoint #model_checkpoint_path: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-256000" #all_model_checkpoint_paths: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-252000" #all_model_checkpoint_paths: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-253000" #all_model_checkpoint_paths: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-254000" #all_model_checkpoint_paths: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-255000" #all_model_checkpoint_paths: "/home/gezi/temp/image-caption//model.flickr.show_and_tell/model.ckpt-256000" def recent_checkpoint(model_dir, latest=False): index = -1 if latest else 1 return open('%s/checkpoint'%(model_dir)).readlines()[index].split()[-1].strip('"') def checkpoint_exists_in(model_dir): if not os.path.exists(model_dir): return False ckpt = tf.train.get_checkpoint_state(model_dir) if ckpt and ckpt.model_checkpoint_path: #input valid dir and return latest model return True elif os.path.isdir(model_dir): return False else: #this might be user specified model like ./model/model-100.ckpt #the file exists and we NOTICE we do not check if it is valid model file! return True def get_model_step(model_path): return int(model_path.split('/')[-1].split('-')[-1]) def get_model_epoch(model_path): try: return float(model_path.split('/')[-1].split('-')[-2]) except Exception: return None def get_model_epoch_from_dir(model_dir): model_path = get_model_path(model_dir) try: return float(model_path.split('/')[-1].split('-')[-2]) except Exception: return None def get_model_step_from_dir(model_dir): model_path = get_model_path(model_dir) return int(model_path.split('/')[-1].split('-')[-1]) def save_model(sess, model_dir, step): checkpoint_path = os.path.join(model_dir, 'model.ckpt') tf.train.Saver().save(sess, checkpoint_path, global_step=step) def restore(sess, model_dir, var_list=None, model_name=None): assert model_dir if var_list is None: varnames_in_checkpoint = melt.get_checkpoint_varnames(model_dir) #logging.info('varnames_in_checkpoint: {}'.format(varnames_in_checkpoint)) var_list = slim.get_variables_to_restore(include=varnames_in_checkpoint) saver = tf.train.Saver(var_list) model_path = get_model_path(model_dir, model_name) #assert model_path and os.path.exists(model_path), model_path saver.restore(sess, model_path) #@TODO still write to file ? using > print('restore ok:', model_path, file=sys.stderr) sess.run(tf.local_variables_initializer()) return saver def restore_from_path(sess, model_path, var_list=None): if var_list is None: varnames_in_checkpoint = melt.get_checkpoint_varnames(model_path) #logging.info('varnames_in_checkpoint: {}'.format(varnames_in_checkpoint)) var_list = slim.get_variables_to_restore(include=varnames_in_checkpoint) saver = tf.train.Saver(var_list) saver.restore(sess, model_path) print('restore ok:', model_path, file=sys.stderr) sess.run(tf.local_variables_initializer()) return saver def restore_scope_from_path(sess, model_path, scope): variables = tf.get_collection( tf.GraphKeys.GLOBAL_VARIABLES, scope=scope) saver = tf.train.Saver(variables) saver.restore(sess, model_path) print('restore ok:', model_path, file=sys.stderr) sess.run(tf.local_variables_initializer()) return saver def load(model_dir, model_name=None): """ create sess and load from model, return sess use load for predictor, be sure to build all predict related graph ready before calling melt.load """ sess = get_session() restore(sess, model_dir, model_name) return sess def load_from_path(model_path): """ create sess and load from model, return sess use load for predictor, be sure to build all predict related graph ready before calling melt.load """ sess = get_session() restore_from_path(sess, model_path) return sess def list_models(model_dir, time_descending=True): """ list all models in model_dir """ # TODO check index replace meta files = [file for file in glob.glob('%s/model.ckpt-*'%(model_dir)) if not file.endswith('.index')] files.sort(key=lambda x: os.path.getmtime(x), reverse=time_descending) return files def variables_with_scope(scope): #scope is a top scope here, otherwise change startswith part return [v for v in tf.all_variables() if v.name.startswith(scope)] import numpy #@TODO better def npdtype2tfdtype(data_npy): if data_npy.dtype == numpy.float32: return tf.float32 if data_npy.dtype == numpy.int32: return tf.int32 if data_npy.dtype == numpy.int64: return tf.int64 if data_npy.dtype == numpy.float64: return tf.float32 return tf.float32 def load_constant(data_npy, sess=None, trainable=False, dtype=None, shape=None, name=None): """ tf.constant only can be used for small data so melt.constant means melt.large_constant and have more general usage https://stackoverflow.com/questions/35687678/using-a-pre-trained-word-embedding-word2vec-or-glove-in-tensorflow """ name=name or 'constant_data' if not hasattr(load_constant, 'constants'): load_constant.constants = {} if name in load_constant.constants: return load_constant.constants[name] #or if isinstance(data_npy, str) if type(data_npy) is str: timer = gezi.Timer('np load %s' % data_npy) data_npy = np.load(data_npy) timer.print_elapsed() if dtype is None: dtype = npdtype2tfdtype(data_npy) #dtype = tf.float32 if shape is None: shape = data_npy.shape # BELOW is ok but since not add to collections in tf_train_flow will not save.., if add to collections=[tf.GraphKeys.GLOBAL_VARIABLES] then sess.run(init_op) still need to feed # data_init = tf.placeholder(dtype, shape) # #data = tf.get_variable(name=name, dtype=dtype, initializer=data_init, trainable=trainable, collections=[tf.GraphKeys.GLOBAL_VARIABLES]) # data = tf.get_variable(name=name, dtype=dtype, initializer=data_init, trainable=trainable, collections=[]) # load_constant.constants[name] = data # if sess is None: # sess = melt.get_session() # timer = gezi.Timer('sess run initializer') # sess.run(data.initializer, feed_dict={data_init: data_npy}) # timer.print_elapsed() # return data # TODO below is slow strage, some times not slow.., but should use below and above is just a ungly workaround.. and it has problem not save emb.. so just use below... # NOTICE in tf_train_flow sess.run(init_op) will run this again, slow again! TODO better handel timer = gezi.Timer('constant_initializer') data = tf.get_variable(name, shape=shape, initializer=tf.constant_initializer(data_npy), trainable=trainable) load_constant.constants[name] = data timer.print_elapsed() return data def load_constant_cpu(data_npy, sess=None, trainable=False, dtype=None, shape=None, name=None): with tf.device('/CPU:0'): return load_constant(data_npy, sess=sess, trainable=trainable, dtype=dtype, shape=shape, name=name) def reuse_variables(): tf.get_variable_scope().reuse_variables() #---now work.. can set attribute reuse #def unreuse_variables(): # tf.get_variable_scope().reuse=None #------------------------------------tf record save @TODO move to tfrecords def int_feature(value): if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) def int64_feature(value): if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) def bytes_feature(value): if not isinstance(value, (list,tuple)): value = [value] if not six.PY2: if isinstance(value[0], str): value = [x.encode() for x in value] return tf.train.Feature(bytes_list=tf.train.BytesList(value=value)) def float_feature(value): if not isinstance(value, (list,tuple)): value = [value] return tf.train.Feature(float_list=tf.train.FloatList(value=value)) features = lambda d: tf.train.Features(feature=d) # Helpers for creating SequenceExample objects copy from \tensorflow\python\kernel_tests\parsing_ops_test.py feature_list = lambda l: tf.train.FeatureList(feature=l) feature_lists = lambda d: tf.train.FeatureLists(feature_list=d) def int64_feature_list(values): """Wrapper for inserting an int64 FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[int64_feature(v) for v in values]) def bytes_feature_list(values): """Wrapper for inserting a bytes FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[bytes_feature(v) for v in values]) def float_feature_list(values): """Wrapper for inserting a bytes FeatureList into a SequenceExample proto.""" return tf.train.FeatureList(feature=[float_feature(v) for v in values]) def get_num_records_single(tf_record_file): return len([x for x in tf.python_io.tf_record_iterator(tf_record_file)]) def get_num_records(files): if isinstance(files, str): files = gezi.list_files(files) return sum([get_num_records_single(file) for file in files]) def get_num_records_print(files): num_records = 0 if isinstance(files, str): files = gezi.list_files(files) num_inputs = len(files) index = 0 for file in files: count = get_num_records_single(file) print(file, count, '%.3f'%(index / num_inputs)) num_records += count index += 1 print('num_records:', num_records) return num_records def load_num_records(input): num_records_file = os.path.dirname(input) + '/num_records.txt' num_records = int(open(num_records_file).read()) if os.path.isfile(num_records_file) else 0 return num_records def get_num_records_from_dir(dir_): num_records_file = dir_ + '/num_records.txt' num_records = int(open(num_records_file).read()) if os.path.isfile(num_records_file) else 0 return num_records # def get_num_records(): # import dconf # return dconf.NUM_RECORDS # def get_num_steps_per_epoch(batch_size): # #need dconf.py with NUM_RECORDS setting 0 at first # import dconf # num_records = dconf.NUM_RECORDS # return num_records // batch_size #-------------histogram util def monitor_train_vars(collections=None): for var in tf.trainable_variables(): tf.histogram_summary(var.op.name, var, collections=collections) class MonitorKeys(): TRAIN = 'train_monitor' #@FIXME seems not work get_collection always None from tensorflow.python.framework import ops def monitor_gradients_from_loss(loss, collections=[MonitorKeys.TRAIN]): grads = tf.gradients(loss, tf.trainable_variables()) for grad in grads: if grad is not None: tf.histogram_summary(grad.op.name, grad, collections=collections) else: raise ValueError('None grad') #TODO check op.name or .name ? diff? def histogram_summary(name, tensor): tf.summary.histogram('{}_{}'.format(name, tensor.op.name), tensor) def scalar_summary(name, tensor): tf.summary.scalar('{}/{}'.format(name, tensor.op.name), tensor) def monitor_embedding(emb, vocab, vocab_size): try: histogram_summary('emb_0', tf.gather(emb, 0)) histogram_summary('emb_1', tf.gather(emb, 1)) histogram_summary('emb_2', tf.gather(emb, 2)) histogram_summary('emb_1/4', tf.gather(emb, vocab_size // 4)) histogram_summary('emb_middle', tf.gather(emb, vocab_size // 2)) histogram_summary('emb_3/4', tf.gather(emb, vocab_size // 4 * 3)) histogram_summary('emb_end', tf.gather(emb, vocab_size - 1)) histogram_summary('emb_end2', tf.gather(emb, vocab_size - 2)) histogram_summary('emb_start_id', tf.gather(emb, vocab.start_id())) histogram_summary('emb_end_id', tf.gather(emb, vocab.end_id())) histogram_summary('emb_unk_id', tf.gather(emb, vocab.unk_id())) except Exception: print('monitor_embedding fail', file=sys.stderr) def visualize_embedding(emb, vocab_txt='vocab.txt'): # You can add multiple embeddings. Here we add only one. embedding = melt.flow.projector_config.embeddings.add() embedding.tensor_name = emb.name # Link this tensor to its metadata file (e.g. labels). if not vocab_txt.endswith('.project'): if vocab_txt.endswith('.bin'): embedding.metadata_path = vocab_txt.replace('.bin', '.project') elif vocab_txt.endswith('.txt'): embedding.metadata_path = vocab_txt.replace('.txt', '.project') else: embedding.metadata_path = vocab_txt[:vocab_txt.rindex('.')] + '.project' def get_summary_ops(): return ops.get_collection(ops.GraphKeys.SUMMARIES) def print_summary_ops(): print('summary ops:') sops = ops.get_collection(ops.GraphKeys.SUMMARIES) for sop in sops: print(sop) def print_global_varaiables(sope=None): for item in tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES): print(item) def print_varaiables(key, sope=None): for item in tf.get_collection(key): print(item) def get_global_int(key, val=0): if key not in os.environ: return val return int(os.environ[key]) def get_global_float(key, val=0.): if key not in os.environ: return val return float(os.environ[key]) def get_global_str(key): if key not in os.environ: os.environ[key] = '' return os.environ[key] global_dict = {} def get_global(key): return global_dict[key] def step(): return get_global_int('step', 0.) def epoch(): return get_global_float('epoch', 0.) def batch_size(): return get_global_int('batch_size') def num_gpus(): return get_global_int('num_gpus', 1) def loss(): loss_ = get_global_str('eval_loss') if not loss_: loss_ = get_global_str('train_loss') if not loss_: loss_ = get_global_str('loss') return loss_ def train_loss(): return get_global_str('train_loss') def eval_loss(): return get_global_str('eval_loss') def duration(): return get_global_float('duration') def set_global(key, value): os.environ[key] = str(value) def add_global(key, value): global_dict[key] = value #def step(): # return melt.flow.global_step #def epoch(): # return melt.flow.global_epoch #---------for flow def default_names(length): names = ['metric%d'%(i - 1) for i in range(length)] names[0] = 'loss' return names # TODO better handle, just use op.name , but right now has some problem # especially optimizer will change op.name ... not readable so now # you have to pass the name by yourself manully def adjust_names(ops, names): assert ops if names is None: #return [x.name.split('/')[-1].split(':')[0] for x in ops] #return [x.name for x in ops] return default_names(len(ops)) else: if len(names) == len(ops): return names elif len(names) + 1 == len(ops): names.insert(0, 'loss') return names elif len(names) + 2 == len(ops): names.insert(0, 'loss') names.insert(1, 'lr') else: #return [x.name.split('/')[-1].split(':')[0]for x in ops] #return [x.name for x in ops] return default_names(len(ops)) def add_summarys(summary, values, names, suffix='', prefix=''): for value, name in zip(values, names): if suffix: summary.value.add(tag='%s/%s'%(name, suffix), simple_value=float(value)) else: if prefix: summary.value.add(tag='%s/%s'%(prefix, name), simple_value=float(value)) else: summary.value.add(tag=name, simple_value=float(value)) def add_summary(summary, value, name, suffix='', prefix=''): if suffix: summary.value.add(tag='%s/%s'%(name, suffix), simple_value=float(value)) else: if prefix: summary.value.add(tag='%s/%s'%(prefix, name), simple_value=float(value)) else: summary.value.add(tag=name, simple_value=float(value)) #-----------deal with text TODO move # TODO pad for weights start end only zero right now! import melt # TODO def pad_weights(text, weights, start_id=None, end_id=None, end_weight=1.0): pass # TODO simplify without weights def pad(text, start_id=None, end_id=None, weights=None, end_weight=1.0): logging.info('Pad with start_id', start_id, ' end_id', end_id) need_start_mark = start_id is not None need_end_mark = end_id is not None if not need_start_mark and not need_end_mark: return text, melt.length(text), weights batch_size = tf.shape(text)[0] zero_pad = tf.zeros([batch_size, 1], dtype=text.dtype) sequence_length = melt.length(text) if not need_start_mark: text = tf.concat([text, zero_pad], 1) if weights is not None: weights = tf.concat([weights, tf.ones_like(zero_pad, dtype=tf.float32) * end_weight], 1) else: if need_start_mark: start_pad = zero_pad + start_id if need_end_mark: text = tf.concat([start_pad, text, zero_pad], 1) if weights is not None: weights = tf.concat([tf.zeros_like(start_pad, dtype=tf.float32), weights, tf.ones_like(zero_pad, dtype=tf.float32) * end_weight], 1) else: text = tf.concat([start_pad, text], 1) if weights is not None: weights = tf.concat([tf.zeros_like(start_pad, dtype=tf.float32), weights], 1) sequence_length += 1 if need_end_mark: text = melt.dynamic_append_with_length( text, sequence_length, tf.constant(end_id, dtype=text.dtype)) if weights is not None: weights = melt.dynamic_append_with_length_float32( weights, sequence_length, tf.constant(end_weight, dtype=weights.dtype)) sequence_length += 1 return text, sequence_length, weights class GpuHanler(object): def __init__(self, num_gpus=None): self._cur_gpu = 0 def next_device(self): """Round robin the gpu device. (Reserve last gpu for expensive op).""" if self._num_gpus == 0: return '' dev = '/gpu:%d' % self._cur_gpu if self._num_gpus > 1: self._cur_gpu = (self._cur_gpu + 1) % (self._num_gpus-1) return dev def count_records(files): import multiprocessing from multiprocessing import Value counter = Value('i', 0) def deal_file(file): try: count = melt.get_num_records_single(file) except Exception: print('bad file:', file) global counter with counter.get_lock(): counter.value += count pool = multiprocessing.Pool() pool.map(deal_file, files) pool.close() pool.join() return counter.value def sparse2dense(features, key=None): def sparse2dense_(features, key): val = features[key] val = melt.sparse_tensor_to_dense(val) features[key] = val if key: sparse2dense(features, key) else: from tensorflow.python.framework.sparse_tensor import SparseTensor for key, val in features.items(): if isinstance(val, SparseTensor): sparse2dense_(features, key) class GlobalStep(): def __init__(self, step): self.step = step def assign(self, step): self.step = step def assign_add(self, step): self.step += step def numpy(self): return self.step def value(self): return self.step class LearningRate(): def __init__(self, lr): self.lr = lr def assign(self, lr): self.lr = lr def numpy(self): return self.lr def value(self): return self.lr def __mul__(self, scalar): return self.lr * scalar ================================================ FILE: utils/melt/utils/__init__.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file __init__.py # \author chenghuige # \date 2016-10-06 11:13:00.567854 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #import melt.utils.logging import gezi.melt.logging from melt.utils.embsim import EmbeddingSim import melt.utils.weight_decay import melt.utils.summary ================================================ FILE: utils/melt/utils/embsim.py ================================================ #!/usr/bin/env python # ============================================================================== # \file embsim.py # \author chenghuige # \date 2017-08-09 15:17:18.499275 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import os import numpy as np import tensorflow as tf import melt def zero_first_row(emb): #return tf.concat([tf.zeros([1, emb.get_shape()[1]]), tf.ones([emb.get_shape()[0] - 1, emb.get_shape()[1]])], 0) shape = tf.shape(emb) return tf.concat([tf.zeros([1, shape[1]]), tf.ones([shape[0] - 1, shape[1]])], 0) class EmbeddingSim: def __init__(self, emb=None, fixed_emb=None, name=None, fixed_name=None, model_dir=None, model_name=None, sess=None): self._sess = sess or tf.InteractiveSession() if os.path.isdir(emb): model_dir = emb if model_dir is None: if isinstance(emb, str): emb = np.load(emb) emb = melt.load_constant(emb, name=name) if isinstance(fixed_emb, str): #fixed_emb is corpus embeddings, all sumed and normed already fixed_emb = melt.load(fixed_emb, name=fixed_emb) else: model_path = melt.get_model_path(model_dir, model_name) emb = tf.Variable(0., name=name, validate_shape=False) #emb = tf.Variable(0., name=name) #like word2vec the name is 'w_in' embedding_saver = tf.train.Saver({name: emb}) embedding_saver.restore(self._sess, model_path) #assume 0 index not used, 0 for PAD mask = zero_first_row(emb) emb = tf.multiply(emb, mask) self._emb = emb self._fixed_emb = fixed_emb self._normed_emb = None def sum_emb(self, ids): """ ids [batch_size, max_words_per_sentence] """ return melt.batch_embedding_lookup_sum(self._emb, ids) def to_feature(self, ids): return tf.nn.l2_normalize(self.sum_emb(ids), -1) def sim(self, left_ids, right_ids): """ [x, ..] [y, ..] -> [x, y] """ left_feature = self.to_feature(left_ids) right_feature = self.to_feature(right_ids) return melt.dot(left_feature, right_feature) def top_sim(self, left_ids, right_ids, topn=50, sorted=True): """ top sim text """ score = self.sim(left_ids, right_ids) return tf.nn.top_k(score, topn, sorted=sorted) def all_score(self, ids): feature = self.to_feature(ids) if self._normed_emb is None: self._normed_emb = tf.nn.l2_normalize(self._emb, -1) return melt.dot(feature, self._normed_emb) def nearby(self, ids, topn=50, sorted=True): """ ids [x, ..] -> [x, vocab_size] nearby word """ score = self.all_score(ids) return tf.nn.top_k(score, topn, sorted=sorted) def fixed_sim(self, left_ids, right_ids): left_feature = tf.nn.embedding_lookup(self._fixed_emb, left_ids) right_feature = tf.nn.embedding_lookup(self._fixed_emb, right_ids) return melt.dot(left_feature, right_feature) def fixed_right_sim(self, left_ids): left_feature = self.to_feature(left_ids) right_feature = tf.nn.embedding_lookup(self._fixed_emb, right_ids) return melt.dot(left_feature, right_feature) def fixed_all_score(self, ids): feature = self.embedding_lookup(self._fixed_emb, ids) return melt.dot(feature, self._fixed_emb) def fixed_nearyby(self, ids, topn=50, sorted=True): score = self.fixed_all_score(ids) return tf.nn.top_k(score, topn, sorted=sorted) def fixed_right_all_score(self, ids): feature = self.to_feature(ids) return melt.dot(feature, self._fixed_emb) def fixed_right_nearyby(self, ids, topn=50, sorted=True): score = self.fixed_right_all_score(ids) return tf.nn.top_k(score, topn, sorted=sorted) def dum_fixed_emb(self, ids, ofile): feature = self.to_feature(ids) np.save(ofile, feature) def dum_emb(self, ofile): np.save(ofile, self._emb) ================================================ FILE: utils/melt/utils/logging.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file logging.py # \author chenghuige # \date 2016-09-24 09:25:56.796006 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS import sys import os import logging import logging.handlers import gezi _logger = logging.getLogger('melt') _logger2 = logging.getLogger('melt2') #_handler = logging.StreamHandler() #_handler.setLevel(logging.INFO) #_handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) #_logger.addHandler(_handler) #_logger.setLevel(logging.INFO) log = _logger.log #debug = _logger.debug #error = _logger.error #fatal = _logger.fatal #info = _logger.info #warn = _logger.warn #warning = _logger.warning #info2 = _logger2.info hvd = None def set_hvd(hvd_): global hvd hvd = hvd_ def info(*args): if not hvd or hvd.rank() == 0: _logger.info(' '.join("{}".format(a) for a in args)) def info2(*args): if not hvd or hvd.rank() == 0: _logger2.info(' '.join("{}".format(a) for a in args)) def fatal(*args): if not hvd or hvd.rank() == 0: _logger.fatal(' '.join("{}".format(a) for a in args)) def error(*args): if not hvd or hvd.rank() == 0: _logger.error(' '.join("{}".format(a) for a in args)) def debug(*args): if not hvd or hvd.rank() == 0: _logger.debug(' '.join("{}".format(a) for a in args)) def warn(*args): if not hvd or hvd.rank() == 0: _logger.warn(' '.join("{}".format(a) for a in args)) def warning(*args): if not hvd or hvd.rank() == 0: _logger.warning('WARNING: %s' % (' '.join("{}".format(a) for a in args))) from datetime import timedelta import time class ElapsedFormatter(): def __init__(self): self.start_time = time.time() def format(self, record): elapsed_seconds = record.created - self.start_time #using timedelta here for convenient default formatting elapsed = timedelta(seconds = elapsed_seconds) return "{} {} {}".format(gezi.now_time(), str(elapsed)[:-7], record.getMessage()) _logging_file = None _logging_file2 = None def _get_handler(file, formatter, split=True, split_bytime=False, mode = 'a', level=logging.INFO): #setting below will set root logger write to _logging_file #logging.basicConfig(filename=_logging_file, level=level, format=None) #logging.basicConfig(filename=_logging_file, level=level) #save one per 1024k/4, save at most 10G 1024 if split: if not split_bytime: file_handler = logging.handlers.RotatingFileHandler(file, mode=mode, maxBytes=1024*1024/4, backupCount=10240*4) else: file_handler = logging.handlers.TimedRotatingFileHandler(file, when='H', interval=1, backupCount=1024) file_handler.suffix = "%Y%m%d-%H%M" else: file_handler = logging.FileHandler(_logging_file, mode=mode) file_handler.setLevel(level) file_handler.setFormatter(formatter) return file_handler def set_dir(path, file='log.html', logtostderr=True, logtofile=True, split=True, split_bytime=False, level=logging.INFO, mode='a'): global _logger, _logging_file if _logging_file is None: if not path: path = '/tmp/' _logging_file = '%s/%s'%(path, file) _logging_file2 = '%s/log.txt'%path #formatter = logging.Formatter("%(asctime)s %(message)s", # "%Y-%m-%d %H:%M:%S") formatter = ElapsedFormatter() if logtofile: gezi.try_mkdir(path) file_handler = _get_handler(_logging_file, formatter, split, split_bytime, mode, level) file_handler2 = _get_handler(_logging_file2, formatter, split, True, mode, level) #file_handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) _logger.addHandler(file_handler) _logger2.addHandler(file_handler2) if logtostderr: handler = logging.StreamHandler() handler.setLevel(logging.INFO) handler.setFormatter(formatter) #handler.setFormatter(logging.Formatter(logging.BASIC_FORMAT, None)) _logger.addHandler(handler) _logger2.addHandler(handler) # some how new tf cause to logg twice.. # https://stackoverflow.com/questions/19561058/duplicate-output-in-simple-python-logging-configuration _logger.propagate = False _logger2.propagate = False _logger.setLevel(level) _logger2.setLevel(level) def init(path, file='log.html', logtostderr=True, logtofile=True, split=True, split_bytime=False, level=logging.INFO, mode='a'): #logging.basicConfig(level=logging.INFO, stream=sys.stdout) set_dir(path=path, mode=mode, file=file, logtostderr=logtostderr, logtofile=logtofile, split=split, split_bytime=split_bytime, level=level) def vlog(level, msg, *args, **kwargs): _logger.log(level, msg, *args, **kwargs) def get_verbosity(): """Return how much logging output will be produced.""" return _logger.getEffectiveLevel() def set_verbosity(verbosity): """Sets the threshold for what messages will be logged.""" _logger.setLevel(verbosity) def get_logging_file(): return _logging_file ================================================ FILE: utils/melt/utils/summary.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file summary.py # \author chenghuige # \date 2019-07-22 19:09:08.471338 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os # Code referenced from https://gist.github.com/gyglim/1f8dfb1b5c82627ae3efcfbbadb9f514 import tensorflow as tf import numpy as np import scipy.misc try: from StringIO import StringIO # Python 2.7 except ImportError: from io import BytesIO # Python 3.x import matplotlib.pyplot as plt import cv2 class SummaryWriter(object): def __init__(self, log_dir): """Create a summary writer logging to log_dir.""" self.writer = tf.summary.FileWriter(log_dir) def scalar_summary(self, tag, value, step): """Log a scalar variable.""" summary = tf.Summary(value=[tf.Summary.Value(tag=tag, simple_value=value)]) self.writer.add_summary(summary, step) self.writer.flush() def image_summary(self, tag, images, step, texts=None): """Log a list of images.""" img_summaries = [] if texts: assert len(images) == len(texts) for i, img in enumerate(images): # Write the image to a string try: s = StringIO() except: s = BytesIO() if not texts: scipy.misc.toimage(img).save(s, format="png") else: fig, ax = plt.subplots(nrows=1,ncols=1) ax.set_title('abcdef', fontsize=40) ax.imshow(img) plt.savefig(s, format='png', bbox_inches='tight') # Create an Image object img_sum = tf.Summary.Image(encoded_image_string=s.getvalue(), height=img.shape[0], width=img.shape[1]) # Create a Summary value img_summaries.append(tf.Summary.Value(tag='%s/%d' % (tag, i), image=img_sum)) # Create and write Summary summary = tf.Summary(value=img_summaries) self.writer.add_summary(summary, step) self.writer.flush() def history_summary(self, tag, values, step, bins=1000): """Log a histogram of the tensor of values.""" # Create a histogram using numpy counts, bin_edges = np.histogram(values, bins=bins) # Fill the fields of the histogram proto hist = tf.HistogramProto() hist.min = float(np.min(values)) hist.max = float(np.max(values)) hist.num = int(np.prod(values.shape)) hist.sum = float(np.sum(values)) hist.sum_squares = float(np.sum(values**2)) # Drop the start of the first bin bin_edges = bin_edges[1:] # Add bin edges and counts for edge in bin_edges: hist.bucket_limit.append(edge) for c in counts: hist.bucket.append(c) # Create and write Summary summary = tf.Summary(value=[tf.Summary.Value(tag=tag, histo=hist)]) self.writer.add_summary(summary, step) self.writer.flush() ================================================ FILE: utils/melt/utils/weight_decay.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file util.py # \author chenghuige # \date 2018-02-24 11:39:22.566492 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS tfe = tf.contrib.eager #import sys, os import melt #logging = melt.utils.logging #import logging #print(dir(melt)) # FIXME TODO Why... not found melt.utils ??! #import melt.utils.logging as logging #import gezi import numpy as np class WeightDecay(object): def __init__(self, weight_op='learning_rate_weight', patience=3, decay=0.8, cmp=None, min_weight=None, min_learning_rate=None, initial_learning_rate=None, decay_start_epoch=0, sess=None): import melt.utils.logging as logging if not tf.executing_eagerly(): self.sess = sess or melt.get_session() if isinstance(weight_op, str): try: # by default melt.apps.train will generate weight op Var named 'learning_rate_weight' TODO may be hold it just here # so currently graph model will go here self.weight_op = tf.get_collection(weight_op)[-1] self.name = weight_op except Exception: raise 'TODO..' # print('-------------------------Weight Decay change!') # so currently eager mode will go here #learning_rate_weight = tf.get_variable('learning_rate_weight', initializer= tf.ones(shape=(), dtype=tf.float32)) #learning_rate_weight = tf.Variable(tf.ones(shape=(), dtype=tf.float32), name='learning_rate_weight') # TODO tfe.Var should only be used in keras.Model init ? notice eager mode can not use tf.Variable # learning_rate_weight = tfe.Variable(tf.ones(shape=(), dtype=tf.float32), name='learning_rate_weight') # tf.add_to_collection('learning_rate_weight', learning_rate_weight) # self.weight_op = learning_rate_weight else: self.weight_op = weight_op self.name = 'weight' if cmp == 'less': self.cmp = lambda x, y: x < y elif cmp== 'greater': self.cmp = lambda x, y: x > y else: self.cmp = cmp self.score = None self.max_patience = patience self.decay = decay self.patience = 0 self.count = 0 self.min_weight = min_weight if not self.min_weight: self.min_weight = min_learning_rate / (initial_learning_rate or FLAGS.learning_rate) # This is done in melt.flow # weight = self.sess.run(self.weight_op) # if 'learning_rate' in self.name: # melt.set_learning_rate(tf.constant(weight, dtype=tf.float32), self.sess) self.decay_start_epoch = decay_start_epoch def add(self, score): import melt.utils.logging as logging if not tf.executing_eagerly(): weight = self.sess.run(self.weight_op) else: weight = self.weight_op #print(weight, score, self.score, self.patience) if (not self.cmp) and self.score: if score > self.score: self.cmp = lambda x, y: x > y else: self.cmp = lambda x, y: x < y logging.info('decay cmp:', self.cmp) if not self.score or self.cmp(score, self.score): self.score = score self.patience = 0 else: self.patience += 1 # epoch is set during training loop epoch = melt.epoch() logging.info('patience:', self.patience) if epoch < self.decay_start_epoch: return if self.patience >= self.max_patience: self.count += 1 self.patience = 0 self.score = score decay = self.decay pre_weight = weight #weight *= decay weight = weight * decay # decay if self.min_weight and weight < self.min_weight: weight = self.min_weight decay = weight / pre_weight if decay > 1.: decay = 1. logging.info('!decay count:', self.count, self.name, 'now:', weight) if not tf.executing_eagerly(): self.sess.run(tf.assign(self.weight_op, tf.constant(weight, dtype=tf.float32))) else: self.weight_op = weight if 'learning_rate' in self.name: if not tf.executing_eagerly(): melt.multiply_learning_rate(tf.constant(decay, dtype=tf.float32), self.sess) else: # TODO need to test eager mode #learning_rate = tf.get_collection('learning_rate')[-1] #if learning_rate * decay > self.min_learning_rate: #tf.get_collection('learning_rate')[-1] *= decay tf.get_collection('learning_rate')[-1].assign(tf.get_collection('learning_rate')[-1] * decay) return weight class WeightsDecay(object): def __init__(self, weights_op='learning_rate_weights', patience=3, decay=0.8, cmp=None, names=None, num_weights=None, min_weight=None, min_learning_rate=None, initial_learning_rate=None, initial_score=None, decay_start_epoch=0, sess=None): import melt.utils.logging as logging if not tf.executing_eagerly(): self.sess = sess or melt.get_session() if num_weights is None: assert names num_weights = len(names) logging.info('decay:', decay, 'cmp:', cmp) assert cmp == 'less' or cmp == 'greater' if cmp == 'less': self.cmp = lambda x, y: x < y self.scores = np.ones([num_weights]) * 1e10 elif cmp == 'greater': self.cmp = lambda x, y: x > y self.scores = np.ones([num_weights]) * -1e10 else: # TODO... self.cmp = cmp assert initial_score self.scores = [initial_score] * num_weights #self.scores = None self.max_patience = patience self.decay = decay # TODO patience also varaible so can save and restore ? self.patience = [0] * num_weights self.count = [0] * num_weights self.names = names or list(map(str, range(num_weights))) self.min_weight = min_weight self.decay_start_epoch = decay_start_epoch if not self.min_weight: self.min_weight = min_learning_rate / (initial_learning_rate or FLAGS.learning_rate) if isinstance(weights_op, str): try: self.weights_op = tf.get_collection(weights_op)[-1] except Exception: #self.weights_op = tf.get_variable('lr_ratios', initializer=tf.ones([num_classes], dtype=tf.float32)) #tf.add_to_collection('lr_ratios', lr_ratios) raise 'TODO..' else: self.weights_op = weights_op def add(self, scores): import melt.utils.logging as logging scores = np.array(scores) #print(scores.shape, self.scores.shape, len(self.names)) logging.info('diff:', list(zip(self.names, scores - self.scores))) if not tf.executing_eagerly(): weights = self.sess.run(self.weights_op) weights_ = weights else: weights = self.weights_op weights_ = weights.numpy() if (not self.cmp) and self.scores: if scores[0] > self.scores[0]: self.cmp = lambda x, y: x > y else: self.cmp = lambda x, y: x < y logging.info('decay cmp:', self.cmp) # epoch is set during training loop epoch = melt.epoch() for i, score in enumerate(scores): if self.scores is None or self.cmp(score, self.scores[i]): self.scores[i] = score self.patience[i] = 0 else: self.patience[i] += 1 logging.info('patience_%s %d' % (self.names[i], self.patience[i])) if epoch < self.decay_start_epoch: continue if self.patience[i] >= self.max_patience: self.count[i] += 1 self.patience[i] = 0 self.scores[i] = score decay = self.decay if not isinstance(self.decay, (list, tuple)) else self.decay[i] weights_[i] *= decay if not self.min_weight: if weights_[i] < self.min_weight: weights_[i] = self.min_weight #logging.info('!%s decay count:%d decay ratio:%f lr ratios now:%f' % (self.names[i], self.count[i], self.decay, weights[i])) if not tf.executing_eagerly(): self.sess.run(tf.assign(self.weights_op, tf.constant(weights_, dtype=tf.float32))) else: self.weights_op.assign(weights_) return weights_ ================================================ FILE: utils/melt/variable/__init__.py ================================================ from melt.variable.variable import * ================================================ FILE: utils/melt/variable/variable.py ================================================ import tensorflow as tf # Model Variables #weights = slim.model_variable('weights', # shape=[10, 10, 3 , 3], # initializer=tf.truncated_normal_initializer(stddev=0.1), # regularizer=slim.l2_regularizer(0.05), # device='/CPU:0') #model_variables = slim.get_model_variables() ## Regular variables #my_var = slim.variable('my_var', # shape=[20, 1], # initializer=tf.zeros_initializer) #regular_variables_and_model_variables = slim.get_variables() #@TODO use slime model_variable directly or wrapp it here def init_weights(shape, stddev=0.01, name=None): return tf.Variable(tf.random_normal(shape, stddev=stddev), name=name) def init_weights_truncated(shape, stddev=1.0, name=None): return tf.Variable(tf.truncated_normal(shape, stddev=stddev), name=name) def init_weights_random(shape, stddev=1.0, name=None): return tf.Variable(tf.random_normal(shape, stddev=stddev), name=name) def init_weights_uniform(shape, minval=0, maxval=None, name=None): return tf.Variable(tf.random_uniform(shape, minval, maxval), name=name) def init_bias(shape, val=0.1, name=None): if not isinstance(shape, (list, tuple)): shape = [shape] initial = tf.constant(val, shape=shape) return tf.Variable(initial, name=name) #def get_weights(name, shape, stddev=0.01): # return tf.get_variable(name, shape, initializer=tf.random_normal_initializer(stddev=stddev)) def get_weights(name, shape, minval=-0.08, maxval=0.08, trainable=True): return tf.get_variable(name, shape, initializer=tf.random_uniform_initializer(minval, maxval), trainable=trainable) def get_weights_truncated(name, shape, stddev=1.0, trainable=True): return tf.get_variable(name, shape, initializer=tf.truncated_normal_initializer(stddev=stddev), trainable=trainable) def get_weights_random(name, shape, stddev=1.0, trainable=True): return tf.get_variable(name, shape, initializer=tf.random_normal_initializer(stddev=stddev), trainable=trainable) def get_weights_normal(name, shape, stddev=1.0, trainable=True): return tf.get_variable(name, shape, initializer=tf.random_normal_initializer(stddev=stddev), trainable=trainable) def get_weights_uniform(name, shape, minval=0, maxval=None, trainable=True): return tf.get_variable(name, shape, initializer=tf.random_uniform_initializer(minval, maxval), trainable=trainable) def get_bias(name, shape, val=0.1, trainable=True): if not isinstance(shape, (list, tuple)): shape = [shape] return tf.get_variable(name, shape, initializer=tf.constant_initializer(val), trainable=trainable) ================================================ FILE: wenzheng/__init__.py ================================================ import wenzheng.utils #try: import wenzheng.embedding from wenzheng.embedding import * import wenzheng.encoder from wenzheng.encoder import * import wenzheng.pyt #except Exception: # pass ================================================ FILE: wenzheng/embedding.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file embedding.py # \author chenghuige # \date 2016-12-24 19:55:37.327855 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS flags.DEFINE_integer('emb_dim', 512, 'embedding dim for each word, notice for rnn bidirectional here should be acutal emb_dim * 2') flags.DEFINE_integer('char_emb_dim', 300, 'embedding dim for each word, notice for rnn bidirectional here should be acutal emb_dim * 2') flags.DEFINE_float('weight_stddev', 1e-4, """weight stddev, @Notice if use bias then small stddev like 0.01 might not lead to convergence, causing layer weight value always be 0 with random_normal""") flags.DEFINE_float('initializer_scale', 0.08, 'used for weights initalize using random_uniform, default value 0.08 follow im2txt') flags.DEFINE_string('word_embedding_file', None, 'load pre trained word embedding from word2vec or glov if not None') flags.DEFINE_boolean('finetune_word_embedding', True, 'wether update word embedding') flags.DEFINE_string('char_embedding_file', None, 'load pre trained char embedding from word2vec or glov if not None') flags.DEFINE_boolean('finetune_char_embedding', True, 'wether update char embedding') flags.DEFINE_string('pinyin_embedding_file', None, 'load pre trained pinyin embedding from word2vec or glov if not None') flags.DEFINE_boolean('finetune_pinyin_embedding', True, 'wether update pinyin embedding') flags.DEFINE_string('ngram_embedding_file', None, 'load pre trained ngram embedding from word2vec or glov if not None') flags.DEFINE_boolean('finetune_ngram_embedding', True, 'wether update ngram embedding') flags.DEFINE_boolean('position_embedding', False, 'wether use postion embedding') flags.DEFINE_string('ngram_vocab', None, '') flags.DEFINE_string('char_vocab', None, '') flags.DEFINE_string('pinyin_vocab', None, '') flags.DEFINE_string('emb_init', 'uniform', 'uniform or normal normal with hidden_size ** -0.5 might perform better') flags.DEFINE_float('emb_stddev', 0., 'if 0 use hidden_size ** -0.5, another choice might be set to 0.01 as HKUST rnet') #import tensorflow.contrib.slim as slim import sys import os import numpy as np import melt logging = melt.logging import gezi from wenzheng.utils import vocabulary import glob try: import conf from conf import TEXT_MAX_WORDS except Exception: print('Warning, no conf.py in current path use util conf', file=sys.stderr) from wenzheng.utils.conf import TEXT_MAX_WORDS layers = tf.keras.layers class Embedding(layers.Layer): """An Embedding layer.""" def __init__(self, vocab_size, embedding_dim=None, embedding=None, trainable=True, freeze_size=None, finetune_size=None, **kwargs): super(Embedding, self).__init__(**kwargs) self.vocab_size = vocab_size self.freeze_size = freeze_size if finetune_size: self.freeze_size = vocab_size - finetune_size self.embedding_dim = embedding_dim if embedding_dim else FLAGS.emb_dim self.trainable = trainable self.embedding = embedding self.embedding2 = None if embedding is not None: if type(embedding) is str: if os.path.exists(embedding): embedding = np.load(embedding) else: embedding = None self.embedding = embedding def build(self, _): initializer = 'uniform' # some optimizer must use embedding on cpu #with tf.device("/cpu:0"): if self.embedding is not None: initializer = tf.constant_initializer(self.embedding) logging.info('emb init from numpy pretrain and trainable:', self.trainable) else: if FLAGS.emb_init == 'uniform': init_width = 0.5 / self.embedding_dim logging.info('emb random_uniform init with width:', init_width) initializer = tf.random_uniform_initializer(-init_width, init_width) elif FLAGS.emb_init == 'normal' or FLAGS.emb_init == 'random': stddev = FLAGS.emb_stddev or self.embedding_dim ** -0.5 logging.info('emb random_normal init with stddev:', stddev) initializer = tf.random_normal_initializer(mean=0., stddev=stddev) self.embedding = self.add_variable( "embedding_kernel", shape=[int(self.vocab_size), self.embedding_dim], dtype=tf.float32, initializer=initializer, trainable=self.trainable) if self.freeze_size: assert self.trainable embedding, embedding2 = tf.split(self.embedding, [self.vocab_size - self.freeze_size, self.freeze_size], 0) self.embedding = tf.concat([embedding, tf.stop_gradient(embedding2)], 0) def call(self, x): #print('---------', self.embedding) return tf.nn.embedding_lookup(self.embedding, x) #TODO try l2_regularizer and compare #weights = slim.variable('weights', # shape=[10, 10, 3 , 3], # initializer=tf.truncated_normal_initializer(stddev=0.1), # regularizer=slim.l2_regularizer(0.05), # device='/CPU:0') def get_embedding(name='emb', height=None, emb_dim=None, trainable=True): emb_dim = emb_dim or FLAGS.emb_dim if height is None: vocabulary.init() height = vocabulary.get_vocab_size() # google transform use below #initializer=tf.random_normal_initializer( # 0., self.hidden_size ** -0.5) # squad use np.random.normal(scale=0.01) if FLAGS.emb_init == 'uniform': init_width = 0.5 / emb_dim emb = melt.variable.get_weights_uniform(name, [height, emb_dim], -init_width, init_width, trainable=trainable) logging.info('emb random_uniform init with width', init_width) elif FLAGS.emb_init == 'normal' or FLAGS.emb_init == 'random': stddev = FLAGS.emb_stddev or emb_dim ** -0.5 logging.info('emb random_normal init with stddev', stddev) emb = melt.variable.get_weights_random(name, [height, emb_dim], stddev, trainable=trainable) else: raise ValueError(FLAGS.emb_init) #return to above code if this works not better #emb = melt.variable.get_weights_truncated(name, [vocab_size, emb_dim], stddev=FLAGS.weight_stddev) return emb def get_embedding_cpu(name='emb', height=None, emb_dim=None, trainable=True): with tf.device('/CPU:0'): return get_embedding(name, height=height, emb_dim=emb_dim, trainable=trainable) def get_or_restore_embedding(name='emb', embedding_file=None, trainable=None, height=None, emb_dim=None, type='word'): # cpu for adgrad optimizer #if (not FLAGS.word_embedding_file) or glob.glob(FLAGS.model_dir + '/model*ckpt*'): # logging.info('Word embedding random init or from model_dir:{} and trainable=:{}'.format( # FLAGS.model_dir, FLAGS.finetune_word_embedding)) #TODO verify below is ok , above is ok but a bit complex. I assume if var in check point will later restore and cover initital const value #if not FLAGS.word_embedding_file: embedding_file_ = None train_able_ = None if type == 'word': embedding_file_ = FLAGS.word_embedding_file train_able_ = FLAGS.finetune_word_embedding elif type == 'char': embedding_file_ = FLAGS.char_embedding_file train_able_ = FLAGS.finetune_char_embedding elif type == 'ngram': embedding_file_ = FLAGS.ngram_embedding_file train_able_ = FLAGS.finetune_ngram_embedding elif type == 'pinyin': embedding_file_ = FLAGS.pinyin_embedding_file train_able_ = FLAGS.finetune_pinyin_embedding else: raise ValueError(type) embedding_file = embedding_file if embedding_file is not None else embedding_file_ trainable = trainable if trainable is not None else train_able_ #logging.info('----------------------', type, embedding_file, height) if (not embedding_file) or melt.exists_model(FLAGS.model_dir): logging.info('{} random init or from model_dir and trainable=:{}'.format(name, trainable)) emb = get_embedding( name=name, trainable=trainable, height=height, emb_dim=emb_dim) #melt.try_add_to_collection('word_embedding', emb) else: # https://github.com/tensorflow/tensorflow/issues/1570 # still adgrad must cpu.. # if not fintue emb this will be ok if fintune restart will ok ? must not use word embedding file? os.path.exists(FLAGS.model_dir) ? judge? # or will still try to load from check point ? TODO for safe you could re run by setting word_embedding_file as None or '' logging.info('Loading {} from:{} and trainable=:{}'.format( name, embedding_file, trainable)) timer = gezi.Timer('load constat') emb = melt.load_constant( embedding_file, name=name, trainable=trainable) timer.print_elapsed() return emb def get_or_restore_embedding_cpu(name='emb', embedding_file=None, trainable=None, height=None, emb_dim=None): with tf.device('/CPU:0'): return get_or_restore_embedding(name, embedding_file, trainable, height, emb_dim) def get_position_embedding(name='pos_emb', height=None): if FLAGS.position_embedding: logging.info('Using position embedding') pos_emb = get_embedding(name, height=height or TEXT_MAX_WORDS) else: pos_emb = None return pos_emb def get_position_embedding_cpu(name='pos_emb', height=None): with tf.device('/CPU:0'): return get_position_embedding(name, height=height or TEXT_MAX_WORDS) #TODO height def get_or_restore_char_embedding_cpu(name='char_emb', embedding_file=None, trainable=None): with tf.device('/CPU:0'): return get_or_restore_char_embedding(name, embedding_file, trainable) def get_or_restore_char_embedding(name='char_emb', embedding_file=None, trainable=None): embedding_file = embedding_file or FLAGS.char_embedding_file #assert embedding_file trainable = trainable or FLAGS.finetune_char_embedding char_vocab = FLAGS.char_vocab or FLAGS.vocab.replace('vocab.txt', 'char_vocab.txt') height = gezi.Vocabulary(char_vocab).size() assert height return get_or_restore_embedding(name, embedding_file, trainable, height=height, emb_dim=FLAGS.char_emb_dim, type='char') def get_or_restore_ngram_embedding_cpu(name='ngram_emb', embedding_file=None, trainable=None): with tf.device('/CPU:0'): return get_or_restore_ngram_embedding(name, embedding_file, trainable) def get_or_restore_ngram_embedding(name='ngram_emb', embedding_file=None, trainable=None): embedding_file = embedding_file or FLAGS.ngram_embedding_file #assert embedding_file trainable = trainable or FLAGS.finetune_ngram_embedding ngram_vocab = FLAGS.ngram_vocab or FLAGS.vocab.replace('vocab.txt', 'ngram_vocab.txt') height = gezi.Vocabulary(ngram_vocab).size() assert height return get_or_restore_embedding(name, embedding_file, trainable, height=height, emb_dim=FLAGS.ngram_emb_dim, type='ngram') def get_or_restore_pinyin_embedding_cpu(name='pinyin_emb', embedding_file=None, trainable=None): with tf.device('/CPU:0'): return get_or_restore_pinyin_embedding(name, embedding_file, trainable) def get_or_restore_pinyin_embedding(name='pinyin_emb', embedding_file=None, trainable=None): embedding_file = embedding_file or FLAGS.pinyin_embedding_file #assert embedding_file trainable = trainable or FLAGS.finetune_pinyin_embedding pinyin_vocab = FLAGS.pinyin_vocab or FLAGS.vocab.replace('vocab.txt', 'pinyin_vocab.txt') height = gezi.Vocabulary(pinyin_vocab).size() assert height return get_or_restore_embedding(name, embedding_file, trainable, height=height, emb_dim=FLAGS.ngram_emb_dim, type='pinyin') ================================================ FILE: wenzheng/encoder.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file encoder.pyt # \author chenghuige # \date 2018-09-20 07:04:55.883159 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #flags.DEFINE_string('input', '', '') #flags.DEFINE_string('output', '', '') flags.DEFINE_string('bert_dir', None, '') flags.DEFINE_string('bert_config_file', None, '') import sys import os from tensorflow import keras import gezi import melt logging = melt.logging import numpy as np import wenzheng.utils.input_flags import wenzheng.utils.rnn_flags class Encoder(melt.Model): def __init__(self, type='gru', keep_prob=None): super(Encoder, self).__init__() self.num_layers = FLAGS.num_layers self.num_units = FLAGS.rnn_hidden_size self.keep_prob = keep_prob or FLAGS.keep_prob self.recurrent_dropout = FLAGS.recurrent_dropout self.bw_dropout = FLAGS.bw_dropout self.concat_layers = FLAGS.concat_layers self.residual_connect = FLAGS.encoder_residual_connect logging.info(f'encoder:{type}') logging.info('encoder recurrent dropout:{}'.format(self.recurrent_dropout)) logging.info('encoder concat layers:{}'.format(self.concat_layers)) logging.info('encoder residual connect:{}'.format(self.residual_connect)) logging.info('encoder bw dropout:{}'.format(self.bw_dropout)) logging.info('encoder num_layers:{}'.format(self.num_layers)) logging.info('encoder num_units:{}'.format(self.num_units)) logging.info('encoder keep_prob:{}'.format(self.keep_prob)) def get_encode(type): if type == 'bow' or type == 'none': encode = None elif type == 'gru' or type == 'rnn' or type == 'lstm': if type == 'rnn': type = FLAGS.cell or 'gru' encode = melt.layers.CudnnRnn(num_layers=self.num_layers, num_units=self.num_units, keep_prob=self.keep_prob, share_dropout=False, recurrent_dropout=self.recurrent_dropout, concat_layers=self.concat_layers, bw_dropout=self.bw_dropout, residual_connect=self.residual_connect, train_init_state=FLAGS.rnn_train_init_state, cell=type) elif type == 'cnn' or type == 'convnet': logging.info('encoder num_filters:{}'.format(FLAGS.num_filters)) num_layers = FLAGS.num_layers if not ',' in type else 4 encode = melt.layers.ConvNet(num_layers=num_layers, num_filters=FLAGS.num_filters, keep_prob=FLAGS.keep_prob, use_position_encoding=FLAGS.use_position_encoding) elif type == 'qanet': num_layers = FLAGS.num_layers if not ',' in type else 4 encode = melt.layers.QANet(num_layers=num_layers, num_filters=FLAGS.num_filters, keep_prob=0.5, kernel_size=3, num_heads=4) else: raise ValueError('not support {} now'.format(type)) if encode is not None: encode.bidirectional = False if type == 'gru' or type == 'rnn' or type == 'lstm': encode.bidirectional = True return encode self.encodes = [] for type in type.split(','): #print(type, get_encode(type)) # TODO FIMXE tensorflow 1.1 fail layer_utils.py weights += layer.trainable_weights 'property' object is not iterable self.encodes.append(get_encode(type)) logging.info(self.encodes) def call(self, seq, seq_len, mask_fws=None, mask_bws=None, training=False): for encode in self.encodes: if encode is None: if mask_fws is None: pass else: seq = seq * mask_fws[0] continue if encode.bidirectional: seq = encode(seq, seq_len, mask_fws, mask_fws, training=training) elif mask_fws is not None: seq = encode(seq, seq_len, mask_fws, training=training) else: seq = encode(seq, seq_len, training=training) return seq #-----------------Both TexEncoder and BertEncoder are for pretraining then loading for finetune class TextEncoder(melt.Model): """ Bidirectional Encoder can be used for Language Model and also for text classification or others input is batch of sentence ids [batch_size, num_steps] output is [batch_size, num_steps, 2 * hidden_dim] for text classification you can use pooling to get [batch_size, dim] as text resprestation for language model you can just add fc layer to convert 2 * hidden_dim to vocab_size -1 and calc cross entropy loss Notice you must oututs hidden_dim(forward) and hidden_dim(back_ward) concated at last dim as 2 * hidden dim, so MUST be bidirectional """ def __init__(self, config, embedding_weight=None, use_char=False, use_char_emb=True, use_pos=False, use_ner=False, lm_model=False, ): super(TextEncoder, self).__init__() Rnn = melt.layers.CudnnRnn word_config = config['word'] vocab_file = word_config['vocab'] vocab = gezi.Vocabulary(vocab_file) vocab_size = vocab.size() word_config['vocab_size'] = vocab_size num_layers = word_config['num_layers'] hidden_size = word_config['hidden_size'] emb_dim = word_config['emb_dim'] word_embedding_file = word_config['embedding_file'] finetune_word_embedding = word_config['trainable'] num_finetune_words = word_config['num_finetune'] embedding_weight = embedding_weight if embedding_weight is not None else word_embedding_file # vocab2_size = 0 # if num_finetune_words: # vocab2_size = vocab_size - num_finetune_words # vocab_size = num_finetune_words # # TODO FIXME TypeError: Eager execution of tf.constant with unsupported shape (value has 2039400 elements, shape is (144299, 300) with 43289700 elements). # # For large vocab not Eager mode not ok.. # self.embedding = wenzheng.Embedding(vocab_size, # emb_dim, # embedding_weight, # trainable=finetune_word_embedding, # vocab2_size=vocab2_size) num_freeze_words = 0 if num_finetune_words: num_freeze_words = vocab_size - num_finetune_words self.embedding = wenzheng.Embedding(vocab_size, emb_dim, embedding_weight, trainable=finetune_word_embedding, freeze_size=num_freeze_words) self.char_embedding = None if use_char: char_config = config['char'] char_config['use_char_emb'] = use_char_emb if use_char_emb: char_vocab_file = vocab_file.replace('vocab.txt', 'char_vocab.txt') assert os.path.exists(char_vocab_file) char_config['vocab'] = char_vocab_file char_vocab = gezi.Vocabulary(char_vocab_file) char_vocab_size = char_vocab.size() char_config['char_vocab_size'] = char_vocab_size char_emb_dim = char_config['emb_dim'] char_embedding_weight = word_embedding_file.replace('emb.npy', 'char_emb.npy') if word_embedding_file else None char_config['embedding_weight'] = char_embedding_weight finetune_char_embedding = char_config['trainable'] num_finetune_chars = char_config['num_finetune'] num_freeze_chars = 0 if num_finetune_chars: num_freeze_chars = char_vocab_size - num_finetune_chars self.char_embedding = wenzheng.Embedding(char_vocab_size, char_emb_dim, char_embedding_weight, trainable=finetune_char_embedding, freeze_size=num_freeze_chars) else: self.char_embedding = self.embedding dropout_rate = config['dropout_rate'] self.keep_prob = 1 - dropout_rate recurrent_dropout = config['recurrent_dropout'] cell = config['cell'] rnn_padding = config['rnn_padding'] rnn_no_padding = config['rnn_no_padding'] concat_layers = config['concat_layers'] train_init_state = config['rnn_train_init_state'] if use_char: char_hidden_size = char_config['hidden_size'] self.char_hidden_size = char_hidden_size char_output_method = char_config['output_method'] char_combiner = char_config['combiner'] self.char_combiner = char_combiner char_padding = char_config['padding'] self.char_padding = char_padding self.char_limit = char_config['limit'] self.char_encode = Rnn( num_layers=1, num_units=char_hidden_size, keep_prob=1 - dropout_rate, recurrent_dropout=recurrent_dropout, concat_layers=False, train_init_state=False if lm_model else train_init_state, cell=cell, ) self.char_pooling = melt.layers.Pooling(char_output_method) if char_combiner == 'sfu': self.char_sfu_combine = melt.layers.SemanticFusionCombine(keep_prob=self.keep_prob) self.pos_embedding = None if use_pos: pos_config = config['pos'] tag_emb_dim = pos_config['emb_dim'] pos_vocab_file = vocab_file.replace('vocab.txt', 'pos_vocab.txt') assert os.path.exists(pos_vocab_file) pos_config['vocab'] = pos_vocab_file pos_vocab = gezi.Vocabulary(pos_vocab_file) self.pos_embedding = wenzheng.Embedding(pos_vocab.size(), tag_emb_dim) self.ner_embedding = None if use_ner: ner_config = config['ner'] tag_emb_dim = ner_config['emb_dim'] ner_vocab_file = vocab_file.replace('vocab.txt', 'ner_vocab.txt') assert os.path.exists(ner_vocab_file) ner_config['vocab'] = ner_vocab_file ner_vocab = gezi.Vocabulary(ner_vocab_file) self.ner_embedding = wenzheng.Embedding(ner_vocab.size(), tag_emb_dim) hidden_size = word_config['hidden_size'] num_layers = word_config['num_layers'] if lm_model: assert config['encoder'] == 'rnn' if not lm_model and config['encoder'] != 'rnn': self.encode = Encoder(config['encoder']) else: self.encode = Rnn( num_layers=num_layers, num_units=hidden_size, keep_prob=1 - dropout_rate, recurrent_dropout=recurrent_dropout, concat_layers=concat_layers, # just for simple finetune... since now init state var scope has some problem train_init_state=False, cell=cell, ) factor = num_layers if concat_layers else 1 output_size = 2 * hidden_size * factor self.vocab_size = vocab_size self.output_size = output_size self.rnn_no_padding = rnn_no_padding self.use_char = use_char self.use_pos, self.use_ner = use_pos, use_ner self.num_units = hidden_size if lm_model: # -1 for excluding padding 0 self.hidden2tag = keras.layers.Dense(self.vocab_size - 1) self.lm_model = lm_model try: import yaml logging.info('config\n', yaml.dump(config, default_flow_style=False)) except Exception: logging.info('config', config) # TODO training not needed, since pytorch has model.eval model.train here just compact for tensorflow def call(self, input, c_len=None, max_c_len=None, training=False): assert isinstance(input, dict) x = input['content'] batch_size = melt.get_shape(x, 0) if c_len is None or max_c_len is None: c_len, max_c_len = melt.length2(x) if self.rnn_no_padding: logging.info('------------------no padding! train or eval') c_len = max_c_len x = self.embedding(x) if FLAGS.use_char: cx = input['char'] cx = tf.reshape(cx, [batch_size * max_c_len, FLAGS.char_limit]) chars_len = melt.length(cx) cx = self.char_embedding(cx) cx = self.char_encode(cx, chars_len, training=training) cx = self.char_pooling(cx, chars_len) cx = tf.reshape(cx, [batch_size, max_c_len, 2 * self.num_units]) if self.char_combiner == 'concat': x = tf.concat([x, cx], axis=2) elif self.char_combiner == 'sfu': x = self.char_sfu_combine(x, cx, training=training) if FLAGS.use_pos: px = input['pos'] px = self.pos_embedding(px) x = tf.concat([x, px], axis=2) if FLAGS.use_ner: nx = input['ner'] nx = self.ner_embedding(nx) x = tf.concat([x, nx], axis=2) x = self.encode(x, c_len, training=training) return x from third.bert import modeling class BertEncoder(melt.Model): #embedding not used just for compatct with TextEncoder def __init__(self, embedding=None): super(BertEncoder, self).__init__(embedding) self.init_checkpoint = None if FLAGS.bert_dir: bert_dir = FLAGS.bert_dir bert_config_file = f'{bert_dir}/bert_config.json' bert_config = modeling.BertConfig.from_json_file(bert_config_file) self.init_checkpoint= f'{bert_dir}/bert_model.ckpt' elif FLAGS.bert_config_file: bert_config = modeling.BertConfig.from_json_file(FLAGS.bert_config_file) else: bert_config = { "attention_probs_dropout_prob": 0.1, "directionality": "bidi", "hidden_act": "gelu", "hidden_dropout_prob": 0.1, "hidden_size": 768, "initializer_range": 0.02, "intermediate_size": 3072, "max_position_embeddings": 512, "num_attention_heads": 12, "num_hidden_layers": 12, "pooler_fc_size": 768, "pooler_num_attention_heads": 12, "pooler_num_fc_layers": 3, "pooler_size_per_head": 128, "pooler_type": "first_token_transform", "type_vocab_size": 2, "vocab_size": gezi.Vocabulary(FLAGS.vocab).size() } bert_config = modeling.BertConfig.from_dict(bert_config) self.bert_config = bert_config def restore(self): tvars = tf.trainable_variables() (assignment_map, initialized_variable_names) = modeling.get_assigment_map_from_checkpoint( tvars, self.init_checkpoint) tf.train.init_from_checkpoint(self.init_checkpoint, assignment_map) logging.info("**** Trainable Variables ****") for var in tvars: init_string = "" if var.name in initialized_variable_names: init_string = ", *INIT_FROM_CKPT*" logging.info(" name = %s, shape = %s%s", var.name, var.shape, init_string) def call(self, input, c_len=None, max_c_len=None, training=False): self.step += 1 x = input['content'] if isinstance(input, dict) else input batch_size = melt.get_shape(x, 0) model = modeling.BertModel( config=self.bert_config, is_training=training, input_ids=x, input_mask=(x > 0) if c_len is not None else None) if self.step == 0 and self.init_checkpoint: self.restore() x = model.get_sequence_output() return x ================================================ FILE: wenzheng/pyt/__init__.py ================================================ from wenzheng.pyt.embedding import * from wenzheng.pyt.encoder import * ================================================ FILE: wenzheng/pyt/embedding.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file embedding.py # \author chenghuige # \date 2018-09-29 07:39:46.517047 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import numpy as np import torch from torch import nn import gezi logging = gezi.logging def get_embedding(vocab_size, embedding_dim=None, embedding_weight=None, trainable=True, padding_idx=0, vocab2_size=0, vocab2_trainable=False): logging.info('vocab_size:', vocab_size, 'embedding_weight', embedding_weight) embedding = nn.Embedding(vocab_size, embedding_dim, padding_idx=padding_idx) if embedding_weight is not None: if type(embedding_weight) is str: if os.path.exists(embedding_weight): embedding_weight = np.load(embedding_weight) else: embedding_weight = None if embedding_weight is not None: embedding.weight.data.copy_(torch.from_numpy(embedding_weight)) embedding.weight.requires_grad = trainable return embedding ================================================ FILE: wenzheng/pyt/encoder.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file encoder.py # \author chenghuige # \date 2018-09-29 07:39:50.763448 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import sys import os import torch from torch import nn import gezi logging = gezi.logging import lele import wenzheng class TextEncoder(nn.Module): """ Bidirectional Encoder can be used for Language Model and also for text classification or others input is batch of sentence ids [batch_size, num_steps] output is [batch_size, num_steps, 2 * hidden_dim] for text classification you can use pooling to get [batch_size, dim] as text resprestation for language model you can just add fc layer to convert 2 * hidden_dim to vocab_size -1 and calc cross entropy loss Notice you must outputs hidden_dim(forward) and hidden_dim(back_ward) concated at last dim as 2 * hidden dim, so MUST be bidirectional """ def __init__(self, config, embedding_weight=None, use_char=False, use_char_emb=True, use_pos=False, use_ner=False, lm_model=False, ): super(TextEncoder, self).__init__() Rnn = lele.layers.StackedBRNN word_config = config['word'] vocab_file = word_config['vocab'] vocab = gezi.Vocabulary(vocab_file) vocab_size = vocab.size() word_config['vocab_size'] = vocab_size num_layers = word_config['num_layers'] hidden_size = word_config['hidden_size'] emb_dim = word_config['emb_dim'] word_embedding_file = word_config['embedding_file'] finetune_word_embedding = word_config['trainable'] embedding_weight = embedding_weight if embedding_weight is not None else word_embedding_file self.embedding = wenzheng.pyt.get_embedding(vocab_size, emb_dim, embedding_weight, trainable=finetune_word_embedding) self.char_embedding = None if use_char: char_config = config['char'] char_config['use_char_emb'] = use_char_emb if use_char_emb: char_vocab_file = vocab_file.replace('vocab.txt', 'char_vocab.txt') assert os.path.exists(char_vocab_file) char_config['vocab'] = char_vocab_file char_vocab = gezi.Vocabulary(char_vocab_file) char_vocab_size = char_vocab.size() char_config['char_vocab_size'] = char_vocab_size char_emb_dim = char_config['emb_dim'] char_embedding_weight = word_embedding_file.replace('emb.npy', 'char_emb.npy') if word_embedding_file else None char_config['embedding_weight'] = char_embedding_weight finetune_char_embedding = char_config['trainable'] self.char_embedding = wenzheng.pyt.get_embedding(char_vocab_size, char_emb_dim, char_embedding_weight, trainable=finetune_char_embedding) else: self.char_embedding = self.embedding dropout_rate = config['dropout_rate'] recurrent_dropout = config['recurrent_dropout'] cell = config['cell'] rnn_padding = config['rnn_padding'] rnn_no_padding = config['rnn_no_padding'] concat_layers = config['concat_layers'] if use_char: char_hidden_size = char_config['hidden_size'] self.char_hidden_size = char_hidden_size char_output_method = char_config['output_method'] char_combiner = char_config['combiner'] self.char_combiner = char_combiner char_padding = char_config['padding'] self.char_padding = char_padding self.char_limit = char_config['limit'] self.char_encode = Rnn( input_size=char_emb_dim, hidden_size=char_hidden_size, num_layers=1, dropout_rate=1 - dropout_rate, dropout_output=False, recurrent_dropout=recurrent_dropout, concat_layers=False, rnn_type=cell, padding=rnn_padding, ) self.char_pooling = lele.layers.Pooling(char_output_method, input_size= 2 * char_hidden_size) if char_combiner == 'sfu': self.char_fc = nn.Linear(2 * char_hidden_size, emb_dim) self.char_sfu_combine = lele.layers.SFUCombiner(emb_dim, 3 * emb_dim, dropout_rate=dropout_rate) encode_input_size = emb_dim else: # concat encode_input_size = emb_dim + 2 * char_hidden_size else: encode_input_size = emb_dim self.pos_embedding = None if use_pos: pos_config = config['pos'] tag_emb_dim = pos_config['emb_dim'] pos_vocab_file = vocab_file.replace('vocab.txt', 'pos_vocab.txt') assert os.path.exists(pos_vocab_file) pos_config['vocab'] = pos_vocab_file pos_vocab = gezi.Vocabulary(pos_vocab_file) self.pos_embedding = wenzheng.pyt.get_embedding(pos_vocab.size(), tag_emb_dim) encode_input_size += tag_emb_dim self.ner_embedding = None if use_ner: ner_config = config['ner'] tag_emb_dim = ner_config['emb_dim'] ner_vocab_file = vocab_file.replace('vocab.txt', 'ner_vocab.txt') assert os.path.exists(ner_vocab_file) ner_config['vocab'] = ner_vocab_file ner_vocab = gezi.Vocabulary(ner_vocab_file) self.ner_embedding = wenzheng.pyt.get_embedding(ner_vocab.size(), tag_emb_dim) encode_input_size += tag_emb_dim hidden_size = word_config['hidden_size'] num_layers = word_config['num_layers'] self.encode = Rnn( input_size=encode_input_size, hidden_size=hidden_size, num_layers=num_layers, dropout_rate=dropout_rate, dropout_output=False, recurrent_dropout=recurrent_dropout, concat_layers=concat_layers, rnn_type=cell, padding=rnn_padding, ) factor = num_layers if concat_layers else 1 output_size = 2 * hidden_size * factor self.vocab_size = vocab_size self.output_size = output_size self.rnn_no_padding = rnn_no_padding self.use_char = use_char self.use_pos, self.use_ner = use_pos, use_ner if lm_model: # -1 for excluding padding 0 self.hidden2tag = nn.Linear(hidden_size * factor, self.vocab_size - 1) self.lm_model = lm_model try: import yaml logging.info('config\n', yaml.dump(config, default_flow_style=False)) except Exception: logging.info('config', config) def get_mask(self, x): if self.rnn_no_padding: x_mask = torch.zeros_like(x, dtype=torch.uint8) else: x_mask = x.eq(0) return x_mask # TODO training not needed, since pytorch has model.eval model.train here just compact for tensorflow def forward(self, input, mask=None, training=False): assert isinstance(input, dict) x = input['content'] #print(x.shape) #print(input['source']) x_mask = mask if mask is not None else self.get_mask(x) batch_size = x.size(0) max_c_len = x.size(1) x = self.embedding(x) if self.use_char: cx = input['char'] cx = cx.view(batch_size * max_c_len, self.char_limit) if self.char_padding: # HACK for pytorch rnn not allow all 0, TODO Too slow... cx = torch.cat([torch.ones([batch_size * max_c_len, 1], dtype=torch.int64).cuda(), cx], 1) cx_mask = cx.eq(0) else: cx_mask = torch.zeros_like(cx, dtype=torch.uint8) cx = self.char_embedding(cx) cx = self.char_encode(cx, cx_mask) cx = self.char_pooling(cx, cx_mask) cx = cx.view(batch_size, max_c_len, 2 * self.char_hidden_size) if self.char_combiner == 'concat': x = torch.cat([x, cx], 2) elif self.char_combiner == 'sfu': cx = self.char_fc(cx) x = self.char_sfu_combine(x, cx) else: raise ValueError(self.char_combiner) if self.use_pos: px = input['pos'] px = self.pos_embedding(px) x = torch.cat([x, px], 2) if self.use_ner: nx = input['ner'] nx = self.ner_embedding(nx) x = torch.cat([x, nx], 2) x = self.encode(x, x_mask) return x ================================================ FILE: wenzheng/utils/__init__.py ================================================ from wenzheng.utils.rnn_flags import * from wenzheng.utils.input_flags import * ================================================ FILE: wenzheng/utils/conf.py ================================================ IMAGE_FEATURE_LEN = 1536 MAX_EMB_WORDS = 200000 TEXT_MAX_WORDS = 100 WORDS_SEP = ' ' NUM_RESERVED_IDS = 1 ENCODE_UNK = 1 ================================================ FILE: wenzheng/utils/ids2text.py ================================================ #!/usr/bin/env python # -*- coding: gbk -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2016-08-29 15:26:15.418566 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import numpy as np import sys import gezi from wenzheng.utils import vocabulary #TODO-- remove conf.py using gfalgs or yaxml try: import conf from conf import TEXT_MAX_WORDS, ENCODE_UNK except Exception: print('Warning: no conf.py in current path use util conf', file=sys.stderr) from wenzheng.utils.conf import TEXT_MAX_WORDS, ENCODE_UNK vocab = None NUM_MARK = '' def init(vocab_path=None): global vocab, Segmentor if vocab is None: vocabulary.init(vocab_path) print('ENCODE_UNK', ENCODE_UNK, file=sys.stderr) vocab = vocabulary.get_vocab() def ids2words(text_ids, print_end=True): #print('@@@@@@@@@@text_ids', text_ids) #NOTICE int64 will be ok # Boost.Python.ArgumentError: Python argument types in # Identifer.key(Vocabulary, numpy.int32) #did not match C++ signature: # key(gezi::Identifer {lvalue}, int id, std::string defualtKey) # key(gezi::Identifer {lvalue}, int id) #words = [vocab.key(int(id)) for id in text_ids if id > 0 and id < vocab.size()] words = [] for id in text_ids: if id > 0 and id < vocab.size(): #@NOTICE! must has end id, @TODO deal with UNK word if id != vocab.end_id(): word = vocab.key(int(id)) words.append(word) else: if print_end: words.append('') break else: break return words def ids2text(text_ids, sep=' ', print_end=True): return sep.join(ids2words(text_ids, print_end=print_end)) def idslist2texts(text_ids_list, sep=' ', print_end=True): return [ids2text(text_ids, sep=sep, print_end=print_end) for text_ids in text_ids_list] #return [sep.join([vocab.key(int(id)) for id in text_ids if id > 0 and id < vocab.size()]) for text_ids in text_ids_list] def translate(text_ids): return ids2text(text_ids, sep='', print_end=False) def translates(text_ids_list): return [translate(text_ids) for text_ids in text_ids_list] def start_id(): return vocab.end_id() def end_id(): return vocab.end_id() def unk_id(): return vocab.unk_id() ================================================ FILE: wenzheng/utils/input_flags.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file input_flags.py # \author chenghuige # \date 2016-12-25 00:17:18.268341 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS #-------- train flags.DEFINE_integer('min_records', 0, '') flags.DEFINE_integer('num_records', 0, 'if not 0, will check equal') #--------- read data flags.DEFINE_integer('fixed_eval_batch_size', 30, """must >= num_fixed_evaluate_examples if == real dataset len then fix sequence show if not == can be show different fixed each time usefull if you want only show see 2 and be different each time if you want see 2 by 2 seq then num_fixed_evaluate_example = 2 fixed_eval_batch_size = 2 """) flags.DEFINE_integer('num_fixed_evaluate_examples', 30, '') flags.DEFINE_integer('num_evaluate_examples', 1, '') #flags.DEFINE_integer('num_threads', 12, """threads for reading input tfrecords, # setting to 1 may be faster but less randomness # """) flags.DEFINE_boolean('shuffle_files', True, '') flags.DEFINE_boolean('batch_join', True, '') flags.DEFINE_boolean('shuffle_batch', True, '') flags.DEFINE_boolean('shuffle_then_decode', True, """ actually this is decided by is_sequence_example.. if is_sequence_example then False, if just example not sequence then True since is sparse TODO remove this """) flags.DEFINE_boolean('is_sequence_example', False, '') flags.DEFINE_boolean('dynamic_batch_length', True, """very important False means all batch same size! otherwise use dynamic batch size Now only not sequence_example data will support dyanmic_batch_length=False Also for cnn you might need to set to False to make all equal length batch used """) flags.DEFINE_boolean('use_weights', False, '''from tfrecord per example word, usaually tf*idf weight, same word has difference score in different example/instances''') flags.DEFINE_string('weights', None, '') flags.DEFINE_boolean('use_idf_weights', False, 'idf only weight vocab based fixed for each vocab word') flags.DEFINE_boolean('use_inst_weights', False, 'use per instantce weights') flags.DEFINE_boolean('feed_dict', False, 'depreciated, too complex, just prepare your data at first for simple') #--for scene flags.DEFINE_string('scene_train_input', None, '') flags.DEFINE_string('scene_valid_input', None, '') flags.DEFINE_boolean('use_scene_embedding', True, '') #----------eval flags.DEFINE_boolean('legacy_rnn_decoder', False, '') flags.DEFINE_boolean('experiment_rnn_decoder', False, '') #----------strategy flags.DEFINE_string('seg_method', 'basic', '') #flags.DEFINE_boolean('feed_single', False, '') flags.DEFINE_boolean('gen_predict', True, '') flags.DEFINE_string('decode_name', 'text', '') flags.DEFINE_string('decode_str_name', 'text_str', '') flags.DEFINE_boolean('reinforcement_learning', False, '') flags.DEFINE_float('reinforcement_ratio', 1., '') #--------for image caption TODO move to image_caption/input_flags.py ? #--if use image dir already info in image_features flags.DEFINE_string('image_dir', None, 'input images dir') flags.DEFINE_boolean('pre_calc_image_feature', False, 'will set to true if not has image model auto in train.py') flags.DEFINE_boolean('has_image_model', False, '') flags.DEFINE_string('image_checkpoint_file', '/home/gezi/data/image_model_check_point/inception_resnet_v2_2016_08_30.ckpt', '''None means image model from scratch''') flags.DEFINE_boolean('finetune_image_model', True, '''by default will be finetune otherwise why not pre calc image feature much faster but we also support''') flags.DEFINE_float('image_lr_ratio', 0.1, '') flags.DEFINE_string('finetune_end_point', None, 'if not None, only finetune from some ende point layers before will freeze') flags.DEFINE_boolean('distort_image', True, 'training option') flags.DEFINE_boolean('random_crop_image', True, 'training option') flags.DEFINE_string('image_model_name', None, 'InceptionResnetV2 might be by default but can get from checkpoint direclty') flags.DEFINE_string('image_endpoint_feature_name', None, 'mostly None for showandtell, not None for show attend and tell features if not in endpoint dict') flags.DEFINE_integer('image_attention_size', None, 'InceptionResnetV2 will be 64') flags.DEFINE_integer('image_feature_len', None, '') flags.DEFINE_integer('image_feature_len_decode', None, 'if image_feature len means final output image_feature_len then use image_feature_len_input as input image feature len') flags.DEFINE_integer('image_width', None, 'default width of inception 299, resnet 224 but google pretrain resnet v2 models also 299') flags.DEFINE_integer('image_height', None, 'default height of inception 299, resnet 224 but google pretrain resnet v2 models also 299') flags.DEFINE_boolean('image_features2feature', False, '''for show and tell if input is pre calc atteniton features input here set True will process attention features to generate and use final feature jus similar like input without attention vectors''') # for image classification flags.DEFINE_integer('num_image_classes', None, '') flags.DEFINE_integer('num_pretrain_image_classes', None, 'HACK for using pretrain image models where class num is not 1001 as imagenet 1k label models') flags.DEFINE_integer('image_top_k', 3, '') flags.DEFINE_string('scene_model', None, 'if not None will use scene_model otherwise it is scene_model path') flags.DEFINE_string('scene_cats', '/home/gezi/mine/hasky/deepiu/scene/place365/cat_names_cn.txt', '') flags.DEFINE_integer('scene_feature_len', 15, '') #---in melt.apps.image_processing.py #flags.DEFINE_string('image_model_name', 'InceptionV3', '') flags.DEFINE_string('one_image', '/home/gezi/data/flickr/flickr30k-images/1000092795.jpg', '') flags.DEFINE_string('image_feature_name', 'image_feature', 'for decoding tfrecord') #---------negative smapling flags.DEFINE_integer('num_negs', 1, '0 means no neg') flags.DEFINE_integer('num_eval_negs', 1, '0 means no neg') flags.DEFINE_boolean('neg_left', False, 'ltext or image') flags.DEFINE_boolean('neg_right', True, 'rtext or text') flags.DEFINE_boolean('neg_correct_ratio', True, '') #---------discriminant trainer flags.DEFINE_string('activation', 'relu', """relu/tanh/sigmoid seems sigmoid will not work here not convergent and relu slightly better than tanh and convrgence speed faster""") flags.DEFINE_boolean('bias', False, 'wether to use bias. Not using bias can speedup a bit') flags.DEFINE_boolean('elementwise_predict', False, '') flags.DEFINE_float('keep_prob', 1., 'or 0.9 0.8 0.5') flags.DEFINE_float('dropout', 0., 'or 0.9 0.8 0.5') flags.DEFINE_string('trainer_scope', None, '') #----- encoder flags.DEFINE_string('encoder_type', None, '') flags.DEFINE_string('image_encoder', 'ShowAndTell', '') flags.DEFINE_string('text_encoder', None, '') flags.DEFINE_string('mlp_dims', None, 'like 512 128,32') flags.DEFINE_float('mlp_keep_prob', 1., '') flags.DEFINE_string('encoder_output_method', 'max', '') flags.DEFINE_integer('top_k', 3, '') # text flags.DEFINE_bool('add_start_end', False, '') #----- cnn TODO flags.DEFINE_integer('num_filters', 128, '') #----- other flags.DEFINE_float('label_smoothing', 0, '') flags.DEFINE_integer('finetune_emb_step', None, 'might be 45000 toxic 20 epoch') flags.DEFINE_bool('mask_pooling', True, '') flags.DEFINE_integer('hop', 2, '') flags.DEFINE_integer('label_hop', 1, '') #-------------------- flags.DEFINE_integer('num_finetune_words', None, '') flags.DEFINE_integer('num_finetune_chars', None, '') flags.DEFINE_string('lm_path', None, '') flags.DEFINE_float('lm_lr_factor', 1., '') flags.DEFINE_bool('lm_model', False, '') flags.DEFINE_bool('dynamic_finetune', False, '') flags.DEFINE_string('char_encoder', 'rnn', '') flags.DEFINE_bool('use_char_emb', True, 'if use char and not use char emb then use another char emb different from emb other wise share to use one emb') flags.DEFINE_bool('use_simple_ngrams', False, '') flags.DEFINE_string('char_combiner', 'concat', '') flags.DEFINE_bool('char_padding', False, '') flags.DEFINE_bool('use_ngrams', False, '') flags.DEFINE_bool('use_fngrams', False, '') flags.DEFINE_integer('ngram_emb_dim', 300, '') flags.DEFINE_string('ngram_combiner', 'sum', 'sum or concat or dsfu') flags.DEFINE_string('ngram_self_combiner', 'sum', 'sum or concat') flags.DEFINE_bool('ngram_only', False, '') ================================================ FILE: wenzheng/utils/rnn_flags.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file rnn_flags.py # \author chenghuige # \date 2016-12-24 17:02:28.330058 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf flags = tf.app.flags #import gflags as flags FLAGS = flags.FLAGS flags.DEFINE_string('rnn_method', 'forward', '0 forward, 1 backward, 2 bidirectional') flags.DEFINE_string('rnn_output_method', 'max', '0 sumed vec, 1 last vector, 2 first vector, 3 all here first means first to original sequence') flags.DEFINE_string('cell', 'gru', 'might set to lstm_block which is faster, or lstm_block_fused, cudnn_lstm even faster') flags.DEFINE_string('cudnn_cell', None, 'gru or lstm') flags.DEFINE_string('encoder_cell', None, 'might set to lstm_block which is faster, or lstm_block_fused, cudnn_lstm even faster') flags.DEFINE_string('decoder_cell', None, 'might set to lstm_block which is faster, or lstm_block_fused, cudnn_lstm even faster') flags.DEFINE_integer('num_layers', 1, 'or > 1') flags.DEFINE_integer('encoder_num_layers', None, 'or > 1') flags.DEFINE_float('encoder_keep_prob', None, '') flags.DEFINE_integer('decoder_num_layers', None, 'or > 1') flags.DEFINE_float('decoder_keep_prob', None, '') flags.DEFINE_boolean('feed_initial_sate', False, """set true just like ptb_word_lm to feed last batch final state to be inital state but experiments not show better result(similar)""") flags.DEFINE_integer('rnn_hidden_size', 512, 'rnn cell state hidden size, follow im2txt set default as 512') flags.DEFINE_integer('encoder_rnn_hidden_size', None, '') flags.DEFINE_integer('decoder_rnn_hidden_size', None, '') flags.DEFINE_bool('recurrent_dropout', False, '') flags.DEFINE_bool('bw_dropout', False, '') flags.DEFINE_bool('rnn_train_init_state', True, '') flags.DEFINE_bool('rnn_padding', False, 'if True padding when train, eval always padding') flags.DEFINE_bool('rnn_no_padding', False, 'if True always no padding, train or eval') flags.DEFINE_bool('pooling_no_padding', False, 'if True always not consider padding when pooling') flags.DEFINE_bool('encoder_residual_connect', False, '') # for pytorch.. flags.DEFINE_bool('torch_cudnn_rnn', False, 'pytorch using CudnnRnn or StackRnn') flags.DEFINE_bool('concat_layers', True, 'by default concat layers as hkust rnet did') ================================================ FILE: wenzheng/utils/text2ids.py ================================================ #!/usr/bin/env python # -*- coding: utf8 -*- # ============================================================================== # \file text2ids.py # \author chenghuige # \date 2016-08-29 15:26:15.418566 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf import numpy as np import sys import gezi from wenzheng.utils import vocabulary #TODO-- remove conf.py using gfalgs or yaxml ##well ids2text use it's own vocab.. #from wenzheng.utils.ids2text import ids2words, ids2text, idslist2texts, translate, translates try: import conf from conf import TEXT_MAX_WORDS, ENCODE_UNK try: from conf import MULTI_GRID except Exception: MULTI_GRID = True except Exception: print('Warning: no conf.py in current path use util conf', file=sys.stderr) from wenzheng.utils.conf import TEXT_MAX_WORDS, ENCODE_UNK try: from wenzheng.utils.conf import MULTI_GRID except Exception: MULTI_GRID = True vocab = None Segmentor = None NUM_MARK = '' EN_MRAK = '' def init(vocab_path=None, append=None): global vocab, Segmentor if vocab is None: vocabulary.init(vocab_path, append=append) print('ENCODE_UNK', ENCODE_UNK, file=sys.stderr) vocab = vocabulary.get_vocab() Segmentor = gezi.Segmentor() def get_id(word, unk_vocab_size=None): if unk_vocab_size and not vocab.has(word): return gezi.hash(word) % unk_vocab_size + vocab.size() return vocab.id(word) #@TODO gen-records should use text2ids #TODO ENCODE_UNK might not be in conf.py but to pass as param encode_unk=False def words2ids(words, feed_single=True, allow_all_zero=False, pad=True, append_start=False, append_end=False, max_words=None, norm_digit=True, norm_all_digit=False, multi_grid=None, encode_unk=None, feed_single_en=False, digit_to_chars=False, unk_vocab_size=None): """ default params is suitable for bow for sequence method may need seg_method prhase and feed_single=True, @TODO feed_single is for simplicity, the best strategy may be try to use one level lower words like new-word -> phrase -> basic -> single cn #@TODO feed_single move to Segmentor.py to add support for seg with vocab norm_all_digit is not used mostly, since you can control this behavior when gen vocab """ multi_grid = multi_grid or MULTI_GRID encode_unk = encode_unk or ENCODE_UNK new_words = [] if not feed_single: word_ids = [get_id(word, unk_vocab_size) for word in words if vocab.has(word) or encode_unk] else: word_ids = [] for word in words: if digit_to_chars and any(char.isdigit() for char in word): for w in word: if not vocab.has(w) and unk_vocab_size: word_ids.append(gezi.hash(w) % unk_vocab_size + vocab.size()) new_words.append(w) else: if vocab.has(w) or encode_unk: word_ids.append(vocab.id(w)) new_words.append(w) continue elif norm_all_digit and word.isdigit(): word_ids.append(vocab.id(NUM_MARK)) new_words.append(word) continue if vocab.has(word): word_ids.append(vocab.id(word)) new_words.append(word) elif not norm_all_digit and norm_digit and word.isdigit(): word_ids.append(vocab.id(NUM_MARK)) new_words.append(word) else: #TODO might use trie to speed up longest match segment if (not multi_grid) or feed_single_en: if not feed_single_en: chars = gezi.get_single_cns(word) else: chars = word if chars: for w in chars: if not vocab.has(w) and unk_vocab_size: word_ids.append(gezi.hash(w) % unk_vocab_size + vocab.size()) new_words.append(w) else: if vocab.has(w) or encode_unk: word_ids.append(vocab.id(w)) new_words.append(w) else: if unk_vocab_size: word_ids.append(gezi.hash(word) % unk_vocab_size + vocab.size()) new_words.append(word) else: if encode_unk: word_ids.append(vocab.unk_id()) new_words.append(word) else: #test it! print text2ids.ids2text(text2ids.text2ids('匍匐前进')) word_ids += gezi.loggest_match_seg(word, vocab, encode_unk=encode_unk, unk_vocab_size=unk_vocab_size, vocab_size=vocab.size()) # NOTICE new_words lost here! if append_start: word_ids = [vocab.start_id()] + word_ids if append_end: word_ids = word_ids + [vocab.end_id()] if not allow_all_zero and not word_ids: word_ids.append(vocab.end_id()) if pad: word_ids = gezi.pad(word_ids, max_words or TEXT_MAX_WORDS, 0) return word_ids, new_words # TODO might change to set pad default as False def text2ids(text, seg_method='basic', feed_single=True, allow_all_zero=False, pad=True, append_start=False, append_end=False, to_lower=True, max_words=None, norm_digit=True, norm_all_digit=False, multi_grid=None, remove_space=True, encode_unk=None, feed_single_en=False, digit_to_chars=False, unk_vocab_size=None, return_words=False): """ default params is suitable for bow for sequence method may need seg_method prhase and feed_single=True, @TODO feed_single is for simplicity, the best strategy may be try to use one level lower words like new-word -> phrase -> basic -> single cn #@TODO feed_single move to Segmentor.py to add support for seg with vocab """ if to_lower: text = text.lower() words = Segmentor.Segment(text, seg_method) if remove_space: #words = [x for x in words if x.strip()] # change to remove duplicate space words = [x for i, x in enumerate(words) if not (i < len(words) - 1 and not(x.strip()) and not(words[i + 1].strip()))] ids, new_words = words2ids(words, feed_single=feed_single, allow_all_zero=allow_all_zero, pad=pad, append_start=append_start, append_end=append_end, max_words=max_words, norm_digit=norm_digit, norm_all_digit=norm_all_digit, multi_grid=multi_grid, encode_unk=encode_unk, feed_single_en=feed_single_en, digit_to_chars=digit_to_chars, unk_vocab_size=unk_vocab_size) if not return_words: return ids else: return ids, new_words def ids2words(text_ids, print_end=True): #print('@@@@@@@@@@text_ids', text_ids) #NOTICE int64 will be ok # Boost.Python.ArgumentError: Python argument types in # Identifer.key(Vocabulary, numpy.int32) #did not match C++ signature: # key(gezi::Identifer {lvalue}, int id, std::string defualtKey) # key(gezi::Identifer {lvalue}, int id) #words = [vocab.key(int(id)) for id in text_ids if id > 0 and id < vocab.size()] words = [] for id in text_ids: if id > 0 and id < vocab.size(): #@NOTICE! must has end id, @TODO deal with UNK word if id != vocab.end_id(): word = vocab.key(int(id)) words.append(word) else: if print_end: words.append('') break else: break return words def text2segtext(text, seg_method='basic', feed_single=True, allow_all_zero=False, pad=True, sep=' '): return ids2text(text2ids(text, seg_method=seg_method, feed_single=feed_single, allow_all_zero=allow_all_zero)) def texts2segtexts(texts, seg_method='basic', feed_single=True, allow_all_zero=False, pad=True, sep=' '): return idslist2texts(texts2ids(texts,seg_method=seg_method, feed_single=feed_single, allow_all_zero=allow_all_zero)) def segment(text, seg_method='basic'): return Segmentor.Segment(text, seg_method=seg_method) def texts2ids(texts, seg_method='basic', feed_single=True, allow_all_zero=False, pad=True): return np.array([text2ids(text, seg_method, feed_single, allow_all_zero, pad) for text in texts]) def start_id(): return vocab.end_id() def end_id(): return vocab.end_id() def unk_id(): return vocab.unk_id() #TODO duplicate with ids2text def ids2words(text_ids, print_end=True): #print('@@@@@@@@@@text_ids', text_ids) #NOTICE int64 will be ok # Boost.Python.ArgumentError: Python argument types in # Identifer.key(Vocabulary, numpy.int32) #did not match C++ signature: # key(gezi::Identifer {lvalue}, int id, std::string defualtKey) # key(gezi::Identifer {lvalue}, int id) #words = [vocab.key(int(id)) for id in text_ids if id > 0 and id < vocab.size()] words = [] for id in text_ids: if id > 0 and id < vocab.size(): #@NOTICE! must has end id, @TODO deal with UNK word if id != vocab.end_id(): word = vocab.key(int(id)) words.append(word) else: if print_end: words.append('') break else: #break words.append(''.format(id)) return words def ids2text(text_ids, sep=' ', print_end=True): return sep.join(ids2words(text_ids, print_end=print_end)) def idslist2texts(text_ids_list, sep=' ', print_end=True): return [ids2text(text_ids, sep=sep, print_end=print_end) for text_ids in text_ids_list] #return [sep.join([vocab.key(int(id)) for id in text_ids if id > 0 and id < vocab.size()]) for text_ids in text_ids_list] def translate(text_ids): return ids2text(text_ids, sep='', print_end=False) def translates(text_ids_list): return [translate(text_ids) for text_ids in text_ids_list] def start_id(): return vocab.end_id() def end_id(): return vocab.end_id() def unk_id(): return vocab.unk_id() ================================================ FILE: wenzheng/utils/vocabulary.py ================================================ #!/usr/bin/env python # -*- coding: utf-8 -*- # ============================================================================== # \file vocab.py # \author chenghuige # \date 2016-08-19 20:19:09.138521 # \Description # ============================================================================== from __future__ import absolute_import from __future__ import division from __future__ import print_function #@TODO----remove this ? only need vocab_size #@FIXME work around to be safe in virtual env for hadoop, if import not at first will segmentation fault after finishing double free core # import gezi.nowarning # from libword_counter import Vocabulary from gezi import Vocabulary import tensorflow as tf flags = tf.app.flags FLAGS = flags.FLAGS #NOTICE move this to useage app code flags.DEFINE_string('vocab', None, 'vocabulary txt file') flags.DEFINE_integer('vocab_buckets', None, '') flags.DEFINE_integer('num_reserved_ids', 1, 'reserve one for pad, so to make unk as 1, diff from pad') flags.DEFINE_integer('vocab_size', 0, '') flags.DEFINE_bool('vocab_append', False, '') flags.DEFINE_integer('vocab_max_words', None, '') flags.DEFINE_integer('vocab_min_count', None, '') flags.DEFINE_string('vocab_unk', '', '[UNK] for bert') flags.DEFINE_string('vocab_start', '', '[CLS] for bert') flags.DEFINE_string('vocab_end', '', '[SEP] for bert') import gezi logging = gezi.logging vocab = None vocab_size = None vocab_path = None #@TODO one big problem is now just filterd should use it and let 0 be padding #Also gen vocab must add start and end , but for bow you can ignore them when encoding text #you have in rnn method not ignore and may be in bow you ignore it but it should in vocabulary #and have index > 1, num_reserved_ids > 0 pad, pad1, pad2 ..., at least to have 0 pad occupied def get_vocab(): init() return vocab def get_vocab_size(): init() return vocab_size def end_id(): init() return vocab.end_id() def start_id(): init() return vocab.start_id() def go_id(): init() return vocab.id('') def init(vocab_path_=None, append=None): global vocab, vocab_size, vocab_path if vocab is None: if not FLAGS.vocab_buckets: vocab_path = vocab_path_ or FLAGS.vocab or gezi.dirname(FLAGS.model_dir) + '/vocab.txt' FLAGS.vocab = vocab_path logging.info('vocab:{}'.format(vocab_path)) logging.info('NUM_RESERVED_IDS:{}'.format(FLAGS.num_reserved_ids)) if append is None: append = FLAGS.vocab_append if gezi.env_has('VOCAB_APPEND'): append = True vocab = Vocabulary(vocab_path, FLAGS.num_reserved_ids, append=append, max_words=FLAGS.vocab_max_words, min_count=FLAGS.vocab_min_count) else: vocab = Vocabulary(buckets=FLAGS.vocab_buckets) vocab_size = vocab.size() if not FLAGS.vocab_size else min(vocab.size(), FLAGS.vocab_size) logging.info('vocab_size:{}'.format(vocab_size)) assert vocab_size > FLAGS.num_reserved_ids, 'empty vocab, wrong vocab path? %s'%FLAGS.vocab logging.info('vocab_start:{} id:{}'.format(vocab.key(vocab.start_id()), vocab.start_id())) logging.info('vocab_end:{} id:{}'.format(vocab.key(vocab.end_id()), vocab.end_id())) logging.info('vocab_unk:{} id:{}'.format(vocab.key(vocab.unk_id()), vocab.unk_id()))